diff -Nru golang-github-aws-aws-sdk-go-1.45.14/.github/workflows/go.yml golang-github-aws-aws-sdk-go-1.48.14/.github/workflows/go.yml --- golang-github-aws-aws-sdk-go-1.45.14/.github/workflows/go.yml 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/.github/workflows/go.yml 2023-12-06 19:28:18.000000000 +0000 @@ -4,7 +4,6 @@ push: branches: - main - - 'feat-**' pull_request: branches: - main @@ -22,6 +21,7 @@ go-version: - 1.19.x - 1.20.x + - 1.21.x steps: - name: Checkout uses: actions/checkout@v3 @@ -38,93 +38,3 @@ # SDK is currently being released with go 1.18, this cannot perform # ci-tests task until the release system is updated to go 1.19. run: make unit-no-verify - - deprecated-go-module-tests: - needs: full-test - name: Deprecated Go versions with module support - # Tests for deprecated Go versions with module support - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - go-version: - - 1.12.x - - 1.13.x - - 1.14.x - - 1.15.x - - 1.16.x - - 1.17.x - - 1.18.x - exclude: - - os: macos-latest - go-version: 1.12.x - - os: macos-latest - go-version: 1.13.x - - os: macos-latest - go-version: 1.14.x - - os: macos-latest - go-version: 1.15.x - - os: macos-latest - go-version: 1.16.x - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 1 - - - name: Setup Go - uses: actions/setup-go@v4 - with: - go-version: ${{ matrix.go-version }} - - - name: Test - shell: bash - run: make unit-old-go-race-cover - - deprecated-pre-go-module-tests: - needs: full-test - name: Deprecated Go versions without module support - # Tests for deprecated Go versions without module support - # - # setup-go doesn't play well with old Go versions that need GOPATH - # * https://github.com/actions/setup-go/issues/14 - # * https://github.com/actions/setup-go/issues/12 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest] - go-version: - - 1.5.x - - 1.6.x - - 1.7.x - - 1.8.x - - 1.9.x - - 1.10.x - - 1.11.x - - 1.12.x - include: - - os: windows-latest - go-version: 1.12.x - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 1 - path: go/src/github.com/aws/aws-sdk-go - - - name: Setup Go - uses: actions/setup-go@v4 - with: - go-version: ${{ matrix.go-version }} - cache: false - - - name: Setup Go env - shell: bash - run: | - echo "GOPATH=${{ github.workspace }}/go" >> $GITHUB_ENV - echo "${{ github.workspace }}/go/bin" >> $GITHUB_PATH - - - name: Test - shell: bash - working-directory: go/src/github.com/aws/aws-sdk-go - run: make get-deps unit-old-go-race-cover diff -Nru golang-github-aws-aws-sdk-go-1.45.14/CHANGELOG.md golang-github-aws-aws-sdk-go-1.48.14/CHANGELOG.md --- golang-github-aws-aws-sdk-go-1.45.14/CHANGELOG.md 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/CHANGELOG.md 2023-12-06 19:28:18.000000000 +0000 @@ -1,3 +1,882 @@ +Release v1.48.14 (2023-12-06) +=== + +### Service Client Updates +* `service/backup`: Updates service API and documentation +* `service/comprehend`: Updates service documentation +* `service/connect`: Updates service API and documentation +* `service/ec2`: Updates service API and documentation + * Releasing the new cpuManufacturer attribute within the DescribeInstanceTypes API response which notifies our customers with information on who the Manufacturer is for the processor attached to the instance, for example: Intel. +* `service/payment-cryptography`: Updates service API and documentation + +Release v1.48.13 (2023-12-05) +=== + +### Service Client Updates +* `service/athena`: Updates service API and documentation + * Adding IdentityCenter enabled request for interactive query +* `service/cleanroomsml`: Updates service API and documentation +* `service/cloudformation`: Updates service documentation + * Documentation update, December 2023 +* `service/ec2`: Updates service API and documentation + * Adds A10G, T4G, and H100 as accelerator name options and Habana as an accelerator manufacturer option for attribute based selection + +Release v1.48.12 (2023-12-04) +=== + +### Service Client Updates +* `service/billingconductor`: Updates service API and documentation +* `service/braket`: Updates service API and documentation +* `service/cloud9`: Updates service API and documentation + * This release adds the requirement to include the imageId parameter in the CreateEnvironmentEC2 API call. +* `service/cloudformation`: Updates service waiters + * Including UPDATE_* states as a success status for CreateStack waiter. +* `service/finspace`: Updates service API and documentation +* `service/medialive`: Updates service API and documentation + * Adds support for custom color correction on channels using 3D LUT files. +* `service/servicecatalog-appregistry`: Updates service documentation + +Release v1.48.11 (2023-12-01) +=== + +### Service Client Updates +* `service/qconnect`: Updates service API and documentation +* `service/rbin`: Updates service API and documentation +* `service/verifiedpermissions`: Updates service API and documentation + +Release v1.48.10 (2023-11-30) +=== + +### Service Client Updates +* `service/arc-zonal-shift`: Updates service API, documentation, and paginators +* `service/glue`: Updates service API and documentation + * Adds observation and analyzer support to the GetDataQualityResult and BatchGetDataQualityResult APIs. +* `service/sagemaker`: Updates service API and documentation + * This release adds support for 1/ Code Editor, based on Code-OSS, Visual Studio Code Open Source, a new fully managed IDE option in SageMaker Studio 2/ JupyterLab, a new fully managed JupyterLab IDE experience in SageMaker Studio + +Release v1.48.9 (2023-11-30) +=== + +### Service Client Updates +* `service/marketplace-agreement`: Adds new service +* `service/marketplace-catalog`: Updates service API and documentation +* `service/marketplace-deployment`: Adds new service +* `service/redshift-serverless`: Updates service API, documentation, and paginators + +Release v1.48.8 (2023-11-29) +=== + +### Service Client Updates +* `service/application-autoscaling`: Updates service API and documentation +* `service/cleanrooms`: Updates service API, documentation, and paginators +* `service/cleanroomsml`: Adds new service +* `service/opensearch`: Updates service API and documentation +* `service/opensearchserverless`: Updates service API and documentation +* `service/runtime.sagemaker`: Updates service API and documentation +* `service/sagemaker`: Updates service API, documentation, and paginators + * This release adds following support 1/ Improved SDK tooling for model deployment. 2/ New Inference Component based features to lower inference costs and latency 3/ SageMaker HyperPod management. 4/ Additional parameters for FM Fine Tuning in Autopilot +* `service/sts`: Updates service documentation + * Documentation updates for AWS Security Token Service. + +Release v1.48.7 (2023-11-28) +=== + +### Service Client Updates +* `service/accessanalyzer`: Updates service API and documentation +* `service/bedrock`: Updates service API and documentation +* `service/bedrock-agent`: Adds new service +* `service/bedrock-agent-runtime`: Adds new service +* `service/bedrock-runtime`: Updates service API, documentation, and waiters +* `service/connect`: Updates service API, documentation, and paginators +* `service/customer-profiles`: Updates service API and documentation +* `service/qbusiness`: Updates service API, documentation, paginators, and examples +* `service/qconnect`: Updates service API, documentation, paginators, and examples +* `service/s3`: Updates service API, documentation, paginators, and examples + * Adds support for S3 Express One Zone. +* `service/s3control`: Updates service API and documentation + * Adds support for S3 Express One Zone, and InvocationSchemaVersion 2.0 for S3 Batch Operations. + +Release v1.48.6 (2023-11-28) +=== + +### Service Client Updates +* `service/elasticache`: Updates service API, documentation, and paginators + * Launching Amazon ElastiCache Serverless that enables you to create a cache in under a minute without any capacity management. ElastiCache Serverless monitors the cache's memory, CPU, and network usage and scales both vertically and horizontally to support your application's requirements. + +Release v1.48.5 (2023-11-27) +=== + +### Service Client Updates +* `service/appsync`: Updates service API and documentation +* `service/b2bi`: Updates service API, documentation, paginators, and examples +* `service/backup`: Updates service API, documentation, and paginators +* `service/controltower`: Updates service API and documentation +* `service/elasticfilesystem`: Updates service API and documentation + * Adding support for EFS Replication to existing file system. +* `service/fis`: Updates service API, documentation, and paginators +* `service/glue`: Updates service API and documentation + * add observations support to DQ CodeGen config model + update document for connectiontypes supported by ConnectorData entities +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Updates Amazon RDS documentation for support for RDS for Db2. +* `service/securityhub`: Updates service API, documentation, paginators, and examples +* `service/transcribe`: Updates service API, documentation, and paginators + +Release v1.48.4 (2023-11-27) +=== + +### Service Client Updates +* `service/accessanalyzer`: Updates service API, documentation, and paginators +* `service/amp`: Updates service API, documentation, waiters, and paginators +* `service/bcm-data-exports`: Adds new service +* `service/cloudtrail`: Updates service API and documentation + * CloudTrail Lake now supports federating event data stores. giving users the ability to run queries against their event data using Amazon Athena. +* `service/codestar-connections`: Updates service API, documentation, and paginators +* `service/compute-optimizer`: Updates service API and documentation +* `service/config`: Updates service API and documentation +* `service/controltower`: Updates service API, documentation, and paginators +* `service/cost-optimization-hub`: Adds new service +* `service/detective`: Updates service API and documentation +* `service/ecs`: Updates service API and documentation + * Adds a new 'type' property to the Setting structure. Adds a new AccountSetting - guardDutyActivate for ECS. +* `service/eks`: Updates service API, documentation, and paginators +* `service/eks-auth`: Updates service API, documentation, waiters, paginators, and examples +* `service/elasticfilesystem`: Updates service API, documentation, and paginators + * Adding support for EFS Archive lifecycle configuration. +* `service/elasticloadbalancingv2`: Updates service API, documentation, and paginators +* `service/freetier`: Updates service API, documentation, paginators, and examples +* `service/fsx`: Updates service API and documentation +* `service/guardduty`: Updates service API and documentation + * Add support for Runtime Monitoring for ECS and ECS-EC2. +* `service/iotfleetwise`: Updates service API and documentation +* `service/lakeformation`: Updates service API and documentation +* `service/logs`: Updates service API, documentation, and paginators + * Added APIs to Create, Update, Get, List and Delete LogAnomalyDetectors and List and Update Anomalies in Detector. Added LogGroupClass attribute for LogGroups to classify loggroup as Standard loggroup with all capabilities or InfrequentAccess loggroup with limited capabilities. +* `service/managedblockchain`: Updates service API and documentation +* `service/models.lex.v2`: Updates service API, documentation, and paginators +* `service/personalize`: Updates service API and documentation +* `service/personalize-events`: Updates service API and documentation +* `service/personalize-runtime`: Updates service API and documentation +* `service/quicksight`: Updates service API and documentation + * This release launches new APIs for trusted identity propagation setup and supports creating datasources using trusted identity propagation as authentication method for QuickSight accounts configured with IAM Identity Center. +* `service/redshift`: Updates service API and documentation + * This release adds support for multi-data warehouse writes through data sharing. +* `service/repostspace`: Adds new service +* `service/runtime.lex.v2`: Updates service API and documentation +* `service/s3`: Updates service API, documentation, and examples + * Adding new params - Key and Prefix, to S3 API operations for supporting S3 Access Grants. Note - These updates will not change any of the existing S3 API functionality. +* `service/s3control`: Updates service API, documentation, and paginators + * Introduce Amazon S3 Access Grants, a new S3 access control feature that maps identities in directories such as Active Directory, or AWS Identity and Access Management (IAM) Principals, to datasets in S3. +* `service/secretsmanager`: Updates service API, documentation, and paginators + * AWS Secrets Manager has released the BatchGetSecretValue API, which allows customers to fetch up to 20 Secrets with a single request using a list of secret names or filters. +* `service/securityhub`: Updates service API, documentation, and examples +* `service/states`: Updates service API and documentation + * Adds new TestState operation which accepts the definition of a single state and executes it. You can test a state without creating a state machine or updating an existing state machine. +* `service/transcribe`: Updates service API and documentation +* `service/workspaces`: Updates service API and documentation + * The release introduces Multi-Region Resilience one-way data replication that allows you to replicate data from your primary WorkSpace to a standby WorkSpace in another AWS Region. DescribeWorkspaces now returns the status of data replication. +* `service/workspaces-thin-client`: Adds new service + +Release v1.48.3 (2023-11-22) +=== + +### Service Client Updates +* `service/kinesis`: Updates service API and documentation + * This release adds support for resource based policies on streams and consumers. +* `service/s3control`: Updates service API and documentation + * Amazon S3 Batch Operations now manages buckets or prefixes in a single step. +* `service/sagemaker`: Updates service API and documentation + * This feature adds the end user license agreement status as a model access configuration parameter. + +Release v1.48.2 (2023-11-21) +=== + +### Service Client Updates +* `service/cloudfront`: Updates service API, documentation, paginators, and examples + * This release adds support for CloudFront KeyValueStore, a globally managed key value datastore associated with CloudFront Functions. +* `service/cloudfront-keyvaluestore`: Adds new service +* `service/ec2`: Updates service documentation + * Documentation updates for Amazon EC2. +* `service/inspector-scan`: Adds new service +* `service/iotsitewise`: Updates service API, documentation, and paginators +* `service/iottwinmaker`: Updates service API, documentation, and paginators +* `service/s3`: Updates service API, documentation, and examples + * Add support for automatic date based partitioning in S3 Server Access Logs. + +Release v1.48.1 (2023-11-20) +=== + +### Service Client Updates +* `service/codestar-connections`: Updates service API, documentation, and paginators +* `service/docdb`: Updates service API and documentation + * Amazon DocumentDB updates for new cluster storage configuration: Amazon DocumentDB I/O-Optimized. +* `service/ec2`: Updates service API and documentation + * This release adds support for Security group referencing over Transit gateways, enabling you to simplify Security group management and control of instance-to-instance traffic across VPCs that are connected by Transit gateway. + +Release v1.48.0 (2023-11-17) +=== + +### Service Client Updates +* `service/appmesh`: Updates service API and documentation +* `service/athena`: Updates service API and documentation + * Adding SerivicePreProcessing time metric +* `service/cloud9`: Updates service documentation and examples + * A minor doc only update related to changing the date of an API change. +* `service/cloudformation`: Updates service API and documentation + * This release adds a new flag ImportExistingResources to CreateChangeSet. Specify this parameter on a CREATE- or UPDATE-type change set to import existing resources with custom names instead of recreating them. +* `service/codepipeline`: Updates service API and documentation + * CodePipeline now supports overriding source revisions to achieve manual re-deploy of a past revision +* `service/codestar-connections`: Updates service API, documentation, and paginators +* `service/connect`: Updates service API +* `service/dlm`: Updates service documentation +* `service/ec2`: Updates service API and documentation + * This release adds new features for Amazon VPC IP Address Manager (IPAM) Allowing a choice between Free and Advanced Tiers, viewing public IP address insights across regions and in Amazon Cloudwatch, use IPAM to plan your subnet IPs within a VPC and bring your own autonomous system number to IPAM. +* `service/ecr`: Updates service API and documentation + * Documentation and operational updates for Amazon ECR, adding support for pull through cache rules for upstream registries that require authentication. +* `service/elasticmapreduce`: Updates service API and documentation + * Launch support for IAM Identity Center Trusted Identity Propagation and workspace storage encryption using AWS KMS in EMR Studio +* `service/eventbridge`: Updates service API and documentation +* `service/internetmonitor`: Updates service API, documentation, and paginators +* `service/ivs`: Updates service API +* `service/ivschat`: Updates service API +* `service/kinesisvideo`: Updates service documentation + * Docs only build to bring up-to-date with public docs. +* `service/location`: Updates service API +* `service/medialive`: Updates service API and documentation + * MediaLive has now added support for per-output static image overlay. +* `service/mgn`: Updates service API +* `service/osis`: Updates service API and documentation +* `service/pipes`: Updates service API +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This release adds support for option groups and replica enhancements to Amazon RDS Custom. +* `service/redshift`: Updates service API, documentation, and paginators + * Updated SDK for Amazon Redshift, which you can use to configure a connection with IAM Identity Center to manage access to databases. With these, you can create a connection through a managed application. You can also change a managed application, delete it, or get information about an existing one. +* `service/redshift-serverless`: Updates service API and documentation +* `service/s3`: Updates service API, documentation, and examples + * Removes all default 0 values for numbers and false values for booleans +* `service/sso-admin`: Updates service API and documentation +* `service/sso-oidc`: Updates service API, documentation, and examples +* `service/sts`: Updates service documentation + * API updates for the AWS Security Token Service +* `service/trustedadvisor`: Adds new service +* `service/verifiedpermissions`: Updates service API and documentation +* `service/wisdom`: Updates service API, documentation, and paginators + +### SDK Features +* `service/macie`: Deprecate Macie + * This change removes the macie service, since it is deprecated. + +Release v1.47.13 (2023-11-16) +=== + +### Service Client Updates +* `service/dlm`: Updates service API and documentation +* `service/ec2`: Updates service API and documentation + * Enable use of tenant-specific PublicSigningKeyUrl from device trust providers and onboard jumpcloud as a new device trust provider. +* `service/fsx`: Updates service API and documentation +* `service/glue`: Updates service API, documentation, and paginators + * Introduces new column statistics APIs to support statistics generation for tables within the Glue Data Catalog. +* `service/imagebuilder`: Updates service API, documentation, and paginators +* `service/iot`: Updates service API and documentation + * GA release the ability to index and search devices based on their GeoLocation data. With GeoQueries you can narrow your search to retrieve devices located in the desired geographic boundary. +* `service/ivs-realtime`: Updates service API, documentation, and paginators +* `service/kafka`: Updates service API and documentation +* `service/lambda`: Updates service API and documentation + * Adds support for logging configuration in Lambda Functions. Customers will have more control how their function logs are captured and to which cloud watch log group they are delivered also. +* `service/macie2`: Updates service API and documentation +* `service/mediapackage`: Updates service API and documentation + * DRM_TOP_LEVEL_COMPACT allows placing content protection elements at the MPD level and referenced at the AdaptationSet level +* `service/pinpoint-sms-voice-v2`: Updates service API, documentation, and paginators +* `service/polly`: Updates service API and documentation + * Add new engine - long-form - dedicated for longer content, such as news articles, training materials, or marketing videos. +* `service/quicksight`: Updates service API, documentation, and paginators + * Custom permission support for QuickSight roles; Three new datasources STARBURST, TRINO, BIGQUERY; Lenient mode changes the default behavior to allow for exporting and importing with certain UI allowed errors, Support for permissions and tags export and import. +* `service/sagemaker`: Updates service API and documentation + * Amazon SageMaker Studio now supports Trainium instance types - trn1.2xlarge, trn1.32xlarge, trn1n.32xlarge. +* `service/ssm`: Updates service API and documentation + * This release introduces the ability to filter automation execution steps which have parent steps. In addition, runbook variable information is returned by GetAutomationExecution and parent step information is returned by the DescribeAutomationStepExecutions API. +* `service/ssm-incidents`: Updates service API, documentation, and paginators +* `service/sso-admin`: Updates service API, documentation, and paginators +* `service/transfer`: Updates service API and documentation + * Introduced S3StorageOptions for servers to enable directory listing optimizations and added Type fields to logical directory mappings. + +Release v1.47.12 (2023-11-15) +=== + +### Service Client Updates +* `service/autoscaling`: Updates service API, documentation, and examples + * This release introduces Instance Maintenance Policy, a new EC2 Auto Scaling capability that allows customers to define whether instances are launched before or after existing instances are terminated during instance replacement operations. +* `service/cloudtrail`: Updates service API and documentation + * The Lake Repricing feature lets customers configure a BillingMode for an event data store. The BillingMode determines the cost for ingesting and storing events and the default and maximum retention period for the event data store. +* `service/ec2`: Updates service API and documentation + * AWS EBS now supports Snapshot Lock, giving users the ability to lock an EBS Snapshot to prohibit deletion of the snapshot. This release introduces the LockSnapshot, UnlockSnapshot & DescribeLockedSnapshots APIs to manage lock configuration for snapshots. The release also includes the dl2q_24xlarge. +* `service/finspace`: Updates service API +* `service/finspace-data`: Updates service API +* `service/lambda`: Updates service API + * Add Java 21 (java21) support to AWS Lambda +* `service/mwaa`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Updates Amazon RDS documentation for support for upgrading RDS for MySQL snapshots from version 5.7 to version 8.0. +* `service/redshift`: Updates service API and documentation + * The custom domain name SDK for Amazon Redshift provisioned clusters is updated with additional required parameters for modify and delete operations. Additionally, users can provide domain names with longer top-level domains. +* `service/s3control`: Updates service API, documentation, and paginators + * Add 5 APIs to create, update, get, list, delete S3 Storage Lens group(eg. CreateStorageLensGroup), 3 APIs for tagging(TagResource,UntagResource,ListTagsForResource), and update to StorageLensConfiguration to allow metrics to be aggregated on Storage Lens groups. +* `service/ssm-sap`: Updates service API + +### SDK Bugs +* Don't generate cloudwatchlogs event streams tests for now. + * The test harness does not handle event stream APIs with a host prefix at this time. + +Release v1.47.11 (2023-11-14) +=== + +### Service Client Updates +* `service/backup`: Updates service API, documentation, and paginators +* `service/cleanrooms`: Updates service API and documentation +* `service/connect`: Updates service API and documentation +* `service/glue`: Updates service API, documentation, and paginators + * Introduces new storage optimization APIs to support automatic compaction of Apache Iceberg tables. +* `service/iot`: Updates service API and documentation + * This release introduces new attributes in API CreateSecurityProfile, UpdateSecurityProfile and DescribeSecurityProfile to support management of Metrics Export for AWS IoT Device Defender Detect. +* `service/lambda`: Updates service API + * Add Python 3.12 (python3.12) support to AWS Lambda +* `service/mediatailor`: Updates service API +* `service/pipes`: Updates service API and documentation +* `service/resource-explorer-2`: Updates service API, documentation, and paginators +* `service/sagemaker`: Updates service API and documentation + * This release makes Model Registry Inference Specification fields as not required. +* `service/signer`: Updates service documentation + * Documentation updates for AWS Signer +* `service/states`: Updates service API and documentation + * This release adds support to redrive executions in AWS Step Functions with a new RedriveExecution operation. + +### SDK Bugs +* `aws/defaults`: Feature updates to endpoint credentials provider. + * Add support for dynamic auth token from file and EKS container host in configured URI. + +Release v1.47.10 (2023-11-13) +=== + +### Service Client Updates +* `service/dataexchange`: Updates service API +* `service/dms`: Updates service API and documentation + * Added new Db2 LUW Target endpoint with related endpoint settings. New executeTimeout endpoint setting for mysql endpoint. New ReplicationDeprovisionTime field for serverless describe-replications. +* `service/ec2`: Updates service API, documentation, and paginators + * Adds the new EC2 DescribeInstanceTopology API, which you can use to retrieve the network topology of your running instances on select platform types to determine their relative proximity to each other. +* `service/ecs`: Updates service API and documentation + * Adds a Client Token parameter to the ECS RunTask API. The Client Token parameter allows for idempotent RunTask requests. +* `service/elasticmapreduce`: Updates service API + * Updated GetClusterSessionCredentials API to allow Amazon SageMaker Studio to connect to EMR on EC2 clusters to support IdentityCenter/PEZ integration. +* `service/servicecatalog-appregistry`: Updates service API and documentation +* `service/transcribe-streaming`: Updates service API and documentation + +Release v1.47.9 (2023-11-10) +=== + +### Service Client Updates +* `service/controltower`: Updates service API and documentation +* `service/cur`: Updates service API and documentation + * This release adds support for tagging and customers can now tag report definitions. Additionally, ReportStatus is now added to report definition to show when the last delivered time stamp and if it succeeded or not. +* `service/ec2`: Updates service API and documentation + * EC2 adds API updates to enable ENA Express at instance launch time. +* `service/entitlement.marketplace`: Updates service API, documentation, and paginators +* `service/fms`: Updates service documentation +* `service/mediaconvert`: Updates service API and documentation + * This release includes the ability to specify any input source as the primary input for corresponding follow modes, and allows users to specify fit and fill behaviors without resizing content. +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Updates Amazon RDS documentation for zero-ETL integrations. + +### SDK Enhancements +* `aws/signer/v4`: Add bucket owner header to presigned list. + * Add x-amz-expected-bucket-owner header to the list of headers that need to be presigned. + +Release v1.47.8 (2023-11-09) +=== + +### Service Client Updates +* `service/cloudformation`: Updates service API and documentation + * Added new ConcurrencyMode feature for AWS CloudFormation StackSets for faster deployments to target accounts. +* `service/cloudtrail`: Updates service API and documentation + * The Insights in Lake feature lets customers enable CloudTrail Insights on a source CloudTrail Lake event data store and create a destination event data store to collect Insights events based on unusual management event activity in the source event data store. +* `service/comprehend`: Updates service API and documentation +* `service/connect`: Updates service API and documentation +* `service/ec2`: Updates service API and documentation + * AWS EBS now supports Block Public Access for EBS Snapshots. This release introduces the EnableSnapshotBlockPublicAccess, DisableSnapshotBlockPublicAccess and GetSnapshotBlockPublicAccessState APIs to manage account-level public access settings for EBS Snapshots in an AWS Region. +* `service/eks`: Updates service API and documentation +* `service/lambda`: Updates service API + * Add Custom runtime on Amazon Linux 2023 (provided.al2023) support to AWS Lambda. +* `service/logs`: Updates service API, documentation, and paginators + * Update to support new APIs for delivery of logs from AWS services. +* `service/omics`: Updates service API and documentation + +Release v1.47.7 (2023-11-09) +=== + +### Service Client Updates +* `service/sqs`: Updates service API and documentation + * This release enables customers to call SQS using AWS JSON-1.0 protocol and bug fix. + +Release v1.47.6 (2023-11-08) +=== + +### Service Client Updates +* `service/connect`: Updates service API +* `service/connectcases`: Updates service API and documentation +* `service/datasync`: Updates service API +* `service/guardduty`: Updates service API and documentation + * Added API support for new GuardDuty EKS Audit Log finding types. +* `service/lambda`: Updates service API and documentation + * Add Node 20 (nodejs20.x) support to AWS Lambda. +* `service/models.lex.v2`: Updates service API and documentation +* `service/omics`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This Amazon RDS release adds support for patching the OS of an RDS Custom for Oracle DB instance. You can now upgrade the database or operating system using the modify-db-instance command. +* `service/redshift-serverless`: Updates service API and documentation +* `service/resiliencehub`: Updates service API and documentation +* `service/sqs`: Updates service API, documentation, and paginators + * This release enables customers to call SQS using AWS JSON-1.0 protocol. + +Release v1.47.5 (2023-11-07) +=== + +### Service Client Updates +* `service/dataexchange`: Updates service API and documentation +* `service/dlm`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This Amazon RDS release adds support for the multi-tenant configuration. In this configuration, an RDS DB instance can contain multiple tenant databases. In RDS for Oracle, a tenant database is a pluggable database (PDB). + +Release v1.47.4 (2023-11-06) +=== + +### Service Client Updates +* `service/ce`: Updates service API and documentation +* `service/codebuild`: Updates service API and documentation + * AWS CodeBuild now supports AWS Lambda compute. +* `service/connect`: Updates service API and documentation +* `service/docdb`: Updates service API and documentation + * Update the input of CreateDBInstance and ModifyDBInstance to support setting CA Certificates. Update the output of DescribeDBInstance and DescribeDBEngineVersions to show current and supported CA certificates. +* `service/iam`: Adds new service + * Add partitional endpoint for iso-e. +* `service/mwaa`: Updates service API and documentation +* `service/polly`: Updates service API + * Amazon Polly adds new US English voices - Danielle and Gregory. Danielle and Gregory are available as Neural voices only. +* `service/route53`: Adds new service + * Add partitional endpoints for iso-e and iso-f. + +Release v1.47.3 (2023-11-03) +=== + +### Service Client Updates +* `service/config`: Updates service API +* `service/connect`: Updates service API and documentation +* `service/iotwireless`: Updates service API and documentation +* `service/launch-wizard`: Adds new service + +Release v1.47.2 (2023-11-02) +=== + +### Service Client Updates +* `service/apprunner`: Updates service API and documentation +* `service/connect`: Updates service documentation +* `service/gamelift`: Updates service API and documentation + * Amazon GameLift adds support for shared credentials, which allows applications that are deployed on managed EC2 fleets to interact with other AWS resources. +* `service/glue`: Updates service API and documentation + * This release introduces Google BigQuery Source and Target in AWS Glue CodeGenConfigurationNode. +* `service/network-firewall`: Updates service API and documentation +* `service/quicksight`: Updates service API and documentation + * This release introduces Float Decimal Type as SubType in QuickSight SPICE datasets and Custom week start and Custom timezone options in Analysis and DashboardI + +### SDK Enhancements +* `aws/ec2metadata`: Added environment and shared config support for disabling IMDSv1 fallback. + * Use env `AWS_EC2_METADATA_V1_DISABLED` or shared config `ec2_metadata_v1_disabled` accordingly. + +Release v1.47.1 (2023-11-01) +=== + +### Service Client Updates +* `service/connect`: Updates service API, documentation, and paginators +* `service/globalaccelerator`: Updates service API, documentation, and paginators +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This release adds support for customized networking resources to Amazon RDS Custom. +* `service/redshift`: Updates service API and documentation + * Added support for Multi-AZ deployments for Provisioned RA3 clusters that provide 99.99% SLA availability. +* `service/sagemaker`: Updates service API and documentation + * Support for batch transform input in Model dashboard + +Release v1.47.0 (2023-10-31) +=== + +### Service Client Updates +* `service/amplify`: Updates service API, documentation, and paginators +* `service/application-insights`: Updates service API and documentation +* `service/ec2`: Updates service API, documentation, and paginators + * Capacity Blocks for ML are a new EC2 purchasing option for reserving GPU instances on a future date to support short duration machine learning (ML) workloads. Capacity Blocks automatically place instances close together inside Amazon EC2 UltraClusters for low-latency, high-throughput networking. +* `service/m2`: Updates service API and documentation +* `service/neptunedata`: Updates service API and documentation +* `service/translate`: Updates service API and documentation + +### SDK Features +* `aws`: Bump minimum go version to 1.19. + * See https://aws.amazon.com/blogs/developer/aws-sdk-for-go-aligns-with-go-release-policy-on-supported-runtimes/. + +Release v1.46.7 (2023-10-30) +=== + +### Service Client Updates +* `service/connect`: Updates service API and documentation +* `service/dataexchange`: Updates service API and documentation +* `service/datasync`: Updates service API and documentation +* `service/finspace`: Updates service API and documentation +* `service/mediapackagev2`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This release launches the CreateIntegration, DeleteIntegration, and DescribeIntegrations APIs to manage zero-ETL Integrations. +* `service/redshift-serverless`: Updates service API, documentation, and paginators +* `service/resiliencehub`: Updates service API and documentation +* `service/s3outposts`: Updates service API and documentation +* `service/wisdom`: Updates service documentation + +Release v1.46.6 (2023-10-27) +=== + +### Service Client Updates +* `service/elasticmapreduce`: Updates service API and documentation + * Updated CreateCluster API request and DescribeCluster API responses to include EbsRootVolumeIops, and EbsRootVolumeThroughput attributes that specify the user configured root volume IOPS and throughput for Amazon EBS root device volume. This feature will be available from Amazon EMR releases 6.15.0 +* `service/neptune`: Updates service API and documentation + * Update TdeCredentialPassword type to SensitiveString +* `service/pinpoint`: Updates service documentation + * Updated documentation to describe the case insensitivity for EndpointIds. +* `service/redshift`: Updates service API and documentation + * added support to create a dual stack cluster +* `service/wafv2`: Updates service documentation + +Release v1.46.5 (2023-10-26) +=== + +### Service Client Updates +* `service/appstream`: Updates service API and documentation + * This release introduces multi-session fleets, allowing customers to provision more than one user session on a single fleet instance. +* `service/ec2`: Updates service API, documentation, and paginators + * Launching GetSecurityGroupsForVpc API. This API gets security groups that can be associated by the AWS account making the request with network interfaces in the specified VPC. +* `service/network-firewall`: Updates service API and documentation +* `service/opensearch`: Updates service API and documentation +* `service/redshift`: Updates service API, documentation, and paginators + * Add Redshift APIs GetResourcePolicy, DeleteResourcePolicy, PutResourcePolicy and DescribeInboundIntegrations for the new Amazon Redshift Zero-ETL integration feature, which can be used to control data ingress into Redshift namespace, and view inbound integrations. +* `service/sagemaker`: Updates service API and documentation + * Amazon Sagemaker Autopilot now supports Text Generation jobs. +* `service/sns`: Updates service API and documentation + * Message Archiving and Replay is now supported in Amazon SNS for FIFO topics. +* `service/ssm-sap`: Updates service API and documentation +* `service/transfer`: Updates service API, documentation, waiters, and paginators + * No API changes from previous release. This release migrated the model to Smithy keeping all features unchanged. + +Release v1.46.4 (2023-10-25) +=== + +### Service Client Updates +* `service/connectcases`: Updates service API and documentation +* `service/groundstation`: Updates service API and documentation +* `service/iam`: Updates service API and documentation + * Updates to GetAccessKeyLastUsed action to replace NoSuchEntity error with AccessDeniedException error. + +Release v1.46.3 (2023-10-24) +=== + +### Service Client Updates +* `service/codepipeline`: Updates service API and documentation + * Add ability to trigger pipelines from git tags, define variables at pipeline level and new pipeline type V2. +* `service/ec2`: Updates service documentation + * This release updates the documentation for InstanceInterruptionBehavior and HibernationOptionsRequest to more accurately describe the behavior of these two parameters when using Spot hibernation. +* `service/eks`: Updates service API +* `service/iam`: Adds new service + * Add the partitional endpoint for IAM in iso-f. +* `service/migrationhub-config`: Updates service API and documentation +* `service/migrationhubstrategy`: Updates service API, documentation, and paginators +* `service/opensearchserverless`: Updates service API, documentation, and paginators + +Release v1.46.2 (2023-10-23) +=== + +### Service Client Updates +* `service/marketplacecommerceanalytics`: Updates service API and documentation + * The StartSupportDataExport operation has been deprecated as part of the Product Support Connection deprecation. As of December 2022, Product Support Connection is no longer supported. +* `service/networkmanager`: Updates service API and documentation +* `service/redshift-serverless`: Updates service API and documentation +* `service/rekognition`: Updates service API, documentation, paginators, and examples + * Amazon Rekognition introduces StartMediaAnalysisJob, GetMediaAnalysisJob, and ListMediaAnalysisJobs operations to run a bulk analysis of images with a Detect Moderation model. + +Release v1.46.1 (2023-10-20) +=== + +### Service Client Updates +* `service/appconfig`: Updates service API +* `service/appintegrations`: Updates service API +* `service/connect`: Updates service API and documentation +* `service/discovery`: Updates service API, documentation, and paginators + * This release introduces three new APIs: StartBatchDeleteConfigurationTask, DescribeBatchDeleteConfigurationTask, and BatchDeleteAgents. +* `service/medical-imaging`: Updates service documentation +* `service/ssm`: Updates service API and documentation + * This release introduces a new API: DeleteOpsItem. This allows deletion of an OpsItem. + +Release v1.46.0 (2023-10-19) +=== + +### Service Client Updates +* `service/ec2`: Updates service API + * Amazon EC2 C7a instances, powered by 4th generation AMD EPYC processors, are ideal for high performance, compute-intensive workloads such as high performance computing. Amazon EC2 R7i instances are next-generation memory optimized and powered by custom 4th Generation Intel Xeon Scalable processors. +* `service/managedblockchain-query`: Updates service API +* `service/neptunedata`: Updates service documentation +* `service/omics`: Updates service API and documentation +* `service/opensearch`: Updates service API, documentation, and paginators +* `service/quicksight`: Updates service API and documentation + * This release adds the following: 1) Trino and Starburst Database Connectors 2) Custom total for tables and pivot tables 3) Enable restricted folders 4) Add rolling dates for time equality filters 5) Refine DataPathValue and introduce DataPathType 6) Add SeriesType to ReferenceLineDataConfiguration +* `service/secretsmanager`: Updates service documentation + * Documentation updates for Secrets Manager +* `service/servicecatalog`: Updates service API and documentation + * Introduce support for EXTERNAL product and provisioning artifact type in CreateProduct and CreateProvisioningArtifact APIs. +* `service/verifiedpermissions`: Updates service API and documentation +* `service/workspaces`: Updates service documentation + * Documentation updates for WorkSpaces + +### SDK Features +* `service/gamesparks`: Deprecate Gamesparks + * This change removes the gamesparks service, since it is deprecated. + +Release v1.45.28 (2023-10-18) +=== + +### Service Client Updates +* `service/cloud9`: Updates service documentation + * Update to imageId parameter behavior and dates updated. +* `service/dynamodb`: Updates service API, documentation, waiters, paginators, and examples + * Updating descriptions for several APIs. +* `service/kendra`: Updates service API and documentation + * Changes for a new feature in Amazon Kendra's Query API to Collapse/Expand query results +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This release adds support for upgrading the storage file system configuration on the DB instance using a blue/green deployment or a read replica. +* `service/wisdom`: Updates service API + +Release v1.45.27 (2023-10-17) +=== + +### Service Client Updates +* `service/codepipeline`: Updates service API and documentation + * Add retryMode ALL_ACTIONS to RetryStageExecution API that retries a failed stage starting from first action in the stage +* `service/discovery`: Updates service API and documentation + * This release introduces three new APIs: StartBatchDeleteConfigurationTask, DescribeBatchDeleteConfigurationTask, and BatchDeleteAgents. +* `service/ecs`: Updates service documentation and examples + * Documentation only updates to address Amazon ECS tickets. +* `service/globalaccelerator`: Updates service paginators +* `service/guardduty`: Updates service API and documentation + * Add domainWithSuffix finding field to dnsRequestAction +* `service/kafka`: Updates service API, documentation, and paginators +* `service/route53-recovery-cluster`: Updates service API and documentation +* `service/route53-recovery-control-config`: Updates service API and documentation + +Release v1.45.26 (2023-10-16) +=== + +### Service Client Updates +* `service/cloudformation`: Updates service API + * SDK and documentation updates for UpdateReplacePolicy +* `service/drs`: Updates service API and documentation +* `service/entityresolution`: Updates service API, documentation, and paginators +* `service/managedblockchain-query`: Updates service API, documentation, and paginators +* `service/mediapackagev2`: Updates service API and documentation +* `service/opensearch`: Updates service API and documentation +* `service/redshift`: Updates service API and documentation + * Added support for managing credentials of provisioned cluster admin using AWS Secrets Manager. +* `service/redshift-serverless`: Updates service API and documentation +* `service/sesv2`: Updates service API and documentation +* `service/transfer`: Updates service documentation + * Documentation updates for AWS Transfer Family +* `service/xray`: Updates service API and documentation + * This releases enhances GetTraceSummaries API to support new TimeRangeType Service to query trace summaries by segment end time. + +Release v1.45.25 (2023-10-12) +=== + +### Service Client Updates +* `service/auditmanager`: Updates service API +* `service/autoscaling`: Updates service API, documentation, paginators, and examples + * Update the NotificationMetadata field to only allow visible ascii characters. Add paginators to DescribeInstanceRefreshes, DescribeLoadBalancers, and DescribeLoadBalancerTargetGroups +* `service/config`: Updates service API and documentation +* `service/controltower`: Updates service API and documentation +* `service/customer-profiles`: Updates service API and documentation +* `service/ec2`: Updates service API and documentation + * This release adds Ubuntu Pro as a supported platform for On-Demand Capacity Reservations and adds support for setting an Amazon Machine Image (AMI) to disabled state. Disabling the AMI makes it private if it was previously shared, and prevents new EC2 instance launches from it. +* `service/elasticloadbalancingv2`: Updates service documentation +* `service/glue`: Updates service API and documentation + * Extending version control support to GitLab and Bitbucket from AWSGlue +* `service/inspector2`: Updates service API and documentation +* `service/ivs-realtime`: Updates service API and documentation +* `service/lambda`: Updates service API and documentation + * Adds support for Lambda functions to access Dual-Stack subnets over IPv6, via an opt-in flag in CreateFunction and UpdateFunctionConfiguration APIs +* `service/location`: Updates service API +* `service/machinelearning`: Updates service API + * This release marks Password field as sensitive +* `service/pricing`: Updates service documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * This release adds support for adding a dedicated log volume to open-source RDS instances. +* `service/rekognition`: Updates service API and documentation + * Amazon Rekognition introduces support for Custom Moderation. This allows the enhancement of accuracy for detect moderation labels operations by creating custom adapters tuned on customer data. +* `service/sagemaker`: Updates service API and documentation + * Amazon SageMaker Canvas adds KendraSettings and DirectDeploySettings support for CanvasAppSettings +* `service/textract`: Updates service API, documentation, and paginators +* `service/transcribe`: Updates service API +* `service/workspaces`: Updates service documentation + * Updated the CreateWorkspaces action documentation to clarify that the PCoIP protocol is only available for Windows bundles. + +Release v1.45.24 (2023-10-06) +=== + +### Service Client Updates +* `service/ec2`: Updates service documentation + * Documentation updates for Elastic Compute Cloud (EC2). +* `service/fsx`: Updates service API and documentation +* `service/marketplace-catalog`: Updates service API and documentation +* `service/quicksight`: Updates service API and documentation + * NullOption in FilterListConfiguration; Dataset schema/table max length increased; Support total placement for pivot table visual; Lenient mode relaxes the validation to create resources with definition; Data sources can be added to folders; Redshift data sources support IAM Role-based authentication +* `service/transfer`: Updates service API and documentation + * This release updates the max character limit of PreAuthenticationLoginBanner and PostAuthenticationLoginBanner to 4096 characters + +Release v1.45.23 (2023-10-05) +=== + +### Service Client Updates +* `service/omics`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Updates Amazon RDS documentation for corrections and minor improvements. +* `service/route53`: Updates service API and documentation + * Add hostedzonetype filter to ListHostedZones API. +* `service/securityhub`: Updates service API and documentation +* `service/storagegateway`: Updates service API and documentation + * Add SoftwareVersion to response of DescribeGatewayInformation. +* `service/workspaces`: Updates service API, documentation, and paginators + * This release introduces Manage applications. This feature allows users to manage their WorkSpaces applications by associating or disassociating their WorkSpaces with applications. The DescribeWorkspaces API will now additionally return OperatingSystemName in its responses. + +Release v1.45.22 (2023-10-04) +=== + +### Service Client Updates +* `service/appconfig`: Updates service API and documentation +* `service/datazone`: Updates service API, documentation, paginators, and examples +* `service/mediatailor`: Updates service API and documentation +* `service/mgn`: Updates service API, documentation, and paginators +* `service/sagemaker`: Updates service API and documentation + * Adding support for AdditionalS3DataSource, a data source used for training or inference that is in addition to the input dataset or model data. + +Release v1.45.21 (2023-10-03) +=== + +### Service Client Updates +* `service/connect`: Updates service API and documentation +* `service/location`: Updates service API and documentation +* `service/mediaconvert`: Updates service API and documentation + * This release adds the ability to replace video frames without modifying the audio essence. +* `service/oam`: Updates service API and documentation +* `service/sagemaker`: Updates service API and documentation + * This release allows users to run Selective Execution in SageMaker Pipelines without SourcePipelineExecutionArn if selected steps do not have any dependent steps. +* `service/wellarchitected`: Updates service API, documentation, and paginators + +Release v1.45.20 (2023-10-02) +=== + +### Service Client Updates +* `service/bedrock`: Updates service API, documentation, waiters, and paginators +* `service/bedrock-runtime`: Updates service API and documentation +* `service/ec2`: Updates service API + * Introducing Amazon EC2 R7iz instances with 3.9 GHz sustained all-core turbo frequency and deliver up to 20% better performance than previous generation z1d instances. +* `service/managedblockchain`: Updates service documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Adds DefaultCertificateForNewLaunches field in the DescribeCertificates API response. +* `service/sso`: Adds new service + * Fix FIPS Endpoints in aws-us-gov. +* `service/sts`: Updates service API and documentation + * STS API updates for assumeRole +* `service/transfer`: Updates service documentation + * Documentation updates for AWS Transfer Family + +Release v1.45.19 (2023-09-28) +=== + +### Service Client Updates +* `service/bedrock`: Updates service API, documentation, paginators, and examples +* `service/bedrock-runtime`: Adds new service +* `service/budgets`: Updates service API and documentation + * Update DescribeBudgets and DescribeBudgetNotificationsForAccount MaxResults limit to 1000. +* `service/ec2`: Updates service API and documentation + * Adds support for Customer Managed Key encryption for Amazon Verified Access resources +* `service/iotfleetwise`: Updates service API and documentation +* `service/sagemaker`: Updates service API and documentation + * Online store feature groups supports Standard and InMemory tier storage types for low latency storage for real-time data retrieval. The InMemory tier supports collection types List, Set, and Vector. +* `service/sagemaker-featurestore-runtime`: Updates service API and documentation +* `service/wafv2`: Updates service documentation + +Release v1.45.18 (2023-09-27) +=== + +### Service Client Updates +* `service/cognito-idp`: Updates service API, documentation, and examples +* `service/firehose`: Updates service API and documentation + * Features : Adding support for new data ingestion source to Kinesis Firehose - AWS Managed Services Kafka. +* `service/iot`: Updates service API and documentation + * Added support for IoT Rules Engine Kafka Action Headers +* `service/textract`: Updates service API and documentation + +Release v1.45.17 (2023-09-26) +=== + +### Service Client Updates +* `service/appintegrations`: Updates service API, documentation, paginators, and examples +* `service/apprunner`: Updates service API and documentation +* `service/codedeploy`: Updates service documentation + * CodeDeploy now supports In-place and Blue/Green EC2 deployments with multiple Classic Load Balancers and multiple Target Groups. +* `service/connect`: Updates service API, documentation, and paginators +* `service/dynamodb`: Updates service API, documentation, waiters, paginators, and examples + * Amazon DynamoDB now supports Incremental Export as an enhancement to the existing Export Table +* `service/ec2`: Updates service API and documentation + * The release includes AWS verified access to support FIPs compliance in North America regions +* `service/lakeformation`: Updates service API, documentation, and paginators +* `service/pinpoint`: Updates service documentation + * Update documentation for RemoveAttributes to more accurately reflect its behavior when attributes are deleted. +* `service/s3`: Updates service API and examples + * This release adds a new field COMPLETED to the ReplicationStatus Enum. You can now use this field to validate the replication status of S3 objects using the AWS SDK. + +Release v1.45.16 (2023-09-25) +=== + +### Service Client Updates +* `service/amplifyuibuilder`: Updates service API and documentation +* `service/chime-sdk-media-pipelines`: Updates service API, documentation, and paginators +* `service/emr-serverless`: Updates service API and documentation +* `service/finspace-data`: Updates service API and documentation +* `service/quicksight`: Updates service API and documentation + * Added ability to tag users upon creation. +* `service/ssm`: Updates service API and documentation + * This release updates the enum values for ResourceType in SSM DescribeInstanceInformation input and ConnectionStatus in GetConnectionStatus output. +* `service/wafv2`: Updates service API and documentation + +Release v1.45.15 (2023-09-22) +=== + +### Service Client Updates +* `service/braket`: Updates service API and documentation +* `service/dms`: Updates service API, documentation, and examples + * new vendors for DMS CSF: MongoDB, MariaDB, DocumentDb and Redshift +* `service/ec2`: Updates service API + * EC2 M2 Pro Mac instances are powered by Apple M2 Pro Mac Mini computers featuring 12 core CPU, 19 core GPU, 32 GiB of memory, and 16 core Apple Neural Engine and uniquely enabled by the AWS Nitro System through high-speed Thunderbolt connections. +* `service/elasticfilesystem`: Updates service documentation + * Documentation updates for Elastic File System +* `service/events`: Updates service API and documentation + * Adds sensitive trait to various shapes in Jetstream Connections API model. +* `service/guardduty`: Updates service API and documentation + * Add `EKS_CLUSTER_NAME` to filter and sort key. +* `service/mediaconvert`: Updates service API and documentation + * This release supports the creation of of audio-only tracks in CMAF output groups. + +### SDK Bugs +* `aws/session`: Removed typed literal parsing for config, everything is now treated as a string until a numeric value is needed. + * This resolves an issue where the contents of a profile would silently be dropped with certain values. + Release v1.45.14 (2023-09-20) === diff -Nru golang-github-aws-aws-sdk-go-1.45.14/Gopkg.lock golang-github-aws-aws-sdk-go-1.48.14/Gopkg.lock --- golang-github-aws-aws-sdk-go-1.45.14/Gopkg.lock 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/Gopkg.lock 1970-01-01 00:00:00.000000000 +0000 @@ -1,16 +0,0 @@ -# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. - - -[[projects]] - digest = "1:13fe471d0ed891e8544eddfeeb0471fd3c9f2015609a1c000aefdedf52a19d40" - name = "github.com/jmespath/go-jmespath" - packages = ["."] - pruneopts = "" - revision = "c2b33e84" - -[solve-meta] - analyzer-name = "dep" - analyzer-version = 1 - input-imports = ["github.com/jmespath/go-jmespath"] - solver-name = "gps-cdcl" - solver-version = 1 diff -Nru golang-github-aws-aws-sdk-go-1.45.14/Gopkg.toml golang-github-aws-aws-sdk-go-1.48.14/Gopkg.toml --- golang-github-aws-aws-sdk-go-1.45.14/Gopkg.toml 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/Gopkg.toml 1970-01-01 00:00:00.000000000 +0000 @@ -1,43 +0,0 @@ - -# Gopkg.toml example -# -# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md -# for detailed Gopkg.toml documentation. -# -# required = ["github.com/user/thing/cmd/thing"] -# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"] -# -# [[constraint]] -# name = "github.com/user/project" -# version = "1.0.0" -# -# [[constraint]] -# name = "github.com/user/project2" -# branch = "dev" -# source = "github.com/myfork/project2" -# -# [[override]] -# name = "github.com/x/y" -# version = "2.4.0" - -ignored = [ - # Testing/Example/Codegen dependencies - "github.com/stretchr/testify", - "github.com/stretchr/testify/assert", - "github.com/stretchr/testify/require", - "github.com/go-sql-driver/mysql", - "github.com/gucumber/gucumber", - "github.com/pkg/errors", - "golang.org/x/net", - "golang.org/x/net/html", - "golang.org/x/net/http2", - "golang.org/x/text", - "golang.org/x/text/html", - "golang.org/x/tools", - "golang.org/x/tools/go/loader", -] - -[[constraint]] - name = "github.com/jmespath/go-jmespath" - revision = "c2b33e84" - #version = "0.2.2" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/README.md golang-github-aws-aws-sdk-go-1.48.14/README.md --- golang-github-aws-aws-sdk-go-1.45.14/README.md 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/README.md 2023-12-06 19:28:18.000000000 +0000 @@ -2,7 +2,7 @@ [![API Reference](https://img.shields.io/badge/api-reference-blue.svg)](https://docs.aws.amazon.com/sdk-for-go/api) [![Join the chat at https://gitter.im/aws/aws-sdk-go](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/aws/aws-sdk-go?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build status](https://github.com/aws/aws-sdk-go/actions/workflows/go.yml/badge.svg?branch=main)](https://github.com/aws/aws-sdk-go/actions/workflows/go.yml) [![Apache V2 License](https://img.shields.io/badge/license-Apache%20V2-blue.svg)](https://github.com/aws/aws-sdk-go/blob/main/LICENSE.txt) -aws-sdk-go is the official AWS SDK for the Go programming language. +aws-sdk-go is the v1 AWS SDK for the Go programming language. Checkout our [release notes](https://github.com/aws/aws-sdk-go/releases) for information about the latest bug fixes, updates, and features added to the SDK. @@ -19,8 +19,7 @@ ## Getting Started ### Installing -Use `go get` to retrieve the SDK to add it to your `GOPATH` workspace, or -project's Go module dependencies. +Use `go get` to retrieve the SDK to add it to your project's Go module dependencies. go get github.com/aws/aws-sdk-go @@ -28,37 +27,6 @@ go get -u github.com/aws/aws-sdk-go -### Dependencies - -The SDK includes a `vendor` folder containing the runtime dependencies of the -SDK. The metadata of the SDK's dependencies can be found in the Go module file -`go.mod` or Dep file `Gopkg.toml`. - -### Go Modules - -If you are using Go modules, your `go get` will default to the latest tagged -release version of the SDK. To get a specific release version of the SDK use -`@` in your `go get` command. - - go get github.com/aws/aws-sdk-go@v1.15.77 - -To get the latest SDK repository change use `@latest`. - - go get github.com/aws/aws-sdk-go@latest - -### Go 1.5 - -If you are using Go 1.5 without vendoring enabled, (`GO15VENDOREXPERIMENT=1`), -you will need to use `...` when retrieving the SDK to get its dependencies. - - go get github.com/aws/aws-sdk-go/... - -This will still include the `vendor` folder. The `vendor` folder can be deleted -if not used by your environment. - - rm -rf $GOPATH/src/github.com/aws/aws-sdk-go/vendor - - ## Quick Examples ### Complete SDK Example @@ -490,6 +458,15 @@ * [AWS SDKs and Tools Maintenance Policy](https://docs.aws.amazon.com/credref/latest/refdocs/maint-policy.html) * [AWS SDKs and Tools Version Support Matrix](https://docs.aws.amazon.com/credref/latest/refdocs/version-support-matrix.html) +### Go version support policy + +The v2 SDK follows the upstream [release policy](https://go.dev/doc/devel/release#policy) +with an additional six months of support for the most recently deprecated +language version. + +**AWS reserves the right to drop support for unsupported Go versions earlier to +address critical security issues.** + ## Resources [Developer guide](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/welcome.html) - This document diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/credentials/endpointcreds/provider.go golang-github-aws-aws-sdk-go-1.48.14/aws/credentials/endpointcreds/provider.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/credentials/endpointcreds/provider.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/credentials/endpointcreds/provider.go 2023-12-06 19:28:18.000000000 +0000 @@ -31,6 +31,8 @@ import ( "encoding/json" + "fmt" + "strings" "time" "github.com/aws/aws-sdk-go/aws" @@ -69,7 +71,37 @@ // Optional authorization token value if set will be used as the value of // the Authorization header of the endpoint credential request. + // + // When constructed from environment, the provider will use the value of + // AWS_CONTAINER_AUTHORIZATION_TOKEN environment variable as the token + // + // Will be overridden if AuthorizationTokenProvider is configured AuthorizationToken string + + // Optional auth provider func to dynamically load the auth token from a file + // everytime a credential is retrieved + // + // When constructed from environment, the provider will read and use the content + // of the file pointed to by AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE environment variable + // as the auth token everytime credentials are retrieved + // + // Will override AuthorizationToken if configured + AuthorizationTokenProvider AuthTokenProvider +} + +// AuthTokenProvider defines an interface to dynamically load a value to be passed +// for the Authorization header of a credentials request. +type AuthTokenProvider interface { + GetToken() (string, error) +} + +// TokenProviderFunc is a func type implementing AuthTokenProvider interface +// and enables customizing token provider behavior +type TokenProviderFunc func() (string, error) + +// GetToken func retrieves auth token according to TokenProviderFunc implementation +func (p TokenProviderFunc) GetToken() (string, error) { + return p() } // NewProviderClient returns a credentials Provider for retrieving AWS credentials @@ -164,7 +196,20 @@ req := p.Client.NewRequest(op, nil, out) req.SetContext(ctx) req.HTTPRequest.Header.Set("Accept", "application/json") - if authToken := p.AuthorizationToken; len(authToken) != 0 { + + authToken := p.AuthorizationToken + var err error + if p.AuthorizationTokenProvider != nil { + authToken, err = p.AuthorizationTokenProvider.GetToken() + if err != nil { + return nil, fmt.Errorf("get authorization token: %v", err) + } + } + + if strings.ContainsAny(authToken, "\r\n") { + return nil, fmt.Errorf("authorization token contains invalid newline sequence") + } + if len(authToken) != 0 { req.HTTPRequest.Header.Set("Authorization", authToken) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/credentials/endpointcreds/provider_test.go golang-github-aws-aws-sdk-go-1.48.14/aws/credentials/endpointcreds/provider_test.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/credentials/endpointcreds/provider_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/credentials/endpointcreds/provider_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -159,64 +159,108 @@ } func TestAuthorizationToken(t *testing.T) { - const expectAuthToken = "Basic abc123" - - server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - if e, a := "/path/to/endpoint", r.URL.Path; e != a { - t.Errorf("expect %v, got %v", e, a) - } - if e, a := "application/json", r.Header.Get("Accept"); e != a { - t.Errorf("expect %v, got %v", e, a) - } - if e, a := expectAuthToken, r.Header.Get("Authorization"); e != a { - t.Fatalf("expect %v, got %v", e, a) - } - - encoder := json.NewEncoder(w) - err := encoder.Encode(map[string]interface{}{ - "AccessKeyID": "AKID", - "SecretAccessKey": "SECRET", - "Token": "TOKEN", - "Expiration": time.Now().Add(1 * time.Hour), - }) - - if err != nil { - fmt.Println("failed to write out creds", err) - } - })) - defer server.Close() - - client := endpointcreds.NewProviderClient(*unit.Session.Config, - unit.Session.Handlers, - server.URL+"/path/to/endpoint?something=else", - func(p *endpointcreds.Provider) { - p.AuthorizationToken = expectAuthToken + cases := map[string]struct { + ExpectPath string + ServerPath string + AuthToken string + AuthTokenProvider endpointcreds.AuthTokenProvider + ExpectAuthToken string + ExpectError bool + }{ + "AuthToken": { + ExpectPath: "/path/to/endpoint", + ServerPath: "/path/to/endpoint?something=else", + AuthToken: "Basic abc123", + ExpectAuthToken: "Basic abc123", + }, + "AuthFileToken": { + ExpectPath: "/path/to/endpoint", + ServerPath: "/path/to/endpoint?something=else", + AuthToken: "Basic abc123", + AuthTokenProvider: endpointcreds.TokenProviderFunc(func() (string, error) { + return "Hello %20world", nil + }), + ExpectAuthToken: "Hello %20world", + }, + "RetrieveFileTokenError": { + ExpectPath: "/path/to/endpoint", + ServerPath: "/path/to/endpoint?something=else", + AuthToken: "Basic abc123", + AuthTokenProvider: endpointcreds.TokenProviderFunc(func() (string, error) { + return "", fmt.Errorf("test error") + }), + ExpectAuthToken: "Hello %20world", + ExpectError: true, }, - ) - creds, err := client.Retrieve() - - if err != nil { - t.Errorf("expect no error, got %v", err) - } - - if e, a := "AKID", creds.AccessKeyID; e != a { - t.Errorf("expect %v, got %v", e, a) - } - if e, a := "SECRET", creds.SecretAccessKey; e != a { - t.Errorf("expect %v, got %v", e, a) - } - if e, a := "TOKEN", creds.SessionToken; e != a { - t.Errorf("expect %v, got %v", e, a) - } - if client.IsExpired() { - t.Errorf("expect not expired, was") - } - - client.(*endpointcreds.Provider).CurrentTime = func() time.Time { - return time.Now().Add(2 * time.Hour) } - if !client.IsExpired() { - t.Errorf("expect expired, wasn't") + for name, c := range cases { + t.Run(name, func(t *testing.T) { + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + if e, a := c.ExpectPath, r.URL.Path; e != a { + t.Errorf("expect %v, got %v", e, a) + } + if e, a := "application/json", r.Header.Get("Accept"); e != a { + t.Errorf("expect %v, got %v", e, a) + } + if e, a := c.ExpectAuthToken, r.Header.Get("Authorization"); e != a { + t.Fatalf("expect %v, got %v", e, a) + } + + encoder := json.NewEncoder(w) + err := encoder.Encode(map[string]interface{}{ + "AccessKeyID": "AKID", + "SecretAccessKey": "SECRET", + "Token": "TOKEN", + "Expiration": time.Now().Add(1 * time.Hour), + }) + + if err != nil { + fmt.Println("failed to write out creds", err) + } + })) + defer server.Close() + + client := endpointcreds.NewProviderClient(*unit.Session.Config, + unit.Session.Handlers, + server.URL+c.ServerPath, + func(p *endpointcreds.Provider) { + p.AuthorizationToken = c.AuthToken + p.AuthorizationTokenProvider = c.AuthTokenProvider + }, + ) + creds, err := client.Retrieve() + + if err != nil && !c.ExpectError { + t.Errorf("expect no error, got %v", err) + } else if err == nil && c.ExpectError { + t.Errorf("expect error, got nil") + } + + if c.ExpectError { + return + } + + if e, a := "AKID", creds.AccessKeyID; e != a { + t.Errorf("expect %v, got %v", e, a) + } + if e, a := "SECRET", creds.SecretAccessKey; e != a { + t.Errorf("expect %v, got %v", e, a) + } + if e, a := "TOKEN", creds.SessionToken; e != a { + t.Errorf("expect %v, got %v", e, a) + } + if client.IsExpired() { + t.Errorf("expect not expired, was") + } + + client.(*endpointcreds.Provider).CurrentTime = func() time.Time { + return time.Now().Add(2 * time.Hour) + } + + if !client.IsExpired() { + t.Errorf("expect expired, wasn't") + } + }) } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/defaults/defaults.go golang-github-aws-aws-sdk-go-1.48.14/aws/defaults/defaults.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/defaults/defaults.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/defaults/defaults.go 2023-12-06 19:28:18.000000000 +0000 @@ -9,6 +9,7 @@ import ( "fmt" + "io/ioutil" "net" "net/http" "net/url" @@ -115,9 +116,31 @@ const ( httpProviderAuthorizationEnvVar = "AWS_CONTAINER_AUTHORIZATION_TOKEN" + httpProviderAuthFileEnvVar = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE" httpProviderEnvVar = "AWS_CONTAINER_CREDENTIALS_FULL_URI" ) +// direct representation of the IPv4 address for the ECS container +// "169.254.170.2" +var ecsContainerIPv4 net.IP = []byte{ + 169, 254, 170, 2, +} + +// direct representation of the IPv4 address for the EKS container +// "169.254.170.23" +var eksContainerIPv4 net.IP = []byte{ + 169, 254, 170, 23, +} + +// direct representation of the IPv6 address for the EKS container +// "fd00:ec2::23" +var eksContainerIPv6 net.IP = []byte{ + 0xFD, 0, 0xE, 0xC2, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0x23, +} + // RemoteCredProvider returns a credentials provider for the default remote // endpoints such as EC2 or ECS Roles. func RemoteCredProvider(cfg aws.Config, handlers request.Handlers) credentials.Provider { @@ -135,19 +158,22 @@ var lookupHostFn = net.LookupHost -func isLoopbackHost(host string) (bool, error) { - ip := net.ParseIP(host) - if ip != nil { - return ip.IsLoopback(), nil +// isAllowedHost allows host to be loopback or known ECS/EKS container IPs +// +// host can either be an IP address OR an unresolved hostname - resolution will +// be automatically performed in the latter case +func isAllowedHost(host string) (bool, error) { + if ip := net.ParseIP(host); ip != nil { + return isIPAllowed(ip), nil } - // Host is not an ip, perform lookup addrs, err := lookupHostFn(host) if err != nil { return false, err } + for _, addr := range addrs { - if !net.ParseIP(addr).IsLoopback() { + if ip := net.ParseIP(addr); ip == nil || !isIPAllowed(ip) { return false, nil } } @@ -155,6 +181,13 @@ return true, nil } +func isIPAllowed(ip net.IP) bool { + return ip.IsLoopback() || + ip.Equal(ecsContainerIPv4) || + ip.Equal(eksContainerIPv4) || + ip.Equal(eksContainerIPv6) +} + func localHTTPCredProvider(cfg aws.Config, handlers request.Handlers, u string) credentials.Provider { var errMsg string @@ -165,10 +198,12 @@ host := aws.URLHostname(parsed) if len(host) == 0 { errMsg = "unable to parse host from local HTTP cred provider URL" - } else if isLoopback, loopbackErr := isLoopbackHost(host); loopbackErr != nil { - errMsg = fmt.Sprintf("failed to resolve host %q, %v", host, loopbackErr) - } else if !isLoopback { - errMsg = fmt.Sprintf("invalid endpoint host, %q, only loopback hosts are allowed.", host) + } else if parsed.Scheme == "http" { + if isAllowedHost, allowHostErr := isAllowedHost(host); allowHostErr != nil { + errMsg = fmt.Sprintf("failed to resolve host %q, %v", host, allowHostErr) + } else if !isAllowedHost { + errMsg = fmt.Sprintf("invalid endpoint host, %q, only loopback/ecs/eks hosts are allowed.", host) + } } } @@ -190,6 +225,15 @@ func(p *endpointcreds.Provider) { p.ExpiryWindow = 5 * time.Minute p.AuthorizationToken = os.Getenv(httpProviderAuthorizationEnvVar) + if authFilePath := os.Getenv(httpProviderAuthFileEnvVar); authFilePath != "" { + p.AuthorizationTokenProvider = endpointcreds.TokenProviderFunc(func() (string, error) { + if contents, err := ioutil.ReadFile(authFilePath); err != nil { + return "", fmt.Errorf("failed to read authorization token from %v: %v", authFilePath, err) + } else { + return string(contents), nil + } + }) + } }, ) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/defaults/defaults_test.go golang-github-aws-aws-sdk-go-1.48.14/aws/defaults/defaults_test.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/defaults/defaults_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/defaults/defaults_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -23,10 +23,12 @@ Addrs []string Err error }{ - "localhost": {Addrs: []string{"::1", "127.0.0.1"}}, - "actuallylocal": {Addrs: []string{"127.0.0.2"}}, - "notlocal": {Addrs: []string{"::1", "127.0.0.1", "192.168.1.10"}}, - "www.example.com": {Addrs: []string{"10.10.10.10"}}, + "localhost": {Addrs: []string{"::1", "127.0.0.1"}}, + "actuallylocal": {Addrs: []string{"127.0.0.2"}}, + "notlocal": {Addrs: []string{"::1", "127.0.0.1", "192.168.1.10"}}, + "www.example.com": {Addrs: []string{"10.10.10.10"}}, + "www.eks.legit.com": {Addrs: []string{"fd00:ec2::23"}}, + "www.eks.scary.com": {Addrs: []string{"fd00:ec3::23"}}, } h, ok := m[host] @@ -49,7 +51,13 @@ {Host: "127.1.1.1", Fail: false}, {Host: "[::1]", Fail: false}, {Host: "www.example.com", Fail: true}, - {Host: "169.254.170.2", Fail: true}, + {Host: "169.254.170.2", Fail: false}, + {Host: "169.254.170.23", Fail: false}, + {Host: "[fd00:ec2::23]", Fail: false}, + {Host: "[fd00:ec2:0::23]", Fail: false}, + {Host: "[fd00:ec2:0:1::23]", Fail: true}, + {Host: "www.eks.legit.com", Fail: false}, + {Host: "www.eks.scary.com", Fail: true}, {Host: "localhost", Fail: false, AuthToken: "Basic abc123"}, } @@ -91,6 +99,27 @@ } } +func TestHTTPAuthTokenFile(t *testing.T) { + restoreEnvFn := sdktesting.StashEnv() + defer restoreEnvFn() + os.Setenv(httpProviderAuthFileEnvVar, "path/to/file") + os.Setenv(httpProviderEnvVar, "http://169.254.170.23/abc/123") + + provider := RemoteCredProvider(aws.Config{}, request.Handlers{}) + if provider == nil { + t.Fatalf("expect provider not to be nil, but was") + } + + httpProvider := provider.(*endpointcreds.Provider) + if httpProvider == nil { + t.Fatalf("expect provider not to be nil, but was") + } + + if httpProvider.AuthorizationTokenProvider == nil { + t.Fatalf("expect auth token provider no to be nil, but was") + } +} + func TestECSCredProvider(t *testing.T) { restoreEnvFn := sdktesting.StashEnv() defer restoreEnvFn() diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/endpoints/defaults.go golang-github-aws-aws-sdk-go-1.48.14/aws/endpoints/defaults.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/endpoints/defaults.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/endpoints/defaults.go 2023-12-06 19:28:18.000000000 +0000 @@ -755,6 +755,13 @@ }, }, }, + "agreement-marketplace": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + }, + }, "airflow": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -1041,6 +1048,21 @@ Region: "ca-central-1", }: endpoint{}, endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "api.detective-fips.ca-central-1.amazonaws.com", + }, + endpointKey{ + Region: "ca-central-1-fips", + }: endpoint{ + Hostname: "api.detective-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "eu-central-1", }: endpoint{}, endpointKey{ @@ -1819,6 +1841,12 @@ Region: "ap-northeast-1", }: endpoint{}, endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -1828,12 +1856,27 @@ Region: "ap-southeast-2", }: endpoint{}, endpointKey{ + Region: "ap-southeast-4", + }: 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-3", + }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, + endpointKey{ Region: "us-east-1", }: endpoint{}, endpointKey{ @@ -2573,20 +2616,80 @@ Region: "eu-west-3", }: endpoint{}, endpointKey{ + Region: "fips-us-east-1", + }: endpoint{ + Hostname: "appflow-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-east-2", + }: endpoint{ + Hostname: "appflow-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-1", + }: endpoint{ + Hostname: "appflow-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-2", + }: endpoint{ + Hostname: "appflow-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "sa-east-1", }: endpoint{}, endpointKey{ Region: "us-east-1", }: endpoint{}, endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "appflow-fips.us-east-1.amazonaws.com", + }, + endpointKey{ Region: "us-east-2", }: endpoint{}, endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "appflow-fips.us-east-2.amazonaws.com", + }, + endpointKey{ Region: "us-west-1", }: endpoint{}, endpointKey{ + Region: "us-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "appflow-fips.us-west-1.amazonaws.com", + }, + endpointKey{ Region: "us-west-2", }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "appflow-fips.us-west-2.amazonaws.com", + }, }, }, "application-autoscaling": service{ @@ -3086,6 +3189,9 @@ Region: "ap-northeast-1", }: endpoint{}, endpointKey{ + Region: "ap-south-1", + }: endpoint{}, + endpointKey{ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ @@ -3098,6 +3204,12 @@ Region: "eu-west-1", }: endpoint{}, endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + }: endpoint{}, + endpointKey{ Region: "fips-us-east-1", }: endpoint{ Hostname: "apprunner-fips.us-east-1.amazonaws.com", @@ -3888,6 +4000,12 @@ Region: "ca-central-1", }: endpoint{}, endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "autoscaling-fips.ca-central-1.amazonaws.com", + }, + endpointKey{ Region: "eu-central-1", }: endpoint{}, endpointKey{ @@ -3912,6 +4030,51 @@ Region: "eu-west-3", }: endpoint{}, endpointKey{ + Region: "fips-ca-central-1", + }: endpoint{ + Hostname: "autoscaling-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-east-1", + }: endpoint{ + Hostname: "autoscaling-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-east-2", + }: endpoint{ + Hostname: "autoscaling-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-1", + }: endpoint{ + Hostname: "autoscaling-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-2", + }: endpoint{ + Hostname: "autoscaling-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "il-central-1", }: endpoint{}, endpointKey{ @@ -3927,14 +4090,38 @@ Region: "us-east-1", }: endpoint{}, endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "autoscaling-fips.us-east-1.amazonaws.com", + }, + endpointKey{ Region: "us-east-2", }: endpoint{}, endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "autoscaling-fips.us-east-2.amazonaws.com", + }, + endpointKey{ Region: "us-west-1", }: endpoint{}, endpointKey{ + Region: "us-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "autoscaling-fips.us-west-1.amazonaws.com", + }, + endpointKey{ Region: "us-west-2", }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "autoscaling-fips.us-west-2.amazonaws.com", + }, }, }, "autoscaling-plans": service{ @@ -4408,6 +4595,137 @@ }, }, }, + "bedrock": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "bedrock-ap-northeast-1", + }: endpoint{ + Hostname: "bedrock.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, + endpointKey{ + Region: "bedrock-ap-southeast-1", + }: endpoint{ + Hostname: "bedrock.ap-southeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-1", + }, + }, + endpointKey{ + Region: "bedrock-eu-central-1", + }: endpoint{ + Hostname: "bedrock.eu-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-1", + }, + }, + endpointKey{ + Region: "bedrock-fips-us-east-1", + }: endpoint{ + Hostname: "bedrock-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "bedrock-fips-us-west-2", + }: endpoint{ + Hostname: "bedrock-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + endpointKey{ + Region: "bedrock-runtime-ap-northeast-1", + }: endpoint{ + Hostname: "bedrock-runtime.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, + endpointKey{ + Region: "bedrock-runtime-ap-southeast-1", + }: endpoint{ + Hostname: "bedrock-runtime.ap-southeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-1", + }, + }, + endpointKey{ + Region: "bedrock-runtime-eu-central-1", + }: endpoint{ + Hostname: "bedrock-runtime.eu-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-1", + }, + }, + endpointKey{ + Region: "bedrock-runtime-fips-us-east-1", + }: endpoint{ + Hostname: "bedrock-runtime-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "bedrock-runtime-fips-us-west-2", + }: endpoint{ + Hostname: "bedrock-runtime-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + endpointKey{ + Region: "bedrock-runtime-us-east-1", + }: endpoint{ + Hostname: "bedrock-runtime.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "bedrock-runtime-us-west-2", + }: endpoint{ + Hostname: "bedrock-runtime.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + endpointKey{ + Region: "bedrock-us-east-1", + }: endpoint{ + Hostname: "bedrock.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "bedrock-us-west-2", + }: endpoint{ + Hostname: "bedrock.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + }, + }, "billingconductor": service{ PartitionEndpoint: "aws-global", IsRegionalized: boxedFalse, @@ -5994,15 +6312,27 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ + Region: "ap-south-2", + }: endpoint{}, + endpointKey{ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ Region: "ap-southeast-2", }: endpoint{}, endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ @@ -6024,6 +6354,9 @@ Region: "eu-south-1", }: endpoint{}, endpointKey{ + Region: "eu-south-2", + }: endpoint{}, + endpointKey{ Region: "eu-west-1", }: endpoint{}, endpointKey{ @@ -6078,6 +6411,12 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "il-central-1", + }: endpoint{}, + endpointKey{ + Region: "me-central-1", + }: endpoint{}, + endpointKey{ Region: "me-south-1", }: endpoint{}, endpointKey{ @@ -6773,6 +7112,14 @@ }, }, endpointKey{ + Region: "ap-south-2", + }: endpoint{ + Hostname: "compute-optimizer.ap-south-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-2", + }, + }, + endpointKey{ Region: "ap-southeast-1", }: endpoint{ Hostname: "compute-optimizer.ap-southeast-1.amazonaws.com", @@ -6789,6 +7136,22 @@ }, }, endpointKey{ + Region: "ap-southeast-3", + }: endpoint{ + Hostname: "compute-optimizer.ap-southeast-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-3", + }, + }, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{ + Hostname: "compute-optimizer.ap-southeast-4.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-4", + }, + }, + endpointKey{ Region: "ca-central-1", }: endpoint{ Hostname: "compute-optimizer.ca-central-1.amazonaws.com", @@ -6805,6 +7168,14 @@ }, }, endpointKey{ + Region: "eu-central-2", + }: endpoint{ + Hostname: "compute-optimizer.eu-central-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-2", + }, + }, + endpointKey{ Region: "eu-north-1", }: endpoint{ Hostname: "compute-optimizer.eu-north-1.amazonaws.com", @@ -6821,6 +7192,14 @@ }, }, endpointKey{ + Region: "eu-south-2", + }: endpoint{ + Hostname: "compute-optimizer.eu-south-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-2", + }, + }, + endpointKey{ Region: "eu-west-1", }: endpoint{ Hostname: "compute-optimizer.eu-west-1.amazonaws.com", @@ -6845,6 +7224,22 @@ }, }, endpointKey{ + Region: "il-central-1", + }: endpoint{ + Hostname: "compute-optimizer.il-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "il-central-1", + }, + }, + endpointKey{ + Region: "me-central-1", + }: endpoint{ + Hostname: "compute-optimizer.me-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-central-1", + }, + }, + endpointKey{ Region: "me-south-1", }: endpoint{ Hostname: "compute-optimizer.me-south-1.amazonaws.com", @@ -7225,6 +7620,9 @@ Region: "ap-southeast-3", }: endpoint{}, endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ @@ -7352,6 +7750,18 @@ }, }, }, + "cost-optimization-hub": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-east-1", + }: endpoint{ + Hostname: "cost-optimization-hub.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + }, + }, "cur": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -8007,6 +8417,185 @@ }, }, }, + "datazone": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + DNSSuffix: "api.aws", + }, + defaultKey{ + Variant: fipsVariant, + }: endpoint{ + Hostname: "{service}-fips.{region}.{dnsSuffix}", + DNSSuffix: "api.aws", + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "af-south-1", + }: endpoint{ + Hostname: "datazone.af-south-1.api.aws", + }, + endpointKey{ + Region: "ap-east-1", + }: endpoint{ + Hostname: "datazone.ap-east-1.api.aws", + }, + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{ + Hostname: "datazone.ap-northeast-1.api.aws", + }, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{ + Hostname: "datazone.ap-northeast-2.api.aws", + }, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{ + Hostname: "datazone.ap-northeast-3.api.aws", + }, + endpointKey{ + Region: "ap-south-1", + }: endpoint{ + Hostname: "datazone.ap-south-1.api.aws", + }, + endpointKey{ + Region: "ap-south-2", + }: endpoint{ + Hostname: "datazone.ap-south-2.api.aws", + }, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{ + Hostname: "datazone.ap-southeast-1.api.aws", + }, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{ + Hostname: "datazone.ap-southeast-2.api.aws", + }, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{ + Hostname: "datazone.ap-southeast-3.api.aws", + }, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{ + Hostname: "datazone.ap-southeast-4.api.aws", + }, + endpointKey{ + Region: "ca-central-1", + }: endpoint{ + Hostname: "datazone.ca-central-1.api.aws", + }, + endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "datazone-fips.ca-central-1.amazonaws.com", + }, + endpointKey{ + Region: "eu-central-1", + }: endpoint{ + Hostname: "datazone.eu-central-1.api.aws", + }, + endpointKey{ + Region: "eu-central-2", + }: endpoint{ + Hostname: "datazone.eu-central-2.api.aws", + }, + endpointKey{ + Region: "eu-north-1", + }: endpoint{ + Hostname: "datazone.eu-north-1.api.aws", + }, + endpointKey{ + Region: "eu-south-1", + }: endpoint{ + Hostname: "datazone.eu-south-1.api.aws", + }, + endpointKey{ + Region: "eu-south-2", + }: endpoint{ + Hostname: "datazone.eu-south-2.api.aws", + }, + endpointKey{ + Region: "eu-west-1", + }: endpoint{ + Hostname: "datazone.eu-west-1.api.aws", + }, + endpointKey{ + Region: "eu-west-2", + }: endpoint{ + Hostname: "datazone.eu-west-2.api.aws", + }, + endpointKey{ + Region: "eu-west-3", + }: endpoint{ + Hostname: "datazone.eu-west-3.api.aws", + }, + endpointKey{ + Region: "il-central-1", + }: endpoint{ + Hostname: "datazone.il-central-1.api.aws", + }, + endpointKey{ + Region: "me-central-1", + }: endpoint{ + Hostname: "datazone.me-central-1.api.aws", + }, + endpointKey{ + Region: "me-south-1", + }: endpoint{ + Hostname: "datazone.me-south-1.api.aws", + }, + endpointKey{ + Region: "sa-east-1", + }: endpoint{ + Hostname: "datazone.sa-east-1.api.aws", + }, + endpointKey{ + Region: "us-east-1", + }: endpoint{ + Hostname: "datazone.us-east-1.api.aws", + }, + endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "datazone-fips.us-east-1.amazonaws.com", + }, + endpointKey{ + Region: "us-east-2", + }: endpoint{ + Hostname: "datazone.us-east-2.api.aws", + }, + endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "datazone-fips.us-east-2.amazonaws.com", + }, + endpointKey{ + Region: "us-west-1", + }: endpoint{ + Hostname: "datazone.us-west-1.api.aws", + }, + endpointKey{ + Region: "us-west-2", + }: endpoint{ + Hostname: "datazone.us-west-2.api.aws", + }, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "datazone-fips.us-west-2.amazonaws.com", + }, + }, + }, "dax": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -10963,6 +11552,12 @@ }: endpoint{}, endpointKey{ Region: "us-east-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "elasticmapreduce.us-east-2.api.aws", + }, + endpointKey{ + Region: "us-east-2", Variant: fipsVariant, }: endpoint{ Hostname: "elasticmapreduce-fips.us-east-2.amazonaws.com", @@ -11045,6 +11640,12 @@ Region: "ca-central-1", }: endpoint{}, endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "email-fips.ca-central-1.amazonaws.com", + }, + endpointKey{ Region: "eu-central-1", }: endpoint{}, endpointKey{ @@ -11063,6 +11664,15 @@ Region: "eu-west-3", }: endpoint{}, endpointKey{ + Region: "fips-ca-central-1", + }: endpoint{ + Hostname: "email-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "fips-us-east-1", }: endpoint{ Hostname: "email-fips.us-east-1.amazonaws.com", @@ -11072,6 +11682,24 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "fips-us-east-2", + }: endpoint{ + Hostname: "email-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-1", + }: endpoint{ + Hostname: "email-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "fips-us-west-2", }: endpoint{ Hostname: "email-fips.us-west-2.amazonaws.com", @@ -11102,9 +11730,21 @@ Region: "us-east-2", }: endpoint{}, endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "email-fips.us-east-2.amazonaws.com", + }, + endpointKey{ Region: "us-west-1", }: endpoint{}, endpointKey{ + Region: "us-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "email-fips.us-west-1.amazonaws.com", + }, + endpointKey{ Region: "us-west-2", }: endpoint{}, endpointKey{ @@ -11130,6 +11770,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -11139,6 +11782,9 @@ Region: "ap-southeast-2", }: endpoint{}, endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ @@ -11211,6 +11857,9 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "me-central-1", + }: endpoint{}, + endpointKey{ Region: "me-south-1", }: endpoint{}, endpointKey{ @@ -11257,6 +11906,9 @@ "emr-serverless": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "af-south-1", + }: endpoint{}, + endpointKey{ Region: "ap-east-1", }: endpoint{}, endpointKey{ @@ -11266,6 +11918,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -11275,6 +11930,9 @@ Region: "ap-southeast-2", }: endpoint{}, endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ @@ -11290,6 +11948,9 @@ Region: "eu-north-1", }: endpoint{}, endpointKey{ + Region: "eu-south-1", + }: endpoint{}, + endpointKey{ Region: "eu-west-1", }: endpoint{}, endpointKey{ @@ -11926,12 +12587,27 @@ "finspace": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "ap-northeast-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-west-1", }: endpoint{}, endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ Region: "us-east-1", }: endpoint{}, endpointKey{ @@ -13032,16 +13708,6 @@ }: endpoint{}, }, }, - "gamesparks": service{ - Endpoints: serviceEndpoints{ - endpointKey{ - Region: "ap-northeast-1", - }: endpoint{}, - endpointKey{ - Region: "us-east-1", - }: endpoint{}, - }, - }, "geo": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -14272,6 +14938,9 @@ "inspector2": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "af-south-1", + }: endpoint{}, + endpointKey{ Region: "ap-east-1", }: endpoint{}, endpointKey{ @@ -14281,6 +14950,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -14290,12 +14962,18 @@ Region: "ap-southeast-2", }: endpoint{}, endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, endpointKey{ + Region: "eu-central-2", + }: endpoint{}, + endpointKey{ Region: "eu-north-1", }: endpoint{}, endpointKey{ @@ -15291,12 +15969,45 @@ "iottwinmaker": service{ Endpoints: serviceEndpoints{ 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: "api-ap-northeast-1", + }: endpoint{ + Hostname: "api.iottwinmaker.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, + endpointKey{ + Region: "api-ap-northeast-2", + }: endpoint{ + Hostname: "api.iottwinmaker.ap-northeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-2", + }, + }, + endpointKey{ + Region: "api-ap-south-1", + }: endpoint{ + Hostname: "api.iottwinmaker.ap-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-1", + }, + }, + endpointKey{ Region: "api-ap-southeast-1", }: endpoint{ Hostname: "api.iottwinmaker.ap-southeast-1.amazonaws.com", @@ -15345,6 +16056,30 @@ }, }, endpointKey{ + Region: "data-ap-northeast-1", + }: endpoint{ + Hostname: "data.iottwinmaker.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, + endpointKey{ + Region: "data-ap-northeast-2", + }: endpoint{ + Hostname: "data.iottwinmaker.ap-northeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-2", + }, + }, + endpointKey{ + Region: "data-ap-south-1", + }: endpoint{ + Hostname: "data.iottwinmaker.ap-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-1", + }, + }, + endpointKey{ Region: "data-ap-southeast-1", }: endpoint{ Hostname: "data.iottwinmaker.ap-southeast-1.amazonaws.com", @@ -17340,6 +18075,9 @@ Region: "ap-south-1", }: endpoint{}, endpointKey{ + Region: "ap-south-2", + }: endpoint{}, + endpointKey{ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ @@ -17349,18 +18087,27 @@ Region: "ap-southeast-3", }: endpoint{}, endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, endpointKey{ + Region: "eu-central-2", + }: endpoint{}, + endpointKey{ Region: "eu-north-1", }: endpoint{}, endpointKey{ Region: "eu-south-1", }: endpoint{}, endpointKey{ + Region: "eu-south-2", + }: endpoint{}, + endpointKey{ Region: "eu-west-1", }: endpoint{}, endpointKey{ @@ -17409,6 +18156,9 @@ Region: "il-central-1", }: endpoint{}, endpointKey{ + Region: "me-central-1", + }: endpoint{}, + endpointKey{ Region: "me-south-1", }: endpoint{}, endpointKey{ @@ -17621,6 +18371,9 @@ Region: "ap-south-1", }: endpoint{}, endpointKey{ + Region: "ap-south-2", + }: endpoint{}, + endpointKey{ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ @@ -17630,18 +18383,27 @@ Region: "ap-southeast-3", }: endpoint{}, endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, endpointKey{ + Region: "eu-central-2", + }: endpoint{}, + endpointKey{ Region: "eu-north-1", }: endpoint{}, endpointKey{ Region: "eu-south-1", }: endpoint{}, endpointKey{ + Region: "eu-south-2", + }: endpoint{}, + endpointKey{ Region: "eu-west-1", }: endpoint{}, endpointKey{ @@ -17690,6 +18452,9 @@ Region: "il-central-1", }: endpoint{}, endpointKey{ + Region: "me-central-1", + }: endpoint{}, + endpointKey{ Region: "me-south-1", }: endpoint{}, endpointKey{ @@ -18105,46 +18870,6 @@ }: endpoint{}, }, }, - "macie": service{ - Endpoints: serviceEndpoints{ - endpointKey{ - Region: "fips-us-east-1", - }: endpoint{ - Hostname: "macie-fips.us-east-1.amazonaws.com", - CredentialScope: credentialScope{ - Region: "us-east-1", - }, - Deprecated: boxedTrue, - }, - endpointKey{ - Region: "fips-us-west-2", - }: endpoint{ - Hostname: "macie-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: "macie-fips.us-east-1.amazonaws.com", - }, - endpointKey{ - Region: "us-west-2", - }: endpoint{}, - endpointKey{ - Region: "us-west-2", - Variant: fipsVariant, - }: endpoint{ - Hostname: "macie-fips.us-west-2.amazonaws.com", - }, - }, - }, "macie2": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -18654,6 +19379,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -18706,6 +19434,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -18758,6 +19489,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -18835,12 +19569,30 @@ "meetings-chime": service{ Endpoints: serviceEndpoints{ 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-west-2", + }: endpoint{}, + endpointKey{ Region: "il-central-1", }: endpoint{}, endpointKey{ @@ -20068,6 +20820,9 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "il-central-1", + }: endpoint{}, + endpointKey{ Region: "me-central-1", }: endpoint{}, endpointKey{ @@ -20362,6 +21117,14 @@ }, }, endpointKey{ + Region: "eu-central-2", + }: endpoint{ + Hostname: "oidc.eu-central-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-2", + }, + }, + endpointKey{ Region: "eu-north-1", }: endpoint{ Hostname: "oidc.eu-north-1.amazonaws.com", @@ -20512,6 +21275,14 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "il-central-1", + }: endpoint{ + Hostname: "omics.il-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "il-central-1", + }, + }, + endpointKey{ Region: "us-east-1", }: endpoint{ Hostname: "omics.us-east-1.amazonaws.com", @@ -20665,12 +21436,21 @@ 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{ @@ -21469,6 +22249,14 @@ }, }, endpointKey{ + Region: "eu-central-2", + }: endpoint{ + Hostname: "portal.sso.eu-central-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-2", + }, + }, + endpointKey{ Region: "eu-north-1", }: endpoint{ Hostname: "portal.sso.eu-north-1.amazonaws.com", @@ -21707,6 +22495,161 @@ }: endpoint{}, }, }, + "qbusiness": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + DNSSuffix: "api.aws", + }, + defaultKey{ + Variant: fipsVariant, + }: endpoint{ + Hostname: "{service}-fips.{region}.{dnsSuffix}", + DNSSuffix: "api.aws", + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "af-south-1", + }: endpoint{ + Hostname: "qbusiness.af-south-1.api.aws", + }, + endpointKey{ + Region: "ap-east-1", + }: endpoint{ + Hostname: "qbusiness.ap-east-1.api.aws", + }, + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{ + Hostname: "qbusiness.ap-northeast-1.api.aws", + }, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{ + Hostname: "qbusiness.ap-northeast-2.api.aws", + }, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{ + Hostname: "qbusiness.ap-northeast-3.api.aws", + }, + endpointKey{ + Region: "ap-south-1", + }: endpoint{ + Hostname: "qbusiness.ap-south-1.api.aws", + }, + endpointKey{ + Region: "ap-south-2", + }: endpoint{ + Hostname: "qbusiness.ap-south-2.api.aws", + }, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{ + Hostname: "qbusiness.ap-southeast-1.api.aws", + }, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{ + Hostname: "qbusiness.ap-southeast-2.api.aws", + }, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{ + Hostname: "qbusiness.ap-southeast-3.api.aws", + }, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{ + Hostname: "qbusiness.ap-southeast-4.api.aws", + }, + endpointKey{ + Region: "ca-central-1", + }: endpoint{ + Hostname: "qbusiness.ca-central-1.api.aws", + }, + endpointKey{ + Region: "eu-central-1", + }: endpoint{ + Hostname: "qbusiness.eu-central-1.api.aws", + }, + endpointKey{ + Region: "eu-central-2", + }: endpoint{ + Hostname: "qbusiness.eu-central-2.api.aws", + }, + endpointKey{ + Region: "eu-north-1", + }: endpoint{ + Hostname: "qbusiness.eu-north-1.api.aws", + }, + endpointKey{ + Region: "eu-south-1", + }: endpoint{ + Hostname: "qbusiness.eu-south-1.api.aws", + }, + endpointKey{ + Region: "eu-south-2", + }: endpoint{ + Hostname: "qbusiness.eu-south-2.api.aws", + }, + endpointKey{ + Region: "eu-west-1", + }: endpoint{ + Hostname: "qbusiness.eu-west-1.api.aws", + }, + endpointKey{ + Region: "eu-west-2", + }: endpoint{ + Hostname: "qbusiness.eu-west-2.api.aws", + }, + endpointKey{ + Region: "eu-west-3", + }: endpoint{ + Hostname: "qbusiness.eu-west-3.api.aws", + }, + endpointKey{ + Region: "il-central-1", + }: endpoint{ + Hostname: "qbusiness.il-central-1.api.aws", + }, + endpointKey{ + Region: "me-central-1", + }: endpoint{ + Hostname: "qbusiness.me-central-1.api.aws", + }, + endpointKey{ + Region: "me-south-1", + }: endpoint{ + Hostname: "qbusiness.me-south-1.api.aws", + }, + endpointKey{ + Region: "sa-east-1", + }: endpoint{ + Hostname: "qbusiness.sa-east-1.api.aws", + }, + endpointKey{ + Region: "us-east-1", + }: endpoint{ + Hostname: "qbusiness.us-east-1.api.aws", + }, + endpointKey{ + Region: "us-east-2", + }: endpoint{ + Hostname: "qbusiness.us-east-2.api.aws", + }, + endpointKey{ + Region: "us-west-1", + }: endpoint{ + Hostname: "qbusiness.us-west-1.api.aws", + }, + endpointKey{ + Region: "us-west-2", + }: endpoint{ + Hostname: "qbusiness.us-west-2.api.aws", + }, + }, + }, "qldb": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -23132,6 +24075,16 @@ }, Endpoints: serviceEndpoints{ endpointKey{ + Region: "af-south-1", + }: endpoint{ + Hostname: "resource-explorer-2.af-south-1.api.aws", + }, + endpointKey{ + Region: "ap-east-1", + }: endpoint{ + Hostname: "resource-explorer-2.ap-east-1.api.aws", + }, + endpointKey{ Region: "ap-northeast-1", }: endpoint{ Hostname: "resource-explorer-2.ap-northeast-1.api.aws", @@ -23167,6 +24120,11 @@ Hostname: "resource-explorer-2.ap-southeast-2.api.aws", }, endpointKey{ + Region: "ap-southeast-3", + }: endpoint{ + Hostname: "resource-explorer-2.ap-southeast-3.api.aws", + }, + endpointKey{ Region: "ap-southeast-4", }: endpoint{ Hostname: "resource-explorer-2.ap-southeast-4.api.aws", @@ -23192,6 +24150,11 @@ Hostname: "resource-explorer-2.eu-north-1.api.aws", }, endpointKey{ + Region: "eu-south-1", + }: endpoint{ + Hostname: "resource-explorer-2.eu-south-1.api.aws", + }, + endpointKey{ Region: "eu-west-1", }: endpoint{ Hostname: "resource-explorer-2.eu-west-1.api.aws", @@ -23212,6 +24175,16 @@ Hostname: "resource-explorer-2.il-central-1.api.aws", }, endpointKey{ + Region: "me-central-1", + }: endpoint{ + Hostname: "resource-explorer-2.me-central-1.api.aws", + }, + endpointKey{ + Region: "me-south-1", + }: endpoint{ + Hostname: "resource-explorer-2.me-south-1.api.aws", + }, + endpointKey{ Region: "sa-east-1", }: endpoint{ Hostname: "resource-explorer-2.sa-east-1.api.aws", @@ -25529,6 +26502,9 @@ Region: "ap-northeast-2", }: endpoint{}, endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ Region: "ap-south-1", }: endpoint{}, endpointKey{ @@ -25538,15 +26514,24 @@ 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: "sa-east-1", }: endpoint{}, endpointKey{ @@ -25924,6 +26909,9 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "il-central-1", + }: endpoint{}, + endpointKey{ Region: "me-central-1", }: endpoint{}, endpointKey{ @@ -26625,6 +27613,38 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "fips-verification-us-east-1", + }: endpoint{ + Hostname: "verification.signer-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "fips-verification-us-east-2", + }: endpoint{ + Hostname: "verification.signer-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + endpointKey{ + Region: "fips-verification-us-west-1", + }: endpoint{ + Hostname: "verification.signer-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + endpointKey{ + Region: "fips-verification-us-west-2", + }: endpoint{ + Hostname: "verification.signer-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + endpointKey{ Region: "me-south-1", }: endpoint{}, endpointKey{ @@ -26666,6 +27686,166 @@ }: endpoint{ Hostname: "signer-fips.us-west-2.amazonaws.com", }, + endpointKey{ + Region: "verification-af-south-1", + }: endpoint{ + Hostname: "verification.signer.af-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "af-south-1", + }, + }, + endpointKey{ + Region: "verification-ap-east-1", + }: endpoint{ + Hostname: "verification.signer.ap-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-east-1", + }, + }, + endpointKey{ + Region: "verification-ap-northeast-1", + }: endpoint{ + Hostname: "verification.signer.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, + endpointKey{ + Region: "verification-ap-northeast-2", + }: endpoint{ + Hostname: "verification.signer.ap-northeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-2", + }, + }, + endpointKey{ + Region: "verification-ap-south-1", + }: endpoint{ + Hostname: "verification.signer.ap-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-1", + }, + }, + endpointKey{ + Region: "verification-ap-southeast-1", + }: endpoint{ + Hostname: "verification.signer.ap-southeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-1", + }, + }, + endpointKey{ + Region: "verification-ap-southeast-2", + }: endpoint{ + Hostname: "verification.signer.ap-southeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-2", + }, + }, + endpointKey{ + Region: "verification-ca-central-1", + }: endpoint{ + Hostname: "verification.signer.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + }, + endpointKey{ + Region: "verification-eu-central-1", + }: endpoint{ + Hostname: "verification.signer.eu-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-1", + }, + }, + endpointKey{ + Region: "verification-eu-north-1", + }: endpoint{ + Hostname: "verification.signer.eu-north-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-north-1", + }, + }, + endpointKey{ + Region: "verification-eu-south-1", + }: endpoint{ + Hostname: "verification.signer.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + }, + endpointKey{ + Region: "verification-eu-west-1", + }: endpoint{ + Hostname: "verification.signer.eu-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-1", + }, + }, + endpointKey{ + Region: "verification-eu-west-2", + }: endpoint{ + Hostname: "verification.signer.eu-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-2", + }, + }, + endpointKey{ + Region: "verification-eu-west-3", + }: endpoint{ + Hostname: "verification.signer.eu-west-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-3", + }, + }, + endpointKey{ + Region: "verification-me-south-1", + }: endpoint{ + Hostname: "verification.signer.me-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-south-1", + }, + }, + endpointKey{ + Region: "verification-sa-east-1", + }: endpoint{ + Hostname: "verification.signer.sa-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "sa-east-1", + }, + }, + endpointKey{ + Region: "verification-us-east-1", + }: endpoint{ + Hostname: "verification.signer.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "verification-us-east-2", + }: endpoint{ + Hostname: "verification.signer.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + endpointKey{ + Region: "verification-us-west-1", + }: endpoint{ + Hostname: "verification.signer.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + endpointKey{ + Region: "verification-us-west-2", + }: endpoint{ + Hostname: "verification.signer.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, }, }, "simspaceweaver": service{ @@ -29141,18 +30321,58 @@ }, }, }, + "thinclient": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + }, + }, "tnb": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "ap-northeast-2", + }: 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-2", + }: endpoint{}, + endpointKey{ Region: "eu-west-3", }: endpoint{}, endpointKey{ + Region: "sa-east-1", + }: endpoint{}, + endpointKey{ Region: "us-east-1", }: endpoint{}, endpointKey{ @@ -29823,6 +31043,9 @@ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ Region: "ca-central-1", }: endpoint{}, endpointKey{ @@ -31759,6 +32982,9 @@ Deprecated: boxedTrue, }, endpointKey{ + Region: "il-central-1", + }: endpoint{}, + endpointKey{ Region: "sa-east-1", }: endpoint{}, endpointKey{ @@ -32085,6 +33311,20 @@ }, }, }, + "api.pricing": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + CredentialScope: credentialScope{ + Service: "pricing", + }, + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{}, + }, + }, "api.sagemaker": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -32502,6 +33742,31 @@ }: endpoint{}, }, }, + "datazone": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + DNSSuffix: "api.amazonwebservices.com.cn", + }, + defaultKey{ + Variant: fipsVariant, + }: endpoint{ + Hostname: "{service}-fips.{region}.{dnsSuffix}", + DNSSuffix: "api.amazonwebservices.com.cn", + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{ + Hostname: "datazone.cn-north-1.api.amazonwebservices.com.cn", + }, + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{ + Hostname: "datazone.cn-northwest-1.api.amazonwebservices.com.cn", + }, + }, + }, "dax": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -32715,8 +33980,20 @@ Region: "cn-north-1", }: endpoint{}, endpointKey{ + Region: "cn-north-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "elasticmapreduce.cn-north-1.api.amazonwebservices.com.cn", + }, + endpointKey{ Region: "cn-northwest-1", }: endpoint{}, + endpointKey{ + Region: "cn-northwest-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "elasticmapreduce.cn-northwest-1.api.amazonwebservices.com.cn", + }, }, }, "emr-containers": service{ @@ -33225,6 +34502,26 @@ }: endpoint{}, }, }, + "oidc": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{ + Hostname: "oidc.cn-north-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-north-1", + }, + }, + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{ + Hostname: "oidc.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, + }, + }, "organizations": service{ PartitionEndpoint: "aws-cn-global", IsRegionalized: boxedFalse, @@ -33263,6 +34560,51 @@ }: endpoint{}, }, }, + "portal.sso": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{ + Hostname: "portal.sso.cn-north-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-north-1", + }, + }, + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{ + Hostname: "portal.sso.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, + }, + }, + "qbusiness": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + DNSSuffix: "api.amazonwebservices.com.cn", + }, + defaultKey{ + Variant: fipsVariant, + }: endpoint{ + Hostname: "{service}-fips.{region}.{dnsSuffix}", + DNSSuffix: "api.amazonwebservices.com.cn", + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{ + Hostname: "qbusiness.cn-north-1.api.amazonwebservices.com.cn", + }, + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{ + Hostname: "qbusiness.cn-northwest-1.api.amazonwebservices.com.cn", + }, + }, + }, "ram": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -33303,6 +34645,13 @@ }: endpoint{}, }, }, + "redshift-serverless": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{}, + }, + }, "resource-explorer-2": service{ Defaults: endpointDefaults{ defaultKey{}: endpoint{ @@ -33604,6 +34953,22 @@ endpointKey{ Region: "cn-northwest-1", }: endpoint{}, + endpointKey{ + Region: "verification-cn-north-1", + }: endpoint{ + Hostname: "verification.signer.cn-north-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-north-1", + }, + }, + endpointKey{ + Region: "verification-cn-northwest-1", + }: endpoint{ + Hostname: "verification.signer.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, }, }, "sms": service{ @@ -33710,8 +35075,20 @@ Region: "cn-north-1", }: endpoint{}, endpointKey{ + Region: "cn-north-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "states.cn-north-1.api.amazonwebservices.com.cn", + }, + endpointKey{ Region: "cn-northwest-1", }: endpoint{}, + endpointKey{ + Region: "cn-northwest-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "states.cn-northwest-1.api.amazonwebservices.com.cn", + }, }, }, "storagegateway": service{ @@ -34486,11 +35863,41 @@ "appconfigdata": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + Hostname: "appconfigdata.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-gov-west-1", + }: endpoint{ + Hostname: "appconfigdata.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-gov-east-1", }: endpoint{}, endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "appconfigdata.us-gov-east-1.amazonaws.com", + }, + endpointKey{ Region: "us-gov-west-1", }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "appconfigdata.us-gov-west-1.amazonaws.com", + }, }, }, "application-autoscaling": service{ @@ -34625,6 +36032,16 @@ }, }, }, + "arc-zonal-shift": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + }, + }, "athena": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -35223,6 +36640,13 @@ }, }, }, + "codestar-connections": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + }, + }, "cognito-identity": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -35566,6 +36990,31 @@ }, }, }, + "datazone": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + DNSSuffix: "api.aws", + }, + defaultKey{ + Variant: fipsVariant, + }: endpoint{ + Hostname: "{service}-fips.{region}.{dnsSuffix}", + DNSSuffix: "api.aws", + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{ + Hostname: "datazone.us-gov-east-1.api.aws", + }, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{ + Hostname: "datazone.us-gov-west-1.api.aws", + }, + }, + }, "directconnect": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -35713,6 +37162,46 @@ }, }, }, + "drs": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + Hostname: "drs-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: "drs-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "drs-fips.us-gov-east-1.amazonaws.com", + }, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "drs-fips.us-gov-west-1.amazonaws.com", + }, + }, + }, "ds": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -36170,6 +37659,12 @@ }: endpoint{}, endpointKey{ Region: "us-gov-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "elasticmapreduce.us-gov-east-1.api.aws", + }, + endpointKey{ + Region: "us-gov-east-1", Variant: fipsVariant, }: endpoint{ Hostname: "elasticmapreduce.us-gov-east-1.amazonaws.com", @@ -36181,6 +37676,13 @@ }, endpointKey{ Region: "us-gov-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "elasticmapreduce.us-gov-west-1.api.aws", + Protocols: []string{"https"}, + }, + endpointKey{ + Region: "us-gov-west-1", Variant: fipsVariant, }: endpoint{ Hostname: "elasticmapreduce.us-gov-west-1.amazonaws.com", @@ -36590,19 +38092,43 @@ }: endpoint{}, endpointKey{ Region: "us-gov-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "glue.us-gov-east-1.api.aws", + }, + endpointKey{ + Region: "us-gov-east-1", Variant: fipsVariant, }: endpoint{ Hostname: "glue-fips.us-gov-east-1.amazonaws.com", }, endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant | dualStackVariant, + }: endpoint{ + Hostname: "glue-fips.us-gov-east-1.api.aws", + }, + endpointKey{ Region: "us-gov-west-1", }: endpoint{}, endpointKey{ Region: "us-gov-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "glue.us-gov-west-1.api.aws", + }, + endpointKey{ + Region: "us-gov-west-1", Variant: fipsVariant, }: endpoint{ Hostname: "glue-fips.us-gov-west-1.amazonaws.com", }, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant | dualStackVariant, + }: endpoint{ + Hostname: "glue-fips.us-gov-west-1.api.aws", + }, }, }, "greengrass": service{ @@ -37439,19 +38965,43 @@ }: endpoint{}, endpointKey{ Region: "us-gov-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "lakeformation.us-gov-east-1.api.aws", + }, + endpointKey{ + Region: "us-gov-east-1", Variant: fipsVariant, }: endpoint{ Hostname: "lakeformation-fips.us-gov-east-1.amazonaws.com", }, endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant | dualStackVariant, + }: endpoint{ + Hostname: "lakeformation-fips.us-gov-east-1.api.aws", + }, + endpointKey{ Region: "us-gov-west-1", }: endpoint{}, endpointKey{ Region: "us-gov-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "lakeformation.us-gov-west-1.api.aws", + }, + endpointKey{ + Region: "us-gov-west-1", Variant: fipsVariant, }: endpoint{ Hostname: "lakeformation-fips.us-gov-west-1.amazonaws.com", }, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant | dualStackVariant, + }: endpoint{ + Hostname: "lakeformation-fips.us-gov-west-1.api.aws", + }, }, }, "lambda": service{ @@ -37596,6 +39146,36 @@ }, }, }, + "m2": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-gov-west-1", + }: endpoint{ + + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{}, + }, + }, "managedblockchain": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -38152,6 +39732,31 @@ }, }, }, + "qbusiness": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + DNSSuffix: "api.aws", + }, + defaultKey{ + Variant: fipsVariant, + }: endpoint{ + Hostname: "{service}-fips.{region}.{dnsSuffix}", + DNSSuffix: "api.aws", + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{ + Hostname: "qbusiness.us-gov-east-1.api.aws", + }, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{ + Hostname: "qbusiness.us-gov-west-1.api.aws", + }, + }, + }, "quicksight": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -38393,6 +39998,46 @@ }, }, }, + "resiliencehub": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + Hostname: "resiliencehub-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: "resiliencehub-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "resiliencehub-fips.us-gov-east-1.amazonaws.com", + }, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "resiliencehub-fips.us-gov-west-1.amazonaws.com", + }, + }, + }, "resource-explorer-2": service{ Defaults: endpointDefaults{ defaultKey{}: endpoint{ @@ -38473,6 +40118,16 @@ }: endpoint{}, }, }, + "rolesanywhere": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + }, + }, "route53": service{ PartitionEndpoint: "aws-us-gov-global", IsRegionalized: boxedFalse, @@ -39180,11 +40835,41 @@ "simspaceweaver": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + Hostname: "simspaceweaver.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-gov-west-1", + }: endpoint{ + Hostname: "simspaceweaver.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-gov-east-1", }: endpoint{}, endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "simspaceweaver.us-gov-east-1.amazonaws.com", + }, + endpointKey{ Region: "us-gov-west-1", }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "simspaceweaver.us-gov-west-1.amazonaws.com", + }, }, }, "sms": service{ @@ -39403,6 +41088,24 @@ }, }, endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "sso.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, + endpointKey{ + Region: "us-gov-east-1-fips", + }: endpoint{ + Hostname: "sso.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-gov-west-1", }: endpoint{ Hostname: "sso.us-gov-west-1.amazonaws.com", @@ -39410,6 +41113,24 @@ Region: "us-gov-west-1", }, }, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "sso.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, + endpointKey{ + Region: "us-gov-west-1-fips", + }: endpoint{ + Hostname: "sso.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + Deprecated: boxedTrue, + }, }, }, "states": service{ @@ -40319,6 +42040,28 @@ }: endpoint{}, }, }, + "datasync": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-iso-west-1", + }: endpoint{ + Hostname: "datasync-fips.us-iso-west-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-iso-west-1", + }: endpoint{}, + endpointKey{ + Region: "us-iso-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "datasync-fips.us-iso-west-1.c2s.ic.gov", + }, + }, + }, "directconnect": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -40441,6 +42184,9 @@ endpointKey{ Region: "us-iso-east-1", }: endpoint{}, + endpointKey{ + Region: "us-iso-west-1", + }: endpoint{}, }, }, "ec2": service{ @@ -40833,21 +42579,135 @@ "rds": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "rds-fips.us-iso-east-1", + }: endpoint{ + Hostname: "rds-fips.us-iso-east-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds-fips.us-iso-west-1", + }: endpoint{ + Hostname: "rds-fips.us-iso-west-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds.us-iso-east-1", + }: endpoint{ + CredentialScope: credentialScope{ + Region: "us-iso-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds.us-iso-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "rds-fips.us-iso-east-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds.us-iso-west-1", + }: endpoint{ + CredentialScope: credentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds.us-iso-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "rds-fips.us-iso-west-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-iso-east-1", }: endpoint{}, endpointKey{ + Region: "us-iso-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "rds-fips.us-iso-east-1.c2s.ic.gov", + }, + endpointKey{ + Region: "us-iso-east-1-fips", + }: endpoint{ + Hostname: "rds-fips.us-iso-east-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-iso-west-1", }: endpoint{}, + endpointKey{ + Region: "us-iso-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "rds-fips.us-iso-west-1.c2s.ic.gov", + }, + endpointKey{ + Region: "us-iso-west-1-fips", + }: endpoint{ + Hostname: "rds-fips.us-iso-west-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: boxedTrue, + }, }, }, "redshift": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "fips-us-iso-east-1", + }: endpoint{ + Hostname: "redshift-fips.us-iso-east-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-iso-west-1", + }: endpoint{ + Hostname: "redshift-fips.us-iso-west-1.c2s.ic.gov", + CredentialScope: credentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-iso-east-1", }: endpoint{}, endpointKey{ + Region: "us-iso-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "redshift-fips.us-iso-east-1.c2s.ic.gov", + }, + endpointKey{ Region: "us-iso-west-1", }: endpoint{}, + endpointKey{ + Region: "us-iso-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "redshift-fips.us-iso-west-1.c2s.ic.gov", + }, }, }, "resource-groups": service{ @@ -41132,6 +42992,13 @@ }, }, }, + "api.sagemaker": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-isob-east-1", + }: endpoint{}, + }, + }, "appconfig": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -41170,6 +43037,13 @@ }: endpoint{}, }, }, + "cloudcontrolapi": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-isob-east-1", + }: endpoint{}, + }, + }, "cloudformation": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -41554,15 +43428,72 @@ "rds": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "rds-fips.us-isob-east-1", + }: endpoint{ + Hostname: "rds-fips.us-isob-east-1.sc2s.sgov.gov", + CredentialScope: credentialScope{ + Region: "us-isob-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds.us-isob-east-1", + }: endpoint{ + CredentialScope: credentialScope{ + Region: "us-isob-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "rds.us-isob-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "rds-fips.us-isob-east-1.sc2s.sgov.gov", + CredentialScope: credentialScope{ + Region: "us-isob-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-isob-east-1", }: endpoint{}, + endpointKey{ + Region: "us-isob-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "rds-fips.us-isob-east-1.sc2s.sgov.gov", + }, + endpointKey{ + Region: "us-isob-east-1-fips", + }: endpoint{ + Hostname: "rds-fips.us-isob-east-1.sc2s.sgov.gov", + CredentialScope: credentialScope{ + Region: "us-isob-east-1", + }, + Deprecated: boxedTrue, + }, }, }, "redshift": service{ Endpoints: serviceEndpoints{ endpointKey{ + Region: "fips-us-isob-east-1", + }: endpoint{ + Hostname: "redshift-fips.us-isob-east-1.sc2s.sgov.gov", + CredentialScope: credentialScope{ + Region: "us-isob-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ Region: "us-isob-east-1", }: endpoint{}, + endpointKey{ + Region: "us-isob-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "redshift-fips.us-isob-east-1.sc2s.sgov.gov", + }, }, }, "resource-groups": service{ @@ -41590,6 +43521,13 @@ Endpoints: serviceEndpoints{ endpointKey{ Region: "us-isob-east-1", + }: endpoint{}, + }, + }, + "runtime.sagemaker": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-isob-east-1", }: endpoint{}, }, }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/session/env_config.go golang-github-aws-aws-sdk-go-1.48.14/aws/session/env_config.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/session/env_config.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/session/env_config.go 2023-12-06 19:28:18.000000000 +0000 @@ -171,6 +171,12 @@ // AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE=IPv6 EC2IMDSEndpointMode endpoints.EC2IMDSEndpointModeState + // Specifies that IMDS clients should not fallback to IMDSv1 if token + // requests fail. + // + // AWS_EC2_METADATA_V1_DISABLED=true + EC2IMDSv1Disabled *bool + // Specifies that SDK clients must resolve a dual-stack endpoint for // services. // @@ -251,6 +257,9 @@ ec2IMDSEndpointModeEnvKey = []string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE", } + ec2MetadataV1DisabledEnvKey = []string{ + "AWS_EC2_METADATA_V1_DISABLED", + } useCABundleKey = []string{ "AWS_CA_BUNDLE", } @@ -393,6 +402,7 @@ if err := setEC2IMDSEndpointMode(&cfg.EC2IMDSEndpointMode, ec2IMDSEndpointModeEnvKey); err != nil { return envConfig{}, err } + setBoolPtrFromEnvVal(&cfg.EC2IMDSv1Disabled, ec2MetadataV1DisabledEnvKey) if err := setUseDualStackEndpointFromEnvVal(&cfg.UseDualStackEndpoint, awsUseDualStackEndpoint); err != nil { return cfg, err @@ -413,6 +423,24 @@ } } } + +func setBoolPtrFromEnvVal(dst **bool, keys []string) { + for _, k := range keys { + value := os.Getenv(k) + if len(value) == 0 { + continue + } + + switch { + case strings.EqualFold(value, "false"): + *dst = new(bool) + **dst = false + case strings.EqualFold(value, "true"): + *dst = new(bool) + **dst = true + } + } +} func setEC2IMDSEndpointMode(mode *endpoints.EC2IMDSEndpointModeState, keys []string) error { for _, k := range keys { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/session/env_config_test.go golang-github-aws-aws-sdk-go-1.48.14/aws/session/env_config_test.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/session/env_config_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/session/env_config_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -9,6 +9,7 @@ "strconv" "testing" + "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/endpoints" "github.com/aws/aws-sdk-go/awstesting" @@ -467,6 +468,35 @@ }, WantErr: true, }, + 33: { + Env: map[string]string{ + "AWS_EC2_METADATA_V1_DISABLED": "fAlSe", + }, + Config: envConfig{ + SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), + SharedConfigFile: shareddefaults.SharedConfigFilename(), + EC2IMDSv1Disabled: aws.Bool(false), + }, + }, + 34: { + Env: map[string]string{ + "AWS_EC2_METADATA_V1_DISABLED": "tRuE", + }, + Config: envConfig{ + SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), + SharedConfigFile: shareddefaults.SharedConfigFilename(), + EC2IMDSv1Disabled: aws.Bool(true), + }, + }, + 35: { + Env: map[string]string{ + "AWS_EC2_METADATA_V1_DISABLED": "invalid", + }, + Config: envConfig{ + SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), + SharedConfigFile: shareddefaults.SharedConfigFilename(), + }, + }, } for i, c := range cases { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/session/session.go golang-github-aws-aws-sdk-go-1.48.14/aws/session/session.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/session/session.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/session/session.go 2023-12-06 19:28:18.000000000 +0000 @@ -779,6 +779,14 @@ cfg.EndpointResolver = wrapEC2IMDSEndpoint(cfg.EndpointResolver, ec2IMDSEndpoint, endpointMode) } + cfg.EC2MetadataEnableFallback = userCfg.EC2MetadataEnableFallback + if cfg.EC2MetadataEnableFallback == nil && envCfg.EC2IMDSv1Disabled != nil { + cfg.EC2MetadataEnableFallback = aws.Bool(!*envCfg.EC2IMDSv1Disabled) + } + if cfg.EC2MetadataEnableFallback == nil && sharedCfg.EC2IMDSv1Disabled != nil { + cfg.EC2MetadataEnableFallback = aws.Bool(!*sharedCfg.EC2IMDSv1Disabled) + } + cfg.S3UseARNRegion = userCfg.S3UseARNRegion if cfg.S3UseARNRegion == nil { cfg.S3UseARNRegion = &envCfg.S3UseARNRegion diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/session/shared_config.go golang-github-aws-aws-sdk-go-1.48.14/aws/session/shared_config.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/session/shared_config.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/session/shared_config.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,9 @@ // EC2 IMDS Endpoint ec2MetadataServiceEndpointKey = "ec2_metadata_service_endpoint" + // ECS IMDSv1 disable fallback + ec2MetadataV1DisabledKey = "ec2_metadata_v1_disabled" + // Use DualStack Endpoint Resolution useDualStackEndpoint = "use_dualstack_endpoint" @@ -179,6 +182,12 @@ // ec2_metadata_service_endpoint=http://fd00:ec2::254 EC2IMDSEndpoint string + // Specifies that IMDS clients should not fallback to IMDSv1 if token + // requests fail. + // + // ec2_metadata_v1_disabled=true + EC2IMDSv1Disabled *bool + // Specifies that SDK clients must resolve a dual-stack endpoint for // services. // @@ -389,8 +398,15 @@ updateString(&cfg.Region, section, regionKey) updateString(&cfg.CustomCABundle, section, customCABundleKey) + // we're retaining a behavioral quirk with this field that existed before + // the removal of literal parsing for (aws-sdk-go-v2/#2276): + // - if the key is missing, the config field will not be set + // - if the key is set to a non-numeric, the config field will be set to 0 if section.Has(roleDurationSecondsKey) { - d := time.Duration(section.Int(roleDurationSecondsKey)) * time.Second + var d time.Duration + if v, ok := section.Int(roleDurationSecondsKey); ok { + d = time.Duration(v) * time.Second + } cfg.AssumeRoleDuration = &d } @@ -427,6 +443,7 @@ ec2MetadataServiceEndpointModeKey, file.Filename, err) } updateString(&cfg.EC2IMDSEndpoint, section, ec2MetadataServiceEndpointKey) + updateBoolPtr(&cfg.EC2IMDSv1Disabled, section, ec2MetadataV1DisabledKey) updateUseDualStackEndpoint(&cfg.UseDualStackEndpoint, section, useDualStackEndpoint) @@ -668,7 +685,10 @@ if !section.Has(key) { return } - *dst = section.Bool(key) + + // retains pre-(aws-sdk-go-v2#2276) behavior where non-bool value would resolve to false + v, _ := section.Bool(key) + *dst = v } // updateBoolPtr will only update the dst with the value in the section key, @@ -677,8 +697,11 @@ if !section.Has(key) { return } + + // retains pre-(aws-sdk-go-v2#2276) behavior where non-bool value would resolve to false + v, _ := section.Bool(key) *dst = new(bool) - **dst = section.Bool(key) + **dst = v } // SharedConfigLoadError is an error for the shared config file failed to load. @@ -805,7 +828,8 @@ return } - if section.Bool(key) { + // retains pre-(aws-sdk-go-v2/#2276) behavior where non-bool value would resolve to false + if v, _ := section.Bool(key); v { *dst = endpoints.DualStackEndpointStateEnabled } else { *dst = endpoints.DualStackEndpointStateDisabled @@ -821,7 +845,8 @@ return } - if section.Bool(key) { + // retains pre-(aws-sdk-go-v2/#2276) behavior where non-bool value would resolve to false + if v, _ := section.Bool(key); v { *dst = endpoints.FIPSEndpointStateEnabled } else { *dst = endpoints.FIPSEndpointStateDisabled diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/session/shared_config_test.go golang-github-aws-aws-sdk-go-1.48.14/aws/session/shared_config_test.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/session/shared_config_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/session/shared_config_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -11,6 +11,7 @@ "strings" "testing" + "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/endpoints" "github.com/aws/aws-sdk-go/internal/ini" @@ -411,6 +412,30 @@ Profile: "sso-session-not-exist", Err: fmt.Errorf("failed to find SSO session section, sso-session-lost"), }, + { + Filenames: []string{testConfigFilename}, + Profile: "ec2-metadata-v1-disabled-false", + Expected: sharedConfig{ + Profile: "ec2-metadata-v1-disabled-false", + EC2IMDSv1Disabled: aws.Bool(false), + }, + }, + { + Filenames: []string{testConfigFilename}, + Profile: "ec2-metadata-v1-disabled-true", + Expected: sharedConfig{ + Profile: "ec2-metadata-v1-disabled-true", + EC2IMDSv1Disabled: aws.Bool(true), + }, + }, + { + Filenames: []string{testConfigFilename}, + Profile: "ec2-metadata-v1-disabled-invalid", + Expected: sharedConfig{ + Profile: "ec2-metadata-v1-disabled-invalid", + EC2IMDSv1Disabled: aws.Bool(false), + }, + }, } for i, c := range cases { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/session/testdata/shared_config golang-github-aws-aws-sdk-go-1.48.14/aws/session/testdata/shared_config --- golang-github-aws-aws-sdk-go-1.45.14/aws/session/testdata/shared_config 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/session/testdata/shared_config 2023-12-06 19:28:18.000000000 +0000 @@ -203,4 +203,13 @@ region = us-east-1 sso_session = sso-session-lost sso_account_id = 123456789012 -sso_role_name = testRole \ No newline at end of file +sso_role_name = testRole + +[profile ec2-metadata-v1-disabled-false] +ec2_metadata_v1_disabled=False + +[profile ec2-metadata-v1-disabled-true] +ec2_metadata_v1_disabled=True + +[profile ec2-metadata-v1-disabled-invalid] +ec2_metadata_v1_disabled=invalid diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/signer/v4/v4.go golang-github-aws-aws-sdk-go-1.48.14/aws/signer/v4/v4.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/signer/v4/v4.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/signer/v4/v4.go 2023-12-06 19:28:18.000000000 +0000 @@ -125,6 +125,7 @@ "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Algorithm": struct{}{}, "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Key": struct{}{}, "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Key-Md5": struct{}{}, + "X-Amz-Expected-Bucket-Owner": struct{}{}, "X-Amz-Grant-Full-control": struct{}{}, "X-Amz-Grant-Read": struct{}{}, "X-Amz-Grant-Read-Acp": struct{}{}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/aws/version.go golang-github-aws-aws-sdk-go-1.48.14/aws/version.go --- golang-github-aws-aws-sdk-go-1.45.14/aws/version.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/aws/version.go 2023-12-06 19:28:18.000000000 +0000 @@ -5,4 +5,4 @@ const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.45.14" +const SDKVersion = "1.48.14" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/debian/changelog golang-github-aws-aws-sdk-go-1.48.14/debian/changelog --- golang-github-aws-aws-sdk-go-1.45.14/debian/changelog 2023-10-23 09:29:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/debian/changelog 2024-01-01 18:16:07.000000000 +0000 @@ -1,8 +1,16 @@ -golang-github-aws-aws-sdk-go (1.45.14-1~bpo22.04+1) jammy; urgency=medium +golang-github-aws-aws-sdk-go (1.48.14-1~bpo22.04+1) jammy; urgency=medium * Rebuild for jammy. - -- Mateusz Łukasik Mon, 23 Oct 2023 11:29:00 +0200 + -- Mateusz Łukasik Mon, 01 Jan 2024 19:16:07 +0100 + +golang-github-aws-aws-sdk-go (1.48.14-1) unstable; urgency=medium + + * New upstream version 1.48.14 + * Update versioned dependencies as per go.mod. In particular, + golang-github-pkg-errors-dev is no longer needed since 2023-10-31 + + -- Anthony Fok Fri, 08 Dec 2023 14:25:29 -0700 golang-github-aws-aws-sdk-go (1.45.14-1) unstable; urgency=medium diff -Nru golang-github-aws-aws-sdk-go-1.45.14/debian/control golang-github-aws-aws-sdk-go-1.48.14/debian/control --- golang-github-aws-aws-sdk-go-1.45.14/debian/control 2023-10-09 15:43:30.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/debian/control 2023-12-08 21:19:25.000000000 +0000 @@ -9,10 +9,9 @@ Rules-Requires-Root: no Build-Depends: debhelper-compat (= 13), dh-sequence-golang, - golang-any, + golang-any (>= 2:1.19~), golang-github-jmespath-go-jmespath-dev (>= 0.4.0), - golang-github-pkg-errors-dev (>= 0.9.1), - golang-golang-x-net-dev (>= 1:0.1.0) + golang-golang-x-net-dev (>= 1:0.17.0) Testsuite: autopkgtest-pkg-go Standards-Version: 4.6.2 Vcs-Browser: https://salsa.debian.org/go-team/packages/golang-github-aws-aws-sdk-go @@ -24,8 +23,7 @@ Architecture: all Multi-Arch: foreign Depends: golang-github-jmespath-go-jmespath-dev (>= 0.4.0), - golang-github-pkg-errors-dev (>= 0.9.1), - golang-golang-x-net-dev (>= 1:0.1.0), + golang-golang-x-net-dev (>= 1:0.17.0), ${misc:Depends} Description: AWS SDK for the Go programming language Official Amazon Web Services (AWS) SDK for the Go programming language. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/example/aws/credentials/plugincreds/plugin/plugin.go golang-github-aws-aws-sdk-go-1.48.14/example/aws/credentials/plugincreds/plugin/plugin.go --- golang-github-aws-aws-sdk-go-1.45.14/example/aws/credentials/plugincreds/plugin/plugin.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/example/aws/credentials/plugincreds/plugin/plugin.go 2023-12-06 19:28:18.000000000 +0000 @@ -5,9 +5,8 @@ import ( "encoding/json" + "fmt" "os" - - "github.com/pkg/errors" ) // Example plugin that will retrieve credentials from a JSON file that the @@ -41,7 +40,7 @@ func (p *provider) Retrieve() (key, secret, token string, err error) { f, err := os.Open(p.Filename) if err != nil { - return "", "", "", errors.Wrapf(err, "failed to open credentials file, %q", p.Filename) + return "", "", "", fmt.Errorf("failed to open credentials file, %q: %w", p.Filename, err) } decoder := json.NewDecoder(f) @@ -50,7 +49,7 @@ }{} if err := decoder.Decode(&creds); err != nil { - return "", "", "", errors.Wrap(err, "failed to decode credentials file") + return "", "", "", fmt.Errorf("failed to decode credentials file: %w", err) } p.loaded = true diff -Nru golang-github-aws-aws-sdk-go-1.45.14/go.mod golang-github-aws-aws-sdk-go-1.48.14/go.mod --- golang-github-aws-aws-sdk-go-1.45.14/go.mod 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/go.mod 2023-12-06 19:28:18.000000000 +0000 @@ -1,9 +1,10 @@ module github.com/aws/aws-sdk-go +go 1.19 + require ( github.com/jmespath/go-jmespath v0.4.0 - github.com/pkg/errors v0.9.1 - golang.org/x/net v0.1.0 + golang.org/x/net v0.17.0 ) -go 1.11 +require golang.org/x/text v0.13.0 // indirect diff -Nru golang-github-aws-aws-sdk-go-1.45.14/go.sum golang-github-aws-aws-sdk-go-1.48.14/go.sum --- golang-github-aws-aws-sdk-go-1.45.14/go.sum 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/go.sum 2023-12-06 19:28:18.000000000 +0000 @@ -4,41 +4,13 @@ github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.1.0 h1:hZ/3BUoy5aId7sCpA/Tc5lt8DkFgdVS2onTpJsZ/fl0= -golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.4.0 h1:BrVqGRd7+k1DiOgtnFvAkoQEWQvBc25ouMJM6429SFg= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= +golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/ini_lexer_test.go golang-github-aws-aws-sdk-go-1.48.14/internal/ini/ini_lexer_test.go --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/ini_lexer_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/ini_lexer_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -11,8 +11,6 @@ ) func TestTokenize(t *testing.T) { - numberToken := newToken(TokenLit, []rune("123"), IntegerType) - numberToken.base = 10 cases := []struct { r io.Reader expectedTokens []Token @@ -25,7 +23,7 @@ newToken(TokenWS, []rune(" "), NoneType), newToken(TokenOp, []rune("="), NoneType), newToken(TokenWS, []rune(" "), NoneType), - numberToken, + newToken(TokenLit, []rune("123"), StringType), }, }, { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/literal_tokens.go golang-github-aws-aws-sdk-go-1.48.14/internal/ini/literal_tokens.go --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/literal_tokens.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/literal_tokens.go 2023-12-06 19:28:18.000000000 +0000 @@ -154,11 +154,11 @@ // ValueType enums const ( NoneType = ValueType(iota) - DecimalType - IntegerType + DecimalType // deprecated + IntegerType // deprecated StringType QuotedStringType - BoolType + BoolType // deprecated ) // Value is a union container @@ -166,9 +166,9 @@ Type ValueType raw []rune - integer int64 - decimal float64 - boolean bool + integer int64 // deprecated + decimal float64 // deprecated + boolean bool // deprecated str string } @@ -253,24 +253,6 @@ } token = newToken(TokenLit, b[:n], QuotedStringType) - } else if isNumberValue(b) { - var base int - base, n, err = getNumericalValue(b) - if err != nil { - return token, 0, err - } - - value := b[:n] - vType := IntegerType - if contains(value, '.') || hasExponent(value) { - vType = DecimalType - } - token = newToken(TokenLit, value, vType) - token.base = base - } else if isBoolValue(b) { - n, err = getBoolValue(b) - - token = newToken(TokenLit, b[:n], BoolType) } else { n, err = getValue(b) token = newToken(TokenLit, b[:n], StringType) @@ -280,18 +262,33 @@ } // IntValue returns an integer value -func (v Value) IntValue() int64 { - return v.integer +func (v Value) IntValue() (int64, bool) { + i, err := strconv.ParseInt(string(v.raw), 0, 64) + if err != nil { + return 0, false + } + return i, true } // FloatValue returns a float value -func (v Value) FloatValue() float64 { - return v.decimal +func (v Value) FloatValue() (float64, bool) { + f, err := strconv.ParseFloat(string(v.raw), 64) + if err != nil { + return 0, false + } + return f, true } // BoolValue returns a bool value -func (v Value) BoolValue() bool { - return v.boolean +func (v Value) BoolValue() (bool, bool) { + // we don't use ParseBool as it recognizes more than what we've + // historically supported + if isCaselessLitValue(runesTrue, v.raw) { + return true, true + } else if isCaselessLitValue(runesFalse, v.raw) { + return false, true + } + return false, false } func isTrimmable(r rune) bool { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/literal_tokens_test.go golang-github-aws-aws-sdk-go-1.48.14/internal/ini/literal_tokens_test.go --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/literal_tokens_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/literal_tokens_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -95,7 +95,7 @@ expectedRead: 3, expectedToken: newToken(TokenLit, []rune("123"), - IntegerType, + StringType, ), }, { @@ -104,7 +104,7 @@ expectedRead: 7, expectedToken: newToken(TokenLit, []rune("123.456"), - DecimalType, + StringType, ), }, { @@ -113,7 +113,7 @@ expectedRead: 3, expectedToken: newToken(TokenLit, []rune("123"), - IntegerType, + StringType, ), }, { @@ -122,7 +122,7 @@ expectedRead: 3, expectedToken: newToken(TokenLit, []rune("123"), - IntegerType, + StringType, ), }, { @@ -149,7 +149,7 @@ expectedRead: 4, expectedToken: newToken(TokenLit, []rune("true"), - BoolType, + StringType, ), }, { @@ -158,21 +158,21 @@ expectedRead: 5, expectedToken: newToken(TokenLit, []rune("false"), - BoolType, + StringType, ), }, { - name: "utf8 whitespace", - b: []rune("0 0"), - expectedRead: 1, + name: "utf8 whitespace", + b: []rune("0 0"), + expectedRead: 3, expectedToken: newToken(TokenLit, []rune("0"), - IntegerType, + StringType, ), }, { - name: "utf8 whitespace expr", - b: []rune("0=0 0"), + name: "utf8 whitespace expr", + b: []rune("0=0 0"), expectedRead: 1, expectedToken: newToken(TokenLit, []rune("0"), diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/array_profile_expected golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/array_profile_expected --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/array_profile_expected 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/array_profile_expected 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "foo": { - "baz": 123, + "baz": "123", "zed": "zee" } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/base_numbers_profile golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/base_numbers_profile --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/base_numbers_profile 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/base_numbers_profile 2023-12-06 19:28:18.000000000 +0000 @@ -4,3 +4,4 @@ ten=12 hex=0xAFB1 hex2=0xafb1 +color=970b00 diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/base_numbers_profile_expected golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/base_numbers_profile_expected --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/base_numbers_profile_expected 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/base_numbers_profile_expected 2023-12-06 19:28:18.000000000 +0000 @@ -1,9 +1,10 @@ { "default": { - "binary": 9, - "octal": 71, - "ten": 12, - "hex": 44977, - "hex2": 44977 + "binary": "0b1001", + "octal": "0o107", + "ten": "12", + "hex": "0xAFB1", + "hex2": "0xafb1", + "color": "970b00" } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/commented_profile golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/commented_profile --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/commented_profile 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/commented_profile 2023-12-06 19:28:18.000000000 +0000 @@ -2,3 +2,4 @@ [ default ] region = "foo-region" # another comment output = json # comment again +bar = 123 ; comment with semi-colon diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/commented_profile_expected golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/commented_profile_expected --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/commented_profile_expected 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/commented_profile_expected 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,7 @@ { "default": { "region": "foo-region", - "output": "json" + "output": "json", + "bar": "123" } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/exponent_profile_expected golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/exponent_profile_expected --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/exponent_profile_expected 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/exponent_profile_expected 2023-12-06 19:28:18.000000000 +0000 @@ -1,7 +1,7 @@ { "default": { - "exponent": 10000, - "exponent_2": 0.0001, + "exponent": "1e4", + "exponent_2": "1E-4", "exponent_should_be_string": "0x1ob" } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/nested_fields_expected golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/nested_fields_expected --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/nested_fields_expected 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/nested_fields_expected 2023-12-06 19:28:18.000000000 +0000 @@ -12,4 +12,4 @@ "aws_secret_access_key": "valid", "aws_session_token": "valid" } -} +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/number_lhs_expr_expected golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/number_lhs_expr_expected --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/testdata/valid/number_lhs_expr_expected 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/testdata/valid/number_lhs_expr_expected 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,5 @@ { "default": { - "123": 456.456 + "123": "456.456" } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/visitor.go golang-github-aws-aws-sdk-go-1.48.14/internal/ini/visitor.go --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/visitor.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/visitor.go 2023-12-06 19:28:18.000000000 +0000 @@ -145,17 +145,17 @@ } // Bool returns a bool value at k -func (t Section) Bool(k string) bool { +func (t Section) Bool(k string) (bool, bool) { return t.values[k].BoolValue() } // Int returns an integer value at k -func (t Section) Int(k string) int64 { +func (t Section) Int(k string) (int64, bool) { return t.values[k].IntValue() } // Float64 returns a float value at k -func (t Section) Float64(k string) float64 { +func (t Section) Float64(k string) (float64, bool) { return t.values[k].FloatValue() } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/internal/ini/walker_test.go golang-github-aws-aws-sdk-go-1.48.14/internal/ini/walker_test.go --- golang-github-aws-aws-sdk-go-1.45.14/internal/ini/walker_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/internal/ini/walker_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -71,24 +71,6 @@ if e != a { t.Errorf("%s: expected %v, but received %v for profile %v", path, e, a, profile) } - case int: - a := p.Int(k) - if int64(e) != a { - t.Errorf("%s: expected %v, but received %v", path, e, a) - } - case float64: - v := p.values[k] - if v.Type == IntegerType { - a := p.Int(k) - if int64(e) != a { - t.Errorf("%s: expected %v, but received %v", path, e, a) - } - } else { - a := p.Float64(k) - if e != a { - t.Errorf("%s: expected %v, but received %v", path, e, a) - } - } default: t.Errorf("unexpected type: %T", e) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -46,6 +46,42 @@ ], "idempotent":true }, + "CheckAccessNotGranted":{ + "name":"CheckAccessNotGranted", + "http":{ + "method":"POST", + "requestUri":"/policy/check-access-not-granted", + "responseCode":200 + }, + "input":{"shape":"CheckAccessNotGrantedRequest"}, + "output":{"shape":"CheckAccessNotGrantedResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidParameterException"}, + {"shape":"UnprocessableEntityException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "CheckNoNewAccess":{ + "name":"CheckNoNewAccess", + "http":{ + "method":"POST", + "requestUri":"/policy/check-no-new-access", + "responseCode":200 + }, + "input":{"shape":"CheckNoNewAccessRequest"}, + "output":{"shape":"CheckNoNewAccessResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidParameterException"}, + {"shape":"UnprocessableEntityException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "CreateAccessPreview":{ "name":"CreateAccessPreview", "http":{ @@ -223,6 +259,23 @@ {"shape":"AccessDeniedException"} ] }, + "GetFindingV2":{ + "name":"GetFindingV2", + "http":{ + "method":"GET", + "requestUri":"/findingv2/{id}", + "responseCode":200 + }, + "input":{"shape":"GetFindingV2Request"}, + "output":{"shape":"GetFindingV2Response"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetGeneratedPolicy":{ "name":"GetGeneratedPolicy", "http":{ @@ -340,6 +393,23 @@ {"shape":"AccessDeniedException"} ] }, + "ListFindingsV2":{ + "name":"ListFindingsV2", + "http":{ + "method":"POST", + "requestUri":"/findingv2", + "responseCode":200 + }, + "input":{"shape":"ListFindingsV2Request"}, + "output":{"shape":"ListFindingsV2Response"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListPolicyGenerations":{ "name":"ListPolicyGenerations", "http":{ @@ -496,6 +566,30 @@ } }, "shapes":{ + "Access":{ + "type":"structure", + "required":["actions"], + "members":{ + "actions":{"shape":"AccessActionsList"} + } + }, + "AccessActionsList":{ + "type":"list", + "member":{"shape":"Action"}, + "max":100, + "min":0 + }, + "AccessCheckPolicyDocument":{ + "type":"string", + "sensitive":true + }, + "AccessCheckPolicyType":{ + "type":"string", + "enum":[ + "IDENTITY_POLICY", + "RESOURCE_POLICY" + ] + }, "AccessDeniedException":{ "type":"structure", "required":["message"], @@ -630,6 +724,7 @@ ] }, "AclUri":{"type":"string"}, + "Action":{"type":"string"}, "ActionList":{ "type":"list", "member":{"shape":"String"} @@ -680,6 +775,13 @@ "type":"string", "pattern":"[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:analyzer/.{1,255}" }, + "AnalyzerConfiguration":{ + "type":"structure", + "members":{ + "unusedAccess":{"shape":"UnusedAccessConfiguration"} + }, + "union":true + }, "AnalyzerStatus":{ "type":"string", "enum":[ @@ -707,7 +809,8 @@ "lastResourceAnalyzedAt":{"shape":"Timestamp"}, "tags":{"shape":"TagsMap"}, "status":{"shape":"AnalyzerStatus"}, - "statusReason":{"shape":"StatusReason"} + "statusReason":{"shape":"StatusReason"}, + "configuration":{"shape":"AnalyzerConfiguration"} } }, "AnalyzersList":{ @@ -768,6 +871,68 @@ "members":{ } }, + "CheckAccessNotGrantedRequest":{ + "type":"structure", + "required":[ + "policyDocument", + "access", + "policyType" + ], + "members":{ + "policyDocument":{"shape":"AccessCheckPolicyDocument"}, + "access":{"shape":"CheckAccessNotGrantedRequestAccessList"}, + "policyType":{"shape":"AccessCheckPolicyType"} + } + }, + "CheckAccessNotGrantedRequestAccessList":{ + "type":"list", + "member":{"shape":"Access"}, + "max":1, + "min":0 + }, + "CheckAccessNotGrantedResponse":{ + "type":"structure", + "members":{ + "result":{"shape":"CheckAccessNotGrantedResult"}, + "message":{"shape":"String"}, + "reasons":{"shape":"ReasonSummaryList"} + } + }, + "CheckAccessNotGrantedResult":{ + "type":"string", + "enum":[ + "PASS", + "FAIL" + ] + }, + "CheckNoNewAccessRequest":{ + "type":"structure", + "required":[ + "newPolicyDocument", + "existingPolicyDocument", + "policyType" + ], + "members":{ + "newPolicyDocument":{"shape":"AccessCheckPolicyDocument"}, + "existingPolicyDocument":{"shape":"AccessCheckPolicyDocument"}, + "policyType":{"shape":"AccessCheckPolicyType"} + } + }, + "CheckNoNewAccessResponse":{ + "type":"structure", + "members":{ + "result":{"shape":"CheckNoNewAccessResult"}, + "message":{"shape":"String"}, + "reasons":{"shape":"ReasonSummaryList"} + } + }, + "CheckNoNewAccessResult":{ + "type":"string", + "enum":[ + "PASS", + "FAIL" + ] + }, "CloudTrailArn":{ "type":"string", "pattern":"arn:[^:]*:cloudtrail:[^:]*:[^:]*:trail/.{1,576}" @@ -817,7 +982,8 @@ "secretsManagerSecret":{"shape":"SecretsManagerSecretConfiguration"}, "s3Bucket":{"shape":"S3BucketConfiguration"}, "snsTopic":{"shape":"SnsTopicConfiguration"}, - "sqsQueue":{"shape":"SqsQueueConfiguration"} + "sqsQueue":{"shape":"SqsQueueConfiguration"}, + "s3ExpressDirectoryBucket":{"shape":"S3ExpressDirectoryBucketConfiguration"} }, "union":true }, @@ -881,7 +1047,8 @@ "clientToken":{ "shape":"String", "idempotencyToken":true - } + }, + "configuration":{"shape":"AnalyzerConfiguration"} } }, "CreateAnalyzerResponse":{ @@ -995,6 +1162,17 @@ } }, "EfsFileSystemPolicy":{"type":"string"}, + "ExternalAccessDetails":{ + "type":"structure", + "required":["condition"], + "members":{ + "action":{"shape":"ActionList"}, + "condition":{"shape":"ConditionKeyMap"}, + "isPublic":{"shape":"Boolean"}, + "principal":{"shape":"PrincipalMap"}, + "sources":{"shape":"FindingSourceList"} + } + }, "FilterCriteriaMap":{ "type":"map", "key":{"shape":"String"}, @@ -1037,6 +1215,21 @@ "UNCHANGED" ] }, + "FindingDetails":{ + "type":"structure", + "members":{ + "externalAccessDetails":{"shape":"ExternalAccessDetails"}, + "unusedPermissionDetails":{"shape":"UnusedPermissionDetails"}, + "unusedIamUserAccessKeyDetails":{"shape":"UnusedIamUserAccessKeyDetails"}, + "unusedIamRoleDetails":{"shape":"UnusedIamRoleDetails"}, + "unusedIamUserPasswordDetails":{"shape":"UnusedIamUserPasswordDetails"} + }, + "union":true + }, + "FindingDetailsList":{ + "type":"list", + "member":{"shape":"FindingDetails"} + }, "FindingId":{"type":"string"}, "FindingIdList":{ "type":"list", @@ -1114,10 +1307,48 @@ "sources":{"shape":"FindingSourceList"} } }, + "FindingSummaryV2":{ + "type":"structure", + "required":[ + "analyzedAt", + "createdAt", + "id", + "resourceType", + "resourceOwnerAccount", + "status", + "updatedAt" + ], + "members":{ + "analyzedAt":{"shape":"Timestamp"}, + "createdAt":{"shape":"Timestamp"}, + "error":{"shape":"String"}, + "id":{"shape":"FindingId"}, + "resource":{"shape":"String"}, + "resourceType":{"shape":"ResourceType"}, + "resourceOwnerAccount":{"shape":"String"}, + "status":{"shape":"FindingStatus"}, + "updatedAt":{"shape":"Timestamp"}, + "findingType":{"shape":"FindingType"} + } + }, + "FindingType":{ + "type":"string", + "enum":[ + "ExternalAccess", + "UnusedIAMRole", + "UnusedIAMUserAccessKey", + "UnusedIAMUserPassword", + "UnusedPermission" + ] + }, "FindingsList":{ "type":"list", "member":{"shape":"FindingSummary"} }, + "FindingsListV2":{ + "type":"list", + "member":{"shape":"FindingSummaryV2"} + }, "GeneratedPolicy":{ "type":"structure", "required":["policy"], @@ -1266,6 +1497,62 @@ "finding":{"shape":"Finding"} } }, + "GetFindingV2Request":{ + "type":"structure", + "required":[ + "analyzerArn", + "id" + ], + "members":{ + "analyzerArn":{ + "shape":"AnalyzerArn", + "location":"querystring", + "locationName":"analyzerArn" + }, + "id":{ + "shape":"FindingId", + "location":"uri", + "locationName":"id" + }, + "maxResults":{ + "shape":"Integer", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"Token", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "GetFindingV2Response":{ + "type":"structure", + "required":[ + "analyzedAt", + "createdAt", + "id", + "resourceType", + "resourceOwnerAccount", + "status", + "updatedAt", + "findingDetails" + ], + "members":{ + "analyzedAt":{"shape":"Timestamp"}, + "createdAt":{"shape":"Timestamp"}, + "error":{"shape":"String"}, + "id":{"shape":"FindingId"}, + "nextToken":{"shape":"Token"}, + "resource":{"shape":"String"}, + "resourceType":{"shape":"ResourceType"}, + "resourceOwnerAccount":{"shape":"String"}, + "status":{"shape":"FindingStatus"}, + "updatedAt":{"shape":"Timestamp"}, + "findingDetails":{"shape":"FindingDetailsList"}, + "findingType":{"shape":"FindingType"} + } + }, "GetGeneratedPolicyRequest":{ "type":"structure", "required":["jobId"], @@ -1346,6 +1633,18 @@ "members":{ } }, + "InvalidParameterException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "IssueCode":{"type":"string"}, "IssuingAccount":{"type":"string"}, "JobDetails":{ @@ -1612,6 +1911,25 @@ "nextToken":{"shape":"Token"} } }, + "ListFindingsV2Request":{ + "type":"structure", + "required":["analyzerArn"], + "members":{ + "analyzerArn":{"shape":"AnalyzerArn"}, + "filter":{"shape":"FilterCriteriaMap"}, + "maxResults":{"shape":"Integer"}, + "nextToken":{"shape":"Token"}, + "sort":{"shape":"SortCriteria"} + } + }, + "ListFindingsV2Response":{ + "type":"structure", + "required":["findings"], + "members":{ + "findings":{"shape":"FindingsListV2"}, + "nextToken":{"shape":"Token"} + } + }, "ListPolicyGenerationsRequest":{ "type":"structure", "members":{ @@ -1847,6 +2165,18 @@ "SERVICE_LINKED_ROLE_CREATION_FAILED" ] }, + "ReasonSummary":{ + "type":"structure", + "members":{ + "description":{"shape":"String"}, + "statementIndex":{"shape":"Integer"}, + "statementId":{"shape":"String"} + } + }, + "ReasonSummaryList":{ + "type":"list", + "member":{"shape":"ReasonSummary"} + }, "RegionList":{ "type":"list", "member":{"shape":"String"} @@ -1888,7 +2218,8 @@ "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", - "AWS::SNS::Topic" + "AWS::SNS::Topic", + "AWS::S3Express::DirectoryBucket" ] }, "RetiringPrincipal":{"type":"string"}, @@ -1934,6 +2265,13 @@ } }, "S3BucketPolicy":{"type":"string"}, + "S3ExpressDirectoryBucketConfiguration":{ + "type":"structure", + "members":{ + "bucketPolicy":{"shape":"S3ExpressDirectoryBucketPolicy"} + } + }, + "S3ExpressDirectoryBucketPolicy":{"type":"string"}, "S3PublicAccessBlockConfiguration":{ "type":"structure", "required":[ @@ -2144,9 +2482,24 @@ "type":"string", "enum":[ "ACCOUNT", - "ORGANIZATION" + "ORGANIZATION", + "ACCOUNT_UNUSED_ACCESS", + "ORGANIZATION_UNUSED_ACCESS" ] }, + "UnprocessableEntityException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":422, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":false} + }, "UntagResourceRequest":{ "type":"structure", "required":[ @@ -2171,6 +2524,53 @@ "members":{ } }, + "UnusedAccessConfiguration":{ + "type":"structure", + "members":{ + "unusedAccessAge":{"shape":"Integer"} + } + }, + "UnusedAction":{ + "type":"structure", + "required":["action"], + "members":{ + "action":{"shape":"String"}, + "lastAccessed":{"shape":"Timestamp"} + } + }, + "UnusedActionList":{ + "type":"list", + "member":{"shape":"UnusedAction"} + }, + "UnusedIamRoleDetails":{ + "type":"structure", + "members":{ + "lastAccessed":{"shape":"Timestamp"} + } + }, + "UnusedIamUserAccessKeyDetails":{ + "type":"structure", + "required":["accessKeyId"], + "members":{ + "accessKeyId":{"shape":"String"}, + "lastAccessed":{"shape":"Timestamp"} + } + }, + "UnusedIamUserPasswordDetails":{ + "type":"structure", + "members":{ + "lastAccessed":{"shape":"Timestamp"} + } + }, + "UnusedPermissionDetails":{ + "type":"structure", + "required":["serviceNamespace"], + "members":{ + "actions":{"shape":"UnusedActionList"}, + "serviceNamespace":{"shape":"String"}, + "lastAccessed":{"shape":"Timestamp"} + } + }, "UpdateArchiveRuleRequest":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,9 +1,11 @@ { "version": "2.0", - "service": "

Identity and Access Management Access Analyzer helps identify potential resource-access risks by enabling you to identify any policies that grant access to an external principal. It does this by using logic-based reasoning to analyze resource-based policies in your Amazon Web Services environment. An external principal can be another Amazon Web Services account, a root user, an IAM user or role, a federated user, an Amazon Web Services service, or an anonymous user. You can also use IAM Access Analyzer to preview and validate public and cross-account access to your resources before deploying permissions changes. This guide describes the Identity and Access Management Access Analyzer operations that you can call programmatically. For general information about IAM Access Analyzer, see Identity and Access Management Access Analyzer in the IAM User Guide.

To start using IAM Access Analyzer, you first need to create an analyzer.

", + "service": "

Identity and Access Management Access Analyzer helps you to set, verify, and refine your IAM policies by providing a suite of capabilities. Its features include findings for external and unused access, basic and custom policy checks for validating policies, and policy generation to generate fine-grained policies. To start using IAM Access Analyzer to identify external or unused access, you first need to create an analyzer.

External access analyzers help identify potential risks of accessing resources by enabling you to identify any resource policies that grant access to an external principal. It does this by using logic-based reasoning to analyze resource-based policies in your Amazon Web Services environment. An external principal can be another Amazon Web Services account, a root user, an IAM user or role, a federated user, an Amazon Web Services service, or an anonymous user. You can also use IAM Access Analyzer to preview public and cross-account access to your resources before deploying permissions changes.

Unused access analyzers help identify potential identity access risks by enabling you to identify unused IAM roles, unused access keys, unused console passwords, and IAM principals with unused service and action-level permissions.

Beyond findings, IAM Access Analyzer provides basic and custom policy checks to validate IAM policies before deploying permissions changes. You can use policy generation to refine permissions by attaching a policy generated using access activity logged in CloudTrail logs.

This guide describes the IAM Access Analyzer operations that you can call programmatically. For general information about IAM Access Analyzer, see Identity and Access Management Access Analyzer in the IAM User Guide.

", "operations": { "ApplyArchiveRule": "

Retroactively applies the archive rule to existing findings that meet the archive rule criteria.

", "CancelPolicyGeneration": "

Cancels the requested policy generation.

", + "CheckAccessNotGranted": "

Checks whether the specified access isn't allowed by a policy.

", + "CheckNoNewAccess": "

Checks whether new access is allowed for an updated policy when compared to the existing policy.

You can find examples for reference policies and learn how to set up and run a custom policy check for new access in the IAM Access Analyzer custom policy checks samples repository on GitHub. The reference policies in this repository are meant to be passed to the existingPolicyDocument request parameter.

", "CreateAccessPreview": "

Creates an access preview that allows you to preview IAM Access Analyzer findings for your resource before deploying resource permissions.

", "CreateAnalyzer": "

Creates an analyzer for your account.

", "CreateArchiveRule": "

Creates an archive rule for the specified analyzer. Archive rules automatically archive new findings that meet the criteria you define when you create the rule.

To learn about filter keys that you can use to create an archive rule, see IAM Access Analyzer filter keys in the IAM User Guide.

", @@ -14,6 +16,7 @@ "GetAnalyzer": "

Retrieves information about the specified analyzer.

", "GetArchiveRule": "

Retrieves information about an archive rule.

To learn about filter keys that you can use to create an archive rule, see IAM Access Analyzer filter keys in the IAM User Guide.

", "GetFinding": "

Retrieves information about the specified finding.

", + "GetFindingV2": "

Retrieves information about the specified finding.

", "GetGeneratedPolicy": "

Retrieves the policy that was generated using StartPolicyGeneration.

", "ListAccessPreviewFindings": "

Retrieves a list of access preview findings generated by the specified access preview.

", "ListAccessPreviews": "

Retrieves a list of access previews for the specified analyzer.

", @@ -21,6 +24,7 @@ "ListAnalyzers": "

Retrieves a list of analyzers.

", "ListArchiveRules": "

Retrieves a list of archive rules created for the specified analyzer.

", "ListFindings": "

Retrieves a list of findings generated by the specified analyzer.

To learn about filter keys that you can use to retrieve a list of findings, see IAM Access Analyzer filter keys in the IAM User Guide.

", + "ListFindingsV2": "

Retrieves a list of findings generated by the specified analyzer.

To learn about filter keys that you can use to retrieve a list of findings, see IAM Access Analyzer filter keys in the IAM User Guide.

", "ListPolicyGenerations": "

Lists all of the policy generations requested in the last seven days.

", "ListTagsForResource": "

Retrieves a list of tags applied to the specified resource.

", "StartPolicyGeneration": "

Starts the policy generation request.

", @@ -32,6 +36,33 @@ "ValidatePolicy": "

Requests the validation of a policy and returns a list of findings. The findings help you identify issues and provide actionable recommendations to resolve the issue and enable you to author functional policies that meet security best practices.

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

Contains information about actions that define permissions to check against a policy.

", + "refs": { + "CheckAccessNotGrantedRequestAccessList$member": null + } + }, + "AccessActionsList": { + "base": null, + "refs": { + "Access$actions": "

A list of actions for the access permissions.

" + } + }, + "AccessCheckPolicyDocument": { + "base": null, + "refs": { + "CheckAccessNotGrantedRequest$policyDocument": "

The JSON policy document to use as the content for the policy.

", + "CheckNoNewAccessRequest$newPolicyDocument": "

The JSON policy document to use as the content for the updated policy.

", + "CheckNoNewAccessRequest$existingPolicyDocument": "

The JSON policy document to use as the content for the existing policy.

" + } + }, + "AccessCheckPolicyType": { + "base": null, + "refs": { + "CheckAccessNotGrantedRequest$policyType": "

The type of policy. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups.

Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or Amazon S3 bucket policy.

", + "CheckNoNewAccessRequest$policyType": "

The type of policy to compare. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups.

Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or Amazon S3 bucket policy.

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

You do not have sufficient access to perform this action.

", "refs": { @@ -139,11 +170,18 @@ "AclGrantee$uri": "

Used for granting permissions to a predefined group.

" } }, + "Action": { + "base": null, + "refs": { + "AccessActionsList$member": null + } + }, "ActionList": { "base": null, "refs": { "AccessPreviewFinding$action": "

The action in the analyzed policy statement that an external principal has permission to perform.

", "AnalyzedResource$actions": "

The actions that an external principal is granted permission to use by the policy that generated the finding.

", + "ExternalAccessDetails$action": "

The action in the analyzed policy statement that an external principal has permission to use.

", "Finding$action": "

The action in the analyzed policy statement that an external principal has permission to use.

", "FindingSummary$action": "

The action in the analyzed policy statement that an external principal has permission to use.

" } @@ -178,14 +216,23 @@ "GetAccessPreviewRequest$analyzerArn": "

The ARN of the analyzer used to generate the access preview.

", "GetAnalyzedResourceRequest$analyzerArn": "

The ARN of the analyzer to retrieve information from.

", "GetFindingRequest$analyzerArn": "

The ARN of the analyzer that generated the finding.

", + "GetFindingV2Request$analyzerArn": "

The ARN of the analyzer that generated the finding.

", "ListAccessPreviewFindingsRequest$analyzerArn": "

The ARN of the analyzer used to generate the access.

", "ListAccessPreviewsRequest$analyzerArn": "

The ARN of the analyzer used to generate the access preview.

", "ListAnalyzedResourcesRequest$analyzerArn": "

The ARN of the analyzer to retrieve a list of analyzed resources from.

", "ListFindingsRequest$analyzerArn": "

The ARN of the analyzer to retrieve findings from.

", + "ListFindingsV2Request$analyzerArn": "

The ARN of the analyzer to retrieve findings from.

", "StartResourceScanRequest$analyzerArn": "

The ARN of the analyzer to use to scan the policies applied to the specified resource.

", "UpdateFindingsRequest$analyzerArn": "

The ARN of the analyzer that generated the findings to update.

" } }, + "AnalyzerConfiguration": { + "base": "

Contains information about the configuration of an unused access analyzer for an Amazon Web Services organization or account.

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

Specifies whether the analyzer is an external access or unused access analyzer.

", + "CreateAnalyzerRequest$configuration": "

Specifies the configuration of the analyzer. If the analyzer is an unused access analyzer, the specified scope of unused access is used for the configuration. If the analyzer is an external access analyzer, this field is not used.

" + } + }, "AnalyzerStatus": { "base": null, "refs": { @@ -229,6 +276,7 @@ "AccessPreviewFinding$isPublic": "

Indicates whether the policy that generated the finding allows public access to the resource.

", "AnalyzedResource$isPublic": "

Indicates whether the policy that generated the finding grants public access to the resource.

", "Criterion$exists": "

An \"exists\" operator to match for the filter used to create the rule.

", + "ExternalAccessDetails$isPublic": "

Specifies whether the external access finding is public.

", "Finding$isPublic": "

Indicates whether the policy that generated the finding allows public access to the resource.

", "FindingSummary$isPublic": "

Indicates whether the finding reports a resource that has a policy that allows public access.

", "GeneratedPolicyProperties$isComplete": "

This value is set to true if the generated policy contains all possible actions for a service that IAM Access Analyzer identified from the CloudTrail trail that you specified, and false otherwise.

", @@ -250,6 +298,44 @@ "refs": { } }, + "CheckAccessNotGrantedRequest": { + "base": null, + "refs": { + } + }, + "CheckAccessNotGrantedRequestAccessList": { + "base": null, + "refs": { + "CheckAccessNotGrantedRequest$access": "

An access object containing the permissions that shouldn't be granted by the specified policy.

" + } + }, + "CheckAccessNotGrantedResponse": { + "base": null, + "refs": { + } + }, + "CheckAccessNotGrantedResult": { + "base": null, + "refs": { + "CheckAccessNotGrantedResponse$result": "

The result of the check for whether the access is allowed. If the result is PASS, the specified policy doesn't allow any of the specified permissions in the access object. If the result is FAIL, the specified policy might allow some or all of the permissions in the access object.

" + } + }, + "CheckNoNewAccessRequest": { + "base": null, + "refs": { + } + }, + "CheckNoNewAccessResponse": { + "base": null, + "refs": { + } + }, + "CheckNoNewAccessResult": { + "base": null, + "refs": { + "CheckNoNewAccessResponse$result": "

The result of the check for new access. If the result is PASS, no new access is allowed by the updated policy. If the result is FAIL, the updated policy might allow new access.

" + } + }, "CloudTrailArn": { "base": null, "refs": { @@ -273,6 +359,7 @@ "base": null, "refs": { "AccessPreviewFinding$condition": "

The condition in the analyzed policy statement that resulted in a finding.

", + "ExternalAccessDetails$condition": "

The condition in the analyzed policy statement that resulted in an external access finding.

", "Finding$condition": "

The condition in the analyzed policy statement that resulted in a finding.

", "FindingSummary$condition": "

The condition in the analyzed policy statement that resulted in a finding.

" } @@ -402,6 +489,12 @@ "EfsFileSystemConfiguration$fileSystemPolicy": "

The JSON policy definition to apply to the Amazon EFS file system. For more information on the elements that make up a file system policy, see Amazon EFS Resource-based policies.

" } }, + "ExternalAccessDetails": { + "base": "

Contains information about an external access finding.

", + "refs": { + "FindingDetails$externalAccessDetails": "

The details for an external access analyzer finding.

" + } + }, "FilterCriteriaMap": { "base": null, "refs": { @@ -410,6 +503,7 @@ "InlineArchiveRule$filter": "

The condition and values for a criterion.

", "ListAccessPreviewFindingsRequest$filter": "

Criteria to filter the returned findings.

", "ListFindingsRequest$filter": "

A filter to match for the findings to return.

", + "ListFindingsV2Request$filter": "

A filter to match for the findings to return.

", "UpdateArchiveRuleRequest$filter": "

A filter to match for the rules to update. Only rules that match the filter are updated.

" } }, @@ -425,6 +519,18 @@ "AccessPreviewFinding$changeType": "

Provides context on how the access preview finding compares to existing access identified in IAM Access Analyzer.

  • New - The finding is for newly-introduced access.

  • Unchanged - The preview finding is an existing finding that would remain unchanged.

  • Changed - The preview finding is an existing finding with a change in status.

For example, a Changed finding with preview status Resolved and existing status Active indicates the existing Active finding would become Resolved as a result of the proposed permissions change.

" } }, + "FindingDetails": { + "base": "

Contains information about an external access or unused access finding. Only one parameter can be used in a FindingDetails object.

", + "refs": { + "FindingDetailsList$member": null + } + }, + "FindingDetailsList": { + "base": null, + "refs": { + "GetFindingV2Response$findingDetails": "

A localized message that explains the finding and provides guidance on how to address it.

" + } + }, "FindingId": { "base": null, "refs": { @@ -432,7 +538,10 @@ "Finding$id": "

The ID of the finding.

", "FindingIdList$member": null, "FindingSummary$id": "

The ID of the finding.

", - "GetFindingRequest$id": "

The ID of the finding to retrieve.

" + "FindingSummaryV2$id": "

The ID of the finding.

", + "GetFindingRequest$id": "

The ID of the finding to retrieve.

", + "GetFindingV2Request$id": "

The ID of the finding to retrieve.

", + "GetFindingV2Response$id": "

The ID of the finding to retrieve.

" } }, "FindingIdList": { @@ -457,6 +566,7 @@ "base": null, "refs": { "AccessPreviewFinding$sources": "

The sources of the finding. This indicates how the access that generated the finding is granted. It is populated for Amazon S3 bucket findings.

", + "ExternalAccessDetails$sources": "

The sources of the external access finding. This indicates how the access that generated the finding is granted. It is populated for Amazon S3 bucket findings.

", "Finding$sources": "

The sources of the finding. This indicates how the access that generated the finding is granted. It is populated for Amazon S3 bucket findings.

", "FindingSummary$sources": "

The sources of the finding. This indicates how the access that generated the finding is granted. It is populated for Amazon S3 bucket findings.

" } @@ -474,7 +584,9 @@ "AccessPreviewFinding$status": "

The preview status of the finding. This is what the status of the finding would be after permissions deployment. For example, a Changed finding with preview status Resolved and existing status Active indicates the existing Active finding would become Resolved as a result of the proposed permissions change.

", "AnalyzedResource$status": "

The current status of the finding generated from the analyzed resource.

", "Finding$status": "

The current status of the finding.

", - "FindingSummary$status": "

The status of the finding.

" + "FindingSummary$status": "

The status of the finding.

", + "FindingSummaryV2$status": "

The status of the finding.

", + "GetFindingV2Response$status": "

The status of the finding.

" } }, "FindingStatusUpdate": { @@ -489,12 +601,31 @@ "FindingsList$member": null } }, + "FindingSummaryV2": { + "base": "

Contains information about a finding.

", + "refs": { + "FindingsListV2$member": null + } + }, + "FindingType": { + "base": null, + "refs": { + "FindingSummaryV2$findingType": "

The type of the external access or unused access finding.

", + "GetFindingV2Response$findingType": "

The type of the finding. For external access analyzers, the type is ExternalAccess. For unused access analyzers, the type can be UnusedIAMRole, UnusedIAMUserAccessKey, UnusedIAMUserPassword, or UnusedPermission.

" + } + }, "FindingsList": { "base": null, "refs": { "ListFindingsResponse$findings": "

A list of findings retrieved from the analyzer that match the filter criteria specified, if any.

" } }, + "FindingsListV2": { + "base": null, + "refs": { + "ListFindingsV2Response$findings": "

A list of findings retrieved from the analyzer that match the filter criteria specified, if any.

" + } + }, "GeneratedPolicy": { "base": "

Contains the text for the generated policy.

", "refs": { @@ -569,6 +700,16 @@ "refs": { } }, + "GetFindingV2Request": { + "base": null, + "refs": { + } + }, + "GetFindingV2Response": { + "base": null, + "refs": { + } + }, "GetGeneratedPolicyRequest": { "base": null, "refs": { @@ -612,6 +753,7 @@ "Integer": { "base": null, "refs": { + "GetFindingV2Request$maxResults": "

The maximum number of results to return in the response.

", "InternalServerException$retryAfterSeconds": "

The seconds to wait to retry.

", "ListAccessPreviewFindingsRequest$maxResults": "

The maximum number of results to return in the response.

", "ListAccessPreviewsRequest$maxResults": "

The maximum number of results to return in the response.

", @@ -619,13 +761,16 @@ "ListAnalyzersRequest$maxResults": "

The maximum number of results to return in the response.

", "ListArchiveRulesRequest$maxResults": "

The maximum number of results to return in the request.

", "ListFindingsRequest$maxResults": "

The maximum number of results to return in the response.

", + "ListFindingsV2Request$maxResults": "

The maximum number of results to return in the response.

", "PathElement$index": "

Refers to an index in a JSON array.

", "Position$line": "

The line of the position, starting from 1.

", "Position$column": "

The column of the position, starting from 0.

", "Position$offset": "

The offset within the policy that corresponds to the position, starting from 0.

", + "ReasonSummary$statementIndex": "

The index number of the reason statement.

", "Substring$start": "

The start index of the substring, starting from 0.

", "Substring$length": "

The length of the substring.

", "ThrottlingException$retryAfterSeconds": "

The seconds to wait to retry.

", + "UnusedAccessConfiguration$unusedAccessAge": "

The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days.

", "ValidatePolicyRequest$maxResults": "

The maximum number of results to return in the response.

" } }, @@ -640,6 +785,11 @@ "NetworkOriginConfiguration$internetConfiguration": "

The configuration for the Amazon S3 access point or multi-region access point with an Internet origin.

" } }, + "InvalidParameterException": { + "base": "

The specified parameter is invalid.

", + "refs": { + } + }, "IssueCode": { "base": null, "refs": { @@ -820,6 +970,16 @@ "refs": { } }, + "ListFindingsV2Request": { + "base": null, + "refs": { + } + }, + "ListFindingsV2Response": { + "base": null, + "refs": { + } + }, "ListPolicyGenerationsRequest": { "base": null, "refs": { @@ -942,7 +1102,7 @@ "PolicyType": { "base": null, "refs": { - "ValidatePolicyRequest$policyType": "

The type of policy to validate. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups. They also include service-control policies (SCPs) that are attached to an Amazon Web Services organization, organizational unit (OU), or an account.

Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or Amazon S3 bucket policy.

" + "ValidatePolicyRequest$policyType": "

The type of policy to validate. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups.

Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or Amazon S3 bucket policy.

Service control policies (SCPs) are a type of organization policy attached to an Amazon Web Services organization, organizational unit (OU), or an account.

" } }, "Position": { @@ -965,7 +1125,8 @@ "base": null, "refs": { "AccessPreviewFinding$principal": "

The external principal that has access to a resource within the zone of trust.

", - "Finding$principal": "

The external principal that access to a resource within the zone of trust.

", + "ExternalAccessDetails$principal": "

The external principal that has access to a resource within the zone of trust.

", + "Finding$principal": "

The external principal that has access to a resource within the zone of trust.

", "FindingSummary$principal": "

The external principal that has access to a resource within the zone of trust.

" } }, @@ -1059,6 +1220,19 @@ "StatusReason$code": "

The reason code for the current status of the analyzer.

" } }, + "ReasonSummary": { + "base": "

Contains information about the reasoning why a check for access passed or failed.

", + "refs": { + "ReasonSummaryList$member": null + } + }, + "ReasonSummaryList": { + "base": null, + "refs": { + "CheckAccessNotGrantedResponse$reasons": "

A description of the reasoning of the result.

", + "CheckNoNewAccessResponse$reasons": "

A description of the reasoning of the result.

" + } + }, "RegionList": { "base": null, "refs": { @@ -1089,6 +1263,8 @@ "AnalyzedResourceSummary$resourceType": "

The type of resource that was analyzed.

", "Finding$resourceType": "

The type of the resource identified in the finding.

", "FindingSummary$resourceType": "

The type of the resource that the external principal has access to.

", + "FindingSummaryV2$resourceType": "

The type of the resource that the external principal has access to.

", + "GetFindingV2Response$resourceType": "

The type of the resource identified in the finding.

", "ListAnalyzedResourcesRequest$resourceType": "

The type of resource.

" } }, @@ -1131,7 +1307,7 @@ "S3BucketConfiguration": { "base": "

Proposed access control configuration for an Amazon S3 bucket. You can propose a configuration for a new Amazon S3 bucket or an existing Amazon S3 bucket that you own by specifying the Amazon S3 bucket policy, bucket ACLs, bucket BPA settings, Amazon S3 access points, and multi-region access points attached to the bucket. If the configuration is for an existing Amazon S3 bucket and you do not specify the Amazon S3 bucket policy, the access preview uses the existing policy attached to the bucket. If the access preview is for a new resource and you do not specify the Amazon S3 bucket policy, the access preview assumes a bucket without a policy. To propose deletion of an existing bucket policy, you can specify an empty string. For more information about bucket policy limits, see Bucket Policy Examples.

", "refs": { - "Configuration$s3Bucket": "

The access control configuration is for an Amazon S3 Bucket.

" + "Configuration$s3Bucket": "

The access control configuration is for an Amazon S3 bucket.

" } }, "S3BucketPolicy": { @@ -1140,6 +1316,18 @@ "S3BucketConfiguration$bucketPolicy": "

The proposed bucket policy for the Amazon S3 bucket.

" } }, + "S3ExpressDirectoryBucketConfiguration": { + "base": "

Proposed access control configuration for an Amazon S3 directory bucket. You can propose a configuration for a new Amazon S3 directory bucket or an existing Amazon S3 directory bucket that you own by specifying the Amazon S3 bucket policy. If the configuration is for an existing Amazon S3 directory bucket and you do not specify the Amazon S3 bucket policy, the access preview uses the existing policy attached to the directory bucket. If the access preview is for a new resource and you do not specify the Amazon S3 bucket policy, the access preview assumes an directory bucket without a policy. To propose deletion of an existing bucket policy, you can specify an empty string. For more information about bucket policy limits, see Example bucket policies.

", + "refs": { + "Configuration$s3ExpressDirectoryBucket": "

The access control configuration is for an Amazon S3 directory bucket.

" + } + }, + "S3ExpressDirectoryBucketPolicy": { + "base": null, + "refs": { + "S3ExpressDirectoryBucketConfiguration$bucketPolicy": "

The proposed bucket policy for the Amazon S3 directory bucket.

" + } + }, "S3PublicAccessBlockConfiguration": { "base": "

The PublicAccessBlock configuration to apply to this Amazon S3 bucket. If the proposed configuration is for an existing Amazon S3 bucket and the configuration is not specified, the access preview uses the existing setting. If the proposed configuration is for a new bucket and the configuration is not specified, the access preview uses false. If the proposed configuration is for a new access point or multi-region access point and the access point BPA configuration is not specified, the access preview uses true. For more information, see PublicAccessBlockConfiguration.

", "refs": { @@ -1191,7 +1379,8 @@ "SortCriteria": { "base": "

The criteria used to sort.

", "refs": { - "ListFindingsRequest$sort": "

The sort order for the findings returned.

" + "ListFindingsRequest$sort": "

The sort order for the findings returned.

", + "ListFindingsV2Request$sort": null } }, "Span": { @@ -1246,6 +1435,8 @@ "AnalyzedResourceSummary$resourceOwnerAccount": "

The Amazon Web Services account ID that owns the resource.

", "AnalyzerSummary$lastResourceAnalyzed": "

The resource that was most recently analyzed by the analyzer.

", "ApplyArchiveRuleRequest$clientToken": "

A client token.

", + "CheckAccessNotGrantedResponse$message": "

The message indicating whether the specified access is allowed.

", + "CheckNoNewAccessResponse$message": "

The message indicating whether the updated policy allows new access.

", "ConditionKeyMap$key": null, "ConditionKeyMap$value": null, "ConflictException$message": null, @@ -1265,14 +1456,23 @@ "FindingSummary$resource": "

The resource that the external principal has access to.

", "FindingSummary$resourceOwnerAccount": "

The Amazon Web Services account ID that owns the resource.

", "FindingSummary$error": "

The error that resulted in an Error finding.

", + "FindingSummaryV2$error": "

The error that resulted in an Error finding.

", + "FindingSummaryV2$resource": "

The resource that the external principal has access to.

", + "FindingSummaryV2$resourceOwnerAccount": "

The Amazon Web Services account ID that owns the resource.

", "GeneratedPolicy$policy": "

The text to use as the content for the new policy. The policy is created using the CreatePolicy action.

", + "GetFindingV2Response$error": "

An error.

", + "GetFindingV2Response$resource": "

The resource that generated the finding.

", + "GetFindingV2Response$resourceOwnerAccount": "

Tye Amazon Web Services account ID that owns the resource.

", "InternalServerException$message": null, + "InvalidParameterException$message": null, "JobError$message": "

Specific information about the error. For example, which service quota was exceeded or which resource was not found.

", "ListTagsForResourceRequest$resourceArn": "

The ARN of the resource to retrieve tags from.

", "PathElement$key": "

Refers to a key in a JSON object.

", "PathElement$value": "

Refers to the value associated with a given key in a JSON object.

", "PrincipalMap$key": null, "PrincipalMap$value": null, + "ReasonSummary$description": "

A description of the reasoning of a result of checking for access.

", + "ReasonSummary$statementId": "

The identifier for the reason statement.

", "RegionList$member": null, "ResourceNotFoundException$message": null, "ResourceNotFoundException$resourceId": "

The ID of the resource.

", @@ -1289,7 +1489,11 @@ "TagsMap$key": null, "TagsMap$value": null, "ThrottlingException$message": null, + "UnprocessableEntityException$message": null, "UntagResourceRequest$resourceArn": "

The ARN of the resource to remove the tag from.

", + "UnusedAction$action": "

The action for which the unused access finding was generated.

", + "UnusedIamUserAccessKeyDetails$accessKeyId": "

The ID of the access key for which the unused access finding was generated.

", + "UnusedPermissionDetails$serviceNamespace": "

The namespace of the Amazon Web Services service that contains the unused actions.

", "UpdateArchiveRuleRequest$clientToken": "

A client token.

", "UpdateFindingsRequest$clientToken": "

A client token.

", "ValidatePolicyFinding$findingDetails": "

A localized message that explains the finding and provides guidance on how to address it.

", @@ -1325,7 +1529,7 @@ "base": null, "refs": { "AnalyzerSummary$tags": "

The tags added to the analyzer.

", - "CreateAnalyzerRequest$tags": "

The tags to apply to the analyzer.

", + "CreateAnalyzerRequest$tags": "

An array of key-value pairs to apply to the analyzer.

", "ListTagsForResourceResponse$tags": "

The tags that are applied to the specified resource.

", "TagResourceRequest$tags": "

The tags to add to the resource.

" } @@ -1358,15 +1562,28 @@ "FindingSummary$createdAt": "

The time at which the finding was created.

", "FindingSummary$analyzedAt": "

The time at which the resource-based policy that generated the finding was analyzed.

", "FindingSummary$updatedAt": "

The time at which the finding was most recently updated.

", + "FindingSummaryV2$analyzedAt": "

The time at which the resource-based policy or IAM entity that generated the finding was analyzed.

", + "FindingSummaryV2$createdAt": "

The time at which the finding was created.

", + "FindingSummaryV2$updatedAt": "

The time at which the finding was most recently updated.

", + "GetFindingV2Response$analyzedAt": "

The time at which the resource-based policy or IAM entity that generated the finding was analyzed.

", + "GetFindingV2Response$createdAt": "

The time at which the finding was created.

", + "GetFindingV2Response$updatedAt": "

The time at which the finding was updated.

", "JobDetails$startedOn": "

A timestamp of when the job was started.

", "JobDetails$completedOn": "

A timestamp of when the job was completed.

", "PolicyGeneration$startedOn": "

A timestamp of when the policy generation started.

", - "PolicyGeneration$completedOn": "

A timestamp of when the policy generation was completed.

" + "PolicyGeneration$completedOn": "

A timestamp of when the policy generation was completed.

", + "UnusedAction$lastAccessed": "

The time at which the action was last accessed.

", + "UnusedIamRoleDetails$lastAccessed": "

The time at which the role was last accessed.

", + "UnusedIamUserAccessKeyDetails$lastAccessed": "

The time at which the access key was last accessed.

", + "UnusedIamUserPasswordDetails$lastAccessed": "

The time at which the password was last accessed.

", + "UnusedPermissionDetails$lastAccessed": "

The time at which the permission last accessed.

" } }, "Token": { "base": null, "refs": { + "GetFindingV2Request$nextToken": "

A token used for pagination of results returned.

", + "GetFindingV2Response$nextToken": "

A token used for pagination of results returned.

", "ListAccessPreviewFindingsRequest$nextToken": "

A token used for pagination of results returned.

", "ListAccessPreviewFindingsResponse$nextToken": "

A token used for pagination of results returned.

", "ListAccessPreviewsRequest$nextToken": "

A token used for pagination of results returned.

", @@ -1379,6 +1596,8 @@ "ListArchiveRulesResponse$nextToken": "

A token used for pagination of results returned.

", "ListFindingsRequest$nextToken": "

A token used for pagination of results returned.

", "ListFindingsResponse$nextToken": "

A token used for pagination of results returned.

", + "ListFindingsV2Request$nextToken": "

A token used for pagination of results returned.

", + "ListFindingsV2Response$nextToken": "

A token used for pagination of results returned.

", "ListPolicyGenerationsRequest$nextToken": "

A token used for pagination of results returned.

", "ListPolicyGenerationsResponse$nextToken": "

A token used for pagination of results returned.

", "ValidatePolicyRequest$nextToken": "

A token used for pagination of results returned.

", @@ -1413,10 +1632,15 @@ "base": null, "refs": { "AnalyzerSummary$type": "

The type of analyzer, which corresponds to the zone of trust chosen for the analyzer.

", - "CreateAnalyzerRequest$type": "

The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are supported. You can create only one analyzer per account per Region. You can create up to 5 analyzers per organization per Region.

", + "CreateAnalyzerRequest$type": "

The type of analyzer to create. Only ACCOUNT, ORGANIZATION, ACCOUNT_UNUSED_ACCESS, and ORGANIZTAION_UNUSED_ACCESS analyzers are supported. You can create only one analyzer per account per Region. You can create up to 5 analyzers per organization per Region.

", "ListAnalyzersRequest$type": "

The type of analyzer.

" } }, + "UnprocessableEntityException": { + "base": "

The specified entity could not be processed.

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

Removes a tag from the specified resource.

", "refs": { @@ -1427,6 +1651,48 @@ "refs": { } }, + "UnusedAccessConfiguration": { + "base": "

Contains information about an unused access analyzer.

", + "refs": { + "AnalyzerConfiguration$unusedAccess": "

Specifies the configuration of an unused access analyzer for an Amazon Web Services organization or account. External access analyzers do not support any configuration.

" + } + }, + "UnusedAction": { + "base": "

Contains information about an unused access finding for an action. IAM Access Analyzer charges for unused access analysis based on the number of IAM roles and users analyzed per month. For more details on pricing, see IAM Access Analyzer pricing.

", + "refs": { + "UnusedActionList$member": null + } + }, + "UnusedActionList": { + "base": null, + "refs": { + "UnusedPermissionDetails$actions": "

A list of unused actions for which the unused access finding was generated.

" + } + }, + "UnusedIamRoleDetails": { + "base": "

Contains information about an unused access finding for an IAM role. IAM Access Analyzer charges for unused access analysis based on the number of IAM roles and users analyzed per month. For more details on pricing, see IAM Access Analyzer pricing.

", + "refs": { + "FindingDetails$unusedIamRoleDetails": "

The details for an unused access analyzer finding with an unused IAM role finding type.

" + } + }, + "UnusedIamUserAccessKeyDetails": { + "base": "

Contains information about an unused access finding for an IAM user access key. IAM Access Analyzer charges for unused access analysis based on the number of IAM roles and users analyzed per month. For more details on pricing, see IAM Access Analyzer pricing.

", + "refs": { + "FindingDetails$unusedIamUserAccessKeyDetails": "

The details for an unused access analyzer finding with an unused IAM user access key finding type.

" + } + }, + "UnusedIamUserPasswordDetails": { + "base": "

Contains information about an unused access finding for an IAM user password. IAM Access Analyzer charges for unused access analysis based on the number of IAM roles and users analyzed per month. For more details on pricing, see IAM Access Analyzer pricing.

", + "refs": { + "FindingDetails$unusedIamUserPasswordDetails": "

The details for an unused access analyzer finding with an unused IAM user password finding type.

" + } + }, + "UnusedPermissionDetails": { + "base": "

Contains information about an unused access finding for a permission. IAM Access Analyzer charges for unused access analysis based on the number of IAM roles and users analyzed per month. For more details on pricing, see IAM Access Analyzer pricing.

", + "refs": { + "FindingDetails$unusedPermissionDetails": "

The details for an unused access analyzer finding with an unused permission finding type.

" + } + }, "UpdateArchiveRuleRequest": { "base": "

Updates the specified archive rule.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,78 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -111,61 +62,109 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -176,61 +175,54 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -239,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -259,54 +252,48 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -317,58 +304,16 @@ }, "type": "endpoint" } - ] - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-east-1" - ] - } - ], - "endpoint": { - "url": "https://access-analyzer.us-gov-east-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ + ], + "type": "tree" + }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-west-1" - ] + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ], - "endpoint": { - "url": "https://access-analyzer.us-gov-west-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree" }, { "conditions": [], @@ -379,9 +324,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,9 +8,9 @@ } }, "params": { + "Region": "af-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" + "UseDualStack": false } }, { @@ -21,9 +21,9 @@ } }, "params": { + "Region": "ap-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { @@ -47,9 +47,9 @@ } }, "params": { + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { + "Region": "ap-northeast-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-3" + "UseDualStack": false } }, { @@ -73,9 +73,9 @@ } }, "params": { + "Region": "ap-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-1" + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { + "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { @@ -99,9 +99,9 @@ } }, "params": { + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { + "Region": "ap-southeast-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-3" + "UseDualStack": false } }, { @@ -125,9 +125,9 @@ } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { + "Region": "ca-central-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -151,9 +151,9 @@ } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { + "Region": "eu-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { @@ -177,9 +177,9 @@ } }, "params": { + "Region": "eu-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-south-1" + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { @@ -203,9 +203,9 @@ } }, "params": { + "Region": "eu-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { + "Region": "eu-west-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-3" + "UseDualStack": false } }, { @@ -229,9 +229,9 @@ } }, "params": { + "Region": "me-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "me-south-1" + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { + "Region": "sa-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { @@ -255,9 +255,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -281,9 +281,9 @@ } }, "params": { + "Region": "us-east-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { @@ -294,9 +294,9 @@ } }, "params": { + "Region": "us-east-2", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { @@ -307,9 +307,9 @@ } }, "params": { + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { @@ -320,9 +320,9 @@ } }, "params": { + "Region": "us-west-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { @@ -333,9 +333,9 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -359,9 +359,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -372,9 +372,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -385,9 +385,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -398,9 +398,9 @@ } }, "params": { + "Region": "cn-northwest-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-northwest-1" + "UseDualStack": false } }, { @@ -411,9 +411,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -424,9 +424,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -437,9 +437,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -450,9 +450,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -463,9 +463,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -476,9 +476,9 @@ } }, "params": { + "Region": "us-gov-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { @@ -489,9 +489,9 @@ } }, "params": { + "Region": "us-gov-west-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { @@ -502,9 +502,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -515,9 +515,20 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -528,9 +539,20 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -541,9 +563,20 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -554,9 +587,20 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -567,13 +611,27 @@ } }, "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "us-isob-east-1" + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -582,7 +640,6 @@ "params": { "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -592,9 +649,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -604,11 +661,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/accessanalyzer/2019-11-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/accessanalyzer/2019-11-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,11 @@ { "pagination": { + "GetFindingV2": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "findingDetails" + }, "ListAccessPreviewFindings": { "input_token": "nextToken", "output_token": "nextToken", @@ -34,6 +40,12 @@ "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", + "result_key": "findings" + }, + "ListFindingsV2": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", "result_key": "findings" }, "ListPolicyGenerations": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -69,6 +69,26 @@ ], "idempotent":true }, + "CreateScraper":{ + "name":"CreateScraper", + "http":{ + "method":"POST", + "requestUri":"/scrapers", + "responseCode":202 + }, + "input":{"shape":"CreateScraperRequest"}, + "output":{"shape":"CreateScraperResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, "CreateWorkspace":{ "name":"CreateWorkspace", "http":{ @@ -141,6 +161,25 @@ ], "idempotent":true }, + "DeleteScraper":{ + "name":"DeleteScraper", + "http":{ + "method":"DELETE", + "requestUri":"/scrapers/{scraperId}", + "responseCode":202 + }, + "input":{"shape":"DeleteScraperRequest"}, + "output":{"shape":"DeleteScraperResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, "DeleteWorkspace":{ "name":"DeleteWorkspace", "http":{ @@ -209,6 +248,23 @@ {"shape":"InternalServerException"} ] }, + "DescribeScraper":{ + "name":"DescribeScraper", + "http":{ + "method":"GET", + "requestUri":"/scrapers/{scraperId}", + "responseCode":200 + }, + "input":{"shape":"DescribeScraperRequest"}, + "output":{"shape":"DescribeScraperResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ] + }, "DescribeWorkspace":{ "name":"DescribeWorkspace", "http":{ @@ -226,6 +282,21 @@ {"shape":"InternalServerException"} ] }, + "GetDefaultScraperConfiguration":{ + "name":"GetDefaultScraperConfiguration", + "http":{ + "method":"GET", + "requestUri":"/scraperconfiguration", + "responseCode":200 + }, + "input":{"shape":"GetDefaultScraperConfigurationRequest"}, + "output":{"shape":"GetDefaultScraperConfigurationResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ] + }, "ListRuleGroupsNamespaces":{ "name":"ListRuleGroupsNamespaces", "http":{ @@ -243,6 +314,22 @@ {"shape":"InternalServerException"} ] }, + "ListScrapers":{ + "name":"ListScrapers", + "http":{ + "method":"GET", + "requestUri":"/scrapers", + "responseCode":200 + }, + "input":{"shape":"ListScrapersRequest"}, + "output":{"shape":"ListScrapersResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -437,6 +524,18 @@ "UPDATE_FAILED" ] }, + "AmpConfiguration":{ + "type":"structure", + "required":["workspaceArn"], + "members":{ + "workspaceArn":{"shape":"WorkspaceArn"} + } + }, + "Blob":{"type":"blob"}, + "ClusterArn":{ + "type":"string", + "pattern":"arn:aws[-a-z]*:eks:[-a-z0-9]+:[0-9]{12}:cluster/.+" + }, "ConflictException":{ "type":"structure", "required":[ @@ -543,6 +642,39 @@ "tags":{"shape":"TagMap"} } }, + "CreateScraperRequest":{ + "type":"structure", + "required":[ + "scrapeConfiguration", + "source", + "destination" + ], + "members":{ + "alias":{"shape":"ScraperAlias"}, + "scrapeConfiguration":{"shape":"ScrapeConfiguration"}, + "source":{"shape":"Source"}, + "destination":{"shape":"Destination"}, + "clientToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true + }, + "tags":{"shape":"TagMap"} + } + }, + "CreateScraperResponse":{ + "type":"structure", + "required":[ + "scraperId", + "arn", + "status" + ], + "members":{ + "scraperId":{"shape":"ScraperId"}, + "arn":{"shape":"ScraperArn"}, + "status":{"shape":"ScraperStatus"}, + "tags":{"shape":"TagMap"} + } + }, "CreateWorkspaceRequest":{ "type":"structure", "members":{ @@ -627,6 +759,34 @@ } } }, + "DeleteScraperRequest":{ + "type":"structure", + "required":["scraperId"], + "members":{ + "scraperId":{ + "shape":"ScraperId", + "location":"uri", + "locationName":"scraperId" + }, + "clientToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + } + } + }, + "DeleteScraperResponse":{ + "type":"structure", + "required":[ + "scraperId", + "status" + ], + "members":{ + "scraperId":{"shape":"ScraperId"}, + "status":{"shape":"ScraperStatus"} + } + }, "DeleteWorkspaceRequest":{ "type":"structure", "required":["workspaceId"], @@ -706,6 +866,24 @@ "ruleGroupsNamespace":{"shape":"RuleGroupsNamespaceDescription"} } }, + "DescribeScraperRequest":{ + "type":"structure", + "required":["scraperId"], + "members":{ + "scraperId":{ + "shape":"ScraperId", + "location":"uri", + "locationName":"scraperId" + } + } + }, + "DescribeScraperResponse":{ + "type":"structure", + "required":["scraper"], + "members":{ + "scraper":{"shape":"ScraperDescription"} + } + }, "DescribeWorkspaceRequest":{ "type":"structure", "required":["workspaceId"], @@ -724,6 +902,54 @@ "workspace":{"shape":"WorkspaceDescription"} } }, + "Destination":{ + "type":"structure", + "members":{ + "ampConfiguration":{"shape":"AmpConfiguration"} + }, + "union":true + }, + "EksConfiguration":{ + "type":"structure", + "required":[ + "clusterArn", + "subnetIds" + ], + "members":{ + "clusterArn":{"shape":"ClusterArn"}, + "securityGroupIds":{"shape":"SecurityGroupIds"}, + "subnetIds":{"shape":"SubnetIds"} + } + }, + "FilterKey":{ + "type":"string", + "max":256, + "min":1 + }, + "FilterValue":{ + "type":"string", + "max":256, + "min":1 + }, + "FilterValues":{ + "type":"list", + "member":{"shape":"FilterValue"}, + "max":20, + "min":1 + }, + "GetDefaultScraperConfigurationRequest":{ + "type":"structure", + "members":{ + } + }, + "GetDefaultScraperConfigurationResponse":{ + "type":"structure", + "required":["configuration"], + "members":{ + "configuration":{"shape":"Blob"} + } + }, + "IamRoleArn":{"type":"string"}, "IdempotencyToken":{ "type":"string", "max":64, @@ -790,6 +1016,39 @@ "nextToken":{"shape":"PaginationToken"} } }, + "ListScrapersRequest":{ + "type":"structure", + "members":{ + "filters":{ + "shape":"ScraperFilters", + "location":"querystring" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"ListScrapersRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListScrapersRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListScrapersResponse":{ + "type":"structure", + "required":["scrapers"], + "members":{ + "scrapers":{"shape":"ScraperSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -881,7 +1140,11 @@ "UPDATE_FAILED" ] }, - "PaginationToken":{"type":"string"}, + "PaginationToken":{ + "type":"string", + "max":1000, + "min":0 + }, "PutAlertManagerDefinitionRequest":{ "type":"structure", "required":[ @@ -1034,6 +1297,120 @@ "type":"list", "member":{"shape":"RuleGroupsNamespaceSummary"} }, + "ScrapeConfiguration":{ + "type":"structure", + "members":{ + "configurationBlob":{"shape":"Blob"} + }, + "union":true + }, + "ScraperAlias":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[0-9A-Za-z][-.0-9A-Z_a-z]*" + }, + "ScraperArn":{"type":"string"}, + "ScraperDescription":{ + "type":"structure", + "required":[ + "scraperId", + "arn", + "roleArn", + "status", + "createdAt", + "lastModifiedAt", + "scrapeConfiguration", + "source", + "destination" + ], + "members":{ + "alias":{"shape":"ScraperAlias"}, + "scraperId":{"shape":"ScraperId"}, + "arn":{"shape":"ScraperArn"}, + "roleArn":{"shape":"IamRoleArn"}, + "status":{"shape":"ScraperStatus"}, + "createdAt":{"shape":"Timestamp"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "tags":{"shape":"TagMap"}, + "statusReason":{"shape":"StatusReason"}, + "scrapeConfiguration":{"shape":"ScrapeConfiguration"}, + "source":{"shape":"Source"}, + "destination":{"shape":"Destination"} + } + }, + "ScraperFilters":{ + "type":"map", + "key":{"shape":"FilterKey"}, + "value":{"shape":"FilterValues"}, + "max":4, + "min":1 + }, + "ScraperId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[0-9A-Za-z][-.0-9A-Z_a-z]*" + }, + "ScraperStatus":{ + "type":"structure", + "required":["statusCode"], + "members":{ + "statusCode":{"shape":"ScraperStatusCode"} + } + }, + "ScraperStatusCode":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "DELETING", + "CREATION_FAILED", + "DELETION_FAILED" + ] + }, + "ScraperSummary":{ + "type":"structure", + "required":[ + "scraperId", + "arn", + "roleArn", + "status", + "createdAt", + "lastModifiedAt", + "source", + "destination" + ], + "members":{ + "alias":{"shape":"ScraperAlias"}, + "scraperId":{"shape":"ScraperId"}, + "arn":{"shape":"ScraperArn"}, + "roleArn":{"shape":"IamRoleArn"}, + "status":{"shape":"ScraperStatus"}, + "createdAt":{"shape":"Timestamp"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "tags":{"shape":"TagMap"}, + "statusReason":{"shape":"StatusReason"}, + "source":{"shape":"Source"}, + "destination":{"shape":"Destination"} + } + }, + "ScraperSummaryList":{ + "type":"list", + "member":{"shape":"ScraperSummary"} + }, + "SecurityGroupId":{ + "type":"string", + "max":255, + "min":0, + "pattern":"sg-[0-9a-z]+" + }, + "SecurityGroupIds":{ + "type":"list", + "member":{"shape":"SecurityGroupId"}, + "max":5, + "min":1 + }, "ServiceQuotaExceededException":{ "type":"structure", "required":[ @@ -1056,7 +1433,31 @@ }, "exception":true }, + "Source":{ + "type":"structure", + "members":{ + "eksConfiguration":{"shape":"EksConfiguration"} + }, + "union":true + }, + "StatusReason":{ + "type":"string", + "max":256, + "min":1 + }, "String":{"type":"string"}, + "SubnetId":{ + "type":"string", + "max":255, + "min":0, + "pattern":"subnet-[0-9a-z]+" + }, + "SubnetIds":{ + "type":"list", + "member":{"shape":"SubnetId"}, + "max":5, + "min":1 + }, "TagKey":{ "type":"string", "max":128, @@ -1238,7 +1639,10 @@ "max":100, "min":1 }, - "WorkspaceArn":{"type":"string"}, + "WorkspaceArn":{ + "type":"string", + "pattern":"arn:aws[-a-z]*:aps:[-a-z0-9]+:[0-9]{12}:workspace/.+" + }, "WorkspaceDescription":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,16 +5,21 @@ "CreateAlertManagerDefinition": "

Create an alert manager definition.

", "CreateLoggingConfiguration": "

Create logging configuration.

", "CreateRuleGroupsNamespace": "

Create a rule group namespace.

", + "CreateScraper": "

Create a scraper.

", "CreateWorkspace": "

Creates a new AMP workspace.

", "DeleteAlertManagerDefinition": "

Deletes an alert manager definition.

", "DeleteLoggingConfiguration": "

Delete logging configuration.

", "DeleteRuleGroupsNamespace": "

Delete a rule groups namespace.

", + "DeleteScraper": "

Deletes a scraper.

", "DeleteWorkspace": "

Deletes an AMP workspace.

", "DescribeAlertManagerDefinition": "

Describes an alert manager definition.

", "DescribeLoggingConfiguration": "

Describes logging configuration.

", "DescribeRuleGroupsNamespace": "

Describe a rule groups namespace.

", + "DescribeScraper": "

Describe an existing scraper.

", "DescribeWorkspace": "

Describes an existing AMP workspace.

", + "GetDefaultScraperConfiguration": "

Gets a default configuration.

", "ListRuleGroupsNamespaces": "

Lists rule groups namespaces.

", + "ListScrapers": "

Lists all scrapers in a customer account, including scrapers being created or deleted. You may provide filters to return a more specific list of results.

", "ListTagsForResource": "

Lists the tags you have assigned to the resource.

", "ListWorkspaces": "

Lists all AMP workspaces, including workspaces being created or deleted.

", "PutAlertManagerDefinition": "

Update an alert manager definition.

", @@ -58,6 +63,25 @@ "AlertManagerDefinitionStatus$statusCode": "

Status code of this definition.

" } }, + "AmpConfiguration": { + "base": "

A representation of an AMP destination.

", + "refs": { + "Destination$ampConfiguration": "

A representation of an AMP destination.

" + } + }, + "Blob": { + "base": null, + "refs": { + "GetDefaultScraperConfigurationResponse$configuration": "

The default configuration.

", + "ScrapeConfiguration$configurationBlob": "

Binary data representing a Prometheus configuration file.

" + } + }, + "ClusterArn": { + "base": "

The ARN of an EKS cluster.

", + "refs": { + "EksConfiguration$clusterArn": "

The ARN of an EKS cluster.

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

Updating or deleting a resource can cause an inconsistent state.

", "refs": { @@ -93,6 +117,16 @@ "refs": { } }, + "CreateScraperRequest": { + "base": "

Represents the input of a CreateScraper operation.

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

Represents the output of a CreateScraper operation.

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

Represents the input of a CreateWorkspace operation.

", "refs": { @@ -118,6 +152,16 @@ "refs": { } }, + "DeleteScraperRequest": { + "base": "

Represents the input of a DeleteScraper operation.

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

Represents the output of a DeleteScraper operation.

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

Represents the input of a DeleteWorkspace operation.

", "refs": { @@ -153,6 +197,16 @@ "refs": { } }, + "DescribeScraperRequest": { + "base": "

Represents the input of a DescribeScraper operation.

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

Represents the output of a DescribeScraper operation.

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

Represents the input of a DescribeWorkspace operation.

", "refs": { @@ -163,16 +217,67 @@ "refs": { } }, + "Destination": { + "base": "

A representation of a destination that a scraper can produce metrics to.

", + "refs": { + "CreateScraperRequest$destination": "

The destination that the scraper will be producing metrics to.

", + "ScraperDescription$destination": "

The destination that the scraper is producing metrics to.

", + "ScraperSummary$destination": "

The destination that the scraper is producing metrics to.

" + } + }, + "EksConfiguration": { + "base": "

A representation of an EKS source.

", + "refs": { + "Source$eksConfiguration": "

A representation of an EKS source.

" + } + }, + "FilterKey": { + "base": "

The name of the key to filter by.

", + "refs": { + "ScraperFilters$key": "

The name of the key to filter by. Currently supported filter keys are 'status', 'sourceArn', 'destinationArn', and 'alias'.

" + } + }, + "FilterValue": { + "base": "

The value of a given key to filter by.

", + "refs": { + "FilterValues$member": null + } + }, + "FilterValues": { + "base": "

A list of scraper filter values.

", + "refs": { + "ScraperFilters$value": "

The values of the given key to filter by.

" + } + }, + "GetDefaultScraperConfigurationRequest": { + "base": "

Represents the input of a GetDefaultScraperConfiguration operation.

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

Represents the output of a GetDefaultScraperConfiguration operation.

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

An ARN identifying an IAM role used by the scraper.

", + "refs": { + "ScraperDescription$roleArn": "

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the scraper to dsicover, collect, and produce metrics on your behalf.

", + "ScraperSummary$roleArn": "

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the scraper to dsicover, collect, and produce metrics on your behalf.

" + } + }, "IdempotencyToken": { "base": "

An identifier used to ensure the idempotency of a write request.

", "refs": { "CreateAlertManagerDefinitionRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "CreateLoggingConfigurationRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "CreateRuleGroupsNamespaceRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", + "CreateScraperRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "CreateWorkspaceRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "DeleteAlertManagerDefinitionRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "DeleteLoggingConfigurationRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "DeleteRuleGroupsNamespaceRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", + "DeleteScraperRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "DeleteWorkspaceRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "PutAlertManagerDefinitionRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", "PutRuleGroupsNamespaceRequest$clientToken": "

Optional, unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

", @@ -208,6 +313,22 @@ "refs": { } }, + "ListScrapersRequest": { + "base": "

Represents the input of a ListScrapers operation.

", + "refs": { + } + }, + "ListScrapersRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListScrapersRequest$maxResults": "

Maximum results to return in response (default=100, maximum=1000).

" + } + }, + "ListScrapersResponse": { + "base": "

Represents the output of a ListScrapers operation.

", + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -267,6 +388,8 @@ "refs": { "ListRuleGroupsNamespacesRequest$nextToken": "

Pagination token to request the next page in a paginated list. This token is obtained from the output of the previous ListRuleGroupsNamespaces request.

", "ListRuleGroupsNamespacesResponse$nextToken": "

Pagination token to use when requesting the next page in this list.

", + "ListScrapersRequest$nextToken": "

Pagination token to request the next page in a paginated list. This token is obtained from the output of the previous ListScrapers request.

", + "ListScrapersResponse$nextToken": "

Pagination token to use when requesting the next page in this list.

", "ListWorkspacesRequest$nextToken": "

Pagination token to request the next page in a paginated list. This token is obtained from the output of the previous ListWorkspaces request.

", "ListWorkspacesResponse$nextToken": "

Pagination token to use when requesting the next page in this list.

" } @@ -360,11 +483,111 @@ "ListRuleGroupsNamespacesResponse$ruleGroupsNamespaces": "

The list of the selected rule groups namespaces.

" } }, + "ScrapeConfiguration": { + "base": "

A representation of a Prometheus configuration file.

", + "refs": { + "CreateScraperRequest$scrapeConfiguration": "

The configuration used to create the scraper.

", + "ScraperDescription$scrapeConfiguration": "

The configuration used to create the scraper.

" + } + }, + "ScraperAlias": { + "base": "

A user-assigned scraper alias.

", + "refs": { + "CreateScraperRequest$alias": "

An optional user-assigned alias for this scraper. This alias is for user reference and does not need to be unique.

", + "ScraperDescription$alias": "

Alias of this scraper.

", + "ScraperSummary$alias": "

Alias of this scraper.

" + } + }, + "ScraperArn": { + "base": "

An ARN identifying a scrape configuration.

", + "refs": { + "CreateScraperResponse$arn": "

The ARN of the scraper that was just created.

", + "ScraperDescription$arn": "

The Amazon Resource Name (ARN) of this scraper.

", + "ScraperSummary$arn": "

The Amazon Resource Name (ARN) of this scraper.

" + } + }, + "ScraperDescription": { + "base": "

Represents the properties of a scraper.

", + "refs": { + "DescribeScraperResponse$scraper": "

The properties of the selected scrapers.

" + } + }, + "ScraperFilters": { + "base": "

A list of scraper filters.

", + "refs": { + "ListScrapersRequest$filters": "

A list of scraper filters.

" + } + }, + "ScraperId": { + "base": "

A scraper ID.

", + "refs": { + "CreateScraperResponse$scraperId": "

The generated ID of the scraper that was just created.

", + "DeleteScraperRequest$scraperId": "

The ID of the scraper to delete.

", + "DeleteScraperResponse$scraperId": "

The ID of the scraper that was deleted.

", + "DescribeScraperRequest$scraperId": "

The IDs of the scraper to describe.

", + "ScraperDescription$scraperId": "

Unique string identifying this scraper.

", + "ScraperSummary$scraperId": "

Unique string identifying this scraper.

" + } + }, + "ScraperStatus": { + "base": "

Represents the status of a scraper.

", + "refs": { + "CreateScraperResponse$status": "

The status of the scraper that was just created (usually CREATING).

", + "DeleteScraperResponse$status": "

The status of the scraper that is being deleted.

", + "ScraperDescription$status": "

The status of this scraper.

", + "ScraperSummary$status": "

The status of this scraper.

" + } + }, + "ScraperStatusCode": { + "base": "

State of a scraper.

", + "refs": { + "ScraperStatus$statusCode": "

Status code of this scraper.

" + } + }, + "ScraperSummary": { + "base": "

Represents a summary of the properties of a scraper.

", + "refs": { + "ScraperSummaryList$member": null + } + }, + "ScraperSummaryList": { + "base": "

A list of scraper summaries.

", + "refs": { + "ListScrapersResponse$scrapers": "

The list of scrapers, filtered down if a set of filters was provided in the request.

" + } + }, + "SecurityGroupId": { + "base": "

ID of a VPC security group.

", + "refs": { + "SecurityGroupIds$member": null + } + }, + "SecurityGroupIds": { + "base": "

A list of security group IDs specified for VPC configuration.

", + "refs": { + "EksConfiguration$securityGroupIds": "

A list of security group IDs specified for VPC configuration.

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

Request would cause a service quota to be exceeded.

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

A representation of a source that a scraper can discover and collect metrics from.

", + "refs": { + "CreateScraperRequest$source": "

The source that the scraper will be discovering and collecting metrics from.

", + "ScraperDescription$source": "

The source that the scraper is discovering and collecting metrics from.

", + "ScraperSummary$source": "

The source that the scraper is discovering and collecting metrics from.

" + } + }, + "StatusReason": { + "base": "

The reason for failure if any.

", + "refs": { + "ScraperDescription$statusReason": "

The reason for failure if any.

", + "ScraperSummary$statusReason": "

The reason for failure if any.

" + } + }, "String": { "base": null, "refs": { @@ -395,6 +618,18 @@ "ValidationExceptionField$message": "

Message describing why the field failed validation.

" } }, + "SubnetId": { + "base": "

ID of a VPC subnet.

", + "refs": { + "SubnetIds$member": null + } + }, + "SubnetIds": { + "base": "

A list of subnet IDs specified for VPC configuration.

", + "refs": { + "EksConfiguration$subnetIds": "

A list of subnet IDs specified for VPC configuration.

" + } + }, "TagKey": { "base": null, "refs": { @@ -413,12 +648,16 @@ "refs": { "CreateRuleGroupsNamespaceRequest$tags": "

Optional, user-provided tags for this rule groups namespace.

", "CreateRuleGroupsNamespaceResponse$tags": "

The tags of this rule groups namespace.

", + "CreateScraperRequest$tags": "

Optional, user-provided tags for this scraper.

", + "CreateScraperResponse$tags": "

The tags of this scraper.

", "CreateWorkspaceRequest$tags": "

Optional, user-provided tags for this workspace.

", "CreateWorkspaceResponse$tags": "

The tags of this workspace.

", "ListTagsForResourceResponse$tags": null, "PutRuleGroupsNamespaceResponse$tags": "

The tags of this rule groups namespace.

", "RuleGroupsNamespaceDescription$tags": "

The tags of this rule groups namespace.

", "RuleGroupsNamespaceSummary$tags": "

The tags of this rule groups namespace.

", + "ScraperDescription$tags": "

The tags of this scraper.

", + "ScraperSummary$tags": "

The tags of this scraper.

", "TagResourceRequest$tags": null, "WorkspaceDescription$tags": "

The tags of this workspace.

", "WorkspaceSummary$tags": "

The tags of this workspace.

" @@ -456,6 +695,10 @@ "RuleGroupsNamespaceDescription$modifiedAt": "

The time when the rule groups namespace was modified.

", "RuleGroupsNamespaceSummary$createdAt": "

The time when the rule groups namespace was created.

", "RuleGroupsNamespaceSummary$modifiedAt": "

The time when the rule groups namespace was modified.

", + "ScraperDescription$createdAt": "

The time when the scraper was created.

", + "ScraperDescription$lastModifiedAt": "

The time when the scraper was last modified.

", + "ScraperSummary$createdAt": "

The time when the scraper was created.

", + "ScraperSummary$lastModifiedAt": "

The time when the scraper was last modified.

", "WorkspaceDescription$createdAt": "

The time when the workspace was created.

", "WorkspaceSummary$createdAt": "

The time when the workspace was created.

" } @@ -527,6 +770,7 @@ "WorkspaceArn": { "base": "

An ARN identifying a Workspace.

", "refs": { + "AmpConfiguration$workspaceArn": "

The ARN of an AMP workspace.

", "CreateWorkspaceResponse$arn": "

The ARN of the workspace that was just created.

", "WorkspaceDescription$arn": "

The Amazon Resource Name (ARN) of this workspace.

", "WorkspaceSummary$arn": "

The AmazonResourceName of this workspace.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://aps-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://aps-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://aps-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://aps-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://aps.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://aps.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://aps.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://aps.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,6 +6,12 @@ "limit_key": "maxResults", "result_key": "ruleGroupsNamespaces" }, + "ListScrapers": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "scrapers" + }, "ListWorkspaces": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amp/2020-08-01/waiters-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amp/2020-08-01/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,39 @@ { "version" : 2, "waiters" : { + "ScraperActive" : { + "description" : "Wait until a scraper reaches ACTIVE status", + "delay" : 2, + "maxAttempts" : 60, + "operation" : "DescribeScraper", + "acceptors" : [ { + "matcher" : "path", + "argument" : "scraper.status.statusCode", + "state" : "success", + "expected" : "ACTIVE" + }, { + "matcher" : "path", + "argument" : "scraper.status.statusCode", + "state" : "failure", + "expected" : "CREATION_FAILED" + } ] + }, + "ScraperDeleted" : { + "description" : "Wait until a scraper reaches DELETED status", + "delay" : 2, + "maxAttempts" : 60, + "operation" : "DescribeScraper", + "acceptors" : [ { + "matcher" : "error", + "state" : "success", + "expected" : "ResourceNotFoundException" + }, { + "matcher" : "path", + "argument" : "scraper.status.statusCode", + "state" : "failure", + "expected" : "DELETION_FAILED" + } ] + }, "WorkspaceActive" : { "description" : "Wait until a workspace reaches ACTIVE status", "delay" : 2, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -735,6 +735,12 @@ "max":1000, "pattern":"^$|^arn:aws:iam::\\d{12}:role.+" }, + "Backend":{ + "type":"structure", + "members":{ + "stackArn":{"shape":"StackArn"} + } + }, "BackendEnvironment":{ "type":"structure", "required":[ @@ -824,7 +830,8 @@ "pullRequestEnvironmentName":{"shape":"PullRequestEnvironmentName"}, "destinationBranch":{"shape":"BranchName"}, "sourceBranch":{"shape":"BranchName"}, - "backendEnvironmentArn":{"shape":"BackendEnvironmentArn"} + "backendEnvironmentArn":{"shape":"BackendEnvironmentArn"}, + "backend":{"shape":"Backend"} } }, "BranchArn":{ @@ -957,7 +964,8 @@ "displayName":{"shape":"DisplayName"}, "enablePullRequestPreview":{"shape":"EnablePullRequestPreview"}, "pullRequestEnvironmentName":{"shape":"PullRequestEnvironmentName"}, - "backendEnvironmentArn":{"shape":"BackendEnvironmentArn"} + "backendEnvironmentArn":{"shape":"BackendEnvironmentArn"}, + "backend":{"shape":"Backend"} } }, "CreateBranchResult":{ @@ -2010,6 +2018,12 @@ "max":3000, "pattern":"(?s).*" }, + "StackArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws:cloudformation:[a-z0-9-]+:\\d{12}:stack/.+/.+$" + }, "StackName":{ "type":"string", "max":255, @@ -2370,7 +2384,8 @@ "displayName":{"shape":"DisplayName"}, "enablePullRequestPreview":{"shape":"EnablePullRequestPreview"}, "pullRequestEnvironmentName":{"shape":"PullRequestEnvironmentName"}, - "backendEnvironmentArn":{"shape":"BackendEnvironmentArn"} + "backendEnvironmentArn":{"shape":"BackendEnvironmentArn"}, + "backend":{"shape":"Backend"} } }, "UpdateBranchResult":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,51 +1,51 @@ { "version": "2.0", - "service": "

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

", + "service": "

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

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

Creates a new Amplify app.

", - "CreateBackendEnvironment": "

Creates a new backend environment for an Amplify app.

", + "CreateApp": "

Creates a new Amplify app.

", + "CreateBackendEnvironment": "

Creates a new backend environment for an Amplify app.

", "CreateBranch": "

Creates a new branch for an Amplify app.

", - "CreateDeployment": "

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

", + "CreateDeployment": "

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

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

", "CreateDomainAssociation": "

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

", - "CreateWebhook": "

Creates a new webhook on an Amplify app.

", - "DeleteApp": "

Deletes an existing Amplify app specified by an app ID.

", - "DeleteBackendEnvironment": "

Deletes a backend environment for an Amplify app.

", + "CreateWebhook": "

Creates a new webhook on an Amplify app.

", + "DeleteApp": "

Deletes an existing Amplify app specified by an app ID.

", + "DeleteBackendEnvironment": "

Deletes a backend environment for an Amplify app.

", "DeleteBranch": "

Deletes a branch for an Amplify app.

", "DeleteDomainAssociation": "

Deletes a domain association for an Amplify app.

", "DeleteJob": "

Deletes a job for a branch of an Amplify app.

", - "DeleteWebhook": "

Deletes a webhook.

", - "GenerateAccessLogs": "

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

", - "GetApp": "

Returns an existing Amplify app by appID.

", - "GetArtifactUrl": "

Returns the artifact info that corresponds to an artifact id.

", - "GetBackendEnvironment": "

Returns a backend environment for an Amplify app.

", + "DeleteWebhook": "

Deletes a webhook.

", + "GenerateAccessLogs": "

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

", + "GetApp": "

Returns an existing Amplify app specified by an app ID.

", + "GetArtifactUrl": "

Returns the artifact info that corresponds to an artifact id.

", + "GetBackendEnvironment": "

Returns a backend environment for an Amplify app.

", "GetBranch": "

Returns a branch for an Amplify app.

", "GetDomainAssociation": "

Returns the domain information for an Amplify app.

", "GetJob": "

Returns a job for a branch of an Amplify app.

", - "GetWebhook": "

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

", - "ListApps": "

Returns a list of the existing Amplify apps.

", - "ListArtifacts": "

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

", - "ListBackendEnvironments": "

Lists the backend environments for an Amplify app.

", + "GetWebhook": "

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

", + "ListApps": "

Returns a list of the existing Amplify apps.

", + "ListArtifacts": "

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

", + "ListBackendEnvironments": "

Lists the backend environments for an Amplify app.

", "ListBranches": "

Lists the branches of an Amplify app.

", "ListDomainAssociations": "

Returns the domain associations for an Amplify app.

", "ListJobs": "

Lists the jobs for a branch of an Amplify app.

", - "ListTagsForResource": "

Returns a list of tags for a specified Amazon Resource Name (ARN).

", - "ListWebhooks": "

Returns a list of webhooks for an Amplify app.

", - "StartDeployment": "

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

", + "ListTagsForResource": "

Returns a list of tags for a specified Amazon Resource Name (ARN).

", + "ListWebhooks": "

Returns a list of webhooks for an Amplify app.

", + "StartDeployment": "

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

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

", "StartJob": "

Starts a new job for a branch of an Amplify app.

", "StopJob": "

Stops a job that is in progress for a branch of an Amplify app.

", - "TagResource": "

Tags the resource with a tag key and value.

", - "UntagResource": "

Untags a resource with a specified Amazon Resource Name (ARN).

", - "UpdateApp": "

Updates an existing Amplify app.

", + "TagResource": "

Tags the resource with a tag key and value.

", + "UntagResource": "

Untags a resource with a specified Amazon Resource Name (ARN).

", + "UpdateApp": "

Updates an existing Amplify app.

", "UpdateBranch": "

Updates a branch for an Amplify app.

", "UpdateDomainAssociation": "

Creates a new domain association for an Amplify app.

", - "UpdateWebhook": "

Updates a webhook.

" + "UpdateWebhook": "

Updates a webhook.

" }, "shapes": { "AccessToken": { "base": null, "refs": { - "CreateAppRequest$accessToken": "

The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken.

You must specify either accessToken or oauthToken when you create a new app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

", - "UpdateAppRequest$accessToken": "

The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken.

You must specify either accessToken or oauthToken when you update an app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

" + "CreateAppRequest$accessToken": "

The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken.

You must specify either accessToken or oauthToken when you create a new app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

", + "UpdateAppRequest$accessToken": "

The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken.

You must specify either accessToken or oauthToken when you update an app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

" } }, "ActiveJobId": { @@ -55,51 +55,51 @@ } }, "App": { - "base": "

Represents the different branches of a repository for building, deploying, and hosting an Amplify app.

", + "base": "

Represents the different branches of a repository for building, deploying, and hosting an Amplify app.

", "refs": { "Apps$member": null, "CreateAppResult$app": null, "DeleteAppResult$app": null, "GetAppResult$app": null, - "UpdateAppResult$app": "

Represents the updated Amplify app.

" + "UpdateAppResult$app": "

Represents the updated Amplify app.

" } }, "AppArn": { "base": null, "refs": { - "App$appArn": "

The Amazon Resource Name (ARN) of the Amplify app.

" + "App$appArn": "

The Amazon Resource Name (ARN) of the Amplify app.

" } }, "AppId": { "base": null, "refs": { - "App$appId": "

The unique ID of the Amplify app.

", - "CreateBackendEnvironmentRequest$appId": "

The unique ID for an Amplify app.

", + "App$appId": "

The unique ID of the Amplify app.

", + "CreateBackendEnvironmentRequest$appId": "

The unique ID for an Amplify app.

", "CreateBranchRequest$appId": "

The unique ID for an Amplify app.

", "CreateDeploymentRequest$appId": "

The unique ID for an Amplify app.

", "CreateDomainAssociationRequest$appId": "

The unique ID for an Amplify app.

", - "CreateWebhookRequest$appId": "

The unique ID for an Amplify app.

", - "DeleteAppRequest$appId": "

The unique ID for an Amplify app.

", - "DeleteBackendEnvironmentRequest$appId": "

The unique ID of an Amplify app.

", + "CreateWebhookRequest$appId": "

The unique ID for an Amplify app.

", + "DeleteAppRequest$appId": "

The unique ID for an Amplify app.

", + "DeleteBackendEnvironmentRequest$appId": "

The unique ID of an Amplify app.

", "DeleteBranchRequest$appId": "

The unique ID for an Amplify app.

", "DeleteDomainAssociationRequest$appId": "

The unique id for an Amplify app.

", "DeleteJobRequest$appId": "

The unique ID for an Amplify app.

", - "GenerateAccessLogsRequest$appId": "

The unique ID for an Amplify app.

", - "GetAppRequest$appId": "

The unique ID for an Amplify app.

", - "GetBackendEnvironmentRequest$appId": "

The unique id for an Amplify app.

", + "GenerateAccessLogsRequest$appId": "

The unique ID for an Amplify app.

", + "GetAppRequest$appId": "

The unique ID for an Amplify app.

", + "GetBackendEnvironmentRequest$appId": "

The unique id for an Amplify app.

", "GetBranchRequest$appId": "

The unique ID for an Amplify app.

", "GetDomainAssociationRequest$appId": "

The unique id for an Amplify app.

", - "GetJobRequest$appId": "

The unique ID for an Amplify app.

", - "ListArtifactsRequest$appId": "

The unique ID for an Amplify app.

", - "ListBackendEnvironmentsRequest$appId": "

The unique ID for an Amplify app.

", - "ListBranchesRequest$appId": "

The unique ID for an Amplify app.

", + "GetJobRequest$appId": "

The unique ID for an Amplify app.

", + "ListArtifactsRequest$appId": "

The unique ID for an Amplify app.

", + "ListBackendEnvironmentsRequest$appId": "

The unique ID for an Amplify app.

", + "ListBranchesRequest$appId": "

The unique ID for an Amplify app.

", "ListDomainAssociationsRequest$appId": "

The unique ID for an Amplify app.

", "ListJobsRequest$appId": "

The unique ID for an Amplify app.

", - "ListWebhooksRequest$appId": "

The unique ID for an Amplify app.

", - "StartDeploymentRequest$appId": "

The unique ID for an Amplify app.

", - "StartJobRequest$appId": "

The unique ID for an Amplify app.

", + "ListWebhooksRequest$appId": "

The unique ID for an Amplify app.

", + "StartDeploymentRequest$appId": "

The unique ID for an Amplify app.

", + "StartJobRequest$appId": "

The unique ID for an Amplify app.

", "StopJobRequest$appId": "

The unique ID for an Amplify app.

", - "UpdateAppRequest$appId": "

The unique ID for an Amplify app.

", + "UpdateAppRequest$appId": "

The unique ID for an Amplify app.

", "UpdateBranchRequest$appId": "

The unique ID for an Amplify app.

", "UpdateDomainAssociationRequest$appId": "

The unique ID for an Amplify app.

" } @@ -107,11 +107,11 @@ "Apps": { "base": null, "refs": { - "ListAppsResult$apps": "

A list of Amplify apps.

" + "ListAppsResult$apps": "

A list of Amplify apps.

" } }, "Artifact": { - "base": "

Describes an artifact.

", + "base": "

Describes an artifact.

", "refs": { "Artifacts$member": null } @@ -119,27 +119,27 @@ "ArtifactFileName": { "base": null, "refs": { - "Artifact$artifactFileName": "

The file name for the artifact.

" + "Artifact$artifactFileName": "

The file name for the artifact.

" } }, "ArtifactId": { "base": null, "refs": { - "Artifact$artifactId": "

The unique ID for the artifact.

", - "GetArtifactUrlRequest$artifactId": "

The unique ID for an artifact.

", - "GetArtifactUrlResult$artifactId": "

The unique ID for an artifact.

" + "Artifact$artifactId": "

The unique ID for the artifact.

", + "GetArtifactUrlRequest$artifactId": "

The unique ID for an artifact.

", + "GetArtifactUrlResult$artifactId": "

The unique ID for an artifact.

" } }, "ArtifactUrl": { "base": null, "refs": { - "GetArtifactUrlResult$artifactUrl": "

The presigned URL for the artifact.

" + "GetArtifactUrlResult$artifactUrl": "

The presigned URL for the artifact.

" } }, "Artifacts": { "base": null, "refs": { - "ListArtifactsResult$artifacts": "

A list of artifacts.

" + "ListArtifactsResult$artifacts": "

A list of artifacts.

" } }, "ArtifactsUrl": { @@ -161,11 +161,11 @@ } }, "AutoBranchCreationConfig": { - "base": "

Describes the automated branch creation configuration.

", + "base": "

Describes the automated branch creation configuration.

", "refs": { - "App$autoBranchCreationConfig": "

Describes the automated branch creation configuration for the Amplify app.

", - "CreateAppRequest$autoBranchCreationConfig": "

The automated branch creation configuration for an Amplify app.

", - "UpdateAppRequest$autoBranchCreationConfig": "

The automated branch creation configuration for an Amplify app.

" + "App$autoBranchCreationConfig": "

Describes the automated branch creation configuration for the Amplify app.

", + "CreateAppRequest$autoBranchCreationConfig": "

The automated branch creation configuration for an Amplify app.

", + "UpdateAppRequest$autoBranchCreationConfig": "

The automated branch creation configuration for an Amplify app.

" } }, "AutoBranchCreationPattern": { @@ -177,9 +177,9 @@ "AutoBranchCreationPatterns": { "base": null, "refs": { - "App$autoBranchCreationPatterns": "

Describes the automated branch creation glob patterns for the Amplify app.

", - "CreateAppRequest$autoBranchCreationPatterns": "

The automated branch creation glob patterns for an Amplify app.

", - "UpdateAppRequest$autoBranchCreationPatterns": "

Describes the automated branch creation glob patterns for an Amplify app.

" + "App$autoBranchCreationPatterns": "

Describes the automated branch creation glob patterns for the Amplify app.

", + "CreateAppRequest$autoBranchCreationPatterns": "

The automated branch creation glob patterns for an Amplify app.

", + "UpdateAppRequest$autoBranchCreationPatterns": "

Describes the automated branch creation glob patterns for an Amplify app.

" } }, "AutoSubDomainCreationPattern": { @@ -204,44 +204,52 @@ "UpdateDomainAssociationRequest$autoSubDomainIAMRole": "

The required AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) for automatically creating subdomains.

" } }, + "Backend": { + "base": "

Describes the backend properties associated with an Amplify Branch.

", + "refs": { + "Branch$backend": null, + "CreateBranchRequest$backend": "

The backend for a Branch of an Amplify app. Use for a backend created from an CloudFormation stack.

", + "UpdateBranchRequest$backend": "

The backend for a Branch of an Amplify app. Use for a backend created from an CloudFormation stack.

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

Describes the backend environment for an Amplify app.

", + "base": "

Describes the backend environment for an Amplify app.

", "refs": { "BackendEnvironments$member": null, - "CreateBackendEnvironmentResult$backendEnvironment": "

Describes the backend environment for an Amplify app.

", - "DeleteBackendEnvironmentResult$backendEnvironment": "

Describes the backend environment for an Amplify app.

", - "GetBackendEnvironmentResult$backendEnvironment": "

Describes the backend environment for an Amplify app.

" + "CreateBackendEnvironmentResult$backendEnvironment": "

Describes the backend environment for an Amplify app.

", + "DeleteBackendEnvironmentResult$backendEnvironment": "

Describes the backend environment for an Amplify app.

", + "GetBackendEnvironmentResult$backendEnvironment": "

Describes the backend environment for an Amplify app.

" } }, "BackendEnvironmentArn": { "base": null, "refs": { - "BackendEnvironment$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

", + "BackendEnvironment$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

", "Branch$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

", - "CreateBranchRequest$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

", - "UpdateBranchRequest$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

" + "CreateBranchRequest$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

", + "UpdateBranchRequest$backendEnvironmentArn": "

The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app.

" } }, "BackendEnvironments": { "base": null, "refs": { - "ListBackendEnvironmentsResult$backendEnvironments": "

The list of backend environments for an Amplify app.

" + "ListBackendEnvironmentsResult$backendEnvironments": "

The list of backend environments for an Amplify app.

" } }, "BadRequestException": { - "base": "

A request contains unexpected data.

", + "base": "

A request contains unexpected data.

", "refs": { } }, "BasicAuthCredentials": { "base": null, "refs": { - "App$basicAuthCredentials": "

The basic authorization credentials for branches for the Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", - "AutoBranchCreationConfig$basicAuthCredentials": "

The basic authorization credentials for the autocreated branch. You must base64-encode the authorization credentials and provide them in the format user:password.

", + "App$basicAuthCredentials": "

The basic authorization credentials for branches for the Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", + "AutoBranchCreationConfig$basicAuthCredentials": "

The basic authorization credentials for the autocreated branch. You must base64-encode the authorization credentials and provide them in the format user:password.

", "Branch$basicAuthCredentials": "

The basic authorization credentials for a branch of an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", - "CreateAppRequest$basicAuthCredentials": "

The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", + "CreateAppRequest$basicAuthCredentials": "

The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", "CreateBranchRequest$basicAuthCredentials": "

The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format user:password.

", - "UpdateAppRequest$basicAuthCredentials": "

The basic authorization credentials for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", + "UpdateAppRequest$basicAuthCredentials": "

The basic authorization credentials for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

", "UpdateBranchRequest$basicAuthCredentials": "

The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format user:password.

" } }, @@ -250,7 +258,7 @@ "refs": { "Branches$member": null, "CreateBranchResult$branch": "

Describes the branch for an Amplify app, which maps to a third-party repository branch.

", - "DeleteBranchResult$branch": "

The branch for an Amplify app, which maps to a third-party repository branch.

", + "DeleteBranchResult$branch": "

The branch for an Amplify app, which maps to a third-party repository branch.

", "GetBranchResult$branch": null, "UpdateBranchResult$branch": "

The branch for an Amplify app, which maps to a third-party repository branch.

" } @@ -267,23 +275,23 @@ "Branch$branchName": "

The name for the branch that is part of an Amplify app.

", "Branch$destinationBranch": "

The destination branch if the branch is a pull request branch.

", "Branch$sourceBranch": "

The source branch if the branch is a pull request branch.

", - "CreateBranchRequest$branchName": "

The name for the branch.

", - "CreateDeploymentRequest$branchName": "

The name for the branch, for the job.

", - "CreateWebhookRequest$branchName": "

The name for a branch that is part of an Amplify app.

", - "DeleteBranchRequest$branchName": "

The name for the branch.

", - "DeleteJobRequest$branchName": "

The name for the branch, for the job.

", - "GetBranchRequest$branchName": "

The name for the branch.

", - "GetJobRequest$branchName": "

The branch name for the job.

", - "ListArtifactsRequest$branchName": "

The name of a branch that is part of an Amplify app.

", - "ListJobsRequest$branchName": "

The name for a branch.

", - "ProductionBranch$branchName": "

The branch name for the production branch.

", - "StartDeploymentRequest$branchName": "

The name for the branch, for the job.

", - "StartJobRequest$branchName": "

The branch name for the job.

", - "StopJobRequest$branchName": "

The name for the branch, for the job.

", + "CreateBranchRequest$branchName": "

The name for the branch.

", + "CreateDeploymentRequest$branchName": "

The name of the branch to use for the job.

", + "CreateWebhookRequest$branchName": "

The name for a branch that is part of an Amplify app.

", + "DeleteBranchRequest$branchName": "

The name of the branch.

", + "DeleteJobRequest$branchName": "

The name of the branch to use for the job.

", + "GetBranchRequest$branchName": "

The name of the branch.

", + "GetJobRequest$branchName": "

The name of the branch to use for the job.

", + "ListArtifactsRequest$branchName": "

The name of a branch that is part of an Amplify app.

", + "ListJobsRequest$branchName": "

The name of the branch to use for the request.

", + "ProductionBranch$branchName": "

The branch name for the production branch.

", + "StartDeploymentRequest$branchName": "

The name of the branch to use for the job.

", + "StartJobRequest$branchName": "

The name of the branch to use for the job.

", + "StopJobRequest$branchName": "

The name of the branch to use for the stop job request.

", "SubDomainSetting$branchName": "

The branch name setting for the subdomain.

", - "UpdateBranchRequest$branchName": "

The name for the branch.

", - "UpdateWebhookRequest$branchName": "

The name for a branch that is part of an Amplify app.

", - "Webhook$branchName": "

The name for a branch that is part of an Amplify app.

" + "UpdateBranchRequest$branchName": "

The name of the branch.

", + "UpdateWebhookRequest$branchName": "

The name for a branch that is part of an Amplify app.

", + "Webhook$branchName": "

The name for a branch that is part of an Amplify app.

" } }, "Branches": { @@ -293,14 +301,14 @@ } }, "BuildSpec": { - "base": "

The build specification (build spec) file for an Amplify app build.

", + "base": "

The build specification (build spec) file for an Amplify app build.

", "refs": { - "App$buildSpec": "

Describes the content of the build specification (build spec) for the Amplify app.

", - "AutoBranchCreationConfig$buildSpec": "

The build specification (build spec) for the autocreated branch.

", + "App$buildSpec": "

Describes the content of the build specification (build spec) for the Amplify app.

", + "AutoBranchCreationConfig$buildSpec": "

The build specification (build spec) for the autocreated branch.

", "Branch$buildSpec": "

The build specification (build spec) content for the branch of an Amplify app.

", - "CreateAppRequest$buildSpec": "

The build specification (build spec) for an Amplify app.

", + "CreateAppRequest$buildSpec": "

The build specification (build spec) for an Amplify app.

", "CreateBranchRequest$buildSpec": "

The build specification (build spec) for the branch.

", - "UpdateAppRequest$buildSpec": "

The build specification (build spec) for an Amplify app.

", + "UpdateAppRequest$buildSpec": "

The build specification (build spec) for an Amplify app.

", "UpdateBranchRequest$buildSpec": "

The build specification (build spec) for the branch.

" } }, @@ -340,7 +348,7 @@ "Condition": { "base": null, "refs": { - "CustomRule$condition": "

The condition for a URL rewrite or redirect rule, such as a country code.

" + "CustomRule$condition": "

The condition for a URL rewrite or redirect rule, such as a country code.

" } }, "Context": { @@ -350,7 +358,7 @@ } }, "CreateAppRequest": { - "base": "

The request structure used to create apps in Amplify.

", + "base": "

The request structure used to create apps in Amplify.

", "refs": { } }, @@ -360,12 +368,12 @@ } }, "CreateBackendEnvironmentRequest": { - "base": "

The request structure for the backend environment create request.

", + "base": "

The request structure for the backend environment create request.

", "refs": { } }, "CreateBackendEnvironmentResult": { - "base": "

The result structure for the create backend environment request.

", + "base": "

The result structure for the create backend environment request.

", "refs": { } }, @@ -402,19 +410,19 @@ "CreateTime": { "base": null, "refs": { - "App$createTime": "

Creates a date and time for the Amplify app.

", - "BackendEnvironment$createTime": "

The creation date and time for a backend environment that is part of an Amplify app.

", + "App$createTime": "

Creates a date and time for the Amplify app.

", + "BackendEnvironment$createTime": "

The creation date and time for a backend environment that is part of an Amplify app.

", "Branch$createTime": "

The creation date and time for a branch that is part of an Amplify app.

", - "Webhook$createTime": "

The create date and time for a webhook.

" + "Webhook$createTime": "

The create date and time for a webhook.

" } }, "CreateWebhookRequest": { - "base": "

The request structure for the create webhook request.

", + "base": "

The request structure for the create webhook request.

", "refs": { } }, "CreateWebhookResult": { - "base": "

The result structure for the create webhook request.

", + "base": "

The result structure for the create webhook request.

", "refs": { } }, @@ -439,7 +447,7 @@ } }, "CustomRule": { - "base": "

Describes a custom rewrite or redirect rule.

", + "base": "

Describes a custom rewrite or redirect rule.

", "refs": { "CustomRules$member": null } @@ -447,9 +455,9 @@ "CustomRules": { "base": null, "refs": { - "App$customRules": "

Describes the custom redirect and rewrite rules for the Amplify app.

", - "CreateAppRequest$customRules": "

The custom rewrite and redirect rules for an Amplify app.

", - "UpdateAppRequest$customRules": "

The custom redirect and rewrite rules for an Amplify app.

" + "App$customRules": "

Describes the custom redirect and rewrite rules for the Amplify app.

", + "CreateAppRequest$customRules": "

The custom rewrite and redirect rules for an Amplify app.

", + "UpdateAppRequest$customRules": "

The custom redirect and rewrite rules for an Amplify app.

" } }, "DNSRecord": { @@ -461,26 +469,26 @@ "DefaultDomain": { "base": null, "refs": { - "App$defaultDomain": "

The default domain for the Amplify app.

" + "App$defaultDomain": "

The default domain for the Amplify app.

" } }, "DeleteAppRequest": { - "base": "

Describes the request structure for the delete app request.

", + "base": "

Describes the request structure for the delete app request.

", "refs": { } }, "DeleteAppResult": { - "base": "

The result structure for the delete app request.

", + "base": "

The result structure for the delete app request.

", "refs": { } }, "DeleteBackendEnvironmentRequest": { - "base": "

The request structure for the delete backend environment request.

", + "base": "

The request structure for the delete backend environment request.

", "refs": { } }, "DeleteBackendEnvironmentResult": { - "base": "

The result structure of the delete backend environment result.

", + "base": "

The result structure of the delete backend environment result.

", "refs": { } }, @@ -490,7 +498,7 @@ } }, "DeleteBranchResult": { - "base": "

The result structure for the delete branch request.

", + "base": "

The result structure for the delete branch request.

", "refs": { } }, @@ -515,39 +523,39 @@ } }, "DeleteWebhookRequest": { - "base": "

The request structure for the delete webhook request.

", + "base": "

The request structure for the delete webhook request.

", "refs": { } }, "DeleteWebhookResult": { - "base": "

The result structure for the delete webhook request.

", + "base": "

The result structure for the delete webhook request.

", "refs": { } }, "DependentServiceFailureException": { - "base": "

An operation failed because a dependent service threw an exception.

", + "base": "

An operation failed because a dependent service threw an exception.

", "refs": { } }, "DeploymentArtifacts": { "base": null, "refs": { - "BackendEnvironment$deploymentArtifacts": "

The name of deployment artifacts.

", - "CreateBackendEnvironmentRequest$deploymentArtifacts": "

The name of deployment artifacts.

" + "BackendEnvironment$deploymentArtifacts": "

The name of deployment artifacts.

", + "CreateBackendEnvironmentRequest$deploymentArtifacts": "

The name of deployment artifacts.

" } }, "Description": { "base": null, "refs": { - "App$description": "

The description for the Amplify app.

", + "App$description": "

The description for the Amplify app.

", "Branch$description": "

The description for the branch that is part of an Amplify app.

", - "CreateAppRequest$description": "

The description for an Amplify app.

", - "CreateBranchRequest$description": "

The description for the branch.

", - "CreateWebhookRequest$description": "

The description for a webhook.

", - "UpdateAppRequest$description": "

The description for an Amplify app.

", + "CreateAppRequest$description": "

The description of the Amplify app.

", + "CreateBranchRequest$description": "

The description for the branch.

", + "CreateWebhookRequest$description": "

The description for a webhook.

", + "UpdateAppRequest$description": "

The description for an Amplify app.

", "UpdateBranchRequest$description": "

The description for the branch.

", - "UpdateWebhookRequest$description": "

The description for a webhook.

", - "Webhook$description": "

The description for a webhook.

" + "UpdateWebhookRequest$description": "

The description for a webhook.

", + "Webhook$description": "

The description for a webhook.

" } }, "DisplayName": { @@ -586,7 +594,7 @@ "CreateDomainAssociationRequest$domainName": "

The domain name for the domain association.

", "DeleteDomainAssociationRequest$domainName": "

The name of the domain.

", "DomainAssociation$domainName": "

The name of the domain.

", - "GenerateAccessLogsRequest$domainName": "

The name of the domain.

", + "GenerateAccessLogsRequest$domainName": "

The name of the domain.

", "GetDomainAssociationRequest$domainName": "

The name of the domain.

", "UpdateDomainAssociationRequest$domainName": "

The name of the domain.

" } @@ -606,18 +614,18 @@ "EnableAutoBranchCreation": { "base": null, "refs": { - "App$enableAutoBranchCreation": "

Enables automated branch creation for the Amplify app.

", - "CreateAppRequest$enableAutoBranchCreation": "

Enables automated branch creation for an Amplify app.

", - "UpdateAppRequest$enableAutoBranchCreation": "

Enables automated branch creation for an Amplify app.

" + "App$enableAutoBranchCreation": "

Enables automated branch creation for the Amplify app.

", + "CreateAppRequest$enableAutoBranchCreation": "

Enables automated branch creation for an Amplify app.

", + "UpdateAppRequest$enableAutoBranchCreation": "

Enables automated branch creation for an Amplify app.

" } }, "EnableAutoBuild": { "base": null, "refs": { - "AutoBranchCreationConfig$enableAutoBuild": "

Enables auto building for the autocreated branch.

", + "AutoBranchCreationConfig$enableAutoBuild": "

Enables auto building for the autocreated branch.

", "Branch$enableAutoBuild": "

Enables auto-building on push for a branch of an Amplify app.

", "CreateBranchRequest$enableAutoBuild": "

Enables auto building for the branch.

", - "UpdateAppRequest$enableBranchAutoBuild": "

Enables branch auto-building for an Amplify app.

", + "UpdateAppRequest$enableBranchAutoBuild": "

Enables branch auto-building for an Amplify app.

", "UpdateBranchRequest$enableAutoBuild": "

Enables auto building for the branch.

" } }, @@ -632,28 +640,28 @@ "EnableBasicAuth": { "base": null, "refs": { - "App$enableBasicAuth": "

Enables basic authorization for the Amplify app's branches.

", - "AutoBranchCreationConfig$enableBasicAuth": "

Enables basic authorization for the autocreated branch.

", + "App$enableBasicAuth": "

Enables basic authorization for the Amplify app's branches.

", + "AutoBranchCreationConfig$enableBasicAuth": "

Enables basic authorization for the autocreated branch.

", "Branch$enableBasicAuth": "

Enables basic authorization for a branch of an Amplify app.

", - "CreateAppRequest$enableBasicAuth": "

Enables basic authorization for an Amplify app. This will apply to all branches that are part of this app.

", + "CreateAppRequest$enableBasicAuth": "

Enables basic authorization for an Amplify app. This will apply to all branches that are part of this app.

", "CreateBranchRequest$enableBasicAuth": "

Enables basic authorization for the branch.

", - "UpdateAppRequest$enableBasicAuth": "

Enables basic authorization for an Amplify app.

", + "UpdateAppRequest$enableBasicAuth": "

Enables basic authorization for an Amplify app.

", "UpdateBranchRequest$enableBasicAuth": "

Enables basic authorization for the branch.

" } }, "EnableBranchAutoBuild": { "base": null, "refs": { - "App$enableBranchAutoBuild": "

Enables the auto-building of branches for the Amplify app.

", - "CreateAppRequest$enableBranchAutoBuild": "

Enables the auto building of branches for an Amplify app.

" + "App$enableBranchAutoBuild": "

Enables the auto-building of branches for the Amplify app.

", + "CreateAppRequest$enableBranchAutoBuild": "

Enables the auto building of branches for an Amplify app.

" } }, "EnableBranchAutoDeletion": { "base": null, "refs": { - "App$enableBranchAutoDeletion": "

Automatically disconnect a branch in the Amplify Console when you delete a branch from your Git repository.

", - "CreateAppRequest$enableBranchAutoDeletion": "

Automatically disconnects a branch in the Amplify Console when you delete a branch from your Git repository.

", - "UpdateAppRequest$enableBranchAutoDeletion": "

Automatically disconnects a branch in the Amplify Console when you delete a branch from your Git repository.

" + "App$enableBranchAutoDeletion": "

Automatically disconnect a branch in the Amplify console when you delete a branch from your Git repository.

", + "CreateAppRequest$enableBranchAutoDeletion": "

Automatically disconnects a branch in the Amplify console when you delete a branch from your Git repository.

", + "UpdateAppRequest$enableBranchAutoDeletion": "

Automatically disconnects a branch in the Amplify console when you delete a branch from your Git repository.

" } }, "EnableNotification": { @@ -676,7 +684,7 @@ "EnablePullRequestPreview": { "base": null, "refs": { - "AutoBranchCreationConfig$enablePullRequestPreview": "

Enables pull request previews for the autocreated branch.

", + "AutoBranchCreationConfig$enablePullRequestPreview": "

Enables pull request previews for the autocreated branch.

", "Branch$enablePullRequestPreview": "

Enables pull request previews for the branch.

", "CreateBranchRequest$enablePullRequestPreview": "

Enables pull request previews for this branch.

", "UpdateBranchRequest$enablePullRequestPreview": "

Enables pull request previews for this branch.

" @@ -685,7 +693,7 @@ "EndTime": { "base": null, "refs": { - "GenerateAccessLogsRequest$endTime": "

The time at which the logs should end. The time range specified is inclusive of the end time.

", + "GenerateAccessLogsRequest$endTime": "

The time at which the logs should end. The time range specified is inclusive of the end time.

", "JobSummary$endTime": "

The end date and time for the job.

", "Step$endTime": "

The end date and time of the execution step.

" } @@ -705,22 +713,22 @@ "EnvironmentName": { "base": null, "refs": { - "BackendEnvironment$environmentName": "

The name for a backend environment that is part of an Amplify app.

", - "CreateBackendEnvironmentRequest$environmentName": "

The name for the backend environment.

", - "DeleteBackendEnvironmentRequest$environmentName": "

The name of a backend environment of an Amplify app.

", - "GetBackendEnvironmentRequest$environmentName": "

The name for the backend environment.

", - "ListBackendEnvironmentsRequest$environmentName": "

The name of the backend environment

" + "BackendEnvironment$environmentName": "

The name for a backend environment that is part of an Amplify app.

", + "CreateBackendEnvironmentRequest$environmentName": "

The name for the backend environment.

", + "DeleteBackendEnvironmentRequest$environmentName": "

The name of a backend environment of an Amplify app.

", + "GetBackendEnvironmentRequest$environmentName": "

The name for the backend environment.

", + "ListBackendEnvironmentsRequest$environmentName": "

The name of the backend environment

" } }, "EnvironmentVariables": { "base": null, "refs": { - "App$environmentVariables": "

The environment variables for the Amplify app.

", - "AutoBranchCreationConfig$environmentVariables": "

The environment variables for the autocreated branch.

", + "App$environmentVariables": "

The environment variables for the Amplify app.

For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide.

", + "AutoBranchCreationConfig$environmentVariables": "

The environment variables for the autocreated branch.

", "Branch$environmentVariables": "

The environment variables specific to a branch of an Amplify app.

", - "CreateAppRequest$environmentVariables": "

The environment variables map for an Amplify app.

", + "CreateAppRequest$environmentVariables": "

The environment variables map for an Amplify app.

For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide.

", "CreateBranchRequest$environmentVariables": "

The environment variables for the branch.

", - "UpdateAppRequest$environmentVariables": "

The environment variables for an Amplify app.

", + "UpdateAppRequest$environmentVariables": "

The environment variables for an Amplify app.

", "UpdateBranchRequest$environmentVariables": "

The environment variables for the branch.

" } }, @@ -758,24 +766,24 @@ "Framework": { "base": null, "refs": { - "AutoBranchCreationConfig$framework": "

The framework for the autocreated branch.

", + "AutoBranchCreationConfig$framework": "

The framework for the autocreated branch.

", "Branch$framework": "

The framework for a branch of an Amplify app.

", "CreateBranchRequest$framework": "

The framework for the branch.

", "UpdateBranchRequest$framework": "

The framework for the branch.

" } }, "GenerateAccessLogsRequest": { - "base": "

The request structure for the generate access logs request.

", + "base": "

The request structure for the generate access logs request.

", "refs": { } }, "GenerateAccessLogsResult": { - "base": "

The result structure for the generate access logs request.

", + "base": "

The result structure for the generate access logs request.

", "refs": { } }, "GetAppRequest": { - "base": "

The request structure for the get app request.

", + "base": "

The request structure for the get app request.

", "refs": { } }, @@ -785,22 +793,22 @@ } }, "GetArtifactUrlRequest": { - "base": "

Returns the request structure for the get artifact request.

", + "base": "

Returns the request structure for the get artifact request.

", "refs": { } }, "GetArtifactUrlResult": { - "base": "

Returns the result structure for the get artifact request.

", + "base": "

Returns the result structure for the get artifact request.

", "refs": { } }, "GetBackendEnvironmentRequest": { - "base": "

The request structure for the get backend environment request.

", + "base": "

The request structure for the get backend environment request.

", "refs": { } }, "GetBackendEnvironmentResult": { - "base": "

The result structure for the get backend environment result.

", + "base": "

The result structure for the get backend environment result.

", "refs": { } }, @@ -825,7 +833,7 @@ } }, "GetJobRequest": { - "base": "

The request structure for the get job request.

", + "base": "

The request structure for the get job request.

", "refs": { } }, @@ -835,17 +843,17 @@ } }, "GetWebhookRequest": { - "base": "

The request structure for the get webhook request.

", + "base": "

The request structure for the get webhook request.

", "refs": { } }, "GetWebhookResult": { - "base": "

The result structure for the get webhook request.

", + "base": "

The result structure for the get webhook request.

", "refs": { } }, "InternalFailureException": { - "base": "

The service failed to perform an operation due to an internal issue.

", + "base": "

The service failed to perform an operation due to an internal issue.

", "refs": { } }, @@ -866,18 +874,18 @@ "refs": { "CreateDeploymentResult$jobId": "

The job ID for this deployment. will supply to start deployment api.

", "DeleteJobRequest$jobId": "

The unique ID for the job.

", - "GetJobRequest$jobId": "

The unique ID for the job.

", + "GetJobRequest$jobId": "

The unique ID for the job.

", "JobSummary$jobId": "

The unique ID for the job.

", - "ListArtifactsRequest$jobId": "

The unique ID for a job.

", - "StartDeploymentRequest$jobId": "

The job ID for this deployment, generated by the create deployment request.

", - "StartJobRequest$jobId": "

The unique ID for an existing job. This is required if the value of jobType is RETRY.

", + "ListArtifactsRequest$jobId": "

The unique ID for a job.

", + "StartDeploymentRequest$jobId": "

The job ID for this deployment, generated by the create deployment request.

", + "StartJobRequest$jobId": "

The unique ID for an existing job. This is required if the value of jobType is RETRY.

", "StopJobRequest$jobId": "

The unique id for the job.

" } }, "JobReason": { "base": null, "refs": { - "StartJobRequest$jobReason": "

A descriptive reason for starting this job.

" + "StartJobRequest$jobReason": "

A descriptive reason for starting the job.

" } }, "JobStatus": { @@ -890,7 +898,7 @@ "JobSummaries": { "base": null, "refs": { - "ListJobsResult$jobSummaries": "

The result structure for the list job result request.

" + "ListJobsResult$jobSummaries": "

The result structure for the list job result request.

" } }, "JobSummary": { @@ -899,7 +907,7 @@ "DeleteJobResult$jobSummary": null, "Job$summary": "

Describes the summary for an execution job for an Amplify app.

", "JobSummaries$member": null, - "StartDeploymentResult$jobSummary": "

The summary for the job.

", + "StartDeploymentResult$jobSummary": "

The summary for the job.

", "StartJobResult$jobSummary": "

The summary for the job.

", "StopJobResult$jobSummary": "

The summary for the job.

" } @@ -908,52 +916,52 @@ "base": null, "refs": { "JobSummary$jobType": "

The type for the job. If the value is RELEASE, the job was manually released from its source by using the StartJob API. If the value is RETRY, the job was manually retried using the StartJob API. If the value is WEB_HOOK, the job was automatically triggered by webhooks.

", - "StartJobRequest$jobType": "

Describes the type for the job. The job type RELEASE starts a new job with the latest change from the specified branch. This value is available only for apps that are connected to a repository. The job type RETRY retries an existing job. If the job type value is RETRY, the jobId is also required.

" + "StartJobRequest$jobType": "

Describes the type for the job. The job type RELEASE starts a new job with the latest change from the specified branch. This value is available only for apps that are connected to a repository.

The job type RETRY retries an existing job. If the job type value is RETRY, the jobId is also required.

" } }, "LastDeployTime": { "base": null, "refs": { - "ProductionBranch$lastDeployTime": "

The last deploy time of the production branch.

" + "ProductionBranch$lastDeployTime": "

The last deploy time of the production branch.

" } }, "LimitExceededException": { - "base": "

A resource could not be created because service quotas were exceeded.

", + "base": "

A resource could not be created because service quotas were exceeded.

", "refs": { } }, "ListAppsRequest": { - "base": "

The request structure for the list apps request.

", + "base": "

The request structure for the list apps request.

", "refs": { } }, "ListAppsResult": { - "base": "

The result structure for an Amplify app list request.

", + "base": "

The result structure for an Amplify app list request.

", "refs": { } }, "ListArtifactsRequest": { - "base": "

Describes the request structure for the list artifacts request.

", + "base": "

Describes the request structure for the list artifacts request.

", "refs": { } }, "ListArtifactsResult": { - "base": "

The result structure for the list artifacts request.

", + "base": "

The result structure for the list artifacts request.

", "refs": { } }, "ListBackendEnvironmentsRequest": { - "base": "

The request structure for the list backend environments request.

", + "base": "

The request structure for the list backend environments request.

", "refs": { } }, "ListBackendEnvironmentsResult": { - "base": "

The result structure for the list backend environments result.

", + "base": "

The result structure for the list backend environments result.

", "refs": { } }, "ListBranchesRequest": { - "base": "

The request structure for the list branches request.

", + "base": "

The request structure for the list branches request.

", "refs": { } }, @@ -978,34 +986,34 @@ } }, "ListJobsResult": { - "base": "

The maximum number of records to list in a single response.

", + "base": "

The maximum number of records to list in a single response.

", "refs": { } }, "ListTagsForResourceRequest": { - "base": "

The request structure to use to list tags for a resource.

", + "base": "

The request structure to use to list tags for a resource.

", "refs": { } }, "ListTagsForResourceResponse": { - "base": "

The response for the list tags for resource request.

", + "base": "

The response for the list tags for resource request.

", "refs": { } }, "ListWebhooksRequest": { - "base": "

The request structure for the list webhooks request.

", + "base": "

The request structure for the list webhooks request.

", "refs": { } }, "ListWebhooksResult": { - "base": "

The result structure for the list webhooks request.

", + "base": "

The result structure for the list webhooks request.

", "refs": { } }, "LogUrl": { "base": null, "refs": { - "GenerateAccessLogsResult$logUrl": "

The pre-signed URL for the requested access logs.

", + "GenerateAccessLogsResult$logUrl": "

The pre-signed URL for the requested access logs.

", "Step$logUrl": "

The URL to the logs for the execution step.

" } }, @@ -1018,72 +1026,72 @@ "MaxResults": { "base": null, "refs": { - "ListAppsRequest$maxResults": "

The maximum number of records to list in a single response.

", - "ListArtifactsRequest$maxResults": "

The maximum number of records to list in a single response.

", - "ListBackendEnvironmentsRequest$maxResults": "

The maximum number of records to list in a single response.

", + "ListAppsRequest$maxResults": "

The maximum number of records to list in a single response.

", + "ListArtifactsRequest$maxResults": "

The maximum number of records to list in a single response.

", + "ListBackendEnvironmentsRequest$maxResults": "

The maximum number of records to list in a single response.

", "ListBranchesRequest$maxResults": "

The maximum number of records to list in a single response.

", "ListDomainAssociationsRequest$maxResults": "

The maximum number of records to list in a single response.

", - "ListJobsRequest$maxResults": "

The maximum number of records to list in a single response.

", - "ListWebhooksRequest$maxResults": "

The maximum number of records to list in a single response.

" + "ListJobsRequest$maxResults": "

The maximum number of records to list in a single response.

", + "ListWebhooksRequest$maxResults": "

The maximum number of records to list in a single response.

" } }, "Name": { "base": null, "refs": { - "App$name": "

The name for the Amplify app.

", - "CreateAppRequest$name": "

The name for an Amplify app.

", - "UpdateAppRequest$name": "

The name for an Amplify app.

" + "App$name": "

The name for the Amplify app.

", + "CreateAppRequest$name": "

The name of the Amplify app.

", + "UpdateAppRequest$name": "

The name for an Amplify app.

" } }, "NextToken": { "base": null, "refs": { - "ListAppsRequest$nextToken": "

A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

", - "ListAppsResult$nextToken": "

A pagination token. Set to null to start listing apps from start. If non-null, the pagination token is returned in a result. Pass its value in here to list more projects.

", - "ListArtifactsRequest$nextToken": "

A pagination token. Set to null to start listing artifacts from start. If a non-null pagination token is returned in a result, pass its value in here to list more artifacts.

", - "ListArtifactsResult$nextToken": "

A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries.

", - "ListBackendEnvironmentsRequest$nextToken": "

A pagination token. Set to null to start listing backend environments from the start. If a non-null pagination token is returned in a result, pass its value in here to list more backend environments.

", - "ListBackendEnvironmentsResult$nextToken": "

A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries.

", - "ListBranchesRequest$nextToken": "

A pagination token. Set to null to start listing branches from the start. If a non-null pagination token is returned in a result, pass its value in here to list more branches.

", + "ListAppsRequest$nextToken": "

A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

", + "ListAppsResult$nextToken": "

A pagination token. Set to null to start listing apps from start. If non-null, the pagination token is returned in a result. Pass its value in here to list more projects.

", + "ListArtifactsRequest$nextToken": "

A pagination token. Set to null to start listing artifacts from start. If a non-null pagination token is returned in a result, pass its value in here to list more artifacts.

", + "ListArtifactsResult$nextToken": "

A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries.

", + "ListBackendEnvironmentsRequest$nextToken": "

A pagination token. Set to null to start listing backend environments from the start. If a non-null pagination token is returned in a result, pass its value in here to list more backend environments.

", + "ListBackendEnvironmentsResult$nextToken": "

A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries.

", + "ListBranchesRequest$nextToken": "

A pagination token. Set to null to start listing branches from the start. If a non-null pagination token is returned in a result, pass its value in here to list more branches.

", "ListBranchesResult$nextToken": "

A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries.

", "ListDomainAssociationsRequest$nextToken": "

A pagination token. Set to null to start listing apps from the start. If non-null, a pagination token is returned in a result. Pass its value in here to list more projects.

", "ListDomainAssociationsResult$nextToken": "

A pagination token. If non-null, a pagination token is returned in a result. Pass its value in another request to retrieve more entries.

", - "ListJobsRequest$nextToken": "

A pagination token. Set to null to start listing steps from the start. If a non-null pagination token is returned in a result, pass its value in here to list more steps.

", - "ListJobsResult$nextToken": "

A pagination token. If non-null the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

", - "ListWebhooksRequest$nextToken": "

A pagination token. Set to null to start listing webhooks from the start. If non-null,the pagination token is returned in a result. Pass its value in here to list more webhooks.

", - "ListWebhooksResult$nextToken": "

A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

" + "ListJobsRequest$nextToken": "

A pagination token. Set to null to start listing steps from the start. If a non-null pagination token is returned in a result, pass its value in here to list more steps.

", + "ListJobsResult$nextToken": "

A pagination token. If non-null the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

", + "ListWebhooksRequest$nextToken": "

A pagination token. Set to null to start listing webhooks from the start. If non-null,the pagination token is returned in a result. Pass its value in here to list more webhooks.

", + "ListWebhooksResult$nextToken": "

A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

" } }, "NotFoundException": { - "base": "

An entity was not found during an operation.

", + "base": "

An entity was not found during an operation.

", "refs": { } }, "OauthToken": { "base": null, "refs": { - "CreateAppRequest$oauthToken": "

The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use accessToken.

You must specify either oauthToken or accessToken when you create a new app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

", - "UpdateAppRequest$oauthToken": "

The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit.

To authorize access to GitHub as your repository provider, use accessToken.

You must specify either oauthToken or accessToken when you update an app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

" + "CreateAppRequest$oauthToken": "

The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use accessToken.

You must specify either oauthToken or accessToken when you create a new app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

", + "UpdateAppRequest$oauthToken": "

The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit.

To authorize access to GitHub as your repository provider, use accessToken.

You must specify either oauthToken or accessToken when you update an app.

Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

" } }, "Platform": { "base": null, "refs": { - "App$platform": "

The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

", - "CreateAppRequest$platform": "

The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

", - "UpdateAppRequest$platform": "

The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

" + "App$platform": "

The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

", + "CreateAppRequest$platform": "

The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

", + "UpdateAppRequest$platform": "

The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

" } }, "ProductionBranch": { - "base": "

Describes the information about a production branch for an Amplify app.

", + "base": "

Describes the information about a production branch for an Amplify app.

", "refs": { - "App$productionBranch": "

Describes the information about a production branch of the Amplify app.

" + "App$productionBranch": "

Describes the information about a production branch of the Amplify app.

" } }, "PullRequestEnvironmentName": { "base": null, "refs": { - "AutoBranchCreationConfig$pullRequestEnvironmentName": "

The Amplify environment name for the pull request.

", + "AutoBranchCreationConfig$pullRequestEnvironmentName": "

The Amplify environment name for the pull request.

", "Branch$pullRequestEnvironmentName": "

The Amplify environment name for the pull request.

", "CreateBranchRequest$pullRequestEnvironmentName": "

The Amplify environment name for the pull request.

", "UpdateBranchRequest$pullRequestEnvironmentName": "

The Amplify environment name for the pull request.

" @@ -1092,9 +1100,9 @@ "Repository": { "base": null, "refs": { - "App$repository": "

The Git repository for the Amplify app.

", - "CreateAppRequest$repository": "

The repository for an Amplify app.

", - "UpdateAppRequest$repository": "

The name of the repository for an Amplify app

" + "App$repository": "

The Git repository for the Amplify app.

", + "CreateAppRequest$repository": "

The Git repository for the Amplify app.

", + "UpdateAppRequest$repository": "

The name of the Git repository for an Amplify app.

" } }, "RepositoryCloneMethod": { @@ -1106,13 +1114,13 @@ "ResourceArn": { "base": null, "refs": { - "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) to use to list tags.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) to use to list tags.

", "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) to use to tag a resource.

", - "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) to use to untag a resource.

" + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) to use to untag a resource.

" } }, "ResourceNotFoundException": { - "base": "

An operation failed due to a non-existent resource.

", + "base": "

An operation failed due to a non-existent resource.

", "refs": { } }, @@ -1125,51 +1133,57 @@ "ServiceRoleArn": { "base": null, "refs": { - "App$iamServiceRoleArn": "

The AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) of the Amplify app.

", - "CreateAppRequest$iamServiceRoleArn": "

The AWS Identity and Access Management (IAM) service role for an Amplify app.

", - "UpdateAppRequest$iamServiceRoleArn": "

The AWS Identity and Access Management (IAM) service role for an Amplify app.

" + "App$iamServiceRoleArn": "

The AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) of the Amplify app.

", + "CreateAppRequest$iamServiceRoleArn": "

The AWS Identity and Access Management (IAM) service role for an Amplify app.

", + "UpdateAppRequest$iamServiceRoleArn": "

The AWS Identity and Access Management (IAM) service role for an Amplify app.

" } }, "Source": { "base": null, "refs": { - "CustomRule$source": "

The source pattern for a URL rewrite or redirect rule.

" + "CustomRule$source": "

The source pattern for a URL rewrite or redirect rule.

" } }, "SourceUrl": { "base": null, "refs": { - "StartDeploymentRequest$sourceUrl": "

The source URL for this deployment, used when calling start deployment without create deployment. The source URL can be any HTTP GET URL that is publicly accessible and downloads a single .zip file.

" + "StartDeploymentRequest$sourceUrl": "

The source URL for this deployment, used when calling start deployment without create deployment. The source URL can be any HTTP GET URL that is publicly accessible and downloads a single .zip file.

" + } + }, + "StackArn": { + "base": null, + "refs": { + "Backend$stackArn": "

The Amazon Resource Name (ARN) for the CloudFormation stack.

" } }, "StackName": { "base": null, "refs": { - "BackendEnvironment$stackName": "

The AWS CloudFormation stack name of a backend environment.

", - "CreateBackendEnvironmentRequest$stackName": "

The AWS CloudFormation stack name of a backend environment.

" + "BackendEnvironment$stackName": "

The AWS CloudFormation stack name of a backend environment.

", + "CreateBackendEnvironmentRequest$stackName": "

The AWS CloudFormation stack name of a backend environment.

" } }, "Stage": { "base": null, "refs": { - "AutoBranchCreationConfig$stage": "

Describes the current stage for the autocreated branch.

", + "AutoBranchCreationConfig$stage": "

Describes the current stage for the autocreated branch.

", "Branch$stage": "

The current stage for the branch that is part of an Amplify app.

", - "CreateBranchRequest$stage": "

Describes the current stage for the branch.

", + "CreateBranchRequest$stage": "

Describes the current stage for the branch.

", "UpdateBranchRequest$stage": "

Describes the current stage for the branch.

" } }, "StartDeploymentRequest": { - "base": "

The request structure for the start a deployment request.

", + "base": "

The request structure for the start a deployment request.

", "refs": { } }, "StartDeploymentResult": { - "base": "

The result structure for the start a deployment request.

", + "base": "

The result structure for the start a deployment request.

", "refs": { } }, "StartJobRequest": { - "base": "

The request structure for the start job request.

", + "base": "

The request structure for the start job request.

", "refs": { } }, @@ -1181,7 +1195,7 @@ "StartTime": { "base": null, "refs": { - "GenerateAccessLogsRequest$startTime": "

The time at which the logs should start. The time range specified is inclusive of the start time.

", + "GenerateAccessLogsRequest$startTime": "

The time at which the logs should start. The time range specified is inclusive of the start time.

", "JobSummary$startTime": "

The start date and time for the job.

", "Step$startTime": "

The start date and time of the execution step.

" } @@ -1189,8 +1203,8 @@ "Status": { "base": null, "refs": { - "CustomRule$status": "

The status code for a URL rewrite or redirect rule.

200

Represents a 200 rewrite rule.

301

Represents a 301 (moved pemanently) redirect rule. This and all future requests should be directed to the target URL.

302

Represents a 302 temporary redirect rule.

404

Represents a 404 redirect rule.

404-200

Represents a 404 rewrite rule.

", - "ProductionBranch$status": "

The status of the production branch.

" + "CustomRule$status": "

The status code for a URL rewrite or redirect rule.

200

Represents a 200 rewrite rule.

301

Represents a 301 (moved pemanently) redirect rule. This and all future requests should be directed to the target URL.

302

Represents a 302 temporary redirect rule.

404

Represents a 404 redirect rule.

404-200

Represents a 404 rewrite rule.

", + "ProductionBranch$status": "

The status of the production branch.

" } }, "StatusReason": { @@ -1255,7 +1269,7 @@ } }, "TTL": { - "base": "

The content Time to Live (TTL) for the website in seconds.

", + "base": "

The content Time to Live (TTL) for the website in seconds.

", "refs": { "Branch$ttl": "

The content Time to Live (TTL) for the website in seconds.

", "CreateBranchRequest$ttl": "

The content Time To Live (TTL) for the website in seconds.

", @@ -1272,27 +1286,27 @@ "TagKeyList": { "base": null, "refs": { - "UntagResourceRequest$tagKeys": "

The tag keys to use to untag a resource.

" + "UntagResourceRequest$tagKeys": "

The tag keys to use to untag a resource.

" } }, "TagMap": { "base": null, "refs": { - "App$tags": "

The tag for the Amplify app.

", + "App$tags": "

The tag for the Amplify app.

", "Branch$tags": "

The tag for the branch of an Amplify app.

", - "CreateAppRequest$tags": "

The tag for an Amplify app.

", + "CreateAppRequest$tags": "

The tag for an Amplify app.

", "CreateBranchRequest$tags": "

The tag for the branch.

", - "ListTagsForResourceResponse$tags": "

A list of tags for the specified The Amazon Resource Name (ARN).

", - "TagResourceRequest$tags": "

The tags used to tag the resource.

" + "ListTagsForResourceResponse$tags": "

A list of tags for the specified The Amazon Resource Name (ARN).

", + "TagResourceRequest$tags": "

The tags used to tag the resource.

" } }, "TagResourceRequest": { - "base": "

The request structure to tag a resource with a tag key and value.

", + "base": "

The request structure to tag a resource with a tag key and value.

", "refs": { } }, "TagResourceResponse": { - "base": "

The response for the tag resource request.

", + "base": "

The response for the tag resource request.

", "refs": { } }, @@ -1305,7 +1319,7 @@ "Target": { "base": null, "refs": { - "CustomRule$target": "

The target pattern for a URL rewrite or redirect rule.

" + "CustomRule$target": "

The target pattern for a URL rewrite or redirect rule.

" } }, "TestArtifactsUrl": { @@ -1330,7 +1344,7 @@ "base": null, "refs": { "Branch$thumbnailUrl": "

The thumbnail URL for the branch of an Amplify app.

", - "ProductionBranch$thumbnailUrl": "

The thumbnail URL for the production branch.

", + "ProductionBranch$thumbnailUrl": "

The thumbnail URL for the production branch.

", "Screenshots$value": null } }, @@ -1341,32 +1355,32 @@ } }, "UnauthorizedException": { - "base": "

An operation failed due to a lack of access.

", + "base": "

An operation failed due to a lack of access.

", "refs": { } }, "UntagResourceRequest": { - "base": "

The request structure for the untag resource request.

", + "base": "

The request structure for the untag resource request.

", "refs": { } }, "UntagResourceResponse": { - "base": "

The response for the untag resource request.

", + "base": "

The response for the untag resource request.

", "refs": { } }, "UpdateAppRequest": { - "base": "

The request structure for the update app request.

", + "base": "

The request structure for the update app request.

", "refs": { } }, "UpdateAppResult": { - "base": "

The result structure for an Amplify app update request.

", + "base": "

The result structure for an Amplify app update request.

", "refs": { } }, "UpdateBranchRequest": { - "base": "

The request structure for the update branch request.

", + "base": "

The request structure for the update branch request.

", "refs": { } }, @@ -1388,19 +1402,19 @@ "UpdateTime": { "base": null, "refs": { - "App$updateTime": "

Updates the date and time for the Amplify app.

", - "BackendEnvironment$updateTime": "

The last updated date and time for a backend environment that is part of an Amplify app.

", + "App$updateTime": "

Updates the date and time for the Amplify app.

", + "BackendEnvironment$updateTime": "

The last updated date and time for a backend environment that is part of an Amplify app.

", "Branch$updateTime": "

The last updated date and time for a branch that is part of an Amplify app.

", - "Webhook$updateTime": "

Updates the date and time for a webhook.

" + "Webhook$updateTime": "

Updates the date and time for a webhook.

" } }, "UpdateWebhookRequest": { - "base": "

The request structure for the update webhook request.

", + "base": "

The request structure for the update webhook request.

", "refs": { } }, "UpdateWebhookResult": { - "base": "

The result structure for the update webhook request.

", + "base": "

The result structure for the update webhook request.

", "refs": { } }, @@ -1418,40 +1432,40 @@ } }, "Webhook": { - "base": "

Describes a webhook that connects repository events to an Amplify app.

", + "base": "

Describes a webhook that connects repository events to an Amplify app.

", "refs": { - "CreateWebhookResult$webhook": "

Describes a webhook that connects repository events to an Amplify app.

", - "DeleteWebhookResult$webhook": "

Describes a webhook that connects repository events to an Amplify app.

", - "GetWebhookResult$webhook": "

Describes the structure of a webhook.

", - "UpdateWebhookResult$webhook": "

Describes a webhook that connects repository events to an Amplify app.

", + "CreateWebhookResult$webhook": "

Describes a webhook that connects repository events to an Amplify app.

", + "DeleteWebhookResult$webhook": "

Describes a webhook that connects repository events to an Amplify app.

", + "GetWebhookResult$webhook": "

Describes the structure of a webhook.

", + "UpdateWebhookResult$webhook": "

Describes a webhook that connects repository events to an Amplify app.

", "Webhooks$member": null } }, "WebhookArn": { "base": null, "refs": { - "Webhook$webhookArn": "

The Amazon Resource Name (ARN) for the webhook.

" + "Webhook$webhookArn": "

The Amazon Resource Name (ARN) for the webhook.

" } }, "WebhookId": { "base": null, "refs": { - "DeleteWebhookRequest$webhookId": "

The unique ID for a webhook.

", - "GetWebhookRequest$webhookId": "

The unique ID for a webhook.

", - "UpdateWebhookRequest$webhookId": "

The unique ID for a webhook.

", - "Webhook$webhookId": "

The ID of the webhook.

" + "DeleteWebhookRequest$webhookId": "

The unique ID for a webhook.

", + "GetWebhookRequest$webhookId": "

The unique ID for a webhook.

", + "UpdateWebhookRequest$webhookId": "

The unique ID for a webhook.

", + "Webhook$webhookId": "

The ID of the webhook.

" } }, "WebhookUrl": { "base": null, "refs": { - "Webhook$webhookUrl": "

The URL of the webhook.

" + "Webhook$webhookUrl": "

The URL of the webhook.

" } }, "Webhooks": { "base": null, "refs": { - "ListWebhooksResult$webhooks": "

A list of webhooks.

" + "ListWebhooksResult$webhooks": "

A list of webhooks.

" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -32,38 +32,83 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ { - "fn": "parseURL", + "fn": "aws.partition", "argv": [ { - "ref": "Endpoint" + "ref": "Region" } ], - "assign": "url" + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -75,158 +120,103 @@ }, true ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://amplify-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "type": "tree" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://amplify-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, - "supportsFIPS" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], @@ -237,79 +227,88 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://amplify.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://amplify.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://amplify.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://amplify.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,42 +1,42 @@ { "testCases": [ { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-south-1.api.aws" + "url": "https://amplify.ap-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-south-1.amazonaws.com" + "url": "https://amplify.ap-northeast-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-south-1" + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-south-1.api.aws" + "url": "https://amplify.ap-northeast-2.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "ap-northeast-2", "UseFIPS": false, - "Region": "ap-south-1" + "UseDualStack": false } }, { @@ -47,100 +47,35 @@ } }, "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ap-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.eu-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, + "Region": "ap-south-1", "UseFIPS": false, - "Region": "eu-south-1" + "UseDualStack": false } }, { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.eu-south-1.amazonaws.com" + "url": "https://amplify.ap-southeast-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "ap-southeast-1", "UseFIPS": false, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.ca-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.ca-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ca-central-1" + "UseDualStack": false } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ca-central-1.api.aws" + "url": "https://amplify.ap-southeast-2.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "ap-southeast-2", "UseFIPS": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -151,48 +86,9 @@ } }, "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.eu-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, + "Region": "ca-central-1", "UseFIPS": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -203,152 +99,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "eu-central-1", "UseFIPS": false, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.us-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.us-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.us-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify.us-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.us-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.us-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.us-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify.us-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-north-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-north-1" - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-north-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-north-1" - } - }, - { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.eu-north-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { @@ -359,100 +112,35 @@ } }, "params": { - "UseDualStack": false, + "Region": "eu-north-1", "UseFIPS": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-west-3.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-west-3.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.eu-west-3.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.eu-west-3.amazonaws.com" + "url": "https://amplify.eu-south-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "eu-south-1", "UseFIPS": false, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.eu-west-2.api.aws" + "url": "https://amplify.eu-west-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "eu-west-1", "UseFIPS": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { @@ -463,542 +151,365 @@ } }, "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.eu-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.eu-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, + "Region": "eu-west-2", "UseFIPS": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.eu-west-1.amazonaws.com" + "url": "https://amplify.eu-west-3.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "eu-west-3", "UseFIPS": false, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.ap-northeast-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-northeast-2.api.aws" + "url": "https://amplify.me-south-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "me-south-1", "UseFIPS": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-northeast-2.amazonaws.com" + "url": "https://amplify.sa-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "sa-east-1", "UseFIPS": false, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.ap-northeast-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-northeast-1.api.aws" + "url": "https://amplify.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-northeast-1.amazonaws.com" + "url": "https://amplify.us-east-2.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-2", "UseFIPS": false, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.me-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "me-south-1" + "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.me-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "me-south-1" - } - }, - { - "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.me-south-1.api.aws" + "url": "https://amplify.us-west-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-west-1", "UseFIPS": false, - "Region": "me-south-1" + "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.me-south-1.amazonaws.com" + "url": "https://amplify.us-west-2.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-west-2", "UseFIPS": false, - "Region": "me-south-1" + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://amplify-fips.sa-east-1.api.aws" + "url": "https://amplify-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": true, - "Region": "sa-east-1" + "UseDualStack": true } }, { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.sa-east-1.amazonaws.com" + "url": "https://amplify-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "sa-east-1" - } - }, - { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.sa-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://amplify.sa-east-1.amazonaws.com" + "url": "https://amplify.us-east-1.api.aws" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": true } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-east-1.api.aws" + "url": "https://amplify-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "ap-east-1" + "UseDualStack": true } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-east-1.amazonaws.com" + "url": "https://amplify-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "ap-east-1" + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://amplify.ap-east-1.api.aws" + "url": "https://amplify.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "ap-east-1" + "UseDualStack": true } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-east-1.amazonaws.com" + "url": "https://amplify.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-southeast-1.api.aws" + "url": "https://amplify-fips.us-gov-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "ap-southeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-southeast-1.amazonaws.com" + "url": "https://amplify-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://amplify.ap-southeast-1.api.aws" + "url": "https://amplify.us-gov-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "ap-southeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-southeast-1.amazonaws.com" + "url": "https://amplify.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://amplify-fips.ap-southeast-2.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "ap-southeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.ap-southeast-2.amazonaws.com" + "url": "https://amplify-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://amplify.ap-southeast-2.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "ap-southeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.ap-southeast-2.amazonaws.com" + "url": "https://amplify.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://amplify-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.us-east-1.amazonaws.com" + "url": "https://amplify-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://amplify.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://amplify.us-east-1.amazonaws.com" + "url": "https://amplify.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify-fips.us-east-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-east-2" + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://amplify-fips.us-east-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-east-2" - } - }, - { - "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://amplify.us-east-2.api.aws" + "url": "https://example.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-east-2" - } - }, - { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://amplify.us-east-2.amazonaws.com" - } - }, - "params": { "UseDualStack": false, - "UseFIPS": false, - "Region": "us-east-2" + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1008,9 +519,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1020,11 +531,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplify/2017-07-25/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplify/2017-07-25/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,4 +1,28 @@ { "pagination": { + "ListApps": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "apps" + }, + "ListBranches": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "branches" + }, + "ListDomainAssociations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "domainAssociations" + }, + "ListJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "jobSummaries" + } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplifyuibuilder/2021-08-11/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplifyuibuilder/2021-08-11/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplifyuibuilder/2021-08-11/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplifyuibuilder/2021-08-11/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -423,6 +423,19 @@ "type":"boolean", "box":true }, + "CodegenDependencies":{ + "type":"list", + "member":{"shape":"CodegenDependency"} + }, + "CodegenDependency":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "supportedVersion":{"shape":"String"}, + "isSemVer":{"shape":"Boolean"}, + "reason":{"shape":"String"} + } + }, "CodegenFeatureFlags":{ "type":"structure", "members":{ @@ -563,7 +576,8 @@ "asset":{"shape":"CodegenJobAsset"}, "tags":{"shape":"Tags"}, "createdAt":{"shape":"SyntheticTimestamp_date_time"}, - "modifiedAt":{"shape":"SyntheticTimestamp_date_time"} + "modifiedAt":{"shape":"SyntheticTimestamp_date_time"}, + "dependencies":{"shape":"CodegenDependencies"} } }, "CodegenJobAsset":{ @@ -1979,6 +1993,11 @@ }, "payload":"body" }, + "ReactCodegenDependencies":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, "ReactStartCodegenJobData":{ "type":"structure", "members":{ @@ -1987,7 +2006,8 @@ "script":{"shape":"JSScript"}, "renderTypeDeclarations":{"shape":"Boolean"}, "inlineSourceMap":{"shape":"Boolean"}, - "apiConfiguration":{"shape":"ApiConfiguration"} + "apiConfiguration":{"shape":"ApiConfiguration"}, + "dependencies":{"shape":"ReactCodegenDependencies"} } }, "RefreshTokenRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplifyuibuilder/2021-08-11/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplifyuibuilder/2021-08-11/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/amplifyuibuilder/2021-08-11/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/amplifyuibuilder/2021-08-11/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,7 +8,7 @@ "DeleteComponent": "

Deletes a component from an Amplify app.

", "DeleteForm": "

Deletes a form from an Amplify app.

", "DeleteTheme": "

Deletes a theme from an Amplify app.

", - "ExchangeCodeForToken": "

Exchanges an access code for a token.

", + "ExchangeCodeForToken": "

This is for internal use.

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

", "ExportComponents": "

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

", "ExportForms": "

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

", "ExportThemes": "

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

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

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

", "ListThemes": "

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

", "PutMetadataFlag": "

Stores the metadata information about a feature on a form.

", - "RefreshToken": "

Refreshes a previously issued access token that might have expired.

", + "RefreshToken": "

This is for internal use.

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

", "StartCodegenJob": "

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

", "UpdateComponent": "

Updates an existing component.

", "UpdateForm": "

Updates an existing form.

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

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

", "CodegenFeatureFlags$isRelationshipSupported": "

Specifes whether a code generation job supports data relationships.

", "CodegenFeatureFlags$isNonModelSupported": "

Specifies whether a code generation job supports non models.

", "CodegenGenericDataField$required": "

Specifies whether the generic data field is required.

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

Specifies whether to autogenerate forms in the code generation job.

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

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

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

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

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

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

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

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

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

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

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

Describes the code generation job configuration for a React project.

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

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

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

Name of the dependency package.

", + "CodegenDependency$supportedVersion": "

Indicates the version of the supported dependency package.

", + "CodegenDependency$reason": "

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

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

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

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

The unique ID for the Amplify app.

", "PutMetadataFlagRequest$environmentName": "

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

", "PutMetadataFlagRequest$featureName": "

The name of the feature associated with the metadata.

", + "ReactCodegenDependencies$key": null, + "ReactCodegenDependencies$value": null, "RelatedModelFieldsList$member": null, "ResourceConflictException$message": null, "ResourceNotFoundException$message": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appconfig/2019-10-09/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appconfig/2019-10-09/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appconfig/2019-10-09/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appconfig/2019-10-09/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -804,7 +804,9 @@ "LocationUri":{"shape":"Uri"}, "RetrievalRoleArn":{"shape":"RoleArn"}, "Validators":{"shape":"ValidatorList"}, - "Type":{"shape":"ConfigurationProfileType"} + "Type":{"shape":"ConfigurationProfileType"}, + "KmsKeyArn":{"shape":"Arn"}, + "KmsKeyIdentifier":{"shape":"KmsKeyIdentifier"} } }, "ConfigurationProfileSummary":{ @@ -869,7 +871,8 @@ "RetrievalRoleArn":{"shape":"RoleArn"}, "Validators":{"shape":"ValidatorList"}, "Tags":{"shape":"TagMap"}, - "Type":{"shape":"ConfigurationProfileType"} + "Type":{"shape":"ConfigurationProfileType"}, + "KmsKeyIdentifier":{"shape":"KmsKeyIdentifier"} } }, "CreateDeploymentStrategyRequest":{ @@ -938,7 +941,7 @@ "Actions" ], "members":{ - "Name":{"shape":"Name"}, + "Name":{"shape":"ExtensionOrParameterName"}, "Description":{"shape":"Description"}, "Actions":{"shape":"ActionsMap"}, "Parameters":{"shape":"ParameterMap"}, @@ -1131,7 +1134,7 @@ "CompletedAt":{"shape":"Iso8601DateTime"}, "AppliedExtensions":{"shape":"AppliedExtensions"}, "KmsKeyArn":{"shape":"Arn"}, - "KmsKeyIdentifier":{"shape":"Identifier"}, + "KmsKeyIdentifier":{"shape":"KmsKeyIdentifier"}, "VersionLabel":{"shape":"VersionLabel"} } }, @@ -1305,6 +1308,10 @@ "NextToken":{"shape":"NextToken"} } }, + "ExtensionOrParameterName":{ + "type":"string", + "pattern":"^[^\\/#:\\n]{1,64}$" + }, "ExtensionSummaries":{ "type":"list", "member":{"shape":"ExtensionSummary"} @@ -1547,6 +1554,11 @@ "shape":"VersionLabel", "location":"header", "locationName":"VersionLabel" + }, + "KmsKeyArn":{ + "shape":"Arn", + "location":"header", + "locationName":"KmsKeyArn" } }, "payload":"Content" @@ -1559,7 +1571,8 @@ "VersionNumber":{"shape":"Integer"}, "Description":{"shape":"Description"}, "ContentType":{"shape":"StringWithLengthBetween1And255"}, - "VersionLabel":{"shape":"VersionLabel"} + "VersionLabel":{"shape":"VersionLabel"}, + "KmsKeyArn":{"shape":"Arn"} } }, "HostedConfigurationVersionSummaryList":{ @@ -1610,6 +1623,16 @@ "type":"timestamp", "timestampFormat":"iso8601" }, + "KmsKeyIdentifier":{ + "type":"string", + "max":2048, + "min":1 + }, + "KmsKeyIdentifierOrEmpty":{ + "type":"string", + "max":2048, + "min":0 + }, "ListApplicationsRequest":{ "type":"structure", "members":{ @@ -1868,14 +1891,14 @@ }, "ParameterMap":{ "type":"map", - "key":{"shape":"Name"}, + "key":{"shape":"ExtensionOrParameterName"}, "value":{"shape":"Parameter"}, "max":5, "min":1 }, "ParameterValueMap":{ "type":"map", - "key":{"shape":"Name"}, + "key":{"shape":"ExtensionOrParameterName"}, "value":{"shape":"StringWithLengthBetween1And2048"}, "max":5, "min":0 @@ -1962,7 +1985,7 @@ "ConfigurationVersion":{"shape":"Version"}, "Description":{"shape":"Description"}, "Tags":{"shape":"TagMap"}, - "KmsKeyIdentifier":{"shape":"Identifier"} + "KmsKeyIdentifier":{"shape":"KmsKeyIdentifier"} } }, "StopDeploymentRequest":{ @@ -2111,7 +2134,8 @@ "Name":{"shape":"Name"}, "Description":{"shape":"Description"}, "RetrievalRoleArn":{"shape":"RoleArn"}, - "Validators":{"shape":"ValidatorList"} + "Validators":{"shape":"ValidatorList"}, + "KmsKeyIdentifier":{"shape":"KmsKeyIdentifierOrEmpty"} } }, "UpdateDeploymentStrategyRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appconfig/2019-10-09/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appconfig/2019-10-09/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appconfig/2019-10-09/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appconfig/2019-10-09/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -119,6 +119,7 @@ "refs": { "Action$RoleArn": "

An Amazon Resource Name (ARN) for an Identity and Access Management assume role.

", "ActionInvocation$RoleArn": "

An Amazon Resource Name (ARN) for an Identity and Access Management assume role.

", + "ConfigurationProfile$KmsKeyArn": "

The Amazon Resource Name of the Key Management Service key to encrypt new configuration data versions in the AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an KMS key for that particular service.

", "Deployment$KmsKeyArn": "

The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.

", "Extension$Arn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", "ExtensionAssociation$ExtensionArn": "

The ARN of the extension defined in the association.

", @@ -127,6 +128,8 @@ "ExtensionAssociationSummary$ExtensionArn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", "ExtensionAssociationSummary$ResourceArn": "

The ARNs of applications, configuration profiles, or environments defined in the association.

", "ExtensionSummary$Arn": "

The system-generated Amazon Resource Name (ARN) for the extension.

", + "HostedConfigurationVersion$KmsKeyArn": "

The Amazon Resource Name of the Key Management Service key that was used to encrypt this specific version of the configuration data in the AppConfig hosted configuration store.

", + "HostedConfigurationVersionSummary$KmsKeyArn": "

The Amazon Resource Name of the Key Management Service key that was used to encrypt this specific version of the configuration data in the AppConfig hosted configuration store.

", "ListExtensionAssociationsRequest$ResourceIdentifier": "

The ARN of an application, configuration profile, or environment.

", "ListTagsForResourceRequest$ResourceArn": "

The resource ARN.

", "TagResourceRequest$ResourceArn": "

The ARN of the resource for which to retrieve tags.

", @@ -433,6 +436,14 @@ "refs": { } }, + "ExtensionOrParameterName": { + "base": null, + "refs": { + "CreateExtensionRequest$Name": "

A name for the extension. Each extension name in your account must be unique. Extension versions use the same name.

", + "ParameterMap$key": null, + "ParameterValueMap$key": null + } + }, "ExtensionSummaries": { "base": null, "refs": { @@ -615,12 +626,10 @@ "CreateExtensionAssociationRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", "CreateExtensionAssociationRequest$ResourceIdentifier": "

The ARN of an application, configuration profile, or environment.

", "DeleteExtensionRequest$ExtensionIdentifier": "

The name, ID, or Amazon Resource Name (ARN) of the extension you want to delete.

", - "Deployment$KmsKeyIdentifier": "

The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this ID to encrypt the configuration data using a customer managed key.

", "ExtensionAssociation$Id": "

The system-generated ID for the association.

", "ExtensionAssociationSummary$Id": "

The extension association ID. This ID is used to call other ExtensionAssociation API actions such as GetExtensionAssociation or DeleteExtensionAssociation.

", "GetExtensionRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", "ListExtensionAssociationsRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

", - "StartDeploymentRequest$KmsKeyIdentifier": "

The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this ID to encrypt the configuration data using a customer managed key.

", "UpdateExtensionRequest$ExtensionIdentifier": "

The name, the ID, or the Amazon Resource Name (ARN) of the extension.

" } }, @@ -675,6 +684,21 @@ "DeploymentSummary$CompletedAt": "

Time the deployment completed.

" } }, + "KmsKeyIdentifier": { + "base": null, + "refs": { + "ConfigurationProfile$KmsKeyIdentifier": "

The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.

", + "CreateConfigurationProfileRequest$KmsKeyIdentifier": "

The identifier for an Key Management Service key to encrypt new configuration data versions in the AppConfig hosted configuration store. This attribute is only used for hosted configuration types. The identifier can be an KMS key ID, alias, or the Amazon Resource Name (ARN) of the key ID or alias. To encrypt data managed in other configuration stores, see the documentation for how to specify an KMS key for that particular service.

", + "Deployment$KmsKeyIdentifier": "

The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.

", + "StartDeploymentRequest$KmsKeyIdentifier": "

The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this ID to encrypt the configuration data using a customer managed key.

" + } + }, + "KmsKeyIdentifierOrEmpty": { + "base": null, + "refs": { + "UpdateConfigurationProfileRequest$KmsKeyIdentifier": "

The identifier for a Key Management Service key to encrypt new configuration data versions in the AppConfig hosted configuration store. This attribute is only used for hosted configuration types. The identifier can be an KMS key ID, alias, or the Amazon Resource Name (ARN) of the key ID or alias. To encrypt data managed in other configuration stores, see the documentation for how to specify an KMS key for that particular service.

" + } + }, "ListApplicationsRequest": { "base": null, "refs": { @@ -779,15 +803,12 @@ "CreateApplicationRequest$Name": "

A name for the application.

", "CreateDeploymentStrategyRequest$Name": "

A name for the deployment strategy.

", "CreateEnvironmentRequest$Name": "

A name for the environment.

", - "CreateExtensionRequest$Name": "

A name for the extension. Each extension name in your account must be unique. Extension versions use the same name.

", "Deployment$ConfigurationName": "

The name of the configuration.

", "DeploymentStrategy$Name": "

The name of the deployment strategy.

", "DeploymentSummary$ConfigurationName": "

The name of the configuration.

", "Environment$Name": "

The name of the environment.

", "Extension$Name": "

The extension name.

", "ExtensionSummary$Name": "

The extension name.

", - "ParameterMap$key": null, - "ParameterValueMap$key": null, "UpdateApplicationRequest$Name": "

The name of the application.

", "UpdateConfigurationProfileRequest$Name": "

The name of the configuration profile.

", "UpdateEnvironmentRequest$Name": "

The name of the environment.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appconfig/2019-10-09/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appconfig/2019-10-09/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appconfig/2019-10-09/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appconfig/2019-10-09/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -269,14 +265,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -290,7 +288,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -310,7 +307,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -321,14 +317,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -339,9 +337,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,6 +12,23 @@ "uid":"appintegrations-2020-07-29" }, "operations":{ + "CreateApplication":{ + "name":"CreateApplication", + "http":{ + "method":"POST", + "requestUri":"/applications" + }, + "input":{"shape":"CreateApplicationRequest"}, + "output":{"shape":"CreateApplicationResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ResourceQuotaExceededException"}, + {"shape":"DuplicateResourceException"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "CreateDataIntegration":{ "name":"CreateDataIntegration", "http":{ @@ -78,6 +95,22 @@ {"shape":"AccessDeniedException"} ] }, + "GetApplication":{ + "name":"GetApplication", + "http":{ + "method":"GET", + "requestUri":"/applications/{Arn}" + }, + "input":{"shape":"GetApplicationRequest"}, + "output":{"shape":"GetApplicationResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetDataIntegration":{ "name":"GetDataIntegration", "http":{ @@ -110,6 +143,21 @@ {"shape":"AccessDeniedException"} ] }, + "ListApplications":{ + "name":"ListApplications", + "http":{ + "method":"GET", + "requestUri":"/applications" + }, + "input":{"shape":"ListApplicationsRequest"}, + "output":{"shape":"ListApplicationsResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListDataIntegrationAssociations":{ "name":"ListDataIntegrationAssociations", "http":{ @@ -217,6 +265,22 @@ {"shape":"ThrottlingException"} ] }, + "UpdateApplication":{ + "name":"UpdateApplication", + "http":{ + "method":"PATCH", + "requestUri":"/applications/{Arn}" + }, + "input":{"shape":"UpdateApplicationRequest"}, + "output":{"shape":"UpdateApplicationResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "UpdateDataIntegration":{ "name":"UpdateDataIntegration", "http":{ @@ -259,12 +323,65 @@ "error":{"httpStatusCode":403}, "exception":true }, + "ApplicationApprovedOrigins":{ + "type":"list", + "member":{"shape":"ApplicationTrustedSource"}, + "max":50, + "min":1 + }, + "ApplicationName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[a-zA-Z0-9\\/\\._ \\-]+$" + }, + "ApplicationNamespace":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^[a-zA-Z0-9\\/\\._\\-]+$" + }, + "ApplicationSourceConfig":{ + "type":"structure", + "members":{ + "ExternalUrlConfig":{"shape":"ExternalUrlConfig"} + } + }, + "ApplicationSummary":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Id":{"shape":"UUID"}, + "Name":{"shape":"ApplicationName"}, + "Namespace":{"shape":"ApplicationNamespace"}, + "CreatedTime":{"shape":"Timestamp"}, + "LastModifiedTime":{"shape":"Timestamp"} + } + }, + "ApplicationTrustedSource":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^\\w+\\:\\/\\/.*$" + }, + "ApplicationsList":{ + "type":"list", + "member":{"shape":"ApplicationSummary"}, + "max":50, + "min":1 + }, "Arn":{ "type":"string", "max":2048, "min":1, "pattern":"^arn:aws:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$" }, + "ArnOrUUID":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"^(arn:aws:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}|[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})(:[\\w\\$]+)?$" + }, "ClientAssociationMetadata":{ "type":"map", "key":{"shape":"NonBlankString"}, @@ -276,13 +393,40 @@ "min":1, "pattern":".*" }, + "CreateApplicationRequest":{ + "type":"structure", + "required":[ + "Name", + "Namespace", + "ApplicationSourceConfig" + ], + "members":{ + "Name":{"shape":"ApplicationName"}, + "Namespace":{"shape":"ApplicationNamespace"}, + "Description":{"shape":"Description"}, + "ApplicationSourceConfig":{"shape":"ApplicationSourceConfig"}, + "Subscriptions":{"shape":"SubscriptionList"}, + "Publications":{"shape":"PublicationList"}, + "ClientToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true + }, + "Tags":{"shape":"TagMap"} + } + }, + "CreateApplicationResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Id":{"shape":"UUID"} + } + }, "CreateDataIntegrationRequest":{ "type":"structure", "required":[ "Name", "KmsKey", - "SourceURI", - "ScheduleConfig" + "SourceURI" ], "members":{ "Name":{"shape":"Name"}, @@ -426,6 +570,12 @@ "min":1, "pattern":"^[a-zA-Z0-9\\/\\._\\-]+$" }, + "EventDefinitionSchema":{ + "type":"string", + "max":10240, + "min":1, + "pattern":"^.*$" + }, "EventFilter":{ "type":"structure", "required":["Source"], @@ -467,6 +617,20 @@ "max":50, "min":1 }, + "EventName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[a-zA-Z0-9\\/\\._\\-]+::[a-zA-Z0-9\\/\\._\\-]+(?:\\*)?$" + }, + "ExternalUrlConfig":{ + "type":"structure", + "required":["AccessUrl"], + "members":{ + "AccessUrl":{"shape":"URL"}, + "ApprovedOrigins":{"shape":"ApplicationApprovedOrigins"} + } + }, "Fields":{ "type":"string", "max":255, @@ -498,6 +662,33 @@ "max":10, "min":1 }, + "GetApplicationRequest":{ + "type":"structure", + "required":["Arn"], + "members":{ + "Arn":{ + "shape":"ArnOrUUID", + "location":"uri", + "locationName":"Arn" + } + } + }, + "GetApplicationResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Id":{"shape":"UUID"}, + "Name":{"shape":"ApplicationName"}, + "Namespace":{"shape":"ApplicationNamespace"}, + "Description":{"shape":"Description"}, + "ApplicationSourceConfig":{"shape":"ApplicationSourceConfig"}, + "Subscriptions":{"shape":"SubscriptionList"}, + "Publications":{"shape":"PublicationList"}, + "CreatedTime":{"shape":"Timestamp"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "Tags":{"shape":"TagMap"} + } + }, "GetDataIntegrationRequest":{ "type":"structure", "required":["Identifier"], @@ -575,6 +766,28 @@ "error":{"httpStatusCode":400}, "exception":true }, + "ListApplicationsRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListApplicationsResponse":{ + "type":"structure", + "members":{ + "Applications":{"shape":"ApplicationsList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListDataIntegrationAssociationsRequest":{ "type":"structure", "required":["DataIntegrationIdentifier"], @@ -733,6 +946,24 @@ "key":{"shape":"NonBlankString"}, "value":{"shape":"FieldsMap"} }, + "Publication":{ + "type":"structure", + "required":[ + "Event", + "Schema" + ], + "members":{ + "Event":{"shape":"EventName"}, + "Schema":{"shape":"EventDefinitionSchema"}, + "Description":{"shape":"Description"} + } + }, + "PublicationList":{ + "type":"list", + "member":{"shape":"Publication"}, + "max":50, + "min":0 + }, "ResourceNotFoundException":{ "type":"structure", "members":{ @@ -770,6 +1001,20 @@ "min":1, "pattern":"^(\\w+\\:\\/\\/[\\w.-]+[\\w/!@#+=.-]+$)|(\\w+\\:\\/\\/[\\w.-]+[\\w/!@#+=.-]+[\\w/!@#+=.-]+[\\w/!@#+=.,-]+$)" }, + "Subscription":{ + "type":"structure", + "required":["Event"], + "members":{ + "Event":{"shape":"EventName"}, + "Description":{"shape":"Description"} + } + }, + "SubscriptionList":{ + "type":"list", + "member":{"shape":"Subscription"}, + "max":50, + "min":0 + }, "TagKey":{ "type":"string", "max":128, @@ -821,6 +1066,13 @@ "error":{"httpStatusCode":429}, "exception":true }, + "Timestamp":{"type":"timestamp"}, + "URL":{ + "type":"string", + "max":1000, + "min":1, + "pattern":"^\\w+\\:\\/\\/.*$" + }, "UUID":{ "type":"string", "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}" @@ -848,6 +1100,27 @@ "type":"structure", "members":{ } + }, + "UpdateApplicationRequest":{ + "type":"structure", + "required":["Arn"], + "members":{ + "Arn":{ + "shape":"ArnOrUUID", + "location":"uri", + "locationName":"Arn" + }, + "Name":{"shape":"ApplicationName"}, + "Description":{"shape":"Description"}, + "ApplicationSourceConfig":{"shape":"ApplicationSourceConfig"}, + "Subscriptions":{"shape":"SubscriptionList"}, + "Publications":{"shape":"PublicationList"} + } + }, + "UpdateApplicationResponse":{ + "type":"structure", + "members":{ + } }, "UpdateDataIntegrationRequest":{ "type":"structure", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,12 +2,15 @@ "version": "2.0", "service": "

The Amazon AppIntegrations service enables you to configure and reuse connections to external applications.

For information about how you can use external applications with Amazon Connect, see Set up pre-built integrations and Deliver information to agents using Amazon Connect Wisdom in the Amazon Connect Administrator Guide.

", "operations": { + "CreateApplication": "

This API is in preview release and subject to change.

Creates and persists an Application resource.

", "CreateDataIntegration": "

Creates and persists a DataIntegration resource.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "CreateEventIntegration": "

Creates an EventIntegration, given a specified name, description, and a reference to an Amazon EventBridge bus in your account and a partner event source that pushes events to that bus. No objects are created in the your account, only metadata that is persisted on the EventIntegration control plane.

", "DeleteDataIntegration": "

Deletes the DataIntegration. Only DataIntegrations that don't have any DataIntegrationAssociations can be deleted. Deleting a DataIntegration also deletes the underlying Amazon AppFlow flow and service linked role.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "DeleteEventIntegration": "

Deletes the specified existing event integration. If the event integration is associated with clients, the request is rejected.

", + "GetApplication": "

This API is in preview release and subject to change.

Get an Application resource.

", "GetDataIntegration": "

Returns information about the DataIntegration.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "GetEventIntegration": "

Returns information about the event integration.

", + "ListApplications": "

This API is in preview release and subject to change.

Lists applications in the account.

", "ListDataIntegrationAssociations": "

Returns a paginated list of DataIntegration associations in the account.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "ListDataIntegrations": "

Returns a paginated list of DataIntegrations in the account.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "ListEventIntegrationAssociations": "

Returns a paginated list of event integration associations in the account.

", @@ -15,6 +18,7 @@ "ListTagsForResource": "

Lists the tags for the specified resource.

", "TagResource": "

Adds the specified tags to the specified resource.

", "UntagResource": "

Removes the specified tags from the specified resource.

", + "UpdateApplication": "

This API is in preview release and subject to change.

Updates and persists an Application resource.

", "UpdateDataIntegration": "

Updates the description of a DataIntegration.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "UpdateEventIntegration": "

Updates the description of an event integration.

" }, @@ -24,9 +28,60 @@ "refs": { } }, + "ApplicationApprovedOrigins": { + "base": null, + "refs": { + "ExternalUrlConfig$ApprovedOrigins": "

Additional URLs to allow list if different than the access URL.

" + } + }, + "ApplicationName": { + "base": null, + "refs": { + "ApplicationSummary$Name": "

The name of the application.

", + "CreateApplicationRequest$Name": "

The name of the application.

", + "GetApplicationResponse$Name": "

The name of the application.

", + "UpdateApplicationRequest$Name": "

The name of the application.

" + } + }, + "ApplicationNamespace": { + "base": null, + "refs": { + "ApplicationSummary$Namespace": "

The namespace of the application.

", + "CreateApplicationRequest$Namespace": "

The namespace of the application.

", + "GetApplicationResponse$Namespace": "

The namespace of the application.

" + } + }, + "ApplicationSourceConfig": { + "base": "

The configuration for where the application should be loaded from.

", + "refs": { + "CreateApplicationRequest$ApplicationSourceConfig": "

The configuration for where the application should be loaded from.

", + "GetApplicationResponse$ApplicationSourceConfig": "

The configuration for where the application should be loaded from.

", + "UpdateApplicationRequest$ApplicationSourceConfig": "

The configuration for where the application should be loaded from.

" + } + }, + "ApplicationSummary": { + "base": "

Summary information about the Application.

", + "refs": { + "ApplicationsList$member": null + } + }, + "ApplicationTrustedSource": { + "base": null, + "refs": { + "ApplicationApprovedOrigins$member": null + } + }, + "ApplicationsList": { + "base": null, + "refs": { + "ListApplicationsResponse$Applications": "

The Applications associated with this account.

" + } + }, "Arn": { "base": null, "refs": { + "ApplicationSummary$Arn": "

The Amazon Resource Name (ARN) of the Application.

", + "CreateApplicationResponse$Arn": "

The Amazon Resource Name (ARN) of the Application.

", "CreateDataIntegrationResponse$Arn": "

The Amazon Resource Name (ARN)

", "CreateEventIntegrationResponse$EventIntegrationArn": "

The Amazon Resource Name (ARN) of the event integration.

", "DataIntegrationAssociationSummary$DataIntegrationAssociationArn": "

The Amazon Resource Name (ARN) of the DataIntegration association.

", @@ -34,6 +89,7 @@ "DataIntegrationSummary$Arn": "

The Amazon Resource Name (ARN) of the DataIntegration.

", "EventIntegration$EventIntegrationArn": "

The Amazon Resource Name (ARN) of the event integration.

", "EventIntegrationAssociation$EventIntegrationAssociationArn": "

The Amazon Resource Name (ARN) for the event integration association.

", + "GetApplicationResponse$Arn": "

The Amazon Resource Name (ARN) of the Application.

", "GetDataIntegrationResponse$Arn": "

The Amazon Resource Name (ARN) for the DataIntegration.

", "GetEventIntegrationResponse$EventIntegrationArn": "

The Amazon Resource Name (ARN) for the event integration.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", @@ -41,6 +97,13 @@ "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

" } }, + "ArnOrUUID": { + "base": null, + "refs": { + "GetApplicationRequest$Arn": "

The Amazon Resource Name (ARN) of the Application.

", + "UpdateApplicationRequest$Arn": "

The Amazon Resource Name (ARN) of the Application.

" + } + }, "ClientAssociationMetadata": { "base": null, "refs": { @@ -54,6 +117,16 @@ "EventIntegrationAssociation$ClientId": "

The identifier for the client that is associated with the event integration.

" } }, + "CreateApplicationRequest": { + "base": null, + "refs": { + } + }, + "CreateApplicationResponse": { + "base": null, + "refs": { + } + }, "CreateDataIntegrationRequest": { "base": null, "refs": { @@ -121,14 +194,19 @@ "Description": { "base": null, "refs": { + "CreateApplicationRequest$Description": "

The description of the application.

", "CreateDataIntegrationRequest$Description": "

A description of the DataIntegration.

", "CreateDataIntegrationResponse$Description": "

A description of the DataIntegration.

", "CreateEventIntegrationRequest$Description": "

The description of the event integration.

", "EventIntegration$Description": "

The event integration description.

", + "GetApplicationResponse$Description": "

The description of the application.

", "GetDataIntegrationResponse$Description": "

The KMS key for the DataIntegration.

", "GetEventIntegrationResponse$Description": "

The description of the event integration.

", + "Publication$Description": "

The description of the publication.

", + "Subscription$Description": "

The description of the subscription.

", + "UpdateApplicationRequest$Description": "

The description of the application.

", "UpdateDataIntegrationRequest$Description": "

A description of the DataIntegration.

", - "UpdateEventIntegrationRequest$Description": "

The description of the event inegration.

" + "UpdateEventIntegrationRequest$Description": "

The description of the event integration.

" } }, "DuplicateResourceException": { @@ -150,6 +228,12 @@ "EventIntegrationAssociation$EventBridgeRuleName": "

The name of the EventBridge rule.

" } }, + "EventDefinitionSchema": { + "base": null, + "refs": { + "Publication$Schema": "

The JSON schema of the publication event.

" + } + }, "EventFilter": { "base": "

The event filter.

", "refs": { @@ -182,6 +266,19 @@ "ListEventIntegrationsResponse$EventIntegrations": "

The event integrations.

" } }, + "EventName": { + "base": null, + "refs": { + "Publication$Event": "

The name of the publication.

", + "Subscription$Event": "

The name of the subscription.

" + } + }, + "ExternalUrlConfig": { + "base": "

The external URL source for the application.

", + "refs": { + "ApplicationSourceConfig$ExternalUrlConfig": "

The external URL source for the application.

" + } + }, "Fields": { "base": null, "refs": { @@ -215,6 +312,16 @@ "FileConfiguration$Folders": "

Identifiers for the source folders to pull all files from recursively.

" } }, + "GetApplicationRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationResponse": { + "base": null, + "refs": { + } + }, "GetDataIntegrationRequest": { "base": null, "refs": { @@ -238,6 +345,7 @@ "IdempotencyToken": { "base": null, "refs": { + "CreateApplicationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateDataIntegrationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateDataIntegrationResponse$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateEventIntegrationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

" @@ -262,6 +370,16 @@ "refs": { } }, + "ListApplicationsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationsResponse": { + "base": null, + "refs": { + } + }, "ListDataIntegrationAssociationsRequest": { "base": null, "refs": { @@ -315,6 +433,7 @@ "MaxResults": { "base": null, "refs": { + "ListApplicationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListDataIntegrationAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListDataIntegrationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListEventIntegrationAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", @@ -354,6 +473,8 @@ "NextToken": { "base": null, "refs": { + "ListApplicationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListApplicationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListDataIntegrationAssociationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListDataIntegrationAssociationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListDataIntegrationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", @@ -398,6 +519,20 @@ "GetDataIntegrationResponse$ObjectConfiguration": "

The configuration for what data should be pulled from the source.

" } }, + "Publication": { + "base": "

The configuration of an event that the application publishes.

", + "refs": { + "PublicationList$member": null + } + }, + "PublicationList": { + "base": null, + "refs": { + "CreateApplicationRequest$Publications": "

The events that the application publishes.

", + "GetApplicationResponse$Publications": "

The events that the application publishes.

", + "UpdateApplicationRequest$Publications": "

The events that the application publishes.

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

The specified resource was not found.

", "refs": { @@ -431,6 +566,20 @@ "GetDataIntegrationResponse$SourceURI": "

The URI of the data source.

" } }, + "Subscription": { + "base": "

The configuration of an event that the application subscribes.

", + "refs": { + "SubscriptionList$member": null + } + }, + "SubscriptionList": { + "base": null, + "refs": { + "CreateApplicationRequest$Subscriptions": "

The events that the application subscribes.

", + "GetApplicationResponse$Subscriptions": "

The events that the application subscribes.

", + "UpdateApplicationRequest$Subscriptions": "

The events that the application subscribes.

" + } + }, "TagKey": { "base": null, "refs": { @@ -447,10 +596,12 @@ "TagMap": { "base": null, "refs": { + "CreateApplicationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateDataIntegrationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateDataIntegrationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateEventIntegrationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "EventIntegration$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", + "GetApplicationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "GetDataIntegrationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "GetEventIntegrationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "ListTagsForResourceResponse$tags": "

Information about the tags.

", @@ -478,11 +629,29 @@ "refs": { } }, + "Timestamp": { + "base": null, + "refs": { + "ApplicationSummary$CreatedTime": "

The time when the application was created.

", + "ApplicationSummary$LastModifiedTime": "

The time when the application was last modified.

", + "GetApplicationResponse$CreatedTime": "

The created time of the Application.

", + "GetApplicationResponse$LastModifiedTime": "

The last modified time of the Application.

" + } + }, + "URL": { + "base": null, + "refs": { + "ExternalUrlConfig$AccessUrl": "

The URL to access the application.

" + } + }, "UUID": { "base": null, "refs": { + "ApplicationSummary$Id": "

A unique identifier for the Application.

", + "CreateApplicationResponse$Id": "

A unique identifier for the Application.

", "CreateDataIntegrationResponse$Id": "

A unique identifier.

", "EventIntegrationAssociation$EventIntegrationAssociationId": "

The identifier for the event integration association.

", + "GetApplicationResponse$Id": "

A unique identifier for the Application.

", "GetDataIntegrationResponse$Id": "

A unique identifier.

" } }, @@ -495,6 +664,16 @@ "base": null, "refs": { } + }, + "UpdateApplicationRequest": { + "base": null, + "refs": { + } + }, + "UpdateApplicationResponse": { + "base": null, + "refs": { + } }, "UpdateDataIntegrationRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://app-integrations-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://app-integrations-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://app-integrations-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://app-integrations-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://app-integrations.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://app-integrations.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://app-integrations.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://app-integrations.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -274,6 +274,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -287,6 +298,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -300,6 +322,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -313,6 +346,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -375,6 +419,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,88 @@ { "version": "1.0", "examples": { + "CreateApplication": [ + { + "input": { + "ApplicationSourceConfig": { + "ExternalUrlConfig": { + "AccessUrl": "https://example.com" + } + }, + "Description": "My first application.", + "Name": "My Application", + "Namespace": "myapplication" + }, + "output": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Id": "98542c53-e8ac-4570-9c85-c6552c8d9c5e" + }, + "comments": { + }, + "description": "The following creates an application named My Application with access url https://example.com.", + "id": "create-an-application", + "title": "To create an application" + } + ], + "GetApplication": [ + { + "input": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e" + }, + "output": { + "ApplicationSourceConfig": { + "ExternalUrlConfig": { + "AccessUrl": "https://example.com" + } + }, + "Description": "My first application.", + "Name": "My Application", + "Namespace": "myapplication" + }, + "comments": { + }, + "description": "The following retrives an application.", + "id": "get-an-application", + "title": "To get an application" + } + ], + "ListApplications": [ + { + "input": { + "MaxResults": 1 + }, + "output": { + "Applications": [ + { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Id": "98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Name": "My Application", + "Namespace": "myapplication" + } + ], + "NextToken": "abc" + }, + "comments": { + }, + "description": "The following lists application summary in the account.", + "id": "list-applications", + "title": "To list applications in the account" + } + ], + "UpdateApplication": [ + { + "input": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Name": "My New Application Name" + }, + "output": { + }, + "comments": { + }, + "description": "The following updates an existing application named with a new name.", + "id": "update-an-application", + "title": "To update an application" + } + ] } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appintegrations/2020-07-29/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appintegrations/2020-07-29/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,4 +1,34 @@ { "pagination": { + "ListApplications": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "Applications" + }, + "ListDataIntegrationAssociations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "DataIntegrationAssociations" + }, + "ListDataIntegrations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "DataIntegrations" + }, + "ListEventIntegrationAssociations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "EventIntegrationAssociations" + }, + "ListEventIntegrations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "EventIntegrations" + } } -} +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-autoscaling/2016-02-06/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-autoscaling/2016-02-06/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-autoscaling/2016-02-06/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-autoscaling/2016-02-06/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -510,7 +510,8 @@ "ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage", "NeptuneReaderAverageCPUUtilization", "SageMakerVariantProvisionedConcurrencyUtilization", - "ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage" + "ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage", + "SageMakerInferenceComponentInvocationsPerCopy" ] }, "MetricUnit":{"type":"string"}, @@ -685,7 +686,8 @@ "elasticache:replication-group:NodeGroups", "elasticache:replication-group:Replicas", "neptune:cluster:ReadReplicaCount", - "sagemaker:variant:DesiredProvisionedConcurrency" + "sagemaker:variant:DesiredProvisionedConcurrency", + "sagemaker:inference-component:DesiredCopyCount" ] }, "ScalableTarget":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-autoscaling/2016-02-06/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-autoscaling/2016-02-06/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-autoscaling/2016-02-06/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-autoscaling/2016-02-06/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,8 +1,8 @@ { "version": "2.0", - "service": "

With Application Auto Scaling, you can configure automatic scaling for the following resources:

  • Amazon AppStream 2.0 fleets

  • Amazon Aurora Replicas

  • Amazon Comprehend document classification and entity recognizer endpoints

  • Amazon DynamoDB tables and global secondary indexes throughput capacity

  • Amazon ECS services

  • Amazon ElastiCache for Redis clusters (replication groups)

  • Amazon EMR clusters

  • Amazon Keyspaces (for Apache Cassandra) tables

  • Lambda function provisioned concurrency

  • Amazon Managed Streaming for Apache Kafka broker storage

  • Amazon Neptune clusters

  • Amazon SageMaker endpoint variants

  • Amazon SageMaker Serverless endpoint provisioned concurrency

  • Spot Fleets (Amazon EC2)

  • Custom resources provided by your own applications or services

To learn more about Application Auto Scaling, see the Application Auto Scaling User Guide.

API Summary

The Application Auto Scaling service API includes three key sets of actions:

  • Register and manage scalable targets - Register Amazon Web Services or custom resources as scalable targets (a resource that Application Auto Scaling can scale), set minimum and maximum capacity limits, and retrieve information on existing scalable targets.

  • Configure and manage automatic scaling - Define scaling policies to dynamically scale your resources in response to CloudWatch alarms, schedule one-time or recurring scaling actions, and retrieve your recent scaling activity history.

  • Suspend and resume scaling - Temporarily suspend and later resume automatic scaling by calling the RegisterScalableTarget API action for any Application Auto Scaling scalable target. You can suspend and resume (individually or in combination) scale-out activities that are triggered by a scaling policy, scale-in activities that are triggered by a scaling policy, and scheduled scaling.

", + "service": "

With Application Auto Scaling, you can configure automatic scaling for the following resources:

  • Amazon AppStream 2.0 fleets

  • Amazon Aurora Replicas

  • Amazon Comprehend document classification and entity recognizer endpoints

  • Amazon DynamoDB tables and global secondary indexes throughput capacity

  • Amazon ECS services

  • Amazon ElastiCache for Redis clusters (replication groups)

  • Amazon EMR clusters

  • Amazon Keyspaces (for Apache Cassandra) tables

  • Lambda function provisioned concurrency

  • Amazon Managed Streaming for Apache Kafka broker storage

  • Amazon Neptune clusters

  • Amazon SageMaker endpoint variants

  • Amazon SageMaker Serverless endpoint provisioned concurrency

  • Amazon SageMaker inference components

  • Spot Fleets (Amazon EC2)

  • Custom resources provided by your own applications or services

To learn more about Application Auto Scaling, see the Application Auto Scaling User Guide.

API Summary

The Application Auto Scaling service API includes three key sets of actions:

  • Register and manage scalable targets - Register Amazon Web Services or custom resources as scalable targets (a resource that Application Auto Scaling can scale), set minimum and maximum capacity limits, and retrieve information on existing scalable targets.

  • Configure and manage automatic scaling - Define scaling policies to dynamically scale your resources in response to CloudWatch alarms, schedule one-time or recurring scaling actions, and retrieve your recent scaling activity history.

  • Suspend and resume scaling - Temporarily suspend and later resume automatic scaling by calling the RegisterScalableTarget API action for any Application Auto Scaling scalable target. You can suspend and resume (individually or in combination) scale-out activities that are triggered by a scaling policy, scale-in activities that are triggered by a scaling policy, and scheduled scaling.

", "operations": { - "DeleteScalingPolicy": "

Deletes the specified scaling policy for an Application Auto Scaling scalable target.

Deleting a step scaling policy deletes the underlying alarm action, but does not delete the CloudWatch alarm associated with the scaling policy, even if it no longer has an associated action.

For more information, see Delete a step scaling policy and Delete a target tracking scaling policy in the Application Auto Scaling User Guide.

", + "DeleteScalingPolicy": "

Deletes the specified scaling policy for an Application Auto Scaling scalable target.

Deleting a step scaling policy deletes the underlying alarm action, but does not delete the CloudWatch alarm associated with the scaling policy, even if it no longer has an associated action.

For more information, see Delete a step scaling policy and Delete a target tracking scaling policy in the Application Auto Scaling User Guide.

", "DeleteScheduledAction": "

Deletes the specified scheduled action for an Application Auto Scaling scalable target.

For more information, see Delete a scheduled action in the Application Auto Scaling User Guide.

", "DeregisterScalableTarget": "

Deregisters an Application Auto Scaling scalable target when you have finished using it. To see which resources have been registered, use DescribeScalableTargets.

Deregistering a scalable target deletes the scaling policies and the scheduled actions that are associated with it.

", "DescribeScalableTargets": "

Gets information about the scalable targets in the specified namespace.

You can filter the results using ResourceIds and ScalableDimension.

", @@ -54,9 +54,9 @@ "Cooldown": { "base": null, "refs": { - "StepScalingPolicyConfiguration$Cooldown": "

The amount of time, in seconds, to wait for a previous scaling activity to take effect. If not specified, the default value is 300. For more information, see Cooldown period in the Application Auto Scaling User Guide.

", - "TargetTrackingScalingPolicyConfiguration$ScaleOutCooldown": "

The amount of time, in seconds, to wait for a previous scale-out activity to take effect. For more information and for default values, see Define cooldown periods in the Application Auto Scaling User Guide.

", - "TargetTrackingScalingPolicyConfiguration$ScaleInCooldown": "

The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start. For more information and for default values, see Define cooldown periods in the Application Auto Scaling User Guide.

" + "StepScalingPolicyConfiguration$Cooldown": "

The amount of time, in seconds, to wait for a previous scaling activity to take effect. If not specified, the default value is 300. For more information, see Cooldown period in the Application Auto Scaling User Guide.

", + "TargetTrackingScalingPolicyConfiguration$ScaleOutCooldown": "

The amount of time, in seconds, to wait for a previous scale-out activity to take effect. For more information and for default values, see Define cooldown periods in the Application Auto Scaling User Guide.

", + "TargetTrackingScalingPolicyConfiguration$ScaleInCooldown": "

The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start. For more information and for default values, see Define cooldown periods in the Application Auto Scaling User Guide.

" } }, "CustomizedMetricSpecification": { @@ -318,12 +318,12 @@ "PolicyType": { "base": null, "refs": { - "PutScalingPolicyRequest$PolicyType": "

The scaling policy type. This parameter is required if you are creating a scaling policy.

The following policy types are supported:

TargetTrackingScaling—Not supported for Amazon EMR

StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more information, see Target tracking scaling policies and Step scaling policies in the Application Auto Scaling User Guide.

", + "PutScalingPolicyRequest$PolicyType": "

The scaling policy type. This parameter is required if you are creating a scaling policy.

The following policy types are supported:

TargetTrackingScaling—Not supported for Amazon EMR.

StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more information, see Target tracking scaling policies and Step scaling policies in the Application Auto Scaling User Guide.

", "ScalingPolicy$PolicyType": "

The scaling policy type.

The following policy types are supported:

TargetTrackingScaling—Not supported for Amazon EMR

StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

" } }, "PredefinedMetricSpecification": { - "base": "

Represents a predefined metric for a target tracking scaling policy to use with Application Auto Scaling.

Only the Amazon Web Services that you're using send metrics to Amazon CloudWatch. To determine whether a desired metric already exists by looking up its namespace and dimension using the CloudWatch metrics dashboard in the console, follow the procedure in Building dashboards with CloudWatch in the Application Auto Scaling User Guide.

", + "base": "

Represents a predefined metric for a target tracking scaling policy to use with Application Auto Scaling.

Only the Amazon Web Services that you're using send metrics to Amazon CloudWatch. To determine whether a desired metric already exists by looking up its namespace and dimension using the CloudWatch metrics dashboard in the console, follow the procedure in Monitor your resources using CloudWatch in the Application Auto Scaling User Guide.

", "refs": { "TargetTrackingScalingPolicyConfiguration$PredefinedMetricSpecification": "

A predefined metric. You can specify either a predefined metric or a customized metric.

" } @@ -384,36 +384,36 @@ "base": null, "refs": { "DeleteScalingPolicyRequest$PolicyName": "

The name of the scaling policy.

", - "DeleteScalingPolicyRequest$ResourceId": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "DeleteScalingPolicyRequest$ResourceId": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "DeleteScheduledActionRequest$ScheduledActionName": "

The name of the scheduled action.

", - "DeleteScheduledActionRequest$ResourceId": "

The identifier of the resource associated with the scheduled action. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", - "DeregisterScalableTargetRequest$ResourceId": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", - "DescribeScalingActivitiesRequest$ResourceId": "

The identifier of the resource associated with the scaling activity. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", - "DescribeScalingPoliciesRequest$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", - "DescribeScheduledActionsRequest$ResourceId": "

The identifier of the resource associated with the scheduled action. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", - "PutScalingPolicyRequest$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "DeleteScheduledActionRequest$ResourceId": "

The identifier of the resource associated with the scheduled action. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", + "DeregisterScalableTargetRequest$ResourceId": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", + "DescribeScalingActivitiesRequest$ResourceId": "

The identifier of the resource associated with the scaling activity. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", + "DescribeScalingPoliciesRequest$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", + "DescribeScheduledActionsRequest$ResourceId": "

The identifier of the resource associated with the scheduled action. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", + "PutScalingPolicyRequest$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "PutScalingPolicyResponse$PolicyARN": "

The Amazon Resource Name (ARN) of the resulting scaling policy.

", "PutScheduledActionRequest$Schedule": "

The schedule for this action. The following formats are supported:

  • At expressions - \"at(yyyy-mm-ddThh:mm:ss)\"

  • Rate expressions - \"rate(value unit)\"

  • Cron expressions - \"cron(fields)\"

At expressions are useful for one-time schedules. Cron expressions are useful for scheduled actions that run periodically at a specified date and time, and rate expressions are useful for scheduled actions that run at a regular interval.

At and cron expressions use Universal Coordinated Time (UTC) by default.

The cron format consists of six fields separated by white spaces: [Minutes] [Hours] [Day_of_Month] [Month] [Day_of_Week] [Year].

For rate expressions, value is a positive integer and unit is minute | minutes | hour | hours | day | days.

For more information and examples, see Example scheduled actions for Application Auto Scaling in the Application Auto Scaling User Guide.

", "PutScheduledActionRequest$Timezone": "

Specifies the time zone used when setting a scheduled action by using an at or cron expression. If a time zone is not provided, UTC is used by default.

Valid values are the canonical names of the IANA time zones supported by Joda-Time (such as Etc/GMT+9 or Pacific/Tahiti). For more information, see https://www.joda.org/joda-time/timezones.html.

", - "PutScheduledActionRequest$ResourceId": "

The identifier of the resource associated with the scheduled action. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", - "RegisterScalableTargetRequest$ResourceId": "

The identifier of the resource that is associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "PutScheduledActionRequest$ResourceId": "

The identifier of the resource associated with the scheduled action. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", + "RegisterScalableTargetRequest$ResourceId": "

The identifier of the resource that is associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "RegisterScalableTargetRequest$RoleARN": "

This parameter is required for services that do not support service-linked roles (such as Amazon EMR), and it must specify the ARN of an IAM role that allows Application Auto Scaling to modify the scalable target on your behalf.

If the service supports service-linked roles, Application Auto Scaling uses a service-linked role, which it creates if it does not yet exist. For more information, see Application Auto Scaling IAM roles.

", "ResourceIdsMaxLen1600$member": null, - "ScalableTarget$ResourceId": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "ScalableTarget$ResourceId": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "ScalableTarget$RoleARN": "

The ARN of an IAM role that allows Application Auto Scaling to modify the scalable target on your behalf.

", - "ScalingActivity$ResourceId": "

The identifier of the resource associated with the scaling activity. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "ScalingActivity$ResourceId": "

The identifier of the resource associated with the scaling activity. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "ScalingPolicy$PolicyARN": "

The Amazon Resource Name (ARN) of the scaling policy.

", - "ScalingPolicy$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "ScalingPolicy$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "ScheduledAction$ScheduledActionARN": "

The Amazon Resource Name (ARN) of the scheduled action.

", "ScheduledAction$Schedule": "

The schedule for this action. The following formats are supported:

  • At expressions - \"at(yyyy-mm-ddThh:mm:ss)\"

  • Rate expressions - \"rate(value unit)\"

  • Cron expressions - \"cron(fields)\"

At expressions are useful for one-time schedules. Cron expressions are useful for scheduled actions that run periodically at a specified date and time, and rate expressions are useful for scheduled actions that run at a regular interval.

At and cron expressions use Universal Coordinated Time (UTC) by default.

The cron format consists of six fields separated by white spaces: [Minutes] [Hours] [Day_of_Month] [Month] [Day_of_Week] [Year].

For rate expressions, value is a positive integer and unit is minute | minutes | hour | hours | day | days.

For more information and examples, see Example scheduled actions for Application Auto Scaling in the Application Auto Scaling User Guide.

", "ScheduledAction$Timezone": "

The time zone used when referring to the date and time of a scheduled action, when the scheduled action uses an at or cron expression.

", - "ScheduledAction$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

" + "ScheduledAction$ResourceId": "

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

" } }, "ResourceIdsMaxLen1600": { "base": null, "refs": { - "DescribeScalableTargetsRequest$ResourceIds": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

", + "DescribeScalableTargetsRequest$ResourceIds": "

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier.

  • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

  • Spot Fleet - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

  • EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • AppStream 2.0 fleet - The resource type is fleet and the unique identifier is the fleet name. Example: fleet/sample-fleet.

  • DynamoDB table - The resource type is table and the unique identifier is the table name. Example: table/my-table.

  • DynamoDB global secondary index - The resource type is index and the unique identifier is the index name. Example: table/my-table/index/my-table-index.

  • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

  • SageMaker endpoint variant - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • Custom resources are not supported with a resource type. This parameter must specify the OutputValue from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our GitHub repository.

  • Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

  • Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

  • Lambda provisioned concurrency - The resource type is function and the unique identifier is the function name with a function version or alias name suffix that is not $LATEST. Example: function:my-function:prod or function:my-function:1.

  • Amazon Keyspaces table - The resource type is table and the unique identifier is the table name. Example: keyspace/mykeyspace/table/mytable.

  • Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

  • Amazon ElastiCache replication group - The resource type is replication-group and the unique identifier is the replication group name. Example: replication-group/mycluster.

  • Neptune cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:mycluster.

  • SageMaker Serverless endpoint - The resource type is variant and the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering.

  • SageMaker inference component - The resource type is inference-component and the unique identifier is the resource ID. Example: inference-component/my-inference-component.

", "DescribeScalingPoliciesRequest$PolicyNames": "

The names of the scaling policies to describe.

", "DescribeScheduledActionsRequest$ScheduledActionNames": "

The names of the scheduled actions to describe.

" } @@ -438,20 +438,20 @@ "ScalableDimension": { "base": null, "refs": { - "DeleteScalingPolicyRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "DeleteScheduledActionRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "DeregisterScalableTargetRequest$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "DescribeScalableTargetsRequest$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "DescribeScalingActivitiesRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "DescribeScalingPoliciesRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "DescribeScheduledActionsRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "PutScalingPolicyRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "PutScheduledActionRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "RegisterScalableTargetRequest$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "ScalableTarget$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "ScalingActivity$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "ScalingPolicy$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

", - "ScheduledAction$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

" + "DeleteScalingPolicyRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "DeleteScheduledActionRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "DeregisterScalableTargetRequest$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "DescribeScalableTargetsRequest$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "DescribeScalingActivitiesRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "DescribeScalingPoliciesRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "DescribeScheduledActionsRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. If you specify a scalable dimension, you must also specify a resource ID.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "PutScalingPolicyRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "PutScheduledActionRequest$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "RegisterScalableTargetRequest$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "ScalableTarget$ScalableDimension": "

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "ScalingActivity$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "ScalingPolicy$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

", + "ScheduledAction$ScalableDimension": "

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

  • ecs:service:DesiredCount - The desired task count of an ECS service.

  • elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

  • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet.

  • appstream:fleet:DesiredCapacity - The desired capacity of an AppStream 2.0 fleet.

  • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

  • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

  • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

  • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

  • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

  • sagemaker:variant:DesiredInstanceCount - The number of EC2 instances for a SageMaker model endpoint variant.

  • custom-resource:ResourceType:Property - The scalable dimension for a custom resource provided by your own application or service.

  • comprehend:document-classifier-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend document classification endpoint.

  • comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number of inference units for an Amazon Comprehend entity recognizer endpoint.

  • lambda:function:ProvisionedConcurrency - The provisioned concurrency for a Lambda function.

  • cassandra:table:ReadCapacityUnits - The provisioned read capacity for an Amazon Keyspaces table.

  • cassandra:table:WriteCapacityUnits - The provisioned write capacity for an Amazon Keyspaces table.

  • kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster.

  • elasticache:replication-group:NodeGroups - The number of node groups for an Amazon ElastiCache replication group.

  • elasticache:replication-group:Replicas - The number of replicas per node group for an Amazon ElastiCache replication group.

  • neptune:cluster:ReadReplicaCount - The count of read replicas in an Amazon Neptune DB cluster.

  • sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency for a SageMaker Serverless endpoint.

  • sagemaker:inference-component:DesiredCopyCount - The number of copies across an endpoint for a SageMaker inference component.

" } }, "ScalableTarget": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-autoscaling/2016-02-06/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-autoscaling/2016-02-06/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-autoscaling/2016-02-06/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-autoscaling/2016-02-06/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://application-autoscaling-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://application-autoscaling-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://application-autoscaling.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://application-autoscaling-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://application-autoscaling.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://application-autoscaling-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://application-autoscaling.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://application-autoscaling.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://application-autoscaling.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://application-autoscaling.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-insights/2018-11-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-insights/2018-11-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-insights/2018-11-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-insights/2018-11-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -437,7 +437,8 @@ "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, - {"shape":"InternalServerException"} + {"shape":"InternalServerException"}, + {"shape":"ResourceInUseException"} ] }, "UpdateLogPattern":{ @@ -552,13 +553,15 @@ "CWEMonitorEnabled":{"shape":"CWEMonitorEnabled"}, "Remarks":{"shape":"Remarks"}, "AutoConfigEnabled":{"shape":"AutoConfigEnabled"}, - "DiscoveryType":{"shape":"DiscoveryType"} + "DiscoveryType":{"shape":"DiscoveryType"}, + "AttachMissingPermission":{"shape":"AttachMissingPermission"} } }, "ApplicationInfoList":{ "type":"list", "member":{"shape":"ApplicationInfo"} }, + "AttachMissingPermission":{"type":"boolean"}, "AutoConfigEnabled":{"type":"boolean"}, "AutoCreate":{"type":"boolean"}, "BadRequestException":{ @@ -645,7 +648,8 @@ "Tags":{"shape":"TagList"}, "AutoConfigEnabled":{"shape":"AutoConfigEnabled"}, "AutoCreate":{"shape":"AutoCreate"}, - "GroupingType":{"shape":"GroupingType"} + "GroupingType":{"shape":"GroupingType"}, + "AttachMissingPermission":{"shape":"AttachMissingPermission"} } }, "CreateApplicationResponse":{ @@ -773,6 +777,7 @@ "ResourceGroupName":{"shape":"ResourceGroupName"}, "ComponentName":{"shape":"ComponentName"}, "Tier":{"shape":"Tier"}, + "WorkloadName":{"shape":"WorkloadName"}, "RecommendationType":{"shape":"RecommendationType"} } }, @@ -1506,7 +1511,8 @@ "CWEMonitorEnabled":{"shape":"CWEMonitorEnabled"}, "OpsItemSNSTopicArn":{"shape":"OpsItemSNSTopicArn"}, "RemoveSNSTopic":{"shape":"RemoveSNSTopic"}, - "AutoConfigEnabled":{"shape":"AutoConfigEnabled"} + "AutoConfigEnabled":{"shape":"AutoConfigEnabled"}, + "AttachMissingPermission":{"shape":"AttachMissingPermission"} } }, "UpdateApplicationResponse":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-insights/2018-11-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-insights/2018-11-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-insights/2018-11-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-insights/2018-11-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -122,6 +122,14 @@ "ListApplicationsResponse$ApplicationInfoList": "

The list of applications.

" } }, + "AttachMissingPermission": { + "base": null, + "refs": { + "ApplicationInfo$AttachMissingPermission": "

If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing.

", + "CreateApplicationRequest$AttachMissingPermission": "

If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing.

", + "UpdateApplicationRequest$AttachMissingPermission": "

If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing.

" + } + }, "AutoConfigEnabled": { "base": null, "refs": { @@ -1276,6 +1284,7 @@ "WorkloadName": { "base": null, "refs": { + "DescribeComponentConfigurationRecommendationRequest$WorkloadName": "

The name of the workload.

", "Workload$WorkloadName": "

The name of the workload.

", "WorkloadConfiguration$WorkloadName": "

The name of the workload.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-insights/2018-11-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-insights/2018-11-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/application-insights/2018-11-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/application-insights/2018-11-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://applicationinsights-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://applicationinsights-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://applicationinsights-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://applicationinsights-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://applicationinsights.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://applicationinsights.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://applicationinsights.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://applicationinsights.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -863,10 +863,7 @@ "required":["validation"], "members":{ "certificate":{"shape":"ClientTlsCertificate"}, - "enforce":{ - "shape":"Boolean", - "box":true - }, + "enforce":{"shape":"Boolean"}, "ports":{"shape":"PortSet"}, "validation":{"shape":"TlsValidationContext"} } @@ -1975,6 +1972,7 @@ }, "HealthCheckThreshold":{ "type":"integer", + "box":true, "max":10, "min":2 }, @@ -2689,14 +2687,17 @@ }, "MaxConnections":{ "type":"integer", + "box":true, "min":1 }, "MaxPendingRequests":{ "type":"integer", + "box":true, "min":1 }, "MaxRequests":{ "type":"integer", + "box":true, "min":1 }, "MaxRetries":{ @@ -2831,6 +2832,7 @@ }, "PortNumber":{ "type":"integer", + "box":true, "max":65535, "min":1 }, @@ -3497,10 +3499,7 @@ "required":["validation"], "members":{ "certificate":{"shape":"VirtualGatewayClientTlsCertificate"}, - "enforce":{ - "shape":"Boolean", - "box":true - }, + "enforce":{"shape":"Boolean"}, "ports":{"shape":"PortSet"}, "validation":{"shape":"VirtualGatewayTlsValidationContext"} } @@ -3581,6 +3580,7 @@ }, "VirtualGatewayHealthCheckThreshold":{ "type":"integer", + "box":true, "max":10, "min":2 }, @@ -3602,10 +3602,7 @@ "required":["maxConnections"], "members":{ "maxConnections":{"shape":"MaxConnections"}, - "maxPendingRequests":{ - "shape":"MaxPendingRequests", - "box":true - } + "maxPendingRequests":{"shape":"MaxPendingRequests"} } }, "VirtualGatewayList":{ @@ -3853,10 +3850,7 @@ "required":["maxConnections"], "members":{ "maxConnections":{"shape":"MaxConnections"}, - "maxPendingRequests":{ - "shape":"MaxPendingRequests", - "box":true - } + "maxPendingRequests":{"shape":"MaxPendingRequests"} } }, "VirtualNodeList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -503,7 +503,7 @@ "FilePath": { "base": null, "refs": { - "FileAccessLog$path": "

The file path to write access logs to. You can use /dev/stdout to send access logs to standard out and configure your Envoy container to use a log driver, such as awslogs, to export the access logs to a log storage service such as Amazon CloudWatch Logs. You can also specify a path in the Envoy container's file system to write the files to disk.

 <note> <p>The Envoy process must have write permissions to the path that you specify here. Otherwise, Envoy fails to bootstrap properly.</p> </note> 
", + "FileAccessLog$path": "

The file path to write access logs to. You can use /dev/stdout to send access logs to standard out and configure your Envoy container to use a log driver, such as awslogs, to export the access logs to a log storage service such as Amazon CloudWatch Logs. You can also specify a path in the Envoy container's file system to write the files to disk.

The Envoy process must have write permissions to the path that you specify here. Otherwise, Envoy fails to bootstrap properly.

", "ListenerTlsFileCertificate$certificateChain": "

The certificate chain for the certificate.

", "ListenerTlsFileCertificate$privateKey": "

The private key for a certificate stored on the file system of the virtual node that the proxy is running on.

", "TlsValidationContextFileTrust$certificateChain": "

The certificate trust chain for a certificate stored on the file system of the virtual node that the proxy is running on.

", @@ -1092,7 +1092,7 @@ "base": null, "refs": { "GatewayRouteTarget$port": "

The port number of the gateway route target.

", - "GrpcGatewayRouteMatch$port": "

The port number to match from the request.

", + "GrpcGatewayRouteMatch$port": "

The gateway route port to be matched on.

", "GrpcRouteMatch$port": "

The port number to match on.

", "HttpGatewayRouteMatch$port": "

The port number to match on.

", "HttpRouteMatch$port": "

The port number to match on.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://appmesh-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://appmesh-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://appmesh.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://appmesh.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appmesh/2019-01-25/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appmesh/2019-01-25/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,834 @@ +{ + "testCases": [ + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.af-south-1.api.aws" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-east-1.api.aws" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-northeast-1.api.aws" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-northeast-2.api.aws" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-south-1.api.aws" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-southeast-1.api.aws" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ap-southeast-2.api.aws" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.ca-central-1.api.aws" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-central-1.api.aws" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-north-1.api.aws" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-south-1.api.aws" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-west-1.api.aws" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-west-2.api.aws" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.eu-west-3.api.aws" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.me-south-1.api.aws" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.sa-east-1.api.aws" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://appmesh.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/apprunner/2020-05-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/apprunner/2020-05-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/apprunner/2020-05-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/apprunner/2020-05-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -695,7 +695,8 @@ "members":{ "RepositoryUrl":{"shape":"String"}, "SourceCodeVersion":{"shape":"SourceCodeVersion"}, - "CodeConfiguration":{"shape":"CodeConfiguration"} + "CodeConfiguration":{"shape":"CodeConfiguration"}, + "SourceDirectory":{"shape":"SourceDirectory"} } }, "ConfigurationSource":{ @@ -1275,6 +1276,13 @@ }, "exception":true }, + "IpAddressType":{ + "type":"string", + "enum":[ + "IPV4", + "DUAL_STACK" + ] + }, "IsDefault":{"type":"boolean"}, "KmsKeyArn":{ "type":"string", @@ -1455,7 +1463,8 @@ "type":"structure", "members":{ "EgressConfiguration":{"shape":"EgressConfiguration"}, - "IngressConfiguration":{"shape":"IngressConfiguration"} + "IngressConfiguration":{"shape":"IngressConfiguration"}, + "IpAddressType":{"shape":"IpAddressType"} } }, "NextToken":{ @@ -1762,6 +1771,12 @@ "AuthenticationConfiguration":{"shape":"AuthenticationConfiguration"} } }, + "SourceDirectory":{ + "type":"string", + "max":4096, + "min":1, + "pattern":"[^\\x00]+" + }, "StartCommand":{ "type":"string", "pattern":"[^\\x0a\\x0d]+", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/apprunner/2020-05-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/apprunner/2020-05-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/apprunner/2020-05-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/apprunner/2020-05-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -145,7 +145,7 @@ "refs": { "AutoScalingConfiguration$AutoScalingConfigurationName": "

The customer-provided auto scaling configuration name. It can be used in multiple revisions of a configuration.

", "AutoScalingConfigurationSummary$AutoScalingConfigurationName": "

The customer-provided auto scaling configuration name. It can be used in multiple revisions of a configuration.

", - "CreateAutoScalingConfigurationRequest$AutoScalingConfigurationName": "

A name for the auto scaling configuration. When you use it for the first time in an Amazon Web Services Region, App Runner creates revision number 1 of this name. When you use the same name in subsequent calls, App Runner creates incremental revisions of the configuration.

Prior to the release of Managing auto scaling, the name DefaultConfiguration was reserved.

This restriction is no longer in place. You can now manage DefaultConfiguration the same way you manage your custom auto scaling configurations. This means you can do the following with the DefaultConfiguration that App Runner provides:

  • Create new revisions of the DefaultConfiguration.

  • Delete the revisions of the DefaultConfiguration.

  • Delete the auto scaling configuration for which the App Runner DefaultConfiguration was created.

  • If you delete the auto scaling configuration you can create another custom auto scaling configuration with the same DefaultConfiguration name. The original DefaultConfiguration resource provided by App Runner remains in your account unless you make changes to it.

", + "CreateAutoScalingConfigurationRequest$AutoScalingConfigurationName": "

A name for the auto scaling configuration. When you use it for the first time in an Amazon Web Services Region, App Runner creates revision number 1 of this name. When you use the same name in subsequent calls, App Runner creates incremental revisions of the configuration.

Prior to the release of Auto scale configuration enhancements, the name DefaultConfiguration was reserved.

This restriction is no longer in place. You can now manage DefaultConfiguration the same way you manage your custom auto scaling configurations. This means you can do the following with the DefaultConfiguration that App Runner provides:

  • Create new revisions of the DefaultConfiguration.

  • Delete the revisions of the DefaultConfiguration.

  • Delete the auto scaling configuration for which the App Runner DefaultConfiguration was created.

  • If you delete the auto scaling configuration you can create another custom auto scaling configuration with the same DefaultConfiguration name. The original DefaultConfiguration resource provided by App Runner remains in your account unless you make changes to it.

", "ListAutoScalingConfigurationsRequest$AutoScalingConfigurationName": "

The name of the App Runner auto scaling configuration that you want to list. If specified, App Runner lists revisions that share this name. If not specified, App Runner returns revisions of all active configurations.

" } }, @@ -657,6 +657,12 @@ "refs": { } }, + "IpAddressType": { + "base": null, + "refs": { + "NetworkConfiguration$IpAddressType": "

App Runner provides you with the option to choose between Internet Protocol version 4 (IPv4) and dual-stack (IPv4 and IPv6) for your incoming public network configuration. This is an optional parameter. If you do not specify an IpAddressType, it defaults to select IPv4.

Currently, App Runner supports dual-stack for only Public endpoint. Only IPv4 is supported for Private endpoint. If you update a service that's using dual-stack Public endpoint to a Private endpoint, your App Runner service will default to support only IPv4 for Private endpoint and fail to receive traffic originating from IPv6 endpoint.

" + } + }, "IsDefault": { "base": null, "refs": { @@ -1079,6 +1085,12 @@ "UpdateServiceRequest$SourceConfiguration": "

The source configuration to apply to the App Runner service.

You can change the configuration of the code or image repository that the service uses. However, you can't switch from code to image or the other way around. This means that you must provide the same structure member of SourceConfiguration that you originally included when you created the service. Specifically, you can include either CodeRepository or ImageRepository. To update the source configuration, set the values to members of the structure that you include.

" } }, + "SourceDirectory": { + "base": null, + "refs": { + "CodeRepository$SourceDirectory": "

The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.

" + } + }, "StartCommand": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/apprunner/2020-05-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/apprunner/2020-05-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/apprunner/2020-05-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/apprunner/2020-05-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appstream/2016-12-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appstream/2016-12-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appstream/2016-12-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appstream/2016-12-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1487,9 +1487,9 @@ }, "ComputeCapacity":{ "type":"structure", - "required":["DesiredInstances"], "members":{ - "DesiredInstances":{"shape":"Integer"} + "DesiredInstances":{"shape":"Integer"}, + "DesiredSessions":{"shape":"Integer"} } }, "ComputeCapacityStatus":{ @@ -1499,7 +1499,11 @@ "Desired":{"shape":"Integer"}, "Running":{"shape":"Integer"}, "InUse":{"shape":"Integer"}, - "Available":{"shape":"Integer"} + "Available":{"shape":"Integer"}, + "DesiredUserSessions":{"shape":"Integer"}, + "AvailableUserSessions":{"shape":"Integer"}, + "ActiveUserSessions":{"shape":"Integer"}, + "ActualUserSessions":{"shape":"Integer"} } }, "ConcurrentModificationException":{ @@ -1692,7 +1696,8 @@ "Platform":{"shape":"PlatformType"}, "MaxConcurrentSessions":{"shape":"Integer"}, "UsbDeviceFilterStrings":{"shape":"UsbDeviceFilterStrings"}, - "SessionScriptS3Location":{"shape":"S3Location"} + "SessionScriptS3Location":{"shape":"S3Location"}, + "MaxSessionsPerInstance":{"shape":"Integer"} } }, "CreateFleetResult":{ @@ -2186,12 +2191,13 @@ "FleetName" ], "members":{ - "StackName":{"shape":"String"}, - "FleetName":{"shape":"String"}, + "StackName":{"shape":"Name"}, + "FleetName":{"shape":"Name"}, "UserId":{"shape":"UserId"}, "NextToken":{"shape":"String"}, "Limit":{"shape":"Integer"}, - "AuthenticationType":{"shape":"AuthenticationType"} + "AuthenticationType":{"shape":"AuthenticationType"}, + "InstanceId":{"shape":"String"} } }, "DescribeSessionsResult":{ @@ -2540,7 +2546,8 @@ "Platform":{"shape":"PlatformType"}, "MaxConcurrentSessions":{"shape":"Integer"}, "UsbDeviceFilterStrings":{"shape":"UsbDeviceFilterStrings"}, - "SessionScriptS3Location":{"shape":"S3Location"} + "SessionScriptS3Location":{"shape":"S3Location"}, + "MaxSessionsPerInstance":{"shape":"Integer"} } }, "FleetAttribute":{ @@ -2551,7 +2558,8 @@ "DOMAIN_JOIN_INFO", "IAM_ROLE_ARN", "USB_DEVICE_FILTER_STRINGS", - "SESSION_SCRIPT_S3_LOCATION" + "SESSION_SCRIPT_S3_LOCATION", + "MAX_SESSIONS_PER_INSTANCE" ] }, "FleetAttributes":{ @@ -3063,7 +3071,8 @@ "StartTime":{"shape":"Timestamp"}, "MaxExpirationTime":{"shape":"Timestamp"}, "AuthenticationType":{"shape":"AuthenticationType"}, - "NetworkAccessConfiguration":{"shape":"NetworkAccessConfiguration"} + "NetworkAccessConfiguration":{"shape":"NetworkAccessConfiguration"}, + "InstanceId":{"shape":"String"} } }, "SessionConnectionState":{ @@ -3438,7 +3447,7 @@ "members":{ "ImageName":{"shape":"String"}, "ImageArn":{"shape":"Arn"}, - "Name":{"shape":"String"}, + "Name":{"shape":"Name"}, "InstanceType":{"shape":"String"}, "ComputeCapacity":{"shape":"ComputeCapacity"}, "VpcConfig":{"shape":"VpcConfig"}, @@ -3459,7 +3468,8 @@ "Platform":{"shape":"PlatformType"}, "MaxConcurrentSessions":{"shape":"Integer"}, "UsbDeviceFilterStrings":{"shape":"UsbDeviceFilterStrings"}, - "SessionScriptS3Location":{"shape":"S3Location"} + "SessionScriptS3Location":{"shape":"S3Location"}, + "MaxSessionsPerInstance":{"shape":"Integer"} } }, "UpdateFleetResult":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appstream/2016-12-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appstream/2016-12-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appstream/2016-12-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appstream/2016-12-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1319,14 +1319,20 @@ "base": null, "refs": { "ComputeCapacity$DesiredInstances": "

The desired number of streaming instances.

", + "ComputeCapacity$DesiredSessions": "

The desired number of user sessions for a multi-session fleet. This is not allowed for single-session fleets.

When you create a fleet, you must set either the DesiredSessions or DesiredInstances attribute, based on the type of fleet you create. You can’t define both attributes or leave both attributes blank.

", "ComputeCapacityStatus$Desired": "

The desired number of streaming instances.

", "ComputeCapacityStatus$Running": "

The total number of simultaneous streaming instances that are running.

", "ComputeCapacityStatus$InUse": "

The number of instances in use for streaming.

", "ComputeCapacityStatus$Available": "

The number of currently available instances that can be used to stream sessions.

", - "CreateFleetRequest$MaxUserDurationInSeconds": "

The maximum amount of time that a streaming session can remain active, in seconds. If users are still connected to a streaming instance five minutes before this limit is reached, they are prompted to save any open documents before being disconnected. After this time elapses, the instance is terminated and replaced by a new instance.

Specify a value between 600 and 360000.

", + "ComputeCapacityStatus$DesiredUserSessions": "

The total number of sessions slots that are either running or pending. This represents the total number of concurrent streaming sessions your fleet can support in a steady state.

DesiredUserSessionCapacity = ActualUserSessionCapacity + PendingUserSessionCapacity

This only applies to multi-session fleets.

", + "ComputeCapacityStatus$AvailableUserSessions": "

The number of idle session slots currently available for user sessions.

AvailableUserSessionCapacity = ActualUserSessionCapacity - ActiveUserSessions

This only applies to multi-session fleets.

", + "ComputeCapacityStatus$ActiveUserSessions": "

The number of user sessions currently being used for streaming sessions. This only applies to multi-session fleets.

", + "ComputeCapacityStatus$ActualUserSessions": "

The total number of session slots that are available for streaming or are currently streaming.

ActualUserSessionCapacity = AvailableUserSessionCapacity + ActiveUserSessions

This only applies to multi-session fleets.

", + "CreateFleetRequest$MaxUserDurationInSeconds": "

The maximum amount of time that a streaming session can remain active, in seconds. If users are still connected to a streaming instance five minutes before this limit is reached, they are prompted to save any open documents before being disconnected. After this time elapses, the instance is terminated and replaced by a new instance.

Specify a value between 600 and 432000.

", "CreateFleetRequest$DisconnectTimeoutInSeconds": "

The amount of time that a streaming session remains active after users disconnect. If users try to reconnect to the streaming session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new streaming instance.

Specify a value between 60 and 360000.

", "CreateFleetRequest$IdleDisconnectTimeoutInSeconds": "

The amount of time that users can be idle (inactive) before they are disconnected from their streaming session and the DisconnectTimeoutInSeconds time interval begins. Users are notified before they are disconnected due to inactivity. If they try to reconnect to the streaming session before the time interval specified in DisconnectTimeoutInSeconds elapses, they are connected to their previous session. Users are considered idle when they stop providing keyboard or mouse input during their streaming session. File uploads and downloads, audio in, audio out, and pixels changing do not qualify as user activity. If users continue to be idle after the time interval in IdleDisconnectTimeoutInSeconds elapses, they are disconnected.

To prevent users from being disconnected due to inactivity, specify a value of 0. Otherwise, specify a value between 60 and 3600. The default value is 0.

If you enable this feature, we recommend that you specify a value that corresponds exactly to a whole number of minutes (for example, 60, 120, and 180). If you don't do this, the value is rounded to the nearest minute. For example, if you specify a value of 70, users are disconnected after 1 minute of inactivity. If you specify a value that is at the midpoint between two different minutes, the value is rounded up. For example, if you specify a value of 90, users are disconnected after 2 minutes of inactivity.

", "CreateFleetRequest$MaxConcurrentSessions": "

The maximum concurrent sessions of the Elastic fleet. This is required for Elastic fleets, and not allowed for other fleet types.

", + "CreateFleetRequest$MaxSessionsPerInstance": "

The maximum number of user sessions on an instance. This only applies to multi-session fleets.

", "DescribeAppBlockBuilderAppBlockAssociationsRequest$MaxResults": "

The maximum size of each page of results.

", "DescribeAppBlockBuildersRequest$MaxResults": "

The maximum size of each page of results. The maximum value is 25.

", "DescribeAppBlocksRequest$MaxResults": "

The maximum size of each page of results.

", @@ -1342,12 +1348,14 @@ "Fleet$DisconnectTimeoutInSeconds": "

The amount of time that a streaming session remains active after users disconnect. If they try to reconnect to the streaming session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new streaming instance.

Specify a value between 60 and 360000.

", "Fleet$IdleDisconnectTimeoutInSeconds": "

The amount of time that users can be idle (inactive) before they are disconnected from their streaming session and the DisconnectTimeoutInSeconds time interval begins. Users are notified before they are disconnected due to inactivity. If users try to reconnect to the streaming session before the time interval specified in DisconnectTimeoutInSeconds elapses, they are connected to their previous session. Users are considered idle when they stop providing keyboard or mouse input during their streaming session. File uploads and downloads, audio in, audio out, and pixels changing do not qualify as user activity. If users continue to be idle after the time interval in IdleDisconnectTimeoutInSeconds elapses, they are disconnected.

To prevent users from being disconnected due to inactivity, specify a value of 0. Otherwise, specify a value between 60 and 3600. The default value is 0.

If you enable this feature, we recommend that you specify a value that corresponds exactly to a whole number of minutes (for example, 60, 120, and 180). If you don't do this, the value is rounded to the nearest minute. For example, if you specify a value of 70, users are disconnected after 1 minute of inactivity. If you specify a value that is at the midpoint between two different minutes, the value is rounded up. For example, if you specify a value of 90, users are disconnected after 2 minutes of inactivity.

", "Fleet$MaxConcurrentSessions": "

The maximum number of concurrent sessions for the fleet.

", + "Fleet$MaxSessionsPerInstance": "

The maximum number of user sessions on an instance. This only applies to multi-session fleets.

", "ListEntitledApplicationsRequest$MaxResults": "

The maximum size of each page of results.

", "ScriptDetails$TimeoutInSeconds": "

The run timeout, in seconds, for the script.

", "UpdateFleetRequest$MaxUserDurationInSeconds": "

The maximum amount of time that a streaming session can remain active, in seconds. If users are still connected to a streaming instance five minutes before this limit is reached, they are prompted to save any open documents before being disconnected. After this time elapses, the instance is terminated and replaced by a new instance.

Specify a value between 600 and 432000.

", "UpdateFleetRequest$DisconnectTimeoutInSeconds": "

The amount of time that a streaming session remains active after users disconnect. If users try to reconnect to the streaming session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new streaming instance.

Specify a value between 60 and 360000.

", "UpdateFleetRequest$IdleDisconnectTimeoutInSeconds": "

The amount of time that users can be idle (inactive) before they are disconnected from their streaming session and the DisconnectTimeoutInSeconds time interval begins. Users are notified before they are disconnected due to inactivity. If users try to reconnect to the streaming session before the time interval specified in DisconnectTimeoutInSeconds elapses, they are connected to their previous session. Users are considered idle when they stop providing keyboard or mouse input during their streaming session. File uploads and downloads, audio in, audio out, and pixels changing do not qualify as user activity. If users continue to be idle after the time interval in IdleDisconnectTimeoutInSeconds elapses, they are disconnected.

To prevent users from being disconnected due to inactivity, specify a value of 0. Otherwise, specify a value between 60 and 3600. The default value is 0.

If you enable this feature, we recommend that you specify a value that corresponds exactly to a whole number of minutes (for example, 60, 120, and 180). If you don't do this, the value is rounded to the nearest minute. For example, if you specify a value of 70, users are disconnected after 1 minute of inactivity. If you specify a value that is at the midpoint between two different minutes, the value is rounded up. For example, if you specify a value of 90, users are disconnected after 2 minutes of inactivity.

", - "UpdateFleetRequest$MaxConcurrentSessions": "

The maximum number of concurrent sessions for a fleet.

" + "UpdateFleetRequest$MaxConcurrentSessions": "

The maximum number of concurrent sessions for a fleet.

", + "UpdateFleetRequest$MaxSessionsPerInstance": "

The maximum number of user sessions on an instance. This only applies to multi-session fleets.

" } }, "InvalidAccountStatusException": { @@ -1486,6 +1494,8 @@ "DescribeEntitlementsRequest$StackName": "

The name of the stack with which the entitlement is associated.

", "DescribeImagePermissionsRequest$Name": "

The name of the private image for which to describe permissions. The image must be one that you own.

", "DescribeImagePermissionsResult$Name": "

The name of the private image.

", + "DescribeSessionsRequest$StackName": "

The name of the stack. This value is case-sensitive.

", + "DescribeSessionsRequest$FleetName": "

The name of the fleet. This value is case-sensitive.

", "DisassociateAppBlockBuilderAppBlockRequest$AppBlockBuilderName": "

The name of the app block builder.

", "DisassociateApplicationFleetRequest$FleetName": "

The name of the fleet.

", "DisassociateApplicationFromEntitlementRequest$StackName": "

The name of the stack with which the entitlement is associated.

", @@ -1500,6 +1510,7 @@ "UpdateApplicationRequest$Name": "

The name of the application. This name is visible to users when display name is not specified.

", "UpdateEntitlementRequest$Name": "

The name of the entitlement.

", "UpdateEntitlementRequest$StackName": "

The name of the stack with which the entitlement is associated.

", + "UpdateFleetRequest$Name": "

A unique name for the fleet.

", "UpdateImagePermissionsRequest$Name": "

The name of the private image.

" } }, @@ -1929,9 +1940,8 @@ "DescribeImagePermissionsResult$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

", "DescribeImagesRequest$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.

", "DescribeImagesResult$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

", - "DescribeSessionsRequest$StackName": "

The name of the stack. This value is case-sensitive.

", - "DescribeSessionsRequest$FleetName": "

The name of the fleet. This value is case-sensitive.

", "DescribeSessionsRequest$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.

", + "DescribeSessionsRequest$InstanceId": "

The identifier for the instance hosting the session.

", "DescribeSessionsResult$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

", "DescribeStacksRequest$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.

", "DescribeStacksResult$NextToken": "

The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

", @@ -1987,6 +1997,7 @@ "Session$Id": "

The identifier of the streaming session.

", "Session$StackName": "

The name of the stack for the streaming session.

", "Session$FleetName": "

The name of the fleet for the streaming session.

", + "Session$InstanceId": "

The identifier for the instance hosting the session.

", "Stack$Name": "

The name of the stack.

", "Stack$Description": "

The description to display.

", "Stack$DisplayName": "

The stack name to display.

", @@ -2002,7 +2013,6 @@ "UpdateApplicationRequest$WorkingDirectory": "

The working directory of the application.

", "UpdateApplicationRequest$LaunchParameters": "

The launch parameters of the application.

", "UpdateFleetRequest$ImageName": "

The name of the image used to create the fleet.

", - "UpdateFleetRequest$Name": "

A unique name for the fleet.

", "UpdateFleetRequest$InstanceType": "

The instance type to use when launching fleet instances. The following instance types are available:

  • stream.standard.small

  • stream.standard.medium

  • stream.standard.large

  • stream.standard.xlarge

  • stream.standard.2xlarge

  • stream.compute.large

  • stream.compute.xlarge

  • stream.compute.2xlarge

  • stream.compute.4xlarge

  • stream.compute.8xlarge

  • stream.memory.large

  • stream.memory.xlarge

  • stream.memory.2xlarge

  • stream.memory.4xlarge

  • stream.memory.8xlarge

  • stream.memory.z1d.large

  • stream.memory.z1d.xlarge

  • stream.memory.z1d.2xlarge

  • stream.memory.z1d.3xlarge

  • stream.memory.z1d.6xlarge

  • stream.memory.z1d.12xlarge

  • stream.graphics-design.large

  • stream.graphics-design.xlarge

  • stream.graphics-design.2xlarge

  • stream.graphics-design.4xlarge

  • stream.graphics-desktop.2xlarge

  • stream.graphics.g4dn.xlarge

  • stream.graphics.g4dn.2xlarge

  • stream.graphics.g4dn.4xlarge

  • stream.graphics.g4dn.8xlarge

  • stream.graphics.g4dn.12xlarge

  • stream.graphics.g4dn.16xlarge

  • stream.graphics-pro.4xlarge

  • stream.graphics-pro.8xlarge

  • stream.graphics-pro.16xlarge

The following instance types are available for Elastic fleets:

  • stream.standard.small

  • stream.standard.medium

  • stream.standard.large

  • stream.standard.xlarge

  • stream.standard.2xlarge

", "UpdateStackRequest$Name": "

The name of the stack.

", "UsageReportSubscription$S3BucketName": "

The Amazon S3 bucket where generated reports are stored.

If you enabled on-instance session scripts and Amazon S3 logging for your session script configuration, AppStream 2.0 created an S3 bucket to store the script output. The bucket is unique to your account and Region. When you enable usage reporting in this case, AppStream 2.0 uses the same bucket to store your usage reports. If you haven't already enabled on-instance session scripts, when you enable usage reports, AppStream 2.0 creates a new S3 bucket.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appstream/2016-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appstream/2016-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appstream/2016-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appstream/2016-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -351,9 +349,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appsync/2017-07-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appsync/2017-07-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appsync/2017-07-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appsync/2017-07-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -457,6 +457,20 @@ {"shape":"InternalFailureException"} ] }, + "GetDataSourceIntrospection":{ + "name":"GetDataSourceIntrospection", + "http":{ + "method":"GET", + "requestUri":"/v1/datasources/introspections/{introspectionId}" + }, + "input":{"shape":"GetDataSourceIntrospectionRequest"}, + "output":{"shape":"GetDataSourceIntrospectionResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"NotFoundException"}, + {"shape":"InternalFailureException"} + ] + }, "GetDomainName":{ "name":"GetDomainName", "http":{ @@ -744,6 +758,21 @@ {"shape":"InternalFailureException"} ] }, + "StartDataSourceIntrospection":{ + "name":"StartDataSourceIntrospection", + "http":{ + "method":"POST", + "requestUri":"/v1/datasources/introspections" + }, + "input":{"shape":"StartDataSourceIntrospectionRequest"}, + "output":{"shape":"StartDataSourceIntrospectionResponse"}, + "errors":[ + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedException"}, + {"shape":"InternalFailureException"}, + {"shape":"BadRequestException"} + ] + }, "StartSchemaCreation":{ "name":"StartSchemaCreation", "http":{ @@ -1530,6 +1559,75 @@ "eventBridgeConfig":{"shape":"EventBridgeDataSourceConfig"} } }, + "DataSourceIntrospectionModel":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "fields":{"shape":"DataSourceIntrospectionModelFields"}, + "primaryKey":{"shape":"DataSourceIntrospectionModelIndex"}, + "indexes":{"shape":"DataSourceIntrospectionModelIndexes"}, + "sdl":{"shape":"String"} + } + }, + "DataSourceIntrospectionModelField":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "type":{"shape":"DataSourceIntrospectionModelFieldType"}, + "length":{"shape":"Long"} + } + }, + "DataSourceIntrospectionModelFieldType":{ + "type":"structure", + "members":{ + "kind":{"shape":"String"}, + "name":{"shape":"String"}, + "type":{"shape":"DataSourceIntrospectionModelFieldType"}, + "values":{"shape":"DataSourceIntrospectionModelFieldTypeValues"} + } + }, + "DataSourceIntrospectionModelFieldTypeValues":{ + "type":"list", + "member":{"shape":"String"} + }, + "DataSourceIntrospectionModelFields":{ + "type":"list", + "member":{"shape":"DataSourceIntrospectionModelField"} + }, + "DataSourceIntrospectionModelIndex":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "fields":{"shape":"DataSourceIntrospectionModelIndexFields"} + } + }, + "DataSourceIntrospectionModelIndexFields":{ + "type":"list", + "member":{"shape":"String"} + }, + "DataSourceIntrospectionModelIndexes":{ + "type":"list", + "member":{"shape":"DataSourceIntrospectionModelIndex"} + }, + "DataSourceIntrospectionModels":{ + "type":"list", + "member":{"shape":"DataSourceIntrospectionModel"} + }, + "DataSourceIntrospectionResult":{ + "type":"structure", + "members":{ + "models":{"shape":"DataSourceIntrospectionModels"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "DataSourceIntrospectionStatus":{ + "type":"string", + "enum":[ + "PROCESSING", + "FAILED", + "SUCCESS" + ] + }, "DataSourceType":{ "type":"string", "enum":[ @@ -2005,6 +2103,41 @@ "apiCache":{"shape":"ApiCache"} } }, + "GetDataSourceIntrospectionRequest":{ + "type":"structure", + "required":["introspectionId"], + "members":{ + "introspectionId":{ + "shape":"String", + "location":"uri", + "locationName":"introspectionId" + }, + "includeModelsSDL":{ + "shape":"Boolean", + "location":"querystring", + "locationName":"includeModelsSDL" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "GetDataSourceIntrospectionResponse":{ + "type":"structure", + "members":{ + "introspectionId":{"shape":"String"}, + "introspectionStatus":{"shape":"DataSourceIntrospectionStatus"}, + "introspectionStatusDetail":{"shape":"String"}, + "introspectionResult":{"shape":"DataSourceIntrospectionResult"} + } + }, "GetDataSourceRequest":{ "type":"structure", "required":[ @@ -2754,6 +2887,36 @@ "functions":{"shape":"FunctionsIds"} } }, + "RdsDataApiConfig":{ + "type":"structure", + "required":[ + "resourceArn", + "secretArn", + "databaseName" + ], + "members":{ + "resourceArn":{"shape":"RdsDataApiConfigResourceArn"}, + "secretArn":{"shape":"RdsDataApiConfigSecretArn"}, + "databaseName":{"shape":"RdsDataApiConfigDatabaseName"} + } + }, + "RdsDataApiConfigDatabaseName":{ + "type":"string", + "max":128, + "min":1 + }, + "RdsDataApiConfigResourceArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[a-z-]*:rds:[a-z0-9-]*:\\d{12}:cluster:[0-9A-Za-z_/-]*$" + }, + "RdsDataApiConfigSecretArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[a-z-]*:secretsmanager:[a-z0-9-]*:\\d{12}:secret:[0-9A-Za-z_/-]*$" + }, "RdsHttpEndpointConfig":{ "type":"structure", "members":{ @@ -2882,6 +3045,20 @@ "type":"list", "member":{"shape":"SourceApiAssociationSummary"} }, + "StartDataSourceIntrospectionRequest":{ + "type":"structure", + "members":{ + "rdsDataApiConfig":{"shape":"RdsDataApiConfig"} + } + }, + "StartDataSourceIntrospectionResponse":{ + "type":"structure", + "members":{ + "introspectionId":{"shape":"String"}, + "introspectionStatus":{"shape":"DataSourceIntrospectionStatus"}, + "introspectionStatusDetail":{"shape":"String"} + } + }, "StartSchemaCreationRequest":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appsync/2017-07-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appsync/2017-07-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appsync/2017-07-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appsync/2017-07-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -30,6 +30,7 @@ "GetApiAssociation": "

Retrieves an ApiAssociation object.

", "GetApiCache": "

Retrieves an ApiCache object.

", "GetDataSource": "

Retrieves a DataSource object.

", + "GetDataSourceIntrospection": "

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

", "GetDomainName": "

Retrieves a custom DomainName object.

", "GetFunction": "

Get a Function.

", "GetGraphqlApi": "

Retrieves a GraphqlApi object.

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

Lists the tags for a resource.

", "ListTypes": "

Lists the types for a given API.

", "ListTypesByAssociation": "

Lists Type objects by the source API association ID.

", + "StartDataSourceIntrospection": "

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

", "StartSchemaCreation": "

Adds a new schema to your GraphQL API.

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

", "StartSchemaMerge": "

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

", "TagResource": "

Tags a resource with user-supplied tags.

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

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

", "DynamodbDataSourceConfig$useCallerCredentials": "

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

", "DynamodbDataSourceConfig$versioned": "

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

", + "GetDataSourceIntrospectionRequest$includeModelsSDL": "

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

", "GraphqlApi$xrayEnabled": "

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

", "LogConfig$excludeVerboseContent": "

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

", "UpdateGraphqlApiRequest$xrayEnabled": "

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

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

The updated DataSource object.

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

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

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

Represents the fields that were retrieved from the introspected data.

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

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

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

The DataSourceIntrospectionModelFieldType object data.

", + "DataSourceIntrospectionModelFieldType$type": "

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

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

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

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

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

The DataSourceIntrospectionModelField object data.

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

The index that was retrieved from the introspected data.

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

The primary key stored as a DataSourceIntrospectionModelIndex object.

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

The fields of the index.

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

The array of DataSourceIntrospectionModelIndex objects.

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

The array of DataSourceIntrospectionModel objects.

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

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

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

The DataSourceIntrospectionResult object data.

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

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

", + "StartDataSourceIntrospectionResponse$introspectionStatus": "

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

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

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

Valid values are 1–3,600 seconds.

", "CreateApiCacheRequest$ttl": "

TTL in seconds for cache entries.

Valid values are 1–3,600 seconds.

", "CreateApiKeyRequest$expires": "

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

", + "DataSourceIntrospectionModelField$length": "

The length value of the introspected field.

", "DeltaSyncConfig$baseTableTTL": "

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

", "DeltaSyncConfig$deltaSyncTableTTL": "

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

", "OpenIDConnectConfig$iatTTL": "

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

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

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

", "ListApiKeysRequest$maxResults": "

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

", "ListDataSourcesRequest$maxResults": "

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

", "ListDomainNamesRequest$maxResults": "

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

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

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

", + "GetDataSourceIntrospectionRequest$nextToken": "

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

", "ListApiKeysRequest$nextToken": "

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

", "ListApiKeysResponse$nextToken": "

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

", "ListDataSourcesRequest$nextToken": "

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

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

The PipelineConfig.

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

Contains the metadata required to introspect the RDS cluster.

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

The rdsDataApiConfig object data.

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

The name of the database in the cluster.

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

The resource ARN of the RDS cluster.

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

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

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

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

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

The SourceApiAssociationSummary object data.

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

The data source Amazon Resource Name (ARN).

", "DataSource$description": "

The description of the data source.

", "DataSource$serviceRoleArn": "

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

", + "DataSourceIntrospectionModel$name": "

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

", + "DataSourceIntrospectionModel$sdl": "

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

", + "DataSourceIntrospectionModelField$name": "

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

", + "DataSourceIntrospectionModelFieldType$kind": "

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

Valid values include:

  • Scalar: Indicates the value is a primitive type (scalar).

  • NonNull: Indicates the field cannot be null.

  • List: Indicates the field contains a list.

", + "DataSourceIntrospectionModelFieldType$name": "

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

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

The name of the index.

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

The API ID.

", "DeleteApiKeyRequest$apiId": "

The API ID.

", "DeleteApiKeyRequest$id": "

The ID for the API key.

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

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

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

The API ID.

", + "GetDataSourceIntrospectionRequest$introspectionId": "

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

", + "GetDataSourceIntrospectionResponse$introspectionId": "

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

", + "GetDataSourceIntrospectionResponse$introspectionStatusDetail": "

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

", "GetDataSourceRequest$apiId": "

The API ID.

", "GetFunctionRequest$apiId": "

The GraphQL API ID.

", "GetGraphqlApiRequest$apiId": "

The API ID for the GraphQL API.

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

The ID of the AppSync Merged API.

", "SourceApiAssociationSummary$mergedApiArn": "

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

", "SourceApiAssociationSummary$description": "

The description field.

", + "StartDataSourceIntrospectionResponse$introspectionId": "

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

", + "StartDataSourceIntrospectionResponse$introspectionStatusDetail": "

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

", "StartSchemaCreationRequest$apiId": "

The API ID.

", "StartSchemaMergeRequest$associationId": "

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

", "StartSchemaMergeRequest$mergedApiIdentifier": "

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

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://appsync-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://appsync-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://appsync-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://appsync-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://appsync.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://appsync.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://appsync.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://appsync.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -30,6 +30,43 @@ {"shape":"AccessDeniedException"} ] }, + "CreatePracticeRunConfiguration":{ + "name":"CreatePracticeRunConfiguration", + "http":{ + "method":"POST", + "requestUri":"/configuration", + "responseCode":201 + }, + "input":{"shape":"CreatePracticeRunConfigurationRequest"}, + "output":{"shape":"CreatePracticeRunConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "DeletePracticeRunConfiguration":{ + "name":"DeletePracticeRunConfiguration", + "http":{ + "method":"DELETE", + "requestUri":"/configuration/{resourceIdentifier}", + "responseCode":200 + }, + "input":{"shape":"DeletePracticeRunConfigurationRequest"}, + "output":{"shape":"DeletePracticeRunConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "GetManagedResource":{ "name":"GetManagedResource", "http":{ @@ -47,6 +84,22 @@ {"shape":"AccessDeniedException"} ] }, + "ListAutoshifts":{ + "name":"ListAutoshifts", + "http":{ + "method":"GET", + "requestUri":"/autoshifts", + "responseCode":200 + }, + "input":{"shape":"ListAutoshiftsRequest"}, + "output":{"shape":"ListAutoshiftsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListManagedResources":{ "name":"ListManagedResources", "http":{ @@ -97,6 +150,43 @@ {"shape":"AccessDeniedException"} ] }, + "UpdatePracticeRunConfiguration":{ + "name":"UpdatePracticeRunConfiguration", + "http":{ + "method":"PATCH", + "requestUri":"/configuration/{resourceIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdatePracticeRunConfigurationRequest"}, + "output":{"shape":"UpdatePracticeRunConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "UpdateZonalAutoshiftConfiguration":{ + "name":"UpdateZonalAutoshiftConfiguration", + "http":{ + "method":"PUT", + "requestUri":"/managedresources/{resourceIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateZonalAutoshiftConfigurationRequest"}, + "output":{"shape":"UpdateZonalAutoshiftConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "UpdateZonalShift":{ "name":"UpdateZonalShift", "http":{ @@ -140,6 +230,56 @@ "key":{"shape":"AvailabilityZone"}, "value":{"shape":"Weight"} }, + "AutoshiftAppliedStatus":{ + "type":"string", + "enum":[ + "APPLIED", + "NOT_APPLIED" + ] + }, + "AutoshiftExecutionStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "COMPLETED" + ] + }, + "AutoshiftInResource":{ + "type":"structure", + "required":[ + "appliedStatus", + "awayFrom", + "startTime" + ], + "members":{ + "appliedStatus":{"shape":"AutoshiftAppliedStatus"}, + "awayFrom":{"shape":"AvailabilityZone"}, + "startTime":{"shape":"StartTime"} + } + }, + "AutoshiftSummaries":{ + "type":"list", + "member":{"shape":"AutoshiftSummary"} + }, + "AutoshiftSummary":{ + "type":"structure", + "required":[ + "awayFrom", + "endTime", + "startTime", + "status" + ], + "members":{ + "awayFrom":{"shape":"AvailabilityZone"}, + "endTime":{"shape":"ExpiryTime"}, + "startTime":{"shape":"StartTime"}, + "status":{"shape":"AutoshiftExecutionStatus"} + } + }, + "AutoshiftsInResource":{ + "type":"list", + "member":{"shape":"AutoshiftInResource"} + }, "AvailabilityZone":{ "type":"string", "max":20, @@ -149,6 +289,30 @@ "type":"list", "member":{"shape":"AvailabilityZone"} }, + "BlockedDate":{ + "type":"string", + "max":10, + "min":10, + "pattern":"^[0-9]{4}-[0-9]{2}-[0-9]{2}$" + }, + "BlockedDates":{ + "type":"list", + "member":{"shape":"BlockedDate"}, + "max":15, + "min":0 + }, + "BlockedWindow":{ + "type":"string", + "max":19, + "min":19, + "pattern":"^(Mon|Tue|Wed|Thu|Fri|Sat|Sun):[0-9]{2}:[0-9]{2}-(Mon|Tue|Wed|Thu|Fri|Sat|Sun):[0-9]{2}:[0-9]{2}$" + }, + "BlockedWindows":{ + "type":"list", + "member":{"shape":"BlockedWindow"}, + "max":15, + "min":0 + }, "CancelZonalShiftRequest":{ "type":"structure", "required":["zonalShiftId"], @@ -182,9 +346,86 @@ "enum":[ "ZonalShiftAlreadyExists", "ZonalShiftStatusNotActive", - "SimultaneousZonalShiftsConflict" + "SimultaneousZonalShiftsConflict", + "PracticeConfigurationAlreadyExists", + "AutoShiftEnabled", + "PracticeConfigurationDoesNotExist" ] }, + "ControlCondition":{ + "type":"structure", + "required":[ + "alarmIdentifier", + "type" + ], + "members":{ + "alarmIdentifier":{"shape":"ResourceArn"}, + "type":{"shape":"ControlConditionType"} + } + }, + "ControlConditionType":{ + "type":"string", + "enum":["CLOUDWATCH"] + }, + "ControlConditions":{ + "type":"list", + "member":{"shape":"ControlCondition"}, + "max":1, + "min":1 + }, + "CreatePracticeRunConfigurationRequest":{ + "type":"structure", + "required":[ + "outcomeAlarms", + "resourceIdentifier" + ], + "members":{ + "blockedDates":{"shape":"BlockedDates"}, + "blockedWindows":{"shape":"BlockedWindows"}, + "blockingAlarms":{"shape":"ControlConditions"}, + "outcomeAlarms":{"shape":"ControlConditions"}, + "resourceIdentifier":{"shape":"ResourceIdentifier"} + } + }, + "CreatePracticeRunConfigurationResponse":{ + "type":"structure", + "required":[ + "arn", + "name", + "practiceRunConfiguration", + "zonalAutoshiftStatus" + ], + "members":{ + "arn":{"shape":"ResourceArn"}, + "name":{"shape":"ResourceName"}, + "practiceRunConfiguration":{"shape":"PracticeRunConfiguration"}, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"} + } + }, + "DeletePracticeRunConfigurationRequest":{ + "type":"structure", + "required":["resourceIdentifier"], + "members":{ + "resourceIdentifier":{ + "shape":"ResourceIdentifier", + "location":"uri", + "locationName":"resourceIdentifier" + } + } + }, + "DeletePracticeRunConfigurationResponse":{ + "type":"structure", + "required":[ + "arn", + "name", + "zonalAutoshiftStatus" + ], + "members":{ + "arn":{"shape":"ResourceArn"}, + "name":{"shape":"ResourceName"}, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"} + } + }, "ExpiresIn":{ "type":"string", "max":5, @@ -212,7 +453,10 @@ "members":{ "appliedWeights":{"shape":"AppliedWeights"}, "arn":{"shape":"ResourceArn"}, + "autoshifts":{"shape":"AutoshiftsInResource"}, "name":{"shape":"ResourceName"}, + "practiceRunConfiguration":{"shape":"PracticeRunConfiguration"}, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"}, "zonalShifts":{"shape":"ZonalShiftsInResource"} } }, @@ -225,6 +469,33 @@ "exception":true, "fault":true }, + "ListAutoshiftsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"nextToken" + }, + "status":{ + "shape":"AutoshiftExecutionStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListAutoshiftsResponse":{ + "type":"structure", + "members":{ + "items":{"shape":"AutoshiftSummaries"}, + "nextToken":{"shape":"String"} + } + }, "ListManagedResourcesRequest":{ "type":"structure", "members":{ @@ -261,6 +532,11 @@ "location":"querystring", "locationName":"nextToken" }, + "resourceIdentifier":{ + "shape":"ResourceIdentifier", + "location":"querystring", + "locationName":"resourceIdentifier" + }, "status":{ "shape":"ZonalShiftStatus", "location":"querystring", @@ -283,9 +559,14 @@ "type":"structure", "required":["availabilityZones"], "members":{ + "appliedWeights":{"shape":"AppliedWeights"}, "arn":{"shape":"ResourceArn"}, + "autoshifts":{"shape":"AutoshiftsInResource"}, "availabilityZones":{"shape":"AvailabilityZones"}, - "name":{"shape":"ResourceName"} + "name":{"shape":"ResourceName"}, + "practiceRunStatus":{"shape":"ZonalAutoshiftStatus"}, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"}, + "zonalShifts":{"shape":"ZonalShiftsInResource"} } }, "MaxResults":{ @@ -294,6 +575,25 @@ "max":100, "min":1 }, + "PracticeRunConfiguration":{ + "type":"structure", + "required":["outcomeAlarms"], + "members":{ + "blockedDates":{"shape":"BlockedDates"}, + "blockedWindows":{"shape":"BlockedWindows"}, + "blockingAlarms":{"shape":"ControlConditions"}, + "outcomeAlarms":{"shape":"ControlConditions"} + } + }, + "PracticeRunOutcome":{ + "type":"string", + "enum":[ + "FAILED", + "INTERRUPTED", + "PENDING", + "SUCCEEDED" + ] + }, "ResourceArn":{ "type":"string", "max":1024, @@ -350,6 +650,62 @@ }, "exception":true }, + "UpdatePracticeRunConfigurationRequest":{ + "type":"structure", + "required":["resourceIdentifier"], + "members":{ + "blockedDates":{"shape":"BlockedDates"}, + "blockedWindows":{"shape":"BlockedWindows"}, + "blockingAlarms":{"shape":"ControlConditions"}, + "outcomeAlarms":{"shape":"ControlConditions"}, + "resourceIdentifier":{ + "shape":"ResourceIdentifier", + "location":"uri", + "locationName":"resourceIdentifier" + } + } + }, + "UpdatePracticeRunConfigurationResponse":{ + "type":"structure", + "required":[ + "arn", + "name", + "practiceRunConfiguration", + "zonalAutoshiftStatus" + ], + "members":{ + "arn":{"shape":"ResourceArn"}, + "name":{"shape":"ResourceName"}, + "practiceRunConfiguration":{"shape":"PracticeRunConfiguration"}, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"} + } + }, + "UpdateZonalAutoshiftConfigurationRequest":{ + "type":"structure", + "required":[ + "resourceIdentifier", + "zonalAutoshiftStatus" + ], + "members":{ + "resourceIdentifier":{ + "shape":"ResourceIdentifier", + "location":"uri", + "locationName":"resourceIdentifier" + }, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"} + } + }, + "UpdateZonalAutoshiftConfigurationResponse":{ + "type":"structure", + "required":[ + "resourceIdentifier", + "zonalAutoshiftStatus" + ], + "members":{ + "resourceIdentifier":{"shape":"ResourceIdentifier"}, + "zonalAutoshiftStatus":{"shape":"ZonalAutoshiftStatus"} + } + }, "UpdateZonalShiftRequest":{ "type":"structure", "required":["zonalShiftId"], @@ -388,7 +744,10 @@ "InvalidToken", "InvalidResourceIdentifier", "InvalidAz", - "UnsupportedAz" + "UnsupportedAz", + "InvalidAlarmCondition", + "InvalidConditionType", + "InvalidPracticeBlocker" ] }, "Weight":{ @@ -397,6 +756,13 @@ "max":1.0, "min":0.0 }, + "ZonalAutoshiftStatus":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "ZonalShift":{ "type":"structure", "required":[ @@ -445,6 +811,7 @@ "awayFrom":{"shape":"AvailabilityZone"}, "comment":{"shape":"ZonalShiftComment"}, "expiryTime":{"shape":"ExpiryTime"}, + "practiceRunOutcome":{"shape":"PracticeRunOutcome"}, "resourceIdentifier":{"shape":"ResourceIdentifier"}, "startTime":{"shape":"StartTime"}, "zonalShiftId":{"shape":"ZonalShiftId"} @@ -477,6 +844,7 @@ "awayFrom":{"shape":"AvailabilityZone"}, "comment":{"shape":"ZonalShiftComment"}, "expiryTime":{"shape":"ExpiryTime"}, + "practiceRunOutcome":{"shape":"PracticeRunOutcome"}, "resourceIdentifier":{"shape":"ResourceIdentifier"}, "startTime":{"shape":"StartTime"}, "status":{"shape":"ZonalShiftStatus"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,13 +1,18 @@ { "version": "2.0", - "service": "

This is the API Reference Guide for the zonal shift feature of Amazon Route 53 Application Recovery Controller. This guide is for developers who need detailed information about zonal shift API actions, data types, and errors.

Zonal shift is in preview release for Amazon Route 53 Application Recovery Controller and is subject to change.

Zonal shift in Route 53 ARC enables you to move traffic for a load balancer resource away from an Availability Zone. Starting a zonal shift helps your application recover immediately, for example, from a developer's bad code deployment or from an AWS infrastructure failure in a single Availability Zone, reducing the impact and time lost from an issue in one zone.

Supported AWS resources are automatically registered with Route 53 ARC. Resources that are registered for zonal shifts in Route 53 ARC are managed resources in Route 53 ARC. You can start a zonal shift for any managed resource in your account in a Region. At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

Zonal shifts are temporary. You must specify an expiration when you start a zonal shift, of up to three days initially. If you want to still keep traffic away from an Availability Zone, you can update the zonal shift and set a new expiration. You can also cancel a zonal shift, before it expires, for example, if you're ready to restore traffic to the Availability Zone.

For more information about using zonal shift, see the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "service": "

Welcome to the Zonal Shift API Reference Guide for Amazon Route 53 Application Recovery Controller (Route 53 ARC).

You can start a zonal shift to move traffic for a load balancer resource away from an Availability Zone to help your application recover quickly from an impairment in an Availability Zone. For example, you can recover your application from a developer's bad code deployment or from an Amazon Web Services infrastructure failure in a single Availability Zone.

You can also configure zonal autoshift for a load balancer resource. Zonal autoshift is a capability in Route 53 ARC where Amazon Web Services shifts away application resource traffic from an Availability Zone, on your behalf, to help reduce your time to recovery during events. Amazon Web Services shifts away traffic for resources that are enabled for zonal autoshift whenever Amazon Web Services determines that there's an issue in the Availability Zone that could potentially affect customers.

To ensure that zonal autoshift is safe for your application, you must also configure practice runs when you enable zonal autoshift for a resource. Practice runs start weekly zonal shifts for a resource, to shift traffic for the resource out of an Availability Zone. Practice runs make sure, on a regular basis, that you have enough capacity in all the Availability Zones in an Amazon Web Services Region for your application to continue to operate normally when traffic for a resource is shifted away from one Availability Zone.

You must prescale resource capacity in all Availability Zones in the Region where your application is deployed, before you configure practice runs or enable zonal autoshift for a resource. You should not rely on scaling on demand when an autoshift or practice run starts.

For more information about using zonal shift and zonal autoshift, see the Amazon Route 53 Application Recovery Controller Developer Guide.

", "operations": { - "CancelZonalShift": "

Cancel a zonal shift in Amazon Route 53 Application Recovery Controller that you've started for a resource in your AWS account in an AWS Region.

", - "GetManagedResource": "

Get information about a resource that's been registered for zonal shifts with Amazon Route 53 Application Recovery Controller in this AWS Region. Resources that are registered for zonal shifts are managed resources in Route 53 ARC.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", - "ListManagedResources": "

Lists all the resources in your AWS account in this AWS Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes their Amazon Resource Names (ARNs), the Availability Zones the resources are deployed in, and the resource name.

", - "ListZonalShifts": "

Lists all the active zonal shifts in Amazon Route 53 Application Recovery Controller in your AWS account in this AWS Region.

", - "StartZonalShift": "

You start a zonal shift to temporarily move load balancer traffic away from an Availability Zone in a AWS Region, to help your application recover immediately, for example, from a developer's bad code deployment or from an AWS infrastructure failure in a single Availability Zone. You can start a zonal shift in Route 53 ARC only for managed resources in your account in an AWS Region. Resources are automatically registered with Route 53 ARC by AWS services.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

When you start a zonal shift, traffic for the resource is no longer routed to the Availability Zone. The zonal shift is created immediately in Route 53 ARC. However, it can take a short time, typically up to a few minutes, for existing, in-progress connections in the Availability Zone to complete.

For more information, see Zonal shift in the Amazon Route 53 Application Recovery Controller Developer Guide.

", - "UpdateZonalShift": "

Update an active zonal shift in Amazon Route 53 Application Recovery Controller in your AWS account. You can update a zonal shift to set a new expiration, or edit or replace the comment for the zonal shift.

" + "CancelZonalShift": "

Cancel a zonal shift in Amazon Route 53 Application Recovery Controller. To cancel the zonal shift, specify the zonal shift ID.

A zonal shift can be one that you've started for a resource in your Amazon Web Services account in an Amazon Web Services Region, or it can be a zonal shift started by a practice run with zonal autoshift.

", + "CreatePracticeRunConfiguration": "

A practice run configuration for zonal autoshift is required when you enable zonal autoshift. A practice run configuration includes specifications for blocked dates and blocked time windows, and for Amazon CloudWatch alarms that you create to use with practice runs. The alarms that you specify are an outcome alarm, to monitor application health during practice runs and, optionally, a blocking alarm, to block practice runs from starting.

For more information, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "DeletePracticeRunConfiguration": "

Deletes the practice run configuration for a resource. Before you can delete a practice run configuration for a resource., you must disable zonal autoshift for the resource. Practice runs must be configured for zonal autoshift to be enabled.

", + "GetManagedResource": "

Get information about a resource that's been registered for zonal shifts with Amazon Route 53 Application Recovery Controller in this Amazon Web Services Region. Resources that are registered for zonal shifts are managed resources in Route 53 ARC. You can start zonal shifts and configure zonal autoshift for managed resources.

At this time, you can only start a zonal shift or configure zonal autoshift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", + "ListAutoshifts": "

Returns the active autoshifts for a specified resource.

", + "ListManagedResources": "

Lists all the resources in your Amazon Web Services account in this Amazon Web Services Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes the zonal autoshift status for the resource, as well as the Amazon Resource Name (ARN), the Availability Zones that each resource is deployed in, and the resource name.

", + "ListZonalShifts": "

Lists all active and completed zonal shifts in Amazon Route 53 Application Recovery Controller in your Amazon Web Services account in this Amazon Web Services Region. ListZonalShifts returns customer-started zonal shifts, as well as practice run zonal shifts that Route 53 ARC started on your behalf for zonal autoshift.

The ListZonalShifts operation does not list autoshifts. For more information about listing autoshifts, see \">ListAutoshifts.

", + "StartZonalShift": "

You start a zonal shift to temporarily move load balancer traffic away from an Availability Zone in an Amazon Web Services Region, to help your application recover immediately, for example, from a developer's bad code deployment or from an Amazon Web Services infrastructure failure in a single Availability Zone. You can start a zonal shift in Route 53 ARC only for managed resources in your Amazon Web Services account in an Amazon Web Services Region. Resources are automatically registered with Route 53 ARC by Amazon Web Services services.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

When you start a zonal shift, traffic for the resource is no longer routed to the Availability Zone. The zonal shift is created immediately in Route 53 ARC. However, it can take a short time, typically up to a few minutes, for existing, in-progress connections in the Availability Zone to complete.

For more information, see Zonal shift in the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "UpdatePracticeRunConfiguration": "

Update a practice run configuration to change one or more of the following: add, change, or remove the blocking alarm; change the outcome alarm; or add, change, or remove blocking dates or time windows.

", + "UpdateZonalAutoshiftConfiguration": "

You can update the zonal autoshift status for a resource, to enable or disable zonal autoshift. When zonal autoshift is ENABLED, Amazon Web Services shifts away resource traffic from an Availability Zone, on your behalf, when Amazon Web Services determines that there's an issue in the Availability Zone that could potentially affect customers.

", + "UpdateZonalShift": "

Update an active zonal shift in Amazon Route 53 Application Recovery Controller in your Amazon Web Services account. You can update a zonal shift to set a new expiration, or edit or replace the comment for the zonal shift.

" }, "shapes": { "AccessDeniedException": { @@ -18,24 +23,65 @@ "AppliedStatus": { "base": null, "refs": { - "ZonalShiftInResource$appliedStatus": "

An appliedStatus for a zonal shift for a resource can have one of two values: APPLIED or NOT_APPLIED.

" + "ZonalShiftInResource$appliedStatus": "

The appliedStatus field specifies which application traffic shift is in effect for a resource when there is more than one traffic shift active. There can be more than one application traffic shift in progress at the same time - that is, practice run zonal shifts, customer-started zonal shifts, or an autoshift. The appliedStatus field for an autoshift for a resource can have one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that is currently in effect for the resource has an applied status set to APPLIED.

The overall principle for precedence is that zonal shifts that you start as a customer take precedence autoshifts, which take precedence over practice runs. That is, customer-started zonal shifts > autoshifts > practice run zonal shifts.

For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

" } }, "AppliedWeights": { "base": null, "refs": { - "GetManagedResourceResponse$appliedWeights": "

A collection of key-value pairs that indicate whether resources are active in Availability Zones or not. The key name is the Availability Zone where the resource is deployed. The value is 1 or 0.

" + "GetManagedResourceResponse$appliedWeights": "

A collection of key-value pairs that indicate whether resources are active in Availability Zones or not. The key name is the Availability Zone where the resource is deployed. The value is 1 or 0.

", + "ManagedResourceSummary$appliedWeights": "

A collection of key-value pairs that indicate whether resources are active in Availability Zones or not. The key name is the Availability Zone where the resource is deployed. The value is 1 or 0.

" + } + }, + "AutoshiftAppliedStatus": { + "base": null, + "refs": { + "AutoshiftInResource$appliedStatus": "

The appliedStatus field specifies which application traffic shift is in effect for a resource when there is more than one traffic shift active. There can be more than one application traffic shift in progress at the same time - that is, practice run zonal shifts, customer-started zonal shifts, or an autoshift. The appliedStatus field for an autoshift for a resource can have one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that is currently in effect for the resource has an applied status set to APPLIED.

The overall principle for precedence is that zonal shifts that you start as a customer take precedence autoshifts, which take precedence over practice runs. That is, customer-started zonal shifts > autoshifts > practice run zonal shifts.

For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

" + } + }, + "AutoshiftExecutionStatus": { + "base": null, + "refs": { + "AutoshiftSummary$status": "

The status for an autoshift.

", + "ListAutoshiftsRequest$status": "

The status of the autoshift.

" + } + }, + "AutoshiftInResource": { + "base": "

A complex structure that lists an autoshift that is currently active for a managed resource and information about the autoshift.

For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "refs": { + "AutoshiftsInResource$member": null + } + }, + "AutoshiftSummaries": { + "base": null, + "refs": { + "ListAutoshiftsResponse$items": "

The items in the response list.

" + } + }, + "AutoshiftSummary": { + "base": "

Information about an autoshift. Amazon Web Services starts an autoshift to temporarily move traffic for a resource away from an Availability Zone in an Amazon Web Services Region when Amazon Web Services determines that there's an issue in the Availability Zone that could potentially affect customers. You can configure zonal autoshift in Route 53 ARC for managed resources in your Amazon Web Services account in a Region. Supported Amazon Web Services resources are automatically registered with Route 53 ARC.

Autoshifts are temporary. When the Availability Zone recovers, Amazon Web Services ends the autoshift, and traffic for the resource is no longer directed to the other Availability Zones in the Region.

You can stop an autoshift for a resource by disabling zonal autoshift.

", + "refs": { + "AutoshiftSummaries$member": null + } + }, + "AutoshiftsInResource": { + "base": null, + "refs": { + "GetManagedResourceResponse$autoshifts": "

An array of the autoshifts that are active for the resource.

", + "ManagedResourceSummary$autoshifts": "

An array of the autoshifts that have been completed for a resource.

" } }, "AvailabilityZone": { "base": null, "refs": { "AppliedWeights$key": null, + "AutoshiftInResource$awayFrom": "

The Availability Zone that traffic is shifted away from for a resource, when Amazon Web Services starts an autoshift. Until the autoshift ends, traffic for the resource is instead directed to other Availability Zones in the Amazon Web Services Region. An autoshift can end for a resource, for example, when Amazon Web Services ends the autoshift for the Availability Zone or when you disable zonal autoshift for the resource.

", + "AutoshiftSummary$awayFrom": "

The Availability Zone that traffic is shifted away from for a resource when Amazon Web Services starts an autoshift. Until the autoshift ends, traffic for the resource is instead directed to other Availability Zones in the Amazon Web Services Region. An autoshift can end for a resource, for example, when Amazon Web Services ends the autoshift for the Availability Zone or when you disable zonal autoshift for the resource.

", "AvailabilityZones$member": null, - "StartZonalShiftRequest$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the AWS Region.

", - "ZonalShift$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the AWS Region.

", - "ZonalShiftInResource$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the AWS Region.

", - "ZonalShiftSummary$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the AWS Region.

" + "StartZonalShiftRequest$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

", + "ZonalShift$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

", + "ZonalShiftInResource$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

", + "ZonalShiftSummary$awayFrom": "

The Availability Zone that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

" } }, "AvailabilityZones": { @@ -44,6 +90,34 @@ "ManagedResourceSummary$availabilityZones": "

The Availability Zones that a resource is deployed in.

" } }, + "BlockedDate": { + "base": null, + "refs": { + "BlockedDates$member": null + } + }, + "BlockedDates": { + "base": null, + "refs": { + "CreatePracticeRunConfigurationRequest$blockedDates": "

Optionally, you can block Route 53 ARC from starting practice runs for a resource on specific calendar dates.

The format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Separate multiple blocked dates with spaces.

For example, if you have an application update scheduled to launch on May 1, 2024, and you don't want practice runs to shift traffic away at that time, you could set a blocked date for 2024-05-01.

", + "PracticeRunConfiguration$blockedDates": "

An array of one or more dates that you can specify when Amazon Web Services does not start practice runs for a resource.

Specify blocked dates, in UTC, in the format YYYY-MM-DD, separated by spaces.

", + "UpdatePracticeRunConfigurationRequest$blockedDates": "

Add, change, or remove blocked dates for a practice run in zonal autoshift.

Optionally, you can block practice runs for specific calendar dates. The format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Separate multiple blocked dates with spaces.

For example, if you have an application update scheduled to launch on May 1, 2024, and you don't want practice runs to shift traffic away at that time, you could set a blocked date for 2024-05-01.

" + } + }, + "BlockedWindow": { + "base": null, + "refs": { + "BlockedWindows$member": null + } + }, + "BlockedWindows": { + "base": null, + "refs": { + "CreatePracticeRunConfigurationRequest$blockedWindows": "

Optionally, you can block Route 53 ARC from starting practice runs for specific windows of days and times.

The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple blocked windows with spaces.

For example, say you run business report summaries three days a week. For this scenario, you might set the following recurring days and times as blocked windows, for example: MON-20:30-21:30 WED-20:30-21:30 FRI-20:30-21:30.

", + "PracticeRunConfiguration$blockedWindows": "

An array of one or more windows of days and times that you can block Route 53 ARC from starting practice runs for a resource.

Specify the blocked windows in UTC, using the format DAY:HH:MM-DAY:HH:MM, separated by spaces. For example, MON:18:30-MON:19:30 TUE:18:30-TUE:19:30.

", + "UpdatePracticeRunConfigurationRequest$blockedWindows": "

Add, change, or remove windows of days and times for when you can, optionally, block Route 53 ARC from starting a practice run for a resource.

The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple blocked windows with spaces.

For example, say you run business report summaries three days a week. For this scenario, you might set the following recurring days and times as blocked windows, for example: MON-20:30-21:30 WED-20:30-21:30 FRI-20:30-21:30.

" + } + }, "CancelZonalShiftRequest": { "base": null, "refs": { @@ -60,19 +134,63 @@ "ConflictException$reason": "

The reason for the conflict exception.

" } }, + "ControlCondition": { + "base": "

A control condition is an alarm that you specify for a practice run. When you configure practice runs with zonal autoshift for a resource, you specify Amazon CloudWatch alarms, which you create in CloudWatch to use with the practice run. The alarms that you specify are an outcome alarm, to monitor application health during practice runs and, optionally, a blocking alarm, to block practice runs from starting.

Control condition alarms do not apply for autoshifts.

For more information, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "refs": { + "ControlConditions$member": null + } + }, + "ControlConditionType": { + "base": null, + "refs": { + "ControlCondition$type": "

The type of alarm specified for a practice run. The only valid value is CLOUDWATCH.

" + } + }, + "ControlConditions": { + "base": null, + "refs": { + "CreatePracticeRunConfigurationRequest$blockingAlarms": "

An Amazon CloudWatch alarm that you can specify for zonal autoshift practice runs. This alarm blocks Route 53 ARC from starting practice run zonal shifts, and ends a practice run that's in progress, when the alarm is in an ALARM state.

", + "CreatePracticeRunConfigurationRequest$outcomeAlarms": "

The outcome alarm for practice runs is a required Amazon CloudWatch alarm that you specify that ends a practice run when the alarm is in an ALARM state.

Configure the alarm to monitor the health of your application when traffic is shifted away from an Availability Zone during each weekly practice run. You should configure the alarm to go into an ALARM state if your application is impacted by the zonal shift, and you want to stop the zonal shift, to let traffic for the resource return to the Availability Zone.

", + "PracticeRunConfiguration$blockingAlarms": "

The blocking alarm for practice runs is an optional alarm that you can specify that blocks practice runs when the alarm is in an ALARM state.

", + "PracticeRunConfiguration$outcomeAlarms": "

The outcome alarm for practice runs is an alarm that you specify that ends a practice run when the alarm is in an ALARM state.

", + "UpdatePracticeRunConfigurationRequest$blockingAlarms": "

Add, change, or remove the Amazon CloudWatch alarm that you optionally specify as the blocking alarm for practice runs.

", + "UpdatePracticeRunConfigurationRequest$outcomeAlarms": "

Specify a new the Amazon CloudWatch alarm as the outcome alarm for practice runs.

" + } + }, + "CreatePracticeRunConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreatePracticeRunConfigurationResponse": { + "base": null, + "refs": { + } + }, + "DeletePracticeRunConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeletePracticeRunConfigurationResponse": { + "base": null, + "refs": { + } + }, "ExpiresIn": { "base": null, "refs": { - "StartZonalShiftRequest$expiresIn": "

The length of time that you want a zonal shift to be active, which Route 53 ARC converts to an expiry time (expiration time). Zonal shifts are temporary. You can set a zonal shift to be active initially for up to three days (72 hours).

If you want to still keep traffic away from an Availability Zone, you can update the zonal shift and set a new expiration. You can also cancel a zonal shift, before it expires, for example, if you're ready to restore traffic to the Availability Zone.

To set a length of time for a zonal shift to be active, specify a whole number, and then one of the following, with no space:

 <ul> <li> <p> <b>A lowercase letter m:</b> To specify that the value is in minutes.</p> </li> <li> <p> <b>A lowercase letter h:</b> To specify that the value is in hours.</p> </li> </ul> <p>For example: <code>20h</code> means the zonal shift expires in 20 hours. <code>120m</code> means the zonal shift expires in 120 minutes (2 hours).</p> 
", + "StartZonalShiftRequest$expiresIn": "

The length of time that you want a zonal shift to be active, which Route 53 ARC converts to an expiry time (expiration time). Zonal shifts are temporary. You can set a zonal shift to be active initially for up to three days (72 hours).

If you want to still keep traffic away from an Availability Zone, you can update the zonal shift and set a new expiration. You can also cancel a zonal shift, before it expires, for example, if you're ready to restore traffic to the Availability Zone.

To set a length of time for a zonal shift to be active, specify a whole number, and then one of the following, with no space:

  • A lowercase letter m: To specify that the value is in minutes.

  • A lowercase letter h: To specify that the value is in hours.

For example: 20h means the zonal shift expires in 20 hours. 120m means the zonal shift expires in 120 minutes (2 hours).

", "UpdateZonalShiftRequest$expiresIn": "

The length of time that you want a zonal shift to be active, which Route 53 ARC converts to an expiry time (expiration time). Zonal shifts are temporary. You can set a zonal shift to be active initially for up to three days (72 hours).

If you want to still keep traffic away from an Availability Zone, you can update the zonal shift and set a new expiration. You can also cancel a zonal shift, before it expires, for example, if you're ready to restore traffic to the Availability Zone.

To set a length of time for a zonal shift to be active, specify a whole number, and then one of the following, with no space:

  • A lowercase letter m: To specify that the value is in minutes.

  • A lowercase letter h: To specify that the value is in hours.

For example: 20h means the zonal shift expires in 20 hours. 120m means the zonal shift expires in 120 minutes (2 hours).

" } }, "ExpiryTime": { "base": null, "refs": { - "ZonalShift$expiryTime": "

The expiry time (expiration time) for the zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

When you start a zonal shift, you specify how long you want it to be active, which Route 53 ARC converts to an expiry time (expiration time). You can cancel a zonal shift, for example, if you're ready to restore traffic to the Availability Zone. Or you can update the zonal shift to specify another length of time to expire in.

", - "ZonalShiftInResource$expiryTime": "

The expiry time (expiration time) for the zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

When you start a zonal shift, you specify how long you want it to be active, which Route 53 ARC converts to an expiry time (expiration time). You can cancel a zonal shift, for example, if you're ready to restore traffic to the Availability Zone. Or you can update the zonal shift to specify another length of time to expire in.

", - "ZonalShiftSummary$expiryTime": "

The expiry time (expiration time) for the zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

When you start a zonal shift, you specify how long you want it to be active, which Route 53 ARC converts to an expiry time (expiration time). You can cancel a zonal shift, for example, if you're ready to restore traffic to the Availability Zone. Or you can update the zonal shift to specify another length of time to expire in.

" + "AutoshiftSummary$endTime": "

The time (in UTC) when the autoshift ended.

", + "ZonalShift$expiryTime": "

The expiry time (expiration time) for a customer-started zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

When you start a zonal shift, you specify how long you want it to be active, which Route 53 ARC converts to an expiry time (expiration time). You can cancel a zonal shift when you're ready to restore traffic to the Availability Zone, or just wait for it to expire. Or you can update the zonal shift to specify another length of time to expire in.

", + "ZonalShiftInResource$expiryTime": "

The expiry time (expiration time) for a customer-started zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

When you start a zonal shift, you specify how long you want it to be active, which Route 53 ARC converts to an expiry time (expiration time). You can cancel a zonal shift when you're ready to restore traffic to the Availability Zone, or just wait for it to expire. Or you can update the zonal shift to specify another length of time to expire in.

", + "ZonalShiftSummary$expiryTime": "

The expiry time (expiration time) for a customer-started zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

When you start a zonal shift, you specify how long you want it to be active, which Route 53 ARC converts to an expiry time (expiration time). You can cancel a zonal shift when you're ready to restore traffic to the Availability Zone, or just wait for it to expire. Or you can update the zonal shift to specify another length of time to expire in.

" } }, "GetManagedResourceRequest": { @@ -90,6 +208,16 @@ "refs": { } }, + "ListAutoshiftsRequest": { + "base": null, + "refs": { + } + }, + "ListAutoshiftsResponse": { + "base": null, + "refs": { + } + }, "ListManagedResourcesRequest": { "base": null, "refs": { @@ -117,7 +245,7 @@ } }, "ManagedResourceSummary": { - "base": "

A complex structure for a managed resource in an account.

A managed resource is a Network Load Balancer or Application Load Balancer that has been registered with Route 53 ARC by Elastic Load Balancing. You can start a zonal shift in Route 53 ARC for a managed resource to temporarily move traffic for the resource away from an Availability Zone in an AWS Region.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", + "base": "

A complex structure for a managed resource in an Amazon Web Services account with information about zonal shifts and autoshifts.

A managed resource is a load balancer that has been registered with Route 53 ARC by Elastic Load Balancing. You can start a zonal shift in Route 53 ARC for a managed resource to temporarily move traffic for the resource away from an Availability Zone in an Amazon Web Services Region. You can also configure zonal autoshift for a managed resource.

At this time, managed resources are Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", "refs": { "ManagedResourceSummaries$member": null } @@ -125,23 +253,49 @@ "MaxResults": { "base": null, "refs": { + "ListAutoshiftsRequest$maxResults": "

The number of objects that you want to return with this call.

", "ListManagedResourcesRequest$maxResults": "

The number of objects that you want to return with this call.

", "ListZonalShiftsRequest$maxResults": "

The number of objects that you want to return with this call.

" } }, + "PracticeRunConfiguration": { + "base": "

A practice run configuration for a resource includes the Amazon CloudWatch alarms that you've specified for a practice run, as well as any blocked dates or blocked windows for the practice run.

You can update or delete a practice run configuration. Before you delete a practice run configuration, you must disable zonal autoshift for the resource. A practice run configuration is required when zonal autoshift is enabled.

", + "refs": { + "CreatePracticeRunConfigurationResponse$practiceRunConfiguration": "

A practice run configuration for a resource. Configurations include the outcome alarm that you specify for practice runs, and, optionally, a blocking alarm and blocking dates and windows.

", + "GetManagedResourceResponse$practiceRunConfiguration": "

The practice run configuration for zonal autoshift that's associated with the resource.

", + "UpdatePracticeRunConfigurationResponse$practiceRunConfiguration": "

The practice run configuration that was updated.

" + } + }, + "PracticeRunOutcome": { + "base": null, + "refs": { + "ZonalShiftInResource$practiceRunOutcome": "

The outcome, or end state, returned for a practice run. The following values can be returned:

  • PENDING: Outcome value when a practice run is in progress.

  • SUCCEEDED: Outcome value when the outcome alarm specified for the practice run configuration does not go into an ALARM state during the practice run, and the practice run was not interrupted before it completed the expected 30 minute zonal shift.

  • INTERRUPTED: Outcome value when the practice run was stopped before the expected 30 minute zonal shift duration, or there was another problem with the practice run that created an inconclusive outcome.

  • FAILED: Outcome value when the outcome alarm specified for the practice run configuration goes into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

For more information about practice run outcomes, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "ZonalShiftSummary$practiceRunOutcome": "

The outcome, or end state, of a practice run. The following values can be returned:

  • PENDING: Outcome value when the practice run is in progress.

  • SUCCEEDED: Outcome value when the outcome alarm specified for the practice run configuration does not go into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

  • INTERRUPTED: Outcome value when the practice run did not run for the expected 30 minutes or there was another problem with the practice run that created an inconclusive outcome.

  • FAILED: Outcome value when the outcome alarm specified for the practice run configuration goes into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

For more information about practice run outcomes, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

" + } + }, "ResourceArn": { "base": null, "refs": { + "ControlCondition$alarmIdentifier": "

The Amazon Resource Name (ARN) for the Amazon CloudWatch alarm that you specify as a control condition for a practice run.

", + "CreatePracticeRunConfigurationResponse$arn": "

The Amazon Resource Name (ARN) of the resource that you configured the practice run for.

", + "DeletePracticeRunConfigurationResponse$arn": "

The Amazon Resource Name (ARN) of the resource that you deleted the practice run for.

", "GetManagedResourceResponse$arn": "

The Amazon Resource Name (ARN) for the resource.

", - "ManagedResourceSummary$arn": "

The Amazon Resource Name (ARN) for the managed resource.

" + "ManagedResourceSummary$arn": "

The Amazon Resource Name (ARN) for the managed resource.

", + "UpdatePracticeRunConfigurationResponse$arn": "

The Amazon Resource Name (ARN) of the resource that you updated the practice run for.

" } }, "ResourceIdentifier": { "base": null, "refs": { - "GetManagedResourceRequest$resourceIdentifier": "

The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", - "StartZonalShiftRequest$resourceIdentifier": "

The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", - "ZonalShift$resourceIdentifier": "

The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", + "CreatePracticeRunConfigurationRequest$resourceIdentifier": "

The identifier of the resource to shift away traffic for when a practice run starts a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, supported resources are Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", + "DeletePracticeRunConfigurationRequest$resourceIdentifier": "

The identifier for the resource that you want to delete the practice run configuration for. The identifier is the Amazon Resource Name (ARN) for the resource.

", + "GetManagedResourceRequest$resourceIdentifier": "

The identifier for the resource to shift away traffic for. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, supported resources are Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", + "ListZonalShiftsRequest$resourceIdentifier": "

The identifier for the resource that you want to list zonal shifts for. The identifier is the Amazon Resource Name (ARN) for the resource.

", + "StartZonalShiftRequest$resourceIdentifier": "

The identifier for the resource to shift away traffic for. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, supported resources are Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", + "UpdatePracticeRunConfigurationRequest$resourceIdentifier": "

The identifier for the resource that you want to update the practice run configuration for. The identifier is the Amazon Resource Name (ARN) for the resource.

", + "UpdateZonalAutoshiftConfigurationRequest$resourceIdentifier": "

The identifier for the resource that you want to update the zonal autoshift configuration for. The identifier is the Amazon Resource Name (ARN) for the resource.

", + "UpdateZonalAutoshiftConfigurationResponse$resourceIdentifier": "

The identifier for the resource that you updated the zonal autoshift configuration for. The identifier is the Amazon Resource Name (ARN) for the resource.

", + "ZonalShift$resourceIdentifier": "

The identifier for the resource to shift away traffic for. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, supported resources are Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", "ZonalShiftInResource$resourceIdentifier": "

The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

", "ZonalShiftSummary$resourceIdentifier": "

The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

" } @@ -149,8 +303,11 @@ "ResourceName": { "base": null, "refs": { + "CreatePracticeRunConfigurationResponse$name": "

The name of the resource that you configured the practice run for.

", + "DeletePracticeRunConfigurationResponse$name": "

The name of the resource that you deleted the practice run for.

", "GetManagedResourceResponse$name": "

The name of the resource.

", - "ManagedResourceSummary$name": "

The name of the managed resource.

" + "ManagedResourceSummary$name": "

The name of the managed resource.

", + "UpdatePracticeRunConfigurationResponse$name": "

The name of the resource that you updated the practice run for.

" } }, "ResourceNotFoundException": { @@ -161,9 +318,11 @@ "StartTime": { "base": null, "refs": { - "ZonalShift$startTime": "

The time (UTC) when the zonal shift is started.

", - "ZonalShiftInResource$startTime": "

The time (UTC) when the zonal shift is started.

", - "ZonalShiftSummary$startTime": "

The time (UTC) when the zonal shift is started.

" + "AutoshiftInResource$startTime": "

The time (UTC) when the autoshift started.

", + "AutoshiftSummary$startTime": "

The time (in UTC) when the autoshift started.

", + "ZonalShift$startTime": "

The time (UTC) when the zonal shift starts.

", + "ZonalShiftInResource$startTime": "

The time (UTC) when the zonal shift starts.

", + "ZonalShiftSummary$startTime": "

The time (UTC) when the zonal shift starts.

" } }, "StartZonalShiftRequest": { @@ -178,6 +337,8 @@ "ConflictException$message": null, "ConflictException$zonalShiftId": "

The zonal shift ID associated with the conflict exception.

", "InternalServerException$message": null, + "ListAutoshiftsRequest$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListAutoshiftsResponse$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", "ListManagedResourcesRequest$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", "ListManagedResourcesResponse$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", "ListZonalShiftsRequest$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", @@ -192,13 +353,33 @@ "refs": { } }, + "UpdatePracticeRunConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdatePracticeRunConfigurationResponse": { + "base": null, + "refs": { + } + }, + "UpdateZonalAutoshiftConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateZonalAutoshiftConfigurationResponse": { + "base": null, + "refs": { + } + }, "UpdateZonalShiftRequest": { "base": null, "refs": { } }, "ValidationException": { - "base": "

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

", + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", "refs": { } }, @@ -214,6 +395,19 @@ "AppliedWeights$value": null } }, + "ZonalAutoshiftStatus": { + "base": null, + "refs": { + "CreatePracticeRunConfigurationResponse$zonalAutoshiftStatus": "

The status for zonal autoshift for a resource. When you specify the autoshift status as ENABLED, Amazon Web Services shifts traffic away from shifts away application resource traffic from an Availability Zone, on your behalf, when Amazon Web Services determines that there's an issue in the Availability Zone that could potentially affect customers.

When you enable zonal autoshift, you must also configure practice runs for the resource.

", + "DeletePracticeRunConfigurationResponse$zonalAutoshiftStatus": "

The status of zonal autoshift for the resource.

", + "GetManagedResourceResponse$zonalAutoshiftStatus": "

The status for zonal autoshift for a resource. When the autoshift status is ENABLED, Amazon Web Services shifts traffic for a resource away from an Availability Zone, on your behalf, when Amazon Web Services determines that there's an issue in the Availability Zone that could potentially affect customers.

", + "ManagedResourceSummary$practiceRunStatus": "

This status tracks whether a practice run configuration exists for a resource. When you configure a practice run for a resource so that a practice run configuration exists, Route 53 ARC sets this value to ENABLED. If a you have not configured a practice run for the resource, or delete a practice run configuration, Route 53 ARC sets the value to DISABLED.

Route 53 ARC updates this status; you can't set a practice run status to ENABLED or DISABLED.

", + "ManagedResourceSummary$zonalAutoshiftStatus": "

The status of autoshift for a resource. When you configure zonal autoshift for a resource, you can set the value of the status to ENABLED or DISABLED.

", + "UpdatePracticeRunConfigurationResponse$zonalAutoshiftStatus": "

The zonal autoshift status for the resource that you updated the practice run for.

", + "UpdateZonalAutoshiftConfigurationRequest$zonalAutoshiftStatus": "

The zonal autoshift status for the resource that you want to update the zonal autoshift configuration for.

", + "UpdateZonalAutoshiftConfigurationResponse$zonalAutoshiftStatus": "

The zonal autoshift status for the resource that you updated the zonal autoshift configuration for.

" + } + }, "ZonalShift": { "base": null, "refs": { @@ -248,9 +442,9 @@ "ZonalShiftStatus": { "base": null, "refs": { - "ListZonalShiftsRequest$status": "

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift is started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

", - "ZonalShift$status": "

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift is started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

", - "ZonalShiftSummary$status": "

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift is started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

" + "ListZonalShiftsRequest$status": "

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift has been started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

", + "ZonalShift$status": "

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift has been started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

", + "ZonalShiftSummary$status": "

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift has been started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

" } }, "ZonalShiftSummaries": { @@ -260,7 +454,7 @@ } }, "ZonalShiftSummary": { - "base": "

You start a zonal shift to temporarily move load balancer traffic away from an Availability Zone in a AWS Region. A zonal shift helps your application recover immediately, for example, from a developer's bad code deployment or from an AWS infrastructure failure in a single Availability Zone. You can start a zonal shift in Route 53 ARC only for managed resources in your account in an AWS Region. Supported AWS resources are automatically registered with Route 53 ARC.

Zonal shifts are temporary. A zonal shift can be active for up to three days (72 hours).

When you start a zonal shift, you specify how long you want it to be active, which Amazon Route 53 Application Recovery Controller converts to an expiry time (expiration time). You can cancel a zonal shift, for example, if you're ready to restore traffic to the Availability Zone. Or you can extend the zonal shift by updating the expiration so the zonal shift is active longer.

", + "base": "

Lists information about zonal shifts in Amazon Route 53 Application Recovery Controller, including zonal shifts that you start yourself and zonal shifts that Route 53 ARC starts on your behalf for practice runs with zonal autoshift.

Zonal shifts are temporary, including customer-started zonal shifts and the zonal autoshift practice run zonal shifts that Route 53 ARC starts weekly, on your behalf. A zonal shift that a customer starts can be active for up to three days (72 hours). A practice run zonal shift has a 30 minute duration.

", "refs": { "ZonalShiftSummaries$member": null } @@ -268,7 +462,8 @@ "ZonalShiftsInResource": { "base": null, "refs": { - "GetManagedResourceResponse$zonalShifts": "

The zonal shifts that are currently active for a resource.

" + "GetManagedResourceResponse$zonalShifts": "

The zonal shifts that are currently active for a resource.

", + "ManagedResourceSummary$zonalShifts": "

An array of the zonal shifts for a resource.

" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,38 +32,32 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], - "type": "tree", + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], "rules": [ { "conditions": [ @@ -71,239 +65,286 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", "type": "error" }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "endpoint": { + "url": { + "ref": "Endpoint" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ { "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", + "fn": "isSet", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Region" + } ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ - true, { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://arc-zonal-shift-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://arc-zonal-shift-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://arc-zonal-shift-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://arc-zonal-shift-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true ] } - ] - } - ], - "type": "tree", - "rules": [ + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://arc-zonal-shift.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://arc-zonal-shift.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://arc-zonal-shift.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": "https://arc-zonal-shift.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "Invalid Configuration: Missing Region", + "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,55 +1,55 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift-fips.us-gov-east-1.api.aws" + "url": "https://arc-zonal-shift-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift-fips.us-gov-east-1.amazonaws.com" + "url": "https://arc-zonal-shift-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift.us-gov-east-1.api.aws" + "url": "https://arc-zonal-shift.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift.us-gov-east-1.amazonaws.com" + "url": "https://arc-zonal-shift.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -99,109 +99,109 @@ } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://arc-zonal-shift-fips.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://arc-zonal-shift-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://arc-zonal-shift.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift.us-iso-east-1.c2s.ic.gov" + "url": "https://arc-zonal-shift.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://arc-zonal-shift-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift-fips.us-east-1.amazonaws.com" + "url": "https://arc-zonal-shift-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://arc-zonal-shift.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://arc-zonal-shift.us-east-1.amazonaws.com" + "url": "https://arc-zonal-shift.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -247,22 +247,35 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { + "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/arc-zonal-shift/2022-10-30/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/arc-zonal-shift/2022-10-30/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,11 @@ { "pagination": { + "ListAutoshifts": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, "ListManagedResources": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/athena/2017-05-18/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/athena/2017-05-18/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/athena/2017-05-18/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/athena/2017-05-18/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -991,6 +991,10 @@ "type":"string", "max":2048 }, + "AuthenticationType":{ + "type":"string", + "enum":["DIRECTORY_IDENTITY"] + }, "AwsAccountId":{ "type":"string", "max":12, @@ -1779,7 +1783,8 @@ "type":"structure", "required":["Name"], "members":{ - "Name":{"shape":"CatalogNameString"} + "Name":{"shape":"CatalogNameString"}, + "WorkGroup":{"shape":"WorkGroupName"} } }, "GetDataCatalogOutput":{ @@ -1796,7 +1801,8 @@ ], "members":{ "CatalogName":{"shape":"CatalogNameString"}, - "DatabaseName":{"shape":"NameString"} + "DatabaseName":{"shape":"NameString"}, + "WorkGroup":{"shape":"WorkGroupName"} } }, "GetDatabaseOutput":{ @@ -1936,7 +1942,8 @@ "members":{ "CatalogName":{"shape":"CatalogNameString"}, "DatabaseName":{"shape":"NameString"}, - "TableName":{"shape":"NameString"} + "TableName":{"shape":"NameString"}, + "WorkGroup":{"shape":"WorkGroupName"} } }, "GetTableMetadataOutput":{ @@ -1963,6 +1970,25 @@ "max":128, "min":32 }, + "IdentityCenterApplicationArn":{ + "type":"string", + "max":255, + "min":0, + "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::\\d{12}:application/(sso)?ins-[a-zA-Z0-9-.]{16}/apl-[a-zA-Z0-9]{16}$" + }, + "IdentityCenterConfiguration":{ + "type":"structure", + "members":{ + "EnableIdentityCenter":{"shape":"BoxedBoolean"}, + "IdentityCenterInstanceArn":{"shape":"IdentityCenterInstanceArn"} + } + }, + "IdentityCenterInstanceArn":{ + "type":"string", + "max":255, + "min":0, + "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$" + }, "ImportNotebookInput":{ "type":"structure", "required":[ @@ -2064,7 +2090,8 @@ "type":"structure", "members":{ "NextToken":{"shape":"Token"}, - "MaxResults":{"shape":"MaxDataCatalogsCount"} + "MaxResults":{"shape":"MaxDataCatalogsCount"}, + "WorkGroup":{"shape":"WorkGroupName"} } }, "ListDataCatalogsOutput":{ @@ -2080,7 +2107,8 @@ "members":{ "CatalogName":{"shape":"CatalogNameString"}, "NextToken":{"shape":"Token"}, - "MaxResults":{"shape":"MaxDatabasesCount"} + "MaxResults":{"shape":"MaxDatabasesCount"}, + "WorkGroup":{"shape":"WorkGroupName"} } }, "ListDatabasesOutput":{ @@ -2231,7 +2259,8 @@ "DatabaseName":{"shape":"NameString"}, "Expression":{"shape":"ExpressionString"}, "NextToken":{"shape":"Token"}, - "MaxResults":{"shape":"MaxTableMetadataCount"} + "MaxResults":{"shape":"MaxTableMetadataCount"}, + "WorkGroup":{"shape":"WorkGroupName"} } }, "ListTableMetadataOutput":{ @@ -2539,7 +2568,8 @@ "WorkGroup":{"shape":"WorkGroupName"}, "EngineVersion":{"shape":"EngineVersion"}, "ExecutionParameters":{"shape":"ExecutionParameters"}, - "SubstatementType":{"shape":"String"} + "SubstatementType":{"shape":"String"}, + "QueryResultsS3AccessGrantsConfiguration":{"shape":"QueryResultsS3AccessGrantsConfiguration"} } }, "QueryExecutionContext":{ @@ -2583,6 +2613,7 @@ "DataManifestLocation":{"shape":"String"}, "TotalExecutionTimeInMillis":{"shape":"Long"}, "QueryQueueTimeInMillis":{"shape":"Long"}, + "ServicePreProcessingTimeInMillis":{"shape":"Long"}, "QueryPlanningTimeInMillis":{"shape":"Long"}, "ServiceProcessingTimeInMillis":{"shape":"Long"}, "ResultReuseInformation":{"shape":"ResultReuseInformation"} @@ -2598,6 +2629,18 @@ "AthenaError":{"shape":"AthenaError"} } }, + "QueryResultsS3AccessGrantsConfiguration":{ + "type":"structure", + "required":[ + "EnableS3AccessGrants", + "AuthenticationType" + ], + "members":{ + "EnableS3AccessGrants":{"shape":"BoxedBoolean"}, + "CreateUserLevelPrefix":{"shape":"BoxedBoolean"}, + "AuthenticationType":{"shape":"AuthenticationType"} + } + }, "QueryRuntimeStatistics":{ "type":"structure", "members":{ @@ -2619,6 +2662,7 @@ "type":"structure", "members":{ "QueryQueueTimeInMillis":{"shape":"Long"}, + "ServicePreProcessingTimeInMillis":{"shape":"Long"}, "QueryPlanningTimeInMillis":{"shape":"Long"}, "EngineExecutionTimeInMillis":{"shape":"Long"}, "ServiceProcessingTimeInMillis":{"shape":"Long"}, @@ -3233,7 +3277,8 @@ "State":{"shape":"WorkGroupState"}, "Configuration":{"shape":"WorkGroupConfiguration"}, "Description":{"shape":"WorkGroupDescriptionString"}, - "CreationTime":{"shape":"Date"} + "CreationTime":{"shape":"Date"}, + "IdentityCenterApplicationArn":{"shape":"IdentityCenterApplicationArn"} } }, "WorkGroupConfiguration":{ @@ -3248,7 +3293,9 @@ "AdditionalConfiguration":{"shape":"NameString"}, "ExecutionRole":{"shape":"RoleArn"}, "CustomerContentEncryptionConfiguration":{"shape":"CustomerContentEncryptionConfiguration"}, - "EnableMinimumEncryptionConfiguration":{"shape":"BoxedBoolean"} + "EnableMinimumEncryptionConfiguration":{"shape":"BoxedBoolean"}, + "IdentityCenterConfiguration":{"shape":"IdentityCenterConfiguration"}, + "QueryResultsS3AccessGrantsConfiguration":{"shape":"QueryResultsS3AccessGrantsConfiguration"} } }, "WorkGroupConfigurationUpdates":{ @@ -3265,7 +3312,8 @@ "AdditionalConfiguration":{"shape":"NameString"}, "ExecutionRole":{"shape":"RoleArn"}, "CustomerContentEncryptionConfiguration":{"shape":"CustomerContentEncryptionConfiguration"}, - "EnableMinimumEncryptionConfiguration":{"shape":"BoxedBoolean"} + "EnableMinimumEncryptionConfiguration":{"shape":"BoxedBoolean"}, + "QueryResultsS3AccessGrantsConfiguration":{"shape":"QueryResultsS3AccessGrantsConfiguration"} } }, "WorkGroupDescriptionString":{ @@ -3295,7 +3343,8 @@ "State":{"shape":"WorkGroupState"}, "Description":{"shape":"WorkGroupDescriptionString"}, "CreationTime":{"shape":"Date"}, - "EngineVersion":{"shape":"EngineVersion"} + "EngineVersion":{"shape":"EngineVersion"}, + "IdentityCenterApplicationArn":{"shape":"IdentityCenterApplicationArn"} } }, "WorkGroupsList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/athena/2017-05-18/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/athena/2017-05-18/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/athena/2017-05-18/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/athena/2017-05-18/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Athena is an interactive query service that lets you use standard SQL to analyze data directly in Amazon S3. You can point Athena at your data in Amazon S3 and run ad-hoc queries and get results in seconds. Athena is serverless, so there is no infrastructure to set up or manage. You pay only for the queries you run. Athena scales automatically—executing queries in parallel—so results are fast, even with large datasets and complex queries. For more information, see What is Amazon Athena in the Amazon Athena User Guide.

If you connect to Athena using the JDBC driver, use version 1.1.0 of the driver or later with the Amazon Athena API. Earlier version drivers do not support the API. For more information and to download the driver, see Accessing Amazon Athena with JDBC.

For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", + "service": "

Amazon Athena is an interactive query service that lets you use standard SQL to analyze data directly in Amazon S3. You can point Athena at your data in Amazon S3 and run ad-hoc queries and get results in seconds. Athena is serverless, so there is no infrastructure to set up or manage. You pay only for the queries you run. Athena scales automatically—executing queries in parallel—so results are fast, even with large datasets and complex queries. For more information, see What is Amazon Athena in the Amazon Athena User Guide.

If you connect to Athena using the JDBC driver, use version 1.1.0 of the driver or later with the Amazon Athena API. Earlier version drivers do not support the API. For more information and to download the driver, see Accessing Amazon Athena with JDBC.

", "operations": { "BatchGetNamedQuery": "

Returns the details of a single named query or a list of up to 50 queries, which you provide as an array of query ID strings. Requires you to have access to the workgroup in which the queries were saved. Use ListNamedQueriesInput to get the list of named query IDs in the specified workgroup. If information could not be retrieved for a submitted query ID, information about the query ID submitted is listed under UnprocessedNamedQueryId. Named queries differ from executed queries. Use BatchGetQueryExecutionInput to get details about each unique query execution, and ListQueryExecutionsInput to get a list of query execution IDs.

", "BatchGetPreparedStatement": "

Returns the details of a single prepared statement or a list of up to 256 prepared statements for the array of prepared statement names that you provide. Requires you to have access to the workgroup to which the prepared statements belong. If a prepared statement cannot be retrieved for the name specified, the statement is listed in UnprocessedPreparedStatementNames.

", @@ -8,14 +8,14 @@ "CancelCapacityReservation": "

Cancels the capacity reservation with the specified name. Cancelled reservations remain in your account and will be deleted 45 days after cancellation. During the 45 days, you cannot re-purpose or reuse a reservation that has been cancelled, but you can refer to its tags and view it for historical reference.

", "CreateCapacityReservation": "

Creates a capacity reservation with the specified name and number of requested data processing units.

", "CreateDataCatalog": "

Creates (registers) a data catalog with the specified name and properties. Catalogs created are visible to all users of the same Amazon Web Services account.

", - "CreateNamedQuery": "

Creates a named query in the specified workgroup. Requires that you have access to the workgroup.

For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", + "CreateNamedQuery": "

Creates a named query in the specified workgroup. Requires that you have access to the workgroup.

", "CreateNotebook": "

Creates an empty ipynb file in the specified Apache Spark enabled workgroup. Throws an error if a file in the workgroup with the same name already exists.

", "CreatePreparedStatement": "

Creates a prepared statement for use with SQL queries in Athena.

", "CreatePresignedNotebookUrl": "

Gets an authentication token and the URL at which the notebook can be accessed. During programmatic access, CreatePresignedNotebookUrl must be called every 10 minutes to refresh the authentication token. For information about granting programmatic access, see Grant programmatic access.

", "CreateWorkGroup": "

Creates a workgroup with the specified name. A workgroup can be an Apache Spark enabled workgroup or an Athena SQL workgroup.

", "DeleteCapacityReservation": "

Deletes a cancelled capacity reservation. A reservation must be cancelled before it can be deleted. A deleted reservation is immediately removed from your account and can no longer be referenced, including by its ARN. A deleted reservation cannot be called by GetCapacityReservation, and deleted reservations do not appear in the output of ListCapacityReservations.

", "DeleteDataCatalog": "

Deletes a data catalog.

", - "DeleteNamedQuery": "

Deletes the named query if you have access to the workgroup in which the query was saved.

For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", + "DeleteNamedQuery": "

Deletes the named query if you have access to the workgroup in which the query was saved.

", "DeleteNotebook": "

Deletes the specified notebook.

", "DeletePreparedStatement": "

Deletes the prepared statement with the specified name from the specified workgroup.

", "DeleteWorkGroup": "

Deletes the workgroup with the specified name. The primary workgroup cannot be deleted.

", @@ -45,21 +45,21 @@ "ListDatabases": "

Lists the databases in the specified data catalog.

", "ListEngineVersions": "

Returns a list of engine versions that are available to choose from, including the Auto option.

", "ListExecutors": "

Lists, in descending order, the executors that joined a session. Newer executors are listed first; older executors are listed later. The result can be optionally filtered by state.

", - "ListNamedQueries": "

Provides a list of available query IDs only for queries saved in the specified workgroup. Requires that you have access to the specified workgroup. If a workgroup is not specified, lists the saved queries for the primary workgroup.

For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", + "ListNamedQueries": "

Provides a list of available query IDs only for queries saved in the specified workgroup. Requires that you have access to the specified workgroup. If a workgroup is not specified, lists the saved queries for the primary workgroup.

", "ListNotebookMetadata": "

Displays the notebook files for the specified workgroup in paginated format.

", "ListNotebookSessions": "

Lists, in descending order, the sessions that have been created in a notebook that are in an active state like CREATING, CREATED, IDLE or BUSY. Newer sessions are listed first; older sessions are listed later.

", "ListPreparedStatements": "

Lists the prepared statements in the specified workgroup.

", - "ListQueryExecutions": "

Provides a list of available query execution IDs for the queries in the specified workgroup. If a workgroup is not specified, returns a list of query execution IDs for the primary workgroup. Requires you to have access to the workgroup in which the queries ran.

For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", + "ListQueryExecutions": "

Provides a list of available query execution IDs for the queries in the specified workgroup. Athena keeps a query history for 45 days. If a workgroup is not specified, returns a list of query execution IDs for the primary workgroup. Requires you to have access to the workgroup in which the queries ran.

", "ListSessions": "

Lists the sessions in a workgroup that are in an active state like CREATING, CREATED, IDLE, or BUSY. Newer sessions are listed first; older sessions are listed later.

", "ListTableMetadata": "

Lists the metadata for the tables in the specified data catalog database.

", "ListTagsForResource": "

Lists the tags associated with an Athena resource.

", "ListWorkGroups": "

Lists available workgroups for the account.

", "PutCapacityAssignmentConfiguration": "

Puts a new capacity assignment configuration for a specified capacity reservation. If a capacity assignment configuration already exists for the capacity reservation, replaces the existing capacity assignment configuration.

", - "StartCalculationExecution": "

Submits calculations for execution within a session. You can supply the code to run as an inline code block within the request.

", + "StartCalculationExecution": "

Submits calculations for execution within a session. You can supply the code to run as an inline code block within the request.

The request syntax requires the StartCalculationExecutionRequest$CodeBlock parameter or the CalculationConfiguration$CodeBlock parameter, but not both. Because CalculationConfiguration$CodeBlock is deprecated, use the StartCalculationExecutionRequest$CodeBlock parameter instead.

", "StartQueryExecution": "

Runs the SQL query statements contained in the Query. Requires you to have access to the workgroup in which the query ran. Running queries against an external catalog requires GetDataCatalog permission to the catalog. For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", "StartSession": "

Creates a session for running calculations within a workgroup. The session is ready when it reaches an IDLE state.

", "StopCalculationExecution": "

Requests the cancellation of a calculation. A StopCalculationExecution call on a calculation that is already in a terminal state (for example, STOPPED, FAILED, or COMPLETED) succeeds but has no effect.

Cancelling a calculation is done on a best effort basis. If a calculation cannot be cancelled, you can be charged for its completion. If you are concerned about being charged for a calculation that cannot be cancelled, consider terminating the session in which the calculation is running.

", - "StopQueryExecution": "

Stops a query execution. Requires you to have access to the workgroup in which the query ran.

For code samples using the Amazon Web Services SDK for Java, see Examples and Code Samples in the Amazon Athena User Guide.

", + "StopQueryExecution": "

Stops a query execution. Requires you to have access to the workgroup in which the query ran.

", "TagResource": "

Adds one or more tags to an Athena resource. A tag is a label that you assign to a resource. Each tag consists of a key and an optional value, both of which you define. For example, you can use tags to categorize Athena workgroups, data catalogs, or capacity reservations by purpose, owner, or environment. Use a consistent set of tag keys to make it easier to search and filter the resources in your account. For best practices, see Tagging Best Practices. Tag keys can be from 1 to 128 UTF-8 Unicode characters, and tag values can be from 0 to 256 UTF-8 Unicode characters. Tags can use letters and numbers representable in UTF-8, and the following characters: + - = . _ : / @. Tag keys and values are case-sensitive. Tag keys must be unique per resource. If you specify more than one tag, separate them by commas.

", "TerminateSession": "

Terminates an active session. A TerminateSession call on a session that is already inactive (for example, in a FAILED, TERMINATED or TERMINATING state) succeeds but has no effect. Calculations running in the session when TerminateSession is called are forcefully stopped, but may display as FAILED instead of STOPPED.

", "UntagResource": "

Removes one or more tags from an Athena resource.

", @@ -124,6 +124,12 @@ "CreatePresignedNotebookUrlResponse$AuthToken": "

The authentication token for the notebook.

" } }, + "AuthenticationType": { + "base": null, + "refs": { + "QueryResultsS3AccessGrantsConfiguration$AuthenticationType": "

The authentication type used for Amazon S3 access grants. Currently, only DIRECTORY_IDENTITY is supported.

" + } + }, "AwsAccountId": { "base": null, "refs": { @@ -174,6 +180,9 @@ "base": null, "refs": { "DeleteWorkGroupInput$RecursiveDeleteOption": "

The option to delete the workgroup and its contents even if the workgroup contains any named queries, query executions, or notebooks.

", + "IdentityCenterConfiguration$EnableIdentityCenter": "

Specifies whether the workgroup is IAM Identity Center supported.

", + "QueryResultsS3AccessGrantsConfiguration$EnableS3AccessGrants": "

Specifies whether Amazon S3 access grants are enabled for query results.

", + "QueryResultsS3AccessGrantsConfiguration$CreateUserLevelPrefix": "

When enabled, appends the user ID as an Amazon S3 path prefix to the query result output location.

", "ResultConfigurationUpdates$RemoveOutputLocation": "

If set to \"true\", indicates that the previously-specified query results location (also known as a client-side setting) for queries in this workgroup should be ignored and set to null. If set to \"false\" or not set, and a value is present in the OutputLocation in ResultConfigurationUpdates (the client-side setting), the OutputLocation in the workgroup's ResultConfiguration will be updated with the new value. For more information, see Workgroup Settings Override Client-Side Settings.

", "ResultConfigurationUpdates$RemoveEncryptionConfiguration": "

If set to \"true\", indicates that the previously-specified encryption configuration (also known as the client-side setting) for queries in this workgroup should be ignored and set to null. If set to \"false\" or not set, and a value is present in the EncryptionConfiguration in ResultConfigurationUpdates (the client-side setting), the EncryptionConfiguration in the workgroup's ResultConfiguration will be updated with the new value. For more information, see Workgroup Settings Override Client-Side Settings.

", "ResultConfigurationUpdates$RemoveExpectedBucketOwner": "

If set to \"true\", removes the Amazon Web Services account ID previously specified for ResultConfiguration$ExpectedBucketOwner. If set to \"false\" or not set, and a value is present in the ExpectedBucketOwner in ResultConfigurationUpdates (the client-side setting), the ExpectedBucketOwner in the workgroup's ResultConfiguration is updated with the new value. For more information, see Workgroup Settings Override Client-Side Settings.

", @@ -367,7 +376,7 @@ "refs": { "CalculationConfiguration$CodeBlock": "

A string that contains the code for the calculation.

", "GetCalculationExecutionCodeResponse$CodeBlock": "

The unencrypted code that was executed for the calculation.

", - "StartCalculationExecutionRequest$CodeBlock": "

A string that contains the code of the calculation.

" + "StartCalculationExecutionRequest$CodeBlock": "

A string that contains the code of the calculation. Use this parameter instead of CalculationConfiguration$CodeBlock, which is deprecated.

" } }, "Column": { @@ -398,7 +407,7 @@ "ColumnNullable": { "base": null, "refs": { - "ColumnInfo$Nullable": "

Indicates the column's nullable status.

" + "ColumnInfo$Nullable": "

Unsupported constraint. This value always shows as UNKNOWN.

" } }, "CommentString": { @@ -484,7 +493,7 @@ } }, "CustomerContentEncryptionConfiguration": { - "base": "

Specifies the KMS key that is used to encrypt the user's data stores in Athena. This setting does not apply to Athena SQL workgroups.

", + "base": "

Specifies the customer managed KMS key that is used to encrypt the user's data stores in Athena. When an Amazon Web Services managed key is used, this value is null. This setting does not apply to Athena SQL workgroups.

", "refs": { "WorkGroupConfiguration$CustomerContentEncryptionConfiguration": "

Specifies the KMS key that is used to encrypt the user's data stores in Athena. This setting does not apply to Athena SQL workgroups.

", "WorkGroupConfigurationUpdates$CustomerContentEncryptionConfiguration": null @@ -967,10 +976,29 @@ "refs": { "CreateNamedQueryInput$ClientRequestToken": "

A unique case-sensitive string used to ensure the request to create the query is idempotent (executes only once). If another CreateNamedQuery request is received, the same response is returned and another query is not created. If a parameter has changed, for example, the QueryString, an error is returned.

This token is listed as not required because Amazon Web Services SDKs (for example the Amazon Web Services SDK for Java) auto-generate the token for users. If you are not using the Amazon Web Services SDK or the Amazon Web Services CLI, you must provide this token or the action will fail.

", "StartCalculationExecutionRequest$ClientRequestToken": "

A unique case-sensitive string used to ensure the request to create the calculation is idempotent (executes only once). If another StartCalculationExecutionRequest is received, the same response is returned and another calculation is not created. If a parameter has changed, an error is returned.

This token is listed as not required because Amazon Web Services SDKs (for example the Amazon Web Services SDK for Java) auto-generate the token for users. If you are not using the Amazon Web Services SDK or the Amazon Web Services CLI, you must provide this token or the action will fail.

", - "StartQueryExecutionInput$ClientRequestToken": "

A unique case-sensitive string used to ensure the request to create the query is idempotent (executes only once). If another StartQueryExecution request is received, the same response is returned and another query is not created. If a parameter has changed, for example, the QueryString, an error is returned.

This token is listed as not required because Amazon Web Services SDKs (for example the Amazon Web Services SDK for Java) auto-generate the token for users. If you are not using the Amazon Web Services SDK or the Amazon Web Services CLI, you must provide this token or the action will fail.

", + "StartQueryExecutionInput$ClientRequestToken": "

A unique case-sensitive string used to ensure the request to create the query is idempotent (executes only once). If another StartQueryExecution request is received, the same response is returned and another query is not created. An error is returned if a parameter, such as QueryString, has changed. A call to StartQueryExecution that uses a previous client request token returns the same QueryExecutionId even if the requester doesn't have permission on the tables specified in QueryString.

This token is listed as not required because Amazon Web Services SDKs (for example the Amazon Web Services SDK for Java) auto-generate the token for users. If you are not using the Amazon Web Services SDK or the Amazon Web Services CLI, you must provide this token or the action will fail.

", "StartSessionRequest$ClientRequestToken": "

A unique case-sensitive string used to ensure the request to create the session is idempotent (executes only once). If another StartSessionRequest is received, the same response is returned and another session is not created. If a parameter has changed, an error is returned.

This token is listed as not required because Amazon Web Services SDKs (for example the Amazon Web Services SDK for Java) auto-generate the token for users. If you are not using the Amazon Web Services SDK or the Amazon Web Services CLI, you must provide this token or the action will fail.

" } }, + "IdentityCenterApplicationArn": { + "base": null, + "refs": { + "WorkGroup$IdentityCenterApplicationArn": "

The ARN of the IAM Identity Center enabled application associated with the workgroup.

", + "WorkGroupSummary$IdentityCenterApplicationArn": "

The ARN of the IAM Identity Center enabled application associated with the workgroup.

" + } + }, + "IdentityCenterConfiguration": { + "base": "

Specifies whether the workgroup is IAM Identity Center supported.

", + "refs": { + "WorkGroupConfiguration$IdentityCenterConfiguration": "

Specifies whether the workgroup is IAM Identity Center supported.

" + } + }, + "IdentityCenterInstanceArn": { + "base": null, + "refs": { + "IdentityCenterConfiguration$IdentityCenterInstanceArn": "

The IAM Identity Center instance ARN that the workgroup associates to.

" + } + }, "ImportNotebookInput": { "base": null, "refs": { @@ -1008,7 +1036,7 @@ "KmsKey": { "base": null, "refs": { - "CustomerContentEncryptionConfiguration$KmsKey": "

The KMS key that is used to encrypt the user's data stores in Athena.

" + "CustomerContentEncryptionConfiguration$KmsKey": "

The customer managed KMS key that is used to encrypt the user's data stores in Athena.

" } }, "ListApplicationDPUSizesInput": { @@ -1184,6 +1212,7 @@ "QueryExecutionStatistics$DataScannedInBytes": "

The number of bytes in the data that was queried.

", "QueryExecutionStatistics$TotalExecutionTimeInMillis": "

The number of milliseconds that Athena took to run the query.

", "QueryExecutionStatistics$QueryQueueTimeInMillis": "

The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.

", + "QueryExecutionStatistics$ServicePreProcessingTimeInMillis": "

The number of milliseconds that Athena took to preprocess the query before submitting the query to the query engine.

", "QueryExecutionStatistics$QueryPlanningTimeInMillis": "

The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.

", "QueryExecutionStatistics$ServiceProcessingTimeInMillis": "

The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.

", "QueryRuntimeStatisticsRows$InputRows": "

The number of rows read to execute the query.

", @@ -1191,6 +1220,7 @@ "QueryRuntimeStatisticsRows$OutputBytes": "

The number of bytes returned by the query.

", "QueryRuntimeStatisticsRows$OutputRows": "

The number of rows returned by the query.

", "QueryRuntimeStatisticsTimeline$QueryQueueTimeInMillis": "

The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.

", + "QueryRuntimeStatisticsTimeline$ServicePreProcessingTimeInMillis": "

The number of milliseconds that Athena spends on preprocessing before it submits the query to the engine.

", "QueryRuntimeStatisticsTimeline$QueryPlanningTimeInMillis": "

The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.

", "QueryRuntimeStatisticsTimeline$EngineExecutionTimeInMillis": "

The number of milliseconds that the query took to execute.

", "QueryRuntimeStatisticsTimeline$ServiceProcessingTimeInMillis": "

The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.

", @@ -1436,8 +1466,8 @@ "ParametersMap": { "base": null, "refs": { - "CreateDataCatalogInput$Parameters": "

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

  • For the HIVE data catalog type, use the following syntax. The metadata-function parameter is required. The sdk-version parameter is optional and defaults to the currently supported version.

    metadata-function=lambda_arn, sdk-version=version_number

  • For the LAMBDA data catalog type, use one of the following sets of required parameters, but not both.

    • If you have one Lambda function that processes metadata and another for reading the actual data, use the following syntax. Both parameters are required.

      metadata-function=lambda_arn, record-function=lambda_arn

    • If you have a composite Lambda function that processes both metadata and data, use the following syntax to specify your Lambda function.

      function=lambda_arn

  • The GLUE type takes a catalog ID parameter and is required. The catalog_id is the account ID of the Amazon Web Services account to which the Glue Data Catalog belongs.

    catalog-id=catalog_id

    • The GLUE data catalog type also applies to the default AwsDataCatalog that already exists in your account, of which you can have only one and cannot modify.

    • Queries that specify a Glue Data Catalog other than the default AwsDataCatalog must be run on Athena engine version 2.

    • In Regions where Athena engine version 2 is not available, creating new Glue data catalogs results in an INVALID_INPUT error.

", - "DataCatalog$Parameters": "

Specifies the Lambda function or functions to use for the data catalog. This is a mapping whose values depend on the catalog type.

  • For the HIVE data catalog type, use the following syntax. The metadata-function parameter is required. The sdk-version parameter is optional and defaults to the currently supported version.

    metadata-function=lambda_arn, sdk-version=version_number

  • For the LAMBDA data catalog type, use one of the following sets of required parameters, but not both.

    • If you have one Lambda function that processes metadata and another for reading the actual data, use the following syntax. Both parameters are required.

      metadata-function=lambda_arn, record-function=lambda_arn

    • If you have a composite Lambda function that processes both metadata and data, use the following syntax to specify your Lambda function.

      function=lambda_arn

  • The GLUE type takes a catalog ID parameter and is required. The catalog_id is the account ID of the Amazon Web Services account to which the Glue catalog belongs.

    catalog-id=catalog_id

    • The GLUE data catalog type also applies to the default AwsDataCatalog that already exists in your account, of which you can have only one and cannot modify.

    • Queries that specify a Glue Data Catalog other than the default AwsDataCatalog must be run on Athena engine version 2.

", + "CreateDataCatalogInput$Parameters": "

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

  • For the HIVE data catalog type, use the following syntax. The metadata-function parameter is required. The sdk-version parameter is optional and defaults to the currently supported version.

    metadata-function=lambda_arn, sdk-version=version_number

  • For the LAMBDA data catalog type, use one of the following sets of required parameters, but not both.

    • If you have one Lambda function that processes metadata and another for reading the actual data, use the following syntax. Both parameters are required.

      metadata-function=lambda_arn, record-function=lambda_arn

    • If you have a composite Lambda function that processes both metadata and data, use the following syntax to specify your Lambda function.

      function=lambda_arn

  • The GLUE type takes a catalog ID parameter and is required. The catalog_id is the account ID of the Amazon Web Services account to which the Glue Data Catalog belongs.

    catalog-id=catalog_id

    • The GLUE data catalog type also applies to the default AwsDataCatalog that already exists in your account, of which you can have only one and cannot modify.

", + "DataCatalog$Parameters": "

Specifies the Lambda function or functions to use for the data catalog. This is a mapping whose values depend on the catalog type.

  • For the HIVE data catalog type, use the following syntax. The metadata-function parameter is required. The sdk-version parameter is optional and defaults to the currently supported version.

    metadata-function=lambda_arn, sdk-version=version_number

  • For the LAMBDA data catalog type, use one of the following sets of required parameters, but not both.

    • If you have one Lambda function that processes metadata and another for reading the actual data, use the following syntax. Both parameters are required.

      metadata-function=lambda_arn, record-function=lambda_arn

    • If you have a composite Lambda function that processes both metadata and data, use the following syntax to specify your Lambda function.

      function=lambda_arn

  • The GLUE type takes a catalog ID parameter and is required. The catalog_id is the account ID of the Amazon Web Services account to which the Glue catalog belongs.

    catalog-id=catalog_id

    • The GLUE data catalog type also applies to the default AwsDataCatalog that already exists in your account, of which you can have only one and cannot modify.

", "Database$Parameters": "

A set of custom key/value pairs.

", "EngineConfiguration$AdditionalConfigs": "

Contains additional notebook engine MAP<string, string> parameter mappings in the form of key-value pairs. To specify an Athena notebook that the Jupyter server will download and serve, specify a value for the StartSessionRequest$NotebookVersion field, and then add a key named NotebookId to AdditionalConfigs that has the value of the Athena notebook ID.

", "EngineConfiguration$SparkProperties": "

Specifies custom jar files and Spark properties for use cases like cluster encryption, table formats, and general Spark tuning.

", @@ -1558,6 +1588,14 @@ "QueryExecution$Status": "

The completion date, current state, submission time, and state change reason (if applicable) for the query execution.

" } }, + "QueryResultsS3AccessGrantsConfiguration": { + "base": "

Specifies whether Amazon S3 access grants are enabled for query results.

", + "refs": { + "QueryExecution$QueryResultsS3AccessGrantsConfiguration": "

Specifies whether Amazon S3 access grants are enabled for query results.

", + "WorkGroupConfiguration$QueryResultsS3AccessGrantsConfiguration": "

Specifies whether Amazon S3 access grants are enabled for query results.

", + "WorkGroupConfigurationUpdates$QueryResultsS3AccessGrantsConfiguration": "

Specifies whether Amazon S3 access grants are enabled for query results.

" + } + }, "QueryRuntimeStatistics": { "base": "

The query execution timeline, statistics on input and output rows and bytes, and the different query stages that form the query execution plan.

", "refs": { @@ -1676,9 +1714,9 @@ "RoleArn": { "base": null, "refs": { - "SessionConfiguration$ExecutionRole": "

The ARN of the execution role used for the session.

", - "WorkGroupConfiguration$ExecutionRole": "

Role used in a session for accessing the user's resources.

", - "WorkGroupConfigurationUpdates$ExecutionRole": "

Contains the ARN of the execution role for the workgroup

" + "SessionConfiguration$ExecutionRole": "

The ARN of the execution role used to access user resources for Spark sessions and Identity Center enabled workgroups. This property applies only to Spark enabled workgroups and Identity Center enabled workgroups.

", + "WorkGroupConfiguration$ExecutionRole": "

The ARN of the execution role used to access user resources for Spark sessions and Identity Center enabled workgroups. This property applies only to Spark enabled workgroups and Identity Center enabled workgroups.

", + "WorkGroupConfigurationUpdates$ExecutionRole": "

The ARN of the execution role used to access user resources for Spark sessions and Identity Center enabled workgroups. This property applies only to Spark enabled workgroups and Identity Center enabled workgroups.

" } }, "Row": { @@ -2191,15 +2229,21 @@ "CreateWorkGroupInput$Name": "

The workgroup name.

", "DeletePreparedStatementInput$WorkGroup": "

The workgroup to which the statement to be deleted belongs.

", "DeleteWorkGroupInput$WorkGroup": "

The unique name of the workgroup to delete.

", + "GetDataCatalogInput$WorkGroup": "

The name of the workgroup. Required if making an IAM Identity Center request.

", + "GetDatabaseInput$WorkGroup": "

The name of the workgroup for which the metadata is being fetched. Required if requesting an IAM Identity Center enabled Glue Data Catalog.

", "GetPreparedStatementInput$WorkGroup": "

The workgroup to which the statement to be retrieved belongs.

", "GetSessionResponse$WorkGroup": "

The workgroup to which the session belongs.

", + "GetTableMetadataInput$WorkGroup": "

The name of the workgroup for which the metadata is being fetched. Required if requesting an IAM Identity Center enabled Glue Data Catalog.

", "GetWorkGroupInput$WorkGroup": "

The name of the workgroup.

", "ImportNotebookInput$WorkGroup": "

The name of the Spark enabled workgroup to import the notebook to.

", + "ListDataCatalogsInput$WorkGroup": "

The name of the workgroup. Required if making an IAM Identity Center request.

", + "ListDatabasesInput$WorkGroup": "

The name of the workgroup for which the metadata is being fetched. Required if requesting an IAM Identity Center enabled Glue Data Catalog.

", "ListNamedQueriesInput$WorkGroup": "

The name of the workgroup from which the named queries are being returned. If a workgroup is not specified, the saved queries for the primary workgroup are returned.

", "ListNotebookMetadataInput$WorkGroup": "

The name of the Spark enabled workgroup to retrieve notebook metadata for.

", "ListPreparedStatementsInput$WorkGroup": "

The workgroup to list the prepared statements for.

", "ListQueryExecutionsInput$WorkGroup": "

The name of the workgroup from which queries are being returned. If a workgroup is not specified, a list of available query execution IDs for the queries in the primary workgroup is returned.

", "ListSessionsRequest$WorkGroup": "

The workgroup to which the session belongs.

", + "ListTableMetadataInput$WorkGroup": "

The name of the workgroup for which the metadata is being fetched. Required if requesting an IAM Identity Center enabled Glue Data Catalog.

", "NamedQuery$WorkGroup": "

The name of the workgroup that contains the named query.

", "NotebookMetadata$WorkGroup": "

The name of the Spark enabled workgroup to which the notebook belongs.

", "PreparedStatement$WorkGroupName": "

The name of the workgroup to which the prepared statement belongs.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/athena/2017-05-18/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/athena/2017-05-18/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/athena/2017-05-18/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/athena/2017-05-18/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://athena-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://athena-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://athena-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://athena-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://athena.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://athena.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://athena.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://athena.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/auditmanager/2017-07-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/auditmanager/2017-07-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/auditmanager/2017-07-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/auditmanager/2017-07-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -942,6 +942,8 @@ "AWSAccounts":{ "type":"list", "member":{"shape":"AWSAccount"}, + "max":200, + "min":1, "sensitive":true }, "AWSService":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1128,6 +1128,12 @@ }, "exception":true }, + "AnyPrintableAsciiStringMaxLen4000":{ + "type":"string", + "max":4000, + "min":1, + "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u007e]+" + }, "AsciiStringMaxLen255":{ "type":"string", "max":255, @@ -1238,7 +1244,8 @@ "Context":{"shape":"Context"}, "DesiredCapacityType":{"shape":"XmlStringMaxLen255"}, "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"}, - "TrafficSources":{"shape":"TrafficSources"} + "TrafficSources":{"shape":"TrafficSources"}, + "InstanceMaintenancePolicy":{"shape":"InstanceMaintenancePolicy"} } }, "AutoScalingGroupDesiredCapacity":{"type":"integer"}, @@ -1516,7 +1523,8 @@ "Context":{"shape":"Context"}, "DesiredCapacityType":{"shape":"XmlStringMaxLen255"}, "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"}, - "TrafficSources":{"shape":"TrafficSources"} + "TrafficSources":{"shape":"TrafficSources"}, + "InstanceMaintenancePolicy":{"shape":"InstanceMaintenancePolicy"} } }, "CreateLaunchConfigurationType":{ @@ -2104,6 +2112,13 @@ "type":"list", "member":{"shape":"XmlStringMaxLen19"} }, + "InstanceMaintenancePolicy":{ + "type":"structure", + "members":{ + "MinHealthyPercentage":{"shape":"IntPercentResettable"}, + "MaxHealthyPercentage":{"shape":"IntPercent100To200Resettable"} + } + }, "InstanceMetadataEndpointState":{ "type":"string", "enum":[ @@ -2272,6 +2287,21 @@ "max":100, "min":0 }, + "IntPercent100To200":{ + "type":"integer", + "max":200, + "min":100 + }, + "IntPercent100To200Resettable":{ + "type":"integer", + "max":200, + "min":-1 + }, + "IntPercentResettable":{ + "type":"integer", + "max":100, + "min":-1 + }, "InvalidNextToken":{ "type":"structure", "members":{ @@ -2402,7 +2432,7 @@ "LifecycleTransition":{"shape":"LifecycleTransition"}, "NotificationTargetARN":{"shape":"NotificationTargetResourceName"}, "RoleARN":{"shape":"XmlStringMaxLen255"}, - "NotificationMetadata":{"shape":"XmlStringMaxLen1023"}, + "NotificationMetadata":{"shape":"AnyPrintableAsciiStringMaxLen4000"}, "HeartbeatTimeout":{"shape":"HeartbeatTimeout"}, "GlobalTimeout":{"shape":"GlobalTimeout"}, "DefaultResult":{"shape":"LifecycleActionResult"} @@ -2422,7 +2452,7 @@ "members":{ "LifecycleHookName":{"shape":"AsciiStringMaxLen255"}, "LifecycleTransition":{"shape":"LifecycleTransition"}, - "NotificationMetadata":{"shape":"XmlStringMaxLen1023"}, + "NotificationMetadata":{"shape":"AnyPrintableAsciiStringMaxLen4000"}, "HeartbeatTimeout":{"shape":"HeartbeatTimeout"}, "DefaultResult":{"shape":"LifecycleActionResult"}, "NotificationTargetARN":{"shape":"NotificationTargetResourceName"}, @@ -2942,7 +2972,7 @@ "LifecycleTransition":{"shape":"LifecycleTransition"}, "RoleARN":{"shape":"XmlStringMaxLen255"}, "NotificationTargetARN":{"shape":"NotificationTargetResourceName"}, - "NotificationMetadata":{"shape":"XmlStringMaxLen1023"}, + "NotificationMetadata":{"shape":"AnyPrintableAsciiStringMaxLen4000"}, "HeartbeatTimeout":{"shape":"HeartbeatTimeout"}, "DefaultResult":{"shape":"LifecycleActionResult"} } @@ -3051,7 +3081,8 @@ "AutoRollback":{"shape":"AutoRollback"}, "ScaleInProtectedInstances":{"shape":"ScaleInProtectedInstances"}, "StandbyInstances":{"shape":"StandbyInstances"}, - "AlarmSpecification":{"shape":"AlarmSpecification"} + "AlarmSpecification":{"shape":"AlarmSpecification"}, + "MaxHealthyPercentage":{"shape":"IntPercent100To200"} } }, "RefreshStrategy":{ @@ -3514,7 +3545,8 @@ "CapacityRebalance":{"shape":"CapacityRebalanceEnabled"}, "Context":{"shape":"Context"}, "DesiredCapacityType":{"shape":"XmlStringMaxLen255"}, - "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"} + "DefaultInstanceWarmup":{"shape":"DefaultInstanceWarmup"}, + "InstanceMaintenancePolicy":{"shape":"InstanceMaintenancePolicy"} } }, "VCpuCountRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -63,7 +63,7 @@ "SetDesiredCapacity": "

Sets the size of the specified Auto Scaling group.

If a scale-in activity occurs as a result of a new DesiredCapacity value that is lower than the current size of the group, the Auto Scaling group uses its termination policy to determine which instances to terminate.

For more information, see Manual scaling in the Amazon EC2 Auto Scaling User Guide.

", "SetInstanceHealth": "

Sets the health status of the specified instance.

For more information, see Health checks for Auto Scaling instances in the Amazon EC2 Auto Scaling User Guide.

", "SetInstanceProtection": "

Updates the instance protection settings of the specified instances. This operation cannot be called on instances in a warm pool.

For more information about preventing instances that are part of an Auto Scaling group from terminating on scale in, see Using instance scale-in protection in the Amazon EC2 Auto Scaling User Guide.

If you exceed your maximum limit of instance IDs, which is 50 per Auto Scaling group, the call fails.

", - "StartInstanceRefresh": "

Starts an instance refresh. During an instance refresh, Amazon EC2 Auto Scaling performs a rolling update of instances in an Auto Scaling group. Instances are terminated first and then replaced, which temporarily reduces the capacity available within your Auto Scaling group.

This operation is part of the instance refresh feature in Amazon EC2 Auto Scaling, which helps you update instances in your Auto Scaling group. This feature is helpful, for example, when you have a new AMI or a new user data script. You just need to create a new launch template that specifies the new AMI or user data script. Then start an instance refresh to immediately begin the process of updating instances in the group.

If successful, the request's response contains a unique ID that you can use to track the progress of the instance refresh. To query its status, call the DescribeInstanceRefreshes API. To describe the instance refreshes that have already run, call the DescribeInstanceRefreshes API. To cancel an instance refresh that is in progress, use the CancelInstanceRefresh API.

An instance refresh might fail for several reasons, such as EC2 launch failures, misconfigured health checks, or not ignoring or allowing the termination of instances that are in Standby state or protected from scale in. You can monitor for failed EC2 launches using the scaling activities. To find the scaling activities, call the DescribeScalingActivities API.

If you enable auto rollback, your Auto Scaling group will be rolled back automatically when the instance refresh fails. You can enable this feature before starting an instance refresh by specifying the AutoRollback property in the instance refresh preferences. Otherwise, to roll back an instance refresh before it finishes, use the RollbackInstanceRefresh API.

", + "StartInstanceRefresh": "

Starts an instance refresh.

This operation is part of the instance refresh feature in Amazon EC2 Auto Scaling, which helps you update instances in your Auto Scaling group. This feature is helpful, for example, when you have a new AMI or a new user data script. You just need to create a new launch template that specifies the new AMI or user data script. Then start an instance refresh to immediately begin the process of updating instances in the group.

If successful, the request's response contains a unique ID that you can use to track the progress of the instance refresh. To query its status, call the DescribeInstanceRefreshes API. To describe the instance refreshes that have already run, call the DescribeInstanceRefreshes API. To cancel an instance refresh that is in progress, use the CancelInstanceRefresh API.

An instance refresh might fail for several reasons, such as EC2 launch failures, misconfigured health checks, or not ignoring or allowing the termination of instances that are in Standby state or protected from scale in. You can monitor for failed EC2 launches using the scaling activities. To find the scaling activities, call the DescribeScalingActivities API.

If you enable auto rollback, your Auto Scaling group will be rolled back automatically when the instance refresh fails. You can enable this feature before starting an instance refresh by specifying the AutoRollback property in the instance refresh preferences. Otherwise, to roll back an instance refresh before it finishes, use the RollbackInstanceRefresh API.

", "SuspendProcesses": "

Suspends the specified auto scaling processes, or all processes, for the specified Auto Scaling group.

If you suspend either the Launch or Terminate process types, it can prevent other process types from functioning properly. For more information, see Suspending and resuming scaling processes in the Amazon EC2 Auto Scaling User Guide.

To resume processes that have been suspended, call the ResumeProcesses API.

", "TerminateInstanceInAutoScalingGroup": "

Terminates the specified instance and optionally adjusts the desired group size. This operation cannot be called on instances in a warm pool.

This call simply makes a termination request. The instance is not terminated immediately. When an instance is terminated, the instance status changes to terminated. You can't connect to or start an instance after you've terminated it.

If you do not specify the option to decrement the desired capacity, Amazon EC2 Auto Scaling launches instances to replace the ones that are terminated.

By default, Amazon EC2 Auto Scaling balances instances across all Availability Zones. If you decrement the desired capacity, your Auto Scaling group can become unbalanced between Availability Zones. Amazon EC2 Auto Scaling tries to rebalance the group, and rebalancing might terminate instances in other zones. For more information, see Rebalancing activities in the Amazon EC2 Auto Scaling User Guide.

", "UpdateAutoScalingGroup": "

We strongly recommend that all Auto Scaling groups use launch templates to ensure full functionality for Amazon EC2 Auto Scaling and Amazon EC2.

Updates the configuration for the specified Auto Scaling group.

To update an Auto Scaling group, specify the name of the group and the property that you want to change. Any properties that you don't specify are not changed by this update request. The new settings take effect on any scaling activities after this call returns.

If you associate a new launch configuration or template with an Auto Scaling group, all new instances will get the updated configuration. Existing instances continue to run with the configuration that they were originally launched with. When you update a group to specify a mixed instances policy instead of a launch configuration or template, existing instances may be replaced to match the new purchasing options that you specified in the policy. For example, if the group currently has 100% On-Demand capacity and the policy specifies 50% Spot capacity, this means that half of your instances will be gradually terminated and relaunched as Spot Instances. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the old ones, so that updating your group does not compromise the performance or availability of your application.

Note the following about changing DesiredCapacity, MaxSize, or MinSize:

  • If a scale-in activity occurs as a result of a new DesiredCapacity value that is lower than the current size of the group, the Auto Scaling group uses its termination policy to determine which instances to terminate.

  • If you specify a new value for MinSize without specifying a value for DesiredCapacity, and the new MinSize is larger than the current size of the group, this sets the group's DesiredCapacity to the new MinSize value.

  • If you specify a new value for MaxSize without specifying a value for DesiredCapacity, and the new MaxSize is smaller than the current size of the group, this sets the group's DesiredCapacity to the new MaxSize value.

To see which properties have been set, call the DescribeAutoScalingGroups API. To view the scaling policies for an Auto Scaling group, call the DescribePolicies API. If the group has scaling policies, you can update them by calling the PutScalingPolicy API.

" @@ -208,6 +208,14 @@ "refs": { } }, + "AnyPrintableAsciiStringMaxLen4000": { + "base": null, + "refs": { + "LifecycleHook$NotificationMetadata": "

Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.

", + "LifecycleHookSpecification$NotificationMetadata": "

Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.

", + "PutLifecycleHookType$NotificationMetadata": "

Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.

" + } + }, "AsciiStringMaxLen255": { "base": null, "refs": { @@ -984,6 +992,14 @@ "SetInstanceProtectionQuery$InstanceIds": "

One or more instance IDs. You can specify up to 50 instances.

" } }, + "InstanceMaintenancePolicy": { + "base": "

Describes an instance maintenance policy.

For more information, see Set instance maintenance policy in the Amazon EC2 Auto Scaling User Guide.

", + "refs": { + "AutoScalingGroup$InstanceMaintenancePolicy": "

An instance maintenance policy.

", + "CreateAutoScalingGroupType$InstanceMaintenancePolicy": "

An instance maintenance policy. For more information, see Set instance maintenance policy in the Amazon EC2 Auto Scaling User Guide.

", + "UpdateAutoScalingGroupType$InstanceMaintenancePolicy": "

An instance maintenance policy. For more information, see Set instance maintenance policy in the Amazon EC2 Auto Scaling User Guide.

" + } + }, "InstanceMetadataEndpointState": { "base": null, "refs": { @@ -1115,10 +1131,28 @@ "InstanceRefresh$PercentageComplete": "

The percentage of the instance refresh that is complete. For each instance replacement, Amazon EC2 Auto Scaling tracks the instance's health status and warm-up time. When the instance's health status changes to healthy and the specified warm-up time passes, the instance is considered updated and is added to the percentage complete.

PercentageComplete does not include instances that are replaced during a rollback. This value gradually goes back down to zero during a rollback.

", "InstanceRefreshLivePoolProgress$PercentageComplete": "

The percentage of instances in the Auto Scaling group that have been replaced. For each instance replacement, Amazon EC2 Auto Scaling tracks the instance's health status and warm-up time. When the instance's health status changes to healthy and the specified warm-up time passes, the instance is considered updated and is added to the percentage complete.

", "InstanceRefreshWarmPoolProgress$PercentageComplete": "

The percentage of instances in the warm pool that have been replaced. For each instance replacement, Amazon EC2 Auto Scaling tracks the instance's health status and warm-up time. When the instance's health status changes to healthy and the specified warm-up time passes, the instance is considered updated and is added to the percentage complete.

", - "RefreshPreferences$MinHealthyPercentage": "

The amount of capacity in the Auto Scaling group that must pass your group's health checks to allow the operation to continue. The value is expressed as a percentage of the desired capacity of the Auto Scaling group (rounded up to the nearest integer). The default is 90.

Setting the minimum healthy percentage to 100 percent limits the rate of replacement to one instance at a time. In contrast, setting it to 0 percent has the effect of replacing all instances at the same time.

", + "RefreshPreferences$MinHealthyPercentage": "

Specifies the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload to allow the operation to continue. The value is expressed as a percentage of the desired capacity of the Auto Scaling group. Value range is 0 to 100.

If you do not specify this property, the default is 90 percent, or the percentage set in the instance maintenance policy for the Auto Scaling group, if defined.

", "RollbackDetails$PercentageCompleteOnRollback": "

Indicates the value of PercentageComplete at the time the rollback started.

" } }, + "IntPercent100To200": { + "base": null, + "refs": { + "RefreshPreferences$MaxHealthyPercentage": "

Specifies the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. The value is expressed as a percentage of the desired capacity of the Auto Scaling group. Value range is 100 to 200.

If you specify MaxHealthyPercentage, you must also specify MinHealthyPercentage, and the difference between them cannot be greater than 100. A larger range increases the number of instances that can be replaced at the same time.

If you do not specify this property, the default is 100 percent, or the percentage set in the instance maintenance policy for the Auto Scaling group, if defined.

" + } + }, + "IntPercent100To200Resettable": { + "base": null, + "refs": { + "InstanceMaintenancePolicy$MaxHealthyPercentage": "

Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. After it's set, a value of -1 will clear the previously set value.

Both MinHealthyPercentage and MaxHealthyPercentage must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.

" + } + }, + "IntPercentResettable": { + "base": null, + "refs": { + "InstanceMaintenancePolicy$MinHealthyPercentage": "

Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. After it's set, a value of -1 will clear the previously set value.

" + } + }, "InvalidNextToken": { "base": "

The NextToken value is not valid.

", "refs": { @@ -1897,7 +1931,7 @@ "base": "

Describes the preferences for an instance refresh.

", "refs": { "InstanceRefresh$Preferences": "

The preferences for an instance refresh.

", - "StartInstanceRefreshType$Preferences": "

Sets your preferences for the instance refresh so that it performs as expected when you start it. Includes the instance warmup time, the minimum healthy percentage, and the behaviors that you want Amazon EC2 Auto Scaling to use if instances that are in Standby state or protected from scale in are found. You can also choose to enable additional features, such as the following:

  • Auto rollback

  • Checkpoints

  • CloudWatch alarms

  • Skip matching

" + "StartInstanceRefreshType$Preferences": "

Sets your preferences for the instance refresh so that it performs as expected when you start it. Includes the instance warmup time, the minimum and maximum healthy percentages, and the behaviors that you want Amazon EC2 Auto Scaling to use if instances that are in Standby state or protected from scale in are found. You can also choose to enable additional features, such as the following:

  • Auto rollback

  • Checkpoints

  • CloudWatch alarms

  • Skip matching

" } }, "RefreshStrategy": { @@ -2401,14 +2435,11 @@ "refs": { "Activity$Cause": "

The reason the activity began.

", "InstanceRefresh$StatusReason": "

The explanation for the specific status assigned to this operation.

", - "LifecycleHook$NotificationMetadata": "

Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.

", - "LifecycleHookSpecification$NotificationMetadata": "

Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.

", "MetricDataQuery$Expression": "

The math expression to perform on the returned data, if this object is performing a math expression. This expression can use the Id of the other metrics to refer to those metrics, and can also use the Id of other expressions to use the result of those expressions.

Conditional: Within each MetricDataQuery object, you must specify either Expression or MetricStat, but not both.

", "PredefinedMetricSpecification$ResourceLabel": "

A label that uniquely identifies a specific Application Load Balancer target group from which to determine the average request count served by your Auto Scaling group. You can't specify a resource label unless the target group is attached to the Auto Scaling group.

You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is:

app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff.

Where:

  • app/<load-balancer-name>/<load-balancer-id> is the final portion of the load balancer ARN

  • targetgroup/<target-group-name>/<target-group-id> is the final portion of the target group ARN.

To find the ARN for an Application Load Balancer, use the DescribeLoadBalancers API operation. To find the ARN for the target group, use the DescribeTargetGroups API operation.

", "PredictiveScalingPredefinedLoadMetric$ResourceLabel": "

A label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group. You can't specify a resource label unless the target group is attached to the Auto Scaling group.

You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is:

app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff.

Where:

  • app/<load-balancer-name>/<load-balancer-id> is the final portion of the load balancer ARN

  • targetgroup/<target-group-name>/<target-group-id> is the final portion of the target group ARN.

To find the ARN for an Application Load Balancer, use the DescribeLoadBalancers API operation. To find the ARN for the target group, use the DescribeTargetGroups API operation.

", "PredictiveScalingPredefinedMetricPair$ResourceLabel": "

A label that uniquely identifies a specific Application Load Balancer target group from which to determine the total and average request count served by your Auto Scaling group. You can't specify a resource label unless the target group is attached to the Auto Scaling group.

You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is:

app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff.

Where:

  • app/<load-balancer-name>/<load-balancer-id> is the final portion of the load balancer ARN

  • targetgroup/<target-group-name>/<target-group-id> is the final portion of the target group ARN.

To find the ARN for an Application Load Balancer, use the DescribeLoadBalancers API operation. To find the ARN for the target group, use the DescribeTargetGroups API operation.

", "PredictiveScalingPredefinedScalingMetric$ResourceLabel": "

A label that uniquely identifies a specific Application Load Balancer target group from which to determine the average request count served by your Auto Scaling group. You can't specify a resource label unless the target group is attached to the Auto Scaling group.

You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is:

app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff.

Where:

  • app/<load-balancer-name>/<load-balancer-id> is the final portion of the load balancer ARN

  • targetgroup/<target-group-name>/<target-group-id> is the final portion of the target group ARN.

To find the ARN for an Application Load Balancer, use the DescribeLoadBalancers API operation. To find the ARN for the target group, use the DescribeTargetGroups API operation.

", - "PutLifecycleHookType$NotificationMetadata": "

Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.

", "RollbackDetails$RollbackReason": "

The reason for this instance refresh rollback (for example, whether a manual or automatic rollback was initiated).

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -219,7 +219,7 @@ "input": { "AutoScalingGroupName": "my-asg", "DesiredCapacity": 4, - "DesiredCapacityTypes": "units", + "DesiredCapacityType": "units", "MaxSize": 100, "MinSize": 0, "MixedInstancesPolicy": { @@ -656,6 +656,7 @@ }, "AutoRollback": true, "InstanceWarmup": 200, + "MaxHealthyPercentage": 120, "MinHealthyPercentage": 90, "ScaleInProtectedInstances": "Ignore", "SkipMatching": false, @@ -679,6 +680,7 @@ }, "AutoRollback": true, "InstanceWarmup": 200, + "MaxHealthyPercentage": 120, "MinHealthyPercentage": 90, "ScaleInProtectedInstances": "Ignore", "SkipMatching": false, @@ -1616,6 +1618,7 @@ }, "AutoRollback": true, "InstanceWarmup": 200, + "MaxHealthyPercentage": 120, "MinHealthyPercentage": 90 } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/autoscaling/2011-01-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/autoscaling/2011-01-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,12 +12,27 @@ "output_token": "NextToken", "result_key": "AutoScalingInstances" }, + "DescribeInstanceRefreshes": { + "input_token": "NextToken", + "limit_key": "MaxRecords", + "output_token": "NextToken" + }, "DescribeLaunchConfigurations": { "input_token": "NextToken", "limit_key": "MaxRecords", "output_token": "NextToken", "result_key": "LaunchConfigurations" }, + "DescribeLoadBalancerTargetGroups": { + "input_token": "NextToken", + "limit_key": "MaxRecords", + "output_token": "NextToken" + }, + "DescribeLoadBalancers": { + "input_token": "NextToken", + "limit_key": "MaxRecords", + "output_token": "NextToken" + }, "DescribeNotificationConfigurations": { "input_token": "NextToken", "limit_key": "MaxRecords", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1546 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-06-23", + "endpointPrefix":"b2bi", + "jsonVersion":"1.0", + "protocol":"json", + "serviceAbbreviation":"AWS B2BI", + "serviceFullName":"AWS B2B Data Interchange", + "serviceId":"b2bi", + "signatureVersion":"v4", + "signingName":"b2bi", + "targetPrefix":"B2BI", + "uid":"b2bi-2022-06-23" + }, + "operations":{ + "CreateCapability":{ + "name":"CreateCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateCapabilityRequest"}, + "output":{"shape":"CreateCapabilityResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreatePartnership":{ + "name":"CreatePartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreatePartnershipRequest"}, + "output":{"shape":"CreatePartnershipResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateProfile":{ + "name":"CreateProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateProfileRequest"}, + "output":{"shape":"CreateProfileResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateTransformer":{ + "name":"CreateTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateTransformerRequest"}, + "output":{"shape":"CreateTransformerResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteCapability":{ + "name":"DeleteCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteCapabilityRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeletePartnership":{ + "name":"DeletePartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeletePartnershipRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteProfile":{ + "name":"DeleteProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteProfileRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteTransformer":{ + "name":"DeleteTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTransformerRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "GetCapability":{ + "name":"GetCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetCapabilityRequest"}, + "output":{"shape":"GetCapabilityResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetPartnership":{ + "name":"GetPartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetPartnershipRequest"}, + "output":{"shape":"GetPartnershipResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetProfile":{ + "name":"GetProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetProfileRequest"}, + "output":{"shape":"GetProfileResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetTransformer":{ + "name":"GetTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTransformerRequest"}, + "output":{"shape":"GetTransformerResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetTransformerJob":{ + "name":"GetTransformerJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTransformerJobRequest"}, + "output":{"shape":"GetTransformerJobResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListCapabilities":{ + "name":"ListCapabilities", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCapabilitiesRequest"}, + "output":{"shape":"ListCapabilitiesResponse"} + }, + "ListPartnerships":{ + "name":"ListPartnerships", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListPartnershipsRequest"}, + "output":{"shape":"ListPartnershipsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListProfiles":{ + "name":"ListProfiles", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListProfilesRequest"}, + "output":{"shape":"ListProfilesResponse"} + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListTransformers":{ + "name":"ListTransformers", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTransformersRequest"}, + "output":{"shape":"ListTransformersResponse"} + }, + "StartTransformerJob":{ + "name":"StartTransformerJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartTransformerJobRequest"}, + "output":{"shape":"StartTransformerJobResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "TestMapping":{ + "name":"TestMapping", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TestMappingRequest"}, + "output":{"shape":"TestMappingResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TestParsing":{ + "name":"TestParsing", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TestParsingRequest"}, + "output":{"shape":"TestParsingResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateCapability":{ + "name":"UpdateCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateCapabilityRequest"}, + "output":{"shape":"UpdateCapabilityResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdatePartnership":{ + "name":"UpdatePartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdatePartnershipRequest"}, + "output":{"shape":"UpdatePartnershipResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateProfile":{ + "name":"UpdateProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateProfileRequest"}, + "output":{"shape":"UpdateProfileResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateTransformer":{ + "name":"UpdateTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateTransformerRequest"}, + "output":{"shape":"UpdateTransformerResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "AmazonResourceName":{ + "type":"string", + "max":1011, + "min":1 + }, + "BucketName":{ + "type":"string", + "max":63, + "min":3 + }, + "BusinessName":{ + "type":"string", + "max":254, + "min":1 + }, + "CapabilityConfiguration":{ + "type":"structure", + "members":{ + "edi":{"shape":"EdiConfiguration"} + }, + "union":true + }, + "CapabilityId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "CapabilityList":{ + "type":"list", + "member":{"shape":"CapabilitySummary"} + }, + "CapabilityName":{ + "type":"string", + "max":254, + "min":1 + }, + "CapabilitySummary":{ + "type":"structure", + "required":[ + "capabilityId", + "name", + "type", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "CapabilityType":{ + "type":"string", + "enum":["edi"] + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "CreateCapabilityRequest":{ + "type":"structure", + "required":[ + "name", + "type", + "configuration" + ], + "members":{ + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreateCapabilityResponse":{ + "type":"structure", + "required":[ + "capabilityId", + "capabilityArn", + "name", + "type", + "configuration", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "capabilityArn":{"shape":"ResourceArn"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreatePartnershipRequest":{ + "type":"structure", + "required":[ + "profileId", + "name", + "email" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreatePartnershipResponse":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "partnershipArn", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "partnershipArn":{"shape":"ResourceArn"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreateProfileRequest":{ + "type":"structure", + "required":[ + "name", + "phone", + "businessName", + "logging" + ], + "members":{ + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreateProfileResponse":{ + "type":"structure", + "required":[ + "profileId", + "profileArn", + "name", + "businessName", + "phone", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "profileArn":{"shape":"ResourceArn"}, + "name":{"shape":"ProfileName"}, + "businessName":{"shape":"BusinessName"}, + "phone":{"shape":"Phone"}, + "email":{"shape":"Email"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreateTransformerRequest":{ + "type":"structure", + "required":[ + "name", + "fileFormat", + "mappingTemplate", + "ediType" + ], + "members":{ + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreateTransformerResponse":{ + "type":"structure", + "required":[ + "transformerId", + "transformerArn", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "transformerArn":{"shape":"ResourceArn"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreatedDate":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "DeleteCapabilityRequest":{ + "type":"structure", + "required":["capabilityId"], + "members":{ + "capabilityId":{"shape":"CapabilityId"} + } + }, + "DeletePartnershipRequest":{ + "type":"structure", + "required":["partnershipId"], + "members":{ + "partnershipId":{"shape":"PartnershipId"} + } + }, + "DeleteProfileRequest":{ + "type":"structure", + "required":["profileId"], + "members":{ + "profileId":{"shape":"ProfileId"} + } + }, + "DeleteTransformerRequest":{ + "type":"structure", + "required":["transformerId"], + "members":{ + "transformerId":{"shape":"TransformerId"} + } + }, + "EdiConfiguration":{ + "type":"structure", + "required":[ + "type", + "inputLocation", + "outputLocation", + "transformerId" + ], + "members":{ + "type":{"shape":"EdiType"}, + "inputLocation":{"shape":"S3Location"}, + "outputLocation":{"shape":"S3Location"}, + "transformerId":{"shape":"TransformerId"} + } + }, + "EdiType":{ + "type":"structure", + "members":{ + "x12Details":{"shape":"X12Details"} + }, + "union":true + }, + "Email":{ + "type":"string", + "max":254, + "min":5, + "pattern":"[\\w\\.\\-]+@[\\w\\.\\-]+", + "sensitive":true + }, + "ErrorMessage":{ + "type":"string", + "max":1024, + "min":10 + }, + "FileFormat":{ + "type":"string", + "enum":[ + "XML", + "JSON" + ] + }, + "FileLocation":{ + "type":"string", + "max":1024, + "min":0 + }, + "GetCapabilityRequest":{ + "type":"structure", + "required":["capabilityId"], + "members":{ + "capabilityId":{"shape":"CapabilityId"} + } + }, + "GetCapabilityResponse":{ + "type":"structure", + "required":[ + "capabilityId", + "capabilityArn", + "name", + "type", + "configuration", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "capabilityArn":{"shape":"ResourceArn"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "GetPartnershipRequest":{ + "type":"structure", + "required":["partnershipId"], + "members":{ + "partnershipId":{"shape":"PartnershipId"} + } + }, + "GetPartnershipResponse":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "partnershipArn", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "partnershipArn":{"shape":"ResourceArn"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "GetProfileRequest":{ + "type":"structure", + "required":["profileId"], + "members":{ + "profileId":{"shape":"ProfileId"} + } + }, + "GetProfileResponse":{ + "type":"structure", + "required":[ + "profileId", + "profileArn", + "name", + "phone", + "businessName", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "profileArn":{"shape":"ResourceArn"}, + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "GetTransformerJobRequest":{ + "type":"structure", + "required":[ + "transformerJobId", + "transformerId" + ], + "members":{ + "transformerJobId":{"shape":"TransformerJobId"}, + "transformerId":{"shape":"TransformerId"} + } + }, + "GetTransformerJobResponse":{ + "type":"structure", + "required":["status"], + "members":{ + "status":{"shape":"TransformerJobStatus"}, + "outputFiles":{"shape":"S3LocationList"}, + "message":{"shape":"String"} + } + }, + "GetTransformerRequest":{ + "type":"structure", + "required":["transformerId"], + "members":{ + "transformerId":{"shape":"TransformerId"} + } + }, + "GetTransformerResponse":{ + "type":"structure", + "required":[ + "transformerId", + "transformerArn", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "transformerArn":{"shape":"ResourceArn"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "InstructionsDocuments":{ + "type":"list", + "member":{"shape":"S3Location"}, + "max":5, + "min":0 + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"}, + "retryAfterSeconds":{"shape":"Integer"} + }, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListCapabilitiesRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListCapabilitiesResponse":{ + "type":"structure", + "required":["capabilities"], + "members":{ + "capabilities":{"shape":"CapabilityList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "ListPartnershipsRequest":{ + "type":"structure", + "members":{ + "profileId":{"shape":"ProfileId"}, + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListPartnershipsResponse":{ + "type":"structure", + "required":["partnerships"], + "members":{ + "partnerships":{"shape":"PartnershipList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "ListProfilesRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListProfilesResponse":{ + "type":"structure", + "required":["profiles"], + "members":{ + "profiles":{"shape":"ProfileList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagList"} + } + }, + "ListTransformersRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListTransformersResponse":{ + "type":"structure", + "required":["transformers"], + "members":{ + "transformers":{"shape":"TransformerList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "LogGroupName":{ + "type":"string", + "max":512, + "min":1 + }, + "Logging":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "MappingTemplate":{ + "type":"string", + "max":350000, + "min":0 + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ModifiedDate":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "PageToken":{ + "type":"string", + "max":2048, + "min":1 + }, + "PartnerName":{ + "type":"string", + "max":254, + "min":1 + }, + "PartnershipCapabilities":{ + "type":"list", + "member":{"shape":"CapabilityId"} + }, + "PartnershipId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "PartnershipList":{ + "type":"list", + "member":{"shape":"PartnershipSummary"} + }, + "PartnershipSummary":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "name":{"shape":"PartnerName"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "Phone":{ + "type":"string", + "max":22, + "min":7, + "pattern":"\\+?([0-9 \\t\\-()\\/]{7,})(?:\\s*(?:#|x\\.?|ext\\.?|extension) \\t*(\\d+))?", + "sensitive":true + }, + "ProfileId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "ProfileList":{ + "type":"list", + "member":{"shape":"ProfileSummary"} + }, + "ProfileName":{ + "type":"string", + "max":254, + "min":1 + }, + "ProfileSummary":{ + "type":"structure", + "required":[ + "profileId", + "name", + "businessName", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "name":{"shape":"ProfileName"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "ResourceArn":{ + "type":"string", + "max":255, + "min":1 + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "S3Key":{ + "type":"string", + "max":1024, + "min":0 + }, + "S3Location":{ + "type":"structure", + "members":{ + "bucketName":{"shape":"BucketName"}, + "key":{"shape":"S3Key"} + } + }, + "S3LocationList":{ + "type":"list", + "member":{"shape":"S3Location"} + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType", + "serviceCode", + "quotaCode" + ], + "members":{ + "message":{"shape":"ErrorMessage"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"}, + "serviceCode":{"shape":"String"}, + "quotaCode":{"shape":"String"} + }, + "exception":true + }, + "StartTransformerJobRequest":{ + "type":"structure", + "required":[ + "inputFile", + "outputLocation", + "transformerId" + ], + "members":{ + "inputFile":{"shape":"S3Location"}, + "outputLocation":{"shape":"S3Location"}, + "transformerId":{"shape":"TransformerId"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + } + } + }, + "StartTransformerJobResponse":{ + "type":"structure", + "required":["transformerJobId"], + "members":{ + "transformerJobId":{"shape":"TransformerJobId"} + } + }, + "String":{"type":"string"}, + "Tag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"TagKey"}, + "Value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "Tags" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "Tags":{"shape":"TagList"} + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "TestMappingInputFileContent":{ + "type":"string", + "max":200000, + "min":0 + }, + "TestMappingRequest":{ + "type":"structure", + "required":[ + "inputFileContent", + "mappingTemplate", + "fileFormat" + ], + "members":{ + "inputFileContent":{"shape":"TestMappingInputFileContent"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "fileFormat":{"shape":"FileFormat"} + } + }, + "TestMappingResponse":{ + "type":"structure", + "required":["mappedFileContent"], + "members":{ + "mappedFileContent":{"shape":"String"} + } + }, + "TestParsingRequest":{ + "type":"structure", + "required":[ + "inputFile", + "fileFormat", + "ediType" + ], + "members":{ + "inputFile":{"shape":"S3Location"}, + "fileFormat":{"shape":"FileFormat"}, + "ediType":{"shape":"EdiType"} + } + }, + "TestParsingResponse":{ + "type":"structure", + "required":["parsedFileContent"], + "members":{ + "parsedFileContent":{"shape":"String"} + } + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"}, + "retryAfterSeconds":{"shape":"Integer"} + }, + "exception":true, + "retryable":{"throttling":false} + }, + "TradingPartnerId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "TransformerId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "TransformerJobId":{ + "type":"string", + "max":25, + "min":25, + "pattern":"[a-zA-Z0-9_-]+" + }, + "TransformerJobStatus":{ + "type":"string", + "enum":[ + "running", + "succeeded", + "failed" + ] + }, + "TransformerList":{ + "type":"list", + "member":{"shape":"TransformerSummary"} + }, + "TransformerName":{ + "type":"string", + "max":254, + "min":1 + }, + "TransformerStatus":{ + "type":"string", + "enum":[ + "active", + "inactive" + ] + }, + "TransformerSummary":{ + "type":"structure", + "required":[ + "transformerId", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "TagKeys" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, + "UpdateCapabilityRequest":{ + "type":"structure", + "required":["capabilityId"], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "name":{"shape":"CapabilityName"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"} + } + }, + "UpdateCapabilityResponse":{ + "type":"structure", + "required":[ + "capabilityId", + "capabilityArn", + "name", + "type", + "configuration", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "capabilityArn":{"shape":"ResourceArn"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UpdatePartnershipRequest":{ + "type":"structure", + "required":["partnershipId"], + "members":{ + "partnershipId":{"shape":"PartnershipId"}, + "name":{"shape":"PartnerName"}, + "capabilities":{"shape":"PartnershipCapabilities"} + } + }, + "UpdatePartnershipResponse":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "partnershipArn", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "partnershipArn":{"shape":"ResourceArn"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UpdateProfileRequest":{ + "type":"structure", + "required":["profileId"], + "members":{ + "profileId":{"shape":"ProfileId"}, + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"} + } + }, + "UpdateProfileResponse":{ + "type":"structure", + "required":[ + "profileId", + "profileArn", + "name", + "phone", + "businessName", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "profileArn":{"shape":"ResourceArn"}, + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UpdateTransformerRequest":{ + "type":"structure", + "required":["transformerId"], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"} + } + }, + "UpdateTransformerResponse":{ + "type":"structure", + "required":[ + "transformerId", + "transformerArn", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt", + "modifiedAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "transformerArn":{"shape":"ResourceArn"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["Message"], + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "X12Details":{ + "type":"structure", + "members":{ + "transactionSet":{"shape":"X12TransactionSet"}, + "version":{"shape":"X12Version"} + } + }, + "X12TransactionSet":{ + "type":"string", + "enum":[ + "X12_110", + "X12_180", + "X12_204", + "X12_210", + "X12_214", + "X12_215", + "X12_310", + "X12_315", + "X12_322", + "X12_404", + "X12_410", + "X12_820", + "X12_824", + "X12_830", + "X12_846", + "X12_850", + "X12_852", + "X12_855", + "X12_856", + "X12_860", + "X12_861", + "X12_864", + "X12_940", + "X12_990", + "X12_997" + ] + }, + "X12Version":{ + "type":"string", + "enum":[ + "VERSION_4010", + "VERSION_4030", + "VERSION_5010" + ] + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,857 @@ +{ + "version": "2.0", + "service": "

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

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

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

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

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

", + "CreatePartnership": "

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

", + "CreateProfile": "

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

", + "CreateTransformer": "

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

", + "DeleteCapability": "

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

", + "DeletePartnership": "

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

", + "DeleteProfile": "

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

", + "DeleteTransformer": "

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

", + "GetCapability": "

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

", + "GetPartnership": "

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

", + "GetProfile": "

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

", + "GetTransformer": "

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

", + "GetTransformerJob": "

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

", + "ListCapabilities": "

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

", + "ListPartnerships": "

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

", + "ListProfiles": "

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

", + "ListTagsForResource": "

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

", + "ListTransformers": "

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

", + "StartTransformerJob": "

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

", + "TagResource": "

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

There is no response returned from this call.

", + "TestMapping": "

Maps the input file according to the provided template file.

", + "TestParsing": "

Parses the input EDI (electronic data interchange) file.

", + "UntagResource": "

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

", + "UpdateCapability": "

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

", + "UpdatePartnership": "

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

", + "UpdateProfile": "

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

", + "UpdateTransformer": "

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

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

You do not have sufficient access to perform this action.

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

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

", + "TagResourceRequest$ResourceARN": "

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

", + "UntagResourceRequest$ResourceARN": "

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

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

Specifies the name of the Amazon S3 bucket.

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

Specifies the name for the business associated with this profile.

", + "CreateProfileResponse$businessName": "

Returns the name for the business associated with this profile.

", + "GetProfileResponse$businessName": "

Returns the name for the business associated with this profile.

", + "ProfileSummary$businessName": "

Returns the name for the business associated with this profile.

", + "UpdateProfileRequest$businessName": "

Specifies the name for the business associated with this profile.

", + "UpdateProfileResponse$businessName": "

Returns the name for the business associated with this profile.

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

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

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

Specifies a structure that contains the details for a capability.

", + "CreateCapabilityResponse$configuration": "

Returns a structure that contains the details for a capability.

", + "GetCapabilityResponse$configuration": "

Returns a structure that contains the details for a capability.

", + "UpdateCapabilityRequest$configuration": "

Specifies a structure that contains the details for a capability.

", + "UpdateCapabilityResponse$configuration": "

Returns a structure that contains the details for a capability.

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

Returns a system-assigned unique identifier for the capability.

", + "CreateCapabilityResponse$capabilityId": "

Returns a system-assigned unique identifier for the capability.

", + "DeleteCapabilityRequest$capabilityId": "

Specifies a system-assigned unique identifier for the capability.

", + "GetCapabilityRequest$capabilityId": "

Specifies a system-assigned unique identifier for the capability.

", + "GetCapabilityResponse$capabilityId": "

Returns a system-assigned unique identifier for the capability.

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

Specifies a system-assigned unique identifier for the capability.

", + "UpdateCapabilityResponse$capabilityId": "

Returns a system-assigned unique identifier for the capability.

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

Returns one or more capabilities associated with this partnership.

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

The display name of the capability.

", + "CreateCapabilityRequest$name": "

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

", + "CreateCapabilityResponse$name": "

Returns the name of the capability used to identify it.

", + "GetCapabilityResponse$name": "

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

", + "UpdateCapabilityRequest$name": "

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

", + "UpdateCapabilityResponse$name": "

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

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

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

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

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

", + "CreateCapabilityRequest$type": "

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

", + "CreateCapabilityResponse$type": "

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

", + "GetCapabilityResponse$type": "

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

", + "UpdateCapabilityResponse$type": "

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

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

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

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

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

", + "CreateCapabilityResponse$createdAt": "

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

", + "CreatePartnershipResponse$createdAt": "

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

", + "CreateProfileResponse$createdAt": "

Returns a timestamp representing the time the profile was created.

", + "CreateTransformerResponse$createdAt": "

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

", + "GetCapabilityResponse$createdAt": "

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

", + "GetPartnershipResponse$createdAt": "

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

", + "GetProfileResponse$createdAt": "

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

", + "GetTransformerResponse$createdAt": "

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

", + "PartnershipSummary$createdAt": "

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

", + "ProfileSummary$createdAt": "

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

", + "TransformerSummary$createdAt": "

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

", + "UpdateCapabilityResponse$createdAt": "

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

", + "UpdatePartnershipResponse$createdAt": "

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

", + "UpdateProfileResponse$createdAt": "

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

", + "UpdateTransformerResponse$createdAt": "

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

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

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

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

An EDI (electronic data interchange) configuration object.

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

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

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

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

", + "CreateTransformerResponse$ediType": "

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

", + "EdiConfiguration$type": "

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

", + "GetTransformerResponse$ediType": "

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

", + "TestParsingRequest$ediType": "

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

", + "TransformerSummary$ediType": "

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

", + "UpdateTransformerRequest$ediType": "

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

", + "UpdateTransformerResponse$ediType": "

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

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

Specifies the email address associated with this trading partner.

", + "CreatePartnershipResponse$email": "

Returns the email address associated with this trading partner.

", + "CreateProfileRequest$email": "

Specifies the email address associated with this customer profile.

", + "CreateProfileResponse$email": "

Returns the email address associated with this customer profile.

", + "GetPartnershipResponse$email": "

Returns the email address associated with this trading partner.

", + "GetProfileResponse$email": "

Returns the email address associated with this customer profile.

", + "UpdatePartnershipResponse$email": "

Returns the email address associated with this trading partner.

", + "UpdateProfileRequest$email": "

Specifies the email address associated with this customer profile.

", + "UpdateProfileResponse$email": "

Returns the email address associated with this customer profile.

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

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

", + "CreateTransformerResponse$fileFormat": "

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

", + "GetTransformerResponse$fileFormat": "

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

", + "TestMappingRequest$fileFormat": "

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

", + "TestParsingRequest$fileFormat": "

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

", + "TransformerSummary$fileFormat": "

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

", + "UpdateTransformerRequest$fileFormat": "

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

", + "UpdateTransformerResponse$fileFormat": "

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

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

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

", + "CreateTransformerResponse$sampleDocument": "

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

", + "GetTransformerResponse$sampleDocument": "

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

", + "TransformerSummary$sampleDocument": "

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

", + "UpdateTransformerRequest$sampleDocument": "

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

", + "UpdateTransformerResponse$sampleDocument": "

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

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

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

", + "CreateCapabilityResponse$instructionsDocuments": "

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

", + "GetCapabilityResponse$instructionsDocuments": "

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

", + "UpdateCapabilityRequest$instructionsDocuments": "

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

", + "UpdateCapabilityResponse$instructionsDocuments": "

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

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

The server attempts to retry a failed command.

", + "ThrottlingException$retryAfterSeconds": "

The server attempts to retry a command that was throttled.

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

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

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

Returns the name of the logging group.

", + "GetProfileResponse$logGroupName": "

Returns the name of the logging group.

", + "ProfileSummary$logGroupName": "

Returns the name of the logging group.

", + "UpdateProfileResponse$logGroupName": "

Returns the name of the logging group.

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

Specifies whether or not logging is enabled for this profile.

", + "CreateProfileResponse$logging": "

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

", + "GetProfileResponse$logging": "

Returns whether or not logging is enabled for this profile.

", + "ProfileSummary$logging": "

Specifies whether or not logging is enabled for this profile.

", + "UpdateProfileResponse$logging": "

Specifies whether or not logging is enabled for this profile.

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

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

", + "CreateTransformerResponse$mappingTemplate": "

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

", + "GetTransformerResponse$mappingTemplate": "

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

", + "TestMappingRequest$mappingTemplate": "

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

", + "TransformerSummary$mappingTemplate": "

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

", + "UpdateTransformerRequest$mappingTemplate": "

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

", + "UpdateTransformerResponse$mappingTemplate": "

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

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

Specifies the maximum number of capabilities to return.

", + "ListPartnershipsRequest$maxResults": "

Specifies the maximum number of capabilities to return.

", + "ListProfilesRequest$maxResults": "

Specifies the maximum number of profiles to return.

", + "ListTransformersRequest$maxResults": "

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

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

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

", + "GetCapabilityResponse$modifiedAt": "

Returns a timestamp for last time the capability was modified.

", + "GetPartnershipResponse$modifiedAt": "

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

", + "GetProfileResponse$modifiedAt": "

Returns a timestamp for last time the profile was modified.

", + "GetTransformerResponse$modifiedAt": "

Returns a timestamp for last time the transformer was modified.

", + "PartnershipSummary$modifiedAt": "

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

", + "ProfileSummary$modifiedAt": "

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

", + "TransformerSummary$modifiedAt": "

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

", + "UpdateCapabilityResponse$modifiedAt": "

Returns a timestamp for last time the capability was modified.

", + "UpdatePartnershipResponse$modifiedAt": "

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

", + "UpdateProfileResponse$modifiedAt": "

Returns a timestamp for last time the profile was modified.

", + "UpdateTransformerResponse$modifiedAt": "

Returns a timestamp for last time the transformer was modified.

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

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

", + "ListCapabilitiesResponse$nextToken": "

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

", + "ListPartnershipsRequest$nextToken": "

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

", + "ListPartnershipsResponse$nextToken": "

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

", + "ListProfilesRequest$nextToken": "

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

", + "ListProfilesResponse$nextToken": "

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

", + "ListTransformersRequest$nextToken": "

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

", + "ListTransformersResponse$nextToken": "

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

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

Specifies a descriptive name for the partnership.

", + "CreatePartnershipResponse$name": "

Returns a descriptive name for the partnership.

", + "GetPartnershipResponse$name": "

Returns the display name of the partnership

", + "PartnershipSummary$name": "

Returns the name of the partnership.

", + "UpdatePartnershipRequest$name": "

The name of the partnership, used to identify it.

", + "UpdatePartnershipResponse$name": "

The name of the partnership, used to identify it.

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

Specifies a list of the capabilities associated with this partnership.

", + "CreatePartnershipResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

", + "GetPartnershipResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

", + "PartnershipSummary$capabilities": "

Returns one or more capabilities associated with this partnership.

", + "UpdatePartnershipRequest$capabilities": "

List of the capabilities associated with this partnership.

", + "UpdatePartnershipResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

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

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

", + "DeletePartnershipRequest$partnershipId": "

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

", + "GetPartnershipRequest$partnershipId": "

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

", + "GetPartnershipResponse$partnershipId": "

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

", + "PartnershipSummary$partnershipId": "

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

", + "UpdatePartnershipRequest$partnershipId": "

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

", + "UpdatePartnershipResponse$partnershipId": "

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

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

Specifies a list of your partnerships.

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

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

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

Specifies the phone number associated with the partnership.

", + "CreatePartnershipResponse$phone": "

Returns the phone number associated with the partnership.

", + "CreateProfileRequest$phone": "

Specifies the phone number associated with the profile.

", + "CreateProfileResponse$phone": "

Returns the phone number associated with the profile.

", + "GetPartnershipResponse$phone": "

Returns the phone number associated with the partnership.

", + "GetProfileResponse$phone": "

Returns the phone number associated with the profile.

", + "UpdatePartnershipResponse$phone": "

Returns the phone number associated with the partnership.

", + "UpdateProfileRequest$phone": "

Specifies the phone number associated with the profile.

", + "UpdateProfileResponse$phone": "

Returns the phone number associated with the profile.

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

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

", + "CreatePartnershipResponse$profileId": "

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

", + "CreateProfileResponse$profileId": "

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

", + "DeleteProfileRequest$profileId": "

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

", + "GetPartnershipResponse$profileId": "

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

", + "GetProfileRequest$profileId": "

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

", + "GetProfileResponse$profileId": "

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

", + "ListPartnershipsRequest$profileId": "

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

", + "PartnershipSummary$profileId": "

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

", + "ProfileSummary$profileId": "

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

", + "UpdatePartnershipResponse$profileId": "

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

", + "UpdateProfileRequest$profileId": "

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

", + "UpdateProfileResponse$profileId": "

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

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

Returns an array of ProfileSummary objects.

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

Specifies the name of the profile.

", + "CreateProfileResponse$name": "

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

", + "GetProfileResponse$name": "

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

", + "ProfileSummary$name": "

Returns the display name for profile.

", + "UpdateProfileRequest$name": "

The name of the profile, used to identify it.

", + "UpdateProfileResponse$name": "

Returns the name of the profile.

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

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

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

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

", + "CreatePartnershipResponse$partnershipArn": "

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

", + "CreateProfileResponse$profileArn": "

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

", + "CreateTransformerResponse$transformerArn": "

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

", + "GetCapabilityResponse$capabilityArn": "

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

", + "GetPartnershipResponse$partnershipArn": "

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

", + "GetProfileResponse$profileArn": "

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

", + "GetTransformerResponse$transformerArn": "

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

", + "UpdateCapabilityResponse$capabilityArn": "

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

", + "UpdatePartnershipResponse$partnershipArn": "

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

", + "UpdateProfileResponse$profileArn": "

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

", + "UpdateTransformerResponse$transformerArn": "

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

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

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

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

Specifies the Amazon S3 key for the file location.

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

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

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

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

", + "EdiConfiguration$outputLocation": "

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

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

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

", + "StartTransformerJobRequest$outputLocation": "

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

", + "TestParsingRequest$inputFile": "

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

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

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

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

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

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

Reserved for future use.

", + "CreatePartnershipRequest$clientToken": "

Reserved for future use.

", + "CreateProfileRequest$clientToken": "

Reserved for future use.

", + "CreateTransformerRequest$clientToken": "

Reserved for future use.

", + "GetTransformerJobResponse$message": "

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

", + "ServiceQuotaExceededException$resourceId": "

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

", + "ServiceQuotaExceededException$resourceType": "

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

", + "ServiceQuotaExceededException$serviceCode": "

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

", + "ServiceQuotaExceededException$quotaCode": "

The quota that was exceeded, which caused the exception.

", + "StartTransformerJobRequest$clientToken": "

Reserved for future use.

", + "TestMappingResponse$mappedFileContent": "

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

", + "TestParsingResponse$parsedFileContent": "

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

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

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

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

Specifies the name assigned to the tag that you create.

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

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

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

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

", + "CreatePartnershipRequest$tags": "

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

", + "CreateProfileRequest$tags": "

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

", + "CreateTransformerRequest$tags": "

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

", + "ListTagsForResourceResponse$Tags": "

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

", + "TagResourceRequest$Tags": "

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

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

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

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

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

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

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

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

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

", + "GetPartnershipResponse$tradingPartnerId": "

Returns the unique identifier for the partner for this partnership.

", + "PartnershipSummary$tradingPartnerId": "

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

", + "UpdatePartnershipResponse$tradingPartnerId": "

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

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

Returns the system-assigned unique identifier for the transformer.

", + "DeleteTransformerRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "EdiConfiguration$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "GetTransformerJobRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "GetTransformerRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "GetTransformerResponse$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "StartTransformerJobRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "TransformerSummary$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "UpdateTransformerRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "UpdateTransformerResponse$transformerId": "

Returns the system-assigned unique identifier for the transformer.

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

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

", + "StartTransformerJobResponse$transformerJobId": "

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

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

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

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

Returns an array of one or more transformer objects.

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

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

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

", + "CreateTransformerResponse$name": "

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

", + "GetTransformerResponse$name": "

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

", + "TransformerSummary$name": "

Returns the descriptive name for the transformer.

", + "UpdateTransformerRequest$name": "

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

", + "UpdateTransformerResponse$name": "

Returns the name of the transformer.

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

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

", + "GetTransformerResponse$status": "

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

", + "TransformerSummary$status": "

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

", + "UpdateTransformerRequest$status": "

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

", + "UpdateTransformerResponse$status": "

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

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

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

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

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

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

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

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

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

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

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

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

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

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,714 @@ +{ + "version": "1.0", + "examples": { + "CreateCapability": [ + { + "input": { + "name": "b2biexample", + "type": "edi", + "clientToken": "foo", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ], + "tags": [ + { + "Key": "capabilityKey1", + "Value": "capabilityValue1" + } + ] + }, + "output": { + "name": "b2biexample", + "type": "edi", + "capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-963a8121e4fc4e348", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "createdAt": "2023-11-01T21:51:05.504Z", + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ] + }, + "id": "example-1", + "title": "Sample CreateCapability call" + } + ], + "CreatePartnership": [ + { + "input": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "clientToken": "foo", + "email": "john@example.com", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tags": [ + { + "Key": "sampleKey1", + "Value": "sampleValue1" + } + ] + }, + "output": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "partnershipArn": "arn:aws:b2bi:us-west-2:123456789012:partnership/ps-60fbc37c87f04fce9", + "partnershipId": "ps-219fa02f5b4242af8", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + }, + "id": "example-1", + "title": "Sample CreatePartnership call" + } + ], + "CreateProfile": [ + { + "input": { + "name": "Shipping Profile", + "businessName": "John's Shipping", + "clientToken": "foo", + "email": "john@example.com", + "logging": "ENABLED", + "phone": "5555555555", + "tags": [ + { + "Key": "sampleKey", + "Value": "sampleValue" + } + ] + }, + "output": { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "phone": "5555555555", + "profileArn": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample CreateProfile call" + } + ], + "CreateTransformer": [ + { + "input": { + "name": "transformJSON", + "clientToken": "foo", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "{}", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "tags": [ + { + "Key": "sampleKey", + "Value": "sampleValue" + } + ] + }, + "output": { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerArn": "arn:aws:b2bi:us-west-2:123456789012:transformer/tr-974c129999f84d8c9", + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample CreateTransformer call" + } + ], + "DeleteCapability": [ + { + "input": { + "capabilityId": "ca-963a8121e4fc4e348" + }, + "id": "example-1", + "title": "Sample DeleteCapabilty call" + } + ], + "DeletePartnership": [ + { + "input": { + "partnershipId": "ps-219fa02f5b4242af8" + }, + "id": "example-1", + "title": "Sample DeletePartnership call" + } + ], + "DeleteProfile": [ + { + "input": { + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample DeleteProfile call" + } + ], + "DeleteTransformer": [ + { + "input": { + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample DeleteTransformer call" + } + ], + "GetCapability": [ + { + "input": { + "capabilityId": "ca-963a8121e4fc4e348" + }, + "output": { + "name": "b2biexample", + "type": "edi", + "capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-963a8121e4fc4e348", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "createdAt": "2023-11-01T21:51:05.504Z", + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ], + "modifiedAt": "2023-11-02T21:51:05.504Z" + }, + "id": "example-1", + "title": "Sample GetCapabilty call" + } + ], + "GetPartnership": [ + { + "input": { + "partnershipId": "ps-219fa02f5b4242af8" + }, + "output": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "partnershipArn": "arn:aws:b2bi:us-west-2:123456789012:partnership/ps-219fa02f5b4242af8", + "partnershipId": "ps-219fa02f5b4242af8", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + }, + "id": "example-1", + "title": "Sample GetPartnership call" + } + ], + "GetProfile": [ + { + "input": { + "profileId": "p-60fbc37c87f04fce9" + }, + "output": { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "phone": "5555555555", + "profileArn": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample GetProfile call" + } + ], + "GetTransformer": [ + { + "input": { + "transformerId": "tr-974c129999f84d8c9" + }, + "output": { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerArn": "arn:aws:b2bi:us-west-2:123456789012:transformer/tr-974c129999f84d8c9", + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample GetTransformer call" + } + ], + "GetTransformerJob": [ + { + "input": { + "transformerId": "tr-974c129999f84d8c9", + "transformerJobId": "tj-vpYxfV7yQOqjMSYllEslLw" + }, + "output": { + "message": "Transformed, writing output", + "outputFiles": [ + { + "key": "output/sample-214.edi.2023-11-01T10:44:03.353Z.json", + "bucketName": "gt-edi-test" + } + ], + "status": "succeeded" + }, + "id": "example-1", + "title": "Sample GetTransformerJob call" + } + ], + "ListCapabilities": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo" + }, + "output": { + "capabilities": [ + { + "name": "b2biexample", + "type": "edi", + "capabilityId": "ca-963a8121e4fc4e348", + "createdAt": "2023-11-01T21:51:05.504Z", + "modifiedAt": "2023-11-01T21:51:05.504Z" + } + ], + "nextToken": "foo" + }, + "id": "example-1", + "title": "Sample ListCapabilities call" + } + ], + "ListPartnerships": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo", + "profileId": "p-60fbc37c87f04fce9" + }, + "output": { + "nextToken": "string", + "partnerships": [ + { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "partnershipId": "ps-219fa02f5b4242af8", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + } + ] + }, + "id": "example-1", + "title": "Sample ListPartnerships call" + } + ], + "ListProfiles": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo" + }, + "output": { + "nextToken": "foo", + "profiles": [ + { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "profileId": "p-60fbc37c87f04fce9" + } + ] + }, + "id": "example-1", + "title": "Sample ListProfiles call" + } + ], + "ListTagsForResource": [ + { + "input": { + "ResourceARN": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9" + }, + "output": { + "Tags": [ + { + "Key": "sampleKey", + "Value": "SampleValue" + } + ] + }, + "id": "example-1", + "title": "Sample ListTagsForResources call" + } + ], + "ListTransformers": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo" + }, + "output": { + "nextToken": "foo", + "transformers": [ + { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerId": "tr-974c129999f84d8c9" + } + ] + }, + "id": "example-1", + "title": "Sample ListTransformers call" + } + ], + "StartTransformerJob": [ + { + "input": { + "clientToken": "foo", + "inputFile": { + "key": "input/inputFile.txt", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-974c129999f84d8c9" + }, + "output": { + "transformerJobId": "tj-vpYxfV7yQOqjMSYllEslLw" + }, + "id": "example-1", + "title": "Sample StartTransformerJob call" + } + ], + "TagResource": [ + { + "input": { + "ResourceARN": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "Tags": [ + { + "Key": "sampleKey", + "Value": "SampleValue" + } + ] + }, + "id": "example-1", + "title": "Sample TagResource call" + } + ], + "TestMapping": [ + { + "input": { + "fileFormat": "JSON", + "inputFileContent": "Sample file content", + "mappingTemplate": "$" + }, + "output": { + "mappedFileContent": "Sample file content" + }, + "id": "example-1", + "title": "Sample TestMapping call" + } + ], + "TestParsing": [ + { + "input": { + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "inputFile": { + "key": "sampleFile.txt", + "bucketName": "test-bucket" + } + }, + "output": { + "parsedFileContent": "Sample parsed file content" + }, + "id": "example-1", + "title": "Sample TestParsing call" + } + ], + "UntagResource": [ + { + "input": { + "ResourceARN": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "TagKeys": [ + "sampleKey" + ] + }, + "id": "example-1", + "title": "Sample UntagResource call" + } + ], + "UpdateCapability": [ + { + "input": { + "name": "b2biexample", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ] + }, + "output": { + "name": "b2biexample", + "type": "edi", + "capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-963a8121e4fc4e348", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "createdAt": "2023-11-01T21:51:05.504Z", + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ], + "modifiedAt": "2023-11-01T21:51:05.504Z" + }, + "id": "example-1", + "title": "Sample UpdateCapability call" + } + ], + "UpdatePartnership": [ + { + "input": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "partnershipId": "ps-219fa02f5b4242af8" + }, + "output": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "partnershipArn": "arn:aws:b2bi:us-west-2:123456789012:partnership/ps-60fbc37c87f04fce9", + "partnershipId": "ps-219fa02f5b4242af8", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + }, + "id": "example-1", + "title": "Sample UpdatePartnership call" + } + ], + "UpdateProfile": [ + { + "input": { + "name": "Shipping Profile", + "businessName": "John's Shipping", + "email": "john@example.com", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9" + }, + "output": { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "modifiedAt": "2023-11-02T21:51:05.504Z", + "phone": "5555555555", + "profileArn": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample UpdateProfile call" + } + ], + "UpdateTransformer": [ + { + "input": { + "name": "transformJSON", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "{}", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerId": "tr-974c129999f84d8c9" + }, + "output": { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerArn": "arn:aws:b2bi:us-west-2:607686414464:transformer/tr-974c129999f84d8c9", + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample UpdateTransformer call" + } + ] + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/b2bi/2022-06-23/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/b2bi/2022-06-23/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,28 @@ +{ + "pagination": { + "ListCapabilities": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "capabilities" + }, + "ListPartnerships": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "partnerships" + }, + "ListProfiles": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "profiles" + }, + "ListTransformers": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "transformers" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -148,6 +148,44 @@ ], "idempotent":true }, + "CreateRestoreTestingPlan":{ + "name":"CreateRestoreTestingPlan", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans", + "responseCode":201 + }, + "input":{"shape":"CreateRestoreTestingPlanInput"}, + "output":{"shape":"CreateRestoreTestingPlanOutput"}, + "errors":[ + {"shape":"AlreadyExistsException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"LimitExceededException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, + "CreateRestoreTestingSelection":{ + "name":"CreateRestoreTestingSelection", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections", + "responseCode":201 + }, + "input":{"shape":"CreateRestoreTestingSelectionInput"}, + "output":{"shape":"CreateRestoreTestingSelectionOutput"}, + "errors":[ + {"shape":"AlreadyExistsException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"LimitExceededException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, "DeleteBackupPlan":{ "name":"DeleteBackupPlan", "http":{ @@ -287,6 +325,34 @@ ], "idempotent":true }, + "DeleteRestoreTestingPlan":{ + "name":"DeleteRestoreTestingPlan", + "http":{ + "method":"DELETE", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}", + "responseCode":204 + }, + "input":{"shape":"DeleteRestoreTestingPlanInput"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, + "DeleteRestoreTestingSelection":{ + "name":"DeleteRestoreTestingSelection", + "http":{ + "method":"DELETE", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + "responseCode":204 + }, + "input":{"shape":"DeleteRestoreTestingSelectionInput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, "DescribeBackupJob":{ "name":"DescribeBackupJob", "http":{ @@ -628,6 +694,65 @@ ], "idempotent":true }, + "GetRestoreJobMetadata":{ + "name":"GetRestoreJobMetadata", + "http":{ + "method":"GET", + "requestUri":"/restore-jobs/{restoreJobId}/metadata" + }, + "input":{"shape":"GetRestoreJobMetadataInput"}, + "output":{"shape":"GetRestoreJobMetadataOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "GetRestoreTestingInferredMetadata":{ + "name":"GetRestoreTestingInferredMetadata", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/inferred-metadata", + "responseCode":200 + }, + "input":{"shape":"GetRestoreTestingInferredMetadataInput"}, + "output":{"shape":"GetRestoreTestingInferredMetadataOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "GetRestoreTestingPlan":{ + "name":"GetRestoreTestingPlan", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}", + "responseCode":200 + }, + "input":{"shape":"GetRestoreTestingPlanInput"}, + "output":{"shape":"GetRestoreTestingPlanOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "GetRestoreTestingSelection":{ + "name":"GetRestoreTestingSelection", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + "responseCode":200 + }, + "input":{"shape":"GetRestoreTestingSelectionInput"}, + "output":{"shape":"GetRestoreTestingSelectionOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "GetSupportedResourceTypes":{ "name":"GetSupportedResourceTypes", "http":{ @@ -639,6 +764,19 @@ {"shape":"ServiceUnavailableException"} ] }, + "ListBackupJobSummaries":{ + "name":"ListBackupJobSummaries", + "http":{ + "method":"GET", + "requestUri":"/audit/backup-job-summaries" + }, + "input":{"shape":"ListBackupJobSummariesInput"}, + "output":{"shape":"ListBackupJobSummariesOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "ListBackupJobs":{ "name":"ListBackupJobs", "http":{ @@ -732,6 +870,19 @@ ], "idempotent":true }, + "ListCopyJobSummaries":{ + "name":"ListCopyJobSummaries", + "http":{ + "method":"GET", + "requestUri":"/audit/copy-job-summaries" + }, + "input":{"shape":"ListCopyJobSummariesInput"}, + "output":{"shape":"ListCopyJobSummariesOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "ListCopyJobs":{ "name":"ListCopyJobs", "http":{ @@ -874,6 +1025,19 @@ {"shape":"ServiceUnavailableException"} ] }, + "ListRestoreJobSummaries":{ + "name":"ListRestoreJobSummaries", + "http":{ + "method":"GET", + "requestUri":"/audit/restore-job-summaries" + }, + "input":{"shape":"ListRestoreJobSummariesInput"}, + "output":{"shape":"ListRestoreJobSummariesOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "ListRestoreJobs":{ "name":"ListRestoreJobs", "http":{ @@ -890,6 +1054,50 @@ ], "idempotent":true }, + "ListRestoreJobsByProtectedResource":{ + "name":"ListRestoreJobsByProtectedResource", + "http":{ + "method":"GET", + "requestUri":"/resources/{resourceArn}/restore-jobs/" + }, + "input":{"shape":"ListRestoreJobsByProtectedResourceInput"}, + "output":{"shape":"ListRestoreJobsByProtectedResourceOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "ListRestoreTestingPlans":{ + "name":"ListRestoreTestingPlans", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans", + "responseCode":200 + }, + "input":{"shape":"ListRestoreTestingPlansInput"}, + "output":{"shape":"ListRestoreTestingPlansOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "ListRestoreTestingSelections":{ + "name":"ListRestoreTestingSelections", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections", + "responseCode":200 + }, + "input":{"shape":"ListRestoreTestingSelectionsInput"}, + "output":{"shape":"ListRestoreTestingSelectionsOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "ListTags":{ "name":"ListTags", "http":{ @@ -952,6 +1160,23 @@ ], "idempotent":true }, + "PutRestoreValidationResult":{ + "name":"PutRestoreValidationResult", + "http":{ + "method":"PUT", + "requestUri":"/restore-jobs/{restoreJobId}/validations", + "responseCode":204 + }, + "input":{"shape":"PutRestoreValidationResultInput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidRequestException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, "StartBackupJob":{ "name":"StartBackupJob", "http":{ @@ -1162,6 +1387,42 @@ {"shape":"ConflictException"} ], "idempotent":true + }, + "UpdateRestoreTestingPlan":{ + "name":"UpdateRestoreTestingPlan", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}", + "responseCode":200 + }, + "input":{"shape":"UpdateRestoreTestingPlanInput"}, + "output":{"shape":"UpdateRestoreTestingPlanOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, + "UpdateRestoreTestingSelection":{ + "name":"UpdateRestoreTestingSelection", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + "responseCode":200 + }, + "input":{"shape":"UpdateRestoreTestingSelectionInput"}, + "output":{"shape":"UpdateRestoreTestingSelectionOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true } }, "shapes":{ @@ -1181,6 +1442,14 @@ "type":"list", "member":{"shape":"AdvancedBackupSetting"} }, + "AggregationPeriod":{ + "type":"string", + "enum":[ + "ONE_DAY", + "SEVEN_DAYS", + "FOURTEEN_DAYS" + ] + }, "AlreadyExistsException":{ "type":"structure", "members":{ @@ -1218,7 +1487,9 @@ "BackupType":{"shape":"string"}, "ParentJobId":{"shape":"string"}, "IsParent":{"shape":"boolean"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "InitiationDate":{"shape":"timestamp"}, + "MessageCategory":{"shape":"string"} } }, "BackupJobChildJobsInState":{ @@ -1240,6 +1511,39 @@ "PARTIAL" ] }, + "BackupJobStatus":{ + "type":"string", + "enum":[ + "CREATED", + "PENDING", + "RUNNING", + "ABORTING", + "ABORTED", + "COMPLETED", + "FAILED", + "EXPIRED", + "PARTIAL", + "AGGREGATE_ALL", + "ANY" + ] + }, + "BackupJobSummary":{ + "type":"structure", + "members":{ + "Region":{"shape":"Region"}, + "AccountId":{"shape":"AccountId"}, + "State":{"shape":"BackupJobStatus"}, + "ResourceType":{"shape":"ResourceType"}, + "MessageCategory":{"shape":"MessageCategory"}, + "Count":{"shape":"integer"}, + "StartTime":{"shape":"timestamp"}, + "EndTime":{"shape":"timestamp"} + } + }, + "BackupJobSummaryList":{ + "type":"list", + "member":{"shape":"BackupJobSummary"} + }, "BackupJobsList":{ "type":"list", "member":{"shape":"BackupJob"} @@ -1596,7 +1900,8 @@ "CompositeMemberIdentifier":{"shape":"string"}, "NumberOfChildJobs":{"shape":"Long"}, "ChildJobsInState":{"shape":"CopyJobChildJobsInState"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "MessageCategory":{"shape":"string"} } }, "CopyJobChildJobsInState":{ @@ -1614,6 +1919,39 @@ "PARTIAL" ] }, + "CopyJobStatus":{ + "type":"string", + "enum":[ + "CREATED", + "RUNNING", + "ABORTING", + "ABORTED", + "COMPLETING", + "COMPLETED", + "FAILING", + "FAILED", + "PARTIAL", + "AGGREGATE_ALL", + "ANY" + ] + }, + "CopyJobSummary":{ + "type":"structure", + "members":{ + "Region":{"shape":"Region"}, + "AccountId":{"shape":"AccountId"}, + "State":{"shape":"CopyJobStatus"}, + "ResourceType":{"shape":"ResourceType"}, + "MessageCategory":{"shape":"MessageCategory"}, + "Count":{"shape":"integer"}, + "StartTime":{"shape":"timestamp"}, + "EndTime":{"shape":"timestamp"} + } + }, + "CopyJobSummaryList":{ + "type":"list", + "member":{"shape":"CopyJobSummary"} + }, "CopyJobsList":{ "type":"list", "member":{"shape":"CopyJob"} @@ -1788,6 +2126,59 @@ "CreationTime":{"shape":"timestamp"} } }, + "CreateRestoreTestingPlanInput":{ + "type":"structure", + "required":["RestoreTestingPlan"], + "members":{ + "CreatorRequestId":{"shape":"String"}, + "RestoreTestingPlan":{"shape":"RestoreTestingPlanForCreate"}, + "Tags":{"shape":"SensitiveStringMap"} + } + }, + "CreateRestoreTestingPlanOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"} + } + }, + "CreateRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelection" + ], + "members":{ + "CreatorRequestId":{"shape":"String"}, + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelection":{"shape":"RestoreTestingSelectionForCreate"} + } + }, + "CreateRestoreTestingSelectionOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"} + } + }, "CronExpression":{"type":"string"}, "DateRange":{ "type":"structure", @@ -1924,6 +2315,36 @@ } } }, + "DeleteRestoreTestingPlanInput":{ + "type":"structure", + "required":["RestoreTestingPlanName"], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "DeleteRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelectionName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingSelectionName" + } + } + }, "DependencyFailureException":{ "type":"structure", "members":{ @@ -1973,7 +2394,9 @@ "IsParent":{"shape":"boolean"}, "NumberOfChildJobs":{"shape":"Long"}, "ChildJobsInState":{"shape":"BackupJobChildJobsInState"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "InitiationDate":{"shape":"timestamp"}, + "MessageCategory":{"shape":"string"} } }, "DescribeBackupVaultInput":{ @@ -2078,7 +2501,12 @@ "ResourceArn":{"shape":"ARN"}, "ResourceType":{"shape":"ResourceType"}, "LastBackupTime":{"shape":"timestamp"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "LastBackupVaultArn":{"shape":"ARN"}, + "LastRecoveryPointArn":{"shape":"ARN"}, + "LatestRestoreExecutionTimeMinutes":{"shape":"Long"}, + "LatestRestoreJobCreationDate":{"shape":"timestamp"}, + "LatestRestoreRecoveryPointCreationDate":{"shape":"timestamp"} } }, "DescribeRecoveryPointInput":{ @@ -2130,7 +2558,8 @@ "ParentRecoveryPointArn":{"shape":"ARN"}, "CompositeMemberIdentifier":{"shape":"string"}, "IsParent":{"shape":"boolean"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "VaultType":{"shape":"VaultType"} } }, "DescribeRegionSettingsInput":{ @@ -2205,7 +2634,13 @@ "IamRoleArn":{"shape":"IAMRoleArn"}, "ExpectedCompletionTimeMinutes":{"shape":"Long"}, "CreatedResourceArn":{"shape":"ARN"}, - "ResourceType":{"shape":"ResourceType"} + "ResourceType":{"shape":"ResourceType"}, + "RecoveryPointCreationDate":{"shape":"timestamp"}, + "CreatedBy":{"shape":"RestoreJobCreator"}, + "ValidationStatus":{"shape":"RestoreValidationStatus"}, + "ValidationStatusMessage":{"shape":"string"}, + "DeletionStatus":{"shape":"RestoreDeletionStatus"}, + "DeletionStatusMessage":{"shape":"string"} } }, "DisassociateRecoveryPointFromParentInput":{ @@ -2490,7 +2925,101 @@ "members":{ "BackupVaultArn":{"shape":"ARN"}, "RecoveryPointArn":{"shape":"ARN"}, - "RestoreMetadata":{"shape":"Metadata"} + "RestoreMetadata":{"shape":"Metadata"}, + "ResourceType":{"shape":"ResourceType"} + } + }, + "GetRestoreJobMetadataInput":{ + "type":"structure", + "required":["RestoreJobId"], + "members":{ + "RestoreJobId":{ + "shape":"RestoreJobId", + "location":"uri", + "locationName":"restoreJobId" + } + } + }, + "GetRestoreJobMetadataOutput":{ + "type":"structure", + "members":{ + "RestoreJobId":{"shape":"RestoreJobId"}, + "Metadata":{"shape":"Metadata"} + } + }, + "GetRestoreTestingInferredMetadataInput":{ + "type":"structure", + "required":[ + "BackupVaultName", + "RecoveryPointArn" + ], + "members":{ + "BackupVaultAccountId":{ + "shape":"String", + "location":"querystring", + "locationName":"BackupVaultAccountId" + }, + "BackupVaultName":{ + "shape":"String", + "location":"querystring", + "locationName":"BackupVaultName" + }, + "RecoveryPointArn":{ + "shape":"String", + "location":"querystring", + "locationName":"RecoveryPointArn" + } + } + }, + "GetRestoreTestingInferredMetadataOutput":{ + "type":"structure", + "required":["InferredMetadata"], + "members":{ + "InferredMetadata":{"shape":"stringMap"} + } + }, + "GetRestoreTestingPlanInput":{ + "type":"structure", + "required":["RestoreTestingPlanName"], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "GetRestoreTestingPlanOutput":{ + "type":"structure", + "required":["RestoreTestingPlan"], + "members":{ + "RestoreTestingPlan":{"shape":"RestoreTestingPlanForGet"} + } + }, + "GetRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelectionName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingSelectionName" + } + } + }, + "GetRestoreTestingSelectionOutput":{ + "type":"structure", + "required":["RestoreTestingSelection"], + "members":{ + "RestoreTestingSelection":{"shape":"RestoreTestingSelectionForGet"} } }, "GetSupportedResourceTypesOutput":{ @@ -2539,6 +3068,21 @@ "exception":true }, "IsEnabled":{"type":"boolean"}, + "KeyValue":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"String"}, + "Value":{"shape":"String"} + } + }, + "KeyValueList":{ + "type":"list", + "member":{"shape":"KeyValue"} + }, "LegalHold":{ "type":"structure", "members":{ @@ -2568,7 +3112,8 @@ "type":"structure", "members":{ "MoveToColdStorageAfterDays":{"shape":"Long"}, - "DeleteAfterDays":{"shape":"Long"} + "DeleteAfterDays":{"shape":"Long"}, + "OptInToArchiveForSupportedResources":{"shape":"Boolean"} } }, "LimitExceededException":{ @@ -2581,6 +3126,54 @@ }, "exception":true }, + "ListBackupJobSummariesInput":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"AccountId", + "location":"querystring", + "locationName":"AccountId" + }, + "State":{ + "shape":"BackupJobStatus", + "location":"querystring", + "locationName":"State" + }, + "ResourceType":{ + "shape":"ResourceType", + "location":"querystring", + "locationName":"ResourceType" + }, + "MessageCategory":{ + "shape":"MessageCategory", + "location":"querystring", + "locationName":"MessageCategory" + }, + "AggregationPeriod":{ + "shape":"AggregationPeriod", + "location":"querystring", + "locationName":"AggregationPeriod" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"string", + "location":"querystring", + "locationName":"NextToken" + } + } + }, + "ListBackupJobSummariesOutput":{ + "type":"structure", + "members":{ + "BackupJobSummaries":{"shape":"BackupJobSummaryList"}, + "AggregationPeriod":{"shape":"string"}, + "NextToken":{"shape":"string"} + } + }, "ListBackupJobsInput":{ "type":"structure", "members":{ @@ -2643,6 +3236,11 @@ "shape":"string", "location":"querystring", "locationName":"parentJobId" + }, + "ByMessageCategory":{ + "shape":"string", + "location":"querystring", + "locationName":"messageCategory" } } }, @@ -2790,6 +3388,54 @@ "NextToken":{"shape":"string"} } }, + "ListCopyJobSummariesInput":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"AccountId", + "location":"querystring", + "locationName":"AccountId" + }, + "State":{ + "shape":"CopyJobStatus", + "location":"querystring", + "locationName":"State" + }, + "ResourceType":{ + "shape":"ResourceType", + "location":"querystring", + "locationName":"ResourceType" + }, + "MessageCategory":{ + "shape":"MessageCategory", + "location":"querystring", + "locationName":"MessageCategory" + }, + "AggregationPeriod":{ + "shape":"AggregationPeriod", + "location":"querystring", + "locationName":"AggregationPeriod" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"string", + "location":"querystring", + "locationName":"NextToken" + } + } + }, + "ListCopyJobSummariesOutput":{ + "type":"structure", + "members":{ + "CopyJobSummaries":{"shape":"CopyJobSummaryList"}, + "AggregationPeriod":{"shape":"string"}, + "NextToken":{"shape":"string"} + } + }, "ListCopyJobsInput":{ "type":"structure", "members":{ @@ -2852,6 +3498,11 @@ "shape":"string", "location":"querystring", "locationName":"parentJobId" + }, + "ByMessageCategory":{ + "shape":"string", + "location":"querystring", + "locationName":"messageCategory" } } }, @@ -3148,6 +3799,92 @@ "NextToken":{"shape":"string"} } }, + "ListRestoreJobSummariesInput":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"AccountId", + "location":"querystring", + "locationName":"AccountId" + }, + "State":{ + "shape":"RestoreJobState", + "location":"querystring", + "locationName":"State" + }, + "ResourceType":{ + "shape":"ResourceType", + "location":"querystring", + "locationName":"ResourceType" + }, + "AggregationPeriod":{ + "shape":"AggregationPeriod", + "location":"querystring", + "locationName":"AggregationPeriod" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"string", + "location":"querystring", + "locationName":"NextToken" + } + } + }, + "ListRestoreJobSummariesOutput":{ + "type":"structure", + "members":{ + "RestoreJobSummaries":{"shape":"RestoreJobSummaryList"}, + "AggregationPeriod":{"shape":"string"}, + "NextToken":{"shape":"string"} + } + }, + "ListRestoreJobsByProtectedResourceInput":{ + "type":"structure", + "required":["ResourceArn"], + "members":{ + "ResourceArn":{ + "shape":"ARN", + "location":"uri", + "locationName":"resourceArn" + }, + "ByStatus":{ + "shape":"RestoreJobStatus", + "location":"querystring", + "locationName":"status" + }, + "ByRecoveryPointCreationDateAfter":{ + "shape":"timestamp", + "location":"querystring", + "locationName":"recoveryPointCreationDateAfter" + }, + "ByRecoveryPointCreationDateBefore":{ + "shape":"timestamp", + "location":"querystring", + "locationName":"recoveryPointCreationDateBefore" + }, + "NextToken":{ + "shape":"string", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListRestoreJobsByProtectedResourceOutput":{ + "type":"structure", + "members":{ + "RestoreJobs":{"shape":"RestoreJobsList"}, + "NextToken":{"shape":"string"} + } + }, "ListRestoreJobsInput":{ "type":"structure", "members":{ @@ -3166,6 +3903,11 @@ "location":"querystring", "locationName":"accountId" }, + "ByResourceType":{ + "shape":"ResourceType", + "location":"querystring", + "locationName":"resourceType" + }, "ByCreatedBefore":{ "shape":"timestamp", "location":"querystring", @@ -3190,6 +3932,11 @@ "shape":"timestamp", "location":"querystring", "locationName":"completeAfter" + }, + "ByRestoreTestingPlanArn":{ + "shape":"ARN", + "location":"querystring", + "locationName":"restoreTestingPlanArn" } } }, @@ -3200,6 +3947,70 @@ "NextToken":{"shape":"string"} } }, + "ListRestoreTestingPlansInput":{ + "type":"structure", + "members":{ + "MaxResults":{ + "shape":"ListRestoreTestingPlansInputMaxResultsInteger", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + } + } + }, + "ListRestoreTestingPlansInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListRestoreTestingPlansOutput":{ + "type":"structure", + "required":["RestoreTestingPlans"], + "members":{ + "NextToken":{"shape":"String"}, + "RestoreTestingPlans":{"shape":"RestoreTestingPlans"} + } + }, + "ListRestoreTestingSelectionsInput":{ + "type":"structure", + "required":["RestoreTestingPlanName"], + "members":{ + "MaxResults":{ + "shape":"ListRestoreTestingSelectionsInputMaxResultsInteger", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + }, + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "ListRestoreTestingSelectionsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListRestoreTestingSelectionsOutput":{ + "type":"structure", + "required":["RestoreTestingSelections"], + "members":{ + "NextToken":{"shape":"String"}, + "RestoreTestingSelections":{"shape":"RestoreTestingSelections"} + } + }, "ListTagsInput":{ "type":"structure", "required":["ResourceArn"], @@ -3239,6 +4050,7 @@ "max":1000, "min":1 }, + "MessageCategory":{"type":"string"}, "Metadata":{ "type":"map", "key":{"shape":"MetadataKey"}, @@ -3265,7 +4077,16 @@ "ResourceArn":{"shape":"ARN"}, "ResourceType":{"shape":"ResourceType"}, "LastBackupTime":{"shape":"timestamp"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "LastBackupVaultArn":{"shape":"ARN"}, + "LastRecoveryPointArn":{"shape":"ARN"} + } + }, + "ProtectedResourceConditions":{ + "type":"structure", + "members":{ + "StringEquals":{"shape":"KeyValueList"}, + "StringNotEquals":{"shape":"KeyValueList"} } }, "ProtectedResourcesList":{ @@ -3315,6 +4136,22 @@ "BackupVaultEvents":{"shape":"BackupVaultEvents"} } }, + "PutRestoreValidationResultInput":{ + "type":"structure", + "required":[ + "RestoreJobId", + "ValidationStatus" + ], + "members":{ + "RestoreJobId":{ + "shape":"RestoreJobId", + "location":"uri", + "locationName":"restoreJobId" + }, + "ValidationStatus":{"shape":"RestoreValidationStatus"}, + "ValidationStatusMessage":{"shape":"string"} + } + }, "RecoveryPointByBackupVault":{ "type":"structure", "members":{ @@ -3339,7 +4176,8 @@ "ParentRecoveryPointArn":{"shape":"ARN"}, "CompositeMemberIdentifier":{"shape":"string"}, "IsParent":{"shape":"boolean"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "VaultType":{"shape":"VaultType"} } }, "RecoveryPointByBackupVaultList":{ @@ -3404,6 +4242,7 @@ "type":"list", "member":{"shape":"RecoveryPointMember"} }, + "Region":{"type":"string"}, "ReportDeliveryChannel":{ "type":"structure", "required":["S3BucketName"], @@ -3520,7 +4359,34 @@ "type":"list", "member":{"shape":"ResourceType"} }, + "RestoreDeletionStatus":{ + "type":"string", + "enum":[ + "DELETING", + "FAILED", + "SUCCESSFUL" + ] + }, + "RestoreJobCreator":{ + "type":"structure", + "members":{ + "RestoreTestingPlanArn":{"shape":"ARN"} + } + }, "RestoreJobId":{"type":"string"}, + "RestoreJobState":{ + "type":"string", + "enum":[ + "CREATED", + "PENDING", + "RUNNING", + "ABORTED", + "COMPLETED", + "FAILED", + "AGGREGATE_ALL", + "ANY" + ] + }, "RestoreJobStatus":{ "type":"string", "enum":[ @@ -3531,6 +4397,22 @@ "FAILED" ] }, + "RestoreJobSummary":{ + "type":"structure", + "members":{ + "Region":{"shape":"Region"}, + "AccountId":{"shape":"AccountId"}, + "State":{"shape":"RestoreJobState"}, + "ResourceType":{"shape":"ResourceType"}, + "Count":{"shape":"integer"}, + "StartTime":{"shape":"timestamp"}, + "EndTime":{"shape":"timestamp"} + } + }, + "RestoreJobSummaryList":{ + "type":"list", + "member":{"shape":"RestoreJobSummary"} + }, "RestoreJobsList":{ "type":"list", "member":{"shape":"RestoreJobsListMember"} @@ -3550,9 +4432,198 @@ "IamRoleArn":{"shape":"IAMRoleArn"}, "ExpectedCompletionTimeMinutes":{"shape":"Long"}, "CreatedResourceArn":{"shape":"ARN"}, - "ResourceType":{"shape":"ResourceType"} + "ResourceType":{"shape":"ResourceType"}, + "RecoveryPointCreationDate":{"shape":"timestamp"}, + "CreatedBy":{"shape":"RestoreJobCreator"}, + "ValidationStatus":{"shape":"RestoreValidationStatus"}, + "ValidationStatusMessage":{"shape":"string"}, + "DeletionStatus":{"shape":"RestoreDeletionStatus"}, + "DeletionStatusMessage":{"shape":"string"} + } + }, + "RestoreTestingPlanForCreate":{ + "type":"structure", + "required":[ + "RecoveryPointSelection", + "RestoreTestingPlanName", + "ScheduleExpression" + ], + "members":{ + "RecoveryPointSelection":{"shape":"RestoreTestingRecoveryPointSelection"}, + "RestoreTestingPlanName":{"shape":"String"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlanForGet":{ + "type":"structure", + "required":[ + "CreationTime", + "RecoveryPointSelection", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "ScheduleExpression" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "CreatorRequestId":{"shape":"String"}, + "LastExecutionTime":{"shape":"Timestamp"}, + "LastUpdateTime":{"shape":"Timestamp"}, + "RecoveryPointSelection":{"shape":"RestoreTestingRecoveryPointSelection"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlanForList":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "ScheduleExpression" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "LastExecutionTime":{"shape":"Timestamp"}, + "LastUpdateTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlanForUpdate":{ + "type":"structure", + "members":{ + "RecoveryPointSelection":{"shape":"RestoreTestingRecoveryPointSelection"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlans":{ + "type":"list", + "member":{"shape":"RestoreTestingPlanForList"} + }, + "RestoreTestingRecoveryPointSelection":{ + "type":"structure", + "members":{ + "Algorithm":{"shape":"RestoreTestingRecoveryPointSelectionAlgorithm"}, + "ExcludeVaults":{"shape":"stringList"}, + "IncludeVaults":{"shape":"stringList"}, + "RecoveryPointTypes":{"shape":"RestoreTestingRecoveryPointTypeList"}, + "SelectionWindowDays":{"shape":"integer"} + } + }, + "RestoreTestingRecoveryPointSelectionAlgorithm":{ + "type":"string", + "enum":[ + "LATEST_WITHIN_WINDOW", + "RANDOM_WITHIN_WINDOW" + ] + }, + "RestoreTestingRecoveryPointType":{ + "type":"string", + "enum":[ + "CONTINUOUS", + "SNAPSHOT" + ] + }, + "RestoreTestingRecoveryPointTypeList":{ + "type":"list", + "member":{"shape":"RestoreTestingRecoveryPointType"} + }, + "RestoreTestingSelectionForCreate":{ + "type":"structure", + "required":[ + "IamRoleArn", + "ProtectedResourceType", + "RestoreTestingSelectionName" + ], + "members":{ + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceArns":{"shape":"stringList"}, + "ProtectedResourceConditions":{"shape":"ProtectedResourceConditions"}, + "ProtectedResourceType":{"shape":"String"}, + "RestoreMetadataOverrides":{"shape":"SensitiveStringMap"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelectionForGet":{ + "type":"structure", + "required":[ + "CreationTime", + "IamRoleArn", + "ProtectedResourceType", + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "CreatorRequestId":{"shape":"String"}, + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceArns":{"shape":"stringList"}, + "ProtectedResourceConditions":{"shape":"ProtectedResourceConditions"}, + "ProtectedResourceType":{"shape":"String"}, + "RestoreMetadataOverrides":{"shape":"SensitiveStringMap"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelectionForList":{ + "type":"structure", + "required":[ + "CreationTime", + "IamRoleArn", + "ProtectedResourceType", + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceType":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelectionForUpdate":{ + "type":"structure", + "members":{ + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceArns":{"shape":"stringList"}, + "ProtectedResourceConditions":{"shape":"ProtectedResourceConditions"}, + "RestoreMetadataOverrides":{"shape":"SensitiveStringMap"}, + "ValidationWindowHours":{"shape":"integer"} } }, + "RestoreTestingSelections":{ + "type":"list", + "member":{"shape":"RestoreTestingSelectionForList"} + }, + "RestoreValidationStatus":{ + "type":"string", + "enum":[ + "FAILED", + "SUCCESSFUL", + "TIMED_OUT", + "VALIDATING" + ] + }, + "SensitiveStringMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"}, + "sensitive":true + }, "ServiceUnavailableException":{ "type":"structure", "members":{ @@ -3678,6 +4749,7 @@ "DELETED" ] }, + "String":{"type":"string"}, "TagKey":{"type":"string"}, "TagKeyList":{ "type":"list", @@ -3706,6 +4778,7 @@ "value":{"shape":"TagValue"}, "sensitive":true }, + "Timestamp":{"type":"timestamp"}, "Timezone":{"type":"string"}, "UntagResourceInput":{ "type":"structure", @@ -3840,6 +4913,74 @@ "CreationTime":{"shape":"timestamp"} } }, + "UpdateRestoreTestingPlanInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlan", + "RestoreTestingPlanName" + ], + "members":{ + "RestoreTestingPlan":{"shape":"RestoreTestingPlanForUpdate"}, + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "UpdateRestoreTestingPlanOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "UpdateTime" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "UpdateTime":{"shape":"Timestamp"} + } + }, + "UpdateRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelection", + "RestoreTestingSelectionName" + ], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelection":{"shape":"RestoreTestingSelectionForUpdate"}, + "RestoreTestingSelectionName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingSelectionName" + } + } + }, + "UpdateRestoreTestingSelectionOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "RestoreTestingSelectionName", + "UpdateTime" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "UpdateTime":{"shape":"Timestamp"} + } + }, "VaultNames":{ "type":"list", "member":{"shape":"string"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,6 +10,8 @@ "CreateLegalHold": "

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

", "CreateLogicallyAirGappedBackupVault": "

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

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

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

", "CreateReportPlan": "

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

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

", + "CreateRestoreTestingPlan": "

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

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

", + "CreateRestoreTestingSelection": "

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

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

  • ProtectedResourceArns

  • ProtectedResourceConditions

Each protected resource type can have one single value.

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

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

", "DeleteBackupPlan": "

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

", "DeleteBackupSelection": "

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

", "DeleteBackupVault": "

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

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

Deletes the framework specified by a framework name.

", "DeleteRecoveryPoint": "

Deletes the recovery point specified by a recovery point ID.

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

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

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

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

", "DeleteReportPlan": "

Deletes the report plan specified by a report plan name.

", + "DeleteRestoreTestingPlan": "

This request deletes the specified restore testing plan.

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

", + "DeleteRestoreTestingSelection": "

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

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

", "DescribeBackupJob": "

Returns backup job details for the specified BackupJobId.

", "DescribeBackupVault": "

Returns metadata about a backup vault specified by its name.

", "DescribeCopyJob": "

Returns metadata associated with creating a copy of a resource.

", @@ -41,13 +45,19 @@ "GetBackupVaultNotifications": "

Returns event notifications for the specified backup vault.

", "GetLegalHold": "

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

", "GetRecoveryPointRestoreMetadata": "

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

", + "GetRestoreJobMetadata": "

This request returns the metadata for the specified restore job.

", + "GetRestoreTestingInferredMetadata": "

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

", + "GetRestoreTestingPlan": "

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

", + "GetRestoreTestingSelection": "

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

", "GetSupportedResourceTypes": "

Returns the Amazon Web Services resource types supported by Backup.

", + "ListBackupJobSummaries": "

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

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

", "ListBackupJobs": "

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

", "ListBackupPlanTemplates": "

Returns metadata of your saved backup plan templates, including the template ID, name, and the creation and deletion dates.

", "ListBackupPlanVersions": "

Returns version metadata of your backup plans, including Amazon Resource Names (ARNs), backup plan IDs, creation and deletion dates, plan names, and version IDs.

", "ListBackupPlans": "

Returns a list of all active backup plans for an authenticated account. The list contains information such as Amazon Resource Names (ARNs), plan IDs, creation and deletion dates, version IDs, plan names, and creator request IDs.

", "ListBackupSelections": "

Returns an array containing metadata of the resources associated with the target backup plan.

", "ListBackupVaults": "

Returns a list of recovery point storage containers along with information about them.

", + "ListCopyJobSummaries": "

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

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

", "ListCopyJobs": "

Returns metadata about your copy jobs.

", "ListFrameworks": "

Returns a list of all frameworks for an Amazon Web Services account and Amazon Web Services Region.

", "ListLegalHolds": "

This action returns metadata about active and previous legal holds.

", @@ -58,11 +68,16 @@ "ListRecoveryPointsByResource": "

Returns detailed information about all the recovery points of the type specified by a resource Amazon Resource Name (ARN).

For Amazon EFS and Amazon EC2, this action only lists recovery points created by Backup.

", "ListReportJobs": "

Returns details about your report jobs.

", "ListReportPlans": "

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

", + "ListRestoreJobSummaries": "

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

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

", "ListRestoreJobs": "

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

", + "ListRestoreJobsByProtectedResource": "

This returns restore jobs that contain the specified protected resource.

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

", + "ListRestoreTestingPlans": "

Returns a list of restore testing plans.

", + "ListRestoreTestingSelections": "

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

", "ListTags": "

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

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

", "PutBackupVaultAccessPolicy": "

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

", "PutBackupVaultLockConfiguration": "

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

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

", "PutBackupVaultNotifications": "

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

", + "PutRestoreValidationResult": "

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

", "StartBackupJob": "

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

", "StartCopyJob": "

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

Does not support continuous backups.

", "StartReportJob": "

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

", @@ -74,8 +89,10 @@ "UpdateFramework": "

Updates an existing framework identified by its FrameworkName with the input document in JSON format.

", "UpdateGlobalSettings": "

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

", "UpdateRecoveryPointLifecycle": "

Sets the transition lifecycle of a recovery point.

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

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

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

This operation does not support continuous backups.

", - "UpdateRegionSettings": "

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

", - "UpdateReportPlan": "

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

" + "UpdateRegionSettings": "

Updates the current service opt-in settings for the Region.

Use the DescribeRegionSettings API to determine the resource types that are supported.

", + "UpdateReportPlan": "

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

", + "UpdateRestoreTestingPlan": "

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

RecoveryPointSelection can contain:

  • Algorithm

  • ExcludeVaults

  • IncludeVaults

  • RecoveryPointTypes

  • SelectionWindowDays

", + "UpdateRestoreTestingSelection": "

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

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

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

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

", "DescribeProtectedResourceInput$ResourceArn": "

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

", "DescribeProtectedResourceOutput$ResourceArn": "

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

", + "DescribeProtectedResourceOutput$LastBackupVaultArn": "

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

", + "DescribeProtectedResourceOutput$LastRecoveryPointArn": "

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

", "DescribeRecoveryPointInput$RecoveryPointArn": "

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

", "DescribeRecoveryPointOutput$RecoveryPointArn": "

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

", "DescribeRecoveryPointOutput$BackupVaultArn": "

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

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

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

", "ListRecoveryPointsByBackupVaultInput$ByParentRecoveryPointArn": "

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

", "ListRecoveryPointsByResourceInput$ResourceArn": "

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

", + "ListRestoreJobsByProtectedResourceInput$ResourceArn": "

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

", + "ListRestoreJobsInput$ByRestoreTestingPlanArn": "

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

", "ListTagsInput$ResourceArn": "

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

", "ProtectedResource$ResourceArn": "

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

", + "ProtectedResource$LastBackupVaultArn": "

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

", + "ProtectedResource$LastRecoveryPointArn": "

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

", "PutBackupVaultNotificationsInput$SNSTopicArn": "

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

", "RecoveryPointByBackupVault$RecoveryPointArn": "

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

", "RecoveryPointByBackupVault$BackupVaultArn": "

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

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

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

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

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

", "RestoreJobsListMember$RecoveryPointArn": "

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

", "RestoreJobsListMember$CreatedResourceArn": "

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

", "StartBackupJobInput$ResourceArn": "

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

", @@ -176,16 +200,22 @@ "base": null, "refs": { "BackupJob$AccountId": "

The account ID that owns the backup job.

", + "BackupJobSummary$AccountId": "

The account ID that owns the jobs within the summary.

", "CopyJob$AccountId": "

The account ID that owns the copy job.

", + "CopyJobSummary$AccountId": "

The account ID that owns the jobs within the summary.

", "DescribeBackupJobOutput$AccountId": "

Returns the account ID that owns the backup job.

", "DescribeRecoveryPointInput$BackupVaultAccountId": "

This is the account ID of the specified backup vault.

", "DescribeRestoreJobOutput$AccountId": "

Returns the account ID that owns the restore job.

", "GetRecoveryPointRestoreMetadataInput$BackupVaultAccountId": "

This is the account ID of the specified backup vault.

", + "ListBackupJobSummariesInput$AccountId": "

Returns the job count for the specified account.

If the request is sent from a member account or an account not part of Amazon Web Services Organizations, jobs within requestor's account will be returned.

Root, admin, and delegated administrator accounts can use the value ANY to return job counts from every account in the organization.

AGGREGATE_ALL aggregates job counts from all accounts within the authenticated organization, then returns the sum.

", "ListBackupJobsInput$ByAccountId": "

The account ID to list the jobs from. Returns only backup jobs associated with the specified account ID.

If used from an Organizations management account, passing * returns all jobs across the organization.

", + "ListCopyJobSummariesInput$AccountId": "

Returns the job count for the specified account.

If the request is sent from a member account or an account not part of Amazon Web Services Organizations, jobs within requestor's account will be returned.

Root, admin, and delegated administrator accounts can use the value ANY to return job counts from every account in the organization.

AGGREGATE_ALL aggregates job counts from all accounts within the authenticated organization, then returns the sum.

", "ListCopyJobsInput$ByAccountId": "

The account ID to list the jobs from. Returns only copy jobs associated with the specified account ID.

", "ListProtectedResourcesByBackupVaultInput$BackupVaultAccountId": "

This is the list of protected resources by backup vault within the vault(s) you specify by account ID.

", "ListRecoveryPointsByBackupVaultInput$BackupVaultAccountId": "

This parameter will sort the list of recovery points by account ID.

", + "ListRestoreJobSummariesInput$AccountId": "

Returns the job count for the specified account.

If the request is sent from a member account or an account not part of Amazon Web Services Organizations, jobs within requestor's account will be returned.

Root, admin, and delegated administrator accounts can use the value ANY to return job counts from every account in the organization.

AGGREGATE_ALL aggregates job counts from all accounts within the authenticated organization, then returns the sum.

", "ListRestoreJobsInput$ByAccountId": "

The account ID to list the jobs from. Returns only restore jobs associated with the specified account ID.

", + "RestoreJobSummary$AccountId": "

The account ID that owns the jobs within the summary.

", "RestoreJobsListMember$AccountId": "

The account ID that owns the restore job.

" } }, @@ -206,6 +236,14 @@ "UpdateBackupPlanOutput$AdvancedBackupSettings": "

Contains a list of BackupOptions for each resource type.

" } }, + "AggregationPeriod": { + "base": null, + "refs": { + "ListBackupJobSummariesInput$AggregationPeriod": "

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

Acceptable values include

  • ONE_DAY for daily job count for the prior 14 days.

  • SEVEN_DAYS for the aggregated job count for the prior 7 days.

  • FOURTEEN_DAYS for aggregated job count for prior 14 days.

", + "ListCopyJobSummariesInput$AggregationPeriod": "

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

  • ONE_DAY for daily job count for the prior 14 days.

  • SEVEN_DAYS for the aggregated job count for the prior 7 days.

  • FOURTEEN_DAYS for aggregated job count for prior 14 days.

", + "ListRestoreJobSummariesInput$AggregationPeriod": "

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

Acceptable values include

  • ONE_DAY for daily job count for the prior 14 days.

  • SEVEN_DAYS for the aggregated job count for the prior 7 days.

  • FOURTEEN_DAYS for aggregated job count for prior 14 days.

" + } + }, "AlreadyExistsException": { "base": "

The required resource already exists.

", "refs": { @@ -232,6 +270,25 @@ "ListBackupJobsInput$ByState": "

Returns only backup jobs that are in the specified state.

" } }, + "BackupJobStatus": { + "base": null, + "refs": { + "BackupJobSummary$State": "

This value is job count for jobs with the specified state.

", + "ListBackupJobSummariesInput$State": "

This parameter returns the job count for jobs with the specified state.

The the value ANY returns count of all states.

AGGREGATE_ALL aggregates job counts for all states and returns the sum.

" + } + }, + "BackupJobSummary": { + "base": "

This is a summary of jobs created or running within the most recent 30 days.

The returned summary may contain the following: Region, Account, State, RestourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

", + "refs": { + "BackupJobSummaryList$member": null + } + }, + "BackupJobSummaryList": { + "base": null, + "refs": { + "ListBackupJobSummariesOutput$BackupJobSummaries": "

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

" + } + }, "BackupJobsList": { "base": null, "refs": { @@ -441,6 +498,7 @@ "BackupRuleInput$EnableContinuousBackup": "

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

", "BackupVaultListMember$Locked": "

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

", "DescribeBackupVaultOutput$Locked": "

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

", + "Lifecycle$OptInToArchiveForSupportedResources": "

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

", "ListBackupPlansInput$IncludeDeleted": "

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

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

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

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

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

Conditions differs from ListOfTags as follows:

  • When you specify more than one condition, you only assign the resources that match ALL conditions (using AND logic).

  • Conditions supports StringEquals, StringLike, StringNotEquals, and StringNotLike. ListOfTags only supports StringEquals.

" + "BackupSelection$Conditions": "

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

Conditions differs from ListOfTags as follows:

  • When you specify more than one condition, you only assign the resources that match ALL conditions (using AND logic).

  • Conditions supports StringEquals, StringLike, StringNotEquals, and StringNotLike. ListOfTags only supports StringEquals.

" } }, "ConflictException": { @@ -578,6 +636,25 @@ "ListCopyJobsInput$ByState": "

Returns only copy jobs that are in the specified state.

" } }, + "CopyJobStatus": { + "base": null, + "refs": { + "CopyJobSummary$State": "

This value is job count for jobs with the specified state.

", + "ListCopyJobSummariesInput$State": "

This parameter returns the job count for jobs with the specified state.

The the value ANY returns count of all states.

AGGREGATE_ALL aggregates job counts for all states and returns the sum.

" + } + }, + "CopyJobSummary": { + "base": "

This is a summary of copy jobs created or running within the most recent 30 days.

The returned summary may contain the following: Region, Account, State, RestourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

", + "refs": { + "CopyJobSummaryList$member": null + } + }, + "CopyJobSummaryList": { + "base": null, + "refs": { + "ListCopyJobSummariesOutput$CopyJobSummaries": "

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

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

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

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

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

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

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

", + "ProtectedResourceConditions$StringNotEquals": "

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

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

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

", "refs": { @@ -1095,6 +1255,16 @@ "refs": { } }, + "ListBackupJobSummariesInput": { + "base": null, + "refs": { + } + }, + "ListBackupJobSummariesOutput": { + "base": null, + "refs": { + } + }, "ListBackupJobsInput": { "base": null, "refs": { @@ -1155,6 +1325,16 @@ "refs": { } }, + "ListCopyJobSummariesInput": { + "base": null, + "refs": { + } + }, + "ListCopyJobSummariesOutput": { + "base": null, + "refs": { + } + }, "ListCopyJobsInput": { "base": null, "refs": { @@ -1188,7 +1368,7 @@ "ListOfTags": { "base": null, "refs": { - "BackupSelection$ListOfTags": "

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

ListOfTags differs from Conditions as follows:

  • When you specify more than one condition, you assign all resources that match AT LEAST ONE condition (using OR logic).

  • ListOfTags only supports StringEquals. Conditions supports StringEquals, StringLike, StringNotEquals, and StringNotLike.

" + "BackupSelection$ListOfTags": "

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

ListOfTags differs from Conditions as follows:

  • When you specify more than one condition, you assign all resources that match AT LEAST ONE condition (using OR logic).

  • ListOfTags only supports StringEquals. Conditions supports StringEquals, StringLike, StringNotEquals, and StringNotLike.

" } }, "ListProtectedResourcesByBackupVaultInput": { @@ -1261,6 +1441,26 @@ "refs": { } }, + "ListRestoreJobSummariesInput": { + "base": null, + "refs": { + } + }, + "ListRestoreJobSummariesOutput": { + "base": null, + "refs": { + } + }, + "ListRestoreJobsByProtectedResourceInput": { + "base": null, + "refs": { + } + }, + "ListRestoreJobsByProtectedResourceOutput": { + "base": null, + "refs": { + } + }, "ListRestoreJobsInput": { "base": null, "refs": { @@ -1271,6 +1471,38 @@ "refs": { } }, + "ListRestoreTestingPlansInput": { + "base": null, + "refs": { + } + }, + "ListRestoreTestingPlansInputMaxResultsInteger": { + "base": null, + "refs": { + "ListRestoreTestingPlansInput$MaxResults": "

The maximum number of items to be returned.

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

The maximum number of items to be returned.

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

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

", "DescribeBackupVaultOutput$MinRetentionDays": "

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

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

", "DescribeBackupVaultOutput$MaxRetentionDays": "

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

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

", + "DescribeProtectedResourceOutput$LatestRestoreExecutionTimeMinutes": "

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

", "DescribeRecoveryPointOutput$BackupSizeInBytes": "

The size, in bytes, of a backup.

", "DescribeRestoreJobOutput$BackupSizeInBytes": "

The size, in bytes, of the restored resource.

", "DescribeRestoreJobOutput$ExpectedCompletionTimeMinutes": "

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

", @@ -1323,12 +1556,14 @@ "MaxResults": { "base": null, "refs": { + "ListBackupJobSummariesInput$MaxResults": "

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

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

", "ListBackupJobsInput$MaxResults": "

The maximum number of items to be returned.

", "ListBackupPlanTemplatesInput$MaxResults": "

The maximum number of items to be returned.

", "ListBackupPlanVersionsInput$MaxResults": "

The maximum number of items to be returned.

", "ListBackupPlansInput$MaxResults": "

The maximum number of items to be returned.

", "ListBackupSelectionsInput$MaxResults": "

The maximum number of items to be returned.

", "ListBackupVaultsInput$MaxResults": "

The maximum number of items to be returned.

", + "ListCopyJobSummariesInput$MaxResults": "

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

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

", "ListCopyJobsInput$MaxResults": "

The maximum number of items to be returned.

", "ListLegalHoldsInput$MaxResults": "

The maximum number of resource list items to be returned.

", "ListProtectedResourcesByBackupVaultInput$MaxResults": "

The maximum number of items to be returned.

", @@ -1338,14 +1573,26 @@ "ListRecoveryPointsByResourceInput$MaxResults": "

The maximum number of items to be returned.

Amazon RDS requires a value of at least 20.

", "ListReportJobsInput$MaxResults": "

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

", "ListReportPlansInput$MaxResults": "

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

", + "ListRestoreJobSummariesInput$MaxResults": "

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

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

", + "ListRestoreJobsByProtectedResourceInput$MaxResults": "

The maximum number of items to be returned.

", "ListRestoreJobsInput$MaxResults": "

The maximum number of items to be returned.

", "ListTagsInput$MaxResults": "

The maximum number of items to be returned.

" } }, + "MessageCategory": { + "base": null, + "refs": { + "BackupJobSummary$MessageCategory": "

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

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

The the value ANY returns count of all message categories.

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

", + "CopyJobSummary$MessageCategory": "

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

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

The the value ANY returns count of all message categories.

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

", + "ListBackupJobSummariesInput$MessageCategory": "

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

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

The the value ANY returns count of all message categories.

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

", + "ListCopyJobSummariesInput$MessageCategory": "

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

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

The the value ANY returns count of all message categories.

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

" + } + }, "Metadata": { "base": null, "refs": { "GetRecoveryPointRestoreMetadataOutput$RestoreMetadata": "

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

", + "GetRestoreJobMetadataOutput$Metadata": "

This contains the metadata of the specified backup job.

", "StartRestoreJobInput$Metadata": "

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

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

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

  • file-system-id: The ID of the Amazon EFS file system that is backed up by Backup. Returned in GetRecoveryPointRestoreMetadata.

  • Encrypted: A Boolean value that, if true, specifies that the file system is encrypted. If KmsKeyId is specified, Encrypted must be set to true.

  • KmsKeyId: Specifies the Amazon Web Services KMS key that is used to encrypt the restored file system. You can specify a key from another Amazon Web Services account provided that key it is properly shared with your account via Amazon Web Services KMS.

  • PerformanceMode: Specifies the throughput mode of the file system.

  • CreationToken: A user-supplied value that ensures the uniqueness (idempotency) of the request.

  • newFileSystem: A Boolean value that, if true, specifies that the recovery point is restored to a new Amazon EFS file system.

  • ItemsToRestore: An array of one to five strings where each string is a file path. Use ItemsToRestore to restore specific files or directories rather than the entire file system. This parameter is optional. For example, \"itemsToRestore\":\"[\\\"/my.test\\\"]\".

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

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

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

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

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

", + "RestoreTestingSelectionForGet$ProtectedResourceConditions": "

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

", + "RestoreTestingSelectionForUpdate$ProtectedResourceConditions": "

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

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

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

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

", "refs": { @@ -1468,6 +1728,14 @@ "ListRecoveryPointsByLegalHoldOutput$RecoveryPoints": "

This is a list of the recovery points returned by ListRecoveryPointsByLegalHold.

" } }, + "Region": { + "base": null, + "refs": { + "BackupJobSummary$Region": "

The Amazon Web Services Regions within the job summary.

", + "CopyJobSummary$Region": "

This is the Amazon Web Services Regions within the job summary.

", + "RestoreJobSummary$Region": "

The Amazon Web Services Regions within the job summary.

" + } + }, "ReportDeliveryChannel": { "base": "

Contains information from your report plan about where to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports.

", "refs": { @@ -1569,20 +1837,28 @@ "refs": { "AdvancedBackupSetting$ResourceType": "

Specifies an object containing resource type and backup options. The only supported resource type is Amazon EC2 instances with Windows Volume Shadow Copy Service (VSS). For a CloudFormation example, see the sample CloudFormation template to enable Windows VSS in the Backup User Guide.

Valid values: EC2.

", "BackupJob$ResourceType": "

The type of Amazon Web Services resource to be backed up; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, the only supported resource type is Amazon EC2.

", + "BackupJobSummary$ResourceType": "

This value is the job count for the specified resource type. The request GetSupportedResourceTypes returns strings for supported resource types.

", "CopyJob$ResourceType": "

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

", + "CopyJobSummary$ResourceType": "

This value is the job count for the specified resource type. The request GetSupportedResourceTypes returns strings for supported resource types

", "DescribeBackupJobOutput$ResourceType": "

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

", "DescribeProtectedResourceOutput$ResourceType": "

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

", "DescribeRecoveryPointOutput$ResourceType": "

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

", "DescribeRestoreJobOutput$ResourceType": "

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

", - "ListBackupJobsInput$ByResourceType": "

Returns only backup jobs for the specified resources:

  • Aurora for Amazon Aurora

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • RDS for Amazon Relational Database Service

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • VirtualMachine for virtual machines

", - "ListCopyJobsInput$ByResourceType": "

Returns only backup jobs for the specified resources:

  • Aurora for Amazon Aurora

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • RDS for Amazon Relational Database Service

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • VirtualMachine for virtual machines

", - "ListRecoveryPointsByBackupVaultInput$ByResourceType": "

Returns only recovery points that match the specified resource type.

", + "GetRecoveryPointRestoreMetadataOutput$ResourceType": "

This is the resource type associated with the recovery point.

", + "ListBackupJobSummariesInput$ResourceType": "

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

The the value ANY returns count of all resource types.

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

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

", + "ListBackupJobsInput$ByResourceType": "

Returns only backup jobs for the specified resources:

  • Aurora for Amazon Aurora

  • CloudFormation for CloudFormation

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • Redshift for Amazon Redshift

  • RDS for Amazon Relational Database Service

  • SAP HANA on Amazon EC2 for SAP HANA databases

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • Timestream for Amazon Timestream

  • VirtualMachine for virtual machines

", + "ListCopyJobSummariesInput$ResourceType": "

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

The the value ANY returns count of all resource types.

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

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

", + "ListCopyJobsInput$ByResourceType": "

Returns only backup jobs for the specified resources:

  • Aurora for Amazon Aurora

  • CloudFormation for CloudFormation

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • Redshift for Amazon Redshift

  • RDS for Amazon Relational Database Service

  • SAP HANA on Amazon EC2 for SAP HANA databases

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • Timestream for Amazon Timestream

  • VirtualMachine for virtual machines

", + "ListRecoveryPointsByBackupVaultInput$ByResourceType": "

Returns only recovery points that match the specified resource type(s):

  • Aurora for Amazon Aurora

  • CloudFormation for CloudFormation

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • Redshift for Amazon Redshift

  • RDS for Amazon Relational Database Service

  • SAP HANA on Amazon EC2 for SAP HANA databases

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • Timestream for Amazon Timestream

  • VirtualMachine for virtual machines

", + "ListRestoreJobSummariesInput$ResourceType": "

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

The the value ANY returns count of all resource types.

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

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

", + "ListRestoreJobsInput$ByResourceType": "

Include this parameter to return only restore jobs for the specified resources:

  • Aurora for Amazon Aurora

  • CloudFormation for CloudFormation

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • Redshift for Amazon Redshift

  • RDS for Amazon Relational Database Service

  • SAP HANA on Amazon EC2 for SAP HANA databases

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • Timestream for Amazon Timestream

  • VirtualMachine for virtual machines

", "ProtectedResource$ResourceType": "

The type of Amazon Web Services resource; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, the only supported resource type is Amazon EC2.

", "RecoveryPointByBackupVault$ResourceType": "

The type of Amazon Web Services resource saved as a recovery point; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, the only supported resource type is Amazon EC2.

", "RecoveryPointMember$ResourceType": "

This is the Amazon Web Services resource type that is saved as a recovery point.

", "ResourceTypeManagementPreference$key": null, "ResourceTypeOptInPreference$key": null, "ResourceTypes$member": null, + "RestoreJobSummary$ResourceType": "

This value is the job count for the specified resource type. The request GetSupportedResourceTypes returns strings for supported resource types.

", "RestoreJobsListMember$ResourceType": "

The resource type of the listed restore jobs; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, the only supported resource type is Amazon EC2.

", "StartRestoreJobInput$ResourceType": "

Starts a job to restore a recovery point for one of the following resources:

  • Aurora for Amazon Aurora

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • CloudFormation for CloudFormation

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • RDS for Amazon Relational Database Service

  • Redshift for Amazon Redshift

  • Storage Gateway for Storage Gateway

  • S3 for Amazon S3

  • Timestream for Amazon Timestream

  • VirtualMachine for virtual machines

" } @@ -1604,7 +1880,7 @@ "base": null, "refs": { "DescribeRegionSettingsOutput$ResourceTypeOptInPreference": "

Returns a list of all services along with the opt-in preferences in the Region.

", - "UpdateRegionSettingsInput$ResourceTypeOptInPreference": "

Updates the list of services along with the opt-in preferences for the Region.

" + "UpdateRegionSettingsInput$ResourceTypeOptInPreference": "

Updates the list of services along with the opt-in preferences for the Region.

If resource assignments are only based on tags, then service opt-in settings are applied. If a resource type is explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be included in the backup even if the opt-in is not enabled for that particular service. If both a resource type and tags are specified in a resource assignment, the resource type specified in the backup plan takes priority over the tag condition. Service opt-in settings are disregarded in this situation.

" } }, "ResourceTypes": { @@ -1613,24 +1889,62 @@ "GetSupportedResourceTypesOutput$ResourceTypes": "

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

  • Aurora for Amazon Aurora

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSX for Amazon FSx

  • RDS for Amazon Relational Database Service

  • Storage Gateway for Storage Gateway

  • DocDB for Amazon DocumentDB (with MongoDB compatibility)

  • Neptune for Amazon Neptune

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

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

", + "RestoreJobsListMember$DeletionStatus": "

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

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

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

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

Contains identifying information about the creation of a restore job.

", + "RestoreJobsListMember$CreatedBy": "

Contains identifying information about the creation of a restore job.

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

Uniquely identifies the job that restores a recovery point.

", + "GetRestoreJobMetadataInput$RestoreJobId": "

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

", + "GetRestoreJobMetadataOutput$RestoreJobId": "

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

", + "PutRestoreValidationResultInput$RestoreJobId": "

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

", "StartRestoreJobOutput$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

" } }, + "RestoreJobState": { + "base": null, + "refs": { + "ListRestoreJobSummariesInput$State": "

This parameter returns the job count for jobs with the specified state.

The the value ANY returns count of all states.

AGGREGATE_ALL aggregates job counts for all states and returns the sum.

", + "RestoreJobSummary$State": "

This value is job count for jobs with the specified state.

" + } + }, "RestoreJobStatus": { "base": null, "refs": { "DescribeRestoreJobOutput$Status": "

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

", + "ListRestoreJobsByProtectedResourceInput$ByStatus": "

Returns only restore jobs associated with the specified job status.

", "ListRestoreJobsInput$ByStatus": "

Returns only restore jobs associated with the specified job status.

", "RestoreJobsListMember$Status": "

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

" } }, + "RestoreJobSummary": { + "base": "

This is a summary of restore jobs created or running within the most recent 30 days.

The returned summary may contain the following: Region, Account, State, ResourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

", + "refs": { + "RestoreJobSummaryList$member": null + } + }, + "RestoreJobSummaryList": { + "base": null, + "refs": { + "ListRestoreJobSummariesOutput$RestoreJobSummaries": "

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

" + } + }, "RestoreJobsList": { "base": null, "refs": { + "ListRestoreJobsByProtectedResourceOutput$RestoreJobs": "

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

", "ListRestoreJobsOutput$RestoreJobs": "

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

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

This contains metadata about a restore testing plan.

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

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

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

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

This contains metadata about a restore testing plan.

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

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

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

This contains metadata about a restore testing plan.

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

This contains metadata about a restore testing plan.

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

Specifies the body of a restore testing plan.

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

This is a returned list of restore testing plans.

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

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

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

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

", + "RestoreTestingPlanForGet$RecoveryPointSelection": "

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

", + "RestoreTestingPlanForUpdate$RecoveryPointSelection": "

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

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

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

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

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

These are the types of recovery points.

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

This contains metadata about a specific restore testing selection.

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

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

  • ProtectedResourceArns

  • ProtectedResourceConditions

Each protected resource type can have one single value.

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

ProtectedResourceConditions examples include as StringEquals and StringNotEquals.

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

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

  • ProtectedResourceArns

  • ProtectedResourceConditions

Each protected resource type can have one single value.

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

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

This contains metadata about a restore testing selection.

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

Unique name of the restore testing selection.

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

This contains metadata about a restore testing selection.

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

This contains metadata about a restore testing selection.

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

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

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

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

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

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

", + "PutRestoreValidationResultInput$ValidationStatus": "

This is the status of your restore validation.

", + "RestoreJobsListMember$ValidationStatus": "

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

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

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

", + "RestoreTestingSelectionForCreate$RestoreMetadataOverrides": "

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

See the complete list of restore testing inferred metadata.

", + "RestoreTestingSelectionForGet$RestoreMetadataOverrides": "

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

See the complete list of restore testing inferred metadata.

", + "RestoreTestingSelectionForUpdate$RestoreMetadataOverrides": "

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

See the complete list of restore testing inferred metadata.

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

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

", "refs": { @@ -1696,6 +2113,72 @@ "DescribeRecoveryPointOutput$StorageClass": "

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

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

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

", + "CreateRestoreTestingPlanOutput$RestoreTestingPlanArn": "

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

", + "CreateRestoreTestingPlanOutput$RestoreTestingPlanName": "

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

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

", + "CreateRestoreTestingSelectionInput$CreatorRequestId": "

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

", + "CreateRestoreTestingSelectionInput$RestoreTestingPlanName": "

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

", + "CreateRestoreTestingSelectionOutput$RestoreTestingPlanArn": "

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

", + "CreateRestoreTestingSelectionOutput$RestoreTestingPlanName": "

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

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

", + "CreateRestoreTestingSelectionOutput$RestoreTestingSelectionName": "

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

", + "DeleteRestoreTestingPlanInput$RestoreTestingPlanName": "

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

", + "DeleteRestoreTestingSelectionInput$RestoreTestingPlanName": "

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

", + "DeleteRestoreTestingSelectionInput$RestoreTestingSelectionName": "

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

", + "GetRestoreTestingInferredMetadataInput$BackupVaultAccountId": "

This is the account ID of the specified backup vault.

", + "GetRestoreTestingInferredMetadataInput$BackupVaultName": "

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

", + "GetRestoreTestingInferredMetadataInput$RecoveryPointArn": "

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

", + "GetRestoreTestingPlanInput$RestoreTestingPlanName": "

Required unique name of the restore testing plan.

", + "GetRestoreTestingSelectionInput$RestoreTestingPlanName": "

Required unique name of the restore testing plan.

", + "GetRestoreTestingSelectionInput$RestoreTestingSelectionName": "

Required unique name of the restore testing selection.

", + "KeyValue$Key": "

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

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

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

", + "KeyValue$Value": "

The value of the key.

Length Constraints: Maximum length of 256.

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

", + "ListRestoreTestingPlansInput$NextToken": "

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

", + "ListRestoreTestingPlansOutput$NextToken": "

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

", + "ListRestoreTestingSelectionsInput$NextToken": "

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

", + "ListRestoreTestingSelectionsInput$RestoreTestingPlanName": "

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

", + "ListRestoreTestingSelectionsOutput$NextToken": "

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

", + "RestoreTestingPlanForCreate$RestoreTestingPlanName": "

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

", + "RestoreTestingPlanForCreate$ScheduleExpression": "

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

", + "RestoreTestingPlanForCreate$ScheduleExpressionTimezone": "

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

", + "RestoreTestingPlanForGet$CreatorRequestId": "

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

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

", + "RestoreTestingPlanForGet$RestoreTestingPlanArn": "

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

", + "RestoreTestingPlanForGet$RestoreTestingPlanName": "

This is the restore testing plan name.

", + "RestoreTestingPlanForGet$ScheduleExpression": "

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

", + "RestoreTestingPlanForGet$ScheduleExpressionTimezone": "

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

", + "RestoreTestingPlanForList$RestoreTestingPlanArn": "

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

", + "RestoreTestingPlanForList$RestoreTestingPlanName": "

This is the restore testing plan name.

", + "RestoreTestingPlanForList$ScheduleExpression": "

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

", + "RestoreTestingPlanForList$ScheduleExpressionTimezone": "

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

", + "RestoreTestingPlanForUpdate$ScheduleExpression": "

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

", + "RestoreTestingPlanForUpdate$ScheduleExpressionTimezone": "

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

", + "RestoreTestingSelectionForCreate$IamRoleArn": "

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

", + "RestoreTestingSelectionForCreate$ProtectedResourceType": "

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

Supported resource types accepted include:

  • Aurora for Amazon Aurora

  • DocumentDB for Amazon DocumentDB (with MongoDB compatibility)

  • DynamoDB for Amazon DynamoDB

  • EBS for Amazon Elastic Block Store

  • EC2 for Amazon Elastic Compute Cloud

  • EFS for Amazon Elastic File System

  • FSx for Amazon FSx

  • Neptune for Amazon Neptune

  • RDS for Amazon Relational Database Service

  • S3 for Amazon S3

", + "RestoreTestingSelectionForCreate$RestoreTestingSelectionName": "

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

", + "RestoreTestingSelectionForGet$CreatorRequestId": "

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

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

", + "RestoreTestingSelectionForGet$IamRoleArn": "

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

", + "RestoreTestingSelectionForGet$ProtectedResourceType": "

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

", + "RestoreTestingSelectionForGet$RestoreTestingPlanName": "

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

", + "RestoreTestingSelectionForGet$RestoreTestingSelectionName": "

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

", + "RestoreTestingSelectionForList$IamRoleArn": "

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

", + "RestoreTestingSelectionForList$ProtectedResourceType": "

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

", + "RestoreTestingSelectionForList$RestoreTestingPlanName": "

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

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

", + "RestoreTestingSelectionForList$RestoreTestingSelectionName": "

Unique name of a restore testing selection.

", + "RestoreTestingSelectionForUpdate$IamRoleArn": "

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

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

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

", + "UpdateRestoreTestingPlanOutput$RestoreTestingPlanArn": "

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

", + "UpdateRestoreTestingPlanOutput$RestoreTestingPlanName": "

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

", + "UpdateRestoreTestingSelectionInput$RestoreTestingPlanName": "

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

", + "UpdateRestoreTestingSelectionInput$RestoreTestingSelectionName": "

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

", + "UpdateRestoreTestingSelectionOutput$RestoreTestingPlanArn": "

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

", + "UpdateRestoreTestingSelectionOutput$RestoreTestingPlanName": "

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

", + "UpdateRestoreTestingSelectionOutput$RestoreTestingSelectionName": "

This is the returned restore testing selection name.

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

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

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

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

", + "CreateRestoreTestingSelectionOutput$CreationTime": "

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

", + "RestoreTestingPlanForGet$CreationTime": "

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

", + "RestoreTestingPlanForGet$LastExecutionTime": "

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

", + "RestoreTestingPlanForGet$LastUpdateTime": "

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

", + "RestoreTestingPlanForList$CreationTime": "

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

", + "RestoreTestingPlanForList$LastExecutionTime": "

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

", + "RestoreTestingPlanForList$LastUpdateTime": "

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

", + "RestoreTestingSelectionForGet$CreationTime": "

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

", + "RestoreTestingSelectionForList$CreationTime": "

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

", + "UpdateRestoreTestingPlanOutput$CreationTime": "

This is the time the resource testing plan was created.

", + "UpdateRestoreTestingPlanOutput$UpdateTime": "

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

", + "UpdateRestoreTestingSelectionOutput$CreationTime": "

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

", + "UpdateRestoreTestingSelectionOutput$UpdateTime": "

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

" + } + }, "Timezone": { "base": null, "refs": { @@ -1795,6 +2297,26 @@ "refs": { } }, + "UpdateRestoreTestingPlanInput": { + "base": null, + "refs": { + } + }, + "UpdateRestoreTestingPlanOutput": { + "base": null, + "refs": { + } + }, + "UpdateRestoreTestingSelectionInput": { + "base": null, + "refs": { + } + }, + "UpdateRestoreTestingSelectionOutput": { + "base": null, + "refs": { + } + }, "VaultNames": { "base": null, "refs": { @@ -1811,7 +2333,9 @@ "base": null, "refs": { "DescribeBackupVaultOutput$VaultType": "

This is the type of vault described.

", - "ListBackupVaultsInput$ByVaultType": "

This parameter will sort the list of vaults by vault type.

" + "DescribeRecoveryPointOutput$VaultType": "

This is the type of vault in which the described recovery point is stored.

", + "ListBackupVaultsInput$ByVaultType": "

This parameter will sort the list of vaults by vault type.

", + "RecoveryPointByBackupVault$VaultType": "

This is the type of vault in which the described recovery point is stored.

" } }, "WindowMinutes": { @@ -1845,8 +2369,20 @@ "integer": { "base": null, "refs": { + "BackupJobSummary$Count": "

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

", + "CopyJobSummary$Count": "

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

", "Framework$NumberOfControls": "

The number of controls contained by the framework.

", - "ReportSetting$NumberOfFrameworks": "

The number of frameworks a report covers.

" + "ReportSetting$NumberOfFrameworks": "

The number of frameworks a report covers.

", + "RestoreJobSummary$Count": "

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

", + "RestoreTestingPlanForCreate$StartWindowHours": "

Defaults to 24 hours.

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

", + "RestoreTestingPlanForGet$StartWindowHours": "

Defaults to 24 hours.

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

", + "RestoreTestingPlanForList$StartWindowHours": "

Defaults to 24 hours.

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

", + "RestoreTestingPlanForUpdate$StartWindowHours": "

Defaults to 24 hours.

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

", + "RestoreTestingRecoveryPointSelection$SelectionWindowDays": "

Accepted values are integers from 1 to 365.

", + "RestoreTestingSelectionForCreate$ValidationWindowHours": "

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

", + "RestoreTestingSelectionForGet$ValidationWindowHours": "

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

", + "RestoreTestingSelectionForList$ValidationWindowHours": "

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

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

", + "RestoreTestingSelectionForUpdate$ValidationWindowHours": "

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

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

" } }, "long": { @@ -1871,6 +2407,7 @@ "BackupJob$BackupType": "

Represents the type of backup for a backup job.

", "BackupJob$ParentJobId": "

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

", "BackupJob$ResourceName": "

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

", + "BackupJob$MessageCategory": "

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

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

The the value ANY returns count of all message categories.

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

", "BackupPlanTemplatesListMember$BackupPlanTemplateId": "

Uniquely identifies a stored backup plan template.

", "BackupPlanTemplatesListMember$BackupPlanTemplateName": "

The optional display name of a backup plan template.

", "BackupPlansListMember$BackupPlanId": "

Uniquely identifies a backup plan.

", @@ -1893,6 +2430,7 @@ "CopyJob$ParentJobId": "

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

", "CopyJob$CompositeMemberIdentifier": "

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

", "CopyJob$ResourceName": "

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

", + "CopyJob$MessageCategory": "

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

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

The the value ANY returns count of all message categories.

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

", "CreateBackupPlanInput$CreatorRequestId": "

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

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

", "CreateBackupPlanOutput$BackupPlanId": "

Uniquely identifies a backup plan.

", "CreateBackupPlanOutput$VersionId": "

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

", @@ -1908,7 +2446,7 @@ "CreateLegalHoldOutput$Title": "

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

", "CreateLegalHoldOutput$Description": "

This is the returned string description of the legal hold.

", "CreateLegalHoldOutput$LegalHoldId": "

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

", - "CreateLogicallyAirGappedBackupVaultInput$CreatorRequestId": "

This is the ID of the creation request.

", + "CreateLogicallyAirGappedBackupVaultInput$CreatorRequestId": "

This is the ID of the creation request.

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

", "CreateReportPlanInput$IdempotencyToken": "

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

", "DeleteBackupPlanInput$BackupPlanId": "

Uniquely identifies a backup plan.

", "DeleteBackupPlanOutput$BackupPlanId": "

Uniquely identifies a backup plan.

", @@ -1927,10 +2465,11 @@ "DescribeBackupJobOutput$BackupType": "

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

", "DescribeBackupJobOutput$ParentJobId": "

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

", "DescribeBackupJobOutput$ResourceName": "

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

", + "DescribeBackupJobOutput$MessageCategory": "

This is the job count for the specified message category.

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

", "DescribeBackupVaultInput$BackupVaultName": "

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

", "DescribeBackupVaultInput$BackupVaultAccountId": "

This is the account ID of the specified backup vault.

", "DescribeBackupVaultOutput$BackupVaultName": "

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

", - "DescribeBackupVaultOutput$CreatorRequestId": "

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

", + "DescribeBackupVaultOutput$CreatorRequestId": "

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

", "DescribeCopyJobInput$CopyJobId": "

Uniquely identifies a copy job.

", "DescribeFrameworkOutput$DeploymentStatus": "

The deployment status of a framework. The statuses are:

CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED | FAILED

", "DescribeFrameworkOutput$FrameworkStatus": "

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

  • ACTIVE when recording is turned on for all resources governed by the framework.

  • PARTIALLY_ACTIVE when recording is turned off for at least one resource governed by the framework.

  • INACTIVE when recording is turned off for all resources governed by the framework.

  • UNAVAILABLE when Backup is unable to validate recording status at this time.

", @@ -1942,6 +2481,8 @@ "DescribeRestoreJobOutput$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

", "DescribeRestoreJobOutput$StatusMessage": "

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

", "DescribeRestoreJobOutput$PercentDone": "

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

", + "DescribeRestoreJobOutput$ValidationStatusMessage": "

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

", + "DescribeRestoreJobOutput$DeletionStatusMessage": "

This describes the restore job deletion status.

", "ExportBackupPlanTemplateInput$BackupPlanId": "

Uniquely identifies a backup plan.

", "ExportBackupPlanTemplateOutput$BackupPlanTemplateJson": "

The body of a backup plan template in JSON format.

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

", "FormatList$member": null, @@ -1952,7 +2493,7 @@ "GetBackupPlanInput$VersionId": "

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

", "GetBackupPlanOutput$BackupPlanId": "

Uniquely identifies a backup plan.

", "GetBackupPlanOutput$VersionId": "

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

", - "GetBackupPlanOutput$CreatorRequestId": "

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

", + "GetBackupPlanOutput$CreatorRequestId": "

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

", "GetBackupSelectionInput$BackupPlanId": "

Uniquely identifies a backup plan.

", "GetBackupSelectionInput$SelectionId": "

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

", "GetBackupSelectionOutput$SelectionId": "

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

", @@ -1982,55 +2523,69 @@ "LimitExceededException$Message": null, "LimitExceededException$Type": "

", "LimitExceededException$Context": "

", - "ListBackupJobsInput$NextToken": "

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

", + "ListBackupJobSummariesInput$NextToken": "

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

", + "ListBackupJobSummariesOutput$AggregationPeriod": "

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

  • ONE_DAY for daily job count for the prior 14 days.

  • SEVEN_DAYS for the aggregated job count for the prior 7 days.

  • FOURTEEN_DAYS for aggregated job count for prior 14 days.

", + "ListBackupJobSummariesOutput$NextToken": "

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

", + "ListBackupJobsInput$NextToken": "

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

", "ListBackupJobsInput$ByParentJobId": "

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

", - "ListBackupJobsOutput$NextToken": "

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

", - "ListBackupPlanTemplatesInput$NextToken": "

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

", - "ListBackupPlanTemplatesOutput$NextToken": "

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

", + "ListBackupJobsInput$ByMessageCategory": "

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

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

View Monitoring

The wildcard () returns count of all message categories.

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

", + "ListBackupJobsOutput$NextToken": "

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

", + "ListBackupPlanTemplatesInput$NextToken": "

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

", + "ListBackupPlanTemplatesOutput$NextToken": "

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

", "ListBackupPlanVersionsInput$BackupPlanId": "

Uniquely identifies a backup plan.

", - "ListBackupPlanVersionsInput$NextToken": "

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

", - "ListBackupPlanVersionsOutput$NextToken": "

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

", - "ListBackupPlansInput$NextToken": "

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

", - "ListBackupPlansOutput$NextToken": "

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

", + "ListBackupPlanVersionsInput$NextToken": "

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

", + "ListBackupPlanVersionsOutput$NextToken": "

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

", + "ListBackupPlansInput$NextToken": "

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

", + "ListBackupPlansOutput$NextToken": "

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

", "ListBackupSelectionsInput$BackupPlanId": "

Uniquely identifies a backup plan.

", - "ListBackupSelectionsInput$NextToken": "

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

", - "ListBackupSelectionsOutput$NextToken": "

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

", - "ListBackupVaultsInput$NextToken": "

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

", - "ListBackupVaultsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListCopyJobsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListBackupSelectionsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListBackupSelectionsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListBackupVaultsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListBackupVaultsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListCopyJobSummariesInput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListCopyJobSummariesOutput$AggregationPeriod": "

This is the period that sets the boundaries for returned results.

  • ONE_DAY for daily job count for the prior 14 days.

  • SEVEN_DAYS for the aggregated job count for the prior 7 days.

  • FOURTEEN_DAYS for aggregated job count for prior 14 days.

", + "ListCopyJobSummariesOutput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListCopyJobsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "ListCopyJobsInput$ByDestinationVaultArn": "

An Amazon Resource Name (ARN) that uniquely identifies a source backup vault to copy from; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

", "ListCopyJobsInput$ByParentJobId": "

This is a filter to list child (nested) jobs based on parent job ID.

", - "ListCopyJobsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListCopyJobsInput$ByMessageCategory": "

This is an optional parameter that can be used to filter out jobs with a MessageCategory which matches the value you input.

Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS.

View Monitoring for a list of accepted strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum.

", + "ListCopyJobsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "ListFrameworksInput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListFrameworksOutput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", - "ListLegalHoldsInput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return maxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListLegalHoldsOutput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return maxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListProtectedResourcesByBackupVaultInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListProtectedResourcesByBackupVaultOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListProtectedResourcesInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListProtectedResourcesOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListRecoveryPointsByBackupVaultInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListLegalHoldsInput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListLegalHoldsOutput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListProtectedResourcesByBackupVaultInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListProtectedResourcesByBackupVaultOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListProtectedResourcesInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListProtectedResourcesOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRecoveryPointsByBackupVaultInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "ListRecoveryPointsByBackupVaultInput$ByBackupPlanId": "

Returns only recovery points that match the specified backup plan ID.

", - "ListRecoveryPointsByBackupVaultOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRecoveryPointsByBackupVaultOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "ListRecoveryPointsByLegalHoldInput$LegalHoldId": "

This is the ID of the legal hold.

", - "ListRecoveryPointsByLegalHoldInput$NextToken": "

This is the next item following a partial list of returned resources. For example, if a request is made to return maxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRecoveryPointsByLegalHoldInput$NextToken": "

This is the next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "ListRecoveryPointsByLegalHoldOutput$NextToken": "

This return is the next item following a partial list of returned resources.

", - "ListRecoveryPointsByResourceInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListRecoveryPointsByResourceOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRecoveryPointsByResourceInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRecoveryPointsByResourceOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "ListReportJobsInput$ByStatus": "

Returns only report jobs that are in the specified status. The statuses are:

CREATED | RUNNING | COMPLETED | FAILED

", "ListReportJobsInput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListReportJobsOutput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListReportPlansInput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListReportPlansOutput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", - "ListRestoreJobsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListRestoreJobsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListTagsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", - "ListTagsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRestoreJobSummariesInput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRestoreJobSummariesOutput$AggregationPeriod": "

This is the period that sets the boundaries for returned results.

  • ONE_DAY for daily job count for the prior 14 days.

  • SEVEN_DAYS for the aggregated job count for the prior 7 days.

  • FOURTEEN_DAYS for aggregated job count for prior 14 days.

", + "ListRestoreJobSummariesOutput$NextToken": "

The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRestoreJobsByProtectedResourceInput$NextToken": "

The next item following a partial list of returned items. For example, if a request ismade to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRestoreJobsByProtectedResourceOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows youto return more items in your list starting at the location pointed to by the next token

", + "ListRestoreJobsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListRestoreJobsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListTagsInput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "ListTagsOutput$NextToken": "

The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", "MissingParameterValueException$Code": null, "MissingParameterValueException$Message": null, "MissingParameterValueException$Type": "

", "MissingParameterValueException$Context": "

", "ProtectedResource$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", + "PutRestoreValidationResultInput$ValidationStatusMessage": "

This is an optional message string you can input to describe the validation status for the restore test validation.

", "RecoveryPointByBackupVault$StatusMessage": "

A message explaining the reason of the recovery point deletion failure.

", "RecoveryPointByBackupVault$CompositeMemberIdentifier": "

This is the identifier of a resource within a composite group, such as nested (child) recovery point belonging to a composite (parent) stack. The ID is transferred from the logical ID within a stack.

", "RecoveryPointByBackupVault$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", @@ -2055,6 +2610,8 @@ "RestoreJobsListMember$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

", "RestoreJobsListMember$StatusMessage": "

A detailed message explaining the status of the job to restore a recovery point.

", "RestoreJobsListMember$PercentDone": "

Contains an estimated percentage complete of a job at the time the job status was queried.

", + "RestoreJobsListMember$ValidationStatusMessage": "

This describes the status of validation run on the indicated restore job.

", + "RestoreJobsListMember$DeletionStatusMessage": "

This describes the restore job deletion status.

", "ServiceUnavailableException$Code": null, "ServiceUnavailableException$Message": null, "ServiceUnavailableException$Type": "

", @@ -2085,7 +2642,12 @@ "ReportSetting$FrameworkArns": "

The Amazon Resource Names (ARNs) of the frameworks a report covers.

", "ReportSetting$Accounts": "

These are the accounts to be included in the report.

", "ReportSetting$OrganizationUnits": "

These are the Organizational Units to be included in the report.

", - "ReportSetting$Regions": "

These are the Regions to be included in the report.

" + "ReportSetting$Regions": "

These are the Regions to be included in the report.

", + "RestoreTestingRecoveryPointSelection$ExcludeVaults": "

Accepted values include specific ARNs or list of selectors. Defaults to empty list if not listed.

", + "RestoreTestingRecoveryPointSelection$IncludeVaults": "

Accepted values include wildcard [\"*\"] or by specific ARNs or ARN wilcard replacement [\"arn:aws:backup:us-west-2:123456789012:backup-vault:asdf\", ...] [\"arn:aws:backup:*:*:backup-vault:asdf-*\", ...]

", + "RestoreTestingSelectionForCreate$ProtectedResourceArns": "

Each protected resource can be filtered by its specific ARNs, such as ProtectedResourceArns: [\"arn:aws:...\", \"arn:aws:...\"] or by a wildcard: ProtectedResourceArns: [\"*\"], but not both.

", + "RestoreTestingSelectionForGet$ProtectedResourceArns": "

You can include specific ARNs, such as ProtectedResourceArns: [\"arn:aws:...\", \"arn:aws:...\"] or you can include a wildcard: ProtectedResourceArns: [\"*\"], but not both.

", + "RestoreTestingSelectionForUpdate$ProtectedResourceArns": "

You can include a list of specific ARNs, such as ProtectedResourceArns: [\"arn:aws:...\", \"arn:aws:...\"] or you can include a wildcard: ProtectedResourceArns: [\"*\"], but not both.

" } }, "stringMap": { @@ -2093,7 +2655,8 @@ "refs": { "ControlScope$Tags": "

The tag key-value pair applied to those Amazon Web Services resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided. The tag value is optional, but it cannot be an empty string. The structure to assign a tag is: [{\"Key\":\"string\",\"Value\":\"string\"}].

", "CreateFrameworkInput$FrameworkTags": "

Metadata that you can assign to help organize the frameworks that you create. Each tag is a key-value pair.

", - "CreateReportPlanInput$ReportPlanTags": "

Metadata that you can assign to help organize the report plans that you create. Each tag is a key-value pair.

" + "CreateReportPlanInput$ReportPlanTags": "

Metadata that you can assign to help organize the report plans that you create. Each tag is a key-value pair.

", + "GetRestoreTestingInferredMetadataOutput$InferredMetadata": "

This is a string map of the metadata inferred from the request.

" } }, "timestamp": { @@ -2103,6 +2666,9 @@ "BackupJob$CompletionDate": "

The date and time a job to create a backup job is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupJob$ExpectedCompletionDate": "

The date and time a job to back up resources is expected to be completed, in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupJob$StartBy": "

Specifies the time in Unix format and Coordinated Universal Time (UTC) when a backup job must be started before it is canceled. The value is calculated by adding the start window to the scheduled time. So if the scheduled time were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 PM on the date specified. The value of StartBy is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "BackupJob$InitiationDate": "

This is the date on which the backup job was initiated.

", + "BackupJobSummary$StartTime": "

The value of time in number format of a job start time.

This value is the time in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "BackupJobSummary$EndTime": "

The value of time in number format of a job end time.

This value is the time in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupPlansListMember$CreationDate": "

The date and time a resource backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupPlansListMember$DeletionDate": "

The date and time a backup plan is deleted, in Unix format and Coordinated Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupPlansListMember$LastExecutionDate": "

The last time a job to back up resources was run with this rule. A date and time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", @@ -2113,6 +2679,8 @@ "CalculatedLifecycle$DeleteAt": "

A timestamp that specifies when to delete a recovery point.

", "CopyJob$CreationDate": "

The date and time a copy job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "CopyJob$CompletionDate": "

The date and time a copy job is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "CopyJobSummary$StartTime": "

The value of time in number format of a job start time.

This value is the time in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "CopyJobSummary$EndTime": "

The value of time in number format of a job end time.

This value is the time in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "CreateBackupPlanOutput$CreationDate": "

The date and time that a backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "CreateBackupSelectionOutput$CreationDate": "

The date and time a backup selection is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "CreateBackupVaultOutput$CreationDate": "

The date and time a backup vault is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", @@ -2126,16 +2694,20 @@ "DescribeBackupJobOutput$CompletionDate": "

The date and time that a job to create a backup job is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeBackupJobOutput$ExpectedCompletionDate": "

The date and time that a job to back up resources is expected to be completed, in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeBackupJobOutput$StartBy": "

Specifies the time in Unix format and Coordinated Universal Time (UTC) when a backup job must be started before it is canceled. The value is calculated by adding the start window to the scheduled time. So if the scheduled time were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 PM on the date specified. The value of StartBy is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "DescribeBackupJobOutput$InitiationDate": "

This is the date a backup job was initiated.

", "DescribeBackupVaultOutput$CreationDate": "

The date and time that a backup vault is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeBackupVaultOutput$LockDate": "

The date and time when Backup Vault Lock configuration cannot be changed or deleted.

If you applied Vault Lock to your vault without specifying a lock date, you can change any of your Vault Lock settings, or delete Vault Lock from the vault entirely, at any time.

This value is in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeFrameworkOutput$CreationTime": "

The date and time that a framework is created, in ISO 8601 representation. The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC.

", "DescribeGlobalSettingsOutput$LastUpdateTime": "

The date and time that the flag isCrossAccountBackupEnabled was last updated. This update is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeProtectedResourceOutput$LastBackupTime": "

The date and time that a resource was last backed up, in Unix format and Coordinated Universal Time (UTC). The value of LastBackupTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "DescribeProtectedResourceOutput$LatestRestoreJobCreationDate": "

This is the creation date of the most recent restore job.

", + "DescribeProtectedResourceOutput$LatestRestoreRecoveryPointCreationDate": "

This is the date the most recent recovery point was created.

", "DescribeRecoveryPointOutput$CreationDate": "

The date and time that a recovery point is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRecoveryPointOutput$CompletionDate": "

The date and time that a job to create a recovery point is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRecoveryPointOutput$LastRestoreTime": "

The date and time that a recovery point was last restored, in Unix format and Coordinated Universal Time (UTC). The value of LastRestoreTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRestoreJobOutput$CreationDate": "

The date and time that a restore job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRestoreJobOutput$CompletionDate": "

The date and time that a job to restore a recovery point is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "DescribeRestoreJobOutput$RecoveryPointCreationDate": "

This is the creation date of the recovery point made by the specifed restore job.

", "Framework$CreationTime": "

The date and time that a framework is created, in ISO 8601 representation. The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC.

", "GetBackupPlanOutput$CreationDate": "

The date and time that a backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "GetBackupPlanOutput$DeletionDate": "

The date and time that a backup plan is deleted, in Unix format and Coordinated Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", @@ -2158,6 +2730,8 @@ "ListRecoveryPointsByBackupVaultInput$ByCreatedAfter": "

Returns only recovery points that were created after the specified timestamp.

", "ListReportJobsInput$ByCreationBefore": "

Returns only report jobs that were created before the date and time specified in Unix format and Coordinated Universal Time (UTC). For example, the value 1516925490 represents Friday, January 26, 2018 12:11:30 AM.

", "ListReportJobsInput$ByCreationAfter": "

Returns only report jobs that were created after the date and time specified in Unix format and Coordinated Universal Time (UTC). For example, the value 1516925490 represents Friday, January 26, 2018 12:11:30 AM.

", + "ListRestoreJobsByProtectedResourceInput$ByRecoveryPointCreationDateAfter": "

Returns only restore jobs of recovery points that were created after the specified date.

", + "ListRestoreJobsByProtectedResourceInput$ByRecoveryPointCreationDateBefore": "

Returns only restore jobs of recovery points that were created before the specified date.

", "ListRestoreJobsInput$ByCreatedBefore": "

Returns only restore jobs that were created before the specified date.

", "ListRestoreJobsInput$ByCreatedAfter": "

Returns only restore jobs that were created after the specified date.

", "ListRestoreJobsInput$ByCompleteBefore": "

Returns only copy jobs completed before a date expressed in Unix format and Coordinated Universal Time (UTC).

", @@ -2172,8 +2746,11 @@ "ReportPlan$CreationTime": "

The date and time that a report plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "ReportPlan$LastAttemptedExecutionTime": "

The date and time that a report job associated with this report plan last attempted to run, in Unix format and Coordinated Universal Time (UTC). The value of LastAttemptedExecutionTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "ReportPlan$LastSuccessfulExecutionTime": "

The date and time that a report job associated with this report plan last successfully ran, in Unix format and Coordinated Universal Time (UTC). The value of LastSuccessfulExecutionTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreJobSummary$StartTime": "

The value of time in number format of a job start time.

This value is the time in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreJobSummary$EndTime": "

The value of time in number format of a job end time.

This value is the time in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "RestoreJobsListMember$CreationDate": "

The date and time a restore job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "RestoreJobsListMember$CompletionDate": "

The date and time a job to restore a recovery point is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreJobsListMember$RecoveryPointCreationDate": "

The date on which a recovery point was created.

", "StartBackupJobOutput$CreationDate": "

The date and time that a backup job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "StartCopyJobOutput$CreationDate": "

The date and time that a copy job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "UpdateBackupPlanOutput$CreationDate": "

The date and time a backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/backup/2018-11-15/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/backup/2018-11-15/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,10 @@ { "pagination": { + "ListBackupJobSummaries": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListBackupJobs": { "input_token": "NextToken", "output_token": "NextToken", @@ -36,6 +41,11 @@ "limit_key": "MaxResults", "result_key": "BackupVaultList" }, + "ListCopyJobSummaries": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListCopyJobs": { "input_token": "NextToken", "output_token": "NextToken", @@ -93,12 +103,35 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListRestoreJobSummaries": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListRestoreJobs": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "RestoreJobs" }, + "ListRestoreJobsByProtectedResource": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RestoreJobs" + }, + "ListRestoreTestingPlans": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RestoreTestingPlans" + }, + "ListRestoreTestingSelections": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RestoreTestingSelections" + }, "ListTags": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,778 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-11-26", + "endpointPrefix":"bcm-data-exports", + "jsonVersion":"1.1", + "protocol":"json", + "serviceFullName":"AWS Billing and Cost Management Data Exports", + "serviceId":"BCM Data Exports", + "signatureVersion":"v4", + "signingName":"bcm-data-exports", + "targetPrefix":"AWSBillingAndCostManagementDataExports", + "uid":"bcm-data-exports-2023-11-26" + }, + "operations":{ + "CreateExport":{ + "name":"CreateExport", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateExportRequest"}, + "output":{"shape":"CreateExportResponse"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "DeleteExport":{ + "name":"DeleteExport", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteExportRequest"}, + "output":{"shape":"DeleteExportResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, + "GetExecution":{ + "name":"GetExecution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetExecutionRequest"}, + "output":{"shape":"GetExecutionResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "GetExport":{ + "name":"GetExport", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetExportRequest"}, + "output":{"shape":"GetExportResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "GetTable":{ + "name":"GetTable", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTableRequest"}, + "output":{"shape":"GetTableResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "ListExecutions":{ + "name":"ListExecutions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListExecutionsRequest"}, + "output":{"shape":"ListExecutionsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "ListExports":{ + "name":"ListExports", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListExportsRequest"}, + "output":{"shape":"ListExportsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "ListTables":{ + "name":"ListTables", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTablesRequest"}, + "output":{"shape":"ListTablesResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "UpdateExport":{ + "name":"UpdateExport", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateExportRequest"}, + "output":{"shape":"UpdateExportResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + } + }, + "shapes":{ + "Arn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z0-9]*:[-a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+$" + }, + "Column":{ + "type":"structure", + "members":{ + "Description":{"shape":"GenericString"}, + "Name":{"shape":"GenericString"}, + "Type":{"shape":"GenericString"} + } + }, + "ColumnList":{ + "type":"list", + "member":{"shape":"Column"} + }, + "CompressionOption":{ + "type":"string", + "enum":[ + "GZIP", + "PARQUET" + ] + }, + "CreateExportRequest":{ + "type":"structure", + "required":["Export"], + "members":{ + "Export":{"shape":"Export"}, + "ResourceTags":{"shape":"ResourceTagList"} + } + }, + "CreateExportResponse":{ + "type":"structure", + "members":{ + "ExportArn":{"shape":"Arn"} + } + }, + "DataQuery":{ + "type":"structure", + "required":["QueryStatement"], + "members":{ + "QueryStatement":{"shape":"QueryStatement"}, + "TableConfigurations":{"shape":"TableConfigurations"} + } + }, + "DeleteExportRequest":{ + "type":"structure", + "required":["ExportArn"], + "members":{ + "ExportArn":{"shape":"Arn"} + } + }, + "DeleteExportResponse":{ + "type":"structure", + "members":{ + "ExportArn":{"shape":"Arn"} + } + }, + "DestinationConfigurations":{ + "type":"structure", + "required":["S3Destination"], + "members":{ + "S3Destination":{"shape":"S3Destination"} + } + }, + "ExecutionReference":{ + "type":"structure", + "required":[ + "ExecutionId", + "ExecutionStatus" + ], + "members":{ + "ExecutionId":{"shape":"GenericString"}, + "ExecutionStatus":{"shape":"ExecutionStatus"} + } + }, + "ExecutionReferenceList":{ + "type":"list", + "member":{"shape":"ExecutionReference"} + }, + "ExecutionStatus":{ + "type":"structure", + "members":{ + "CompletedAt":{"shape":"SyntheticTimestamp_date_time"}, + "CreatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "LastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "StatusCode":{"shape":"ExecutionStatusCode"}, + "StatusReason":{"shape":"ExecutionStatusReason"} + } + }, + "ExecutionStatusCode":{ + "type":"string", + "enum":[ + "INITIATION_IN_PROCESS", + "QUERY_QUEUED", + "QUERY_IN_PROCESS", + "QUERY_FAILURE", + "DELIVERY_IN_PROCESS", + "DELIVERY_SUCCESS", + "DELIVERY_FAILURE" + ] + }, + "ExecutionStatusReason":{ + "type":"string", + "enum":[ + "INSUFFICIENT_PERMISSION", + "BILL_OWNER_CHANGED", + "INTERNAL_FAILURE" + ] + }, + "Export":{ + "type":"structure", + "required":[ + "DataQuery", + "DestinationConfigurations", + "Name", + "RefreshCadence" + ], + "members":{ + "DataQuery":{"shape":"DataQuery"}, + "Description":{"shape":"GenericString"}, + "DestinationConfigurations":{"shape":"DestinationConfigurations"}, + "ExportArn":{"shape":"Arn"}, + "Name":{"shape":"ExportName"}, + "RefreshCadence":{"shape":"RefreshCadence"} + } + }, + "ExportName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[0-9A-Za-z!\\-_.*\\'()]+$" + }, + "ExportReference":{ + "type":"structure", + "required":[ + "ExportArn", + "ExportName", + "ExportStatus" + ], + "members":{ + "ExportArn":{"shape":"Arn"}, + "ExportName":{"shape":"ExportName"}, + "ExportStatus":{"shape":"ExportStatus"} + } + }, + "ExportReferenceList":{ + "type":"list", + "member":{"shape":"ExportReference"} + }, + "ExportStatus":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "LastRefreshedAt":{"shape":"SyntheticTimestamp_date_time"}, + "LastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "StatusCode":{"shape":"ExportStatusCode"}, + "StatusReason":{"shape":"ExecutionStatusReason"} + } + }, + "ExportStatusCode":{ + "type":"string", + "enum":[ + "HEALTHY", + "UNHEALTHY" + ] + }, + "FormatOption":{ + "type":"string", + "enum":[ + "TEXT_OR_CSV", + "PARQUET" + ] + }, + "FrequencyOption":{ + "type":"string", + "enum":["SYNCHRONOUS"] + }, + "GenericString":{ + "type":"string", + "max":1024, + "min":0, + "pattern":"^[\\S\\s]*$" + }, + "GenericStringList":{ + "type":"list", + "member":{"shape":"GenericString"} + }, + "GetExecutionRequest":{ + "type":"structure", + "required":[ + "ExecutionId", + "ExportArn" + ], + "members":{ + "ExecutionId":{"shape":"GenericString"}, + "ExportArn":{"shape":"Arn"} + } + }, + "GetExecutionResponse":{ + "type":"structure", + "members":{ + "ExecutionId":{"shape":"GenericString"}, + "ExecutionStatus":{"shape":"ExecutionStatus"}, + "Export":{"shape":"Export"} + } + }, + "GetExportRequest":{ + "type":"structure", + "required":["ExportArn"], + "members":{ + "ExportArn":{"shape":"Arn"} + } + }, + "GetExportResponse":{ + "type":"structure", + "members":{ + "Export":{"shape":"Export"}, + "ExportStatus":{"shape":"ExportStatus"} + } + }, + "GetTableRequest":{ + "type":"structure", + "required":["TableName"], + "members":{ + "TableName":{"shape":"TableName"}, + "TableProperties":{"shape":"TableProperties"} + } + }, + "GetTableResponse":{ + "type":"structure", + "members":{ + "Description":{"shape":"GenericString"}, + "Schema":{"shape":"ColumnList"}, + "TableName":{"shape":"TableName"}, + "TableProperties":{"shape":"TableProperties"} + } + }, + "InternalServerException":{ + "type":"structure", + "required":["Message"], + "members":{ + "Message":{"shape":"GenericString"} + }, + "exception":true, + "fault":true + }, + "ListExecutionsRequest":{ + "type":"structure", + "required":["ExportArn"], + "members":{ + "ExportArn":{"shape":"Arn"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextPageToken"} + } + }, + "ListExecutionsResponse":{ + "type":"structure", + "members":{ + "Executions":{"shape":"ExecutionReferenceList"}, + "NextToken":{"shape":"NextPageToken"} + } + }, + "ListExportsRequest":{ + "type":"structure", + "members":{ + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextPageToken"} + } + }, + "ListExportsResponse":{ + "type":"structure", + "members":{ + "Exports":{"shape":"ExportReferenceList"}, + "NextToken":{"shape":"NextPageToken"} + } + }, + "ListTablesRequest":{ + "type":"structure", + "members":{ + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextPageToken"} + } + }, + "ListTablesResponse":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"NextPageToken"}, + "Tables":{"shape":"TableList"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceArn"], + "members":{ + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextPageToken"}, + "ResourceArn":{"shape":"Arn"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"NextPageToken"}, + "ResourceTags":{"shape":"ResourceTagList"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "min":1 + }, + "NextPageToken":{ + "type":"string", + "max":8192, + "min":0, + "pattern":"^[\\S\\s]*$" + }, + "OverwriteOption":{ + "type":"string", + "enum":[ + "CREATE_NEW_REPORT", + "OVERWRITE_REPORT" + ] + }, + "QueryStatement":{ + "type":"string", + "max":36000, + "min":1, + "pattern":"^[\\S\\s]*$" + }, + "RefreshCadence":{ + "type":"structure", + "required":["Frequency"], + "members":{ + "Frequency":{"shape":"FrequencyOption"} + } + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":[ + "Message", + "ResourceId", + "ResourceType" + ], + "members":{ + "Message":{"shape":"GenericString"}, + "ResourceId":{"shape":"GenericString"}, + "ResourceType":{"shape":"GenericString"} + }, + "exception":true + }, + "ResourceTag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"ResourceTagKey"}, + "Value":{"shape":"ResourceTagValue"} + } + }, + "ResourceTagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "ResourceTagKeyList":{ + "type":"list", + "member":{"shape":"ResourceTagKey"}, + "max":200, + "min":0 + }, + "ResourceTagList":{ + "type":"list", + "member":{"shape":"ResourceTag"}, + "max":200, + "min":0 + }, + "ResourceTagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "S3Destination":{ + "type":"structure", + "required":[ + "S3Bucket", + "S3OutputConfigurations", + "S3Prefix", + "S3Region" + ], + "members":{ + "S3Bucket":{"shape":"GenericString"}, + "S3OutputConfigurations":{"shape":"S3OutputConfigurations"}, + "S3Prefix":{"shape":"GenericString"}, + "S3Region":{"shape":"GenericString"} + } + }, + "S3OutputConfigurations":{ + "type":"structure", + "required":[ + "Compression", + "Format", + "OutputType", + "Overwrite" + ], + "members":{ + "Compression":{"shape":"CompressionOption"}, + "Format":{"shape":"FormatOption"}, + "OutputType":{"shape":"S3OutputType"}, + "Overwrite":{"shape":"OverwriteOption"} + } + }, + "S3OutputType":{ + "type":"string", + "enum":["CUSTOM"] + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":[ + "Message", + "QuotaCode", + "ServiceCode" + ], + "members":{ + "Message":{"shape":"GenericString"}, + "QuotaCode":{"shape":"GenericString"}, + "ResourceId":{"shape":"GenericString"}, + "ResourceType":{"shape":"GenericString"}, + "ServiceCode":{"shape":"GenericString"} + }, + "exception":true + }, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "Table":{ + "type":"structure", + "members":{ + "Description":{"shape":"GenericString"}, + "TableName":{"shape":"TableName"}, + "TableProperties":{"shape":"TablePropertyDescriptionList"} + } + }, + "TableConfigurations":{ + "type":"map", + "key":{"shape":"TableName"}, + "value":{"shape":"TableProperties"} + }, + "TableList":{ + "type":"list", + "member":{"shape":"Table"} + }, + "TableName":{ + "type":"string", + "max":1024, + "min":0, + "pattern":"^[\\S\\s]*$" + }, + "TableProperties":{ + "type":"map", + "key":{"shape":"TableProperty"}, + "value":{"shape":"GenericString"} + }, + "TableProperty":{ + "type":"string", + "max":1024, + "min":0, + "pattern":"^[\\S\\s]*$" + }, + "TablePropertyDescription":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"GenericString"}, + "Description":{"shape":"GenericString"}, + "Name":{"shape":"GenericString"}, + "ValidValues":{"shape":"GenericStringList"} + } + }, + "TablePropertyDescriptionList":{ + "type":"list", + "member":{"shape":"TablePropertyDescription"} + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceArn", + "ResourceTags" + ], + "members":{ + "ResourceArn":{"shape":"Arn"}, + "ResourceTags":{"shape":"ResourceTagList"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "ThrottlingException":{ + "type":"structure", + "required":["Message"], + "members":{ + "Message":{"shape":"GenericString"}, + "QuotaCode":{"shape":"GenericString"}, + "ServiceCode":{"shape":"GenericString"} + }, + "exception":true + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceArn", + "ResourceTagKeys" + ], + "members":{ + "ResourceArn":{"shape":"Arn"}, + "ResourceTagKeys":{"shape":"ResourceTagKeyList"} + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateExportRequest":{ + "type":"structure", + "required":[ + "Export", + "ExportArn" + ], + "members":{ + "Export":{"shape":"Export"}, + "ExportArn":{"shape":"Arn"} + } + }, + "UpdateExportResponse":{ + "type":"structure", + "members":{ + "ExportArn":{"shape":"Arn"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["Message"], + "members":{ + "Fields":{"shape":"ValidationExceptionFieldList"}, + "Message":{"shape":"GenericString"}, + "Reason":{"shape":"ValidationExceptionReason"} + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "Message", + "Name" + ], + "members":{ + "Message":{"shape":"GenericString"}, + "Name":{"shape":"GenericString"} + } + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "unknownOperation", + "cannotParse", + "fieldValidationFailed", + "other" + ] + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,514 @@ +{ + "version": "2.0", + "service": "

You can use the Data Exports API to create customized exports from multiple Amazon Web Services cost management and billing datasets, such as cost and usage data and cost optimization recommendations.

The Data Exports API provides the following endpoint:

  • https://bcm-data-exports.us-east-1.api.aws

", + "operations": { + "CreateExport": "

Creates a data export and specifies the data query, the delivery preference, and any optional resource tags.

A DataQuery consists of both a QueryStatement and TableConfigurations.

The QueryStatement is an SQL statement. Data Exports only supports a limited subset of the SQL syntax. For more information on the SQL syntax that is supported, see Data query. To view the available tables and columns, see the Data Exports table dictionary.

The TableConfigurations is a collection of specified TableProperties for the table being queried in the QueryStatement. TableProperties are additional configurations you can provide to change the data and schema of a table. Each table can have different TableProperties. However, tables are not required to have any TableProperties. Each table property has a default value that it assumes if not specified. For more information on table configurations, see Data query. To view the table properties available for each table, see the Data Exports table dictionary or use the ListTables API to get a response of all tables and their available properties.

", + "DeleteExport": "

Deletes an existing data export.

", + "GetExecution": "

Exports data based on the source data update.

", + "GetExport": "

Views the definition of an existing data export.

", + "GetTable": "

Returns the metadata for the specified table and table properties. This includes the list of columns in the table schema, their data types, and column descriptions.

", + "ListExecutions": "

Lists the historical executions for the export.

", + "ListExports": "

Lists all data export definitions.

", + "ListTables": "

Lists all available tables in data exports.

", + "ListTagsForResource": "

List tags associated with an existing data export.

", + "TagResource": "

Adds tags for an existing data export definition.

", + "UntagResource": "

Deletes tags associated with an existing data export definition.

", + "UpdateExport": "

Updates an existing data export by overwriting all export parameters. All export parameters must be provided in the UpdateExport request.

" + }, + "shapes": { + "Arn": { + "base": null, + "refs": { + "CreateExportResponse$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "DeleteExportRequest$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "DeleteExportResponse$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "Export$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "ExportReference$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "GetExecutionRequest$ExportArn": "

The Amazon Resource Name (ARN) of the Export object that generated this specific execution.

", + "GetExportRequest$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "ListExecutionsRequest$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "ListTagsForResourceRequest$ResourceArn": "

The unique identifier for the resource.

", + "TagResourceRequest$ResourceArn": "

The unique identifier for the resource.

", + "UntagResourceRequest$ResourceArn": "

The unique identifier for the resource.

", + "UpdateExportRequest$ExportArn": "

The Amazon Resource Name (ARN) for this export.

", + "UpdateExportResponse$ExportArn": "

The Amazon Resource Name (ARN) for this export.

" + } + }, + "Column": { + "base": "

Includes basic information for a data column such as its description, name, and type.

", + "refs": { + "ColumnList$member": null + } + }, + "ColumnList": { + "base": null, + "refs": { + "GetTableResponse$Schema": "

The schema of the table.

" + } + }, + "CompressionOption": { + "base": null, + "refs": { + "S3OutputConfigurations$Compression": "

The compression type for the data export.

" + } + }, + "CreateExportRequest": { + "base": null, + "refs": { + } + }, + "CreateExportResponse": { + "base": null, + "refs": { + } + }, + "DataQuery": { + "base": "

The SQL query of column selections and row filters from the data table you want.

", + "refs": { + "Export$DataQuery": "

The data query for this specific data export.

" + } + }, + "DeleteExportRequest": { + "base": null, + "refs": { + } + }, + "DeleteExportResponse": { + "base": null, + "refs": { + } + }, + "DestinationConfigurations": { + "base": "

The destinations used for data exports.

", + "refs": { + "Export$DestinationConfigurations": "

The destination configuration for this specific data export.

" + } + }, + "ExecutionReference": { + "base": "

The reference for the data export update.

", + "refs": { + "ExecutionReferenceList$member": null + } + }, + "ExecutionReferenceList": { + "base": null, + "refs": { + "ListExecutionsResponse$Executions": "

The list of executions.

" + } + }, + "ExecutionStatus": { + "base": "

The status of the execution.

", + "refs": { + "ExecutionReference$ExecutionStatus": "

The status of this specific execution.

", + "GetExecutionResponse$ExecutionStatus": "

The status of this specific execution.

" + } + }, + "ExecutionStatusCode": { + "base": null, + "refs": { + "ExecutionStatus$StatusCode": "

The code for the status of the execution.

" + } + }, + "ExecutionStatusReason": { + "base": null, + "refs": { + "ExecutionStatus$StatusReason": "

The reason for the failed status.

", + "ExportStatus$StatusReason": "

The description for the status code.

" + } + }, + "Export": { + "base": "

The details that are available for an export.

", + "refs": { + "CreateExportRequest$Export": "

The details of the export, including data query, name, description, and destination configuration.

", + "GetExecutionResponse$Export": "

The export data for this specific execution. This export data is a snapshot from when the execution was generated. The data could be different from the current export data if the export was updated since the execution was generated.

", + "GetExportResponse$Export": "

The data for this specific export.

", + "UpdateExportRequest$Export": "

The name and query details for the export.

" + } + }, + "ExportName": { + "base": null, + "refs": { + "Export$Name": "

The name of this specific data export.

", + "ExportReference$ExportName": "

The name of this specific data export.

" + } + }, + "ExportReference": { + "base": "

The reference details for a given export.

", + "refs": { + "ExportReferenceList$member": null + } + }, + "ExportReferenceList": { + "base": null, + "refs": { + "ListExportsResponse$Exports": "

The details of the exports, including name and export status.

" + } + }, + "ExportStatus": { + "base": "

The status of the data export.

", + "refs": { + "ExportReference$ExportStatus": "

The status of this specific data export.

", + "GetExportResponse$ExportStatus": "

The status of this specific export.

" + } + }, + "ExportStatusCode": { + "base": null, + "refs": { + "ExportStatus$StatusCode": "

The status code for the request.

" + } + }, + "FormatOption": { + "base": null, + "refs": { + "S3OutputConfigurations$Format": "

The file format for the data export.

" + } + }, + "FrequencyOption": { + "base": null, + "refs": { + "RefreshCadence$Frequency": "

The frequency that data exports are updated. The export refreshes each time the source data updates, up to three times daily.

" + } + }, + "GenericString": { + "base": null, + "refs": { + "Column$Description": "

The description for a column.

", + "Column$Name": "

The column name.

", + "Column$Type": "

The kind of data a column stores.

", + "ExecutionReference$ExecutionId": "

The ID for this specific execution.

", + "Export$Description": "

The description for this specific data export.

", + "GenericStringList$member": null, + "GetExecutionRequest$ExecutionId": "

The ID for this specific execution.

", + "GetExecutionResponse$ExecutionId": "

The ID for this specific execution.

", + "GetTableResponse$Description": "

The table description.

", + "InternalServerException$Message": null, + "ResourceNotFoundException$Message": null, + "ResourceNotFoundException$ResourceId": "

The identifier of the resource that was not found.

", + "ResourceNotFoundException$ResourceType": "

The type of the resource that was not found.

", + "S3Destination$S3Bucket": "

The name of the Amazon S3 bucket used as the destination of a data export file.

", + "S3Destination$S3Prefix": "

The S3 path prefix you want prepended to the name of your data export.

", + "S3Destination$S3Region": "

The S3 bucket Region.

", + "ServiceQuotaExceededException$Message": null, + "ServiceQuotaExceededException$QuotaCode": "

The quota code that was exceeded.

", + "ServiceQuotaExceededException$ResourceId": "

The identifier of the resource that exceeded quota.

", + "ServiceQuotaExceededException$ResourceType": "

The type of the resource that exceeded quota.

", + "ServiceQuotaExceededException$ServiceCode": "

The service code that exceeded quota. It will always be “AWSBillingAndCostManagementDataExports”.

", + "Table$Description": "

The description for the table.

", + "TableProperties$value": null, + "TablePropertyDescription$DefaultValue": "

The default value for the table.

", + "TablePropertyDescription$Description": "

The description for the table.

", + "TablePropertyDescription$Name": "

The name of the table.

", + "ThrottlingException$Message": null, + "ThrottlingException$QuotaCode": "

The quota code that exceeded the throttling limit.

", + "ThrottlingException$ServiceCode": "

The service code that exceeded the throttling limit. It will always be “AWSBillingAndCostManagementDataExports”.

", + "ValidationException$Message": null, + "ValidationExceptionField$Message": "

A message with the reason for the validation exception error.

", + "ValidationExceptionField$Name": "

The field name where the invalid entry was detected.

" + } + }, + "GenericStringList": { + "base": null, + "refs": { + "TablePropertyDescription$ValidValues": "

The valid values for the table.

" + } + }, + "GetExecutionRequest": { + "base": null, + "refs": { + } + }, + "GetExecutionResponse": { + "base": null, + "refs": { + } + }, + "GetExportRequest": { + "base": null, + "refs": { + } + }, + "GetExportResponse": { + "base": null, + "refs": { + } + }, + "GetTableRequest": { + "base": null, + "refs": { + } + }, + "GetTableResponse": { + "base": null, + "refs": { + } + }, + "InternalServerException": { + "base": "

An error on the server occurred during the processing of your request. Try again later.

", + "refs": { + } + }, + "ListExecutionsRequest": { + "base": null, + "refs": { + } + }, + "ListExecutionsResponse": { + "base": null, + "refs": { + } + }, + "ListExportsRequest": { + "base": null, + "refs": { + } + }, + "ListExportsResponse": { + "base": null, + "refs": { + } + }, + "ListTablesRequest": { + "base": null, + "refs": { + } + }, + "ListTablesResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListExecutionsRequest$MaxResults": "

The maximum number of objects that are returned for the request.

", + "ListExportsRequest$MaxResults": "

The maximum number of objects that are returned for the request.

", + "ListTablesRequest$MaxResults": "

The maximum number of objects that are returned for the request.

", + "ListTagsForResourceRequest$MaxResults": "

The maximum number of objects that are returned for the request.

" + } + }, + "NextPageToken": { + "base": null, + "refs": { + "ListExecutionsRequest$NextToken": "

The token to retrieve the next set of results.

", + "ListExecutionsResponse$NextToken": "

The token to retrieve the next set of results.

", + "ListExportsRequest$NextToken": "

The token to retrieve the next set of results.

", + "ListExportsResponse$NextToken": "

The token to retrieve the next set of results.

", + "ListTablesRequest$NextToken": "

The token to retrieve the next set of results.

", + "ListTablesResponse$NextToken": "

The token to retrieve the next set of results.

", + "ListTagsForResourceRequest$NextToken": "

The token to retrieve the next set of results.

", + "ListTagsForResourceResponse$NextToken": "

The token to retrieve the next set of results.

" + } + }, + "OverwriteOption": { + "base": null, + "refs": { + "S3OutputConfigurations$Overwrite": "

The rule to follow when generating a version of the data export file. You have the choice to overwrite the previous version or to be delivered in addition to the previous versions. Overwriting exports can save on Amazon S3 storage costs. Creating new export versions allows you to track the changes in cost and usage data over time.

" + } + }, + "QueryStatement": { + "base": null, + "refs": { + "DataQuery$QueryStatement": "

The query statement.

" + } + }, + "RefreshCadence": { + "base": "

The cadence for Amazon Web Services to update the data export in your S3 bucket.

", + "refs": { + "Export$RefreshCadence": "

The cadence for Amazon Web Services to update the export in your S3 bucket.

" + } + }, + "ResourceNotFoundException": { + "base": "

The specified Amazon Resource Name (ARN) in the request doesn't exist.

", + "refs": { + } + }, + "ResourceTag": { + "base": "

The tag structure that contains a tag key and value.

", + "refs": { + "ResourceTagList$member": null + } + }, + "ResourceTagKey": { + "base": null, + "refs": { + "ResourceTag$Key": "

The key that's associated with the tag.

", + "ResourceTagKeyList$member": null + } + }, + "ResourceTagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$ResourceTagKeys": "

The tag keys that are associated with the resource ARN.

" + } + }, + "ResourceTagList": { + "base": null, + "refs": { + "CreateExportRequest$ResourceTags": "

An optional list of tags to associate with the specified export. Each tag consists of a key and a value, and each key must be unique for the resource.

", + "ListTagsForResourceResponse$ResourceTags": "

An optional list of tags to associate with the specified export. Each tag consists of a key and a value, and each key must be unique for the resource.

", + "TagResourceRequest$ResourceTags": "

The tags to associate with the resource. Each tag consists of a key and a value, and each key must be unique for the resource.

" + } + }, + "ResourceTagValue": { + "base": null, + "refs": { + "ResourceTag$Value": "

The value that's associated with the tag.

" + } + }, + "S3Destination": { + "base": "

Describes the destination Amazon Simple Storage Service (Amazon S3) bucket name and object keys of a data exports file.

", + "refs": { + "DestinationConfigurations$S3Destination": "

An object that describes the destination of the data exports file.

" + } + }, + "S3OutputConfigurations": { + "base": "

The compression type, file format, and overwrite preference for the data export.

", + "refs": { + "S3Destination$S3OutputConfigurations": "

The output configuration for the data export.

" + } + }, + "S3OutputType": { + "base": null, + "refs": { + "S3OutputConfigurations$OutputType": "

The output type for the data export.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

You've reached the limit on the number of resources you can create, or exceeded the size of an individual resource.

", + "refs": { + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "ExecutionStatus$CompletedAt": "

The time when the execution was completed.

", + "ExecutionStatus$CreatedAt": "

The time when the execution was created.

", + "ExecutionStatus$LastUpdatedAt": "

The time when the execution was last updated.

", + "ExportStatus$CreatedAt": "

The timestamp of when the export was created.

", + "ExportStatus$LastRefreshedAt": "

The timestamp of when the export was last generated.

", + "ExportStatus$LastUpdatedAt": "

The timestamp of when the export was updated.

" + } + }, + "Table": { + "base": "

The details for the data export table.

", + "refs": { + "TableList$member": null + } + }, + "TableConfigurations": { + "base": null, + "refs": { + "DataQuery$TableConfigurations": "

The table configuration.

" + } + }, + "TableList": { + "base": null, + "refs": { + "ListTablesResponse$Tables": "

The list of tables.

" + } + }, + "TableName": { + "base": null, + "refs": { + "GetTableRequest$TableName": "

The name of the table.

", + "GetTableResponse$TableName": "

The name of the table.

", + "Table$TableName": "

The name of the table.

", + "TableConfigurations$key": null + } + }, + "TableProperties": { + "base": null, + "refs": { + "GetTableRequest$TableProperties": "

TableProperties are additional configurations you can provide to change the data and schema of a table. Each table can have different TableProperties. Tables are not required to have any TableProperties. Each table property has a default value that it assumes if not specified.

", + "GetTableResponse$TableProperties": "

TableProperties are additional configurations you can provide to change the data and schema of a table. Each table can have different TableProperties. Tables are not required to have any TableProperties. Each table property has a default value that it assumes if not specified.

", + "TableConfigurations$value": null + } + }, + "TableProperty": { + "base": null, + "refs": { + "TableProperties$key": null + } + }, + "TablePropertyDescription": { + "base": "

The properties for the data export table.

", + "refs": { + "TablePropertyDescriptionList$member": null + } + }, + "TablePropertyDescriptionList": { + "base": null, + "refs": { + "Table$TableProperties": "

The properties for the table.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateExportRequest": { + "base": null, + "refs": { + } + }, + "UpdateExportResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

The input failed to meet the constraints specified by the Amazon Web Services service in a specified field.

", + "refs": { + "ValidationExceptionFieldList$member": null + } + }, + "ValidationExceptionFieldList": { + "base": null, + "refs": { + "ValidationException$Fields": "

The list of fields that are invalid.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$Reason": "

The reason for the validation exception.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,338 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bcm-data-exports-fips.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://bcm-data-exports.us-east-1.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "bcm-data-exports", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bcm-data-exports-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://bcm-data-exports.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bcm-data-exports-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://bcm-data-exports.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,149 @@ +{ + "testCases": [ + { + "documentation": "For region aws-global with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "bcm-data-exports", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://bcm-data-exports.us-east-1.api.aws" + } + }, + "params": { + "Region": "aws-global", + "UseFIPS": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bcm-data-exports-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "bcm-data-exports", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://bcm-data-exports.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bcm-data-exports-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bcm-data-exports.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bcm-data-exports-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bcm-data-exports.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bcm-data-exports/2023-11-26/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bcm-data-exports/2023-11-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,22 @@ +{ + "pagination": { + "ListExecutions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Executions" + }, + "ListExports": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Exports" + }, + "ListTables": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Tables" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1570 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-04-20", + "endpointPrefix":"bedrock", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon Bedrock", + "serviceId":"Bedrock", + "signatureVersion":"v4", + "signingName":"bedrock", + "uid":"bedrock-2023-04-20" + }, + "operations":{ + "CreateModelCustomizationJob":{ + "name":"CreateModelCustomizationJob", + "http":{ + "method":"POST", + "requestUri":"/model-customization-jobs", + "responseCode":201 + }, + "input":{"shape":"CreateModelCustomizationJobRequest"}, + "output":{"shape":"CreateModelCustomizationJobResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"TooManyTagsException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "CreateProvisionedModelThroughput":{ + "name":"CreateProvisionedModelThroughput", + "http":{ + "method":"POST", + "requestUri":"/provisioned-model-throughput", + "responseCode":201 + }, + "input":{"shape":"CreateProvisionedModelThroughputRequest"}, + "output":{"shape":"CreateProvisionedModelThroughputResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"TooManyTagsException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "DeleteCustomModel":{ + "name":"DeleteCustomModel", + "http":{ + "method":"DELETE", + "requestUri":"/custom-models/{modelIdentifier}", + "responseCode":200 + }, + "input":{"shape":"DeleteCustomModelRequest"}, + "output":{"shape":"DeleteCustomModelResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "DeleteModelInvocationLoggingConfiguration":{ + "name":"DeleteModelInvocationLoggingConfiguration", + "http":{ + "method":"DELETE", + "requestUri":"/logging/modelinvocations", + "responseCode":200 + }, + "input":{"shape":"DeleteModelInvocationLoggingConfigurationRequest"}, + "output":{"shape":"DeleteModelInvocationLoggingConfigurationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "DeleteProvisionedModelThroughput":{ + "name":"DeleteProvisionedModelThroughput", + "http":{ + "method":"DELETE", + "requestUri":"/provisioned-model-throughput/{provisionedModelId}", + "responseCode":200 + }, + "input":{"shape":"DeleteProvisionedModelThroughputRequest"}, + "output":{"shape":"DeleteProvisionedModelThroughputResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "GetCustomModel":{ + "name":"GetCustomModel", + "http":{ + "method":"GET", + "requestUri":"/custom-models/{modelIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetCustomModelRequest"}, + "output":{"shape":"GetCustomModelResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetFoundationModel":{ + "name":"GetFoundationModel", + "http":{ + "method":"GET", + "requestUri":"/foundation-models/{modelIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetFoundationModelRequest"}, + "output":{"shape":"GetFoundationModelResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetModelCustomizationJob":{ + "name":"GetModelCustomizationJob", + "http":{ + "method":"GET", + "requestUri":"/model-customization-jobs/{jobIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetModelCustomizationJobRequest"}, + "output":{"shape":"GetModelCustomizationJobResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetModelInvocationLoggingConfiguration":{ + "name":"GetModelInvocationLoggingConfiguration", + "http":{ + "method":"GET", + "requestUri":"/logging/modelinvocations", + "responseCode":200 + }, + "input":{"shape":"GetModelInvocationLoggingConfigurationRequest"}, + "output":{"shape":"GetModelInvocationLoggingConfigurationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetProvisionedModelThroughput":{ + "name":"GetProvisionedModelThroughput", + "http":{ + "method":"GET", + "requestUri":"/provisioned-model-throughput/{provisionedModelId}", + "responseCode":200 + }, + "input":{"shape":"GetProvisionedModelThroughputRequest"}, + "output":{"shape":"GetProvisionedModelThroughputResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListCustomModels":{ + "name":"ListCustomModels", + "http":{ + "method":"GET", + "requestUri":"/custom-models", + "responseCode":200 + }, + "input":{"shape":"ListCustomModelsRequest"}, + "output":{"shape":"ListCustomModelsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListFoundationModels":{ + "name":"ListFoundationModels", + "http":{ + "method":"GET", + "requestUri":"/foundation-models", + "responseCode":200 + }, + "input":{"shape":"ListFoundationModelsRequest"}, + "output":{"shape":"ListFoundationModelsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListModelCustomizationJobs":{ + "name":"ListModelCustomizationJobs", + "http":{ + "method":"GET", + "requestUri":"/model-customization-jobs", + "responseCode":200 + }, + "input":{"shape":"ListModelCustomizationJobsRequest"}, + "output":{"shape":"ListModelCustomizationJobsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListProvisionedModelThroughputs":{ + "name":"ListProvisionedModelThroughputs", + "http":{ + "method":"GET", + "requestUri":"/provisioned-model-throughputs", + "responseCode":200 + }, + "input":{"shape":"ListProvisionedModelThroughputsRequest"}, + "output":{"shape":"ListProvisionedModelThroughputsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/listTagsForResource", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "PutModelInvocationLoggingConfiguration":{ + "name":"PutModelInvocationLoggingConfiguration", + "http":{ + "method":"PUT", + "requestUri":"/logging/modelinvocations", + "responseCode":200 + }, + "input":{"shape":"PutModelInvocationLoggingConfigurationRequest"}, + "output":{"shape":"PutModelInvocationLoggingConfigurationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "StopModelCustomizationJob":{ + "name":"StopModelCustomizationJob", + "http":{ + "method":"POST", + "requestUri":"/model-customization-jobs/{jobIdentifier}/stop", + "responseCode":200 + }, + "input":{"shape":"StopModelCustomizationJobRequest"}, + "output":{"shape":"StopModelCustomizationJobResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tagResource", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"TooManyTagsException"}, + {"shape":"ThrottlingException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/untagResource", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateProvisionedModelThroughput":{ + "name":"UpdateProvisionedModelThroughput", + "http":{ + "method":"PATCH", + "requestUri":"/provisioned-model-throughput/{provisionedModelId}", + "responseCode":200 + }, + "input":{"shape":"UpdateProvisionedModelThroughputRequest"}, + "output":{"shape":"UpdateProvisionedModelThroughputResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "BaseModelIdentifier":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2})))|([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})|(([0-9a-zA-Z][_-]?)+)" + }, + "BedrockModelId":{ + "type":"string", + "max":140, + "min":0, + "pattern":"[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}(/[a-z0-9]{12}|)" + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "BrandedName":{ + "type":"string", + "max":20, + "min":1, + "pattern":".*" + }, + "BucketName":{ + "type":"string", + "max":63, + "min":3 + }, + "CloudWatchConfig":{ + "type":"structure", + "required":[ + "logGroupName", + "roleArn" + ], + "members":{ + "logGroupName":{"shape":"LogGroupName"}, + "roleArn":{"shape":"RoleArn"}, + "largeDataDeliveryS3Config":{"shape":"S3Config"} + } + }, + "CommitmentDuration":{ + "type":"string", + "enum":[ + "OneMonth", + "SixMonths" + ] + }, + "ConflictException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "CreateModelCustomizationJobRequest":{ + "type":"structure", + "required":[ + "jobName", + "customModelName", + "roleArn", + "baseModelIdentifier", + "trainingDataConfig", + "outputDataConfig", + "hyperParameters" + ], + "members":{ + "jobName":{"shape":"JobName"}, + "customModelName":{"shape":"CustomModelName"}, + "roleArn":{"shape":"RoleArn"}, + "clientRequestToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true + }, + "baseModelIdentifier":{"shape":"BaseModelIdentifier"}, + "customizationType":{"shape":"CustomizationType"}, + "customModelKmsKeyId":{"shape":"KmsKeyId"}, + "jobTags":{"shape":"TagList"}, + "customModelTags":{"shape":"TagList"}, + "trainingDataConfig":{"shape":"TrainingDataConfig"}, + "validationDataConfig":{"shape":"ValidationDataConfig"}, + "outputDataConfig":{"shape":"OutputDataConfig"}, + "hyperParameters":{"shape":"ModelCustomizationHyperParameters"}, + "vpcConfig":{"shape":"VpcConfig"} + } + }, + "CreateModelCustomizationJobResponse":{ + "type":"structure", + "required":["jobArn"], + "members":{ + "jobArn":{"shape":"ModelCustomizationJobArn"} + } + }, + "CreateProvisionedModelThroughputRequest":{ + "type":"structure", + "required":[ + "modelUnits", + "provisionedModelName", + "modelId" + ], + "members":{ + "clientRequestToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true + }, + "modelUnits":{"shape":"PositiveInteger"}, + "provisionedModelName":{"shape":"ProvisionedModelName"}, + "modelId":{"shape":"ModelIdentifier"}, + "commitmentDuration":{"shape":"CommitmentDuration"}, + "tags":{"shape":"TagList"} + } + }, + "CreateProvisionedModelThroughputResponse":{ + "type":"structure", + "required":["provisionedModelArn"], + "members":{ + "provisionedModelArn":{"shape":"ProvisionedModelArn"} + } + }, + "CustomModelArn":{ + "type":"string", + "max":1011, + "min":20, + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}/[a-z0-9]{12}" + }, + "CustomModelName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"([0-9a-zA-Z][_-]?)+" + }, + "CustomModelSummary":{ + "type":"structure", + "required":[ + "modelArn", + "modelName", + "creationTime", + "baseModelArn", + "baseModelName" + ], + "members":{ + "modelArn":{"shape":"CustomModelArn"}, + "modelName":{"shape":"CustomModelName"}, + "creationTime":{"shape":"Timestamp"}, + "baseModelArn":{"shape":"ModelArn"}, + "baseModelName":{"shape":"ModelName"}, + "customizationType":{"shape":"CustomizationType"} + } + }, + "CustomModelSummaryList":{ + "type":"list", + "member":{"shape":"CustomModelSummary"} + }, + "CustomizationType":{ + "type":"string", + "enum":[ + "FINE_TUNING", + "CONTINUED_PRE_TRAINING" + ] + }, + "DeleteCustomModelRequest":{ + "type":"structure", + "required":["modelIdentifier"], + "members":{ + "modelIdentifier":{ + "shape":"ModelIdentifier", + "location":"uri", + "locationName":"modelIdentifier" + } + } + }, + "DeleteCustomModelResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteModelInvocationLoggingConfigurationRequest":{ + "type":"structure", + "members":{ + } + }, + "DeleteModelInvocationLoggingConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteProvisionedModelThroughputRequest":{ + "type":"structure", + "required":["provisionedModelId"], + "members":{ + "provisionedModelId":{ + "shape":"ProvisionedModelId", + "location":"uri", + "locationName":"provisionedModelId" + } + } + }, + "DeleteProvisionedModelThroughputResponse":{ + "type":"structure", + "members":{ + } + }, + "ErrorMessage":{ + "type":"string", + "max":2048, + "min":0 + }, + "FineTuningJobStatus":{ + "type":"string", + "enum":[ + "InProgress", + "Completed", + "Failed", + "Stopping", + "Stopped" + ] + }, + "FoundationModelArn":{ + "type":"string", + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}" + }, + "FoundationModelDetails":{ + "type":"structure", + "required":[ + "modelArn", + "modelId" + ], + "members":{ + "modelArn":{"shape":"FoundationModelArn"}, + "modelId":{"shape":"BedrockModelId"}, + "modelName":{"shape":"BrandedName"}, + "providerName":{"shape":"BrandedName"}, + "inputModalities":{"shape":"ModelModalityList"}, + "outputModalities":{"shape":"ModelModalityList"}, + "responseStreamingSupported":{"shape":"Boolean"}, + "customizationsSupported":{"shape":"ModelCustomizationList"}, + "inferenceTypesSupported":{"shape":"InferenceTypeList"}, + "modelLifecycle":{"shape":"FoundationModelLifecycle"} + } + }, + "FoundationModelLifecycle":{ + "type":"structure", + "required":["status"], + "members":{ + "status":{"shape":"FoundationModelLifecycleStatus"} + } + }, + "FoundationModelLifecycleStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "LEGACY" + ] + }, + "FoundationModelSummary":{ + "type":"structure", + "required":[ + "modelArn", + "modelId" + ], + "members":{ + "modelArn":{"shape":"FoundationModelArn"}, + "modelId":{"shape":"BedrockModelId"}, + "modelName":{"shape":"BrandedName"}, + "providerName":{"shape":"BrandedName"}, + "inputModalities":{"shape":"ModelModalityList"}, + "outputModalities":{"shape":"ModelModalityList"}, + "responseStreamingSupported":{"shape":"Boolean"}, + "customizationsSupported":{"shape":"ModelCustomizationList"}, + "inferenceTypesSupported":{"shape":"InferenceTypeList"}, + "modelLifecycle":{"shape":"FoundationModelLifecycle"} + } + }, + "FoundationModelSummaryList":{ + "type":"list", + "member":{"shape":"FoundationModelSummary"} + }, + "GetCustomModelRequest":{ + "type":"structure", + "required":["modelIdentifier"], + "members":{ + "modelIdentifier":{ + "shape":"ModelIdentifier", + "location":"uri", + "locationName":"modelIdentifier" + } + } + }, + "GetCustomModelResponse":{ + "type":"structure", + "required":[ + "modelArn", + "modelName", + "jobArn", + "baseModelArn", + "trainingDataConfig", + "outputDataConfig", + "creationTime" + ], + "members":{ + "modelArn":{"shape":"ModelArn"}, + "modelName":{"shape":"CustomModelName"}, + "jobName":{"shape":"JobName"}, + "jobArn":{"shape":"ModelCustomizationJobArn"}, + "baseModelArn":{"shape":"ModelArn"}, + "customizationType":{"shape":"CustomizationType"}, + "modelKmsKeyArn":{"shape":"KmsKeyArn"}, + "hyperParameters":{"shape":"ModelCustomizationHyperParameters"}, + "trainingDataConfig":{"shape":"TrainingDataConfig"}, + "validationDataConfig":{"shape":"ValidationDataConfig"}, + "outputDataConfig":{"shape":"OutputDataConfig"}, + "trainingMetrics":{"shape":"TrainingMetrics"}, + "validationMetrics":{"shape":"ValidationMetrics"}, + "creationTime":{"shape":"Timestamp"} + } + }, + "GetFoundationModelRequest":{ + "type":"structure", + "required":["modelIdentifier"], + "members":{ + "modelIdentifier":{ + "shape":"ModelIdentifier", + "location":"uri", + "locationName":"modelIdentifier" + } + } + }, + "GetFoundationModelResponse":{ + "type":"structure", + "members":{ + "modelDetails":{"shape":"FoundationModelDetails"} + } + }, + "GetModelCustomizationJobRequest":{ + "type":"structure", + "required":["jobIdentifier"], + "members":{ + "jobIdentifier":{ + "shape":"ModelCustomizationJobIdentifier", + "location":"uri", + "locationName":"jobIdentifier" + } + } + }, + "GetModelCustomizationJobResponse":{ + "type":"structure", + "required":[ + "jobArn", + "jobName", + "outputModelName", + "roleArn", + "creationTime", + "baseModelArn", + "hyperParameters", + "trainingDataConfig", + "validationDataConfig", + "outputDataConfig" + ], + "members":{ + "jobArn":{"shape":"ModelCustomizationJobArn"}, + "jobName":{"shape":"JobName"}, + "outputModelName":{"shape":"CustomModelName"}, + "outputModelArn":{"shape":"CustomModelArn"}, + "clientRequestToken":{"shape":"IdempotencyToken"}, + "roleArn":{"shape":"RoleArn"}, + "status":{"shape":"ModelCustomizationJobStatus"}, + "failureMessage":{"shape":"ErrorMessage"}, + "creationTime":{"shape":"Timestamp"}, + "lastModifiedTime":{"shape":"Timestamp"}, + "endTime":{"shape":"Timestamp"}, + "baseModelArn":{"shape":"FoundationModelArn"}, + "hyperParameters":{"shape":"ModelCustomizationHyperParameters"}, + "trainingDataConfig":{"shape":"TrainingDataConfig"}, + "validationDataConfig":{"shape":"ValidationDataConfig"}, + "outputDataConfig":{"shape":"OutputDataConfig"}, + "customizationType":{"shape":"CustomizationType"}, + "outputModelKmsKeyArn":{"shape":"KmsKeyArn"}, + "trainingMetrics":{"shape":"TrainingMetrics"}, + "validationMetrics":{"shape":"ValidationMetrics"}, + "vpcConfig":{"shape":"VpcConfig"} + } + }, + "GetModelInvocationLoggingConfigurationRequest":{ + "type":"structure", + "members":{ + } + }, + "GetModelInvocationLoggingConfigurationResponse":{ + "type":"structure", + "members":{ + "loggingConfig":{"shape":"LoggingConfig"} + } + }, + "GetProvisionedModelThroughputRequest":{ + "type":"structure", + "required":["provisionedModelId"], + "members":{ + "provisionedModelId":{ + "shape":"ProvisionedModelId", + "location":"uri", + "locationName":"provisionedModelId" + } + } + }, + "GetProvisionedModelThroughputResponse":{ + "type":"structure", + "required":[ + "modelUnits", + "desiredModelUnits", + "provisionedModelName", + "provisionedModelArn", + "modelArn", + "desiredModelArn", + "foundationModelArn", + "status", + "creationTime", + "lastModifiedTime" + ], + "members":{ + "modelUnits":{"shape":"PositiveInteger"}, + "desiredModelUnits":{"shape":"PositiveInteger"}, + "provisionedModelName":{"shape":"ProvisionedModelName"}, + "provisionedModelArn":{"shape":"ProvisionedModelArn"}, + "modelArn":{"shape":"ModelArn"}, + "desiredModelArn":{"shape":"ModelArn"}, + "foundationModelArn":{"shape":"FoundationModelArn"}, + "status":{"shape":"ProvisionedModelStatus"}, + "creationTime":{"shape":"Timestamp"}, + "lastModifiedTime":{"shape":"Timestamp"}, + "failureMessage":{"shape":"ErrorMessage"}, + "commitmentDuration":{"shape":"CommitmentDuration"}, + "commitmentExpirationTime":{"shape":"Timestamp"} + } + }, + "IdempotencyToken":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[a-zA-Z0-9](-*[a-zA-Z0-9])*" + }, + "InferenceType":{ + "type":"string", + "enum":[ + "ON_DEMAND", + "PROVISIONED" + ] + }, + "InferenceTypeList":{ + "type":"list", + "member":{"shape":"InferenceType"} + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "JobName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"[a-zA-Z0-9](-*[a-zA-Z0-9\\+\\-\\.])*" + }, + "KeyPrefix":{ + "type":"string", + "max":1024, + "min":0 + }, + "KmsKeyArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}" + }, + "KmsKeyId":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:((key/[a-zA-Z0-9-]{36})|(alias/[a-zA-Z0-9-_/]+))" + }, + "ListCustomModelsRequest":{ + "type":"structure", + "members":{ + "creationTimeBefore":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"creationTimeBefore" + }, + "creationTimeAfter":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"creationTimeAfter" + }, + "nameContains":{ + "shape":"CustomModelName", + "location":"querystring", + "locationName":"nameContains" + }, + "baseModelArnEquals":{ + "shape":"ModelArn", + "location":"querystring", + "locationName":"baseModelArnEquals" + }, + "foundationModelArnEquals":{ + "shape":"FoundationModelArn", + "location":"querystring", + "locationName":"foundationModelArnEquals" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "sortBy":{ + "shape":"SortModelsBy", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + } + } + }, + "ListCustomModelsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "modelSummaries":{"shape":"CustomModelSummaryList"} + } + }, + "ListFoundationModelsRequest":{ + "type":"structure", + "members":{ + "byProvider":{ + "shape":"Provider", + "location":"querystring", + "locationName":"byProvider" + }, + "byCustomizationType":{ + "shape":"ModelCustomization", + "location":"querystring", + "locationName":"byCustomizationType" + }, + "byOutputModality":{ + "shape":"ModelModality", + "location":"querystring", + "locationName":"byOutputModality" + }, + "byInferenceType":{ + "shape":"InferenceType", + "location":"querystring", + "locationName":"byInferenceType" + } + } + }, + "ListFoundationModelsResponse":{ + "type":"structure", + "members":{ + "modelSummaries":{"shape":"FoundationModelSummaryList"} + } + }, + "ListModelCustomizationJobsRequest":{ + "type":"structure", + "members":{ + "creationTimeAfter":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"creationTimeAfter" + }, + "creationTimeBefore":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"creationTimeBefore" + }, + "statusEquals":{ + "shape":"FineTuningJobStatus", + "location":"querystring", + "locationName":"statusEquals" + }, + "nameContains":{ + "shape":"JobName", + "location":"querystring", + "locationName":"nameContains" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "sortBy":{ + "shape":"SortJobsBy", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + } + } + }, + "ListModelCustomizationJobsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "modelCustomizationJobSummaries":{"shape":"ModelCustomizationJobSummaries"} + } + }, + "ListProvisionedModelThroughputsRequest":{ + "type":"structure", + "members":{ + "creationTimeAfter":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"creationTimeAfter" + }, + "creationTimeBefore":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"creationTimeBefore" + }, + "statusEquals":{ + "shape":"ProvisionedModelStatus", + "location":"querystring", + "locationName":"statusEquals" + }, + "modelArnEquals":{ + "shape":"ModelArn", + "location":"querystring", + "locationName":"modelArnEquals" + }, + "nameContains":{ + "shape":"ProvisionedModelName", + "location":"querystring", + "locationName":"nameContains" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "sortBy":{ + "shape":"SortByProvisionedModels", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + } + } + }, + "ListProvisionedModelThroughputsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "provisionedModelSummaries":{"shape":"ProvisionedModelSummaries"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceARN"], + "members":{ + "resourceARN":{"shape":"TaggableResourcesArn"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"TagList"} + } + }, + "LogGroupName":{ + "type":"string", + "max":512, + "min":1 + }, + "LoggingConfig":{ + "type":"structure", + "members":{ + "cloudWatchConfig":{"shape":"CloudWatchConfig"}, + "s3Config":{"shape":"S3Config"}, + "textDataDeliveryEnabled":{"shape":"Boolean"}, + "imageDataDeliveryEnabled":{"shape":"Boolean"}, + "embeddingDataDeliveryEnabled":{"shape":"Boolean"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "MetricFloat":{ + "type":"float", + "box":true + }, + "ModelArn":{ + "type":"string", + "max":1011, + "min":20, + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}))" + }, + "ModelCustomization":{ + "type":"string", + "enum":[ + "FINE_TUNING", + "CONTINUED_PRE_TRAINING" + ] + }, + "ModelCustomizationHyperParameters":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "ModelCustomizationJobArn":{ + "type":"string", + "max":1011, + "min":0, + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:model-customization-job/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}/[a-z0-9]{12}" + }, + "ModelCustomizationJobIdentifier":{ + "type":"string", + "max":1011, + "min":0, + "pattern":"(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:model-customization-job/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9\\+\\-\\.])*)" + }, + "ModelCustomizationJobStatus":{ + "type":"string", + "enum":[ + "InProgress", + "Completed", + "Failed", + "Stopping", + "Stopped" + ] + }, + "ModelCustomizationJobSummaries":{ + "type":"list", + "member":{"shape":"ModelCustomizationJobSummary"} + }, + "ModelCustomizationJobSummary":{ + "type":"structure", + "required":[ + "jobArn", + "baseModelArn", + "jobName", + "status", + "creationTime" + ], + "members":{ + "jobArn":{"shape":"ModelCustomizationJobArn"}, + "baseModelArn":{"shape":"ModelArn"}, + "jobName":{"shape":"JobName"}, + "status":{"shape":"ModelCustomizationJobStatus"}, + "lastModifiedTime":{"shape":"Timestamp"}, + "creationTime":{"shape":"Timestamp"}, + "endTime":{"shape":"Timestamp"}, + "customModelArn":{"shape":"CustomModelArn"}, + "customModelName":{"shape":"CustomModelName"}, + "customizationType":{"shape":"CustomizationType"} + } + }, + "ModelCustomizationList":{ + "type":"list", + "member":{"shape":"ModelCustomization"} + }, + "ModelIdentifier":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)" + }, + "ModelModality":{ + "type":"string", + "enum":[ + "TEXT", + "IMAGE", + "EMBEDDING" + ] + }, + "ModelModalityList":{ + "type":"list", + "member":{"shape":"ModelModality"} + }, + "ModelName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63})" + }, + "NonBlankString":{ + "type":"string", + "pattern":"[\\s\\S]*" + }, + "OutputDataConfig":{ + "type":"structure", + "required":["s3Uri"], + "members":{ + "s3Uri":{"shape":"S3Uri"} + } + }, + "PaginationToken":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"\\S*" + }, + "PositiveInteger":{ + "type":"integer", + "box":true, + "min":1 + }, + "Provider":{ + "type":"string", + "pattern":"[A-Za-z0-9- ]{1,63}" + }, + "ProvisionedModelArn":{ + "type":"string", + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:provisioned-model/[a-z0-9]{12}" + }, + "ProvisionedModelId":{ + "type":"string", + "pattern":"((([0-9a-zA-Z][_-]?)+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:provisioned-model/[a-z0-9]{12}))" + }, + "ProvisionedModelName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"([0-9a-zA-Z][_-]?)+" + }, + "ProvisionedModelStatus":{ + "type":"string", + "enum":[ + "Creating", + "InService", + "Updating", + "Failed" + ] + }, + "ProvisionedModelSummaries":{ + "type":"list", + "member":{"shape":"ProvisionedModelSummary"} + }, + "ProvisionedModelSummary":{ + "type":"structure", + "required":[ + "provisionedModelName", + "provisionedModelArn", + "modelArn", + "desiredModelArn", + "foundationModelArn", + "modelUnits", + "desiredModelUnits", + "status", + "creationTime", + "lastModifiedTime" + ], + "members":{ + "provisionedModelName":{"shape":"ProvisionedModelName"}, + "provisionedModelArn":{"shape":"ProvisionedModelArn"}, + "modelArn":{"shape":"ModelArn"}, + "desiredModelArn":{"shape":"ModelArn"}, + "foundationModelArn":{"shape":"FoundationModelArn"}, + "modelUnits":{"shape":"PositiveInteger"}, + "desiredModelUnits":{"shape":"PositiveInteger"}, + "status":{"shape":"ProvisionedModelStatus"}, + "commitmentDuration":{"shape":"CommitmentDuration"}, + "commitmentExpirationTime":{"shape":"Timestamp"}, + "creationTime":{"shape":"Timestamp"}, + "lastModifiedTime":{"shape":"Timestamp"} + } + }, + "PutModelInvocationLoggingConfigurationRequest":{ + "type":"structure", + "required":["loggingConfig"], + "members":{ + "loggingConfig":{"shape":"LoggingConfig"} + } + }, + "PutModelInvocationLoggingConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "RoleArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+" + }, + "S3Config":{ + "type":"structure", + "required":["bucketName"], + "members":{ + "bucketName":{"shape":"BucketName"}, + "keyPrefix":{"shape":"KeyPrefix"} + } + }, + "S3Uri":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"s3://[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9](/.*)?" + }, + "SecurityGroupId":{ + "type":"string", + "max":32, + "min":0, + "pattern":"[-0-9a-zA-Z]+" + }, + "SecurityGroupIds":{ + "type":"list", + "member":{"shape":"SecurityGroupId"}, + "max":5, + "min":1 + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "SortByProvisionedModels":{ + "type":"string", + "enum":["CreationTime"] + }, + "SortJobsBy":{ + "type":"string", + "enum":["CreationTime"] + }, + "SortModelsBy":{ + "type":"string", + "enum":["CreationTime"] + }, + "SortOrder":{ + "type":"string", + "enum":[ + "Ascending", + "Descending" + ] + }, + "StopModelCustomizationJobRequest":{ + "type":"structure", + "required":["jobIdentifier"], + "members":{ + "jobIdentifier":{ + "shape":"ModelCustomizationJobIdentifier", + "location":"uri", + "locationName":"jobIdentifier" + } + } + }, + "StopModelCustomizationJobResponse":{ + "type":"structure", + "members":{ + } + }, + "String":{"type":"string"}, + "SubnetId":{ + "type":"string", + "max":32, + "min":0, + "pattern":"[-0-9a-zA-Z]+" + }, + "SubnetIds":{ + "type":"list", + "member":{"shape":"SubnetId"}, + "max":16, + "min":1 + }, + "Tag":{ + "type":"structure", + "required":[ + "key", + "value" + ], + "members":{ + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[a-zA-Z0-9\\s._:/=+@-]*" + }, + "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":"TaggableResourcesArn"}, + "tags":{"shape":"TagList"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0, + "pattern":"[a-zA-Z0-9\\s._:/=+@-]*" + }, + "TaggableResourcesArn":{ + "type":"string", + "max":1011, + "min":20, + "pattern":".*(^[a-zA-Z0-9][a-zA-Z0-9\\-]*$)|(^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:([0-9]{12}|)((:(fine-tuning-job|model-customization-job|custom-model)/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}(/[a-z0-9]{12})$)|(:provisioned-model/[a-z0-9]{12}$))).*" + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "Timestamp":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "TooManyTagsException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"}, + "resourceName":{"shape":"TaggableResourcesArn"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TrainingDataConfig":{ + "type":"structure", + "required":["s3Uri"], + "members":{ + "s3Uri":{"shape":"S3Uri"} + } + }, + "TrainingMetrics":{ + "type":"structure", + "members":{ + "trainingLoss":{"shape":"MetricFloat"} + } + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceARN", + "tagKeys" + ], + "members":{ + "resourceARN":{"shape":"TaggableResourcesArn"}, + "tagKeys":{"shape":"TagKeyList"} + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateProvisionedModelThroughputRequest":{ + "type":"structure", + "required":["provisionedModelId"], + "members":{ + "provisionedModelId":{ + "shape":"ProvisionedModelId", + "location":"uri", + "locationName":"provisionedModelId" + }, + "desiredProvisionedModelName":{"shape":"ProvisionedModelName"}, + "desiredModelId":{"shape":"ModelIdentifier"} + } + }, + "UpdateProvisionedModelThroughputResponse":{ + "type":"structure", + "members":{ + } + }, + "ValidationDataConfig":{ + "type":"structure", + "required":["validators"], + "members":{ + "validators":{"shape":"Validators"} + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ValidationMetrics":{ + "type":"list", + "member":{"shape":"ValidatorMetric"} + }, + "Validator":{ + "type":"structure", + "required":["s3Uri"], + "members":{ + "s3Uri":{"shape":"S3Uri"} + } + }, + "ValidatorMetric":{ + "type":"structure", + "members":{ + "validationLoss":{"shape":"MetricFloat"} + } + }, + "Validators":{ + "type":"list", + "member":{"shape":"Validator"}, + "max":10, + "min":0 + }, + "VpcConfig":{ + "type":"structure", + "required":[ + "subnetIds", + "securityGroupIds" + ], + "members":{ + "subnetIds":{"shape":"SubnetIds"}, + "securityGroupIds":{"shape":"SecurityGroupIds"} + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,897 @@ +{ + "version": "2.0", + "service": "

Describes the API operations for creating and managing Amazon Bedrock models.

", + "operations": { + "CreateModelCustomizationJob": "

Creates a fine-tuning job to customize a base model.

You specify the base foundation model and the location of the training data. After the model-customization job completes successfully, your custom model resource will be ready to use. Training data contains input and output text for each record in a JSONL format. Optionally, you can specify validation data in the same format as the training data. Amazon Bedrock returns validation loss metrics and output generations after the job completes.

Model-customization jobs are asynchronous and the completion time depends on the base model and the training/validation data size. To monitor a job, use the GetModelCustomizationJob operation to retrieve the job status.

For more information, see Custom models in the Bedrock User Guide.

", + "CreateProvisionedModelThroughput": "

Creates a provisioned throughput with dedicated capacity for a foundation model or a fine-tuned model.

For more information, see Provisioned throughput in the Bedrock User Guide.

", + "DeleteCustomModel": "

Deletes a custom model that you created earlier. For more information, see Custom models in the Bedrock User Guide.

", + "DeleteModelInvocationLoggingConfiguration": "

Delete the invocation logging.

", + "DeleteProvisionedModelThroughput": "

Deletes a provisioned throughput. For more information, see Provisioned throughput in the Bedrock User Guide.

", + "GetCustomModel": "

Get the properties associated with a Amazon Bedrock custom model that you have created.For more information, see Custom models in the Bedrock User Guide.

", + "GetFoundationModel": "

Get details about a Amazon Bedrock foundation model.

", + "GetModelCustomizationJob": "

Retrieves the properties associated with a model-customization job, including the status of the job. For more information, see Custom models in the Bedrock User Guide.

", + "GetModelInvocationLoggingConfiguration": "

Get the current configuration values for model invocation logging.

", + "GetProvisionedModelThroughput": "

Get details for a provisioned throughput. For more information, see Provisioned throughput in the Bedrock User Guide.

", + "ListCustomModels": "

Returns a list of the custom models that you have created with the CreateModelCustomizationJob operation.

For more information, see Custom models in the Bedrock User Guide.

", + "ListFoundationModels": "

List of Amazon Bedrock foundation models that you can use. For more information, see Foundation models in the Bedrock User Guide.

", + "ListModelCustomizationJobs": "

Returns a list of model customization jobs that you have submitted. You can filter the jobs to return based on one or more criteria.

For more information, see Custom models in the Bedrock User Guide.

", + "ListProvisionedModelThroughputs": "

List the provisioned capacities. For more information, see Provisioned throughput in the Bedrock User Guide.

", + "ListTagsForResource": "

List the tags associated with the specified resource.

For more information, see Tagging resources in the Bedrock User Guide.

", + "PutModelInvocationLoggingConfiguration": "

Set the configuration values for model invocation logging.

", + "StopModelCustomizationJob": "

Stops an active model customization job. For more information, see Custom models in the Bedrock User Guide.

", + "TagResource": "

Associate tags with a resource. For more information, see Tagging resources in the Bedrock User Guide.

", + "UntagResource": "

Remove one or more tags from a resource. For more information, see Tagging resources in the Bedrock User Guide.

", + "UpdateProvisionedModelThroughput": "

Update a provisioned throughput. For more information, see Provisioned throughput in the Bedrock User Guide.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

The request is denied because of missing access permissions.

", + "refs": { + } + }, + "BaseModelIdentifier": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$baseModelIdentifier": "

Name of the base model.

" + } + }, + "BedrockModelId": { + "base": null, + "refs": { + "FoundationModelDetails$modelId": "

The model identifier.

", + "FoundationModelSummary$modelId": "

The model Id of the foundation model.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "FoundationModelDetails$responseStreamingSupported": "

Indicates whether the model supports streaming.

", + "FoundationModelSummary$responseStreamingSupported": "

Indicates whether the model supports streaming.

", + "LoggingConfig$textDataDeliveryEnabled": "

Set to include text data in the log delivery.

", + "LoggingConfig$imageDataDeliveryEnabled": "

Set to include image data in the log delivery.

", + "LoggingConfig$embeddingDataDeliveryEnabled": "

Set to include embeddings data in the log delivery.

" + } + }, + "BrandedName": { + "base": null, + "refs": { + "FoundationModelDetails$modelName": "

The model name.

", + "FoundationModelDetails$providerName": "

he model's provider name.

", + "FoundationModelSummary$modelName": "

The name of the model.

", + "FoundationModelSummary$providerName": "

The model's provider name.

" + } + }, + "BucketName": { + "base": null, + "refs": { + "S3Config$bucketName": "

S3 bucket name.

" + } + }, + "CloudWatchConfig": { + "base": "

CloudWatch logging configuration.

", + "refs": { + "LoggingConfig$cloudWatchConfig": "

CloudWatch logging configuration.

" + } + }, + "CommitmentDuration": { + "base": null, + "refs": { + "CreateProvisionedModelThroughputRequest$commitmentDuration": "

Commitment duration requested for the provisioned throughput.

", + "GetProvisionedModelThroughputResponse$commitmentDuration": "

Commitment duration of the provisioned throughput.

", + "ProvisionedModelSummary$commitmentDuration": "

Commitment duration for the provisioned throughput.

" + } + }, + "ConflictException": { + "base": "

Error occurred because of a conflict while performing an operation.

", + "refs": { + } + }, + "CreateModelCustomizationJobRequest": { + "base": null, + "refs": { + } + }, + "CreateModelCustomizationJobResponse": { + "base": null, + "refs": { + } + }, + "CreateProvisionedModelThroughputRequest": { + "base": null, + "refs": { + } + }, + "CreateProvisionedModelThroughputResponse": { + "base": null, + "refs": { + } + }, + "CustomModelArn": { + "base": null, + "refs": { + "CustomModelSummary$modelArn": "

The ARN of the custom model.

", + "GetModelCustomizationJobResponse$outputModelArn": "

The ARN of the output model.

", + "ModelCustomizationJobSummary$customModelArn": "

ARN of the custom model.

" + } + }, + "CustomModelName": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$customModelName": "

Enter a name for the custom model.

", + "CustomModelSummary$modelName": "

The name of the custom model.

", + "GetCustomModelResponse$modelName": "

Model name associated with this model.

", + "GetModelCustomizationJobResponse$outputModelName": "

The name of the output model.

", + "ListCustomModelsRequest$nameContains": "

Return custom models only if the job name contains these characters.

", + "ModelCustomizationJobSummary$customModelName": "

Name of the custom model.

" + } + }, + "CustomModelSummary": { + "base": "

Summary information for a custom model.

", + "refs": { + "CustomModelSummaryList$member": null + } + }, + "CustomModelSummaryList": { + "base": null, + "refs": { + "ListCustomModelsResponse$modelSummaries": "

Model summaries.

" + } + }, + "CustomizationType": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$customizationType": "

The customization type.

", + "CustomModelSummary$customizationType": "

Specifies whether to carry out continued pre-training of a model or whether to fine-tune it. For more information, see Custom models.

", + "GetCustomModelResponse$customizationType": "

The type of model customization.

", + "GetModelCustomizationJobResponse$customizationType": "

The type of model customization.

", + "ModelCustomizationJobSummary$customizationType": "

Specifies whether to carry out continued pre-training of a model or whether to fine-tune it. For more information, see Custom models.

" + } + }, + "DeleteCustomModelRequest": { + "base": null, + "refs": { + } + }, + "DeleteCustomModelResponse": { + "base": null, + "refs": { + } + }, + "DeleteModelInvocationLoggingConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteModelInvocationLoggingConfigurationResponse": { + "base": null, + "refs": { + } + }, + "DeleteProvisionedModelThroughputRequest": { + "base": null, + "refs": { + } + }, + "DeleteProvisionedModelThroughputResponse": { + "base": null, + "refs": { + } + }, + "ErrorMessage": { + "base": null, + "refs": { + "GetModelCustomizationJobResponse$failureMessage": "

Information about why the job failed.

", + "GetProvisionedModelThroughputResponse$failureMessage": "

Failure message for any issues that the create operation encounters.

" + } + }, + "FineTuningJobStatus": { + "base": null, + "refs": { + "ListModelCustomizationJobsRequest$statusEquals": "

Return customization jobs with the specified status.

" + } + }, + "FoundationModelArn": { + "base": null, + "refs": { + "FoundationModelDetails$modelArn": "

The model ARN.

", + "FoundationModelSummary$modelArn": "

The ARN of the foundation model.

", + "GetModelCustomizationJobResponse$baseModelArn": "

ARN of the base model.

", + "GetProvisionedModelThroughputResponse$foundationModelArn": "

ARN of the foundation model.

", + "ListCustomModelsRequest$foundationModelArnEquals": "

Return custom models only if the foundation model ARN matches this parameter.

", + "ProvisionedModelSummary$foundationModelArn": "

Foundation model ARN.

" + } + }, + "FoundationModelDetails": { + "base": "

Information about a foundation model.

", + "refs": { + "GetFoundationModelResponse$modelDetails": "

Information about the foundation model.

" + } + }, + "FoundationModelLifecycle": { + "base": "

Details about whether a model version is available or deprecated.

", + "refs": { + "FoundationModelDetails$modelLifecycle": "

Contains details about whether a model version is available or deprecated

", + "FoundationModelSummary$modelLifecycle": "

Contains details about whether a model version is available or deprecated.

" + } + }, + "FoundationModelLifecycleStatus": { + "base": null, + "refs": { + "FoundationModelLifecycle$status": "

Specifies whether a model version is available (ACTIVE) or deprecated (LEGACY.

" + } + }, + "FoundationModelSummary": { + "base": "

Summary information for a foundation model.

", + "refs": { + "FoundationModelSummaryList$member": null + } + }, + "FoundationModelSummaryList": { + "base": null, + "refs": { + "ListFoundationModelsResponse$modelSummaries": "

A list of Amazon Bedrock foundation models.

" + } + }, + "GetCustomModelRequest": { + "base": null, + "refs": { + } + }, + "GetCustomModelResponse": { + "base": null, + "refs": { + } + }, + "GetFoundationModelRequest": { + "base": null, + "refs": { + } + }, + "GetFoundationModelResponse": { + "base": null, + "refs": { + } + }, + "GetModelCustomizationJobRequest": { + "base": null, + "refs": { + } + }, + "GetModelCustomizationJobResponse": { + "base": null, + "refs": { + } + }, + "GetModelInvocationLoggingConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetModelInvocationLoggingConfigurationResponse": { + "base": null, + "refs": { + } + }, + "GetProvisionedModelThroughputRequest": { + "base": null, + "refs": { + } + }, + "GetProvisionedModelThroughputResponse": { + "base": null, + "refs": { + } + }, + "IdempotencyToken": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$clientRequestToken": "

Unique token value that you can provide. The GetModelCustomizationJob response includes the same token value.

", + "CreateProvisionedModelThroughputRequest$clientRequestToken": "

Unique token value that you can provide. If this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error.

", + "GetModelCustomizationJobResponse$clientRequestToken": "

The token that you specified in the CreateCustomizationJob request.

" + } + }, + "InferenceType": { + "base": null, + "refs": { + "InferenceTypeList$member": null, + "ListFoundationModelsRequest$byInferenceType": "

List by inference type.

" + } + }, + "InferenceTypeList": { + "base": null, + "refs": { + "FoundationModelDetails$inferenceTypesSupported": "

The inference types that the model supports.

", + "FoundationModelSummary$inferenceTypesSupported": "

The inference types that the model supports.

" + } + }, + "InternalServerException": { + "base": "

An internal server error occurred. Retry your request.

", + "refs": { + } + }, + "JobName": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$jobName": "

Enter a unique name for the fine-tuning job.

", + "GetCustomModelResponse$jobName": "

Job name associated with this model.

", + "GetModelCustomizationJobResponse$jobName": "

The name of the customization job.

", + "ListModelCustomizationJobsRequest$nameContains": "

Return customization jobs only if the job name contains these characters.

", + "ModelCustomizationJobSummary$jobName": "

Name of the customization job.

" + } + }, + "KeyPrefix": { + "base": null, + "refs": { + "S3Config$keyPrefix": "

S3 prefix.

" + } + }, + "KmsKeyArn": { + "base": null, + "refs": { + "GetCustomModelResponse$modelKmsKeyArn": "

The custom model is encrypted at rest using this key.

", + "GetModelCustomizationJobResponse$outputModelKmsKeyArn": "

The custom model is encrypted at rest using this key.

" + } + }, + "KmsKeyId": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$customModelKmsKeyId": "

The custom model is encrypted at rest using this key.

" + } + }, + "ListCustomModelsRequest": { + "base": null, + "refs": { + } + }, + "ListCustomModelsResponse": { + "base": null, + "refs": { + } + }, + "ListFoundationModelsRequest": { + "base": null, + "refs": { + } + }, + "ListFoundationModelsResponse": { + "base": null, + "refs": { + } + }, + "ListModelCustomizationJobsRequest": { + "base": null, + "refs": { + } + }, + "ListModelCustomizationJobsResponse": { + "base": null, + "refs": { + } + }, + "ListProvisionedModelThroughputsRequest": { + "base": null, + "refs": { + } + }, + "ListProvisionedModelThroughputsResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "LogGroupName": { + "base": null, + "refs": { + "CloudWatchConfig$logGroupName": "

The log group name.

" + } + }, + "LoggingConfig": { + "base": "

Configuration fields for invokation logging.

", + "refs": { + "GetModelInvocationLoggingConfigurationResponse$loggingConfig": "

The current configuration values.

", + "PutModelInvocationLoggingConfigurationRequest$loggingConfig": "

The logging configuration values to set.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListCustomModelsRequest$maxResults": "

Maximum number of results to return in the response.

", + "ListModelCustomizationJobsRequest$maxResults": "

Maximum number of results to return in the response.

", + "ListProvisionedModelThroughputsRequest$maxResults": "

THe maximum number of results to return in the response.

" + } + }, + "MetricFloat": { + "base": null, + "refs": { + "TrainingMetrics$trainingLoss": "

Loss metric associated with the custom job.

", + "ValidatorMetric$validationLoss": "

The validation loss associated with this validator.

" + } + }, + "ModelArn": { + "base": null, + "refs": { + "CustomModelSummary$baseModelArn": "

The base model ARN.

", + "GetCustomModelResponse$modelArn": "

ARN associated with this model.

", + "GetCustomModelResponse$baseModelArn": "

ARN of the base model.

", + "GetProvisionedModelThroughputResponse$modelArn": "

The ARN or name of the model associated with this provisioned throughput.

", + "GetProvisionedModelThroughputResponse$desiredModelArn": "

The ARN of the new model to asssociate with this provisioned throughput.

", + "ListCustomModelsRequest$baseModelArnEquals": "

Return custom models only if the base model ARN matches this parameter.

", + "ListProvisionedModelThroughputsRequest$modelArnEquals": "

Return the list of provisioned capacities where their model ARN is equal to this parameter.

", + "ModelCustomizationJobSummary$baseModelArn": "

ARN of the base model.

", + "ProvisionedModelSummary$modelArn": "

The ARN of the model associated with this provisioned throughput.

", + "ProvisionedModelSummary$desiredModelArn": "

Desired model ARN.

" + } + }, + "ModelCustomization": { + "base": null, + "refs": { + "ListFoundationModelsRequest$byCustomizationType": "

List by customization type.

", + "ModelCustomizationList$member": null + } + }, + "ModelCustomizationHyperParameters": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$hyperParameters": "

Parameters related to tuning the model.

", + "GetCustomModelResponse$hyperParameters": "

Hyperparameter values associated with this model.

", + "GetModelCustomizationJobResponse$hyperParameters": "

The hyperparameter values for the job. For information about hyperparameters for specific models, see Guidelines for model customization.

" + } + }, + "ModelCustomizationJobArn": { + "base": null, + "refs": { + "CreateModelCustomizationJobResponse$jobArn": "

ARN of the fine tuning job

", + "GetCustomModelResponse$jobArn": "

Job ARN associated with this model.

", + "GetModelCustomizationJobResponse$jobArn": "

The ARN of the customization job.

", + "ModelCustomizationJobSummary$jobArn": "

ARN of the customization job.

" + } + }, + "ModelCustomizationJobIdentifier": { + "base": null, + "refs": { + "GetModelCustomizationJobRequest$jobIdentifier": "

Identifier for the customization job.

", + "StopModelCustomizationJobRequest$jobIdentifier": "

Job identifier of the job to stop.

" + } + }, + "ModelCustomizationJobStatus": { + "base": null, + "refs": { + "GetModelCustomizationJobResponse$status": "

The status of the job. A successful job transitions from in-progress to completed when the output model is ready to use. If the job failed, the failure message contains information about why the job failed.

", + "ModelCustomizationJobSummary$status": "

Status of the customization job.

" + } + }, + "ModelCustomizationJobSummaries": { + "base": null, + "refs": { + "ListModelCustomizationJobsResponse$modelCustomizationJobSummaries": "

Job summaries.

" + } + }, + "ModelCustomizationJobSummary": { + "base": "

Information about one customization job

", + "refs": { + "ModelCustomizationJobSummaries$member": null + } + }, + "ModelCustomizationList": { + "base": null, + "refs": { + "FoundationModelDetails$customizationsSupported": "

The customization that the model supports.

", + "FoundationModelSummary$customizationsSupported": "

Whether the model supports fine-tuning or continual pre-training.

" + } + }, + "ModelIdentifier": { + "base": null, + "refs": { + "CreateProvisionedModelThroughputRequest$modelId": "

Name or ARN of the model to associate with this provisioned throughput.

", + "DeleteCustomModelRequest$modelIdentifier": "

Name of the model to delete.

", + "GetCustomModelRequest$modelIdentifier": "

Name or ARN of the custom model.

", + "GetFoundationModelRequest$modelIdentifier": "

The model identifier.

", + "UpdateProvisionedModelThroughputRequest$desiredModelId": "

The ARN of the new model to associate with this provisioned throughput.

" + } + }, + "ModelModality": { + "base": null, + "refs": { + "ListFoundationModelsRequest$byOutputModality": "

List by output modality type.

", + "ModelModalityList$member": null + } + }, + "ModelModalityList": { + "base": null, + "refs": { + "FoundationModelDetails$inputModalities": "

The input modalities that the model supports.

", + "FoundationModelDetails$outputModalities": "

The output modalities that the model supports.

", + "FoundationModelSummary$inputModalities": "

The input modalities that the model supports.

", + "FoundationModelSummary$outputModalities": "

The output modalities that the model supports.

" + } + }, + "ModelName": { + "base": null, + "refs": { + "CustomModelSummary$baseModelName": "

The base model name.

" + } + }, + "NonBlankString": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "TooManyTagsException$message": null, + "ValidationException$message": null + } + }, + "OutputDataConfig": { + "base": "

S3 Location of the output data.

", + "refs": { + "CreateModelCustomizationJobRequest$outputDataConfig": "

S3 location for the output data.

", + "GetCustomModelResponse$outputDataConfig": "

Output data configuration associated with this custom model.

", + "GetModelCustomizationJobResponse$outputDataConfig": "

Output data configuration

" + } + }, + "PaginationToken": { + "base": null, + "refs": { + "ListCustomModelsRequest$nextToken": "

Continuation token from the previous response, for Amazon Bedrock to list the next set of results.

", + "ListCustomModelsResponse$nextToken": "

Continuation token for the next request to list the next set of results.

", + "ListModelCustomizationJobsRequest$nextToken": "

Continuation token from the previous response, for Amazon Bedrock to list the next set of results.

", + "ListModelCustomizationJobsResponse$nextToken": "

Page continuation token to use in the next request.

", + "ListProvisionedModelThroughputsRequest$nextToken": "

Continuation token from the previous response, for Amazon Bedrock to list the next set of results.

", + "ListProvisionedModelThroughputsResponse$nextToken": "

Continuation token for the next request to list the next set of results.

" + } + }, + "PositiveInteger": { + "base": null, + "refs": { + "CreateProvisionedModelThroughputRequest$modelUnits": "

Number of model units to allocate.

", + "GetProvisionedModelThroughputResponse$modelUnits": "

The current number of model units requested to be available for this provisioned throughput.

", + "GetProvisionedModelThroughputResponse$desiredModelUnits": "

The desired number of model units that was requested to be available for this provisioned throughput.

", + "ProvisionedModelSummary$modelUnits": "

The number of model units allocated.

", + "ProvisionedModelSummary$desiredModelUnits": "

Desired model units.

" + } + }, + "Provider": { + "base": null, + "refs": { + "ListFoundationModelsRequest$byProvider": "

A Amazon Bedrock model provider.

" + } + }, + "ProvisionedModelArn": { + "base": null, + "refs": { + "CreateProvisionedModelThroughputResponse$provisionedModelArn": "

The ARN for this provisioned throughput.

", + "GetProvisionedModelThroughputResponse$provisionedModelArn": "

The ARN of the provisioned throughput.

", + "ProvisionedModelSummary$provisionedModelArn": "

The ARN of the provisioned throughput.

" + } + }, + "ProvisionedModelId": { + "base": null, + "refs": { + "DeleteProvisionedModelThroughputRequest$provisionedModelId": "

The ARN or name of the provisioned throughput.

", + "GetProvisionedModelThroughputRequest$provisionedModelId": "

The ARN or name of the provisioned throughput.

", + "UpdateProvisionedModelThroughputRequest$provisionedModelId": "

The ARN or name of the provisioned throughput to update.

" + } + }, + "ProvisionedModelName": { + "base": null, + "refs": { + "CreateProvisionedModelThroughputRequest$provisionedModelName": "

Unique name for this provisioned throughput.

", + "GetProvisionedModelThroughputResponse$provisionedModelName": "

The name of the provisioned throughput.

", + "ListProvisionedModelThroughputsRequest$nameContains": "

Return the list of provisioned capacities if their name contains these characters.

", + "ProvisionedModelSummary$provisionedModelName": "

The name of the provisioned throughput.

", + "UpdateProvisionedModelThroughputRequest$desiredProvisionedModelName": "

The new name for this provisioned throughput.

" + } + }, + "ProvisionedModelStatus": { + "base": null, + "refs": { + "GetProvisionedModelThroughputResponse$status": "

Status of the provisioned throughput.

", + "ListProvisionedModelThroughputsRequest$statusEquals": "

Return the list of provisioned capacities that match the specified status.

", + "ProvisionedModelSummary$status": "

Status of the provisioned throughput.

" + } + }, + "ProvisionedModelSummaries": { + "base": null, + "refs": { + "ListProvisionedModelThroughputsResponse$provisionedModelSummaries": "

List of summaries, one for each provisioned throughput in the response.

" + } + }, + "ProvisionedModelSummary": { + "base": "

Set of fields associated with a provisioned throughput.

", + "refs": { + "ProvisionedModelSummaries$member": null + } + }, + "PutModelInvocationLoggingConfigurationRequest": { + "base": null, + "refs": { + } + }, + "PutModelInvocationLoggingConfigurationResponse": { + "base": null, + "refs": { + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource ARN was not found. Check the ARN and try your request again.

", + "refs": { + } + }, + "RoleArn": { + "base": null, + "refs": { + "CloudWatchConfig$roleArn": "

The role ARN.

", + "CreateModelCustomizationJobRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon Bedrock can assume to perform tasks on your behalf. For example, during model training, Amazon Bedrock needs your permission to read input data from an S3 bucket, write model artifacts to an S3 bucket. To pass this role to Amazon Bedrock, the caller of this API must have the iam:PassRole permission.

", + "GetModelCustomizationJobResponse$roleArn": "

The ARN of the IAM role.

" + } + }, + "S3Config": { + "base": "

S3 configuration for storing log data.

", + "refs": { + "CloudWatchConfig$largeDataDeliveryS3Config": "

S3 configuration for delivering a large amount of data.

", + "LoggingConfig$s3Config": "

S3 configuration for storing log data.

" + } + }, + "S3Uri": { + "base": null, + "refs": { + "OutputDataConfig$s3Uri": "

The S3 URI where the output data is stored.

", + "TrainingDataConfig$s3Uri": "

The S3 URI where the training data is stored.

", + "Validator$s3Uri": "

The S3 URI where the validation data is stored.

" + } + }, + "SecurityGroupId": { + "base": null, + "refs": { + "SecurityGroupIds$member": null + } + }, + "SecurityGroupIds": { + "base": null, + "refs": { + "VpcConfig$securityGroupIds": "

VPC configuration security group Ids.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

The number of requests exceeds the service quota. Resubmit your request later.

", + "refs": { + } + }, + "SortByProvisionedModels": { + "base": null, + "refs": { + "ListProvisionedModelThroughputsRequest$sortBy": "

The field to sort by in the returned list of provisioned capacities.

" + } + }, + "SortJobsBy": { + "base": null, + "refs": { + "ListModelCustomizationJobsRequest$sortBy": "

The field to sort by in the returned list of jobs.

" + } + }, + "SortModelsBy": { + "base": null, + "refs": { + "ListCustomModelsRequest$sortBy": "

The field to sort by in the returned list of models.

" + } + }, + "SortOrder": { + "base": null, + "refs": { + "ListCustomModelsRequest$sortOrder": "

The sort order of the results.

", + "ListModelCustomizationJobsRequest$sortOrder": "

The sort order of the results.

", + "ListProvisionedModelThroughputsRequest$sortOrder": "

The sort order of the results.

" + } + }, + "StopModelCustomizationJobRequest": { + "base": null, + "refs": { + } + }, + "StopModelCustomizationJobResponse": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "ModelCustomizationHyperParameters$key": null, + "ModelCustomizationHyperParameters$value": null + } + }, + "SubnetId": { + "base": null, + "refs": { + "SubnetIds$member": null + } + }, + "SubnetIds": { + "base": null, + "refs": { + "VpcConfig$subnetIds": "

VPC configuration subnets.

" + } + }, + "Tag": { + "base": "

Definition of the key/value pair for a tag.

", + "refs": { + "TagList$member": null + } + }, + "TagKey": { + "base": null, + "refs": { + "Tag$key": "

Key for the tag.

", + "TagKeyList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

Tag keys of the tags to remove from the resource.

" + } + }, + "TagList": { + "base": null, + "refs": { + "CreateModelCustomizationJobRequest$jobTags": "

Assign tags to the job.

", + "CreateModelCustomizationJobRequest$customModelTags": "

Assign tags to the custom model.

", + "CreateProvisionedModelThroughputRequest$tags": "

Tags to associate with this provisioned throughput.

", + "ListTagsForResourceResponse$tags": "

An array of the tags associated with this resource.

", + "TagResourceRequest$tags": "

Tags to associate with the resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tag$value": "

Value for the tag.

" + } + }, + "TaggableResourcesArn": { + "base": null, + "refs": { + "ListTagsForResourceRequest$resourceARN": "

The ARN of the resource.

", + "TagResourceRequest$resourceARN": "

The ARN of the resource to tag.

", + "TooManyTagsException$resourceName": "

The name of the resource with too many tags.

", + "UntagResourceRequest$resourceARN": "

The ARN of the resource to untag.

" + } + }, + "ThrottlingException": { + "base": "

The number of requests exceeds the limit. Resubmit your request later.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "CustomModelSummary$creationTime": "

Creation time of the model.

", + "GetCustomModelResponse$creationTime": "

Creation time of the model.

", + "GetModelCustomizationJobResponse$creationTime": "

Time that the resource was created.

", + "GetModelCustomizationJobResponse$lastModifiedTime": "

Time that the resource was last modified.

", + "GetModelCustomizationJobResponse$endTime": "

Time that the resource transitioned to terminal state.

", + "GetProvisionedModelThroughputResponse$creationTime": "

The timestamp of the creation time for this provisioned throughput.

", + "GetProvisionedModelThroughputResponse$lastModifiedTime": "

The timestamp of the last modified time of this provisioned throughput.

", + "GetProvisionedModelThroughputResponse$commitmentExpirationTime": "

Commitment expiration time for the provisioned throughput.

", + "ListCustomModelsRequest$creationTimeBefore": "

Return custom models created before the specified time.

", + "ListCustomModelsRequest$creationTimeAfter": "

Return custom models created after the specified time.

", + "ListModelCustomizationJobsRequest$creationTimeAfter": "

Return customization jobs created after the specified time.

", + "ListModelCustomizationJobsRequest$creationTimeBefore": "

Return customization jobs created before the specified time.

", + "ListProvisionedModelThroughputsRequest$creationTimeAfter": "

Return provisioned capacities created after the specified time.

", + "ListProvisionedModelThroughputsRequest$creationTimeBefore": "

Return provisioned capacities created before the specified time.

", + "ModelCustomizationJobSummary$lastModifiedTime": "

Time that the customization job was last modified.

", + "ModelCustomizationJobSummary$creationTime": "

Creation time of the custom model.

", + "ModelCustomizationJobSummary$endTime": "

Time that the customization job ended.

", + "ProvisionedModelSummary$commitmentExpirationTime": "

Commitment expiration time for the provisioned throughput.

", + "ProvisionedModelSummary$creationTime": "

The time that this provisioned throughput was created.

", + "ProvisionedModelSummary$lastModifiedTime": "

The time that this provisioned throughput was last modified.

" + } + }, + "TooManyTagsException": { + "base": "

The request contains more tags than can be associated with a resource (50 tags per resource). The maximum number of tags includes both existing tags and those included in your current request.

", + "refs": { + } + }, + "TrainingDataConfig": { + "base": "

S3 Location of the training data.

", + "refs": { + "CreateModelCustomizationJobRequest$trainingDataConfig": "

Information about the training dataset.

", + "GetCustomModelResponse$trainingDataConfig": "

Information about the training dataset.

", + "GetModelCustomizationJobResponse$trainingDataConfig": null + } + }, + "TrainingMetrics": { + "base": "

Metrics associated with the custom job.

", + "refs": { + "GetCustomModelResponse$trainingMetrics": "

The training metrics from the job creation.

", + "GetModelCustomizationJobResponse$trainingMetrics": null + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateProvisionedModelThroughputRequest": { + "base": null, + "refs": { + } + }, + "UpdateProvisionedModelThroughputResponse": { + "base": null, + "refs": { + } + }, + "ValidationDataConfig": { + "base": "

Array of up to 10 validators.

", + "refs": { + "CreateModelCustomizationJobRequest$validationDataConfig": "

Information about the validation dataset.

", + "GetCustomModelResponse$validationDataConfig": null, + "GetModelCustomizationJobResponse$validationDataConfig": null + } + }, + "ValidationException": { + "base": "

Input validation failed. Check your request parameters and retry the request.

", + "refs": { + } + }, + "ValidationMetrics": { + "base": null, + "refs": { + "GetCustomModelResponse$validationMetrics": "

The validation metrics from the job creation.

", + "GetModelCustomizationJobResponse$validationMetrics": "

The loss metric for each validator that you provided in the createjob request.

" + } + }, + "Validator": { + "base": "

Information about a validator.

", + "refs": { + "Validators$member": null + } + }, + "ValidatorMetric": { + "base": "

The metric for the validator.

", + "refs": { + "ValidationMetrics$member": null + } + }, + "Validators": { + "base": null, + "refs": { + "ValidationDataConfig$validators": "

Information about the validators.

" + } + }, + "VpcConfig": { + "base": "

VPC configuration.

", + "refs": { + "CreateModelCustomizationJobRequest$vpcConfig": "

VPC configuration (optional). Configuration parameters for the private Virtual Private Cloud (VPC) that contains the resources you are using for this job.

", + "GetModelCustomizationJobResponse$vpcConfig": "

VPC configuration for the custom model job.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,22 @@ +{ + "pagination": { + "ListCustomModels": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "modelSummaries" + }, + "ListModelCustomizationJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "modelCustomizationJobSummaries" + }, + "ListProvisionedModelThroughputs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "provisionedModelSummaries" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/smoke.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/smoke.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/smoke.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/smoke.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,6 @@ +{ + "version": 1, + "defaultRegion": "us-west-2", + "testCases": [ + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock/2023-04-20/waiters-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock/2023-04-20/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,3068 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-06-05", + "endpointPrefix":"bedrock-agent", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Agents for Amazon Bedrock", + "serviceId":"Bedrock Agent", + "signatureVersion":"v4", + "signingName":"bedrock", + "uid":"bedrock-agent-2023-06-05" + }, + "operations":{ + "AssociateAgentKnowledgeBase":{ + "name":"AssociateAgentKnowledgeBase", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/", + "responseCode":200 + }, + "input":{"shape":"AssociateAgentKnowledgeBaseRequest"}, + "output":{"shape":"AssociateAgentKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateAgent":{ + "name":"CreateAgent", + "http":{ + "method":"PUT", + "requestUri":"/agents/", + "responseCode":202 + }, + "input":{"shape":"CreateAgentRequest"}, + "output":{"shape":"CreateAgentResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateAgentActionGroup":{ + "name":"CreateAgentActionGroup", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/actiongroups/", + "responseCode":200 + }, + "input":{"shape":"CreateAgentActionGroupRequest"}, + "output":{"shape":"CreateAgentActionGroupResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateAgentAlias":{ + "name":"CreateAgentAlias", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/agentaliases/", + "responseCode":202 + }, + "input":{"shape":"CreateAgentAliasRequest"}, + "output":{"shape":"CreateAgentAliasResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateDataSource":{ + "name":"CreateDataSource", + "http":{ + "method":"PUT", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/", + "responseCode":200 + }, + "input":{"shape":"CreateDataSourceRequest"}, + "output":{"shape":"CreateDataSourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateKnowledgeBase":{ + "name":"CreateKnowledgeBase", + "http":{ + "method":"PUT", + "requestUri":"/knowledgebases/", + "responseCode":202 + }, + "input":{"shape":"CreateKnowledgeBaseRequest"}, + "output":{"shape":"CreateKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "DeleteAgent":{ + "name":"DeleteAgent", + "http":{ + "method":"DELETE", + "requestUri":"/agents/{agentId}/", + "responseCode":202 + }, + "input":{"shape":"DeleteAgentRequest"}, + "output":{"shape":"DeleteAgentResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "DeleteAgentActionGroup":{ + "name":"DeleteAgentActionGroup", + "http":{ + "method":"DELETE", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/", + "responseCode":204 + }, + "input":{"shape":"DeleteAgentActionGroupRequest"}, + "output":{"shape":"DeleteAgentActionGroupResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "DeleteAgentAlias":{ + "name":"DeleteAgentAlias", + "http":{ + "method":"DELETE", + "requestUri":"/agents/{agentId}/agentaliases/{agentAliasId}/", + "responseCode":202 + }, + "input":{"shape":"DeleteAgentAliasRequest"}, + "output":{"shape":"DeleteAgentAliasResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteAgentVersion":{ + "name":"DeleteAgentVersion", + "http":{ + "method":"DELETE", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/", + "responseCode":202 + }, + "input":{"shape":"DeleteAgentVersionRequest"}, + "output":{"shape":"DeleteAgentVersionResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "DeleteDataSource":{ + "name":"DeleteDataSource", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}", + "responseCode":202 + }, + "input":{"shape":"DeleteDataSourceRequest"}, + "output":{"shape":"DeleteDataSourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "DeleteKnowledgeBase":{ + "name":"DeleteKnowledgeBase", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgebases/{knowledgeBaseId}", + "responseCode":202 + }, + "input":{"shape":"DeleteKnowledgeBaseRequest"}, + "output":{"shape":"DeleteKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "DisassociateAgentKnowledgeBase":{ + "name":"DisassociateAgentKnowledgeBase", + "http":{ + "method":"DELETE", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/", + "responseCode":204 + }, + "input":{"shape":"DisassociateAgentKnowledgeBaseRequest"}, + "output":{"shape":"DisassociateAgentKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "GetAgent":{ + "name":"GetAgent", + "http":{ + "method":"GET", + "requestUri":"/agents/{agentId}/", + "responseCode":200 + }, + "input":{"shape":"GetAgentRequest"}, + "output":{"shape":"GetAgentResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAgentActionGroup":{ + "name":"GetAgentActionGroup", + "http":{ + "method":"GET", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/", + "responseCode":200 + }, + "input":{"shape":"GetAgentActionGroupRequest"}, + "output":{"shape":"GetAgentActionGroupResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAgentAlias":{ + "name":"GetAgentAlias", + "http":{ + "method":"GET", + "requestUri":"/agents/{agentId}/agentaliases/{agentAliasId}/", + "responseCode":200 + }, + "input":{"shape":"GetAgentAliasRequest"}, + "output":{"shape":"GetAgentAliasResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAgentKnowledgeBase":{ + "name":"GetAgentKnowledgeBase", + "http":{ + "method":"GET", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/", + "responseCode":200 + }, + "input":{"shape":"GetAgentKnowledgeBaseRequest"}, + "output":{"shape":"GetAgentKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAgentVersion":{ + "name":"GetAgentVersion", + "http":{ + "method":"GET", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/", + "responseCode":200 + }, + "input":{"shape":"GetAgentVersionRequest"}, + "output":{"shape":"GetAgentVersionResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetDataSource":{ + "name":"GetDataSource", + "http":{ + "method":"GET", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}", + "responseCode":200 + }, + "input":{"shape":"GetDataSourceRequest"}, + "output":{"shape":"GetDataSourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetIngestionJob":{ + "name":"GetIngestionJob", + "http":{ + "method":"GET", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/{ingestionJobId}", + "responseCode":200 + }, + "input":{"shape":"GetIngestionJobRequest"}, + "output":{"shape":"GetIngestionJobResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetKnowledgeBase":{ + "name":"GetKnowledgeBase", + "http":{ + "method":"GET", + "requestUri":"/knowledgebases/{knowledgeBaseId}", + "responseCode":200 + }, + "input":{"shape":"GetKnowledgeBaseRequest"}, + "output":{"shape":"GetKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAgentActionGroups":{ + "name":"ListAgentActionGroups", + "http":{ + "method":"POST", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/actiongroups/", + "responseCode":200 + }, + "input":{"shape":"ListAgentActionGroupsRequest"}, + "output":{"shape":"ListAgentActionGroupsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAgentAliases":{ + "name":"ListAgentAliases", + "http":{ + "method":"POST", + "requestUri":"/agents/{agentId}/agentaliases/", + "responseCode":200 + }, + "input":{"shape":"ListAgentAliasesRequest"}, + "output":{"shape":"ListAgentAliasesResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAgentKnowledgeBases":{ + "name":"ListAgentKnowledgeBases", + "http":{ + "method":"POST", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/", + "responseCode":200 + }, + "input":{"shape":"ListAgentKnowledgeBasesRequest"}, + "output":{"shape":"ListAgentKnowledgeBasesResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAgentVersions":{ + "name":"ListAgentVersions", + "http":{ + "method":"POST", + "requestUri":"/agents/{agentId}/agentversions/", + "responseCode":200 + }, + "input":{"shape":"ListAgentVersionsRequest"}, + "output":{"shape":"ListAgentVersionsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAgents":{ + "name":"ListAgents", + "http":{ + "method":"POST", + "requestUri":"/agents/", + "responseCode":200 + }, + "input":{"shape":"ListAgentsRequest"}, + "output":{"shape":"ListAgentsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "ListDataSources":{ + "name":"ListDataSources", + "http":{ + "method":"POST", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/", + "responseCode":200 + }, + "input":{"shape":"ListDataSourcesRequest"}, + "output":{"shape":"ListDataSourcesResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListIngestionJobs":{ + "name":"ListIngestionJobs", + "http":{ + "method":"POST", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/", + "responseCode":200 + }, + "input":{"shape":"ListIngestionJobsRequest"}, + "output":{"shape":"ListIngestionJobsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListKnowledgeBases":{ + "name":"ListKnowledgeBases", + "http":{ + "method":"POST", + "requestUri":"/knowledgebases/", + "responseCode":200 + }, + "input":{"shape":"ListKnowledgeBasesRequest"}, + "output":{"shape":"ListKnowledgeBasesResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "PrepareAgent":{ + "name":"PrepareAgent", + "http":{ + "method":"POST", + "requestUri":"/agents/{agentId}/", + "responseCode":202 + }, + "input":{"shape":"PrepareAgentRequest"}, + "output":{"shape":"PrepareAgentResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, + "StartIngestionJob":{ + "name":"StartIngestionJob", + "http":{ + "method":"PUT", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/", + "responseCode":202 + }, + "input":{"shape":"StartIngestionJobRequest"}, + "output":{"shape":"StartIngestionJobResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateAgent":{ + "name":"UpdateAgent", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/", + "responseCode":202 + }, + "input":{"shape":"UpdateAgentRequest"}, + "output":{"shape":"UpdateAgentResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "UpdateAgentActionGroup":{ + "name":"UpdateAgentActionGroup", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/", + "responseCode":200 + }, + "input":{"shape":"UpdateAgentActionGroupRequest"}, + "output":{"shape":"UpdateAgentActionGroupResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "UpdateAgentAlias":{ + "name":"UpdateAgentAlias", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/agentaliases/{agentAliasId}/", + "responseCode":202 + }, + "input":{"shape":"UpdateAgentAliasRequest"}, + "output":{"shape":"UpdateAgentAliasResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "UpdateAgentKnowledgeBase":{ + "name":"UpdateAgentKnowledgeBase", + "http":{ + "method":"PUT", + "requestUri":"/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/", + "responseCode":200 + }, + "input":{"shape":"UpdateAgentKnowledgeBaseRequest"}, + "output":{"shape":"UpdateAgentKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "UpdateDataSource":{ + "name":"UpdateDataSource", + "http":{ + "method":"PUT", + "requestUri":"/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}", + "responseCode":200 + }, + "input":{"shape":"UpdateDataSourceRequest"}, + "output":{"shape":"UpdateDataSourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "UpdateKnowledgeBase":{ + "name":"UpdateKnowledgeBase", + "http":{ + "method":"PUT", + "requestUri":"/knowledgebases/{knowledgeBaseId}", + "responseCode":202 + }, + "input":{"shape":"UpdateKnowledgeBaseRequest"}, + "output":{"shape":"UpdateKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + } + }, + "shapes":{ + "APISchema":{ + "type":"structure", + "members":{ + "s3":{"shape":"S3Identifier"}, + "payload":{"shape":"Payload"} + }, + "union":true + }, + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ActionGroupExecutor":{ + "type":"structure", + "members":{ + "lambda":{"shape":"LambdaArn"} + }, + "union":true + }, + "ActionGroupSignature":{ + "type":"string", + "enum":["AMAZON.UserInput"] + }, + "ActionGroupState":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "ActionGroupSummaries":{ + "type":"list", + "member":{"shape":"ActionGroupSummary"}, + "max":10, + "min":0 + }, + "ActionGroupSummary":{ + "type":"structure", + "required":[ + "actionGroupId", + "actionGroupName", + "actionGroupState", + "updatedAt" + ], + "members":{ + "actionGroupId":{"shape":"Id"}, + "actionGroupName":{"shape":"Name"}, + "actionGroupState":{"shape":"ActionGroupState"}, + "description":{"shape":"Description"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "Agent":{ + "type":"structure", + "required":[ + "agentId", + "agentName", + "agentArn", + "agentVersion", + "agentStatus", + "idleSessionTTLInSeconds", + "agentResourceRoleArn", + "createdAt", + "updatedAt" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentName":{"shape":"Name"}, + "agentArn":{"shape":"AgentArn"}, + "agentVersion":{"shape":"DraftVersion"}, + "clientToken":{"shape":"ClientToken"}, + "instruction":{"shape":"Instruction"}, + "agentStatus":{"shape":"AgentStatus"}, + "foundationModel":{"shape":"ModelIdentifier"}, + "description":{"shape":"Description"}, + "idleSessionTTLInSeconds":{"shape":"SessionTTL"}, + "agentResourceRoleArn":{"shape":"AgentRoleArn"}, + "customerEncryptionKeyArn":{"shape":"KmsKeyArn"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "preparedAt":{"shape":"DateTimestamp"}, + "failureReasons":{"shape":"FailureReasons"}, + "recommendedActions":{"shape":"RecommendedActions"}, + "promptOverrideConfiguration":{"shape":"PromptOverrideConfiguration"} + } + }, + "AgentActionGroup":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "actionGroupId", + "actionGroupName", + "createdAt", + "updatedAt", + "actionGroupState" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentVersion":{"shape":"Version"}, + "actionGroupId":{"shape":"Id"}, + "actionGroupName":{"shape":"Name"}, + "clientToken":{"shape":"ClientToken"}, + "description":{"shape":"Description"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "parentActionSignature":{"shape":"ActionGroupSignature"}, + "actionGroupExecutor":{"shape":"ActionGroupExecutor"}, + "apiSchema":{"shape":"APISchema"}, + "actionGroupState":{"shape":"ActionGroupState"} + } + }, + "AgentAlias":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasId", + "agentAliasName", + "agentAliasArn", + "routingConfiguration", + "createdAt", + "updatedAt", + "agentAliasStatus" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentAliasId":{"shape":"AgentAliasId"}, + "agentAliasName":{"shape":"Name"}, + "agentAliasArn":{"shape":"AgentAliasArn"}, + "clientToken":{"shape":"ClientToken"}, + "description":{"shape":"Description"}, + "routingConfiguration":{"shape":"AgentAliasRoutingConfiguration"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "agentAliasHistoryEvents":{"shape":"AgentAliasHistoryEvents"}, + "agentAliasStatus":{"shape":"AgentAliasStatus"} + } + }, + "AgentAliasArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}" + }, + "AgentAliasHistoryEvent":{ + "type":"structure", + "members":{ + "routingConfiguration":{"shape":"AgentAliasRoutingConfiguration"}, + "endDate":{"shape":"DateTimestamp"}, + "startDate":{"shape":"DateTimestamp"} + } + }, + "AgentAliasHistoryEvents":{ + "type":"list", + "member":{"shape":"AgentAliasHistoryEvent"}, + "max":10, + "min":0 + }, + "AgentAliasId":{ + "type":"string", + "max":10, + "min":10, + "pattern":"(\\bTSTALIASID\\b|[0-9a-zA-Z]+)" + }, + "AgentAliasRoutingConfiguration":{ + "type":"list", + "member":{"shape":"AgentAliasRoutingConfigurationListItem"}, + "max":1, + "min":0 + }, + "AgentAliasRoutingConfigurationListItem":{ + "type":"structure", + "required":["agentVersion"], + "members":{ + "agentVersion":{"shape":"Version"} + } + }, + "AgentAliasStatus":{ + "type":"string", + "enum":[ + "CREATING", + "PREPARED", + "FAILED", + "UPDATING", + "DELETING" + ] + }, + "AgentAliasSummaries":{ + "type":"list", + "member":{"shape":"AgentAliasSummary"}, + "max":10, + "min":0 + }, + "AgentAliasSummary":{ + "type":"structure", + "required":[ + "agentAliasId", + "agentAliasName", + "agentAliasStatus", + "createdAt", + "updatedAt" + ], + "members":{ + "agentAliasId":{"shape":"AgentAliasId"}, + "agentAliasName":{"shape":"Name"}, + "description":{"shape":"Description"}, + "routingConfiguration":{"shape":"AgentAliasRoutingConfiguration"}, + "agentAliasStatus":{"shape":"AgentAliasStatus"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "AgentArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent/[0-9a-zA-Z]{10}" + }, + "AgentKnowledgeBase":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "knowledgeBaseId", + "description", + "createdAt", + "updatedAt", + "knowledgeBaseState" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentVersion":{"shape":"Version"}, + "knowledgeBaseId":{"shape":"Id"}, + "description":{"shape":"Description"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "knowledgeBaseState":{"shape":"KnowledgeBaseState"} + } + }, + "AgentKnowledgeBaseSummaries":{ + "type":"list", + "member":{"shape":"AgentKnowledgeBaseSummary"}, + "max":10, + "min":0 + }, + "AgentKnowledgeBaseSummary":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "knowledgeBaseState", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "description":{"shape":"Description"}, + "knowledgeBaseState":{"shape":"KnowledgeBaseState"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "AgentRoleArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?AmazonBedrockExecutionRoleForAgents.+" + }, + "AgentStatus":{ + "type":"string", + "enum":[ + "CREATING", + "PREPARING", + "PREPARED", + "NOT_PREPARED", + "DELETING", + "FAILED", + "VERSIONING", + "UPDATING" + ] + }, + "AgentSummaries":{ + "type":"list", + "member":{"shape":"AgentSummary"}, + "max":10, + "min":0 + }, + "AgentSummary":{ + "type":"structure", + "required":[ + "agentId", + "agentName", + "agentStatus", + "updatedAt" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentName":{"shape":"Name"}, + "agentStatus":{"shape":"AgentStatus"}, + "description":{"shape":"Description"}, + "updatedAt":{"shape":"DateTimestamp"}, + "latestAgentVersion":{"shape":"Version"} + } + }, + "AgentVersion":{ + "type":"structure", + "required":[ + "agentId", + "agentName", + "agentArn", + "version", + "agentStatus", + "idleSessionTTLInSeconds", + "agentResourceRoleArn", + "createdAt", + "updatedAt" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentName":{"shape":"Name"}, + "agentArn":{"shape":"AgentArn"}, + "version":{"shape":"NumericalVersion"}, + "instruction":{"shape":"Instruction"}, + "agentStatus":{"shape":"AgentStatus"}, + "foundationModel":{"shape":"ModelIdentifier"}, + "description":{"shape":"Description"}, + "idleSessionTTLInSeconds":{"shape":"SessionTTL"}, + "agentResourceRoleArn":{"shape":"AgentRoleArn"}, + "customerEncryptionKeyArn":{"shape":"KmsKeyArn"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "failureReasons":{"shape":"FailureReasons"}, + "recommendedActions":{"shape":"RecommendedActions"}, + "promptOverrideConfiguration":{"shape":"PromptOverrideConfiguration"} + } + }, + "AgentVersionSummaries":{ + "type":"list", + "member":{"shape":"AgentVersionSummary"}, + "max":10, + "min":0 + }, + "AgentVersionSummary":{ + "type":"structure", + "required":[ + "agentName", + "agentStatus", + "agentVersion", + "createdAt", + "updatedAt" + ], + "members":{ + "agentName":{"shape":"Name"}, + "agentStatus":{"shape":"AgentStatus"}, + "agentVersion":{"shape":"Version"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "description":{"shape":"Description"} + } + }, + "AssociateAgentKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "knowledgeBaseId", + "description" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"DraftVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "knowledgeBaseId":{"shape":"Id"}, + "description":{"shape":"Description"}, + "knowledgeBaseState":{"shape":"KnowledgeBaseState"} + } + }, + "AssociateAgentKnowledgeBaseResponse":{ + "type":"structure", + "required":["agentKnowledgeBase"], + "members":{ + "agentKnowledgeBase":{"shape":"AgentKnowledgeBase"} + } + }, + "BasePromptTemplate":{ + "type":"string", + "max":100000, + "min":1 + }, + "BedrockEmbeddingModelArn":{ + "type":"string", + "max":1011, + "min":20, + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}))" + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "ChunkingConfiguration":{ + "type":"structure", + "required":["chunkingStrategy"], + "members":{ + "chunkingStrategy":{"shape":"ChunkingStrategy"}, + "fixedSizeChunkingConfiguration":{"shape":"FixedSizeChunkingConfiguration"} + } + }, + "ChunkingStrategy":{ + "type":"string", + "enum":[ + "FIXED_SIZE", + "NONE" + ] + }, + "ClientToken":{ + "type":"string", + "max":256, + "min":33, + "pattern":"[a-zA-Z0-9](-*[a-zA-Z0-9])*" + }, + "ConflictException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CreateAgentActionGroupRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "actionGroupName" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"DraftVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "actionGroupName":{"shape":"Name"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "parentActionGroupSignature":{"shape":"ActionGroupSignature"}, + "actionGroupExecutor":{"shape":"ActionGroupExecutor"}, + "apiSchema":{"shape":"APISchema"}, + "actionGroupState":{"shape":"ActionGroupState"} + } + }, + "CreateAgentActionGroupResponse":{ + "type":"structure", + "required":["agentActionGroup"], + "members":{ + "agentActionGroup":{"shape":"AgentActionGroup"} + } + }, + "CreateAgentAliasRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasName" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentAliasName":{"shape":"Name"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "routingConfiguration":{"shape":"AgentAliasRoutingConfiguration"}, + "tags":{"shape":"TagsMap"} + } + }, + "CreateAgentAliasResponse":{ + "type":"structure", + "required":["agentAlias"], + "members":{ + "agentAlias":{"shape":"AgentAlias"} + } + }, + "CreateAgentRequest":{ + "type":"structure", + "required":[ + "agentName", + "agentResourceRoleArn" + ], + "members":{ + "agentName":{"shape":"Name"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "instruction":{"shape":"Instruction"}, + "foundationModel":{"shape":"ModelIdentifier"}, + "description":{"shape":"Description"}, + "idleSessionTTLInSeconds":{"shape":"SessionTTL"}, + "agentResourceRoleArn":{"shape":"AgentRoleArn"}, + "customerEncryptionKeyArn":{"shape":"KmsKeyArn"}, + "tags":{"shape":"TagsMap"}, + "promptOverrideConfiguration":{"shape":"PromptOverrideConfiguration"} + } + }, + "CreateAgentResponse":{ + "type":"structure", + "required":["agent"], + "members":{ + "agent":{"shape":"Agent"} + } + }, + "CreateDataSourceRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "name", + "dataSourceConfiguration" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "name":{"shape":"Name"}, + "description":{"shape":"Description"}, + "dataSourceConfiguration":{"shape":"DataSourceConfiguration"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "vectorIngestionConfiguration":{"shape":"VectorIngestionConfiguration"} + } + }, + "CreateDataSourceResponse":{ + "type":"structure", + "required":["dataSource"], + "members":{ + "dataSource":{"shape":"DataSource"} + } + }, + "CreateKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "name", + "roleArn", + "knowledgeBaseConfiguration", + "storageConfiguration" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "name":{"shape":"Name"}, + "description":{"shape":"Description"}, + "roleArn":{"shape":"KnowledgeBaseRoleArn"}, + "knowledgeBaseConfiguration":{"shape":"KnowledgeBaseConfiguration"}, + "storageConfiguration":{"shape":"StorageConfiguration"}, + "tags":{"shape":"TagsMap"} + } + }, + "CreateKnowledgeBaseResponse":{ + "type":"structure", + "required":["knowledgeBase"], + "members":{ + "knowledgeBase":{"shape":"KnowledgeBase"} + } + }, + "CreationMode":{ + "type":"string", + "enum":[ + "DEFAULT", + "OVERRIDDEN" + ] + }, + "DataSource":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "name", + "status", + "dataSourceConfiguration", + "createdAt", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "dataSourceId":{"shape":"Id"}, + "name":{"shape":"Name"}, + "status":{"shape":"DataSourceStatus"}, + "description":{"shape":"Description"}, + "dataSourceConfiguration":{"shape":"DataSourceConfiguration"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "vectorIngestionConfiguration":{"shape":"VectorIngestionConfiguration"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "DataSourceConfiguration":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{"shape":"DataSourceType"}, + "s3Configuration":{"shape":"S3DataSourceConfiguration"} + } + }, + "DataSourceStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "DELETING" + ] + }, + "DataSourceSummaries":{ + "type":"list", + "member":{"shape":"DataSourceSummary"} + }, + "DataSourceSummary":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "name", + "status", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "dataSourceId":{"shape":"Id"}, + "name":{"shape":"Name"}, + "status":{"shape":"DataSourceStatus"}, + "description":{"shape":"Description"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "DataSourceType":{ + "type":"string", + "enum":["S3"] + }, + "DateTimestamp":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "DeleteAgentActionGroupRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "actionGroupId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"DraftVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "actionGroupId":{ + "shape":"Id", + "location":"uri", + "locationName":"actionGroupId" + }, + "skipResourceInUseCheck":{ + "shape":"Boolean", + "location":"querystring", + "locationName":"skipResourceInUseCheck" + } + } + }, + "DeleteAgentActionGroupResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteAgentAliasRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentAliasId":{ + "shape":"AgentAliasId", + "location":"uri", + "locationName":"agentAliasId" + } + } + }, + "DeleteAgentAliasResponse":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasId", + "agentAliasStatus" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentAliasId":{"shape":"AgentAliasId"}, + "agentAliasStatus":{"shape":"AgentAliasStatus"} + } + }, + "DeleteAgentRequest":{ + "type":"structure", + "required":["agentId"], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "skipResourceInUseCheck":{ + "shape":"Boolean", + "location":"querystring", + "locationName":"skipResourceInUseCheck" + } + } + }, + "DeleteAgentResponse":{ + "type":"structure", + "required":[ + "agentId", + "agentStatus" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentStatus":{"shape":"AgentStatus"} + } + }, + "DeleteAgentVersionRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"NumericalVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "skipResourceInUseCheck":{ + "shape":"Boolean", + "location":"querystring", + "locationName":"skipResourceInUseCheck" + } + } + }, + "DeleteAgentVersionResponse":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "agentStatus" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentVersion":{"shape":"NumericalVersion"}, + "agentStatus":{"shape":"AgentStatus"} + } + }, + "DeleteDataSourceRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "dataSourceId":{ + "shape":"Id", + "location":"uri", + "locationName":"dataSourceId" + } + } + }, + "DeleteDataSourceResponse":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "status" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "dataSourceId":{"shape":"Id"}, + "status":{"shape":"DataSourceStatus"} + } + }, + "DeleteKnowledgeBaseRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "DeleteKnowledgeBaseResponse":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "status" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "status":{"shape":"KnowledgeBaseStatus"} + } + }, + "Description":{ + "type":"string", + "max":200, + "min":1 + }, + "DisassociateAgentKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "knowledgeBaseId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"DraftVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "DisassociateAgentKnowledgeBaseResponse":{ + "type":"structure", + "members":{ + } + }, + "DraftVersion":{ + "type":"string", + "max":5, + "min":5, + "pattern":"DRAFT" + }, + "FailureReason":{ + "type":"string", + "max":2048, + "min":0 + }, + "FailureReasons":{ + "type":"list", + "member":{"shape":"FailureReason"}, + "max":2048, + "min":0 + }, + "FieldName":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, + "FixedSizeChunkingConfiguration":{ + "type":"structure", + "required":[ + "maxTokens", + "overlapPercentage" + ], + "members":{ + "maxTokens":{"shape":"FixedSizeChunkingConfigurationMaxTokensInteger"}, + "overlapPercentage":{"shape":"FixedSizeChunkingConfigurationOverlapPercentageInteger"} + } + }, + "FixedSizeChunkingConfigurationMaxTokensInteger":{ + "type":"integer", + "box":true, + "min":1 + }, + "FixedSizeChunkingConfigurationOverlapPercentageInteger":{ + "type":"integer", + "box":true, + "max":99, + "min":1 + }, + "GetAgentActionGroupRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "actionGroupId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"Version", + "location":"uri", + "locationName":"agentVersion" + }, + "actionGroupId":{ + "shape":"Id", + "location":"uri", + "locationName":"actionGroupId" + } + } + }, + "GetAgentActionGroupResponse":{ + "type":"structure", + "required":["agentActionGroup"], + "members":{ + "agentActionGroup":{"shape":"AgentActionGroup"} + } + }, + "GetAgentAliasRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentAliasId":{ + "shape":"AgentAliasId", + "location":"uri", + "locationName":"agentAliasId" + } + } + }, + "GetAgentAliasResponse":{ + "type":"structure", + "required":["agentAlias"], + "members":{ + "agentAlias":{"shape":"AgentAlias"} + } + }, + "GetAgentKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "knowledgeBaseId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"Version", + "location":"uri", + "locationName":"agentVersion" + }, + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetAgentKnowledgeBaseResponse":{ + "type":"structure", + "required":["agentKnowledgeBase"], + "members":{ + "agentKnowledgeBase":{"shape":"AgentKnowledgeBase"} + } + }, + "GetAgentRequest":{ + "type":"structure", + "required":["agentId"], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + } + } + }, + "GetAgentResponse":{ + "type":"structure", + "required":["agent"], + "members":{ + "agent":{"shape":"Agent"} + } + }, + "GetAgentVersionRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"NumericalVersion", + "location":"uri", + "locationName":"agentVersion" + } + } + }, + "GetAgentVersionResponse":{ + "type":"structure", + "required":["agentVersion"], + "members":{ + "agentVersion":{"shape":"AgentVersion"} + } + }, + "GetDataSourceRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "dataSourceId":{ + "shape":"Id", + "location":"uri", + "locationName":"dataSourceId" + } + } + }, + "GetDataSourceResponse":{ + "type":"structure", + "required":["dataSource"], + "members":{ + "dataSource":{"shape":"DataSource"} + } + }, + "GetIngestionJobRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "ingestionJobId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "dataSourceId":{ + "shape":"Id", + "location":"uri", + "locationName":"dataSourceId" + }, + "ingestionJobId":{ + "shape":"Id", + "location":"uri", + "locationName":"ingestionJobId" + } + } + }, + "GetIngestionJobResponse":{ + "type":"structure", + "required":["ingestionJob"], + "members":{ + "ingestionJob":{"shape":"IngestionJob"} + } + }, + "GetKnowledgeBaseRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetKnowledgeBaseResponse":{ + "type":"structure", + "required":["knowledgeBase"], + "members":{ + "knowledgeBase":{"shape":"KnowledgeBase"} + } + }, + "Id":{ + "type":"string", + "pattern":"[0-9a-zA-Z]{10}" + }, + "InferenceConfiguration":{ + "type":"structure", + "members":{ + "temperature":{"shape":"Temperature"}, + "topP":{"shape":"TopP"}, + "topK":{"shape":"TopK"}, + "maximumLength":{"shape":"MaximumLength"}, + "stopSequences":{"shape":"StopSequences"} + } + }, + "IngestionJob":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "ingestionJobId", + "status", + "startedAt", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "dataSourceId":{"shape":"Id"}, + "ingestionJobId":{"shape":"Id"}, + "description":{"shape":"Description"}, + "status":{"shape":"IngestionJobStatus"}, + "statistics":{"shape":"IngestionJobStatistics"}, + "failureReasons":{"shape":"FailureReasons"}, + "startedAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "IngestionJobFilter":{ + "type":"structure", + "required":[ + "attribute", + "operator", + "values" + ], + "members":{ + "attribute":{"shape":"IngestionJobFilterAttribute"}, + "operator":{"shape":"IngestionJobFilterOperator"}, + "values":{"shape":"IngestionJobFilterValues"} + } + }, + "IngestionJobFilterAttribute":{ + "type":"string", + "enum":["STATUS"] + }, + "IngestionJobFilterOperator":{ + "type":"string", + "enum":["EQ"] + }, + "IngestionJobFilterValue":{ + "type":"string", + "max":100, + "min":0, + "pattern":".*" + }, + "IngestionJobFilterValues":{ + "type":"list", + "member":{"shape":"IngestionJobFilterValue"}, + "max":10, + "min":0 + }, + "IngestionJobFilters":{ + "type":"list", + "member":{"shape":"IngestionJobFilter"}, + "max":1, + "min":1 + }, + "IngestionJobSortBy":{ + "type":"structure", + "required":[ + "attribute", + "order" + ], + "members":{ + "attribute":{"shape":"IngestionJobSortByAttribute"}, + "order":{"shape":"SortOrder"} + } + }, + "IngestionJobSortByAttribute":{ + "type":"string", + "enum":[ + "STATUS", + "STARTED_AT" + ] + }, + "IngestionJobStatistics":{ + "type":"structure", + "members":{ + "numberOfDocumentsScanned":{"shape":"PrimitiveLong"}, + "numberOfNewDocumentsIndexed":{"shape":"PrimitiveLong"}, + "numberOfModifiedDocumentsIndexed":{"shape":"PrimitiveLong"}, + "numberOfDocumentsDeleted":{"shape":"PrimitiveLong"}, + "numberOfDocumentsFailed":{"shape":"PrimitiveLong"} + } + }, + "IngestionJobStatus":{ + "type":"string", + "enum":[ + "STARTING", + "IN_PROGRESS", + "COMPLETE", + "FAILED" + ] + }, + "IngestionJobSummaries":{ + "type":"list", + "member":{"shape":"IngestionJobSummary"} + }, + "IngestionJobSummary":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "ingestionJobId", + "status", + "startedAt", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "dataSourceId":{"shape":"Id"}, + "ingestionJobId":{"shape":"Id"}, + "description":{"shape":"Description"}, + "status":{"shape":"IngestionJobStatus"}, + "startedAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "statistics":{"shape":"IngestionJobStatistics"} + } + }, + "Instruction":{ + "type":"string", + "max":1200, + "min":40, + "sensitive":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "KmsKeyArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}" + }, + "KnowledgeBase":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "name", + "knowledgeBaseArn", + "roleArn", + "knowledgeBaseConfiguration", + "storageConfiguration", + "status", + "createdAt", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "name":{"shape":"Name"}, + "knowledgeBaseArn":{"shape":"KnowledgeBaseArn"}, + "description":{"shape":"Description"}, + "roleArn":{"shape":"KnowledgeBaseRoleArn"}, + "knowledgeBaseConfiguration":{"shape":"KnowledgeBaseConfiguration"}, + "storageConfiguration":{"shape":"StorageConfiguration"}, + "status":{"shape":"KnowledgeBaseStatus"}, + "createdAt":{"shape":"DateTimestamp"}, + "updatedAt":{"shape":"DateTimestamp"}, + "failureReasons":{"shape":"FailureReasons"} + } + }, + "KnowledgeBaseArn":{ + "type":"string", + "max":128, + "min":0, + "pattern":"arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+" + }, + "KnowledgeBaseConfiguration":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{"shape":"KnowledgeBaseType"}, + "vectorKnowledgeBaseConfiguration":{"shape":"VectorKnowledgeBaseConfiguration"} + } + }, + "KnowledgeBaseRoleArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?AmazonBedrockExecutionRoleForKnowledgeBase.+" + }, + "KnowledgeBaseState":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "KnowledgeBaseStatus":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "DELETING", + "UPDATING", + "FAILED" + ] + }, + "KnowledgeBaseStorageType":{ + "type":"string", + "enum":[ + "OPENSEARCH_SERVERLESS", + "PINECONE", + "REDIS_ENTERPRISE_CLOUD" + ] + }, + "KnowledgeBaseSummaries":{ + "type":"list", + "member":{"shape":"KnowledgeBaseSummary"} + }, + "KnowledgeBaseSummary":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "name", + "status", + "updatedAt" + ], + "members":{ + "knowledgeBaseId":{"shape":"Id"}, + "name":{"shape":"Name"}, + "description":{"shape":"Description"}, + "status":{"shape":"KnowledgeBaseStatus"}, + "updatedAt":{"shape":"DateTimestamp"} + } + }, + "KnowledgeBaseType":{ + "type":"string", + "enum":["VECTOR"] + }, + "LambdaArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_\\.]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?" + }, + "ListAgentActionGroupsRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"Version", + "location":"uri", + "locationName":"agentVersion" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentActionGroupsResponse":{ + "type":"structure", + "required":["actionGroupSummaries"], + "members":{ + "actionGroupSummaries":{"shape":"ActionGroupSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentAliasesRequest":{ + "type":"structure", + "required":["agentId"], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentAliasesResponse":{ + "type":"structure", + "required":["agentAliasSummaries"], + "members":{ + "agentAliasSummaries":{"shape":"AgentAliasSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentKnowledgeBasesRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"Version", + "location":"uri", + "locationName":"agentVersion" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentKnowledgeBasesResponse":{ + "type":"structure", + "required":["agentKnowledgeBaseSummaries"], + "members":{ + "agentKnowledgeBaseSummaries":{"shape":"AgentKnowledgeBaseSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentVersionsRequest":{ + "type":"structure", + "required":["agentId"], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentVersionsResponse":{ + "type":"structure", + "required":["agentVersionSummaries"], + "members":{ + "agentVersionSummaries":{"shape":"AgentVersionSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentsRequest":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAgentsResponse":{ + "type":"structure", + "required":["agentSummaries"], + "members":{ + "agentSummaries":{"shape":"AgentSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDataSourcesRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDataSourcesResponse":{ + "type":"structure", + "required":["dataSourceSummaries"], + "members":{ + "dataSourceSummaries":{"shape":"DataSourceSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListIngestionJobsRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "dataSourceId":{ + "shape":"Id", + "location":"uri", + "locationName":"dataSourceId" + }, + "filters":{"shape":"IngestionJobFilters"}, + "sortBy":{"shape":"IngestionJobSortBy"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListIngestionJobsResponse":{ + "type":"structure", + "required":["ingestionJobSummaries"], + "members":{ + "ingestionJobSummaries":{"shape":"IngestionJobSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListKnowledgeBasesRequest":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListKnowledgeBasesResponse":{ + "type":"structure", + "required":["knowledgeBaseSummaries"], + "members":{ + "knowledgeBaseSummaries":{"shape":"KnowledgeBaseSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"TaggableResourcesArn", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"TagsMap"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "MaximumLength":{ + "type":"integer", + "box":true, + "max":4096, + "min":0 + }, + "ModelIdentifier":{ + "type":"string", + "max":2048, + "min":1, + "pattern":".*(^[a-zA-Z0-9-_.]+$)|(^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}))$)|(^([0-9a-zA-Z][_-]?)+$)|^([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63})" + }, + "Name":{ + "type":"string", + "pattern":"([0-9a-zA-Z][_-]?){1,100}" + }, + "NextToken":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"\\S*" + }, + "NonBlankString":{ + "type":"string", + "pattern":"[\\s\\S]+" + }, + "NumericalVersion":{ + "type":"string", + "pattern":"[0-9]{1,5}" + }, + "OpenSearchServerlessCollectionArn":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"arn:aws:aoss:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:collection/[a-z0-9-]{3,32}" + }, + "OpenSearchServerlessConfiguration":{ + "type":"structure", + "required":[ + "collectionArn", + "vectorIndexName", + "fieldMapping" + ], + "members":{ + "collectionArn":{"shape":"OpenSearchServerlessCollectionArn"}, + "vectorIndexName":{"shape":"OpenSearchServerlessIndexName"}, + "fieldMapping":{"shape":"OpenSearchServerlessFieldMapping"} + } + }, + "OpenSearchServerlessFieldMapping":{ + "type":"structure", + "required":[ + "vectorField", + "textField", + "metadataField" + ], + "members":{ + "vectorField":{"shape":"FieldName"}, + "textField":{"shape":"FieldName"}, + "metadataField":{"shape":"FieldName"} + } + }, + "OpenSearchServerlessIndexName":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, + "Payload":{ + "type":"string", + "sensitive":true + }, + "PineconeConfiguration":{ + "type":"structure", + "required":[ + "connectionString", + "credentialsSecretArn", + "fieldMapping" + ], + "members":{ + "connectionString":{"shape":"PineconeConnectionString"}, + "credentialsSecretArn":{"shape":"SecretArn"}, + "namespace":{"shape":"PineconeNamespace"}, + "fieldMapping":{"shape":"PineconeFieldMapping"} + } + }, + "PineconeConnectionString":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, + "PineconeFieldMapping":{ + "type":"structure", + "required":[ + "textField", + "metadataField" + ], + "members":{ + "textField":{"shape":"FieldName"}, + "metadataField":{"shape":"FieldName"} + } + }, + "PineconeNamespace":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, + "PrepareAgentRequest":{ + "type":"structure", + "required":["agentId"], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + } + } + }, + "PrepareAgentResponse":{ + "type":"structure", + "required":[ + "agentId", + "agentStatus", + "agentVersion", + "preparedAt" + ], + "members":{ + "agentId":{"shape":"Id"}, + "agentStatus":{"shape":"AgentStatus"}, + "agentVersion":{"shape":"Version"}, + "preparedAt":{"shape":"DateTimestamp"} + } + }, + "PrimitiveLong":{"type":"long"}, + "PromptConfiguration":{ + "type":"structure", + "members":{ + "promptType":{"shape":"PromptType"}, + "promptCreationMode":{"shape":"CreationMode"}, + "promptState":{"shape":"PromptState"}, + "basePromptTemplate":{"shape":"BasePromptTemplate"}, + "inferenceConfiguration":{"shape":"InferenceConfiguration"}, + "parserMode":{"shape":"CreationMode"} + } + }, + "PromptConfigurations":{ + "type":"list", + "member":{"shape":"PromptConfiguration"}, + "max":10, + "min":0 + }, + "PromptOverrideConfiguration":{ + "type":"structure", + "required":["promptConfigurations"], + "members":{ + "promptConfigurations":{"shape":"PromptConfigurations"}, + "overrideLambda":{"shape":"LambdaArn"} + }, + "sensitive":true + }, + "PromptState":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "PromptType":{ + "type":"string", + "enum":[ + "PRE_PROCESSING", + "ORCHESTRATION", + "POST_PROCESSING", + "KNOWLEDGE_BASE_RESPONSE_GENERATION" + ] + }, + "RecommendedAction":{ + "type":"string", + "max":2048, + "min":0 + }, + "RecommendedActions":{ + "type":"list", + "member":{"shape":"RecommendedAction"}, + "max":2048, + "min":0 + }, + "RedisEnterpriseCloudConfiguration":{ + "type":"structure", + "required":[ + "endpoint", + "vectorIndexName", + "credentialsSecretArn", + "fieldMapping" + ], + "members":{ + "endpoint":{"shape":"RedisEnterpriseCloudEndpoint"}, + "vectorIndexName":{"shape":"RedisEnterpriseCloudIndexName"}, + "credentialsSecretArn":{"shape":"SecretArn"}, + "fieldMapping":{"shape":"RedisEnterpriseCloudFieldMapping"} + } + }, + "RedisEnterpriseCloudEndpoint":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, + "RedisEnterpriseCloudFieldMapping":{ + "type":"structure", + "required":[ + "vectorField", + "textField", + "metadataField" + ], + "members":{ + "vectorField":{"shape":"FieldName"}, + "textField":{"shape":"FieldName"}, + "metadataField":{"shape":"FieldName"} + } + }, + "RedisEnterpriseCloudIndexName":{ + "type":"string", + "max":2048, + "min":0, + "pattern":".*" + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "S3BucketArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws(|-cn|-us-gov):s3:::[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]" + }, + "S3BucketName":{ + "type":"string", + "max":63, + "min":3, + "pattern":"[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]" + }, + "S3DataSourceConfiguration":{ + "type":"structure", + "required":["bucketArn"], + "members":{ + "bucketArn":{"shape":"S3BucketArn"}, + "inclusionPrefixes":{"shape":"S3Prefixes"} + } + }, + "S3Identifier":{ + "type":"structure", + "members":{ + "s3BucketName":{"shape":"S3BucketName"}, + "s3ObjectKey":{"shape":"S3ObjectKey"} + } + }, + "S3ObjectKey":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*" + }, + "S3Prefix":{ + "type":"string", + "max":300, + "min":1 + }, + "S3Prefixes":{ + "type":"list", + "member":{"shape":"S3Prefix"}, + "max":1, + "min":1 + }, + "SecretArn":{ + "type":"string", + "pattern":"arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9/_+=.@-]{1,63}" + }, + "ServerSideEncryptionConfiguration":{ + "type":"structure", + "members":{ + "kmsKeyArn":{"shape":"KmsKeyArn"} + } + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "SessionTTL":{ + "type":"integer", + "box":true, + "max":3600, + "min":60 + }, + "SortOrder":{ + "type":"string", + "enum":[ + "ASCENDING", + "DESCENDING" + ] + }, + "StartIngestionJobRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "dataSourceId":{ + "shape":"Id", + "location":"uri", + "locationName":"dataSourceId" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"} + } + }, + "StartIngestionJobResponse":{ + "type":"structure", + "required":["ingestionJob"], + "members":{ + "ingestionJob":{"shape":"IngestionJob"} + } + }, + "StopSequences":{ + "type":"list", + "member":{"shape":"String"}, + "max":4, + "min":0 + }, + "StorageConfiguration":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{"shape":"KnowledgeBaseStorageType"}, + "opensearchServerlessConfiguration":{"shape":"OpenSearchServerlessConfiguration"}, + "pineconeConfiguration":{"shape":"PineconeConfiguration"}, + "redisEnterpriseCloudConfiguration":{"shape":"RedisEnterpriseCloudConfiguration"} + } + }, + "String":{"type":"string"}, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[a-zA-Z0-9\\s._:/=+@-]*" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"TaggableResourcesArn", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"TagsMap"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0, + "pattern":"[a-zA-Z0-9\\s._:/=+@-]*" + }, + "TaggableResourcesArn":{ + "type":"string", + "max":1011, + "min":20, + "pattern":".*(^arn:aws:bedrock:[a-zA-Z0-9-]+:/d{12}:(agent|agent-alias|knowledge-base)/[A-Z0-9]{10}(?:/[A-Z0-9]{10})?$).*" + }, + "TagsMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + }, + "Temperature":{ + "type":"float", + "box":true, + "max":1, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "TopK":{ + "type":"integer", + "box":true, + "max":500, + "min":0 + }, + "TopP":{ + "type":"float", + "box":true, + "max":1, + "min":0 + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"TaggableResourcesArn", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateAgentActionGroupRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "actionGroupId", + "actionGroupName" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"DraftVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "actionGroupId":{ + "shape":"Id", + "location":"uri", + "locationName":"actionGroupId" + }, + "actionGroupName":{"shape":"Name"}, + "description":{"shape":"Description"}, + "parentActionGroupSignature":{"shape":"ActionGroupSignature"}, + "actionGroupExecutor":{"shape":"ActionGroupExecutor"}, + "actionGroupState":{"shape":"ActionGroupState"}, + "apiSchema":{"shape":"APISchema"} + } + }, + "UpdateAgentActionGroupResponse":{ + "type":"structure", + "required":["agentActionGroup"], + "members":{ + "agentActionGroup":{"shape":"AgentActionGroup"} + } + }, + "UpdateAgentAliasRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasId", + "agentAliasName" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentAliasId":{ + "shape":"AgentAliasId", + "location":"uri", + "locationName":"agentAliasId" + }, + "agentAliasName":{"shape":"Name"}, + "description":{"shape":"Description"}, + "routingConfiguration":{"shape":"AgentAliasRoutingConfiguration"} + } + }, + "UpdateAgentAliasResponse":{ + "type":"structure", + "required":["agentAlias"], + "members":{ + "agentAlias":{"shape":"AgentAlias"} + } + }, + "UpdateAgentKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentVersion", + "knowledgeBaseId" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentVersion":{ + "shape":"DraftVersion", + "location":"uri", + "locationName":"agentVersion" + }, + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "description":{"shape":"Description"}, + "knowledgeBaseState":{"shape":"KnowledgeBaseState"} + } + }, + "UpdateAgentKnowledgeBaseResponse":{ + "type":"structure", + "required":["agentKnowledgeBase"], + "members":{ + "agentKnowledgeBase":{"shape":"AgentKnowledgeBase"} + } + }, + "UpdateAgentRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentName", + "agentResourceRoleArn" + ], + "members":{ + "agentId":{ + "shape":"Id", + "location":"uri", + "locationName":"agentId" + }, + "agentName":{"shape":"Name"}, + "instruction":{"shape":"Instruction"}, + "foundationModel":{"shape":"ModelIdentifier"}, + "description":{"shape":"Description"}, + "idleSessionTTLInSeconds":{"shape":"SessionTTL"}, + "agentResourceRoleArn":{"shape":"AgentRoleArn"}, + "customerEncryptionKeyArn":{"shape":"KmsKeyArn"}, + "promptOverrideConfiguration":{"shape":"PromptOverrideConfiguration"} + } + }, + "UpdateAgentResponse":{ + "type":"structure", + "required":["agent"], + "members":{ + "agent":{"shape":"Agent"} + } + }, + "UpdateDataSourceRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "dataSourceId", + "name", + "dataSourceConfiguration" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "dataSourceId":{ + "shape":"Id", + "location":"uri", + "locationName":"dataSourceId" + }, + "name":{"shape":"Name"}, + "description":{"shape":"Description"}, + "dataSourceConfiguration":{"shape":"DataSourceConfiguration"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "vectorIngestionConfiguration":{"shape":"VectorIngestionConfiguration"} + } + }, + "UpdateDataSourceResponse":{ + "type":"structure", + "required":["dataSource"], + "members":{ + "dataSource":{"shape":"DataSource"} + } + }, + "UpdateKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "name", + "roleArn", + "knowledgeBaseConfiguration", + "storageConfiguration" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"Id", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "name":{"shape":"Name"}, + "description":{"shape":"Description"}, + "roleArn":{"shape":"KnowledgeBaseRoleArn"}, + "knowledgeBaseConfiguration":{"shape":"KnowledgeBaseConfiguration"}, + "storageConfiguration":{"shape":"StorageConfiguration"} + } + }, + "UpdateKnowledgeBaseResponse":{ + "type":"structure", + "required":["knowledgeBase"], + "members":{ + "knowledgeBase":{"shape":"KnowledgeBase"} + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"}, + "fieldList":{"shape":"ValidationExceptionFieldList"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "name", + "message" + ], + "members":{ + "name":{"shape":"NonBlankString"}, + "message":{"shape":"NonBlankString"} + } + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "VectorIngestionConfiguration":{ + "type":"structure", + "members":{ + "chunkingConfiguration":{"shape":"ChunkingConfiguration"} + } + }, + "VectorKnowledgeBaseConfiguration":{ + "type":"structure", + "required":["embeddingModelArn"], + "members":{ + "embeddingModelArn":{"shape":"BedrockEmbeddingModelArn"} + } + }, + "Version":{ + "type":"string", + "max":5, + "min":1, + "pattern":"(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1604 @@ +{ + "version": "2.0", + "service": "

An example service, deployed with the Octane Service creator, which will echo the string

", + "operations": { + "AssociateAgentKnowledgeBase": "

Associate a Knowledge Base to an existing Amazon Bedrock Agent

", + "CreateAgent": "

Creates an Amazon Bedrock Agent

", + "CreateAgentActionGroup": "

Creates an Action Group for existing Amazon Bedrock Agent

", + "CreateAgentAlias": "

Creates an Alias for an existing Amazon Bedrock Agent

", + "CreateDataSource": "

Create a new data source

", + "CreateKnowledgeBase": "

Create a new knowledge base

", + "DeleteAgent": "

Deletes an Agent for existing Amazon Bedrock Agent

", + "DeleteAgentActionGroup": "

Deletes an Action Group for existing Amazon Bedrock Agent.

", + "DeleteAgentAlias": "

Deletes an Alias for a Amazon Bedrock Agent

", + "DeleteAgentVersion": "

Deletes an Agent version for existing Amazon Bedrock Agent

", + "DeleteDataSource": "

Delete an existing data source

", + "DeleteKnowledgeBase": "

Delete an existing knowledge base

", + "DisassociateAgentKnowledgeBase": "

Disassociate an existing Knowledge Base from an Amazon Bedrock Agent

", + "GetAgent": "

Gets an Agent for existing Amazon Bedrock Agent

", + "GetAgentActionGroup": "

Gets an Action Group for existing Amazon Bedrock Agent Version

", + "GetAgentAlias": "

Describes an Alias for a Amazon Bedrock Agent

", + "GetAgentKnowledgeBase": "

Gets a knowledge base associated to an existing Amazon Bedrock Agent Version

", + "GetAgentVersion": "

Gets an Agent version for existing Amazon Bedrock Agent

", + "GetDataSource": "

Get an existing data source

", + "GetIngestionJob": "

Get an ingestion job

", + "GetKnowledgeBase": "

Get an existing knowledge base

", + "ListAgentActionGroups": "

Lists an Action Group for existing Amazon Bedrock Agent Version

", + "ListAgentAliases": "

Lists all the Aliases for an Amazon Bedrock Agent

", + "ListAgentKnowledgeBases": "

List of Knowledge Bases associated to an existing Amazon Bedrock Agent Version

", + "ListAgentVersions": "

Lists Agent Versions

", + "ListAgents": "

Lists Agents

", + "ListDataSources": "

List data sources

", + "ListIngestionJobs": "

List ingestion jobs

", + "ListKnowledgeBases": "

List Knowledge Bases

", + "ListTagsForResource": "

List tags for a resource

", + "PrepareAgent": "

Prepares an existing Amazon Bedrock Agent to receive runtime requests

", + "StartIngestionJob": "

Start a new ingestion job

", + "TagResource": "

Tag a resource

", + "UntagResource": "

Untag a resource

", + "UpdateAgent": "

Updates an existing Amazon Bedrock Agent

", + "UpdateAgentActionGroup": "

Updates an existing Action Group for Amazon Bedrock Agent

", + "UpdateAgentAlias": "

Updates an existing Alias for an Amazon Bedrock Agent

", + "UpdateAgentKnowledgeBase": "

Updates an existing Knowledge Base associated to an Amazon Bedrock Agent

", + "UpdateDataSource": "

Update an existing data source

", + "UpdateKnowledgeBase": "

Update an existing knowledge base

" + }, + "shapes": { + "APISchema": { + "base": "

Contains information about the API Schema for the Action Group

", + "refs": { + "AgentActionGroup$apiSchema": null, + "CreateAgentActionGroupRequest$apiSchema": null, + "UpdateAgentActionGroupRequest$apiSchema": null + } + }, + "AccessDeniedException": { + "base": "

This exception is thrown when a request is denied per access permissions

", + "refs": { + } + }, + "ActionGroupExecutor": { + "base": "

Type of Executors for an Action Group

", + "refs": { + "AgentActionGroup$actionGroupExecutor": null, + "CreateAgentActionGroupRequest$actionGroupExecutor": null, + "UpdateAgentActionGroupRequest$actionGroupExecutor": null + } + }, + "ActionGroupSignature": { + "base": "

Action Group Signature for a BuiltIn Action

", + "refs": { + "AgentActionGroup$parentActionSignature": null, + "CreateAgentActionGroupRequest$parentActionGroupSignature": null, + "UpdateAgentActionGroupRequest$parentActionGroupSignature": null + } + }, + "ActionGroupState": { + "base": "

State of the action group

", + "refs": { + "ActionGroupSummary$actionGroupState": null, + "AgentActionGroup$actionGroupState": null, + "CreateAgentActionGroupRequest$actionGroupState": null, + "UpdateAgentActionGroupRequest$actionGroupState": null + } + }, + "ActionGroupSummaries": { + "base": "

List of ActionGroup Summaries

", + "refs": { + "ListAgentActionGroupsResponse$actionGroupSummaries": null + } + }, + "ActionGroupSummary": { + "base": "

ActionGroup Summary

", + "refs": { + "ActionGroupSummaries$member": null + } + }, + "Agent": { + "base": "

Contains the information of an agent

", + "refs": { + "CreateAgentResponse$agent": null, + "GetAgentResponse$agent": null, + "UpdateAgentResponse$agent": null + } + }, + "AgentActionGroup": { + "base": "

Contains the information of an Agent Action Group

", + "refs": { + "CreateAgentActionGroupResponse$agentActionGroup": null, + "GetAgentActionGroupResponse$agentActionGroup": null, + "UpdateAgentActionGroupResponse$agentActionGroup": null + } + }, + "AgentAlias": { + "base": "

Contains the information of an agent alias

", + "refs": { + "CreateAgentAliasResponse$agentAlias": null, + "GetAgentAliasResponse$agentAlias": null, + "UpdateAgentAliasResponse$agentAlias": null + } + }, + "AgentAliasArn": { + "base": "

Arn representation of the Agent Alias.

", + "refs": { + "AgentAlias$agentAliasArn": null + } + }, + "AgentAliasHistoryEvent": { + "base": "

History event for an alias for an Agent.

", + "refs": { + "AgentAliasHistoryEvents$member": null + } + }, + "AgentAliasHistoryEvents": { + "base": "

The list of history events for an alias for an Agent.

", + "refs": { + "AgentAlias$agentAliasHistoryEvents": null + } + }, + "AgentAliasId": { + "base": "

Id for an Agent Alias generated at the server side.

", + "refs": { + "AgentAlias$agentAliasId": null, + "AgentAliasSummary$agentAliasId": null, + "DeleteAgentAliasRequest$agentAliasId": "

Id generated at the server side when an Agent Alias is created

", + "DeleteAgentAliasResponse$agentAliasId": null, + "GetAgentAliasRequest$agentAliasId": "

Id generated at the server side when an Agent Alias is created

", + "UpdateAgentAliasRequest$agentAliasId": "

Id generated at the server side when an Agent Alias is created

" + } + }, + "AgentAliasRoutingConfiguration": { + "base": "

Routing configuration for an Agent alias.

", + "refs": { + "AgentAlias$routingConfiguration": null, + "AgentAliasHistoryEvent$routingConfiguration": null, + "AgentAliasSummary$routingConfiguration": null, + "CreateAgentAliasRequest$routingConfiguration": null, + "UpdateAgentAliasRequest$routingConfiguration": null + } + }, + "AgentAliasRoutingConfigurationListItem": { + "base": "

Details about the routing configuration for an Agent alias.

", + "refs": { + "AgentAliasRoutingConfiguration$member": null + } + }, + "AgentAliasStatus": { + "base": "

The statuses an Agent Alias can be in.

", + "refs": { + "AgentAlias$agentAliasStatus": null, + "AgentAliasSummary$agentAliasStatus": null, + "DeleteAgentAliasResponse$agentAliasStatus": null + } + }, + "AgentAliasSummaries": { + "base": "

The list of summaries of all the aliases for an Agent.

", + "refs": { + "ListAgentAliasesResponse$agentAliasSummaries": null + } + }, + "AgentAliasSummary": { + "base": "

Summary of an alias for an Agent.

", + "refs": { + "AgentAliasSummaries$member": null + } + }, + "AgentArn": { + "base": "

Arn representation of the Agent.

", + "refs": { + "Agent$agentArn": null, + "AgentVersion$agentArn": null + } + }, + "AgentKnowledgeBase": { + "base": "

Contains the information of an Agent Knowledge Base.

", + "refs": { + "AssociateAgentKnowledgeBaseResponse$agentKnowledgeBase": null, + "GetAgentKnowledgeBaseResponse$agentKnowledgeBase": null, + "UpdateAgentKnowledgeBaseResponse$agentKnowledgeBase": null + } + }, + "AgentKnowledgeBaseSummaries": { + "base": "

List of Agent Knowledge Base Summaries

", + "refs": { + "ListAgentKnowledgeBasesResponse$agentKnowledgeBaseSummaries": null + } + }, + "AgentKnowledgeBaseSummary": { + "base": "

Agent Knowledge Base Summary

", + "refs": { + "AgentKnowledgeBaseSummaries$member": null + } + }, + "AgentRoleArn": { + "base": "

ARN of a IAM role.

", + "refs": { + "Agent$agentResourceRoleArn": null, + "AgentVersion$agentResourceRoleArn": null, + "CreateAgentRequest$agentResourceRoleArn": null, + "UpdateAgentRequest$agentResourceRoleArn": null + } + }, + "AgentStatus": { + "base": "

Schema Type for Action APIs.

", + "refs": { + "Agent$agentStatus": null, + "AgentSummary$agentStatus": null, + "AgentVersion$agentStatus": null, + "AgentVersionSummary$agentStatus": null, + "DeleteAgentResponse$agentStatus": null, + "DeleteAgentVersionResponse$agentStatus": null, + "PrepareAgentResponse$agentStatus": null + } + }, + "AgentSummaries": { + "base": "

List of AgentSummary.

", + "refs": { + "ListAgentsResponse$agentSummaries": null + } + }, + "AgentSummary": { + "base": "

Summary of Agent.

", + "refs": { + "AgentSummaries$member": null + } + }, + "AgentVersion": { + "base": "

Contains the information of an agent version.

", + "refs": { + "GetAgentVersionResponse$agentVersion": null + } + }, + "AgentVersionSummaries": { + "base": "

List of AgentVersionSummary.

", + "refs": { + "ListAgentVersionsResponse$agentVersionSummaries": null + } + }, + "AgentVersionSummary": { + "base": "

Summary of agent version.

", + "refs": { + "AgentVersionSummaries$member": null + } + }, + "AssociateAgentKnowledgeBaseRequest": { + "base": "

Associate Agent Knowledge Base Request

", + "refs": { + } + }, + "AssociateAgentKnowledgeBaseResponse": { + "base": "

Associate Agent Knowledge Base Response

", + "refs": { + } + }, + "BasePromptTemplate": { + "base": "

Base Prompt Template.

", + "refs": { + "PromptConfiguration$basePromptTemplate": null + } + }, + "BedrockEmbeddingModelArn": { + "base": "

Arn of a Bedrock model.

", + "refs": { + "VectorKnowledgeBaseConfiguration$embeddingModelArn": null + } + }, + "Boolean": { + "base": null, + "refs": { + "DeleteAgentActionGroupRequest$skipResourceInUseCheck": "

Skips checking if resource is in use when set to true. Defaults to false

", + "DeleteAgentRequest$skipResourceInUseCheck": "

Skips checking if resource is in use when set to true. Defaults to false

", + "DeleteAgentVersionRequest$skipResourceInUseCheck": "

Skips checking if resource is in use when set to true. Defaults to false

" + } + }, + "ChunkingConfiguration": { + "base": "

Configures chunking strategy

", + "refs": { + "VectorIngestionConfiguration$chunkingConfiguration": null + } + }, + "ChunkingStrategy": { + "base": "

The type of chunking strategy

", + "refs": { + "ChunkingConfiguration$chunkingStrategy": null + } + }, + "ClientToken": { + "base": "

Client specified token used for idempotency checks

", + "refs": { + "Agent$clientToken": null, + "AgentActionGroup$clientToken": null, + "AgentAlias$clientToken": null, + "CreateAgentActionGroupRequest$clientToken": null, + "CreateAgentAliasRequest$clientToken": null, + "CreateAgentRequest$clientToken": null, + "CreateDataSourceRequest$clientToken": null, + "CreateKnowledgeBaseRequest$clientToken": null, + "StartIngestionJobRequest$clientToken": null + } + }, + "ConflictException": { + "base": "

This exception is thrown when there is a conflict performing an operation

", + "refs": { + } + }, + "CreateAgentActionGroupRequest": { + "base": "

Create Action Group Request

", + "refs": { + } + }, + "CreateAgentActionGroupResponse": { + "base": "

Create Action Group Response

", + "refs": { + } + }, + "CreateAgentAliasRequest": { + "base": "

Create Agent Alias Request

", + "refs": { + } + }, + "CreateAgentAliasResponse": { + "base": "

Create Agent Alias Response

", + "refs": { + } + }, + "CreateAgentRequest": { + "base": "

Create Agent Request

", + "refs": { + } + }, + "CreateAgentResponse": { + "base": "

Create Agent Response

", + "refs": { + } + }, + "CreateDataSourceRequest": { + "base": null, + "refs": { + } + }, + "CreateDataSourceResponse": { + "base": null, + "refs": { + } + }, + "CreateKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "CreateKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "CreationMode": { + "base": "

Creation Mode for Prompt Configuration.

", + "refs": { + "PromptConfiguration$promptCreationMode": null, + "PromptConfiguration$parserMode": null + } + }, + "DataSource": { + "base": "

Contains the information of a data source.

", + "refs": { + "CreateDataSourceResponse$dataSource": null, + "GetDataSourceResponse$dataSource": null, + "UpdateDataSourceResponse$dataSource": null + } + }, + "DataSourceConfiguration": { + "base": "

Specifies a raw data source location to ingest.

", + "refs": { + "CreateDataSourceRequest$dataSourceConfiguration": null, + "DataSource$dataSourceConfiguration": null, + "UpdateDataSourceRequest$dataSourceConfiguration": null + } + }, + "DataSourceStatus": { + "base": "

The status of a data source.

", + "refs": { + "DataSource$status": null, + "DataSourceSummary$status": null, + "DeleteDataSourceResponse$status": null + } + }, + "DataSourceSummaries": { + "base": "

list of data source summaries

", + "refs": { + "ListDataSourcesResponse$dataSourceSummaries": null + } + }, + "DataSourceSummary": { + "base": "

Summary information of a data source.

", + "refs": { + "DataSourceSummaries$member": null + } + }, + "DataSourceType": { + "base": "

The type of the data source location.

", + "refs": { + "DataSourceConfiguration$type": null + } + }, + "DateTimestamp": { + "base": "

Time Stamp.

", + "refs": { + "ActionGroupSummary$updatedAt": null, + "Agent$createdAt": null, + "Agent$updatedAt": null, + "Agent$preparedAt": null, + "AgentActionGroup$createdAt": null, + "AgentActionGroup$updatedAt": null, + "AgentAlias$createdAt": null, + "AgentAlias$updatedAt": null, + "AgentAliasHistoryEvent$endDate": null, + "AgentAliasHistoryEvent$startDate": null, + "AgentAliasSummary$createdAt": null, + "AgentAliasSummary$updatedAt": null, + "AgentKnowledgeBase$createdAt": null, + "AgentKnowledgeBase$updatedAt": null, + "AgentKnowledgeBaseSummary$updatedAt": null, + "AgentSummary$updatedAt": null, + "AgentVersion$createdAt": null, + "AgentVersion$updatedAt": null, + "AgentVersionSummary$createdAt": null, + "AgentVersionSummary$updatedAt": null, + "DataSource$createdAt": null, + "DataSource$updatedAt": null, + "DataSourceSummary$updatedAt": null, + "IngestionJob$startedAt": null, + "IngestionJob$updatedAt": null, + "IngestionJobSummary$startedAt": null, + "IngestionJobSummary$updatedAt": null, + "KnowledgeBase$createdAt": null, + "KnowledgeBase$updatedAt": null, + "KnowledgeBaseSummary$updatedAt": null, + "PrepareAgentResponse$preparedAt": null + } + }, + "DeleteAgentActionGroupRequest": { + "base": "

Delete Action Group Request

", + "refs": { + } + }, + "DeleteAgentActionGroupResponse": { + "base": "

Delete Action Group Response

", + "refs": { + } + }, + "DeleteAgentAliasRequest": { + "base": "

Delete Agent Alias Request

", + "refs": { + } + }, + "DeleteAgentAliasResponse": { + "base": "

Delete Agent Alias Response

", + "refs": { + } + }, + "DeleteAgentRequest": { + "base": "

Delete Agent Request

", + "refs": { + } + }, + "DeleteAgentResponse": { + "base": "

Delete Agent Response

", + "refs": { + } + }, + "DeleteAgentVersionRequest": { + "base": "

Delete Agent Version Request

", + "refs": { + } + }, + "DeleteAgentVersionResponse": { + "base": "

Delete Agent Version Response

", + "refs": { + } + }, + "DeleteDataSourceRequest": { + "base": null, + "refs": { + } + }, + "DeleteDataSourceResponse": { + "base": null, + "refs": { + } + }, + "DeleteKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "DeleteKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "Description": { + "base": "

Description of the Resource.

", + "refs": { + "ActionGroupSummary$description": null, + "Agent$description": null, + "AgentActionGroup$description": null, + "AgentAlias$description": null, + "AgentAliasSummary$description": null, + "AgentKnowledgeBase$description": null, + "AgentKnowledgeBaseSummary$description": null, + "AgentSummary$description": null, + "AgentVersion$description": null, + "AgentVersionSummary$description": null, + "AssociateAgentKnowledgeBaseRequest$description": null, + "CreateAgentActionGroupRequest$description": null, + "CreateAgentAliasRequest$description": null, + "CreateAgentRequest$description": null, + "CreateDataSourceRequest$description": null, + "CreateKnowledgeBaseRequest$description": null, + "DataSource$description": null, + "DataSourceSummary$description": null, + "IngestionJob$description": null, + "IngestionJobSummary$description": null, + "KnowledgeBase$description": null, + "KnowledgeBaseSummary$description": null, + "StartIngestionJobRequest$description": null, + "UpdateAgentActionGroupRequest$description": null, + "UpdateAgentAliasRequest$description": null, + "UpdateAgentKnowledgeBaseRequest$description": null, + "UpdateAgentRequest$description": null, + "UpdateDataSourceRequest$description": null, + "UpdateKnowledgeBaseRequest$description": null + } + }, + "DisassociateAgentKnowledgeBaseRequest": { + "base": "

Disassociate Agent Knowledge Base Request

", + "refs": { + } + }, + "DisassociateAgentKnowledgeBaseResponse": { + "base": "

Disassociate Agent Knowledge Base Response

", + "refs": { + } + }, + "DraftVersion": { + "base": "

Draft Agent Version.

", + "refs": { + "Agent$agentVersion": null, + "AssociateAgentKnowledgeBaseRequest$agentVersion": "

Draft Version of the Agent.

", + "CreateAgentActionGroupRequest$agentVersion": "

Draft Version of the Agent.

", + "DeleteAgentActionGroupRequest$agentVersion": "

Draft Version of the Agent.

", + "DisassociateAgentKnowledgeBaseRequest$agentVersion": "

Draft Version of the Agent.

", + "UpdateAgentActionGroupRequest$agentVersion": "

Draft Version of the Agent.

", + "UpdateAgentKnowledgeBaseRequest$agentVersion": "

Draft Version of the Agent.

" + } + }, + "FailureReason": { + "base": "

Failure Reason for Error.

", + "refs": { + "FailureReasons$member": null + } + }, + "FailureReasons": { + "base": "

Failure Reasons for Error.

", + "refs": { + "Agent$failureReasons": null, + "AgentVersion$failureReasons": null, + "IngestionJob$failureReasons": null, + "KnowledgeBase$failureReasons": null + } + }, + "FieldName": { + "base": "

Name of the field

", + "refs": { + "OpenSearchServerlessFieldMapping$vectorField": null, + "OpenSearchServerlessFieldMapping$textField": null, + "OpenSearchServerlessFieldMapping$metadataField": null, + "PineconeFieldMapping$textField": null, + "PineconeFieldMapping$metadataField": null, + "RedisEnterpriseCloudFieldMapping$vectorField": null, + "RedisEnterpriseCloudFieldMapping$textField": null, + "RedisEnterpriseCloudFieldMapping$metadataField": null + } + }, + "FixedSizeChunkingConfiguration": { + "base": "

Configures fixed size chunking strategy

", + "refs": { + "ChunkingConfiguration$fixedSizeChunkingConfiguration": null + } + }, + "FixedSizeChunkingConfigurationMaxTokensInteger": { + "base": null, + "refs": { + "FixedSizeChunkingConfiguration$maxTokens": "

The maximum number of tokens per chunk.

" + } + }, + "FixedSizeChunkingConfigurationOverlapPercentageInteger": { + "base": null, + "refs": { + "FixedSizeChunkingConfiguration$overlapPercentage": "

The overlap percentage between adjacent chunks.

" + } + }, + "GetAgentActionGroupRequest": { + "base": "

Get Action Group Request

", + "refs": { + } + }, + "GetAgentActionGroupResponse": { + "base": "

Get Action Group Response

", + "refs": { + } + }, + "GetAgentAliasRequest": { + "base": "

Get Agent Alias Request

", + "refs": { + } + }, + "GetAgentAliasResponse": { + "base": "

Get Agent Alias Response

", + "refs": { + } + }, + "GetAgentKnowledgeBaseRequest": { + "base": "

Get Agent Knowledge Base Request

", + "refs": { + } + }, + "GetAgentKnowledgeBaseResponse": { + "base": "

Get Agent Knowledge Base Response

", + "refs": { + } + }, + "GetAgentRequest": { + "base": "

Get Agent Request

", + "refs": { + } + }, + "GetAgentResponse": { + "base": "

Get Agent Response

", + "refs": { + } + }, + "GetAgentVersionRequest": { + "base": "

Get Agent Version Request

", + "refs": { + } + }, + "GetAgentVersionResponse": { + "base": "

Get Agent Version Response

", + "refs": { + } + }, + "GetDataSourceRequest": { + "base": null, + "refs": { + } + }, + "GetDataSourceResponse": { + "base": null, + "refs": { + } + }, + "GetIngestionJobRequest": { + "base": null, + "refs": { + } + }, + "GetIngestionJobResponse": { + "base": null, + "refs": { + } + }, + "GetKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "GetKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "Id": { + "base": "

Identifier for a resource.

", + "refs": { + "ActionGroupSummary$actionGroupId": null, + "Agent$agentId": null, + "AgentActionGroup$agentId": null, + "AgentActionGroup$actionGroupId": null, + "AgentAlias$agentId": null, + "AgentKnowledgeBase$agentId": null, + "AgentKnowledgeBase$knowledgeBaseId": null, + "AgentKnowledgeBaseSummary$knowledgeBaseId": null, + "AgentSummary$agentId": null, + "AgentVersion$agentId": null, + "AssociateAgentKnowledgeBaseRequest$agentId": "

Id generated at the server side when an Agent is created

", + "AssociateAgentKnowledgeBaseRequest$knowledgeBaseId": null, + "CreateAgentActionGroupRequest$agentId": "

Id generated at the server side when an Agent is created

", + "CreateAgentAliasRequest$agentId": "

Id generated at the server side when an Agent is created

", + "CreateDataSourceRequest$knowledgeBaseId": null, + "DataSource$knowledgeBaseId": null, + "DataSource$dataSourceId": null, + "DataSourceSummary$knowledgeBaseId": null, + "DataSourceSummary$dataSourceId": null, + "DeleteAgentActionGroupRequest$agentId": "

Id generated at the server side when an Agent is created

", + "DeleteAgentActionGroupRequest$actionGroupId": "

Id generated at the server side when an Agent ActionGroup is created

", + "DeleteAgentAliasRequest$agentId": "

Id generated at the server side when an Agent is created

", + "DeleteAgentAliasResponse$agentId": null, + "DeleteAgentRequest$agentId": "

Id generated at the server side when an Agent is created

", + "DeleteAgentResponse$agentId": null, + "DeleteAgentVersionRequest$agentId": "

Id generated at the server side when an Agent is created

", + "DeleteAgentVersionResponse$agentId": null, + "DeleteDataSourceRequest$knowledgeBaseId": null, + "DeleteDataSourceRequest$dataSourceId": null, + "DeleteDataSourceResponse$knowledgeBaseId": null, + "DeleteDataSourceResponse$dataSourceId": null, + "DeleteKnowledgeBaseRequest$knowledgeBaseId": null, + "DeleteKnowledgeBaseResponse$knowledgeBaseId": null, + "DisassociateAgentKnowledgeBaseRequest$agentId": "

Id generated at the server side when an Agent is created

", + "DisassociateAgentKnowledgeBaseRequest$knowledgeBaseId": "

Id generated at the server side when a Knowledge Base is associated to an Agent

", + "GetAgentActionGroupRequest$agentId": "

Id generated at the server side when an Agent is created

", + "GetAgentActionGroupRequest$actionGroupId": "

Id generated at the server side when an Agent Action Group is created

", + "GetAgentAliasRequest$agentId": "

Id generated at the server side when an Agent is created

", + "GetAgentKnowledgeBaseRequest$agentId": "

Id generated at the server side when an Agent is created

", + "GetAgentKnowledgeBaseRequest$knowledgeBaseId": "

Id generated at the server side when a Knowledge Base is associated

", + "GetAgentRequest$agentId": "

Id generated at the server side when an Agent is created

", + "GetAgentVersionRequest$agentId": "

Id generated at the server side when an Agent is created

", + "GetDataSourceRequest$knowledgeBaseId": null, + "GetDataSourceRequest$dataSourceId": null, + "GetIngestionJobRequest$knowledgeBaseId": null, + "GetIngestionJobRequest$dataSourceId": null, + "GetIngestionJobRequest$ingestionJobId": null, + "GetKnowledgeBaseRequest$knowledgeBaseId": null, + "IngestionJob$knowledgeBaseId": null, + "IngestionJob$dataSourceId": null, + "IngestionJob$ingestionJobId": null, + "IngestionJobSummary$knowledgeBaseId": null, + "IngestionJobSummary$dataSourceId": null, + "IngestionJobSummary$ingestionJobId": null, + "KnowledgeBase$knowledgeBaseId": null, + "KnowledgeBaseSummary$knowledgeBaseId": null, + "ListAgentActionGroupsRequest$agentId": "

Id generated at the server side when an Agent is Listed

", + "ListAgentAliasesRequest$agentId": "

Id generated at the server side when an Agent is created

", + "ListAgentKnowledgeBasesRequest$agentId": "

Id generated at the server side when an Agent is created

", + "ListAgentVersionsRequest$agentId": "

Id generated at the server side when an Agent is created

", + "ListDataSourcesRequest$knowledgeBaseId": null, + "ListIngestionJobsRequest$knowledgeBaseId": null, + "ListIngestionJobsRequest$dataSourceId": null, + "PrepareAgentRequest$agentId": "

Id generated at the server side when an Agent is created

", + "PrepareAgentResponse$agentId": null, + "StartIngestionJobRequest$knowledgeBaseId": null, + "StartIngestionJobRequest$dataSourceId": null, + "UpdateAgentActionGroupRequest$agentId": "

Id generated at the server side when an Agent is created

", + "UpdateAgentActionGroupRequest$actionGroupId": "

Id generated at the server side when an Action Group is created under Agent

", + "UpdateAgentAliasRequest$agentId": "

Id generated at the server side when an Agent is created

", + "UpdateAgentKnowledgeBaseRequest$agentId": "

Id generated at the server side when an Agent is created

", + "UpdateAgentKnowledgeBaseRequest$knowledgeBaseId": "

Id generated at the server side when a Knowledge Base is associated to an Agent

", + "UpdateAgentRequest$agentId": "

Id generated at the server side when an Agent is created

", + "UpdateDataSourceRequest$knowledgeBaseId": null, + "UpdateDataSourceRequest$dataSourceId": null, + "UpdateKnowledgeBaseRequest$knowledgeBaseId": null + } + }, + "InferenceConfiguration": { + "base": "

Configuration for inference in prompt configuration

", + "refs": { + "PromptConfiguration$inferenceConfiguration": null + } + }, + "IngestionJob": { + "base": "

Contains the information of an ingestion job.

", + "refs": { + "GetIngestionJobResponse$ingestionJob": null, + "StartIngestionJobResponse$ingestionJob": null + } + }, + "IngestionJobFilter": { + "base": "

Filters the response returned by ListIngestionJobs operation.

", + "refs": { + "IngestionJobFilters$member": null + } + }, + "IngestionJobFilterAttribute": { + "base": "

The name of the field to filter ingestion jobs.

", + "refs": { + "IngestionJobFilter$attribute": null + } + }, + "IngestionJobFilterOperator": { + "base": "

The operator used to filter ingestion jobs.

", + "refs": { + "IngestionJobFilter$operator": null + } + }, + "IngestionJobFilterValue": { + "base": "

The value used to filter ingestion jobs.

", + "refs": { + "IngestionJobFilterValues$member": null + } + }, + "IngestionJobFilterValues": { + "base": "

The list of values used to filter ingestion jobs.

", + "refs": { + "IngestionJobFilter$values": null + } + }, + "IngestionJobFilters": { + "base": "

List of IngestionJobFilters

", + "refs": { + "ListIngestionJobsRequest$filters": null + } + }, + "IngestionJobSortBy": { + "base": "

Sorts the response returned by ListIngestionJobs operation.

", + "refs": { + "ListIngestionJobsRequest$sortBy": null + } + }, + "IngestionJobSortByAttribute": { + "base": "

The name of the field to sort ingestion jobs.

", + "refs": { + "IngestionJobSortBy$attribute": null + } + }, + "IngestionJobStatistics": { + "base": "

The document level statistics of an ingestion job

", + "refs": { + "IngestionJob$statistics": null, + "IngestionJobSummary$statistics": null + } + }, + "IngestionJobStatus": { + "base": "

The status of an ingestion job.

", + "refs": { + "IngestionJob$status": null, + "IngestionJobSummary$status": null + } + }, + "IngestionJobSummaries": { + "base": "

List of IngestionJobSummaries

", + "refs": { + "ListIngestionJobsResponse$ingestionJobSummaries": null + } + }, + "IngestionJobSummary": { + "base": "

Summary information of an ingestion job.

", + "refs": { + "IngestionJobSummaries$member": null + } + }, + "Instruction": { + "base": "

Instruction for the agent.

", + "refs": { + "Agent$instruction": null, + "AgentVersion$instruction": null, + "CreateAgentRequest$instruction": null, + "UpdateAgentRequest$instruction": null + } + }, + "InternalServerException": { + "base": "

This exception is thrown if there was an unexpected error during processing of request

", + "refs": { + } + }, + "KmsKeyArn": { + "base": "

A KMS key ARN

", + "refs": { + "Agent$customerEncryptionKeyArn": null, + "AgentVersion$customerEncryptionKeyArn": null, + "CreateAgentRequest$customerEncryptionKeyArn": null, + "ServerSideEncryptionConfiguration$kmsKeyArn": null, + "UpdateAgentRequest$customerEncryptionKeyArn": null + } + }, + "KnowledgeBase": { + "base": "

Contains the information of a knowledge base.

", + "refs": { + "CreateKnowledgeBaseResponse$knowledgeBase": null, + "GetKnowledgeBaseResponse$knowledgeBase": null, + "UpdateKnowledgeBaseResponse$knowledgeBase": null + } + }, + "KnowledgeBaseArn": { + "base": "

ARN of a KnowledgeBase

", + "refs": { + "KnowledgeBase$knowledgeBaseArn": null + } + }, + "KnowledgeBaseConfiguration": { + "base": "

Configures a bedrock knowledge base.

", + "refs": { + "CreateKnowledgeBaseRequest$knowledgeBaseConfiguration": null, + "KnowledgeBase$knowledgeBaseConfiguration": null, + "UpdateKnowledgeBaseRequest$knowledgeBaseConfiguration": null + } + }, + "KnowledgeBaseRoleArn": { + "base": "

ARN of a IAM role.

", + "refs": { + "CreateKnowledgeBaseRequest$roleArn": null, + "KnowledgeBase$roleArn": null, + "UpdateKnowledgeBaseRequest$roleArn": null + } + }, + "KnowledgeBaseState": { + "base": "

State of the knowledge base; whether it is enabled or disabled

", + "refs": { + "AgentKnowledgeBase$knowledgeBaseState": null, + "AgentKnowledgeBaseSummary$knowledgeBaseState": null, + "AssociateAgentKnowledgeBaseRequest$knowledgeBaseState": null, + "UpdateAgentKnowledgeBaseRequest$knowledgeBaseState": null + } + }, + "KnowledgeBaseStatus": { + "base": "

The status of a knowledge base.

", + "refs": { + "DeleteKnowledgeBaseResponse$status": null, + "KnowledgeBase$status": null, + "KnowledgeBaseSummary$status": null + } + }, + "KnowledgeBaseStorageType": { + "base": "

The storage type of a knowledge base.

", + "refs": { + "StorageConfiguration$type": null + } + }, + "KnowledgeBaseSummaries": { + "base": "

List of KnowledgeBaseSummaries

", + "refs": { + "ListKnowledgeBasesResponse$knowledgeBaseSummaries": null + } + }, + "KnowledgeBaseSummary": { + "base": "

Summary information of a knowledge base.

", + "refs": { + "KnowledgeBaseSummaries$member": null + } + }, + "KnowledgeBaseType": { + "base": "

The type of a knowledge base.

", + "refs": { + "KnowledgeBaseConfiguration$type": null + } + }, + "LambdaArn": { + "base": "

ARN of a Lambda.

", + "refs": { + "ActionGroupExecutor$lambda": null, + "PromptOverrideConfiguration$overrideLambda": null + } + }, + "ListAgentActionGroupsRequest": { + "base": "

List Action Groups Request

", + "refs": { + } + }, + "ListAgentActionGroupsResponse": { + "base": "

List Action Groups Response

", + "refs": { + } + }, + "ListAgentAliasesRequest": { + "base": "

List Agent Aliases Request

", + "refs": { + } + }, + "ListAgentAliasesResponse": { + "base": "

List Agent Aliases Response

", + "refs": { + } + }, + "ListAgentKnowledgeBasesRequest": { + "base": "

List Agent Knowledge Bases Request

", + "refs": { + } + }, + "ListAgentKnowledgeBasesResponse": { + "base": "

List Agent Knowledge Bases Response

", + "refs": { + } + }, + "ListAgentVersionsRequest": { + "base": "

List Agent Versions Request

", + "refs": { + } + }, + "ListAgentVersionsResponse": { + "base": "

List Agent Versions Response

", + "refs": { + } + }, + "ListAgentsRequest": { + "base": "

List Agent Request

", + "refs": { + } + }, + "ListAgentsResponse": { + "base": "

List Agent Response

", + "refs": { + } + }, + "ListDataSourcesRequest": { + "base": null, + "refs": { + } + }, + "ListDataSourcesResponse": { + "base": null, + "refs": { + } + }, + "ListIngestionJobsRequest": { + "base": null, + "refs": { + } + }, + "ListIngestionJobsResponse": { + "base": null, + "refs": { + } + }, + "ListKnowledgeBasesRequest": { + "base": null, + "refs": { + } + }, + "ListKnowledgeBasesResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "MaxResults": { + "base": "

Max Results.

", + "refs": { + "ListAgentActionGroupsRequest$maxResults": null, + "ListAgentAliasesRequest$maxResults": null, + "ListAgentKnowledgeBasesRequest$maxResults": null, + "ListAgentVersionsRequest$maxResults": null, + "ListAgentsRequest$maxResults": null, + "ListDataSourcesRequest$maxResults": null, + "ListIngestionJobsRequest$maxResults": null, + "ListKnowledgeBasesRequest$maxResults": null + } + }, + "MaximumLength": { + "base": "

Maximum length of output

", + "refs": { + "InferenceConfiguration$maximumLength": null + } + }, + "ModelIdentifier": { + "base": "

ARN or name of a Bedrock model.

", + "refs": { + "Agent$foundationModel": null, + "AgentVersion$foundationModel": null, + "CreateAgentRequest$foundationModel": null, + "UpdateAgentRequest$foundationModel": null + } + }, + "Name": { + "base": "

Name for a resource.

", + "refs": { + "ActionGroupSummary$actionGroupName": null, + "Agent$agentName": null, + "AgentActionGroup$actionGroupName": null, + "AgentAlias$agentAliasName": null, + "AgentAliasSummary$agentAliasName": null, + "AgentSummary$agentName": null, + "AgentVersion$agentName": null, + "AgentVersionSummary$agentName": null, + "CreateAgentActionGroupRequest$actionGroupName": null, + "CreateAgentAliasRequest$agentAliasName": null, + "CreateAgentRequest$agentName": null, + "CreateDataSourceRequest$name": null, + "CreateKnowledgeBaseRequest$name": null, + "DataSource$name": null, + "DataSourceSummary$name": null, + "KnowledgeBase$name": null, + "KnowledgeBaseSummary$name": null, + "UpdateAgentActionGroupRequest$actionGroupName": null, + "UpdateAgentAliasRequest$agentAliasName": null, + "UpdateAgentRequest$agentName": null, + "UpdateDataSourceRequest$name": null, + "UpdateKnowledgeBaseRequest$name": null + } + }, + "NextToken": { + "base": "

Opaque continuation token of previous paginated response.

", + "refs": { + "ListAgentActionGroupsRequest$nextToken": null, + "ListAgentActionGroupsResponse$nextToken": null, + "ListAgentAliasesRequest$nextToken": null, + "ListAgentAliasesResponse$nextToken": null, + "ListAgentKnowledgeBasesRequest$nextToken": null, + "ListAgentKnowledgeBasesResponse$nextToken": null, + "ListAgentVersionsRequest$nextToken": null, + "ListAgentVersionsResponse$nextToken": null, + "ListAgentsRequest$nextToken": null, + "ListAgentsResponse$nextToken": null, + "ListDataSourcesRequest$nextToken": null, + "ListDataSourcesResponse$nextToken": null, + "ListIngestionJobsRequest$nextToken": null, + "ListIngestionJobsResponse$nextToken": null, + "ListKnowledgeBasesRequest$nextToken": null, + "ListKnowledgeBasesResponse$nextToken": null + } + }, + "NonBlankString": { + "base": "

Non Blank String

", + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null, + "ValidationExceptionField$name": null, + "ValidationExceptionField$message": null + } + }, + "NumericalVersion": { + "base": "

Numerical Agent Version.

", + "refs": { + "AgentVersion$version": null, + "DeleteAgentVersionRequest$agentVersion": null, + "DeleteAgentVersionResponse$agentVersion": null, + "GetAgentVersionRequest$agentVersion": null + } + }, + "OpenSearchServerlessCollectionArn": { + "base": "

Arn of an OpenSearch Serverless collection.

", + "refs": { + "OpenSearchServerlessConfiguration$collectionArn": null + } + }, + "OpenSearchServerlessConfiguration": { + "base": "

Contains the configurations to use OpenSearch Serverless to store knowledge base data.

", + "refs": { + "StorageConfiguration$opensearchServerlessConfiguration": null + } + }, + "OpenSearchServerlessFieldMapping": { + "base": "

A mapping of Bedrock Knowledge Base fields to OpenSearch Serverless field names

", + "refs": { + "OpenSearchServerlessConfiguration$fieldMapping": null + } + }, + "OpenSearchServerlessIndexName": { + "base": "

Arn of an OpenSearch Serverless index.

", + "refs": { + "OpenSearchServerlessConfiguration$vectorIndexName": null + } + }, + "Payload": { + "base": "

String OpenAPI Payload

", + "refs": { + "APISchema$payload": null + } + }, + "PineconeConfiguration": { + "base": "

Contains the configurations to use Pinecone to store knowledge base data.

", + "refs": { + "StorageConfiguration$pineconeConfiguration": null + } + }, + "PineconeConnectionString": { + "base": "

Pinecone connection string

", + "refs": { + "PineconeConfiguration$connectionString": null + } + }, + "PineconeFieldMapping": { + "base": "

A mapping of Bedrock Knowledge Base fields to Pinecone field names

", + "refs": { + "PineconeConfiguration$fieldMapping": null + } + }, + "PineconeNamespace": { + "base": "

Pinecone namespace

", + "refs": { + "PineconeConfiguration$namespace": null + } + }, + "PrepareAgentRequest": { + "base": "

PrepareAgent Request

", + "refs": { + } + }, + "PrepareAgentResponse": { + "base": "

PrepareAgent Response

", + "refs": { + } + }, + "PrimitiveLong": { + "base": null, + "refs": { + "IngestionJobStatistics$numberOfDocumentsScanned": "

Number of scanned documents

", + "IngestionJobStatistics$numberOfNewDocumentsIndexed": "

Number of indexed documents

", + "IngestionJobStatistics$numberOfModifiedDocumentsIndexed": "

Number of modified documents indexed

", + "IngestionJobStatistics$numberOfDocumentsDeleted": "

Number of deleted documents

", + "IngestionJobStatistics$numberOfDocumentsFailed": "

Number of failed documents

" + } + }, + "PromptConfiguration": { + "base": "

BasePromptConfiguration per Prompt Type.

", + "refs": { + "PromptConfigurations$member": null + } + }, + "PromptConfigurations": { + "base": "

List of BasePromptConfiguration

", + "refs": { + "PromptOverrideConfiguration$promptConfigurations": null + } + }, + "PromptOverrideConfiguration": { + "base": "

Configuration for prompt override.

", + "refs": { + "Agent$promptOverrideConfiguration": null, + "AgentVersion$promptOverrideConfiguration": null, + "CreateAgentRequest$promptOverrideConfiguration": null, + "UpdateAgentRequest$promptOverrideConfiguration": null + } + }, + "PromptState": { + "base": "

Prompt State.

", + "refs": { + "PromptConfiguration$promptState": null + } + }, + "PromptType": { + "base": "

Prompt Type.

", + "refs": { + "PromptConfiguration$promptType": null + } + }, + "RecommendedAction": { + "base": "

The recommended action users can take to resolve an error in failureReasons.

", + "refs": { + "RecommendedActions$member": null + } + }, + "RecommendedActions": { + "base": "

The recommended actions users can take to resolve an error in failureReasons.

", + "refs": { + "Agent$recommendedActions": null, + "AgentVersion$recommendedActions": null + } + }, + "RedisEnterpriseCloudConfiguration": { + "base": "

Contains the configurations to use Redis Enterprise Cloud to store knowledge base data.

", + "refs": { + "StorageConfiguration$redisEnterpriseCloudConfiguration": null + } + }, + "RedisEnterpriseCloudEndpoint": { + "base": "

Redis enterprise cloud endpoint

", + "refs": { + "RedisEnterpriseCloudConfiguration$endpoint": null + } + }, + "RedisEnterpriseCloudFieldMapping": { + "base": "

A mapping of Bedrock Knowledge Base fields to Redis Cloud field names

", + "refs": { + "RedisEnterpriseCloudConfiguration$fieldMapping": null + } + }, + "RedisEnterpriseCloudIndexName": { + "base": "

Name of a redis enterprise cloud index

", + "refs": { + "RedisEnterpriseCloudConfiguration$vectorIndexName": null + } + }, + "ResourceNotFoundException": { + "base": "

This exception is thrown when a resource referenced by the operation does not exist

", + "refs": { + } + }, + "S3BucketArn": { + "base": "

A S3 bucket ARN

", + "refs": { + "S3DataSourceConfiguration$bucketArn": null + } + }, + "S3BucketName": { + "base": "

A bucket in S3.

", + "refs": { + "S3Identifier$s3BucketName": null + } + }, + "S3DataSourceConfiguration": { + "base": "

Configures an S3 data source location.

", + "refs": { + "DataSourceConfiguration$s3Configuration": null + } + }, + "S3Identifier": { + "base": "

The identifier for the S3 resource.

", + "refs": { + "APISchema$s3": null + } + }, + "S3ObjectKey": { + "base": "

A object key in S3.

", + "refs": { + "S3Identifier$s3ObjectKey": null + } + }, + "S3Prefix": { + "base": "

Prefix for s3 object.

", + "refs": { + "S3Prefixes$member": null + } + }, + "S3Prefixes": { + "base": "

A list of S3 prefixes.

", + "refs": { + "S3DataSourceConfiguration$inclusionPrefixes": null + } + }, + "SecretArn": { + "base": "

Arn of a SecretsManager Secret.

", + "refs": { + "PineconeConfiguration$credentialsSecretArn": null, + "RedisEnterpriseCloudConfiguration$credentialsSecretArn": null + } + }, + "ServerSideEncryptionConfiguration": { + "base": "

Server-side encryption configuration.

", + "refs": { + "CreateDataSourceRequest$serverSideEncryptionConfiguration": null, + "DataSource$serverSideEncryptionConfiguration": null, + "UpdateDataSourceRequest$serverSideEncryptionConfiguration": null + } + }, + "ServiceQuotaExceededException": { + "base": "

This exception is thrown when a request is made beyond the service quota

", + "refs": { + } + }, + "SessionTTL": { + "base": "

Max Session Time.

", + "refs": { + "Agent$idleSessionTTLInSeconds": null, + "AgentVersion$idleSessionTTLInSeconds": null, + "CreateAgentRequest$idleSessionTTLInSeconds": null, + "UpdateAgentRequest$idleSessionTTLInSeconds": null + } + }, + "SortOrder": { + "base": "

Order to sort results by.

", + "refs": { + "IngestionJobSortBy$order": null + } + }, + "StartIngestionJobRequest": { + "base": null, + "refs": { + } + }, + "StartIngestionJobResponse": { + "base": null, + "refs": { + } + }, + "StopSequences": { + "base": "

List of stop sequences

", + "refs": { + "InferenceConfiguration$stopSequences": null + } + }, + "StorageConfiguration": { + "base": "

Configures the physical storage of ingested data in a knowledge base.

", + "refs": { + "CreateKnowledgeBaseRequest$storageConfiguration": null, + "KnowledgeBase$storageConfiguration": null, + "UpdateKnowledgeBaseRequest$storageConfiguration": null + } + }, + "String": { + "base": null, + "refs": { + "StopSequences$member": null + } + }, + "TagKey": { + "base": "

Key of a tag

", + "refs": { + "TagKeyList$member": null, + "TagsMap$key": null + } + }, + "TagKeyList": { + "base": "

List of Tag Keys

", + "refs": { + "UntagResourceRequest$tagKeys": null + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": "

Value of a tag

", + "refs": { + "TagsMap$value": null + } + }, + "TaggableResourcesArn": { + "base": "

ARN of Taggable resources: [Agent, AgentAlias, Knowledge-Base]

", + "refs": { + "ListTagsForResourceRequest$resourceArn": null, + "TagResourceRequest$resourceArn": null, + "UntagResourceRequest$resourceArn": null + } + }, + "TagsMap": { + "base": "

A map of tag keys and values

", + "refs": { + "CreateAgentAliasRequest$tags": null, + "CreateAgentRequest$tags": null, + "CreateKnowledgeBaseRequest$tags": null, + "ListTagsForResourceResponse$tags": null, + "TagResourceRequest$tags": null + } + }, + "Temperature": { + "base": "

Controls randomness, higher values increase diversity

", + "refs": { + "InferenceConfiguration$temperature": null + } + }, + "ThrottlingException": { + "base": "

This exception is thrown when the number of requests exceeds the limit

", + "refs": { + } + }, + "TopK": { + "base": "

Sample from the k most likely next tokens

", + "refs": { + "InferenceConfiguration$topK": null + } + }, + "TopP": { + "base": "

Cumulative probability cutoff for token selection

", + "refs": { + "InferenceConfiguration$topP": null + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateAgentActionGroupRequest": { + "base": "

Update Action Group Request

", + "refs": { + } + }, + "UpdateAgentActionGroupResponse": { + "base": "

Update Action Group Response

", + "refs": { + } + }, + "UpdateAgentAliasRequest": { + "base": "

Update Agent Alias Request

", + "refs": { + } + }, + "UpdateAgentAliasResponse": { + "base": "

Update Agent Alias Response

", + "refs": { + } + }, + "UpdateAgentKnowledgeBaseRequest": { + "base": "

Update Agent Knowledge Base Request

", + "refs": { + } + }, + "UpdateAgentKnowledgeBaseResponse": { + "base": "

Update Agent Knowledge Base Response

", + "refs": { + } + }, + "UpdateAgentRequest": { + "base": "

Update Agent Request

", + "refs": { + } + }, + "UpdateAgentResponse": { + "base": "

Update Agent Response

", + "refs": { + } + }, + "UpdateDataSourceRequest": { + "base": null, + "refs": { + } + }, + "UpdateDataSourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "UpdateKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

This exception is thrown when the request's input validation fails

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

Stores information about a field passed inside a request that resulted in an exception

", + "refs": { + "ValidationExceptionFieldList$member": null + } + }, + "ValidationExceptionFieldList": { + "base": "

list of ValidationExceptionField

", + "refs": { + "ValidationException$fieldList": null + } + }, + "VectorIngestionConfiguration": { + "base": "

Configures ingestion for a vector knowledge base

", + "refs": { + "CreateDataSourceRequest$vectorIngestionConfiguration": null, + "DataSource$vectorIngestionConfiguration": null, + "UpdateDataSourceRequest$vectorIngestionConfiguration": null + } + }, + "VectorKnowledgeBaseConfiguration": { + "base": "

Configurations for a vector knowledge base.

", + "refs": { + "KnowledgeBaseConfiguration$vectorKnowledgeBaseConfiguration": null + } + }, + "Version": { + "base": "

Agent Version.

", + "refs": { + "AgentActionGroup$agentVersion": null, + "AgentAliasRoutingConfigurationListItem$agentVersion": null, + "AgentKnowledgeBase$agentVersion": null, + "AgentSummary$latestAgentVersion": null, + "AgentVersionSummary$agentVersion": null, + "GetAgentActionGroupRequest$agentVersion": "

Version number generated when a version is created

", + "GetAgentKnowledgeBaseRequest$agentVersion": "

Version number generated when a version is created

", + "ListAgentActionGroupsRequest$agentVersion": "

Id generated at the server side when an Agent is Listed

", + "ListAgentKnowledgeBasesRequest$agentVersion": "

Version number generated when a version is created

", + "PrepareAgentResponse$agentVersion": null + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent/2023-06-05/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent/2023-06-05/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,52 @@ +{ + "pagination": { + "ListAgentActionGroups": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "actionGroupSummaries" + }, + "ListAgentAliases": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "agentAliasSummaries" + }, + "ListAgentKnowledgeBases": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "agentKnowledgeBaseSummaries" + }, + "ListAgentVersions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "agentVersionSummaries" + }, + "ListAgents": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "agentSummaries" + }, + "ListDataSources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "dataSourceSummaries" + }, + "ListIngestionJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "ingestionJobSummaries" + }, + "ListKnowledgeBases": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "knowledgeBaseSummaries" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,901 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-07-26", + "endpointPrefix":"bedrock-agent-runtime", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Agents for Amazon Bedrock Runtime", + "serviceId":"Bedrock Agent Runtime", + "signatureVersion":"v4", + "signingName":"bedrock", + "uid":"bedrock-agent-runtime-2023-07-26" + }, + "operations":{ + "InvokeAgent":{ + "name":"InvokeAgent", + "http":{ + "method":"POST", + "requestUri":"/agents/{agentId}/agentAliases/{agentAliasId}/sessions/{sessionId}/text", + "responseCode":200 + }, + "input":{"shape":"InvokeAgentRequest"}, + "output":{"shape":"InvokeAgentResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"DependencyFailedException"}, + {"shape":"BadGatewayException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, + "Retrieve":{ + "name":"Retrieve", + "http":{ + "method":"POST", + "requestUri":"/knowledgebases/{knowledgeBaseId}/retrieve", + "responseCode":200 + }, + "input":{"shape":"RetrieveRequest"}, + "output":{"shape":"RetrieveResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"DependencyFailedException"}, + {"shape":"BadGatewayException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, + "RetrieveAndGenerate":{ + "name":"RetrieveAndGenerate", + "http":{ + "method":"POST", + "requestUri":"/retrieveAndGenerate", + "responseCode":200 + }, + "input":{"shape":"RetrieveAndGenerateRequest"}, + "output":{"shape":"RetrieveAndGenerateResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"DependencyFailedException"}, + {"shape":"BadGatewayException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ActionGroupInvocationInput":{ + "type":"structure", + "members":{ + "actionGroupName":{"shape":"ActionGroupName"}, + "verb":{"shape":"Verb"}, + "apiPath":{"shape":"ApiPath"}, + "parameters":{"shape":"Parameters"}, + "requestBody":{"shape":"RequestBody"} + } + }, + "ActionGroupInvocationOutput":{ + "type":"structure", + "members":{ + "text":{"shape":"ActionGroupOutputString"} + } + }, + "ActionGroupName":{ + "type":"string", + "sensitive":true + }, + "ActionGroupOutputString":{ + "type":"string", + "sensitive":true + }, + "AgentAliasId":{ + "type":"string", + "max":10, + "min":0, + "pattern":"[0-9a-zA-Z]+" + }, + "AgentId":{ + "type":"string", + "max":10, + "min":0, + "pattern":"[0-9a-zA-Z]+" + }, + "ApiPath":{ + "type":"string", + "sensitive":true + }, + "Attribution":{ + "type":"structure", + "members":{ + "citations":{"shape":"Citations"} + } + }, + "BadGatewayException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"}, + "resourceName":{"shape":"NonBlankString"} + }, + "error":{"httpStatusCode":502}, + "exception":true, + "fault":true + }, + "BedrockModelArn":{ + "type":"string", + "max":1011, + "min":20, + "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}))" + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "Citation":{ + "type":"structure", + "members":{ + "generatedResponsePart":{"shape":"GeneratedResponsePart"}, + "retrievedReferences":{"shape":"RetrievedReferences"} + } + }, + "Citations":{ + "type":"list", + "member":{"shape":"Citation"} + }, + "ConflictException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "ContentMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"Parameters"} + }, + "CreationMode":{ + "type":"string", + "enum":[ + "DEFAULT", + "OVERRIDDEN" + ] + }, + "DependencyFailedException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"}, + "resourceName":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":424, + "senderFault":true + }, + "exception":true + }, + "Double":{ + "type":"double", + "box":true + }, + "FailureReasonString":{ + "type":"string", + "sensitive":true + }, + "FailureTrace":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "failureReason":{"shape":"FailureReasonString"} + }, + "sensitive":true + }, + "FinalResponse":{ + "type":"structure", + "members":{ + "text":{"shape":"FinalResponseString"} + } + }, + "FinalResponseString":{ + "type":"string", + "sensitive":true + }, + "GeneratedResponsePart":{ + "type":"structure", + "members":{ + "textResponsePart":{"shape":"TextResponsePart"} + } + }, + "InferenceConfiguration":{ + "type":"structure", + "members":{ + "temperature":{"shape":"Temperature"}, + "topP":{"shape":"TopP"}, + "topK":{"shape":"TopK"}, + "maximumLength":{"shape":"MaximumLength"}, + "stopSequences":{"shape":"StopSequences"} + } + }, + "InputText":{ + "type":"string", + "max":25000000, + "min":0, + "sensitive":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "InvocationInput":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "invocationType":{"shape":"InvocationType"}, + "actionGroupInvocationInput":{"shape":"ActionGroupInvocationInput"}, + "knowledgeBaseLookupInput":{"shape":"KnowledgeBaseLookupInput"} + }, + "sensitive":true + }, + "InvocationType":{ + "type":"string", + "enum":[ + "ACTION_GROUP", + "KNOWLEDGE_BASE", + "FINISH" + ] + }, + "InvokeAgentRequest":{ + "type":"structure", + "required":[ + "agentId", + "agentAliasId", + "sessionId", + "inputText" + ], + "members":{ + "sessionState":{"shape":"SessionState"}, + "agentId":{ + "shape":"AgentId", + "location":"uri", + "locationName":"agentId" + }, + "agentAliasId":{ + "shape":"AgentAliasId", + "location":"uri", + "locationName":"agentAliasId" + }, + "sessionId":{ + "shape":"SessionId", + "location":"uri", + "locationName":"sessionId" + }, + "endSession":{"shape":"Boolean"}, + "enableTrace":{"shape":"Boolean"}, + "inputText":{"shape":"InputText"} + } + }, + "InvokeAgentResponse":{ + "type":"structure", + "required":[ + "completion", + "contentType", + "sessionId" + ], + "members":{ + "completion":{"shape":"ResponseStream"}, + "contentType":{ + "shape":"MimeType", + "location":"header", + "locationName":"x-amzn-bedrock-agent-content-type" + }, + "sessionId":{ + "shape":"SessionId", + "location":"header", + "locationName":"x-amz-bedrock-agent-session-id" + } + }, + "payload":"completion" + }, + "KmsKeyArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}" + }, + "KnowledgeBaseId":{ + "type":"string", + "max":10, + "min":0, + "pattern":"[0-9a-zA-Z]+" + }, + "KnowledgeBaseLookupInput":{ + "type":"structure", + "members":{ + "text":{"shape":"KnowledgeBaseLookupInputString"}, + "knowledgeBaseId":{"shape":"TraceKnowledgeBaseId"} + } + }, + "KnowledgeBaseLookupInputString":{ + "type":"string", + "sensitive":true + }, + "KnowledgeBaseLookupOutput":{ + "type":"structure", + "members":{ + "retrievedReferences":{"shape":"RetrievedReferences"} + } + }, + "KnowledgeBaseQuery":{ + "type":"structure", + "required":["text"], + "members":{ + "text":{"shape":"KnowledgeBaseQueryTextString"} + }, + "sensitive":true + }, + "KnowledgeBaseQueryTextString":{ + "type":"string", + "max":1000, + "min":0 + }, + "KnowledgeBaseRetrievalConfiguration":{ + "type":"structure", + "required":["vectorSearchConfiguration"], + "members":{ + "vectorSearchConfiguration":{"shape":"KnowledgeBaseVectorSearchConfiguration"} + } + }, + "KnowledgeBaseRetrievalResult":{ + "type":"structure", + "required":["content"], + "members":{ + "content":{"shape":"RetrievalResultContent"}, + "location":{"shape":"RetrievalResultLocation"}, + "score":{"shape":"Double"} + } + }, + "KnowledgeBaseRetrievalResults":{ + "type":"list", + "member":{"shape":"KnowledgeBaseRetrievalResult"}, + "sensitive":true + }, + "KnowledgeBaseRetrieveAndGenerateConfiguration":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "modelArn" + ], + "members":{ + "knowledgeBaseId":{"shape":"KnowledgeBaseId"}, + "modelArn":{"shape":"BedrockModelArn"} + } + }, + "KnowledgeBaseVectorSearchConfiguration":{ + "type":"structure", + "required":["numberOfResults"], + "members":{ + "numberOfResults":{"shape":"KnowledgeBaseVectorSearchConfigurationNumberOfResultsInteger"} + } + }, + "KnowledgeBaseVectorSearchConfigurationNumberOfResultsInteger":{ + "type":"integer", + "box":true, + "max":10, + "min":1 + }, + "LambdaArn":{"type":"string"}, + "MaximumLength":{ + "type":"integer", + "box":true, + "max":4096, + "min":0 + }, + "MimeType":{"type":"string"}, + "ModelInvocationInput":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "text":{"shape":"PromptText"}, + "type":{"shape":"PromptType"}, + "inferenceConfiguration":{"shape":"InferenceConfiguration"}, + "overrideLambda":{"shape":"LambdaArn"}, + "promptCreationMode":{"shape":"CreationMode"}, + "parserMode":{"shape":"CreationMode"} + }, + "sensitive":true + }, + "NextToken":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"\\S*" + }, + "NonBlankString":{ + "type":"string", + "pattern":"[\\s\\S]*" + }, + "Observation":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "type":{"shape":"Type"}, + "actionGroupInvocationOutput":{"shape":"ActionGroupInvocationOutput"}, + "knowledgeBaseLookupOutput":{"shape":"KnowledgeBaseLookupOutput"}, + "finalResponse":{"shape":"FinalResponse"}, + "repromptResponse":{"shape":"RepromptResponse"} + }, + "sensitive":true + }, + "OrchestrationTrace":{ + "type":"structure", + "members":{ + "rationale":{"shape":"Rationale"}, + "invocationInput":{"shape":"InvocationInput"}, + "observation":{"shape":"Observation"}, + "modelInvocationInput":{"shape":"ModelInvocationInput"} + }, + "sensitive":true, + "union":true + }, + "OutputString":{ + "type":"string", + "sensitive":true + }, + "Parameter":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "type":{"shape":"String"}, + "value":{"shape":"String"} + } + }, + "Parameters":{ + "type":"list", + "member":{"shape":"Parameter"} + }, + "PartBody":{ + "type":"blob", + "max":1000000, + "min":0, + "sensitive":true + }, + "PayloadPart":{ + "type":"structure", + "members":{ + "bytes":{"shape":"PartBody"}, + "attribution":{"shape":"Attribution"} + }, + "event":true, + "sensitive":true + }, + "PostProcessingModelInvocationOutput":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "parsedResponse":{"shape":"PostProcessingParsedResponse"} + }, + "sensitive":true + }, + "PostProcessingParsedResponse":{ + "type":"structure", + "members":{ + "text":{"shape":"OutputString"} + }, + "sensitive":true + }, + "PostProcessingTrace":{ + "type":"structure", + "members":{ + "modelInvocationInput":{"shape":"ModelInvocationInput"}, + "modelInvocationOutput":{"shape":"PostProcessingModelInvocationOutput"} + }, + "sensitive":true, + "union":true + }, + "PreProcessingModelInvocationOutput":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "parsedResponse":{"shape":"PreProcessingParsedResponse"} + }, + "sensitive":true + }, + "PreProcessingParsedResponse":{ + "type":"structure", + "members":{ + "rationale":{"shape":"RationaleString"}, + "isValid":{"shape":"Boolean"} + }, + "sensitive":true + }, + "PreProcessingTrace":{ + "type":"structure", + "members":{ + "modelInvocationInput":{"shape":"ModelInvocationInput"}, + "modelInvocationOutput":{"shape":"PreProcessingModelInvocationOutput"} + }, + "sensitive":true, + "union":true + }, + "PromptSessionAttributesMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "PromptText":{ + "type":"string", + "sensitive":true + }, + "PromptType":{ + "type":"string", + "enum":[ + "PRE_PROCESSING", + "ORCHESTRATION", + "KNOWLEDGE_BASE_RESPONSE_GENERATION", + "POST_PROCESSING" + ] + }, + "Rationale":{ + "type":"structure", + "members":{ + "traceId":{"shape":"TraceId"}, + "text":{"shape":"RationaleString"} + }, + "sensitive":true + }, + "RationaleString":{ + "type":"string", + "sensitive":true + }, + "RepromptResponse":{ + "type":"structure", + "members":{ + "text":{"shape":"String"}, + "source":{"shape":"Source"} + }, + "sensitive":true + }, + "RequestBody":{ + "type":"structure", + "members":{ + "content":{"shape":"ContentMap"} + } + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResponseStream":{ + "type":"structure", + "members":{ + "chunk":{"shape":"PayloadPart"}, + "trace":{"shape":"TracePart"}, + "internalServerException":{"shape":"InternalServerException"}, + "validationException":{"shape":"ValidationException"}, + "resourceNotFoundException":{"shape":"ResourceNotFoundException"}, + "serviceQuotaExceededException":{"shape":"ServiceQuotaExceededException"}, + "throttlingException":{"shape":"ThrottlingException"}, + "accessDeniedException":{"shape":"AccessDeniedException"}, + "conflictException":{"shape":"ConflictException"}, + "dependencyFailedException":{"shape":"DependencyFailedException"}, + "badGatewayException":{"shape":"BadGatewayException"} + }, + "eventstream":true + }, + "RetrievalResultContent":{ + "type":"structure", + "required":["text"], + "members":{ + "text":{"shape":"String"} + } + }, + "RetrievalResultLocation":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{"shape":"RetrievalResultLocationType"}, + "s3Location":{"shape":"RetrievalResultS3Location"} + } + }, + "RetrievalResultLocationType":{ + "type":"string", + "enum":["S3"] + }, + "RetrievalResultS3Location":{ + "type":"structure", + "members":{ + "uri":{"shape":"String"} + } + }, + "RetrieveAndGenerateConfiguration":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{"shape":"RetrieveAndGenerateType"}, + "knowledgeBaseConfiguration":{"shape":"KnowledgeBaseRetrieveAndGenerateConfiguration"} + } + }, + "RetrieveAndGenerateInput":{ + "type":"structure", + "required":["text"], + "members":{ + "text":{"shape":"RetrieveAndGenerateInputTextString"} + }, + "sensitive":true + }, + "RetrieveAndGenerateInputTextString":{ + "type":"string", + "max":1000, + "min":0 + }, + "RetrieveAndGenerateOutput":{ + "type":"structure", + "required":["text"], + "members":{ + "text":{"shape":"String"} + }, + "sensitive":true + }, + "RetrieveAndGenerateRequest":{ + "type":"structure", + "required":["input"], + "members":{ + "sessionId":{"shape":"SessionId"}, + "input":{"shape":"RetrieveAndGenerateInput"}, + "retrieveAndGenerateConfiguration":{"shape":"RetrieveAndGenerateConfiguration"}, + "sessionConfiguration":{"shape":"RetrieveAndGenerateSessionConfiguration"} + } + }, + "RetrieveAndGenerateResponse":{ + "type":"structure", + "required":[ + "sessionId", + "output" + ], + "members":{ + "sessionId":{"shape":"SessionId"}, + "output":{"shape":"RetrieveAndGenerateOutput"}, + "citations":{"shape":"Citations"} + } + }, + "RetrieveAndGenerateSessionConfiguration":{ + "type":"structure", + "required":["kmsKeyArn"], + "members":{ + "kmsKeyArn":{"shape":"KmsKeyArn"} + } + }, + "RetrieveAndGenerateType":{ + "type":"string", + "enum":["KNOWLEDGE_BASE"] + }, + "RetrieveRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "retrievalQuery" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"KnowledgeBaseId", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "retrievalQuery":{"shape":"KnowledgeBaseQuery"}, + "retrievalConfiguration":{"shape":"KnowledgeBaseRetrievalConfiguration"}, + "nextToken":{"shape":"NextToken"} + } + }, + "RetrieveResponse":{ + "type":"structure", + "required":["retrievalResults"], + "members":{ + "retrievalResults":{"shape":"KnowledgeBaseRetrievalResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "RetrievedReference":{ + "type":"structure", + "members":{ + "content":{"shape":"RetrievalResultContent"}, + "location":{"shape":"RetrievalResultLocation"} + } + }, + "RetrievedReferences":{ + "type":"list", + "member":{"shape":"RetrievedReference"} + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "SessionAttributesMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "SessionId":{ + "type":"string", + "max":100, + "min":2, + "pattern":"[0-9a-zA-Z._:-]+" + }, + "SessionState":{ + "type":"structure", + "members":{ + "sessionAttributes":{"shape":"SessionAttributesMap"}, + "promptSessionAttributes":{"shape":"PromptSessionAttributesMap"} + } + }, + "Source":{ + "type":"string", + "enum":[ + "ACTION_GROUP", + "KNOWLEDGE_BASE", + "PARSER" + ], + "sensitive":true + }, + "Span":{ + "type":"structure", + "members":{ + "start":{"shape":"SpanStartInteger"}, + "end":{"shape":"SpanEndInteger"} + } + }, + "SpanEndInteger":{ + "type":"integer", + "box":true, + "min":0 + }, + "SpanStartInteger":{ + "type":"integer", + "box":true, + "min":0 + }, + "StopSequences":{ + "type":"list", + "member":{"shape":"String"}, + "max":4, + "min":0 + }, + "String":{"type":"string"}, + "Temperature":{ + "type":"float", + "box":true, + "max":1, + "min":0 + }, + "TextResponsePart":{ + "type":"structure", + "members":{ + "text":{"shape":"String"}, + "span":{"shape":"Span"} + } + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "TopK":{ + "type":"integer", + "box":true, + "max":500, + "min":0 + }, + "TopP":{ + "type":"float", + "box":true, + "max":1, + "min":0 + }, + "Trace":{ + "type":"structure", + "members":{ + "preProcessingTrace":{"shape":"PreProcessingTrace"}, + "orchestrationTrace":{"shape":"OrchestrationTrace"}, + "postProcessingTrace":{"shape":"PostProcessingTrace"}, + "failureTrace":{"shape":"FailureTrace"} + }, + "sensitive":true, + "union":true + }, + "TraceId":{ + "type":"string", + "max":16, + "min":2 + }, + "TraceKnowledgeBaseId":{ + "type":"string", + "sensitive":true + }, + "TracePart":{ + "type":"structure", + "members":{ + "agentId":{"shape":"AgentId"}, + "agentAliasId":{"shape":"AgentAliasId"}, + "sessionId":{"shape":"SessionId"}, + "trace":{"shape":"Trace"} + }, + "event":true, + "sensitive":true + }, + "Type":{ + "type":"string", + "enum":[ + "ACTION_GROUP", + "KNOWLEDGE_BASE", + "FINISH", + "ASK_USER", + "REPROMPT" + ] + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "Verb":{ + "type":"string", + "sensitive":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,713 @@ +{ + "version": "2.0", + "service": "

Amazon Bedrock Agent

", + "operations": { + "InvokeAgent": "

Invokes the specified Bedrock model to run inference using the input provided in the request body.

", + "Retrieve": "

Retrieve from knowledge base.

", + "RetrieveAndGenerate": "

RetrieveAndGenerate API

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

This exception is thrown when a request is denied per access permissions

", + "refs": { + "ResponseStream$accessDeniedException": null + } + }, + "ActionGroupInvocationInput": { + "base": "

input to lambda used in action group

", + "refs": { + "InvocationInput$actionGroupInvocationInput": null + } + }, + "ActionGroupInvocationOutput": { + "base": "

output from lambda used in action group

", + "refs": { + "Observation$actionGroupInvocationOutput": null + } + }, + "ActionGroupName": { + "base": "

Agent Trace Action Group Name

", + "refs": { + "ActionGroupInvocationInput$actionGroupName": null + } + }, + "ActionGroupOutputString": { + "base": "

Agent Trace Action Group Lambda Invocation Output String

", + "refs": { + "ActionGroupInvocationOutput$text": null + } + }, + "AgentAliasId": { + "base": "

Identifier of the agent alias.

", + "refs": { + "InvokeAgentRequest$agentAliasId": "

Identifier for Agent Alias

", + "TracePart$agentAliasId": null + } + }, + "AgentId": { + "base": "

Identifier of the agent.

", + "refs": { + "InvokeAgentRequest$agentId": "

Identifier for Agent

", + "TracePart$agentId": null + } + }, + "ApiPath": { + "base": "

Agent Trace Action Group API path

", + "refs": { + "ActionGroupInvocationInput$apiPath": null + } + }, + "Attribution": { + "base": "

Citations associated with final agent response

", + "refs": { + "PayloadPart$attribution": null + } + }, + "BadGatewayException": { + "base": "

This exception is thrown when a request fails due to dependency like Lambda, Bedrock, STS resource

", + "refs": { + "ResponseStream$badGatewayException": null + } + }, + "BedrockModelArn": { + "base": "

Arn of a Bedrock model.

", + "refs": { + "KnowledgeBaseRetrieveAndGenerateConfiguration$modelArn": null + } + }, + "Boolean": { + "base": null, + "refs": { + "InvokeAgentRequest$endSession": "

End current session

", + "InvokeAgentRequest$enableTrace": "

Enable agent trace events for improved debugging

", + "PreProcessingParsedResponse$isValid": "

Boolean value

" + } + }, + "Citation": { + "base": "

Citation associated with the agent response

", + "refs": { + "Citations$member": null + } + }, + "Citations": { + "base": "

List of citations

", + "refs": { + "Attribution$citations": null, + "RetrieveAndGenerateResponse$citations": null + } + }, + "ConflictException": { + "base": "

This exception is thrown when there is a conflict performing an operation

", + "refs": { + "ResponseStream$conflictException": null + } + }, + "ContentMap": { + "base": "

Content type paramter map

", + "refs": { + "RequestBody$content": null + } + }, + "CreationMode": { + "base": "

indicates if agent uses default prompt or overriden prompt

", + "refs": { + "ModelInvocationInput$promptCreationMode": null, + "ModelInvocationInput$parserMode": null + } + }, + "DependencyFailedException": { + "base": "

This exception is thrown when a request fails due to dependency like Lambda, Bedrock, STS resource due to a customer fault (i.e. bad configuration)

", + "refs": { + "ResponseStream$dependencyFailedException": null + } + }, + "Double": { + "base": null, + "refs": { + "KnowledgeBaseRetrievalResult$score": "

The relevance score of a result.

" + } + }, + "FailureReasonString": { + "base": "

Agent Trace Failed Reason String

", + "refs": { + "FailureTrace$failureReason": null + } + }, + "FailureTrace": { + "base": "

Trace Part which is emitted when agent trace could not be generated

", + "refs": { + "Trace$failureTrace": null + } + }, + "FinalResponse": { + "base": "

Agent finish output

", + "refs": { + "Observation$finalResponse": null + } + }, + "FinalResponseString": { + "base": "

Agent Trace Action Group Lambda Invocation Output String

", + "refs": { + "FinalResponse$text": null + } + }, + "GeneratedResponsePart": { + "base": "

Generate response part

", + "refs": { + "Citation$generatedResponsePart": null + } + }, + "InferenceConfiguration": { + "base": "

Configurations for controlling the inference response of an InvokeAgent API call

", + "refs": { + "ModelInvocationInput$inferenceConfiguration": null + } + }, + "InputText": { + "base": "

Model text input

", + "refs": { + "InvokeAgentRequest$inputText": "

Input data in the format specified in the Content-Type request header.

" + } + }, + "InternalServerException": { + "base": "

This exception is thrown if there was an unexpected error during processing of request

", + "refs": { + "ResponseStream$internalServerException": null + } + }, + "InvocationInput": { + "base": "

Trace Part which contains input details for action group or knowledge base

", + "refs": { + "OrchestrationTrace$invocationInput": null + } + }, + "InvocationType": { + "base": "

types of invocations

", + "refs": { + "InvocationInput$invocationType": null + } + }, + "InvokeAgentRequest": { + "base": "

InvokeAgent Request

", + "refs": { + } + }, + "InvokeAgentResponse": { + "base": "

InvokeAgent Response

", + "refs": { + } + }, + "KmsKeyArn": { + "base": "

A KMS key ARN

", + "refs": { + "RetrieveAndGenerateSessionConfiguration$kmsKeyArn": "

The KMS key arn to encrypt the customer data of the session.

" + } + }, + "KnowledgeBaseId": { + "base": "

Identifier of the KnowledgeBase

", + "refs": { + "KnowledgeBaseRetrieveAndGenerateConfiguration$knowledgeBaseId": null, + "RetrieveRequest$knowledgeBaseId": null + } + }, + "KnowledgeBaseLookupInput": { + "base": "

Input to lambda used in action group

", + "refs": { + "InvocationInput$knowledgeBaseLookupInput": null + } + }, + "KnowledgeBaseLookupInputString": { + "base": "

Agent Trace Action Group Lambda Invocation Output String

", + "refs": { + "KnowledgeBaseLookupInput$text": null + } + }, + "KnowledgeBaseLookupOutput": { + "base": "

Input to lambda used in action group

", + "refs": { + "Observation$knowledgeBaseLookupOutput": null + } + }, + "KnowledgeBaseQuery": { + "base": "

Knowledge base input query.

", + "refs": { + "RetrieveRequest$retrievalQuery": null + } + }, + "KnowledgeBaseQueryTextString": { + "base": null, + "refs": { + "KnowledgeBaseQuery$text": "

Knowledge base input query in text

" + } + }, + "KnowledgeBaseRetrievalConfiguration": { + "base": "

Search parameters for retrieving from knowledge base.

", + "refs": { + "RetrieveRequest$retrievalConfiguration": null + } + }, + "KnowledgeBaseRetrievalResult": { + "base": "

Result item returned from a knowledge base retrieval.

", + "refs": { + "KnowledgeBaseRetrievalResults$member": null + } + }, + "KnowledgeBaseRetrievalResults": { + "base": "

List of knowledge base retrieval results

", + "refs": { + "RetrieveResponse$retrievalResults": null + } + }, + "KnowledgeBaseRetrieveAndGenerateConfiguration": { + "base": "

Configurations for retrieval and generation for knowledge base.

", + "refs": { + "RetrieveAndGenerateConfiguration$knowledgeBaseConfiguration": null + } + }, + "KnowledgeBaseVectorSearchConfiguration": { + "base": "

Knowledge base vector search configuration

", + "refs": { + "KnowledgeBaseRetrievalConfiguration$vectorSearchConfiguration": null + } + }, + "KnowledgeBaseVectorSearchConfigurationNumberOfResultsInteger": { + "base": null, + "refs": { + "KnowledgeBaseVectorSearchConfiguration$numberOfResults": "

Top-K results to retrieve from knowledge base.

" + } + }, + "LambdaArn": { + "base": "

ARN of a Lambda.

", + "refs": { + "ModelInvocationInput$overrideLambda": null + } + }, + "MaximumLength": { + "base": "

Maximum length of output

", + "refs": { + "InferenceConfiguration$maximumLength": null + } + }, + "MimeType": { + "base": "

Content type of the request

", + "refs": { + "InvokeAgentResponse$contentType": "

streaming response mimetype of the model

" + } + }, + "ModelInvocationInput": { + "base": "

Trace Part which contains information used to call Invoke Model

", + "refs": { + "OrchestrationTrace$modelInvocationInput": null, + "PostProcessingTrace$modelInvocationInput": null, + "PreProcessingTrace$modelInvocationInput": null + } + }, + "NextToken": { + "base": "

Opaque continuation token of previous paginated response.

", + "refs": { + "RetrieveRequest$nextToken": null, + "RetrieveResponse$nextToken": null + } + }, + "NonBlankString": { + "base": "

Non Blank String

", + "refs": { + "AccessDeniedException$message": null, + "BadGatewayException$message": null, + "BadGatewayException$resourceName": null, + "ConflictException$message": null, + "DependencyFailedException$message": null, + "DependencyFailedException$resourceName": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "Observation": { + "base": "

Trace Part which contains output details for action group or knowledge base or final response

", + "refs": { + "OrchestrationTrace$observation": null + } + }, + "OrchestrationTrace": { + "base": "

Trace contains intermidate response during orchestration

", + "refs": { + "Trace$orchestrationTrace": null + } + }, + "OutputString": { + "base": "

Agent Trace Output String

", + "refs": { + "PostProcessingParsedResponse$text": null + } + }, + "Parameter": { + "base": "

parameters included in action group invocation

", + "refs": { + "Parameters$member": null + } + }, + "Parameters": { + "base": "

list of parameters included in action group invocation

", + "refs": { + "ActionGroupInvocationInput$parameters": null, + "ContentMap$value": null + } + }, + "PartBody": { + "base": "

PartBody of the payload in bytes

", + "refs": { + "PayloadPart$bytes": null + } + }, + "PayloadPart": { + "base": "

Base 64 endoded byte response

", + "refs": { + "ResponseStream$chunk": null + } + }, + "PostProcessingModelInvocationOutput": { + "base": "

Trace Part which contains information related to postprocessing

", + "refs": { + "PostProcessingTrace$modelInvocationOutput": null + } + }, + "PostProcessingParsedResponse": { + "base": "

Trace Part which contains information if preprocessing was successful

", + "refs": { + "PostProcessingModelInvocationOutput$parsedResponse": null + } + }, + "PostProcessingTrace": { + "base": "

Trace Part which contains information related to post processing step

", + "refs": { + "Trace$postProcessingTrace": null + } + }, + "PreProcessingModelInvocationOutput": { + "base": "

Trace Part which contains information related to preprocessing

", + "refs": { + "PreProcessingTrace$modelInvocationOutput": null + } + }, + "PreProcessingParsedResponse": { + "base": "

Trace Part which contains information if preprocessing was successful

", + "refs": { + "PreProcessingModelInvocationOutput$parsedResponse": null + } + }, + "PreProcessingTrace": { + "base": "

Trace Part which contains information related to preprocessing step

", + "refs": { + "Trace$preProcessingTrace": null + } + }, + "PromptSessionAttributesMap": { + "base": "

Session attributes that go to the prompt

", + "refs": { + "SessionState$promptSessionAttributes": "

Prompt Session Attributes

" + } + }, + "PromptText": { + "base": "

Prompt Message

", + "refs": { + "ModelInvocationInput$text": null + } + }, + "PromptType": { + "base": "

types of prompts

", + "refs": { + "ModelInvocationInput$type": null + } + }, + "Rationale": { + "base": "

Trace Part which contains information related to reasoning

", + "refs": { + "OrchestrationTrace$rationale": null + } + }, + "RationaleString": { + "base": "

Agent Trace Rationale String

", + "refs": { + "PreProcessingParsedResponse$rationale": null, + "Rationale$text": null + } + }, + "RepromptResponse": { + "base": "

Observation information if there were reprompts

", + "refs": { + "Observation$repromptResponse": null + } + }, + "RequestBody": { + "base": "

Request Body Content Map

", + "refs": { + "ActionGroupInvocationInput$requestBody": null + } + }, + "ResourceNotFoundException": { + "base": "

This exception is thrown when a resource referenced by the operation does not exist

", + "refs": { + "ResponseStream$resourceNotFoundException": null + } + }, + "ResponseStream": { + "base": "

Response body of is a stream

", + "refs": { + "InvokeAgentResponse$completion": "

Inference response from the model in the format specified in the Content-Type response header.

" + } + }, + "RetrievalResultContent": { + "base": "

Content of a retrieval result.

", + "refs": { + "KnowledgeBaseRetrievalResult$content": null, + "RetrievedReference$content": null + } + }, + "RetrievalResultLocation": { + "base": "

The source location of a retrieval result.

", + "refs": { + "KnowledgeBaseRetrievalResult$location": null, + "RetrievedReference$location": null + } + }, + "RetrievalResultLocationType": { + "base": "

The location type of a retrieval result.

", + "refs": { + "RetrievalResultLocation$type": null + } + }, + "RetrievalResultS3Location": { + "base": "

The S3 location of a retrieval result.

", + "refs": { + "RetrievalResultLocation$s3Location": null + } + }, + "RetrieveAndGenerateConfiguration": { + "base": "

Configures the retrieval and generation for the session.

", + "refs": { + "RetrieveAndGenerateRequest$retrieveAndGenerateConfiguration": null + } + }, + "RetrieveAndGenerateInput": { + "base": "

Customer input of the turn

", + "refs": { + "RetrieveAndGenerateRequest$input": null + } + }, + "RetrieveAndGenerateInputTextString": { + "base": null, + "refs": { + "RetrieveAndGenerateInput$text": "

Customer input of the turn in text

" + } + }, + "RetrieveAndGenerateOutput": { + "base": "

Service response of the turn

", + "refs": { + "RetrieveAndGenerateResponse$output": null + } + }, + "RetrieveAndGenerateRequest": { + "base": null, + "refs": { + } + }, + "RetrieveAndGenerateResponse": { + "base": null, + "refs": { + } + }, + "RetrieveAndGenerateSessionConfiguration": { + "base": "

Configures common parameters of the session.

", + "refs": { + "RetrieveAndGenerateRequest$sessionConfiguration": null + } + }, + "RetrieveAndGenerateType": { + "base": "

The type of RetrieveAndGenerate.

", + "refs": { + "RetrieveAndGenerateConfiguration$type": null + } + }, + "RetrieveRequest": { + "base": null, + "refs": { + } + }, + "RetrieveResponse": { + "base": null, + "refs": { + } + }, + "RetrievedReference": { + "base": "

Retrieved reference

", + "refs": { + "RetrievedReferences$member": null + } + }, + "RetrievedReferences": { + "base": "

list of retrieved references

", + "refs": { + "Citation$retrievedReferences": null, + "KnowledgeBaseLookupOutput$retrievedReferences": null + } + }, + "ServiceQuotaExceededException": { + "base": "

This exception is thrown when a request is made beyond the service quota

", + "refs": { + "ResponseStream$serviceQuotaExceededException": null + } + }, + "SessionAttributesMap": { + "base": "

Session attributes are pass through attributes passed to the action group

", + "refs": { + "SessionState$sessionAttributes": "

Session Attributes

" + } + }, + "SessionId": { + "base": "

Identifier of the session.

", + "refs": { + "InvokeAgentRequest$sessionId": "

Identifier used for the current session

", + "InvokeAgentResponse$sessionId": "

streaming response mimetype of the model

", + "RetrieveAndGenerateRequest$sessionId": null, + "RetrieveAndGenerateResponse$sessionId": null, + "TracePart$sessionId": null + } + }, + "SessionState": { + "base": "

Session state provided

", + "refs": { + "InvokeAgentRequest$sessionState": "

Session state passed by customer. Base64 encoded json string representation of SessionState.

" + } + }, + "Source": { + "base": "

Parsing error source

", + "refs": { + "RepromptResponse$source": null + } + }, + "Span": { + "base": "

Span of text

", + "refs": { + "TextResponsePart$span": null + } + }, + "SpanEndInteger": { + "base": null, + "refs": { + "Span$end": "

End of span

" + } + }, + "SpanStartInteger": { + "base": null, + "refs": { + "Span$start": "

Start of span

" + } + }, + "StopSequences": { + "base": "

List of stop sequences

", + "refs": { + "InferenceConfiguration$stopSequences": null + } + }, + "String": { + "base": null, + "refs": { + "ContentMap$key": null, + "Parameter$name": "

Name of parameter

", + "Parameter$type": "

Type of parameter

", + "Parameter$value": "

Value of parameter

", + "PromptSessionAttributesMap$key": null, + "PromptSessionAttributesMap$value": null, + "RepromptResponse$text": "

Reprompt response text

", + "RetrievalResultContent$text": "

Content of a retrieval result in text

", + "RetrievalResultS3Location$uri": "

URI of S3 location

", + "RetrieveAndGenerateOutput$text": "

Service response of the turn in text

", + "SessionAttributesMap$key": null, + "SessionAttributesMap$value": null, + "StopSequences$member": null, + "TextResponsePart$text": "

Response part in text

" + } + }, + "Temperature": { + "base": "

Controls randomness, higher values increase diversity

", + "refs": { + "InferenceConfiguration$temperature": null + } + }, + "TextResponsePart": { + "base": "

Text response part

", + "refs": { + "GeneratedResponsePart$textResponsePart": null + } + }, + "ThrottlingException": { + "base": "

This exception is thrown when the number of requests exceeds the limit

", + "refs": { + "ResponseStream$throttlingException": null + } + }, + "TopK": { + "base": "

Sample from the k most likely next tokens

", + "refs": { + "InferenceConfiguration$topK": null + } + }, + "TopP": { + "base": "

Cumulative probability cutoff for token selection

", + "refs": { + "InferenceConfiguration$topP": null + } + }, + "Trace": { + "base": "

Trace contains intermidate response for customer

", + "refs": { + "TracePart$trace": null + } + }, + "TraceId": { + "base": "

Identifier for trace

", + "refs": { + "FailureTrace$traceId": null, + "InvocationInput$traceId": null, + "ModelInvocationInput$traceId": null, + "Observation$traceId": null, + "PostProcessingModelInvocationOutput$traceId": null, + "PreProcessingModelInvocationOutput$traceId": null, + "Rationale$traceId": null + } + }, + "TraceKnowledgeBaseId": { + "base": "

Agent Trace Action Group Knowledge Base Id

", + "refs": { + "KnowledgeBaseLookupInput$knowledgeBaseId": null + } + }, + "TracePart": { + "base": "

Trace Part which contains intermidate response for customer

", + "refs": { + "ResponseStream$trace": null + } + }, + "Type": { + "base": "

types of observations

", + "refs": { + "Observation$type": null + } + }, + "ValidationException": { + "base": "

This exception is thrown when the request's input validation fails

", + "refs": { + "ResponseStream$validationException": null + } + }, + "Verb": { + "base": "

Agent Trace Action Group Action verb

", + "refs": { + "ActionGroupInvocationInput$verb": null + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent-runtime.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-agent-runtime.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-agent-runtime.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-agent-runtime/2023-07-26/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-agent-runtime/2023-07-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,9 @@ +{ + "pagination": { + "Retrieve": { + "input_token": "nextToken", + "output_token": "nextToken", + "result_key": "retrievalResults" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,306 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-09-30", + "endpointPrefix":"bedrock-runtime", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon Bedrock Runtime", + "serviceId":"Bedrock Runtime", + "signatureVersion":"v4", + "signingName":"bedrock", + "uid":"bedrock-runtime-2023-09-30" + }, + "operations":{ + "InvokeModel":{ + "name":"InvokeModel", + "http":{ + "method":"POST", + "requestUri":"/model/{modelId}/invoke", + "responseCode":200 + }, + "input":{"shape":"InvokeModelRequest"}, + "output":{"shape":"InvokeModelResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ModelTimeoutException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ModelNotReadyException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ModelErrorException"} + ] + }, + "InvokeModelWithResponseStream":{ + "name":"InvokeModelWithResponseStream", + "http":{ + "method":"POST", + "requestUri":"/model/{modelId}/invoke-with-response-stream", + "responseCode":200 + }, + "input":{"shape":"InvokeModelWithResponseStreamRequest"}, + "output":{"shape":"InvokeModelWithResponseStreamResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ModelTimeoutException"}, + {"shape":"InternalServerException"}, + {"shape":"ModelStreamErrorException"}, + {"shape":"ValidationException"}, + {"shape":"ModelNotReadyException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ModelErrorException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "Body":{ + "type":"blob", + "max":25000000, + "min":0, + "sensitive":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "InvokeModelIdentifier":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.:]?[a-z0-9-]{1,63}))|([0-9]{12}:provisioned-model/[a-z0-9]{12})))|([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.:]?[a-z0-9-]{1,63}))|(([0-9a-zA-Z][_-]?)+)" + }, + "InvokeModelRequest":{ + "type":"structure", + "required":[ + "body", + "modelId" + ], + "members":{ + "body":{"shape":"Body"}, + "contentType":{ + "shape":"MimeType", + "location":"header", + "locationName":"Content-Type" + }, + "accept":{ + "shape":"MimeType", + "location":"header", + "locationName":"Accept" + }, + "modelId":{ + "shape":"InvokeModelIdentifier", + "location":"uri", + "locationName":"modelId" + } + }, + "payload":"body" + }, + "InvokeModelResponse":{ + "type":"structure", + "required":[ + "body", + "contentType" + ], + "members":{ + "body":{"shape":"Body"}, + "contentType":{ + "shape":"MimeType", + "location":"header", + "locationName":"Content-Type" + } + }, + "payload":"body" + }, + "InvokeModelWithResponseStreamRequest":{ + "type":"structure", + "required":[ + "body", + "modelId" + ], + "members":{ + "body":{"shape":"Body"}, + "contentType":{ + "shape":"MimeType", + "location":"header", + "locationName":"Content-Type" + }, + "accept":{ + "shape":"MimeType", + "location":"header", + "locationName":"X-Amzn-Bedrock-Accept" + }, + "modelId":{ + "shape":"InvokeModelIdentifier", + "location":"uri", + "locationName":"modelId" + } + }, + "payload":"body" + }, + "InvokeModelWithResponseStreamResponse":{ + "type":"structure", + "required":[ + "body", + "contentType" + ], + "members":{ + "body":{"shape":"ResponseStream"}, + "contentType":{ + "shape":"MimeType", + "location":"header", + "locationName":"X-Amzn-Bedrock-Content-Type" + } + }, + "payload":"body" + }, + "MimeType":{"type":"string"}, + "ModelErrorException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"}, + "originalStatusCode":{"shape":"StatusCode"}, + "resourceName":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":424, + "senderFault":true + }, + "exception":true + }, + "ModelNotReadyException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "ModelStreamErrorException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"}, + "originalStatusCode":{"shape":"StatusCode"}, + "originalMessage":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":424, + "senderFault":true + }, + "exception":true + }, + "ModelTimeoutException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":408, + "senderFault":true + }, + "exception":true + }, + "NonBlankString":{ + "type":"string", + "pattern":"[\\s\\S]*" + }, + "PartBody":{ + "type":"blob", + "max":1000000, + "min":0, + "sensitive":true + }, + "PayloadPart":{ + "type":"structure", + "members":{ + "bytes":{"shape":"PartBody"} + }, + "event":true, + "sensitive":true + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResponseStream":{ + "type":"structure", + "members":{ + "chunk":{"shape":"PayloadPart"}, + "internalServerException":{"shape":"InternalServerException"}, + "modelStreamErrorException":{"shape":"ModelStreamErrorException"}, + "validationException":{"shape":"ValidationException"}, + "throttlingException":{"shape":"ThrottlingException"}, + "modelTimeoutException":{"shape":"ModelTimeoutException"} + }, + "eventstream":true + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "StatusCode":{ + "type":"integer", + "box":true, + "max":599, + "min":100 + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"NonBlankString"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,153 @@ +{ + "version": "2.0", + "service": "

Describes the API operations for running inference using Bedrock models.

", + "operations": { + "InvokeModel": "

Invokes the specified Bedrock model to run inference using the input provided in the request body. You use InvokeModel to run inference for text models, image models, and embedding models.

For more information, see Run inference in the Bedrock User Guide.

For example requests, see Examples (after the Errors section).

", + "InvokeModelWithResponseStream": "

Invoke the specified Bedrock model to run inference using the input provided. Return the response in a stream.

For more information, see Run inference in the Bedrock User Guide.

For an example request and response, see Examples (after the Errors section).

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

The request is denied because of missing access permissions.

", + "refs": { + } + }, + "Body": { + "base": null, + "refs": { + "InvokeModelRequest$body": "

Input data in the format specified in the content-type request header. To see the format and content of this field for different models, refer to Inference parameters.

", + "InvokeModelResponse$body": "

Inference response from the model in the format specified in the content-type header field. To see the format and content of this field for different models, refer to Inference parameters.

", + "InvokeModelWithResponseStreamRequest$body": "

Inference input in the format specified by the content-type. To see the format and content of this field for different models, refer to Inference parameters.

" + } + }, + "InternalServerException": { + "base": "

An internal server error occurred. Retry your request.

", + "refs": { + "ResponseStream$internalServerException": null + } + }, + "InvokeModelIdentifier": { + "base": null, + "refs": { + "InvokeModelRequest$modelId": "

Identifier of the model.

", + "InvokeModelWithResponseStreamRequest$modelId": "

Id of the model to invoke using the streaming request.

" + } + }, + "InvokeModelRequest": { + "base": null, + "refs": { + } + }, + "InvokeModelResponse": { + "base": null, + "refs": { + } + }, + "InvokeModelWithResponseStreamRequest": { + "base": null, + "refs": { + } + }, + "InvokeModelWithResponseStreamResponse": { + "base": null, + "refs": { + } + }, + "MimeType": { + "base": null, + "refs": { + "InvokeModelRequest$contentType": "

The MIME type of the input data in the request. The default value is application/json.

", + "InvokeModelRequest$accept": "

The desired MIME type of the inference body in the response. The default value is application/json.

", + "InvokeModelResponse$contentType": "

The MIME type of the inference result.

", + "InvokeModelWithResponseStreamRequest$contentType": "

The MIME type of the input data in the request. The default value is application/json.

", + "InvokeModelWithResponseStreamRequest$accept": "

The desired MIME type of the inference body in the response. The default value is application/json.

", + "InvokeModelWithResponseStreamResponse$contentType": "

The MIME type of the inference result.

" + } + }, + "ModelErrorException": { + "base": "

The request failed due to an error while processing the model.

", + "refs": { + } + }, + "ModelNotReadyException": { + "base": "

The model specified in the request is not ready to serve inference requests.

", + "refs": { + } + }, + "ModelStreamErrorException": { + "base": "

An error occurred while streaming the response.

", + "refs": { + "ResponseStream$modelStreamErrorException": null + } + }, + "ModelTimeoutException": { + "base": "

The request took too long to process. Processing time exceeded the model timeout length.

", + "refs": { + "ResponseStream$modelTimeoutException": null + } + }, + "NonBlankString": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "InternalServerException$message": null, + "ModelErrorException$message": null, + "ModelErrorException$resourceName": "

The resource name.

", + "ModelNotReadyException$message": null, + "ModelStreamErrorException$message": null, + "ModelStreamErrorException$originalMessage": "

The original message.

", + "ModelTimeoutException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "PartBody": { + "base": null, + "refs": { + "PayloadPart$bytes": "

Base64-encoded bytes of payload data.

" + } + }, + "PayloadPart": { + "base": "

Payload content included in the response.

", + "refs": { + "ResponseStream$chunk": "

Content included in the response.

" + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource ARN was not found. Check the ARN and try your request again.

", + "refs": { + } + }, + "ResponseStream": { + "base": "

Definition of content in the response stream.

", + "refs": { + "InvokeModelWithResponseStreamResponse$body": "

Inference response from the model in the format specified by Content-Type. To see the format and content of this field for different models, refer to Inference parameters.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

The number of requests exceeds the service quota. Resubmit your request later.

", + "refs": { + } + }, + "StatusCode": { + "base": null, + "refs": { + "ModelErrorException$originalStatusCode": "

The original status code.

", + "ModelStreamErrorException$originalStatusCode": "

The original status code.

" + } + }, + "ThrottlingException": { + "base": "

The number of requests exceeds the limit. Resubmit your request later.

", + "refs": { + "ResponseStream$throttlingException": null + } + }, + "ValidationException": { + "base": "

Input validation failed. Check your request parameters and retry the request.

", + "refs": { + "ResponseStream$validationException": null + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-runtime-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-runtime-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-runtime.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://bedrock-runtime.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://bedrock-runtime.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4 @@ +{ + "pagination": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/smoke.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/smoke.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/smoke.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/smoke.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,6 @@ +{ + "version": 1, + "defaultRegion": "us-west-2", + "testCases": [ + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/bedrock-runtime/2023-09-30/waiters-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/bedrock-runtime/2023-09-30/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/billingconductor/2021-07-30/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/billingconductor/2021-07-30/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/billingconductor/2021-07-30/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/billingconductor/2021-07-30/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -917,7 +917,8 @@ "BillingGroupArn":{"shape":"BillingGroupArn"}, "BillingPeriodRange":{"shape":"CustomLineItemBillingPeriodRange"}, "Tags":{"shape":"TagMap"}, - "ChargeDetails":{"shape":"CustomLineItemChargeDetails"} + "ChargeDetails":{"shape":"CustomLineItemChargeDetails"}, + "AccountId":{"shape":"AccountId"} } }, "CreateCustomLineItemOutput":{ @@ -1088,7 +1089,8 @@ "BillingGroupArn":{"shape":"BillingGroupArn"}, "CreationTime":{"shape":"Instant"}, "LastModifiedTime":{"shape":"Instant"}, - "AssociationSize":{"shape":"NumberOfAssociations"} + "AssociationSize":{"shape":"NumberOfAssociations"}, + "AccountId":{"shape":"AccountId"} } }, "CustomLineItemName":{ @@ -1156,7 +1158,8 @@ "StartBillingPeriod":{"shape":"BillingPeriod"}, "EndBillingPeriod":{"shape":"BillingPeriod"}, "Arn":{"shape":"CustomLineItemArn"}, - "StartTime":{"shape":"Instant"} + "StartTime":{"shape":"Instant"}, + "AccountId":{"shape":"AccountId"} } }, "DeleteBillingGroupInput":{ @@ -1448,7 +1451,8 @@ "members":{ "Names":{"shape":"CustomLineItemNameList"}, "BillingGroups":{"shape":"BillingGroupArnList"}, - "Arns":{"shape":"CustomLineItemArns"} + "Arns":{"shape":"CustomLineItemArns"}, + "AccountIds":{"shape":"AccountIdList"} } }, "ListCustomLineItemsInput":{ @@ -2159,7 +2163,8 @@ "INVALID_SKU_COMBO", "INVALID_FILTER", "TOO_MANY_AUTO_ASSOCIATE_BILLING_GROUPS", - "CANNOT_DELETE_AUTO_ASSOCIATE_BILLING_GROUP" + "CANNOT_DELETE_AUTO_ASSOCIATE_BILLING_GROUP", + "ILLEGAL_ACCOUNT_ID" ] } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/billingconductor/2021-07-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/billingconductor/2021-07-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/billingconductor/2021-07-30/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/billingconductor/2021-07-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -78,6 +78,9 @@ "AccountIdList$member": null, "BillingGroupListElement$PrimaryAccountId": "

The account ID that serves as the main account in a billing group.

", "CreateBillingGroupInput$PrimaryAccountId": "

The account ID that serves as the main account in a billing group.

", + "CreateCustomLineItemInput$AccountId": "

The Amazon Web Services account in which this custom line item will be applied to.

", + "CustomLineItemListElement$AccountId": "

The Amazon Web Services account in which this custom line item will be applied to.

", + "CustomLineItemVersionListElement$AccountId": "

The Amazon Web Services account in which this custom line item will be applied to.

", "ListAccountAssociationsFilter$AccountId": "

The Amazon Web Services account ID to filter on.

", "UpdateBillingGroupOutput$PrimaryAccountId": "

The account ID that serves as the main account in a billing group.

" } @@ -93,7 +96,8 @@ "refs": { "AccountGrouping$LinkedAccountIds": "

The account IDs that make up the billing group. Account IDs must be a part of the consolidated billing family, and not associated with another billing group.

", "AssociateAccountsInput$AccountIds": "

The associating array of account IDs.

", - "DisassociateAccountsInput$AccountIds": "

The array of account IDs to disassociate.

" + "DisassociateAccountsInput$AccountIds": "

The array of account IDs to disassociate.

", + "ListCustomLineItemsFilter$AccountIds": "

The Amazon Web Services accounts in which this custom line item will be applied to.

" } }, "AccountName": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/billingconductor/2021-07-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -184,7 +182,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -219,7 +216,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -230,14 +226,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -251,14 +249,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -267,11 +263,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -282,14 +278,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -303,7 +301,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -323,7 +320,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -334,14 +330,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -352,9 +350,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -253,6 +253,29 @@ "scriptModeConfig":{"shape":"ScriptModeConfig"} } }, + "Association":{ + "type":"structure", + "required":[ + "arn", + "type" + ], + "members":{ + "arn":{"shape":"BraketResourceArn"}, + "type":{"shape":"AssociationType"} + } + }, + "AssociationType":{ + "type":"string", + "enum":["RESERVATION_TIME_WINDOW_ARN"] + }, + "Associations":{ + "type":"list", + "member":{"shape":"Association"} + }, + "BraketResourceArn":{ + "type":"string", + "pattern":"^arn:aws[a-z\\-]*:braket:[a-z0-9\\-]*:[0-9]{12}:.*$" + }, "CancelJobRequest":{ "type":"structure", "required":["jobArn"], @@ -349,6 +372,7 @@ ], "members":{ "algorithmSpecification":{"shape":"AlgorithmSpecification"}, + "associations":{"shape":"CreateJobRequestAssociationsList"}, "checkpointConfig":{"shape":"JobCheckpointConfig"}, "clientToken":{ "shape":"String64", @@ -365,6 +389,12 @@ "tags":{"shape":"TagsMap"} } }, + "CreateJobRequestAssociationsList":{ + "type":"list", + "member":{"shape":"Association"}, + "max":1, + "min":0 + }, "CreateJobRequestInputDataConfigList":{ "type":"list", "member":{"shape":"InputFileConfig"}, @@ -399,6 +429,7 @@ "shape":"JsonValue", "jsonvalue":true }, + "associations":{"shape":"CreateQuantumTaskRequestAssociationsList"}, "clientToken":{ "shape":"String64", "idempotencyToken":true @@ -415,6 +446,12 @@ "tags":{"shape":"TagsMap"} } }, + "CreateQuantumTaskRequestAssociationsList":{ + "type":"list", + "member":{"shape":"Association"}, + "max":1, + "min":0 + }, "CreateQuantumTaskRequestDeviceParametersString":{ "type":"string", "max":48000, @@ -472,6 +509,22 @@ }, "exception":true }, + "DeviceQueueInfo":{ + "type":"structure", + "required":[ + "queue", + "queueSize" + ], + "members":{ + "queue":{"shape":"QueueName"}, + "queuePriority":{"shape":"QueuePriority"}, + "queueSize":{"shape":"String"} + } + }, + "DeviceQueueInfoList":{ + "type":"list", + "member":{"shape":"DeviceQueueInfo"} + }, "DeviceRetiredException":{ "type":"structure", "members":{ @@ -547,6 +600,7 @@ "jsonvalue":true }, "deviceName":{"shape":"String"}, + "deviceQueueInfo":{"shape":"DeviceQueueInfoList"}, "deviceStatus":{"shape":"DeviceStatus"}, "deviceType":{"shape":"DeviceType"}, "providerName":{"shape":"String"} @@ -556,6 +610,11 @@ "type":"structure", "required":["jobArn"], "members":{ + "additionalAttributeNames":{ + "shape":"HybridJobAdditionalAttributeNamesList", + "location":"querystring", + "locationName":"additionalAttributeNames" + }, "jobArn":{ "shape":"JobArn", "location":"uri", @@ -577,6 +636,7 @@ ], "members":{ "algorithmSpecification":{"shape":"AlgorithmSpecification"}, + "associations":{"shape":"Associations"}, "billableDuration":{"shape":"Integer"}, "checkpointConfig":{"shape":"JobCheckpointConfig"}, "createdAt":{"shape":"SyntheticTimestamp_date_time"}, @@ -590,6 +650,7 @@ "jobArn":{"shape":"JobArn"}, "jobName":{"shape":"GetJobResponseJobNameString"}, "outputDataConfig":{"shape":"JobOutputDataConfig"}, + "queueInfo":{"shape":"HybridJobQueueInfo"}, "roleArn":{"shape":"RoleArn"}, "startedAt":{"shape":"SyntheticTimestamp_date_time"}, "status":{"shape":"JobPrimaryStatus"}, @@ -607,6 +668,11 @@ "type":"structure", "required":["quantumTaskArn"], "members":{ + "additionalAttributeNames":{ + "shape":"QuantumTaskAdditionalAttributeNamesList", + "location":"querystring", + "locationName":"additionalAttributeNames" + }, "quantumTaskArn":{ "shape":"QuantumTaskArn", "location":"uri", @@ -627,6 +693,7 @@ "status" ], "members":{ + "associations":{"shape":"Associations"}, "createdAt":{"shape":"SyntheticTimestamp_date_time"}, "deviceArn":{"shape":"DeviceArn"}, "deviceParameters":{ @@ -639,11 +706,32 @@ "outputS3Bucket":{"shape":"String"}, "outputS3Directory":{"shape":"String"}, "quantumTaskArn":{"shape":"QuantumTaskArn"}, + "queueInfo":{"shape":"QuantumTaskQueueInfo"}, "shots":{"shape":"Long"}, "status":{"shape":"QuantumTaskStatus"}, "tags":{"shape":"TagsMap"} } }, + "HybridJobAdditionalAttributeName":{ + "type":"string", + "enum":["QueueInfo"] + }, + "HybridJobAdditionalAttributeNamesList":{ + "type":"list", + "member":{"shape":"HybridJobAdditionalAttributeName"} + }, + "HybridJobQueueInfo":{ + "type":"structure", + "required":[ + "position", + "queue" + ], + "members":{ + "message":{"shape":"String"}, + "position":{"shape":"String"}, + "queue":{"shape":"QueueName"} + } + }, "HyperParameters":{ "type":"map", "key":{"shape":"String256"}, @@ -654,7 +742,8 @@ "HyperParametersValueString":{ "type":"string", "max":2500, - "min":1 + "min":1, + "pattern":"^.*$" }, "InputConfigList":{ "type":"list", @@ -886,10 +975,31 @@ "type":"long", "box":true }, + "QuantumTaskAdditionalAttributeName":{ + "type":"string", + "enum":["QueueInfo"] + }, + "QuantumTaskAdditionalAttributeNamesList":{ + "type":"list", + "member":{"shape":"QuantumTaskAdditionalAttributeName"} + }, "QuantumTaskArn":{ "type":"string", "max":256, - "min":1 + "min":0 + }, + "QuantumTaskQueueInfo":{ + "type":"structure", + "required":[ + "position", + "queue" + ], + "members":{ + "message":{"shape":"String"}, + "position":{"shape":"String"}, + "queue":{"shape":"QueueName"}, + "queuePriority":{"shape":"QueuePriority"} + } }, "QuantumTaskStatus":{ "type":"string", @@ -930,6 +1040,20 @@ "type":"list", "member":{"shape":"QuantumTaskSummary"} }, + "QueueName":{ + "type":"string", + "enum":[ + "QUANTUM_TASKS_QUEUE", + "JOBS_QUEUE" + ] + }, + "QueuePriority":{ + "type":"string", + "enum":[ + "Normal", + "Priority" + ] + }, "ResourceNotFoundException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -29,6 +29,33 @@ "GetJobResponse$algorithmSpecification": "

Definition of the Amazon Braket job created. Specifies the container image the job uses, information about the Python scripts used for entry and training, and the user-defined metrics used to evaluation the job.

" } }, + "Association": { + "base": "

The Amazon Braket resource and the association type.

", + "refs": { + "Associations$member": null, + "CreateJobRequestAssociationsList$member": null, + "CreateQuantumTaskRequestAssociationsList$member": null + } + }, + "AssociationType": { + "base": null, + "refs": { + "Association$type": "

The association type for the specified Amazon Braket resource arn.

" + } + }, + "Associations": { + "base": null, + "refs": { + "GetJobResponse$associations": "

The list of Amazon Braket resources associated with the hybrid job.

", + "GetQuantumTaskResponse$associations": "

The list of Amazon Braket resources associated with the quantum task.

" + } + }, + "BraketResourceArn": { + "base": null, + "refs": { + "Association$arn": "

The Amazon Braket resource arn.

" + } + }, "CancelJobRequest": { "base": null, "refs": { @@ -78,6 +105,12 @@ "refs": { } }, + "CreateJobRequestAssociationsList": { + "base": null, + "refs": { + "CreateJobRequest$associations": "

The list of Amazon Braket resources associated with the hybrid job.

" + } + }, "CreateJobRequestInputDataConfigList": { "base": null, "refs": { @@ -100,6 +133,12 @@ "refs": { } }, + "CreateQuantumTaskRequestAssociationsList": { + "base": null, + "refs": { + "CreateQuantumTaskRequest$associations": "

The list of Amazon Braket resources associated with the quantum task.

" + } + }, "CreateQuantumTaskRequestDeviceParametersString": { "base": null, "refs": { @@ -158,6 +197,18 @@ "refs": { } }, + "DeviceQueueInfo": { + "base": "

Information about tasks and jobs queued on a device.

", + "refs": { + "DeviceQueueInfoList$member": null + } + }, + "DeviceQueueInfoList": { + "base": null, + "refs": { + "GetDeviceResponse$deviceQueueInfo": "

List of information about tasks and jobs queued on a device.

" + } + }, "DeviceRetiredException": { "base": "

The specified device has been retired.

", "refs": { @@ -225,6 +276,24 @@ "refs": { } }, + "HybridJobAdditionalAttributeName": { + "base": null, + "refs": { + "HybridJobAdditionalAttributeNamesList$member": null + } + }, + "HybridJobAdditionalAttributeNamesList": { + "base": null, + "refs": { + "GetJobRequest$additionalAttributeNames": "

A list of attributes to return information for.

" + } + }, + "HybridJobQueueInfo": { + "base": "

Information about the queue for a specified job.

", + "refs": { + "GetJobResponse$queueInfo": "

Queue information for the requested job. Only returned if QueueInfo is specified in the additionalAttributeNames\" field in the GetJob API request.

" + } + }, "HyperParameters": { "base": null, "refs": { @@ -406,17 +475,35 @@ "QuantumTaskSummary$shots": "

The shots used for the task.

" } }, + "QuantumTaskAdditionalAttributeName": { + "base": null, + "refs": { + "QuantumTaskAdditionalAttributeNamesList$member": null + } + }, + "QuantumTaskAdditionalAttributeNamesList": { + "base": null, + "refs": { + "GetQuantumTaskRequest$additionalAttributeNames": "

A list of attributes to return information for.

" + } + }, "QuantumTaskArn": { "base": null, "refs": { "CancelQuantumTaskRequest$quantumTaskArn": "

The ARN of the task to cancel.

", "CancelQuantumTaskResponse$quantumTaskArn": "

The ARN of the task.

", "CreateQuantumTaskResponse$quantumTaskArn": "

The ARN of the task created by the request.

", - "GetQuantumTaskRequest$quantumTaskArn": "

the ARN of the task to retrieve.

", + "GetQuantumTaskRequest$quantumTaskArn": "

The ARN of the task to retrieve.

", "GetQuantumTaskResponse$quantumTaskArn": "

The ARN of the task.

", "QuantumTaskSummary$quantumTaskArn": "

The ARN of the task.

" } }, + "QuantumTaskQueueInfo": { + "base": "

Information about the queue for the specified quantum task.

", + "refs": { + "GetQuantumTaskResponse$queueInfo": "

Queue information for the requested quantum task. Only returned if QueueInfo is specified in the additionalAttributeNames\" field in the GetQuantumTask API request.

" + } + }, "QuantumTaskStatus": { "base": null, "refs": { @@ -436,6 +523,21 @@ "SearchQuantumTasksResponse$quantumTasks": "

An array of QuantumTaskSummary objects for tasks that match the specified filters.

" } }, + "QueueName": { + "base": null, + "refs": { + "DeviceQueueInfo$queue": "

The name of the queue.

", + "HybridJobQueueInfo$queue": "

The name of the queue.

", + "QuantumTaskQueueInfo$queue": "

The name of the queue.

" + } + }, + "QueuePriority": { + "base": null, + "refs": { + "DeviceQueueInfo$queuePriority": "

Optional. Specifies the priority of the queue. Tasks in a priority queue are processed before the tasks in a normal queue.

", + "QuantumTaskQueueInfo$queuePriority": "

Optional. Specifies the priority of the queue. Quantum tasks in a priority queue are processed before the tasks in a normal queue.

" + } + }, "ResourceNotFoundException": { "base": "

The specified resource was not found.

", "refs": { @@ -600,6 +702,7 @@ "AccessDeniedException$message": null, "ConflictException$message": null, "DeviceOfflineException$message": null, + "DeviceQueueInfo$queueSize": "

The number of jobs or tasks in the queue for a given device.

", "DeviceRetiredException$message": null, "DeviceSummary$deviceName": "

The name of the device.

", "DeviceSummary$providerName": "

The provider of the device.

", @@ -608,9 +711,13 @@ "GetQuantumTaskResponse$failureReason": "

The reason that a task failed.

", "GetQuantumTaskResponse$outputS3Bucket": "

The S3 bucket where task results are stored.

", "GetQuantumTaskResponse$outputS3Directory": "

The folder in the S3 bucket where task results are stored.

", + "HybridJobQueueInfo$message": "

Optional. Provides more information about the queue position. For example, if the job is complete and no longer in the queue, the message field contains that information.

", + "HybridJobQueueInfo$position": "

Current position of the job in the jobs queue.

", "InternalServiceException$message": null, "JobSummary$jobName": "

The name of the Amazon Braket job.

", "ListTagsForResourceRequest$resourceArn": "

Specify the resourceArn for the resource whose tags to display.

", + "QuantumTaskQueueInfo$message": "

Optional. Provides more information about the queue position. For example, if the task is complete and no longer in the queue, the message field contains that information.

", + "QuantumTaskQueueInfo$position": "

Current position of the task in the quantum tasks queue.

", "QuantumTaskSummary$outputS3Bucket": "

The S3 bucket where the task result file is stored..

", "QuantumTaskSummary$outputS3Directory": "

The folder in the S3 bucket where the task result file is stored.

", "ResourceNotFoundException$message": null, @@ -679,7 +786,7 @@ "GetJobResponse$startedAt": "

The date and time that the Amazon Braket job was started.

", "GetQuantumTaskResponse$createdAt": "

The time at which the task was created.

", "GetQuantumTaskResponse$endedAt": "

The time at which the task ended.

", - "JobEventDetails$timeOfEvent": "

TThe type of event that occurred related to the Amazon Braket job.

", + "JobEventDetails$timeOfEvent": "

The type of event that occurred related to the Amazon Braket job.

", "JobSummary$createdAt": "

The date and time that the Amazon Braket job was created.

", "JobSummary$endedAt": "

The date and time that the Amazon Braket job ended.

", "JobSummary$startedAt": "

The date and time that the Amazon Braket job was started.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://braket-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://braket-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://braket.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://braket.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/braket/2019-09-01/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/braket/2019-09-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,353 @@ +{ + "testCases": [ + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://braket.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://braket.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://braket.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://braket.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/budgets/2016-10-20/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/budgets/2016-10-20/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/budgets/2016-10-20/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/budgets/2016-10-20/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -598,7 +598,7 @@ "BudgetNotificationsForAccountList":{ "type":"list", "member":{"shape":"BudgetNotificationsForAccount"}, - "max":50 + "max":1000 }, "BudgetPerformanceHistory":{ "type":"structure", @@ -1012,7 +1012,7 @@ "required":["AccountId"], "members":{ "AccountId":{"shape":"AccountId"}, - "MaxResults":{"shape":"MaxResults"}, + "MaxResults":{"shape":"MaxResultsDescribeBudgets"}, "NextToken":{"shape":"GenericString"} } }, @@ -1217,7 +1217,13 @@ "MaxResultsBudgetNotifications":{ "type":"integer", "box":true, - "max":50, + "max":1000, + "min":1 + }, + "MaxResultsDescribeBudgets":{ + "type":"integer", + "box":true, + "max":1000, "min":1 }, "NotFoundException":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/budgets/2016-10-20/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/budgets/2016-10-20/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/budgets/2016-10-20/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/budgets/2016-10-20/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -53,7 +53,7 @@ "DescribeBudgetNotificationsForAccountRequest$AccountId": null, "DescribeBudgetPerformanceHistoryRequest$AccountId": null, "DescribeBudgetRequest$AccountId": "

The accountId that is associated with the budget that you want a description of.

", - "DescribeBudgetsRequest$AccountId": "

The accountId that is associated with the budgets that you want descriptions of.

", + "DescribeBudgetsRequest$AccountId": "

The accountId that is associated with the budgets that you want to describe.

", "DescribeNotificationsForBudgetRequest$AccountId": "

The accountId that is associated with the budget whose notifications you want descriptions of.

", "DescribeSubscribersForNotificationRequest$AccountId": "

The accountId that is associated with the budget whose subscribers you want descriptions of.

", "ExecuteBudgetActionRequest$AccountId": null, @@ -609,15 +609,20 @@ "DescribeBudgetActionsForAccountRequest$MaxResults": null, "DescribeBudgetActionsForBudgetRequest$MaxResults": null, "DescribeBudgetPerformanceHistoryRequest$MaxResults": null, - "DescribeBudgetsRequest$MaxResults": "

An optional integer that represents how many entries a paginated response contains. The maximum is 100.

", - "DescribeNotificationsForBudgetRequest$MaxResults": "

An optional integer that represents how many entries a paginated response contains. The maximum is 100.

", - "DescribeSubscribersForNotificationRequest$MaxResults": "

An optional integer that represents how many entries a paginated response contains. The maximum is 100.

" + "DescribeNotificationsForBudgetRequest$MaxResults": "

An optional integer that represents how many entries a paginated response contains.

", + "DescribeSubscribersForNotificationRequest$MaxResults": "

An optional integer that represents how many entries a paginated response contains.

" } }, "MaxResultsBudgetNotifications": { "base": null, "refs": { - "DescribeBudgetNotificationsForAccountRequest$MaxResults": "

An integer that shows how many budget name entries a paginated response contains.

" + "DescribeBudgetNotificationsForAccountRequest$MaxResults": "

An integer that represents how many budgets a paginated response contains. The default is 50.

" + } + }, + "MaxResultsDescribeBudgets": { + "base": null, + "refs": { + "DescribeBudgetsRequest$MaxResults": "

An integer that represents how many budgets a paginated response contains. The default is 100.

" } }, "NotFoundException": { @@ -759,7 +764,7 @@ } }, "Spend": { - "base": "

The amount of cost or usage that's measured for a budget.

For example, a Spend for 3 GB of S3 usage has the following parameters:

  • An Amount of 3

  • A unit of GB

", + "base": "

The amount of cost or usage that's measured for a budget.

Cost example: A Spend for 3 USD of costs has the following parameters:

  • An Amount of 3

  • A Unit of USD

Usage example: A Spend for 3 GB of S3 usage has the following parameters:

  • An Amount of 3

  • A Unit of GB

", "refs": { "Budget$BudgetLimit": "

The total amount of cost, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage that you want to track with your budget.

BudgetLimit is required for cost or usage budgets, but optional for RI or Savings Plans utilization or coverage budgets. RI and Savings Plans utilization or coverage budgets default to 100. This is the only valid value for RI or Savings Plans utilization or coverage budgets. You can't use BudgetLimit with PlannedBudgetLimits for CreateBudget and UpdateBudget actions.

", "BudgetedAndActualAmounts$BudgetedAmount": "

The amount of cost or usage that you created the budget for.

", @@ -851,7 +856,7 @@ "UnitValue": { "base": "

A string that represents the spend unit of a budget. It can't be null or empty.

", "refs": { - "Spend$Unit": "

The unit of measurement that's used for the budget forecast, actual spend, or budget threshold, such as USD or GBP.

" + "Spend$Unit": "

The unit of measurement that's used for the budget forecast, actual spend, or budget threshold.

" } }, "UpdateBudgetActionRequest": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ce/2017-10-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ce/2017-10-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ce/2017-10-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ce/2017-10-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1859,7 +1859,8 @@ "RDSInstanceDetails":{"shape":"RDSInstanceDetails"}, "RedshiftInstanceDetails":{"shape":"RedshiftInstanceDetails"}, "ElastiCacheInstanceDetails":{"shape":"ElastiCacheInstanceDetails"}, - "ESInstanceDetails":{"shape":"ESInstanceDetails"} + "ESInstanceDetails":{"shape":"ESInstanceDetails"}, + "MemoryDBInstanceDetails":{"shape":"MemoryDBInstanceDetails"} } }, "InvalidNextTokenException":{ @@ -1977,6 +1978,16 @@ "type":"integer", "min":1 }, + "MemoryDBInstanceDetails":{ + "type":"structure", + "members":{ + "Family":{"shape":"GenericString"}, + "NodeType":{"shape":"GenericString"}, + "Region":{"shape":"GenericString"}, + "CurrentGeneration":{"shape":"GenericBoolean"}, + "SizeFlexEligible":{"shape":"GenericBoolean"} + } + }, "Metric":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ce/2017-10-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ce/2017-10-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ce/2017-10-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ce/2017-10-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -607,9 +607,9 @@ } }, "EC2InstanceDetails": { - "base": "

Details about the Amazon EC2 instances that Amazon Web Services recommends that you purchase.

", + "base": "

Details about the Amazon EC2 reservations that Amazon Web Services recommends that you purchase.

", "refs": { - "InstanceDetails$EC2InstanceDetails": "

The Amazon EC2 instances that Amazon Web Services recommends that you purchase.

" + "InstanceDetails$EC2InstanceDetails": "

The Amazon EC2 reservations that Amazon Web Services recommends that you purchase.

" } }, "EC2ResourceDetails": { @@ -631,15 +631,15 @@ } }, "ESInstanceDetails": { - "base": "

Details about the Amazon OpenSearch Service instances that Amazon Web Services recommends that you purchase.

", + "base": "

Details about the Amazon OpenSearch Service reservations that Amazon Web Services recommends that you purchase.

", "refs": { - "InstanceDetails$ESInstanceDetails": "

The Amazon OpenSearch Service instances that Amazon Web Services recommends that you purchase.

" + "InstanceDetails$ESInstanceDetails": "

The Amazon OpenSearch Service reservations that Amazon Web Services recommends that you purchase.

" } }, "ElastiCacheInstanceDetails": { - "base": "

Details about the Amazon ElastiCache instances that Amazon Web Services recommends that you purchase.

", + "base": "

Details about the Amazon ElastiCache reservations that Amazon Web Services recommends that you purchase.

", "refs": { - "InstanceDetails$ElastiCacheInstanceDetails": "

The ElastiCache instances that Amazon Web Services recommends that you purchase.

" + "InstanceDetails$ElastiCacheInstanceDetails": "

The ElastiCache reservations that Amazon Web Services recommends that you purchase.

" } }, "Entity": { @@ -763,6 +763,8 @@ "ESInstanceDetails$SizeFlexEligible": "

Determines whether the recommended reservation is size flexible.

", "ElastiCacheInstanceDetails$CurrentGeneration": "

Determines whether the recommendation is for a current generation instance.

", "ElastiCacheInstanceDetails$SizeFlexEligible": "

Determines whether the recommended reservation is size flexible.

", + "MemoryDBInstanceDetails$CurrentGeneration": "

Determines whether the recommendation is for a current generation instance.

", + "MemoryDBInstanceDetails$SizeFlexEligible": "

Determines whether the recommended reservation is size flexible.

", "RDSInstanceDetails$CurrentGeneration": "

Determines whether the recommendation is for a current-generation instance.

", "RDSInstanceDetails$SizeFlexEligible": "

Determines whether the recommended reservation is size flexible.

", "RedshiftInstanceDetails$CurrentGeneration": "

Determines whether the recommendation is for a current-generation instance.

", @@ -850,6 +852,9 @@ "GetReservationPurchaseRecommendationRequest$AccountId": "

The account ID that's associated with the recommendation.

", "GetReservationPurchaseRecommendationRequest$Service": "

The specific service that you want recommendations for.

", "GetRightsizingRecommendationRequest$Service": "

The specific service that you want recommendations for. The only valid value for GetRightsizingRecommendation is \"AmazonEC2\".

", + "MemoryDBInstanceDetails$Family": "

The instance family of the recommended reservation.

", + "MemoryDBInstanceDetails$NodeType": "

The node type of the recommended reservation.

", + "MemoryDBInstanceDetails$Region": "

The Amazon Web Services Region of the recommended reservation.

", "NetworkResourceUtilization$NetworkInBytesPerSecond": "

The network inbound throughput utilization measured in Bytes per second (Bps).

", "NetworkResourceUtilization$NetworkOutBytesPerSecond": "

The network outbound throughput utilization measured in Bytes per second (Bps).

", "NetworkResourceUtilization$NetworkPacketsInPerSecond": "

The network inbound packets that are measured in packets per second.

", @@ -1238,9 +1243,9 @@ } }, "InstanceDetails": { - "base": "

Details about the instances that Amazon Web Services recommends that you purchase.

", + "base": "

Details about the reservations that Amazon Web Services recommends that you purchase.

", "refs": { - "ReservationPurchaseRecommendationDetail$InstanceDetails": "

Details about the instances that Amazon Web Services recommends that you purchase.

" + "ReservationPurchaseRecommendationDetail$InstanceDetails": "

Details about the reservations that Amazon Web Services recommends that you purchase.

" } }, "InvalidNextTokenException": { @@ -1342,6 +1347,12 @@ "GetTagsRequest$MaxResults": "

This field is only used when SortBy is provided in the request. The maximum number of objects that are returned for this request. If MaxResults isn't specified with SortBy, the request returns 1000 results as the default value for this parameter.

For GetTags, MaxResults has an upper quota of 1000.

" } }, + "MemoryDBInstanceDetails": { + "base": "

Details about the MemoryDB reservations that Amazon Web Services recommends that you purchase.

", + "refs": { + "InstanceDetails$MemoryDBInstanceDetails": "

The MemoryDB reservations that Amazon Web Services recommends that you purchase.

" + } + }, "Metric": { "base": null, "refs": { @@ -1599,9 +1610,9 @@ } }, "RDSInstanceDetails": { - "base": "

Details about the Amazon RDS instances that Amazon Web Services recommends that you purchase.

", + "base": "

Details about the Amazon RDS reservations that Amazon Web Services recommends that you purchase.

", "refs": { - "InstanceDetails$RDSInstanceDetails": "

The Amazon RDS instances that Amazon Web Services recommends that you purchase.

" + "InstanceDetails$RDSInstanceDetails": "

The Amazon RDS reservations that Amazon Web Services recommends that you purchase.

" } }, "RICostForUnusedHours": { @@ -1657,9 +1668,9 @@ } }, "RedshiftInstanceDetails": { - "base": "

Details about the Amazon Redshift instances that Amazon Web Services recommends that you purchase.

", + "base": "

Details about the Amazon Redshift reservations that Amazon Web Services recommends that you purchase.

", "refs": { - "InstanceDetails$RedshiftInstanceDetails": "

The Amazon Redshift instances that Amazon Web Services recommends that you purchase.

" + "InstanceDetails$RedshiftInstanceDetails": "

The Amazon Redshift reservations that Amazon Web Services recommends that you purchase.

" } }, "RequestChangedException": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ce/2017-10-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ce/2017-10-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ce/2017-10-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ce/2017-10-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -235,7 +233,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -270,7 +267,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -281,14 +277,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -302,14 +300,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -318,11 +314,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -333,14 +329,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -354,7 +352,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -374,7 +371,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -385,14 +381,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -403,9 +401,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -108,6 +108,46 @@ {"shape":"ServiceFailureException"} ] }, + "CreateMediaPipelineKinesisVideoStreamPool":{ + "name":"CreateMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"POST", + "requestUri":"/media-pipeline-kinesis-video-stream-pools", + "responseCode":201 + }, + "input":{"shape":"CreateMediaPipelineKinesisVideoStreamPoolRequest"}, + "output":{"shape":"CreateMediaPipelineKinesisVideoStreamPoolResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, + "CreateMediaStreamPipeline":{ + "name":"CreateMediaStreamPipeline", + "http":{ + "method":"POST", + "requestUri":"/sdk-media-stream-pipelines", + "responseCode":201 + }, + "input":{"shape":"CreateMediaStreamPipelineRequest"}, + "output":{"shape":"CreateMediaStreamPipelineResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "DeleteMediaCapturePipeline":{ "name":"DeleteMediaCapturePipeline", "http":{ @@ -164,6 +204,25 @@ {"shape":"ServiceFailureException"} ] }, + "DeleteMediaPipelineKinesisVideoStreamPool":{ + "name":"DeleteMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"DELETE", + "requestUri":"/media-pipeline-kinesis-video-stream-pools/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteMediaPipelineKinesisVideoStreamPoolRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetMediaCapturePipeline":{ "name":"GetMediaCapturePipeline", "http":{ @@ -221,6 +280,25 @@ {"shape":"ServiceFailureException"} ] }, + "GetMediaPipelineKinesisVideoStreamPool":{ + "name":"GetMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"GET", + "requestUri":"/media-pipeline-kinesis-video-stream-pools/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetMediaPipelineKinesisVideoStreamPoolRequest"}, + "output":{"shape":"GetMediaPipelineKinesisVideoStreamPoolResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetSpeakerSearchTask":{ "name":"GetSpeakerSearchTask", "http":{ @@ -297,6 +375,25 @@ {"shape":"ServiceFailureException"} ] }, + "ListMediaPipelineKinesisVideoStreamPools":{ + "name":"ListMediaPipelineKinesisVideoStreamPools", + "http":{ + "method":"GET", + "requestUri":"/media-pipeline-kinesis-video-stream-pools", + "responseCode":200 + }, + "input":{"shape":"ListMediaPipelineKinesisVideoStreamPoolsRequest"}, + "output":{"shape":"ListMediaPipelineKinesisVideoStreamPoolsResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "ListMediaPipelines":{ "name":"ListMediaPipelines", "http":{ @@ -489,6 +586,26 @@ {"shape":"ServiceUnavailableException"}, {"shape":"ServiceFailureException"} ] + }, + "UpdateMediaPipelineKinesisVideoStreamPool":{ + "name":"UpdateMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"PUT", + "requestUri":"/media-pipeline-kinesis-video-stream-pools/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateMediaPipelineKinesisVideoStreamPoolRequest"}, + "output":{"shape":"UpdateMediaPipelineKinesisVideoStreamPoolResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] } }, "shapes":{ @@ -652,6 +769,12 @@ "type":"string", "pattern":"44100|48000" }, + "AwsRegion":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^([a-z]+-){2,}\\d+$" + }, "BadRequestException":{ "type":"structure", "members":{ @@ -996,6 +1119,50 @@ "MediaLiveConnectorPipeline":{"shape":"MediaLiveConnectorPipeline"} } }, + "CreateMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":[ + "StreamConfiguration", + "PoolName" + ], + "members":{ + "StreamConfiguration":{"shape":"KinesisVideoStreamConfiguration"}, + "PoolName":{"shape":"KinesisVideoStreamPoolName"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "Tags":{"shape":"TagList"} + } + }, + "CreateMediaPipelineKinesisVideoStreamPoolResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPoolConfiguration":{"shape":"KinesisVideoStreamPoolConfiguration"} + } + }, + "CreateMediaStreamPipelineRequest":{ + "type":"structure", + "required":[ + "Sources", + "Sinks" + ], + "members":{ + "Sources":{"shape":"MediaStreamSourceList"}, + "Sinks":{"shape":"MediaStreamSinkList"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "Tags":{"shape":"TagList"} + } + }, + "CreateMediaStreamPipelineResponse":{ + "type":"structure", + "members":{ + "MediaStreamPipeline":{"shape":"MediaStreamPipeline"} + } + }, "DataChannelConcatenationConfiguration":{ "type":"structure", "required":["State"], @@ -1003,6 +1170,14 @@ "State":{"shape":"ArtifactsConcatenationState"} } }, + "DataRetentionChangeInHours":{ + "type":"integer", + "min":1 + }, + "DataRetentionInHours":{ + "type":"integer", + "min":0 + }, "DeleteMediaCapturePipelineRequest":{ "type":"structure", "required":["MediaPipelineId"], @@ -1025,6 +1200,17 @@ } } }, + "DeleteMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"identifier" + } + } + }, "DeleteMediaPipelineRequest":{ "type":"structure", "required":["MediaPipelineId"], @@ -1127,6 +1313,23 @@ "MediaInsightsPipelineConfiguration":{"shape":"MediaInsightsPipelineConfiguration"} } }, + "GetMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetMediaPipelineKinesisVideoStreamPoolResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPoolConfiguration":{"shape":"KinesisVideoStreamPoolConfiguration"} + } + }, "GetMediaPipelineRequest":{ "type":"structure", "required":["MediaPipelineId"], @@ -1287,6 +1490,71 @@ "min":1, "pattern":"arn:[a-z\\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+" }, + "KinesisVideoStreamConfiguration":{ + "type":"structure", + "required":["Region"], + "members":{ + "Region":{"shape":"AwsRegion"}, + "DataRetentionInHours":{"shape":"DataRetentionInHours"} + } + }, + "KinesisVideoStreamConfigurationUpdate":{ + "type":"structure", + "members":{ + "DataRetentionInHours":{"shape":"DataRetentionChangeInHours"} + } + }, + "KinesisVideoStreamPoolConfiguration":{ + "type":"structure", + "members":{ + "PoolArn":{"shape":"Arn"}, + "PoolName":{"shape":"KinesisVideoStreamPoolName"}, + "PoolId":{"shape":"KinesisVideoStreamPoolId"}, + "PoolStatus":{"shape":"KinesisVideoStreamPoolStatus"}, + "PoolSize":{"shape":"KinesisVideoStreamPoolSize"}, + "StreamConfiguration":{"shape":"KinesisVideoStreamConfiguration"}, + "CreatedTimestamp":{"shape":"Iso8601Timestamp"}, + "UpdatedTimestamp":{"shape":"Iso8601Timestamp"} + } + }, + "KinesisVideoStreamPoolId":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[0-9a-zA-Z._-]+" + }, + "KinesisVideoStreamPoolName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[0-9a-zA-Z._-]+" + }, + "KinesisVideoStreamPoolSize":{ + "type":"integer", + "min":0 + }, + "KinesisVideoStreamPoolStatus":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "UPDATING", + "DELETING", + "FAILED" + ] + }, + "KinesisVideoStreamPoolSummary":{ + "type":"structure", + "members":{ + "PoolName":{"shape":"KinesisVideoStreamPoolName"}, + "PoolId":{"shape":"KinesisVideoStreamPoolId"}, + "PoolArn":{"shape":"Arn"} + } + }, + "KinesisVideoStreamPoolSummaryList":{ + "type":"list", + "member":{"shape":"KinesisVideoStreamPoolSummary"} + }, "KinesisVideoStreamRecordingSourceRuntimeConfiguration":{ "type":"structure", "required":[ @@ -1383,6 +1651,28 @@ "NextToken":{"shape":"String"} } }, + "ListMediaPipelineKinesisVideoStreamPoolsRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"next-token" + }, + "MaxResults":{ + "shape":"ResultMax", + "location":"querystring", + "locationName":"max-results" + } + } + }, + "ListMediaPipelineKinesisVideoStreamPoolsResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPools":{"shape":"KinesisVideoStreamPoolSummaryList"}, + "NextToken":{"shape":"String"} + } + }, "ListMediaPipelinesRequest":{ "type":"structure", "members":{ @@ -1648,7 +1938,8 @@ "MediaCapturePipeline":{"shape":"MediaCapturePipeline"}, "MediaLiveConnectorPipeline":{"shape":"MediaLiveConnectorPipeline"}, "MediaConcatenationPipeline":{"shape":"MediaConcatenationPipeline"}, - "MediaInsightsPipeline":{"shape":"MediaInsightsPipeline"} + "MediaInsightsPipeline":{"shape":"MediaInsightsPipeline"}, + "MediaStreamPipeline":{"shape":"MediaStreamPipeline"} } }, "MediaPipelineElementStatus":{ @@ -1718,6 +2009,66 @@ "max":48000, "min":8000 }, + "MediaStreamPipeline":{ + "type":"structure", + "members":{ + "MediaPipelineId":{"shape":"GuidString"}, + "MediaPipelineArn":{"shape":"AmazonResourceName"}, + "CreatedTimestamp":{"shape":"Iso8601Timestamp"}, + "UpdatedTimestamp":{"shape":"Iso8601Timestamp"}, + "Status":{"shape":"MediaPipelineStatus"}, + "Sources":{"shape":"MediaStreamSourceList"}, + "Sinks":{"shape":"MediaStreamSinkList"} + } + }, + "MediaStreamPipelineSinkType":{ + "type":"string", + "enum":["KinesisVideoStreamPool"] + }, + "MediaStreamSink":{ + "type":"structure", + "required":[ + "SinkArn", + "SinkType", + "ReservedStreamCapacity", + "MediaStreamType" + ], + "members":{ + "SinkArn":{"shape":"Arn"}, + "SinkType":{"shape":"MediaStreamPipelineSinkType"}, + "ReservedStreamCapacity":{"shape":"ReservedStreamCapacity"}, + "MediaStreamType":{"shape":"MediaStreamType"} + } + }, + "MediaStreamSinkList":{ + "type":"list", + "member":{"shape":"MediaStreamSink"}, + "max":2, + "min":1 + }, + "MediaStreamSource":{ + "type":"structure", + "required":[ + "SourceType", + "SourceArn" + ], + "members":{ + "SourceType":{"shape":"MediaPipelineSourceType"}, + "SourceArn":{"shape":"Arn"} + } + }, + "MediaStreamSourceList":{ + "type":"list", + "member":{"shape":"MediaStreamSource"}, + "min":1 + }, + "MediaStreamType":{ + "type":"string", + "enum":[ + "MixedAudio", + "IndividualAudio" + ] + }, "MeetingEventsConcatenationConfiguration":{ "type":"structure", "required":["State"], @@ -1850,6 +2201,11 @@ "max":2, "min":2 }, + "ReservedStreamCapacity":{ + "type":"integer", + "max":10, + "min":1 + }, "ResolutionOption":{ "type":"string", "enum":[ @@ -2267,6 +2623,24 @@ "UpdateStatus":{"shape":"MediaPipelineStatusUpdate"} } }, + "UpdateMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"identifier" + }, + "StreamConfiguration":{"shape":"KinesisVideoStreamConfigurationUpdate"} + } + }, + "UpdateMediaPipelineKinesisVideoStreamPoolResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPoolConfiguration":{"shape":"KinesisVideoStreamPoolConfiguration"} + } + }, "VerticalLayoutConfiguration":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,16 +7,21 @@ "CreateMediaInsightsPipeline": "

Creates a media insights pipeline.

", "CreateMediaInsightsPipelineConfiguration": "

A structure that contains the static configurations for a media insights pipeline.

", "CreateMediaLiveConnectorPipeline": "

Creates a media live connector pipeline in an Amazon Chime SDK meeting.

", + "CreateMediaPipelineKinesisVideoStreamPool": "

Creates an Kinesis video stream pool for the media pipeline.

", + "CreateMediaStreamPipeline": "

Creates a streaming media pipeline.

", "DeleteMediaCapturePipeline": "

Deletes the media pipeline.

", "DeleteMediaInsightsPipelineConfiguration": "

Deletes the specified configuration settings.

", "DeleteMediaPipeline": "

Deletes the media pipeline.

", + "DeleteMediaPipelineKinesisVideoStreamPool": "

Deletes an Kinesis video stream pool.

", "GetMediaCapturePipeline": "

Gets an existing media pipeline.

", "GetMediaInsightsPipelineConfiguration": "

Gets the configuration settings for a media insights pipeline.

", "GetMediaPipeline": "

Gets an existing media pipeline.

", + "GetMediaPipelineKinesisVideoStreamPool": "

Gets an Kinesis video stream pool.

", "GetSpeakerSearchTask": "

Retrieves the details of the specified speaker search task.

", "GetVoiceToneAnalysisTask": "

Retrieves the details of a voice tone analysis task.

", "ListMediaCapturePipelines": "

Returns a list of media pipelines.

", "ListMediaInsightsPipelineConfigurations": "

Lists the available media insights pipeline configurations.

", + "ListMediaPipelineKinesisVideoStreamPools": "

Lists the video stream pools in the media pipeline.

", "ListMediaPipelines": "

Returns a list of media pipelines.

", "ListTagsForResource": "

Lists the tags available for a media pipeline.

", "StartSpeakerSearchTask": "

Starts a speaker search task.

Before starting any speaker search tasks, you must provide all notices and obtain all consents from the speaker as required under applicable privacy and biometrics laws, and as required under the AWS service terms for the Amazon Chime SDK.

", @@ -26,7 +31,8 @@ "TagResource": "

The ARN of the media pipeline that you want to tag. Consists of the pipeline's endpoint region, resource ID, and pipeline ID.

", "UntagResource": "

Removes any tags from a media pipeline.

", "UpdateMediaInsightsPipelineConfiguration": "

Updates the media insights pipeline's configuration settings.

", - "UpdateMediaInsightsPipelineStatus": "

Updates the status of a media insights pipeline.

" + "UpdateMediaInsightsPipelineStatus": "

Updates the status of a media insights pipeline.

", + "UpdateMediaPipelineKinesisVideoStreamPool": "

Updates an Kinesis video stream pool in a media pipeline.

" }, "shapes": { "ActiveSpeakerOnlyConfiguration": { @@ -50,6 +56,7 @@ "MediaConcatenationPipeline$MediaPipelineArn": "

The ARN of the media pipeline that you specify in the SourceConfiguration object.

", "MediaLiveConnectorPipeline$MediaPipelineArn": "

The connector pipeline's ARN.

", "MediaPipelineSummary$MediaPipelineArn": "

The ARN of the media pipeline in the summary.

", + "MediaStreamPipeline$MediaPipelineArn": "

The ARN of the media stream pipeline.

", "TagResourceRequest$ResourceARN": "

The ARN of the media pipeline associated with any tags. The ARN consists of the pipeline's endpoint region, resource ID, and pipeline ID.

", "UntagResourceRequest$ResourceARN": "

The ARN of the pipeline that you want to untag.

" } @@ -75,6 +82,8 @@ "CreateMediaInsightsPipelineConfigurationRequest$ResourceAccessRoleArn": "

The ARN of the role used by the service to access Amazon Web Services resources, including Transcribe and Transcribe Call Analytics, on the caller’s behalf.

", "CreateMediaInsightsPipelineRequest$MediaInsightsPipelineConfigurationArn": "

The ARN of the pipeline's configuration.

", "KinesisDataStreamSinkConfiguration$InsightsTarget": "

The ARN of the sink.

", + "KinesisVideoStreamPoolConfiguration$PoolArn": "

The ARN of the video stream pool configuration.

", + "KinesisVideoStreamPoolSummary$PoolArn": "

The ARN of the video stream pool.

", "LambdaFunctionSinkConfiguration$InsightsTarget": "

The ARN of the sink.

", "MediaCapturePipeline$SourceArn": "

ARN of the source from which the media artifacts are saved.

", "MediaCapturePipeline$SinkArn": "

ARN of the destination to which the media artifacts are saved.

", @@ -84,6 +93,8 @@ "MediaInsightsPipelineConfiguration$MediaInsightsPipelineConfigurationArn": "

The ARN of the configuration.

", "MediaInsightsPipelineConfiguration$ResourceAccessRoleArn": "

The ARN of the role used by the service to access Amazon Web Services resources.

", "MediaInsightsPipelineConfigurationSummary$MediaInsightsPipelineConfigurationArn": "

The ARN of the media insights pipeline configuration.

", + "MediaStreamSink$SinkArn": "

The ARN of the media stream sink.

", + "MediaStreamSource$SourceArn": "

The ARN of the media stream source.

", "S3BucketSinkConfiguration$Destination": "

The destination URL of the S3 bucket.

", "S3RecordingSinkConfiguration$Destination": "

The default URI of the Amazon S3 bucket used as the recording sink.

", "S3RecordingSinkRuntimeConfiguration$Destination": "

The URI of the S3 bucket used as the sink.

", @@ -165,6 +176,12 @@ "LiveConnectorRTMPConfiguration$AudioSampleRate": "

The audio sample rate set for the RTMP configuration. Default: 48000.

" } }, + "AwsRegion": { + "base": null, + "refs": { + "KinesisVideoStreamConfiguration$Region": "

The Amazon Web Services Region of the video stream.

" + } + }, "BadRequestException": { "base": "

The input parameters don't match the service's restrictions.

", "refs": { @@ -268,6 +285,8 @@ "CreateMediaInsightsPipelineConfigurationRequest$ClientRequestToken": "

The unique identifier for the media insights pipeline configuration request.

", "CreateMediaInsightsPipelineRequest$ClientRequestToken": "

The unique identifier for the media insights pipeline request.

", "CreateMediaLiveConnectorPipelineRequest$ClientRequestToken": "

The token assigned to the client making the request.

", + "CreateMediaPipelineKinesisVideoStreamPoolRequest$ClientRequestToken": "

The token assigned to the client making the request.

", + "CreateMediaStreamPipelineRequest$ClientRequestToken": "

The token assigned to the client making the request.

", "StartSpeakerSearchTaskRequest$ClientRequestToken": "

The unique identifier for the client request. Use a different token for different speaker search tasks.

", "StartVoiceToneAnalysisTaskRequest$ClientRequestToken": "

The unique identifier for the client request. Use a different token for different voice tone analysis tasks.

" } @@ -423,12 +442,44 @@ "refs": { } }, + "CreateMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, + "CreateMediaPipelineKinesisVideoStreamPoolResponse": { + "base": null, + "refs": { + } + }, + "CreateMediaStreamPipelineRequest": { + "base": null, + "refs": { + } + }, + "CreateMediaStreamPipelineResponse": { + "base": null, + "refs": { + } + }, "DataChannelConcatenationConfiguration": { "base": "

The content configuration object's data channel.

", "refs": { "ArtifactsConcatenationConfiguration$DataChannel": "

The configuration for the data channel artifacts concatenation.

" } }, + "DataRetentionChangeInHours": { + "base": null, + "refs": { + "KinesisVideoStreamConfigurationUpdate$DataRetentionInHours": "

The updated time that data is retained.

" + } + }, + "DataRetentionInHours": { + "base": null, + "refs": { + "KinesisVideoStreamConfiguration$DataRetentionInHours": "

The amount of time that data is retained.

" + } + }, "DeleteMediaCapturePipelineRequest": { "base": null, "refs": { @@ -439,6 +490,11 @@ "refs": { } }, + "DeleteMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, "DeleteMediaPipelineRequest": { "base": null, "refs": { @@ -514,6 +570,16 @@ "refs": { } }, + "GetMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, + "GetMediaPipelineKinesisVideoStreamPoolResponse": { + "base": null, + "refs": { + } + }, "GetMediaPipelineRequest": { "base": null, "refs": { @@ -559,7 +625,7 @@ "GetMediaCapturePipelineRequest$MediaPipelineId": "

The ID of the pipeline that you want to get.

", "GetMediaPipelineRequest$MediaPipelineId": "

The ID of the pipeline that you want to get.

", "GetSpeakerSearchTaskRequest$SpeakerSearchTaskId": "

The ID of the speaker search task.

", - "GetVoiceToneAnalysisTaskRequest$VoiceToneAnalysisTaskId": "

The ID of the voice tone anlysis task.

", + "GetVoiceToneAnalysisTaskRequest$VoiceToneAnalysisTaskId": "

The ID of the voice tone analysis task.

", "MediaCapturePipeline$MediaPipelineId": "

The ID of a media pipeline.

", "MediaCapturePipelineSummary$MediaPipelineId": "

The ID of the media pipeline in the summary.

", "MediaConcatenationPipeline$MediaPipelineId": "

The ID of the media pipeline being concatenated.

", @@ -568,6 +634,7 @@ "MediaInsightsPipelineConfigurationSummary$MediaInsightsPipelineConfigurationId": "

The ID of the media insights pipeline configuration.

", "MediaLiveConnectorPipeline$MediaPipelineId": "

The connector pipeline's ID.

", "MediaPipelineSummary$MediaPipelineId": "

The ID of the media pipeline in the summary.

", + "MediaStreamPipeline$MediaPipelineId": "

The ID of the media stream pipeline

", "SpeakerSearchTask$SpeakerSearchTaskId": "

The speaker search task ID.

", "StopSpeakerSearchTaskRequest$SpeakerSearchTaskId": "

The speaker search task ID.

", "StopVoiceToneAnalysisTaskRequest$VoiceToneAnalysisTaskId": "

The ID of the voice tone analysis task.

", @@ -595,6 +662,8 @@ "Iso8601Timestamp": { "base": null, "refs": { + "KinesisVideoStreamPoolConfiguration$CreatedTimestamp": "

The time at which the configuration was created.

", + "KinesisVideoStreamPoolConfiguration$UpdatedTimestamp": "

The time at which the configuration was updated.

", "MediaCapturePipeline$CreatedTimestamp": "

The time at which the pipeline was created, in ISO 8601 format.

", "MediaCapturePipeline$UpdatedTimestamp": "

The time at which the pipeline was updated, in ISO 8601 format.

", "MediaConcatenationPipeline$CreatedTimestamp": "

The time at which the concatenation pipeline was created.

", @@ -604,6 +673,8 @@ "MediaInsightsPipelineConfiguration$UpdatedTimestamp": "

The time at which the configuration was last updated.

", "MediaLiveConnectorPipeline$CreatedTimestamp": "

The time at which the connector pipeline was created.

", "MediaLiveConnectorPipeline$UpdatedTimestamp": "

The time at which the connector pipeline was last updated.

", + "MediaStreamPipeline$CreatedTimestamp": "

The time at which the media stream pipeline was created.

", + "MediaStreamPipeline$UpdatedTimestamp": "

The time at which the media stream pipeline was updated.

", "SpeakerSearchTask$CreatedTimestamp": "

The time at which a speaker search task was created.

", "SpeakerSearchTask$UpdatedTimestamp": "

The time at which a speaker search task was updated.

", "VoiceToneAnalysisTask$CreatedTimestamp": "

The time at which a voice tone analysis task was created.

", @@ -648,6 +719,66 @@ "StreamConfiguration$StreamArn": "

The ARN of the stream.

" } }, + "KinesisVideoStreamConfiguration": { + "base": "

The configuration of an Kinesis video stream.

", + "refs": { + "CreateMediaPipelineKinesisVideoStreamPoolRequest$StreamConfiguration": "

The configuration settings for the video stream.

", + "KinesisVideoStreamPoolConfiguration$StreamConfiguration": "

The Kinesis video stream pool configuration object.

" + } + }, + "KinesisVideoStreamConfigurationUpdate": { + "base": "

The updated Kinesis video stream configuration object.

", + "refs": { + "UpdateMediaPipelineKinesisVideoStreamPoolRequest$StreamConfiguration": "

The configuration settings for the video stream.

" + } + }, + "KinesisVideoStreamPoolConfiguration": { + "base": "

The video stream pool configuration object.

", + "refs": { + "CreateMediaPipelineKinesisVideoStreamPoolResponse$KinesisVideoStreamPoolConfiguration": "

The configuration for the Kinesis video stream pool.

", + "GetMediaPipelineKinesisVideoStreamPoolResponse$KinesisVideoStreamPoolConfiguration": "

The video stream pool configuration object.

", + "UpdateMediaPipelineKinesisVideoStreamPoolResponse$KinesisVideoStreamPoolConfiguration": "

The video stream pool configuration object.

" + } + }, + "KinesisVideoStreamPoolId": { + "base": null, + "refs": { + "KinesisVideoStreamPoolConfiguration$PoolId": "

The ID of the video stream pool in the configuration.

", + "KinesisVideoStreamPoolSummary$PoolId": "

The ID of the video stream pool.

" + } + }, + "KinesisVideoStreamPoolName": { + "base": null, + "refs": { + "CreateMediaPipelineKinesisVideoStreamPoolRequest$PoolName": "

The name of the video stream pool.

", + "KinesisVideoStreamPoolConfiguration$PoolName": "

The name of the video stream pool configuration.

", + "KinesisVideoStreamPoolSummary$PoolName": "

The name of the video stream pool.

" + } + }, + "KinesisVideoStreamPoolSize": { + "base": null, + "refs": { + "KinesisVideoStreamPoolConfiguration$PoolSize": "

The size of the video stream pool in the configuration.

" + } + }, + "KinesisVideoStreamPoolStatus": { + "base": null, + "refs": { + "KinesisVideoStreamPoolConfiguration$PoolStatus": "

The status of the video stream pool in the configuration.

" + } + }, + "KinesisVideoStreamPoolSummary": { + "base": "

A summary of the Kinesis video stream pool.

", + "refs": { + "KinesisVideoStreamPoolSummaryList$member": null + } + }, + "KinesisVideoStreamPoolSummaryList": { + "base": null, + "refs": { + "ListMediaPipelineKinesisVideoStreamPoolsResponse$KinesisVideoStreamPools": "

The list of video stream pools.

" + } + }, "KinesisVideoStreamRecordingSourceRuntimeConfiguration": { "base": "

A structure that contains the runtime settings for recording a Kinesis video stream.

", "refs": { @@ -707,6 +838,16 @@ "refs": { } }, + "ListMediaPipelineKinesisVideoStreamPoolsRequest": { + "base": null, + "refs": { + } + }, + "ListMediaPipelineKinesisVideoStreamPoolsResponse": { + "base": null, + "refs": { + } + }, "ListMediaPipelinesRequest": { "base": null, "refs": { @@ -927,7 +1068,8 @@ "base": null, "refs": { "CreateMediaCapturePipelineRequest$SourceType": "

Source type from which the media artifacts are captured. A Chime SDK Meeting is the only supported source.

", - "MediaCapturePipeline$SourceType": "

Source type from which media artifacts are saved. You must use ChimeMeeting.

" + "MediaCapturePipeline$SourceType": "

Source type from which media artifacts are saved. You must use ChimeMeeting.

", + "MediaStreamSource$SourceType": "

The type of media stream source.

" } }, "MediaPipelineStatus": { @@ -936,7 +1078,8 @@ "MediaCapturePipeline$Status": "

The status of the media pipeline.

", "MediaConcatenationPipeline$Status": "

The status of the concatenation pipeline.

", "MediaInsightsPipeline$Status": "

The status of a media insights pipeline.

", - "MediaLiveConnectorPipeline$Status": "

The connector pipeline's status.

" + "MediaLiveConnectorPipeline$Status": "

The connector pipeline's status.

", + "MediaStreamPipeline$Status": "

The status of the media stream pipeline.

" } }, "MediaPipelineStatusUpdate": { @@ -964,6 +1107,51 @@ "KinesisVideoStreamSourceRuntimeConfiguration$MediaSampleRate": "

The sample rate of the input audio (in hertz). Low-quality audio, such as telephone audio, is typically around 8,000 Hz. High-quality audio typically ranges from 16,000 Hz to 48,000 Hz. Note that the sample rate you specify must match that of your audio.

Valid Range: Minimum value of 8000. Maximum value of 48000.

" } }, + "MediaStreamPipeline": { + "base": "

Structure that contains the settings for a media stream pipeline.

", + "refs": { + "CreateMediaStreamPipelineResponse$MediaStreamPipeline": "

The requested media pipeline.

", + "MediaPipeline$MediaStreamPipeline": "

Designates a media pipeline as a media stream pipeline.

" + } + }, + "MediaStreamPipelineSinkType": { + "base": null, + "refs": { + "MediaStreamSink$SinkType": "

The media stream sink's type.

" + } + }, + "MediaStreamSink": { + "base": "

Structure that contains the settings for a media stream sink.

", + "refs": { + "MediaStreamSinkList$member": null + } + }, + "MediaStreamSinkList": { + "base": null, + "refs": { + "CreateMediaStreamPipelineRequest$Sinks": "

The data sink for the media pipeline.

", + "MediaStreamPipeline$Sinks": "

The media stream pipeline's data sinks.

" + } + }, + "MediaStreamSource": { + "base": "

Structure that contains the settings for media stream sources.

", + "refs": { + "MediaStreamSourceList$member": null + } + }, + "MediaStreamSourceList": { + "base": null, + "refs": { + "CreateMediaStreamPipelineRequest$Sources": "

The data sources for the media pipeline.

", + "MediaStreamPipeline$Sources": "

The media stream pipeline's data sources.

" + } + }, + "MediaStreamType": { + "base": null, + "refs": { + "MediaStreamSink$MediaStreamType": "

The media stream sink's media stream type.

" + } + }, "MeetingEventsConcatenationConfiguration": { "base": "

The configuration object for an event concatenation pipeline.

", "refs": { @@ -981,7 +1169,9 @@ "base": null, "refs": { "DeleteMediaInsightsPipelineConfigurationRequest$Identifier": "

The unique identifier of the resource to be deleted. Valid values include the name and ARN of the media insights pipeline configuration.

", + "DeleteMediaPipelineKinesisVideoStreamPoolRequest$Identifier": "

The ID of the pool being deleted.

", "GetMediaInsightsPipelineConfigurationRequest$Identifier": "

The unique identifier of the requested resource. Valid values include the name and ARN of the media insights pipeline configuration.

", + "GetMediaPipelineKinesisVideoStreamPoolRequest$Identifier": "

The ID of the video stream pool.

", "GetSpeakerSearchTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "GetVoiceToneAnalysisTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "MediaInsightsRuntimeMetadata$key": null, @@ -990,7 +1180,8 @@ "StopSpeakerSearchTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "StopVoiceToneAnalysisTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "UpdateMediaInsightsPipelineConfigurationRequest$Identifier": "

The unique identifier for the resource to be updated. Valid values include the name and ARN of the media insights pipeline configuration.

", - "UpdateMediaInsightsPipelineStatusRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

" + "UpdateMediaInsightsPipelineStatusRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", + "UpdateMediaPipelineKinesisVideoStreamPoolRequest$Identifier": "

The ID of the video stream pool.

" } }, "NotFoundException": { @@ -1087,6 +1278,12 @@ "KinesisVideoStreamRecordingSourceRuntimeConfiguration$Streams": "

The stream or streams to be recorded.

" } }, + "ReservedStreamCapacity": { + "base": null, + "refs": { + "MediaStreamSink$ReservedStreamCapacity": "

Specifies the number of streams that the sink can accept.

" + } + }, "ResolutionOption": { "base": null, "refs": { @@ -1103,6 +1300,7 @@ "refs": { "ListMediaCapturePipelinesRequest$MaxResults": "

The maximum number of results to return in a single call. Valid Range: 1 - 99.

", "ListMediaInsightsPipelineConfigurationsRequest$MaxResults": "

The maximum number of results to return in a single call.

", + "ListMediaPipelineKinesisVideoStreamPoolsRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListMediaPipelinesRequest$MaxResults": "

The maximum number of results to return in a single call. Valid Range: 1 - 99.

" } }, @@ -1260,6 +1458,8 @@ "ListMediaCapturePipelinesResponse$NextToken": "

The token used to retrieve the next page of results.

", "ListMediaInsightsPipelineConfigurationsRequest$NextToken": "

The token used to return the next page of results.

", "ListMediaInsightsPipelineConfigurationsResponse$NextToken": "

The token used to return the next page of results.

", + "ListMediaPipelineKinesisVideoStreamPoolsRequest$NextToken": "

The token used to return the next page of results.

", + "ListMediaPipelineKinesisVideoStreamPoolsResponse$NextToken": "

The token used to return the next page of results.

", "ListMediaPipelinesRequest$NextToken": "

The token used to retrieve the next page of results.

", "ListMediaPipelinesResponse$NextToken": "

The token used to retrieve the next page of results.

", "MediaInsightsRuntimeMetadata$value": null, @@ -1307,6 +1507,8 @@ "CreateMediaInsightsPipelineConfigurationRequest$Tags": "

The tags assigned to the media insights pipeline configuration.

", "CreateMediaInsightsPipelineRequest$Tags": "

The tags assigned to the media insights pipeline.

", "CreateMediaLiveConnectorPipelineRequest$Tags": "

The tags associated with the media live connector pipeline.

", + "CreateMediaPipelineKinesisVideoStreamPoolRequest$Tags": "

The tags assigned to the video stream pool.

", + "CreateMediaStreamPipelineRequest$Tags": "

The tags assigned to the media pipeline.

", "ListTagsForResourceResponse$Tags": "

The tags associated with the specified media pipeline.

", "TagResourceRequest$Tags": "

The tags associated with the specified media pipeline.

" } @@ -1335,7 +1537,7 @@ "TileAspectRatio": { "base": null, "refs": { - "HorizontalLayoutConfiguration$TileAspectRatio": "

Sets the aspect ratio of the video tiles, such as 16:9.

", + "HorizontalLayoutConfiguration$TileAspectRatio": "

Specifies the aspect ratio of all video tiles.

", "VerticalLayoutConfiguration$TileAspectRatio": "

Sets the aspect ratio of the video tiles, such as 16:9.

" } }, @@ -1401,6 +1603,16 @@ "base": null, "refs": { } + }, + "UpdateMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, + "UpdateMediaPipelineKinesisVideoStreamPoolResponse": { + "base": null, + "refs": { + } }, "VerticalLayoutConfiguration": { "base": "

Defines the configuration settings for a vertical layout.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,6 +10,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListMediaPipelineKinesisVideoStreamPools": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListMediaPipelines": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -82,6 +82,25 @@ {"shape":"AccessDeniedException"} ] }, + "CreateConfiguredAudienceModelAssociation":{ + "name":"CreateConfiguredAudienceModelAssociation", + "http":{ + "method":"POST", + "requestUri":"/memberships/{membershipIdentifier}/configuredaudiencemodelassociations", + "responseCode":200 + }, + "input":{"shape":"CreateConfiguredAudienceModelAssociationInput"}, + "output":{"shape":"CreateConfiguredAudienceModelAssociationOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "CreateConfiguredTable":{ "name":"CreateConfiguredTable", "http":{ @@ -159,6 +178,24 @@ {"shape":"AccessDeniedException"} ] }, + "CreatePrivacyBudgetTemplate":{ + "name":"CreatePrivacyBudgetTemplate", + "http":{ + "method":"POST", + "requestUri":"/memberships/{membershipIdentifier}/privacybudgettemplates", + "responseCode":200 + }, + "input":{"shape":"CreatePrivacyBudgetTemplateInput"}, + "output":{"shape":"CreatePrivacyBudgetTemplateOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "DeleteAnalysisTemplate":{ "name":"DeleteAnalysisTemplate", "http":{ @@ -194,6 +231,24 @@ ], "idempotent":true }, + "DeleteConfiguredAudienceModelAssociation":{ + "name":"DeleteConfiguredAudienceModelAssociation", + "http":{ + "method":"DELETE", + "requestUri":"/memberships/{membershipIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteConfiguredAudienceModelAssociationInput"}, + "output":{"shape":"DeleteConfiguredAudienceModelAssociationOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "DeleteConfiguredTable":{ "name":"DeleteConfiguredTable", "http":{ @@ -289,6 +344,24 @@ ], "idempotent":true }, + "DeletePrivacyBudgetTemplate":{ + "name":"DeletePrivacyBudgetTemplate", + "http":{ + "method":"DELETE", + "requestUri":"/memberships/{membershipIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + "responseCode":204 + }, + "input":{"shape":"DeletePrivacyBudgetTemplateInput"}, + "output":{"shape":"DeletePrivacyBudgetTemplateOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "GetAnalysisTemplate":{ "name":"GetAnalysisTemplate", "http":{ @@ -339,6 +412,57 @@ {"shape":"AccessDeniedException"} ] }, + "GetCollaborationConfiguredAudienceModelAssociation":{ + "name":"GetCollaborationConfiguredAudienceModelAssociation", + "http":{ + "method":"GET", + "requestUri":"/collaborations/{collaborationIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetCollaborationConfiguredAudienceModelAssociationInput"}, + "output":{"shape":"GetCollaborationConfiguredAudienceModelAssociationOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetCollaborationPrivacyBudgetTemplate":{ + "name":"GetCollaborationPrivacyBudgetTemplate", + "http":{ + "method":"GET", + "requestUri":"/collaborations/{collaborationIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetCollaborationPrivacyBudgetTemplateInput"}, + "output":{"shape":"GetCollaborationPrivacyBudgetTemplateOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetConfiguredAudienceModelAssociation":{ + "name":"GetConfiguredAudienceModelAssociation", + "http":{ + "method":"GET", + "requestUri":"/memberships/{membershipIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetConfiguredAudienceModelAssociationInput"}, + "output":{"shape":"GetConfiguredAudienceModelAssociationOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetConfiguredTable":{ "name":"GetConfiguredTable", "http":{ @@ -407,6 +531,23 @@ {"shape":"AccessDeniedException"} ] }, + "GetPrivacyBudgetTemplate":{ + "name":"GetPrivacyBudgetTemplate", + "http":{ + "method":"GET", + "requestUri":"/memberships/{membershipIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetPrivacyBudgetTemplateInput"}, + "output":{"shape":"GetPrivacyBudgetTemplateOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetProtectedQuery":{ "name":"GetProtectedQuery", "http":{ @@ -492,6 +633,57 @@ {"shape":"AccessDeniedException"} ] }, + "ListCollaborationConfiguredAudienceModelAssociations":{ + "name":"ListCollaborationConfiguredAudienceModelAssociations", + "http":{ + "method":"GET", + "requestUri":"/collaborations/{collaborationIdentifier}/configuredaudiencemodelassociations", + "responseCode":200 + }, + "input":{"shape":"ListCollaborationConfiguredAudienceModelAssociationsInput"}, + "output":{"shape":"ListCollaborationConfiguredAudienceModelAssociationsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListCollaborationPrivacyBudgetTemplates":{ + "name":"ListCollaborationPrivacyBudgetTemplates", + "http":{ + "method":"GET", + "requestUri":"/collaborations/{collaborationIdentifier}/privacybudgettemplates", + "responseCode":200 + }, + "input":{"shape":"ListCollaborationPrivacyBudgetTemplatesInput"}, + "output":{"shape":"ListCollaborationPrivacyBudgetTemplatesOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListCollaborationPrivacyBudgets":{ + "name":"ListCollaborationPrivacyBudgets", + "http":{ + "method":"GET", + "requestUri":"/collaborations/{collaborationIdentifier}/privacybudgets", + "responseCode":200 + }, + "input":{"shape":"ListCollaborationPrivacyBudgetsInput"}, + "output":{"shape":"ListCollaborationPrivacyBudgetsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListCollaborations":{ "name":"ListCollaborations", "http":{ @@ -508,6 +700,23 @@ {"shape":"AccessDeniedException"} ] }, + "ListConfiguredAudienceModelAssociations":{ + "name":"ListConfiguredAudienceModelAssociations", + "http":{ + "method":"GET", + "requestUri":"/memberships/{membershipIdentifier}/configuredaudiencemodelassociations", + "responseCode":200 + }, + "input":{"shape":"ListConfiguredAudienceModelAssociationsInput"}, + "output":{"shape":"ListConfiguredAudienceModelAssociationsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListConfiguredTableAssociations":{ "name":"ListConfiguredTableAssociations", "http":{ @@ -574,6 +783,40 @@ {"shape":"AccessDeniedException"} ] }, + "ListPrivacyBudgetTemplates":{ + "name":"ListPrivacyBudgetTemplates", + "http":{ + "method":"GET", + "requestUri":"/memberships/{membershipIdentifier}/privacybudgettemplates", + "responseCode":200 + }, + "input":{"shape":"ListPrivacyBudgetTemplatesInput"}, + "output":{"shape":"ListPrivacyBudgetTemplatesOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListPrivacyBudgets":{ + "name":"ListPrivacyBudgets", + "http":{ + "method":"GET", + "requestUri":"/memberships/{membershipIdentifier}/privacybudgets", + "responseCode":200 + }, + "input":{"shape":"ListPrivacyBudgetsInput"}, + "output":{"shape":"ListPrivacyBudgetsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListProtectedQueries":{ "name":"ListProtectedQueries", "http":{ @@ -622,6 +865,23 @@ {"shape":"ValidationException"} ] }, + "PreviewPrivacyImpact":{ + "name":"PreviewPrivacyImpact", + "http":{ + "method":"POST", + "requestUri":"/memberships/{membershipIdentifier}/previewprivacyimpact", + "responseCode":200 + }, + "input":{"shape":"PreviewPrivacyImpactInput"}, + "output":{"shape":"PreviewPrivacyImpactOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "StartProtectedQuery":{ "name":"StartProtectedQuery", "http":{ @@ -701,6 +961,23 @@ {"shape":"AccessDeniedException"} ] }, + "UpdateConfiguredAudienceModelAssociation":{ + "name":"UpdateConfiguredAudienceModelAssociation", + "http":{ + "method":"PATCH", + "requestUri":"/memberships/{membershipIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateConfiguredAudienceModelAssociationInput"}, + "output":{"shape":"UpdateConfiguredAudienceModelAssociationOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "UpdateConfiguredTable":{ "name":"UpdateConfiguredTable", "http":{ @@ -773,6 +1050,24 @@ {"shape":"AccessDeniedException"} ] }, + "UpdatePrivacyBudgetTemplate":{ + "name":"UpdatePrivacyBudgetTemplate", + "http":{ + "method":"PATCH", + "requestUri":"/memberships/{membershipIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdatePrivacyBudgetTemplateInput"}, + "output":{"shape":"UpdatePrivacyBudgetTemplateOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "UpdateProtectedQuery":{ "name":"UpdateProtectedQuery", "http":{ @@ -961,7 +1256,8 @@ "required":["allowedAnalyses"], "members":{ "allowedAnalyses":{"shape":"AnalysisRuleCustomAllowedAnalysesList"}, - "allowedAnalysisProviders":{"shape":"AnalysisRuleCustomAllowedAnalysisProvidersList"} + "allowedAnalysisProviders":{"shape":"AnalysisRuleCustomAllowedAnalysisProvidersList"}, + "differentialPrivacy":{"shape":"DifferentialPrivacyConfiguration"} } }, "AnalysisRuleCustomAllowedAnalysesList":{ @@ -1088,7 +1384,7 @@ "type":"string", "max":36, "min":36, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "AnalysisTemplateSummary":{ "type":"structure", @@ -1122,7 +1418,7 @@ }, "AnalysisTemplateText":{ "type":"string", - "max":15000, + "max":90000, "min":0 }, "BatchGetCollaborationAnalysisTemplateError":{ @@ -1325,6 +1621,60 @@ "min":0, "pattern":"arn:aws:[\\w]+:[\\w]{2}-[\\w]{4,9}-[\\d]:[\\d]{12}:collaboration/[\\d\\w-]+" }, + "CollaborationConfiguredAudienceModelAssociation":{ + "type":"structure", + "required":[ + "id", + "arn", + "collaborationId", + "collaborationArn", + "configuredAudienceModelArn", + "name", + "creatorAccountId", + "createTime", + "updateTime" + ], + "members":{ + "id":{"shape":"ConfiguredAudienceModelAssociationIdentifier"}, + "arn":{"shape":"ConfiguredAudienceModelAssociationArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "name":{"shape":"ConfiguredAudienceModelAssociationName"}, + "description":{"shape":"ResourceDescription"}, + "creatorAccountId":{"shape":"AccountId"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"} + } + }, + "CollaborationConfiguredAudienceModelAssociationSummary":{ + "type":"structure", + "required":[ + "arn", + "createTime", + "id", + "name", + "updateTime", + "collaborationArn", + "collaborationId", + "creatorAccountId" + ], + "members":{ + "arn":{"shape":"ConfiguredAudienceModelAssociationArn"}, + "createTime":{"shape":"Timestamp"}, + "id":{"shape":"ConfiguredAudienceModelAssociationIdentifier"}, + "name":{"shape":"ConfiguredAudienceModelAssociationName"}, + "updateTime":{"shape":"Timestamp"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "collaborationId":{"shape":"UUID"}, + "creatorAccountId":{"shape":"AccountId"}, + "description":{"shape":"ResourceDescription"} + } + }, + "CollaborationConfiguredAudienceModelAssociationSummaryList":{ + "type":"list", + "member":{"shape":"CollaborationConfiguredAudienceModelAssociationSummary"} + }, "CollaborationDescription":{ "type":"string", "max":255, @@ -1335,7 +1685,7 @@ "type":"string", "max":36, "min":36, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "CollaborationName":{ "type":"string", @@ -1343,6 +1693,91 @@ "min":1, "pattern":"(?!\\s*$)[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*" }, + "CollaborationPrivacyBudgetSummary":{ + "type":"structure", + "required":[ + "id", + "privacyBudgetTemplateId", + "privacyBudgetTemplateArn", + "collaborationId", + "collaborationArn", + "creatorAccountId", + "type", + "createTime", + "updateTime", + "budget" + ], + "members":{ + "id":{"shape":"UUID"}, + "privacyBudgetTemplateId":{"shape":"PrivacyBudgetTemplateIdentifier"}, + "privacyBudgetTemplateArn":{"shape":"PrivacyBudgetTemplateArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "creatorAccountId":{"shape":"AccountId"}, + "type":{"shape":"PrivacyBudgetType"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"}, + "budget":{"shape":"PrivacyBudget"} + } + }, + "CollaborationPrivacyBudgetSummaryList":{ + "type":"list", + "member":{"shape":"CollaborationPrivacyBudgetSummary"} + }, + "CollaborationPrivacyBudgetTemplate":{ + "type":"structure", + "required":[ + "id", + "arn", + "collaborationId", + "collaborationArn", + "creatorAccountId", + "createTime", + "updateTime", + "privacyBudgetType", + "autoRefresh", + "parameters" + ], + "members":{ + "id":{"shape":"PrivacyBudgetTemplateIdentifier"}, + "arn":{"shape":"PrivacyBudgetTemplateArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "creatorAccountId":{"shape":"AccountId"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"}, + "privacyBudgetType":{"shape":"PrivacyBudgetType"}, + "autoRefresh":{"shape":"PrivacyBudgetTemplateAutoRefresh"}, + "parameters":{"shape":"PrivacyBudgetTemplateParametersOutput"} + } + }, + "CollaborationPrivacyBudgetTemplateSummary":{ + "type":"structure", + "required":[ + "id", + "arn", + "collaborationId", + "collaborationArn", + "creatorAccountId", + "privacyBudgetType", + "createTime", + "updateTime" + ], + "members":{ + "id":{"shape":"PrivacyBudgetTemplateIdentifier"}, + "arn":{"shape":"PrivacyBudgetTemplateArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "creatorAccountId":{"shape":"AccountId"}, + "privacyBudgetType":{"shape":"PrivacyBudgetType"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"} + } + }, + "CollaborationPrivacyBudgetTemplateSummaryList":{ + "type":"list", + "member":{"shape":"CollaborationPrivacyBudgetTemplateSummary"} + }, "CollaborationQueryLogStatus":{ "type":"string", "enum":[ @@ -1406,6 +1841,92 @@ "min":0, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*" }, + "ConfiguredAudienceModelArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:configured-audience-model/[-a-zA-Z0-9_/.]+" + }, + "ConfiguredAudienceModelAssociation":{ + "type":"structure", + "required":[ + "id", + "arn", + "configuredAudienceModelArn", + "membershipId", + "membershipArn", + "collaborationId", + "collaborationArn", + "name", + "manageResourcePolicies", + "createTime", + "updateTime" + ], + "members":{ + "id":{"shape":"ConfiguredAudienceModelAssociationIdentifier"}, + "arn":{"shape":"ConfiguredAudienceModelAssociationArn"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "membershipId":{"shape":"UUID"}, + "membershipArn":{"shape":"MembershipArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "name":{"shape":"ConfiguredAudienceModelAssociationName"}, + "manageResourcePolicies":{"shape":"Boolean"}, + "description":{"shape":"ResourceDescription"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"} + } + }, + "ConfiguredAudienceModelAssociationArn":{ + "type":"string", + "max":256, + "min":0, + "pattern":"arn:aws:cleanrooms:[\\w]{2}-[\\w]{4,9}-[\\d]:[\\d]{12}:membership/[\\d\\w-]+/configuredaudiencemodelassociation/[\\d\\w-]+" + }, + "ConfiguredAudienceModelAssociationIdentifier":{ + "type":"string", + "max":36, + "min":36, + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" + }, + "ConfiguredAudienceModelAssociationName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"(?!\\s*$)[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*" + }, + "ConfiguredAudienceModelAssociationSummary":{ + "type":"structure", + "required":[ + "membershipId", + "membershipArn", + "collaborationArn", + "collaborationId", + "createTime", + "updateTime", + "id", + "arn", + "name", + "configuredAudienceModelArn" + ], + "members":{ + "membershipId":{"shape":"MembershipIdentifier"}, + "membershipArn":{"shape":"MembershipArn"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "collaborationId":{"shape":"UUID"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"}, + "id":{"shape":"UUID"}, + "arn":{"shape":"ConfiguredAudienceModelAssociationArn"}, + "name":{"shape":"ConfiguredAudienceModelAssociationName"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "description":{"shape":"ResourceDescription"} + } + }, + "ConfiguredAudienceModelAssociationSummaryList":{ + "type":"list", + "member":{"shape":"ConfiguredAudienceModelAssociationSummary"} + }, "ConfiguredTable":{ "type":"structure", "required":[ @@ -1523,7 +2044,7 @@ "type":"string", "max":36, "min":36, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "ConfiguredTableAssociationSummary":{ "type":"structure", @@ -1556,7 +2077,7 @@ "type":"string", "max":36, "min":36, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "ConfiguredTableSummary":{ "type":"structure", @@ -1652,7 +2173,8 @@ "creatorDisplayName":{"shape":"DisplayName"}, "dataEncryptionMetadata":{"shape":"DataEncryptionMetadata"}, "queryLogStatus":{"shape":"CollaborationQueryLogStatus"}, - "tags":{"shape":"TagMap"} + "tags":{"shape":"TagMap"}, + "creatorPaymentConfiguration":{"shape":"PaymentConfiguration"} } }, "CreateCollaborationOutput":{ @@ -1662,6 +2184,34 @@ "collaboration":{"shape":"Collaboration"} } }, + "CreateConfiguredAudienceModelAssociationInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "configuredAudienceModelArn", + "configuredAudienceModelAssociationName", + "manageResourcePolicies" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "configuredAudienceModelAssociationName":{"shape":"ConfiguredAudienceModelAssociationName"}, + "manageResourcePolicies":{"shape":"Boolean"}, + "tags":{"shape":"TagMap"}, + "description":{"shape":"ResourceDescription"} + } + }, + "CreateConfiguredAudienceModelAssociationOutput":{ + "type":"structure", + "required":["configuredAudienceModelAssociation"], + "members":{ + "configuredAudienceModelAssociation":{"shape":"ConfiguredAudienceModelAssociation"} + } + }, "CreateConfiguredTableAnalysisRuleInput":{ "type":"structure", "required":[ @@ -1748,7 +2298,8 @@ "collaborationIdentifier":{"shape":"CollaborationIdentifier"}, "queryLogStatus":{"shape":"MembershipQueryLogStatus"}, "tags":{"shape":"TagMap"}, - "defaultResultConfiguration":{"shape":"MembershipProtectedQueryResultConfiguration"} + "defaultResultConfiguration":{"shape":"MembershipProtectedQueryResultConfiguration"}, + "paymentConfiguration":{"shape":"MembershipPaymentConfiguration"} } }, "CreateMembershipOutput":{ @@ -1758,6 +2309,33 @@ "membership":{"shape":"Membership"} } }, + "CreatePrivacyBudgetTemplateInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "autoRefresh", + "privacyBudgetType", + "parameters" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "autoRefresh":{"shape":"PrivacyBudgetTemplateAutoRefresh"}, + "privacyBudgetType":{"shape":"PrivacyBudgetType"}, + "parameters":{"shape":"PrivacyBudgetTemplateParametersInput"}, + "tags":{"shape":"TagMap"} + } + }, + "CreatePrivacyBudgetTemplateOutput":{ + "type":"structure", + "required":["privacyBudgetTemplate"], + "members":{ + "privacyBudgetTemplate":{"shape":"PrivacyBudgetTemplate"} + } + }, "DataEncryptionMetadata":{ "type":"structure", "required":[ @@ -1813,6 +2391,30 @@ "members":{ } }, + "DeleteConfiguredAudienceModelAssociationInput":{ + "type":"structure", + "required":[ + "configuredAudienceModelAssociationIdentifier", + "membershipIdentifier" + ], + "members":{ + "configuredAudienceModelAssociationIdentifier":{ + "shape":"ConfiguredAudienceModelAssociationIdentifier", + "location":"uri", + "locationName":"configuredAudienceModelAssociationIdentifier" + }, + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + } + } + }, + "DeleteConfiguredAudienceModelAssociationOutput":{ + "type":"structure", + "members":{ + } + }, "DeleteConfiguredTableAnalysisRuleInput":{ "type":"structure", "required":[ @@ -1917,6 +2519,200 @@ "members":{ } }, + "DeletePrivacyBudgetTemplateInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "privacyBudgetTemplateIdentifier" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "privacyBudgetTemplateIdentifier":{ + "shape":"PrivacyBudgetTemplateIdentifier", + "location":"uri", + "locationName":"privacyBudgetTemplateIdentifier" + } + } + }, + "DeletePrivacyBudgetTemplateOutput":{ + "type":"structure", + "members":{ + } + }, + "DifferentialPrivacyAggregationExpression":{ + "type":"string", + "min":1 + }, + "DifferentialPrivacyAggregationType":{ + "type":"string", + "enum":[ + "AVG", + "COUNT", + "COUNT_DISTINCT", + "SUM", + "STDDEV" + ] + }, + "DifferentialPrivacyColumn":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"String"} + } + }, + "DifferentialPrivacyColumnList":{ + "type":"list", + "member":{"shape":"DifferentialPrivacyColumn"}, + "max":1, + "min":1 + }, + "DifferentialPrivacyConfiguration":{ + "type":"structure", + "required":["columns"], + "members":{ + "columns":{"shape":"DifferentialPrivacyColumnList"} + } + }, + "DifferentialPrivacyParameters":{ + "type":"structure", + "required":["sensitivityParameters"], + "members":{ + "sensitivityParameters":{"shape":"DifferentialPrivacySensitivityParametersList"} + } + }, + "DifferentialPrivacyPreviewAggregation":{ + "type":"structure", + "required":[ + "type", + "maxCount" + ], + "members":{ + "type":{"shape":"DifferentialPrivacyAggregationType"}, + "maxCount":{"shape":"DifferentialPrivacyPreviewAggregationMaxCountInteger"} + } + }, + "DifferentialPrivacyPreviewAggregationList":{ + "type":"list", + "member":{"shape":"DifferentialPrivacyPreviewAggregation"} + }, + "DifferentialPrivacyPreviewAggregationMaxCountInteger":{ + "type":"integer", + "box":true, + "min":0 + }, + "DifferentialPrivacyPreviewParametersInput":{ + "type":"structure", + "required":[ + "epsilon", + "usersNoisePerQuery" + ], + "members":{ + "epsilon":{"shape":"Epsilon"}, + "usersNoisePerQuery":{"shape":"UsersNoisePerQuery"} + } + }, + "DifferentialPrivacyPrivacyBudget":{ + "type":"structure", + "required":[ + "aggregations", + "epsilon" + ], + "members":{ + "aggregations":{"shape":"DifferentialPrivacyPrivacyBudgetAggregationList"}, + "epsilon":{"shape":"Epsilon"} + } + }, + "DifferentialPrivacyPrivacyBudgetAggregation":{ + "type":"structure", + "required":[ + "type", + "maxCount", + "remainingCount" + ], + "members":{ + "type":{"shape":"DifferentialPrivacyAggregationType"}, + "maxCount":{"shape":"DifferentialPrivacyPrivacyBudgetAggregationMaxCountInteger"}, + "remainingCount":{"shape":"DifferentialPrivacyPrivacyBudgetAggregationRemainingCountInteger"} + } + }, + "DifferentialPrivacyPrivacyBudgetAggregationList":{ + "type":"list", + "member":{"shape":"DifferentialPrivacyPrivacyBudgetAggregation"} + }, + "DifferentialPrivacyPrivacyBudgetAggregationMaxCountInteger":{ + "type":"integer", + "box":true, + "min":0 + }, + "DifferentialPrivacyPrivacyBudgetAggregationRemainingCountInteger":{ + "type":"integer", + "box":true, + "min":0 + }, + "DifferentialPrivacyPrivacyImpact":{ + "type":"structure", + "required":["aggregations"], + "members":{ + "aggregations":{"shape":"DifferentialPrivacyPreviewAggregationList"} + } + }, + "DifferentialPrivacySensitivityParameters":{ + "type":"structure", + "required":[ + "aggregationType", + "aggregationExpression", + "userContributionLimit" + ], + "members":{ + "aggregationType":{"shape":"DifferentialPrivacyAggregationType"}, + "aggregationExpression":{"shape":"DifferentialPrivacyAggregationExpression"}, + "userContributionLimit":{"shape":"DifferentialPrivacySensitivityParametersUserContributionLimitInteger"}, + "minColumnValue":{"shape":"Float"}, + "maxColumnValue":{"shape":"Float"} + } + }, + "DifferentialPrivacySensitivityParametersList":{ + "type":"list", + "member":{"shape":"DifferentialPrivacySensitivityParameters"} + }, + "DifferentialPrivacySensitivityParametersUserContributionLimitInteger":{ + "type":"integer", + "box":true, + "min":0 + }, + "DifferentialPrivacyTemplateParametersInput":{ + "type":"structure", + "required":[ + "epsilon", + "usersNoisePerQuery" + ], + "members":{ + "epsilon":{"shape":"Epsilon"}, + "usersNoisePerQuery":{"shape":"UsersNoisePerQuery"} + } + }, + "DifferentialPrivacyTemplateParametersOutput":{ + "type":"structure", + "required":[ + "epsilon", + "usersNoisePerQuery" + ], + "members":{ + "epsilon":{"shape":"Epsilon"}, + "usersNoisePerQuery":{"shape":"UsersNoisePerQuery"} + } + }, + "DifferentialPrivacyTemplateUpdateParameters":{ + "type":"structure", + "members":{ + "epsilon":{"shape":"Epsilon"}, + "usersNoisePerQuery":{"shape":"UsersNoisePerQuery"} + } + }, "DisplayName":{ "type":"string", "max":100, @@ -1927,6 +2723,12 @@ "type":"double", "box":true }, + "Epsilon":{ + "type":"integer", + "box":true, + "max":20, + "min":1 + }, "FilterableMemberStatus":{ "type":"string", "enum":[ @@ -1934,6 +2736,10 @@ "ACTIVE" ] }, + "Float":{ + "type":"float", + "box":true + }, "GetAnalysisTemplateInput":{ "type":"structure", "required":[ @@ -1986,6 +2792,32 @@ "collaborationAnalysisTemplate":{"shape":"CollaborationAnalysisTemplate"} } }, + "GetCollaborationConfiguredAudienceModelAssociationInput":{ + "type":"structure", + "required":[ + "collaborationIdentifier", + "configuredAudienceModelAssociationIdentifier" + ], + "members":{ + "collaborationIdentifier":{ + "shape":"CollaborationIdentifier", + "location":"uri", + "locationName":"collaborationIdentifier" + }, + "configuredAudienceModelAssociationIdentifier":{ + "shape":"ConfiguredAudienceModelAssociationIdentifier", + "location":"uri", + "locationName":"configuredAudienceModelAssociationIdentifier" + } + } + }, + "GetCollaborationConfiguredAudienceModelAssociationOutput":{ + "type":"structure", + "required":["collaborationConfiguredAudienceModelAssociation"], + "members":{ + "collaborationConfiguredAudienceModelAssociation":{"shape":"CollaborationConfiguredAudienceModelAssociation"} + } + }, "GetCollaborationInput":{ "type":"structure", "required":["collaborationIdentifier"], @@ -2004,6 +2836,58 @@ "collaboration":{"shape":"Collaboration"} } }, + "GetCollaborationPrivacyBudgetTemplateInput":{ + "type":"structure", + "required":[ + "collaborationIdentifier", + "privacyBudgetTemplateIdentifier" + ], + "members":{ + "collaborationIdentifier":{ + "shape":"CollaborationIdentifier", + "location":"uri", + "locationName":"collaborationIdentifier" + }, + "privacyBudgetTemplateIdentifier":{ + "shape":"PrivacyBudgetTemplateIdentifier", + "location":"uri", + "locationName":"privacyBudgetTemplateIdentifier" + } + } + }, + "GetCollaborationPrivacyBudgetTemplateOutput":{ + "type":"structure", + "required":["collaborationPrivacyBudgetTemplate"], + "members":{ + "collaborationPrivacyBudgetTemplate":{"shape":"CollaborationPrivacyBudgetTemplate"} + } + }, + "GetConfiguredAudienceModelAssociationInput":{ + "type":"structure", + "required":[ + "configuredAudienceModelAssociationIdentifier", + "membershipIdentifier" + ], + "members":{ + "configuredAudienceModelAssociationIdentifier":{ + "shape":"ConfiguredAudienceModelAssociationIdentifier", + "location":"uri", + "locationName":"configuredAudienceModelAssociationIdentifier" + }, + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + } + } + }, + "GetConfiguredAudienceModelAssociationOutput":{ + "type":"structure", + "required":["configuredAudienceModelAssociation"], + "members":{ + "configuredAudienceModelAssociation":{"shape":"ConfiguredAudienceModelAssociation"} + } + }, "GetConfiguredTableAnalysisRuleInput":{ "type":"structure", "required":[ @@ -2092,6 +2976,32 @@ "membership":{"shape":"Membership"} } }, + "GetPrivacyBudgetTemplateInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "privacyBudgetTemplateIdentifier" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "privacyBudgetTemplateIdentifier":{ + "shape":"PrivacyBudgetTemplateIdentifier", + "location":"uri", + "locationName":"privacyBudgetTemplateIdentifier" + } + } + }, + "GetPrivacyBudgetTemplateOutput":{ + "type":"structure", + "required":["privacyBudgetTemplate"], + "members":{ + "privacyBudgetTemplate":{"shape":"PrivacyBudgetTemplate"} + } + }, "GetProtectedQueryInput":{ "type":"structure", "required":[ @@ -2289,6 +3199,101 @@ "collaborationAnalysisTemplateSummaries":{"shape":"CollaborationAnalysisTemplateSummaryList"} } }, + "ListCollaborationConfiguredAudienceModelAssociationsInput":{ + "type":"structure", + "required":["collaborationIdentifier"], + "members":{ + "collaborationIdentifier":{ + "shape":"CollaborationIdentifier", + "location":"uri", + "locationName":"collaborationIdentifier" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListCollaborationConfiguredAudienceModelAssociationsOutput":{ + "type":"structure", + "required":["collaborationConfiguredAudienceModelAssociationSummaries"], + "members":{ + "collaborationConfiguredAudienceModelAssociationSummaries":{"shape":"CollaborationConfiguredAudienceModelAssociationSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListCollaborationPrivacyBudgetTemplatesInput":{ + "type":"structure", + "required":["collaborationIdentifier"], + "members":{ + "collaborationIdentifier":{ + "shape":"CollaborationIdentifier", + "location":"uri", + "locationName":"collaborationIdentifier" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListCollaborationPrivacyBudgetTemplatesOutput":{ + "type":"structure", + "required":["collaborationPrivacyBudgetTemplateSummaries"], + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "collaborationPrivacyBudgetTemplateSummaries":{"shape":"CollaborationPrivacyBudgetTemplateSummaryList"} + } + }, + "ListCollaborationPrivacyBudgetsInput":{ + "type":"structure", + "required":[ + "collaborationIdentifier", + "privacyBudgetType" + ], + "members":{ + "collaborationIdentifier":{ + "shape":"CollaborationIdentifier", + "location":"uri", + "locationName":"collaborationIdentifier" + }, + "privacyBudgetType":{ + "shape":"PrivacyBudgetType", + "location":"querystring", + "locationName":"privacyBudgetType" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListCollaborationPrivacyBudgetsOutput":{ + "type":"structure", + "required":["collaborationPrivacyBudgetSummaries"], + "members":{ + "collaborationPrivacyBudgetSummaries":{"shape":"CollaborationPrivacyBudgetSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListCollaborationsInput":{ "type":"structure", "members":{ @@ -2317,6 +3322,35 @@ "collaborationList":{"shape":"CollaborationSummaryList"} } }, + "ListConfiguredAudienceModelAssociationsInput":{ + "type":"structure", + "required":["membershipIdentifier"], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListConfiguredAudienceModelAssociationsOutput":{ + "type":"structure", + "required":["configuredAudienceModelAssociationSummaries"], + "members":{ + "configuredAudienceModelAssociationSummaries":{"shape":"ConfiguredAudienceModelAssociationSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListConfiguredTableAssociationsInput":{ "type":"structure", "required":["membershipIdentifier"], @@ -2426,6 +3460,72 @@ "membershipSummaries":{"shape":"MembershipSummaryList"} } }, + "ListPrivacyBudgetTemplatesInput":{ + "type":"structure", + "required":["membershipIdentifier"], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListPrivacyBudgetTemplatesOutput":{ + "type":"structure", + "required":["privacyBudgetTemplateSummaries"], + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "privacyBudgetTemplateSummaries":{"shape":"PrivacyBudgetTemplateSummaryList"} + } + }, + "ListPrivacyBudgetsInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "privacyBudgetType" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "privacyBudgetType":{ + "shape":"PrivacyBudgetType", + "location":"querystring", + "locationName":"privacyBudgetType" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListPrivacyBudgetsOutput":{ + "type":"structure", + "required":["privacyBudgetSummaries"], + "members":{ + "privacyBudgetSummaries":{"shape":"PrivacyBudgetSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListProtectedQueriesInput":{ "type":"structure", "required":["membershipIdentifier"], @@ -2549,7 +3649,8 @@ "members":{ "accountId":{"shape":"AccountId"}, "memberAbilities":{"shape":"MemberAbilities"}, - "displayName":{"shape":"DisplayName"} + "displayName":{"shape":"DisplayName"}, + "paymentConfiguration":{"shape":"PaymentConfiguration"} } }, "MemberStatus":{ @@ -2569,7 +3670,8 @@ "displayName", "abilities", "createTime", - "updateTime" + "updateTime", + "paymentConfiguration" ], "members":{ "accountId":{"shape":"AccountId"}, @@ -2579,7 +3681,8 @@ "createTime":{"shape":"Timestamp"}, "updateTime":{"shape":"Timestamp"}, "membershipId":{"shape":"UUID"}, - "membershipArn":{"shape":"MembershipArn"} + "membershipArn":{"shape":"MembershipArn"}, + "paymentConfiguration":{"shape":"PaymentConfiguration"} } }, "MemberSummaryList":{ @@ -2600,7 +3703,8 @@ "updateTime", "status", "memberAbilities", - "queryLogStatus" + "queryLogStatus", + "paymentConfiguration" ], "members":{ "id":{"shape":"UUID"}, @@ -2615,7 +3719,8 @@ "status":{"shape":"MembershipStatus"}, "memberAbilities":{"shape":"MemberAbilities"}, "queryLogStatus":{"shape":"MembershipQueryLogStatus"}, - "defaultResultConfiguration":{"shape":"MembershipProtectedQueryResultConfiguration"} + "defaultResultConfiguration":{"shape":"MembershipProtectedQueryResultConfiguration"}, + "paymentConfiguration":{"shape":"MembershipPaymentConfiguration"} } }, "MembershipArn":{ @@ -2628,7 +3733,14 @@ "type":"string", "max":36, "min":36, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" + }, + "MembershipPaymentConfiguration":{ + "type":"structure", + "required":["queryCompute"], + "members":{ + "queryCompute":{"shape":"MembershipQueryComputePaymentConfig"} + } }, "MembershipProtectedQueryOutputConfiguration":{ "type":"structure", @@ -2645,6 +3757,13 @@ "roleArn":{"shape":"RoleArn"} } }, + "MembershipQueryComputePaymentConfig":{ + "type":"structure", + "required":["isResponsible"], + "members":{ + "isResponsible":{"shape":"Boolean"} + } + }, "MembershipQueryLogStatus":{ "type":"string", "enum":[ @@ -2673,7 +3792,8 @@ "createTime", "updateTime", "status", - "memberAbilities" + "memberAbilities", + "paymentConfiguration" ], "members":{ "id":{"shape":"UUID"}, @@ -2686,7 +3806,8 @@ "createTime":{"shape":"Timestamp"}, "updateTime":{"shape":"Timestamp"}, "status":{"shape":"MembershipStatus"}, - "memberAbilities":{"shape":"MemberAbilities"} + "memberAbilities":{"shape":"MemberAbilities"}, + "paymentConfiguration":{"shape":"MembershipPaymentConfiguration"} } }, "MembershipSummaryList":{ @@ -2734,6 +3855,191 @@ "max":250, "min":0 }, + "PaymentConfiguration":{ + "type":"structure", + "required":["queryCompute"], + "members":{ + "queryCompute":{"shape":"QueryComputePaymentConfig"} + } + }, + "PreviewPrivacyImpactInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "parameters" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "parameters":{"shape":"PreviewPrivacyImpactParametersInput"} + } + }, + "PreviewPrivacyImpactOutput":{ + "type":"structure", + "required":["privacyImpact"], + "members":{ + "privacyImpact":{"shape":"PrivacyImpact"} + } + }, + "PreviewPrivacyImpactParametersInput":{ + "type":"structure", + "members":{ + "differentialPrivacy":{"shape":"DifferentialPrivacyPreviewParametersInput"} + }, + "union":true + }, + "PrivacyBudget":{ + "type":"structure", + "members":{ + "differentialPrivacy":{"shape":"DifferentialPrivacyPrivacyBudget"} + }, + "union":true + }, + "PrivacyBudgetSummary":{ + "type":"structure", + "required":[ + "id", + "privacyBudgetTemplateId", + "privacyBudgetTemplateArn", + "membershipId", + "membershipArn", + "collaborationId", + "collaborationArn", + "type", + "createTime", + "updateTime", + "budget" + ], + "members":{ + "id":{"shape":"UUID"}, + "privacyBudgetTemplateId":{"shape":"PrivacyBudgetTemplateIdentifier"}, + "privacyBudgetTemplateArn":{"shape":"PrivacyBudgetTemplateArn"}, + "membershipId":{"shape":"MembershipIdentifier"}, + "membershipArn":{"shape":"MembershipArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "type":{"shape":"PrivacyBudgetType"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"}, + "budget":{"shape":"PrivacyBudget"} + } + }, + "PrivacyBudgetSummaryList":{ + "type":"list", + "member":{"shape":"PrivacyBudgetSummary"} + }, + "PrivacyBudgetTemplate":{ + "type":"structure", + "required":[ + "id", + "arn", + "membershipId", + "membershipArn", + "collaborationId", + "collaborationArn", + "createTime", + "updateTime", + "privacyBudgetType", + "autoRefresh", + "parameters" + ], + "members":{ + "id":{"shape":"PrivacyBudgetTemplateIdentifier"}, + "arn":{"shape":"PrivacyBudgetTemplateArn"}, + "membershipId":{"shape":"UUID"}, + "membershipArn":{"shape":"MembershipArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"}, + "privacyBudgetType":{"shape":"PrivacyBudgetType"}, + "autoRefresh":{"shape":"PrivacyBudgetTemplateAutoRefresh"}, + "parameters":{"shape":"PrivacyBudgetTemplateParametersOutput"} + } + }, + "PrivacyBudgetTemplateArn":{ + "type":"string", + "max":100, + "min":0, + "pattern":"arn:aws:[\\w]+:[\\w]{2}-[\\w]{4,9}-[\\d]:[\\d]{12}:privacybudgettemplate/[\\d\\w-]+" + }, + "PrivacyBudgetTemplateAutoRefresh":{ + "type":"string", + "enum":[ + "CALENDAR_MONTH", + "NONE" + ] + }, + "PrivacyBudgetTemplateIdentifier":{ + "type":"string", + "max":36, + "min":36, + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" + }, + "PrivacyBudgetTemplateParametersInput":{ + "type":"structure", + "members":{ + "differentialPrivacy":{"shape":"DifferentialPrivacyTemplateParametersInput"} + }, + "union":true + }, + "PrivacyBudgetTemplateParametersOutput":{ + "type":"structure", + "members":{ + "differentialPrivacy":{"shape":"DifferentialPrivacyTemplateParametersOutput"} + }, + "union":true + }, + "PrivacyBudgetTemplateSummary":{ + "type":"structure", + "required":[ + "id", + "arn", + "membershipId", + "membershipArn", + "collaborationId", + "collaborationArn", + "privacyBudgetType", + "createTime", + "updateTime" + ], + "members":{ + "id":{"shape":"PrivacyBudgetTemplateIdentifier"}, + "arn":{"shape":"PrivacyBudgetTemplateArn"}, + "membershipId":{"shape":"UUID"}, + "membershipArn":{"shape":"MembershipArn"}, + "collaborationId":{"shape":"UUID"}, + "collaborationArn":{"shape":"CollaborationArn"}, + "privacyBudgetType":{"shape":"PrivacyBudgetType"}, + "createTime":{"shape":"Timestamp"}, + "updateTime":{"shape":"Timestamp"} + } + }, + "PrivacyBudgetTemplateSummaryList":{ + "type":"list", + "member":{"shape":"PrivacyBudgetTemplateSummary"} + }, + "PrivacyBudgetTemplateUpdateParameters":{ + "type":"structure", + "members":{ + "differentialPrivacy":{"shape":"DifferentialPrivacyTemplateUpdateParameters"} + }, + "union":true + }, + "PrivacyBudgetType":{ + "type":"string", + "enum":["DIFFERENTIAL_PRIVACY"] + }, + "PrivacyImpact":{ + "type":"structure", + "members":{ + "differentialPrivacy":{"shape":"DifferentialPrivacyPrivacyImpact"} + }, + "union":true + }, "ProtectedQuery":{ "type":"structure", "required":[ @@ -2753,7 +4059,8 @@ "resultConfiguration":{"shape":"ProtectedQueryResultConfiguration"}, "statistics":{"shape":"ProtectedQueryStatistics"}, "result":{"shape":"ProtectedQueryResult"}, - "error":{"shape":"ProtectedQueryError"} + "error":{"shape":"ProtectedQueryError"}, + "differentialPrivacy":{"shape":"DifferentialPrivacyParameters"} } }, "ProtectedQueryError":{ @@ -2770,8 +4077,8 @@ "ProtectedQueryIdentifier":{ "type":"string", "max":36, - "min":1, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "min":36, + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "ProtectedQueryMemberOutputList":{ "type":"list", @@ -2842,7 +4149,7 @@ }, "ProtectedQuerySQLParametersQueryStringString":{ "type":"string", - "max":15000, + "max":90000, "min":0 }, "ProtectedQuerySingleMemberOutput":{ @@ -2895,6 +4202,13 @@ "type":"string", "enum":["SQL"] }, + "QueryComputePaymentConfig":{ + "type":"structure", + "required":["isResponsible"], + "members":{ + "isResponsible":{"shape":"Boolean"} + } + }, "QueryTables":{ "type":"list", "member":{"shape":"TableAlias"} @@ -2949,7 +4263,7 @@ "type":"string", "max":512, "min":32, - "pattern":"arn:aws:iam::[\\w]+:role/[\\w+=,./@-]+" + "pattern":"arn:aws:iam::[\\w]+:role/[\\w+=./@-]+" }, "ScalarFunctions":{ "type":"string", @@ -3171,7 +4485,7 @@ "type":"string", "max":36, "min":36, - "pattern":".*[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.*" + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "UntagResourceInput":{ "type":"structure", @@ -3244,6 +4558,34 @@ "collaboration":{"shape":"Collaboration"} } }, + "UpdateConfiguredAudienceModelAssociationInput":{ + "type":"structure", + "required":[ + "configuredAudienceModelAssociationIdentifier", + "membershipIdentifier" + ], + "members":{ + "configuredAudienceModelAssociationIdentifier":{ + "shape":"ConfiguredAudienceModelAssociationIdentifier", + "location":"uri", + "locationName":"configuredAudienceModelAssociationIdentifier" + }, + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"ConfiguredAudienceModelAssociationName"} + } + }, + "UpdateConfiguredAudienceModelAssociationOutput":{ + "type":"structure", + "required":["configuredAudienceModelAssociation"], + "members":{ + "configuredAudienceModelAssociation":{"shape":"ConfiguredAudienceModelAssociation"} + } + }, "UpdateConfiguredTableAnalysisRuleInput":{ "type":"structure", "required":[ @@ -3340,6 +4682,35 @@ "membership":{"shape":"Membership"} } }, + "UpdatePrivacyBudgetTemplateInput":{ + "type":"structure", + "required":[ + "membershipIdentifier", + "privacyBudgetTemplateIdentifier", + "privacyBudgetType" + ], + "members":{ + "membershipIdentifier":{ + "shape":"MembershipIdentifier", + "location":"uri", + "locationName":"membershipIdentifier" + }, + "privacyBudgetTemplateIdentifier":{ + "shape":"PrivacyBudgetTemplateIdentifier", + "location":"uri", + "locationName":"privacyBudgetTemplateIdentifier" + }, + "privacyBudgetType":{"shape":"PrivacyBudgetType"}, + "parameters":{"shape":"PrivacyBudgetTemplateUpdateParameters"} + } + }, + "UpdatePrivacyBudgetTemplateOutput":{ + "type":"structure", + "required":["privacyBudgetTemplate"], + "members":{ + "privacyBudgetTemplate":{"shape":"PrivacyBudgetTemplate"} + } + }, "UpdateProtectedQueryInput":{ "type":"structure", "required":[ @@ -3368,6 +4739,12 @@ "protectedQuery":{"shape":"ProtectedQuery"} } }, + "UsersNoisePerQuery":{ + "type":"integer", + "box":true, + "max":100, + "min":10 + }, "ValidationException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,46 +6,63 @@ "BatchGetSchema": "

Retrieves multiple schemas by their identifiers.

", "CreateAnalysisTemplate": "

Creates a new analysis template.

", "CreateCollaboration": "

Creates a new collaboration.

", + "CreateConfiguredAudienceModelAssociation": "

Provides the details necessary to create a configured audience model association.

", "CreateConfiguredTable": "

Creates a new configured table resource.

", "CreateConfiguredTableAnalysisRule": "

Creates a new analysis rule for a configured table. Currently, only one analysis rule can be created for a given configured table.

", "CreateConfiguredTableAssociation": "

Creates a configured table association. A configured table association links a configured table with a collaboration.

", "CreateMembership": "

Creates a membership for a specific collaboration identifier and joins the collaboration.

", + "CreatePrivacyBudgetTemplate": "

Creates a privacy budget template for a specified membership. Each membership can have only one privacy budget template, but it can be deleted and recreated. If you need to change the privacy budget template for a membership, use the UpdatePrivacyBudgetTemplate operation.

", "DeleteAnalysisTemplate": "

Deletes an analysis template.

", "DeleteCollaboration": "

Deletes a collaboration. It can only be called by the collaboration owner.

", + "DeleteConfiguredAudienceModelAssociation": "

Provides the information necessary to delete a configured audience model association.

", "DeleteConfiguredTable": "

Deletes a configured table.

", "DeleteConfiguredTableAnalysisRule": "

Deletes a configured table analysis rule.

", "DeleteConfiguredTableAssociation": "

Deletes a configured table association.

", "DeleteMember": "

Removes the specified member from a collaboration. The removed member is placed in the Removed status and can't interact with the collaboration. The removed member's data is inaccessible to active members of the collaboration.

", "DeleteMembership": "

Deletes a specified membership. All resources under a membership must be deleted.

", + "DeletePrivacyBudgetTemplate": "

Deletes a privacy budget template for a specified membership.

", "GetAnalysisTemplate": "

Retrieves an analysis template.

", "GetCollaboration": "

Returns metadata about a collaboration.

", "GetCollaborationAnalysisTemplate": "

Retrieves an analysis template within a collaboration.

", + "GetCollaborationConfiguredAudienceModelAssociation": "

Retrieves a configured audience model association within a collaboration.

", + "GetCollaborationPrivacyBudgetTemplate": "

Returns details about a specified privacy budget template.

", + "GetConfiguredAudienceModelAssociation": "

Returns information about a configured audience model association.

", "GetConfiguredTable": "

Retrieves a configured table.

", "GetConfiguredTableAnalysisRule": "

Retrieves a configured table analysis rule.

", "GetConfiguredTableAssociation": "

Retrieves a configured table association.

", "GetMembership": "

Retrieves a specified membership for an identifier.

", + "GetPrivacyBudgetTemplate": "

Returns details for a specified privacy budget template.

", "GetProtectedQuery": "

Returns query processing metadata.

", "GetSchema": "

Retrieves the schema for a relation within a collaboration.

", "GetSchemaAnalysisRule": "

Retrieves a schema analysis rule.

", "ListAnalysisTemplates": "

Lists analysis templates that the caller owns.

", "ListCollaborationAnalysisTemplates": "

Lists analysis templates within a collaboration.

", + "ListCollaborationConfiguredAudienceModelAssociations": "

Lists configured audience model associations within a collaboration.

", + "ListCollaborationPrivacyBudgetTemplates": "

Returns an array that summarizes each privacy budget template in a specified collaboration.

", + "ListCollaborationPrivacyBudgets": "

Returns an array that summarizes each privacy budget in a specified collaboration. The summary includes the collaboration ARN, creation time, creating account, and privacy budget details.

", "ListCollaborations": "

Lists collaborations the caller owns, is active in, or has been invited to.

", + "ListConfiguredAudienceModelAssociations": "

Lists information about requested configured audience model associations.

", "ListConfiguredTableAssociations": "

Lists configured table associations for a membership.

", "ListConfiguredTables": "

Lists configured tables.

", "ListMembers": "

Lists all members within a collaboration.

", "ListMemberships": "

Lists all memberships resources within the caller's account.

", + "ListPrivacyBudgetTemplates": "

Returns detailed information about the privacy budget templates in a specified membership.

", + "ListPrivacyBudgets": "

Returns detailed information about the privacy budgets in a specified membership.

", "ListProtectedQueries": "

Lists protected queries, sorted by the most recent query.

", "ListSchemas": "

Lists the schemas for relations within a collaboration.

", "ListTagsForResource": "

Lists all of the tags that have been added to a resource.

", + "PreviewPrivacyImpact": "

An estimate of the number of aggregation functions that the member who can query can run given epsilon and noise parameters.

", "StartProtectedQuery": "

Creates a protected query that is started by Clean Rooms.

", "TagResource": "

Tags a resource.

", "UntagResource": "

Removes a tag or list of tags from a resource.

", "UpdateAnalysisTemplate": "

Updates the analysis template metadata.

", "UpdateCollaboration": "

Updates collaboration metadata and can only be called by the collaboration owner.

", + "UpdateConfiguredAudienceModelAssociation": "

Provides the details necessary to update a configured audience model association.

", "UpdateConfiguredTable": "

Updates a configured table.

", "UpdateConfiguredTableAnalysisRule": "

Updates a configured table analysis rule.

", "UpdateConfiguredTableAssociation": "

Updates a configured table association.

", "UpdateMembership": "

Updates a membership.

", + "UpdatePrivacyBudgetTemplate": "

Updates the privacy budget template for the specified membership.

", "UpdateProtectedQuery": "

Updates the processing of a currently running query.

" }, "shapes": { @@ -67,6 +84,11 @@ "Collaboration$creatorAccountId": "

The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

", "CollaborationAnalysisTemplate$creatorAccountId": "

The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

", "CollaborationAnalysisTemplateSummary$creatorAccountId": "

The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

", + "CollaborationConfiguredAudienceModelAssociation$creatorAccountId": "

The identifier used to reference members of the collaboration. Only supports AWS account ID.

", + "CollaborationConfiguredAudienceModelAssociationSummary$creatorAccountId": "

The identifier used to reference members of the collaboration. Only supports AWS account ID.

", + "CollaborationPrivacyBudgetSummary$creatorAccountId": "

The unique identifier of the account that created this privacy budget.

", + "CollaborationPrivacyBudgetTemplate$creatorAccountId": "

The unique identifier of the account that created this collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplateSummary$creatorAccountId": "

The unique identifier of the account that created this collaboration privacy budget template.

", "CollaborationSummary$creatorAccountId": "

The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

", "DeleteMemberInput$accountId": "

The account ID of the member to remove.

", "MemberSpecification$accountId": "

The identifier used to reference members of the collaboration. Currently only supports Amazon Web Services account ID.

", @@ -196,7 +218,7 @@ } }, "AnalysisRuleCustom": { - "base": "

A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables.

", + "base": "

A type of analysis rule that enables the table owner to approve custom SQL queries on their configured tables. It supports differential privacy.

", "refs": { "AnalysisRulePolicyV1$custom": "

Analysis rule type that enables custom SQL queries on a configured table.

", "ConfiguredTableAnalysisRulePolicyV1$custom": null @@ -379,10 +401,14 @@ "Boolean": { "base": null, "refs": { - "DataEncryptionMetadata$allowCleartext": "

Indicates whether encrypted tables can contain cleartext data (true) or are to cryptographically process every column (false).

", - "DataEncryptionMetadata$allowDuplicates": "

Indicates whether Fingerprint columns can contain duplicate entries (true) or are to contain only non-repeated values (false).

", - "DataEncryptionMetadata$allowJoinsOnColumnsWithDifferentNames": "

Indicates whether Fingerprint columns can be joined on any other Fingerprint column with a different name (true) or can only be joined on Fingerprint columns of the same name (false).

", - "DataEncryptionMetadata$preserveNulls": "

Indicates whether NULL values are to be copied as NULL to encrypted tables (true) or cryptographically processed (false).

" + "ConfiguredAudienceModelAssociation$manageResourcePolicies": "

When TRUE, indicates that the resource policy for the configured audience model resource being associated is configured for Clean Rooms to manage permissions related to the given collaboration. When FALSE, indicates that the configured audience model resource owner will manage permissions related to the given collaboration.

", + "CreateConfiguredAudienceModelAssociationInput$manageResourcePolicies": "

When TRUE, indicates that the resource policy for the configured audience model resource being associated is configured for Clean Rooms to manage permissions related to the given collaboration. When FALSE, indicates that the configured audience model resource owner will manage permissions related to the given collaboration.

Setting this to TRUE requires you to have permissions to create, update, and delete the resource policy for the cleanrooms-ml resource when you call the DeleteConfiguredAudienceModelAssociation resource. In addition, if you are the collaboration creator and specify TRUE, you must have the same permissions when you call the DeleteMember and DeleteCollaboration APIs.

", + "DataEncryptionMetadata$allowCleartext": "

Indicates whether encrypted tables can contain cleartext data (TRUE) or are to cryptographically process every column (FALSE).

", + "DataEncryptionMetadata$allowDuplicates": "

Indicates whether Fingerprint columns can contain duplicate entries (TRUE) or are to contain only non-repeated values (FALSE).

", + "DataEncryptionMetadata$allowJoinsOnColumnsWithDifferentNames": "

Indicates whether Fingerprint columns can be joined on any other Fingerprint column with a different name (TRUE) or can only be joined on Fingerprint columns of the same name (FALSE).

", + "DataEncryptionMetadata$preserveNulls": "

Indicates whether NULL values are to be copied as NULL to encrypted tables (TRUE) or cryptographically processed (FALSE).

", + "MembershipQueryComputePaymentConfig$isResponsible": "

Indicates whether the collaboration member has accepted to pay for query compute costs (TRUE) or has not accepted to pay for query compute costs (FALSE).

If the collaboration creator has not specified anyone to pay for query compute costs, then the member who can query is the default payer.

An error message is returned for the following reasons:

  • If you set the value to FALSE but you are responsible to pay for query compute costs.

  • If you set the value to TRUE but you are not responsible to pay for query compute costs.

", + "QueryComputePaymentConfig$isResponsible": "

Indicates whether the collaboration creator has configured the collaboration member to pay for query compute costs (TRUE) or has not configured the collaboration member to pay for query compute costs (FALSE).

Exactly one member can be configured to pay for query compute costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

" } }, "CleanroomsArn": { @@ -434,13 +460,41 @@ "Collaboration$arn": "

The unique ARN for the collaboration.

", "CollaborationAnalysisTemplate$collaborationArn": "

The unique ARN for the analysis template’s associated collaboration.

", "CollaborationAnalysisTemplateSummary$collaborationArn": "

The unique ARN for the analysis template’s associated collaboration.

", + "CollaborationConfiguredAudienceModelAssociation$collaborationArn": "

The unique ARN for the configured audience model's associated collaboration.

", + "CollaborationConfiguredAudienceModelAssociationSummary$collaborationArn": "

The unique ARN for the configured audience model's associated collaboration.

", + "CollaborationPrivacyBudgetSummary$collaborationArn": "

The ARN of the collaboration that includes this privacy budget.

", + "CollaborationPrivacyBudgetTemplate$collaborationArn": "

The ARN of the collaboration that includes this collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplateSummary$collaborationArn": "

The ARN of the collaboration that contains this collaboration privacy budget template.

", "CollaborationSummary$arn": "

The ARN of the collaboration.

", + "ConfiguredAudienceModelAssociation$collaborationArn": "

The Amazon Resource Name (ARN) of the collaboration that contains this configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$collaborationArn": "

The Amazon Resource Name (ARN) of the collaboration that contains the configured audience model association.

", "Membership$collaborationArn": "

The unique ARN for the membership's associated collaboration.

", "MembershipSummary$collaborationArn": "

The unique ARN for the membership's associated collaboration.

", + "PrivacyBudgetSummary$collaborationArn": "

The ARN of the collaboration that contains this privacy budget.

", + "PrivacyBudgetTemplate$collaborationArn": "

The ARN of the collaboration that contains this privacy budget template.

", + "PrivacyBudgetTemplateSummary$collaborationArn": "

The ARN of the collaboration that contains this privacy budget template.

", "Schema$collaborationArn": "

The unique ARN for the collaboration that the schema belongs to.

", "SchemaSummary$collaborationArn": "

The unique ARN for the collaboration that the schema belongs to.

" } }, + "CollaborationConfiguredAudienceModelAssociation": { + "base": "

The configured audience model association within a collaboration.

", + "refs": { + "GetCollaborationConfiguredAudienceModelAssociationOutput$collaborationConfiguredAudienceModelAssociation": "

The metadata of the configured audience model association.

" + } + }, + "CollaborationConfiguredAudienceModelAssociationSummary": { + "base": "

A summary of the configured audience model association in the collaboration.

", + "refs": { + "CollaborationConfiguredAudienceModelAssociationSummaryList$member": null + } + }, + "CollaborationConfiguredAudienceModelAssociationSummaryList": { + "base": null, + "refs": { + "ListCollaborationConfiguredAudienceModelAssociationsOutput$collaborationConfiguredAudienceModelAssociationSummaries": "

The metadata of the configured audience model association within a collaboration.

" + } + }, "CollaborationDescription": { "base": null, "refs": { @@ -459,10 +513,15 @@ "DeleteCollaborationInput$collaborationIdentifier": "

The identifier for the collaboration.

", "DeleteMemberInput$collaborationIdentifier": "

The unique identifier for the associated collaboration.

", "GetCollaborationAnalysisTemplateInput$collaborationIdentifier": "

A unique identifier for the collaboration that the analysis templates belong to. Currently accepts collaboration ID.

", + "GetCollaborationConfiguredAudienceModelAssociationInput$collaborationIdentifier": "

A unique identifier for the collaboration that the configured audience model association belongs to. Accepts a collaboration ID.

", "GetCollaborationInput$collaborationIdentifier": "

The identifier for the collaboration.

", + "GetCollaborationPrivacyBudgetTemplateInput$collaborationIdentifier": "

A unique identifier for one of your collaborations.

", "GetSchemaAnalysisRuleInput$collaborationIdentifier": "

A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.

", "GetSchemaInput$collaborationIdentifier": "

A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.

", "ListCollaborationAnalysisTemplatesInput$collaborationIdentifier": "

A unique identifier for the collaboration that the analysis templates belong to. Currently accepts collaboration ID.

", + "ListCollaborationConfiguredAudienceModelAssociationsInput$collaborationIdentifier": "

A unique identifier for the collaboration that the configured audience model association belongs to. Accepts a collaboration ID.

", + "ListCollaborationPrivacyBudgetTemplatesInput$collaborationIdentifier": "

A unique identifier for one of your collaborations.

", + "ListCollaborationPrivacyBudgetsInput$collaborationIdentifier": "

A unique identifier for one of your collaborations.

", "ListMembersInput$collaborationIdentifier": "

The identifier of the collaboration in which the members are listed.

", "ListSchemasInput$collaborationIdentifier": "

A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.

", "MembershipSummary$collaborationId": "

The unique ID for the membership's collaboration.

", @@ -480,6 +539,36 @@ "UpdateCollaborationInput$name": "

A human-readable identifier provided by the collaboration owner. Display names are not unique.

" } }, + "CollaborationPrivacyBudgetSummary": { + "base": "

A summary of the collaboration privacy budgets. This summary includes the collaboration information, creation information, epsilon provided, and utility in terms of aggregations.

", + "refs": { + "CollaborationPrivacyBudgetSummaryList$member": null + } + }, + "CollaborationPrivacyBudgetSummaryList": { + "base": null, + "refs": { + "ListCollaborationPrivacyBudgetsOutput$collaborationPrivacyBudgetSummaries": "

Summaries of the collaboration privacy budgets.

" + } + }, + "CollaborationPrivacyBudgetTemplate": { + "base": "

An array that specifies the information for a collaboration's privacy budget template.

", + "refs": { + "GetCollaborationPrivacyBudgetTemplateOutput$collaborationPrivacyBudgetTemplate": "

Returns the details of the privacy budget template that you requested.

" + } + }, + "CollaborationPrivacyBudgetTemplateSummary": { + "base": "

A summary of the collaboration's privacy budget template. This summary includes information about who created the privacy budget template and what collaborations it belongs to.

", + "refs": { + "CollaborationPrivacyBudgetTemplateSummaryList$member": null + } + }, + "CollaborationPrivacyBudgetTemplateSummaryList": { + "base": null, + "refs": { + "ListCollaborationPrivacyBudgetTemplatesOutput$collaborationPrivacyBudgetTemplateSummaries": "

An array that summarizes the collaboration privacy budget templates. The summary includes collaboration information, creation information, the privacy budget type.

" + } + }, "CollaborationQueryLogStatus": { "base": null, "refs": { @@ -525,6 +614,67 @@ "Column$type": "

The type of the column.

" } }, + "ConfiguredAudienceModelArn": { + "base": null, + "refs": { + "CollaborationConfiguredAudienceModelAssociation$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configure audience model.

", + "ConfiguredAudienceModelAssociation$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that was used for this configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that was used for this configured audience model association.

", + "CreateConfiguredAudienceModelAssociationInput$configuredAudienceModelArn": "

A unique identifier for the configured audience model that you want to associate.

" + } + }, + "ConfiguredAudienceModelAssociation": { + "base": "

Details about the configured audience model association.

", + "refs": { + "CreateConfiguredAudienceModelAssociationOutput$configuredAudienceModelAssociation": "

Information about the configured audience model association.

", + "GetConfiguredAudienceModelAssociationOutput$configuredAudienceModelAssociation": "

Information about the configured audience model association that you requested.

", + "UpdateConfiguredAudienceModelAssociationOutput$configuredAudienceModelAssociation": "

Details about the configured audience model association that you updated.

" + } + }, + "ConfiguredAudienceModelAssociationArn": { + "base": null, + "refs": { + "CollaborationConfiguredAudienceModelAssociation$arn": "

The Amazon Resource Name (ARN) of the configured audience model association.

", + "CollaborationConfiguredAudienceModelAssociationSummary$arn": "

The Amazon Resource Name (ARN) of the configured audience model association.

", + "ConfiguredAudienceModelAssociation$arn": "

The Amazon Resource Name (ARN) of the configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$arn": "

The Amazon Resource Name (ARN) of the configured audience model association.

" + } + }, + "ConfiguredAudienceModelAssociationIdentifier": { + "base": null, + "refs": { + "CollaborationConfiguredAudienceModelAssociation$id": "

The identifier of the configured audience model association.

", + "CollaborationConfiguredAudienceModelAssociationSummary$id": "

The identifier of the configured audience model association.

", + "ConfiguredAudienceModelAssociation$id": "

A unique identifier of the configured audience model association.

", + "DeleteConfiguredAudienceModelAssociationInput$configuredAudienceModelAssociationIdentifier": "

A unique identifier of the configured audience model association that you want to delete.

", + "GetCollaborationConfiguredAudienceModelAssociationInput$configuredAudienceModelAssociationIdentifier": "

A unique identifier for the configured audience model association that you want to retrieve.

", + "GetConfiguredAudienceModelAssociationInput$configuredAudienceModelAssociationIdentifier": "

A unique identifier for the configured audience model association that you want to retrieve.

", + "UpdateConfiguredAudienceModelAssociationInput$configuredAudienceModelAssociationIdentifier": "

A unique identifier for the configured audience model association that you want to update.

" + } + }, + "ConfiguredAudienceModelAssociationName": { + "base": null, + "refs": { + "CollaborationConfiguredAudienceModelAssociation$name": "

The name of the configured audience model association.

", + "CollaborationConfiguredAudienceModelAssociationSummary$name": "

The name of the configured audience model association.

", + "ConfiguredAudienceModelAssociation$name": "

The name of the configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$name": "

The name of the configured audience model association.

", + "CreateConfiguredAudienceModelAssociationInput$configuredAudienceModelAssociationName": "

The name of the configured audience model association.

", + "UpdateConfiguredAudienceModelAssociationInput$name": "

A new name for the configured audience model association.

" + } + }, + "ConfiguredAudienceModelAssociationSummary": { + "base": "

A summary of the configured audience model association.

", + "refs": { + "ConfiguredAudienceModelAssociationSummaryList$member": null + } + }, + "ConfiguredAudienceModelAssociationSummaryList": { + "base": null, + "refs": { + "ListConfiguredAudienceModelAssociationsOutput$configuredAudienceModelAssociationSummaries": "

Summaries of the configured audience model associations that you requested.

" + } + }, "ConfiguredTable": { "base": "

A table that has been configured for use in a collaboration.

", "refs": { @@ -674,6 +824,16 @@ "refs": { } }, + "CreateConfiguredAudienceModelAssociationInput": { + "base": null, + "refs": { + } + }, + "CreateConfiguredAudienceModelAssociationOutput": { + "base": null, + "refs": { + } + }, "CreateConfiguredTableAnalysisRuleInput": { "base": null, "refs": { @@ -714,6 +874,16 @@ "refs": { } }, + "CreatePrivacyBudgetTemplateInput": { + "base": null, + "refs": { + } + }, + "CreatePrivacyBudgetTemplateOutput": { + "base": null, + "refs": { + } + }, "DataEncryptionMetadata": { "base": "

The settings for client-side encryption for cryptographic computing.

", "refs": { @@ -741,6 +911,16 @@ "refs": { } }, + "DeleteConfiguredAudienceModelAssociationInput": { + "base": null, + "refs": { + } + }, + "DeleteConfiguredAudienceModelAssociationOutput": { + "base": null, + "refs": { + } + }, "DeleteConfiguredTableAnalysisRuleInput": { "base": null, "refs": { @@ -791,6 +971,150 @@ "refs": { } }, + "DeletePrivacyBudgetTemplateInput": { + "base": null, + "refs": { + } + }, + "DeletePrivacyBudgetTemplateOutput": { + "base": null, + "refs": { + } + }, + "DifferentialPrivacyAggregationExpression": { + "base": null, + "refs": { + "DifferentialPrivacySensitivityParameters$aggregationExpression": "

The aggregation expression that was run.

" + } + }, + "DifferentialPrivacyAggregationType": { + "base": null, + "refs": { + "DifferentialPrivacyPreviewAggregation$type": "

The type of aggregation function.

", + "DifferentialPrivacyPrivacyBudgetAggregation$type": "

The different types of aggregation functions that you can perform.

", + "DifferentialPrivacySensitivityParameters$aggregationType": "

The type of aggregation function that was run.

" + } + }, + "DifferentialPrivacyColumn": { + "base": "

Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.

", + "refs": { + "DifferentialPrivacyColumnList$member": null + } + }, + "DifferentialPrivacyColumnList": { + "base": null, + "refs": { + "DifferentialPrivacyConfiguration$columns": "

The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

" + } + }, + "DifferentialPrivacyConfiguration": { + "base": "

Specifies the unique identifier for your users.

", + "refs": { + "AnalysisRuleCustom$differentialPrivacy": "

The differential privacy configuration.

" + } + }, + "DifferentialPrivacyParameters": { + "base": "

An array that contains the sensitivity parameters.

", + "refs": { + "ProtectedQuery$differentialPrivacy": "

The sensitivity parameters of the differential privacy results of the protected query.

" + } + }, + "DifferentialPrivacyPreviewAggregation": { + "base": "

Provides an estimate of the number of aggregation functions that the member who can query can run given the epsilon and noise parameters.

", + "refs": { + "DifferentialPrivacyPreviewAggregationList$member": null + } + }, + "DifferentialPrivacyPreviewAggregationList": { + "base": null, + "refs": { + "DifferentialPrivacyPrivacyImpact$aggregations": "

The number of aggregation functions that you can perform.

" + } + }, + "DifferentialPrivacyPreviewAggregationMaxCountInteger": { + "base": null, + "refs": { + "DifferentialPrivacyPreviewAggregation$maxCount": "

The maximum number of aggregations that the member who can query can run given the epsilon and noise parameters.

" + } + }, + "DifferentialPrivacyPreviewParametersInput": { + "base": "

The epsilon and noise parameters that you want to preview.

", + "refs": { + "PreviewPrivacyImpactParametersInput$differentialPrivacy": "

An array that specifies the epsilon and noise parameters.

" + } + }, + "DifferentialPrivacyPrivacyBudget": { + "base": "

Specifies the configured epsilon value and the utility in terms of total aggregations, as well as the remaining aggregations available.

", + "refs": { + "PrivacyBudget$differentialPrivacy": "

An object that specifies the epsilon parameter and the utility in terms of total aggregations, as well as the remaining aggregations available.

" + } + }, + "DifferentialPrivacyPrivacyBudgetAggregation": { + "base": "

Information about the total number of aggregations, as well as the remaining aggregations.

", + "refs": { + "DifferentialPrivacyPrivacyBudgetAggregationList$member": null + } + }, + "DifferentialPrivacyPrivacyBudgetAggregationList": { + "base": null, + "refs": { + "DifferentialPrivacyPrivacyBudget$aggregations": "

This information includes the configured epsilon value and the utility in terms of total aggregations, as well as the remaining aggregations.

" + } + }, + "DifferentialPrivacyPrivacyBudgetAggregationMaxCountInteger": { + "base": null, + "refs": { + "DifferentialPrivacyPrivacyBudgetAggregation$maxCount": "

The maximum number of aggregation functions that you can perform with the given privacy budget.

" + } + }, + "DifferentialPrivacyPrivacyBudgetAggregationRemainingCountInteger": { + "base": null, + "refs": { + "DifferentialPrivacyPrivacyBudgetAggregation$remainingCount": "

The remaining number of aggregation functions that can be run with the available privacy budget.

" + } + }, + "DifferentialPrivacyPrivacyImpact": { + "base": "

Information about the number of aggregation functions that the member who can query can run given the epsilon and noise parameters.

", + "refs": { + "PrivacyImpact$differentialPrivacy": "

An object that lists the number and type of aggregation functions you can perform.

" + } + }, + "DifferentialPrivacySensitivityParameters": { + "base": "

Provides the sensitivity parameters.

", + "refs": { + "DifferentialPrivacySensitivityParametersList$member": null + } + }, + "DifferentialPrivacySensitivityParametersList": { + "base": null, + "refs": { + "DifferentialPrivacyParameters$sensitivityParameters": "

Provides the sensitivity parameters that you can use to better understand the total amount of noise in query results.

" + } + }, + "DifferentialPrivacySensitivityParametersUserContributionLimitInteger": { + "base": null, + "refs": { + "DifferentialPrivacySensitivityParameters$userContributionLimit": "

The maximum number of rows contributed by a user in a SQL query.

" + } + }, + "DifferentialPrivacyTemplateParametersInput": { + "base": "

The epsilon and noise parameter values that you want to use for the differential privacy template.

", + "refs": { + "PrivacyBudgetTemplateParametersInput$differentialPrivacy": "

An object that specifies the epsilon and noise parameters.

" + } + }, + "DifferentialPrivacyTemplateParametersOutput": { + "base": "

The epsilon and noise parameter values that were used for the differential privacy template.

", + "refs": { + "PrivacyBudgetTemplateParametersOutput$differentialPrivacy": "

The epsilon and noise parameters.

" + } + }, + "DifferentialPrivacyTemplateUpdateParameters": { + "base": "

The epsilon and noise parameter values that you want to update in the differential privacy template.

", + "refs": { + "PrivacyBudgetTemplateUpdateParameters$differentialPrivacy": "

An object that specifies the new values for the epsilon and noise parameters.

" + } + }, "DisplayName": { "base": null, "refs": { @@ -813,12 +1137,29 @@ "ServiceQuotaExceededException$quotaValue": "

The value of the quota.

" } }, + "Epsilon": { + "base": null, + "refs": { + "DifferentialPrivacyPreviewParametersInput$epsilon": "

The epsilon value that you want to preview.

", + "DifferentialPrivacyPrivacyBudget$epsilon": "

The epsilon value that you configured.

", + "DifferentialPrivacyTemplateParametersInput$epsilon": "

The epsilon value that you want to use.

", + "DifferentialPrivacyTemplateParametersOutput$epsilon": "

The epsilon value that you specified.

", + "DifferentialPrivacyTemplateUpdateParameters$epsilon": "

The updated epsilon value that you want to use.

" + } + }, "FilterableMemberStatus": { "base": null, "refs": { "ListCollaborationsInput$memberStatus": "

The caller's status in a collaboration.

" } }, + "Float": { + "base": null, + "refs": { + "DifferentialPrivacySensitivityParameters$minColumnValue": "

The lower bound of the aggregation expression.

", + "DifferentialPrivacySensitivityParameters$maxColumnValue": "

The upper bound of the aggregation expression.

" + } + }, "GetAnalysisTemplateInput": { "base": null, "refs": { @@ -839,6 +1180,16 @@ "refs": { } }, + "GetCollaborationConfiguredAudienceModelAssociationInput": { + "base": null, + "refs": { + } + }, + "GetCollaborationConfiguredAudienceModelAssociationOutput": { + "base": null, + "refs": { + } + }, "GetCollaborationInput": { "base": null, "refs": { @@ -849,6 +1200,26 @@ "refs": { } }, + "GetCollaborationPrivacyBudgetTemplateInput": { + "base": null, + "refs": { + } + }, + "GetCollaborationPrivacyBudgetTemplateOutput": { + "base": null, + "refs": { + } + }, + "GetConfiguredAudienceModelAssociationInput": { + "base": null, + "refs": { + } + }, + "GetConfiguredAudienceModelAssociationOutput": { + "base": null, + "refs": { + } + }, "GetConfiguredTableAnalysisRuleInput": { "base": null, "refs": { @@ -889,6 +1260,16 @@ "refs": { } }, + "GetPrivacyBudgetTemplateInput": { + "base": null, + "refs": { + } + }, + "GetPrivacyBudgetTemplateOutput": { + "base": null, + "refs": { + } + }, "GetProtectedQueryInput": { "base": null, "refs": { @@ -987,6 +1368,36 @@ "refs": { } }, + "ListCollaborationConfiguredAudienceModelAssociationsInput": { + "base": null, + "refs": { + } + }, + "ListCollaborationConfiguredAudienceModelAssociationsOutput": { + "base": null, + "refs": { + } + }, + "ListCollaborationPrivacyBudgetTemplatesInput": { + "base": null, + "refs": { + } + }, + "ListCollaborationPrivacyBudgetTemplatesOutput": { + "base": null, + "refs": { + } + }, + "ListCollaborationPrivacyBudgetsInput": { + "base": null, + "refs": { + } + }, + "ListCollaborationPrivacyBudgetsOutput": { + "base": null, + "refs": { + } + }, "ListCollaborationsInput": { "base": null, "refs": { @@ -997,6 +1408,16 @@ "refs": { } }, + "ListConfiguredAudienceModelAssociationsInput": { + "base": null, + "refs": { + } + }, + "ListConfiguredAudienceModelAssociationsOutput": { + "base": null, + "refs": { + } + }, "ListConfiguredTableAssociationsInput": { "base": null, "refs": { @@ -1037,6 +1458,26 @@ "refs": { } }, + "ListPrivacyBudgetTemplatesInput": { + "base": null, + "refs": { + } + }, + "ListPrivacyBudgetTemplatesOutput": { + "base": null, + "refs": { + } + }, + "ListPrivacyBudgetsInput": { + "base": null, + "refs": { + } + }, + "ListPrivacyBudgetsOutput": { + "base": null, + "refs": { + } + }, "ListProtectedQueriesInput": { "base": null, "refs": { @@ -1078,11 +1519,17 @@ "refs": { "ListAnalysisTemplatesInput$maxResults": "

The maximum size of the results that is returned per call.

", "ListCollaborationAnalysisTemplatesInput$maxResults": "

The maximum size of the results that is returned per call.

", + "ListCollaborationConfiguredAudienceModelAssociationsInput$maxResults": "

The maximum size of the results that is returned per call.

", + "ListCollaborationPrivacyBudgetTemplatesInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

", + "ListCollaborationPrivacyBudgetsInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

", "ListCollaborationsInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

", + "ListConfiguredAudienceModelAssociationsInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

", "ListConfiguredTableAssociationsInput$maxResults": "

The maximum size of the results that is returned per call.

", "ListConfiguredTablesInput$maxResults": "

The maximum size of the results that is returned per call.

", "ListMembersInput$maxResults": "

The maximum size of the results that is returned per call.

", "ListMembershipsInput$maxResults": "

The maximum size of the results that is returned per call.

", + "ListPrivacyBudgetTemplatesInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

", + "ListPrivacyBudgetsInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service may return a nextToken even if the maximum results has not been met.

", "ListProtectedQueriesInput$maxResults": "

The maximum size of the results that is returned per call. Service chooses a default if it has not been set. Service can return a nextToken even if the maximum results has not been met.

", "ListSchemasInput$maxResults": "

The maximum size of the results that is returned per call.

" } @@ -1120,7 +1567,7 @@ "refs": { "Collaboration$memberStatus": "

The status of a member in a collaboration.

", "CollaborationSummary$memberStatus": "

The status of a member in a collaboration.

", - "MemberSummary$status": "

The status of the member. Valid values are `INVITED`, `ACTIVE`, `LEFT`, and `REMOVED`.

" + "MemberSummary$status": "

The status of the member.

" } }, "MemberSummary": { @@ -1150,11 +1597,16 @@ "AnalysisTemplateSummary$membershipArn": "

The Amazon Resource Name (ARN) of the member who created the analysis template.

", "Collaboration$membershipArn": "

The unique ARN for your membership within the collaboration.

", "CollaborationSummary$membershipArn": "

The ARN of a member in a collaboration.

", + "ConfiguredAudienceModelAssociation$membershipArn": "

The Amazon Resource Name (ARN) of the membership that contains this configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$membershipArn": "

The Amazon Resource Name (ARN) of the membership that contains the configured audience model association.

", "ConfiguredTableAssociation$membershipArn": "

The unique ARN for the membership this configured table association belongs to.

", "ConfiguredTableAssociationSummary$membershipArn": "

The unique ARN for the membership that the configured table association belongs to.

", "MemberSummary$membershipArn": "

The unique ARN for the member's associated membership, if present.

", "Membership$arn": "

The unique ARN for the membership.

", "MembershipSummary$arn": "

The unique ARN for the membership.

", + "PrivacyBudgetSummary$membershipArn": "

The Amazon Resource Name (ARN) of the member who created the privacy budget summary.

", + "PrivacyBudgetTemplate$membershipArn": "

The Amazon Resource Name (ARN) of the member who created the privacy budget template.

", + "PrivacyBudgetTemplateSummary$membershipArn": "

The Amazon Resource Name (ARN) of the member who created the privacy budget template.

", "ProtectedQuery$membershipArn": "

The ARN of the membership.

", "ProtectedQuerySummary$membershipArn": "

The unique ARN for the membership that initiated the protected query.

" } @@ -1162,26 +1614,48 @@ "MembershipIdentifier": { "base": null, "refs": { + "ConfiguredAudienceModelAssociationSummary$membershipId": "

A unique identifier of the membership that contains the configured audience model association.

", "ConfiguredTableAssociationSummary$membershipId": "

The unique ID for the membership that the configured table association belongs to.

", "CreateAnalysisTemplateInput$membershipIdentifier": "

The identifier for a membership resource.

", + "CreateConfiguredAudienceModelAssociationInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The configured audience model is associated to the collaboration that this membership belongs to. Accepts a membership ID.

", "CreateConfiguredTableAssociationInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The configured table is associated to the collaboration that this membership belongs to. Currently accepts a membership ID.

", + "CreatePrivacyBudgetTemplateInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The privacy budget template is created in the collaboration that this membership belongs to. Accepts a membership ID.

", "DeleteAnalysisTemplateInput$membershipIdentifier": "

The identifier for a membership resource.

", + "DeleteConfiguredAudienceModelAssociationInput$membershipIdentifier": "

A unique identifier of the membership that contains the audience model association that you want to delete.

", "DeleteConfiguredTableAssociationInput$membershipIdentifier": "

A unique identifier for the membership that the configured table association belongs to. Currently accepts the membership ID.

", "DeleteMembershipInput$membershipIdentifier": "

The identifier for a membership resource.

", + "DeletePrivacyBudgetTemplateInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The privacy budget template is deleted from the collaboration that this membership belongs to. Accepts a membership ID.

", "GetAnalysisTemplateInput$membershipIdentifier": "

The identifier for a membership resource.

", + "GetConfiguredAudienceModelAssociationInput$membershipIdentifier": "

A unique identifier for the membership that contains the configured audience model association that you want to retrieve.

", "GetConfiguredTableAssociationInput$membershipIdentifier": "

A unique identifier for the membership that the configured table association belongs to. Currently accepts the membership ID.

", "GetMembershipInput$membershipIdentifier": "

The identifier for a membership resource.

", + "GetPrivacyBudgetTemplateInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The privacy budget template is retrieved from the collaboration that this membership belongs to. Accepts a membership ID.

", "GetProtectedQueryInput$membershipIdentifier": "

The identifier for a membership in a protected query instance.

", "ListAnalysisTemplatesInput$membershipIdentifier": "

The identifier for a membership resource.

", + "ListConfiguredAudienceModelAssociationsInput$membershipIdentifier": "

A unique identifier for a membership that contains the configured audience model associations that you want to retrieve.

", "ListConfiguredTableAssociationsInput$membershipIdentifier": "

A unique identifier for the membership to list configured table associations for. Currently accepts the membership ID.

", + "ListPrivacyBudgetTemplatesInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The privacy budget templates are retrieved from the collaboration that this membership belongs to. Accepts a membership ID.

", + "ListPrivacyBudgetsInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The privacy budget is retrieved from the collaboration that this membership belongs to. Accepts a membership ID.

", "ListProtectedQueriesInput$membershipIdentifier": "

The identifier for the membership in the collaboration.

", + "PreviewPrivacyImpactInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. Accepts a membership ID.

", + "PrivacyBudgetSummary$membershipId": "

The identifier for a membership resource.

", "StartProtectedQueryInput$membershipIdentifier": "

A unique identifier for the membership to run this query against. Currently accepts a membership ID.

", "UpdateAnalysisTemplateInput$membershipIdentifier": "

The identifier for a membership resource.

", + "UpdateConfiguredAudienceModelAssociationInput$membershipIdentifier": "

A unique identifier of the membership that contains the configured audience model association that you want to update.

", "UpdateConfiguredTableAssociationInput$membershipIdentifier": "

The unique ID for the membership that the configured table association belongs to.

", "UpdateMembershipInput$membershipIdentifier": "

The unique identifier of the membership.

", + "UpdatePrivacyBudgetTemplateInput$membershipIdentifier": "

A unique identifier for one of your memberships for a collaboration. The privacy budget template is updated in the collaboration that this membership belongs to. Accepts a membership ID.

", "UpdateProtectedQueryInput$membershipIdentifier": "

The identifier for a member of a protected query instance.

" } }, + "MembershipPaymentConfiguration": { + "base": "

An object representing the payment responsibilities accepted by the collaboration member.

", + "refs": { + "CreateMembershipInput$paymentConfiguration": "

The payment responsibilities accepted by the collaboration member.

Not required if the collaboration member has the member ability to run queries.

Required if the collaboration member doesn't have the member ability to run queries but is configured as a payer by the collaboration creator.

", + "Membership$paymentConfiguration": "

The payment responsibilities accepted by the collaboration member.

", + "MembershipSummary$paymentConfiguration": "

The payment responsibilities accepted by the collaboration member.

" + } + }, "MembershipProtectedQueryOutputConfiguration": { "base": "

Contains configurations for protected query results.

", "refs": { @@ -1196,20 +1670,26 @@ "UpdateMembershipInput$defaultResultConfiguration": "

The default protected query result configuration as specified by the member who can receive results.

" } }, + "MembershipQueryComputePaymentConfig": { + "base": "

An object representing the payment responsibilities accepted by the collaboration member for query compute costs.

", + "refs": { + "MembershipPaymentConfiguration$queryCompute": "

The payment responsibilities accepted by the collaboration member for query compute costs.

" + } + }, "MembershipQueryLogStatus": { "base": null, "refs": { - "CreateMembershipInput$queryLogStatus": "

An indicator as to whether query logging has been enabled or disabled for the collaboration.

", - "Membership$queryLogStatus": "

An indicator as to whether query logging has been enabled or disabled for the collaboration.

", - "UpdateMembershipInput$queryLogStatus": "

An indicator as to whether query logging has been enabled or disabled for the collaboration.

" + "CreateMembershipInput$queryLogStatus": "

An indicator as to whether query logging has been enabled or disabled for the membership.

", + "Membership$queryLogStatus": "

An indicator as to whether query logging has been enabled or disabled for the membership.

", + "UpdateMembershipInput$queryLogStatus": "

An indicator as to whether query logging has been enabled or disabled for the membership.

" } }, "MembershipStatus": { "base": null, "refs": { "ListMembershipsInput$status": "

A filter which will return only memberships in the specified status.

", - "Membership$status": "

The status of the membership. Valid values are `ACTIVE`, `REMOVED`, and `COLLABORATION_DELETED`.

", - "MembershipSummary$status": "

The status of the membership. Valid values are `ACTIVE`, `REMOVED`, and `COLLABORATION_DELETED`.

" + "Membership$status": "

The status of the membership.

", + "MembershipSummary$status": "

The status of the membership.

" } }, "MembershipSummary": { @@ -1231,8 +1711,16 @@ "ListAnalysisTemplatesOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListCollaborationAnalysisTemplatesInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListCollaborationAnalysisTemplatesOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListCollaborationConfiguredAudienceModelAssociationsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListCollaborationConfiguredAudienceModelAssociationsOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListCollaborationPrivacyBudgetTemplatesInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListCollaborationPrivacyBudgetTemplatesOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListCollaborationPrivacyBudgetsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListCollaborationPrivacyBudgetsOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListCollaborationsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListCollaborationsOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListConfiguredAudienceModelAssociationsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListConfiguredAudienceModelAssociationsOutput$nextToken": "

The token value provided to access the next page of results.

", "ListConfiguredTableAssociationsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListConfiguredTableAssociationsOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListConfiguredTablesInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", @@ -1241,6 +1729,10 @@ "ListMembersOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListMembershipsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListMembershipsOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListPrivacyBudgetTemplatesInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListPrivacyBudgetTemplatesOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListPrivacyBudgetsInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListPrivacyBudgetsOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListProtectedQueriesInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListProtectedQueriesOutput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListSchemasInput$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", @@ -1273,6 +1765,143 @@ "ParameterMap$value": null } }, + "PaymentConfiguration": { + "base": "

An object representing the collaboration member's payment responsibilities set by the collaboration creator.

", + "refs": { + "CreateCollaborationInput$creatorPaymentConfiguration": "

The collaboration creator's payment responsibilities set by the collaboration creator.

If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer.

", + "MemberSpecification$paymentConfiguration": "

The collaboration member's payment responsibilities set by the collaboration creator.

If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer.

", + "MemberSummary$paymentConfiguration": "

The collaboration member's payment responsibilities set by the collaboration creator.

" + } + }, + "PreviewPrivacyImpactInput": { + "base": null, + "refs": { + } + }, + "PreviewPrivacyImpactOutput": { + "base": null, + "refs": { + } + }, + "PreviewPrivacyImpactParametersInput": { + "base": "

Specifies the updated epsilon and noise parameters to preview. The preview allows you to see how the maximum number of each type of aggregation function would change with the new parameters.

", + "refs": { + "PreviewPrivacyImpactInput$parameters": "

Specifies the desired epsilon and noise parameters to preview.

" + } + }, + "PrivacyBudget": { + "base": "

The epsilon parameter value and number of each aggregation function that you can perform.

", + "refs": { + "CollaborationPrivacyBudgetSummary$budget": "

The includes epsilon provided and utility in terms of aggregations.

", + "PrivacyBudgetSummary$budget": "

The provided privacy budget.

" + } + }, + "PrivacyBudgetSummary": { + "base": "

An array that summaries the specified privacy budget. This summary includes collaboration information, creation information, membership information, and privacy budget information.

", + "refs": { + "PrivacyBudgetSummaryList$member": null + } + }, + "PrivacyBudgetSummaryList": { + "base": null, + "refs": { + "ListPrivacyBudgetsOutput$privacyBudgetSummaries": "

An array that summarizes the privacy budgets. The summary includes collaboration information, membership information, privacy budget template information, and privacy budget details.

" + } + }, + "PrivacyBudgetTemplate": { + "base": "

An object that defines the privacy budget template.

", + "refs": { + "CreatePrivacyBudgetTemplateOutput$privacyBudgetTemplate": "

A summary of the elements in the privacy budget template.

", + "GetPrivacyBudgetTemplateOutput$privacyBudgetTemplate": "

Returns the details of the privacy budget template that you requested.

", + "UpdatePrivacyBudgetTemplateOutput$privacyBudgetTemplate": "

Summary of the privacy budget template.

" + } + }, + "PrivacyBudgetTemplateArn": { + "base": null, + "refs": { + "CollaborationPrivacyBudgetSummary$privacyBudgetTemplateArn": "

The ARN of the collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplate$arn": "

The ARN of the collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplateSummary$arn": "

The ARN of the collaboration privacy budget template.

", + "PrivacyBudgetSummary$privacyBudgetTemplateArn": "

The ARN of the privacy budget template.

", + "PrivacyBudgetTemplate$arn": "

The ARN of the privacy budget template.

", + "PrivacyBudgetTemplateSummary$arn": "

The ARN of the privacy budget template.

" + } + }, + "PrivacyBudgetTemplateAutoRefresh": { + "base": null, + "refs": { + "CollaborationPrivacyBudgetTemplate$autoRefresh": "

How often the privacy budget refreshes.

If you plan to regularly bring new data into the collaboration, use CALENDAR_MONTH to automatically get a new privacy budget for the collaboration every calendar month. Choosing this option allows arbitrary amounts of information to be revealed about rows of the data when repeatedly queried across refreshes. Avoid choosing this if the same rows will be repeatedly queried between privacy budget refreshes.

", + "CreatePrivacyBudgetTemplateInput$autoRefresh": "

How often the privacy budget refreshes.

If you plan to regularly bring new data into the collaboration, you can use CALENDAR_MONTH to automatically get a new privacy budget for the collaboration every calendar month. Choosing this option allows arbitrary amounts of information to be revealed about rows of the data when repeatedly queries across refreshes. Avoid choosing this if the same rows will be repeatedly queried between privacy budget refreshes.

", + "PrivacyBudgetTemplate$autoRefresh": "

How often the privacy budget refreshes.

If you plan to regularly bring new data into the collaboration, use CALENDAR_MONTH to automatically get a new privacy budget for the collaboration every calendar month. Choosing this option allows arbitrary amounts of information to be revealed about rows of the data when repeatedly queried across refreshes. Avoid choosing this if the same rows will be repeatedly queried between privacy budget refreshes.

" + } + }, + "PrivacyBudgetTemplateIdentifier": { + "base": null, + "refs": { + "CollaborationPrivacyBudgetSummary$privacyBudgetTemplateId": "

The unique identifier of the collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplate$id": "

The unique identifier of the collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplateSummary$id": "

The unique identifier of the collaboration privacy budget template.

", + "DeletePrivacyBudgetTemplateInput$privacyBudgetTemplateIdentifier": "

A unique identifier for your privacy budget template.

", + "GetCollaborationPrivacyBudgetTemplateInput$privacyBudgetTemplateIdentifier": "

A unique identifier for one of your privacy budget templates.

", + "GetPrivacyBudgetTemplateInput$privacyBudgetTemplateIdentifier": "

A unique identifier for your privacy budget template.

", + "PrivacyBudgetSummary$privacyBudgetTemplateId": "

The unique identifier of the privacy budget template.

", + "PrivacyBudgetTemplate$id": "

The unique identifier of the privacy budget template.

", + "PrivacyBudgetTemplateSummary$id": "

The unique identifier of the privacy budget template.

", + "UpdatePrivacyBudgetTemplateInput$privacyBudgetTemplateIdentifier": "

A unique identifier for your privacy budget template that you want to update.

" + } + }, + "PrivacyBudgetTemplateParametersInput": { + "base": "

The epsilon and noise parameters that you want to use for the privacy budget template.

", + "refs": { + "CreatePrivacyBudgetTemplateInput$parameters": "

Specifies your parameters for the privacy budget template.

" + } + }, + "PrivacyBudgetTemplateParametersOutput": { + "base": "

The epsilon and noise parameters that were used in the privacy budget template.

", + "refs": { + "CollaborationPrivacyBudgetTemplate$parameters": "

Specifies the epsilon and noise parameters for the privacy budget template.

", + "PrivacyBudgetTemplate$parameters": "

Specifies the epislon and noise parameters for the privacy budget template.

" + } + }, + "PrivacyBudgetTemplateSummary": { + "base": "

A summary of the privacy budget template. The summary includes membership information, collaboration information, and creation information.

", + "refs": { + "PrivacyBudgetTemplateSummaryList$member": null + } + }, + "PrivacyBudgetTemplateSummaryList": { + "base": null, + "refs": { + "ListPrivacyBudgetTemplatesOutput$privacyBudgetTemplateSummaries": "

An array that summarizes the privacy budget templates. The summary includes collaboration information, creation information, and privacy budget type.

" + } + }, + "PrivacyBudgetTemplateUpdateParameters": { + "base": "

The epsilon and noise parameters that you want to update in the privacy budget template.

", + "refs": { + "UpdatePrivacyBudgetTemplateInput$parameters": "

Specifies the epsilon and noise parameters for the privacy budget template.

" + } + }, + "PrivacyBudgetType": { + "base": null, + "refs": { + "CollaborationPrivacyBudgetSummary$type": "

The type of privacy budget template.

", + "CollaborationPrivacyBudgetTemplate$privacyBudgetType": "

The type of privacy budget template.

", + "CollaborationPrivacyBudgetTemplateSummary$privacyBudgetType": "

The type of the privacy budget template.

", + "CreatePrivacyBudgetTemplateInput$privacyBudgetType": "

Specifies the type of the privacy budget template.

", + "ListCollaborationPrivacyBudgetsInput$privacyBudgetType": "

Specifies the type of the privacy budget.

", + "ListPrivacyBudgetsInput$privacyBudgetType": "

The privacy budget type.

", + "PrivacyBudgetSummary$type": "

Specifies the type of the privacy budget.

", + "PrivacyBudgetTemplate$privacyBudgetType": "

Specifies the type of the privacy budget template.

", + "PrivacyBudgetTemplateSummary$privacyBudgetType": "

The type of the privacy budget template.

", + "UpdatePrivacyBudgetTemplateInput$privacyBudgetType": "

Specifies the type of the privacy budget template.

" + } + }, + "PrivacyImpact": { + "base": "

Provides an estimate of the number of aggregation functions that the member who can query can run given the epsilon and noise parameters.

", + "refs": { + "PreviewPrivacyImpactOutput$privacyImpact": "

An estimate of the number of aggregation functions that the member who can query can run given the epsilon and noise parameters. This does not change the privacy budget.

" + } + }, "ProtectedQuery": { "base": "

The parameters for an Clean Rooms protected query.

", "refs": { @@ -1395,6 +2024,12 @@ "StartProtectedQueryInput$type": "

The type of the protected query to be started.

" } }, + "QueryComputePaymentConfig": { + "base": "

An object representing the collaboration member's payment responsibilities set by the collaboration creator for query compute costs.

", + "refs": { + "PaymentConfiguration$queryCompute": "

The collaboration member's payment responsibilities set by the collaboration creator for query compute costs.

" + } + }, "QueryTables": { "base": null, "refs": { @@ -1417,8 +2052,14 @@ "AnalysisTemplateSummary$description": "

The description of the analysis template.

", "CollaborationAnalysisTemplate$description": "

The description of the analysis template.

", "CollaborationAnalysisTemplateSummary$description": "

The description of the analysis template.

", + "CollaborationConfiguredAudienceModelAssociation$description": "

The description of the configured audience model association.

", + "CollaborationConfiguredAudienceModelAssociationSummary$description": "

The description of the configured audience model association.

", + "ConfiguredAudienceModelAssociation$description": "

The description of the configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$description": "

The description of the configured audience model association.

", "CreateAnalysisTemplateInput$description": "

The description of the analysis template.

", - "UpdateAnalysisTemplateInput$description": "

A new description for the analysis template.

" + "CreateConfiguredAudienceModelAssociationInput$description": "

A description of the configured audience model association.

", + "UpdateAnalysisTemplateInput$description": "

A new description for the analysis template.

", + "UpdateConfiguredAudienceModelAssociationInput$description": "

A new description for the configured audience model association.

" } }, "ResourceNotFoundException": { @@ -1518,6 +2159,7 @@ "BatchGetSchemaError$message": "

An error message for the error.

", "ConflictException$message": null, "ConflictException$resourceId": "

The ID of the conflicting resource.

", + "DifferentialPrivacyColumn$name": "

The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.

", "InternalServerException$message": null, "ProtectedQueryError$message": "

A description of why the query failed.

", "ProtectedQueryError$code": "

An error code for the error.

", @@ -1592,9 +2234,11 @@ "refs": { "CreateAnalysisTemplateInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", "CreateCollaborationInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", + "CreateConfiguredAudienceModelAssociationInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", "CreateConfiguredTableAssociationInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", "CreateConfiguredTableInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", "CreateMembershipInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", + "CreatePrivacyBudgetTemplateInput$tags": "

An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.

", "ListTagsForResourceOutput$tags": "

A map of objects specifying each key name and value.

", "TagResourceInput$tags": "

A map of objects specifying each key name and value.

" } @@ -1641,8 +2285,22 @@ "CollaborationAnalysisTemplate$updateTime": "

The time that the analysis template in the collaboration was last updated.

", "CollaborationAnalysisTemplateSummary$createTime": "

The time that the summary of the analysis template in a collaboration was created.

", "CollaborationAnalysisTemplateSummary$updateTime": "

The time that the summary of the analysis template in the collaboration was last updated.

", + "CollaborationConfiguredAudienceModelAssociation$createTime": "

The time at which the configured audience model association was created.

", + "CollaborationConfiguredAudienceModelAssociation$updateTime": "

The most recent time at which the configured audience model association was updated.

", + "CollaborationConfiguredAudienceModelAssociationSummary$createTime": "

The time at which the configured audience model association was created.

", + "CollaborationConfiguredAudienceModelAssociationSummary$updateTime": "

The most recent time at which the configured audience model association was updated.

", + "CollaborationPrivacyBudgetSummary$createTime": "

The time at which the privacy budget was created.

", + "CollaborationPrivacyBudgetSummary$updateTime": "

The most recent time at which the privacy budget was updated.

", + "CollaborationPrivacyBudgetTemplate$createTime": "

The time at which the collaboration privacy budget template was created.

", + "CollaborationPrivacyBudgetTemplate$updateTime": "

The most recent time at which the collaboration privacy budget template was updated.

", + "CollaborationPrivacyBudgetTemplateSummary$createTime": "

The time at which the collaboration privacy budget template was created.

", + "CollaborationPrivacyBudgetTemplateSummary$updateTime": "

The most recent time at which the collaboration privacy budget template was updated.

", "CollaborationSummary$createTime": "

The time when the collaboration was created.

", "CollaborationSummary$updateTime": "

The time the collaboration metadata was last updated.

", + "ConfiguredAudienceModelAssociation$createTime": "

The time at which the configured audience model association was created.

", + "ConfiguredAudienceModelAssociation$updateTime": "

The most recent time at which the configured audience model association was updated.

", + "ConfiguredAudienceModelAssociationSummary$createTime": "

The time at which the configured audience model association was created.

", + "ConfiguredAudienceModelAssociationSummary$updateTime": "

The most recent time at which the configured audience model association was updated.

", "ConfiguredTable$createTime": "

The time the configured table was created.

", "ConfiguredTable$updateTime": "

The time the configured table was last updated

", "ConfiguredTableAnalysisRule$createTime": "

The time the configured table analysis rule was created.

", @@ -1659,6 +2317,12 @@ "Membership$updateTime": "

The time the membership metadata was last updated.

", "MembershipSummary$createTime": "

The time when the membership was created.

", "MembershipSummary$updateTime": "

The time the membership metadata was last updated.

", + "PrivacyBudgetSummary$createTime": "

The time at which the privacy budget was created.

", + "PrivacyBudgetSummary$updateTime": "

The most recent time at which the privacy budget was updated.

", + "PrivacyBudgetTemplate$createTime": "

The time at which the privacy budget template was created.

", + "PrivacyBudgetTemplate$updateTime": "

The most recent time at which the privacy budget template was updated.

", + "PrivacyBudgetTemplateSummary$createTime": "

The time at which the privacy budget template was created.

", + "PrivacyBudgetTemplateSummary$updateTime": "

The most recent time at which the privacy budget template was updated.

", "ProtectedQuery$createTime": "

The time at which the protected query was created.

", "ProtectedQuerySummary$createTime": "

The time the protected query was created.

", "Schema$createTime": "

The time the schema was created.

", @@ -1678,8 +2342,18 @@ "Collaboration$membershipId": "

The unique ID for your membership within the collaboration.

", "CollaborationAnalysisTemplate$collaborationId": "

A unique identifier for the collaboration that the analysis templates belong to. Currently accepts collaboration ID.

", "CollaborationAnalysisTemplateSummary$collaborationId": "

A unique identifier for the collaboration that the analysis templates belong to. Currently accepts collaboration ID.

", + "CollaborationConfiguredAudienceModelAssociation$collaborationId": "

A unique identifier for the collaboration that the configured audience model associations belong to. Accepts collaboration ID.

", + "CollaborationConfiguredAudienceModelAssociationSummary$collaborationId": "

A unique identifier for the collaboration that the configured audience model associations belong to. Accepts collaboration ID.

", + "CollaborationPrivacyBudgetSummary$id": "

The unique identifier of the collaboration privacy budget.

", + "CollaborationPrivacyBudgetSummary$collaborationId": "

The unique identifier of the collaboration that includes this privacy budget.

", + "CollaborationPrivacyBudgetTemplate$collaborationId": "

The unique identifier of the collaboration that includes this collaboration privacy budget template.

", + "CollaborationPrivacyBudgetTemplateSummary$collaborationId": "

The unique identifier of the collaboration that contains this collaboration privacy budget template.

", "CollaborationSummary$id": "

The identifier for the collaboration.

", "CollaborationSummary$membershipId": "

The identifier of a member in a collaboration.

", + "ConfiguredAudienceModelAssociation$membershipId": "

A unique identifier for the membership that contains this configured audience model association.

", + "ConfiguredAudienceModelAssociation$collaborationId": "

A unique identifier of the collaboration that contains this configured audience model association.

", + "ConfiguredAudienceModelAssociationSummary$collaborationId": "

A unique identifier of the collaboration that configured audience model is associated with.

", + "ConfiguredAudienceModelAssociationSummary$id": "

A unique identifier of the configured audience model association.

", "ConfiguredTable$id": "

The unique ID for the configured table.

", "ConfiguredTableAnalysisRule$configuredTableId": "

The unique ID for the configured table.

", "ConfiguredTableAssociation$id": "

The unique ID for the configured table association.

", @@ -1691,6 +2365,12 @@ "Membership$id": "

The unique ID of the membership.

", "Membership$collaborationId": "

The unique ID for the membership's collaboration.

", "MembershipSummary$id": "

The unique ID for the membership's collaboration.

", + "PrivacyBudgetSummary$id": "

The unique identifier of the privacy budget.

", + "PrivacyBudgetSummary$collaborationId": "

The unique identifier of the collaboration that contains this privacy budget.

", + "PrivacyBudgetTemplate$membershipId": "

The identifier for a membership resource.

", + "PrivacyBudgetTemplate$collaborationId": "

The unique ID of the collaboration that contains this privacy budget template.

", + "PrivacyBudgetTemplateSummary$membershipId": "

The identifier for a membership resource.

", + "PrivacyBudgetTemplateSummary$collaborationId": "

The unique ID of the collaboration that contains this privacy budget template.

", "ProtectedQuery$id": "

The identifier for a protected query instance.

", "ProtectedQuery$membershipId": "

The identifier for the membership.

", "ProtectedQuerySummary$id": "

The unique ID of the protected query.

", @@ -1729,6 +2409,16 @@ "refs": { } }, + "UpdateConfiguredAudienceModelAssociationInput": { + "base": null, + "refs": { + } + }, + "UpdateConfiguredAudienceModelAssociationOutput": { + "base": null, + "refs": { + } + }, "UpdateConfiguredTableAnalysisRuleInput": { "base": null, "refs": { @@ -1769,6 +2459,16 @@ "refs": { } }, + "UpdatePrivacyBudgetTemplateInput": { + "base": null, + "refs": { + } + }, + "UpdatePrivacyBudgetTemplateOutput": { + "base": null, + "refs": { + } + }, "UpdateProtectedQueryInput": { "base": null, "refs": { @@ -1779,6 +2479,15 @@ "refs": { } }, + "UsersNoisePerQuery": { + "base": null, + "refs": { + "DifferentialPrivacyPreviewParametersInput$usersNoisePerQuery": "

Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

", + "DifferentialPrivacyTemplateParametersInput$usersNoisePerQuery": "

Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

", + "DifferentialPrivacyTemplateParametersOutput$usersNoisePerQuery": "

Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

", + "DifferentialPrivacyTemplateUpdateParameters$usersNoisePerQuery": "

The updated value of noise added per query. It is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.

" + } + }, "ValidationException": { "base": "

The input fails to satisfy the specified constraints.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanrooms/2022-02-17/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanrooms/2022-02-17/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,12 +12,36 @@ "limit_key": "maxResults", "result_key": "collaborationAnalysisTemplateSummaries" }, + "ListCollaborationConfiguredAudienceModelAssociations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "collaborationConfiguredAudienceModelAssociationSummaries" + }, + "ListCollaborationPrivacyBudgetTemplates": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "collaborationPrivacyBudgetTemplateSummaries" + }, + "ListCollaborationPrivacyBudgets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "collaborationPrivacyBudgetSummaries" + }, "ListCollaborations": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "collaborationList" }, + "ListConfiguredAudienceModelAssociations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "configuredAudienceModelAssociationSummaries" + }, "ListConfiguredTableAssociations": { "input_token": "nextToken", "output_token": "nextToken", @@ -42,6 +66,18 @@ "limit_key": "maxResults", "result_key": "membershipSummaries" }, + "ListPrivacyBudgetTemplates": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "privacyBudgetTemplateSummaries" + }, + "ListPrivacyBudgets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "privacyBudgetSummaries" + }, "ListProtectedQueries": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1617 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-09-06", + "endpointPrefix":"cleanrooms-ml", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AWS Clean Rooms ML", + "serviceId":"CleanRoomsML", + "signatureVersion":"v4", + "signingName":"cleanrooms-ml", + "uid":"cleanroomsml-2023-09-06" + }, + "operations":{ + "CreateAudienceModel":{ + "name":"CreateAudienceModel", + "http":{ + "method":"POST", + "requestUri":"/audience-model", + "responseCode":200 + }, + "input":{"shape":"CreateAudienceModelRequest"}, + "output":{"shape":"CreateAudienceModelResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateConfiguredAudienceModel":{ + "name":"CreateConfiguredAudienceModel", + "http":{ + "method":"POST", + "requestUri":"/configured-audience-model", + "responseCode":200 + }, + "input":{"shape":"CreateConfiguredAudienceModelRequest"}, + "output":{"shape":"CreateConfiguredAudienceModelResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateTrainingDataset":{ + "name":"CreateTrainingDataset", + "http":{ + "method":"POST", + "requestUri":"/training-dataset", + "responseCode":200 + }, + "input":{"shape":"CreateTrainingDatasetRequest"}, + "output":{"shape":"CreateTrainingDatasetResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteAudienceGenerationJob":{ + "name":"DeleteAudienceGenerationJob", + "http":{ + "method":"DELETE", + "requestUri":"/audience-generation-job/{audienceGenerationJobArn}", + "responseCode":200 + }, + "input":{"shape":"DeleteAudienceGenerationJobRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteAudienceModel":{ + "name":"DeleteAudienceModel", + "http":{ + "method":"DELETE", + "requestUri":"/audience-model/{audienceModelArn}", + "responseCode":200 + }, + "input":{"shape":"DeleteAudienceModelRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteConfiguredAudienceModel":{ + "name":"DeleteConfiguredAudienceModel", + "http":{ + "method":"DELETE", + "requestUri":"/configured-audience-model/{configuredAudienceModelArn}", + "responseCode":200 + }, + "input":{"shape":"DeleteConfiguredAudienceModelRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteConfiguredAudienceModelPolicy":{ + "name":"DeleteConfiguredAudienceModelPolicy", + "http":{ + "method":"DELETE", + "requestUri":"/configured-audience-model/{configuredAudienceModelArn}/policy", + "responseCode":200 + }, + "input":{"shape":"DeleteConfiguredAudienceModelPolicyRequest"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteTrainingDataset":{ + "name":"DeleteTrainingDataset", + "http":{ + "method":"DELETE", + "requestUri":"/training-dataset/{trainingDatasetArn}", + "responseCode":200 + }, + "input":{"shape":"DeleteTrainingDatasetRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "GetAudienceGenerationJob":{ + "name":"GetAudienceGenerationJob", + "http":{ + "method":"GET", + "requestUri":"/audience-generation-job/{audienceGenerationJobArn}", + "responseCode":200 + }, + "input":{"shape":"GetAudienceGenerationJobRequest"}, + "output":{"shape":"GetAudienceGenerationJobResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAudienceModel":{ + "name":"GetAudienceModel", + "http":{ + "method":"GET", + "requestUri":"/audience-model/{audienceModelArn}", + "responseCode":200 + }, + "input":{"shape":"GetAudienceModelRequest"}, + "output":{"shape":"GetAudienceModelResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetConfiguredAudienceModel":{ + "name":"GetConfiguredAudienceModel", + "http":{ + "method":"GET", + "requestUri":"/configured-audience-model/{configuredAudienceModelArn}", + "responseCode":200 + }, + "input":{"shape":"GetConfiguredAudienceModelRequest"}, + "output":{"shape":"GetConfiguredAudienceModelResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetConfiguredAudienceModelPolicy":{ + "name":"GetConfiguredAudienceModelPolicy", + "http":{ + "method":"GET", + "requestUri":"/configured-audience-model/{configuredAudienceModelArn}/policy", + "responseCode":200 + }, + "input":{"shape":"GetConfiguredAudienceModelPolicyRequest"}, + "output":{"shape":"GetConfiguredAudienceModelPolicyResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetTrainingDataset":{ + "name":"GetTrainingDataset", + "http":{ + "method":"GET", + "requestUri":"/training-dataset/{trainingDatasetArn}", + "responseCode":200 + }, + "input":{"shape":"GetTrainingDatasetRequest"}, + "output":{"shape":"GetTrainingDatasetResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAudienceExportJobs":{ + "name":"ListAudienceExportJobs", + "http":{ + "method":"GET", + "requestUri":"/audience-export-job", + "responseCode":200 + }, + "input":{"shape":"ListAudienceExportJobsRequest"}, + "output":{"shape":"ListAudienceExportJobsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListAudienceGenerationJobs":{ + "name":"ListAudienceGenerationJobs", + "http":{ + "method":"GET", + "requestUri":"/audience-generation-job", + "responseCode":200 + }, + "input":{"shape":"ListAudienceGenerationJobsRequest"}, + "output":{"shape":"ListAudienceGenerationJobsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListAudienceModels":{ + "name":"ListAudienceModels", + "http":{ + "method":"GET", + "requestUri":"/audience-model", + "responseCode":200 + }, + "input":{"shape":"ListAudienceModelsRequest"}, + "output":{"shape":"ListAudienceModelsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListConfiguredAudienceModels":{ + "name":"ListConfiguredAudienceModels", + "http":{ + "method":"GET", + "requestUri":"/configured-audience-model", + "responseCode":200 + }, + "input":{"shape":"ListConfiguredAudienceModelsRequest"}, + "output":{"shape":"ListConfiguredAudienceModelsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListTrainingDatasets":{ + "name":"ListTrainingDatasets", + "http":{ + "method":"GET", + "requestUri":"/training-dataset", + "responseCode":200 + }, + "input":{"shape":"ListTrainingDatasetsRequest"}, + "output":{"shape":"ListTrainingDatasetsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "PutConfiguredAudienceModelPolicy":{ + "name":"PutConfiguredAudienceModelPolicy", + "http":{ + "method":"PUT", + "requestUri":"/configured-audience-model/{configuredAudienceModelArn}/policy", + "responseCode":200 + }, + "input":{"shape":"PutConfiguredAudienceModelPolicyRequest"}, + "output":{"shape":"PutConfiguredAudienceModelPolicyResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "StartAudienceExportJob":{ + "name":"StartAudienceExportJob", + "http":{ + "method":"POST", + "requestUri":"/audience-export-job", + "responseCode":200 + }, + "input":{"shape":"StartAudienceExportJobRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "StartAudienceGenerationJob":{ + "name":"StartAudienceGenerationJob", + "http":{ + "method":"POST", + "requestUri":"/audience-generation-job", + "responseCode":200 + }, + "input":{"shape":"StartAudienceGenerationJobRequest"}, + "output":{"shape":"StartAudienceGenerationJobResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateConfiguredAudienceModel":{ + "name":"UpdateConfiguredAudienceModel", + "http":{ + "method":"PATCH", + "requestUri":"/configured-audience-model/{configuredAudienceModelArn}", + "responseCode":200 + }, + "input":{"shape":"UpdateConfiguredAudienceModelRequest"}, + "output":{"shape":"UpdateConfiguredAudienceModelResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "AccountId":{ + "type":"string", + "max":12, + "min":12, + "pattern":"^[0-9]{12}$" + }, + "AudienceDestination":{ + "type":"structure", + "required":["s3Destination"], + "members":{ + "s3Destination":{"shape":"S3ConfigMap"} + } + }, + "AudienceExportJobList":{ + "type":"list", + "member":{"shape":"AudienceExportJobSummary"} + }, + "AudienceExportJobStatus":{ + "type":"string", + "enum":[ + "CREATE_PENDING", + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "ACTIVE" + ] + }, + "AudienceExportJobSummary":{ + "type":"structure", + "required":[ + "audienceGenerationJobArn", + "audienceSize", + "createTime", + "name", + "status", + "updateTime" + ], + "members":{ + "audienceGenerationJobArn":{"shape":"AudienceGenerationJobArn"}, + "audienceSize":{"shape":"AudienceSize"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "outputLocation":{"shape":"S3Path"}, + "status":{"shape":"AudienceExportJobStatus"}, + "statusDetails":{"shape":"StatusDetails"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "AudienceGenerationJobArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:audience-generation-job/[-a-zA-Z0-9_/.]+$" + }, + "AudienceGenerationJobDataSource":{ + "type":"structure", + "required":[ + "dataSource", + "roleArn" + ], + "members":{ + "dataSource":{"shape":"S3ConfigMap"}, + "roleArn":{"shape":"IamRoleArn"} + } + }, + "AudienceGenerationJobList":{ + "type":"list", + "member":{"shape":"AudienceGenerationJobSummary"} + }, + "AudienceGenerationJobStatus":{ + "type":"string", + "enum":[ + "CREATE_PENDING", + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "ACTIVE", + "DELETE_PENDING", + "DELETE_IN_PROGRESS", + "DELETE_FAILED" + ] + }, + "AudienceGenerationJobSummary":{ + "type":"structure", + "required":[ + "audienceGenerationJobArn", + "configuredAudienceModelArn", + "createTime", + "name", + "status", + "updateTime" + ], + "members":{ + "audienceGenerationJobArn":{"shape":"AudienceGenerationJobArn"}, + "collaborationId":{"shape":"UUID"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "startedBy":{"shape":"AccountId"}, + "status":{"shape":"AudienceGenerationJobStatus"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "AudienceModelArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:audience-model/[-a-zA-Z0-9_/.]+$" + }, + "AudienceModelList":{ + "type":"list", + "member":{"shape":"AudienceModelSummary"} + }, + "AudienceModelMetric":{ + "type":"structure", + "required":[ + "forTopKItemPredictions", + "type", + "value" + ], + "members":{ + "forTopKItemPredictions":{"shape":"Integer"}, + "type":{"shape":"AudienceModelMetricType"}, + "value":{"shape":"Double"} + } + }, + "AudienceModelMetricType":{ + "type":"string", + "enum":[ + "NORMALIZED_DISCOUNTED_CUMULATIVE_GAIN", + "MEAN_RECIPROCAL_RANK", + "PRECISION", + "RECALL" + ] + }, + "AudienceModelMetrics":{ + "type":"list", + "member":{"shape":"AudienceModelMetric"} + }, + "AudienceModelStatus":{ + "type":"string", + "enum":[ + "CREATE_PENDING", + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "ACTIVE", + "DELETE_PENDING", + "DELETE_IN_PROGRESS", + "DELETE_FAILED" + ] + }, + "AudienceModelSummary":{ + "type":"structure", + "required":[ + "audienceModelArn", + "createTime", + "name", + "status", + "trainingDatasetArn", + "updateTime" + ], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "status":{"shape":"AudienceModelStatus"}, + "trainingDatasetArn":{"shape":"TrainingDatasetArn"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "AudienceQualityMetrics":{ + "type":"structure", + "required":["relevanceMetrics"], + "members":{ + "relevanceMetrics":{"shape":"RelevanceMetrics"} + } + }, + "AudienceSize":{ + "type":"structure", + "required":[ + "type", + "value" + ], + "members":{ + "type":{"shape":"AudienceSizeType"}, + "value":{"shape":"AudienceSizeValue"} + } + }, + "AudienceSizeBins":{ + "type":"list", + "member":{"shape":"AudienceSizeValue"}, + "max":25, + "min":1 + }, + "AudienceSizeConfig":{ + "type":"structure", + "required":[ + "audienceSizeBins", + "audienceSizeType" + ], + "members":{ + "audienceSizeBins":{"shape":"AudienceSizeBins"}, + "audienceSizeType":{"shape":"AudienceSizeType"} + } + }, + "AudienceSizeType":{ + "type":"string", + "enum":[ + "ABSOLUTE", + "PERCENTAGE" + ] + }, + "AudienceSizeValue":{ + "type":"integer", + "box":true, + "max":20000000, + "min":1 + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "ColumnName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$" + }, + "ColumnSchema":{ + "type":"structure", + "required":[ + "columnName", + "columnTypes" + ], + "members":{ + "columnName":{"shape":"ColumnName"}, + "columnTypes":{"shape":"ColumnTypeList"} + } + }, + "ColumnType":{ + "type":"string", + "enum":[ + "USER_ID", + "ITEM_ID", + "TIMESTAMP", + "CATEGORICAL_FEATURE", + "NUMERICAL_FEATURE" + ] + }, + "ColumnTypeList":{ + "type":"list", + "member":{"shape":"ColumnType"}, + "max":1, + "min":1 + }, + "ConfiguredAudienceModelArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:configured-audience-model/[-a-zA-Z0-9_/.]+$" + }, + "ConfiguredAudienceModelList":{ + "type":"list", + "member":{"shape":"ConfiguredAudienceModelSummary"} + }, + "ConfiguredAudienceModelOutputConfig":{ + "type":"structure", + "required":[ + "destination", + "roleArn" + ], + "members":{ + "destination":{"shape":"AudienceDestination"}, + "roleArn":{"shape":"IamRoleArn"} + } + }, + "ConfiguredAudienceModelStatus":{ + "type":"string", + "enum":["ACTIVE"] + }, + "ConfiguredAudienceModelSummary":{ + "type":"structure", + "required":[ + "audienceModelArn", + "configuredAudienceModelArn", + "createTime", + "name", + "outputConfig", + "status", + "updateTime" + ], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "outputConfig":{"shape":"ConfiguredAudienceModelOutputConfig"}, + "status":{"shape":"ConfiguredAudienceModelStatus"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CreateAudienceModelRequest":{ + "type":"structure", + "required":[ + "name", + "trainingDatasetArn" + ], + "members":{ + "description":{"shape":"ResourceDescription"}, + "kmsKeyArn":{"shape":"KmsKeyArn"}, + "name":{"shape":"NameString"}, + "tags":{"shape":"TagMap"}, + "trainingDataEndTime":{"shape":"SyntheticTimestamp_date_time"}, + "trainingDataStartTime":{"shape":"SyntheticTimestamp_date_time"}, + "trainingDatasetArn":{"shape":"TrainingDatasetArn"} + } + }, + "CreateAudienceModelResponse":{ + "type":"structure", + "required":["audienceModelArn"], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"} + } + }, + "CreateConfiguredAudienceModelRequest":{ + "type":"structure", + "required":[ + "audienceModelArn", + "name", + "outputConfig", + "sharedAudienceMetrics" + ], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"}, + "audienceSizeConfig":{"shape":"AudienceSizeConfig"}, + "childResourceTagOnCreatePolicy":{"shape":"TagOnCreatePolicy"}, + "description":{"shape":"ResourceDescription"}, + "minMatchingSeedSize":{"shape":"MinMatchingSeedSize"}, + "name":{"shape":"NameString"}, + "outputConfig":{"shape":"ConfiguredAudienceModelOutputConfig"}, + "sharedAudienceMetrics":{"shape":"MetricsList"}, + "tags":{"shape":"TagMap"} + } + }, + "CreateConfiguredAudienceModelResponse":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"} + } + }, + "CreateTrainingDatasetRequest":{ + "type":"structure", + "required":[ + "name", + "roleArn", + "trainingData" + ], + "members":{ + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "roleArn":{"shape":"IamRoleArn"}, + "tags":{"shape":"TagMap"}, + "trainingData":{"shape":"CreateTrainingDatasetRequestTrainingDataList"} + } + }, + "CreateTrainingDatasetRequestTrainingDataList":{ + "type":"list", + "member":{"shape":"Dataset"}, + "max":1, + "min":1 + }, + "CreateTrainingDatasetResponse":{ + "type":"structure", + "required":["trainingDatasetArn"], + "members":{ + "trainingDatasetArn":{"shape":"TrainingDatasetArn"} + } + }, + "DataSource":{ + "type":"structure", + "required":["glueDataSource"], + "members":{ + "glueDataSource":{"shape":"GlueDataSource"} + } + }, + "Dataset":{ + "type":"structure", + "required":[ + "inputConfig", + "type" + ], + "members":{ + "inputConfig":{"shape":"DatasetInputConfig"}, + "type":{"shape":"DatasetType"} + } + }, + "DatasetInputConfig":{ + "type":"structure", + "required":[ + "dataSource", + "schema" + ], + "members":{ + "dataSource":{"shape":"DataSource"}, + "schema":{"shape":"DatasetInputConfigSchemaList"} + } + }, + "DatasetInputConfigSchemaList":{ + "type":"list", + "member":{"shape":"ColumnSchema"}, + "max":100, + "min":1 + }, + "DatasetList":{ + "type":"list", + "member":{"shape":"Dataset"} + }, + "DatasetType":{ + "type":"string", + "enum":["INTERACTIONS"] + }, + "DeleteAudienceGenerationJobRequest":{ + "type":"structure", + "required":["audienceGenerationJobArn"], + "members":{ + "audienceGenerationJobArn":{ + "shape":"AudienceGenerationJobArn", + "location":"uri", + "locationName":"audienceGenerationJobArn" + } + } + }, + "DeleteAudienceModelRequest":{ + "type":"structure", + "required":["audienceModelArn"], + "members":{ + "audienceModelArn":{ + "shape":"AudienceModelArn", + "location":"uri", + "locationName":"audienceModelArn" + } + } + }, + "DeleteConfiguredAudienceModelPolicyRequest":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"uri", + "locationName":"configuredAudienceModelArn" + } + } + }, + "DeleteConfiguredAudienceModelRequest":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"uri", + "locationName":"configuredAudienceModelArn" + } + } + }, + "DeleteTrainingDatasetRequest":{ + "type":"structure", + "required":["trainingDatasetArn"], + "members":{ + "trainingDatasetArn":{ + "shape":"TrainingDatasetArn", + "location":"uri", + "locationName":"trainingDatasetArn" + } + } + }, + "Double":{ + "type":"double", + "box":true + }, + "GetAudienceGenerationJobRequest":{ + "type":"structure", + "required":["audienceGenerationJobArn"], + "members":{ + "audienceGenerationJobArn":{ + "shape":"AudienceGenerationJobArn", + "location":"uri", + "locationName":"audienceGenerationJobArn" + } + } + }, + "GetAudienceGenerationJobResponse":{ + "type":"structure", + "required":[ + "audienceGenerationJobArn", + "configuredAudienceModelArn", + "createTime", + "name", + "status", + "updateTime" + ], + "members":{ + "audienceGenerationJobArn":{"shape":"AudienceGenerationJobArn"}, + "collaborationId":{"shape":"UUID"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "includeSeedInOutput":{"shape":"Boolean"}, + "metrics":{"shape":"AudienceQualityMetrics"}, + "name":{"shape":"NameString"}, + "seedAudience":{"shape":"AudienceGenerationJobDataSource"}, + "startedBy":{"shape":"AccountId"}, + "status":{"shape":"AudienceGenerationJobStatus"}, + "statusDetails":{"shape":"StatusDetails"}, + "tags":{"shape":"TagMap"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "GetAudienceModelRequest":{ + "type":"structure", + "required":["audienceModelArn"], + "members":{ + "audienceModelArn":{ + "shape":"AudienceModelArn", + "location":"uri", + "locationName":"audienceModelArn" + } + } + }, + "GetAudienceModelResponse":{ + "type":"structure", + "required":[ + "audienceModelArn", + "createTime", + "name", + "status", + "trainingDatasetArn", + "updateTime" + ], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "kmsKeyArn":{"shape":"KmsKeyArn"}, + "metrics":{"shape":"AudienceModelMetrics"}, + "name":{"shape":"NameString"}, + "status":{"shape":"AudienceModelStatus"}, + "statusDetails":{"shape":"StatusDetails"}, + "tags":{"shape":"TagMap"}, + "trainingDataEndTime":{"shape":"SyntheticTimestamp_date_time"}, + "trainingDataStartTime":{"shape":"SyntheticTimestamp_date_time"}, + "trainingDatasetArn":{"shape":"TrainingDatasetArn"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "GetConfiguredAudienceModelPolicyRequest":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"uri", + "locationName":"configuredAudienceModelArn" + } + } + }, + "GetConfiguredAudienceModelPolicyResponse":{ + "type":"structure", + "required":[ + "configuredAudienceModelArn", + "configuredAudienceModelPolicy", + "policyHash" + ], + "members":{ + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "configuredAudienceModelPolicy":{"shape":"ResourcePolicy"}, + "policyHash":{"shape":"Hash"} + } + }, + "GetConfiguredAudienceModelRequest":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"uri", + "locationName":"configuredAudienceModelArn" + } + } + }, + "GetConfiguredAudienceModelResponse":{ + "type":"structure", + "required":[ + "audienceModelArn", + "configuredAudienceModelArn", + "createTime", + "name", + "outputConfig", + "sharedAudienceMetrics", + "status", + "updateTime" + ], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"}, + "audienceSizeConfig":{"shape":"AudienceSizeConfig"}, + "childResourceTagOnCreatePolicy":{"shape":"TagOnCreatePolicy"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "minMatchingSeedSize":{"shape":"MinMatchingSeedSize"}, + "name":{"shape":"NameString"}, + "outputConfig":{"shape":"ConfiguredAudienceModelOutputConfig"}, + "sharedAudienceMetrics":{"shape":"MetricsList"}, + "status":{"shape":"ConfiguredAudienceModelStatus"}, + "tags":{"shape":"TagMap"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "GetTrainingDatasetRequest":{ + "type":"structure", + "required":["trainingDatasetArn"], + "members":{ + "trainingDatasetArn":{ + "shape":"TrainingDatasetArn", + "location":"uri", + "locationName":"trainingDatasetArn" + } + } + }, + "GetTrainingDatasetResponse":{ + "type":"structure", + "required":[ + "createTime", + "name", + "roleArn", + "status", + "trainingData", + "trainingDatasetArn", + "updateTime" + ], + "members":{ + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "roleArn":{"shape":"IamRoleArn"}, + "status":{"shape":"TrainingDatasetStatus"}, + "tags":{"shape":"TagMap"}, + "trainingData":{"shape":"DatasetList"}, + "trainingDatasetArn":{"shape":"TrainingDatasetArn"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "GlueDataSource":{ + "type":"structure", + "required":[ + "databaseName", + "tableName" + ], + "members":{ + "catalogId":{"shape":"AccountId"}, + "databaseName":{"shape":"GlueDatabaseName"}, + "tableName":{"shape":"GlueTableName"} + } + }, + "GlueDatabaseName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[a-zA-Z0-9_](([a-zA-Z0-9_]+-)*([a-zA-Z0-9_]+))?$" + }, + "GlueTableName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$" + }, + "Hash":{ + "type":"string", + "max":128, + "min":64, + "pattern":"^[0-9a-f]+$" + }, + "IamRoleArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:iam::[0-9]{12}:role/.+$" + }, + "Integer":{ + "type":"integer", + "box":true + }, + "KmsKeyArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:kms:[-a-z0-9]+:[0-9]{12}:key/.+$" + }, + "ListAudienceExportJobsRequest":{ + "type":"structure", + "members":{ + "audienceGenerationJobArn":{ + "shape":"AudienceGenerationJobArn", + "location":"querystring", + "locationName":"audienceGenerationJobArn" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListAudienceExportJobsResponse":{ + "type":"structure", + "required":["audienceExportJobs"], + "members":{ + "audienceExportJobs":{"shape":"AudienceExportJobList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAudienceGenerationJobsRequest":{ + "type":"structure", + "members":{ + "collaborationId":{ + "shape":"UUID", + "location":"querystring", + "locationName":"collaborationId" + }, + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"querystring", + "locationName":"configuredAudienceModelArn" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListAudienceGenerationJobsResponse":{ + "type":"structure", + "required":["audienceGenerationJobs"], + "members":{ + "audienceGenerationJobs":{"shape":"AudienceGenerationJobList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAudienceModelsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListAudienceModelsResponse":{ + "type":"structure", + "required":["audienceModels"], + "members":{ + "audienceModels":{"shape":"AudienceModelList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListConfiguredAudienceModelsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListConfiguredAudienceModelsResponse":{ + "type":"structure", + "required":["configuredAudienceModels"], + "members":{ + "configuredAudienceModels":{"shape":"ConfiguredAudienceModelList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"TaggableArn", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "required":["tags"], + "members":{ + "tags":{"shape":"TagMap"} + } + }, + "ListTrainingDatasetsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListTrainingDatasetsResponse":{ + "type":"structure", + "required":["trainingDatasets"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "trainingDatasets":{"shape":"TrainingDatasetList"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MetricsList":{ + "type":"list", + "member":{"shape":"SharedAudienceMetrics"}, + "max":1, + "min":1 + }, + "MinMatchingSeedSize":{ + "type":"integer", + "box":true, + "max":500000, + "min":25 + }, + "NameString":{ + "type":"string", + "max":63, + "min":1, + "pattern":"^(?!\\s*$)[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*$" + }, + "NextToken":{ + "type":"string", + "max":10240, + "min":1 + }, + "PolicyExistenceCondition":{ + "type":"string", + "enum":[ + "POLICY_MUST_EXIST", + "POLICY_MUST_NOT_EXIST" + ] + }, + "PutConfiguredAudienceModelPolicyRequest":{ + "type":"structure", + "required":[ + "configuredAudienceModelArn", + "configuredAudienceModelPolicy" + ], + "members":{ + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"uri", + "locationName":"configuredAudienceModelArn" + }, + "configuredAudienceModelPolicy":{"shape":"ResourcePolicy"}, + "policyExistenceCondition":{"shape":"PolicyExistenceCondition"}, + "previousPolicyHash":{"shape":"Hash"} + } + }, + "PutConfiguredAudienceModelPolicyResponse":{ + "type":"structure", + "required":[ + "configuredAudienceModelPolicy", + "policyHash" + ], + "members":{ + "configuredAudienceModelPolicy":{"shape":"ResourcePolicy"}, + "policyHash":{"shape":"Hash"} + } + }, + "RelevanceMetric":{ + "type":"structure", + "required":["audienceSize"], + "members":{ + "audienceSize":{"shape":"AudienceSize"}, + "score":{"shape":"Double"} + } + }, + "RelevanceMetrics":{ + "type":"list", + "member":{"shape":"RelevanceMetric"} + }, + "ResourceDescription":{ + "type":"string", + "max":255, + "min":0, + "pattern":"^[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t\\r\\n]*$" + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResourcePolicy":{ + "type":"string", + "max":20480, + "min":1 + }, + "S3ConfigMap":{ + "type":"structure", + "required":["s3Uri"], + "members":{ + "s3Uri":{"shape":"S3Path"} + } + }, + "S3Path":{ + "type":"string", + "max":1285, + "min":1, + "pattern":"^s3://.+$" + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "SharedAudienceMetrics":{ + "type":"string", + "enum":[ + "ALL", + "NONE" + ] + }, + "StartAudienceExportJobRequest":{ + "type":"structure", + "required":[ + "audienceGenerationJobArn", + "audienceSize", + "name" + ], + "members":{ + "audienceGenerationJobArn":{"shape":"AudienceGenerationJobArn"}, + "audienceSize":{"shape":"AudienceSize"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"} + } + }, + "StartAudienceGenerationJobRequest":{ + "type":"structure", + "required":[ + "configuredAudienceModelArn", + "name", + "seedAudience" + ], + "members":{ + "collaborationId":{"shape":"UUID"}, + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"}, + "description":{"shape":"ResourceDescription"}, + "includeSeedInOutput":{"shape":"Boolean"}, + "name":{"shape":"NameString"}, + "seedAudience":{"shape":"AudienceGenerationJobDataSource"}, + "tags":{"shape":"TagMap"} + } + }, + "StartAudienceGenerationJobResponse":{ + "type":"structure", + "required":["audienceGenerationJobArn"], + "members":{ + "audienceGenerationJobArn":{"shape":"AudienceGenerationJobArn"} + } + }, + "StatusDetails":{ + "type":"structure", + "members":{ + "message":{"shape":"String"}, + "statusCode":{"shape":"String"} + } + }, + "String":{"type":"string"}, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(?!aws:).{1,128}$" + }, + "TagKeys":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":200, + "min":0 + }, + "TagOnCreatePolicy":{ + "type":"string", + "enum":[ + "FROM_PARENT_RESOURCE", + "NONE" + ] + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"TaggableArn", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"TagMap"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "TaggableArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:(training-dataset|audience-model|configured-audience-model|audience-generation-job)/[-a-zA-Z0-9_/.]+$" + }, + "TrainingDatasetArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:training-dataset/[-a-zA-Z0-9_/.]+$" + }, + "TrainingDatasetList":{ + "type":"list", + "member":{"shape":"TrainingDatasetSummary"} + }, + "TrainingDatasetStatus":{ + "type":"string", + "enum":["ACTIVE"] + }, + "TrainingDatasetSummary":{ + "type":"structure", + "required":[ + "createTime", + "name", + "status", + "trainingDatasetArn", + "updateTime" + ], + "members":{ + "createTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"ResourceDescription"}, + "name":{"shape":"NameString"}, + "status":{"shape":"TrainingDatasetStatus"}, + "trainingDatasetArn":{"shape":"TrainingDatasetArn"}, + "updateTime":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "UUID":{ + "type":"string", + "max":36, + "min":36, + "pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"TaggableArn", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeys", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateConfiguredAudienceModelRequest":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "audienceModelArn":{"shape":"AudienceModelArn"}, + "audienceSizeConfig":{"shape":"AudienceSizeConfig"}, + "configuredAudienceModelArn":{ + "shape":"ConfiguredAudienceModelArn", + "location":"uri", + "locationName":"configuredAudienceModelArn" + }, + "description":{"shape":"ResourceDescription"}, + "minMatchingSeedSize":{"shape":"MinMatchingSeedSize"}, + "outputConfig":{"shape":"ConfiguredAudienceModelOutputConfig"}, + "sharedAudienceMetrics":{"shape":"MetricsList"} + } + }, + "UpdateConfiguredAudienceModelResponse":{ + "type":"structure", + "required":["configuredAudienceModelArn"], + "members":{ + "configuredAudienceModelArn":{"shape":"ConfiguredAudienceModelArn"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,882 @@ +{ + "version": "2.0", + "service": "

Welcome to the Amazon Web Services Clean Rooms ML API Reference.

Amazon Web Services Clean Rooms ML provides a privacy-enhancing method for two parties to identify similar users in their data without the need to share their data with each other. The first party brings the training data to Clean Rooms so that they can create and configure an audience model (lookalike model) and associate it with a collaboration. The second party then brings their seed data to Clean Rooms and generates an audience (lookalike segment) that resembles the training data.

To learn more about Amazon Web Services Clean Rooms ML concepts, procedures, and best practices, see the Clean Rooms User Guide.

To learn more about SQL commands, functions, and conditions supported in Clean Rooms, see the Clean Rooms SQL Reference.

", + "operations": { + "CreateAudienceModel": "

Defines the information necessary to create an audience model. An audience model is a machine learning model that Clean Rooms ML trains to measure similarity between users. Clean Rooms ML manages training and storing the audience model. The audience model can be used in multiple calls to the StartAudienceGenerationJob API.

", + "CreateConfiguredAudienceModel": "

Defines the information necessary to create a configured audience model.

", + "CreateTrainingDataset": "

Defines the information necessary to create a training dataset, or seed audience. In Clean Rooms ML, the TrainingDataset is metadata that points to a Glue table, which is read only during AudienceModel creation.

", + "DeleteAudienceGenerationJob": "

Deletes the specified audience generation job, and removes all data associated with the job.

", + "DeleteAudienceModel": "

Specifies an audience model that you want to delete. You can't delete an audience model if there are any configured audience models that depend on the audience model.

", + "DeleteConfiguredAudienceModel": "

Deletes the specified configured audience model. You can't delete a configured audience model if there are any lookalike models that use the configured audience model. If you delete a configured audience model, it will be removed from any collaborations that it is associated to.

", + "DeleteConfiguredAudienceModelPolicy": "

Deletes the specified configured audience model policy.

", + "DeleteTrainingDataset": "

Specifies a training dataset that you want to delete. You can't delete a training dataset if there are any audience models that depend on the training dataset. In Clean Rooms ML, the TrainingDataset is metadata that points to a Glue table, which is read only during AudienceModel creation. This action deletes the metadata.

", + "GetAudienceGenerationJob": "

Returns information about an audience generation job.

", + "GetAudienceModel": "

Returns information about an audience model

", + "GetConfiguredAudienceModel": "

Returns information about a specified configured audience model.

", + "GetConfiguredAudienceModelPolicy": "

Returns information about a configured audience model policy.

", + "GetTrainingDataset": "

Returns information about a training dataset.

", + "ListAudienceExportJobs": "

Returns a list of the audience export jobs.

", + "ListAudienceGenerationJobs": "

Returns a list of audience generation jobs.

", + "ListAudienceModels": "

Returns a list of audience models.

", + "ListConfiguredAudienceModels": "

Returns a list of the configured audience models.

", + "ListTagsForResource": "

Returns a list of tags for a provided resource.

", + "ListTrainingDatasets": "

Returns a list of training datasets.

", + "PutConfiguredAudienceModelPolicy": "

Create or update the resource policy for a configured audience model.

", + "StartAudienceExportJob": "

Export an audience of a specified size after you have generated an audience.

", + "StartAudienceGenerationJob": "

Information necessary to start the audience generation job.

", + "TagResource": "

Adds metadata tags to a specified resource.

", + "UntagResource": "

Removes metadata tags from a specified resource.

", + "UpdateConfiguredAudienceModel": "

Provides the information necessary to update a configured audience model. Updates that impact audience generation jobs take effect when a new job starts, but do not impact currently running jobs.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "AccountId": { + "base": null, + "refs": { + "AudienceGenerationJobSummary$startedBy": "

The AWS Account that submitted the job.

", + "GetAudienceGenerationJobResponse$startedBy": "

The AWS account that started this audience generation job.

", + "GlueDataSource$catalogId": "

The Glue catalog that contains the training data.

" + } + }, + "AudienceDestination": { + "base": "

Defines the Amazon S3 bucket where the configured audience is stored.

", + "refs": { + "ConfiguredAudienceModelOutputConfig$destination": null + } + }, + "AudienceExportJobList": { + "base": null, + "refs": { + "ListAudienceExportJobsResponse$audienceExportJobs": "

The audience export jobs that match the request.

" + } + }, + "AudienceExportJobStatus": { + "base": null, + "refs": { + "AudienceExportJobSummary$status": "

The status of the audience export job.

" + } + }, + "AudienceExportJobSummary": { + "base": "

Provides information about the audience export job.

", + "refs": { + "AudienceExportJobList$member": null + } + }, + "AudienceGenerationJobArn": { + "base": null, + "refs": { + "AudienceExportJobSummary$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job that was exported.

", + "AudienceGenerationJobSummary$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job.

", + "DeleteAudienceGenerationJobRequest$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job that you want to delete.

", + "GetAudienceGenerationJobRequest$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job that you are interested in.

", + "GetAudienceGenerationJobResponse$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job.

", + "ListAudienceExportJobsRequest$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job that you are interested in.

", + "StartAudienceExportJobRequest$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job that you want to export.

", + "StartAudienceGenerationJobResponse$audienceGenerationJobArn": "

The Amazon Resource Name (ARN) of the audience generation job.

" + } + }, + "AudienceGenerationJobDataSource": { + "base": "

Defines the Amazon S3 bucket where the training data for the configured audience is stored.

", + "refs": { + "GetAudienceGenerationJobResponse$seedAudience": "

The seed audience that was used for this audience generation job. This field will be null if the account calling the API is the account that started this audience generation job.

", + "StartAudienceGenerationJobRequest$seedAudience": "

The seed audience that is used to generate the audience.

" + } + }, + "AudienceGenerationJobList": { + "base": null, + "refs": { + "ListAudienceGenerationJobsResponse$audienceGenerationJobs": "

The audience generation jobs that match the request.

" + } + }, + "AudienceGenerationJobStatus": { + "base": null, + "refs": { + "AudienceGenerationJobSummary$status": "

The status of the audience generation job.

", + "GetAudienceGenerationJobResponse$status": "

The status of the audience generation job.

" + } + }, + "AudienceGenerationJobSummary": { + "base": "

Provides information about the configured audience generation job.

", + "refs": { + "AudienceGenerationJobList$member": null + } + }, + "AudienceModelArn": { + "base": null, + "refs": { + "AudienceModelSummary$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model.

", + "ConfiguredAudienceModelSummary$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model that was used to create the configured audience model.

", + "CreateAudienceModelResponse$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model.

", + "CreateConfiguredAudienceModelRequest$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model to use for the configured audience model.

", + "DeleteAudienceModelRequest$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model that you want to delete.

", + "GetAudienceModelRequest$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model that you are interested in.

", + "GetAudienceModelResponse$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model.

", + "GetConfiguredAudienceModelResponse$audienceModelArn": "

The Amazon Resource Name (ARN) of the audience model used for this configured audience model.

", + "UpdateConfiguredAudienceModelRequest$audienceModelArn": "

The Amazon Resource Name (ARN) of the new audience model that you want to use.

" + } + }, + "AudienceModelList": { + "base": null, + "refs": { + "ListAudienceModelsResponse$audienceModels": "

The audience models that match the request.

" + } + }, + "AudienceModelMetric": { + "base": "

The audience model metrics.

", + "refs": { + "AudienceModelMetrics$member": null + } + }, + "AudienceModelMetricType": { + "base": null, + "refs": { + "AudienceModelMetric$type": "

The audience model metric.

" + } + }, + "AudienceModelMetrics": { + "base": null, + "refs": { + "GetAudienceModelResponse$metrics": "

Accuracy metrics for the model.

" + } + }, + "AudienceModelStatus": { + "base": null, + "refs": { + "AudienceModelSummary$status": "

The status of the audience model.

", + "GetAudienceModelResponse$status": "

The status of the audience model.

" + } + }, + "AudienceModelSummary": { + "base": "

Information about the audience model.

", + "refs": { + "AudienceModelList$member": null + } + }, + "AudienceQualityMetrics": { + "base": "

Metrics that describe the quality of the generated audience.

", + "refs": { + "GetAudienceGenerationJobResponse$metrics": "

The relevance scores for different audience sizes.

" + } + }, + "AudienceSize": { + "base": "

The size of the generated audience. Must match one of the sizes in the configured audience model.

", + "refs": { + "AudienceExportJobSummary$audienceSize": null, + "RelevanceMetric$audienceSize": null, + "StartAudienceExportJobRequest$audienceSize": null + } + }, + "AudienceSizeBins": { + "base": null, + "refs": { + "AudienceSizeConfig$audienceSizeBins": "

An array of the different audience output sizes.

" + } + }, + "AudienceSizeConfig": { + "base": "

Configure the list of audience output sizes that can be created. A request to StartAudienceGenerationJob that uses this configured audience model must have an audienceSize selected from this list. You can use the ABSOLUTE AudienceSize to configure out audience sizes using the count of identifiers in the output. You can use the Percentage AudienceSize to configure sizes in the range 1-100 percent.

", + "refs": { + "CreateConfiguredAudienceModelRequest$audienceSizeConfig": "

Configure the list of output sizes of audiences that can be created using this configured audience model. A request to StartAudienceGenerationJob that uses this configured audience model must have an audienceSize selected from this list. You can use the ABSOLUTE AudienceSize to configure out audience sizes using the count of identifiers in the output. You can use the Percentage AudienceSize to configure sizes in the range 1-100 percent.

", + "GetConfiguredAudienceModelResponse$audienceSizeConfig": "

The list of output sizes of audiences that can be created using this configured audience model. A request to StartAudienceGenerationJob that uses this configured audience model must have an audienceSize selected from this list. You can use the ABSOLUTE AudienceSize to configure out audience sizes using the count of identifiers in the output. You can use the Percentage AudienceSize to configure sizes in the range 1-100 percent.

", + "UpdateConfiguredAudienceModelRequest$audienceSizeConfig": "

The new audience size configuration.

" + } + }, + "AudienceSizeType": { + "base": null, + "refs": { + "AudienceSize$type": "

Whether the audience size is defined in absolute terms or as a percentage. You can use the ABSOLUTE AudienceSize to configure out audience sizes using the count of identifiers in the output. You can use the Percentage AudienceSize to configure sizes in the range 1-100 percent.

", + "AudienceSizeConfig$audienceSizeType": "

Whether the audience output sizes are defined as an absolute number or a percentage.

" + } + }, + "AudienceSizeValue": { + "base": null, + "refs": { + "AudienceSize$value": "

Specify an audience size value.

", + "AudienceSizeBins$member": null + } + }, + "Boolean": { + "base": null, + "refs": { + "GetAudienceGenerationJobResponse$includeSeedInOutput": "

Configure whether the seed users are included in the output audience. By default, Clean Rooms ML removes seed users from the output audience. If you specify TRUE, the seed users will appear first in the output. Clean Rooms ML does not explicitly reveal whether a user was in the seed, but the recipient of the audience will know that the first minimumSeedSize count of users are from the seed.

", + "StartAudienceGenerationJobRequest$includeSeedInOutput": "

Whether the seed audience is included in the audience generation output.

" + } + }, + "ColumnName": { + "base": null, + "refs": { + "ColumnSchema$columnName": "

The name of a column.

" + } + }, + "ColumnSchema": { + "base": "

Metadata for a column.

", + "refs": { + "DatasetInputConfigSchemaList$member": null + } + }, + "ColumnType": { + "base": null, + "refs": { + "ColumnTypeList$member": null + } + }, + "ColumnTypeList": { + "base": null, + "refs": { + "ColumnSchema$columnTypes": "

The data type of column.

" + } + }, + "ConfiguredAudienceModelArn": { + "base": null, + "refs": { + "AudienceGenerationJobSummary$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that was used for this audience generation job.

", + "ConfiguredAudienceModelSummary$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that you are interested in.

", + "CreateConfiguredAudienceModelResponse$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model.

", + "DeleteConfiguredAudienceModelPolicyRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model policy that you want to delete.

", + "DeleteConfiguredAudienceModelRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that you want to delete.

", + "GetAudienceGenerationJobResponse$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model used for this audience generation job.

", + "GetConfiguredAudienceModelPolicyRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that you are interested in.

", + "GetConfiguredAudienceModelPolicyResponse$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model.

", + "GetConfiguredAudienceModelRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that you are interested in.

", + "GetConfiguredAudienceModelResponse$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model.

", + "ListAudienceGenerationJobsRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that was used for the audience generation jobs that you are interested in.

", + "PutConfiguredAudienceModelPolicyRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that the resource policy will govern.

", + "StartAudienceGenerationJobRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that is used for this audience generation job.

", + "UpdateConfiguredAudienceModelRequest$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that you want to update.

", + "UpdateConfiguredAudienceModelResponse$configuredAudienceModelArn": "

The Amazon Resource Name (ARN) of the configured audience model that was updated.

" + } + }, + "ConfiguredAudienceModelList": { + "base": null, + "refs": { + "ListConfiguredAudienceModelsResponse$configuredAudienceModels": "

The configured audience models.

" + } + }, + "ConfiguredAudienceModelOutputConfig": { + "base": "

Configuration information necessary for the configure audience model output.

", + "refs": { + "ConfiguredAudienceModelSummary$outputConfig": "

The output configuration of the configured audience model.

", + "CreateConfiguredAudienceModelRequest$outputConfig": "

Configure the Amazon S3 location and IAM Role for audiences created using this configured audience model. Each audience will have a unique location. The IAM Role must have s3:PutObject permission on the destination Amazon S3 location. If the destination is protected with Amazon S3 KMS-SSE, then the Role must also have the required KMS permissions.

", + "GetConfiguredAudienceModelResponse$outputConfig": "

The output configuration of the configured audience model

", + "UpdateConfiguredAudienceModelRequest$outputConfig": "

The new output configuration.

" + } + }, + "ConfiguredAudienceModelStatus": { + "base": null, + "refs": { + "ConfiguredAudienceModelSummary$status": "

The status of the configured audience model.

", + "GetConfiguredAudienceModelResponse$status": "

The status of the configured audience model.

" + } + }, + "ConfiguredAudienceModelSummary": { + "base": "

Information about the configured audience model.

", + "refs": { + "ConfiguredAudienceModelList$member": null + } + }, + "ConflictException": { + "base": "

A resource with that name already exists in this region.

", + "refs": { + } + }, + "CreateAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "CreateAudienceModelResponse": { + "base": null, + "refs": { + } + }, + "CreateConfiguredAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "CreateConfiguredAudienceModelResponse": { + "base": null, + "refs": { + } + }, + "CreateTrainingDatasetRequest": { + "base": null, + "refs": { + } + }, + "CreateTrainingDatasetRequestTrainingDataList": { + "base": null, + "refs": { + "CreateTrainingDatasetRequest$trainingData": "

An array of information that lists the Dataset objects, which specifies the dataset type and details on its location and schema. You must provide a role that has read access to these tables.

" + } + }, + "CreateTrainingDatasetResponse": { + "base": null, + "refs": { + } + }, + "DataSource": { + "base": "

Defines information about the Glue data source that contains the training data.

", + "refs": { + "DatasetInputConfig$dataSource": "

A DataSource object that specifies the Glue data source for the training data.

" + } + }, + "Dataset": { + "base": "

Defines where the training dataset is located, what type of data it contains, and how to access the data.

", + "refs": { + "CreateTrainingDatasetRequestTrainingDataList$member": null, + "DatasetList$member": null + } + }, + "DatasetInputConfig": { + "base": "

Defines the Glue data source and schema mapping information.

", + "refs": { + "Dataset$inputConfig": "

A DatasetInputConfig object that defines the data source and schema mapping.

" + } + }, + "DatasetInputConfigSchemaList": { + "base": null, + "refs": { + "DatasetInputConfig$schema": "

The schema information for the training data.

" + } + }, + "DatasetList": { + "base": null, + "refs": { + "GetTrainingDatasetResponse$trainingData": "

Metadata about the requested training data.

" + } + }, + "DatasetType": { + "base": null, + "refs": { + "Dataset$type": "

What type of information is found in the dataset.

" + } + }, + "DeleteAudienceGenerationJobRequest": { + "base": null, + "refs": { + } + }, + "DeleteAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "DeleteConfiguredAudienceModelPolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteConfiguredAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "DeleteTrainingDatasetRequest": { + "base": null, + "refs": { + } + }, + "Double": { + "base": null, + "refs": { + "AudienceModelMetric$value": "

The value of the audience model metric

", + "RelevanceMetric$score": "

The relevance score of the generated audience.

" + } + }, + "GetAudienceGenerationJobRequest": { + "base": null, + "refs": { + } + }, + "GetAudienceGenerationJobResponse": { + "base": null, + "refs": { + } + }, + "GetAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "GetAudienceModelResponse": { + "base": null, + "refs": { + } + }, + "GetConfiguredAudienceModelPolicyRequest": { + "base": null, + "refs": { + } + }, + "GetConfiguredAudienceModelPolicyResponse": { + "base": null, + "refs": { + } + }, + "GetConfiguredAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "GetConfiguredAudienceModelResponse": { + "base": null, + "refs": { + } + }, + "GetTrainingDatasetRequest": { + "base": null, + "refs": { + } + }, + "GetTrainingDatasetResponse": { + "base": null, + "refs": { + } + }, + "GlueDataSource": { + "base": "

Defines the Glue data source that contains the training data.

", + "refs": { + "DataSource$glueDataSource": "

A GlueDataSource object that defines the catalog ID, database name, and table name for the training data.

" + } + }, + "GlueDatabaseName": { + "base": null, + "refs": { + "GlueDataSource$databaseName": "

The Glue database that contains the training data.

" + } + }, + "GlueTableName": { + "base": null, + "refs": { + "GlueDataSource$tableName": "

The Glue table that contains the training data.

" + } + }, + "Hash": { + "base": null, + "refs": { + "GetConfiguredAudienceModelPolicyResponse$policyHash": "

A cryptographic hash of the contents of the policy used to prevent unexpected concurrent modification of the policy.

", + "PutConfiguredAudienceModelPolicyRequest$previousPolicyHash": "

A cryptographic hash of the contents of the policy used to prevent unexpected concurrent modification of the policy.

", + "PutConfiguredAudienceModelPolicyResponse$policyHash": "

A cryptographic hash of the contents of the policy used to prevent unexpected concurrent modification of the policy.

" + } + }, + "IamRoleArn": { + "base": null, + "refs": { + "AudienceGenerationJobDataSource$roleArn": "

The ARN of the IAM role that can read the Amazon S3 bucket where the training data is stored.

", + "ConfiguredAudienceModelOutputConfig$roleArn": "

The ARN of the IAM role that can write the Amazon S3 bucket.

", + "CreateTrainingDatasetRequest$roleArn": "

The ARN of the IAM role that Clean Rooms ML can assume to read the data referred to in the dataSource field of each dataset.

Passing a role across AWS accounts is not allowed. If you pass a role that isn't in your account, you get an AccessDeniedException error.

", + "GetTrainingDatasetResponse$roleArn": "

The IAM role used to read the training data.

" + } + }, + "Integer": { + "base": null, + "refs": { + "AudienceModelMetric$forTopKItemPredictions": "

The number of users that were used to generate these model metrics.

" + } + }, + "KmsKeyArn": { + "base": null, + "refs": { + "CreateAudienceModelRequest$kmsKeyArn": "

The Amazon Resource Name (ARN) of the KMS key. This key is used to encrypt and decrypt customer-owned data in the trained ML model and the associated data.

", + "GetAudienceModelResponse$kmsKeyArn": "

The KMS key ARN used for the audience model.

" + } + }, + "ListAudienceExportJobsRequest": { + "base": null, + "refs": { + } + }, + "ListAudienceExportJobsResponse": { + "base": null, + "refs": { + } + }, + "ListAudienceGenerationJobsRequest": { + "base": null, + "refs": { + } + }, + "ListAudienceGenerationJobsResponse": { + "base": null, + "refs": { + } + }, + "ListAudienceModelsRequest": { + "base": null, + "refs": { + } + }, + "ListAudienceModelsResponse": { + "base": null, + "refs": { + } + }, + "ListConfiguredAudienceModelsRequest": { + "base": null, + "refs": { + } + }, + "ListConfiguredAudienceModelsResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ListTrainingDatasetsRequest": { + "base": null, + "refs": { + } + }, + "ListTrainingDatasetsResponse": { + "base": null, + "refs": { + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListAudienceExportJobsRequest$maxResults": "

The maximum size of the results that is returned per call.

", + "ListAudienceGenerationJobsRequest$maxResults": "

The maximum size of the results that is returned per call.

", + "ListAudienceModelsRequest$maxResults": "

The maximum size of the results that is returned per call.

", + "ListConfiguredAudienceModelsRequest$maxResults": "

The maximum size of the results that is returned per call.

", + "ListTrainingDatasetsRequest$maxResults": "

The maximum size of the results that is returned per call.

" + } + }, + "MetricsList": { + "base": null, + "refs": { + "CreateConfiguredAudienceModelRequest$sharedAudienceMetrics": "

Whether audience metrics are shared.

", + "GetConfiguredAudienceModelResponse$sharedAudienceMetrics": "

Whether audience metrics are shared.

", + "UpdateConfiguredAudienceModelRequest$sharedAudienceMetrics": "

The new value for whether to share audience metrics.

" + } + }, + "MinMatchingSeedSize": { + "base": null, + "refs": { + "CreateConfiguredAudienceModelRequest$minMatchingSeedSize": "

The minimum number of users from the seed audience that must match with users in the training data of the audience model.

", + "GetConfiguredAudienceModelResponse$minMatchingSeedSize": "

The minimum number of users from the seed audience that must match with users in the training data of the audience model.

", + "UpdateConfiguredAudienceModelRequest$minMatchingSeedSize": "

The minimum number of users from the seed audience that must match with users in the training data of the audience model.

" + } + }, + "NameString": { + "base": null, + "refs": { + "AudienceExportJobSummary$name": "

The name of the audience export job.

", + "AudienceGenerationJobSummary$name": "

The name of the audience generation job.

", + "AudienceModelSummary$name": "

The name of the audience model.

", + "ConfiguredAudienceModelSummary$name": "

The name of the configured audience model.

", + "CreateAudienceModelRequest$name": "

The name of the audience model resource.

", + "CreateConfiguredAudienceModelRequest$name": "

The name of the configured audience model.

", + "CreateTrainingDatasetRequest$name": "

The name of the training dataset. This name must be unique in your account and region.

", + "GetAudienceGenerationJobResponse$name": "

The name of the audience generation job.

", + "GetAudienceModelResponse$name": "

The name of the audience model.

", + "GetConfiguredAudienceModelResponse$name": "

The name of the configured audience model.

", + "GetTrainingDatasetResponse$name": "

The name of the training dataset.

", + "StartAudienceExportJobRequest$name": "

The name of the audience export job.

", + "StartAudienceGenerationJobRequest$name": "

The name of the audience generation job.

", + "TrainingDatasetSummary$name": "

The name of the training dataset.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "ListAudienceExportJobsRequest$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListAudienceExportJobsResponse$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListAudienceGenerationJobsRequest$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListAudienceGenerationJobsResponse$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListAudienceModelsRequest$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListAudienceModelsResponse$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListConfiguredAudienceModelsRequest$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListConfiguredAudienceModelsResponse$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListTrainingDatasetsRequest$nextToken": "

The token value retrieved from a previous call to access the next page of results.

", + "ListTrainingDatasetsResponse$nextToken": "

The token value retrieved from a previous call to access the next page of results.

" + } + }, + "PolicyExistenceCondition": { + "base": null, + "refs": { + "PutConfiguredAudienceModelPolicyRequest$policyExistenceCondition": "

Use this to prevent unexpected concurrent modification of the policy.

" + } + }, + "PutConfiguredAudienceModelPolicyRequest": { + "base": null, + "refs": { + } + }, + "PutConfiguredAudienceModelPolicyResponse": { + "base": null, + "refs": { + } + }, + "RelevanceMetric": { + "base": "

The relevance score of a generated audience.

", + "refs": { + "RelevanceMetrics$member": null + } + }, + "RelevanceMetrics": { + "base": null, + "refs": { + "AudienceQualityMetrics$relevanceMetrics": "

The relevance scores of the generated audience.

" + } + }, + "ResourceDescription": { + "base": null, + "refs": { + "AudienceExportJobSummary$description": "

The description of the audience export job.

", + "AudienceGenerationJobSummary$description": "

The description of the audience generation job.

", + "AudienceModelSummary$description": "

The description of the audience model.

", + "ConfiguredAudienceModelSummary$description": "

The description of the configured audience model.

", + "CreateAudienceModelRequest$description": "

The description of the audience model.

", + "CreateConfiguredAudienceModelRequest$description": "

The description of the configured audience model.

", + "CreateTrainingDatasetRequest$description": "

The description of the training dataset.

", + "GetAudienceGenerationJobResponse$description": "

The description of the audience generation job.

", + "GetAudienceModelResponse$description": "

The description of the audience model.

", + "GetConfiguredAudienceModelResponse$description": "

The description of the configured audience model.

", + "GetTrainingDatasetResponse$description": "

The description of the training dataset.

", + "StartAudienceExportJobRequest$description": "

The description of the audience export job.

", + "StartAudienceGenerationJobRequest$description": "

The description of the audience generation job.

", + "TrainingDatasetSummary$description": "

The description of the training dataset.

", + "UpdateConfiguredAudienceModelRequest$description": "

The new description of the configured audience model.

" + } + }, + "ResourceNotFoundException": { + "base": "

The resource you are requesting does not exist.

", + "refs": { + } + }, + "ResourcePolicy": { + "base": null, + "refs": { + "GetConfiguredAudienceModelPolicyResponse$configuredAudienceModelPolicy": "

The configured audience model policy. This is a JSON IAM resource policy.

", + "PutConfiguredAudienceModelPolicyRequest$configuredAudienceModelPolicy": "

The IAM resource policy.

", + "PutConfiguredAudienceModelPolicyResponse$configuredAudienceModelPolicy": "

The IAM resource policy.

" + } + }, + "S3ConfigMap": { + "base": "

Provides information about an Amazon S3 bucket and path.

", + "refs": { + "AudienceDestination$s3Destination": "

The Amazon S3 bucket and path for the configured audience.

", + "AudienceGenerationJobDataSource$dataSource": "

The Amazon S3 bucket where the training data for the configured audience is stored.

" + } + }, + "S3Path": { + "base": null, + "refs": { + "AudienceExportJobSummary$outputLocation": "

The Amazon S3 bucket where the audience export is stored.

", + "S3ConfigMap$s3Uri": "

The Amazon S3 location URI.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

You have exceeded your service quota.

", + "refs": { + } + }, + "SharedAudienceMetrics": { + "base": null, + "refs": { + "MetricsList$member": null + } + }, + "StartAudienceExportJobRequest": { + "base": null, + "refs": { + } + }, + "StartAudienceGenerationJobRequest": { + "base": null, + "refs": { + } + }, + "StartAudienceGenerationJobResponse": { + "base": null, + "refs": { + } + }, + "StatusDetails": { + "base": "

Details about the status of a resource.

", + "refs": { + "AudienceExportJobSummary$statusDetails": null, + "GetAudienceGenerationJobResponse$statusDetails": "

Details about the status of the audience generation job.

", + "GetAudienceModelResponse$statusDetails": "

Details about the status of the audience model.

" + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "StatusDetails$message": "

The error message that was returned. The message is intended for human consumption and can change at any time. Use the statusCode for programmatic error handling.

", + "StatusDetails$statusCode": "

The status code that was returned. The status code is intended for programmatic error handling. Clean Rooms ML will not change the status code for existing error conditions.

", + "ValidationException$message": null + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "AudienceExportJobSummary$createTime": "

The time at which the audience export job was created.

", + "AudienceExportJobSummary$updateTime": "

The most recent time at which the audience export job was updated.

", + "AudienceGenerationJobSummary$createTime": "

The time at which the audience generation job was created.

", + "AudienceGenerationJobSummary$updateTime": "

The most recent time at which the audience generation job was updated.

", + "AudienceModelSummary$createTime": "

The time at which the audience model was created.

", + "AudienceModelSummary$updateTime": "

The most recent time at which the audience model was updated.

", + "ConfiguredAudienceModelSummary$createTime": "

The time at which the configured audience model was created.

", + "ConfiguredAudienceModelSummary$updateTime": "

The most recent time at which the configured audience model was updated.

", + "CreateAudienceModelRequest$trainingDataEndTime": "

The end date and time of the training window.

", + "CreateAudienceModelRequest$trainingDataStartTime": "

The start date and time of the training window.

", + "GetAudienceGenerationJobResponse$createTime": "

The time at which the audience generation job was created.

", + "GetAudienceGenerationJobResponse$updateTime": "

The most recent time at which the audience generation job was updated.

", + "GetAudienceModelResponse$createTime": "

The time at which the audience model was created.

", + "GetAudienceModelResponse$trainingDataEndTime": "

The end date specified for the training window.

", + "GetAudienceModelResponse$trainingDataStartTime": "

The start date specified for the training window.

", + "GetAudienceModelResponse$updateTime": "

The most recent time at which the audience model was updated.

", + "GetConfiguredAudienceModelResponse$createTime": "

The time at which the configured audience model was created.

", + "GetConfiguredAudienceModelResponse$updateTime": "

The most recent time at which the configured audience model was updated.

", + "GetTrainingDatasetResponse$createTime": "

The time at which the training dataset was created.

", + "GetTrainingDatasetResponse$updateTime": "

The most recent time at which the training dataset was updated.

", + "TrainingDatasetSummary$createTime": "

The time at which the training dataset was created.

", + "TrainingDatasetSummary$updateTime": "

The most recent time at which the training dataset was updated.

" + } + }, + "TagKey": { + "base": null, + "refs": { + "TagKeys$member": null, + "TagMap$key": null + } + }, + "TagKeys": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

The key values of tags that you want to remove.

" + } + }, + "TagMap": { + "base": null, + "refs": { + "CreateAudienceModelRequest$tags": "

The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource - 50.

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length - 128 Unicode characters in UTF-8.

  • Maximum value length - 256 Unicode characters in UTF-8.

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.

", + "CreateConfiguredAudienceModelRequest$tags": "

The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource - 50.

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length - 128 Unicode characters in UTF-8.

  • Maximum value length - 256 Unicode characters in UTF-8.

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.

", + "CreateTrainingDatasetRequest$tags": "

The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource - 50.

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length - 128 Unicode characters in UTF-8.

  • Maximum value length - 256 Unicode characters in UTF-8.

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Clean Rooms ML considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.

", + "GetAudienceGenerationJobResponse$tags": "

The tags that are associated to this audience generation job.

", + "GetAudienceModelResponse$tags": "

The tags that are assigned to the audience model.

", + "GetConfiguredAudienceModelResponse$tags": "

The tags that are associated to this configured audience model.

", + "GetTrainingDatasetResponse$tags": "

The tags that are assigned to this training dataset.

", + "ListTagsForResourceResponse$tags": "

The tags that are associated with the resource.

", + "StartAudienceGenerationJobRequest$tags": "

The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource - 50.

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length - 128 Unicode characters in UTF-8.

  • Maximum value length - 256 Unicode characters in UTF-8.

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.

", + "TagResourceRequest$tags": "

The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource - 50.

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length - 128 Unicode characters in UTF-8.

  • Maximum value length - 256 Unicode characters in UTF-8.

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.

" + } + }, + "TagOnCreatePolicy": { + "base": null, + "refs": { + "CreateConfiguredAudienceModelRequest$childResourceTagOnCreatePolicy": "

Configure how the service tags audience generation jobs created using this configured audience model. If you specify NONE, the tags from the StartAudienceGenerationJob request determine the tags of the audience generation job. If you specify FROM_PARENT_RESOURCE, the audience generation job inherits the tags from the configured audience model, by default. Tags in the StartAudienceGenerationJob will override the default.

When the client is in a different account than the configured audience model, the tags from the client are never applied to a resource in the caller's account.

", + "GetConfiguredAudienceModelResponse$childResourceTagOnCreatePolicy": "

Provides the childResourceTagOnCreatePolicy that was used for this configured audience model.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "TagMap$value": null + } + }, + "TaggableArn": { + "base": null, + "refs": { + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you are interested in.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you want to assign tags.

", + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you want to remove tags from.

" + } + }, + "TrainingDatasetArn": { + "base": null, + "refs": { + "AudienceModelSummary$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset that was used for the audience model.

", + "CreateAudienceModelRequest$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset for this audience model.

", + "CreateTrainingDatasetResponse$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset resource.

", + "DeleteTrainingDatasetRequest$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset that you want to delete.

", + "GetAudienceModelResponse$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset that was used for this audience model.

", + "GetTrainingDatasetRequest$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset that you are interested in.

", + "GetTrainingDatasetResponse$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset.

", + "TrainingDatasetSummary$trainingDatasetArn": "

The Amazon Resource Name (ARN) of the training dataset.

" + } + }, + "TrainingDatasetList": { + "base": null, + "refs": { + "ListTrainingDatasetsResponse$trainingDatasets": "

The training datasets that match the request.

" + } + }, + "TrainingDatasetStatus": { + "base": null, + "refs": { + "GetTrainingDatasetResponse$status": "

The status of the training dataset.

", + "TrainingDatasetSummary$status": "

The status of the training dataset.

" + } + }, + "TrainingDatasetSummary": { + "base": "

Provides information about the training dataset.

", + "refs": { + "TrainingDatasetList$member": null + } + }, + "UUID": { + "base": null, + "refs": { + "AudienceGenerationJobSummary$collaborationId": "

The identifier of the collaboration that contains this audience generation job.

", + "GetAudienceGenerationJobResponse$collaborationId": "

The identifier of the collaboration that this audience generation job is associated with.

", + "ListAudienceGenerationJobsRequest$collaborationId": "

The identifier of the collaboration that contains the audience generation jobs that you are interested in.

", + "StartAudienceGenerationJobRequest$collaborationId": "

The identifier of the collaboration that contains the audience generation job.

" + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateConfiguredAudienceModelRequest": { + "base": null, + "refs": { + } + }, + "UpdateConfiguredAudienceModelResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

The request parameters for this request are incorrect.

", + "refs": { + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cleanrooms-ml-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cleanrooms-ml-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cleanrooms-ml.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cleanrooms-ml.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cleanrooms-ml.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cleanroomsml/2023-09-06/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cleanroomsml/2023-09-06/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,34 @@ +{ + "pagination": { + "ListAudienceExportJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "audienceExportJobs" + }, + "ListAudienceGenerationJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "audienceGenerationJobs" + }, + "ListAudienceModels": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "audienceModels" + }, + "ListConfiguredAudienceModels": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "configuredAudienceModels" + }, + "ListTrainingDatasets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "trainingDatasets" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -289,7 +289,8 @@ "type":"structure", "required":[ "name", - "instanceType" + "instanceType", + "imageId" ], "members":{ "name":{"shape":"EnvironmentName"}, @@ -523,7 +524,7 @@ "type":"string", "max":20, "min":5, - "pattern":"^[a-z][1-9][.][a-z0-9]+$" + "pattern":"^[a-z]+[1-9][.][a-z0-9]+$" }, "InternalServerErrorException":{ "type":"structure", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -232,7 +232,7 @@ "ImageId": { "base": null, "refs": { - "CreateEnvironmentEC2Request$imageId": "

The identifier for the Amazon Machine Image (AMI) that's used to create the EC2 instance. To choose an AMI for the instance, you must specify a valid AMI alias or a valid Amazon EC2 Systems Manager (SSM) path.

The default Amazon Linux AMI is currently used if the parameter isn't explicitly assigned a value in the request. Because Amazon Linux AMI has ended standard support as of December 31, 2020, we recommend you choose Amazon Linux 2, which includes long term support through 2023.

From December 31, 2023, the parameter for Amazon Linux will no longer be available when you specify an AMI for your instance. Amazon Linux 2 will then become the default AMI, which is used to launch your instance if no parameter is explicitly defined.

Since Ubuntu 18.04 has ended standard support as of May 31, 2023, we recommend you choose Ubuntu 22.04.

AMI aliases

  • Amazon Linux (default): amazonlinux-1-x86_64

  • Amazon Linux 2: amazonlinux-2-x86_64

  • Ubuntu 18.04: ubuntu-18.04-x86_64

  • Ubuntu 22.04: ubuntu-22.04-x86_64

SSM paths

  • Amazon Linux (default): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64

  • Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64

  • Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64

  • Ubuntu 22.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64

" + "CreateEnvironmentEC2Request$imageId": "

The identifier for the Amazon Machine Image (AMI) that's used to create the EC2 instance. To choose an AMI for the instance, you must specify a valid AMI alias or a valid Amazon EC2 Systems Manager (SSM) path.

From December 04, 2023, you will be required to include the imageId parameter for the CreateEnvironmentEC2 action. This change will be reflected across all direct methods of communicating with the API, such as Amazon Web Services SDK, Amazon Web Services CLI and Amazon Web Services CloudFormation. This change will only affect direct API consumers, and not Cloud9 console users.

From January 22, 2024, Amazon Linux (AL1) will be removed from the list of available image IDs for Cloud9. This is necessary as AL1 will reach the end of maintenance support in December 2023, and as a result will no longer receive security updates. We recommend using Amazon Linux 2 as the AMI to create your environment as it is fully supported. This change will only affect direct API consumers, and not Cloud9 console users.

Since Ubuntu 18.04 has ended standard support as of May 31, 2023, we recommend you choose Ubuntu 22.04.

AMI aliases

  • Amazon Linux: amazonlinux-1-x86_64

  • Amazon Linux 2: amazonlinux-2-x86_64

  • Ubuntu 18.04: ubuntu-18.04-x86_64

  • Ubuntu 22.04: ubuntu-22.04-x86_64

SSM paths

  • Amazon Linux: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64

  • Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64

  • Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64

  • Ubuntu 22.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64

" } }, "InstanceType": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloud9/2017-09-23/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloud9/2017-09-23/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,6 +7,7 @@ "name": "my-demo-environment", "automaticStopTimeMinutes": 60, "description": "This is my demonstration environment.", + "imageId": "amazonlinux-2-x86_64", "instanceType": "t2.micro", "ownerArn": "arn:aws:iam::123456789012:user/MyDemoUser", "subnetId": "subnet-6300cd1b" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1369,7 +1369,8 @@ "Description":{"shape":"Description"}, "IncludeNestedStacks":{"shape":"IncludeNestedStacks"}, "ParentChangeSetId":{"shape":"ChangeSetId"}, - "RootChangeSetId":{"shape":"ChangeSetId"} + "RootChangeSetId":{"shape":"ChangeSetId"}, + "ImportExistingResources":{"shape":"ImportExistingResources"} } }, "ChangeSetType":{ @@ -1409,6 +1410,13 @@ "max":128, "min":1 }, + "ConcurrencyMode":{ + "type":"string", + "enum":[ + "STRICT_FAILURE_TOLERANCE", + "SOFT_FAILURE_TOLERANCE" + ] + }, "ConfigurationSchema":{ "type":"string", "max":60000, @@ -1460,7 +1468,8 @@ "ChangeSetType":{"shape":"ChangeSetType"}, "ResourcesToImport":{"shape":"ResourcesToImport"}, "IncludeNestedStacks":{"shape":"IncludeNestedStacks"}, - "OnStackFailure":{"shape":"OnStackFailure"} + "OnStackFailure":{"shape":"OnStackFailure"}, + "ImportExistingResources":{"shape":"ImportExistingResources"} } }, "CreateChangeSetOutput":{ @@ -1751,7 +1760,8 @@ "IncludeNestedStacks":{"shape":"IncludeNestedStacks"}, "ParentChangeSetId":{"shape":"ChangeSetId"}, "RootChangeSetId":{"shape":"ChangeSetId"}, - "OnStackFailure":{"shape":"OnStackFailure"} + "OnStackFailure":{"shape":"OnStackFailure"}, + "ImportExistingResources":{"shape":"ImportExistingResources"} } }, "DescribeOrganizationsAccessInput":{ @@ -2305,6 +2315,7 @@ "Bitbucket" ] }, + "ImportExistingResources":{"type":"boolean"}, "ImportStacksToStackSetInput":{ "type":"structure", "required":["StackSetName"], @@ -3125,6 +3136,7 @@ "CreationPolicy", "UpdatePolicy", "DeletionPolicy", + "UpdateReplacePolicy", "Tags" ] }, @@ -3928,7 +3940,8 @@ "FailureToleranceCount":{"shape":"FailureToleranceCount"}, "FailureTolerancePercentage":{"shape":"FailureTolerancePercentage"}, "MaxConcurrentCount":{"shape":"MaxConcurrentCount"}, - "MaxConcurrentPercentage":{"shape":"MaxConcurrentPercentage"} + "MaxConcurrentPercentage":{"shape":"MaxConcurrentPercentage"}, + "ConcurrencyMode":{"shape":"ConcurrencyMode"} } }, "StackSetOperationResultStatus":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -19,19 +19,19 @@ "DeleteStackSet": "

Deletes a stack set. Before you can delete a stack set, all its member stack instances must be deleted. For more information about how to complete this, see DeleteStackInstances.

", "DeregisterType": "

Marks an extension or extension version as DEPRECATED in the CloudFormation registry, removing it from active use. Deprecated extensions or extension versions cannot be used in CloudFormation operations.

To deregister an entire extension, you must individually deregister all active versions of that extension. If an extension has only a single active version, deregistering that version results in the extension itself being deregistered and marked as deprecated in the registry.

You can't deregister the default version of an extension if there are other active version of that extension. If you do deregister the default version of an extension, the extension type itself is deregistered as well and marked as deprecated.

To view the deprecation status of an extension or extension version, use DescribeType.

", "DescribeAccountLimits": "

Retrieves your account's CloudFormation limits, such as the maximum number of stacks that you can create in your account. For more information about account limits, see CloudFormation Quotas in the CloudFormation User Guide.

", - "DescribeChangeSet": "

Returns the inputs for the change set and a list of changes that CloudFormation will make if you execute the change set. For more information, see Updating Stacks Using Change Sets in the CloudFormation User Guide.

", + "DescribeChangeSet": "

Returns the inputs for the change set and a list of changes that CloudFormation will make if you execute the change set. For more information, see Updating Stacks Using Change Sets in the CloudFormation User Guide.

", "DescribeChangeSetHooks": "

Returns hook-related information for the change set and a list of changes that CloudFormation makes when you run the change set.

", "DescribeOrganizationsAccess": "

Retrieves information about the account's OrganizationAccess status. This API can be called either by the management account or the delegated administrator by using the CallAs parameter. This API can also be called without the CallAs parameter by the management account.

", "DescribePublisher": "

Returns information about a CloudFormation extension publisher.

If you don't supply a PublisherId, and you have registered as an extension publisher, DescribePublisher returns information about your own publisher account.

For more information about registering as a publisher, see:

", "DescribeStackDriftDetectionStatus": "

Returns information about a stack drift detection operation. A stack drift detection operation detects 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. A stack is considered to have drifted if one or more of its resources have drifted. For more information about stack and resource drift, see Detecting Unregulated Configuration Changes to Stacks and Resources.

Use DetectStackDrift to initiate a stack drift detection operation. DetectStackDrift returns a StackDriftDetectionId you can use to monitor the progress of the operation using DescribeStackDriftDetectionStatus. Once the drift detection operation has completed, use DescribeStackResourceDrifts to return drift information about the stack and its resources.

", - "DescribeStackEvents": "

Returns all stack related events for a specified stack in reverse chronological order. For more information about a stack's event history, go to Stacks in the CloudFormation User Guide.

You can list events for stacks that have failed to create or have been deleted by specifying the unique stack identifier (stack ID).

", + "DescribeStackEvents": "

Returns all stack related events for a specified stack in reverse chronological order. For more information about a stack's event history, go to Stacks in the CloudFormation User Guide.

You can list events for stacks that have failed to create or have been deleted by specifying the unique stack identifier (stack ID).

", "DescribeStackInstance": "

Returns the stack instance that's associated with the specified StackSet, Amazon Web Services account, and Amazon Web Services Region.

For a list of stack instances that are associated with a specific StackSet, use ListStackInstances.

", "DescribeStackResource": "

Returns a description of the specified resource in the specified stack.

For deleted stacks, DescribeStackResource returns resource information for up to 90 days after the stack has been deleted.

", "DescribeStackResourceDrifts": "

Returns drift information for the resources that have been checked for drift in the specified stack. This includes actual and expected configuration values for resources where CloudFormation detects configuration drift.

For a given stack, there will be one StackResourceDrift for each stack resource that has been checked for drift. Resources that haven't yet been checked for drift aren't included. Resources that don't currently support drift detection aren't checked, and so not included. For a list of resources that support drift detection, see Resources that Support Drift Detection.

Use DetectStackResourceDrift to detect drift on individual resources, or DetectStackDrift to detect drift on all supported resources for a given stack.

", "DescribeStackResources": "

Returns Amazon Web Services resource descriptions for running and deleted stacks. If StackName is specified, all the associated resources that are part of the stack are returned. If PhysicalResourceId is specified, the associated resources of the stack that the resource belongs to are returned.

Only the first 100 resources will be returned. If your stack has more resources than this, you should use ListStackResources instead.

For deleted stacks, DescribeStackResources returns resource information for up to 90 days after the stack has been deleted.

You must specify either StackName or PhysicalResourceId, but not both. In addition, you can specify LogicalResourceId to filter the returned result. For more information about resources, the LogicalResourceId and PhysicalResourceId, go to the CloudFormation User Guide.

A ValidationError is returned if you specify both StackName and PhysicalResourceId in the same request.

", "DescribeStackSet": "

Returns the description of the specified StackSet.

", "DescribeStackSetOperation": "

Returns the description of the specified StackSet operation.

", - "DescribeStacks": "

Returns the description for the specified stack; if no stack name was specified, then it returns the description for all the stacks created.

If the stack doesn't exist, an ValidationError is returned.

", + "DescribeStacks": "

Returns the description for the specified stack; if no stack name was specified, then it returns the description for all the stacks created.

If the stack doesn't exist, a ValidationError is returned.

", "DescribeType": "

Returns detailed information about an extension that has been registered.

If you specify a VersionId, DescribeType returns information about that specific extension version. Otherwise, it returns information about the default extension version.

", "DescribeTypeRegistration": "

Returns information about an extension's registration, including its current status and type and version identifiers.

When you initiate a registration request using RegisterType, you can then use DescribeTypeRegistration to monitor the progress of that registration request.

Once the registration request has completed, use DescribeType to return detailed information about an extension.

", "DetectStackDrift": "

Detects 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. For each resource in the stack that supports drift detection, CloudFormation compares the actual configuration of the resource with its expected template configuration. Only resource properties explicitly defined in the stack template are checked for drift. A stack is considered to have drifted if one or more of its resources differ from their expected template configurations. For more information, see Detecting Unregulated Configuration Changes to Stacks and Resources.

Use DetectStackDrift to detect drift on all supported resources for a given stack, or DetectStackResourceDrift to detect drift on individual resources.

For a list of stack resources that currently support drift detection, see Resources that Support Drift Detection.

DetectStackDrift can take up to several minutes, depending on the number of resources contained within the stack. Use DescribeStackDriftDetectionStatus to monitor the progress of a detect stack drift operation. Once the drift detection operation has completed, use DescribeStackResourceDrifts to return drift information about the stack and its resources.

When detecting drift on a stack, CloudFormation doesn't detect drift on any nested stacks belonging to that stack. Perform DetectStackDrift directly on the nested stack itself.

", @@ -280,14 +280,14 @@ "Capabilities": { "base": null, "refs": { - "CreateChangeSetInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we suggest that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM resources in CloudFormation templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.

    This capacity doesn't apply to creating change sets, and specifying it when creating change sets has no effect.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create or update the stack directly from the template using the CreateStack or UpdateStack action, and specifying this capability.

    For more information about macros, see Using CloudFormation macros to perform custom processing on templates.

", - "CreateStackInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified.

    For more information, see Using CloudFormation macros to perform custom processing on templates.

", + "CreateChangeSetInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we suggest that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM resources in CloudFormation templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.

    This capacity doesn't apply to creating change sets, and specifying it when creating change sets has no effect.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create or update the stack directly from the template using the CreateStack or UpdateStack action, and specifying this capability.

    For more information about macros, see Using CloudFormation macros to perform custom processing on templates.

Only one of the Capabilities and ResourceType parameters can be specified.

", + "CreateStackInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified.

    For more information, see Using CloudFormation macros to perform custom processing on templates.

Only one of the Capabilities and ResourceType parameters can be specified.

", "CreateStackSetInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack set template contains certain capabilities in order for CloudFormation to create the stack set and related stack instances.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stack sets, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If your stack set template references one or more macros, you must create the stack set directly from the processed template, without first reviewing the resulting changes in a change set. To create the stack set directly, you must acknowledge this capability. For more information, see Using CloudFormation Macros to Perform Custom Processing on Templates.

    Stack sets with service-managed permissions don't currently support the use of macros in templates. (This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.) Even if you specify this capability for a stack set with service-managed permissions, if you reference a macro in your template the stack set operation will fail.

", "DescribeChangeSetOutput$Capabilities": "

If you execute the change set, the list of capabilities that were explicitly acknowledged when the change set was created.

", "GetTemplateSummaryOutput$Capabilities": "

The capabilities found within the template. If your template contains IAM resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value for this parameter when you use the CreateStack or UpdateStack actions with your template; otherwise, those actions return an InsufficientCapabilities error.

For more information, see Acknowledging IAM Resources in CloudFormation Templates.

", "Stack$Capabilities": "

The capabilities allowed in the stack.

", "StackSet$Capabilities": "

The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your Amazon Web Services account—for example, by creating new Identity and Access Management (IAM) users. For more information, see Acknowledging IAM Resources in CloudFormation Templates.

", - "UpdateStackInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to update the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we suggest that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually updating the stack. If your stack template contains one or more macros, and you choose to update a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.

    If you want to update a stack from a stack template that contains macros and nested stacks, you must update the stack directly from the template using this capability.

    You should only update stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified.

    For more information, see Using CloudFormation Macros to Perform Custom Processing on Templates.

", + "UpdateStackInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to update the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we suggest that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually updating the stack. If your stack template contains one or more macros, and you choose to update a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.

    If you want to update a stack from a stack template that contains macros and nested stacks, you must update the stack directly from the template using this capability.

    You should only update stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without CloudFormation being notified.

    For more information, see Using CloudFormation Macros to Perform Custom Processing on Templates.

Only one of the Capabilities and ResourceType parameters can be specified.

", "UpdateStackSetInput$Capabilities": "

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for CloudFormation to update the stack set and its associated stack instances.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your Amazon Web Services account; for example, by creating new Identity and Access Management (IAM) users. For those stacks sets, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If your stack set template references one or more macros, you must update the stack set directly from the processed template, without first reviewing the resulting changes in a change set. To update the stack set directly, you must acknowledge this capability. For more information, see Using CloudFormation Macros to Perform Custom Processing on Templates.

    Stack sets with service-managed permissions do not currently support the use of macros in templates. (This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by CloudFormation.) Even if you specify this capability for a stack set with service-managed permissions, if you reference a macro in your template the stack set operation will fail.

", "ValidateTemplateOutput$Capabilities": "

The capabilities found within the template. If your template contains IAM resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value for this parameter when you use the CreateStack or UpdateStack actions with your template; otherwise, those actions return an InsufficientCapabilities error.

For more information, see Acknowledging IAM Resources in CloudFormation Templates.

" } @@ -491,6 +491,12 @@ "RecordHandlerProgressInput$BearerToken": "

Reserved for use by the CloudFormation CLI.

" } }, + "ConcurrencyMode": { + "base": null, + "refs": { + "StackSetOperationPreferences$ConcurrencyMode": "

Specifies how the concurrency level behaves during the operation execution.

  • STRICT_FAILURE_TOLERANCE: This option dynamically lowers the concurrency level to ensure the number of failed accounts never exceeds the value of FailureToleranceCount +1. The initial actual concurrency is set to the lower of either the value of the MaxConcurrentCount, or the value of MaxConcurrentCount +1. The actual concurrency is then reduced proportionally by the number of failures. This is the default behavior.

    If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar.

  • SOFT_FAILURE_TOLERANCE: This option decouples FailureToleranceCount from the actual concurrency. This allows stack set operations to run at the concurrency level set by the MaxConcurrentCount value, or MaxConcurrentPercentage, regardless of the number of failures.

" + } + }, "ConfigurationSchema": { "base": null, "refs": { @@ -1117,6 +1123,14 @@ "TypeSummary$PublisherIdentity": "

The service used to verify the publisher identity.

For more information, see Registering your account to publish CloudFormation extensions in the CFN-CLI User Guide for Extension Development.

" } }, + "ImportExistingResources": { + "base": null, + "refs": { + "ChangeSetSummary$ImportExistingResources": "

Indicates if the change set imports resources that already exist.

", + "CreateChangeSetInput$ImportExistingResources": "

Indicates if the change set imports resources that already exist.

This parameter can only import resources that have custom names in templates. For more information, see name type in the CloudFormation User Guide. To import resources that do not accept custom names, such as EC2 instances, use the resource import feature instead. For more information, see Bringing existing resources into CloudFormation management in the CloudFormation User Guide.

", + "DescribeChangeSetOutput$ImportExistingResources": "

Indicates if the change set imports resources that already exist.

This parameter can only import resources that have custom names in templates. To import resources that do not accept custom names, such as EC2 instances, use the resource import feature instead.

" + } + }, "ImportStacksToStackSetInput": { "base": null, "refs": { @@ -1425,7 +1439,7 @@ "MaxConcurrentCount": { "base": null, "refs": { - "StackSetOperationPreferences$MaxConcurrentCount": "

The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of FailureToleranceCount.MaxConcurrentCount is at most one more than the FailureToleranceCount.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Conditional: You must specify either MaxConcurrentCount or MaxConcurrentPercentage, but not both.

By default, 1 is specified.

" + "StackSetOperationPreferences$MaxConcurrentCount": "

The maximum number of accounts in which to perform this operation at one time. This can depend on the value of FailureToleranceCount depending on your ConcurrencyMode. MaxConcurrentCount is at most one more than the FailureToleranceCount if you're using STRICT_FAILURE_TOLERANCE.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Conditional: You must specify either MaxConcurrentCount or MaxConcurrentPercentage, but not both.

By default, 1 is specified.

" } }, "MaxConcurrentPercentage": { @@ -2142,10 +2156,10 @@ "ResourceTypes": { "base": null, "refs": { - "CreateChangeSetInput$ResourceTypes": "

The template resource types that you have permissions to work with if you execute this change set, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource type that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for condition keys in IAM policies for CloudFormation. For more information, see Controlling access with Identity and Access Management in the CloudFormation User Guide.

", - "CreateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all Amazon Web Services resources), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular Amazon Web Services service), and AWS::service_name::resource_logical_ID (for a specific Amazon Web Services resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

", + "CreateChangeSetInput$ResourceTypes": "

The template resource types that you have permissions to work with if you execute this change set, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource type that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for condition keys in IAM policies for CloudFormation. For more information, see Controlling access with Identity and Access Management in the CloudFormation User Guide.

Only one of the Capabilities and ResourceType parameters can be specified.

", + "CreateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all Amazon Web Services resources), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular Amazon Web Services service), and AWS::service_name::resource_logical_ID (for a specific Amazon Web Services resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

Only one of the Capabilities and ResourceType parameters can be specified.

", "GetTemplateSummaryOutput$ResourceTypes": "

A list of all the template resource types that are defined in the template, such as AWS::EC2::Instance, AWS::Dynamo::Table, and Custom::MyCustomInstance.

", - "UpdateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this update stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

", + "UpdateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this update stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

Only one of the Capabilities and ResourceType parameters can be specified.

", "Warnings$UnrecognizedResourceTypes": "

A list of all of the unrecognized resource types. This is only returned if the TemplateSummaryConfig parameter has the TreatUnrecognizedResourceTypesAsWarning configuration set to True.

" } }, @@ -2217,7 +2231,7 @@ "ActivateTypeInput$ExecutionRoleArn": "

The name of the IAM execution role to use to activate the extension.

", "DescribeTypeOutput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to register the extension. This applies only to private extensions you have registered in your account. For more information, see RegisterType.

If the registered extension calls any Amazon Web Services APIs, you must create an IAM execution role that includes the necessary permissions to call those Amazon Web Services APIs, and provision that execution role in your account. CloudFormation then assumes that execution role to provide your extension with the appropriate credentials.

", "LoggingConfig$LogRoleArn": "

The Amazon Resource Name (ARN) of the role that CloudFormation should assume when sending log entries to CloudWatch Logs.

", - "RegisterTypeInput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the extension.

For CloudFormation to assume the specified execution role, the role must contain a trust relationship with the CloudFormation service principle (resources.cloudformation.amazonaws.com). For more information about adding trust relationships, see Modifying a role trust policy in the Identity and Access Management User Guide.

If your extension calls Amazon Web Services APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those Amazon Web Services APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.

" + "RegisterTypeInput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the extension.

For CloudFormation to assume the specified execution role, the role must contain a trust relationship with the CloudFormation service principal (resources.cloudformation.amazonaws.com). For more information about adding trust relationships, see Modifying a role trust policy in the Identity and Access Management User Guide.

If your extension calls Amazon Web Services APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those Amazon Web Services APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.

" } }, "RollbackConfiguration": { @@ -2536,8 +2550,8 @@ "base": null, "refs": { "CreateStackInput$StackPolicyBody": "

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

", - "GetStackPolicyOutput$StackPolicyBody": "

Structure containing the stack policy body. (For more information, go to Prevent Updates to Stack Resources in the CloudFormation User Guide.)

", - "SetStackPolicyInput$StackPolicyBody": "

Structure containing the stack policy body. For more information, go to Prevent updates to stack resources in the CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

", + "GetStackPolicyOutput$StackPolicyBody": "

Structure containing the stack policy body. (For more information, go to Prevent Updates to Stack Resources in the CloudFormation User Guide.)

", + "SetStackPolicyInput$StackPolicyBody": "

Structure containing the stack policy body. For more information, go to Prevent updates to stack resources in the CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

", "UpdateStackInput$StackPolicyBody": "

Structure containing a new stack policy body. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

You might update the stack policy, for example, in order to protect a new resource that you created during a stack update. If you don't specify a stack policy, the current policy that is associated with the stack is unchanged.

" } }, @@ -2925,15 +2939,15 @@ "base": null, "refs": { "CreateChangeSetInput$TemplateBody": "

A structure that contains the body of the revised template, with a minimum length of 1 byte and a maximum length of 51,200 bytes. CloudFormation generates the change set by comparing this template with the template of the stack that you specified.

Conditional: You must specify only TemplateBody or TemplateURL.

", - "CreateStackInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template anatomy in the CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

", + "CreateStackInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template anatomy in the CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

", "CreateStackSetInput$TemplateBody": "

The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, see Template Anatomy in the CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

", - "EstimateTemplateCostInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. (For more information, go to Template Anatomy in the CloudFormation User Guide.)

Conditional: You must pass TemplateBody or TemplateURL. If both are passed, only TemplateBody is used.

", - "GetTemplateOutput$TemplateBody": "

Structure containing the template body. (For more information, go to Template Anatomy in the CloudFormation User Guide.)

CloudFormation returns the same template that was used when the stack was created.

", - "GetTemplateSummaryInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information about templates, see Template anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: StackName, StackSetName, TemplateBody, or TemplateURL.

", + "EstimateTemplateCostInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. (For more information, go to Template Anatomy in the CloudFormation User Guide.)

Conditional: You must pass TemplateBody or TemplateURL. If both are passed, only TemplateBody is used.

", + "GetTemplateOutput$TemplateBody": "

Structure containing the template body. (For more information, go to Template Anatomy in the CloudFormation User Guide.)

CloudFormation returns the same template that was used when the stack was created.

", + "GetTemplateSummaryInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information about templates, see Template anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: StackName, StackSetName, TemplateBody, or TemplateURL.

", "StackSet$TemplateBody": "

The structure that contains the body of the template that was used to create or update the stack set.

", - "UpdateStackInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. (For more information, go to Template Anatomy in the CloudFormation User Guide.)

Conditional: You must specify only one of the following parameters: TemplateBody, TemplateURL, or set the UsePreviousTemplate to true.

", + "UpdateStackInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. (For more information, go to Template Anatomy in the CloudFormation User Guide.)

Conditional: You must specify only one of the following parameters: TemplateBody, TemplateURL, or set the UsePreviousTemplate to true.

", "UpdateStackSetInput$TemplateBody": "

The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, see Template Anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: TemplateBody or TemplateURL—or set UsePreviousTemplate to true.

", - "ValidateTemplateInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

" + "ValidateTemplateInput$TemplateBody": "

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

" } }, "TemplateDescription": { @@ -2971,13 +2985,13 @@ "base": null, "refs": { "CreateChangeSetInput$TemplateURL": "

The location of the file that contains the revised template. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems Manager document. CloudFormation generates the change set by comparing this template with the stack that you specified.

Conditional: You must specify only TemplateBody or TemplateURL.

", - "CreateStackInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template anatomy in the CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

", + "CreateStackInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template anatomy in the CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

", "CreateStackSetInput$TemplateURL": "

The location of the file that contains the template body. The URL must point to a template (maximum size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems Manager document. For more information, see Template Anatomy in the CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

", - "EstimateTemplateCostInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

", - "GetTemplateSummaryInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems Manager document. For more information about templates, see Template anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: StackName, StackSetName, TemplateBody, or TemplateURL.

", - "UpdateStackInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: TemplateBody, TemplateURL, or set the UsePreviousTemplate to true.

", + "EstimateTemplateCostInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

", + "GetTemplateSummaryInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems Manager document. For more information about templates, see Template anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: StackName, StackSetName, TemplateBody, or TemplateURL.

", + "UpdateStackInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: TemplateBody, TemplateURL, or set the UsePreviousTemplate to true.

", "UpdateStackSetInput$TemplateURL": "

The location of the file that contains the template body. The URL must point to a template (maximum size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, see Template Anatomy in the CloudFormation User Guide.

Conditional: You must specify only one of the following parameters: TemplateBody or TemplateURL—or set UsePreviousTemplate to true.

", - "ValidateTemplateInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

" + "ValidateTemplateInput$TemplateURL": "

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

" } }, "TestTypeInput": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudformation/2010-05-15/waiters-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudformation/2010-05-15/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -32,6 +32,54 @@ }, { "argument": "Stacks[].StackStatus", + "expected": "UPDATE_COMPLETE", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_IN_PROGRESS", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_FAILED", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_ROLLBACK_IN_PROGRESS", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_ROLLBACK_FAILED", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", + "expected": "UPDATE_ROLLBACK_COMPLETE", + "matcher": "pathAll", + "state": "success" + }, + { + "argument": "Stacks[].StackStatus", "expected": "CREATE_FAILED", "matcher": "pathAny", "state": "failure" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -414,6 +414,27 @@ {"shape":"TooManyPublicKeysInKeyGroup"} ] }, + "CreateKeyValueStore":{ + "name":"CreateKeyValueStore2020_05_31", + "http":{ + "method":"POST", + "requestUri":"/2020-05-31/key-value-store/", + "responseCode":201 + }, + "input":{ + "shape":"CreateKeyValueStoreRequest", + "locationName":"CreateKeyValueStoreRequest", + "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2020-05-31/"} + }, + "output":{"shape":"CreateKeyValueStoreResult"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"EntityLimitExceeded"}, + {"shape":"EntityAlreadyExists"}, + {"shape":"EntitySizeLimitExceeded"}, + {"shape":"InvalidArgument"} + ] + }, "CreateMonitoringSubscription":{ "name":"CreateMonitoringSubscription2020_05_31", "http":{ @@ -699,6 +720,23 @@ {"shape":"ResourceInUse"} ] }, + "DeleteKeyValueStore":{ + "name":"DeleteKeyValueStore2020_05_31", + "http":{ + "method":"DELETE", + "requestUri":"/2020-05-31/key-value-store/{Name}", + "responseCode":204 + }, + "input":{"shape":"DeleteKeyValueStoreRequest"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"InvalidIfMatchVersion"}, + {"shape":"EntityNotFound"}, + {"shape":"CannotDeleteEntityWhileInUse"}, + {"shape":"PreconditionFailed"} + ], + "idempotent":true + }, "DeleteMonitoringSubscription":{ "name":"DeleteMonitoringSubscription2020_05_31", "http":{ @@ -828,6 +866,20 @@ {"shape":"UnsupportedOperation"} ] }, + "DescribeKeyValueStore":{ + "name":"DescribeKeyValueStore2020_05_31", + "http":{ + "method":"GET", + "requestUri":"/2020-05-31/key-value-store/{Name}" + }, + "input":{"shape":"DescribeKeyValueStoreRequest"}, + "output":{"shape":"DescribeKeyValueStoreResult"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"InvalidArgument"}, + {"shape":"EntityNotFound"} + ] + }, "GetCachePolicy":{ "name":"GetCachePolicy2020_05_31", "http":{ @@ -1411,6 +1463,19 @@ {"shape":"InvalidArgument"} ] }, + "ListKeyValueStores":{ + "name":"ListKeyValueStores2020_05_31", + "http":{ + "method":"GET", + "requestUri":"/2020-05-31/key-value-store" + }, + "input":{"shape":"ListKeyValueStoresRequest"}, + "output":{"shape":"ListKeyValueStoresResult"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"InvalidArgument"} + ] + }, "ListOriginAccessControls":{ "name":"ListOriginAccessControls2020_05_31", "http":{ @@ -1861,6 +1926,27 @@ {"shape":"TooManyPublicKeysInKeyGroup"} ] }, + "UpdateKeyValueStore":{ + "name":"UpdateKeyValueStore2020_05_31", + "http":{ + "method":"PUT", + "requestUri":"/2020-05-31/key-value-store/{Name}" + }, + "input":{ + "shape":"UpdateKeyValueStoreRequest", + "locationName":"UpdateKeyValueStoreRequest", + "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2020-05-31/"} + }, + "output":{"shape":"UpdateKeyValueStoreResult"}, + "errors":[ + {"shape":"AccessDenied"}, + {"shape":"InvalidArgument"}, + {"shape":"EntityNotFound"}, + {"shape":"InvalidIfMatchVersion"}, + {"shape":"PreconditionFailed"} + ], + "idempotent":true + }, "UpdateOriginAccessControl":{ "name":"UpdateOriginAccessControl2020_05_31", "http":{ @@ -2335,6 +2421,14 @@ "error":{"httpStatusCode":400}, "exception":true }, + "CannotDeleteEntityWhileInUse":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "CertificateSource":{ "type":"string", "enum":[ @@ -2936,6 +3030,32 @@ }, "payload":"KeyGroup" }, + "CreateKeyValueStoreRequest":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{"shape":"KeyValueStoreName"}, + "Comment":{"shape":"KeyValueStoreComment"}, + "ImportSource":{"shape":"ImportSource"} + } + }, + "CreateKeyValueStoreResult":{ + "type":"structure", + "members":{ + "KeyValueStore":{"shape":"KeyValueStore"}, + "ETag":{ + "shape":"string", + "location":"header", + "locationName":"ETag" + }, + "Location":{ + "shape":"string", + "location":"header", + "locationName":"Location" + } + }, + "payload":"KeyValueStore" + }, "CreateMonitoringSubscriptionRequest":{ "type":"structure", "required":[ @@ -3377,6 +3497,25 @@ } } }, + "DeleteKeyValueStoreRequest":{ + "type":"structure", + "required":[ + "IfMatch", + "Name" + ], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "location":"uri", + "locationName":"Name" + }, + "IfMatch":{ + "shape":"string", + "location":"header", + "locationName":"If-Match" + } + } + }, "DeleteMonitoringSubscriptionRequest":{ "type":"structure", "required":["DistributionId"], @@ -3508,6 +3647,29 @@ }, "payload":"FunctionSummary" }, + "DescribeKeyValueStoreRequest":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "location":"uri", + "locationName":"Name" + } + } + }, + "DescribeKeyValueStoreResult":{ + "type":"structure", + "members":{ + "KeyValueStore":{"shape":"KeyValueStore"}, + "ETag":{ + "shape":"string", + "location":"header", + "locationName":"ETag" + } + }, + "payload":"KeyValueStore" + }, "Distribution":{ "type":"structure", "required":[ @@ -3725,6 +3887,38 @@ "type":"list", "member":{"shape":"EndPoint"} }, + "EntityAlreadyExists":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, + "EntityLimitExceeded":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":400}, + "exception":true + }, + "EntityNotFound":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":404}, + "exception":true + }, + "EntitySizeLimitExceeded":{ + "type":"structure", + "members":{ + "Message":{"shape":"string"} + }, + "error":{"httpStatusCode":413}, + "exception":true + }, "EventType":{ "type":"string", "enum":[ @@ -3993,7 +4187,8 @@ ], "members":{ "Comment":{"shape":"string"}, - "Runtime":{"shape":"FunctionRuntime"} + "Runtime":{"shape":"FunctionRuntime"}, + "KeyValueStoreAssociations":{"shape":"KeyValueStoreAssociations"} } }, "FunctionEventObject":{ @@ -4815,6 +5010,21 @@ "error":{"httpStatusCode":400}, "exception":true }, + "ImportSource":{ + "type":"structure", + "required":[ + "SourceType", + "SourceARN" + ], + "members":{ + "SourceType":{"shape":"ImportSourceType"}, + "SourceARN":{"shape":"string"} + } + }, + "ImportSourceType":{ + "type":"string", + "enum":["S3"] + }, "InconsistentQuantities":{ "type":"structure", "members":{ @@ -5191,6 +5401,81 @@ "Items":{"shape":"KeyPairIdList"} } }, + "KeyValueStore":{ + "type":"structure", + "required":[ + "Name", + "Id", + "Comment", + "ARN", + "LastModifiedTime" + ], + "members":{ + "Name":{"shape":"string"}, + "Id":{"shape":"string"}, + "Comment":{"shape":"string"}, + "ARN":{"shape":"string"}, + "Status":{"shape":"string"}, + "LastModifiedTime":{"shape":"timestamp"} + } + }, + "KeyValueStoreARN":{ + "type":"string", + "max":85, + "pattern":"arn:aws:cloudfront::[0-9]{12}:key-value-store\\/[0-9a-fA-F-]{36}$" + }, + "KeyValueStoreAssociation":{ + "type":"structure", + "required":["KeyValueStoreARN"], + "members":{ + "KeyValueStoreARN":{"shape":"KeyValueStoreARN"} + } + }, + "KeyValueStoreAssociationList":{ + "type":"list", + "member":{ + "shape":"KeyValueStoreAssociation", + "locationName":"KeyValueStoreAssociation" + } + }, + "KeyValueStoreAssociations":{ + "type":"structure", + "required":["Quantity"], + "members":{ + "Quantity":{"shape":"integer"}, + "Items":{"shape":"KeyValueStoreAssociationList"} + } + }, + "KeyValueStoreComment":{ + "type":"string", + "max":128 + }, + "KeyValueStoreList":{ + "type":"structure", + "required":[ + "MaxItems", + "Quantity" + ], + "members":{ + "NextMarker":{"shape":"string"}, + "MaxItems":{"shape":"integer"}, + "Quantity":{"shape":"integer"}, + "Items":{"shape":"KeyValueStoreSummaryList"} + } + }, + "KeyValueStoreName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z0-9-_]{1,64}$" + }, + "KeyValueStoreSummaryList":{ + "type":"list", + "member":{ + "shape":"KeyValueStore", + "locationName":"KeyValueStore" + } + }, "KinesisStreamConfig":{ "type":"structure", "required":[ @@ -5636,6 +5921,33 @@ }, "payload":"KeyGroupList" }, + "ListKeyValueStoresRequest":{ + "type":"structure", + "members":{ + "Marker":{ + "shape":"string", + "location":"querystring", + "locationName":"Marker" + }, + "MaxItems":{ + "shape":"string", + "location":"querystring", + "locationName":"MaxItems" + }, + "Status":{ + "shape":"string", + "location":"querystring", + "locationName":"Status" + } + } + }, + "ListKeyValueStoresResult":{ + "type":"structure", + "members":{ + "KeyValueStoreList":{"shape":"KeyValueStoreList"} + }, + "payload":"KeyValueStoreList" + }, "ListOriginAccessControlsRequest":{ "type":"structure", "members":{ @@ -8208,6 +8520,39 @@ }, "payload":"KeyGroup" }, + "UpdateKeyValueStoreRequest":{ + "type":"structure", + "required":[ + "Name", + "Comment", + "IfMatch" + ], + "members":{ + "Name":{ + "shape":"KeyValueStoreName", + "location":"uri", + "locationName":"Name" + }, + "Comment":{"shape":"KeyValueStoreComment"}, + "IfMatch":{ + "shape":"string", + "location":"header", + "locationName":"If-Match" + } + } + }, + "UpdateKeyValueStoreResult":{ + "type":"structure", + "members":{ + "KeyValueStore":{"shape":"KeyValueStore"}, + "ETag":{ + "shape":"string", + "location":"header", + "locationName":"ETag" + } + }, + "payload":"KeyValueStore" + }, "UpdateOriginAccessControlRequest":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -14,6 +14,7 @@ "CreateFunction": "

Creates a CloudFront function.

To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function.

When you create a function, it's in the DEVELOPMENT stage. In this stage, you can test the function with TestFunction, and update it with UpdateFunction.

When you're ready to use your function with a CloudFront distribution, use PublishFunction to copy the function from the DEVELOPMENT stage to LIVE. When it's live, you can attach the function to a distribution's cache behavior, using the function's ARN.

", "CreateInvalidation": "

Create a new invalidation.

", "CreateKeyGroup": "

Creates a key group that you can use with CloudFront signed URLs and signed cookies.

To create a key group, you must specify at least one public key for the key group. After you create a key group, you can reference it from one or more cache behaviors. When you reference a key group in a cache behavior, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with a private key whose corresponding public key is in the key group. The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see Serving private content in the Amazon CloudFront Developer Guide.

", + "CreateKeyValueStore": "

Specifies the Key Value Store resource to add to your account. In your account, the Key Value Store names must be unique. You can also import Key Value Store data in JSON format from an S3 bucket by providing a valid ImportSource that you own.

", "CreateMonitoringSubscription": "

Enables additional CloudWatch metrics for the specified CloudFront distribution. The additional metrics incur an additional cost.

For more information, see Viewing additional CloudFront distribution metrics in the Amazon CloudFront Developer Guide.

", "CreateOriginAccessControl": "

Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin.

This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront.

For more information about using a CloudFront origin access control, see Restricting access to an Amazon Web Services origin in the Amazon CloudFront Developer Guide.

", "CreateOriginRequestPolicy": "

Creates an origin request policy.

After you create an origin request policy, you can attach it to one or more cache behaviors. When it's attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:

  • The request body and the URL path (without the domain name) from the viewer request.

  • The headers that CloudFront automatically includes in every origin request, including Host, User-Agent, and X-Amz-Cf-Id.

  • All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.

CloudFront sends a request when it can't find a valid object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use CachePolicy.

For more information about origin request policies, see Controlling origin requests in the Amazon CloudFront Developer Guide.

", @@ -30,6 +31,7 @@ "DeleteFieldLevelEncryptionProfile": "

Remove a field-level encryption profile.

", "DeleteFunction": "

Deletes a CloudFront function.

You cannot delete a function if it's associated with a cache behavior. First, update your distributions to remove the function association from all cache behaviors, then delete the function.

To delete a function, you must provide the function's name and version (ETag value). To get these values, you can use ListFunctions and DescribeFunction.

", "DeleteKeyGroup": "

Deletes a key group.

You cannot delete a key group that is referenced in a cache behavior. First update your distributions to remove the key group from all cache behaviors, then delete the key group.

To delete a key group, you must provide the key group's identifier and version. To get these values, use ListKeyGroups followed by GetKeyGroup or GetKeyGroupConfig.

", + "DeleteKeyValueStore": "

Specifies the Key Value Store to delete.

", "DeleteMonitoringSubscription": "

Disables additional CloudWatch metrics for the specified CloudFront distribution.

", "DeleteOriginAccessControl": "

Deletes a CloudFront origin access control.

You cannot delete an origin access control if it's in use. First, update all distributions to remove the origin access control from all origins, then delete the origin access control.

", "DeleteOriginRequestPolicy": "

Deletes an origin request policy.

You cannot delete an origin request policy if it's attached to any cache behaviors. First update your distributions to remove the origin request policy from all cache behaviors, then delete the origin request policy.

To delete an origin request policy, you must provide the policy's identifier and version. To get the identifier, you can use ListOriginRequestPolicies or GetOriginRequestPolicy.

", @@ -38,6 +40,7 @@ "DeleteResponseHeadersPolicy": "

Deletes a response headers policy.

You cannot delete a response headers policy if it's attached to a cache behavior. First update your distributions to remove the response headers policy from all cache behaviors, then delete the response headers policy.

To delete a response headers policy, you must provide the policy's identifier and version. To get these values, you can use ListResponseHeadersPolicies or GetResponseHeadersPolicy.

", "DeleteStreamingDistribution": "

Delete a streaming distribution. To delete an RTMP distribution using the CloudFront API, perform the following steps.

To delete an RTMP distribution using the CloudFront API:

  1. Disable the RTMP distribution.

  2. Submit a GET Streaming Distribution Config request to get the current configuration and the Etag header for the distribution.

  3. Update the XML document that was returned in the response to your GET Streaming Distribution Config request to change the value of Enabled to false.

  4. Submit a PUT Streaming Distribution Config request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  5. Review the response to the PUT Streaming Distribution Config request to confirm that the distribution was successfully disabled.

  6. Submit a GET Streaming Distribution Config request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

  7. Submit a DELETE Streaming Distribution request. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  8. Review the response to your DELETE Streaming Distribution request to confirm that the distribution was successfully deleted.

For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.

", "DescribeFunction": "

Gets configuration information and metadata about a CloudFront function, but not the function's code. To get a function's code, use GetFunction.

To get configuration information and metadata about a function, you must provide the function's name and stage. To get these values, you can use ListFunctions.

", + "DescribeKeyValueStore": "

Specifies the Key Value Store and its configuration.

", "GetCachePolicy": "

Gets a cache policy, including the following metadata:

  • The policy's identifier.

  • The date and time when the policy was last modified.

To get a cache policy, you must provide the policy's identifier. If the cache policy is attached to a distribution's cache behavior, you can get the policy's identifier using ListDistributions or GetDistribution. If the cache policy is not attached to a cache behavior, you can get the identifier using ListCachePolicies.

", "GetCachePolicyConfig": "

Gets a cache policy configuration.

To get a cache policy configuration, you must provide the policy's identifier. If the cache policy is attached to a distribution's cache behavior, you can get the policy's identifier using ListDistributions or GetDistribution. If the cache policy is not attached to a cache behavior, you can get the identifier using ListCachePolicies.

", "GetCloudFrontOriginAccessIdentity": "

Get the information about an origin access identity.

", @@ -82,6 +85,7 @@ "ListFunctions": "

Gets a list of all CloudFront functions in your Amazon Web Services account.

You can optionally apply a filter to return only the functions that are in the specified stage, either DEVELOPMENT or LIVE.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

", "ListInvalidations": "

Lists invalidation batches.

", "ListKeyGroups": "

Gets a list of key groups.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

", + "ListKeyValueStores": "

Specifies the Key Value Stores to list.

", "ListOriginAccessControls": "

Gets the list of CloudFront origin access controls in this Amazon Web Services account.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send another request that specifies the NextMarker value from the current response as the Marker value in the next request.

", "ListOriginRequestPolicies": "

Gets a list of origin request policies.

You can optionally apply a filter to return only the managed policies created by Amazon Web Services, or only the custom policies created in your Amazon Web Services account.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

", "ListPublicKeys": "

List all public keys that have been added to CloudFront for this account.

", @@ -102,6 +106,7 @@ "UpdateFieldLevelEncryptionProfile": "

Update a field-level encryption profile.

", "UpdateFunction": "

Updates a CloudFront function.

You can update a function's code or the comment that describes the function. You cannot update a function's name.

To update a function, you provide the function's name and version (ETag value) along with the updated function code. To get the name and version, you can use ListFunctions and DescribeFunction.

", "UpdateKeyGroup": "

Updates a key group.

When you update a key group, all the fields are updated with the values provided in the request. You cannot update some fields independent of others. To update a key group:

  1. Get the current key group with GetKeyGroup or GetKeyGroupConfig.

  2. Locally modify the fields in the key group that you want to update. For example, add or remove public key IDs.

  3. Call UpdateKeyGroup with the entire key group object, including the fields that you modified and those that you didn't.

", + "UpdateKeyValueStore": "

Specifies the Key Value Store to update.

", "UpdateOriginAccessControl": "

Updates a CloudFront origin access control.

", "UpdateOriginRequestPolicy": "

Updates an origin request policy configuration.

When you update an origin request policy configuration, all the fields are updated with the values provided in the request. You cannot update some fields independent of others. To update an origin request policy configuration:

  1. Use GetOriginRequestPolicyConfig to get the current configuration.

  2. Locally modify the fields in the origin request policy configuration that you want to update.

  3. Call UpdateOriginRequestPolicy by providing the entire origin request policy configuration, including the fields that you modified and those that you didn't.

", "UpdatePublicKey": "

Update public key information. Note that the only value you can change is the comment.

", @@ -327,6 +332,11 @@ "refs": { } }, + "CannotDeleteEntityWhileInUse": { + "base": "

The Key Value Store entity cannot be deleted while it is in use.

", + "refs": { + } + }, "CertificateSource": { "base": null, "refs": { @@ -621,6 +631,16 @@ "refs": { } }, + "CreateKeyValueStoreRequest": { + "base": null, + "refs": { + } + }, + "CreateKeyValueStoreResult": { + "base": null, + "refs": { + } + }, "CreateMonitoringSubscriptionRequest": { "base": null, "refs": { @@ -779,6 +799,11 @@ "refs": { } }, + "DeleteKeyValueStoreRequest": { + "base": null, + "refs": { + } + }, "DeleteMonitoringSubscriptionRequest": { "base": null, "refs": { @@ -829,6 +854,16 @@ "refs": { } }, + "DescribeKeyValueStoreRequest": { + "base": null, + "refs": { + } + }, + "DescribeKeyValueStoreResult": { + "base": null, + "refs": { + } + }, "Distribution": { "base": "

A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery.

", "refs": { @@ -934,6 +969,26 @@ "UpdateRealtimeLogConfigRequest$EndPoints": "

Contains information about the Amazon Kinesis data stream where you are sending real-time log data.

" } }, + "EntityAlreadyExists": { + "base": "

The Key Value Store entity already exists. You must provide a unique Key Value Store entity.

", + "refs": { + } + }, + "EntityLimitExceeded": { + "base": "

The Key Value Store entity limit has been exceeded.

", + "refs": { + } + }, + "EntityNotFound": { + "base": "

The Key Value Store entity was not found.

", + "refs": { + } + }, + "EntitySizeLimitExceeded": { + "base": "

The Key Value Store entity size limit was exceeded.

", + "refs": { + } + }, "EventType": { "base": null, "refs": { @@ -969,7 +1024,7 @@ } }, "FieldLevelEncryptionList": { - "base": "

List of field-level encrpytion configurations.

", + "base": "

List of field-level encryption configurations.

", "refs": { "ListFieldLevelEncryptionConfigsResult$FieldLevelEncryptionList": "

Returns a list of all field-level encryption configurations that have been created in CloudFront for this account.

" } @@ -1160,7 +1215,7 @@ "FunctionRuntime": { "base": null, "refs": { - "FunctionConfig$Runtime": "

The function's runtime environment verion.

" + "FunctionConfig$Runtime": "

The function's runtime environment version.

" } }, "FunctionSizeLimitExceeded": { @@ -1534,6 +1589,18 @@ "refs": { } }, + "ImportSource": { + "base": "

The import source for the Key Value Store.

", + "refs": { + "CreateKeyValueStoreRequest$ImportSource": "

The S3 bucket that provides the source for the import. The source must be in a valid JSON format.

" + } + }, + "ImportSourceType": { + "base": null, + "refs": { + "ImportSource$SourceType": "

The source type of the import source for the Key Value Store.

" + } + }, "InconsistentQuantities": { "base": "

The value of Quantity and the size of Items don't match.

", "refs": { @@ -1773,6 +1840,67 @@ "Signer$KeyPairIds": "

A list of CloudFront key pair identifiers.

" } }, + "KeyValueStore": { + "base": "

The Key Value Store. Use this to separate data from function code, allowing you to update data without having to publish a new version of a function. The Key Value Store holds keys and their corresponding values.

", + "refs": { + "CreateKeyValueStoreResult$KeyValueStore": "

The resulting Key Value Store.

", + "DescribeKeyValueStoreResult$KeyValueStore": "

The resulting Key Value Store.

", + "KeyValueStoreSummaryList$member": null, + "UpdateKeyValueStoreResult$KeyValueStore": "

The resulting Key Value Store to update.

" + } + }, + "KeyValueStoreARN": { + "base": null, + "refs": { + "KeyValueStoreAssociation$KeyValueStoreARN": "

The Amazon Resource Name (ARN) of the Key Value Store association.

" + } + }, + "KeyValueStoreAssociation": { + "base": "

The Key Value Store association.

", + "refs": { + "KeyValueStoreAssociationList$member": null + } + }, + "KeyValueStoreAssociationList": { + "base": null, + "refs": { + "KeyValueStoreAssociations$Items": "

The items of the Key Value Store association.

" + } + }, + "KeyValueStoreAssociations": { + "base": "

The Key Value Store associations.

", + "refs": { + "FunctionConfig$KeyValueStoreAssociations": "

The configuration for the Key Value Store associations.

" + } + }, + "KeyValueStoreComment": { + "base": null, + "refs": { + "CreateKeyValueStoreRequest$Comment": "

The comment of the Key Value Store.

", + "UpdateKeyValueStoreRequest$Comment": "

The comment of the Key Value Store to update.

" + } + }, + "KeyValueStoreList": { + "base": "

The Key Value Store list.

", + "refs": { + "ListKeyValueStoresResult$KeyValueStoreList": "

The resulting Key Value Stores list.

" + } + }, + "KeyValueStoreName": { + "base": null, + "refs": { + "CreateKeyValueStoreRequest$Name": "

The name of the Key Value Store. The maximum length of the name is 32 characters.

", + "DeleteKeyValueStoreRequest$Name": "

The name of the Key Value Store.

", + "DescribeKeyValueStoreRequest$Name": "

The name of the Key Value Store.

", + "UpdateKeyValueStoreRequest$Name": "

The name of the Key Value Store to update.

" + } + }, + "KeyValueStoreSummaryList": { + "base": null, + "refs": { + "KeyValueStoreList$Items": "

The items of the Key Value Store list.

" + } + }, "KinesisStreamConfig": { "base": "

Contains information about the Amazon Kinesis data stream where you are sending real-time log data.

", "refs": { @@ -1964,6 +2092,16 @@ "refs": { } }, + "ListKeyValueStoresRequest": { + "base": null, + "refs": { + } + }, + "ListKeyValueStoresResult": { + "base": null, + "refs": { + } + }, "ListOriginAccessControlsRequest": { "base": null, "refs": { @@ -2169,7 +2307,7 @@ } }, "Origin": { - "base": "

An origin.

An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:

  • Use S3OriginConfig to specify an Amazon S3 bucket that is not configured with static website hosting.

  • Use CustomOriginConfig to specify all other kinds of origins, including:

    • An Amazon S3 bucket that is configured with static website hosting

    • An Elastic Load Balancing load balancer

    • An AWS Elemental MediaPackage endpoint

    • An AWS Elemental MediaStore container

    • Any other HTTP server, running on an Amazon EC2 instance or any other kind of host

For the current maximum number of origins that you can specify per distribution, see General Quotas on Web Distributions in the Amazon CloudFront Developer Guide (quotas were formerly referred to as limits).

", + "base": "

An origin.

An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:

  • Use S3OriginConfig to specify an Amazon S3 bucket that is not configured with static website hosting.

  • Use CustomOriginConfig to specify all other kinds of origins, including:

    • An Amazon S3 bucket that is configured with static website hosting

    • An Elastic Load Balancing load balancer

    • An Elemental MediaPackage endpoint

    • An Elemental MediaStore container

    • Any other HTTP server, running on an Amazon EC2 instance or any other kind of host

For the current maximum number of origins that you can specify per distribution, see General Quotas on Web Distributions in the Amazon CloudFront Developer Guide (quotas were formerly referred to as limits).

", "refs": { "OriginList$member": null } @@ -2253,7 +2391,7 @@ } }, "OriginGroup": { - "base": "

An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specifiy the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen.

", + "base": "

An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specify the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen.

", "refs": { "OriginGroupList$member": null } @@ -3429,6 +3567,16 @@ "refs": { } }, + "UpdateKeyValueStoreRequest": { + "base": null, + "refs": { + } + }, + "UpdateKeyValueStoreResult": { + "base": null, + "refs": { + } + }, "UpdateOriginAccessControlRequest": { "base": null, "refs": { @@ -3624,6 +3772,9 @@ "KeyGroupList$MaxItems": "

The maximum number of key groups requested.

", "KeyGroupList$Quantity": "

The number of key groups returned in the response.

", "KeyPairIds$Quantity": "

The number of key pair identifiers in the list.

", + "KeyValueStoreAssociations$Quantity": "

The quantity of Key Value Store associations.

", + "KeyValueStoreList$MaxItems": "

The maximum number of items in the Key Value Store list.

", + "KeyValueStoreList$Quantity": "

The quantity of the Key Value Store list.

", "LambdaFunctionAssociations$Quantity": "

The number of Lambda@Edge function associations for this cache behavior.

", "Origin$ConnectionAttempts": "

The number of times that CloudFront attempts to connect to the origin. The minimum number is 1, the maximum is 3, and the default (if you don't specify otherwise) is 3.

For a custom origin (including an Amazon S3 bucket that's configured with static website hosting), this value also specifies the number of times that CloudFront attempts to get a response from the origin, in the case of an Origin Response Timeout.

For more information, see Origin Connection Attempts in the Amazon CloudFront Developer Guide.

", "Origin$ConnectionTimeout": "

The number of seconds that CloudFront waits when trying to establish a connection to the origin. The minimum timeout is 1 second, the maximum is 10 seconds, and the default (if you don't specify otherwise) is 10 seconds.

For more information, see Origin Connection Timeout in the Amazon CloudFront Developer Guide.

", @@ -3723,6 +3874,7 @@ "CachePolicyInUse$Message": null, "CachePolicyList$NextMarker": "

If there are more items in the list than are in this response, this element is present. It contains the value that you should use in the Marker field of a subsequent request to continue listing cache policies where you left off.

", "CannotChangeImmutablePublicKeyFields$Message": null, + "CannotDeleteEntityWhileInUse$Message": null, "CloudFrontOriginAccessIdentity$Id": "

The ID for the origin access identity, for example, E74FTE3AJFJ256A.

", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "

The Amazon S3 canonical user ID for the origin access identity, used when giving the origin access identity read permission to an object in Amazon S3.

", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, @@ -3772,6 +3924,8 @@ "CreateInvalidationResult$Location": "

The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.

", "CreateKeyGroupResult$Location": "

The URL of the key group.

", "CreateKeyGroupResult$ETag": "

The identifier for this version of the key group.

", + "CreateKeyValueStoreResult$ETag": "

The ETag in the resulting Key Value Store.

", + "CreateKeyValueStoreResult$Location": "

The location of the resulting Key Value Store.

", "CreateMonitoringSubscriptionRequest$DistributionId": "

The ID of the distribution that you are enabling metrics for.

", "CreateOriginAccessControlResult$Location": "

The URL of the origin access control.

", "CreateOriginAccessControlResult$ETag": "

The version identifier for the current version of the origin access control.

", @@ -3810,6 +3964,7 @@ "DeleteFunctionRequest$IfMatch": "

The current version (ETag value) of the function that you are deleting, which you can get using DescribeFunction.

", "DeleteKeyGroupRequest$Id": "

The identifier of the key group that you are deleting. To get the identifier, use ListKeyGroups.

", "DeleteKeyGroupRequest$IfMatch": "

The version of the key group that you are deleting. The version is the key group's ETag value. To get the ETag, use GetKeyGroup or GetKeyGroupConfig.

", + "DeleteKeyValueStoreRequest$IfMatch": "

The Key Value Store to delete, if a match occurs.

", "DeleteMonitoringSubscriptionRequest$DistributionId": "

The ID of the distribution that you are disabling metrics for.

", "DeleteOriginAccessControlRequest$Id": "

The unique identifier of the origin access control that you are deleting.

", "DeleteOriginAccessControlRequest$IfMatch": "

The current version (ETag value) of the origin access control that you are deleting.

", @@ -3825,6 +3980,7 @@ "DeleteStreamingDistributionRequest$IfMatch": "

The value of the ETag header that you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.

", "DescribeFunctionRequest$Name": "

The name of the function that you are getting information about.

", "DescribeFunctionResult$ETag": "

The version identifier for the current version of the CloudFront function.

", + "DescribeKeyValueStoreResult$ETag": "

The ETag of the resulting Key Value Store.

", "Distribution$Id": "

The distribution's identifier. For example: E1U5RQF7T870K0.

", "Distribution$ARN": "

The distribution's Amazon Resource Name (ARN).

", "Distribution$Status": "

The distribution's status. When the status is Deployed, the distribution's information is fully propagated to all CloudFront edge locations.

", @@ -3849,6 +4005,10 @@ "EncryptionEntity$PublicKeyId": "

The public key associated with a set of field-level encryption patterns, to be used when encrypting the fields that match the patterns.

", "EncryptionEntity$ProviderId": "

The provider associated with the public key being used for encryption. This value must also be provided with the private key for applications to be able to decrypt data.

", "EndPoint$StreamType": "

The type of data stream where you are sending real-time log data. The only valid value is Kinesis.

", + "EntityAlreadyExists$Message": null, + "EntityLimitExceeded$Message": null, + "EntityNotFound$Message": null, + "EntitySizeLimitExceeded$Message": null, "FieldLevelEncryption$Id": "

The configuration ID for a field-level encryption configuration which includes a set of profiles that specify certain selected data fields to be encrypted by specific public keys.

", "FieldLevelEncryptionConfig$CallerReference": "

A unique number that ensures the request can't be replayed.

", "FieldLevelEncryptionConfig$Comment": "

An optional comment about the configuration. The comment cannot be longer than 128 characters.

", @@ -3939,6 +4099,7 @@ "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior$Message": null, "IllegalOriginAccessConfiguration$Message": null, "IllegalUpdate$Message": null, + "ImportSource$SourceARN": "

The Amazon Resource Name (ARN) of the import source for the Key Value Store.

", "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, @@ -3980,6 +4141,12 @@ "KeyGroupConfig$Comment": "

A comment to describe the key group. The comment cannot be longer than 128 characters.

", "KeyGroupList$NextMarker": "

If there are more items in the list than are in this response, this element is present. It contains the value that you should use in the Marker field of a subsequent request to continue listing key groups.

", "KeyPairIdList$member": null, + "KeyValueStore$Name": "

The name of the Key Value Store.

", + "KeyValueStore$Id": "

The unique Id for the Key Value Store.

", + "KeyValueStore$Comment": "

A comment for the Key Value Store.

", + "KeyValueStore$ARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "KeyValueStore$Status": "

The status of the Key Value Store.

", + "KeyValueStoreList$NextMarker": "

The next marker associated with the Key Value Store list.

", "KinesisStreamConfig$RoleARN": "

The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role that CloudFront can use to send real-time log data to your Kinesis data stream.

For more information the IAM role, see Real-time log configuration IAM role in the Amazon CloudFront Developer Guide.

", "KinesisStreamConfig$StreamARN": "

The Amazon Resource Name (ARN) of the Kinesis data stream where you are sending real-time log data.

", "ListCachePoliciesRequest$Marker": "

Use this field when paginating results to indicate where to begin in your list of cache policies. The response includes cache policies in the list that occur after the marker. To get the next page of the list, set this field's value to the value of NextMarker from the current page's response.

", @@ -4021,6 +4188,9 @@ "ListInvalidationsRequest$MaxItems": "

The maximum number of invalidation batches that you want in the response body.

", "ListKeyGroupsRequest$Marker": "

Use this field when paginating results to indicate where to begin in your list of key groups. The response includes key groups in the list that occur after the marker. To get the next page of the list, set this field's value to the value of NextMarker from the current page's response.

", "ListKeyGroupsRequest$MaxItems": "

The maximum number of key groups that you want in the response.

", + "ListKeyValueStoresRequest$Marker": "

The marker associated with the Key Value Stores list.

", + "ListKeyValueStoresRequest$MaxItems": "

The maximum number of items in the Key Value Stores list.

", + "ListKeyValueStoresRequest$Status": "

The status of the request for the Key Value Stores list.

", "ListOriginAccessControlsRequest$Marker": "

Use this field when paginating results to indicate where to begin in your list of origin access controls. The response includes the items in the list that occur after the marker. To get the next page of the list, set this field's value to the value of NextMarker from the current page's response.

", "ListOriginAccessControlsRequest$MaxItems": "

The maximum number of origin access controls that you want in the response.

", "ListOriginRequestPoliciesRequest$Marker": "

Use this field when paginating results to indicate where to begin in your list of origin request policies. The response includes origin request policies in the list that occur after the marker. To get the next page of the list, set this field's value to the value of NextMarker from the current page's response.

", @@ -4230,6 +4400,8 @@ "UpdateKeyGroupRequest$Id": "

The identifier of the key group that you are updating.

", "UpdateKeyGroupRequest$IfMatch": "

The version of the key group that you are updating. The version is the key group's ETag value.

", "UpdateKeyGroupResult$ETag": "

The identifier for this version of the key group.

", + "UpdateKeyValueStoreRequest$IfMatch": "

The Key Value Store to update, if a match occurs.

", + "UpdateKeyValueStoreResult$ETag": "

The ETag of the resulting Key Value Store.

", "UpdateOriginAccessControlRequest$Id": "

The unique identifier of the origin access control that you are updating.

", "UpdateOriginAccessControlRequest$IfMatch": "

The current version (ETag value) of the origin access control that you are updating.

", "UpdateOriginAccessControlResult$ETag": "

The new version of the origin access control after it has been updated.

", @@ -4261,13 +4433,14 @@ "DistributionSummary$LastModifiedTime": "

The date and time the distribution was last modified.

", "FieldLevelEncryption$LastModifiedTime": "

The last time the field-level encryption configuration was changed.

", "FieldLevelEncryptionProfile$LastModifiedTime": "

The last time the field-level encryption profile was updated.

", - "FieldLevelEncryptionProfileSummary$LastModifiedTime": "

The time when the the field-level encryption profile summary was last updated.

", + "FieldLevelEncryptionProfileSummary$LastModifiedTime": "

The time when the field-level encryption profile summary was last updated.

", "FieldLevelEncryptionSummary$LastModifiedTime": "

The last time that the summary of field-level encryption items was modified.

", "FunctionMetadata$CreatedTime": "

The date and time when the function was created.

", "FunctionMetadata$LastModifiedTime": "

The date and time when the function was most recently updated.

", "Invalidation$CreateTime": "

The date and time the invalidation request was first made.

", "InvalidationSummary$CreateTime": "

The time that an invalidation request was created.

", "KeyGroup$LastModifiedTime": "

The date and time when the key group was last modified.

", + "KeyValueStore$LastModifiedTime": "

The last-modified time of the Key Value Store.

", "OriginRequestPolicy$LastModifiedTime": "

The date and time when the origin request policy was last modified.

", "PublicKey$CreatedTime": "

The date and time when the public key was uploaded.

", "PublicKeySummary$CreatedTime": "

The date and time when the public key was uploaded.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,446 +57,411 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "stringEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://cloudfront.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "cloudfront", - "signingRegion": "us-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://cloudfront.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "cloudfront", + "signingRegion": "us-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://cloudfront-fips.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "cloudfront", - "signingRegion": "us-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://cloudfront-fips.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "cloudfront", + "signingRegion": "us-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-cn" + "name" ] }, + "aws-cn" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://cloudfront.cn-northwest-1.amazonaws.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "cloudfront", + "signingRegion": "cn-northwest-1" } - ], - "endpoint": { - "url": "https://cloudfront.cn-northwest-1.amazonaws.com.cn", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "cloudfront", - "signingRegion": "cn-northwest-1" - } - ] + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, - "headers": {} - }, - "type": "endpoint" + true + ] }, { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://cloudfront-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://cloudfront-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://cloudfront-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://cloudfront-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://cloudfront.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://cloudfront.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://cloudfront.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://cloudfront.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,256 @@ { "version": "1.0", "examples": { + "CreateFunction": [ + { + "input": { + "FunctionCode": "function-code.js", + "FunctionConfig": { + "Comment": "my-function-comment", + "KeyValueStoreAssociations": { + "Items": [ + { + "KeyValueStoreARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889" + } + ], + "Quantity": 1 + }, + "Runtime": "cloudfront-js-2.0" + }, + "Name": "my-function-name" + }, + "output": { + "ETag": "ETVPDKIKX0DER", + "FunctionSummary": { + "FunctionConfig": { + "Comment": "my-function-comment", + "KeyValueStoreAssociations": { + "Items": [ + { + "KeyValueStoreARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889" + } + ], + "Quantity": 1 + }, + "Runtime": "cloudfront-js-2.0" + }, + "FunctionMetadata": { + "CreatedTime": "2023-11-07T19:53:50.334Z", + "FunctionARN": "arn:aws:cloudfront::123456789012:function/my-function-name", + "LastModifiedTime": "2023-11-07T19:53:50.334Z", + "Stage": "DEVELOPMENT" + }, + "Name": "my-function-name", + "Status": "UNPUBLISHED" + }, + "Location": "https://cloudfront.amazonaws.com/2020-05-31/function/arn:aws:cloudfront::123456789012:function/my-function-name" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Use the following command to create a function.", + "id": "to-create-a-function-1699737558249", + "title": "To create a function" + } + ], + "CreateKeyValueStore": [ + { + "input": { + "Comment": "my-key-valuestore-comment", + "ImportSource": { + "SourceARN": "arn:aws:s3:::my-bucket/validJSON.json", + "SourceType": "S3" + }, + "Name": "my-keyvaluestore-name" + }, + "output": { + "ETag": "ETVPDKIKX0DER", + "KeyValueStore": { + "ARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889", + "Comment": "my-key-valuestore-comment", + "Id": "54947df8-0e9e-4471-a2f9-9af509fb5889", + "LastModifiedTime": "2023-11-07T18:15:52.042Z", + "Name": "my-keyvaluestore-name", + "Status": "PROVISIONING" + }, + "Location": "https://cloudfront.amazonaws.com/2020-05-31/key-value-store/arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Use the following command to create a KeyValueStore.", + "id": "to-create-a-key-value-store-1699751722467", + "title": "To create a KeyValueStore" + } + ], + "DeleteKeyValueStore": [ + { + "input": { + "IfMatch": "ETVPDKIKX0DER", + "Name": "my-keyvaluestore-name" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Use the following command to delete a KeyValueStore.", + "id": "to-delete-a-key-value-store-1699751759648", + "title": "To delete a KeyValueStore" + } + ], + "DescribeKeyValueStore": [ + { + "input": { + "Name": "my-keyvaluestore-name" + }, + "output": { + "ETag": "ETVPDKIKX0DER", + "KeyValueStore": { + "ARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889", + "Comment": "my-key-valuestore-comment", + "Id": "54947df8-0e9e-4471-a2f9-9af509fb5889", + "LastModifiedTime": "2023-11-07T18:20:33.056Z", + "Name": "my-keyvaluestore-name", + "Status": "READY" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Use the following command to describe a KeyValueStore.", + "id": "to-describe-a-key-value-store-1699751788152", + "title": "To describe a KeyValueStore" + } + ], + "ListKeyValueStores": [ + { + "input": { + "Marker": "", + "MaxItems": "100", + "Status": "READY" + }, + "output": { + "KeyValueStoreList": { + "Items": [ + { + "ARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889", + "Comment": "", + "Id": "54947df8-0e9e-4471-a2f9-9af509fb5889", + "LastModifiedTime": "2023-11-07T18:45:21.069Z", + "Name": "my-keyvaluestore-name", + "Status": "READY" + } + ], + "MaxItems": 100, + "NextMarker": "", + "Quantity": 1 + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "The following command retrieves a list of KeyValueStores with READY status.", + "id": "to-get-a-list-of-key-value-store-1699751799198", + "title": "To get a list of KeyValueStores" + } + ], + "UpdateFunction": [ + { + "input": { + "FunctionCode": "function-code-changed.js", + "FunctionConfig": { + "Comment": "my-changed-comment", + "KeyValueStoreAssociations": { + "Items": [ + { + "KeyValueStoreARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889" + } + ], + "Quantity": 1 + }, + "Runtime": "cloudfront-js-2.0" + }, + "IfMatch": "ETVPDKIKX0DER", + "Name": "my-function-name" + }, + "output": { + "ETag": "E3UN6WX5RRO2AG", + "FunctionSummary": { + "FunctionConfig": { + "Comment": "my-changed-comment", + "KeyValueStoreAssociations": { + "Items": [ + { + "KeyValueStoreARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889" + } + ], + "Quantity": 1 + }, + "Runtime": "cloudfront-js-2.0" + }, + "FunctionMetadata": { + "CreatedTime": "2023-11-07T19:53:50.334Z", + "FunctionARN": "arn:aws:cloudfront::123456789012:function/my-function-name", + "LastModifiedTime": "2023-11-07T20:01:37.174Z", + "Stage": "DEVELOPMENT" + }, + "Name": "my-function-name", + "Status": "UNPUBLISHED" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Use the following command to update a function.", + "id": "to-update-a-function-1699751865053", + "title": "To update a function" + } + ], + "UpdateKeyValueStore": [ + { + "input": { + "Comment": "my-changed-comment", + "IfMatch": "ETVPDKIKX0DER", + "Name": "my-keyvaluestore-name" + }, + "output": { + "ETag": "E3UN6WX5RRO2AG", + "KeyValueStore": { + "ARN": "arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889", + "Comment": "my-changed-comment", + "Id": "54947df8-0e9e-4471-a2f9-9af509fb5889", + "LastModifiedTime": "2023-11-07T18:45:21.069Z", + "Name": "my-keyvaluestore-name", + "Status": "READY" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Use the following command to update a KeyValueStore.", + "id": "to-update-a-key-value-store-1699751822090", + "title": "To update a KeyValueStore" + } + ] } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront/2020-05-31/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront/2020-05-31/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -21,6 +21,12 @@ "output_token": "InvalidationList.NextMarker", "result_key": "InvalidationList.Items" }, + "ListKeyValueStores": { + "input_token": "Marker", + "limit_key": "MaxItems", + "output_token": "KeyValueStoreList.NextMarker", + "result_key": "KeyValueStoreList.Items" + }, "ListStreamingDistributions": { "input_token": "Marker", "limit_key": "MaxItems", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,485 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-07-26", + "endpointPrefix":"cloudfront-keyvaluestore", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon CloudFront KeyValueStore", + "serviceId":"CloudFront KeyValueStore", + "signatureVersion":"v4", + "signingName":"cloudfront-keyvaluestore", + "uid":"cloudfront-keyvaluestore-2022-07-26" + }, + "operations":{ + "DeleteKey":{ + "name":"DeleteKey", + "http":{ + "method":"DELETE", + "requestUri":"/key-value-stores/{KvsARN}/keys/{Key}", + "responseCode":200 + }, + "input":{"shape":"DeleteKeyRequest"}, + "output":{"shape":"DeleteKeyResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DescribeKeyValueStore":{ + "name":"DescribeKeyValueStore", + "http":{ + "method":"GET", + "requestUri":"/key-value-stores/{KvsARN}", + "responseCode":200 + }, + "input":{"shape":"DescribeKeyValueStoreRequest"}, + "output":{"shape":"DescribeKeyValueStoreResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetKey":{ + "name":"GetKey", + "http":{ + "method":"GET", + "requestUri":"/key-value-stores/{KvsARN}/keys/{Key}", + "responseCode":200 + }, + "input":{"shape":"GetKeyRequest"}, + "output":{"shape":"GetKeyResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListKeys":{ + "name":"ListKeys", + "http":{ + "method":"GET", + "requestUri":"/key-value-stores/{KvsARN}/keys", + "responseCode":200 + }, + "input":{"shape":"ListKeysRequest"}, + "output":{"shape":"ListKeysResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "PutKey":{ + "name":"PutKey", + "http":{ + "method":"PUT", + "requestUri":"/key-value-stores/{KvsARN}/keys/{Key}", + "responseCode":200 + }, + "input":{"shape":"PutKeyRequest"}, + "output":{"shape":"PutKeyResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateKeys":{ + "name":"UpdateKeys", + "http":{ + "method":"POST", + "requestUri":"/key-value-stores/{KvsARN}/keys", + "responseCode":200 + }, + "input":{"shape":"UpdateKeysRequest"}, + "output":{"shape":"UpdateKeysResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ConflictException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "DeleteKeyRequest":{ + "type":"structure", + "required":[ + "KvsARN", + "Key", + "IfMatch" + ], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "Key":{ + "shape":"Key", + "location":"uri", + "locationName":"Key" + }, + "IfMatch":{ + "shape":"Etag", + "location":"header", + "locationName":"If-Match" + } + } + }, + "DeleteKeyRequestListItem":{ + "type":"structure", + "required":["Key"], + "members":{ + "Key":{"shape":"Key"} + } + }, + "DeleteKeyRequestsList":{ + "type":"list", + "member":{"shape":"DeleteKeyRequestListItem"} + }, + "DeleteKeyResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "ETag" + ], + "members":{ + "ItemCount":{"shape":"Integer"}, + "TotalSizeInBytes":{"shape":"Long"}, + "ETag":{ + "shape":"Etag", + "location":"header", + "locationName":"ETag" + } + } + }, + "DescribeKeyValueStoreRequest":{ + "type":"structure", + "required":["KvsARN"], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + } + } + }, + "DescribeKeyValueStoreResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "KvsARN", + "Created", + "ETag" + ], + "members":{ + "ItemCount":{"shape":"Integer"}, + "TotalSizeInBytes":{"shape":"Long"}, + "KvsARN":{"shape":"KvsARN"}, + "Created":{"shape":"Timestamp"}, + "ETag":{ + "shape":"Etag", + "location":"header", + "locationName":"ETag" + }, + "LastModified":{"shape":"Timestamp"} + } + }, + "Etag":{"type":"string"}, + "GetKeyRequest":{ + "type":"structure", + "required":[ + "KvsARN", + "Key" + ], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "Key":{ + "shape":"Key", + "location":"uri", + "locationName":"Key" + } + } + }, + "GetKeyResponse":{ + "type":"structure", + "required":[ + "Key", + "Value", + "ItemCount", + "TotalSizeInBytes" + ], + "members":{ + "Key":{"shape":"Key"}, + "Value":{"shape":"Value"}, + "ItemCount":{"shape":"Integer"}, + "TotalSizeInBytes":{"shape":"Long"} + } + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "Key":{ + "type":"string", + "max":1024, + "min":1 + }, + "KvsARN":{ + "type":"string", + "max":2048, + "min":1 + }, + "ListKeysRequest":{ + "type":"structure", + "required":["KvsARN"], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListKeysRequestMaxResultsInteger", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListKeysRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "ListKeysResponse":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"String"}, + "Items":{"shape":"ListKeysResponseList"} + } + }, + "ListKeysResponseList":{ + "type":"list", + "member":{"shape":"ListKeysResponseListItem"} + }, + "ListKeysResponseListItem":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"Key"}, + "Value":{"shape":"Value"} + } + }, + "Long":{ + "type":"long", + "box":true + }, + "PutKeyRequest":{ + "type":"structure", + "required":[ + "Key", + "Value", + "KvsARN", + "IfMatch" + ], + "members":{ + "Key":{ + "shape":"Key", + "location":"uri", + "locationName":"Key" + }, + "Value":{"shape":"Value"}, + "KvsARN":{ + "shape":"KvsARN", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "IfMatch":{ + "shape":"Etag", + "location":"header", + "locationName":"If-Match" + } + } + }, + "PutKeyRequestListItem":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"Key"}, + "Value":{"shape":"Value"} + } + }, + "PutKeyRequestsList":{ + "type":"list", + "member":{"shape":"PutKeyRequestListItem"} + }, + "PutKeyResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "ETag" + ], + "members":{ + "ItemCount":{"shape":"Integer"}, + "TotalSizeInBytes":{"shape":"Long"}, + "ETag":{ + "shape":"Etag", + "location":"header", + "locationName":"ETag" + } + } + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "String":{"type":"string"}, + "Timestamp":{"type":"timestamp"}, + "UpdateKeysRequest":{ + "type":"structure", + "required":[ + "KvsARN", + "IfMatch" + ], + "members":{ + "KvsARN":{ + "shape":"KvsARN", + "contextParam":{"name":"KvsARN"}, + "location":"uri", + "locationName":"KvsARN" + }, + "IfMatch":{ + "shape":"Etag", + "location":"header", + "locationName":"If-Match" + }, + "Puts":{"shape":"PutKeyRequestsList"}, + "Deletes":{"shape":"DeleteKeyRequestsList"} + } + }, + "UpdateKeysResponse":{ + "type":"structure", + "required":[ + "ItemCount", + "TotalSizeInBytes", + "ETag" + ], + "members":{ + "ItemCount":{"shape":"Integer"}, + "TotalSizeInBytes":{"shape":"Long"}, + "ETag":{ + "shape":"Etag", + "location":"header", + "locationName":"ETag" + } + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "Value":{ + "type":"string", + "sensitive":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,231 @@ +{ + "version": "2.0", + "service": "

Amazon CloudFront KeyValueStore Service to View and Update Data in a KVS Resource

", + "operations": { + "DeleteKey": "

Deletes the key value pair specified by the key.

", + "DescribeKeyValueStore": "

Returns metadata information about Key Value Store.

", + "GetKey": "

Returns a key value pair.

", + "ListKeys": "

Returns a list of key value pairs.

", + "PutKey": "

Creates a new key value pair or replaces the value of an existing key.

", + "UpdateKeys": "

Puts or Deletes multiple key value pairs in a single, all-or-nothing operation.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

Access denied.

", + "refs": { + } + }, + "ConflictException": { + "base": "

Resource is not in expected state.

", + "refs": { + } + }, + "DeleteKeyRequest": { + "base": null, + "refs": { + } + }, + "DeleteKeyRequestListItem": { + "base": "

List item for keys to delete.

", + "refs": { + "DeleteKeyRequestsList$member": null + } + }, + "DeleteKeyRequestsList": { + "base": null, + "refs": { + "UpdateKeysRequest$Deletes": "

List of keys to delete.

" + } + }, + "DeleteKeyResponse": { + "base": "

Metadata information about a Key Value Store.

", + "refs": { + } + }, + "DescribeKeyValueStoreRequest": { + "base": null, + "refs": { + } + }, + "DescribeKeyValueStoreResponse": { + "base": "

Metadata information about a Key Value Store.

", + "refs": { + } + }, + "Etag": { + "base": null, + "refs": { + "DeleteKeyRequest$IfMatch": "

The current version (ETag) of the Key Value Store that you are deleting keys from, which you can get using DescribeKeyValueStore.

", + "DeleteKeyResponse$ETag": "

The current version identifier of the Key Value Store after the successful delete.

", + "DescribeKeyValueStoreResponse$ETag": "

The version identifier for the current version of the Key Value Store.

", + "PutKeyRequest$IfMatch": "

The current version (ETag) of the Key Value Store that you are putting keys into, which you can get using DescribeKeyValueStore.

", + "PutKeyResponse$ETag": "

The current version identifier of the Key Value Store after the successful put.

", + "UpdateKeysRequest$IfMatch": "

The current version (ETag) of the Key Value Store that you are updating keys of, which you can get using DescribeKeyValueStore.

", + "UpdateKeysResponse$ETag": "

The current version identifier of the Key Value Store after the successful update.

" + } + }, + "GetKeyRequest": { + "base": null, + "refs": { + } + }, + "GetKeyResponse": { + "base": "

A key value pair.

", + "refs": { + } + }, + "Integer": { + "base": null, + "refs": { + "DeleteKeyResponse$ItemCount": "

Number of key value pairs in the Key Value Store after the successful delete.

", + "DescribeKeyValueStoreResponse$ItemCount": "

Number of key value pairs in the Key Value Store.

", + "GetKeyResponse$ItemCount": "

Number of key value pairs in the Key Value Store.

", + "PutKeyResponse$ItemCount": "

Number of key value pairs in the Key Value Store after the successful put.

", + "UpdateKeysResponse$ItemCount": "

Number of key value pairs in the Key Value Store after the successful update.

" + } + }, + "InternalServerException": { + "base": "

Internal server error.

", + "refs": { + } + }, + "Key": { + "base": null, + "refs": { + "DeleteKeyRequest$Key": "

The key to delete.

", + "DeleteKeyRequestListItem$Key": "

The key of the key value pair to be deleted.

", + "GetKeyRequest$Key": "

The key to get.

", + "GetKeyResponse$Key": "

The key of the key value pair.

", + "ListKeysResponseListItem$Key": "

The key of the key value pair.

", + "PutKeyRequest$Key": "

The key to put.

", + "PutKeyRequestListItem$Key": "

The key of the key value pair list item to put.

" + } + }, + "KvsARN": { + "base": null, + "refs": { + "DeleteKeyRequest$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "DescribeKeyValueStoreRequest$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "DescribeKeyValueStoreResponse$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "GetKeyRequest$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "ListKeysRequest$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "PutKeyRequest$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

", + "UpdateKeysRequest$KvsARN": "

The Amazon Resource Name (ARN) of the Key Value Store.

" + } + }, + "ListKeysRequest": { + "base": null, + "refs": { + } + }, + "ListKeysRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListKeysRequest$MaxResults": "

Maximum number of results that are returned per call. The default is 10 and maximum allowed page is 50.

" + } + }, + "ListKeysResponse": { + "base": null, + "refs": { + } + }, + "ListKeysResponseList": { + "base": null, + "refs": { + "ListKeysResponse$Items": "

Key value pairs

" + } + }, + "ListKeysResponseListItem": { + "base": "

A key value pair.

", + "refs": { + "ListKeysResponseList$member": null + } + }, + "Long": { + "base": null, + "refs": { + "DeleteKeyResponse$TotalSizeInBytes": "

Total size of the Key Value Store after the successful delete, in bytes.

", + "DescribeKeyValueStoreResponse$TotalSizeInBytes": "

Total size of the Key Value Store in bytes.

", + "GetKeyResponse$TotalSizeInBytes": "

Total size of the Key Value Store in bytes.

", + "PutKeyResponse$TotalSizeInBytes": "

Total size of the Key Value Store after the successful put, in bytes.

", + "UpdateKeysResponse$TotalSizeInBytes": "

Total size of the Key Value Store after the successful update, in bytes.

" + } + }, + "PutKeyRequest": { + "base": "

A key value pair.

", + "refs": { + } + }, + "PutKeyRequestListItem": { + "base": "

List item for key value pair to put.

", + "refs": { + "PutKeyRequestsList$member": null + } + }, + "PutKeyRequestsList": { + "base": null, + "refs": { + "UpdateKeysRequest$Puts": "

List of key value pairs to put.

" + } + }, + "PutKeyResponse": { + "base": "

Metadata information about a Key Value Store.

", + "refs": { + } + }, + "ResourceNotFoundException": { + "base": "

Resource was not found.

", + "refs": { + } + }, + "ServiceQuotaExceededException": { + "base": "

Limit exceeded.

", + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$Message": null, + "ConflictException$Message": null, + "InternalServerException$Message": null, + "ListKeysRequest$NextToken": "

If nextToken is returned in the response, there are more results available. Make the next call using the returned token to retrieve the next page.

", + "ListKeysResponse$NextToken": "

If nextToken is returned in the response, there are more results available. Make the next call using the returned token to retrieve the next page.

", + "ResourceNotFoundException$Message": null, + "ServiceQuotaExceededException$Message": null, + "ValidationException$Message": null + } + }, + "Timestamp": { + "base": null, + "refs": { + "DescribeKeyValueStoreResponse$Created": "

Date and time when the Key Value Store was created.

", + "DescribeKeyValueStoreResponse$LastModified": "

Date and time when the key value pairs in the Key Value Store was last modified.

" + } + }, + "UpdateKeysRequest": { + "base": null, + "refs": { + } + }, + "UpdateKeysResponse": { + "base": "

Metadata information about a Key Value Store.

", + "refs": { + } + }, + "ValidationException": { + "base": "

Validation failed.

", + "refs": { + } + }, + "Value": { + "base": null, + "refs": { + "GetKeyResponse$Value": "

The value of the key value pair.

", + "ListKeysResponseListItem$Value": "

The value of the key value pair.

", + "PutKeyRequest$Value": "

The value to put.

", + "PutKeyRequestListItem$Value": "

The value for the key value pair to put.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,449 @@ +{ + "version": "1.0", + "parameters": { + "KvsARN": { + "required": false, + "documentation": "The ARN of the Key Value Store", + "type": "String" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "KvsARN" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "KvsARN" + } + ], + "assign": "parsedArn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "service" + ] + }, + "cloudfront" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "region" + ] + }, + "" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "resourceId[0]" + ], + "assign": "arnType" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "key-value-store" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "parsedArn" + }, + "partition" + ] + }, + "aws" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "{parsedArn#partition}" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{parsedArn#accountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided endpoint is not a valid URL", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{parsedArn#accountId}.cloudfront-kvs.global.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but Kvs ARN has `{parsedArn#partition}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{parsedArn#accountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided endpoint is not a valid URL", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{parsedArn#accountId}.cloudfront-kvs.global.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "cloudfront-keyvaluestore", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "CloudFront-KeyValueStore is not supported in partition `{parsedArn#partition}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "ARN resource type is invalid. Expected `key-value-store`, found: `{arnType}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "No resource type found in the KVS ARN. Resource type must be `key-value-store`.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "No resource type found in the KVS ARN. Resource type must be `key-value-store`.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided ARN must be a global resource ARN. Found: `{parsedArn#region}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Provided ARN is not a valid CloudFront Service ARN. Found: `{parsedArn#service}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "KVS ARN must be a valid ARN", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "KVS ARN must be provided to use this service", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: FIPS is not supported with CloudFront-KeyValueStore.", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,198 @@ +{ + "testCases": [ + { + "documentation": "FIPS should error", + "expect": { + "error": "Invalid Configuration: FIPS is not supported with CloudFront-KeyValueStore." + }, + "params": { + "UseFIPS": true + } + }, + { + "documentation": "KVS ARN must be provided to use this service", + "expect": { + "error": "KVS ARN must be provided to use this service" + } + }, + { + "documentation": "KVS ARN must be a valid ARN", + "expect": { + "error": "KVS ARN must be a valid ARN" + }, + "params": { + "KvsARN": "not-a-valid-arn" + } + }, + { + "documentation": "Provided ARN was not a valid CloudFront Service ARN. Found: `notcloudfront`", + "expect": { + "error": "Provided ARN is not a valid CloudFront Service ARN. Found: `notcloudfront`" + }, + "params": { + "KvsARN": "arn:aws:notcloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "Provided ARN must be a global resource ARN. Found: `us-west-2`", + "expect": { + "error": "Provided ARN must be a global resource ARN. Found: `us-west-2`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront:us-west-2:123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "ARN resource type is invalid. Expected `key-value-store`, found: `some-other-resource-type`", + "expect": { + "error": "ARN resource type is invalid. Expected `key-value-store`, found: `some-other-resource-type`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:some-other-resource-type/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "CloudFront-KeyValueStore is not supported in partition `aws-cn`", + "expect": { + "error": "CloudFront-KeyValueStore is not supported in partition `aws-cn`" + }, + "params": { + "KvsARN": "arn:aws-cn:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "CloudFront-KeyValueStore is not supported in partition `aws-us-gov`", + "expect": { + "error": "CloudFront-KeyValueStore is not supported in partition `aws-us-gov`" + }, + "params": { + "KvsARN": "arn:aws-us-gov:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "Valid account based endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "https://123456789012.cloudfront-kvs.global.api.aws" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba" + } + }, + { + "documentation": "Valid account based endpoint, with SDK region", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "https://123456789012.cloudfront-kvs.global.api.aws" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-west-2" + } + }, + { + "documentation": "Valid ARN, different partition, should error", + "expect": { + "error": "Client was configured for partition `aws-cn` but Kvs ARN has `aws`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "cn-north-1" + } + }, + { + "documentation": "Valid account based endpoint with FIPS, should error", + "expect": { + "error": "Invalid Configuration: FIPS is not supported with CloudFront-KeyValueStore." + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "Custom sdk endpoint override", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "https://123456789012.my-override.example.com" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-east-1", + "Endpoint": "https://my-override.example.com" + } + }, + { + "documentation": "Custom sdk endpoint override with path and http", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "cloudfront-keyvaluestore", + "name": "sigv4a", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "url": "http://123456789012.my-override.example.com/custom-path" + } + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Endpoint": "http://my-override.example.com/custom-path" + } + }, + { + "documentation": "Custom override with different partition should error", + "expect": { + "error": "Client was configured for partition `aws-us-gov` but Kvs ARN has `aws`" + }, + "params": { + "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/my-first-kvs-e10b1dce4f394248811e77167e0451ba", + "Region": "us-gov-east-1", + "Endpoint": "https://my-override.example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudfront-keyvaluestore/2022-07-26/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudfront-keyvaluestore/2022-07-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,10 @@ +{ + "pagination": { + "ListKeys": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Items" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudtrail/2013-11-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudtrail/2013-11-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudtrail/2013-11-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudtrail/2013-11-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -194,7 +194,9 @@ {"shape":"NotOrganizationMasterAccountException"}, {"shape":"NoManagementAccountSLRExistsException"}, {"shape":"ChannelExistsForEDSException"}, - {"shape":"InsufficientDependencyServiceAccessPermissionException"} + {"shape":"InsufficientDependencyServiceAccessPermissionException"}, + {"shape":"ConflictException"}, + {"shape":"EventDataStoreFederationEnabledException"} ] }, "DeleteResourcePolicy":{ @@ -297,6 +299,57 @@ ], "idempotent":true }, + "DisableFederation":{ + "name":"DisableFederation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisableFederationRequest"}, + "output":{"shape":"DisableFederationResponse"}, + "errors":[ + {"shape":"EventDataStoreARNInvalidException"}, + {"shape":"EventDataStoreNotFoundException"}, + {"shape":"InvalidParameterException"}, + {"shape":"InactiveEventDataStoreException"}, + {"shape":"OperationNotPermittedException"}, + {"shape":"UnsupportedOperationException"}, + {"shape":"CloudTrailAccessNotEnabledException"}, + {"shape":"InsufficientDependencyServiceAccessPermissionException"}, + {"shape":"NotOrganizationMasterAccountException"}, + {"shape":"NoManagementAccountSLRExistsException"}, + {"shape":"OrganizationsNotInUseException"}, + {"shape":"OrganizationNotInAllFeaturesModeException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "EnableFederation":{ + "name":"EnableFederation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"EnableFederationRequest"}, + "output":{"shape":"EnableFederationResponse"}, + "errors":[ + {"shape":"EventDataStoreARNInvalidException"}, + {"shape":"EventDataStoreNotFoundException"}, + {"shape":"InvalidParameterException"}, + {"shape":"InactiveEventDataStoreException"}, + {"shape":"OperationNotPermittedException"}, + {"shape":"UnsupportedOperationException"}, + {"shape":"CloudTrailAccessNotEnabledException"}, + {"shape":"InsufficientDependencyServiceAccessPermissionException"}, + {"shape":"NotOrganizationMasterAccountException"}, + {"shape":"NoManagementAccountSLRExistsException"}, + {"shape":"OrganizationsNotInUseException"}, + {"shape":"OrganizationNotInAllFeaturesModeException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"EventDataStoreFederationEnabledException"} + ] + }, "GetChannel":{ "name":"GetChannel", "http":{ @@ -373,6 +426,8 @@ "input":{"shape":"GetInsightSelectorsRequest"}, "output":{"shape":"GetInsightSelectorsResponse"}, "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"InvalidParameterCombinationException"}, {"shape":"TrailNotFoundException"}, {"shape":"InvalidTrailNameException"}, {"shape":"CloudTrailARNInvalidException"}, @@ -651,6 +706,8 @@ "input":{"shape":"PutInsightSelectorsRequest"}, "output":{"shape":"PutInsightSelectorsResponse"}, "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"InvalidParameterCombinationException"}, {"shape":"TrailNotFoundException"}, {"shape":"InvalidTrailNameException"}, {"shape":"CloudTrailARNInvalidException"}, @@ -950,6 +1007,7 @@ {"shape":"EventDataStoreARNInvalidException"}, {"shape":"EventDataStoreNotFoundException"}, {"shape":"InvalidEventSelectorsException"}, + {"shape":"InvalidInsightSelectorsException"}, {"shape":"EventDataStoreHasOngoingImportException"}, {"shape":"InactiveEventDataStoreException"}, {"shape":"InvalidParameterException"}, @@ -1015,6 +1073,12 @@ } }, "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "AccountHasOngoingImportException":{ "type":"structure", "members":{ @@ -1091,6 +1155,13 @@ "member":{"shape":"AdvancedFieldSelector"}, "min":1 }, + "BillingMode":{ + "type":"string", + "enum":[ + "EXTENDABLE_RETENTION_PRICING", + "FIXED_RETENTION_PRICING" + ] + }, "Boolean":{"type":"boolean"}, "ByteBuffer":{"type":"blob"}, "CancelQueryRequest":{ @@ -1199,6 +1270,12 @@ }, "exception":true }, + "ConcurrentModificationException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "ConflictException":{ "type":"structure", "members":{ @@ -1241,7 +1318,8 @@ "TerminationProtectionEnabled":{"shape":"TerminationProtectionEnabled"}, "TagsList":{"shape":"TagsList"}, "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"}, - "StartIngestion":{"shape":"Boolean"} + "StartIngestion":{"shape":"Boolean"}, + "BillingMode":{"shape":"BillingMode"} } }, "CreateEventDataStoreResponse":{ @@ -1258,7 +1336,8 @@ "TagsList":{"shape":"TagsList"}, "CreatedTimestamp":{"shape":"Date"}, "UpdatedTimestamp":{"shape":"Date"}, - "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"} + "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"}, + "BillingMode":{"shape":"BillingMode"} } }, "CreateTrailRequest":{ @@ -1465,6 +1544,39 @@ "max":200, "min":1 }, + "DisableFederationRequest":{ + "type":"structure", + "required":["EventDataStore"], + "members":{ + "EventDataStore":{"shape":"EventDataStoreArn"} + } + }, + "DisableFederationResponse":{ + "type":"structure", + "members":{ + "EventDataStoreArn":{"shape":"EventDataStoreArn"}, + "FederationStatus":{"shape":"FederationStatus"} + } + }, + "EnableFederationRequest":{ + "type":"structure", + "required":[ + "EventDataStore", + "FederationRoleArn" + ], + "members":{ + "EventDataStore":{"shape":"EventDataStoreArn"}, + "FederationRoleArn":{"shape":"FederationRoleArn"} + } + }, + "EnableFederationResponse":{ + "type":"structure", + "members":{ + "EventDataStoreArn":{"shape":"EventDataStoreArn"}, + "FederationStatus":{"shape":"FederationStatus"}, + "FederationRoleArn":{"shape":"FederationRoleArn"} + } + }, "ErrorMessage":{ "type":"string", "max":1000, @@ -1554,6 +1666,12 @@ "min":3, "pattern":"^[a-zA-Z0-9._/\\-:]+$" }, + "EventDataStoreFederationEnabledException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "EventDataStoreHasOngoingImportException":{ "type":"structure", "members":{ @@ -1626,6 +1744,21 @@ "type":"list", "member":{"shape":"String"} }, + "FederationRoleArn":{ + "type":"string", + "max":125, + "min":3, + "pattern":"^[a-zA-Z0-9._/\\-:@=\\+,\\.]+$" + }, + "FederationStatus":{ + "type":"string", + "enum":[ + "ENABLING", + "ENABLED", + "DISABLING", + "DISABLED" + ] + }, "GetChannelRequest":{ "type":"structure", "required":["Channel"], @@ -1664,7 +1797,10 @@ "TerminationProtectionEnabled":{"shape":"TerminationProtectionEnabled"}, "CreatedTimestamp":{"shape":"Date"}, "UpdatedTimestamp":{"shape":"Date"}, - "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"} + "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"}, + "BillingMode":{"shape":"BillingMode"}, + "FederationStatus":{"shape":"FederationStatus"}, + "FederationRoleArn":{"shape":"FederationRoleArn"} } }, "GetEventSelectorsRequest":{ @@ -1705,16 +1841,18 @@ }, "GetInsightSelectorsRequest":{ "type":"structure", - "required":["TrailName"], "members":{ - "TrailName":{"shape":"String"} + "TrailName":{"shape":"String"}, + "EventDataStore":{"shape":"EventDataStoreArn"} } }, "GetInsightSelectorsResponse":{ "type":"structure", "members":{ "TrailARN":{"shape":"String"}, - "InsightSelectors":{"shape":"InsightSelectors"} + "InsightSelectors":{"shape":"InsightSelectors"}, + "EventDataStoreArn":{"shape":"EventDataStoreArn"}, + "InsightsDestination":{"shape":"EventDataStoreArn"} } }, "GetQueryResultsRequest":{ @@ -2430,20 +2568,21 @@ }, "PutInsightSelectorsRequest":{ "type":"structure", - "required":[ - "TrailName", - "InsightSelectors" - ], + "required":["InsightSelectors"], "members":{ "TrailName":{"shape":"String"}, - "InsightSelectors":{"shape":"InsightSelectors"} + "InsightSelectors":{"shape":"InsightSelectors"}, + "EventDataStore":{"shape":"EventDataStoreArn"}, + "InsightsDestination":{"shape":"EventDataStoreArn"} } }, "PutInsightSelectorsResponse":{ "type":"structure", "members":{ "TrailARN":{"shape":"String"}, - "InsightSelectors":{"shape":"InsightSelectors"} + "InsightSelectors":{"shape":"InsightSelectors"}, + "EventDataStoreArn":{"shape":"EventDataStoreArn"}, + "InsightsDestination":{"shape":"EventDataStoreArn"} } }, "PutResourcePolicyRequest":{ @@ -2673,12 +2812,13 @@ "TerminationProtectionEnabled":{"shape":"TerminationProtectionEnabled"}, "CreatedTimestamp":{"shape":"Date"}, "UpdatedTimestamp":{"shape":"Date"}, - "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"} + "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"}, + "BillingMode":{"shape":"BillingMode"} } }, "RetentionPeriod":{ "type":"integer", - "max":2557, + "max":3653, "min":7 }, "S3BucketDoesNotExistException":{ @@ -2972,7 +3112,8 @@ "OrganizationEnabled":{"shape":"Boolean"}, "RetentionPeriod":{"shape":"RetentionPeriod"}, "TerminationProtectionEnabled":{"shape":"TerminationProtectionEnabled"}, - "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"} + "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"}, + "BillingMode":{"shape":"BillingMode"} } }, "UpdateEventDataStoreResponse":{ @@ -2988,7 +3129,10 @@ "TerminationProtectionEnabled":{"shape":"TerminationProtectionEnabled"}, "CreatedTimestamp":{"shape":"Date"}, "UpdatedTimestamp":{"shape":"Date"}, - "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"} + "KmsKeyId":{"shape":"EventDataStoreKmsKeyId"}, + "BillingMode":{"shape":"BillingMode"}, + "FederationStatus":{"shape":"FederationStatus"}, + "FederationRoleArn":{"shape":"FederationRoleArn"} } }, "UpdateTrailRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudtrail/2013-11-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudtrail/2013-11-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudtrail/2013-11-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudtrail/2013-11-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,17 +8,19 @@ "CreateEventDataStore": "

Creates a new event data store.

", "CreateTrail": "

Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.

", "DeleteChannel": "

Deletes a channel.

", - "DeleteEventDataStore": "

Disables the event data store specified by EventDataStore, which accepts an event data store ARN. After you run DeleteEventDataStore, the event data store enters a PENDING_DELETION state, and is automatically deleted after a wait period of seven days. TerminationProtectionEnabled must be set to False on the event data store; this operation cannot work if TerminationProtectionEnabled is True.

After you run DeleteEventDataStore on an event data store, you cannot run ListQueries, DescribeQuery, or GetQueryResults on queries that are using an event data store in a PENDING_DELETION state. An event data store in the PENDING_DELETION state does not incur costs.

", + "DeleteEventDataStore": "

Disables the event data store specified by EventDataStore, which accepts an event data store ARN. After you run DeleteEventDataStore, the event data store enters a PENDING_DELETION state, and is automatically deleted after a wait period of seven days. TerminationProtectionEnabled must be set to False on the event data store and the FederationStatus must be DISABLED. You cannot delete an event data store if TerminationProtectionEnabled is True or the FederationStatus is ENABLED.

After you run DeleteEventDataStore on an event data store, you cannot run ListQueries, DescribeQuery, or GetQueryResults on queries that are using an event data store in a PENDING_DELETION state. An event data store in the PENDING_DELETION state does not incur costs.

", "DeleteResourcePolicy": "

Deletes the resource-based policy attached to the CloudTrail channel.

", "DeleteTrail": "

Deletes a trail. This operation must be called from the Region in which the trail was created. DeleteTrail cannot be called on the shadow trails (replicated trails in other Regions) of a trail that is enabled in all Regions.

", "DeregisterOrganizationDelegatedAdmin": "

Removes CloudTrail delegated administrator permissions from a member account in an organization.

", "DescribeQuery": "

Returns metadata about a query, including query run time in milliseconds, number of events scanned and matched, and query status. If the query results were delivered to an S3 bucket, the response also provides the S3 URI and the delivery status.

You must specify either a QueryID or a QueryAlias. Specifying the QueryAlias parameter returns information about the last query run for the alias.

", "DescribeTrails": "

Retrieves settings for one or more trails associated with the current Region for your account.

", + "DisableFederation": "

Disables Lake query federation on the specified event data store. When you disable federation, CloudTrail removes the metadata associated with the federated event data store in the Glue Data Catalog and removes registration for the federation role ARN and event data store in Lake Formation. No CloudTrail Lake data is deleted when you disable federation.

", + "EnableFederation": "

Enables Lake query federation on the specified event data store. Federating an event data store lets you view the metadata associated with the event data store in the Glue Data Catalog and run SQL queries against your event data using Amazon Athena. The table metadata stored in the Glue Data Catalog lets the Athena query engine know how to find, read, and process the data that you want to query.

When you enable Lake query federation, CloudTrail creates a federated database named aws:cloudtrail (if the database doesn't already exist) and a federated table in the Glue Data Catalog. The event data store ID is used for the table name. CloudTrail registers the role ARN and event data store in Lake Formation, the service responsible for revoking or granting permissions to the federated resources in the Glue Data Catalog.

For more information about Lake query federation, see Federate an event data store.

", "GetChannel": "

Returns information about a specific channel.

", "GetEventDataStore": "

Returns information about an event data store specified as either an ARN or the ID portion of the ARN.

", "GetEventSelectors": "

Describes the settings for the event selectors that you configured for your trail. The information returned for your event selectors includes the following:

  • If your event selector includes read-only events, write-only events, or all events. This applies to both management events and data events.

  • If your event selector includes management events.

  • If your event selector includes data events, the resources on which you are logging data events.

For more information about logging management and data events, see the following topics in the CloudTrail User Guide:

", "GetImport": "

Returns information about a specific import.

", - "GetInsightSelectors": "

Describes the settings for the Insights event selectors that you configured for your trail. GetInsightSelectors shows if CloudTrail Insights event logging is enabled on the trail, and if it is, which insight types are enabled. If you run GetInsightSelectors on a trail that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException

For more information, see Logging CloudTrail Insights Events for Trails in the CloudTrail User Guide.

", + "GetInsightSelectors": "

Describes the settings for the Insights event selectors that you configured for your trail or event data store. GetInsightSelectors shows if CloudTrail Insights event logging is enabled on the trail or event data store, and if it is, which Insights types are enabled. If you run GetInsightSelectors on a trail or event data store that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException

Specify either the EventDataStore parameter to get Insights event selectors for an event data store, or the TrailName parameter to the get Insights event selectors for a trail. You cannot specify these parameters together.

For more information, see Logging CloudTrail Insights events in the CloudTrail User Guide.

", "GetQueryResults": "

Gets event data results of a query. You must specify the QueryID value returned by the StartQuery operation.

", "GetResourcePolicy": "

Retrieves the JSON text of the resource-based policy document attached to the CloudTrail channel.

", "GetTrail": "

Returns settings information for a specified trail.

", @@ -31,11 +33,11 @@ "ListQueries": "

Returns a list of queries and query statuses for the past seven days. You must specify an ARN value for EventDataStore. Optionally, to shorten the list of results, you can specify a time range, formatted as timestamps, by adding StartTime and EndTime parameters, and a QueryStatus value. Valid values for QueryStatus include QUEUED, RUNNING, FINISHED, FAILED, TIMED_OUT, or CANCELLED.

", "ListTags": "

Lists the tags for the specified trails, event data stores, or channels in the current Region.

", "ListTrails": "

Lists trails that are in the current account.

", - "LookupEvents": "

Looks up management events or CloudTrail Insights events that are captured by CloudTrail. You can look up events that occurred in a Region within the last 90 days. Lookup supports the following attributes for management events:

  • Amazon Web Services access key

  • Event ID

  • Event name

  • Event source

  • Read only

  • Resource name

  • Resource type

  • User name

Lookup supports the following attributes for Insights events:

  • Event ID

  • Event name

  • Event source

All attributes are optional. The default number of results returned is 50, with a maximum of 50 possible. The response includes a token that you can use to get the next page of results.

The rate of lookup requests is limited to two per second, per account, per Region. If this limit is exceeded, a throttling error occurs.

", + "LookupEvents": "

Looks up management events or CloudTrail Insights events that are captured by CloudTrail. You can look up events that occurred in a Region within the last 90 days.

LookupEvents returns recent Insights events for trails that enable Insights. To view Insights events for an event data store, you can run queries on your Insights event data store, and you can also view the Lake dashboard for Insights.

Lookup supports the following attributes for management events:

  • Amazon Web Services access key

  • Event ID

  • Event name

  • Event source

  • Read only

  • Resource name

  • Resource type

  • User name

Lookup supports the following attributes for Insights events:

  • Event ID

  • Event name

  • Event source

All attributes are optional. The default number of results returned is 50, with a maximum of 50 possible. The response includes a token that you can use to get the next page of results.

The rate of lookup requests is limited to two per second, per account, per Region. If this limit is exceeded, a throttling error occurs.

", "PutEventSelectors": "

Configures an event selector or advanced event selectors for your trail. Use event selectors or advanced event selectors to specify management and data event settings for your trail. If you want your trail to log Insights events, be sure the event selector enables logging of the Insights event types you want configured for your trail. For more information about logging Insights events, see Logging Insights events for trails in the CloudTrail User Guide. By default, trails created without specific event selectors are configured to log all read and write management events, and no data events.

When an event occurs in your account, CloudTrail evaluates the event selectors or advanced event selectors in all trails. For each trail, if the event matches any event selector, the trail processes and logs the event. If the event doesn't match any event selector, the trail doesn't log the event.

Example

  1. You create an event selector for a trail and specify that you want write-only events.

  2. The EC2 GetConsoleOutput and RunInstances API operations occur in your account.

  3. CloudTrail evaluates whether the events match your event selectors.

  4. The RunInstances is a write-only event and it matches your event selector. The trail logs the event.

  5. The GetConsoleOutput is a read-only event that doesn't match your event selector. The trail doesn't log the event.

The PutEventSelectors operation must be called from the Region in which the trail was created; otherwise, an InvalidHomeRegionException exception is thrown.

You can configure up to five event selectors for each trail. For more information, see Logging management events, Logging data events, and Quotas in CloudTrail in the CloudTrail User Guide.

You can add advanced event selectors, and conditions for your advanced event selectors, up to a maximum of 500 values for all conditions and selectors on a trail. You can use either AdvancedEventSelectors or EventSelectors, but not both. If you apply AdvancedEventSelectors to a trail, any existing EventSelectors are overwritten. For more information about advanced event selectors, see Logging data events in the CloudTrail User Guide.

", - "PutInsightSelectors": "

Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail. You also use PutInsightSelectors to turn off Insights event logging, by passing an empty list of insight types. The valid Insights event types in this release are ApiErrorRateInsight and ApiCallRateInsight.

To log CloudTrail Insights events on API call volume, the trail must log write management events. To log CloudTrail Insights events on API error rate, the trail must log read or write management events. You can call GetEventSelectors on a trail to check whether the trail logs management events.

", + "PutInsightSelectors": "

Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail or event data store. You also use PutInsightSelectors to turn off Insights event logging, by passing an empty list of Insights types. The valid Insights event types are ApiErrorRateInsight and ApiCallRateInsight.

To enable Insights on an event data store, you must specify the ARNs (or ID suffix of the ARNs) for the source event data store (EventDataStore) and the destination event data store (InsightsDestination). The source event data store logs management events and enables Insights. The destination event data store logs Insights events based upon the management event activity of the source event data store. The source and destination event data stores must belong to the same Amazon Web Services account.

To log Insights events for a trail, you must specify the name (TrailName) of the CloudTrail trail for which you want to change or add Insights selectors.

To log CloudTrail Insights events on API call volume, the trail or event data store must log write management events. To log CloudTrail Insights events on API error rate, the trail or event data store must log read or write management events. You can call GetEventSelectors on a trail to check whether the trail logs management events. You can call GetEventDataStore on an event data store to check whether the event data store logs management events.

For more information, see Logging CloudTrail Insights events in the CloudTrail User Guide.

", "PutResourcePolicy": "

Attaches a resource-based permission policy to a CloudTrail channel that is used for an integration with an event source outside of Amazon Web Services. For more information about resource-based policies, see CloudTrail resource-based policy examples in the CloudTrail User Guide.

", - "RegisterOrganizationDelegatedAdmin": "

Registers an organization’s member account as the CloudTrail delegated administrator.

", + "RegisterOrganizationDelegatedAdmin": "

Registers an organization’s member account as the CloudTrail delegated administrator.

", "RemoveTags": "

Removes the specified tags from a trail, event data store, or channel.

", "RestoreEventDataStore": "

Restores a deleted event data store specified by EventDataStore, which accepts an event data store ARN. You can only restore a deleted event data store within the seven-day wait period after deletion. Restoring an event data store can take several minutes, depending on the size of the event data store.

", "StartEventDataStoreIngestion": "

Starts the ingestion of live events on an event data store specified as either an ARN or the ID portion of the ARN. To start ingestion, the event data store Status must be STOPPED_INGESTION and the eventCategory must be Management, Data, or ConfigurationItem.

", @@ -46,10 +48,15 @@ "StopImport": "

Stops a specified import.

", "StopLogging": "

Suspends the recording of Amazon Web Services API calls and log file delivery for the specified trail. Under most circumstances, there is no need to use this action. You can update a trail without stopping it first. This action is the only way to stop recording. For a trail enabled in all Regions, this operation must be called from the Region in which the trail was created, or an InvalidHomeRegionException will occur. This operation cannot be called on the shadow trails (replicated trails in other Regions) of a trail enabled in all Regions.

", "UpdateChannel": "

Updates a channel specified by a required channel ARN or UUID.

", - "UpdateEventDataStore": "

Updates an event data store. The required EventDataStore value is an ARN or the ID portion of the ARN. Other parameters are optional, but at least one optional parameter must be specified, or CloudTrail throws an error. RetentionPeriod is in days, and valid values are integers between 90 and 2557. By default, TerminationProtection is enabled.

For event data stores for CloudTrail events, AdvancedEventSelectors includes or excludes management and data events in your event data store. For more information about AdvancedEventSelectors, see AdvancedEventSelectors.

For event data stores for Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, AdvancedEventSelectors includes events of that type in your event data store.

", + "UpdateEventDataStore": "

Updates an event data store. The required EventDataStore value is an ARN or the ID portion of the ARN. Other parameters are optional, but at least one optional parameter must be specified, or CloudTrail throws an error. RetentionPeriod is in days, and valid values are integers between 7 and 3653 if the BillingMode is set to EXTENDABLE_RETENTION_PRICING, or between 7 and 2557 if BillingMode is set to FIXED_RETENTION_PRICING. By default, TerminationProtection is enabled.

For event data stores for CloudTrail events, AdvancedEventSelectors includes or excludes management, data, or Insights events in your event data store. For more information about AdvancedEventSelectors, see AdvancedEventSelectors.

For event data stores for Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, AdvancedEventSelectors includes events of that type in your event data store.

", "UpdateTrail": "

Updates trail settings that control what events you are logging, and how to handle log files. Changes to a trail do not require stopping the CloudTrail service. Use this action to designate an existing bucket for log delivery. If the existing bucket has previously been a target for CloudTrail log files, an IAM policy exists for the bucket. UpdateTrail must be called from the Region in which the trail was created; otherwise, an InvalidHomeRegionException is thrown.

" }, "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, "AccountHasOngoingImportException": { "base": "

This exception is thrown when you start a new import and a previous import is still in progress.

", "refs": { @@ -121,6 +128,17 @@ "AdvancedEventSelector$FieldSelectors": "

Contains all selector statements in an advanced event selector.

" } }, + "BillingMode": { + "base": null, + "refs": { + "CreateEventDataStoreRequest$BillingMode": "

The billing mode for the event data store determines the cost for ingesting events and the default and maximum retention period for the event data store.

The following are the possible values:

  • EXTENDABLE_RETENTION_PRICING - This billing mode is generally recommended if you want a flexible retention period of up to 3653 days (about 10 years). The default retention period for this billing mode is 366 days.

  • FIXED_RETENTION_PRICING - This billing mode is recommended if you expect to ingest more than 25 TB of event data per month and need a retention period of up to 2557 days (about 7 years). The default retention period for this billing mode is 2557 days.

The default value is EXTENDABLE_RETENTION_PRICING.

For more information about CloudTrail pricing, see CloudTrail Pricing and Managing CloudTrail Lake costs.

", + "CreateEventDataStoreResponse$BillingMode": "

The billing mode for the event data store.

", + "GetEventDataStoreResponse$BillingMode": "

The billing mode for the event data store.

", + "RestoreEventDataStoreResponse$BillingMode": "

The billing mode for the event data store.

", + "UpdateEventDataStoreRequest$BillingMode": "

You can't change the billing mode from EXTENDABLE_RETENTION_PRICING to FIXED_RETENTION_PRICING. If BillingMode is set to EXTENDABLE_RETENTION_PRICING and you want to use FIXED_RETENTION_PRICING instead, you'll need to stop ingestion on the event data store and create a new event data store that uses FIXED_RETENTION_PRICING.

The billing mode for the event data store determines the cost for ingesting events and the default and maximum retention period for the event data store.

The following are the possible values:

  • EXTENDABLE_RETENTION_PRICING - This billing mode is generally recommended if you want a flexible retention period of up to 3653 days (about 10 years). The default retention period for this billing mode is 366 days.

  • FIXED_RETENTION_PRICING - This billing mode is recommended if you expect to ingest more than 25 TB of event data per month and need a retention period of up to 2557 days (about 7 years). The default retention period for this billing mode is 2557 days.

For more information about CloudTrail pricing, see CloudTrail Pricing and Managing CloudTrail Lake costs.

", + "UpdateEventDataStoreResponse$BillingMode": "

The billing mode for the event data store.

" + } + }, "Boolean": { "base": null, "refs": { @@ -154,13 +172,13 @@ "Trail$HasInsightSelectors": "

Specifies whether a trail has insight types specified in an InsightSelector list.

", "Trail$IsOrganizationTrail": "

Specifies whether the trail is an organization trail.

", "UpdateEventDataStoreRequest$MultiRegionEnabled": "

Specifies whether an event data store collects events from all Regions, or only from the Region in which it was created.

", - "UpdateEventDataStoreRequest$OrganizationEnabled": "

Specifies whether an event data store collects events logged for an organization in Organizations.

", + "UpdateEventDataStoreRequest$OrganizationEnabled": "

Specifies whether an event data store collects events logged for an organization in Organizations.

Only the management account for the organization can convert an organization event data store to a non-organization event data store, or convert a non-organization event data store to an organization event data store.

", "UpdateEventDataStoreResponse$MultiRegionEnabled": "

Indicates whether the event data store includes events from all Regions, or only from the Region in which it was created.

", "UpdateEventDataStoreResponse$OrganizationEnabled": "

Indicates whether an event data store is collecting logged events for an organization in Organizations.

", "UpdateTrailRequest$IncludeGlobalServiceEvents": "

Specifies whether the trail is publishing events from global services such as IAM to the log files.

", "UpdateTrailRequest$IsMultiRegionTrail": "

Specifies whether the trail applies only to the current Region or to all Regions. The default is false. If the trail exists only in the current Region and this value is set to true, shadow trails (replications of the trail) will be created in the other Regions. If the trail exists in all Regions and this value is set to false, the trail will remain in the Region where it was created, and its shadow trails in other Regions will be deleted. As a best practice, consider using trails that log events in all Regions.

", "UpdateTrailRequest$EnableLogFileValidation": "

Specifies whether log file validation is enabled. The default is false.

When you disable log file integrity validation, the chain of digest files is broken after one hour. CloudTrail does not create digest files for log files that were delivered during a period in which log file integrity validation was disabled. For example, if you enable log file integrity validation at noon on January 1, disable it at noon on January 2, and re-enable it at noon on January 10, digest files will not be created for the log files delivered from noon on January 2 to noon on January 10. The same applies whenever you stop CloudTrail logging or delete a trail.

", - "UpdateTrailRequest$IsOrganizationTrail": "

Specifies whether the trail is applied to all accounts in an organization in Organizations, or only for the current Amazon Web Services account. The default is false, and cannot be true unless the call is made on behalf of an Amazon Web Services account that is the management account or delegated administrator account for an organization in Organizations. If the trail is not an organization trail and this is set to true, the trail will be created in all Amazon Web Services accounts that belong to the organization. If the trail is an organization trail and this is set to false, the trail will remain in the current Amazon Web Services account but be deleted from all member accounts in the organization.

", + "UpdateTrailRequest$IsOrganizationTrail": "

Specifies whether the trail is applied to all accounts in an organization in Organizations, or only for the current Amazon Web Services account. The default is false, and cannot be true unless the call is made on behalf of an Amazon Web Services account that is the management account for an organization in Organizations. If the trail is not an organization trail and this is set to true, the trail will be created in all Amazon Web Services accounts that belong to the organization. If the trail is an organization trail and this is set to false, the trail will remain in the current Amazon Web Services account but be deleted from all member accounts in the organization.

Only the management account for the organization can convert an organization trail to a non-organization trail, or convert a non-organization trail to an organization trail.

", "UpdateTrailResponse$IncludeGlobalServiceEvents": "

Specifies whether the trail is publishing events from global services such as IAM to the log files.

", "UpdateTrailResponse$IsMultiRegionTrail": "

Specifies whether the trail exists in one Region or in all Regions.

", "UpdateTrailResponse$LogFileValidationEnabled": "

Specifies whether log file integrity validation is enabled.

", @@ -249,7 +267,7 @@ } }, "CloudTrailARNInvalidException": { - "base": "

This exception is thrown when an operation is called with a trail ARN that is not valid. The following is the format of a trail ARN.

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

This exception is also thrown when you call AddTags or RemoveTags on a trail, event data store, or channel with a resource ARN that is not valid.

The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

The following is the format of a channel ARN: arn:aws:cloudtrail:us-east-2:123456789012:channel/01234567890

", + "base": "

This exception is thrown when an operation is called with an ARN that is not valid.

The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

The following is the format of a channel ARN: arn:aws:cloudtrail:us-east-2:123456789012:channel/01234567890

", "refs": { } }, @@ -268,6 +286,11 @@ "refs": { } }, + "ConcurrentModificationException": { + "base": "

You are trying to update a resource when another request is in progress. Allow sufficient wait time for the previous request to complete, then retry your request.

", + "refs": { + } + }, "ConflictException": { "base": "

This exception is thrown when the specified resource is not ready for an operation. This can occur when you try to run an operation on a resource before CloudTrail has time to fully load the resource, or because another operation is modifying the resource. If this exception occurs, wait a few minutes, and then try the operation again.

", "refs": { @@ -482,6 +505,26 @@ "UpdateChannelResponse$Destinations": "

The event data stores that log events arriving through the channel.

" } }, + "DisableFederationRequest": { + "base": null, + "refs": { + } + }, + "DisableFederationResponse": { + "base": null, + "refs": { + } + }, + "EnableFederationRequest": { + "base": null, + "refs": { + } + }, + "EnableFederationResponse": { + "base": null, + "refs": { + } + }, "ErrorMessage": { "base": null, "refs": { @@ -503,7 +546,7 @@ } }, "EventDataStore": { - "base": "

A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 90 to 2557 days (about three months to up to seven years). To select events for an event data store, use advanced event selectors.

", + "base": "

A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account. To select events for an event data store, use advanced event selectors.

", "refs": { "EventDataStores$member": null } @@ -525,13 +568,24 @@ "CreateEventDataStoreResponse$EventDataStoreArn": "

The ARN of the event data store.

", "DeleteEventDataStoreRequest$EventDataStore": "

The ARN (or the ID suffix of the ARN) of the event data store to delete.

", "DescribeQueryRequest$EventDataStore": "

The ARN (or the ID suffix of the ARN) of an event data store on which the specified query was run.

", + "DisableFederationRequest$EventDataStore": "

The ARN (or ID suffix of the ARN) of the event data store for which you want to disable Lake query federation.

", + "DisableFederationResponse$EventDataStoreArn": "

The ARN of the event data store for which you disabled Lake query federation.

", + "EnableFederationRequest$EventDataStore": "

The ARN (or ID suffix of the ARN) of the event data store for which you want to enable Lake query federation.

", + "EnableFederationResponse$EventDataStoreArn": "

The ARN of the event data store for which you enabled Lake query federation.

", "EventDataStore$EventDataStoreArn": "

The ARN of the event data store.

", "GetEventDataStoreRequest$EventDataStore": "

The ARN (or ID suffix of the ARN) of the event data store about which you want information.

", "GetEventDataStoreResponse$EventDataStoreArn": "

The event data store Amazon Resource Number (ARN).

", + "GetInsightSelectorsRequest$EventDataStore": "

Specifies the ARN (or ID suffix of the ARN) of the event data store for which you want to get Insights selectors.

You cannot use this parameter with the TrailName parameter.

", + "GetInsightSelectorsResponse$EventDataStoreArn": "

The ARN of the source event data store that enabled Insights events.

", + "GetInsightSelectorsResponse$InsightsDestination": "

The ARN of the destination event data store that logs Insights events.

", "GetQueryResultsRequest$EventDataStore": "

The ARN (or ID suffix of the ARN) of the event data store against which the query was run.

", "ImportDestinations$member": null, "ListImportsRequest$Destination": "

The ARN of the destination event data store.

", "ListQueriesRequest$EventDataStore": "

The ARN (or the ID suffix of the ARN) of an event data store on which queries were run.

", + "PutInsightSelectorsRequest$EventDataStore": "

The ARN (or ID suffix of the ARN) of the source event data store for which you want to change or add Insights selectors. To enable Insights on an event data store, you must provide both the EventDataStore and InsightsDestination parameters.

You cannot use this parameter with the TrailName parameter.

", + "PutInsightSelectorsRequest$InsightsDestination": "

The ARN (or ID suffix of the ARN) of the destination event data store that logs Insights events. To enable Insights on an event data store, you must provide both the EventDataStore and InsightsDestination parameters.

You cannot use this parameter with the TrailName parameter.

", + "PutInsightSelectorsResponse$EventDataStoreArn": "

The Amazon Resource Name (ARN) of the source event data store for which you want to change or add Insights selectors.

", + "PutInsightSelectorsResponse$InsightsDestination": "

The ARN of the destination event data store that logs Insights events.

", "RestoreEventDataStoreRequest$EventDataStore": "

The ARN (or the ID suffix of the ARN) of the event data store that you want to restore.

", "RestoreEventDataStoreResponse$EventDataStoreArn": "

The event data store ARN.

", "StartEventDataStoreIngestionRequest$EventDataStore": "

The ARN (or ID suffix of the ARN) of the event data store for which you want to start ingestion.

", @@ -540,6 +594,11 @@ "UpdateEventDataStoreResponse$EventDataStoreArn": "

The ARN of the event data store.

" } }, + "EventDataStoreFederationEnabledException": { + "base": "

You cannot delete the event data store because Lake query federation is enabled. To delete the event data store, run the DisableFederation operation to disable Lake query federation on the event data store.

", + "refs": { + } + }, "EventDataStoreHasOngoingImportException": { "base": "

This exception is thrown when you try to update or delete an event data store that currently has an import in progress.

", "refs": { @@ -625,6 +684,24 @@ "EventSelector$ExcludeManagementEventSources": "

An optional list of service event sources from which you do not want management events to be logged on your trail. In this release, the list can be empty (disables the filter), or it can filter out Key Management Service or Amazon RDS Data API events by containing kms.amazonaws.com or rdsdata.amazonaws.com. By default, ExcludeManagementEventSources is empty, and KMS and Amazon RDS Data API events are logged to your trail. You can exclude management event sources only in Regions that support the event source.

" } }, + "FederationRoleArn": { + "base": null, + "refs": { + "EnableFederationRequest$FederationRoleArn": "

The ARN of the federation role to use for the event data store. Amazon Web Services services like Lake Formation use this federation role to access data for the federated event data store. The federation role must exist in your account and provide the required minimum permissions.

", + "EnableFederationResponse$FederationRoleArn": "

The ARN of the federation role.

", + "GetEventDataStoreResponse$FederationRoleArn": "

If Lake query federation is enabled, provides the ARN of the federation role used to access the resources for the federated event data store.

", + "UpdateEventDataStoreResponse$FederationRoleArn": "

If Lake query federation is enabled, provides the ARN of the federation role used to access the resources for the federated event data store.

" + } + }, + "FederationStatus": { + "base": null, + "refs": { + "DisableFederationResponse$FederationStatus": "

The federation status.

", + "EnableFederationResponse$FederationStatus": "

The federation status.

", + "GetEventDataStoreResponse$FederationStatus": "

Indicates the Lake query federation status. The status is ENABLED if Lake query federation is enabled, or DISABLED if Lake query federation is disabled. You cannot delete an event data store if the FederationStatus is ENABLED.

", + "UpdateEventDataStoreResponse$FederationStatus": "

Indicates the Lake query federation status. The status is ENABLED if Lake query federation is enabled, or DISABLED if Lake query federation is disabled. You cannot delete an event data store if the FederationStatus is ENABLED.

" + } + }, "GetChannelRequest": { "base": null, "refs": { @@ -803,12 +880,12 @@ } }, "InsightNotEnabledException": { - "base": "

If you run GetInsightSelectors on a trail that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException.

", + "base": "

If you run GetInsightSelectors on a trail or event data store that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException.

", "refs": { } }, "InsightSelector": { - "base": "

A JSON string that contains a list of Insights types that are logged on a trail.

", + "base": "

A JSON string that contains a list of Insights types that are logged on a trail or event data store.

", "refs": { "InsightSelectors$member": null } @@ -816,15 +893,15 @@ "InsightSelectors": { "base": null, "refs": { - "GetInsightSelectorsResponse$InsightSelectors": "

A JSON string that contains the insight types you want to log on a trail. In this release, ApiErrorRateInsight and ApiCallRateInsight are supported as insight types.

", - "PutInsightSelectorsRequest$InsightSelectors": "

A JSON string that contains the insight types you want to log on a trail. ApiCallRateInsight and ApiErrorRateInsight are valid Insight types.

The ApiCallRateInsight Insights type analyzes write-only management API calls that are aggregated per minute against a baseline API call volume.

The ApiErrorRateInsight Insights type analyzes management API calls that result in error codes. The error is shown if the API call is unsuccessful.

", - "PutInsightSelectorsResponse$InsightSelectors": "

A JSON string that contains the Insights event types that you want to log on a trail. The valid Insights types in this release are ApiErrorRateInsight and ApiCallRateInsight.

" + "GetInsightSelectorsResponse$InsightSelectors": "

A JSON string that contains the Insight types you want to log on a trail or event data store. ApiErrorRateInsight and ApiCallRateInsight are supported as Insights types.

", + "PutInsightSelectorsRequest$InsightSelectors": "

A JSON string that contains the Insights types you want to log on a trail or event data store. ApiCallRateInsight and ApiErrorRateInsight are valid Insight types.

The ApiCallRateInsight Insights type analyzes write-only management API calls that are aggregated per minute against a baseline API call volume.

The ApiErrorRateInsight Insights type analyzes management API calls that result in error codes. The error is shown if the API call is unsuccessful.

", + "PutInsightSelectorsResponse$InsightSelectors": "

A JSON string that contains the Insights event types that you want to log on a trail or event data store. The valid Insights types are ApiErrorRateInsight and ApiCallRateInsight.

" } }, "InsightType": { "base": null, "refs": { - "InsightSelector$InsightType": "

The type of Insights events to log on a trail. ApiCallRateInsight and ApiErrorRateInsight are valid Insight types.

The ApiCallRateInsight Insights type analyzes write-only management API calls that are aggregated per minute against a baseline API call volume.

The ApiErrorRateInsight Insights type analyzes management API calls that result in error codes. The error is shown if the API call is unsuccessful.

" + "InsightSelector$InsightType": "

The type of Insights events to log on a trail or event data store. ApiCallRateInsight and ApiErrorRateInsight are valid Insight types.

The ApiCallRateInsight Insights type analyzes write-only management API calls that are aggregated per minute against a baseline API call volume.

The ApiErrorRateInsight Insights type analyzes management API calls that result in error codes. The error is shown if the API call is unsuccessful.

" } }, "InsufficientDependencyServiceAccessPermissionException": { @@ -901,7 +978,7 @@ } }, "InvalidInsightSelectorsException": { - "base": "

The formatting or syntax of the InsightSelectors JSON statement in your PutInsightSelectors or GetInsightSelectors request is not valid, or the specified insight type in the InsightSelectors statement is not a valid insight type.

", + "base": "

For PutInsightSelectors, this exception is thrown when the formatting or syntax of the InsightSelectors JSON statement is not valid, or the specified InsightType in the InsightSelectors statement is not valid. Valid values for InsightType are ApiCallRateInsight and ApiErrorRateInsight. To enable Insights on an event data store, the destination event data store specified by the InsightsDestination parameter must log Insights events and the source event data store specified by the EventDataStore parameter must log management events.

For UpdateEventDataStore, this exception is thrown if Insights are enabled on the event data store and the updated advanced event selectors are not compatible with the configured InsightSelectors. If the InsightSelectors includes an InsightType of ApiCallRateInsight, the source event data store must log write management events. If the InsightSelectors includes an InsightType of ApiErrorRateInsight, the source event data store must log management events.

", "refs": { } }, @@ -1506,12 +1583,12 @@ "RetentionPeriod": { "base": null, "refs": { - "CreateEventDataStoreRequest$RetentionPeriod": "

The retention period of the event data store, in days. You can set a retention period of up to 2557 days, the equivalent of seven years. CloudTrail Lake determines whether to retain an event by checking if the eventTime of the event is within the specified retention period. For example, if you set a retention period of 90 days, CloudTrail will remove events when the eventTime is older than 90 days.

If you plan to copy trail events to this event data store, we recommend that you consider both the age of the events that you want to copy as well as how long you want to keep the copied events in your event data store. For example, if you copy trail events that are 5 years old and specify a retention period of 7 years, the event data store will retain those events for two years.

", + "CreateEventDataStoreRequest$RetentionPeriod": "

The retention period of the event data store, in days. If BillingMode is set to EXTENDABLE_RETENTION_PRICING, you can set a retention period of up to 3653 days, the equivalent of 10 years. If BillingMode is set to FIXED_RETENTION_PRICING, you can set a retention period of up to 2557 days, the equivalent of seven years.

CloudTrail Lake determines whether to retain an event by checking if the eventTime of the event is within the specified retention period. For example, if you set a retention period of 90 days, CloudTrail will remove events when the eventTime is older than 90 days.

If you plan to copy trail events to this event data store, we recommend that you consider both the age of the events that you want to copy as well as how long you want to keep the copied events in your event data store. For example, if you copy trail events that are 5 years old and specify a retention period of 7 years, the event data store will retain those events for two years.

", "CreateEventDataStoreResponse$RetentionPeriod": "

The retention period of an event data store, in days.

", "EventDataStore$RetentionPeriod": "

The retention period, in days.

", "GetEventDataStoreResponse$RetentionPeriod": "

The retention period of the event data store, in days.

", "RestoreEventDataStoreResponse$RetentionPeriod": "

The retention period, in days.

", - "UpdateEventDataStoreRequest$RetentionPeriod": "

The retention period of the event data store, in days. You can set a retention period of up to 2557 days, the equivalent of seven years. CloudTrail Lake determines whether to retain an event by checking if the eventTime of the event is within the specified retention period. For example, if you set a retention period of 90 days, CloudTrail will remove events when the eventTime is older than 90 days.

If you decrease the retention period of an event data store, CloudTrail will remove any events with an eventTime older than the new retention period. For example, if the previous retention period was 365 days and you decrease it to 100 days, CloudTrail will remove events with an eventTime older than 100 days.

", + "UpdateEventDataStoreRequest$RetentionPeriod": "

The retention period of the event data store, in days. If BillingMode is set to EXTENDABLE_RETENTION_PRICING, you can set a retention period of up to 3653 days, the equivalent of 10 years. If BillingMode is set to FIXED_RETENTION_PRICING, you can set a retention period of up to 2557 days, the equivalent of seven years.

CloudTrail Lake determines whether to retain an event by checking if the eventTime of the event is within the specified retention period. For example, if you set a retention period of 90 days, CloudTrail will remove events when the eventTime is older than 90 days.

If you decrease the retention period of an event data store, CloudTrail will remove any events with an eventTime older than the new retention period. For example, if the previous retention period was 365 days and you decrease it to 100 days, CloudTrail will remove events with an eventTime older than 100 days.

", "UpdateEventDataStoreResponse$RetentionPeriod": "

The retention period, in days.

" } }, @@ -1529,7 +1606,7 @@ "SelectorField": { "base": null, "refs": { - "AdvancedFieldSelector$Field": "

A field in a CloudTrail event record on which to filter events to be logged. For event data stores for Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, the field is used only for selecting events as filtering is not supported.

For CloudTrail event records, supported fields include readOnly, eventCategory, eventSource (for management events), eventName, resources.type, and resources.ARN.

For event data stores for Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, the only supported field is eventCategory.

  • readOnly - Optional. Can be set to Equals a value of true or false. If you do not add this field, CloudTrail logs both read and write events. A value of true logs only read events. A value of false logs only write events.

  • eventSource - For filtering management events only. This can be set only to NotEquals kms.amazonaws.com.

  • eventName - Can use any operator. You can use it to filter in or filter out any data event logged to CloudTrail, such as PutBucket or GetSnapshotBlock. You can have multiple values for this field, separated by commas.

  • eventCategory - This is required and must be set to Equals.

    • For CloudTrail event records, the value must be Management or Data.

    • For Config configuration items, the value must be ConfigurationItem.

    • For Audit Manager evidence, the value must be Evidence.

    • For non-Amazon Web Services events, the value must be ActivityAuditLog.

  • resources.type - This field is required for CloudTrail data events. resources.type can only use the Equals operator, and the value can be one of the following:

    • AWS::DynamoDB::Table

    • AWS::Lambda::Function

    • AWS::S3::Object

    • AWS::CloudTrail::Channel

    • AWS::CodeWhisperer::Profile

    • AWS::Cognito::IdentityPool

    • AWS::DynamoDB::Stream

    • AWS::EC2::Snapshot

    • AWS::EMRWAL::Workspace

    • AWS::FinSpace::Environment

    • AWS::Glue::Table

    • AWS::GuardDuty::Detector

    • AWS::KendraRanking::ExecutionPlan

    • AWS::ManagedBlockchain::Network

    • AWS::ManagedBlockchain::Node

    • AWS::MedicalImaging::Datastore

    • AWS::SageMaker::ExperimentTrialComponent

    • AWS::SageMaker::FeatureGroup

    • AWS::S3::AccessPoint

    • AWS::S3ObjectLambda::AccessPoint

    • AWS::S3Outposts::Object

    • AWS::SSMMessages::ControlChannel

    • AWS::VerifiedPermissions::PolicyStore

    You can have only one resources.type field per selector. To log data events on more than one resource type, add another selector.

  • resources.ARN - You can use any operator with resources.ARN, but if you use Equals or NotEquals, the value must exactly match the ARN of a valid resource of the type you've specified in the template as the value of resources.type. For example, if resources.type equals AWS::S3::Object, the ARN must be in one of the following formats. To log all data events for all objects in a specific S3 bucket, use the StartsWith operator, and include only the bucket ARN as the matching value.

    The trailing slash is intentional; do not exclude it. Replace the text between less than and greater than symbols (<>) with resource-specific information.

    • arn:<partition>:s3:::<bucket_name>/

    • arn:<partition>:s3:::<bucket_name>/<object_path>/

    When resources.type equals AWS::DynamoDB::Table, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:dynamodb:<region>:<account_ID>:table/<table_name>

    When resources.type equals AWS::Lambda::Function, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:lambda:<region>:<account_ID>:function:<function_name>

    When resources.type equals AWS::CloudTrail::Channel, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:cloudtrail:<region>:<account_ID>:channel/<channel_UUID>

    When resources.type equals AWS::CodeWhisperer::Profile, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:codewhisperer:<region>:<account_ID>:profile/<profile_ID>

    When resources.type equals AWS::Cognito::IdentityPool, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:cognito-identity:<region>:<account_ID>:identitypool/<identity_pool_ID>

    When resources.type equals AWS::DynamoDB::Stream, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:dynamodb:<region>:<account_ID>:table/<table_name>/stream/<date_time>

    When resources.type equals AWS::EC2::Snapshot, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:ec2:<region>::snapshot/<snapshot_ID>

    When resources.type equals AWS::EMRWAL::Workspace, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:emrwal:<region>::workspace/<workspace_name>

    When resources.type equals AWS::FinSpace::Environment, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:finspace:<region>:<account_ID>:environment/<environment_ID>

    When resources.type equals AWS::Glue::Table, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:glue:<region>:<account_ID>:table/<database_name>/<table_name>

    When resources.type equals AWS::GuardDuty::Detector, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:guardduty:<region>:<account_ID>:detector/<detector_ID>

    When resources.type equals AWS::KendraRanking::ExecutionPlan, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:kendra-ranking:<region>:<account_ID>:rescore-execution-plan/<rescore_execution_plan_ID>

    When resources.type equals AWS::ManagedBlockchain::Network, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:managedblockchain:::networks/<network_name>

    When resources.type equals AWS::ManagedBlockchain::Node, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:managedblockchain:<region>:<account_ID>:nodes/<node_ID>

    When resources.type equals AWS::MedicalImaging::Datastore, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:medical-imaging:<region>:<account_ID>:datastore/<data_store_ID>

    When resources.type equals AWS::SageMaker::ExperimentTrialComponent, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sagemaker:<region>:<account_ID>:experiment-trial-component/<experiment_trial_component_name>

    When resources.type equals AWS::SageMaker::FeatureGroup, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sagemaker:<region>:<account_ID>:feature-group/<feature_group_name>

    When resources.type equals AWS::S3::AccessPoint, and the operator is set to Equals or NotEquals, the ARN must be in one of the following formats. To log events on all objects in an S3 access point, we recommend that you use only the access point ARN, don’t include the object path, and use the StartsWith or NotStartsWith operators.

    • arn:<partition>:s3:<region>:<account_ID>:accesspoint/<access_point_name>

    • arn:<partition>:s3:<region>:<account_ID>:accesspoint/<access_point_name>/object/<object_path>

    When resources.type equals AWS::S3ObjectLambda::AccessPoint, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:s3-object-lambda:<region>:<account_ID>:accesspoint/<access_point_name>

    When resources.type equals AWS::S3Outposts::Object, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:s3-outposts:<region>:<account_ID>:<object_path>

    When resources.type equals AWS::SSMMessages::ControlChannel, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:ssmmessages:<region>:<account_ID>:control-channel/<channel_ID>

    When resources.type equals AWS::VerifiedPermissions::PolicyStore, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:verifiedpermissions:<region>:<account_ID>:policy-store/<policy_store_UUID>

" + "AdvancedFieldSelector$Field": "

A field in a CloudTrail event record on which to filter events to be logged. For event data stores for Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, the field is used only for selecting events as filtering is not supported.

For CloudTrail event records, supported fields include readOnly, eventCategory, eventSource (for management events), eventName, resources.type, and resources.ARN.

For event data stores for Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, the only supported field is eventCategory.

  • readOnly - Optional. Can be set to Equals a value of true or false. If you do not add this field, CloudTrail logs both read and write events. A value of true logs only read events. A value of false logs only write events.

  • eventSource - For filtering management events only. This can be set to NotEquals kms.amazonaws.com or NotEquals rdsdata.amazonaws.com.

  • eventName - Can use any operator. You can use it to filter in or filter out any data event logged to CloudTrail, such as PutBucket or GetSnapshotBlock. You can have multiple values for this field, separated by commas.

  • eventCategory - This is required and must be set to Equals.

    • For CloudTrail event records, the value must be Management or Data.

    • For CloudTrail Insights event records, the value must be Insight.

    • For Config configuration items, the value must be ConfigurationItem.

    • For Audit Manager evidence, the value must be Evidence.

    • For non-Amazon Web Services events, the value must be ActivityAuditLog.

  • resources.type - This field is required for CloudTrail data events. resources.type can only use the Equals operator, and the value can be one of the following:

    • AWS::DynamoDB::Table

    • AWS::Lambda::Function

    • AWS::S3::Object

    • AWS::CloudTrail::Channel

    • AWS::CodeWhisperer::Customization

    • AWS::CodeWhisperer::Profile

    • AWS::Cognito::IdentityPool

    • AWS::DynamoDB::Stream

    • AWS::EC2::Snapshot

    • AWS::EMRWAL::Workspace

    • AWS::FinSpace::Environment

    • AWS::Glue::Table

    • AWS::GuardDuty::Detector

    • AWS::KendraRanking::ExecutionPlan

    • AWS::KinesisVideo::Stream

    • AWS::ManagedBlockchain::Network

    • AWS::ManagedBlockchain::Node

    • AWS::MedicalImaging::Datastore

    • AWS::PCAConnectorAD::Connector

    • AWS::SageMaker::Endpoint

    • AWS::SageMaker::ExperimentTrialComponent

    • AWS::SageMaker::FeatureGroup

    • AWS::SNS::PlatformEndpoint

    • AWS::SNS::Topic

    • AWS::S3::AccessPoint

    • AWS::S3ObjectLambda::AccessPoint

    • AWS::S3Outposts::Object

    • AWS::SSMMessages::ControlChannel

    • AWS::Timestream::Database

    • AWS::Timestream::Table

    • AWS::VerifiedPermissions::PolicyStore

    You can have only one resources.type field per selector. To log data events on more than one resource type, add another selector.

  • resources.ARN - You can use any operator with resources.ARN, but if you use Equals or NotEquals, the value must exactly match the ARN of a valid resource of the type you've specified in the template as the value of resources.type. For example, if resources.type equals AWS::S3::Object, the ARN must be in one of the following formats. To log all data events for all objects in a specific S3 bucket, use the StartsWith operator, and include only the bucket ARN as the matching value.

    The trailing slash is intentional; do not exclude it. Replace the text between less than and greater than symbols (<>) with resource-specific information.

    • arn:<partition>:s3:::<bucket_name>/

    • arn:<partition>:s3:::<bucket_name>/<object_path>/

    When resources.type equals AWS::DynamoDB::Table, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:dynamodb:<region>:<account_ID>:table/<table_name>

    When resources.type equals AWS::Lambda::Function, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:lambda:<region>:<account_ID>:function:<function_name>

    When resources.type equals AWS::CloudTrail::Channel, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:cloudtrail:<region>:<account_ID>:channel/<channel_UUID>

    When resources.type equals AWS::CodeWhisperer::Customization, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:codewhisperer:<region>:<account_ID>:customization/<customization_ID>

    When resources.type equals AWS::CodeWhisperer::Profile, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:codewhisperer:<region>:<account_ID>:profile/<profile_ID>

    When resources.type equals AWS::Cognito::IdentityPool, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:cognito-identity:<region>:<account_ID>:identitypool/<identity_pool_ID>

    When resources.type equals AWS::DynamoDB::Stream, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:dynamodb:<region>:<account_ID>:table/<table_name>/stream/<date_time>

    When resources.type equals AWS::EC2::Snapshot, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:ec2:<region>::snapshot/<snapshot_ID>

    When resources.type equals AWS::EMRWAL::Workspace, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:emrwal:<region>::workspace/<workspace_name>

    When resources.type equals AWS::FinSpace::Environment, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:finspace:<region>:<account_ID>:environment/<environment_ID>

    When resources.type equals AWS::Glue::Table, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:glue:<region>:<account_ID>:table/<database_name>/<table_name>

    When resources.type equals AWS::GuardDuty::Detector, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:guardduty:<region>:<account_ID>:detector/<detector_ID>

    When resources.type equals AWS::KendraRanking::ExecutionPlan, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:kendra-ranking:<region>:<account_ID>:rescore-execution-plan/<rescore_execution_plan_ID>

    When resources.type equals AWS::KinesisVideo::Stream, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:kinesisvideo:<region>:<account_ID>:stream/<stream_name/<creation_time>

    When resources.type equals AWS::ManagedBlockchain::Network, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:managedblockchain:::networks/<network_name>

    When resources.type equals AWS::ManagedBlockchain::Node, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:managedblockchain:<region>:<account_ID>:nodes/<node_ID>

    When resources.type equals AWS::MedicalImaging::Datastore, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:medical-imaging:<region>:<account_ID>:datastore/<data_store_ID>

    When resources.type equals AWS::PCAConnectorAD::Connector, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:pca-connector-ad:<region>:<account_ID>:connector/<connector_ID>

    When resources.type equals AWS::SageMaker::Endpoint, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sagemaker:<region>:<account_ID>:endpoint/<endpoint_name>

    When resources.type equals AWS::SageMaker::ExperimentTrialComponent, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sagemaker:<region>:<account_ID>:experiment-trial-component/<experiment_trial_component_name>

    When resources.type equals AWS::SageMaker::FeatureGroup, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sagemaker:<region>:<account_ID>:feature-group/<feature_group_name>

    When resources.type equals AWS::SNS::PlatformEndpoint, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sns:<region>:<account_ID>:endpoint/<endpoint_type>/<endpoint_name>/<endpoint_ID>

    When resources.type equals AWS::SNS::Topic, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:sns:<region>:<account_ID>:<topic_name>

    When resources.type equals AWS::S3::AccessPoint, and the operator is set to Equals or NotEquals, the ARN must be in one of the following formats. To log events on all objects in an S3 access point, we recommend that you use only the access point ARN, don’t include the object path, and use the StartsWith or NotStartsWith operators.

    • arn:<partition>:s3:<region>:<account_ID>:accesspoint/<access_point_name>

    • arn:<partition>:s3:<region>:<account_ID>:accesspoint/<access_point_name>/object/<object_path>

    When resources.type equals AWS::S3ObjectLambda::AccessPoint, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:s3-object-lambda:<region>:<account_ID>:accesspoint/<access_point_name>

    When resources.type equals AWS::S3Outposts::Object, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:s3-outposts:<region>:<account_ID>:<object_path>

    When resources.type equals AWS::SSMMessages::ControlChannel, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:ssmmessages:<region>:<account_ID>:control-channel/<channel_ID>

    When resources.type equals AWS::Timestream::Database, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:timestream:<region>:<account_ID>:database/<database_name>

    When resources.type equals AWS::Timestream::Table, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:timestream:<region>:<account_ID>:database/<database_name>/table/<table_name>

    When resources.type equals AWS::VerifiedPermissions::PolicyStore, and the operator is set to Equals or NotEquals, the ARN must be in the following format:

    • arn:<partition>:verifiedpermissions:<region>:<account_ID>:policy-store/<policy_store_UUID>

" } }, "SelectorName": { @@ -1631,7 +1708,7 @@ "CreateTrailRequest$S3BucketName": "

Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.

", "CreateTrailRequest$S3KeyPrefix": "

Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files. The maximum length is 200 characters.

", "CreateTrailRequest$SnsTopicName": "

Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.

", - "CreateTrailRequest$CloudWatchLogsLogGroupArn": "

Specifies a log group name using an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs will be delivered. You must use a log group that exists in your account.

Not required unless you specify CloudWatchLogsRoleArn.

", + "CreateTrailRequest$CloudWatchLogsLogGroupArn": "

Specifies a log group name using an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs will be delivered. You must use a log group that exists in your account.

Not required unless you specify CloudWatchLogsRoleArn.

Only the management account can configure a CloudWatch Logs log group for an organization trail.

", "CreateTrailRequest$CloudWatchLogsRoleArn": "

Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group. You must use a role that exists in your account.

", "CreateTrailRequest$KmsKeyId": "

Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. The value can be an alias name prefixed by alias/, a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.

CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using multi-Region keys in the Key Management Service Developer Guide.

Examples:

  • alias/MyAliasName

  • arn:aws:kms:us-east-2:123456789012:alias/MyAliasName

  • arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012

  • 12345678-1234-1234-1234-123456789012

", "CreateTrailResponse$Name": "

Specifies the name of the trail.

", @@ -1643,7 +1720,7 @@ "CreateTrailResponse$CloudWatchLogsLogGroupArn": "

Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail logs will be delivered.

", "CreateTrailResponse$CloudWatchLogsRoleArn": "

Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.

", "CreateTrailResponse$KmsKeyId": "

Specifies the KMS key ID that encrypts the events delivered by CloudTrail. The value is a fully specified ARN to a KMS key in the following format.

arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012

", - "DataResource$Type": "

The resource type in which you want to log data events. You can specify the following basic event selector resource types:

  • AWS::DynamoDB::Table

  • AWS::Lambda::Function

  • AWS::S3::Object

The following resource types are also available through advanced event selectors. Basic event selector resource types are valid in advanced event selectors, but advanced event selector resource types are not valid in basic event selectors. For more information, see AdvancedFieldSelector.

  • AWS::CloudTrail::Channel

  • AWS::CodeWhisperer::Profile

  • AWS::Cognito::IdentityPool

  • AWS::DynamoDB::Stream

  • AWS::EC2::Snapshot

  • AWS::EMRWAL::Workspace

  • AWS::FinSpace::Environment

  • AWS::Glue::Table

  • AWS::GuardDuty::Detector

  • AWS::KendraRanking::ExecutionPlan

  • AWS::ManagedBlockchain::Network

  • AWS::ManagedBlockchain::Node

  • AWS::MedicalImaging::Datastore

  • AWS::SageMaker::ExperimentTrialComponent

  • AWS::SageMaker::FeatureGroup

  • AWS::S3::AccessPoint

  • AWS::S3ObjectLambda::AccessPoint

  • AWS::S3Outposts::Object

  • AWS::SSMMessages::ControlChannel

  • AWS::VerifiedPermissions::PolicyStore

", + "DataResource$Type": "

The resource type in which you want to log data events. You can specify the following basic event selector resource types:

  • AWS::DynamoDB::Table

  • AWS::Lambda::Function

  • AWS::S3::Object

The following resource types are also available through advanced event selectors. Basic event selector resource types are valid in advanced event selectors, but advanced event selector resource types are not valid in basic event selectors. For more information, see AdvancedFieldSelector.

  • AWS::CloudTrail::Channel

  • AWS::CodeWhisperer::Customization

  • AWS::CodeWhisperer::Profile

  • AWS::Cognito::IdentityPool

  • AWS::DynamoDB::Stream

  • AWS::EC2::Snapshot

  • AWS::EMRWAL::Workspace

  • AWS::FinSpace::Environment

  • AWS::Glue::Table

  • AWS::GuardDuty::Detector

  • AWS::KendraRanking::ExecutionPlan

  • AWS::KinesisVideo::Stream

  • AWS::ManagedBlockchain::Network

  • AWS::ManagedBlockchain::Node

  • AWS::MedicalImaging::Datastore

  • AWS::PCAConnectorAD::Connector

  • AWS::SageMaker::Endpoint

  • AWS::SageMaker::ExperimentTrialComponent

  • AWS::SageMaker::FeatureGroup

  • AWS::SNS::PlatformEndpoint

  • AWS::SNS::Topic

  • AWS::S3::AccessPoint

  • AWS::S3ObjectLambda::AccessPoint

  • AWS::S3Outposts::Object

  • AWS::SSMMessages::ControlChannel

  • AWS::Timestream::Database

  • AWS::Timestream::Table

  • AWS::VerifiedPermissions::PolicyStore

", "DataResourceValues$member": null, "DeleteTrailRequest$Name": "

Specifies the name or the CloudTrail ARN of the trail to be deleted. The following is the format of a trail ARN. arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

", "Event$EventId": "

The CloudTrail ID of the event returned.

", @@ -1656,7 +1733,7 @@ "ExcludeManagementEventSources$member": null, "GetEventSelectorsRequest$TrailName": "

Specifies the name of the trail or trail ARN. If you specify a trail name, the string must meet the following requirements:

  • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

  • Start with a letter or number, and end with a letter or number

  • Be between 3 and 128 characters

  • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are not valid.

  • Not be in IP address format (for example, 192.168.5.4)

If you specify a trail ARN, it must be in the format:

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

", "GetEventSelectorsResponse$TrailARN": "

The specified trail ARN that has the event selectors.

", - "GetInsightSelectorsRequest$TrailName": "

Specifies the name of the trail or trail ARN. If you specify a trail name, the string must meet the following requirements:

  • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

  • Start with a letter or number, and end with a letter or number

  • Be between 3 and 128 characters

  • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are not valid.

  • Not be in IP address format (for example, 192.168.5.4)

If you specify a trail ARN, it must be in the format:

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

", + "GetInsightSelectorsRequest$TrailName": "

Specifies the name of the trail or trail ARN. If you specify a trail name, the string must meet the following requirements:

  • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

  • Start with a letter or number, and end with a letter or number

  • Be between 3 and 128 characters

  • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are not valid.

  • Not be in IP address format (for example, 192.168.5.4)

If you specify a trail ARN, it must be in the format:

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

You cannot use this parameter with the EventDataStore parameter.

", "GetInsightSelectorsResponse$TrailARN": "

The Amazon Resource Name (ARN) of a trail for which you want to get Insights selectors.

", "GetTrailRequest$Name": "

The name or the Amazon Resource Name (ARN) of the trail for which you want to retrieve settings information.

", "GetTrailStatusRequest$Name": "

Specifies the name or the CloudTrail ARN of the trail for which you are requesting status. To get the status of a shadow trail (a replication of the trail in another Region), you must specify its ARN. The following is the format of a trail ARN.

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

", @@ -1682,7 +1759,7 @@ "PublicKey$Fingerprint": "

The fingerprint of the public key.

", "PutEventSelectorsRequest$TrailName": "

Specifies the name of the trail or trail ARN. If you specify a trail name, the string must meet the following requirements:

  • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

  • Start with a letter or number, and end with a letter or number

  • Be between 3 and 128 characters

  • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are not valid.

  • Not be in IP address format (for example, 192.168.5.4)

If you specify a trail ARN, it must be in the following format.

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

", "PutEventSelectorsResponse$TrailARN": "

Specifies the ARN of the trail that was updated with event selectors. The following is the format of a trail ARN.

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

", - "PutInsightSelectorsRequest$TrailName": "

The name of the CloudTrail trail for which you want to change or add Insights selectors.

", + "PutInsightSelectorsRequest$TrailName": "

The name of the CloudTrail trail for which you want to change or add Insights selectors.

You cannot use this parameter with the EventDataStore and InsightsDestination parameters.

", "PutInsightSelectorsResponse$TrailARN": "

The Amazon Resource Name (ARN) of a trail for which you want to change or add Insights selectors.

", "RemoveTagsRequest$ResourceId": "

Specifies the ARN of the trail, event data store, or channel from which tags should be removed.

Example trail ARN format: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

Example event data store ARN format: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

Example channel ARN format: arn:aws:cloudtrail:us-east-2:123456789012:channel/01234567890

", "Resource$ResourceType": "

The type of a resource referenced by the event returned. When the resource type cannot be determined, null is returned. Some examples of resource types are: Instance for EC2, Trail for CloudTrail, DBInstance for Amazon RDS, and AccessKey for IAM. To learn more about how to look up and filter events by the resource types supported for a service, see Filtering CloudTrail Events.

", @@ -1712,7 +1789,7 @@ "UpdateTrailRequest$S3BucketName": "

Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.

", "UpdateTrailRequest$S3KeyPrefix": "

Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files. The maximum length is 200 characters.

", "UpdateTrailRequest$SnsTopicName": "

Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.

", - "UpdateTrailRequest$CloudWatchLogsLogGroupArn": "

Specifies a log group name using an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs are delivered. You must use a log group that exists in your account.

Not required unless you specify CloudWatchLogsRoleArn.

", + "UpdateTrailRequest$CloudWatchLogsLogGroupArn": "

Specifies a log group name using an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs are delivered. You must use a log group that exists in your account.

Not required unless you specify CloudWatchLogsRoleArn.

Only the management account can configure a CloudWatch Logs log group for an organization trail.

", "UpdateTrailRequest$CloudWatchLogsRoleArn": "

Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group. You must use a role that exists in your account.

", "UpdateTrailRequest$KmsKeyId": "

Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. The value can be an alias name prefixed by \"alias/\", a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.

CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using multi-Region keys in the Key Management Service Developer Guide.

Examples:

  • alias/MyAliasName

  • arn:aws:kms:us-east-2:123456789012:alias/MyAliasName

  • arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012

  • 12345678-1234-1234-1234-123456789012

", "UpdateTrailResponse$Name": "

Specifies the name of the trail.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudtrail/2013-11-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudtrail/2013-11-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cloudtrail/2013-11-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cloudtrail/2013-11-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -269,14 +265,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -290,7 +288,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -310,7 +307,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -321,14 +317,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -339,9 +337,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1014,7 +1014,12 @@ "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", - "BUILD_GENERAL1_2XLARGE" + "BUILD_GENERAL1_2XLARGE", + "BUILD_LAMBDA_1GB", + "BUILD_LAMBDA_2GB", + "BUILD_LAMBDA_4GB", + "BUILD_LAMBDA_8GB", + "BUILD_LAMBDA_10GB" ] }, "ComputeTypesAllowed":{ @@ -1274,7 +1279,9 @@ "LINUX_CONTAINER", "LINUX_GPU_CONTAINER", "ARM_CONTAINER", - "WINDOWS_SERVER_2019_CONTAINER" + "WINDOWS_SERVER_2019_CONTAINER", + "LINUX_LAMBDA_CONTAINER", + "ARM_LAMBDA_CONTAINER" ] }, "EnvironmentVariable":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -44,7 +44,7 @@ "StopBuild": "

Attempts to stop running a build.

", "StopBuildBatch": "

Stops a running batch build.

", "UpdateProject": "

Changes the settings of a build project.

", - "UpdateProjectVisibility": "

Changes the public visibility for a project. The project's build results, logs, and artifacts are available to the general public. For more information, see Public build projects in the CodeBuild User Guide.

The following should be kept in mind when making your projects public:

  • All of a project's build results, logs, and artifacts, including builds that were run when the project was private, are available to the general public.

  • All build logs and artifacts are available to the public. Environment variables, source code, and other sensitive information may have been output to the build logs and artifacts. You must be careful about what information is output to the build logs. Some best practice are:

    • Do not store sensitive values, especially Amazon Web Services access key IDs and secret access keys, in environment variables. We recommend that you use an Amazon EC2 Systems Manager Parameter Store or Secrets Manager to store sensitive values.

    • Follow Best practices for using webhooks in the CodeBuild User Guide to limit which entities can trigger a build, and do not store the buildspec in the project itself, to ensure that your webhooks are as secure as possible.

  • A malicious user can use public builds to distribute malicious artifacts. We recommend that you review all pull requests to verify that the pull request is a legitimate change. We also recommend that you validate any artifacts with their checksums to make sure that the correct artifacts are being downloaded.

", + "UpdateProjectVisibility": "

Changes the public visibility for a project. The project's build results, logs, and artifacts are available to the general public. For more information, see Public build projects in the CodeBuild User Guide.

The following should be kept in mind when making your projects public:

  • All of a project's build results, logs, and artifacts, including builds that were run when the project was private, are available to the general public.

  • All build logs and artifacts are available to the public. Environment variables, source code, and other sensitive information may have been output to the build logs and artifacts. You must be careful about what information is output to the build logs. Some best practice are:

    • Do not store sensitive values in environment variables. We recommend that you use an Amazon EC2 Systems Manager Parameter Store or Secrets Manager to store sensitive values.

    • Follow Best practices for using webhooks in the CodeBuild User Guide to limit which entities can trigger a build, and do not store the buildspec in the project itself, to ensure that your webhooks are as secure as possible.

  • A malicious user can use public builds to distribute malicious artifacts. We recommend that you review all pull requests to verify that the pull request is a legitimate change. We also recommend that you validate any artifacts with their checksums to make sure that the correct artifacts are being downloaded.

", "UpdateReportGroup": "

Updates a report group.

", "UpdateWebhook": "

Updates the webhook associated with an CodeBuild build project.

If you use Bitbucket for your repository, rotateSecret is ignored.

" }, @@ -371,7 +371,7 @@ "ComputeType": { "base": null, "refs": { - "ProjectEnvironment$computeType": "

Information about the compute resources the build project uses. Available values include:

  • BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for builds.

  • BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for builds.

  • BUILD_GENERAL1_LARGE: Use up to 16 GB memory and 8 vCPUs for builds, depending on your environment type.

  • BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.

If you use BUILD_GENERAL1_LARGE:

  • For environment type LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for builds.

  • For environment type LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.

  • For environment type ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on ARM-based processors for builds.

For more information, see Build Environment Compute Types in the CodeBuild User Guide.

", + "ProjectEnvironment$computeType": "

Information about the compute resources the build project uses. Available values include:

  • BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for builds.

  • BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for builds.

  • BUILD_GENERAL1_LARGE: Use up to 16 GB memory and 8 vCPUs for builds, depending on your environment type.

  • BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.

  • BUILD_LAMBDA_1GB: Use up to 1 GB memory for builds. Only available for environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER.

  • BUILD_LAMBDA_2GB: Use up to 2 GB memory for builds. Only available for environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER.

  • BUILD_LAMBDA_4GB: Use up to 4 GB memory for builds. Only available for environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER.

  • BUILD_LAMBDA_8GB: Use up to 8 GB memory for builds. Only available for environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER.

  • BUILD_LAMBDA_10GB: Use up to 10 GB memory for builds. Only available for environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER.

If you use BUILD_GENERAL1_SMALL:

  • For environment type LINUX_CONTAINER, you can use up to 3 GB memory and 2 vCPUs for builds.

  • For environment type LINUX_GPU_CONTAINER, you can use up to 16 GB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.

  • For environment type ARM_CONTAINER, you can use up to 4 GB memory and 2 vCPUs on ARM-based processors for builds.

If you use BUILD_GENERAL1_LARGE:

  • For environment type LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for builds.

  • For environment type LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.

  • For environment type ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on ARM-based processors for builds.

For more information, see Build Environment Compute Types in the CodeBuild User Guide.

", "StartBuildBatchInput$computeTypeOverride": "

The name of a compute type for this batch build that overrides the one specified in the batch build project.

", "StartBuildInput$computeTypeOverride": "

The name of a compute type for this build that overrides the one specified in the build project.

" } @@ -553,7 +553,7 @@ "EnvironmentType": { "base": null, "refs": { - "ProjectEnvironment$type": "

The type of build environment to use for related builds.

  • The environment type ARM_CONTAINER is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).

  • The environment type LINUX_CONTAINER with compute type build.general1.2xlarge is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China (Ningxia).

  • The environment type LINUX_GPU_CONTAINER is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China (Ningxia).

  • The environment types WINDOWS_CONTAINER and WINDOWS_SERVER_2019_CONTAINER are available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), and EU (Ireland).

For more information, see Build environment compute types in the CodeBuild user guide.

", + "ProjectEnvironment$type": "

The type of build environment to use for related builds.

  • The environment type ARM_CONTAINER is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).

  • The environment type LINUX_CONTAINER with compute type build.general1.2xlarge is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China (Ningxia).

  • The environment type LINUX_GPU_CONTAINER is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China (Ningxia).

  • The environment types ARM_LAMBDA_CONTAINER and LINUX_LAMBDA_CONTAINER are available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Mumbai), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), EU (Frankfurt), EU (Ireland), and South America (São Paulo).

  • The environment types WINDOWS_CONTAINER and WINDOWS_SERVER_2019_CONTAINER are available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), and EU (Ireland).

For more information, see Build environment compute types in the CodeBuild user guide.

", "StartBuildBatchInput$environmentTypeOverride": "

A container type for this batch build that overrides the one specified in the batch build project.

", "StartBuildInput$environmentTypeOverride": "

A container type for this build that overrides the one specified in the build project.

" } @@ -567,7 +567,7 @@ "EnvironmentVariableType": { "base": null, "refs": { - "EnvironmentVariable$type": "

The type of environment variable. Valid values include:

  • PARAMETER_STORE: An environment variable stored in Systems Manager Parameter Store. To learn how to specify a parameter store environment variable, see env/parameter-store in the CodeBuild User Guide.

  • PLAINTEXT: An environment variable in plain text format. This is the default value.

  • SECRETS_MANAGER: An environment variable stored in Secrets Manager. To learn how to specify a secrets manager environment variable, see env/secrets-manager in the CodeBuild User Guide.

" + "EnvironmentVariable$type": "

The type of environment variable. Valid values include:

  • PARAMETER_STORE: An environment variable stored in Systems Manager Parameter Store. For environment variables of this type, specify the name of the parameter as the value of the EnvironmentVariable. The parameter value will be substituted for the name at runtime. You can also define Parameter Store environment variables in the buildspec. To learn how to do so, see env/parameter-store in the CodeBuild User Guide.

  • PLAINTEXT: An environment variable in plain text format. This is the default value.

  • SECRETS_MANAGER: An environment variable stored in Secrets Manager. For environment variables of this type, specify the name of the secret as the value of the EnvironmentVariable. The secret value will be substituted for the name at runtime. You can also define Secrets Manager environment variables in the buildspec. To learn how to do so, see env/secrets-manager in the CodeBuild User Guide.

" } }, "EnvironmentVariables": { @@ -1551,14 +1551,14 @@ "base": null, "refs": { "Build$currentPhase": "

The current build phase.

", - "Build$initiator": "

The entity that started the build. Valid values include:

  • If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline).

  • If an IAM user started the build, the user's name (for example, MyUserName).

  • If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin.

", + "Build$initiator": "

The entity that started the build. Valid values include:

  • If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline).

  • If a user started the build, the user's name (for example, MyUserName).

  • If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin.

", "Build$buildBatchArn": "

The ARN of the batch build that this build is a member of, if applicable.

", "BuildArtifacts$location": "

Information about the location of the build artifacts.

", "BuildArtifacts$sha256sum": "

The SHA-256 hash of the build artifact.

You can use this hash along with a checksum tool to confirm file integrity and authenticity.

This value is available only if the build project's packaging value is set to ZIP.

", "BuildArtifacts$md5sum": "

The MD5 hash of the build artifact.

You can use this hash along with a checksum tool to confirm file integrity and authenticity.

This value is available only if the build project's packaging value is set to ZIP.

", "BuildArtifacts$artifactIdentifier": "

An identifier for this artifact definition.

", "BuildBatch$currentPhase": "

The current phase of the batch build.

", - "BuildBatch$initiator": "

The entity that started the batch build. Valid values include:

  • If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline).

  • If an IAM user started the build, the user's name.

  • If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin.

", + "BuildBatch$initiator": "

The entity that started the batch build. Valid values include:

  • If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline).

  • If a user started the build, the user's name.

  • If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin.

", "BuildGroup$identifier": "

Contains the identifier of the build group.

", "BuildNotDeleted$statusCode": "

Additional information about the build that could not be successfully deleted.

", "BuildReportArns$member": null, @@ -1577,7 +1577,7 @@ "DescribeTestCasesOutput$nextToken": "

During a previous call, the maximum number of items that can be returned is the value specified in maxResults. If there more items in the list, then a unique string called a nextToken is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.

", "EnvironmentImage$name": "

The name of the Docker image.

", "EnvironmentImage$description": "

The description of the Docker image.

", - "EnvironmentVariable$value": "

The value of the environment variable.

We strongly discourage the use of PLAINTEXT environment variables to store sensitive values, especially Amazon Web Services secret key IDs and secret access keys. PLAINTEXT environment variables can be displayed in plain text using the CodeBuild console and the CLI. For sensitive values, we recommend you use an environment variable of type PARAMETER_STORE or SECRETS_MANAGER.

", + "EnvironmentVariable$value": "

The value of the environment variable.

We strongly discourage the use of PLAINTEXT environment variables to store sensitive values, especially Amazon Web Services secret key IDs. PLAINTEXT environment variables can be displayed in plain text using the CodeBuild console and the CLI. For sensitive values, we recommend you use an environment variable of type PARAMETER_STORE or SECRETS_MANAGER.

", "ExportedEnvironmentVariable$value": "

The value assigned to the exported environment variable.

", "ImageVersions$member": null, "ListBuildBatchesForProjectInput$nextToken": "

The nextToken value returned from a previous call to ListBuildBatchesForProject. This specifies the next item to return. To return the beginning of the list, exclude this parameter.

", @@ -1601,9 +1601,9 @@ "ListSharedReportGroupsOutput$nextToken": "

During a previous call, the maximum number of items that can be returned is the value specified in maxResults. If there more items in the list, then a unique string called a nextToken is returned. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.

", "LogsLocation$groupName": "

The name of the CloudWatch Logs group for the build logs.

", "LogsLocation$streamName": "

The name of the CloudWatch Logs stream for the build logs.

", - "LogsLocation$deepLink": "

The URL to an individual build log in CloudWatch Logs.

", + "LogsLocation$deepLink": "

The URL to an individual build log in CloudWatch Logs. The log stream is created during the PROVISIONING phase of a build and the deeplink will not be valid until it is created.

", "LogsLocation$s3DeepLink": "

The URL to a build log in an S3 bucket.

", - "LogsLocation$cloudWatchLogsArn": "

The ARN of CloudWatch Logs for a build project. Its format is arn:${Partition}:logs:${Region}:${Account}:log-group:${LogGroupName}:log-stream:${LogStreamName}. For more information, see Resources Defined by CloudWatch Logs.

", + "LogsLocation$cloudWatchLogsArn": "

The ARN of the CloudWatch Logs stream for a build execution. Its format is arn:${Partition}:logs:${Region}:${Account}:log-group:${LogGroupName}:log-stream:${LogStreamName}. The CloudWatch Logs stream is created during the PROVISIONING phase of a build and the ARN will not be valid until it is created. For more information, see Resources Defined by CloudWatch Logs.

", "LogsLocation$s3LogsArn": "

The ARN of S3 logs for a build project. Its format is arn:${Partition}:s3:::${BucketName}/${ObjectName}. For more information, see Resources Defined by Amazon S3.

", "PhaseContext$statusCode": "

The status code for the context of the build phase.

", "PhaseContext$message": "

An explanation of the build phase's context. This might include a command ID and an exit code.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codebuild-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codebuild-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codebuild.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://codebuild.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codebuild/2016-10-06/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codebuild/2016-10-06/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,665 @@ +{ + "testCases": [ + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codebuild.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codebuild.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codedeploy/2014-10-06/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codedeploy/2014-10-06/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codedeploy/2014-10-06/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codedeploy/2014-10-06/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -19,7 +19,7 @@ "DeleteDeploymentConfig": "

Deletes a deployment configuration.

A deployment configuration cannot be deleted if it is currently in use. Predefined configurations cannot be deleted.

", "DeleteDeploymentGroup": "

Deletes a deployment group.

", "DeleteGitHubAccountToken": "

Deletes a GitHub account connection.

", - "DeleteResourcesByExternalId": "

Deletes resources linked to an external ID.

", + "DeleteResourcesByExternalId": "

Deletes resources linked to an external ID. This action only applies if you have configured blue/green deployments through CloudFormation.

It is not necessary to call this action directly. CloudFormation calls it on your behalf when it needs to delete stack resources. This action is offered publicly in case you need to delete resources to comply with General Data Protection Regulation (GDPR) requirements.

", "DeregisterOnPremisesInstance": "

Deregisters an on-premises instance.

", "GetApplication": "

Gets information about an application.

", "GetApplicationRevision": "

Gets information about an application revision.

", @@ -30,12 +30,12 @@ "GetDeploymentTarget": "

Returns information about a deployment target.

", "GetOnPremisesInstance": "

Gets information about an on-premises instance.

", "ListApplicationRevisions": "

Lists information about revisions for an application.

", - "ListApplications": "

Lists the applications registered with the IAM user or Amazon Web Services account.

", - "ListDeploymentConfigs": "

Lists the deployment configurations with the IAM user or Amazon Web Services account.

", - "ListDeploymentGroups": "

Lists the deployment groups for an application registered with the IAM user or Amazon Web Services account.

", - "ListDeploymentInstances": "

The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or Lambda.

Lists the instance for a deployment associated with the IAM user or Amazon Web Services account.

", + "ListApplications": "

Lists the applications registered with the user or Amazon Web Services account.

", + "ListDeploymentConfigs": "

Lists the deployment configurations with the user or Amazon Web Services account.

", + "ListDeploymentGroups": "

Lists the deployment groups for an application registered with the Amazon Web Services user or Amazon Web Services account.

", + "ListDeploymentInstances": "

The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or Lambda.

Lists the instance for a deployment associated with the user or Amazon Web Services account.

", "ListDeploymentTargets": "

Returns an array of target IDs that are associated a deployment.

", - "ListDeployments": "

Lists the deployments in a deployment group for an application registered with the IAM user or Amazon Web Services account.

", + "ListDeployments": "

Lists the deployments in a deployment group for an application registered with the user or Amazon Web Services account.

", "ListGitHubAccountTokenNames": "

Lists the names of stored connections to GitHub accounts.

", "ListOnPremisesInstances": "

Gets a list of names for one or more on-premises instances.

Unless otherwise specified, both registered and deregistered on-premises instance names are listed. To list only registered or deregistered on-premises instance names, use the registration status parameter.

", "ListTagsForResource": "

Returns a list of tags for the resource identified by a specified Amazon Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy resources.

", @@ -102,12 +102,12 @@ } }, "ApplicationAlreadyExistsException": { - "base": "

An application with the specified name with the IAM user or Amazon Web Services account already exists.

", + "base": "

An application with the specified name with the user or Amazon Web Services account already exists.

", "refs": { } }, "ApplicationDoesNotExistException": { - "base": "

The application does not exist with the IAM user or Amazon Web Services account.

", + "base": "

The application does not exist with the user or Amazon Web Services account.

", "refs": { } }, @@ -137,23 +137,23 @@ "ApplicationsList$member": null, "BatchGetApplicationRevisionsInput$applicationName": "

The name of an CodeDeploy application about which to get revision information.

", "BatchGetApplicationRevisionsOutput$applicationName": "

The name of the application that corresponds to the revisions.

", - "BatchGetDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the applicable IAM or Amazon Web Services account.

", - "CreateApplicationInput$applicationName": "

The name of the application. This name must be unique with the applicable IAM or Amazon Web Services account.

", - "CreateDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "CreateDeploymentInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "DeleteApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "DeleteDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "BatchGetDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the applicable user or Amazon Web Services account.

", + "CreateApplicationInput$applicationName": "

The name of the application. This name must be unique with the applicable user or Amazon Web Services account.

", + "CreateDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "CreateDeploymentInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "DeleteApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "DeleteDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "DeploymentGroupInfo$applicationName": "

The application name.

", "DeploymentInfo$applicationName": "

The application name.

", - "GetApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "GetApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "GetApplicationRevisionInput$applicationName": "

The name of the application that corresponds to the revision.

", "GetApplicationRevisionOutput$applicationName": "

The name of the application that corresponds to the revision.

", - "GetDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "ListApplicationRevisionsInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "ListDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "GetDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "ListApplicationRevisionsInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "ListDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "ListDeploymentGroupsOutput$applicationName": "

The application name.

", - "ListDeploymentsInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

If applicationName is specified, then deploymentGroupName must be specified. If it is not specified, then deploymentGroupName must not be specified.

", - "RegisterApplicationRevisionInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "ListDeploymentsInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

If applicationName is specified, then deploymentGroupName must be specified. If it is not specified, then deploymentGroupName must not be specified.

", + "RegisterApplicationRevisionInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "UpdateApplicationInput$applicationName": "

The current name of the application you want to change.

", "UpdateApplicationInput$newApplicationName": "

The new name to give the application.

", "UpdateDeploymentGroupInput$applicationName": "

The application name that corresponds to the deployment group to update.

" @@ -250,7 +250,7 @@ "refs": { "CreateDeploymentGroupInput$autoScalingGroups": "

A list of associated Amazon EC2 Auto Scaling groups.

", "TargetInstances$autoScalingGroups": "

The names of one or more Auto Scaling groups to identify a replacement environment for a blue/green deployment.

", - "UpdateDeploymentGroupInput$autoScalingGroups": "

The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.

" + "UpdateDeploymentGroupInput$autoScalingGroups": "

The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.

" } }, "BatchGetApplicationRevisionsInput": { @@ -365,7 +365,7 @@ "BundleType": { "base": null, "refs": { - "S3Location$bundleType": "

The file type of the application revision. Must be one of the following:

  • tar: A tar archive file.

  • tgz: A compressed tar archive file.

  • zip: A zip archive file.

" + "S3Location$bundleType": "

The file type of the application revision. Must be one of the following:

  • tar: A tar archive file.

  • tgz: A compressed tar archive file.

  • zip: A zip archive file.

  • YAML: A YAML-formatted file.

  • JSON: A JSON-formatted file.

" } }, "CloudFormationResourceType": { @@ -493,12 +493,12 @@ } }, "DeploymentConfigAlreadyExistsException": { - "base": "

A deployment configuration with the specified name with the IAM user or Amazon Web Services account already exists.

", + "base": "

A deployment configuration with the specified name with the user or Amazon Web Services account already exists.

", "refs": { } }, "DeploymentConfigDoesNotExistException": { - "base": "

The deployment configuration does not exist with the IAM user or Amazon Web Services account.

", + "base": "

The deployment configuration does not exist with the user or Amazon Web Services account.

", "refs": { } }, @@ -530,13 +530,13 @@ "refs": { "CreateDeploymentConfigInput$deploymentConfigName": "

The name of the deployment configuration to create.

", "CreateDeploymentGroupInput$deploymentConfigName": "

If specified, the deployment configuration name can be either one of the predefined configurations provided with CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.

CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or deployment group.

For more information about the predefined deployment configurations in CodeDeploy, see Working with Deployment Configurations in CodeDeploy in the CodeDeploy User Guide.

", - "CreateDeploymentInput$deploymentConfigName": "

The name of a deployment configuration associated with the IAM user or Amazon Web Services account.

If not specified, the value configured in the deployment group is used as the default. If the deployment group does not have a deployment configuration associated with it, CodeDeployDefault.OneAtATime is used by default.

", - "DeleteDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the IAM user or Amazon Web Services account.

", + "CreateDeploymentInput$deploymentConfigName": "

The name of a deployment configuration associated with the user or Amazon Web Services account.

If not specified, the value configured in the deployment group is used as the default. If the deployment group does not have a deployment configuration associated with it, CodeDeployDefault.OneAtATime is used by default.

", + "DeleteDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the user or Amazon Web Services account.

", "DeploymentConfigInfo$deploymentConfigName": "

The deployment configuration name.

", "DeploymentConfigsList$member": null, "DeploymentGroupInfo$deploymentConfigName": "

The deployment configuration name.

", "DeploymentInfo$deploymentConfigName": "

The deployment configuration name.

", - "GetDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the IAM user or Amazon Web Services account.

", + "GetDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the user or Amazon Web Services account.

", "UpdateDeploymentGroupInput$deploymentConfigName": "

The replacement deployment configuration name to use, if you want to change it.

" } }, @@ -558,17 +558,17 @@ } }, "DeploymentDoesNotExistException": { - "base": "

The deployment with the IAM user or Amazon Web Services account does not exist.

", + "base": "

The deployment with the user or Amazon Web Services account does not exist.

", "refs": { } }, "DeploymentGroupAlreadyExistsException": { - "base": "

A deployment group with the specified name with the IAM user or Amazon Web Services account already exists.

", + "base": "

A deployment group with the specified name with the user or Amazon Web Services account already exists.

", "refs": { } }, "DeploymentGroupDoesNotExistException": { - "base": "

The named deployment group with the IAM user or Amazon Web Services account does not exist.

", + "base": "

The named deployment group with the user or Amazon Web Services account does not exist.

", "refs": { } }, @@ -636,7 +636,7 @@ "DeploymentInfo$deploymentId": "

The unique ID of a deployment.

", "DeploymentsList$member": null, "ECSTarget$deploymentId": "

The unique ID of a deployment.

", - "GetDeploymentInput$deploymentId": "

The unique ID of a deployment associated with the IAM user or Amazon Web Services account.

", + "GetDeploymentInput$deploymentId": "

The unique ID of a deployment associated with the user or Amazon Web Services account.

", "GetDeploymentInstanceInput$deploymentId": "

The unique ID of a deployment.

", "GetDeploymentTargetInput$deploymentId": "

The unique ID of a deployment.

", "InstanceSummary$deploymentId": "

The unique ID of a deployment.

", @@ -933,7 +933,7 @@ } }, "ELBInfo": { - "base": "

Information about a load balancer in Elastic Load Balancing to use in a deployment. Instances are registered directly with a load balancer, and traffic is routed to the load balancer.

", + "base": "

Information about a Classic Load Balancer in Elastic Load Balancing to use in a deployment. Instances are registered directly with a load balancer, and traffic is routed to the load balancer.

", "refs": { "ELBInfoList$member": null } @@ -941,13 +941,13 @@ "ELBInfoList": { "base": null, "refs": { - "LoadBalancerInfo$elbInfoList": "

An array that contains information about the load balancer to use for load balancing in a deployment. In Elastic Load Balancing, load balancers are used with Classic Load Balancers.

Adding more than one load balancer to the array is not supported.

" + "LoadBalancerInfo$elbInfoList": "

An array that contains information about the load balancers to use for load balancing in a deployment. If you're using Classic Load Balancers, specify those load balancers in this array.

You can add up to 10 load balancers to the array.

If you're using Application Load Balancers or Network Load Balancers, use the targetGroupInfoList array instead of this one.

" } }, "ELBName": { "base": null, "refs": { - "ELBInfo$name": "

For blue/green deployments, the name of the load balancer that is used to route traffic from original instances to replacement instances in a blue/green deployment. For in-place deployments, the name of the load balancer that instances are deregistered from so they are not serving traffic during a deployment, and then re-registered with after the deployment is complete.

" + "ELBInfo$name": "

For blue/green deployments, the name of the Classic Load Balancer that is used to route traffic from original instances to replacement instances in a blue/green deployment. For in-place deployments, the name of the Classic Load Balancer that instances are deregistered from so they are not serving traffic during a deployment, and then re-registered with after the deployment is complete.

" } }, "ETag": { @@ -1136,7 +1136,7 @@ } }, "IamArnRequiredException": { - "base": "

No IAM ARN was included in the request. You must use an IAM session ARN or IAM user ARN in the request.

", + "base": "

No IAM ARN was included in the request. You must use an IAM session ARN or user ARN in the request.

", "refs": { } }, @@ -1155,17 +1155,17 @@ "IamUserArn": { "base": null, "refs": { - "InstanceInfo$iamUserArn": "

The IAM user ARN associated with the on-premises instance.

", - "RegisterOnPremisesInstanceInput$iamUserArn": "

The ARN of the IAM user to associate with the on-premises instance.

" + "InstanceInfo$iamUserArn": "

The user ARN associated with the on-premises instance.

", + "RegisterOnPremisesInstanceInput$iamUserArn": "

The ARN of the user to associate with the on-premises instance.

" } }, "IamUserArnAlreadyRegisteredException": { - "base": "

The specified IAM user ARN is already registered with an on-premises instance.

", + "base": "

The specified user ARN is already registered with an on-premises instance.

", "refs": { } }, "IamUserArnRequiredException": { - "base": "

An IAM user ARN was not specified.

", + "base": "

An user ARN was not specified.

", "refs": { } }, @@ -1440,7 +1440,7 @@ } }, "InvalidIamUserArnException": { - "base": "

The IAM user ARN was specified in an invalid format.

", + "base": "

The user ARN was specified in an invalid format.

", "refs": { } }, @@ -1811,7 +1811,7 @@ } }, "LoadBalancerInfo": { - "base": "

Information about the Elastic Load Balancing load balancer or target group used in a deployment.

", + "base": "

Information about the Elastic Load Balancing load balancer or target group used in a deployment.

You can use load balancers and target groups in combination. For example, if you have two Classic Load Balancers, and five target groups tied to an Application Load Balancer, you can specify the two Classic Load Balancers in elbInfoList, and the five target groups in targetGroupInfoList.

", "refs": { "CreateDeploymentGroupInput$loadBalancerInfo": "

Information about the load balancer used in a deployment.

", "DeploymentGroupInfo$loadBalancerInfo": "

Information about the load balancer to use in a deployment.

", @@ -1851,7 +1851,7 @@ } }, "MultipleIamArnsProvidedException": { - "base": "

Both an IAM user ARN and an IAM session ARN were included in the request. Use only one ARN type.

", + "base": "

Both an user ARN and an IAM session ARN were included in the request. Use only one ARN type.

", "refs": { } }, @@ -1994,7 +1994,7 @@ } }, "RevisionDoesNotExistException": { - "base": "

The named revision does not exist with the IAM user or Amazon Web Services account.

", + "base": "

The named revision does not exist with the user or Amazon Web Services account.

", "refs": { } }, @@ -2215,7 +2215,7 @@ "TargetGroupInfoList": { "base": null, "refs": { - "LoadBalancerInfo$targetGroupInfoList": "

An array that contains information about the target group to use for load balancing in a deployment. In Elastic Load Balancing, target groups are used with Application Load Balancers.

Adding more than one target group to the array is not supported.

", + "LoadBalancerInfo$targetGroupInfoList": "

An array that contains information about the target groups to use for load balancing in a deployment. If you're using Application Load Balancers and Network Load Balancers, specify their associated target groups in this array.

You can add up to 10 target groups to the array.

If you're using Classic Load Balancers, use the elbInfoList array instead of this one.

", "TargetGroupPairInfo$targetGroups": "

One pair of target groups. One is associated with the original task set. The second is associated with the task set that serves traffic after the deployment is complete.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,678 @@ +{ + "testCases": [ + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codepipeline/2015-07-09/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codepipeline/2015-07-09/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codepipeline/2015-07-09/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codepipeline/2015-07-09/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1566,6 +1566,44 @@ "jobDetails":{"shape":"ThirdPartyJobDetails"} } }, + "GitConfiguration":{ + "type":"structure", + "required":["sourceActionName"], + "members":{ + "sourceActionName":{"shape":"ActionName"}, + "push":{"shape":"GitPushFilterList"} + } + }, + "GitPushFilter":{ + "type":"structure", + "members":{ + "tags":{"shape":"GitTagFilterCriteria"} + } + }, + "GitPushFilterList":{ + "type":"list", + "member":{"shape":"GitPushFilter"}, + "max":1, + "min":1 + }, + "GitTagFilterCriteria":{ + "type":"structure", + "members":{ + "includes":{"shape":"GitTagPatternList"}, + "excludes":{"shape":"GitTagPatternList"} + } + }, + "GitTagNamePattern":{ + "type":"string", + "max":255, + "min":1 + }, + "GitTagPatternList":{ + "type":"list", + "member":{"shape":"GitTagNamePattern"}, + "max":8, + "min":1 + }, "InputArtifact":{ "type":"structure", "required":["name"], @@ -1987,7 +2025,10 @@ "artifactStore":{"shape":"ArtifactStore"}, "artifactStores":{"shape":"ArtifactStoreMap"}, "stages":{"shape":"PipelineStageDeclarationList"}, - "version":{"shape":"PipelineVersion"} + "version":{"shape":"PipelineVersion"}, + "pipelineType":{"shape":"PipelineType"}, + "triggers":{"shape":"PipelineTriggerDeclarationList"}, + "variables":{"shape":"PipelineVariableDeclarationList"} } }, "PipelineExecution":{ @@ -1998,7 +2039,9 @@ "pipelineExecutionId":{"shape":"PipelineExecutionId"}, "status":{"shape":"PipelineExecutionStatus"}, "statusSummary":{"shape":"PipelineExecutionStatusSummary"}, - "artifactRevisions":{"shape":"ArtifactRevisionList"} + "artifactRevisions":{"shape":"ArtifactRevisionList"}, + "trigger":{"shape":"ExecutionTrigger"}, + "variables":{"shape":"ResolvedPipelineVariableList"} } }, "PipelineExecutionId":{ @@ -2087,10 +2130,87 @@ "members":{ "name":{"shape":"PipelineName"}, "version":{"shape":"PipelineVersion"}, + "pipelineType":{"shape":"PipelineType"}, "created":{"shape":"Timestamp"}, "updated":{"shape":"Timestamp"} } }, + "PipelineTriggerDeclaration":{ + "type":"structure", + "required":[ + "providerType", + "gitConfiguration" + ], + "members":{ + "providerType":{"shape":"PipelineTriggerProviderType"}, + "gitConfiguration":{"shape":"GitConfiguration"} + } + }, + "PipelineTriggerDeclarationList":{ + "type":"list", + "member":{"shape":"PipelineTriggerDeclaration"}, + "max":20 + }, + "PipelineTriggerProviderType":{ + "type":"string", + "enum":["CodeStarSourceConnection"] + }, + "PipelineType":{ + "type":"string", + "enum":[ + "V1", + "V2" + ] + }, + "PipelineVariable":{ + "type":"structure", + "required":[ + "name", + "value" + ], + "members":{ + "name":{"shape":"PipelineVariableName"}, + "value":{"shape":"PipelineVariableValue"} + } + }, + "PipelineVariableDeclaration":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"PipelineVariableName"}, + "defaultValue":{"shape":"PipelineVariableValue"}, + "description":{"shape":"PipelineVariableDescription"} + } + }, + "PipelineVariableDeclarationList":{ + "type":"list", + "member":{"shape":"PipelineVariableDeclaration"}, + "max":50 + }, + "PipelineVariableDescription":{ + "type":"string", + "max":200, + "min":0, + "pattern":".*" + }, + "PipelineVariableList":{ + "type":"list", + "member":{"shape":"PipelineVariable"}, + "max":50, + "min":1 + }, + "PipelineVariableName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[A-Za-z0-9@\\-_]+" + }, + "PipelineVariableValue":{ + "type":"string", + "max":1000, + "min":1, + "pattern":".*" + }, "PipelineVersion":{ "type":"integer", "min":1 @@ -2290,6 +2410,17 @@ "key":{"shape":"String"}, "value":{"shape":"String"} }, + "ResolvedPipelineVariable":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "resolvedValue":{"shape":"String"} + } + }, + "ResolvedPipelineVariableList":{ + "type":"list", + "member":{"shape":"ResolvedPipelineVariable"} + }, "ResourceArn":{ "type":"string", "pattern":"arn:aws(-[\\w]+)*:codepipeline:.+:[0-9]{12}:.+" @@ -2398,6 +2529,33 @@ "type":"list", "member":{"shape":"SourceRevision"} }, + "SourceRevisionOverride":{ + "type":"structure", + "required":[ + "actionName", + "revisionType", + "revisionValue" + ], + "members":{ + "actionName":{"shape":"ActionName"}, + "revisionType":{"shape":"SourceRevisionType"}, + "revisionValue":{"shape":"Revision"} + } + }, + "SourceRevisionOverrideList":{ + "type":"list", + "member":{"shape":"SourceRevisionOverride"}, + "max":50, + "min":0 + }, + "SourceRevisionType":{ + "type":"string", + "enum":[ + "COMMIT_ID", + "IMAGE_DIGEST", + "S3_OBJECT_VERSION_ID" + ] + }, "StageActionDeclarationList":{ "type":"list", "member":{"shape":"ActionDeclaration"} @@ -2466,7 +2624,10 @@ }, "StageRetryMode":{ "type":"string", - "enum":["FAILED_ACTIONS"] + "enum":[ + "FAILED_ACTIONS", + "ALL_ACTIONS" + ] }, "StageState":{ "type":"structure", @@ -2494,10 +2655,12 @@ "required":["name"], "members":{ "name":{"shape":"PipelineName"}, + "variables":{"shape":"PipelineVariableList"}, "clientRequestToken":{ "shape":"ClientRequestToken", "idempotencyToken":true - } + }, + "sourceRevisions":{"shape":"SourceRevisionOverrideList"} } }, "StartPipelineExecutionOutput":{ @@ -2649,7 +2812,8 @@ "PollForSourceChanges", "Webhook", "CloudWatchEvent", - "PutActionRevision" + "PutActionRevision", + "WebhookV2" ] }, "UntagResourceInput":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codepipeline/2015-07-09/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codepipeline/2015-07-09/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codepipeline/2015-07-09/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codepipeline/2015-07-09/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -34,7 +34,7 @@ "PutThirdPartyJobSuccessResult": "

Represents the success of a third party job as returned to the pipeline by a job worker. Used for partner actions only.

", "PutWebhook": "

Defines a webhook and returns a unique webhook URL generated by CodePipeline. This URL can be supplied to third party source hosting providers to call every time there's a code change. When CodePipeline receives a POST request on this URL, the pipeline defined in the webhook is started as long as the POST request satisfied the authentication and filtering requirements supplied when defining the webhook. RegisterWebhookWithThirdParty and DeregisterWebhookWithThirdParty APIs can be used to automatically configure supported third parties to call the generated webhook URL.

", "RegisterWebhookWithThirdParty": "

Configures a connection between the webhook that was created and the external tool with events to be detected.

", - "RetryStageExecution": "

Resumes the pipeline execution by retrying the last failed actions in a stage. You can retry a stage immediately if any of the actions in the stage fail. When you retry, all actions that are still in progress continue working, and failed actions are triggered again.

", + "RetryStageExecution": "

You can retry a stage that has failed without having to run a pipeline again from the beginning. You do this by either retrying the failed actions in a stage or by retrying all actions in the stage starting from the first action in the stage. When you retry the failed actions in a stage, all actions that are still in progress continue working, and failed actions are triggered again. When you retry a failed stage from the first action in the stage, the stage cannot have any actions in progress. Before a stage can be retried, it must either have all actions failed or some actions failed and some succeeded.

", "StartPipelineExecution": "

Starts the specified pipeline. Specifically, it begins processing the latest commit to the source location specified as part of the pipeline.

", "StopPipelineExecution": "

Stops the specified pipeline execution. You choose to either stop the pipeline execution by completing in-progress actions without starting subsequent actions, or by abandoning in-progress actions. While completing or abandoning in-progress actions, the pipeline execution is in a Stopping state. After all in-progress actions are completed or abandoned, the pipeline execution is in a Stopped state.

", "TagResource": "

Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.

", @@ -240,9 +240,11 @@ "ActionDeclaration$name": "

The action declaration's name.

", "ActionExecutionDetail$actionName": "

The name of the action.

", "ActionState$actionName": "

The name of the action.

", + "GitConfiguration$sourceActionName": "

The name of the pipeline source action where the trigger configuration, such as Git tags, is specified. The trigger configuration will start the pipeline upon the specified change only.

You can only specify one trigger configuration per source action.

", "PutActionRevisionInput$actionName": "

The name of the action that processes the revision.

", "PutApprovalResultInput$actionName": "

The name of the action for which approval is requested.

", "SourceRevision$actionName": "

The name of the action that processed the revision to the source artifact.

", + "SourceRevisionOverride$actionName": "

The name of the action where the override will be applied.

", "WebhookDefinition$targetAction": "

The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline.

" } }, @@ -763,6 +765,7 @@ "ExecutionTrigger": { "base": "

The interaction or event that started a pipeline execution.

", "refs": { + "PipelineExecution$trigger": null, "PipelineExecutionSummary$trigger": "

The interaction or event that started a pipeline execution, such as automated change detection or a StartPipelineExecution API call.

" } }, @@ -863,6 +866,43 @@ "refs": { } }, + "GitConfiguration": { + "base": "

A type of trigger configuration for Git-based source actions.

You can specify the Git configuration trigger type for all third-party Git-based source actions that are supported by the CodeStarSourceConnection action type.

V2 type pipelines, along with triggers on Git tags and pipeline-level variables, are not currently supported for CloudFormation and CDK resources in CodePipeline. For more information about V2 type pipelines, see Pipeline types in the CodePipeline User Guide.

", + "refs": { + "PipelineTriggerDeclaration$gitConfiguration": "

Provides the filter criteria and the source stage for the repository event that starts the pipeline, such as Git tags.

" + } + }, + "GitPushFilter": { + "base": "

The event criteria that specify when a specified repository event will start the pipeline for the specified trigger configuration, such as the lists of Git tags to include and exclude.

", + "refs": { + "GitPushFilterList$member": null + } + }, + "GitPushFilterList": { + "base": null, + "refs": { + "GitConfiguration$push": "

The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details.

Git tags is the only supported event type.

" + } + }, + "GitTagFilterCriteria": { + "base": "

The Git tags specified as filter criteria for whether a Git tag repository event will start the pipeline.

", + "refs": { + "GitPushFilter$tags": "

The field that contains the details for the Git tags trigger configuration.

" + } + }, + "GitTagNamePattern": { + "base": null, + "refs": { + "GitTagPatternList$member": null + } + }, + "GitTagPatternList": { + "base": null, + "refs": { + "GitTagFilterCriteria$includes": "

The list of patterns of Git tags that, when pushed, are to be included as criteria that starts the pipeline.

", + "GitTagFilterCriteria$excludes": "

The list of patterns of Git tags that, when pushed, are to be excluded from starting the pipeline.

" + } + }, "InputArtifact": { "base": "

Represents information about an artifact to be worked on, such as a test or build artifact.

", "refs": { @@ -1397,6 +1437,75 @@ "PipelineList$member": null } }, + "PipelineTriggerDeclaration": { + "base": "

Represents information about the specified trigger configuration, such as the filter criteria and the source stage for the action that contains the trigger.

This is only supported for the CodeStarSourceConnection action type.

When a trigger configuration is specified, default change detection for repository and branch commits is disabled.

V2 type pipelines, along with triggers on Git tags and pipeline-level variables, are not currently supported for CloudFormation and CDK resources in CodePipeline. For more information about V2 type pipelines, see Pipeline types in the CodePipeline User Guide.

", + "refs": { + "PipelineTriggerDeclarationList$member": null + } + }, + "PipelineTriggerDeclarationList": { + "base": null, + "refs": { + "PipelineDeclaration$triggers": "

The trigger configuration specifying a type of event, such as Git tags, that starts the pipeline.

When a trigger configuration is specified, default change detection for repository and branch commits is disabled.

" + } + }, + "PipelineTriggerProviderType": { + "base": null, + "refs": { + "PipelineTriggerDeclaration$providerType": "

The source provider for the event, such as connections configured for a repository with Git tags, for the specified trigger configuration.

" + } + }, + "PipelineType": { + "base": null, + "refs": { + "PipelineDeclaration$pipelineType": "

CodePipeline provides the following pipeline types, which differ in characteristics and price, so that you can tailor your pipeline features and cost to the needs of your applications.

  • V1 type pipelines have a JSON structure that contains standard pipeline, stage, and action-level parameters.

  • V2 type pipelines have the same structure as a V1 type, along with additional parameters for release safety and trigger configuration.

Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs.

For information about pricing for CodePipeline, see Pricing.

For information about which type of pipeline to choose, see What type of pipeline is right for me?.

V2 type pipelines, along with triggers on Git tags and pipeline-level variables, are not currently supported for CloudFormation and CDK resources in CodePipeline. For more information about V2 type pipelines, see Pipeline types in the CodePipeline User Guide.

", + "PipelineSummary$pipelineType": "

CodePipeline provides the following pipeline types, which differ in characteristics and price, so that you can tailor your pipeline features and cost to the needs of your applications.

  • V1 type pipelines have a JSON structure that contains standard pipeline, stage, and action-level parameters.

  • V2 type pipelines have the same structure as a V1 type, along with additional parameters for release safety and trigger configuration.

Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when creating or updating a pipeline will result in the pipeline having the V2 type of pipeline and the associated costs.

For information about pricing for CodePipeline, see Pricing.

For information about which type of pipeline to choose, see What type of pipeline is right for me?.

V2 type pipelines, along with triggers on Git tags and pipeline-level variables, are not currently supported for CloudFormation and CDK resources in CodePipeline. For more information about V2 type pipelines, see Pipeline types in the CodePipeline User Guide.

" + } + }, + "PipelineVariable": { + "base": "

A pipeline-level variable used for a pipeline execution.

V2 type pipelines, along with triggers on Git tags and pipeline-level variables, are not currently supported for CloudFormation and CDK resources in CodePipeline. For more information about V2 type pipelines, see Pipeline types in the CodePipeline User Guide.

", + "refs": { + "PipelineVariableList$member": null + } + }, + "PipelineVariableDeclaration": { + "base": "

A variable declared at the pipeline level.

V2 type pipelines, along with triggers on Git tags and pipeline-level variables, are not currently supported for CloudFormation and CDK resources in CodePipeline. For more information about V2 type pipelines, see Pipeline types in the CodePipeline User Guide.

", + "refs": { + "PipelineVariableDeclarationList$member": null + } + }, + "PipelineVariableDeclarationList": { + "base": null, + "refs": { + "PipelineDeclaration$variables": "

A list that defines the pipeline variables for a pipeline resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9@\\-_]+.

" + } + }, + "PipelineVariableDescription": { + "base": null, + "refs": { + "PipelineVariableDeclaration$description": "

The description of a pipeline-level variable. It's used to add additional context about the variable, and not being used at time when pipeline executes.

" + } + }, + "PipelineVariableList": { + "base": null, + "refs": { + "StartPipelineExecutionInput$variables": "

A list that overrides pipeline variables for a pipeline execution that's being started. Variable names must match [A-Za-z0-9@\\-_]+, and the values can be anything except an empty string.

" + } + }, + "PipelineVariableName": { + "base": null, + "refs": { + "PipelineVariable$name": "

The name of a pipeline-level variable.

", + "PipelineVariableDeclaration$name": "

The name of a pipeline-level variable.

" + } + }, + "PipelineVariableValue": { + "base": null, + "refs": { + "PipelineVariable$value": "

The value of a pipeline-level variable.

", + "PipelineVariableDeclaration$defaultValue": "

The value of a pipeline-level variable.

" + } + }, "PipelineVersion": { "base": null, "refs": { @@ -1534,6 +1643,18 @@ "ActionExecutionInput$resolvedConfiguration": "

Configuration data for an action execution with all variable references replaced with their real values for the execution.

" } }, + "ResolvedPipelineVariable": { + "base": "

A pipeline-level variable used for a pipeline execution.

", + "refs": { + "ResolvedPipelineVariableList$member": null + } + }, + "ResolvedPipelineVariableList": { + "base": null, + "refs": { + "PipelineExecution$variables": "

A list of pipeline variables used for the pipeline execution.

" + } + }, "ResourceArn": { "base": null, "refs": { @@ -1564,7 +1685,8 @@ "Artifact$revision": "

The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).

", "ArtifactRevision$revisionId": "

The revision ID of the artifact.

", "CurrentRevision$revision": "

The revision ID of the current version of an artifact.

", - "SourceRevision$revisionId": "

The system-generated unique ID that identifies the revision number of the artifact.

" + "SourceRevision$revisionId": "

The system-generated unique ID that identifies the revision number of the artifact.

", + "SourceRevisionOverride$revisionValue": "

The source revision, or version of your source artifact, with the changes that you want to run in the pipeline execution.

" } }, "RevisionChangeIdentifier": { @@ -1657,6 +1779,24 @@ "PipelineExecutionSummary$sourceRevisions": "

A list of the source artifact revisions that initiated a pipeline execution.

" } }, + "SourceRevisionOverride": { + "base": "

A list that allows you to specify, or override, the source revision for a pipeline execution that's being started. A source revision is the version with all the changes to your application code, or source artifact, for the pipeline execution.

", + "refs": { + "SourceRevisionOverrideList$member": null + } + }, + "SourceRevisionOverrideList": { + "base": null, + "refs": { + "StartPipelineExecutionInput$sourceRevisions": "

A list that allows you to specify, or override, the source revision for a pipeline execution that's being started. A source revision is the version with all the changes to your application code, or source artifact, for the pipeline execution.

" + } + }, + "SourceRevisionType": { + "base": null, + "refs": { + "SourceRevisionOverride$revisionType": "

The type of source revision, based on the source provider. For example, the revision type for the CodeCommit action provider is the commit ID.

" + } + }, "StageActionDeclarationList": { "base": null, "refs": { @@ -1721,7 +1861,7 @@ "StageRetryMode": { "base": null, "refs": { - "RetryStageExecutionInput$retryMode": "

The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS.

" + "RetryStageExecutionInput$retryMode": "

The scope of the retry attempt.

" } }, "StageState": { @@ -1780,7 +1920,9 @@ "base": null, "refs": { "ResolvedActionConfigurationMap$key": null, - "ResolvedActionConfigurationMap$value": null + "ResolvedActionConfigurationMap$value": null, + "ResolvedPipelineVariable$name": "

The name of a pipeline-level variable.

", + "ResolvedPipelineVariable$resolvedValue": "

The resolved value of a pipeline-level variable.

" } }, "Tag": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codepipeline/2015-07-09/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codepipeline/2015-07-09/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codepipeline/2015-07-09/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codepipeline/2015-07-09/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://codepipeline-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://codepipeline-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://codepipeline-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://codepipeline-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://codepipeline.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://codepipeline.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://codepipeline.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://codepipeline.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -39,6 +39,42 @@ {"shape":"LimitExceededException"} ] }, + "CreateRepositoryLink":{ + "name":"CreateRepositoryLink", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateRepositoryLinkInput"}, + "output":{"shape":"CreateRepositoryLinkOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ThrottlingException"} + ] + }, + "CreateSyncConfiguration":{ + "name":"CreateSyncConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateSyncConfigurationInput"}, + "output":{"shape":"CreateSyncConfigurationOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ThrottlingException"} + ] + }, "DeleteConnection":{ "name":"DeleteConnection", "http":{ @@ -64,6 +100,42 @@ {"shape":"ResourceUnavailableException"} ] }, + "DeleteRepositoryLink":{ + "name":"DeleteRepositoryLink", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteRepositoryLinkInput"}, + "output":{"shape":"DeleteRepositoryLinkOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"SyncConfigurationStillExistsException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"UnsupportedProviderTypeException"} + ] + }, + "DeleteSyncConfiguration":{ + "name":"DeleteSyncConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteSyncConfigurationInput"}, + "output":{"shape":"DeleteSyncConfigurationOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"} + ] + }, "GetConnection":{ "name":"GetConnection", "http":{ @@ -90,6 +162,87 @@ {"shape":"ResourceUnavailableException"} ] }, + "GetRepositoryLink":{ + "name":"GetRepositoryLink", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetRepositoryLinkInput"}, + "output":{"shape":"GetRepositoryLinkOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetRepositorySyncStatus":{ + "name":"GetRepositorySyncStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetRepositorySyncStatusInput"}, + "output":{"shape":"GetRepositorySyncStatusOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetResourceSyncStatus":{ + "name":"GetResourceSyncStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetResourceSyncStatusInput"}, + "output":{"shape":"GetResourceSyncStatusOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetSyncBlockerSummary":{ + "name":"GetSyncBlockerSummary", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetSyncBlockerSummaryInput"}, + "output":{"shape":"GetSyncBlockerSummaryOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetSyncConfiguration":{ + "name":"GetSyncConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetSyncConfigurationInput"}, + "output":{"shape":"GetSyncConfigurationOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, "ListConnections":{ "name":"ListConnections", "http":{ @@ -111,6 +264,55 @@ "input":{"shape":"ListHostsInput"}, "output":{"shape":"ListHostsOutput"} }, + "ListRepositoryLinks":{ + "name":"ListRepositoryLinks", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRepositoryLinksInput"}, + "output":{"shape":"ListRepositoryLinksOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListRepositorySyncDefinitions":{ + "name":"ListRepositorySyncDefinitions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRepositorySyncDefinitionsInput"}, + "output":{"shape":"ListRepositorySyncDefinitionsOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListSyncConfigurations":{ + "name":"ListSyncConfigurations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListSyncConfigurationsInput"}, + "output":{"shape":"ListSyncConfigurationsOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -162,9 +364,70 @@ {"shape":"ResourceUnavailableException"}, {"shape":"UnsupportedOperationException"} ] + }, + "UpdateRepositoryLink":{ + "name":"UpdateRepositoryLink", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateRepositoryLinkInput"}, + "output":{"shape":"UpdateRepositoryLinkOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConditionalCheckFailedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"UpdateOutOfSyncException"} + ] + }, + "UpdateSyncBlocker":{ + "name":"UpdateSyncBlocker", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSyncBlockerInput"}, + "output":{"shape":"UpdateSyncBlockerOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"RetryLatestCommitFailedException"}, + {"shape":"SyncBlockerDoesNotExistException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateSyncConfiguration":{ + "name":"UpdateSyncConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSyncConfigurationInput"}, + "output":{"shape":"UpdateSyncConfigurationOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"UpdateOutOfSyncException"} + ] } }, "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, "AccountId":{ "type":"string", "max":12, @@ -177,6 +440,37 @@ "min":1, "pattern":"arn:aws(-[\\w]+)*:.+:.+:[0-9]{12}:.+" }, + "BlockerStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "RESOLVED" + ] + }, + "BlockerType":{ + "type":"string", + "enum":["AUTOMATED"] + }, + "BranchName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^.*$" + }, + "ConcurrentModificationException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "ConditionalCheckFailedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, "ConflictException":{ "type":"structure", "members":{ @@ -259,6 +553,55 @@ "Tags":{"shape":"TagList"} } }, + "CreateRepositoryLinkInput":{ + "type":"structure", + "required":[ + "ConnectionArn", + "OwnerId", + "RepositoryName" + ], + "members":{ + "ConnectionArn":{"shape":"ConnectionArn"}, + "OwnerId":{"shape":"OwnerId"}, + "RepositoryName":{"shape":"RepositoryName"}, + "EncryptionKeyArn":{"shape":"KmsKeyArn"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateRepositoryLinkOutput":{ + "type":"structure", + "required":["RepositoryLinkInfo"], + "members":{ + "RepositoryLinkInfo":{"shape":"RepositoryLinkInfo"} + } + }, + "CreateSyncConfigurationInput":{ + "type":"structure", + "required":[ + "Branch", + "ConfigFile", + "RepositoryLinkId", + "ResourceName", + "RoleArn", + "SyncType" + ], + "members":{ + "Branch":{"shape":"BranchName"}, + "ConfigFile":{"shape":"DeploymentFilePath"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "ResourceName":{"shape":"ResourceName"}, + "RoleArn":{"shape":"IamRoleArn"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "CreateSyncConfigurationOutput":{ + "type":"structure", + "required":["SyncConfiguration"], + "members":{ + "SyncConfiguration":{"shape":"SyncConfiguration"} + } + }, + "CreatedReason":{"type":"string"}, "DeleteConnectionInput":{ "type":"structure", "required":["ConnectionArn"], @@ -283,10 +626,42 @@ "members":{ } }, + "DeleteRepositoryLinkInput":{ + "type":"structure", + "required":["RepositoryLinkId"], + "members":{ + "RepositoryLinkId":{"shape":"RepositoryLinkId"} + } + }, + "DeleteRepositoryLinkOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteSyncConfigurationInput":{ + "type":"structure", + "required":[ + "SyncType", + "ResourceName" + ], + "members":{ + "SyncType":{"shape":"SyncConfigurationType"}, + "ResourceName":{"shape":"ResourceName"} + } + }, + "DeleteSyncConfigurationOutput":{ + "type":"structure", + "members":{ + } + }, + "DeploymentFilePath":{"type":"string"}, + "Directory":{"type":"string"}, "ErrorMessage":{ "type":"string", "max":600 }, + "Event":{"type":"string"}, + "ExternalId":{"type":"string"}, "GetConnectionInput":{ "type":"structure", "required":["ConnectionArn"], @@ -317,6 +692,96 @@ "VpcConfiguration":{"shape":"VpcConfiguration"} } }, + "GetRepositoryLinkInput":{ + "type":"structure", + "required":["RepositoryLinkId"], + "members":{ + "RepositoryLinkId":{"shape":"RepositoryLinkId"} + } + }, + "GetRepositoryLinkOutput":{ + "type":"structure", + "required":["RepositoryLinkInfo"], + "members":{ + "RepositoryLinkInfo":{"shape":"RepositoryLinkInfo"} + } + }, + "GetRepositorySyncStatusInput":{ + "type":"structure", + "required":[ + "Branch", + "RepositoryLinkId", + "SyncType" + ], + "members":{ + "Branch":{"shape":"BranchName"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "GetRepositorySyncStatusOutput":{ + "type":"structure", + "required":["LatestSync"], + "members":{ + "LatestSync":{"shape":"RepositorySyncAttempt"} + } + }, + "GetResourceSyncStatusInput":{ + "type":"structure", + "required":[ + "ResourceName", + "SyncType" + ], + "members":{ + "ResourceName":{"shape":"ResourceName"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "GetResourceSyncStatusOutput":{ + "type":"structure", + "required":["LatestSync"], + "members":{ + "DesiredState":{"shape":"Revision"}, + "LatestSuccessfulSync":{"shape":"ResourceSyncAttempt"}, + "LatestSync":{"shape":"ResourceSyncAttempt"} + } + }, + "GetSyncBlockerSummaryInput":{ + "type":"structure", + "required":[ + "SyncType", + "ResourceName" + ], + "members":{ + "SyncType":{"shape":"SyncConfigurationType"}, + "ResourceName":{"shape":"ResourceName"} + } + }, + "GetSyncBlockerSummaryOutput":{ + "type":"structure", + "required":["SyncBlockerSummary"], + "members":{ + "SyncBlockerSummary":{"shape":"SyncBlockerSummary"} + } + }, + "GetSyncConfigurationInput":{ + "type":"structure", + "required":[ + "SyncType", + "ResourceName" + ], + "members":{ + "SyncType":{"shape":"SyncConfigurationType"}, + "ResourceName":{"shape":"ResourceName"} + } + }, + "GetSyncConfigurationOutput":{ + "type":"structure", + "required":["SyncConfiguration"], + "members":{ + "SyncConfiguration":{"shape":"SyncConfiguration"} + } + }, "Host":{ "type":"structure", "members":{ @@ -352,6 +817,41 @@ "pattern":".*" }, "HostStatusMessage":{"type":"string"}, + "IamRoleArn":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"arn:aws(-[\\w]+)*:iam::\\d{12}:role/[a-zA-Z_0-9+=,.@\\-_/]+" + }, + "Id":{ + "type":"string", + "max":50, + "min":1 + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "InvalidInputException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "KmsKeyArn":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"arn:aws(-[\\w]+)*:kms:[a-z\\-0-9]+:\\d{12}:key/[a-zA-Z0-9\\-]+" + }, + "LatestSyncBlockerList":{ + "type":"list", + "member":{"shape":"SyncBlocker"} + }, "LimitExceededException":{ "type":"structure", "members":{ @@ -389,6 +889,61 @@ "NextToken":{"shape":"NextToken"} } }, + "ListRepositoryLinksInput":{ + "type":"structure", + "members":{ + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"SharpNextToken"} + } + }, + "ListRepositoryLinksOutput":{ + "type":"structure", + "required":["RepositoryLinks"], + "members":{ + "RepositoryLinks":{"shape":"RepositoryLinkList"}, + "NextToken":{"shape":"SharpNextToken"} + } + }, + "ListRepositorySyncDefinitionsInput":{ + "type":"structure", + "required":[ + "RepositoryLinkId", + "SyncType" + ], + "members":{ + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "ListRepositorySyncDefinitionsOutput":{ + "type":"structure", + "required":["RepositorySyncDefinitions"], + "members":{ + "RepositorySyncDefinitions":{"shape":"RepositorySyncDefinitionList"}, + "NextToken":{"shape":"SharpNextToken"} + } + }, + "ListSyncConfigurationsInput":{ + "type":"structure", + "required":[ + "RepositoryLinkId", + "SyncType" + ], + "members":{ + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"SharpNextToken"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "ListSyncConfigurationsOutput":{ + "type":"structure", + "required":["SyncConfigurations"], + "members":{ + "SyncConfigurations":{"shape":"SyncConfigurationList"}, + "NextToken":{"shape":"SharpNextToken"} + } + }, "ListTagsForResourceInput":{ "type":"structure", "required":["ResourceArn"], @@ -411,8 +966,15 @@ "type":"string", "max":1024, "min":1, - "pattern":".*" + "pattern":"^.*$" + }, + "OwnerId":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^.*$" }, + "Parent":{"type":"string"}, "ProviderType":{ "type":"string", "enum":[ @@ -422,6 +984,122 @@ "GitLab" ] }, + "RepositoryLinkArn":{ + "type":"string", + "pattern":"^arn:aws(?:-[a-z]+)*:codestar-connections:[a-z\\-0-9]+:\\d{12}:repository-link\\/[a-zA-Z0-9\\-:/]+" + }, + "RepositoryLinkId":{ + "type":"string", + "pattern":"^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$" + }, + "RepositoryLinkInfo":{ + "type":"structure", + "required":[ + "ConnectionArn", + "OwnerId", + "ProviderType", + "RepositoryLinkArn", + "RepositoryLinkId", + "RepositoryName" + ], + "members":{ + "ConnectionArn":{"shape":"ConnectionArn"}, + "EncryptionKeyArn":{"shape":"KmsKeyArn"}, + "OwnerId":{"shape":"OwnerId"}, + "ProviderType":{"shape":"ProviderType"}, + "RepositoryLinkArn":{"shape":"RepositoryLinkArn"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "RepositoryName":{"shape":"RepositoryName"} + } + }, + "RepositoryLinkList":{ + "type":"list", + "member":{"shape":"RepositoryLinkInfo"} + }, + "RepositoryName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^.*$" + }, + "RepositorySyncAttempt":{ + "type":"structure", + "required":[ + "StartedAt", + "Status", + "Events" + ], + "members":{ + "StartedAt":{"shape":"Timestamp"}, + "Status":{"shape":"RepositorySyncStatus"}, + "Events":{"shape":"RepositorySyncEventList"} + } + }, + "RepositorySyncDefinition":{ + "type":"structure", + "required":[ + "Branch", + "Directory", + "Parent", + "Target" + ], + "members":{ + "Branch":{"shape":"BranchName"}, + "Directory":{"shape":"Directory"}, + "Parent":{"shape":"Parent"}, + "Target":{"shape":"Target"} + } + }, + "RepositorySyncDefinitionList":{ + "type":"list", + "member":{"shape":"RepositorySyncDefinition"} + }, + "RepositorySyncEvent":{ + "type":"structure", + "required":[ + "Event", + "Time", + "Type" + ], + "members":{ + "Event":{"shape":"Event"}, + "ExternalId":{"shape":"ExternalId"}, + "Time":{"shape":"Timestamp"}, + "Type":{"shape":"Type"} + } + }, + "RepositorySyncEventList":{ + "type":"list", + "member":{"shape":"RepositorySyncEvent"} + }, + "RepositorySyncStatus":{ + "type":"string", + "enum":[ + "FAILED", + "INITIATED", + "IN_PROGRESS", + "SUCCEEDED", + "QUEUED" + ] + }, + "ResolvedReason":{ + "type":"string", + "max":250, + "min":1 + }, + "ResourceAlreadyExistsException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "ResourceName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"^[0-9A-Za-z]+[0-9A-Za-z_\\\\-]*$" + }, "ResourceNotFoundException":{ "type":"structure", "members":{ @@ -429,6 +1107,52 @@ }, "exception":true }, + "ResourceSyncAttempt":{ + "type":"structure", + "required":[ + "Events", + "InitialRevision", + "StartedAt", + "Status", + "TargetRevision", + "Target" + ], + "members":{ + "Events":{"shape":"ResourceSyncEventList"}, + "InitialRevision":{"shape":"Revision"}, + "StartedAt":{"shape":"Timestamp"}, + "Status":{"shape":"ResourceSyncStatus"}, + "TargetRevision":{"shape":"Revision"}, + "Target":{"shape":"Target"} + } + }, + "ResourceSyncEvent":{ + "type":"structure", + "required":[ + "Event", + "Time", + "Type" + ], + "members":{ + "Event":{"shape":"Event"}, + "ExternalId":{"shape":"ExternalId"}, + "Time":{"shape":"Timestamp"}, + "Type":{"shape":"Type"} + } + }, + "ResourceSyncEventList":{ + "type":"list", + "member":{"shape":"ResourceSyncEvent"} + }, + "ResourceSyncStatus":{ + "type":"string", + "enum":[ + "FAILED", + "INITIATED", + "IN_PROGRESS", + "SUCCEEDED" + ] + }, "ResourceUnavailableException":{ "type":"structure", "members":{ @@ -436,6 +1160,37 @@ }, "exception":true }, + "RetryLatestCommitFailedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "Revision":{ + "type":"structure", + "required":[ + "Branch", + "Directory", + "OwnerId", + "RepositoryName", + "ProviderType", + "Sha" + ], + "members":{ + "Branch":{"shape":"BranchName"}, + "Directory":{"shape":"Directory"}, + "OwnerId":{"shape":"OwnerId"}, + "RepositoryName":{"shape":"RepositoryName"}, + "ProviderType":{"shape":"ProviderType"}, + "Sha":{"shape":"SHA"} + } + }, + "SHA":{ + "type":"string", + "max":255, + "min":1 + }, "SecurityGroupId":{ "type":"string", "max":20, @@ -448,6 +1203,12 @@ "max":10, "min":1 }, + "SharpNextToken":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"^.*$" + }, "SubnetId":{ "type":"string", "max":24, @@ -460,6 +1221,98 @@ "max":10, "min":1 }, + "SyncBlocker":{ + "type":"structure", + "required":[ + "Id", + "Type", + "Status", + "CreatedReason", + "CreatedAt" + ], + "members":{ + "Id":{"shape":"Id"}, + "Type":{"shape":"BlockerType"}, + "Status":{"shape":"BlockerStatus"}, + "CreatedReason":{"shape":"CreatedReason"}, + "CreatedAt":{"shape":"Timestamp"}, + "Contexts":{"shape":"SyncBlockerContextList"}, + "ResolvedReason":{"shape":"ResolvedReason"}, + "ResolvedAt":{"shape":"Timestamp"} + } + }, + "SyncBlockerContext":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"SyncBlockerContextKey"}, + "Value":{"shape":"SyncBlockerContextValue"} + } + }, + "SyncBlockerContextKey":{"type":"string"}, + "SyncBlockerContextList":{ + "type":"list", + "member":{"shape":"SyncBlockerContext"} + }, + "SyncBlockerContextValue":{"type":"string"}, + "SyncBlockerDoesNotExistException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "SyncBlockerSummary":{ + "type":"structure", + "required":["ResourceName"], + "members":{ + "ResourceName":{"shape":"ResourceName"}, + "ParentResourceName":{"shape":"ResourceName"}, + "LatestBlockers":{"shape":"LatestSyncBlockerList"} + } + }, + "SyncConfiguration":{ + "type":"structure", + "required":[ + "Branch", + "OwnerId", + "ProviderType", + "RepositoryLinkId", + "RepositoryName", + "ResourceName", + "RoleArn", + "SyncType" + ], + "members":{ + "Branch":{"shape":"BranchName"}, + "ConfigFile":{"shape":"DeploymentFilePath"}, + "OwnerId":{"shape":"OwnerId"}, + "ProviderType":{"shape":"ProviderType"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "RepositoryName":{"shape":"RepositoryName"}, + "ResourceName":{"shape":"ResourceName"}, + "RoleArn":{"shape":"IamRoleArn"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "SyncConfigurationList":{ + "type":"list", + "member":{"shape":"SyncConfiguration"} + }, + "SyncConfigurationStillExistsException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "SyncConfigurationType":{ + "type":"string", + "enum":["CFN_STACK_SYNC"] + }, "Tag":{ "type":"structure", "required":[ @@ -511,12 +1364,22 @@ "min":0, "pattern":".*" }, + "Target":{"type":"string"}, + "ThrottlingException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "Timestamp":{"type":"timestamp"}, "TlsCertificate":{ "type":"string", "max":16384, "min":1, "pattern":"[\\s\\S]*" }, + "Type":{"type":"string"}, "UnsupportedOperationException":{ "type":"structure", "members":{ @@ -524,6 +1387,13 @@ }, "exception":true }, + "UnsupportedProviderTypeException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, "UntagResourceInput":{ "type":"structure", "required":[ @@ -554,6 +1424,78 @@ "members":{ } }, + "UpdateOutOfSyncException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "UpdateRepositoryLinkInput":{ + "type":"structure", + "required":["RepositoryLinkId"], + "members":{ + "ConnectionArn":{"shape":"ConnectionArn"}, + "EncryptionKeyArn":{"shape":"KmsKeyArn"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"} + } + }, + "UpdateRepositoryLinkOutput":{ + "type":"structure", + "required":["RepositoryLinkInfo"], + "members":{ + "RepositoryLinkInfo":{"shape":"RepositoryLinkInfo"} + } + }, + "UpdateSyncBlockerInput":{ + "type":"structure", + "required":[ + "Id", + "SyncType", + "ResourceName", + "ResolvedReason" + ], + "members":{ + "Id":{"shape":"Id"}, + "SyncType":{"shape":"SyncConfigurationType"}, + "ResourceName":{"shape":"ResourceName"}, + "ResolvedReason":{"shape":"ResolvedReason"} + } + }, + "UpdateSyncBlockerOutput":{ + "type":"structure", + "required":[ + "ResourceName", + "SyncBlocker" + ], + "members":{ + "ResourceName":{"shape":"ResourceName"}, + "ParentResourceName":{"shape":"ResourceName"}, + "SyncBlocker":{"shape":"SyncBlocker"} + } + }, + "UpdateSyncConfigurationInput":{ + "type":"structure", + "required":[ + "ResourceName", + "SyncType" + ], + "members":{ + "Branch":{"shape":"BranchName"}, + "ConfigFile":{"shape":"DeploymentFilePath"}, + "RepositoryLinkId":{"shape":"RepositoryLinkId"}, + "ResourceName":{"shape":"ResourceName"}, + "RoleArn":{"shape":"IamRoleArn"}, + "SyncType":{"shape":"SyncConfigurationType"} + } + }, + "UpdateSyncConfigurationOutput":{ + "type":"structure", + "required":["SyncConfiguration"], + "members":{ + "SyncConfiguration":{"shape":"SyncConfiguration"} + } + }, "Url":{ "type":"string", "max":512, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,18 +4,38 @@ "operations": { "CreateConnection": "

Creates a connection that can then be given to other Amazon Web Services services like CodePipeline so that it can access third-party code repositories. The connection is in pending status until the third-party connection handshake is completed from the console.

", "CreateHost": "

Creates a resource that represents the infrastructure where a third-party provider is installed. The host is used when you create connections to an installed third-party provider type, such as GitHub Enterprise Server. You create one host for all connections to that provider.

A host created through the CLI or the SDK is in `PENDING` status by default. You can make its status `AVAILABLE` by setting up the host in the console.

", + "CreateRepositoryLink": "

Creates a link to a specified external Git repository. A repository link allows Git sync to monitor and sync changes to files in a specified Git repository.

", + "CreateSyncConfiguration": "

Creates a sync configuration which allows Amazon Web Services to sync content from a Git repository to update a specified Amazon Web Services resource. Parameters for the sync configuration are determined by the sync type.

", "DeleteConnection": "

The connection to be deleted.

", "DeleteHost": "

The host to be deleted. Before you delete a host, all connections associated to the host must be deleted.

A host cannot be deleted if it is in the VPC_CONFIG_INITIALIZING or VPC_CONFIG_DELETING state.

", + "DeleteRepositoryLink": "

Deletes the association between your connection and a specified external Git repository.

", + "DeleteSyncConfiguration": "

Deletes the sync configuration for a specified repository and connection.

", "GetConnection": "

Returns the connection ARN and details such as status, owner, and provider type.

", "GetHost": "

Returns the host ARN and details such as status, provider type, endpoint, and, if applicable, the VPC configuration.

", + "GetRepositoryLink": "

Returns details about a repository link. A repository link allows Git sync to monitor and sync changes from files in a specified Git repository.

", + "GetRepositorySyncStatus": "

Returns details about the sync status for a repository. A repository sync uses Git sync to push and pull changes from your remote repository.

", + "GetResourceSyncStatus": "

Returns the status of the sync with the Git repository for a specific Amazon Web Services resource.

", + "GetSyncBlockerSummary": "

Returns a list of the most recent sync blockers.

", + "GetSyncConfiguration": "

Returns details about a sync configuration, including the sync type and resource name. A sync configuration allows the configuration to sync (push and pull) changes from the remote repository for a specified branch in a Git repository.

", "ListConnections": "

Lists the connections associated with your account.

", "ListHosts": "

Lists the hosts associated with your account.

", + "ListRepositoryLinks": "

Lists the repository links created for connections in your account.

", + "ListRepositorySyncDefinitions": "

Lists the repository sync definitions for repository links in your account.

", + "ListSyncConfigurations": "

Returns a list of sync configurations for a specified repository.

", "ListTagsForResource": "

Gets the set of key-value pairs (metadata) that are used to manage the resource.

", "TagResource": "

Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.

", "UntagResource": "

Removes tags from an Amazon Web Services resource.

", - "UpdateHost": "

Updates a specified host with the provided configurations.

" + "UpdateHost": "

Updates a specified host with the provided configurations.

", + "UpdateRepositoryLink": "

Updates the association between your connection and a specified external Git repository. A repository link allows Git sync to monitor and sync changes to files in a specified Git repository.

", + "UpdateSyncBlocker": "

Allows you to update the status of a sync blocker, resolving the blocker and allowing syncing to continue.

", + "UpdateSyncConfiguration": "

Updates the sync configuration for your connection and a specified external Git repository.

" }, "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, "AccountId": { "base": null, "refs": { @@ -30,6 +50,39 @@ "UntagResourceInput$ResourceArn": "

The Amazon Resource Name (ARN) of the resource to remove tags from.

" } }, + "BlockerStatus": { + "base": null, + "refs": { + "SyncBlocker$Status": "

The status for a specific sync blocker.

" + } + }, + "BlockerType": { + "base": null, + "refs": { + "SyncBlocker$Type": "

The sync blocker type.

" + } + }, + "BranchName": { + "base": null, + "refs": { + "CreateSyncConfigurationInput$Branch": "

The branch in the repository from which changes will be synced.

", + "GetRepositorySyncStatusInput$Branch": "

The branch of the repository link for the requested repository sync status.

", + "RepositorySyncDefinition$Branch": "

The branch specified for a repository sync definition.

", + "Revision$Branch": "

The branch name for a specific revision.

", + "SyncConfiguration$Branch": "

The branch associated with a specific sync configuration.

", + "UpdateSyncConfigurationInput$Branch": "

The branch for the sync configuration to be updated.

" + } + }, + "ConcurrentModificationException": { + "base": "

Exception thrown as a result of concurrent modification to an application. For example, two individuals attempting to edit the same application at the same time.

", + "refs": { + } + }, + "ConditionalCheckFailedException": { + "base": "

The conditional check failed. Try again later.

", + "refs": { + } + }, "ConflictException": { "base": "

Two conflicting operations have been made on the same resource.

", "refs": { @@ -47,8 +100,11 @@ "refs": { "Connection$ConnectionArn": "

The Amazon Resource Name (ARN) of the connection. The ARN is used as the connection reference when the connection is shared between Amazon Web Services.

The ARN is never reused if the connection is deleted.

", "CreateConnectionOutput$ConnectionArn": "

The Amazon Resource Name (ARN) of the connection to be created. The ARN is used as the connection reference when the connection is shared between Amazon Web Services services.

The ARN is never reused if the connection is deleted.

", + "CreateRepositoryLinkInput$ConnectionArn": "

The Amazon Resource Name (ARN) of the connection to be associated with the repository link.

", "DeleteConnectionInput$ConnectionArn": "

The Amazon Resource Name (ARN) of the connection to be deleted.

The ARN is never reused if the connection is deleted.

", - "GetConnectionInput$ConnectionArn": "

The Amazon Resource Name (ARN) of a connection.

" + "GetConnectionInput$ConnectionArn": "

The Amazon Resource Name (ARN) of a connection.

", + "RepositoryLinkInfo$ConnectionArn": "

The Amazon Resource Name (ARN) of the connection associated with the repository link.

", + "UpdateRepositoryLinkInput$ConnectionArn": "

The Amazon Resource Name (ARN) of the connection for the repository link to be updated. The updated connection ARN must have the same providerType (such as GitHub) as the original connection ARN for the repo link.

" } }, "ConnectionList": { @@ -90,6 +146,32 @@ "refs": { } }, + "CreateRepositoryLinkInput": { + "base": null, + "refs": { + } + }, + "CreateRepositoryLinkOutput": { + "base": null, + "refs": { + } + }, + "CreateSyncConfigurationInput": { + "base": null, + "refs": { + } + }, + "CreateSyncConfigurationOutput": { + "base": null, + "refs": { + } + }, + "CreatedReason": { + "base": null, + "refs": { + "SyncBlocker$CreatedReason": "

The provided reason for a specific sync blocker.

" + } + }, "DeleteConnectionInput": { "base": null, "refs": { @@ -110,14 +192,75 @@ "refs": { } }, + "DeleteRepositoryLinkInput": { + "base": null, + "refs": { + } + }, + "DeleteRepositoryLinkOutput": { + "base": null, + "refs": { + } + }, + "DeleteSyncConfigurationInput": { + "base": null, + "refs": { + } + }, + "DeleteSyncConfigurationOutput": { + "base": null, + "refs": { + } + }, + "DeploymentFilePath": { + "base": null, + "refs": { + "CreateSyncConfigurationInput$ConfigFile": "

The file name of the configuration file that manages syncing between the connection and the repository. This configuration file is stored in the repository.

", + "SyncConfiguration$ConfigFile": "

The file path to the configuration file associated with a specific sync configuration. The path should point to an actual file in the sync configurations linked repository.

", + "UpdateSyncConfigurationInput$ConfigFile": "

The configuration file for the sync configuration to be updated.

" + } + }, + "Directory": { + "base": null, + "refs": { + "RepositorySyncDefinition$Directory": "

The configuration file for a repository sync definition. This value comes from creating or updating the config-file field of a sync-configuration.

", + "Revision$Directory": "

The directory, if any, for a specific revision.

" + } + }, "ErrorMessage": { "base": null, "refs": { + "AccessDeniedException$Message": null, + "ConcurrentModificationException$Message": null, + "ConditionalCheckFailedException$Message": null, "ConflictException$Message": null, + "InternalServerException$Message": null, + "InvalidInputException$Message": null, "LimitExceededException$Message": null, + "ResourceAlreadyExistsException$Message": null, "ResourceNotFoundException$Message": null, "ResourceUnavailableException$Message": null, - "UnsupportedOperationException$Message": null + "RetryLatestCommitFailedException$Message": null, + "SyncBlockerDoesNotExistException$Message": null, + "SyncConfigurationStillExistsException$Message": null, + "ThrottlingException$Message": null, + "UnsupportedOperationException$Message": null, + "UnsupportedProviderTypeException$Message": null, + "UpdateOutOfSyncException$Message": null + } + }, + "Event": { + "base": null, + "refs": { + "RepositorySyncEvent$Event": "

A description of a repository sync event.

", + "ResourceSyncEvent$Event": "

The event for a resource sync event.

" + } + }, + "ExternalId": { + "base": null, + "refs": { + "RepositorySyncEvent$ExternalId": "

The ID for a repository sync event.

", + "ResourceSyncEvent$ExternalId": "

The ID for a resource sync event.

" } }, "GetConnectionInput": { @@ -140,6 +283,56 @@ "refs": { } }, + "GetRepositoryLinkInput": { + "base": null, + "refs": { + } + }, + "GetRepositoryLinkOutput": { + "base": null, + "refs": { + } + }, + "GetRepositorySyncStatusInput": { + "base": null, + "refs": { + } + }, + "GetRepositorySyncStatusOutput": { + "base": null, + "refs": { + } + }, + "GetResourceSyncStatusInput": { + "base": null, + "refs": { + } + }, + "GetResourceSyncStatusOutput": { + "base": null, + "refs": { + } + }, + "GetSyncBlockerSummaryInput": { + "base": null, + "refs": { + } + }, + "GetSyncBlockerSummaryOutput": { + "base": null, + "refs": { + } + }, + "GetSyncConfigurationInput": { + "base": null, + "refs": { + } + }, + "GetSyncConfigurationOutput": { + "base": null, + "refs": { + } + }, "Host": { "base": "

A resource that represents the infrastructure where a third-party provider is installed. The host is used when you create connections to an installed third-party provider type, such as GitHub Enterprise Server. You create one host for all connections to that provider.

A host created through the CLI or the SDK is in `PENDING` status by default. You can make its status `AVAILABLE` by setting up the host in the console.

", "refs": { @@ -186,6 +379,45 @@ "Host$StatusMessage": "

The status description for the host.

" } }, + "IamRoleArn": { + "base": null, + "refs": { + "CreateSyncConfigurationInput$RoleArn": "

The ARN of the IAM role that grants permission for Amazon Web Services to use Git sync to update a given Amazon Web Services resource on your behalf.

", + "SyncConfiguration$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role associated with a specific sync configuration.

", + "UpdateSyncConfigurationInput$RoleArn": "

The ARN of the IAM role for the sync configuration to be updated.

" + } + }, + "Id": { + "base": null, + "refs": { + "SyncBlocker$Id": "

The ID for a specific sync blocker.

", + "UpdateSyncBlockerInput$Id": "

The ID of the sync blocker to be updated.

" + } + }, + "InternalServerException": { + "base": "

Received an internal server exception. Try again later.

", + "refs": { + } + }, + "InvalidInputException": { + "base": "

The input is not valid. Verify that the action is typed correctly.

", + "refs": { + } + }, + "KmsKeyArn": { + "base": null, + "refs": { + "CreateRepositoryLinkInput$EncryptionKeyArn": "

The Amazon Resource Name (ARN) encryption key for the repository to be associated with the repository link.

", + "RepositoryLinkInfo$EncryptionKeyArn": "

The Amazon Resource Name (ARN) of the encryption key for the repository associated with the repository link.

", + "UpdateRepositoryLinkInput$EncryptionKeyArn": "

The Amazon Resource Name (ARN) of the encryption key for the repository link to be updated.

" + } + }, + "LatestSyncBlockerList": { + "base": null, + "refs": { + "SyncBlockerSummary$LatestBlockers": "

The latest events for a sync blocker summary.

" + } + }, "LimitExceededException": { "base": "

Exceeded the maximum limit for connections.

", "refs": { @@ -211,6 +443,36 @@ "refs": { } }, + "ListRepositoryLinksInput": { + "base": null, + "refs": { + } + }, + "ListRepositoryLinksOutput": { + "base": null, + "refs": { + } + }, + "ListRepositorySyncDefinitionsInput": { + "base": null, + "refs": { + } + }, + "ListRepositorySyncDefinitionsOutput": { + "base": null, + "refs": { + } + }, + "ListSyncConfigurationsInput": { + "base": null, + "refs": { + } + }, + "ListSyncConfigurationsOutput": { + "base": null, + "refs": { + } + }, "ListTagsForResourceInput": { "base": null, "refs": { @@ -225,7 +487,9 @@ "base": null, "refs": { "ListConnectionsInput$MaxResults": "

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value.

", - "ListHostsInput$MaxResults": "

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" + "ListHostsInput$MaxResults": "

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value.

", + "ListRepositoryLinksInput$MaxResults": "

A non-zero, non-negative integer used to limit the number of returned results.

", + "ListSyncConfigurationsInput$MaxResults": "

A non-zero, non-negative integer used to limit the number of returned results.

" } }, "NextToken": { @@ -237,6 +501,21 @@ "ListHostsOutput$NextToken": "

A token that can be used in the next ListHosts call. To view all items in the list, continue to call this operation with each subsequent token until no more nextToken values are returned.

" } }, + "OwnerId": { + "base": null, + "refs": { + "CreateRepositoryLinkInput$OwnerId": "

The owner ID for the repository associated with a specific sync configuration, such as the owner ID in GitHub.

", + "RepositoryLinkInfo$OwnerId": "

The owner ID for the repository associated with the repository link, such as the owner ID in GitHub.

", + "Revision$OwnerId": "

The owner ID for a specific revision, such as the GitHub owner ID for a GitHub repository.

", + "SyncConfiguration$OwnerId": "

The owner ID for the repository associated with a specific sync configuration, such as the owner ID in GitHub.

" + } + }, + "Parent": { + "base": null, + "refs": { + "RepositorySyncDefinition$Parent": "

The parent resource specified for a repository sync definition.

" + } + }, "ProviderType": { "base": null, "refs": { @@ -245,7 +524,120 @@ "CreateHostInput$ProviderType": "

The name of the installed provider to be associated with your connection. The host resource represents the infrastructure where your provider type is installed. The valid provider type is GitHub Enterprise Server.

", "GetHostOutput$ProviderType": "

The provider type of the requested host, such as GitHub Enterprise Server.

", "Host$ProviderType": "

The name of the installed provider to be associated with your connection. The host resource represents the infrastructure where your provider type is installed. The valid provider type is GitHub Enterprise Server.

", - "ListConnectionsInput$ProviderTypeFilter": "

Filters the list of connections to those associated with a specified provider, such as Bitbucket.

" + "ListConnectionsInput$ProviderTypeFilter": "

Filters the list of connections to those associated with a specified provider, such as Bitbucket.

", + "RepositoryLinkInfo$ProviderType": "

The provider type for the connection, such as GitHub, associated with the repository link.

", + "Revision$ProviderType": "

The provider type for a revision, such as GitHub.

", + "SyncConfiguration$ProviderType": "

The connection provider type associated with a specific sync configuration, such as GitHub.

" + } + }, + "RepositoryLinkArn": { + "base": null, + "refs": { + "RepositoryLinkInfo$RepositoryLinkArn": "

The Amazon Resource Name (ARN) of the repository link.

" + } + }, + "RepositoryLinkId": { + "base": null, + "refs": { + "CreateSyncConfigurationInput$RepositoryLinkId": "

The ID of the repository link created for the connection. A repository link allows Git sync to monitor and sync changes to files in a specified Git repository.

", + "DeleteRepositoryLinkInput$RepositoryLinkId": "

The ID of the repository link to be deleted.

", + "GetRepositoryLinkInput$RepositoryLinkId": "

The ID of the repository link to get.

", + "GetRepositorySyncStatusInput$RepositoryLinkId": "

The repository link ID for the requested repository sync status.

", + "ListRepositorySyncDefinitionsInput$RepositoryLinkId": "

The ID of the repository link for the sync definition for which you want to retrieve information.

", + "ListSyncConfigurationsInput$RepositoryLinkId": "

The ID of the repository link for the requested list of sync configurations.

", + "RepositoryLinkInfo$RepositoryLinkId": "

The ID of the repository link.

", + "SyncConfiguration$RepositoryLinkId": "

The ID of the repository link associated with a specific sync configuration.

", + "UpdateRepositoryLinkInput$RepositoryLinkId": "

The ID of the repository link to be updated.

", + "UpdateSyncConfigurationInput$RepositoryLinkId": "

The ID of the repository link for the sync configuration to be updated.

" + } + }, + "RepositoryLinkInfo": { + "base": "

Information about the repository link resource, such as the repository link ARN, the associated connection ARN, encryption key ARN, and owner ID.

", + "refs": { + "CreateRepositoryLinkOutput$RepositoryLinkInfo": "

The returned information about the created repository link.

", + "GetRepositoryLinkOutput$RepositoryLinkInfo": "

The information returned for a specified repository link.

", + "RepositoryLinkList$member": null, + "UpdateRepositoryLinkOutput$RepositoryLinkInfo": "

Information about the repository link to be updated.

" + } + }, + "RepositoryLinkList": { + "base": null, + "refs": { + "ListRepositoryLinksOutput$RepositoryLinks": "

Lists the repository links called by the list repository links operation.

" + } + }, + "RepositoryName": { + "base": null, + "refs": { + "CreateRepositoryLinkInput$RepositoryName": "

The name of the repository to be associated with the repository link.

", + "RepositoryLinkInfo$RepositoryName": "

The name of the repository associated with the repository link.

", + "Revision$RepositoryName": "

The repository name for a specific revision.

", + "SyncConfiguration$RepositoryName": "

The name of the repository associated with a specific sync configuration.

" + } + }, + "RepositorySyncAttempt": { + "base": "

Information about a repository sync attempt for a repository with a sync configuration.

", + "refs": { + "GetRepositorySyncStatusOutput$LatestSync": "

The status of the latest sync returned for a specified repository and branch.

" + } + }, + "RepositorySyncDefinition": { + "base": "

The definition for a repository with a sync configuration.

", + "refs": { + "RepositorySyncDefinitionList$member": null + } + }, + "RepositorySyncDefinitionList": { + "base": null, + "refs": { + "ListRepositorySyncDefinitionsOutput$RepositorySyncDefinitions": "

The list of repository sync definitions returned by the request. A RepositorySyncDefinition is a mapping from a repository branch to all the Amazon Web Services resources that are being synced from that branch.

" + } + }, + "RepositorySyncEvent": { + "base": "

Information about a repository sync event.

", + "refs": { + "RepositorySyncEventList$member": null + } + }, + "RepositorySyncEventList": { + "base": null, + "refs": { + "RepositorySyncAttempt$Events": "

The events associated with a specific sync attempt.

" + } + }, + "RepositorySyncStatus": { + "base": null, + "refs": { + "RepositorySyncAttempt$Status": "

The status of a specific sync attempt. The following are valid statuses:

  • INITIATED - A repository sync attempt has been created and will begin soon.

  • IN_PROGRESS - A repository sync attempt has started and work is being done to reconcile the branch.

  • SUCCEEDED - The repository sync attempt has completed successfully.

  • FAILED - The repository sync attempt has failed.

  • QUEUED - The repository sync attempt didn't execute and was queued.

" + } + }, + "ResolvedReason": { + "base": null, + "refs": { + "SyncBlocker$ResolvedReason": "

The resolved reason for a specific sync blocker.

", + "UpdateSyncBlockerInput$ResolvedReason": "

The reason for resolving the sync blocker.

" + } + }, + "ResourceAlreadyExistsException": { + "base": "

Unable to create resource. Resource already exists.

", + "refs": { + } + }, + "ResourceName": { + "base": null, + "refs": { + "CreateSyncConfigurationInput$ResourceName": "

The name of the Amazon Web Services resource (for example, a CloudFormation stack in the case of CFN_STACK_SYNC) that will be synchronized from the linked repository.

", + "DeleteSyncConfigurationInput$ResourceName": "

The name of the Amazon Web Services resource associated with the sync configuration to be deleted.

", + "GetResourceSyncStatusInput$ResourceName": "

The name of the Amazon Web Services resource for the sync status with the Git repository.

", + "GetSyncBlockerSummaryInput$ResourceName": "

The name of the Amazon Web Services resource currently blocked from automatically being synced from a Git repository.

", + "GetSyncConfigurationInput$ResourceName": "

The name of the Amazon Web Services resource for the sync configuration for which you want to retrieve information.

", + "SyncBlockerSummary$ResourceName": "

The resource name for sync blocker summary.

", + "SyncBlockerSummary$ParentResourceName": "

The parent resource name for a sync blocker summary.

", + "SyncConfiguration$ResourceName": "

The name of the connection resource associated with a specific sync configuration.

", + "UpdateSyncBlockerInput$ResourceName": "

The name of the resource for the sync blocker to be updated.

", + "UpdateSyncBlockerOutput$ResourceName": "

The resource name for the sync blocker.

", + "UpdateSyncBlockerOutput$ParentResourceName": "

The parent resource name for the sync blocker.

", + "UpdateSyncConfigurationInput$ResourceName": "

The name of the Amazon Web Services resource for the sync configuration to be updated.

" } }, "ResourceNotFoundException": { @@ -253,11 +645,55 @@ "refs": { } }, + "ResourceSyncAttempt": { + "base": "

Information about a resource sync attempt.

", + "refs": { + "GetResourceSyncStatusOutput$LatestSuccessfulSync": "

The latest successful sync for the sync status with the Git repository.

", + "GetResourceSyncStatusOutput$LatestSync": "

The latest sync for the sync status with the Git repository, whether successful or not.

" + } + }, + "ResourceSyncEvent": { + "base": "

Information about a resource sync event for the resource associated with a sync configuration.

", + "refs": { + "ResourceSyncEventList$member": null + } + }, + "ResourceSyncEventList": { + "base": null, + "refs": { + "ResourceSyncAttempt$Events": "

The events related to a resource sync attempt.

" + } + }, + "ResourceSyncStatus": { + "base": null, + "refs": { + "ResourceSyncAttempt$Status": "

The status for a resource sync attempt. The follow are valid statuses:

  • SYNC-INITIATED - A resource sync attempt has been created and will begin soon.

  • SYNCING - Syncing has started and work is being done to reconcile state.

  • SYNCED - Syncing has completed successfully.

  • SYNC_FAILED - A resource sync attempt has failed.

" + } + }, "ResourceUnavailableException": { "base": "

Resource not found. Verify the ARN for the host resource and try again.

", "refs": { } }, + "RetryLatestCommitFailedException": { + "base": "

Retrying the latest commit failed. Try again later.

", + "refs": { + } + }, + "Revision": { + "base": "

Information about the revision for a specific sync event, such as the branch, owner ID, and name of the repository.

", + "refs": { + "GetResourceSyncStatusOutput$DesiredState": "

The desired state of the Amazon Web Services resource for the sync status with the Git repository.

", + "ResourceSyncAttempt$InitialRevision": "

The current state of the resource as defined in the resource's config-file in the linked repository.

", + "ResourceSyncAttempt$TargetRevision": "

The desired state of the resource as defined in the resource's config-file in the linked repository. Git sync attempts to update the resource to this state.

" + } + }, + "SHA": { + "base": null, + "refs": { + "Revision$Sha": "

The SHA, such as the commit ID, for a specific revision.

" + } + }, "SecurityGroupId": { "base": null, "refs": { @@ -270,6 +706,16 @@ "VpcConfiguration$SecurityGroupIds": "

The ID of the security group or security groups associated with the Amazon VPC connected to the infrastructure where your provider type is installed.

" } }, + "SharpNextToken": { + "base": null, + "refs": { + "ListRepositoryLinksInput$NextToken": "

An enumeration token that, when provided in a request, returns the next batch of the results.

", + "ListRepositoryLinksOutput$NextToken": "

An enumeration token that allows the operation to batch the results of the operation.

", + "ListRepositorySyncDefinitionsOutput$NextToken": "

An enumeration token that, when provided in a request, returns the next batch of the results.

", + "ListSyncConfigurationsInput$NextToken": "

An enumeration token that allows the operation to batch the results of the operation.

", + "ListSyncConfigurationsOutput$NextToken": "

An enumeration token that allows the operation to batch the next results of the operation.

" + } + }, "SubnetId": { "base": null, "refs": { @@ -282,6 +728,84 @@ "VpcConfiguration$SubnetIds": "

The ID of the subnet or subnets associated with the Amazon VPC connected to the infrastructure where your provider type is installed.

" } }, + "SyncBlocker": { + "base": "

Information about a blocker for a sync event.

", + "refs": { + "LatestSyncBlockerList$member": null, + "UpdateSyncBlockerOutput$SyncBlocker": "

Information about the sync blocker to be updated.

" + } + }, + "SyncBlockerContext": { + "base": "

The context for a specific sync blocker.

", + "refs": { + "SyncBlockerContextList$member": null + } + }, + "SyncBlockerContextKey": { + "base": null, + "refs": { + "SyncBlockerContext$Key": "

The key provided for a context key-value pair for a specific sync blocker.

" + } + }, + "SyncBlockerContextList": { + "base": null, + "refs": { + "SyncBlocker$Contexts": "

The contexts for a specific sync blocker.

" + } + }, + "SyncBlockerContextValue": { + "base": null, + "refs": { + "SyncBlockerContext$Value": "

The value provided for a context key-value pair for a specific sync blocker.

" + } + }, + "SyncBlockerDoesNotExistException": { + "base": "

Unable to continue. The sync blocker does not exist.

", + "refs": { + } + }, + "SyncBlockerSummary": { + "base": "

A summary for sync blockers.

", + "refs": { + "GetSyncBlockerSummaryOutput$SyncBlockerSummary": "

The list of sync blockers for a specified resource.

" + } + }, + "SyncConfiguration": { + "base": "

Information, such as repository, branch, provider, and resource names for a specific sync configuration.

", + "refs": { + "CreateSyncConfigurationOutput$SyncConfiguration": "

The created sync configuration for the connection. A sync configuration allows Amazon Web Services to sync content from a Git repository to update a specified Amazon Web Services resource.

", + "GetSyncConfigurationOutput$SyncConfiguration": "

The details about the sync configuration for which you want to retrieve information.

", + "SyncConfigurationList$member": null, + "UpdateSyncConfigurationOutput$SyncConfiguration": "

The information returned for the sync configuration to be updated.

" + } + }, + "SyncConfigurationList": { + "base": null, + "refs": { + "ListSyncConfigurationsOutput$SyncConfigurations": "

The list of repository sync definitions returned by the request.

" + } + }, + "SyncConfigurationStillExistsException": { + "base": "

Unable to continue. The sync blocker still exists.

", + "refs": { + } + }, + "SyncConfigurationType": { + "base": null, + "refs": { + "CreateSyncConfigurationInput$SyncType": "

The type of sync configuration.

", + "DeleteSyncConfigurationInput$SyncType": "

The type of sync configuration to be deleted.

", + "GetRepositorySyncStatusInput$SyncType": "

The sync type of the requested sync status.

", + "GetResourceSyncStatusInput$SyncType": "

The sync type for the sync status with the Git repository.

", + "GetSyncBlockerSummaryInput$SyncType": "

The sync type for the sync blocker summary.

", + "GetSyncConfigurationInput$SyncType": "

The sync type for the sync configuration for which you want to retrieve information.

", + "ListRepositorySyncDefinitionsInput$SyncType": "

The sync type of the repository link for the the sync definition for which you want to retrieve information.

", + "ListSyncConfigurationsInput$SyncType": "

The sync type for the requested list of sync configurations.

", + "SyncConfiguration$SyncType": "

The type of sync for a specific sync configuration.

", + "UpdateSyncBlockerInput$SyncType": "

The sync type of the sync blocker to be updated.

", + "UpdateSyncConfigurationInput$SyncType": "

The sync type for the sync configuration to be updated.

" + } + }, "Tag": { "base": "

A tag is a key-value pair that is used to manage the resource.

This tag is available for use by Amazon Web Services services that support tags.

", "refs": { @@ -306,8 +830,9 @@ "refs": { "CreateConnectionInput$Tags": "

The key-value pair to use when tagging the resource.

", "CreateConnectionOutput$Tags": "

Specifies the tags applied to the resource.

", - "CreateHostInput$Tags": null, - "CreateHostOutput$Tags": null, + "CreateHostInput$Tags": "

Tags for the host to be created.

", + "CreateHostOutput$Tags": "

Tags for the created host.

", + "CreateRepositoryLinkInput$Tags": "

The tags for the repository to be associated with the repository link.

", "ListTagsForResourceOutput$Tags": "

A list of tag key and value pairs associated with the specified resource.

", "TagResourceInput$Tags": "

The tags you want to modify or add to the resource.

" } @@ -328,17 +853,52 @@ "Tag$Value": "

The tag's value.

" } }, + "Target": { + "base": null, + "refs": { + "RepositorySyncDefinition$Target": "

The target resource specified for a repository sync definition. In some cases, such as CFN_STACK_SYNC, the parent and target resource are the same.

", + "ResourceSyncAttempt$Target": "

The name of the Amazon Web Services resource that is attempted to be synchronized.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "RepositorySyncAttempt$StartedAt": "

The start time of a specific sync attempt.

", + "RepositorySyncEvent$Time": "

The time that a repository sync event occurred.

", + "ResourceSyncAttempt$StartedAt": "

The start time for a resource sync attempt.

", + "ResourceSyncEvent$Time": "

The time that a resource sync event occurred.

", + "SyncBlocker$CreatedAt": "

The creation time for a specific sync blocker.

", + "SyncBlocker$ResolvedAt": "

The time that a specific sync blocker was resolved.

" + } + }, "TlsCertificate": { "base": null, "refs": { "VpcConfiguration$TlsCertificate": "

The value of the Transport Layer Security (TLS) certificate associated with the infrastructure where your provider type is installed.

" } }, + "Type": { + "base": null, + "refs": { + "RepositorySyncEvent$Type": "

The event type for a repository sync event.

", + "ResourceSyncEvent$Type": "

The type of resource sync event.

" + } + }, "UnsupportedOperationException": { "base": "

The operation is not supported. Check the connection status and try again.

", "refs": { } }, + "UnsupportedProviderTypeException": { + "base": "

The specified provider type is not supported for connections.

", + "refs": { + } + }, "UntagResourceInput": { "base": null, "refs": { @@ -358,6 +918,41 @@ "base": null, "refs": { } + }, + "UpdateOutOfSyncException": { + "base": "

The update is out of sync. Try syncing again.

", + "refs": { + } + }, + "UpdateRepositoryLinkInput": { + "base": null, + "refs": { + } + }, + "UpdateRepositoryLinkOutput": { + "base": null, + "refs": { + } + }, + "UpdateSyncBlockerInput": { + "base": null, + "refs": { + } + }, + "UpdateSyncBlockerOutput": { + "base": null, + "refs": { + } + }, + "UpdateSyncConfigurationInput": { + "base": null, + "refs": { + } + }, + "UpdateSyncConfigurationOutput": { + "base": null, + "refs": { + } }, "Url": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://codestar-connections-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://codestar-connections-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://codestar-connections-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://codestar-connections-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://codestar-connections.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://codestar-connections.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://codestar-connections.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://codestar-connections.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/codestar-connections/2019-12-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/codestar-connections/2019-12-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,6 +9,16 @@ "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults" + }, + "ListRepositoryLinks": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListSyncConfigurations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cognito-idp/2016-04-18/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cognito-idp/2016-04-18/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cognito-idp/2016-04-18/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cognito-idp/2016-04-18/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5571,7 +5571,11 @@ "Id":{"shape":"UserPoolIdType"}, "Name":{"shape":"UserPoolNameType"}, "LambdaConfig":{"shape":"LambdaConfigType"}, - "Status":{"shape":"StatusType"}, + "Status":{ + "shape":"StatusType", + "deprecated":true, + "deprecatedMessage":"This property is no longer available." + }, "LastModifiedDate":{"shape":"DateType"}, "CreationDate":{"shape":"DateType"} } @@ -5630,7 +5634,11 @@ "Policies":{"shape":"UserPoolPolicyType"}, "DeletionProtection":{"shape":"DeletionProtectionType"}, "LambdaConfig":{"shape":"LambdaConfigType"}, - "Status":{"shape":"StatusType"}, + "Status":{ + "shape":"StatusType", + "deprecated":true, + "deprecatedMessage":"This property is no longer available." + }, "LastModifiedDate":{"shape":"DateType"}, "CreationDate":{"shape":"DateType"}, "SchemaAttributes":{"shape":"SchemaAttributesListType"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cognito-idp/2016-04-18/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cognito-idp/2016-04-18/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cognito-idp/2016-04-18/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cognito-idp/2016-04-18/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3288,7 +3288,7 @@ "refs": { "AdminAddUserToGroupRequest$Username": "

The username for the user.

", "AdminConfirmSignUpRequest$Username": "

The user name for which you want to confirm user registration.

", - "AdminCreateUserRequest$Username": "

The username for the user. Must be unique within the user pool. Must be a UTF-8 string between 1 and 128 characters. After the user is created, the username can't be changed.

", + "AdminCreateUserRequest$Username": "

The value that you want to set as the username sign-in attribute. The following conditions apply to the username parameter.

  • The username can't be a duplicate of another username in the same user pool.

  • You can't change the value of a username after you create it.

  • You can only provide a value if usernames are a valid sign-in attribute for your user pool. If your user pool only supports phone numbers or email addresses as sign-in attributes, Amazon Cognito automatically generates a username value. For more information, see Customizing sign-in attributes.

", "AdminDeleteUserAttributesRequest$Username": "

The user name of the user from which you would like to delete attributes.

", "AdminDeleteUserRequest$Username": "

The user name of the user you want to delete.

", "AdminDisableUserRequest$Username": "

The user name of the user you want to disable.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cognito-idp/2016-04-18/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cognito-idp/2016-04-18/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cognito-idp/2016-04-18/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cognito-idp/2016-04-18/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -771,83 +771,6 @@ "description": "This request submits a value for all possible parameters for ListUsers. By iterating the PaginationToken, you can page through and collect all users in a user pool.", "id": "a-listusers-request-for-the-next-3-users-whose-email-address-starts-with-testuser-1689977648246", "title": "A ListUsers request for the next 3 users whose email address starts with \"testuser.\"" - }, - { - "input": { - "AttributesToGet": [ - "email", - "sub" - ], - "Filter": "\"email\"^=\"testuser\"", - "Limit": 3, - "PaginationToken": "abcd1234EXAMPLE", - "UserPoolId": "us-east-1_EXAMPLE" - }, - "output": { - "PaginationToken": "efgh5678EXAMPLE", - "Users": [ - { - "Attributes": [ - { - "Name": "sub", - "Value": "eaad0219-2117-439f-8d46-4db20e59268f" - }, - { - "Name": "email", - "Value": "testuser@example.com" - } - ], - "Enabled": true, - "UserCreateDate": 1682955829.578, - "UserLastModifiedDate": 1689030181.63, - "UserStatus": "CONFIRMED", - "Username": "testuser" - }, - { - "Attributes": [ - { - "Name": "sub", - "Value": "3b994cfd-0b07-4581-be46-3c82f9a70c90" - }, - { - "Name": "email", - "Value": "testuser2@example.com" - } - ], - "Enabled": true, - "UserCreateDate": 1684427979.201, - "UserLastModifiedDate": 1684427979.201, - "UserStatus": "UNCONFIRMED", - "Username": "testuser2" - }, - { - "Attributes": [ - { - "Name": "sub", - "Value": "5929e0d1-4c34-42d1-9b79-a5ecacfe66f7" - }, - { - "Name": "email", - "Value": "testuser3@example.com" - } - ], - "Enabled": true, - "UserCreateDate": 1684427823.641, - "UserLastModifiedDate": 1684427823.641, - "UserStatus": "UNCONFIRMED", - "Username": "testuser3@example.com" - } - ] - }, - "comments": { - "input": { - }, - "output": { - } - }, - "description": "This request submits a value for all possible parameters for ListUsers. By iterating the PaginationToken, you can page through and collect all users in a user pool.", - "id": "a-listusers-request-for-the-next-3-users-whose-email-address-starts-with-testuser-1689977648246", - "title": "A ListUsers request for the next 3 users whose email address starts with \"testuser.\"" } ] } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/comprehend/2017-11-27/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/comprehend/2017-11-27/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/comprehend/2017-11-27/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/comprehend/2017-11-27/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -659,6 +659,21 @@ {"shape":"InternalServerException"} ] }, + "DetectToxicContent":{ + "name":"DetectToxicContent", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DetectToxicContentRequest"}, + "output":{"shape":"DetectToxicContentResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"TextSizeLimitExceededException"}, + {"shape":"UnsupportedLanguageException"}, + {"shape":"InternalServerException"} + ] + }, "ImportModel":{ "name":"ImportModel", "http":{ @@ -2400,6 +2415,23 @@ }, "sensitive":true }, + "DetectToxicContentRequest":{ + "type":"structure", + "required":[ + "TextSegments", + "LanguageCode" + ], + "members":{ + "TextSegments":{"shape":"ListOfTextSegments"}, + "LanguageCode":{"shape":"LanguageCode"} + } + }, + "DetectToxicContentResponse":{ + "type":"structure", + "members":{ + "ResultList":{"shape":"ListOfToxicLabels"} + } + }, "DocumentClass":{ "type":"structure", "members":{ @@ -2482,7 +2514,7 @@ "DocumentClassifierEndpointArn":{ "type":"string", "max":256, - "pattern":"arn:aws(-[^:]+)?:comprehend:[a-zA-Z0-9-]*:[0-9]{12}:document-classifier-endpoint/[a-zA-Z0-9](-*[a-zA-Z0-9])*" + "pattern":"arn:aws(-[^:]+)?:comprehend:[a-zA-Z0-9-]*:([0-9]{12}|aws):document-classifier-endpoint/[a-zA-Z0-9](-*[a-zA-Z0-9])*" }, "DocumentClassifierFilter":{ "type":"structure", @@ -3618,6 +3650,20 @@ "type":"list", "member":{"shape":"TargetedSentimentEntity"} }, + "ListOfTextSegments":{ + "type":"list", + "member":{"shape":"TextSegment"}, + "min":1, + "sensitive":true + }, + "ListOfToxicContent":{ + "type":"list", + "member":{"shape":"ToxicContent"} + }, + "ListOfToxicLabels":{ + "type":"list", + "member":{"shape":"ToxicLabels"} + }, "ListOfWarnings":{ "type":"list", "member":{"shape":"WarningsListItem"} @@ -4650,6 +4696,13 @@ "EntityRecognitionConfig":{"shape":"EntityRecognitionConfig"} } }, + "TextSegment":{ + "type":"structure", + "required":["Text"], + "members":{ + "Text":{"shape":"CustomerInputString"} + } + }, "TextSizeLimitExceededException":{ "type":"structure", "members":{ @@ -4710,6 +4763,32 @@ "type":"list", "member":{"shape":"TopicsDetectionJobProperties"} }, + "ToxicContent":{ + "type":"structure", + "members":{ + "Name":{"shape":"ToxicContentType"}, + "Score":{"shape":"Float"} + } + }, + "ToxicContentType":{ + "type":"string", + "enum":[ + "GRAPHIC", + "HARASSMENT_OR_ABUSE", + "HATE_SPEECH", + "INSULT", + "PROFANITY", + "SEXUAL", + "VIOLENCE_OR_THREAT" + ] + }, + "ToxicLabels":{ + "type":"structure", + "members":{ + "Labels":{"shape":"ListOfToxicContent"}, + "Toxicity":{"shape":"Float"} + } + }, "UnsupportedLanguageException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/comprehend/2017-11-27/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/comprehend/2017-11-27/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/comprehend/2017-11-27/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/comprehend/2017-11-27/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,8 +7,8 @@ "BatchDetectKeyPhrases": "

Detects the key noun phrases found in a batch of documents.

", "BatchDetectSentiment": "

Inspects a batch of documents and returns an inference of the prevailing sentiment, POSITIVE, NEUTRAL, MIXED, or NEGATIVE, in each one.

", "BatchDetectSyntax": "

Inspects the text of a batch of documents for the syntax and part of speech of the words in the document and returns information about them. For more information, see Syntax in the Comprehend Developer Guide.

", - "BatchDetectTargetedSentiment": "

Inspects a batch of documents and returns a sentiment analysis for each entity identified in the documents.

For more information about targeted sentiment, see Targeted sentiment.

", - "ClassifyDocument": "

Creates a new document classification request to analyze a single document in real-time, using a previously created and trained custom model and an endpoint.

You can input plain text or you can upload a single-page input document (text, PDF, Word, or image).

If the system detects errors while processing a page in the input document, the API response includes an entry in Errors that describes the errors.

If the system detects a document-level error in your input document, the API returns an InvalidRequestException error response. For details about this exception, see Errors in semi-structured documents in the Comprehend Developer Guide.

", + "BatchDetectTargetedSentiment": "

Inspects a batch of documents and returns a sentiment analysis for each entity identified in the documents.

For more information about targeted sentiment, see Targeted sentiment in the Amazon Comprehend Developer Guide.

", + "ClassifyDocument": "

Creates a classification request to analyze a single document in real-time. ClassifyDocument supports the following model types:

  • Custom classifier - a custom model that you have created and trained. For input, you can provide plain text, a single-page document (PDF, Word, or image), or Amazon Textract API output. For more information, see Custom classification in the Amazon Comprehend Developer Guide.

  • Prompt safety classifier - Amazon Comprehend provides a pre-trained model for classifying input prompts for generative AI applications. For input, you provide English plain text input. For prompt safety classification, the response includes only the Classes field. For more information about prompt safety classifiers, see Prompt safety classification in the Amazon Comprehend Developer Guide.

If the system detects errors while processing a page in the input document, the API response includes an Errors field that describes the errors.

If the system detects a document-level error in your input document, the API returns an InvalidRequestException error response. For details about this exception, see Errors in semi-structured documents in the Comprehend Developer Guide.

", "ContainsPiiEntities": "

Analyzes input text for the presence of personally identifiable information (PII) and returns the labels of identified PII entity types such as name, address, bank account number, or phone number.

", "CreateDataset": "

Creates a dataset to upload training or test data for a model associated with a flywheel. For more information about datasets, see Flywheel overview in the Amazon Comprehend Developer Guide.

", "CreateDocumentClassifier": "

Creates a new document classifier that you can use to categorize documents. To create a classifier, you provide a set of training documents that are labeled with the categories that you want to use. For more information, see Training classifier models in the Comprehend Developer Guide.

", @@ -42,7 +42,8 @@ "DetectPiiEntities": "

Inspects the input text for entities that contain personally identifiable information (PII) and returns information about them.

", "DetectSentiment": "

Inspects text and returns an inference of the prevailing sentiment (POSITIVE, NEUTRAL, MIXED, or NEGATIVE).

", "DetectSyntax": "

Inspects text for syntax and the part of speech of words in the document. For more information, see Syntax in the Comprehend Developer Guide.

", - "DetectTargetedSentiment": "

Inspects the input text and returns a sentiment analysis for each entity identified in the text.

For more information about targeted sentiment, see Targeted sentiment.

", + "DetectTargetedSentiment": "

Inspects the input text and returns a sentiment analysis for each entity identified in the text.

For more information about targeted sentiment, see Targeted sentiment in the Amazon Comprehend Developer Guide.

", + "DetectToxicContent": "

Performs toxicity analysis on the list of text strings that you provide as input. The API response contains a results list that matches the size of the input list. For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide.

", "ImportModel": "

Creates a new custom model that replicates a source custom model that you import. The source model can be in your Amazon Web Services account or another one.

If the source model is in another Amazon Web Services account, then it must have a resource-based policy that authorizes you to import it.

The source model must be in the same Amazon Web Services Region that you're using when you import. You can't import a model that's in a different Region.

", "ListDatasets": "

List the datasets that you have configured in this Region. For more information about datasets, see Flywheel overview in the Amazon Comprehend Developer Guide.

", "ListDocumentClassificationJobs": "

Gets a list of the documentation classification jobs that you have submitted.

", @@ -63,7 +64,7 @@ "ListTargetedSentimentDetectionJobs": "

Gets a list of targeted sentiment detection jobs that you have submitted.

", "ListTopicsDetectionJobs": "

Gets a list of the topic detection jobs that you have submitted.

", "PutResourcePolicy": "

Attaches a resource-based policy to a custom model. You can use this policy to authorize an entity in another Amazon Web Services account to import the custom model, which replicates it in Amazon Comprehend in their account.

", - "StartDocumentClassificationJob": "

Starts an asynchronous document classification job. Use the DescribeDocumentClassificationJob operation to track the progress of the job.

", + "StartDocumentClassificationJob": "

Starts an asynchronous document classification job using a custom classification model. Use the DescribeDocumentClassificationJob operation to track the progress of the job.

", "StartDominantLanguageDetectionJob": "

Starts an asynchronous dominant language detection job for a collection of documents. Use the operation to track the status of a job.

", "StartEntitiesDetectionJob": "

Starts an asynchronous entity detection job for a collection of documents. Use the operation to track the status of a job.

This API can be used for either standard entity detection or custom entity recognition. In order to be used for custom entity recognition, the optional EntityRecognizerArn must be used in order to provide access to the recognizer being used to detect the custom entity.

", "StartEventsDetectionJob": "

Starts an asynchronous event detection job for a collection of documents.

", @@ -425,7 +426,7 @@ "refs": { "CreateEndpointRequest$ModelArn": "

The Amazon Resource Number (ARN) of the model to which the endpoint will be attached.

", "CreateEndpointResponse$ModelArn": "

The Amazon Resource Number (ARN) of the model to which the endpoint is attached.

", - "CreateFlywheelRequest$ActiveModelArn": "

To associate an existing model with the flywheel, specify the Amazon Resource Number (ARN) of the model version.

", + "CreateFlywheelRequest$ActiveModelArn": "

To associate an existing model with the flywheel, specify the Amazon Resource Number (ARN) of the model version. Do not set TaskConfig or ModelType if you specify an ActiveModelArn.

", "CreateFlywheelResponse$ActiveModelArn": "

The Amazon Resource Number (ARN) of the active model version.

", "DeleteResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the custom model version that has the policy to delete.

", "DescribeResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the custom model version that has the resource policy.

", @@ -519,7 +520,8 @@ "DetectKeyPhrasesRequest$Text": "

A UTF-8 text string. The string must contain less than 100 KB of UTF-8 encoded characters.

", "DetectSentimentRequest$Text": "

A UTF-8 text string. The maximum string size is 5 KB.

", "DetectSyntaxRequest$Text": "

A UTF-8 string. The maximum string size is 5 KB.

", - "DetectTargetedSentimentRequest$Text": "

A UTF-8 text string. The maximum string length is 5 KB.

" + "DetectTargetedSentimentRequest$Text": "

A UTF-8 text string. The maximum string length is 5 KB.

", + "TextSegment$Text": "

The text content.

" } }, "CustomerInputStringList": { @@ -915,6 +917,16 @@ "refs": { } }, + "DetectToxicContentRequest": { + "base": null, + "refs": { + } + }, + "DetectToxicContentResponse": { + "base": null, + "refs": { + } + }, "DocumentClass": { "base": "

Specifies the class that categorizes the document being analyzed

", "refs": { @@ -922,9 +934,9 @@ } }, "DocumentClassificationConfig": { - "base": "

Configuration required for a custom classification model.

", + "base": "

Configuration required for a document classification model.

", "refs": { - "TaskConfig$DocumentClassificationConfig": "

Configuration required for a classification model.

" + "TaskConfig$DocumentClassificationConfig": "

Configuration required for a document classification model.

" } }, "DocumentClassificationJobFilter": { @@ -975,19 +987,19 @@ "DocumentClassifierDocumentTypeFormat": { "base": null, "refs": { - "DocumentClassifierInputDataConfig$DocumentType": "

The type of input documents for training the model. Provide plain-text documents to create a plain-text model, and provide semi-structured documents to create a native model.

" + "DocumentClassifierInputDataConfig$DocumentType": "

The type of input documents for training the model. Provide plain-text documents to create a plain-text model, and provide semi-structured documents to create a native document model.

" } }, "DocumentClassifierDocuments": { - "base": "

The location of the training documents. This parameter is required in a request to create a native classifier model.

", + "base": "

The location of the training documents. This parameter is required in a request to create a semi-structured document classification model.

", "refs": { - "DocumentClassifierInputDataConfig$Documents": "

The S3 location of the training documents. This parameter is required in a request to create a native classifier model.

" + "DocumentClassifierInputDataConfig$Documents": "

The S3 location of the training documents. This parameter is required in a request to create a native document model.

" } }, "DocumentClassifierEndpointArn": { "base": null, "refs": { - "ClassifyDocumentRequest$EndpointArn": "

The Amazon Resource Number (ARN) of the endpoint. For information about endpoints, see Managing endpoints.

" + "ClassifyDocumentRequest$EndpointArn": "

The Amazon Resource Number (ARN) of the endpoint.

For prompt safety classification, Amazon Comprehend provides the endpoint ARN. For more information about prompt safety classifiers, see Prompt safety classification in the Amazon Comprehend Developer Guide

For custom classification, you create an endpoint for your custom model. For more information, see Using Amazon Comprehend endpoints.

" } }, "DocumentClassifierFilter": { @@ -1006,15 +1018,15 @@ "DocumentClassifierMode": { "base": null, "refs": { - "CreateDocumentClassifierRequest$Mode": "

Indicates the mode in which the classifier will be trained. The classifier can be trained in multi-class mode, which identifies one and only one class for each document, or multi-label mode, which identifies one or more labels for each document. In multi-label mode, multiple labels for an individual document are separated by a delimiter. The default delimiter between labels is a pipe (|).

", + "CreateDocumentClassifierRequest$Mode": "

Indicates the mode in which the classifier will be trained. The classifier can be trained in multi-class (single-label) mode or multi-label mode. Multi-class mode identifies a single class label for each document and multi-label mode identifies one or more class labels for each document. Multiple labels for an individual document are separated by a delimiter. The default delimiter between labels is a pipe (|).

", "DocumentClassificationConfig$Mode": "

Classification mode indicates whether the documents are MULTI_CLASS or MULTI_LABEL.

", "DocumentClassifierProperties$Mode": "

Indicates the mode in which the specific classifier was trained. This also indicates the format of input documents and the format of the confusion matrix. Each classifier can only be trained in one mode and this cannot be changed once the classifier is trained.

" } }, "DocumentClassifierOutputDataConfig": { - "base": "

Provide the location for output data from a custom classifier job. This field is mandatory if you are training a native classifier model.

", + "base": "

Provide the location for output data from a custom classifier job. This field is mandatory if you are training a native document model.

", "refs": { - "CreateDocumentClassifierRequest$OutputDataConfig": "

Specifies the location for the output files from a custom classifier job. This parameter is required for a request that creates a native classifier model.

", + "CreateDocumentClassifierRequest$OutputDataConfig": "

Specifies the location for the output files from a custom classifier job. This parameter is required for a request that creates a native document model.

", "DocumentClassifierProperties$OutputDataConfig": "

Provides output results configuration parameters for custom classifier jobs.

" } }, @@ -1063,7 +1075,7 @@ } }, "DocumentReadFeatureTypes": { - "base": "

Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

  • TABLES - Returns additional information about any tables that are detected in the input document.

  • FORMS - Returns additional information about any forms that are detected in the input document.

", + "base": "

TABLES or FORMS

", "refs": { "ListOfDocumentReadFeatureTypes$member": null } @@ -1333,7 +1345,7 @@ "EntityTypeName": { "base": null, "refs": { - "EntityTypesListItem$Type": "

An entity type within a labeled training dataset that Amazon Comprehend uses to train a custom entity recognizer.

Entity types must not contain the following invalid characters: \\n (line break), \\\\n (escaped line break, \\r (carriage return), \\\\r (escaped carriage return), \\t (tab), \\\\t (escaped tab), space, and , (comma).

" + "EntityTypesListItem$Type": "

An entity type within a labeled training dataset that Amazon Comprehend uses to train a custom entity recognizer.

Entity types must not contain the following invalid characters: \\n (line break), \\\\n (escaped line break, \\r (carriage return), \\\\r (escaped carriage return), \\t (tab), \\\\t (escaped tab), and , (comma).

" } }, "EntityTypesEvaluationMetrics": { @@ -1414,7 +1426,9 @@ "SentimentScore$Neutral": "

The level of confidence that Amazon Comprehend has in the accuracy of its detection of the NEUTRAL sentiment.

", "SentimentScore$Mixed": "

The level of confidence that Amazon Comprehend has in the accuracy of its detection of the MIXED sentiment.

", "TargetedSentimentMention$Score": "

Model confidence that the entity is relevant. Value range is zero to one, where one is highest confidence.

", - "TargetedSentimentMention$GroupScore": "

The confidence that all the entities mentioned in the group relate to the same entity.

" + "TargetedSentimentMention$GroupScore": "

The confidence that all the entities mentioned in the group relate to the same entity.

", + "ToxicContent$Score": "

Model confidence in the detected content type. Value range is zero to one, where one is highest confidence.

", + "ToxicLabels$Toxicity": "

Overall toxicity score for the string. Value range is zero to one, where one is the highest confidence.

" } }, "FlywheelFilter": { @@ -1531,7 +1545,7 @@ "StartKeyPhrasesDetectionJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data. For more information, see Role-based permissions.

", "StartPiiEntitiesDetectionJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data.

", "StartSentimentDetectionJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data. For more information, see Role-based permissions.

", - "StartTargetedSentimentDetectionJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data. For more information, see Role-based permissions.

", + "StartTargetedSentimentDetectionJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data. For more information, see Role-based permissions.

", "StartTopicsDetectionJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data. For more information, see Role-based permissions.

", "TargetedSentimentDetectionJobProperties$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your input data.

", "TopicsDetectionJobProperties$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend read access to your job data.

", @@ -1646,7 +1660,7 @@ } }, "InvalidRequestDetail": { - "base": "

Provides additional detail about why the request failed:

  • Document size is too large - Check the size of your file and resubmit the request.

  • Document type is not supported - Check the file type and resubmit the request.

  • Too many pages in the document - Check the number of pages in your file and resubmit the request.

  • Access denied to Amazon Textract - Verify that your account has permission to use Amazon Textract API operations and resubmit the request.

", + "base": "

Provides additional detail about why the request failed.

", "refs": { "InvalidRequestException$Detail": null } @@ -1654,7 +1668,7 @@ "InvalidRequestDetailReason": { "base": null, "refs": { - "InvalidRequestDetail$Reason": "

Reason code is INVALID_DOCUMENT.

" + "InvalidRequestDetail$Reason": "

Reason codes include the following values:

  • DOCUMENT_SIZE_EXCEEDED - Document size is too large. Check the size of your file and resubmit the request.

  • UNSUPPORTED_DOC_TYPE - Document type is not supported. Check the file type and resubmit the request.

  • PAGE_LIMIT_EXCEEDED - Too many pages in the document. Check the number of pages in your file and resubmit the request.

  • TEXTRACT_ACCESS_DENIED - Access denied to Amazon Textract. Verify that your account has permission to use Amazon Textract API operations and resubmit the request.

  • NOT_TEXTRACT_JSON - Document is not Amazon Textract JSON format. Verify the format and resubmit the request.

  • MISMATCHED_TOTAL_PAGE_COUNT - Check the number of pages in your file and resubmit the request.

  • INVALID_DOCUMENT - Invalid document. Check the file and resubmit the request.

" } }, "InvalidRequestException": { @@ -1835,7 +1849,7 @@ "EntityRecognizerProperties$ModelKmsKeyId": "

ID for the KMS key that Amazon Comprehend uses to encrypt trained custom models. The ModelKmsKeyId can be either of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

", "ImportModelRequest$ModelKmsKeyId": "

ID for the KMS key that Amazon Comprehend uses to encrypt trained custom models. The ModelKmsKeyId can be either of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

", "KeyPhrasesDetectionJobProperties$VolumeKmsKeyId": "

ID for the KMS key that Amazon Comprehend uses to encrypt data on the storage volume attached to the ML compute instance(s) that process the analysis job. The VolumeKmsKeyId can be either of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

", - "OutputDataConfig$KmsKeyId": "

ID for the Amazon Web Services Key Management Service (KMS) key that Amazon Comprehend uses to encrypt the output results from an analysis job. The KmsKeyId can be one of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

  • KMS Key Alias: \"alias/ExampleAlias\"

  • ARN of a KMS Key Alias: \"arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias\"

", + "OutputDataConfig$KmsKeyId": "

ID for the Amazon Web Services Key Management Service (KMS) key that Amazon Comprehend uses to encrypt the output results from an analysis job. Specify the Key Id of a symmetric key, because you cannot use an asymmetric key for uploading data to S3.

The KmsKeyId can be one of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

  • KMS Key Alias: \"alias/ExampleAlias\"

  • ARN of a KMS Key Alias: \"arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias\"

", "PiiOutputDataConfig$KmsKeyId": "

ID for the Amazon Web Services Key Management Service (KMS) key that Amazon Comprehend uses to encrypt the output results from an analysis job.

", "SentimentDetectionJobProperties$VolumeKmsKeyId": "

ID for the Amazon Web Services Key Management Service (KMS) key that Amazon Comprehend uses to encrypt data on the storage volume attached to the ML compute instance(s) that process the analysis job. The VolumeKmsKeyId can be either of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

", "StartDocumentClassificationJobRequest$VolumeKmsKeyId": "

ID for the Amazon Web Services Key Management Service (KMS) key that Amazon Comprehend uses to encrypt data on the storage volume attached to the ML compute instance(s) that process the analysis job. The VolumeKmsKeyId can be either of the following formats:

  • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

", @@ -1890,6 +1904,7 @@ "DetectPiiEntitiesRequest$LanguageCode": "

The language of the input documents. Currently, English is the only valid language.

", "DetectSentimentRequest$LanguageCode": "

The language of the input documents. You can specify any of the primary languages supported by Amazon Comprehend. All documents must be in the same language.

", "DetectTargetedSentimentRequest$LanguageCode": "

The language of the input documents. Currently, English is the only supported language.

", + "DetectToxicContentRequest$LanguageCode": "

The language of the input text. Currently, English is the only supported language.

", "DocumentClassifierProperties$LanguageCode": "

The language code for the language of the documents that the classifier was trained on.

", "EntitiesDetectionJobProperties$LanguageCode": "

The language code of the input documents.

", "EntityRecognizerProperties$LanguageCode": "

The language of the input documents. All documents must be in the same language. Only English (\"en\") is currently supported.

", @@ -2058,7 +2073,7 @@ "ListOfClasses": { "base": null, "refs": { - "ClassifyDocumentResponse$Classes": "

The classes used by the document being analyzed. These are used for multi-class trained models. Individual classes are mutually exclusive and each document is expected to have only a single class assigned to it. For example, an animal can be a dog or a cat, but not both at the same time.

" + "ClassifyDocumentResponse$Classes": "

The classes used by the document being analyzed. These are used for models trained in multi-class mode. Individual classes are mutually exclusive and each document is expected to have only a single class assigned to it. For example, an animal can be a dog or a cat, but not both at the same time.

For prompt safety classification, the response includes only two classes (SAFE_PROMPT and UNSAFE_PROMPT), along with a confidence score for each class. The value range of the score is zero to one, where one is the highest confidence.

" } }, "ListOfDescriptiveMentionIndices": { @@ -2106,7 +2121,7 @@ "ListOfDocumentReadFeatureTypes": { "base": null, "refs": { - "DocumentReaderConfig$FeatureTypes": "

Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

  • TABLES - Returns information about any tables that are detected in the input document.

  • FORMS - Returns information and the data from any forms that are detected in the input document.

" + "DocumentReaderConfig$FeatureTypes": "

Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

  • TABLES - Returns additional information about any tables that are detected in the input document.

  • FORMS - Returns additional information about any forms that are detected in the input document.

" } }, "ListOfDocumentType": { @@ -2159,7 +2174,7 @@ "ListOfLabels": { "base": null, "refs": { - "ClassifyDocumentResponse$Labels": "

The labels used the document being analyzed. These are used for multi-label trained models. Individual labels represent different categories that are related in some manner and are not mutually exclusive. For example, a movie can be just an action movie, or it can be an action movie, a science fiction movie, and a comedy, all at the same time.

" + "ClassifyDocumentResponse$Labels": "

The labels used in the document being analyzed. These are used for multi-label trained models. Individual labels represent different categories that are related in some manner and are not mutually exclusive. For example, a movie can be just an action movie, or it can be an action movie, a science fiction movie, and a comedy, all at the same time.

" } }, "ListOfMentions": { @@ -2200,6 +2215,24 @@ "DetectTargetedSentimentResponse$Entities": "

Targeted sentiment analysis for each of the entities identified in the input text.

" } }, + "ListOfTextSegments": { + "base": null, + "refs": { + "DetectToxicContentRequest$TextSegments": "

A list of up to 10 text strings. Each string has a maximum size of 1 KB, and the maximum size of the list is 10 KB.

" + } + }, + "ListOfToxicContent": { + "base": null, + "refs": { + "ToxicLabels$Labels": "

Array of toxic content types identified in the string.

" + } + }, + "ListOfToxicLabels": { + "base": null, + "refs": { + "DetectToxicContentResponse$ResultList": "

Results of the content moderation analysis. Each entry in the results list contains a list of toxic content types identified in the text, along with a confidence score for each content type. The results list also includes a toxicity score for each entry in the results list.

" + } + }, "ListOfWarnings": { "base": null, "refs": { @@ -2285,7 +2318,7 @@ } }, "MentionSentiment": { - "base": "

Contains the sentiment and sentiment score for one mention of an entity.

For more information about targeted sentiment, see Targeted sentiment.

", + "base": "

Contains the sentiment and sentiment score for one mention of an entity.

For more information about targeted sentiment, see Targeted sentiment in the Amazon Comprehend Developer Guide.

", "refs": { "TargetedSentimentMention$MentionSentiment": "

Contains the sentiment and sentiment score for the mention.

" } @@ -2304,7 +2337,7 @@ "ModelType": { "base": null, "refs": { - "CreateFlywheelRequest$ModelType": "

The model type.

", + "CreateFlywheelRequest$ModelType": "

The model type. You need to set ModelType if you are creating a flywheel for a new model.

", "FlywheelProperties$ModelType": "

Model type of the flywheel's model.

", "FlywheelSummary$ModelType": "

Model type of the flywheel's model.

" } @@ -2515,7 +2548,7 @@ "DocumentClassifierDocuments$S3Uri": "

The S3 URI location of the training documents specified in the S3Uri CSV file.

", "DocumentClassifierDocuments$TestS3Uri": "

The S3 URI location of the test documents included in the TestS3Uri CSV file. This field is not required if you do not specify a test CSV file.

", "DocumentClassifierInputDataConfig$S3Uri": "

The Amazon S3 URI for the input data. The S3 bucket must be in the same Region as the API endpoint that you are calling. The URI can point to a single input file or it can provide the prefix for a collection of input files.

For example, if you use the URI S3://bucketName/prefix, if the prefix is a single file, Amazon Comprehend uses that file as input. If more than one file begins with the prefix, Amazon Comprehend uses all of them as input.

This parameter is required if you set DataFormat to COMPREHEND_CSV.

", - "DocumentClassifierInputDataConfig$TestS3Uri": "

This specifies the Amazon S3 location where the test annotations for an entity recognizer are located. The URI must be in the same Amazon Web Services Region as the API endpoint that you are calling.

", + "DocumentClassifierInputDataConfig$TestS3Uri": "

This specifies the Amazon S3 location that contains the test annotations for the document classifier. The URI must be in the same Amazon Web Services Region as the API endpoint that you are calling.

", "DocumentClassifierOutputDataConfig$S3Uri": "

When you use the OutputDataConfig object while creating a custom classifier, you specify the Amazon S3 location where you want to write the confusion matrix and other output files. The URI must be in the same Region as the API endpoint that you are calling. The location is used as the prefix for the actual location of this output file.

When the custom classifier job is finished, the service creates the output file in a directory specific to the job. The S3Uri field contains the location of the output file, called output.tar.gz. It is a compressed archive that contains the confusion matrix.

", "DocumentClassifierOutputDataConfig$FlywheelStatsS3Prefix": "

The Amazon S3 prefix for the data lake location of the flywheel statistics.

", "EntityRecognizerAnnotations$S3Uri": "

Specifies the Amazon S3 location where the annotations for an entity recognizer are located. The URI must be in the same Region as the API endpoint that you are calling.

", @@ -2547,7 +2580,7 @@ "SemiStructuredDocumentBlob": { "base": null, "refs": { - "ClassifyDocumentRequest$Bytes": "

Use the Bytes parameter to input a text, PDF, Word or image file. You can also use the Bytes parameter to input an Amazon Textract DetectDocumentText or AnalyzeDocument output file.

Provide the input document as a sequence of base64-encoded bytes. If your code uses an Amazon Web Services SDK to classify documents, the SDK may encode the document file bytes for you.

The maximum length of this field depends on the input document type. For details, see Inputs for real-time custom analysis in the Comprehend Developer Guide.

If you use the Bytes parameter, do not use the Text parameter.

", + "ClassifyDocumentRequest$Bytes": "

Use the Bytes parameter to input a text, PDF, Word or image file.

When you classify a document using a custom model, you can also use the Bytes parameter to input an Amazon Textract DetectDocumentText or AnalyzeDocument output file.

To classify a document using the prompt safety classifier, use the Text parameter for input.

Provide the input document as a sequence of base64-encoded bytes. If your code uses an Amazon Web Services SDK to classify documents, the SDK may encode the document file bytes for you.

The maximum length of this field depends on the input document type. For details, see Inputs for real-time custom analysis in the Comprehend Developer Guide.

If you use the Bytes parameter, do not use the Text parameter.

", "DetectEntitiesRequest$Bytes": "

This field applies only when you use a custom entity recognition model that was trained with PDF annotations. For other cases, enter your text input in the Text field.

Use the Bytes parameter to input a text, PDF, Word or image file. Using a plain-text file in the Bytes parameter is equivelent to using the Text parameter (the Entities field in the response is identical).

You can also use the Bytes parameter to input an Amazon Textract DetectDocumentText or AnalyzeDocument output file.

Provide the input document as a sequence of base64-encoded bytes. If your code uses an Amazon Web Services SDK to detect entities, the SDK may encode the document file bytes for you.

The maximum length of this field depends on the input document type. For details, see Inputs for real-time custom analysis in the Comprehend Developer Guide.

If you use the Bytes parameter, do not use the Text parameter.

" } }, @@ -2970,7 +3003,7 @@ } }, "TargetedSentimentEntity": { - "base": "

Information about one of the entities found by targeted sentiment analysis.

For more information about targeted sentiment, see Targeted sentiment.

", + "base": "

Information about one of the entities found by targeted sentiment analysis.

For more information about targeted sentiment, see Targeted sentiment in the Amazon Comprehend Developer Guide.

", "refs": { "ListOfTargetedSentimentEntities$member": null } @@ -2982,16 +3015,22 @@ } }, "TargetedSentimentMention": { - "base": "

Information about one mention of an entity. The mention information includes the location of the mention in the text and the sentiment of the mention.

For more information about targeted sentiment, see Targeted sentiment.

", + "base": "

Information about one mention of an entity. The mention information includes the location of the mention in the text and the sentiment of the mention.

For more information about targeted sentiment, see Targeted sentiment in the Amazon Comprehend Developer Guide.

", "refs": { "ListOfMentions$member": null } }, "TaskConfig": { - "base": "

Configuration about the custom classifier associated with the flywheel.

", + "base": "

Configuration about the model associated with a flywheel.

", + "refs": { + "CreateFlywheelRequest$TaskConfig": "

Configuration about the model associated with the flywheel. You need to set TaskConfig if you are creating a flywheel for a new model.

", + "FlywheelProperties$TaskConfig": "

Configuration about the model associated with a flywheel.

" + } + }, + "TextSegment": { + "base": "

One of the of text strings. Each string has a size limit of 1KB.

", "refs": { - "CreateFlywheelRequest$TaskConfig": "

Configuration about the custom classifier associated with the flywheel.

", - "FlywheelProperties$TaskConfig": "

Configuration about the custom classifier associated with the flywheel.

" + "ListOfTextSegments$member": null } }, "TextSizeLimitExceededException": { @@ -3108,8 +3147,26 @@ "ListTopicsDetectionJobsResponse$TopicsDetectionJobPropertiesList": "

A list containing the properties of each job that is returned.

" } }, + "ToxicContent": { + "base": "

Toxic content analysis result for one string. For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide

", + "refs": { + "ListOfToxicContent$member": null + } + }, + "ToxicContentType": { + "base": null, + "refs": { + "ToxicContent$Name": "

The name of the toxic content type.

" + } + }, + "ToxicLabels": { + "base": "

Toxicity analysis result for one string. For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide.

", + "refs": { + "ListOfToxicLabels$member": null + } + }, "UnsupportedLanguageException": { - "base": "

Amazon Comprehend can't process the language of the input text. For custom entity recognition APIs, only English, Spanish, French, Italian, German, or Portuguese are accepted. For a list of supported languages, Supported languages in the Comprehend Developer Guide.

", + "base": "

Amazon Comprehend can't process the language of the input text. For a list of supported languages, Supported languages in the Comprehend Developer Guide.

", "refs": { } }, @@ -3167,8 +3224,8 @@ "CreateDocumentClassifierRequest$VpcConfig": "

Configuration parameters for an optional private Virtual Private Cloud (VPC) containing the resources you are using for your custom classifier. For more information, see Amazon VPC.

", "CreateEntityRecognizerRequest$VpcConfig": "

Configuration parameters for an optional private Virtual Private Cloud (VPC) containing the resources you are using for your custom entity recognizer. For more information, see Amazon VPC.

", "DataSecurityConfig$VpcConfig": null, - "DocumentClassificationJobProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your document classification job. For more information, see Amazon VPC.

", - "DocumentClassifierProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your custom classifier. For more information, see Amazon VPC.

", + "DocumentClassificationJobProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your document classification job. For more information, see Amazon VPC.

", + "DocumentClassifierProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your custom classifier. For more information, see Amazon VPC.

", "DominantLanguageDetectionJobProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your dominant language detection job. For more information, see Amazon VPC.

", "EntitiesDetectionJobProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your entity detection job. For more information, see Amazon VPC.

", "EntityRecognizerProperties$VpcConfig": "

Configuration parameters for a private Virtual Private Cloud (VPC) containing the resources you are using for your custom entity recognizer. For more information, see Amazon VPC.

", @@ -3187,7 +3244,7 @@ } }, "WarningsListItem": { - "base": "

The system identified one of the following warnings while processing the input document:

  • The document to classify is plain text, but the classifier is a native model.

  • The document to classify is semi-structured, but the classifier is a plain-text model.

", + "base": "

The system identified one of the following warnings while processing the input document:

  • The document to classify is plain text, but the classifier is a native document model.

  • The document to classify is semi-structured, but the classifier is a plain-text model.

", "refs": { "ListOfWarnings$member": null } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/comprehend/2017-11-27/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/comprehend/2017-11-27/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/comprehend/2017-11-27/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/comprehend/2017-11-27/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://comprehend-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://comprehend-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://comprehend-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://comprehend-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://comprehend.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://comprehend.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://comprehend.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://comprehend.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/compute-optimizer/2019-11-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/compute-optimizer/2019-11-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/compute-optimizer/2019-11-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/compute-optimizer/2019-11-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -492,6 +492,13 @@ "instanceType":{"shape":"InstanceType"} } }, + "AutoScalingGroupEstimatedMonthlySavings":{ + "type":"structure", + "members":{ + "currency":{"shape":"Currency"}, + "value":{"shape":"Value"} + } + }, "AutoScalingGroupName":{"type":"string"}, "AutoScalingGroupRecommendation":{ "type":"structure", @@ -520,7 +527,8 @@ "rank":{"shape":"Rank"}, "savingsOpportunity":{"shape":"SavingsOpportunity"}, "migrationEffort":{"shape":"MigrationEffort"}, - "instanceGpuInfo":{"shape":"GpuInfo"} + "instanceGpuInfo":{"shape":"GpuInfo"}, + "savingsOpportunityAfterDiscounts":{"shape":"AutoScalingGroupSavingsOpportunityAfterDiscounts"} } }, "AutoScalingGroupRecommendationOptions":{ @@ -531,6 +539,13 @@ "type":"list", "member":{"shape":"AutoScalingGroupRecommendation"} }, + "AutoScalingGroupSavingsOpportunityAfterDiscounts":{ + "type":"structure", + "members":{ + "savingsOpportunityPercentage":{"shape":"SavingsOpportunityPercentage"}, + "estimatedMonthlySavings":{"shape":"AutoScalingGroupEstimatedMonthlySavings"} + } + }, "Code":{"type":"string"}, "ContainerConfiguration":{ "type":"structure", @@ -596,6 +611,33 @@ "veryLow":{"shape":"VeryLow"} } }, + "CustomizableMetricHeadroom":{ + "type":"string", + "enum":[ + "PERCENT_30", + "PERCENT_20", + "PERCENT_0" + ] + }, + "CustomizableMetricName":{ + "type":"string", + "enum":["CpuUtilization"] + }, + "CustomizableMetricParameters":{ + "type":"structure", + "members":{ + "threshold":{"shape":"CustomizableMetricThreshold"}, + "headroom":{"shape":"CustomizableMetricHeadroom"} + } + }, + "CustomizableMetricThreshold":{ + "type":"string", + "enum":[ + "P90", + "P95", + "P99_5" + ] + }, "DeleteRecommendationPreferencesRequest":{ "type":"structure", "required":[ @@ -633,6 +675,19 @@ "DestinationBucket":{"type":"string"}, "DestinationKey":{"type":"string"}, "DestinationKeyPrefix":{"type":"string"}, + "EBSEffectiveRecommendationPreferences":{ + "type":"structure", + "members":{ + "savingsEstimationMode":{"shape":"EBSSavingsEstimationMode"} + } + }, + "EBSEstimatedMonthlySavings":{ + "type":"structure", + "members":{ + "currency":{"shape":"Currency"}, + "value":{"shape":"Value"} + } + }, "EBSFilter":{ "type":"structure", "members":{ @@ -664,6 +719,27 @@ "VolumeWriteBytesPerSecond" ] }, + "EBSSavingsEstimationMode":{ + "type":"structure", + "members":{ + "source":{"shape":"EBSSavingsEstimationModeSource"} + } + }, + "EBSSavingsEstimationModeSource":{ + "type":"string", + "enum":[ + "PublicPricing", + "CostExplorerRightsizing", + "CostOptimizationHub" + ] + }, + "EBSSavingsOpportunityAfterDiscounts":{ + "type":"structure", + "members":{ + "savingsOpportunityPercentage":{"shape":"SavingsOpportunityPercentage"}, + "estimatedMonthlySavings":{"shape":"EBSEstimatedMonthlySavings"} + } + }, "EBSUtilizationMetric":{ "type":"structure", "members":{ @@ -676,6 +752,40 @@ "type":"list", "member":{"shape":"EBSUtilizationMetric"} }, + "ECSEffectiveRecommendationPreferences":{ + "type":"structure", + "members":{ + "savingsEstimationMode":{"shape":"ECSSavingsEstimationMode"} + } + }, + "ECSEstimatedMonthlySavings":{ + "type":"structure", + "members":{ + "currency":{"shape":"Currency"}, + "value":{"shape":"Value"} + } + }, + "ECSSavingsEstimationMode":{ + "type":"structure", + "members":{ + "source":{"shape":"ECSSavingsEstimationModeSource"} + } + }, + "ECSSavingsEstimationModeSource":{ + "type":"string", + "enum":[ + "PublicPricing", + "CostExplorerRightsizing", + "CostOptimizationHub" + ] + }, + "ECSSavingsOpportunityAfterDiscounts":{ + "type":"structure", + "members":{ + "savingsOpportunityPercentage":{"shape":"SavingsOpportunityPercentage"}, + "estimatedMonthlySavings":{"shape":"ECSEstimatedMonthlySavings"} + } + }, "ECSServiceLaunchType":{ "type":"string", "enum":[ @@ -737,7 +847,8 @@ "findingReasonCodes":{"shape":"ECSServiceRecommendationFindingReasonCodes"}, "serviceRecommendationOptions":{"shape":"ECSServiceRecommendationOptions"}, "currentPerformanceRisk":{"shape":"CurrentPerformanceRisk"}, - "tags":{"shape":"Tags"} + "tags":{"shape":"Tags"}, + "effectiveRecommendationPreferences":{"shape":"ECSEffectiveRecommendationPreferences"} } }, "ECSServiceRecommendationFilter":{ @@ -786,7 +897,8 @@ "cpu":{"shape":"NullableCpu"}, "savingsOpportunity":{"shape":"SavingsOpportunity"}, "projectedUtilizationMetrics":{"shape":"ECSServiceProjectedUtilizationMetrics"}, - "containerRecommendations":{"shape":"ContainerRecommendations"} + "containerRecommendations":{"shape":"ContainerRecommendations"}, + "savingsOpportunityAfterDiscounts":{"shape":"ECSSavingsOpportunityAfterDiscounts"} } }, "ECSServiceRecommendationOptions":{ @@ -821,13 +933,30 @@ "type":"list", "member":{"shape":"ECSServiceUtilizationMetric"} }, + "EffectivePreferredResource":{ + "type":"structure", + "members":{ + "name":{"shape":"PreferredResourceName"}, + "includeList":{"shape":"PreferredResourceValues"}, + "effectiveIncludeList":{"shape":"PreferredResourceValues"}, + "excludeList":{"shape":"PreferredResourceValues"} + } + }, + "EffectivePreferredResources":{ + "type":"list", + "member":{"shape":"EffectivePreferredResource"} + }, "EffectiveRecommendationPreferences":{ "type":"structure", "members":{ "cpuVendorArchitectures":{"shape":"CpuVendorArchitectures"}, "enhancedInfrastructureMetrics":{"shape":"EnhancedInfrastructureMetrics"}, "inferredWorkloadTypes":{"shape":"InferredWorkloadTypesPreference"}, - "externalMetricsPreference":{"shape":"ExternalMetricsPreference"} + "externalMetricsPreference":{"shape":"ExternalMetricsPreference"}, + "lookBackPeriod":{"shape":"LookBackPeriodPreference"}, + "utilizationPreferences":{"shape":"UtilizationPreferences"}, + "preferredResources":{"shape":"EffectivePreferredResources"}, + "savingsEstimationMode":{"shape":"InstanceSavingsEstimationMode"} } }, "EnhancedInfrastructureMetrics":{ @@ -1044,7 +1173,13 @@ "UtilizationMetricsGpuPercentageMaximum", "UtilizationMetricsGpuMemoryPercentageMaximum", "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum", - "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" + "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "EffectiveRecommendationPreferencesPreferredResources", + "EffectiveRecommendationPreferencesLookBackPeriod" ] }, "ExportableAutoScalingGroupFields":{ @@ -1077,7 +1212,11 @@ "RecommendationOptionsContainerRecommendations", "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", - "Tags" + "Tags", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ] }, "ExportableECSServiceFields":{ @@ -1150,7 +1289,14 @@ "UtilizationMetricsGpuMemoryPercentageMaximum", "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum", "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum", - "Idle" + "Idle", + "EffectiveRecommendationPreferencesPreferredResources", + "EffectiveRecommendationPreferencesLookBackPeriod", + "EffectiveRecommendationPreferencesUtilizationPreferences", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ] }, "ExportableInstanceFields":{ @@ -1186,7 +1332,11 @@ "RecommendationOptionsSavingsOpportunityPercentage", "RecommendationOptionsEstimatedMonthlySavingsCurrency", "RecommendationOptionsEstimatedMonthlySavingsValue", - "Tags" + "Tags", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ] }, "ExportableLambdaFunctionFields":{ @@ -1256,7 +1406,11 @@ "RecommendationOptionsEstimatedMonthlySavingsValue", "RootVolume", "Tags", - "CurrentConfigurationRootVolume" + "CurrentConfigurationRootVolume", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ] }, "ExportableVolumeFields":{ @@ -1485,7 +1639,10 @@ "type":"structure", "members":{ "enhancedInfrastructureMetrics":{"shape":"EnhancedInfrastructureMetrics"}, - "externalMetricsPreference":{"shape":"ExternalMetricsPreference"} + "externalMetricsPreference":{"shape":"ExternalMetricsPreference"}, + "lookBackPeriod":{"shape":"LookBackPeriodPreference"}, + "utilizationPreferences":{"shape":"UtilizationPreferences"}, + "preferredResources":{"shape":"EffectivePreferredResources"} } }, "GetEnrollmentStatusRequest":{ @@ -1660,6 +1817,13 @@ "type":"list", "member":{"shape":"InstanceArn"} }, + "InstanceEstimatedMonthlySavings":{ + "type":"structure", + "members":{ + "currency":{"shape":"Currency"}, + "value":{"shape":"Value"} + } + }, "InstanceIdle":{ "type":"string", "enum":[ @@ -1731,13 +1895,35 @@ "rank":{"shape":"Rank"}, "savingsOpportunity":{"shape":"SavingsOpportunity"}, "migrationEffort":{"shape":"MigrationEffort"}, - "instanceGpuInfo":{"shape":"GpuInfo"} + "instanceGpuInfo":{"shape":"GpuInfo"}, + "savingsOpportunityAfterDiscounts":{"shape":"InstanceSavingsOpportunityAfterDiscounts"} } }, "InstanceRecommendations":{ "type":"list", "member":{"shape":"InstanceRecommendation"} }, + "InstanceSavingsEstimationMode":{ + "type":"structure", + "members":{ + "source":{"shape":"InstanceSavingsEstimationModeSource"} + } + }, + "InstanceSavingsEstimationModeSource":{ + "type":"string", + "enum":[ + "PublicPricing", + "CostExplorerRightsizing", + "CostOptimizationHub" + ] + }, + "InstanceSavingsOpportunityAfterDiscounts":{ + "type":"structure", + "members":{ + "savingsOpportunityPercentage":{"shape":"SavingsOpportunityPercentage"}, + "estimatedMonthlySavings":{"shape":"InstanceEstimatedMonthlySavings"} + } + }, "InstanceState":{ "type":"string", "enum":[ @@ -1798,6 +1984,19 @@ "Failed" ] }, + "LambdaEffectiveRecommendationPreferences":{ + "type":"structure", + "members":{ + "savingsEstimationMode":{"shape":"LambdaSavingsEstimationMode"} + } + }, + "LambdaEstimatedMonthlySavings":{ + "type":"structure", + "members":{ + "currency":{"shape":"Currency"}, + "value":{"shape":"Value"} + } + }, "LambdaFunctionMemoryMetricName":{ "type":"string", "enum":["Duration"] @@ -1828,7 +2027,8 @@ "rank":{"shape":"Rank"}, "memorySize":{"shape":"MemorySize"}, "projectedUtilizationMetrics":{"shape":"LambdaFunctionMemoryProjectedMetrics"}, - "savingsOpportunity":{"shape":"SavingsOpportunity"} + "savingsOpportunity":{"shape":"SavingsOpportunity"}, + "savingsOpportunityAfterDiscounts":{"shape":"LambdaSavingsOpportunityAfterDiscounts"} } }, "LambdaFunctionMemoryRecommendationOptions":{ @@ -1864,7 +2064,8 @@ "findingReasonCodes":{"shape":"LambdaFunctionRecommendationFindingReasonCodes"}, "memorySizeRecommendationOptions":{"shape":"LambdaFunctionMemoryRecommendationOptions"}, "currentPerformanceRisk":{"shape":"CurrentPerformanceRisk"}, - "tags":{"shape":"Tags"} + "tags":{"shape":"Tags"}, + "effectiveRecommendationPreferences":{"shape":"LambdaEffectiveRecommendationPreferences"} } }, "LambdaFunctionRecommendationFilter":{ @@ -1922,6 +2123,27 @@ "type":"list", "member":{"shape":"LambdaFunctionUtilizationMetric"} }, + "LambdaSavingsEstimationMode":{ + "type":"structure", + "members":{ + "source":{"shape":"LambdaSavingsEstimationModeSource"} + } + }, + "LambdaSavingsEstimationModeSource":{ + "type":"string", + "enum":[ + "PublicPricing", + "CostExplorerRightsizing", + "CostOptimizationHub" + ] + }, + "LambdaSavingsOpportunityAfterDiscounts":{ + "type":"structure", + "members":{ + "savingsOpportunityPercentage":{"shape":"SavingsOpportunityPercentage"}, + "estimatedMonthlySavings":{"shape":"LambdaEstimatedMonthlySavings"} + } + }, "LastRefreshTimestamp":{"type":"timestamp"}, "LastUpdatedTimestamp":{"type":"timestamp"}, "LicenseConfiguration":{ @@ -2039,6 +2261,14 @@ "synthetic":true }, "LookBackPeriodInDays":{"type":"double"}, + "LookBackPeriodPreference":{ + "type":"string", + "enum":[ + "DAYS_14", + "DAYS_32", + "DAYS_93" + ] + }, "Low":{"type":"long"}, "LowerBoundValue":{"type":"double"}, "MaxResults":{ @@ -2164,6 +2394,27 @@ "type":"list", "member":{"shape":"PlatformDifference"} }, + "PreferredResource":{ + "type":"structure", + "members":{ + "name":{"shape":"PreferredResourceName"}, + "includeList":{"shape":"PreferredResourceValues"}, + "excludeList":{"shape":"PreferredResourceValues"} + } + }, + "PreferredResourceName":{ + "type":"string", + "enum":["Ec2InstanceTypes"] + }, + "PreferredResourceValue":{"type":"string"}, + "PreferredResourceValues":{ + "type":"list", + "member":{"shape":"PreferredResourceValue"} + }, + "PreferredResources":{ + "type":"list", + "member":{"shape":"PreferredResource"} + }, "ProjectedMetric":{ "type":"structure", "members":{ @@ -2188,7 +2439,11 @@ "scope":{"shape":"Scope"}, "enhancedInfrastructureMetrics":{"shape":"EnhancedInfrastructureMetrics"}, "inferredWorkloadTypes":{"shape":"InferredWorkloadTypesPreference"}, - "externalMetricsPreference":{"shape":"ExternalMetricsPreference"} + "externalMetricsPreference":{"shape":"ExternalMetricsPreference"}, + "lookBackPeriod":{"shape":"LookBackPeriodPreference"}, + "utilizationPreferences":{"shape":"UtilizationPreferences"}, + "preferredResources":{"shape":"PreferredResources"}, + "savingsEstimationMode":{"shape":"SavingsEstimationMode"} } }, "PutRecommendationPreferencesResponse":{ @@ -2233,7 +2488,10 @@ "enum":[ "EnhancedInfrastructureMetrics", "InferredWorkloadTypes", - "ExternalMetricsPreference" + "ExternalMetricsPreference", + "LookBackPeriodPreference", + "PreferredResources", + "UtilizationPreferences" ] }, "RecommendationPreferenceNames":{ @@ -2253,7 +2511,11 @@ "resourceType":{"shape":"ResourceType"}, "enhancedInfrastructureMetrics":{"shape":"EnhancedInfrastructureMetrics"}, "inferredWorkloadTypes":{"shape":"InferredWorkloadTypesPreference"}, - "externalMetricsPreference":{"shape":"ExternalMetricsPreference"} + "externalMetricsPreference":{"shape":"ExternalMetricsPreference"}, + "lookBackPeriod":{"shape":"LookBackPeriodPreference"}, + "utilizationPreferences":{"shape":"UtilizationPreferences"}, + "preferredResources":{"shape":"EffectivePreferredResources"}, + "savingsEstimationMode":{"shape":"SavingsEstimationMode"} } }, "RecommendationPreferencesDetails":{ @@ -2352,6 +2614,13 @@ "keyPrefix":{"shape":"DestinationKeyPrefix"} } }, + "SavingsEstimationMode":{ + "type":"string", + "enum":[ + "AfterDiscounts", + "BeforeDiscounts" + ] + }, "SavingsOpportunity":{ "type":"structure", "members":{ @@ -2478,6 +2747,17 @@ "type":"list", "member":{"shape":"UtilizationMetric"} }, + "UtilizationPreference":{ + "type":"structure", + "members":{ + "metricName":{"shape":"CustomizableMetricName"}, + "metricParameters":{"shape":"CustomizableMetricParameters"} + } + }, + "UtilizationPreferences":{ + "type":"list", + "member":{"shape":"UtilizationPreference"} + }, "Value":{"type":"double"}, "VeryLow":{"type":"long"}, "VolumeArn":{"type":"string"}, @@ -2513,7 +2793,8 @@ "volumeRecommendationOptions":{"shape":"VolumeRecommendationOptions"}, "lastRefreshTimestamp":{"shape":"LastRefreshTimestamp"}, "currentPerformanceRisk":{"shape":"CurrentPerformanceRisk"}, - "tags":{"shape":"Tags"} + "tags":{"shape":"Tags"}, + "effectiveRecommendationPreferences":{"shape":"EBSEffectiveRecommendationPreferences"} } }, "VolumeRecommendationOption":{ @@ -2522,7 +2803,8 @@ "configuration":{"shape":"VolumeConfiguration"}, "performanceRisk":{"shape":"PerformanceRisk"}, "rank":{"shape":"Rank"}, - "savingsOpportunity":{"shape":"SavingsOpportunity"} + "savingsOpportunity":{"shape":"SavingsOpportunity"}, + "savingsOpportunityAfterDiscounts":{"shape":"EBSSavingsOpportunityAfterDiscounts"} } }, "VolumeRecommendationOptions":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/compute-optimizer/2019-11-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/compute-optimizer/2019-11-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/compute-optimizer/2019-11-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/compute-optimizer/2019-11-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -102,6 +102,12 @@ "AutoScalingGroupRecommendationOption$configuration": "

An array of objects that describe an Auto Scaling group configuration.

" } }, + "AutoScalingGroupEstimatedMonthlySavings": { + "base": "

An object that describes the estimated monthly savings possible by adopting Compute Optimizer’s Auto Scaling group recommendations. This is based on the Savings Plans and Reserved Instances discounts.

", + "refs": { + "AutoScalingGroupSavingsOpportunityAfterDiscounts$estimatedMonthlySavings": "

An object that describes the estimated monthly savings possible by adopting Compute Optimizer’s Auto Scaling group recommendations. This is based on the Savings Plans and Reserved Instances pricing discounts.

" + } + }, "AutoScalingGroupName": { "base": null, "refs": { @@ -132,6 +138,12 @@ "GetAutoScalingGroupRecommendationsResponse$autoScalingGroupRecommendations": "

An array of objects that describe Auto Scaling group recommendations.

" } }, + "AutoScalingGroupSavingsOpportunityAfterDiscounts": { + "base": "

Describes the savings opportunity for Auto Scaling group recommendations after applying the Savings Plans and Reserved Instances discounts.

Savings opportunity represents the estimated monthly savings you can achieve by implementing Compute Optimizer recommendations.

", + "refs": { + "AutoScalingGroupRecommendationOption$savingsOpportunityAfterDiscounts": "

An object that describes the savings opportunity for the Auto Scaling group recommendation option that includes Savings Plans and Reserved Instances discounts. Savings opportunity includes the estimated monthly savings and percentage.

" + } + }, "Code": { "base": null, "refs": { @@ -197,7 +209,12 @@ "Currency": { "base": null, "refs": { - "EstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

" + "AutoScalingGroupEstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

", + "EBSEstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

", + "ECSEstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

", + "EstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

", + "InstanceEstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

", + "LambdaEstimatedMonthlySavings$currency": "

The currency of the estimated monthly savings.

" } }, "CurrentInstanceType": { @@ -222,6 +239,30 @@ "RecommendationSummary$currentPerformanceRiskRatings": "

An object that describes the performance risk ratings for a given resource type.

" } }, + "CustomizableMetricHeadroom": { + "base": null, + "refs": { + "CustomizableMetricParameters$headroom": "

The headroom threshold value in percentage used for the specified metric parameter.

" + } + }, + "CustomizableMetricName": { + "base": null, + "refs": { + "UtilizationPreference$metricName": "

The name of the resource utilization metric name to customize.

Compute Optimizer only supports CpuUtilization.

" + } + }, + "CustomizableMetricParameters": { + "base": "

Defines the various metric parameters that can be customized, such as threshold and headroom.

", + "refs": { + "UtilizationPreference$metricParameters": "

The parameters to set when customizing the resource utilization thresholds.

" + } + }, + "CustomizableMetricThreshold": { + "base": null, + "refs": { + "CustomizableMetricParameters$threshold": "

The threshold value used for the specified metric parameter.

" + } + }, "DeleteRecommendationPreferencesRequest": { "base": null, "refs": { @@ -267,6 +308,18 @@ "S3DestinationConfig$keyPrefix": "

The Amazon S3 bucket prefix for an export job.

" } }, + "EBSEffectiveRecommendationPreferences": { + "base": "

Describes the effective recommendation preferences for Amazon EBS volumes.

", + "refs": { + "VolumeRecommendation$effectiveRecommendationPreferences": "

Describes the effective recommendation preferences for Amazon EBS volume.

" + } + }, + "EBSEstimatedMonthlySavings": { + "base": "

An object that describes the estimated monthly savings possible by adopting Compute Optimizer’s Amazon EBS volume recommendations. This includes any applicable discounts.

", + "refs": { + "EBSSavingsOpportunityAfterDiscounts$estimatedMonthlySavings": "

The estimated monthly savings possible as a percentage of monthly cost by adopting Compute Optimizer’s Amazon EBS volume recommendations. This saving includes any applicable discounts.

" + } + }, "EBSFilter": { "base": "

Describes a filter that returns a more specific list of Amazon Elastic Block Store (Amazon EBS) volume recommendations. Use this filter with the GetEBSVolumeRecommendations action.

You can use LambdaFunctionRecommendationFilter with the GetLambdaFunctionRecommendations action, JobFilter with the DescribeRecommendationExportJobs action, and Filter with the GetAutoScalingGroupRecommendations and GetEC2InstanceRecommendations actions.

", "refs": { @@ -298,6 +351,24 @@ "EBSUtilizationMetric$name": "

The name of the utilization metric.

The following utilization metrics are available:

  • VolumeReadOpsPerSecond - The completed read operations per second from the volume in a specified period of time.

    Unit: Count

  • VolumeWriteOpsPerSecond - The completed write operations per second to the volume in a specified period of time.

    Unit: Count

  • VolumeReadBytesPerSecond - The bytes read per second from the volume in a specified period of time.

    Unit: Bytes

  • VolumeWriteBytesPerSecond - The bytes written to the volume in a specified period of time.

    Unit: Bytes

" } }, + "EBSSavingsEstimationMode": { + "base": "

Describes the savings estimation mode used for calculating savings opportunity for Amazon EBS volumes.

", + "refs": { + "EBSEffectiveRecommendationPreferences$savingsEstimationMode": "

Describes the savings estimation mode preference applied for calculating savings opportunity for Amazon EBS volumes.

" + } + }, + "EBSSavingsEstimationModeSource": { + "base": null, + "refs": { + "EBSSavingsEstimationMode$source": "

Describes the source for calculating the savings opportunity for Amazon EBS volumes.

" + } + }, + "EBSSavingsOpportunityAfterDiscounts": { + "base": "

Describes the savings opportunity for Amazon EBS volume recommendations after applying specific discounts.

", + "refs": { + "VolumeRecommendationOption$savingsOpportunityAfterDiscounts": "

An object that describes the savings opportunity for the Amazon EBS volume recommendation option with specific discounts. Savings opportunity includes the estimated monthly savings and percentage.

" + } + }, "EBSUtilizationMetric": { "base": "

Describes a utilization metric of an Amazon Elastic Block Store (Amazon EBS) volume.

Compare the utilization metric data of your resource against its projected utilization metric data to determine the performance difference between your current resource and the recommended option.

", "refs": { @@ -310,6 +381,36 @@ "VolumeRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the volume.

" } }, + "ECSEffectiveRecommendationPreferences": { + "base": "

Describes the effective recommendation preferences for Amazon ECS services.

", + "refs": { + "ECSServiceRecommendation$effectiveRecommendationPreferences": "

Describes the effective recommendation preferences for Amazon ECS services.

" + } + }, + "ECSEstimatedMonthlySavings": { + "base": "

Describes the estimated monthly savings possible for Amazon ECS services by adopting Compute Optimizer recommendations. This is based on Amazon ECS service pricing after applying Savings Plans discounts.

", + "refs": { + "ECSSavingsOpportunityAfterDiscounts$estimatedMonthlySavings": "

The estimated monthly savings possible by adopting Compute Optimizer’s Amazon ECS service recommendations. This includes any applicable Savings Plans discounts.

" + } + }, + "ECSSavingsEstimationMode": { + "base": "

Describes the savings estimation mode used for calculating savings opportunity for Amazon ECS services.

", + "refs": { + "ECSEffectiveRecommendationPreferences$savingsEstimationMode": "

Describes the savings estimation mode preference applied for calculating savings opportunity for Amazon ECS services.

" + } + }, + "ECSSavingsEstimationModeSource": { + "base": null, + "refs": { + "ECSSavingsEstimationMode$source": "

Describes the source for calculating the savings opportunity for Amazon ECS services.

" + } + }, + "ECSSavingsOpportunityAfterDiscounts": { + "base": "

Describes the savings opportunity for Amazon ECS service recommendations after applying Savings Plans discounts.

Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts. You can achieve this by implementing a given Compute Optimizer recommendation.

", + "refs": { + "ECSServiceRecommendationOption$savingsOpportunityAfterDiscounts": "

Describes the savings opportunity for Amazon ECS service recommendations or for the recommendation option.

Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts. You can achieve this by implementing a given Compute Optimizer recommendation.

" + } + }, "ECSServiceLaunchType": { "base": null, "refs": { @@ -440,6 +541,20 @@ "ECSServiceRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the Amazon ECS service.

" } }, + "EffectivePreferredResource": { + "base": "

Describes the effective preferred resources that Compute Optimizer considers as rightsizing recommendation candidates.

Compute Optimizer only supports Amazon EC2 instance types.

", + "refs": { + "EffectivePreferredResources$member": null + } + }, + "EffectivePreferredResources": { + "base": null, + "refs": { + "EffectiveRecommendationPreferences$preferredResources": "

The resource type values that are considered as candidates when generating rightsizing recommendations.

", + "GetEffectiveRecommendationPreferencesResponse$preferredResources": "

The resource type values that are considered as candidates when generating rightsizing recommendations. This object resolves any wildcard expressions and returns the effective list of candidate resource type values. It also considers all applicable preferences that you set at the resource, account, and organization level.

To validate that the preference is applied to your last generated set of recommendations, review the effectiveRecommendationPreferences value in the response of the GetAutoScalingGroupRecommendations or GetEC2InstanceRecommendations actions.

", + "RecommendationPreferencesDetail$preferredResources": "

The preference to control which resource type values are considered when generating rightsizing recommendations. This object resolves any wildcard expressions and returns the effective list of candidate resource type values. If the preference isn’t set, this object is null.

" + } + }, "EffectiveRecommendationPreferences": { "base": "

Describes the effective recommendation preferences for a resource.

", "refs": { @@ -1006,6 +1121,12 @@ "GetEC2InstanceRecommendationsRequest$instanceArns": "

The Amazon Resource Name (ARN) of the instances for which to return recommendations.

" } }, + "InstanceEstimatedMonthlySavings": { + "base": "

An object that describes the estimated monthly savings possible by adopting Compute Optimizer’s Amazon EC2 instance recommendations. This is based on the Savings Plans and Reserved Instances pricing discounts.

", + "refs": { + "InstanceSavingsOpportunityAfterDiscounts$estimatedMonthlySavings": "

An object that describes the estimated monthly savings possible by adopting Compute Optimizer’s Amazon EC2 instance recommendations. This is based on pricing after applying the Savings Plans and Reserved Instances discounts.

" + } + }, "InstanceIdle": { "base": null, "refs": { @@ -1048,6 +1169,24 @@ "GetEC2InstanceRecommendationsResponse$instanceRecommendations": "

An array of objects that describe instance recommendations.

" } }, + "InstanceSavingsEstimationMode": { + "base": "

Describes the savings estimation mode used for calculating savings opportunity for Amazon EC2 instances.

", + "refs": { + "EffectiveRecommendationPreferences$savingsEstimationMode": "

Describes the savings estimation mode applied for calculating savings opportunity for a resource.

" + } + }, + "InstanceSavingsEstimationModeSource": { + "base": null, + "refs": { + "InstanceSavingsEstimationMode$source": "

Describes the source for calculating the savings opportunity for Amazon EC2 instances.

" + } + }, + "InstanceSavingsOpportunityAfterDiscounts": { + "base": "

Describes the savings opportunity for instance recommendations after applying the Savings Plans and Reserved Instances discounts.

Savings opportunity after discounts represents the estimated monthly savings you can achieve by implementing Compute Optimizer recommendations.

", + "refs": { + "InstanceRecommendationOption$savingsOpportunityAfterDiscounts": "

An object that describes the savings opportunity for the instance recommendation option that includes Savings Plans and Reserved Instances discounts. Savings opportunity includes the estimated monthly savings and percentage.

" + } + }, "InstanceState": { "base": null, "refs": { @@ -1115,6 +1254,18 @@ "RecommendationExportJob$status": "

The status of the export job.

" } }, + "LambdaEffectiveRecommendationPreferences": { + "base": "

Describes the effective recommendation preferences for Lambda functions.

", + "refs": { + "LambdaFunctionRecommendation$effectiveRecommendationPreferences": "

Describes the effective recommendation preferences for Lambda functions.

" + } + }, + "LambdaEstimatedMonthlySavings": { + "base": "

Describes the estimated monthly savings possible for Lambda functions by adopting Compute Optimizer recommendations. This is based on Lambda functions pricing after applying Savings Plans discounts.

", + "refs": { + "LambdaSavingsOpportunityAfterDiscounts$estimatedMonthlySavings": "

The estimated monthly savings possible by adopting Compute Optimizer’s Lambda function recommendations. This includes any applicable Savings Plans discounts.

" + } + }, "LambdaFunctionMemoryMetricName": { "base": null, "refs": { @@ -1224,6 +1375,24 @@ "LambdaFunctionRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the function.

" } }, + "LambdaSavingsEstimationMode": { + "base": "

Describes the savings estimation used for calculating savings opportunity for Lambda functions.

", + "refs": { + "LambdaEffectiveRecommendationPreferences$savingsEstimationMode": "

Describes the savings estimation mode applied for calculating savings opportunity for Lambda functions.

" + } + }, + "LambdaSavingsEstimationModeSource": { + "base": null, + "refs": { + "LambdaSavingsEstimationMode$source": "

Describes the source for calculation of savings opportunity for Lambda functions.

" + } + }, + "LambdaSavingsOpportunityAfterDiscounts": { + "base": "

Describes the savings opportunity for Lambda functions recommendations after applying Savings Plans discounts.

Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts. You can achieve this by implementing a given Compute Optimizer recommendation.

", + "refs": { + "LambdaFunctionMemoryRecommendationOption$savingsOpportunityAfterDiscounts": "

An object that describes the savings opportunity for the Lambda recommendation option which includes Saving Plans discounts. Savings opportunity includes the estimated monthly savings and percentage.

" + } + }, "LastRefreshTimestamp": { "base": null, "refs": { @@ -1352,6 +1521,15 @@ "VolumeRecommendation$lookBackPeriodInDays": "

The number of days for which utilization metrics were analyzed for the volume.

" } }, + "LookBackPeriodPreference": { + "base": null, + "refs": { + "EffectiveRecommendationPreferences$lookBackPeriod": "

The number of days the utilization metrics of the Amazon Web Services resource are analyzed.

", + "GetEffectiveRecommendationPreferencesResponse$lookBackPeriod": "

The number of days the utilization metrics of the Amazon Web Services resource are analyzed.

To validate that the preference is applied to your last generated set of recommendations, review the effectiveRecommendationPreferences value in the response of the GetAutoScalingGroupRecommendations or GetEC2InstanceRecommendations actions.

", + "PutRecommendationPreferencesRequest$lookBackPeriod": "

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. When this preference isn't specified, we use the default value DAYS_14.

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

", + "RecommendationPreferencesDetail$lookBackPeriod": "

The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed. If the preference isn’t set, this object is null.

" + } + }, "Low": { "base": null, "refs": { @@ -1606,6 +1784,41 @@ "InstanceRecommendationOption$platformDifferences": "

Describes the configuration differences between the current instance and the recommended instance type. You should consider the configuration differences before migrating your workloads from the current instance to the recommended instance type. The Change the instance type guide for Linux and Change the instance type guide for Windows provide general guidance for getting started with an instance migration.

Platform differences include:

  • Hypervisor — The hypervisor of the recommended instance type is different than that of the current instance. For example, the recommended instance type uses a Nitro hypervisor and the current instance uses a Xen hypervisor. The differences that you should consider between these hypervisors are covered in the Nitro Hypervisor section of the Amazon EC2 frequently asked questions. For more information, see Instances built on the Nitro System in the Amazon EC2 User Guide for Linux, or Instances built on the Nitro System in the Amazon EC2 User Guide for Windows.

  • NetworkInterface — The network interface of the recommended instance type is different than that of the current instance. For example, the recommended instance type supports enhanced networking and the current instance might not. To enable enhanced networking for the recommended instance type, you must install the Elastic Network Adapter (ENA) driver or the Intel 82599 Virtual Function driver. For more information, see Networking and storage features and Enhanced networking on Linux in the Amazon EC2 User Guide for Linux, or Networking and storage features and Enhanced networking on Windows in the Amazon EC2 User Guide for Windows.

  • StorageInterface — The storage interface of the recommended instance type is different than that of the current instance. For example, the recommended instance type uses an NVMe storage interface and the current instance does not. To access NVMe volumes for the recommended instance type, you will need to install or upgrade the NVMe driver. For more information, see Networking and storage features and Amazon EBS and NVMe on Linux instances in the Amazon EC2 User Guide for Linux, or Networking and storage features and Amazon EBS and NVMe on Windows instances in the Amazon EC2 User Guide for Windows.

  • InstanceStoreAvailability — The recommended instance type does not support instance store volumes and the current instance does. Before migrating, you might need to back up the data on your instance store volumes if you want to preserve them. For more information, see How do I back up an instance store volume on my Amazon EC2 instance to Amazon EBS? in the Amazon Web Services Premium Support Knowledge Base. For more information, see Networking and storage features and Amazon EC2 instance store in the Amazon EC2 User Guide for Linux, or see Networking and storage features and Amazon EC2 instance store in the Amazon EC2 User Guide for Windows.

  • VirtualizationType — The recommended instance type uses the hardware virtual machine (HVM) virtualization type and the current instance uses the paravirtual (PV) virtualization type. For more information about the differences between these virtualization types, see Linux AMI virtualization types in the Amazon EC2 User Guide for Linux, or Windows AMI virtualization types in the Amazon EC2 User Guide for Windows.

  • Architecture — The CPU architecture between the recommended instance type and the current instance is different. For example, the recommended instance type might use an Arm CPU architecture and the current instance type might use a different one, such as x86. Before migrating, you should consider recompiling the software on your instance for the new architecture. Alternatively, you might switch to an Amazon Machine Image (AMI) that supports the new architecture. For more information about the CPU architecture for each instance type, see Amazon EC2 Instance Types.

" } }, + "PreferredResource": { + "base": "

The preference to control which resource type values are considered when generating rightsizing recommendations. You can specify this preference as a combination of include and exclude lists. You must specify either an includeList or excludeList. If the preference is an empty set of resource type values, an error occurs. For more information, see Rightsizing recommendation preferences in the Compute Optimizer User Guide.

  • This preference is only available for the Amazon EC2 instance and Auto Scaling group resource types.

  • Compute Optimizer only supports the customization of Ec2InstanceTypes.

", + "refs": { + "PreferredResources$member": null + } + }, + "PreferredResourceName": { + "base": null, + "refs": { + "EffectivePreferredResource$name": "

The name of the preferred resource list.

", + "PreferredResource$name": "

The type of preferred resource to customize.

Compute Optimizer only supports the customization of Ec2InstanceTypes.

" + } + }, + "PreferredResourceValue": { + "base": null, + "refs": { + "PreferredResourceValues$member": null + } + }, + "PreferredResourceValues": { + "base": null, + "refs": { + "EffectivePreferredResource$includeList": "

The list of preferred resource values that you want considered as rightsizing recommendation candidates.

", + "EffectivePreferredResource$effectiveIncludeList": "

The expanded version of your preferred resource's include list.

", + "EffectivePreferredResource$excludeList": "

The list of preferred resources values that you want excluded from rightsizing recommendation candidates.

", + "PreferredResource$includeList": "

The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as m5.large, or use wild card expressions, such as m5. If this isn’t specified, all supported resources are included by default. You can specify up to 1000 values in this list.

", + "PreferredResource$excludeList": "

The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default. You can specify up to 1000 values in this list.

" + } + }, + "PreferredResources": { + "base": null, + "refs": { + "PutRecommendationPreferencesRequest$preferredResources": "

The preference to control which resource type values are considered when generating rightsizing recommendations. You can specify this preference as a combination of include and exclude lists. You must specify either an includeList or excludeList. If the preference is an empty set of resource type values, an error occurs.

You can only set this preference for the Amazon EC2 instance and Auto Scaling group resource types.

" + } + }, "ProjectedMetric": { "base": "

Describes a projected utilization metric of a recommendation option, such as an Amazon EC2 instance. This represents the projected utilization of a recommendation option had you used that resource during the analyzed period.

Compare the utilization metric data of your resource against its projected utilization metric data to determine the performance difference between your current resource and the recommended option.

The Cpu, Memory, GPU, and GPU_MEMORY metrics are the only projected utilization metrics returned when you run the GetEC2RecommendationProjectedMetrics action. Additionally, these metrics are only returned for resources with the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent and Enabling NVIDIA GPU utilization with the CloudWatch Agent.

", "refs": { @@ -1823,6 +2036,13 @@ "ExportLicenseRecommendationsRequest$s3DestinationConfig": null } }, + "SavingsEstimationMode": { + "base": null, + "refs": { + "PutRecommendationPreferencesRequest$savingsEstimationMode": "

The status of the savings estimation mode preference to create or update.

Specify the AfterDiscounts status to activate the preference, or specify BeforeDiscounts to deactivate the preference.

Only the account manager or delegated administrator of your organization can activate this preference.

For more information, see Savings estimation mode in the Compute Optimizer User Guide.

", + "RecommendationPreferencesDetail$savingsEstimationMode": "

Describes the savings estimation mode used for calculating savings opportunity.

Only the account manager or delegated administrator of your organization can activate this preference.

" + } + }, "SavingsOpportunity": { "base": "

Describes the savings opportunity for recommendations of a given resource type or for the recommendation option of an individual resource.

Savings opportunity represents the estimated monthly savings you can achieve by implementing a given Compute Optimizer recommendation.

Savings opportunity data requires that you opt in to Cost Explorer, as well as activate Receive Amazon EC2 resource recommendations in the Cost Explorer preferences page. That creates a connection between Cost Explorer and Compute Optimizer. With this connection, Cost Explorer generates savings estimates considering the price of existing resources, the price of recommended resources, and historical usage data. Estimated monthly savings reflects the projected dollar savings associated with each of the recommendations generated. For more information, see Enabling Cost Explorer and Optimizing your cost with Rightsizing Recommendations in the Cost Management User Guide.

", "refs": { @@ -1838,6 +2058,11 @@ "SavingsOpportunityPercentage": { "base": null, "refs": { + "AutoScalingGroupSavingsOpportunityAfterDiscounts$savingsOpportunityPercentage": "

The estimated monthly savings possible as a percentage of monthly cost after applying the Savings Plans and Reserved Instances discounts. This saving can be achieved by adopting Compute Optimizer’s Auto Scaling group recommendations.

", + "EBSSavingsOpportunityAfterDiscounts$savingsOpportunityPercentage": "

The estimated monthly savings possible as a percentage of monthly cost after applying the specific discounts. This saving can be achieved by adopting Compute Optimizer’s Amazon EBS volume recommendations.

", + "ECSSavingsOpportunityAfterDiscounts$savingsOpportunityPercentage": "

The estimated monthly savings possible as a percentage of monthly cost by adopting Compute Optimizer’s Amazon ECS service recommendations. This includes any applicable Savings Plans discounts.

", + "InstanceSavingsOpportunityAfterDiscounts$savingsOpportunityPercentage": "

The estimated monthly savings possible as a percentage of monthly cost after applying the Savings Plans and Reserved Instances discounts. This saving can be achieved by adopting Compute Optimizer’s EC2 instance recommendations.

", + "LambdaSavingsOpportunityAfterDiscounts$savingsOpportunityPercentage": "

The estimated monthly savings possible as a percentage of monthly cost by adopting Compute Optimizer’s Lambda function recommendations. This includes any applicable Savings Plans discounts.

", "SavingsOpportunity$savingsOpportunityPercentage": "

The estimated monthly savings possible as a percentage of monthly cost by adopting Compute Optimizer recommendations for a given resource.

" } }, @@ -2009,10 +2234,30 @@ "InstanceRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the instance.

" } }, + "UtilizationPreference": { + "base": "

The preference to control the resource’s CPU utilization thresholds - threshold and headroom.

This preference is only available for the Amazon EC2 instance resource type.

", + "refs": { + "UtilizationPreferences$member": null + } + }, + "UtilizationPreferences": { + "base": null, + "refs": { + "EffectiveRecommendationPreferences$utilizationPreferences": "

The resource’s CPU utilization threshold preferences, such as threshold and headroom, that are used to generate rightsizing recommendations.

This preference is only available for the Amazon EC2 instance resource type.

", + "GetEffectiveRecommendationPreferencesResponse$utilizationPreferences": "

The resource’s CPU utilization threshold preferences, such as threshold and headroom, that were used to generate rightsizing recommendations. It considers all applicable preferences that you set at the resource, account, and organization level.

To validate that the preference is applied to your last generated set of recommendations, review the effectiveRecommendationPreferences value in the response of the GetAutoScalingGroupRecommendations or GetEC2InstanceRecommendations actions.

", + "PutRecommendationPreferencesRequest$utilizationPreferences": "

The preference to control the resource’s CPU utilization thresholds - threshold and headroom. When this preference isn't specified, we use the following default values:

  • P99_5 for threshold

  • PERCENT_17 for headroom

You can only set this preference for the Amazon EC2 instance resource type.

", + "RecommendationPreferencesDetail$utilizationPreferences": "

The preference to control the resource’s CPU utilization thresholds - threshold and headroom. If the preference isn’t set, this object is null.

This preference is only available for the Amazon EC2 instance resource type.

" + } + }, "Value": { "base": null, "refs": { - "EstimatedMonthlySavings$value": "

The value of the estimated monthly savings.

" + "AutoScalingGroupEstimatedMonthlySavings$value": "

The value of the estimated monthly savings.

", + "EBSEstimatedMonthlySavings$value": "

The value of the estimated monthly savings.

", + "ECSEstimatedMonthlySavings$value": "

The value of the estimated monthly savings for Amazon ECS services.

", + "EstimatedMonthlySavings$value": "

The value of the estimated monthly savings.

", + "InstanceEstimatedMonthlySavings$value": "

The value of the estimated monthly savings.

", + "LambdaEstimatedMonthlySavings$value": "

The value of the estimated monthly savings.

" } }, "VeryLow": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/compute-optimizer/2019-11-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/compute-optimizer/2019-11-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/compute-optimizer/2019-11-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/compute-optimizer/2019-11-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/config/2014-11-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/config/2014-11-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/config/2014-11-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/config/2014-11-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -983,6 +983,7 @@ "input":{"shape":"PutConfigurationRecorderRequest"}, "errors":[ {"shape":"MaxNumberOfConfigurationRecordersExceededException"}, + {"shape":"ValidationException"}, {"shape":"InvalidConfigurationRecorderNameException"}, {"shape":"InvalidRoleException"}, {"shape":"InvalidRecordingGroupException"} @@ -1518,7 +1519,9 @@ "availabilityZone":{"shape":"AvailabilityZone"}, "resourceCreationTime":{"shape":"ResourceCreationTime"}, "configuration":{"shape":"Configuration"}, - "supplementaryConfiguration":{"shape":"SupplementaryConfiguration"} + "supplementaryConfiguration":{"shape":"SupplementaryConfiguration"}, + "recordingFrequency":{"shape":"RecordingFrequency"}, + "configurationItemDeliveryTime":{"shape":"ConfigurationItemDeliveryTime"} } }, "BaseConfigurationItems":{ @@ -1826,10 +1829,13 @@ "relatedEvents":{"shape":"RelatedEventList"}, "relationships":{"shape":"RelationshipList"}, "configuration":{"shape":"Configuration"}, - "supplementaryConfiguration":{"shape":"SupplementaryConfiguration"} + "supplementaryConfiguration":{"shape":"SupplementaryConfiguration"}, + "recordingFrequency":{"shape":"RecordingFrequency"}, + "configurationItemDeliveryTime":{"shape":"ConfigurationItemDeliveryTime"} } }, "ConfigurationItemCaptureTime":{"type":"timestamp"}, + "ConfigurationItemDeliveryTime":{"type":"timestamp"}, "ConfigurationItemList":{ "type":"list", "member":{"shape":"ConfigurationItem"} @@ -1850,7 +1856,8 @@ "members":{ "name":{"shape":"RecorderName"}, "roleARN":{"shape":"String"}, - "recordingGroup":{"shape":"RecordingGroup"} + "recordingGroup":{"shape":"RecordingGroup"}, + "recordingMode":{"shape":"RecordingMode"} } }, "ConfigurationRecorderList":{ @@ -2740,6 +2747,11 @@ "NextToken":{"shape":"NextToken"} } }, + "Description":{ + "type":"string", + "max":256, + "min":1 + }, "DiscoveredResourceIdentifierList":{ "type":"list", "member":{"shape":"AggregateResourceIdentifier"} @@ -4320,6 +4332,13 @@ "Failure" ] }, + "RecordingFrequency":{ + "type":"string", + "enum":[ + "CONTINUOUS", + "DAILY" + ] + }, "RecordingGroup":{ "type":"structure", "members":{ @@ -4330,6 +4349,36 @@ "recordingStrategy":{"shape":"RecordingStrategy"} } }, + "RecordingMode":{ + "type":"structure", + "required":["recordingFrequency"], + "members":{ + "recordingFrequency":{"shape":"RecordingFrequency"}, + "recordingModeOverrides":{"shape":"RecordingModeOverrides"} + } + }, + "RecordingModeOverride":{ + "type":"structure", + "required":[ + "resourceTypes", + "recordingFrequency" + ], + "members":{ + "description":{"shape":"Description"}, + "resourceTypes":{"shape":"RecordingModeResourceTypesList"}, + "recordingFrequency":{"shape":"RecordingFrequency"} + } + }, + "RecordingModeOverrides":{ + "type":"list", + "member":{"shape":"RecordingModeOverride"}, + "max":1, + "min":0 + }, + "RecordingModeResourceTypesList":{ + "type":"list", + "member":{"shape":"ResourceType"} + }, "RecordingStrategy":{ "type":"structure", "members":{ @@ -5020,7 +5069,43 @@ "AWS::Pinpoint::EmailChannel", "AWS::S3::AccessPoint", "AWS::NetworkManager::CustomerGatewayAssociation", - "AWS::NetworkManager::LinkAssociation" + "AWS::NetworkManager::LinkAssociation", + "AWS::IoTWireless::MulticastGroup", + "AWS::Personalize::DatasetGroup", + "AWS::IoTTwinMaker::ComponentType", + "AWS::CodeBuild::ReportGroup", + "AWS::SageMaker::FeatureGroup", + "AWS::MSK::BatchScramSecret", + "AWS::AppStream::Stack", + "AWS::IoT::JobTemplate", + "AWS::IoTWireless::FuotaTask", + "AWS::IoT::ProvisioningTemplate", + "AWS::InspectorV2::Filter", + "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation", + "AWS::ServiceDiscovery::Instance", + "AWS::Transfer::Certificate", + "AWS::MediaConnect::FlowSource", + "AWS::APS::RuleGroupsNamespace", + "AWS::CodeGuruProfiler::ProfilingGroup", + "AWS::Route53Resolver::ResolverQueryLoggingConfig", + "AWS::Batch::SchedulingPolicy", + "AWS::ACMPCA::CertificateAuthorityActivation", + "AWS::AppMesh::GatewayRoute", + "AWS::AppMesh::Mesh", + "AWS::Connect::Instance", + "AWS::Connect::QuickConnect", + "AWS::EC2::CarrierGateway", + "AWS::EC2::IPAMPool", + "AWS::EC2::TransitGatewayConnect", + "AWS::EC2::TransitGatewayMulticastDomain", + "AWS::ECS::CapacityProvider", + "AWS::IAM::InstanceProfile", + "AWS::IoT::CACertificate", + "AWS::IoTTwinMaker::SyncJob", + "AWS::KafkaConnect::Connector", + "AWS::Lambda::CodeSigningConfig", + "AWS::NetworkManager::ConnectPeer", + "AWS::ResourceExplorer2::Index" ] }, "ResourceTypeList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/config/2014-11-12/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/config/2014-11-12/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/config/2014-11-12/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/config/2014-11-12/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -61,7 +61,7 @@ "GetOrganizationConfigRuleDetailedStatus": "

Returns detailed status for each member account within an organization for a given organization Config rule.

", "GetOrganizationConformancePackDetailedStatus": "

Returns detailed status for each member account within an organization for a given organization conformance pack.

", "GetOrganizationCustomRulePolicy": "

Returns the policy definition containing the logic for your organization Config Custom Policy rule.

", - "GetResourceConfigHistory": "

Returns a list of ConfigurationItems for the specified resource. The list contains details about each state of the resource during the specified time interval. If you specified a retention period to retain your ConfigurationItems between a minimum of 30 days and a maximum of 7 years (2557 days), Config returns the ConfigurationItems for the specified retention period.

The response is paginated. By default, Config returns a limit of 10 configuration items per page. You can customize this number with the limit parameter. The response includes a nextToken string. To get the next page of results, run the request again and specify the string for the nextToken parameter.

Each call to the API is limited to span a duration of seven days. It is likely that the number of records returned is smaller than the specified limit. In such cases, you can make another call, using the nextToken.

", + "GetResourceConfigHistory": "

For accurate reporting on the compliance status, you must record the AWS::Config::ResourceCompliance resource type. For more information, see Selecting Which Resources Config Records.

Returns a list of ConfigurationItems for the specified resource. The list contains details about each state of the resource during the specified time interval. If you specified a retention period to retain your ConfigurationItems between a minimum of 30 days and a maximum of 7 years (2557 days), Config returns the ConfigurationItems for the specified retention period.

The response is paginated. By default, Config returns a limit of 10 configuration items per page. You can customize this number with the limit parameter. The response includes a nextToken string. To get the next page of results, run the request again and specify the string for the nextToken parameter.

Each call to the API is limited to span a duration of seven days. It is likely that the number of records returned is smaller than the specified limit. In such cases, you can make another call, using the nextToken.

", "GetResourceEvaluationSummary": "

Returns a summary of resource evaluation for the specified resource evaluation ID from the proactive rules that were run. The results indicate which evaluation context was used to evaluate the rules, which resource details were evaluated, the evaluation mode that was run, and whether the resource details comply with the configuration of the proactive rules.

To see additional information about the evaluation result, such as which rule flagged a resource as NON_COMPLIANT, use the GetComplianceDetailsByResource API. For more information, see the Examples section.

", "GetStoredQuery": "

Returns the details of a specific stored query.

", "ListAggregateDiscoveredResources": "

Accepts a resource type and returns a list of resource identifiers that are aggregated for a specific resource type across accounts and regions. A resource identifier includes the resource type, ID, (if available) the custom resource name, source account, and source region. You can narrow the results to include only resources that have specific resource IDs, or a resource name, or source account ID, or source region.

For example, if the input consists of accountID 12345678910 and the region is us-east-1 for resource type AWS::EC2::Instance then the API returns all the EC2 instance identifiers of accountID 12345678910 and region us-east-1.

", @@ -75,7 +75,7 @@ "PutConfigurationAggregator": "

Creates and updates the configuration aggregator with the selected source accounts and regions. The source account can be individual account(s) or an organization.

accountIds that are passed will be replaced with existing accounts. If you want to add additional accounts into the aggregator, call DescribeConfigurationAggregators to get the previous accounts and then append new ones.

Config should be enabled in source accounts and regions you want to aggregate.

If your source type is an organization, you must be signed in to the management account or a registered delegated administrator and all the features must be enabled in your organization. If the caller is a management account, Config calls EnableAwsServiceAccess API to enable integration between Config and Organizations. If the caller is a registered delegated administrator, Config calls ListDelegatedAdministrators API to verify whether the caller is a valid delegated administrator.

To register a delegated administrator, see Register a Delegated Administrator in the Config developer guide.

PutConfigurationAggregator is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values, Config will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

", "PutConfigurationRecorder": "

Creates a new configuration recorder to record configuration changes for specified resource types.

You can also use this action to change the roleARN or the recordingGroup of an existing recorder. For more information, see Managing the Configuration Recorder in the Config Developer Guide.

You can specify only one configuration recorder for each Amazon Web Services Region for each account.

If the configuration recorder does not have the recordingGroup field specified, the default is to record all supported resource types.

", "PutConformancePack": "

Creates or updates a conformance pack. A conformance pack is a collection of Config rules that can be easily deployed in an account and a region and across an organization. For information on how many conformance packs you can have per account, see Service Limits in the Config Developer Guide.

This API creates a service-linked role AWSServiceRoleForConfigConforms in your account. The service-linked role is created only when the role does not exist in your account.

You must specify only one of the follow parameters: TemplateS3Uri, TemplateBody or TemplateSSMDocumentDetails.

", - "PutDeliveryChannel": "

Creates a delivery channel object to deliver configuration information to an Amazon S3 bucket and Amazon SNS topic.

Before you can create a delivery channel, you must create a configuration recorder.

You can use this action to change the Amazon S3 bucket or an Amazon SNS topic of the existing delivery channel. To change the Amazon S3 bucket or an Amazon SNS topic, call this action and specify the changed values for the S3 bucket and the SNS topic. If you specify a different value for either the S3 bucket or the SNS topic, this action will keep the existing value for the parameter that is not changed.

You can have only one delivery channel per region in your account.

", + "PutDeliveryChannel": "

Creates a delivery channel object to deliver configuration information and other compliance information to an Amazon S3 bucket and Amazon SNS topic. For more information, see Notifications that Config Sends to an Amazon SNS topic.

Before you can create a delivery channel, you must create a configuration recorder.

You can use this action to change the Amazon S3 bucket or an Amazon SNS topic of the existing delivery channel. To change the Amazon S3 bucket or an Amazon SNS topic, call this action and specify the changed values for the S3 bucket and the SNS topic. If you specify a different value for either the S3 bucket or the SNS topic, this action will keep the existing value for the parameter that is not changed.

You can have only one delivery channel per region in your account.

", "PutEvaluations": "

Used by an Lambda function to deliver evaluation results to Config. This action is required in every Lambda function that is invoked by an Config rule.

", "PutExternalEvaluation": "

Add or updates the evaluations for process checks. This API checks if the rule is a process check when the name of the Config rule is provided.

", "PutOrganizationConfigRule": "

Adds or updates an Config rule for your entire organization to evaluate if your Amazon Web Services resources comply with your desired configurations. For information on how many organization Config rules you can have per account, see Service Limits in the Config Developer Guide.

Only a management account and a delegated administrator can create or update an organization Config rule. When calling this API with a delegated administrator, you must ensure Organizations ListDelegatedAdministrator permissions are added. An organization can have up to 3 delegated administrators.

This API enables organization service access through the EnableAWSServiceAccess action and creates a service-linked role AWSServiceRoleForConfigMultiAccountSetup in the management or delegated administrator account of your organization. The service-linked role is created only when the role does not exist in the caller account. Config verifies the existence of role with GetRole action.

To use this API with delegated administrator, register a delegated administrator by calling Amazon Web Services Organization register-delegated-administrator for config-multiaccountsetup.amazonaws.com.

There are two types of rules: Config Managed Rules and Config Custom Rules. You can use PutOrganizationConfigRule to create both Config Managed Rules and Config Custom Rules.

Config Managed Rules are predefined, customizable rules created by Config. For a list of managed rules, see List of Config Managed Rules. If you are adding an Config managed rule, you must specify the rule's identifier for the RuleIdentifier key.

Config Custom Rules are rules that you create from scratch. There are two ways to create Config custom rules: with Lambda functions ( Lambda Developer Guide) and with Guard (Guard GitHub Repository), a policy-as-code language. Config custom rules created with Lambda are called Config Custom Lambda Rules and Config custom rules created with Guard are called Config Custom Policy Rules.

If you are adding a new Config Custom Lambda rule, you first need to create an Lambda function in the management account or a delegated administrator that the rule invokes to evaluate your resources. You also need to create an IAM role in the managed account that can be assumed by the Lambda function. When you use PutOrganizationConfigRule to add a Custom Lambda rule to Config, you must specify the Amazon Resource Name (ARN) that Lambda assigns to the function.

Prerequisite: Ensure you call EnableAllFeatures API to enable all features in an organization.

Make sure to specify one of either OrganizationCustomPolicyRuleMetadata for Custom Policy rules, OrganizationCustomRuleMetadata for Custom Lambda rules, or OrganizationManagedRuleMetadata for managed rules.

", @@ -305,7 +305,7 @@ "AllSupported": { "base": null, "refs": { - "RecordingGroup$allSupported": "

Specifies whether Config records configuration changes for all supported regional resource types.

If you set this field to true, when Config adds support for a new type of regional resource, Config starts recording resources of that type automatically.

If you set this field to true, you cannot enumerate specific resource types to record in the resourceTypes field of RecordingGroup, or to exclude in the resourceTypes field of ExclusionByResourceTypes.

" + "RecordingGroup$allSupported": "

Specifies whether Config records configuration changes for all supported resource types, excluding the global IAM resource types.

If you set this field to true, when Config adds support for a new resource type, Config starts recording resources of that type automatically.

If you set this field to true, you cannot enumerate specific resource types to record in the resourceTypes field of RecordingGroup, or to exclude in the resourceTypes field of ExclusionByResourceTypes.

Region availability

Check Resource Coverage by Region Availability to see if a resource type is supported in the Amazon Web Services Region where you set up Config.

" } }, "AmazonResourceName": { @@ -366,7 +366,7 @@ } }, "BaseConfigurationItem": { - "base": "

The detailed configuration of a specified resource.

", + "base": "

The detailed configurations of a specified resource.

", "refs": { "BaseConfigurationItems$member": null } @@ -706,8 +706,15 @@ "ConfigurationItemCaptureTime": { "base": null, "refs": { - "BaseConfigurationItem$configurationItemCaptureTime": "

The time when the configuration recording was initiated.

", - "ConfigurationItem$configurationItemCaptureTime": "

The time when the configuration recording was initiated.

" + "BaseConfigurationItem$configurationItemCaptureTime": "

The time when the recording of configuration changes was initiated for the resource.

", + "ConfigurationItem$configurationItemCaptureTime": "

The time when the recording of configuration changes was initiated for the resource.

" + } + }, + "ConfigurationItemDeliveryTime": { + "base": null, + "refs": { + "BaseConfigurationItem$configurationItemDeliveryTime": "

The time when configuration changes for the resource were delivered.

", + "ConfigurationItem$configurationItemDeliveryTime": "

The time when configuration changes for the resource were delivered.

" } }, "ConfigurationItemList": { @@ -725,12 +732,12 @@ "ConfigurationItemStatus": { "base": null, "refs": { - "BaseConfigurationItem$configurationItemStatus": "

The configuration item status. The valid values are:

  • OK – The resource configuration has been updated

  • ResourceDiscovered – The resource was newly discovered

  • ResourceNotRecorded – The resource was discovered but its configuration was not recorded since the recorder excludes the recording of resources of this type

  • ResourceDeleted – The resource was deleted

  • ResourceDeletedNotRecorded – The resource was deleted but its configuration was not recorded since the recorder excludes the recording of resources of this type

The CIs do not incur any cost.

", - "ConfigurationItem$configurationItemStatus": "

The configuration item status. The valid values are:

  • OK – The resource configuration has been updated

  • ResourceDiscovered – The resource was newly discovered

  • ResourceNotRecorded – The resource was discovered but its configuration was not recorded since the recorder excludes the recording of resources of this type

  • ResourceDeleted – The resource was deleted

  • ResourceDeletedNotRecorded – The resource was deleted but its configuration was not recorded since the recorder excludes the recording of resources of this type

The CIs do not incur any cost.

" + "BaseConfigurationItem$configurationItemStatus": "

The configuration item status. Valid values include:

  • OK – The resource configuration has been updated.

  • ResourceDiscovered – The resource was newly discovered.

  • ResourceNotRecorded – The resource was discovered, but its configuration was not recorded since the recorder doesn't record resources of this type.

  • ResourceDeleted – The resource was deleted

  • ResourceDeletedNotRecorded – The resource was deleted, but its configuration was not recorded since the recorder doesn't record resources of this type.

", + "ConfigurationItem$configurationItemStatus": "

The configuration item status. Valid values include:

  • OK – The resource configuration has been updated

  • ResourceDiscovered – The resource was newly discovered

  • ResourceNotRecorded – The resource was discovered but its configuration was not recorded since the recorder doesn't record resources of this type

  • ResourceDeleted – The resource was deleted

  • ResourceDeletedNotRecorded – The resource was deleted but its configuration was not recorded since the recorder doesn't record resources of this type

" } }, "ConfigurationRecorder": { - "base": "

Records configuration changes to specified resource types. For more information about the configuration recorder, see Managing the Configuration Recorder in the Config Developer Guide.

", + "base": "

Records configuration changes to your specified resource types. For more information about the configuration recorder, see Managing the Configuration Recorder in the Config Developer Guide.

", "refs": { "ConfigurationRecorderList$member": null, "PutConfigurationRecorderRequest$ConfigurationRecorder": "

An object for the configuration recorder to record configuration changes for specified resource types.

" @@ -1479,6 +1486,12 @@ "refs": { } }, + "Description": { + "base": null, + "refs": { + "RecordingModeOverride$description": "

A description that you provide for the override.

" + } + }, "DiscoveredResourceIdentifierList": { "base": null, "refs": { @@ -1488,7 +1501,7 @@ "EarlierTime": { "base": null, "refs": { - "GetResourceConfigHistoryRequest$earlierTime": "

The time stamp that indicates an earlier time. If not specified, the action returns paginated results that contain configuration items that start when the first configuration item was recorded.

" + "GetResourceConfigHistoryRequest$earlierTime": "

The chronologically earliest time in the time range for which the history requested. If not specified, the action returns paginated results that contain configuration items that start when the first configuration item was recorded.

" } }, "EmptiableStringWithCharLimit256": { @@ -1536,7 +1549,7 @@ } }, "EvaluationModeConfiguration": { - "base": "

The configuration object for Config rule evaluation mode. The Supported valid values are Detective or Proactive.

", + "base": "

The configuration object for Config rule evaluation mode. The supported valid values are Detective or Proactive.

", "refs": { "EvaluationModes$member": null } @@ -1609,9 +1622,9 @@ } }, "ExclusionByResourceTypes": { - "base": "

Specifies whether the configuration recorder excludes resource types from being recorded. Use the resourceTypes field to enter a comma-separated list of resource types to exclude as exemptions.

", + "base": "

Specifies whether the configuration recorder excludes certain resource types from being recorded. Use the resourceTypes field to enter a comma-separated list of resource types you want to exclude from recording.

By default, when Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types, Config starts recording resources of that type automatically.

How to use the exclusion recording strategy

To use this option, you must set the useOnly field of RecordingStrategy to EXCLUSION_BY_RESOURCE_TYPES.

Config will then record configuration changes for all supported resource types, except the resource types that you specify to exclude from being recorded.

Global resource types and the exclusion recording strategy

Unless specifically listed as exclusions, AWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022. You cannot be record the global IAM resouce types in Regions supported by Config after February 2022. This list where you cannot record the global IAM resource types includes the following Regions:

  • Asia Pacific (Hyderabad)

  • Asia Pacific (Melbourne)

  • Europe (Spain)

  • Europe (Zurich)

  • Israel (Tel Aviv)

  • Middle East (UAE)

", "refs": { - "RecordingGroup$exclusionByResourceTypes": "

An object that specifies how Config excludes resource types from being recorded by the configuration recorder.

To use this option, you must set the useOnly field of RecordingStrategy to EXCLUSION_BY_RESOURCE_TYPES.

" + "RecordingGroup$exclusionByResourceTypes": "

An object that specifies how Config excludes resource types from being recorded by the configuration recorder.

Required fields

To use this option, you must set the useOnly field of RecordingStrategy to EXCLUSION_BY_RESOURCE_TYPES.

" } }, "ExecutionControls": { @@ -1906,7 +1919,7 @@ "IncludeGlobalResourceTypes": { "base": null, "refs": { - "RecordingGroup$includeGlobalResourceTypes": "

Specifies whether Config records configuration changes for all supported global resources.

Before you set this field to true, set the allSupported field of RecordingGroup to true. Optionally, you can set the useOnly field of RecordingStrategy to ALL_SUPPORTED_RESOURCE_TYPES.

If you set this field to true, when Config adds support for a new type of global resource in the Region where you set up the configuration recorder, Config starts recording resources of that type automatically.

If you set this field to false but list global resource types in the resourceTypes field of RecordingGroup, Config will still record configuration changes for those specified resource types regardless of if you set the includeGlobalResourceTypes field to false.

If you do not want to record configuration changes to global resource types, make sure to not list them in the resourceTypes field in addition to setting the includeGlobalResourceTypes field to false.

" + "RecordingGroup$includeGlobalResourceTypes": "

This option is a bundle which only applies to the global IAM resource types: IAM users, groups, roles, and customer managed policies. These global IAM resource types can only be recorded by Config in Regions where Config was available before February 2022. You cannot be record the global IAM resouce types in Regions supported by Config after February 2022. This list where you cannot record the global IAM resource types includes the following Regions:

  • Asia Pacific (Hyderabad)

  • Asia Pacific (Melbourne)

  • Europe (Spain)

  • Europe (Zurich)

  • Israel (Tel Aviv)

  • Middle East (UAE)

Aurora global clusters are recorded in all enabled Regions

The AWS::RDS::GlobalCluster resource type will be recorded in all supported Config Regions where the configuration recorder is enabled, even if includeGlobalResourceTypes is not set to true. The includeGlobalResourceTypes option is a bundle which only applies to IAM users, groups, roles, and customer managed policies.

If you do not want to record AWS::RDS::GlobalCluster in all enabled Regions, use one of the following recording strategies:

  1. Record all current and future resource types with exclusions (EXCLUSION_BY_RESOURCE_TYPES), or

  2. Record specific resource types (INCLUSION_BY_RESOURCE_TYPES).

For more information, see Selecting Which Resources are Recorded in the Config developer guide.

Before you set this field to true, set the allSupported field of RecordingGroup to true. Optionally, you can set the useOnly field of RecordingStrategy to ALL_SUPPORTED_RESOURCE_TYPES.

Overriding fields

If you set this field to false but list global IAM resource types in the resourceTypes field of RecordingGroup, Config will still record configuration changes for those specified resource types regardless of if you set the includeGlobalResourceTypes field to false.

If you do not want to record configuration changes to the global IAM resource types (IAM users, groups, roles, and customer managed policies), make sure to not list them in the resourceTypes field in addition to setting the includeGlobalResourceTypes field to false.

" } }, "InsufficientDeliveryPolicyException": { @@ -2009,7 +2022,7 @@ "LaterTime": { "base": null, "refs": { - "GetResourceConfigHistoryRequest$laterTime": "

The time stamp that indicates a later time. If not specified, current time is taken.

" + "GetResourceConfigHistoryRequest$laterTime": "

The chronologically latest time in the time range for which the history requested. If not specified, current time is taken.

" } }, "Limit": { @@ -2491,14 +2504,14 @@ } }, "OrganizationCustomRuleMetadata": { - "base": "

organization custom rule metadata such as resource type, resource ID of Amazon Web Services resource, Lambda function ARN, and organization trigger types that trigger Config to evaluate your Amazon Web Services resources against a rule. It also provides the frequency with which you want Config to run evaluations for the rule if the trigger type is periodic.

", + "base": "

An object that specifies organization custom rule metadata such as resource type, resource ID of Amazon Web Services resource, Lambda function ARN, and organization trigger types that trigger Config to evaluate your Amazon Web Services resources against a rule. It also provides the frequency with which you want Config to run evaluations for the rule if the trigger type is periodic.

", "refs": { "OrganizationConfigRule$OrganizationCustomRuleMetadata": "

An OrganizationCustomRuleMetadata object.

", "PutOrganizationConfigRuleRequest$OrganizationCustomRuleMetadata": "

An OrganizationCustomRuleMetadata object. This object specifies organization custom rule metadata such as resource type, resource ID of Amazon Web Services resource, Lambda function ARN, and organization trigger types that trigger Config to evaluate your Amazon Web Services resources against a rule. It also provides the frequency with which you want Config to run evaluations for the rule if the trigger type is periodic.

" } }, "OrganizationManagedRuleMetadata": { - "base": "

organization managed rule metadata such as resource type and ID of Amazon Web Services resource along with the rule identifier. It also provides the frequency with which you want Config to run evaluations for the rule if the trigger type is periodic.

", + "base": "

An object that specifies organization managed rule metadata such as resource type and ID of Amazon Web Services resource along with the rule identifier. It also provides the frequency with which you want Config to run evaluations for the rule if the trigger type is periodic.

", "refs": { "OrganizationConfigRule$OrganizationManagedRuleMetadata": "

An OrganizationManagedRuleMetadata object.

", "PutOrganizationConfigRuleRequest$OrganizationManagedRuleMetadata": "

An OrganizationManagedRuleMetadata object. This object specifies organization managed rule metadata such as resource type and ID of Amazon Web Services resource along with the rule identifier. It also provides the frequency with which you want Config to run evaluations for the rule if the trigger type is periodic.

" @@ -2774,7 +2787,7 @@ "RecorderName": { "base": null, "refs": { - "ConfigurationRecorder$name": "

The name of the configuration recorder. Config automatically assigns the name of \"default\" when creating the configuration recorder.

You cannot change the name of the configuration recorder after it has been created. To change the configuration recorder name, you must delete it and create a new configuration recorder with a new name.

", + "ConfigurationRecorder$name": "

The name of the configuration recorder. Config automatically assigns the name of \"default\" when creating the configuration recorder.

You cannot change the name of the configuration recorder after it has been created. To change the configuration recorder name, you must delete it and create a new configuration recorder with a new name.

", "ConfigurationRecorderNameList$member": null, "DeleteConfigurationRecorderRequest$ConfigurationRecorderName": "

The name of the configuration recorder to be deleted. You can retrieve the name of your configuration recorder by using the DescribeConfigurationRecorders action.

", "StartConfigurationRecorderRequest$ConfigurationRecorderName": "

The name of the recorder object that records each configuration change made to the resources.

", @@ -2787,22 +2800,55 @@ "ConfigurationRecorderStatus$lastStatus": "

The status of the latest recording event processed by the recorder.

" } }, + "RecordingFrequency": { + "base": null, + "refs": { + "BaseConfigurationItem$recordingFrequency": "

The recording frequency that Config uses to record configuration changes for the resource.

", + "ConfigurationItem$recordingFrequency": "

The recording frequency that Config uses to record configuration changes for the resource.

", + "RecordingMode$recordingFrequency": "

The default recording frequency that Config uses to record configuration changes.

Daily recording is not supported for the following resource types:

  • AWS::Config::ResourceCompliance

  • AWS::Config::ConformancePackCompliance

  • AWS::Config::ConfigurationRecorder

For the allSupported (ALL_SUPPORTED_RESOURCE_TYPES) recording strategy, these resource types will be set to Continuous recording.

", + "RecordingModeOverride$recordingFrequency": "

The recording frequency that will be applied to all the resource types specified in the override.

  • Continuous recording allows you to record configuration changes continuously whenever a change occurs.

  • Daily recording allows you record configuration data once every 24 hours, only if a change has occurred.

Firewall Manager depends on continuous recording to monitor your resources. If you are using Firewall Manager, it is recommended that you set the recording frequency to Continuous.

" + } + }, "RecordingGroup": { - "base": "

Specifies which resource types Config records for configuration changes. In the recording group, you specify whether you want to record all supported resource types or to include or exclude specific types of resources.

By default, Config records configuration changes for all supported types of Regional resources that Config discovers in the Amazon Web Services Region in which it is running. Regional resources are tied to a Region and can be used only in that Region. Examples of Regional resources are Amazon EC2 instances and Amazon EBS volumes.

You can also have Config record supported types of global resources. Global resources are not tied to a specific Region and can be used in all Regions. The global resource types that Config supports include IAM users, groups, roles, and customer managed policies.

Global resource types onboarded to Config recording after February 2022 will be recorded only in the service's home Region for the commercial partition and Amazon Web Services GovCloud (US-West) for the Amazon Web Services GovCloud (US) partition. You can view the Configuration Items for these new global resource types only in their home Region and Amazon Web Services GovCloud (US-West).

If you don't want Config to record all resources, you can specify which types of resources Config records with the resourceTypes parameter.

For a list of supported resource types, see Supported Resource Types in the Config developer guide.

For more information and a table of the Home Regions for Global Resource Types Onboarded after February 2022, see Selecting Which Resources Config Records in the Config developer guide.

", + "base": "

Specifies which resource types Config records for configuration changes. By default, Config records configuration changes for all current and future supported resource types in the Amazon Web Services Region where you have enabled Config, excluding the global IAM resource types: IAM users, groups, roles, and customer managed policies.

In the recording group, you specify whether you want to record all supported current and future supported resource types or to include or exclude specific resources types. For a list of supported resource types, see Supported Resource Types in the Config developer guide.

If you don't want Config to record all current and future supported resource types (excluding the global IAM resource types), use one of the following recording strategies:

  1. Record all current and future resource types with exclusions (EXCLUSION_BY_RESOURCE_TYPES), or

  2. Record specific resource types (INCLUSION_BY_RESOURCE_TYPES).

If you use the recording strategy to Record all current and future resource types (ALL_SUPPORTED_RESOURCE_TYPES), you can use the flag includeGlobalResourceTypes to include the global IAM resource types in your recording.

Aurora global clusters are recorded in all enabled Regions

The AWS::RDS::GlobalCluster resource type will be recorded in all supported Config Regions where the configuration recorder is enabled.

If you do not want to record AWS::RDS::GlobalCluster in all enabled Regions, use the EXCLUSION_BY_RESOURCE_TYPES or INCLUSION_BY_RESOURCE_TYPES recording strategy.

", "refs": { "ConfigurationRecorder$recordingGroup": "

Specifies which resource types Config records for configuration changes.

High Number of Config Evaluations

You may notice increased activity in your account during your initial month recording with Config when compared to subsequent months. During the initial bootstrapping process, Config runs evaluations on all the resources in your account that you have selected for Config to record.

If you are running ephemeral workloads, you may see increased activity from Config as it records configuration changes associated with creating and deleting these temporary resources. An ephemeral workload is a temporary use of computing resources that are loaded and run when needed. Examples include Amazon Elastic Compute Cloud (Amazon EC2) Spot Instances, Amazon EMR jobs, and Auto Scaling. If you want to avoid the increased activity from running ephemeral workloads, you can run these types of workloads in a separate account with Config turned off to avoid increased configuration recording and rule evaluations.

" } }, + "RecordingMode": { + "base": "

Specifies the default recording frequency that Config uses to record configuration changes. Config supports Continuous recording and Daily recording.

  • Continuous recording allows you to record configuration changes continuously whenever a change occurs.

  • Daily recording allows you record configuration data once every 24 hours, only if a change has occurred.

Firewall Manager depends on continuous recording to monitor your resources. If you are using Firewall Manager, it is recommended that you set the recording frequency to Continuous.

You can also override the recording frequency for specific resource types.

", + "refs": { + "ConfigurationRecorder$recordingMode": "

Specifies the default recording frequency that Config uses to record configuration changes. Config supports Continuous recording and Daily recording.

  • Continuous recording allows you to record configuration changes continuously whenever a change occurs.

  • Daily recording allows you record configuration data once every 24 hours, only if a change has occurred.

Firewall Manager depends on continuous recording to monitor your resources. If you are using Firewall Manager, it is recommended that you set the recording frequency to Continuous.

You can also override the recording frequency for specific resource types.

" + } + }, + "RecordingModeOverride": { + "base": "

An object for you to specify your overrides for the recording mode.

", + "refs": { + "RecordingModeOverrides$member": null + } + }, + "RecordingModeOverrides": { + "base": null, + "refs": { + "RecordingMode$recordingModeOverrides": "

An array of recordingModeOverride objects for you to specify your overrides for the recording mode. The recordingModeOverride object in the recordingModeOverrides array consists of three fields: a description, the new recordingFrequency, and an array of resourceTypes to override.

" + } + }, + "RecordingModeResourceTypesList": { + "base": null, + "refs": { + "RecordingModeOverride$resourceTypes": "

A comma-separated list that specifies which resource types Config includes in the override.

Daily recording is not supported for the following resource types:

  • AWS::Config::ResourceCompliance

  • AWS::Config::ConformancePackCompliance

  • AWS::Config::ConfigurationRecorder

" + } + }, "RecordingStrategy": { "base": "

Specifies the recording strategy of the configuration recorder.

", "refs": { - "RecordingGroup$recordingStrategy": "

An object that specifies the recording strategy for the configuration recorder.

  • If you set the useOnly field of RecordingStrategy to ALL_SUPPORTED_RESOURCE_TYPES, Config records configuration changes for all supported regional resource types. You also must set the allSupported field of RecordingGroup to true. When Config adds support for a new type of regional resource, Config automatically starts recording resources of that type.

  • If you set the useOnly field of RecordingStrategy to INCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for only the resource types you specify in the resourceTypes field of RecordingGroup.

  • If you set the useOnly field of RecordingStrategy to EXCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for all supported resource types except the resource types that you specify as exemptions to exclude from being recorded in the resourceTypes field of ExclusionByResourceTypes.

The recordingStrategy field is optional when you set the allSupported field of RecordingGroup to true.

The recordingStrategy field is optional when you list resource types in the resourceTypes field of RecordingGroup.

The recordingStrategy field is required if you list resource types to exclude from recording in the resourceTypes field of ExclusionByResourceTypes.

If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the exclusionByResourceTypes field will override other properties in the request.

For example, even if you set includeGlobalResourceTypes to false, global resource types will still be automatically recorded in this option unless those resource types are specifically listed as exemptions in the resourceTypes field of exclusionByResourceTypes.

By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy, when Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types, Config starts recording resources of that type automatically.

" + "RecordingGroup$recordingStrategy": "

An object that specifies the recording strategy for the configuration recorder.

  • If you set the useOnly field of RecordingStrategy to ALL_SUPPORTED_RESOURCE_TYPES, Config records configuration changes for all supported resource types, excluding the global IAM resource types. You also must set the allSupported field of RecordingGroup to true. When Config adds support for a new resource type, Config automatically starts recording resources of that type.

  • If you set the useOnly field of RecordingStrategy to INCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for only the resource types you specify in the resourceTypes field of RecordingGroup.

  • If you set the useOnly field of RecordingStrategy to EXCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for all supported resource types except the resource types that you specify to exclude from being recorded in the resourceTypes field of ExclusionByResourceTypes.

Required and optional fields

The recordingStrategy field is optional when you set the allSupported field of RecordingGroup to true.

The recordingStrategy field is optional when you list resource types in the resourceTypes field of RecordingGroup.

The recordingStrategy field is required if you list resource types to exclude from recording in the resourceTypes field of ExclusionByResourceTypes.

Overriding fields

If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the exclusionByResourceTypes field will override other properties in the request.

For example, even if you set includeGlobalResourceTypes to false, global IAM resource types will still be automatically recorded in this option unless those resource types are specifically listed as exclusions in the resourceTypes field of exclusionByResourceTypes.

Global resources types and the resource exclusion recording strategy

By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy, when Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types, Config starts recording resources of that type automatically.

Unless specifically listed as exclusions, AWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022. You cannot be record the global IAM resouce types in Regions supported by Config after February 2022. This list where you cannot record the global IAM resource types includes the following Regions:

  • Asia Pacific (Hyderabad)

  • Asia Pacific (Melbourne)

  • Europe (Spain)

  • Europe (Zurich)

  • Israel (Tel Aviv)

  • Middle East (UAE)

" } }, "RecordingStrategyType": { "base": null, "refs": { - "RecordingStrategy$useOnly": "

The recording strategy for the configuration recorder.

  • If you set this option to ALL_SUPPORTED_RESOURCE_TYPES, Config records configuration changes for all supported regional resource types. You also must set the allSupported field of RecordingGroup to true.

    When Config adds support for a new type of regional resource, Config automatically starts recording resources of that type. For a list of supported resource types, see Supported Resource Types in the Config developer guide.

  • If you set this option to INCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for only the resource types that you specify in the resourceTypes field of RecordingGroup.

  • If you set this option to EXCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for all supported resource types, except the resource types that you specify as exemptions to exclude from being recorded in the resourceTypes field of ExclusionByResourceTypes.

The recordingStrategy field is optional when you set the allSupported field of RecordingGroup to true.

The recordingStrategy field is optional when you list resource types in the resourceTypes field of RecordingGroup.

The recordingStrategy field is required if you list resource types to exclude from recording in the resourceTypes field of ExclusionByResourceTypes.

If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the exclusionByResourceTypes field will override other properties in the request.

For example, even if you set includeGlobalResourceTypes to false, global resource types will still be automatically recorded in this option unless those resource types are specifically listed as exemptions in the resourceTypes field of exclusionByResourceTypes.

By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy, when Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types, Config starts recording resources of that type automatically.

" + "RecordingStrategy$useOnly": "

The recording strategy for the configuration recorder.

  • If you set this option to ALL_SUPPORTED_RESOURCE_TYPES, Config records configuration changes for all supported resource types, excluding the global IAM resource types. You also must set the allSupported field of RecordingGroup to true. When Config adds support for a new resource type, Config automatically starts recording resources of that type. For a list of supported resource types, see Supported Resource Types in the Config developer guide.

  • If you set this option to INCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for only the resource types that you specify in the resourceTypes field of RecordingGroup.

  • If you set this option to EXCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for all supported resource types, except the resource types that you specify to exclude from being recorded in the resourceTypes field of ExclusionByResourceTypes.

Required and optional fields

The recordingStrategy field is optional when you set the allSupported field of RecordingGroup to true.

The recordingStrategy field is optional when you list resource types in the resourceTypes field of RecordingGroup.

The recordingStrategy field is required if you list resource types to exclude from recording in the resourceTypes field of ExclusionByResourceTypes.

Overriding fields

If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the exclusionByResourceTypes field will override other properties in the request.

For example, even if you set includeGlobalResourceTypes to false, global IAM resource types will still be automatically recorded in this option unless those resource types are specifically listed as exclusions in the resourceTypes field of exclusionByResourceTypes.

Global resource types and the exclusion recording strategy

By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy, when Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types, Config starts recording resources of that type automatically.

Unless specifically listed as exclusions, AWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022. You cannot be record the global IAM resouce types in Regions supported by Config after February 2022. This list where you cannot record the global IAM resource types includes the following Regions:

  • Asia Pacific (Hyderabad)

  • Asia Pacific (Melbourne)

  • Europe (Spain)

  • Europe (Zurich)

  • Israel (Tel Aviv)

  • Middle East (UAE)

" } }, "ReevaluateConfigRuleNames": { @@ -3138,6 +3184,7 @@ "GetResourceConfigHistoryRequest$resourceType": "

The resource type.

", "ListAggregateDiscoveredResourcesRequest$ResourceType": "

The type of resources that you want Config to list in the response.

", "ListDiscoveredResourcesRequest$resourceType": "

The type of resources that you want Config to list in the response.

", + "RecordingModeResourceTypesList$member": null, "Relationship$resourceType": "

The resource type of the related resource.

", "ResourceCount$resourceType": "

The resource type (for example, \"AWS::EC2::Instance\").

", "ResourceCountFilters$ResourceType": "

The type of the Amazon Web Services resource.

", @@ -3150,7 +3197,7 @@ "base": null, "refs": { "ExclusionByResourceTypes$resourceTypes": "

A comma-separated list of resource types to exclude from recording by the configuration recorder.

", - "RecordingGroup$resourceTypes": "

A comma-separated list that specifies which resource types Config records.

Optionally, you can set the useOnly field of RecordingStrategy to INCLUSION_BY_RESOURCE_TYPES.

To record all configuration changes, set the allSupported field of RecordingGroup to true, and either omit this field or don't specify any resource types in this field. If you set the allSupported field to false and specify values for resourceTypes, when Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group.

For a list of valid resourceTypes values, see the Resource Type Value column in Supported Amazon Web Services resource Types in the Config developer guide.

Region Availability

Before specifying a resource type for Config to track, check Resource Coverage by Region Availability to see if the resource type is supported in the Amazon Web Services Region where you set up Config. If a resource type is supported by Config in at least one Region, you can enable the recording of that resource type in all Regions supported by Config, even if the specified resource type is not supported in the Amazon Web Services Region where you set up Config.

" + "RecordingGroup$resourceTypes": "

A comma-separated list that specifies which resource types Config records.

For a list of valid resourceTypes values, see the Resource Type Value column in Supported Amazon Web Services resource Types in the Config developer guide.

Required and optional fields

Optionally, you can set the useOnly field of RecordingStrategy to INCLUSION_BY_RESOURCE_TYPES.

To record all configuration changes, set the allSupported field of RecordingGroup to true, and either omit this field or don't specify any resource types in this field. If you set the allSupported field to false and specify values for resourceTypes, when Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group.

Region availability

Before specifying a resource type for Config to track, check Resource Coverage by Region Availability to see if the resource type is supported in the Amazon Web Services Region where you set up Config. If a resource type is supported by Config in at least one Region, you can enable the recording of that resource type in all Regions supported by Config, even if the specified resource type is not supported in the Amazon Web Services Region where you set up Config.

" } }, "ResourceTypeString": { @@ -3682,8 +3729,8 @@ "TemplateS3Uri": { "base": null, "refs": { - "PutConformancePackRequest$TemplateS3Uri": "

The location of the file containing the template body (s3://bucketname/prefix). The uri must point to a conformance pack template (max size: 300 KB) that is located in an Amazon S3 bucket in the same Region as the conformance pack.

You must have access to read Amazon S3 bucket.

", - "PutOrganizationConformancePackRequest$TemplateS3Uri": "

Location of file containing the template body. The uri must point to the conformance pack template (max size: 300 KB).

You must have access to read Amazon S3 bucket.

" + "PutConformancePackRequest$TemplateS3Uri": "

The location of the file containing the template body (s3://bucketname/prefix). The uri must point to a conformance pack template (max size: 300 KB) that is located in an Amazon S3 bucket in the same Region as the conformance pack.

You must have access to read Amazon S3 bucket. In addition, in order to ensure a successful deployment, the template object must not be in an archived storage class if this parameter is passed.

", + "PutOrganizationConformancePackRequest$TemplateS3Uri": "

Location of file containing the template body. The uri must point to the conformance pack template (max size: 300 KB).

You must have access to read Amazon S3 bucket. In addition, in order to ensure a successful deployment, the template object must not be in an archived storage class if this parameter is passed.

" } }, "TemplateSSMDocumentDetails": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/config/2014-11-12/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/config/2014-11-12/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/config/2014-11-12/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/config/2014-11-12/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -29,6 +29,22 @@ {"shape":"ResourceConflictException"} ] }, + "AssociateAnalyticsDataSet":{ + "name":"AssociateAnalyticsDataSet", + "http":{ + "method":"PUT", + "requestUri":"/analytics-data/instance/{InstanceId}/association" + }, + "input":{"shape":"AssociateAnalyticsDataSetRequest"}, + "output":{"shape":"AssociateAnalyticsDataSetResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "AssociateApprovedOrigin":{ "name":"AssociateApprovedOrigin", "http":{ @@ -79,6 +95,23 @@ {"shape":"AccessDeniedException"} ] }, + "AssociateFlow":{ + "name":"AssociateFlow", + "http":{ + "method":"PUT", + "requestUri":"/flow-associations/{InstanceId}" + }, + "input":{"shape":"AssociateFlowRequest"}, + "output":{"shape":"AssociateFlowResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ThrottlingException"} + ] + }, "AssociateInstanceStorageConfig":{ "name":"AssociateInstanceStorageConfig", "http":{ @@ -212,6 +245,73 @@ ], "idempotent":true }, + "BatchAssociateAnalyticsDataSet":{ + "name":"BatchAssociateAnalyticsDataSet", + "http":{ + "method":"PUT", + "requestUri":"/analytics-data/instance/{InstanceId}/associations" + }, + "input":{"shape":"BatchAssociateAnalyticsDataSetRequest"}, + "output":{"shape":"BatchAssociateAnalyticsDataSetResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, + "BatchDisassociateAnalyticsDataSet":{ + "name":"BatchDisassociateAnalyticsDataSet", + "http":{ + "method":"POST", + "requestUri":"/analytics-data/instance/{InstanceId}/associations" + }, + "input":{"shape":"BatchDisassociateAnalyticsDataSetRequest"}, + "output":{"shape":"BatchDisassociateAnalyticsDataSetResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, + "BatchGetFlowAssociation":{ + "name":"BatchGetFlowAssociation", + "http":{ + "method":"POST", + "requestUri":"/flow-associations-batch/{InstanceId}" + }, + "input":{"shape":"BatchGetFlowAssociationRequest"}, + "output":{"shape":"BatchGetFlowAssociationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ThrottlingException"} + ] + }, + "BatchPutContact":{ + "name":"BatchPutContact", + "http":{ + "method":"PUT", + "requestUri":"/contact/batch/{InstanceId}" + }, + "input":{"shape":"BatchPutContactRequest"}, + "output":{"shape":"BatchPutContactResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"IdempotencyException"} + ], + "idempotent":true + }, "ClaimPhoneNumber":{ "name":"ClaimPhoneNumber", "http":{ @@ -371,6 +471,23 @@ {"shape":"ThrottlingException"} ] }, + "CreatePersistentContactAssociation":{ + "name":"CreatePersistentContactAssociation", + "http":{ + "method":"POST", + "requestUri":"/contact/persistent-contact-association/{InstanceId}/{InitialContactId}" + }, + "input":{"shape":"CreatePersistentContactAssociationRequest"}, + "output":{"shape":"CreatePersistentContactAssociationResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "CreatePrompt":{ "name":"CreatePrompt", "http":{ @@ -1340,6 +1457,21 @@ {"shape":"AccessDeniedException"} ] }, + "DisassociateAnalyticsDataSet":{ + "name":"DisassociateAnalyticsDataSet", + "http":{ + "method":"POST", + "requestUri":"/analytics-data/instance/{InstanceId}/association" + }, + "input":{"shape":"DisassociateAnalyticsDataSetRequest"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "DisassociateApprovedOrigin":{ "name":"DisassociateApprovedOrigin", "http":{ @@ -1369,6 +1501,23 @@ {"shape":"ThrottlingException"} ] }, + "DisassociateFlow":{ + "name":"DisassociateFlow", + "http":{ + "method":"DELETE", + "requestUri":"/flow-associations/{InstanceId}/{ResourceId}/{ResourceType}" + }, + "input":{"shape":"DisassociateFlowRequest"}, + "output":{"shape":"DisassociateFlowResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ThrottlingException"} + ] + }, "DisassociateInstanceStorageConfig":{ "name":"DisassociateInstanceStorageConfig", "http":{ @@ -1572,6 +1721,23 @@ {"shape":"DuplicateResourceException"} ] }, + "GetFlowAssociation":{ + "name":"GetFlowAssociation", + "http":{ + "method":"GET", + "requestUri":"/flow-associations/{InstanceId}/{ResourceId}/{ResourceType}" + }, + "input":{"shape":"GetFlowAssociationRequest"}, + "output":{"shape":"GetFlowAssociationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ThrottlingException"} + ] + }, "GetMetricData":{ "name":"GetMetricData", "http":{ @@ -1652,6 +1818,23 @@ {"shape":"ThrottlingException"} ] }, + "ImportPhoneNumber":{ + "name":"ImportPhoneNumber", + "http":{ + "method":"POST", + "requestUri":"/phone-number/import" + }, + "input":{"shape":"ImportPhoneNumberRequest"}, + "output":{"shape":"ImportPhoneNumberResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"}, + {"shape":"IdempotencyException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListAgentStatuses":{ "name":"ListAgentStatuses", "http":{ @@ -1668,6 +1851,22 @@ {"shape":"InternalServiceException"} ] }, + "ListAnalyticsDataAssociations":{ + "name":"ListAnalyticsDataAssociations", + "http":{ + "method":"GET", + "requestUri":"/analytics-data/instance/{InstanceId}/association" + }, + "input":{"shape":"ListAnalyticsDataAssociationsRequest"}, + "output":{"shape":"ListAnalyticsDataAssociationsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "ListApprovedOrigins":{ "name":"ListApprovedOrigins", "http":{ @@ -1808,6 +2007,23 @@ {"shape":"InternalServiceException"} ] }, + "ListFlowAssociations":{ + "name":"ListFlowAssociations", + "http":{ + "method":"GET", + "requestUri":"/flow-associations-summary/{InstanceId}" + }, + "input":{"shape":"ListFlowAssociationsRequest"}, + "output":{"shape":"ListFlowAssociationsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ThrottlingException"} + ] + }, "ListHoursOfOperations":{ "name":"ListHoursOfOperations", "http":{ @@ -2012,6 +2228,23 @@ {"shape":"InternalServiceException"} ] }, + "ListRealtimeContactAnalysisSegmentsV2":{ + "name":"ListRealtimeContactAnalysisSegmentsV2", + "http":{ + "method":"POST", + "requestUri":"/contact/list-real-time-analysis-segments-v2/{InstanceId}/{ContactId}" + }, + "input":{"shape":"ListRealtimeContactAnalysisSegmentsV2Request"}, + "output":{"shape":"ListRealtimeContactAnalysisSegmentsV2Response"}, + "errors":[ + {"shape":"OutputTypeNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InternalServiceException"}, + {"shape":"ThrottlingException"} + ] + }, "ListRoutingProfileQueues":{ "name":"ListRoutingProfileQueues", "http":{ @@ -2076,6 +2309,22 @@ {"shape":"ThrottlingException"} ] }, + "ListSecurityProfileApplications":{ + "name":"ListSecurityProfileApplications", + "http":{ + "method":"GET", + "requestUri":"/security-profiles-applications/{InstanceId}/{SecurityProfileId}" + }, + "input":{"shape":"ListSecurityProfileApplicationsRequest"}, + "output":{"shape":"ListSecurityProfileApplicationsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "ListSecurityProfilePermissions":{ "name":"ListSecurityProfilePermissions", "http":{ @@ -2496,6 +2745,22 @@ {"shape":"AccessDeniedException"} ] }, + "SendChatIntegrationEvent":{ + "name":"SendChatIntegrationEvent", + "http":{ + "method":"POST", + "requestUri":"/chat-integration-event" + }, + "input":{"shape":"SendChatIntegrationEventRequest"}, + "output":{"shape":"SendChatIntegrationEventResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, "StartChatContact":{ "name":"StartChatContact", "http":{ @@ -2596,6 +2861,22 @@ {"shape":"InternalServiceException"} ] }, + "StartWebRTCContact":{ + "name":"StartWebRTCContact", + "http":{ + "method":"PUT", + "requestUri":"/contact/webrtc" + }, + "input":{"shape":"StartWebRTCContactRequest"}, + "output":{"shape":"StartWebRTCContactResponse"}, + "errors":[ + {"shape":"InternalServiceException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "StopContact":{ "name":"StopContact", "http":{ @@ -2985,6 +3266,24 @@ {"shape":"AccessDeniedException"} ] }, + "UpdatePhoneNumberMetadata":{ + "name":"UpdatePhoneNumberMetadata", + "http":{ + "method":"PUT", + "requestUri":"/phone-number/{PhoneNumberId}/metadata" + }, + "input":{"shape":"UpdatePhoneNumberMetadataRequest"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceInUseException"}, + {"shape":"IdempotencyException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "UpdatePrompt":{ "name":"UpdatePrompt", "http":{ @@ -3395,6 +3694,7 @@ }, "shapes":{ "ARN":{"type":"string"}, + "AWSAccountId":{"type":"string"}, "AccessDeniedException":{ "type":"structure", "members":{ @@ -3523,7 +3823,9 @@ "Type":{"shape":"AgentStatusType"}, "DisplayOrder":{"shape":"AgentStatusOrderNumber"}, "State":{"shape":"AgentStatusState"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "AgentStatusDescription":{ @@ -3563,7 +3865,9 @@ "Id":{"shape":"AgentStatusId"}, "Arn":{"shape":"ARN"}, "Name":{"shape":"AgentStatusName"}, - "Type":{"shape":"AgentStatusType"} + "Type":{"shape":"AgentStatusType"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "AgentStatusSummaryList":{ @@ -3605,11 +3909,31 @@ "value":{"shape":"SecurityProfilePolicyValue"}, "max":2 }, + "AllowedCapabilities":{ + "type":"structure", + "members":{ + "Customer":{"shape":"ParticipantCapabilities"}, + "Agent":{"shape":"ParticipantCapabilities"} + } + }, "AllowedMonitorCapabilities":{ "type":"list", "member":{"shape":"MonitorCapability"}, "max":2 }, + "AnalyticsDataAssociationResult":{ + "type":"structure", + "members":{ + "DataSetId":{"shape":"DataSetId"}, + "TargetAccountId":{"shape":"AWSAccountId"}, + "ResourceShareId":{"shape":"String"}, + "ResourceShareArn":{"shape":"ARN"} + } + }, + "AnalyticsDataAssociationResults":{ + "type":"list", + "member":{"shape":"AnalyticsDataAssociationResult"} + }, "AnswerMachineDetectionConfig":{ "type":"structure", "members":{ @@ -3617,12 +3941,68 @@ "AwaitAnswerMachinePrompt":{"shape":"Boolean"} } }, + "Application":{ + "type":"structure", + "members":{ + "Namespace":{"shape":"Namespace"}, + "ApplicationPermissions":{"shape":"ApplicationPermissions"} + } + }, + "ApplicationPermissions":{ + "type":"list", + "member":{"shape":"Permission"}, + "max":10, + "min":1 + }, + "Applications":{ + "type":"list", + "member":{"shape":"Application"}, + "max":10 + }, "ApproximateTotalCount":{"type":"long"}, + "ArtifactId":{ + "type":"string", + "max":256, + "min":1 + }, + "ArtifactStatus":{ + "type":"string", + "enum":[ + "APPROVED", + "REJECTED", + "IN_PROGRESS" + ] + }, "AssignContactCategoryActionDefinition":{ "type":"structure", "members":{ } }, + "AssociateAnalyticsDataSetRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "DataSetId" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "DataSetId":{"shape":"DataSetId"}, + "TargetAccountId":{"shape":"AWSAccountId"} + } + }, + "AssociateAnalyticsDataSetResponse":{ + "type":"structure", + "members":{ + "DataSetId":{"shape":"DataSetId"}, + "TargetAccountId":{"shape":"AWSAccountId"}, + "ResourceShareId":{"shape":"String"}, + "ResourceShareArn":{"shape":"ARN"} + } + }, "AssociateApprovedOriginRequest":{ "type":"structure", "required":[ @@ -3676,6 +4056,30 @@ "members":{ } }, + "AssociateFlowRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "ResourceId", + "FlowId", + "ResourceType" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ResourceId":{"shape":"ARN"}, + "FlowId":{"shape":"ARN"}, + "ResourceType":{"shape":"FlowAssociationResourceType"} + } + }, + "AssociateFlowResponse":{ + "type":"structure", + "members":{ + } + }, "AssociateInstanceStorageConfigRequest":{ "type":"structure", "required":[ @@ -3836,6 +4240,11 @@ "max":100, "min":1 }, + "AttachmentName":{ + "type":"string", + "max":256, + "min":1 + }, "AttachmentReference":{ "type":"structure", "members":{ @@ -3844,6 +4253,14 @@ "Status":{"shape":"ReferenceStatus"} } }, + "Attendee":{ + "type":"structure", + "members":{ + "AttendeeId":{"shape":"AttendeeId"}, + "JoinToken":{"shape":"JoinToken"} + } + }, + "AttendeeId":{"type":"string"}, "Attribute":{ "type":"structure", "members":{ @@ -3870,6 +4287,12 @@ "type":"list", "member":{"shape":"Attribute"} }, + "AudioFeatures":{ + "type":"structure", + "members":{ + "EchoReduction":{"shape":"MeetingFeatureStatus"} + } + }, "AutoAccept":{"type":"boolean"}, "AvailableNumberSummary":{ "type":"structure", @@ -3889,6 +4312,100 @@ "min":8, "pattern":"[a-z]{2}(-[a-z]+){1,2}(-[0-9])?" }, + "BatchAssociateAnalyticsDataSetRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "DataSetIds" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "DataSetIds":{"shape":"DataSetIds"}, + "TargetAccountId":{"shape":"AWSAccountId"} + } + }, + "BatchAssociateAnalyticsDataSetResponse":{ + "type":"structure", + "members":{ + "Created":{"shape":"AnalyticsDataAssociationResults"}, + "Errors":{"shape":"ErrorResults"} + } + }, + "BatchDisassociateAnalyticsDataSetRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "DataSetIds" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "DataSetIds":{"shape":"DataSetIds"}, + "TargetAccountId":{"shape":"AWSAccountId"} + } + }, + "BatchDisassociateAnalyticsDataSetResponse":{ + "type":"structure", + "members":{ + "Deleted":{"shape":"DataSetIds"}, + "Errors":{"shape":"ErrorResults"} + } + }, + "BatchGetFlowAssociationRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "ResourceIds" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ResourceIds":{"shape":"resourceArnListMaxLimit100"}, + "ResourceType":{"shape":"ListFlowAssociationResourceType"} + } + }, + "BatchGetFlowAssociationResponse":{ + "type":"structure", + "members":{ + "FlowAssociationSummaryList":{"shape":"FlowAssociationSummaryList"} + } + }, + "BatchPutContactRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "ContactDataRequestList" + ], + "members":{ + "ClientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ContactDataRequestList":{"shape":"ContactDataRequestList"} + } + }, + "BatchPutContactResponse":{ + "type":"structure", + "members":{ + "SuccessfulRequestList":{"shape":"SuccessfulRequestList"}, + "FailedRequestList":{"shape":"FailedRequestList"} + } + }, "BehaviorType":{ "type":"string", "enum":[ @@ -3901,15 +4418,18 @@ "type":"string", "max":50 }, - "BoxedBoolean":{ - "type":"boolean", - "box":true - }, + "BoxedBoolean":{"type":"boolean"}, "BucketName":{ "type":"string", "max":128, "min":1 }, + "Campaign":{ + "type":"structure", + "members":{ + "CampaignId":{"shape":"CampaignId"} + } + }, "CampaignId":{ "type":"string", "max":100, @@ -3948,6 +4468,23 @@ "max":10080, "min":60 }, + "ChatEvent":{ + "type":"structure", + "required":["Type"], + "members":{ + "Type":{"shape":"ChatEventType"}, + "ContentType":{"shape":"ChatContentType"}, + "Content":{"shape":"ChatContent"} + } + }, + "ChatEventType":{ + "type":"string", + "enum":[ + "DISCONNECT", + "MESSAGE", + "EVENT" + ] + }, "ChatMessage":{ "type":"structure", "required":[ @@ -3980,12 +4517,10 @@ }, "ClaimPhoneNumberRequest":{ "type":"structure", - "required":[ - "TargetArn", - "PhoneNumber" - ], + "required":["PhoneNumber"], "members":{ "TargetArn":{"shape":"ARN"}, + "InstanceId":{"shape":"InstanceId"}, "PhoneNumber":{"shape":"PhoneNumber"}, "PhoneNumberDescription":{"shape":"PhoneNumberDescription"}, "Tags":{"shape":"TagMap"}, @@ -4012,8 +4547,10 @@ "PhoneNumberType":{"shape":"PhoneNumberType"}, "PhoneNumberDescription":{"shape":"PhoneNumberDescription"}, "TargetArn":{"shape":"ARN"}, + "InstanceId":{"shape":"InstanceId"}, "Tags":{"shape":"TagMap"}, - "PhoneNumberStatus":{"shape":"PhoneNumberStatus"} + "PhoneNumberStatus":{"shape":"PhoneNumberStatus"}, + "SourcePhoneNumberArn":{"shape":"ARN"} } }, "ClientToken":{ @@ -4034,6 +4571,13 @@ "max":10, "min":1 }, + "ConnectionData":{ + "type":"structure", + "members":{ + "Attendee":{"shape":"Attendee"}, + "Meeting":{"shape":"Meeting"} + } + }, "Contact":{ "type":"structure", "members":{ @@ -4055,6 +4599,23 @@ "WisdomInfo":{"shape":"WisdomInfo"} } }, + "ContactDataRequest":{ + "type":"structure", + "members":{ + "SystemEndpoint":{"shape":"Endpoint"}, + "CustomerEndpoint":{"shape":"Endpoint"}, + "RequestIdentifier":{"shape":"RequestIdentifier"}, + "QueueId":{"shape":"QueueId"}, + "Attributes":{"shape":"Attributes"}, + "Campaign":{"shape":"Campaign"} + } + }, + "ContactDataRequestList":{ + "type":"list", + "member":{"shape":"ContactDataRequest"}, + "max":25, + "min":1 + }, "ContactFilter":{ "type":"structure", "members":{ @@ -4250,6 +4811,11 @@ "max":1024, "min":1 }, + "ContentType":{ + "type":"string", + "max":255, + "min":1 + }, "ControlPlaneTagFilter":{ "type":"structure", "members":{ @@ -4421,7 +4987,8 @@ "InstanceAlias":{"shape":"DirectoryAlias"}, "DirectoryId":{"shape":"DirectoryId"}, "InboundCallsEnabled":{"shape":"InboundCallsEnabled"}, - "OutboundCallsEnabled":{"shape":"OutboundCallsEnabled"} + "OutboundCallsEnabled":{"shape":"OutboundCallsEnabled"}, + "Tags":{"shape":"TagMap"} } }, "CreateInstanceResponse":{ @@ -4483,6 +5050,36 @@ "ParticipantId":{"shape":"ParticipantId"} } }, + "CreatePersistentContactAssociationRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "InitialContactId", + "RehydrationType", + "SourceContactId" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "InitialContactId":{ + "shape":"ContactId", + "location":"uri", + "locationName":"InitialContactId" + }, + "RehydrationType":{"shape":"RehydrationType"}, + "SourceContactId":{"shape":"ContactId"}, + "ClientToken":{"shape":"ClientToken"} + } + }, + "CreatePersistentContactAssociationResponse":{ + "type":"structure", + "members":{ + "ContinuedFromContactId":{"shape":"ContactId"} + } + }, "CreatePromptRequest":{ "type":"structure", "required":[ @@ -4659,7 +5256,8 @@ }, "Tags":{"shape":"TagMap"}, "AllowedAccessControlTags":{"shape":"AllowedAccessControlTags"}, - "TagRestrictedResources":{"shape":"TagRestrictedResourceList"} + "TagRestrictedResources":{"shape":"TagRestrictedResourceList"}, + "Applications":{"shape":"Applications"} } }, "CreateSecurityProfileResponse":{ @@ -4991,6 +5589,15 @@ "type":"list", "member":{"shape":"CurrentMetric"} }, + "DataSetId":{ + "type":"string", + "max":255, + "min":1 + }, + "DataSetIds":{ + "type":"list", + "member":{"shape":"DataSetId"} + }, "DateReference":{ "type":"structure", "members":{ @@ -5142,6 +5749,7 @@ }, "EvaluationFormVersion":{ "shape":"VersionNumber", + "box":true, "location":"querystring", "locationName":"version" } @@ -5648,6 +6256,7 @@ }, "EvaluationFormVersion":{ "shape":"VersionNumber", + "box":true, "location":"querystring", "locationName":"version" } @@ -6072,6 +6681,11 @@ "min":1, "pattern":"(^[\\S].*[\\S]$)|(^[\\S]$)" }, + "DestinationId":{ + "type":"string", + "max":255, + "min":1 + }, "DestinationNotAllowedException":{ "type":"structure", "members":{ @@ -6117,6 +6731,22 @@ ] }, "DirectoryUserId":{"type":"string"}, + "DisassociateAnalyticsDataSetRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "DataSetId" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "DataSetId":{"shape":"DataSetId"}, + "TargetAccountId":{"shape":"AWSAccountId"} + } + }, "DisassociateApprovedOriginRequest":{ "type":"structure", "required":[ @@ -6149,6 +6779,36 @@ "LexV2Bot":{"shape":"LexV2Bot"} } }, + "DisassociateFlowRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "ResourceId", + "ResourceType" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ResourceId":{ + "shape":"ARN", + "location":"uri", + "locationName":"ResourceId" + }, + "ResourceType":{ + "shape":"FlowAssociationResourceType", + "location":"uri", + "locationName":"ResourceType" + } + } + }, + "DisassociateFlowResponse":{ + "type":"structure", + "members":{ + } + }, "DisassociateInstanceStorageConfigRequest":{ "type":"structure", "required":[ @@ -6328,6 +6988,13 @@ "members":{ } }, + "DisconnectReason":{ + "type":"structure", + "members":{ + "Code":{"shape":"DisconnectReasonCode"} + } + }, + "DisconnectReasonCode":{"type":"string"}, "DismissUserContactRequest":{ "type":"structure", "required":[ @@ -6405,6 +7072,37 @@ "type":"string", "enum":["KMS"] }, + "Endpoint":{ + "type":"structure", + "members":{ + "Type":{"shape":"EndpointType"}, + "Address":{"shape":"EndpointAddress"} + } + }, + "EndpointAddress":{ + "type":"string", + "max":256, + "min":0 + }, + "EndpointType":{ + "type":"string", + "enum":[ + "TELEPHONE_NUMBER", + "VOIP", + "CONTACT_FLOW" + ] + }, + "ErrorResult":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"String"}, + "ErrorMessage":{"shape":"String"} + } + }, + "ErrorResults":{ + "type":"list", + "member":{"shape":"ErrorResult"} + }, "Evaluation":{ "type":"structure", "required":[ @@ -6761,7 +7459,10 @@ "LastActivatedTime":{"shape":"Timestamp"}, "LastActivatedBy":{"shape":"ARN"}, "LatestVersion":{"shape":"VersionNumber"}, - "ActiveVersion":{"shape":"VersionNumber"} + "ActiveVersion":{ + "shape":"VersionNumber", + "box":true + } } }, "EvaluationFormSummaryList":{ @@ -6911,6 +7612,7 @@ "enum":[ "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", + "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", @@ -6919,6 +7621,33 @@ "OnMetricDataUpdate" ] }, + "FailedRequest":{ + "type":"structure", + "members":{ + "RequestIdentifier":{"shape":"RequestIdentifier"}, + "FailureReasonCode":{"shape":"FailureReasonCode"}, + "FailureReasonMessage":{"shape":"String"} + } + }, + "FailedRequestList":{ + "type":"list", + "member":{"shape":"FailedRequest"} + }, + "FailureReasonCode":{ + "type":"string", + "enum":[ + "INVALID_ATTRIBUTE_KEY", + "INVALID_CUSTOMER_ENDPOINT", + "INVALID_SYSTEM_ENDPOINT", + "INVALID_QUEUE", + "MISSING_CAMPAIGN", + "MISSING_CUSTOMER_ENDPOINT", + "MISSING_QUEUE_ID_AND_SYSTEM_ENDPOINT", + "REQUEST_THROTTLED", + "IDEMPOTENCY_EXCEPTION", + "INTERNAL_ERROR" + ] + }, "FilterV2":{ "type":"structure", "members":{ @@ -6946,6 +7675,22 @@ "max":5, "min":1 }, + "FlowAssociationResourceType":{ + "type":"string", + "enum":["SMS_PHONE_NUMBER"] + }, + "FlowAssociationSummary":{ + "type":"structure", + "members":{ + "ResourceId":{"shape":"ARN"}, + "FlowId":{"shape":"ARN"}, + "ResourceType":{"shape":"ListFlowAssociationResourceType"} + } + }, + "FlowAssociationSummaryList":{ + "type":"list", + "member":{"shape":"FlowAssociationSummary"} + }, "FunctionArn":{ "type":"string", "max":140, @@ -7061,6 +7806,39 @@ "UserId":{"shape":"AgentResourceId"} } }, + "GetFlowAssociationRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "ResourceId", + "ResourceType" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ResourceId":{ + "shape":"ARN", + "location":"uri", + "locationName":"ResourceId" + }, + "ResourceType":{ + "shape":"FlowAssociationResourceType", + "location":"uri", + "locationName":"ResourceType" + } + } + }, + "GetFlowAssociationResponse":{ + "type":"structure", + "members":{ + "ResourceId":{"shape":"ARN"}, + "FlowId":{"shape":"ARN"}, + "ResourceType":{"shape":"FlowAssociationResourceType"} + } + }, "GetMetricDataRequest":{ "type":"structure", "required":[ @@ -7108,6 +7886,7 @@ "ResourceArn":{"shape":"ARN"}, "StartTime":{"shape":"Timestamp"}, "EndTime":{"shape":"Timestamp"}, + "Interval":{"shape":"IntervalDetails"}, "Filters":{"shape":"FiltersV2List"}, "Groupings":{"shape":"GroupingsV2"}, "Metrics":{"shape":"MetricsV2"}, @@ -7147,7 +7926,9 @@ "GetPromptFileResponse":{ "type":"structure", "members":{ - "PromptPresignedUrl":{"shape":"PromptPresignedUrl"} + "PromptPresignedUrl":{"shape":"PromptPresignedUrl"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "GetTaskTemplateRequest":{ @@ -7245,7 +8026,9 @@ "Name":{"shape":"HierarchyGroupName"}, "LevelId":{"shape":"HierarchyLevelId"}, "HierarchyPath":{"shape":"HierarchyPath"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "HierarchyGroupCondition":{ @@ -7269,7 +8052,9 @@ "members":{ "Id":{"shape":"HierarchyGroupId"}, "Arn":{"shape":"ARN"}, - "Name":{"shape":"HierarchyGroupName"} + "Name":{"shape":"HierarchyGroupName"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "HierarchyGroupSummaryList":{ @@ -7288,7 +8073,9 @@ "members":{ "Id":{"shape":"HierarchyLevelId"}, "Arn":{"shape":"ARN"}, - "Name":{"shape":"HierarchyLevelName"} + "Name":{"shape":"HierarchyLevelName"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "HierarchyLevelId":{"type":"string"}, @@ -7430,7 +8217,9 @@ "Description":{"shape":"HoursOfOperationDescription"}, "TimeZone":{"shape":"TimeZone"}, "Config":{"shape":"HoursOfOperationConfigList"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "HoursOfOperationConfig":{ @@ -7498,7 +8287,9 @@ "members":{ "Id":{"shape":"HoursOfOperationId"}, "Arn":{"shape":"ARN"}, - "Name":{"shape":"HoursOfOperationName"} + "Name":{"shape":"HoursOfOperationName"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "HoursOfOperationSummaryList":{ @@ -7531,6 +8322,30 @@ "error":{"httpStatusCode":409}, "exception":true }, + "ImportPhoneNumberRequest":{ + "type":"structure", + "required":[ + "InstanceId", + "SourcePhoneNumberArn" + ], + "members":{ + "InstanceId":{"shape":"InstanceId"}, + "SourcePhoneNumberArn":{"shape":"ARN"}, + "PhoneNumberDescription":{"shape":"PhoneNumberDescription"}, + "Tags":{"shape":"TagMap"}, + "ClientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "ImportPhoneNumberResponse":{ + "type":"structure", + "members":{ + "PhoneNumberId":{"shape":"PhoneNumberId"}, + "PhoneNumberArn":{"shape":"ARN"} + } + }, "InboundCallsEnabled":{"type":"boolean"}, "Instance":{ "type":"structure", @@ -7545,7 +8360,8 @@ "StatusReason":{"shape":"InstanceStatusReason"}, "InboundCallsEnabled":{"shape":"InboundCallsEnabled"}, "OutboundCallsEnabled":{"shape":"OutboundCallsEnabled"}, - "InstanceAccessUrl":{"shape":"Url"} + "InstanceAccessUrl":{"shape":"Url"}, + "Tags":{"shape":"TagMap"} } }, "InstanceArn":{ @@ -7682,7 +8498,10 @@ "PINPOINT_APP", "WISDOM_ASSISTANT", "WISDOM_KNOWLEDGE_BASE", - "CASES_DOMAIN" + "WISDOM_QUICK_RESPONSES", + "CASES_DOMAIN", + "APPLICATION", + "FILE_SCANNER" ] }, "InternalServiceException":{ @@ -7693,6 +8512,24 @@ "error":{"httpStatusCode":500}, "exception":true }, + "IntervalDetails":{ + "type":"structure", + "members":{ + "TimeZone":{"shape":"String"}, + "IntervalPeriod":{"shape":"IntervalPeriod"} + } + }, + "IntervalPeriod":{ + "type":"string", + "enum":[ + "FIFTEEN_MIN", + "THIRTY_MIN", + "HOUR", + "DAY", + "WEEK", + "TOTAL" + ] + }, "InvalidContactFlowException":{ "type":"structure", "members":{ @@ -7735,6 +8572,10 @@ "type":"list", "member":{"shape":"InvisibleFieldInfo"} }, + "JoinToken":{ + "type":"string", + "sensitive":true + }, "KeyId":{ "type":"string", "max":128, @@ -7857,6 +8698,39 @@ "AgentStatusSummaryList":{"shape":"AgentStatusSummaryList"} } }, + "ListAnalyticsDataAssociationsRequest":{ + "type":"structure", + "required":["InstanceId"], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "DataSetId":{ + "shape":"DataSetId", + "location":"querystring", + "locationName":"DataSetId" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResult1000", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListAnalyticsDataAssociationsResponse":{ + "type":"structure", + "members":{ + "Results":{"shape":"AnalyticsDataAssociationResults"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListApprovedOriginsRequest":{ "type":"structure", "required":["InstanceId"], @@ -8149,6 +9023,44 @@ "NextToken":{"shape":"NextToken"} } }, + "ListFlowAssociationResourceType":{ + "type":"string", + "enum":["VOICE_PHONE_NUMBER"] + }, + "ListFlowAssociationsRequest":{ + "type":"structure", + "required":["InstanceId"], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ResourceType":{ + "shape":"ListFlowAssociationResourceType", + "location":"querystring", + "locationName":"ResourceType" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResult1000", + "box":true, + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListFlowAssociationsResponse":{ + "type":"structure", + "members":{ + "FlowAssociationSummaryList":{"shape":"FlowAssociationSummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListHoursOfOperationsRequest":{ "type":"structure", "required":["InstanceId"], @@ -8290,6 +9202,11 @@ "box":true, "location":"querystring", "locationName":"maxResults" + }, + "IntegrationArn":{ + "shape":"ARN", + "location":"querystring", + "locationName":"integrationArn" } } }, @@ -8404,7 +9321,10 @@ "PhoneNumber":{"shape":"PhoneNumber"}, "PhoneNumberCountryCode":{"shape":"PhoneNumberCountryCode"}, "PhoneNumberType":{"shape":"PhoneNumberType"}, - "TargetArn":{"shape":"ARN"} + "TargetArn":{"shape":"ARN"}, + "InstanceId":{"shape":"InstanceId"}, + "PhoneNumberDescription":{"shape":"PhoneNumberDescription"}, + "SourcePhoneNumberArn":{"shape":"ARN"} } }, "ListPhoneNumbersSummaryList":{ @@ -8415,6 +9335,7 @@ "type":"structure", "members":{ "TargetArn":{"shape":"ARN"}, + "InstanceId":{"shape":"InstanceId"}, "MaxResults":{ "shape":"MaxResult1000", "box":true @@ -8495,7 +9416,9 @@ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"}, - "QuickConnectSummaryList":{"shape":"QuickConnectSummaryList"} + "QuickConnectSummaryList":{"shape":"QuickConnectSummaryList"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "ListQueuesRequest":{ @@ -8565,6 +9488,45 @@ "NextToken":{"shape":"NextToken"} } }, + "ListRealtimeContactAnalysisSegmentsV2Request":{ + "type":"structure", + "required":[ + "InstanceId", + "ContactId", + "OutputType", + "SegmentTypes" + ], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "ContactId":{ + "shape":"ContactId", + "location":"uri", + "locationName":"ContactId" + }, + "MaxResults":{"shape":"MaxResult100"}, + "NextToken":{"shape":"LargeNextToken"}, + "OutputType":{"shape":"RealTimeContactAnalysisOutputType"}, + "SegmentTypes":{"shape":"RealTimeContactAnalysisSegmentTypes"} + } + }, + "ListRealtimeContactAnalysisSegmentsV2Response":{ + "type":"structure", + "required":[ + "Channel", + "Status", + "Segments" + ], + "members":{ + "Channel":{"shape":"RealTimeContactAnalysisSupportedChannel"}, + "Status":{"shape":"RealTimeContactAnalysisStatus"}, + "Segments":{"shape":"RealtimeContactAnalysisSegments"}, + "NextToken":{"shape":"LargeNextToken"} + } + }, "ListRoutingProfileQueuesRequest":{ "type":"structure", "required":[ @@ -8599,7 +9561,9 @@ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"}, - "RoutingProfileQueueConfigSummaryList":{"shape":"RoutingProfileQueueConfigSummaryList"} + "RoutingProfileQueueConfigSummaryList":{"shape":"RoutingProfileQueueConfigSummaryList"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "ListRoutingProfilesRequest":{ @@ -8700,6 +9664,44 @@ "NextToken":{"shape":"NextToken"} } }, + "ListSecurityProfileApplicationsRequest":{ + "type":"structure", + "required":[ + "SecurityProfileId", + "InstanceId" + ], + "members":{ + "SecurityProfileId":{ + "shape":"SecurityProfileId", + "location":"uri", + "locationName":"SecurityProfileId" + }, + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResult1000", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListSecurityProfileApplicationsResponse":{ + "type":"structure", + "members":{ + "Applications":{"shape":"Applications"}, + "NextToken":{"shape":"NextToken"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} + } + }, "ListSecurityProfilePermissionsRequest":{ "type":"structure", "required":[ @@ -8734,7 +9736,9 @@ "type":"structure", "members":{ "Permissions":{"shape":"PermissionsList"}, - "NextToken":{"shape":"NextToken"} + "NextToken":{"shape":"NextToken"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "ListSecurityProfilesRequest":{ @@ -9109,6 +10113,40 @@ "CrossChannelBehavior":{"shape":"CrossChannelBehavior"} } }, + "MediaPlacement":{ + "type":"structure", + "members":{ + "AudioHostUrl":{"shape":"URI"}, + "AudioFallbackUrl":{"shape":"URI"}, + "SignalingUrl":{"shape":"URI"}, + "TurnControlUrl":{"shape":"URI"}, + "EventIngestionUrl":{"shape":"URI"} + } + }, + "MediaRegion":{"type":"string"}, + "Meeting":{ + "type":"structure", + "members":{ + "MediaRegion":{"shape":"MediaRegion"}, + "MediaPlacement":{"shape":"MediaPlacement"}, + "MeetingFeatures":{"shape":"MeetingFeaturesConfiguration"}, + "MeetingId":{"shape":"MeetingId"} + } + }, + "MeetingFeatureStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "UNAVAILABLE" + ] + }, + "MeetingFeaturesConfiguration":{ + "type":"structure", + "members":{ + "Audio":{"shape":"AudioFeatures"} + } + }, + "MeetingId":{"type":"string"}, "Message":{"type":"string"}, "MetricDataCollectionsV2":{ "type":"list", @@ -9128,7 +10166,8 @@ "type":"structure", "members":{ "MetricFilterKey":{"shape":"String"}, - "MetricFilterValues":{"shape":"MetricFilterValueList"} + "MetricFilterValues":{"shape":"MetricFilterValueList"}, + "Negate":{"shape":"Boolean"} } }, "MetricFilterValueList":{ @@ -9142,11 +10181,20 @@ "member":{"shape":"MetricFilterV2"}, "max":2 }, + "MetricInterval":{ + "type":"structure", + "members":{ + "Interval":{"shape":"IntervalPeriod"}, + "StartTime":{"shape":"Timestamp"}, + "EndTime":{"shape":"Timestamp"} + } + }, "MetricNameV2":{"type":"string"}, "MetricResultV2":{ "type":"structure", "members":{ "Dimensions":{"shape":"DimensionsV2Map"}, + "MetricInterval":{"shape":"MetricInterval"}, "Collections":{"shape":"MetricDataCollectionsV2"} } }, @@ -9214,6 +10262,21 @@ "min":1, "pattern":"(^[\\S].*[\\S]$)|(^[\\S]$)" }, + "Namespace":{ + "type":"string", + "max":128, + "min":1 + }, + "NewChatCreated":{"type":"boolean"}, + "NewSessionDetails":{ + "type":"structure", + "members":{ + "SupportedMessagingContentTypes":{"shape":"SupportedMessagingContentTypes"}, + "ParticipantDetails":{"shape":"ParticipantDetails"}, + "Attributes":{"shape":"Attributes"}, + "StreamingConfiguration":{"shape":"ChatStreamingConfiguration"} + } + }, "NextToken":{"type":"string"}, "NextToken2500":{ "type":"string", @@ -9292,11 +10355,25 @@ "error":{"httpStatusCode":403}, "exception":true }, + "OutputTypeNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "error":{"httpStatusCode":404}, + "exception":true + }, "PEM":{ "type":"string", "max":1024, "min":1 }, + "ParticipantCapabilities":{ + "type":"structure", + "members":{ + "Video":{"shape":"VideoCapability"} + } + }, "ParticipantDetails":{ "type":"structure", "required":["DisplayName"], @@ -9389,6 +10466,11 @@ "max":100, "min":0 }, + "Permission":{ + "type":"string", + "max":128, + "min":1 + }, "PermissionsList":{ "type":"list", "member":{"shape":"SecurityProfilePermission"}, @@ -9699,7 +10781,8 @@ "UIFN", "SHARED", "THIRD_PARTY_TF", - "THIRD_PARTY_DID" + "THIRD_PARTY_DID", + "SHORT_CODE" ] }, "PhoneNumberTypes":{ @@ -9762,7 +10845,9 @@ "PromptId":{"shape":"PromptId"}, "Name":{"shape":"CommonNameLength127"}, "Description":{"shape":"PromptDescription"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "PromptDescription":{ @@ -9812,7 +10897,9 @@ "members":{ "Id":{"shape":"PromptId"}, "Arn":{"shape":"ARN"}, - "Name":{"shape":"PromptName"} + "Name":{"shape":"PromptName"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "PromptSummaryList":{ @@ -9897,7 +10984,9 @@ "box":true }, "Status":{"shape":"QueueStatus"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "QueueDescription":{ @@ -9976,7 +11065,9 @@ "Id":{"shape":"QueueId"}, "Arn":{"shape":"ARN"}, "Name":{"shape":"QueueName"}, - "QueueType":{"shape":"QueueType"} + "QueueType":{"shape":"QueueType"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "QueueSummaryList":{ @@ -10009,7 +11100,9 @@ "Name":{"shape":"QuickConnectName"}, "Description":{"shape":"QuickConnectDescription"}, "QuickConnectConfig":{"shape":"QuickConnectConfig"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "QuickConnectConfig":{ @@ -10061,7 +11154,9 @@ "Id":{"shape":"QuickConnectId"}, "Arn":{"shape":"ARN"}, "Name":{"shape":"QuickConnectName"}, - "QuickConnectType":{"shape":"QuickConnectType"} + "QuickConnectType":{"shape":"QuickConnectType"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "QuickConnectSummaryList":{ @@ -10097,6 +11192,278 @@ "type":"list", "member":{"shape":"ReadOnlyFieldInfo"} }, + "RealTimeContactAnalysisAttachment":{ + "type":"structure", + "required":[ + "AttachmentName", + "AttachmentId" + ], + "members":{ + "AttachmentName":{"shape":"AttachmentName"}, + "ContentType":{"shape":"ContentType"}, + "AttachmentId":{"shape":"ArtifactId"}, + "Status":{"shape":"ArtifactStatus"} + } + }, + "RealTimeContactAnalysisAttachments":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisAttachment"}, + "max":10 + }, + "RealTimeContactAnalysisCategoryDetails":{ + "type":"structure", + "required":["PointsOfInterest"], + "members":{ + "PointsOfInterest":{"shape":"RealTimeContactAnalysisPointsOfInterest"} + } + }, + "RealTimeContactAnalysisCategoryName":{ + "type":"string", + "max":256, + "min":1 + }, + "RealTimeContactAnalysisCharacterInterval":{ + "type":"structure", + "required":[ + "BeginOffsetChar", + "EndOffsetChar" + ], + "members":{ + "BeginOffsetChar":{"shape":"RealTimeContactAnalysisOffset"}, + "EndOffsetChar":{"shape":"RealTimeContactAnalysisOffset"} + } + }, + "RealTimeContactAnalysisCharacterIntervals":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisCharacterInterval"} + }, + "RealTimeContactAnalysisContentType":{ + "type":"string", + "max":256, + "min":1 + }, + "RealTimeContactAnalysisEventType":{ + "type":"string", + "max":128, + "min":1 + }, + "RealTimeContactAnalysisId256":{ + "type":"string", + "max":256, + "min":1 + }, + "RealTimeContactAnalysisIssueDetected":{ + "type":"structure", + "required":["TranscriptItems"], + "members":{ + "TranscriptItems":{"shape":"RealTimeContactAnalysisTranscriptItemsWithContent"} + } + }, + "RealTimeContactAnalysisIssuesDetected":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisIssueDetected"} + }, + "RealTimeContactAnalysisMatchedDetails":{ + "type":"map", + "key":{"shape":"RealTimeContactAnalysisCategoryName"}, + "value":{"shape":"RealTimeContactAnalysisCategoryDetails"}, + "max":150, + "min":0 + }, + "RealTimeContactAnalysisOffset":{ + "type":"integer", + "min":0 + }, + "RealTimeContactAnalysisOutputType":{ + "type":"string", + "enum":[ + "Raw", + "Redacted" + ] + }, + "RealTimeContactAnalysisPointOfInterest":{ + "type":"structure", + "members":{ + "TranscriptItems":{"shape":"RealTimeContactAnalysisTranscriptItemsWithCharacterOffsets"} + } + }, + "RealTimeContactAnalysisPointsOfInterest":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisPointOfInterest"}, + "max":5, + "min":0 + }, + "RealTimeContactAnalysisSegmentAttachments":{ + "type":"structure", + "required":[ + "Id", + "ParticipantId", + "ParticipantRole", + "Attachments", + "Time" + ], + "members":{ + "Id":{"shape":"RealTimeContactAnalysisId256"}, + "ParticipantId":{"shape":"ParticipantId"}, + "ParticipantRole":{"shape":"ParticipantRole"}, + "DisplayName":{"shape":"DisplayName"}, + "Attachments":{"shape":"RealTimeContactAnalysisAttachments"}, + "Time":{"shape":"RealTimeContactAnalysisTimeData"} + } + }, + "RealTimeContactAnalysisSegmentCategories":{ + "type":"structure", + "required":["MatchedDetails"], + "members":{ + "MatchedDetails":{"shape":"RealTimeContactAnalysisMatchedDetails"} + } + }, + "RealTimeContactAnalysisSegmentEvent":{ + "type":"structure", + "required":[ + "Id", + "EventType", + "Time" + ], + "members":{ + "Id":{"shape":"RealTimeContactAnalysisId256"}, + "ParticipantId":{"shape":"ParticipantId"}, + "ParticipantRole":{"shape":"ParticipantRole"}, + "DisplayName":{"shape":"DisplayName"}, + "EventType":{"shape":"RealTimeContactAnalysisEventType"}, + "Time":{"shape":"RealTimeContactAnalysisTimeData"} + } + }, + "RealTimeContactAnalysisSegmentIssues":{ + "type":"structure", + "required":["IssuesDetected"], + "members":{ + "IssuesDetected":{"shape":"RealTimeContactAnalysisIssuesDetected"} + } + }, + "RealTimeContactAnalysisSegmentTranscript":{ + "type":"structure", + "required":[ + "Id", + "ParticipantId", + "ParticipantRole", + "Content", + "Time" + ], + "members":{ + "Id":{"shape":"RealTimeContactAnalysisId256"}, + "ParticipantId":{"shape":"ParticipantId"}, + "ParticipantRole":{"shape":"ParticipantRole"}, + "DisplayName":{"shape":"DisplayName"}, + "Content":{"shape":"RealTimeContactAnalysisTranscriptContent"}, + "ContentType":{"shape":"RealTimeContactAnalysisContentType"}, + "Time":{"shape":"RealTimeContactAnalysisTimeData"}, + "Redaction":{"shape":"RealTimeContactAnalysisTranscriptItemRedaction"}, + "Sentiment":{"shape":"RealTimeContactAnalysisSentimentLabel"} + } + }, + "RealTimeContactAnalysisSegmentType":{ + "type":"string", + "enum":[ + "Transcript", + "Categories", + "Issues", + "Event", + "Attachments" + ] + }, + "RealTimeContactAnalysisSegmentTypes":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisSegmentType"}, + "max":5 + }, + "RealTimeContactAnalysisSentimentLabel":{ + "type":"string", + "enum":[ + "POSITIVE", + "NEGATIVE", + "NEUTRAL" + ] + }, + "RealTimeContactAnalysisStatus":{ + "type":"string", + "enum":[ + "IN_PROGRESS", + "FAILED", + "COMPLETED" + ] + }, + "RealTimeContactAnalysisSupportedChannel":{ + "type":"string", + "enum":[ + "VOICE", + "CHAT" + ] + }, + "RealTimeContactAnalysisTimeData":{ + "type":"structure", + "members":{ + "AbsoluteTime":{"shape":"RealTimeContactAnalysisTimeInstant"} + }, + "union":true + }, + "RealTimeContactAnalysisTimeInstant":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "RealTimeContactAnalysisTranscriptContent":{ + "type":"string", + "max":16384, + "min":1 + }, + "RealTimeContactAnalysisTranscriptItemRedaction":{ + "type":"structure", + "members":{ + "CharacterOffsets":{"shape":"RealTimeContactAnalysisCharacterIntervals"} + } + }, + "RealTimeContactAnalysisTranscriptItemWithCharacterOffsets":{ + "type":"structure", + "required":["Id"], + "members":{ + "Id":{"shape":"RealTimeContactAnalysisId256"}, + "CharacterOffsets":{"shape":"RealTimeContactAnalysisCharacterInterval"} + } + }, + "RealTimeContactAnalysisTranscriptItemWithContent":{ + "type":"structure", + "required":["Id"], + "members":{ + "Content":{"shape":"RealTimeContactAnalysisTranscriptContent"}, + "Id":{"shape":"RealTimeContactAnalysisId256"}, + "CharacterOffsets":{"shape":"RealTimeContactAnalysisCharacterInterval"} + } + }, + "RealTimeContactAnalysisTranscriptItemsWithCharacterOffsets":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisTranscriptItemWithCharacterOffsets"}, + "max":10, + "min":0 + }, + "RealTimeContactAnalysisTranscriptItemsWithContent":{ + "type":"list", + "member":{"shape":"RealTimeContactAnalysisTranscriptItemWithContent"} + }, + "RealtimeContactAnalysisSegment":{ + "type":"structure", + "members":{ + "Transcript":{"shape":"RealTimeContactAnalysisSegmentTranscript"}, + "Categories":{"shape":"RealTimeContactAnalysisSegmentCategories"}, + "Issues":{"shape":"RealTimeContactAnalysisSegmentIssues"}, + "Event":{"shape":"RealTimeContactAnalysisSegmentEvent"}, + "Attachments":{"shape":"RealTimeContactAnalysisSegmentAttachments"} + }, + "union":true + }, + "RealtimeContactAnalysisSegments":{ + "type":"list", + "member":{"shape":"RealtimeContactAnalysisSegment"} + }, "Reference":{ "type":"structure", "required":[ @@ -10162,6 +11529,10 @@ "max":4096, "min":0 }, + "RegionName":{ + "type":"string", + "pattern":"[a-z]{2}(-[a-z]+){1,2}(-[0-9])?" + }, "RehydrationType":{ "type":"string", "enum":[ @@ -10214,6 +11585,10 @@ "Arn":{"shape":"ARN"} } }, + "RequestIdentifier":{ + "type":"string", + "max":80 + }, "RequiredFieldInfo":{ "type":"structure", "members":{ @@ -10283,7 +11658,8 @@ "PARTICIPANT", "HIERARCHY_LEVEL", "HIERARCHY_GROUP", - "USER" + "USER", + "PHONE_NUMBER" ] }, "ResourceTypeList":{ @@ -10321,7 +11697,10 @@ "Tags":{"shape":"TagMap"}, "NumberOfAssociatedQueues":{"shape":"Long"}, "NumberOfAssociatedUsers":{"shape":"Long"}, - "AgentAvailabilityTimer":{"shape":"AgentAvailabilityTimer"} + "AgentAvailabilityTimer":{"shape":"AgentAvailabilityTimer"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"}, + "IsDefault":{"shape":"Boolean"} } }, "RoutingProfileDescription":{ @@ -10432,7 +11811,9 @@ "members":{ "Id":{"shape":"RoutingProfileId"}, "Arn":{"shape":"ARN"}, - "Name":{"shape":"RoutingProfileName"} + "Name":{"shape":"RoutingProfileName"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "RoutingProfileSummaryList":{ @@ -10556,19 +11937,19 @@ }, "S3Uri":{ "type":"string", - "max":512, + "max":2000, "min":1, - "pattern":"s3://\\S+/.+" + "pattern":"s3://\\S+/.+|https://\\\\S+\\\\.s3\\\\.\\\\S+\\\\.amazonaws\\\\.com/\\\\S+" }, "SearchAvailablePhoneNumbersRequest":{ "type":"structure", "required":[ - "TargetArn", "PhoneNumberCountryCode", "PhoneNumberType" ], "members":{ "TargetArn":{"shape":"ARN"}, + "InstanceId":{"shape":"InstanceId"}, "PhoneNumberCountryCode":{"shape":"PhoneNumberCountryCode"}, "PhoneNumberType":{"shape":"PhoneNumberType"}, "PhoneNumberPrefix":{"shape":"PhoneNumberPrefix"}, @@ -10741,6 +12122,7 @@ }, "SearchUsersRequest":{ "type":"structure", + "required":["InstanceId"], "members":{ "InstanceId":{"shape":"InstanceId"}, "NextToken":{"shape":"NextToken2500"}, @@ -10809,7 +12191,9 @@ "Description":{"shape":"SecurityProfileDescription"}, "Tags":{"shape":"TagMap"}, "AllowedAccessControlTags":{"shape":"AllowedAccessControlTags"}, - "TagRestrictedResources":{"shape":"TagRestrictedResourceList"} + "TagRestrictedResources":{"shape":"TagRestrictedResourceList"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "SecurityProfileDescription":{ @@ -10866,7 +12250,9 @@ "members":{ "Id":{"shape":"SecurityProfileId"}, "Arn":{"shape":"ARN"}, - "Name":{"shape":"SecurityProfileName"} + "Name":{"shape":"SecurityProfileName"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "SecurityProfileSummaryList":{ @@ -10887,6 +12273,49 @@ "type":"string", "sensitive":true }, + "SegmentAttributeName":{ + "type":"string", + "max":128, + "min":1 + }, + "SegmentAttributeValue":{ + "type":"structure", + "members":{ + "ValueString":{"shape":"SegmentAttributeValueString"} + } + }, + "SegmentAttributeValueString":{ + "type":"string", + "max":1024, + "min":1 + }, + "SegmentAttributes":{ + "type":"map", + "key":{"shape":"SegmentAttributeName"}, + "value":{"shape":"SegmentAttributeValue"} + }, + "SendChatIntegrationEventRequest":{ + "type":"structure", + "required":[ + "SourceId", + "DestinationId", + "Event" + ], + "members":{ + "SourceId":{"shape":"SourceId"}, + "DestinationId":{"shape":"DestinationId"}, + "Subtype":{"shape":"Subtype"}, + "Event":{"shape":"ChatEvent"}, + "NewSessionDetails":{"shape":"NewSessionDetails"} + } + }, + "SendChatIntegrationEventResponse":{ + "type":"structure", + "members":{ + "InitialContactId":{"shape":"ContactId"}, + "NewChatCreated":{"shape":"NewChatCreated"} + } + }, "SendNotificationActionDefinition":{ "type":"structure", "required":[ @@ -10976,6 +12405,11 @@ "min":1, "pattern":"^[a-zA-Z0-9_ -]+$" }, + "SourceId":{ + "type":"string", + "max":255, + "min":1 + }, "SourceType":{ "type":"string", "enum":[ @@ -11003,7 +12437,8 @@ "ChatDurationInMinutes":{"shape":"ChatDurationInMinutes"}, "SupportedMessagingContentTypes":{"shape":"SupportedMessagingContentTypes"}, "PersistentChat":{"shape":"PersistentChat"}, - "RelatedContactId":{"shape":"ContactId"} + "RelatedContactId":{"shape":"ContactId"}, + "SegmentAttributes":{"shape":"SegmentAttributes"} } }, "StartChatContactResponse":{ @@ -11151,6 +12586,37 @@ "ContactId":{"shape":"ContactId"} } }, + "StartWebRTCContactRequest":{ + "type":"structure", + "required":[ + "ContactFlowId", + "InstanceId", + "ParticipantDetails" + ], + "members":{ + "Attributes":{"shape":"Attributes"}, + "ClientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "ContactFlowId":{"shape":"ContactFlowId"}, + "InstanceId":{"shape":"InstanceId"}, + "AllowedCapabilities":{"shape":"AllowedCapabilities"}, + "ParticipantDetails":{"shape":"ParticipantDetails"}, + "RelatedContactId":{"shape":"ContactId"}, + "References":{"shape":"ContactReferences"}, + "Description":{"shape":"Description"} + } + }, + "StartWebRTCContactResponse":{ + "type":"structure", + "members":{ + "ConnectionData":{"shape":"ConnectionData"}, + "ContactId":{"shape":"ContactId"}, + "ParticipantId":{"shape":"ParticipantId"}, + "ParticipantToken":{"shape":"ParticipantToken"} + } + }, "Statistic":{ "type":"string", "enum":[ @@ -11185,7 +12651,8 @@ ], "members":{ "ContactId":{"shape":"ContactId"}, - "InstanceId":{"shape":"InstanceId"} + "InstanceId":{"shape":"InstanceId"}, + "DisconnectReason":{"shape":"DisconnectReason"} } }, "StopContactResponse":{ @@ -11286,6 +12753,22 @@ "EvaluationArn":{"shape":"ARN"} } }, + "Subtype":{ + "type":"string", + "max":100, + "min":1 + }, + "SuccessfulRequest":{ + "type":"structure", + "members":{ + "RequestIdentifier":{"shape":"RequestIdentifier"}, + "ContactId":{"shape":"ContactId"} + } + }, + "SuccessfulRequestList":{ + "type":"list", + "member":{"shape":"SuccessfulRequest"} + }, "SupportedMessagingContentType":{ "type":"string", "max":100, @@ -12020,7 +13503,10 @@ "locationName":"EvaluationFormId" }, "EvaluationFormVersion":{"shape":"VersionNumber"}, - "CreateNewVersion":{"shape":"BoxedBoolean"}, + "CreateNewVersion":{ + "shape":"BoxedBoolean", + "box":true + }, "Title":{"shape":"EvaluationFormTitle"}, "Description":{"shape":"EvaluationFormDescription"}, "Items":{"shape":"EvaluationFormItemsList"}, @@ -12153,12 +13639,25 @@ "members":{ } }, + "UpdatePhoneNumberMetadataRequest":{ + "type":"structure", + "required":["PhoneNumberId"], + "members":{ + "PhoneNumberId":{ + "shape":"PhoneNumberId", + "location":"uri", + "locationName":"PhoneNumberId" + }, + "PhoneNumberDescription":{"shape":"PhoneNumberDescription"}, + "ClientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, "UpdatePhoneNumberRequest":{ "type":"structure", - "required":[ - "PhoneNumberId", - "TargetArn" - ], + "required":["PhoneNumberId"], "members":{ "PhoneNumberId":{ "shape":"PhoneNumberId", @@ -12166,6 +13665,7 @@ "locationName":"PhoneNumberId" }, "TargetArn":{"shape":"ARN"}, + "InstanceId":{"shape":"InstanceId"}, "ClientToken":{ "shape":"ClientToken", "idempotencyToken":true @@ -12514,7 +14014,8 @@ "locationName":"InstanceId" }, "AllowedAccessControlTags":{"shape":"AllowedAccessControlTags"}, - "TagRestrictedResources":{"shape":"TagRestrictedResourceList"} + "TagRestrictedResources":{"shape":"TagRestrictedResourceList"}, + "Applications":{"shape":"Applications"} } }, "UpdateTaskTemplateRequest":{ @@ -12818,7 +14319,9 @@ "SecurityProfileIds":{"shape":"SecurityProfileIds"}, "RoutingProfileId":{"shape":"RoutingProfileId"}, "HierarchyGroupId":{"shape":"HierarchyGroupId"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "UserData":{ @@ -12956,7 +14459,9 @@ "members":{ "Id":{"shape":"UserId"}, "Arn":{"shape":"ARN"}, - "Username":{"shape":"AgentUsername"} + "Username":{"shape":"AgentUsername"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "LastModifiedRegion":{"shape":"RegionName"} } }, "UserSummaryList":{ @@ -12971,9 +14476,12 @@ "Value":{"type":"double"}, "VersionNumber":{ "type":"integer", - "box":true, "min":1 }, + "VideoCapability":{ + "type":"string", + "enum":["SEND"] + }, "View":{ "type":"structure", "members":{ @@ -13238,6 +14746,12 @@ "SessionArn":{"shape":"ARN"} } }, + "resourceArnListMaxLimit100":{ + "type":"list", + "member":{"shape":"ARN"}, + "max":100, + "min":1 + }, "timestamp":{"type":"timestamp"} } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,9 +3,11 @@ "service": "

Amazon Connect is a cloud-based contact center solution that you use to set up and manage a customer contact center and provide reliable customer engagement at any scale.

Amazon Connect provides metrics and real-time reporting that enable you to optimize contact routing. You can also resolve customer issues more efficiently by getting customers in touch with the appropriate agents.

There are limits to the number of Amazon Connect resources that you can create. There are also limits to the number of requests that you can make per second. For more information, see Amazon Connect Service Quotas in the Amazon Connect Administrator Guide.

You can connect programmatically to an Amazon Web Services service by using an endpoint. For a list of Amazon Connect endpoints, see Amazon Connect Endpoints.

", "operations": { "ActivateEvaluationForm": "

Activates an evaluation form in the specified Amazon Connect instance. After the evaluation form is activated, it is available to start new evaluations based on the form.

", + "AssociateAnalyticsDataSet": "

This API is in preview release for Amazon Connect and is subject to change.

Associates the specified dataset for a Amazon Connect instance with the target account. You can associate only one dataset in a single call.

", "AssociateApprovedOrigin": "

This API is in preview release for Amazon Connect and is subject to change.

Associates an approved origin to an Amazon Connect instance.

", "AssociateBot": "

This API is in preview release for Amazon Connect and is subject to change.

Allows the specified Amazon Connect instance to access the specified Amazon Lex or Amazon Lex V2 bot.

", "AssociateDefaultVocabulary": "

Associates an existing vocabulary as the default. Contact Lens for Amazon Connect uses the vocabulary in post-call and real-time analysis sessions for the given language.

", + "AssociateFlow": "

Associates a connect resource to a flow.

", "AssociateInstanceStorageConfig": "

This API is in preview release for Amazon Connect and is subject to change.

Associates a storage resource type for the first time. You can only associate one type of storage configuration in a single call. This means, for example, that you can't define an instance with multiple S3 buckets for storing chat transcripts.

This API does not create a resource that doesn't exist. It only associates it to the instance. Ensure that the resource being specified in the storage configuration, like an S3 bucket, exists when being used for association.

", "AssociateLambdaFunction": "

This API is in preview release for Amazon Connect and is subject to change.

Allows the specified Amazon Connect instance to access the specified Lambda function.

", "AssociateLexBot": "

This API is in preview release for Amazon Connect and is subject to change.

Allows the specified Amazon Connect instance to access the specified Amazon Lex V1 bot. This API only supports the association of Amazon Lex V1 bots.

", @@ -14,6 +16,10 @@ "AssociateRoutingProfileQueues": "

Associates a set of queues with a routing profile.

", "AssociateSecurityKey": "

This API is in preview release for Amazon Connect and is subject to change.

Associates a security key to the instance.

", "AssociateTrafficDistributionGroupUser": "

Associates an agent with a traffic distribution group.

", + "BatchAssociateAnalyticsDataSet": "

This API is in preview release for Amazon Connect and is subject to change.

Associates a list of analytics datasets for a given Amazon Connect instance to a target account. You can associate multiple datasets in a single call.

", + "BatchDisassociateAnalyticsDataSet": "

This API is in preview release for Amazon Connect and is subject to change.

Removes a list of analytics datasets associated with a given Amazon Connect instance. You can disassociate multiple datasets in a single call.

", + "BatchGetFlowAssociation": "

Retrieve the flow associations for the given resources.

", + "BatchPutContact": "

Only the Amazon Connect outbound campaigns service principal is allowed to assume a role in your account and call this API.

Allows you to create a batch of contacts in Amazon Connect. The outbound campaigns capability ingests dial requests via the PutDialRequestBatch API. It then uses BatchPutContact to create contacts corresponding to those dial requests. If agents are available, the dial requests are dialed out, which results in a voice call. The resulting voice call uses the same contactId that was created by BatchPutContact.

", "ClaimPhoneNumber": "

Claims an available phone number to your Amazon Connect instance or traffic distribution group. You can call this API only in the same Amazon Web Services Region where the Amazon Connect instance or traffic distribution group was created.

For more information about how to use this operation, see Claim a phone number in your country and Claim phone numbers to traffic distribution groups in the Amazon Connect Administrator Guide.

You can call the SearchAvailablePhoneNumbers API for available phone numbers that you can claim. Call the DescribePhoneNumber API to verify the status of a previous ClaimPhoneNumber operation.

If you plan to claim and release numbers frequently during a 30 day period, contact us for a service quota exception. Otherwise, it is possible you will be blocked from claiming and releasing any more numbers until 30 days past the oldest number released has expired.

By default you can claim and release up to 200% of your maximum number of active phone numbers during any 30 day period. If you claim and release phone numbers using the UI or API during a rolling 30 day cycle that exceeds 200% of your phone number service level quota, you will be blocked from claiming any more numbers until 30 days past the oldest number released has expired.

For example, if you already have 99 claimed numbers and a service level quota of 99 phone numbers, and in any 30 day period you release 99, claim 99, and then release 99, you will have exceeded the 200% limit. At that point you are blocked from claiming any more numbers until you open an Amazon Web Services support ticket.

", "CreateAgentStatus": "

This API is in preview release for Amazon Connect and is subject to change.

Creates an agent status for the specified Amazon Connect instance.

", "CreateContactFlow": "

Creates a flow for the specified Amazon Connect instance.

You can also create and update flows using the Amazon Connect Flow language.

", @@ -23,16 +29,17 @@ "CreateInstance": "

This API is in preview release for Amazon Connect and is subject to change.

Initiates an Amazon Connect instance with all the supported channels enabled. It does not attach any storage, such as Amazon Simple Storage Service (Amazon S3) or Amazon Kinesis. It also does not allow for any configurations on features, such as Contact Lens for Amazon Connect.

Amazon Connect enforces a limit on the total number of instances that you can create or delete in 30 days. If you exceed this limit, you will get an error message indicating there has been an excessive number of attempts at creating or deleting instances. You must wait 30 days before you can restart creating and deleting instances in your account.

", "CreateIntegrationAssociation": "

Creates an Amazon Web Services resource association with an Amazon Connect instance.

", "CreateParticipant": "

Adds a new participant into an on-going chat contact. For more information, see Customize chat flow experiences by integrating custom participants.

", + "CreatePersistentContactAssociation": "

Enables rehydration of chats for the lifespan of a contact. For more information about chat rehydration, see Enable persistent chat in the Amazon Connect Administrator Guide.

", "CreatePrompt": "

Creates a prompt. For more information about prompts, such as supported file types and maximum length, see Create prompts in the Amazon Connect Administrator's Guide.

", "CreateQueue": "

This API is in preview release for Amazon Connect and is subject to change.

Creates a new queue for the specified Amazon Connect instance.

  • If the phone number is claimed to a traffic distribution group that was created in the same Region as the Amazon Connect instance where you are calling this API, then you can use a full phone number ARN or a UUID for OutboundCallerIdNumberId. However, if the phone number is claimed to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive a ResourceNotFoundException.

  • Only use the phone number ARN format that doesn't contain instance in the path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This is the same ARN format that is returned when you call the ListPhoneNumbersV2 API.

  • If you plan to use IAM policies to allow/deny access to this API for phone number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.

", "CreateQuickConnect": "

Creates a quick connect for the specified Amazon Connect instance.

", "CreateRoutingProfile": "

Creates a new routing profile.

", "CreateRule": "

Creates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

", - "CreateSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Creates a security profile.

", + "CreateSecurityProfile": "

Creates a security profile.

", "CreateTaskTemplate": "

Creates a new task template in the specified Amazon Connect instance.

", - "CreateTrafficDistributionGroup": "

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

You can change the SignInConfig distribution only for a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

For more information about creating traffic distribution groups, see Set up traffic distribution groups in the Amazon Connect Administrator Guide.

", + "CreateTrafficDistributionGroup": "

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

The SignInConfig distribution is available only on a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

For more information about creating traffic distribution groups, see Set up traffic distribution groups in the Amazon Connect Administrator Guide.

", "CreateUseCase": "

Creates a use case for an integration association.

", - "CreateUser": "

Creates a user account for the specified Amazon Connect instance.

For information about how to create user accounts using the Amazon Connect console, see Add Users in the Amazon Connect Administrator Guide.

", + "CreateUser": "

Creates a user account for the specified Amazon Connect instance.

Certain UserIdentityInfo parameters are required in some situations. For example, Email is required if you are using SAML for identity management. FirstName and LastName are required if you are using Amazon Connect or SAML for identity management.

For information about how to create users using the Amazon Connect admin website, see Add Users in the Amazon Connect Administrator Guide.

", "CreateUserHierarchyGroup": "

Creates a new user hierarchy group.

", "CreateView": "

Creates a new view with the possible status of SAVED or PUBLISHED.

The views will have a unique name for each connect instance.

It performs basic content validation if the status is SAVED or full content validation if the status is set to PUBLISHED. An error is returned if validation fails. It associates either the $SAVED qualifier or both of the $SAVED and $LATEST qualifiers with the provided view content based on the status. The view is idempotent if ClientToken is provided.

", "CreateViewVersion": "

Publishes a new version of the view identifier.

Versions are immutable and monotonically increasing.

It returns the highest version if there is no change in content compared to that version. An error is displayed if the supplied ViewContentSha256 is different from the ViewContentSha256 of the $LATEST alias.

", @@ -50,7 +57,7 @@ "DeleteQuickConnect": "

Deletes a quick connect.

", "DeleteRoutingProfile": "

Deletes a routing profile.

", "DeleteRule": "

Deletes a rule for the specified Amazon Connect instance.

", - "DeleteSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Deletes a security profile.

", + "DeleteSecurityProfile": "

Deletes a security profile.

", "DeleteTaskTemplate": "

Deletes the task template.

", "DeleteTrafficDistributionGroup": "

Deletes a traffic distribution group. This API can be called only in the Region where the traffic distribution group is created.

For more information about deleting traffic distribution groups, see Delete traffic distribution groups in the Amazon Connect Administrator Guide.

", "DeleteUseCase": "

Deletes a use case from an integration association.

", @@ -75,15 +82,17 @@ "DescribeQuickConnect": "

Describes the quick connect.

", "DescribeRoutingProfile": "

Describes the specified routing profile.

", "DescribeRule": "

Describes a rule for the specified Amazon Connect instance.

", - "DescribeSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Gets basic information about the security profle.

", + "DescribeSecurityProfile": "

Gets basic information about the security profle.

", "DescribeTrafficDistributionGroup": "

Gets details and status of a traffic distribution group.

", - "DescribeUser": "

Describes the specified user account. You can find the instance ID in the Amazon Connect console (it’s the final part of the ARN). The console does not display the user IDs. Instead, list the users and note the IDs provided in the output.

", + "DescribeUser": "

Describes the specified user. You can find the instance ID in the Amazon Connect console (it’s the final part of the ARN). The console does not display the user IDs. Instead, list the users and note the IDs provided in the output.

", "DescribeUserHierarchyGroup": "

Describes the specified hierarchy group.

", "DescribeUserHierarchyStructure": "

Describes the hierarchy structure of the specified Amazon Connect instance.

", "DescribeView": "

Retrieves the view for the specified Amazon Connect instance and view identifier.

The view identifier can be supplied as a ViewId or ARN.

$SAVED needs to be supplied if a view is unpublished.

The view identifier can contain an optional qualifier, for example, <view-id>:$SAVED, which is either an actual version number or an Amazon Connect managed qualifier $SAVED | $LATEST. If it is not supplied, then $LATEST is assumed for customer managed views and an error is returned if there is no published content available. Version 1 is assumed for Amazon Web Services managed views.

", "DescribeVocabulary": "

Describes the specified vocabulary.

", + "DisassociateAnalyticsDataSet": "

This API is in preview release for Amazon Connect and is subject to change.

Removes the dataset ID associated with a given Amazon Connect instance.

", "DisassociateApprovedOrigin": "

This API is in preview release for Amazon Connect and is subject to change.

Revokes access to integrated applications from Amazon Connect.

", "DisassociateBot": "

This API is in preview release for Amazon Connect and is subject to change.

Revokes authorization from the specified instance to access the specified Amazon Lex or Amazon Lex V2 bot.

", + "DisassociateFlow": "

Disassociates a connect resource from a flow.

", "DisassociateInstanceStorageConfig": "

This API is in preview release for Amazon Connect and is subject to change.

Removes the storage type configurations for the specified resource type and association ID.

", "DisassociateLambdaFunction": "

This API is in preview release for Amazon Connect and is subject to change.

Remove the Lambda function from the dropdown options available in the relevant flow blocks.

", "DisassociateLexBot": "

This API is in preview release for Amazon Connect and is subject to change.

Revokes authorization from the specified instance to access the specified Amazon Lex bot.

", @@ -96,13 +105,16 @@ "GetContactAttributes": "

Retrieves the contact attributes for the specified contact.

", "GetCurrentMetricData": "

Gets the real-time metric data from the specified Amazon Connect instance.

For a description of each metric, see Real-time Metrics Definitions in the Amazon Connect Administrator Guide.

", "GetCurrentUserData": "

Gets the real-time active user data from the specified Amazon Connect instance.

", - "GetFederationToken": "

Retrieves a token for federation.

This API doesn't support root users. If you try to invoke GetFederationToken with root credentials, an error message similar to the following one appears:

Provided identity: Principal: .... User: .... cannot be used for federation with Amazon Connect

", - "GetMetricData": "

Gets historical metric data from the specified Amazon Connect instance.

For a description of each historical metric, see Historical Metrics Definitions in the Amazon Connect Administrator Guide.

", - "GetMetricDataV2": "

Gets metric data from the specified Amazon Connect instance.

GetMetricDataV2 offers more features than GetMetricData, the previous version of this API. It has new metrics, offers filtering at a metric level, and offers the ability to filter and group data by channels, queues, routing profiles, agents, and agent hierarchy levels. It can retrieve historical data for the last 35 days, in 24-hour intervals.

For a description of the historical metrics that are supported by GetMetricDataV2 and GetMetricData, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

", + "GetFederationToken": "

Supports SAML sign-in for Amazon Connect. Retrieves a token for federation. The token is for the Amazon Connect user which corresponds to the IAM credentials that were used to invoke this action.

For more information about how SAML sign-in works in Amazon Connect, see Configure SAML with IAM for Amazon Connect in the Amazon Connect Administrator Guide.

This API doesn't support root users. If you try to invoke GetFederationToken with root credentials, an error message similar to the following one appears:

Provided identity: Principal: .... User: .... cannot be used for federation with Amazon Connect

", + "GetFlowAssociation": "

Retrieves the flow associated for a given resource.

", + "GetMetricData": "

Gets historical metric data from the specified Amazon Connect instance.

For a description of each historical metric, see Historical Metrics Definitions in the Amazon Connect Administrator Guide.

We recommend using the GetMetricDataV2 API. It provides more flexibility, features, and the ability to query longer time ranges than GetMetricData. Use it to retrieve historical agent and contact metrics for the last 3 months, at varying intervals. You can also use it to build custom dashboards to measure historical queue and agent performance. For example, you can track the number of incoming contacts for the last 7 days, with data split by day, to see how contact volume changed per day of the week.

", + "GetMetricDataV2": "

Gets metric data from the specified Amazon Connect instance.

GetMetricDataV2 offers more features than GetMetricData, the previous version of this API. It has new metrics, offers filtering at a metric level, and offers the ability to filter and group data by channels, queues, routing profiles, agents, and agent hierarchy levels. It can retrieve historical data for the last 3 months, at varying intervals.

For a description of the historical metrics that are supported by GetMetricDataV2 and GetMetricData, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

", "GetPromptFile": "

Gets the prompt file.

", "GetTaskTemplate": "

Gets details about a specific task template in the specified Amazon Connect instance.

", "GetTrafficDistribution": "

Retrieves the current traffic distribution for a given traffic distribution group.

", + "ImportPhoneNumber": "

Imports a claimed phone number from an external service, such as Amazon Pinpoint, into an Amazon Connect instance. You can call this API only in the same Amazon Web Services Region where the Amazon Connect instance was created.

", "ListAgentStatuses": "

This API is in preview release for Amazon Connect and is subject to change.

Lists agent statuses.

", + "ListAnalyticsDataAssociations": "

This API is in preview release for Amazon Connect and is subject to change.

Lists the association status of requested dataset ID for a given Amazon Connect instance.

", "ListApprovedOrigins": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of all approved origins associated with the instance.

", "ListBots": "

This API is in preview release for Amazon Connect and is subject to change.

For the specified version of Amazon Lex, returns a paginated list of all the Amazon Lex bots currently associated with the instance. Use this API to returns both Amazon Lex V1 and V2 bots.

", "ListContactEvaluations": "

Lists contact evaluations in the specified Amazon Connect instance.

", @@ -112,6 +124,7 @@ "ListDefaultVocabularies": "

Lists the default vocabularies for the specified Amazon Connect instance.

", "ListEvaluationFormVersions": "

Lists versions of an evaluation form in the specified Amazon Connect instance.

", "ListEvaluationForms": "

Lists evaluation forms in the specified Amazon Connect instance.

", + "ListFlowAssociations": "

List the flow association based on the filters.

", "ListHoursOfOperations": "

Provides information about the hours of operation for the specified Amazon Connect instance.

For more information about hours of operation, see Set the Hours of Operation for a Queue in the Amazon Connect Administrator Guide.

", "ListInstanceAttributes": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of all attribute types for the given instance.

", "ListInstanceStorageConfigs": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of storage configs for the identified instance and resource type.

", @@ -125,11 +138,13 @@ "ListQueueQuickConnects": "

This API is in preview release for Amazon Connect and is subject to change.

Lists the quick connects associated with a queue.

", "ListQueues": "

Provides information about the queues for the specified Amazon Connect instance.

If you do not specify a QueueTypes parameter, both standard and agent queues are returned. This might cause an unexpected truncation of results if you have more than 1000 agents and you limit the number of results of the API call in code.

For more information about queues, see Queues: Standard and Agent in the Amazon Connect Administrator Guide.

", "ListQuickConnects": "

Provides information about the quick connects for the specified Amazon Connect instance.

", + "ListRealtimeContactAnalysisSegmentsV2": "

Provides a list of analysis segments for a real-time analysis session.

", "ListRoutingProfileQueues": "

Lists the queues associated with a routing profile.

", "ListRoutingProfiles": "

Provides summary information about the routing profiles for the specified Amazon Connect instance.

For more information about routing profiles, see Routing Profiles and Create a Routing Profile in the Amazon Connect Administrator Guide.

", "ListRules": "

List all rules for the specified Amazon Connect instance.

", "ListSecurityKeys": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of all security keys associated with the instance.

", - "ListSecurityProfilePermissions": "

This API is in preview release for Amazon Connect and is subject to change.

Lists the permissions granted to a security profile.

", + "ListSecurityProfileApplications": "

Returns a list of third-party applications in a specific security profile.

", + "ListSecurityProfilePermissions": "

Lists the permissions granted to a security profile.

", "ListSecurityProfiles": "

Provides summary information about the security profiles for the specified Amazon Connect instance.

For more information about security profiles, see Security Profiles in the Amazon Connect Administrator Guide.

", "ListTagsForResource": "

Lists the tags for the specified resource.

For sample policies that use tags, see Amazon Connect Identity-Based Policy Examples in the Amazon Connect Administrator Guide.

", "ListTaskTemplates": "

Lists task templates for the specified Amazon Connect instance.

", @@ -142,9 +157,9 @@ "ListViews": "

Returns views in the given instance.

Results are sorted primarily by type, and secondarily by name.

", "MonitorContact": "

Initiates silent monitoring of a contact. The Contact Control Panel (CCP) of the user specified by userId will be set to silent monitoring mode on the contact.

", "PutUserStatus": "

Changes the current status of a user or agent in Amazon Connect. If the agent is currently handling a contact, this sets the agent's next status.

For more information, see Agent status and Set your next status in the Amazon Connect Administrator Guide.

", - "ReleasePhoneNumber": "

Releases a phone number previously claimed to an Amazon Connect instance or traffic distribution group. You can call this API only in the Amazon Web Services Region where the number was claimed.

To release phone numbers from a traffic distribution group, use the ReleasePhoneNumber API, not the Amazon Connect console.

After releasing a phone number, the phone number enters into a cooldown period of 30 days. It cannot be searched for or claimed again until the period has ended. If you accidentally release a phone number, contact Amazon Web Services Support.

If you plan to claim and release numbers frequently during a 30 day period, contact us for a service quota exception. Otherwise, it is possible you will be blocked from claiming and releasing any more numbers until 30 days past the oldest number released has expired.

By default you can claim and release up to 200% of your maximum number of active phone numbers during any 30 day period. If you claim and release phone numbers using the UI or API during a rolling 30 day cycle that exceeds 200% of your phone number service level quota, you will be blocked from claiming any more numbers until 30 days past the oldest number released has expired.

For example, if you already have 99 claimed numbers and a service level quota of 99 phone numbers, and in any 30 day period you release 99, claim 99, and then release 99, you will have exceeded the 200% limit. At that point you are blocked from claiming any more numbers until you open an Amazon Web Services support ticket.

", - "ReplicateInstance": "

Replicates an Amazon Connect instance in the specified Amazon Web Services Region.

For more information about replicating an Amazon Connect instance, see Create a replica of your existing Amazon Connect instance in the Amazon Connect Administrator Guide.

", - "ResumeContactRecording": "

When a contact is being recorded, and the recording has been suspended using SuspendContactRecording, this API resumes recording the call or screen.

Voice and screen recordings are supported.

", + "ReleasePhoneNumber": "

Releases a phone number previously claimed to an Amazon Connect instance or traffic distribution group. You can call this API only in the Amazon Web Services Region where the number was claimed.

To release phone numbers from a traffic distribution group, use the ReleasePhoneNumber API, not the Amazon Connect admin website.

After releasing a phone number, the phone number enters into a cooldown period of 30 days. It cannot be searched for or claimed again until the period has ended. If you accidentally release a phone number, contact Amazon Web Services Support.

If you plan to claim and release numbers frequently during a 30 day period, contact us for a service quota exception. Otherwise, it is possible you will be blocked from claiming and releasing any more numbers until 30 days past the oldest number released has expired.

By default you can claim and release up to 200% of your maximum number of active phone numbers during any 30 day period. If you claim and release phone numbers using the UI or API during a rolling 30 day cycle that exceeds 200% of your phone number service level quota, you will be blocked from claiming any more numbers until 30 days past the oldest number released has expired.

For example, if you already have 99 claimed numbers and a service level quota of 99 phone numbers, and in any 30 day period you release 99, claim 99, and then release 99, you will have exceeded the 200% limit. At that point you are blocked from claiming any more numbers until you open an Amazon Web Services support ticket.

", + "ReplicateInstance": "

Replicates an Amazon Connect instance in the specified Amazon Web Services Region and copies configuration information for Amazon Connect resources across Amazon Web Services Regions.

For more information about replicating an Amazon Connect instance, see Create a replica of your existing Amazon Connect instance in the Amazon Connect Administrator Guide.

", + "ResumeContactRecording": "

When a contact is being recorded, and the recording has been suspended using SuspendContactRecording, this API resumes recording whatever recording is selected in the flow configuration: call, screen, or both. If only call recording or only screen recording is enabled, then it would resume.

Voice and screen recordings are supported.

", "SearchAvailablePhoneNumbers": "

Searches for available phone numbers that you can claim to your Amazon Connect instance or traffic distribution group. If the provided TargetArn is a traffic distribution group, you can call this API in both Amazon Web Services Regions associated with the traffic distribution group.

", "SearchHoursOfOperations": "

Searches the hours of operation in an Amazon Connect instance, with optional filtering.

", "SearchPrompts": "

Searches prompts in an Amazon Connect instance, with optional filtering.

", @@ -153,19 +168,21 @@ "SearchResourceTags": "

Searches tags used in an Amazon Connect instance using optional search criteria.

", "SearchRoutingProfiles": "

Searches routing profiles in an Amazon Connect instance, with optional filtering.

", "SearchSecurityProfiles": "

Searches security profiles in an Amazon Connect instance, with optional filtering.

", - "SearchUsers": "

Searches users in an Amazon Connect instance, with optional filtering.

AfterContactWorkTimeLimit is returned in milliseconds.

", + "SearchUsers": "

Searches users in an Amazon Connect instance, with optional filtering.

AfterContactWorkTimeLimit is returned in milliseconds.

", "SearchVocabularies": "

Searches for vocabularies within a specific Amazon Connect instance using State, NameStartsWith, and LanguageCode.

", + "SendChatIntegrationEvent": "

Processes chat integration events from Amazon Web Services or external integrations to Amazon Connect. A chat integration event includes:

  • SourceId, DestinationId, and Subtype: a set of identifiers, uniquely representing a chat

  • ChatEvent: details of the chat action to perform such as sending a message, event, or disconnecting from a chat

When a chat integration event is sent with chat identifiers that do not map to an active chat contact, a new chat contact is also created before handling chat action.

Access to this API is currently restricted to Amazon Pinpoint for supporting SMS integration.

", "StartChatContact": "

Initiates a flow to start a new chat for the customer. Response of this API provides a token required to obtain credentials from the CreateParticipantConnection API in the Amazon Connect Participant Service.

When a new chat contact is successfully created, clients must subscribe to the participant’s connection for the created chat within 5 minutes. This is achieved by invoking CreateParticipantConnection with WEBSOCKET and CONNECTION_CREDENTIALS.

A 429 error occurs in the following situations:

  • API rate limit is exceeded. API TPS throttling returns a TooManyRequests exception.

  • The quota for concurrent active chats is exceeded. Active chat throttling returns a LimitExceededException.

If you use the ChatDurationInMinutes parameter and receive a 400 error, your account may not support the ability to configure custom chat durations. For more information, contact Amazon Web Services Support.

For more information about chat, see Chat in the Amazon Connect Administrator Guide.

", "StartContactEvaluation": "

Starts an empty evaluation in the specified Amazon Connect instance, using the given evaluation form for the particular contact. The evaluation form version used for the contact evaluation corresponds to the currently activated version. If no version is activated for the evaluation form, the contact evaluation cannot be started.

Evaluations created through the public API do not contain answer values suggested from automation.

", "StartContactRecording": "

Starts recording the contact:

  • If the API is called before the agent joins the call, recording starts when the agent joins the call.

  • If the API is called after the agent joins the call, recording starts at the time of the API call.

StartContactRecording is a one-time action. For example, if you use StopContactRecording to stop recording an ongoing call, you can't use StartContactRecording to restart it. For scenarios where the recording has started and you want to suspend and resume it, such as when collecting sensitive information (for example, a credit card number), use SuspendContactRecording and ResumeContactRecording.

You can use this API to override the recording behavior configured in the Set recording behavior block.

Only voice recordings are supported at this time.

", "StartContactStreaming": "

Initiates real-time message streaming for a new chat contact.

For more information about message streaming, see Enable real-time chat message streaming in the Amazon Connect Administrator Guide.

", "StartOutboundVoiceContact": "

Places an outbound call to a contact, and then initiates the flow. It performs the actions in the flow that's specified (in ContactFlowId).

Agents do not initiate the outbound API, which means that they do not dial the contact. If the flow places an outbound call to a contact, and then puts the contact in queue, the call is then routed to the agent, like any other inbound case.

There is a 60-second dialing timeout for this operation. If the call is not connected after 60 seconds, it fails.

UK numbers with a 447 prefix are not allowed by default. Before you can dial these UK mobile numbers, you must submit a service quota increase request. For more information, see Amazon Connect Service Quotas in the Amazon Connect Administrator Guide.

Campaign calls are not allowed by default. Before you can make a call with TrafficType = CAMPAIGN, you must submit a service quota increase request to the quota Amazon Connect campaigns.

", - "StartTaskContact": "

Initiates a flow to start a new task.

", + "StartTaskContact": "

Initiates a flow to start a new task contact. For more information about task contacts, see Concepts: Tasks in Amazon Connect in the Amazon Connect Administrator Guide.

When using PreviousContactId and RelatedContactId input parameters, note the following:

  • PreviousContactId

    • Any updates to user-defined task contact attributes on any contact linked through the same PreviousContactId will affect every contact in the chain.

    • There can be a maximum of 12 linked task contacts in a chain. That is, 12 task contacts can be created that share the same PreviousContactId.

  • RelatedContactId

    • Copies contact attributes from the related task contact to the new contact.

    • Any update on attributes in a new task contact does not update attributes on previous contact.

    • There’s no limit on the number of task contacts that can be created that use the same RelatedContactId.

In addition, when calling StartTaskContact include only one of these parameters: ContactFlowID, QuickConnectID, or TaskTemplateID. Only one parameter is required as long as the task template has a flow configured to run it. If more than one parameter is specified, or only the TaskTemplateID is specified but it does not have a flow configured, the request returns an error because Amazon Connect cannot identify the unique flow to run when the task is created.

A ServiceQuotaExceededException occurs when the number of open tasks exceeds the active tasks quota or there are already 12 tasks referencing the same PreviousContactId. For more information about service quotas for task contacts, see Amazon Connect service quotas in the Amazon Connect Administrator Guide.

", + "StartWebRTCContact": "

Places an inbound in-app, web, or video call to a contact, and then initiates the flow. It performs the actions in the flow that are specified (in ContactFlowId) and present in the Amazon Connect instance (specified as InstanceId).

", "StopContact": "

Ends the specified contact. This call does not work for voice contacts that use the following initiation methods:

  • DISCONNECT

  • TRANSFER

  • QUEUE_TRANSFER

Chat and task contacts, however, can be terminated in any state, regardless of initiation method.

", "StopContactRecording": "

Stops recording a call when a contact is being recorded. StopContactRecording is a one-time action. If you use StopContactRecording to stop recording an ongoing call, you can't use StartContactRecording to restart it. For scenarios where the recording has started and you want to suspend it for sensitive information (for example, to collect a credit card number), and then restart it, use SuspendContactRecording and ResumeContactRecording.

Only voice recordings are supported at this time.

", "StopContactStreaming": "

Ends message streaming on a specified contact. To restart message streaming on that contact, call the StartContactStreaming API.

", "SubmitContactEvaluation": "

Submits a contact evaluation in the specified Amazon Connect instance. Answers included in the request are merged with existing answers for the given evaluation. If no answers or notes are passed, the evaluation is submitted with the existing answers and notes. You can delete an answer or note by passing an empty object ({}) to the question identifier.

If a contact evaluation is already in submitted state, this operation will trigger a resubmission.

", - "SuspendContactRecording": "

When a contact is being recorded, this API suspends recording the call or screen. For example, you might suspend the call or screen recording while collecting sensitive information, such as a credit card number. Then use ResumeContactRecording to restart recording.

The period of time that the recording is suspended is filled with silence in the final recording.

Voice and screen recordings are supported.

", + "SuspendContactRecording": "

When a contact is being recorded, this API suspends recording whatever is selected in the flow configuration: call, screen, or both. If only call recording or only screen recording is enabled, then it would be suspended. For example, you might suspend the screen recording while collecting sensitive information, such as a credit card number. Then use ResumeContactRecording to restart recording the screen.

The period of time that the recording is suspended is filled with silence in the final recording.

Voice and screen recordings are supported.

", "TagResource": "

Adds the specified tags to the specified resource.

Some of the supported resource types are agents, routing profiles, queues, quick connects, contact flows, agent statuses, hours of operation, phone numbers, security profiles, and task templates. For a complete list, see Tagging resources in Amazon Connect.

For sample policies that use tags, see Amazon Connect Identity-Based Policy Examples in the Amazon Connect Administrator Guide.

", "TransferContact": "

Transfers contacts from one agent or queue to another agent or queue at any point after a contact is created. You can transfer a contact to another queue by providing the flow which orchestrates the contact to the destination queue. This gives you more control over contact handling and helps you adhere to the service level agreement (SLA) guaranteed to your customers.

Note the following requirements:

  • Transfer is supported for only TASK contacts.

  • Do not use both QueueId and UserId in the same call.

  • The following flow types are supported: Inbound flow, Transfer to agent flow, and Transfer to queue flow.

  • The TransferContact API can be called only on active contacts.

  • A contact cannot be transferred more than 11 times.

", "UntagResource": "

Removes the specified tags from the specified resource.

", @@ -185,6 +202,7 @@ "UpdateInstanceStorageConfig": "

This API is in preview release for Amazon Connect and is subject to change.

Updates an existing configuration for a resource type. This API is idempotent.

", "UpdateParticipantRoleConfig": "

Updates timeouts for when human chat participants are to be considered idle, and when agents are automatically disconnected from a chat due to idleness. You can set four timers:

  • Customer idle timeout

  • Customer auto-disconnect timeout

  • Agent idle timeout

  • Agent auto-disconnect timeout

For more information about how chat timeouts work, see Set up chat timeouts for human participants.

", "UpdatePhoneNumber": "

Updates your claimed phone number from its current Amazon Connect instance or traffic distribution group to another Amazon Connect instance or traffic distribution group in the same Amazon Web Services Region.

After using this API, you must verify that the phone number is attached to the correct flow in the target instance or traffic distribution group. You need to do this because the API switches only the phone number to a new instance or traffic distribution group. It doesn't migrate the flow configuration of the phone number, too.

You can call DescribePhoneNumber API to verify the status of a previous UpdatePhoneNumber operation.

", + "UpdatePhoneNumberMetadata": "

Updates a phone number’s metadata.

To verify the status of a previous UpdatePhoneNumberMetadata operation, call the DescribePhoneNumber API.

", "UpdatePrompt": "

Updates a prompt.

", "UpdateQueueHoursOfOperation": "

This API is in preview release for Amazon Connect and is subject to change.

Updates the hours of operation for the specified queue.

", "UpdateQueueMaxContacts": "

This API is in preview release for Amazon Connect and is subject to change.

Updates the maximum number of contacts allowed in a queue before it is considered full.

", @@ -199,9 +217,9 @@ "UpdateRoutingProfileName": "

Updates the name and description of a routing profile. The request accepts the following data in JSON format. At least Name or Description must be provided.

", "UpdateRoutingProfileQueues": "

Updates the properties associated with a set of queues for a routing profile.

", "UpdateRule": "

Updates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

", - "UpdateSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Updates a security profile.

", + "UpdateSecurityProfile": "

Updates a security profile.

", "UpdateTaskTemplate": "

Updates details about a specific task template in the specified Amazon Connect instance. This operation does not support partial updates. Instead it does a full update of template content.

", - "UpdateTrafficDistribution": "

Updates the traffic distribution for a given traffic distribution group.

You can change the SignInConfig distribution only for a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

For more information about updating a traffic distribution group, see Update telephony traffic distribution across Amazon Web Services Regions in the Amazon Connect Administrator Guide.

", + "UpdateTrafficDistribution": "

Updates the traffic distribution for a given traffic distribution group.

The SignInConfig distribution is available only on a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

For more information about updating a traffic distribution group, see Update telephony traffic distribution across Amazon Web Services Regions in the Amazon Connect Administrator Guide.

", "UpdateUserHierarchy": "

Assigns the specified hierarchy group to the specified user.

", "UpdateUserHierarchyGroupName": "

Updates the name of the user hierarchy group.

", "UpdateUserHierarchyStructure": "

Updates the user hierarchy structure: add, remove, and rename user hierarchy levels.

", @@ -220,10 +238,15 @@ "AgentStatus$AgentStatusARN": "

The Amazon Resource Name (ARN) of the agent status.

", "AgentStatusReference$StatusArn": "

The Amazon Resource Name (ARN) of the agent's status.

", "AgentStatusSummary$Arn": "

The Amazon Resource Name (ARN) for the agent status.

", - "ClaimPhoneNumberRequest$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

", + "AnalyticsDataAssociationResult$ResourceShareArn": "

The Amazon Resource Name (ARN) of the Resource Access Manager share.

", + "AssociateAnalyticsDataSetResponse$ResourceShareArn": "

The Amazon Resource Name (ARN) of the Resource Access Manager share.

", + "AssociateFlowRequest$ResourceId": "

The identifier of the resource.

", + "AssociateFlowRequest$FlowId": "

The identifier of the flow.

", + "ClaimPhoneNumberRequest$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone number inbound traffic is routed through. You must enter InstanceId or TargetArn.

", "ClaimPhoneNumberResponse$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the phone number.

", "ClaimedPhoneNumberSummary$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the phone number.

", - "ClaimedPhoneNumberSummary$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

", + "ClaimedPhoneNumberSummary$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone number inbound traffic is routed through.

", + "ClaimedPhoneNumberSummary$SourcePhoneNumberArn": "

The claimed phone number ARN that was previously imported from the external service, such as Amazon Pinpoint. If it is from Amazon Pinpoint, it looks like the ARN of the phone number that was imported from Amazon Pinpoint.

", "Contact$Arn": "

The Amazon Resource Name (ARN) for the contact.

", "ContactFlow$Arn": "

The Amazon Resource Name (ARN) of the flow.

", "ContactFlowModule$Arn": "

The Amazon Resource Name (ARN).

", @@ -249,6 +272,7 @@ "CreateVocabularyResponse$VocabularyArn": "

The Amazon Resource Name (ARN) of the custom vocabulary.

", "DeactivateEvaluationFormResponse$EvaluationFormArn": "

The Amazon Resource Name (ARN) for the evaluation form resource.

", "DeleteVocabularyResponse$VocabularyArn": "

The Amazon Resource Name (ARN) of the custom vocabulary.

", + "DisassociateFlowRequest$ResourceId": "

The identifier of the resource.

", "Evaluation$EvaluationArn": "

The Amazon Resource Name (ARN) for the contact evaluation resource.

", "EvaluationForm$EvaluationFormArn": "

The Amazon Resource Name (ARN) for the evaluation form resource.

", "EvaluationForm$CreatedBy": "

The Amazon Resource Name (ARN) of the user who created the evaluation form.

", @@ -264,7 +288,12 @@ "EvaluationMetadata$EvaluatorArn": "

The Amazon Resource Name (ARN) of the user who last updated the evaluation.

", "EvaluationSummary$EvaluationArn": "

The Amazon Resource Name (ARN) for the contact evaluation resource.

", "EvaluationSummary$EvaluatorArn": "

The Amazon Resource Name (ARN) of the user who last updated the evaluation.

", + "FlowAssociationSummary$ResourceId": "

The identifier of the resource.

", + "FlowAssociationSummary$FlowId": "

The identifier of the flow.

", "GetFederationTokenResponse$UserArn": "

The Amazon Resource Name (ARN) of the user.

", + "GetFlowAssociationRequest$ResourceId": "

The identifier of the resource.

", + "GetFlowAssociationResponse$ResourceId": "

The identifier of the resource.

", + "GetFlowAssociationResponse$FlowId": "

The identifier of the flow.

", "GetMetricDataV2Request$ResourceArn": "

The Amazon Resource Name (ARN) of the resource. This includes the instanceId an Amazon Connect instance.

", "HierarchyGroup$Arn": "

The Amazon Resource Name (ARN) of the hierarchy group.

", "HierarchyGroupSummary$Arn": "

The Amazon Resource Name (ARN) of the hierarchy group.

", @@ -272,6 +301,8 @@ "HierarchyLevel$Arn": "

The Amazon Resource Name (ARN) of the hierarchy level.

", "HoursOfOperation$HoursOfOperationArn": "

The Amazon Resource Name (ARN) for the hours of operation.

", "HoursOfOperationSummary$Arn": "

The Amazon Resource Name (ARN) of the hours of operation.

", + "ImportPhoneNumberRequest$SourcePhoneNumberArn": "

The claimed phone number ARN being imported from the external service, such as Amazon Pinpoint. If it is from Amazon Pinpoint, it looks like the ARN of the phone number to import from Amazon Pinpoint.

", + "ImportPhoneNumberResponse$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the phone number.

", "Instance$Arn": "

The Amazon Resource Name (ARN) of the instance.

", "Instance$ServiceRole": "

The service role of the instance.

", "InstanceSummary$Arn": "

The Amazon Resource Name (ARN) of the instance.

", @@ -280,9 +311,11 @@ "IntegrationAssociationSummary$IntegrationArn": "

The Amazon Resource Name (ARN) for the AppIntegration.

", "KinesisFirehoseConfig$FirehoseArn": "

The Amazon Resource Name (ARN) of the delivery stream.

", "KinesisStreamConfig$StreamArn": "

The Amazon Resource Name (ARN) of the data stream.

", + "ListIntegrationAssociationsRequest$IntegrationArn": "

The Amazon Resource Name (ARN) of the integration.

", "ListPhoneNumbersSummary$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the phone number.

", - "ListPhoneNumbersSummary$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

", - "ListPhoneNumbersV2Request$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to. If TargetArn input is not provided, this API lists numbers claimed to all the Amazon Connect instances belonging to your account in the same Amazon Web Services Region as the request.

", + "ListPhoneNumbersSummary$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone number inbound traffic is routed through.

", + "ListPhoneNumbersSummary$SourcePhoneNumberArn": "

The claimed phone number ARN that was previously imported from the external service, such as Amazon Pinpoint. If it is from Amazon Pinpoint, it looks like the ARN of the phone number that was imported from Amazon Pinpoint.

", + "ListPhoneNumbersV2Request$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone number inbound traffic is routed through. If both TargetArn and InstanceId input are not provided, this API lists numbers claimed to all the Amazon Connect instances belonging to your account in the same Amazon Web Services Region as the request.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource. All Amazon Connect resources (instances, queues, flows, routing profiles, etc) have an ARN. To locate the ARN for an instance, for example, see Find your Amazon Connect instance ID/ARN.

", "MonitorContactResponse$ContactArn": "

The ARN of the contact.

", "PhoneNumberSummary$Arn": "

The Amazon Resource Name (ARN) of the phone number.

", @@ -302,7 +335,7 @@ "Rule$RuleArn": "

The Amazon Resource Name (ARN) of the rule.

", "Rule$LastUpdatedBy": "

The Amazon Resource Name (ARN) of the user who last updated the rule.

", "RuleSummary$RuleArn": "

The Amazon Resource Name (ARN) of the rule.

", - "SearchAvailablePhoneNumbersRequest$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

", + "SearchAvailablePhoneNumbersRequest$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone number inbound traffic is routed through. You must enter InstanceId or TargetArn.

", "SecurityProfile$Arn": "

The Amazon Resource Name (ARN) for the secruity profile.

", "SecurityProfileSearchSummary$Arn": "

The Amazon Resource Name (ARN) of the security profile.

", "SecurityProfileSummary$Arn": "

The Amazon Resource Name (ARN) of the security profile.

", @@ -313,7 +346,7 @@ "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", "UpdateContactEvaluationResponse$EvaluationArn": "

The Amazon Resource Name (ARN) for the contact evaluation resource.

", "UpdateEvaluationFormResponse$EvaluationFormArn": "

The Amazon Resource Name (ARN) for the contact evaluation resource.

", - "UpdatePhoneNumberRequest$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

", + "UpdatePhoneNumberRequest$TargetArn": "

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone number inbound traffic is routed through. You must enter InstanceId or TargetArn.

", "UpdatePhoneNumberResponse$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the phone number.

", "UpdatePromptResponse$PromptARN": "

The Amazon Resource Name (ARN) of the prompt.

", "UseCase$UseCaseArn": "

The Amazon Resource Name (ARN) for the use case.

", @@ -326,7 +359,19 @@ "ViewVersionSummary$Arn": "

The Amazon Resource Name (ARN) of the view version.

", "Vocabulary$Arn": "

The Amazon Resource Name (ARN) of the custom vocabulary.

", "VocabularySummary$Arn": "

The Amazon Resource Name (ARN) of the custom vocabulary.

", - "WisdomInfo$SessionArn": "

The Amazon Resource Name (ARN) of the Wisdom session.

" + "WisdomInfo$SessionArn": "

The Amazon Resource Name (ARN) of the Wisdom session.

", + "resourceArnListMaxLimit100$member": null + } + }, + "AWSAccountId": { + "base": null, + "refs": { + "AnalyticsDataAssociationResult$TargetAccountId": "

The identifier of the target account.

", + "AssociateAnalyticsDataSetRequest$TargetAccountId": "

The identifier of the target account. Use to associate a dataset to a different account than the one containing the Amazon Connect instance. If not specified, by default this value is the Amazon Web Services account that has the Amazon Connect instance.

", + "AssociateAnalyticsDataSetResponse$TargetAccountId": "

The identifier of the target account.

", + "BatchAssociateAnalyticsDataSetRequest$TargetAccountId": "

The identifier of the target account. Use to associate a dataset to a different account than the one containing the Amazon Connect instance. If not specified, by default this value is the Amazon Web Services account that has the Amazon Connect instance.

", + "BatchDisassociateAnalyticsDataSetRequest$TargetAccountId": "

The identifier of the target account. Use to disassociate a dataset from a different account than the one containing the Amazon Connect instance. If not specified, by default this value is the Amazon Web Services account that has the Amazon Connect instance.

", + "DisassociateAnalyticsDataSetRequest$TargetAccountId": "

The identifier of the target account. Use to associate a dataset to a different account than the one containing the Amazon Connect instance. If not specified, by default this value is the Amazon Web Services account that has the Amazon Connect instance.

" } }, "AccessDeniedException": { @@ -537,18 +582,57 @@ "UpdateSecurityProfileRequest$AllowedAccessControlTags": "

The list of tags that a security profile uses to restrict access to resources in Amazon Connect.

" } }, + "AllowedCapabilities": { + "base": "

Information about the capabilities enabled for participants of the contact.

", + "refs": { + "StartWebRTCContactRequest$AllowedCapabilities": "

Information about the video sharing capabilities of the participants (customer, agent).

" + } + }, "AllowedMonitorCapabilities": { "base": null, "refs": { "MonitorContactRequest$AllowedMonitorCapabilities": "

Specify which monitoring actions the user is allowed to take. For example, whether the user is allowed to escalate from silent monitoring to barge.

" } }, + "AnalyticsDataAssociationResult": { + "base": "

This API is in preview release for Amazon Connect and is subject to change.

Information about associations that are successfully created: DataSetId, TargetAccountId, ResourceShareId, ResourceShareArn.

", + "refs": { + "AnalyticsDataAssociationResults$member": null + } + }, + "AnalyticsDataAssociationResults": { + "base": null, + "refs": { + "BatchAssociateAnalyticsDataSetResponse$Created": "

Information about associations that are successfully created: DataSetId, TargetAccountId, ResourceShareId, ResourceShareArn.

", + "ListAnalyticsDataAssociationsResponse$Results": "

An array of successful results: DataSetId, TargetAccountId, ResourceShareId, ResourceShareArn. This is a paginated API, so nextToken is given if there are more results to be returned.

" + } + }, "AnswerMachineDetectionConfig": { "base": "

Configuration of the answering machine detection.

", "refs": { "StartOutboundVoiceContactRequest$AnswerMachineDetectionConfig": "

Configuration of the answering machine detection for this outbound call.

" } }, + "Application": { + "base": "

This API is in preview release for Amazon Connect and is subject to change.

A third-party application's metadata.

", + "refs": { + "Applications$member": null + } + }, + "ApplicationPermissions": { + "base": null, + "refs": { + "Application$ApplicationPermissions": "

The permissions that the agent is granted on the application. Only the ACCESS permission is supported.

" + } + }, + "Applications": { + "base": null, + "refs": { + "CreateSecurityProfileRequest$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of third-party applications that the security profile will give access to.

", + "ListSecurityProfileApplicationsResponse$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of the third-party application's metadata.

", + "UpdateSecurityProfileRequest$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of the third-party application's metadata.

" + } + }, "ApproximateTotalCount": { "base": null, "refs": { @@ -563,10 +647,32 @@ "SearchUsersResponse$ApproximateTotalCount": "

The total number of users who matched your search query.

" } }, + "ArtifactId": { + "base": null, + "refs": { + "RealTimeContactAnalysisAttachment$AttachmentId": "

A unique identifier for the attachment.

" + } + }, + "ArtifactStatus": { + "base": null, + "refs": { + "RealTimeContactAnalysisAttachment$Status": "

Status of the attachment.

" + } + }, "AssignContactCategoryActionDefinition": { - "base": "

This action must be set if TriggerEventSource is one of the following values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable. Contact is categorized using the rule name.

RuleName is used as ContactCategory.

", + "base": "

This action must be set if TriggerEventSource is one of the following values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable. Contact is categorized using the rule name.

RuleName is used as ContactCategory.

", + "refs": { + "RuleAction$AssignContactCategoryAction": "

Information about the contact category action.

Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable | OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate

" + } + }, + "AssociateAnalyticsDataSetRequest": { + "base": null, + "refs": { + } + }, + "AssociateAnalyticsDataSetResponse": { + "base": null, "refs": { - "RuleAction$AssignContactCategoryAction": "

Information about the contact category action.

" } }, "AssociateApprovedOriginRequest": { @@ -589,6 +695,16 @@ "refs": { } }, + "AssociateFlowRequest": { + "base": null, + "refs": { + } + }, + "AssociateFlowResponse": { + "base": null, + "refs": { + } + }, "AssociateInstanceStorageConfigRequest": { "base": null, "refs": { @@ -657,12 +773,30 @@ "UpdateInstanceStorageConfigRequest$AssociationId": "

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

" } }, + "AttachmentName": { + "base": null, + "refs": { + "RealTimeContactAnalysisAttachment$AttachmentName": "

A case-sensitive name of the attachment being uploaded. Can be redacted.

" + } + }, "AttachmentReference": { "base": "

Information about a reference when the referenceType is ATTACHMENT. Otherwise, null.

", "refs": { "ReferenceSummary$Attachment": "

Information about the reference when the referenceType is ATTACHMENT. Otherwise, null.

" } }, + "Attendee": { + "base": "

The attendee information, including attendee ID and join token.

", + "refs": { + "ConnectionData$Attendee": "

The attendee information, including attendee ID and join token.

" + } + }, + "AttendeeId": { + "base": null, + "refs": { + "Attendee$AttendeeId": "

The Amazon Chime SDK attendee ID.

" + } + }, "Attribute": { "base": "

A toggle for an individual feature at the instance level.

", "refs": { @@ -685,10 +819,13 @@ "Attributes": { "base": null, "refs": { + "ContactDataRequest$Attributes": "

List of attributes to be stored in a contact.

", "GetContactAttributesResponse$Attributes": "

Information about the attributes.

", + "NewSessionDetails$Attributes": "

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

", "StartChatContactRequest$Attributes": "

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

", "StartOutboundVoiceContactRequest$Attributes": "

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

", "StartTaskContactRequest$Attributes": "

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

", + "StartWebRTCContactRequest$Attributes": "

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, -, and _ characters.

", "UpdateContactAttributesRequest$Attributes": "

The Amazon Connect attributes. These attributes can be accessed in flows just like any other contact attributes.

You can have up to 32,768 UTF-8 bytes across all attributes for a contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

" } }, @@ -698,6 +835,12 @@ "ListInstanceAttributesResponse$Attributes": "

The attribute types.

" } }, + "AudioFeatures": { + "base": "

Has audio-specific configurations as the operating parameter for Echo Reduction.

", + "refs": { + "MeetingFeaturesConfiguration$Audio": "

The configuration settings for the audio features available to a meeting.

" + } + }, "AutoAccept": { "base": null, "refs": { @@ -724,6 +867,46 @@ "SignInDistribution$Region": "

The Amazon Web Services Region of the sign in distribution.

" } }, + "BatchAssociateAnalyticsDataSetRequest": { + "base": null, + "refs": { + } + }, + "BatchAssociateAnalyticsDataSetResponse": { + "base": null, + "refs": { + } + }, + "BatchDisassociateAnalyticsDataSetRequest": { + "base": null, + "refs": { + } + }, + "BatchDisassociateAnalyticsDataSetResponse": { + "base": null, + "refs": { + } + }, + "BatchGetFlowAssociationRequest": { + "base": null, + "refs": { + } + }, + "BatchGetFlowAssociationResponse": { + "base": null, + "refs": { + } + }, + "BatchPutContactRequest": { + "base": null, + "refs": { + } + }, + "BatchPutContactResponse": { + "base": null, + "refs": { + } + }, "BehaviorType": { "base": null, "refs": { @@ -741,8 +924,10 @@ "EvaluationFormSingleSelectQuestionOption$AutomaticFail": "

The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.

", "EvaluationScore$NotApplicable": "

The flag to mark the item as not applicable for scoring.

", "EvaluationScore$AutomaticFail": "

The flag that marks the item as automatic fail. If the item or a child item gets an automatic fail answer, this flag will be true.

", + "MetricFilterV2$Negate": "

The flag to use to filter on requested metric filter values or to not filter on requested metric filter values. By default the negate is false, which indicates to filter on the requested metric filter.

", + "RoutingProfile$IsDefault": "

Whether this a default routing profile.

", "SignInDistribution$Enabled": "

Whether sign in distribution is enabled.

", - "TrafficDistributionGroup$IsDefault": "

Whether this is the default traffic distribution group created during instance replication. The default traffic distribution group cannot be deleted by the DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as part of the process for deleting a replica.

You can change the SignInConfig distribution only for a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

", + "TrafficDistributionGroup$IsDefault": "

Whether this is the default traffic distribution group created during instance replication. The default traffic distribution group cannot be deleted by the DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as part of the process for deleting a replica.

The SignInConfig distribution is available only on a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

", "TrafficDistributionGroupSummary$IsDefault": "

Whether this is the default traffic distribution group created during instance replication. The default traffic distribution group cannot be deleted by the DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as part of the process for deleting a replica.

", "UpdateAgentStatusRequest$ResetOrderNumber": "

A number indicating the reset order of the agent status.

" } @@ -766,9 +951,16 @@ "S3Config$BucketName": "

The S3 bucket name.

" } }, + "Campaign": { + "base": "

Information associated with a campaign.

", + "refs": { + "ContactDataRequest$Campaign": "

Structure to store information associated with a campaign.

" + } + }, "CampaignId": { "base": null, "refs": { + "Campaign$CampaignId": "

A unique identifier for a campaign.

", "StartOutboundVoiceContactRequest$CampaignId": "

The campaign identifier of the outbound communication.

" } }, @@ -802,12 +994,14 @@ "ChatContent": { "base": null, "refs": { + "ChatEvent$Content": "

Content of the message or event. This is required when Type is MESSAGE and for certain ContentTypes when Type is EVENT.

  • For allowed message content, see the Content parameter in the SendMessage topic in the Amazon Connect Participant Service API Reference.

  • For allowed event content, see the Content parameter in the SendEvent topic in the Amazon Connect Participant Service API Reference.

", "ChatMessage$Content": "

The content of the chat message.

  • For text/plain and text/markdown, the Length Constraints are Minimum of 1, Maximum of 1024.

  • For application/json, the Length Constraints are Minimum of 1, Maximum of 12000.

  • For application/vnd.amazonaws.connect.message.interactive.response, the Length Constraints are Minimum of 1, Maximum of 12288.

" } }, "ChatContentType": { "base": null, "refs": { + "ChatEvent$ContentType": "

Type of content. This is required when Type is MESSAGE or EVENT.

  • For allowed message content types, see the ContentType parameter in the SendMessage topic in the Amazon Connect Participant Service API Reference.

  • For allowed event content types, see the ContentType parameter in the SendEvent topic in the Amazon Connect Participant Service API Reference.

", "ChatMessage$ContentType": "

The type of the content. Supported types are text/plain, text/markdown, application/json, and application/vnd.amazonaws.connect.message.interactive.response.

" } }, @@ -817,6 +1011,18 @@ "StartChatContactRequest$ChatDurationInMinutes": "

The total duration of the newly started chat session. If not specified, the chat session duration defaults to 25 hour. The minimum configurable time is 60 minutes. The maximum configurable time is 10,080 minutes (7 days).

" } }, + "ChatEvent": { + "base": "

Chat integration event containing payload to perform different chat actions such as:

  • Sending a chat message

  • Sending a chat event, such as typing

  • Disconnecting from a chat

", + "refs": { + "SendChatIntegrationEventRequest$Event": "

Chat integration event payload

" + } + }, + "ChatEventType": { + "base": null, + "refs": { + "ChatEvent$Type": "

Type of chat integration event.

" + } + }, "ChatMessage": { "base": "

A chat message.

", "refs": { @@ -832,6 +1038,7 @@ "ChatStreamingConfiguration": { "base": "

The streaming configuration, such as the Amazon SNS streaming endpoint.

", "refs": { + "NewSessionDetails$StreamingConfiguration": null, "StartContactStreamingRequest$ChatStreamingConfiguration": "

The streaming configuration, such as the Amazon SNS streaming endpoint.

" } }, @@ -860,15 +1067,18 @@ "ClientToken": { "base": null, "refs": { + "BatchPutContactRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "ClaimPhoneNumberRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

Pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$

", "CreateContactFlowModuleRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateEvaluationFormRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateInstanceRequest$ClientToken": "

The idempotency token.

", "CreateParticipantRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "CreatePersistentContactAssociationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateRuleRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateTaskTemplateRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateTrafficDistributionGroupRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateVocabularyRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs. If a create request is received more than once with same client token, subsequent requests return the previous response without creating a vocabulary again.

", + "ImportPhoneNumberRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "MonitorContactRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "ReleasePhoneNumberRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "ReplicateInstanceRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", @@ -877,8 +1087,10 @@ "StartContactStreamingRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "StartOutboundVoiceContactRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs. The token is valid for 7 days after creation. If a contact is already started, the contact ID is returned.

", "StartTaskContactRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "StartWebRTCContactRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

The token is valid for 7 days after creation. If a contact is already started, the contact ID is returned.

", "TransferContactRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "UpdateEvaluationFormRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "UpdatePhoneNumberMetadataRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "UpdatePhoneNumberRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

" } }, @@ -908,12 +1120,30 @@ "MediaConcurrency$Concurrency": "

The number of contacts an agent can have on a channel simultaneously.

Valid Range for VOICE: Minimum value of 1. Maximum value of 1.

Valid Range for CHAT: Minimum value of 1. Maximum value of 10.

Valid Range for TASK: Minimum value of 1. Maximum value of 10.

" } }, + "ConnectionData": { + "base": "

Information required to join the call.

", + "refs": { + "StartWebRTCContactResponse$ConnectionData": "

Information required for the client application (mobile application or website) to connect to the call.

" + } + }, "Contact": { "base": "

Contains information about a contact.

", "refs": { "DescribeContactResponse$Contact": "

Information about the contact.

" } }, + "ContactDataRequest": { + "base": "

Request object with information to create a contact.

", + "refs": { + "ContactDataRequestList$member": null + } + }, + "ContactDataRequestList": { + "base": null, + "refs": { + "BatchPutContactRequest$ContactDataRequestList": "

List of individual contact requests.

" + } + }, "ContactFilter": { "base": "

Filters user data based on the contact information that is associated to the users. It contains a list of contact states.

", "refs": { @@ -929,9 +1159,9 @@ "ContactFlowContent": { "base": null, "refs": { - "ContactFlow$Content": "

The content of the flow.

", - "CreateContactFlowRequest$Content": "

The content of the flow.

", - "UpdateContactFlowContentRequest$Content": "

The JSON string that represents flow's content. For an example, see Example contact flow in Amazon Connect Flow language.

" + "ContactFlow$Content": "

The JSON string that represents the content of the flow. For an example, see Example flow in Amazon Connect Flow language.

Length Constraints: Minimum length of 1. Maximum length of 256000.

", + "CreateContactFlowRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example flow in Amazon Connect Flow language.

Length Constraints: Minimum length of 1. Maximum length of 256000.

", + "UpdateContactFlowContentRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example flow in Amazon Connect Flow language.

Length Constraints: Minimum length of 1. Maximum length of 256000.

" } }, "ContactFlowDescription": { @@ -956,9 +1186,10 @@ "GetTaskTemplateResponse$ContactFlowId": "

The identifier of the flow that runs by default when a task is created by referencing this template.

", "OutboundCallerConfig$OutboundFlowId": "

The outbound whisper flow to be used during an outbound call.

", "QueueQuickConnectConfig$ContactFlowId": "

The identifier of the flow.

", - "StartChatContactRequest$ContactFlowId": "

The identifier of the flow for initiating the chat. To see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", - "StartOutboundVoiceContactRequest$ContactFlowId": "

The identifier of the flow for the outbound call. To see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", - "StartTaskContactRequest$ContactFlowId": "

The identifier of the flow for initiating the tasks. To see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", + "StartChatContactRequest$ContactFlowId": "

The identifier of the flow for initiating the chat. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", + "StartOutboundVoiceContactRequest$ContactFlowId": "

The identifier of the flow for the outbound call. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", + "StartTaskContactRequest$ContactFlowId": "

The identifier of the flow for initiating the tasks. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", + "StartWebRTCContactRequest$ContactFlowId": "

The identifier of the flow for the call. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

", "TaskActionDefinition$ContactFlowId": "

The identifier of the flow.

", "TransferContactRequest$ContactFlowId": "

The identifier of the flow.

", "UpdateContactFlowContentRequest$ContactFlowId": "

The identifier of the flow.

", @@ -978,9 +1209,9 @@ "ContactFlowModuleContent": { "base": null, "refs": { - "ContactFlowModule$Content": "

The content of the flow module.

", - "CreateContactFlowModuleRequest$Content": "

The content of the flow module.

", - "UpdateContactFlowModuleContentRequest$Content": "

The content of the flow module.

" + "ContactFlowModule$Content": "

The JSON string that represents the content of the flow. For an example, see Example flow in Amazon Connect Flow language.

", + "CreateContactFlowModuleRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example flow in Amazon Connect Flow language.

", + "UpdateContactFlowModuleContentRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example flow in Amazon Connect Flow language.

" } }, "ContactFlowModuleDescription": { @@ -1098,17 +1329,22 @@ "Contact$PreviousContactId": "

If this contact is not the first contact, this is the ID of the previous contact.

", "Contact$RelatedContactId": "

The contactId that is related to this contact.

", "CreateParticipantRequest$ContactId": "

The identifier of the contact in this instance of Amazon Connect. Only contacts in the CHAT channel are supported.

", + "CreatePersistentContactAssociationRequest$InitialContactId": "

This is the contactId of the current contact that the CreatePersistentContactAssociation API is being called from.

", + "CreatePersistentContactAssociationRequest$SourceContactId": "

The contactId from which a persistent chat session must be started.

", + "CreatePersistentContactAssociationResponse$ContinuedFromContactId": "

The contactId from which a persistent chat session is started. This field is populated only for persistent chat.

", "DescribeContactRequest$ContactId": "

The identifier of the contact.

", "DismissUserContactRequest$ContactId": "

The identifier of the contact.

", "EvaluationMetadata$ContactId": "

The identifier of the contact in this instance of Amazon Connect.

", "GetContactAttributesRequest$InitialContactId": "

The identifier of the initial contact.

", "ListContactEvaluationsRequest$ContactId": "

The identifier of the contact in this instance of Amazon Connect.

", "ListContactReferencesRequest$ContactId": "

The identifier of the initial contact.

", + "ListRealtimeContactAnalysisSegmentsV2Request$ContactId": "

The identifier of the contact in this instance of Amazon Connect.

", "MonitorContactRequest$ContactId": "

The identifier of the contact.

", "MonitorContactResponse$ContactId": "

The identifier of the contact.

", "PersistentChat$SourceContactId": "

The contactId from which a persistent chat session must be started.

", "ResumeContactRecordingRequest$ContactId": "

The identifier of the contact.

", "ResumeContactRecordingRequest$InitialContactId": "

The identifier of the contact. This is the identifier of the contact associated with the first interaction with the contact center.

", + "SendChatIntegrationEventResponse$InitialContactId": "

Identifier of chat contact used to handle integration event. This may be null if the integration event is not valid without an already existing chat contact.

", "StartChatContactRequest$RelatedContactId": "

The unique identifier for an Amazon Connect contact. This identifier is related to the chat starting.

You cannot provide data for both RelatedContactId and PersistentChat.

", "StartChatContactResponse$ContactId": "

The identifier of this contact within the Amazon Connect instance.

", "StartChatContactResponse$ContinuedFromContactId": "

The contactId from which a persistent chat session is started. This field is populated only for persistent chats.

", @@ -1117,13 +1353,16 @@ "StartContactRecordingRequest$InitialContactId": "

The identifier of the contact. This is the identifier of the contact associated with the first interaction with the contact center.

", "StartContactStreamingRequest$ContactId": "

The identifier of the contact. This is the identifier of the contact associated with the first interaction with the contact center.

", "StartOutboundVoiceContactResponse$ContactId": "

The identifier of this contact within the Amazon Connect instance.

", - "StartTaskContactRequest$PreviousContactId": "

The identifier of the previous chat, voice, or task contact.

", - "StartTaskContactRequest$RelatedContactId": "

The contactId that is related to this contact.

", + "StartTaskContactRequest$PreviousContactId": "

The identifier of the previous chat, voice, or task contact. Any updates to user-defined attributes to task contacts linked using the same PreviousContactID will affect every contact in the chain. There can be a maximum of 12 linked task contacts in a chain.

", + "StartTaskContactRequest$RelatedContactId": "

The contactId that is related to this contact. Linking tasks together by using RelatedContactID copies over contact attributes from the related task contact to the new task contact. All updates to user-defined attributes in the new task contact are limited to the individual contact ID, unlike what happens when tasks are linked by using PreviousContactID. There are no limits to the number of contacts that can be linked by using RelatedContactId.

", "StartTaskContactResponse$ContactId": "

The identifier of this contact within the Amazon Connect instance.

", + "StartWebRTCContactRequest$RelatedContactId": "

The unique identifier for an Amazon Connect contact. This identifier is related to the contact starting.

", + "StartWebRTCContactResponse$ContactId": "

The identifier of the contact in this instance of Amazon Connect.

", "StopContactRecordingRequest$ContactId": "

The identifier of the contact.

", "StopContactRecordingRequest$InitialContactId": "

The identifier of the contact. This is the identifier of the contact associated with the first interaction with the contact center.

", "StopContactRequest$ContactId": "

The ID of the contact.

", "StopContactStreamingRequest$ContactId": "

The identifier of the contact. This is the identifier of the contact that is associated with the first interaction with the contact center.

", + "SuccessfulRequest$ContactId": "

The contactId of the contact that was created successfully.

", "SuspendContactRecordingRequest$ContactId": "

The identifier of the contact.

", "SuspendContactRecordingRequest$InitialContactId": "

The identifier of the contact. This is the identifier of the contact associated with the first interaction with the contact center.

", "TransferContactRequest$ContactId": "

The identifier of the contact in this instance of Amazon Connect.

", @@ -1149,7 +1388,8 @@ "ContactReferences": { "base": null, "refs": { - "StartTaskContactRequest$References": "

A formatted URL that is shown to an agent in the Contact Control Panel (CCP).

", + "StartTaskContactRequest$References": "

A formatted URL that is shown to an agent in the Contact Control Panel (CCP). Tasks can have the following reference types at the time of creation: URL | NUMBER | STRING | DATE | EMAIL. ATTACHMENT is not a supported reference type during task creation.

", + "StartWebRTCContactRequest$References": "

A formatted URL that is shown to an agent in the Contact Control Panel (CCP). Tasks can have the following reference types at the time of creation: URL | NUMBER | STRING | DATE | EMAIL. ATTACHMENT is not a supported reference type during task creation.

", "TaskActionDefinition$References": "

Information about the reference when the referenceType is URL. Otherwise, null. (Supports variable injection in the Value field.)

", "UpdateContactRequest$References": "

Well-formed data on contact, shown to agents on Contact Control Panel (CCP).

" } @@ -1173,6 +1413,12 @@ "SendNotificationActionDefinition$Content": "

Notification content. Supports variable injection. For more information, see JSONPath reference in the Amazon Connect Administrators Guide.

" } }, + "ContentType": { + "base": null, + "refs": { + "RealTimeContactAnalysisAttachment$ContentType": "

Describes the MIME file type of the attachment. For a list of supported file types, see Feature specifications in the Amazon Connect Administrator Guide.

" + } + }, "ControlPlaneTagFilter": { "base": "

An object that can be used to specify Tag conditions inside the SearchFilter. This accepts an OR of AND (List of List) input where:

  • Top level list specifies conditions that need to be applied with OR operator

  • Inner list specifies conditions that need to be applied with AND operator.

", "refs": { @@ -1265,6 +1511,16 @@ "refs": { } }, + "CreatePersistentContactAssociationRequest": { + "base": null, + "refs": { + } + }, + "CreatePersistentContactAssociationResponse": { + "base": null, + "refs": { + } + }, "CreatePromptRequest": { "base": null, "refs": { @@ -1479,6 +1735,25 @@ "GetCurrentMetricDataRequest$CurrentMetrics": "

The metrics to retrieve. Specify the name and unit for each metric. The following metrics are available. For a description of all the metrics, see Real-time Metrics Definitions in the Amazon Connect Administrator Guide.

AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in real-time metrics report: ACW

AGENTS_AVAILABLE

Unit: COUNT

Name in real-time metrics report: Available

AGENTS_ERROR

Unit: COUNT

Name in real-time metrics report: Error

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in real-time metrics report: NPT (Non-Productive Time)

AGENTS_ON_CALL

Unit: COUNT

Name in real-time metrics report: On contact

AGENTS_ON_CONTACT

Unit: COUNT

Name in real-time metrics report: On contact

AGENTS_ONLINE

Unit: COUNT

Name in real-time metrics report: Online

AGENTS_STAFFED

Unit: COUNT

Name in real-time metrics report: Staffed

CONTACTS_IN_QUEUE

Unit: COUNT

Name in real-time metrics report: In queue

CONTACTS_SCHEDULED

Unit: COUNT

Name in real-time metrics report: Scheduled

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use groupings, Unit says SECONDS and the Value is returned in SECONDS.

When you do not use groupings, Unit says SECONDS but the Value is returned in MILLISECONDS. For example, if you get a response like this:

{ \"Metric\": { \"Name\": \"OLDEST_CONTACT_AGE\", \"Unit\": \"SECONDS\" }, \"Value\": 24113.0 }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in real-time metrics report: Oldest

SLOTS_ACTIVE

Unit: COUNT

Name in real-time metrics report: Active

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time metrics report: Availability

" } }, + "DataSetId": { + "base": null, + "refs": { + "AnalyticsDataAssociationResult$DataSetId": "

The identifier of the dataset.

", + "AssociateAnalyticsDataSetRequest$DataSetId": "

The identifier of the dataset to associate with the target account.

", + "AssociateAnalyticsDataSetResponse$DataSetId": "

The identifier of the dataset that was associated.

", + "DataSetIds$member": null, + "DisassociateAnalyticsDataSetRequest$DataSetId": "

The identifier of the dataset to remove.

", + "ListAnalyticsDataAssociationsRequest$DataSetId": "

The identifier of the dataset to get the association status.

" + } + }, + "DataSetIds": { + "base": null, + "refs": { + "BatchAssociateAnalyticsDataSetRequest$DataSetIds": "

An array of dataset identifiers to associate.

", + "BatchDisassociateAnalyticsDataSetRequest$DataSetIds": "

An array of associated dataset identifiers to remove.

", + "BatchDisassociateAnalyticsDataSetResponse$Deleted": "

An array of successfully disassociated dataset identifiers.

" + } + }, "DateReference": { "base": "

Information about a reference when the referenceType is DATE. Otherwise, null.

", "refs": { @@ -1889,6 +2164,7 @@ "refs": { "Contact$Description": "

The description of the contact.

", "StartTaskContactRequest$Description": "

A description of the task that is shown to an agent in the Contact Control Panel (CCP).

", + "StartWebRTCContactRequest$Description": "

A description of the task that is shown to an agent in the Contact Control Panel (CCP).

", "UpdateContactRequest$Description": "

The description of the contact.

" } }, @@ -1899,6 +2175,12 @@ "TrafficDistributionGroup$Description": "

The description of the traffic distribution group.

" } }, + "DestinationId": { + "base": null, + "refs": { + "SendChatIntegrationEventRequest$DestinationId": "

Chat system identifier, used in part to uniquely identify chat. This is associated with the Amazon Connect instance and flow to be used to start chats. For SMS, this is the phone number destination of inbound SMS messages represented by an Amazon Pinpoint phone number ARN.

" + } + }, "DestinationNotAllowedException": { "base": "

Outbound calls to the destination number are not allowed.

", "refs": { @@ -1960,6 +2242,11 @@ "UserSearchSummary$DirectoryUserId": "

The directory identifier of the user.

" } }, + "DisassociateAnalyticsDataSetRequest": { + "base": null, + "refs": { + } + }, "DisassociateApprovedOriginRequest": { "base": null, "refs": { @@ -1970,6 +2257,16 @@ "refs": { } }, + "DisassociateFlowRequest": { + "base": null, + "refs": { + } + }, + "DisassociateFlowResponse": { + "base": null, + "refs": { + } + }, "DisassociateInstanceStorageConfigRequest": { "base": null, "refs": { @@ -2015,6 +2312,18 @@ "refs": { } }, + "DisconnectReason": { + "base": "

Contains details about why a contact was disconnected. Only Amazon Connect outbound campaigns can provide this field.

", + "refs": { + "StopContactRequest$DisconnectReason": "

The reason a contact can be disconnected. Only Amazon Connect outbound campaigns can provide this field.

" + } + }, + "DisconnectReasonCode": { + "base": null, + "refs": { + "DisconnectReason$Code": "

A code that indicates how the contact was terminated.

" + } + }, "DismissUserContactRequest": { "base": null, "refs": { @@ -2029,7 +2338,10 @@ "base": null, "refs": { "ParticipantDetails$DisplayName": "

Display name of the participant.

", - "ParticipantDetailsToAdd$DisplayName": "

The display name of the participant.

" + "ParticipantDetailsToAdd$DisplayName": "

The display name of the participant.

", + "RealTimeContactAnalysisSegmentAttachments$DisplayName": "

The display name of the participant. Can be redacted.

", + "RealTimeContactAnalysisSegmentEvent$DisplayName": "

The display name of the participant. Can be redacted.

", + "RealTimeContactAnalysisSegmentTranscript$DisplayName": "

The display name of the participant.

" } }, "Distribution": { @@ -2076,6 +2388,38 @@ "EncryptionConfig$EncryptionType": "

The type of encryption.

" } }, + "Endpoint": { + "base": "

Information about the endpoint.

", + "refs": { + "ContactDataRequest$SystemEndpoint": "

Endpoint associated with the Amazon Connect instance from which outbound contact will be initiated for the campaign.

", + "ContactDataRequest$CustomerEndpoint": "

Endpoint of the customer for which contact will be initiated.

" + } + }, + "EndpointAddress": { + "base": null, + "refs": { + "Endpoint$Address": "

Address of the endpoint.

" + } + }, + "EndpointType": { + "base": null, + "refs": { + "Endpoint$Type": "

Type of the endpoint.

" + } + }, + "ErrorResult": { + "base": "

This API is in preview release for Amazon Connect and is subject to change.

List of errors for dataset association failures.

", + "refs": { + "ErrorResults$member": null + } + }, + "ErrorResults": { + "base": null, + "refs": { + "BatchAssociateAnalyticsDataSetResponse$Errors": "

A list of errors for datasets that aren't successfully associated with the target account.

", + "BatchDisassociateAnalyticsDataSetResponse$Errors": "

A list of errors for any datasets not successfully removed.

" + } + }, "Evaluation": { "base": "

Information about a contact evaluation.

", "refs": { @@ -2431,7 +2775,7 @@ "EventBridgeActionDefinition": { "base": "

The EventBridge action definition.

", "refs": { - "RuleAction$EventBridgeAction": "

Information about the EventBridge action.

" + "RuleAction$EventBridgeAction": "

Information about the EventBridge action.

Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit | OnMetricDataUpdate

" } }, "EventBridgeActionName": { @@ -2448,6 +2792,24 @@ "RuleTriggerEventSource$EventSourceName": "

The name of the event source.

" } }, + "FailedRequest": { + "base": "

Request for which contact failed to be generated.

", + "refs": { + "FailedRequestList$member": null + } + }, + "FailedRequestList": { + "base": null, + "refs": { + "BatchPutContactResponse$FailedRequestList": "

List of requests for which contact creation failed.

" + } + }, + "FailureReasonCode": { + "base": null, + "refs": { + "FailedRequest$FailureReasonCode": "

Reason code for the failure.

" + } + }, "FilterV2": { "base": "

Contains the filter to apply when retrieving metrics with the GetMetricDataV2 API.

", "refs": { @@ -2470,7 +2832,29 @@ "FiltersV2List": { "base": null, "refs": { - "GetMetricDataV2Request$Filters": "

The filters to apply to returned metrics. You can filter on the following resources:

  • Queues

  • Routing profiles

  • Agents

  • Channels

  • User hierarchy groups

  • Feature

At least one filter must be passed from queues, routing profiles, agents, or user hierarchy groups.

To filter by phone number, see Create a historical metrics report in the Amazon Connect Administrator's Guide.

Note the following limits:

  • Filter keys: A maximum of 5 filter keys are supported in a single request. Valid filter keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR | AGENT_HIERARCHY_LEVEL_FIVE | FEATURE

  • Filter values: A maximum of 100 filter values are supported in a single request. VOICE, CHAT, and TASK are valid filterValue for the CHANNEL filter key. They do not count towards limitation of 100 filter values. For example, a GetMetricDataV2 request can filter by 50 queues, 35 agents, and 15 routing profiles for a total of 100 filter values, along with 3 channel filters.

    contact_lens_conversational_analytics is a valid filterValue for the FEATURE filter key. It is available only to contacts analyzed by Contact Lens conversational analytics.

" + "GetMetricDataV2Request$Filters": "

The filters to apply to returned metrics. You can filter on the following resources:

  • Queues

  • Routing profiles

  • Agents

  • Channels

  • User hierarchy groups

  • Feature

At least one filter must be passed from queues, routing profiles, agents, or user hierarchy groups.

To filter by phone number, see Create a historical metrics report in the Amazon Connect Administrator's Guide.

Note the following limits:

  • Filter keys: A maximum of 5 filter keys are supported in a single request. Valid filter keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR | AGENT_HIERARCHY_LEVEL_FIVE | FEATURE | contact/segmentAttributes/connect:Subtype

  • Filter values: A maximum of 100 filter values are supported in a single request. VOICE, CHAT, and TASK are valid filterValue for the CHANNEL filter key. They do not count towards limitation of 100 filter values. For example, a GetMetricDataV2 request can filter by 50 queues, 35 agents, and 15 routing profiles for a total of 100 filter values, along with 3 channel filters.

    contact_lens_conversational_analytics is a valid filterValue for the FEATURE filter key. It is available only to contacts analyzed by Contact Lens conversational analytics.

    connect:Chat, connect:SMS, connect:Telephony, and connect:WebRTC are valid filterValue examples (not exhaustive) for the contact/segmentAttributes/connect:Subtype filter key.

" + } + }, + "FlowAssociationResourceType": { + "base": null, + "refs": { + "AssociateFlowRequest$ResourceType": "

A valid resource type.

", + "DisassociateFlowRequest$ResourceType": "

A valid resource type.

", + "GetFlowAssociationRequest$ResourceType": "

A valid resource type.

", + "GetFlowAssociationResponse$ResourceType": "

A valid resource type.

" + } + }, + "FlowAssociationSummary": { + "base": "

Information about flow associations.

", + "refs": { + "FlowAssociationSummaryList$member": null + } + }, + "FlowAssociationSummaryList": { + "base": null, + "refs": { + "BatchGetFlowAssociationResponse$FlowAssociationSummaryList": "

Information about flow associations.

", + "ListFlowAssociationsResponse$FlowAssociationSummaryList": "

Summary of flow associations.

" } }, "FunctionArn": { @@ -2527,6 +2911,16 @@ "refs": { } }, + "GetFlowAssociationRequest": { + "base": null, + "refs": { + } + }, + "GetFlowAssociationResponse": { + "base": null, + "refs": { + } + }, "GetMetricDataRequest": { "base": null, "refs": { @@ -2599,7 +2993,7 @@ "GroupingsV2": { "base": null, "refs": { - "GetMetricDataV2Request$Groupings": "

The grouping applied to the metrics that are returned. For example, when results are grouped by queue, the metrics returned are grouped by queue. The values that are returned apply to the metrics for each queue. They are not aggregated for all queues.

If no grouping is specified, a summary of all metrics is returned.

Valid grouping keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR | AGENT_HIERARCHY_LEVEL_FIVE

" + "GetMetricDataV2Request$Groupings": "

The grouping applied to the metrics that are returned. For example, when results are grouped by queue, the metrics returned are grouped by queue. The values that are returned apply to the metrics for each queue. They are not aggregated for all queues.

If no grouping is specified, a summary of all metrics is returned.

Valid grouping keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR | AGENT_HIERARCHY_LEVEL_FIVE, contact/segmentAttributes/connect:Subtype

" } }, "HierarchyGroup": { @@ -2897,6 +3291,16 @@ "refs": { } }, + "ImportPhoneNumberRequest": { + "base": null, + "refs": { + } + }, + "ImportPhoneNumberResponse": { + "base": null, + "refs": { + } + }, "InboundCallsEnabled": { "base": null, "refs": { @@ -2937,9 +3341,11 @@ "base": null, "refs": { "ActivateEvaluationFormRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "AssociateAnalyticsDataSetRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateApprovedOriginRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateBotRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateDefaultVocabularyRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "AssociateFlowRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateInstanceStorageConfigRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateLambdaFunctionRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateLexBotRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -2948,6 +3354,12 @@ "AssociateRoutingProfileQueuesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateSecurityKeyRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "AssociateTrafficDistributionGroupUserRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "BatchAssociateAnalyticsDataSetRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "BatchDisassociateAnalyticsDataSetRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "BatchGetFlowAssociationRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "BatchPutContactRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ClaimPhoneNumberRequest$InstanceId": "

The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId or TargetArn.

", + "ClaimedPhoneNumberSummary$InstanceId": "

The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreateAgentStatusRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreateContactFlowModuleRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreateContactFlowRequest$InstanceId": "

The identifier of the Amazon Connect instance.

", @@ -2956,6 +3368,7 @@ "CreateInstanceResponse$Id": "

The identifier for the instance.

", "CreateIntegrationAssociationRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreateParticipantRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "CreatePersistentContactAssociationRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreatePromptRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreateQueueRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "CreateQuickConnectRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3007,8 +3420,10 @@ "DescribeUserHierarchyStructureRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "DescribeUserRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "DescribeVocabularyRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "DisassociateAnalyticsDataSetRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "DisassociateApprovedOriginRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "DisassociateBotRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "DisassociateFlowRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "DisassociateInstanceStorageConfigRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "DisassociateLambdaFunctionRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance..

", "DisassociateLexBotRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3022,14 +3437,17 @@ "GetCurrentMetricDataRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "GetCurrentUserDataRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "GetFederationTokenRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "GetFlowAssociationRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "GetMetricDataRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "GetPromptFileRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "GetTaskTemplateRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "GetTaskTemplateResponse$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ImportPhoneNumberRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "Instance$Id": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "InstanceSummary$Id": "

The identifier of the instance.

", "IntegrationAssociationSummary$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListAgentStatusRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListAnalyticsDataAssociationsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListApprovedOriginsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListBotsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListContactEvaluationsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3039,6 +3457,7 @@ "ListDefaultVocabulariesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListEvaluationFormVersionsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListEvaluationFormsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListFlowAssociationsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListHoursOfOperationsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListInstanceAttributesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListInstanceStorageConfigsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3046,14 +3465,18 @@ "ListLambdaFunctionsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListLexBotsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListPhoneNumbersRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListPhoneNumbersSummary$InstanceId": "

The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListPhoneNumbersV2Request$InstanceId": "

The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. If both TargetArn and InstanceId are not provided, this API lists numbers claimed to all the Amazon Connect instances belonging to your account in the same AWS Region as the request.

", "ListPromptsRequest$InstanceId": "

The identifier of the Amazon Connect instance.

", "ListQueueQuickConnectsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListQueuesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListQuickConnectsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListRealtimeContactAnalysisSegmentsV2Request$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListRoutingProfileQueuesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListRoutingProfilesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListRulesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListSecurityKeysRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListSecurityProfileApplicationsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListSecurityProfilePermissionsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListSecurityProfilesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListTaskTemplatesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3065,13 +3488,14 @@ "ReplicateInstanceResponse$Id": "

The identifier of the replicated instance. You can find the instanceId in the ARN of the instance. The replicated instance has the same identifier as the instance it was replicated from.

", "ResumeContactRecordingRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "RoutingProfile$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "SearchAvailablePhoneNumbersRequest$InstanceId": "

The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId or TargetArn.

", "SearchHoursOfOperationsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "SearchPromptsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "SearchQueuesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "SearchQuickConnectsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "SearchRoutingProfilesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "SearchSecurityProfilesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", - "SearchUsersRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "SearchUsersRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

InstanceID is a required field. The \"Required: No\" below is incorrect.

", "SearchVocabulariesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "SecurityProfile$OrganizationResourceId": "

The organization resource identifier for the security profile.

", "SecurityProfileSearchSummary$OrganizationResourceId": "

The organization resource identifier.

", @@ -3081,6 +3505,7 @@ "StartContactStreamingRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "StartOutboundVoiceContactRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "StartTaskContactRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "StartWebRTCContactRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "StopContactRecordingRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "StopContactRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "StopContactStreamingRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3102,6 +3527,7 @@ "UpdateInstanceAttributeRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "UpdateInstanceStorageConfigRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "UpdateParticipantRoleConfigRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "UpdatePhoneNumberRequest$InstanceId": "

The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId or TargetArn.

", "UpdatePromptRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "UpdateQueueHoursOfOperationRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "UpdateQueueMaxContactsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3239,6 +3665,19 @@ "refs": { } }, + "IntervalDetails": { + "base": "

Information about the interval period to use for returning results.

", + "refs": { + "GetMetricDataV2Request$Interval": "

The interval period and timezone to apply to returned metrics.

  • IntervalPeriod: An aggregated grouping applied to request metrics. Valid IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK | TOTAL.

    For example, if IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime differs by 1 day, then Amazon Connect returns 48 results in the response. Each result is aggregated by the THIRTY_MIN period. By default Amazon Connect aggregates results based on the TOTAL interval period.

    The following list describes restrictions on StartTime and EndTime based on which IntervalPeriod is requested.

    • FIFTEEN_MIN: The difference between StartTime and EndTime must be less than 3 days.

    • THIRTY_MIN: The difference between StartTime and EndTime must be less than 3 days.

    • HOUR: The difference between StartTime and EndTime must be less than 3 days.

    • DAY: The difference between StartTime and EndTime must be less than 35 days.

    • WEEK: The difference between StartTime and EndTime must be less than 35 days.

    • TOTAL: The difference between StartTime and EndTime must be less than 35 days.

  • TimeZone: The timezone applied to requested metrics.

" + } + }, + "IntervalPeriod": { + "base": null, + "refs": { + "IntervalDetails$IntervalPeriod": "

IntervalPeriod: An aggregated grouping applied to request metrics. Valid IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK | TOTAL.

For example, if IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime differs by 1 day, then Amazon Connect returns 48 results in the response. Each result is aggregated by the THIRTY_MIN period. By default Amazon Connect aggregates results based on the TOTAL interval period.

The following list describes restrictions on StartTime and EndTime based on what IntervalPeriod is requested.

  • FIFTEEN_MIN: The difference between StartTime and EndTime must be less than 3 days.

  • THIRTY_MIN: The difference between StartTime and EndTime must be less than 3 days.

  • HOUR: The difference between StartTime and EndTime must be less than 3 days.

  • DAY: The difference between StartTime and EndTime must be less than 35 days.

  • WEEK: The difference between StartTime and EndTime must be less than 35 days.

  • TOTAL: The difference between StartTime and EndTime must be less than 35 days.

", + "MetricInterval$Interval": "

The interval period provided in the API request.

" + } + }, "InvalidContactFlowException": { "base": "

The flow is not valid.

", "refs": { @@ -3271,6 +3710,12 @@ "TaskTemplateConstraints$InvisibleFields": "

Lists the fields that are invisible to agents.

" } }, + "JoinToken": { + "base": null, + "refs": { + "Attendee$JoinToken": "

The join token used by the Amazon Chime SDK attendee.

" + } + }, "KeyId": { "base": null, "refs": { @@ -3300,6 +3745,8 @@ "refs": { "ListPhoneNumbersV2Request$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListPhoneNumbersV2Response$NextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListRealtimeContactAnalysisSegmentsV2Request$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListRealtimeContactAnalysisSegmentsV2Response$NextToken": "

If there are additional results, this is the token for the next set of results.

", "SearchAvailablePhoneNumbersRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "SearchAvailablePhoneNumbersResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

" } @@ -3368,6 +3815,16 @@ "refs": { } }, + "ListAnalyticsDataAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListAnalyticsDataAssociationsResponse": { + "base": null, + "refs": { + } + }, "ListApprovedOriginsRequest": { "base": null, "refs": { @@ -3458,6 +3915,24 @@ "refs": { } }, + "ListFlowAssociationResourceType": { + "base": null, + "refs": { + "BatchGetFlowAssociationRequest$ResourceType": "

The type of resource association.

", + "FlowAssociationSummary$ResourceType": "

The type of resource association.

", + "ListFlowAssociationsRequest$ResourceType": "

A valid resource type.

" + } + }, + "ListFlowAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListFlowAssociationsResponse": { + "base": null, + "refs": { + } + }, "ListHoursOfOperationsRequest": { "base": null, "refs": { @@ -3600,6 +4075,16 @@ "refs": { } }, + "ListRealtimeContactAnalysisSegmentsV2Request": { + "base": null, + "refs": { + } + }, + "ListRealtimeContactAnalysisSegmentsV2Response": { + "base": null, + "refs": { + } + }, "ListRoutingProfileQueuesRequest": { "base": null, "refs": { @@ -3640,6 +4125,16 @@ "refs": { } }, + "ListSecurityProfileApplicationsRequest": { + "base": null, + "refs": { + } + }, + "ListSecurityProfileApplicationsResponse": { + "base": null, + "refs": { + } + }, "ListSecurityProfilePermissionsRequest": { "base": null, "refs": { @@ -3779,6 +4274,7 @@ "ListEvaluationFormsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListIntegrationAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListQueueQuickConnectsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", + "ListRealtimeContactAnalysisSegmentsV2Request$MaxResults": "

The maximum number of results to return per page.

", "ListRoutingProfileQueuesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListTaskTemplatesRequest$MaxResults": "

The maximum number of results to return per page.

It is not expected that you set this.

", "ListUseCasesRequest$MaxResults": "

The maximum number of results to return per page.

", @@ -3797,8 +4293,10 @@ "base": null, "refs": { "ListAgentStatusRequest$MaxResults": "

The maximum number of results to return per page.

", + "ListAnalyticsDataAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListContactFlowModulesRequest$MaxResults": "

The maximum number of results to return per page.

", "ListContactFlowsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", + "ListFlowAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListHoursOfOperationsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListPhoneNumbersRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListPhoneNumbersV2Request$MaxResults": "

The maximum number of results to return per page.

", @@ -3806,6 +4304,7 @@ "ListQueuesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListQuickConnectsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListRoutingProfilesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", + "ListSecurityProfileApplicationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListSecurityProfilePermissionsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListSecurityProfilesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListUserHierarchyGroupsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", @@ -3865,6 +4364,42 @@ "MediaConcurrencies$member": null } }, + "MediaPlacement": { + "base": "

A set of endpoints used by clients to connect to the media service group for an Amazon Chime SDK meeting.

", + "refs": { + "Meeting$MediaPlacement": "

The media placement for the meeting.

" + } + }, + "MediaRegion": { + "base": null, + "refs": { + "Meeting$MediaRegion": "

The Amazon Web Services Region in which you create the meeting.

" + } + }, + "Meeting": { + "base": "

A meeting created using the Amazon Chime SDK.

", + "refs": { + "ConnectionData$Meeting": "

A meeting created using the Amazon Chime SDK.

" + } + }, + "MeetingFeatureStatus": { + "base": null, + "refs": { + "AudioFeatures$EchoReduction": "

Makes echo reduction available to clients who connect to the meeting.

" + } + }, + "MeetingFeaturesConfiguration": { + "base": "

The configuration settings of the features available to a meeting.

", + "refs": { + "Meeting$MeetingFeatures": "

The configuration settings of the features available to a meeting.

" + } + }, + "MeetingId": { + "base": null, + "refs": { + "Meeting$MeetingId": "

The Amazon Chime SDK meeting ID.

" + } + }, "Message": { "base": null, "refs": { @@ -3880,6 +4415,7 @@ "LimitExceededException$Message": "

The message about the limit.

", "MaximumResultReturnedException$Message": null, "OutboundContactNotPermittedException$Message": "

The message about the contact.

", + "OutputTypeNotFoundException$Message": null, "PropertyValidationException$Message": null, "PropertyValidationExceptionProperty$Message": "

A message describing why the property is not valid.

", "ResourceConflictException$Message": null, @@ -3922,6 +4458,12 @@ "MetricV2$MetricFilters": "

Contains the filters to be used when returning data.

" } }, + "MetricInterval": { + "base": "

The interval period with the start and end time for the metrics.

", + "refs": { + "MetricResultV2$MetricInterval": "

The interval period with the start and end time for the metrics.

" + } + }, "MetricNameV2": { "base": null, "refs": { @@ -3950,7 +4492,7 @@ "MetricsV2": { "base": null, "refs": { - "GetMetricDataV2Request$Metrics": "

The metrics to retrieve. Specify the name, groupings, and filters for each metric. The following historical metrics are available. For a description of each metric, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

AGENT_ADHERENT_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_OCCUPANCY

Unit: Percentage

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULE_ADHERENCE

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULED_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_ABANDON_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_CONTACT_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_CONVERSATION_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_GREETING_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLDS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERACTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERRUPTIONS_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERRUPTION_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_NON_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_QUEUE_ANSWER_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_CUSTOMER

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_ABANDONED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_CREATED

Unit: Count

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HANDLED

Unit: Count

Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HOLD_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_QUEUED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_TRANSFERRED_OUT_BY_AGENT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

MAX_QUEUED_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ANSWERED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ABANDONED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_DISCONNECTED

Valid metric filter key: DISCONNECT_REASON

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

SUM_RETRY_CALLBACK_ATTEMPTS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

" + "GetMetricDataV2Request$Metrics": "

The metrics to retrieve. Specify the name, groupings, and filters for each metric. The following historical metrics are available. For a description of each metric, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

ABANDONMENT_RATE

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

AGENT_ADHERENT_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_ANSWER_RATE

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_ADHERENT_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE_WITHOUT_CUSTOMER_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

Data for this metric is available starting from October 1, 2023 0:00:00 GMT.

AGENT_OCCUPANCY

Unit: Percentage

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULE_ADHERENCE

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULED_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_ABANDON_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

AVG_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

The Negate key in Metric Level Filters is not applicable for this metric.

AVG_CONTACT_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_CONVERSATION_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

AVG_GREETING_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME_ALL_CONTACTS

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_HOLDS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_INTERACTION_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_INTERRUPTIONS_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_INTERRUPTION_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_NON_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_QUEUE_ANSWER_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

AVG_RESOLUTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype

AVG_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_TALK_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

AVG_TALK_TIME_CUSTOMER

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

CONTACTS_ABANDONED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

CONTACTS_CREATED

Unit: Count

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

CONTACTS_HANDLED

Unit: Count

Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

CONTACTS_HOLD_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

CONTACTS_ON_HOLD_AGENT_DISCONNECT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_ON_HOLD_CUSTOMER_DISCONNECT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_PUT_ON_HOLD

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_EXTERNAL

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_INTERNAL

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_QUEUED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

CONTACTS_RESOLVED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype

Threshold: For ThresholdValue enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

CONTACTS_TRANSFERRED_OUT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype

Feature is a valid filter but not a valid grouping.

CONTACTS_TRANSFERRED_OUT_BY_AGENT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

MAX_QUEUED_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

PERCENT_NON_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Percentage

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

PERCENT_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Percentage

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

PERCENT_TALK_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Percentage

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

PERCENT_TALK_TIME_CUSTOMER

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Percentage

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_CONNECTING_TIME_AGENT

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. This metric only supports the following filter keys as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

The Negate key in Metric Level Filters is not applicable for this metric.

SUM_CONTACT_FLOW_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_CONTACT_TIME_AGENT

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_CONTACTS_ANSWERED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ABANDONED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_DISCONNECTED

Valid metric filter key: DISCONNECT_REASON

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, contact/segmentAttributes/connect:Subtype

SUM_ERROR_STATUS_TIME_AGENT

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_HOLD_TIME

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_IDLE_TIME_AGENT

Unit: Seconds

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

SUM_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_INTERACTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SUM_NON_PRODUCTIVE_TIME_AGENT

Unit: Seconds

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

SUM_ONLINE_TIME_AGENT

Unit: Seconds

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

SUM_RETRY_CALLBACK_ATTEMPTS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype

" } }, "MinutesLimit60": { @@ -3991,6 +4533,24 @@ "TrafficDistributionGroupSummary$Name": "

The name of the traffic distribution group.

" } }, + "Namespace": { + "base": null, + "refs": { + "Application$Namespace": "

Namespace of the application that you want to give access to.

" + } + }, + "NewChatCreated": { + "base": null, + "refs": { + "SendChatIntegrationEventResponse$NewChatCreated": "

Whether handling the integration event resulted in creating a new chat or acting on existing chat.

" + } + }, + "NewSessionDetails": { + "base": "

Payload of chat properties to apply when starting a new contact.

", + "refs": { + "SendChatIntegrationEventRequest$NewSessionDetails": "

Contact properties to apply when starting a new chat. If the integration event is handled with an existing chat, this is ignored.

" + } + }, "NextToken": { "base": null, "refs": { @@ -4002,6 +4562,8 @@ "GetMetricDataResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

The token expires after 5 minutes from the time it is created. Subsequent requests that use the token must use the same request parameters as the request that generated the token.

", "ListAgentStatusRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListAgentStatusResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListAnalyticsDataAssociationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListAnalyticsDataAssociationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListApprovedOriginsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListApprovedOriginsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListBotsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", @@ -4018,6 +4580,8 @@ "ListEvaluationFormVersionsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListEvaluationFormsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListEvaluationFormsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListFlowAssociationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListFlowAssociationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListHoursOfOperationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListHoursOfOperationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListInstanceAttributesRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", @@ -4050,6 +4614,8 @@ "ListRulesResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListSecurityKeysRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListSecurityKeysResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListSecurityProfileApplicationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListSecurityProfileApplicationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListSecurityProfilePermissionsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListSecurityProfilePermissionsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListSecurityProfilesRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", @@ -4168,6 +4734,11 @@ "refs": { } }, + "OutputTypeNotFoundException": { + "base": "

Thrown for analyzed content when requested OutputType was not enabled for a given contact. For example, if an OutputType.Raw was requested for a contact that had `RedactedOnly` Redaction policy set in Contact flow.

", + "refs": { + } + }, "PEM": { "base": null, "refs": { @@ -4175,10 +4746,19 @@ "SecurityKey$Key": "

The key of the security key.

" } }, + "ParticipantCapabilities": { + "base": "

The configuration for the allowed capabilities for participants present over the call.

", + "refs": { + "AllowedCapabilities$Customer": "

Information about the customer's video sharing capabilities.

", + "AllowedCapabilities$Agent": "

Information about the agent's video sharing capabilities.

" + } + }, "ParticipantDetails": { "base": "

The customer's details.

", "refs": { - "StartChatContactRequest$ParticipantDetails": "

Information identifying the participant.

" + "NewSessionDetails$ParticipantDetails": null, + "StartChatContactRequest$ParticipantDetails": "

Information identifying the participant.

", + "StartWebRTCContactRequest$ParticipantDetails": null } }, "ParticipantDetailsToAdd": { @@ -4191,13 +4771,20 @@ "base": null, "refs": { "CreateParticipantResponse$ParticipantId": "

The identifier for a chat participant. The participantId for a chat participant is the same throughout the chat lifecycle.

", - "StartChatContactResponse$ParticipantId": "

The identifier for a chat participant. The participantId for a chat participant is the same throughout the chat lifecycle.

" + "RealTimeContactAnalysisSegmentAttachments$ParticipantId": "

The identifier of the participant.

", + "RealTimeContactAnalysisSegmentEvent$ParticipantId": "

The identifier of the participant.

", + "RealTimeContactAnalysisSegmentTranscript$ParticipantId": "

The identifier of the participant.

", + "StartChatContactResponse$ParticipantId": "

The identifier for a chat participant. The participantId for a chat participant is the same throughout the chat lifecycle.

", + "StartWebRTCContactResponse$ParticipantId": "

The identifier for a contact participant. The ParticipantId for a contact participant is the same throughout the contact lifecycle.

" } }, "ParticipantRole": { "base": null, "refs": { - "ParticipantDetailsToAdd$ParticipantRole": "

The role of the participant being added.

" + "ParticipantDetailsToAdd$ParticipantRole": "

The role of the participant being added.

", + "RealTimeContactAnalysisSegmentAttachments$ParticipantRole": "

The role of the participant. For example, is it a customer, agent, or system.

", + "RealTimeContactAnalysisSegmentEvent$ParticipantRole": "

The role of the participant. For example, is it a customer, agent, or system.

", + "RealTimeContactAnalysisSegmentTranscript$ParticipantRole": "

The role of the participant. For example, is it a customer, agent, or system.

" } }, "ParticipantTimerAction": { @@ -4240,7 +4827,8 @@ "base": null, "refs": { "ParticipantTokenCredentials$ParticipantToken": "

The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat participant.

", - "StartChatContactResponse$ParticipantToken": "

The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat participant.

" + "StartChatContactResponse$ParticipantToken": "

The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat participant.

", + "StartWebRTCContactResponse$ParticipantToken": "

The token used by the contact participant to call the CreateParticipantConnection API. The participant token is valid for the lifetime of a contact participant.

" } }, "ParticipantTokenCredentials": { @@ -4261,6 +4849,12 @@ "Distribution$Percentage": "

The percentage of the traffic that is distributed, in increments of 10.

" } }, + "Permission": { + "base": null, + "refs": { + "ApplicationPermissions$member": null + } + }, "PermissionsList": { "base": null, "refs": { @@ -4312,7 +4906,10 @@ "base": null, "refs": { "ClaimPhoneNumberRequest$PhoneNumberDescription": "

The description of the phone number.

", - "ClaimedPhoneNumberSummary$PhoneNumberDescription": "

The description of the phone number.

" + "ClaimedPhoneNumberSummary$PhoneNumberDescription": "

The description of the phone number.

", + "ImportPhoneNumberRequest$PhoneNumberDescription": "

The description of the phone number.

", + "ListPhoneNumbersSummary$PhoneNumberDescription": "

The description of the phone number.

", + "UpdatePhoneNumberMetadataRequest$PhoneNumberDescription": "

The description of the phone number.

" } }, "PhoneNumberId": { @@ -4323,10 +4920,12 @@ "ClaimedPhoneNumberSummary$PhoneNumberId": "

A unique identifier for the phone number.

", "DescribePhoneNumberRequest$PhoneNumberId": "

A unique identifier for the phone number.

", "DisassociatePhoneNumberContactFlowRequest$PhoneNumberId": "

A unique identifier for the phone number.

", + "ImportPhoneNumberResponse$PhoneNumberId": "

A unique identifier for the phone number.

", "ListPhoneNumbersSummary$PhoneNumberId": "

A unique identifier for the phone number.

", "OutboundCallerConfig$OutboundCallerIdNumberId": "

The caller ID number.

", "PhoneNumberSummary$Id": "

The identifier of the phone number.

", "ReleasePhoneNumberRequest$PhoneNumberId": "

A unique identifier for the phone number.

", + "UpdatePhoneNumberMetadataRequest$PhoneNumberId": "

The Amazon Resource Name (ARN) or resource ID of the phone number.

", "UpdatePhoneNumberRequest$PhoneNumberId": "

A unique identifier for the phone number.

", "UpdatePhoneNumberResponse$PhoneNumberId": "

A unique identifier for the phone number.

" } @@ -4345,9 +4944,9 @@ } }, "PhoneNumberStatus": { - "base": "

The status of the phone number.

  • CLAIMED means the previous ClaimedPhoneNumber or UpdatePhoneNumber operation succeeded.

  • IN_PROGRESS means a ClaimedPhoneNumber or UpdatePhoneNumber operation is still in progress and has not yet completed. You can call DescribePhoneNumber at a later time to verify if the previous operation has completed.

  • FAILED indicates that the previous ClaimedPhoneNumber or UpdatePhoneNumber operation has failed. It will include a message indicating the failure reason. A common reason for a failure may be that the TargetArn value you are claiming or updating a phone number to has reached its limit of total claimed numbers. If you received a FAILED status from a ClaimPhoneNumber API call, you have one day to retry claiming the phone number before the number is released back to the inventory for other customers to claim.

", + "base": "

The status of the phone number.

  • CLAIMED means the previous ClaimPhoneNumber or UpdatePhoneNumber operation succeeded.

  • IN_PROGRESS means a ClaimPhoneNumber, UpdatePhoneNumber, or UpdatePhoneNumberMetadata operation is still in progress and has not yet completed. You can call DescribePhoneNumber at a later time to verify if the previous operation has completed.

  • FAILED indicates that the previous ClaimPhoneNumber or UpdatePhoneNumber operation has failed. It will include a message indicating the failure reason. A common reason for a failure may be that the TargetArn value you are claiming or updating a phone number to has reached its limit of total claimed numbers. If you received a FAILED status from a ClaimPhoneNumber API call, you have one day to retry claiming the phone number before the number is released back to the inventory for other customers to claim.

", "refs": { - "ClaimedPhoneNumberSummary$PhoneNumberStatus": "

The status of the phone number.

  • CLAIMED means the previous ClaimedPhoneNumber or UpdatePhoneNumber operation succeeded.

  • IN_PROGRESS means a ClaimedPhoneNumber or UpdatePhoneNumber operation is still in progress and has not yet completed. You can call DescribePhoneNumber at a later time to verify if the previous operation has completed.

  • FAILED indicates that the previous ClaimedPhoneNumber or UpdatePhoneNumber operation has failed. It will include a message indicating the failure reason. A common reason for a failure may be that the TargetArn value you are claiming or updating a phone number to has reached its limit of total claimed numbers. If you received a FAILED status from a ClaimPhoneNumber API call, you have one day to retry claiming the phone number before the number is released back to the inventory for other customers to claim.

You will not be billed for the phone number during the 1-day period if number claiming fails.

" + "ClaimedPhoneNumberSummary$PhoneNumberStatus": "

The status of the phone number.

  • CLAIMED means the previous ClaimPhoneNumber or UpdatePhoneNumber operation succeeded.

  • IN_PROGRESS means a ClaimPhoneNumber, UpdatePhoneNumber, or UpdatePhoneNumberMetadata operation is still in progress and has not yet completed. You can call DescribePhoneNumber at a later time to verify if the previous operation has completed.

  • FAILED indicates that the previous ClaimPhoneNumber or UpdatePhoneNumber operation has failed. It will include a message indicating the failure reason. A common reason for a failure may be that the TargetArn value you are claiming or updating a phone number to has reached its limit of total claimed numbers. If you received a FAILED status from a ClaimPhoneNumber API call, you have one day to retry claiming the phone number before the number is released back to the inventory for other customers to claim.

You will not be billed for the phone number during the 1-day period if number claiming fails.

" } }, "PhoneNumberSummary": { @@ -4376,7 +4975,7 @@ "PhoneNumberTypes": { "base": null, "refs": { - "ListPhoneNumbersRequest$PhoneNumberTypes": "

The type of phone number.

", + "ListPhoneNumbersRequest$PhoneNumberTypes": "

The type of phone number.

We recommend using ListPhoneNumbersV2 to return phone number types. While ListPhoneNumbers returns number types UIFN, SHARED, THIRD_PARTY_TF, and THIRD_PARTY_DID, it incorrectly lists them as TOLL_FREE or DID.

", "ListPhoneNumbersV2Request$PhoneNumberTypes": "

The type of phone number.

" } }, @@ -4561,6 +5160,7 @@ "base": null, "refs": { "AssociateQueueQuickConnectsRequest$QueueId": "

The identifier for the queue.

", + "ContactDataRequest$QueueId": "

The identifier of the queue associated with the Amazon Connect instance in which contacts that are created will be queued.

", "CreateQueueResponse$QueueId": "

The identifier for the queue.

", "CreateRoutingProfileRequest$DefaultOutboundQueueId": "

The default outbound queue for the routing profile.

", "DeleteQueueRequest$QueueId": "

The identifier for the queue.

", @@ -4716,7 +5316,7 @@ "QuickConnect$QuickConnectId": "

The identifier for the quick connect.

", "QuickConnectSummary$Id": "

The identifier for the quick connect.

", "QuickConnectsList$member": null, - "StartTaskContactRequest$QuickConnectId": "

The identifier for the quick connect.

", + "StartTaskContactRequest$QuickConnectId": "

The identifier for the quick connect. Tasks that are created by using QuickConnectId will use the flow that is defined on agent or queue quick connect. For more information about quick connects, see Create quick connects.

", "UpdateQuickConnectConfigRequest$QuickConnectId": "

The identifier for the quick connect.

", "UpdateQuickConnectNameRequest$QuickConnectId": "

The identifier for the quick connect.

" } @@ -4724,7 +5324,7 @@ "QuickConnectName": { "base": null, "refs": { - "CreateQuickConnectRequest$Name": "

The name of the quick connect.

", + "CreateQuickConnectRequest$Name": "

A unique name of the quick connect.

", "QuickConnect$Name": "

The name of the quick connect.

", "QuickConnectSummary$Name": "

The name of the quick connect.

", "UpdateQuickConnectNameRequest$Name": "

The name of the quick connect.

" @@ -4772,15 +5372,15 @@ "QuickConnectType": { "base": null, "refs": { - "QuickConnectConfig$QuickConnectType": "

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

", - "QuickConnectSummary$QuickConnectType": "

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

", + "QuickConnectConfig$QuickConnectType": "

The type of quick connect. In the Amazon Connect admin website, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

", + "QuickConnectSummary$QuickConnectType": "

The type of quick connect. In the Amazon Connect admin website, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

", "QuickConnectTypes$member": null } }, "QuickConnectTypes": { "base": null, "refs": { - "ListQuickConnectsRequest$QuickConnectTypes": "

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

" + "ListQuickConnectsRequest$QuickConnectTypes": "

The type of quick connect. In the Amazon Connect admin website, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

" } }, "QuickConnectsList": { @@ -4803,6 +5403,232 @@ "TaskTemplateConstraints$ReadOnlyFields": "

Lists the fields that are read-only to agents, and cannot be edited.

" } }, + "RealTimeContactAnalysisAttachment": { + "base": "

Object that describes attached file.

", + "refs": { + "RealTimeContactAnalysisAttachments$member": null + } + }, + "RealTimeContactAnalysisAttachments": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentAttachments$Attachments": "

List of objects describing an individual attachment.

" + } + }, + "RealTimeContactAnalysisCategoryDetails": { + "base": "

Provides information about the category rule that was matched.

", + "refs": { + "RealTimeContactAnalysisMatchedDetails$value": null + } + }, + "RealTimeContactAnalysisCategoryName": { + "base": null, + "refs": { + "RealTimeContactAnalysisMatchedDetails$key": null + } + }, + "RealTimeContactAnalysisCharacterInterval": { + "base": "

Begin and end offsets for a part of text.

", + "refs": { + "RealTimeContactAnalysisCharacterIntervals$member": null, + "RealTimeContactAnalysisTranscriptItemWithCharacterOffsets$CharacterOffsets": "

List of character intervals within transcript content/text.

", + "RealTimeContactAnalysisTranscriptItemWithContent$CharacterOffsets": null + } + }, + "RealTimeContactAnalysisCharacterIntervals": { + "base": null, + "refs": { + "RealTimeContactAnalysisTranscriptItemRedaction$CharacterOffsets": "

List of character intervals each describing a part of the text that was redacted. For OutputType.Raw, part of the original text that contains data that can be redacted. For OutputType.Redacted, part of the string with redaction tag.

" + } + }, + "RealTimeContactAnalysisContentType": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentTranscript$ContentType": "

The type of content of the item. For example, text/plain.

" + } + }, + "RealTimeContactAnalysisEventType": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentEvent$EventType": "

Type of the event. For example, application/vnd.amazonaws.connect.event.participant.left.

" + } + }, + "RealTimeContactAnalysisId256": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentAttachments$Id": "

The identifier of the segment.

", + "RealTimeContactAnalysisSegmentEvent$Id": "

The identifier of the contact event.

", + "RealTimeContactAnalysisSegmentTranscript$Id": "

The identifier of the transcript.

", + "RealTimeContactAnalysisTranscriptItemWithCharacterOffsets$Id": "

Transcript identifier. Matches the identifier from one of the TranscriptSegments.

", + "RealTimeContactAnalysisTranscriptItemWithContent$Id": "

Transcript identifier. Matches the identifier from one of the TranscriptSegments.

" + } + }, + "RealTimeContactAnalysisIssueDetected": { + "base": "

Potential issues that are detected based on an artificial intelligence analysis of each turn in the conversation.

", + "refs": { + "RealTimeContactAnalysisIssuesDetected$member": null + } + }, + "RealTimeContactAnalysisIssuesDetected": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentIssues$IssuesDetected": "

List of the issues detected.

" + } + }, + "RealTimeContactAnalysisMatchedDetails": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentCategories$MatchedDetails": "

Map between the name of the matched rule and RealTimeContactAnalysisCategoryDetails.

" + } + }, + "RealTimeContactAnalysisOffset": { + "base": null, + "refs": { + "RealTimeContactAnalysisCharacterInterval$BeginOffsetChar": "

The beginning of the character interval.

", + "RealTimeContactAnalysisCharacterInterval$EndOffsetChar": "

The end of the character interval.

" + } + }, + "RealTimeContactAnalysisOutputType": { + "base": null, + "refs": { + "ListRealtimeContactAnalysisSegmentsV2Request$OutputType": "

The Contact Lens output type to be returned.

" + } + }, + "RealTimeContactAnalysisPointOfInterest": { + "base": "

The section of the contact transcript segment that category rule was detected.

", + "refs": { + "RealTimeContactAnalysisPointsOfInterest$member": null + } + }, + "RealTimeContactAnalysisPointsOfInterest": { + "base": null, + "refs": { + "RealTimeContactAnalysisCategoryDetails$PointsOfInterest": "

List of PointOfInterest - objects describing a single match of a rule.

" + } + }, + "RealTimeContactAnalysisSegmentAttachments": { + "base": "

Segment containing list of attachments.

", + "refs": { + "RealtimeContactAnalysisSegment$Attachments": "

The analyzed attachments.

" + } + }, + "RealTimeContactAnalysisSegmentCategories": { + "base": "

The matched category rules.

", + "refs": { + "RealtimeContactAnalysisSegment$Categories": null + } + }, + "RealTimeContactAnalysisSegmentEvent": { + "base": "

Segment type describing a contact event.

", + "refs": { + "RealtimeContactAnalysisSegment$Event": null + } + }, + "RealTimeContactAnalysisSegmentIssues": { + "base": "

Segment type containing a list of detected issues.

", + "refs": { + "RealtimeContactAnalysisSegment$Issues": null + } + }, + "RealTimeContactAnalysisSegmentTranscript": { + "base": "

The analyzed transcript segment.

", + "refs": { + "RealtimeContactAnalysisSegment$Transcript": null + } + }, + "RealTimeContactAnalysisSegmentType": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentTypes$member": null + } + }, + "RealTimeContactAnalysisSegmentTypes": { + "base": null, + "refs": { + "ListRealtimeContactAnalysisSegmentsV2Request$SegmentTypes": "

Enum with segment types . Each value corresponds to a segment type returned in the segments list of the API. Each segment type has its own structure. Different channels may have different sets of supported segment types.

" + } + }, + "RealTimeContactAnalysisSentimentLabel": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentTranscript$Sentiment": "

The sentiment detected for this piece of transcript.

" + } + }, + "RealTimeContactAnalysisStatus": { + "base": null, + "refs": { + "ListRealtimeContactAnalysisSegmentsV2Response$Status": "

Status of real-time contact analysis.

" + } + }, + "RealTimeContactAnalysisSupportedChannel": { + "base": null, + "refs": { + "ListRealtimeContactAnalysisSegmentsV2Response$Channel": "

The channel of the contact. Voice will not be returned.

" + } + }, + "RealTimeContactAnalysisTimeData": { + "base": "

Object describing time with which the segment is associated. It can have different representations of time. Currently supported: absoluteTime

", + "refs": { + "RealTimeContactAnalysisSegmentAttachments$Time": "

Field describing the time of the event. It can have different representations of time.

", + "RealTimeContactAnalysisSegmentEvent$Time": "

Field describing the time of the event. It can have different representations of time.

", + "RealTimeContactAnalysisSegmentTranscript$Time": "

Field describing the time of the event. It can have different representations of time.

" + } + }, + "RealTimeContactAnalysisTimeInstant": { + "base": null, + "refs": { + "RealTimeContactAnalysisTimeData$AbsoluteTime": "

Time represented in ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example, 2019-11-08T02:41:28.172Z.

" + } + }, + "RealTimeContactAnalysisTranscriptContent": { + "base": null, + "refs": { + "RealTimeContactAnalysisSegmentTranscript$Content": "

The content of the transcript. Can be redacted.

", + "RealTimeContactAnalysisTranscriptItemWithContent$Content": "

Part of the transcript content that contains identified issue. Can be redacted

" + } + }, + "RealTimeContactAnalysisTranscriptItemRedaction": { + "base": "

Object describing redaction applied to the segment.

", + "refs": { + "RealTimeContactAnalysisSegmentTranscript$Redaction": "

Object describing redaction that was applied to the transcript. If transcript has the field it means part of the transcript was redacted.

" + } + }, + "RealTimeContactAnalysisTranscriptItemWithCharacterOffsets": { + "base": "

Transcript representation containing Id and list of character intervals that are associated with analysis data. For example, this object within a RealTimeContactAnalysisPointOfInterest in Category.MatchedDetails would have character interval describing part of the text that matched category.

", + "refs": { + "RealTimeContactAnalysisTranscriptItemsWithCharacterOffsets$member": null + } + }, + "RealTimeContactAnalysisTranscriptItemWithContent": { + "base": "

Transcript representation containing Id, Content and list of character intervals that are associated with analysis data. For example, this object within an issue detected would describe both content that contains identified issue and intervals where that content is taken from.

", + "refs": { + "RealTimeContactAnalysisTranscriptItemsWithContent$member": null + } + }, + "RealTimeContactAnalysisTranscriptItemsWithCharacterOffsets": { + "base": null, + "refs": { + "RealTimeContactAnalysisPointOfInterest$TranscriptItems": "

List of the transcript items (segments) that are associated with a given point of interest.

" + } + }, + "RealTimeContactAnalysisTranscriptItemsWithContent": { + "base": null, + "refs": { + "RealTimeContactAnalysisIssueDetected$TranscriptItems": "

List of the transcript items (segments) that are associated with a given issue.

" + } + }, + "RealtimeContactAnalysisSegment": { + "base": "

An analyzed segment for a real-time analysis session.

", + "refs": { + "RealtimeContactAnalysisSegments$member": null + } + }, + "RealtimeContactAnalysisSegments": { + "base": null, + "refs": { + "ListRealtimeContactAnalysisSegmentsV2Response$Segments": "

An analyzed transcript or category.

" + } + }, "Reference": { "base": "

Well-formed data on a contact, used by agents to complete a contact request. You can have up to 4,096 UTF-8 bytes across all references for a contact.

", "refs": { @@ -4874,9 +5700,39 @@ "UrlReference$Value": "

A valid URL.

" } }, + "RegionName": { + "base": null, + "refs": { + "AgentStatus$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "AgentStatusSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "GetPromptFileResponse$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "HierarchyGroup$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "HierarchyGroupSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "HierarchyLevel$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "HoursOfOperation$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "HoursOfOperationSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "ListQueueQuickConnectsResponse$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "ListRoutingProfileQueuesResponse$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "ListSecurityProfileApplicationsResponse$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "ListSecurityProfilePermissionsResponse$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "Prompt$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "PromptSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "Queue$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "QueueSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "QuickConnect$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "QuickConnectSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "RoutingProfile$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "RoutingProfileSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "SecurityProfile$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "SecurityProfileSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "User$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

", + "UserSummary$LastModifiedRegion": "

The Amazon Web Services Region where this resource was last modified.

" + } + }, "RehydrationType": { "base": null, "refs": { + "CreatePersistentContactAssociationRequest$RehydrationType": "

The contactId chosen for rehydration depends on the type chosen.

  • ENTIRE_PAST_SESSION: Rehydrates a chat from the most recently terminated past chat contact of the specified past ended chat session. To use this type, provide the initialContactId of the past ended chat session in the sourceContactId field. In this type, Amazon Connect determines what the most recent chat contact on the past ended chat session and uses it to start a persistent chat.

  • FROM_SEGMENT: Rehydrates a chat from the specified past chat contact provided in the sourceContactId field.

The actual contactId used for rehydration is provided in the response of this API.

To illustrate how to use rehydration type, consider the following example: A customer starts a chat session. Agent a1 accepts the chat and a conversation starts between the customer and Agent a1. This first contact creates a contact ID C1. Agent a1 then transfers the chat to Agent a2. This creates another contact ID C2. At this point Agent a2 ends the chat. The customer is forwarded to the disconnect flow for a post chat survey that creates another contact ID C3. After the chat survey, the chat session ends. Later, the customer returns and wants to resume their past chat session. At this point, the customer can have following use cases:

  • Use Case 1: The customer wants to continue the past chat session but they want to hide the post chat survey. For this they will use the following configuration:

    • Configuration

      • SourceContactId = \"C2\"

      • RehydrationType = \"FROM_SEGMENT\"

    • Expected behavior

      • This starts a persistent chat session from the specified past ended contact (C2). Transcripts of past chat sessions C2 and C1 are accessible in the current persistent chat session. Note that chat segment C3 is dropped from the persistent chat session.

  • Use Case 2: The customer wants to continue the past chat session and see the transcript of the entire past engagement, including the post chat survey. For this they will use the following configuration:

    • Configuration

      • SourceContactId = \"C1\"

      • RehydrationType = \"ENTIRE_PAST_SESSION\"

    • Expected behavior

      • This starts a persistent chat session from the most recently ended chat contact (C3). Transcripts of past chat sessions C3, C2 and C1 are accessible in the current persistent chat session.

", "PersistentChat$RehydrationType": "

The contactId that is used for rehydration depends on the rehydration type. RehydrationType is required for persistent chat.

  • ENTIRE_PAST_SESSION: Rehydrates a chat from the most recently terminated past chat contact of the specified past ended chat session. To use this type, provide the initialContactId of the past ended chat session in the sourceContactId field. In this type, Amazon Connect determines the most recent chat contact on the specified chat session that has ended, and uses it to start a persistent chat.

  • FROM_SEGMENT: Rehydrates a chat from the past chat contact that is specified in the sourceContactId field.

The actual contactId used for rehydration is provided in the response of this API.

" } }, @@ -4895,6 +5751,14 @@ "refs": { } }, + "RequestIdentifier": { + "base": null, + "refs": { + "ContactDataRequest$RequestIdentifier": "

Identifier to uniquely identify individual requests in the batch.

", + "FailedRequest$RequestIdentifier": "

Request identifier provided in the API call in the ContactDataRequest to create a contact.

", + "SuccessfulRequest$RequestIdentifier": "

Request identifier provided in the API call in the ContactDataRequest to create a contact.

" + } + }, "RequiredFieldInfo": { "base": "

Information about a required field.

", "refs": { @@ -5208,7 +6072,7 @@ } }, "RuleTriggerEventSource": { - "base": "

The name of the event source. This field is required if TriggerEventSource is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate

", + "base": "

The name of the event source. This field is required if TriggerEventSource is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate | OnContactEvaluationSubmit | OnMetricDataUpdate.

", "refs": { "CreateRuleRequest$TriggerEventSource": "

The event source to trigger the rule.

", "Rule$TriggerEventSource": "

The event source to trigger the rule.

" @@ -5223,8 +6087,8 @@ "S3Uri": { "base": null, "refs": { - "CreatePromptRequest$S3Uri": "

The URI for the S3 bucket where the prompt is stored.

", - "UpdatePromptRequest$S3Uri": "

The URI for the S3 bucket where the prompt is stored.

" + "CreatePromptRequest$S3Uri": "

The URI for the S3 bucket where the prompt is stored. You can provide S3 pre-signed URLs returned by the GetPromptFile API instead of providing S3 URIs.

", + "UpdatePromptRequest$S3Uri": "

The URI for the S3 bucket where the prompt is stored. You can provide S3 pre-signed URLs returned by the GetPromptFile API instead of providing S3 URIs.

" } }, "SearchAvailablePhoneNumbersRequest": { @@ -5366,6 +6230,7 @@ "CreateSecurityProfileResponse$SecurityProfileId": "

The identifier for the security profle.

", "DeleteSecurityProfileRequest$SecurityProfileId": "

The identifier for the security profle.

", "DescribeSecurityProfileRequest$SecurityProfileId": "

The identifier for the security profle.

", + "ListSecurityProfileApplicationsRequest$SecurityProfileId": "

The identifier for the security profle.

", "ListSecurityProfilePermissionsRequest$SecurityProfileId": "

The identifier for the security profle.

", "SecurityProfile$Id": "

The identifier for the security profile.

", "SecurityProfileIds$member": null, @@ -5460,10 +6325,44 @@ "Credentials$RefreshToken": "

Renews a token generated for a user to access the Amazon Connect instance.

" } }, + "SegmentAttributeName": { + "base": null, + "refs": { + "SegmentAttributes$key": null + } + }, + "SegmentAttributeValue": { + "base": "

A value for a segment attribute. This is structured as a map where the key is valueString and the value is a string.

", + "refs": { + "SegmentAttributes$value": null + } + }, + "SegmentAttributeValueString": { + "base": null, + "refs": { + "SegmentAttributeValue$ValueString": "

The value of a segment attribute.

" + } + }, + "SegmentAttributes": { + "base": null, + "refs": { + "StartChatContactRequest$SegmentAttributes": "

A set of system defined key-value pairs stored on individual contact segments using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows.

Attribute keys can include only alphanumeric, -, and _.

This field can be used to show channel subtype, such as connect:Guide.

The types application/vnd.amazonaws.connect.message.interactive and application/vnd.amazonaws.connect.message.interactive.response must be present in the SupportedMessagingContentTypes field of this API in order to set SegmentAttributes as { \"connect:Subtype\": {\"valueString\" : \"connect:Guide\" }}.

" + } + }, + "SendChatIntegrationEventRequest": { + "base": null, + "refs": { + } + }, + "SendChatIntegrationEventResponse": { + "base": null, + "refs": { + } + }, "SendNotificationActionDefinition": { "base": "

Information about the send notification action.

", "refs": { - "RuleAction$SendNotificationAction": "

Information about the send notification action.

" + "RuleAction$SendNotificationAction": "

Information about the send notification action.

Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit | OnMetricDataUpdate

" } }, "ServiceQuotaExceededException": { @@ -5472,10 +6371,10 @@ } }, "SignInConfig": { - "base": "

The distribution of allowing signing in to the instance and its replica(s).

", + "base": "

The distribution that determines which Amazon Web Services Regions should be used to sign in agents in to both the instance and its replica(s).

", "refs": { - "GetTrafficDistributionResponse$SignInConfig": "

The distribution of allowing signing in to the instance and its replica(s).

", - "UpdateTrafficDistributionRequest$SignInConfig": "

The distribution of allowing signing in to the instance and its replica(s).

" + "GetTrafficDistributionResponse$SignInConfig": "

The distribution that determines which Amazon Web Services Regions should be used to sign in agents in to both the instance and its replica(s).

", + "UpdateTrafficDistributionRequest$SignInConfig": "

The distribution that determines which Amazon Web Services Regions should be used to sign in agents in to both the instance and its replica(s).

" } }, "SignInDistribution": { @@ -5533,6 +6432,12 @@ "IntegrationAssociationSummary$SourceApplicationName": "

The user-provided, friendly name for the external application.

" } }, + "SourceId": { + "base": null, + "refs": { + "SendChatIntegrationEventRequest$SourceId": "

External identifier of chat customer participant, used in part to uniquely identify a chat. For SMS, this is the E164 phone number of the chat customer participant.

" + } + }, "SourceType": { "base": null, "refs": { @@ -5600,6 +6505,16 @@ "refs": { } }, + "StartWebRTCContactRequest": { + "base": null, + "refs": { + } + }, + "StartWebRTCContactResponse": { + "base": null, + "refs": { + } + }, "Statistic": { "base": null, "refs": { @@ -5652,8 +6567,14 @@ "String": { "base": null, "refs": { + "AnalyticsDataAssociationResult$ResourceShareId": "

The Resource Access Manager share ID.

", + "AssociateAnalyticsDataSetResponse$ResourceShareId": "

The Resource Access Manager share ID that is generated.

", + "ErrorResult$ErrorCode": "

The error code.

", + "ErrorResult$ErrorMessage": "

The corresponding error message for the error code.

", + "FailedRequest$FailureReasonMessage": "

Why the request to create a contact failed.

", "HierarchyGroupCondition$Value": "

The value in the hierarchy group condition.

", "InstanceStatusReason$Message": "

The message.

", + "IntervalDetails$TimeZone": "

The timezone applied to requested metrics.

", "MetricFilterV2$MetricFilterKey": "

The key to use for filtering data.

Valid metric filter keys: INITIATION_METHOD, DISCONNECT_REASON. These are the same values as the InitiationMethod and DisconnectReason in the contact record. For more information, see ContactTraceRecord in the Amazon Connect Administrator's Guide.

", "MetricFilterValueList$member": null, "PropertyValidationExceptionProperty$PropertyPath": "

The full property path.

", @@ -5708,6 +6629,24 @@ "refs": { } }, + "Subtype": { + "base": null, + "refs": { + "SendChatIntegrationEventRequest$Subtype": "

Classification of a channel. This is used in part to uniquely identify chat.

Valid value: [\"connect:sms\"]

" + } + }, + "SuccessfulRequest": { + "base": "

Request for which contact was successfully created.

", + "refs": { + "SuccessfulRequestList$member": null + } + }, + "SuccessfulRequestList": { + "base": null, + "refs": { + "BatchPutContactResponse$SuccessfulRequestList": "

List of requests for which contact was successfully created.

" + } + }, "SupportedMessagingContentType": { "base": null, "refs": { @@ -5717,6 +6656,7 @@ "SupportedMessagingContentTypes": { "base": null, "refs": { + "NewSessionDetails$SupportedMessagingContentTypes": "

The supported chat message content types. Supported types are text/plain, text/markdown, application/json, application/vnd.amazonaws.connect.message.interactive, and application/vnd.amazonaws.connect.message.interactive.response.

Content types must always contain text/plain. You can then put any other supported type in the list. For example, all the following lists are valid because they contain text/plain: [text/plain, text/markdown, application/json], [text/markdown, text/plain], [text/plain, application/json, application/vnd.amazonaws.connect.message.interactive.response].

", "StartChatContactRequest$SupportedMessagingContentTypes": "

The supported chat message content types. Supported types are text/plain, text/markdown, application/json, application/vnd.amazonaws.connect.message.interactive, and application/vnd.amazonaws.connect.message.interactive.response.

Content types must always contain text/plain. You can then put any other supported type in the list. For example, all the following lists are valid because they contain text/plain: [text/plain, text/markdown, application/json], [text/markdown, text/plain], [text/plain, application/json, application/vnd.amazonaws.connect.message.interactive.response].

The type application/vnd.amazonaws.connect.message.interactive is required to use the Show view flow block.

" } }, @@ -5776,6 +6716,7 @@ "CreateContactFlowModuleRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateContactFlowRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateHoursOfOperationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", + "CreateInstanceRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateIntegrationAssociationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreatePromptRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateQueueRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", @@ -5793,6 +6734,8 @@ "GetTaskTemplateResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "HierarchyGroup$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "HoursOfOperation$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", + "ImportPhoneNumberRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", + "Instance$Tags": "

The tags of an instance.

", "ListTagsForResourceResponse$tags": "

Information about the tags.

", "Prompt$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "Queue$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", @@ -5988,7 +6931,7 @@ "DeleteTaskTemplateRequest$TaskTemplateId": "

A unique identifier for the task template.

", "GetTaskTemplateRequest$TaskTemplateId": "

A unique identifier for the task template.

", "GetTaskTemplateResponse$Id": "

A unique identifier for the task template.

", - "StartTaskContactRequest$TaskTemplateId": "

A unique identifier for the task template.

", + "StartTaskContactRequest$TaskTemplateId": "

A unique identifier for the task template. For more information about task templates, see Create task templates in the Amazon Connect Administrator Guide.

", "TaskTemplateMetadata$Id": "

A unique identifier for the task template.

", "UpdateTaskTemplateRequest$TaskTemplateId": "

A unique identifier for the task template.

", "UpdateTaskTemplateResponse$Id": "

The identifier of the task template resource.

" @@ -6090,7 +7033,9 @@ "refs": { "AgentContactReference$StateStartTimestamp": "

The epoch timestamp when the contact state started.

", "AgentContactReference$ConnectedToAgentTimestamp": "

The time at which the contact was connected to an agent.

", + "AgentStatus$LastModifiedTime": "

The timestamp when this resource was last modified.

", "AgentStatusReference$StatusStartTimestamp": "

The start timestamp of the agent's status.

", + "AgentStatusSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", "Evaluation$CreatedTime": "

The timestamp for when the evaluation was created.

", "Evaluation$LastModifiedTime": "

The timestamp for when the evaluation was last updated.

", "EvaluationForm$CreatedTime": "

The timestamp for when the evaluation form was created.

", @@ -6102,16 +7047,40 @@ "EvaluationFormVersionSummary$LastModifiedTime": "

The timestamp for when the evaluation form was last updated.

", "EvaluationSummary$CreatedTime": "

The timestamp for when the evaluation was created.

", "EvaluationSummary$LastModifiedTime": "

The timestamp for when the evaluation was last updated.

", - "GetMetricDataV2Request$StartTime": "

The timestamp, in UNIX Epoch time format, at which to start the reporting interval for the retrieval of historical metrics data. The time must be before the end time timestamp. The time range between the start and end time must be less than 24 hours. The start time cannot be earlier than 35 days before the time of the request. Historical metrics are available for 35 days.

", - "GetMetricDataV2Request$EndTime": "

The timestamp, in UNIX Epoch time format, at which to end the reporting interval for the retrieval of historical metrics data. The time must be later than the start time timestamp. It cannot be later than the current timestamp.

The time range between the start and end time must be less than 24 hours.

", + "GetMetricDataV2Request$StartTime": "

The timestamp, in UNIX Epoch time format, at which to start the reporting interval for the retrieval of historical metrics data. The time must be before the end time timestamp. The start and end time depends on the IntervalPeriod selected. By default the time range between start and end time is 35 days. Historical metrics are available for 3 months.

", + "GetMetricDataV2Request$EndTime": "

The timestamp, in UNIX Epoch time format, at which to end the reporting interval for the retrieval of historical metrics data. The time must be later than the start time timestamp. It cannot be later than the current timestamp.

", + "GetPromptFileResponse$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "HierarchyGroup$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "HierarchyGroupSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "HierarchyLevel$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "HoursOfOperation$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "HoursOfOperationSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", "Instance$CreatedTime": "

When the instance was created.

", "InstanceSummary$CreatedTime": "

When the instance was created.

", + "ListQueueQuickConnectsResponse$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "ListRoutingProfileQueuesResponse$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "ListSecurityProfileApplicationsResponse$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "ListSecurityProfilePermissionsResponse$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "MetricInterval$StartTime": "

The timestamp, in UNIX Epoch time format. Start time is based on the interval period selected.

", + "MetricInterval$EndTime": "

The timestamp, in UNIX Epoch time format. End time is based on the interval period selected. For example, If IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime in the API request differs by 1 day, then 48 results are returned in the response. Each result is aggregated by the 30 minutes period, with each StartTime and EndTime differing by 30 minutes.

", + "Prompt$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "PromptSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "Queue$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "QueueSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "QuickConnect$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "QuickConnectSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "RoutingProfile$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "RoutingProfileSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", "Rule$CreatedTime": "

The timestamp for when the rule was created.

", "Rule$LastUpdatedTime": "

The timestamp for the when the rule was last updated.

", "RuleSummary$CreatedTime": "

The timestamp for when the rule was created.

", "RuleSummary$LastUpdatedTime": "

The timestamp for when the rule was last updated.

", + "SecurityProfile$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "SecurityProfileSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", "StartTaskContactRequest$ScheduledTime": "

The timestamp, in Unix Epoch seconds format, at which to start running the inbound flow. The scheduled time cannot be in the past. It must be within up to 6 days in future.

", "UpdateContactScheduleRequest$ScheduledTime": "

The timestamp, in Unix Epoch seconds format, at which to start running the inbound flow. The scheduled time cannot be in the past. It must be within up to 6 days in future.

", + "User$LastModifiedTime": "

The timestamp when this resource was last modified.

", + "UserSummary$LastModifiedTime": "

The timestamp when this resource was last modified.

", "View$CreatedTime": "

The timestamp of when the view was created.

", "View$LastModifiedTime": "

Latest timestamp of the UpdateViewContent or CreateViewVersion operations.

" } @@ -6160,7 +7129,7 @@ "TrafficDistributionGroupStatus": { "base": null, "refs": { - "TrafficDistributionGroup$Status": "

The status of the traffic distribution group.

", + "TrafficDistributionGroup$Status": "

The status of the traffic distribution group.

", "TrafficDistributionGroupSummary$Status": "

The status of the traffic distribution group.

" } }, @@ -6208,7 +7177,12 @@ "base": null, "refs": { "CreateIntegrationAssociationRequest$SourceApplicationUrl": "

The URL for the external application. This field is only required for the EVENT integration type.

", - "IntegrationAssociationSummary$SourceApplicationUrl": "

The URL for the external application.

" + "IntegrationAssociationSummary$SourceApplicationUrl": "

The URL for the external application.

", + "MediaPlacement$AudioHostUrl": "

The audio host URL.

", + "MediaPlacement$AudioFallbackUrl": "

The audio fallback URL.

", + "MediaPlacement$SignalingUrl": "

The signaling URL.

", + "MediaPlacement$TurnControlUrl": "

The turn control URL.

", + "MediaPlacement$EventIngestionUrl": "

The event ingestion URL to which you send client meeting events.

" } }, "Unit": { @@ -6371,6 +7345,11 @@ "refs": { } }, + "UpdatePhoneNumberMetadataRequest": { + "base": null, + "refs": { + } + }, "UpdatePhoneNumberRequest": { "base": null, "refs": { @@ -6760,6 +7739,12 @@ "UpdateEvaluationFormResponse$EvaluationFormVersion": "

The version of the updated evaluation form resource.

" } }, + "VideoCapability": { + "base": null, + "refs": { + "ParticipantCapabilities$Video": "

The configuration having the video sharing capabilities for participants over the call.

" + } + }, "View": { "base": "

A view resource object. Contains metadata and content necessary to render the view.

", "refs": { @@ -7043,6 +8028,12 @@ "Contact$WisdomInfo": "

Information about Amazon Connect Wisdom.

" } }, + "resourceArnListMaxLimit100": { + "base": null, + "refs": { + "BatchGetFlowAssociationRequest$ResourceIds": "

A list of resource identifiers to retrieve flow associations.

" + } + }, "timestamp": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connect/2017-08-08/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connect/2017-08-08/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -78,6 +78,12 @@ "output_token": "NextToken", "result_key": "EvaluationFormSummaryList" }, + "ListFlowAssociations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "FlowAssociationSummaryList" + }, "ListHoursOfOperations": { "input_token": "NextToken", "limit_key": "MaxResults", @@ -141,6 +147,10 @@ "ListQueueQuickConnects": { "input_token": "NextToken", "limit_key": "MaxResults", + "non_aggregate_keys": [ + "LastModifiedRegion", + "LastModifiedTime" + ], "output_token": "NextToken", "result_key": "QuickConnectSummaryList" }, @@ -156,9 +166,18 @@ "output_token": "NextToken", "result_key": "QuickConnectSummaryList" }, + "ListRealtimeContactAnalysisSegmentsV2": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "ListRoutingProfileQueues": { "input_token": "NextToken", "limit_key": "MaxResults", + "non_aggregate_keys": [ + "LastModifiedRegion", + "LastModifiedTime" + ], "output_token": "NextToken", "result_key": "RoutingProfileQueueConfigSummaryList" }, @@ -180,9 +199,23 @@ "output_token": "NextToken", "result_key": "SecurityKeys" }, + "ListSecurityProfileApplications": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "non_aggregate_keys": [ + "LastModifiedRegion", + "LastModifiedTime" + ], + "output_token": "NextToken", + "result_key": "Applications" + }, "ListSecurityProfilePermissions": { "input_token": "NextToken", "limit_key": "MaxResults", + "non_aggregate_keys": [ + "LastModifiedRegion", + "LastModifiedTime" + ], "output_token": "NextToken", "result_key": "Permissions" }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -728,7 +728,7 @@ }, "CommentBody":{ "type":"string", - "max":1000, + "max":3000, "min":1 }, "CommentBodyTextType":{ @@ -945,6 +945,7 @@ "location":"uri", "locationName":"domainId" }, + "performedBy":{"shape":"UserUnion"}, "type":{"shape":"RelatedItemType"} } }, @@ -1252,7 +1253,7 @@ }, "FieldValueUnionStringValueString":{ "type":"string", - "max":500, + "max":1500, "min":0 }, "GetCaseEventConfigurationRequest":{ @@ -1986,6 +1987,7 @@ "members":{ "associationTime":{"shape":"AssociationTime"}, "content":{"shape":"RelatedItemContent"}, + "performedBy":{"shape":"UserUnion"}, "relatedItemId":{"shape":"RelatedItemId"}, "tags":{"shape":"Tags"}, "type":{"shape":"RelatedItemType"} @@ -2260,6 +2262,18 @@ "members":{ } }, + "UserArn":{ + "type":"string", + "max":500, + "min":1 + }, + "UserUnion":{ + "type":"structure", + "members":{ + "userArn":{"shape":"UserArn"} + }, + "union":true + }, "ValidationException":{ "type":"structure", "required":["message"], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,11 +4,11 @@ "operations": { "BatchGetField": "

Returns the description for the list of fields in the request parameters.

", "BatchPutFieldOptions": "

Creates and updates a set of field options for a single select field in a Cases domain.

", - "CreateCase": "

Creates a case in the specified Cases domain. Case system and custom fields are taken as an array id/value pairs with a declared data types.

The following fields are required when creating a case:

 <ul> <li> <p> <code>customer_id</code> - You must provide the full customer profile ARN in this format: <code>arn:aws:profile:your AWS Region:your AWS account ID:domains/profiles domain name/profiles/profile ID</code> </p> </li> <li> <p> <code>title</code> </p> </li> </ul> </note> 
", + "CreateCase": "

Creates a case in the specified Cases domain. Case system and custom fields are taken as an array id/value pairs with a declared data types.

The following fields are required when creating a case:

 <ul> <li> <p> <code>customer_id</code> - You must provide the full customer profile ARN in this format: <code>arn:aws:profile:your_AWS_Region:your_AWS_account ID:domains/your_profiles_domain_name/profiles/profile_ID</code> </p> </li> <li> <p> <code>title</code> </p> </li> </ul> 
", "CreateDomain": "

Creates a domain, which is a container for all case data, such as cases, fields, templates and layouts. Each Amazon Connect instance can be associated with only one Cases domain.

This will not associate your connect instance to Cases domain. Instead, use the Amazon Connect CreateIntegrationAssociation API. You need specific IAM permissions to successfully associate the Cases domain. For more information, see Onboard to Cases.

 </important> 
", "CreateField": "

Creates a field in the Cases domain. This field is used to define the case object model (that is, defines what data can be captured on cases) in a Cases domain.

", "CreateLayout": "

Creates a layout in the Cases domain. Layouts define the following configuration in the top section and More Info tab of the Cases user interface:

  • Fields to display to the users

  • Field ordering

Title and Status fields cannot be part of layouts since they are not configurable.

", - "CreateRelatedItem": "

Creates a related item (comments, tasks, and contacts) and associates it with a case.

A Related Item is a resource that is associated with a case. It may or may not have an external identifier linking it to an external resource (for example, a contactArn). All Related Items have their own internal identifier, the relatedItemArn. Examples of related items include comments and contacts.

", + "CreateRelatedItem": "

Creates a related item (comments, tasks, and contacts) and associates it with a case.

  • A Related Item is a resource that is associated with a case. It may or may not have an external identifier linking it to an external resource (for example, a contactArn). All Related Items have their own internal identifier, the relatedItemArn. Examples of related items include comments and contacts.

  • If you provide a value for performedBy.userArn you must also have DescribeUser permission on the ARN of the user that you provide.

 </note> 
", "CreateTemplate": "

Creates a template in the Cases domain. This template is used to define the case object model (that is, to define what data can be captured on cases) in a Cases domain. A template must have a unique name within a domain, and it must reference existing field IDs and layout IDs. Additionally, multiple fields with same IDs are not allowed within the same Template. A template can be either Active or Inactive, as indicated by its status. Inactive templates cannot be used to create cases.

", "DeleteDomain": "

Deletes a Cases domain.

 <note> <p>After deleting your domain you must disassociate the deleted domain from your Amazon Connect instance with another API call before being able to use Cases again with this Amazon Connect instance. See <a href="https://docs.aws.amazon.com/connect/latest/APIReference/API_DeleteIntegrationAssociation.html">DeleteIntegrationAssociation</a>.</p> </note> 
", "GetCase": "

Returns information about a specific case if it exists.

", @@ -23,7 +23,7 @@ "ListLayouts": "

Lists all layouts in the given cases domain. Each list item is a condensed summary object of the layout.

", "ListTagsForResource": "

Lists tags for a resource.

", "ListTemplates": "

Lists all of the templates in a Cases domain. Each list item is a condensed summary object of the template.

", - "PutCaseEventConfiguration": "

API for adding case event publishing configuration

", + "PutCaseEventConfiguration": "

Adds case event publishing configuration. For a complete list of fields you can add to the event message, see Create case fields in the Amazon Connect Administrator Guide

", "SearchCases": "

Searches for cases within their associated Cases domain. Search results are returned as a paginated list of abridged case documents.

For customer_id you must provide the full customer profile ARN in this format: arn:aws:profile:your AWS Region:your AWS account ID:domains/profiles domain name/profiles/profile ID.

", "SearchRelatedItems": "

Searches for related items that are associated with a case.

If no filters are provided, this returns all related items associated with a case.

", "TagResource": "

Adds tags to a resource.

", @@ -699,7 +699,7 @@ "refs": { "CreateLayoutRequest$content": "

Information about which fields will be present in the layout, and information about the order of the fields.

", "GetLayoutResponse$content": "

Information about which fields will be present in the layout, the order of the fields, and read-only attribute of the field.

", - "UpdateLayoutRequest$content": "

Information about which fields will be present in the layout, the order of the fields, and a read-only attribute of the field.

" + "UpdateLayoutRequest$content": "

Information about which fields will be present in the layout, the order of the fields.

" } }, "LayoutId": { @@ -1229,6 +1229,19 @@ "refs": { } }, + "UserArn": { + "base": null, + "refs": { + "UserUnion$userArn": "

Represents the Amazon Connect ARN of the user.

" + } + }, + "UserUnion": { + "base": "

Represents the identity of the person who performed the action.

", + "refs": { + "CreateRelatedItemRequest$performedBy": "

Represents the creator of the related item.

", + "SearchRelatedItemsResponseItem$performedBy": "

Represents the creator of the related item.

" + } + }, "ValidationException": { "base": "

The request isn't valid. Check the syntax and try again.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/connectcases/2022-10-03/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/connectcases/2022-10-03/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,54 +1,54 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://cases-fips.us-gov-east-1.api.aws" + "url": "https://cases-fips.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://cases-fips.us-gov-east-1.amazonaws.com" + "url": "https://cases-fips.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://cases.us-gov-east-1.api.aws" + "url": "https://cases.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://cases.us-gov-east-1.amazonaws.com" + "url": "https://cases.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": false } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -99,108 +99,108 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://cases-fips.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://cases-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://cases-fips.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://cases.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://cases.us-iso-east-1.c2s.ic.gov" + "url": "https://cases.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://cases-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://cases-fips.us-east-1.amazonaws.com" + "url": "https://cases-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://cases.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://cases.us-east-1.amazonaws.com" + "url": "https://cases.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": false } }, @@ -210,8 +210,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -223,8 +223,8 @@ } }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -234,8 +234,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -247,21 +247,34 @@ } }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -272,8 +285,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,316 +1,1159 @@ { - "version":"2.0", - "metadata":{ - "apiVersion":"2018-05-10", - "endpointPrefix":"controltower", - "jsonVersion":"1.1", - "protocol":"rest-json", - "serviceFullName":"AWS Control Tower", - "serviceId":"ControlTower", - "signatureVersion":"v4", - "signingName":"controltower", - "uid":"controltower-2018-05-10" + "metadata": { + "apiVersion": "2018-05-10", + "endpointPrefix": "controltower", + "jsonVersion": "1.1", + "protocol": "rest-json", + "serviceFullName": "AWS Control Tower", + "serviceId": "ControlTower", + "signatureVersion": "v4", + "signingName": "controltower", + "uid": "controltower-2018-05-10" }, - "operations":{ - "DisableControl":{ - "name":"DisableControl", - "http":{ - "method":"POST", - "requestUri":"/disable-control", - "responseCode":200 - }, - "input":{"shape":"DisableControlInput"}, - "output":{"shape":"DisableControlOutput"}, - "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"ServiceQuotaExceededException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} - ] - }, - "EnableControl":{ - "name":"EnableControl", - "http":{ - "method":"POST", - "requestUri":"/enable-control", - "responseCode":200 - }, - "input":{"shape":"EnableControlInput"}, - "output":{"shape":"EnableControlOutput"}, - "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"ServiceQuotaExceededException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} - ] - }, - "GetControlOperation":{ - "name":"GetControlOperation", - "http":{ - "method":"POST", - "requestUri":"/get-control-operation", - "responseCode":200 - }, - "input":{"shape":"GetControlOperationInput"}, - "output":{"shape":"GetControlOperationOutput"}, - "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} - ] - }, - "ListEnabledControls":{ - "name":"ListEnabledControls", - "http":{ - "method":"POST", - "requestUri":"/list-enabled-controls", - "responseCode":200 - }, - "input":{"shape":"ListEnabledControlsInput"}, - "output":{"shape":"ListEnabledControlsOutput"}, - "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} - ] + "operations": { + "DeleteLandingZone": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/delete-landingzone", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteLandingZoneInput" + }, + "name": "DeleteLandingZone", + "output": { + "shape": "DeleteLandingZoneOutput" + } + }, + "DisableControl": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/disable-control", + "responseCode": 200 + }, + "input": { + "shape": "DisableControlInput" + }, + "name": "DisableControl", + "output": { + "shape": "DisableControlOutput" + } + }, + "EnableControl": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/enable-control", + "responseCode": 200 + }, + "input": { + "shape": "EnableControlInput" + }, + "name": "EnableControl", + "output": { + "shape": "EnableControlOutput" + } + }, + "GetControlOperation": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/get-control-operation", + "responseCode": 200 + }, + "input": { + "shape": "GetControlOperationInput" + }, + "name": "GetControlOperation", + "output": { + "shape": "GetControlOperationOutput" + } + }, + "GetEnabledControl": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/get-enabled-control", + "responseCode": 200 + }, + "input": { + "shape": "GetEnabledControlInput" + }, + "name": "GetEnabledControl", + "output": { + "shape": "GetEnabledControlOutput" + } + }, + "GetLandingZoneOperation": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/get-landingzone-operation", + "responseCode": 200 + }, + "input": { + "shape": "GetLandingZoneOperationInput" + }, + "name": "GetLandingZoneOperation", + "output": { + "shape": "GetLandingZoneOperationOutput" + } + }, + "ListEnabledControls": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/list-enabled-controls", + "responseCode": 200 + }, + "input": { + "shape": "ListEnabledControlsInput" + }, + "name": "ListEnabledControls", + "output": { + "shape": "ListEnabledControlsOutput" + } + }, + "ListLandingZones": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/list-landingzones", + "responseCode": 200 + }, + "input": { + "shape": "ListLandingZonesInput" + }, + "name": "ListLandingZones", + "output": { + "shape": "ListLandingZonesOutput" + } + }, + "ListTagsForResource": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "GET", + "requestUri": "/tags/{resourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "ListTagsForResourceInput" + }, + "name": "ListTagsForResource", + "output": { + "shape": "ListTagsForResourceOutput" + } + }, + "ResetLandingZone": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/reset-landingzone", + "responseCode": 200 + }, + "input": { + "shape": "ResetLandingZoneInput" + }, + "name": "ResetLandingZone", + "output": { + "shape": "ResetLandingZoneOutput" + } + }, + "TagResource": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/tags/{resourceArn}", + "responseCode": 204 + }, + "input": { + "shape": "TagResourceInput" + }, + "name": "TagResource", + "output": { + "shape": "TagResourceOutput" + } + }, + "UntagResource": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/tags/{resourceArn}", + "responseCode": 204 + }, + "input": { + "shape": "UntagResourceInput" + }, + "name": "UntagResource", + "output": { + "shape": "UntagResourceOutput" + } } }, - "shapes":{ - "AccessDeniedException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - }, - "error":{ - "httpStatusCode":403, - "senderFault":true - }, - "exception":true - }, - "ConflictException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - }, - "error":{ - "httpStatusCode":409, - "senderFault":true - }, - "exception":true - }, - "ControlIdentifier":{ - "type":"string", - "max":2048, - "min":20, - "pattern":"^arn:aws[0-9a-zA-Z_\\-:\\/]+$" - }, - "ControlOperation":{ - "type":"structure", - "members":{ - "endTime":{"shape":"SyntheticTimestamp_date_time"}, - "operationType":{"shape":"ControlOperationType"}, - "startTime":{"shape":"SyntheticTimestamp_date_time"}, - "status":{"shape":"ControlOperationStatus"}, - "statusMessage":{"shape":"String"} - } - }, - "ControlOperationStatus":{ - "type":"string", - "enum":[ + "shapes": { + "AccessDeniedException": { + "error": { + "httpStatusCode": 403, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "Arn": { + "max": 2048, + "min": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "ConflictException": { + "error": { + "httpStatusCode": 409, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "ControlIdentifier": { + "max": 2048, + "min": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "ControlOperation": { + "members": { + "endTime": { + "shape": "SyntheticTimestamp_date_time" + }, + "operationType": { + "shape": "ControlOperationType" + }, + "startTime": { + "shape": "SyntheticTimestamp_date_time" + }, + "status": { + "shape": "ControlOperationStatus" + }, + "statusMessage": { + "shape": "String" + } + }, + "type": "structure" + }, + "ControlOperationStatus": { + "enum": [ "SUCCEEDED", "FAILED", "IN_PROGRESS" - ] + ], + "type": "string" }, - "ControlOperationType":{ - "type":"string", - "enum":[ + "ControlOperationType": { + "enum": [ "ENABLE_CONTROL", - "DISABLE_CONTROL" - ] + "DISABLE_CONTROL", + "UPDATE_ENABLED_CONTROL" + ], + "type": "string" + }, + "CreateLandingZoneOutput": { + "members": { + "arn": { + "shape": "Arn" + }, + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "arn", + "operationIdentifier" + ], + "type": "structure" + }, + "DeleteLandingZoneInput": { + "members": { + "landingZoneIdentifier": { + "shape": "String" + } + }, + "required": [ + "landingZoneIdentifier" + ], + "type": "structure" }, - "DisableControlInput":{ - "type":"structure", - "required":[ + "DeleteLandingZoneOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "DisableControlInput": { + "members": { + "controlIdentifier": { + "shape": "ControlIdentifier" + }, + "targetIdentifier": { + "shape": "TargetIdentifier" + } + }, + "required": [ "controlIdentifier", "targetIdentifier" ], - "members":{ - "controlIdentifier":{"shape":"ControlIdentifier"}, - "targetIdentifier":{"shape":"TargetIdentifier"} - } + "type": "structure" }, - "DisableControlOutput":{ - "type":"structure", - "required":["operationIdentifier"], - "members":{ - "operationIdentifier":{"shape":"OperationIdentifier"} - } + "DisableControlOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" }, - "EnableControlInput":{ - "type":"structure", - "required":[ + "DriftStatus": { + "enum": [ + "DRIFTED", + "IN_SYNC", + "NOT_CHECKING", + "UNKNOWN" + ], + "type": "string" + }, + "DriftStatusSummary": { + "members": { + "driftStatus": { + "shape": "DriftStatus" + } + }, + "type": "structure" + }, + "EnableControlInput": { + "members": { + "controlIdentifier": { + "shape": "ControlIdentifier" + }, + "tags": { + "shape": "TagMap" + }, + "targetIdentifier": { + "shape": "TargetIdentifier" + } + }, + "required": [ "controlIdentifier", "targetIdentifier" ], - "members":{ - "controlIdentifier":{"shape":"ControlIdentifier"}, - "targetIdentifier":{"shape":"TargetIdentifier"} - } - }, - "EnableControlOutput":{ - "type":"structure", - "required":["operationIdentifier"], - "members":{ - "operationIdentifier":{"shape":"OperationIdentifier"} - } - }, - "EnabledControlSummary":{ - "type":"structure", - "members":{ - "controlIdentifier":{"shape":"ControlIdentifier"} - } - }, - "EnabledControls":{ - "type":"list", - "member":{"shape":"EnabledControlSummary"} - }, - "GetControlOperationInput":{ - "type":"structure", - "required":["operationIdentifier"], - "members":{ - "operationIdentifier":{"shape":"OperationIdentifier"} - } - }, - "GetControlOperationOutput":{ - "type":"structure", - "required":["controlOperation"], - "members":{ - "controlOperation":{"shape":"ControlOperation"} - } - }, - "Integer":{ - "type":"integer", - "box":true - }, - "InternalServerException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - }, - "error":{"httpStatusCode":500}, - "exception":true, - "fault":true, - "retryable":{"throttling":false} - }, - "ListEnabledControlsInput":{ - "type":"structure", - "required":["targetIdentifier"], - "members":{ - "maxResults":{"shape":"MaxResults"}, - "nextToken":{"shape":"String"}, - "targetIdentifier":{"shape":"TargetIdentifier"} - } - }, - "ListEnabledControlsOutput":{ - "type":"structure", - "required":["enabledControls"], - "members":{ - "enabledControls":{"shape":"EnabledControls"}, - "nextToken":{"shape":"String"} - } - }, - "MaxResults":{ - "type":"integer", - "box":true, - "max":100, - "min":1 - }, - "OperationIdentifier":{ - "type":"string", - "max":36, - "min":36, - "pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" - }, - "ResourceNotFoundException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - }, - "error":{ - "httpStatusCode":404, - "senderFault":true - }, - "exception":true - }, - "ServiceQuotaExceededException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - }, - "error":{ - "httpStatusCode":402, - "senderFault":true - }, - "exception":true - }, - "String":{"type":"string"}, - "SyntheticTimestamp_date_time":{ - "type":"timestamp", - "timestampFormat":"iso8601" - }, - "TargetIdentifier":{ - "type":"string", - "max":2048, - "min":20, - "pattern":"^arn:aws[0-9a-zA-Z_\\-:\\/]+$" - }, - "ThrottlingException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"}, - "quotaCode":{"shape":"String"}, - "retryAfterSeconds":{ - "shape":"Integer", - "location":"header", - "locationName":"Retry-After" - }, - "serviceCode":{"shape":"String"} - }, - "error":{ - "httpStatusCode":429, - "senderFault":true - }, - "exception":true, - "retryable":{"throttling":true} - }, - "ValidationException":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - }, - "error":{ - "httpStatusCode":400, - "senderFault":true + "type": "structure" + }, + "EnableControlOutput": { + "members": { + "arn": { + "shape": "Arn" + }, + "operationIdentifier": { + "shape": "OperationIdentifier" + } }, - "exception":true + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "EnabledControlDetails": { + "members": { + "arn": { + "shape": "Arn" + }, + "controlIdentifier": { + "shape": "ControlIdentifier" + }, + "driftStatusSummary": { + "shape": "DriftStatusSummary" + }, + "statusSummary": { + "shape": "EnablementStatusSummary" + }, + "targetIdentifier": { + "shape": "TargetIdentifier" + }, + "targetRegions": { + "shape": "TargetRegions" + } + }, + "type": "structure" + }, + "EnabledControlSummary": { + "members": { + "arn": { + "shape": "Arn" + }, + "controlIdentifier": { + "shape": "ControlIdentifier" + }, + "driftStatusSummary": { + "shape": "DriftStatusSummary" + }, + "statusSummary": { + "shape": "EnablementStatusSummary" + }, + "targetIdentifier": { + "shape": "TargetIdentifier" + } + }, + "type": "structure" + }, + "EnabledControls": { + "member": { + "shape": "EnabledControlSummary" + }, + "type": "list" + }, + "EnablementStatus": { + "enum": [ + "SUCCEEDED", + "FAILED", + "UNDER_CHANGE" + ], + "type": "string" + }, + "EnablementStatusSummary": { + "members": { + "lastOperationIdentifier": { + "shape": "OperationIdentifier" + }, + "status": { + "shape": "EnablementStatus" + } + }, + "type": "structure" + }, + "GetControlOperationInput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "GetControlOperationOutput": { + "members": { + "controlOperation": { + "shape": "ControlOperation" + } + }, + "required": [ + "controlOperation" + ], + "type": "structure" + }, + "GetEnabledControlInput": { + "members": { + "enabledControlIdentifier": { + "shape": "Arn" + } + }, + "required": [ + "enabledControlIdentifier" + ], + "type": "structure" + }, + "GetEnabledControlOutput": { + "members": { + "enabledControlDetails": { + "shape": "EnabledControlDetails" + } + }, + "required": [ + "enabledControlDetails" + ], + "type": "structure" + }, + "GetLandingZoneInput": { + "members": { + "landingZoneIdentifier": { + "shape": "String" + } + }, + "required": [ + "landingZoneIdentifier" + ], + "type": "structure" + }, + "GetLandingZoneOperationInput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "GetLandingZoneOperationOutput": { + "members": { + "operationDetails": { + "shape": "LandingZoneOperationDetail" + } + }, + "required": [ + "operationDetails" + ], + "type": "structure" + }, + "Integer": { + "box": true, + "type": "integer" + }, + "InternalServerException": { + "error": { + "httpStatusCode": 500 + }, + "exception": true, + "fault": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "retryable": { + "throttling": false + }, + "type": "structure" + }, + "LandingZoneDriftStatus": { + "enum": [ + "DRIFTED", + "IN_SYNC" + ], + "type": "string" + }, + "LandingZoneDriftStatusSummary": { + "members": { + "status": { + "shape": "LandingZoneDriftStatus" + } + }, + "type": "structure" + }, + "LandingZoneOperationDetail": { + "members": { + "endTime": { + "shape": "Timestamp" + }, + "operationType": { + "shape": "LandingZoneOperationType" + }, + "startTime": { + "shape": "Timestamp" + }, + "status": { + "shape": "LandingZoneOperationStatus" + }, + "statusMessage": { + "shape": "String" + } + }, + "type": "structure" + }, + "LandingZoneOperationStatus": { + "enum": [ + "SUCCEEDED", + "FAILED", + "IN_PROGRESS" + ], + "type": "string" + }, + "LandingZoneOperationType": { + "enum": [ + "DELETE", + "CREATE", + "UPDATE", + "RESET" + ], + "type": "string" + }, + "LandingZoneStatus": { + "enum": [ + "ACTIVE", + "PROCESSING", + "FAILED" + ], + "type": "string" + }, + "LandingZoneSummary": { + "members": { + "arn": { + "shape": "Arn" + } + }, + "type": "structure" + }, + "LandingZoneVersion": { + "max": 10, + "min": 3, + "pattern": "^\\d+.\\d+$", + "type": "string" + }, + "ListEnabledControlsInput": { + "members": { + "maxResults": { + "shape": "MaxResults" + }, + "nextToken": { + "shape": "String" + }, + "targetIdentifier": { + "shape": "TargetIdentifier" + } + }, + "required": [ + "targetIdentifier" + ], + "type": "structure" + }, + "ListEnabledControlsOutput": { + "members": { + "enabledControls": { + "shape": "EnabledControls" + }, + "nextToken": { + "shape": "String" + } + }, + "required": [ + "enabledControls" + ], + "type": "structure" + }, + "ListLandingZonesInput": { + "members": { + "maxResults": { + "shape": "ListLandingZonesMaxResults" + }, + "nextToken": { + "shape": "String" + } + }, + "type": "structure" + }, + "ListLandingZonesMaxResults": { + "box": true, + "max": 1, + "min": 1, + "type": "integer" + }, + "ListLandingZonesOutput": { + "members": { + "landingZones": { + "shape": "ListLandingZonesOutputLandingZonesList" + }, + "nextToken": { + "shape": "String" + } + }, + "required": [ + "landingZones" + ], + "type": "structure" + }, + "ListLandingZonesOutputLandingZonesList": { + "max": 1, + "member": { + "shape": "LandingZoneSummary" + }, + "min": 0, + "type": "list" + }, + "ListTagsForResourceInput": { + "members": { + "resourceArn": { + "location": "uri", + "locationName": "resourceArn", + "shape": "Arn" + } + }, + "required": [ + "resourceArn" + ], + "type": "structure" + }, + "ListTagsForResourceOutput": { + "members": { + "tags": { + "shape": "TagMap" + } + }, + "required": [ + "tags" + ], + "type": "structure" + }, + "MaxResults": { + "box": true, + "max": 200, + "min": 1, + "type": "integer" + }, + "OperationIdentifier": { + "max": 36, + "min": 36, + "pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$", + "type": "string" + }, + "Region": { + "members": { + "name": { + "shape": "RegionName" + } + }, + "type": "structure" + }, + "RegionName": { + "max": 50, + "min": 1, + "type": "string" + }, + "ResetLandingZoneInput": { + "members": { + "landingZoneIdentifier": { + "shape": "String" + } + }, + "required": [ + "landingZoneIdentifier" + ], + "type": "structure" + }, + "ResetLandingZoneOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "ResourceNotFoundException": { + "error": { + "httpStatusCode": 404, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "ServiceQuotaExceededException": { + "error": { + "httpStatusCode": 402, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "String": { + "type": "string" + }, + "SyntheticTimestamp_date_time": { + "timestampFormat": "iso8601", + "type": "timestamp" + }, + "TagKey": { + "max": 128, + "min": 1, + "type": "string" + }, + "TagKeys": { + "max": 200, + "member": { + "shape": "TagKey" + }, + "min": 0, + "type": "list" + }, + "TagMap": { + "key": { + "shape": "TagKey" + }, + "max": 200, + "min": 0, + "type": "map", + "value": { + "shape": "TagValue" + } + }, + "TagResourceInput": { + "members": { + "resourceArn": { + "location": "uri", + "locationName": "resourceArn", + "shape": "Arn" + }, + "tags": { + "shape": "TagMap" + } + }, + "required": [ + "resourceArn", + "tags" + ], + "type": "structure" + }, + "TagResourceOutput": { + "members": {}, + "type": "structure" + }, + "TagValue": { + "max": 256, + "min": 0, + "type": "string" + }, + "TargetIdentifier": { + "max": 2048, + "min": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "TargetRegions": { + "member": { + "shape": "Region" + }, + "type": "list" + }, + "ThrottlingException": { + "error": { + "httpStatusCode": 429, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + }, + "quotaCode": { + "shape": "String" + }, + "retryAfterSeconds": { + "location": "header", + "locationName": "Retry-After", + "shape": "Integer" + }, + "serviceCode": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "retryable": { + "throttling": true + }, + "type": "structure" + }, + "Timestamp": { + "timestampFormat": "iso8601", + "type": "timestamp" + }, + "UntagResourceInput": { + "members": { + "resourceArn": { + "location": "uri", + "locationName": "resourceArn", + "shape": "Arn" + }, + "tagKeys": { + "location": "querystring", + "locationName": "tagKeys", + "shape": "TagKeys" + } + }, + "required": [ + "resourceArn", + "tagKeys" + ], + "type": "structure" + }, + "UntagResourceOutput": { + "members": {}, + "type": "structure" + }, + "UpdateEnabledControlOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "UpdateLandingZoneOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "ValidationException": { + "error": { + "httpStatusCode": 400, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" } - } -} + }, + "version": "2.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,35 +1,64 @@ { "version": "2.0", - "service": "

These interfaces allow you to apply the AWS library of pre-defined controls to your organizational units, programmatically. In this context, controls are the same as AWS Control Tower guardrails.

To call these APIs, you'll need to know:

  • the ControlARN for the control--that is, the guardrail--you are targeting,

  • and the ARN associated with the target organizational unit (OU).

To get the ControlARN for your AWS Control Tower guardrail:

The ControlARN contains the control name which is specified in each guardrail. For a list of control names for Strongly recommended and Elective guardrails, see Resource identifiers for APIs and guardrails in the Automating tasks section of the AWS Control Tower User Guide. Remember that Mandatory guardrails cannot be added or removed.

ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME}

Example:

arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED

To get the ARN for an OU:

In the AWS Organizations console, you can find the ARN for the OU on the Organizational unit details page associated with that OU.

OU ARN format:

arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}

Details and examples

To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower

Recording API Requests

AWS Control Tower supports AWS CloudTrail, a service that records AWS API calls for your AWS account and delivers log files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine which requests the AWS Control Tower service received, who made the request and when, and so on. For more about AWS Control Tower and its support for CloudTrail, see Logging AWS Control Tower Actions with AWS CloudTrail in the AWS Control Tower User Guide. To learn more about CloudTrail, including how to turn it on and find your log files, see the AWS CloudTrail User Guide.

", + "service": "

These interfaces allow you to apply the Amazon Web Services library of pre-defined controls to your organizational units, programmatically. In Amazon Web Services Control Tower, the terms \"control\" and \"guardrail\" are synonyms.

To call these APIs, you'll need to know:

  • the controlIdentifier for the control--or guardrail--you are targeting.

  • the ARN associated with the target organizational unit (OU), which we call the targetIdentifier.

  • the ARN associated with a resource that you wish to tag or untag.

To get the controlIdentifier for your Amazon Web Services Control Tower control:

The controlIdentifier is an ARN that is specified for each control. You can view the controlIdentifier in the console on the Control details page, as well as in the documentation.

The controlIdentifier is unique in each Amazon Web Services Region for each control. You can find the controlIdentifier for each Region and control in the Tables of control metadata in the Amazon Web Services Control Tower User Guide.

A quick-reference list of control identifers for the Amazon Web Services Control Tower legacy Strongly recommended and Elective controls is given in Resource identifiers for APIs and controls in the Controls reference guide section of the Amazon Web Services Control Tower User Guide. Remember that Mandatory controls cannot be added or removed.

ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME}

Example:

arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED

To get the targetIdentifier:

The targetIdentifier is the ARN for an OU.

In the Amazon Web Services Organizations console, you can find the ARN for the OU on the Organizational unit details page associated with that OU.

OU ARN format:

arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}

Details and examples

To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower

Recording API Requests

Amazon Web Services Control Tower supports Amazon Web Services CloudTrail, a service that records Amazon Web Services API calls for your Amazon Web Services account and delivers log files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine which requests the Amazon Web Services Control Tower service received, who made the request and when, and so on. For more about Amazon Web Services Control Tower and its support for CloudTrail, see Logging Amazon Web Services Control Tower Actions with Amazon Web Services CloudTrail in the Amazon Web Services Control Tower User Guide. To learn more about CloudTrail, including how to turn it on and find your log files, see the Amazon Web Services CloudTrail User Guide.

", "operations": { - "DisableControl": "

This API call turns off a control. It starts an asynchronous operation that deletes AWS resources on the specified organizational unit and the accounts it contains. The resources will vary according to the control that you specify.

", - "EnableControl": "

This API call activates a control. It starts an asynchronous operation that creates AWS resources on the specified organizational unit and the accounts it contains. The resources created will vary according to the control that you specify.

", - "GetControlOperation": "

Returns the status of a particular EnableControl or DisableControl operation. Displays a message in case of error. Details for an operation are available for 90 days.

", - "ListEnabledControls": "

Lists the controls enabled by AWS Control Tower on the specified organizational unit and the accounts it contains.

" + "CreateLandingZone": "

Creates a new landing zone. This API call starts an asynchronous operation that creates and configures a landing zone, based on the parameters specified in the manifest JSON file.

", + "DeleteLandingZone": "

Decommissions a landing zone. This API call starts an asynchronous operation that deletes Amazon Web Services Control Tower resources deployed in accounts managed by Amazon Web Services Control Tower.

", + "DisableControl": "

This API call turns off a control. It starts an asynchronous operation that deletes Amazon Web Services resources on the specified organizational unit and the accounts it contains. The resources will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "EnableControl": "

This API call activates a control. It starts an asynchronous operation that creates Amazon Web Services resources on the specified organizational unit and the accounts it contains. The resources created will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "GetControlOperation": "

Returns the status of a particular EnableControl or DisableControl operation. Displays a message in case of error. Details for an operation are available for 90 days. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "GetEnabledControl": "

Retrieves details about an enabled control. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "GetLandingZone": "

Returns details about the landing zone. Displays a message in case of error.

", + "GetLandingZoneOperation": "

Returns the status of the specified landing zone operation. Details for an operation are available for 60 days.

", + "ListEnabledControls": "

Lists the controls enabled by Amazon Web Services Control Tower on the specified organizational unit and the accounts it contains. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "ListLandingZones": "

Returns the landing zone ARN for the landing zone deployed in your managed account. This API also creates an ARN for existing accounts that do not yet have a landing zone ARN.

Returns one landing zone ARN.

", + "ListTagsForResource": "

Returns a list of tags associated with the resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "ResetLandingZone": "

This API call resets a landing zone. It starts an asynchronous operation that resets the landing zone to the parameters specified in its original configuration.

", + "TagResource": "

Applies tags to a resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "UntagResource": "

Removes tags from a resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "UpdateEnabledControl": "

Updates the configuration of an already enabled control.

If the enabled control shows an EnablementStatus of SUCCEEDED, supply parameters that are different from the currently configured parameters. Otherwise, Amazon Web Services Control Tower will not accept the request.

If the enabled control shows an EnablementStatus of FAILED, Amazon Web Services Control Tower will update the control to match any valid parameters that you supply.

If the DriftSummary status for the control shows as DRIFTED, you cannot call this API. Instead, you can update the control by calling DisableControl and again calling EnableControl, or you can run an extending governance operation. For usage examples, see the Amazon Web Services Control Tower User Guide

", + "UpdateLandingZone": "

This API call updates the landing zone. It starts an asynchronous operation that updates the landing zone based on the new landing zone version, or on the changed parameters specified in the updated manifest file.

" }, "shapes": { "AccessDeniedException": { - "base": "

User does not have sufficient access to perform this action.

", + "base": "

You do not have sufficient access to perform this action.

", "refs": { } }, + "Arn": { + "base": null, + "refs": { + "CreateLandingZoneOutput$arn": "

The ARN of the landing zone resource.

", + "EnableControlOutput$arn": "

The ARN of the EnabledControl resource.

", + "EnabledControlDetails$arn": "

The ARN of the enabled control.

", + "EnabledControlSummary$arn": "

The ARN of the enabled control.

", + "GetEnabledControlInput$enabledControlIdentifier": "

The controlIdentifier of the enabled control.

", + "LandingZoneDetail$arn": "

The ARN of the landing zone.

", + "LandingZoneSummary$arn": "

The ARN of the landing zone.

", + "ListTagsForResourceInput$resourceArn": "

The ARN of the resource.

", + "TagResourceInput$resourceArn": "

The ARN of the resource to be tagged.

", + "UntagResourceInput$resourceArn": "

The ARN of the resource.

", + "UpdateEnabledControlInput$enabledControlIdentifier": "

The ARN of the enabled control that will be updated.

" + } + }, "ConflictException": { - "base": "

Updating or deleting a resource can cause an inconsistent state.

", + "base": "

Updating or deleting the resource can cause an inconsistent state.

", "refs": { } }, "ControlIdentifier": { "base": null, "refs": { - "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.

", - "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.

", - "EnabledControlSummary$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.

" + "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the landing zone Region deny control. For information on how to find the controlIdentifier, see the overview page.

", + "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the landing zone Region deny control. For information on how to find the controlIdentifier, see the overview page.

", + "EnabledControlDetails$controlIdentifier": "

The control identifier of the enabled control. For information on how to find the controlIdentifier, see the overview page.

", + "EnabledControlSummary$controlIdentifier": "

The controlIdentifier of the enabled control.

" } }, "ControlOperation": { "base": "

An operation performed by the control.

", "refs": { - "GetControlOperationOutput$controlOperation": "

" + "GetControlOperationOutput$controlOperation": "

An operation performed by the control.

" } }, "ControlOperationStatus": { @@ -44,6 +73,26 @@ "ControlOperation$operationType": "

One of ENABLE_CONTROL or DISABLE_CONTROL.

" } }, + "CreateLandingZoneInput": { + "base": null, + "refs": { + } + }, + "CreateLandingZoneOutput": { + "base": null, + "refs": { + } + }, + "DeleteLandingZoneInput": { + "base": null, + "refs": { + } + }, + "DeleteLandingZoneOutput": { + "base": null, + "refs": { + } + }, "DisableControlInput": { "base": null, "refs": { @@ -54,6 +103,26 @@ "refs": { } }, + "Document": { + "base": null, + "refs": { + "EnabledControlParameter$value": "

The value of a key/value pair. It can be of type array string, number, object, or boolean.

", + "EnabledControlParameterSummary$value": "

The value of a key/value pair.

" + } + }, + "DriftStatus": { + "base": null, + "refs": { + "DriftStatusSummary$driftStatus": "

The drift status of the enabled control.

Valid values:

  • DRIFTED: The enabledControl deployed in this configuration doesn’t match the configuration that Amazon Web Services Control Tower expected.

  • IN_SYNC: The enabledControl deployed in this configuration matches the configuration that Amazon Web Services Control Tower expected.

  • NOT_CHECKING: Amazon Web Services Control Tower does not check drift for this enabled control. Drift is not supported for the control type.

  • UNKNOWN: Amazon Web Services Control Tower is not able to check the drift status for the enabled control.

" + } + }, + "DriftStatusSummary": { + "base": "

The drift summary of the enabled control.

Amazon Web Services Control Tower expects the enabled control configuration to include all supported and governed Regions. If the enabled control differs from the expected configuration, it is defined to be in a state of drift. You can repair this drift by resetting the enabled control.

", + "refs": { + "EnabledControlDetails$driftStatusSummary": "

The drift status of the enabled control.

", + "EnabledControlSummary$driftStatusSummary": "

The drift status of the enabled control.

" + } + }, "EnableControlInput": { "base": null, "refs": { @@ -64,8 +133,39 @@ "refs": { } }, + "EnabledControlDetails": { + "base": "

Information about the enabled control.

", + "refs": { + "GetEnabledControlOutput$enabledControlDetails": "

Information about the enabled control.

" + } + }, + "EnabledControlParameter": { + "base": "

A set of parameters that configure the behavior of the enabled control. A key/value pair, where Key is of type String and Value is of type Document.

", + "refs": { + "EnabledControlParameters$member": null + } + }, + "EnabledControlParameterSummaries": { + "base": null, + "refs": { + "EnabledControlDetails$parameters": "

Array of EnabledControlParameter objects.

" + } + }, + "EnabledControlParameterSummary": { + "base": "

Returns a summary of information about the parameters of an enabled control.

", + "refs": { + "EnabledControlParameterSummaries$member": null + } + }, + "EnabledControlParameters": { + "base": null, + "refs": { + "EnableControlInput$parameters": "

An array of EnabledControlParameter objects

", + "UpdateEnabledControlInput$parameters": "

A key/value pair, where Key is of type String and Value is of type Document.

" + } + }, "EnabledControlSummary": { - "base": "

A summary of enabled controls.

", + "base": "

Returns a summary of information about an enabled control.

", "refs": { "EnabledControls$member": null } @@ -73,7 +173,20 @@ "EnabledControls": { "base": null, "refs": { - "ListEnabledControlsOutput$enabledControls": "

Lists the controls enabled by AWS Control Tower on the specified organizational unit and the accounts it contains.

" + "ListEnabledControlsOutput$enabledControls": "

Lists the controls enabled by Amazon Web Services Control Tower on the specified organizational unit and the accounts it contains.

" + } + }, + "EnablementStatus": { + "base": null, + "refs": { + "EnablementStatusSummary$status": "

The deployment status of the enabled control.

Valid values:

  • SUCCEEDED: The enabledControl configuration was deployed successfully.

  • UNDER_CHANGE: The enabledControl configuration is changing.

  • FAILED: The enabledControl configuration failed to deploy.

" + } + }, + "EnablementStatusSummary": { + "base": "

The deployment summary of the enabled control.

", + "refs": { + "EnabledControlDetails$statusSummary": "

The deployment summary of the enabled control.

", + "EnabledControlSummary$statusSummary": "

A short description of the status of the enabled control.

" } }, "GetControlOperationInput": { @@ -86,15 +199,102 @@ "refs": { } }, + "GetEnabledControlInput": { + "base": null, + "refs": { + } + }, + "GetEnabledControlOutput": { + "base": null, + "refs": { + } + }, + "GetLandingZoneInput": { + "base": null, + "refs": { + } + }, + "GetLandingZoneOperationInput": { + "base": null, + "refs": { + } + }, + "GetLandingZoneOperationOutput": { + "base": null, + "refs": { + } + }, + "GetLandingZoneOutput": { + "base": null, + "refs": { + } + }, "Integer": { "base": null, "refs": { - "ThrottlingException$retryAfterSeconds": "

The number of seconds the caller should wait before retrying.

" + "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying.

" } }, "InternalServerException": { - "base": "

Unexpected error during processing of request.

", + "base": "

An unexpected error occurred during processing of a request.

", + "refs": { + } + }, + "LandingZoneDetail": { + "base": "

Information about the landing zone.

", + "refs": { + "GetLandingZoneOutput$landingZone": "

Information about the landing zone.

" + } + }, + "LandingZoneDriftStatus": { + "base": null, + "refs": { + "LandingZoneDriftStatusSummary$status": "

The drift status of the landing zone.

Valid values:

  • DRIFTED: The landing zone deployed in this configuration does not match the configuration that Amazon Web Services Control Tower expected.

  • IN_SYNC: The landing zone deployed in this configuration matches the configuration that Amazon Web Services Control Tower expected.

" + } + }, + "LandingZoneDriftStatusSummary": { + "base": "

The drift status summary of the landing zone.

If the landing zone differs from the expected configuration, it is defined to be in a state of drift. You can repair this drift by resetting the landing zone.

", + "refs": { + "LandingZoneDetail$driftStatus": "

The drift status of the landing zone.

" + } + }, + "LandingZoneOperationDetail": { + "base": "

Information about a landing zone operation.

", + "refs": { + "GetLandingZoneOperationOutput$operationDetails": "

Details about a landing zone operation.

" + } + }, + "LandingZoneOperationStatus": { + "base": null, + "refs": { + "LandingZoneOperationDetail$status": "

Valid values:

  • SUCCEEDED: The landing zone operation succeeded.

  • IN_PROGRESS: The landing zone operation is in progress.

  • FAILED: The landing zone operation failed.

" + } + }, + "LandingZoneOperationType": { + "base": null, + "refs": { + "LandingZoneOperationDetail$operationType": "

The landing zone operation type.

Valid values:

  • DELETE: The DeleteLandingZone operation.

  • CREATE: The CreateLandingZone operation.

  • UPDATE: The UpdateLandingZone operation.

  • RESET: The ResetLandingZone operation.

" + } + }, + "LandingZoneStatus": { + "base": null, + "refs": { + "LandingZoneDetail$status": "

The landing zone deployment status.

" + } + }, + "LandingZoneSummary": { + "base": "

Returns a summary of information about a landing zone.

", "refs": { + "ListLandingZonesOutputLandingZonesList$member": null + } + }, + "LandingZoneVersion": { + "base": null, + "refs": { + "CreateLandingZoneInput$version": "

The landing zone version, for example, 3.0.

", + "LandingZoneDetail$latestAvailableVersion": "

The latest available version of the landing zone.

", + "LandingZoneDetail$version": "

The landing zone's current deployed version.

", + "UpdateLandingZoneInput$version": "

The landing zone version, for example, 3.2.

" } }, "ListEnabledControlsInput": { @@ -107,6 +307,46 @@ "refs": { } }, + "ListLandingZonesInput": { + "base": null, + "refs": { + } + }, + "ListLandingZonesMaxResults": { + "base": null, + "refs": { + "ListLandingZonesInput$maxResults": "

The maximum number of returned landing zone ARNs, which is one.

" + } + }, + "ListLandingZonesOutput": { + "base": null, + "refs": { + } + }, + "ListLandingZonesOutputLandingZonesList": { + "base": null, + "refs": { + "ListLandingZonesOutput$landingZones": "

The ARN of the landing zone.

" + } + }, + "ListTagsForResourceInput": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceOutput": { + "base": null, + "refs": { + } + }, + "Manifest": { + "base": null, + "refs": { + "CreateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

", + "LandingZoneDetail$manifest": "

The landing zone manifest.yaml text file that specifies the landing zone configurations.

", + "UpdateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

" + } + }, "MaxResults": { "base": null, "refs": { @@ -116,18 +356,47 @@ "OperationIdentifier": { "base": null, "refs": { + "CreateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a CreateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

", + "DeleteLandingZoneOutput$operationIdentifier": "

>A unique identifier assigned to a DeleteLandingZone operation. You can use this identifier as an input parameter of GetLandingZoneOperation to check the operation's status.

", "DisableControlOutput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", "EnableControlOutput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", - "GetControlOperationInput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

" + "EnablementStatusSummary$lastOperationIdentifier": "

The last operation identifier for the enabled control.

", + "GetControlOperationInput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", + "GetLandingZoneOperationInput$operationIdentifier": "

A unique identifier assigned to a landing zone operation.

", + "ResetLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a ResetLandingZone operation. You can use this identifier as an input parameter of GetLandingZoneOperation to check the operation's status.

", + "UpdateEnabledControlOutput$operationIdentifier": "

The operation identifier for this UpdateEnabledControl operation.

", + "UpdateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a UpdateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

" + } + }, + "Region": { + "base": "

An Amazon Web Services Region in which Amazon Web Services Control Tower expects to find the control deployed.

The expected Regions are based on the Regions that are governed by the landing zone. In certain cases, a control is not actually enabled in the Region as expected, such as during drift, or mixed governance.

", + "refs": { + "TargetRegions$member": null + } + }, + "RegionName": { + "base": null, + "refs": { + "Region$name": "

The Amazon Web Services Region name.

" + } + }, + "ResetLandingZoneInput": { + "base": null, + "refs": { + } + }, + "ResetLandingZoneOutput": { + "base": null, + "refs": { } }, "ResourceNotFoundException": { - "base": "

Request references a resource which does not exist.

", + "base": "

The request references a resource that does not exist.

", "refs": { } }, "ServiceQuotaExceededException": { - "base": "

Request would cause a service quota to be exceeded. The limit is 10 concurrent operations.

", + "base": "

The request would cause a service quota to be exceeded. The limit is 10 concurrent operations.

", "refs": { } }, @@ -137,14 +406,23 @@ "AccessDeniedException$message": null, "ConflictException$message": null, "ControlOperation$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", + "DeleteLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", + "EnabledControlParameter$key": "

The key of a key/value pair. It is of type string.

", + "EnabledControlParameterSummary$key": "

The key of a key/value pair.

", + "GetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "InternalServerException$message": null, + "LandingZoneOperationDetail$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", "ListEnabledControlsInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", - "ListEnabledControlsOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the current response is the end of the results.

", + "ListEnabledControlsOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the response is the end of the results.

", + "ListLandingZonesInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", + "ListLandingZonesOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the response is the end of the results.

", + "ResetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "ResourceNotFoundException$message": null, "ServiceQuotaExceededException$message": null, "ThrottlingException$message": null, "ThrottlingException$quotaCode": "

The ID of the service quota that was exceeded.

", - "ThrottlingException$serviceCode": "

The ID of the service that is associated with the error.

", + "ThrottlingException$serviceCode": "

The ID of the service that is associated with the error.

", + "UpdateLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "ValidationException$message": null } }, @@ -155,21 +433,104 @@ "ControlOperation$startTime": "

The time that the operation began.

" } }, + "TagKey": { + "base": null, + "refs": { + "TagKeys$member": null, + "TagMap$key": null + } + }, + "TagKeys": { + "base": null, + "refs": { + "UntagResourceInput$tagKeys": "

Tag keys to be removed from the resource.

" + } + }, + "TagMap": { + "base": null, + "refs": { + "CreateLandingZoneInput$tags": "

Tags to be applied to the landing zone.

", + "EnableControlInput$tags": "

Tags to be applied to the EnabledControl resource.

", + "ListTagsForResourceOutput$tags": "

A list of tags, as key:value strings.

", + "TagResourceInput$tags": "

Tags to be applied to the resource.

" + } + }, + "TagResourceInput": { + "base": null, + "refs": { + } + }, + "TagResourceOutput": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "TagMap$value": null + } + }, "TargetIdentifier": { "base": null, "refs": { - "DisableControlInput$targetIdentifier": "

The ARN of the organizational unit.

", - "EnableControlInput$targetIdentifier": "

The ARN of the organizational unit.

", - "ListEnabledControlsInput$targetIdentifier": "

The ARN of the organizational unit.

" + "DisableControlInput$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

", + "EnableControlInput$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

", + "EnabledControlDetails$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

", + "EnabledControlSummary$targetIdentifier": "

The ARN of the organizational unit.

", + "ListEnabledControlsInput$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

" + } + }, + "TargetRegions": { + "base": null, + "refs": { + "EnabledControlDetails$targetRegions": "

Target Amazon Web Services Regions for the enabled control.

" } }, "ThrottlingException": { - "base": "

Request was denied due to request throttling.

", + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "LandingZoneOperationDetail$endTime": "

The landing zone operation end time.

", + "LandingZoneOperationDetail$startTime": "

The landing zone operation start time.

" + } + }, + "UntagResourceInput": { + "base": null, + "refs": { + } + }, + "UntagResourceOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnabledControlInput": { + "base": null, + "refs": { + } + }, + "UpdateEnabledControlOutput": { + "base": null, + "refs": { + } + }, + "UpdateLandingZoneInput": { + "base": null, + "refs": { + } + }, + "UpdateLandingZoneOutput": { + "base": null, "refs": { } }, "ValidationException": { - "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "base": "

The input does not satisfy the constraints specified by an Amazon Web Services service.

", "refs": { } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://controltower-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://controltower-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://controltower.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://controltower.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,535 @@ +{ + "testCases": [ + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://controltower.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://controltower.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/controltower/2018-05-10/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/controltower/2018-05-10/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,6 +5,12 @@ "output_token": "nextToken", "limit_key": "maxResults", "result_key": "enabledControls" + }, + "ListLandingZones": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "landingZones" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,936 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-07-26", + "endpointPrefix":"cost-optimization-hub", + "jsonVersion":"1.0", + "protocol":"json", + "serviceFullName":"Cost Optimization Hub", + "serviceId":"Cost Optimization Hub", + "signatureVersion":"v4", + "signingName":"cost-optimization-hub", + "targetPrefix":"CostOptimizationHubService", + "uid":"cost-optimization-hub-2022-07-26" + }, + "operations":{ + "GetPreferences":{ + "name":"GetPreferences", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetPreferencesRequest"}, + "output":{"shape":"GetPreferencesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetRecommendation":{ + "name":"GetRecommendation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetRecommendationRequest"}, + "output":{"shape":"GetRecommendationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListEnrollmentStatuses":{ + "name":"ListEnrollmentStatuses", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListEnrollmentStatusesRequest"}, + "output":{"shape":"ListEnrollmentStatusesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListRecommendationSummaries":{ + "name":"ListRecommendationSummaries", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRecommendationSummariesRequest"}, + "output":{"shape":"ListRecommendationSummariesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListRecommendations":{ + "name":"ListRecommendations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRecommendationsRequest"}, + "output":{"shape":"ListRecommendationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateEnrollmentStatus":{ + "name":"UpdateEnrollmentStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEnrollmentStatusRequest"}, + "output":{"shape":"UpdateEnrollmentStatusResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdatePreferences":{ + "name":"UpdatePreferences", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdatePreferencesRequest"}, + "output":{"shape":"UpdatePreferencesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "AccountEnrollmentStatus":{ + "type":"structure", + "members":{ + "accountId":{"shape":"AccountId"}, + "createdTimestamp":{"shape":"Timestamp"}, + "lastUpdatedTimestamp":{"shape":"Timestamp"}, + "status":{"shape":"EnrollmentStatus"} + } + }, + "AccountEnrollmentStatuses":{ + "type":"list", + "member":{"shape":"AccountEnrollmentStatus"} + }, + "AccountId":{ + "type":"string", + "pattern":"^[0-9]{12}$" + }, + "AccountIdList":{ + "type":"list", + "member":{"shape":"AccountId"}, + "max":100, + "min":1 + }, + "ActionType":{ + "type":"string", + "enum":[ + "Rightsize", + "Stop", + "Upgrade", + "PurchaseSavingsPlans", + "PurchaseReservedInstances", + "MigrateToGraviton" + ] + }, + "ActionTypeList":{ + "type":"list", + "member":{"shape":"ActionType"}, + "max":100, + "min":1 + }, + "BlockStoragePerformanceConfiguration":{ + "type":"structure", + "members":{ + "iops":{"shape":"Double"}, + "throughput":{"shape":"Double"} + } + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "ComputeConfiguration":{ + "type":"structure", + "members":{ + "architecture":{"shape":"String"}, + "memorySizeInMB":{"shape":"Integer"}, + "platform":{"shape":"String"}, + "vCpu":{"shape":"Double"} + } + }, + "ComputeSavingsPlans":{ + "type":"structure", + "members":{ + "configuration":{"shape":"ComputeSavingsPlansConfiguration"}, + "costCalculation":{"shape":"SavingsPlansCostCalculation"} + } + }, + "ComputeSavingsPlansConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "hourlyCommitment":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "term":{"shape":"String"} + } + }, + "Datetime":{"type":"timestamp"}, + "Double":{ + "type":"double", + "box":true + }, + "EbsVolume":{ + "type":"structure", + "members":{ + "configuration":{"shape":"EbsVolumeConfiguration"}, + "costCalculation":{"shape":"ResourceCostCalculation"} + } + }, + "EbsVolumeConfiguration":{ + "type":"structure", + "members":{ + "attachmentState":{"shape":"String"}, + "performance":{"shape":"BlockStoragePerformanceConfiguration"}, + "storage":{"shape":"StorageConfiguration"} + } + }, + "Ec2AutoScalingGroup":{ + "type":"structure", + "members":{ + "configuration":{"shape":"Ec2AutoScalingGroupConfiguration"}, + "costCalculation":{"shape":"ResourceCostCalculation"} + } + }, + "Ec2AutoScalingGroupConfiguration":{ + "type":"structure", + "members":{ + "instance":{"shape":"InstanceConfiguration"} + } + }, + "Ec2Instance":{ + "type":"structure", + "members":{ + "configuration":{"shape":"Ec2InstanceConfiguration"}, + "costCalculation":{"shape":"ResourceCostCalculation"} + } + }, + "Ec2InstanceConfiguration":{ + "type":"structure", + "members":{ + "instance":{"shape":"InstanceConfiguration"} + } + }, + "Ec2InstanceSavingsPlans":{ + "type":"structure", + "members":{ + "configuration":{"shape":"Ec2InstanceSavingsPlansConfiguration"}, + "costCalculation":{"shape":"SavingsPlansCostCalculation"} + } + }, + "Ec2InstanceSavingsPlansConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "hourlyCommitment":{"shape":"String"}, + "instanceFamily":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "savingsPlansRegion":{"shape":"String"}, + "term":{"shape":"String"} + } + }, + "Ec2ReservedInstances":{ + "type":"structure", + "members":{ + "configuration":{"shape":"Ec2ReservedInstancesConfiguration"}, + "costCalculation":{"shape":"ReservedInstancesCostCalculation"} + } + }, + "Ec2ReservedInstancesConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "currentGeneration":{"shape":"String"}, + "instanceFamily":{"shape":"String"}, + "instanceType":{"shape":"String"}, + "monthlyRecurringCost":{"shape":"String"}, + "normalizedUnitsToPurchase":{"shape":"String"}, + "numberOfInstancesToPurchase":{"shape":"String"}, + "offeringClass":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "platform":{"shape":"String"}, + "reservedInstancesRegion":{"shape":"String"}, + "service":{"shape":"String"}, + "sizeFlexEligible":{"shape":"Boolean"}, + "tenancy":{"shape":"String"}, + "term":{"shape":"String"}, + "upfrontCost":{"shape":"String"} + } + }, + "EcsService":{ + "type":"structure", + "members":{ + "configuration":{"shape":"EcsServiceConfiguration"}, + "costCalculation":{"shape":"ResourceCostCalculation"} + } + }, + "EcsServiceConfiguration":{ + "type":"structure", + "members":{ + "compute":{"shape":"ComputeConfiguration"} + } + }, + "ElastiCacheReservedInstances":{ + "type":"structure", + "members":{ + "configuration":{"shape":"ElastiCacheReservedInstancesConfiguration"}, + "costCalculation":{"shape":"ReservedInstancesCostCalculation"} + } + }, + "ElastiCacheReservedInstancesConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "currentGeneration":{"shape":"String"}, + "instanceFamily":{"shape":"String"}, + "instanceType":{"shape":"String"}, + "monthlyRecurringCost":{"shape":"String"}, + "normalizedUnitsToPurchase":{"shape":"String"}, + "numberOfInstancesToPurchase":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "reservedInstancesRegion":{"shape":"String"}, + "service":{"shape":"String"}, + "sizeFlexEligible":{"shape":"Boolean"}, + "term":{"shape":"String"}, + "upfrontCost":{"shape":"String"} + } + }, + "EnrollmentStatus":{ + "type":"string", + "enum":[ + "Active", + "Inactive" + ] + }, + "EstimatedDiscounts":{ + "type":"structure", + "members":{ + "otherDiscount":{"shape":"Double"}, + "reservedInstancesDiscount":{"shape":"Double"}, + "savingsPlansDiscount":{"shape":"Double"} + } + }, + "Filter":{ + "type":"structure", + "members":{ + "accountIds":{"shape":"AccountIdList"}, + "actionTypes":{"shape":"ActionTypeList"}, + "implementationEfforts":{"shape":"ImplementationEffortList"}, + "recommendationIds":{"shape":"RecommendationIdList"}, + "regions":{"shape":"RegionList"}, + "resourceArns":{"shape":"ResourceArnList"}, + "resourceIds":{"shape":"ResourceIdList"}, + "resourceTypes":{"shape":"ResourceTypeList"}, + "restartNeeded":{"shape":"Boolean"}, + "rollbackPossible":{"shape":"Boolean"}, + "tags":{"shape":"TagList"} + } + }, + "GetPreferencesRequest":{ + "type":"structure", + "members":{ + } + }, + "GetPreferencesResponse":{ + "type":"structure", + "members":{ + "memberAccountDiscountVisibility":{"shape":"MemberAccountDiscountVisibility"}, + "savingsEstimationMode":{"shape":"SavingsEstimationMode"} + } + }, + "GetRecommendationRequest":{ + "type":"structure", + "required":["recommendationId"], + "members":{ + "recommendationId":{"shape":"String"} + } + }, + "GetRecommendationResponse":{ + "type":"structure", + "members":{ + "accountId":{"shape":"String"}, + "actionType":{"shape":"ActionType"}, + "costCalculationLookbackPeriodInDays":{"shape":"Integer"}, + "currencyCode":{"shape":"String"}, + "currentResourceDetails":{"shape":"ResourceDetails"}, + "currentResourceType":{"shape":"ResourceType"}, + "estimatedMonthlyCost":{"shape":"Double"}, + "estimatedMonthlySavings":{"shape":"Double"}, + "estimatedSavingsOverCostCalculationLookbackPeriod":{"shape":"Double"}, + "estimatedSavingsPercentage":{"shape":"Double"}, + "implementationEffort":{"shape":"ImplementationEffort"}, + "lastRefreshTimestamp":{"shape":"Datetime"}, + "recommendationId":{"shape":"String"}, + "recommendationLookbackPeriodInDays":{"shape":"Integer"}, + "recommendedResourceDetails":{"shape":"ResourceDetails"}, + "recommendedResourceType":{"shape":"ResourceType"}, + "region":{"shape":"String"}, + "resourceArn":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "restartNeeded":{"shape":"Boolean"}, + "rollbackPossible":{"shape":"Boolean"}, + "source":{"shape":"Source"}, + "tags":{"shape":"TagList"} + } + }, + "ImplementationEffort":{ + "type":"string", + "enum":[ + "VeryLow", + "Low", + "Medium", + "High", + "VeryHigh" + ] + }, + "ImplementationEffortList":{ + "type":"list", + "member":{"shape":"ImplementationEffort"}, + "max":100, + "min":1 + }, + "InstanceConfiguration":{ + "type":"structure", + "members":{ + "type":{"shape":"String"} + } + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true, + "fault":true + }, + "LambdaFunction":{ + "type":"structure", + "members":{ + "configuration":{"shape":"LambdaFunctionConfiguration"}, + "costCalculation":{"shape":"ResourceCostCalculation"} + } + }, + "LambdaFunctionConfiguration":{ + "type":"structure", + "members":{ + "compute":{"shape":"ComputeConfiguration"} + } + }, + "ListEnrollmentStatusesRequest":{ + "type":"structure", + "members":{ + "accountId":{"shape":"AccountId"}, + "includeOrganizationInfo":{"shape":"PrimitiveBoolean"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"String"} + } + }, + "ListEnrollmentStatusesResponse":{ + "type":"structure", + "members":{ + "items":{"shape":"AccountEnrollmentStatuses"}, + "nextToken":{"shape":"String"} + } + }, + "ListRecommendationSummariesRequest":{ + "type":"structure", + "required":["groupBy"], + "members":{ + "filter":{"shape":"Filter"}, + "groupBy":{"shape":"String"}, + "maxResults":{"shape":"ListRecommendationSummariesRequestMaxResultsInteger"}, + "nextToken":{"shape":"String"} + } + }, + "ListRecommendationSummariesRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":0 + }, + "ListRecommendationSummariesResponse":{ + "type":"structure", + "members":{ + "currencyCode":{"shape":"String"}, + "estimatedTotalDedupedSavings":{"shape":"Double"}, + "groupBy":{"shape":"String"}, + "items":{"shape":"RecommendationSummariesList"}, + "nextToken":{"shape":"String"} + } + }, + "ListRecommendationsRequest":{ + "type":"structure", + "members":{ + "filter":{"shape":"Filter"}, + "includeAllRecommendations":{"shape":"PrimitiveBoolean"}, + "maxResults":{"shape":"ListRecommendationsRequestMaxResultsInteger"}, + "nextToken":{"shape":"String"}, + "orderBy":{"shape":"OrderBy"} + } + }, + "ListRecommendationsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":0 + }, + "ListRecommendationsResponse":{ + "type":"structure", + "members":{ + "items":{"shape":"RecommendationList"}, + "nextToken":{"shape":"String"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":0 + }, + "MemberAccountDiscountVisibility":{ + "type":"string", + "enum":[ + "All", + "None" + ] + }, + "OpenSearchReservedInstances":{ + "type":"structure", + "members":{ + "configuration":{"shape":"OpenSearchReservedInstancesConfiguration"}, + "costCalculation":{"shape":"ReservedInstancesCostCalculation"} + } + }, + "OpenSearchReservedInstancesConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "currentGeneration":{"shape":"String"}, + "instanceType":{"shape":"String"}, + "monthlyRecurringCost":{"shape":"String"}, + "normalizedUnitsToPurchase":{"shape":"String"}, + "numberOfInstancesToPurchase":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "reservedInstancesRegion":{"shape":"String"}, + "service":{"shape":"String"}, + "sizeFlexEligible":{"shape":"Boolean"}, + "term":{"shape":"String"}, + "upfrontCost":{"shape":"String"} + } + }, + "Order":{ + "type":"string", + "enum":[ + "Asc", + "Desc" + ] + }, + "OrderBy":{ + "type":"structure", + "members":{ + "dimension":{"shape":"String"}, + "order":{"shape":"Order"} + } + }, + "PrimitiveBoolean":{"type":"boolean"}, + "RdsReservedInstances":{ + "type":"structure", + "members":{ + "configuration":{"shape":"RdsReservedInstancesConfiguration"}, + "costCalculation":{"shape":"ReservedInstancesCostCalculation"} + } + }, + "RdsReservedInstancesConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "currentGeneration":{"shape":"String"}, + "databaseEdition":{"shape":"String"}, + "databaseEngine":{"shape":"String"}, + "deploymentOption":{"shape":"String"}, + "instanceFamily":{"shape":"String"}, + "instanceType":{"shape":"String"}, + "licenseModel":{"shape":"String"}, + "monthlyRecurringCost":{"shape":"String"}, + "normalizedUnitsToPurchase":{"shape":"String"}, + "numberOfInstancesToPurchase":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "reservedInstancesRegion":{"shape":"String"}, + "service":{"shape":"String"}, + "sizeFlexEligible":{"shape":"Boolean"}, + "term":{"shape":"String"}, + "upfrontCost":{"shape":"String"} + } + }, + "Recommendation":{ + "type":"structure", + "members":{ + "accountId":{"shape":"String"}, + "actionType":{"shape":"String"}, + "currencyCode":{"shape":"String"}, + "currentResourceSummary":{"shape":"String"}, + "currentResourceType":{"shape":"String"}, + "estimatedMonthlyCost":{"shape":"Double"}, + "estimatedMonthlySavings":{"shape":"Double"}, + "estimatedSavingsPercentage":{"shape":"Double"}, + "implementationEffort":{"shape":"String"}, + "lastRefreshTimestamp":{"shape":"Datetime"}, + "recommendationId":{"shape":"String"}, + "recommendationLookbackPeriodInDays":{"shape":"Integer"}, + "recommendedResourceSummary":{"shape":"String"}, + "recommendedResourceType":{"shape":"String"}, + "region":{"shape":"String"}, + "resourceArn":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "restartNeeded":{"shape":"Boolean"}, + "rollbackPossible":{"shape":"Boolean"}, + "source":{"shape":"Source"}, + "tags":{"shape":"TagList"} + } + }, + "RecommendationIdList":{ + "type":"list", + "member":{"shape":"String"}, + "max":100, + "min":1 + }, + "RecommendationList":{ + "type":"list", + "member":{"shape":"Recommendation"} + }, + "RecommendationSummariesList":{ + "type":"list", + "member":{"shape":"RecommendationSummary"} + }, + "RecommendationSummary":{ + "type":"structure", + "members":{ + "estimatedMonthlySavings":{"shape":"Double"}, + "group":{"shape":"String"}, + "recommendationCount":{"shape":"Integer"} + } + }, + "RedshiftReservedInstances":{ + "type":"structure", + "members":{ + "configuration":{"shape":"RedshiftReservedInstancesConfiguration"}, + "costCalculation":{"shape":"ReservedInstancesCostCalculation"} + } + }, + "RedshiftReservedInstancesConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "currentGeneration":{"shape":"String"}, + "instanceFamily":{"shape":"String"}, + "instanceType":{"shape":"String"}, + "monthlyRecurringCost":{"shape":"String"}, + "normalizedUnitsToPurchase":{"shape":"String"}, + "numberOfInstancesToPurchase":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "reservedInstancesRegion":{"shape":"String"}, + "service":{"shape":"String"}, + "sizeFlexEligible":{"shape":"Boolean"}, + "term":{"shape":"String"}, + "upfrontCost":{"shape":"String"} + } + }, + "RegionList":{ + "type":"list", + "member":{"shape":"String"}, + "max":100, + "min":1 + }, + "ReservedInstancesCostCalculation":{ + "type":"structure", + "members":{ + "pricing":{"shape":"ReservedInstancesPricing"} + } + }, + "ReservedInstancesPricing":{ + "type":"structure", + "members":{ + "estimatedMonthlyAmortizedReservationCost":{"shape":"Double"}, + "estimatedOnDemandCost":{"shape":"Double"}, + "monthlyReservationEligibleCost":{"shape":"Double"}, + "savingsPercentage":{"shape":"Double"} + } + }, + "ResourceArnList":{ + "type":"list", + "member":{"shape":"String"}, + "max":100, + "min":1 + }, + "ResourceCostCalculation":{ + "type":"structure", + "members":{ + "pricing":{"shape":"ResourcePricing"}, + "usages":{"shape":"UsageList"} + } + }, + "ResourceDetails":{ + "type":"structure", + "members":{ + "computeSavingsPlans":{"shape":"ComputeSavingsPlans"}, + "ebsVolume":{"shape":"EbsVolume"}, + "ec2AutoScalingGroup":{"shape":"Ec2AutoScalingGroup"}, + "ec2Instance":{"shape":"Ec2Instance"}, + "ec2InstanceSavingsPlans":{"shape":"Ec2InstanceSavingsPlans"}, + "ec2ReservedInstances":{"shape":"Ec2ReservedInstances"}, + "ecsService":{"shape":"EcsService"}, + "elastiCacheReservedInstances":{"shape":"ElastiCacheReservedInstances"}, + "lambdaFunction":{"shape":"LambdaFunction"}, + "openSearchReservedInstances":{"shape":"OpenSearchReservedInstances"}, + "rdsReservedInstances":{"shape":"RdsReservedInstances"}, + "redshiftReservedInstances":{"shape":"RedshiftReservedInstances"}, + "sageMakerSavingsPlans":{"shape":"SageMakerSavingsPlans"} + }, + "union":true + }, + "ResourceIdList":{ + "type":"list", + "member":{"shape":"String"}, + "max":100, + "min":1 + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":[ + "message", + "resourceId" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{"shape":"String"} + }, + "exception":true + }, + "ResourcePricing":{ + "type":"structure", + "members":{ + "estimatedCostAfterDiscounts":{"shape":"Double"}, + "estimatedCostBeforeDiscounts":{"shape":"Double"}, + "estimatedDiscounts":{"shape":"EstimatedDiscounts"}, + "estimatedNetUnusedAmortizedCommitments":{"shape":"Double"} + } + }, + "ResourceType":{ + "type":"string", + "enum":[ + "Ec2Instance", + "LambdaFunction", + "EbsVolume", + "EcsService", + "Ec2AutoScalingGroup", + "Ec2InstanceSavingsPlans", + "ComputeSavingsPlans", + "SageMakerSavingsPlans", + "Ec2ReservedInstances", + "RdsReservedInstances", + "OpenSearchReservedInstances", + "RedshiftReservedInstances", + "ElastiCacheReservedInstances" + ] + }, + "ResourceTypeList":{ + "type":"list", + "member":{"shape":"ResourceType"}, + "max":100, + "min":1 + }, + "SageMakerSavingsPlans":{ + "type":"structure", + "members":{ + "configuration":{"shape":"SageMakerSavingsPlansConfiguration"}, + "costCalculation":{"shape":"SavingsPlansCostCalculation"} + } + }, + "SageMakerSavingsPlansConfiguration":{ + "type":"structure", + "members":{ + "accountScope":{"shape":"String"}, + "hourlyCommitment":{"shape":"String"}, + "paymentOption":{"shape":"String"}, + "term":{"shape":"String"} + } + }, + "SavingsEstimationMode":{ + "type":"string", + "enum":[ + "BeforeDiscounts", + "AfterDiscounts" + ] + }, + "SavingsPlansCostCalculation":{ + "type":"structure", + "members":{ + "pricing":{"shape":"SavingsPlansPricing"} + } + }, + "SavingsPlansPricing":{ + "type":"structure", + "members":{ + "estimatedMonthlyCommitment":{"shape":"Double"}, + "estimatedOnDemandCost":{"shape":"Double"}, + "monthlySavingsPlansEligibleCost":{"shape":"Double"}, + "savingsPercentage":{"shape":"Double"} + } + }, + "Source":{ + "type":"string", + "enum":[ + "ComputeOptimizer", + "CostExplorer" + ] + }, + "StorageConfiguration":{ + "type":"structure", + "members":{ + "sizeInGb":{"shape":"Double"}, + "type":{"shape":"String"} + } + }, + "String":{"type":"string"}, + "Tag":{ + "type":"structure", + "members":{ + "key":{"shape":"String"}, + "value":{"shape":"String"} + } + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":100, + "min":1 + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "Timestamp":{"type":"timestamp"}, + "UpdateEnrollmentStatusRequest":{ + "type":"structure", + "required":["status"], + "members":{ + "includeMemberAccounts":{"shape":"Boolean"}, + "status":{"shape":"EnrollmentStatus"} + } + }, + "UpdateEnrollmentStatusResponse":{ + "type":"structure", + "members":{ + "status":{"shape":"String"} + } + }, + "UpdatePreferencesRequest":{ + "type":"structure", + "members":{ + "memberAccountDiscountVisibility":{"shape":"MemberAccountDiscountVisibility"}, + "savingsEstimationMode":{"shape":"SavingsEstimationMode"} + } + }, + "UpdatePreferencesResponse":{ + "type":"structure", + "members":{ + "memberAccountDiscountVisibility":{"shape":"MemberAccountDiscountVisibility"}, + "savingsEstimationMode":{"shape":"SavingsEstimationMode"} + } + }, + "Usage":{ + "type":"structure", + "members":{ + "operation":{"shape":"String"}, + "productCode":{"shape":"String"}, + "unit":{"shape":"String"}, + "usageAmount":{"shape":"Double"}, + "usageType":{"shape":"String"} + } + }, + "UsageList":{ + "type":"list", + "member":{"shape":"Usage"} + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "fields":{"shape":"ValidationExceptionDetails"}, + "message":{"shape":"String"}, + "reason":{"shape":"ValidationExceptionReason"} + }, + "exception":true + }, + "ValidationExceptionDetail":{ + "type":"structure", + "required":[ + "fieldName", + "message" + ], + "members":{ + "fieldName":{"shape":"String"}, + "message":{"shape":"String"} + } + }, + "ValidationExceptionDetails":{ + "type":"list", + "member":{"shape":"ValidationExceptionDetail"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "FieldValidationFailed", + "Other" + ] + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,796 @@ +{ + "version": "2.0", + "service": "

You can use the Cost Optimization Hub API to programmatically identify, filter, aggregate, and quantify savings for your cost optimization recommendations across multiple Amazon Web Services Regions and Amazon Web Services accounts in your organization.

The Cost Optimization Hub API provides the following endpoint:

  • https://cost-optimization-hub.us-east-1.amazonaws.com

", + "operations": { + "GetPreferences": "

Returns a set of preferences for an account in order to add account-specific preferences into the service. These preferences impact how the savings associated with recommendations are presented—estimated savings after discounts or estimated savings before discounts, for example.

", + "GetRecommendation": "

Returns both the current and recommended resource configuration and the estimated cost impact for a recommendation.

The recommendationId is only valid for up to a maximum of 24 hours as recommendations are refreshed daily. To retrieve the recommendationId, use the ListRecommendations API.

", + "ListEnrollmentStatuses": "

Retrieves the enrollment status for an account. It can also return the list of accounts that are enrolled under the organization.

", + "ListRecommendationSummaries": "

Returns a concise representation of savings estimates for resources. Also returns de-duped savings across different types of recommendations.

The following filters are not supported for this API: recommendationIds, resourceArns, and resourceIds.

", + "ListRecommendations": "

Returns a list of recommendations.

", + "UpdateEnrollmentStatus": "

Updates the enrollment (opt in and opt out) status of an account to the Cost Optimization Hub service.

If the account is a management account of an organization, this action can also be used to enroll member accounts of the organization.

You must have the appropriate permissions to opt in to Cost Optimization Hub and to view its recommendations. When you opt in, Cost Optimization Hub automatically creates a service-linked role in your account to access its data.

", + "UpdatePreferences": "

Updates a set of preferences for an account in order to add account-specific preferences into the service. These preferences impact how the savings associated with recommendations are presented.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You are not authorized to use this operation with the given parameters.

", + "refs": { + } + }, + "AccountEnrollmentStatus": { + "base": "

Describes the enrollment status of an organization's member accounts in Cost Optimization Hub.

", + "refs": { + "AccountEnrollmentStatuses$member": null + } + }, + "AccountEnrollmentStatuses": { + "base": null, + "refs": { + "ListEnrollmentStatusesResponse$items": "

The account enrollment statuses.

" + } + }, + "AccountId": { + "base": null, + "refs": { + "AccountEnrollmentStatus$accountId": "

The Amazon Web Services account ID.

", + "AccountIdList$member": null, + "ListEnrollmentStatusesRequest$accountId": "

The enrollment status of a specific account ID in the organization.

" + } + }, + "AccountIdList": { + "base": null, + "refs": { + "Filter$accountIds": "

The account that the recommendation is for.

" + } + }, + "ActionType": { + "base": null, + "refs": { + "ActionTypeList$member": null, + "GetRecommendationResponse$actionType": "

The type of action you can take by adopting the recommendation.

" + } + }, + "ActionTypeList": { + "base": null, + "refs": { + "Filter$actionTypes": "

The type of action you can take by adopting the recommendation.

" + } + }, + "BlockStoragePerformanceConfiguration": { + "base": "

Describes the Amazon Elastic Block Store performance configuration of the current and recommended resource configuration for a recommendation.

", + "refs": { + "EbsVolumeConfiguration$performance": "

The Amazon Elastic Block Store performance configuration.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "Ec2ReservedInstancesConfiguration$sizeFlexEligible": "

Determines whether the recommendation is size flexible.

", + "ElastiCacheReservedInstancesConfiguration$sizeFlexEligible": "

Determines whether the recommendation is size flexible.

", + "Filter$restartNeeded": "

Whether or not implementing the recommendation requires a restart.

", + "Filter$rollbackPossible": "

Whether or not implementing the recommendation can be rolled back.

", + "GetRecommendationResponse$restartNeeded": "

Whether or not implementing the recommendation requires a restart.

", + "GetRecommendationResponse$rollbackPossible": "

Whether or not implementing the recommendation can be rolled back.

", + "OpenSearchReservedInstancesConfiguration$sizeFlexEligible": "

Determines whether the recommendation is size flexible.

", + "RdsReservedInstancesConfiguration$sizeFlexEligible": "

Determines whether the recommendation is size flexible.

", + "Recommendation$restartNeeded": "

Whether or not implementing the recommendation requires a restart.

", + "Recommendation$rollbackPossible": "

Whether or not implementing the recommendation can be rolled back.

", + "RedshiftReservedInstancesConfiguration$sizeFlexEligible": "

Determines whether the recommendation is size flexible.

", + "UpdateEnrollmentStatusRequest$includeMemberAccounts": "

Indicates whether to enroll member accounts of the organization if the account is the management account.

" + } + }, + "ComputeConfiguration": { + "base": "

Describes the performance configuration for compute services such as Amazon EC2, Lambda, and ECS.

", + "refs": { + "EcsServiceConfiguration$compute": "

Details about the compute configuration.

", + "LambdaFunctionConfiguration$compute": "

Details about the compute configuration.

" + } + }, + "ComputeSavingsPlans": { + "base": "

The Compute Savings Plans recommendation details.

", + "refs": { + "ResourceDetails$computeSavingsPlans": "

The Compute Savings Plans recommendation details.

" + } + }, + "ComputeSavingsPlansConfiguration": { + "base": "

The Compute Savings Plans configuration used for recommendations.

", + "refs": { + "ComputeSavingsPlans$configuration": "

Configuration details of the Compute Savings Plans to purchase.

" + } + }, + "Datetime": { + "base": null, + "refs": { + "GetRecommendationResponse$lastRefreshTimestamp": "

The time when the recommendation was last generated.

", + "Recommendation$lastRefreshTimestamp": "

The time when the recommendation was last generated.

" + } + }, + "Double": { + "base": null, + "refs": { + "BlockStoragePerformanceConfiguration$iops": "

The number of I/O operations per second.

", + "BlockStoragePerformanceConfiguration$throughput": "

The throughput that the volume supports.

", + "ComputeConfiguration$vCpu": "

The number of vCPU cores in the resource.

", + "EstimatedDiscounts$otherDiscount": "

Estimated other discounts include all discounts that are not itemized. Itemized discounts include reservedInstanceDiscount and savingsPlansDiscount.

", + "EstimatedDiscounts$reservedInstancesDiscount": "

Estimated reserved instance discounts.

", + "EstimatedDiscounts$savingsPlansDiscount": "

Estimated Savings Plans discounts.

", + "GetRecommendationResponse$estimatedMonthlyCost": "

The estimated monthly cost of the recommendation.

", + "GetRecommendationResponse$estimatedMonthlySavings": "

The estimated monthly savings amount for the recommendation.

", + "GetRecommendationResponse$estimatedSavingsOverCostCalculationLookbackPeriod": "

The estimated savings amount over the lookback period used to calculate cost impact for a recommendation.

", + "GetRecommendationResponse$estimatedSavingsPercentage": "

The estimated savings percentage relative to the total cost over the cost calculation lookback period.

", + "ListRecommendationSummariesResponse$estimatedTotalDedupedSavings": "

The total overall savings for the aggregated view.

", + "Recommendation$estimatedMonthlyCost": "

The estimated monthly cost for the recommendation.

", + "Recommendation$estimatedMonthlySavings": "

The estimated monthly savings amount for the recommendation.

", + "Recommendation$estimatedSavingsPercentage": "

The estimated savings percentage relative to the total cost over the cost calculation lookback period.

", + "RecommendationSummary$estimatedMonthlySavings": "

The estimated total savings resulting from modifications, on a monthly basis.

", + "ReservedInstancesPricing$estimatedMonthlyAmortizedReservationCost": "

The estimated cost of your recurring monthly fees for the recommended reserved instance across the month.

", + "ReservedInstancesPricing$estimatedOnDemandCost": "

The remaining On-Demand cost estimated to not be covered by the recommended reserved instance, over the length of the lookback period.

", + "ReservedInstancesPricing$monthlyReservationEligibleCost": "

The cost of paying for the recommended reserved instance monthly.

", + "ReservedInstancesPricing$savingsPercentage": "

The savings percentage relative to the total On-Demand costs that are associated with this instance.

", + "ResourcePricing$estimatedCostAfterDiscounts": "

The savings estimate incorporating all discounts with Amazon Web Services, such as Reserved Instances and Savings Plans.

", + "ResourcePricing$estimatedCostBeforeDiscounts": "

The savings estimate using Amazon Web Services public pricing without incorporating any discounts.

", + "ResourcePricing$estimatedNetUnusedAmortizedCommitments": "

The estimated net unused amortized commitment for the recommendation.

", + "SavingsPlansPricing$estimatedMonthlyCommitment": "

Estimated monthly commitment for the Savings Plan.

", + "SavingsPlansPricing$estimatedOnDemandCost": "

Estimated On-Demand cost you will pay after buying the Savings Plan.

", + "SavingsPlansPricing$monthlySavingsPlansEligibleCost": "

The cost of paying for the recommended Savings Plan monthly.

", + "SavingsPlansPricing$savingsPercentage": "

Estimated savings as a percentage of your overall costs after buying the Savings Plan.

", + "StorageConfiguration$sizeInGb": "

The storage volume.

", + "Usage$usageAmount": "

The usage amount.

" + } + }, + "EbsVolume": { + "base": "

Describes the Amazon Elastic Block Store volume configuration of the current and recommended resource configuration for a recommendation.

", + "refs": { + "ResourceDetails$ebsVolume": "

The Amazon Elastic Block Store volume recommendation details.

" + } + }, + "EbsVolumeConfiguration": { + "base": "

The Amazon Elastic Block Store volume configuration used for recommendations.

", + "refs": { + "EbsVolume$configuration": "

The Amazon Elastic Block Store volume configuration used for recommendations.

" + } + }, + "Ec2AutoScalingGroup": { + "base": "

The EC2 Auto Scaling group recommendation details.

", + "refs": { + "ResourceDetails$ec2AutoScalingGroup": "

The EC2 Auto Scaling group recommendation details.

" + } + }, + "Ec2AutoScalingGroupConfiguration": { + "base": "

The EC2 auto scaling group configuration used for recommendations.

", + "refs": { + "Ec2AutoScalingGroup$configuration": "

The EC2 Auto Scaling group configuration used for recommendations.

" + } + }, + "Ec2Instance": { + "base": "

Describes the EC2 instance configuration of the current and recommended resource configuration for a recommendation.

", + "refs": { + "ResourceDetails$ec2Instance": "

The EC2 instance recommendation details.

" + } + }, + "Ec2InstanceConfiguration": { + "base": "

The EC2 instance configuration used for recommendations.

", + "refs": { + "Ec2Instance$configuration": "

The EC2 instance configuration used for recommendations.

" + } + }, + "Ec2InstanceSavingsPlans": { + "base": "

The EC2 instance Savings Plans recommendation details.

", + "refs": { + "ResourceDetails$ec2InstanceSavingsPlans": "

The EC2 instance Savings Plans recommendation details.

" + } + }, + "Ec2InstanceSavingsPlansConfiguration": { + "base": "

The EC2 instance Savings Plans configuration used for recommendations.

", + "refs": { + "Ec2InstanceSavingsPlans$configuration": "

The EC2 instance Savings Plans configuration used for recommendations.

" + } + }, + "Ec2ReservedInstances": { + "base": "

The EC2 reserved instances recommendation details.

", + "refs": { + "ResourceDetails$ec2ReservedInstances": "

The EC2 reserved instances recommendation details.

" + } + }, + "Ec2ReservedInstancesConfiguration": { + "base": "

The EC2 reserved instances configuration used for recommendations.

", + "refs": { + "Ec2ReservedInstances$configuration": "

The EC2 reserved instances configuration used for recommendations.

" + } + }, + "EcsService": { + "base": "

The ECS service recommendation details.

", + "refs": { + "ResourceDetails$ecsService": "

The ECS service recommendation details.

" + } + }, + "EcsServiceConfiguration": { + "base": "

The ECS service configuration used for recommendations.

", + "refs": { + "EcsService$configuration": "

The ECS service configuration used for recommendations.

" + } + }, + "ElastiCacheReservedInstances": { + "base": "

The ElastiCache reserved instances recommendation details.

", + "refs": { + "ResourceDetails$elastiCacheReservedInstances": "

The ElastiCache reserved instances recommendation details.

" + } + }, + "ElastiCacheReservedInstancesConfiguration": { + "base": "

The ElastiCache reserved instances configuration used for recommendations.

", + "refs": { + "ElastiCacheReservedInstances$configuration": "

The ElastiCache reserved instances configuration used for recommendations.

" + } + }, + "EnrollmentStatus": { + "base": null, + "refs": { + "AccountEnrollmentStatus$status": "

The account enrollment status.

", + "UpdateEnrollmentStatusRequest$status": "

Sets the account status.

" + } + }, + "EstimatedDiscounts": { + "base": "

Estimated discount details of the current and recommended resource configuration for a recommendation.

", + "refs": { + "ResourcePricing$estimatedDiscounts": "

The estimated discounts for a recommendation.

" + } + }, + "Filter": { + "base": "

Describes a filter that returns a more specific list of recommendations. Filters recommendations by different dimensions.

", + "refs": { + "ListRecommendationSummariesRequest$filter": null, + "ListRecommendationsRequest$filter": "

The constraints that you want all returned recommendations to match.

" + } + }, + "GetPreferencesRequest": { + "base": null, + "refs": { + } + }, + "GetPreferencesResponse": { + "base": null, + "refs": { + } + }, + "GetRecommendationRequest": { + "base": null, + "refs": { + } + }, + "GetRecommendationResponse": { + "base": null, + "refs": { + } + }, + "ImplementationEffort": { + "base": null, + "refs": { + "GetRecommendationResponse$implementationEffort": "

The effort required to implement the recommendation.

", + "ImplementationEffortList$member": null + } + }, + "ImplementationEffortList": { + "base": null, + "refs": { + "Filter$implementationEfforts": "

The effort required to implement the recommendation.

" + } + }, + "InstanceConfiguration": { + "base": "

The Instance configuration used for recommendations.

", + "refs": { + "Ec2AutoScalingGroupConfiguration$instance": "

Details about the instance.

", + "Ec2InstanceConfiguration$instance": "

Details about the instance.

" + } + }, + "Integer": { + "base": null, + "refs": { + "ComputeConfiguration$memorySizeInMB": "

The memory size of the resource.

", + "GetRecommendationResponse$costCalculationLookbackPeriodInDays": "

The lookback period used to calculate cost impact for a recommendation.

", + "GetRecommendationResponse$recommendationLookbackPeriodInDays": "

The lookback period that's used to generate the recommendation.

", + "Recommendation$recommendationLookbackPeriodInDays": "

The lookback period that's used to generate the recommendation.

", + "RecommendationSummary$recommendationCount": "

The total number of instance recommendations.

" + } + }, + "InternalServerException": { + "base": "

An error on the server occurred during the processing of your request. Try again later.

", + "refs": { + } + }, + "LambdaFunction": { + "base": "

The Lambda function recommendation details.

", + "refs": { + "ResourceDetails$lambdaFunction": "

The Lambda function recommendation details.

" + } + }, + "LambdaFunctionConfiguration": { + "base": "

The Lambda function configuration used for recommendations.

", + "refs": { + "LambdaFunction$configuration": "

The Lambda function configuration used for recommendations.

" + } + }, + "ListEnrollmentStatusesRequest": { + "base": null, + "refs": { + } + }, + "ListEnrollmentStatusesResponse": { + "base": null, + "refs": { + } + }, + "ListRecommendationSummariesRequest": { + "base": null, + "refs": { + } + }, + "ListRecommendationSummariesRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListRecommendationSummariesRequest$maxResults": "

The maximum number of recommendations that are returned for the request.

" + } + }, + "ListRecommendationSummariesResponse": { + "base": null, + "refs": { + } + }, + "ListRecommendationsRequest": { + "base": null, + "refs": { + } + }, + "ListRecommendationsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListRecommendationsRequest$maxResults": "

The maximum number of recommendations that are returned for the request.

" + } + }, + "ListRecommendationsResponse": { + "base": null, + "refs": { + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListEnrollmentStatusesRequest$maxResults": "

The maximum number of objects that are returned for the request.

" + } + }, + "MemberAccountDiscountVisibility": { + "base": null, + "refs": { + "GetPreferencesResponse$memberAccountDiscountVisibility": "

Retrieves the status of the \"member account discount visibility\" preference.

", + "UpdatePreferencesRequest$memberAccountDiscountVisibility": "

Sets the \"member account discount visibility\" preference.

", + "UpdatePreferencesResponse$memberAccountDiscountVisibility": "

Shows the status of the \"member account discount visibility\" preference.

" + } + }, + "OpenSearchReservedInstances": { + "base": "

The OpenSearch reserved instances recommendation details.

", + "refs": { + "ResourceDetails$openSearchReservedInstances": "

The OpenSearch reserved instances recommendation details.

" + } + }, + "OpenSearchReservedInstancesConfiguration": { + "base": "

The OpenSearch reserved instances configuration used for recommendations.

", + "refs": { + "OpenSearchReservedInstances$configuration": "

The OpenSearch reserved instances configuration used for recommendations.

" + } + }, + "Order": { + "base": null, + "refs": { + "OrderBy$order": "

The order that's used to sort the data.

" + } + }, + "OrderBy": { + "base": "

Defines how rows will be sorted in the response.

", + "refs": { + "ListRecommendationsRequest$orderBy": "

The ordering of recommendations by a dimension.

" + } + }, + "PrimitiveBoolean": { + "base": null, + "refs": { + "ListEnrollmentStatusesRequest$includeOrganizationInfo": "

Indicates whether to return the enrollment status for the organization.

", + "ListRecommendationsRequest$includeAllRecommendations": "

List of all recommendations for a resource, or a single recommendation if de-duped by resourceId.

" + } + }, + "RdsReservedInstances": { + "base": "

The RDS reserved instances recommendation details.

", + "refs": { + "ResourceDetails$rdsReservedInstances": "

The RDS reserved instances recommendation details.

" + } + }, + "RdsReservedInstancesConfiguration": { + "base": "

The RDS reserved instances configuration used for recommendations.

", + "refs": { + "RdsReservedInstances$configuration": "

The RDS reserved instances configuration used for recommendations.

" + } + }, + "Recommendation": { + "base": "

Describes a recommendation.

", + "refs": { + "RecommendationList$member": null + } + }, + "RecommendationIdList": { + "base": null, + "refs": { + "Filter$recommendationIds": "

The IDs for the recommendations.

" + } + }, + "RecommendationList": { + "base": null, + "refs": { + "ListRecommendationsResponse$items": "

List of all savings recommendations.

" + } + }, + "RecommendationSummariesList": { + "base": null, + "refs": { + "ListRecommendationSummariesResponse$items": "

List of all savings recommendations.

" + } + }, + "RecommendationSummary": { + "base": "

The summary of rightsizing recommendations, including de-duped savings from all types of recommendations.

", + "refs": { + "RecommendationSummariesList$member": null + } + }, + "RedshiftReservedInstances": { + "base": "

The Redshift reserved instances recommendation details.

", + "refs": { + "ResourceDetails$redshiftReservedInstances": "

The Redshift reserved instances recommendation details.

" + } + }, + "RedshiftReservedInstancesConfiguration": { + "base": "

The Redshift reserved instances configuration used for recommendations.

", + "refs": { + "RedshiftReservedInstances$configuration": "

The Redshift reserved instances configuration used for recommendations.

" + } + }, + "RegionList": { + "base": null, + "refs": { + "Filter$regions": "

The Amazon Web Services Region of the resource.

" + } + }, + "ReservedInstancesCostCalculation": { + "base": "

Cost impact of the purchase recommendation.

", + "refs": { + "Ec2ReservedInstances$costCalculation": "

Cost impact of the purchase recommendation.

", + "ElastiCacheReservedInstances$costCalculation": "

Cost impact of the purchase recommendation.

", + "OpenSearchReservedInstances$costCalculation": "

Cost impact of the purchase recommendation.

", + "RdsReservedInstances$costCalculation": "

Cost impact of the purchase recommendation.

", + "RedshiftReservedInstances$costCalculation": "

Cost impact of the purchase recommendation.

" + } + }, + "ReservedInstancesPricing": { + "base": "

Pricing details for your recommended reserved instance.

", + "refs": { + "ReservedInstancesCostCalculation$pricing": "

Pricing details of the purchase recommendation.

" + } + }, + "ResourceArnList": { + "base": null, + "refs": { + "Filter$resourceArns": "

The Amazon Resource Name (ARN) of the recommendation.

" + } + }, + "ResourceCostCalculation": { + "base": "

Cost impact of the resource recommendation.

", + "refs": { + "EbsVolume$costCalculation": "

Cost impact of the recommendation.

", + "Ec2AutoScalingGroup$costCalculation": "

Cost impact of the recommendation.

", + "Ec2Instance$costCalculation": "

Cost impact of the recommendation.

", + "EcsService$costCalculation": "

Cost impact of the recommendation.

", + "LambdaFunction$costCalculation": "

Cost impact of the recommendation.

" + } + }, + "ResourceDetails": { + "base": "

Contains detailed information about the specified resource.

", + "refs": { + "GetRecommendationResponse$currentResourceDetails": "

The details for the resource.

", + "GetRecommendationResponse$recommendedResourceDetails": "

The details about the recommended resource.

" + } + }, + "ResourceIdList": { + "base": null, + "refs": { + "Filter$resourceIds": "

The resource ID of the recommendation.

" + } + }, + "ResourceNotFoundException": { + "base": "

The specified Amazon Resource Name (ARN) in the request doesn't exist.

", + "refs": { + } + }, + "ResourcePricing": { + "base": "

Contains pricing information about the specified resource.

", + "refs": { + "ResourceCostCalculation$pricing": "

Pricing details of the resource recommendation.

" + } + }, + "ResourceType": { + "base": null, + "refs": { + "GetRecommendationResponse$currentResourceType": "

The type of resource.

", + "GetRecommendationResponse$recommendedResourceType": "

The resource type of the recommendation.

", + "ResourceTypeList$member": null + } + }, + "ResourceTypeList": { + "base": null, + "refs": { + "Filter$resourceTypes": "

The resource type of the recommendation.

" + } + }, + "SageMakerSavingsPlans": { + "base": "

The SageMaker Savings Plans recommendation details.

", + "refs": { + "ResourceDetails$sageMakerSavingsPlans": "

The SageMaker Savings Plans recommendation details.

" + } + }, + "SageMakerSavingsPlansConfiguration": { + "base": "

The SageMaker Savings Plans configuration used for recommendations.

", + "refs": { + "SageMakerSavingsPlans$configuration": "

The SageMaker Savings Plans configuration used for recommendations.

" + } + }, + "SavingsEstimationMode": { + "base": null, + "refs": { + "GetPreferencesResponse$savingsEstimationMode": "

Retrieves the status of the \"savings estimation mode\" preference.

", + "UpdatePreferencesRequest$savingsEstimationMode": "

Sets the \"savings estimation mode\" preference.

", + "UpdatePreferencesResponse$savingsEstimationMode": "

Shows the status of the \"savings estimation mode\" preference.

" + } + }, + "SavingsPlansCostCalculation": { + "base": "

Cost impact of the purchase recommendation.

", + "refs": { + "ComputeSavingsPlans$costCalculation": "

Cost impact of the Savings Plans purchase recommendation.

", + "Ec2InstanceSavingsPlans$costCalculation": "

Cost impact of the Savings Plans purchase recommendation.

", + "SageMakerSavingsPlans$costCalculation": "

Cost impact of the Savings Plans purchase recommendation.

" + } + }, + "SavingsPlansPricing": { + "base": "

Pricing information about a Savings Plan.

", + "refs": { + "SavingsPlansCostCalculation$pricing": "

Pricing details of the purchase recommendation.

" + } + }, + "Source": { + "base": null, + "refs": { + "GetRecommendationResponse$source": "

The source of the recommendation.

", + "Recommendation$source": "

The source of the recommendation.

" + } + }, + "StorageConfiguration": { + "base": "

The storage configuration used for recommendations.

", + "refs": { + "EbsVolumeConfiguration$storage": "

The disk storage of the Amazon Elastic Block Store volume.

" + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ComputeConfiguration$architecture": "

The architecture of the resource.

", + "ComputeConfiguration$platform": "

The platform of the resource. The platform is the specific combination of operating system, license model, and software on an instance.

", + "ComputeSavingsPlansConfiguration$accountScope": "

The account scope that you want your recommendations for. Amazon Web Services calculates recommendations including the management account and member accounts if the value is set to PAYER. If the value is LINKED, recommendations are calculated for individual member accounts only.

", + "ComputeSavingsPlansConfiguration$hourlyCommitment": "

The hourly commitment for the Savings Plans type.

", + "ComputeSavingsPlansConfiguration$paymentOption": "

The payment option for the commitment.

", + "ComputeSavingsPlansConfiguration$term": "

The Savings Plans recommendation term in years.

", + "EbsVolumeConfiguration$attachmentState": "

The Amazon Elastic Block Store attachment state.

", + "Ec2InstanceSavingsPlansConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "Ec2InstanceSavingsPlansConfiguration$hourlyCommitment": "

The hourly commitment for the Savings Plans type.

", + "Ec2InstanceSavingsPlansConfiguration$instanceFamily": "

The instance family of the recommended Savings Plan.

", + "Ec2InstanceSavingsPlansConfiguration$paymentOption": "

The payment option for the commitment.

", + "Ec2InstanceSavingsPlansConfiguration$savingsPlansRegion": "

The Amazon Web Services Region of the commitment.

", + "Ec2InstanceSavingsPlansConfiguration$term": "

The Savings Plans recommendation term in years.

", + "Ec2ReservedInstancesConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "Ec2ReservedInstancesConfiguration$currentGeneration": "

Determines whether the recommendation is for a current generation instance.

", + "Ec2ReservedInstancesConfiguration$instanceFamily": "

The instance family of the recommended reservation.

", + "Ec2ReservedInstancesConfiguration$instanceType": "

The type of instance that Amazon Web Services recommends.

", + "Ec2ReservedInstancesConfiguration$monthlyRecurringCost": "

How much purchasing reserved instances costs you on a monthly basis.

", + "Ec2ReservedInstancesConfiguration$normalizedUnitsToPurchase": "

The number of normalized units that Amazon Web Services recommends that you purchase.

", + "Ec2ReservedInstancesConfiguration$numberOfInstancesToPurchase": "

The number of instances that Amazon Web Services recommends that you purchase.

", + "Ec2ReservedInstancesConfiguration$offeringClass": "

Indicates whether the recommendation is for standard or convertible reservations.

", + "Ec2ReservedInstancesConfiguration$paymentOption": "

The payment option for the commitment.

", + "Ec2ReservedInstancesConfiguration$platform": "

The platform of the recommended reservation. The platform is the specific combination of operating system, license model, and software on an instance.

", + "Ec2ReservedInstancesConfiguration$reservedInstancesRegion": "

The Amazon Web Services Region of the commitment.

", + "Ec2ReservedInstancesConfiguration$service": "

The service that you want your recommendations for.

", + "Ec2ReservedInstancesConfiguration$tenancy": "

Determines whether the recommended reservation is dedicated or shared.

", + "Ec2ReservedInstancesConfiguration$term": "

The reserved instances recommendation term in years.

", + "Ec2ReservedInstancesConfiguration$upfrontCost": "

How much purchasing this instance costs you upfront.

", + "ElastiCacheReservedInstancesConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "ElastiCacheReservedInstancesConfiguration$currentGeneration": "

Determines whether the recommendation is for a current generation instance.

", + "ElastiCacheReservedInstancesConfiguration$instanceFamily": "

The instance family of the recommended reservation.

", + "ElastiCacheReservedInstancesConfiguration$instanceType": "

The type of instance that Amazon Web Services recommends.

", + "ElastiCacheReservedInstancesConfiguration$monthlyRecurringCost": "

How much purchasing reserved instances costs you on a monthly basis.

", + "ElastiCacheReservedInstancesConfiguration$normalizedUnitsToPurchase": "

The number of normalized units that Amazon Web Services recommends that you purchase.

", + "ElastiCacheReservedInstancesConfiguration$numberOfInstancesToPurchase": "

The number of instances that Amazon Web Services recommends that you purchase.

", + "ElastiCacheReservedInstancesConfiguration$paymentOption": "

The payment option for the commitment.

", + "ElastiCacheReservedInstancesConfiguration$reservedInstancesRegion": "

The Amazon Web Services Region of the commitment.

", + "ElastiCacheReservedInstancesConfiguration$service": "

The service that you want your recommendations for.

", + "ElastiCacheReservedInstancesConfiguration$term": "

The reserved instances recommendation term in years.

", + "ElastiCacheReservedInstancesConfiguration$upfrontCost": "

How much purchasing this instance costs you upfront.

", + "GetRecommendationRequest$recommendationId": "

The ID for the recommendation.

", + "GetRecommendationResponse$accountId": "

The account that the recommendation is for.

", + "GetRecommendationResponse$currencyCode": "

The currency code used for the recommendation.

", + "GetRecommendationResponse$recommendationId": "

The ID for the recommendation.

", + "GetRecommendationResponse$region": "

The Amazon Web Services Region of the resource.

", + "GetRecommendationResponse$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", + "GetRecommendationResponse$resourceId": "

The unique identifier for the resource. This is the same as the Amazon Resource Name (ARN), if available.

", + "InstanceConfiguration$type": "

Details about the type.

", + "InternalServerException$message": null, + "ListEnrollmentStatusesRequest$nextToken": "

The token to retrieve the next set of results.

", + "ListEnrollmentStatusesResponse$nextToken": "

The token to retrieve the next set of results.

", + "ListRecommendationSummariesRequest$groupBy": "

The grouping of recommendations by a dimension.

", + "ListRecommendationSummariesRequest$nextToken": "

The token to retrieve the next set of results.

", + "ListRecommendationSummariesResponse$currencyCode": "

The currency code used for the recommendation.

", + "ListRecommendationSummariesResponse$groupBy": "

The dimension used to group the recommendations by.

", + "ListRecommendationSummariesResponse$nextToken": "

The token to retrieve the next set of results.

", + "ListRecommendationsRequest$nextToken": "

The token to retrieve the next set of results.

", + "ListRecommendationsResponse$nextToken": "

The token to retrieve the next set of results.

", + "OpenSearchReservedInstancesConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "OpenSearchReservedInstancesConfiguration$currentGeneration": "

Determines whether the recommendation is for a current generation instance.

", + "OpenSearchReservedInstancesConfiguration$instanceType": "

The type of instance that Amazon Web Services recommends.

", + "OpenSearchReservedInstancesConfiguration$monthlyRecurringCost": "

How much purchasing reserved instances costs you on a monthly basis.

", + "OpenSearchReservedInstancesConfiguration$normalizedUnitsToPurchase": "

The number of normalized units that Amazon Web Services recommends that you purchase.

", + "OpenSearchReservedInstancesConfiguration$numberOfInstancesToPurchase": "

The number of instances that Amazon Web Services recommends that you purchase.

", + "OpenSearchReservedInstancesConfiguration$paymentOption": "

The payment option for the commitment.

", + "OpenSearchReservedInstancesConfiguration$reservedInstancesRegion": "

The Amazon Web Services Region of the commitment.

", + "OpenSearchReservedInstancesConfiguration$service": "

The service that you want your recommendations for.

", + "OpenSearchReservedInstancesConfiguration$term": "

The reserved instances recommendation term in years.

", + "OpenSearchReservedInstancesConfiguration$upfrontCost": "

How much purchasing this instance costs you upfront.

", + "OrderBy$dimension": "

Sorts by dimension values.

", + "RdsReservedInstancesConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "RdsReservedInstancesConfiguration$currentGeneration": "

Determines whether the recommendation is for a current generation instance.

", + "RdsReservedInstancesConfiguration$databaseEdition": "

The database edition that the recommended reservation supports.

", + "RdsReservedInstancesConfiguration$databaseEngine": "

The database engine that the recommended reservation supports.

", + "RdsReservedInstancesConfiguration$deploymentOption": "

Determines whether the recommendation is for a reservation in a single Availability Zone or a reservation with a backup in a second Availability Zone.

", + "RdsReservedInstancesConfiguration$instanceFamily": "

The instance family of the recommended reservation.

", + "RdsReservedInstancesConfiguration$instanceType": "

The type of instance that Amazon Web Services recommends.

", + "RdsReservedInstancesConfiguration$licenseModel": "

The license model that the recommended reservation supports.

", + "RdsReservedInstancesConfiguration$monthlyRecurringCost": "

How much purchasing this instance costs you on a monthly basis.

", + "RdsReservedInstancesConfiguration$normalizedUnitsToPurchase": "

The number of normalized units that Amazon Web Services recommends that you purchase.

", + "RdsReservedInstancesConfiguration$numberOfInstancesToPurchase": "

The number of instances that Amazon Web Services recommends that you purchase.

", + "RdsReservedInstancesConfiguration$paymentOption": "

The payment option for the commitment.

", + "RdsReservedInstancesConfiguration$reservedInstancesRegion": "

The Amazon Web Services Region of the commitment.

", + "RdsReservedInstancesConfiguration$service": "

The service that you want your recommendations for.

", + "RdsReservedInstancesConfiguration$term": "

The reserved instances recommendation term in years.

", + "RdsReservedInstancesConfiguration$upfrontCost": "

How much purchasing this instance costs you upfront.

", + "Recommendation$accountId": "

The account that the recommendation is for.

", + "Recommendation$actionType": "

The type of tasks that can be carried out by this action.

", + "Recommendation$currencyCode": "

The currency code used for the recommendation.

", + "Recommendation$currentResourceSummary": "

Describes the current resource.

", + "Recommendation$currentResourceType": "

The current resource type.

", + "Recommendation$implementationEffort": "

The effort required to implement the recommendation.

", + "Recommendation$recommendationId": "

The ID for the recommendation.

", + "Recommendation$recommendedResourceSummary": "

Describes the recommended resource.

", + "Recommendation$recommendedResourceType": "

The recommended resource type.

", + "Recommendation$region": "

The Amazon Web Services Region of the resource.

", + "Recommendation$resourceArn": "

The Amazon Resource Name (ARN) for the recommendation.

", + "Recommendation$resourceId": "

The resource ID for the recommendation.

", + "RecommendationIdList$member": null, + "RecommendationSummary$group": "

The grouping of recommendations.

", + "RedshiftReservedInstancesConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "RedshiftReservedInstancesConfiguration$currentGeneration": "

Determines whether the recommendation is for a current generation instance.

", + "RedshiftReservedInstancesConfiguration$instanceFamily": "

The instance family of the recommended reservation.

", + "RedshiftReservedInstancesConfiguration$instanceType": "

The type of instance that Amazon Web Services recommends.

", + "RedshiftReservedInstancesConfiguration$monthlyRecurringCost": "

How much purchasing reserved instances costs you on a monthly basis.

", + "RedshiftReservedInstancesConfiguration$normalizedUnitsToPurchase": "

The number of normalized units that Amazon Web Services recommends that you purchase.

", + "RedshiftReservedInstancesConfiguration$numberOfInstancesToPurchase": "

The number of instances that Amazon Web Services recommends that you purchase.

", + "RedshiftReservedInstancesConfiguration$paymentOption": "

The payment option for the commitment.

", + "RedshiftReservedInstancesConfiguration$reservedInstancesRegion": "

The Amazon Web Services Region of the commitment.

", + "RedshiftReservedInstancesConfiguration$service": "

The service that you want your recommendations for.

", + "RedshiftReservedInstancesConfiguration$term": "

The reserved instances recommendation term in years.

", + "RedshiftReservedInstancesConfiguration$upfrontCost": "

How much purchasing this instance costs you upfront.

", + "RegionList$member": null, + "ResourceArnList$member": null, + "ResourceIdList$member": null, + "ResourceNotFoundException$message": null, + "ResourceNotFoundException$resourceId": "

The identifier of the resource that was not found.

", + "SageMakerSavingsPlansConfiguration$accountScope": "

The account scope that you want your recommendations for.

", + "SageMakerSavingsPlansConfiguration$hourlyCommitment": "

The hourly commitment for the Savings Plans type.

", + "SageMakerSavingsPlansConfiguration$paymentOption": "

The payment option for the commitment.

", + "SageMakerSavingsPlansConfiguration$term": "

The Savings Plans recommendation term in years.

", + "StorageConfiguration$type": "

The storage type.

", + "Tag$key": "

The key that's associated with the tag.

", + "Tag$value": "

The value that's associated with the tag.

", + "ThrottlingException$message": null, + "UpdateEnrollmentStatusResponse$status": "

The enrollment status of the account.

", + "Usage$operation": "

The operation value.

", + "Usage$productCode": "

The product code.

", + "Usage$unit": "

The usage unit.

", + "Usage$usageType": "

The usage type.

", + "ValidationException$message": null, + "ValidationExceptionDetail$fieldName": "

The field name where the invalid entry was detected.

", + "ValidationExceptionDetail$message": "

A message with the reason for the validation exception error.

" + } + }, + "Tag": { + "base": "

The tag structure that contains a tag key and value.

", + "refs": { + "TagList$member": null + } + }, + "TagList": { + "base": null, + "refs": { + "Filter$tags": "

A list of tags assigned to the recommendation.

", + "GetRecommendationResponse$tags": "

A list of tags associated with the resource for which the recommendation exists.

", + "Recommendation$tags": "

A list of tags assigned to the recommendation.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "AccountEnrollmentStatus$createdTimestamp": "

The time when the account enrollment status was created.

", + "AccountEnrollmentStatus$lastUpdatedTimestamp": "

The time when the account enrollment status was last updated.

" + } + }, + "UpdateEnrollmentStatusRequest": { + "base": null, + "refs": { + } + }, + "UpdateEnrollmentStatusResponse": { + "base": null, + "refs": { + } + }, + "UpdatePreferencesRequest": { + "base": null, + "refs": { + } + }, + "UpdatePreferencesResponse": { + "base": null, + "refs": { + } + }, + "Usage": { + "base": "

Details about the usage.

", + "refs": { + "UsageList$member": null + } + }, + "UsageList": { + "base": null, + "refs": { + "ResourceCostCalculation$usages": "

Usage details of the resource recommendation.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", + "refs": { + } + }, + "ValidationExceptionDetail": { + "base": "

The input failed to meet the constraints specified by the Amazon Web Services service in a specified field.

", + "refs": { + "ValidationExceptionDetails$member": null + } + }, + "ValidationExceptionDetails": { + "base": null, + "refs": { + "ValidationException$fields": "

The list of fields that are invalid.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason for the validation exception.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cost-optimization-hub-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cost-optimization-hub-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cost-optimization-hub.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://cost-optimization-hub.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://cost-optimization-hub.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cost-optimization-hub/2022-07-26/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cost-optimization-hub/2022-07-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,22 @@ +{ + "pagination": { + "ListEnrollmentStatuses": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListRecommendationSummaries": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListRecommendations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cur/2017-01-06/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cur/2017-01-06/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cur/2017-01-06/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cur/2017-01-06/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -38,6 +38,20 @@ {"shape":"InternalErrorException"} ] }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"}, + {"shape":"ValidationException"} + ] + }, "ModifyReportDefinition":{ "name":"ModifyReportDefinition", "http":{ @@ -63,6 +77,35 @@ {"shape":"DuplicateReportNameException"}, {"shape":"ReportLimitReachedException"}, {"shape":"InternalErrorException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"}, + {"shape":"ValidationException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"}, {"shape":"ValidationException"} ] } @@ -128,6 +171,7 @@ }, "DeleteReportDefinitionRequest":{ "type":"structure", + "required":["ReportName"], "members":{ "ReportName":{"shape":"ReportName"} } @@ -174,6 +218,33 @@ "exception":true, "fault":true }, + "LastDelivery":{ + "type":"string", + "max":20, + "min":16, + "pattern":"[0-9]{8}[T][0-9]{6}([Z]|[+-][0-9]{4})" + }, + "LastStatus":{ + "type":"string", + "enum":[ + "SUCCESS", + "ERROR_PERMISSIONS", + "ERROR_NO_BUCKET" + ] + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ReportName"], + "members":{ + "ReportName":{"shape":"ReportName"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagList"} + } + }, "MaxResults":{ "type":"integer", "box":true, @@ -200,7 +271,8 @@ "type":"structure", "required":["ReportDefinition"], "members":{ - "ReportDefinition":{"shape":"ReportDefinition"} + "ReportDefinition":{"shape":"ReportDefinition"}, + "Tags":{"shape":"TagList"} } }, "PutReportDefinitionResponse":{ @@ -236,7 +308,8 @@ "AdditionalArtifacts":{"shape":"AdditionalArtifactList"}, "RefreshClosedReports":{"shape":"RefreshClosedReports"}, "ReportVersioning":{"shape":"ReportVersioning"}, - "BillingViewArn":{"shape":"BillingViewArn"} + "BillingViewArn":{"shape":"BillingViewArn"}, + "ReportStatus":{"shape":"ReportStatus"} } }, "ReportDefinitionList":{ @@ -262,6 +335,13 @@ "max":256, "pattern":"[0-9A-Za-z!\\-_.*\\'()]+" }, + "ReportStatus":{ + "type":"structure", + "members":{ + "lastDelivery":{"shape":"LastDelivery"}, + "lastStatus":{"shape":"LastStatus"} + } + }, "ReportVersioning":{ "type":"string", "enum":[ @@ -269,6 +349,13 @@ "OVERWRITE_REPORT" ] }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, "S3Bucket":{ "type":"string", "max":256, @@ -283,13 +370,65 @@ "type":"string", "enum":[ "RESOURCES", - "SPLIT_COST_ALLOCATION_DATA" + "SPLIT_COST_ALLOCATION_DATA", + "MANUAL_DISCOUNT_COMPATIBILITY" ] }, "SchemaElementList":{ "type":"list", "member":{"shape":"SchemaElement"} }, + "Tag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"TagKey"}, + "Value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":".*" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ReportName", + "Tags" + ], + "members":{ + "ReportName":{"shape":"ReportName"}, + "Tags":{"shape":"TagList"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0, + "pattern":".*" + }, "TimeUnit":{ "type":"string", "enum":[ @@ -298,6 +437,22 @@ "MONTHLY" ] }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ReportName", + "TagKeys" + ], + "members":{ + "ReportName":{"shape":"ReportName"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, "ValidationException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cur/2017-01-06/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cur/2017-01-06/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cur/2017-01-06/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cur/2017-01-06/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,21 +1,24 @@ { "version": "2.0", - "service": "

The AWS Cost and Usage Report API enables you to programmatically create, query, and delete AWS Cost and Usage report definitions.

AWS Cost and Usage reports track the monthly AWS costs and usage associated with your AWS account. The report contains line items for each unique combination of AWS product, usage type, and operation that your AWS account uses. You can configure the AWS Cost and Usage report to show only the data that you want, using the AWS Cost and Usage API.

Service Endpoint

The AWS Cost and Usage Report API provides the following endpoint:

  • cur.us-east-1.amazonaws.com

", + "service": "

You can use the Amazon Web Services Cost and Usage Report API to programmatically create, query, and delete Amazon Web Services Cost and Usage Report definitions.

Amazon Web Services Cost and Usage Report track the monthly Amazon Web Services costs and usage associated with your Amazon Web Services account. The report contains line items for each unique combination of Amazon Web Services product, usage type, and operation that your Amazon Web Services account uses. You can configure the Amazon Web Services Cost and Usage Report to show only the data that you want, using the Amazon Web Services Cost and Usage Report API.

Service Endpoint

The Amazon Web Services Cost and Usage Report API provides the following endpoint:

  • cur.us-east-1.amazonaws.com

", "operations": { - "DeleteReportDefinition": "

Deletes the specified report.

", - "DescribeReportDefinitions": "

Lists the AWS Cost and Usage reports available to this account.

", - "ModifyReportDefinition": "

Allows you to programatically update your report preferences.

", - "PutReportDefinition": "

Creates a new report using the description that you provide.

" + "DeleteReportDefinition": "

Deletes the specified report. Any tags associated with the report are also deleted.

", + "DescribeReportDefinitions": "

Lists the Amazon Web Services Cost and Usage Report available to this account.

", + "ListTagsForResource": "

Lists the tags associated with the specified report definition.

", + "ModifyReportDefinition": "

Allows you to programmatically update your report preferences.

", + "PutReportDefinition": "

Creates a new report using the description that you provide.

", + "TagResource": "

Associates a set of tags with a report definition.

", + "UntagResource": "

Disassociates a set of tags from a report definition.

" }, "shapes": { "AWSRegion": { - "base": "

The region of the S3 bucket that AWS delivers the report into.

", + "base": "

The region of the S3 bucket that Amazon Web Services delivers the report into.

", "refs": { "ReportDefinition$S3Region": null } }, "AdditionalArtifact": { - "base": "

The types of manifest that you want AWS to create for this report.

", + "base": "

The types of manifest that you want Amazon Web Services to create for this report.

", "refs": { "AdditionalArtifactList$member": null } @@ -29,11 +32,11 @@ "BillingViewArn": { "base": null, "refs": { - "ReportDefinition$BillingViewArn": "

The Amazon resource name of the billing view. You can get this value by using the billing view service public APIs.

" + "ReportDefinition$BillingViewArn": "

The Amazon resource name of the billing view. The BillingViewArn is needed to create Amazon Web Services Cost and Usage Report for each billing group maintained in the Amazon Web Services Billing Conductor service. The BillingViewArn for a billing group can be constructed as: arn:aws:billing::payer-account-id:billingview/billing-group-primary-account-id

" } }, "CompressionFormat": { - "base": "

The compression format that AWS uses for the report.

", + "base": "

The compression format that Amazon Web Services uses for the report.

", "refs": { "ReportDefinition$Compression": null } @@ -55,7 +58,7 @@ } }, "DescribeReportDefinitionsRequest": { - "base": "

Requests a list of AWS Cost and Usage reports owned by the account.

", + "base": "

Requests a Amazon Web Services Cost and Usage Report list owned by the account.

", "refs": { } }, @@ -75,6 +78,7 @@ "DuplicateReportNameException$Message": null, "InternalErrorException$Message": null, "ReportLimitReachedException$Message": null, + "ResourceNotFoundException$Message": null, "ValidationException$Message": null } }, @@ -90,8 +94,30 @@ "refs": { } }, + "LastDelivery": { + "base": null, + "refs": { + "ReportStatus$lastDelivery": "

A timestamp that gives the date of a report delivery.

" + } + }, + "LastStatus": { + "base": null, + "refs": { + "ReportStatus$lastStatus": "

An enum that gives the status of a report delivery.

" + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, "MaxResults": { - "base": "

The maximum number of results that AWS returns for the operation.

", + "base": "

The maximum number of results that Amazon Web Services returns for the operation.

", "refs": { "DescribeReportDefinitionsRequest$MaxResults": null } @@ -123,7 +149,7 @@ } }, "ReportDefinition": { - "base": "

The definition of AWS Cost and Usage Report. You can specify the report name, time unit, report format, compression format, S3 bucket, additional artifacts, and schema elements in the definition.

", + "base": "

The definition of Amazon Web Services Cost and Usage Report. You can specify the report name, time unit, report format, compression format, S3 bucket, additional artifacts, and schema elements in the definition.

", "refs": { "ModifyReportDefinitionRequest$ReportDefinition": null, "PutReportDefinitionRequest$ReportDefinition": "

Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata and data file information.

", @@ -133,11 +159,11 @@ "ReportDefinitionList": { "base": "

A list of report definitions.

", "refs": { - "DescribeReportDefinitionsResponse$ReportDefinitions": "

A list of AWS Cost and Usage reports owned by the account.

" + "DescribeReportDefinitionsResponse$ReportDefinitions": "

An Amazon Web Services Cost and Usage Report list owned by the account.

" } }, "ReportFormat": { - "base": "

The format that AWS saves the report in.

", + "base": "

The format that Amazon Web Services saves the report in.

", "refs": { "ReportDefinition$Format": null } @@ -151,8 +177,17 @@ "base": "

The name of the report that you want to create. The name must be unique, is case sensitive, and can't include spaces.

", "refs": { "DeleteReportDefinitionRequest$ReportName": "

The name of the report that you want to delete. The name must be unique, is case sensitive, and can't include spaces.

", + "ListTagsForResourceRequest$ReportName": "

The report name of the report definition that tags are to be returned for.

", "ModifyReportDefinitionRequest$ReportName": null, - "ReportDefinition$ReportName": null + "ReportDefinition$ReportName": null, + "TagResourceRequest$ReportName": "

The report name of the report definition that tags are to be associated with.

", + "UntagResourceRequest$ReportName": "

The report name of the report definition that tags are to be disassociated from.

" + } + }, + "ReportStatus": { + "base": "

A two element dictionary with a lastDelivery and lastStatus key whose values describe the date and status of the last delivered report for a particular report definition.

", + "refs": { + "ReportDefinition$ReportStatus": "

The status of the report.

" } }, "ReportVersioning": { @@ -161,20 +196,25 @@ "ReportDefinition$ReportVersioning": "

Whether you want Amazon Web Services to overwrite the previous version of each report or to deliver the report in addition to the previous versions.

" } }, + "ResourceNotFoundException": { + "base": "

The specified report (ReportName) in the request doesn't exist.

", + "refs": { + } + }, "S3Bucket": { - "base": "

The S3 bucket where AWS delivers the report.

", + "base": "

The S3 bucket where Amazon Web Services delivers the report.

", "refs": { "ReportDefinition$S3Bucket": null } }, "S3Prefix": { - "base": "

The prefix that AWS adds to the report name when AWS delivers the report. Your prefix can't include spaces.

", + "base": "

The prefix that Amazon Web Services adds to the report name when Amazon Web Services delivers the report. Your prefix can't include spaces.

", "refs": { "ReportDefinition$S3Prefix": null } }, "SchemaElement": { - "base": "

Whether or not AWS includes resource IDs in the report.

", + "base": "

Whether or not Amazon Web Services includes resource IDs in the report.

", "refs": { "SchemaElementList$member": null } @@ -185,14 +225,67 @@ "ReportDefinition$AdditionalSchemaElements": "

A list of strings that indicate additional content that Amazon Web Services includes in the report, such as individual resource IDs.

" } }, + "Tag": { + "base": "

Describes a tag. A tag is a key-value pair. You can add up to 50 tags to a report definition.

", + "refs": { + "TagList$member": null + } + }, + "TagKey": { + "base": null, + "refs": { + "Tag$Key": "

The key of the tag. Tag keys are case sensitive. Each report definition can only have up to one tag with the same key. If you try to add an existing tag with the same key, the existing tag value will be updated to the new value.

", + "TagKeyList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$TagKeys": "

The tags to be disassociated from the report definition resource.

" + } + }, + "TagList": { + "base": null, + "refs": { + "ListTagsForResourceResponse$Tags": "

The tags assigned to the report definition resource.

", + "PutReportDefinitionRequest$Tags": "

The tags to be assigned to the report definition resource.

", + "TagResourceRequest$Tags": "

The tags to be assigned to the report definition resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tag$Value": "

The value of the tag. Tag values are case-sensitive. This can be an empty string.

" + } + }, "TimeUnit": { "base": "

The length of time covered by the report.

", "refs": { "ReportDefinition$TimeUnit": null } }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, "ValidationException": { - "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", "refs": { } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/cur/2017-01-06/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/cur/2017-01-06/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/cur/2017-01-06/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/cur/2017-01-06/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://cur-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://cur-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://cur-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://cur-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://cur.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://cur.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://cur.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://cur.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/customer-profiles/2020-08-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/customer-profiles/2020-08-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/customer-profiles/2020-08-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/customer-profiles/2020-08-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -254,6 +254,22 @@ {"shape":"InternalServerException"} ] }, + "DetectProfileObjectType":{ + "name":"DetectProfileObjectType", + "http":{ + "method":"POST", + "requestUri":"/domains/{DomainName}/detect/object-types" + }, + "input":{"shape":"DetectProfileObjectTypeRequest"}, + "output":{"shape":"DetectProfileObjectTypeResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, "GetAutoMergingPreview":{ "name":"GetAutoMergingPreview", "http":{ @@ -1053,7 +1069,8 @@ }, "CalculatedAttributeDefinitionsList":{ "type":"list", - "member":{"shape":"ListCalculatedAttributeDefinitionItem"} + "member":{"shape":"ListCalculatedAttributeDefinitionItem"}, + "sensitive":true }, "CalculatedAttributesForProfileList":{ "type":"list", @@ -1125,7 +1142,7 @@ "locationName":"CalculatedAttributeName" }, "DisplayName":{"shape":"displayName"}, - "Description":{"shape":"text"}, + "Description":{"shape":"sensitiveText"}, "AttributeDetails":{"shape":"AttributeDetails"}, "Conditions":{"shape":"Conditions"}, "Statistic":{"shape":"Statistic"}, @@ -1137,7 +1154,7 @@ "members":{ "CalculatedAttributeName":{"shape":"typeName"}, "DisplayName":{"shape":"displayName"}, - "Description":{"shape":"text"}, + "Description":{"shape":"sensitiveText"}, "AttributeDetails":{"shape":"AttributeDetails"}, "Conditions":{"shape":"Conditions"}, "Statistic":{"shape":"Statistic"}, @@ -1529,6 +1546,39 @@ "UnhealthySince":{"shape":"timestamp"} } }, + "DetectProfileObjectTypeRequest":{ + "type":"structure", + "required":[ + "Objects", + "DomainName" + ], + "members":{ + "Objects":{"shape":"Objects"}, + "DomainName":{ + "shape":"name", + "location":"uri", + "locationName":"DomainName" + } + } + }, + "DetectProfileObjectTypeResponse":{ + "type":"structure", + "members":{ + "DetectedProfileObjectTypes":{"shape":"DetectedProfileObjectTypes"} + } + }, + "DetectedProfileObjectType":{ + "type":"structure", + "members":{ + "SourceLastUpdatedTimestampFormat":{"shape":"string1To255"}, + "Fields":{"shape":"FieldMap"}, + "Keys":{"shape":"KeyMap"} + } + }, + "DetectedProfileObjectTypes":{ + "type":"list", + "member":{"shape":"DetectedProfileObjectType"} + }, "DomainList":{ "type":"list", "member":{"shape":"ListDomainItem"} @@ -1759,7 +1809,7 @@ "members":{ "CalculatedAttributeName":{"shape":"typeName"}, "DisplayName":{"shape":"displayName"}, - "Description":{"shape":"text"}, + "Description":{"shape":"sensitiveText"}, "CreatedAt":{"shape":"timestamp"}, "LastUpdatedAt":{"shape":"timestamp"}, "Statistic":{"shape":"Statistic"}, @@ -2281,7 +2331,7 @@ "members":{ "CalculatedAttributeName":{"shape":"typeName"}, "DisplayName":{"shape":"displayName"}, - "Description":{"shape":"text"}, + "Description":{"shape":"sensitiveText"}, "CreatedAt":{"shape":"timestamp"}, "LastUpdatedAt":{"shape":"timestamp"}, "Tags":{"shape":"TagMap"} @@ -2896,6 +2946,13 @@ "key":{"shape":"string1To255"}, "value":{"shape":"typeName"} }, + "Objects":{ + "type":"list", + "member":{"shape":"stringifiedJson"}, + "max":5, + "min":1, + "sensitive":true + }, "Operator":{ "type":"string", "enum":[ @@ -3629,7 +3686,7 @@ "locationName":"CalculatedAttributeName" }, "DisplayName":{"shape":"displayName"}, - "Description":{"shape":"text"}, + "Description":{"shape":"sensitiveText"}, "Conditions":{"shape":"Conditions"} } }, @@ -3638,7 +3695,7 @@ "members":{ "CalculatedAttributeName":{"shape":"typeName"}, "DisplayName":{"shape":"displayName"}, - "Description":{"shape":"text"}, + "Description":{"shape":"sensitiveText"}, "CreatedAt":{"shape":"timestamp"}, "LastUpdatedAt":{"shape":"timestamp"}, "Statistic":{"shape":"Statistic"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/customer-profiles/2020-08-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/customer-profiles/2020-08-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/customer-profiles/2020-08-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/customer-profiles/2020-08-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -17,6 +17,7 @@ "DeleteProfileObject": "

Removes an object associated with a profile of a given ProfileObjectType.

", "DeleteProfileObjectType": "

Removes a ProfileObjectType from a specific domain as well as removes all the ProfileObjects of that type. It also disables integrations from this specific ProfileObjectType. In addition, it scrubs all of the fields of the standard profile that were populated from this ProfileObjectType.

", "DeleteWorkflow": "

Deletes the specified workflow and all its corresponding resources. This is an async process.

", + "DetectProfileObjectType": "

The process of detecting profile object type mapping by using given objects.

", "GetAutoMergingPreview": "

Tests the auto-merging settings of your Identity Resolution Job without merging your data. It randomly selects a sample of matching groups from the existing matching results, and applies the automerging settings that you provided. You can then view the number of profiles in the sample, the number of matches, and the number of profiles identified to be merged. This enables you to evaluate the accuracy of the attributes in your matching list.

You can't view which profiles are matched and would be merged.

We strongly recommend you use this API to do a dry run of the automerging process before running the Identity Resolution Job. Include at least two matching attributes. If your matching list includes too few attributes (such as only FirstName or only LastName), there may be a large number of matches. This increases the chances of erroneous merges.

", "GetCalculatedAttributeDefinition": "

Provides more information on a calculated attribute definition for Customer Profiles.

", "GetCalculatedAttributeForProfile": "

Retrieve a calculated attribute for a customer profile.

", @@ -80,6 +81,7 @@ "DeleteProfileObjectTypeRequest$DomainName": "

The unique name of the domain.

", "DeleteProfileRequest$DomainName": "

The unique name of the domain.

", "DeleteWorkflowRequest$DomainName": "

The unique name of the domain.

", + "DetectProfileObjectTypeRequest$DomainName": "

The unique name of the domain.

", "EventStreamSummary$DomainName": "

The unique name of the domain.

", "EventStreamSummary$EventStreamName": "

The name of the event stream.

", "FieldMap$key": null, @@ -517,6 +519,28 @@ "EventStreamSummary$DestinationSummary": "

Summary information about the Kinesis data stream.

" } }, + "DetectProfileObjectTypeRequest": { + "base": null, + "refs": { + } + }, + "DetectProfileObjectTypeResponse": { + "base": null, + "refs": { + } + }, + "DetectedProfileObjectType": { + "base": "

Contains ProfileObjectType mapping information from the model.

", + "refs": { + "DetectedProfileObjectTypes$member": null + } + }, + "DetectedProfileObjectTypes": { + "base": null, + "refs": { + "DetectProfileObjectTypeResponse$DetectedProfileObjectTypes": "

Detected ProfileObjectType mappings from given objects. A maximum of one mapping is supported.

" + } + }, "DomainList": { "base": null, "refs": { @@ -606,6 +630,7 @@ "FieldMap": { "base": null, "refs": { + "DetectedProfileObjectType$Fields": "

A map of the name and the ObjectType field.

", "GetProfileObjectTypeResponse$Fields": "

A map of the name and ObjectType field.

", "GetProfileObjectTypeTemplateResponse$Fields": "

A map of the name and ObjectType field.

", "PutProfileObjectTypeRequest$Fields": "

A map of the name and ObjectType field.

", @@ -860,6 +885,7 @@ "KeyMap": { "base": null, "refs": { + "DetectedProfileObjectType$Keys": "

A list of unique keys that can be used to map data to a profile.

", "GetProfileObjectTypeResponse$Keys": "

A list of unique keys that can be used to map data to the profile.

", "GetProfileObjectTypeTemplateResponse$Keys": "

A list of unique keys that can be used to map data to the profile.

", "PutProfileObjectTypeRequest$Keys": "

A list of unique keys that can be used to map data to the profile.

", @@ -1205,6 +1231,12 @@ "PutIntegrationResponse$ObjectTypeNames": "

A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an ObjectTypeName (template) used to ingest the event. It supports the following event types: SegmentIdentify, ShopifyCreateCustomers, ShopifyUpdateCustomers, ShopifyCreateDraftOrders, ShopifyUpdateDraftOrders, ShopifyCreateOrders, and ShopifyUpdatedOrders.

" } }, + "Objects": { + "base": null, + "refs": { + "DetectProfileObjectTypeRequest$Objects": "

A string that is serialized from a JSON object.

" + } + }, "Operator": { "base": null, "refs": { @@ -1985,9 +2017,15 @@ "sensitiveText": { "base": null, "refs": { + "CreateCalculatedAttributeDefinitionRequest$Description": "

The description of the calculated attribute.

", + "CreateCalculatedAttributeDefinitionResponse$Description": "

The description of the calculated attribute.

", + "GetCalculatedAttributeDefinitionResponse$Description": "

The description of the calculated attribute.

", "GetProfileObjectTypeResponse$Description": "

The description of the profile object type.

", + "ListCalculatedAttributeDefinitionItem$Description": "

The threshold for the calculated attribute.

", "PutProfileObjectTypeRequest$Description": "

Description of the profile object type.

", - "PutProfileObjectTypeResponse$Description": "

Description of the profile object type.

" + "PutProfileObjectTypeResponse$Description": "

Description of the profile object type.

", + "UpdateCalculatedAttributeDefinitionRequest$Description": "

The description of the calculated attribute.

", + "UpdateCalculatedAttributeDefinitionResponse$Description": "

The description of the calculated attribute.

" } }, "sqsQueueUrl": { @@ -2052,6 +2090,7 @@ "DeleteProfileObjectRequest$ProfileObjectUniqueKey": "

The unique identifier of the profile object generated by the service.

", "DeleteWorkflowRequest$WorkflowId": "

Unique identifier for the workflow.

", "DestinationSummary$Uri": "

The StreamARN of the destination to deliver profile events to. For example, arn:aws:kinesis:region:account-id:stream/stream-name.

", + "DetectedProfileObjectType$SourceLastUpdatedTimestampFormat": "

The format of sourceLastUpdatedTimestamp that was detected in fields.

", "EmailList$member": null, "EventStreamDestinationDetails$Uri": "

The StreamARN of the destination to deliver profile events to. For example, arn:aws:kinesis:region:account-id:stream/stream-name.

", "EventStreamSummary$EventStreamArn": "

A unique identifier for the event stream.

", @@ -2104,21 +2143,16 @@ "base": null, "refs": { "ListProfileObjectsItem$Object": "

A JSON representation of a ProfileObject that belongs to a profile.

", + "Objects$member": null, "PutProfileObjectRequest$Object": "

A string that is serialized from a JSON object.

" } }, "text": { "base": null, "refs": { - "CreateCalculatedAttributeDefinitionRequest$Description": "

The description of the calculated attribute.

", - "CreateCalculatedAttributeDefinitionResponse$Description": "

The description of the calculated attribute.

", - "GetCalculatedAttributeDefinitionResponse$Description": "

The description of the calculated attribute.

", - "ListCalculatedAttributeDefinitionItem$Description": "

The threshold for the calculated attribute.

", "ListProfileObjectTypeItem$Description": "

Description of the profile object type.

", "ObjectTypeField$Source": "

A field of a ProfileObject. For example: _source.FirstName, where “_source” is a ProfileObjectType of a Zendesk user and “FirstName” is a field in that ObjectType.

", - "ObjectTypeField$Target": "

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

", - "UpdateCalculatedAttributeDefinitionRequest$Description": "

The description of the calculated attribute.

", - "UpdateCalculatedAttributeDefinitionResponse$Description": "

The description of the calculated attribute.

" + "ObjectTypeField$Target": "

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

" } }, "timestamp": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/customer-profiles/2020-08-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/customer-profiles/2020-08-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/customer-profiles/2020-08-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/customer-profiles/2020-08-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -369,6 +369,24 @@ ], "endpoint":{"hostPrefix":"api-fulfill."} }, + "SendDataSetNotification":{ + "name":"SendDataSetNotification", + "http":{ + "method":"POST", + "requestUri":"/v1/data-sets/{DataSetId}/notification", + "responseCode":202 + }, + "input":{"shape":"SendDataSetNotificationRequest"}, + "output":{"shape":"SendDataSetNotificationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "StartJob":{ "name":"StartJob", "http":{ @@ -615,6 +633,12 @@ } } }, + "ClientToken":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[\\x21-\\x7E]{1,64}" + }, "Code":{ "type":"string", "enum":[ @@ -798,6 +822,12 @@ "UpdatedAt":{"shape":"Timestamp"} } }, + "DataUpdateRequestDetails":{ + "type":"structure", + "members":{ + "DataUpdatedAt":{"shape":"Timestamp"} + } + }, "DatabaseLFTagPolicy":{ "type":"structure", "required":["Expression"], @@ -886,6 +916,13 @@ } } }, + "DeprecationRequestDetails":{ + "type":"structure", + "required":["DeprecationAt"], + "members":{ + "DeprecationAt":{"shape":"Timestamp"} + } + }, "Description":{"type":"string"}, "Details":{ "type":"structure", @@ -1486,6 +1523,13 @@ "type":"string", "enum":["LFTagPolicy"] }, + "LakeFormationTagPolicyDetails":{ + "type":"structure", + "members":{ + "Database":{"shape":"__string"}, + "Table":{"shape":"__string"} + } + }, "LimitName":{ "type":"string", "enum":[ @@ -1683,10 +1727,18 @@ "type":"list", "member":{"shape":"LFTag"} }, + "ListOfLakeFormationTagPolicies":{ + "type":"list", + "member":{"shape":"LakeFormationTagPolicyDetails"} + }, "ListOfRedshiftDataShareAssetSourceEntry":{ "type":"list", "member":{"shape":"RedshiftDataShareAssetSourceEntry"} }, + "ListOfRedshiftDataShares":{ + "type":"list", + "member":{"shape":"RedshiftDataShareDetails"} + }, "ListOfRevisionDestinationEntry":{ "type":"list", "member":{"shape":"RevisionDestinationEntry"} @@ -1695,6 +1747,14 @@ "type":"list", "member":{"shape":"RevisionEntry"} }, + "ListOfS3DataAccesses":{ + "type":"list", + "member":{"shape":"S3DataAccessDetails"} + }, + "ListOfSchemaChangeDetails":{ + "type":"list", + "member":{"shape":"SchemaChangeDetails"} + }, "ListOfTableTagPolicyLFPermissions":{ "type":"list", "member":{"shape":"TableTagPolicyLFPermission"} @@ -1771,6 +1831,23 @@ }, "Name":{"type":"string"}, "NextToken":{"type":"string"}, + "NotificationDetails":{ + "type":"structure", + "members":{ + "DataUpdate":{"shape":"DataUpdateRequestDetails"}, + "Deprecation":{"shape":"DeprecationRequestDetails"}, + "SchemaChange":{"shape":"SchemaChangeRequestDetails"} + } + }, + "NotificationType":{ + "type":"string", + "enum":[ + "DATA_DELAY", + "DATA_UPDATE", + "DEPRECATION", + "SCHEMA_CHANGE" + ] + }, "Origin":{ "type":"string", "enum":[ @@ -1780,7 +1857,6 @@ }, "OriginDetails":{ "type":"structure", - "required":["ProductId"], "members":{ "ProductId":{"shape":"__string"} } @@ -1803,6 +1879,21 @@ "DataShareArn":{"shape":"__string"} } }, + "RedshiftDataShareDetails":{ + "type":"structure", + "required":[ + "Arn", + "Database" + ], + "members":{ + "Arn":{"shape":"__string"}, + "Database":{"shape":"__string"}, + "Function":{"shape":"__string"}, + "Table":{"shape":"__string"}, + "Schema":{"shape":"__string"}, + "View":{"shape":"__string"} + } + }, "RequestDetails":{ "type":"structure", "members":{ @@ -1960,6 +2051,13 @@ "KmsKeysToGrant":{"shape":"ListOfKmsKeysToGrant"} } }, + "S3DataAccessDetails":{ + "type":"structure", + "members":{ + "KeyPrefixes":{"shape":"ListOf__string"}, + "Keys":{"shape":"ListOf__string"} + } + }, "S3SnapshotAsset":{ "type":"structure", "required":["Size"], @@ -1967,6 +2065,42 @@ "Size":{"shape":"__doubleMin0"} } }, + "SchemaChangeDetails":{ + "type":"structure", + "required":[ + "Name", + "Type" + ], + "members":{ + "Name":{"shape":"__string"}, + "Type":{"shape":"SchemaChangeType"}, + "Description":{"shape":"__string"} + } + }, + "SchemaChangeRequestDetails":{ + "type":"structure", + "required":["SchemaChangeAt"], + "members":{ + "Changes":{"shape":"ListOfSchemaChangeDetails"}, + "SchemaChangeAt":{"shape":"Timestamp"} + } + }, + "SchemaChangeType":{ + "type":"string", + "enum":[ + "ADD", + "REMOVE", + "MODIFY" + ] + }, + "ScopeDetails":{ + "type":"structure", + "members":{ + "LakeFormationTagPolicies":{"shape":"ListOfLakeFormationTagPolicies"}, + "RedshiftDataShares":{"shape":"ListOfRedshiftDataShares"}, + "S3DataAccesses":{"shape":"ListOfS3DataAccesses"} + } + }, "SendApiAssetRequest":{ "type":"structure", "required":[ @@ -2025,6 +2159,33 @@ }, "payload":"Body" }, + "SendDataSetNotificationRequest":{ + "type":"structure", + "required":[ + "DataSetId", + "Type" + ], + "members":{ + "Scope":{"shape":"ScopeDetails"}, + "ClientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "Comment":{"shape":"__stringMin0Max4096"}, + "DataSetId":{ + "shape":"__string", + "location":"uri", + "locationName":"DataSetId" + }, + "Details":{"shape":"NotificationDetails"}, + "Type":{"shape":"NotificationType"} + } + }, + "SendDataSetNotificationResponse":{ + "type":"structure", + "members":{ + } + }, "ServerSideEncryptionTypes":{ "type":"string", "enum":[ @@ -2318,6 +2479,11 @@ "max":16384, "min":0 }, + "__stringMin0Max4096":{ + "type":"string", + "max":4096, + "min":0 + }, "__stringMin10Max512":{ "type":"string", "max":512, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -24,6 +24,7 @@ "ListTagsForResource": "

This operation lists the tags on the resource.

", "RevokeRevision": "

This operation revokes subscribers' access to a revision.

", "SendApiAsset": "

This operation invokes an API Gateway API asset. The request is proxied to the provider’s API Gateway API.

", + "SendDataSetNotification": "

The type of event associated with the data set.

", "StartJob": "

This operation starts a job.

", "TagResource": "

This operation tags a resource.

", "UntagResource": "

This operation removes one or more tags from a resource.

", @@ -163,6 +164,12 @@ "refs": { } }, + "ClientToken": { + "base": null, + "refs": { + "SendDataSetNotificationRequest$ClientToken": "

Idempotency key for the notification, this key allows us to deduplicate notifications that are sent in quick succession erroneously.

" + } + }, "Code": { "base": null, "refs": { @@ -232,6 +239,12 @@ "ListOfDataSetEntry$member": null } }, + "DataUpdateRequestDetails": { + "base": "

Extra details specific to a data update type notification.

", + "refs": { + "NotificationDetails$DataUpdate": "

Extra details specific to a data update type notification.

" + } + }, "DatabaseLFTagPolicy": { "base": "

The LF-tag policy for database resources.

", "refs": { @@ -271,6 +284,12 @@ "refs": { } }, + "DeprecationRequestDetails": { + "base": "

Extra details specific to a deprecation type notification.

", + "refs": { + "NotificationDetails$Deprecation": "

Extra details specific to a deprecation type notification.

" + } + }, "Description": { "base": null, "refs": { @@ -647,6 +666,12 @@ "LakeFormationDataPermissionAsset$LakeFormationDataPermissionType": "

The data permission type.

" } }, + "LakeFormationTagPolicyDetails": { + "base": "

Extra details specific to the affected scope in this LF data set.

", + "refs": { + "ListOfLakeFormationTagPolicies$member": null + } + }, "LimitName": { "base": null, "refs": { @@ -774,6 +799,12 @@ "TableLFTagPolicyAndPermissions$Expression": "

A list of LF-tag conditions that apply to table resources.

" } }, + "ListOfLakeFormationTagPolicies": { + "base": null, + "refs": { + "ScopeDetails$LakeFormationTagPolicies": "

Underlying LF resources that will be affected by this notification.

" + } + }, "ListOfRedshiftDataShareAssetSourceEntry": { "base": null, "refs": { @@ -781,6 +812,12 @@ "ImportAssetsFromRedshiftDataSharesResponseDetails$AssetSources": "

A list of Amazon Redshift datashare asset sources.

" } }, + "ListOfRedshiftDataShares": { + "base": null, + "refs": { + "ScopeDetails$RedshiftDataShares": "

Underlying Redshift resources that will be affected by this notification.

" + } + }, "ListOfRevisionDestinationEntry": { "base": null, "refs": { @@ -794,6 +831,18 @@ "ListDataSetRevisionsResponse$Revisions": "

The asset objects listed by the request.

" } }, + "ListOfS3DataAccesses": { + "base": null, + "refs": { + "ScopeDetails$S3DataAccesses": "

Underlying S3 resources that will be affected by this notification.

" + } + }, + "ListOfSchemaChangeDetails": { + "base": null, + "refs": { + "SchemaChangeRequestDetails$Changes": "

List of schema changes happening in the scope of this notification. This can have up to 100 entries.

" + } + }, "ListOfTableTagPolicyLFPermissions": { "base": null, "refs": { @@ -807,6 +856,8 @@ "S3DataAccessAsset$Keys": "

S3 keys made available using this asset.

", "S3DataAccessAssetSourceEntry$KeyPrefixes": "

Organizes Amazon S3 asset key prefixes stored in an Amazon S3 bucket.

", "S3DataAccessAssetSourceEntry$Keys": "

The keys used to create the Amazon S3 data access.

", + "S3DataAccessDetails$KeyPrefixes": "

A list of the key prefixes affected by this notification. This can have up to 50 entries.

", + "S3DataAccessDetails$Keys": "

A list of the keys affected by this notification. This can have up to 50 entries.

", "UntagResourceRequest$TagKeys": "

The key tags.

" } }, @@ -877,6 +928,18 @@ "ListRevisionAssetsResponse$NextToken": "

The token value retrieved from a previous call to access the next page of results.

" } }, + "NotificationDetails": { + "base": "

Extra details specific to this notification.

", + "refs": { + "SendDataSetNotificationRequest$Details": "

Extra details specific to this notification type.

" + } + }, + "NotificationType": { + "base": null, + "refs": { + "SendDataSetNotificationRequest$Type": "

The type of the notification. Describing the kind of event the notification is alerting you to.

" + } + }, "Origin": { "base": null, "refs": { @@ -915,6 +978,12 @@ "ListOfRedshiftDataShareAssetSourceEntry$member": null } }, + "RedshiftDataShareDetails": { + "base": "

Extra details specific to the affected scope in this Redshift data set.

", + "refs": { + "ListOfRedshiftDataShares$member": null + } + }, "RequestDetails": { "base": "

The details for the request.

", "refs": { @@ -990,12 +1059,42 @@ "CreateS3DataAccessFromS3BucketResponseDetails$AssetSource": "

Details about the asset source from an Amazon S3 bucket.

" } }, + "S3DataAccessDetails": { + "base": "

Extra details specific to the affected scope in this S3 Data Access data set.

", + "refs": { + "ListOfS3DataAccesses$member": null + } + }, "S3SnapshotAsset": { "base": "

The Amazon S3 object that is the asset.

", "refs": { "AssetDetails$S3SnapshotAsset": "

The Amazon S3 object that is the asset.

" } }, + "SchemaChangeDetails": { + "base": "

Object encompassing information about a schema change to a single, particular field, a notification can have up to 100 of these.

", + "refs": { + "ListOfSchemaChangeDetails$member": null + } + }, + "SchemaChangeRequestDetails": { + "base": "

Extra details specific to this schema change type notification.

", + "refs": { + "NotificationDetails$SchemaChange": "

Extra details specific to a schema change type notification.

" + } + }, + "SchemaChangeType": { + "base": null, + "refs": { + "SchemaChangeDetails$Type": "

Is the field being added, removed, or modified?

" + } + }, + "ScopeDetails": { + "base": "

Details about the scope of the notifications such as the affected resources.

", + "refs": { + "SendDataSetNotificationRequest$Scope": "

Affected scope of this notification such as the underlying resources affected by the notification event.

" + } + }, "SendApiAssetRequest": { "base": null, "refs": { @@ -1006,6 +1105,16 @@ "refs": { } }, + "SendDataSetNotificationRequest": { + "base": null, + "refs": { + } + }, + "SendDataSetNotificationResponse": { + "base": null, + "refs": { + } + }, "ServerSideEncryptionTypes": { "base": null, "refs": { @@ -1088,6 +1197,8 @@ "CreateRevisionResponse$RevokedAt": "

The date and time that the revision was revoked, in ISO 8601 format.

", "DataSetEntry$CreatedAt": "

The date and time that the data set was created, in ISO 8601 format.

", "DataSetEntry$UpdatedAt": "

The date and time that the data set was last updated, in ISO 8601 format.

", + "DataUpdateRequestDetails$DataUpdatedAt": "

A datetime in the past when the data was updated. This typically means that the underlying resource supporting the data set was updated.

", + "DeprecationRequestDetails$DeprecationAt": "

A datetime in the future when the data set will be deprecated.

", "EventActionEntry$CreatedAt": "

The date and time that the event action was created, in ISO 8601 format.

", "EventActionEntry$UpdatedAt": "

The date and time that the event action was last updated, in ISO 8601 format.

", "ExportAssetToSignedUrlResponseDetails$SignedUrlExpiresAt": "

The date and time that the signed URL expires, in ISO 8601 format.

", @@ -1112,6 +1223,7 @@ "RevokeRevisionResponse$CreatedAt": "

The date and time that the revision was created, in ISO 8601 format.

", "RevokeRevisionResponse$UpdatedAt": "

The date and time that the revision was last updated, in ISO 8601 format.

", "RevokeRevisionResponse$RevokedAt": "

The date and time that the revision was revoked, in ISO 8601 format.

", + "SchemaChangeRequestDetails$SchemaChangeAt": "

A date in the future when the schema change is taking effect.

", "UpdateAssetResponse$CreatedAt": "

The date and time that the asset was created, in ISO 8601 format.

", "UpdateAssetResponse$UpdatedAt": "

The date and time that the asset was last updated, in ISO 8601 format.

", "UpdateDataSetResponse$CreatedAt": "

The date and time that the data set was created, in ISO 8601 format.

", @@ -1262,6 +1374,8 @@ "InternalServerException$Message": "

The message identifying the service exception that occurred.

", "JobError$Message": "

The message related to the job error.

", "JobError$ResourceId": "

The unique identifier for the resource related to the error.

", + "LakeFormationTagPolicyDetails$Database": "

The underlying Glue database that the notification is referring to.

", + "LakeFormationTagPolicyDetails$Table": "

The underlying Glue table that the notification is referring to.

", "ListDataSetRevisionsRequest$DataSetId": "

The unique identifier for a data set.

", "ListDataSetRevisionsRequest$NextToken": "

The token value retrieved from a previous call to access the next page of results.

", "ListDataSetsRequest$NextToken": "

The token value retrieved from a previous call to access the next page of results.

", @@ -1281,6 +1395,12 @@ "OriginDetails$ProductId": "

The product ID of the origin of the data set.

", "RedshiftDataShareAsset$Arn": "

The Amazon Resource Name (ARN) of the datashare asset.

", "RedshiftDataShareAssetSourceEntry$DataShareArn": "

The Amazon Resource Name (ARN) of the datashare asset.

", + "RedshiftDataShareDetails$Arn": "

The ARN of the underlying Redshift data share that is being affected by this notification.

", + "RedshiftDataShareDetails$Database": "

The database name in the Redshift data share that is being affected by this notification.

", + "RedshiftDataShareDetails$Function": "

A function name in the Redshift database that is being affected by this notification.

", + "RedshiftDataShareDetails$Table": "

A table name in the Redshift database that is being affected by this notification.

", + "RedshiftDataShareDetails$Schema": "

A schema name in the Redshift database that is being affected by this notification.

", + "RedshiftDataShareDetails$View": "

A view name in the Redshift database that is being affected by this notification.

", "ResourceNotFoundException$Message": "

The resource couldn't be found.

", "ResourceNotFoundException$ResourceId": "

The unique identifier for the resource that couldn't be found.

", "RevisionDestinationEntry$Bucket": "

The Amazon S3 bucket that is the destination for the assets in the revision.

", @@ -1291,6 +1411,8 @@ "S3DataAccessAsset$S3AccessPointAlias": "

The automatically-generated bucket-style alias for your Amazon S3 Access Point. Customers can access their entitled data using the S3 Access Point alias.

", "S3DataAccessAsset$S3AccessPointArn": "

The ARN for your Amazon S3 Access Point. Customers can also access their entitled data using the S3 Access Point ARN.

", "S3DataAccessAssetSourceEntry$Bucket": "

The Amazon S3 bucket used for hosting shared data in the Amazon S3 data access.

", + "SchemaChangeDetails$Name": "

Name of the changing field. This value can be up to 255 characters long.

", + "SchemaChangeDetails$Description": "

Description of what's changing about this field. This value can be up to 512 characters long.

", "SendApiAssetRequest$Body": "

The request body.

", "SendApiAssetRequest$AssetId": "

Asset ID value for the API request.

", "SendApiAssetRequest$DataSetId": "

Data set ID value for the API request.

", @@ -1298,6 +1420,7 @@ "SendApiAssetRequest$Path": "

URI path value for the API request. Alternatively, you can set the URI path directly by invoking /v1/{pathValue}.

", "SendApiAssetRequest$RevisionId": "

Revision ID value for the API request.

", "SendApiAssetResponse$Body": "

The response body from the underlying API tracked by the API asset.

", + "SendDataSetNotificationRequest$DataSetId": "

Affected data set of the notification.

", "ServiceLimitExceededException$Message": "

The request has exceeded the quotas imposed by the service.

", "StartJobRequest$JobId": "

The unique identifier for a job.

", "TagResourceRequest$ResourceArn": "

An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.

", @@ -1325,6 +1448,12 @@ "UpdateRevisionResponse$Comment": "

An optional comment about the revision.

" } }, + "__stringMin0Max4096": { + "base": null, + "refs": { + "SendDataSetNotificationRequest$Comment": "

Free-form text field for providers to add information about their notifications.

" + } + }, "__stringMin10Max512": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://dataexchange-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://dataexchange-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://dataexchange-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://dataexchange-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://dataexchange.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://dataexchange.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://dataexchange.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://dataexchange.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dataexchange/2017-07-25/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dataexchange/2017-07-25/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,8 +9,8 @@ }, "params": { "Region": "ap-northeast-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -22,8 +22,8 @@ }, "params": { "Region": "ap-northeast-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -35,8 +35,8 @@ }, "params": { "Region": "ap-southeast-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -48,8 +48,8 @@ }, "params": { "Region": "ap-southeast-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -61,8 +61,8 @@ }, "params": { "Region": "eu-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -74,8 +74,8 @@ }, "params": { "Region": "eu-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -87,8 +87,8 @@ }, "params": { "Region": "eu-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -100,8 +100,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -113,8 +113,8 @@ }, "params": { "Region": "us-east-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -126,8 +126,8 @@ }, "params": { "Region": "us-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -139,8 +139,8 @@ }, "params": { "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -152,8 +152,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -165,8 +165,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -178,8 +178,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -191,8 +191,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -204,8 +204,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -217,8 +217,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -230,8 +230,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -243,8 +243,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -256,8 +256,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -269,8 +269,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -282,8 +282,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -293,8 +293,8 @@ }, "params": { "Region": "us-iso-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -306,8 +306,8 @@ }, "params": { "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -317,8 +317,8 @@ }, "params": { "Region": "us-iso-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -330,8 +330,8 @@ }, "params": { "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -341,8 +341,8 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -354,8 +354,8 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -365,8 +365,8 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -378,8 +378,8 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -391,8 +391,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -404,8 +404,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -416,8 +416,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -428,8 +428,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datasync/2018-11-09/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datasync/2018-11-09/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datasync/2018-11-09/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datasync/2018-11-09/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -864,7 +864,8 @@ "members":{ "AgentArn":{"shape":"AgentArn"}, "Name":{"shape":"TagValue"}, - "Status":{"shape":"AgentStatus"} + "Status":{"shape":"AgentStatus"}, + "Platform":{"shape":"Platform"} } }, "AgentStatus":{ @@ -874,6 +875,12 @@ "OFFLINE" ] }, + "AgentVersion":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9\\s+=._:@/-]+$" + }, "Atime":{ "type":"string", "enum":[ @@ -1311,7 +1318,8 @@ "LastConnectionTime":{"shape":"Time"}, "CreationTime":{"shape":"Time"}, "EndpointType":{"shape":"EndpointType"}, - "PrivateLinkConfig":{"shape":"PrivateLinkConfig"} + "PrivateLinkConfig":{"shape":"PrivateLinkConfig"}, + "Platform":{"shape":"Platform"} } }, "DescribeDiscoveryJobRequest":{ @@ -2396,8 +2404,8 @@ "ObjectStorageAccessKey":{ "type":"string", "max":200, - "min":1, - "pattern":"^.+$" + "min":0, + "pattern":"^.*$" }, "ObjectStorageBucketName":{ "type":"string", @@ -2412,8 +2420,8 @@ "ObjectStorageSecretKey":{ "type":"string", "max":200, - "min":1, - "pattern":"^.+$", + "min":0, + "pattern":"^.*$", "sensitive":true }, "ObjectStorageServerPort":{ @@ -2526,6 +2534,12 @@ "ERROR" ] }, + "Platform":{ + "type":"structure", + "members":{ + "Version":{"shape":"AgentVersion"} + } + }, "PosixPermissions":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datasync/2018-11-09/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datasync/2018-11-09/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datasync/2018-11-09/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datasync/2018-11-09/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,19 +8,19 @@ "CreateLocationAzureBlob": "

Creates an endpoint for a Microsoft Azure Blob Storage container that DataSync can use as a transfer source or destination.

Before you begin, make sure you know how DataSync accesses Azure Blob Storage and works with access tiers and blob types. You also need a DataSync agent that can connect to your container.

", "CreateLocationEfs": "

Creates an endpoint for an Amazon EFS file system that DataSync can access for a transfer. For more information, see Creating a location for Amazon EFS.

", "CreateLocationFsxLustre": "

Creates an endpoint for an Amazon FSx for Lustre file system.

", - "CreateLocationFsxOntap": "

Creates an endpoint for an Amazon FSx for NetApp ONTAP file system that DataSync can access for a transfer. For more information, see Creating a location for FSx for ONTAP.

", + "CreateLocationFsxOntap": "

Creates an endpoint for an Amazon FSx for NetApp ONTAP file system that DataSync can use for a data transfer.

Before you begin, make sure that you understand how DataSync accesses an FSx for ONTAP file system.

", "CreateLocationFsxOpenZfs": "

Creates an endpoint for an Amazon FSx for OpenZFS file system that DataSync can access for a transfer. For more information, see Creating a location for FSx for OpenZFS.

Request parameters related to SMB aren't supported with the CreateLocationFsxOpenZfs operation.

", - "CreateLocationFsxWindows": "

Creates an endpoint for an Amazon FSx for Windows File Server file system.

", + "CreateLocationFsxWindows": "

Creates an endpoint for an Amazon FSx for Windows File Server file system that DataSync can use for a data transfer.

Before you begin, make sure that you understand how DataSync accesses an FSx for Windows File Server.

", "CreateLocationHdfs": "

Creates an endpoint for a Hadoop Distributed File System (HDFS).

", "CreateLocationNfs": "

Creates an endpoint for a Network File System (NFS) file server that DataSync can use for a data transfer.

For more information, see Configuring transfers to or from an NFS file server.

If you're copying data to or from an Snowcone device, you can also use CreateLocationNfs to create your transfer location. For more information, see Configuring transfers with Snowcone.

", "CreateLocationObjectStorage": "

Creates an endpoint for an object storage system that DataSync can access for a transfer. For more information, see Creating a location for object storage.

", "CreateLocationS3": "

A location is an endpoint for an Amazon S3 bucket. DataSync can use the location as a source or destination for copying data.

Before you create your location, make sure that you read the following sections:

For more information, see Creating an Amazon S3 location.

", "CreateLocationSmb": "

Creates an endpoint for a Server Message Block (SMB) file server that DataSync can use for a data transfer.

Before you begin, make sure that you understand how DataSync accesses an SMB file server.

", "CreateTask": "

Configures a transfer task, which defines where and how DataSync moves your data.

A task includes a source location, destination location, and the options for how and when you want to transfer your data (such as bandwidth limits, scheduling, among other options).

If you're planning to transfer data to or from an Amazon S3 location, review how DataSync can affect your S3 request charges and the DataSync pricing page before you begin.

", - "DeleteAgent": "

Deletes an agent. To specify which agent to delete, use the Amazon Resource Name (ARN) of the agent in your request. The operation disassociates the agent from your Amazon Web Services account. However, it doesn't delete the agent virtual machine (VM) from your on-premises environment.

", + "DeleteAgent": "

Removes an DataSync agent resource from your Amazon Web Services account.

Keep in mind that this operation (which can't be undone) doesn't remove the agent's virtual machine (VM) or Amazon EC2 instance from your storage environment. For next steps, you can delete the VM or instance from your storage environment or reuse it to activate a new agent.

", "DeleteLocation": "

Deletes the configuration of a location used by DataSync.

", "DeleteTask": "

Deletes an DataSync transfer task.

", - "DescribeAgent": "

Returns metadata about an DataSync agent, such as its name, endpoint type, and status.

", + "DescribeAgent": "

Returns information about an DataSync agent, such as its name, service endpoint type, and status.

", "DescribeDiscoveryJob": "

Returns information about a DataSync discovery job.

", "DescribeLocationAzureBlob": "

Provides details about how an DataSync transfer location for Microsoft Azure Blob Storage is configured.

", "DescribeLocationEfs": "

Returns metadata about your DataSync location for an Amazon EFS file system.

", @@ -52,13 +52,13 @@ "StopDiscoveryJob": "

Stops a running DataSync discovery job.

You can stop a discovery job anytime. A job that's stopped before it's scheduled to end likely will provide you some information about your on-premises storage system resources. To get recommendations for a stopped job, you must use the GenerateRecommendations operation.

", "TagResource": "

Applies a tag to an Amazon Web Services resource. Tags are key-value pairs that can help you manage, filter, and search for your resources.

These include DataSync resources, such as locations, tasks, and task executions.

", "UntagResource": "

Removes tags from an Amazon Web Services resource.

", - "UpdateAgent": "

Updates the name of an agent.

", + "UpdateAgent": "

Updates the name of an DataSync agent.

", "UpdateDiscoveryJob": "

Edits a DataSync discovery job configuration.

", "UpdateLocationAzureBlob": "

Modifies some configurations of the Microsoft Azure Blob Storage transfer location that you're using with DataSync.

", "UpdateLocationHdfs": "

Updates some parameters of a previously created location for a Hadoop Distributed File System cluster.

", "UpdateLocationNfs": "

Modifies some configurations of the Network File System (NFS) transfer location that you're using with DataSync.

For more information, see Configuring transfers to or from an NFS file server.

", "UpdateLocationObjectStorage": "

Updates some parameters of an existing object storage location that DataSync accesses for a transfer. For information about creating a self-managed object storage location, see Creating a location for object storage.

", - "UpdateLocationSmb": "

Updates some of the parameters of a previously created location for Server Message Block (SMB) file system access. For information about creating an SMB location, see Creating a location for SMB.

", + "UpdateLocationSmb": "

Updates some of the parameters of a Server Message Block (SMB) file server location that you can use for DataSync transfers.

", "UpdateStorageSystem": "

Modifies some configurations of an on-premises storage system resource that you're using with DataSync Discovery.

", "UpdateTask": "

Updates the configuration of a DataSync transfer task.

", "UpdateTaskExecution": "

Updates the configuration of a running DataSync task execution.

Currently, the only Option that you can modify with UpdateTaskExecution is BytesPerSecond , which throttles bandwidth for a running or queued task execution.

" @@ -87,7 +87,7 @@ "AgentListEntry$AgentArn": "

The Amazon Resource Name (ARN) of a DataSync agent.

", "CreateAgentResponse$AgentArn": "

The ARN of the agent that you just activated. Use the ListAgents operation to return a list of agents in your Amazon Web Services account and Amazon Web Services Region.

", "DeleteAgentRequest$AgentArn": "

The Amazon Resource Name (ARN) of the agent to delete. Use the ListAgents operation to return a list of agents for your account and Amazon Web Services Region.

", - "DescribeAgentRequest$AgentArn": "

Specifies the Amazon Resource Name (ARN) of the DataSync agent to describe.

", + "DescribeAgentRequest$AgentArn": "

Specifies the Amazon Resource Name (ARN) of the DataSync agent that you want information about.

", "DescribeAgentResponse$AgentArn": "

The ARN of the agent.

", "DiscoveryAgentArnList$member": null, "UpdateAgentRequest$AgentArn": "

The Amazon Resource Name (ARN) of the agent to update.

" @@ -110,7 +110,7 @@ "UpdateLocationAzureBlobRequest$AgentArns": "

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can connect with your Azure Blob Storage container.

You can specify more than one agent. For more information, see Using multiple agents for your transfer.

", "UpdateLocationHdfsRequest$AgentArns": "

The ARNs of the agents that are used to connect to the HDFS cluster.

", "UpdateLocationObjectStorageRequest$AgentArns": "

Specifies the Amazon Resource Names (ARNs) of the DataSync agents that can securely connect with your location.

", - "UpdateLocationSmbRequest$AgentArns": "

The Amazon Resource Names (ARNs) of agents to use for a Simple Message Block (SMB) location.

" + "UpdateLocationSmbRequest$AgentArns": "

Specifies the DataSync agent (or agents) which you want to connect to your SMB file server. You specify an agent by using its Amazon Resource Name (ARN).

" } }, "AgentList": { @@ -128,8 +128,14 @@ "AgentStatus": { "base": null, "refs": { - "AgentListEntry$Status": "

The status of an agent. For more information, see DataSync agent statuses.

", - "DescribeAgentResponse$Status": "

The status of the agent. If the status is ONLINE, then the agent is configured properly and is available to use. The Running status is the normal running status for an agent. If the status is OFFLINE, the agent's VM is turned off or the agent is in an unhealthy state. When the issue that caused the unhealthy state is resolved, the agent returns to ONLINE status.

" + "AgentListEntry$Status": "

The status of an agent.

  • If the status is ONLINE, the agent is configured properly and ready to use.

  • If the status is OFFLINE, the agent has been out of contact with DataSync for five minutes or longer. This can happen for a few reasons. For more information, see What do I do if my agent is offline?

", + "DescribeAgentResponse$Status": "

The status of the agent.

  • If the status is ONLINE, the agent is configured properly and ready to use.

  • If the status is OFFLINE, the agent has been out of contact with DataSync for five minutes or longer. This can happen for a few reasons. For more information, see What do I do if my agent is offline?

" + } + }, + "AgentVersion": { + "base": null, + "refs": { + "Platform$Version": "

The version of the DataSync agent.

Beginning December 7, 2023, we will discontinue version 1 DataSync agents. Check the DataSync console to see if you have affected agents. If you do, replace those agents before then to avoid data transfer or storage discovery disruptions. If you need more help, contact Amazon Web Services Support.

" } }, "Atime": { @@ -770,7 +776,7 @@ "EndpointType": { "base": null, "refs": { - "DescribeAgentResponse$EndpointType": "

The type of endpoint that your agent is connected to. If the endpoint is a VPC endpoint, the agent is not accessible over the public internet.

" + "DescribeAgentResponse$EndpointType": "

The type of service endpoint that your agent is connected to.

" } }, "ErrorMessage": { @@ -989,7 +995,7 @@ "refs": { "CreateLocationEfsRequest$FileSystemAccessRoleArn": "

Specifies an Identity and Access Management (IAM) role that DataSync assumes when mounting the Amazon EFS file system.

", "DescribeLocationEfsResponse$FileSystemAccessRoleArn": "

The Identity and Access Management (IAM) role that DataSync assumes when mounting the Amazon EFS file system.

", - "ReportDestinationS3$BucketAccessRoleArn": "

Specifies the Amazon Resource Name (ARN) of the IAM policy that allows DataSync to upload a task report to your S3 bucket. For more information, see Allowing DataSync to upload a task report to an Amazon S3 bucket.

", + "ReportDestinationS3$BucketAccessRoleArn": "

Specifies the Amazon Resource Name (ARN) of the IAM policy that allows DataSync to upload a task report to your S3 bucket. For more information, see Allowing DataSync to upload a task report to an Amazon S3 bucket.

", "S3Config$BucketAccessRoleArn": "

The ARN of the IAM role for accessing the S3 bucket.

" } }, @@ -1177,7 +1183,7 @@ "UpdateLocationHdfsRequest$LocationArn": "

The Amazon Resource Name (ARN) of the source HDFS cluster location.

", "UpdateLocationNfsRequest$LocationArn": "

Specifies the Amazon Resource Name (ARN) of the NFS transfer location that you want to update.

", "UpdateLocationObjectStorageRequest$LocationArn": "

Specifies the ARN of the object storage system location that you're updating.

", - "UpdateLocationSmbRequest$LocationArn": "

The Amazon Resource Name (ARN) of the SMB location to update.

" + "UpdateLocationSmbRequest$LocationArn": "

Specifies the ARN of the SMB location that you want to update.

" } }, "LocationFilter": { @@ -1543,6 +1549,13 @@ "TaskExecutionResultDetail$VerifyStatus": "

The status of the VERIFYING phase.

" } }, + "Platform": { + "base": "

The platform-related details about the DataSync agent, such as the version number.

", + "refs": { + "AgentListEntry$Platform": "

The platform-related details about the agent, such as the version number.

", + "DescribeAgentResponse$Platform": "

The platform-related details about the agent, such as the version number.

" + } + }, "PosixPermissions": { "base": null, "refs": { @@ -1562,9 +1575,9 @@ } }, "PrivateLinkConfig": { - "base": "

Specifies how your DataSync agent connects to Amazon Web Services using a virtual private cloud (VPC) service endpoint. An agent that uses a VPC endpoint isn't accessible over the public internet.

", + "base": "

Specifies how your DataSync agent connects to Amazon Web Services using a virtual private cloud (VPC) service endpoint. An agent that uses a VPC endpoint isn't accessible over the public internet.

", "refs": { - "DescribeAgentResponse$PrivateLinkConfig": "

The subnet and the security group that DataSync used to access a VPC endpoint.

" + "DescribeAgentResponse$PrivateLinkConfig": "

The network configuration that the agent uses when connecting to a VPC service endpoint.

" } }, "PtolemyBoolean": { @@ -1660,13 +1673,13 @@ } }, "ReportDestination": { - "base": "

Specifies where DataSync uploads your task report.

", + "base": "

Specifies where DataSync uploads your task report.

", "refs": { - "TaskReportConfig$Destination": "

Specifies the Amazon S3 bucket where DataSync uploads your task report. For more information, see Task reports.

" + "TaskReportConfig$Destination": "

Specifies the Amazon S3 bucket where DataSync uploads your task report. For more information, see Task reports.

" } }, "ReportDestinationS3": { - "base": "

Specifies the Amazon S3 bucket where DataSync uploads your task report.

", + "base": "

Specifies the Amazon S3 bucket where DataSync uploads your task report.

", "refs": { "ReportDestination$S3": "

Specifies the Amazon S3 bucket where DataSync uploads your task report.

" } @@ -1685,7 +1698,7 @@ } }, "ReportOverride": { - "base": "

Specifies the level of detail for a particular aspect of your DataSync task report.

", + "base": "

Specifies the level of detail for a particular aspect of your DataSync task report.

", "refs": { "ReportOverrides$Transferred": "

Specifies the level of reporting for the files, objects, and directories that DataSync attempted to transfer.

", "ReportOverrides$Verified": "

Specifies the level of reporting for the files, objects, and directories that DataSync attempted to verify at the end of your transfer.

", @@ -1694,15 +1707,15 @@ } }, "ReportOverrides": { - "base": "

The level of detail included in each aspect of your DataSync task report.

", + "base": "

The level of detail included in each aspect of your DataSync task report.

", "refs": { "TaskReportConfig$Overrides": "

Customizes the reporting level for aspects of your task report. For example, your report might generally only include errors, but you could specify that you want a list of successes and errors just for the files that DataSync attempted to delete in your destination location.

" } }, "ReportResult": { - "base": "

Indicates whether DataSync created a complete task report for your transfer.

", + "base": "

Indicates whether DataSync created a complete task report for your transfer.

", "refs": { - "DescribeTaskExecutionResponse$ReportResult": "

Indicates whether DataSync generated a complete task report for your transfer.

" + "DescribeTaskExecutionResponse$ReportResult": "

Indicates whether DataSync generated a complete task report for your transfer.

" } }, "ResourceDetails": { @@ -1791,12 +1804,12 @@ "SmbDomain": { "base": null, "refs": { - "CreateLocationFsxWindowsRequest$Domain": "

Specifies the name of the Windows domain that the FSx for Windows File Server belongs to.

", - "CreateLocationSmbRequest$Domain": "

Specifies the Windows domain name that your SMB file server belongs to.

For more information, see required permissions for SMB locations.

", + "CreateLocationFsxWindowsRequest$Domain": "

Specifies the name of the Windows domain that the FSx for Windows File Server belongs to.

If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.

For more information, see required permissions for FSx for Windows File Server locations.

", + "CreateLocationSmbRequest$Domain": "

Specifies the Windows domain name that your SMB file server belongs to.

If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.

For more information, see required permissions for SMB locations.

", "DescribeLocationFsxWindowsResponse$Domain": "

The name of the Windows domain that the FSx for Windows File Server belongs to.

", "DescribeLocationSmbResponse$Domain": "

The name of the Windows domain that the SMB server belongs to.

", "FsxProtocolSmb$Domain": "

Specifies the fully qualified domain name (FQDN) of the Microsoft Active Directory that your storage virtual machine (SVM) belongs to.

", - "UpdateLocationSmbRequest$Domain": "

The name of the Windows domain that the SMB server belongs to.

" + "UpdateLocationSmbRequest$Domain": "

Specifies the Windows domain name that your SMB file server belongs to.

If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.

For more information, see required permissions for SMB locations.

" } }, "SmbMountOptions": { @@ -1811,10 +1824,10 @@ "SmbPassword": { "base": null, "refs": { - "CreateLocationFsxWindowsRequest$Password": "

Specifies the password of the user who has the permissions to access files and folders in the file system.

", + "CreateLocationFsxWindowsRequest$Password": "

Specifies the password of the user who has the permissions to access files and folders in the file system.

For more information, see required permissions for FSx for Windows File Server locations.

", "CreateLocationSmbRequest$Password": "

Specifies the password of the user who can mount your SMB file server and has permission to access the files and folders involved in your transfer.

For more information, see required permissions for SMB locations.

", "FsxProtocolSmb$Password": "

Specifies the password of a user who has permission to access your SVM.

", - "UpdateLocationSmbRequest$Password": "

The password of the user who can mount the share has the permissions to access files and folders in the SMB share.

" + "UpdateLocationSmbRequest$Password": "

Specifies the password of the user who can mount your SMB file server and has permission to access the files and folders involved in your transfer.

For more information, see required permissions for SMB locations.

" } }, "SmbSecurityDescriptorCopyFlags": { @@ -1827,18 +1840,18 @@ "base": null, "refs": { "CreateLocationSmbRequest$Subdirectory": "

Specifies the name of the share exported by your SMB file server where DataSync will read or write data. You can include a subdirectory in the share path (for example, /path/to/subdirectory). Make sure that other SMB clients in your network can also mount this path.

To copy all data in the specified subdirectory, DataSync must be able to mount the SMB share and access all of its data. For more information, see required permissions for SMB locations.

", - "UpdateLocationSmbRequest$Subdirectory": "

The subdirectory in the SMB file system that is used to read data from the SMB source location or write data to the SMB destination. The SMB path should be a path that's exported by the SMB server, or a subdirectory of that path. The path should be such that it can be mounted by other SMB clients in your network.

Subdirectory must be specified with forward slashes. For example, /path/to/folder.

To transfer all the data in the folder that you specified, DataSync must have permissions to mount the SMB share and to access all the data in that share. To ensure this, do either of the following:

  • Ensure that the user/password specified belongs to the user who can mount the share and who has the appropriate permissions for all of the files and directories that you want DataSync to access.

  • Use credentials of a member of the Backup Operators group to mount the share.

Doing either of these options enables the agent to access the data. For the agent to access directories, you must also enable all execute access.

" + "UpdateLocationSmbRequest$Subdirectory": "

Specifies the name of the share exported by your SMB file server where DataSync will read or write data. You can include a subdirectory in the share path (for example, /path/to/subdirectory). Make sure that other SMB clients in your network can also mount this path.

To copy all data in the specified subdirectory, DataSync must be able to mount the SMB share and access all of its data. For more information, see required permissions for SMB locations.

" } }, "SmbUser": { "base": null, "refs": { - "CreateLocationFsxWindowsRequest$User": "

Specifies the user who has the permissions to access files, folders, and metadata in your file system.

For information about choosing a user with sufficient permissions, see Required permissions.

", + "CreateLocationFsxWindowsRequest$User": "

Specifies the user who has the permissions to access files, folders, and metadata in your file system.

For information about choosing a user with the right level of access for your transfer, see required permissions for FSx for Windows File Server locations.

", "CreateLocationSmbRequest$User": "

Specifies the user name that can mount your SMB file server and has permission to access the files and folders involved in your transfer.

For information about choosing a user with the right level of access for your transfer, see required permissions for SMB locations.

", "DescribeLocationFsxWindowsResponse$User": "

The user who has the permissions to access files and folders in the FSx for Windows File Server file system.

", "DescribeLocationSmbResponse$User": "

The user who can mount the share, has the permissions to access files and folders in the SMB share.

", "FsxProtocolSmb$User": "

Specifies a user name that can mount the location and access the files, folders, and metadata that you need in the SVM.

If you provide a user in your Active Directory, note the following:

  • If you're using Directory Service for Microsoft Active Directory, the user must be a member of the Amazon Web Services Delegated FSx Administrators group.

  • If you're using a self-managed Active Directory, the user must be a member of either the Domain Admins group or a custom group that you specified for file system administration when you created your file system.

Make sure that the user has the permissions it needs to copy the data you want:

  • SE_TCB_NAME: Required to set object ownership and file metadata. With this privilege, you also can copy NTFS discretionary access lists (DACLs).

  • SE_SECURITY_NAME: May be needed to copy NTFS system access control lists (SACLs). This operation specifically requires the Windows privilege, which is granted to members of the Domain Admins group. If you configure your task to copy SACLs, make sure that the user has the required privileges. For information about copying SACLs, see Ownership and permissions-related options.

", - "UpdateLocationSmbRequest$User": "

The user who can mount the share has the permissions to access files and folders in the SMB share.

" + "UpdateLocationSmbRequest$User": "

Specifies the user name that can mount your SMB file server and has permission to access the files and folders involved in your transfer.

For information about choosing a user with the right level of access for your transfer, see required permissions for SMB locations.

" } }, "SmbVersion": { @@ -2061,11 +2074,11 @@ } }, "TaskReportConfig": { - "base": "

Specifies how you want to configure a task report, which provides detailed information about for your DataSync transfer.

For more information, see Task reports.

", + "base": "

Specifies how you want to configure a task report, which provides detailed information about for your DataSync transfer.

For more information, see Task reports.

", "refs": { "CreateTaskRequest$TaskReportConfig": "

Specifies how you want to configure a task report, which provides detailed information about for your DataSync transfer.

", "DescribeTaskExecutionResponse$TaskReportConfig": "

The configuration of your task report, which provides detailed information about for your DataSync transfer.

", - "DescribeTaskResponse$TaskReportConfig": "

The configuration of your task report. For more information, see Creating a task report.

", + "DescribeTaskResponse$TaskReportConfig": "

The configuration of your task report. For more information, see Creating a task report.

", "StartTaskExecutionRequest$TaskReportConfig": "

Specifies how you want to configure a task report, which provides detailed information about for your DataSync transfer.

", "UpdateTaskRequest$TaskReportConfig": "

Specifies how you want to configure a task report, which provides detailed information about for your DataSync transfer.

" } @@ -2094,8 +2107,8 @@ "Time": { "base": null, "refs": { - "DescribeAgentResponse$LastConnectionTime": "

The time that the agent last connected to DataSync.

", - "DescribeAgentResponse$CreationTime": "

The time that the agent was activated (that is, created in your account).

", + "DescribeAgentResponse$LastConnectionTime": "

The last time that the agent was communicating with the DataSync service.

", + "DescribeAgentResponse$CreationTime": "

The time that the agent was activated.

", "DescribeLocationAzureBlobResponse$CreationTime": "

The time that your Azure Blob Storage transfer location was created.

", "DescribeLocationEfsResponse$CreationTime": "

The time that the location was created.

", "DescribeLocationFsxLustreResponse$CreationTime": "

The time that the FSx for Lustre location was created.

", @@ -2264,7 +2277,7 @@ "DescribeTaskExecutionResponse$BytesCompressed": "

The physical number of bytes transferred over the network after compression was applied. In most cases, this number is less than BytesTransferred unless the data isn't compressible.

", "DescribeTaskExecutionResponse$FilesDeleted": "

The number of files, objects, and directories that DataSync deleted in your destination location. If you don't configure your task to delete data in the destination that isn't in the source, the value is always 0.

", "DescribeTaskExecutionResponse$FilesSkipped": "

The number of files, objects, and directories that DataSync skipped during your transfer.

", - "DescribeTaskExecutionResponse$FilesVerified": "

The number of files, objects, and directories that DataSync verified during your transfer.

", + "DescribeTaskExecutionResponse$FilesVerified": "

The number of files, objects, and directories that DataSync verified during your transfer.

When you configure your task to verify only the data that's transferred, DataSync doesn't verify directories in some situations or files that fail to transfer.

", "DescribeTaskExecutionResponse$EstimatedFilesToDelete": "

The expected number of files, objects, and directories that DataSync will delete in your destination location. If you don't configure your task to delete data in the destination that isn't in the source, the value is always 0.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datasync/2018-11-09/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datasync/2018-11-09/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datasync/2018-11-09/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datasync/2018-11-09/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,8555 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2018-05-10", + "endpointPrefix":"datazone", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon DataZone", + "serviceId":"DataZone", + "signatureVersion":"v4", + "signingName":"datazone", + "uid":"datazone-2018-05-10" + }, + "operations":{ + "AcceptPredictions":{ + "name":"AcceptPredictions", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/assets/{identifier}/accept-predictions", + "responseCode":200 + }, + "input":{"shape":"AcceptPredictionsInput"}, + "output":{"shape":"AcceptPredictionsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "AcceptSubscriptionRequest":{ + "name":"AcceptSubscriptionRequest", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests/{identifier}/accept", + "responseCode":200 + }, + "input":{"shape":"AcceptSubscriptionRequestInput"}, + "output":{"shape":"AcceptSubscriptionRequestOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CancelSubscription":{ + "name":"CancelSubscription", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/subscriptions/{identifier}/cancel", + "responseCode":200 + }, + "input":{"shape":"CancelSubscriptionInput"}, + "output":{"shape":"CancelSubscriptionOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateAsset":{ + "name":"CreateAsset", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/assets", + "responseCode":201 + }, + "input":{"shape":"CreateAssetInput"}, + "output":{"shape":"CreateAssetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateAssetRevision":{ + "name":"CreateAssetRevision", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/assets/{identifier}/revisions", + "responseCode":200 + }, + "input":{"shape":"CreateAssetRevisionInput"}, + "output":{"shape":"CreateAssetRevisionOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateAssetType":{ + "name":"CreateAssetType", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/asset-types", + "responseCode":201 + }, + "input":{"shape":"CreateAssetTypeInput"}, + "output":{"shape":"CreateAssetTypeOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateDataSource":{ + "name":"CreateDataSource", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources", + "responseCode":201 + }, + "input":{"shape":"CreateDataSourceInput"}, + "output":{"shape":"CreateDataSourceOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateDomain":{ + "name":"CreateDomain", + "http":{ + "method":"POST", + "requestUri":"/v2/domains", + "responseCode":201 + }, + "input":{"shape":"CreateDomainInput"}, + "output":{"shape":"CreateDomainOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateEnvironment":{ + "name":"CreateEnvironment", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/environments", + "responseCode":201 + }, + "input":{"shape":"CreateEnvironmentInput"}, + "output":{"shape":"CreateEnvironmentOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateEnvironmentProfile":{ + "name":"CreateEnvironmentProfile", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/environment-profiles", + "responseCode":201 + }, + "input":{"shape":"CreateEnvironmentProfileInput"}, + "output":{"shape":"CreateEnvironmentProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateFormType":{ + "name":"CreateFormType", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/form-types", + "responseCode":201 + }, + "input":{"shape":"CreateFormTypeInput"}, + "output":{"shape":"CreateFormTypeOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateGlossary":{ + "name":"CreateGlossary", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/glossaries", + "responseCode":201 + }, + "input":{"shape":"CreateGlossaryInput"}, + "output":{"shape":"CreateGlossaryOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateGlossaryTerm":{ + "name":"CreateGlossaryTerm", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/glossary-terms", + "responseCode":201 + }, + "input":{"shape":"CreateGlossaryTermInput"}, + "output":{"shape":"CreateGlossaryTermOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateGroupProfile":{ + "name":"CreateGroupProfile", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/group-profiles", + "responseCode":201 + }, + "input":{"shape":"CreateGroupProfileInput"}, + "output":{"shape":"CreateGroupProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "CreateListingChangeSet":{ + "name":"CreateListingChangeSet", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/listings/change-set", + "responseCode":200 + }, + "input":{"shape":"CreateListingChangeSetInput"}, + "output":{"shape":"CreateListingChangeSetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateProject":{ + "name":"CreateProject", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/projects", + "responseCode":201 + }, + "input":{"shape":"CreateProjectInput"}, + "output":{"shape":"CreateProjectOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateProjectMembership":{ + "name":"CreateProjectMembership", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/projects/{projectIdentifier}/createMembership", + "responseCode":201 + }, + "input":{"shape":"CreateProjectMembershipInput"}, + "output":{"shape":"CreateProjectMembershipOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateSubscriptionGrant":{ + "name":"CreateSubscriptionGrant", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-grants", + "responseCode":200 + }, + "input":{"shape":"CreateSubscriptionGrantInput"}, + "output":{"shape":"CreateSubscriptionGrantOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateSubscriptionRequest":{ + "name":"CreateSubscriptionRequest", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests", + "responseCode":200 + }, + "input":{"shape":"CreateSubscriptionRequestInput"}, + "output":{"shape":"CreateSubscriptionRequestOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateSubscriptionTarget":{ + "name":"CreateSubscriptionTarget", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets", + "responseCode":200 + }, + "input":{"shape":"CreateSubscriptionTargetInput"}, + "output":{"shape":"CreateSubscriptionTargetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "CreateUserProfile":{ + "name":"CreateUserProfile", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/user-profiles", + "responseCode":201 + }, + "input":{"shape":"CreateUserProfileInput"}, + "output":{"shape":"CreateUserProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteAsset":{ + "name":"DeleteAsset", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/assets/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteAssetInput"}, + "output":{"shape":"DeleteAssetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteAssetType":{ + "name":"DeleteAssetType", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/asset-types/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteAssetTypeInput"}, + "output":{"shape":"DeleteAssetTypeOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "DeleteDataSource":{ + "name":"DeleteDataSource", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources/{identifier}", + "responseCode":200 + }, + "input":{"shape":"DeleteDataSourceInput"}, + "output":{"shape":"DeleteDataSourceOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteDomain":{ + "name":"DeleteDomain", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{identifier}", + "responseCode":202 + }, + "input":{"shape":"DeleteDomainInput"}, + "output":{"shape":"DeleteDomainOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteEnvironment":{ + "name":"DeleteEnvironment", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteEnvironmentInput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteEnvironmentBlueprintConfiguration":{ + "name":"DeleteEnvironmentBlueprintConfiguration", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/environment-blueprint-configurations/{environmentBlueprintIdentifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteEnvironmentBlueprintConfigurationInput"}, + "output":{"shape":"DeleteEnvironmentBlueprintConfigurationOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteEnvironmentProfile":{ + "name":"DeleteEnvironmentProfile", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/environment-profiles/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteEnvironmentProfileInput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteFormType":{ + "name":"DeleteFormType", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/form-types/{formTypeIdentifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteFormTypeInput"}, + "output":{"shape":"DeleteFormTypeOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "DeleteGlossary":{ + "name":"DeleteGlossary", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/glossaries/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteGlossaryInput"}, + "output":{"shape":"DeleteGlossaryOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteGlossaryTerm":{ + "name":"DeleteGlossaryTerm", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/glossary-terms/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteGlossaryTermInput"}, + "output":{"shape":"DeleteGlossaryTermOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteListing":{ + "name":"DeleteListing", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/listings/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteListingInput"}, + "output":{"shape":"DeleteListingOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteProject":{ + "name":"DeleteProject", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/projects/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteProjectInput"}, + "output":{"shape":"DeleteProjectOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteProjectMembership":{ + "name":"DeleteProjectMembership", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/projects/{projectIdentifier}/deleteMembership", + "responseCode":204 + }, + "input":{"shape":"DeleteProjectMembershipInput"}, + "output":{"shape":"DeleteProjectMembershipOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "DeleteSubscriptionGrant":{ + "name":"DeleteSubscriptionGrant", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-grants/{identifier}", + "responseCode":200 + }, + "input":{"shape":"DeleteSubscriptionGrantInput"}, + "output":{"shape":"DeleteSubscriptionGrantOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "DeleteSubscriptionRequest":{ + "name":"DeleteSubscriptionRequest", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteSubscriptionRequestInput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "DeleteSubscriptionTarget":{ + "name":"DeleteSubscriptionTarget", + "http":{ + "method":"DELETE", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteSubscriptionTargetInput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetAsset":{ + "name":"GetAsset", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/assets/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetAssetInput"}, + "output":{"shape":"GetAssetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetAssetType":{ + "name":"GetAssetType", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/asset-types/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetAssetTypeInput"}, + "output":{"shape":"GetAssetTypeOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetDataSource":{ + "name":"GetDataSource", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetDataSourceInput"}, + "output":{"shape":"GetDataSourceOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetDataSourceRun":{ + "name":"GetDataSourceRun", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/data-source-runs/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetDataSourceRunInput"}, + "output":{"shape":"GetDataSourceRunOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetDomain":{ + "name":"GetDomain", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetDomainInput"}, + "output":{"shape":"GetDomainOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetEnvironment":{ + "name":"GetEnvironment", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetEnvironmentInput"}, + "output":{"shape":"GetEnvironmentOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetEnvironmentBlueprint":{ + "name":"GetEnvironmentBlueprint", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environment-blueprints/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetEnvironmentBlueprintInput"}, + "output":{"shape":"GetEnvironmentBlueprintOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetEnvironmentBlueprintConfiguration":{ + "name":"GetEnvironmentBlueprintConfiguration", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environment-blueprint-configurations/{environmentBlueprintIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetEnvironmentBlueprintConfigurationInput"}, + "output":{"shape":"GetEnvironmentBlueprintConfigurationOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetEnvironmentProfile":{ + "name":"GetEnvironmentProfile", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environment-profiles/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetEnvironmentProfileInput"}, + "output":{"shape":"GetEnvironmentProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetFormType":{ + "name":"GetFormType", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/form-types/{formTypeIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetFormTypeInput"}, + "output":{"shape":"GetFormTypeOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetGlossary":{ + "name":"GetGlossary", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/glossaries/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetGlossaryInput"}, + "output":{"shape":"GetGlossaryOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetGlossaryTerm":{ + "name":"GetGlossaryTerm", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/glossary-terms/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetGlossaryTermInput"}, + "output":{"shape":"GetGlossaryTermOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetGroupProfile":{ + "name":"GetGroupProfile", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/group-profiles/{groupIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetGroupProfileInput"}, + "output":{"shape":"GetGroupProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetIamPortalLoginUrl":{ + "name":"GetIamPortalLoginUrl", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/get-portal-login-url", + "responseCode":200 + }, + "input":{"shape":"GetIamPortalLoginUrlInput"}, + "output":{"shape":"GetIamPortalLoginUrlOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetListing":{ + "name":"GetListing", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/listings/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetListingInput"}, + "output":{"shape":"GetListingOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetProject":{ + "name":"GetProject", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/projects/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetProjectInput"}, + "output":{"shape":"GetProjectOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetSubscription":{ + "name":"GetSubscription", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/subscriptions/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetSubscriptionInput"}, + "output":{"shape":"GetSubscriptionOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetSubscriptionGrant":{ + "name":"GetSubscriptionGrant", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-grants/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetSubscriptionGrantInput"}, + "output":{"shape":"GetSubscriptionGrantOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetSubscriptionRequestDetails":{ + "name":"GetSubscriptionRequestDetails", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetSubscriptionRequestDetailsInput"}, + "output":{"shape":"GetSubscriptionRequestDetailsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetSubscriptionTarget":{ + "name":"GetSubscriptionTarget", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetSubscriptionTargetInput"}, + "output":{"shape":"GetSubscriptionTargetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "GetUserProfile":{ + "name":"GetUserProfile", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/user-profiles/{userIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetUserProfileInput"}, + "output":{"shape":"GetUserProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListAssetRevisions":{ + "name":"ListAssetRevisions", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/assets/{identifier}/revisions", + "responseCode":200 + }, + "input":{"shape":"ListAssetRevisionsInput"}, + "output":{"shape":"ListAssetRevisionsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListDataSourceRunActivities":{ + "name":"ListDataSourceRunActivities", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/data-source-runs/{identifier}/activities", + "responseCode":200 + }, + "input":{"shape":"ListDataSourceRunActivitiesInput"}, + "output":{"shape":"ListDataSourceRunActivitiesOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListDataSourceRuns":{ + "name":"ListDataSourceRuns", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources/{dataSourceIdentifier}/runs", + "responseCode":200 + }, + "input":{"shape":"ListDataSourceRunsInput"}, + "output":{"shape":"ListDataSourceRunsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListDataSources":{ + "name":"ListDataSources", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources", + "responseCode":200 + }, + "input":{"shape":"ListDataSourcesInput"}, + "output":{"shape":"ListDataSourcesOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListDomains":{ + "name":"ListDomains", + "http":{ + "method":"GET", + "requestUri":"/v2/domains", + "responseCode":200 + }, + "input":{"shape":"ListDomainsInput"}, + "output":{"shape":"ListDomainsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListEnvironmentBlueprintConfigurations":{ + "name":"ListEnvironmentBlueprintConfigurations", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environment-blueprint-configurations", + "responseCode":200 + }, + "input":{"shape":"ListEnvironmentBlueprintConfigurationsInput"}, + "output":{"shape":"ListEnvironmentBlueprintConfigurationsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListEnvironmentBlueprints":{ + "name":"ListEnvironmentBlueprints", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environment-blueprints", + "responseCode":200 + }, + "input":{"shape":"ListEnvironmentBlueprintsInput"}, + "output":{"shape":"ListEnvironmentBlueprintsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListEnvironmentProfiles":{ + "name":"ListEnvironmentProfiles", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environment-profiles", + "responseCode":200 + }, + "input":{"shape":"ListEnvironmentProfilesInput"}, + "output":{"shape":"ListEnvironmentProfilesOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListEnvironments":{ + "name":"ListEnvironments", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environments", + "responseCode":200 + }, + "input":{"shape":"ListEnvironmentsInput"}, + "output":{"shape":"ListEnvironmentsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListNotifications":{ + "name":"ListNotifications", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/notifications", + "responseCode":200 + }, + "input":{"shape":"ListNotificationsInput"}, + "output":{"shape":"ListNotificationsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListProjectMemberships":{ + "name":"ListProjectMemberships", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/projects/{projectIdentifier}/memberships", + "responseCode":200 + }, + "input":{"shape":"ListProjectMembershipsInput"}, + "output":{"shape":"ListProjectMembershipsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListProjects":{ + "name":"ListProjects", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/projects", + "responseCode":200 + }, + "input":{"shape":"ListProjectsInput"}, + "output":{"shape":"ListProjectsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListSubscriptionGrants":{ + "name":"ListSubscriptionGrants", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-grants", + "responseCode":200 + }, + "input":{"shape":"ListSubscriptionGrantsInput"}, + "output":{"shape":"ListSubscriptionGrantsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListSubscriptionRequests":{ + "name":"ListSubscriptionRequests", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests", + "responseCode":200 + }, + "input":{"shape":"ListSubscriptionRequestsInput"}, + "output":{"shape":"ListSubscriptionRequestsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListSubscriptionTargets":{ + "name":"ListSubscriptionTargets", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets", + "responseCode":200 + }, + "input":{"shape":"ListSubscriptionTargetsInput"}, + "output":{"shape":"ListSubscriptionTargetsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListSubscriptions":{ + "name":"ListSubscriptions", + "http":{ + "method":"GET", + "requestUri":"/v2/domains/{domainIdentifier}/subscriptions", + "responseCode":200 + }, + "input":{"shape":"ListSubscriptionsInput"}, + "output":{"shape":"ListSubscriptionsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "PutEnvironmentBlueprintConfiguration":{ + "name":"PutEnvironmentBlueprintConfiguration", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/environment-blueprint-configurations/{environmentBlueprintIdentifier}", + "responseCode":200 + }, + "input":{"shape":"PutEnvironmentBlueprintConfigurationInput"}, + "output":{"shape":"PutEnvironmentBlueprintConfigurationOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "RejectPredictions":{ + "name":"RejectPredictions", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/assets/{identifier}/reject-predictions", + "responseCode":200 + }, + "input":{"shape":"RejectPredictionsInput"}, + "output":{"shape":"RejectPredictionsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "RejectSubscriptionRequest":{ + "name":"RejectSubscriptionRequest", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests/{identifier}/reject", + "responseCode":200 + }, + "input":{"shape":"RejectSubscriptionRequestInput"}, + "output":{"shape":"RejectSubscriptionRequestOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "RevokeSubscription":{ + "name":"RevokeSubscription", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/subscriptions/{identifier}/revoke", + "responseCode":200 + }, + "input":{"shape":"RevokeSubscriptionInput"}, + "output":{"shape":"RevokeSubscriptionOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "Search":{ + "name":"Search", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/search", + "responseCode":200 + }, + "input":{"shape":"SearchInput"}, + "output":{"shape":"SearchOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "SearchGroupProfiles":{ + "name":"SearchGroupProfiles", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/search-group-profiles", + "responseCode":200 + }, + "input":{"shape":"SearchGroupProfilesInput"}, + "output":{"shape":"SearchGroupProfilesOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "SearchListings":{ + "name":"SearchListings", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/listings/search", + "responseCode":200 + }, + "input":{"shape":"SearchListingsInput"}, + "output":{"shape":"SearchListingsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "SearchTypes":{ + "name":"SearchTypes", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/types-search", + "responseCode":200 + }, + "input":{"shape":"SearchTypesInput"}, + "output":{"shape":"SearchTypesOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "SearchUserProfiles":{ + "name":"SearchUserProfiles", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/search-user-profiles", + "responseCode":200 + }, + "input":{"shape":"SearchUserProfilesInput"}, + "output":{"shape":"SearchUserProfilesOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "StartDataSourceRun":{ + "name":"StartDataSourceRun", + "http":{ + "method":"POST", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources/{dataSourceIdentifier}/runs", + "responseCode":200 + }, + "input":{"shape":"StartDataSourceRunInput"}, + "output":{"shape":"StartDataSourceRunOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateDataSource":{ + "name":"UpdateDataSource", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/data-sources/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateDataSourceInput"}, + "output":{"shape":"UpdateDataSourceOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateDomain":{ + "name":"UpdateDomain", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateDomainInput"}, + "output":{"shape":"UpdateDomainOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateEnvironment":{ + "name":"UpdateEnvironment", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateEnvironmentInput"}, + "output":{"shape":"UpdateEnvironmentOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "UpdateEnvironmentProfile":{ + "name":"UpdateEnvironmentProfile", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/environment-profiles/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateEnvironmentProfileInput"}, + "output":{"shape":"UpdateEnvironmentProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "UpdateGlossary":{ + "name":"UpdateGlossary", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/glossaries/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateGlossaryInput"}, + "output":{"shape":"UpdateGlossaryOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateGlossaryTerm":{ + "name":"UpdateGlossaryTerm", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/glossary-terms/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateGlossaryTermInput"}, + "output":{"shape":"UpdateGlossaryTermOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateGroupProfile":{ + "name":"UpdateGroupProfile", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/group-profiles/{groupIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateGroupProfileInput"}, + "output":{"shape":"UpdateGroupProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + }, + "UpdateProject":{ + "name":"UpdateProject", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/projects/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateProjectInput"}, + "output":{"shape":"UpdateProjectOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateSubscriptionGrantStatus":{ + "name":"UpdateSubscriptionGrantStatus", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-grants/{identifier}/status/{assetIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateSubscriptionGrantStatusInput"}, + "output":{"shape":"UpdateSubscriptionGrantStatusOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateSubscriptionRequest":{ + "name":"UpdateSubscriptionRequest", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/subscription-requests/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateSubscriptionRequestInput"}, + "output":{"shape":"UpdateSubscriptionRequestOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateSubscriptionTarget":{ + "name":"UpdateSubscriptionTarget", + "http":{ + "method":"PATCH", + "requestUri":"/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateSubscriptionTargetInput"}, + "output":{"shape":"UpdateSubscriptionTargetOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ], + "idempotent":true + }, + "UpdateUserProfile":{ + "name":"UpdateUserProfile", + "http":{ + "method":"PUT", + "requestUri":"/v2/domains/{domainIdentifier}/user-profiles/{userIdentifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateUserProfileInput"}, + "output":{"shape":"UpdateUserProfileOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"UnauthorizedException"} + ] + } + }, + "shapes":{ + "AcceptChoice":{ + "type":"structure", + "members":{ + "predictionChoice":{"shape":"Integer"}, + "predictionTarget":{"shape":"String"} + } + }, + "AcceptChoices":{ + "type":"list", + "member":{"shape":"AcceptChoice"} + }, + "AcceptPredictionsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "acceptChoices":{"shape":"AcceptChoices"}, + "acceptRule":{"shape":"AcceptRule"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetIdentifier", + "location":"uri", + "locationName":"identifier" + }, + "revision":{ + "shape":"Revision", + "location":"querystring", + "locationName":"revision" + } + } + }, + "AcceptPredictionsOutput":{ + "type":"structure", + "required":[ + "assetId", + "domainId", + "revision" + ], + "members":{ + "assetId":{"shape":"AssetId"}, + "domainId":{"shape":"DomainId"}, + "revision":{"shape":"Revision"} + } + }, + "AcceptRule":{ + "type":"structure", + "members":{ + "rule":{"shape":"AcceptRuleBehavior"}, + "threshold":{"shape":"Float"} + } + }, + "AcceptRuleBehavior":{ + "type":"string", + "enum":[ + "ALL", + "NONE" + ] + }, + "AcceptSubscriptionRequestInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "decisionComment":{"shape":"DecisionComment"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionRequestId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "AcceptSubscriptionRequestOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "requestReason", + "status", + "subscribedListings", + "subscribedPrincipals", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "decisionComment":{"shape":"DecisionComment"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionRequestId"}, + "requestReason":{"shape":"RequestReason"}, + "reviewerId":{"shape":"String"}, + "status":{"shape":"SubscriptionRequestStatus"}, + "subscribedListings":{"shape":"AcceptSubscriptionRequestOutputSubscribedListingsList"}, + "subscribedPrincipals":{"shape":"AcceptSubscriptionRequestOutputSubscribedPrincipalsList"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "AcceptSubscriptionRequestOutputSubscribedListingsList":{ + "type":"list", + "member":{"shape":"SubscribedListing"}, + "max":1, + "min":1 + }, + "AcceptSubscriptionRequestOutputSubscribedPrincipalsList":{ + "type":"list", + "member":{"shape":"SubscribedPrincipal"}, + "max":1, + "min":1 + }, + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ActionLink":{ + "type":"string", + "sensitive":true + }, + "ApplicableAssetTypes":{ + "type":"list", + "member":{"shape":"TypeName"} + }, + "AssetId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "AssetIdentifier":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "AssetItem":{ + "type":"structure", + "required":[ + "domainId", + "identifier", + "name", + "owningProjectId", + "typeIdentifier", + "typeRevision" + ], + "members":{ + "additionalAttributes":{"shape":"AssetItemAdditionalAttributes"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "externalIdentifier":{"shape":"ExternalIdentifier"}, + "firstRevisionCreatedAt":{"shape":"CreatedAt"}, + "firstRevisionCreatedBy":{"shape":"CreatedBy"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "identifier":{"shape":"AssetIdentifier"}, + "name":{"shape":"AssetName"}, + "owningProjectId":{"shape":"ProjectId"}, + "typeIdentifier":{"shape":"AssetTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + } + }, + "AssetItemAdditionalAttributes":{ + "type":"structure", + "members":{ + "formsOutput":{"shape":"FormOutputList"}, + "readOnlyFormsOutput":{"shape":"FormOutputList"} + } + }, + "AssetListing":{ + "type":"structure", + "members":{ + "assetId":{"shape":"AssetId"}, + "assetRevision":{"shape":"Revision"}, + "assetType":{"shape":"TypeName"}, + "createdAt":{"shape":"CreatedAt"}, + "forms":{"shape":"Forms"}, + "glossaryTerms":{"shape":"DetailedGlossaryTerms"}, + "owningProjectId":{"shape":"ProjectId"} + } + }, + "AssetListingDetails":{ + "type":"structure", + "required":[ + "listingId", + "listingStatus" + ], + "members":{ + "listingId":{"shape":"ListingId"}, + "listingStatus":{"shape":"ListingStatus"} + } + }, + "AssetListingItem":{ + "type":"structure", + "members":{ + "additionalAttributes":{"shape":"AssetListingItemAdditionalAttributes"}, + "createdAt":{"shape":"CreatedAt"}, + "description":{"shape":"Description"}, + "entityId":{"shape":"AssetId"}, + "entityRevision":{"shape":"Revision"}, + "entityType":{"shape":"TypeName"}, + "glossaryTerms":{"shape":"DetailedGlossaryTerms"}, + "listingCreatedBy":{"shape":"CreatedBy"}, + "listingId":{"shape":"ListingId"}, + "listingRevision":{"shape":"Revision"}, + "listingUpdatedBy":{"shape":"UpdatedBy"}, + "name":{"shape":"AssetName"}, + "owningProjectId":{"shape":"ProjectId"} + } + }, + "AssetListingItemAdditionalAttributes":{ + "type":"structure", + "members":{ + "forms":{"shape":"Forms"} + } + }, + "AssetName":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "AssetRevision":{ + "type":"structure", + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"AssetId"}, + "revision":{"shape":"Revision"} + } + }, + "AssetRevisions":{ + "type":"list", + "member":{"shape":"AssetRevision"} + }, + "AssetTargetNameMap":{ + "type":"structure", + "required":[ + "assetId", + "targetName" + ], + "members":{ + "assetId":{"shape":"AssetId"}, + "targetName":{"shape":"String"} + } + }, + "AssetTargetNames":{ + "type":"list", + "member":{"shape":"AssetTargetNameMap"} + }, + "AssetTypeIdentifier":{ + "type":"string", + "max":385, + "min":1, + "pattern":"^(?!\\.)[\\w\\.]*\\w$" + }, + "AssetTypeItem":{ + "type":"structure", + "required":[ + "domainId", + "formsOutput", + "name", + "owningProjectId", + "revision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "formsOutput":{"shape":"FormsOutputMap"}, + "name":{"shape":"TypeName"}, + "originDomainId":{"shape":"DomainId"}, + "originProjectId":{"shape":"ProjectId"}, + "owningProjectId":{"shape":"ProjectId"}, + "revision":{"shape":"Revision"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "Attribute":{ + "type":"string", + "max":128, + "min":1 + }, + "AuthType":{ + "type":"string", + "enum":[ + "IAM_IDC", + "DISABLED" + ] + }, + "AuthorizedPrincipalIdentifier":{ + "type":"string", + "pattern":"^[a-zA-Z0-9:/_-]*$" + }, + "AuthorizedPrincipalIdentifiers":{ + "type":"list", + "member":{"shape":"AuthorizedPrincipalIdentifier"}, + "max":10, + "min":1 + }, + "AwsAccountId":{ + "type":"string", + "pattern":"^\\d{12}$" + }, + "AwsRegion":{ + "type":"string", + "pattern":"^[a-z]{2}-[a-z]{4,10}-\\d$" + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "BusinessNameGenerationConfiguration":{ + "type":"structure", + "members":{ + "enabled":{"shape":"Boolean"} + } + }, + "CancelSubscriptionInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "CancelSubscriptionOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "status", + "subscribedListing", + "subscribedPrincipal", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionId"}, + "retainPermissions":{"shape":"Boolean"}, + "status":{"shape":"SubscriptionStatus"}, + "subscribedListing":{"shape":"SubscribedListing"}, + "subscribedPrincipal":{"shape":"SubscribedPrincipal"}, + "subscriptionRequestId":{"shape":"SubscriptionRequestId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "ChangeAction":{ + "type":"string", + "enum":[ + "PUBLISH", + "UNPUBLISH" + ] + }, + "ClientToken":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[\\x21-\\x7E]+$" + }, + "CloudFormationProperties":{ + "type":"structure", + "required":["templateUrl"], + "members":{ + "templateUrl":{"shape":"String"} + } + }, + "ConfigurableActionParameter":{ + "type":"structure", + "members":{ + "key":{"shape":"String"}, + "value":{"shape":"String"} + } + }, + "ConfigurableActionParameterList":{ + "type":"list", + "member":{"shape":"ConfigurableActionParameter"} + }, + "ConfigurableActionTypeAuthorization":{ + "type":"string", + "enum":[ + "IAM", + "HTTPS" + ] + }, + "ConfigurableEnvironmentAction":{ + "type":"structure", + "required":[ + "parameters", + "type" + ], + "members":{ + "auth":{"shape":"ConfigurableActionTypeAuthorization"}, + "parameters":{"shape":"ConfigurableActionParameterList"}, + "type":{"shape":"String"} + } + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CreateAssetInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "name", + "owningProjectIdentifier", + "typeIdentifier" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "externalIdentifier":{"shape":"ExternalIdentifier"}, + "formsInput":{"shape":"FormInputList"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "name":{"shape":"AssetName"}, + "owningProjectIdentifier":{"shape":"ProjectId"}, + "predictionConfiguration":{"shape":"PredictionConfiguration"}, + "typeIdentifier":{"shape":"AssetTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + } + }, + "CreateAssetOutput":{ + "type":"structure", + "required":[ + "domainId", + "formsOutput", + "id", + "name", + "owningProjectId", + "revision", + "typeIdentifier", + "typeRevision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "externalIdentifier":{"shape":"ExternalIdentifier"}, + "firstRevisionCreatedAt":{"shape":"CreatedAt"}, + "firstRevisionCreatedBy":{"shape":"CreatedBy"}, + "formsOutput":{"shape":"FormOutputList"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"AssetId"}, + "listing":{"shape":"AssetListingDetails"}, + "name":{"shape":"AssetName"}, + "owningProjectId":{"shape":"ProjectId"}, + "predictionConfiguration":{"shape":"PredictionConfiguration"}, + "readOnlyFormsOutput":{"shape":"FormOutputList"}, + "revision":{"shape":"Revision"}, + "typeIdentifier":{"shape":"AssetTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + } + }, + "CreateAssetRevisionInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier", + "name" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "formsInput":{"shape":"FormInputList"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "identifier":{ + "shape":"AssetIdentifier", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"AssetName"}, + "predictionConfiguration":{"shape":"PredictionConfiguration"}, + "typeRevision":{"shape":"Revision"} + } + }, + "CreateAssetRevisionOutput":{ + "type":"structure", + "required":[ + "domainId", + "formsOutput", + "id", + "name", + "owningProjectId", + "revision", + "typeIdentifier", + "typeRevision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "externalIdentifier":{"shape":"ExternalIdentifier"}, + "firstRevisionCreatedAt":{"shape":"CreatedAt"}, + "firstRevisionCreatedBy":{"shape":"CreatedBy"}, + "formsOutput":{"shape":"FormOutputList"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"AssetId"}, + "listing":{"shape":"AssetListingDetails"}, + "name":{"shape":"AssetName"}, + "owningProjectId":{"shape":"ProjectId"}, + "predictionConfiguration":{"shape":"PredictionConfiguration"}, + "readOnlyFormsOutput":{"shape":"FormOutputList"}, + "revision":{"shape":"Revision"}, + "typeIdentifier":{"shape":"AssetTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + } + }, + "CreateAssetTypeInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "formsInput", + "name", + "owningProjectIdentifier" + ], + "members":{ + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "formsInput":{"shape":"FormsInputMap"}, + "name":{"shape":"TypeName"}, + "owningProjectIdentifier":{"shape":"ProjectId"} + } + }, + "CreateAssetTypeOutput":{ + "type":"structure", + "required":[ + "domainId", + "formsOutput", + "name", + "revision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "formsOutput":{"shape":"FormsOutputMap"}, + "name":{"shape":"TypeName"}, + "originDomainId":{"shape":"DomainId"}, + "originProjectId":{"shape":"ProjectId"}, + "owningProjectId":{"shape":"ProjectId"}, + "revision":{"shape":"Revision"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "CreateDataSourceInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentIdentifier", + "name", + "projectIdentifier", + "type" + ], + "members":{ + "assetFormsInput":{"shape":"FormInputList"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "configuration":{"shape":"DataSourceConfigurationInput"}, + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "enableSetting":{"shape":"EnableSetting"}, + "environmentIdentifier":{"shape":"String"}, + "name":{"shape":"Name"}, + "projectIdentifier":{"shape":"String"}, + "publishOnImport":{"shape":"Boolean"}, + "recommendation":{"shape":"RecommendationConfiguration"}, + "schedule":{"shape":"ScheduleConfiguration"}, + "type":{"shape":"DataSourceType"} + } + }, + "CreateDataSourceOutput":{ + "type":"structure", + "required":[ + "domainId", + "environmentId", + "id", + "name", + "projectId" + ], + "members":{ + "assetFormsOutput":{"shape":"FormOutputList"}, + "configuration":{"shape":"DataSourceConfigurationOutput"}, + "createdAt":{"shape":"DateTime"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "enableSetting":{"shape":"EnableSetting"}, + "environmentId":{"shape":"EnvironmentId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceId"}, + "lastRunAt":{"shape":"DateTime"}, + "lastRunErrorMessage":{"shape":"DataSourceErrorMessage"}, + "lastRunStatus":{"shape":"DataSourceRunStatus"}, + "name":{"shape":"Name"}, + "projectId":{"shape":"ProjectId"}, + "publishOnImport":{"shape":"Boolean"}, + "recommendation":{"shape":"RecommendationConfiguration"}, + "schedule":{"shape":"ScheduleConfiguration"}, + "status":{"shape":"DataSourceStatus"}, + "type":{"shape":"DataSourceType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "CreateDomainInput":{ + "type":"structure", + "required":[ + "domainExecutionRole", + "name" + ], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "description":{"shape":"String"}, + "domainExecutionRole":{"shape":"RoleArn"}, + "kmsKeyIdentifier":{"shape":"KmsKeyArn"}, + "name":{"shape":"String"}, + "singleSignOn":{"shape":"SingleSignOn"}, + "tags":{"shape":"Tags"} + } + }, + "CreateDomainOutput":{ + "type":"structure", + "required":["id"], + "members":{ + "arn":{"shape":"String"}, + "description":{"shape":"String"}, + "domainExecutionRole":{"shape":"RoleArn"}, + "id":{"shape":"DomainId"}, + "kmsKeyIdentifier":{"shape":"KmsKeyArn"}, + "name":{"shape":"String"}, + "portalUrl":{"shape":"String"}, + "singleSignOn":{"shape":"SingleSignOn"}, + "status":{"shape":"DomainStatus"}, + "tags":{"shape":"Tags"} + } + }, + "CreateEnvironmentInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentProfileIdentifier", + "name", + "projectIdentifier" + ], + "members":{ + "description":{"shape":"String"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentProfileIdentifier":{"shape":"EnvironmentProfileId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "name":{"shape":"String"}, + "projectIdentifier":{"shape":"ProjectId"}, + "userParameters":{"shape":"EnvironmentParametersList"} + } + }, + "CreateEnvironmentOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentProfileId", + "name", + "projectId", + "provider" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "deploymentProperties":{"shape":"DeploymentProperties"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentActions":{"shape":"EnvironmentActionList"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "environmentProfileId":{"shape":"EnvironmentProfileId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"EnvironmentId"}, + "lastDeployment":{"shape":"Deployment"}, + "name":{"shape":"EnvironmentName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "provisionedResources":{"shape":"ResourceList"}, + "provisioningProperties":{"shape":"ProvisioningProperties"}, + "status":{"shape":"EnvironmentStatus"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "CreateEnvironmentProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentBlueprintIdentifier", + "name", + "projectIdentifier" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentBlueprintIdentifier":{"shape":"EnvironmentBlueprintId"}, + "name":{"shape":"EnvironmentProfileName"}, + "projectIdentifier":{"shape":"ProjectId"}, + "userParameters":{"shape":"EnvironmentParametersList"} + } + }, + "CreateEnvironmentProfileOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentBlueprintId", + "id", + "name" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "id":{"shape":"EnvironmentProfileId"}, + "name":{"shape":"EnvironmentProfileName"}, + "projectId":{"shape":"ProjectId"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "CreateFormTypeInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "model", + "name", + "owningProjectIdentifier" + ], + "members":{ + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "model":{"shape":"Model"}, + "name":{"shape":"FormTypeName"}, + "owningProjectIdentifier":{"shape":"ProjectId"}, + "status":{"shape":"FormTypeStatus"} + } + }, + "CreateFormTypeOutput":{ + "type":"structure", + "required":[ + "domainId", + "name", + "revision" + ], + "members":{ + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "name":{"shape":"FormTypeName"}, + "originDomainId":{"shape":"DomainId"}, + "originProjectId":{"shape":"ProjectId"}, + "owningProjectId":{"shape":"ProjectId"}, + "revision":{"shape":"Revision"} + } + }, + "CreateGlossaryInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "name", + "owningProjectIdentifier" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"GlossaryDescription"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "name":{"shape":"GlossaryName"}, + "owningProjectIdentifier":{"shape":"ProjectId"}, + "status":{"shape":"GlossaryStatus"} + } + }, + "CreateGlossaryOutput":{ + "type":"structure", + "required":[ + "domainId", + "id", + "name", + "owningProjectId" + ], + "members":{ + "description":{"shape":"GlossaryDescription"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"GlossaryId"}, + "name":{"shape":"GlossaryName"}, + "owningProjectId":{"shape":"ProjectId"}, + "status":{"shape":"GlossaryStatus"} + } + }, + "CreateGlossaryTermInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "glossaryIdentifier", + "name" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "glossaryIdentifier":{"shape":"GlossaryTermId"}, + "longDescription":{"shape":"LongDescription"}, + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"}, + "status":{"shape":"GlossaryTermStatus"}, + "termRelations":{"shape":"TermRelations"} + } + }, + "CreateGlossaryTermOutput":{ + "type":"structure", + "required":[ + "domainId", + "glossaryId", + "id", + "name", + "status" + ], + "members":{ + "domainId":{"shape":"DomainId"}, + "glossaryId":{"shape":"GlossaryId"}, + "id":{"shape":"GlossaryTermId"}, + "longDescription":{"shape":"LongDescription"}, + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"}, + "status":{"shape":"GlossaryTermStatus"}, + "termRelations":{"shape":"TermRelations"} + } + }, + "CreateGroupProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "groupIdentifier" + ], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "groupIdentifier":{"shape":"GroupIdentifier"} + } + }, + "CreateGroupProfileOutput":{ + "type":"structure", + "members":{ + "domainId":{"shape":"DomainId"}, + "groupName":{"shape":"GroupProfileName"}, + "id":{"shape":"GroupProfileId"}, + "status":{"shape":"GroupProfileStatus"} + } + }, + "CreateListingChangeSetInput":{ + "type":"structure", + "required":[ + "action", + "domainIdentifier", + "entityIdentifier", + "entityType" + ], + "members":{ + "action":{"shape":"ChangeAction"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "entityIdentifier":{"shape":"EntityId"}, + "entityRevision":{"shape":"Revision"}, + "entityType":{"shape":"EntityType"} + } + }, + "CreateListingChangeSetOutput":{ + "type":"structure", + "required":[ + "listingId", + "listingRevision", + "status" + ], + "members":{ + "listingId":{"shape":"ListingId"}, + "listingRevision":{"shape":"Revision"}, + "status":{"shape":"ListingStatus"} + } + }, + "CreateProjectInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "name" + ], + "members":{ + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "name":{"shape":"ProjectName"} + } + }, + "CreateProjectMembershipInput":{ + "type":"structure", + "required":[ + "designation", + "domainIdentifier", + "member", + "projectIdentifier" + ], + "members":{ + "designation":{"shape":"UserDesignation"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "member":{"shape":"Member"}, + "projectIdentifier":{ + "shape":"ProjectId", + "location":"uri", + "locationName":"projectIdentifier" + } + } + }, + "CreateProjectMembershipOutput":{ + "type":"structure", + "members":{ + } + }, + "CreateProjectOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "id", + "name" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"ProjectId"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "name":{"shape":"ProjectName"} + } + }, + "CreateSubscriptionGrantInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentIdentifier", + "grantedEntity", + "subscriptionTargetIdentifier" + ], + "members":{ + "assetTargetNames":{"shape":"AssetTargetNames"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{"shape":"EnvironmentId"}, + "grantedEntity":{"shape":"GrantedEntityInput"}, + "subscriptionTargetIdentifier":{"shape":"SubscriptionTargetId"} + } + }, + "CreateSubscriptionGrantOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "grantedEntity", + "id", + "status", + "subscriptionTargetId", + "updatedAt" + ], + "members":{ + "assets":{"shape":"SubscribedAssets"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "grantedEntity":{"shape":"GrantedEntity"}, + "id":{"shape":"SubscriptionGrantId"}, + "status":{"shape":"SubscriptionGrantOverallStatus"}, + "subscriptionId":{"shape":"SubscriptionId"}, + "subscriptionTargetId":{"shape":"SubscriptionTargetId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "CreateSubscriptionRequestInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "requestReason", + "subscribedListings", + "subscribedPrincipals" + ], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "requestReason":{"shape":"RequestReason"}, + "subscribedListings":{"shape":"SubscribedListingInputs"}, + "subscribedPrincipals":{"shape":"SubscribedPrincipalInputs"} + } + }, + "CreateSubscriptionRequestOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "requestReason", + "status", + "subscribedListings", + "subscribedPrincipals", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "decisionComment":{"shape":"DecisionComment"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionRequestId"}, + "requestReason":{"shape":"RequestReason"}, + "reviewerId":{"shape":"String"}, + "status":{"shape":"SubscriptionRequestStatus"}, + "subscribedListings":{"shape":"CreateSubscriptionRequestOutputSubscribedListingsList"}, + "subscribedPrincipals":{"shape":"CreateSubscriptionRequestOutputSubscribedPrincipalsList"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "CreateSubscriptionRequestOutputSubscribedListingsList":{ + "type":"list", + "member":{"shape":"SubscribedListing"}, + "max":1, + "min":1 + }, + "CreateSubscriptionRequestOutputSubscribedPrincipalsList":{ + "type":"list", + "member":{"shape":"SubscribedPrincipal"}, + "max":1, + "min":1 + }, + "CreateSubscriptionTargetInput":{ + "type":"structure", + "required":[ + "applicableAssetTypes", + "authorizedPrincipals", + "domainIdentifier", + "environmentIdentifier", + "manageAccessRole", + "name", + "subscriptionTargetConfig", + "type" + ], + "members":{ + "applicableAssetTypes":{"shape":"ApplicableAssetTypes"}, + "authorizedPrincipals":{"shape":"AuthorizedPrincipalIdentifiers"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"environmentIdentifier" + }, + "manageAccessRole":{"shape":"String"}, + "name":{"shape":"SubscriptionTargetName"}, + "provider":{"shape":"String"}, + "subscriptionTargetConfig":{"shape":"SubscriptionTargetForms"}, + "type":{"shape":"String"} + } + }, + "CreateSubscriptionTargetOutput":{ + "type":"structure", + "required":[ + "applicableAssetTypes", + "authorizedPrincipals", + "createdAt", + "createdBy", + "domainId", + "environmentId", + "id", + "manageAccessRole", + "name", + "projectId", + "provider", + "subscriptionTargetConfig", + "type" + ], + "members":{ + "applicableAssetTypes":{"shape":"ApplicableAssetTypes"}, + "authorizedPrincipals":{"shape":"AuthorizedPrincipalIdentifiers"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "environmentId":{"shape":"EnvironmentId"}, + "id":{"shape":"SubscriptionTargetId"}, + "manageAccessRole":{"shape":"String"}, + "name":{"shape":"SubscriptionTargetName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "subscriptionTargetConfig":{"shape":"SubscriptionTargetForms"}, + "type":{"shape":"String"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "CreateUserProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "userIdentifier" + ], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "userIdentifier":{"shape":"UserIdentifier"}, + "userType":{"shape":"UserType"} + } + }, + "CreateUserProfileOutput":{ + "type":"structure", + "members":{ + "details":{"shape":"UserProfileDetails"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"UserProfileId"}, + "status":{"shape":"UserProfileStatus"}, + "type":{"shape":"UserProfileType"} + } + }, + "CreatedAt":{"type":"timestamp"}, + "CreatedBy":{"type":"string"}, + "CronString":{ + "type":"string", + "max":256, + "min":1, + "pattern":"cron\\((\\b[0-5]?[0-9]\\b) (\\b2[0-3]\\b|\\b[0-1]?[0-9]\\b) (.*){1,5} (.*){1,5} (.*){1,5} (.*){1,5}\\)" + }, + "CustomParameter":{ + "type":"structure", + "required":[ + "fieldType", + "keyName" + ], + "members":{ + "defaultValue":{"shape":"String"}, + "description":{"shape":"Description"}, + "fieldType":{"shape":"String"}, + "isEditable":{"shape":"Boolean"}, + "isOptional":{"shape":"Boolean"}, + "keyName":{"shape":"CustomParameterKeyNameString"} + } + }, + "CustomParameterKeyNameString":{ + "type":"string", + "pattern":"^[a-zA-Z_][a-zA-Z0-9_]*$" + }, + "CustomParameterList":{ + "type":"list", + "member":{"shape":"CustomParameter"} + }, + "DataAssetActivityStatus":{ + "type":"string", + "enum":[ + "FAILED", + "PUBLISHING_FAILED", + "SUCCEEDED_CREATED", + "SUCCEEDED_UPDATED", + "SKIPPED_ALREADY_IMPORTED", + "SKIPPED_ARCHIVED", + "SKIPPED_NO_ACCESS", + "UNCHANGED" + ] + }, + "DataProductDescription":{ + "type":"string", + "max":4096, + "min":1, + "sensitive":true + }, + "DataProductId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "DataProductItem":{ + "type":"structure", + "members":{ + "domainId":{"shape":"DomainId"}, + "itemId":{"shape":"DataProductId"} + } + }, + "DataProductItems":{ + "type":"list", + "member":{"shape":"DataProductItem"}, + "max":100, + "min":0 + }, + "DataProductName":{ + "type":"string", + "max":64, + "min":1, + "sensitive":true + }, + "DataProductSummary":{ + "type":"structure", + "required":[ + "domainId", + "id", + "name", + "owningProjectId" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "dataProductItems":{"shape":"DataProductItems"}, + "description":{"shape":"DataProductDescription"}, + "domainId":{"shape":"DomainId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"DataProductId"}, + "name":{"shape":"DataProductName"}, + "owningProjectId":{"shape":"ProjectId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "DataSourceConfigurationInput":{ + "type":"structure", + "members":{ + "glueRunConfiguration":{"shape":"GlueRunConfigurationInput"}, + "redshiftRunConfiguration":{"shape":"RedshiftRunConfigurationInput"} + }, + "union":true + }, + "DataSourceConfigurationOutput":{ + "type":"structure", + "members":{ + "glueRunConfiguration":{"shape":"GlueRunConfigurationOutput"}, + "redshiftRunConfiguration":{"shape":"RedshiftRunConfigurationOutput"} + }, + "union":true + }, + "DataSourceErrorMessage":{ + "type":"structure", + "required":["errorType"], + "members":{ + "errorDetail":{"shape":"String"}, + "errorType":{"shape":"DataSourceErrorType"} + } + }, + "DataSourceErrorType":{ + "type":"string", + "enum":[ + "ACCESS_DENIED_EXCEPTION", + "CONFLICT_EXCEPTION", + "INTERNAL_SERVER_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "SERVICE_QUOTA_EXCEEDED_EXCEPTION", + "THROTTLING_EXCEPTION", + "VALIDATION_EXCEPTION" + ] + }, + "DataSourceId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "DataSourceRunActivities":{ + "type":"list", + "member":{"shape":"DataSourceRunActivity"} + }, + "DataSourceRunActivity":{ + "type":"structure", + "required":[ + "createdAt", + "dataAssetStatus", + "dataSourceRunId", + "database", + "projectId", + "technicalName", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"DateTime"}, + "dataAssetId":{"shape":"String"}, + "dataAssetStatus":{"shape":"DataAssetActivityStatus"}, + "dataSourceRunId":{"shape":"DataSourceRunId"}, + "database":{"shape":"Name"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "projectId":{"shape":"ProjectId"}, + "technicalDescription":{"shape":"Description"}, + "technicalName":{"shape":"Name"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "DataSourceRunId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "DataSourceRunStatus":{ + "type":"string", + "enum":[ + "REQUESTED", + "RUNNING", + "FAILED", + "PARTIALLY_SUCCEEDED", + "SUCCESS" + ] + }, + "DataSourceRunSummaries":{ + "type":"list", + "member":{"shape":"DataSourceRunSummary"} + }, + "DataSourceRunSummary":{ + "type":"structure", + "required":[ + "createdAt", + "dataSourceId", + "id", + "projectId", + "status", + "type", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"DateTime"}, + "dataSourceId":{"shape":"DataSourceId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceRunId"}, + "projectId":{"shape":"ProjectId"}, + "runStatisticsForAssets":{"shape":"RunStatisticsForAssets"}, + "startedAt":{"shape":"DateTime"}, + "status":{"shape":"DataSourceRunStatus"}, + "stoppedAt":{"shape":"DateTime"}, + "type":{"shape":"DataSourceRunType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "DataSourceRunType":{ + "type":"string", + "enum":[ + "PRIORITIZED", + "SCHEDULED" + ] + }, + "DataSourceStatus":{ + "type":"string", + "enum":[ + "CREATING", + "FAILED_CREATION", + "READY", + "UPDATING", + "FAILED_UPDATE", + "RUNNING", + "DELETING", + "FAILED_DELETION" + ] + }, + "DataSourceSummaries":{ + "type":"list", + "member":{"shape":"DataSourceSummary"} + }, + "DataSourceSummary":{ + "type":"structure", + "required":[ + "dataSourceId", + "domainId", + "environmentId", + "name", + "status", + "type" + ], + "members":{ + "createdAt":{"shape":"DateTime"}, + "dataSourceId":{"shape":"DataSourceId"}, + "domainId":{"shape":"DomainId"}, + "enableSetting":{"shape":"EnableSetting"}, + "environmentId":{"shape":"EnvironmentId"}, + "lastRunAssetCount":{"shape":"Integer"}, + "lastRunAt":{"shape":"DateTime"}, + "lastRunErrorMessage":{"shape":"DataSourceErrorMessage"}, + "lastRunStatus":{"shape":"DataSourceRunStatus"}, + "name":{"shape":"Name"}, + "schedule":{"shape":"ScheduleConfiguration"}, + "status":{"shape":"DataSourceStatus"}, + "type":{"shape":"String"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "DataSourceType":{ + "type":"string", + "max":256, + "min":1 + }, + "DateTime":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "DecisionComment":{ + "type":"string", + "max":4096, + "min":1, + "sensitive":true + }, + "DeleteAssetInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetIdentifier", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteAssetOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteAssetTypeInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetTypeIdentifier", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteAssetTypeOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteDataSourceInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"DataSourceId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteDataSourceOutput":{ + "type":"structure", + "required":[ + "domainId", + "environmentId", + "id", + "name", + "projectId" + ], + "members":{ + "assetFormsOutput":{"shape":"FormOutputList"}, + "configuration":{"shape":"DataSourceConfigurationOutput"}, + "createdAt":{"shape":"DateTime"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "enableSetting":{"shape":"EnableSetting"}, + "environmentId":{"shape":"EnvironmentId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceId"}, + "lastRunAt":{"shape":"DateTime"}, + "lastRunErrorMessage":{"shape":"DataSourceErrorMessage"}, + "lastRunStatus":{"shape":"DataSourceRunStatus"}, + "name":{"shape":"Name"}, + "projectId":{"shape":"ProjectId"}, + "publishOnImport":{"shape":"Boolean"}, + "schedule":{"shape":"ScheduleConfiguration"}, + "status":{"shape":"DataSourceStatus"}, + "type":{"shape":"DataSourceType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "DeleteDomainInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + }, + "identifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteDomainOutput":{ + "type":"structure", + "required":["status"], + "members":{ + "status":{"shape":"DomainStatus"} + } + }, + "DeleteEnvironmentBlueprintConfigurationInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentBlueprintIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentBlueprintIdentifier":{ + "shape":"EnvironmentBlueprintId", + "location":"uri", + "locationName":"environmentBlueprintIdentifier" + } + } + }, + "DeleteEnvironmentBlueprintConfigurationOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteEnvironmentInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteEnvironmentProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"EnvironmentProfileId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteFormTypeInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "formTypeIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "formTypeIdentifier":{ + "shape":"FormTypeIdentifier", + "location":"uri", + "locationName":"formTypeIdentifier" + } + } + }, + "DeleteFormTypeOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteGlossaryInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"GlossaryId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteGlossaryOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteGlossaryTermInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"GlossaryTermId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteGlossaryTermOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteListingInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"ListingId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteListingOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteProjectInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"ProjectId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteProjectMembershipInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "member", + "projectIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "member":{"shape":"Member"}, + "projectIdentifier":{ + "shape":"ProjectId", + "location":"uri", + "locationName":"projectIdentifier" + } + } + }, + "DeleteProjectMembershipOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteProjectOutput":{ + "type":"structure", + "members":{ + } + }, + "DeleteSubscriptionGrantInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionGrantId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteSubscriptionGrantOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "grantedEntity", + "id", + "status", + "subscriptionTargetId", + "updatedAt" + ], + "members":{ + "assets":{"shape":"SubscribedAssets"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "grantedEntity":{"shape":"GrantedEntity"}, + "id":{"shape":"SubscriptionGrantId"}, + "status":{"shape":"SubscriptionGrantOverallStatus"}, + "subscriptionId":{"shape":"SubscriptionId"}, + "subscriptionTargetId":{"shape":"SubscriptionTargetId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "DeleteSubscriptionRequestInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionRequestId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "DeleteSubscriptionTargetInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"environmentIdentifier" + }, + "identifier":{ + "shape":"SubscriptionTargetId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "Deployment":{ + "type":"structure", + "members":{ + "deploymentId":{"shape":"String"}, + "deploymentStatus":{"shape":"DeploymentStatus"}, + "deploymentType":{"shape":"DeploymentType"}, + "failureReason":{"shape":"EnvironmentError"}, + "isDeploymentComplete":{"shape":"Boolean"}, + "messages":{"shape":"DeploymentMessagesList"} + } + }, + "DeploymentMessage":{"type":"string"}, + "DeploymentMessagesList":{ + "type":"list", + "member":{"shape":"DeploymentMessage"} + }, + "DeploymentProperties":{ + "type":"structure", + "members":{ + "endTimeoutMinutes":{"shape":"DeploymentPropertiesEndTimeoutMinutesInteger"}, + "startTimeoutMinutes":{"shape":"DeploymentPropertiesStartTimeoutMinutesInteger"} + } + }, + "DeploymentPropertiesEndTimeoutMinutesInteger":{ + "type":"integer", + "box":true, + "max":225, + "min":1 + }, + "DeploymentPropertiesStartTimeoutMinutesInteger":{ + "type":"integer", + "box":true, + "max":225, + "min":1 + }, + "DeploymentStatus":{ + "type":"string", + "enum":[ + "IN_PROGRESS", + "SUCCESSFUL", + "FAILED", + "PENDING_DEPLOYMENT" + ] + }, + "DeploymentType":{ + "type":"string", + "enum":[ + "CREATE", + "UPDATE", + "DELETE" + ] + }, + "Description":{ + "type":"string", + "max":2048, + "min":0, + "sensitive":true + }, + "DetailedGlossaryTerm":{ + "type":"structure", + "members":{ + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"} + } + }, + "DetailedGlossaryTerms":{ + "type":"list", + "member":{"shape":"DetailedGlossaryTerm"} + }, + "DomainDescription":{ + "type":"string", + "sensitive":true + }, + "DomainId":{ + "type":"string", + "pattern":"^dzd[-_][a-zA-Z0-9_-]{1,36}$" + }, + "DomainName":{ + "type":"string", + "sensitive":true + }, + "DomainStatus":{ + "type":"string", + "enum":[ + "CREATING", + "AVAILABLE", + "CREATION_FAILED", + "DELETING", + "DELETED", + "DELETION_FAILED" + ] + }, + "DomainSummaries":{ + "type":"list", + "member":{"shape":"DomainSummary"} + }, + "DomainSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "id", + "managedAccountId", + "name", + "status" + ], + "members":{ + "arn":{"shape":"String"}, + "createdAt":{"shape":"CreatedAt"}, + "description":{"shape":"DomainDescription"}, + "id":{"shape":"DomainId"}, + "lastUpdatedAt":{"shape":"UpdatedAt"}, + "managedAccountId":{"shape":"String"}, + "name":{"shape":"DomainName"}, + "portalUrl":{"shape":"String"}, + "status":{"shape":"DomainStatus"} + } + }, + "EnableSetting":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "EnabledRegionList":{ + "type":"list", + "member":{"shape":"RegionName"}, + "min":0 + }, + "EntityId":{"type":"string"}, + "EntityType":{ + "type":"string", + "enum":["ASSET"] + }, + "EnvironmentActionList":{ + "type":"list", + "member":{"shape":"ConfigurableEnvironmentAction"} + }, + "EnvironmentBlueprintConfigurationItem":{ + "type":"structure", + "required":[ + "domainId", + "environmentBlueprintId" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "domainId":{"shape":"DomainId"}, + "enabledRegions":{"shape":"EnabledRegionList"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "manageAccessRoleArn":{"shape":"RoleArn"}, + "provisioningRoleArn":{"shape":"RoleArn"}, + "regionalParameters":{"shape":"RegionalParameterMap"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "EnvironmentBlueprintConfigurations":{ + "type":"list", + "member":{"shape":"EnvironmentBlueprintConfigurationItem"} + }, + "EnvironmentBlueprintId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "EnvironmentBlueprintName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[\\w -]+$" + }, + "EnvironmentBlueprintSummaries":{ + "type":"list", + "member":{"shape":"EnvironmentBlueprintSummary"} + }, + "EnvironmentBlueprintSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "provider", + "provisioningProperties" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"Description"}, + "id":{"shape":"EnvironmentBlueprintId"}, + "name":{"shape":"EnvironmentBlueprintName"}, + "provider":{"shape":"String"}, + "provisioningProperties":{"shape":"ProvisioningProperties"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "EnvironmentError":{ + "type":"structure", + "required":["message"], + "members":{ + "code":{"shape":"String"}, + "message":{"shape":"String"} + } + }, + "EnvironmentId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "EnvironmentName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[\\w -]+$", + "sensitive":true + }, + "EnvironmentParameter":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "value":{"shape":"String"} + } + }, + "EnvironmentParametersList":{ + "type":"list", + "member":{"shape":"EnvironmentParameter"} + }, + "EnvironmentProfileId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "EnvironmentProfileName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[\\w -]+$", + "sensitive":true + }, + "EnvironmentProfileSummaries":{ + "type":"list", + "member":{"shape":"EnvironmentProfileSummary"} + }, + "EnvironmentProfileSummary":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentBlueprintId", + "id", + "name" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "id":{"shape":"EnvironmentProfileId"}, + "name":{"shape":"EnvironmentProfileName"}, + "projectId":{"shape":"ProjectId"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "EnvironmentStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "CREATING", + "UPDATING", + "DELETING", + "CREATE_FAILED", + "UPDATE_FAILED", + "DELETE_FAILED", + "VALIDATION_FAILED", + "SUSPENDED", + "DISABLED", + "EXPIRED", + "DELETED", + "INACCESSIBLE" + ] + }, + "EnvironmentSummaries":{ + "type":"list", + "member":{"shape":"EnvironmentSummary"} + }, + "EnvironmentSummary":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentProfileId", + "name", + "projectId", + "provider" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentProfileId":{"shape":"EnvironmentProfileId"}, + "id":{"shape":"EnvironmentId"}, + "name":{"shape":"EnvironmentName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "status":{"shape":"EnvironmentStatus"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "ErrorMessage":{"type":"string"}, + "ExternalIdentifier":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "FailureCause":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + } + }, + "Filter":{ + "type":"structure", + "required":[ + "attribute", + "value" + ], + "members":{ + "attribute":{"shape":"Attribute"}, + "value":{"shape":"FilterValueString"} + } + }, + "FilterClause":{ + "type":"structure", + "members":{ + "and":{"shape":"FilterList"}, + "filter":{"shape":"Filter"}, + "or":{"shape":"FilterList"} + }, + "union":true + }, + "FilterExpression":{ + "type":"structure", + "required":[ + "expression", + "type" + ], + "members":{ + "expression":{"shape":"FilterExpressionExpressionString"}, + "type":{"shape":"FilterExpressionType"} + } + }, + "FilterExpressionExpressionString":{ + "type":"string", + "max":2048, + "min":1 + }, + "FilterExpressionType":{ + "type":"string", + "enum":[ + "INCLUDE", + "EXCLUDE" + ] + }, + "FilterExpressions":{ + "type":"list", + "member":{"shape":"FilterExpression"} + }, + "FilterList":{ + "type":"list", + "member":{"shape":"FilterClause"}, + "max":100, + "min":1 + }, + "FilterValueString":{ + "type":"string", + "max":128, + "min":1 + }, + "FirstName":{ + "type":"string", + "sensitive":true + }, + "Float":{ + "type":"float", + "box":true + }, + "FormEntryInput":{ + "type":"structure", + "required":[ + "typeIdentifier", + "typeRevision" + ], + "members":{ + "required":{"shape":"Boolean"}, + "typeIdentifier":{"shape":"FormTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + } + }, + "FormEntryOutput":{ + "type":"structure", + "required":[ + "typeName", + "typeRevision" + ], + "members":{ + "required":{"shape":"Boolean"}, + "typeName":{"shape":"FormTypeName"}, + "typeRevision":{"shape":"Revision"} + } + }, + "FormInput":{ + "type":"structure", + "required":["formName"], + "members":{ + "content":{"shape":"FormInputContentString"}, + "formName":{"shape":"FormName"}, + "typeIdentifier":{"shape":"FormTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + }, + "sensitive":true + }, + "FormInputContentString":{ + "type":"string", + "max":75000, + "min":0 + }, + "FormInputList":{ + "type":"list", + "member":{"shape":"FormInput"}, + "max":10, + "min":0, + "sensitive":true + }, + "FormName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(?![0-9_])\\w+$|^_\\w*[a-zA-Z0-9]\\w*$" + }, + "FormOutput":{ + "type":"structure", + "required":["formName"], + "members":{ + "content":{"shape":"String"}, + "formName":{"shape":"FormName"}, + "typeName":{"shape":"FormTypeName"}, + "typeRevision":{"shape":"Revision"} + } + }, + "FormOutputList":{ + "type":"list", + "member":{"shape":"FormOutput"}, + "max":10, + "min":0 + }, + "FormTypeData":{ + "type":"structure", + "required":[ + "domainId", + "name", + "revision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "imports":{"shape":"ImportList"}, + "model":{"shape":"Model"}, + "name":{"shape":"FormTypeName"}, + "originDomainId":{"shape":"DomainId"}, + "originProjectId":{"shape":"ProjectId"}, + "owningProjectId":{"shape":"ProjectId"}, + "revision":{"shape":"Revision"}, + "status":{"shape":"FormTypeStatus"} + } + }, + "FormTypeIdentifier":{ + "type":"string", + "max":385, + "min":1, + "pattern":"^(?!\\.)[\\w\\.]*\\w$" + }, + "FormTypeName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(amazon.datazone.)?(?![0-9_])\\w+$|^_\\w*[a-zA-Z0-9]\\w*$", + "sensitive":true + }, + "FormTypeStatus":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "Forms":{"type":"string"}, + "FormsInputMap":{ + "type":"map", + "key":{"shape":"FormName"}, + "value":{"shape":"FormEntryInput"}, + "max":10, + "min":0 + }, + "FormsOutputMap":{ + "type":"map", + "key":{"shape":"FormName"}, + "value":{"shape":"FormEntryOutput"}, + "max":10, + "min":0 + }, + "GetAssetInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetIdentifier", + "location":"uri", + "locationName":"identifier" + }, + "revision":{ + "shape":"Revision", + "location":"querystring", + "locationName":"revision" + } + } + }, + "GetAssetOutput":{ + "type":"structure", + "required":[ + "domainId", + "formsOutput", + "id", + "name", + "owningProjectId", + "revision", + "typeIdentifier", + "typeRevision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "externalIdentifier":{"shape":"ExternalIdentifier"}, + "firstRevisionCreatedAt":{"shape":"CreatedAt"}, + "firstRevisionCreatedBy":{"shape":"CreatedBy"}, + "formsOutput":{"shape":"FormOutputList"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"AssetId"}, + "listing":{"shape":"AssetListingDetails"}, + "name":{"shape":"AssetName"}, + "owningProjectId":{"shape":"ProjectId"}, + "readOnlyFormsOutput":{"shape":"FormOutputList"}, + "revision":{"shape":"Revision"}, + "typeIdentifier":{"shape":"AssetTypeIdentifier"}, + "typeRevision":{"shape":"Revision"} + } + }, + "GetAssetTypeInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetTypeIdentifier", + "location":"uri", + "locationName":"identifier" + }, + "revision":{ + "shape":"Revision", + "location":"querystring", + "locationName":"revision" + } + } + }, + "GetAssetTypeOutput":{ + "type":"structure", + "required":[ + "domainId", + "formsOutput", + "name", + "owningProjectId", + "revision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "formsOutput":{"shape":"FormsOutputMap"}, + "name":{"shape":"TypeName"}, + "originDomainId":{"shape":"DomainId"}, + "originProjectId":{"shape":"ProjectId"}, + "owningProjectId":{"shape":"ProjectId"}, + "revision":{"shape":"Revision"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetDataSourceInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"DataSourceId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetDataSourceOutput":{ + "type":"structure", + "required":[ + "domainId", + "environmentId", + "id", + "name", + "projectId" + ], + "members":{ + "assetFormsOutput":{"shape":"FormOutputList"}, + "configuration":{"shape":"DataSourceConfigurationOutput"}, + "createdAt":{"shape":"DateTime"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "enableSetting":{"shape":"EnableSetting"}, + "environmentId":{"shape":"EnvironmentId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceId"}, + "lastRunAssetCount":{"shape":"Integer"}, + "lastRunAt":{"shape":"DateTime"}, + "lastRunErrorMessage":{"shape":"DataSourceErrorMessage"}, + "lastRunStatus":{"shape":"DataSourceRunStatus"}, + "name":{"shape":"Name"}, + "projectId":{"shape":"ProjectId"}, + "publishOnImport":{"shape":"Boolean"}, + "recommendation":{"shape":"RecommendationConfiguration"}, + "schedule":{"shape":"ScheduleConfiguration"}, + "status":{"shape":"DataSourceStatus"}, + "type":{"shape":"DataSourceType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "GetDataSourceRunInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"DataSourceRunId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetDataSourceRunOutput":{ + "type":"structure", + "required":[ + "createdAt", + "dataSourceId", + "domainId", + "id", + "projectId", + "status", + "type", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"DateTime"}, + "dataSourceConfigurationSnapshot":{"shape":"String"}, + "dataSourceId":{"shape":"DataSourceId"}, + "domainId":{"shape":"DomainId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceRunId"}, + "projectId":{"shape":"ProjectId"}, + "runStatisticsForAssets":{"shape":"RunStatisticsForAssets"}, + "startedAt":{"shape":"DateTime"}, + "status":{"shape":"DataSourceRunStatus"}, + "stoppedAt":{"shape":"DateTime"}, + "type":{"shape":"DataSourceRunType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "GetDomainInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "identifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetDomainOutput":{ + "type":"structure", + "required":[ + "domainExecutionRole", + "id", + "status" + ], + "members":{ + "arn":{"shape":"String"}, + "createdAt":{"shape":"CreatedAt"}, + "description":{"shape":"String"}, + "domainExecutionRole":{"shape":"RoleArn"}, + "id":{"shape":"DomainId"}, + "kmsKeyIdentifier":{"shape":"KmsKeyArn"}, + "lastUpdatedAt":{"shape":"UpdatedAt"}, + "name":{"shape":"String"}, + "portalUrl":{"shape":"String"}, + "singleSignOn":{"shape":"SingleSignOn"}, + "status":{"shape":"DomainStatus"}, + "tags":{"shape":"Tags"} + } + }, + "GetEnvironmentBlueprintConfigurationInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentBlueprintIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentBlueprintIdentifier":{ + "shape":"EnvironmentBlueprintId", + "location":"uri", + "locationName":"environmentBlueprintIdentifier" + } + } + }, + "GetEnvironmentBlueprintConfigurationOutput":{ + "type":"structure", + "required":[ + "domainId", + "environmentBlueprintId" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "domainId":{"shape":"DomainId"}, + "enabledRegions":{"shape":"EnabledRegionList"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "manageAccessRoleArn":{"shape":"RoleArn"}, + "provisioningRoleArn":{"shape":"RoleArn"}, + "regionalParameters":{"shape":"RegionalParameterMap"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "GetEnvironmentBlueprintInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"EnvironmentBlueprintId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetEnvironmentBlueprintOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "provider", + "provisioningProperties" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "deploymentProperties":{"shape":"DeploymentProperties"}, + "description":{"shape":"Description"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"EnvironmentBlueprintId"}, + "name":{"shape":"EnvironmentBlueprintName"}, + "provider":{"shape":"String"}, + "provisioningProperties":{"shape":"ProvisioningProperties"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "GetEnvironmentInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetEnvironmentOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentProfileId", + "name", + "projectId", + "provider" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "deploymentProperties":{"shape":"DeploymentProperties"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentActions":{"shape":"EnvironmentActionList"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "environmentProfileId":{"shape":"EnvironmentProfileId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"EnvironmentId"}, + "lastDeployment":{"shape":"Deployment"}, + "name":{"shape":"EnvironmentName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "provisionedResources":{"shape":"ResourceList"}, + "provisioningProperties":{"shape":"ProvisioningProperties"}, + "status":{"shape":"EnvironmentStatus"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "GetEnvironmentProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"EnvironmentProfileId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetEnvironmentProfileOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentBlueprintId", + "id", + "name" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "id":{"shape":"EnvironmentProfileId"}, + "name":{"shape":"EnvironmentProfileName"}, + "projectId":{"shape":"ProjectId"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "GetFormTypeInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "formTypeIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "formTypeIdentifier":{ + "shape":"FormTypeIdentifier", + "location":"uri", + "locationName":"formTypeIdentifier" + }, + "revision":{ + "shape":"Revision", + "location":"querystring", + "locationName":"revision" + } + } + }, + "GetFormTypeOutput":{ + "type":"structure", + "required":[ + "domainId", + "model", + "name", + "revision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "imports":{"shape":"ImportList"}, + "model":{"shape":"Model"}, + "name":{"shape":"FormTypeName"}, + "originDomainId":{"shape":"DomainId"}, + "originProjectId":{"shape":"ProjectId"}, + "owningProjectId":{"shape":"ProjectId"}, + "revision":{"shape":"Revision"}, + "status":{"shape":"FormTypeStatus"} + } + }, + "GetGlossaryInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"GlossaryId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetGlossaryOutput":{ + "type":"structure", + "required":[ + "domainId", + "id", + "name", + "owningProjectId", + "status" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"GlossaryDescription"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"GlossaryId"}, + "name":{"shape":"GlossaryName"}, + "owningProjectId":{"shape":"ProjectId"}, + "status":{"shape":"GlossaryStatus"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetGlossaryTermInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"GlossaryTermId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetGlossaryTermOutput":{ + "type":"structure", + "required":[ + "domainId", + "glossaryId", + "id", + "name", + "status" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "glossaryId":{"shape":"GlossaryId"}, + "id":{"shape":"GlossaryTermId"}, + "longDescription":{"shape":"LongDescription"}, + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"}, + "status":{"shape":"GlossaryTermStatus"}, + "termRelations":{"shape":"TermRelations"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetGroupProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "groupIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "groupIdentifier":{ + "shape":"GroupIdentifier", + "location":"uri", + "locationName":"groupIdentifier" + } + } + }, + "GetGroupProfileOutput":{ + "type":"structure", + "members":{ + "domainId":{"shape":"DomainId"}, + "groupName":{"shape":"GroupProfileName"}, + "id":{"shape":"GroupProfileId"}, + "status":{"shape":"GroupProfileStatus"} + } + }, + "GetIamPortalLoginUrlInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + } + } + }, + "GetIamPortalLoginUrlOutput":{ + "type":"structure", + "required":["userProfileId"], + "members":{ + "authCodeUrl":{"shape":"String"}, + "userProfileId":{"shape":"String"} + } + }, + "GetListingInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"ListingId", + "location":"uri", + "locationName":"identifier" + }, + "listingRevision":{ + "shape":"Revision", + "location":"querystring", + "locationName":"listingRevision" + } + } + }, + "GetListingOutput":{ + "type":"structure", + "required":[ + "domainId", + "id", + "listingRevision" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"ListingId"}, + "item":{"shape":"ListingItem"}, + "listingRevision":{"shape":"Revision"}, + "name":{"shape":"ListingName"}, + "status":{"shape":"ListingStatus"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetProjectInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"ProjectId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetProjectOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "id", + "name" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"ProjectId"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "name":{"shape":"ProjectName"} + } + }, + "GetSubscriptionGrantInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionGrantId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetSubscriptionGrantOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "grantedEntity", + "id", + "status", + "subscriptionTargetId", + "updatedAt" + ], + "members":{ + "assets":{"shape":"SubscribedAssets"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "grantedEntity":{"shape":"GrantedEntity"}, + "id":{"shape":"SubscriptionGrantId"}, + "status":{"shape":"SubscriptionGrantOverallStatus"}, + "subscriptionId":{"shape":"SubscriptionId"}, + "subscriptionTargetId":{"shape":"SubscriptionTargetId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetSubscriptionInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetSubscriptionOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "status", + "subscribedListing", + "subscribedPrincipal", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionId"}, + "retainPermissions":{"shape":"Boolean"}, + "status":{"shape":"SubscriptionStatus"}, + "subscribedListing":{"shape":"SubscribedListing"}, + "subscribedPrincipal":{"shape":"SubscribedPrincipal"}, + "subscriptionRequestId":{"shape":"SubscriptionRequestId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetSubscriptionRequestDetailsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionRequestId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetSubscriptionRequestDetailsOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "requestReason", + "status", + "subscribedListings", + "subscribedPrincipals", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "decisionComment":{"shape":"DecisionComment"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionRequestId"}, + "requestReason":{"shape":"RequestReason"}, + "reviewerId":{"shape":"String"}, + "status":{"shape":"SubscriptionRequestStatus"}, + "subscribedListings":{"shape":"GetSubscriptionRequestDetailsOutputSubscribedListingsList"}, + "subscribedPrincipals":{"shape":"GetSubscriptionRequestDetailsOutputSubscribedPrincipalsList"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetSubscriptionRequestDetailsOutputSubscribedListingsList":{ + "type":"list", + "member":{"shape":"SubscribedListing"}, + "max":1, + "min":1 + }, + "GetSubscriptionRequestDetailsOutputSubscribedPrincipalsList":{ + "type":"list", + "member":{"shape":"SubscribedPrincipal"}, + "max":1, + "min":1 + }, + "GetSubscriptionTargetInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"environmentIdentifier" + }, + "identifier":{ + "shape":"SubscriptionTargetId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetSubscriptionTargetOutput":{ + "type":"structure", + "required":[ + "applicableAssetTypes", + "authorizedPrincipals", + "createdAt", + "createdBy", + "domainId", + "environmentId", + "id", + "manageAccessRole", + "name", + "projectId", + "provider", + "subscriptionTargetConfig", + "type" + ], + "members":{ + "applicableAssetTypes":{"shape":"ApplicableAssetTypes"}, + "authorizedPrincipals":{"shape":"AuthorizedPrincipalIdentifiers"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "environmentId":{"shape":"EnvironmentId"}, + "id":{"shape":"SubscriptionTargetId"}, + "manageAccessRole":{"shape":"String"}, + "name":{"shape":"SubscriptionTargetName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "subscriptionTargetConfig":{"shape":"SubscriptionTargetForms"}, + "type":{"shape":"String"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GetUserProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "userIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "type":{ + "shape":"UserProfileType", + "location":"querystring", + "locationName":"type" + }, + "userIdentifier":{ + "shape":"UserIdentifier", + "location":"uri", + "locationName":"userIdentifier" + } + } + }, + "GetUserProfileOutput":{ + "type":"structure", + "members":{ + "details":{"shape":"UserProfileDetails"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"UserProfileId"}, + "status":{"shape":"UserProfileStatus"}, + "type":{"shape":"UserProfileType"} + } + }, + "GlossaryDescription":{ + "type":"string", + "max":4096, + "min":0, + "sensitive":true + }, + "GlossaryId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "GlossaryItem":{ + "type":"structure", + "required":[ + "domainId", + "id", + "name", + "owningProjectId", + "status" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"GlossaryDescription"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"GlossaryId"}, + "name":{"shape":"GlossaryName"}, + "owningProjectId":{"shape":"ProjectId"}, + "status":{"shape":"GlossaryStatus"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GlossaryName":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "GlossaryStatus":{ + "type":"string", + "enum":[ + "DISABLED", + "ENABLED" + ] + }, + "GlossaryTermId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "GlossaryTermItem":{ + "type":"structure", + "required":[ + "domainId", + "glossaryId", + "id", + "name", + "status" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "glossaryId":{"shape":"GlossaryId"}, + "id":{"shape":"GlossaryTermId"}, + "longDescription":{"shape":"LongDescription"}, + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"}, + "status":{"shape":"GlossaryTermStatus"}, + "termRelations":{"shape":"TermRelations"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "GlossaryTermName":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "GlossaryTermStatus":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "GlossaryTerms":{ + "type":"list", + "member":{"shape":"GlossaryTermId"}, + "max":20, + "min":1 + }, + "GlueRunConfigurationInput":{ + "type":"structure", + "required":["relationalFilterConfigurations"], + "members":{ + "dataAccessRole":{"shape":"GlueRunConfigurationInputDataAccessRoleString"}, + "relationalFilterConfigurations":{"shape":"RelationalFilterConfigurations"} + } + }, + "GlueRunConfigurationInputDataAccessRoleString":{ + "type":"string", + "pattern":"^arn:aws[^:]*:iam::\\d{12}:(role|role/service-role)/[\\w+=,.@-]{1,128}$" + }, + "GlueRunConfigurationOutput":{ + "type":"structure", + "required":["relationalFilterConfigurations"], + "members":{ + "accountId":{"shape":"GlueRunConfigurationOutputAccountIdString"}, + "dataAccessRole":{"shape":"GlueRunConfigurationOutputDataAccessRoleString"}, + "region":{"shape":"GlueRunConfigurationOutputRegionString"}, + "relationalFilterConfigurations":{"shape":"RelationalFilterConfigurations"} + } + }, + "GlueRunConfigurationOutputAccountIdString":{ + "type":"string", + "max":12, + "min":12, + "pattern":"^\\d{12}$" + }, + "GlueRunConfigurationOutputDataAccessRoleString":{ + "type":"string", + "pattern":"^arn:aws[^:]*:iam::\\d{12}:(role|role/service-role)/[\\w+=,.@-]{1,128}$" + }, + "GlueRunConfigurationOutputRegionString":{ + "type":"string", + "max":16, + "min":4, + "pattern":"[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]" + }, + "GrantedEntity":{ + "type":"structure", + "members":{ + "listing":{"shape":"ListingRevision"} + }, + "union":true + }, + "GrantedEntityInput":{ + "type":"structure", + "members":{ + "listing":{"shape":"ListingRevisionInput"} + }, + "union":true + }, + "GroupDetails":{ + "type":"structure", + "required":["groupId"], + "members":{ + "groupId":{"shape":"String"} + } + }, + "GroupIdentifier":{ + "type":"string", + "pattern":"(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$|[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\t\\n\\r ]+)" + }, + "GroupProfileId":{ + "type":"string", + "pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" + }, + "GroupProfileName":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"^[a-zA-Z_0-9+=,.@-]+$", + "sensitive":true + }, + "GroupProfileStatus":{ + "type":"string", + "enum":[ + "ASSIGNED", + "NOT_ASSIGNED" + ] + }, + "GroupProfileSummaries":{ + "type":"list", + "member":{"shape":"GroupProfileSummary"} + }, + "GroupProfileSummary":{ + "type":"structure", + "members":{ + "domainId":{"shape":"DomainId"}, + "groupName":{"shape":"GroupProfileName"}, + "id":{"shape":"GroupProfileId"}, + "status":{"shape":"GroupProfileStatus"} + } + }, + "GroupSearchText":{ + "type":"string", + "max":1024, + "min":0, + "sensitive":true + }, + "GroupSearchType":{ + "type":"string", + "enum":[ + "SSO_GROUP", + "DATAZONE_SSO_GROUP" + ] + }, + "IamUserProfileDetails":{ + "type":"structure", + "members":{ + "arn":{"shape":"String"} + } + }, + "Import":{ + "type":"structure", + "required":[ + "name", + "revision" + ], + "members":{ + "name":{"shape":"FormTypeName"}, + "revision":{"shape":"Revision"} + } + }, + "ImportList":{ + "type":"list", + "member":{"shape":"Import"}, + "max":10, + "min":1 + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "InventorySearchScope":{ + "type":"string", + "enum":[ + "ASSET", + "GLOSSARY", + "GLOSSARY_TERM" + ] + }, + "KmsKeyArn":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$" + }, + "LastName":{ + "type":"string", + "sensitive":true + }, + "ListAssetRevisionsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetIdentifier", + "location":"uri", + "locationName":"identifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListAssetRevisionsOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"AssetRevisions"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListDataSourceRunActivitiesInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"DataSourceRunId", + "location":"uri", + "locationName":"identifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "status":{ + "shape":"DataAssetActivityStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListDataSourceRunActivitiesOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"DataSourceRunActivities"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListDataSourceRunsInput":{ + "type":"structure", + "required":[ + "dataSourceIdentifier", + "domainIdentifier" + ], + "members":{ + "dataSourceIdentifier":{ + "shape":"DataSourceId", + "location":"uri", + "locationName":"dataSourceIdentifier" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "status":{ + "shape":"DataSourceRunStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListDataSourceRunsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"DataSourceRunSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListDataSourcesInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "projectIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{ + "shape":"String", + "location":"querystring", + "locationName":"environmentIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "name":{ + "shape":"Name", + "location":"querystring", + "locationName":"name" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "projectIdentifier":{ + "shape":"String", + "location":"querystring", + "locationName":"projectIdentifier" + }, + "status":{ + "shape":"DataSourceStatus", + "location":"querystring", + "locationName":"status" + }, + "type":{ + "shape":"DataSourceType", + "location":"querystring", + "locationName":"type" + } + } + }, + "ListDataSourcesOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"DataSourceSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListDomainsInput":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResultsForListDomains", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "status":{ + "shape":"DomainStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListDomainsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"DomainSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEnvironmentBlueprintConfigurationsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListEnvironmentBlueprintConfigurationsOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"EnvironmentBlueprintConfigurations"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEnvironmentBlueprintsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "managed":{ + "shape":"Boolean", + "location":"querystring", + "locationName":"managed" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "name":{ + "shape":"EnvironmentBlueprintName", + "location":"querystring", + "locationName":"name" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListEnvironmentBlueprintsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"EnvironmentBlueprintSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEnvironmentProfilesInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "awsAccountId":{ + "shape":"AwsAccountId", + "location":"querystring", + "locationName":"awsAccountId" + }, + "awsAccountRegion":{ + "shape":"AwsRegion", + "location":"querystring", + "locationName":"awsAccountRegion" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentBlueprintIdentifier":{ + "shape":"EnvironmentBlueprintId", + "location":"querystring", + "locationName":"environmentBlueprintIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "name":{ + "shape":"EnvironmentProfileName", + "location":"querystring", + "locationName":"name" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "projectIdentifier":{ + "shape":"ProjectId", + "location":"querystring", + "locationName":"projectIdentifier" + } + } + }, + "ListEnvironmentProfilesOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"EnvironmentProfileSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEnvironmentsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "projectIdentifier" + ], + "members":{ + "awsAccountId":{ + "shape":"AwsAccountId", + "location":"querystring", + "locationName":"awsAccountId" + }, + "awsAccountRegion":{ + "shape":"AwsRegion", + "location":"querystring", + "locationName":"awsAccountRegion" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentBlueprintIdentifier":{ + "shape":"EnvironmentBlueprintId", + "location":"querystring", + "locationName":"environmentBlueprintIdentifier" + }, + "environmentProfileIdentifier":{ + "shape":"EnvironmentProfileId", + "location":"querystring", + "locationName":"environmentProfileIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "name":{ + "shape":"String", + "location":"querystring", + "locationName":"name" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "projectIdentifier":{ + "shape":"ProjectId", + "location":"querystring", + "locationName":"projectIdentifier" + }, + "provider":{ + "shape":"String", + "location":"querystring", + "locationName":"provider" + }, + "status":{ + "shape":"EnvironmentStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListEnvironmentsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"EnvironmentSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListNotificationsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "type" + ], + "members":{ + "afterTimestamp":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"afterTimestamp" + }, + "beforeTimestamp":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"beforeTimestamp" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "subjects":{ + "shape":"NotificationSubjects", + "location":"querystring", + "locationName":"subjects" + }, + "taskStatus":{ + "shape":"TaskStatus", + "location":"querystring", + "locationName":"taskStatus" + }, + "type":{ + "shape":"NotificationType", + "location":"querystring", + "locationName":"type" + } + } + }, + "ListNotificationsOutput":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "notifications":{"shape":"NotificationsList"} + } + }, + "ListProjectMembershipsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "projectIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "projectIdentifier":{ + "shape":"ProjectId", + "location":"uri", + "locationName":"projectIdentifier" + }, + "sortBy":{ + "shape":"SortFieldProject", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + } + } + }, + "ListProjectMembershipsOutput":{ + "type":"structure", + "required":["members"], + "members":{ + "members":{"shape":"ProjectMembers"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListProjectsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "groupIdentifier":{ + "shape":"String", + "location":"querystring", + "locationName":"groupIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "name":{ + "shape":"ProjectName", + "location":"querystring", + "locationName":"name" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "userIdentifier":{ + "shape":"String", + "location":"querystring", + "locationName":"userIdentifier" + } + } + }, + "ListProjectsOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"ProjectSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListSubscriptionGrantsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentId":{ + "shape":"EnvironmentId", + "location":"querystring", + "locationName":"environmentId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "sortBy":{ + "shape":"SortKey", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + }, + "subscribedListingId":{ + "shape":"ListingId", + "location":"querystring", + "locationName":"subscribedListingId" + }, + "subscriptionId":{ + "shape":"SubscriptionId", + "location":"querystring", + "locationName":"subscriptionId" + }, + "subscriptionTargetId":{ + "shape":"SubscriptionTargetId", + "location":"querystring", + "locationName":"subscriptionTargetId" + } + } + }, + "ListSubscriptionGrantsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"SubscriptionGrants"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListSubscriptionRequestsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "approverProjectId":{ + "shape":"ProjectId", + "location":"querystring", + "locationName":"approverProjectId" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "owningProjectId":{ + "shape":"ProjectId", + "location":"querystring", + "locationName":"owningProjectId" + }, + "sortBy":{ + "shape":"SortKey", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + }, + "status":{ + "shape":"SubscriptionRequestStatus", + "location":"querystring", + "locationName":"status" + }, + "subscribedListingId":{ + "shape":"ListingId", + "location":"querystring", + "locationName":"subscribedListingId" + } + } + }, + "ListSubscriptionRequestsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"SubscriptionRequests"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListSubscriptionTargetsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"environmentIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "sortBy":{ + "shape":"SortKey", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + } + } + }, + "ListSubscriptionTargetsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"SubscriptionTargets"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListSubscriptionsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "approverProjectId":{ + "shape":"ProjectId", + "location":"querystring", + "locationName":"approverProjectId" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "owningProjectId":{ + "shape":"ProjectId", + "location":"querystring", + "locationName":"owningProjectId" + }, + "sortBy":{ + "shape":"SortKey", + "location":"querystring", + "locationName":"sortBy" + }, + "sortOrder":{ + "shape":"SortOrder", + "location":"querystring", + "locationName":"sortOrder" + }, + "status":{ + "shape":"SubscriptionStatus", + "location":"querystring", + "locationName":"status" + }, + "subscribedListingId":{ + "shape":"ListingId", + "location":"querystring", + "locationName":"subscribedListingId" + }, + "subscriptionRequestIdentifier":{ + "shape":"SubscriptionRequestId", + "location":"querystring", + "locationName":"subscriptionRequestIdentifier" + } + } + }, + "ListSubscriptionsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"Subscriptions"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"Tags"} + } + }, + "ListingId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "ListingItem":{ + "type":"structure", + "members":{ + "assetListing":{"shape":"AssetListing"} + }, + "union":true + }, + "ListingName":{ + "type":"string", + "max":64, + "min":1 + }, + "ListingRevision":{ + "type":"structure", + "required":[ + "id", + "revision" + ], + "members":{ + "id":{"shape":"ListingId"}, + "revision":{"shape":"Revision"} + } + }, + "ListingRevisionInput":{ + "type":"structure", + "required":[ + "identifier", + "revision" + ], + "members":{ + "identifier":{"shape":"ListingId"}, + "revision":{"shape":"Revision"} + } + }, + "ListingStatus":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "INACTIVE" + ] + }, + "LongDescription":{ + "type":"string", + "max":4096, + "min":0, + "sensitive":true + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "MaxResultsForListDomains":{ + "type":"integer", + "box":true, + "max":25, + "min":1 + }, + "Member":{ + "type":"structure", + "members":{ + "groupIdentifier":{"shape":"String"}, + "userIdentifier":{"shape":"String"} + }, + "union":true + }, + "MemberDetails":{ + "type":"structure", + "members":{ + "group":{"shape":"GroupDetails"}, + "user":{"shape":"UserDetails"} + }, + "union":true + }, + "Message":{ + "type":"string", + "max":16384, + "min":0, + "sensitive":true + }, + "MetadataMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "Model":{ + "type":"structure", + "members":{ + "smithy":{"shape":"Smithy"} + }, + "sensitive":true, + "union":true + }, + "Name":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "NotificationOutput":{ + "type":"structure", + "required":[ + "actionLink", + "creationTimestamp", + "domainIdentifier", + "identifier", + "lastUpdatedTimestamp", + "message", + "title", + "topic", + "type" + ], + "members":{ + "actionLink":{"shape":"ActionLink"}, + "creationTimestamp":{"shape":"Timestamp"}, + "domainIdentifier":{"shape":"DomainId"}, + "identifier":{"shape":"TaskId"}, + "lastUpdatedTimestamp":{"shape":"Timestamp"}, + "message":{"shape":"Message"}, + "metadata":{"shape":"MetadataMap"}, + "status":{"shape":"TaskStatus"}, + "title":{"shape":"Title"}, + "topic":{"shape":"Topic"}, + "type":{"shape":"NotificationType"} + } + }, + "NotificationResource":{ + "type":"structure", + "required":[ + "id", + "type" + ], + "members":{ + "id":{"shape":"String"}, + "name":{"shape":"String"}, + "type":{"shape":"NotificationResourceType"} + } + }, + "NotificationResourceType":{ + "type":"string", + "enum":["PROJECT"] + }, + "NotificationRole":{ + "type":"string", + "enum":[ + "PROJECT_OWNER", + "PROJECT_CONTRIBUTOR", + "PROJECT_VIEWER", + "DOMAIN_OWNER", + "PROJECT_SUBSCRIBER" + ] + }, + "NotificationSubjects":{ + "type":"list", + "member":{"shape":"String"} + }, + "NotificationType":{ + "type":"string", + "enum":[ + "TASK", + "EVENT" + ] + }, + "NotificationsList":{ + "type":"list", + "member":{"shape":"NotificationOutput"} + }, + "PaginationToken":{ + "type":"string", + "max":8192, + "min":1 + }, + "PredictionChoices":{ + "type":"list", + "member":{"shape":"Integer"} + }, + "PredictionConfiguration":{ + "type":"structure", + "members":{ + "businessNameGeneration":{"shape":"BusinessNameGenerationConfiguration"} + } + }, + "ProjectId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "ProjectMember":{ + "type":"structure", + "required":[ + "designation", + "memberDetails" + ], + "members":{ + "designation":{"shape":"UserDesignation"}, + "memberDetails":{"shape":"MemberDetails"} + } + }, + "ProjectMembers":{ + "type":"list", + "member":{"shape":"ProjectMember"} + }, + "ProjectName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[\\w -]+$", + "sensitive":true + }, + "ProjectSummaries":{ + "type":"list", + "member":{"shape":"ProjectSummary"} + }, + "ProjectSummary":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "id", + "name" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"ProjectId"}, + "name":{"shape":"ProjectName"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "ProvisioningProperties":{ + "type":"structure", + "members":{ + "cloudFormation":{"shape":"CloudFormationProperties"} + }, + "union":true + }, + "PutEnvironmentBlueprintConfigurationInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "enabledRegions", + "environmentBlueprintIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "enabledRegions":{"shape":"EnabledRegionList"}, + "environmentBlueprintIdentifier":{ + "shape":"EnvironmentBlueprintId", + "location":"uri", + "locationName":"environmentBlueprintIdentifier" + }, + "manageAccessRoleArn":{"shape":"RoleArn"}, + "provisioningRoleArn":{"shape":"RoleArn"}, + "regionalParameters":{"shape":"RegionalParameterMap"} + } + }, + "PutEnvironmentBlueprintConfigurationOutput":{ + "type":"structure", + "required":[ + "domainId", + "environmentBlueprintId" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "domainId":{"shape":"DomainId"}, + "enabledRegions":{"shape":"EnabledRegionList"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "manageAccessRoleArn":{"shape":"RoleArn"}, + "provisioningRoleArn":{"shape":"RoleArn"}, + "regionalParameters":{"shape":"RegionalParameterMap"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"} + } + }, + "RecommendationConfiguration":{ + "type":"structure", + "members":{ + "enableBusinessNameGeneration":{"shape":"Boolean"} + } + }, + "RedshiftClusterStorage":{ + "type":"structure", + "required":["clusterName"], + "members":{ + "clusterName":{"shape":"RedshiftClusterStorageClusterNameString"} + } + }, + "RedshiftClusterStorageClusterNameString":{ + "type":"string", + "max":63, + "min":1, + "pattern":"^[0-9a-z].[a-z0-9\\-]*$" + }, + "RedshiftCredentialConfiguration":{ + "type":"structure", + "required":["secretManagerArn"], + "members":{ + "secretManagerArn":{"shape":"RedshiftCredentialConfigurationSecretManagerArnString"} + } + }, + "RedshiftCredentialConfigurationSecretManagerArnString":{ + "type":"string", + "max":256, + "min":0, + "pattern":"^arn:aws[^:]*:secretsmanager:[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]:\\d{12}:secret:.*$" + }, + "RedshiftRunConfigurationInput":{ + "type":"structure", + "required":[ + "redshiftCredentialConfiguration", + "redshiftStorage", + "relationalFilterConfigurations" + ], + "members":{ + "dataAccessRole":{"shape":"RedshiftRunConfigurationInputDataAccessRoleString"}, + "redshiftCredentialConfiguration":{"shape":"RedshiftCredentialConfiguration"}, + "redshiftStorage":{"shape":"RedshiftStorage"}, + "relationalFilterConfigurations":{"shape":"RelationalFilterConfigurations"} + } + }, + "RedshiftRunConfigurationInputDataAccessRoleString":{ + "type":"string", + "pattern":"^arn:aws[^:]*:iam::\\d{12}:(role|role/service-role)/[\\w+=,.@-]{1,128}$" + }, + "RedshiftRunConfigurationOutput":{ + "type":"structure", + "required":[ + "redshiftCredentialConfiguration", + "redshiftStorage", + "relationalFilterConfigurations" + ], + "members":{ + "accountId":{"shape":"RedshiftRunConfigurationOutputAccountIdString"}, + "dataAccessRole":{"shape":"RedshiftRunConfigurationOutputDataAccessRoleString"}, + "redshiftCredentialConfiguration":{"shape":"RedshiftCredentialConfiguration"}, + "redshiftStorage":{"shape":"RedshiftStorage"}, + "region":{"shape":"RedshiftRunConfigurationOutputRegionString"}, + "relationalFilterConfigurations":{"shape":"RelationalFilterConfigurations"} + } + }, + "RedshiftRunConfigurationOutputAccountIdString":{ + "type":"string", + "max":12, + "min":12, + "pattern":"^\\d{12}$" + }, + "RedshiftRunConfigurationOutputDataAccessRoleString":{ + "type":"string", + "pattern":"^arn:aws[^:]*:iam::\\d{12}:(role|role/service-role)/[\\w+=,.@-]{1,128}$" + }, + "RedshiftRunConfigurationOutputRegionString":{ + "type":"string", + "max":16, + "min":4, + "pattern":"[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]" + }, + "RedshiftServerlessStorage":{ + "type":"structure", + "required":["workgroupName"], + "members":{ + "workgroupName":{"shape":"RedshiftServerlessStorageWorkgroupNameString"} + } + }, + "RedshiftServerlessStorageWorkgroupNameString":{ + "type":"string", + "max":64, + "min":3, + "pattern":"^[a-z0-9-]+$" + }, + "RedshiftStorage":{ + "type":"structure", + "members":{ + "redshiftClusterSource":{"shape":"RedshiftClusterStorage"}, + "redshiftServerlessSource":{"shape":"RedshiftServerlessStorage"} + }, + "union":true + }, + "RegionName":{ + "type":"string", + "max":16, + "min":4, + "pattern":"^[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]$" + }, + "RegionalParameter":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "RegionalParameterMap":{ + "type":"map", + "key":{"shape":"RegionName"}, + "value":{"shape":"RegionalParameter"} + }, + "RejectChoice":{ + "type":"structure", + "members":{ + "predictionChoices":{"shape":"PredictionChoices"}, + "predictionTarget":{"shape":"String"} + } + }, + "RejectChoices":{ + "type":"list", + "member":{"shape":"RejectChoice"} + }, + "RejectPredictionsInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"AssetIdentifier", + "location":"uri", + "locationName":"identifier" + }, + "rejectChoices":{"shape":"RejectChoices"}, + "rejectRule":{"shape":"RejectRule"}, + "revision":{ + "shape":"Revision", + "location":"querystring", + "locationName":"revision" + } + } + }, + "RejectPredictionsOutput":{ + "type":"structure", + "required":[ + "assetId", + "assetRevision", + "domainId" + ], + "members":{ + "assetId":{"shape":"AssetId"}, + "assetRevision":{"shape":"Revision"}, + "domainId":{"shape":"DomainId"} + } + }, + "RejectRule":{ + "type":"structure", + "members":{ + "rule":{"shape":"RejectRuleBehavior"}, + "threshold":{"shape":"Float"} + } + }, + "RejectRuleBehavior":{ + "type":"string", + "enum":[ + "ALL", + "NONE" + ] + }, + "RejectSubscriptionRequestInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "decisionComment":{"shape":"DecisionComment"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionRequestId", + "location":"uri", + "locationName":"identifier" + } + } + }, + "RejectSubscriptionRequestOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "requestReason", + "status", + "subscribedListings", + "subscribedPrincipals", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "decisionComment":{"shape":"DecisionComment"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionRequestId"}, + "requestReason":{"shape":"RequestReason"}, + "reviewerId":{"shape":"String"}, + "status":{"shape":"SubscriptionRequestStatus"}, + "subscribedListings":{"shape":"RejectSubscriptionRequestOutputSubscribedListingsList"}, + "subscribedPrincipals":{"shape":"RejectSubscriptionRequestOutputSubscribedPrincipalsList"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "RejectSubscriptionRequestOutputSubscribedListingsList":{ + "type":"list", + "member":{"shape":"SubscribedListing"}, + "max":1, + "min":1 + }, + "RejectSubscriptionRequestOutputSubscribedPrincipalsList":{ + "type":"list", + "member":{"shape":"SubscribedPrincipal"}, + "max":1, + "min":1 + }, + "RelationalFilterConfiguration":{ + "type":"structure", + "required":["databaseName"], + "members":{ + "databaseName":{"shape":"RelationalFilterConfigurationDatabaseNameString"}, + "filterExpressions":{"shape":"FilterExpressions"}, + "schemaName":{"shape":"RelationalFilterConfigurationSchemaNameString"} + } + }, + "RelationalFilterConfigurationDatabaseNameString":{ + "type":"string", + "max":128, + "min":1 + }, + "RelationalFilterConfigurationSchemaNameString":{ + "type":"string", + "max":128, + "min":1 + }, + "RelationalFilterConfigurations":{ + "type":"list", + "member":{"shape":"RelationalFilterConfiguration"} + }, + "RequestReason":{ + "type":"string", + "max":4096, + "min":1, + "sensitive":true + }, + "Resource":{ + "type":"structure", + "required":[ + "type", + "value" + ], + "members":{ + "name":{"shape":"String"}, + "provider":{"shape":"String"}, + "type":{"shape":"String"}, + "value":{"shape":"String"} + } + }, + "ResourceList":{ + "type":"list", + "member":{"shape":"Resource"} + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "Revision":{ + "type":"string", + "max":64, + "min":1 + }, + "RevokeSubscriptionInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionId", + "location":"uri", + "locationName":"identifier" + }, + "retainPermissions":{"shape":"Boolean"} + } + }, + "RevokeSubscriptionOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "status", + "subscribedListing", + "subscribedPrincipal", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionId"}, + "retainPermissions":{"shape":"Boolean"}, + "status":{"shape":"SubscriptionStatus"}, + "subscribedListing":{"shape":"SubscribedListing"}, + "subscribedPrincipal":{"shape":"SubscribedPrincipal"}, + "subscriptionRequestId":{"shape":"SubscriptionRequestId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "RoleArn":{ + "type":"string", + "pattern":"^arn:aws[^:]*:iam::\\d{12}:(role|role/service-role)/[\\w+=,.@-]*$" + }, + "RunStatisticsForAssets":{ + "type":"structure", + "members":{ + "added":{"shape":"Integer"}, + "failed":{"shape":"Integer"}, + "skipped":{"shape":"Integer"}, + "unchanged":{"shape":"Integer"}, + "updated":{"shape":"Integer"} + } + }, + "ScheduleConfiguration":{ + "type":"structure", + "members":{ + "schedule":{"shape":"CronString"}, + "timezone":{"shape":"Timezone"} + }, + "sensitive":true + }, + "SearchGroupProfilesInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "groupType" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "groupType":{"shape":"GroupSearchType"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"PaginationToken"}, + "searchText":{"shape":"GroupSearchText"} + } + }, + "SearchGroupProfilesOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"GroupProfileSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "SearchInItem":{ + "type":"structure", + "required":["attribute"], + "members":{ + "attribute":{"shape":"Attribute"} + } + }, + "SearchInList":{ + "type":"list", + "member":{"shape":"SearchInItem"}, + "max":10, + "min":1 + }, + "SearchInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "searchScope" + ], + "members":{ + "additionalAttributes":{"shape":"SearchOutputAdditionalAttributes"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "filters":{"shape":"FilterClause"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"PaginationToken"}, + "owningProjectIdentifier":{"shape":"ProjectId"}, + "searchIn":{"shape":"SearchInList"}, + "searchScope":{"shape":"InventorySearchScope"}, + "searchText":{"shape":"SearchText"}, + "sort":{"shape":"SearchSort"} + } + }, + "SearchInventoryResultItem":{ + "type":"structure", + "members":{ + "assetItem":{"shape":"AssetItem"}, + "dataProductItem":{"shape":"DataProductSummary"}, + "glossaryItem":{"shape":"GlossaryItem"}, + "glossaryTermItem":{"shape":"GlossaryTermItem"} + }, + "union":true + }, + "SearchInventoryResultItems":{ + "type":"list", + "member":{"shape":"SearchInventoryResultItem"} + }, + "SearchListingsInput":{ + "type":"structure", + "required":["domainIdentifier"], + "members":{ + "additionalAttributes":{"shape":"SearchOutputAdditionalAttributes"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "filters":{"shape":"FilterClause"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"PaginationToken"}, + "searchIn":{"shape":"SearchInList"}, + "searchText":{"shape":"String"}, + "sort":{"shape":"SearchSort"} + } + }, + "SearchListingsOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"SearchResultItems"}, + "nextToken":{"shape":"PaginationToken"}, + "totalMatchCount":{"shape":"Integer"} + } + }, + "SearchOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"SearchInventoryResultItems"}, + "nextToken":{"shape":"PaginationToken"}, + "totalMatchCount":{"shape":"Integer"} + } + }, + "SearchOutputAdditionalAttribute":{ + "type":"string", + "enum":["FORMS"] + }, + "SearchOutputAdditionalAttributes":{ + "type":"list", + "member":{"shape":"SearchOutputAdditionalAttribute"} + }, + "SearchResultItem":{ + "type":"structure", + "members":{ + "assetListing":{"shape":"AssetListingItem"} + }, + "union":true + }, + "SearchResultItems":{ + "type":"list", + "member":{"shape":"SearchResultItem"} + }, + "SearchSort":{ + "type":"structure", + "required":["attribute"], + "members":{ + "attribute":{"shape":"Attribute"}, + "order":{"shape":"SortOrder"} + } + }, + "SearchText":{ + "type":"string", + "max":4096, + "min":1 + }, + "SearchTypesInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "managed", + "searchScope" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "filters":{"shape":"FilterClause"}, + "managed":{"shape":"Boolean"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"PaginationToken"}, + "searchIn":{"shape":"SearchInList"}, + "searchScope":{"shape":"TypesSearchScope"}, + "searchText":{"shape":"SearchText"}, + "sort":{"shape":"SearchSort"} + } + }, + "SearchTypesOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"SearchTypesResultItems"}, + "nextToken":{"shape":"PaginationToken"}, + "totalMatchCount":{"shape":"Integer"} + } + }, + "SearchTypesResultItem":{ + "type":"structure", + "members":{ + "assetTypeItem":{"shape":"AssetTypeItem"}, + "formTypeItem":{"shape":"FormTypeData"} + }, + "union":true + }, + "SearchTypesResultItems":{ + "type":"list", + "member":{"shape":"SearchTypesResultItem"} + }, + "SearchUserProfilesInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "userType" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"PaginationToken"}, + "searchText":{"shape":"UserSearchText"}, + "userType":{"shape":"UserSearchType"} + } + }, + "SearchUserProfilesOutput":{ + "type":"structure", + "members":{ + "items":{"shape":"UserProfileSummaries"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "ShortDescription":{ + "type":"string", + "max":1024, + "min":0, + "sensitive":true + }, + "SingleSignOn":{ + "type":"structure", + "members":{ + "type":{"shape":"AuthType"}, + "userAssignment":{"shape":"UserAssignment"} + } + }, + "Smithy":{ + "type":"string", + "max":10000, + "min":1 + }, + "SortFieldProject":{ + "type":"string", + "enum":["NAME"] + }, + "SortKey":{ + "type":"string", + "enum":[ + "CREATED_AT", + "UPDATED_AT" + ] + }, + "SortOrder":{ + "type":"string", + "enum":[ + "ASCENDING", + "DESCENDING" + ] + }, + "SsoUserProfileDetails":{ + "type":"structure", + "members":{ + "firstName":{"shape":"FirstName"}, + "lastName":{"shape":"LastName"}, + "username":{"shape":"UserProfileName"} + } + }, + "StartDataSourceRunInput":{ + "type":"structure", + "required":[ + "dataSourceIdentifier", + "domainIdentifier" + ], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "dataSourceIdentifier":{ + "shape":"DataSourceId", + "location":"uri", + "locationName":"dataSourceIdentifier" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + } + } + }, + "StartDataSourceRunOutput":{ + "type":"structure", + "required":[ + "createdAt", + "dataSourceId", + "domainId", + "id", + "projectId", + "status", + "type", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"DateTime"}, + "dataSourceConfigurationSnapshot":{"shape":"String"}, + "dataSourceId":{"shape":"DataSourceId"}, + "domainId":{"shape":"DomainId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceRunId"}, + "projectId":{"shape":"ProjectId"}, + "runStatisticsForAssets":{"shape":"RunStatisticsForAssets"}, + "startedAt":{"shape":"DateTime"}, + "status":{"shape":"DataSourceRunStatus"}, + "stoppedAt":{"shape":"DateTime"}, + "type":{"shape":"DataSourceRunType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "String":{"type":"string"}, + "SubscribedAsset":{ + "type":"structure", + "required":[ + "assetId", + "assetRevision", + "status" + ], + "members":{ + "assetId":{"shape":"AssetId"}, + "assetRevision":{"shape":"Revision"}, + "failureCause":{"shape":"FailureCause"}, + "failureTimestamp":{"shape":"Timestamp"}, + "grantedTimestamp":{"shape":"Timestamp"}, + "status":{"shape":"SubscriptionGrantStatus"}, + "targetName":{"shape":"String"} + } + }, + "SubscribedAssetListing":{ + "type":"structure", + "members":{ + "entityId":{"shape":"AssetId"}, + "entityRevision":{"shape":"Revision"}, + "entityType":{"shape":"TypeName"}, + "forms":{"shape":"Forms"}, + "glossaryTerms":{"shape":"DetailedGlossaryTerms"} + } + }, + "SubscribedAssets":{ + "type":"list", + "member":{"shape":"SubscribedAsset"} + }, + "SubscribedListing":{ + "type":"structure", + "required":[ + "description", + "id", + "item", + "name", + "ownerProjectId" + ], + "members":{ + "description":{"shape":"Description"}, + "id":{"shape":"ListingId"}, + "item":{"shape":"SubscribedListingItem"}, + "name":{"shape":"ListingName"}, + "ownerProjectId":{"shape":"ProjectId"}, + "ownerProjectName":{"shape":"String"}, + "revision":{"shape":"Revision"} + } + }, + "SubscribedListingInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "identifier":{"shape":"ListingId"} + } + }, + "SubscribedListingInputs":{ + "type":"list", + "member":{"shape":"SubscribedListingInput"}, + "max":1, + "min":1 + }, + "SubscribedListingItem":{ + "type":"structure", + "members":{ + "assetListing":{"shape":"SubscribedAssetListing"} + }, + "union":true + }, + "SubscribedPrincipal":{ + "type":"structure", + "members":{ + "project":{"shape":"SubscribedProject"} + }, + "union":true + }, + "SubscribedPrincipalInput":{ + "type":"structure", + "members":{ + "project":{"shape":"SubscribedProjectInput"} + }, + "union":true + }, + "SubscribedPrincipalInputs":{ + "type":"list", + "member":{"shape":"SubscribedPrincipalInput"}, + "max":1, + "min":1 + }, + "SubscribedProject":{ + "type":"structure", + "members":{ + "id":{"shape":"ProjectId"}, + "name":{"shape":"ProjectName"} + } + }, + "SubscribedProjectInput":{ + "type":"structure", + "members":{ + "identifier":{"shape":"ProjectId"} + } + }, + "SubscriptionGrantId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "SubscriptionGrantOverallStatus":{ + "type":"string", + "enum":[ + "PENDING", + "IN_PROGRESS", + "GRANT_FAILED", + "REVOKE_FAILED", + "GRANT_AND_REVOKE_FAILED", + "COMPLETED", + "INACCESSIBLE" + ] + }, + "SubscriptionGrantStatus":{ + "type":"string", + "enum":[ + "GRANT_PENDING", + "REVOKE_PENDING", + "GRANT_IN_PROGRESS", + "REVOKE_IN_PROGRESS", + "GRANTED", + "REVOKED", + "GRANT_FAILED", + "REVOKE_FAILED" + ] + }, + "SubscriptionGrantSummary":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "grantedEntity", + "id", + "status", + "subscriptionTargetId", + "updatedAt" + ], + "members":{ + "assets":{"shape":"SubscribedAssets"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "grantedEntity":{"shape":"GrantedEntity"}, + "id":{"shape":"SubscriptionGrantId"}, + "status":{"shape":"SubscriptionGrantOverallStatus"}, + "subscriptionId":{"shape":"SubscriptionId"}, + "subscriptionTargetId":{"shape":"SubscriptionTargetId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "SubscriptionGrants":{ + "type":"list", + "member":{"shape":"SubscriptionGrantSummary"} + }, + "SubscriptionId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "SubscriptionRequestId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "SubscriptionRequestStatus":{ + "type":"string", + "enum":[ + "PENDING", + "ACCEPTED", + "REJECTED" + ] + }, + "SubscriptionRequestSummary":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "requestReason", + "status", + "subscribedListings", + "subscribedPrincipals", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "decisionComment":{"shape":"DecisionComment"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionRequestId"}, + "requestReason":{"shape":"RequestReason"}, + "reviewerId":{"shape":"String"}, + "status":{"shape":"SubscriptionRequestStatus"}, + "subscribedListings":{"shape":"SubscriptionRequestSummarySubscribedListingsList"}, + "subscribedPrincipals":{"shape":"SubscriptionRequestSummarySubscribedPrincipalsList"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "SubscriptionRequestSummarySubscribedListingsList":{ + "type":"list", + "member":{"shape":"SubscribedListing"}, + "max":1, + "min":1 + }, + "SubscriptionRequestSummarySubscribedPrincipalsList":{ + "type":"list", + "member":{"shape":"SubscribedPrincipal"}, + "max":1, + "min":1 + }, + "SubscriptionRequests":{ + "type":"list", + "member":{"shape":"SubscriptionRequestSummary"} + }, + "SubscriptionStatus":{ + "type":"string", + "enum":[ + "APPROVED", + "REVOKED", + "CANCELLED" + ] + }, + "SubscriptionSummary":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "status", + "subscribedListing", + "subscribedPrincipal", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionId"}, + "retainPermissions":{"shape":"Boolean"}, + "status":{"shape":"SubscriptionStatus"}, + "subscribedListing":{"shape":"SubscribedListing"}, + "subscribedPrincipal":{"shape":"SubscribedPrincipal"}, + "subscriptionRequestId":{"shape":"SubscriptionRequestId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "SubscriptionTargetForm":{ + "type":"structure", + "required":[ + "content", + "formName" + ], + "members":{ + "content":{"shape":"String"}, + "formName":{"shape":"FormName"} + } + }, + "SubscriptionTargetForms":{ + "type":"list", + "member":{"shape":"SubscriptionTargetForm"} + }, + "SubscriptionTargetId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "SubscriptionTargetName":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "SubscriptionTargetSummary":{ + "type":"structure", + "required":[ + "applicableAssetTypes", + "authorizedPrincipals", + "createdAt", + "createdBy", + "domainId", + "environmentId", + "id", + "manageAccessRole", + "name", + "projectId", + "provider", + "subscriptionTargetConfig", + "type" + ], + "members":{ + "applicableAssetTypes":{"shape":"ApplicableAssetTypes"}, + "authorizedPrincipals":{"shape":"AuthorizedPrincipalIdentifiers"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "environmentId":{"shape":"EnvironmentId"}, + "id":{"shape":"SubscriptionTargetId"}, + "manageAccessRole":{"shape":"String"}, + "name":{"shape":"SubscriptionTargetName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "subscriptionTargetConfig":{"shape":"SubscriptionTargetForms"}, + "type":{"shape":"String"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "SubscriptionTargets":{ + "type":"list", + "member":{"shape":"SubscriptionTargetSummary"} + }, + "Subscriptions":{ + "type":"list", + "member":{"shape":"SubscriptionSummary"} + }, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[\\w \\.:/=+@-]+$" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"} + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"Tags"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0, + "pattern":"^[\\w \\.:/=+@-]*$" + }, + "Tags":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + }, + "TaskId":{ + "type":"string", + "pattern":"^[a-zA-Z0-9_-]{1,36}$" + }, + "TaskStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "INACTIVE" + ] + }, + "TermRelations":{ + "type":"structure", + "members":{ + "classifies":{"shape":"TermRelationsClassifiesList"}, + "isA":{"shape":"TermRelationsIsAList"} + } + }, + "TermRelationsClassifiesList":{ + "type":"list", + "member":{"shape":"GlossaryTermId"}, + "max":10, + "min":1 + }, + "TermRelationsIsAList":{ + "type":"list", + "member":{"shape":"GlossaryTermId"}, + "max":10, + "min":1 + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":false} + }, + "Timestamp":{"type":"timestamp"}, + "Timezone":{ + "type":"string", + "enum":[ + "UTC", + "AFRICA_JOHANNESBURG", + "AMERICA_MONTREAL", + "AMERICA_SAO_PAULO", + "ASIA_BAHRAIN", + "ASIA_BANGKOK", + "ASIA_CALCUTTA", + "ASIA_DUBAI", + "ASIA_HONG_KONG", + "ASIA_JAKARTA", + "ASIA_KUALA_LUMPUR", + "ASIA_SEOUL", + "ASIA_SHANGHAI", + "ASIA_SINGAPORE", + "ASIA_TAIPEI", + "ASIA_TOKYO", + "AUSTRALIA_MELBOURNE", + "AUSTRALIA_SYDNEY", + "CANADA_CENTRAL", + "CET", + "CST6CDT", + "ETC_GMT", + "ETC_GMT0", + "ETC_GMT_ADD_0", + "ETC_GMT_ADD_1", + "ETC_GMT_ADD_10", + "ETC_GMT_ADD_11", + "ETC_GMT_ADD_12", + "ETC_GMT_ADD_2", + "ETC_GMT_ADD_3", + "ETC_GMT_ADD_4", + "ETC_GMT_ADD_5", + "ETC_GMT_ADD_6", + "ETC_GMT_ADD_7", + "ETC_GMT_ADD_8", + "ETC_GMT_ADD_9", + "ETC_GMT_NEG_0", + "ETC_GMT_NEG_1", + "ETC_GMT_NEG_10", + "ETC_GMT_NEG_11", + "ETC_GMT_NEG_12", + "ETC_GMT_NEG_13", + "ETC_GMT_NEG_14", + "ETC_GMT_NEG_2", + "ETC_GMT_NEG_3", + "ETC_GMT_NEG_4", + "ETC_GMT_NEG_5", + "ETC_GMT_NEG_6", + "ETC_GMT_NEG_7", + "ETC_GMT_NEG_8", + "ETC_GMT_NEG_9", + "EUROPE_DUBLIN", + "EUROPE_LONDON", + "EUROPE_PARIS", + "EUROPE_STOCKHOLM", + "EUROPE_ZURICH", + "ISRAEL", + "MEXICO_GENERAL", + "MST7MDT", + "PACIFIC_AUCKLAND", + "US_CENTRAL", + "US_EASTERN", + "US_MOUNTAIN", + "US_PACIFIC" + ] + }, + "Title":{ + "type":"string", + "max":1000, + "min":0, + "sensitive":true + }, + "Topic":{ + "type":"structure", + "required":[ + "resource", + "role", + "subject" + ], + "members":{ + "resource":{"shape":"NotificationResource"}, + "role":{"shape":"NotificationRole"}, + "subject":{"shape":"String"} + } + }, + "TypeName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[^\\.]*" + }, + "TypesSearchScope":{ + "type":"string", + "enum":[ + "ASSET_TYPE", + "FORM_TYPE" + ] + }, + "UnauthorizedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":401, + "senderFault":true + }, + "exception":true + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateDataSourceInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "assetFormsInput":{"shape":"FormInputList"}, + "configuration":{"shape":"DataSourceConfigurationInput"}, + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "enableSetting":{"shape":"EnableSetting"}, + "identifier":{ + "shape":"DataSourceId", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"Name"}, + "publishOnImport":{"shape":"Boolean"}, + "recommendation":{"shape":"RecommendationConfiguration"}, + "schedule":{"shape":"ScheduleConfiguration"} + } + }, + "UpdateDataSourceOutput":{ + "type":"structure", + "required":[ + "domainId", + "environmentId", + "id", + "name", + "projectId" + ], + "members":{ + "assetFormsOutput":{"shape":"FormOutputList"}, + "configuration":{"shape":"DataSourceConfigurationOutput"}, + "createdAt":{"shape":"DateTime"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "enableSetting":{"shape":"EnableSetting"}, + "environmentId":{"shape":"EnvironmentId"}, + "errorMessage":{"shape":"DataSourceErrorMessage"}, + "id":{"shape":"DataSourceId"}, + "lastRunAt":{"shape":"DateTime"}, + "lastRunErrorMessage":{"shape":"DataSourceErrorMessage"}, + "lastRunStatus":{"shape":"DataSourceRunStatus"}, + "name":{"shape":"Name"}, + "projectId":{"shape":"ProjectId"}, + "publishOnImport":{"shape":"Boolean"}, + "recommendation":{"shape":"RecommendationConfiguration"}, + "schedule":{"shape":"ScheduleConfiguration"}, + "status":{"shape":"DataSourceStatus"}, + "type":{"shape":"DataSourceType"}, + "updatedAt":{"shape":"DateTime"} + } + }, + "UpdateDomainInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "clientToken":{ + "shape":"String", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + }, + "description":{"shape":"String"}, + "domainExecutionRole":{"shape":"RoleArn"}, + "identifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"String"}, + "singleSignOn":{"shape":"SingleSignOn"} + } + }, + "UpdateDomainOutput":{ + "type":"structure", + "required":["id"], + "members":{ + "description":{"shape":"String"}, + "domainExecutionRole":{"shape":"RoleArn"}, + "id":{"shape":"DomainId"}, + "lastUpdatedAt":{"shape":"UpdatedAt"}, + "name":{"shape":"String"}, + "singleSignOn":{"shape":"SingleSignOn"} + } + }, + "UpdateEnvironmentInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "description":{"shape":"String"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "identifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"String"} + } + }, + "UpdateEnvironmentOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentProfileId", + "name", + "projectId", + "provider" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "deploymentProperties":{"shape":"DeploymentProperties"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentActions":{"shape":"EnvironmentActionList"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "environmentProfileId":{"shape":"EnvironmentProfileId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"EnvironmentId"}, + "lastDeployment":{"shape":"Deployment"}, + "name":{"shape":"EnvironmentName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "provisionedResources":{"shape":"ResourceList"}, + "provisioningProperties":{"shape":"ProvisioningProperties"}, + "status":{"shape":"EnvironmentStatus"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "UpdateEnvironmentProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "description":{"shape":"String"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"EnvironmentProfileId", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"EnvironmentProfileName"}, + "userParameters":{"shape":"EnvironmentParametersList"} + } + }, + "UpdateEnvironmentProfileOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "environmentBlueprintId", + "id", + "name" + ], + "members":{ + "awsAccountId":{"shape":"AwsAccountId"}, + "awsAccountRegion":{"shape":"AwsRegion"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "environmentBlueprintId":{"shape":"EnvironmentBlueprintId"}, + "id":{"shape":"EnvironmentProfileId"}, + "name":{"shape":"EnvironmentProfileName"}, + "projectId":{"shape":"ProjectId"}, + "updatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "userParameters":{"shape":"CustomParameterList"} + } + }, + "UpdateGlossaryInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"GlossaryDescription"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"GlossaryId", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"GlossaryName"}, + "status":{"shape":"GlossaryStatus"} + } + }, + "UpdateGlossaryOutput":{ + "type":"structure", + "required":[ + "domainId", + "id", + "name", + "owningProjectId" + ], + "members":{ + "description":{"shape":"GlossaryDescription"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"GlossaryId"}, + "name":{"shape":"GlossaryName"}, + "owningProjectId":{"shape":"ProjectId"}, + "status":{"shape":"GlossaryStatus"} + } + }, + "UpdateGlossaryTermInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "glossaryIdentifier":{"shape":"GlossaryTermId"}, + "identifier":{ + "shape":"GlossaryTermId", + "location":"uri", + "locationName":"identifier" + }, + "longDescription":{"shape":"LongDescription"}, + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"}, + "status":{"shape":"GlossaryTermStatus"}, + "termRelations":{"shape":"TermRelations"} + } + }, + "UpdateGlossaryTermOutput":{ + "type":"structure", + "required":[ + "domainId", + "glossaryId", + "id", + "name", + "status" + ], + "members":{ + "domainId":{"shape":"DomainId"}, + "glossaryId":{"shape":"GlossaryId"}, + "id":{"shape":"GlossaryTermId"}, + "longDescription":{"shape":"LongDescription"}, + "name":{"shape":"GlossaryTermName"}, + "shortDescription":{"shape":"ShortDescription"}, + "status":{"shape":"GlossaryTermStatus"}, + "termRelations":{"shape":"TermRelations"} + } + }, + "UpdateGroupProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "groupIdentifier", + "status" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "groupIdentifier":{ + "shape":"GroupIdentifier", + "location":"uri", + "locationName":"groupIdentifier" + }, + "status":{"shape":"GroupProfileStatus"} + } + }, + "UpdateGroupProfileOutput":{ + "type":"structure", + "members":{ + "domainId":{"shape":"DomainId"}, + "groupName":{"shape":"GroupProfileName"}, + "id":{"shape":"GroupProfileId"}, + "status":{"shape":"GroupProfileStatus"} + } + }, + "UpdateProjectInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier" + ], + "members":{ + "description":{"shape":"Description"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "identifier":{ + "shape":"ProjectId", + "location":"uri", + "locationName":"identifier" + }, + "name":{"shape":"ProjectName"} + } + }, + "UpdateProjectOutput":{ + "type":"structure", + "required":[ + "createdBy", + "domainId", + "id", + "name" + ], + "members":{ + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"CreatedBy"}, + "description":{"shape":"Description"}, + "domainId":{"shape":"DomainId"}, + "glossaryTerms":{"shape":"GlossaryTerms"}, + "id":{"shape":"ProjectId"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "name":{"shape":"ProjectName"} + } + }, + "UpdateSubscriptionGrantStatusInput":{ + "type":"structure", + "required":[ + "assetIdentifier", + "domainIdentifier", + "identifier", + "status" + ], + "members":{ + "assetIdentifier":{ + "shape":"AssetId", + "location":"uri", + "locationName":"assetIdentifier" + }, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "failureCause":{"shape":"FailureCause"}, + "identifier":{ + "shape":"SubscriptionGrantId", + "location":"uri", + "locationName":"identifier" + }, + "status":{"shape":"SubscriptionGrantStatus"}, + "targetName":{"shape":"String"} + } + }, + "UpdateSubscriptionGrantStatusOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "grantedEntity", + "id", + "status", + "subscriptionTargetId", + "updatedAt" + ], + "members":{ + "assets":{"shape":"SubscribedAssets"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "grantedEntity":{"shape":"GrantedEntity"}, + "id":{"shape":"SubscriptionGrantId"}, + "status":{"shape":"SubscriptionGrantOverallStatus"}, + "subscriptionId":{"shape":"SubscriptionId"}, + "subscriptionTargetId":{"shape":"SubscriptionTargetId"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "UpdateSubscriptionRequestInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "identifier", + "requestReason" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "identifier":{ + "shape":"SubscriptionRequestId", + "location":"uri", + "locationName":"identifier" + }, + "requestReason":{"shape":"RequestReason"} + } + }, + "UpdateSubscriptionRequestOutput":{ + "type":"structure", + "required":[ + "createdAt", + "createdBy", + "domainId", + "id", + "requestReason", + "status", + "subscribedListings", + "subscribedPrincipals", + "updatedAt" + ], + "members":{ + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "decisionComment":{"shape":"DecisionComment"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"SubscriptionRequestId"}, + "requestReason":{"shape":"RequestReason"}, + "reviewerId":{"shape":"String"}, + "status":{"shape":"SubscriptionRequestStatus"}, + "subscribedListings":{"shape":"UpdateSubscriptionRequestOutputSubscribedListingsList"}, + "subscribedPrincipals":{"shape":"UpdateSubscriptionRequestOutputSubscribedPrincipalsList"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "UpdateSubscriptionRequestOutputSubscribedListingsList":{ + "type":"list", + "member":{"shape":"SubscribedListing"}, + "max":1, + "min":1 + }, + "UpdateSubscriptionRequestOutputSubscribedPrincipalsList":{ + "type":"list", + "member":{"shape":"SubscribedPrincipal"}, + "max":1, + "min":1 + }, + "UpdateSubscriptionTargetInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "environmentIdentifier", + "identifier" + ], + "members":{ + "applicableAssetTypes":{"shape":"ApplicableAssetTypes"}, + "authorizedPrincipals":{"shape":"AuthorizedPrincipalIdentifiers"}, + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "environmentIdentifier":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"environmentIdentifier" + }, + "identifier":{ + "shape":"SubscriptionTargetId", + "location":"uri", + "locationName":"identifier" + }, + "manageAccessRole":{"shape":"String"}, + "name":{"shape":"SubscriptionTargetName"}, + "provider":{"shape":"String"}, + "subscriptionTargetConfig":{"shape":"SubscriptionTargetForms"} + } + }, + "UpdateSubscriptionTargetOutput":{ + "type":"structure", + "required":[ + "applicableAssetTypes", + "authorizedPrincipals", + "createdAt", + "createdBy", + "domainId", + "environmentId", + "id", + "manageAccessRole", + "name", + "projectId", + "provider", + "subscriptionTargetConfig", + "type" + ], + "members":{ + "applicableAssetTypes":{"shape":"ApplicableAssetTypes"}, + "authorizedPrincipals":{"shape":"AuthorizedPrincipalIdentifiers"}, + "createdAt":{"shape":"CreatedAt"}, + "createdBy":{"shape":"CreatedBy"}, + "domainId":{"shape":"DomainId"}, + "environmentId":{"shape":"EnvironmentId"}, + "id":{"shape":"SubscriptionTargetId"}, + "manageAccessRole":{"shape":"String"}, + "name":{"shape":"SubscriptionTargetName"}, + "projectId":{"shape":"ProjectId"}, + "provider":{"shape":"String"}, + "subscriptionTargetConfig":{"shape":"SubscriptionTargetForms"}, + "type":{"shape":"String"}, + "updatedAt":{"shape":"UpdatedAt"}, + "updatedBy":{"shape":"UpdatedBy"} + } + }, + "UpdateUserProfileInput":{ + "type":"structure", + "required":[ + "domainIdentifier", + "status", + "userIdentifier" + ], + "members":{ + "domainIdentifier":{ + "shape":"DomainId", + "location":"uri", + "locationName":"domainIdentifier" + }, + "status":{"shape":"UserProfileStatus"}, + "type":{"shape":"UserProfileType"}, + "userIdentifier":{ + "shape":"UserIdentifier", + "location":"uri", + "locationName":"userIdentifier" + } + } + }, + "UpdateUserProfileOutput":{ + "type":"structure", + "members":{ + "details":{"shape":"UserProfileDetails"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"UserProfileId"}, + "status":{"shape":"UserProfileStatus"}, + "type":{"shape":"UserProfileType"} + } + }, + "UpdatedAt":{"type":"timestamp"}, + "UpdatedBy":{"type":"string"}, + "UserAssignment":{ + "type":"string", + "enum":[ + "AUTOMATIC", + "MANUAL" + ] + }, + "UserDesignation":{ + "type":"string", + "enum":[ + "PROJECT_OWNER", + "PROJECT_CONTRIBUTOR" + ] + }, + "UserDetails":{ + "type":"structure", + "required":["userId"], + "members":{ + "userId":{"shape":"String"} + } + }, + "UserIdentifier":{ + "type":"string", + "pattern":"(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$|^[a-zA-Z_0-9+=,.@-]+$|^arn:aws:iam::\\d{12}:.+$)" + }, + "UserProfileDetails":{ + "type":"structure", + "members":{ + "iam":{"shape":"IamUserProfileDetails"}, + "sso":{"shape":"SsoUserProfileDetails"} + }, + "union":true + }, + "UserProfileId":{ + "type":"string", + "pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" + }, + "UserProfileName":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"^[a-zA-Z_0-9+=,.@-]+$", + "sensitive":true + }, + "UserProfileStatus":{ + "type":"string", + "enum":[ + "ASSIGNED", + "NOT_ASSIGNED", + "ACTIVATED", + "DEACTIVATED" + ] + }, + "UserProfileSummaries":{ + "type":"list", + "member":{"shape":"UserProfileSummary"} + }, + "UserProfileSummary":{ + "type":"structure", + "members":{ + "details":{"shape":"UserProfileDetails"}, + "domainId":{"shape":"DomainId"}, + "id":{"shape":"UserProfileId"}, + "status":{"shape":"UserProfileStatus"}, + "type":{"shape":"UserProfileType"} + } + }, + "UserProfileType":{ + "type":"string", + "enum":[ + "IAM", + "SSO" + ] + }, + "UserSearchText":{ + "type":"string", + "max":1024, + "min":0, + "sensitive":true + }, + "UserSearchType":{ + "type":"string", + "enum":[ + "SSO_USER", + "DATAZONE_USER", + "DATAZONE_SSO_USER", + "DATAZONE_IAM_USER" + ] + }, + "UserType":{ + "type":"string", + "enum":[ + "IAM_USER", + "IAM_ROLE", + "SSO_USER" + ] + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4441 @@ +{ + "version": "2.0", + "service": "

Amazon DataZone is a data management service that enables you to catalog, discover, govern, share, and analyze your data. With Amazon DataZone, you can share and access your data across accounts and supported regions. Amazon DataZone simplifies your experience across Amazon Web Services services, including, but not limited to, Amazon Redshift, Amazon Athena, Amazon Web Services Glue, and Amazon Web Services Lake Formation.

", + "operations": { + "AcceptPredictions": "

Accepts automatically generated business-friendly metadata for your Amazon DataZone assets.

", + "AcceptSubscriptionRequest": "

Accepts a subscription request to a specific asset.

", + "CancelSubscription": "

Cancels the subscription to the specified asset.

", + "CreateAsset": "

Creates an asset in Amazon DataZone catalog.

", + "CreateAssetRevision": "

Creates a revision of the asset.

", + "CreateAssetType": "

Creates a custom asset type.

", + "CreateDataSource": "

Creates an Amazon DataZone data source.

", + "CreateDomain": "

Creates an Amazon DataZone domain.

", + "CreateEnvironment": "

Create an Amazon DataZone environment.

", + "CreateEnvironmentProfile": "

Creates an Amazon DataZone environment profile.

", + "CreateFormType": "

Creates a metadata form type.

", + "CreateGlossary": "

Creates an Amazon DataZone business glossary.

", + "CreateGlossaryTerm": "

Creates a business glossary term.

", + "CreateGroupProfile": "

Creates a group profile in Amazon DataZone.

", + "CreateListingChangeSet": "

", + "CreateProject": "

Creates an Amazon DataZone project.

", + "CreateProjectMembership": "

Creates a project membership in Amazon DataZone.

", + "CreateSubscriptionGrant": "

Creates a subsscription grant in Amazon DataZone.

", + "CreateSubscriptionRequest": "

Creates a subscription request in Amazon DataZone.

", + "CreateSubscriptionTarget": "

Creates a subscription target in Amazon DataZone.

", + "CreateUserProfile": "

Creates a user profile in Amazon DataZone.

", + "DeleteAsset": "

Delets an asset in Amazon DataZone.

", + "DeleteAssetType": "

Deletes an asset type in Amazon DataZone.

", + "DeleteDataSource": "

Deletes a data source in Amazon DataZone.

", + "DeleteDomain": "

Deletes a Amazon DataZone domain.

", + "DeleteEnvironment": "

Deletes an environment in Amazon DataZone.

", + "DeleteEnvironmentBlueprintConfiguration": "

Deletes the blueprint configuration in Amazon DataZone.

", + "DeleteEnvironmentProfile": "

Deletes an environment profile in Amazon DataZone.

", + "DeleteFormType": "

Delets and metadata form type in Amazon DataZone.

", + "DeleteGlossary": "

Deletes a business glossary in Amazon DataZone.

", + "DeleteGlossaryTerm": "

Deletes a business glossary term in Amazon DataZone.

", + "DeleteListing": "

", + "DeleteProject": "

Deletes a project in Amazon DataZone.

", + "DeleteProjectMembership": "

Deletes project membership in Amazon DataZone.

", + "DeleteSubscriptionGrant": "

Deletes and subscription grant in Amazon DataZone.

", + "DeleteSubscriptionRequest": "

Deletes a subscription request in Amazon DataZone.

", + "DeleteSubscriptionTarget": "

Deletes a subscription target in Amazon DataZone.

", + "GetAsset": "

Gets an Amazon DataZone asset.

", + "GetAssetType": "

Gets an Amazon DataZone asset type.

", + "GetDataSource": "

Gets an Amazon DataZone data source.

", + "GetDataSourceRun": "

Gets an Amazon DataZone data source run.

", + "GetDomain": "

Gets an Amazon DataZone domain.

", + "GetEnvironment": "

Gets an Amazon DataZone environment.

", + "GetEnvironmentBlueprint": "

Gets an Amazon DataZone blueprint.

", + "GetEnvironmentBlueprintConfiguration": "

Gets the blueprint configuration in Amazon DataZone.

", + "GetEnvironmentProfile": "

Gets an evinronment profile in Amazon DataZone.

", + "GetFormType": "

Gets a metadata form type in Amazon DataZone.

", + "GetGlossary": "

Gets a business glossary in Amazon DataZone.

", + "GetGlossaryTerm": "

Gets a business glossary term in Amazon DataZone.

", + "GetGroupProfile": "

Gets a group profile in Amazon DataZone.

", + "GetIamPortalLoginUrl": "

Gets the data portal URL for the specified Amazon DataZone domain.

", + "GetListing": "

", + "GetProject": "

Gets a project in Amazon DataZone.

", + "GetSubscription": "

Gets a subscription in Amazon DataZone.

", + "GetSubscriptionGrant": "

Gets the subscription grant in Amazon DataZone.

", + "GetSubscriptionRequestDetails": "

Gets the details of the specified subscription request.

", + "GetSubscriptionTarget": "

Gets the subscription target in Amazon DataZone.

", + "GetUserProfile": "

Gets a user profile in Amazon DataZone.

", + "ListAssetRevisions": "

Lists the revisions for the asset.

", + "ListDataSourceRunActivities": "

Lists data source run activities.

", + "ListDataSourceRuns": "

Lists data source runs in Amazon DataZone.

", + "ListDataSources": "

Lists data sources in Amazon DataZone.

", + "ListDomains": "

Lists Amazon DataZone domains.

", + "ListEnvironmentBlueprintConfigurations": "

Lists blueprint configurations for a Amazon DataZone environment.

", + "ListEnvironmentBlueprints": "

Lists blueprints in an Amazon DataZone environment.

", + "ListEnvironmentProfiles": "

Lists Amazon DataZone environment profiles.

", + "ListEnvironments": "

Lists Amazon DataZone environments.

", + "ListNotifications": "

Lists all Amazon DataZone notifications.

", + "ListProjectMemberships": "

Lists all members of the specified project.

", + "ListProjects": "

Lists Amazon DataZone projects.

", + "ListSubscriptionGrants": "

Lists subscription grants.

", + "ListSubscriptionRequests": "

Lists Amazon DataZone subscription requests.

", + "ListSubscriptionTargets": "

Lists subscription targets in Amazon DataZone.

", + "ListSubscriptions": "

Lists subscriptions in Amazon DataZone.

", + "ListTagsForResource": "

Lists tags for the specified resource in Amazon DataZone.

", + "PutEnvironmentBlueprintConfiguration": "

Writes the configuration for the specified environment blueprint in Amazon DataZone.

", + "RejectPredictions": "

Rejects automatically generated business-friendly metadata for your Amazon DataZone assets.

", + "RejectSubscriptionRequest": "

Rejects the specified subscription request.

", + "RevokeSubscription": "

Revokes a specified subscription in Amazon DataZone.

", + "Search": "

Searches for assets in Amazon DataZone.

", + "SearchGroupProfiles": "

Searches group profiles in Amazon DataZone.

", + "SearchListings": "

Searches listings in Amazon DataZone.

", + "SearchTypes": "

Searches for types in Amazon DataZone.

", + "SearchUserProfiles": "

Searches user profiles in Amazon DataZone.

", + "StartDataSourceRun": "

Start the run of the specified data source in Amazon DataZone.

", + "TagResource": "

Tags a resource in Amazon DataZone.

", + "UntagResource": "

Untags a resource in Amazon DataZone.

", + "UpdateDataSource": "

Updates the specified data source in Amazon DataZone.

", + "UpdateDomain": "

Updates a Amazon DataZone domain.

", + "UpdateEnvironment": "

Updates the specified environment in Amazon DataZone.

", + "UpdateEnvironmentProfile": "

Updates the specified environment profile in Amazon DataZone.

", + "UpdateGlossary": "

Updates the business glossary in Amazon DataZone.

", + "UpdateGlossaryTerm": "

Updates a business glossary term in Amazon DataZone.

", + "UpdateGroupProfile": "

Updates the specified group profile in Amazon DataZone.

", + "UpdateProject": "

Updates the specified project in Amazon DataZone.

", + "UpdateSubscriptionGrantStatus": "

Updates the status of the specified subscription grant status in Amazon DataZone.

", + "UpdateSubscriptionRequest": "

Updates a specified subscription request in Amazon DataZone.

", + "UpdateSubscriptionTarget": "

Updates the specified subscription target in Amazon DataZone.

", + "UpdateUserProfile": "

Updates the specified user profile in Amazon DataZone.

" + }, + "shapes": { + "AcceptChoice": { + "base": "

Specifies the prediction (aka, the automatically generated piece of metadata) and the target (for example, a column name) that can be accepted.

", + "refs": { + "AcceptChoices$member": null + } + }, + "AcceptChoices": { + "base": null, + "refs": { + "AcceptPredictionsInput$acceptChoices": "

" + } + }, + "AcceptPredictionsInput": { + "base": null, + "refs": { + } + }, + "AcceptPredictionsOutput": { + "base": null, + "refs": { + } + }, + "AcceptRule": { + "base": "

Specifies the rule and the threshold under which a prediction can be accepted.

", + "refs": { + "AcceptPredictionsInput$acceptRule": "

Specifies the rule (or the conditions) under which a prediction can be accepted.

" + } + }, + "AcceptRuleBehavior": { + "base": null, + "refs": { + "AcceptRule$rule": "

Specifies whether you want to accept the top prediction for all targets or none.

" + } + }, + "AcceptSubscriptionRequestInput": { + "base": null, + "refs": { + } + }, + "AcceptSubscriptionRequestOutput": { + "base": null, + "refs": { + } + }, + "AcceptSubscriptionRequestOutputSubscribedListingsList": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$subscribedListings": "

Specifies the asset for which the subscription request was created.

" + } + }, + "AcceptSubscriptionRequestOutputSubscribedPrincipalsList": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$subscribedPrincipals": "

Specifies the Amazon DataZone users who are subscribed to the asset specified in the subscription request.

" + } + }, + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "ActionLink": { + "base": null, + "refs": { + "NotificationOutput$actionLink": "

The action link included in the notification.

" + } + }, + "ApplicableAssetTypes": { + "base": null, + "refs": { + "CreateSubscriptionTargetInput$applicableAssetTypes": "

The asset types that can be included in the subscription target.

", + "CreateSubscriptionTargetOutput$applicableAssetTypes": "

The asset types that can be included in the subscription target.

", + "GetSubscriptionTargetOutput$applicableAssetTypes": "

The asset types associated with the subscription target.

", + "SubscriptionTargetSummary$applicableAssetTypes": "

The asset types included in the subscription target.

", + "UpdateSubscriptionTargetInput$applicableAssetTypes": "

The applicable asset types to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$applicableAssetTypes": "

The applicable asset types to be updated as part of the UpdateSubscriptionTarget action.

" + } + }, + "AssetId": { + "base": null, + "refs": { + "AcceptPredictionsOutput$assetId": "

", + "AssetListing$assetId": "

The identifier of an asset published in an Amazon DataZone catalog.

", + "AssetListingItem$entityId": "

The identifier of the inventory asset.

", + "AssetRevision$id": "

The identifier of the inventory asset revision.

", + "AssetTargetNameMap$assetId": "

The identifier of the inventory asset.

", + "CreateAssetOutput$id": "

The unique identifier of the created asset.

", + "CreateAssetRevisionOutput$id": "

The unique identifier of the asset revision.

", + "GetAssetOutput$id": "

The ID of the asset.

", + "RejectPredictionsOutput$assetId": "

", + "SubscribedAsset$assetId": "

The identifier of the asset for which the subscription grant is created.

", + "SubscribedAssetListing$entityId": "

The identifier of the published asset for which the subscription grant is created.

", + "UpdateSubscriptionGrantStatusInput$assetIdentifier": "

The identifier of the asset the subscription grant status of which is to be updated.

" + } + }, + "AssetIdentifier": { + "base": null, + "refs": { + "AcceptPredictionsInput$identifier": "

", + "AssetItem$identifier": "

the identifier of the Amazon DataZone inventory asset.

", + "CreateAssetRevisionInput$identifier": "

The identifier of the asset.

", + "DeleteAssetInput$identifier": "

The identifier of the asset that is deleted.

", + "GetAssetInput$identifier": "

The ID of the Amazon DataZone asset.

", + "ListAssetRevisionsInput$identifier": "

The identifier of the asset.

", + "RejectPredictionsInput$identifier": "

The identifier of the prediction.

" + } + }, + "AssetItem": { + "base": "

A Amazon DataZone inventory asset.

", + "refs": { + "SearchInventoryResultItem$assetItem": "

The asset item included in the search results.

" + } + }, + "AssetItemAdditionalAttributes": { + "base": "

The additional attributes of an inventory asset.

", + "refs": { + "AssetItem$additionalAttributes": "

The additional attributes of a Amazon DataZone inventory asset.

" + } + }, + "AssetListing": { + "base": "

An asset published in an Amazon DataZone catalog.

", + "refs": { + "ListingItem$assetListing": "

An asset published in an Amazon DataZone catalog.

" + } + }, + "AssetListingDetails": { + "base": "

The details of an asset published in an Amazon DataZone catalog.

", + "refs": { + "CreateAssetOutput$listing": "

", + "CreateAssetRevisionOutput$listing": "

", + "GetAssetOutput$listing": "

" + } + }, + "AssetListingItem": { + "base": "

The details of an asset published in an Amazon DataZone catalog.

", + "refs": { + "SearchResultItem$assetListing": "

The asset listing included in the results of the SearchListings action.

" + } + }, + "AssetListingItemAdditionalAttributes": { + "base": "

Additional attributes of an inventory asset.

", + "refs": { + "AssetListingItem$additionalAttributes": "

The additional attributes of an asset published in an Amazon DataZone catalog.

" + } + }, + "AssetName": { + "base": null, + "refs": { + "AssetItem$name": "

The name of the Amazon DataZone inventory asset.

", + "AssetListingItem$name": "

The name of the inventory asset.

", + "CreateAssetInput$name": "

Asset name.

", + "CreateAssetOutput$name": "

The name of the created asset.

", + "CreateAssetRevisionInput$name": "

Te revised name of the asset.

", + "CreateAssetRevisionOutput$name": "

The revised name of the asset.

", + "GetAssetOutput$name": "

The name of the asset.

" + } + }, + "AssetRevision": { + "base": "

The revision of an inventory asset.

", + "refs": { + "AssetRevisions$member": null + } + }, + "AssetRevisions": { + "base": null, + "refs": { + "ListAssetRevisionsOutput$items": "

The results of the ListAssetRevisions action.

" + } + }, + "AssetTargetNameMap": { + "base": "

", + "refs": { + "AssetTargetNames$member": null + } + }, + "AssetTargetNames": { + "base": null, + "refs": { + "CreateSubscriptionGrantInput$assetTargetNames": "

The names of the assets for which the subscription grant is created.

" + } + }, + "AssetTypeIdentifier": { + "base": null, + "refs": { + "AssetItem$typeIdentifier": "

The identifier of the asset type of the specified Amazon DataZone inventory asset.

", + "CreateAssetInput$typeIdentifier": "

The unique identifier of this asset's type.

", + "CreateAssetOutput$typeIdentifier": "

The identifier of the created asset type.

", + "CreateAssetRevisionOutput$typeIdentifier": "

The identifier of the revision type.

", + "DeleteAssetTypeInput$identifier": "

The identifier of the asset type that is deleted.

", + "GetAssetOutput$typeIdentifier": "

The ID of the asset type.

", + "GetAssetTypeInput$identifier": "

The ID of the asset type.

" + } + }, + "AssetTypeItem": { + "base": "

The details of the asset type.

", + "refs": { + "SearchTypesResultItem$assetTypeItem": "

The asset type included in the results of the SearchTypes action.

" + } + }, + "Attribute": { + "base": null, + "refs": { + "Filter$attribute": "

A search filter attribute in Amazon DataZone.

", + "SearchInItem$attribute": "

The search attribute.

", + "SearchSort$attribute": "

The attribute detail of the way to sort search results.

" + } + }, + "AuthType": { + "base": null, + "refs": { + "SingleSignOn$type": "

The type of single sign-on in Amazon DataZone.

" + } + }, + "AuthorizedPrincipalIdentifier": { + "base": null, + "refs": { + "AuthorizedPrincipalIdentifiers$member": null + } + }, + "AuthorizedPrincipalIdentifiers": { + "base": null, + "refs": { + "CreateSubscriptionTargetInput$authorizedPrincipals": "

The authorized principals of the subscription target.

", + "CreateSubscriptionTargetOutput$authorizedPrincipals": "

The authorised principals of the subscription target.

", + "GetSubscriptionTargetOutput$authorizedPrincipals": "

The authorized principals of the subscription target.

", + "SubscriptionTargetSummary$authorizedPrincipals": "

The authorized principals included in the subscription target.

", + "UpdateSubscriptionTargetInput$authorizedPrincipals": "

The authorized principals to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$authorizedPrincipals": "

The authorized principals to be updated as part of the UpdateSubscriptionTarget action.

" + } + }, + "AwsAccountId": { + "base": null, + "refs": { + "CreateEnvironmentOutput$awsAccountId": "

The Amazon Web Services account in which the Amazon DataZone environment is created.

", + "CreateEnvironmentProfileInput$awsAccountId": "

The Amazon Web Services account in which the Amazon DataZone environment is created.

", + "CreateEnvironmentProfileOutput$awsAccountId": "

The Amazon Web Services account ID in which this Amazon DataZone environment profile is created.

", + "EnvironmentProfileSummary$awsAccountId": "

The identifier of an Amazon Web Services account in which an environment profile exists.

", + "EnvironmentSummary$awsAccountId": "

The identifier of the Amazon Web Services account in which an environment exists.

", + "GetEnvironmentOutput$awsAccountId": "

The ID of the Amazon Web Services account where the environment exists.

", + "GetEnvironmentProfileOutput$awsAccountId": "

The ID of the Amazon Web Services account where this environment profile exists.

", + "ListEnvironmentProfilesInput$awsAccountId": "

The identifier of the Amazon Web Services account where you want to list environment profiles.

", + "ListEnvironmentsInput$awsAccountId": "

The identifier of the Amazon Web Services account where you want to list environments.

", + "UpdateEnvironmentOutput$awsAccountId": "

The identifier of the Amazon Web Services account in which the environment is to be updated.

", + "UpdateEnvironmentProfileInput$awsAccountId": "

The Amazon Web Services account in which a specified environment profile is to be udpated.

", + "UpdateEnvironmentProfileOutput$awsAccountId": "

The Amazon Web Services account in which a specified environment profile is to be udpated.

" + } + }, + "AwsRegion": { + "base": null, + "refs": { + "CreateEnvironmentOutput$awsAccountRegion": "

The Amazon Web Services region in which the Amazon DataZone environment is created.

", + "CreateEnvironmentProfileInput$awsAccountRegion": "

The Amazon Web Services region in which this environment profile is created.

", + "CreateEnvironmentProfileOutput$awsAccountRegion": "

The Amazon Web Services region in which this Amazon DataZone environment profile is created.

", + "EnvironmentProfileSummary$awsAccountRegion": "

The Amazon Web Services Region in which an environment profile exists.

", + "EnvironmentSummary$awsAccountRegion": "

The Amazon Web Services Region in which an environment exists.

", + "GetEnvironmentOutput$awsAccountRegion": "

The Amazon Web Services region where the environment exists.

", + "GetEnvironmentProfileOutput$awsAccountRegion": "

The Amazon Web Services region where this environment profile exists.

", + "ListEnvironmentProfilesInput$awsAccountRegion": "

The Amazon Web Services region where you want to list environment profiles.

", + "ListEnvironmentsInput$awsAccountRegion": "

The Amazon Web Services region where you want to list environments.

", + "UpdateEnvironmentOutput$awsAccountRegion": "

The Amazon Web Services Region in which the environment is updated.

", + "UpdateEnvironmentProfileInput$awsAccountRegion": "

The Amazon Web Services Region in which a specified environment profile is to be updated.

", + "UpdateEnvironmentProfileOutput$awsAccountRegion": "

The Amazon Web Services Region in which a specified environment profile is to be updated.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "BusinessNameGenerationConfiguration$enabled": "

Specifies whether the business name generation is enabled.

", + "CancelSubscriptionOutput$retainPermissions": "

Specifies whether the permissions to the asset are retained after the subscription is cancelled.

", + "CreateDataSourceInput$publishOnImport": "

Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.

", + "CreateDataSourceOutput$publishOnImport": "

Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.

", + "CustomParameter$isEditable": "

Specifies whether the parameter is editable.

", + "CustomParameter$isOptional": "

Specifies whether the custom parameter is optional.

", + "DeleteDataSourceOutput$publishOnImport": "

Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.

", + "Deployment$isDeploymentComplete": "

Specifies whether the last deployment of the environment is complete.

", + "FormEntryInput$required": "

Specifies whether a form entry is required.

", + "FormEntryOutput$required": "

Specifies whether a form entry is required.

", + "GetDataSourceOutput$publishOnImport": "

Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.

", + "GetSubscriptionOutput$retainPermissions": "

The retain permissions of the subscription.

", + "ListEnvironmentBlueprintsInput$managed": "

Specifies whether the environment blueprint is managed by Amazon DataZone.

", + "RecommendationConfiguration$enableBusinessNameGeneration": "

Specifies whether automatic business name generation is to be enabled or not as part of the recommendation configuration.

", + "RevokeSubscriptionInput$retainPermissions": "

Specifies whether permissions are retained when the subscription is revoked.

", + "RevokeSubscriptionOutput$retainPermissions": "

Specifies whether permissions are retained when the subscription is revoked.

", + "SearchTypesInput$managed": "

", + "SubscriptionSummary$retainPermissions": "

The retain permissions included in the subscription.

", + "UpdateDataSourceInput$publishOnImport": "

The publish on import setting to be updated as part of the UpdateDataSource action.

", + "UpdateDataSourceOutput$publishOnImport": "

The publish on import setting to be updated as part of the UpdateDataSource action.

" + } + }, + "BusinessNameGenerationConfiguration": { + "base": "

The configuration of the business name generation.

", + "refs": { + "PredictionConfiguration$businessNameGeneration": "

The business name generation mechanism.

" + } + }, + "CancelSubscriptionInput": { + "base": null, + "refs": { + } + }, + "CancelSubscriptionOutput": { + "base": null, + "refs": { + } + }, + "ChangeAction": { + "base": null, + "refs": { + "CreateListingChangeSetInput$action": "

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "AcceptPredictionsInput$clientToken": "

A unique, case-sensitive identifier to ensure idempotency of the request. This field is automatically populated if not provided.

", + "CreateAssetInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateAssetRevisionInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateGlossaryInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateGlossaryTermInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateListingChangeSetInput$clientToken": "

", + "RejectPredictionsInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "UpdateGlossaryInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

" + } + }, + "CloudFormationProperties": { + "base": "

Part of the provisioning properties of the environment blueprint.

", + "refs": { + "ProvisioningProperties$cloudFormation": "

The cloud formation properties included as part of the provisioning properties of an environment blueprint.

" + } + }, + "ConfigurableActionParameter": { + "base": "

The details of the parameters for the configurable environment action.

", + "refs": { + "ConfigurableActionParameterList$member": null + } + }, + "ConfigurableActionParameterList": { + "base": null, + "refs": { + "ConfigurableEnvironmentAction$parameters": "

The parameters of a configurable action in a Amazon DataZone environment.

" + } + }, + "ConfigurableActionTypeAuthorization": { + "base": null, + "refs": { + "ConfigurableEnvironmentAction$auth": "

The authentication type of a configurable action of a Amazon DataZone environment.

" + } + }, + "ConfigurableEnvironmentAction": { + "base": "

The configurable action of a Amazon DataZone environment.

", + "refs": { + "EnvironmentActionList$member": null + } + }, + "ConflictException": { + "base": "

There is a conflict while performing this action.

", + "refs": { + } + }, + "CreateAssetInput": { + "base": null, + "refs": { + } + }, + "CreateAssetOutput": { + "base": null, + "refs": { + } + }, + "CreateAssetRevisionInput": { + "base": null, + "refs": { + } + }, + "CreateAssetRevisionOutput": { + "base": null, + "refs": { + } + }, + "CreateAssetTypeInput": { + "base": null, + "refs": { + } + }, + "CreateAssetTypeOutput": { + "base": null, + "refs": { + } + }, + "CreateDataSourceInput": { + "base": null, + "refs": { + } + }, + "CreateDataSourceOutput": { + "base": null, + "refs": { + } + }, + "CreateDomainInput": { + "base": null, + "refs": { + } + }, + "CreateDomainOutput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentInput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentProfileInput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentProfileOutput": { + "base": null, + "refs": { + } + }, + "CreateFormTypeInput": { + "base": null, + "refs": { + } + }, + "CreateFormTypeOutput": { + "base": null, + "refs": { + } + }, + "CreateGlossaryInput": { + "base": null, + "refs": { + } + }, + "CreateGlossaryOutput": { + "base": null, + "refs": { + } + }, + "CreateGlossaryTermInput": { + "base": null, + "refs": { + } + }, + "CreateGlossaryTermOutput": { + "base": null, + "refs": { + } + }, + "CreateGroupProfileInput": { + "base": null, + "refs": { + } + }, + "CreateGroupProfileOutput": { + "base": null, + "refs": { + } + }, + "CreateListingChangeSetInput": { + "base": null, + "refs": { + } + }, + "CreateListingChangeSetOutput": { + "base": null, + "refs": { + } + }, + "CreateProjectInput": { + "base": null, + "refs": { + } + }, + "CreateProjectMembershipInput": { + "base": null, + "refs": { + } + }, + "CreateProjectMembershipOutput": { + "base": null, + "refs": { + } + }, + "CreateProjectOutput": { + "base": null, + "refs": { + } + }, + "CreateSubscriptionGrantInput": { + "base": null, + "refs": { + } + }, + "CreateSubscriptionGrantOutput": { + "base": null, + "refs": { + } + }, + "CreateSubscriptionRequestInput": { + "base": null, + "refs": { + } + }, + "CreateSubscriptionRequestOutput": { + "base": null, + "refs": { + } + }, + "CreateSubscriptionRequestOutputSubscribedListingsList": { + "base": null, + "refs": { + "CreateSubscriptionRequestOutput$subscribedListings": "

" + } + }, + "CreateSubscriptionRequestOutputSubscribedPrincipalsList": { + "base": null, + "refs": { + "CreateSubscriptionRequestOutput$subscribedPrincipals": "

The subscribed principals of the subscription request.

" + } + }, + "CreateSubscriptionTargetInput": { + "base": null, + "refs": { + } + }, + "CreateSubscriptionTargetOutput": { + "base": null, + "refs": { + } + }, + "CreateUserProfileInput": { + "base": null, + "refs": { + } + }, + "CreateUserProfileOutput": { + "base": null, + "refs": { + } + }, + "CreatedAt": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$createdAt": "

The timestamp that specifies when the subscription request was accepted.

", + "AssetItem$createdAt": "

The timestamp of when the Amazon DataZone inventory asset was created.

", + "AssetItem$firstRevisionCreatedAt": "

The timestamp of when the first revision of the inventory asset was created.

", + "AssetListing$createdAt": "

The timestamp of when an asset published in an Amazon DataZone catalog was created.

", + "AssetListingItem$createdAt": "

The timestamp of when an asset published in an Amazon DataZone catalog was created.

", + "AssetRevision$createdAt": "

The timestamp of when an inventory asset revison was created.

", + "AssetTypeItem$createdAt": "

The timestamp of when the asset type was created.

", + "CancelSubscriptionOutput$createdAt": "

The timestamp that specifies when the request to cancel the subscription was created.

", + "CreateAssetOutput$createdAt": "

The timestamp of when the asset was created.

", + "CreateAssetOutput$firstRevisionCreatedAt": "

The timestamp of when the first revision of the asset took place.

", + "CreateAssetRevisionOutput$createdAt": "

The timestamp of when the asset revision occured.

", + "CreateAssetRevisionOutput$firstRevisionCreatedAt": "

The timestamp of when the first asset revision occured.

", + "CreateAssetTypeOutput$createdAt": "

The timestamp of when the asset type is to be created.

", + "CreateSubscriptionGrantOutput$createdAt": "

A timestamp of when the subscription grant is created.

", + "CreateSubscriptionRequestOutput$createdAt": "

A timestamp of when the subscription request is created.

", + "CreateSubscriptionTargetOutput$createdAt": "

The timestamp of when the subscription target was created.

", + "DataProductSummary$createdAt": "

", + "DeleteSubscriptionGrantOutput$createdAt": "

The timestamp of when the subscription grant that is deleted was created.

", + "DomainSummary$createdAt": "

A timestamp of when a Amazon DataZone domain was created.

", + "FormTypeData$createdAt": "

The timestamp of when the metadata form type was created.

", + "GetAssetOutput$createdAt": "

The timestamp of when the asset was created.

", + "GetAssetOutput$firstRevisionCreatedAt": "

The timestamp of when the first revision of the asset was created.

", + "GetAssetTypeOutput$createdAt": "

The timestamp of when the asset type was created.

", + "GetDomainOutput$createdAt": "

The timestamp of when the Amazon DataZone domain was created.

", + "GetFormTypeOutput$createdAt": "

The timestamp of when this metadata form type was created.

", + "GetGlossaryOutput$createdAt": "

The timestamp of when this business glossary was created.

", + "GetGlossaryTermOutput$createdAt": "

The timestamp of when the business glossary term was created.

", + "GetListingOutput$createdAt": "

", + "GetSubscriptionGrantOutput$createdAt": "

The timestamp of when the subscription grant is created.

", + "GetSubscriptionOutput$createdAt": "

The timestamp of when the subscription was created.

", + "GetSubscriptionRequestDetailsOutput$createdAt": "

The timestamp of when the specified subscription request was created.

", + "GetSubscriptionTargetOutput$createdAt": "

The timestamp of when the subscription target was created.

", + "GlossaryItem$createdAt": "

The timestamp of when the glossary was created.

", + "GlossaryTermItem$createdAt": "

The timestamp of when a business glossary term was created.

", + "RejectSubscriptionRequestOutput$createdAt": "

The timestamp of when the subscription request was rejected.

", + "RevokeSubscriptionOutput$createdAt": "

The timestamp of when the subscription was revoked.

", + "SubscriptionGrantSummary$createdAt": "

The timestamp of when a subscription grant was created.

", + "SubscriptionRequestSummary$createdAt": "

The timestamp of when a subscription request was created.

", + "SubscriptionSummary$createdAt": "

The timestamp of when the subscription was created.

", + "SubscriptionTargetSummary$createdAt": "

The timestamp of when the subscription target was created.

", + "UpdateSubscriptionGrantStatusOutput$createdAt": "

The timestamp of when the subscription grant status was created.

", + "UpdateSubscriptionRequestOutput$createdAt": "

The timestamp of when the subscription request was created.

", + "UpdateSubscriptionTargetOutput$createdAt": "

The timestamp of when a subscription target was created.

" + } + }, + "CreatedBy": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$createdBy": "

Specifies the Amazon DataZone user that accepted the specified subscription request.

", + "AssetItem$createdBy": "

The Amazon DataZone user who created the inventory asset.

", + "AssetItem$firstRevisionCreatedBy": "

The Amazon DataZone user who created the first revision of the inventory asset.

", + "AssetListingItem$listingCreatedBy": "

The Amazon DataZone user who created the listing.

", + "AssetRevision$createdBy": "

The Amazon DataZone user who created the asset revision.

", + "AssetTypeItem$createdBy": "

The Amazon DataZone user who created the asset type.

", + "CancelSubscriptionOutput$createdBy": "

Specifies the Amazon DataZone user who is cancelling the subscription.

", + "CreateAssetOutput$createdBy": "

The Amazon DataZone user that created this asset in the catalog.

", + "CreateAssetOutput$firstRevisionCreatedBy": "

The Amazon DataZone user that made the first revision of the asset.

", + "CreateAssetRevisionOutput$createdBy": "

The Amazon DataZone user who performed the asset revision.

", + "CreateAssetRevisionOutput$firstRevisionCreatedBy": "

The Amazon DataZone user who performed the first asset revision.

", + "CreateAssetTypeOutput$createdBy": "

The Amazon DataZone user who creates this custom asset type.

", + "CreateProjectOutput$createdBy": "

The Amazon DataZone user who created the project.

", + "CreateSubscriptionGrantOutput$createdBy": "

The Amazon DataZone user who created the subscription grant.

", + "CreateSubscriptionRequestOutput$createdBy": "

The Amazon DataZone user who created the subscription request.

", + "CreateSubscriptionTargetOutput$createdBy": "

The Amazon DataZone user who created the subscription target.

", + "DataProductSummary$createdBy": "

", + "DeleteSubscriptionGrantOutput$createdBy": "

The Amazon DataZone user who created the subscription grant that is deleted.

", + "FormTypeData$createdBy": "

The Amazon DataZone user who created teh metadata form type.

", + "GetAssetOutput$createdBy": "

The Amazon DataZone user who created the asset.

", + "GetAssetOutput$firstRevisionCreatedBy": "

The Amazon DataZone user who created the first revision of the asset.

", + "GetAssetTypeOutput$createdBy": "

The Amazon DataZone user who created the asset type.

", + "GetFormTypeOutput$createdBy": "

The Amazon DataZone user who created this metadata form type.

", + "GetGlossaryOutput$createdBy": "

The Amazon DataZone user who created this business glossary.

", + "GetGlossaryTermOutput$createdBy": "

The Amazon DataZone user who created the business glossary.

", + "GetListingOutput$createdBy": "

The Amazon DataZone user who created the listing.

", + "GetProjectOutput$createdBy": "

The Amazon DataZone user who created the project.

", + "GetSubscriptionGrantOutput$createdBy": "

The Amazon DataZone user who created the subscription grant.

", + "GetSubscriptionOutput$createdBy": "

The Amazon DataZone user who created the subscription.

", + "GetSubscriptionRequestDetailsOutput$createdBy": "

The Amazon DataZone user who created the subscription request.

", + "GetSubscriptionTargetOutput$createdBy": "

The Amazon DataZone user who created the subscription target.

", + "GlossaryItem$createdBy": "

The Amazon DataZone user who created the glossary.

", + "GlossaryTermItem$createdBy": "

The Amazon DataZone user who created the business glossary.

", + "ProjectSummary$createdBy": "

The Amazon DataZone user who created the project.

", + "RejectSubscriptionRequestOutput$createdBy": "

The timestamp of when the subscription request was rejected.

", + "RevokeSubscriptionOutput$createdBy": "

The identifier of the user who revoked the subscription.

", + "SubscriptionGrantSummary$createdBy": "

The datazone user who created the subscription grant.

", + "SubscriptionRequestSummary$createdBy": "

The Amazon DataZone user who created the subscription request.

", + "SubscriptionSummary$createdBy": "

The Amazon DataZone user who created the subscription.

", + "SubscriptionTargetSummary$createdBy": "

The Amazon DataZone user who created the subscription target.

", + "UpdateProjectOutput$createdBy": "

The Amazon DataZone user who created the project.

", + "UpdateSubscriptionGrantStatusOutput$createdBy": "

The Amazon DataZone domain user who created the subscription grant status.

", + "UpdateSubscriptionRequestOutput$createdBy": "

The Amazon DataZone user who created the subscription request.

", + "UpdateSubscriptionTargetOutput$createdBy": "

The Amazon DataZone user who created the subscription target.

" + } + }, + "CronString": { + "base": null, + "refs": { + "ScheduleConfiguration$schedule": "

The schedule of the data source runs.

" + } + }, + "CustomParameter": { + "base": "

The details of user parameters of an environment blueprint.

", + "refs": { + "CustomParameterList$member": null + } + }, + "CustomParameterKeyNameString": { + "base": null, + "refs": { + "CustomParameter$keyName": "

The key name of the parameter.

" + } + }, + "CustomParameterList": { + "base": null, + "refs": { + "CreateEnvironmentOutput$userParameters": "

The user parameters of this Amazon DataZone environment.

", + "CreateEnvironmentProfileOutput$userParameters": "

The user parameters of this Amazon DataZone environment profile.

", + "GetEnvironmentBlueprintOutput$userParameters": "

The user parameters of this blueprint.

", + "GetEnvironmentOutput$userParameters": "

The user parameters of this Amazon DataZone environment.

", + "GetEnvironmentProfileOutput$userParameters": "

The user parameters of the environment profile.

", + "UpdateEnvironmentOutput$userParameters": "

The user parameters to be updated as part of the UpdateEnvironment action.

", + "UpdateEnvironmentProfileOutput$userParameters": "

The user parameters to be updated as part of the UpdateEnvironmentProfile action.

" + } + }, + "DataAssetActivityStatus": { + "base": null, + "refs": { + "DataSourceRunActivity$dataAssetStatus": "

The status of the asset included in the data source run activity.

", + "ListDataSourceRunActivitiesInput$status": "

The status of the data source run.

" + } + }, + "DataProductDescription": { + "base": null, + "refs": { + "DataProductSummary$description": "

" + } + }, + "DataProductId": { + "base": null, + "refs": { + "DataProductItem$itemId": "

", + "DataProductSummary$id": "

" + } + }, + "DataProductItem": { + "base": "

", + "refs": { + "DataProductItems$member": null + } + }, + "DataProductItems": { + "base": null, + "refs": { + "DataProductSummary$dataProductItems": "

" + } + }, + "DataProductName": { + "base": null, + "refs": { + "DataProductSummary$name": "

" + } + }, + "DataProductSummary": { + "base": "

", + "refs": { + "SearchInventoryResultItem$dataProductItem": "

The data product item included in the search results.

" + } + }, + "DataSourceConfigurationInput": { + "base": "

The configuration of the data source.

", + "refs": { + "CreateDataSourceInput$configuration": "

Specifies the configuration of the data source. It can be set to either glueRunConfiguration or redshiftRunConfiguration.

", + "UpdateDataSourceInput$configuration": "

The configuration to be updated as part of the UpdateDataSource action.

" + } + }, + "DataSourceConfigurationOutput": { + "base": "

The configuration of the data source.

", + "refs": { + "CreateDataSourceOutput$configuration": "

Specifies the configuration of the data source. It can be set to either glueRunConfiguration or redshiftRunConfiguration.

", + "DeleteDataSourceOutput$configuration": "

The configuration of the data source that is deleted.

", + "GetDataSourceOutput$configuration": "

The configuration of the data source.

", + "UpdateDataSourceOutput$configuration": "

The configuration to be updated as part of the UpdateDataSource action.

" + } + }, + "DataSourceErrorMessage": { + "base": "

The details of the error message that is returned if the operation cannot be successfully completed.

", + "refs": { + "CreateDataSourceOutput$errorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "CreateDataSourceOutput$lastRunErrorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "DataSourceRunActivity$errorMessage": null, + "DataSourceRunSummary$errorMessage": null, + "DataSourceSummary$lastRunErrorMessage": null, + "DeleteDataSourceOutput$errorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "DeleteDataSourceOutput$lastRunErrorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "GetDataSourceOutput$errorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "GetDataSourceOutput$lastRunErrorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "GetDataSourceRunOutput$errorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "StartDataSourceRunOutput$errorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "UpdateDataSourceOutput$errorMessage": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "UpdateDataSourceOutput$lastRunErrorMessage": "

The last run error message of the data source.

" + } + }, + "DataSourceErrorType": { + "base": null, + "refs": { + "DataSourceErrorMessage$errorType": "

The type of the error message that is returned if the operation cannot be successfully completed.

" + } + }, + "DataSourceId": { + "base": null, + "refs": { + "CreateDataSourceOutput$id": "

The unique identifier of the data source.

", + "DataSourceRunSummary$dataSourceId": "

The identifier of the data source of the data source run.

", + "DataSourceSummary$dataSourceId": "

The ID of the data source.

", + "DeleteDataSourceInput$identifier": "

The identifier of the data source that is deleted.

", + "DeleteDataSourceOutput$id": "

The ID of the data source that is deleted.

", + "GetDataSourceInput$identifier": "

The ID of the Amazon DataZone data source.

", + "GetDataSourceOutput$id": "

The ID of the data source.

", + "GetDataSourceRunOutput$dataSourceId": "

The ID of the data source for this data source run.

", + "ListDataSourceRunsInput$dataSourceIdentifier": "

The identifier of the data source.

", + "StartDataSourceRunInput$dataSourceIdentifier": "

The identifier of the data source.

", + "StartDataSourceRunOutput$dataSourceId": "

The identifier of the data source.

", + "UpdateDataSourceInput$identifier": "

The identifier of the data source to be updated.

", + "UpdateDataSourceOutput$id": "

The identifier of the data source to be updated.

" + } + }, + "DataSourceRunActivities": { + "base": null, + "refs": { + "ListDataSourceRunActivitiesOutput$items": "

The results of the ListDataSourceRunActivities action.

" + } + }, + "DataSourceRunActivity": { + "base": "

The activity details of the data source run.

", + "refs": { + "DataSourceRunActivities$member": null + } + }, + "DataSourceRunId": { + "base": null, + "refs": { + "DataSourceRunActivity$dataSourceRunId": "

The identifier of the data source for the data source run activity.

", + "DataSourceRunSummary$id": "

The identifier of the data source run.

", + "GetDataSourceRunInput$identifier": "

The ID of the data source run.

", + "GetDataSourceRunOutput$id": "

The ID of the data source run.

", + "ListDataSourceRunActivitiesInput$identifier": "

The identifier of the data source run.

", + "StartDataSourceRunOutput$id": "

The identifier of the data source run.

" + } + }, + "DataSourceRunStatus": { + "base": null, + "refs": { + "CreateDataSourceOutput$lastRunStatus": "

The status of the last run of this data source.

", + "DataSourceRunSummary$status": "

The status of the data source run.

", + "DataSourceSummary$lastRunStatus": "

The status of the last data source run.

", + "DeleteDataSourceOutput$lastRunStatus": "

The status of the last run of this data source.

", + "GetDataSourceOutput$lastRunStatus": "

The status of the last run of the data source.

", + "GetDataSourceRunOutput$status": "

The status of this data source run.

", + "ListDataSourceRunsInput$status": "

The status of the data source.

", + "StartDataSourceRunOutput$status": "

The status of the data source run.

", + "UpdateDataSourceOutput$lastRunStatus": "

The last run status of the data source.

" + } + }, + "DataSourceRunSummaries": { + "base": null, + "refs": { + "ListDataSourceRunsOutput$items": "

The results of the ListDataSourceRuns action.

" + } + }, + "DataSourceRunSummary": { + "base": "

The details of a data source run.

", + "refs": { + "DataSourceRunSummaries$member": null + } + }, + "DataSourceRunType": { + "base": null, + "refs": { + "DataSourceRunSummary$type": "

The type of the data source run.

", + "GetDataSourceRunOutput$type": "

The type of this data source run.

", + "StartDataSourceRunOutput$type": "

The type of the data source run.

" + } + }, + "DataSourceStatus": { + "base": null, + "refs": { + "CreateDataSourceOutput$status": "

The status of the data source.

", + "DataSourceSummary$status": "

The status of the data source.

", + "DeleteDataSourceOutput$status": "

The status of this data source.

", + "GetDataSourceOutput$status": "

The status of the data source.

", + "ListDataSourcesInput$status": "

The status of the data source.

", + "UpdateDataSourceOutput$status": "

The status to be updated as part of the UpdateDataSource action.

" + } + }, + "DataSourceSummaries": { + "base": null, + "refs": { + "ListDataSourcesOutput$items": "

The results of the ListDataSources action.

" + } + }, + "DataSourceSummary": { + "base": "

The details of the data source.

", + "refs": { + "DataSourceSummaries$member": null + } + }, + "DataSourceType": { + "base": null, + "refs": { + "CreateDataSourceInput$type": "

The type of the data source.

", + "CreateDataSourceOutput$type": "

The type of the data source.

", + "DeleteDataSourceOutput$type": "

The type of this data source.

", + "GetDataSourceOutput$type": "

The type of the data source.

", + "ListDataSourcesInput$type": "

The type of the data source.

", + "UpdateDataSourceOutput$type": "

The type to be updated as part of the UpdateDataSource action.

" + } + }, + "DateTime": { + "base": null, + "refs": { + "CreateDataSourceOutput$createdAt": "

The timestamp of when the data source was created.

", + "CreateDataSourceOutput$lastRunAt": "

The timestamp that specifies when the data source was last run.

", + "CreateDataSourceOutput$updatedAt": "

The timestamp of when the data source was updated.

", + "DataSourceRunActivity$createdAt": "

The timestamp of when data source run activity was created.

", + "DataSourceRunActivity$updatedAt": "

The timestamp of when data source run activity was updated.

", + "DataSourceRunSummary$createdAt": "

The timestamp of when a data source run was created.

", + "DataSourceRunSummary$startedAt": "

The timestamp of when a data source run was started.

", + "DataSourceRunSummary$stoppedAt": "

The timestamp of when a data source run was stopped.

", + "DataSourceRunSummary$updatedAt": "

The timestamp of when a data source run was updated.

", + "DataSourceSummary$createdAt": "

The timestamp of when the data source was created.

", + "DataSourceSummary$lastRunAt": "

The timestamp of when the data source run was last performed.

", + "DataSourceSummary$updatedAt": "

The timestamp of when the data source was updated.

", + "DeleteDataSourceOutput$createdAt": "

The timestamp of when this data source was created.

", + "DeleteDataSourceOutput$lastRunAt": "

The timestamp of when the data source was last run.

", + "DeleteDataSourceOutput$updatedAt": "

The timestamp of when this data source was updated.

", + "GetDataSourceOutput$createdAt": "

The timestamp of when the data source was created.

", + "GetDataSourceOutput$lastRunAt": "

The timestamp of the last run of the data source.

", + "GetDataSourceOutput$updatedAt": "

The timestamp of when the data source was updated.

", + "GetDataSourceRunOutput$createdAt": "

The timestamp of when the data source run was created.

", + "GetDataSourceRunOutput$startedAt": "

The timestamp of when this data source run started.

", + "GetDataSourceRunOutput$stoppedAt": "

The timestamp of when this data source run stopped.

", + "GetDataSourceRunOutput$updatedAt": "

The timestamp of when this data source run was updated.

", + "StartDataSourceRunOutput$createdAt": "

The timestamp of when data source run was created.

", + "StartDataSourceRunOutput$startedAt": "

The timestamp of when the data source run was started.

", + "StartDataSourceRunOutput$stoppedAt": "

The timestamp of when the data source run was stopped.

", + "StartDataSourceRunOutput$updatedAt": "

The timestamp of when the data source run was updated.

", + "UpdateDataSourceOutput$createdAt": "

The timestamp of when the data source was updated.

", + "UpdateDataSourceOutput$lastRunAt": "

The timestamp of when the data source was last run.

", + "UpdateDataSourceOutput$updatedAt": "

The timestamp of when the data source was updated.

" + } + }, + "DecisionComment": { + "base": null, + "refs": { + "AcceptSubscriptionRequestInput$decisionComment": "

A description that specifies the reason for accepting the specified subscription request.

", + "AcceptSubscriptionRequestOutput$decisionComment": "

Specifies the reason for accepting the subscription request.

", + "CreateSubscriptionRequestOutput$decisionComment": "

The decision comment of the subscription request.

", + "GetSubscriptionRequestDetailsOutput$decisionComment": "

The decision comment of the subscription request.

", + "RejectSubscriptionRequestInput$decisionComment": "

The decision comment of the rejected subscription request.

", + "RejectSubscriptionRequestOutput$decisionComment": "

The decision comment of the rejected subscription request.

", + "SubscriptionRequestSummary$decisionComment": "

The decision comment of the subscription request.

", + "UpdateSubscriptionRequestOutput$decisionComment": "

The decision comment of the UpdateSubscriptionRequest action.

" + } + }, + "DeleteAssetInput": { + "base": null, + "refs": { + } + }, + "DeleteAssetOutput": { + "base": null, + "refs": { + } + }, + "DeleteAssetTypeInput": { + "base": null, + "refs": { + } + }, + "DeleteAssetTypeOutput": { + "base": null, + "refs": { + } + }, + "DeleteDataSourceInput": { + "base": null, + "refs": { + } + }, + "DeleteDataSourceOutput": { + "base": null, + "refs": { + } + }, + "DeleteDomainInput": { + "base": null, + "refs": { + } + }, + "DeleteDomainOutput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentBlueprintConfigurationInput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentBlueprintConfigurationOutput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentInput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentProfileInput": { + "base": null, + "refs": { + } + }, + "DeleteFormTypeInput": { + "base": null, + "refs": { + } + }, + "DeleteFormTypeOutput": { + "base": null, + "refs": { + } + }, + "DeleteGlossaryInput": { + "base": null, + "refs": { + } + }, + "DeleteGlossaryOutput": { + "base": null, + "refs": { + } + }, + "DeleteGlossaryTermInput": { + "base": null, + "refs": { + } + }, + "DeleteGlossaryTermOutput": { + "base": null, + "refs": { + } + }, + "DeleteListingInput": { + "base": null, + "refs": { + } + }, + "DeleteListingOutput": { + "base": null, + "refs": { + } + }, + "DeleteProjectInput": { + "base": null, + "refs": { + } + }, + "DeleteProjectMembershipInput": { + "base": null, + "refs": { + } + }, + "DeleteProjectMembershipOutput": { + "base": null, + "refs": { + } + }, + "DeleteProjectOutput": { + "base": null, + "refs": { + } + }, + "DeleteSubscriptionGrantInput": { + "base": null, + "refs": { + } + }, + "DeleteSubscriptionGrantOutput": { + "base": null, + "refs": { + } + }, + "DeleteSubscriptionRequestInput": { + "base": null, + "refs": { + } + }, + "DeleteSubscriptionTargetInput": { + "base": null, + "refs": { + } + }, + "Deployment": { + "base": "

The details of the last deployment of the environment.

", + "refs": { + "CreateEnvironmentOutput$lastDeployment": "

The details of the last deployment of this Amazon DataZone environment.

", + "GetEnvironmentOutput$lastDeployment": "

The details of the last deployment of the environment.

", + "UpdateEnvironmentOutput$lastDeployment": "

The last deployment of the environment.

" + } + }, + "DeploymentMessage": { + "base": null, + "refs": { + "DeploymentMessagesList$member": null + } + }, + "DeploymentMessagesList": { + "base": null, + "refs": { + "Deployment$messages": "

The messages of the last deployment of the environment.

" + } + }, + "DeploymentProperties": { + "base": "

The deployment properties of the Amazon DataZone blueprint.

", + "refs": { + "CreateEnvironmentOutput$deploymentProperties": "

The deployment properties of this Amazon DataZone environment.

", + "GetEnvironmentBlueprintOutput$deploymentProperties": "

The deployment properties of this Amazon DataZone blueprint.

", + "GetEnvironmentOutput$deploymentProperties": "

The deployment properties of the environment.

", + "UpdateEnvironmentOutput$deploymentProperties": "

The deployment properties to be updated as part of the UpdateEnvironment action.

" + } + }, + "DeploymentPropertiesEndTimeoutMinutesInteger": { + "base": null, + "refs": { + "DeploymentProperties$endTimeoutMinutes": "

The end timeout of the environment blueprint deployment.

" + } + }, + "DeploymentPropertiesStartTimeoutMinutesInteger": { + "base": null, + "refs": { + "DeploymentProperties$startTimeoutMinutes": "

The start timeout of the environment blueprint deployment.

" + } + }, + "DeploymentStatus": { + "base": null, + "refs": { + "Deployment$deploymentStatus": "

The status of the last deployment of the environment.

" + } + }, + "DeploymentType": { + "base": null, + "refs": { + "Deployment$deploymentType": "

The type of the last deployment of the environment.

" + } + }, + "Description": { + "base": null, + "refs": { + "AssetItem$description": "

The description of an Amazon DataZone inventory asset.

", + "AssetListingItem$description": "

The description of an asset published in an Amazon DataZone catalog.

", + "AssetTypeItem$description": "

The description of the asset type.

", + "CreateAssetInput$description": "

Asset description.

", + "CreateAssetOutput$description": "

The description of the created asset.

", + "CreateAssetRevisionInput$description": "

The revised description of the asset.

", + "CreateAssetRevisionOutput$description": "

The revised asset description.

", + "CreateAssetTypeInput$description": "

The descripton of the custom asset type.

", + "CreateAssetTypeOutput$description": "

The description of the custom asset type.

", + "CreateDataSourceInput$description": "

The description of the data source.

", + "CreateDataSourceOutput$description": "

The description of the data source.

", + "CreateEnvironmentOutput$description": "

The description of this Amazon DataZone environment.

", + "CreateEnvironmentProfileInput$description": "

The description of this Amazon DataZone environment profile.

", + "CreateEnvironmentProfileOutput$description": "

The description of this Amazon DataZone environment profile.

", + "CreateFormTypeInput$description": "

The description of this Amazon DataZone metadata form type.

", + "CreateFormTypeOutput$description": "

The description of this Amazon DataZone metadata form type.

", + "CreateProjectInput$description": "

The description of the Amazon DataZone project.

", + "CreateProjectOutput$description": "

The description of the project.

", + "CustomParameter$description": "

The description of the parameter.

", + "DataSourceRunActivity$technicalDescription": "

The technical description included in the data source run activity.

", + "DeleteDataSourceOutput$description": "

The description of the data source that is deleted.

", + "EnvironmentBlueprintSummary$description": "

The description of a blueprint.

", + "EnvironmentProfileSummary$description": "

The description of the environment profile.

", + "EnvironmentSummary$description": "

The description of the environment.

", + "FormTypeData$description": "

The description of the metadata form type.

", + "GetAssetOutput$description": "

The description of the Amazon DataZone asset.

", + "GetAssetTypeOutput$description": "

The description of the asset type.

", + "GetDataSourceOutput$description": "

The description of the data source.

", + "GetEnvironmentBlueprintOutput$description": "

The description of this Amazon DataZone blueprint.

", + "GetEnvironmentOutput$description": "

The description of the environment.

", + "GetEnvironmentProfileOutput$description": "

The description of the environment profile.

", + "GetFormTypeOutput$description": "

The description of the metadata form type.

", + "GetListingOutput$description": "

", + "GetProjectOutput$description": "

The description of the project.

", + "ProjectSummary$description": "

The description of a project.

", + "SubscribedListing$description": "

The description of the published asset for which the subscription grant is created.

", + "UpdateDataSourceInput$description": "

The description to be updated as part of the UpdateDataSource action.

", + "UpdateDataSourceOutput$description": "

The description to be updated as part of the UpdateDataSource action.

", + "UpdateEnvironmentOutput$description": "

The description to be updated as part of the UpdateEnvironment action.

", + "UpdateEnvironmentProfileOutput$description": "

The description to be updated as part of the UpdateEnvironmentProfile action.

", + "UpdateProjectInput$description": "

The description to be updated as part of the UpdateProject action.

", + "UpdateProjectOutput$description": "

The description of the project that is to be updated.

" + } + }, + "DetailedGlossaryTerm": { + "base": "

Details of a glossary term attached to the inventory asset.

", + "refs": { + "DetailedGlossaryTerms$member": null + } + }, + "DetailedGlossaryTerms": { + "base": null, + "refs": { + "AssetListing$glossaryTerms": "

The glossary terms attached to an asset published in an Amazon DataZone catalog.

", + "AssetListingItem$glossaryTerms": "

Glossary terms attached to the inventory asset.

", + "SubscribedAssetListing$glossaryTerms": "

The glossary terms attached to the published asset for which the subscription grant is created.

" + } + }, + "DomainDescription": { + "base": null, + "refs": { + "DomainSummary$description": "

A description of an Amazon DataZone domain.

" + } + }, + "DomainId": { + "base": null, + "refs": { + "AcceptPredictionsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "AcceptPredictionsOutput$domainId": "

", + "AcceptSubscriptionRequestInput$domainIdentifier": "

The Amazon DataZone domain where the specified subscription request is being accepted.

", + "AcceptSubscriptionRequestOutput$domainId": "

The unique identifier of the Amazon DataZone domain where the specified subscription request was accepted.

", + "AssetItem$domainId": "

The identifier of the Amazon DataZone domain in which the inventory asset exists.

", + "AssetRevision$domainId": "

The Amazon DataZone user who created the inventory asset.

", + "AssetTypeItem$domainId": "

The identifier of the Amazon DataZone domain where the asset type exists.

", + "AssetTypeItem$originDomainId": "

The identifier of the Amazon DataZone domain where the asset type was originally created.

", + "CancelSubscriptionInput$domainIdentifier": "

The unique identifier of the Amazon DataZone domain where the subscription request is being cancelled.

", + "CancelSubscriptionOutput$domainId": "

The unique identifier of the Amazon DataZone domain where the subscription is being cancelled.

", + "CreateAssetInput$domainIdentifier": "

Amazon DataZone domain where the asset is created.

", + "CreateAssetOutput$domainId": "

The ID of the Amazon DataZone domain in which the asset was created.

", + "CreateAssetRevisionInput$domainIdentifier": "

The unique identifier of the domain where the asset is being revised.

", + "CreateAssetRevisionOutput$domainId": "

The unique identifier of the Amazon DataZone domain where the asset was revised.

", + "CreateAssetTypeInput$domainIdentifier": "

The unique identifier of the Amazon DataZone domain where the custom asset type is being created.

", + "CreateAssetTypeOutput$domainId": "

The ID of the Amazon DataZone domain in which the asset type was created.

", + "CreateAssetTypeOutput$originDomainId": "

The ID of the Amazon DataZone domain where the asset type was originally created.

", + "CreateDataSourceInput$domainIdentifier": "

The ID of the Amazon DataZone domain where the data source is created.

", + "CreateDataSourceOutput$domainId": "

The ID of the Amazon DataZone domain in which the data source is created.

", + "CreateDomainOutput$id": "

The identifier of the Amazon DataZone domain.

", + "CreateEnvironmentInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which the environment is created.

", + "CreateEnvironmentOutput$domainId": "

The identifier of the Amazon DataZone domain in which the environment is created.

", + "CreateEnvironmentProfileInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this environment profile is created.

", + "CreateEnvironmentProfileOutput$domainId": "

The ID of the Amazon DataZone domain in which this environment profile is created.

", + "CreateFormTypeInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this metadata form type is created.

", + "CreateFormTypeOutput$domainId": "

The ID of the Amazon DataZone domain in which this metadata form type is created.

", + "CreateFormTypeOutput$originDomainId": "

The ID of the Amazon DataZone domain in which this metadata form type was originally created.

", + "CreateGlossaryInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this business glossary is created.

", + "CreateGlossaryOutput$domainId": "

The ID of the Amazon DataZone domain in which this business glossary is created.

", + "CreateGlossaryTermInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this business glossary term is created.

", + "CreateGlossaryTermOutput$domainId": "

The ID of the Amazon DataZone domain in which this business glossary term is created.

", + "CreateGroupProfileInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which the group profile is created.

", + "CreateGroupProfileOutput$domainId": "

The identifier of the Amazon DataZone domain in which the group profile is created.

", + "CreateListingChangeSetInput$domainIdentifier": "

", + "CreateProjectInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this project is created.

", + "CreateProjectMembershipInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which project membership is created.

", + "CreateProjectOutput$domainId": "

The identifier of the Amazon DataZone domain in which the project was created.

", + "CreateSubscriptionGrantInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription grant is created.

", + "CreateSubscriptionGrantOutput$domainId": "

The ID of the Amazon DataZone domain in which the subscription grant is created.

", + "CreateSubscriptionRequestInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription request is created.

", + "CreateSubscriptionRequestOutput$domainId": "

The ID of the Amazon DataZone domain in whcih the subscription request is created.

", + "CreateSubscriptionTargetInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which subscription target is created.

", + "CreateSubscriptionTargetOutput$domainId": "

The ID of the Amazon DataZone domain in which the subscription target was created.

", + "CreateUserProfileInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a user profile is created.

", + "CreateUserProfileOutput$domainId": "

The identifier of the Amazon DataZone domain in which a user profile is created.

", + "DataProductItem$domainId": "

", + "DataProductSummary$domainId": "

", + "DataSourceSummary$domainId": "

The ID of the Amazon DataZone domain in which the data source exists.

", + "DeleteAssetInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the asset is deleted.

", + "DeleteAssetTypeInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the asset type is deleted.

", + "DeleteDataSourceInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the data source is deleted.

", + "DeleteDataSourceOutput$domainId": "

The ID of the Amazon DataZone domain in which the data source is deleted.

", + "DeleteDomainInput$identifier": "

The identifier of the Amazon Web Services domain that is to be deleted.

", + "DeleteEnvironmentBlueprintConfigurationInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the blueprint configuration is deleted.

", + "DeleteEnvironmentInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the environment is deleted.

", + "DeleteEnvironmentProfileInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the environment profile is deleted.

", + "DeleteFormTypeInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the metadata form type is deleted.

", + "DeleteGlossaryInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the business glossary is deleted.

", + "DeleteGlossaryTermInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the business glossary term is deleted.

", + "DeleteListingInput$domainIdentifier": "

", + "DeleteProjectInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the project is deleted.

", + "DeleteProjectMembershipInput$domainIdentifier": "

The ID of the Amazon DataZone domain where project membership is deleted.

", + "DeleteSubscriptionGrantInput$domainIdentifier": "

The ID of the Amazon DataZone domain where the subscription grant is deleted.

", + "DeleteSubscriptionGrantOutput$domainId": "

The ID of the Amazon DataZone domain in which the subscription grant is deleted.

", + "DeleteSubscriptionRequestInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription request is deleted.

", + "DeleteSubscriptionTargetInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription target is deleted.

", + "DomainSummary$id": "

The ID of the Amazon DataZone domain.

", + "EnvironmentBlueprintConfigurationItem$domainId": "

The identifier of the Amazon DataZone domain in which an environment blueprint exists.

", + "EnvironmentProfileSummary$domainId": "

The identifier of the Amazon DataZone domain in which the environment profile exists.

", + "EnvironmentSummary$domainId": "

The identifier of the Amazon DataZone domain in which the environment exists.

", + "FormTypeData$domainId": "

The identifier of the Amazon DataZone domain in which the form type exists.

", + "FormTypeData$originDomainId": "

The identifier of the Amazon DataZone domain in which the form type was originally created.

", + "GetAssetInput$domainIdentifier": "

The ID of the Amazon DataZone domain to which the asset belongs.

", + "GetAssetOutput$domainId": "

The ID of the Amazon DataZone domain to which the asset belongs.

", + "GetAssetTypeInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the asset type exists.

", + "GetAssetTypeOutput$domainId": "

The ID of the Amazon DataZone domain in which the asset type exists.

", + "GetAssetTypeOutput$originDomainId": "

The ID of the Amazon DataZone domain in which the asset type was originally created.

", + "GetDataSourceInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the data source exists.

", + "GetDataSourceOutput$domainId": "

The ID of the Amazon DataZone domain in which the data source exists.

", + "GetDataSourceRunInput$domainIdentifier": "

The ID of the domain in which this data source run was performed.

", + "GetDataSourceRunOutput$domainId": "

The ID of the domain in which this data source run was performed.

", + "GetDomainInput$identifier": "

The identifier of the specified Amazon DataZone domain.

", + "GetDomainOutput$id": "

The identifier of the specified Amazon DataZone domain.

", + "GetEnvironmentBlueprintConfigurationInput$domainIdentifier": "

The ID of the Amazon DataZone domain where this blueprint exists.

", + "GetEnvironmentBlueprintConfigurationOutput$domainId": "

The ID of the Amazon DataZone domain where this blueprint exists.

", + "GetEnvironmentBlueprintInput$domainIdentifier": "

The identifier of the domain in which this blueprint exists.

", + "GetEnvironmentInput$domainIdentifier": "

The ID of the Amazon DataZone domain where the environment exists.

", + "GetEnvironmentOutput$domainId": "

The ID of the Amazon DataZone domain where the environment exists.

", + "GetEnvironmentProfileInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this environment profile exists.

", + "GetEnvironmentProfileOutput$domainId": "

The ID of the Amazon DataZone domain in which this environment profile exists.

", + "GetFormTypeInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this metadata form type exists.

", + "GetFormTypeOutput$domainId": "

The ID of the Amazon DataZone domain in which this metadata form type exists.

", + "GetFormTypeOutput$originDomainId": "

The ID of the Amazon DataZone domain in which the metadata form type was originally created.

", + "GetGlossaryInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this business glossary exists.

", + "GetGlossaryOutput$domainId": "

The ID of the Amazon DataZone domain in which this business glossary exists.

", + "GetGlossaryTermInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which this business glossary term exists.

", + "GetGlossaryTermOutput$domainId": "

The ID of the Amazon DataZone domain in which this business glossary term exists.

", + "GetGroupProfileInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which the group profile exists.

", + "GetGroupProfileOutput$domainId": "

The identifier of the Amazon DataZone domain in which the group profile exists.

", + "GetIamPortalLoginUrlInput$domainIdentifier": "

the ID of the Amazon DataZone domain the data portal of which you want to get.

", + "GetListingInput$domainIdentifier": "

", + "GetListingOutput$domainId": "

", + "GetProjectInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the project exists.

", + "GetProjectOutput$domainId": "

The ID of the Amazon DataZone domain in which the project exists.

", + "GetSubscriptionGrantInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription grant exists.

", + "GetSubscriptionGrantOutput$domainId": "

The ID of the Amazon DataZone domain in which the subscription grant exists.

", + "GetSubscriptionInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription exists.

", + "GetSubscriptionOutput$domainId": "

The ID of the Amazon DataZone domain in which the subscription exists.

", + "GetSubscriptionRequestDetailsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which to get the subscription request details.

", + "GetSubscriptionRequestDetailsOutput$domainId": "

The Amazon DataZone domain of the subscription request.

", + "GetSubscriptionTargetInput$domainIdentifier": "

The ID of the Amazon DataZone domain in which the subscription target exists.

", + "GetSubscriptionTargetOutput$domainId": "

The ID of the Amazon DataZone domain in which the subscription target exists.

", + "GetUserProfileInput$domainIdentifier": "

the ID of the Amazon DataZone domain the data portal of which you want to get.

", + "GetUserProfileOutput$domainId": "

the identifier of the Amazon DataZone domain of which you want to get the user profile.

", + "GlossaryItem$domainId": "

The identifier of the Amazon DataZone domain in which the business glossary exists.

", + "GlossaryTermItem$domainId": "

The identifier of the Amazon DataZone domain in which the business glossary exists.

", + "GroupProfileSummary$domainId": "

The ID of the Amazon DataZone domain of a group profile.

", + "ListAssetRevisionsInput$domainIdentifier": "

The identifier of the domain.

", + "ListDataSourceRunActivitiesInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which to list data source run activities.

", + "ListDataSourceRunsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which to invoke the ListDataSourceRuns action.

", + "ListDataSourcesInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which to list the data sources.

", + "ListEnvironmentBlueprintConfigurationsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListEnvironmentBlueprintsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListEnvironmentProfilesInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListEnvironmentsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListNotificationsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListProjectMembershipsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which you want to list project memberships.

", + "ListProjectsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListSubscriptionGrantsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListSubscriptionRequestsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "ListSubscriptionTargetsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain where you want to list subscription targets.

", + "ListSubscriptionsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "NotificationOutput$domainIdentifier": "

The identifier of a Amazon DataZone domain in which the notification exists.

", + "ProjectSummary$domainId": "

The identifier of a Amazon DataZone domain where the project exists.

", + "PutEnvironmentBlueprintConfigurationInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "PutEnvironmentBlueprintConfigurationOutput$domainId": "

The identifier of the Amazon DataZone domain.

", + "RejectPredictionsInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "RejectPredictionsOutput$domainId": "

", + "RejectSubscriptionRequestInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which the subscription request was rejected.

", + "RejectSubscriptionRequestOutput$domainId": "

The identifier of the Amazon DataZone domain in which the subscription request was rejected.

", + "RevokeSubscriptionInput$domainIdentifier": "

The identifier of the Amazon DataZone domain where you want to revoke a subscription.

", + "RevokeSubscriptionOutput$domainId": "

The identifier of the Amazon DataZone domain where you want to revoke a subscription.

", + "SearchGroupProfilesInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which you want to search group profiles.

", + "SearchInput$domainIdentifier": "

The identifier of the Amazon DataZone domain.

", + "SearchListingsInput$domainIdentifier": "

The identifier of the domain in which to search listings.

", + "SearchTypesInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which to invoke the SearchTypes action.

", + "SearchUserProfilesInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which you want to search user profiles.

", + "StartDataSourceRunInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which to start a data source run.

", + "StartDataSourceRunOutput$domainId": "

The identifier of the Amazon DataZone domain in which to start a data source run.

", + "SubscriptionGrantSummary$domainId": "

The identifier of the Amazon DataZone domain in which a subscription grant exists.

", + "SubscriptionRequestSummary$domainId": "

The identifier of the Amazon DataZone domain in which a subscription request exists.

", + "SubscriptionSummary$domainId": "

The identifier of the Amazon DataZone domain in which a subscription exists.

", + "SubscriptionTargetSummary$domainId": "

The identifier of the Amazon DataZone domain in which the subscription target exists.

", + "UpdateDataSourceInput$domainIdentifier": "

The identifier of the domain in which to update a data source.

", + "UpdateDataSourceOutput$domainId": "

The identifier of the Amazon DataZone domain in which a data source is to be updated.

", + "UpdateDomainInput$identifier": "

The ID of the Amazon Web Services domain that is to be updated.

", + "UpdateDomainOutput$id": "

The identifier of the Amazon DataZone domain.

", + "UpdateEnvironmentInput$domainIdentifier": "

The identifier of the domain in which the environment is to be updated.

", + "UpdateEnvironmentOutput$domainId": "

The identifier of the domain in which the environment is to be updated.

", + "UpdateEnvironmentProfileInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which an environment profile is to be updated.

", + "UpdateEnvironmentProfileOutput$domainId": "

The identifier of the Amazon DataZone domain in which the environment profile is to be updated.

", + "UpdateGlossaryInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a business glossary is to be updated.

", + "UpdateGlossaryOutput$domainId": "

The identifier of the Amazon DataZone domain in which a business glossary is to be updated.

", + "UpdateGlossaryTermInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a business glossary term is to be updated.

", + "UpdateGlossaryTermOutput$domainId": "

The identifier of the Amazon DataZone domain in which a business glossary term is to be updated.

", + "UpdateGroupProfileInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a group profile is updated.

", + "UpdateGroupProfileOutput$domainId": "

The identifier of the Amazon DataZone domain in which a group profile is updated.

", + "UpdateProjectInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a project is to be updated.

", + "UpdateProjectOutput$domainId": "

The identifier of the Amazon DataZone domain in which a project is updated.

", + "UpdateSubscriptionGrantStatusInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a subscription grant status is to be updated.

", + "UpdateSubscriptionGrantStatusOutput$domainId": "

The identifier of the Amazon DataZone domain in which a subscription grant status is to be updated.

", + "UpdateSubscriptionRequestInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a subscription request is to be updated.

", + "UpdateSubscriptionRequestOutput$domainId": "

The identifier of the Amazon DataZone domain in which a subscription request is to be updated.

", + "UpdateSubscriptionTargetInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a subscription target is to be updated.

", + "UpdateSubscriptionTargetOutput$domainId": "

The identifier of the Amazon DataZone domain in which a subscription target is to be updated.

", + "UpdateUserProfileInput$domainIdentifier": "

The identifier of the Amazon DataZone domain in which a user profile is updated.

", + "UpdateUserProfileOutput$domainId": "

The identifier of the Amazon DataZone domain in which a user profile is updated.

", + "UserProfileSummary$domainId": "

The ID of the Amazon DataZone domain of the user profile.

" + } + }, + "DomainName": { + "base": null, + "refs": { + "DomainSummary$name": "

A name of an Amazon DataZone domain.

" + } + }, + "DomainStatus": { + "base": null, + "refs": { + "CreateDomainOutput$status": "

The status of the Amazon DataZone domain.

", + "DeleteDomainOutput$status": "

The status of the domain.

", + "DomainSummary$status": "

The status of the Amazon DataZone domain.

", + "GetDomainOutput$status": "

The status of the specified Amazon DataZone domain.

", + "ListDomainsInput$status": "

The status of the data source.

" + } + }, + "DomainSummaries": { + "base": null, + "refs": { + "ListDomainsOutput$items": "

The results of the ListDomains action.

" + } + }, + "DomainSummary": { + "base": "

A summary of a Amazon DataZone domain.

", + "refs": { + "DomainSummaries$member": null + } + }, + "EnableSetting": { + "base": null, + "refs": { + "CreateDataSourceInput$enableSetting": "

Specifies whether the data source is enabled.

", + "CreateDataSourceOutput$enableSetting": "

Specifies whether the data source is enabled.

", + "DataSourceSummary$enableSetting": "

Specifies whether the data source is enabled.

", + "DeleteDataSourceOutput$enableSetting": "

The enable setting of the data source that specifies whether the data source is enabled or disabled.

", + "GetDataSourceOutput$enableSetting": "

Specifies whether this data source is enabled or not.

", + "UpdateDataSourceInput$enableSetting": "

The enable setting to be updated as part of the UpdateDataSource action.

", + "UpdateDataSourceOutput$enableSetting": "

The enable setting to be updated as part of the UpdateDataSource action.

" + } + }, + "EnabledRegionList": { + "base": null, + "refs": { + "EnvironmentBlueprintConfigurationItem$enabledRegions": "

The enabled Amazon Web Services Regions specified in a blueprint configuration.

", + "GetEnvironmentBlueprintConfigurationOutput$enabledRegions": "

The Amazon Web Services regions in which this blueprint is enabled.

", + "PutEnvironmentBlueprintConfigurationInput$enabledRegions": "

Specifies the enabled Amazon Web Services Regions.

", + "PutEnvironmentBlueprintConfigurationOutput$enabledRegions": "

Specifies the enabled Amazon Web Services Regions.

" + } + }, + "EntityId": { + "base": null, + "refs": { + "CreateListingChangeSetInput$entityIdentifier": "

" + } + }, + "EntityType": { + "base": null, + "refs": { + "CreateListingChangeSetInput$entityType": "

" + } + }, + "EnvironmentActionList": { + "base": null, + "refs": { + "CreateEnvironmentOutput$environmentActions": "

The configurable actions of this Amazon DataZone environment.

", + "GetEnvironmentOutput$environmentActions": "

The actions of the environment.

", + "UpdateEnvironmentOutput$environmentActions": "

The environment actions to be updated as part of the UpdateEnvironment action.

" + } + }, + "EnvironmentBlueprintConfigurationItem": { + "base": "

The configuration details of an environment blueprint.

", + "refs": { + "EnvironmentBlueprintConfigurations$member": null + } + }, + "EnvironmentBlueprintConfigurations": { + "base": null, + "refs": { + "ListEnvironmentBlueprintConfigurationsOutput$items": "

The results of the ListEnvironmentBlueprintConfigurations action.

" + } + }, + "EnvironmentBlueprintId": { + "base": null, + "refs": { + "CreateEnvironmentOutput$environmentBlueprintId": "

The ID of the blueprint with which this Amazon DataZone environment was created.

", + "CreateEnvironmentProfileInput$environmentBlueprintIdentifier": "

The ID of the blueprint with which this environment profile is created.

", + "CreateEnvironmentProfileOutput$environmentBlueprintId": "

The ID of the blueprint with which this environment profile is created.

", + "DeleteEnvironmentBlueprintConfigurationInput$environmentBlueprintIdentifier": "

The ID of the blueprint the configuration of which is deleted.

", + "EnvironmentBlueprintConfigurationItem$environmentBlueprintId": "

The identifier of the environment blueprint.

", + "EnvironmentBlueprintSummary$id": "

The identifier of the blueprint.

", + "EnvironmentProfileSummary$environmentBlueprintId": "

The identifier of a blueprint with which an environment profile is created.

", + "GetEnvironmentBlueprintConfigurationInput$environmentBlueprintIdentifier": "

He ID of the blueprint.

", + "GetEnvironmentBlueprintConfigurationOutput$environmentBlueprintId": "

The ID of the blueprint.

", + "GetEnvironmentBlueprintInput$identifier": "

The ID of this Amazon DataZone blueprint.

", + "GetEnvironmentBlueprintOutput$id": "

The ID of this Amazon DataZone blueprint.

", + "GetEnvironmentOutput$environmentBlueprintId": "

The blueprint with which the environment is created.

", + "GetEnvironmentProfileOutput$environmentBlueprintId": "

The ID of the blueprint with which this environment profile is created.

", + "ListEnvironmentProfilesInput$environmentBlueprintIdentifier": "

The identifier of the blueprint that was used to create the environment profiles that you want to list.

", + "ListEnvironmentsInput$environmentBlueprintIdentifier": "

The identifier of the Amazon DataZone blueprint.

", + "PutEnvironmentBlueprintConfigurationInput$environmentBlueprintIdentifier": "

The identifier of the environment blueprint.

", + "PutEnvironmentBlueprintConfigurationOutput$environmentBlueprintId": "

The identifier of the environment blueprint.

", + "UpdateEnvironmentOutput$environmentBlueprintId": "

The blueprint identifier of the environment.

", + "UpdateEnvironmentProfileOutput$environmentBlueprintId": "

The identifier of the blueprint of the environment profile that is to be updated.

" + } + }, + "EnvironmentBlueprintName": { + "base": null, + "refs": { + "EnvironmentBlueprintSummary$name": "

The name of the blueprint.

", + "GetEnvironmentBlueprintOutput$name": "

The name of this Amazon DataZone blueprint.

", + "ListEnvironmentBlueprintsInput$name": "

The name of the Amazon DataZone environment.

" + } + }, + "EnvironmentBlueprintSummaries": { + "base": null, + "refs": { + "ListEnvironmentBlueprintsOutput$items": "

The results of the ListEnvironmentBlueprints action.

" + } + }, + "EnvironmentBlueprintSummary": { + "base": "

The details of an environment blueprint summary.

", + "refs": { + "EnvironmentBlueprintSummaries$member": null + } + }, + "EnvironmentError": { + "base": "

The failure reasons for the environment deployment.

", + "refs": { + "Deployment$failureReason": "

The failure reason of the last deployment of the environment.

" + } + }, + "EnvironmentId": { + "base": null, + "refs": { + "CreateDataSourceOutput$environmentId": "

The unique identifier of the Amazon DataZone environment to which the data source publishes assets.

", + "CreateEnvironmentOutput$id": "

The ID of this Amazon DataZone environment.

", + "CreateSubscriptionGrantInput$environmentIdentifier": "

The ID of the environment in which the subscription grant is created.

", + "CreateSubscriptionTargetInput$environmentIdentifier": "

The ID of the environment in which subscription target is created.

", + "CreateSubscriptionTargetOutput$environmentId": "

The ID of the environment in which the subscription target was created.

", + "DataSourceSummary$environmentId": "

The ID of the environment in which the data source exists.

", + "DeleteDataSourceOutput$environmentId": "

The ID of the environemnt associated with this data source.

", + "DeleteEnvironmentInput$identifier": "

The identifier of the environment that is to be deleted.

", + "DeleteSubscriptionTargetInput$environmentIdentifier": "

The ID of the Amazon DataZone environment in which the subscription target is deleted.

", + "EnvironmentSummary$id": "

The identifier of the environment.

", + "GetDataSourceOutput$environmentId": "

The ID of the environment where this data source creates and publishes assets,

", + "GetEnvironmentInput$identifier": "

The ID of the Amazon DataZone environment.

", + "GetEnvironmentOutput$id": "

The ID of the environment.

", + "GetSubscriptionTargetInput$environmentIdentifier": "

The ID of the environment associated with the subscription target.

", + "GetSubscriptionTargetOutput$environmentId": "

The ID of the environment associated with the subscription target.

", + "ListSubscriptionGrantsInput$environmentId": "

The identifier of the Amazon DataZone environment.

", + "ListSubscriptionTargetsInput$environmentIdentifier": "

The identifier of the environment where you want to list subscription targets.

", + "SubscriptionTargetSummary$environmentId": "

The identifier of the environment of the subscription target.

", + "UpdateDataSourceOutput$environmentId": "

The identifier of the environment in which a data source is to be updated.

", + "UpdateEnvironmentInput$identifier": "

The identifier of the environment that is to be updated.

", + "UpdateEnvironmentOutput$id": "

The identifier of the environment that is to be updated.

", + "UpdateSubscriptionTargetInput$environmentIdentifier": "

The identifier of the environment in which a subscription target is to be updated.

", + "UpdateSubscriptionTargetOutput$environmentId": "

The identifier of the environment in which a subscription target is to be updated.

" + } + }, + "EnvironmentName": { + "base": null, + "refs": { + "CreateEnvironmentOutput$name": "

The name of this environment.

", + "EnvironmentSummary$name": "

The name of the environment.

", + "GetEnvironmentOutput$name": "

The name of the environment.

", + "UpdateEnvironmentOutput$name": "

The name to be updated as part of the UpdateEnvironment action.

" + } + }, + "EnvironmentParameter": { + "base": "

The parameter details of an evironment profile.

", + "refs": { + "EnvironmentParametersList$member": null + } + }, + "EnvironmentParametersList": { + "base": null, + "refs": { + "CreateEnvironmentInput$userParameters": "

The user parameters of this Amazon DataZone environment.

", + "CreateEnvironmentProfileInput$userParameters": "

The user parameters of this Amazon DataZone environment profile.

", + "UpdateEnvironmentProfileInput$userParameters": "

The user parameters to be updated as part of the UpdateEnvironmentProfile action.

" + } + }, + "EnvironmentProfileId": { + "base": null, + "refs": { + "CreateEnvironmentInput$environmentProfileIdentifier": "

The identifier of the environment profile that is used to create this Amazon DataZone environment.

", + "CreateEnvironmentOutput$environmentProfileId": "

The ID of the environment profile with which this Amazon DataZone environment was created.

", + "CreateEnvironmentProfileOutput$id": "

The ID of this Amazon DataZone environment profile.

", + "DeleteEnvironmentProfileInput$identifier": "

The ID of the environment profile that is deleted.

", + "EnvironmentProfileSummary$id": "

The identifier of the environment profile.

", + "EnvironmentSummary$environmentProfileId": "

The identifier of the environment profile with which the environment was created.

", + "GetEnvironmentOutput$environmentProfileId": "

The ID of the environment profile with which the environment is created.

", + "GetEnvironmentProfileInput$identifier": "

The ID of the environment profile.

", + "GetEnvironmentProfileOutput$id": "

The ID of the environment profile.

", + "ListEnvironmentsInput$environmentProfileIdentifier": "

The identifier of the environment profile.

", + "UpdateEnvironmentOutput$environmentProfileId": "

The profile identifier of the environment.

", + "UpdateEnvironmentProfileInput$identifier": "

The identifier of the environment profile that is to be updated.

", + "UpdateEnvironmentProfileOutput$id": "

The identifier of the environment profile that is to be udpated.

" + } + }, + "EnvironmentProfileName": { + "base": null, + "refs": { + "CreateEnvironmentProfileInput$name": "

The name of this Amazon DataZone environment profile.

", + "CreateEnvironmentProfileOutput$name": "

The name of this Amazon DataZone environment profile.

", + "EnvironmentProfileSummary$name": "

The name of the environment profile.

", + "GetEnvironmentProfileOutput$name": "

The name of the environment profile.

", + "ListEnvironmentProfilesInput$name": "

", + "UpdateEnvironmentProfileInput$name": "

The name to be updated as part of the UpdateEnvironmentProfile action.

", + "UpdateEnvironmentProfileOutput$name": "

The name to be updated as part of the UpdateEnvironmentProfile action.

" + } + }, + "EnvironmentProfileSummaries": { + "base": null, + "refs": { + "ListEnvironmentProfilesOutput$items": "

The results of the ListEnvironmentProfiles action.

" + } + }, + "EnvironmentProfileSummary": { + "base": "

The details of an environment profile.

", + "refs": { + "EnvironmentProfileSummaries$member": null + } + }, + "EnvironmentStatus": { + "base": null, + "refs": { + "CreateEnvironmentOutput$status": "

The status of this Amazon DataZone environment.

", + "EnvironmentSummary$status": "

The status of the environment.

", + "GetEnvironmentOutput$status": "

The status of this Amazon DataZone environment.

", + "ListEnvironmentsInput$status": "

The status of the environments that you want to list.

", + "UpdateEnvironmentOutput$status": "

The status to be updated as part of the UpdateEnvironment action.

" + } + }, + "EnvironmentSummaries": { + "base": null, + "refs": { + "ListEnvironmentsOutput$items": "

The results of the ListEnvironments action.

" + } + }, + "EnvironmentSummary": { + "base": "

The details of an environment.

", + "refs": { + "EnvironmentSummaries$member": null + } + }, + "ErrorMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "UnauthorizedException$message": null, + "ValidationException$message": null + } + }, + "ExternalIdentifier": { + "base": null, + "refs": { + "AssetItem$externalIdentifier": "

The external identifier of the Amazon DataZone inventory asset.

", + "CreateAssetInput$externalIdentifier": "

", + "CreateAssetOutput$externalIdentifier": "

", + "CreateAssetRevisionOutput$externalIdentifier": "

", + "GetAssetOutput$externalIdentifier": "

" + } + }, + "FailureCause": { + "base": "

Specifies the error message that is returned if the operation cannot be successfully completed.

", + "refs": { + "SubscribedAsset$failureCause": "

The failure cause included in the details of the asset for which the subscription grant is created.

", + "UpdateSubscriptionGrantStatusInput$failureCause": "

Specifies the error message that is returned if the operation cannot be successfully completed.

" + } + }, + "Filter": { + "base": "

A search filter in Amazon DataZone.

", + "refs": { + "FilterClause$filter": "

A search filter in Amazon DataZone.

" + } + }, + "FilterClause": { + "base": "

A search filter clause in Amazon DataZone.

", + "refs": { + "FilterList$member": null, + "SearchInput$filters": "

Specifies the search filters.

", + "SearchListingsInput$filters": "

Specifies the filters for the search of listings.

", + "SearchTypesInput$filters": "

The filters for the SearchTypes action.

" + } + }, + "FilterExpression": { + "base": "

A filter expression in Amazon DataZone.

", + "refs": { + "FilterExpressions$member": null + } + }, + "FilterExpressionExpressionString": { + "base": null, + "refs": { + "FilterExpression$expression": "

The search filter expression.

" + } + }, + "FilterExpressionType": { + "base": null, + "refs": { + "FilterExpression$type": "

The search filter explresison type.

" + } + }, + "FilterExpressions": { + "base": null, + "refs": { + "RelationalFilterConfiguration$filterExpressions": "

The filter expressions specified in the relational filter configuration for the data source.

" + } + }, + "FilterList": { + "base": null, + "refs": { + "FilterClause$and": "

The 'and' search filter clause in Amazon DataZone.

", + "FilterClause$or": "

The 'or' search filter clause in Amazon DataZone.

" + } + }, + "FilterValueString": { + "base": null, + "refs": { + "Filter$value": "

A search filter value in Amazon DataZone.

" + } + }, + "FirstName": { + "base": null, + "refs": { + "SsoUserProfileDetails$firstName": "

The first name included in the single sign-on details of the user profile.

" + } + }, + "Float": { + "base": null, + "refs": { + "AcceptRule$threshold": "

The confidence score that specifies the condition at which a prediction can be accepted.

", + "RejectRule$threshold": "

The confidence score that specifies the condition at which a prediction can be rejected.

" + } + }, + "FormEntryInput": { + "base": "

The details of the form entry.

", + "refs": { + "FormsInputMap$value": null + } + }, + "FormEntryOutput": { + "base": "

The details of the form entry.

", + "refs": { + "FormsOutputMap$value": null + } + }, + "FormInput": { + "base": "

The details of a metadata form.

", + "refs": { + "FormInputList$member": null + } + }, + "FormInputContentString": { + "base": null, + "refs": { + "FormInput$content": "

The content of the metadata form.

" + } + }, + "FormInputList": { + "base": null, + "refs": { + "CreateAssetInput$formsInput": "

Metadata forms attached to the asset.

", + "CreateAssetRevisionInput$formsInput": "

The metadata forms to be attached to the asset as part of asset revision.

", + "CreateDataSourceInput$assetFormsInput": "

The metadata forms that are to be attached to the assets that this data source works with.

", + "UpdateDataSourceInput$assetFormsInput": "

The asset forms to be updated as part of the UpdateDataSource action.

" + } + }, + "FormName": { + "base": null, + "refs": { + "FormInput$formName": "

The name of the metadata form.

", + "FormOutput$formName": "

The name of the metadata form.

", + "FormsInputMap$key": null, + "FormsOutputMap$key": null, + "SubscriptionTargetForm$formName": "

The form name included in the subscription target configuration.

" + } + }, + "FormOutput": { + "base": "

The details of a metadata form.

", + "refs": { + "FormOutputList$member": null + } + }, + "FormOutputList": { + "base": null, + "refs": { + "AssetItemAdditionalAttributes$formsOutput": "

The forms included in the additional attributes of an inventory asset.

", + "AssetItemAdditionalAttributes$readOnlyFormsOutput": "

The read-only forms included in the additional attributes of an inventory asset.

", + "CreateAssetOutput$formsOutput": "

The metadata forms that are attached to the created asset.

", + "CreateAssetOutput$readOnlyFormsOutput": "

The read-only metadata forms that are attached to the created asset.

", + "CreateAssetRevisionOutput$formsOutput": "

The metadata forms that were attached to the asset as part of the asset revision.

", + "CreateAssetRevisionOutput$readOnlyFormsOutput": "

The read-only metadata forms that were attached to the asset as part of the asset revision.

", + "CreateDataSourceOutput$assetFormsOutput": "

The metadata forms attached to the assets that this data source creates.

", + "DeleteDataSourceOutput$assetFormsOutput": "

The asset data forms associated with this data source.

", + "GetAssetOutput$formsOutput": "

The metadata forms attached to the asset.

", + "GetAssetOutput$readOnlyFormsOutput": "

The read-only metadata forms attached to the asset.

", + "GetDataSourceOutput$assetFormsOutput": "

The metadata forms attached to the assets created by this data source.

", + "UpdateDataSourceOutput$assetFormsOutput": "

The asset forms to be updated as part of the UpdateDataSource action.

" + } + }, + "FormTypeData": { + "base": "

The details of the metadata form type.

", + "refs": { + "SearchTypesResultItem$formTypeItem": "

The form type included in the results of the SearchTypes action.

" + } + }, + "FormTypeIdentifier": { + "base": null, + "refs": { + "DeleteFormTypeInput$formTypeIdentifier": "

The ID of the metadata form type that is deleted.

", + "FormEntryInput$typeIdentifier": "

The type ID of the form entry.

", + "FormInput$typeIdentifier": "

The ID of the metadata form type.

", + "GetFormTypeInput$formTypeIdentifier": "

The ID of the metadata form type.

" + } + }, + "FormTypeName": { + "base": null, + "refs": { + "CreateFormTypeInput$name": "

The name of this Amazon DataZone metadata form type.

", + "CreateFormTypeOutput$name": "

The name of this Amazon DataZone metadata form type.

", + "FormEntryOutput$typeName": "

The name of the type of the form entry.

", + "FormOutput$typeName": "

The name of the metadata form type.

", + "FormTypeData$name": "

The name of the form type.

", + "GetFormTypeOutput$name": "

The name of the metadata form type.

", + "Import$name": "

The name of the import.

" + } + }, + "FormTypeStatus": { + "base": null, + "refs": { + "CreateFormTypeInput$status": "

The status of this Amazon DataZone metadata form type.

", + "FormTypeData$status": "

The status of the form type.

", + "GetFormTypeOutput$status": "

The status of the metadata form type.

" + } + }, + "Forms": { + "base": null, + "refs": { + "AssetListing$forms": "

The metadata forms attached to an asset published in an Amazon DataZone catalog.

", + "AssetListingItemAdditionalAttributes$forms": "

The metadata forms that form additional attributes of the metadata asset.

", + "SubscribedAssetListing$forms": "

The forms attached to the published asset for which the subscription grant is created.

" + } + }, + "FormsInputMap": { + "base": null, + "refs": { + "CreateAssetTypeInput$formsInput": "

The metadata forms that are to be attached to the custom asset type.

" + } + }, + "FormsOutputMap": { + "base": null, + "refs": { + "AssetTypeItem$formsOutput": "

The forms included in the details of the asset type.

", + "CreateAssetTypeOutput$formsOutput": "

The metadata forms that are attached to the asset type.

", + "GetAssetTypeOutput$formsOutput": "

The metadata forms attached to the asset type.

" + } + }, + "GetAssetInput": { + "base": null, + "refs": { + } + }, + "GetAssetOutput": { + "base": null, + "refs": { + } + }, + "GetAssetTypeInput": { + "base": null, + "refs": { + } + }, + "GetAssetTypeOutput": { + "base": null, + "refs": { + } + }, + "GetDataSourceInput": { + "base": null, + "refs": { + } + }, + "GetDataSourceOutput": { + "base": null, + "refs": { + } + }, + "GetDataSourceRunInput": { + "base": null, + "refs": { + } + }, + "GetDataSourceRunOutput": { + "base": null, + "refs": { + } + }, + "GetDomainInput": { + "base": null, + "refs": { + } + }, + "GetDomainOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentBlueprintConfigurationInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentBlueprintConfigurationOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentBlueprintInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentBlueprintOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentProfileInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentProfileOutput": { + "base": null, + "refs": { + } + }, + "GetFormTypeInput": { + "base": null, + "refs": { + } + }, + "GetFormTypeOutput": { + "base": null, + "refs": { + } + }, + "GetGlossaryInput": { + "base": null, + "refs": { + } + }, + "GetGlossaryOutput": { + "base": null, + "refs": { + } + }, + "GetGlossaryTermInput": { + "base": null, + "refs": { + } + }, + "GetGlossaryTermOutput": { + "base": null, + "refs": { + } + }, + "GetGroupProfileInput": { + "base": null, + "refs": { + } + }, + "GetGroupProfileOutput": { + "base": null, + "refs": { + } + }, + "GetIamPortalLoginUrlInput": { + "base": null, + "refs": { + } + }, + "GetIamPortalLoginUrlOutput": { + "base": null, + "refs": { + } + }, + "GetListingInput": { + "base": null, + "refs": { + } + }, + "GetListingOutput": { + "base": null, + "refs": { + } + }, + "GetProjectInput": { + "base": null, + "refs": { + } + }, + "GetProjectOutput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionGrantInput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionGrantOutput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionInput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionOutput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionRequestDetailsInput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionRequestDetailsOutput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionRequestDetailsOutputSubscribedListingsList": { + "base": null, + "refs": { + "GetSubscriptionRequestDetailsOutput$subscribedListings": "

The subscribed listings in the subscription request.

" + } + }, + "GetSubscriptionRequestDetailsOutputSubscribedPrincipalsList": { + "base": null, + "refs": { + "GetSubscriptionRequestDetailsOutput$subscribedPrincipals": "

The subscribed principals in the subscription request.

" + } + }, + "GetSubscriptionTargetInput": { + "base": null, + "refs": { + } + }, + "GetSubscriptionTargetOutput": { + "base": null, + "refs": { + } + }, + "GetUserProfileInput": { + "base": null, + "refs": { + } + }, + "GetUserProfileOutput": { + "base": null, + "refs": { + } + }, + "GlossaryDescription": { + "base": null, + "refs": { + "CreateGlossaryInput$description": "

The description of this business glossary.

", + "CreateGlossaryOutput$description": "

The description of this business glossary.

", + "GetGlossaryOutput$description": "

The description of the business glossary.

", + "GlossaryItem$description": "

The business glossary description.

", + "UpdateGlossaryInput$description": "

The description to be updated as part of the UpdateGlossary action.

", + "UpdateGlossaryOutput$description": "

The description to be updated as part of the UpdateGlossary action.

" + } + }, + "GlossaryId": { + "base": null, + "refs": { + "CreateGlossaryOutput$id": "

The ID of this business glossary.

", + "CreateGlossaryTermOutput$glossaryId": "

The ID of the business glossary in which this term is created.

", + "DeleteGlossaryInput$identifier": "

The ID of the business glossary that is deleted.

", + "GetGlossaryInput$identifier": "

The ID of the business glossary.

", + "GetGlossaryOutput$id": "

The ID of the business glossary.

", + "GetGlossaryTermOutput$glossaryId": "

The ID of the business glossary to which this term belongs.

", + "GlossaryItem$id": "

The identifier of the glossary.

", + "GlossaryTermItem$glossaryId": "

The identifier of the business glossary to which the term belongs.

", + "UpdateGlossaryInput$identifier": "

The identifier of the business glossary to be updated.

", + "UpdateGlossaryOutput$id": "

The identifier of the business glossary that is to be updated.

", + "UpdateGlossaryTermOutput$glossaryId": "

The identifier of the business glossary in which a term is to be updated.

" + } + }, + "GlossaryItem": { + "base": "

The details of a business glossary.

", + "refs": { + "SearchInventoryResultItem$glossaryItem": "

The glossary item included in the search results.

" + } + }, + "GlossaryName": { + "base": null, + "refs": { + "CreateGlossaryInput$name": "

The name of this business glossary.

", + "CreateGlossaryOutput$name": "

The name of this business glossary.

", + "GetGlossaryOutput$name": "

The name of the business glossary.

", + "GlossaryItem$name": "

The name of the glossary.

", + "UpdateGlossaryInput$name": "

The name to be updated as part of the UpdateGlossary action.

", + "UpdateGlossaryOutput$name": "

The name to be updated as part of the UpdateGlossary action.

" + } + }, + "GlossaryStatus": { + "base": null, + "refs": { + "CreateGlossaryInput$status": "

The status of this business glossary.

", + "CreateGlossaryOutput$status": "

The status of this business glossary.

", + "GetGlossaryOutput$status": "

The status of the business glossary.

", + "GlossaryItem$status": "

The business glossary status.

", + "UpdateGlossaryInput$status": "

The status to be updated as part of the UpdateGlossary action.

", + "UpdateGlossaryOutput$status": "

The status to be updated as part of the UpdateGlossary action.

" + } + }, + "GlossaryTermId": { + "base": null, + "refs": { + "CreateGlossaryTermInput$glossaryIdentifier": "

The ID of the business glossary in which this term is created.

", + "CreateGlossaryTermOutput$id": "

The ID of this business glossary term.

", + "DeleteGlossaryTermInput$identifier": "

The ID of the business glossary term that is deleted.

", + "GetGlossaryTermInput$identifier": "

The ID of the business glossary term.

", + "GetGlossaryTermOutput$id": "

The ID of the business glossary term.

", + "GlossaryTermItem$id": "

The identifier of the business glossary term.

", + "GlossaryTerms$member": null, + "TermRelationsClassifiesList$member": null, + "TermRelationsIsAList$member": null, + "UpdateGlossaryTermInput$glossaryIdentifier": "

The identifier of the business glossary in which a term is to be updated.

", + "UpdateGlossaryTermInput$identifier": "

The identifier of the business glossary term that is to be updated.

", + "UpdateGlossaryTermOutput$id": "

The identifier of the business glossary term that is to be updated.

" + } + }, + "GlossaryTermItem": { + "base": "

The details of a business glossary term.

", + "refs": { + "SearchInventoryResultItem$glossaryTermItem": "

The glossary term item included in the search results.

" + } + }, + "GlossaryTermName": { + "base": null, + "refs": { + "CreateGlossaryTermInput$name": "

The name of this business glossary term.

", + "CreateGlossaryTermOutput$name": "

The name of this business glossary term.

", + "DetailedGlossaryTerm$name": "

The name of a glossary term attached to the inventory asset.

", + "GetGlossaryTermOutput$name": "

The name of the business glossary term.

", + "GlossaryTermItem$name": "

The name of the business glossary term.

", + "UpdateGlossaryTermInput$name": "

The name to be updated as part of the UpdateGlossaryTerm action.

", + "UpdateGlossaryTermOutput$name": "

The name to be updated as part of the UpdateGlossaryTerm action.

" + } + }, + "GlossaryTermStatus": { + "base": null, + "refs": { + "CreateGlossaryTermInput$status": "

The status of this business glossary term.

", + "CreateGlossaryTermOutput$status": "

The status of this business glossary term.

", + "GetGlossaryTermOutput$status": "

The status of the business glossary term.

", + "GlossaryTermItem$status": "

The status of the business glossary term.

", + "UpdateGlossaryTermInput$status": "

The status to be updated as part of the UpdateGlossaryTerm action.

", + "UpdateGlossaryTermOutput$status": "

The status to be updated as part of the UpdateGlossaryTerm action.

" + } + }, + "GlossaryTerms": { + "base": null, + "refs": { + "AssetItem$glossaryTerms": "

The glossary terms attached to the Amazon DataZone inventory asset.

", + "CreateAssetInput$glossaryTerms": "

Glossary terms attached to the asset.

", + "CreateAssetOutput$glossaryTerms": "

The glossary terms that are attached to the created asset.

", + "CreateAssetRevisionInput$glossaryTerms": "

The glossary terms to be attached to the asset as part of asset revision.

", + "CreateAssetRevisionOutput$glossaryTerms": "

The glossary terms that were attached to the asset as part of asset revision.

", + "CreateEnvironmentInput$glossaryTerms": "

The glossary terms that can be used in this Amazon DataZone environment.

", + "CreateEnvironmentOutput$glossaryTerms": "

The glossary terms that can be used in this Amazon DataZone environment.

", + "CreateProjectInput$glossaryTerms": "

The glossary terms that can be used in this Amazon DataZone project.

", + "CreateProjectOutput$glossaryTerms": "

The glossary terms that can be used in the project.

", + "DataProductSummary$glossaryTerms": "

", + "GetAssetOutput$glossaryTerms": "

The business glossary terms attached to the asset.

", + "GetEnvironmentBlueprintOutput$glossaryTerms": "

The glossary terms attached to this Amazon DataZone blueprint.

", + "GetEnvironmentOutput$glossaryTerms": "

The business glossary terms that can be used in this environment.

", + "GetProjectOutput$glossaryTerms": "

The business glossary terms that can be used in the project.

", + "UpdateEnvironmentInput$glossaryTerms": "

The glossary terms to be updated as part of the UpdateEnvironment action.

", + "UpdateEnvironmentOutput$glossaryTerms": "

The glossary terms to be updated as part of the UpdateEnvironment action.

", + "UpdateProjectInput$glossaryTerms": "

The glossary terms to be updated as part of the UpdateProject action.

", + "UpdateProjectOutput$glossaryTerms": "

The glossary terms of the project that are to be updated.

" + } + }, + "GlueRunConfigurationInput": { + "base": "

The configuration details of the Amazon Web Services Glue data source.

", + "refs": { + "DataSourceConfigurationInput$glueRunConfiguration": "

The configuration of the Amazon Web Services Glue data source.

" + } + }, + "GlueRunConfigurationInputDataAccessRoleString": { + "base": null, + "refs": { + "GlueRunConfigurationInput$dataAccessRole": "

The data access role included in the configuration details of the Amazon Web Services Glue data source.

" + } + }, + "GlueRunConfigurationOutput": { + "base": "

The configuration details of the Amazon Web Services Glue data source.

", + "refs": { + "DataSourceConfigurationOutput$glueRunConfiguration": "

The configuration of the Amazon Web Services Glue data source.

" + } + }, + "GlueRunConfigurationOutputAccountIdString": { + "base": null, + "refs": { + "GlueRunConfigurationOutput$accountId": "

The Amazon Web Services account ID included in the configuration details of the Amazon Web Services Glue data source.

" + } + }, + "GlueRunConfigurationOutputDataAccessRoleString": { + "base": null, + "refs": { + "GlueRunConfigurationOutput$dataAccessRole": "

The data access role included in the configuration details of the Amazon Web Services Glue data source.

" + } + }, + "GlueRunConfigurationOutputRegionString": { + "base": null, + "refs": { + "GlueRunConfigurationOutput$region": "

The Amazon Web Services region included in the configuration details of the Amazon Web Services Glue data source.

" + } + }, + "GrantedEntity": { + "base": "

The details of a listing for which a subscription is granted.

", + "refs": { + "CreateSubscriptionGrantOutput$grantedEntity": "

The entity to which the subscription is granted.

", + "DeleteSubscriptionGrantOutput$grantedEntity": "

The entity to which the subscription is deleted.

", + "GetSubscriptionGrantOutput$grantedEntity": "

The entity to which the subscription is granted.

", + "SubscriptionGrantSummary$grantedEntity": "

The entity to which the subscription is granted.

", + "UpdateSubscriptionGrantStatusOutput$grantedEntity": "

The granted entity to be updated as part of the UpdateSubscriptionGrantStatus action.

" + } + }, + "GrantedEntityInput": { + "base": "

The details of a listing for which a subscription is to be granted.

", + "refs": { + "CreateSubscriptionGrantInput$grantedEntity": "

The entity to which the subscription is to be granted.

" + } + }, + "GroupDetails": { + "base": "

The details of a group in Amazon DataZone.

", + "refs": { + "MemberDetails$group": "

The group details of a project member.

" + } + }, + "GroupIdentifier": { + "base": null, + "refs": { + "CreateGroupProfileInput$groupIdentifier": "

The identifier of the group for which the group profile is created.

", + "GetGroupProfileInput$groupIdentifier": "

The identifier of the group profile.

", + "UpdateGroupProfileInput$groupIdentifier": "

The identifier of the group profile that is updated.

" + } + }, + "GroupProfileId": { + "base": null, + "refs": { + "CreateGroupProfileOutput$id": "

The identifier of the group profile.

", + "GetGroupProfileOutput$id": "

The identifier of the group profile.

", + "GroupProfileSummary$id": "

The ID of a group profile.

", + "UpdateGroupProfileOutput$id": "

The identifier of the group profile that is updated.

" + } + }, + "GroupProfileName": { + "base": null, + "refs": { + "CreateGroupProfileOutput$groupName": "

The name of the group for which group profile is created.

", + "GetGroupProfileOutput$groupName": "

The name of the group for which the specified group profile exists.

", + "GroupProfileSummary$groupName": "

The group name of a group profile.

", + "UpdateGroupProfileOutput$groupName": "

The name of the group profile that is updated.

" + } + }, + "GroupProfileStatus": { + "base": null, + "refs": { + "CreateGroupProfileOutput$status": "

The status of the group profile.

", + "GetGroupProfileOutput$status": "

The identifier of the group profile.

", + "GroupProfileSummary$status": "

The status of a group profile.

", + "UpdateGroupProfileInput$status": "

The status of the group profile that is updated.

", + "UpdateGroupProfileOutput$status": "

The status of the group profile that is updated.

" + } + }, + "GroupProfileSummaries": { + "base": null, + "refs": { + "SearchGroupProfilesOutput$items": "

The results of the SearchGroupProfiles action.

" + } + }, + "GroupProfileSummary": { + "base": "

The details of a group profile.

", + "refs": { + "GroupProfileSummaries$member": null + } + }, + "GroupSearchText": { + "base": null, + "refs": { + "SearchGroupProfilesInput$searchText": "

Specifies the text for which to search.

" + } + }, + "GroupSearchType": { + "base": null, + "refs": { + "SearchGroupProfilesInput$groupType": "

The group type for which to search.

" + } + }, + "IamUserProfileDetails": { + "base": "

The details of an IAM user profile in Amazon DataZone.

", + "refs": { + "UserProfileDetails$iam": "

The IAM details included in the user profile details.

" + } + }, + "Import": { + "base": "

The details of the import of the metadata form type.

", + "refs": { + "ImportList$member": null + } + }, + "ImportList": { + "base": null, + "refs": { + "FormTypeData$imports": "

The imports specified in the form type.

", + "GetFormTypeOutput$imports": "

The imports of the metadata form type.

" + } + }, + "Integer": { + "base": null, + "refs": { + "AcceptChoice$predictionChoice": "

Specifies the prediction (aka, the automatically generated piece of metadata) that can be accepted.

", + "DataSourceSummary$lastRunAssetCount": "

The count of the assets created during the last data source run.

", + "GetDataSourceOutput$lastRunAssetCount": "

The number of assets created by the data source during its last run.

", + "PredictionChoices$member": null, + "RunStatisticsForAssets$added": "

The added statistic for the data source run.

", + "RunStatisticsForAssets$failed": "

The failed statistic for the data source run.

", + "RunStatisticsForAssets$skipped": "

The skipped statistic for the data source run.

", + "RunStatisticsForAssets$unchanged": "

The unchanged statistic for the data source run.

", + "RunStatisticsForAssets$updated": "

The updated statistic for the data source run.

", + "SearchListingsOutput$totalMatchCount": "

Total number of search results.

", + "SearchOutput$totalMatchCount": "

Total number of search results.

", + "SearchTypesOutput$totalMatchCount": "

Total number of search results.

" + } + }, + "InternalServerException": { + "base": "

The request has failed because of an unknown error, exception or failure.

", + "refs": { + } + }, + "InventorySearchScope": { + "base": null, + "refs": { + "SearchInput$searchScope": "

The scope of the search.

" + } + }, + "KmsKeyArn": { + "base": null, + "refs": { + "CreateDomainInput$kmsKeyIdentifier": "

The identifier of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt the Amazon DataZone domain, metadata, and reporting data.

", + "CreateDomainOutput$kmsKeyIdentifier": "

The identifier of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt the Amazon DataZone domain, metadata, and reporting data.

", + "GetDomainOutput$kmsKeyIdentifier": "

The identifier of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt the Amazon DataZone domain, metadata, and reporting data.

" + } + }, + "LastName": { + "base": null, + "refs": { + "SsoUserProfileDetails$lastName": "

The last name included in the single sign-on details of the user profile.

" + } + }, + "ListAssetRevisionsInput": { + "base": null, + "refs": { + } + }, + "ListAssetRevisionsOutput": { + "base": null, + "refs": { + } + }, + "ListDataSourceRunActivitiesInput": { + "base": null, + "refs": { + } + }, + "ListDataSourceRunActivitiesOutput": { + "base": null, + "refs": { + } + }, + "ListDataSourceRunsInput": { + "base": null, + "refs": { + } + }, + "ListDataSourceRunsOutput": { + "base": null, + "refs": { + } + }, + "ListDataSourcesInput": { + "base": null, + "refs": { + } + }, + "ListDataSourcesOutput": { + "base": null, + "refs": { + } + }, + "ListDomainsInput": { + "base": null, + "refs": { + } + }, + "ListDomainsOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentBlueprintConfigurationsInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentBlueprintConfigurationsOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentBlueprintsInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentBlueprintsOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentProfilesInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentProfilesOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentsInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentsOutput": { + "base": null, + "refs": { + } + }, + "ListNotificationsInput": { + "base": null, + "refs": { + } + }, + "ListNotificationsOutput": { + "base": null, + "refs": { + } + }, + "ListProjectMembershipsInput": { + "base": null, + "refs": { + } + }, + "ListProjectMembershipsOutput": { + "base": null, + "refs": { + } + }, + "ListProjectsInput": { + "base": null, + "refs": { + } + }, + "ListProjectsOutput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionGrantsInput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionGrantsOutput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionRequestsInput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionRequestsOutput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionTargetsInput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionTargetsOutput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionsInput": { + "base": null, + "refs": { + } + }, + "ListSubscriptionsOutput": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ListingId": { + "base": null, + "refs": { + "AssetListingDetails$listingId": "

The identifier of an asset published in an Amazon DataZone catalog.

", + "AssetListingItem$listingId": "

The identifier of the listing (asset published in Amazon DataZone catalog).

", + "CreateListingChangeSetOutput$listingId": "

", + "DeleteListingInput$identifier": "

", + "GetListingInput$identifier": "

", + "GetListingOutput$id": "

", + "ListSubscriptionGrantsInput$subscribedListingId": "

The identifier of the subscribed listing.

", + "ListSubscriptionRequestsInput$subscribedListingId": "

The identifier of the subscribed listing.

", + "ListSubscriptionsInput$subscribedListingId": "

The identifier of the subscribed listing for the subscriptions that you want to list.

", + "ListingRevision$id": "

An identifier of a revision of an asset published in a Amazon DataZone catalog.

", + "ListingRevisionInput$identifier": "

An identifier of revision to be made to an asset published in a Amazon DataZone catalog.

", + "SubscribedListing$id": "

The identifier of the published asset for which the subscription grant is created.

", + "SubscribedListingInput$identifier": "

The identifier of the published asset for which the subscription grant is to be created.

" + } + }, + "ListingItem": { + "base": "

The details of a listing (aka asset published in a Amazon DataZone catalog).

", + "refs": { + "GetListingOutput$item": "

" + } + }, + "ListingName": { + "base": null, + "refs": { + "GetListingOutput$name": "

", + "SubscribedListing$name": "

The name of the published asset for which the subscription grant is created.

" + } + }, + "ListingRevision": { + "base": "

A revision of an asset published in a Amazon DataZone catalog.

", + "refs": { + "GrantedEntity$listing": "

The listing for which a subscription is granted.

" + } + }, + "ListingRevisionInput": { + "base": "

A revision to be made to an asset published in a Amazon DataZone catalog.

", + "refs": { + "GrantedEntityInput$listing": "

The listing for which a subscription is to be granted.

" + } + }, + "ListingStatus": { + "base": null, + "refs": { + "AssetListingDetails$listingStatus": "

The status of an asset published in an Amazon DataZone catalog.

", + "CreateListingChangeSetOutput$status": "

", + "GetListingOutput$status": "

" + } + }, + "LongDescription": { + "base": null, + "refs": { + "CreateGlossaryTermInput$longDescription": "

The long description of this business glossary term.

", + "CreateGlossaryTermOutput$longDescription": "

The long description of this business glossary term.

", + "GetGlossaryTermOutput$longDescription": "

The long description of the business glossary term.

", + "GlossaryTermItem$longDescription": "

The long description of the business glossary term.

", + "UpdateGlossaryTermInput$longDescription": "

The long description to be updated as part of the UpdateGlossaryTerm action.

", + "UpdateGlossaryTermOutput$longDescription": "

The long description to be updated as part of the UpdateGlossaryTerm action.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListAssetRevisionsInput$maxResults": "

The maximum number of revisions to return in a single call to ListAssetRevisions. When the number of revisions to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListAssetRevisions to list the next set of revisions.

", + "ListDataSourceRunActivitiesInput$maxResults": "

The maximum number of activities to return in a single call to ListDataSourceRunActivities. When the number of activities to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListDataSourceRunActivities to list the next set of activities.

", + "ListDataSourceRunsInput$maxResults": "

The maximum number of runs to return in a single call to ListDataSourceRuns. When the number of runs to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListDataSourceRuns to list the next set of runs.

", + "ListDataSourcesInput$maxResults": "

The maximum number of data sources to return in a single call to ListDataSources. When the number of data sources to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListDataSources to list the next set of data sources.

", + "ListEnvironmentBlueprintConfigurationsInput$maxResults": "

The maximum number of blueprint configurations to return in a single call to ListEnvironmentBlueprintConfigurations. When the number of configurations to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListEnvironmentBlueprintConfigurations to list the next set of configurations.

", + "ListEnvironmentBlueprintsInput$maxResults": "

The maximum number of blueprints to return in a single call to ListEnvironmentBlueprints. When the number of blueprints to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListEnvironmentBlueprints to list the next set of blueprints.

", + "ListEnvironmentProfilesInput$maxResults": "

The maximum number of environment profiles to return in a single call to ListEnvironmentProfiles. When the number of environment profiles to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListEnvironmentProfiles to list the next set of environment profiles.

", + "ListEnvironmentsInput$maxResults": "

The maximum number of environments to return in a single call to ListEnvironments. When the number of environments to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListEnvironments to list the next set of environments.

", + "ListNotificationsInput$maxResults": "

The maximum number of notifications to return in a single call to ListNotifications. When the number of notifications to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListNotifications to list the next set of notifications.

", + "ListProjectMembershipsInput$maxResults": "

The maximum number of memberships to return in a single call to ListProjectMemberships. When the number of memberships to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListProjectMemberships to list the next set of memberships.

", + "ListProjectsInput$maxResults": "

The maximum number of projects to return in a single call to ListProjects. When the number of projects to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListProjects to list the next set of projects.

", + "ListSubscriptionGrantsInput$maxResults": "

The maximum number of subscription grants to return in a single call to ListSubscriptionGrants. When the number of subscription grants to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListSubscriptionGrants to list the next set of subscription grants.

", + "ListSubscriptionRequestsInput$maxResults": "

The maximum number of subscription requests to return in a single call to ListSubscriptionRequests. When the number of subscription requests to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListSubscriptionRequests to list the next set of subscription requests.

", + "ListSubscriptionTargetsInput$maxResults": "

The maximum number of subscription targets to return in a single call to ListSubscriptionTargets. When the number of subscription targets to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListSubscriptionTargets to list the next set of subscription targets.

", + "ListSubscriptionsInput$maxResults": "

The maximum number of subscriptions to return in a single call to ListSubscriptions. When the number of subscriptions to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListSubscriptions to list the next set of Subscriptions.

", + "SearchGroupProfilesInput$maxResults": "

The maximum number of results to return in a single call to SearchGroupProfiles. When the number of results to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to SearchGroupProfiles to list the next set of results.

", + "SearchInput$maxResults": "

The maximum number of results to return in a single call to Search. When the number of results to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to Search to list the next set of results.

", + "SearchListingsInput$maxResults": "

The maximum number of results to return in a single call to SearchListings. When the number of results to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to SearchListings to list the next set of results.

", + "SearchTypesInput$maxResults": "

The maximum number of results to return in a single call to SearchTypes. When the number of results to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to SearchTypes to list the next set of results.

", + "SearchUserProfilesInput$maxResults": "

The maximum number of results to return in a single call to SearchUserProfiles. When the number of results to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to SearchUserProfiles to list the next set of results.

" + } + }, + "MaxResultsForListDomains": { + "base": null, + "refs": { + "ListDomainsInput$maxResults": "

The maximum number of domains to return in a single call to ListDomains. When the number of domains to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListDomains to list the next set of domains.

" + } + }, + "Member": { + "base": "

The details about a project member.

", + "refs": { + "CreateProjectMembershipInput$member": "

The project member whose project membership was created.

", + "DeleteProjectMembershipInput$member": "

The project member whose project membership is deleted.

" + } + }, + "MemberDetails": { + "base": "

The details about a project member.

", + "refs": { + "ProjectMember$memberDetails": "

The membership details of a project member.

" + } + }, + "Message": { + "base": null, + "refs": { + "NotificationOutput$message": "

The message included in the notification.

" + } + }, + "MetadataMap": { + "base": null, + "refs": { + "NotificationOutput$metadata": "

The metadata included in the notification.

" + } + }, + "Model": { + "base": "

", + "refs": { + "CreateFormTypeInput$model": "

The model of this Amazon DataZone metadata form type.

", + "FormTypeData$model": "

The model of the form type.

", + "GetFormTypeOutput$model": "

The model of the metadata form type.

" + } + }, + "Name": { + "base": null, + "refs": { + "CreateDataSourceInput$name": "

The name of the data source.

", + "CreateDataSourceOutput$name": "

The name of the data source.

", + "DataSourceRunActivity$database": "

The database included in the data source run activity.

", + "DataSourceRunActivity$technicalName": "

The technical name included in the data source run activity.

", + "DataSourceSummary$name": "

The name of the data source.

", + "DeleteDataSourceOutput$name": "

The name of the data source that is deleted.

", + "GetDataSourceOutput$name": "

The name of the data source.

", + "ListDataSourcesInput$name": "

The name of the data source.

", + "UpdateDataSourceInput$name": "

The name to be updated as part of the UpdateDataSource action.

", + "UpdateDataSourceOutput$name": "

The name to be updated as part of the UpdateDataSource action.

" + } + }, + "NotificationOutput": { + "base": "

The details of a notification generated in Amazon DataZone.

", + "refs": { + "NotificationsList$member": null + } + }, + "NotificationResource": { + "base": "

The details of the resource mentioned in a notification.

", + "refs": { + "Topic$resource": null + } + }, + "NotificationResourceType": { + "base": null, + "refs": { + "NotificationResource$type": "

The type of the resource mentioned in a notification.

" + } + }, + "NotificationRole": { + "base": null, + "refs": { + "Topic$role": "

The role of the resource mentioned in a notification.

" + } + }, + "NotificationSubjects": { + "base": null, + "refs": { + "ListNotificationsInput$subjects": "

The subjects of notifications.

" + } + }, + "NotificationType": { + "base": null, + "refs": { + "ListNotificationsInput$type": "

The type of notifications.

", + "NotificationOutput$type": "

The type of the notification.

" + } + }, + "NotificationsList": { + "base": null, + "refs": { + "ListNotificationsOutput$notifications": "

The results of the ListNotifications action.

" + } + }, + "PaginationToken": { + "base": null, + "refs": { + "ListAssetRevisionsInput$nextToken": "

When the number of revisions is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of revisions, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListAssetRevisions to list the next set of revisions.

", + "ListAssetRevisionsOutput$nextToken": "

When the number of revisions is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of revisions, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListAssetRevisions to list the next set of revisions.

", + "ListDataSourceRunActivitiesInput$nextToken": "

When the number of activities is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of activities, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDataSourceRunActivities to list the next set of activities.

", + "ListDataSourceRunActivitiesOutput$nextToken": "

When the number of activities is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of activities, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDataSourceRunActivities to list the next set of activities.

", + "ListDataSourceRunsInput$nextToken": "

When the number of runs is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of runs, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDataSourceRuns to list the next set of runs.

", + "ListDataSourceRunsOutput$nextToken": "

When the number of runs is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of runs, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDataSourceRuns to list the next set of runs.

", + "ListDataSourcesInput$nextToken": "

When the number of data sources is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of data sources, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDataSources to list the next set of data sources.

", + "ListDataSourcesOutput$nextToken": "

When the number of data sources is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of data sources, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDataSources to list the next set of data sources.

", + "ListDomainsInput$nextToken": "

When the number of domains is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of domains, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDomains to list the next set of domains.

", + "ListDomainsOutput$nextToken": "

When the number of domains is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of domains, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListDomains to list the next set of domains.

", + "ListEnvironmentBlueprintConfigurationsInput$nextToken": "

When the number of blueprint configurations is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of configurations, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironmentBlueprintConfigurations to list the next set of configurations.

", + "ListEnvironmentBlueprintConfigurationsOutput$nextToken": "

When the number of blueprint configurations is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of configurations, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironmentBlueprintConfigurations to list the next set of configurations.

", + "ListEnvironmentBlueprintsInput$nextToken": "

When the number of blueprints in the environment is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of blueprints in the environment, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironmentBlueprintsto list the next set of blueprints.

", + "ListEnvironmentBlueprintsOutput$nextToken": "

When the number of blueprints in the environment is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of blueprints in the environment, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironmentBlueprintsto list the next set of blueprints.

", + "ListEnvironmentProfilesInput$nextToken": "

When the number of environment profiles is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of environment profiles, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironmentProfiles to list the next set of environment profiles.

", + "ListEnvironmentProfilesOutput$nextToken": "

When the number of environment profiles is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of environment profiles, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironmentProfiles to list the next set of environment profiles.

", + "ListEnvironmentsInput$nextToken": "

When the number of environments is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of environments, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironments to list the next set of environments.

", + "ListEnvironmentsOutput$nextToken": "

When the number of environments is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of environments, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListEnvironments to list the next set of environments.

", + "ListNotificationsInput$nextToken": "

When the number of notifications is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of notifications, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListNotifications to list the next set of notifications.

", + "ListNotificationsOutput$nextToken": "

When the number of notifications is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of notifications, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListNotifications to list the next set of notifications.

", + "ListProjectMembershipsInput$nextToken": "

When the number of memberships is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of memberships, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListProjectMemberships to list the next set of memberships.

", + "ListProjectMembershipsOutput$nextToken": "

When the number of memberships is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of memberships, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListProjectMemberships to list the next set of memberships.

", + "ListProjectsInput$nextToken": "

When the number of projects is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of projects, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListProjects to list the next set of projects.

", + "ListProjectsOutput$nextToken": "

When the number of projects is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of projects, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListProjects to list the next set of projects.

", + "ListSubscriptionGrantsInput$nextToken": "

When the number of subscription grants is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscription grants, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptionGrants to list the next set of subscription grants.

", + "ListSubscriptionGrantsOutput$nextToken": "

When the number of subscription grants is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscription grants, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptionGrants to list the next set of subscription grants.

", + "ListSubscriptionRequestsInput$nextToken": "

When the number of subscription requests is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscription requests, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptionRequests to list the next set of subscription requests.

", + "ListSubscriptionRequestsOutput$nextToken": "

When the number of subscription requests is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscription requests, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptionRequests to list the next set of subscription requests.

", + "ListSubscriptionTargetsInput$nextToken": "

When the number of subscription targets is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscription targets, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptionTargets to list the next set of subscription targets.

", + "ListSubscriptionTargetsOutput$nextToken": "

When the number of subscription targets is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscription targets, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptionTargets to list the next set of subscription targets.

", + "ListSubscriptionsInput$nextToken": "

When the number of subscriptions is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscriptions, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptions to list the next set of subscriptions.

", + "ListSubscriptionsOutput$nextToken": "

When the number of subscriptions is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscriptions, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptions to list the next set of subscriptions.

", + "SearchGroupProfilesInput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchGroupProfiles to list the next set of results.

", + "SearchGroupProfilesOutput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchGroupProfiles to list the next set of results.

", + "SearchInput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to Search to list the next set of results.

", + "SearchListingsInput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchListings to list the next set of results.

", + "SearchListingsOutput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchListings to list the next set of results.

", + "SearchOutput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to Search to list the next set of results.

", + "SearchTypesInput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchTypes to list the next set of results.

", + "SearchTypesOutput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchTypes to list the next set of results.

", + "SearchUserProfilesInput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchUserProfiles to list the next set of results.

", + "SearchUserProfilesOutput$nextToken": "

When the number of results is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of results, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to SearchUserProfiles to list the next set of results.

" + } + }, + "PredictionChoices": { + "base": null, + "refs": { + "RejectChoice$predictionChoices": "

Specifies the the automatically generated business metadata that can be rejected.

" + } + }, + "PredictionConfiguration": { + "base": "

The configuration of the prediction.

", + "refs": { + "CreateAssetInput$predictionConfiguration": "

The configuration of the automatically generated business-friendly metadata for the asset.

", + "CreateAssetOutput$predictionConfiguration": "

The configuration of the automatically generated business-friendly metadata for the asset.

", + "CreateAssetRevisionInput$predictionConfiguration": "

The configuration of the automatically generated business-friendly metadata for the asset.

", + "CreateAssetRevisionOutput$predictionConfiguration": "

The configuration of the automatically generated business-friendly metadata for the asset.

" + } + }, + "ProjectId": { + "base": null, + "refs": { + "AssetItem$owningProjectId": "

The identifier of the Amazon DataZone project that owns the inventory asset.

", + "AssetListing$owningProjectId": "

The identifier of the project where an asset published in an Amazon DataZone catalog exists.

", + "AssetListingItem$owningProjectId": "

The identifier of the project that owns the inventory asset.

", + "AssetTypeItem$originProjectId": "

The identifier of the Amazon DataZone project where the asset type exists.

", + "AssetTypeItem$owningProjectId": "

The identifier of the Amazon DataZone project that owns the asset type.

", + "CreateAssetInput$owningProjectIdentifier": "

The unique identifier of the project that owns this asset.

", + "CreateAssetOutput$owningProjectId": "

The ID of the Amazon DataZone project that owns the created asset.

", + "CreateAssetRevisionOutput$owningProjectId": "

The unique identifier of the revised project that owns the asset.

", + "CreateAssetTypeInput$owningProjectIdentifier": "

The identifier of the Amazon DataZone project that is to own the custom asset type.

", + "CreateAssetTypeOutput$originProjectId": "

The ID of the Amazon DataZone project where the asset type was originally created.

", + "CreateAssetTypeOutput$owningProjectId": "

The ID of the Amazon DataZone project that currently owns this asset type.

", + "CreateDataSourceOutput$projectId": "

The ID of the Amazon DataZone project to which the data source is added.

", + "CreateEnvironmentInput$projectIdentifier": "

The identifier of the Amazon DataZone project in which this environment is created.

", + "CreateEnvironmentOutput$projectId": "

The ID of the Amazon DataZone project in which this environment is created.

", + "CreateEnvironmentProfileInput$projectIdentifier": "

The identifier of the project in which to create the environment profile.

", + "CreateEnvironmentProfileOutput$projectId": "

The ID of the Amazon DataZone project in which this environment profile is created.

", + "CreateFormTypeInput$owningProjectIdentifier": "

The ID of the Amazon DataZone project that owns this metadata form type.

", + "CreateFormTypeOutput$originProjectId": "

The ID of the project in which this Amazon DataZone metadata form type was originally created.

", + "CreateFormTypeOutput$owningProjectId": "

The ID of the project that owns this Amazon DataZone metadata form type.

", + "CreateGlossaryInput$owningProjectIdentifier": "

The ID of the project that currently owns business glossary.

", + "CreateGlossaryOutput$owningProjectId": "

The ID of the project that currently owns this business glossary.

", + "CreateProjectMembershipInput$projectIdentifier": "

The ID of the project for which this project membership was created.

", + "CreateProjectOutput$id": "

The ID of the Amazon DataZone project.

", + "CreateSubscriptionTargetOutput$projectId": "

???

", + "DataProductSummary$owningProjectId": "

", + "DataSourceRunActivity$projectId": "

The project ID included in the data source run activity.

", + "DataSourceRunSummary$projectId": "

The project ID of the data source run.

", + "DeleteDataSourceOutput$projectId": "

The ID of the project in which this data source exists and from which it's deleted.

", + "DeleteProjectInput$identifier": "

The identifier of the project that is to be deleted.

", + "DeleteProjectMembershipInput$projectIdentifier": "

The ID of the Amazon DataZone project the membership to which is deleted.

", + "EnvironmentProfileSummary$projectId": "

The identifier of a project in which an environment profile exists.

", + "EnvironmentSummary$projectId": "

The identifier of the project in which the environment exists.

", + "FormTypeData$originProjectId": "

The identifier of the project in which the form type was originally created.

", + "FormTypeData$owningProjectId": "

The identifier of the project that owns the form type.

", + "GetAssetOutput$owningProjectId": "

The ID of the project that owns the asset.

", + "GetAssetTypeOutput$originProjectId": "

The ID of the Amazon DataZone project in which the asset type was originally created.

", + "GetAssetTypeOutput$owningProjectId": "

The ID of the Amazon DataZone project that owns the asset type.

", + "GetDataSourceOutput$projectId": "

The ID of the project where the data source creates and publishes assets.

", + "GetDataSourceRunOutput$projectId": "

The ID of the project in which this data source run occured.

", + "GetEnvironmentOutput$projectId": "

The ID of the Amazon DataZone project in which this environment is created.

", + "GetEnvironmentProfileOutput$projectId": "

The ID of the Amazon DataZone project in which this environment profile is created.

", + "GetFormTypeOutput$originProjectId": "

The ID of the project in which this metadata form type was originally created.

", + "GetFormTypeOutput$owningProjectId": "

The ID of the project that owns this metadata form type.

", + "GetGlossaryOutput$owningProjectId": "

The ID of the project that owns this business glossary.

", + "GetProjectInput$identifier": "

The ID of the project.

", + "GetProjectOutput$id": "

>The ID of the project.

", + "GetSubscriptionTargetOutput$projectId": "

The ID of the project associated with the subscription target.

", + "GlossaryItem$owningProjectId": "

The identifier of the project that owns the business glosary.

", + "ListEnvironmentProfilesInput$projectIdentifier": "

The identifier of the Amazon DataZone project.

", + "ListEnvironmentsInput$projectIdentifier": "

The identifier of the Amazon DataZone project.

", + "ListProjectMembershipsInput$projectIdentifier": "

The identifier of the project whose memberships you want to list.

", + "ListSubscriptionRequestsInput$approverProjectId": "

The identifier of the subscription request approver's project.

", + "ListSubscriptionRequestsInput$owningProjectId": "

The identifier of the project for the subscription requests.

", + "ListSubscriptionsInput$approverProjectId": "

The identifier of the project for the subscription's approver.

", + "ListSubscriptionsInput$owningProjectId": "

The identifier of the owning project.

", + "ProjectSummary$id": "

The identifier of a project.

", + "SearchInput$owningProjectIdentifier": "

The identifier of the owning project specified for the search.

", + "StartDataSourceRunOutput$projectId": "

The identifier of the project.

", + "SubscribedListing$ownerProjectId": "

The identifier of the project of the published asset for which the subscription grant is created.

", + "SubscribedProject$id": "

The identifier of the project that has the subscription grant.

", + "SubscribedProjectInput$identifier": "

The identifier of the project that is to be given a subscription grant.

", + "SubscriptionTargetSummary$projectId": "

The identifier of the project specified in the subscription target.

", + "UpdateDataSourceOutput$projectId": "

The identifier of the project where data source is to be updated.

", + "UpdateEnvironmentOutput$projectId": "

The project identifier of the environment.

", + "UpdateEnvironmentProfileOutput$projectId": "

The identifier of the project of the environment profile that is to be updated.

", + "UpdateGlossaryOutput$owningProjectId": "

The identifier of the project in which to update a business glossary.

", + "UpdateProjectInput$identifier": "

The identifier of the project that is to be updated.

", + "UpdateProjectOutput$id": "

The identifier of the project that is to be updated.

", + "UpdateSubscriptionTargetOutput$projectId": "

The identifier of the project in which a subscription target is to be updated.

" + } + }, + "ProjectMember": { + "base": "

The details of a project member.

", + "refs": { + "ProjectMembers$member": null + } + }, + "ProjectMembers": { + "base": null, + "refs": { + "ListProjectMembershipsOutput$members": "

The members of the project.

" + } + }, + "ProjectName": { + "base": null, + "refs": { + "CreateProjectInput$name": "

The name of the Amazon DataZone project.

", + "CreateProjectOutput$name": "

The name of the project.

", + "GetProjectOutput$name": "

The name of the project.

", + "ListProjectsInput$name": "

", + "ProjectSummary$name": "

The name of a project.

", + "SubscribedProject$name": "

The name of the project that has the subscription grant.

", + "UpdateProjectInput$name": "

The name to be updated as part of the UpdateProject action.

", + "UpdateProjectOutput$name": "

The name of the project that is to be updated.

" + } + }, + "ProjectSummaries": { + "base": null, + "refs": { + "ListProjectsOutput$items": "

The results of the ListProjects action.

" + } + }, + "ProjectSummary": { + "base": "

The details of a Amazon DataZone project.

", + "refs": { + "ProjectSummaries$member": null + } + }, + "ProvisioningProperties": { + "base": "

The provisioning properties of an environment blueprint.

", + "refs": { + "CreateEnvironmentOutput$provisioningProperties": "

The provisioning properties of this Amazon DataZone environment.

", + "EnvironmentBlueprintSummary$provisioningProperties": "

The provisioning properties of the blueprint.

", + "GetEnvironmentBlueprintOutput$provisioningProperties": "

The provisioning properties of this Amazon DataZone blueprint.

", + "GetEnvironmentOutput$provisioningProperties": "

The provisioning properties of this Amazon DataZone environment.

", + "UpdateEnvironmentOutput$provisioningProperties": "

The provisioning properties to be updated as part of the UpdateEnvironment action.

" + } + }, + "PutEnvironmentBlueprintConfigurationInput": { + "base": null, + "refs": { + } + }, + "PutEnvironmentBlueprintConfigurationOutput": { + "base": null, + "refs": { + } + }, + "RecommendationConfiguration": { + "base": "

The recommendation to be updated as part of the UpdateDataSource action.

", + "refs": { + "CreateDataSourceInput$recommendation": "

Specifies whether the business name generation is to be enabled for this data source.

", + "CreateDataSourceOutput$recommendation": "

Specifies whether the business name generation is to be enabled for this data source.

", + "GetDataSourceOutput$recommendation": "

", + "UpdateDataSourceInput$recommendation": "

The recommendation to be updated as part of the UpdateDataSource action.

", + "UpdateDataSourceOutput$recommendation": "

The recommendation to be updated as part of the UpdateDataSource action.

" + } + }, + "RedshiftClusterStorage": { + "base": "

The details of the Amazon Redshift cluster storage.

", + "refs": { + "RedshiftStorage$redshiftClusterSource": "

The details of the Amazon Redshift cluster source.

" + } + }, + "RedshiftClusterStorageClusterNameString": { + "base": null, + "refs": { + "RedshiftClusterStorage$clusterName": "

The name of an Amazon Redshift cluster.

" + } + }, + "RedshiftCredentialConfiguration": { + "base": "

The details of the credentials required to access an Amazon Redshift cluster.

", + "refs": { + "RedshiftRunConfigurationInput$redshiftCredentialConfiguration": null, + "RedshiftRunConfigurationOutput$redshiftCredentialConfiguration": null + } + }, + "RedshiftCredentialConfigurationSecretManagerArnString": { + "base": null, + "refs": { + "RedshiftCredentialConfiguration$secretManagerArn": "

The ARN of a secret manager for an Amazon Redshift cluster.

" + } + }, + "RedshiftRunConfigurationInput": { + "base": "

The configuration details of the Amazon Redshift data source.

", + "refs": { + "DataSourceConfigurationInput$redshiftRunConfiguration": "

The configuration of the Amazon Redshift data source.

" + } + }, + "RedshiftRunConfigurationInputDataAccessRoleString": { + "base": null, + "refs": { + "RedshiftRunConfigurationInput$dataAccessRole": "

The data access role included in the configuration details of the Amazon Redshift data source.

" + } + }, + "RedshiftRunConfigurationOutput": { + "base": "

The configuration details of the Amazon Redshift data source.

", + "refs": { + "DataSourceConfigurationOutput$redshiftRunConfiguration": "

The configuration of the Amazon Redshift data source.

" + } + }, + "RedshiftRunConfigurationOutputAccountIdString": { + "base": null, + "refs": { + "RedshiftRunConfigurationOutput$accountId": "

The ID of the Amazon Web Services account included in the configuration details of the Amazon Redshift data source.

" + } + }, + "RedshiftRunConfigurationOutputDataAccessRoleString": { + "base": null, + "refs": { + "RedshiftRunConfigurationOutput$dataAccessRole": "

The data access role included in the configuration details of the Amazon Redshift data source.

" + } + }, + "RedshiftRunConfigurationOutputRegionString": { + "base": null, + "refs": { + "RedshiftRunConfigurationOutput$region": "

The Amazon Web Services region included in the configuration details of the Amazon Redshift data source.

" + } + }, + "RedshiftServerlessStorage": { + "base": "

The details of the Amazon Redshift Serverless workgroup storage.

", + "refs": { + "RedshiftStorage$redshiftServerlessSource": "

The details of the Amazon Redshift Serverless workgroup source.

" + } + }, + "RedshiftServerlessStorageWorkgroupNameString": { + "base": null, + "refs": { + "RedshiftServerlessStorage$workgroupName": "

The name of the Amazon Redshift Serverless workgroup.

" + } + }, + "RedshiftStorage": { + "base": "

The details of the Amazon Redshift storage as part of the configuration of an Amazon Redshift data source run.

", + "refs": { + "RedshiftRunConfigurationInput$redshiftStorage": null, + "RedshiftRunConfigurationOutput$redshiftStorage": null + } + }, + "RegionName": { + "base": null, + "refs": { + "EnabledRegionList$member": null, + "RegionalParameterMap$key": null + } + }, + "RegionalParameter": { + "base": null, + "refs": { + "RegionalParameterMap$value": null + } + }, + "RegionalParameterMap": { + "base": null, + "refs": { + "EnvironmentBlueprintConfigurationItem$regionalParameters": "

The regional parameters of the environment blueprint.

", + "GetEnvironmentBlueprintConfigurationOutput$regionalParameters": "

The regional parameters of the blueprint.

", + "PutEnvironmentBlueprintConfigurationInput$regionalParameters": "

The regional parameters in the environment blueprint.

", + "PutEnvironmentBlueprintConfigurationOutput$regionalParameters": "

The regional parameters in the environment blueprint.

" + } + }, + "RejectChoice": { + "base": "

The details of the automatically generated business metadata that is rejected.

", + "refs": { + "RejectChoices$member": null + } + }, + "RejectChoices": { + "base": null, + "refs": { + "RejectPredictionsInput$rejectChoices": "

" + } + }, + "RejectPredictionsInput": { + "base": null, + "refs": { + } + }, + "RejectPredictionsOutput": { + "base": null, + "refs": { + } + }, + "RejectRule": { + "base": "

Specifies the rule and the threshold under which a prediction can be rejected.

", + "refs": { + "RejectPredictionsInput$rejectRule": "

" + } + }, + "RejectRuleBehavior": { + "base": null, + "refs": { + "RejectRule$rule": "

Specifies whether you want to reject the top prediction for all targets or none.

" + } + }, + "RejectSubscriptionRequestInput": { + "base": null, + "refs": { + } + }, + "RejectSubscriptionRequestOutput": { + "base": null, + "refs": { + } + }, + "RejectSubscriptionRequestOutputSubscribedListingsList": { + "base": null, + "refs": { + "RejectSubscriptionRequestOutput$subscribedListings": "

The subscribed listings of the subscription request.

" + } + }, + "RejectSubscriptionRequestOutputSubscribedPrincipalsList": { + "base": null, + "refs": { + "RejectSubscriptionRequestOutput$subscribedPrincipals": "

The subscribed principals of the subscription request.

" + } + }, + "RelationalFilterConfiguration": { + "base": "

The relational filter configuration for the data source.

", + "refs": { + "RelationalFilterConfigurations$member": null + } + }, + "RelationalFilterConfigurationDatabaseNameString": { + "base": null, + "refs": { + "RelationalFilterConfiguration$databaseName": "

The database name specified in the relational filter configuration for the data source.

" + } + }, + "RelationalFilterConfigurationSchemaNameString": { + "base": null, + "refs": { + "RelationalFilterConfiguration$schemaName": "

The schema name specified in the relational filter configuration for the data source.

" + } + }, + "RelationalFilterConfigurations": { + "base": null, + "refs": { + "GlueRunConfigurationInput$relationalFilterConfigurations": "

The relational filter configurations included in the configuration details of the Amazon Web Services Glue data source.

", + "GlueRunConfigurationOutput$relationalFilterConfigurations": "

The relational filter configurations included in the configuration details of the Amazon Web Services Glue data source.

", + "RedshiftRunConfigurationInput$relationalFilterConfigurations": "

The relational filger configurations included in the configuration details of the Amazon Redshift data source.

", + "RedshiftRunConfigurationOutput$relationalFilterConfigurations": "

The relational filger configurations included in the configuration details of the Amazon Redshift data source.

" + } + }, + "RequestReason": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$requestReason": "

Specifies the reason for requesting a subscription to the asset.

", + "CreateSubscriptionRequestInput$requestReason": "

The reason for the subscription request.

", + "CreateSubscriptionRequestOutput$requestReason": "

The reason for the subscription request.

", + "GetSubscriptionRequestDetailsOutput$requestReason": "

The reason for the subscription request.

", + "RejectSubscriptionRequestOutput$requestReason": "

The reason for the subscription request.

", + "SubscriptionRequestSummary$requestReason": "

The reason for the subscription request.

", + "UpdateSubscriptionRequestInput$requestReason": "

The reason for the UpdateSubscriptionRequest action.

", + "UpdateSubscriptionRequestOutput$requestReason": "

The reason for the UpdateSubscriptionRequest action.

" + } + }, + "Resource": { + "base": "

The details of a provisioned resource of this Amazon DataZone environment.

", + "refs": { + "ResourceList$member": null + } + }, + "ResourceList": { + "base": null, + "refs": { + "CreateEnvironmentOutput$provisionedResources": "

The provisioned resources of this Amazon DataZone environment.

", + "GetEnvironmentOutput$provisionedResources": "

The provisioned resources of this Amazon DataZone environment.

", + "UpdateEnvironmentOutput$provisionedResources": "

The provisioned resources to be updated as part of the UpdateEnvironment action.

" + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource cannot be found.

", + "refs": { + } + }, + "Revision": { + "base": null, + "refs": { + "AcceptPredictionsInput$revision": "

", + "AcceptPredictionsOutput$revision": "

", + "AssetItem$typeRevision": "

The revision of the inventory asset type.

", + "AssetListing$assetRevision": "

The revision of an asset published in an Amazon DataZone catalog.

", + "AssetListingItem$entityRevision": "

The revision of the inventory asset.

", + "AssetListingItem$listingRevision": "

The revision of the listing (asset published in Amazon DataZone catalog).

", + "AssetRevision$revision": "

The revision details of the inventory asset.

", + "AssetTypeItem$revision": "

The revision of the asset type.

", + "CreateAssetInput$typeRevision": "

The revision of this asset's type.

", + "CreateAssetOutput$revision": "

The revision of the asset.

", + "CreateAssetOutput$typeRevision": "

The revision type of the asset.

", + "CreateAssetRevisionInput$typeRevision": "

The revision type of the asset.

", + "CreateAssetRevisionOutput$revision": "

The revision of the asset.

", + "CreateAssetRevisionOutput$typeRevision": "

The revision type of the asset.

", + "CreateAssetTypeOutput$revision": "

The revision of the custom asset type.

", + "CreateFormTypeOutput$revision": "

The revision of this Amazon DataZone metadata form type.

", + "CreateListingChangeSetInput$entityRevision": "

", + "CreateListingChangeSetOutput$listingRevision": "

", + "FormEntryInput$typeRevision": "

The type revision of the form entry.

", + "FormEntryOutput$typeRevision": "

The type revision of the form entry.

", + "FormInput$typeRevision": "

The revision of the metadata form type.

", + "FormOutput$typeRevision": "

The revision of the metadata form type.

", + "FormTypeData$revision": "

The revision of the form type.

", + "GetAssetInput$revision": "

The revision of the Amazon DataZone asset.

", + "GetAssetOutput$revision": "

The revision of the asset.

", + "GetAssetOutput$typeRevision": "

The revision of the asset type.

", + "GetAssetTypeInput$revision": "

The revision of the asset type.

", + "GetAssetTypeOutput$revision": "

The revision of the asset type.

", + "GetFormTypeInput$revision": "

The revision of this metadata form type.

", + "GetFormTypeOutput$revision": "

The revision of the metadata form type.

", + "GetListingInput$listingRevision": "

", + "GetListingOutput$listingRevision": "

", + "Import$revision": "

The revision of the import.

", + "ListingRevision$revision": "

The details of a revision of an asset published in a Amazon DataZone catalog.

", + "ListingRevisionInput$revision": "

The details of a revision to be made to an asset published in a Amazon DataZone catalog.

", + "RejectPredictionsInput$revision": "

", + "RejectPredictionsOutput$assetRevision": "

", + "SubscribedAsset$assetRevision": "

The revision of the asset for which the subscription grant is created.

", + "SubscribedAssetListing$entityRevision": "

The revision of the published asset for which the subscription grant is created.

", + "SubscribedListing$revision": "

The revision of the published asset for which the subscription grant is created.

" + } + }, + "RevokeSubscriptionInput": { + "base": null, + "refs": { + } + }, + "RevokeSubscriptionOutput": { + "base": null, + "refs": { + } + }, + "RoleArn": { + "base": null, + "refs": { + "CreateDomainInput$domainExecutionRole": "

The domain execution role that is created when an Amazon DataZone domain is created. The domain execution role is created in the Amazon Web Services account that houses the Amazon DataZone domain.

", + "CreateDomainOutput$domainExecutionRole": "

The domain execution role that is created when an Amazon DataZone domain is created. The domain execution role is created in the Amazon Web Services account that houses the Amazon DataZone domain.

", + "EnvironmentBlueprintConfigurationItem$manageAccessRoleArn": "

The ARN of the manage access role specified in the environment blueprint configuration.

", + "EnvironmentBlueprintConfigurationItem$provisioningRoleArn": "

The ARN of the provisioning role specified in the environment blueprint configuration.

", + "GetDomainOutput$domainExecutionRole": "

The domain execution role with which the Amazon DataZone domain is created.

", + "GetEnvironmentBlueprintConfigurationOutput$manageAccessRoleArn": "

The ARN of the manage access role with which this blueprint is created.

", + "GetEnvironmentBlueprintConfigurationOutput$provisioningRoleArn": "

The ARN of the provisioning role with which this blueprint is created.

", + "PutEnvironmentBlueprintConfigurationInput$manageAccessRoleArn": "

The ARN of the manage access role.

", + "PutEnvironmentBlueprintConfigurationInput$provisioningRoleArn": "

The ARN of the provisioning role.

", + "PutEnvironmentBlueprintConfigurationOutput$manageAccessRoleArn": "

The ARN of the manage access role.

", + "PutEnvironmentBlueprintConfigurationOutput$provisioningRoleArn": "

The ARN of the provisioning role.

", + "UpdateDomainInput$domainExecutionRole": "

The domain execution role to be updated as part of the UpdateDomain action.

", + "UpdateDomainOutput$domainExecutionRole": "

The domain execution role to be updated as part of the UpdateDomain action.

" + } + }, + "RunStatisticsForAssets": { + "base": "

The asset statistics from the data source run.

", + "refs": { + "DataSourceRunSummary$runStatisticsForAssets": null, + "GetDataSourceRunOutput$runStatisticsForAssets": "

The asset statistics from this data source run.

", + "StartDataSourceRunOutput$runStatisticsForAssets": "

Specifies run statistics for assets.

" + } + }, + "ScheduleConfiguration": { + "base": "

The details of the schedule of the data source runs.

", + "refs": { + "CreateDataSourceInput$schedule": "

The schedule of the data source runs.

", + "CreateDataSourceOutput$schedule": "

The schedule of the data source runs.

", + "DataSourceSummary$schedule": null, + "DeleteDataSourceOutput$schedule": "

The schedule of runs for this data source.

", + "GetDataSourceOutput$schedule": "

The schedule of the data source runs.

", + "UpdateDataSourceInput$schedule": "

The schedule to be updated as part of the UpdateDataSource action.

", + "UpdateDataSourceOutput$schedule": "

The schedule to be updated as part of the UpdateDataSource action.

" + } + }, + "SearchGroupProfilesInput": { + "base": null, + "refs": { + } + }, + "SearchGroupProfilesOutput": { + "base": null, + "refs": { + } + }, + "SearchInItem": { + "base": "

The details of the search.

", + "refs": { + "SearchInList$member": null + } + }, + "SearchInList": { + "base": null, + "refs": { + "SearchInput$searchIn": "

", + "SearchListingsInput$searchIn": "

", + "SearchTypesInput$searchIn": "

" + } + }, + "SearchInput": { + "base": null, + "refs": { + } + }, + "SearchInventoryResultItem": { + "base": "

The details of the search results.

", + "refs": { + "SearchInventoryResultItems$member": null + } + }, + "SearchInventoryResultItems": { + "base": null, + "refs": { + "SearchOutput$items": "

The results of the Search action.

" + } + }, + "SearchListingsInput": { + "base": null, + "refs": { + } + }, + "SearchListingsOutput": { + "base": null, + "refs": { + } + }, + "SearchOutput": { + "base": null, + "refs": { + } + }, + "SearchOutputAdditionalAttribute": { + "base": null, + "refs": { + "SearchOutputAdditionalAttributes$member": null + } + }, + "SearchOutputAdditionalAttributes": { + "base": null, + "refs": { + "SearchInput$additionalAttributes": "

Specifies additional attributes for the Search action.

", + "SearchListingsInput$additionalAttributes": "

Specifies additional attributes for the search.

" + } + }, + "SearchResultItem": { + "base": "

The details of the results of the SearchListings action.

", + "refs": { + "SearchResultItems$member": null + } + }, + "SearchResultItems": { + "base": null, + "refs": { + "SearchListingsOutput$items": "

The results of the SearchListings action.

" + } + }, + "SearchSort": { + "base": "

The details of the way to sort search results.

", + "refs": { + "SearchInput$sort": "

Specifies the way in which the search results are to be sorted.

", + "SearchListingsInput$sort": "

Specifies the way for sorting the search results.

", + "SearchTypesInput$sort": "

The specifies the way to sort the SearchTypes results.

" + } + }, + "SearchText": { + "base": null, + "refs": { + "SearchInput$searchText": "

Specifies the text for which to search.

", + "SearchTypesInput$searchText": "

Specifies the text for which to search.

" + } + }, + "SearchTypesInput": { + "base": null, + "refs": { + } + }, + "SearchTypesOutput": { + "base": null, + "refs": { + } + }, + "SearchTypesResultItem": { + "base": "

The details of the results of the SearchTypes action.

", + "refs": { + "SearchTypesResultItems$member": null + } + }, + "SearchTypesResultItems": { + "base": null, + "refs": { + "SearchTypesOutput$items": "

The results of the SearchTypes action.

" + } + }, + "SearchUserProfilesInput": { + "base": null, + "refs": { + } + }, + "SearchUserProfilesOutput": { + "base": null, + "refs": { + } + }, + "ServiceQuotaExceededException": { + "base": "

The request has exceeded the specified service quota.

", + "refs": { + } + }, + "ShortDescription": { + "base": null, + "refs": { + "CreateGlossaryTermInput$shortDescription": "

The short description of this business glossary term.

", + "CreateGlossaryTermOutput$shortDescription": "

The short description of this business glossary term.

", + "DetailedGlossaryTerm$shortDescription": "

The shoft description of a glossary term attached to the inventory asset.

", + "GetGlossaryTermOutput$shortDescription": "

The short decription of the business glossary term.

", + "GlossaryTermItem$shortDescription": "

The short description of the business glossary term.

", + "UpdateGlossaryTermInput$shortDescription": "

The short description to be updated as part of the UpdateGlossaryTerm action.

", + "UpdateGlossaryTermOutput$shortDescription": "

The short description to be updated as part of the UpdateGlossaryTerm action.

" + } + }, + "SingleSignOn": { + "base": "

The single sign-on details in Amazon DataZone.

", + "refs": { + "CreateDomainInput$singleSignOn": "

The single-sign on configuration of the Amazon DataZone domain.

", + "CreateDomainOutput$singleSignOn": "

The single-sign on configuration of the Amazon DataZone domain.

", + "GetDomainOutput$singleSignOn": "

The single sing-on option of the specified Amazon DataZone domain.

", + "UpdateDomainInput$singleSignOn": "

The single sign-on option to be updated as part of the UpdateDomain action.

", + "UpdateDomainOutput$singleSignOn": "

The single sign-on option of the Amazon DataZone domain.

" + } + }, + "Smithy": { + "base": null, + "refs": { + "Model$smithy": "

" + } + }, + "SortFieldProject": { + "base": null, + "refs": { + "ListProjectMembershipsInput$sortBy": "

The method by which you want to sort the project memberships.

" + } + }, + "SortKey": { + "base": null, + "refs": { + "ListSubscriptionGrantsInput$sortBy": "

Specifies the way of sorting the results of this action.

", + "ListSubscriptionRequestsInput$sortBy": "

Specifies the way to sort the results of this action.

", + "ListSubscriptionTargetsInput$sortBy": "

Specifies the way in which the results of this action are to be sorted.

", + "ListSubscriptionsInput$sortBy": "

Specifies the way in which the results of this action are to be sorted.

" + } + }, + "SortOrder": { + "base": null, + "refs": { + "ListProjectMembershipsInput$sortOrder": "

The sort order of the project memberships.

", + "ListSubscriptionGrantsInput$sortOrder": "

Specifies the sort order of this action.

", + "ListSubscriptionRequestsInput$sortOrder": "

Specifies the sort order for the results of this action.

", + "ListSubscriptionTargetsInput$sortOrder": "

Specifies the sort order for the results of this action.

", + "ListSubscriptionsInput$sortOrder": "

Specifies the sort order for the results of this action.

", + "SearchSort$order": "

The order detail of the wya to sort search results.

" + } + }, + "SsoUserProfileDetails": { + "base": "

The single sign-on details of the user profile.

", + "refs": { + "UserProfileDetails$sso": "

The single sign-on details included in the user profile details.

" + } + }, + "StartDataSourceRunInput": { + "base": null, + "refs": { + } + }, + "StartDataSourceRunOutput": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AcceptChoice$predictionTarget": "

Specifies the target (for example, a column name) where a prediction can be accepted.

", + "AcceptSubscriptionRequestOutput$reviewerId": "

Specifes the ID of the Amazon DataZone user who reviewed the subscription request.

", + "AssetTargetNameMap$targetName": "

The target name in the asset target name map.

", + "CloudFormationProperties$templateUrl": "

The template URL of the cloud formation provisioning properties of the environment blueprint.

", + "ConfigurableActionParameter$key": "

The key of the configurable action parameter.

", + "ConfigurableActionParameter$value": "

The value of the configurable action parameter.

", + "ConfigurableEnvironmentAction$type": "

The type of a configurable action in a Amazon DataZone environment.

", + "CreateDataSourceInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateDataSourceInput$environmentIdentifier": "

The unique identifier of the Amazon DataZone environment to which the data source publishes assets.

", + "CreateDataSourceInput$projectIdentifier": "

The identifier of the Amazon DataZone project in which you want to add this data source.

", + "CreateDomainInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateDomainInput$description": "

The description of the Amazon DataZone domain.

", + "CreateDomainInput$name": "

The name of the Amazon DataZone domain.

", + "CreateDomainOutput$arn": "

The ARN of the Amazon DataZone domain.

", + "CreateDomainOutput$description": "

The description of the Amazon DataZone domain.

", + "CreateDomainOutput$name": "

The name of the Amazon DataZone domain.

", + "CreateDomainOutput$portalUrl": "

The URL of the data portal for this Amazon DataZone domain.

", + "CreateEnvironmentInput$description": "

The description of the Amazon DataZone environment.

", + "CreateEnvironmentInput$name": "

The name of the Amazon DataZone environment.

", + "CreateEnvironmentOutput$createdBy": "

The Amazon DataZone user who created this environment.

", + "CreateEnvironmentOutput$provider": "

The provider of this Amazon DataZone environment.

", + "CreateEnvironmentProfileOutput$createdBy": "

The Amazon DataZone user who created this environment profile.

", + "CreateGroupProfileInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateSubscriptionGrantInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateSubscriptionRequestInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateSubscriptionRequestOutput$reviewerId": "

The ID of the reviewer of the subscription request.

", + "CreateSubscriptionTargetInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CreateSubscriptionTargetInput$manageAccessRole": "

The manage access role that is used to create the subscription target.

", + "CreateSubscriptionTargetInput$provider": "

The provider of the subscription target.

", + "CreateSubscriptionTargetInput$type": "

The type of the subscription target.

", + "CreateSubscriptionTargetOutput$manageAccessRole": "

The manage access role with which the subscription target was created.

", + "CreateSubscriptionTargetOutput$provider": "

The provider of the subscription target.

", + "CreateSubscriptionTargetOutput$type": "

The type of the subscription target.

", + "CreateUserProfileInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "CustomParameter$defaultValue": "

The default value of the parameter.

", + "CustomParameter$fieldType": "

The filed type of the parameter.

", + "DataSourceErrorMessage$errorDetail": "

The details of the error message that is returned if the operation cannot be successfully completed.

", + "DataSourceRunActivity$dataAssetId": "

The identifier of the asset included in the data source run activity.

", + "DataSourceSummary$type": "

The type of the data source.

", + "DeleteDataSourceInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "DeleteDomainInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "Deployment$deploymentId": "

The identifier of the last deployment of the environment.

", + "DomainSummary$arn": "

The ARN of the Amazon DataZone domain.

", + "DomainSummary$managedAccountId": "

The identifier of the Amazon Web Services account that manages the domain.

", + "DomainSummary$portalUrl": "

The data portal URL for the Amazon DataZone domain.

", + "EnvironmentBlueprintSummary$provider": "

The provider of the blueprint.

", + "EnvironmentError$code": "

The error code for the failure reason for the environment deployment.

", + "EnvironmentError$message": "

The error message for the failure reason for the environment deployment.

", + "EnvironmentParameter$name": "

The name of an environment profile parameter.

", + "EnvironmentParameter$value": "

The value of an environment profile parameter.

", + "EnvironmentProfileSummary$createdBy": "

The Amazon DataZone user who created the environment profile.

", + "EnvironmentSummary$createdBy": "

The Amazon DataZone user who created the environment.

", + "EnvironmentSummary$provider": "

The provider of the environment.

", + "FailureCause$message": "

The description of the error message.

", + "FormOutput$content": "

The content of the metadata form.

", + "GetDataSourceRunOutput$dataSourceConfigurationSnapshot": "

The configuration snapshot of the data source run.

", + "GetDomainOutput$arn": "

The ARN of the specified Amazon DataZone domain.

", + "GetDomainOutput$description": "

The description of the Amazon DataZone domain.

", + "GetDomainOutput$name": "

The name of the Amazon DataZone domain.

", + "GetDomainOutput$portalUrl": "

The URL of the data portal for this Amazon DataZone domain.

", + "GetEnvironmentBlueprintOutput$provider": "

The provider of this Amazon DataZone blueprint.

", + "GetEnvironmentOutput$createdBy": "

The Amazon DataZone user who created the environment.

", + "GetEnvironmentOutput$provider": "

The provider of this Amazon DataZone environment.

", + "GetEnvironmentProfileOutput$createdBy": "

The Amazon DataZone user who created this environment profile.

", + "GetIamPortalLoginUrlOutput$authCodeUrl": "

The data portal URL of the specified Amazon DataZone domain.

", + "GetIamPortalLoginUrlOutput$userProfileId": "

The ID of the user profile.

", + "GetSubscriptionRequestDetailsOutput$reviewerId": "

The identifier of the Amazon DataZone user who reviewed the subscription request.

", + "GetSubscriptionTargetOutput$manageAccessRole": "

The manage access role with which the subscription target was created.

", + "GetSubscriptionTargetOutput$provider": "

The provider of the subscription target.

", + "GetSubscriptionTargetOutput$type": "

The type of the subscription target.

", + "GroupDetails$groupId": "

The identifier of the group in Amazon DataZone.

", + "IamUserProfileDetails$arn": "

The ARN of an IAM user profile in Amazon DataZone.

", + "ListDataSourcesInput$environmentIdentifier": "

The identifier of the environment in which to list the data sources.

", + "ListDataSourcesInput$projectIdentifier": "

The identifier of the project in which to list data sources.

", + "ListEnvironmentsInput$name": "

", + "ListEnvironmentsInput$provider": "

The provider of the environment.

", + "ListProjectsInput$groupIdentifier": "

The identifier of a group.

", + "ListProjectsInput$userIdentifier": "

The identifier of the Amazon DataZone user.

", + "ListTagsForResourceRequest$resourceArn": "

The ARN of the resource whose tags you want to list.

", + "Member$groupIdentifier": "

The ID of the group of a project member.

", + "Member$userIdentifier": "

The user ID of a project member.

", + "MetadataMap$key": null, + "MetadataMap$value": null, + "NotificationResource$id": "

The ID of the resource mentioned in a notification.

", + "NotificationResource$name": "

The name of the resource mentioned in a notification.

", + "NotificationSubjects$member": null, + "RegionalParameter$key": null, + "RegionalParameter$value": null, + "RejectChoice$predictionTarget": "

Specifies the target (for example, a column name) where a prediction can be rejected.

", + "RejectSubscriptionRequestOutput$reviewerId": "

The identifier of the subscription request reviewer.

", + "Resource$name": "

The name of a provisioned resource of this Amazon DataZone environment.

", + "Resource$provider": "

The provider of a provisioned resource of this Amazon DataZone environment.

", + "Resource$type": "

The type of a provisioned resource of this Amazon DataZone environment.

", + "Resource$value": "

The value of a provisioned resource of this Amazon DataZone environment.

", + "SearchListingsInput$searchText": "

Specifies the text for which to search.

", + "StartDataSourceRunInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "StartDataSourceRunOutput$dataSourceConfigurationSnapshot": "

The configuration snapshot of the data source that is being run.

", + "SubscribedAsset$targetName": "

The target name of the asset for which the subscription grant is created.

", + "SubscribedListing$ownerProjectName": "

The name of the project that owns the published asset for which the subscription grant is created.

", + "SubscriptionRequestSummary$reviewerId": "

The identifier of the subscription request reviewer.

", + "SubscriptionTargetForm$content": "

The content of the subscription target configuration.

", + "SubscriptionTargetSummary$manageAccessRole": "

The manage access role specified in the subscription target.

", + "SubscriptionTargetSummary$provider": "

The provider of the subscription target.

", + "SubscriptionTargetSummary$type": "

The type of the subscription target.

", + "TagResourceRequest$resourceArn": "

The ARN of the resource to be tagged in Amazon DataZone.

", + "Topic$subject": "

The subject of the resource mentioned in a notification.

", + "UntagResourceRequest$resourceArn": "

The ARN of the resource to be untagged in Amazon DataZone.

", + "UpdateDomainInput$clientToken": "

A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

", + "UpdateDomainInput$description": "

The description to be updated as part of the UpdateDomain action.

", + "UpdateDomainInput$name": "

The name to be updated as part of the UpdateDomain action.

", + "UpdateDomainOutput$description": "

The description to be updated as part of the UpdateDomain action.

", + "UpdateDomainOutput$name": "

The name to be updated as part of the UpdateDomain action.

", + "UpdateEnvironmentInput$description": "

The description to be updated as part of the UpdateEnvironment action.

", + "UpdateEnvironmentInput$name": "

The name to be updated as part of the UpdateEnvironment action.

", + "UpdateEnvironmentOutput$createdBy": "

The Amazon DataZone user who created the environment.

", + "UpdateEnvironmentOutput$provider": "

The provider identifier of the environment.

", + "UpdateEnvironmentProfileInput$description": "

The description to be updated as part of the UpdateEnvironmentProfile action.

", + "UpdateEnvironmentProfileOutput$createdBy": "

The Amazon DataZone user who created the environment profile.

", + "UpdateSubscriptionGrantStatusInput$targetName": "

The target name to be updated as part of the UpdateSubscriptionGrantStatus action.

", + "UpdateSubscriptionRequestOutput$reviewerId": "

The identifier of the Amazon DataZone user who reviews the subscription request.

", + "UpdateSubscriptionTargetInput$manageAccessRole": "

The manage access role to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetInput$provider": "

The provider to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$manageAccessRole": "

The manage access role to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$provider": "

The provider to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$type": "

The type to be updated as part of the UpdateSubscriptionTarget action.

", + "UserDetails$userId": "

The identifier of the Amazon DataZone user.

" + } + }, + "SubscribedAsset": { + "base": "

The details of the asset for which the subscription grant is created.

", + "refs": { + "SubscribedAssets$member": null + } + }, + "SubscribedAssetListing": { + "base": "

The details of the published asset for which the subscription grant is created.

", + "refs": { + "SubscribedListingItem$assetListing": "

The asset for which the subscription grant is created.

" + } + }, + "SubscribedAssets": { + "base": null, + "refs": { + "CreateSubscriptionGrantOutput$assets": "

The assets for which the subscription grant is created.

", + "DeleteSubscriptionGrantOutput$assets": "

The assets for which the subsctiption grant that is deleted gave access.

", + "GetSubscriptionGrantOutput$assets": "

The assets for which the subscription grant is created.

", + "SubscriptionGrantSummary$assets": "

The assets included in the subscription grant.

", + "UpdateSubscriptionGrantStatusOutput$assets": "

" + } + }, + "SubscribedListing": { + "base": "

The details of the published asset for which the subscription grant is created.

", + "refs": { + "AcceptSubscriptionRequestOutputSubscribedListingsList$member": null, + "CancelSubscriptionOutput$subscribedListing": "

The asset to which a subscription is being cancelled.

", + "CreateSubscriptionRequestOutputSubscribedListingsList$member": null, + "GetSubscriptionOutput$subscribedListing": "

", + "GetSubscriptionRequestDetailsOutputSubscribedListingsList$member": null, + "RejectSubscriptionRequestOutputSubscribedListingsList$member": null, + "RevokeSubscriptionOutput$subscribedListing": "

The subscribed listing of the revoked subscription.

", + "SubscriptionRequestSummarySubscribedListingsList$member": null, + "SubscriptionSummary$subscribedListing": "

The listing included in the subscription.

", + "UpdateSubscriptionRequestOutputSubscribedListingsList$member": null + } + }, + "SubscribedListingInput": { + "base": "

The published asset for which the subscription grant is to be created.

", + "refs": { + "SubscribedListingInputs$member": null + } + }, + "SubscribedListingInputs": { + "base": null, + "refs": { + "CreateSubscriptionRequestInput$subscribedListings": "

" + } + }, + "SubscribedListingItem": { + "base": "

The published asset for which the subscription grant is created.

", + "refs": { + "SubscribedListing$item": "

The published asset for which the subscription grant is created.

" + } + }, + "SubscribedPrincipal": { + "base": "

The principal that has the subscription grant for the asset.

", + "refs": { + "AcceptSubscriptionRequestOutputSubscribedPrincipalsList$member": null, + "CancelSubscriptionOutput$subscribedPrincipal": "

The Amazon DataZone user who is made a subscriber to the specified asset by the subscription that is being cancelled.

", + "CreateSubscriptionRequestOutputSubscribedPrincipalsList$member": null, + "GetSubscriptionOutput$subscribedPrincipal": "

The principal that owns the subscription.

", + "GetSubscriptionRequestDetailsOutputSubscribedPrincipalsList$member": null, + "RejectSubscriptionRequestOutputSubscribedPrincipalsList$member": null, + "RevokeSubscriptionOutput$subscribedPrincipal": "

The subscribed principal of the revoked subscription.

", + "SubscriptionRequestSummarySubscribedPrincipalsList$member": null, + "SubscriptionSummary$subscribedPrincipal": "

The principal included in the subscription.

", + "UpdateSubscriptionRequestOutputSubscribedPrincipalsList$member": null + } + }, + "SubscribedPrincipalInput": { + "base": "

The principal that is to be given a subscriptiong grant.

", + "refs": { + "SubscribedPrincipalInputs$member": null + } + }, + "SubscribedPrincipalInputs": { + "base": null, + "refs": { + "CreateSubscriptionRequestInput$subscribedPrincipals": "

The Amazon DataZone principals for whom the subscription request is created.

" + } + }, + "SubscribedProject": { + "base": "

The project that has the subscription grant.

", + "refs": { + "SubscribedPrincipal$project": "

The project that has the subscription grant.

" + } + }, + "SubscribedProjectInput": { + "base": "

The project that is to be given a subscription grant.

", + "refs": { + "SubscribedPrincipalInput$project": "

The project that is to be given a subscription grant.

" + } + }, + "SubscriptionGrantId": { + "base": null, + "refs": { + "CreateSubscriptionGrantOutput$id": "

The ID of the subscription grant.

", + "DeleteSubscriptionGrantInput$identifier": "

The ID of the subscription grant that is deleted.

", + "DeleteSubscriptionGrantOutput$id": "

The ID of the subscription grant that is deleted.

", + "GetSubscriptionGrantInput$identifier": "

The ID of the subscription grant.

", + "GetSubscriptionGrantOutput$id": "

The ID of the subscription grant.

", + "SubscriptionGrantSummary$id": "

The identifier of the subscription grant.

", + "UpdateSubscriptionGrantStatusInput$identifier": "

The identifier of the subscription grant the status of which is to be updated.

", + "UpdateSubscriptionGrantStatusOutput$id": "

The identifier of the subscription grant.

" + } + }, + "SubscriptionGrantOverallStatus": { + "base": null, + "refs": { + "CreateSubscriptionGrantOutput$status": "

The status of the subscription grant.

", + "DeleteSubscriptionGrantOutput$status": "

The status of the subscription grant that is deleted.

", + "GetSubscriptionGrantOutput$status": "

The status of the subscription grant.

", + "SubscriptionGrantSummary$status": "

The status of the subscription grant.

", + "UpdateSubscriptionGrantStatusOutput$status": "

The status to be updated as part of the UpdateSubscriptionGrantStatus action.

" + } + }, + "SubscriptionGrantStatus": { + "base": null, + "refs": { + "SubscribedAsset$status": "

The status of the asset for which the subscription grant is created.

", + "UpdateSubscriptionGrantStatusInput$status": "

The status to be updated as part of the UpdateSubscriptionGrantStatus action.

" + } + }, + "SubscriptionGrantSummary": { + "base": "

The details of the subscription grant.

", + "refs": { + "SubscriptionGrants$member": null + } + }, + "SubscriptionGrants": { + "base": null, + "refs": { + "ListSubscriptionGrantsOutput$items": "

The results of the ListSubscriptionGrants action.

" + } + }, + "SubscriptionId": { + "base": null, + "refs": { + "CancelSubscriptionInput$identifier": "

The unique identifier of the subscription that is being cancelled.

", + "CancelSubscriptionOutput$id": "

The identifier of the subscription.

", + "CreateSubscriptionGrantOutput$subscriptionId": "

The identifier of the subscription grant.

", + "DeleteSubscriptionGrantOutput$subscriptionId": "

The identifier of the subsctiption whose subscription grant is to be deleted.

", + "GetSubscriptionGrantOutput$subscriptionId": "

The identifier of the subscription.

", + "GetSubscriptionInput$identifier": "

The ID of the subscription.

", + "GetSubscriptionOutput$id": "

The ID of the subscription.

", + "ListSubscriptionGrantsInput$subscriptionId": "

The identifier of the subscription.

", + "RevokeSubscriptionInput$identifier": "

The identifier of the revoked subscription.

", + "RevokeSubscriptionOutput$id": "

The identifier of the revoked subscription.

", + "SubscriptionGrantSummary$subscriptionId": "

The ID of the subscription grant.

", + "SubscriptionSummary$id": "

The identifier of the subscription.

", + "UpdateSubscriptionGrantStatusOutput$subscriptionId": "

The identifier of the subscription.

" + } + }, + "SubscriptionRequestId": { + "base": null, + "refs": { + "AcceptSubscriptionRequestInput$identifier": "

The unique identifier of the subscription request that is to be accepted.

", + "AcceptSubscriptionRequestOutput$id": "

The identifier of the subscription request.

", + "CancelSubscriptionOutput$subscriptionRequestId": "

The unique ID of the subscripton request for the subscription that is being cancelled.

", + "CreateSubscriptionRequestOutput$id": "

The ID of the subscription request.

", + "DeleteSubscriptionRequestInput$identifier": "

The ID of the subscription request that is deleted.

", + "GetSubscriptionOutput$subscriptionRequestId": "

The ID of the subscription request.

", + "GetSubscriptionRequestDetailsInput$identifier": "

The identifier of the subscription request the details of which to get.

", + "GetSubscriptionRequestDetailsOutput$id": "

The identifier of the subscription request.

", + "ListSubscriptionsInput$subscriptionRequestIdentifier": "

The identifier of the subscription request for the subscriptions that you want to list.

", + "RejectSubscriptionRequestInput$identifier": "

The identifier of the subscription request that was rejected.

", + "RejectSubscriptionRequestOutput$id": "

The identifier of the subscription request that was rejected.

", + "RevokeSubscriptionOutput$subscriptionRequestId": "

The identifier of the subscription request for the revoked subscription.

", + "SubscriptionRequestSummary$id": "

The identifier of the subscription request.

", + "SubscriptionSummary$subscriptionRequestId": "

The identifier of the subscription request for the subscription.

", + "UpdateSubscriptionRequestInput$identifier": "

The identifier of the subscription request that is to be updated.

", + "UpdateSubscriptionRequestOutput$id": "

The identifier of the subscription request that is to be updated.

" + } + }, + "SubscriptionRequestStatus": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$status": "

Specifies the status of the subscription request.

", + "CreateSubscriptionRequestOutput$status": "

The status of the subscription request.

", + "GetSubscriptionRequestDetailsOutput$status": "

The status of the subscription request.

", + "ListSubscriptionRequestsInput$status": "

Specifies the status of the subscription requests.

", + "RejectSubscriptionRequestOutput$status": "

The status of the subscription request.

", + "SubscriptionRequestSummary$status": "

The status of the subscription request.

", + "UpdateSubscriptionRequestOutput$status": "

The status of the subscription request.

" + } + }, + "SubscriptionRequestSummary": { + "base": "

The details of the subscription request.

", + "refs": { + "SubscriptionRequests$member": null + } + }, + "SubscriptionRequestSummarySubscribedListingsList": { + "base": null, + "refs": { + "SubscriptionRequestSummary$subscribedListings": "

The listings included in the subscription request.

" + } + }, + "SubscriptionRequestSummarySubscribedPrincipalsList": { + "base": null, + "refs": { + "SubscriptionRequestSummary$subscribedPrincipals": "

The principals included in the subscription request.

" + } + }, + "SubscriptionRequests": { + "base": null, + "refs": { + "ListSubscriptionRequestsOutput$items": "

The results of the ListSubscriptionRequests action.

" + } + }, + "SubscriptionStatus": { + "base": null, + "refs": { + "CancelSubscriptionOutput$status": "

The status of the request to cancel the subscription.

", + "GetSubscriptionOutput$status": "

The status of the subscription.

", + "ListSubscriptionsInput$status": "

The status of the subscriptions that you want to list.

", + "RevokeSubscriptionOutput$status": "

The status of the revoked subscription.

", + "SubscriptionSummary$status": "

The status of the subscription.

" + } + }, + "SubscriptionSummary": { + "base": "

The details of the subscription.

", + "refs": { + "Subscriptions$member": null + } + }, + "SubscriptionTargetForm": { + "base": "

The details of the subscription target configuration.

", + "refs": { + "SubscriptionTargetForms$member": null + } + }, + "SubscriptionTargetForms": { + "base": null, + "refs": { + "CreateSubscriptionTargetInput$subscriptionTargetConfig": "

The configuration of the subscription target.

", + "CreateSubscriptionTargetOutput$subscriptionTargetConfig": "

The configuration of the subscription target.

", + "GetSubscriptionTargetOutput$subscriptionTargetConfig": "

The configuration of teh subscription target.

", + "SubscriptionTargetSummary$subscriptionTargetConfig": "

The configuration of the subscription target.

", + "UpdateSubscriptionTargetInput$subscriptionTargetConfig": "

The configuration to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$subscriptionTargetConfig": "

The configuration to be updated as part of the UpdateSubscriptionTarget action.

" + } + }, + "SubscriptionTargetId": { + "base": null, + "refs": { + "CreateSubscriptionGrantInput$subscriptionTargetIdentifier": "

The ID of the subscription target for which the subscription grant is created.

", + "CreateSubscriptionGrantOutput$subscriptionTargetId": "

The ID of the subscription target for which the subscription grant is created.

", + "CreateSubscriptionTargetOutput$id": "

The ID of the subscription target.

", + "DeleteSubscriptionGrantOutput$subscriptionTargetId": "

The ID of the subscription target associated with the subscription grant that is deleted.

", + "DeleteSubscriptionTargetInput$identifier": "

The ID of the subscription target that is deleted.

", + "GetSubscriptionGrantOutput$subscriptionTargetId": "

The subscription target ID associated with the subscription grant.

", + "GetSubscriptionTargetInput$identifier": "

The ID of the subscription target.

", + "GetSubscriptionTargetOutput$id": "

The ID of the subscription target.

", + "ListSubscriptionGrantsInput$subscriptionTargetId": "

The identifier of the subscription target.

", + "SubscriptionGrantSummary$subscriptionTargetId": "

The identifier of the target of the subscription grant.

", + "SubscriptionTargetSummary$id": "

The identifier of the subscription target.

", + "UpdateSubscriptionGrantStatusOutput$subscriptionTargetId": "

The identifier of the subscription target whose subscription grant status is to be updated.

", + "UpdateSubscriptionTargetInput$identifier": "

Identifier of the subscription target that is to be updated.

", + "UpdateSubscriptionTargetOutput$id": "

Identifier of the subscription target that is to be updated.

" + } + }, + "SubscriptionTargetName": { + "base": null, + "refs": { + "CreateSubscriptionTargetInput$name": "

The name of the subscription target.

", + "CreateSubscriptionTargetOutput$name": "

The name of the subscription target.

", + "GetSubscriptionTargetOutput$name": "

The name of the subscription target.

", + "SubscriptionTargetSummary$name": "

The name of the subscription target.

", + "UpdateSubscriptionTargetInput$name": "

The name to be updated as part of the UpdateSubscriptionTarget action.

", + "UpdateSubscriptionTargetOutput$name": "

The name to be updated as part of the UpdateSubscriptionTarget action.

" + } + }, + "SubscriptionTargetSummary": { + "base": "

The details of the subscription target.

", + "refs": { + "SubscriptionTargets$member": null + } + }, + "SubscriptionTargets": { + "base": null, + "refs": { + "ListSubscriptionTargetsOutput$items": "

The results of the ListSubscriptionTargets action.

" + } + }, + "Subscriptions": { + "base": null, + "refs": { + "ListSubscriptionsOutput$items": "

The results of the ListSubscriptions action.

" + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "CreateEnvironmentOutput$createdAt": "

The timestamp of when the environment was created.

", + "CreateEnvironmentOutput$updatedAt": "

The timestamp of when this environment was updated.

", + "CreateEnvironmentProfileOutput$createdAt": "

The timestamp of when this environment profile was created.

", + "CreateEnvironmentProfileOutput$updatedAt": "

The timestamp of when this environment profile was updated.

", + "CreateProjectOutput$createdAt": "

The timestamp of when the project was created.

", + "CreateProjectOutput$lastUpdatedAt": "

The timestamp of when the project was last updated.

", + "EnvironmentBlueprintConfigurationItem$createdAt": "

The timestamp of when an environment blueprint was created.

", + "EnvironmentBlueprintConfigurationItem$updatedAt": "

The timestamp of when the environment blueprint was updated.

", + "EnvironmentBlueprintSummary$createdAt": "

The timestamp of when an environment blueprint was created.

", + "EnvironmentBlueprintSummary$updatedAt": "

The timestamp of when the blueprint was enabled.

", + "EnvironmentProfileSummary$createdAt": "

The timestamp of when an environment profile was created.

", + "EnvironmentProfileSummary$updatedAt": "

The timestamp of when the environment profile was updated.

", + "EnvironmentSummary$createdAt": "

The timestamp of when the environment was created.

", + "EnvironmentSummary$updatedAt": "

The timestamp of when the environment was updated.

", + "GetEnvironmentBlueprintConfigurationOutput$createdAt": "

The timestamp of when this blueprint was created.

", + "GetEnvironmentBlueprintConfigurationOutput$updatedAt": "

The timestamp of when this blueprint was upated.

", + "GetEnvironmentBlueprintOutput$createdAt": "

A timestamp of when this blueprint was created.

", + "GetEnvironmentBlueprintOutput$updatedAt": "

The timestamp of when this blueprint was updated.

", + "GetEnvironmentOutput$createdAt": "

The timestamp of when the environment was created.

", + "GetEnvironmentOutput$updatedAt": "

The timestamp of when this environment was updated.

", + "GetEnvironmentProfileOutput$createdAt": "

The timestamp of when this environment profile was created.

", + "GetEnvironmentProfileOutput$updatedAt": "

The timestamp of when this environment profile was upated.

", + "GetProjectOutput$createdAt": "

The timestamp of when the project was created.

", + "GetProjectOutput$lastUpdatedAt": "

The timestamp of when the project was last updated.

", + "ProjectSummary$createdAt": "

The timestamp of when a project was created.

", + "ProjectSummary$updatedAt": "

The timestamp of when the project was updated.

", + "PutEnvironmentBlueprintConfigurationOutput$createdAt": "

The timestamp of when the environment blueprint was created.

", + "PutEnvironmentBlueprintConfigurationOutput$updatedAt": "

The timestamp of when the environment blueprint was updated.

", + "UpdateEnvironmentOutput$createdAt": "

The timestamp of when the environment was created.

", + "UpdateEnvironmentOutput$updatedAt": "

The timestamp of when the environment was updated.

", + "UpdateEnvironmentProfileOutput$createdAt": "

The timestamp of when the environment profile was created.

", + "UpdateEnvironmentProfileOutput$updatedAt": "

The timestamp of when the environment profile was updated.

", + "UpdateProjectOutput$createdAt": "

The timestamp of when the project was created.

", + "UpdateProjectOutput$lastUpdatedAt": "

The timestamp of when the project was last updated.

" + } + }, + "TagKey": { + "base": null, + "refs": { + "TagKeyList$member": null, + "Tags$key": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

Specifies the tag keys for the UntagResource action.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tags$value": null + } + }, + "Tags": { + "base": null, + "refs": { + "CreateDomainInput$tags": "

The tags specified for the Amazon DataZone domain.

", + "CreateDomainOutput$tags": "

The tags specified for the Amazon DataZone domain.

", + "GetDomainOutput$tags": "

The tags specified for the Amazon DataZone domain.

", + "ListTagsForResourceResponse$tags": "

The tags of the specified resource.

", + "TagResourceRequest$tags": "

Specifies the tags for the TagResource action.

" + } + }, + "TaskId": { + "base": null, + "refs": { + "NotificationOutput$identifier": "

The identifier of the notification.

" + } + }, + "TaskStatus": { + "base": null, + "refs": { + "ListNotificationsInput$taskStatus": "

The task status of notifications.

", + "NotificationOutput$status": "

The status included in the notification.

" + } + }, + "TermRelations": { + "base": "

The details of the term relations.

", + "refs": { + "CreateGlossaryTermInput$termRelations": "

The term relations of this business glossary term.

", + "CreateGlossaryTermOutput$termRelations": "

The term relations of this business glossary term.

", + "GetGlossaryTermOutput$termRelations": "

The relations of the business glossary term.

", + "GlossaryTermItem$termRelations": "

The relations of the business glossary term.

", + "UpdateGlossaryTermInput$termRelations": "

The term relations to be updated as part of the UpdateGlossaryTerm action.

", + "UpdateGlossaryTermOutput$termRelations": "

The term relations to be updated as part of the UpdateGlossaryTerm action.

" + } + }, + "TermRelationsClassifiesList": { + "base": null, + "refs": { + "TermRelations$classifies": "

The classifies of the term relations.

" + } + }, + "TermRelationsIsAList": { + "base": null, + "refs": { + "TermRelations$isA": "

The isA property of the term relations.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "ListNotificationsInput$afterTimestamp": "

The time after which you want to list notifications.

", + "ListNotificationsInput$beforeTimestamp": "

The time before which you want to list notifications.

", + "NotificationOutput$creationTimestamp": "

The timestamp of when a notification was created.

", + "NotificationOutput$lastUpdatedTimestamp": "

The timestamp of when the notification was last updated.

", + "SubscribedAsset$failureTimestamp": "

The failure timestamp included in the details of the asset for which the subscription grant is created.

", + "SubscribedAsset$grantedTimestamp": "

The timestamp of when the subscription grant to the asset is created.

" + } + }, + "Timezone": { + "base": null, + "refs": { + "ScheduleConfiguration$timezone": "

The timezone of the data source run.

" + } + }, + "Title": { + "base": null, + "refs": { + "NotificationOutput$title": "

The title of the notification.

" + } + }, + "Topic": { + "base": "

The topic of the notification.

", + "refs": { + "NotificationOutput$topic": "

The topic of the notification.

" + } + }, + "TypeName": { + "base": null, + "refs": { + "ApplicableAssetTypes$member": null, + "AssetListing$assetType": "

The type of an asset published in an Amazon DataZone catalog.

", + "AssetListingItem$entityType": "

The type of the inventory asset.

", + "AssetTypeItem$name": "

The name of the asset type.

", + "CreateAssetTypeInput$name": "

The name of the custom asset type.

", + "CreateAssetTypeOutput$name": "

The name of the asset type.

", + "GetAssetTypeOutput$name": "

The name of the asset type.

", + "SubscribedAssetListing$entityType": "

The type of the published asset for which the subscription grant is created.

" + } + }, + "TypesSearchScope": { + "base": null, + "refs": { + "SearchTypesInput$searchScope": "

Specifies the scope of the search for types.

" + } + }, + "UnauthorizedException": { + "base": "

You do not have permission to perform this action.

", + "refs": { + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateDataSourceInput": { + "base": null, + "refs": { + } + }, + "UpdateDataSourceOutput": { + "base": null, + "refs": { + } + }, + "UpdateDomainInput": { + "base": null, + "refs": { + } + }, + "UpdateDomainOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentInput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentProfileInput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentProfileOutput": { + "base": null, + "refs": { + } + }, + "UpdateGlossaryInput": { + "base": null, + "refs": { + } + }, + "UpdateGlossaryOutput": { + "base": null, + "refs": { + } + }, + "UpdateGlossaryTermInput": { + "base": null, + "refs": { + } + }, + "UpdateGlossaryTermOutput": { + "base": null, + "refs": { + } + }, + "UpdateGroupProfileInput": { + "base": null, + "refs": { + } + }, + "UpdateGroupProfileOutput": { + "base": null, + "refs": { + } + }, + "UpdateProjectInput": { + "base": null, + "refs": { + } + }, + "UpdateProjectOutput": { + "base": null, + "refs": { + } + }, + "UpdateSubscriptionGrantStatusInput": { + "base": null, + "refs": { + } + }, + "UpdateSubscriptionGrantStatusOutput": { + "base": null, + "refs": { + } + }, + "UpdateSubscriptionRequestInput": { + "base": null, + "refs": { + } + }, + "UpdateSubscriptionRequestOutput": { + "base": null, + "refs": { + } + }, + "UpdateSubscriptionRequestOutputSubscribedListingsList": { + "base": null, + "refs": { + "UpdateSubscriptionRequestOutput$subscribedListings": "

The subscribed listings of the subscription request.

" + } + }, + "UpdateSubscriptionRequestOutputSubscribedPrincipalsList": { + "base": null, + "refs": { + "UpdateSubscriptionRequestOutput$subscribedPrincipals": "

The subscribed principals of the subscription request.

" + } + }, + "UpdateSubscriptionTargetInput": { + "base": null, + "refs": { + } + }, + "UpdateSubscriptionTargetOutput": { + "base": null, + "refs": { + } + }, + "UpdateUserProfileInput": { + "base": null, + "refs": { + } + }, + "UpdateUserProfileOutput": { + "base": null, + "refs": { + } + }, + "UpdatedAt": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$updatedAt": "

Specifies the timestamp when subscription request was updated.

", + "AssetTypeItem$updatedAt": "

The timestamp of when the asset type was updated.

", + "CancelSubscriptionOutput$updatedAt": "

The timestamp that specifies when the subscription was cancelled.

", + "CreateAssetTypeOutput$updatedAt": "

The timestamp of when the custom type was created.

", + "CreateSubscriptionGrantOutput$updatedAt": "

A timestamp of when the subscription grant was updated.

", + "CreateSubscriptionRequestOutput$updatedAt": "

The timestamp of when the subscription request was updated.

", + "CreateSubscriptionTargetOutput$updatedAt": "

The timestamp of when the subscription target was updated.

", + "DataProductSummary$updatedAt": "

", + "DeleteSubscriptionGrantOutput$updatedAt": "

The timestamp of when the subscription grant that is deleted was updated.

", + "DomainSummary$lastUpdatedAt": "

A timestamp of when a Amazon DataZone domain was last updated.

", + "GetAssetTypeOutput$updatedAt": "

The timestamp of when the asset type was updated.

", + "GetDomainOutput$lastUpdatedAt": "

The timestamp of when the Amazon DataZone domain was last updated.

", + "GetGlossaryOutput$updatedAt": "

The timestamp of when the business glossary was updated.

", + "GetGlossaryTermOutput$updatedAt": "

The timestamp of when the business glossary term was updated.

", + "GetListingOutput$updatedAt": "

The timestamp of when the listing was updated.

", + "GetSubscriptionGrantOutput$updatedAt": "

The timestamp of when the subscription grant was upated.

", + "GetSubscriptionOutput$updatedAt": "

The timestamp of when the subscription was updated.

", + "GetSubscriptionRequestDetailsOutput$updatedAt": "

The timestamp of when the subscription request was updated.

", + "GetSubscriptionTargetOutput$updatedAt": "

The timestamp of when the subscription target was updated.

", + "GlossaryItem$updatedAt": "

The timestamp of when the business glossary was updated.

", + "GlossaryTermItem$updatedAt": "

The timestamp of when a business glossary term was updated.

", + "RejectSubscriptionRequestOutput$updatedAt": "

The timestamp of when the subscription request was updated.

", + "RevokeSubscriptionOutput$updatedAt": "

The timestamp of when the subscription was revoked.

", + "SubscriptionGrantSummary$updatedAt": "

The timestampf of when the subscription grant was updated.

", + "SubscriptionRequestSummary$updatedAt": "

The timestamp of when the subscription request was updated.

", + "SubscriptionSummary$updatedAt": "

The timestamp of when the subscription was updated.

", + "SubscriptionTargetSummary$updatedAt": "

The timestamp of when the subscription target was updated.

", + "UpdateDomainOutput$lastUpdatedAt": "

Specifies the timestamp of when the domain was last updated.

", + "UpdateSubscriptionGrantStatusOutput$updatedAt": "

The timestamp of when the subscription grant status is to be updated.

", + "UpdateSubscriptionRequestOutput$updatedAt": "

The timestamp of when the subscription request was updated.

", + "UpdateSubscriptionTargetOutput$updatedAt": "

The timestamp of when the subscription target was updated.

" + } + }, + "UpdatedBy": { + "base": null, + "refs": { + "AcceptSubscriptionRequestOutput$updatedBy": "

Specifies the Amazon DataZone user who updated the subscription request.

", + "AssetListingItem$listingUpdatedBy": "

The Amazon DataZone user who updated the listing.

", + "AssetTypeItem$updatedBy": "

The Amazon DataZone user who updated the asset type.

", + "CancelSubscriptionOutput$updatedBy": "

The Amazon DataZone user that cancelled the subscription.

", + "CreateAssetTypeOutput$updatedBy": "

The Amazon DataZone user that created the custom asset type.

", + "CreateSubscriptionGrantOutput$updatedBy": "

The Amazon DataZone user who updated the subscription grant.

", + "CreateSubscriptionRequestOutput$updatedBy": "

The Amazon DataZone user who updated the subscription request.

", + "CreateSubscriptionTargetOutput$updatedBy": "

The Amazon DataZone user who updated the subscription target.

", + "DataProductSummary$updatedBy": "

", + "DeleteSubscriptionGrantOutput$updatedBy": "

The Amazon DataZone user who updated the subscription grant that is deleted.

", + "GetAssetTypeOutput$updatedBy": "

The Amazon DataZone user that updated the asset type.

", + "GetGlossaryOutput$updatedBy": "

The Amazon DataZone user who updated the business glossary.

", + "GetGlossaryTermOutput$updatedBy": "

The Amazon DataZone user who updated the business glossary term.

", + "GetListingOutput$updatedBy": "

The Amazon DataZone user who updated the listing.

", + "GetSubscriptionGrantOutput$updatedBy": "

The Amazon DataZone user who updated the subscription grant.

", + "GetSubscriptionOutput$updatedBy": "

The Amazon DataZone user who updated the subscription.

", + "GetSubscriptionRequestDetailsOutput$updatedBy": "

The Amazon DataZone user who updated the subscription request.

", + "GetSubscriptionTargetOutput$updatedBy": "

The Amazon DataZone user who updated the subscription target.

", + "GlossaryItem$updatedBy": "

The Amazon DataZone user who updated the business glossary.

", + "GlossaryTermItem$updatedBy": "

The Amazon DataZone user who updated the business glossary term.

", + "RejectSubscriptionRequestOutput$updatedBy": "

The Amazon DataZone user who updated the subscription request.

", + "RevokeSubscriptionOutput$updatedBy": "

The Amazon DataZone user who revoked the subscription.

", + "SubscriptionGrantSummary$updatedBy": "

The Amazon DataZone user who updated the subscription grant.

", + "SubscriptionRequestSummary$updatedBy": "

The identifier of the Amazon DataZone user who updated the subscription request.

", + "SubscriptionSummary$updatedBy": "

The Amazon DataZone user who updated the subscription.

", + "SubscriptionTargetSummary$updatedBy": "

The Amazon DataZone user who updated the subscription target.

", + "UpdateSubscriptionGrantStatusOutput$updatedBy": "

The Amazon DataZone user who updated the subscription grant status.

", + "UpdateSubscriptionRequestOutput$updatedBy": "

The Amazon DataZone user who updated the subscription request.

", + "UpdateSubscriptionTargetOutput$updatedBy": "

The Amazon DataZone user who updated the subscription target.

" + } + }, + "UserAssignment": { + "base": null, + "refs": { + "SingleSignOn$userAssignment": "

The single sign-on user assignment in Amazon DataZone.

" + } + }, + "UserDesignation": { + "base": null, + "refs": { + "CreateProjectMembershipInput$designation": "

The designation of the project membership.

", + "ProjectMember$designation": "

The designated role of a project member.

" + } + }, + "UserDetails": { + "base": "

The user details of a project member.

", + "refs": { + "MemberDetails$user": "

The user details of a project member.

" + } + }, + "UserIdentifier": { + "base": null, + "refs": { + "CreateUserProfileInput$userIdentifier": "

The identifier of the user for which the user profile is created.

", + "GetUserProfileInput$userIdentifier": "

The identifier of the user for which you want to get the user profile.

", + "UpdateUserProfileInput$userIdentifier": "

The identifier of the user whose user profile is to be updated.

" + } + }, + "UserProfileDetails": { + "base": "

The details of the user profile in Amazon DataZone.

", + "refs": { + "CreateUserProfileOutput$details": null, + "GetUserProfileOutput$details": null, + "UpdateUserProfileOutput$details": null, + "UserProfileSummary$details": "

The details of the user profile.

" + } + }, + "UserProfileId": { + "base": null, + "refs": { + "CreateUserProfileOutput$id": "

The identifier of the user profile.

", + "GetUserProfileOutput$id": "

The identifier of the user profile.

", + "UpdateUserProfileOutput$id": "

The identifier of the user profile.

", + "UserProfileSummary$id": "

The ID of the user profile.

" + } + }, + "UserProfileName": { + "base": null, + "refs": { + "SsoUserProfileDetails$username": "

The username included in the single sign-on details of the user profile.

" + } + }, + "UserProfileStatus": { + "base": null, + "refs": { + "CreateUserProfileOutput$status": "

The status of the user profile.

", + "GetUserProfileOutput$status": "

The status of the user profile.

", + "UpdateUserProfileInput$status": "

The status of the user profile that are to be updated.

", + "UpdateUserProfileOutput$status": "

The status of the user profile.

", + "UserProfileSummary$status": "

The status of the user profile.

" + } + }, + "UserProfileSummaries": { + "base": null, + "refs": { + "SearchUserProfilesOutput$items": "

The results of the SearchUserProfiles action.

" + } + }, + "UserProfileSummary": { + "base": "

The details of the user profile.

", + "refs": { + "UserProfileSummaries$member": null + } + }, + "UserProfileType": { + "base": null, + "refs": { + "CreateUserProfileOutput$type": "

The type of the user profile.

", + "GetUserProfileInput$type": "

The type of the user profile.

", + "GetUserProfileOutput$type": "

The type of the user profile.

", + "UpdateUserProfileInput$type": "

The type of the user profile that are to be updated.

", + "UpdateUserProfileOutput$type": "

The type of the user profile.

", + "UserProfileSummary$type": "

The type of the user profile.

" + } + }, + "UserSearchText": { + "base": null, + "refs": { + "SearchUserProfilesInput$searchText": "

Specifies the text for which to search.

" + } + }, + "UserSearchType": { + "base": null, + "refs": { + "SearchUserProfilesInput$userType": "

Specifies the user type for the SearchUserProfiles action.

" + } + }, + "UserType": { + "base": null, + "refs": { + "CreateUserProfileInput$userType": "

The user type of the user for which the user profile is created.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by the Amazon Web Services service.

", + "refs": { + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,247 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://datazone-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://datazone.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://datazone-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://datazone.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,119 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://datazone-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://datazone.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://datazone-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://datazone.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://datazone-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://datazone.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/datazone/2018-05-10/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/datazone/2018-05-10/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,130 @@ +{ + "pagination": { + "ListAssetRevisions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListDataSourceRunActivities": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListDataSourceRuns": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListDataSources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListDomains": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListEnvironmentBlueprintConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListEnvironmentBlueprints": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListEnvironmentProfiles": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListEnvironments": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListNotifications": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "notifications" + }, + "ListProjectMemberships": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "members" + }, + "ListProjects": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListSubscriptionGrants": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListSubscriptionRequests": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListSubscriptionTargets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListSubscriptions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "Search": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "SearchGroupProfiles": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "SearchListings": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "SearchTypes": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "SearchUserProfiles": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/detective/2018-10-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/detective/2018-10-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/detective/2018-10-26/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/detective/2018-10-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -175,6 +175,22 @@ {"shape":"TooManyRequestsException"} ] }, + "GetInvestigation":{ + "name":"GetInvestigation", + "http":{ + "method":"POST", + "requestUri":"/investigations/getInvestigation" + }, + "input":{"shape":"GetInvestigationRequest"}, + "output":{"shape":"GetInvestigationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"TooManyRequestsException"} + ] + }, "GetMembers":{ "name":"GetMembers", "http":{ @@ -219,6 +235,38 @@ {"shape":"ValidationException"} ] }, + "ListIndicators":{ + "name":"ListIndicators", + "http":{ + "method":"POST", + "requestUri":"/investigations/listIndicators" + }, + "input":{"shape":"ListIndicatorsRequest"}, + "output":{"shape":"ListIndicatorsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"TooManyRequestsException"} + ] + }, + "ListInvestigations":{ + "name":"ListInvestigations", + "http":{ + "method":"POST", + "requestUri":"/investigations/listInvestigations" + }, + "input":{"shape":"ListInvestigationsRequest"}, + "output":{"shape":"ListInvestigationsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"TooManyRequestsException"} + ] + }, "ListInvitations":{ "name":"ListInvitations", "http":{ @@ -294,6 +342,22 @@ {"shape":"ValidationException"} ] }, + "StartInvestigation":{ + "name":"StartInvestigation", + "http":{ + "method":"POST", + "requestUri":"/investigations/startInvestigation" + }, + "input":{"shape":"StartInvestigationRequest"}, + "output":{"shape":"StartInvestigationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"TooManyRequestsException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "StartMonitoringMember":{ "name":"StartMonitoringMember", "http":{ @@ -357,6 +421,21 @@ {"shape":"ValidationException"} ] }, + "UpdateInvestigationState":{ + "name":"UpdateInvestigationState", + "http":{ + "method":"POST", + "requestUri":"/investigations/updateInvestigationState" + }, + "input":{"shape":"UpdateInvestigationStateRequest"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"TooManyRequestsException"} + ] + }, "UpdateOrganizationConfiguration":{ "name":"UpdateOrganizationConfiguration", "http":{ @@ -373,6 +452,9 @@ } }, "shapes":{ + "APIFailureCount":{"type":"long"}, + "APIName":{"type":"string"}, + "APISuccessCount":{"type":"long"}, "AcceptInvitationRequest":{ "type":"structure", "required":["GraphArn"], @@ -439,6 +521,12 @@ "type":"list", "member":{"shape":"Administrator"} }, + "AiPaginationToken":{ + "type":"string", + "max":2048, + "min":1 + }, + "Aso":{"type":"string"}, "BatchGetGraphMemberDatasourcesRequest":{ "type":"structure", "required":[ @@ -564,6 +652,17 @@ "VolumeUsageUpdateTime":{"shape":"Timestamp"} } }, + "DateFilter":{ + "type":"structure", + "required":[ + "StartInclusive", + "EndInclusive" + ], + "members":{ + "StartInclusive":{"shape":"Timestamp"}, + "EndInclusive":{"shape":"Timestamp"} + } + }, "DeleteGraphRequest":{ "type":"structure", "required":["GraphArn"], @@ -629,6 +728,17 @@ "AccountId":{"shape":"AccountId"} } }, + "EntityArn":{ + "type":"string", + "pattern":"^arn:.*" + }, + "EntityType":{ + "type":"string", + "enum":[ + "IAM_ROLE", + "IAM_USER" + ] + }, "ErrorCode":{ "type":"string", "enum":[ @@ -639,6 +749,57 @@ }, "ErrorCodeReason":{"type":"string"}, "ErrorMessage":{"type":"string"}, + "Field":{ + "type":"string", + "enum":[ + "SEVERITY", + "STATUS", + "CREATED_TIME" + ] + }, + "FilterCriteria":{ + "type":"structure", + "members":{ + "Severity":{"shape":"StringFilter"}, + "Status":{"shape":"StringFilter"}, + "State":{"shape":"StringFilter"}, + "EntityArn":{"shape":"StringFilter"}, + "CreatedTime":{"shape":"DateFilter"} + } + }, + "FlaggedIpAddressDetail":{ + "type":"structure", + "members":{ + "IpAddress":{"shape":"IpAddress"}, + "Reason":{"shape":"Reason"} + } + }, + "GetInvestigationRequest":{ + "type":"structure", + "required":[ + "GraphArn", + "InvestigationId" + ], + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "InvestigationId":{"shape":"InvestigationId"} + } + }, + "GetInvestigationResponse":{ + "type":"structure", + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "InvestigationId":{"shape":"InvestigationId"}, + "EntityArn":{"shape":"EntityArn"}, + "EntityType":{"shape":"EntityType"}, + "CreatedTime":{"shape":"Timestamp"}, + "ScopeStartTime":{"shape":"Timestamp"}, + "ScopeEndTime":{"shape":"Timestamp"}, + "Status":{"shape":"Status"}, + "Severity":{"shape":"Severity"}, + "State":{"shape":"State"} + } + }, "GetMembersRequest":{ "type":"structure", "required":[ @@ -678,6 +839,58 @@ "type":"list", "member":{"shape":"Graph"} }, + "HourlyTimeDelta":{ + "type":"integer", + "box":true + }, + "Id":{"type":"string"}, + "ImpossibleTravelDetail":{ + "type":"structure", + "members":{ + "StartingIpAddress":{"shape":"IpAddress"}, + "EndingIpAddress":{"shape":"IpAddress"}, + "StartingLocation":{"shape":"Location"}, + "EndingLocation":{"shape":"Location"}, + "HourlyTimeDelta":{"shape":"HourlyTimeDelta"} + } + }, + "Indicator":{ + "type":"structure", + "members":{ + "IndicatorType":{"shape":"IndicatorType"}, + "IndicatorDetail":{"shape":"IndicatorDetail"} + } + }, + "IndicatorDetail":{ + "type":"structure", + "members":{ + "TTPsObservedDetail":{"shape":"TTPsObservedDetail"}, + "ImpossibleTravelDetail":{"shape":"ImpossibleTravelDetail"}, + "FlaggedIpAddressDetail":{"shape":"FlaggedIpAddressDetail"}, + "NewGeolocationDetail":{"shape":"NewGeolocationDetail"}, + "NewAsoDetail":{"shape":"NewAsoDetail"}, + "NewUserAgentDetail":{"shape":"NewUserAgentDetail"}, + "RelatedFindingDetail":{"shape":"RelatedFindingDetail"}, + "RelatedFindingGroupDetail":{"shape":"RelatedFindingGroupDetail"} + } + }, + "IndicatorType":{ + "type":"string", + "enum":[ + "TTP_OBSERVED", + "IMPOSSIBLE_TRAVEL", + "FLAGGED_IP_ADDRESS", + "NEW_GEOLOCATION", + "NEW_ASO", + "NEW_USER_AGENT", + "RELATED_FINDING", + "RELATED_FINDING_GROUP" + ] + }, + "Indicators":{ + "type":"list", + "member":{"shape":"Indicator"} + }, "InternalServerException":{ "type":"structure", "members":{ @@ -686,6 +899,28 @@ "error":{"httpStatusCode":500}, "exception":true }, + "InvestigationDetail":{ + "type":"structure", + "members":{ + "InvestigationId":{"shape":"InvestigationId"}, + "Severity":{"shape":"Severity"}, + "Status":{"shape":"Status"}, + "State":{"shape":"State"}, + "CreatedTime":{"shape":"Timestamp"}, + "EntityArn":{"shape":"EntityArn"}, + "EntityType":{"shape":"EntityType"} + } + }, + "InvestigationDetails":{ + "type":"list", + "member":{"shape":"InvestigationDetail"} + }, + "InvestigationId":{ + "type":"string", + "max":21, + "min":21, + "pattern":"^[0-9]+$" + }, "InvitationType":{ "type":"string", "enum":[ @@ -693,6 +928,8 @@ "ORGANIZATION" ] }, + "IpAddress":{"type":"string"}, + "IsNewForEntireAccount":{"type":"boolean"}, "LastIngestStateChangeDates":{ "type":"map", "key":{"shape":"DatasourcePackageIngestState"}, @@ -728,6 +965,47 @@ "NextToken":{"shape":"PaginationToken"} } }, + "ListIndicatorsRequest":{ + "type":"structure", + "required":[ + "GraphArn", + "InvestigationId" + ], + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "InvestigationId":{"shape":"InvestigationId"}, + "IndicatorType":{"shape":"IndicatorType"}, + "NextToken":{"shape":"AiPaginationToken"}, + "MaxResults":{"shape":"MaxResults"} + } + }, + "ListIndicatorsResponse":{ + "type":"structure", + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "InvestigationId":{"shape":"InvestigationId"}, + "NextToken":{"shape":"AiPaginationToken"}, + "Indicators":{"shape":"Indicators"} + } + }, + "ListInvestigationsRequest":{ + "type":"structure", + "required":["GraphArn"], + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "NextToken":{"shape":"AiPaginationToken"}, + "MaxResults":{"shape":"MaxResults"}, + "FilterCriteria":{"shape":"FilterCriteria"}, + "SortCriteria":{"shape":"SortCriteria"} + } + }, + "ListInvestigationsResponse":{ + "type":"structure", + "members":{ + "InvestigationDetails":{"shape":"InvestigationDetails"}, + "NextToken":{"shape":"AiPaginationToken"} + } + }, "ListInvitationsRequest":{ "type":"structure", "members":{ @@ -789,6 +1067,13 @@ "Tags":{"shape":"TagMap"} } }, + "Location":{"type":"string"}, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, "MemberDetail":{ "type":"structure", "members":{ @@ -869,12 +1154,39 @@ "type":"list", "member":{"shape":"MembershipDatasources"} }, + "NewAsoDetail":{ + "type":"structure", + "members":{ + "Aso":{"shape":"Aso"}, + "IsNewForEntireAccount":{"shape":"IsNewForEntireAccount"} + } + }, + "NewGeolocationDetail":{ + "type":"structure", + "members":{ + "Location":{"shape":"Location"}, + "IpAddress":{"shape":"IpAddress"}, + "IsNewForEntireAccount":{"shape":"IsNewForEntireAccount"} + } + }, + "NewUserAgentDetail":{ + "type":"structure", + "members":{ + "UserAgent":{"shape":"UserAgent"}, + "IsNewForEntireAccount":{"shape":"IsNewForEntireAccount"} + } + }, "PaginationToken":{ "type":"string", "max":1024, "min":1 }, "Percentage":{"type":"double"}, + "Procedure":{"type":"string"}, + "Reason":{ + "type":"string", + "enum":["AWS_THREAT_INTELLIGENCE"] + }, "RejectInvitationRequest":{ "type":"structure", "required":["GraphArn"], @@ -882,6 +1194,20 @@ "GraphArn":{"shape":"GraphArn"} } }, + "RelatedFindingDetail":{ + "type":"structure", + "members":{ + "Arn":{"shape":"EntityArn"}, + "Type":{"shape":"Type"}, + "IpAddress":{"shape":"IpAddress"} + } + }, + "RelatedFindingGroupDetail":{ + "type":"structure", + "members":{ + "Id":{"shape":"Id"} + } + }, "Resource":{ "type":"string", "max":64, @@ -910,6 +1236,51 @@ "error":{"httpStatusCode":402}, "exception":true }, + "Severity":{ + "type":"string", + "enum":[ + "INFORMATIONAL", + "LOW", + "MEDIUM", + "HIGH", + "CRITICAL" + ] + }, + "SortCriteria":{ + "type":"structure", + "members":{ + "Field":{"shape":"Field"}, + "SortOrder":{"shape":"SortOrder"} + } + }, + "SortOrder":{ + "type":"string", + "enum":[ + "ASC", + "DESC" + ] + }, + "StartInvestigationRequest":{ + "type":"structure", + "required":[ + "GraphArn", + "EntityArn", + "ScopeStartTime", + "ScopeEndTime" + ], + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "EntityArn":{"shape":"EntityArn"}, + "ScopeStartTime":{"shape":"Timestamp"}, + "ScopeEndTime":{"shape":"Timestamp"} + } + }, + "StartInvestigationResponse":{ + "type":"structure", + "members":{ + "InvestigationId":{"shape":"InvestigationId"} + } + }, "StartMonitoringMemberRequest":{ "type":"structure", "required":[ @@ -921,6 +1292,41 @@ "AccountId":{"shape":"AccountId"} } }, + "State":{ + "type":"string", + "enum":[ + "ACTIVE", + "ARCHIVED" + ] + }, + "Status":{ + "type":"string", + "enum":[ + "RUNNING", + "FAILED", + "SUCCESSFUL" + ] + }, + "StringFilter":{ + "type":"structure", + "required":["Value"], + "members":{ + "Value":{"shape":"Value"} + } + }, + "TTPsObservedDetail":{ + "type":"structure", + "members":{ + "Tactic":{"shape":"Tactic"}, + "Technique":{"shape":"Technique"}, + "Procedure":{"shape":"Procedure"}, + "IpAddress":{"shape":"IpAddress"}, + "APIName":{"shape":"APIName"}, + "APISuccessCount":{"shape":"APISuccessCount"}, + "APIFailureCount":{"shape":"APIFailureCount"} + } + }, + "Tactic":{"type":"string"}, "TagKey":{ "type":"string", "max":128, @@ -964,6 +1370,7 @@ "type":"string", "max":256 }, + "Technique":{"type":"string"}, "Timestamp":{ "type":"timestamp", "timestampFormat":"iso8601" @@ -982,6 +1389,7 @@ "error":{"httpStatusCode":429}, "exception":true }, + "Type":{"type":"string"}, "UnprocessedAccount":{ "type":"structure", "members":{ @@ -1040,6 +1448,19 @@ "DatasourcePackages":{"shape":"DatasourcePackageList"} } }, + "UpdateInvestigationStateRequest":{ + "type":"structure", + "required":[ + "GraphArn", + "InvestigationId", + "State" + ], + "members":{ + "GraphArn":{"shape":"GraphArn"}, + "InvestigationId":{"shape":"InvestigationId"}, + "State":{"shape":"State"} + } + }, "UpdateOrganizationConfigurationRequest":{ "type":"structure", "required":["GraphArn"], @@ -1048,6 +1469,7 @@ "AutoEnable":{"shape":"Boolean"} } }, + "UserAgent":{"type":"string"}, "ValidationException":{ "type":"structure", "members":{ @@ -1058,6 +1480,11 @@ "error":{"httpStatusCode":400}, "exception":true }, + "Value":{ + "type":"string", + "max":500, + "min":1 + }, "VolumeUsageByDatasourcePackage":{ "type":"map", "key":{"shape":"DatasourcePackage"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/detective/2018-10-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/detective/2018-10-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/detective/2018-10-26/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/detective/2018-10-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -13,21 +13,44 @@ "DisableOrganizationAdminAccount": "

Removes the Detective administrator account in the current Region. Deletes the organization behavior graph.

Can only be called by the organization management account.

Removing the Detective administrator account does not affect the delegated administrator account for Detective in Organizations.

To remove the delegated administrator account in Organizations, use the Organizations API. Removing the delegated administrator account also removes the Detective administrator account in all Regions, except for Regions where the Detective administrator account is the organization management account.

", "DisassociateMembership": "

Removes the member account from the specified behavior graph. This operation can only be called by an invited member account that has the ENABLED status.

DisassociateMembership cannot be called by an organization account in the organization behavior graph. For the organization behavior graph, the Detective administrator account determines which organization accounts to enable or disable as member accounts.

", "EnableOrganizationAdminAccount": "

Designates the Detective administrator account for the organization in the current Region.

If the account does not have Detective enabled, then enables Detective for that account and creates a new behavior graph.

Can only be called by the organization management account.

If the organization has a delegated administrator account in Organizations, then the Detective administrator account must be either the delegated administrator account or the organization management account.

If the organization does not have a delegated administrator account in Organizations, then you can choose any account in the organization. If you choose an account other than the organization management account, Detective calls Organizations to make that account the delegated administrator account for Detective. The organization management account cannot be the delegated administrator account.

", + "GetInvestigation": "

Returns the investigation results of an investigation for a behavior graph.

", "GetMembers": "

Returns the membership details for specified member accounts for a behavior graph.

", "ListDatasourcePackages": "

Lists data source packages in the behavior graph.

", "ListGraphs": "

Returns the list of behavior graphs that the calling account is an administrator account of. This operation can only be called by an administrator account.

Because an account can currently only be the administrator of one behavior graph within a Region, the results always contain a single behavior graph.

", + "ListIndicators": "

Get the indicators from an investigation

", + "ListInvestigations": "

List all Investigations.

", "ListInvitations": "

Retrieves the list of open and accepted behavior graph invitations for the member account. This operation can only be called by an invited member account.

Open invitations are invitations that the member account has not responded to.

The results do not include behavior graphs for which the member account declined the invitation. The results also do not include behavior graphs that the member account resigned from or was removed from.

", "ListMembers": "

Retrieves the list of member accounts for a behavior graph.

For invited accounts, the results do not include member accounts that were removed from the behavior graph.

For the organization behavior graph, the results do not include organization accounts that the Detective administrator account has not enabled as member accounts.

", "ListOrganizationAdminAccounts": "

Returns information about the Detective administrator account for an organization. Can only be called by the organization management account.

", "ListTagsForResource": "

Returns the tag values that are assigned to a behavior graph.

", "RejectInvitation": "

Rejects an invitation to contribute the account data to a behavior graph. This operation must be called by an invited member account that has the INVITED status.

RejectInvitation cannot be called by an organization account in the organization behavior graph. In the organization behavior graph, organization accounts do not receive an invitation.

", + "StartInvestigation": "

initiate an investigation on an entity in a graph

", "StartMonitoringMember": "

Sends a request to enable data ingest for a member account that has a status of ACCEPTED_BUT_DISABLED.

For valid member accounts, the status is updated as follows.

  • If Detective enabled the member account, then the new status is ENABLED.

  • If Detective cannot enable the member account, the status remains ACCEPTED_BUT_DISABLED.

", "TagResource": "

Applies tag values to a behavior graph.

", "UntagResource": "

Removes tags from a behavior graph.

", "UpdateDatasourcePackages": "

Starts a data source packages for the behavior graph.

", + "UpdateInvestigationState": "

Update the state of an investigation.

", "UpdateOrganizationConfiguration": "

Updates the configuration for the Organizations integration in the current Region. Can only be called by the Detective administrator account for the organization.

" }, "shapes": { + "APIFailureCount": { + "base": null, + "refs": { + "TTPsObservedDetail$APIFailureCount": "

The total number of failed API requests.

" + } + }, + "APIName": { + "base": null, + "refs": { + "TTPsObservedDetail$APIName": "

The name of the API where the TTP was observed.

" + } + }, + "APISuccessCount": { + "base": null, + "refs": { + "TTPsObservedDetail$APISuccessCount": "

The total number of successful API requests.

" + } + }, "AcceptInvitationRequest": { "base": null, "refs": { @@ -92,6 +115,21 @@ "ListOrganizationAdminAccountsResponse$Administrators": "

The list of Detective administrator accounts.

" } }, + "AiPaginationToken": { + "base": null, + "refs": { + "ListIndicatorsRequest$NextToken": "

List if there are more results available. The value of nextToken is a unique pagination token for each page. Repeat the call using the returned token to retrieve the next page. Keep all other arguments unchanged.

Each pagination token expires after 24 hours. Using an expired pagination token will return a Validation Exception error.

", + "ListIndicatorsResponse$NextToken": "

List if there are more results available. The value of nextToken is a unique pagination token for each page. Repeat the call using the returned token to retrieve the next page. Keep all other arguments unchanged.

Each pagination token expires after 24 hours. Using an expired pagination token will return a Validation Exception error.

", + "ListInvestigationsRequest$NextToken": "

List if there are more results available. The value of nextToken is a unique pagination token for each page. Repeat the call using the returned token to retrieve the next page. Keep all other arguments unchanged.

Each pagination token expires after 24 hours. Using an expired pagination token will return a Validation Exception error.

", + "ListInvestigationsResponse$NextToken": "

List if there are more results available. The value of nextToken is a unique pagination token for each page. Repeat the call using the returned token to retrieve the next page. Keep all other arguments unchanged.

Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

" + } + }, + "Aso": { + "base": null, + "refs": { + "NewAsoDetail$Aso": "

Details about the new Autonomous System Organization (ASO).

" + } + }, "BatchGetGraphMemberDatasourcesRequest": { "base": null, "refs": { @@ -206,6 +244,12 @@ "VolumeUsageByDatasourcePackage$value": null } }, + "DateFilter": { + "base": "

Contains details on the time range used to filter data.

", + "refs": { + "FilterCriteria$CreatedTime": "

Filter the investigation results based on when the investigation was created.

" + } + }, "DeleteGraphRequest": { "base": null, "refs": { @@ -254,6 +298,22 @@ "refs": { } }, + "EntityArn": { + "base": null, + "refs": { + "GetInvestigationResponse$EntityArn": "

The unique Amazon Resource Name (ARN) of the IAM user and IAM role.

", + "InvestigationDetail$EntityArn": "

The unique Amazon Resource Name (ARN) of the IAM user and IAM role.

", + "RelatedFindingDetail$Arn": "

The ARN of the related finding.

", + "StartInvestigationRequest$EntityArn": "

The unique Amazon Resource Name (ARN) of the IAM user and IAM role.

" + } + }, + "EntityType": { + "base": null, + "refs": { + "GetInvestigationResponse$EntityType": "

Type of entity. For example, Amazon Web Services accounts, such as IAM user and role.

", + "InvestigationDetail$EntityType": "

Type of entity. For example, Amazon Web Services accounts, such as IAM user and role.

" + } + }, "ErrorCode": { "base": null, "refs": { @@ -282,6 +342,34 @@ "ValidationException$Message": null } }, + "Field": { + "base": null, + "refs": { + "SortCriteria$Field": "

Represents the Field attribute to sort investigations.

" + } + }, + "FilterCriteria": { + "base": "

Details on the criteria used to define the filter for investigation results.

", + "refs": { + "ListInvestigationsRequest$FilterCriteria": "

Filter the investigation results based on a criteria.

" + } + }, + "FlaggedIpAddressDetail": { + "base": "

Contains information on suspicious IP addresses identified as indicators of compromise. This indicator is derived from Amazon Web Services threat intelligence.

", + "refs": { + "IndicatorDetail$FlaggedIpAddressDetail": "

Suspicious IP addresses that are flagged, which indicates critical or severe threats based on threat intelligence by Detective. This indicator is derived from AWS threat intelligence.

" + } + }, + "GetInvestigationRequest": { + "base": null, + "refs": { + } + }, + "GetInvestigationResponse": { + "base": null, + "refs": { + } + }, "GetMembersRequest": { "base": null, "refs": { @@ -310,20 +398,27 @@ "DeleteMembersRequest$GraphArn": "

The ARN of the behavior graph to remove members from.

", "DescribeOrganizationConfigurationRequest$GraphArn": "

The ARN of the organization behavior graph.

", "DisassociateMembershipRequest$GraphArn": "

The ARN of the behavior graph to remove the member account from.

The member account's member status in the behavior graph must be ENABLED.

", + "GetInvestigationRequest$GraphArn": "

The ARN of the behavior graph.

", + "GetInvestigationResponse$GraphArn": "

The ARN of the behavior graph.

", "GetMembersRequest$GraphArn": "

The ARN of the behavior graph for which to request the member details.

", "Graph$Arn": "

The ARN of the behavior graph.

", "GraphArnList$member": null, "ListDatasourcePackagesRequest$GraphArn": "

The ARN of the behavior graph.

", + "ListIndicatorsRequest$GraphArn": "

The ARN of the behavior graph.

", + "ListIndicatorsResponse$GraphArn": "

The ARN of the behavior graph.

", + "ListInvestigationsRequest$GraphArn": "

The ARN of the behavior graph.

", "ListMembersRequest$GraphArn": "

The ARN of the behavior graph for which to retrieve the list of member accounts.

", "ListTagsForResourceRequest$ResourceArn": "

The ARN of the behavior graph for which to retrieve the tag values.

", "MemberDetail$GraphArn": "

The ARN of the behavior graph.

", "MembershipDatasources$GraphArn": "

The ARN of the organization behavior graph.

", "RejectInvitationRequest$GraphArn": "

The ARN of the behavior graph to reject the invitation to.

The member account's current member status in the behavior graph must be INVITED.

", + "StartInvestigationRequest$GraphArn": "

The ARN of the behavior graph.

", "StartMonitoringMemberRequest$GraphArn": "

The ARN of the behavior graph.

", "TagResourceRequest$ResourceArn": "

The ARN of the behavior graph to assign the tags to.

", "UnprocessedGraph$GraphArn": "

The ARN of the organization behavior graph.

", "UntagResourceRequest$ResourceArn": "

The ARN of the behavior graph to remove the tags from.

", "UpdateDatasourcePackagesRequest$GraphArn": "

The ARN of the behavior graph.

", + "UpdateInvestigationStateRequest$GraphArn": "

The ARN of the behavior graph.

", "UpdateOrganizationConfigurationRequest$GraphArn": "

The ARN of the organization behavior graph.

" } }, @@ -339,17 +434,103 @@ "ListGraphsResponse$GraphList": "

A list of behavior graphs that the account is an administrator account for.

" } }, + "HourlyTimeDelta": { + "base": null, + "refs": { + "ImpossibleTravelDetail$HourlyTimeDelta": "

Returns the time difference between the first and last timestamp the resource was used.

" + } + }, + "Id": { + "base": null, + "refs": { + "RelatedFindingGroupDetail$Id": "

The unique identifier for the finding group.

" + } + }, + "ImpossibleTravelDetail": { + "base": "

Contains information on unusual and impossible travel in an account.

", + "refs": { + "IndicatorDetail$ImpossibleTravelDetail": "

Identifies unusual and impossible user activity for an account.

" + } + }, + "Indicator": { + "base": "

Investigations triages indicators of compromises such as a finding and surfaces only the most critical and suspicious issues, so you can focus on high-level investigations.

", + "refs": { + "Indicators$member": null + } + }, + "IndicatorDetail": { + "base": "

Details about the indicators of compromise which are used to determine if a resource is involved in a security incident.

", + "refs": { + "Indicator$IndicatorDetail": "

Details about the indicator of compromise.

" + } + }, + "IndicatorType": { + "base": null, + "refs": { + "Indicator$IndicatorType": "

The type of indicator.

", + "ListIndicatorsRequest$IndicatorType": "

See Detective investigations..

" + } + }, + "Indicators": { + "base": null, + "refs": { + "ListIndicatorsResponse$Indicators": "

Indicators of compromise listed based on severity.

" + } + }, "InternalServerException": { "base": "

The request was valid but failed because of a problem with the service.

", "refs": { } }, + "InvestigationDetail": { + "base": "

Details about the investigation related to a potential security event identified by Detective

", + "refs": { + "InvestigationDetails$member": null + } + }, + "InvestigationDetails": { + "base": null, + "refs": { + "ListInvestigationsResponse$InvestigationDetails": "

Investigations details lists the summary of uncommon behavior or malicious activity which indicates a compromise.

" + } + }, + "InvestigationId": { + "base": null, + "refs": { + "GetInvestigationRequest$InvestigationId": "

The investigation ID of the investigation report.

", + "GetInvestigationResponse$InvestigationId": "

The investigation ID of the investigation report.

", + "InvestigationDetail$InvestigationId": "

The investigation ID of the investigation report.

", + "ListIndicatorsRequest$InvestigationId": "

The investigation ID of the investigation report.

", + "ListIndicatorsResponse$InvestigationId": "

The investigation ID of the investigation report.

", + "StartInvestigationResponse$InvestigationId": "

The investigation ID of the investigation report.

", + "UpdateInvestigationStateRequest$InvestigationId": "

The investigation ID of the investigation report.

" + } + }, "InvitationType": { "base": null, "refs": { "MemberDetail$InvitationType": "

The type of behavior graph membership.

For an organization account in the organization behavior graph, the type is ORGANIZATION.

For an account that was invited to a behavior graph, the type is INVITATION.

" } }, + "IpAddress": { + "base": null, + "refs": { + "FlaggedIpAddressDetail$IpAddress": "

IP address of the suspicious entity.

", + "ImpossibleTravelDetail$StartingIpAddress": "

IP address where the resource was first used in the impossible travel

", + "ImpossibleTravelDetail$EndingIpAddress": "

IP address where the resource was last used in the impossible travel.

", + "NewGeolocationDetail$IpAddress": "

IP address using which the resource was accessed.

", + "RelatedFindingDetail$IpAddress": "

The IP address of the finding.

", + "TTPsObservedDetail$IpAddress": "

The IP address where the TTP was observed.

" + } + }, + "IsNewForEntireAccount": { + "base": null, + "refs": { + "NewAsoDetail$IsNewForEntireAccount": "

Checks if the ASO is for new for the entire account.

", + "NewGeolocationDetail$IsNewForEntireAccount": "

Checks if the gelocation is new for the entire account.

", + "NewUserAgentDetail$IsNewForEntireAccount": "

Checks if the user agent is new for the entire account.

" + } + }, "LastIngestStateChangeDates": { "base": null, "refs": { @@ -377,6 +558,26 @@ "refs": { } }, + "ListIndicatorsRequest": { + "base": null, + "refs": { + } + }, + "ListIndicatorsResponse": { + "base": null, + "refs": { + } + }, + "ListInvestigationsRequest": { + "base": null, + "refs": { + } + }, + "ListInvestigationsResponse": { + "base": null, + "refs": { + } + }, "ListInvitationsRequest": { "base": null, "refs": { @@ -417,6 +618,21 @@ "refs": { } }, + "Location": { + "base": null, + "refs": { + "ImpossibleTravelDetail$StartingLocation": "

Location where the resource was first used in the impossible travel

", + "ImpossibleTravelDetail$EndingLocation": "

Location where the resource was last used in the impossible travel.

", + "NewGeolocationDetail$Location": "

Location where the resource was accessed.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListIndicatorsRequest$MaxResults": "

List the maximum number of indicators in a page.

", + "ListInvestigationsRequest$MaxResults": "

List the maximum number of investigations in a page.

" + } + }, "MemberDetail": { "base": "

Details about a member account in a behavior graph.

", "refs": { @@ -467,6 +683,24 @@ "BatchGetMembershipDatasourcesResponse$MembershipDatasources": "

Details on the data source package history for an member of the behavior graph.

" } }, + "NewAsoDetail": { + "base": "

Details new Autonomous System Organizations (ASOs) used either at the resource or account level.

", + "refs": { + "IndicatorDetail$NewAsoDetail": "

Contains details about the new Autonomous System Organization (ASO).

" + } + }, + "NewGeolocationDetail": { + "base": "

Details new geolocations used either at the resource or account level. For example, lists an observed geolocation that is an infrequent or unused location based on previous user activity.

", + "refs": { + "IndicatorDetail$NewGeolocationDetail": "

Contains details about the new geographic location.

" + } + }, + "NewUserAgentDetail": { + "base": "

Details new user agents used either at the resource or account level.

", + "refs": { + "IndicatorDetail$NewUserAgentDetail": "

Contains details about the new user agent.

" + } + }, "PaginationToken": { "base": null, "refs": { @@ -488,11 +722,35 @@ "MemberDetail$PercentOfGraphUtilization": "

The member account data volume as a percentage of the maximum allowed data volume. 0 indicates 0 percent, and 100 indicates 100 percent.

Note that this is not the percentage of the behavior graph data volume.

For example, the data volume for the behavior graph is 80 GB per day. The maximum data volume is 160 GB per day. If the data volume for the member account is 40 GB per day, then PercentOfGraphUtilization is 25. It represents 25% of the maximum allowed data volume.

" } }, + "Procedure": { + "base": null, + "refs": { + "TTPsObservedDetail$Procedure": "

The procedure used, identified by the investigation.

" + } + }, + "Reason": { + "base": null, + "refs": { + "FlaggedIpAddressDetail$Reason": "

Details the reason the IP address was flagged as suspicious.

" + } + }, "RejectInvitationRequest": { "base": null, "refs": { } }, + "RelatedFindingDetail": { + "base": "

Details related activities associated with a potential security event. Lists all distinct categories of evidence that are connected to the resource or the finding group.

", + "refs": { + "IndicatorDetail$RelatedFindingDetail": "

Contains details about related findings.

" + } + }, + "RelatedFindingGroupDetail": { + "base": "

Details multiple activities as they related to a potential security event. Detective uses graph analysis technique that infers relationships between findings and entities, and groups them together as a finding group.

", + "refs": { + "IndicatorDetail$RelatedFindingGroupDetail": "

Contains details about related finding groups.

" + } + }, "Resource": { "base": null, "refs": { @@ -515,11 +773,76 @@ "refs": { } }, + "Severity": { + "base": null, + "refs": { + "GetInvestigationResponse$Severity": "

Severity based on the likelihood and impact of the indicators of compromise discovered in the investigation.

", + "InvestigationDetail$Severity": "

Severity based on the likelihood and impact of the indicators of compromise discovered in the investigation.

" + } + }, + "SortCriteria": { + "base": "

Details about the criteria used for sorting investigations.

", + "refs": { + "ListInvestigationsRequest$SortCriteria": "

Sorts the investigation results based on a criteria.

" + } + }, + "SortOrder": { + "base": null, + "refs": { + "SortCriteria$SortOrder": "

The order by which the sorted findings are displayed.

" + } + }, + "StartInvestigationRequest": { + "base": null, + "refs": { + } + }, + "StartInvestigationResponse": { + "base": null, + "refs": { + } + }, "StartMonitoringMemberRequest": { "base": null, "refs": { } }, + "State": { + "base": null, + "refs": { + "GetInvestigationResponse$State": "

The current state of the investigation. An archived investigation indicates you have completed reviewing the investigation.

", + "InvestigationDetail$State": "

The current state of the investigation. An archived investigation indicates you have completed reviewing the investigation.

", + "UpdateInvestigationStateRequest$State": "

The current state of the investigation. An archived investigation indicates you have completed reviewing the investigation.

" + } + }, + "Status": { + "base": null, + "refs": { + "GetInvestigationResponse$Status": "

Status based on the completion status of the investigation.

", + "InvestigationDetail$Status": "

Status based on the completion status of the investigation.

" + } + }, + "StringFilter": { + "base": "

A string for filtering Detective investigations.

", + "refs": { + "FilterCriteria$Severity": "

Filter the investigation results based on the severity.

", + "FilterCriteria$Status": "

Filter the investigation results based on the status.

", + "FilterCriteria$State": "

Filter the investigation results based on the state.

", + "FilterCriteria$EntityArn": "

Filter the investigation results based on the Amazon Resource Name (ARN) of the entity.

" + } + }, + "TTPsObservedDetail": { + "base": "

Details tactics, techniques, and procedures (TTPs) used in a potential security event. Tactics are based on MITRE ATT&CK Matrix for Enterprise.

", + "refs": { + "IndicatorDetail$TTPsObservedDetail": "

Details about the indicator of compromise.

" + } + }, + "Tactic": { + "base": null, + "refs": { + "TTPsObservedDetail$Tactic": "

The tactic used, identified by the investigation.

" + } + }, "TagKey": { "base": null, "refs": { @@ -557,16 +880,30 @@ "TagMap$value": null } }, + "Technique": { + "base": null, + "refs": { + "TTPsObservedDetail$Technique": "

The technique used, identified by the investigation.

" + } + }, "Timestamp": { "base": null, "refs": { "Administrator$DelegationTime": "

The date and time when the Detective administrator account was enabled. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", "DatasourcePackageUsageInfo$VolumeUsageUpdateTime": "

The data and time when the member account data volume was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", + "DateFilter$StartInclusive": "

A timestamp representing the start of the time period from when data is filtered, including the start date.

", + "DateFilter$EndInclusive": "

A timestamp representing the end date of the time period until when data is filtered , including the end date.

", + "GetInvestigationResponse$CreatedTime": "

The UTC time stamp of the creation time of the investigation report.

", + "GetInvestigationResponse$ScopeStartTime": "

The start date and time for the scope time set to generate the investigation report.

", + "GetInvestigationResponse$ScopeEndTime": "

The data and time when the investigation began. The value is an UTC ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", "Graph$CreatedTime": "

The date and time that the behavior graph was created. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", + "InvestigationDetail$CreatedTime": "

The UTC time stamp of the creation time of the investigation report.

", "MemberDetail$InvitedTime": "

For invited accounts, the date and time that Detective sent the invitation to the account. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", "MemberDetail$UpdatedTime": "

The date and time that the member account was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", "MemberDetail$VolumeUsageUpdatedTime": "

The data and time when the member account data volume was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", "MemberDetail$PercentOfGraphUtilizationUpdatedTime": "

The date and time when the graph utilization percentage was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", + "StartInvestigationRequest$ScopeStartTime": "

The data and time when the investigation began. The value is an UTC ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", + "StartInvestigationRequest$ScopeEndTime": "

The data and time when the investigation began. The value is an UTC ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

", "TimestampForCollection$Timestamp": "

The data and time when data collection began for a source package. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

" } }, @@ -581,6 +918,12 @@ "refs": { } }, + "Type": { + "base": null, + "refs": { + "RelatedFindingDetail$Type": "

The type of finding.

" + } + }, "UnprocessedAccount": { "base": "

A member account that was included in a request but for which the request could not be processed.

", "refs": { @@ -630,16 +973,33 @@ "refs": { } }, + "UpdateInvestigationStateRequest": { + "base": null, + "refs": { + } + }, "UpdateOrganizationConfigurationRequest": { "base": null, "refs": { } }, + "UserAgent": { + "base": null, + "refs": { + "NewUserAgentDetail$UserAgent": "

New user agent which accessed the resource.

" + } + }, "ValidationException": { "base": "

The request parameters are invalid.

", "refs": { } }, + "Value": { + "base": null, + "refs": { + "StringFilter$Value": "

The string filter value.

" + } + }, "VolumeUsageByDatasourcePackage": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/detective/2018-10-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/detective/2018-10-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/detective/2018-10-26/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/detective/2018-10-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -28,6 +28,21 @@ {"shape":"HomeRegionNotSetException"} ] }, + "BatchDeleteAgents":{ + "name":"BatchDeleteAgents", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchDeleteAgentsRequest"}, + "output":{"shape":"BatchDeleteAgentsResponse"}, + "errors":[ + {"shape":"AuthorizationErrorException"}, + {"shape":"InvalidParameterException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ServerInternalErrorException"} + ] + }, "BatchDeleteImportData":{ "name":"BatchDeleteImportData", "http":{ @@ -126,6 +141,21 @@ {"shape":"HomeRegionNotSetException"} ] }, + "DescribeBatchDeleteConfigurationTask":{ + "name":"DescribeBatchDeleteConfigurationTask", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeBatchDeleteConfigurationTaskRequest"}, + "output":{"shape":"DescribeBatchDeleteConfigurationTaskResponse"}, + "errors":[ + {"shape":"AuthorizationErrorException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ServerInternalErrorException"}, + {"shape":"HomeRegionNotSetException"} + ] + }, "DescribeConfigurations":{ "name":"DescribeConfigurations", "http":{ @@ -309,6 +339,23 @@ {"shape":"HomeRegionNotSetException"} ] }, + "StartBatchDeleteConfigurationTask":{ + "name":"StartBatchDeleteConfigurationTask", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartBatchDeleteConfigurationTaskRequest"}, + "output":{"shape":"StartBatchDeleteConfigurationTaskResponse"}, + "errors":[ + {"shape":"LimitExceededException"}, + {"shape":"AuthorizationErrorException"}, + {"shape":"ServerInternalErrorException"}, + {"shape":"HomeRegionNotSetException"}, + {"shape":"OperationNotPermittedException"}, + {"shape":"InvalidParameterValueException"} + ] + }, "StartContinuousExport":{ "name":"StartContinuousExport", "http":{ @@ -537,6 +584,60 @@ }, "exception":true }, + "BatchDeleteAgentError":{ + "type":"structure", + "required":[ + "agentId", + "errorMessage", + "errorCode" + ], + "members":{ + "agentId":{"shape":"AgentId"}, + "errorMessage":{"shape":"String"}, + "errorCode":{"shape":"DeleteAgentErrorCode"} + } + }, + "BatchDeleteAgentErrors":{ + "type":"list", + "member":{"shape":"BatchDeleteAgentError"} + }, + "BatchDeleteAgentsRequest":{ + "type":"structure", + "required":["deleteAgents"], + "members":{ + "deleteAgents":{"shape":"DeleteAgents"} + } + }, + "BatchDeleteAgentsResponse":{ + "type":"structure", + "members":{ + "errors":{"shape":"BatchDeleteAgentErrors"} + } + }, + "BatchDeleteConfigurationTask":{ + "type":"structure", + "members":{ + "taskId":{"shape":"UUID"}, + "status":{"shape":"BatchDeleteConfigurationTaskStatus"}, + "startTime":{"shape":"TimeStamp"}, + "endTime":{"shape":"TimeStamp"}, + "configurationType":{"shape":"DeletionConfigurationItemType"}, + "requestedConfigurations":{"shape":"ConfigurationIdList"}, + "deletedConfigurations":{"shape":"ConfigurationIdList"}, + "failedConfigurations":{"shape":"FailedConfigurationList"}, + "deletionWarnings":{"shape":"DeletionWarningsList"} + } + }, + "BatchDeleteConfigurationTaskStatus":{ + "type":"string", + "enum":[ + "INITIALIZING", + "VALIDATING", + "DELETING", + "COMPLETED", + "FAILED" + ] + }, "BatchDeleteImportDataError":{ "type":"structure", "members":{ @@ -562,7 +663,8 @@ "type":"structure", "required":["importTaskIds"], "members":{ - "importTaskIds":{"shape":"ToDeleteIdentifierList"} + "importTaskIds":{"shape":"ToDeleteIdentifierList"}, + "deleteHistory":{"shape":"Boolean"} } }, "BatchDeleteImportDataResponse":{ @@ -796,6 +898,28 @@ "max":252, "min":1 }, + "DeleteAgent":{ + "type":"structure", + "required":["agentId"], + "members":{ + "agentId":{"shape":"AgentId"}, + "force":{"shape":"Boolean"} + } + }, + "DeleteAgentErrorCode":{ + "type":"string", + "enum":[ + "NOT_FOUND", + "INTERNAL_SERVER_ERROR", + "AGENT_IN_USE" + ] + }, + "DeleteAgents":{ + "type":"list", + "member":{"shape":"DeleteAgent"}, + "max":50, + "min":1 + }, "DeleteApplicationsRequest":{ "type":"structure", "required":["configurationIds"], @@ -821,6 +945,22 @@ "members":{ } }, + "DeletionConfigurationItemType":{ + "type":"string", + "enum":["SERVER"] + }, + "DeletionWarning":{ + "type":"structure", + "members":{ + "configurationId":{"shape":"ConfigurationId"}, + "warningCode":{"shape":"WarningCode"}, + "warningText":{"shape":"WarningText"} + } + }, + "DeletionWarningsList":{ + "type":"list", + "member":{"shape":"DeletionWarning"} + }, "DescribeAgentsRequest":{ "type":"structure", "members":{ @@ -837,6 +977,19 @@ "nextToken":{"shape":"NextToken"} } }, + "DescribeBatchDeleteConfigurationTaskRequest":{ + "type":"structure", + "required":["taskId"], + "members":{ + "taskId":{"shape":"UUID"} + } + }, + "DescribeBatchDeleteConfigurationTaskResponse":{ + "type":"structure", + "members":{ + "task":{"shape":"BatchDeleteConfigurationTask"} + } + }, "DescribeConfigurationsAttribute":{ "type":"map", "key":{"shape":"String"}, @@ -985,6 +1138,8 @@ "reservedInstanceOptions":{"shape":"ReservedInstanceOptions"} } }, + "ErrorMessage":{"type":"string"}, + "ErrorStatusCode":{"type":"integer"}, "ExcludedInstanceTypes":{ "type":"list", "member":{"shape":"EC2InstanceType"} @@ -1065,6 +1220,18 @@ "type":"list", "member":{"shape":"ExportInfo"} }, + "FailedConfiguration":{ + "type":"structure", + "members":{ + "configurationId":{"shape":"ConfigurationId"}, + "errorStatusCode":{"shape":"ErrorStatusCode"}, + "errorMessage":{"shape":"ErrorMessage"} + } + }, + "FailedConfigurationList":{ + "type":"list", + "member":{"shape":"FailedConfiguration"} + }, "Filter":{ "type":"structure", "required":[ @@ -1184,7 +1351,7 @@ "ImportTaskIdentifier":{ "type":"string", "max":200, - "pattern":"\\S*" + "pattern":"^import-task-[a-fA-F0-9]{32}$" }, "ImportTaskList":{ "type":"list", @@ -1217,6 +1384,13 @@ }, "exception":true }, + "LimitExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"Message"} + }, + "exception":true + }, "ListConfigurationsRequest":{ "type":"structure", "required":["configurationType"], @@ -1358,6 +1532,23 @@ "exception":true, "fault":true }, + "StartBatchDeleteConfigurationTaskRequest":{ + "type":"structure", + "required":[ + "configurationType", + "configurationIds" + ], + "members":{ + "configurationType":{"shape":"DeletionConfigurationItemType"}, + "configurationIds":{"shape":"ConfigurationIdList"} + } + }, + "StartBatchDeleteConfigurationTaskResponse":{ + "type":"structure", + "members":{ + "taskId":{"shape":"UUID"} + } + }, "StartContinuousExportRequest":{ "type":"structure", "members":{ @@ -1514,6 +1705,10 @@ "max":10, "min":1 }, + "UUID":{ + "type":"string", + "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" + }, "UpdateApplicationRequest":{ "type":"structure", "required":["configurationId"], @@ -1550,6 +1745,8 @@ "min":1, "pattern":"[a-z]{2}-[a-z\\-]+-[0-9]+" }, + "WarningCode":{"type":"integer"}, + "WarningText":{"type":"string"}, "orderString":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,12 +3,14 @@ "service": "Amazon Web Services Application Discovery Service

Amazon Web Services Application Discovery Service (Application Discovery Service) helps you plan application migration projects. It automatically identifies servers, virtual machines (VMs), and network dependencies in your on-premises data centers. For more information, see the Amazon Web Services Application Discovery Service FAQ.

Application Discovery Service offers three ways of performing discovery and collecting data about your on-premises servers:

  • Agentless discovery using Amazon Web Services Application Discovery Service Agentless Collector (Agentless Collector), which doesn't require you to install an agent on each host.

    • Agentless Collector gathers server information regardless of the operating systems, which minimizes the time required for initial on-premises infrastructure assessment.

    • Agentless Collector doesn't collect information about network dependencies, only agent-based discovery collects that information.

  • Agent-based discovery using the Amazon Web Services Application Discovery Agent (Application Discovery Agent) collects a richer set of data than agentless discovery, which you install on one or more hosts in your data center.

    • The agent captures infrastructure and application information, including an inventory of running processes, system performance information, resource utilization, and network dependencies.

    • The information collected by agents is secured at rest and in transit to the Application Discovery Service database in the Amazon Web Services cloud. For more information, see Amazon Web Services Application Discovery Agent.

  • Amazon Web Services Partner Network (APN) solutions integrate with Application Discovery Service, enabling you to import details of your on-premises environment directly into Amazon Web Services Migration Hub (Migration Hub) without using Agentless Collector or Application Discovery Agent.

    • Third-party application discovery tools can query Amazon Web Services Application Discovery Service, and they can write to the Application Discovery Service database using the public API.

    • In this way, you can import data into Migration Hub and view it, so that you can associate applications with servers and track migrations.

Working With This Guide

This API reference provides descriptions, syntax, and usage examples for each of the actions and data types for Application Discovery Service. The topic for each action shows the API request parameters and the response. Alternatively, you can use one of the Amazon Web Services SDKs to access an API that is tailored to the programming language or platform that you're using. For more information, see Amazon Web Services SDKs.

  • Remember that you must set your Migration Hub home Region before you call any of these APIs.

  • You must make API calls for write actions (create, notify, associate, disassociate, import, or put) while in your home Region, or a HomeRegionNotSetException error is returned.

  • API calls for read actions (list, describe, stop, and delete) are permitted outside of your home Region.

  • Although it is unlikely, the Migration Hub home Region could change. If you call APIs outside the home Region, an InvalidInputException is returned.

  • You must call GetHomeRegion to obtain the latest Migration Hub home Region.

This guide is intended for use with the Amazon Web Services Application Discovery Service User Guide.

All data is handled according to the Amazon Web Services Privacy Policy. You can operate Application Discovery Service offline to inspect collected data before it is shared with the service.

", "operations": { "AssociateConfigurationItemsToApplication": "

Associates one or more configuration items with an application.

", + "BatchDeleteAgents": "

Deletes one or more agents or collectors as specified by ID. Deleting an agent or collector does not delete the previously discovered data. To delete the data collected, use StartBatchDeleteConfigurationTask.

", "BatchDeleteImportData": "

Deletes one or more import tasks, each identified by their import ID. Each import task has a number of records that can identify servers or applications.

Amazon Web Services Application Discovery Service has built-in matching logic that will identify when discovered servers match existing entries that you've previously discovered, the information for the already-existing discovered server is updated. When you delete an import task that contains records that were used to match, the information in those matched records that comes from the deleted records will also be deleted.

", "CreateApplication": "

Creates an application with the given name and description.

", "CreateTags": "

Creates one or more tags for configuration items. Tags are metadata that help you categorize IT assets. This API accepts a list of multiple configuration items.

Do not store sensitive information (like personal data) in tags.

", "DeleteApplications": "

Deletes a list of applications and their associations with configuration items.

", "DeleteTags": "

Deletes the association between configuration items and one or more tags. This API accepts a list of multiple configuration items.

", "DescribeAgents": "

Lists agents or collectors as specified by ID or other filters. All agents/collectors associated with your user can be listed if you call DescribeAgents as is without passing any parameters.

", + "DescribeBatchDeleteConfigurationTask": "

Takes a unique deletion task identifier as input and returns metadata about a configuration deletion task.

", "DescribeConfigurations": "

Retrieves attributes for a list of configuration item IDs.

All of the supplied IDs must be for the same asset type from one of the following:

  • server

  • application

  • process

  • connection

Output fields are specific to the asset type specified. For example, the output for a server configuration item includes a list of attributes about the server, such as host name, operating system, number of network cards, etc.

For a complete list of outputs for each asset type, see Using the DescribeConfigurations Action in the Amazon Web Services Application Discovery Service User Guide.

", "DescribeContinuousExports": "

Lists exports as specified by ID. All continuous exports associated with your user can be listed if you call DescribeContinuousExports as is without passing any parameters.

", "DescribeExportConfigurations": "

DescribeExportConfigurations is deprecated. Use DescribeExportTasks, instead.

", @@ -20,6 +22,7 @@ "GetDiscoverySummary": "

Retrieves a short summary of discovered assets.

This API operation takes no request parameters and is called as is at the command prompt as shown in the example.

", "ListConfigurations": "

Retrieves a list of configuration items as specified by the value passed to the required parameter configurationType. Optional filtering may be applied to refine search results.

", "ListServerNeighbors": "

Retrieves a list of servers that are one network hop away from a specified server.

", + "StartBatchDeleteConfigurationTask": "

Takes a list of configurationId as input and starts an asynchronous deletion task to remove the configurationItems. Returns a unique deletion task identifier.

", "StartContinuousExport": "

Start the continuous flow of agent's discovered data into Amazon Athena.

", "StartDataCollectionByAgentIds": "

Instructs the specified agents to start collecting data.

", "StartExportTask": "

Begins the export of a discovered data report to an Amazon S3 bucket managed by Amazon Web Services.

Exports might provide an estimate of fees and savings based on certain information that you provide. Fee estimates do not include any taxes that might apply. Your actual fees and savings depend on a variety of factors, including your actual usage of Amazon Web Services services, which might vary from the estimates provided in this report.

If you do not specify preferences or agentIds in the filter, a summary of all servers, applications, tags, and performance is generated. This data is an aggregation of all server data collected through on-premises tooling, file import, application grouping and applying tags.

If you specify agentIds in a filter, the task exports up to 72 hours of detailed data collected by the identified Application Discovery Agent, including network, process, and performance details. A time range for exported agent data may be set by using startTime and endTime. Export of detailed agent data is limited to five concurrently running exports. Export of detailed agent data is limited to two exports per day.

If you enable ec2RecommendationsPreferences in preferences , an Amazon EC2 instance matching the characteristics of each server in Application Discovery Service is generated. Changing the attributes of the ec2RecommendationsPreferences changes the criteria of the recommendation.

", @@ -46,7 +49,9 @@ "base": null, "refs": { "AgentIds$member": null, - "AgentInfo$agentId": "

The agent or collector ID.

" + "AgentInfo$agentId": "

The agent or collector ID.

", + "BatchDeleteAgentError$agentId": "

The ID of the agent or data collector to delete.

", + "DeleteAgent$agentId": "

The ID of the agent or data collector to delete.

" } }, "AgentIds": { @@ -131,6 +136,40 @@ "refs": { } }, + "BatchDeleteAgentError": { + "base": "

An object representing the agent or data collector that failed to delete, each containing agentId, errorMessage, and errorCode.

", + "refs": { + "BatchDeleteAgentErrors$member": null + } + }, + "BatchDeleteAgentErrors": { + "base": null, + "refs": { + "BatchDeleteAgentsResponse$errors": "

A list of agent IDs that failed to delete during the deletion task, each paired with an error message.

" + } + }, + "BatchDeleteAgentsRequest": { + "base": null, + "refs": { + } + }, + "BatchDeleteAgentsResponse": { + "base": null, + "refs": { + } + }, + "BatchDeleteConfigurationTask": { + "base": "

A metadata object that represents the deletion task being executed.

", + "refs": { + "DescribeBatchDeleteConfigurationTaskResponse$task": "

The BatchDeleteConfigurationTask that represents the deletion task being executed.

" + } + }, + "BatchDeleteConfigurationTaskStatus": { + "base": null, + "refs": { + "BatchDeleteConfigurationTask$status": "

The current execution status of the deletion task. Valid status are: INITIALIZING | VALIDATING | DELETING | COMPLETED | FAILED.

" + } + }, "BatchDeleteImportDataError": { "base": "

Error messages returned for each import task that you deleted as a response for this command.

", "refs": { @@ -169,6 +208,8 @@ "base": null, "refs": { "AgentConfigurationStatus$operationSucceeded": "

Information about the status of the StartDataCollection and StopDataCollection operations. The system has recorded the data collection operation. The agent receives this command the next time it polls for a new command.

", + "BatchDeleteImportDataRequest$deleteHistory": "

Set to true to remove the deleted import task from DescribeImportTasks.

", + "DeleteAgent$force": "

Optional flag used to force delete an agent or data collector. It is needed to delete any agent in HEALTHY/UNHEALTHY/RUNNING status. Note that deleting an agent that is actively reporting health causes it to be re-registered with a different agent ID after data collector re-connects with Amazon Web Services.

", "ExportInfo$isTruncated": "

If true, the export of agent information exceeded the size limit for a single export and the exported data is incomplete for the requested time range. To address this, select a smaller time range for the export by using startDate and endDate.

", "ListServerNeighborsRequest$portInformationNeeded": "

Flag to indicate if port and protocol information is needed as part of the response.

" } @@ -204,6 +245,8 @@ "refs": { "ConfigurationIdList$member": null, "ConfigurationTag$configurationId": "

The configuration ID for the item to tag. You can specify a list of keys and values.

", + "DeletionWarning$configurationId": "

The unique identifier of the configuration that produced a warning.

", + "FailedConfiguration$configurationId": "

The unique identifier of the configuration the failed to delete.

", "ListServerNeighborsRequest$configurationId": "

Configuration ID of the server for which neighbors are being listed.

", "NeighborConnectionDetail$sourceServerId": "

The ID of the server that opened the network connection.

", "NeighborConnectionDetail$destinationServerId": "

The ID of the server that accepted the network connection.

" @@ -213,11 +256,14 @@ "base": null, "refs": { "AssociateConfigurationItemsToApplicationRequest$configurationIds": "

The ID of each configuration item to be associated with an application.

", + "BatchDeleteConfigurationTask$requestedConfigurations": "

The list of configuration IDs that were originally requested to be deleted by the deletion task.

", + "BatchDeleteConfigurationTask$deletedConfigurations": "

The list of configuration IDs that were successfully deleted by the deletion task.

", "CreateTagsRequest$configurationIds": "

A list of configuration items that you want to tag.

", "DeleteTagsRequest$configurationIds": "

A list of configuration items with tags that you want to delete.

", "DescribeConfigurationsRequest$configurationIds": "

One or more configuration IDs.

", "DisassociateConfigurationItemsFromApplicationRequest$configurationIds": "

Configuration ID of each item to be disassociated from an application.

", - "ListServerNeighborsRequest$neighborConfigurationIds": "

List of configuration IDs to test for one-hop-away.

" + "ListServerNeighborsRequest$neighborConfigurationIds": "

List of configuration IDs to test for one-hop-away.

", + "StartBatchDeleteConfigurationTaskRequest$configurationIds": "

The list of configuration IDs that will be deleted by the task.

" } }, "ConfigurationItemType": { @@ -265,7 +311,7 @@ } }, "ConflictErrorException": { - "base": "

", + "base": "

Conflict error.

", "refs": { } }, @@ -350,6 +396,24 @@ "SchemaStorageConfig$key": null } }, + "DeleteAgent": { + "base": "

An object representing the agent or data collector to be deleted along with the optional configurations for error handling.

", + "refs": { + "DeleteAgents$member": null + } + }, + "DeleteAgentErrorCode": { + "base": null, + "refs": { + "BatchDeleteAgentError$errorCode": "

The type of error that occurred for the delete failed agent. Valid status are: AGENT_IN_USE | NOT_FOUND | INTERNAL_SERVER_ERROR.

" + } + }, + "DeleteAgents": { + "base": null, + "refs": { + "BatchDeleteAgentsRequest$deleteAgents": "

The list of agents to delete.

" + } + }, "DeleteApplicationsRequest": { "base": null, "refs": { @@ -370,6 +434,25 @@ "refs": { } }, + "DeletionConfigurationItemType": { + "base": null, + "refs": { + "BatchDeleteConfigurationTask$configurationType": "

The type of configuration item to delete. Supported types are: SERVER.

", + "StartBatchDeleteConfigurationTaskRequest$configurationType": "

The type of configuration item to delete. Supported types are: SERVER.

" + } + }, + "DeletionWarning": { + "base": "

A configuration ID paired with a warning message.

", + "refs": { + "DeletionWarningsList$member": null + } + }, + "DeletionWarningsList": { + "base": null, + "refs": { + "BatchDeleteConfigurationTask$deletionWarnings": "

A list of configuration IDs that produced warnings regarding their deletion, paired with a warning message.

" + } + }, "DescribeAgentsRequest": { "base": null, "refs": { @@ -380,6 +463,16 @@ "refs": { } }, + "DescribeBatchDeleteConfigurationTaskRequest": { + "base": null, + "refs": { + } + }, + "DescribeBatchDeleteConfigurationTaskResponse": { + "base": null, + "refs": { + } + }, "DescribeConfigurationsAttribute": { "base": null, "refs": { @@ -492,6 +585,18 @@ "ExportPreferences$ec2RecommendationsPreferences": "

If enabled, exported data includes EC2 instance type matches for on-premises servers discovered through Amazon Web Services Application Discovery Service.

" } }, + "ErrorMessage": { + "base": null, + "refs": { + "FailedConfiguration$errorMessage": "

A descriptive message indicating why the associated configuration failed to delete.

" + } + }, + "ErrorStatusCode": { + "base": null, + "refs": { + "FailedConfiguration$errorStatusCode": "

The integer error code associated with the error message.

" + } + }, "ExcludedInstanceTypes": { "base": null, "refs": { @@ -578,6 +683,18 @@ "DescribeExportTasksResponse$exportsInfo": "

Contains one or more sets of export request details. When the status of a request is SUCCEEDED, the response includes a URL for an Amazon S3 bucket where you can view the data in a CSV file.

" } }, + "FailedConfiguration": { + "base": "

A configuration ID paired with an error message.

", + "refs": { + "FailedConfigurationList$member": null + } + }, + "FailedConfigurationList": { + "base": null, + "refs": { + "BatchDeleteConfigurationTask$failedConfigurations": "

A list of configuration IDs that failed to delete during the deletion task, each paired with an error message.

" + } + }, "Filter": { "base": "

A filter that can use conditional operators.

For more information about filters, see Querying Discovered Configuration Items in the Amazon Web Services Application Discovery Service User Guide.

", "refs": { @@ -745,6 +862,11 @@ "refs": { } }, + "LimitExceededException": { + "base": "

The limit of 200 configuration IDs per request has been exceeded.

", + "refs": { + } + }, "ListConfigurationsRequest": { "base": null, "refs": { @@ -784,6 +906,7 @@ "HomeRegionNotSetException$message": null, "InvalidParameterException$message": null, "InvalidParameterValueException$message": null, + "LimitExceededException$message": null, "OperationNotPermittedException$message": null, "ResourceInUseException$message": null, "ResourceNotFoundException$message": null, @@ -897,6 +1020,16 @@ "refs": { } }, + "StartBatchDeleteConfigurationTaskRequest": { + "base": null, + "refs": { + } + }, + "StartBatchDeleteConfigurationTaskResponse": { + "base": null, + "refs": { + } + }, "StartContinuousExportRequest": { "base": null, "refs": { @@ -971,6 +1104,7 @@ "AgentInfo$registeredTime": "

Agent's first registration timestamp in UTC.

", "AgentNetworkInfo$ipAddress": "

The IP address for the host where the agent/collector resides.

", "AgentNetworkInfo$macAddress": "

The MAC address for the host where the agent/collector resides.

", + "BatchDeleteAgentError$errorMessage": "

The description of the error that occurred for the delete failed agent.

", "Configuration$key": null, "Configuration$value": null, "CreateApplicationResponse$configurationId": "

Configuration ID of an application to be created.

", @@ -1043,6 +1177,8 @@ "TimeStamp": { "base": null, "refs": { + "BatchDeleteConfigurationTask$startTime": "

An epoch seconds timestamp (UTC) of when the deletion task was started.

", + "BatchDeleteConfigurationTask$endTime": "

An epoch seconds timestamp (UTC) of when the deletion task was completed or failed.

", "ConfigurationTag$timeOfCreation": "

The time the configuration tag was created in Coordinated Universal Time (UTC).

", "ContinuousExportDescription$startTime": "

The timestamp representing when the continuous export was started.

", "ContinuousExportDescription$stopTime": "

The timestamp that represents when this continuous export was stopped.

", @@ -1064,6 +1200,14 @@ "BatchDeleteImportDataRequest$importTaskIds": "

The IDs for the import tasks that you want to delete.

" } }, + "UUID": { + "base": null, + "refs": { + "BatchDeleteConfigurationTask$taskId": "

The deletion task's unique identifier.

", + "DescribeBatchDeleteConfigurationTaskRequest$taskId": "

The ID of the task to delete.

", + "StartBatchDeleteConfigurationTaskResponse$taskId": "

The unique identifier associated with the newly started deletion task.

" + } + }, "UpdateApplicationRequest": { "base": null, "refs": { @@ -1099,6 +1243,18 @@ "Ec2RecommendationsExportPreferences$preferredRegion": "

The target Amazon Web Services Region for the recommendations. You can use any of the Region codes available for the chosen service, as listed in Amazon Web Services service endpoints in the Amazon Web Services General Reference.

" } }, + "WarningCode": { + "base": null, + "refs": { + "DeletionWarning$warningCode": "

The integer warning code associated with the warning message.

" + } + }, + "WarningText": { + "base": null, + "refs": { + "DeletionWarning$warningText": "

A descriptive message of the warning the associated configuration ID produced.

" + } + }, "orderString": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/discovery/2015-11-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/discovery/2015-11-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,14 +1,46 @@ { "pagination": { + "DescribeAgents": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "agentsInfo" + }, "DescribeContinuousExports": { "input_token": "nextToken", "output_token": "nextToken", - "limit_key": "maxResults" + "limit_key": "maxResults", + "result_key": "descriptions" + }, + "DescribeExportConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "exportsInfo" + }, + "DescribeExportTasks": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "exportsInfo" }, "DescribeImportTasks": { "input_token": "nextToken", "output_token": "nextToken", - "limit_key": "maxResults" + "limit_key": "maxResults", + "result_key": "tasks" + }, + "DescribeTags": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "tags" + }, + "ListConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "configurations" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dlm/2018-01-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dlm/2018-01-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dlm/2018-01-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dlm/2018-01-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -31,7 +31,7 @@ "name":"DeleteLifecyclePolicy", "http":{ "method":"DELETE", - "requestUri":"/policies/{policyId}/" + "requestUri":"/policies/{policyId}" }, "input":{"shape":"DeleteLifecyclePolicyRequest"}, "output":{"shape":"DeleteLifecyclePolicyResponse"}, @@ -60,7 +60,7 @@ "name":"GetLifecyclePolicy", "http":{ "method":"GET", - "requestUri":"/policies/{policyId}/" + "requestUri":"/policies/{policyId}" }, "input":{"shape":"GetLifecyclePolicyRequest"}, "output":{"shape":"GetLifecyclePolicyResponse"}, @@ -197,20 +197,30 @@ "max":1000, "min":1 }, + "CreateInterval":{ + "type":"integer", + "min":1 + }, "CreateLifecyclePolicyRequest":{ "type":"structure", "required":[ "ExecutionRoleArn", "Description", - "State", - "PolicyDetails" + "State" ], "members":{ "ExecutionRoleArn":{"shape":"ExecutionRoleArn"}, "Description":{"shape":"PolicyDescription"}, "State":{"shape":"SettablePolicyStateValues"}, "PolicyDetails":{"shape":"PolicyDetails"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "DefaultPolicy":{"shape":"DefaultPolicyTypeValues"}, + "CreateInterval":{"shape":"CreateInterval"}, + "RetainInterval":{"shape":"RetainInterval"}, + "CopyTags":{"shape":"CopyTagsNullable"}, + "ExtendDeletion":{"shape":"ExtendDeletion"}, + "CrossRegionCopyTargets":{"shape":"CrossRegionCopyTargetList"}, + "Exclusions":{"shape":"Exclusions"} } }, "CreateLifecyclePolicyResponse":{ @@ -226,7 +236,8 @@ "Interval":{"shape":"Interval"}, "IntervalUnit":{"shape":"IntervalUnitValues"}, "Times":{"shape":"TimesList"}, - "CronExpression":{"shape":"CronExpression"} + "CronExpression":{"shape":"CronExpression"}, + "Scripts":{"shape":"ScriptsList"} } }, "CronExpression":{ @@ -286,6 +297,34 @@ "max":3, "min":0 }, + "CrossRegionCopyTarget":{ + "type":"structure", + "members":{ + "TargetRegion":{"shape":"TargetRegion"} + } + }, + "CrossRegionCopyTargetList":{ + "type":"list", + "member":{"shape":"CrossRegionCopyTarget"}, + "max":3, + "min":0 + }, + "DefaultPoliciesTypeValues":{ + "type":"string", + "enum":[ + "VOLUME", + "INSTANCE", + "ALL" + ] + }, + "DefaultPolicy":{"type":"boolean"}, + "DefaultPolicyTypeValues":{ + "type":"string", + "enum":[ + "VOLUME", + "INSTANCE" + ] + }, "DeleteLifecyclePolicyRequest":{ "type":"structure", "required":["PolicyId"], @@ -357,18 +396,51 @@ "enum":["shareSnapshot"] }, "ExcludeBootVolume":{"type":"boolean"}, + "ExcludeBootVolumes":{"type":"boolean"}, "ExcludeDataVolumeTagList":{ "type":"list", "member":{"shape":"Tag"}, "max":50, "min":0 }, + "ExcludeTagsList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":50, + "min":0 + }, + "ExcludeVolumeTypesList":{ + "type":"list", + "member":{"shape":"VolumeTypeValues"}, + "max":6, + "min":0 + }, + "Exclusions":{ + "type":"structure", + "members":{ + "ExcludeBootVolumes":{"shape":"ExcludeBootVolumes"}, + "ExcludeVolumeTypes":{"shape":"ExcludeVolumeTypesList"}, + "ExcludeTags":{"shape":"ExcludeTagsList"} + } + }, + "ExecuteOperationOnScriptFailure":{"type":"boolean"}, + "ExecutionHandler":{ + "type":"string", + "max":200, + "min":0, + "pattern":"^([a-zA-Z0-9_\\-.]{3,128}|[a-zA-Z0-9_\\-.:/]{3,200}|[A-Z0-9_]+)$" + }, + "ExecutionHandlerServiceValues":{ + "type":"string", + "enum":["AWS_SYSTEMS_MANAGER"] + }, "ExecutionRoleArn":{ "type":"string", "max":2048, "min":0, "pattern":"arn:aws(-[a-z]{1,3}){0,2}:iam::\\d+:role/.*" }, + "ExtendDeletion":{"type":"boolean"}, "FastRestoreRule":{ "type":"structure", "required":["AvailabilityZones"], @@ -406,6 +478,11 @@ "shape":"TagsToAddFilterList", "location":"querystring", "locationName":"tagsToAdd" + }, + "DefaultPolicyType":{ + "shape":"DefaultPoliciesTypeValues", + "location":"querystring", + "locationName":"defaultPolicyType" } } }, @@ -480,7 +557,8 @@ "DateModified":{"shape":"Timestamp"}, "PolicyDetails":{"shape":"PolicyDetails"}, "Tags":{"shape":"TagMap"}, - "PolicyArn":{"shape":"PolicyArn"} + "PolicyArn":{"shape":"PolicyArn"}, + "DefaultPolicy":{"shape":"DefaultPolicy"} } }, "LifecyclePolicySummary":{ @@ -490,7 +568,8 @@ "Description":{"shape":"PolicyDescription"}, "State":{"shape":"GettablePolicyStateValues"}, "Tags":{"shape":"TagMap"}, - "PolicyType":{"shape":"PolicyTypeValues"} + "PolicyType":{"shape":"PolicyTypeValues"}, + "DefaultPolicy":{"shape":"DefaultPolicy"} } }, "LifecyclePolicySummaryList":{ @@ -567,19 +646,34 @@ "Schedules":{"shape":"ScheduleList"}, "Parameters":{"shape":"Parameters"}, "EventSource":{"shape":"EventSource"}, - "Actions":{"shape":"ActionList"} + "Actions":{"shape":"ActionList"}, + "PolicyLanguage":{"shape":"PolicyLanguageValues"}, + "ResourceType":{"shape":"ResourceTypeValues"}, + "CreateInterval":{"shape":"CreateInterval"}, + "RetainInterval":{"shape":"RetainInterval"}, + "CopyTags":{"shape":"CopyTagsNullable"}, + "CrossRegionCopyTargets":{"shape":"CrossRegionCopyTargetList"}, + "ExtendDeletion":{"shape":"ExtendDeletion"}, + "Exclusions":{"shape":"Exclusions"} } }, "PolicyId":{ "type":"string", "max":64, "min":0, - "pattern":"policy-[A-Za-z0-9]+" + "pattern":"policy-[a-f0-9]+" }, "PolicyIdList":{ "type":"list", "member":{"shape":"PolicyId"} }, + "PolicyLanguageValues":{ + "type":"string", + "enum":[ + "SIMPLIFIED", + "STANDARD" + ] + }, "PolicyTypeValues":{ "type":"string", "enum":[ @@ -625,6 +719,10 @@ "max":1, "min":1 }, + "RetainInterval":{ + "type":"integer", + "min":1 + }, "RetainRule":{ "type":"structure", "members":{ @@ -678,6 +776,34 @@ "min":0, "pattern":"[0-9A-Za-z _-]+" }, + "Script":{ + "type":"structure", + "required":["ExecutionHandler"], + "members":{ + "Stages":{"shape":"StagesList"}, + "ExecutionHandlerService":{"shape":"ExecutionHandlerServiceValues"}, + "ExecutionHandler":{"shape":"ExecutionHandler"}, + "ExecuteOperationOnScriptFailure":{"shape":"ExecuteOperationOnScriptFailure"}, + "ExecutionTimeout":{"shape":"ScriptExecutionTimeout"}, + "MaximumRetryCount":{"shape":"ScriptMaximumRetryCount"} + } + }, + "ScriptExecutionTimeout":{ + "type":"integer", + "max":120, + "min":10 + }, + "ScriptMaximumRetryCount":{ + "type":"integer", + "max":3, + "min":0 + }, + "ScriptsList":{ + "type":"list", + "member":{"shape":"Script"}, + "max":1, + "min":0 + }, "SettablePolicyStateValues":{ "type":"string", "enum":[ @@ -711,6 +837,19 @@ "max":50, "min":0 }, + "StageValues":{ + "type":"string", + "enum":[ + "PRE", + "POST" + ] + }, + "StagesList":{ + "type":"list", + "member":{"shape":"StageValues"}, + "max":2, + "min":1 + }, "StandardTierRetainRuleCount":{ "type":"integer", "max":1000, @@ -880,7 +1019,13 @@ "ExecutionRoleArn":{"shape":"ExecutionRoleArn"}, "State":{"shape":"SettablePolicyStateValues"}, "Description":{"shape":"PolicyDescription"}, - "PolicyDetails":{"shape":"PolicyDetails"} + "PolicyDetails":{"shape":"PolicyDetails"}, + "CreateInterval":{"shape":"CreateInterval"}, + "RetainInterval":{"shape":"RetainInterval"}, + "CopyTags":{"shape":"CopyTagsNullable"}, + "ExtendDeletion":{"shape":"ExtendDeletion"}, + "CrossRegionCopyTargets":{"shape":"CrossRegionCopyTargetList"}, + "Exclusions":{"shape":"Exclusions"} } }, "UpdateLifecyclePolicyResponse":{ @@ -893,6 +1038,7 @@ "member":{"shape":"Tag"}, "max":45, "min":0 - } + }, + "VolumeTypeValues":{"type":"string"} } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dlm/2018-01-12/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dlm/2018-01-12/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dlm/2018-01-12/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dlm/2018-01-12/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,9 +2,9 @@ "version": "2.0", "service": "Amazon Data Lifecycle Manager

With Amazon Data Lifecycle Manager, you can manage the lifecycle of your Amazon Web Services resources. You create lifecycle policies, which are used to automate operations on the specified resources.

Amazon Data Lifecycle Manager supports Amazon EBS volumes and snapshots. For information about using Amazon Data Lifecycle Manager with Amazon EBS, see Amazon Data Lifecycle Manager in the Amazon EC2 User Guide.

", "operations": { - "CreateLifecyclePolicy": "

Creates a policy to manage the lifecycle of the specified Amazon Web Services resources. You can create up to 100 lifecycle policies.

", + "CreateLifecyclePolicy": "

Creates an Amazon Data Lifecycle Manager lifecycle policy. Amazon Data Lifecycle Manager supports the following policy types:

  • Custom EBS snapshot policy

  • Custom EBS-backed AMI policy

  • Cross-account copy event policy

  • Default policy for EBS snapshots

  • Default policy for EBS-backed AMIs

For more information, see Default policies vs custom policies.

If you create a default policy, you can specify the request parameters either in the request body, or in the PolicyDetails request structure, but not both.

", "DeleteLifecyclePolicy": "

Deletes the specified lifecycle policy and halts the automated operations that the policy specified.

For more information about deleting a policy, see Delete lifecycle policies.

", - "GetLifecyclePolicies": "

Gets summary information about all or the specified data lifecycle policies.

To get complete information about a policy, use GetLifecyclePolicy.

", + "GetLifecyclePolicies": "

Gets summary information about all or the specified data lifecycle policies.

To get complete information about a policy, use GetLifecyclePolicy.

", "GetLifecyclePolicy": "

Gets detailed information about the specified lifecycle policy.

", "ListTagsForResource": "

Lists the tags for the specified resource.

", "TagResource": "

Adds the specified tags to the specified resource.

", @@ -31,15 +31,15 @@ } }, "ArchiveRetainRule": { - "base": "

[Snapshot policies only] Specifies information about the archive storage tier retention period.

", + "base": "

[Custom snapshot policies only] Specifies information about the archive storage tier retention period.

", "refs": { "ArchiveRule$RetainRule": "

Information about the retention period for the snapshot archiving rule.

" } }, "ArchiveRule": { - "base": "

[Snapshot policies only] Specifies a snapshot archiving rule for a schedule.

", + "base": "

[Custom snapshot policies only] Specifies a snapshot archiving rule for a schedule.

", "refs": { - "Schedule$ArchiveRule": "

[Snapshot policies that target volumes only] The snapshot archiving rule for the schedule. When you specify an archiving rule, snapshots are automatically moved from the standard tier to the archive tier once the schedule's retention threshold is met. Snapshots are then retained in the archive tier for the archive retention period that you specify.

For more information about using snapshot archiving, see Considerations for snapshot lifecycle policies.

" + "Schedule$ArchiveRule": "

[Custom snapshot policies that target volumes only] The snapshot archiving rule for the schedule. When you specify an archiving rule, snapshots are automatically moved from the standard tier to the archive tier once the schedule's retention threshold is met. Snapshots are then retained in the archive tier for the archive retention period that you specify.

For more information about using snapshot archiving, see Considerations for snapshot lifecycle policies.

" } }, "AvailabilityZone": { @@ -77,7 +77,10 @@ "CopyTagsNullable": { "base": null, "refs": { - "CrossRegionCopyRule$CopyTags": "

Indicates whether to copy all user-defined tags from the source snapshot or AMI to the cross-Region copy.

" + "CreateLifecyclePolicyRequest$CopyTags": "

[Default policies only] Indicates whether the policy should copy tags from the source resource to the snapshot or AMI. If you do not specify a value, the default is false.

Default: false

", + "CrossRegionCopyRule$CopyTags": "

Indicates whether to copy all user-defined tags from the source snapshot or AMI to the cross-Region copy.

", + "PolicyDetails$CopyTags": "

[Default policies only] Indicates whether the policy should copy tags from the source resource to the snapshot or AMI. If you do not specify a value, the default is false.

Default: false

", + "UpdateLifecyclePolicyRequest$CopyTags": "

[Default policies only] Indicates whether the policy should copy tags from the source resource to the snapshot or AMI.

" } }, "Count": { @@ -88,6 +91,14 @@ "RetentionArchiveTier$Count": "

The maximum number of snapshots to retain in the archive storage tier for each volume. The count must ensure that each snapshot remains in the archive tier for at least 90 days. For example, if the schedule creates snapshots every 30 days, you must specify a count of 3 or more to ensure that each snapshot is archived for at least 90 days.

" } }, + "CreateInterval": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$CreateInterval": "

[Default policies only] Specifies how often the policy should run and create snapshots or AMIs. The creation frequency can range from 1 to 7 days. If you do not specify a value, the default is 1.

Default: 1

", + "PolicyDetails$CreateInterval": "

[Default policies only] Specifies how often the policy should run and create snapshots or AMIs. The creation frequency can range from 1 to 7 days. If you do not specify a value, the default is 1.

Default: 1

", + "UpdateLifecyclePolicyRequest$CreateInterval": "

[Default policies only] Specifies how often the policy should run and create snapshots or AMIs. The creation frequency can range from 1 to 7 days.

" + } + }, "CreateLifecyclePolicyRequest": { "base": null, "refs": { @@ -99,7 +110,7 @@ } }, "CreateRule": { - "base": "

[Snapshot and AMI policies only] Specifies when the policy should create snapshots or AMIs.

  • You must specify either CronExpression, or Interval, IntervalUnit, and Times.

  • If you need to specify an ArchiveRule for the schedule, then you must specify a creation frequency of at least 28 days.

", + "base": "

[Custom snapshot and AMI policies only] Specifies when the policy should create snapshots or AMIs.

  • You must specify either CronExpression, or Interval, IntervalUnit, and Times.

  • If you need to specify an ArchiveRule for the schedule, then you must specify a creation frequency of at least 28 days.

", "refs": { "Schedule$CreateRule": "

The creation rule.

" } @@ -111,7 +122,7 @@ } }, "CrossRegionCopyAction": { - "base": "

[Event-based policies only] Specifies a cross-Region copy action for event-based policies.

To specify a cross-Region copy rule for snapshot and AMI policies, use CrossRegionCopyRule.

", + "base": "

[Event-based policies only] Specifies a cross-Region copy action for event-based policies.

To specify a cross-Region copy rule for snapshot and AMI policies, use CrossRegionCopyRule.

", "refs": { "CrossRegionCopyActionList$member": null } @@ -123,9 +134,9 @@ } }, "CrossRegionCopyDeprecateRule": { - "base": "

[AMI policies only] Specifies an AMI deprecation rule for cross-Region AMI copies created by an AMI policy.

", + "base": "

[Custom AMI policies only] Specifies an AMI deprecation rule for cross-Region AMI copies created by an AMI policy.

", "refs": { - "CrossRegionCopyRule$DeprecateRule": "

[AMI policies only] The AMI deprecation rule for cross-Region AMI copies created by the rule.

" + "CrossRegionCopyRule$DeprecateRule": "

[Custom AMI policies only] The AMI deprecation rule for cross-Region AMI copies created by the rule.

" } }, "CrossRegionCopyRetainRule": { @@ -136,7 +147,7 @@ } }, "CrossRegionCopyRule": { - "base": "

[Snapshot and AMI policies only] Specifies a cross-Region copy rule for snapshot and AMI policies.

To specify a cross-Region copy action for event-based polices, use CrossRegionCopyAction.

", + "base": "

[Custom snapshot and AMI policies only] Specifies a cross-Region copy rule for a snapshot and AMI policies.

To specify a cross-Region copy action for event-based polices, use CrossRegionCopyAction.

", "refs": { "CrossRegionCopyRules$member": null } @@ -147,6 +158,39 @@ "Schedule$CrossRegionCopyRules": "

Specifies a rule for copying snapshots or AMIs across regions.

You can't specify cross-Region copy rules for policies that create snapshots on an Outpost. If the policy creates snapshots in a Region, then snapshots can be copied to up to three Regions or Outposts.

" } }, + "CrossRegionCopyTarget": { + "base": "

[Default policies only] Specifies a destination Region for cross-Region copy actions.

", + "refs": { + "CrossRegionCopyTargetList$member": null + } + }, + "CrossRegionCopyTargetList": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$CrossRegionCopyTargets": "

[Default policies only] Specifies destination Regions for snapshot or AMI copies. You can specify up to 3 destination Regions. If you do not want to create cross-Region copies, omit this parameter.

", + "PolicyDetails$CrossRegionCopyTargets": "

[Default policies only] Specifies destination Regions for snapshot or AMI copies. You can specify up to 3 destination Regions. If you do not want to create cross-Region copies, omit this parameter.

", + "UpdateLifecyclePolicyRequest$CrossRegionCopyTargets": "

[Default policies only] Specifies destination Regions for snapshot or AMI copies. You can specify up to 3 destination Regions. If you do not want to create cross-Region copies, omit this parameter.

" + } + }, + "DefaultPoliciesTypeValues": { + "base": null, + "refs": { + "GetLifecyclePoliciesRequest$DefaultPolicyType": "

[Default policies only] Specifies the type of default policy to get. Specify one of the following:

  • VOLUME - To get only the default policy for EBS snapshots

  • INSTANCE - To get only the default policy for EBS-backed AMIs

  • ALL - To get all default policies

" + } + }, + "DefaultPolicy": { + "base": null, + "refs": { + "LifecyclePolicy$DefaultPolicy": "

[Default policies only] The type of default policy. Values include:

  • VOLUME - Default policy for EBS snapshots

  • INSTANCE - Default policy for EBS-backed AMIs

", + "LifecyclePolicySummary$DefaultPolicy": "

[Default policies only] The type of default policy. Values include:

  • VOLUME - Default policy for EBS snapshots

  • INSTANCE - Default policy for EBS-backed AMIs

" + } + }, + "DefaultPolicyTypeValues": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$DefaultPolicy": "

[Default policies only] Specify the type of default policy to create.

  • To create a default policy for EBS snapshots, that creates snapshots of all volumes in the Region that do not have recent backups, specify VOLUME.

  • To create a default policy for EBS-backed AMIs, that creates EBS-backed AMIs from all instances in the Region that do not have recent backups, specify INSTANCE.

" + } + }, "DeleteLifecyclePolicyRequest": { "base": null, "refs": { @@ -158,9 +202,9 @@ } }, "DeprecateRule": { - "base": "

[AMI policies only] Specifies an AMI deprecation rule for AMIs created by an AMI lifecycle policy.

For age-based schedules, you must specify Interval and IntervalUnit. For count-based schedules, you must specify Count.

", + "base": "

[Custom AMI policies only] Specifies an AMI deprecation rule for AMIs created by an AMI lifecycle policy.

For age-based schedules, you must specify Interval and IntervalUnit. For count-based schedules, you must specify Count.

", "refs": { - "Schedule$DeprecateRule": "

[AMI policies only] The AMI deprecation rule for the schedule.

" + "Schedule$DeprecateRule": "

[Custom AMI policies only] The AMI deprecation rule for the schedule.

" } }, "DescriptionRegex": { @@ -227,13 +271,57 @@ "ExcludeBootVolume": { "base": null, "refs": { - "Parameters$ExcludeBootVolume": "

[Snapshot policies that target instances only] Indicates whether to exclude the root volume from multi-volume snapshot sets. The default is false. If you specify true, then the root volumes attached to targeted instances will be excluded from the multi-volume snapshot sets created by the policy.

" + "Parameters$ExcludeBootVolume": "

[Custom snapshot policies that target instances only] Indicates whether to exclude the root volume from multi-volume snapshot sets. The default is false. If you specify true, then the root volumes attached to targeted instances will be excluded from the multi-volume snapshot sets created by the policy.

" + } + }, + "ExcludeBootVolumes": { + "base": null, + "refs": { + "Exclusions$ExcludeBootVolumes": "

[Default policies for EBS snapshots only] Indicates whether to exclude volumes that are attached to instances as the boot volume. If you exclude boot volumes, only volumes attached as data (non-boot) volumes will be backed up by the policy. To exclude boot volumes, specify true.

" } }, "ExcludeDataVolumeTagList": { "base": null, "refs": { - "Parameters$ExcludeDataVolumeTags": "

[Snapshot policies that target instances only] The tags used to identify data (non-root) volumes to exclude from multi-volume snapshot sets.

If you create a snapshot lifecycle policy that targets instances and you specify tags for this parameter, then data volumes with the specified tags that are attached to targeted instances will be excluded from the multi-volume snapshot sets created by the policy.

" + "Parameters$ExcludeDataVolumeTags": "

[Custom snapshot policies that target instances only] The tags used to identify data (non-root) volumes to exclude from multi-volume snapshot sets.

If you create a snapshot lifecycle policy that targets instances and you specify tags for this parameter, then data volumes with the specified tags that are attached to targeted instances will be excluded from the multi-volume snapshot sets created by the policy.

" + } + }, + "ExcludeTagsList": { + "base": null, + "refs": { + "Exclusions$ExcludeTags": "

[Default policies for EBS-backed AMIs only] Specifies whether to exclude volumes that have specific tags.

" + } + }, + "ExcludeVolumeTypesList": { + "base": null, + "refs": { + "Exclusions$ExcludeVolumeTypes": "

[Default policies for EBS snapshots only] Specifies the volume types to exclude. Volumes of the specified types will not be targeted by the policy.

" + } + }, + "Exclusions": { + "base": "

[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.

", + "refs": { + "CreateLifecyclePolicyRequest$Exclusions": "

[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.

", + "PolicyDetails$Exclusions": "

[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.

", + "UpdateLifecyclePolicyRequest$Exclusions": "

[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.

" + } + }, + "ExecuteOperationOnScriptFailure": { + "base": null, + "refs": { + "Script$ExecuteOperationOnScriptFailure": "

Indicates whether Amazon Data Lifecycle Manager should default to crash-consistent snapshots if the pre script fails.

  • To default to crash consistent snapshot if the pre script fails, specify true.

  • To skip the instance for snapshot creation if the pre script fails, specify false.

This parameter is supported only if you run a pre script. If you run a post script only, omit this parameter.

Default: true

" + } + }, + "ExecutionHandler": { + "base": null, + "refs": { + "Script$ExecutionHandler": "

The SSM document that includes the pre and/or post scripts to run.

  • If you are automating VSS backups, specify AWS_VSS_BACKUP. In this case, Amazon Data Lifecycle Manager automatically uses the AWSEC2-CreateVssSnapshot SSM document.

  • If you are automating application-consistent snapshots for SAP HANA workloads, specify AWSSystemsManagerSAP-CreateDLMSnapshotForSAPHANA.

  • If you are using a custom SSM document that you own, specify either the name or ARN of the SSM document. If you are using a custom SSM document that is shared with you, specify the ARN of the SSM document.

" + } + }, + "ExecutionHandlerServiceValues": { + "base": null, + "refs": { + "Script$ExecutionHandlerService": "

Indicates the service used to execute the pre and/or post scripts.

  • If you are using custom SSM documents or automating application-consistent snapshots of SAP HANA workloads, specify AWS_SYSTEMS_MANAGER.

  • If you are automating VSS Backups, omit this parameter.

Default: AWS_SYSTEMS_MANAGER

" } }, "ExecutionRoleArn": { @@ -244,10 +332,18 @@ "UpdateLifecyclePolicyRequest$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM role used to run the operations specified by the lifecycle policy.

" } }, + "ExtendDeletion": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$ExtendDeletion": "

[Default policies only] Defines the snapshot or AMI retention behavior for the policy if the source volume or instance is deleted, or if the policy enters the error, disabled, or deleted state.

By default (ExtendDeletion=false):

  • If a source resource is deleted, Amazon Data Lifecycle Manager will continue to delete previously created snapshots or AMIs, up to but not including the last one, based on the specified retention period. If you want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including the last one, specify true.

  • If a policy enters the error, disabled, or deleted state, Amazon Data Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon Data Lifecycle Manager to continue deleting snapshots or AMIs, including the last one, if the policy enters one of these states, specify true.

If you enable extended deletion (ExtendDeletion=true), you override both default behaviors simultaneously.

If you do not specify a value, the default is false.

Default: false

", + "PolicyDetails$ExtendDeletion": "

[Default policies only] Defines the snapshot or AMI retention behavior for the policy if the source volume or instance is deleted, or if the policy enters the error, disabled, or deleted state.

By default (ExtendDeletion=false):

  • If a source resource is deleted, Amazon Data Lifecycle Manager will continue to delete previously created snapshots or AMIs, up to but not including the last one, based on the specified retention period. If you want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including the last one, specify true.

  • If a policy enters the error, disabled, or deleted state, Amazon Data Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon Data Lifecycle Manager to continue deleting snapshots or AMIs, including the last one, if the policy enters one of these states, specify true.

If you enable extended deletion (ExtendDeletion=true), you override both default behaviors simultaneously.

If you do not specify a value, the default is false.

Default: false

", + "UpdateLifecyclePolicyRequest$ExtendDeletion": "

[Default policies only] Defines the snapshot or AMI retention behavior for the policy if the source volume or instance is deleted, or if the policy enters the error, disabled, or deleted state.

By default (ExtendDeletion=false):

  • If a source resource is deleted, Amazon Data Lifecycle Manager will continue to delete previously created snapshots or AMIs, up to but not including the last one, based on the specified retention period. If you want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including the last one, specify true.

  • If a policy enters the error, disabled, or deleted state, Amazon Data Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon Data Lifecycle Manager to continue deleting snapshots or AMIs, including the last one, if the policy enters one of these states, specify true.

If you enable extended deletion (ExtendDeletion=true), you override both default behaviors simultaneously.

Default: false

" + } + }, "FastRestoreRule": { - "base": "

[Snapshot policies only] Specifies a rule for enabling fast snapshot restore for snapshots created by snapshot policies. You can enable fast snapshot restore based on either a count or a time interval.

", + "base": "

[Custom snapshot policies only] Specifies a rule for enabling fast snapshot restore for snapshots created by snapshot policies. You can enable fast snapshot restore based on either a count or a time interval.

", "refs": { - "Schedule$FastRestoreRule": "

[Snapshot policies only] The rule for enabling fast snapshot restore.

" + "Schedule$FastRestoreRule": "

[Custom snapshot policies only] The rule for enabling fast snapshot restore.

" } }, "GetLifecyclePoliciesRequest": { @@ -307,7 +403,7 @@ } }, "LifecyclePolicy": { - "base": "

[All policy types] Detailed information about a snapshot, AMI, or event-based lifecycle policy.

", + "base": "

[Custom policies only] Detailed information about a snapshot, AMI, or event-based lifecycle policy.

", "refs": { "GetLifecyclePolicyResponse$Policy": "

Detailed information about the lifecycle policy.

" } @@ -342,13 +438,13 @@ "LocationValues": { "base": null, "refs": { - "CreateRule$Location": "

[Snapshot policies only] Specifies the destination for snapshots created by the policy. To create snapshots in the same Region as the source resource, specify CLOUD. To create snapshots on the same Outpost as the source resource, specify OUTPOST_LOCAL. If you omit this parameter, CLOUD is used by default.

If the policy targets resources in an Amazon Web Services Region, then you must create snapshots in the same Region as the source resource. If the policy targets resources on an Outpost, then you can create snapshots on the same Outpost as the source resource, or in the Region of that Outpost.

" + "CreateRule$Location": "

[Custom snapshot policies only] Specifies the destination for snapshots created by the policy. To create snapshots in the same Region as the source resource, specify CLOUD. To create snapshots on the same Outpost as the source resource, specify OUTPOST_LOCAL. If you omit this parameter, CLOUD is used by default.

If the policy targets resources in an Amazon Web Services Region, then you must create snapshots in the same Region as the source resource. If the policy targets resources on an Outpost, then you can create snapshots on the same Outpost as the source resource, or in the Region of that Outpost.

" } }, "NoReboot": { "base": null, "refs": { - "Parameters$NoReboot": "

[AMI policies only] Indicates whether targeted instances are rebooted when the lifecycle policy runs. true indicates that targeted instances are not rebooted when the policy runs. false indicates that target instances are rebooted when the policy runs. The default is true (instances are not rebooted).

" + "Parameters$NoReboot": "

[Custom AMI policies only] Indicates whether targeted instances are rebooted when the lifecycle policy runs. true indicates that targeted instances are not rebooted when the policy runs. false indicates that target instances are rebooted when the policy runs. The default is true (instances are not rebooted).

" } }, "Parameter": { @@ -365,9 +461,9 @@ } }, "Parameters": { - "base": "

[Snapshot and AMI policies only] Specifies optional parameters for snapshot and AMI policies. The set of valid parameters depends on the combination of policy type and target resource type.

If you choose to exclude boot volumes and you specify tags that consequently exclude all of the additional data volumes attached to an instance, then Amazon Data Lifecycle Manager will not create any snapshots for the affected instance, and it will emit a SnapshotsCreateFailed Amazon CloudWatch metric. For more information, see Monitor your policies using Amazon CloudWatch.

", + "base": "

[Custom snapshot and AMI policies only] Specifies optional parameters for snapshot and AMI policies. The set of valid parameters depends on the combination of policy type and target resource type.

If you choose to exclude boot volumes and you specify tags that consequently exclude all of the additional data volumes attached to an instance, then Amazon Data Lifecycle Manager will not create any snapshots for the affected instance, and it will emit a SnapshotsCreateFailed Amazon CloudWatch metric. For more information, see Monitor your policies using Amazon CloudWatch.

", "refs": { - "PolicyDetails$Parameters": "

[Snapshot and AMI policies only] A set of optional parameters for snapshot and AMI lifecycle policies.

If you are modifying a policy that was created or previously modified using the Amazon Data Lifecycle Manager console, then you must include this parameter and specify either the default values or the new values that you require. You can't omit this parameter or set its values to null.

" + "PolicyDetails$Parameters": "

[Custom snapshot and AMI policies only] A set of optional parameters for snapshot and AMI lifecycle policies.

If you are modifying a policy that was created or previously modified using the Amazon Data Lifecycle Manager console, then you must include this parameter and specify either the default values or the new values that you require. You can't omit this parameter or set its values to null.

" } }, "PolicyArn": { @@ -389,9 +485,9 @@ } }, "PolicyDetails": { - "base": "

[All policy types] Specifies the configuration of a lifecycle policy.

", + "base": "

Specifies the configuration of a lifecycle policy.

", "refs": { - "CreateLifecyclePolicyRequest$PolicyDetails": "

The configuration details of the lifecycle policy.

", + "CreateLifecyclePolicyRequest$PolicyDetails": "

The configuration details of the lifecycle policy.

If you create a default policy, you can specify the request parameters either in the request body, or in the PolicyDetails request structure, but not both.

", "LifecyclePolicy$PolicyDetails": "

The configuration of the lifecycle policy

", "UpdateLifecyclePolicyRequest$PolicyDetails": "

The configuration of the lifecycle policy. You cannot update the policy type or the resource type.

" } @@ -415,17 +511,23 @@ "ResourceNotFoundException$ResourceIds": "

Value is a list of resource IDs that were not found.

" } }, + "PolicyLanguageValues": { + "base": null, + "refs": { + "PolicyDetails$PolicyLanguage": "

The type of policy to create. Specify one of the following:

  • SIMPLIFIED To create a default policy.

  • STANDARD To create a custom policy.

" + } + }, "PolicyTypeValues": { "base": null, "refs": { "LifecyclePolicySummary$PolicyType": "

The type of policy. EBS_SNAPSHOT_MANAGEMENT indicates that the policy manages the lifecycle of Amazon EBS snapshots. IMAGE_MANAGEMENT indicates that the policy manages the lifecycle of EBS-backed AMIs. EVENT_BASED_POLICY indicates that the policy automates cross-account snapshot copies for snapshots that are shared with your account.

", - "PolicyDetails$PolicyType": "

[All policy types] The valid target resource types and actions a policy can manage. Specify EBS_SNAPSHOT_MANAGEMENT to create a lifecycle policy that manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT to create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. Specify EVENT_BASED_POLICY to create an event-based policy that performs specific actions when a defined event occurs in your Amazon Web Services account.

The default is EBS_SNAPSHOT_MANAGEMENT.

" + "PolicyDetails$PolicyType": "

[Custom policies only] The valid target resource types and actions a policy can manage. Specify EBS_SNAPSHOT_MANAGEMENT to create a lifecycle policy that manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT to create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. Specify EVENT_BASED_POLICY to create an event-based policy that performs specific actions when a defined event occurs in your Amazon Web Services account.

The default is EBS_SNAPSHOT_MANAGEMENT.

" } }, "ResourceLocationList": { "base": null, "refs": { - "PolicyDetails$ResourceLocations": "

[Snapshot and AMI policies only] The location of the resources to backup. If the source resources are located in an Amazon Web Services Region, specify CLOUD. If the source resources are located on an Outpost in your account, specify OUTPOST.

If you specify OUTPOST, Amazon Data Lifecycle Manager backs up all resources of the specified type with matching target tags across all of the Outposts in your account.

" + "PolicyDetails$ResourceLocations": "

[Custom snapshot and AMI policies only] The location of the resources to backup. If the source resources are located in an Amazon Web Services Region, specify CLOUD. If the source resources are located on an Outpost in your account, specify OUTPOST.

If you specify OUTPOST, Amazon Data Lifecycle Manager backs up all resources of the specified type with matching target tags across all of the Outposts in your account.

" } }, "ResourceLocationValues": { @@ -442,6 +544,7 @@ "ResourceTypeValues": { "base": null, "refs": { + "PolicyDetails$ResourceType": "

[Default policies only] Specify the type of default policy to create.

  • To create a default policy for EBS snapshots, that creates snapshots of all volumes in the Region that do not have recent backups, specify VOLUME.

  • To create a default policy for EBS-backed AMIs, that creates EBS-backed AMIs from all instances in the Region that do not have recent backups, specify INSTANCE.

", "ResourceTypeValuesList$member": null } }, @@ -449,17 +552,25 @@ "base": null, "refs": { "GetLifecyclePoliciesRequest$ResourceTypes": "

The resource type.

", - "PolicyDetails$ResourceTypes": "

[Snapshot policies only] The target resource type for snapshot and AMI lifecycle policies. Use VOLUME to create snapshots of individual volumes or use INSTANCE to create multi-volume snapshots from the volumes for an instance.

" + "PolicyDetails$ResourceTypes": "

[Custom snapshot policies only] The target resource type for snapshot and AMI lifecycle policies. Use VOLUME to create snapshots of individual volumes or use INSTANCE to create multi-volume snapshots from the volumes for an instance.

" + } + }, + "RetainInterval": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$RetainInterval": "

[Default policies only] Specifies how long the policy should retain snapshots or AMIs before deleting them. The retention period can range from 2 to 14 days, but it must be greater than the creation frequency to ensure that the policy retains at least 1 snapshot or AMI at any given time. If you do not specify a value, the default is 7.

Default: 7

", + "PolicyDetails$RetainInterval": "

[Default policies only] Specifies how long the policy should retain snapshots or AMIs before deleting them. The retention period can range from 2 to 14 days, but it must be greater than the creation frequency to ensure that the policy retains at least 1 snapshot or AMI at any given time. If you do not specify a value, the default is 7.

Default: 7

", + "UpdateLifecyclePolicyRequest$RetainInterval": "

[Default policies only] Specifies how long the policy should retain snapshots or AMIs before deleting them. The retention period can range from 2 to 14 days, but it must be greater than the creation frequency to ensure that the policy retains at least 1 snapshot or AMI at any given time.

" } }, "RetainRule": { - "base": "

[Snapshot and AMI policies only] Specifies a retention rule for snapshots created by snapshot policies, or for AMIs created by AMI policies.

For snapshot policies that have an ArchiveRule, this retention rule applies to standard tier retention. When the retention threshold is met, snapshots are moved from the standard to the archive tier.

For snapshot policies that do not have an ArchiveRule, snapshots are permanently deleted when this retention threshold is met.

You can retain snapshots based on either a count or a time interval.

  • Count-based retention

    You must specify Count. If you specify an ArchiveRule for the schedule, then you can specify a retention count of 0 to archive snapshots immediately after creation. If you specify a FastRestoreRule, ShareRule, or a CrossRegionCopyRule, then you must specify a retention count of 1 or more.

  • Age-based retention

    You must specify Interval and IntervalUnit. If you specify an ArchiveRule for the schedule, then you can specify a retention interval of 0 days to archive snapshots immediately after creation. If you specify a FastRestoreRule, ShareRule, or a CrossRegionCopyRule, then you must specify a retention interval of 1 day or more.

", + "base": "

[Custom snapshot and AMI policies only] Specifies a retention rule for snapshots created by snapshot policies, or for AMIs created by AMI policies.

For snapshot policies that have an ArchiveRule, this retention rule applies to standard tier retention. When the retention threshold is met, snapshots are moved from the standard to the archive tier.

For snapshot policies that do not have an ArchiveRule, snapshots are permanently deleted when this retention threshold is met.

You can retain snapshots based on either a count or a time interval.

  • Count-based retention

    You must specify Count. If you specify an ArchiveRule for the schedule, then you can specify a retention count of 0 to archive snapshots immediately after creation. If you specify a FastRestoreRule, ShareRule, or a CrossRegionCopyRule, then you must specify a retention count of 1 or more.

  • Age-based retention

    You must specify Interval and IntervalUnit. If you specify an ArchiveRule for the schedule, then you can specify a retention interval of 0 days to archive snapshots immediately after creation. If you specify a FastRestoreRule, ShareRule, or a CrossRegionCopyRule, then you must specify a retention interval of 1 day or more.

", "refs": { "Schedule$RetainRule": "

The retention rule for snapshots or AMIs created by the policy.

" } }, "RetentionArchiveTier": { - "base": "

[Snapshot policies only] Describes the retention rule for archived snapshots. Once the archive retention threshold is met, the snapshots are permanently deleted from the archive tier.

The archive retention rule must retain snapshots in the archive tier for a minimum of 90 days.

For count-based schedules, you must specify Count. For age-based schedules, you must specify Interval and IntervalUnit.

For more information about using snapshot archiving, see Considerations for snapshot lifecycle policies.

", + "base": "

[Custom snapshot policies only] Describes the retention rule for archived snapshots. Once the archive retention threshold is met, the snapshots are permanently deleted from the archive tier.

The archive retention rule must retain snapshots in the archive tier for a minimum of 90 days.

For count-based schedules, you must specify Count. For age-based schedules, you must specify Interval and IntervalUnit.

For more information about using snapshot archiving, see Considerations for snapshot lifecycle policies.

", "refs": { "ArchiveRetainRule$RetentionArchiveTier": "

Information about retention period in the Amazon EBS Snapshots Archive. For more information, see Archive Amazon EBS snapshots.

" } @@ -471,13 +582,13 @@ "CrossRegionCopyRetainRule$IntervalUnit": "

The unit of time for time-based retention. For example, to retain a cross-Region copy for 3 months, specify Interval=3 and IntervalUnit=MONTHS.

", "DeprecateRule$IntervalUnit": "

The unit of time in which to measure the Interval.

", "FastRestoreRule$IntervalUnit": "

The unit of time for enabling fast snapshot restore.

", - "RetainRule$IntervalUnit": "

The unit of time for time-based retention. For example, to retain snapshots for 3 months, specify Interval=3 and IntervalUnit=MONTHS. Once the snapshot has been retained for 3 months, it is deleted, or it is moved to the archive tier if you have specified an ArchiveRule.

", + "RetainRule$IntervalUnit": "

The unit of time for time-based retention. For example, to retain snapshots for 3 months, specify Interval=3 and IntervalUnit=MONTHS. Once the snapshot has been retained for 3 months, it is deleted, or it is moved to the archive tier if you have specified an ArchiveRule.

", "RetentionArchiveTier$IntervalUnit": "

The unit of time in which to measure the Interval. For example, to retain a snapshots in the archive tier for 6 months, specify Interval=6 and IntervalUnit=MONTHS.

", "ShareRule$UnshareIntervalUnit": "

The unit of time for the automatic unsharing interval.

" } }, "Schedule": { - "base": "

[Snapshot and AMI policies only] Specifies a schedule for a snapshot or AMI lifecycle policy.

", + "base": "

[Custom snapshot and AMI policies only] Specifies a schedule for a snapshot or AMI lifecycle policy.

", "refs": { "ScheduleList$member": null } @@ -485,7 +596,7 @@ "ScheduleList": { "base": null, "refs": { - "PolicyDetails$Schedules": "

[Snapshot and AMI policies only] The schedules of policy-defined actions for snapshot and AMI lifecycle policies. A policy can have up to four schedules—one mandatory schedule and up to three optional schedules.

" + "PolicyDetails$Schedules": "

[Custom snapshot and AMI policies only] The schedules of policy-defined actions for snapshot and AMI lifecycle policies. A policy can have up to four schedules—one mandatory schedule and up to three optional schedules.

" } }, "ScheduleName": { @@ -494,15 +605,39 @@ "Schedule$Name": "

The name of the schedule.

" } }, + "Script": { + "base": "

[Custom snapshot policies that target instances only] Information about pre and/or post scripts for a snapshot lifecycle policy that targets instances. For more information, see Automating application-consistent snapshots with pre and post scripts.

", + "refs": { + "ScriptsList$member": null + } + }, + "ScriptExecutionTimeout": { + "base": null, + "refs": { + "Script$ExecutionTimeout": "

Specifies a timeout period, in seconds, after which Amazon Data Lifecycle Manager fails the script run attempt if it has not completed. If a script does not complete within its timeout period, Amazon Data Lifecycle Manager fails the attempt. The timeout period applies to the pre and post scripts individually.

If you are automating VSS Backups, omit this parameter.

Default: 10

" + } + }, + "ScriptMaximumRetryCount": { + "base": null, + "refs": { + "Script$MaximumRetryCount": "

Specifies the number of times Amazon Data Lifecycle Manager should retry scripts that fail.

  • If the pre script fails, Amazon Data Lifecycle Manager retries the entire snapshot creation process, including running the pre and post scripts.

  • If the post script fails, Amazon Data Lifecycle Manager retries the post script only; in this case, the pre script will have completed and the snapshot might have been created.

If you do not want Amazon Data Lifecycle Manager to retry failed scripts, specify 0.

Default: 0

" + } + }, + "ScriptsList": { + "base": null, + "refs": { + "CreateRule$Scripts": "

[Custom snapshot policies that target instances only] Specifies pre and/or post scripts for a snapshot lifecycle policy that targets instances. This is useful for creating application-consistent snapshots, or for performing specific administrative tasks before or after Amazon Data Lifecycle Manager initiates snapshot creation.

For more information, see Automating application-consistent snapshots with pre and post scripts.

" + } + }, "SettablePolicyStateValues": { "base": null, "refs": { - "CreateLifecyclePolicyRequest$State": "

The desired activation state of the lifecycle policy after creation.

", + "CreateLifecyclePolicyRequest$State": "

The activation state of the lifecycle policy after creation.

", "UpdateLifecyclePolicyRequest$State": "

The desired activation state of the lifecycle policy after creation.

" } }, "ShareRule": { - "base": "

[Snapshot policies only] Specifies a rule for sharing snapshots across Amazon Web Services accounts.

", + "base": "

[Custom snapshot policies only] Specifies a rule for sharing snapshots across Amazon Web Services accounts.

", "refs": { "ShareRules$member": null } @@ -510,7 +645,7 @@ "ShareRules": { "base": null, "refs": { - "Schedule$ShareRules": "

[Snapshot policies only] The rule for sharing snapshots with other Amazon Web Services accounts.

" + "Schedule$ShareRules": "

[Custom snapshot policies only] The rule for sharing snapshots with other Amazon Web Services accounts.

" } }, "ShareTargetAccountList": { @@ -525,10 +660,22 @@ "EventParameters$SnapshotOwner": "

The IDs of the Amazon Web Services accounts that can trigger policy by sharing snapshots with your account. The policy only runs if one of the specified Amazon Web Services accounts shares a snapshot with your account.

" } }, + "StageValues": { + "base": null, + "refs": { + "StagesList$member": null + } + }, + "StagesList": { + "base": null, + "refs": { + "Script$Stages": "

Indicate which scripts Amazon Data Lifecycle Manager should run on target instances. Pre scripts run before Amazon Data Lifecycle Manager initiates snapshot creation. Post scripts run after Amazon Data Lifecycle Manager initiates snapshot creation.

  • To run a pre script only, specify PRE. In this case, Amazon Data Lifecycle Manager calls the SSM document with the pre-script parameter before initiating snapshot creation.

  • To run a post script only, specify POST. In this case, Amazon Data Lifecycle Manager calls the SSM document with the post-script parameter after initiating snapshot creation.

  • To run both pre and post scripts, specify both PRE and POST. In this case, Amazon Data Lifecycle Manager calls the SSM document with the pre-script parameter before initiating snapshot creation, and then it calls the SSM document again with the post-script parameter after initiating snapshot creation.

If you are automating VSS Backups, omit this parameter.

Default: PRE and POST

" + } + }, "StandardTierRetainRuleCount": { "base": null, "refs": { - "RetainRule$Count": "

The number of snapshots to retain for each volume, up to a maximum of 1000. For example if you want to retain a maximum of three snapshots, specify 3. When the fourth snapshot is created, the oldest retained snapshot is deleted, or it is moved to the archive tier if you have specified an ArchiveRule.

" + "RetainRule$Count": "

The number of snapshots to retain for each volume, up to a maximum of 1000. For example if you want to retain a maximum of three snapshots, specify 3. When the fourth snapshot is created, the oldest retained snapshot is deleted, or it is moved to the archive tier if you have specified an ArchiveRule.

" } }, "StandardTierRetainRuleInterval": { @@ -556,6 +703,7 @@ "base": "

Specifies a tag for a resource.

", "refs": { "ExcludeDataVolumeTagList$member": null, + "ExcludeTagsList$member": null, "TagsToAddList$member": null, "TargetTagList$member": null, "VariableTagsList$member": null @@ -623,19 +771,20 @@ "base": null, "refs": { "CrossRegionCopyAction$Target": "

The target Region.

", - "CrossRegionCopyRule$Target": "

The target Region or the Amazon Resource Name (ARN) of the target Outpost for the snapshot copies.

Use this parameter instead of TargetRegion. Do not specify both.

" + "CrossRegionCopyRule$Target": "

Use this parameter for snapshot policies only. For AMI policies, use TargetRegion instead.

[Custom snapshot policies only] The target Region or the Amazon Resource Name (ARN) of the target Outpost for the snapshot copies.

" } }, "TargetRegion": { "base": null, "refs": { - "CrossRegionCopyRule$TargetRegion": "

Avoid using this parameter when creating new policies. Instead, use Target to specify a target Region or a target Outpost for snapshot copies.

For policies created before the Target parameter was introduced, this parameter indicates the target Region for snapshot copies.

" + "CrossRegionCopyRule$TargetRegion": "

Use this parameter for AMI policies only. For snapshot policies, use Target instead. For snapshot policies created before the Target parameter was introduced, this parameter indicates the target Region for snapshot copies.

[Custom AMI policies only] The target Region or the Amazon Resource Name (ARN) of the target Outpost for the snapshot copies.

", + "CrossRegionCopyTarget$TargetRegion": "

The target Region, for example us-east-1.

" } }, "TargetTagList": { "base": null, "refs": { - "PolicyDetails$TargetTags": "

[Snapshot and AMI policies only] The single tag that identifies targeted resources for this policy.

" + "PolicyDetails$TargetTags": "

[Custom snapshot and AMI policies only] The single tag that identifies targeted resources for this policy.

" } }, "TargetTagsFilterList": { @@ -688,6 +837,12 @@ "refs": { "Schedule$VariableTags": "

[AMI policies and snapshot policies that target instances only] A collection of key/value pairs with values determined dynamically when the policy is executed. Keys may be any valid Amazon EC2 tag key. Values must be in one of the two following formats: $(instance-id) or $(timestamp). Variable tags are only valid for EBS Snapshot Management – Instance policies.

" } + }, + "VolumeTypeValues": { + "base": null, + "refs": { + "ExcludeVolumeTypesList$member": null + } } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dlm/2018-01-12/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dlm/2018-01-12/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dlm/2018-01-12/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dlm/2018-01-12/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://dlm-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://dlm-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://dlm.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://dlm-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://dlm.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://dlm-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://dlm.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://dlm.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://dlm.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://dlm.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2073,10 +2073,14 @@ "DataProviderSettings":{ "type":"structure", "members":{ + "RedshiftSettings":{"shape":"RedshiftDataProviderSettings"}, "PostgreSqlSettings":{"shape":"PostgreSqlDataProviderSettings"}, "MySqlSettings":{"shape":"MySqlDataProviderSettings"}, "OracleSettings":{"shape":"OracleDataProviderSettings"}, - "MicrosoftSqlServerSettings":{"shape":"MicrosoftSqlServerDataProviderSettings"} + "MicrosoftSqlServerSettings":{"shape":"MicrosoftSqlServerDataProviderSettings"}, + "DocDbSettings":{"shape":"DocDbDataProviderSettings"}, + "MariaDbSettings":{"shape":"MariaDbDataProviderSettings"}, + "MongoDbSettings":{"shape":"MongoDbDataProviderSettings"} }, "union":true }, @@ -3014,6 +3018,16 @@ "BucketName":{"shape":"String"} } }, + "DocDbDataProviderSettings":{ + "type":"structure", + "members":{ + "ServerName":{"shape":"String"}, + "Port":{"shape":"IntegerOptional"}, + "DatabaseName":{"shape":"String"}, + "SslMode":{"shape":"DmsSslModeValue"}, + "CertificateArn":{"shape":"String"} + } + }, "DocDbSettings":{ "type":"structure", "members":{ @@ -3334,7 +3348,11 @@ "MaxKBytesPerRead":{"shape":"IntegerOptional"}, "Username":{"shape":"String"}, "SecretsManagerAccessRoleArn":{"shape":"String"}, - "SecretsManagerSecretId":{"shape":"String"} + "SecretsManagerSecretId":{"shape":"String"}, + "LoadTimeout":{"shape":"IntegerOptional"}, + "WriteBufferSize":{"shape":"IntegerOptional"}, + "MaxFileSize":{"shape":"IntegerOptional"}, + "KeepCsvFiles":{"shape":"BooleanOptional"} } }, "ImportCertificateMessage":{ @@ -3586,6 +3604,15 @@ "nclob" ] }, + "MariaDbDataProviderSettings":{ + "type":"structure", + "members":{ + "ServerName":{"shape":"String"}, + "Port":{"shape":"IntegerOptional"}, + "SslMode":{"shape":"DmsSslModeValue"}, + "CertificateArn":{"shape":"String"} + } + }, "MessageFormatValue":{ "type":"string", "enum":[ @@ -3875,6 +3902,19 @@ "ReplicationTask":{"shape":"ReplicationTask"} } }, + "MongoDbDataProviderSettings":{ + "type":"structure", + "members":{ + "ServerName":{"shape":"String"}, + "Port":{"shape":"IntegerOptional"}, + "DatabaseName":{"shape":"String"}, + "SslMode":{"shape":"DmsSslModeValue"}, + "CertificateArn":{"shape":"String"}, + "AuthType":{"shape":"AuthTypeValue"}, + "AuthSource":{"shape":"String"}, + "AuthMechanism":{"shape":"AuthMechanismValue"} + } + }, "MongoDbSettings":{ "type":"structure", "members":{ @@ -3929,7 +3969,8 @@ "ServerTimezone":{"shape":"String"}, "Username":{"shape":"String"}, "SecretsManagerAccessRoleArn":{"shape":"String"}, - "SecretsManagerSecretId":{"shape":"String"} + "SecretsManagerSecretId":{"shape":"String"}, + "ExecuteTimeout":{"shape":"IntegerOptional"} } }, "MySqlDataProviderSettings":{ @@ -4241,6 +4282,14 @@ "SslCaCertificateArn":{"shape":"String"} } }, + "RedshiftDataProviderSettings":{ + "type":"structure", + "members":{ + "ServerName":{"shape":"String"}, + "Port":{"shape":"IntegerOptional"}, + "DatabaseName":{"shape":"String"} + } + }, "RedshiftSettings":{ "type":"structure", "members":{ @@ -4398,7 +4447,8 @@ "RecoveryCheckpoint":{"shape":"String"}, "ReplicationCreateTime":{"shape":"TStamp"}, "ReplicationUpdateTime":{"shape":"TStamp"}, - "ReplicationLastStopTime":{"shape":"TStamp"} + "ReplicationLastStopTime":{"shape":"TStamp"}, + "ReplicationDeprovisionTime":{"shape":"TStamp"} } }, "ReplicationConfig":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -13,7 +13,7 @@ "CreateInstanceProfile": "

Creates the instance profile using the specified parameters.

", "CreateMigrationProject": "

Creates the migration project using the specified parameters.

You can run this action only after you create an instance profile and data providers using CreateInstanceProfile and CreateDataProvider.

", "CreateReplicationConfig": "

Creates a configuration that you can later provide to configure and start an DMS Serverless replication. You can also provide options to validate the configuration inputs before you start the replication.

", - "CreateReplicationInstance": "

Creates the replication instance using the specified parameters.

DMS requires that your account have certain roles with appropriate permissions before you can create a replication instance. For information on the required roles, see Creating the IAM Roles to Use With the CLI and DMS API. For information on the required permissions, see IAM Permissions Needed to Use DMS.

", + "CreateReplicationInstance": "

Creates the replication instance using the specified parameters.

DMS requires that your account have certain roles with appropriate permissions before you can create a replication instance. For information on the required roles, see Creating the IAM Roles to Use With the CLI and DMS API. For information on the required permissions, see IAM Permissions Needed to Use DMS.

If you don't specify a version when creating a replication instance, DMS will create the instance using the default engine version. For information about the default engine version, see Release Notes.

", "CreateReplicationSubnetGroup": "

Creates a replication subnet group given a list of the subnet IDs in a VPC.

The VPC needs to have at least one subnet in at least two availability zones in the Amazon Web Services Region, otherwise the service will throw a ReplicationSubnetGroupDoesNotCoverEnoughAZs exception.

If a replication subnet group exists in your Amazon Web Services account, the CreateReplicationSubnetGroup action returns the following error message: The Replication Subnet Group already exists. In this case, delete the existing replication subnet group. To do so, use the DeleteReplicationSubnetGroup action. Optionally, choose Subnet groups in the DMS console, then choose your subnet group. Next, choose Delete from Actions.

", "CreateReplicationTask": "

Creates a replication task using the specified parameters.

", "DeleteCertificate": "

Deletes the specified certificate.

", @@ -107,7 +107,7 @@ "StopReplication": "

For a given DMS Serverless replication configuration, DMS stops any and all ongoing DMS Serverless replications. This command doesn't deprovision the stopped replications.

", "StopReplicationTask": "

Stops the replication task.

", "TestConnection": "

Tests the connection between the replication instance and the endpoint.

", - "UpdateSubscriptionsToEventBridge": "

Migrates 10 active and enabled Amazon SNS subscriptions at a time and converts them to corresponding Amazon EventBridge rules. By default, this operation migrates subscriptions only when all your replication instance versions are 3.4.6 or higher. If any replication instances are from versions earlier than 3.4.6, the operation raises an error and tells you to upgrade these instances to version 3.4.6 or higher. To enable migration regardless of version, set the Force option to true. However, if you don't upgrade instances earlier than version 3.4.6, some types of events might not be available when you use Amazon EventBridge.

To call this operation, make sure that you have certain permissions added to your user account. For more information, see Migrating event subscriptions to Amazon EventBridge in the Amazon Web Services Database Migration Service User Guide.

" + "UpdateSubscriptionsToEventBridge": "

Migrates 10 active and enabled Amazon SNS subscriptions at a time and converts them to corresponding Amazon EventBridge rules. By default, this operation migrates subscriptions only when all your replication instance versions are 3.4.5 or higher. If any replication instances are from versions earlier than 3.4.5, the operation raises an error and tells you to upgrade these instances to version 3.4.5 or higher. To enable migration regardless of version, set the Force option to true. However, if you don't upgrade instances earlier than version 3.4.5, some types of events might not be available when you use Amazon EventBridge.

To call this operation, make sure that you have certain permissions added to your user account. For more information, see Migrating event subscriptions to Amazon EventBridge in the Amazon Web Services Database Migration Service User Guide.

" }, "shapes": { "AccessDeniedFault": { @@ -168,12 +168,14 @@ "AuthMechanismValue": { "base": null, "refs": { + "MongoDbDataProviderSettings$AuthMechanism": "

The authentication method for connecting to the data provider. Valid values are DEFAULT, MONGODB_CR, or SCRAM_SHA_1.

", "MongoDbSettings$AuthMechanism": "

The authentication mechanism you use to access the MongoDB source endpoint.

For the default value, in MongoDB version 2.x, \"default\" is \"mongodb_cr\". For MongoDB version 3.x or later, \"default\" is \"scram_sha_1\". This setting isn't used when AuthType is set to \"no\".

" } }, "AuthTypeValue": { "base": null, "refs": { + "MongoDbDataProviderSettings$AuthType": "

The authentication type for the database connection. Valid values are PASSWORD or NO.

", "MongoDbSettings$AuthType": "

The authentication type you use to access the MongoDB source endpoint.

When when set to \"no\", user name and password parameters are not used and can be empty.

" } }, @@ -241,7 +243,7 @@ "CreateEventSubscriptionMessage$Enabled": "

A Boolean value; set to true to activate the subscription, or set to false to create the subscription but not activate it.

", "CreateInstanceProfileMessage$PubliclyAccessible": "

Specifies the accessibility options for the instance profile. A value of true represents an instance profile with a public IP address. A value of false represents an instance profile with a private IP address. The default value is true.

", "CreateReplicationInstanceMessage$MultiAZ": "

Specifies whether the replication instance is a Multi-AZ deployment. You can't set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

", - "CreateReplicationInstanceMessage$AutoMinorVersionUpgrade": "

A value that indicates whether minor engine upgrades are applied automatically to the replication instance during the maintenance window. This parameter defaults to true.

Default: true

When AutoMinorVersionUpgrade is enabled, DMS uses the current default engine version when you create a replication instance. For example, if you set EngineVersion to a lower version number than the current default version, DMS uses the default version.

If AutoMinorVersionUpgrade isn’t enabled when you create a replication instance, DMS uses the engine version specified by the EngineVersion parameter.

", + "CreateReplicationInstanceMessage$AutoMinorVersionUpgrade": "

A value that indicates whether minor engine upgrades are applied automatically to the replication instance during the maintenance window. This parameter defaults to true.

Default: true

", "CreateReplicationInstanceMessage$PubliclyAccessible": "

Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address. The default value is true.

", "DescribeReplicationTasksMessage$WithoutSettings": "

An option to set to avoid returning information about settings. Use this to reduce overhead when setting information is too large. To use this option, choose true; otherwise, choose false (the default).

", "DocDbSettings$ExtractDocId": "

Specifies the document ID. Use this setting when NestingLevel is set to \"none\".

Default value is \"false\".

", @@ -251,6 +253,7 @@ "EndpointSetting$Sensitive": "

A value that marks this endpoint setting as sensitive.

", "GcpMySQLSettings$CleanSourceMetadataOnMismatch": "

Cleans and recreates table metadata information on the replication instance when a mismatch occurs. For example, in a situation where running an alter DDL on the table could result in different information about the table cached in the replication instance.

", "IBMDb2Settings$SetDataCaptureChanges": "

Enables ongoing replication (CDC) as a BOOLEAN value. The default is true.

", + "IBMDb2Settings$KeepCsvFiles": "

If true, DMS saves any .csv files to the Db2 LUW target that were used to replicate data. DMS uses these files for analysis and troubleshooting.

The default value is false.

", "InstanceProfile$PubliclyAccessible": "

Specifies the accessibility options for the instance profile. A value of true represents an instance profile with a public IP address. A value of false represents an instance profile with a private IP address. The default value is true.

", "KafkaSettings$IncludeTransactionDetails": "

Provides detailed transaction information from the source database. This information includes a commit timestamp, a log position, and values for transaction_id, previous transaction_id, and transaction_record_id (the record offset within a transaction). The default is false.

", "KafkaSettings$IncludePartitionValue": "

Shows the partition value within the Kafka message output unless the partition type is schema-table-type. The default is false.

", @@ -270,14 +273,14 @@ "MicrosoftSQLServerSettings$ReadBackupOnly": "

When this attribute is set to Y, DMS only reads changes from transaction log backups and doesn't read from the active transaction log file during ongoing replication. Setting this parameter to Y enables you to control active transaction log file growth during full load and ongoing replication tasks. However, it can add some source latency to ongoing replication.

", "MicrosoftSQLServerSettings$UseBcpFullLoad": "

Use this to attribute to transfer data for full-load operations using BCP. When the target table contains an identity column that does not exist in the source table, you must disable the use BCP for loading table option.

", "MicrosoftSQLServerSettings$UseThirdPartyBackupDevice": "

When this attribute is set to Y, DMS processes third-party transaction log backups if they are created in native format.

", - "MicrosoftSQLServerSettings$TrimSpaceInChar": "

Use the TrimSpaceInChar source endpoint setting to trim data on CHAR and NCHAR data types during migration. The default value is true.

", + "MicrosoftSQLServerSettings$TrimSpaceInChar": "

Use the TrimSpaceInChar source endpoint setting to right-trim data on CHAR and NCHAR data types during migration. Setting TrimSpaceInChar does not left-trim data. The default value is true.

", "MicrosoftSQLServerSettings$ForceLobLookup": "

Forces LOB lookup on inline LOB.

", "ModifyDataProviderMessage$ExactSettings": "

If this attribute is Y, the current call to ModifyDataProvider replaces all existing data provider settings with the exact settings that you specify in this call. If this attribute is N, the current call to ModifyDataProvider does two things:

  • It replaces any data provider settings that already exist with new values, for settings with the same names.

  • It creates new data provider settings that you specify in the call, for settings with different names.

", "ModifyEndpointMessage$ExactSettings": "

If this attribute is Y, the current call to ModifyEndpoint replaces all existing endpoint settings with the exact settings that you specify in this call. If this attribute is N, the current call to ModifyEndpoint does two things:

  • It replaces any endpoint settings that already exist with new values, for settings with the same names.

  • It creates new endpoint settings that you specify in the call, for settings with different names.

For example, if you call create-endpoint ... --endpoint-settings '{\"a\":1}' ..., the endpoint has the following endpoint settings: '{\"a\":1}'. If you then call modify-endpoint ... --endpoint-settings '{\"b\":2}' ... for the same endpoint, the endpoint has the following settings: '{\"a\":1,\"b\":2}'.

However, suppose that you follow this with a call to modify-endpoint ... --endpoint-settings '{\"b\":2}' --exact-settings ... for that same endpoint again. Then the endpoint has the following settings: '{\"b\":2}'. All existing settings are replaced with the exact settings that you specify.

", "ModifyEventSubscriptionMessage$Enabled": "

A Boolean value; set to true to activate the subscription.

", "ModifyInstanceProfileMessage$PubliclyAccessible": "

Specifies the accessibility options for the instance profile. A value of true represents an instance profile with a public IP address. A value of false represents an instance profile with a private IP address. The default value is true.

", "ModifyReplicationInstanceMessage$MultiAZ": "

Specifies whether the replication instance is a Multi-AZ deployment. You can't set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

", - "ModifyReplicationInstanceMessage$AutoMinorVersionUpgrade": "

A value that indicates that minor version upgrades are applied automatically to the replication instance during the maintenance window. Changing this parameter doesn't result in an outage, except in the case described following. The change is asynchronously applied as soon as possible.

An outage does result if these factors apply:

  • This parameter is set to true during the maintenance window.

  • A newer minor version is available.

  • DMS has enabled automatic patching for the given engine version.

When AutoMinorVersionUpgrade is enabled, DMS uses the current default engine version when you modify a replication instance. For example, if you set EngineVersion to a lower version number than the current default version, DMS uses the default version.

If AutoMinorVersionUpgrade isn’t enabled when you modify a replication instance, DMS uses the engine version specified by the EngineVersion parameter.

", + "ModifyReplicationInstanceMessage$AutoMinorVersionUpgrade": "

A value that indicates that minor version upgrades are applied automatically to the replication instance during the maintenance window. Changing this parameter doesn't result in an outage, except in the case described following. The change is asynchronously applied as soon as possible.

An outage does result if these factors apply:

  • This parameter is set to true during the maintenance window.

  • A newer minor version is available.

  • DMS has enabled automatic patching for the given engine version.

", "MongoDbSettings$UseUpdateLookUp": "

If true, DMS retrieves the entire document from the MongoDB source during migration. This may cause a migration failure if the server response exceeds bandwidth limits. To fetch only updates and deletes during migration, set this parameter to false.

", "MongoDbSettings$ReplicateShardCollections": "

If true, DMS replicates data to shard collections. DMS only uses this setting if the target endpoint is a DocumentDB elastic cluster.

When this setting is true, note the following:

  • You must set TargetTablePrepMode to nothing.

  • DMS automatically sets useUpdateLookup to false.

", "MySQLSettings$CleanSourceMetadataOnMismatch": "

Cleans and recreates table metadata information on the replication instance when a mismatch occurs. For example, in a situation where running an alter DDL on the table could result in different information about the table cached in the replication instance.

", @@ -302,7 +305,7 @@ "PostgreSQLSettings$FailTasksOnLobTruncation": "

When set to true, this value causes a task to fail if the actual size of a LOB column is greater than the specified LobMaxSize.

If task is set to Limited LOB mode and this option is set to true, the task fails instead of truncating the LOB data.

", "PostgreSQLSettings$HeartbeatEnable": "

The write-ahead log (WAL) heartbeat feature mimics a dummy transaction. By doing this, it prevents idle logical replication slots from holding onto old WAL logs, which can result in storage full situations on the source. This heartbeat keeps restart_lsn moving and prevents storage full scenarios.

", "PostgreSQLSettings$TrimSpaceInChar": "

Use the TrimSpaceInChar source endpoint setting to trim data on CHAR and NCHAR data types during migration. The default value is true.

", - "PostgreSQLSettings$MapBooleanAsBoolean": "

When true, lets PostgreSQL migrate the boolean type as boolean. By default, PostgreSQL migrates booleans as varchar(5).

", + "PostgreSQLSettings$MapBooleanAsBoolean": "

When true, lets PostgreSQL migrate the boolean type as boolean. By default, PostgreSQL migrates booleans as varchar(5). You must set this setting on both the source and target endpoints for it to take effect.

", "PostgreSQLSettings$MapJsonbAsClob": "

When true, DMS migrates JSONB values as CLOB.

", "RebootReplicationInstanceMessage$ForceFailover": "

If this parameter is true, the reboot is conducted through a Multi-AZ failover. If the instance isn't configured for Multi-AZ, then you can't specify true. ( --force-planned-failover and --force-failover can't both be set to true.)

", "RebootReplicationInstanceMessage$ForcePlannedFailover": "

If this parameter is true, the reboot is conducted through a planned Multi-AZ failover where resources are released and cleaned up prior to conducting the failover. If the instance isn''t configured for Multi-AZ, then you can't specify true. ( --force-planned-failover and --force-failover can't both be set to true.)

", @@ -315,7 +318,7 @@ "RedshiftSettings$RemoveQuotes": "

A value that specifies to remove surrounding quotation marks from strings in the incoming data. All characters within the quotation marks, including delimiters, are retained. Choose true to remove quotation marks. The default is false.

", "RedshiftSettings$TrimBlanks": "

A value that specifies to remove the trailing white space characters from a VARCHAR string. This parameter applies only to columns with a VARCHAR data type. Choose true to remove unneeded white space. The default is false.

", "RedshiftSettings$TruncateColumns": "

A value that specifies to truncate data in columns to the appropriate number of characters, so that the data fits in the column. This parameter applies only to columns with a VARCHAR or CHAR data type, and rows with a size of 4 MB or less. Choose true to truncate data. The default is false.

", - "RedshiftSettings$MapBooleanAsBoolean": "

When true, lets Redshift migrate the boolean type as boolean. By default, Redshift migrates booleans as varchar(1).

", + "RedshiftSettings$MapBooleanAsBoolean": "

When true, lets Redshift migrate the boolean type as boolean. By default, Redshift migrates booleans as varchar(1). You must set this setting on both the source and target endpoints for it to take effect.

", "ReplicationPendingModifiedValues$MultiAZ": "

Specifies whether the replication instance is a Multi-AZ deployment. You can't set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

", "S3Settings$EnableStatistics": "

A value that enables statistics for Parquet pages and row groups. Choose true to enable statistics, false to disable. Statistics include NULL, DISTINCT, MAX, and MIN values. This parameter defaults to true. This value is used for .parquet file format only.

", "S3Settings$IncludeOpForFullLoad": "

A value that enables a full load to write INSERT operations to the comma-separated value (.csv) or .parquet output files only to indicate how the rows were added to the source database.

DMS supports the IncludeOpForFullLoad parameter in versions 3.1.4 and later.

DMS supports the use of the .parquet files with the IncludeOpForFullLoad parameter in versions 3.4.7 and later.

For full load, records can only be inserted. By default (the false setting), no information is recorded in these output files for a full load to indicate that the rows were inserted at the source database. If IncludeOpForFullLoad is set to true or y, the INSERT is recorded as an I annotation in the first field of the .csv file. This allows the format of your target records from a full load to be consistent with the target records from a CDC load.

This setting works together with the CdcInsertsOnly and the CdcInsertsAndUpdates parameters for output to .csv files only. For more information about how these settings work together, see Indicating Source DB Operations in Migrated S3 Data in the Database Migration Service User Guide..

", @@ -334,7 +337,7 @@ "TableStatistics$FullLoadReloaded": "

A value that indicates if the table was reloaded (true) or loaded as part of a new full load operation (false).

", "TimestreamSettings$CdcInsertsAndUpdates": "

Set this attribute to true to specify that DMS only applies inserts and updates, and not deletes. Amazon Timestream does not allow deleting records, so if this value is false, DMS nulls out the corresponding record in the Timestream database rather than deleting it.

", "TimestreamSettings$EnableMagneticStoreWrites": "

Set this attribute to true to enable memory store writes. When this value is false, DMS does not write records that are older in days than the value specified in MagneticDuration, because Amazon Timestream does not allow memory writes by default. For more information, see Storage in the Amazon Timestream Developer Guide.

", - "UpdateSubscriptionsToEventBridgeMessage$ForceMove": "

When set to true, this operation migrates DMS subscriptions for Amazon SNS notifications no matter what your replication instance version is. If not set or set to false, this operation runs only when all your replication instances are from DMS version 3.4.6 or higher.

" + "UpdateSubscriptionsToEventBridgeMessage$ForceMove": "

When set to true, this operation migrates DMS subscriptions for Amazon SNS notifications no matter what your replication instance version is. If not set or set to false, this operation runs only when all your replication instances are from DMS version 3.4.5 or higher.

" } }, "CancelReplicationTaskAssessmentRunMessage": { @@ -1223,9 +1226,12 @@ "base": null, "refs": { "CreateEndpointMessage$SslMode": "

The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default is none

", + "DocDbDataProviderSettings$SslMode": "

The SSL mode used to connect to the DocumentDB data provider. The default value is none.

", "Endpoint$SslMode": "

The SSL mode used to connect to the endpoint. The default value is none.

", + "MariaDbDataProviderSettings$SslMode": "

The SSL mode used to connect to the MariaDB data provider. The default value is none.

", "MicrosoftSqlServerDataProviderSettings$SslMode": "

The SSL mode used to connect to the Microsoft SQL Server data provider. The default value is none.

", "ModifyEndpointMessage$SslMode": "

The SSL mode used to connect to the endpoint. The default value is none.

", + "MongoDbDataProviderSettings$SslMode": "

The SSL mode used to connect to the MongoDB data provider. The default value is none.

", "MySqlDataProviderSettings$SslMode": "

The SSL mode used to connect to the MySQL data provider. The default value is none.

", "OracleDataProviderSettings$SslMode": "

The SSL mode used to connect to the Oracle data provider. The default value is none.

", "PostgreSqlDataProviderSettings$SslMode": "

The SSL mode used to connect to the PostgreSQL data provider. The default value is none.

" @@ -1239,6 +1245,12 @@ "ModifyEndpointMessage$DmsTransferSettings": "

The settings in JSON format for the DMS transfer type of source endpoint.

Attributes include the following:

  • serviceAccessRoleArn - The Amazon Resource Name (ARN) used by the service access IAM role. The role must allow the iam:PassRole action.

  • BucketName - The name of the S3 bucket to use.

Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string ,BucketName=string

JSON syntax for these settings is as follows: { \"ServiceAccessRoleArn\": \"string\", \"BucketName\": \"string\"}

" } }, + "DocDbDataProviderSettings": { + "base": "

Provides information that defines a DocumentDB data provider.

", + "refs": { + "DataProviderSettings$DocDbSettings": null + } + }, "DocDbSettings": { "base": "

Provides information that defines a DocumentDB endpoint.

", "refs": { @@ -1463,7 +1475,7 @@ "refs": { "DescribeCertificatesMessage$Filters": "

Filters applied to the certificates described in the form of key-value pairs. Valid values are certificate-arn and certificate-id.

", "DescribeConnectionsMessage$Filters": "

The filters applied to the connection.

Valid filter names: endpoint-arn | replication-instance-arn

", - "DescribeDataProvidersMessage$Filters": "

Filters applied to the data providers described in the form of key-value pairs.

", + "DescribeDataProvidersMessage$Filters": "

Filters applied to the data providers described in the form of key-value pairs.

Valid filter names: data-provider-identifier

", "DescribeEndpointTypesMessage$Filters": "

Filters applied to the endpoint types.

Valid filter names: engine-name | endpoint-type

", "DescribeEndpointsMessage$Filters": "

Filters applied to the endpoints.

Valid filter names: endpoint-arn | endpoint-type | endpoint-id | engine-name

", "DescribeEventCategoriesMessage$Filters": "

Filters applied to the event categories.

", @@ -1624,8 +1636,8 @@ "base": null, "refs": { "Certificate$KeyLength": "

The key length of the cryptographic algorithm being used.

", - "ComputeConfig$MaxCapacityUnits": "

Specifies the maximum value of the DMS capacity units (DCUs) for which a given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM, with 2 DCUs as the minimum value allowed. The list of valid DCU values includes 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value that you can specify for DMS Serverless is 384. The MaxCapacityUnits parameter is the only DCU parameter you are required to specify.

", - "ComputeConfig$MinCapacityUnits": "

Specifies the minimum value of the DMS capacity units (DCUs) for which a given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM, with 2 DCUs as the minimum value allowed. The list of valid DCU values includes 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU value that you can specify for DMS Serverless is 2. You don't have to specify a value for the MinCapacityUnits parameter. If you don't set this value, DMS scans the current activity of available source tables to identify an optimum setting for this parameter. If there is no current source activity or DMS can't otherwise identify a more appropriate value, it sets this parameter to the minimum DCU value allowed, 2.

", + "ComputeConfig$MaxCapacityUnits": "

Specifies the maximum value of the DMS capacity units (DCUs) for which a given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM, with 1 DCU as the minimum value allowed. The list of valid DCU values includes 1, 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value that you can specify for DMS Serverless is 384. The MaxCapacityUnits parameter is the only DCU parameter you are required to specify.

", + "ComputeConfig$MinCapacityUnits": "

Specifies the minimum value of the DMS capacity units (DCUs) for which a given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM, with 1 DCU as the minimum value allowed. The list of valid DCU values includes 1, 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU value that you can specify for DMS Serverless is 1. You don't have to specify a value for the MinCapacityUnits parameter. If you don't set this value, DMS scans the current activity of available source tables to identify an optimum setting for this parameter. If there is no current source activity or DMS can't otherwise identify a more appropriate value, it sets this parameter to the minimum DCU value allowed, 1.

", "CreateEndpointMessage$Port": "

The port used by the endpoint database.

", "CreateReplicationInstanceMessage$AllocatedStorage": "

The amount of storage (in gigabytes) to be initially allocated for the replication instance.

", "DatabaseInstanceSoftwareDetailsResponse$OsArchitecture": "

The operating system architecture of the database.

", @@ -1669,6 +1681,7 @@ "DescribeReplicationsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

", "DescribeSchemasMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeTableStatisticsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: Minimum 20, maximum 500.

", + "DocDbDataProviderSettings$Port": "

The port value for the DocumentDB data provider.

", "DocDbSettings$Port": "

The port value for the DocumentDB source endpoint.

", "DocDbSettings$DocsToInvestigate": "

Indicates the number of documents to preview to determine the document organization. Use this setting when NestingLevel is set to \"one\".

Must be a positive value greater than 0. Default value is 1000.

", "ElasticsearchSettings$FullLoadErrorPercentage": "

The maximum percentage of records that can fail to be written before a full load operation stops.

To avoid early failure, this counter is only effective after 1000 records are transferred. OpenSearch also has the concept of error monitoring during the last 10 minutes of an Observation Window. If transfer of all records fail in the last 10 minutes, the full load operation stops.

", @@ -1682,19 +1695,25 @@ "GcpMySQLSettings$Port": "

Endpoint TCP port.

", "IBMDb2Settings$Port": "

Endpoint TCP port. The default value is 50000.

", "IBMDb2Settings$MaxKBytesPerRead": "

Maximum number of bytes per read, as a NUMBER value. The default is 64 KB.

", + "IBMDb2Settings$LoadTimeout": "

The amount of time (in milliseconds) before DMS times out operations performed by DMS on the Db2 target. The default value is 1200 (20 minutes).

", + "IBMDb2Settings$WriteBufferSize": "

The size (in KB) of the in-memory file write buffer used when generating .csv files on the local disk on the DMS replication instance. The default value is 1024 (1 MB).

", + "IBMDb2Settings$MaxFileSize": "

Specifies the maximum size (in KB) of .csv files used to transfer data to Db2 LUW.

", "InventoryData$NumberOfDatabases": "

The number of databases in the Fleet Advisor collector inventory.

", "InventoryData$NumberOfSchemas": "

The number of schemas in the Fleet Advisor collector inventory.

", "KafkaSettings$MessageMaxBytes": "

The maximum size in bytes for records created on the endpoint The default is 1,000,000.

", + "MariaDbDataProviderSettings$Port": "

The port value for the MariaDB data provider

", "MicrosoftSQLServerSettings$Port": "

Endpoint TCP port.

", "MicrosoftSQLServerSettings$BcpPacketSize": "

The maximum size of the packets (in bytes) used to transfer data using BCP.

", "MicrosoftSqlServerDataProviderSettings$Port": "

The port value for the Microsoft SQL Server data provider.

", "ModifyEndpointMessage$Port": "

The port used by the endpoint database.

", "ModifyReplicationInstanceMessage$AllocatedStorage": "

The amount of storage (in gigabytes) to be allocated for the replication instance.

", + "MongoDbDataProviderSettings$Port": "

The port value for the MongoDB data provider.

", "MongoDbSettings$Port": "

The port value for the MongoDB source endpoint.

", "MySQLSettings$EventsPollInterval": "

Specifies how often to check the binary log for new changes/events when the database is idle. The default is five seconds.

Example: eventsPollInterval=5;

In the example, DMS checks for changes in the binary logs every five seconds.

", "MySQLSettings$MaxFileSize": "

Specifies the maximum size (in KB) of any .csv file used to transfer data to a MySQL-compatible database.

Example: maxFileSize=512

", "MySQLSettings$ParallelLoadThreads": "

Improves performance when loading data into the MySQL-compatible target database. Specifies how many threads to use to load the data into the MySQL-compatible target database. Setting a large number of threads can have an adverse effect on database performance, because a separate connection is required for each thread. The default is one.

Example: parallelLoadThreads=1

", "MySQLSettings$Port": "

Endpoint TCP port.

", + "MySQLSettings$ExecuteTimeout": "

Sets the client statement timeout (in seconds) for a MySQL source endpoint.

", "MySqlDataProviderSettings$Port": "

The port value for the MySQL data provider.

", "NeptuneSettings$ErrorRetryDuration": "

The number of milliseconds for DMS to wait to retry a bulk-load of migrated graph data to the Neptune target database before raising an error. The default is 250.

", "NeptuneSettings$MaxFileSize": "

The maximum size in kilobytes of migrated graph data stored in a .csv file before DMS bulk-loads the data to the Neptune target database. The default is 1,048,576 KB. If the bulk load is successful, DMS clears the bucket, ready to store the next batch of migrated graph data.

", @@ -1718,6 +1737,7 @@ "RdsConfiguration$StorageIops": "

Describes the number of I/O operations completed each second (IOPS) on the recommended Amazon RDS DB instance that meets your requirements.

", "RdsRequirements$StorageSize": "

The required Amazon RDS DB instance storage size.

", "RdsRequirements$StorageIops": "

The required number of I/O operations completed each second (IOPS) on your Amazon RDS DB instance.

", + "RedshiftDataProviderSettings$Port": "

The port value for the Amazon Redshift data provider.

", "RedshiftSettings$ConnectionTimeout": "

A value that sets the amount of time to wait (in milliseconds) before timing out, beginning from when you initially establish a connection.

", "RedshiftSettings$FileTransferUploadStreams": "

The number of threads used to upload a single file. This parameter accepts a value from 1 through 64. It defaults to 10.

The number of parallel streams used to upload a single .csv file to an S3 bucket using S3 Multipart Upload. For more information, see Multipart upload overview.

FileTransferUploadStreams accepts a value from 1 through 64. It defaults to 10.

", "RedshiftSettings$LoadTimeout": "

The amount of time to wait (in milliseconds) before timing out of operations performed by DMS on a Redshift cluster, such as Redshift COPY, INSERT, DELETE, and UPDATE.

", @@ -1909,6 +1929,12 @@ "PostgreSQLSettings$MapLongVarcharAs": "

When true, DMS migrates LONG values as VARCHAR.

" } }, + "MariaDbDataProviderSettings": { + "base": "

Provides information that defines a MariaDB data provider.

", + "refs": { + "DataProviderSettings$MariaDbSettings": "

Provides information that defines a MariaDB data provider.

" + } + }, "MessageFormatValue": { "base": null, "refs": { @@ -2058,6 +2084,12 @@ "refs": { } }, + "MongoDbDataProviderSettings": { + "base": "

Provides information that defines a MongoDB data provider.

", + "refs": { + "DataProviderSettings$MongoDbSettings": "

Provides information that defines a MongoDB data provider.

" + } + }, "MongoDbSettings": { "base": "

Provides information that defines a MongoDB endpoint.

", "refs": { @@ -2256,6 +2288,12 @@ "ModifyEndpointMessage$RedisSettings": "

Settings in JSON format for the Redis target endpoint.

" } }, + "RedshiftDataProviderSettings": { + "base": "

Provides information that defines an Amazon Redshift data provider.

", + "refs": { + "DataProviderSettings$RedshiftSettings": null + } + }, "RedshiftSettings": { "base": "

Provides information that defines an Amazon Redshift endpoint.

", "refs": { @@ -2877,7 +2915,7 @@ "Connection$ReplicationInstanceIdentifier": "

The replication instance identifier. This parameter is stored as a lowercase string.

", "CreateDataProviderMessage$DataProviderName": "

A user-friendly name for the data provider.

", "CreateDataProviderMessage$Description": "

A user-friendly description of the data provider.

", - "CreateDataProviderMessage$Engine": "

The type of database engine for the data provider. Valid values include \"aurora\", \"aurora_postgresql\", \"mysql\", \"oracle\", \"postgres\", and \"sqlserver\". A value of \"aurora\" represents Amazon Aurora MySQL-Compatible Edition.

", + "CreateDataProviderMessage$Engine": "

The type of database engine for the data provider. Valid values include \"aurora\", \"aurora-postgresql\", \"mysql\", \"oracle\", \"postgres\", \"sqlserver\", redshift, mariadb, mongodb, and docdb. A value of \"aurora\" represents Amazon Aurora MySQL-Compatible Edition.

", "CreateEndpointMessage$EndpointIdentifier": "

The database endpoint identifier. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen, or contain two consecutive hyphens.

", "CreateEndpointMessage$EngineName": "

The type of engine for the endpoint. Valid values, depending on the EndpointType value, include \"mysql\", \"oracle\", \"postgres\", \"mariadb\", \"aurora\", \"aurora-postgresql\", \"opensearch\", \"redshift\", \"s3\", \"db2\", \"db2-zos\", \"azuredb\", \"sybase\", \"dynamodb\", \"mongodb\", \"kinesis\", \"kafka\", \"elasticsearch\", \"docdb\", \"sqlserver\", \"neptune\", and \"babelfish\".

", "CreateEndpointMessage$Username": "

The user name to be used to log in to the endpoint database.

", @@ -2937,13 +2975,13 @@ "CreateReplicationTaskMessage$TableMappings": "

The table mappings for the task, in JSON format. For more information, see Using Table Mapping to Specify Task Settings in the Database Migration Service User Guide.

", "CreateReplicationTaskMessage$ReplicationTaskSettings": "

Overall settings for the task, in JSON format. For more information, see Specifying Task Settings for Database Migration Service Tasks in the Database Migration Service User Guide.

", "CreateReplicationTaskMessage$CdcStartPosition": "

Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

The value can be in date, checkpoint, or LSN/SCN format.

Date Example: --cdc-start-position “2018-03-08T12:12:12”

Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the slotName extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for DMS.

", - "CreateReplicationTaskMessage$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“

", + "CreateReplicationTaskMessage$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“

", "CreateReplicationTaskMessage$TaskData": "

Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see Specifying Supplemental Data for Task Settings in the Database Migration Service User Guide.

", "CreateReplicationTaskMessage$ResourceIdentifier": "

A friendly name for the resource identifier at the end of the EndpointArn response parameter that is returned in the created Endpoint object. The value for this parameter can have up to 31 characters. It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1. For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1. If you don't specify a ResourceIdentifier value, DMS generates a default identifier value for the end of EndpointArn.

", "DataProvider$DataProviderName": "

The name of the data provider.

", "DataProvider$DataProviderArn": "

The Amazon Resource Name (ARN) string that uniquely identifies the data provider.

", "DataProvider$Description": "

A description of the data provider. Descriptions can have up to 31 characters. A description can contain only ASCII letters, digits, and hyphens ('-'). Also, it can't end with a hyphen or contain two consecutive hyphens, and can only begin with a letter.

", - "DataProvider$Engine": "

The type of database engine for the data provider. Valid values include \"aurora\", \"aurora_postgresql\", \"mysql\", \"oracle\", \"postgres\", and \"sqlserver\". A value of \"aurora\" represents Amazon Aurora MySQL-Compatible Edition.

", + "DataProvider$Engine": "

The type of database engine for the data provider. Valid values include \"aurora\", \"aurora-postgresql\", \"mysql\", \"oracle\", \"postgres\", \"sqlserver\", redshift, mariadb, mongodb, and docdb. A value of \"aurora\" represents Amazon Aurora MySQL-Compatible Edition.

", "DataProviderDescriptor$SecretsManagerSecretId": "

The identifier of the Amazon Web Services Secrets Manager Secret used to store access credentials for the data provider.

", "DataProviderDescriptor$SecretsManagerAccessRoleArn": "

The ARN of the role used to access Amazon Web Services Secrets Manager.

", "DataProviderDescriptor$DataProviderName": "

The user-friendly name of the data provider.

", @@ -3088,6 +3126,9 @@ "DescribeTableStatisticsResponse$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DmsTransferSettings$ServiceAccessRoleArn": "

The Amazon Resource Name (ARN) used by the service access IAM role. The role must allow the iam:PassRole action.

", "DmsTransferSettings$BucketName": "

The name of the S3 bucket to use.

", + "DocDbDataProviderSettings$ServerName": "

The name of the source DocumentDB server.

", + "DocDbDataProviderSettings$DatabaseName": "

The database name on the DocumentDB data provider.

", + "DocDbDataProviderSettings$CertificateArn": "

The Amazon Resource Name (ARN) of the certificate used for SSL connection.

", "DocDbSettings$Username": "

The user name you use to access the DocumentDB source endpoint.

", "DocDbSettings$ServerName": "

The name of the server on the DocumentDB source endpoint.

", "DocDbSettings$DatabaseName": "

The database name on the DocumentDB source endpoint.

", @@ -3098,7 +3139,7 @@ "ElasticsearchSettings$ServiceAccessRoleArn": "

The Amazon Resource Name (ARN) used by the service to access the IAM role. The role must allow the iam:PassRole action.

", "ElasticsearchSettings$EndpointUri": "

The endpoint for the OpenSearch cluster. DMS uses HTTPS if a transport protocol (http/https) is not specified.

", "Endpoint$EndpointIdentifier": "

The database endpoint identifier. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.

", - "Endpoint$EngineName": "

The database engine name. Valid values, depending on the EndpointType, include \"mysql\", \"oracle\", \"postgres\", \"mariadb\", \"aurora\", \"aurora-postgresql\", \"redshift\", \"s3\", \"db2\", \"db2-zos\", \"azuredb\", \"sybase\", \"dynamodb\", \"mongodb\", \"kinesis\", \"kafka\", \"elasticsearch\", \"documentdb\", \"sqlserver\", \"neptune\", and \"babelfish\".

", + "Endpoint$EngineName": "

The database engine name. Valid values, depending on the EndpointType, include \"mysql\", \"oracle\", \"postgres\", \"mariadb\", \"aurora\", \"aurora-postgresql\", \"redshift\", \"redshift-serverless\", \"s3\", \"db2\", \"db2-zos\", \"azuredb\", \"sybase\", \"dynamodb\", \"mongodb\", \"kinesis\", \"kafka\", \"elasticsearch\", \"documentdb\", \"sqlserver\", \"neptune\", and \"babelfish\".

", "Endpoint$EngineDisplayName": "

The expanded name for the engine name. For example, if the EngineName parameter is \"aurora\", this value would be \"Amazon Aurora MySQL\".

", "Endpoint$Username": "

The user name used to connect to the endpoint.

", "Endpoint$ServerName": "

The name of the server at the endpoint.

", @@ -3181,6 +3222,8 @@ "Limitation$Impact": "

The impact of the limitation. You can use this parameter to prioritize limitations that you want to address. Valid values include \"Blocker\", \"High\", \"Medium\", and \"Low\".

", "Limitation$Type": "

The type of the limitation, such as action required, upgrade required, and limited feature.

", "ListTagsForResourceMessage$ResourceArn": "

The Amazon Resource Name (ARN) string that uniquely identifies the DMS resource to list tags for. This returns a list of keys (names of tags) created for the resource and their associated tag values.

", + "MariaDbDataProviderSettings$ServerName": "

The name of the MariaDB server.

", + "MariaDbDataProviderSettings$CertificateArn": "

The Amazon Resource Name (ARN) of the certificate used for SSL connection.

", "MicrosoftSQLServerSettings$DatabaseName": "

Database name for the endpoint.

", "MicrosoftSQLServerSettings$ControlTablesFileGroup": "

Specifies a file group for the DMS internal tables. When the replication task starts, all the internal DMS control tables (awsdms_ apply_exception, awsdms_apply, awsdms_changes) are created for the specified file group.

", "MicrosoftSQLServerSettings$ServerName": "

Fully qualified domain name of the endpoint. For an Amazon RDS SQL Server instance, this is the output of DescribeDBInstances, in the Endpoint.Address field.

", @@ -3202,7 +3245,7 @@ "ModifyDataProviderMessage$DataProviderIdentifier": "

The identifier of the data provider. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen, or contain two consecutive hyphens.

", "ModifyDataProviderMessage$DataProviderName": "

The name of the data provider.

", "ModifyDataProviderMessage$Description": "

A user-friendly description of the data provider.

", - "ModifyDataProviderMessage$Engine": "

The type of database engine for the data provider. Valid values include \"aurora\", \"aurora_postgresql\", \"mysql\", \"oracle\", \"postgres\", and \"sqlserver\". A value of \"aurora\" represents Amazon Aurora MySQL-Compatible Edition.

", + "ModifyDataProviderMessage$Engine": "

The type of database engine for the data provider. Valid values include \"aurora\", \"aurora-postgresql\", \"mysql\", \"oracle\", \"postgres\", \"sqlserver\", redshift, mariadb, mongodb, and docdb. A value of \"aurora\" represents Amazon Aurora MySQL-Compatible Edition.

", "ModifyEndpointMessage$EndpointArn": "

The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

", "ModifyEndpointMessage$EndpointIdentifier": "

The database endpoint identifier. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.

", "ModifyEndpointMessage$EngineName": "

The database engine name. Valid values, depending on the EndpointType, include \"mysql\", \"oracle\", \"postgres\", \"mariadb\", \"aurora\", \"aurora-postgresql\", \"redshift\", \"s3\", \"db2\", \"db2-zos\", \"azuredb\", \"sybase\", \"dynamodb\", \"mongodb\", \"kinesis\", \"kafka\", \"elasticsearch\", \"documentdb\", \"sqlserver\", \"neptune\", and \"babelfish\".

", @@ -3248,10 +3291,14 @@ "ModifyReplicationTaskMessage$TableMappings": "

When using the CLI or boto3, provide the path of the JSON file that contains the table mappings. Precede the path with file://. For example, --table-mappings file://mappingfile.json. When working with the DMS API, provide the JSON as the parameter value.

", "ModifyReplicationTaskMessage$ReplicationTaskSettings": "

JSON file that contains settings for the task, such as task metadata settings.

", "ModifyReplicationTaskMessage$CdcStartPosition": "

Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

The value can be in date, checkpoint, or LSN/SCN format.

Date Example: --cdc-start-position “2018-03-08T12:12:12”

Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the slotName extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for DMS.

", - "ModifyReplicationTaskMessage$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“

", + "ModifyReplicationTaskMessage$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“

", "ModifyReplicationTaskMessage$TaskData": "

Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see Specifying Supplemental Data for Task Settings in the Database Migration Service User Guide.

", + "MongoDbDataProviderSettings$ServerName": "

The name of the MongoDB server.

", + "MongoDbDataProviderSettings$DatabaseName": "

The database name on the MongoDB data provider.

", + "MongoDbDataProviderSettings$CertificateArn": "

The Amazon Resource Name (ARN) of the certificate used for SSL connection.

", + "MongoDbDataProviderSettings$AuthSource": "

The MongoDB database name. This setting isn't used when AuthType is set to \"no\".

The default is \"admin\".

", "MongoDbSettings$Username": "

The user name you use to access the MongoDB source endpoint.

", - "MongoDbSettings$ServerName": "

The name of the server on the MongoDB source endpoint.

", + "MongoDbSettings$ServerName": "

The name of the server on the MongoDB source endpoint. For MongoDB Atlas, provide the server name for any of the servers in the replication set.

", "MongoDbSettings$DatabaseName": "

The database name on the MongoDB source endpoint.

", "MongoDbSettings$ExtractDocId": "

Specifies the document ID. Use this setting when NestingLevel is set to \"none\".

Default value is \"false\".

", "MongoDbSettings$DocsToInvestigate": "

Indicates the number of documents to preview to determine the document organization. Use this setting when NestingLevel is set to \"one\".

Must be a positive value greater than 0. Default value is 1000.

", @@ -3292,7 +3339,7 @@ "OracleSettings$Username": "

Endpoint connection user name.

", "OracleSettings$SecretsManagerAccessRoleArn": "

The full Amazon Resource Name (ARN) of the IAM role that specifies DMS as the trusted entity and grants the required permissions to access the value in SecretsManagerSecret. The role must allow the iam:PassRole action. SecretsManagerSecret has the value of the Amazon Web Services Secrets Manager secret that allows access to the Oracle endpoint.

You can specify one of two sets of values for these permissions. You can specify the values for this setting and SecretsManagerSecretId. Or you can specify clear-text values for UserName, Password, ServerName, and Port. You can't specify both. For more information on creating this SecretsManagerSecret and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to access it, see Using secrets to access Database Migration Service resources in the Database Migration Service User Guide.

", "OracleSettings$SecretsManagerSecretId": "

The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that contains the Oracle endpoint connection details.

", - "OracleSettings$SecretsManagerOracleAsmAccessRoleArn": "

Required only if your Oracle endpoint uses Automatic Storage Management (ASM). The full ARN of the IAM role that specifies DMS as the trusted entity and grants the required permissions to access the SecretsManagerOracleAsmSecret. This SecretsManagerOracleAsmSecret has the secret value that allows access to the Oracle ASM of the endpoint.

You can specify one of two sets of values for these permissions. You can specify the values for this setting and SecretsManagerOracleAsmSecretId. Or you can specify clear-text values for AsmUserName, AsmPassword, and AsmServerName. You can't specify both. For more information on creating this SecretsManagerOracleAsmSecret and the SecretsManagerOracleAsmAccessRoleArn and SecretsManagerOracleAsmSecretId required to access it, see Using secrets to access Database Migration Service resources in the Database Migration Service User Guide.

", + "OracleSettings$SecretsManagerOracleAsmAccessRoleArn": "

Required only if your Oracle endpoint uses Automatic Storage Management (ASM). The full ARN of the IAM role that specifies DMS as the trusted entity and grants the required permissions to access the SecretsManagerOracleAsmSecret. This SecretsManagerOracleAsmSecret has the secret value that allows access to the Oracle ASM of the endpoint.

You can specify one of two sets of values for these permissions. You can specify the values for this setting and SecretsManagerOracleAsmSecretId. Or you can specify clear-text values for AsmUser, AsmPassword, and AsmServerName. You can't specify both. For more information on creating this SecretsManagerOracleAsmSecret and the SecretsManagerOracleAsmAccessRoleArn and SecretsManagerOracleAsmSecretId required to access it, see Using secrets to access Database Migration Service resources in the Database Migration Service User Guide.

", "OracleSettings$SecretsManagerOracleAsmSecretId": "

Required only if your Oracle endpoint uses Automatic Storage Management (ASM). The full ARN, partial ARN, or friendly name of the SecretsManagerOracleAsmSecret that contains the Oracle ASM connection details for the Oracle endpoint.

", "OrderableReplicationInstance$EngineVersion": "

The version of the replication engine.

", "OrderableReplicationInstance$ReplicationInstanceClass": "

The compute and memory capacity of the replication instance as defined for the specified replication instance class. For example to specify the instance class dms.c4.large, set this parameter to \"dms.c4.large\".

For more information on the settings and capacities for the available replication instance classes, see Selecting the right DMS replication instance for your migration.

", @@ -3333,6 +3380,8 @@ "RedisSettings$ServerName": "

Fully qualified domain name of the endpoint.

", "RedisSettings$AuthUserName": "

The user name provided with the auth-role option of the AuthType setting for a Redis target endpoint.

", "RedisSettings$SslCaCertificateArn": "

The Amazon Resource Name (ARN) for the certificate authority (CA) that DMS uses to connect to your Redis target endpoint.

", + "RedshiftDataProviderSettings$ServerName": "

The name of the Amazon Redshift server.

", + "RedshiftDataProviderSettings$DatabaseName": "

The database name on the Amazon Redshift data provider.

", "RedshiftSettings$AfterConnectScript": "

Code to run after connecting. This parameter should contain the code itself, not the name of a file containing the code.

", "RedshiftSettings$BucketFolder": "

An S3 folder where the comma-separated-value (.csv) files are stored before being uploaded to the target Redshift cluster.

For full load mode, DMS converts source records into .csv files and loads them to the BucketFolder/TableID path. DMS uses the Redshift COPY command to upload the .csv files to the target table. The files are deleted once the COPY operation has finished. For more information, see COPY in the Amazon Redshift Database Developer Guide.

For change-data-capture (CDC) mode, DMS creates a NetChanges table, and loads the .csv files to this BucketFolder/NetChangesTableID path.

", "RedshiftSettings$BucketName": "

The name of the intermediate S3 bucket used to store .csv files before uploading data to Redshift.

", @@ -3409,7 +3458,7 @@ "ReplicationTask$LastFailureMessage": "

The last error (failure) message generated for the replication task.

", "ReplicationTask$StopReason": "

The reason the replication task was stopped. This response parameter can return one of the following values:

  • \"Stop Reason NORMAL\"

  • \"Stop Reason RECOVERABLE_ERROR\"

  • \"Stop Reason FATAL_ERROR\"

  • \"Stop Reason FULL_LOAD_ONLY_FINISHED\"

  • \"Stop Reason STOPPED_AFTER_FULL_LOAD\" – Full load completed, with cached changes not applied

  • \"Stop Reason STOPPED_AFTER_CACHED_EVENTS\" – Full load completed, with cached changes applied

  • \"Stop Reason EXPRESS_LICENSE_LIMITS_REACHED\"

  • \"Stop Reason STOPPED_AFTER_DDL_APPLY\" – User-defined stop task after DDL applied

  • \"Stop Reason STOPPED_DUE_TO_LOW_MEMORY\"

  • \"Stop Reason STOPPED_DUE_TO_LOW_DISK\"

  • \"Stop Reason STOPPED_AT_SERVER_TIME\" – User-defined server time for stopping task

  • \"Stop Reason STOPPED_AT_COMMIT_TIME\" – User-defined commit time for stopping task

  • \"Stop Reason RECONFIGURATION_RESTART\"

  • \"Stop Reason RECYCLE_TASK\"

", "ReplicationTask$CdcStartPosition": "

Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want the CDC operation to start. Specifying both values results in an error.

The value can be in date, checkpoint, or LSN/SCN format.

Date Example: --cdc-start-position “2018-03-08T12:12:12”

Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

", - "ReplicationTask$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“

", + "ReplicationTask$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“

", "ReplicationTask$RecoveryCheckpoint": "

Indicates the last checkpoint that occurred during a change data capture (CDC) operation. You can provide this value to the CdcStartPosition parameter to start a CDC operation that begins at that checkpoint.

", "ReplicationTask$ReplicationTaskArn": "

The Amazon Resource Name (ARN) of the replication task.

", "ReplicationTask$TaskData": "

Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see Specifying Supplemental Data for Task Settings in the Database Migration Service User Guide.

", @@ -3447,7 +3496,7 @@ "S3Settings$TimestampColumnName": "

A value that when nonblank causes DMS to add a column with timestamp information to the endpoint data for an Amazon S3 target.

DMS supports the TimestampColumnName parameter in versions 3.1.4 and later.

DMS includes an additional STRING column in the .csv or .parquet object files of your migrated data when you set TimestampColumnName to a nonblank value.

For a full load, each row of this timestamp column contains a timestamp for when the data was transferred from the source to the target by DMS.

For a change data capture (CDC) load, each row of the timestamp column contains the timestamp for the commit of that row in the source database.

The string format for this timestamp column value is yyyy-MM-dd HH:mm:ss.SSSSSS. By default, the precision of this value is in microseconds. For a CDC load, the rounding of the precision depends on the commit timestamp supported by DMS for the source database.

When the AddColumnName parameter is set to true, DMS also includes a name for the timestamp column that you set with TimestampColumnName.

", "S3Settings$CsvNoSupValue": "

This setting only applies if your Amazon S3 output files during a change data capture (CDC) load are written in .csv format. If UseCsvNoSupValue is set to true, specify a string value that you want DMS to use for all columns not included in the supplemental log. If you do not specify a string value, DMS uses the null value for these columns regardless of the UseCsvNoSupValue setting.

This setting is supported in DMS versions 3.4.1 and later.

", "S3Settings$CdcPath": "

Specifies the folder path of CDC files. For an S3 source, this setting is required if a task captures change data; otherwise, it's optional. If CdcPath is set, DMS reads CDC files from this path and replicates the data changes to the target endpoint. For an S3 target if you set PreserveTransactions to true, DMS verifies that you have set this parameter to a folder path on your S3 target where DMS can save the transaction order for the CDC load. DMS creates this CDC folder path in either your S3 target working directory or the S3 target location specified by BucketFolder and BucketName .

For example, if you specify CdcPath as MyChangedData, and you specify BucketName as MyTargetBucket but do not specify BucketFolder, DMS creates the CDC folder path following: MyTargetBucket/MyChangedData.

If you specify the same CdcPath, and you specify BucketName as MyTargetBucket and BucketFolder as MyTargetData, DMS creates the CDC folder path following: MyTargetBucket/MyTargetData/MyChangedData.

For more information on CDC including transaction order on an S3 target, see Capturing data changes (CDC) including transaction order on the S3 target.

This setting is supported in DMS versions 3.4.2 and later.

", - "S3Settings$CsvNullValue": "

An optional parameter that specifies how DMS treats null values. While handling the null value, you can use this parameter to pass a user-defined string as null when writing to the target. For example, when target columns are not nullable, you can use this option to differentiate between the empty string value and the null value. So, if you set this parameter value to the empty string (\"\" or ''), DMS treats the empty string as the null value instead of NULL.

The default value is NULL. Valid values include any valid string.

", + "S3Settings$CsvNullValue": "

An optional parameter that specifies how DMS treats null values. While handling the null value, you can use this parameter to pass a user-defined string as null when writing to the target. For example, when target columns are nullable, you can use this option to differentiate between the empty string value and the null value. So, if you set this parameter value to the empty string (\"\" or ''), DMS treats the empty string as the null value instead of NULL.

The default value is NULL. Valid values include any valid string.

", "S3Settings$DatePartitionTimezone": "

When creating an S3 target endpoint, set DatePartitionTimezone to convert the current UTC time into a specified time zone. The conversion occurs when a date partition folder is created and a CDC filename is generated. The time zone format is Area/Location. Use this parameter when DatePartitionedEnabled is set to true, as shown in the following example.

s3-settings='{\"DatePartitionEnabled\": true, \"DatePartitionSequence\": \"YYYYMMDDHH\", \"DatePartitionDelimiter\": \"SLASH\", \"DatePartitionTimezone\":\"Asia/Seoul\", \"BucketName\": \"dms-nattarat-test\"}'

", "S3Settings$ExpectedBucketOwner": "

To specify a bucket owner and prevent sniping, you can use the ExpectedBucketOwner endpoint setting.

Example: --s3-settings='{\"ExpectedBucketOwner\": \"AWS_Account_ID\"}'

When you make a request to test a connection or perform a migration, S3 checks the account ID of the bucket owner against the specified parameter.

", "SCApplicationAttributes$S3BucketPath": "

The path for the Amazon S3 bucket that the application uses for exporting assessment reports.

", @@ -3502,7 +3551,7 @@ "StartReplicationTaskAssessmentRunMessage$AssessmentRunName": "

Unique name to identify the assessment run.

", "StartReplicationTaskMessage$ReplicationTaskArn": "

The Amazon Resource Name (ARN) of the replication task to be started.

", "StartReplicationTaskMessage$CdcStartPosition": "

Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

The value can be in date, checkpoint, or LSN/SCN format.

Date Example: --cdc-start-position “2018-03-08T12:12:12”

Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the slotName extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for DMS.

", - "StartReplicationTaskMessage$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“

", + "StartReplicationTaskMessage$CdcStopPosition": "

Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“

", "StopReplicationMessage$ReplicationConfigArn": "

The Amazon Resource Name of the replication to stop.

", "StopReplicationTaskMessage$ReplicationTaskArn": "

The Amazon Resource Name(ARN) of the replication task to be stopped.

", "StringList$member": null, @@ -3563,7 +3612,7 @@ "SubnetIdentifierList": { "base": null, "refs": { - "CreateReplicationSubnetGroupMessage$SubnetIds": "

One or more subnet IDs to be assigned to the subnet group.

", + "CreateReplicationSubnetGroupMessage$SubnetIds": "

Two or more subnet IDs to be assigned to the subnet group.

", "ModifyReplicationSubnetGroupMessage$SubnetIds": "

A list of subnet IDs.

" } }, @@ -3618,6 +3667,7 @@ "Replication$ReplicationCreateTime": "

The time the serverless replication was created.

", "Replication$ReplicationUpdateTime": "

The time the serverless replication was updated.

", "Replication$ReplicationLastStopTime": "

The timestamp when replication was last stopped.

", + "Replication$ReplicationDeprovisionTime": "

The timestamp when DMS will deprovision the replication.

", "ReplicationConfig$ReplicationConfigCreateTime": "

The time the serverless replication config was created.

", "ReplicationConfig$ReplicationConfigUpdateTime": "

The time the serverless replication config was updated.

", "ReplicationInstance$InstanceCreateTime": "

The time the replication instance was created.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -252,7 +248,6 @@ { "fn": "stringEquals", "argv": [ - "aws-iso", { "fn": "getAttr", "argv": [ @@ -261,7 +256,8 @@ }, "name" ] - } + }, + "aws-iso" ] } ], @@ -277,7 +273,6 @@ { "fn": "stringEquals", "argv": [ - "aws-iso-b", { "fn": "getAttr", "argv": [ @@ -286,7 +281,8 @@ }, "name" ] - } + }, + "aws-iso-b" ] } ], @@ -306,14 +302,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -327,7 +325,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -347,7 +344,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -358,14 +354,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -376,9 +374,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dms/2016-01-01/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dms/2016-01-01/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -27,6 +27,54 @@ "title": "Add tags to resource" } ], + "CreateDataProvider": [ + { + "input": { + "DataProviderName": "sqlServer-dev", + "Description": "description", + "Engine": "sqlserver", + "Settings": { + "MicrosoftSqlServerSettings": { + "DatabaseName": "DatabaseName", + "Port": 11112, + "ServerName": "ServerName2", + "SslMode": "none" + } + }, + "Tags": [ + { + "Key": "access", + "Value": "authorizedusers" + } + ] + }, + "output": { + "DataProvider": { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-dataprovider", + "DataProviderCreationTime": "2023-05-12T10:50:41.988561Z", + "DataProviderName": "my-target-dataprovider", + "Engine": "postgres", + "Settings": { + "PostgreSqlSettings": { + "DatabaseName": "target", + "Port": 5432, + "ServerName": "postrgesql.a1b2c3d4e5f6.us-east-1.rds.amazonaws.com", + "SslMode": "none" + } + } + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Creates the data provider with the specified parameters.", + "id": "create-data-provider-1689726511871", + "title": "Create Data Provider" + } + ], "CreateEndpoint": [ { "input": { @@ -73,6 +121,119 @@ "title": "Create endpoint" } ], + "CreateInstanceProfile": [ + { + "input": { + "Description": "Description", + "InstanceProfileName": "my-instance-profile", + "KmsKeyArn": "arn:aws:kms:us-east-1:012345678901:key/01234567-89ab-cdef-0123-456789abcdef", + "NetworkType": "DUAL", + "PubliclyAccessible": true, + "SubnetGroupIdentifier": "my-subnet-group", + "Tags": [ + { + "Key": "access", + "Value": "authorizedusers" + } + ] + }, + "output": { + "InstanceProfile": { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:my-instance-profile", + "InstanceProfileCreationTime": "2022-12-16T09:44:43.543246Z", + "InstanceProfileName": "my-instance-profile", + "KmsKeyArn": "arn:aws:kms:us-east-1:012345678901:key/01234567-89ab-cdef-0123-456789abcdef", + "PubliclyAccessible": true, + "SubnetGroupIdentifier": "public-subnets", + "VpcIdentifier": "vpc-0a1b2c3d4e5f6g7h8", + "VpcSecurityGroups": [ + "sg-0123456" + ] + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Creates the instance profile using the specified parameters.", + "id": "create-instance-profile-1689716070633", + "title": "Create Instance Profile" + } + ], + "CreateMigrationProject": [ + { + "input": { + "Description": "description", + "InstanceProfileIdentifier": "ip-au-17", + "MigrationProjectName": "my-migration-project", + "SchemaConversionApplicationAttributes": { + "S3BucketPath": "arn:aws:s3:::mylogin-bucket", + "S3BucketRoleArn": "arn:aws:iam::012345678901:role/Admin" + }, + "SourceDataProviderDescriptors": [ + { + "DataProviderIdentifier": "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/myuser-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/example1/ALL.SOURCE.ORACLE_12-A1B2C3" + } + ], + "Tags": [ + { + "Key": "access", + "Value": "authorizedusers" + } + ], + "TargetDataProviderDescriptors": [ + { + "DataProviderIdentifier": "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/myuser-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/example1/TARGET.postgresql-A1B2C3" + } + ], + "TransformationRules": "{\"key0\":\"value0\",\"key1\":\"value1\",\"key2\":\"value2\"}" + }, + "output": { + "MigrationProject": { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "InstanceProfileName": "my-instance-profile", + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "MigrationProjectCreationTime": "2023-04-19T11:45:15.805253Z", + "MigrationProjectName": "my-migration-project", + "SchemaConversionApplicationAttributes": { + "S3BucketPath": "my-s3-bucket/my_folder", + "S3BucketRoleArn": "arn:aws:iam::012345678901:role/my-s3role" + }, + "SourceDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "source-oracle-12", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/my-access-role", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/ALL.SOURCE.ORACLE_12-0123456" + } + ], + "TargetDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "target-dataprovider-3", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/dmytbon-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/TARGET.postgresql-0123456" + } + ] + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Creates the migration project with the specified parameters.", + "id": "create-migration-project-1689716672685", + "title": "Create Migration Project" + } + ], "CreateReplicationInstance": [ { "input": { @@ -271,6 +432,38 @@ "title": "Delete Connection" } ], + "DeleteDataProvider": [ + { + "input": { + "DataProviderIdentifier": "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + }, + "output": { + "DataProvider": { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-data-provider", + "DataProviderCreationTime": "2023-05-12T10:50:41.988561Z", + "DataProviderName": "my-target-data-provider", + "Engine": "postgres", + "Settings": { + "PostgreSqlSettings": { + "DatabaseName": "target", + "Port": 5432, + "ServerName": "postrgesql.0a1b2c3d4e5f.us-east-1.rds.amazonaws.com", + "SslMode": "none" + } + } + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Deletes the specified data provider.", + "id": "delete-data-provider-1689724476356", + "title": "Delete Data Provider" + } + ], "DeleteEndpoint": [ { "input": { @@ -300,6 +493,81 @@ "title": "Delete Endpoint" } ], + "DeleteInstanceProfile": [ + { + "input": { + "InstanceProfileIdentifier": "arn:aws:dms:us-east-1:012345678901:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + }, + "output": { + "InstanceProfile": { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:my-instance-profile", + "InstanceProfileCreationTime": "2022-12-16T09:44:43.543246Z", + "InstanceProfileName": "my-instance-profile", + "KmsKeyArn": "arn:aws:kms:us-east-1:012345678901:key/01234567-89ab-cdef-0123-456789abcdef", + "PubliclyAccessible": true, + "SubnetGroupIdentifier": "public-subnets", + "VpcIdentifier": "vpc-0a1b2c3d4e5f6g7h8", + "VpcSecurityGroups": [ + "sg-0123456" + ] + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Deletes the specified instance profile.", + "id": "delete-instance-profile-1689716924105", + "title": "Delete Instance Profile" + } + ], + "DeleteMigrationProject": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + }, + "output": { + "MigrationProject": { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "InstanceProfileName": "my-instance-profile", + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "MigrationProjectCreationTime": "2023-04-19T11:45:15.805253Z", + "MigrationProjectName": "my-migration-project", + "SchemaConversionApplicationAttributes": { + "S3BucketPath": "my-s3-bucket/my_folder", + "S3BucketRoleArn": "arn:aws:iam::012345678901:role/my-s3role" + }, + "SourceDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "all-source-oracle-12", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/my-access-role", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/ALL.SOURCE.ORACLE_12-0123456" + } + ], + "TargetDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "sde-obilyns-dataprovider-3", + "SecretsManagerAccessRoleArn": "arn:aws:iam::437223687239:role/dmytbon-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/TARGET.postgresql-0123456" + } + ] + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Deletes the specified migration project.", + "id": "delete-migration-project-1689717217454", + "title": "Delete Migration Project" + } + ], "DeleteReplicationInstance": [ { "input": { @@ -518,6 +786,70 @@ "title": "Describe connections" } ], + "DescribeConversionConfiguration": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + }, + "output": { + "ConversionConfiguration": "{\"Common project settings\":{\"ShowSeverityLevelInSql\":\"CRITICAL\"},\"ORACLE_TO_POSTGRESQL\" : {\"ToTimeZone\":false,\"LastDayBuiltinFunctionOracle\":false, \"NextDayBuiltinFunctionOracle\":false,\"ConvertProceduresToFunction\":false,\"NvlBuiltinFunctionOracle\":false,\"DbmsAssertBuiltinFunctionOracle\":false}}", + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns configuration parameters for a schema conversion project.", + "id": "describe-conversion-configuration-1689717690907", + "title": "Describe Conversion Configuration" + } + ], + "DescribeDataProviders": [ + { + "input": { + "Filters": [ + { + "Name": "data-provider-identifier", + "Values": [ + "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + ] + } + ], + "Marker": "EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "MaxRecords": 20 + }, + "output": { + "DataProviders": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-data-provider", + "DataProviderCreationTime": "2023-05-12T10:50:41.988561Z", + "DataProviderName": "my-target-data-provider", + "Engine": "postgres", + "Settings": { + "PostgreSqlSettings": { + "DatabaseName": "target", + "Port": 5432, + "ServerName": "postrgesql.0a1b2c3d4e5f.us-east-1.rds.amazonaws.com", + "SslMode": "none" + } + } + } + ], + "Marker": "EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "describe-data-providers-1689725897156", + "title": "Describe Data Providers" + } + ], "DescribeEndpointTypes": [ { "input": { @@ -582,6 +914,318 @@ "title": "Describe endpoints" } ], + "DescribeExtensionPackAssociations": [ + { + "input": { + "Filters": [ + { + "Name": "instance-profile-identifier", + "Values": [ + "arn:aws:dms:us-east-1:012345678901:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + ] + } + ], + "Marker": "0123456789abcdefghijklmnopqrs", + "MaxRecords": 20, + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "output": { + "Marker": "0123456789abcdefghijklmnopqrs", + "Requests": [ + { + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef", + "Status": "SUCCESS" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of extension pack associations for the specified migration project.", + "id": "describe-extension-pack-associations-1689718322580", + "title": "Describe Extension Pack Associations" + } + ], + "DescribeInstanceProfiles": [ + { + "input": { + "Filters": [ + { + "Name": "instance-profile-identifier", + "Values": [ + "arn:aws:dms:us-east-1:012345678901:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + ] + } + ], + "Marker": "0123456789abcdefghijklmnopqrs", + "MaxRecords": 20 + }, + "output": { + "InstanceProfiles": [ + { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:my-instance-profile", + "InstanceProfileCreationTime": "2022-12-16T09:44:43.543246Z", + "InstanceProfileName": "my-instance-profile", + "KmsKeyArn": "arn:aws:kms:us-east-1:012345678901:key/01234567-89ab-cdef-0123-456789abcdef", + "PubliclyAccessible": true, + "SubnetGroupIdentifier": "public-subnets", + "VpcIdentifier": "vpc-0a1b2c3d4e5f6g7h8" + } + ], + "Marker": "0123456789abcdefghijklmnopqrs" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of instance profiles for your account in the current region.", + "id": "describe-instance-profiles-1689718406840", + "title": "Describe Instance Profiles" + } + ], + "DescribeMetadataModelAssessments": [ + { + "input": { + "Filters": [ + { + "Name": "my-migration-project", + "Values": [ + "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + ] + } + ], + "Marker": "0123456789abcdefghijklmnopqrs", + "MaxRecords": 20, + "MigrationProjectIdentifier": "" + }, + "output": { + "Marker": "ASDLKJASDJKHDFHGDNBGDASKJHGFK", + "Requests": [ + { + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef", + "Status": "SUCCESS" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of metadata model assessments for your account in the current region.", + "id": "describe-metadata-model-assessments-1689718702303", + "title": "Describe Metadata Model Assessments" + } + ], + "DescribeMetadataModelConversions": [ + { + "input": { + "Filters": [ + { + "Name": "request-id", + "Values": [ + "01234567-89ab-cdef-0123-456789abcdef" + ] + } + ], + "Marker": "EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ123456", + "MaxRecords": 123, + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345" + }, + "output": { + "Marker": "0123456789abcdefghijklmnopqrs", + "Requests": [ + { + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef", + "Status": "SUCCESS" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of metadata model conversions for a migration project.", + "id": "describe-metadata-model-conversions-1689719021495", + "title": "Describe Metadata Model Conversions" + } + ], + "DescribeMetadataModelExportsAsScript": [ + { + "input": { + "Filters": [ + { + "Name": "request-id", + "Values": [ + "01234567-89ab-cdef-0123-456789abcdef" + ] + } + ], + "Marker": "0123456789abcdefghijklmnopqrs", + "MaxRecords": 20, + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "output": { + "Marker": "0123456789abcdefghijklmnopqrs", + "Requests": [ + { + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef", + "Status": "SUCCESS" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of metadata model exports.", + "id": "describe-metadata-model-exports-as-script-1689719253938", + "title": "Describe Metadata Model Exports As Script" + } + ], + "DescribeMetadataModelExportsToTarget": [ + { + "input": { + "Filters": [ + { + "Name": "request-id", + "Values": [ + "01234567-89ab-cdef-0123-456789abcdef" + ] + } + ], + "Marker": "0123456789abcdefghijklmnopqrs", + "MaxRecords": 20, + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "output": { + "Marker": "0123456789abcdefghijklmnopqrs", + "Requests": [ + { + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef", + "Status": "SUCCESS" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of metadata model exports.", + "id": "describe-metadata-model-exports-to-target-1689719484750", + "title": "Describe Metadata Model Exports To Target" + } + ], + "DescribeMetadataModelImports": [ + { + "input": { + "Filters": [ + { + "Name": "request-id", + "Values": [ + "01234567-89ab-cdef-0123-456789abcdef" + ] + } + ], + "Marker": "0123456789abcdefghijklmnopqrs", + "MaxRecords": 20, + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "output": { + "Marker": "0123456789abcdefghijklmnopqrs", + "Requests": [ + { + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef", + "Status": "SUCCESS" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of metadata model imports.", + "id": "describe-metadata-model-imports-1689719771322", + "title": "Describe Metadata Model Imports" + } + ], + "DescribeMigrationProjects": [ + { + "input": { + "Filters": [ + { + "Name": "migration-project-identifier", + "Values": [ + "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ12345678901" + ] + } + ], + "Marker": "EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ123456", + "MaxRecords": 20 + }, + "output": { + "Marker": "0123456789abcdefghijklmnopqrs", + "MigrationProjects": [ + { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "InstanceProfileName": "my-instance-profile", + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "MigrationProjectCreationTime": "2023-04-19T11:45:15.805253Z", + "MigrationProjectName": "my-migration-project", + "SchemaConversionApplicationAttributes": { + "S3BucketPath": "my-s3-bucket/my_folder", + "S3BucketRoleArn": "arn:aws:iam::012345678901:role/my-s3role" + }, + "SourceDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "all-source-oracle-12", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/my-access-role", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:mygroup/myalias/ALL.SOURCE.ORACLE_12-012345" + } + ], + "TargetDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "my-data-provider", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/dmytbon-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:mygroup/myalias/TARGET.postgresql-012345" + } + ] + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a paginated list of migration projects for your account in the current region.", + "id": "describe-migration-projects-1689719912075", + "title": "Describe Migration Projects" + } + ], "DescribeOrderableReplicationInstances": [ { "input": { @@ -770,6 +1414,37 @@ "title": "Describe table statistics" } ], + "ExportMetadataModelAssessment": [ + { + "input": { + "AssessmentReportTypes": [ + "pdf" + ], + "FileName": "file", + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "SelectionRules": "{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-a1b2c3d4e5f6.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}" + }, + "output": { + "CsvReport": { + "ObjectURL": "url", + "S3ObjectKey": "object-name" + }, + "PdfReport": { + "ObjectURL": "url", + "S3ObjectKey": "object-name" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Saves a copy of a database migration assessment report to your S3 bucket. DMS can save your assessment report as a comma-separated value (CSV) or a PDF file.", + "id": "export-metadata-model-assessment-1689720309558", + "title": "Export Metadata Model Assessment" + } + ], "ImportCertificate": [ { "input": { @@ -812,6 +1487,69 @@ "title": "List tags for resource" } ], + "ModifyConversionConfiguration": [ + { + "input": { + "ConversionConfiguration": "{\"Common project settings\":{\"ShowSeverityLevelInSql\":\"CRITICAL\"},\"ORACLE_TO_POSTGRESQL\" : {\"ToTimeZone\":false,\"LastDayBuiltinFunctionOracle\":false, \"NextDayBuiltinFunctionOracle\":false,\"ConvertProceduresToFunction\":false,\"NvlBuiltinFunctionOracle\":false,\"DbmsAssertBuiltinFunctionOracle\":false}}", + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "output": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Modifies the specified schema conversion configuration using the provided parameters.", + "id": "modify-conversion-configuration-1689720529855", + "title": "Modify Conversion Configuration" + } + ], + "ModifyDataProvider": [ + { + "input": { + "DataProviderIdentifier": "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "DataProviderName": "new-name", + "Description": "description", + "Engine": "sqlserver", + "Settings": { + "MicrosoftSqlServerSettings": { + "DatabaseName": "DatabaseName", + "Port": 11112, + "ServerName": "ServerName2", + "SslMode": "none" + } + } + }, + "output": { + "DataProvider": { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-data-provider", + "DataProviderCreationTime": "2023-05-12T10:50:41.988561Z", + "DataProviderName": "my-target-data-provider", + "Engine": "postgres", + "Settings": { + "PostgreSqlSettings": { + "DatabaseName": "target", + "Port": 5432, + "ServerName": "postrgesql.0a1b2c3d4e5f.us-east-1.rds.amazonaws.com", + "SslMode": "none" + } + } + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Modifies the specified data provider using the provided settings.", + "id": "modify-data-provider-1689720700567", + "title": "Modify Data Provider" + } + ], "ModifyEndpoint": [ { "input": { @@ -843,6 +1581,112 @@ "title": "Modify endpoint" } ], + "ModifyInstanceProfile": [ + { + "input": { + "AvailabilityZone": "", + "Description": "", + "InstanceProfileIdentifier": "", + "InstanceProfileName": "", + "KmsKeyArn": "", + "NetworkType": "", + "PubliclyAccessible": true, + "SubnetGroupIdentifier": "", + "VpcSecurityGroups": [ + + ] + }, + "output": { + "InstanceProfile": { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:my-instance-profile", + "InstanceProfileCreationTime": "2022-12-16T09:44:43.543246Z", + "InstanceProfileName": "my-instance-profile", + "KmsKeyArn": "arn:aws:kms:us-east-1:012345678901:key/01234567-89ab-cdef-0123-456789abcdef", + "PubliclyAccessible": true, + "SubnetGroupIdentifier": "public-subnets", + "VpcIdentifier": "vpc-0a1b2c3d4e5f6g7h8", + "VpcSecurityGroups": [ + "sg-0123456" + ] + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Modifies the specified instance profile using the provided parameters.", + "id": "modify-instance-profile-1689724223329", + "title": "Modify Instance Profile" + } + ], + "ModifyMigrationProject": [ + { + "input": { + "Description": "description", + "InstanceProfileIdentifier": "my-instance-profile", + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "MigrationProjectName": "new-name", + "SchemaConversionApplicationAttributes": { + "S3BucketPath": "arn:aws:s3:::myuser-bucket", + "S3BucketRoleArn": "arn:aws:iam::012345678901:role/Admin" + }, + "SourceDataProviderDescriptors": [ + { + "DataProviderIdentifier": "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/myuser-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/myuser/ALL.SOURCE.ORACLE_12-A1B2C3" + } + ], + "TargetDataProviderDescriptors": [ + { + "DataProviderIdentifier": "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/myuser-admin-access", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/myuser/TARGET.postgresql-A1B2C3" + } + ] + }, + "output": { + "MigrationProject": { + "InstanceProfileArn": "arn:aws:dms:us-east-1:012345678901:instance-profile:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "InstanceProfileName": "my-instance-profile", + "MigrationProjectArn": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "MigrationProjectCreationTime": "2023-04-19T11:45:15.805253Z", + "MigrationProjectName": "my-migration-project", + "SchemaConversionApplicationAttributes": { + "S3BucketPath": "my-s3-bucket/my_folder", + "S3BucketRoleArn": "arn:aws:iam::012345678901:role/my-s3role" + }, + "SourceDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "all-source-oracle-12", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/my-access-role", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:mygroup/myalias/ALL.SOURCE.ORACLE_12-TP5rA9" + } + ], + "TargetDataProviderDescriptors": [ + { + "DataProviderArn": "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "DataProviderName": "my-dataprovider", + "SecretsManagerAccessRoleArn": "arn:aws:iam::012345678901:role/my-access-role", + "SecretsManagerSecretId": "arn:aws:secretsmanager:us-east-1:012345678901:secret:mygroup/myalias/TARGET.postgresql-mysecret" + } + ] + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Modifies the specified migration project using the provided parameters.", + "id": "modify-migration-project-1689721117475", + "title": "Modify Migration Project" + } + ], "ModifyReplicationInstance": [ { "input": { @@ -987,6 +1831,130 @@ "title": "Remove tags from resource" } ], + "StartExtensionPackAssociation": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012" + }, + "output": { + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Applies the extension pack to your target database.", + "id": "start-extension-pack-association-1689721897266", + "title": "Start Extension Pack Association" + } + ], + "StartMetadataModelAssessment": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "SelectionRules": "{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}" + }, + "output": { + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Creates a database migration assessment report by assessing the migration complexity for \n your source database.", + "id": "start-metadata-model-assessment-1689722322596", + "title": "Start Metadata Model Assessment" + } + ], + "StartMetadataModelConversion": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "SelectionRules": "{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}" + }, + "output": { + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Converts your source database objects to a format compatible with the target database. ", + "id": "start-metadata-model-conversion-1689722427798", + "title": "Start Metadata Model Conversion" + } + ], + "StartMetadataModelExportAsScript": [ + { + "input": { + "FileName": "FILE", + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "Origin": "SOURCE", + "SelectionRules": "{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}" + }, + "output": { + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Saves your converted code to a file as a SQL script, and stores this file on your S3 bucket.", + "id": "start-metadata-model-export-as-script-1689722681469", + "title": "Start Metadata Model Export As Script" + } + ], + "StartMetadataModelExportToTarget": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", + "OverwriteExtensionPack": true, + "SelectionRules": "{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-a1b2c3d4e5f6.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}" + }, + "output": { + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Applies converted database objects to your target database.", + "id": "start-metadata-model-export-to-target-1689783666835", + "title": "Start Metadata Model Export To Target" + } + ], + "StartMetadataModelImport": [ + { + "input": { + "MigrationProjectIdentifier": "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", + "Origin": "SOURCE", + "Refresh": false, + "SelectionRules": "{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}" + }, + "output": { + "RequestIdentifier": "01234567-89ab-cdef-0123-456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Loads the metadata for all the dependent database objects of the parent object.", + "id": "start-metadata-model-import-1689723124259", + "title": "Start Metadata Model Import" + } + ], "StartReplicationTask": [ { "input": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/docdb/2014-10-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/docdb/2014-10-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/docdb/2014-10-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/docdb/2014-10-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1027,6 +1027,10 @@ }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, + "CACertificateIdentifiersList":{ + "type":"list", + "member":{"shape":"String"} + }, "Certificate":{ "type":"structure", "members":{ @@ -1039,6 +1043,13 @@ }, "wrapper":true }, + "CertificateDetails":{ + "type":"structure", + "members":{ + "CAIdentifier":{"shape":"String"}, + "ValidTill":{"shape":"TStamp"} + } + }, "CertificateList":{ "type":"list", "member":{ @@ -1138,7 +1149,8 @@ "PreSignedUrl":{"shape":"String"}, "EnableCloudwatchLogsExports":{"shape":"LogTypeList"}, "DeletionProtection":{"shape":"BooleanOptional"}, - "GlobalClusterIdentifier":{"shape":"GlobalClusterIdentifier"} + "GlobalClusterIdentifier":{"shape":"GlobalClusterIdentifier"}, + "StorageType":{"shape":"String"} } }, "CreateDBClusterParameterGroupMessage":{ @@ -1205,7 +1217,8 @@ "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "PromotionTier":{"shape":"IntegerOptional"}, "EnablePerformanceInsights":{"shape":"BooleanOptional"}, - "PerformanceInsightsKMSKeyId":{"shape":"String"} + "PerformanceInsightsKMSKeyId":{"shape":"String"}, + "CACertificateIdentifier":{"shape":"String"} } }, "CreateDBInstanceResult":{ @@ -1309,7 +1322,8 @@ "CloneGroupId":{"shape":"String"}, "ClusterCreateTime":{"shape":"TStamp"}, "EnabledCloudwatchLogsExports":{"shape":"LogTypeList"}, - "DeletionProtection":{"shape":"Boolean"} + "DeletionProtection":{"shape":"Boolean"}, + "StorageType":{"shape":"String"} }, "wrapper":true }, @@ -1458,7 +1472,8 @@ "StorageEncrypted":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "DBClusterSnapshotArn":{"shape":"String"}, - "SourceDBClusterSnapshotArn":{"shape":"String"} + "SourceDBClusterSnapshotArn":{"shape":"String"}, + "StorageType":{"shape":"String"} }, "wrapper":true }, @@ -1530,7 +1545,9 @@ "DBEngineVersionDescription":{"shape":"String"}, "ValidUpgradeTarget":{"shape":"ValidUpgradeTargetList"}, "ExportableLogTypes":{"shape":"LogTypeList"}, - "SupportsLogExportsToCloudwatchLogs":{"shape":"Boolean"} + "SupportsLogExportsToCloudwatchLogs":{"shape":"Boolean"}, + "SupportedCACertificateIdentifiers":{"shape":"CACertificateIdentifiersList"}, + "SupportsCertificateRotationWithoutRestart":{"shape":"BooleanOptional"} } }, "DBEngineVersionList":{ @@ -1576,7 +1593,8 @@ "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "PromotionTier":{"shape":"IntegerOptional"}, "DBInstanceArn":{"shape":"String"}, - "EnabledCloudwatchLogsExports":{"shape":"LogTypeList"} + "EnabledCloudwatchLogsExports":{"shape":"LogTypeList"}, + "CertificateDetails":{"shape":"CertificateDetails"} }, "wrapper":true }, @@ -2512,7 +2530,8 @@ "CloudwatchLogsExportConfiguration":{"shape":"CloudwatchLogsExportConfiguration"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, - "DeletionProtection":{"shape":"BooleanOptional"} + "DeletionProtection":{"shape":"BooleanOptional"}, + "StorageType":{"shape":"String"} } }, "ModifyDBClusterParameterGroupMessage":{ @@ -2565,7 +2584,8 @@ "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "PromotionTier":{"shape":"IntegerOptional"}, "EnablePerformanceInsights":{"shape":"BooleanOptional"}, - "PerformanceInsightsKMSKeyId":{"shape":"String"} + "PerformanceInsightsKMSKeyId":{"shape":"String"}, + "CertificateRotationRestart":{"shape":"BooleanOptional"} } }, "ModifyDBInstanceResult":{ @@ -2632,7 +2652,8 @@ "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"}, - "Vpc":{"shape":"Boolean"} + "Vpc":{"shape":"Boolean"}, + "StorageType":{"shape":"String"} }, "wrapper":true }, @@ -2848,7 +2869,8 @@ "KmsKeyId":{"shape":"String"}, "EnableCloudwatchLogsExports":{"shape":"LogTypeList"}, "DeletionProtection":{"shape":"BooleanOptional"}, - "DBClusterParameterGroupName":{"shape":"String"} + "DBClusterParameterGroupName":{"shape":"String"}, + "StorageType":{"shape":"String"} } }, "RestoreDBClusterFromSnapshotResult":{ @@ -2875,7 +2897,8 @@ "Tags":{"shape":"TagList"}, "KmsKeyId":{"shape":"String"}, "EnableCloudwatchLogsExports":{"shape":"LogTypeList"}, - "DeletionProtection":{"shape":"BooleanOptional"} + "DeletionProtection":{"shape":"BooleanOptional"}, + "StorageType":{"shape":"String"} } }, "RestoreDBClusterToPointInTimeResult":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/docdb/2014-10-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/docdb/2014-10-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/docdb/2014-10-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/docdb/2014-10-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -165,6 +165,7 @@ "CreateEventSubscriptionMessage$Enabled": "

A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

", "CreateGlobalClusterMessage$DeletionProtection": "

The deletion protection setting for the new global cluster. The global cluster can't be deleted when deletion protection is enabled.

", "CreateGlobalClusterMessage$StorageEncrypted": "

The storage encryption setting for the new global cluster.

", + "DBEngineVersion$SupportsCertificateRotationWithoutRestart": "

Indicates whether the engine version supports rotating the server certificate without rebooting the DB instance.

", "DBInstance$CopyTagsToSnapshot": "

A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags are not copied.

", "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

If this parameter is specified and the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

", "DescribeDBEngineVersionsMessage$ListSupportedTimezones": "

If this parameter is specified and the requested engine supports the TimeZone parameter for CreateDBInstance, the response includes a list of supported time zones for each engine version.

", @@ -175,6 +176,7 @@ "ModifyDBInstanceMessage$AutoMinorVersionUpgrade": "

This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set.

", "ModifyDBInstanceMessage$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the DB instance to snapshots of the DB instance. By default, tags are not copied.

", "ModifyDBInstanceMessage$EnablePerformanceInsights": "

A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see Using Amazon Performance Insights.

", + "ModifyDBInstanceMessage$CertificateRotationRestart": "

Specifies whether the DB instance is restarted when you rotate your SSL/TLS certificate.

By default, the DB instance is restarted when you rotate your SSL/TLS certificate. The certificate is not updated until the DB instance is restarted.

Set this parameter only if you are not using SSL/TLS to connect to the DB instance.

If you are using SSL/TLS to connect to the DB instance, see Updating Your Amazon DocumentDB TLS Certificates and Encrypting Data in Transit in the Amazon DocumentDB Developer Guide.

", "ModifyEventSubscriptionMessage$Enabled": "

A Boolean value; set to true to activate the subscription.

", "ModifyGlobalClusterMessage$DeletionProtection": "

Indicates if the global cluster has deletion protection enabled. The global cluster can't be deleted when deletion protection is enabled.

", "PendingModifiedValues$MultiAZ": "

Indicates that the Single-AZ instance is to change to a Multi-AZ deployment.

", @@ -183,12 +185,24 @@ "RestoreDBClusterToPointInTimeMessage$DeletionProtection": "

Specifies whether this cluster can be deleted. If DeletionProtection is enabled, the cluster cannot be deleted unless it is modified and DeletionProtection is disabled. DeletionProtection protects clusters from being accidentally deleted.

" } }, + "CACertificateIdentifiersList": { + "base": null, + "refs": { + "DBEngineVersion$SupportedCACertificateIdentifiers": "

A list of the supported CA certificate identifiers.

For more information, see Updating Your Amazon DocumentDB TLS Certificates and Encrypting Data in Transit in the Amazon DocumentDB Developer Guide.

" + } + }, "Certificate": { "base": "

A certificate authority (CA) certificate for an Amazon Web Services account.

", "refs": { "CertificateList$member": null } }, + "CertificateDetails": { + "base": "

Returns the details of the DB instance’s server certificate.

For more information, see Updating Your Amazon DocumentDB TLS Certificates and Encrypting Data in Transit in the Amazon DocumentDB Developer Guide.

", + "refs": { + "DBInstance$CertificateDetails": "

The details of the DB instance's server certificate.

" + } + }, "CertificateList": { "base": null, "refs": { @@ -1389,10 +1403,12 @@ "AttributeValueList$member": null, "AvailabilityZone$Name": "

The name of the Availability Zone.

", "AvailabilityZones$member": null, + "CACertificateIdentifiersList$member": null, "Certificate$CertificateIdentifier": "

The unique key that identifies a certificate.

Example: rds-ca-2019

", "Certificate$CertificateType": "

The type of the certificate.

Example: CA

", "Certificate$Thumbprint": "

The thumbprint of the certificate.

", "Certificate$CertificateArn": "

The Amazon Resource Name (ARN) for the certificate.

Example: arn:aws:rds:us-east-1::cert:rds-ca-2019

", + "CertificateDetails$CAIdentifier": "

The CA identifier of the CA certificate used for the DB instance's server certificate.

", "CertificateMessage$Marker": "

An optional pagination token provided if the number of records retrieved is greater than MaxRecords. If this parameter is specified, the marker specifies the next record in the list. Including the value of Marker in the next call to DescribeCertificates results in the next page of certificates.

", "CopyDBClusterParameterGroupMessage$SourceDBClusterParameterGroupIdentifier": "

The identifier or Amazon Resource Name (ARN) for the source cluster parameter group.

Constraints:

  • Must specify a valid cluster parameter group.

  • If the source cluster parameter group is in the same Amazon Web Services Region as the copy, specify a valid parameter group identifier; for example, my-db-cluster-param-group, or a valid ARN.

  • If the source parameter group is in a different Amazon Web Services Region than the copy, specify a valid cluster parameter group ARN; for example, arn:aws:rds:us-east-1:123456789012:sample-cluster:sample-parameter-group.

", "CopyDBClusterParameterGroupMessage$TargetDBClusterParameterGroupIdentifier": "

The identifier for the copied cluster parameter group.

Constraints:

  • Cannot be null, empty, or blank.

  • Must contain from 1 to 255 letters, numbers, or hyphens.

  • The first character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

Example: my-cluster-param-group1

", @@ -1412,6 +1428,7 @@ "CreateDBClusterMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute window.

", "CreateDBClusterMessage$KmsKeyId": "

The KMS key identifier for an encrypted cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon Web Services account that owns the KMS encryption key that is used to encrypt the new cluster, you can use the KMS key alias instead of the ARN for the KMS encryption key.

If an encryption key is not specified in KmsKeyId:

  • If the StorageEncrypted parameter is true, Amazon DocumentDB uses your default encryption key.

KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Regions.

", "CreateDBClusterMessage$PreSignedUrl": "

Not currently supported.

", + "CreateDBClusterMessage$StorageType": "

The storage type to associate with the DB cluster.

For information on storage types for Amazon DocumentDB clusters, see Cluster storage configurations in the Amazon DocumentDB Developer Guide.

Valid values for storage type - standard | iopt1

Default value is standard

When you create a DocumentDB DB cluster with the storage type set to iopt1, the storage type is returned in the response. The storage type isn't returned when you set it to standard.

", "CreateDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

The name of the cluster parameter group.

Constraints:

  • Must not match the name of an existing DBClusterParameterGroup.

This value is stored as a lowercase string.

", "CreateDBClusterParameterGroupMessage$DBParameterGroupFamily": "

The cluster parameter group family name.

", "CreateDBClusterParameterGroupMessage$Description": "

The description for the cluster parameter group.

", @@ -1424,6 +1441,7 @@ "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute window.

", "CreateDBInstanceMessage$DBClusterIdentifier": "

The identifier of the cluster that the instance will belong to.

", "CreateDBInstanceMessage$PerformanceInsightsKMSKeyId": "

The KMS key identifier for encryption of Performance Insights data.

The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services region.

", + "CreateDBInstanceMessage$CACertificateIdentifier": "

The CA certificate identifier to use for the DB instance's server certificate.

For more information, see Updating Your Amazon DocumentDB TLS Certificates and Encrypting Data in Transit in the Amazon DocumentDB Developer Guide.

", "CreateDBSubnetGroupMessage$DBSubnetGroupName": "

The name for the subnet group. This value is stored as a lowercase string.

Constraints: Must contain no more than 255 letters, numbers, periods, underscores, spaces, or hyphens. Must not be default.

Example: mySubnetgroup

", "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

The description for the subnet group.

", "CreateEventSubscriptionMessage$SubscriptionName": "

The name of the subscription.

Constraints: The name must be fewer than 255 characters.

", @@ -1451,6 +1469,7 @@ "DBCluster$DbClusterResourceId": "

The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in CloudTrail log entries whenever the KMS key for the cluster is accessed.

", "DBCluster$DBClusterArn": "

The Amazon Resource Name (ARN) for the cluster.

", "DBCluster$CloneGroupId": "

Identifies the clone group to which the DB cluster is associated.

", + "DBCluster$StorageType": "

Storage type associated with your cluster

Storage type associated with your cluster

For information on storage types for Amazon DocumentDB clusters, see Cluster storage configurations in the Amazon DocumentDB Developer Guide.

Valid values for storage type - standard | iopt1

Default value is standard

", "DBClusterMember$DBInstanceIdentifier": "

Specifies the instance identifier for this member of the cluster.

", "DBClusterMember$DBClusterParameterGroupStatus": "

Specifies the status of the cluster parameter group for this member of the DB cluster.

", "DBClusterMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", @@ -1474,6 +1493,7 @@ "DBClusterSnapshot$KmsKeyId": "

If StorageEncrypted is true, the KMS key identifier for the encrypted cluster snapshot.

", "DBClusterSnapshot$DBClusterSnapshotArn": "

The Amazon Resource Name (ARN) for the cluster snapshot.

", "DBClusterSnapshot$SourceDBClusterSnapshotArn": "

If the cluster snapshot was copied from a source cluster snapshot, the ARN for the source cluster snapshot; otherwise, a null value.

", + "DBClusterSnapshot$StorageType": "

Storage type associated with your cluster snapshot

For information on storage types for Amazon DocumentDB clusters, see Cluster storage configurations in the Amazon DocumentDB Developer Guide.

Valid values for storage type - standard | iopt1

Default value is standard

", "DBClusterSnapshotAttribute$AttributeName": "

The name of the manual cluster snapshot attribute.

The attribute named restore refers to the list of Amazon Web Services accounts that have permission to copy or restore the manual cluster snapshot.

", "DBClusterSnapshotAttributesResult$DBClusterSnapshotIdentifier": "

The identifier of the cluster snapshot that the attributes apply to.

", "DBClusterSnapshotMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", @@ -1590,6 +1610,7 @@ "ModifyDBClusterMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", "ModifyDBClusterMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute window.

", "ModifyDBClusterMessage$EngineVersion": "

The version number of the database engine to which you want to upgrade. Changing this parameter results in an outage. The change is applied during the next maintenance window unless ApplyImmediately is enabled.

To list all of the available engine versions for Amazon DocumentDB use the following command:

aws docdb describe-db-engine-versions --engine docdb --query \"DBEngineVersions[].EngineVersion\"

", + "ModifyDBClusterMessage$StorageType": "

The storage type to associate with the DB cluster.

For information on storage types for Amazon DocumentDB clusters, see Cluster storage configurations in the Amazon DocumentDB Developer Guide.

Valid values for storage type - standard | iopt1

Default value is standard

", "ModifyDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

The name of the cluster parameter group to modify.

", "ModifyDBClusterSnapshotAttributeMessage$DBClusterSnapshotIdentifier": "

The identifier for the cluster snapshot to modify the attributes for.

", "ModifyDBClusterSnapshotAttributeMessage$AttributeName": "

The name of the cluster snapshot attribute to modify.

To manage authorization for other Amazon Web Services accounts to copy or restore a manual cluster snapshot, set this value to restore.

", @@ -1608,6 +1629,7 @@ "OrderableDBInstanceOption$EngineVersion": "

The engine version of an instance.

", "OrderableDBInstanceOption$DBInstanceClass": "

The instance class for an instance.

", "OrderableDBInstanceOption$LicenseModel": "

The license model for an instance.

", + "OrderableDBInstanceOption$StorageType": "

The storage type to associate with the DB cluster

", "OrderableDBInstanceOptionsMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "Parameter$ParameterName": "

Specifies the name of the parameter.

", "Parameter$ParameterValue": "

Specifies the value of the parameter.

", @@ -1645,11 +1667,13 @@ "RestoreDBClusterFromSnapshotMessage$DBSubnetGroupName": "

The name of the subnet group to use for the new cluster.

Constraints: If provided, must match the name of an existing DBSubnetGroup.

Example: mySubnetgroup

", "RestoreDBClusterFromSnapshotMessage$KmsKeyId": "

The KMS key identifier to use when restoring an encrypted cluster from a DB snapshot or cluster snapshot.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring a cluster with the same Amazon Web Services account that owns the KMS encryption key used to encrypt the new cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key.

If you do not specify a value for the KmsKeyId parameter, then the following occurs:

  • If the snapshot or cluster snapshot in SnapshotIdentifier is encrypted, then the restored cluster is encrypted using the KMS key that was used to encrypt the snapshot or the cluster snapshot.

  • If the snapshot or the cluster snapshot in SnapshotIdentifier is not encrypted, then the restored DB cluster is not encrypted.

", "RestoreDBClusterFromSnapshotMessage$DBClusterParameterGroupName": "

The name of the DB cluster parameter group to associate with this DB cluster.

Type: String.       Required: No.

If this argument is omitted, the default DB cluster parameter group is used. If supplied, must match the name of an existing default DB cluster parameter group. The string must consist of from 1 to 255 letters, numbers or hyphens. Its first character must be a letter, and it cannot end with a hyphen or contain two consecutive hyphens.

", + "RestoreDBClusterFromSnapshotMessage$StorageType": "

The storage type to associate with the DB cluster.

For information on storage types for Amazon DocumentDB clusters, see Cluster storage configurations in the Amazon DocumentDB Developer Guide.

Valid values for storage type - standard | iopt1

Default value is standard

", "RestoreDBClusterToPointInTimeMessage$DBClusterIdentifier": "

The name of the new cluster to be created.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • The first character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

", "RestoreDBClusterToPointInTimeMessage$RestoreType": "

The type of restore to be performed. You can specify one of the following values:

  • full-copy - The new DB cluster is restored as a full copy of the source DB cluster.

  • copy-on-write - The new DB cluster is restored as a clone of the source DB cluster.

Constraints: You can't specify copy-on-write if the engine version of the source DB cluster is earlier than 1.11.

If you don't specify a RestoreType value, then the new DB cluster is restored as a full copy of the source DB cluster.

", "RestoreDBClusterToPointInTimeMessage$SourceDBClusterIdentifier": "

The identifier of the source cluster from which to restore.

Constraints:

  • Must match the identifier of an existing DBCluster.

", "RestoreDBClusterToPointInTimeMessage$DBSubnetGroupName": "

The subnet group name to use for the new cluster.

Constraints: If provided, must match the name of an existing DBSubnetGroup.

Example: mySubnetgroup

", "RestoreDBClusterToPointInTimeMessage$KmsKeyId": "

The KMS key identifier to use when restoring an encrypted cluster from an encrypted cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring a cluster with the same Amazon Web Services account that owns the KMS encryption key used to encrypt the new cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key.

You can restore to a new cluster and encrypt the new cluster with an KMS key that is different from the KMS key used to encrypt the source cluster. The new DB cluster is encrypted with the KMS key identified by the KmsKeyId parameter.

If you do not specify a value for the KmsKeyId parameter, then the following occurs:

  • If the cluster is encrypted, then the restored cluster is encrypted using the KMS key that was used to encrypt the source cluster.

  • If the cluster is not encrypted, then the restored cluster is not encrypted.

If DBClusterIdentifier refers to a cluster that is not encrypted, then the restore request is rejected.

", + "RestoreDBClusterToPointInTimeMessage$StorageType": "

The storage type to associate with the DB cluster.

For information on storage types for Amazon DocumentDB clusters, see Cluster storage configurations in the Amazon DocumentDB Developer Guide.

Valid values for storage type - standard | iopt1

Default value is standard

", "SourceIdsList$member": null, "StartDBClusterMessage$DBClusterIdentifier": "

The identifier of the cluster to restart. Example: docdb-2019-05-28-15-24-52

", "StopDBClusterMessage$DBClusterIdentifier": "

The identifier of the cluster to stop. Example: docdb-2019-05-28-15-24-52

", @@ -1710,6 +1734,7 @@ "refs": { "Certificate$ValidFrom": "

The starting date-time from which the certificate is valid.

Example: 2019-07-31T17:57:09Z

", "Certificate$ValidTill": "

The date-time after which the certificate is no longer valid.

Example: 2024-07-31T17:57:09Z

", + "CertificateDetails$ValidTill": "

The expiration date of the DB instance’s server certificate.

", "DBCluster$EarliestRestorableTime": "

The earliest time to which a database can be restored with point-in-time restore.

", "DBCluster$LatestRestorableTime": "

Specifies the latest time to which a database can be restored with point-in-time restore.

", "DBCluster$ClusterCreateTime": "

Specifies the time when the cluster was created, in Universal Coordinated Time (UTC).

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/docdb/2014-10-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/docdb/2014-10-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/docdb/2014-10-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/docdb/2014-10-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://rds-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://rds-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://rds.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://rds-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://rds.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://rds-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://rds.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://rds.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://rds.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://rds.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/drs/2020-02-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/drs/2020-02-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/drs/2020-02-26/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/drs/2020-02-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1032,6 +1032,7 @@ "copyTags":{"shape":"Boolean"}, "exportBucketArn":{"shape":"ARN"}, "launchDisposition":{"shape":"LaunchDisposition"}, + "launchIntoSourceInstance":{"shape":"Boolean"}, "licensing":{"shape":"Licensing"}, "postLaunchEnabled":{"shape":"Boolean"}, "tags":{"shape":"TagsMap"}, @@ -1992,6 +1993,7 @@ "copyTags":{"shape":"Boolean"}, "ec2LaunchTemplateID":{"shape":"BoundedString"}, "launchDisposition":{"shape":"LaunchDisposition"}, + "launchIntoInstanceProperties":{"shape":"LaunchIntoInstanceProperties"}, "licensing":{"shape":"Licensing"}, "name":{"shape":"SmallBoundedString"}, "postLaunchEnabled":{"shape":"Boolean"}, @@ -2008,6 +2010,7 @@ "exportBucketArn":{"shape":"ARN"}, "launchConfigurationTemplateID":{"shape":"LaunchConfigurationTemplateID"}, "launchDisposition":{"shape":"LaunchDisposition"}, + "launchIntoSourceInstance":{"shape":"Boolean"}, "licensing":{"shape":"Licensing"}, "postLaunchEnabled":{"shape":"Boolean"}, "tags":{"shape":"TagsMap"}, @@ -2039,6 +2042,12 @@ "STARTED" ] }, + "LaunchIntoInstanceProperties":{ + "type":"structure", + "members":{ + "launchIntoEC2InstanceID":{"shape":"EC2InstanceID"} + } + }, "LaunchStatus":{ "type":"string", "enum":[ @@ -2272,6 +2281,7 @@ "actionVersion", "active", "category", + "description", "name", "optional", "order", @@ -2845,7 +2855,7 @@ "type":"string", "max":1011, "min":1, - "pattern":"^([A-Za-z0-9-])+$" + "pattern":"^([A-Za-z0-9-/:])+$" }, "StagingArea":{ "type":"structure", @@ -3143,6 +3153,7 @@ "copyPrivateIp":{"shape":"Boolean"}, "copyTags":{"shape":"Boolean"}, "launchDisposition":{"shape":"LaunchDisposition"}, + "launchIntoInstanceProperties":{"shape":"LaunchIntoInstanceProperties"}, "licensing":{"shape":"Licensing"}, "name":{"shape":"SmallBoundedString"}, "postLaunchEnabled":{"shape":"Boolean"}, @@ -3159,6 +3170,7 @@ "exportBucketArn":{"shape":"ARN"}, "launchConfigurationTemplateID":{"shape":"LaunchConfigurationTemplateID"}, "launchDisposition":{"shape":"LaunchDisposition"}, + "launchIntoSourceInstance":{"shape":"Boolean"}, "licensing":{"shape":"Licensing"}, "postLaunchEnabled":{"shape":"Boolean"}, "targetInstanceTypeRightSizingMethod":{"shape":"TargetInstanceTypeRightSizingMethod"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/drs/2020-02-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/drs/2020-02-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/drs/2020-02-26/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/drs/2020-02-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -148,6 +148,7 @@ "ConversionProperties$forceUefi": "

Whether the volume being converted uses UEFI or not

", "CreateLaunchConfigurationTemplateRequest$copyPrivateIp": "

Copy private IP.

", "CreateLaunchConfigurationTemplateRequest$copyTags": "

Copy tags.

", + "CreateLaunchConfigurationTemplateRequest$launchIntoSourceInstance": "

DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance.

", "CreateLaunchConfigurationTemplateRequest$postLaunchEnabled": "

Whether we want to activate post-launch actions.

", "CreateReplicationConfigurationTemplateRequest$associateDefaultSecurityGroup": "

Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.

", "CreateReplicationConfigurationTemplateRequest$autoReplicateNewDisks": "

Whether to allow the AWS replication agent to automatically replicate newly added disks.

", @@ -161,6 +162,7 @@ "LaunchConfiguration$postLaunchEnabled": "

Whether we want to activate post-launch actions for the Source Server.

", "LaunchConfigurationTemplate$copyPrivateIp": "

Copy private IP.

", "LaunchConfigurationTemplate$copyTags": "

Copy tags.

", + "LaunchConfigurationTemplate$launchIntoSourceInstance": "

DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance.

", "LaunchConfigurationTemplate$postLaunchEnabled": "

Post-launch actions activated.

", "Licensing$osByol": "

Whether to enable \"Bring your own license\" or not.

", "NetworkInterface$isPrimary": "

Whether this is the primary network interface.

", @@ -189,6 +191,7 @@ "UpdateLaunchConfigurationRequest$postLaunchEnabled": "

Whether we want to enable post-launch actions for the Source Server.

", "UpdateLaunchConfigurationTemplateRequest$copyPrivateIp": "

Copy private IP.

", "UpdateLaunchConfigurationTemplateRequest$copyTags": "

Copy tags.

", + "UpdateLaunchConfigurationTemplateRequest$launchIntoSourceInstance": "

DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance.

", "UpdateLaunchConfigurationTemplateRequest$postLaunchEnabled": "

Whether we want to activate post-launch actions.

", "UpdateReplicationConfigurationRequest$associateDefaultSecurityGroup": "

Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.

", "UpdateReplicationConfigurationRequest$autoReplicateNewDisks": "

Whether to allow the AWS replication agent to automatically replicate newly added disks.

", @@ -589,6 +592,7 @@ "IdentificationHints$awsInstanceID": "

AWS Instance ID identification hint.

", "JobLogEventData$conversionServerID": "

The ID of a conversion server.

", "JobLogEventData$targetInstanceID": "

The ID of a Recovery Instance.

", + "LaunchIntoInstanceProperties$launchIntoEC2InstanceID": "

Optionally holds EC2 instance ID of an instance to launch into, instead of launching a new instance during drill, recovery or failback.

", "RecoveryInstance$ec2InstanceID": "

The EC2 instance ID of the Recovery Instance.

" } }, @@ -1086,6 +1090,13 @@ "UpdateLaunchConfigurationTemplateRequest$launchDisposition": "

Launch disposition.

" } }, + "LaunchIntoInstanceProperties": { + "base": "

Launch into existing instance.

", + "refs": { + "LaunchConfiguration$launchIntoInstanceProperties": "

Launch into existing instance properties.

", + "UpdateLaunchConfigurationRequest$launchIntoInstanceProperties": "

Launch into existing instance properties.

" + } + }, "LaunchStatus": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dynamodb/2012-08-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dynamodb/2012-08-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dynamodb/2012-08-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dynamodb/2012-08-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1947,7 +1947,9 @@ "FailureMessage":{"shape":"FailureMessage"}, "ExportFormat":{"shape":"ExportFormat"}, "BilledSizeBytes":{"shape":"BilledSizeBytes"}, - "ItemCount":{"shape":"ItemCount"} + "ItemCount":{"shape":"ItemCount"}, + "ExportType":{"shape":"ExportType"}, + "IncrementalExportSpecification":{"shape":"IncrementalExportSpecification"} } }, "ExportEndTime":{"type":"timestamp"}, @@ -1958,6 +1960,7 @@ "ION" ] }, + "ExportFromTime":{"type":"timestamp"}, "ExportManifest":{"type":"string"}, "ExportNextToken":{"type":"string"}, "ExportNotFoundException":{ @@ -1984,7 +1987,8 @@ "type":"structure", "members":{ "ExportArn":{"shape":"ExportArn"}, - "ExportStatus":{"shape":"ExportStatus"} + "ExportStatus":{"shape":"ExportStatus"}, + "ExportType":{"shape":"ExportType"} } }, "ExportTableToPointInTimeInput":{ @@ -2005,7 +2009,9 @@ "S3Prefix":{"shape":"S3Prefix"}, "S3SseAlgorithm":{"shape":"S3SseAlgorithm"}, "S3SseKmsKeyId":{"shape":"S3SseKmsKeyId"}, - "ExportFormat":{"shape":"ExportFormat"} + "ExportFormat":{"shape":"ExportFormat"}, + "ExportType":{"shape":"ExportType"}, + "IncrementalExportSpecification":{"shape":"IncrementalExportSpecification"} } }, "ExportTableToPointInTimeOutput":{ @@ -2015,6 +2021,21 @@ } }, "ExportTime":{"type":"timestamp"}, + "ExportToTime":{"type":"timestamp"}, + "ExportType":{ + "type":"string", + "enum":[ + "FULL_EXPORT", + "INCREMENTAL_EXPORT" + ] + }, + "ExportViewType":{ + "type":"string", + "enum":[ + "NEW_IMAGE", + "NEW_AND_OLD_IMAGES" + ] + }, "ExpressionAttributeNameMap":{ "type":"map", "key":{"shape":"ExpressionAttributeNameVariable"}, @@ -2325,6 +2346,14 @@ "type":"long", "min":0 }, + "IncrementalExportSpecification":{ + "type":"structure", + "members":{ + "ExportFromTime":{"shape":"ExportFromTime"}, + "ExportToTime":{"shape":"ExportToTime"}, + "ExportViewType":{"shape":"ExportViewType"} + } + }, "IndexName":{ "type":"string", "max":255, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dynamodb/2012-08-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dynamodb/2012-08-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dynamodb/2012-08-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dynamodb/2012-08-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -31,7 +31,7 @@ "ExportTableToPointInTime": "

Exports table data to an S3 bucket. The table must have point in time recovery enabled, and you can export data from any time within the point in time recovery window.

", "GetItem": "

The GetItem operation returns a set of attributes for the item with the given primary key. If there is no matching item, GetItem does not return any data and there will be no Item element in the response.

GetItem provides an eventually consistent read by default. If your application requires a strongly consistent read, set ConsistentRead to true. Although a strongly consistent read might take more time than an eventually consistent read, it always returns the last updated value.

", "ImportTable": "

Imports table data from an S3 bucket.

", - "ListBackups": "

List backups associated with an Amazon Web Services account. To list backups for a given table, specify TableName. ListBackups returns a paginated list of results with at most 1 MB worth of items in a page. You can also specify a maximum number of entries to be returned in a page.

In the request, start time is inclusive, but end time is exclusive. Note that these boundaries are for the time at which the original backup was requested.

You can call ListBackups a maximum of five times per second.

", + "ListBackups": "

List DynamoDB backups that are associated with an Amazon Web Services account and weren't made with Amazon Web Services Backup. To list these backups for a given table, specify TableName. ListBackups returns a paginated list of results with at most 1 MB worth of items in a page. You can also specify a maximum number of entries to be returned in a page.

In the request, start time is inclusive, but end time is exclusive. Note that these boundaries are for the time at which the original backup was requested.

You can call ListBackups a maximum of five times per second.

If you want to retrieve the complete list of backups made with Amazon Web Services Backup, use the Amazon Web Services Backup list API.

", "ListContributorInsights": "

Returns a list of ContributorInsightsSummary for a table and all its global secondary indexes.

", "ListExports": "

Lists completed exports within the past 90 days.

", "ListGlobalTables": "

Lists all global tables that have a replica in the specified Region.

This operation only applies to Version 2017.11.29 (Legacy) of global tables. We recommend using Version 2019.11.21 (Current) when creating new global tables, as it provides greater flexibility, higher efficiency and consumes less write capacity than 2017.11.29 (Legacy). To determine which version you are using, see Determining the version. To update existing global tables from version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see Updating global tables.

", @@ -547,7 +547,7 @@ "Put$ConditionExpression": "

A condition that must be satisfied in order for a conditional update to succeed.

", "PutItemInput$ConditionExpression": "

A condition that must be satisfied in order for a conditional PutItem operation to succeed.

An expression can contain any of the following:

  • Functions: attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size

    These function names are case-sensitive.

  • Comparison operators: = | <> | < | > | <= | >= | BETWEEN | IN

  • Logical operators: AND | OR | NOT

For more information on condition expressions, see Condition Expressions in the Amazon DynamoDB Developer Guide.

", "QueryInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", - "ScanInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Scan operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", + "ScanInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Scan operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", "Update$ConditionExpression": "

A condition that must be satisfied in order for a conditional update to succeed.

", "UpdateItemInput$ConditionExpression": "

A condition that must be satisfied in order for a conditional update to succeed.

An expression can contain any of the following:

  • Functions: attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size

    These function names are case-sensitive.

  • Comparison operators: = | <> | < | > | <= | >= | BETWEEN | IN

  • Logical operators: AND | OR | NOT

For more information about condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

" } @@ -1112,6 +1112,12 @@ "ExportTableToPointInTimeInput$ExportFormat": "

The format for the exported data. Valid values for ExportFormat are DYNAMODB_JSON or ION.

" } }, + "ExportFromTime": { + "base": null, + "refs": { + "IncrementalExportSpecification$ExportFromTime": "

Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

" + } + }, "ExportManifest": { "base": null, "refs": { @@ -1172,6 +1178,26 @@ "ExportTableToPointInTimeInput$ExportTime": "

Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table export will be a snapshot of the table's state at this point in time.

" } }, + "ExportToTime": { + "base": null, + "refs": { + "IncrementalExportSpecification$ExportToTime": "

Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

" + } + }, + "ExportType": { + "base": null, + "refs": { + "ExportDescription$ExportType": "

The type of export that was performed. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT.

", + "ExportSummary$ExportType": "

The type of export that was performed. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT.

", + "ExportTableToPointInTimeInput$ExportType": "

Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. The default value is FULL_EXPORT. If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

" + } + }, + "ExportViewType": { + "base": null, + "refs": { + "IncrementalExportSpecification$ExportViewType": "

The view type that was chosen for the export. Valid values are NEW_AND_OLD_IMAGES and NEW_IMAGES. The default value is NEW_AND_OLD_IMAGES.

" + } + }, "ExpressionAttributeNameMap": { "base": null, "refs": { @@ -1461,6 +1487,13 @@ "ImportTableDescription$ImportedItemCount": "

The number of items successfully imported into the new table.

" } }, + "IncrementalExportSpecification": { + "base": "

Optional object containing the parameters specific to an incremental export.

", + "refs": { + "ExportDescription$IncrementalExportSpecification": "

Optional object containing the parameters specific to an incremental export.

", + "ExportTableToPointInTimeInput$IncrementalExportSpecification": "

Optional object containing the parameters specific to an incremental export.

" + } + }, "IndexName": { "base": null, "refs": { @@ -2999,7 +3032,7 @@ } }, "TransactionCanceledException": { - "base": "

The entire transaction request was canceled.

DynamoDB cancels a TransactWriteItems request under the following circumstances:

  • A condition in one of the condition expressions is not met.

  • A table in the TransactWriteItems request is in a different account or region.

  • More than one action in the TransactWriteItems operation targets the same item.

  • There is insufficient provisioned capacity for the transaction to be completed.

  • An item size becomes too large (larger than 400 KB), or a local secondary index (LSI) becomes too large, or a similar validation error occurs because of changes made by the transaction.

  • There is a user error, such as an invalid data format.

DynamoDB cancels a TransactGetItems request under the following circumstances:

  • There is an ongoing TransactGetItems operation that conflicts with a concurrent PutItem, UpdateItem, DeleteItem or TransactWriteItems request. In this case the TransactGetItems operation fails with a TransactionCanceledException.

  • A table in the TransactGetItems request is in a different account or region.

  • There is insufficient provisioned capacity for the transaction to be completed.

  • There is a user error, such as an invalid data format.

If using Java, DynamoDB lists the cancellation reasons on the CancellationReasons property. This property is not set for other languages. Transaction cancellation reasons are ordered in the order of requested items, if an item has no error it will have None code and Null message.

Cancellation reason codes and possible error messages:

  • No Errors:

    • Code: None

    • Message: null

  • Conditional Check Failed:

    • Code: ConditionalCheckFailed

    • Message: The conditional request failed.

  • Item Collection Size Limit Exceeded:

    • Code: ItemCollectionSizeLimitExceeded

    • Message: Collection size exceeded.

  • Transaction Conflict:

    • Code: TransactionConflict

    • Message: Transaction is ongoing for the item.

  • Provisioned Throughput Exceeded:

    • Code: ProvisionedThroughputExceeded

    • Messages:

      • The level of configured provisioned throughput for the table was exceeded. Consider increasing your provisioning level with the UpdateTable API.

        This Message is received when provisioned throughput is exceeded is on a provisioned DynamoDB table.

      • The level of configured provisioned throughput for one or more global secondary indexes of the table was exceeded. Consider increasing your provisioning level for the under-provisioned global secondary indexes with the UpdateTable API.

        This message is returned when provisioned throughput is exceeded is on a provisioned GSI.

  • Throttling Error:

    • Code: ThrottlingError

    • Messages:

      • Throughput exceeds the current capacity of your table or index. DynamoDB is automatically scaling your table or index so please try again shortly. If exceptions persist, check if you have a hot key: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-partition-key-design.html.

        This message is returned when writes get throttled on an On-Demand table as DynamoDB is automatically scaling the table.

      • Throughput exceeds the current capacity for one or more global secondary indexes. DynamoDB is automatically scaling your index so please try again shortly.

        This message is returned when writes get throttled on an On-Demand GSI as DynamoDB is automatically scaling the GSI.

  • Validation Error:

    • Code: ValidationError

    • Messages:

      • One or more parameter values were invalid.

      • The update expression attempted to update the secondary index key beyond allowed size limits.

      • The update expression attempted to update the secondary index key to unsupported type.

      • An operand in the update expression has an incorrect data type.

      • Item size to update has exceeded the maximum allowed size.

      • Number overflow. Attempting to store a number with magnitude larger than supported range.

      • Type mismatch for attribute to update.

      • Nesting Levels have exceeded supported limits.

      • The document path provided in the update expression is invalid for update.

      • The provided expression refers to an attribute that does not exist in the item.

", + "base": "

The entire transaction request was canceled.

DynamoDB cancels a TransactWriteItems request under the following circumstances:

  • A condition in one of the condition expressions is not met.

  • A table in the TransactWriteItems request is in a different account or region.

  • More than one action in the TransactWriteItems operation targets the same item.

  • There is insufficient provisioned capacity for the transaction to be completed.

  • An item size becomes too large (larger than 400 KB), or a local secondary index (LSI) becomes too large, or a similar validation error occurs because of changes made by the transaction.

  • There is a user error, such as an invalid data format.

  • There is an ongoing TransactWriteItems operation that conflicts with a concurrent TransactWriteItems request. In this case the TransactWriteItems operation fails with a TransactionCanceledException.

DynamoDB cancels a TransactGetItems request under the following circumstances:

  • There is an ongoing TransactGetItems operation that conflicts with a concurrent PutItem, UpdateItem, DeleteItem or TransactWriteItems request. In this case the TransactGetItems operation fails with a TransactionCanceledException.

  • A table in the TransactGetItems request is in a different account or region.

  • There is insufficient provisioned capacity for the transaction to be completed.

  • There is a user error, such as an invalid data format.

If using Java, DynamoDB lists the cancellation reasons on the CancellationReasons property. This property is not set for other languages. Transaction cancellation reasons are ordered in the order of requested items, if an item has no error it will have None code and Null message.

Cancellation reason codes and possible error messages:

  • No Errors:

    • Code: None

    • Message: null

  • Conditional Check Failed:

    • Code: ConditionalCheckFailed

    • Message: The conditional request failed.

  • Item Collection Size Limit Exceeded:

    • Code: ItemCollectionSizeLimitExceeded

    • Message: Collection size exceeded.

  • Transaction Conflict:

    • Code: TransactionConflict

    • Message: Transaction is ongoing for the item.

  • Provisioned Throughput Exceeded:

    • Code: ProvisionedThroughputExceeded

    • Messages:

      • The level of configured provisioned throughput for the table was exceeded. Consider increasing your provisioning level with the UpdateTable API.

        This Message is received when provisioned throughput is exceeded is on a provisioned DynamoDB table.

      • The level of configured provisioned throughput for one or more global secondary indexes of the table was exceeded. Consider increasing your provisioning level for the under-provisioned global secondary indexes with the UpdateTable API.

        This message is returned when provisioned throughput is exceeded is on a provisioned GSI.

  • Throttling Error:

    • Code: ThrottlingError

    • Messages:

      • Throughput exceeds the current capacity of your table or index. DynamoDB is automatically scaling your table or index so please try again shortly. If exceptions persist, check if you have a hot key: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-partition-key-design.html.

        This message is returned when writes get throttled on an On-Demand table as DynamoDB is automatically scaling the table.

      • Throughput exceeds the current capacity for one or more global secondary indexes. DynamoDB is automatically scaling your index so please try again shortly.

        This message is returned when writes get throttled on an On-Demand GSI as DynamoDB is automatically scaling the GSI.

  • Validation Error:

    • Code: ValidationError

    • Messages:

      • One or more parameter values were invalid.

      • The update expression attempted to update the secondary index key beyond allowed size limits.

      • The update expression attempted to update the secondary index key to unsupported type.

      • An operand in the update expression has an incorrect data type.

      • Item size to update has exceeded the maximum allowed size.

      • Number overflow. Attempting to store a number with magnitude larger than supported range.

      • Type mismatch for attribute to update.

      • Nesting Levels have exceeded supported limits.

      • The document path provided in the update expression is invalid for update.

      • The provided expression refers to an attribute that does not exist in the item.

", "refs": { } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,345 +57,310 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://dynamodb.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "PartitionResult" }, - { - "conditions": [], - "endpoint": { - "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseDualStack" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "name" ] - } + }, + "aws-us-gov" ] } ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "endpoint": { + "url": "https://dynamodb.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", - "rules": [ + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "local" + "supportsDualStack" ] } - ], - "endpoint": { - "url": "http://localhost:8000", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "dynamodb", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "rules": [ { "conditions": [], "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "local" ] } - ] + ], + "endpoint": { + "url": "http://localhost:8000", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "dynamodb", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -200,6 +200,15 @@ "input":{"shape":"AssociateInstanceEventWindowRequest"}, "output":{"shape":"AssociateInstanceEventWindowResult"} }, + "AssociateIpamByoasn":{ + "name":"AssociateIpamByoasn", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AssociateIpamByoasnRequest"}, + "output":{"shape":"AssociateIpamByoasnResult"} + }, "AssociateIpamResourceDiscovery":{ "name":"AssociateIpamResourceDiscovery", "http":{ @@ -1885,6 +1894,15 @@ "input":{"shape":"DeprovisionByoipCidrRequest"}, "output":{"shape":"DeprovisionByoipCidrResult"} }, + "DeprovisionIpamByoasn":{ + "name":"DeprovisionIpamByoasn", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeprovisionIpamByoasnRequest"}, + "output":{"shape":"DeprovisionIpamByoasnResult"} + }, "DeprovisionIpamPoolCidr":{ "name":"DeprovisionIpamPoolCidr", "http":{ @@ -2019,6 +2037,15 @@ "input":{"shape":"DescribeByoipCidrsRequest"}, "output":{"shape":"DescribeByoipCidrsResult"} }, + "DescribeCapacityBlockOfferings":{ + "name":"DescribeCapacityBlockOfferings", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeCapacityBlockOfferingsRequest"}, + "output":{"shape":"DescribeCapacityBlockOfferingsResult"} + }, "DescribeCapacityReservationFleets":{ "name":"DescribeCapacityReservationFleets", "http":{ @@ -2388,6 +2415,15 @@ "input":{"shape":"DescribeInstanceStatusRequest"}, "output":{"shape":"DescribeInstanceStatusResult"} }, + "DescribeInstanceTopology":{ + "name":"DescribeInstanceTopology", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeInstanceTopologyRequest"}, + "output":{"shape":"DescribeInstanceTopologyResult"} + }, "DescribeInstanceTypeOfferings":{ "name":"DescribeInstanceTypeOfferings", "http":{ @@ -2424,6 +2460,15 @@ "input":{"shape":"DescribeInternetGatewaysRequest"}, "output":{"shape":"DescribeInternetGatewaysResult"} }, + "DescribeIpamByoasn":{ + "name":"DescribeIpamByoasn", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeIpamByoasnRequest"}, + "output":{"shape":"DescribeIpamByoasnResult"} + }, "DescribeIpamPools":{ "name":"DescribeIpamPools", "http":{ @@ -2559,6 +2604,15 @@ "input":{"shape":"DescribeLocalGatewaysRequest"}, "output":{"shape":"DescribeLocalGatewaysResult"} }, + "DescribeLockedSnapshots":{ + "name":"DescribeLockedSnapshots", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeLockedSnapshotsRequest"}, + "output":{"shape":"DescribeLockedSnapshotsResult"} + }, "DescribeManagedPrefixLists":{ "name":"DescribeManagedPrefixLists", "http":{ @@ -3339,6 +3393,15 @@ "input":{"shape":"DisableFastSnapshotRestoresRequest"}, "output":{"shape":"DisableFastSnapshotRestoresResult"} }, + "DisableImage":{ + "name":"DisableImage", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisableImageRequest"}, + "output":{"shape":"DisableImageResult"} + }, "DisableImageBlockPublicAccess":{ "name":"DisableImageBlockPublicAccess", "http":{ @@ -3375,6 +3438,15 @@ "input":{"shape":"DisableSerialConsoleAccessRequest"}, "output":{"shape":"DisableSerialConsoleAccessResult"} }, + "DisableSnapshotBlockPublicAccess":{ + "name":"DisableSnapshotBlockPublicAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisableSnapshotBlockPublicAccessRequest"}, + "output":{"shape":"DisableSnapshotBlockPublicAccessResult"} + }, "DisableTransitGatewayRouteTablePropagation":{ "name":"DisableTransitGatewayRouteTablePropagation", "http":{ @@ -3454,6 +3526,15 @@ "input":{"shape":"DisassociateInstanceEventWindowRequest"}, "output":{"shape":"DisassociateInstanceEventWindowResult"} }, + "DisassociateIpamByoasn":{ + "name":"DisassociateIpamByoasn", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisassociateIpamByoasnRequest"}, + "output":{"shape":"DisassociateIpamByoasnResult"} + }, "DisassociateIpamResourceDiscovery":{ "name":"DisassociateIpamResourceDiscovery", "http":{ @@ -3579,6 +3660,15 @@ "input":{"shape":"EnableFastSnapshotRestoresRequest"}, "output":{"shape":"EnableFastSnapshotRestoresResult"} }, + "EnableImage":{ + "name":"EnableImage", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"EnableImageRequest"}, + "output":{"shape":"EnableImageResult"} + }, "EnableImageBlockPublicAccess":{ "name":"EnableImageBlockPublicAccess", "http":{ @@ -3624,6 +3714,15 @@ "input":{"shape":"EnableSerialConsoleAccessRequest"}, "output":{"shape":"EnableSerialConsoleAccessResult"} }, + "EnableSnapshotBlockPublicAccess":{ + "name":"EnableSnapshotBlockPublicAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"EnableSnapshotBlockPublicAccessRequest"}, + "output":{"shape":"EnableSnapshotBlockPublicAccessResult"} + }, "EnableTransitGatewayRouteTablePropagation":{ "name":"EnableTransitGatewayRouteTablePropagation", "http":{ @@ -3865,6 +3964,15 @@ "input":{"shape":"GetIpamDiscoveredAccountsRequest"}, "output":{"shape":"GetIpamDiscoveredAccountsResult"} }, + "GetIpamDiscoveredPublicAddresses":{ + "name":"GetIpamDiscoveredPublicAddresses", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetIpamDiscoveredPublicAddressesRequest"}, + "output":{"shape":"GetIpamDiscoveredPublicAddressesResult"} + }, "GetIpamDiscoveredResourceCidrs":{ "name":"GetIpamDiscoveredResourceCidrs", "http":{ @@ -3964,6 +4072,15 @@ "input":{"shape":"GetReservedInstancesExchangeQuoteRequest"}, "output":{"shape":"GetReservedInstancesExchangeQuoteResult"} }, + "GetSecurityGroupsForVpc":{ + "name":"GetSecurityGroupsForVpc", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetSecurityGroupsForVpcRequest"}, + "output":{"shape":"GetSecurityGroupsForVpcResult"} + }, "GetSerialConsoleAccessStatus":{ "name":"GetSerialConsoleAccessStatus", "http":{ @@ -3973,6 +4090,15 @@ "input":{"shape":"GetSerialConsoleAccessStatusRequest"}, "output":{"shape":"GetSerialConsoleAccessStatusResult"} }, + "GetSnapshotBlockPublicAccessState":{ + "name":"GetSnapshotBlockPublicAccessState", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetSnapshotBlockPublicAccessStateRequest"}, + "output":{"shape":"GetSnapshotBlockPublicAccessStateResult"} + }, "GetSpotPlacementScores":{ "name":"GetSpotPlacementScores", "http":{ @@ -4171,6 +4297,15 @@ "input":{"shape":"ListSnapshotsInRecycleBinRequest"}, "output":{"shape":"ListSnapshotsInRecycleBinResult"} }, + "LockSnapshot":{ + "name":"LockSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"LockSnapshotRequest"}, + "output":{"shape":"LockSnapshotResult"} + }, "ModifyAddressAttribute":{ "name":"ModifyAddressAttribute", "http":{ @@ -4774,6 +4909,15 @@ "input":{"shape":"ProvisionByoipCidrRequest"}, "output":{"shape":"ProvisionByoipCidrResult"} }, + "ProvisionIpamByoasn":{ + "name":"ProvisionIpamByoasn", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ProvisionIpamByoasnRequest"}, + "output":{"shape":"ProvisionIpamByoasnResult"} + }, "ProvisionIpamPoolCidr":{ "name":"ProvisionIpamPoolCidr", "http":{ @@ -4792,6 +4936,15 @@ "input":{"shape":"ProvisionPublicIpv4PoolCidrRequest"}, "output":{"shape":"ProvisionPublicIpv4PoolCidrResult"} }, + "PurchaseCapacityBlock":{ + "name":"PurchaseCapacityBlock", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PurchaseCapacityBlockRequest"}, + "output":{"shape":"PurchaseCapacityBlockResult"} + }, "PurchaseHostReservation":{ "name":"PurchaseHostReservation", "http":{ @@ -5294,6 +5447,15 @@ "input":{"shape":"UnassignPrivateNatGatewayAddressRequest"}, "output":{"shape":"UnassignPrivateNatGatewayAddressResult"} }, + "UnlockSnapshot":{ + "name":"UnlockSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UnlockSnapshotRequest"}, + "output":{"shape":"UnlockSnapshotResult"} + }, "UnmonitorInstances":{ "name":"UnmonitorInstances", "http":{ @@ -5355,10 +5517,11 @@ "AcceleratorManufacturer":{ "type":"string", "enum":[ - "nvidia", - "amd", "amazon-web-services", - "xilinx" + "amd", + "nvidia", + "xilinx", + "habana" ] }, "AcceleratorManufacturerSet":{ @@ -5372,14 +5535,17 @@ "type":"string", "enum":[ "a100", - "v100", + "inferentia", + "k520", "k80", - "t4", "m60", "radeon-pro-v520", + "t4", "vu9p", - "inferentia", - "k520" + "v100", + "a10g", + "h100", + "t4g" ] }, "AcceleratorNameSet":{ @@ -5984,6 +6150,7 @@ "required":["Cidr"], "members":{ "Cidr":{"shape":"String"}, + "Asn":{"shape":"String"}, "DryRun":{"shape":"Boolean"} } }, @@ -6119,6 +6286,10 @@ }, "Description":{"shape":"String"}, "PreviewNextCidr":{"shape":"Boolean"}, + "AllowedCidrs":{ + "shape":"IpamPoolAllocationAllowedCidrs", + "locationName":"AllowedCidr" + }, "DisallowedCidrs":{ "shape":"IpamPoolAllocationDisallowedCidrs", "locationName":"DisallowedCidr" @@ -6541,6 +6712,67 @@ "locationName":"item" } }, + "AsnAssociation":{ + "type":"structure", + "members":{ + "Asn":{ + "shape":"String", + "locationName":"asn" + }, + "Cidr":{ + "shape":"String", + "locationName":"cidr" + }, + "StatusMessage":{ + "shape":"String", + "locationName":"statusMessage" + }, + "State":{ + "shape":"AsnAssociationState", + "locationName":"state" + } + } + }, + "AsnAssociationSet":{ + "type":"list", + "member":{ + "shape":"AsnAssociation", + "locationName":"item" + } + }, + "AsnAssociationState":{ + "type":"string", + "enum":[ + "disassociated", + "failed-disassociation", + "failed-association", + "pending-disassociation", + "pending-association", + "associated" + ] + }, + "AsnAuthorizationContext":{ + "type":"structure", + "required":[ + "Message", + "Signature" + ], + "members":{ + "Message":{"shape":"String"}, + "Signature":{"shape":"String"} + } + }, + "AsnState":{ + "type":"string", + "enum":[ + "deprovisioned", + "failed-deprovision", + "failed-provision", + "pending-deprovision", + "pending-provision", + "provisioned" + ] + }, "AssetId":{"type":"string"}, "AssetIdList":{ "type":"list", @@ -6819,6 +7051,27 @@ } } }, + "AssociateIpamByoasnRequest":{ + "type":"structure", + "required":[ + "Asn", + "Cidr" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "Asn":{"shape":"String"}, + "Cidr":{"shape":"String"} + } + }, + "AssociateIpamByoasnResult":{ + "type":"structure", + "members":{ + "AsnAssociation":{ + "shape":"AsnAssociation", + "locationName":"asnAssociation" + } + } + }, "AssociateIpamResourceDiscoveryRequest":{ "type":"structure", "required":[ @@ -6914,10 +7167,7 @@ }, "AssociateSubnetCidrBlockRequest":{ "type":"structure", - "required":[ - "Ipv6CidrBlock", - "SubnetId" - ], + "required":["SubnetId"], "members":{ "Ipv6CidrBlock":{ "shape":"String", @@ -6926,7 +7176,9 @@ "SubnetId":{ "shape":"SubnetId", "locationName":"subnetId" - } + }, + "Ipv6IpamPoolId":{"shape":"IpamPoolId"}, + "Ipv6NetmaskLength":{"shape":"NetmaskLength"} } }, "AssociateSubnetCidrBlockResult":{ @@ -7933,6 +8185,34 @@ ] }, "BurstablePerformanceFlag":{"type":"boolean"}, + "Byoasn":{ + "type":"structure", + "members":{ + "Asn":{ + "shape":"String", + "locationName":"asn" + }, + "IpamId":{ + "shape":"IpamId", + "locationName":"ipamId" + }, + "StatusMessage":{ + "shape":"String", + "locationName":"statusMessage" + }, + "State":{ + "shape":"AsnState", + "locationName":"state" + } + } + }, + "ByoasnSet":{ + "type":"list", + "member":{ + "shape":"Byoasn", + "locationName":"item" + } + }, "ByoipCidr":{ "type":"structure", "members":{ @@ -7944,6 +8224,10 @@ "shape":"String", "locationName":"description" }, + "AsnAssociations":{ + "shape":"AsnAssociationSet", + "locationName":"asnAssociationSet" + }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" @@ -8312,6 +8596,58 @@ "locationName":"item" } }, + "CapacityBlockOffering":{ + "type":"structure", + "members":{ + "CapacityBlockOfferingId":{ + "shape":"OfferingId", + "locationName":"capacityBlockOfferingId" + }, + "InstanceType":{ + "shape":"String", + "locationName":"instanceType" + }, + "AvailabilityZone":{ + "shape":"String", + "locationName":"availabilityZone" + }, + "InstanceCount":{ + "shape":"Integer", + "locationName":"instanceCount" + }, + "StartDate":{ + "shape":"MillisecondDateTime", + "locationName":"startDate" + }, + "EndDate":{ + "shape":"MillisecondDateTime", + "locationName":"endDate" + }, + "CapacityBlockDurationHours":{ + "shape":"Integer", + "locationName":"capacityBlockDurationHours" + }, + "UpfrontFee":{ + "shape":"String", + "locationName":"upfrontFee" + }, + "CurrencyCode":{ + "shape":"String", + "locationName":"currencyCode" + }, + "Tenancy":{ + "shape":"CapacityReservationTenancy", + "locationName":"tenancy" + } + } + }, + "CapacityBlockOfferingSet":{ + "type":"list", + "member":{ + "shape":"CapacityBlockOffering", + "locationName":"item" + } + }, "CapacityReservation":{ "type":"structure", "members":{ @@ -8406,6 +8742,10 @@ "CapacityAllocations":{ "shape":"CapacityAllocations", "locationName":"capacityAllocationSet" + }, + "ReservationType":{ + "shape":"CapacityReservationType", + "locationName":"reservationType" } } }, @@ -8562,7 +8902,8 @@ "RHEL with SQL Server Web", "RHEL with HA", "RHEL with HA and SQL Server Standard", - "RHEL with HA and SQL Server Enterprise" + "RHEL with HA and SQL Server Enterprise", + "Ubuntu Pro" ] }, "CapacityReservationOptions":{ @@ -8621,7 +8962,10 @@ "expired", "cancelled", "pending", - "failed" + "failed", + "scheduled", + "payment-pending", + "payment-failed" ] }, "CapacityReservationTarget":{ @@ -8651,6 +8995,13 @@ "dedicated" ] }, + "CapacityReservationType":{ + "type":"string", + "enum":[ + "default", + "capacity-block" + ] + }, "CarrierGateway":{ "type":"structure", "members":{ @@ -8898,7 +9249,6 @@ "type":"string", "sensitive":true }, - "ClientVpnAssociationId":{"type":"string"}, "ClientVpnAuthentication":{ "type":"structure", "members":{ @@ -9505,6 +9855,65 @@ "type":"string", "enum":["Topic"] }, + "ConnectionTrackingConfiguration":{ + "type":"structure", + "members":{ + "TcpEstablishedTimeout":{ + "shape":"Integer", + "locationName":"tcpEstablishedTimeout" + }, + "UdpStreamTimeout":{ + "shape":"Integer", + "locationName":"udpStreamTimeout" + }, + "UdpTimeout":{ + "shape":"Integer", + "locationName":"udpTimeout" + } + } + }, + "ConnectionTrackingSpecification":{ + "type":"structure", + "members":{ + "TcpEstablishedTimeout":{ + "shape":"Integer", + "locationName":"tcpEstablishedTimeout" + }, + "UdpTimeout":{ + "shape":"Integer", + "locationName":"udpTimeout" + }, + "UdpStreamTimeout":{ + "shape":"Integer", + "locationName":"udpStreamTimeout" + } + } + }, + "ConnectionTrackingSpecificationRequest":{ + "type":"structure", + "members":{ + "TcpEstablishedTimeout":{"shape":"Integer"}, + "UdpStreamTimeout":{"shape":"Integer"}, + "UdpTimeout":{"shape":"Integer"} + } + }, + "ConnectionTrackingSpecificationResponse":{ + "type":"structure", + "members":{ + "TcpEstablishedTimeout":{ + "shape":"Integer", + "locationName":"tcpEstablishedTimeout" + }, + "UdpStreamTimeout":{ + "shape":"Integer", + "locationName":"udpStreamTimeout" + }, + "UdpTimeout":{ + "shape":"Integer", + "locationName":"udpTimeout" + } + } + }, "ConnectivityType":{ "type":"string", "enum":[ @@ -9566,6 +9975,12 @@ "completed" ] }, + "CoolOffPeriodRequestHours":{ + "type":"integer", + "max":72, + "min":1 + }, + "CoolOffPeriodResponseHours":{"type":"integer"}, "CopyFpgaImageRequest":{ "type":"structure", "required":[ @@ -9703,6 +10118,7 @@ "amazon-web-services" ] }, + "CpuManufacturerName":{"type":"string"}, "CpuManufacturerSet":{ "type":"list", "member":{ @@ -10032,7 +10448,7 @@ "type":"structure", "required":["AvailabilityZone"], "members":{ - "AvailabilityZone":{"shape":"String"}, + "AvailabilityZone":{"shape":"AvailabilityZoneName"}, "DryRun":{"shape":"Boolean"}, "Ipv6Native":{"shape":"Boolean"} } @@ -10489,7 +10905,8 @@ "idempotencyToken":true }, "AwsService":{"shape":"IpamPoolAwsService"}, - "PublicIpSource":{"shape":"IpamPoolPublicIpSource"} + "PublicIpSource":{"shape":"IpamPoolPublicIpSource"}, + "SourceResource":{"shape":"IpamPoolSourceResourceRequest"} } }, "CreateIpamPoolResult":{ @@ -10517,7 +10934,8 @@ "ClientToken":{ "shape":"String", "idempotencyToken":true - } + }, + "Tier":{"shape":"IpamTier"} } }, "CreateIpamResourceDiscoveryRequest":{ @@ -11060,7 +11478,8 @@ "shape":"String", "idempotencyToken":true }, - "EnablePrimaryIpv6":{"shape":"Boolean"} + "EnablePrimaryIpv6":{"shape":"Boolean"}, + "ConnectionTrackingSpecification":{"shape":"ConnectionTrackingSpecificationRequest"} } }, "CreateNetworkInterfaceResult":{ @@ -11480,7 +11899,11 @@ "shape":"Boolean", "locationName":"dryRun" }, - "Ipv6Native":{"shape":"Boolean"} + "Ipv6Native":{"shape":"Boolean"}, + "Ipv4IpamPoolId":{"shape":"IpamPoolId"}, + "Ipv4NetmaskLength":{"shape":"NetmaskLength"}, + "Ipv6IpamPoolId":{"shape":"IpamPoolId"}, + "Ipv6NetmaskLength":{"shape":"NetmaskLength"} } }, "CreateSubnetResult":{ @@ -11928,6 +12351,7 @@ "type":"structure", "members":{ "DnsSupport":{"shape":"DnsSupportValue"}, + "SecurityGroupReferencingSupport":{"shape":"SecurityGroupReferencingSupportValue"}, "Ipv6Support":{"shape":"Ipv6SupportValue"}, "ApplianceModeSupport":{"shape":"ApplianceModeSupportValue"} } @@ -11994,7 +12418,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "SseSpecification":{"shape":"VerifiedAccessSseSpecificationRequest"} } }, "CreateVerifiedAccessEndpointResult":{ @@ -12028,7 +12453,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "SseSpecification":{"shape":"VerifiedAccessSseSpecificationRequest"} } }, "CreateVerifiedAccessGroupResult":{ @@ -12052,7 +12478,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "FIPSEnabled":{"shape":"Boolean"} } }, "CreateVerifiedAccessInstanceResult":{ @@ -12067,7 +12494,8 @@ "CreateVerifiedAccessTrustProviderDeviceOptions":{ "type":"structure", "members":{ - "TenantId":{"shape":"String"} + "TenantId":{"shape":"String"}, + "PublicSigningKeyUrl":{"shape":"String"} } }, "CreateVerifiedAccessTrustProviderOidcOptions":{ @@ -12104,7 +12532,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "SseSpecification":{"shape":"VerifiedAccessSseSpecificationRequest"} } }, "CreateVerifiedAccessTrustProviderResult":{ @@ -12610,7 +13039,8 @@ "type":"string", "enum":[ "spot", - "on-demand" + "on-demand", + "capacity-block" ] }, "DefaultingDhcpOptionsId":{"type":"string"}, @@ -12932,7 +13362,8 @@ "required":["IpamPoolId"], "members":{ "DryRun":{"shape":"Boolean"}, - "IpamPoolId":{"shape":"IpamPoolId"} + "IpamPoolId":{"shape":"IpamPoolId"}, + "Cascade":{"shape":"Boolean"} } }, "DeleteIpamPoolResult":{ @@ -14060,6 +14491,27 @@ } } }, + "DeprovisionIpamByoasnRequest":{ + "type":"structure", + "required":[ + "IpamId", + "Asn" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "IpamId":{"shape":"IpamId"}, + "Asn":{"shape":"String"} + } + }, + "DeprovisionIpamByoasnResult":{ + "type":"structure", + "members":{ + "Byoasn":{ + "shape":"Byoasn", + "locationName":"byoasn" + } + } + }, "DeprovisionIpamPoolCidrRequest":{ "type":"structure", "required":["IpamPoolId"], @@ -14420,6 +14872,42 @@ } } }, + "DescribeCapacityBlockOfferingsMaxResults":{ + "type":"integer", + "max":1000, + "min":1 + }, + "DescribeCapacityBlockOfferingsRequest":{ + "type":"structure", + "required":[ + "InstanceType", + "InstanceCount", + "CapacityDurationHours" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "InstanceType":{"shape":"String"}, + "InstanceCount":{"shape":"Integer"}, + "StartDateRange":{"shape":"MillisecondDateTime"}, + "EndDateRange":{"shape":"MillisecondDateTime"}, + "CapacityDurationHours":{"shape":"Integer"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"DescribeCapacityBlockOfferingsMaxResults"} + } + }, + "DescribeCapacityBlockOfferingsResult":{ + "type":"structure", + "members":{ + "CapacityBlockOfferings":{ + "shape":"CapacityBlockOfferingSet", + "locationName":"capacityBlockOfferingSet" + }, + "NextToken":{ + "shape":"String", + "locationName":"nextToken" + } + } + }, "DescribeCapacityReservationFleetsMaxResults":{ "type":"integer", "max":100, @@ -15576,6 +16064,7 @@ "locationName":"Owner" }, "IncludeDeprecated":{"shape":"Boolean"}, + "IncludeDisabled":{"shape":"Boolean"}, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" @@ -15813,6 +16302,52 @@ } } }, + "DescribeInstanceTopologyGroupNameSet":{ + "type":"list", + "member":{"shape":"PlacementGroupName"} + }, + "DescribeInstanceTopologyInstanceIdSet":{ + "type":"list", + "member":{"shape":"InstanceId"} + }, + "DescribeInstanceTopologyMaxResults":{ + "type":"integer", + "max":100, + "min":1 + }, + "DescribeInstanceTopologyRequest":{ + "type":"structure", + "members":{ + "DryRun":{"shape":"Boolean"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"DescribeInstanceTopologyMaxResults"}, + "InstanceIds":{ + "shape":"DescribeInstanceTopologyInstanceIdSet", + "locationName":"InstanceId" + }, + "GroupNames":{ + "shape":"DescribeInstanceTopologyGroupNameSet", + "locationName":"GroupName" + }, + "Filters":{ + "shape":"FilterList", + "locationName":"Filter" + } + } + }, + "DescribeInstanceTopologyResult":{ + "type":"structure", + "members":{ + "Instances":{ + "shape":"InstanceSet", + "locationName":"instanceSet" + }, + "NextToken":{ + "shape":"String", + "locationName":"nextToken" + } + } + }, "DescribeInstanceTypeOfferingsRequest":{ "type":"structure", "members":{ @@ -15943,6 +16478,32 @@ } } }, + "DescribeIpamByoasnMaxResults":{ + "type":"integer", + "max":100, + "min":1 + }, + "DescribeIpamByoasnRequest":{ + "type":"structure", + "members":{ + "DryRun":{"shape":"Boolean"}, + "MaxResults":{"shape":"DescribeIpamByoasnMaxResults"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeIpamByoasnResult":{ + "type":"structure", + "members":{ + "Byoasns":{ + "shape":"ByoasnSet", + "locationName":"byoasnSet" + }, + "NextToken":{ + "shape":"String", + "locationName":"nextToken" + } + } + }, "DescribeIpamPoolsRequest":{ "type":"structure", "members":{ @@ -16394,6 +16955,40 @@ } } }, + "DescribeLockedSnapshotsMaxResults":{ + "type":"integer", + "max":1000, + "min":5 + }, + "DescribeLockedSnapshotsRequest":{ + "type":"structure", + "members":{ + "Filters":{ + "shape":"FilterList", + "locationName":"Filter" + }, + "MaxResults":{"shape":"DescribeLockedSnapshotsMaxResults"}, + "NextToken":{"shape":"String"}, + "SnapshotIds":{ + "shape":"SnapshotIdStringList", + "locationName":"SnapshotId" + }, + "DryRun":{"shape":"Boolean"} + } + }, + "DescribeLockedSnapshotsResult":{ + "type":"structure", + "members":{ + "Snapshots":{ + "shape":"LockedSnapshotsInfoList", + "locationName":"snapshotSet" + }, + "NextToken":{ + "shape":"String", + "locationName":"nextToken" + } + } + }, "DescribeManagedPrefixListsRequest":{ "type":"structure", "members":{ @@ -19010,6 +19605,10 @@ "TenantId":{ "shape":"String", "locationName":"tenantId" + }, + "PublicSigningKeyUrl":{ + "shape":"String", + "locationName":"publicSigningKeyUrl" } } }, @@ -19017,7 +19616,8 @@ "type":"string", "enum":[ "jamf", - "crowdstrike" + "crowdstrike", + "jumpcloud" ] }, "DeviceType":{ @@ -19378,6 +19978,23 @@ } } }, + "DisableImageRequest":{ + "type":"structure", + "required":["ImageId"], + "members":{ + "ImageId":{"shape":"ImageId"}, + "DryRun":{"shape":"Boolean"} + } + }, + "DisableImageResult":{ + "type":"structure", + "members":{ + "Return":{ + "shape":"Boolean", + "locationName":"return" + } + } + }, "DisableIpamOrganizationAdminAccountRequest":{ "type":"structure", "required":["DelegatedAdminAccountId"], @@ -19410,6 +20027,21 @@ } } }, + "DisableSnapshotBlockPublicAccessRequest":{ + "type":"structure", + "members":{ + "DryRun":{"shape":"Boolean"} + } + }, + "DisableSnapshotBlockPublicAccessResult":{ + "type":"structure", + "members":{ + "State":{ + "shape":"SnapshotBlockPublicAccessState", + "locationName":"state" + } + } + }, "DisableTransitGatewayRouteTablePropagationRequest":{ "type":"structure", "required":["TransitGatewayRouteTableId"], @@ -19498,7 +20130,7 @@ ], "members":{ "ClientVpnEndpointId":{"shape":"ClientVpnEndpointId"}, - "AssociationId":{"shape":"ClientVpnAssociationId"}, + "AssociationId":{"shape":"String"}, "DryRun":{"shape":"Boolean"} } }, @@ -19573,6 +20205,27 @@ } } }, + "DisassociateIpamByoasnRequest":{ + "type":"structure", + "required":[ + "Asn", + "Cidr" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "Asn":{"shape":"String"}, + "Cidr":{"shape":"String"} + } + }, + "DisassociateIpamByoasnResult":{ + "type":"structure", + "members":{ + "AsnAssociation":{ + "shape":"AsnAssociation", + "locationName":"asnAssociation" + } + } + }, "DisassociateIpamResourceDiscoveryRequest":{ "type":"structure", "required":["IpamResourceDiscoveryAssociationId"], @@ -20440,6 +21093,13 @@ "EnaSrdUdpSpecification":{"shape":"EnaSrdUdpSpecification"} } }, + "EnaSrdSpecificationRequest":{ + "type":"structure", + "members":{ + "EnaSrdEnabled":{"shape":"Boolean"}, + "EnaSrdUdpSpecification":{"shape":"EnaSrdUdpSpecificationRequest"} + } + }, "EnaSrdSupported":{"type":"boolean"}, "EnaSrdUdpSpecification":{ "type":"structure", @@ -20447,6 +21107,12 @@ "EnaSrdUdpEnabled":{"shape":"Boolean"} } }, + "EnaSrdUdpSpecificationRequest":{ + "type":"structure", + "members":{ + "EnaSrdUdpEnabled":{"shape":"Boolean"} + } + }, "EnaSupport":{ "type":"string", "enum":[ @@ -20741,6 +21407,23 @@ } } }, + "EnableImageRequest":{ + "type":"structure", + "required":["ImageId"], + "members":{ + "ImageId":{"shape":"ImageId"}, + "DryRun":{"shape":"Boolean"} + } + }, + "EnableImageResult":{ + "type":"structure", + "members":{ + "Return":{ + "shape":"Boolean", + "locationName":"return" + } + } + }, "EnableIpamOrganizationAdminAccountRequest":{ "type":"structure", "required":["DelegatedAdminAccountId"], @@ -20788,6 +21471,23 @@ } } }, + "EnableSnapshotBlockPublicAccessRequest":{ + "type":"structure", + "required":["State"], + "members":{ + "State":{"shape":"SnapshotBlockPublicAccessState"}, + "DryRun":{"shape":"Boolean"} + } + }, + "EnableSnapshotBlockPublicAccessResult":{ + "type":"structure", + "members":{ + "State":{ + "shape":"SnapshotBlockPublicAccessState", + "locationName":"state" + } + } + }, "EnableTransitGatewayRouteTablePropagationRequest":{ "type":"structure", "required":["TransitGatewayRouteTableId"], @@ -22613,6 +23313,10 @@ "LocalGatewayRouteTableId":{ "shape":"String", "locationName":"localGatewayRouteTableId" + }, + "NextToken":{ + "shape":"String", + "locationName":"nextToken" } } }, @@ -22936,6 +23640,41 @@ } } }, + "GetIpamDiscoveredPublicAddressesRequest":{ + "type":"structure", + "required":[ + "IpamResourceDiscoveryId", + "AddressRegion" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "IpamResourceDiscoveryId":{"shape":"IpamResourceDiscoveryId"}, + "AddressRegion":{"shape":"String"}, + "Filters":{ + "shape":"FilterList", + "locationName":"Filter" + }, + "NextToken":{"shape":"NextToken"}, + "MaxResults":{"shape":"IpamMaxResults"} + } + }, + "GetIpamDiscoveredPublicAddressesResult":{ + "type":"structure", + "members":{ + "IpamDiscoveredPublicAddresses":{ + "shape":"IpamDiscoveredPublicAddressSet", + "locationName":"ipamDiscoveredPublicAddressSet" + }, + "OldestSampleTime":{ + "shape":"MillisecondDateTime", + "locationName":"oldestSampleTime" + }, + "NextToken":{ + "shape":"NextToken", + "locationName":"nextToken" + } + } + }, "GetIpamDiscoveredResourceCidrsRequest":{ "type":"structure", "required":[ @@ -23260,6 +23999,38 @@ } } }, + "GetSecurityGroupsForVpcRequest":{ + "type":"structure", + "required":["VpcId"], + "members":{ + "VpcId":{"shape":"VpcId"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"GetSecurityGroupsForVpcRequestMaxResults"}, + "Filters":{ + "shape":"FilterList", + "locationName":"Filter" + }, + "DryRun":{"shape":"Boolean"} + } + }, + "GetSecurityGroupsForVpcRequestMaxResults":{ + "type":"integer", + "max":1000, + "min":5 + }, + "GetSecurityGroupsForVpcResult":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"String", + "locationName":"nextToken" + }, + "SecurityGroupForVpcs":{ + "shape":"SecurityGroupForVpcList", + "locationName":"securityGroupForVpcSet" + } + } + }, "GetSerialConsoleAccessStatusRequest":{ "type":"structure", "members":{ @@ -23275,6 +24046,21 @@ } } }, + "GetSnapshotBlockPublicAccessStateRequest":{ + "type":"structure", + "members":{ + "DryRun":{"shape":"Boolean"} + } + }, + "GetSnapshotBlockPublicAccessStateResult":{ + "type":"structure", + "members":{ + "State":{ + "shape":"SnapshotBlockPublicAccessState", + "locationName":"state" + } + } + }, "GetSpotPlacementScoresRequest":{ "type":"structure", "required":["TargetCapacity"], @@ -24389,6 +25175,10 @@ "ImdsSupport":{ "shape":"ImdsSupportValues", "locationName":"imdsSupport" + }, + "SourceInstanceId":{ + "shape":"String", + "locationName":"sourceInstanceId" } } }, @@ -24555,7 +25345,8 @@ "deregistered", "transient", "failed", - "error" + "error", + "disabled" ] }, "ImageTypeValues":{ @@ -25430,6 +26221,28 @@ } } }, + "InstanceAttachmentEnaSrdSpecification":{ + "type":"structure", + "members":{ + "EnaSrdEnabled":{ + "shape":"Boolean", + "locationName":"enaSrdEnabled" + }, + "EnaSrdUdpSpecification":{ + "shape":"InstanceAttachmentEnaSrdUdpSpecification", + "locationName":"enaSrdUdpSpecification" + } + } + }, + "InstanceAttachmentEnaSrdUdpSpecification":{ + "type":"structure", + "members":{ + "EnaSrdUdpEnabled":{ + "shape":"Boolean", + "locationName":"enaSrdUdpEnabled" + } + } + }, "InstanceAttribute":{ "type":"structure", "members":{ @@ -25997,7 +26810,8 @@ "type":"string", "enum":[ "spot", - "scheduled" + "scheduled", + "capacity-block" ] }, "InstanceList":{ @@ -26197,6 +27011,10 @@ "Ipv6Prefixes":{ "shape":"InstanceIpv6PrefixList", "locationName":"ipv6PrefixSet" + }, + "ConnectionTrackingConfiguration":{ + "shape":"ConnectionTrackingSpecificationResponse", + "locationName":"connectionTrackingConfiguration" } } }, @@ -26251,6 +27069,10 @@ "NetworkCardIndex":{ "shape":"Integer", "locationName":"networkCardIndex" + }, + "EnaSrdSpecification":{ + "shape":"InstanceAttachmentEnaSrdSpecification", + "locationName":"enaSrdSpecification" } } }, @@ -26327,7 +27149,9 @@ "locationName":"Ipv6Prefix" }, "Ipv6PrefixCount":{"shape":"Integer"}, - "PrimaryIpv6":{"shape":"Boolean"} + "PrimaryIpv6":{"shape":"Boolean"}, + "EnaSrdSpecification":{"shape":"EnaSrdSpecificationRequest"}, + "ConnectionTrackingSpecification":{"shape":"ConnectionTrackingSpecificationRequest"} } }, "InstanceNetworkInterfaceSpecificationList":{ @@ -26532,6 +27356,13 @@ "InstanceRequirements":{"shape":"InstanceRequirementsRequest"} } }, + "InstanceSet":{ + "type":"list", + "member":{ + "shape":"InstanceTopology", + "locationName":"item" + } + }, "InstanceSpecification":{ "type":"structure", "required":["InstanceId"], @@ -26754,6 +27585,35 @@ } } }, + "InstanceTopology":{ + "type":"structure", + "members":{ + "InstanceId":{ + "shape":"String", + "locationName":"instanceId" + }, + "InstanceType":{ + "shape":"String", + "locationName":"instanceType" + }, + "GroupName":{ + "shape":"String", + "locationName":"groupName" + }, + "NetworkNodes":{ + "shape":"NetworkNodesList", + "locationName":"networkNodeSet" + }, + "AvailabilityZone":{ + "shape":"String", + "locationName":"availabilityZone" + }, + "ZoneId":{ + "shape":"String", + "locationName":"zoneId" + } + } + }, "InstanceType":{ "type":"string", "enum":[ @@ -27496,7 +28356,39 @@ "c7i.12xlarge", "c7i.16xlarge", "c7i.24xlarge", - "c7i.48xlarge" + "c7i.48xlarge", + "mac2-m2pro.metal", + "r7iz.large", + "r7iz.xlarge", + "r7iz.2xlarge", + "r7iz.4xlarge", + "r7iz.8xlarge", + "r7iz.12xlarge", + "r7iz.16xlarge", + "r7iz.32xlarge", + "c7a.medium", + "c7a.large", + "c7a.xlarge", + "c7a.2xlarge", + "c7a.4xlarge", + "c7a.8xlarge", + "c7a.12xlarge", + "c7a.16xlarge", + "c7a.24xlarge", + "c7a.32xlarge", + "c7a.48xlarge", + "c7a.metal-48xl", + "r7a.metal-48xl", + "r7i.large", + "r7i.xlarge", + "r7i.2xlarge", + "r7i.4xlarge", + "r7i.8xlarge", + "r7i.12xlarge", + "r7i.16xlarge", + "r7i.24xlarge", + "r7i.48xlarge", + "dl2q.24xlarge" ] }, "InstanceTypeHypervisor":{ @@ -27947,6 +28839,14 @@ "ResourceDiscoveryAssociationCount":{ "shape":"Integer", "locationName":"resourceDiscoveryAssociationCount" + }, + "StateMessage":{ + "shape":"String", + "locationName":"stateMessage" + }, + "Tier":{ + "shape":"IpamTier", + "locationName":"tier" } } }, @@ -28076,6 +28976,94 @@ "locationName":"item" } }, + "IpamDiscoveredPublicAddress":{ + "type":"structure", + "members":{ + "IpamResourceDiscoveryId":{ + "shape":"IpamResourceDiscoveryId", + "locationName":"ipamResourceDiscoveryId" + }, + "AddressRegion":{ + "shape":"String", + "locationName":"addressRegion" + }, + "Address":{ + "shape":"String", + "locationName":"address" + }, + "AddressOwnerId":{ + "shape":"String", + "locationName":"addressOwnerId" + }, + "AddressAllocationId":{ + "shape":"String", + "locationName":"addressAllocationId" + }, + "AssociationStatus":{ + "shape":"IpamPublicAddressAssociationStatus", + "locationName":"associationStatus" + }, + "AddressType":{ + "shape":"IpamPublicAddressType", + "locationName":"addressType" + }, + "Service":{ + "shape":"IpamPublicAddressAwsService", + "locationName":"service" + }, + "ServiceResource":{ + "shape":"String", + "locationName":"serviceResource" + }, + "VpcId":{ + "shape":"String", + "locationName":"vpcId" + }, + "SubnetId":{ + "shape":"String", + "locationName":"subnetId" + }, + "PublicIpv4PoolId":{ + "shape":"String", + "locationName":"publicIpv4PoolId" + }, + "NetworkInterfaceId":{ + "shape":"String", + "locationName":"networkInterfaceId" + }, + "NetworkInterfaceDescription":{ + "shape":"String", + "locationName":"networkInterfaceDescription" + }, + "InstanceId":{ + "shape":"String", + "locationName":"instanceId" + }, + "Tags":{ + "shape":"IpamPublicAddressTags", + "locationName":"tags" + }, + "NetworkBorderGroup":{ + "shape":"String", + "locationName":"networkBorderGroup" + }, + "SecurityGroups":{ + "shape":"IpamPublicAddressSecurityGroupList", + "locationName":"securityGroupSet" + }, + "SampleTime":{ + "shape":"MillisecondDateTime", + "locationName":"sampleTime" + } + } + }, + "IpamDiscoveredPublicAddressSet":{ + "type":"list", + "member":{ + "shape":"IpamDiscoveredPublicAddress", + "locationName":"item" + } + }, "IpamDiscoveredResourceCidr":{ "type":"structure", "members":{ @@ -28286,6 +29274,10 @@ "PublicIpSource":{ "shape":"IpamPoolPublicIpSource", "locationName":"publicIpSource" + }, + "SourceResource":{ + "shape":"IpamPoolSourceResource", + "locationName":"sourceResource" } } }, @@ -28322,6 +29314,13 @@ } } }, + "IpamPoolAllocationAllowedCidrs":{ + "type":"list", + "member":{ + "shape":"String", + "locationName":"item" + } + }, "IpamPoolAllocationDisallowedCidrs":{ "type":"list", "member":{ @@ -28336,7 +29335,8 @@ "ipam-pool", "vpc", "ec2-public-ipv4-pool", - "custom" + "custom", + "subnet" ] }, "IpamPoolAllocationSet":{ @@ -28431,6 +29431,40 @@ "locationName":"item" } }, + "IpamPoolSourceResource":{ + "type":"structure", + "members":{ + "ResourceId":{ + "shape":"String", + "locationName":"resourceId" + }, + "ResourceType":{ + "shape":"IpamPoolSourceResourceType", + "locationName":"resourceType" + }, + "ResourceRegion":{ + "shape":"String", + "locationName":"resourceRegion" + }, + "ResourceOwner":{ + "shape":"String", + "locationName":"resourceOwner" + } + } + }, + "IpamPoolSourceResourceRequest":{ + "type":"structure", + "members":{ + "ResourceId":{"shape":"String"}, + "ResourceType":{"shape":"IpamPoolSourceResourceType"}, + "ResourceRegion":{"shape":"String"}, + "ResourceOwner":{"shape":"String"} + } + }, + "IpamPoolSourceResourceType":{ + "type":"string", + "enum":["vpc"] + }, "IpamPoolState":{ "type":"string", "enum":[ @@ -28448,6 +29482,86 @@ "restore-in-progress" ] }, + "IpamPublicAddressAssociationStatus":{ + "type":"string", + "enum":[ + "associated", + "disassociated" + ] + }, + "IpamPublicAddressAwsService":{ + "type":"string", + "enum":[ + "nat-gateway", + "database-migration-service", + "redshift", + "elastic-container-service", + "relational-database-service", + "site-to-site-vpn", + "load-balancer", + "global-accelerator", + "other" + ] + }, + "IpamPublicAddressSecurityGroup":{ + "type":"structure", + "members":{ + "GroupName":{ + "shape":"String", + "locationName":"groupName" + }, + "GroupId":{ + "shape":"String", + "locationName":"groupId" + } + } + }, + "IpamPublicAddressSecurityGroupList":{ + "type":"list", + "member":{ + "shape":"IpamPublicAddressSecurityGroup", + "locationName":"item" + } + }, + "IpamPublicAddressTag":{ + "type":"structure", + "members":{ + "Key":{ + "shape":"String", + "locationName":"key" + }, + "Value":{ + "shape":"String", + "locationName":"value" + } + } + }, + "IpamPublicAddressTagList":{ + "type":"list", + "member":{ + "shape":"IpamPublicAddressTag", + "locationName":"item" + } + }, + "IpamPublicAddressTags":{ + "type":"structure", + "members":{ + "EipTags":{ + "shape":"IpamPublicAddressTagList", + "locationName":"eipTagSet" + } + } + }, + "IpamPublicAddressType":{ + "type":"string", + "enum":[ + "service-managed-ip", + "service-managed-byoip", + "amazon-owned-eip", + "byoip", + "ec2-public-ip" + ] + }, "IpamResourceCidr":{ "type":"structure", "members":{ @@ -28684,7 +29798,8 @@ "subnet", "eip", "public-ipv4-pool", - "ipv6-pool" + "ipv6-pool", + "eni" ] }, "IpamScope":{ @@ -28792,6 +29907,13 @@ "restore-in-progress" ] }, + "IpamTier":{ + "type":"string", + "enum":[ + "free", + "advanced" + ] + }, "Ipv4PoolCoipId":{"type":"string"}, "Ipv4PoolEc2Id":{"type":"string"}, "Ipv4PrefixList":{ @@ -29093,6 +30215,7 @@ "ed25519" ] }, + "KmsKeyArn":{"type":"string"}, "KmsKeyId":{"type":"string"}, "LastError":{ "type":"structure", @@ -29465,6 +30588,28 @@ "locationName":"item" } }, + "LaunchTemplateEnaSrdSpecification":{ + "type":"structure", + "members":{ + "EnaSrdEnabled":{ + "shape":"Boolean", + "locationName":"enaSrdEnabled" + }, + "EnaSrdUdpSpecification":{ + "shape":"LaunchTemplateEnaSrdUdpSpecification", + "locationName":"enaSrdUdpSpecification" + } + } + }, + "LaunchTemplateEnaSrdUdpSpecification":{ + "type":"structure", + "members":{ + "EnaSrdUdpEnabled":{ + "shape":"Boolean", + "locationName":"enaSrdUdpEnabled" + } + } + }, "LaunchTemplateEnclaveOptions":{ "type":"structure", "members":{ @@ -29725,6 +30870,14 @@ "PrimaryIpv6":{ "shape":"Boolean", "locationName":"primaryIpv6" + }, + "EnaSrdSpecification":{ + "shape":"LaunchTemplateEnaSrdSpecification", + "locationName":"enaSrdSpecification" + }, + "ConnectionTrackingSpecification":{ + "shape":"ConnectionTrackingSpecification", + "locationName":"connectionTrackingSpecification" } } }, @@ -29766,7 +30919,9 @@ "locationName":"Ipv6Prefix" }, "Ipv6PrefixCount":{"shape":"Integer"}, - "PrimaryIpv6":{"shape":"Boolean"} + "PrimaryIpv6":{"shape":"Boolean"}, + "EnaSrdSpecification":{"shape":"EnaSrdSpecificationRequest"}, + "ConnectionTrackingSpecification":{"shape":"ConnectionTrackingSpecificationRequest"} } }, "LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList":{ @@ -30659,6 +31814,122 @@ "outpost" ] }, + "LockMode":{ + "type":"string", + "enum":[ + "compliance", + "governance" + ] + }, + "LockSnapshotRequest":{ + "type":"structure", + "required":[ + "SnapshotId", + "LockMode" + ], + "members":{ + "SnapshotId":{"shape":"SnapshotId"}, + "DryRun":{"shape":"Boolean"}, + "LockMode":{"shape":"LockMode"}, + "CoolOffPeriod":{"shape":"CoolOffPeriodRequestHours"}, + "LockDuration":{"shape":"RetentionPeriodRequestDays"}, + "ExpirationDate":{"shape":"MillisecondDateTime"} + } + }, + "LockSnapshotResult":{ + "type":"structure", + "members":{ + "SnapshotId":{ + "shape":"String", + "locationName":"snapshotId" + }, + "LockState":{ + "shape":"LockState", + "locationName":"lockState" + }, + "LockDuration":{ + "shape":"RetentionPeriodResponseDays", + "locationName":"lockDuration" + }, + "CoolOffPeriod":{ + "shape":"CoolOffPeriodResponseHours", + "locationName":"coolOffPeriod" + }, + "CoolOffPeriodExpiresOn":{ + "shape":"MillisecondDateTime", + "locationName":"coolOffPeriodExpiresOn" + }, + "LockCreatedOn":{ + "shape":"MillisecondDateTime", + "locationName":"lockCreatedOn" + }, + "LockExpiresOn":{ + "shape":"MillisecondDateTime", + "locationName":"lockExpiresOn" + }, + "LockDurationStartTime":{ + "shape":"MillisecondDateTime", + "locationName":"lockDurationStartTime" + } + } + }, + "LockState":{ + "type":"string", + "enum":[ + "compliance", + "governance", + "compliance-cooloff", + "expired" + ] + }, + "LockedSnapshotsInfo":{ + "type":"structure", + "members":{ + "OwnerId":{ + "shape":"String", + "locationName":"ownerId" + }, + "SnapshotId":{ + "shape":"String", + "locationName":"snapshotId" + }, + "LockState":{ + "shape":"LockState", + "locationName":"lockState" + }, + "LockDuration":{ + "shape":"RetentionPeriodResponseDays", + "locationName":"lockDuration" + }, + "CoolOffPeriod":{ + "shape":"CoolOffPeriodResponseHours", + "locationName":"coolOffPeriod" + }, + "CoolOffPeriodExpiresOn":{ + "shape":"MillisecondDateTime", + "locationName":"coolOffPeriodExpiresOn" + }, + "LockCreatedOn":{ + "shape":"MillisecondDateTime", + "locationName":"lockCreatedOn" + }, + "LockDurationStartTime":{ + "shape":"MillisecondDateTime", + "locationName":"lockDurationStartTime" + }, + "LockExpiresOn":{ + "shape":"MillisecondDateTime", + "locationName":"lockExpiresOn" + } + } + }, + "LockedSnapshotsInfoList":{ + "type":"list", + "member":{ + "shape":"LockedSnapshotsInfo", + "locationName":"item" + } + }, "LogDestinationType":{ "type":"string", "enum":[ @@ -30739,7 +32010,10 @@ }, "MarketType":{ "type":"string", - "enum":["spot"] + "enum":[ + "spot", + "capacity-block" + ] }, "MaxIpv4AddrPerInterface":{"type":"integer"}, "MaxIpv6AddrPerInterface":{"type":"integer"}, @@ -31451,7 +32725,8 @@ "RemoveOperatingRegions":{ "shape":"RemoveIpamOperatingRegionSet", "locationName":"RemoveOperatingRegion" - } + }, + "Tier":{"shape":"IpamTier"} } }, "ModifyIpamResourceCidrRequest":{ @@ -31635,7 +32910,8 @@ "locationName":"sourceDestCheck" }, "EnaSrdSpecification":{"shape":"EnaSrdSpecification"}, - "EnablePrimaryIpv6":{"shape":"Boolean"} + "EnablePrimaryIpv6":{"shape":"Boolean"}, + "ConnectionTrackingSpecification":{"shape":"ConnectionTrackingSpecificationRequest"} } }, "ModifyPrivateDnsNameOptionsRequest":{ @@ -31898,6 +33174,7 @@ "RemoveTransitGatewayCidrBlocks":{"shape":"TransitGatewayCidrBlockStringList"}, "VpnEcmpSupport":{"shape":"VpnEcmpSupportValue"}, "DnsSupport":{"shape":"DnsSupportValue"}, + "SecurityGroupReferencingSupport":{"shape":"SecurityGroupReferencingSupportValue"}, "AutoAcceptSharedAttachments":{"shape":"AutoAcceptSharedAttachmentsValue"}, "DefaultRouteTableAssociation":{"shape":"DefaultRouteTableAssociationValue"}, "AssociationDefaultRouteTableId":{"shape":"TransitGatewayRouteTableId"}, @@ -31963,6 +33240,7 @@ "type":"structure", "members":{ "DnsSupport":{"shape":"DnsSupportValue"}, + "SecurityGroupReferencingSupport":{"shape":"SecurityGroupReferencingSupportValue"}, "Ipv6Support":{"shape":"Ipv6SupportValue"}, "ApplianceModeSupport":{"shape":"ApplianceModeSupportValue"} } @@ -31996,10 +33274,7 @@ }, "ModifyVerifiedAccessEndpointPolicyRequest":{ "type":"structure", - "required":[ - "VerifiedAccessEndpointId", - "PolicyEnabled" - ], + "required":["VerifiedAccessEndpointId"], "members":{ "VerifiedAccessEndpointId":{"shape":"VerifiedAccessEndpointId"}, "PolicyEnabled":{"shape":"Boolean"}, @@ -32008,7 +33283,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "SseSpecification":{"shape":"VerifiedAccessSseSpecificationRequest"} } }, "ModifyVerifiedAccessEndpointPolicyResult":{ @@ -32021,6 +33297,10 @@ "PolicyDocument":{ "shape":"String", "locationName":"policyDocument" + }, + "SseSpecification":{ + "shape":"VerifiedAccessSseSpecificationResponse", + "locationName":"sseSpecification" } } }, @@ -32058,10 +33338,7 @@ }, "ModifyVerifiedAccessGroupPolicyRequest":{ "type":"structure", - "required":[ - "VerifiedAccessGroupId", - "PolicyEnabled" - ], + "required":["VerifiedAccessGroupId"], "members":{ "VerifiedAccessGroupId":{"shape":"VerifiedAccessGroupId"}, "PolicyEnabled":{"shape":"Boolean"}, @@ -32070,7 +33347,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "SseSpecification":{"shape":"VerifiedAccessSseSpecificationRequest"} } }, "ModifyVerifiedAccessGroupPolicyResult":{ @@ -32083,6 +33361,10 @@ "PolicyDocument":{ "shape":"String", "locationName":"policyDocument" + }, + "SseSpecification":{ + "shape":"VerifiedAccessSseSpecificationResponse", + "locationName":"sseSpecification" } } }, @@ -32156,6 +33438,12 @@ } } }, + "ModifyVerifiedAccessTrustProviderDeviceOptions":{ + "type":"structure", + "members":{ + "PublicSigningKeyUrl":{"shape":"String"} + } + }, "ModifyVerifiedAccessTrustProviderOidcOptions":{ "type":"structure", "members":{ @@ -32174,12 +33462,14 @@ "members":{ "VerifiedAccessTrustProviderId":{"shape":"VerifiedAccessTrustProviderId"}, "OidcOptions":{"shape":"ModifyVerifiedAccessTrustProviderOidcOptions"}, + "DeviceOptions":{"shape":"ModifyVerifiedAccessTrustProviderDeviceOptions"}, "Description":{"shape":"String"}, "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true - } + }, + "SseSpecification":{"shape":"VerifiedAccessSseSpecificationRequest"} } }, "ModifyVerifiedAccessTrustProviderResult":{ @@ -33360,6 +34650,10 @@ "shape":"String", "locationName":"availabilityZone" }, + "ConnectionTrackingConfiguration":{ + "shape":"ConnectionTrackingConfiguration", + "locationName":"connectionTrackingConfiguration" + }, "Description":{ "shape":"String", "locationName":"description" @@ -33744,6 +35038,13 @@ "aws_codestar_connections_managed" ] }, + "NetworkNodesList":{ + "type":"list", + "member":{ + "shape":"String", + "locationName":"item" + } + }, "NetworkPerformance":{"type":"string"}, "NewDhcpConfiguration":{ "type":"structure", @@ -34996,6 +36297,10 @@ "SupportedFeatures":{ "shape":"SupportedAdditionalProcessorFeatureList", "locationName":"supportedFeatures" + }, + "Manufacturer":{ + "shape":"CpuManufacturerName", + "locationName":"manufacturer" } } }, @@ -35109,6 +36414,29 @@ } } }, + "ProvisionIpamByoasnRequest":{ + "type":"structure", + "required":[ + "IpamId", + "Asn", + "AsnAuthorizationContext" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "IpamId":{"shape":"IpamId"}, + "Asn":{"shape":"String"}, + "AsnAuthorizationContext":{"shape":"AsnAuthorizationContext"} + } + }, + "ProvisionIpamByoasnResult":{ + "type":"structure", + "members":{ + "Byoasn":{ + "shape":"Byoasn", + "locationName":"byoasn" + } + } + }, "ProvisionIpamPoolCidrRequest":{ "type":"structure", "required":["IpamPoolId"], @@ -35322,6 +36650,31 @@ } } }, + "PurchaseCapacityBlockRequest":{ + "type":"structure", + "required":[ + "CapacityBlockOfferingId", + "InstancePlatform" + ], + "members":{ + "DryRun":{"shape":"Boolean"}, + "TagSpecifications":{ + "shape":"TagSpecificationList", + "locationName":"TagSpecification" + }, + "CapacityBlockOfferingId":{"shape":"OfferingId"}, + "InstancePlatform":{"shape":"CapacityReservationInstancePlatform"} + } + }, + "PurchaseCapacityBlockResult":{ + "type":"structure", + "members":{ + "CapacityReservation":{ + "shape":"CapacityReservation", + "locationName":"capacityReservation" + } + } + }, "PurchaseHostReservationRequest":{ "type":"structure", "required":[ @@ -37580,6 +38933,12 @@ "max":500, "min":20 }, + "RetentionPeriodRequestDays":{ + "type":"integer", + "max":36500, + "min":1 + }, + "RetentionPeriodResponseDays":{"type":"integer"}, "RevokeClientVpnIngressRequest":{ "type":"structure", "required":[ @@ -38609,6 +39968,42 @@ } } }, + "SecurityGroupForVpc":{ + "type":"structure", + "members":{ + "Description":{ + "shape":"String", + "locationName":"description" + }, + "GroupName":{ + "shape":"String", + "locationName":"groupName" + }, + "OwnerId":{ + "shape":"String", + "locationName":"ownerId" + }, + "GroupId":{ + "shape":"String", + "locationName":"groupId" + }, + "Tags":{ + "shape":"TagList", + "locationName":"tagSet" + }, + "PrimaryVpcId":{ + "shape":"String", + "locationName":"primaryVpcId" + } + } + }, + "SecurityGroupForVpcList":{ + "type":"list", + "member":{ + "shape":"SecurityGroupForVpc", + "locationName":"item" + } + }, "SecurityGroupId":{"type":"string"}, "SecurityGroupIdList":{ "type":"list", @@ -38675,6 +40070,10 @@ "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" + }, + "TransitGatewayId":{ + "shape":"String", + "locationName":"transitGatewayId" } } }, @@ -38685,6 +40084,13 @@ "locationName":"item" } }, + "SecurityGroupReferencingSupportValue":{ + "type":"string", + "enum":[ + "enable", + "disable" + ] + }, "SecurityGroupRule":{ "type":"structure", "members":{ @@ -39123,6 +40529,14 @@ "createVolumePermission" ] }, + "SnapshotBlockPublicAccessState":{ + "type":"string", + "enum":[ + "block-all-sharing", + "block-new-sharing", + "unblocked" + ] + }, "SnapshotDetail":{ "type":"structure", "members":{ @@ -42105,6 +43519,10 @@ "shape":"DnsSupportValue", "locationName":"dnsSupport" }, + "SecurityGroupReferencingSupport":{ + "shape":"SecurityGroupReferencingSupportValue", + "locationName":"securityGroupReferencingSupport" + }, "MulticastSupport":{ "shape":"MulticastSupportValue", "locationName":"multicastSupport" @@ -42424,6 +43842,7 @@ "DefaultRouteTablePropagation":{"shape":"DefaultRouteTablePropagationValue"}, "VpnEcmpSupport":{"shape":"VpnEcmpSupportValue"}, "DnsSupport":{"shape":"DnsSupportValue"}, + "SecurityGroupReferencingSupport":{"shape":"SecurityGroupReferencingSupportValue"}, "MulticastSupport":{"shape":"MulticastSupportValue"}, "TransitGatewayCidrBlocks":{"shape":"TransitGatewayCidrBlockStringList"} } @@ -42809,6 +44228,10 @@ "shape":"DnsSupportValue", "locationName":"dnsSupport" }, + "SecurityGroupReferencingSupport":{ + "shape":"SecurityGroupReferencingSupportValue", + "locationName":"securityGroupReferencingSupport" + }, "Ipv6Support":{ "shape":"Ipv6SupportValue", "locationName":"ipv6Support" @@ -43075,6 +44498,23 @@ "t4g" ] }, + "UnlockSnapshotRequest":{ + "type":"structure", + "required":["SnapshotId"], + "members":{ + "SnapshotId":{"shape":"SnapshotId"}, + "DryRun":{"shape":"Boolean"} + } + }, + "UnlockSnapshotResult":{ + "type":"structure", + "members":{ + "SnapshotId":{ + "shape":"String", + "locationName":"snapshotId" + } + } + }, "UnmonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], @@ -43228,7 +44668,8 @@ "type":"string", "enum":[ "spot", - "on-demand" + "on-demand", + "capacity-block" ] }, "UsageClassTypeList":{ @@ -43486,6 +44927,10 @@ "Tags":{ "shape":"TagList", "locationName":"tagSet" + }, + "SseSpecification":{ + "shape":"VerifiedAccessSseSpecificationResponse", + "locationName":"sseSpecification" } } }, @@ -43633,6 +45078,10 @@ "Tags":{ "shape":"TagList", "locationName":"tagSet" + }, + "SseSpecification":{ + "shape":"VerifiedAccessSseSpecificationResponse", + "locationName":"sseSpecification" } } }, @@ -43677,6 +45126,10 @@ "Tags":{ "shape":"TagList", "locationName":"tagSet" + }, + "FipsEnabled":{ + "shape":"Boolean", + "locationName":"fipsEnabled" } } }, @@ -43855,6 +45308,26 @@ } } }, + "VerifiedAccessSseSpecificationRequest":{ + "type":"structure", + "members":{ + "CustomerManagedKeyEnabled":{"shape":"Boolean"}, + "KmsKeyArn":{"shape":"KmsKeyArn"} + } + }, + "VerifiedAccessSseSpecificationResponse":{ + "type":"structure", + "members":{ + "CustomerManagedKeyEnabled":{ + "shape":"Boolean", + "locationName":"customerManagedKeyEnabled" + }, + "KmsKeyArn":{ + "shape":"KmsKeyArn", + "locationName":"kmsKeyArn" + } + } + }, "VerifiedAccessTrustProvider":{ "type":"structure", "members":{ @@ -43901,6 +45374,10 @@ "Tags":{ "shape":"TagList", "locationName":"tagSet" + }, + "SseSpecification":{ + "shape":"VerifiedAccessSseSpecificationResponse", + "locationName":"sseSpecification" } } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -23,15 +23,16 @@ "AssociateEnclaveCertificateIamRole": "

Associates an Identity and Access Management (IAM) role with an Certificate Manager (ACM) certificate. This enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. For more information, see Certificate Manager for Nitro Enclaves in the Amazon Web Services Nitro Enclaves User Guide.

When the IAM role is associated with the ACM certificate, the certificate, certificate chain, and encrypted private key are placed in an Amazon S3 location that only the associated IAM role can access. The private key of the certificate is encrypted with an Amazon Web Services managed key that has an attached attestation-based key policy.

To enable the IAM role to access the Amazon S3 object, you must grant it permission to call s3:GetObject on the Amazon S3 bucket returned by the command. To enable the IAM role to access the KMS key, you must grant it permission to call kms:Decrypt on the KMS key returned by the command. For more information, see Grant the role permission to access the certificate and encryption key in the Amazon Web Services Nitro Enclaves User Guide.

", "AssociateIamInstanceProfile": "

Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM instance profile with an instance.

", "AssociateInstanceEventWindow": "

Associates one or more targets with an event window. Only one type of target (instance IDs, Dedicated Host IDs, or tags) can be specified with an event window.

For more information, see Define event windows for scheduled events in the Amazon EC2 User Guide.

", + "AssociateIpamByoasn": "

Associates your Autonomous System Number (ASN) with a BYOIP CIDR that you own in the same Amazon Web Services Region. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

After the association succeeds, the ASN is eligible for advertisement. You can view the association with DescribeByoipCidrs. You can advertise the CIDR with AdvertiseByoipCidr.

", "AssociateIpamResourceDiscovery": "

Associates an IPAM resource discovery with an Amazon VPC IPAM. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", - "AssociateNatGatewayAddress": "

Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a public NAT gateway. For more information, see Work with NAT gateways in the Amazon VPC User Guide.

By default, you can associate up to 2 Elastic IP addresses per public NAT gateway. You can increase the limit by requesting a quota adjustment. For more information, see Elastic IP address quotas in the Amazon VPC User Guide.

", + "AssociateNatGatewayAddress": "

Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a public NAT gateway. For more information, see Work with NAT gateways in the Amazon VPC User Guide.

By default, you can associate up to 2 Elastic IP addresses per public NAT gateway. You can increase the limit by requesting a quota adjustment. For more information, see Elastic IP address quotas in the Amazon VPC User Guide.

When you associate an EIP or secondary EIPs with a public NAT gateway, the network border group of the EIPs must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, the EIP will fail to associate. You can see the network border group for the subnet's AZ by viewing the details of the subnet. Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information about network border groups and EIPs, see Allocate an Elastic IP address in the Amazon VPC User Guide.

", "AssociateRouteTable": "

Associates a subnet in your VPC or an internet gateway or virtual private gateway attached to your VPC with a route table in your VPC. This association causes traffic from the subnet or gateway to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table later. A route table can be associated with multiple subnets.

For more information, see Route tables in the Amazon VPC User Guide.

", - "AssociateSubnetCidrBlock": "

Associates a CIDR block with your subnet. You can only associate a single IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length of /64.

", + "AssociateSubnetCidrBlock": "

Associates a CIDR block with your subnet. You can only associate a single IPv6 CIDR block with your subnet.

", "AssociateTransitGatewayMulticastDomain": "

Associates the specified subnets and transit gateway attachments with the specified transit gateway multicast domain.

The transit gateway attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments to see the state of the attachment.

", "AssociateTransitGatewayPolicyTable": "

Associates the specified transit gateway attachment with a transit gateway policy table.

", "AssociateTransitGatewayRouteTable": "

Associates the specified attachment with the specified transit gateway route table. You can associate only one route table with an attachment.

", - "AssociateTrunkInterface": "

This API action is currently in limited preview only. If you are interested in using this feature, contact your account manager.

Associates a branch network interface with a trunk network interface.

Before you create the association, run the create-network-interface command and set --interface-type to trunk. You must also create a network interface for each branch network interface that you want to associate with the trunk network interface.

", - "AssociateVpcCidrBlock": "

Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). The IPv6 CIDR block size is fixed at /56.

You must specify one of the following in the request: an IPv4 CIDR block, an IPv6 pool, or an Amazon-provided IPv6 CIDR block.

For more information about associating CIDR blocks with your VPC and applicable restrictions, see IP addressing for your VPCs and subnets in the Amazon VPC User Guide.

", + "AssociateTrunkInterface": "

Associates a branch network interface with a trunk network interface.

Before you create the association, run the create-network-interface command and set --interface-type to trunk. You must also create a network interface for each branch network interface that you want to associate with the trunk network interface.

", + "AssociateVpcCidrBlock": "

Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).

You must specify one of the following in the request: an IPv4 CIDR block, an IPv6 pool, or an Amazon-provided IPv6 CIDR block.

For more information about associating CIDR blocks with your VPC and applicable restrictions, see IP addressing for your VPCs and subnets in the Amazon VPC User Guide.

", "AttachClassicLinkVpc": "

This action is deprecated.

Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

Linking your instance to a VPC is sometimes referred to as attaching your instance.

", "AttachInternetGateway": "

Attaches an internet gateway or a virtual private gateway to a VPC, enabling connectivity between the internet and the VPC. For more information, see Internet gateways in the Amazon VPC User Guide.

", "AttachNetworkInterface": "

Attaches a network interface to an instance.

", @@ -39,7 +40,7 @@ "AttachVolume": "

Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

After you attach an EBS volume, you must make it available. For more information, see Make an EBS volume available for use.

If a volume has an Amazon Web Services Marketplace product code:

  • The volume can be attached only to a stopped instance.

  • Amazon Web Services Marketplace product codes are copied from the volume to the instance.

  • You must be subscribed to the product.

  • The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance.

For more information, see Attach an Amazon EBS volume to an instance in the Amazon Elastic Compute Cloud User Guide.

", "AttachVpnGateway": "

Attaches a virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time.

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN User Guide.

", "AuthorizeClientVpnIngress": "

Adds an ingress authorization rule to a Client VPN endpoint. Ingress authorization rules act as firewall rules that grant access to networks. You must configure ingress authorization rules to enable clients to access resources in Amazon Web Services or on-premises networks.

", - "AuthorizeSecurityGroupEgress": "

Adds the specified outbound (egress) rules to a security group for use with a VPC.

An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the instances that are associated with the specified source security groups. When specifying an outbound rule for your security group in a VPC, the IpPermissions must include a destination for the traffic.

You specify a protocol for each rule (for example, TCP). For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

For information about VPC security group quotas, see Amazon VPC quotas.

", + "AuthorizeSecurityGroupEgress": "

Adds the specified outbound (egress) rules to a security group for use with a VPC.

An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the instances that are associated with the specified source security groups. When specifying an outbound rule for your security group in a VPC, the IpPermissions must include a destination for the traffic.

You specify a protocol for each rule (for example, TCP). For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

For information about VPC security group quotas, see Amazon VPC quotas.

If you want to reference a security group across VPCs attached to a transit gateway using the security group referencing feature, note that you can only reference security groups for ingress rules. You cannot reference a security group for egress rules.

", "AuthorizeSecurityGroupIngress": "

Adds the specified inbound (ingress) rules to a security group.

An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 CIDR address range, or from the instances that are associated with the specified destination security groups. When specifying an inbound rule for your security group in a VPC, the IpPermissions must include a source for the traffic.

You specify a protocol for each rule (for example, TCP). For TCP and UDP, you must also specify the destination port or port range. For ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 to mean all types or all codes.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

For more information about VPC security group quotas, see Amazon VPC quotas.

", "BundleInstance": "

Bundles an Amazon instance store-backed Windows instance.

During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

", "CancelBundleTask": "

Cancels a bundling operation for an instance store-backed Windows instance.

", @@ -88,7 +89,7 @@ "CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociation": "

Creates a local gateway route table virtual interface group association.

", "CreateLocalGatewayRouteTableVpcAssociation": "

Associates the specified VPC with the specified local gateway route table.

", "CreateManagedPrefixList": "

Creates a managed prefix list. You can specify one or more entries for the prefix list. Each entry consists of a CIDR block and an optional description.

", - "CreateNatGateway": "

Creates a NAT gateway in the specified subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. You can create either a public NAT gateway or a private NAT gateway.

With a public NAT gateway, internet-bound traffic from a private subnet can be routed to the NAT gateway, so that instances in a private subnet can connect to the internet.

With a private NAT gateway, private communication is routed across VPCs and on-premises networks through a transit gateway or virtual private gateway. Common use cases include running large workloads behind a small pool of allowlisted IPv4 addresses, preserving private IPv4 addresses, and communicating between overlapping networks.

For more information, see NAT gateways in the Amazon VPC User Guide.

", + "CreateNatGateway": "

Creates a NAT gateway in the specified subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. You can create either a public NAT gateway or a private NAT gateway.

With a public NAT gateway, internet-bound traffic from a private subnet can be routed to the NAT gateway, so that instances in a private subnet can connect to the internet.

With a private NAT gateway, private communication is routed across VPCs and on-premises networks through a transit gateway or virtual private gateway. Common use cases include running large workloads behind a small pool of allowlisted IPv4 addresses, preserving private IPv4 addresses, and communicating between overlapping networks.

For more information, see NAT gateways in the Amazon VPC User Guide.

When you create a public NAT gateway and assign it an EIP or secondary EIPs, the network border group of the EIPs must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, the NAT gateway will fail to launch. You can see the network border group for the subnet's AZ by viewing the details of the subnet. Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information about network border groups and EIPs, see Allocate an Elastic IP address in the Amazon VPC User Guide.

", "CreateNetworkAcl": "

Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

For more information, see Network ACLs in the Amazon VPC User Guide.

", "CreateNetworkAclEntry": "

Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

For more information about network ACLs, see Network ACLs in the Amazon VPC User Guide.

", "CreateNetworkInsightsAccessScope": "

Creates a Network Access Scope.

Amazon Web Services Network Access Analyzer enables cloud networking and cloud operations teams to verify that their networks on Amazon Web Services conform to their network security and governance objectives. For more information, see the Amazon Web Services Network Access Analyzer Guide.

", @@ -107,7 +108,7 @@ "CreateSnapshots": "

Creates crash-consistent snapshots of multiple EBS volumes and stores the data in S3. Volumes are chosen by specifying an instance. Any attached volumes will produce one snapshot each that is crash-consistent across the instance.

You can include all of the volumes currently attached to the instance, or you can exclude the root volume or specific data (non-root) volumes from the multi-volume snapshot set.

You can create multi-volume snapshots of instances in a Region and instances on an Outpost. If you create snapshots from an instance in a Region, the snapshots must be stored in the same Region as the instance. If you create snapshots from an instance on an Outpost, the snapshots can be stored on the same Outpost as the instance, or in the Region for that Outpost.

", "CreateSpotDatafeedSubscription": "

Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data feed per Amazon Web Services account. For more information, see Spot Instance data feed in the Amazon EC2 User Guide for Linux Instances.

", "CreateStoreImageTask": "

Stores an AMI as a single object in an Amazon S3 bucket.

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the Amazon EC2 User Guide.

For more information, see Store and restore an AMI using Amazon S3 in the Amazon EC2 User Guide.

", - "CreateSubnet": "

Creates a subnet in the specified VPC. For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.

A subnet CIDR block must not overlap the CIDR block of an existing subnet in the VPC. After you create a subnet, you can't change its CIDR block.

The allowed size for an IPv4 subnet is between a /28 netmask (16 IP addresses) and a /16 netmask (65,536 IP addresses). Amazon Web Services reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for your use.

If you've associated an IPv6 CIDR block with your VPC, you can associate an IPv6 CIDR block with a subnet when you create it. The allowed block size for an IPv6 subnet is a /64 netmask.

If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

When you stop an instance in a subnet, it retains its private IPv4 address. It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

For more information, see Subnets in the Amazon VPC User Guide.

", + "CreateSubnet": "

Creates a subnet in the specified VPC. For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.

A subnet CIDR block must not overlap the CIDR block of an existing subnet in the VPC. After you create a subnet, you can't change its CIDR block.

The allowed size for an IPv4 subnet is between a /28 netmask (16 IP addresses) and a /16 netmask (65,536 IP addresses). Amazon Web Services reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for your use.

If you've associated an IPv6 CIDR block with your VPC, you can associate an IPv6 CIDR block with a subnet when you create it.

If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

When you stop an instance in a subnet, it retains its private IPv4 address. It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

For more information, see Subnets in the Amazon VPC User Guide.

", "CreateSubnetCidrReservation": "

Creates a subnet CIDR reservation. For more information, see Subnet CIDR reservations in the Amazon Virtual Private Cloud User Guide and Assign prefixes to network interfaces in the Amazon Elastic Compute Cloud User Guide.

", "CreateTags": "

Adds or overwrites only the specified tags for the specified Amazon EC2 resource or resources. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported resource-level permissions for Amazon EC2 API actions in the Amazon Elastic Compute Cloud User Guide.

", "CreateTrafficMirrorFilter": "

Creates a Traffic Mirror filter.

A Traffic Mirror filter is a set of rules that defines the traffic to mirror.

By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule to add Traffic Mirror rules to the filter. The rules you add define what traffic gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices to mirror supported network services.

", @@ -130,7 +131,7 @@ "CreateVerifiedAccessInstance": "

An Amazon Web Services Verified Access instance is a regional entity that evaluates application requests and grants access only when your security requirements are met.

", "CreateVerifiedAccessTrustProvider": "

A trust provider is a third-party entity that creates, maintains, and manages identity information for users and devices. When an application request is made, the identity information sent by the trust provider is evaluated by Verified Access before allowing or denying the application request.

", "CreateVolume": "

Creates an EBS volume that can be attached to an instance in the same Availability Zone.

You can create a new empty volume or restore a volume from an EBS snapshot. Any Amazon Web Services Marketplace product codes from the snapshot are propagated to the volume.

You can create encrypted volumes. Encrypted volumes must be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

You can tag your volumes during creation. For more information, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide.

For more information, see Create an Amazon EBS volume in the Amazon Elastic Compute Cloud User Guide.

", - "CreateVpc": "

Creates a VPC with the specified CIDR blocks. For more information, see IP addressing for your VPCs and subnets in the Amazon VPC User Guide.

You can optionally request an IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).

By default, each instance that you launch in the VPC has the default DHCP options, which include only a default DNS server that we provide (AmazonProvidedDNS). For more information, see DHCP option sets in the Amazon VPC User Guide.

You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon EC2 User Guide.

", + "CreateVpc": "

Creates a VPC with the specified CIDR blocks. For more information, see IP addressing for your VPCs and subnets in the Amazon VPC User Guide.

You can optionally request an IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).

By default, each instance that you launch in the VPC has the default DHCP options, which include only a default DNS server that we provide (AmazonProvidedDNS). For more information, see DHCP option sets in the Amazon VPC User Guide.

You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon EC2 User Guide.

", "CreateVpcEndpoint": "

Creates a VPC endpoint. A VPC endpoint provides a private connection between the specified VPC and the specified endpoint service. You can use an endpoint service provided by Amazon Web Services, an Amazon Web Services Marketplace Partner, or another Amazon Web Services account. For more information, see the Amazon Web Services PrivateLink User Guide.

", "CreateVpcEndpointConnectionNotification": "

Creates a connection notification for a specified VPC endpoint or VPC endpoint service. A connection notification notifies you of specific endpoint events. You must create an SNS topic to receive notifications. For more information, see Create a Topic in the Amazon Simple Notification Service Developer Guide.

You can create a connection notification for interface endpoints only.

", "CreateVpcEndpointServiceConfiguration": "

Creates a VPC endpoint service to which service consumers (Amazon Web Services accounts, users, and IAM roles) can connect.

Before you create an endpoint service, you must create one of the following for your service:

If you set the private DNS name, you must prove that you own the private DNS domain name.

For more information, see the Amazon Web Services PrivateLink Guide.

", @@ -204,15 +205,16 @@ "DeleteVerifiedAccessInstance": "

Delete an Amazon Web Services Verified Access instance.

", "DeleteVerifiedAccessTrustProvider": "

Delete an Amazon Web Services Verified Access trust provider.

", "DeleteVolume": "

Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance).

The volume can remain in the deleting state for several minutes.

For more information, see Delete an Amazon EBS volume in the Amazon Elastic Compute Cloud User Guide.

", - "DeleteVpc": "

Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.

", + "DeleteVpc": "

Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on. When you delete the VPC, it deletes the VPC's default security group, network ACL, and route table.

", "DeleteVpcEndpointConnectionNotifications": "

Deletes the specified VPC endpoint connection notifications.

", "DeleteVpcEndpointServiceConfigurations": "

Deletes the specified VPC endpoint service configurations. Before you can delete an endpoint service configuration, you must reject any Available or PendingAcceptance interface endpoint connections that are attached to the service.

", "DeleteVpcEndpoints": "

Deletes the specified VPC endpoints.

When you delete a gateway endpoint, we delete the endpoint routes in the route tables for the endpoint.

When you delete a Gateway Load Balancer endpoint, we delete its endpoint network interfaces. You can only delete Gateway Load Balancer endpoints when the routes that are associated with the endpoint are deleted.

When you delete an interface endpoint, we delete its endpoint network interfaces.

", - "DeleteVpcPeeringConnection": "

Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the accepter VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state. You cannot delete a VPC peering connection that's in the failed state.

", + "DeleteVpcPeeringConnection": "

Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the accepter VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state. You cannot delete a VPC peering connection that's in the failed or rejected state.

", "DeleteVpnConnection": "

Deletes the specified VPN connection.

If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway device using the new configuration information returned with the new VPN connection ID.

For certificate-based authentication, delete all Certificate Manager (ACM) private certificates used for the Amazon Web Services-side tunnel endpoints for the VPN connection before deleting the VPN connection.

", "DeleteVpnConnectionRoute": "

Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

", "DeleteVpnGateway": "

Deletes the specified virtual private gateway. You must first detach the virtual private gateway from the VPC. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.

", "DeprovisionByoipCidr": "

Releases the specified address range that you provisioned for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP) and deletes the corresponding address pool.

Before you can release an address range, you must stop advertising it using WithdrawByoipCidr and you must not have any IP addresses allocated from its address range.

", + "DeprovisionIpamByoasn": "

Deprovisions your Autonomous System Number (ASN) from your Amazon Web Services account. This action can only be called after any BYOIP CIDR associations are removed from your Amazon Web Services account with DisassociateIpamByoasn. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

", "DeprovisionIpamPoolCidr": "

Deprovision a CIDR provisioned from an IPAM pool. If you deprovision a CIDR from a pool that has a source pool, the CIDR is recycled back into the source pool. For more information, see Deprovision pool CIDRs in the Amazon VPC IPAM User Guide.

", "DeprovisionPublicIpv4PoolCidr": "

Deprovision a CIDR from a public IPv4 pool.

", "DeregisterImage": "

Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances.

If you deregister an AMI that matches a Recycle Bin retention rule, the AMI is retained in the Recycle Bin for the specified retention period. For more information, see Recycle Bin in the Amazon EC2 User Guide.

When you deregister an AMI, it doesn't affect any instances that you've already launched from the AMI. You'll continue to incur usage costs for those instances until you terminate them.

When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was created for the root volume of the instance during the AMI creation process. When you deregister an instance store-backed AMI, it doesn't affect the files that you uploaded to Amazon S3 when you created the AMI.

", @@ -228,6 +230,7 @@ "DescribeAwsNetworkPerformanceMetricSubscriptions": "

Describes the current Infrastructure Performance metric subscriptions.

", "DescribeBundleTasks": "

Describes the specified bundle tasks or all of your bundle tasks.

Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.

", "DescribeByoipCidrs": "

Describes the IP address ranges that were specified in calls to ProvisionByoipCidr.

To describe the address pools that were created when you provisioned the address ranges, use DescribePublicIpv4Pools or DescribeIpv6Pools.

", + "DescribeCapacityBlockOfferings": "

Describes Capacity Block offerings available for purchase. With Capacity Blocks, you purchase a specific instance type for a period of time.

", "DescribeCapacityReservationFleets": "

Describes one or more Capacity Reservation Fleets.

", "DescribeCapacityReservations": "

Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the Amazon Web Services Region that you're currently using.

", "DescribeCarrierGateways": "

Describes one or more of your carrier gateways.

", @@ -245,7 +248,7 @@ "DescribeElasticGpus": "

Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic Graphics, see Amazon Elastic Graphics.

", "DescribeExportImageTasks": "

Describes the specified export image tasks or all of your export image tasks.

", "DescribeExportTasks": "

Describes the specified export instance tasks or all of your export instance tasks.

", - "DescribeFastLaunchImages": "

Describe details for Windows AMIs that are configured for faster launching.

", + "DescribeFastLaunchImages": "

Describe details for Windows AMIs that are configured for Windows fast launch.

", "DescribeFastSnapshotRestores": "

Describes the state of fast snapshot restores for your snapshots.

", "DescribeFleetHistory": "

Describes the events for the specified EC2 Fleet during the specified time.

EC2 Fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event. EC2 Fleet events are available for 48 hours.

For more information, see Monitor fleet events using Amazon EventBridge in the Amazon EC2 User Guide.

", "DescribeFleetInstances": "

Describes the running instances for the specified EC2 Fleet.

For more information, see Monitor your EC2 Fleet in the Amazon EC2 User Guide.

", @@ -269,10 +272,12 @@ "DescribeInstanceEventNotificationAttributes": "

Describes the tag keys that are registered to appear in scheduled event notifications for resources in the current Region.

", "DescribeInstanceEventWindows": "

Describes the specified event windows or all event windows.

If you specify event window IDs, the output includes information for only the specified event windows. If you specify filters, the output includes information for only those event windows that meet the filter criteria. If you do not specify event windows IDs or filters, the output includes information for all event windows, which can affect performance. We recommend that you use pagination to ensure that the operation returns quickly and successfully.

For more information, see Define event windows for scheduled events in the Amazon EC2 User Guide.

", "DescribeInstanceStatus": "

Describes the status of the specified instances or all of your instances. By default, only running instances are described, unless you specifically indicate to return the status of all instances.

Instance status includes the following components:

  • Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status checks for your instances and Troubleshoot instances with failed status checks in the Amazon EC2 User Guide.

  • Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled events for your instances in the Amazon EC2 User Guide.

  • Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance lifecycle in the Amazon EC2 User Guide.

", + "DescribeInstanceTopology": "

Describes a tree-based hierarchy that represents the physical host placement of your EC2 instances within an Availability Zone or Local Zone. You can use this information to determine the relative proximity of your EC2 instances within the Amazon Web Services network to support your tightly coupled workloads.

Limitations

  • Supported zones

    • Availability Zone

    • Local Zone

  • Supported instance types

    • hpc6a.48xlarge | hpc6id.32xlarge | hpc7a.12xlarge | hpc7a.24xlarge | hpc7a.48xlarge | hpc7a.96xlarge | hpc7g.4xlarge | hpc7g.8xlarge | hpc7g.16xlarge

    • p3dn.24xlarge | p4d.24xlarge | p4de.24xlarge | p5.48xlarge

    • trn1.2xlarge | trn1.32xlarge | trn1n.32xlarge

For more information, see Amazon EC2 instance topology in the Amazon EC2 User Guide.

", "DescribeInstanceTypeOfferings": "

Returns a list of all instance types offered. The results can be filtered by location (Region or Availability Zone). If no location is specified, the instance types offered in the current Region are returned.

", "DescribeInstanceTypes": "

Describes the details of the instance types that are offered in a location. The results can be filtered by the attributes of the instance types.

", "DescribeInstances": "

Describes the specified instances or all instances.

If you specify instance IDs, the output includes information for only the specified instances. If you specify filters, the output includes information for only those instances that meet the filter criteria. If you do not specify instance IDs or filters, the output includes information for all instances, which can affect performance. We recommend that you use pagination to ensure that the operation returns quickly and successfully.

If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the output.

Recently terminated instances might appear in the returned results. This interval is usually less than one hour.

If you describe instances in the rare case where an Availability Zone is experiencing a service disruption and you specify instance IDs that are in the affected zone, or do not specify any instance IDs at all, the call fails. If you describe instances and specify only instance IDs that are in an unaffected zone, the call works normally.

", "DescribeInternetGateways": "

Describes one or more of your internet gateways.

", + "DescribeIpamByoasn": "

Describes your Autonomous System Numbers (ASNs), their provisioning statuses, and the BYOIP CIDRs with which they are associated. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

", "DescribeIpamPools": "

Get information about your IPAM pools.

", "DescribeIpamResourceDiscoveries": "

Describes IPAM resource discoveries. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", "DescribeIpamResourceDiscoveryAssociations": "

Describes resource discovery association with an Amazon VPC IPAM. An associated resource discovery is a resource discovery that has been associated with an IPAM..

", @@ -288,6 +293,7 @@ "DescribeLocalGatewayVirtualInterfaceGroups": "

Describes the specified local gateway virtual interface groups.

", "DescribeLocalGatewayVirtualInterfaces": "

Describes the specified local gateway virtual interfaces.

", "DescribeLocalGateways": "

Describes one or more local gateways. By default, all local gateways are described. Alternatively, you can filter the results.

", + "DescribeLockedSnapshots": "

Describes the lock status for a snapshot.

", "DescribeManagedPrefixLists": "

Describes your managed prefix lists and any Amazon Web Services-managed prefix lists.

To view the entries for your prefix list, use GetManagedPrefixListEntries.

", "DescribeMovingAddresses": "

This action is deprecated.

Describes your Elastic IP addresses that are being moved from or being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.

", "DescribeNatGateways": "

Describes one or more of your NAT gateways.

", @@ -298,7 +304,7 @@ "DescribeNetworkInsightsPaths": "

Describes one or more of your paths.

", "DescribeNetworkInterfaceAttribute": "

Describes a network interface attribute. You can specify only one attribute at a time.

", "DescribeNetworkInterfacePermissions": "

Describes the permissions for your network interfaces.

", - "DescribeNetworkInterfaces": "

Describes one or more of your network interfaces.

", + "DescribeNetworkInterfaces": "

Describes one or more of your network interfaces.

If you have a large number of network interfaces, the operation fails unless you use pagination or one of the following filters: group-id, mac-address, private-dns-name, private-ip-address, private-dns-name, subnet-id, or vpc-id.

", "DescribePlacementGroups": "

Describes the specified placement groups or all of your placement groups. For more information, see Placement groups in the Amazon EC2 User Guide.

", "DescribePrefixLists": "

Describes available Amazon Web Services services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service.

We recommend that you use DescribeManagedPrefixLists instead.

", "DescribePrincipalIdFormat": "

Describes the ID format settings for the root user and all IAM roles and IAM users that have explicitly specified a longer ID (17-character ID) preference.

By default, all IAM roles and IAM users default to the same ID settings as the root user, unless they explicitly override the settings. This request is useful for identifying those IAM users and IAM roles that have overridden the default ID settings.

The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

", @@ -312,7 +318,7 @@ "DescribeRouteTables": "

Describes one or more of your route tables.

Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

For more information, see Route tables in the Amazon VPC User Guide.

", "DescribeScheduledInstanceAvailability": "

Finds available schedules that meet the specified criteria.

You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.

", "DescribeScheduledInstances": "

Describes the specified Scheduled Instances or all your Scheduled Instances.

", - "DescribeSecurityGroupReferences": "

Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

", + "DescribeSecurityGroupReferences": "

Describes the VPCs on the other side of a VPC peering connection or the VPCs attached to a transit gateway that are referencing the security groups you've specified in this request.

", "DescribeSecurityGroupRules": "

Describes one or more of your security group rules.

", "DescribeSecurityGroups": "

Describes the specified security groups or all of your security groups.

", "DescribeSnapshotAttribute": "

Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon Elastic Compute Cloud User Guide.

", @@ -324,7 +330,7 @@ "DescribeSpotFleetRequests": "

Describes your Spot Fleet requests.

Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.

", "DescribeSpotInstanceRequests": "

Describes the specified Spot Instance requests.

You can use DescribeSpotInstanceRequests to find a running Spot Instance by examining the response. If the status of the Spot Instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot.

We recommend that you set MaxResults to a value between 5 and 1000 to limit the number of items returned. This paginates the output, which makes the list more manageable and returns the items faster. If the list of items exceeds your MaxResults value, then that number of items is returned along with a NextToken value that can be passed to a subsequent DescribeSpotInstanceRequests request to retrieve the remaining items.

Spot Instance requests are deleted four hours after they are canceled and their instances are terminated.

", "DescribeSpotPriceHistory": "

Describes the Spot price history. For more information, see Spot Instance pricing history in the Amazon EC2 User Guide for Linux Instances.

When you specify a start and end time, the operation returns the prices of the instance types within that time range. It also returns the last price change before the start time, which is the effective price as of the start time.

", - "DescribeStaleSecurityGroups": "

Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in the same VPC or in a peer VPC, or if they reference a security group in a peer VPC for which the VPC peering connection has been deleted.

", + "DescribeStaleSecurityGroups": "

Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in the same VPC, peered VPC, or in separate VPCs attached to a transit gateway (with security group referencing support enabled). Rules can also be stale if they reference a security group in a peer VPC for which the VPC peering connection has been deleted or if they reference a security group in a VPC that has been detached from a transit gateway.

", "DescribeStoreImageTasks": "

Describes the progress of the AMI store tasks. You can describe the store tasks for specified AMIs. If you don't specify the AMIs, you get a paginated list of store tasks from the last 31 days.

For each AMI task, the response indicates if the task is InProgress, Completed, or Failed. For tasks InProgress, the response shows the estimated progress as a percentage.

Tasks are listed in reverse chronological order. Currently, only tasks from the past 31 days can be viewed.

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the Amazon EC2 User Guide.

For more information, see Store and restore an AMI using Amazon S3 in the Amazon EC2 User Guide.

", "DescribeSubnets": "

Describes one or more of your subnets.

For more information, see Subnets in the Amazon VPC User Guide.

", "DescribeTags": "

Describes the specified tags for your EC2 resources.

For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide.

", @@ -341,7 +347,7 @@ "DescribeTransitGatewayRouteTables": "

Describes one or more transit gateway route tables. By default, all transit gateway route tables are described. Alternatively, you can filter the results.

", "DescribeTransitGatewayVpcAttachments": "

Describes one or more VPC attachments. By default, all VPC attachments are described. Alternatively, you can filter the results.

", "DescribeTransitGateways": "

Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can filter the results.

", - "DescribeTrunkInterfaceAssociations": "

This API action is currently in limited preview only. If you are interested in using this feature, contact your account manager.

Describes one or more network interface trunk associations.

", + "DescribeTrunkInterfaceAssociations": "

Describes one or more network interface trunk associations.

", "DescribeVerifiedAccessEndpoints": "

Describes the specified Amazon Web Services Verified Access endpoints.

", "DescribeVerifiedAccessGroups": "

Describes the specified Verified Access groups.

", "DescribeVerifiedAccessInstanceLoggingConfigurations": "

Describes the specified Amazon Web Services Verified Access instances.

", @@ -373,12 +379,14 @@ "DisableAddressTransfer": "

Disables Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

", "DisableAwsNetworkPerformanceMetricSubscription": "

Disables Infrastructure Performance metric subscriptions.

", "DisableEbsEncryptionByDefault": "

Disables EBS encryption by default for your account in the current Region.

After you disable encryption by default, you can still create encrypted volumes by enabling encryption when you create each volume.

Disabling encryption by default does not change the encryption status of your existing volumes.

For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

", - "DisableFastLaunch": "

Discontinue faster launching for a Windows AMI, and clean up existing pre-provisioned snapshots. When you disable faster launching, the AMI uses the standard launch process for each instance. All pre-provisioned snapshots must be removed before you can enable faster launching again.

To change these settings, you must own the AMI.

", + "DisableFastLaunch": "

Discontinue Windows fast launch for a Windows AMI, and clean up existing pre-provisioned snapshots. After you disable Windows fast launch, the AMI uses the standard launch process for each new instance. Amazon EC2 must remove all pre-provisioned snapshots before you can enable Windows fast launch again.

You can only change these settings for Windows AMIs that you own or that have been shared with you.

", "DisableFastSnapshotRestores": "

Disables fast snapshot restores for the specified snapshots in the specified Availability Zones.

", + "DisableImage": "

Sets the AMI state to disabled and removes all launch permissions from the AMI. A disabled AMI can't be used for instance launches.

A disabled AMI can't be shared. If an AMI was public or previously shared, it is made private. If an AMI was shared with an Amazon Web Services account, organization, or Organizational Unit, they lose access to the disabled AMI.

A disabled AMI does not appear in DescribeImages API calls by default.

Only the AMI owner can disable an AMI.

You can re-enable a disabled AMI using EnableImage.

For more information, see Disable an AMI in the Amazon EC2 User Guide.

", "DisableImageBlockPublicAccess": "

Disables block public access for AMIs at the account level in the specified Amazon Web Services Region. This removes the block public access restriction from your account. With the restriction removed, you can publicly share your AMIs in the specified Amazon Web Services Region.

The API can take up to 10 minutes to configure this setting. During this time, if you run GetImageBlockPublicAccessState, the response will be block-new-sharing. When the API has completed the configuration, the response will be unblocked.

For more information, see Block public access to your AMIs in the Amazon EC2 User Guide.

", "DisableImageDeprecation": "

Cancels the deprecation of the specified AMI.

For more information, see Deprecate an AMI in the Amazon EC2 User Guide.

", "DisableIpamOrganizationAdminAccount": "

Disable the IPAM account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide.

", "DisableSerialConsoleAccess": "

Disables access to the EC2 serial console of all instances for your account. By default, access to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console in the Amazon EC2 User Guide.

", + "DisableSnapshotBlockPublicAccess": "

Disables the block public access for snapshots setting at the account level for the specified Amazon Web Services Region. After you disable block public access for snapshots in a Region, users can publicly share snapshots in that Region.

If block public access is enabled in block-all-sharing mode, and you disable block public access, all snapshots that were previously publicly shared are no longer treated as private and they become publicly accessible again.

For more information, see Block public access for snapshots in the Amazon Elastic Compute Cloud User Guide .

", "DisableTransitGatewayRouteTablePropagation": "

Disables the specified resource attachment from propagating routes to the specified propagation route table.

", "DisableVgwRoutePropagation": "

Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.

", "DisableVpcClassicLink": "

This action is deprecated.

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

", @@ -388,6 +396,7 @@ "DisassociateEnclaveCertificateIamRole": "

Disassociates an IAM role from an Certificate Manager (ACM) certificate. Disassociating an IAM role from an ACM certificate removes the Amazon S3 object that contains the certificate, certificate chain, and encrypted private key from the Amazon S3 bucket. It also revokes the IAM role's permission to use the KMS key used to encrypt the private key. This effectively revokes the role's permission to use the certificate.

", "DisassociateIamInstanceProfile": "

Disassociates an IAM instance profile from a running or stopped instance.

Use DescribeIamInstanceProfileAssociations to get the association ID.

", "DisassociateInstanceEventWindow": "

Disassociates one or more targets from an event window.

For more information, see Define event windows for scheduled events in the Amazon EC2 User Guide.

", + "DisassociateIpamByoasn": "

Remove the association between your Autonomous System Number (ASN) and your BYOIP CIDR. You may want to use this action to disassociate an ASN from a CIDR or if you want to swap ASNs. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

", "DisassociateIpamResourceDiscovery": "

Disassociates a resource discovery from an Amazon VPC IPAM. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", "DisassociateNatGatewayAddress": "

Disassociates secondary Elastic IP addresses (EIPs) from a public NAT gateway. You cannot disassociate your primary EIP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

While disassociating is in progress, you cannot associate/disassociate additional EIPs while the connections are being drained. You are, however, allowed to delete the NAT gateway.

An EIP is released only at the end of MaxDrainDurationSeconds. It stays associated and supports the existing connections but does not support any new connections (new connections are distributed across the remaining associated EIPs). As the existing connections drain out, the EIPs (and the corresponding private IP addresses mapped to them) are released.

", "DisassociateRouteTable": "

Disassociates a subnet or gateway from a route table.

After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route tables in the Amazon VPC User Guide.

", @@ -395,18 +404,20 @@ "DisassociateTransitGatewayMulticastDomain": "

Disassociates the specified subnets from the transit gateway multicast domain.

", "DisassociateTransitGatewayPolicyTable": "

Removes the association between an an attachment and a policy table.

", "DisassociateTransitGatewayRouteTable": "

Disassociates a resource attachment from a transit gateway route table.

", - "DisassociateTrunkInterface": "

This API action is currently in limited preview only. If you are interested in using this feature, contact your account manager.

Removes an association between a branch network interface with a trunk network interface.

", + "DisassociateTrunkInterface": "

Removes an association between a branch network interface with a trunk network interface.

", "DisassociateVpcCidrBlock": "

Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you must specify its association ID. You can get the association ID by using DescribeVpcs. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it.

You cannot disassociate the CIDR block with which you originally created the VPC (the primary CIDR block).

", "EnableAddressTransfer": "

Enables Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

", "EnableAwsNetworkPerformanceMetricSubscription": "

Enables Infrastructure Performance subscriptions.

", "EnableEbsEncryptionByDefault": "

Enables EBS encryption by default for your account in the current Region.

After you enable encryption by default, the EBS volumes that you create are always encrypted, either using the default KMS key or the KMS key that you specified when you created each volume. For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

You can specify the default KMS key for encryption by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId.

Enabling encryption by default has no effect on the encryption status of your existing volumes.

After you enable encryption by default, you can no longer launch instances using instance types that do not support encryption. For more information, see Supported instance types.

", - "EnableFastLaunch": "

When you enable faster launching for a Windows AMI, images are pre-provisioned, using snapshots to launch instances up to 65% faster. To create the optimized Windows image, Amazon EC2 launches an instance and runs through Sysprep steps, rebooting as required. Then it creates a set of reserved snapshots that are used for subsequent launches. The reserved snapshots are automatically replenished as they are used, depending on your settings for launch frequency.

To change these settings, you must own the AMI.

", + "EnableFastLaunch": "

When you enable Windows fast launch for a Windows AMI, images are pre-provisioned, using snapshots to launch instances up to 65% faster. To create the optimized Windows image, Amazon EC2 launches an instance and runs through Sysprep steps, rebooting as required. Then it creates a set of reserved snapshots that are used for subsequent launches. The reserved snapshots are automatically replenished as they are used, depending on your settings for launch frequency.

You can only change these settings for Windows AMIs that you own or that have been shared with you.

", "EnableFastSnapshotRestores": "

Enables fast snapshot restores for the specified snapshots in the specified Availability Zones.

You get the full benefit of fast snapshot restores after they enter the enabled state. To get the current state of fast snapshot restores, use DescribeFastSnapshotRestores. To disable fast snapshot restores, use DisableFastSnapshotRestores.

For more information, see Amazon EBS fast snapshot restore in the Amazon Elastic Compute Cloud User Guide.

", + "EnableImage": "

Re-enables a disabled AMI. The re-enabled AMI is marked as available and can be used for instance launches, appears in describe operations, and can be shared. Amazon Web Services accounts, organizations, and Organizational Units that lost access to the AMI when it was disabled do not regain access automatically. Once the AMI is available, it can be shared with them again.

Only the AMI owner can re-enable a disabled AMI.

For more information, see Disable an AMI in the Amazon EC2 User Guide.

", "EnableImageBlockPublicAccess": "

Enables block public access for AMIs at the account level in the specified Amazon Web Services Region. This prevents the public sharing of your AMIs. However, if you already have public AMIs, they will remain publicly available.

The API can take up to 10 minutes to configure this setting. During this time, if you run GetImageBlockPublicAccessState, the response will be unblocked. When the API has completed the configuration, the response will be block-new-sharing.

For more information, see Block public access to your AMIs in the Amazon EC2 User Guide.

", "EnableImageDeprecation": "

Enables deprecation of the specified AMI at the specified date and time.

For more information, see Deprecate an AMI in the Amazon EC2 User Guide.

", "EnableIpamOrganizationAdminAccount": "

Enable an Organizations member account as the IPAM admin account. You cannot select the Organizations management account as the IPAM admin account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide.

", "EnableReachabilityAnalyzerOrganizationSharing": "

Establishes a trust relationship between Reachability Analyzer and Organizations. This operation must be performed by the management account for the organization.

After you establish a trust relationship, a user in the management account or a delegated administrator account can run a cross-account analysis using resources from the member accounts.

", "EnableSerialConsoleAccess": "

Enables access to the EC2 serial console of all instances for your account. By default, access to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console in the Amazon EC2 User Guide.

", + "EnableSnapshotBlockPublicAccess": "

Enables or modifies the block public access for snapshots setting at the account level for the specified Amazon Web Services Region. After you enable block public access for snapshots in a Region, users can no longer request public sharing for snapshots in that Region. Snapshots that are already publicly shared are either treated as private or they remain publicly shared, depending on the State that you specify.

If block public access is enabled in block-all-sharing mode, and you change the mode to block-new-sharing, all snapshots that were previously publicly shared are no longer treated as private and they become publicly accessible again.

For more information, see Block public access for snapshots in the Amazon Elastic Compute Cloud User Guide.

", "EnableTransitGatewayRouteTablePropagation": "

Enables the specified attachment to propagate routes to the specified propagation route table.

", "EnableVgwRoutePropagation": "

Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.

", "EnableVolumeIO": "

Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

", @@ -434,6 +445,7 @@ "GetInstanceUefiData": "

A binary representation of the UEFI variable store. Only non-volatile variables are stored. This is a base64 encoded and zlib compressed binary value that must be properly encoded.

When you use register-image to create an AMI, you can create an exact copy of your variable store by passing the UEFI data in the UefiData parameter. You can modify the UEFI data by using the python-uefivars tool on GitHub. You can use the tool to convert the UEFI data into a human-readable format (JSON), which you can inspect and modify, and then convert back into the binary format to use with register-image.

For more information, see UEFI Secure Boot in the Amazon EC2 User Guide.

", "GetIpamAddressHistory": "

Retrieve historical information about a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.

", "GetIpamDiscoveredAccounts": "

Gets IPAM discovered accounts. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts. Only the IPAM account can get all discovered accounts in the organization.

", + "GetIpamDiscoveredPublicAddresses": "

Gets the public IP addresses that have been discovered by IPAM.

", "GetIpamDiscoveredResourceCidrs": "

Returns the resource CIDRs that are monitored as part of a resource discovery. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses.

", "GetIpamPoolAllocations": "

Get a list of all the CIDR allocations in an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations.

If you use this action after AllocateIpamPoolCidr or ReleaseIpamPoolAllocation, note that all EC2 API actions follow an eventual consistency model.

", "GetIpamPoolCidrs": "

Get the CIDRs provisioned to an IPAM pool.

", @@ -445,7 +457,9 @@ "GetNetworkInsightsAccessScopeContent": "

Gets the content for the specified Network Access Scope.

", "GetPasswordData": "

Retrieves the encrypted administrator password for a running Windows instance.

The Windows password is generated at boot by the EC2Config service or EC2Launch scripts (Windows Server 2016 and later). This usually only happens the first time an instance is launched. For more information, see EC2Config and EC2Launch in the Amazon EC2 User Guide.

For the EC2Config service, the password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling.

The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file.

When you launch an instance, password generation and encryption may take a few minutes. If you try to retrieve the password before it's available, the output returns an empty string. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.

", "GetReservedInstancesExchangeQuote": "

Returns a quote and exchange information for exchanging one or more specified Convertible Reserved Instances for a new Convertible Reserved Instance. If the exchange cannot be performed, the reason is returned in the response. Use AcceptReservedInstancesExchangeQuote to perform the exchange.

", + "GetSecurityGroupsForVpc": "

Gets security groups that can be associated by the Amazon Web Services account making the request with network interfaces in the specified VPC.

", "GetSerialConsoleAccessStatus": "

Retrieves the access status of your account to the EC2 serial console of all instances. By default, access to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console in the Amazon EC2 User Guide.

", + "GetSnapshotBlockPublicAccessState": "

Gets the current state of block public access for snapshots setting for the account and Region.

For more information, see Block public access for snapshots in the Amazon Elastic Compute Cloud User Guide.

", "GetSpotPlacementScores": "

Calculates the Spot placement score for a Region or Availability Zone based on the specified target capacity and compute requirements.

You can specify your compute requirements either by using InstanceRequirementsWithMetadata and letting Amazon EC2 choose the optimal instance types to fulfill your Spot request, or you can specify the instance types by using InstanceTypes.

For more information, see Spot placement score in the Amazon EC2 User Guide.

", "GetSubnetCidrReservations": "

Gets information about the subnet CIDR reservations.

", "GetTransitGatewayAttachmentPropagations": "

Lists the route tables to which the specified resource attachment propagates routes.

", @@ -468,6 +482,7 @@ "ImportVolume": "

Creates an import volume task using metadata from the specified disk image.

This API action supports only single-volume VMs. To import multi-volume VMs, use ImportImage instead. To import a disk to a snapshot, use ImportSnapshot instead.

This API action is not supported by the Command Line Interface (CLI). For information about using the Amazon EC2 CLI, which is deprecated, see Importing Disks to Amazon EBS in the Amazon EC2 CLI Reference PDF file.

For information about the import manifest referenced by this API action, see VM Import Manifest.

", "ListImagesInRecycleBin": "

Lists one or more AMIs that are currently in the Recycle Bin. For more information, see Recycle Bin in the Amazon EC2 User Guide.

", "ListSnapshotsInRecycleBin": "

Lists one or more snapshots that are currently in the Recycle Bin.

", + "LockSnapshot": "

Locks an Amazon EBS snapshot in either governance or compliance mode to protect it against accidental or malicious deletions for a specific duration. A locked snapshot can't be deleted.

You can also use this action to modify the lock settings for a snapshot that is already locked. The allowed modifications depend on the lock mode and lock state:

  • If the snapshot is locked in governance mode, you can modify the lock mode and the lock duration or lock expiration date.

  • If the snapshot is locked in compliance mode and it is in the cooling-off period, you can modify the lock mode and the lock duration or lock expiration date.

  • If the snapshot is locked in compliance mode and the cooling-off period has lapsed, you can only increase the lock duration or extend the lock expiration date.

", "ModifyAddressAttribute": "

Modifies an attribute of the specified Elastic IP address. For requirements, see Using reverse DNS for email applications.

", "ModifyAvailabilityZoneGroup": "

Changes the opt-in status of the Local Zone and Wavelength Zone group for your account.

Use DescribeAvailabilityZones to view the value for GroupName.

", "ModifyCapacityReservation": "

Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You cannot change a Capacity Reservation's instance type, EBS optimization, instance store settings, platform, Availability Zone, or instance eligibility. If you need to modify any of these attributes, we recommend that you cancel the Capacity Reservation, and then create a new one with the required attributes.

", @@ -536,8 +551,10 @@ "MoveAddressToVpc": "

This action is deprecated.

Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account for more than 24 hours, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.

", "MoveByoipCidrToIpam": "

Move a BYOIPv4 CIDR to IPAM from a public IPv4 pool.

If you already have a BYOIPv4 CIDR with Amazon Web Services, you can move the CIDR to IPAM from a public IPv4 pool. You cannot move an IPv6 CIDR to IPAM. If you are bringing a new IP address to Amazon Web Services for the first time, complete the steps in Tutorial: BYOIP address CIDRs to IPAM.

", "ProvisionByoipCidr": "

Provisions an IPv4 or IPv6 address range for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP) and creates a corresponding address pool. After the address range is provisioned, it is ready to be advertised using AdvertiseByoipCidr.

Amazon Web Services verifies that you own the address range and are authorized to advertise it. You must ensure that the address range is registered to you and that you created an RPKI ROA to authorize Amazon ASNs 16509 and 14618 to advertise the address range. For more information, see Bring your own IP addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide.

Provisioning an address range is an asynchronous operation, so the call returns immediately, but the address range is not ready to use until its status changes from pending-provision to provisioned. To monitor the status of an address range, use DescribeByoipCidrs. To allocate an Elastic IP address from your IPv4 address pool, use AllocateAddress with either the specific address from the address pool or the ID of the address pool.

", + "ProvisionIpamByoasn": "

Provisions your Autonomous System Number (ASN) for use in your Amazon Web Services account. This action requires authorization context for Amazon to bring the ASN to an Amazon Web Services account. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

", "ProvisionIpamPoolCidr": "

Provision a CIDR to an IPAM pool. You can use this action to provision new CIDRs to a top-level pool or to transfer a CIDR from a top-level pool to a pool within it.

For more information, see Provision CIDRs to pools in the Amazon VPC IPAM User Guide.

", "ProvisionPublicIpv4PoolCidr": "

Provision a CIDR to a public IPv4 pool.

For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

", + "PurchaseCapacityBlock": "

Purchase the Capacity Block for use with your account. With Capacity Blocks you ensure GPU capacity is available for machine learning (ML) workloads. You must specify the ID of the Capacity Block offering you are purchasing.

", "PurchaseHostReservation": "

Purchase a reservation with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This action results in the specified reservation being purchased and charged to your account.

", "PurchaseReservedInstancesOffering": "

Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay a lower hourly rate compared to On-Demand instance pricing.

Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances.

To queue a purchase for a future date and time, specify a purchase time. If you do not specify a purchase time, the default is the current time.

For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon EC2 User Guide.

", "PurchaseScheduledInstances": "

You can no longer purchase Scheduled Instances.

Purchases the Scheduled Instances with the specified schedule.

Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call RunScheduledInstances during each scheduled time period.

After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.

", @@ -578,7 +595,7 @@ "RestoreSnapshotTier": "

Restores an archived Amazon EBS snapshot for use temporarily or permanently, or modifies the restore period or restore type for a snapshot that was previously temporarily restored.

For more information see Restore an archived snapshot and modify the restore period or restore type for a temporarily restored snapshot in the Amazon Elastic Compute Cloud User Guide.

", "RevokeClientVpnIngress": "

Removes an ingress authorization rule from a Client VPN endpoint.

", "RevokeSecurityGroupEgress": "

Removes the specified outbound (egress) rules from the specified security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and destination (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", - "RevokeSecurityGroupIngress": "

Removes the specified inbound (ingress) rules from a security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", + "RevokeSecurityGroupIngress": "

Removes the specified inbound (ingress) rules from a security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

For a non-default VPC, if the values you specify do not match the existing rule's values, an InvalidPermission.NotFound client error is returned, and no rules are revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", "RunInstances": "

Launches the specified number of instances using an AMI for which you have permissions.

You can specify a number of options, or leave the default options. The following rules apply:

  • If you don't specify a subnet ID, we choose a default subnet from your default VPC for you. If you don't have a default VPC, you must specify a subnet ID in the request.

  • All instances have a network interface with a primary private IPv4 address. If you don't specify this address, we choose one from the IPv4 range of your subnet.

  • Not all instance types support IPv6 addresses. For more information, see Instance types.

  • If you don't specify a security group ID, we use the default security group. For more information, see Security groups.

  • If any of the AMIs have a product code attached for which the user has not subscribed, the request fails.

You can create a launch template, which is a resource that contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify the launch template instead of specifying the launch parameters.

To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances.

An instance is ready for you to use when it's in the running state. You can check the state of your instance using DescribeInstances. You can tag instances and EBS volumes during launch, after launch, or both. For more information, see CreateTags and Tagging your Amazon EC2 resources.

Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key pairs.

For troubleshooting, see What to do if an instance immediately terminates, and Troubleshooting connecting to your instance.

", "RunScheduledInstances": "

Launches the specified Scheduled Instances.

Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon EC2 User Guide.

", "SearchLocalGatewayRoutes": "

Searches for routes in the specified local gateway route table.

", @@ -595,6 +612,7 @@ "UnassignIpv6Addresses": "

Unassigns one or more IPv6 addresses IPv4 Prefix Delegation prefixes from a network interface.

", "UnassignPrivateIpAddresses": "

Unassigns one or more secondary private IP addresses, or IPv4 Prefix Delegation prefixes from a network interface.

", "UnassignPrivateNatGatewayAddress": "

Unassigns secondary private IPv4 addresses from a private NAT gateway. You cannot unassign your primary private IP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

While unassigning is in progress, you cannot assign/unassign additional IP addresses while the connections are being drained. You are, however, allowed to delete the NAT gateway.

A private IP address will only be released at the end of MaxDrainDurationSeconds. The private IP addresses stay associated and support the existing connections, but do not support any new connections (new connections are distributed across the remaining assigned private IP address). After the existing connections drain out, the private IP addresses are released.

", + "UnlockSnapshot": "

Unlocks a snapshot that is locked in governance mode or that is locked in compliance mode but still in the cooling-off period. You can't unlock a snapshot that is locked in compliance mode after the cooling-off period has expired.

", "UnmonitorInstances": "

Disables detailed monitoring for a running instance. For more information, see Monitoring your instances and volumes in the Amazon EC2 User Guide.

", "UpdateSecurityGroupRuleDescriptionsEgress": "

Updates the description of an egress (outbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You can remove a description for a security group rule by omitting the description parameter in the request.

", "UpdateSecurityGroupRuleDescriptionsIngress": "

Updates the description of an ingress (inbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You can remove a description for a security group rule by omitting the description parameter in the request.

", @@ -622,8 +640,8 @@ "AcceleratorManufacturerSet": { "base": null, "refs": { - "InstanceRequirements$AcceleratorManufacturers": "

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with NVIDIA devices, specify nvidia.

  • For instance types with AMD devices, specify amd.

  • For instance types with Amazon Web Services devices, specify amazon-web-services.

  • For instance types with Xilinx devices, specify xilinx.

Default: Any manufacturer

", - "InstanceRequirementsRequest$AcceleratorManufacturers": "

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with NVIDIA devices, specify nvidia.

  • For instance types with AMD devices, specify amd.

  • For instance types with Amazon Web Services devices, specify amazon-web-services.

  • For instance types with Xilinx devices, specify xilinx.

Default: Any manufacturer

" + "InstanceRequirements$AcceleratorManufacturers": "

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with Amazon Web Services devices, specify amazon-web-services.

  • For instance types with AMD devices, specify amd.

  • For instance types with Habana devices, specify habana.

  • For instance types with NVIDIA devices, specify nvidia.

  • For instance types with Xilinx devices, specify xilinx.

Default: Any manufacturer

", + "InstanceRequirementsRequest$AcceleratorManufacturers": "

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with Amazon Web Services devices, specify amazon-web-services.

  • For instance types with AMD devices, specify amd.

  • For instance types with Habana devices, specify habana.

  • For instance types with NVIDIA devices, specify nvidia.

  • For instance types with Xilinx devices, specify xilinx.

Default: Any manufacturer

" } }, "AcceleratorName": { @@ -635,8 +653,8 @@ "AcceleratorNameSet": { "base": null, "refs": { - "InstanceRequirements$AcceleratorNames": "

The accelerators that must be on the instance type.

  • For instance types with NVIDIA A100 GPUs, specify a100.

  • For instance types with NVIDIA V100 GPUs, specify v100.

  • For instance types with NVIDIA K80 GPUs, specify k80.

  • For instance types with NVIDIA T4 GPUs, specify t4.

  • For instance types with NVIDIA M60 GPUs, specify m60.

  • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.

  • For instance types with Xilinx VU9P FPGAs, specify vu9p.

  • For instance types with Amazon Web Services Inferentia chips, specify inferentia.

  • For instance types with NVIDIA GRID K520 GPUs, specify k520.

Default: Any accelerator

", - "InstanceRequirementsRequest$AcceleratorNames": "

The accelerators that must be on the instance type.

  • For instance types with NVIDIA A100 GPUs, specify a100.

  • For instance types with NVIDIA V100 GPUs, specify v100.

  • For instance types with NVIDIA K80 GPUs, specify k80.

  • For instance types with NVIDIA T4 GPUs, specify t4.

  • For instance types with NVIDIA M60 GPUs, specify m60.

  • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.

  • For instance types with Xilinx VU9P FPGAs, specify vu9p.

  • For instance types with Amazon Web Services Inferentia chips, specify inferentia.

  • For instance types with NVIDIA GRID K520 GPUs, specify k520.

Default: Any accelerator

" + "InstanceRequirements$AcceleratorNames": "

The accelerators that must be on the instance type.

  • For instance types with NVIDIA A10G GPUs, specify a10g.

  • For instance types with NVIDIA A100 GPUs, specify a100.

  • For instance types with NVIDIA H100 GPUs, specify h100.

  • For instance types with Amazon Web Services Inferentia chips, specify inferentia.

  • For instance types with NVIDIA GRID K520 GPUs, specify k520.

  • For instance types with NVIDIA K80 GPUs, specify k80.

  • For instance types with NVIDIA M60 GPUs, specify m60.

  • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.

  • For instance types with NVIDIA T4 GPUs, specify t4.

  • For instance types with NVIDIA T4G GPUs, specify t4g.

  • For instance types with Xilinx VU9P FPGAs, specify vu9p.

  • For instance types with NVIDIA V100 GPUs, specify v100.

Default: Any accelerator

", + "InstanceRequirementsRequest$AcceleratorNames": "

The accelerators that must be on the instance type.

  • For instance types with NVIDIA A10G GPUs, specify a10g.

  • For instance types with NVIDIA A100 GPUs, specify a100.

  • For instance types with NVIDIA H100 GPUs, specify h100.

  • For instance types with Amazon Web Services Inferentia chips, specify inferentia.

  • For instance types with NVIDIA GRID K520 GPUs, specify k520.

  • For instance types with NVIDIA K80 GPUs, specify k80.

  • For instance types with NVIDIA M60 GPUs, specify m60.

  • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.

  • For instance types with NVIDIA T4 GPUs, specify t4.

  • For instance types with NVIDIA T4G GPUs, specify t4g.

  • For instance types with Xilinx VU9P FPGAs, specify vu9p.

  • For instance types with NVIDIA V100 GPUs, specify v100.

Default: Any accelerator

" } }, "AcceleratorTotalMemoryMiB": { @@ -1245,6 +1263,38 @@ "StartNetworkInsightsAnalysisRequest$FilterInArns": "

The Amazon Resource Names (ARN) of the resources that the path must traverse.

" } }, + "AsnAssociation": { + "base": "

An Autonomous System Number (ASN) and BYOIP CIDR association.

", + "refs": { + "AsnAssociationSet$member": null, + "AssociateIpamByoasnResult$AsnAssociation": "

The ASN and BYOIP CIDR association.

", + "DisassociateIpamByoasnResult$AsnAssociation": "

An ASN and BYOIP CIDR association.

" + } + }, + "AsnAssociationSet": { + "base": null, + "refs": { + "ByoipCidr$AsnAssociations": "

The BYOIP CIDR associations with ASNs.

" + } + }, + "AsnAssociationState": { + "base": null, + "refs": { + "AsnAssociation$State": "

The association's state.

" + } + }, + "AsnAuthorizationContext": { + "base": "

Provides authorization for Amazon to bring an Autonomous System Number (ASN) to a specific Amazon Web Services account using bring your own ASN (BYOASN). For details on the format of the message and signature, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

", + "refs": { + "ProvisionIpamByoasnRequest$AsnAuthorizationContext": "

An ASN authorization context.

" + } + }, + "AsnState": { + "base": null, + "refs": { + "Byoasn$State": "

The provisioning state of the BYOASN.

" + } + }, "AssetId": { "base": null, "refs": { @@ -1355,6 +1405,16 @@ "refs": { } }, + "AssociateIpamByoasnRequest": { + "base": null, + "refs": { + } + }, + "AssociateIpamByoasnResult": { + "base": null, + "refs": { + } + }, "AssociateIpamResourceDiscoveryRequest": { "base": null, "refs": { @@ -1558,15 +1618,15 @@ } }, "AttachmentEnaSrdSpecification": { - "base": "

Describes the ENA Express configuration for the network interface that's attached to the instance.

", + "base": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

", "refs": { "NetworkInterfaceAttachment$EnaSrdSpecification": "

Configures ENA Express for the network interface that this action attaches to the instance.

" } }, "AttachmentEnaSrdUdpSpecification": { - "base": "

Describes the ENA Express configuration for UDP traffic on the network interface that's attached to the instance.

", + "base": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

", "refs": { - "AttachmentEnaSrdSpecification$EnaSrdUdpSpecification": "

ENA Express configuration for UDP network traffic.

" + "AttachmentEnaSrdSpecification$EnaSrdUdpSpecification": "

Configures ENA Express for UDP network traffic.

" } }, "AttachmentStatus": { @@ -1747,6 +1807,7 @@ "base": null, "refs": { "CreateCapacityReservationRequest$AvailabilityZone": "

The Availability Zone in which to create the Capacity Reservation.

", + "CreateDefaultSubnetRequest$AvailabilityZone": "

The Availability Zone in which to create the default subnet.

", "CreateVolumeRequest$AvailabilityZone": "

The ID of the Availability Zone in which to create the volume. For example, us-east-1a.

" } }, @@ -1884,7 +1945,7 @@ "BlockDeviceMappingRequestList": { "base": null, "refs": { - "CreateImageRequest$BlockDeviceMappings": "

The block device mappings. This parameter cannot be used to modify the encryption status of existing volumes or snapshots. To create an AMI with encrypted snapshots, use the CopyImage action.

", + "CreateImageRequest$BlockDeviceMappings": "

The block device mappings.

When using the CreateImage action:

  • You can't change the volume size using the VolumeSize parameter. If you want a different volume size, you must first change the volume size of the source instance.

  • You can't modify the encryption status of existing volumes or snapshots. To create an AMI with volumes or snapshots that have a different encryption status (for example, where the source volume and snapshots are unencrypted, and you want to create an AMI with encrypted volumes or snapshots), use the CopyImage action.

  • The only option that can be changed for existing mappings or snapshots is DeleteOnTermination.

", "RegisterImageRequest$BlockDeviceMappings": "

The block device mapping entries.

If you specify an Amazon EBS volume using the ID of an Amazon EBS snapshot, you can't specify the encryption state of the volume.

If you create an AMI on an Outpost, then all backing snapshots must be on the same Outpost or in the Region of that Outpost. AMIs on an Outpost that include local snapshots can be used to launch instances on the same Outpost only. For more information, Amazon EBS local snapshots on Outposts in the Amazon EC2 User Guide.

", "RunInstancesRequest$BlockDeviceMappings": "

The block device mapping, which defines the EBS volumes and instance store volumes to attach to the instance at launch. For more information, see Block device mappings in the Amazon EC2 User Guide.

" } @@ -1913,6 +1974,7 @@ "AssociateDhcpOptionsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateEnclaveCertificateIamRoleRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateInstanceEventWindowRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "AssociateIpamByoasnRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateIpamResourceDiscoveryRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateNatGatewayAddressRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateRouteTableRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -1920,7 +1982,7 @@ "AssociateTransitGatewayPolicyTableRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateTransitGatewayRouteTableRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AssociateTrunkInterfaceRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "AssociateVpcCidrBlockRequest$AmazonProvidedIpv6CidrBlock": "

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IPv6 addresses, or the size of the CIDR block.

", + "AssociateVpcCidrBlockRequest$AmazonProvidedIpv6CidrBlock": "

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IPv6 addresses or the size of the CIDR block.

", "AttachClassicLinkVpcRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AttachClassicLinkVpcResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", "AttachInternetGatewayRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -1928,7 +1990,7 @@ "AttachVerifiedAccessTrustProviderRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AttachVolumeRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "AttachVpnGatewayRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "AttachmentEnaSrdSpecification$EnaSrdEnabled": "

Indicates whether ENA Express is enabled for the network interface that's attached to the instance.

", + "AttachmentEnaSrdSpecification$EnaSrdEnabled": "

Indicates whether ENA Express is enabled for the network interface.

", "AttachmentEnaSrdUdpSpecification$EnaSrdUdpEnabled": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.

", "AttributeBooleanValue$Value": "

The attribute value. The valid values are true or false.

", "AuthorizationRule$AccessAll": "

Indicates whether the authorization rule grants access to all clients.

", @@ -2058,6 +2120,7 @@ "CreateVerifiedAccessEndpointRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "CreateVerifiedAccessGroupRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "CreateVerifiedAccessInstanceRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "CreateVerifiedAccessInstanceRequest$FIPSEnabled": "

Enable or disable support for Federal Information Processing Standards (FIPS) on the instance.

", "CreateVerifiedAccessTrustProviderRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "CreateVolumeRequest$Encrypted": "

Indicates whether the volume should be encrypted. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon Elastic Compute Cloud User Guide.

Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types.

", "CreateVolumeRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2091,6 +2154,7 @@ "DeleteInstanceEventWindowRequest$ForceDelete": "

Specify true to force delete the event window. Use the force delete parameter if the event window is currently associated with targets.

", "DeleteInternetGatewayRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteIpamPoolRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DeleteIpamPoolRequest$Cascade": "

Enables you to quickly delete an IPAM pool and all resources within that pool, including provisioned CIDRs, allocations, and other pools.

You can only use this option to delete pools in the private scope or pools in the public scope with a source resource. A source resource is a resource used to provision CIDRs to a resource planning pool.

", "DeleteIpamRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteIpamRequest$Cascade": "

Enables you to quickly delete an IPAM, private scopes, pools in private scopes, and any allocations in the pools in private scopes. You cannot delete the IPAM with this option if there is a pool in your public scope. If you use this option, IPAM does the following:

  • Deallocates any CIDRs allocated to VPC resources (such as VPCs) in pools in private scopes.

    No VPC resources are deleted as a result of enabling this option. The CIDR associated with the resource will no longer be allocated from an IPAM pool, but the CIDR itself will remain unchanged.

  • Deprovisions all IPv4 CIDRs provisioned to IPAM pools in private scopes.

  • Deletes all IPAM pools in private scopes.

  • Deletes all non-default private scopes in the IPAM.

  • Deletes the default public and private scopes and the IPAM.

", "DeleteIpamResourceDiscoveryRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2157,6 +2221,7 @@ "DeleteVpnConnectionRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteVpnGatewayRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeprovisionByoipCidrRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DeprovisionIpamByoasnRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeprovisionIpamPoolCidrRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeprovisionPublicIpv4PoolCidrRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeregisterImageRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2175,6 +2240,7 @@ "DescribeAwsNetworkPerformanceMetricSubscriptionsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeBundleTasksRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeByoipCidrsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DescribeCapacityBlockOfferingsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeCapacityReservationFleetsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeCapacityReservationsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeCarrierGatewaysRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2201,6 +2267,7 @@ "DescribeFpgaImagesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeImageAttributeRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeImagesRequest$IncludeDeprecated": "

Specifies whether to include deprecated AMIs.

Default: No deprecated AMIs are included in the response.

If you are the AMI owner, all deprecated AMIs appear in the response regardless of what you specify for this parameter.

", + "DescribeImagesRequest$IncludeDisabled": "

Specifies whether to include disabled AMIs.

Default: No disabled AMIs are included in the response.

", "DescribeImagesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeImportImageTasksRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeImportSnapshotTasksRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2211,10 +2278,12 @@ "DescribeInstanceEventWindowsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeInstanceStatusRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeInstanceStatusRequest$IncludeAllInstances": "

When true, includes the health status for all instances. When false, includes the health status for running instances only.

Default: false

", + "DescribeInstanceTopologyRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeInstanceTypeOfferingsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeInstanceTypesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeInstancesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeInternetGatewaysRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DescribeIpamByoasnRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeIpamPoolsRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeIpamResourceDiscoveriesRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeIpamResourceDiscoveryAssociationsRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2232,6 +2301,7 @@ "DescribeLocalGatewayVirtualInterfaceGroupsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeLocalGatewayVirtualInterfacesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeLocalGatewaysRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DescribeLockedSnapshotsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeManagedPrefixListsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeMovingAddressesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeNatGatewaysRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2323,16 +2393,19 @@ "DisableAwsNetworkPerformanceMetricSubscriptionResult$Output": "

Indicates whether the unsubscribe action was successful.

", "DisableEbsEncryptionByDefaultRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableEbsEncryptionByDefaultResult$EbsEncryptionByDefault": "

The updated status of encryption by default.

", - "DisableFastLaunchRequest$Force": "

Forces the image settings to turn off faster launching for your Windows AMI. This parameter overrides any errors that are encountered while cleaning up resources in your account.

", + "DisableFastLaunchRequest$Force": "

Forces the image settings to turn off Windows fast launch for your Windows AMI. This parameter overrides any errors that are encountered while cleaning up resources in your account.

", "DisableFastLaunchRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableFastSnapshotRestoresRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableImageBlockPublicAccessRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableImageDeprecationRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableImageDeprecationResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "DisableImageRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DisableImageResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", "DisableIpamOrganizationAdminAccountRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableIpamOrganizationAdminAccountResult$Success": "

The result of disabling the IPAM account.

", "DisableSerialConsoleAccessRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableSerialConsoleAccessResult$SerialConsoleAccessEnabled": "

If true, access to the EC2 serial console of all instances is enabled for your account. If false, access to the EC2 serial console of all instances is disabled for your account.

", + "DisableSnapshotBlockPublicAccessRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableTransitGatewayRouteTablePropagationRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableVgwRoutePropagationRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisableVpcClassicLinkDnsSupportResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", @@ -2343,6 +2416,7 @@ "DisassociateEnclaveCertificateIamRoleRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisassociateEnclaveCertificateIamRoleResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", "DisassociateInstanceEventWindowRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DisassociateIpamByoasnRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisassociateIpamResourceDiscoveryRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisassociateNatGatewayAddressRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DisassociateRouteTableRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2360,7 +2434,9 @@ "EbsInstanceBlockDeviceSpecification$DeleteOnTermination": "

Indicates whether the volume is deleted on instance termination.

", "Ec2InstanceConnectEndpoint$PreserveClientIp": "

Indicates whether your client's IP address is preserved as the source. The value is true or false.

  • If true, your client's IP address is used when you connect to a resource.

  • If false, the elastic network interface IP address is used when you connect to a resource.

Default: true

", "EnaSrdSpecification$EnaSrdEnabled": "

Indicates whether ENA Express is enabled for the network interface.

", - "EnaSrdUdpSpecification$EnaSrdUdpEnabled": "

Indicates whether UDP traffic uses ENA Express. To specify this setting, you must first enable ENA Express.

", + "EnaSrdSpecificationRequest$EnaSrdEnabled": "

Specifies whether ENA Express is enabled for the network interface when you launch an instance from your launch template.

", + "EnaSrdUdpSpecification$EnaSrdUdpEnabled": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.

", + "EnaSrdUdpSpecificationRequest$EnaSrdUdpEnabled": "

Indicates whether UDP traffic uses ENA Express for your instance. To ensure that UDP traffic can use ENA Express when you launch an instance, you must also set EnaSrdEnabled in the EnaSrdSpecificationRequest to true in your launch template.

", "EnableAddressTransferRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableAwsNetworkPerformanceMetricSubscriptionRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableAwsNetworkPerformanceMetricSubscriptionResult$Output": "

Indicates whether the subscribe action was successful.

", @@ -2371,12 +2447,15 @@ "EnableImageBlockPublicAccessRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableImageDeprecationRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableImageDeprecationResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "EnableImageRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "EnableImageResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", "EnableIpamOrganizationAdminAccountRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableIpamOrganizationAdminAccountResult$Success": "

The result of enabling the IPAM account.

", "EnableReachabilityAnalyzerOrganizationSharingRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableReachabilityAnalyzerOrganizationSharingResult$ReturnValue": "

Returns true if the request succeeds; otherwise, returns an error.

", "EnableSerialConsoleAccessRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableSerialConsoleAccessResult$SerialConsoleAccessEnabled": "

If true, access to the EC2 serial console of all instances is enabled for your account. If false, access to the EC2 serial console of all instances is disabled for your account.

", + "EnableSnapshotBlockPublicAccessRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableTransitGatewayRouteTablePropagationRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableVgwRoutePropagationRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "EnableVolumeIORequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2414,6 +2493,7 @@ "GetInstanceUefiDataRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetIpamAddressHistoryRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetIpamDiscoveredAccountsRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "GetIpamDiscoveredPublicAddressesRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetIpamDiscoveredResourceCidrsRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetIpamPoolAllocationsRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetIpamPoolCidrsRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2426,8 +2506,10 @@ "GetPasswordDataRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetReservedInstancesExchangeQuoteRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetReservedInstancesExchangeQuoteResult$IsValidExchange": "

If true, the exchange is valid. If false, the exchange cannot be completed.

", + "GetSecurityGroupsForVpcRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetSerialConsoleAccessStatusRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetSerialConsoleAccessStatusResult$SerialConsoleAccessEnabled": "

If true, access to the EC2 serial console of all instances is enabled for your account. If false, access to the EC2 serial console of all instances is disabled for your account.

", + "GetSnapshotBlockPublicAccessStateRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetSpotPlacementScoresRequest$SingleAvailabilityZone": "

Specify true so that the response returns a list of scored Availability Zones. Otherwise, the response returns a list of scored Regions.

A list of scored Availability Zones is useful if you want to launch all of your Spot capacity into a single Availability Zone.

", "GetSpotPlacementScoresRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetSubnetCidrReservationsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2446,7 +2528,7 @@ "GetVpnConnectionDeviceTypesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "GetVpnTunnelReplacementStatusRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "HibernationOptions$Configured": "

If true, your instance is enabled for hibernation; otherwise, it is not enabled for hibernation.

", - "HibernationOptionsRequest$Configured": "

Set to true to enable your instance for hibernation.

Default: false

", + "HibernationOptionsRequest$Configured": "

Set to true to enable your instance for hibernation.

For Spot Instances, if you set Configured to true, either omit the InstanceInterruptionBehavior parameter (for SpotMarketOptions ), or set it to hibernate. When Configured is true:

  • If you omit InstanceInterruptionBehavior, it defaults to hibernate.

  • If you set InstanceInterruptionBehavior to a value other than hibernate, you'll get an error.

Default: false

", "Host$MemberOfServiceLinkedResourceGroup": "

Indicates whether the Dedicated Host is in a host resource group. If memberOfServiceLinkedResourceGroup is true, the host is in a host resource group; otherwise, it is not.

", "IdFormat$UseLongIds": "

Indicates whether longer IDs (17-character IDs) are enabled for the resource.

", "Image$Public": "

Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.

", @@ -2466,6 +2548,8 @@ "Instance$EbsOptimized": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

", "Instance$EnaSupport": "

Specifies whether enhanced networking with ENA is enabled.

", "Instance$SourceDestCheck": "

Indicates whether source/destination checking is enabled.

", + "InstanceAttachmentEnaSrdSpecification$EnaSrdEnabled": "

Indicates whether ENA Express is enabled for the network interface.

", + "InstanceAttachmentEnaSrdUdpSpecification$EnaSrdUdpEnabled": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.

", "InstanceIpv6Address$IsPrimaryIpv6": "

Determines if an IPv6 address associated with a network interface is the primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information, see RunInstances.

", "InstanceNetworkInterface$SourceDestCheck": "

Indicates whether source/destination checking is enabled.

", "InstanceNetworkInterfaceAttachment$DeleteOnTermination": "

Indicates whether the network interface is deleted when the instance is terminated.

", @@ -2488,6 +2572,8 @@ "LaunchTemplateEbsBlockDevice$DeleteOnTermination": "

Indicates whether the EBS volume is deleted on instance termination.

", "LaunchTemplateEbsBlockDeviceRequest$Encrypted": "

Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.

", "LaunchTemplateEbsBlockDeviceRequest$DeleteOnTermination": "

Indicates whether the EBS volume is deleted on instance termination.

", + "LaunchTemplateEnaSrdSpecification$EnaSrdEnabled": "

Indicates whether ENA Express is enabled for the network interface.

", + "LaunchTemplateEnaSrdUdpSpecification$EnaSrdUdpEnabled": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.

", "LaunchTemplateEnclaveOptions$Enabled": "

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro Enclaves.

", "LaunchTemplateEnclaveOptionsRequest$Enabled": "

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true.

", "LaunchTemplateHibernationOptions$Configured": "

If this parameter is set to true, the instance is enabled for hibernation; otherwise, it is not enabled for hibernation.

", @@ -2509,6 +2595,7 @@ "LaunchTemplatesMonitoringRequest$Enabled": "

Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.

", "ListImagesInRecycleBinRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ListSnapshotsInRecycleBinRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "LockSnapshotRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ModifyAddressAttributeRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ModifyAvailabilityZoneGroupRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ModifyAvailabilityZoneGroupResult$Return": "

Is true if the request succeeds, and an error otherwise.

", @@ -2602,7 +2689,7 @@ "ModifyVpnConnectionRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ModifyVpnTunnelCertificateRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ModifyVpnTunnelOptionsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "ModifyVpnTunnelOptionsRequest$SkipTunnelReplacement": "

Choose whether or not to trigger immediate tunnel replacement.

Valid values: True | False

", + "ModifyVpnTunnelOptionsRequest$SkipTunnelReplacement": "

Choose whether or not to trigger immediate tunnel replacement. This is only applicable when turning on or off EnableTunnelLifecycleControl.

Valid values: True | False

", "ModifyVpnTunnelOptionsSpecification$EnableTunnelLifecycleControl": "

Turn on or off tunnel endpoint lifecycle control feature.

", "MonitorInstancesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "MoveAddressToVpcRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2640,8 +2727,10 @@ "ProvisionByoipCidrRequest$PubliclyAdvertisable": "

(IPv6 only) Indicate whether the address range will be publicly advertised to the internet.

Default: true

", "ProvisionByoipCidrRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ProvisionByoipCidrRequest$MultiRegion": "

Reserved.

", + "ProvisionIpamByoasnRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ProvisionIpamPoolCidrRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "ProvisionPublicIpv4PoolCidrRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "PurchaseCapacityBlockRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "PurchaseReservedInstancesOfferingRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "PurchaseScheduledInstancesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "RebootInstancesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2769,19 +2858,23 @@ "TransitGatewayRouteTable$DefaultPropagationRouteTable": "

Indicates whether this is the default propagation route table for the transit gateway.

", "TunnelOption$EnableTunnelLifecycleControl": "

Status of tunnel endpoint lifecycle control feature.

", "UnassignPrivateNatGatewayAddressRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "UnlockSnapshotRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "UnmonitorInstancesRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "UpdateSecurityGroupRuleDescriptionsEgressRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "UpdateSecurityGroupRuleDescriptionsEgressResult$Return": "

Returns true if the request succeeds; otherwise, returns an error.

", "UpdateSecurityGroupRuleDescriptionsIngressRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "UpdateSecurityGroupRuleDescriptionsIngressResult$Return": "

Returns true if the request succeeds; otherwise, returns an error.

", + "VerifiedAccessInstance$FipsEnabled": "

Indicates whether support for Federal Information Processing Standards (FIPS) is enabled on the instance.

", "VerifiedAccessLogCloudWatchLogsDestination$Enabled": "

Indicates whether logging is enabled.

", "VerifiedAccessLogCloudWatchLogsDestinationOptions$Enabled": "

Indicates whether logging is enabled.

", "VerifiedAccessLogKinesisDataFirehoseDestination$Enabled": "

Indicates whether logging is enabled.

", "VerifiedAccessLogKinesisDataFirehoseDestinationOptions$Enabled": "

Indicates whether logging is enabled.

", - "VerifiedAccessLogOptions$IncludeTrustContext": "

Include trust data sent by trust providers into the logs.

", + "VerifiedAccessLogOptions$IncludeTrustContext": "

Indicates whether to include trust data sent by trust providers in the logs.

", "VerifiedAccessLogS3Destination$Enabled": "

Indicates whether logging is enabled.

", "VerifiedAccessLogS3DestinationOptions$Enabled": "

Indicates whether logging is enabled.

", - "VerifiedAccessLogs$IncludeTrustContext": "

Describes current setting for including trust data into the logs.

", + "VerifiedAccessLogs$IncludeTrustContext": "

Indicates whether trust data is included in the logs.

", + "VerifiedAccessSseSpecificationRequest$CustomerManagedKeyEnabled": "

Enable or disable the use of customer managed KMS keys for server side encryption.

Valid values: True | False

", + "VerifiedAccessSseSpecificationResponse$CustomerManagedKeyEnabled": "

Indicates whether customer managed KMS keys are in use for server side encryption.

Valid values: True | False

", "Volume$Encrypted": "

Indicates whether the volume is encrypted.

", "Volume$FastRestored": "

Indicates whether the volume was created using fast snapshot restore.

", "Volume$MultiAttachEnabled": "

Indicates whether Amazon EBS Multi-Attach is enabled.

", @@ -2819,7 +2912,7 @@ "base": null, "refs": { "Image$BootMode": "

The boot mode of the image. For more information, see Boot modes in the Amazon EC2 User Guide.

", - "ImportImageRequest$BootMode": "

The boot mode of the virtual machine.

", + "ImportImageRequest$BootMode": "

The boot mode of the virtual machine.

The uefi-preferred boot mode isn't supported for importing images. For more information, see Boot modes in the VM Import/Export User Guide.

", "ImportImageTask$BootMode": "

The boot mode of the virtual machine.

", "Instance$BootMode": "

The boot mode that was specified by the AMI. If the value is uefi-preferred, the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode parameter is the boot mode that is used to boot the instance at launch or start.

The operating system contained in the AMI must be configured to support the specified boot mode.

For more information, see Boot modes in the Amazon EC2 User Guide.

", "RegisterImageRequest$BootMode": "

The boot mode of the AMI. A value of uefi-preferred indicates that the AMI supports both UEFI and Legacy BIOS.

The operating system contained in the AMI must be configured to support the specified boot mode.

For more information, see Boot modes in the Amazon EC2 User Guide.

" @@ -2894,6 +2987,20 @@ "InstanceTypeInfo$BurstablePerformanceSupported": "

Indicates whether the instance type is a burstable performance T instance type. For more information, see Burstable performance instances.

" } }, + "Byoasn": { + "base": "

The Autonomous System Number (ASN) and BYOIP CIDR association.

", + "refs": { + "ByoasnSet$member": null, + "DeprovisionIpamByoasnResult$Byoasn": "

An ASN and BYOIP CIDR association.

", + "ProvisionIpamByoasnResult$Byoasn": "

An ASN and BYOIP CIDR association.

" + } + }, + "ByoasnSet": { + "base": null, + "refs": { + "DescribeIpamByoasnResult$Byoasns": "

ASN and BYOIP CIDR associations.

" + } + }, "ByoipCidr": { "base": "

Information about an address range that is provisioned for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP).

", "refs": { @@ -3091,11 +3198,24 @@ "CapacityReservation$CapacityAllocations": "

Information about instance capacity usage.

" } }, + "CapacityBlockOffering": { + "base": "

The recommended Capacity Block that fits your search requirements.

", + "refs": { + "CapacityBlockOfferingSet$member": null + } + }, + "CapacityBlockOfferingSet": { + "base": null, + "refs": { + "DescribeCapacityBlockOfferingsResult$CapacityBlockOfferings": "

The recommended Capacity Block offering for the dates specified.

" + } + }, "CapacityReservation": { "base": "

Describes a Capacity Reservation.

", "refs": { "CapacityReservationSet$member": null, - "CreateCapacityReservationResult$CapacityReservation": "

Information about the Capacity Reservation.

" + "CreateCapacityReservationResult$CapacityReservation": "

Information about the Capacity Reservation.

", + "PurchaseCapacityBlockResult$CapacityReservation": "

The Capacity Reservation.

" } }, "CapacityReservationFleet": { @@ -3185,6 +3305,7 @@ "CapacityReservation$InstancePlatform": "

The type of operating system for which the Capacity Reservation reserves capacity.

", "CreateCapacityReservationRequest$InstancePlatform": "

The type of operating system for which to reserve capacity.

", "FleetCapacityReservation$InstancePlatform": "

The type of operating system for which the Capacity Reservation reserves capacity.

", + "PurchaseCapacityBlockRequest$InstancePlatform": "

The type of operating system for which to reserve capacity.

", "ReservationFleetInstanceSpecification$InstancePlatform": "

The type of operating system for which the Capacity Reservation Fleet reserves capacity.

" } }, @@ -3252,10 +3373,17 @@ "CapacityReservationTenancy": { "base": null, "refs": { + "CapacityBlockOffering$Tenancy": "

The tenancy of the Capacity Block.

", "CapacityReservation$Tenancy": "

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

  • default - The Capacity Reservation is created on hardware that is shared with other Amazon Web Services accounts.

  • dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

", "CreateCapacityReservationRequest$Tenancy": "

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

  • default - The Capacity Reservation is created on hardware that is shared with other Amazon Web Services accounts.

  • dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

" } }, + "CapacityReservationType": { + "base": null, + "refs": { + "CapacityReservation$ReservationType": "

The type of Capacity Reservation.

" + } + }, "CarrierGateway": { "base": "

Describes a carrier gateway.

", "refs": { @@ -3438,12 +3566,6 @@ "OidcOptions$ClientSecret": "

The client secret.

" } }, - "ClientVpnAssociationId": { - "base": null, - "refs": { - "DisassociateClientVpnTargetNetworkRequest$AssociationId": "

The ID of the target network association.

" - } - }, "ClientVpnAuthentication": { "base": "

Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication in the Client VPN Administrator Guide.

", "refs": { @@ -3758,6 +3880,33 @@ "ConnectionNotification$ConnectionNotificationType": "

The type of notification.

" } }, + "ConnectionTrackingConfiguration": { + "base": "

A security group connection tracking configuration that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", + "refs": { + "NetworkInterface$ConnectionTrackingConfiguration": "

A security group connection tracking configuration that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" + } + }, + "ConnectionTrackingSpecification": { + "base": "

A security group connection tracking specification that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", + "refs": { + "LaunchTemplateInstanceNetworkInterfaceSpecification$ConnectionTrackingSpecification": "

A security group connection tracking specification that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" + } + }, + "ConnectionTrackingSpecificationRequest": { + "base": "

A security group connection tracking specification request that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", + "refs": { + "CreateNetworkInterfaceRequest$ConnectionTrackingSpecification": "

A connection tracking specification for the network interface.

", + "InstanceNetworkInterfaceSpecification$ConnectionTrackingSpecification": "

A security group connection tracking specification that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", + "LaunchTemplateInstanceNetworkInterfaceSpecificationRequest$ConnectionTrackingSpecification": "

A security group connection tracking specification that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", + "ModifyNetworkInterfaceAttributeRequest$ConnectionTrackingSpecification": "

A connection tracking specification.

" + } + }, + "ConnectionTrackingSpecificationResponse": { + "base": "

A security group connection tracking specification response that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", + "refs": { + "InstanceNetworkInterface$ConnectionTrackingConfiguration": "

A security group connection tracking configuration that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" + } + }, "ConnectivityType": { "base": null, "refs": { @@ -3799,6 +3948,19 @@ "ConversionTask$State": "

The state of the conversion task.

" } }, + "CoolOffPeriodRequestHours": { + "base": null, + "refs": { + "LockSnapshotRequest$CoolOffPeriod": "

The cooling-off period during which you can unlock the snapshot or modify the lock settings after locking the snapshot in compliance mode, in hours. After the cooling-off period expires, you can't unlock or delete the snapshot, decrease the lock duration, or change the lock mode. You can increase the lock duration after the cooling-off period expires.

The cooling-off period is optional when locking a snapshot in compliance mode. If you are locking the snapshot in governance mode, omit this parameter.

To lock the snapshot in compliance mode immediately without a cooling-off period, omit this parameter.

If you are extending the lock duration for a snapshot that is locked in compliance mode after the cooling-off period has expired, omit this parameter. If you specify a cooling-period in a such a request, the request fails.

Allowed values: Min 1, max 72.

" + } + }, + "CoolOffPeriodResponseHours": { + "base": null, + "refs": { + "LockSnapshotResult$CoolOffPeriod": "

The compliance mode cooling-off period, in hours.

", + "LockedSnapshotsInfo$CoolOffPeriod": "

The compliance mode cooling-off period, in hours.

" + } + }, "CopyFpgaImageRequest": { "base": null, "refs": { @@ -3868,6 +4030,12 @@ "CpuManufacturerSet$member": null } }, + "CpuManufacturerName": { + "base": null, + "refs": { + "ProcessorInfo$Manufacturer": "

The manufacturer of the processor.

" + } + }, "CpuManufacturerSet": { "base": null, "refs": { @@ -4977,7 +5145,7 @@ "TransitGatewayRouteTable$CreationTime": "

The creation time.

", "TransitGatewayRouteTableAnnouncement$CreationTime": "

The timestamp when the transit gateway route table announcement was created.

", "TransitGatewayVpcAttachment$CreationTime": "

The creation time.

", - "VgwTelemetry$LastStatusChange": "

The date and time of the last change in status.

", + "VgwTelemetry$LastStatusChange": "

The date and time of the last change in status. This field is updated when changes in IKE (Phase 1), IPSec (Phase 2), or BGP status are detected.

", "Volume$CreateTime": "

The time stamp when volume creation was initiated.

", "VolumeAttachment$AttachTime": "

The time stamp when the attachment initiated.

", "VolumeModification$StartTime": "

The modification start time.

", @@ -5777,6 +5945,16 @@ "refs": { } }, + "DeprovisionIpamByoasnRequest": { + "base": null, + "refs": { + } + }, + "DeprovisionIpamByoasnResult": { + "base": null, + "refs": { + } + }, "DeprovisionIpamPoolCidrRequest": { "base": null, "refs": { @@ -5946,6 +6124,22 @@ "refs": { } }, + "DescribeCapacityBlockOfferingsMaxResults": { + "base": null, + "refs": { + "DescribeCapacityBlockOfferingsRequest$MaxResults": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" + } + }, + "DescribeCapacityBlockOfferingsRequest": { + "base": null, + "refs": { + } + }, + "DescribeCapacityBlockOfferingsResult": { + "base": null, + "refs": { + } + }, "DescribeCapacityReservationFleetsMaxResults": { "base": null, "refs": { @@ -6211,7 +6405,7 @@ } }, "DescribeFastLaunchImagesSuccessItem": { - "base": "

Describe details about a fast-launch enabled Windows image that meets the requested criteria. Criteria are defined by the DescribeFastLaunchImages action filters.

", + "base": "

Describe details about a Windows image with Windows fast launch enabled that meets the requested criteria. Criteria are defined by the DescribeFastLaunchImages action filters.

", "refs": { "DescribeFastLaunchImagesSuccessSet$member": null } @@ -6508,6 +6702,34 @@ "refs": { } }, + "DescribeInstanceTopologyGroupNameSet": { + "base": null, + "refs": { + "DescribeInstanceTopologyRequest$GroupNames": "

The name of the placement group that each instance is in.

Constraints: Maximum 100 explicitly specified placement group names.

" + } + }, + "DescribeInstanceTopologyInstanceIdSet": { + "base": null, + "refs": { + "DescribeInstanceTopologyRequest$InstanceIds": "

The instance IDs.

Default: Describes all your instances.

Constraints: Maximum 100 explicitly specified instance IDs.

" + } + }, + "DescribeInstanceTopologyMaxResults": { + "base": null, + "refs": { + "DescribeInstanceTopologyRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You can't specify this parameter and the instance IDs parameter in the same request.

Default: 20

" + } + }, + "DescribeInstanceTopologyRequest": { + "base": null, + "refs": { + } + }, + "DescribeInstanceTopologyResult": { + "base": null, + "refs": { + } + }, "DescribeInstanceTypeOfferingsRequest": { "base": null, "refs": { @@ -6554,6 +6776,22 @@ "refs": { } }, + "DescribeIpamByoasnMaxResults": { + "base": null, + "refs": { + "DescribeIpamByoasnRequest$MaxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "DescribeIpamByoasnRequest": { + "base": null, + "refs": { + } + }, + "DescribeIpamByoasnResult": { + "base": null, + "refs": { + } + }, "DescribeIpamPoolsRequest": { "base": null, "refs": { @@ -6710,6 +6948,22 @@ "refs": { } }, + "DescribeLockedSnapshotsMaxResults": { + "base": null, + "refs": { + "DescribeLockedSnapshotsRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

" + } + }, + "DescribeLockedSnapshotsRequest": { + "base": null, + "refs": { + } + }, + "DescribeLockedSnapshotsResult": { + "base": null, + "refs": { + } + }, "DescribeManagedPrefixListsRequest": { "base": null, "refs": { @@ -7184,7 +7438,7 @@ "DescribeStoreImageTasksRequestMaxResults": { "base": null, "refs": { - "DescribeStoreImageTasksRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You cannot specify this parameter and the ImageIDs parameter in the same call.

" + "DescribeStoreImageTasksRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You cannot specify this parameter and the ImageIds parameter in the same call.

" } }, "DescribeStoreImageTasksResult": { @@ -7887,6 +8141,16 @@ "refs": { } }, + "DisableImageRequest": { + "base": null, + "refs": { + } + }, + "DisableImageResult": { + "base": null, + "refs": { + } + }, "DisableIpamOrganizationAdminAccountRequest": { "base": null, "refs": { @@ -7907,6 +8171,16 @@ "refs": { } }, + "DisableSnapshotBlockPublicAccessRequest": { + "base": null, + "refs": { + } + }, + "DisableSnapshotBlockPublicAccessResult": { + "base": null, + "refs": { + } + }, "DisableTransitGatewayRouteTablePropagationRequest": { "base": null, "refs": { @@ -7987,6 +8261,16 @@ "refs": { } }, + "DisassociateIpamByoasnRequest": { + "base": null, + "refs": { + } + }, + "DisassociateIpamByoasnResult": { + "base": null, + "refs": { + } + }, "DisassociateIpamResourceDiscoveryRequest": { "base": null, "refs": { @@ -8518,6 +8802,13 @@ "ModifyNetworkInterfaceAttributeRequest$EnaSrdSpecification": "

Updates the ENA Express configuration for the network interface that’s attached to the instance.

" } }, + "EnaSrdSpecificationRequest": { + "base": "

Launch instances with ENA Express settings configured from your launch template.

", + "refs": { + "InstanceNetworkInterfaceSpecification$EnaSrdSpecification": "

Specifies the ENA Express settings for the network interface that's attached to the instance.

", + "LaunchTemplateInstanceNetworkInterfaceSpecificationRequest$EnaSrdSpecification": "

Configure ENA Express settings for your launch template.

" + } + }, "EnaSrdSupported": { "base": null, "refs": { @@ -8525,11 +8816,17 @@ } }, "EnaSrdUdpSpecification": { - "base": "

ENA Express is compatible with both TCP and UDP transport protocols. When it’s enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

", + "base": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

", "refs": { "EnaSrdSpecification$EnaSrdUdpSpecification": "

Configures ENA Express for UDP network traffic.

" } }, + "EnaSrdUdpSpecificationRequest": { + "base": "

Configures ENA Express for UDP network traffic from your launch template.

", + "refs": { + "EnaSrdSpecificationRequest$EnaSrdUdpSpecification": "

Contains ENA Express settings for UDP network traffic in your launch template.

" + } + }, "EnaSupport": { "base": null, "refs": { @@ -8648,6 +8945,16 @@ "refs": { } }, + "EnableImageRequest": { + "base": null, + "refs": { + } + }, + "EnableImageResult": { + "base": null, + "refs": { + } + }, "EnableIpamOrganizationAdminAccountRequest": { "base": null, "refs": { @@ -8678,6 +8985,16 @@ "refs": { } }, + "EnableSnapshotBlockPublicAccessRequest": { + "base": null, + "refs": { + } + }, + "EnableSnapshotBlockPublicAccessResult": { + "base": null, + "refs": { + } + }, "EnableTransitGatewayRouteTablePropagationRequest": { "base": null, "refs": { @@ -8952,7 +9269,7 @@ "ExportVmTaskId": { "base": null, "refs": { - "CancelExportTaskRequest$ExportTaskId": "

The ID of the export task. This is the ID returned by CreateInstanceExportTask.

" + "CancelExportTaskRequest$ExportTaskId": "

The ID of the export task. This is the ID returned by the CreateInstanceExportTask and ExportImage operations.

" } }, "FailedCapacityReservationFleetCancellationResult": { @@ -8982,19 +9299,19 @@ "FastLaunchImageIdList": { "base": null, "refs": { - "DescribeFastLaunchImagesRequest$ImageIds": "

Details for one or more Windows AMI image IDs.

" + "DescribeFastLaunchImagesRequest$ImageIds": "

Specify one or more Windows AMI image IDs for the request.

" } }, "FastLaunchLaunchTemplateSpecificationRequest": { - "base": "

Request to create a launch template for a fast-launch enabled Windows AMI.

Note - You can specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

", + "base": "

Request to create a launch template for a Windows fast launch enabled AMI.

Note - You can specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

", "refs": { "EnableFastLaunchRequest$LaunchTemplate": "

The launch template to use when launching Windows instances from pre-provisioned snapshots. Launch template parameters can include either the name or ID of the launch template, but not both.

" } }, "FastLaunchLaunchTemplateSpecificationResponse": { - "base": "

Identifies the launch template to use for faster launching of the Windows AMI.

", + "base": "

Identifies the launch template that the AMI uses for Windows fast launch.

", "refs": { - "DescribeFastLaunchImagesSuccessItem$LaunchTemplate": "

The launch template that the fast-launch enabled Windows AMI uses when it launches Windows instances from pre-provisioned snapshots.

", + "DescribeFastLaunchImagesSuccessItem$LaunchTemplate": "

The launch template that the Windows fast launch enabled AMI uses when it launches Windows instances from pre-provisioned snapshots.

", "DisableFastLaunchResult$LaunchTemplate": "

The launch template that was used to launch Windows instances from pre-provisioned snapshots.

", "EnableFastLaunchResult$LaunchTemplate": "

The launch template that is used when launching Windows instances from pre-provisioned snapshots.

" } @@ -9002,31 +9319,31 @@ "FastLaunchResourceType": { "base": null, "refs": { - "DescribeFastLaunchImagesSuccessItem$ResourceType": "

The resource type that is used for pre-provisioning the Windows AMI. Supported values include: snapshot.

", - "DisableFastLaunchResult$ResourceType": "

The pre-provisioning resource type that must be cleaned after turning off faster launching for the Windows AMI. Supported values include: snapshot.

", - "EnableFastLaunchResult$ResourceType": "

The type of resource that was defined for pre-provisioning the Windows AMI for faster launching.

" + "DescribeFastLaunchImagesSuccessItem$ResourceType": "

The resource type that Amazon EC2 uses for pre-provisioning the Windows AMI. Supported values include: snapshot.

", + "DisableFastLaunchResult$ResourceType": "

The pre-provisioning resource type that must be cleaned after turning off Windows fast launch for the Windows AMI. Supported values include: snapshot.

", + "EnableFastLaunchResult$ResourceType": "

The type of resource that was defined for pre-provisioning the AMI for Windows fast launch.

" } }, "FastLaunchSnapshotConfigurationRequest": { - "base": "

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

", + "base": "

Configuration settings for creating and managing pre-provisioned snapshots for a Windows fast launch enabled AMI.

", "refs": { - "EnableFastLaunchRequest$SnapshotConfiguration": "

Configuration settings for creating and managing the snapshots that are used for pre-provisioning the Windows AMI for faster launching. The associated ResourceType must be snapshot.

" + "EnableFastLaunchRequest$SnapshotConfiguration": "

Configuration settings for creating and managing the snapshots that are used for pre-provisioning the AMI for Windows fast launch. The associated ResourceType must be snapshot.

" } }, "FastLaunchSnapshotConfigurationResponse": { - "base": "

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

", + "base": "

Configuration settings for creating and managing pre-provisioned snapshots for a Windows fast launch enabled Windows AMI.

", "refs": { "DescribeFastLaunchImagesSuccessItem$SnapshotConfiguration": "

A group of parameters that are used for pre-provisioning the associated Windows AMI using snapshots.

", - "DisableFastLaunchResult$SnapshotConfiguration": "

Parameters that were used for faster launching for the Windows AMI before faster launching was turned off. This informs the clean-up process.

", + "DisableFastLaunchResult$SnapshotConfiguration": "

Parameters that were used for Windows fast launch for the Windows AMI before Windows fast launch was disabled. This informs the clean-up process.

", "EnableFastLaunchResult$SnapshotConfiguration": "

Settings to create and manage the pre-provisioned snapshots that Amazon EC2 uses for faster launches from the Windows AMI. This property is returned when the associated resourceType is snapshot.

" } }, "FastLaunchStateCode": { "base": null, "refs": { - "DescribeFastLaunchImagesSuccessItem$State": "

The current state of faster launching for the specified Windows AMI.

", - "DisableFastLaunchResult$State": "

The current state of faster launching for the specified Windows AMI.

", - "EnableFastLaunchResult$State": "

The current state of faster launching for the specified Windows AMI.

" + "DescribeFastLaunchImagesSuccessItem$State": "

The current state of Windows fast launch for the specified Windows AMI.

", + "DisableFastLaunchResult$State": "

The current state of Windows fast launch for the specified Windows AMI.

", + "EnableFastLaunchResult$State": "

The current state of Windows fast launch for the specified AMI.

" } }, "FastSnapshotRestoreStateCode": { @@ -9078,7 +9395,7 @@ "DescribeElasticGpusRequest$Filters": "

The filters.

  • availability-zone - The Availability Zone in which the Elastic Graphics accelerator resides.

  • elastic-gpu-health - The status of the Elastic Graphics accelerator (OK | IMPAIRED).

  • elastic-gpu-state - The state of the Elastic Graphics accelerator (ATTACHED).

  • elastic-gpu-type - The type of Elastic Graphics accelerator; for example, eg1.medium.

  • instance-id - The ID of the instance to which the Elastic Graphics accelerator is associated.

", "DescribeExportImageTasksRequest$Filters": "

Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.

", "DescribeExportTasksRequest$Filters": "

the filters for the export tasks.

", - "DescribeFastLaunchImagesRequest$Filters": "

Use the following filters to streamline results.

  • resource-type - The resource type for pre-provisioning.

  • launch-template - The launch template that is associated with the pre-provisioned Windows AMI.

  • owner-id - The owner ID for the pre-provisioning resource.

  • state - The current state of fast launching for the Windows AMI.

", + "DescribeFastLaunchImagesRequest$Filters": "

Use the following filters to streamline results.

  • resource-type - The resource type for pre-provisioning.

  • owner-id - The owner ID for the pre-provisioning resource.

  • state - The current state of fast launching for the Windows AMI.

", "DescribeFastSnapshotRestoresRequest$Filters": "

The filters. The possible values are:

  • availability-zone: The Availability Zone of the snapshot.

  • owner-id: The ID of the Amazon Web Services account that enabled fast snapshot restore on the snapshot.

  • snapshot-id: The ID of the snapshot.

  • state: The state of fast snapshot restores for the snapshot (enabling | optimizing | enabled | disabling | disabled).

", "DescribeFleetInstancesRequest$Filters": "

The filters.

  • instance-type - The instance type.

", "DescribeFleetsRequest$Filters": "

The filters.

  • activity-status - The progress of the EC2 Fleet ( error | pending-fulfillment | pending-termination | fulfilled).

  • excess-capacity-termination-policy - Indicates whether to terminate running instances if the target capacity is decreased below the current EC2 Fleet size (true | false).

  • fleet-state - The state of the EC2 Fleet (submitted | active | deleted | failed | deleted-running | deleted-terminating | modifying).

  • replace-unhealthy-instances - Indicates whether EC2 Fleet should replace unhealthy instances (true | false).

  • type - The type of request (instant | request | maintain).

", @@ -9088,16 +9405,17 @@ "DescribeHostReservationsRequest$Filter": "

The filters.

  • instance-family - The instance family (for example, m4).

  • payment-option - The payment option (NoUpfront | PartialUpfront | AllUpfront).

  • state - The state of the reservation (payment-pending | payment-failed | active | retired).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", "DescribeHostsRequest$Filter": "

The filters.

  • auto-placement - Whether auto-placement is enabled or disabled (on | off).

  • availability-zone - The Availability Zone of the host.

  • client-token - The idempotency token that you provided when you allocated the host.

  • host-reservation-id - The ID of the reservation assigned to this host.

  • instance-type - The instance type size that the Dedicated Host is configured to support.

  • state - The allocation state of the Dedicated Host (available | under-assessment | permanent-failure | released | released-permanent-failure).

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", "DescribeIamInstanceProfileAssociationsRequest$Filters": "

The filters.

  • instance-id - The ID of the instance.

  • state - The state of the association (associating | associated | disassociating).

", - "DescribeImagesRequest$Filters": "

The filters.

  • architecture - The image architecture (i386 | x86_64 | arm64 | x86_64_mac | arm64_mac).

  • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

  • block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh).

  • block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

  • block-device-mapping.volume-size - The volume size of the Amazon EBS volume, in GiB.

  • block-device-mapping.volume-type - The volume type of the Amazon EBS volume (io1 | io2 | gp2 | gp3 | sc1 | st1 | standard).

  • block-device-mapping.encrypted - A Boolean that indicates whether the Amazon EBS volume is encrypted.

  • creation-date - The time when the image was created, in the ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. You can use a wildcard (*), for example, 2021-09-29T*, which matches an entire day.

  • description - The description of the image (provided during image creation).

  • ena-support - A Boolean that indicates whether enhanced networking with ENA is enabled.

  • hypervisor - The hypervisor type (ovm | xen).

  • image-id - The ID of the image.

  • image-type - The image type (machine | kernel | ramdisk).

  • is-public - A Boolean that indicates whether the image is public.

  • kernel-id - The kernel ID.

  • manifest-location - The location of the image manifest.

  • name - The name of the AMI (provided during image creation).

  • owner-alias - The owner alias (amazon | aws-marketplace). The valid aliases are defined in an Amazon-maintained list. This is not the Amazon Web Services account alias that can be set using the IAM console. We recommend that you use the Owner request parameter instead of this filter.

  • owner-id - The Amazon Web Services account ID of the owner. We recommend that you use the Owner request parameter instead of this filter.

  • platform - The platform. The only supported value is windows.

  • product-code - The product code.

  • product-code.type - The type of the product code (marketplace).

  • ramdisk-id - The RAM disk ID.

  • root-device-name - The device name of the root device volume (for example, /dev/sda1).

  • root-device-type - The type of the root device volume (ebs | instance-store).

  • state - The state of the image (available | pending | failed).

  • state-reason-code - The reason code for the state change.

  • state-reason-message - The message for the state change.

  • sriov-net-support - A value of simple indicates that enhanced networking with the Intel 82599 VF interface is enabled.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • virtualization-type - The virtualization type (paravirtual | hvm).

", + "DescribeImagesRequest$Filters": "

The filters.

  • architecture - The image architecture (i386 | x86_64 | arm64 | x86_64_mac | arm64_mac).

  • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

  • block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh).

  • block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

  • block-device-mapping.volume-size - The volume size of the Amazon EBS volume, in GiB.

  • block-device-mapping.volume-type - The volume type of the Amazon EBS volume (io1 | io2 | gp2 | gp3 | sc1 | st1 | standard).

  • block-device-mapping.encrypted - A Boolean that indicates whether the Amazon EBS volume is encrypted.

  • creation-date - The time when the image was created, in the ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. You can use a wildcard (*), for example, 2021-09-29T*, which matches an entire day.

  • description - The description of the image (provided during image creation).

  • ena-support - A Boolean that indicates whether enhanced networking with ENA is enabled.

  • hypervisor - The hypervisor type (ovm | xen).

  • image-id - The ID of the image.

  • image-type - The image type (machine | kernel | ramdisk).

  • is-public - A Boolean that indicates whether the image is public.

  • kernel-id - The kernel ID.

  • manifest-location - The location of the image manifest.

  • name - The name of the AMI (provided during image creation).

  • owner-alias - The owner alias (amazon | aws-marketplace). The valid aliases are defined in an Amazon-maintained list. This is not the Amazon Web Services account alias that can be set using the IAM console. We recommend that you use the Owner request parameter instead of this filter.

  • owner-id - The Amazon Web Services account ID of the owner. We recommend that you use the Owner request parameter instead of this filter.

  • platform - The platform. The only supported value is windows.

  • product-code - The product code.

  • product-code.type - The type of the product code (marketplace).

  • ramdisk-id - The RAM disk ID.

  • root-device-name - The device name of the root device volume (for example, /dev/sda1).

  • root-device-type - The type of the root device volume (ebs | instance-store).

  • source-instance-id - The ID of the instance that the AMI was created from if the AMI was created using CreateImage. This filter is applicable only if the AMI was created using CreateImage.

  • state - The state of the image (available | pending | failed).

  • state-reason-code - The reason code for the state change.

  • state-reason-message - The message for the state change.

  • sriov-net-support - A value of simple indicates that enhanced networking with the Intel 82599 VF interface is enabled.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • virtualization-type - The virtualization type (paravirtual | hvm).

", "DescribeImportImageTasksRequest$Filters": "

Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.

", "DescribeImportSnapshotTasksRequest$Filters": "

The filters.

", "DescribeInstanceConnectEndpointsRequest$Filters": "

One or more filters.

  • instance-connect-endpoint-id - The ID of the EC2 Instance Connect Endpoint.

  • state - The state of the EC2 Instance Connect Endpoint (create-in-progress | create-complete | create-failed | delete-in-progress | delete-complete | delete-failed).

  • subnet-id - The ID of the subnet in which the EC2 Instance Connect Endpoint was created.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • tag-value - The value of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific value, regardless of tag key.

  • vpc-id - The ID of the VPC in which the EC2 Instance Connect Endpoint was created.

", "DescribeInstanceCreditSpecificationsRequest$Filters": "

The filters.

  • instance-id - The ID of the instance.

", "DescribeInstanceEventWindowsRequest$Filters": "

One or more filters.

  • dedicated-host-id - The event windows associated with the specified Dedicated Host ID.

  • event-window-name - The event windows associated with the specified names.

  • instance-id - The event windows associated with the specified instance ID.

  • instance-tag - The event windows associated with the specified tag and value.

  • instance-tag-key - The event windows associated with the specified tag key, regardless of the value.

  • instance-tag-value - The event windows associated with the specified tag value, regardless of the key.

  • tag:<key> - The key/value combination of a tag assigned to the event window. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value CMX, specify tag:Owner for the filter name and CMX for the filter value.

  • tag-key - The key of a tag assigned to the event window. Use this filter to find all event windows that have a tag with a specific key, regardless of the tag value.

  • tag-value - The value of a tag assigned to the event window. Use this filter to find all event windows that have a tag with a specific value, regardless of the tag key.

", "DescribeInstanceStatusRequest$Filters": "

The filters.

  • availability-zone - The Availability Zone of the instance.

  • event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

  • event.description - A description of the event.

  • event.instance-event-id - The ID of the event whose date and time you are modifying.

  • event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

  • event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

  • event.not-before-deadline - The deadline for starting the event (for example, 2014-09-15T17:15:20.000Z).

  • instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

  • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

  • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

  • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

  • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

  • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

", + "DescribeInstanceTopologyRequest$Filters": "

The filters.

  • availability-zone - The name of the Availability Zone (for example, us-west-2a) or Local Zone (for example, us-west-2-lax-1b) that the instance is in.

  • instance-type - The instance type (for example, p4d.24xlarge) or instance family (for example, p4d*). You can use the * wildcard to match zero or more characters, or the ? wildcard to match zero or one character.

  • zone-id - The ID of the Availability Zone (for example, usw2-az2) or Local Zone (for example, usw2-lax1-az1) that the instance is in.

", "DescribeInstanceTypeOfferingsRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

  • location - This depends on the location type. For example, if the location type is region (default), the location is the Region code (for example, us-east-2.)

  • instance-type - The instance type. For example, c5.2xlarge.

", "DescribeInstanceTypesRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

  • auto-recovery-supported - Indicates whether Amazon CloudWatch action based recovery is supported (true | false).

  • bare-metal - Indicates whether it is a bare metal instance type (true | false).

  • burstable-performance-supported - Indicates whether the instance type is a burstable performance T instance type (true | false).

  • current-generation - Indicates whether this instance type is the latest generation instance type of an instance family (true | false).

  • ebs-info.ebs-optimized-info.baseline-bandwidth-in-mbps - The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.

  • ebs-info.ebs-optimized-info.baseline-iops - The baseline input/output storage operations per second for an EBS-optimized instance type.

  • ebs-info.ebs-optimized-info.baseline-throughput-in-mbps - The baseline throughput performance for an EBS-optimized instance type, in MB/s.

  • ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps - The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.

  • ebs-info.ebs-optimized-info.maximum-iops - The maximum input/output storage operations per second for an EBS-optimized instance type.

  • ebs-info.ebs-optimized-info.maximum-throughput-in-mbps - The maximum throughput performance for an EBS-optimized instance type, in MB/s.

  • ebs-info.ebs-optimized-support - Indicates whether the instance type is EBS-optimized (supported | unsupported | default).

  • ebs-info.encryption-support - Indicates whether EBS encryption is supported (supported | unsupported).

  • ebs-info.nvme-support - Indicates whether non-volatile memory express (NVMe) is supported for EBS volumes (required | supported | unsupported).

  • free-tier-eligible - Indicates whether the instance type is eligible to use in the free tier (true | false).

  • hibernation-supported - Indicates whether On-Demand hibernation is supported (true | false).

  • hypervisor - The hypervisor (nitro | xen).

  • instance-storage-info.disk.count - The number of local disks.

  • instance-storage-info.disk.size-in-gb - The storage size of each instance storage disk, in GB.

  • instance-storage-info.disk.type - The storage technology for the local instance storage disks (hdd | ssd).

  • instance-storage-info.encryption-support - Indicates whether data is encrypted at rest (required | supported | unsupported).

  • instance-storage-info.nvme-support - Indicates whether non-volatile memory express (NVMe) is supported for instance store (required | supported | unsupported).

  • instance-storage-info.total-size-in-gb - The total amount of storage available from all local instance storage, in GB.

  • instance-storage-supported - Indicates whether the instance type has local instance storage (true | false).

  • instance-type - The instance type (for example c5.2xlarge or c5*).

  • memory-info.size-in-mib - The memory size.

  • network-info.efa-info.maximum-efa-interfaces - The maximum number of Elastic Fabric Adapters (EFAs) per instance.

  • network-info.efa-supported - Indicates whether the instance type supports Elastic Fabric Adapter (EFA) (true | false).

  • network-info.ena-support - Indicates whether Elastic Network Adapter (ENA) is supported or required (required | supported | unsupported).

  • network-info.encryption-in-transit-supported - Indicates whether the instance type automatically encrypts in-transit traffic between instances (true | false).

  • network-info.ipv4-addresses-per-interface - The maximum number of private IPv4 addresses per network interface.

  • network-info.ipv6-addresses-per-interface - The maximum number of private IPv6 addresses per network interface.

  • network-info.ipv6-supported - Indicates whether the instance type supports IPv6 (true | false).

  • network-info.maximum-network-cards - The maximum number of network cards per instance.

  • network-info.maximum-network-interfaces - The maximum number of network interfaces per instance.

  • network-info.network-performance - The network performance (for example, \"25 Gigabit\").

  • nitro-enclaves-support - Indicates whether Nitro Enclaves is supported (supported | unsupported).

  • nitro-tpm-support - Indicates whether NitroTPM is supported (supported | unsupported).

  • nitro-tpm-info.supported-versions - The supported NitroTPM version (2.0).

  • processor-info.supported-architecture - The CPU architecture (arm64 | i386 | x86_64).

  • processor-info.sustained-clock-speed-in-ghz - The CPU clock speed, in GHz.

  • processor-info.supported-features - The supported CPU features (amd-sev-snp).

  • supported-boot-mode - The boot mode (legacy-bios | uefi).

  • supported-root-device-type - The root device type (ebs | instance-store).

  • supported-usage-class - The usage class (on-demand | spot).

  • supported-virtualization-type - The virtualization type (hvm | paravirtual).

  • vcpu-info.default-cores - The default number of cores for the instance type.

  • vcpu-info.default-threads-per-core - The default number of threads per core for the instance type.

  • vcpu-info.default-vcpus - The default number of vCPUs for the instance type.

  • vcpu-info.valid-cores - The number of cores that can be configured for the instance type.

  • vcpu-info.valid-threads-per-core - The number of threads per core that can be configured for the instance type. For example, \"1\" or \"1,2\".

", - "DescribeInstancesRequest$Filters": "

The filters.

  • affinity - The affinity setting for an instance running on a Dedicated Host (default | host).

  • architecture - The instance architecture (i386 | x86_64 | arm64).

  • availability-zone - The Availability Zone of the instance.

  • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2022-09-15T17:15:20.000Z.

  • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

  • block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh).

  • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

  • block-device-mapping.volume-id - The volume ID of the EBS volume.

  • boot-mode - The boot mode that was specified by the AMI (legacy-bios | uefi | uefi-preferred).

  • capacity-reservation-id - The ID of the Capacity Reservation into which the instance was launched.

  • capacity-reservation-specification.capacity-reservation-preference - The instance's Capacity Reservation preference (open | none).

  • capacity-reservation-specification.capacity-reservation-target.capacity-reservation-id - The ID of the targeted Capacity Reservation.

  • capacity-reservation-specification.capacity-reservation-target.capacity-reservation-resource-group-arn - The ARN of the targeted Capacity Reservation group.

  • client-token - The idempotency token you provided when you launched the instance.

  • current-instance-boot-mode - The boot mode that is used to launch the instance at launch or start (legacy-bios | uefi).

  • dns-name - The public DNS name of the instance.

  • ebs-optimized - A Boolean that indicates whether the instance is optimized for Amazon EBS I/O.

  • ena-support - A Boolean that indicates whether the instance is enabled for enhanced networking with ENA.

  • enclave-options.enabled - A Boolean that indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

  • hibernation-options.configured - A Boolean that indicates whether the instance is enabled for hibernation. A value of true means that the instance is enabled for hibernation.

  • host-id - The ID of the Dedicated Host on which the instance is running, if applicable.

  • hypervisor - The hypervisor type of the instance (ovm | xen). The value xen is used for both Xen and Nitro hypervisors.

  • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

  • iam-instance-profile.id - The instance profile associated with the instance. Specified as an ID.

  • iam-instance-profile.name - The instance profile associated with the instance. Specified as an name.

  • image-id - The ID of the image used to launch the instance.

  • instance-id - The ID of the instance.

  • instance-lifecycle - Indicates whether this is a Spot Instance or a Scheduled Instance (spot | scheduled).

  • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

  • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

  • instance-type - The type of instance (for example, t2.micro).

  • instance.group-id - The ID of the security group for the instance.

  • instance.group-name - The name of the security group for the instance.

  • ip-address - The public IPv4 address of the instance.

  • ipv6-address - The IPv6 address of the instance.

  • kernel-id - The kernel ID.

  • key-name - The name of the key pair used when the instance was launched.

  • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

  • launch-time - The time when the instance was launched, in the ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. You can use a wildcard (*), for example, 2021-09-29T*, which matches an entire day.

  • license-pool -

  • maintenance-options.auto-recovery - The current automatic recovery behavior of the instance (disabled | default).

  • metadata-options.http-endpoint - The status of access to the HTTP metadata endpoint on your instance (enabled | disabled)

  • metadata-options.http-protocol-ipv4 - Indicates whether the IPv4 endpoint is enabled (disabled | enabled).

  • metadata-options.http-protocol-ipv6 - Indicates whether the IPv6 endpoint is enabled (disabled | enabled).

  • metadata-options.http-put-response-hop-limit - The HTTP metadata request put response hop limit (integer, possible values 1 to 64)

  • metadata-options.http-tokens - The metadata request authorization state (optional | required)

  • metadata-options.instance-metadata-tags - The status of access to instance tags from the instance metadata (enabled | disabled)

  • metadata-options.state - The state of the metadata option changes (pending | applied).

  • monitoring-state - Indicates whether detailed monitoring is enabled (disabled | enabled).

  • network-interface.addresses.primary - Specifies whether the IPv4 address of the network interface is the primary private IPv4 address.

  • network-interface.addresses.private-ip-address - The private IPv4 address associated with the network interface.

  • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address (IPv4) with a network interface.

  • network-interface.addresses.association.ip-owner-id - The owner ID of the private IPv4 address associated with the network interface.

  • network-interface.association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • network-interface.association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • network-interface.association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • network-interface.association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • network-interface.attachment.attachment-id - The ID of the interface attachment.

  • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

  • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • network-interface.attachment.device-index - The device index to which the network interface is attached.

  • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

  • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

  • network-interface.availability-zone - The Availability Zone for the network interface.

  • network-interface.description - The description of the network interface.

  • network-interface.group-id - The ID of a security group associated with the network interface.

  • network-interface.group-name - The name of a security group associated with the network interface.

  • network-interface.ipv6-addresses.ipv6-address - The IPv6 address associated with the network interface.

  • network-interface.mac-address - The MAC address of the network interface.

  • network-interface.network-interface-id - The ID of the network interface.

  • network-interface.owner-id - The ID of the owner of the network interface.

  • network-interface.private-dns-name - The private DNS name of the network interface.

  • network-interface.requester-id - The requester ID for the network interface.

  • network-interface.requester-managed - Indicates whether the network interface is being managed by Amazon Web Services.

  • network-interface.status - The status of the network interface (available) | in-use).

  • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • network-interface.subnet-id - The ID of the subnet for the network interface.

  • network-interface.vpc-id - The ID of the VPC for the network interface.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The Amazon Web Services account ID of the instance owner.

  • placement-group-name - The name of the placement group for the instance.

  • placement-partition-number - The partition in which the instance is located.

  • platform - The platform. To list only Windows instances, use windows.

  • platform-details - The platform (Linux/UNIX | Red Hat BYOL Linux | Red Hat Enterprise Linux | Red Hat Enterprise Linux with HA | Red Hat Enterprise Linux with SQL Server Standard and HA | Red Hat Enterprise Linux with SQL Server Enterprise and HA | Red Hat Enterprise Linux with SQL Server Standard | Red Hat Enterprise Linux with SQL Server Web | Red Hat Enterprise Linux with SQL Server Enterprise | SQL Server Enterprise | SQL Server Standard | SQL Server Web | SUSE Linux | Ubuntu Pro | Windows | Windows BYOL | Windows with SQL Server Enterprise | Windows with SQL Server Standard | Windows with SQL Server Web).

  • private-dns-name - The private IPv4 DNS name of the instance.

  • private-dns-name-options.enable-resource-name-dns-a-record - A Boolean that indicates whether to respond to DNS queries for instance hostnames with DNS A records.

  • private-dns-name-options.enable-resource-name-dns-aaaa-record - A Boolean that indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

  • private-dns-name-options.hostname-type - The type of hostname (ip-name | resource-name).

  • private-ip-address - The private IPv4 address of the instance.

  • product-code - The product code associated with the AMI used to launch the instance.

  • product-code.type - The type of product code (devpay | marketplace).

  • ramdisk-id - The RAM disk ID.

  • reason - The reason for the current state of the instance (for example, shows \"User Initiated [date]\" when you stop or terminate the instance). Similar to the state-reason-code filter.

  • requester-id - The ID of the entity that launched the instance on your behalf (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you get one reservation ID. If you launch ten instances using the same launch request, you also get one reservation ID.

  • root-device-name - The device name of the root device volume (for example, /dev/sda1).

  • root-device-type - The type of the root device volume (ebs | instance-store).

  • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

  • spot-instance-request-id - The ID of the Spot Instance request.

  • state-reason-code - The reason code for the state change.

  • state-reason-message - A message that describes the state change.

  • subnet-id - The ID of the subnet for the instance.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value.

  • tenancy - The tenancy of an instance (dedicated | default | host).

  • tpm-support - Indicates if the instance is configured for NitroTPM support (v2.0).

  • usage-operation - The usage operation value for the instance (RunInstances | RunInstances:00g0 | RunInstances:0010 | RunInstances:1010 | RunInstances:1014 | RunInstances:1110 | RunInstances:0014 | RunInstances:0210 | RunInstances:0110 | RunInstances:0100 | RunInstances:0004 | RunInstances:0200 | RunInstances:000g | RunInstances:0g00 | RunInstances:0002 | RunInstances:0800 | RunInstances:0102 | RunInstances:0006 | RunInstances:0202).

  • usage-operation-update-time - The time that the usage operation was last updated, for example, 2022-09-15T17:15:20.000Z.

  • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

  • vpc-id - The ID of the VPC that the instance is running in.

", + "DescribeInstancesRequest$Filters": "

The filters.

  • affinity - The affinity setting for an instance running on a Dedicated Host (default | host).

  • architecture - The instance architecture (i386 | x86_64 | arm64).

  • availability-zone - The Availability Zone of the instance.

  • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2022-09-15T17:15:20.000Z.

  • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

  • block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh).

  • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

  • block-device-mapping.volume-id - The volume ID of the EBS volume.

  • boot-mode - The boot mode that was specified by the AMI (legacy-bios | uefi | uefi-preferred).

  • capacity-reservation-id - The ID of the Capacity Reservation into which the instance was launched.

  • capacity-reservation-specification.capacity-reservation-preference - The instance's Capacity Reservation preference (open | none).

  • capacity-reservation-specification.capacity-reservation-target.capacity-reservation-id - The ID of the targeted Capacity Reservation.

  • capacity-reservation-specification.capacity-reservation-target.capacity-reservation-resource-group-arn - The ARN of the targeted Capacity Reservation group.

  • client-token - The idempotency token you provided when you launched the instance.

  • current-instance-boot-mode - The boot mode that is used to launch the instance at launch or start (legacy-bios | uefi).

  • dns-name - The public DNS name of the instance.

  • ebs-optimized - A Boolean that indicates whether the instance is optimized for Amazon EBS I/O.

  • ena-support - A Boolean that indicates whether the instance is enabled for enhanced networking with ENA.

  • enclave-options.enabled - A Boolean that indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

  • hibernation-options.configured - A Boolean that indicates whether the instance is enabled for hibernation. A value of true means that the instance is enabled for hibernation.

  • host-id - The ID of the Dedicated Host on which the instance is running, if applicable.

  • hypervisor - The hypervisor type of the instance (ovm | xen). The value xen is used for both Xen and Nitro hypervisors.

  • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

  • iam-instance-profile.id - The instance profile associated with the instance. Specified as an ID.

  • iam-instance-profile.name - The instance profile associated with the instance. Specified as an name.

  • image-id - The ID of the image used to launch the instance.

  • instance-id - The ID of the instance.

  • instance-lifecycle - Indicates whether this is a Spot Instance, a Scheduled Instance, or a Capacity Block (spot | scheduled | capacity-block).

  • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

  • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

  • instance-type - The type of instance (for example, t2.micro).

  • instance.group-id - The ID of the security group for the instance.

  • instance.group-name - The name of the security group for the instance.

  • ip-address - The public IPv4 address of the instance.

  • ipv6-address - The IPv6 address of the instance.

  • kernel-id - The kernel ID.

  • key-name - The name of the key pair used when the instance was launched.

  • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

  • launch-time - The time when the instance was launched, in the ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. You can use a wildcard (*), for example, 2021-09-29T*, which matches an entire day.

  • maintenance-options.auto-recovery - The current automatic recovery behavior of the instance (disabled | default).

  • metadata-options.http-endpoint - The status of access to the HTTP metadata endpoint on your instance (enabled | disabled)

  • metadata-options.http-protocol-ipv4 - Indicates whether the IPv4 endpoint is enabled (disabled | enabled).

  • metadata-options.http-protocol-ipv6 - Indicates whether the IPv6 endpoint is enabled (disabled | enabled).

  • metadata-options.http-put-response-hop-limit - The HTTP metadata request put response hop limit (integer, possible values 1 to 64)

  • metadata-options.http-tokens - The metadata request authorization state (optional | required)

  • metadata-options.instance-metadata-tags - The status of access to instance tags from the instance metadata (enabled | disabled)

  • metadata-options.state - The state of the metadata option changes (pending | applied).

  • monitoring-state - Indicates whether detailed monitoring is enabled (disabled | enabled).

  • network-interface.addresses.association.allocation-id - The allocation ID.

  • network-interface.addresses.association.association-id - The association ID.

  • network-interface.addresses.association.carrier-ip - The carrier IP address.

  • network-interface.addresses.association.customer-owned-ip - The customer-owned IP address.

  • network-interface.addresses.association.ip-owner-id - The owner ID of the private IPv4 address associated with the network interface.

  • network-interface.addresses.association.public-dns-name - The public DNS name.

  • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address (IPv4) with a network interface.

  • network-interface.addresses.primary - Specifies whether the IPv4 address of the network interface is the primary private IPv4 address.

  • network-interface.addresses.private-dns-name - The private DNS name.

  • network-interface.addresses.private-ip-address - The private IPv4 address associated with the network interface.

  • network-interface.association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • network-interface.association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • network-interface.association.carrier-ip - The customer-owned IP address.

  • network-interface.association.customer-owned-ip - The customer-owned IP address.

  • network-interface.association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • network-interface.association.public-dns-name - The public DNS name.

  • network-interface.association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

  • network-interface.attachment.attachment-id - The ID of the interface attachment.

  • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

  • network-interface.attachment.device-index - The device index to which the network interface is attached.

  • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

  • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • network-interface.attachment.network-card-index - The index of the network card.

  • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • network-interface.availability-zone - The Availability Zone for the network interface.

  • network-interface.deny-all-igw-traffic - A Boolean that indicates whether a network interface with an IPv6 address is unreachable from the public internet.

  • network-interface.description - The description of the network interface.

  • network-interface.group-id - The ID of a security group associated with the network interface.

  • network-interface.group-name - The name of a security group associated with the network interface.

  • network-interface.ipv4-prefixes.ipv4-prefix - The IPv4 prefixes that are assigned to the network interface.

  • network-interface.ipv6-address - The IPv6 address associated with the network interface.

  • network-interface.ipv6-addresses.ipv6-address - The IPv6 address associated with the network interface.

  • network-interface.ipv6-addresses.is-primary-ipv6 - A Boolean that indicates whether this is the primary IPv6 address.

  • network-interface.ipv6-native - A Boolean that indicates whether this is an IPv6 only network interface.

  • network-interface.ipv6-prefixes.ipv6-prefix - The IPv6 prefix assigned to the network interface.

  • network-interface.mac-address - The MAC address of the network interface.

  • network-interface.network-interface-id - The ID of the network interface.

  • network-interface.outpost-arn - The ARN of the Outpost.

  • network-interface.owner-id - The ID of the owner of the network interface.

  • network-interface.private-dns-name - The private DNS name of the network interface.

  • network-interface.private-ip-address - The private IPv4 address.

  • network-interface.public-dns-name - The public DNS name.

  • network-interface.requester-id - The requester ID for the network interface.

  • network-interface.requester-managed - Indicates whether the network interface is being managed by Amazon Web Services.

  • network-interface.status - The status of the network interface (available) | in-use).

  • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • network-interface.subnet-id - The ID of the subnet for the network interface.

  • network-interface.tag-key - The key of a tag assigned to the network interface.

  • network-interface.tag-value - The value of a tag assigned to the network interface.

  • network-interface.vpc-id - The ID of the VPC for the network interface.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The Amazon Web Services account ID of the instance owner.

  • placement-group-name - The name of the placement group for the instance.

  • placement-partition-number - The partition in which the instance is located.

  • platform - The platform. To list only Windows instances, use windows.

  • platform-details - The platform (Linux/UNIX | Red Hat BYOL Linux | Red Hat Enterprise Linux | Red Hat Enterprise Linux with HA | Red Hat Enterprise Linux with SQL Server Standard and HA | Red Hat Enterprise Linux with SQL Server Enterprise and HA | Red Hat Enterprise Linux with SQL Server Standard | Red Hat Enterprise Linux with SQL Server Web | Red Hat Enterprise Linux with SQL Server Enterprise | SQL Server Enterprise | SQL Server Standard | SQL Server Web | SUSE Linux | Ubuntu Pro | Windows | Windows BYOL | Windows with SQL Server Enterprise | Windows with SQL Server Standard | Windows with SQL Server Web).

  • private-dns-name - The private IPv4 DNS name of the instance.

  • private-dns-name-options.enable-resource-name-dns-a-record - A Boolean that indicates whether to respond to DNS queries for instance hostnames with DNS A records.

  • private-dns-name-options.enable-resource-name-dns-aaaa-record - A Boolean that indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

  • private-dns-name-options.hostname-type - The type of hostname (ip-name | resource-name).

  • private-ip-address - The private IPv4 address of the instance.

  • product-code - The product code associated with the AMI used to launch the instance.

  • product-code.type - The type of product code (devpay | marketplace).

  • ramdisk-id - The RAM disk ID.

  • reason - The reason for the current state of the instance (for example, shows \"User Initiated [date]\" when you stop or terminate the instance). Similar to the state-reason-code filter.

  • requester-id - The ID of the entity that launched the instance on your behalf (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you get one reservation ID. If you launch ten instances using the same launch request, you also get one reservation ID.

  • root-device-name - The device name of the root device volume (for example, /dev/sda1).

  • root-device-type - The type of the root device volume (ebs | instance-store).

  • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

  • spot-instance-request-id - The ID of the Spot Instance request.

  • state-reason-code - The reason code for the state change.

  • state-reason-message - A message that describes the state change.

  • subnet-id - The ID of the subnet for the instance.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value.

  • tenancy - The tenancy of an instance (dedicated | default | host).

  • tpm-support - Indicates if the instance is configured for NitroTPM support (v2.0).

  • usage-operation - The usage operation value for the instance (RunInstances | RunInstances:00g0 | RunInstances:0010 | RunInstances:1010 | RunInstances:1014 | RunInstances:1110 | RunInstances:0014 | RunInstances:0210 | RunInstances:0110 | RunInstances:0100 | RunInstances:0004 | RunInstances:0200 | RunInstances:000g | RunInstances:0g00 | RunInstances:0002 | RunInstances:0800 | RunInstances:0102 | RunInstances:0006 | RunInstances:0202).

  • usage-operation-update-time - The time that the usage operation was last updated, for example, 2022-09-15T17:15:20.000Z.

  • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

  • vpc-id - The ID of the VPC that the instance is running in.

", "DescribeInternetGatewaysRequest$Filters": "

The filters.

  • attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached.

  • attachment.vpc-id - The ID of an attached VPC.

  • internet-gateway-id - The ID of the Internet gateway.

  • owner-id - The ID of the Amazon Web Services account that owns the internet gateway.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", "DescribeIpamPoolsRequest$Filters": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", "DescribeIpamResourceDiscoveriesRequest$Filters": "

The resource discovery filters.

", @@ -9114,6 +9432,7 @@ "DescribeLocalGatewayVirtualInterfaceGroupsRequest$Filters": "

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • local-gateway-virtual-interface-group-id - The ID of the virtual interface group.

  • local-gateway-virtual-interface-id - The ID of the virtual interface.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway virtual interface group.

", "DescribeLocalGatewayVirtualInterfacesRequest$Filters": "

One or more filters.

  • local-address - The local address.

  • local-bgp-asn - The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.

  • local-gateway-id - The ID of the local gateway.

  • local-gateway-virtual-interface-id - The ID of the virtual interface.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway virtual interface.

  • peer-address - The peer address.

  • peer-bgp-asn - The peer BGP ASN.

  • vlan - The ID of the VLAN.

", "DescribeLocalGatewaysRequest$Filters": "

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway.

  • state - The state of the association.

", + "DescribeLockedSnapshotsRequest$Filters": "

The filters.

  • lock-state - The state of the snapshot lock (compliance-cooloff | governance | compliance | expired).

", "DescribeManagedPrefixListsRequest$Filters": "

One or more filters.

  • owner-id - The ID of the prefix list owner.

  • prefix-list-id - The ID of the prefix list.

  • prefix-list-name - The name of the prefix list.

", "DescribeMovingAddressesRequest$Filters": "

One or more filters.

  • moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).

", "DescribeNatGatewaysRequest$Filter": "

The filters.

  • nat-gateway-id - The ID of the NAT gateway.

  • state - The state of the NAT gateway (pending | failed | available | deleting | deleted).

  • subnet-id - The ID of the subnet in which the NAT gateway resides.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC in which the NAT gateway resides.

", @@ -9123,7 +9442,7 @@ "DescribeNetworkInsightsAnalysesRequest$Filters": "

The filters. The following are the possible values:

  • path-found - A Boolean value that indicates whether a feasible path is found.

  • status - The status of the analysis (running | succeeded | failed).

", "DescribeNetworkInsightsPathsRequest$Filters": "

The filters. The following are the possible values:

  • destination - The ID of the resource.

  • filter-at-source.source-address - The source IPv4 address at the source.

  • filter-at-source.source-port-range - The source port range at the source.

  • filter-at-source.destination-address - The destination IPv4 address at the source.

  • filter-at-source.destination-port-range - The destination port range at the source.

  • filter-at-destination.source-address - The source IPv4 address at the destination.

  • filter-at-destination.source-port-range - The source port range at the destination.

  • filter-at-destination.destination-address - The destination IPv4 address at the destination.

  • filter-at-destination.destination-port-range - The destination port range at the destination.

  • protocol - The protocol.

  • source - The ID of the resource.

", "DescribeNetworkInterfacePermissionsRequest$Filters": "

One or more filters.

  • network-interface-permission.network-interface-permission-id - The ID of the permission.

  • network-interface-permission.network-interface-id - The ID of the network interface.

  • network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • network-interface-permission.aws-service - The Amazon Web Service.

  • network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

", - "DescribeNetworkInterfacesRequest$Filters": "

One or more filters.

  • addresses.private-ip-address - The private IPv4 addresses associated with the network interface.

  • addresses.primary - Whether the private IPv4 address is the primary IP address associated with the network interface.

  • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address (IPv4).

  • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

  • association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • association.public-dns-name - The public DNS name for the network interface (IPv4).

  • attachment.attachment-id - The ID of the interface attachment.

  • attachment.attach-time - The time that the network interface was attached to an instance.

  • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

  • attachment.device-index - The device index to which the network interface is attached.

  • attachment.instance-id - The ID of the instance to which the network interface is attached.

  • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • availability-zone - The Availability Zone of the network interface.

  • description - The description of the network interface.

  • group-id - The ID of a security group associated with the network interface.

  • group-name - The name of a security group associated with the network interface.

  • ipv6-addresses.ipv6-address - An IPv6 address associated with the network interface.

  • interface-type - The type of network interface (api_gateway_managed | aws_codestar_connections_managed | branch | efa | gateway_load_balancer | gateway_load_balancer_endpoint | global_accelerator_managed | interface | iot_rules_managed | lambda | load_balancer | nat_gateway | network_load_balancer | quicksight | transit_gateway | trunk | vpc_endpoint).

  • mac-address - The MAC address of the network interface.

  • network-interface-id - The ID of the network interface.

  • owner-id - The Amazon Web Services account ID of the network interface owner.

  • private-ip-address - The private IPv4 address or addresses of the network interface.

  • private-dns-name - The private DNS name of the network interface (IPv4).

  • requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

  • subnet-id - The ID of the subnet for the network interface.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the network interface.

", + "DescribeNetworkInterfacesRequest$Filters": "

One or more filters.

  • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

  • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address (IPv4).

  • addresses.primary - Whether the private IPv4 address is the primary IP address associated with the network interface.

  • addresses.private-ip-address - The private IPv4 addresses associated with the network interface.

  • association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • association.public-dns-name - The public DNS name for the network interface (IPv4).

  • attachment.attach-time - The time that the network interface was attached to an instance.

  • attachment.attachment-id - The ID of the interface attachment.

  • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

  • attachment.device-index - The device index to which the network interface is attached.

  • attachment.instance-id - The ID of the instance to which the network interface is attached.

  • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • availability-zone - The Availability Zone of the network interface.

  • description - The description of the network interface.

  • group-id - The ID of a security group associated with the network interface.

  • ipv6-addresses.ipv6-address - An IPv6 address associated with the network interface.

  • interface-type - The type of network interface (api_gateway_managed | aws_codestar_connections_managed | branch | ec2_instance_connect_endpoint | efa | efs | gateway_load_balancer | gateway_load_balancer_endpoint | global_accelerator_managed | interface | iot_rules_managed | lambda | load_balancer | nat_gateway | network_load_balancer | quicksight | transit_gateway | trunk | vpc_endpoint).

  • mac-address - The MAC address of the network interface.

  • network-interface-id - The ID of the network interface.

  • owner-id - The Amazon Web Services account ID of the network interface owner.

  • private-dns-name - The private DNS name of the network interface (IPv4).

  • private-ip-address - The private IPv4 address or addresses of the network interface.

  • requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

  • subnet-id - The ID of the subnet for the network interface.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the network interface.

", "DescribePlacementGroupsRequest$Filters": "

The filters.

  • group-name - The name of the placement group.

  • group-arn - The Amazon Resource Name (ARN) of the placement group.

  • spread-level - The spread level for the placement group (host | rack).

  • state - The state of the placement group (pending | available | deleting | deleted).

  • strategy - The strategy of the placement group (cluster | spread | partition).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value.

", "DescribePrefixListsRequest$Filters": "

One or more filters.

  • prefix-list-id: The ID of a prefix list.

  • prefix-list-name: The name of a prefix list.

", "DescribePublicIpv4PoolsRequest$Filters": "

One or more filters.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", @@ -9140,9 +9459,9 @@ "DescribeSecurityGroupsRequest$Filters": "

The filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

  • description - The description of the security group.

  • egress.ip-permission.cidr - An IPv4 CIDR block for an outbound security group rule.

  • egress.ip-permission.from-port - For an outbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number.

  • egress.ip-permission.group-id - The ID of a security group that has been referenced in an outbound security group rule.

  • egress.ip-permission.group-name - The name of a security group that is referenced in an outbound security group rule.

  • egress.ip-permission.ipv6-cidr - An IPv6 CIDR block for an outbound security group rule.

  • egress.ip-permission.prefix-list-id - The ID of a prefix list to which a security group rule allows outbound access.

  • egress.ip-permission.protocol - The IP protocol for an outbound security group rule (tcp | udp | icmp, a protocol number, or -1 for all protocols).

  • egress.ip-permission.to-port - For an outbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code.

  • egress.ip-permission.user-id - The ID of an Amazon Web Services account that has been referenced in an outbound security group rule.

  • group-id - The ID of the security group.

  • group-name - The name of the security group.

  • ip-permission.cidr - An IPv4 CIDR block for an inbound security group rule.

  • ip-permission.from-port - For an inbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number.

  • ip-permission.group-id - The ID of a security group that has been referenced in an inbound security group rule.

  • ip-permission.group-name - The name of a security group that is referenced in an inbound security group rule.

  • ip-permission.ipv6-cidr - An IPv6 CIDR block for an inbound security group rule.

  • ip-permission.prefix-list-id - The ID of a prefix list from which a security group rule allows inbound access.

  • ip-permission.protocol - The IP protocol for an inbound security group rule (tcp | udp | icmp, a protocol number, or -1 for all protocols).

  • ip-permission.to-port - For an inbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code.

  • ip-permission.user-id - The ID of an Amazon Web Services account that has been referenced in an inbound security group rule.

  • owner-id - The Amazon Web Services account ID of the owner of the security group.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC specified when the security group was created.

", "DescribeSnapshotTierStatusRequest$Filters": "

The filters.

  • snapshot-id - The snapshot ID.

  • volume-id - The ID of the volume the snapshot is for.

  • last-tiering-operation - The state of the last archive or restore action. (archival-in-progress | archival-completed | archival-failed | permanent-restore-in-progress | permanent-restore-completed | permanent-restore-failed | temporary-restore-in-progress | temporary-restore-completed | temporary-restore-failed)

", "DescribeSnapshotsRequest$Filters": "

The filters.

  • description - A description of the snapshot.

  • encrypted - Indicates whether the snapshot is encrypted (true | false)

  • owner-alias - The owner alias, from an Amazon-maintained list (amazon). This is not the user-configured Amazon Web Services account alias set using the IAM console. We recommend that you use the related parameter instead of this filter.

  • owner-id - The Amazon Web Services account ID of the owner. We recommend that you use the related parameter instead of this filter.

  • progress - The progress of the snapshot, as a percentage (for example, 80%).

  • snapshot-id - The snapshot ID.

  • start-time - The time stamp when the snapshot was initiated.

  • status - The status of the snapshot (pending | completed | error).

  • storage-tier - The storage tier of the snapshot (archive | standard).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • volume-id - The ID of the volume the snapshot is for.

  • volume-size - The size of the volume, in GiB.

", - "DescribeSpotInstanceRequestsRequest$Filters": "

The filters.

  • availability-zone-group - The Availability Zone group.

  • create-time - The time stamp when the Spot Instance request was created.

  • fault-code - The fault code related to the request.

  • fault-message - The fault message related to the request.

  • instance-id - The ID of the instance that fulfilled the request.

  • launch-group - The Spot Instance launch group.

  • launch.block-device-mapping.delete-on-termination - Indicates whether the EBS volume is deleted on instance termination.

  • launch.block-device-mapping.device-name - The device name for the volume in the block device mapping (for example, /dev/sdh or xvdh).

  • launch.block-device-mapping.snapshot-id - The ID of the snapshot for the EBS volume.

  • launch.block-device-mapping.volume-size - The size of the EBS volume, in GiB.

  • launch.block-device-mapping.volume-type - The type of EBS volume: gp2 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic.

  • launch.group-id - The ID of the security group for the instance.

  • launch.group-name - The name of the security group for the instance.

  • launch.image-id - The ID of the AMI.

  • launch.instance-type - The type of instance (for example, m3.medium).

  • launch.kernel-id - The kernel ID.

  • launch.key-name - The name of the key pair the instance launched with.

  • launch.monitoring-enabled - Whether detailed monitoring is enabled for the Spot Instance.

  • launch.ramdisk-id - The RAM disk ID.

  • launched-availability-zone - The Availability Zone in which the request is launched.

  • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

  • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

  • network-interface.description - A description of the network interface.

  • network-interface.device-index - The index of the device for the network interface attachment on the instance.

  • network-interface.group-id - The ID of the security group associated with the network interface.

  • network-interface.network-interface-id - The ID of the network interface.

  • network-interface.private-ip-address - The primary private IP address of the network interface.

  • network-interface.subnet-id - The ID of the subnet for the instance.

  • product-description - The product description associated with the instance (Linux/UNIX | Windows).

  • spot-instance-request-id - The Spot Instance request ID.

  • spot-price - The maximum hourly price for any Spot Instance launched to fulfill the request.

  • state - The state of the Spot Instance request (open | active | closed | cancelled | failed). Spot request status information can help you track your Amazon EC2 Spot Instance requests. For more information, see Spot request status in the Amazon EC2 User Guide for Linux Instances.

  • status-code - The short code describing the most recent evaluation of your Spot Instance request.

  • status-message - The message explaining the status of the Spot Instance request.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • type - The type of Spot Instance request (one-time | persistent).

  • valid-from - The start date of the request.

  • valid-until - The end date of the request.

", - "DescribeSpotPriceHistoryRequest$Filters": "

The filters.

  • availability-zone - The Availability Zone for which prices should be returned.

  • instance-type - The type of instance (for example, m3.medium).

  • product-description - The product description for the Spot price (Linux/UNIX | Red Hat Enterprise Linux | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | Red Hat Enterprise Linux (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

  • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

  • timestamp - The time stamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

", - "DescribeStoreImageTasksRequest$Filters": "

The filters.

  • task-state - Returns tasks in a certain state (InProgress | Completed | Failed)

  • bucket - Returns task information for tasks that targeted a specific bucket. For the filter value, specify the bucket name.

", + "DescribeSpotInstanceRequestsRequest$Filters": "

The filters.

  • availability-zone-group - The Availability Zone group.

  • create-time - The time stamp when the Spot Instance request was created.

  • fault-code - The fault code related to the request.

  • fault-message - The fault message related to the request.

  • instance-id - The ID of the instance that fulfilled the request.

  • launch-group - The Spot Instance launch group.

  • launch.block-device-mapping.delete-on-termination - Indicates whether the EBS volume is deleted on instance termination.

  • launch.block-device-mapping.device-name - The device name for the volume in the block device mapping (for example, /dev/sdh or xvdh).

  • launch.block-device-mapping.snapshot-id - The ID of the snapshot for the EBS volume.

  • launch.block-device-mapping.volume-size - The size of the EBS volume, in GiB.

  • launch.block-device-mapping.volume-type - The type of EBS volume: gp2 or gp3 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic.

  • launch.group-id - The ID of the security group for the instance.

  • launch.group-name - The name of the security group for the instance.

  • launch.image-id - The ID of the AMI.

  • launch.instance-type - The type of instance (for example, m3.medium).

  • launch.kernel-id - The kernel ID.

  • launch.key-name - The name of the key pair the instance launched with.

  • launch.monitoring-enabled - Whether detailed monitoring is enabled for the Spot Instance.

  • launch.ramdisk-id - The RAM disk ID.

  • launched-availability-zone - The Availability Zone in which the request is launched.

  • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

  • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

  • network-interface.description - A description of the network interface.

  • network-interface.device-index - The index of the device for the network interface attachment on the instance.

  • network-interface.group-id - The ID of the security group associated with the network interface.

  • network-interface.network-interface-id - The ID of the network interface.

  • network-interface.private-ip-address - The primary private IP address of the network interface.

  • network-interface.subnet-id - The ID of the subnet for the instance.

  • product-description - The product description associated with the instance (Linux/UNIX | Windows).

  • spot-instance-request-id - The Spot Instance request ID.

  • spot-price - The maximum hourly price for any Spot Instance launched to fulfill the request.

  • state - The state of the Spot Instance request (open | active | closed | cancelled | failed). Spot request status information can help you track your Amazon EC2 Spot Instance requests. For more information, see Spot request status in the Amazon EC2 User Guide for Linux Instances.

  • status-code - The short code describing the most recent evaluation of your Spot Instance request.

  • status-message - The message explaining the status of the Spot Instance request.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • type - The type of Spot Instance request (one-time | persistent).

  • valid-from - The start date of the request.

  • valid-until - The end date of the request.

", + "DescribeSpotPriceHistoryRequest$Filters": "

The filters.

  • availability-zone - The Availability Zone for which prices should be returned.

  • instance-type - The type of instance (for example, m3.medium).

  • product-description - The product description for the Spot price (Linux/UNIX | Red Hat Enterprise Linux | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | Red Hat Enterprise Linux (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

  • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

  • timestamp - The time stamp of the Spot price history, in UTC format (for example, ddd MMM dd HH:mm:ss UTC YYYY). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

", + "DescribeStoreImageTasksRequest$Filters": "

The filters.

  • task-state - Returns tasks in a certain state (InProgress | Completed | Failed)

  • bucket - Returns task information for tasks that targeted a specific bucket. For the filter value, specify the bucket name.

When you specify the ImageIds parameter, any filters that you specify are ignored. To use the filters, you must remove the ImageIds parameter.

", "DescribeSubnetsRequest$Filters": "

The filters.

  • availability-zone - The Availability Zone for the subnet. You can also use availabilityZone as the filter name.

  • availability-zone-id - The ID of the Availability Zone for the subnet. You can also use availabilityZoneId as the filter name.

  • available-ip-address-count - The number of IPv4 addresses in the subnet that are available.

  • cidr-block - The IPv4 CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidrBlock as the filter names.

  • customer-owned-ipv4-pool - The customer-owned IPv4 address pool associated with the subnet.

  • default-for-az - Indicates whether this is the default subnet for the Availability Zone (true | false). You can also use defaultForAz as the filter name.

  • enable-dns64 - Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations.

  • enable-lni-at-device-index - Indicates the device position for local network interfaces in this subnet. For example, 1 indicates local network interfaces in this subnet are the secondary network interface (eth1).

  • ipv6-cidr-block-association.ipv6-cidr-block - An IPv6 CIDR block associated with the subnet.

  • ipv6-cidr-block-association.association-id - An association ID for an IPv6 CIDR block associated with the subnet.

  • ipv6-cidr-block-association.state - The state of an IPv6 CIDR block associated with the subnet.

  • ipv6-native - Indicates whether this is an IPv6 only subnet (true | false).

  • map-customer-owned-ip-on-launch - Indicates whether a network interface created in this subnet (including a network interface created by RunInstances) receives a customer-owned IPv4 address.

  • map-public-ip-on-launch - Indicates whether instances launched in this subnet receive a public IPv4 address.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The ID of the Amazon Web Services account that owns the subnet.

  • private-dns-name-options-on-launch.hostname-type - The type of hostname to assign to instances in the subnet at launch. For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance DNS name can be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). For IPv6 only subnets, an instance DNS name must be based on the instance ID (resource-name).

  • private-dns-name-options-on-launch.enable-resource-name-dns-a-record - Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

  • private-dns-name-options-on-launch.enable-resource-name-dns-aaaa-record - Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

  • state - The state of the subnet (pending | available).

  • subnet-arn - The Amazon Resource Name (ARN) of the subnet.

  • subnet-id - The ID of the subnet.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the subnet.

", "DescribeTagsRequest$Filters": "

The filters.

  • key - The tag key.

  • resource-id - The ID of the resource.

  • resource-type - The resource type (customer-gateway | dedicated-host | dhcp-options | elastic-ip | fleet | fpga-image | host-reservation | image | instance | internet-gateway | key-pair | launch-template | natgateway | network-acl | network-interface | placement-group | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpc-endpoint | vpc-endpoint-service | vpc-peering-connection | vpn-connection | vpn-gateway).

  • tag:<key> - The key/value combination of the tag. For example, specify \"tag:Owner\" for the filter name and \"TeamA\" for the filter value to find resources with the tag \"Owner=TeamA\".

  • value - The tag value.

", "DescribeTrafficMirrorFiltersRequest$Filters": "

One or more filters. The possible values are:

  • description: The Traffic Mirror filter description.

  • traffic-mirror-filter-id: The ID of the Traffic Mirror filter.

", @@ -9181,10 +9500,12 @@ "ExportTransitGatewayRoutesRequest$Filters": "

One or more filters. The possible values are:

  • attachment.transit-gateway-attachment-id - The id of the transit gateway attachment.

  • attachment.resource-id - The resource id of the transit gateway attachment.

  • route-search.exact-match - The exact match of the specified filter.

  • route-search.longest-prefix-match - The longest prefix that matches the route.

  • route-search.subnet-of-match - The routes with a subnet that match the specified CIDR filter.

  • route-search.supernet-of-match - The routes with a CIDR that encompass the CIDR filter. For example, if you have 10.0.1.0/29 and 10.0.1.0/31 routes in your route table and you specify supernet-of-match as 10.0.1.0/30, then the result returns 10.0.1.0/29.

  • state - The state of the route (active | blackhole).

  • transit-gateway-route-destination-cidr-block - The CIDR range.

  • type - The type of route (propagated | static).

", "GetCoipPoolUsageRequest$Filters": "

One or more filters.

  • coip-address-usage.allocation-id - The allocation ID of the address.

  • coip-address-usage.aws-account-id - The ID of the Amazon Web Services account that is using the customer-owned IP address.

  • coip-address-usage.aws-service - The Amazon Web Services service that is using the customer-owned IP address.

  • coip-address-usage.co-ip - The customer-owned IP address.

", "GetIpamDiscoveredAccountsRequest$Filters": "

Discovered account filters.

", + "GetIpamDiscoveredPublicAddressesRequest$Filters": "

Filters.

", "GetIpamDiscoveredResourceCidrsRequest$Filters": "

Filters.

", "GetIpamPoolAllocationsRequest$Filters": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", "GetIpamPoolCidrsRequest$Filters": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", "GetIpamResourceCidrsRequest$Filters": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "GetSecurityGroupsForVpcRequest$Filters": "

The filters. If using multiple filters, the results include security groups which match all filters.

  • group-id: The security group ID.

  • description: The security group's description.

  • group-name: The security group name.

  • owner-id: The security group owner ID.

  • primary-vpc-id: The VPC ID in which the security group was created.

", "GetSubnetCidrReservationsRequest$Filters": "

One or more filters.

  • reservationType - The type of reservation (prefix | explicit).

  • subnet-id - The ID of the subnet.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", "GetTransitGatewayAttachmentPropagationsRequest$Filters": "

One or more filters. The possible values are:

  • transit-gateway-route-table-id - The ID of the transit gateway route table.

", "GetTransitGatewayMulticastDomainAssociationsRequest$Filters": "

One or more filters. The possible values are:

  • resource-id - The ID of the resource.

  • resource-type - The type of resource. The valid value is: vpc.

  • state - The state of the subnet association. Valid values are associated | associating | disassociated | disassociating.

  • subnet-id - The ID of the subnet.

  • transit-gateway-attachment-id - The id of the transit gateway attachment.

", @@ -9802,6 +10123,16 @@ "refs": { } }, + "GetIpamDiscoveredPublicAddressesRequest": { + "base": null, + "refs": { + } + }, + "GetIpamDiscoveredPublicAddressesResult": { + "base": null, + "refs": { + } + }, "GetIpamDiscoveredResourceCidrsRequest": { "base": null, "refs": { @@ -9924,6 +10255,22 @@ "refs": { } }, + "GetSecurityGroupsForVpcRequest": { + "base": null, + "refs": { + } + }, + "GetSecurityGroupsForVpcRequestMaxResults": { + "base": null, + "refs": { + "GetSecurityGroupsForVpcRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

" + } + }, + "GetSecurityGroupsForVpcResult": { + "base": null, + "refs": { + } + }, "GetSerialConsoleAccessStatusRequest": { "base": null, "refs": { @@ -9934,6 +10281,16 @@ "refs": { } }, + "GetSnapshotBlockPublicAccessStateRequest": { + "base": null, + "refs": { + } + }, + "GetSnapshotBlockPublicAccessStateResult": { + "base": null, + "refs": { + } + }, "GetSpotPlacementScoresRequest": { "base": null, "refs": { @@ -10340,7 +10697,7 @@ "HypervisorType": { "base": null, "refs": { - "Image$Hypervisor": "

The hypervisor type of the image.

", + "Image$Hypervisor": "

The hypervisor type of the image. Only xen is supported. ovm is not supported.

", "Instance$Hypervisor": "

The hypervisor type of the instance. The value xen is used for both Xen and Nitro hypervisors.

" } }, @@ -10495,14 +10852,16 @@ "CreateReplaceRootVolumeTaskRequest$ImageId": "

The ID of the AMI to use to restore the root volume. The specified AMI must have the same product code, billing information, architecture type, and virtualization type as that of the instance.

If you want to restore the replacement volume from a specific snapshot, or if you want to restore it to its launch state, omit this parameter.

", "CreateStoreImageTaskRequest$ImageId": "

The ID of the AMI.

", "DeregisterImageRequest$ImageId": "

The ID of the AMI.

", - "DescribeFastLaunchImagesSuccessItem$ImageId": "

The image ID that identifies the fast-launch enabled Windows image.

", + "DescribeFastLaunchImagesSuccessItem$ImageId": "

The image ID that identifies the Windows fast launch enabled image.

", "DescribeImageAttributeRequest$ImageId": "

The ID of the AMI.

", - "DisableFastLaunchRequest$ImageId": "

The ID of the image for which you’re turning off faster launching, and removing pre-provisioned snapshots.

", - "DisableFastLaunchResult$ImageId": "

The ID of the image for which faster-launching has been turned off.

", + "DisableFastLaunchRequest$ImageId": "

Specify the ID of the image for which to disable Windows fast launch.

", + "DisableFastLaunchResult$ImageId": "

The ID of the image for which Windows fast launch was disabled.

", "DisableImageDeprecationRequest$ImageId": "

The ID of the AMI.

", - "EnableFastLaunchRequest$ImageId": "

The ID of the image for which you’re enabling faster launching.

", - "EnableFastLaunchResult$ImageId": "

The image ID that identifies the Windows AMI for which faster launching was enabled.

", + "DisableImageRequest$ImageId": "

The ID of the AMI.

", + "EnableFastLaunchRequest$ImageId": "

Specify the ID of the image for which to enable Windows fast launch.

", + "EnableFastLaunchResult$ImageId": "

The image ID that identifies the AMI for which Windows fast launch was enabled.

", "EnableImageDeprecationRequest$ImageId": "

The ID of the AMI.

", + "EnableImageRequest$ImageId": "

The ID of the AMI.

", "ExportImageRequest$ImageId": "

The ID of the image.

", "FastLaunchImageIdList$member": null, "FleetLaunchTemplateOverrides$ImageId": "

The ID of the AMI. An AMI is required to launch an instance. This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

", @@ -10808,6 +11167,18 @@ "InstanceList$member": null } }, + "InstanceAttachmentEnaSrdSpecification": { + "base": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

", + "refs": { + "InstanceNetworkInterfaceAttachment$EnaSrdSpecification": "

Contains the ENA Express settings for the network interface that's attached to the instance.

" + } + }, + "InstanceAttachmentEnaSrdUdpSpecification": { + "base": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

", + "refs": { + "InstanceAttachmentEnaSrdSpecification$EnaSrdUdpSpecification": "

Configures ENA Express for UDP network traffic.

" + } + }, "InstanceAttribute": { "base": "

Describes an instance attribute.

", "refs": { @@ -11073,6 +11444,7 @@ "CreateReplaceRootVolumeTaskRequest$InstanceId": "

The ID of the instance for which to replace the root volume.

", "CreateRouteRequest$InstanceId": "

The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

", "DescribeInstanceAttributeRequest$InstanceId": "

The ID of the instance.

", + "DescribeInstanceTopologyInstanceIdSet$member": null, "DetachClassicLinkVpcRequest$InstanceId": "

The ID of the instance to unlink from the VPC.

", "GetConsoleOutputRequest$InstanceId": "

The ID of the instance.

", "GetConsoleScreenshotRequest$InstanceId": "

The ID of the instance.

", @@ -11155,7 +11527,7 @@ "RequestSpotInstancesRequest$InstanceInterruptionBehavior": "

The behavior when a Spot Instance is interrupted. The default is terminate.

", "SpotFleetRequestConfigData$InstanceInterruptionBehavior": "

The behavior when a Spot Instance is interrupted. The default is terminate.

", "SpotInstanceRequest$InstanceInterruptionBehavior": "

The behavior when a Spot Instance is interrupted.

", - "SpotMarketOptions$InstanceInterruptionBehavior": "

The behavior when a Spot Instance is interrupted. The default is terminate.

" + "SpotMarketOptions$InstanceInterruptionBehavior": "

The behavior when a Spot Instance is interrupted.

If Configured (for HibernationOptions ) is set to true, the InstanceInterruptionBehavior parameter is automatically set to hibernate. If you set it to stop or terminate, you'll get an error.

If Configured (for HibernationOptions ) is set to false or null, the InstanceInterruptionBehavior parameter is automatically set to terminate. You can also set it to stop or hibernate.

For more information, see Interruption behavior in the Amazon EC2 User Guide.

" } }, "InstanceIpv4Prefix": { @@ -11365,7 +11737,7 @@ } }, "InstanceRequirements": { - "base": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard or with the RunInstances API, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

", + "base": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard or with the RunInstances API, you can't specify InstanceRequirements.

For more information, see Create a mixed instances group using attribute-based instance type selection in the Amazon EC2 Auto Scaling User Guide, and also Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

", "refs": { "FleetLaunchTemplateOverrides$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

", "LaunchTemplateOverrides$InstanceRequirements": "

The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

If you specify InstanceRequirements, you can't specify InstanceType.

", @@ -11388,6 +11760,12 @@ "GetSpotPlacementScoresRequest$InstanceRequirementsWithMetadata": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirementsWithMetadata, you can't specify InstanceTypes.

" } }, + "InstanceSet": { + "base": null, + "refs": { + "DescribeInstanceTopologyResult$Instances": "

Information about the topology of each instance.

" + } + }, "InstanceSpecification": { "base": "

The instance details to specify which volumes should be snapshotted.

", "refs": { @@ -11501,6 +11879,12 @@ "RegisterInstanceEventNotificationAttributesResult$InstanceTagAttribute": "

The resulting set of tag keys.

" } }, + "InstanceTopology": { + "base": "

Information about the instance topology.

", + "refs": { + "InstanceSet$member": null + } + }, "InstanceType": { "base": null, "refs": { @@ -11635,11 +12019,25 @@ "BaselineEbsBandwidthMbpsRequest$Min": "

The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.

", "BaselineEbsBandwidthMbpsRequest$Max": "

The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.

", "CapacityAllocation$Count": "

The amount of instance capacity associated with the usage. For example a value of 4 indicates that instance capacity for 4 instances is currently in use.

", + "CapacityBlockOffering$InstanceCount": "

The number of instances in the Capacity Block offering.

", + "CapacityBlockOffering$CapacityBlockDurationHours": "

The amount of time of the Capacity Block reservation in hours.

", "CapacityReservation$TotalInstanceCount": "

The total number of instances for which the Capacity Reservation reserves capacity.

", "CapacityReservation$AvailableInstanceCount": "

The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.

", "CapacityReservationFleet$TotalTargetCapacity": "

The total number of capacity units for which the Capacity Reservation Fleet reserves capacity. For more information, see Total target capacity in the Amazon EC2 User Guide.

", "ClientVpnEndpoint$VpnPort": "

The port number for the Client VPN endpoint.

", "ClientVpnEndpoint$SessionTimeoutHours": "

The maximum VPN session duration time in hours.

Valid values: 8 | 10 | 12 | 24

Default value: 24

", + "ConnectionTrackingConfiguration$TcpEstablishedTimeout": "

Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "ConnectionTrackingConfiguration$UdpStreamTimeout": "

Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.

", + "ConnectionTrackingConfiguration$UdpTimeout": "

Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", + "ConnectionTrackingSpecification$TcpEstablishedTimeout": "

Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "ConnectionTrackingSpecification$UdpTimeout": "

Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", + "ConnectionTrackingSpecification$UdpStreamTimeout": "

Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.

", + "ConnectionTrackingSpecificationRequest$TcpEstablishedTimeout": "

Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "ConnectionTrackingSpecificationRequest$UdpStreamTimeout": "

Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.

", + "ConnectionTrackingSpecificationRequest$UdpTimeout": "

Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", + "ConnectionTrackingSpecificationResponse$TcpEstablishedTimeout": "

Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "ConnectionTrackingSpecificationResponse$UdpStreamTimeout": "

Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.

", + "ConnectionTrackingSpecificationResponse$UdpTimeout": "

Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", "CpuOptions$CoreCount": "

The number of CPU cores for the instance.

", "CpuOptions$ThreadsPerCore": "

The number of threads per CPU core.

", "CpuOptionsRequest$CoreCount": "

The number of CPU cores for the instance.

", @@ -11664,12 +12062,14 @@ "CreateTrafficMirrorSessionRequest$PacketLength": "

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do not specify this parameter when you want to mirror the entire packet. To mirror a subset of the packet, set this to the length (in bytes) that you want to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target.

If you do not want to mirror the entire packet, use the PacketLength parameter to specify the number of bytes in each packet to mirror.

For sessions with Network Load Balancer (NLB) Traffic Mirror targets the default PacketLength will be set to 8500. Valid values are 1-8500. Setting a PacketLength greater than 8500 will result in an error response.

", "CreateTrafficMirrorSessionRequest$SessionNumber": "

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

Valid values are 1-32766.

", "CreateTrafficMirrorSessionRequest$VirtualNetworkId": "

The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN protocol, see RFC 7348. If you do not specify a VirtualNetworkId, an account-wide unique id is chosen at random.

", - "CreateVolumeRequest$Iops": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

io1 and io2 volumes support up to 64,000 IOPS only on Instances built on the Nitro System. Other instance families support performance up to 32,000 IOPS.

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard volumes.

", - "CreateVolumeRequest$Size": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

", + "CreateVolumeRequest$Iops": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000 - 16,000 IOPS

  • io1: 100 - 64,000 IOPS

  • io2: 100 - 256,000 IOPS

For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard volumes.

", + "CreateVolumeRequest$Size": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1 - 16,384 GiB

  • io1: 4 - 16,384 GiB

  • io2: 4 - 65,536 GiB

  • st1 and sc1: 125 - 16,384 GiB

  • standard: 1 - 1024 GiB

", "CreateVolumeRequest$Throughput": "

The throughput to provision for a volume, with a maximum of 1,000 MiB/s.

This parameter is valid only for gp3 volumes.

Valid Range: Minimum value of 125. Maximum value of 1000.

", "DeleteNetworkAclEntryRequest$RuleNumber": "

The rule number of the entry to delete.

", + "DescribeCapacityBlockOfferingsRequest$InstanceCount": "

The number of instances for which to reserve capacity.

", + "DescribeCapacityBlockOfferingsRequest$CapacityDurationHours": "

The number of hours for which to reserve Capacity Block.

", "DescribeElasticGpusResult$MaxResults": "

The total number of items to return. If the total number of items available is more than the value specified in max-items then a Next-Token will be provided in the output that you can use to resume pagination.

", - "DescribeFastLaunchImagesSuccessItem$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.

", + "DescribeFastLaunchImagesSuccessItem$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows fast launch.

", "DescribeFleetHistoryRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

", "DescribeFleetInstancesRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

", "DescribeFleetsRequest$MaxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

", @@ -11704,14 +12104,14 @@ "DescribeVpcEndpointServicePermissionsRequest$MaxResults": "

The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.

", "DescribeVpcEndpointServicesRequest$MaxResults": "

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

Constraint: If the value is greater than 1,000, we return only 1,000 items.

", "DescribeVpcEndpointsRequest$MaxResults": "

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

Constraint: If the value is greater than 1,000, we return only 1,000 items.

", - "DisableFastLaunchResult$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.

", - "EbsBlockDevice$Iops": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS.

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard volumes.

", - "EbsBlockDevice$VolumeSize": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3:1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

", + "DisableFastLaunchResult$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows fast launch.

", + "EbsBlockDevice$Iops": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000 - 16,000 IOPS

  • io1: 100 - 64,000 IOPS

  • io2: 100 - 256,000 IOPS

For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

", + "EbsBlockDevice$VolumeSize": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

The following are the supported sizes for each volume type:

  • gp2 and gp3: 1 - 16,384 GiB

  • io1: 4 - 16,384 GiB

  • io2: 4 - 65,536 GiB

  • st1 and sc1: 125 - 16,384 GiB

  • standard: 1 - 1024 GiB

", "EbsBlockDevice$Throughput": "

The throughput that the volume supports, in MiB/s.

This parameter is valid only for gp3 volumes.

Valid Range: Minimum value of 125. Maximum value of 1000.

", - "EnableFastLaunchRequest$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching. Value must be 6 or greater.

", - "EnableFastLaunchResult$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.

", - "FastLaunchSnapshotConfigurationRequest$TargetResourceCount": "

The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI.

", - "FastLaunchSnapshotConfigurationResponse$TargetResourceCount": "

The number of pre-provisioned snapshots requested to keep on hand for a fast-launch enabled Windows AMI.

", + "EnableFastLaunchRequest$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows fast launch. Value must be 6 or greater.

", + "EnableFastLaunchResult$MaxParallelLaunches": "

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows fast launch.

", + "FastLaunchSnapshotConfigurationRequest$TargetResourceCount": "

The number of pre-provisioned snapshots to keep on hand for a Windows fast launch enabled AMI.

", + "FastLaunchSnapshotConfigurationResponse$TargetResourceCount": "

The number of pre-provisioned snapshots requested to keep on hand for a Windows fast launch enabled AMI.

", "FleetCapacityReservation$TotalInstanceCount": "

The total number of instances for which the Capacity Reservation reserves capacity.

", "FleetSpotCapacityRebalance$TerminationDelay": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

Required when ReplacementStrategy is set to launch-before-terminate.

Not valid when ReplacementStrategy is set to launch.

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", "FleetSpotCapacityRebalanceRequest$TerminationDelay": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

Required when ReplacementStrategy is set to launch-before-terminate.

Not valid when ReplacementStrategy is set to launch.

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", @@ -11762,8 +12162,8 @@ "LaunchTemplateEbsBlockDevice$Iops": "

The number of I/O operations per second (IOPS) that the volume supports.

", "LaunchTemplateEbsBlockDevice$VolumeSize": "

The size of the volume, in GiB.

", "LaunchTemplateEbsBlockDevice$Throughput": "

The throughput that the volume supports, in MiB/s.

", - "LaunchTemplateEbsBlockDeviceRequest$Iops": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS.

This parameter is supported for io1, io2, and gp3 volumes only. This parameter is not supported for gp2, st1, sc1, or standard volumes.

", - "LaunchTemplateEbsBlockDeviceRequest$VolumeSize": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

", + "LaunchTemplateEbsBlockDeviceRequest$Iops": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000 - 16,000 IOPS

  • io1: 100 - 64,000 IOPS

  • io2: 100 - 256,000 IOPS

For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

This parameter is supported for io1, io2, and gp3 volumes only.

", + "LaunchTemplateEbsBlockDeviceRequest$VolumeSize": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1 - 16,384 GiB

  • io1: 4 - 16,384 GiB

  • io2: 4 - 65,536 GiB

  • st1 and sc1: 125 - 16,384 GiB

  • standard: 1 - 1024 GiB

", "LaunchTemplateEbsBlockDeviceRequest$Throughput": "

The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s.

Valid Range: Minimum value of 125. Maximum value of 1000.

", "LaunchTemplateElasticInferenceAcceleratorResponse$Count": "

The number of elastic inference accelerators to attach to the instance.

Default: 1

", "LaunchTemplateInstanceMetadataOptions$HttpPutResponseHopLimit": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

Default: 1

Possible values: Integers from 1 to 64

", @@ -11807,15 +12207,15 @@ "ModifyTrafficMirrorSessionRequest$PacketLength": "

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet.

For sessions with Network Load Balancer (NLB) traffic mirror targets, the default PacketLength will be set to 8500. Valid values are 1-8500. Setting a PacketLength greater than 8500 will result in an error response.

", "ModifyTrafficMirrorSessionRequest$SessionNumber": "

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

Valid values are 1-32766.

", "ModifyTrafficMirrorSessionRequest$VirtualNetworkId": "

The virtual network ID of the Traffic Mirror session.

", - "ModifyVolumeRequest$Size": "

The target size of the volume, in GiB. The target volume size must be greater than or equal to the existing size of the volume.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

Default: The existing size is retained.

", - "ModifyVolumeRequest$Iops": "

The target IOPS rate of the volume. This parameter is valid only for gp3, io1, and io2 volumes.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

Default: The existing value is retained if you keep the same volume type. If you change the volume type to io1, io2, or gp3, the default is 3,000.

", + "ModifyVolumeRequest$Size": "

The target size of the volume, in GiB. The target volume size must be greater than or equal to the existing size of the volume.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1 - 16,384 GiB

  • io1: 4 - 16,384 GiB

  • io2: 4 - 65,536 GiB

  • st1 and sc1: 125 - 16,384 GiB

  • standard: 1 - 1024 GiB

Default: The existing size is retained.

", + "ModifyVolumeRequest$Iops": "

The target IOPS rate of the volume. This parameter is valid only for gp3, io1, and io2 volumes.

The following are the supported values for each volume type:

  • gp3: 3,000 - 16,000 IOPS

  • io1: 100 - 64,000 IOPS

  • io2: 100 - 256,000 IOPS

For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

Default: The existing value is retained if you keep the same volume type. If you change the volume type to io1, io2, or gp3, the default is 3,000.

", "ModifyVolumeRequest$Throughput": "

The target throughput of the volume, in MiB/s. This parameter is valid only for gp3 volumes. The maximum value is 1,000.

Default: The existing value is retained if the source and target volume type is gp3. Otherwise, the default value is 125.

Valid Range: Minimum value of 125. Maximum value of 1000.

", "ModifyVpnTunnelOptionsSpecification$Phase1LifetimeSeconds": "

The lifetime for phase 1 of the IKE negotiation, in seconds.

Constraints: A value between 900 and 28,800.

Default: 28800

", "ModifyVpnTunnelOptionsSpecification$Phase2LifetimeSeconds": "

The lifetime for phase 2 of the IKE negotiation, in seconds.

Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds.

Default: 3600

", "ModifyVpnTunnelOptionsSpecification$RekeyMarginTimeSeconds": "

The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage.

Constraints: A value between 60 and half of Phase2LifetimeSeconds.

Default: 540

", "ModifyVpnTunnelOptionsSpecification$RekeyFuzzPercentage": "

The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during which the rekey time is randomly selected.

Constraints: A value between 0 and 100.

Default: 100

", "ModifyVpnTunnelOptionsSpecification$ReplayWindowSize": "

The number of packets in an IKE replay window.

Constraints: A value between 64 and 2048.

Default: 1024

", - "ModifyVpnTunnelOptionsSpecification$DPDTimeoutSeconds": "

The number of seconds after which a DPD timeout occurs.

Constraints: A value greater than or equal to 30.

Default: 30

", + "ModifyVpnTunnelOptionsSpecification$DPDTimeoutSeconds": "

The number of seconds after which a DPD timeout occurs. A DPD timeout of 40 seconds means that the VPN endpoint will consider the peer dead 30 seconds after the first failed keep-alive.

Constraints: A value greater than or equal to 30.

Default: 40

", "NetworkAclEntry$RuleNumber": "

The rule number for the entry. ACL entries are processed in ascending order by rule number.

", "NetworkInsightsAccessScopeAnalysis$AnalyzedEniCount": "

The number of network interfaces analyzed.

", "NetworkInsightsPath$DestinationPort": "

The destination port.

", @@ -11873,7 +12273,7 @@ "ScheduledInstanceAvailability$TotalScheduledInstanceHours": "

The total number of hours for a single instance for the entire term.

", "ScheduledInstanceRecurrence$Interval": "

The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.

", "ScheduledInstanceRecurrenceRequest$Interval": "

The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.

", - "ScheduledInstancesEbs$Iops": "

The number of I/O operations per second (IOPS) to provision for an io1 or io2 volume, with a maximum ratio of 50 IOPS/GiB for io1, and 500 IOPS/GiB for io2. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum IOPS of 64,000 is guaranteed only on instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide.

This parameter is valid only for Provisioned IOPS SSD (io1 and io2) volumes.

", + "ScheduledInstancesEbs$Iops": "

The number of I/O operations per second (IOPS) to provision for a gp3, io1, or io2 volume.

", "ScheduledInstancesEbs$VolumeSize": "

The size of the volume, in GiB.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

", "ScheduledInstancesNetworkInterface$DeviceIndex": "

The index of the device for the network interface attachment.

", "ScheduledInstancesNetworkInterface$Ipv6AddressCount": "

The number of IPv6 addresses to assign to the network interface. The IPv6 addresses are automatically selected from the subnet range.

", @@ -12171,6 +12571,18 @@ "GetIpamDiscoveredAccountsResult$IpamDiscoveredAccounts": "

Discovered accounts.

" } }, + "IpamDiscoveredPublicAddress": { + "base": "

A public IP Address discovered by IPAM.

", + "refs": { + "IpamDiscoveredPublicAddressSet$member": null + } + }, + "IpamDiscoveredPublicAddressSet": { + "base": null, + "refs": { + "GetIpamDiscoveredPublicAddressesResult$IpamDiscoveredPublicAddresses": "

IPAM discovered public addresses.

" + } + }, "IpamDiscoveredResourceCidr": { "base": "

An IPAM discovered resource CIDR. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses. The discovered resource CIDR is the IP address range in CIDR notation that is associated with the resource.

", "refs": { @@ -12199,12 +12611,15 @@ "base": null, "refs": { "AssociateIpamResourceDiscoveryRequest$IpamId": "

An IPAM ID.

", + "Byoasn$IpamId": "

An IPAM ID.

", "CreateIpamScopeRequest$IpamId": "

The ID of the IPAM for which you're creating this scope.

", "DeleteIpamRequest$IpamId": "

The ID of the IPAM to delete.

", + "DeprovisionIpamByoasnRequest$IpamId": "

The IPAM ID.

", "Ipam$IpamId": "

The ID of the IPAM.

", "IpamResourceCidr$IpamId": "

The IPAM ID for an IPAM resource.

", "IpamResourceDiscoveryAssociation$IpamId": "

The IPAM ID.

", - "ModifyIpamRequest$IpamId": "

The ID of the IPAM you want to modify.

" + "ModifyIpamRequest$IpamId": "

The ID of the IPAM you want to modify.

", + "ProvisionIpamByoasnRequest$IpamId": "

An IPAM ID.

" } }, "IpamManagementState": { @@ -12222,6 +12637,7 @@ "DescribeIpamScopesRequest$MaxResults": "

The maximum number of results to return in the request.

", "DescribeIpamsRequest$MaxResults": "

The maximum number of results to return in the request.

", "GetIpamDiscoveredAccountsRequest$MaxResults": "

The maximum number of discovered accounts to return in one page of results.

", + "GetIpamDiscoveredPublicAddressesRequest$MaxResults": "

The maximum number of IPAM discovered public addresses to return in one page of results.

", "GetIpamDiscoveredResourceCidrsRequest$MaxResults": "

The maximum number of discovered resource CIDRs to return in one page of results.

", "GetIpamPoolCidrsRequest$MaxResults": "

The maximum number of results to return in the request.

", "GetIpamResourceCidrsRequest$MaxResults": "

The maximum number of results to return in the request.

" @@ -12277,6 +12693,12 @@ "IpamPoolAllocationSet$member": null } }, + "IpamPoolAllocationAllowedCidrs": { + "base": null, + "refs": { + "AllocateIpamPoolCidrRequest$AllowedCidrs": "

Include a particular CIDR range that can be returned by the pool. Allowed CIDRs are only allowed if using netmask length for allocation.

" + } + }, "IpamPoolAllocationDisallowedCidrs": { "base": null, "refs": { @@ -12352,9 +12774,12 @@ "base": null, "refs": { "AllocateIpamPoolCidrRequest$IpamPoolId": "

The ID of the IPAM pool from which you would like to allocate a CIDR.

", + "AssociateSubnetCidrBlockRequest$Ipv6IpamPoolId": "

An IPv6 IPAM pool ID.

", "AssociateVpcCidrBlockRequest$Ipv4IpamPoolId": "

Associate a CIDR allocated from an IPv4 IPAM pool to a VPC. For more information about Amazon VPC IP Address Manager (IPAM), see What is IPAM? in the Amazon VPC IPAM User Guide.

", "AssociateVpcCidrBlockRequest$Ipv6IpamPoolId": "

Associates a CIDR allocated from an IPv6 IPAM pool to a VPC. For more information about Amazon VPC IP Address Manager (IPAM), see What is IPAM? in the Amazon VPC IPAM User Guide.

", "CreateIpamPoolRequest$SourceIpamPoolId": "

The ID of the source IPAM pool. Use this option to create a pool within an existing pool. Note that the CIDR you provision for the pool within the source pool must be available in the source pool's CIDR range.

", + "CreateSubnetRequest$Ipv4IpamPoolId": "

An IPv4 IPAM pool ID for the subnet.

", + "CreateSubnetRequest$Ipv6IpamPoolId": "

An IPv6 IPAM pool ID for the subnet.

", "CreateVpcRequest$Ipv4IpamPoolId": "

The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

", "CreateVpcRequest$Ipv6IpamPoolId": "

The ID of an IPv6 IPAM pool which will be used to allocate this VPC an IPv6 CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

", "DeleteIpamPoolRequest$IpamPoolId": "

The ID of the pool to delete.

", @@ -12385,12 +12810,79 @@ "DescribeIpamPoolsResult$IpamPools": "

Information about the IPAM pools.

" } }, + "IpamPoolSourceResource": { + "base": "

The resource used to provision CIDRs to a resource planning pool.

", + "refs": { + "IpamPool$SourceResource": null + } + }, + "IpamPoolSourceResourceRequest": { + "base": "

The resource used to provision CIDRs to a resource planning pool.

", + "refs": { + "CreateIpamPoolRequest$SourceResource": "

The resource used to provision CIDRs to a resource planning pool.

" + } + }, + "IpamPoolSourceResourceType": { + "base": null, + "refs": { + "IpamPoolSourceResource$ResourceType": "

The source resource type.

", + "IpamPoolSourceResourceRequest$ResourceType": "

The source resource type.

" + } + }, "IpamPoolState": { "base": null, "refs": { "IpamPool$State": "

The state of the IPAM pool.

" } }, + "IpamPublicAddressAssociationStatus": { + "base": null, + "refs": { + "IpamDiscoveredPublicAddress$AssociationStatus": "

The association status.

" + } + }, + "IpamPublicAddressAwsService": { + "base": null, + "refs": { + "IpamDiscoveredPublicAddress$Service": "

The Amazon Web Services service associated with the IP address.

" + } + }, + "IpamPublicAddressSecurityGroup": { + "base": "

The security group that the resource with the public IP address is in.

", + "refs": { + "IpamPublicAddressSecurityGroupList$member": null + } + }, + "IpamPublicAddressSecurityGroupList": { + "base": null, + "refs": { + "IpamDiscoveredPublicAddress$SecurityGroups": "

Security groups associated with the resource that the IP address is assigned to.

" + } + }, + "IpamPublicAddressTag": { + "base": "

A tag for a public IP address discovered by IPAM.

", + "refs": { + "IpamPublicAddressTagList$member": null + } + }, + "IpamPublicAddressTagList": { + "base": null, + "refs": { + "IpamPublicAddressTags$EipTags": "

Tags for an Elastic IP address.

" + } + }, + "IpamPublicAddressTags": { + "base": "

Tags for a public IP address discovered by IPAM.

", + "refs": { + "IpamDiscoveredPublicAddress$Tags": "

Tags associated with the IP address.

" + } + }, + "IpamPublicAddressType": { + "base": null, + "refs": { + "IpamDiscoveredPublicAddress$AddressType": "

The IP address type.

" + } + }, "IpamResourceCidr": { "base": "

The CIDR for an IPAM resource.

", "refs": { @@ -12447,8 +12939,10 @@ "AssociateIpamResourceDiscoveryRequest$IpamResourceDiscoveryId": "

A resource discovery ID.

", "DeleteIpamResourceDiscoveryRequest$IpamResourceDiscoveryId": "

The IPAM resource discovery ID.

", "GetIpamDiscoveredAccountsRequest$IpamResourceDiscoveryId": "

A resource discovery ID.

", + "GetIpamDiscoveredPublicAddressesRequest$IpamResourceDiscoveryId": "

An IPAM resource discovery ID.

", "GetIpamDiscoveredResourceCidrsRequest$IpamResourceDiscoveryId": "

A resource discovery ID.

", "Ipam$DefaultResourceDiscoveryId": "

The IPAM's default resource discovery ID.

", + "IpamDiscoveredPublicAddress$IpamResourceDiscoveryId": "

The resource discovery ID.

", "IpamDiscoveredResourceCidr$IpamResourceDiscoveryId": "

The resource discovery ID.

", "IpamResourceDiscovery$IpamResourceDiscoveryId": "

The resource discovery ID.

", "IpamResourceDiscoveryAssociation$IpamResourceDiscoveryId": "

The resource discovery ID.

", @@ -12545,6 +13039,14 @@ "Ipam$State": "

The state of the IPAM.

" } }, + "IpamTier": { + "base": null, + "refs": { + "CreateIpamRequest$Tier": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

", + "Ipam$Tier": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

", + "ModifyIpamRequest$Tier": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

" + } + }, "Ipv4PoolCoipId": { "base": null, "refs": { @@ -12817,6 +13319,13 @@ "KeyPairInfo$KeyType": "

The type of key pair.

" } }, + "KmsKeyArn": { + "base": null, + "refs": { + "VerifiedAccessSseSpecificationRequest$KmsKeyArn": "

The ARN of the KMS key.

", + "VerifiedAccessSseSpecificationResponse$KmsKeyArn": "

The ARN of the KMS key.

" + } + }, "KmsKeyId": { "base": null, "refs": { @@ -12982,7 +13491,7 @@ "LaunchTemplateElasticInferenceAcceleratorList": { "base": null, "refs": { - "RequestLaunchTemplateData$ElasticInferenceAccelerators": "

The elastic inference accelerator for the instance.

" + "RequestLaunchTemplateData$ElasticInferenceAccelerators": "

An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads.

You cannot specify accelerators from different generations in the same request.

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.

" } }, "LaunchTemplateElasticInferenceAcceleratorResponse": { @@ -12994,7 +13503,19 @@ "LaunchTemplateElasticInferenceAcceleratorResponseList": { "base": null, "refs": { - "ResponseLaunchTemplateData$ElasticInferenceAccelerators": "

The elastic inference accelerator for the instance.

" + "ResponseLaunchTemplateData$ElasticInferenceAccelerators": "

An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads.

You cannot specify accelerators from different generations in the same request.

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.

" + } + }, + "LaunchTemplateEnaSrdSpecification": { + "base": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

", + "refs": { + "LaunchTemplateInstanceNetworkInterfaceSpecification$EnaSrdSpecification": "

Contains the ENA Express settings for instances launched from your launch template.

" + } + }, + "LaunchTemplateEnaSrdUdpSpecification": { + "base": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

", + "refs": { + "LaunchTemplateEnaSrdSpecification$EnaSrdUdpSpecification": "

Configures ENA Express for UDP network traffic.

" } }, "LaunchTemplateEnclaveOptions": { @@ -13053,8 +13574,8 @@ "DeleteLaunchTemplateRequest$LaunchTemplateId": "

The ID of the launch template.

You must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

", "DeleteLaunchTemplateVersionsRequest$LaunchTemplateId": "

The ID of the launch template.

You must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

", "DescribeLaunchTemplateVersionsRequest$LaunchTemplateId": "

The ID of the launch template.

To describe one or more versions of a specified launch template, you must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

To describe all the latest or default launch template versions in your account, you must omit this parameter.

", - "FastLaunchLaunchTemplateSpecificationRequest$LaunchTemplateId": "

The ID of the launch template to use for faster launching for a Windows AMI.

", - "FastLaunchLaunchTemplateSpecificationResponse$LaunchTemplateId": "

The ID of the launch template for faster launching of the associated Windows AMI.

", + "FastLaunchLaunchTemplateSpecificationRequest$LaunchTemplateId": "

Specify the ID of the launch template that the AMI should use for Windows fast launch.

", + "FastLaunchLaunchTemplateSpecificationResponse$LaunchTemplateId": "

The ID of the launch template that the AMI uses for Windows fast launch.

", "FleetLaunchTemplateSpecificationRequest$LaunchTemplateId": "

The ID of the launch template.

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

", "LaunchTemplateIdStringList$member": null, "LaunchTemplateSpecification$LaunchTemplateId": "

The ID of the launch template.

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

", @@ -13676,6 +14197,41 @@ "InstanceTypeOffering$LocationType": "

The location type.

" } }, + "LockMode": { + "base": null, + "refs": { + "LockSnapshotRequest$LockMode": "

The mode in which to lock the snapshot. Specify one of the following:

  • governance - Locks the snapshot in governance mode. Snapshots locked in governance mode can't be deleted until one of the following conditions are met:

    • The lock duration expires.

    • The snapshot is unlocked by a user with the appropriate permissions.

    Users with the appropriate IAM permissions can unlock the snapshot, increase or decrease the lock duration, and change the lock mode to compliance at any time.

    If you lock a snapshot in governance mode, omit CoolOffPeriod.

  • compliance - Locks the snapshot in compliance mode. Snapshots locked in compliance mode can't be unlocked by any user. They can be deleted only after the lock duration expires. Users can't decrease the lock duration or change the lock mode to governance. However, users with appropriate IAM permissions can increase the lock duration at any time.

    If you lock a snapshot in compliance mode, you can optionally specify CoolOffPeriod.

" + } + }, + "LockSnapshotRequest": { + "base": null, + "refs": { + } + }, + "LockSnapshotResult": { + "base": null, + "refs": { + } + }, + "LockState": { + "base": null, + "refs": { + "LockSnapshotResult$LockState": "

The state of the snapshot lock. Valid states include:

  • compliance-cooloff - The snapshot has been locked in compliance mode but it is still within the cooling-off period. The snapshot can't be deleted, but it can be unlocked and the lock settings can be modified by users with appropriate permissions.

  • governance - The snapshot is locked in governance mode. The snapshot can't be deleted, but it can be unlocked and the lock settings can be modified by users with appropriate permissions.

  • compliance - The snapshot is locked in compliance mode and the cooling-off period has expired. The snapshot can't be unlocked or deleted. The lock duration can only be increased by users with appropriate permissions.

  • expired - The snapshot was locked in compliance or governance mode but the lock duration has expired. The snapshot is not locked and can be deleted.

", + "LockedSnapshotsInfo$LockState": "

The state of the snapshot lock. Valid states include:

  • compliance-cooloff - The snapshot has been locked in compliance mode but it is still within the cooling-off period. The snapshot can't be deleted, but it can be unlocked and the lock settings can be modified by users with appropriate permissions.

  • governance - The snapshot is locked in governance mode. The snapshot can't be deleted, but it can be unlocked and the lock settings can be modified by users with appropriate permissions.

  • compliance - The snapshot is locked in compliance mode and the cooling-off period has expired. The snapshot can't be unlocked or deleted. The lock duration can only be increased by users with appropriate permissions.

  • expired - The snapshot was locked in compliance or governance mode but the lock duration has expired. The snapshot is not locked and can be deleted.

" + } + }, + "LockedSnapshotsInfo": { + "base": "

Information about a locked snapshot.

", + "refs": { + "LockedSnapshotsInfoList$member": null + } + }, + "LockedSnapshotsInfoList": { + "base": null, + "refs": { + "DescribeLockedSnapshotsResult$Snapshots": "

Information about the snapshots.

" + } + }, "LogDestinationType": { "base": null, "refs": { @@ -13882,13 +14438,17 @@ "AddressTransfer$TransferOfferAcceptedTimestamp": "

The timestamp when the Elastic IP address transfer was accepted.

", "AthenaIntegration$PartitionStartDate": "

The start date for the partition.

", "AthenaIntegration$PartitionEndDate": "

The end date for the partition.

", + "CapacityBlockOffering$StartDate": "

The start date of the Capacity Block offering.

", + "CapacityBlockOffering$EndDate": "

The end date of the Capacity Block offering.

", "CapacityReservation$StartDate": "

The date and time at which the Capacity Reservation was started.

", "CapacityReservationFleet$EndDate": "

The date and time at which the Capacity Reservation Fleet expires.

", "CapacityReservationFleet$CreateTime": "

The date and time at which the Capacity Reservation Fleet was created.

", "CreateCapacityReservationFleetRequest$EndDate": "

The date and time at which the Capacity Reservation Fleet expires. When the Capacity Reservation Fleet expires, its state changes to expired and all of the Capacity Reservations in the Fleet expire.

The Capacity Reservation Fleet expires within an hour after the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation Fleet is guaranteed to expire between 13:30:55 and 14:30:55 on 5/31/2019.

", "CreateCapacityReservationFleetResult$CreateTime": "

The date and time at which the Capacity Reservation Fleet was created.

", "CreateCapacityReservationFleetResult$EndDate": "

The date and time at which the Capacity Reservation Fleet expires.

", - "DescribeFastLaunchImagesSuccessItem$StateTransitionTime": "

The time that faster launching for the Windows AMI changed to the current state.

", + "DescribeCapacityBlockOfferingsRequest$StartDateRange": "

The earliest start date for the Capacity Block offering.

", + "DescribeCapacityBlockOfferingsRequest$EndDateRange": "

The latest end date for the Capacity Block offering.

", + "DescribeFastLaunchImagesSuccessItem$StateTransitionTime": "

The time that Windows fast launch for the AMI changed to the current state.

", "DescribeFastSnapshotRestoreSuccessItem$EnablingTime": "

The time at which fast snapshot restores entered the enabling state.

", "DescribeFastSnapshotRestoreSuccessItem$OptimizingTime": "

The time at which fast snapshot restores entered the optimizing state.

", "DescribeFastSnapshotRestoreSuccessItem$EnabledTime": "

The time at which fast snapshot restores entered the enabled state.

", @@ -13898,14 +14458,14 @@ "DescribeNetworkInsightsAccessScopeAnalysesRequest$AnalysisStartTimeEnd": "

Filters the results based on the start time. The analysis must have started on or before this time.

", "DescribeNetworkInsightsAnalysesRequest$AnalysisStartTime": "

The time when the network insights analyses started.

", "DescribeNetworkInsightsAnalysesRequest$AnalysisEndTime": "

The time when the network insights analyses ended.

", - "DisableFastLaunchResult$StateTransitionTime": "

The time that the state changed for faster launching for the Windows AMI.

", + "DisableFastLaunchResult$StateTransitionTime": "

The time that the state changed for Windows fast launch for the Windows AMI.

", "DisableFastSnapshotRestoreSuccessItem$EnablingTime": "

The time at which fast snapshot restores entered the enabling state.

", "DisableFastSnapshotRestoreSuccessItem$OptimizingTime": "

The time at which fast snapshot restores entered the optimizing state.

", "DisableFastSnapshotRestoreSuccessItem$EnabledTime": "

The time at which fast snapshot restores entered the enabled state.

", "DisableFastSnapshotRestoreSuccessItem$DisablingTime": "

The time at which fast snapshot restores entered the disabling state.

", "DisableFastSnapshotRestoreSuccessItem$DisabledTime": "

The time at which fast snapshot restores entered the disabled state.

", "Ec2InstanceConnectEndpoint$CreatedAt": "

The date and time that the EC2 Instance Connect Endpoint was created.

", - "EnableFastLaunchResult$StateTransitionTime": "

The time that the state changed for faster launching for the Windows AMI.

", + "EnableFastLaunchResult$StateTransitionTime": "

The time that the state changed for Windows fast launch for the AMI.

", "EnableFastSnapshotRestoreSuccessItem$EnablingTime": "

The time at which fast snapshot restores entered the enabling state.

", "EnableFastSnapshotRestoreSuccessItem$OptimizingTime": "

The time at which fast snapshot restores entered the optimizing state.

", "EnableFastSnapshotRestoreSuccessItem$EnabledTime": "

The time at which fast snapshot restores entered the enabled state.

", @@ -13918,6 +14478,7 @@ "GetAwsNetworkPerformanceDataRequest$EndTime": "

The ending time for the performance data request. The end time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

", "GetIpamAddressHistoryRequest$StartTime": "

The start of the time period for which you are looking for history. If you omit this option, it will default to the value of EndTime.

", "GetIpamAddressHistoryRequest$EndTime": "

The end of the time period for which you are looking for history. If you omit this option, it will default to the current time.

", + "GetIpamDiscoveredPublicAddressesResult$OldestSampleTime": "

The oldest successful resource discovery time.

", "ImageRecycleBinInfo$RecycleBinEnterTime": "

The date and time when the AMI entered the Recycle Bin.

", "ImageRecycleBinInfo$RecycleBinExitTime": "

The date and time when the AMI is to be permanently deleted from the Recycle Bin.

", "Instance$UsageOperationUpdateTime": "

The time that the usage operation was last updated.

", @@ -13925,8 +14486,18 @@ "IpamAddressHistoryRecord$SampledEndTime": "

Sampled end time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the end time may have occurred before this specific time.

", "IpamDiscoveredAccount$LastAttemptedDiscoveryTime": "

The last attempted resource discovery time.

", "IpamDiscoveredAccount$LastSuccessfulDiscoveryTime": "

The last successful resource discovery time.

", + "IpamDiscoveredPublicAddress$SampleTime": "

The last successful resource discovery time.

", "IpamDiscoveredResourceCidr$SampleTime": "

The last successful resource discovery time.

", "KeyPairInfo$CreateTime": "

If you used Amazon EC2 to create the key pair, this is the date and time when the key was created, in ISO 8601 date-time format, in the UTC time zone.

If you imported an existing key pair to Amazon EC2, this is the date and time the key was imported, in ISO 8601 date-time format, in the UTC time zone.

", + "LockSnapshotRequest$ExpirationDate": "

The date and time at which the snapshot lock is to automatically expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

You must specify either this parameter or LockDuration, but not both.

", + "LockSnapshotResult$CoolOffPeriodExpiresOn": "

The date and time at which the compliance mode cooling-off period expires, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "LockSnapshotResult$LockCreatedOn": "

The date and time at which the snapshot was locked, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "LockSnapshotResult$LockExpiresOn": "

The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "LockSnapshotResult$LockDurationStartTime": "

The date and time at which the lock duration started, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "LockedSnapshotsInfo$CoolOffPeriodExpiresOn": "

The date and time at which the compliance mode cooling-off period expires, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "LockedSnapshotsInfo$LockCreatedOn": "

The date and time at which the snapshot was locked, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "LockedSnapshotsInfo$LockDurationStartTime": "

The date and time at which the lock duration started, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

If you lock a snapshot that is in the pending state, the lock duration starts only once the snapshot enters the completed state.

", + "LockedSnapshotsInfo$LockExpiresOn": "

The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", "MaintenanceDetails$MaintenanceAutoAppliedAfter": "

The timestamp after which Amazon Web Services will automatically apply maintenance.

", "MaintenanceDetails$LastMaintenanceApplied": "

Timestamp of last applied maintenance.

", "MetricPoint$StartDate": "

The start date for the metric point. The starting date for the metric point. The starting time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

", @@ -14447,6 +15018,12 @@ "refs": { } }, + "ModifyVerifiedAccessTrustProviderDeviceOptions": { + "base": "

Modifies the configuration of the specified device-based Amazon Web Services Verified Access trust provider.

", + "refs": { + "ModifyVerifiedAccessTrustProviderRequest$DeviceOptions": "

The options for a device-based trust provider. This parameter is required when the provider type is device.

" + } + }, "ModifyVerifiedAccessTrustProviderOidcOptions": { "base": "

Options for an OpenID Connect-compatible user-identity trust provider.

", "refs": { @@ -14734,8 +15311,11 @@ "NetmaskLength": { "base": null, "refs": { + "AssociateSubnetCidrBlockRequest$Ipv6NetmaskLength": "

An IPv6 netmask length.

", "AssociateVpcCidrBlockRequest$Ipv4NetmaskLength": "

The netmask length of the IPv4 CIDR you would like to associate from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

", "AssociateVpcCidrBlockRequest$Ipv6NetmaskLength": "

The netmask length of the IPv6 CIDR you would like to associate from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

", + "CreateSubnetRequest$Ipv4NetmaskLength": "

An IPv4 netmask length for the subnet.

", + "CreateSubnetRequest$Ipv6NetmaskLength": "

An IPv6 netmask length for the subnet.

", "CreateVpcRequest$Ipv4NetmaskLength": "

The netmask length of the IPv4 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

", "CreateVpcRequest$Ipv6NetmaskLength": "

The netmask length of the IPv6 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } @@ -15168,6 +15748,12 @@ "NetworkInterface$InterfaceType": "

The type of network interface.

" } }, + "NetworkNodesList": { + "base": null, + "refs": { + "InstanceTopology$NetworkNodes": "

The network nodes. The nodes are hashed based on your account. Instances from different accounts running under the same droplet will return a different hashed list of strings.

" + } + }, "NetworkPerformance": { "base": null, "refs": { @@ -15219,6 +15805,7 @@ "DescribeInstanceTypeOfferingsResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "DescribeInstanceTypesRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "DescribeInstanceTypesResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "DescribeIpamByoasnRequest$NextToken": "

The token for the next page of results.

", "DescribeIpamPoolsRequest$NextToken": "

The token for the next page of results.

", "DescribeIpamPoolsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeIpamResourceDiscoveriesRequest$NextToken": "

Specify the pagination token from a previous request to retrieve the next page of results.

", @@ -15257,6 +15844,8 @@ "GetIpamAddressHistoryResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "GetIpamDiscoveredAccountsRequest$NextToken": "

Specify the pagination token from a previous request to retrieve the next page of results.

", "GetIpamDiscoveredAccountsResult$NextToken": "

Specify the pagination token from a previous request to retrieve the next page of results.

", + "GetIpamDiscoveredPublicAddressesRequest$NextToken": "

The token for the next page of results.

", + "GetIpamDiscoveredPublicAddressesResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "GetIpamDiscoveredResourceCidrsRequest$NextToken": "

Specify the pagination token from a previous request to retrieve the next page of results.

", "GetIpamDiscoveredResourceCidrsResult$NextToken": "

Specify the pagination token from a previous request to retrieve the next page of results.

", "GetIpamPoolAllocationsRequest$NextToken": "

The token for the next page of results.

", @@ -15327,10 +15916,12 @@ "OfferingId": { "base": null, "refs": { + "CapacityBlockOffering$CapacityBlockOfferingId": "

The ID of the Capacity Block offering.

", "DescribeHostReservationOfferingsRequest$OfferingId": "

The ID of the reservation offering.

", "GetHostReservationPurchasePreviewRequest$OfferingId": "

The offering ID of the reservation.

", "HostOffering$OfferingId": "

The ID of the offering.

", "HostReservation$OfferingId": "

The ID of the reservation. This remains the same regardless of which Dedicated Hosts are associated with it.

", + "PurchaseCapacityBlockRequest$CapacityBlockOfferingId": "

The ID of the Capacity Block offering.

", "PurchaseHostReservationRequest$OfferingId": "

The ID of the offering.

" } }, @@ -15745,6 +16336,7 @@ "base": null, "refs": { "DeletePlacementGroupRequest$GroupName": "

The name of the placement group.

", + "DescribeInstanceTopologyGroupNameSet$member": null, "LaunchTemplatePlacementRequest$GroupName": "

The name of the placement group for the instance.

", "ModifyInstancePlacementRequest$GroupName": "

The name of the placement group in which to place the instance. For spread placement groups, the instance must have a tenancy of default. For cluster and partition placement groups, the instance must have a tenancy of default or dedicated.

To remove an instance from a placement group, specify an empty string (\"\").

", "Placement$GroupName": "

The name of the placement group that the instance is in. If you specify GroupName, you can't specify GroupId.

", @@ -15799,7 +16391,7 @@ "Image$Platform": "

This value is set to windows for Windows AMIs; otherwise, it is blank.

", "ImportInstanceRequest$Platform": "

The instance operating system.

", "ImportInstanceTaskDetails$Platform": "

The instance operating system.

", - "Instance$Platform": "

The value is Windows for Windows instances; otherwise blank.

" + "Instance$Platform": "

The platform. This value is windows for Windows instances; otherwise, it is empty.

" } }, "PoolCidrBlock": { @@ -16197,6 +16789,16 @@ "refs": { } }, + "ProvisionIpamByoasnRequest": { + "base": null, + "refs": { + } + }, + "ProvisionIpamByoasnResult": { + "base": null, + "refs": { + } + }, "ProvisionIpamPoolCidrRequest": { "base": null, "refs": { @@ -16279,6 +16881,16 @@ "PurchaseSet$member": null } }, + "PurchaseCapacityBlockRequest": { + "base": null, + "refs": { + } + }, + "PurchaseCapacityBlockResult": { + "base": null, + "refs": { + } + }, "PurchaseHostReservationRequest": { "base": null, "refs": { @@ -17096,7 +17708,7 @@ "base": null, "refs": { "LaunchTemplateTagSpecification$ResourceType": "

The type of resource to tag.

", - "LaunchTemplateTagSpecificationRequest$ResourceType": "

The type of resource to tag.

The Valid Values are all the resource types that can be tagged. However, when creating a launch template, you can specify tags for the following resource types only: instance | volume | elastic-gpu | network-interface | spot-instances-request

To tag a resource after it has been created, see CreateTags.

", + "LaunchTemplateTagSpecificationRequest$ResourceType": "

The type of resource to tag.

Valid Values lists all resource types for Amazon EC2 that can be tagged. When you create a launch template, you can specify tags for the following resource types only: instance | volume | elastic-gpu | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include an Elastic GPU.

To tag a resource after it has been created, see CreateTags.

", "SpotFleetTagSpecification$ResourceType": "

The type of resource. Currently, the only resource type that is supported is instance. To tag the Spot Fleet request on creation, use the TagSpecifications parameter in SpotFleetRequestConfigData .

", "TagDescription$ResourceType": "

The resource type.

", "TagSpecification$ResourceType": "

The type of resource to tag on creation.

" @@ -17198,6 +17810,19 @@ "DescribeInstanceEventWindowsRequest$MaxResults": "

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 20 and 500. You cannot specify this parameter and the event window IDs parameter in the same call.

" } }, + "RetentionPeriodRequestDays": { + "base": null, + "refs": { + "LockSnapshotRequest$LockDuration": "

The period of time for which to lock the snapshot, in days. The snapshot lock will automatically expire after this period lapses.

You must specify either this parameter or ExpirationDate, but not both.

Allowed values: Min: 1, max 36500

" + } + }, + "RetentionPeriodResponseDays": { + "base": null, + "refs": { + "LockSnapshotResult$LockDuration": "

The period of time for which the snapshot is locked, in days.

", + "LockedSnapshotsInfo$LockDuration": "

The period of time for which the snapshot is locked, in days.

" + } + }, "RevokeClientVpnIngressRequest": { "base": null, "refs": { @@ -17625,6 +18250,18 @@ "SecurityGroupList$member": null } }, + "SecurityGroupForVpc": { + "base": "

A security group that can be used by interfaces in the VPC.

", + "refs": { + "SecurityGroupForVpcList$member": null + } + }, + "SecurityGroupForVpcList": { + "base": null, + "refs": { + "GetSecurityGroupsForVpcResult$SecurityGroupForVpcs": "

The security group that can be used by interfaces in the VPC.

" + } + }, "SecurityGroupId": { "base": null, "refs": { @@ -17653,7 +18290,7 @@ "SecurityGroupIdList": { "base": null, "refs": { - "CreateVerifiedAccessEndpointRequest$SecurityGroupIds": "

The IDs of the security groups to associate with the Verified Access endpoint.

", + "CreateVerifiedAccessEndpointRequest$SecurityGroupIds": "

The IDs of the security groups to associate with the Verified Access endpoint. Required if AttachmentType is set to vpc.

", "VerifiedAccessEndpoint$SecurityGroupIds": "

The IDs of the security groups for the endpoint.

" } }, @@ -17671,7 +18308,7 @@ "InstanceNetworkInterfaceSpecification$Groups": "

The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

", "LaunchTemplateInstanceNetworkInterfaceSpecificationRequest$Groups": "

The IDs of one or more security groups.

", "ModifyNetworkInterfaceAttributeRequest$Groups": "

Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

", - "RequestLaunchTemplateData$SecurityGroupIds": "

One or more security group IDs. You can create a security group using CreateSecurityGroup. You cannot specify both a security group ID and security name in the same request.

", + "RequestLaunchTemplateData$SecurityGroupIds": "

One or more security group IDs. You can create a security group using CreateSecurityGroup.

", "RunInstancesRequest$SecurityGroupIds": "

The IDs of the security groups. You can create a security group using CreateSecurityGroup.

If you specify a network interface, you must specify any security groups as part of the network interface.

" } }, @@ -17717,6 +18354,17 @@ "DescribeSecurityGroupReferencesResult$SecurityGroupReferenceSet": "

Information about the VPCs with the referencing security groups.

" } }, + "SecurityGroupReferencingSupportValue": { + "base": null, + "refs": { + "CreateTransitGatewayVpcAttachmentRequestOptions$SecurityGroupReferencingSupport": "

Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

If you don't enable or disable SecurityGroupReferencingSupport in the request, the attachment will inherit the security group referencing support setting on the transit gateway.

For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.

", + "ModifyTransitGatewayOptions$SecurityGroupReferencingSupport": "

Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

For important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.

", + "ModifyTransitGatewayVpcAttachmentRequestOptions$SecurityGroupReferencingSupport": "

Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.

", + "TransitGatewayOptions$SecurityGroupReferencingSupport": "

Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

For important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.

", + "TransitGatewayRequestOptions$SecurityGroupReferencingSupport": "

Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

For important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.

", + "TransitGatewayVpcAttachmentOptions$SecurityGroupReferencingSupport": "

For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.

" + } + }, "SecurityGroupRule": { "base": "

Describes a security group rule.

", "refs": { @@ -17781,7 +18429,7 @@ "base": null, "refs": { "ImportInstanceLaunchSpecification$GroupNames": "

The security group names.

", - "RequestLaunchTemplateData$SecurityGroups": "

One or more security group names. For a nondefault VPC, you must use security group IDs instead. You cannot specify both a security group ID and security name in the same request.

", + "RequestLaunchTemplateData$SecurityGroups": "

One or more security group names. For a nondefault VPC, you must use security group IDs instead.

", "RunInstancesRequest$SecurityGroups": "

[Default VPC] The names of the security groups.

If you specify a network interface, you must specify any security groups as part of the network interface.

Default: Amazon EC2 uses the default security group.

" } }, @@ -17908,6 +18556,15 @@ "ResetSnapshotAttributeRequest$Attribute": "

The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.

" } }, + "SnapshotBlockPublicAccessState": { + "base": null, + "refs": { + "DisableSnapshotBlockPublicAccessResult$State": "

Returns unblocked if the request succeeds.

", + "EnableSnapshotBlockPublicAccessRequest$State": "

The mode in which to enable block public access for snapshots for the Region. Specify one of the following values:

  • block-all-sharing - Prevents all public sharing of snapshots in the Region. Users in the account will no longer be able to request new public sharing. Additionally, snapshots that are already publicly shared are treated as private and they are no longer publicly available.

    If you enable block public access for snapshots in block-all-sharing mode, it does not change the permissions for snapshots that are already publicly shared. Instead, it prevents these snapshots from be publicly visible and publicly accessible. Therefore, the attributes for these snapshots still indicate that they are publicly shared, even though they are not publicly available.

  • block-new-sharing - Prevents only new public sharing of snapshots in the Region. Users in the account will no longer be able to request new public sharing. However, snapshots that are already publicly shared, remain publicly available.

", + "EnableSnapshotBlockPublicAccessResult$State": "

The state of block public access for snapshots for the account and Region. Returns either block-all-sharing or block-new-sharing if the request succeeds.

", + "GetSnapshotBlockPublicAccessStateResult$State": "

The current state of block public access for snapshots. Possible values include:

  • block-all-sharing - All public sharing of snapshots is blocked. Users in the account can't request new public sharing. Additionally, snapshots that were already publicly shared are treated as private and are not publicly available.

  • block-new-sharing - Only new public sharing of snapshots is blocked. Users in the account can't request new public sharing. However, snapshots that were already publicly shared, remain publicly available.

  • unblocked - Public sharing is not blocked. Users can publicly share snapshots.

" + } + }, "SnapshotDetail": { "base": "

Describes the snapshot created from the imported disk.

", "refs": { @@ -17938,6 +18595,7 @@ "ImageDiskContainer$SnapshotId": "

The ID of the EBS snapshot to be used for importing the snapshot.

", "LaunchTemplateEbsBlockDevice$SnapshotId": "

The ID of the snapshot.

", "LaunchTemplateEbsBlockDeviceRequest$SnapshotId": "

The ID of the snapshot.

", + "LockSnapshotRequest$SnapshotId": "

The ID of the snapshot to lock.

", "ModifySnapshotAttributeRequest$SnapshotId": "

The ID of the snapshot.

", "ModifySnapshotTierRequest$SnapshotId": "

The ID of the snapshot.

", "ReplaceRootVolumeTask$SnapshotId": "

The ID of the snapshot used to create the replacement root volume.

", @@ -17946,12 +18604,14 @@ "RestoreSnapshotTierRequest$SnapshotId": "

The ID of the snapshot to restore.

", "ScheduledInstancesEbs$SnapshotId": "

The ID of the snapshot.

", "SnapshotIdStringList$member": null, - "SnapshotTierStatus$SnapshotId": "

The ID of the snapshot.

" + "SnapshotTierStatus$SnapshotId": "

The ID of the snapshot.

", + "UnlockSnapshotRequest$SnapshotId": "

The ID of the snapshot to unlock.

" } }, "SnapshotIdStringList": { "base": null, "refs": { + "DescribeLockedSnapshotsRequest$SnapshotIds": "

The IDs of the snapshots for which to view the lock status.

", "DescribeSnapshotsRequest$SnapshotIds": "

The snapshot IDs.

Default: Describes the snapshots for which you have create volume permissions.

", "DisableFastSnapshotRestoresRequest$SourceSnapshotIds": "

The IDs of one or more snapshots. For example, snap-1234567890abcdef0.

", "EnableFastSnapshotRestoresRequest$SourceSnapshotIds": "

The IDs of one or more snapshots. For example, snap-1234567890abcdef0. You can specify a snapshot that was shared with you from another Amazon Web Services account.

", @@ -18421,7 +19081,8 @@ "AddressTransfer$AllocationId": "

The allocation ID of an Elastic IP address.

", "AddressTransfer$TransferAccountId": "

The ID of the account that you want to transfer the Elastic IP address to.

", "AdvertiseByoipCidrRequest$Cidr": "

The address range, in CIDR notation. This must be the exact range that you provisioned. You can't advertise only a portion of the provisioned range.

", - "AllocateAddressRequest$NetworkBorderGroup": "

A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups.

Use DescribeAvailabilityZones to view the network border groups.

You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive an InvalidParameterCombination error.

", + "AdvertiseByoipCidrRequest$Asn": "

The public 2-byte or 4-byte ASN that you want to advertise.

", + "AllocateAddressRequest$NetworkBorderGroup": "

A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups.

Use DescribeAvailabilityZones to view the network border groups.

", "AllocateAddressRequest$CustomerOwnedIpv4Pool": "

The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address pool. Alternatively, specify a specific address from the address pool.

", "AllocateAddressResult$PublicIp": "

The Elastic IP address.

", "AllocateAddressResult$AllocationId": "

The ID that represents the allocation of the Elastic IP address.

", @@ -18469,6 +19130,11 @@ "AnalysisSecurityGroupRule$SecurityGroupId": "

The security group ID.

", "AnalysisSecurityGroupRule$PrefixListId": "

The prefix list ID.

", "AnalysisSecurityGroupRule$Protocol": "

The protocol name.

", + "AsnAssociation$Asn": "

The association's ASN.

", + "AsnAssociation$Cidr": "

The association's CIDR.

", + "AsnAssociation$StatusMessage": "

The association's status message.

", + "AsnAuthorizationContext$Message": "

The authorization context's message.

", + "AsnAuthorizationContext$Signature": "

The authorization context's signature.

", "AssignIpv6AddressesResult$NetworkInterfaceId": "

The ID of the network interface.

", "AssignPrivateIpAddressesResult$NetworkInterfaceId": "

The ID of the network interface.

", "AssignedPrivateIpAddress$PrivateIpAddress": "

The private IP address assigned to the network interface.

", @@ -18479,9 +19145,11 @@ "AssociateEnclaveCertificateIamRoleResult$CertificateS3BucketName": "

The name of the Amazon S3 bucket to which the certificate was uploaded.

", "AssociateEnclaveCertificateIamRoleResult$CertificateS3ObjectKey": "

The Amazon S3 object key where the certificate, certificate chain, and encrypted private key bundle are stored. The object key is formatted as follows: role_arn/certificate_arn.

", "AssociateEnclaveCertificateIamRoleResult$EncryptionKmsKeyId": "

The ID of the KMS key used to encrypt the private key of the certificate.

", + "AssociateIpamByoasnRequest$Asn": "

A public 2-byte or 4-byte ASN.

", + "AssociateIpamByoasnRequest$Cidr": "

The BYOIP CIDR you want to associate with an ASN.

", "AssociateIpamResourceDiscoveryRequest$ClientToken": "

A client token.

", "AssociateRouteTableResult$AssociationId": "

The route table association ID. This ID is required for disassociating the route table.

", - "AssociateSubnetCidrBlockRequest$Ipv6CidrBlock": "

The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix length.

", + "AssociateSubnetCidrBlockRequest$Ipv6CidrBlock": "

The IPv6 CIDR block for your subnet.

", "AssociateSubnetCidrBlockResult$SubnetId": "

The ID of the subnet.

", "AssociateTrunkInterfaceRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

", "AssociateTrunkInterfaceResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

", @@ -18534,6 +19202,8 @@ "BundleTask$Progress": "

The level of task completion, as a percent (for example, 20%).

", "BundleTaskError$Code": "

The error code.

", "BundleTaskError$Message": "

The error message.

", + "Byoasn$Asn": "

A public 2-byte or 4-byte ASN.

", + "Byoasn$StatusMessage": "

The status message.

", "ByoipCidr$Cidr": "

The address range, in CIDR notation.

", "ByoipCidr$Description": "

The description of the address range.

", "ByoipCidr$StatusMessage": "

Upon success, contains the ID of the address pool. Otherwise, contains an error message.

", @@ -18546,6 +19216,10 @@ "CancelSpotFleetRequestsErrorItem$SpotFleetRequestId": "

The ID of the Spot Fleet request.

", "CancelSpotFleetRequestsSuccessItem$SpotFleetRequestId": "

The ID of the Spot Fleet request.

", "CancelledSpotInstanceRequest$SpotInstanceRequestId": "

The ID of the Spot Instance request.

", + "CapacityBlockOffering$InstanceType": "

The instance type of the Capacity Block offering.

", + "CapacityBlockOffering$AvailabilityZone": "

The Availability Zone of the Capacity Block offering.

", + "CapacityBlockOffering$UpfrontFee": "

The total price to be paid up front.

", + "CapacityBlockOffering$CurrencyCode": "

The currency of the payment for the Capacity Block.

", "CapacityReservation$CapacityReservationId": "

The ID of the Capacity Reservation.

", "CapacityReservation$OwnerId": "

The ID of the Amazon Web Services account that owns the Capacity Reservation.

", "CapacityReservation$CapacityReservationArn": "

The Amazon Resource Name (ARN) of the Capacity Reservation.

", @@ -18668,7 +19342,6 @@ "CreateCustomerGatewayRequest$CertificateArn": "

The Amazon Resource Name (ARN) for the customer gateway certificate.

", "CreateCustomerGatewayRequest$DeviceName": "

A name for the customer gateway device.

Length Constraints: Up to 255 characters.

", "CreateCustomerGatewayRequest$IpAddress": "

IPv4 address for the customer gateway device's outside interface. The address must be static.

", - "CreateDefaultSubnetRequest$AvailabilityZone": "

The Availability Zone in which to create the default subnet.

", "CreateEgressOnlyInternetGatewayRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "CreateEgressOnlyInternetGatewayResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "CreateFleetError$ErrorCode": "

The error code that indicates why the instance could not be launched. For more information about error codes, see Error codes.

", @@ -18750,7 +19423,7 @@ "CreateSubnetRequest$AvailabilityZone": "

The Availability Zone or Local Zone for the subnet.

Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet.

To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a. For information about the Regions that support Local Zones, see Local Zones locations.

To create a subnet in an Outpost, set this value to the Availability Zone for the Outpost and specify the Outpost ARN.

", "CreateSubnetRequest$AvailabilityZoneId": "

The AZ ID or the Local Zone ID of the subnet.

", "CreateSubnetRequest$CidrBlock": "

The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

This parameter is not supported for an IPv6 only subnet.

", - "CreateSubnetRequest$Ipv6CidrBlock": "

The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.

This parameter is required for an IPv6 only subnet.

", + "CreateSubnetRequest$Ipv6CidrBlock": "

The IPv6 network range for the subnet, in CIDR notation. This parameter is required for an IPv6 only subnet.

", "CreateSubnetRequest$OutpostArn": "

The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost ARN, you must also specify the Availability Zone of the Outpost subnet.

", "CreateTrafficMirrorFilterRequest$Description": "

The description of the Traffic Mirror filter.

", "CreateTrafficMirrorFilterRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", @@ -18784,6 +19457,7 @@ "CreateVerifiedAccessInstanceRequest$Description": "

A description for the Verified Access instance.

", "CreateVerifiedAccessInstanceRequest$ClientToken": "

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

", "CreateVerifiedAccessTrustProviderDeviceOptions$TenantId": "

The ID of the tenant application with the device-identity provider.

", + "CreateVerifiedAccessTrustProviderDeviceOptions$PublicSigningKeyUrl": "

The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.

", "CreateVerifiedAccessTrustProviderOidcOptions$Issuer": "

The OIDC issuer.

", "CreateVerifiedAccessTrustProviderOidcOptions$AuthorizationEndpoint": "

The OIDC authorization endpoint.

", "CreateVerifiedAccessTrustProviderOidcOptions$TokenEndpoint": "

The OIDC token endpoint.

", @@ -18854,6 +19528,7 @@ "DeleteVerifiedAccessTrustProviderRequest$ClientToken": "

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

", "DeleteVpnConnectionRouteRequest$DestinationCidrBlock": "

The CIDR block associated with the local subnet of the customer network.

", "DeprovisionByoipCidrRequest$Cidr": "

The address range, in CIDR notation. The prefix must be the same prefix that you specified when you provisioned the address range.

", + "DeprovisionIpamByoasnRequest$Asn": "

An ASN.

", "DeprovisionIpamPoolCidrRequest$Cidr": "

The CIDR which you want to deprovision from the pool.

", "DeprovisionPublicIpv4PoolCidrRequest$Cidr": "

The CIDR you want to deprovision from the pool. Enter the CIDR you want to deprovision with a netmask of /32. You must rerun this command for each IP address in the CIDR range. If your CIDR is a /24, you will have to run this command to deprovision each of the 256 IP addresses in the /24 CIDR.

", "DeprovisionedAddressSet$member": null, @@ -18864,6 +19539,9 @@ "DescribeAwsNetworkPerformanceMetricSubscriptionsRequest$NextToken": "

The token for the next page of results.

", "DescribeAwsNetworkPerformanceMetricSubscriptionsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeByoipCidrsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "DescribeCapacityBlockOfferingsRequest$InstanceType": "

The type of instance for which the Capacity Block offering reserves capacity.

", + "DescribeCapacityBlockOfferingsRequest$NextToken": "

The token to use to retrieve the next page of results.

", + "DescribeCapacityBlockOfferingsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeCapacityReservationFleetsRequest$NextToken": "

The token to use to retrieve the next page of results.

", "DescribeCapacityReservationFleetsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeCapacityReservationsRequest$NextToken": "

The token to use to retrieve the next page of results.

", @@ -18880,8 +19558,8 @@ "DescribeEgressOnlyInternetGatewaysResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "DescribeElasticGpusRequest$NextToken": "

The token to request the next page of results.

", "DescribeElasticGpusResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "DescribeFastLaunchImagesSuccessItem$OwnerId": "

The owner ID for the fast-launch enabled Windows AMI.

", - "DescribeFastLaunchImagesSuccessItem$StateTransitionReason": "

The reason that faster launching for the Windows AMI changed to the current state.

", + "DescribeFastLaunchImagesSuccessItem$OwnerId": "

The owner ID for the Windows fast launch enabled AMI.

", + "DescribeFastLaunchImagesSuccessItem$StateTransitionReason": "

The reason that Windows fast launch for the AMI changed to the current state.

", "DescribeFastSnapshotRestoreSuccessItem$SnapshotId": "

The ID of the snapshot.

", "DescribeFastSnapshotRestoreSuccessItem$AvailabilityZone": "

The Availability Zone.

", "DescribeFastSnapshotRestoreSuccessItem$StateTransitionReason": "

The reason for the state transition. The possible values are as follows:

  • Client.UserInitiated - The state successfully transitioned to enabling or disabling.

  • Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.

", @@ -18918,10 +19596,13 @@ "DescribeInstanceEventWindowsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeInstanceStatusRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "DescribeInstanceStatusResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "DescribeInstanceTopologyRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "DescribeInstanceTopologyResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "DescribeInstancesRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "DescribeInstancesResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "DescribeInternetGatewaysRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "DescribeInternetGatewaysResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "DescribeIpamByoasnResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeLaunchTemplateVersionsRequest$MinVersion": "

The version number after which to describe launch template versions.

", "DescribeLaunchTemplateVersionsRequest$MaxVersion": "

The version number up to which to describe launch template versions.

", "DescribeLaunchTemplateVersionsRequest$NextToken": "

The token to request the next page of results.

", @@ -18940,6 +19621,8 @@ "DescribeLocalGatewayVirtualInterfacesResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeLocalGatewaysRequest$NextToken": "

The token for the next page of results.

", "DescribeLocalGatewaysResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "DescribeLockedSnapshotsRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "DescribeLockedSnapshotsResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "DescribeMovingAddressesRequest$NextToken": "

The token for the next page of results.

", "DescribeMovingAddressesResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeNatGatewaysRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", @@ -19053,6 +19736,7 @@ "DetachVerifiedAccessTrustProviderRequest$ClientToken": "

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

", "DetachVolumeRequest$Device": "

The device name.

", "DeviceOptions$TenantId": "

The ID of the tenant application with the device-identity provider.

", + "DeviceOptions$PublicSigningKeyUrl": "

The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.

", "DhcpConfiguration$Key": "

The name of a DHCP option.

", "DhcpOptions$DhcpOptionsId": "

The ID of the set of DHCP options.

", "DhcpOptions$OwnerId": "

The ID of the Amazon Web Services account that owns the DHCP options set.

", @@ -19060,8 +19744,8 @@ "DirectoryServiceAuthenticationRequest$DirectoryId": "

The ID of the Active Directory to be used for authentication.

", "DisableAwsNetworkPerformanceMetricSubscriptionRequest$Source": "

The source Region or Availability Zone that the metric subscription is disabled for. For example, us-east-1.

", "DisableAwsNetworkPerformanceMetricSubscriptionRequest$Destination": "

The target Region or Availability Zone that the metric subscription is disabled for. For example, eu-north-1.

", - "DisableFastLaunchResult$OwnerId": "

The owner of the Windows AMI for which faster launching was turned off.

", - "DisableFastLaunchResult$StateTransitionReason": "

The reason that the state changed for faster launching for the Windows AMI.

", + "DisableFastLaunchResult$OwnerId": "

The owner of the Windows AMI for which Windows fast launch was disabled.

", + "DisableFastLaunchResult$StateTransitionReason": "

The reason that the state changed for Windows fast launch for the Windows AMI.

", "DisableFastSnapshotRestoreErrorItem$SnapshotId": "

The ID of the snapshot.

", "DisableFastSnapshotRestoreStateError$Code": "

The error code.

", "DisableFastSnapshotRestoreStateError$Message": "

The error message.

", @@ -19072,7 +19756,10 @@ "DisableFastSnapshotRestoreSuccessItem$OwnerId": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", "DisableFastSnapshotRestoreSuccessItem$OwnerAlias": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", "DisableIpamOrganizationAdminAccountRequest$DelegatedAdminAccountId": "

The Organizations member account ID that you want to disable as IPAM account.

", + "DisassociateClientVpnTargetNetworkRequest$AssociationId": "

The ID of the target network association.

", "DisassociateClientVpnTargetNetworkResult$AssociationId": "

The ID of the target network association.

", + "DisassociateIpamByoasnRequest$Asn": "

A public 2-byte or 4-byte ASN.

", + "DisassociateIpamByoasnRequest$Cidr": "

A BYOIP CIDR.

", "DisassociateSubnetCidrBlockResult$SubnetId": "

The ID of the subnet.

", "DisassociateTrunkInterfaceRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

", "DisassociateTrunkInterfaceResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

", @@ -19106,9 +19793,9 @@ "EnableAddressTransferRequest$TransferAccountId": "

The ID of the account that you want to transfer the Elastic IP address to.

", "EnableAwsNetworkPerformanceMetricSubscriptionRequest$Source": "

The source Region or Availability Zone that the metric subscription is enabled for. For example, us-east-1.

", "EnableAwsNetworkPerformanceMetricSubscriptionRequest$Destination": "

The target Region or Availability Zone that the metric subscription is enabled for. For example, eu-west-1.

", - "EnableFastLaunchRequest$ResourceType": "

The type of resource to use for pre-provisioning the Windows AMI for faster launching. Supported values include: snapshot, which is the default value.

", - "EnableFastLaunchResult$OwnerId": "

The owner ID for the Windows AMI for which faster launching was enabled.

", - "EnableFastLaunchResult$StateTransitionReason": "

The reason that the state changed for faster launching for the Windows AMI.

", + "EnableFastLaunchRequest$ResourceType": "

The type of resource to use for pre-provisioning the AMI for Windows fast launch. Supported values include: snapshot, which is the default value.

", + "EnableFastLaunchResult$OwnerId": "

The owner ID for the AMI for which Windows fast launch was enabled.

", + "EnableFastLaunchResult$StateTransitionReason": "

The reason that the state changed for Windows fast launch for the AMI.

", "EnableFastSnapshotRestoreErrorItem$SnapshotId": "

The ID of the snapshot.

", "EnableFastSnapshotRestoreStateError$Code": "

The error code.

", "EnableFastSnapshotRestoreStateError$Message": "

The error message.

", @@ -19160,10 +19847,10 @@ "ExportTransitGatewayRoutesRequest$S3Bucket": "

The name of the S3 bucket.

", "ExportTransitGatewayRoutesResult$S3Location": "

The URL of the exported file in Amazon S3. For example, s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.

", "FailedQueuedPurchaseDeletion$ReservedInstancesId": "

The ID of the Reserved Instance.

", - "FastLaunchLaunchTemplateSpecificationRequest$LaunchTemplateName": "

The name of the launch template to use for faster launching for a Windows AMI.

", - "FastLaunchLaunchTemplateSpecificationRequest$Version": "

The version of the launch template to use for faster launching for a Windows AMI.

", - "FastLaunchLaunchTemplateSpecificationResponse$LaunchTemplateName": "

The name of the launch template for faster launching of the associated Windows AMI.

", - "FastLaunchLaunchTemplateSpecificationResponse$Version": "

The version of the launch template for faster launching of the associated Windows AMI.

", + "FastLaunchLaunchTemplateSpecificationRequest$LaunchTemplateName": "

Specify the name of the launch template that the AMI should use for Windows fast launch.

", + "FastLaunchLaunchTemplateSpecificationRequest$Version": "

Specify the version of the launch template that the AMI should use for Windows fast launch.

", + "FastLaunchLaunchTemplateSpecificationResponse$LaunchTemplateName": "

The name of the launch template that the AMI uses for Windows fast launch.

", + "FastLaunchLaunchTemplateSpecificationResponse$Version": "

The version of the launch template that the AMI uses for Windows fast launch.

", "FederatedAuthentication$SamlProviderArn": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

", "FederatedAuthentication$SelfServiceSamlProviderArn": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

", "FederatedAuthenticationRequest$SAMLProviderArn": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

", @@ -19216,6 +19903,7 @@ "GetCoipPoolUsageRequest$NextToken": "

The token for the next page of results.

", "GetCoipPoolUsageResult$CoipPoolId": "

The ID of the customer-owned address pool.

", "GetCoipPoolUsageResult$LocalGatewayRouteTableId": "

The ID of the local gateway route table.

", + "GetCoipPoolUsageResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "GetConsoleOutputResult$InstanceId": "

The ID of the instance.

", "GetConsoleOutputResult$Output": "

The console output, base64-encoded. If you are using a command line tool, the tool decodes the output for you.

", "GetConsoleScreenshotResult$ImageData": "

The data that comprises the image.

", @@ -19234,6 +19922,7 @@ "GetIpamAddressHistoryRequest$Cidr": "

The CIDR you want the history of. The CIDR can be an IPv4 or IPv6 IP address range. If you enter a /16 IPv4 CIDR, you will get records that match it exactly. You will not get records for any subnets within the /16 CIDR.

", "GetIpamAddressHistoryRequest$VpcId": "

The ID of the VPC you want your history records filtered by.

", "GetIpamDiscoveredAccountsRequest$DiscoveryRegion": "

The Amazon Web Services Region that the account information is returned from.

", + "GetIpamDiscoveredPublicAddressesRequest$AddressRegion": "

The Amazon Web Services Region for the IP address.

", "GetIpamDiscoveredResourceCidrsRequest$ResourceRegion": "

A resource Region.

", "GetIpamResourceCidrsRequest$ResourceId": "

The ID of the resource.

", "GetIpamResourceCidrsRequest$ResourceOwner": "

The ID of the Amazon Web Services account that owns the resource.

", @@ -19243,6 +19932,8 @@ "GetReservedInstancesExchangeQuoteResult$CurrencyCode": "

The currency of the transaction.

", "GetReservedInstancesExchangeQuoteResult$PaymentDue": "

The total true upfront charge for the exchange.

", "GetReservedInstancesExchangeQuoteResult$ValidationFailureReason": "

Describes the reason why the exchange cannot be completed.

", + "GetSecurityGroupsForVpcRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "GetSecurityGroupsForVpcResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "GetSpotPlacementScoresRequest$NextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "GetSpotPlacementScoresResult$NextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "GetSubnetCidrReservationsRequest$NextToken": "

The token for the next page of results.

", @@ -19308,6 +19999,7 @@ "Image$RootDeviceName": "

The device name of the root device volume (for example, /dev/sda1).

", "Image$SriovNetSupport": "

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

", "Image$DeprecationTime": "

The date and time to deprecate the AMI, in UTC, in the following format: YYYY-MM-DDTHH:MM:SSZ. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute.

", + "Image$SourceInstanceId": "

The ID of the instance that the AMI was created from if the AMI was created using CreateImage. This field only appears if the AMI was created using CreateImage.

", "ImageAttribute$ImageId": "

The ID of the AMI.

", "ImageDiskContainer$Description": "

The description of the disk image.

", "ImageDiskContainer$DeviceName": "

The block device mapping for the disk.

", @@ -19439,6 +20131,11 @@ "InstanceStatus$InstanceId": "

The ID of the instance.

", "InstanceStatusEvent$Description": "

A description of the event.

After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].

", "InstanceTagKeySet$member": null, + "InstanceTopology$InstanceId": "

The instance ID.

", + "InstanceTopology$InstanceType": "

The instance type.

", + "InstanceTopology$GroupName": "

The name of the placement group that the instance is in.

", + "InstanceTopology$AvailabilityZone": "

The name of the Availability Zone or Local Zone that the instance is in.

", + "InstanceTopology$ZoneId": "

The ID of the Availability Zone or Local Zone that the instance is in.

", "InstanceTypeInfoFromInstanceRequirements$InstanceType": "

The matching instance type.

", "InstanceTypes$member": null, "InstanceTypesList$member": null, @@ -19455,6 +20152,7 @@ "Ipam$OwnerId": "

The Amazon Web Services account ID of the owner of the IPAM.

", "Ipam$IpamRegion": "

The Amazon Web Services Region of the IPAM.

", "Ipam$Description": "

The description for the IPAM.

", + "Ipam$StateMessage": "

The state message.

", "IpamAddressHistoryRecord$ResourceOwnerId": "

The ID of the resource owner.

", "IpamAddressHistoryRecord$ResourceRegion": "

The Amazon Web Services Region of the resource.

", "IpamAddressHistoryRecord$ResourceId": "

The ID of the resource.

", @@ -19465,6 +20163,18 @@ "IpamCidrAuthorizationContext$Signature": "

The signed authorization message for the prefix and account.

", "IpamDiscoveredAccount$AccountId": "

The account ID.

", "IpamDiscoveredAccount$DiscoveryRegion": "

The Amazon Web Services Region that the account information is returned from. An account can be discovered in multiple regions and will have a separate discovered account for each Region.

", + "IpamDiscoveredPublicAddress$AddressRegion": "

The Region of the resource the IP address is assigned to.

", + "IpamDiscoveredPublicAddress$Address": "

The IP address.

", + "IpamDiscoveredPublicAddress$AddressOwnerId": "

The ID of the owner of the resource the IP address is assigned to.

", + "IpamDiscoveredPublicAddress$AddressAllocationId": "

The allocation ID of the resource the IP address is assigned to.

", + "IpamDiscoveredPublicAddress$ServiceResource": "

The resource ARN or ID.

", + "IpamDiscoveredPublicAddress$VpcId": "

The ID of the VPC that the resource with the assigned IP address is in.

", + "IpamDiscoveredPublicAddress$SubnetId": "

The ID of the subnet that the resource with the assigned IP address is in.

", + "IpamDiscoveredPublicAddress$PublicIpv4PoolId": "

The ID of the public IPv4 pool that the resource with the assigned IP address is from.

", + "IpamDiscoveredPublicAddress$NetworkInterfaceId": "

The network interface ID of the resource with the assigned IP address.

", + "IpamDiscoveredPublicAddress$NetworkInterfaceDescription": "

The description of the network interface that IP address is assigned to.

", + "IpamDiscoveredPublicAddress$InstanceId": "

The instance ID of the instance the assigned IP address is assigned to.

", + "IpamDiscoveredPublicAddress$NetworkBorderGroup": "

The network border group that the resource that the IP address is assigned to is in.

", "IpamDiscoveredResourceCidr$ResourceRegion": "

The resource Region.

", "IpamDiscoveredResourceCidr$ResourceId": "

The resource ID.

", "IpamDiscoveredResourceCidr$ResourceOwnerId": "

The resource owner ID.

", @@ -19475,16 +20185,27 @@ "IpamPool$OwnerId": "

The Amazon Web Services account ID of the owner of the IPAM pool.

", "IpamPool$IpamRegion": "

The Amazon Web Services Region of the IPAM pool.

", "IpamPool$Locale": "

The locale of the IPAM pool. In IPAM, the locale is the Amazon Web Services Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you choose an Amazon Web Services Region for locale that has not been configured as an operating Region for the IPAM, you'll get an error.

", - "IpamPool$StateMessage": "

A message related to the failed creation of an IPAM pool.

", + "IpamPool$StateMessage": "

The state message.

", "IpamPool$Description": "

The description of the IPAM pool.

", "IpamPoolAllocation$Cidr": "

The CIDR for the allocation. A CIDR is a representation of an IP address and its associated network mask (or netmask) and refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

", "IpamPoolAllocation$Description": "

A description of the pool allocation.

", "IpamPoolAllocation$ResourceId": "

The ID of the resource.

", "IpamPoolAllocation$ResourceRegion": "

The Amazon Web Services Region of the resource.

", "IpamPoolAllocation$ResourceOwner": "

The owner of the resource.

", + "IpamPoolAllocationAllowedCidrs$member": null, "IpamPoolAllocationDisallowedCidrs$member": null, "IpamPoolCidr$Cidr": "

The CIDR provisioned to the IPAM pool. A CIDR is a representation of an IP address and its associated network mask (or netmask) and refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

", "IpamPoolCidrFailureReason$Message": "

A message related to why an IPAM pool CIDR failed to be provisioned.

", + "IpamPoolSourceResource$ResourceId": "

The source resource ID.

", + "IpamPoolSourceResource$ResourceRegion": "

The source resource Region.

", + "IpamPoolSourceResource$ResourceOwner": "

The source resource owner.

", + "IpamPoolSourceResourceRequest$ResourceId": "

The source resource ID.

", + "IpamPoolSourceResourceRequest$ResourceRegion": "

The source resource Region.

", + "IpamPoolSourceResourceRequest$ResourceOwner": "

The source resource owner.

", + "IpamPublicAddressSecurityGroup$GroupName": "

The security group's name.

", + "IpamPublicAddressSecurityGroup$GroupId": "

The security group's ID.

", + "IpamPublicAddressTag$Key": "

The tag's key.

", + "IpamPublicAddressTag$Value": "

The tag's value.

", "IpamResourceCidr$ResourceRegion": "

The Amazon Web Services Region for an IPAM resource.

", "IpamResourceCidr$ResourceOwnerId": "

The Amazon Web Services account number of the owner of an IPAM resource.

", "IpamResourceCidr$ResourceId": "

The ID of an IPAM resource.

", @@ -19606,6 +20327,9 @@ "LocalGatewayVirtualInterface$OwnerId": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface.

", "LocalGatewayVirtualInterfaceGroup$LocalGatewayId": "

The ID of the local gateway.

", "LocalGatewayVirtualInterfaceGroup$OwnerId": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface group.

", + "LockSnapshotResult$SnapshotId": "

The ID of the snapshot

", + "LockedSnapshotsInfo$OwnerId": "

The account ID of the Amazon Web Services account that owns the snapshot.

", + "LockedSnapshotsInfo$SnapshotId": "

The ID of the snapshot.

", "MaintenanceDetails$PendingMaintenance": "

Verify existence of a pending maintenance.

", "ManagedPrefixList$AddressFamily": "

The IP address version.

", "ManagedPrefixList$StateMessage": "

The state message.

", @@ -19669,6 +20393,7 @@ "ModifyVerifiedAccessInstanceLoggingConfigurationRequest$ClientToken": "

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

", "ModifyVerifiedAccessInstanceRequest$Description": "

A description for the Verified Access instance.

", "ModifyVerifiedAccessInstanceRequest$ClientToken": "

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

", + "ModifyVerifiedAccessTrustProviderDeviceOptions$PublicSigningKeyUrl": "

The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.

", "ModifyVerifiedAccessTrustProviderOidcOptions$Issuer": "

The OIDC issuer.

", "ModifyVerifiedAccessTrustProviderOidcOptions$AuthorizationEndpoint": "

The OIDC authorization endpoint.

", "ModifyVerifiedAccessTrustProviderOidcOptions$TokenEndpoint": "

The OIDC token endpoint.

", @@ -19752,6 +20477,7 @@ "NetworkInterfacePermissionState$StatusMessage": "

A status message, if applicable.

", "NetworkInterfacePrivateIpAddress$PrivateDnsName": "

The private DNS name.

", "NetworkInterfacePrivateIpAddress$PrivateIpAddress": "

The private IPv4 address.

", + "NetworkNodesList$member": null, "NewDhcpConfiguration$Key": null, "OidcOptions$Issuer": "

The OIDC issuer.

", "OidcOptions$AuthorizationEndpoint": "

The OIDC authorization endpoint.

", @@ -19759,8 +20485,8 @@ "OidcOptions$UserInfoEndpoint": "

The OIDC user info endpoint.

", "OidcOptions$ClientId": "

The client identifier.

", "OidcOptions$Scope": "

The OpenID Connect (OIDC) scope specified.

", - "OnDemandOptions$MaxTotalPrice": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

", - "OnDemandOptionsRequest$MaxTotalPrice": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

", + "OnDemandOptions$MaxTotalPrice": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

If your fleet includes T instances that are configured as unlimited, and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The maxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for maxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User Guide.

", + "OnDemandOptionsRequest$MaxTotalPrice": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

If your fleet includes T instances that are configured as unlimited, and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The MaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for MaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User Guide.

", "OrganizationArnStringList$member": null, "OrganizationalUnitArnStringList$member": null, "OwnerStringList$member": null, @@ -19814,6 +20540,7 @@ "PropagatingVgw$GatewayId": "

The ID of the virtual private gateway.

", "ProvisionByoipCidrRequest$Cidr": "

The public IPv4 or IPv6 address range, in CIDR notation. The most specific IPv4 prefix that you can specify is /24. The most specific IPv6 prefix you can specify is /56. The address range cannot overlap with another address range that you've brought to this or another Region.

", "ProvisionByoipCidrRequest$Description": "

A description for the address range and the address pool.

", + "ProvisionIpamByoasnRequest$Asn": "

A public 2-byte or 4-byte ASN.

", "ProvisionIpamPoolCidrRequest$Cidr": "

The CIDR you want to assign to the IPAM pool. Either \"NetmaskLength\" or \"Cidr\" is required. This value will be null if you specify \"NetmaskLength\" and will be filled in during the provisioning process.

", "ProvisionIpamPoolCidrRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", "ProvisionedBandwidth$Provisioned": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

", @@ -19843,7 +20570,7 @@ "ReferencedSecurityGroup$PeeringStatus": "

The status of a VPC peering connection, if applicable.

", "ReferencedSecurityGroup$UserId": "

The Amazon Web Services account ID.

", "ReferencedSecurityGroup$VpcId": "

The ID of the VPC.

", - "ReferencedSecurityGroup$VpcPeeringConnectionId": "

The ID of the VPC peering connection.

", + "ReferencedSecurityGroup$VpcPeeringConnectionId": "

The ID of the VPC peering connection (if applicable).

", "Region$Endpoint": "

The Region service endpoint.

", "Region$RegionName": "

The name of the Region.

", "Region$OptInStatus": "

The Region opt-in status. The possible values are opt-in-not-required, opted-in, and not-opted-in.

", @@ -19859,7 +20586,7 @@ "RegisterTransitGatewayMulticastGroupMembersRequest$GroupIpAddress": "

The IP address assigned to the transit gateway multicast group.

", "RegisterTransitGatewayMulticastGroupSourcesRequest$GroupIpAddress": "

The IP address assigned to the transit gateway multicast group.

", "ReleaseAddressRequest$PublicIp": "

Deprecated.

", - "ReleaseAddressRequest$NetworkBorderGroup": "

The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses.

If you provide an incorrect network border group, you receive an InvalidAddress.NotFound error.

You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 classic, you receive an InvalidParameterCombination error.

", + "ReleaseAddressRequest$NetworkBorderGroup": "

The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses.

If you provide an incorrect network border group, you receive an InvalidAddress.NotFound error.

", "ReleaseIpamPoolAllocationRequest$Cidr": "

The CIDR of the allocation you want to release.

", "RemoveIpamOperatingRegion$RegionName": "

The name of the operating Region you want to remove.

", "RemovePrefixListEntry$Cidr": "

The CIDR block.

", @@ -19990,7 +20717,7 @@ "ScheduledInstancesBlockDeviceMapping$DeviceName": "

The device name (for example, /dev/sdh or xvdh).

", "ScheduledInstancesBlockDeviceMapping$NoDevice": "

To omit the device from the block device mapping, specify an empty string.

", "ScheduledInstancesBlockDeviceMapping$VirtualName": "

The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with two available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

", - "ScheduledInstancesEbs$VolumeType": "

The volume type. gp2 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic.

Default: gp2

", + "ScheduledInstancesEbs$VolumeType": "

The volume type.

Default: gp2

", "ScheduledInstancesIamInstanceProfile$Arn": "

The Amazon Resource Name (ARN).

", "ScheduledInstancesIamInstanceProfile$Name": "

The name.

", "ScheduledInstancesLaunchSpecification$InstanceType": "

The instance type.

", @@ -20008,11 +20735,17 @@ "SecurityGroup$OwnerId": "

The Amazon Web Services account ID of the owner of the security group.

", "SecurityGroup$GroupId": "

The ID of the security group.

", "SecurityGroup$VpcId": "

The ID of the VPC for the security group.

", + "SecurityGroupForVpc$Description": "

The security group's description.

", + "SecurityGroupForVpc$GroupName": "

The security group name.

", + "SecurityGroupForVpc$OwnerId": "

The security group owner ID.

", + "SecurityGroupForVpc$GroupId": "

The security group ID.

", + "SecurityGroupForVpc$PrimaryVpcId": "

The VPC ID in which the security group was created.

", "SecurityGroupIdentifier$GroupId": "

The ID of the security group.

", "SecurityGroupIdentifier$GroupName": "

The name of the security group.

", "SecurityGroupReference$GroupId": "

The ID of your security group.

", "SecurityGroupReference$ReferencingVpcId": "

The ID of the VPC with the referencing security group.

", - "SecurityGroupReference$VpcPeeringConnectionId": "

The ID of the VPC peering connection.

", + "SecurityGroupReference$VpcPeeringConnectionId": "

The ID of the VPC peering connection (if applicable). For more information about security group referencing for peering connections, see Update your security groups to reference peer security groups in the VPC Peering Guide.

", + "SecurityGroupReference$TransitGatewayId": "

The ID of the transit gateway (if applicable). For more information about security group referencing for transit gateways, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.

", "SecurityGroupRule$GroupOwnerId": "

The ID of the Amazon Web Services account that owns the security group.

", "SecurityGroupRule$IpProtocol": "

The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers).

Use -1 to specify all protocols.

", "SecurityGroupRule$CidrIpv4": "

The IPv4 CIDR range.

", @@ -20080,8 +20813,8 @@ "SpotFleetRequestConfigData$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of your listings. This helps to avoid duplicate listings. For more information, see Ensuring Idempotency.

", "SpotFleetRequestConfigData$IamFleetRole": "

The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet prerequisites in the Amazon EC2 User Guide. Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request using CancelSpotFleetRequests or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration.

", "SpotFleetRequestConfigData$SpotPrice": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

", - "SpotFleetRequestConfigData$OnDemandMaxTotalPrice": "

The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

", - "SpotFleetRequestConfigData$SpotMaxTotalPrice": "

The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotdMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

", + "SpotFleetRequestConfigData$OnDemandMaxTotalPrice": "

The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

If your fleet includes T instances that are configured as unlimited, and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User Guide.

", + "SpotFleetRequestConfigData$SpotMaxTotalPrice": "

The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

If your fleet includes T instances that are configured as unlimited, and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User Guide.

", "SpotFleetRequestConfigData$Context": "

Reserved.

", "SpotInstanceRequest$ActualBlockHourlyPrice": "

Deprecated.

", "SpotInstanceRequest$AvailabilityZoneGroup": "

The Availability Zone group. If you specify the same Availability Zone group for all Spot Instance requests, all Spot Instances are launched in the same Availability Zone.

", @@ -20094,8 +20827,8 @@ "SpotInstanceStatus$Code": "

The status code. For a list of status codes, see Spot request status codes in the Amazon EC2 User Guide for Linux Instances.

", "SpotInstanceStatus$Message": "

The description for the status code.

", "SpotMarketOptions$MaxPrice": "

The maximum hourly price that you're willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

", - "SpotOptions$MaxTotalPrice": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

", - "SpotOptionsRequest$MaxTotalPrice": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

", + "SpotOptions$MaxTotalPrice": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

If your fleet includes T instances that are configured as unlimited, and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The maxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for maxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User Guide.

", + "SpotOptionsRequest$MaxTotalPrice": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

If your fleet includes T instances that are configured as unlimited, and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The MaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for MaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User Guide.

", "SpotPlacement$AvailabilityZone": "

The Availability Zone.

[Spot Fleet only] To specify multiple Availability Zones, separate them using commas; for example, \"us-west-2a, us-west-2b\".

", "SpotPlacementScore$Region": "

The Region.

", "SpotPlacementScore$AvailabilityZoneId": "

The Availability Zone.

", @@ -20263,6 +20996,7 @@ "TunnelOption$DpdTimeoutAction": "

The action to take after a DPD timeout occurs.

", "TunnelOption$StartupAction": "

The action to take when the establishing the VPN tunnels for a VPN connection.

", "UnassignIpv6AddressesResult$NetworkInterfaceId": "

The ID of the network interface.

", + "UnlockSnapshotResult$SnapshotId": "

The ID of the snapshot.

", "UnsuccessfulInstanceCreditSpecificationItem$InstanceId": "

The ID of the instance.

", "UnsuccessfulInstanceCreditSpecificationItemError$Message": "

The applicable error message.

", "UnsuccessfulItem$ResourceId": "

The ID of the resource.

", @@ -20316,14 +21050,14 @@ "VerifiedAccessLogDeliveryStatus$Message": "

The status message.

", "VerifiedAccessLogKinesisDataFirehoseDestination$DeliveryStream": "

The ID of the delivery stream.

", "VerifiedAccessLogKinesisDataFirehoseDestinationOptions$DeliveryStream": "

The ID of the delivery stream.

", - "VerifiedAccessLogOptions$LogVersion": "

The logging version to use.

Valid values: ocsf-0.1 | ocsf-1.0.0-rc.2

", + "VerifiedAccessLogOptions$LogVersion": "

The logging version.

Valid values: ocsf-0.1 | ocsf-1.0.0-rc.2

", "VerifiedAccessLogS3Destination$BucketName": "

The bucket name.

", "VerifiedAccessLogS3Destination$Prefix": "

The bucket prefix.

", "VerifiedAccessLogS3Destination$BucketOwner": "

The Amazon Web Services account number that owns the bucket.

", "VerifiedAccessLogS3DestinationOptions$BucketName": "

The bucket name.

", "VerifiedAccessLogS3DestinationOptions$Prefix": "

The bucket prefix.

", "VerifiedAccessLogS3DestinationOptions$BucketOwner": "

The ID of the Amazon Web Services account that owns the Amazon S3 bucket.

", - "VerifiedAccessLogs$LogVersion": "

Describes current setting for the logging version.

", + "VerifiedAccessLogs$LogVersion": "

The log version.

", "VerifiedAccessTrustProvider$VerifiedAccessTrustProviderId": "

The ID of the Amazon Web Services Verified Access trust provider.

", "VerifiedAccessTrustProvider$Description": "

A description for the Amazon Web Services Verified Access trust provider.

", "VerifiedAccessTrustProvider$PolicyReferenceName": "

The identifier to be used when working with policy rules.

", @@ -20738,6 +21472,7 @@ "ReservedInstancesListing$Tags": "

Any tags assigned to the resource.

", "RouteTable$Tags": "

Any tags assigned to the route table.

", "SecurityGroup$Tags": "

Any tags assigned to the security group.

", + "SecurityGroupForVpc$Tags": "

The security group tags.

", "SecurityGroupRule$Tags": "

The tags applied to the security group rule.

", "ServiceConfiguration$Tags": "

The tags assigned to the service.

", "ServiceDetail$Tags": "

The tags assigned to the service.

", @@ -20802,7 +21537,7 @@ "CreateCustomerGatewayRequest$TagSpecifications": "

The tags to apply to the customer gateway.

", "CreateDhcpOptionsRequest$TagSpecifications": "

The tags to assign to the DHCP option.

", "CreateEgressOnlyInternetGatewayRequest$TagSpecifications": "

The tags to assign to the egress-only internet gateway.

", - "CreateFleetRequest$TagSpecifications": "

The key-value pair for tagging the EC2 Fleet request on creation. For more information, see Tagging your resources.

If the fleet type is instant, specify a resource type of fleet to tag the fleet or instance to tag the instances at launch.

If the fleet type is maintain or request, specify a resource type of fleet to tag the fleet. You cannot specify a resource type of instance. To tag instances at launch, specify the tags in a launch template.

", + "CreateFleetRequest$TagSpecifications": "

The key-value pair for tagging the EC2 Fleet request on creation. For more information, see Tag your resources.

If the fleet type is instant, specify a resource type of fleet to tag the fleet or instance to tag the instances at launch.

If the fleet type is maintain or request, specify a resource type of fleet to tag the fleet. You cannot specify a resource type of instance. To tag instances at launch, specify the tags in a launch template.

", "CreateFlowLogsRequest$TagSpecifications": "

The tags to apply to the flow logs.

", "CreateFpgaImageRequest$TagSpecifications": "

The tags to apply to the FPGA image during creation.

", "CreateImageRequest$TagSpecifications": "

The tags to apply to the AMI and snapshots on creation. You can tag the AMI, the snapshots, or both.

  • To tag the AMI, the value for ResourceType must be image.

  • To tag the snapshots that are created of the root volume and of other Amazon EBS volumes that are attached to the instance, the value for ResourceType must be snapshot. The same tag is applied to all of the snapshots that are created.

If you specify other values for ResourceType, the request fails.

To tag an AMI or snapshot after it has been created, see CreateTags.

", @@ -20863,10 +21598,11 @@ "ImportKeyPairRequest$TagSpecifications": "

The tags to apply to the imported key pair.

", "ImportSnapshotRequest$TagSpecifications": "

The tags to apply to the import snapshot task during creation.

", "ProvisionByoipCidrRequest$PoolTagSpecifications": "

The tags to apply to the address pool.

", + "PurchaseCapacityBlockRequest$TagSpecifications": "

The tags to apply to the Capacity Block during launch.

", "PurchaseHostReservationRequest$TagSpecifications": "

The tags to apply to the Dedicated Host Reservation during purchase.

", "RequestSpotInstancesRequest$TagSpecifications": "

The key-value pair for tagging the Spot Instance request on creation. The value for ResourceType must be spot-instances-request, otherwise the Spot Instance request fails. To tag the Spot Instance request after it has been created, see CreateTags.

", "RunInstancesRequest$TagSpecifications": "

The tags to apply to the resources that are created during instance launch.

You can specify tags for the following resources only:

  • Instances

  • Volumes

  • Elastic graphics

  • Spot Instance requests

  • Network interfaces

To tag a resource after it has been created, see CreateTags.

", - "SpotFleetRequestConfigData$TagSpecifications": "

The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request, otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs) or in the SpotFleetTagSpecification (valid only if you use LaunchSpecifications). For information about tagging after launch, see Tagging Your Resources.

", + "SpotFleetRequestConfigData$TagSpecifications": "

The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request, otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs) or in the SpotFleetTagSpecification (valid only if you use LaunchSpecifications). For information about tagging after launch, see Tag your resources.

", "StartNetworkInsightsAccessScopeAnalysisRequest$TagSpecifications": "

The tags to apply.

", "StartNetworkInsightsAnalysisRequest$TagSpecifications": "

The tags to apply.

" } @@ -22051,7 +22787,7 @@ } }, "TrunkInterfaceAssociation": { - "base": "

Currently available in limited preview only. If you are interested in using this feature, contact your account manager.

Information about an association between a branch network interface with a trunk network interface.

", + "base": "

Information about an association between a branch network interface with a trunk network interface.

", "refs": { "AssociateTrunkInterfaceResult$InterfaceAssociation": "

Information about the association between the trunk network interface and branch network interface.

", "TrunkInterfaceAssociationList$member": null @@ -22137,6 +22873,16 @@ "ModifyDefaultCreditSpecificationRequest$InstanceFamily": "

The instance family.

" } }, + "UnlockSnapshotRequest": { + "base": null, + "refs": { + } + }, + "UnlockSnapshotResult": { + "base": null, + "refs": { + } + }, "UnmonitorInstancesRequest": { "base": null, "refs": { @@ -22423,9 +23169,9 @@ "VerifiedAccessEndpoint": { "base": "

An Amazon Web Services Verified Access endpoint specifies the application that Amazon Web Services Verified Access provides access to. It must be attached to an Amazon Web Services Verified Access group. An Amazon Web Services Verified Access endpoint must also have an attached access policy before you attached it to a group.

", "refs": { - "CreateVerifiedAccessEndpointResult$VerifiedAccessEndpoint": "

The ID of the Verified Access endpoint.

", - "DeleteVerifiedAccessEndpointResult$VerifiedAccessEndpoint": "

The ID of the Verified Access endpoint.

", - "ModifyVerifiedAccessEndpointResult$VerifiedAccessEndpoint": "

The Verified Access endpoint details.

", + "CreateVerifiedAccessEndpointResult$VerifiedAccessEndpoint": "

Details about the Verified Access endpoint.

", + "DeleteVerifiedAccessEndpointResult$VerifiedAccessEndpoint": "

Details about the Verified Access endpoint.

", + "ModifyVerifiedAccessEndpointResult$VerifiedAccessEndpoint": "

Details about the Verified Access endpoint.

", "VerifiedAccessEndpointList$member": null } }, @@ -22461,7 +23207,7 @@ "VerifiedAccessEndpointList": { "base": null, "refs": { - "DescribeVerifiedAccessEndpointsResult$VerifiedAccessEndpoints": "

The ID of the Verified Access endpoint.

" + "DescribeVerifiedAccessEndpointsResult$VerifiedAccessEndpoints": "

Details about the Verified Access endpoints.

" } }, "VerifiedAccessEndpointLoadBalancerOptions": { @@ -22520,9 +23266,9 @@ "VerifiedAccessGroup": { "base": "

Describes a Verified Access group.

", "refs": { - "CreateVerifiedAccessGroupResult$VerifiedAccessGroup": "

The ID of the Verified Access group.

", - "DeleteVerifiedAccessGroupResult$VerifiedAccessGroup": "

The ID of the Verified Access group.

", - "ModifyVerifiedAccessGroupResult$VerifiedAccessGroup": "

Details of Verified Access group.

", + "CreateVerifiedAccessGroupResult$VerifiedAccessGroup": "

Details about the Verified Access group.

", + "DeleteVerifiedAccessGroupResult$VerifiedAccessGroup": "

Details about the Verified Access group.

", + "ModifyVerifiedAccessGroupResult$VerifiedAccessGroup": "

Details about the Verified Access group.

", "VerifiedAccessGroupList$member": null } }, @@ -22548,17 +23294,17 @@ "VerifiedAccessGroupList": { "base": null, "refs": { - "DescribeVerifiedAccessGroupsResult$VerifiedAccessGroups": "

The ID of the Verified Access group.

" + "DescribeVerifiedAccessGroupsResult$VerifiedAccessGroups": "

Details about the Verified Access groups.

" } }, "VerifiedAccessInstance": { "base": "

Describes a Verified Access instance.

", "refs": { - "AttachVerifiedAccessTrustProviderResult$VerifiedAccessInstance": "

The ID of the Verified Access instance.

", - "CreateVerifiedAccessInstanceResult$VerifiedAccessInstance": "

The ID of the Verified Access instance.

", - "DeleteVerifiedAccessInstanceResult$VerifiedAccessInstance": "

The ID of the Verified Access instance.

", - "DetachVerifiedAccessTrustProviderResult$VerifiedAccessInstance": "

The ID of the Verified Access instance.

", - "ModifyVerifiedAccessInstanceResult$VerifiedAccessInstance": "

The ID of the Verified Access instance.

", + "AttachVerifiedAccessTrustProviderResult$VerifiedAccessInstance": "

Details about the Verified Access instance.

", + "CreateVerifiedAccessInstanceResult$VerifiedAccessInstance": "

Details about the Verified Access instance.

", + "DeleteVerifiedAccessInstanceResult$VerifiedAccessInstance": "

Details about the Verified Access instance.

", + "DetachVerifiedAccessTrustProviderResult$VerifiedAccessInstance": "

Details about the Verified Access instance.

", + "ModifyVerifiedAccessInstanceResult$VerifiedAccessInstance": "

Details about the Verified Access instance.

", "VerifiedAccessInstanceList$member": null } }, @@ -22587,7 +23333,7 @@ "VerifiedAccessInstanceList": { "base": null, "refs": { - "DescribeVerifiedAccessInstancesResult$VerifiedAccessInstances": "

The IDs of the Verified Access instances.

" + "DescribeVerifiedAccessInstancesResult$VerifiedAccessInstances": "

Details about the Verified Access instances.

" } }, "VerifiedAccessInstanceLoggingConfiguration": { @@ -22600,7 +23346,7 @@ "VerifiedAccessInstanceLoggingConfigurationList": { "base": null, "refs": { - "DescribeVerifiedAccessInstanceLoggingConfigurationsResult$LoggingConfigurations": "

The current logging configuration for the Verified Access instances.

" + "DescribeVerifiedAccessInstanceLoggingConfigurationsResult$LoggingConfigurations": "

The logging configuration for the Verified Access instances.

" } }, "VerifiedAccessLogCloudWatchLogsDestination": { @@ -22665,14 +23411,35 @@ "VerifiedAccessInstanceLoggingConfiguration$AccessLogs": "

Details about the logging options.

" } }, + "VerifiedAccessSseSpecificationRequest": { + "base": "

Verified Access provides server side encryption by default to data at rest using Amazon Web Services-owned KMS keys. You also have the option of using customer managed KMS keys, which can be specified using the options below.

", + "refs": { + "CreateVerifiedAccessEndpointRequest$SseSpecification": "

The options for server side encryption.

", + "CreateVerifiedAccessGroupRequest$SseSpecification": "

The options for server side encryption.

", + "CreateVerifiedAccessTrustProviderRequest$SseSpecification": "

The options for server side encryption.

", + "ModifyVerifiedAccessEndpointPolicyRequest$SseSpecification": "

The options for server side encryption.

", + "ModifyVerifiedAccessGroupPolicyRequest$SseSpecification": "

The options for server side encryption.

", + "ModifyVerifiedAccessTrustProviderRequest$SseSpecification": "

The options for server side encryption.

" + } + }, + "VerifiedAccessSseSpecificationResponse": { + "base": "

The options in use for server side encryption.

", + "refs": { + "ModifyVerifiedAccessEndpointPolicyResult$SseSpecification": "

The options in use for server side encryption.

", + "ModifyVerifiedAccessGroupPolicyResult$SseSpecification": "

The options in use for server side encryption.

", + "VerifiedAccessEndpoint$SseSpecification": "

The options in use for server side encryption.

", + "VerifiedAccessGroup$SseSpecification": "

The options in use for server side encryption.

", + "VerifiedAccessTrustProvider$SseSpecification": "

The options in use for server side encryption.

" + } + }, "VerifiedAccessTrustProvider": { "base": "

Describes a Verified Access trust provider.

", "refs": { - "AttachVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

The ID of the Verified Access trust provider.

", - "CreateVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

The ID of the Verified Access trust provider.

", - "DeleteVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

The ID of the Verified Access trust provider.

", - "DetachVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

The ID of the Verified Access trust provider.

", - "ModifyVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

The ID of the Verified Access trust provider.

", + "AttachVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

Details about the Verified Access trust provider.

", + "CreateVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

Details about the Verified Access trust provider.

", + "DeleteVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

Details about the Verified Access trust provider.

", + "DetachVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

Details about the Verified Access trust provider.

", + "ModifyVerifiedAccessTrustProviderResult$VerifiedAccessTrustProvider": "

Details about the Verified Access trust provider.

", "VerifiedAccessTrustProviderList$member": null } }, @@ -22707,7 +23474,7 @@ "VerifiedAccessTrustProviderList": { "base": null, "refs": { - "DescribeVerifiedAccessTrustProvidersResult$VerifiedAccessTrustProviders": "

The IDs of the Verified Access trust providers.

" + "DescribeVerifiedAccessTrustProvidersResult$VerifiedAccessTrustProviders": "

Details about the Verified Access trust providers.

" } }, "VersionDescription": { @@ -22939,7 +23706,7 @@ "base": null, "refs": { "CreateVolumeRequest$VolumeType": "

The volume type. This parameter can be one of the following values:

  • General Purpose SSD: gp2 | gp3

  • Provisioned IOPS SSD: io1 | io2

  • Throughput Optimized HDD: st1

  • Cold HDD: sc1

  • Magnetic: standard

Throughput Optimized HDD (st1) and Cold HDD (sc1) volumes can't be used as boot volumes.

For more information, see Amazon EBS volume types in the Amazon Elastic Compute Cloud User Guide.

Default: gp2

", - "EbsBlockDevice$VolumeType": "

The volume type. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide. If the volume type is io1 or io2, you must specify the IOPS that the volume supports.

", + "EbsBlockDevice$VolumeType": "

The volume type. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide.

", "LaunchTemplateEbsBlockDevice$VolumeType": "

The volume type.

", "LaunchTemplateEbsBlockDeviceRequest$VolumeType": "

The volume type. For more information, see Amazon EBS volume types in the Amazon Elastic Compute Cloud User Guide.

", "ModifyVolumeRequest$VolumeType": "

The target EBS volume type of the volume. For more information, see Amazon EBS volume types in the Amazon Elastic Compute Cloud User Guide.

Default: The existing type is retained.

", @@ -23164,6 +23931,7 @@ "Ec2InstanceConnectEndpoint$VpcId": "

The ID of the VPC in which the EC2 Instance Connect Endpoint was created.

", "EnableVpcClassicLinkDnsSupportRequest$VpcId": "

The ID of the VPC.

", "EnableVpcClassicLinkRequest$VpcId": "

The ID of the VPC.

", + "GetSecurityGroupsForVpcRequest$VpcId": "

The VPC ID where the security group can be used.

", "ModifyClientVpnEndpointRequest$VpcId": "

The ID of the VPC to associate with the Client VPN endpoint.

", "ModifyVpcAttributeRequest$VpcId": "

The ID of the VPC.

", "ModifyVpcTenancyRequest$VpcId": "

The ID of the VPC.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ec2/2016-11-15/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ec2/2016-11-15/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -36,6 +36,12 @@ "output_token": "NextToken", "result_key": "ByoipCidrs" }, + "DescribeCapacityBlockOfferings": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "CapacityBlockOfferings" + }, "DescribeCapacityReservationFleets": { "input_token": "NextToken", "limit_key": "MaxResults", @@ -219,6 +225,12 @@ "output_token": "NextToken", "result_key": "InstanceStatuses" }, + "DescribeInstanceTopology": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "Instances" + }, "DescribeInstanceTypeOfferings": { "input_token": "NextToken", "limit_key": "MaxResults", @@ -785,6 +797,12 @@ "output_token": "NextToken", "result_key": "AnalysisFindings" }, + "GetSecurityGroupsForVpc": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "SecurityGroupForVpcs" + }, "GetSpotPlacementScores": { "input_token": "NextToken", "limit_key": "MaxResults", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecr/2015-09-21/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecr/2015-09-21/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecr/2015-09-21/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecr/2015-09-21/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -53,7 +53,9 @@ "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, - {"shape":"RepositoryNotFoundException"} + {"shape":"RepositoryNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"UnableToGetUpstreamImageException"} ] }, "BatchGetRepositoryScanningConfiguration":{ @@ -105,7 +107,10 @@ {"shape":"ValidationException"}, {"shape":"PullThroughCacheRuleAlreadyExistsException"}, {"shape":"UnsupportedUpstreamRegistryException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"UnableToAccessSecretException"}, + {"shape":"SecretNotFoundException"}, + {"shape":"UnableToDecryptSecretValueException"} ] }, "CreateRepository":{ @@ -320,7 +325,8 @@ {"shape":"InvalidParameterException"}, {"shape":"LayersNotFoundException"}, {"shape":"LayerInaccessibleException"}, - {"shape":"RepositoryNotFoundException"} + {"shape":"RepositoryNotFoundException"}, + {"shape":"UnableToGetUpstreamLayerException"} ] }, "GetLifecyclePolicy":{ @@ -630,6 +636,24 @@ {"shape":"ServerException"} ] }, + "UpdatePullThroughCacheRule":{ + "name":"UpdatePullThroughCacheRule", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdatePullThroughCacheRuleRequest"}, + "output":{"shape":"UpdatePullThroughCacheRuleResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ValidationException"}, + {"shape":"UnableToAccessSecretException"}, + {"shape":"PullThroughCacheRuleNotFoundException"}, + {"shape":"SecretNotFoundException"}, + {"shape":"UnableToDecryptSecretValueException"} + ] + }, "UploadLayerPart":{ "name":"UploadLayerPart", "http":{ @@ -647,6 +671,21 @@ {"shape":"LimitExceededException"}, {"shape":"KmsException"} ] + }, + "ValidatePullThroughCacheRule":{ + "name":"ValidatePullThroughCacheRule", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ValidatePullThroughCacheRuleRequest"}, + "output":{"shape":"ValidatePullThroughCacheRuleResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ValidationException"}, + {"shape":"PullThroughCacheRuleNotFoundException"} + ] } }, "shapes":{ @@ -822,7 +861,9 @@ "members":{ "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, "upstreamRegistryUrl":{"shape":"Url"}, - "registryId":{"shape":"RegistryId"} + "registryId":{"shape":"RegistryId"}, + "upstreamRegistry":{"shape":"UpstreamRegistry"}, + "credentialArn":{"shape":"CredentialArn"} } }, "CreatePullThroughCacheRuleResponse":{ @@ -831,7 +872,9 @@ "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, "upstreamRegistryUrl":{"shape":"Url"}, "createdAt":{"shape":"CreationTimestamp"}, - "registryId":{"shape":"RegistryId"} + "registryId":{"shape":"RegistryId"}, + "upstreamRegistry":{"shape":"UpstreamRegistry"}, + "credentialArn":{"shape":"CredentialArn"} } }, "CreateRepositoryRequest":{ @@ -853,6 +896,12 @@ } }, "CreationTimestamp":{"type":"timestamp"}, + "CredentialArn":{ + "type":"string", + "max":612, + "min":50, + "pattern":"^arn:aws:secretsmanager:[a-zA-Z0-9-:]+:secret:ecr\\-pullthroughcache\\/[a-zA-Z0-9\\/_+=.@-]+$" + }, "CvssScore":{ "type":"structure", "members":{ @@ -919,7 +968,8 @@ "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, "upstreamRegistryUrl":{"shape":"Url"}, "createdAt":{"shape":"CreationTimestamp"}, - "registryId":{"shape":"RegistryId"} + "registryId":{"shape":"RegistryId"}, + "credentialArn":{"shape":"CredentialArn"} } }, "DeleteRegistryPolicyRequest":{ @@ -1342,7 +1392,10 @@ "ImageNotFound", "MissingDigestAndTag", "ImageReferencedByManifestList", - "KmsError" + "KmsError", + "UpstreamAccessDenied", + "UpstreamTooManyRequests", + "UpstreamUnavailable" ] }, "ImageFailureList":{ @@ -1512,6 +1565,7 @@ }, "exception":true }, + "IsPTCRuleValid":{"type":"boolean"}, "KmsError":{"type":"string"}, "KmsException":{ "type":"structure", @@ -1744,6 +1798,7 @@ }, "Metric":{"type":"string"}, "NextToken":{"type":"string"}, + "PTCValidateFailure":{"type":"string"}, "PackageManager":{"type":"string"}, "PackageVulnerabilityDetails":{ "type":"structure", @@ -1772,7 +1827,10 @@ "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, "upstreamRegistryUrl":{"shape":"Url"}, "createdAt":{"shape":"CreationTimestamp"}, - "registryId":{"shape":"RegistryId"} + "registryId":{"shape":"RegistryId"}, + "credentialArn":{"shape":"CredentialArn"}, + "upstreamRegistry":{"shape":"UpstreamRegistry"}, + "updatedAt":{"shape":"UpdatedTimestamp"} } }, "PullThroughCacheRuleAlreadyExistsException":{ @@ -1795,9 +1853,9 @@ }, "PullThroughCacheRuleRepositoryPrefix":{ "type":"string", - "max":20, + "max":30, "min":2, - "pattern":"[a-z0-9]+(?:[._-][a-z0-9]+)*" + "pattern":"(?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*" }, "PullThroughCacheRuleRepositoryPrefixList":{ "type":"list", @@ -2272,6 +2330,13 @@ } }, "ScoringVector":{"type":"string"}, + "SecretNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, "ServerException":{ "type":"structure", "members":{ @@ -2407,6 +2472,34 @@ "exception":true }, "Type":{"type":"string"}, + "UnableToAccessSecretException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "UnableToDecryptSecretValueException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "UnableToGetUpstreamImageException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "UnableToGetUpstreamLayerException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, "UnsupportedImageTypeException":{ "type":"structure", "members":{ @@ -2437,6 +2530,28 @@ "members":{ } }, + "UpdatePullThroughCacheRuleRequest":{ + "type":"structure", + "required":[ + "ecrRepositoryPrefix", + "credentialArn" + ], + "members":{ + "registryId":{"shape":"RegistryId"}, + "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, + "credentialArn":{"shape":"CredentialArn"} + } + }, + "UpdatePullThroughCacheRuleResponse":{ + "type":"structure", + "members":{ + "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, + "registryId":{"shape":"RegistryId"}, + "updatedAt":{"shape":"UpdatedTimestamp"}, + "credentialArn":{"shape":"CredentialArn"} + } + }, + "UpdatedTimestamp":{"type":"timestamp"}, "UploadId":{ "type":"string", "pattern":"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" @@ -2475,7 +2590,37 @@ }, "exception":true }, + "UpstreamRegistry":{ + "type":"string", + "enum":[ + "ecr-public", + "quay", + "k8s", + "docker-hub", + "github-container-registry", + "azure-container-registry" + ] + }, "Url":{"type":"string"}, + "ValidatePullThroughCacheRuleRequest":{ + "type":"structure", + "required":["ecrRepositoryPrefix"], + "members":{ + "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, + "registryId":{"shape":"RegistryId"} + } + }, + "ValidatePullThroughCacheRuleResponse":{ + "type":"structure", + "members":{ + "ecrRepositoryPrefix":{"shape":"PullThroughCacheRuleRepositoryPrefix"}, + "registryId":{"shape":"RegistryId"}, + "upstreamRegistryUrl":{"shape":"Url"}, + "credentialArn":{"shape":"CredentialArn"}, + "isValid":{"shape":"IsPTCRuleValid"}, + "failure":{"shape":"PTCValidateFailure"} + } + }, "ValidationException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecr/2015-09-21/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecr/2015-09-21/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecr/2015-09-21/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecr/2015-09-21/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,12 +7,12 @@ "BatchGetImage": "

Gets detailed information for an image. Images are specified with either an imageTag or imageDigest.

When an image is pulled, the BatchGetImage API is called once to retrieve the image manifest.

", "BatchGetRepositoryScanningConfiguration": "

Gets the scanning configuration for one or more repositories.

", "CompleteLayerUpload": "

Informs Amazon ECR that the image layer upload has completed for a specified registry, repository name, and upload ID. You can optionally provide a sha256 digest of the image layer for data validation purposes.

When an image is pushed, the CompleteLayerUpload API is called once per each new image layer to verify that the upload has completed.

This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.

", - "CreatePullThroughCacheRule": "

Creates a pull through cache rule. A pull through cache rule provides a way to cache images from an external public registry in your Amazon ECR private registry.

", + "CreatePullThroughCacheRule": "

Creates a pull through cache rule. A pull through cache rule provides a way to cache images from an upstream registry source in your Amazon ECR private registry. For more information, see Using pull through cache rules in the Amazon Elastic Container Registry User Guide.

", "CreateRepository": "

Creates a repository. For more information, see Amazon ECR repositories in the Amazon Elastic Container Registry User Guide.

", "DeleteLifecyclePolicy": "

Deletes the lifecycle policy associated with the specified repository.

", "DeletePullThroughCacheRule": "

Deletes a pull through cache rule.

", "DeleteRegistryPolicy": "

Deletes the registry permissions policy.

", - "DeleteRepository": "

Deletes a repository. If the repository contains images, you must either delete all images in the repository or use the force option to delete the repository.

", + "DeleteRepository": "

Deletes a repository. If the repository isn't empty, you must either delete the contents of the repository or use the force option to delete the repository and have Amazon ECR delete all of its contents on your behalf.

", "DeleteRepositoryPolicy": "

Deletes the repository policy associated with the specified repository.

", "DescribeImageReplicationStatus": "

Returns the replication status for a specified image.

", "DescribeImageScanFindings": "

Returns the scan findings for the specified image.

", @@ -42,7 +42,9 @@ "StartLifecyclePolicyPreview": "

Starts a preview of a lifecycle policy for the specified repository. This allows you to see the results before associating the lifecycle policy with the repository.

", "TagResource": "

Adds specified tags to a resource with the specified ARN. Existing tags on a resource are not changed if they are not specified in the request parameters.

", "UntagResource": "

Deletes specified tags from a resource.

", - "UploadLayerPart": "

Uploads an image layer part to Amazon ECR.

When an image is pushed, each new image layer is uploaded in parts. The maximum size of each image layer part can be 20971520 bytes (or about 20MB). The UploadLayerPart API is called once per each new image layer part.

This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.

" + "UpdatePullThroughCacheRule": "

Updates an existing pull through cache rule.

", + "UploadLayerPart": "

Uploads an image layer part to Amazon ECR.

When an image is pushed, each new image layer is uploaded in parts. The maximum size of each image layer part can be 20971520 bytes (or about 20MB). The UploadLayerPart API is called once per each new image layer part.

This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.

", + "ValidatePullThroughCacheRule": "

Validates an existing pull through cache rule for an upstream registry that requires authentication. This will retrieve the contents of the Amazon Web Services Secrets Manager secret, verify the syntax, and then validate that authentication to the upstream registry is successful.

" }, "shapes": { "Arch": { @@ -214,6 +216,18 @@ "Repository$createdAt": "

The date and time, in JavaScript date format, when the repository was created.

" } }, + "CredentialArn": { + "base": null, + "refs": { + "CreatePullThroughCacheRuleRequest$credentialArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials to authenticate to the upstream registry.

", + "CreatePullThroughCacheRuleResponse$credentialArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.

", + "DeletePullThroughCacheRuleResponse$credentialArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.

", + "PullThroughCacheRule$credentialArn": "

The ARN of the Secrets Manager secret associated with the pull through cache rule.

", + "UpdatePullThroughCacheRuleRequest$credentialArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials to authenticate to the upstream registry.

", + "UpdatePullThroughCacheRuleResponse$credentialArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.

", + "ValidatePullThroughCacheRuleResponse$credentialArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.

" + } + }, "CvssScore": { "base": "

The CVSS score for a finding.

", "refs": { @@ -444,8 +458,13 @@ "RepositoryNotFoundException$message": "

The error message associated with the exception.

", "RepositoryPolicyNotFoundException$message": "

The error message associated with the exception.

", "ScanNotFoundException$message": null, + "SecretNotFoundException$message": null, "ServerException$message": "

The error message associated with the exception.

", "TooManyTagsException$message": null, + "UnableToAccessSecretException$message": null, + "UnableToDecryptSecretValueException$message": null, + "UnableToGetUpstreamImageException$message": null, + "UnableToGetUpstreamLayerException$message": null, "UnsupportedImageTypeException$message": null, "UnsupportedUpstreamRegistryException$message": null, "UploadNotFoundException$message": "

The error message associated with the exception.

", @@ -500,7 +519,7 @@ "ForceFlag": { "base": null, "refs": { - "DeleteRepositoryRequest$force": "

If a repository contains images, forces the deletion.

", + "DeleteRepositoryRequest$force": "

If true, deleting the repository force deletes the contents of the repository. If false, the repository must be empty before attempting to delete it.

", "SetRepositoryPolicyRequest$force": "

If the policy you are attempting to set on a repository policy would prevent you from setting another policy in the future, you must force the SetRepositoryPolicy operation. This is intended to prevent accidental repository lock outs.

" } }, @@ -824,6 +843,12 @@ "refs": { } }, + "IsPTCRuleValid": { + "base": null, + "refs": { + "ValidatePullThroughCacheRuleResponse$isValid": "

Whether or not the pull through cache rule was validated. If true, Amazon ECR was able to reach the upstream registry and authentication was successful. If false, there was an issue and validation failed. The failure reason indicates the cause.

" + } + }, "KmsError": { "base": null, "refs": { @@ -1088,6 +1113,12 @@ "ListImagesResponse$nextToken": "

The nextToken value to include in a future ListImages request. When the results of a ListImages request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

" } }, + "PTCValidateFailure": { + "base": null, + "refs": { + "ValidatePullThroughCacheRuleResponse$failure": "

The reason the validation failed. For more details about possible causes and how to address them, see Using pull through cache rules in the Amazon Elastic Container Registry User Guide.

" + } + }, "PackageManager": { "base": null, "refs": { @@ -1152,7 +1183,11 @@ "DeletePullThroughCacheRuleRequest$ecrRepositoryPrefix": "

The Amazon ECR repository prefix associated with the pull through cache rule to delete.

", "DeletePullThroughCacheRuleResponse$ecrRepositoryPrefix": "

The Amazon ECR repository prefix associated with the request.

", "PullThroughCacheRule$ecrRepositoryPrefix": "

The Amazon ECR repository prefix associated with the pull through cache rule.

", - "PullThroughCacheRuleRepositoryPrefixList$member": null + "PullThroughCacheRuleRepositoryPrefixList$member": null, + "UpdatePullThroughCacheRuleRequest$ecrRepositoryPrefix": "

The repository name prefix to use when caching images from the source registry.

", + "UpdatePullThroughCacheRuleResponse$ecrRepositoryPrefix": "

The Amazon ECR repository prefix associated with the pull through cache rule.

", + "ValidatePullThroughCacheRuleRequest$ecrRepositoryPrefix": "

The repository name prefix associated with the pull through cache rule.

", + "ValidatePullThroughCacheRuleResponse$ecrRepositoryPrefix": "

The Amazon ECR repository prefix associated with the pull through cache rule.

" } }, "PullThroughCacheRuleRepositoryPrefixList": { @@ -1341,8 +1376,12 @@ "StartImageScanResponse$registryId": "

The registry ID associated with the request.

", "StartLifecyclePolicyPreviewRequest$registryId": "

The Amazon Web Services account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.

", "StartLifecyclePolicyPreviewResponse$registryId": "

The registry ID associated with the request.

", + "UpdatePullThroughCacheRuleRequest$registryId": "

The Amazon Web Services account ID associated with the registry associated with the pull through cache rule. If you do not specify a registry, the default registry is assumed.

", + "UpdatePullThroughCacheRuleResponse$registryId": "

The registry ID associated with the request.

", "UploadLayerPartRequest$registryId": "

The Amazon Web Services account ID associated with the registry to which you are uploading layer parts. If you do not specify a registry, the default registry is assumed.

", - "UploadLayerPartResponse$registryId": "

The registry ID associated with the request.

" + "UploadLayerPartResponse$registryId": "

The registry ID associated with the request.

", + "ValidatePullThroughCacheRuleRequest$registryId": "

The registry ID associated with the pull through cache rule. If you do not specify a registry, the default registry is assumed.

", + "ValidatePullThroughCacheRuleResponse$registryId": "

The registry ID associated with the request.

" } }, "RegistryPolicyNotFoundException": { @@ -1730,6 +1769,11 @@ "CvssScoreDetails$scoringVector": "

The vector for the CVSS score.

" } }, + "SecretNotFoundException": { + "base": "

The ARN of the secret specified in the pull through cache rule was not found. Update the pull through cache rule with a valid secret ARN and try again.

", + "refs": { + } + }, "ServerException": { "base": "

These errors are usually caused by a server-side issue.

", "refs": { @@ -1875,6 +1919,26 @@ "Resource$type": "

The type of resource.

" } }, + "UnableToAccessSecretException": { + "base": "

The secret is unable to be accessed. Verify the resource permissions for the secret and try again.

", + "refs": { + } + }, + "UnableToDecryptSecretValueException": { + "base": "

The secret is accessible but is unable to be decrypted. Verify the resource permisisons and try again.

", + "refs": { + } + }, + "UnableToGetUpstreamImageException": { + "base": "

The image or images were unable to be pulled using the pull through cache rule. This is usually caused because of an issue with the Secrets Manager secret containing the credentials for the upstream registry.

", + "refs": { + } + }, + "UnableToGetUpstreamLayerException": { + "base": "

There was an issue getting the upstream layer matching the pull through cache rule.

", + "refs": { + } + }, "UnsupportedImageTypeException": { "base": "

The image is of a type that cannot be scanned.

", "refs": { @@ -1895,6 +1959,23 @@ "refs": { } }, + "UpdatePullThroughCacheRuleRequest": { + "base": null, + "refs": { + } + }, + "UpdatePullThroughCacheRuleResponse": { + "base": null, + "refs": { + } + }, + "UpdatedTimestamp": { + "base": null, + "refs": { + "PullThroughCacheRule$updatedAt": "

The date and time, in JavaScript date format, when the pull through cache rule was last updated.

", + "UpdatePullThroughCacheRuleResponse$updatedAt": "

The date and time, in JavaScript date format, when the pull through cache rule was updated.

" + } + }, "UploadId": { "base": null, "refs": { @@ -1921,10 +2002,18 @@ "refs": { } }, + "UpstreamRegistry": { + "base": null, + "refs": { + "CreatePullThroughCacheRuleRequest$upstreamRegistry": "

The name of the upstream registry.

", + "CreatePullThroughCacheRuleResponse$upstreamRegistry": "

The name of the upstream registry associated with the pull through cache rule.

", + "PullThroughCacheRule$upstreamRegistry": "

The name of the upstream source registry associated with the pull through cache rule.

" + } + }, "Url": { "base": null, "refs": { - "CreatePullThroughCacheRuleRequest$upstreamRegistryUrl": "

The registry URL of the upstream public registry to use as the source for the pull through cache rule.

", + "CreatePullThroughCacheRuleRequest$upstreamRegistryUrl": "

The registry URL of the upstream public registry to use as the source for the pull through cache rule. The following is the syntax to use for each supported upstream registry.

  • Amazon ECR Public (ecr-public) - public.ecr.aws

  • Docker Hub (docker-hub) - registry-1.docker.io

  • Quay (quay) - quay.io

  • Kubernetes (k8s) - registry.k8s.io

  • GitHub Container Registry (github-container-registry) - ghcr.io

  • Microsoft Azure Container Registry (azure-container-registry) - <custom>.azurecr.io

", "CreatePullThroughCacheRuleResponse$upstreamRegistryUrl": "

The upstream registry URL associated with the pull through cache rule.

", "DeletePullThroughCacheRuleResponse$upstreamRegistryUrl": "

The upstream registry URL associated with the pull through cache rule.

", "GetDownloadUrlForLayerResponse$downloadUrl": "

The pre-signed Amazon S3 download URL for the requested layer.

", @@ -1933,7 +2022,18 @@ "PullThroughCacheRule$upstreamRegistryUrl": "

The upstream registry URL associated with the pull through cache rule.

", "Recommendation$url": "

The URL address to the CVE remediation recommendations.

", "ReferenceUrlsList$member": null, - "Repository$repositoryUri": "

The URI for the repository. You can use this URI for container image push and pull operations.

" + "Repository$repositoryUri": "

The URI for the repository. You can use this URI for container image push and pull operations.

", + "ValidatePullThroughCacheRuleResponse$upstreamRegistryUrl": "

The upstream registry URL associated with the pull through cache rule.

" + } + }, + "ValidatePullThroughCacheRuleRequest": { + "base": null, + "refs": { + } + }, + "ValidatePullThroughCacheRuleResponse": { + "base": null, + "refs": { } }, "ValidationException": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecr/2015-09-21/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecr/2015-09-21/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecr/2015-09-21/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecr/2015-09-21/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws" ] } ], @@ -252,7 +248,6 @@ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -261,7 +256,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -281,14 +277,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -302,7 +300,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -322,7 +319,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -333,14 +329,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -351,9 +349,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -631,7 +631,8 @@ {"shape":"PlatformUnknownException"}, {"shape":"PlatformTaskDefinitionIncompatibilityException"}, {"shape":"AccessDeniedException"}, - {"shape":"BlockedException"} + {"shape":"BlockedException"}, + {"shape":"ConflictException"} ] }, "StartTask":{ @@ -1211,6 +1212,13 @@ "type":"list", "member":{"shape":"Compatibility"} }, + "ConflictException":{ + "type":"structure", + "members":{ + "resourceIds":{"shape":"ResourceIds"} + }, + "exception":true + }, "Connectivity":{ "type":"string", "enum":[ @@ -2877,6 +2885,10 @@ "stringSetValue":{"shape":"StringList"} } }, + "ResourceIds":{ + "type":"list", + "member":{"shape":"String"} + }, "ResourceInUseException":{ "type":"structure", "members":{ @@ -2935,7 +2947,11 @@ "referenceId":{"shape":"String"}, "startedBy":{"shape":"String"}, "tags":{"shape":"Tags"}, - "taskDefinition":{"shape":"String"} + "taskDefinition":{"shape":"String"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + } } }, "RunTaskResponse":{ @@ -3149,7 +3165,8 @@ "members":{ "name":{"shape":"SettingName"}, "value":{"shape":"String"}, - "principalArn":{"shape":"String"} + "principalArn":{"shape":"String"}, + "type":{"shape":"SettingType"} } }, "SettingName":{ @@ -3162,7 +3179,15 @@ "containerInsights", "fargateFIPSMode", "tagResourceAuthorization", - "fargateTaskRetirementWaitPeriod" + "fargateTaskRetirementWaitPeriod", + "guardDutyActivate" + ] + }, + "SettingType":{ + "type":"string", + "enum":[ + "user", + "aws_managed" ] }, "Settings":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "Amazon Elastic Container Service

Amazon Elastic Container Service (Amazon ECS) is a highly scalable, fast, container management service. It makes it easy to run, stop, and manage Docker containers. You can host your cluster on a serverless infrastructure that's managed by Amazon ECS by launching your services or tasks on Fargate. For more control, you can host your tasks on a cluster of Amazon Elastic Compute Cloud (Amazon EC2) or External (on-premises) instances that you manage.

Amazon ECS makes it easy to launch and stop container-based applications with simple API calls. This makes it easy to get the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features.

You can use Amazon ECS to schedule the placement of containers across your cluster based on your resource needs, isolation policies, and availability requirements. With Amazon ECS, you don't need to operate your own cluster management and configuration management systems. You also don't need to worry about scaling your management infrastructure.

", + "service": "Amazon Elastic Container Service

Amazon Elastic Container Service (Amazon ECS) is a highly scalable, fast, container management service. It makes it easy to run, stop, and manage Docker containers. You can host your cluster on a serverless infrastructure that's managed by Amazon ECS by launching your services or tasks on Fargate. For more control, you can host your tasks on a cluster of Amazon Elastic Compute Cloud (Amazon EC2) or External (on-premises) instances that you manage.

Amazon ECS makes it easy to launch and stop container-based applications with simple API calls. This makes it easy to get the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features.

You can use Amazon ECS to schedule the placement of containers across your cluster based on your resource needs, isolation policies, and availability requirements. With Amazon ECS, you don't need to operate your own cluster management and configuration management systems. You also don't need to worry about scaling your management infrastructure.

", "operations": { "CreateCapacityProvider": "

Creates a new capacity provider. Capacity providers are associated with an Amazon ECS cluster and are used in capacity provider strategies to facilitate cluster auto scaling.

Only capacity providers that use an Auto Scaling group can be created. Amazon ECS tasks on Fargate use the FARGATE and FARGATE_SPOT capacity providers. These providers are available to all accounts in the Amazon Web Services Regions that Fargate supports.

", "CreateCluster": "

Creates a new Amazon ECS cluster. By default, your account receives a default cluster when you launch your first container instance. However, you can create your own cluster with a unique name with the CreateCluster action.

When you call the CreateCluster API operation, Amazon ECS attempts to create the Amazon ECS service-linked role for your account. This is so that it can manage required resources in other Amazon Web Services services on your behalf. However, if the user that makes the call doesn't have permissions to create the service-linked role, it isn't created. For more information, see Using service-linked roles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

", @@ -35,7 +35,7 @@ "ListTaskDefinitionFamilies": "

Returns a list of task definition families that are registered to your account. This list includes task definition families that no longer have any ACTIVE task definition revisions.

You can filter out task definition families that don't contain any ACTIVE task definition revisions by setting the status parameter to ACTIVE. You can also filter the results with the familyPrefix parameter.

", "ListTaskDefinitions": "

Returns a list of task definitions that are registered to your account. You can filter the results by family name with the familyPrefix parameter or by status with the status parameter.

", "ListTasks": "

Returns a list of tasks. You can filter the results by cluster, task definition family, container instance, launch type, what IAM principal started the task, or by the desired status of the task.

Recently stopped tasks might appear in the returned results.

", - "PutAccountSetting": "

Modifies an account setting. Account settings are set on a per-Region basis.

If you change the root user account setting, the default settings are reset for users and roles that do not have specified individual account settings. For more information, see Account Settings in the Amazon Elastic Container Service Developer Guide.

When you specify serviceLongArnFormat, taskLongArnFormat, or containerInstanceLongArnFormat, the Amazon Resource Name (ARN) and resource ID format of the resource type for a specified user, role, or the root user for an account is affected. The opt-in and opt-out account setting must be set for each Amazon ECS resource separately. The ARN and resource ID format of a resource is defined by the opt-in status of the user or role that created the resource. You must turn on this setting to use Amazon ECS features such as resource tagging.

When you specify awsvpcTrunking, the elastic network interface (ENI) limit for any new container instances that support the feature is changed. If awsvpcTrunking is turned on, any new container instances that support the feature are launched have the increased ENI limits available to them. For more information, see Elastic Network Interface Trunking in the Amazon Elastic Container Service Developer Guide.

When you specify containerInsights, the default setting indicating whether Amazon Web Services CloudWatch Container Insights is turned on for your clusters is changed. If containerInsights is turned on, any new clusters that are created will have Container Insights turned on unless you disable it during cluster creation. For more information, see CloudWatch Container Insights in the Amazon Elastic Container Service Developer Guide.

Amazon ECS is introducing tagging authorization for resource creation. Users must have permissions for actions that create the resource, such as ecsCreateCluster. If tags are specified when you create a resource, Amazon Web Services performs additional authorization to verify if users or roles have permissions to create tags. Therefore, you must grant explicit permissions to use the ecs:TagResource action. For more information, see Grant permission to tag resources on creation in the Amazon ECS Developer Guide.

When Amazon Web Services determines that a security or infrastructure update is needed for an Amazon ECS task hosted on Fargate, the tasks need to be stopped and new tasks launched to replace them. Use fargateTaskRetirementWaitPeriod to configure the wait time to retire a Fargate task. For information about the Fargate tasks maintenance, see Amazon Web Services Fargate task maintenance in the Amazon ECS Developer Guide.

", + "PutAccountSetting": "

Modifies an account setting. Account settings are set on a per-Region basis.

If you change the root user account setting, the default settings are reset for users and roles that do not have specified individual account settings. For more information, see Account Settings in the Amazon Elastic Container Service Developer Guide.

When you specify serviceLongArnFormat, taskLongArnFormat, or containerInstanceLongArnFormat, the Amazon Resource Name (ARN) and resource ID format of the resource type for a specified user, role, or the root user for an account is affected. The opt-in and opt-out account setting must be set for each Amazon ECS resource separately. The ARN and resource ID format of a resource is defined by the opt-in status of the user or role that created the resource. You must turn on this setting to use Amazon ECS features such as resource tagging.

When you specify awsvpcTrunking, the elastic network interface (ENI) limit for any new container instances that support the feature is changed. If awsvpcTrunking is turned on, any new container instances that support the feature are launched have the increased ENI limits available to them. For more information, see Elastic Network Interface Trunking in the Amazon Elastic Container Service Developer Guide.

When you specify containerInsights, the default setting indicating whether Amazon Web Services CloudWatch Container Insights is turned on for your clusters is changed. If containerInsights is turned on, any new clusters that are created will have Container Insights turned on unless you disable it during cluster creation. For more information, see CloudWatch Container Insights in the Amazon Elastic Container Service Developer Guide.

Amazon ECS is introducing tagging authorization for resource creation. Users must have permissions for actions that create the resource, such as ecsCreateCluster. If tags are specified when you create a resource, Amazon Web Services performs additional authorization to verify if users or roles have permissions to create tags. Therefore, you must grant explicit permissions to use the ecs:TagResource action. For more information, see Grant permission to tag resources on creation in the Amazon ECS Developer Guide.

When Amazon Web Services determines that a security or infrastructure update is needed for an Amazon ECS task hosted on Fargate, the tasks need to be stopped and new tasks launched to replace them. Use fargateTaskRetirementWaitPeriod to configure the wait time to retire a Fargate task. For information about the Fargate tasks maintenance, see Amazon Web Services Fargate task maintenance in the Amazon ECS Developer Guide.

The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your Amazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

", "PutAccountSettingDefault": "

Modifies an account setting for all users on an account for whom no individual account setting has been specified. Account settings are set on a per-Region basis.

", "PutAttributes": "

Create or update an attribute on an Amazon ECS resource. If the attribute doesn't exist, it's created. If the attribute exists, its value is replaced with the specified value. To delete an attribute, use DeleteAttributes. For more information, see Attributes in the Amazon Elastic Container Service Developer Guide.

", "PutClusterCapacityProviders": "

Modifies the available capacity providers and the default capacity provider strategy for a cluster.

You must specify both the available capacity providers and a default capacity provider strategy for the cluster. If the specified cluster has existing capacity providers associated with it, you must specify all existing capacity providers in addition to any new ones you want to add. Any existing capacity providers that are associated with a cluster that are omitted from a PutClusterCapacityProviders API call will be disassociated with the cluster. You can only disassociate an existing capacity provider from a cluster if it's not being used by any existing tasks.

When creating a service or running a task on a cluster, if no capacity provider or launch type is specified, then the cluster's default capacity provider strategy is used. We recommend that you define a default capacity provider strategy for your cluster. However, you must specify an empty array ([]) to bypass defining a default strategy.

", @@ -74,7 +74,7 @@ "ApplicationProtocol": { "base": null, "refs": { - "PortMapping$appProtocol": "

The application protocol that's used for the port mapping. This parameter only applies to Service Connect. We recommend that you set this parameter to be consistent with the protocol that your application uses. If you set this parameter, Amazon ECS adds protocol-specific connection handling to the Service Connect proxy. If you set this parameter, Amazon ECS adds protocol-specific telemetry in the Amazon ECS console and CloudWatch.

If you don't set a value for this parameter, then TCP is used. However, Amazon ECS doesn't add protocol-specific telemetry for TCP.

Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

" + "PortMapping$appProtocol": "

The application protocol that's used for the port mapping. This parameter only applies to Service Connect. We recommend that you set this parameter to be consistent with the protocol that your application uses. If you set this parameter, Amazon ECS adds protocol-specific connection handling to the Service Connect proxy. If you set this parameter, Amazon ECS adds protocol-specific telemetry in the Amazon ECS console and CloudWatch.

If you don't set a value for this parameter, then TCP is used. However, Amazon ECS doesn't add protocol-specific telemetry for TCP.

appProtocol is immutable in a Service Connect service. Updating this field requires a service deletion and redeployment.

Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

" } }, "AssignPublicIp": { @@ -340,7 +340,7 @@ } }, "ClientException": { - "base": "

These errors are usually caused by a client action. This client action might be using an action or resource on behalf of a user that doesn't have permissions to use the action or resource,. Or, it might be specifying an identifier that isn't valid.

", + "base": "

These errors are usually caused by a client action. This client action might be using an action or resource on behalf of a user that doesn't have permissions to use the action or resource. Or, it might be specifying an identifier that isn't valid.

", "refs": { } }, @@ -449,6 +449,11 @@ "TaskDefinition$requiresCompatibilities": "

The task launch types the task definition was validated against. The valid values are EC2, FARGATE, and EXTERNAL. For more information, see Amazon ECS launch types in the Amazon Elastic Container Service Developer Guide.

" } }, + "ConflictException": { + "base": "

The RunTask request could not be processed due to conflicts. The provided clientToken is already in use with a different RunTask request. The resourceIds are the existing task ARNs which are already associated with the clientToken.

To fix this issue:

  • Run RunTask with a unique clientToken.

  • Run RunTask with the clientToken and the original set of parameters

", + "refs": { + } + }, "Connectivity": { "base": null, "refs": { @@ -898,7 +903,7 @@ } }, "EnvironmentFile": { - "base": "

A list of files containing the environment variables to pass to a container. You can specify up to ten environment files. The file must have a .env file extension. Each line in an environment file should contain an environment variable in VARIABLE=VALUE format. Lines beginning with # are treated as comments and are ignored. For more information about the environment variable file syntax, see Declare default environment variables in file.

If there are environment variables specified using the environment parameter in a container definition, they take precedence over the variables contained within an environment file. If multiple environment files are specified that contain the same variable, they're processed from the top down. We recommend that you use unique variable names. For more information, see Specifying environment variables in the Amazon Elastic Container Service Developer Guide.

You must use the following platforms for the Fargate launch type:

  • Linux platform version 1.4.0 or later.

  • Windows platform version 1.0.0 or later.

", + "base": "

A list of files containing the environment variables to pass to a container. You can specify up to ten environment files. The file must have a .env file extension. Each line in an environment file should contain an environment variable in VARIABLE=VALUE format. Lines beginning with # are treated as comments and are ignored.

If there are environment variables specified using the environment parameter in a container definition, they take precedence over the variables contained within an environment file. If multiple environment files are specified that contain the same variable, they're processed from the top down. We recommend that you use unique variable names. For more information, see Specifying environment variables in the Amazon Elastic Container Service Developer Guide.

You must use the following platforms for the Fargate launch type:

  • Linux platform version 1.4.0 or later.

  • Windows platform version 1.0.0 or later.

Consider the following when using the Fargate launch type:

  • The file is handled like a native Docker env-file.

  • There is no support for shell escape handling.

  • The container entry point interperts the VARIABLE values.

", "refs": { "EnvironmentFiles$member": null } @@ -1030,7 +1035,7 @@ } }, "HealthCheck": { - "base": "

An object representing a container health check. Health check parameters that are specified in a container definition override any Docker health checks that exist in the container image (such as those specified in a parent image or from the image's Dockerfile). This configuration maps to the HEALTHCHECK parameter of docker run.

The Amazon ECS container agent only monitors and reports on the health checks specified in the task definition. Amazon ECS does not monitor Docker health checks that are embedded in a container image and not specified in the container definition. Health check parameters that are specified in a container definition override any Docker health checks that exist in the container image.

You can view the health status of both individual containers and a task with the DescribeTasks API operation or when viewing the task details in the console.

The health check is designed to make sure that your containers survive agent restarts, upgrades, or temporary unavailability.

The following describes the possible healthStatus values for a container:

  • HEALTHY-The container health check has passed successfully.

  • UNHEALTHY-The container health check has failed.

  • UNKNOWN-The container health check is being evaluated or there's no container health check defined.

The following describes the possible healthStatus values for a task. The container health check status of non-essential containers don't have an effect on the health status of a task.

  • HEALTHY-All essential containers within the task have passed their health checks.

  • UNHEALTHY-One or more essential containers have failed their health check.

  • UNKNOWN-The essential containers within the task are still having their health checks evaluated, there are only nonessential containers with health checks defined, or there are no container health checks defined.

If a task is run manually, and not as part of a service, the task will continue its lifecycle regardless of its health status. For tasks that are part of a service, if the task reports as unhealthy then the task will be stopped and the service scheduler will replace it.

The following are notes about container health check support:

  • When the Amazon ECS agent cannot connect to the Amazon ECS service, the service reports the container as UNHEALTHY.

  • The health check statuses are the \"last heard from\" response from the Amazon ECS agent. There are no assumptions made about the status of the container health checks.

  • Container health checks require version 1.17.0 or greater of the Amazon ECS container agent. For more information, see Updating the Amazon ECS container agent.

  • Container health checks are supported for Fargate tasks if you're using platform version 1.1.0 or greater. For more information, see Fargate platform versions.

  • Container health checks aren't supported for tasks that are part of a service that's configured to use a Classic Load Balancer.

", + "base": "

An object representing a container health check. Health check parameters that are specified in a container definition override any Docker health checks that exist in the container image (such as those specified in a parent image or from the image's Dockerfile). This configuration maps to the HEALTHCHECK parameter of docker run.

The Amazon ECS container agent only monitors and reports on the health checks specified in the task definition. Amazon ECS does not monitor Docker health checks that are embedded in a container image and not specified in the container definition. Health check parameters that are specified in a container definition override any Docker health checks that exist in the container image.

You can view the health status of both individual containers and a task with the DescribeTasks API operation or when viewing the task details in the console.

The health check is designed to make sure that your containers survive agent restarts, upgrades, or temporary unavailability.

The following describes the possible healthStatus values for a container:

  • HEALTHY-The container health check has passed successfully.

  • UNHEALTHY-The container health check has failed.

  • UNKNOWN-The container health check is being evaluated, there's no container health check defined, or Amazon ECS doesn't have the health status of the container.

The following describes the possible healthStatus values based on the container health checker status of essential containers in the task with the following priority order (high to low):

  • UNHEALTHY-One or more essential containers have failed their health check.

  • UNKNOWN-Any essential container running within the task is in an UNKNOWN state and no other essential containers have an UNHEALTHY state.

  • HEALTHY-All essential containers within the task have passed their health checks.

Consider the following task health example with 2 containers.

  • If Container1 is UNHEALTHY and Container2 is UNKNOWN, the task health is UNHEALTHY.

  • If Container1 is UNHEALTHY and Container2 is HEALTHY, the task health is UNHEALTHY.

  • If Container1 is HEALTHY and Container2 is UNKNOWN, the task health is UNKNOWN.

  • If Container1 is HEALTHY and Container2 is HEALTHY, the task health is HEALTHY.

Consider the following task health example with 3 containers.

  • If Container1 is UNHEALTHY and Container2 is UNKNOWN, and Container3 is UNKNOWN, the task health is UNHEALTHY.

  • If Container1 is UNHEALTHY and Container2 is UNKNOWN, and Container3 is HEALTHY, the task health is UNHEALTHY.

  • If Container1 is UNHEALTHY and Container2 is HEALTHY, and Container3 is HEALTHY, the task health is UNHEALTHY.

  • If Container1 is HEALTHY and Container2 is UNKNOWN, and Container3 is HEALTHY, the task health is UNKNOWN.

  • If Container1 is HEALTHY and Container2 is UNKNOWN, and Container3 is UNKNOWN, the task health is UNKNOWN.

  • If Container1 is HEALTHY and Container2 is HEALTHY, and Container3 is HEALTHY, the task health is HEALTHY.

If a task is run manually, and not as part of a service, the task will continue its lifecycle regardless of its health status. For tasks that are part of a service, if the task reports as unhealthy then the task will be stopped and the service scheduler will replace it.

The following are notes about container health check support:

  • When the Amazon ECS agent cannot connect to the Amazon ECS service, the service reports the container as UNHEALTHY.

  • The health check statuses are the \"last heard from\" response from the Amazon ECS agent. There are no assumptions made about the status of the container health checks.

  • Container health checks require version 1.17.0 or greater of the Amazon ECS container agent. For more information, see Updating the Amazon ECS container agent.

  • Container health checks are supported for Fargate tasks if you're using platform version 1.1.0 or greater. For more information, see Fargate platform versions.

  • Container health checks aren't supported for tasks that are part of a service that's configured to use a Classic Load Balancer.

", "refs": { "ContainerDefinition$healthCheck": "

The container health check command and associated configuration parameters for the container. This parameter maps to HealthCheck in the Create a container section of the Docker Remote API and the HEALTHCHECK parameter of docker run.

" } @@ -1700,6 +1705,12 @@ "Resources$member": null } }, + "ResourceIds": { + "base": null, + "refs": { + "ConflictException$resourceIds": "

The existing task ARNs which are already associated with the clientToken.

" + } + }, "ResourceInUseException": { "base": "

The specified resource is in-use and can't be removed.

", "refs": { @@ -1935,11 +1946,17 @@ "refs": { "DeleteAccountSettingRequest$name": "

The resource name to disable the account setting for. If serviceLongArnFormat is specified, the ARN for your Amazon ECS services is affected. If taskLongArnFormat is specified, the ARN and resource ID for your Amazon ECS tasks is affected. If containerInstanceLongArnFormat is specified, the ARN and resource ID for your Amazon ECS container instances is affected. If awsvpcTrunking is specified, the ENI limit for your Amazon ECS container instances is affected.

", "ListAccountSettingsRequest$name": "

The name of the account setting you want to list the settings for.

", - "PutAccountSettingDefaultRequest$name": "

The resource name for which to modify the account setting. If you specify serviceLongArnFormat, the ARN for your Amazon ECS services is affected. If you specify taskLongArnFormat, the ARN and resource ID for your Amazon ECS tasks is affected. If you specify containerInstanceLongArnFormat, the ARN and resource ID for your Amazon ECS container instances is affected. If you specify awsvpcTrunking, the ENI limit for your Amazon ECS container instances is affected. If you specify containerInsights, the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If you specify tagResourceAuthorization, the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see Tagging authorization timeline in the Amazon ECS Developer Guide. If you specify fargateTaskRetirementWaitPeriod, the default wait time to retire a Fargate task due to required maintenance is affected.

When you specify fargateFIPSMode for the name and enabled for the value, Fargate uses FIPS-140 compliant cryptographic algorithms on your tasks. For more information about FIPS-140 compliance with Fargate, see Amazon Web Services Fargate Federal Information Processing Standard (FIPS) 140-2 compliance in the Amazon Elastic Container Service Developer Guide.

When Amazon Web Services determines that a security or infrastructure update is needed for an Amazon ECS task hosted on Fargate, the tasks need to be stopped and new tasks launched to replace them. Use fargateTaskRetirementWaitPeriod to set the wait time to retire a Fargate task to the default. For information about the Fargate tasks maintenance, see Amazon Web Services Fargate task maintenance in the Amazon ECS Developer Guide.

", - "PutAccountSettingRequest$name": "

The Amazon ECS resource name for which to modify the account setting. If you specify serviceLongArnFormat, the ARN for your Amazon ECS services is affected. If you specify taskLongArnFormat, the ARN and resource ID for your Amazon ECS tasks is affected. If you specify containerInstanceLongArnFormat, the ARN and resource ID for your Amazon ECS container instances is affected. If you specify awsvpcTrunking, the elastic network interface (ENI) limit for your Amazon ECS container instances is affected. If you specify containerInsights, the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If you specify fargateFIPSMode, Fargate FIPS 140 compliance is affected. If you specify tagResourceAuthorization, the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see Tagging authorization timeline in the Amazon ECS Developer Guide. If you specify fargateTaskRetirementWaitPeriod, the wait time to retire a Fargate task is affected.

", + "PutAccountSettingDefaultRequest$name": "

The resource name for which to modify the account setting. If you specify serviceLongArnFormat, the ARN for your Amazon ECS services is affected. If you specify taskLongArnFormat, the ARN and resource ID for your Amazon ECS tasks is affected. If you specify containerInstanceLongArnFormat, the ARN and resource ID for your Amazon ECS container instances is affected. If you specify awsvpcTrunking, the ENI limit for your Amazon ECS container instances is affected. If you specify containerInsights, the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If you specify tagResourceAuthorization, the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see Tagging authorization timeline in the Amazon ECS Developer Guide. If you specify fargateTaskRetirementWaitPeriod, the default wait time to retire a Fargate task due to required maintenance is affected.

When you specify fargateFIPSMode for the name and enabled for the value, Fargate uses FIPS-140 compliant cryptographic algorithms on your tasks. For more information about FIPS-140 compliance with Fargate, see Amazon Web Services Fargate Federal Information Processing Standard (FIPS) 140-2 compliance in the Amazon Elastic Container Service Developer Guide.

When Amazon Web Services determines that a security or infrastructure update is needed for an Amazon ECS task hosted on Fargate, the tasks need to be stopped and new tasks launched to replace them. Use fargateTaskRetirementWaitPeriod to set the wait time to retire a Fargate task to the default. For information about the Fargate tasks maintenance, see Amazon Web Services Fargate task maintenance in the Amazon ECS Developer Guide.

The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your Amazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

", + "PutAccountSettingRequest$name": "

The Amazon ECS resource name for which to modify the account setting. If you specify serviceLongArnFormat, the ARN for your Amazon ECS services is affected. If you specify taskLongArnFormat, the ARN and resource ID for your Amazon ECS tasks is affected. If you specify containerInstanceLongArnFormat, the ARN and resource ID for your Amazon ECS container instances is affected. If you specify awsvpcTrunking, the elastic network interface (ENI) limit for your Amazon ECS container instances is affected. If you specify containerInsights, the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If you specify fargateFIPSMode, Fargate FIPS 140 compliance is affected. If you specify tagResourceAuthorization, the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see Tagging authorization timeline in the Amazon ECS Developer Guide. If you specify fargateTaskRetirementWaitPeriod, the wait time to retire a Fargate task is affected.

The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your Amazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

", "Setting$name": "

The Amazon ECS resource name.

" } }, + "SettingType": { + "base": null, + "refs": { + "Setting$type": "

Indicates whether Amazon Web Services manages the account setting, or if the user manages it.

aws_managed account settings are read-only, as Amazon Web Services manages such on the customer's behalf. Currently, the guardDutyActivate account setting is the only one Amazon Web Services manages.

" + } + }, "Settings": { "base": null, "refs": { @@ -2006,7 +2023,7 @@ "Cluster$status": "

The status of the cluster. The following are the possible states that are returned.

ACTIVE

The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.

PROVISIONING

The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.

DEPROVISIONING

The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.

FAILED

The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.

INACTIVE

The cluster has been deleted. Clusters with an INACTIVE status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely on INACTIVE clusters persisting.

", "Cluster$attachmentsStatus": "

The status of the capacity providers associated with the cluster. The following are the states that are returned.

UPDATE_IN_PROGRESS

The available capacity providers for the cluster are updating.

UPDATE_COMPLETE

The capacity providers have successfully updated.

UPDATE_FAILED

The capacity provider updates failed.

", "ClusterServiceConnectDefaults$namespace": "

The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace. When you create a service and don't specify a Service Connect configuration, this namespace is used.

", - "ClusterServiceConnectDefaultsRequest$namespace": "

The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace that's used when you create a service and don't specify a Service Connect configuration. The namespace name can include up to 1024 characters. The name is case-sensitive. The name can't include hyphens (-), tilde (~), greater than (>), less than (<), or slash (/).

If you enter an existing namespace name or ARN, then that namespace will be used. Any namespace type is supported. The namespace must be in this account and this Amazon Web Services Region.

If you enter a new name, a Cloud Map namespace will be created. Amazon ECS creates a Cloud Map namespace with the \"API calls\" method of instance discovery only. This instance discovery method is the \"HTTP\" namespace type in the Command Line Interface. Other types of instance discovery aren't used by Service Connect.

If you update the service with an empty string \"\" for the namespace name, the cluster configuration for Service Connect is removed. Note that the namespace will remain in Cloud Map and must be deleted separately.

For more information about Cloud Map, see Working with Services in the Cloud Map Developer Guide.

", + "ClusterServiceConnectDefaultsRequest$namespace": "

The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace that's used when you create a service and don't specify a Service Connect configuration. The namespace name can include up to 1024 characters. The name is case-sensitive. The name can't include hyphens (-), tilde (~), greater than (>), less than (<), or slash (/).

If you enter an existing namespace name or ARN, then that namespace will be used. Any namespace type is supported. The namespace must be in this account and this Amazon Web Services Region.

If you enter a new name, a Cloud Map namespace will be created. Amazon ECS creates a Cloud Map namespace with the \"API calls\" method of instance discovery only. This instance discovery method is the \"HTTP\" namespace type in the Command Line Interface. Other types of instance discovery aren't used by Service Connect.

If you update the cluster with an empty string \"\" for the namespace name, the cluster configuration for Service Connect is removed. Note that the namespace will remain in Cloud Map and must be deleted separately.

For more information about Cloud Map, see Working with Services in the Cloud Map Developer Guide.

", "ClusterSetting$value": "

The value to set for the cluster setting. The supported values are enabled and disabled.

If you set name to containerInsights and value to enabled, CloudWatch Container Insights will be on for the cluster, otherwise it will be off unless the containerInsights account setting is turned on. If a cluster value is specified, it will override the containerInsights value set with PutAccountSetting or PutAccountSettingDefault.

", "Container$containerArn": "

The Amazon Resource Name (ARN) of the container.

", "Container$taskArn": "

The ARN of the task.

", @@ -2041,7 +2058,7 @@ "CreateServiceRequest$cluster": "

The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed.

", "CreateServiceRequest$serviceName": "

The name of your service. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. Service names must be unique within a cluster, but you can have similarly named services in multiple clusters within a Region or across multiple Regions.

", "CreateServiceRequest$taskDefinition": "

The family and revision (family:revision) or full ARN of the task definition to run in your service. If a revision isn't specified, the latest ACTIVE revision is used.

A task definition must be specified if the service uses either the ECS or CODE_DEPLOY deployment controllers.

For more information about deployment types, see Amazon ECS deployment types.

", - "CreateServiceRequest$clientToken": "

An identifier that you provide to ensure the idempotency of the request. It must be unique and is case sensitive. Up to 32 ASCII characters are allowed.

", + "CreateServiceRequest$clientToken": "

An identifier that you provide to ensure the idempotency of the request. It must be unique and is case sensitive. Up to 36 ASCII characters in the range of 33-126 (inclusive) are allowed.

", "CreateServiceRequest$platformVersion": "

The platform version that your tasks in the service are running on. A platform version is specified only for tasks using the Fargate launch type. If one isn't specified, the LATEST platform version is used. For more information, see Fargate platform versions in the Amazon Elastic Container Service Developer Guide.

", "CreateServiceRequest$role": "

The name or full Amazon Resource Name (ARN) of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is only permitted if you are using a load balancer with your service and your task definition doesn't use the awsvpc network mode. If you specify the role parameter, you must also specify a load balancer object with the loadBalancers parameter.

If your account has already created the Amazon ECS service-linked role, that role is used for your service unless you specify a role here. The service-linked role is required if your task definition uses the awsvpc network mode or if the service is configured to use service discovery, an external deployment controller, multiple target groups, or Elastic Inference accelerators in which case you don't specify a role here. For more information, see Using service-linked roles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path. For example, if a role with the name bar has a path of /foo/ then you would specify /foo/bar as the role name. For more information, see Friendly names and paths in the IAM User Guide.

", "CreateTaskSetRequest$service": "

The short name or full Amazon Resource Name (ARN) of the service to create the task set in.

", @@ -2049,7 +2066,7 @@ "CreateTaskSetRequest$externalId": "

An optional non-unique tag that identifies this task set in external systems. If the task set is associated with a service discovery registry, the tasks in this task set will have the ECS_TASK_SET_EXTERNAL_ID Cloud Map attribute set to the provided value.

", "CreateTaskSetRequest$taskDefinition": "

The task definition for the tasks in the task set to use. If a revision isn't specified, the latest ACTIVE revision is used.

", "CreateTaskSetRequest$platformVersion": "

The platform version that the tasks in the task set uses. A platform version is specified only for tasks using the Fargate launch type. If one isn't specified, the LATEST platform version is used.

", - "CreateTaskSetRequest$clientToken": "

The identifier that you provide to ensure the idempotency of the request. It's case sensitive and must be unique. It can be up to 32 ASCII characters are allowed.

", + "CreateTaskSetRequest$clientToken": "

An identifier that you provide to ensure the idempotency of the request. It must be unique and is case sensitive. Up to 36 ASCII characters in the range of 33-126 (inclusive) are allowed.

", "DeleteAccountSettingRequest$principalArn": "

The Amazon Resource Name (ARN) of the principal. It can be an user, role, or the root user. If you specify the root user, it disables the account setting for all users, roles, and the root user of the account unless a user or role explicitly overrides these settings. If this field is omitted, the setting is changed only for the authenticated user.

", "DeleteAttributesRequest$cluster": "

The short name or full Amazon Resource Name (ARN) of the cluster that contains the resource to delete attributes. If you do not specify a cluster, the default cluster is assumed.

", "DeleteCapacityProviderRequest$capacityProvider": "

The short name or full Amazon Resource Name (ARN) of the capacity provider to delete.

", @@ -2170,7 +2187,7 @@ "MountPoint$sourceVolume": "

The name of the volume to mount. Must be a volume name referenced in the name parameter of task definition volume.

", "MountPoint$containerPath": "

The path on the container to mount the host volume at.

", "NetworkBinding$bindIP": "

The IP address that the container is bound to on the container instance.

", - "NetworkBinding$containerPortRange": "

The port number range on the container that's bound to the dynamically mapped host port range.

The following rules apply when you specify a containerPortRange:

  • You must use either the bridge network mode or the awsvpc network mode.

  • This parameter is available for both the EC2 and Fargate launch types.

  • This parameter is available for both the Linux and Windows operating systems.

  • The container instance must have at least version 1.67.0 of the container agent and at least version 1.67.0-1 of the ecs-init package

  • You can specify a maximum of 100 port ranges per container.

  • You do not specify a hostPortRange. The value of the hostPortRange is set as follows:

    • For containers in a task with the awsvpc network mode, the hostPort is set to the same value as the containerPort. This is a static mapping strategy.

    • For containers in a task with the bridge network mode, the Amazon ECS agent finds open host ports from the default ephemeral range and passes it to docker to bind them to the container ports.

  • The containerPortRange valid values are between 1 and 65535.

  • A port can only be included in one port mapping per container.

  • You cannot specify overlapping port ranges.

  • The first port in the range must be less than last port in the range.

  • Docker recommends that you turn off the docker-proxy in the Docker daemon config file when you have a large number of ports.

    For more information, see Issue #11185 on the Github website.

    For information about how to turn off the docker-proxy in the Docker daemon config file, see Docker daemon in the Amazon ECS Developer Guide.

You can call DescribeTasks to view the hostPortRange which are the host ports that are bound to the container ports.

", + "NetworkBinding$containerPortRange": "

The port number range on the container that's bound to the dynamically mapped host port range.

The following rules apply when you specify a containerPortRange:

  • You must use either the bridge network mode or the awsvpc network mode.

  • This parameter is available for both the EC2 and Fargate launch types.

  • This parameter is available for both the Linux and Windows operating systems.

  • The container instance must have at least version 1.67.0 of the container agent and at least version 1.67.0-1 of the ecs-init package

  • You can specify a maximum of 100 port ranges per container.

  • You do not specify a hostPortRange. The value of the hostPortRange is set as follows:

    • For containers in a task with the awsvpc network mode, the hostPortRange is set to the same value as the containerPortRange. This is a static mapping strategy.

    • For containers in a task with the bridge network mode, the Amazon ECS agent finds open host ports from the default ephemeral range and passes it to docker to bind them to the container ports.

  • The containerPortRange valid values are between 1 and 65535.

  • A port can only be included in one port mapping per container.

  • You cannot specify overlapping port ranges.

  • The first port in the range must be less than last port in the range.

  • Docker recommends that you turn off the docker-proxy in the Docker daemon config file when you have a large number of ports.

    For more information, see Issue #11185 on the Github website.

    For information about how to turn off the docker-proxy in the Docker daemon config file, see Docker daemon in the Amazon ECS Developer Guide.

You can call DescribeTasks to view the hostPortRange which are the host ports that are bound to the container ports.

", "NetworkBinding$hostPortRange": "

The port number range on the host that's used with the network binding. This is assigned is assigned by Docker and delivered by the Amazon ECS agent.

", "NetworkInterface$attachmentId": "

The attachment ID for the network interface.

", "NetworkInterface$privateIpv4Address": "

The private IPv4 address for the network interface.

", @@ -2179,7 +2196,7 @@ "PlacementStrategy$field": "

The field to apply the placement strategy against. For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that's applied to a container instance, such as attribute:ecs.availability-zone. For the binpack placement strategy, valid values are cpu and memory. For the random placement strategy, this field is not used.

", "PlatformDevice$id": "

The ID for the GPUs on the container instance. The available GPU IDs can also be obtained on the container instance in the /var/lib/ecs/gpu/nvidia_gpu_info.json file.

", "PortMapping$name": "

The name that's used for the port mapping. This parameter only applies to Service Connect. This parameter is the name that you use in the serviceConnectConfiguration of a service. The name can include up to 64 characters. The characters can include lowercase letters, numbers, underscores (_), and hyphens (-). The name can't start with a hyphen.

For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

", - "PortMapping$containerPortRange": "

The port number range on the container that's bound to the dynamically mapped host port range.

The following rules apply when you specify a containerPortRange:

  • You must use either the bridge network mode or the awsvpc network mode.

  • This parameter is available for both the EC2 and Fargate launch types.

  • This parameter is available for both the Linux and Windows operating systems.

  • The container instance must have at least version 1.67.0 of the container agent and at least version 1.67.0-1 of the ecs-init package

  • You can specify a maximum of 100 port ranges per container.

  • You do not specify a hostPortRange. The value of the hostPortRange is set as follows:

    • For containers in a task with the awsvpc network mode, the hostPort is set to the same value as the containerPort. This is a static mapping strategy.

    • For containers in a task with the bridge network mode, the Amazon ECS agent finds open host ports from the default ephemeral range and passes it to docker to bind them to the container ports.

  • The containerPortRange valid values are between 1 and 65535.

  • A port can only be included in one port mapping per container.

  • You cannot specify overlapping port ranges.

  • The first port in the range must be less than last port in the range.

  • Docker recommends that you turn off the docker-proxy in the Docker daemon config file when you have a large number of ports.

    For more information, see Issue #11185 on the Github website.

    For information about how to turn off the docker-proxy in the Docker daemon config file, see Docker daemon in the Amazon ECS Developer Guide.

You can call DescribeTasks to view the hostPortRange which are the host ports that are bound to the container ports.

", + "PortMapping$containerPortRange": "

The port number range on the container that's bound to the dynamically mapped host port range.

The following rules apply when you specify a containerPortRange:

  • You must use either the bridge network mode or the awsvpc network mode.

  • This parameter is available for both the EC2 and Fargate launch types.

  • This parameter is available for both the Linux and Windows operating systems.

  • The container instance must have at least version 1.67.0 of the container agent and at least version 1.67.0-1 of the ecs-init package

  • You can specify a maximum of 100 port ranges per container.

  • You do not specify a hostPortRange. The value of the hostPortRange is set as follows:

    • For containers in a task with the awsvpc network mode, the hostPortRange is set to the same value as the containerPortRange. This is a static mapping strategy.

    • For containers in a task with the bridge network mode, the Amazon ECS agent finds open host ports from the default ephemeral range and passes it to docker to bind them to the container ports.

  • The containerPortRange valid values are between 1 and 65535.

  • A port can only be included in one port mapping per container.

  • You cannot specify overlapping port ranges.

  • The first port in the range must be less than last port in the range.

  • Docker recommends that you turn off the docker-proxy in the Docker daemon config file when you have a large number of ports.

    For more information, see Issue #11185 on the Github website.

    For information about how to turn off the docker-proxy in the Docker daemon config file, see Docker daemon in the Amazon ECS Developer Guide.

You can call DescribeTasks to view the hostPortRange which are the host ports that are bound to the container ports.

", "ProtectedTask$taskArn": "

The task ARN.

", "ProxyConfiguration$containerName": "

The name of the container that will serve as the App Mesh proxy.

", "PutAccountSettingDefaultRequest$value": "

The account setting value for the specified principal ARN. Accepted values are enabled, disabled, on, and off.

When you specify fargateTaskRetirementWaitPeriod for the name, the following are the valid values:

  • 0 - Amazon Web Services sends the notification, and immediately retires the affected tasks.

  • 7 - Amazon Web Services sends the notification, and waits 7 calendar days to retire the tasks.

  • 14 - Amazon Web Services sends the notification, and waits 14 calendar days to retire the tasks.

", @@ -2199,13 +2216,15 @@ "RepositoryCredentials$credentialsParameter": "

The Amazon Resource Name (ARN) of the secret containing the private repository credentials.

When you use the Amazon ECS API, CLI, or Amazon Web Services SDK, if the secret exists in the same Region as the task that you're launching then you can use either the full ARN or the name of the secret. When you use the Amazon Web Services Management Console, you must specify the full ARN of the secret.

", "Resource$name": "

The name of the resource, such as CPU, MEMORY, PORTS, PORTS_UDP, or a user-defined resource.

", "Resource$type": "

The type of the resource. Valid values: INTEGER, DOUBLE, LONG, or STRINGSET.

", + "ResourceIds$member": null, "ResourceRequirement$value": "

The value for the specified resource type.

If the GPU type is used, the value is the number of physical GPUs the Amazon ECS container agent reserves for the container. The number of GPUs that's reserved for all containers in a task can't exceed the number of available GPUs on the container instance that the task is launched on.

If the InferenceAccelerator type is used, the value matches the deviceName for an InferenceAccelerator specified in a task definition.

", "RunTaskRequest$cluster": "

The short name or full Amazon Resource Name (ARN) of the cluster to run your task on. If you do not specify a cluster, the default cluster is assumed.

", "RunTaskRequest$group": "

The name of the task group to associate with the task. The default value is the family name of the task definition (for example, family:my-family-name).

", "RunTaskRequest$platformVersion": "

The platform version the task uses. A platform version is only specified for tasks hosted on Fargate. If one isn't specified, the LATEST platform version is used. For more information, see Fargate platform versions in the Amazon Elastic Container Service Developer Guide.

", "RunTaskRequest$referenceId": "

The reference ID to use for the task. The reference ID can have a maximum length of 1024 characters.

", - "RunTaskRequest$startedBy": "

An optional tag specified when a task is started. For example, if you automatically trigger a task to run a batch process job, you could apply a unique identifier for that job to your task with the startedBy parameter. You can then identify which tasks belong to that job by filtering the results of a ListTasks call with the startedBy value. Up to 36 letters (uppercase and lowercase), numbers, hyphens (-), and underscores (_) are allowed.

If a task is started by an Amazon ECS service, then the startedBy parameter contains the deployment ID of the service that starts it.

", + "RunTaskRequest$startedBy": "

An optional tag specified when a task is started. For example, if you automatically trigger a task to run a batch process job, you could apply a unique identifier for that job to your task with the startedBy parameter. You can then identify which tasks belong to that job by filtering the results of a ListTasks call with the startedBy value. Up to 128 letters (uppercase and lowercase), numbers, hyphens (-), and underscores (_) are allowed.

If a task is started by an Amazon ECS service, then the startedBy parameter contains the deployment ID of the service that starts it.

", "RunTaskRequest$taskDefinition": "

The family and revision (family:revision) or full ARN of the task definition to run. If a revision isn't specified, the latest ACTIVE revision is used.

When you create a policy for run-task, you can set the resource to be the latest task definition revision, or a specific revision.

The full ARN value must match the value that you specified as the Resource of the principal's permissions policy.

When you specify the policy resource as the latest task definition version (by setting the Resource in the policy to arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName), then set this value to arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName.

When you specify the policy resource as a specific task definition version (by setting the Resource in the policy to arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:1 or arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:*), then set this value to arn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:1.

For more information, see Policy Resources for Amazon ECS in the Amazon Elastic Container Service developer Guide.

", + "RunTaskRequest$clientToken": "

An identifier that you provide to ensure the idempotency of the request. It must be unique and is case sensitive. Up to 64 characters are allowed. The valid characters are characters in the range of 33-126, inclusive. For more information, see Ensuring idempotency.

", "Secret$name": "

The name of the secret.

", "Secret$valueFrom": "

The secret to expose to the container. The supported values are either the full ARN of the Secrets Manager secret or the full ARN of the parameter in the SSM Parameter Store.

For information about the require Identity and Access Management permissions, see Required IAM permissions for Amazon ECS secrets (for Secrets Manager) or Required IAM permissions for Amazon ECS secrets (for Systems Manager Parameter store) in the Amazon Elastic Container Service Developer Guide.

If the SSM Parameter Store parameter exists in the same Region as the task you're launching, then you can use either the full ARN or name of the parameter. If the parameter exists in a different Region, then the full ARN must be specified.

", "ServerException$message": null, @@ -2619,7 +2638,7 @@ "base": null, "refs": { "DescribeTasksResponse$tasks": "

The list of tasks.

", - "RunTaskResponse$tasks": "

A full description of the tasks that were run. The tasks that were successfully placed on your cluster are described here.

", + "RunTaskResponse$tasks": "

A full description of the tasks that were run. The tasks that were successfully placed on your cluster are described here.

", "StartTaskResponse$tasks": "

A full description of the tasks that were started. Each task that was successfully placed on your container instances is described.

" } }, @@ -2669,7 +2688,7 @@ "base": null, "refs": { "NetworkBinding$protocol": "

The protocol used for the network binding.

", - "PortMapping$protocol": "

The protocol used for the port mapping. Valid values are tcp and udp. The default is tcp.

" + "PortMapping$protocol": "

The protocol used for the port mapping. Valid values are tcp and udp. The default is tcp. protocol is immutable in a Service Connect service. Updating this field requires a service deletion and redeployment.

" } }, "Ulimit": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ecs/2014-11-13/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ecs/2014-11-13/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -74,10 +74,10 @@ ], "pendingCount": 0, "runningCount": 0, - "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/ecs-simple-service", + "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/default/ecs-simple-service", "serviceName": "ecs-simple-service", "status": "ACTIVE", - "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6" + "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/default/hello_world:6" } }, "comments": { @@ -138,10 +138,10 @@ "pendingCount": 0, "roleArn": "arn:aws:iam::012345678910:role/ecsServiceRole", "runningCount": 0, - "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/ecs-simple-service-elb", + "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/default/ecs-simple-service-elb", "serviceName": "ecs-simple-service-elb", "status": "ACTIVE", - "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/console-sample-app-static:6" + "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/default/console-sample-app-static:6" } }, "comments": { @@ -307,7 +307,7 @@ "containerInstances": [ { "agentConnected": true, - "containerInstanceArn": "arn:aws:ecs:us-east-1:012345678910:container-instance/f2756532-8f13-4d53-87c9-aed50dc94cd7", + "containerInstanceArn": "arn:aws:ecs:us-east-1:012345678910:container-instance/default/f2756532-8f13-4d53-87c9-aed50dc94cd7", "ec2InstanceId": "i-807f3249", "pendingTasksCount": 0, "registeredResources": [ @@ -432,10 +432,10 @@ ], "pendingCount": 0, "runningCount": 0, - "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/ecs-simple-service", + "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/default/ecs-simple-service", "serviceName": "ecs-simple-service", "status": "ACTIVE", - "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6" + "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/default/hello_world:6" } ] }, @@ -540,7 +540,7 @@ "tasks": [ { "clusterArn": "arn:aws:ecs:::cluster/default", - "containerInstanceArn": "arn:aws:ecs:::container-instance/18f9eda5-27d7-4c19-b133-45adc516e8fb", + "containerInstanceArn": "arn:aws:ecs:::container-instance/default/18f9eda5-27d7-4c19-b133-45adc516e8fb", "containers": [ { "name": "ecs-demo", @@ -553,7 +553,7 @@ "hostPort": 80 } ], - "taskArn": "arn:aws:ecs:::task/c5cba4eb-5dad-405e-96db-71ef8eefe6a8" + "taskArn": "arn:aws:ecs:::task/default/c5cba4eb-5dad-405e-96db-71ef8eefe6a8" } ], "desiredStatus": "RUNNING", @@ -566,7 +566,7 @@ ] }, "startedBy": "ecs-svc/9223370608528463088", - "taskArn": "arn:aws:ecs:::task/c5cba4eb-5dad-405e-96db-71ef8eefe6a8", + "taskArn": "arn:aws:ecs:::task/default/c5cba4eb-5dad-405e-96db-71ef8eefe6a8", "taskDefinitionArn": "arn:aws:ecs:::task-definition/amazon-ecs-sample:1" } ] @@ -598,7 +598,7 @@ { "expirationDate": "2022-11-02T06:56:32.553Z", "protectionEnabled": true, - "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772" + "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/default/b8b1cf532d0e46ba8d44a40d1de16772" } ] }, @@ -710,8 +710,8 @@ }, "output": { "containerInstanceArns": [ - "arn:aws:ecs:us-east-1::container-instance/f6bbb147-5370-4ace-8c73-c7181ded911f", - "arn:aws:ecs:us-east-1::container-instance/ffe3d344-77e2-476c-a4d0-bf560ad50acb" + "arn:aws:ecs:us-east-1::container-instance/default/f6bbb147-5370-4ace-8c73-c7181ded911f", + "arn:aws:ecs:us-east-1::container-instance/default/ffe3d344-77e2-476c-a4d0-bf560ad50acb" ] }, "comments": { @@ -731,7 +731,7 @@ }, "output": { "serviceArns": [ - "arn:aws:ecs:us-east-1:012345678910:service/my-http-service" + "arn:aws:ecs:us-east-1:012345678910:service/default/my-http-service" ] }, "comments": { @@ -866,8 +866,8 @@ }, "output": { "taskArns": [ - "arn:aws:ecs:us-east-1:012345678910:task/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84", - "arn:aws:ecs:us-east-1:012345678910:task/6b809ef6-c67e-4467-921f-ee261c15a0a1" + "arn:aws:ecs:us-east-1:012345678910:task/default/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84", + "arn:aws:ecs:us-east-1:012345678910:task/default/6b809ef6-c67e-4467-921f-ee261c15a0a1" ] }, "comments": { @@ -887,7 +887,7 @@ }, "output": { "taskArns": [ - "arn:aws:ecs:us-east-1:012345678910:task/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84" + "arn:aws:ecs:us-east-1:012345678910:task/default/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84" ] }, "comments": { @@ -1049,13 +1049,13 @@ "output": { "tasks": [ { - "containerInstanceArn": "arn:aws:ecs:us-east-1::container-instance/ffe3d344-77e2-476c-a4d0-bf560ad50acb", + "containerInstanceArn": "arn:aws:ecs:us-east-1::container-instance/default/ffe3d344-77e2-476c-a4d0-bf560ad50acb", "containers": [ { "name": "sleep", - "containerArn": "arn:aws:ecs:us-east-1::container/58591c8e-be29-4ddf-95aa-ee459d4c59fd", + "containerArn": "arn:aws:ecs:us-east-1::container/default/58591c8e-be29-4ddf-95aa-ee459d4c59fd", "lastStatus": "PENDING", - "taskArn": "arn:aws:ecs:us-east-1::task/a9f21ea7-c9f5-44b1-b8e6-b31f50ed33c0" + "taskArn": "arn:aws:ecs:us-east-1::task/default/a9f21ea7-c9f5-44b1-b8e6-b31f50ed33c0" } ], "desiredStatus": "RUNNING", @@ -1067,7 +1067,7 @@ } ] }, - "taskArn": "arn:aws:ecs:us-east-1::task/a9f21ea7-c9f5-44b1-b8e6-b31f50ed33c0", + "taskArn": "arn:aws:ecs:us-east-1::task/default/a9f21ea7-c9f5-44b1-b8e6-b31f50ed33c0", "taskDefinitionArn": "arn:aws:ecs:us-east-1::task-definition/sleep360:1" } ] @@ -1182,7 +1182,7 @@ { "expirationDate": "2022-11-02T06:56:32.553Z", "protectionEnabled": true, - "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772" + "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/default/b8b1cf532d0e46ba8d44a40d1de16772" } ] }, @@ -1212,7 +1212,7 @@ { "expirationDate": "2022-11-02T06:56:32.553Z", "protectionEnabled": true, - "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772" + "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/default/b8b1cf532d0e46ba8d44a40d1de16772" } ] }, @@ -1241,7 +1241,7 @@ "protectedTasks": [ { "protectionEnabled": false, - "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772" + "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/default/b8b1cf532d0e46ba8d44a40d1de16772" } ] }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -82,6 +82,22 @@ {"shape":"UnsupportedAvailabilityZoneException"} ] }, + "CreateEksAnywhereSubscription":{ + "name":"CreateEksAnywhereSubscription", + "http":{ + "method":"POST", + "requestUri":"/eks-anywhere-subscriptions" + }, + "input":{"shape":"CreateEksAnywhereSubscriptionRequest"}, + "output":{"shape":"CreateEksAnywhereSubscriptionResponse"}, + "errors":[ + {"shape":"ResourceLimitExceededException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ClientException"}, + {"shape":"ServerException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "CreateFargateProfile":{ "name":"CreateFargateProfile", "http":{ @@ -117,6 +133,23 @@ {"shape":"ServiceUnavailableException"} ] }, + "CreatePodIdentityAssociation":{ + "name":"CreatePodIdentityAssociation", + "http":{ + "method":"POST", + "requestUri":"/clusters/{name}/pod-identity-associations" + }, + "input":{"shape":"CreatePodIdentityAssociationRequest"}, + "output":{"shape":"CreatePodIdentityAssociationResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ResourceInUseException"} + ] + }, "DeleteAddon":{ "name":"DeleteAddon", "http":{ @@ -149,6 +182,21 @@ {"shape":"ServiceUnavailableException"} ] }, + "DeleteEksAnywhereSubscription":{ + "name":"DeleteEksAnywhereSubscription", + "http":{ + "method":"DELETE", + "requestUri":"/eks-anywhere-subscriptions/{id}" + }, + "input":{"shape":"DeleteEksAnywhereSubscriptionRequest"}, + "output":{"shape":"DeleteEksAnywhereSubscriptionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ClientException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ServerException"} + ] + }, "DeleteFargateProfile":{ "name":"DeleteFargateProfile", "http":{ @@ -181,6 +229,21 @@ {"shape":"ServiceUnavailableException"} ] }, + "DeletePodIdentityAssociation":{ + "name":"DeletePodIdentityAssociation", + "http":{ + "method":"DELETE", + "requestUri":"/clusters/{name}/pod-identity-associations/{associationId}" + }, + "input":{"shape":"DeletePodIdentityAssociationRequest"}, + "output":{"shape":"DeletePodIdentityAssociationResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"} + ] + }, "DeregisterCluster":{ "name":"DeregisterCluster", "http":{ @@ -257,6 +320,21 @@ {"shape":"ServiceUnavailableException"} ] }, + "DescribeEksAnywhereSubscription":{ + "name":"DescribeEksAnywhereSubscription", + "http":{ + "method":"GET", + "requestUri":"/eks-anywhere-subscriptions/{id}" + }, + "input":{"shape":"DescribeEksAnywhereSubscriptionRequest"}, + "output":{"shape":"DescribeEksAnywhereSubscriptionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ClientException"}, + {"shape":"ServerException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "DescribeFargateProfile":{ "name":"DescribeFargateProfile", "http":{ @@ -304,6 +382,21 @@ {"shape":"ServiceUnavailableException"} ] }, + "DescribePodIdentityAssociation":{ + "name":"DescribePodIdentityAssociation", + "http":{ + "method":"GET", + "requestUri":"/clusters/{name}/pod-identity-associations/{associationId}" + }, + "input":{"shape":"DescribePodIdentityAssociationRequest"}, + "output":{"shape":"DescribePodIdentityAssociationResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"} + ] + }, "DescribeUpdate":{ "name":"DescribeUpdate", "http":{ @@ -367,6 +460,21 @@ {"shape":"ServiceUnavailableException"} ] }, + "ListEksAnywhereSubscriptions":{ + "name":"ListEksAnywhereSubscriptions", + "http":{ + "method":"GET", + "requestUri":"/eks-anywhere-subscriptions" + }, + "input":{"shape":"ListEksAnywhereSubscriptionsRequest"}, + "output":{"shape":"ListEksAnywhereSubscriptionsResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ClientException"}, + {"shape":"ServerException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "ListFargateProfiles":{ "name":"ListFargateProfiles", "http":{ @@ -414,6 +522,21 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListPodIdentityAssociations":{ + "name":"ListPodIdentityAssociations", + "http":{ + "method":"GET", + "requestUri":"/clusters/{name}/pod-identity-associations" + }, + "input":{"shape":"ListPodIdentityAssociationsRequest"}, + "output":{"shape":"ListPodIdentityAssociationsResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -538,6 +661,22 @@ {"shape":"InvalidRequestException"} ] }, + "UpdateEksAnywhereSubscription":{ + "name":"UpdateEksAnywhereSubscription", + "http":{ + "method":"POST", + "requestUri":"/eks-anywhere-subscriptions/{id}" + }, + "input":{"shape":"UpdateEksAnywhereSubscriptionRequest"}, + "output":{"shape":"UpdateEksAnywhereSubscriptionResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ClientException"}, + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"} + ] + }, "UpdateNodegroupConfig":{ "name":"UpdateNodegroupConfig", "http":{ @@ -571,6 +710,21 @@ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"} ] + }, + "UpdatePodIdentityAssociation":{ + "name":"UpdatePodIdentityAssociation", + "http":{ + "method":"POST", + "requestUri":"/clusters/{name}/pod-identity-associations/{associationId}" + }, + "input":{"shape":"UpdatePodIdentityAssociationRequest"}, + "output":{"shape":"UpdatePodIdentityAssociationResponse"}, + "errors":[ + {"shape":"ServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"} + ] } }, "shapes":{ @@ -793,6 +947,7 @@ "clusterName":{"shape":"String"}, "nodegroupName":{"shape":"String"}, "addonName":{"shape":"String"}, + "subscriptionId":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, @@ -845,7 +1000,20 @@ "ConfigurationConflict", "InternalFailure", "ResourceLimitExceeded", - "ResourceNotFound" + "ResourceNotFound", + "IamRoleNotFound", + "VpcNotFound", + "InsufficientFreeAddresses", + "Ec2ServiceNotSubscribed", + "Ec2SubnetNotFound", + "Ec2SecurityGroupNotFound", + "KmsGrantRevoked", + "KmsKeyNotFound", + "KmsKeyMarkedForDeletion", + "KmsKeyDisabled", + "StsRegionalEndpointDisabled", + "UnsupportedVersion", + "Other" ] }, "ClusterIssueList":{ @@ -987,6 +1155,31 @@ "cluster":{"shape":"Cluster"} } }, + "CreateEksAnywhereSubscriptionRequest":{ + "type":"structure", + "required":[ + "name", + "term" + ], + "members":{ + "name":{"shape":"EksAnywhereSubscriptionName"}, + "term":{"shape":"EksAnywhereSubscriptionTerm"}, + "licenseQuantity":{"shape":"Integer"}, + "licenseType":{"shape":"EksAnywhereSubscriptionLicenseType"}, + "autoRenew":{"shape":"Boolean"}, + "clientRequestToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagMap"} + } + }, + "CreateEksAnywhereSubscriptionResponse":{ + "type":"structure", + "members":{ + "subscription":{"shape":"EksAnywhereSubscription"} + } + }, "CreateFargateProfileRequest":{ "type":"structure", "required":[ @@ -1059,6 +1252,36 @@ "nodegroup":{"shape":"Nodegroup"} } }, + "CreatePodIdentityAssociationRequest":{ + "type":"structure", + "required":[ + "clusterName", + "namespace", + "serviceAccount", + "roleArn" + ], + "members":{ + "clusterName":{ + "shape":"String", + "location":"uri", + "locationName":"name" + }, + "namespace":{"shape":"String"}, + "serviceAccount":{"shape":"String"}, + "roleArn":{"shape":"String"}, + "clientRequestToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagMap"} + } + }, + "CreatePodIdentityAssociationResponse":{ + "type":"structure", + "members":{ + "association":{"shape":"PodIdentityAssociation"} + } + }, "DeleteAddonRequest":{ "type":"structure", "required":[ @@ -1106,6 +1329,23 @@ "cluster":{"shape":"Cluster"} } }, + "DeleteEksAnywhereSubscriptionRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"String", + "location":"uri", + "locationName":"id" + } + } + }, + "DeleteEksAnywhereSubscriptionResponse":{ + "type":"structure", + "members":{ + "subscription":{"shape":"EksAnywhereSubscription"} + } + }, "DeleteFargateProfileRequest":{ "type":"structure", "required":[ @@ -1156,6 +1396,31 @@ "nodegroup":{"shape":"Nodegroup"} } }, + "DeletePodIdentityAssociationRequest":{ + "type":"structure", + "required":[ + "clusterName", + "associationId" + ], + "members":{ + "clusterName":{ + "shape":"String", + "location":"uri", + "locationName":"name" + }, + "associationId":{ + "shape":"String", + "location":"uri", + "locationName":"associationId" + } + } + }, + "DeletePodIdentityAssociationResponse":{ + "type":"structure", + "members":{ + "association":{"shape":"PodIdentityAssociation"} + } + }, "DeregisterClusterRequest":{ "type":"structure", "required":["name"], @@ -1295,6 +1560,23 @@ "cluster":{"shape":"Cluster"} } }, + "DescribeEksAnywhereSubscriptionRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"String", + "location":"uri", + "locationName":"id" + } + } + }, + "DescribeEksAnywhereSubscriptionResponse":{ + "type":"structure", + "members":{ + "subscription":{"shape":"EksAnywhereSubscription"} + } + }, "DescribeFargateProfileRequest":{ "type":"structure", "required":[ @@ -1366,6 +1648,31 @@ "nodegroup":{"shape":"Nodegroup"} } }, + "DescribePodIdentityAssociationRequest":{ + "type":"structure", + "required":[ + "clusterName", + "associationId" + ], + "members":{ + "clusterName":{ + "shape":"String", + "location":"uri", + "locationName":"name" + }, + "associationId":{ + "shape":"String", + "location":"uri", + "locationName":"associationId" + } + } + }, + "DescribePodIdentityAssociationResponse":{ + "type":"structure", + "members":{ + "association":{"shape":"PodIdentityAssociation"} + } + }, "DescribeUpdateRequest":{ "type":"structure", "required":[ @@ -1426,6 +1733,63 @@ "update":{"shape":"Update"} } }, + "EksAnywhereSubscription":{ + "type":"structure", + "members":{ + "id":{"shape":"String"}, + "arn":{"shape":"String"}, + "createdAt":{"shape":"Timestamp"}, + "effectiveDate":{"shape":"Timestamp"}, + "expirationDate":{"shape":"Timestamp"}, + "licenseQuantity":{"shape":"Integer"}, + "licenseType":{"shape":"EksAnywhereSubscriptionLicenseType"}, + "term":{"shape":"EksAnywhereSubscriptionTerm"}, + "status":{"shape":"String"}, + "autoRenew":{"shape":"Boolean"}, + "licenseArns":{"shape":"StringList"}, + "tags":{"shape":"TagMap"} + } + }, + "EksAnywhereSubscriptionLicenseType":{ + "type":"string", + "enum":["Cluster"] + }, + "EksAnywhereSubscriptionList":{ + "type":"list", + "member":{"shape":"EksAnywhereSubscription"} + }, + "EksAnywhereSubscriptionName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"^[0-9A-Za-z][A-Za-z0-9\\-_]*" + }, + "EksAnywhereSubscriptionStatus":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "UPDATING", + "EXPIRING", + "EXPIRED", + "DELETING" + ] + }, + "EksAnywhereSubscriptionStatusValues":{ + "type":"list", + "member":{"shape":"EksAnywhereSubscriptionStatus"} + }, + "EksAnywhereSubscriptionTerm":{ + "type":"structure", + "members":{ + "duration":{"shape":"Integer"}, + "unit":{"shape":"EksAnywhereSubscriptionTermUnit"} + } + }, + "EksAnywhereSubscriptionTermUnit":{ + "type":"string", + "enum":["MONTHS"] + }, "EncryptionConfig":{ "type":"structure", "members":{ @@ -1549,6 +1913,7 @@ "type":"list", "member":{"shape":"String"} }, + "Integer":{"type":"integer"}, "InvalidParameterException":{ "type":"structure", "members":{ @@ -1556,6 +1921,7 @@ "nodegroupName":{"shape":"String"}, "fargateProfileName":{"shape":"String"}, "addonName":{"shape":"String"}, + "subscriptionId":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, @@ -1567,6 +1933,7 @@ "clusterName":{"shape":"String"}, "nodegroupName":{"shape":"String"}, "addonName":{"shape":"String"}, + "subscriptionId":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, @@ -1681,6 +2048,39 @@ "nextToken":{"shape":"String"} } }, + "ListEksAnywhereSubscriptionsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListEksAnywhereSubscriptionsRequestMaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"nextToken" + }, + "includeStatus":{ + "shape":"EksAnywhereSubscriptionStatusValues", + "location":"querystring", + "locationName":"includeStatus" + } + } + }, + "ListEksAnywhereSubscriptionsRequestMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListEksAnywhereSubscriptionsResponse":{ + "type":"structure", + "members":{ + "subscriptions":{"shape":"EksAnywhereSubscriptionList"}, + "nextToken":{"shape":"String"} + } + }, "ListFargateProfilesRequest":{ "type":"structure", "required":["clusterName"], @@ -1777,6 +2177,50 @@ "nextToken":{"shape":"String"} } }, + "ListPodIdentityAssociationsMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListPodIdentityAssociationsRequest":{ + "type":"structure", + "required":["clusterName"], + "members":{ + "clusterName":{ + "shape":"String", + "location":"uri", + "locationName":"name" + }, + "namespace":{ + "shape":"String", + "location":"querystring", + "locationName":"namespace" + }, + "serviceAccount":{ + "shape":"String", + "location":"querystring", + "locationName":"serviceAccount" + }, + "maxResults":{ + "shape":"ListPodIdentityAssociationsMaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListPodIdentityAssociationsResponse":{ + "type":"structure", + "members":{ + "associations":{"shape":"PodIdentityAssociationSummaries"}, + "nextToken":{"shape":"String"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -2066,6 +2510,34 @@ "max":100, "min":1 }, + "PodIdentityAssociation":{ + "type":"structure", + "members":{ + "clusterName":{"shape":"String"}, + "namespace":{"shape":"String"}, + "serviceAccount":{"shape":"String"}, + "roleArn":{"shape":"String"}, + "associationArn":{"shape":"String"}, + "associationId":{"shape":"String"}, + "tags":{"shape":"TagMap"}, + "createdAt":{"shape":"Timestamp"}, + "modifiedAt":{"shape":"Timestamp"} + } + }, + "PodIdentityAssociationSummaries":{ + "type":"list", + "member":{"shape":"PodIdentityAssociationSummary"} + }, + "PodIdentityAssociationSummary":{ + "type":"structure", + "members":{ + "clusterName":{"shape":"String"}, + "namespace":{"shape":"String"}, + "serviceAccount":{"shape":"String"}, + "associationArn":{"shape":"String"}, + "associationId":{"shape":"String"} + } + }, "Provider":{ "type":"structure", "members":{ @@ -2125,6 +2597,7 @@ "members":{ "clusterName":{"shape":"String"}, "nodegroupName":{"shape":"String"}, + "subscriptionId":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, @@ -2137,6 +2610,7 @@ "nodegroupName":{"shape":"String"}, "fargateProfileName":{"shape":"String"}, "addonName":{"shape":"String"}, + "subscriptionId":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":404}, @@ -2161,6 +2635,7 @@ "clusterName":{"shape":"String"}, "nodegroupName":{"shape":"String"}, "addonName":{"shape":"String"}, + "subscriptionId":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":500}, @@ -2367,6 +2842,31 @@ "update":{"shape":"Update"} } }, + "UpdateEksAnywhereSubscriptionRequest":{ + "type":"structure", + "required":[ + "id", + "autoRenew" + ], + "members":{ + "id":{ + "shape":"String", + "location":"uri", + "locationName":"id" + }, + "autoRenew":{"shape":"Boolean"}, + "clientRequestToken":{ + "shape":"String", + "idempotencyToken":true + } + } + }, + "UpdateEksAnywhereSubscriptionResponse":{ + "type":"structure", + "members":{ + "subscription":{"shape":"EksAnywhereSubscription"} + } + }, "UpdateLabelsPayload":{ "type":"structure", "members":{ @@ -2472,13 +2972,46 @@ "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", - "MaxUnavailablePercentage" + "MaxUnavailablePercentage", + "ConfigurationValues", + "SecurityGroups", + "Subnets" ] }, "UpdateParams":{ "type":"list", "member":{"shape":"UpdateParam"} }, + "UpdatePodIdentityAssociationRequest":{ + "type":"structure", + "required":[ + "clusterName", + "associationId" + ], + "members":{ + "clusterName":{ + "shape":"String", + "location":"uri", + "locationName":"name" + }, + "associationId":{ + "shape":"String", + "location":"uri", + "locationName":"associationId" + }, + "roleArn":{"shape":"String"}, + "clientRequestToken":{ + "shape":"String", + "idempotencyToken":true + } + } + }, + "UpdatePodIdentityAssociationResponse":{ + "type":"structure", + "members":{ + "association":{"shape":"PodIdentityAssociation"} + } + }, "UpdateStatus":{ "type":"string", "enum":[ @@ -2505,7 +3038,8 @@ "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", - "AddonUpdate" + "AddonUpdate", + "VpcConfigUpdate" ] }, "VpcConfigRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,38 +5,48 @@ "AssociateEncryptionConfig": "

Associate encryption configuration to an existing cluster.

You can use this API to enable encryption on existing clusters which do not have encryption already enabled. This allows you to implement a defense-in-depth security strategy without migrating applications to new Amazon EKS clusters.

", "AssociateIdentityProviderConfig": "

Associate an identity provider configuration to a cluster.

If you want to authenticate identities using an identity provider, you can create an identity provider configuration and associate it to your cluster. After configuring authentication to your cluster you can create Kubernetes roles and clusterroles to assign permissions to the roles, and then bind the roles to the identities using Kubernetes rolebindings and clusterrolebindings. For more information see Using RBAC Authorization in the Kubernetes documentation.

", "CreateAddon": "

Creates an Amazon EKS add-on.

Amazon EKS add-ons help to automate the provisioning and lifecycle management of common operational software for Amazon EKS clusters. For more information, see Amazon EKS add-ons in the Amazon EKS User Guide.

", - "CreateCluster": "

Creates an Amazon EKS control plane.

The Amazon EKS control plane consists of control plane instances that run the Kubernetes software, such as etcd and the API server. The control plane runs in an account managed by Amazon Web Services, and the Kubernetes API is exposed by the Amazon EKS API server endpoint. Each Amazon EKS cluster control plane is single tenant and unique. It runs on its own set of Amazon EC2 instances.

The cluster control plane is provisioned across multiple Availability Zones and fronted by an Elastic Load Balancing Network Load Balancer. Amazon EKS also provisions elastic network interfaces in your VPC subnets to provide connectivity from the control plane instances to the nodes (for example, to support kubectl exec, logs, and proxy data flows).

Amazon EKS nodes run in your Amazon Web Services account and connect to your cluster's control plane over the Kubernetes API server endpoint and a certificate file that is created for your cluster.

In most cases, it takes several minutes to create a cluster. After you create an Amazon EKS cluster, you must configure your Kubernetes tooling to communicate with the API server and launch nodes into your cluster. For more information, see Managing Cluster Authentication and Launching Amazon EKS nodes in the Amazon EKS User Guide.

", - "CreateFargateProfile": "

Creates an Fargate profile for your Amazon EKS cluster. You must have at least one Fargate profile in a cluster to be able to run pods on Fargate.

The Fargate profile allows an administrator to declare which pods run on Fargate and specify which pods run on which Fargate profile. This declaration is done through the profile’s selectors. Each profile can have up to five selectors that contain a namespace and labels. A namespace is required for every selector. The label field consists of multiple optional key-value pairs. Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile, then that pod is run on Fargate.

When you create a Fargate profile, you must specify a pod execution role to use with the pods that are scheduled with the profile. This role is added to the cluster's Kubernetes Role Based Access Control (RBAC) for authorization so that the kubelet that is running on the Fargate infrastructure can register with your Amazon EKS cluster so that it can appear in your cluster as a node. The pod execution role also provides IAM permissions to the Fargate infrastructure to allow read access to Amazon ECR image repositories. For more information, see Pod Execution Role in the Amazon EKS User Guide.

Fargate profiles are immutable. However, you can create a new updated profile to replace an existing profile and then delete the original after the updated profile has finished creating.

If any Fargate profiles in a cluster are in the DELETING status, you must wait for that Fargate profile to finish deleting before you can create any other profiles in that cluster.

For more information, see Fargate Profile in the Amazon EKS User Guide.

", - "CreateNodegroup": "

Creates a managed node group for an Amazon EKS cluster. You can only create a node group for your cluster that is equal to the current Kubernetes version for the cluster. All node groups are created with the latest AMI release version for the respective minor Kubernetes version of the cluster, unless you deploy a custom AMI using a launch template. For more information about using launch templates, see Launch template support.

An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and associated Amazon EC2 instances that are managed by Amazon Web Services for an Amazon EKS cluster. For more information, see Managed node groups in the Amazon EKS User Guide.

Windows AMI types are only supported for commercial Regions that support Windows Amazon EKS.

", + "CreateCluster": "

Creates an Amazon EKS control plane.

The Amazon EKS control plane consists of control plane instances that run the Kubernetes software, such as etcd and the API server. The control plane runs in an account managed by Amazon Web Services, and the Kubernetes API is exposed by the Amazon EKS API server endpoint. Each Amazon EKS cluster control plane is single tenant and unique. It runs on its own set of Amazon EC2 instances.

The cluster control plane is provisioned across multiple Availability Zones and fronted by an Elastic Load Balancing Network Load Balancer. Amazon EKS also provisions elastic network interfaces in your VPC subnets to provide connectivity from the control plane instances to the nodes (for example, to support kubectl exec, logs, and proxy data flows).

Amazon EKS nodes run in your Amazon Web Services account and connect to your cluster's control plane over the Kubernetes API server endpoint and a certificate file that is created for your cluster.

You can use the endpointPublicAccess and endpointPrivateAccess parameters to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. For more information, see Amazon EKS Cluster Endpoint Access Control in the Amazon EKS User Guide .

You can use the logging parameter to enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs. By default, cluster control plane logs aren't exported to CloudWatch Logs. For more information, see Amazon EKS Cluster Control Plane Logs in the Amazon EKS User Guide .

CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see CloudWatch Pricing.

In most cases, it takes several minutes to create a cluster. After you create an Amazon EKS cluster, you must configure your Kubernetes tooling to communicate with the API server and launch nodes into your cluster. For more information, see Managing Cluster Authentication and Launching Amazon EKS nodes in the Amazon EKS User Guide.

", + "CreateEksAnywhereSubscription": "

Creates an EKS Anywhere subscription. When a subscription is created, it is a contract agreement for the length of the term specified in the request. Licenses that are used to validate support are provisioned in Amazon Web Services License Manager and the caller account is granted access to EKS Anywhere Curated Packages.

", + "CreateFargateProfile": "

Creates an Fargate profile for your Amazon EKS cluster. You must have at least one Fargate profile in a cluster to be able to run pods on Fargate.

The Fargate profile allows an administrator to declare which pods run on Fargate and specify which pods run on which Fargate profile. This declaration is done through the profile’s selectors. Each profile can have up to five selectors that contain a namespace and labels. A namespace is required for every selector. The label field consists of multiple optional key-value pairs. Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile, then that pod is run on Fargate.

When you create a Fargate profile, you must specify a pod execution role to use with the pods that are scheduled with the profile. This role is added to the cluster's Kubernetes Role Based Access Control (RBAC) for authorization so that the kubelet that is running on the Fargate infrastructure can register with your Amazon EKS cluster so that it can appear in your cluster as a node. The pod execution role also provides IAM permissions to the Fargate infrastructure to allow read access to Amazon ECR image repositories. For more information, see Pod Execution Role in the Amazon EKS User Guide.

Fargate profiles are immutable. However, you can create a new updated profile to replace an existing profile and then delete the original after the updated profile has finished creating.

If any Fargate profiles in a cluster are in the DELETING status, you must wait for that Fargate profile to finish deleting before you can create any other profiles in that cluster.

For more information, see Fargate Profile in the Amazon EKS User Guide.

", + "CreateNodegroup": "

Creates a managed node group for an Amazon EKS cluster. You can only create a node group for your cluster that is equal to the current Kubernetes version for the cluster.

An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and associated Amazon EC2 instances that are managed by Amazon Web Services for an Amazon EKS cluster. For more information, see Managed node groups in the Amazon EKS User Guide.

Windows AMI types are only supported for commercial Regions that support Windows Amazon EKS.

", + "CreatePodIdentityAssociation": "

Creates an EKS Pod Identity association between a service account in an Amazon EKS cluster and an IAM role with EKS Pod Identity. Use EKS Pod Identity to give temporary IAM credentials to pods and the credentials are rotated automatically.

Amazon EKS Pod Identity associations provide the ability to manage credentials for your applications, similar to the way that 7EC2l instance profiles provide credentials to Amazon EC2 instances.

If a pod uses a service account that has an association, Amazon EKS sets environment variables in the containers of the pod. The environment variables configure the Amazon Web Services SDKs, including the Command Line Interface, to use the EKS Pod Identity credentials.

Pod Identity is a simpler method than IAM roles for service accounts, as this method doesn't use OIDC identity providers. Additionally, you can configure a role for Pod Identity once, and reuse it across clusters.

", "DeleteAddon": "

Delete an Amazon EKS add-on.

When you remove the add-on, it will also be deleted from the cluster. You can always manually start an add-on on the cluster using the Kubernetes API.

", "DeleteCluster": "

Deletes the Amazon EKS cluster control plane.

If you have active services in your cluster that are associated with a load balancer, you must delete those services before deleting the cluster so that the load balancers are deleted properly. Otherwise, you can have orphaned resources in your VPC that prevent you from being able to delete the VPC. For more information, see Deleting a Cluster in the Amazon EKS User Guide.

If you have managed node groups or Fargate profiles attached to the cluster, you must delete them first. For more information, see DeleteNodegroup and DeleteFargateProfile.

", + "DeleteEksAnywhereSubscription": "

Deletes an expired or inactive subscription. Deleting inactive subscriptions removes them from the Amazon Web Services Management Console view and from list/describe API responses. Subscriptions can only be cancelled within 7 days of creation and are cancelled by creating a ticket in the Amazon Web Services Support Center.

", "DeleteFargateProfile": "

Deletes an Fargate profile.

When you delete a Fargate profile, any pods running on Fargate that were created with the profile are deleted. If those pods match another Fargate profile, then they are scheduled on Fargate with that profile. If they no longer match any Fargate profiles, then they are not scheduled on Fargate and they may remain in a pending state.

Only one Fargate profile in a cluster can be in the DELETING status at a time. You must wait for a Fargate profile to finish deleting before you can delete any other profiles in that cluster.

", "DeleteNodegroup": "

Deletes an Amazon EKS node group for a cluster.

", + "DeletePodIdentityAssociation": "

Deletes a EKS Pod Identity association.

The temporary Amazon Web Services credentials from the previous IAM role session might still be valid until the session expiry. If you need to immediately revoke the temporary session credentials, then go to the role in the IAM console.

", "DeregisterCluster": "

Deregisters a connected cluster to remove it from the Amazon EKS control plane.

", "DescribeAddon": "

Describes an Amazon EKS add-on.

", "DescribeAddonConfiguration": "

Returns configuration options.

", "DescribeAddonVersions": "

Describes the versions for an add-on. Information such as the Kubernetes versions that you can use the add-on with, the owner, publisher, and the type of the add-on are returned.

", "DescribeCluster": "

Returns descriptive information about an Amazon EKS cluster.

The API server endpoint and certificate authority data returned by this operation are required for kubelet and kubectl to communicate with your Kubernetes API server. For more information, see Create a kubeconfig for Amazon EKS.

The API server endpoint and certificate authority data aren't available until the cluster reaches the ACTIVE state.

", + "DescribeEksAnywhereSubscription": "

Returns descriptive information about a subscription.

", "DescribeFargateProfile": "

Returns descriptive information about an Fargate profile.

", "DescribeIdentityProviderConfig": "

Returns descriptive information about an identity provider configuration.

", "DescribeNodegroup": "

Returns descriptive information about an Amazon EKS node group.

", + "DescribePodIdentityAssociation": "

Returns descriptive information about an EKS Pod Identity association.

This action requires the ID of the association. You can get the ID from the response to the CreatePodIdentityAssocation for newly created associations. Or, you can list the IDs for associations with ListPodIdentityAssociations and filter the list by namespace or service account.

", "DescribeUpdate": "

Returns descriptive information about an update against your Amazon EKS cluster or associated managed node group or Amazon EKS add-on.

When the status of the update is Succeeded, the update is complete. If an update fails, the status is Failed, and an error detail explains the reason for the failure.

", - "DisassociateIdentityProviderConfig": "

Disassociates an identity provider configuration from a cluster. If you disassociate an identity provider from your cluster, users included in the provider can no longer access the cluster. However, you can still access the cluster with Amazon Web Services IAM users.

", - "ListAddons": "

Lists the available add-ons.

", + "DisassociateIdentityProviderConfig": "

Disassociates an identity provider configuration from a cluster. If you disassociate an identity provider from your cluster, users included in the provider can no longer access the cluster. However, you can still access the cluster with IAM principals.

", + "ListAddons": "

Lists the installed add-ons.

", "ListClusters": "

Lists the Amazon EKS clusters in your Amazon Web Services account in the specified Region.

", + "ListEksAnywhereSubscriptions": "

Displays the full description of the subscription.

", "ListFargateProfiles": "

Lists the Fargate profiles associated with the specified cluster in your Amazon Web Services account in the specified Region.

", "ListIdentityProviderConfigs": "

A list of identity provider configurations.

", "ListNodegroups": "

Lists the Amazon EKS managed node groups associated with the specified cluster in your Amazon Web Services account in the specified Region. Self-managed node groups are not listed.

", + "ListPodIdentityAssociations": "

List the EKS Pod Identity associations in a cluster. You can filter the list by the namespace that the association is in or the service account that the association uses.

", "ListTagsForResource": "

List the tags for an Amazon EKS resource.

", "ListUpdates": "

Lists the updates associated with an Amazon EKS cluster or managed node group in your Amazon Web Services account, in the specified Region.

", "RegisterCluster": "

Connects a Kubernetes cluster to the Amazon EKS control plane.

Any Kubernetes cluster can be connected to the Amazon EKS control plane to view current information about the cluster and its nodes.

Cluster connection requires two steps. First, send a RegisterClusterRequest to add it to the Amazon EKS control plane.

Second, a Manifest containing the activationID and activationCode must be applied to the Kubernetes cluster through it's native provider to provide visibility.

After the Manifest is updated and applied, then the connected cluster is visible to the Amazon EKS control plane. If the Manifest is not applied within three days, then the connected cluster will no longer be visible and must be deregistered. See DeregisterCluster.

", "TagResource": "

Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed. When a resource is deleted, the tags associated with that resource are deleted as well. Tags that you create for Amazon EKS resources do not propagate to any other resources associated with the cluster. For example, if you tag a cluster with this operation, that tag does not automatically propagate to the subnets and nodes associated with the cluster.

", "UntagResource": "

Deletes specified tags from a resource.

", "UpdateAddon": "

Updates an Amazon EKS add-on.

", - "UpdateClusterConfig": "

Updates an Amazon EKS cluster configuration. Your cluster continues to function during the update. The response output includes an update ID that you can use to track the status of your cluster update with the DescribeUpdate API operation.

You can use this API operation to enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs. By default, cluster control plane logs aren't exported to CloudWatch Logs. For more information, see Amazon EKS Cluster Control Plane Logs in the Amazon EKS User Guide .

CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see CloudWatch Pricing.

You can also use this API operation to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. For more information, see Amazon EKS cluster endpoint access control in the Amazon EKS User Guide .

You can't update the subnets or security group IDs for an existing cluster.

Cluster updates are asynchronous, and they should finish within a few minutes. During an update, the cluster status moves to UPDATING (this status transition is eventually consistent). When the update is complete (either Failed or Successful), the cluster status moves to Active.

", + "UpdateClusterConfig": "

Updates an Amazon EKS cluster configuration. Your cluster continues to function during the update. The response output includes an update ID that you can use to track the status of your cluster update with the DescribeUpdate API operation.

You can use this API operation to enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs. By default, cluster control plane logs aren't exported to CloudWatch Logs. For more information, see Amazon EKS Cluster Control Plane Logs in the Amazon EKS User Guide .

CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see CloudWatch Pricing.

You can also use this API operation to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. For more information, see Amazon EKS cluster endpoint access control in the Amazon EKS User Guide .

You can also use this API operation to choose different subnets and security groups for the cluster. You must specify at least two subnets that are in different Availability Zones. You can't change which VPC the subnets are from, the subnets must be in the same VPC as the subnets that the cluster was created with. For more information about the VPC requirements, see https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html in the Amazon EKS User Guide .

Cluster updates are asynchronous, and they should finish within a few minutes. During an update, the cluster status moves to UPDATING (this status transition is eventually consistent). When the update is complete (either Failed or Successful), the cluster status moves to Active.

", "UpdateClusterVersion": "

Updates an Amazon EKS cluster to the specified Kubernetes version. Your cluster continues to function during the update. The response output includes an update ID that you can use to track the status of your cluster update with the DescribeUpdate API operation.

Cluster updates are asynchronous, and they should finish within a few minutes. During an update, the cluster status moves to UPDATING (this status transition is eventually consistent). When the update is complete (either Failed or Successful), the cluster status moves to Active.

If your cluster has managed node groups attached to it, all of your node groups’ Kubernetes versions must match the cluster’s Kubernetes version in order to update the cluster to a new Kubernetes version.

", + "UpdateEksAnywhereSubscription": "

Update an EKS Anywhere Subscription. Only auto renewal and tags can be updated after subscription creation.

", "UpdateNodegroupConfig": "

Updates an Amazon EKS managed node group configuration. Your node group continues to function during the update. The response output includes an update ID that you can use to track the status of your node group update with the DescribeUpdate API operation. Currently you can update the Kubernetes labels for a node group or the scaling configuration.

", - "UpdateNodegroupVersion": "

Updates the Kubernetes version or AMI version of an Amazon EKS managed node group.

You can update a node group using a launch template only if the node group was originally deployed with a launch template. If you need to update a custom AMI in a node group that was deployed with a launch template, then update your custom AMI, specify the new ID in a new version of the launch template, and then update the node group to the new version of the launch template.

If you update without a launch template, then you can update to the latest available AMI version of a node group's current Kubernetes version by not specifying a Kubernetes version in the request. You can update to the latest AMI version of your cluster's current Kubernetes version by specifying your cluster's Kubernetes version in the request. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

You cannot roll back a node group to an earlier Kubernetes version or AMI version.

When a node in a managed node group is terminated due to a scaling action or update, the pods in that node are drained first. Amazon EKS attempts to drain the nodes gracefully and will fail if it is unable to do so. You can force the update if Amazon EKS is unable to drain the nodes as a result of a pod disruption budget issue.

" + "UpdateNodegroupVersion": "

Updates the Kubernetes version or AMI version of an Amazon EKS managed node group.

You can update a node group using a launch template only if the node group was originally deployed with a launch template. If you need to update a custom AMI in a node group that was deployed with a launch template, then update your custom AMI, specify the new ID in a new version of the launch template, and then update the node group to the new version of the launch template.

If you update without a launch template, then you can update to the latest available AMI version of a node group's current Kubernetes version by not specifying a Kubernetes version in the request. You can update to the latest AMI version of your cluster's current Kubernetes version by specifying your cluster's Kubernetes version in the request. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

You cannot roll back a node group to an earlier Kubernetes version or AMI version.

When a node in a managed node group is terminated due to a scaling action or update, the pods in that node are drained first. Amazon EKS attempts to drain the nodes gracefully and will fail if it is unable to do so. You can force the update if Amazon EKS is unable to drain the nodes as a result of a pod disruption budget issue.

", + "UpdatePodIdentityAssociation": "

Updates a EKS Pod Identity association. Only the IAM role can be changed; an association can't be moved between clusters, namespaces, or service accounts. If you need to edit the namespace or service account, you need to remove the association and then create a new association with your desired settings.

" }, "shapes": { "AMITypes": { @@ -47,7 +57,7 @@ } }, "AccessDeniedException": { - "base": "

You don't have permissions to perform the requested operation. The user or role that is making the request must have at least one IAM permissions policy attached that grants the required permissions. For more information, see Access Management in the IAM User Guide.

", + "base": "

You don't have permissions to perform the requested operation. The IAM principal making the request must have at least one IAM permissions policy attached that grants the required permissions. For more information, see Access management in the IAM User Guide.

", "refs": { } }, @@ -155,7 +165,10 @@ "refs": { "AddonVersionInfo$requiresConfiguration": "

Whether the add-on requires configuration.

", "Compatibility$defaultVersion": "

The supported default version.

", + "CreateEksAnywhereSubscriptionRequest$autoRenew": "

A boolean indicating whether the subscription auto renews at the end of the term.

", "DeleteAddonRequest$preserve": "

Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.

", + "EksAnywhereSubscription$autoRenew": "

A boolean indicating whether or not a subscription will auto renew when it expires.

", + "UpdateEksAnywhereSubscriptionRequest$autoRenew": "

A boolean indicating whether or not to automatically renew the subscription.

", "UpdateNodegroupVersionRequest$force": "

Force the update if the existing node group's pods are unable to be drained due to a pod disruption budget issue. If an update fails because pods could not be drained, you can force the update after it fails to terminate the old node whether or not any pods are running on the node.

", "VpcConfigResponse$endpointPublicAccess": "

This parameter indicates whether the Amazon EKS public API server endpoint is enabled. If the Amazon EKS public API server endpoint is disabled, your cluster's Kubernetes API server can only receive requests that originate from within the cluster VPC.

", "VpcConfigResponse$endpointPrivateAccess": "

This parameter indicates whether the Amazon EKS private API server endpoint is enabled. If the Amazon EKS private API server endpoint is enabled, Kubernetes API requests that originate from within your cluster's VPC use the private VPC endpoint instead of traversing the internet. If this value is disabled and you have nodes or Fargate pods in the cluster, then ensure that publicAccessCidrs includes the necessary CIDR blocks for communication with the nodes or Fargate pods. For more information, see Amazon EKS cluster endpoint access control in the Amazon EKS User Guide .

" @@ -196,7 +209,7 @@ } }, "ClientException": { - "base": "

These errors are usually caused by a client action. Actions can include using an action or resource on behalf of a user that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

", + "base": "

These errors are usually caused by a client action. Actions can include using an action or resource on behalf of an IAM principal that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

", "refs": { } }, @@ -284,7 +297,7 @@ } }, "ControlPlanePlacementRequest": { - "base": "

The placement configuration for all the control plane instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. For more information, see Capacity considerations in the Amazon EKS User Guide

", + "base": "

The placement configuration for all the control plane instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. For more information, see Capacity considerations in the Amazon EKS User Guide.

", "refs": { "OutpostConfigRequest$controlPlanePlacement": "

An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. For more information, see Capacity considerations in the Amazon EKS User Guide.

" } @@ -315,6 +328,16 @@ "refs": { } }, + "CreateEksAnywhereSubscriptionRequest": { + "base": null, + "refs": { + } + }, + "CreateEksAnywhereSubscriptionResponse": { + "base": null, + "refs": { + } + }, "CreateFargateProfileRequest": { "base": null, "refs": { @@ -335,6 +358,16 @@ "refs": { } }, + "CreatePodIdentityAssociationRequest": { + "base": null, + "refs": { + } + }, + "CreatePodIdentityAssociationResponse": { + "base": null, + "refs": { + } + }, "DeleteAddonRequest": { "base": null, "refs": { @@ -355,6 +388,16 @@ "refs": { } }, + "DeleteEksAnywhereSubscriptionRequest": { + "base": null, + "refs": { + } + }, + "DeleteEksAnywhereSubscriptionResponse": { + "base": null, + "refs": { + } + }, "DeleteFargateProfileRequest": { "base": null, "refs": { @@ -375,6 +418,16 @@ "refs": { } }, + "DeletePodIdentityAssociationRequest": { + "base": null, + "refs": { + } + }, + "DeletePodIdentityAssociationResponse": { + "base": null, + "refs": { + } + }, "DeregisterClusterRequest": { "base": null, "refs": { @@ -431,6 +484,16 @@ "refs": { } }, + "DescribeEksAnywhereSubscriptionRequest": { + "base": null, + "refs": { + } + }, + "DescribeEksAnywhereSubscriptionResponse": { + "base": null, + "refs": { + } + }, "DescribeFargateProfileRequest": { "base": null, "refs": { @@ -461,6 +524,16 @@ "refs": { } }, + "DescribePodIdentityAssociationRequest": { + "base": null, + "refs": { + } + }, + "DescribePodIdentityAssociationResponse": { + "base": null, + "refs": { + } + }, "DescribeUpdateRequest": { "base": null, "refs": { @@ -481,6 +554,60 @@ "refs": { } }, + "EksAnywhereSubscription": { + "base": "

An EKS Anywhere subscription authorizing the customer to support for licensed clusters and access to EKS Anywhere Curated Packages.

", + "refs": { + "CreateEksAnywhereSubscriptionResponse$subscription": "

The full description of the subscription.

", + "DeleteEksAnywhereSubscriptionResponse$subscription": "

The full description of the subscription to be deleted.

", + "DescribeEksAnywhereSubscriptionResponse$subscription": "

The full description of the subscription.

", + "EksAnywhereSubscriptionList$member": null, + "UpdateEksAnywhereSubscriptionResponse$subscription": "

The full description of the updated subscription.

" + } + }, + "EksAnywhereSubscriptionLicenseType": { + "base": null, + "refs": { + "CreateEksAnywhereSubscriptionRequest$licenseType": "

The license type for all licenses in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

", + "EksAnywhereSubscription$licenseType": "

The type of licenses included in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

" + } + }, + "EksAnywhereSubscriptionList": { + "base": null, + "refs": { + "ListEksAnywhereSubscriptionsResponse$subscriptions": "

A list of all subscription objects in the region, filtered by includeStatus and paginated by nextToken and maxResults.

" + } + }, + "EksAnywhereSubscriptionName": { + "base": null, + "refs": { + "CreateEksAnywhereSubscriptionRequest$name": "

The unique name for your subscription. It must be unique in your Amazon Web Services account in the Amazon Web Services Region you're creating the subscription in. The name can contain only alphanumeric characters (case-sensitive), hyphens, and underscores. It must start with an alphabetic character and can't be longer than 100 characters.

" + } + }, + "EksAnywhereSubscriptionStatus": { + "base": null, + "refs": { + "EksAnywhereSubscriptionStatusValues$member": null + } + }, + "EksAnywhereSubscriptionStatusValues": { + "base": null, + "refs": { + "ListEksAnywhereSubscriptionsRequest$includeStatus": "

An array of subscription statuses to filter on.

" + } + }, + "EksAnywhereSubscriptionTerm": { + "base": "

An object representing the term duration and term unit type of your subscription. This determines the term length of your subscription. Valid values are MONTHS for term unit and 12 or 36 for term duration, indicating a 12 month or 36 month subscription.

", + "refs": { + "CreateEksAnywhereSubscriptionRequest$term": "

An object representing the term duration and term unit type of your subscription. This determines the term length of your subscription. Valid values are MONTHS for term unit and 12 or 36 for term duration, indicating a 12 month or 36 month subscription. This value cannot be changed after creating the subscription.

", + "EksAnywhereSubscription$term": "

An EksAnywhereSubscriptionTerm object.

" + } + }, + "EksAnywhereSubscriptionTermUnit": { + "base": null, + "refs": { + "EksAnywhereSubscriptionTerm$unit": "

The term unit of the subscription. Valid value is MONTHS.

" + } + }, "EncryptionConfig": { "base": "

The encryption configuration for the cluster.

", "refs": { @@ -584,6 +711,14 @@ "ListClustersRequest$include": "

Indicates whether external clusters are included in the returned list. Use 'all' to return connected clusters, or blank to return only Amazon EKS clusters. 'all' must be in lowercase otherwise an error occurs.

" } }, + "Integer": { + "base": null, + "refs": { + "CreateEksAnywhereSubscriptionRequest$licenseQuantity": "

The number of licenses to purchase with the subscription. Valid values are between 1 and 100. This value can't be changed after creating the subscription.

", + "EksAnywhereSubscription$licenseQuantity": "

The number of licenses included in a subscription. Valid values are between 1 and 100.

", + "EksAnywhereSubscriptionTerm$duration": "

The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

" + } + }, "InvalidParameterException": { "base": "

The specified parameter is invalid. Review the available parameters for the API request.

", "refs": { @@ -665,6 +800,22 @@ "refs": { } }, + "ListEksAnywhereSubscriptionsRequest": { + "base": null, + "refs": { + } + }, + "ListEksAnywhereSubscriptionsRequestMaxResults": { + "base": null, + "refs": { + "ListEksAnywhereSubscriptionsRequest$maxResults": "

The maximum number of cluster results returned by ListEksAnywhereSubscriptions in paginated output. When you use this parameter, ListEksAnywhereSubscriptions returns only maxResults results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListEksAnywhereSubscriptions request with the returned nextToken value. This value can be between 1 and 100. If you don't use this parameter, ListEksAnywhereSubscriptions returns up to 10 results and a nextToken value if applicable.

" + } + }, + "ListEksAnywhereSubscriptionsResponse": { + "base": null, + "refs": { + } + }, "ListFargateProfilesRequest": { "base": null, "refs": { @@ -707,6 +858,22 @@ "refs": { } }, + "ListPodIdentityAssociationsMaxResults": { + "base": null, + "refs": { + "ListPodIdentityAssociationsRequest$maxResults": "

The maximum number of EKS Pod Identity association results returned by ListPodIdentityAssociations in paginated output. When you use this parameter, ListPodIdentityAssociations returns only maxResults results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListPodIdentityAssociations request with the returned nextToken value. This value can be between 1 and 100. If you don't use this parameter, ListPodIdentityAssociations returns up to 100 results and a nextToken value if applicable.

" + } + }, + "ListPodIdentityAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListPodIdentityAssociationsResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -867,6 +1034,27 @@ "NodegroupUpdateConfig$maxUnavailablePercentage": "

The maximum percentage of nodes unavailable during a version update. This percentage of nodes will be updated in parallel, up to 100 nodes at once. This value or maxUnavailable is required to have a value.

" } }, + "PodIdentityAssociation": { + "base": "

Amazon EKS Pod Identity associations provide the ability to manage credentials for your applications, similar to the way that 7EC2l instance profiles provide credentials to Amazon EC2 instances.

", + "refs": { + "CreatePodIdentityAssociationResponse$association": "

The full description of your new association.

The description includes an ID for the association. Use the ID of the association in further actions to manage the association.

", + "DeletePodIdentityAssociationResponse$association": "

The full description of the EKS Pod Identity association that was deleted.

", + "DescribePodIdentityAssociationResponse$association": "

The full description of the EKS Pod Identity association.

", + "UpdatePodIdentityAssociationResponse$association": "

The full description of the EKS Pod Identity association that was updated.

" + } + }, + "PodIdentityAssociationSummaries": { + "base": null, + "refs": { + "ListPodIdentityAssociationsResponse$associations": "

The list of summarized descriptions of the associations that are in the cluster and match any filters that you provided.

Each summary is simplified by removing these fields compared to the full PodIdentityAssociation :

  • The IAM role: roleArn

  • The timestamp that the association was created at: createdAt

  • The most recent timestamp that the association was modified at:. modifiedAt

  • The tags on the association: tags

" + } + }, + "PodIdentityAssociationSummary": { + "base": "

The summarized description of the association.

Each summary is simplified by removing these fields compared to the full PodIdentityAssociation :

  • The IAM role: roleArn

  • The timestamp that the association was created at: createdAt

  • The most recent timestamp that the association was modified at:. modifiedAt

  • The tags on the association: tags

", + "refs": { + "PodIdentityAssociationSummaries$member": null + } + }, "Provider": { "base": "

Identifies the Key Management Service (KMS) key used to encrypt the secrets.

", "refs": { @@ -893,7 +1081,7 @@ "ResolveConflicts": { "base": null, "refs": { - "CreateAddonRequest$resolveConflicts": "

How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the value you choose:

  • None – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn't change the value. Creation of the add-on might fail.

  • Overwrite – If the self-managed version of the add-on is installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes the value to the Amazon EKS default value.

  • Preserve – Not supported. You can set this value when updating an add-on though. For more information, see UpdateAddon.

If you don't currently have the self-managed version of the add-on installed on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all values to default values, regardless of the option that you specify.

", + "CreateAddonRequest$resolveConflicts": "

How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the value you choose:

  • None – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn't change the value. Creation of the add-on might fail.

  • Overwrite – If the self-managed version of the add-on is installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes the value to the Amazon EKS default value.

  • Preserve – This is similar to the NONE option. If the self-managed version of the add-on is installed on your cluster Amazon EKS doesn't change the add-on resource properties. Creation of the add-on might fail if conflicts are detected. This option works differently during the update operation. For more information, see UpdateAddon.

If you don't currently have the self-managed version of the add-on installed on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all values to default values, regardless of the option that you specify.

", "UpdateAddonRequest$resolveConflicts": "

How to resolve field value conflicts for an Amazon EKS add-on if you've changed a value from the Amazon EKS default value. Conflicts are handled based on the option you choose:

  • None – Amazon EKS doesn't change the value. The update might fail.

  • Overwrite – Amazon EKS overwrites the changed value back to the Amazon EKS default value.

  • Preserve – Amazon EKS preserves the value. If you choose this option, we recommend that you test any field and value changes on a non-production cluster before updating the add-on on your production cluster.

" } }, @@ -937,7 +1125,7 @@ "String": { "base": null, "refs": { - "AccessDeniedException$message": null, + "AccessDeniedException$message": "

You do not have sufficient access to perform this action.

", "Addon$addonName": "

The name of the add-on.

", "Addon$addonVersion": "

The version of the add-on.

", "Addon$addonArn": "

The Amazon Resource Name (ARN) of the add-on.

", @@ -956,12 +1144,13 @@ "AssociateIdentityProviderConfigRequest$clusterName": "

The name of the cluster to associate the configuration to.

", "AssociateIdentityProviderConfigRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "AutoScalingGroup$name": "

The name of the Auto Scaling group associated with an Amazon EKS managed node group.

", - "BadRequestException$message": null, + "BadRequestException$message": "

This exception is thrown if the request contains a semantic error. The precise meaning will depend on the API, and will be documented in the error message.

", "Certificate$data": "

The Base64-encoded certificate data required to communicate with your cluster. Add this to the certificate-authority-data section of the kubeconfig file for your cluster.

", "ClientException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ClientException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", - "ClientException$addonName": null, - "ClientException$message": null, + "ClientException$addonName": "

The Amazon EKS add-on name associated with the exception.

", + "ClientException$subscriptionId": "

The Amazon EKS subscription ID with the exception.

", + "ClientException$message": "

These errors are usually caused by a client action. Actions can include using an action or resource on behalf of an IAM principal that doesn't have permissions to use the action or resource or specifying an identifier that is not valid.

", "Cluster$name": "

The name of the cluster.

", "Cluster$arn": "

The Amazon Resource Name (ARN) of the cluster.

", "Cluster$version": "

The Kubernetes server version for the cluster.

", @@ -986,6 +1175,7 @@ "CreateClusterRequest$version": "

The desired Kubernetes version for your cluster. If you don't specify a value here, the default version available in Amazon EKS is used.

The default version might not be the latest version available.

", "CreateClusterRequest$roleArn": "

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to Amazon Web Services API operations on your behalf. For more information, see Amazon EKS Service IAM Role in the Amazon EKS User Guide .

", "CreateClusterRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateEksAnywhereSubscriptionRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "CreateFargateProfileRequest$fargateProfileName": "

The name of the Fargate profile.

", "CreateFargateProfileRequest$clusterName": "

The name of the Amazon EKS cluster to apply the Fargate profile to.

", "CreateFargateProfileRequest$podExecutionRoleArn": "

The Amazon Resource Name (ARN) of the pod execution role to use for pods that match the selectors in the Fargate profile. The pod execution role allows Fargate infrastructure to register with your cluster as a node, and it provides read access to Amazon ECR image repositories. For more information, see Pod Execution Role in the Amazon EKS User Guide.

", @@ -996,12 +1186,20 @@ "CreateNodegroupRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "CreateNodegroupRequest$version": "

The Kubernetes version to use for your managed nodes. By default, the Kubernetes version of the cluster is used, and this is the only accepted specified value. If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify version, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "CreateNodegroupRequest$releaseVersion": "

The AMI version of the Amazon EKS optimized AMI to use with your node group. By default, the latest available AMI version for the node group's current Kubernetes version is used. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. Amazon EKS managed node groups support the November 2022 and later releases of the Windows AMIs. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify releaseVersion, or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", + "CreatePodIdentityAssociationRequest$clusterName": "

The name of the cluster to create the association in.

", + "CreatePodIdentityAssociationRequest$namespace": "

The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.

", + "CreatePodIdentityAssociationRequest$serviceAccount": "

The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

", + "CreatePodIdentityAssociationRequest$roleArn": "

The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.

", + "CreatePodIdentityAssociationRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "DeleteAddonRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", "DeleteClusterRequest$name": "

The name of the cluster to delete.

", + "DeleteEksAnywhereSubscriptionRequest$id": "

The ID of the subscription.

", "DeleteFargateProfileRequest$clusterName": "

The name of the Amazon EKS cluster associated with the Fargate profile to delete.

", "DeleteFargateProfileRequest$fargateProfileName": "

The name of the Fargate profile to delete.

", "DeleteNodegroupRequest$clusterName": "

The name of the Amazon EKS cluster that is associated with your node group.

", "DeleteNodegroupRequest$nodegroupName": "

The name of the node group to delete.

", + "DeletePodIdentityAssociationRequest$clusterName": "

The cluster name that

", + "DeletePodIdentityAssociationRequest$associationId": "

The ID of the association to be deleted.

", "DeregisterClusterRequest$name": "

The name of the connected cluster to deregister.

", "DescribeAddonConfigurationRequest$addonName": "

The name of the add-on. The name must match one of the names that DescribeAddonVersions returns.

", "DescribeAddonConfigurationRequest$addonVersion": "

The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions .

", @@ -1012,19 +1210,25 @@ "DescribeAddonVersionsRequest$kubernetesVersion": "

The Kubernetes versions that you can use the add-on with.

", "DescribeAddonVersionsRequest$nextToken": "

The nextToken value returned from a previous paginated DescribeAddonVersionsRequest where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", "DescribeAddonVersionsRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons .

", - "DescribeAddonVersionsResponse$nextToken": "

The nextToken value returned from a previous paginated DescribeAddonVersionsResponse where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", + "DescribeAddonVersionsResponse$nextToken": "

The nextToken value to include in a future DescribeAddonVersions request. When the results of a DescribeAddonVersions request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", "DescribeClusterRequest$name": "

The name of the cluster to describe.

", + "DescribeEksAnywhereSubscriptionRequest$id": "

The ID of the subscription.

", "DescribeFargateProfileRequest$clusterName": "

The name of the Amazon EKS cluster associated with the Fargate profile.

", "DescribeFargateProfileRequest$fargateProfileName": "

The name of the Fargate profile to describe.

", "DescribeIdentityProviderConfigRequest$clusterName": "

The cluster name that the identity provider configuration is associated to.

", "DescribeNodegroupRequest$clusterName": "

The name of the Amazon EKS cluster associated with the node group.

", "DescribeNodegroupRequest$nodegroupName": "

The name of the node group to describe.

", + "DescribePodIdentityAssociationRequest$clusterName": "

The name of the cluster that the association is in.

", + "DescribePodIdentityAssociationRequest$associationId": "

The ID of the association that you want the description of.

", "DescribeUpdateRequest$name": "

The name of the Amazon EKS cluster associated with the update.

", "DescribeUpdateRequest$updateId": "

The ID of the update to describe.

", "DescribeUpdateRequest$nodegroupName": "

The name of the Amazon EKS node group associated with the update. This parameter is required if the update is a node group update.

", "DescribeUpdateRequest$addonName": "

The name of the add-on. The name must match one of the names returned by ListAddons . This parameter is required if the update is an add-on update.

", "DisassociateIdentityProviderConfigRequest$clusterName": "

The name of the cluster to disassociate an identity provider from.

", "DisassociateIdentityProviderConfigRequest$clientRequestToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "EksAnywhereSubscription$id": "

UUID identifying a subscription.

", + "EksAnywhereSubscription$arn": "

The Amazon Resource Name (ARN) for the subscription.

", + "EksAnywhereSubscription$status": "

The status of a subscription.

", "ErrorDetail$errorMessage": "

A more complete description of the error.

", "FargateProfile$fargateProfileName": "

The name of the Fargate profile.

", "FargateProfile$fargateProfileArn": "

The full Amazon Resource Name (ARN) of the Fargate profile.

", @@ -1039,12 +1243,14 @@ "InvalidParameterException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "InvalidParameterException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", "InvalidParameterException$fargateProfileName": "

The Fargate profile associated with the exception.

", - "InvalidParameterException$addonName": null, - "InvalidParameterException$message": null, + "InvalidParameterException$addonName": "

The specified parameter for the add-on name is invalid. Review the available parameters for the API request

", + "InvalidParameterException$subscriptionId": "

The Amazon EKS subscription ID with the exception.

", + "InvalidParameterException$message": "

The specified parameter is invalid. Review the available parameters for the API request.

", "InvalidRequestException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "InvalidRequestException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", - "InvalidRequestException$addonName": null, - "InvalidRequestException$message": null, + "InvalidRequestException$addonName": "

The request is invalid given the state of the add-on name. Check the state of the cluster and the associated operations.

", + "InvalidRequestException$subscriptionId": "

The Amazon EKS subscription ID with the exception.

", + "InvalidRequestException$message": "

The Amazon EKS add-on name associated with the exception.

", "Issue$message": "

The error message associated with the issue.

", "KubernetesNetworkConfigRequest$serviceIpv4Cidr": "

Don't specify a value if you select ipv6 for ipFamily. The CIDR block to assign Kubernetes service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. The block must meet the following requirements:

  • Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16.

  • Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.

  • Between /24 and /12.

You can only specify a custom CIDR block when you create a cluster and can't change this value once the cluster is created.

", "KubernetesNetworkConfigResponse$serviceIpv4Cidr": "

The CIDR block that Kubernetes pod and service IP addresses are assigned from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet that the node is in. If you didn't specify a CIDR block when you created the cluster, then Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this was specified, then it was specified when the cluster was created and it can't be changed.

", @@ -1053,18 +1259,25 @@ "LaunchTemplateSpecification$version": "

The version number of the launch template to use. If no version is specified, then the template's default version is used.

", "LaunchTemplateSpecification$id": "

The ID of the launch template.

You must specify either the launch template ID or the launch template name in the request, but not both.

", "ListAddonsRequest$nextToken": "

The nextToken value returned from a previous paginated ListAddonsRequest where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", - "ListAddonsResponse$nextToken": "

The nextToken value returned from a previous paginated ListAddonsResponse where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", + "ListAddonsResponse$nextToken": "

The nextToken value to include in a future ListAddons request. When the results of a ListAddons request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", "ListClustersRequest$nextToken": "

The nextToken value returned from a previous paginated ListClusters request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", "ListClustersResponse$nextToken": "

The nextToken value to include in a future ListClusters request. When the results of a ListClusters request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListEksAnywhereSubscriptionsRequest$nextToken": "

The nextToken value returned from a previous paginated ListEksAnywhereSubscriptions request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

", + "ListEksAnywhereSubscriptionsResponse$nextToken": "

The nextToken value to include in a future ListEksAnywhereSubscriptions request. When the results of a ListEksAnywhereSubscriptions request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

", "ListFargateProfilesRequest$clusterName": "

The name of the Amazon EKS cluster that you would like to list Fargate profiles in.

", "ListFargateProfilesRequest$nextToken": "

The nextToken value returned from a previous paginated ListFargateProfiles request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

", "ListFargateProfilesResponse$nextToken": "

The nextToken value to include in a future ListFargateProfiles request. When the results of a ListFargateProfiles request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

", "ListIdentityProviderConfigsRequest$clusterName": "

The cluster name that you want to list identity provider configurations for.

", "ListIdentityProviderConfigsRequest$nextToken": "

The nextToken value returned from a previous paginated IdentityProviderConfigsRequest where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

", - "ListIdentityProviderConfigsResponse$nextToken": "

The nextToken value returned from a previous paginated ListIdentityProviderConfigsResponse where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

", + "ListIdentityProviderConfigsResponse$nextToken": "

The nextToken value to include in a future ListIdentityProviderConfigsResponse request. When the results of a ListIdentityProviderConfigsResponse request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

", "ListNodegroupsRequest$clusterName": "

The name of the Amazon EKS cluster that you would like to list node groups in.

", "ListNodegroupsRequest$nextToken": "

The nextToken value returned from a previous paginated ListNodegroups request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

", "ListNodegroupsResponse$nextToken": "

The nextToken value to include in a future ListNodegroups request. When the results of a ListNodegroups request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListPodIdentityAssociationsRequest$clusterName": "

The name of the cluster that the associations are in.

", + "ListPodIdentityAssociationsRequest$namespace": "

The name of the Kubernetes namespace inside the cluster that the associations are in.

", + "ListPodIdentityAssociationsRequest$serviceAccount": "

The name of the Kubernetes service account that the associations use.

", + "ListPodIdentityAssociationsRequest$nextToken": "

The nextToken value returned from a previous paginated ListUpdates request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", + "ListPodIdentityAssociationsResponse$nextToken": "

The nextToken value to include in a future ListPodIdentityAssociations request. When the results of a ListPodIdentityAssociations request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. Currently, the supported resources are Amazon EKS clusters and managed node groups.

", "ListUpdatesRequest$name": "

The name of the Amazon EKS cluster to list updates for.

", "ListUpdatesRequest$nodegroupName": "

The name of the Amazon EKS managed node group to list updates for.

", @@ -1080,7 +1293,7 @@ "Nodegroup$releaseVersion": "

If the node group was deployed using a launch template with a custom AMI, then this is the AMI ID that was specified in the launch template. For node groups that weren't deployed using a launch template, this is the version of the Amazon EKS optimized AMI that the node group was deployed with.

", "Nodegroup$nodeRole": "

The IAM role associated with your node group. The Amazon EKS node kubelet daemon makes calls to Amazon Web Services APIs on your behalf. Nodes receive permissions for these API calls through an IAM instance profile and associated policies.

", "NodegroupResources$remoteAccessSecurityGroup": "

The remote access security group associated with the node group. This security group controls SSH access to the nodes.

", - "NotFoundException$message": null, + "NotFoundException$message": "

A service resource associated with the request could not be found. Clients should not retry such requests.

", "OIDC$issuer": "

The issuer URL for the OIDC identity provider.

", "OidcIdentityProviderConfig$identityProviderConfigName": "

The name of the configuration.

", "OidcIdentityProviderConfig$identityProviderConfigArn": "

The ARN of the configuration.

", @@ -1100,30 +1313,44 @@ "OidcIdentityProviderConfigRequest$groupsPrefix": "

The prefix that is prepended to group claims to prevent clashes with existing names (such as system: groups). For example, the value oidc: will create group names like oidc:engineering and oidc:infra.

", "OutpostConfigRequest$controlPlaneInstanceType": "

The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. Choose an instance type based on the number of nodes that your cluster will have. For more information, see Capacity considerations in the Amazon EKS User Guide.

The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. The control plane is not automatically scaled by Amazon EKS.

", "OutpostConfigResponse$controlPlaneInstanceType": "

The Amazon EC2 instance type used for the control plane. The instance type is the same for all control plane instances.

", - "Provider$keyArn": "

Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key. For more information, see Allowing Users in Other Accounts to Use a KMS key in the Key Management Service Developer Guide.

", + "PodIdentityAssociation$clusterName": "

The name of the cluster that the association is in.

", + "PodIdentityAssociation$namespace": "

The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.

", + "PodIdentityAssociation$serviceAccount": "

The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

", + "PodIdentityAssociation$roleArn": "

The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.

", + "PodIdentityAssociation$associationArn": "

The Amazon Resource Name (ARN) of the association.

", + "PodIdentityAssociation$associationId": "

The ID of the association.

", + "PodIdentityAssociationSummary$clusterName": "

The name of the cluster that the association is in.

", + "PodIdentityAssociationSummary$namespace": "

The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.

", + "PodIdentityAssociationSummary$serviceAccount": "

The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

", + "PodIdentityAssociationSummary$associationArn": "

The Amazon Resource Name (ARN) of the association.

", + "PodIdentityAssociationSummary$associationId": "

The ID of the association.

", + "Provider$keyArn": "

Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric and created in the same Amazon Web Services Region as the cluster. If the KMS key was created in a different account, the IAM principal must have access to the KMS key. For more information, see Allowing users in other accounts to use a KMS key in the Key Management Service Developer Guide.

", "RegisterClusterRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "RemoteAccessConfig$ec2SshKey": "

The Amazon EC2 SSH key name that provides access for SSH communication with the nodes in the managed node group. For more information, see Amazon EC2 key pairs and Linux instances in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For Windows, an Amazon EC2 SSH key is used to obtain the RDP password. For more information, see Amazon EC2 key pairs and Windows instances in the Amazon Elastic Compute Cloud User Guide for Windows Instances.

", "ResourceInUseException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ResourceInUseException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", - "ResourceInUseException$addonName": null, - "ResourceInUseException$message": null, + "ResourceInUseException$addonName": "

The specified add-on name is in use.

", + "ResourceInUseException$message": "

The Amazon EKS message associated with the exception.

", "ResourceLimitExceededException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ResourceLimitExceededException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", - "ResourceLimitExceededException$message": null, + "ResourceLimitExceededException$subscriptionId": "

The Amazon EKS subscription ID with the exception.

", + "ResourceLimitExceededException$message": "

The Amazon EKS message associated with the exception.

", "ResourceNotFoundException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ResourceNotFoundException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", "ResourceNotFoundException$fargateProfileName": "

The Fargate profile associated with the exception.

", - "ResourceNotFoundException$addonName": null, - "ResourceNotFoundException$message": null, - "ResourcePropagationDelayException$message": null, + "ResourceNotFoundException$addonName": "

The Amazon EKS add-on name associated with the exception.

", + "ResourceNotFoundException$subscriptionId": "

The Amazon EKS subscription ID with the exception.

", + "ResourceNotFoundException$message": "

The Amazon EKS message associated with the exception.

", + "ResourcePropagationDelayException$message": "

Required resources (such as service-linked roles) were created and are still propagating. Retry later.

", "ServerException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "ServerException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", - "ServerException$addonName": null, - "ServerException$message": null, - "ServiceUnavailableException$message": null, + "ServerException$addonName": "

The Amazon EKS add-on name associated with the exception.

", + "ServerException$subscriptionId": "

The Amazon EKS subscription ID with the exception.

", + "ServerException$message": "

These errors are usually caused by a server-side issue.

", + "ServiceUnavailableException$message": "

The request has failed due to a temporary failure of the server.

", "StringList$member": null, "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource to which to add tags. Currently, the supported resources are Amazon EKS clusters and managed node groups.

", - "UnsupportedAvailabilityZoneException$message": null, + "UnsupportedAvailabilityZoneException$message": "

At least one of your specified cluster subnets is in an Availability Zone that does not support Amazon EKS. The exception output specifies the supported Availability Zones for your account, from which you can choose subnets for your cluster.

", "UnsupportedAvailabilityZoneException$clusterName": "

The Amazon EKS cluster associated with the exception.

", "UnsupportedAvailabilityZoneException$nodegroupName": "

The Amazon EKS managed node group associated with the exception.

", "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource from which to delete tags. Currently, the supported resources are Amazon EKS clusters and managed node groups.

", @@ -1137,6 +1364,8 @@ "UpdateClusterVersionRequest$name": "

The name of the Amazon EKS cluster to update.

", "UpdateClusterVersionRequest$version": "

The desired Kubernetes version following a successful update.

", "UpdateClusterVersionRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "UpdateEksAnywhereSubscriptionRequest$id": "

The ID of the subscription.

", + "UpdateEksAnywhereSubscriptionRequest$clientRequestToken": "

Unique, case-sensitive identifier to ensure the idempotency of the request.

", "UpdateNodegroupConfigRequest$clusterName": "

The name of the Amazon EKS cluster that the managed node group resides in.

", "UpdateNodegroupConfigRequest$nodegroupName": "

The name of the managed node group to update.

", "UpdateNodegroupConfigRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", @@ -1146,6 +1375,10 @@ "UpdateNodegroupVersionRequest$releaseVersion": "

The AMI version of the Amazon EKS optimized AMI to use for the update. By default, the latest available AMI version for the node group's Kubernetes version is used. For information about Linux versions, see Amazon EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. Amazon EKS managed node groups support the November 2022 and later releases of the Windows AMIs. For information about Windows versions, see Amazon EKS optimized Windows AMI versions in the Amazon EKS User Guide.

If you specify launchTemplate, and your launch template uses a custom AMI, then don't specify releaseVersion, or the node group update will fail. For more information about using launch templates with Amazon EKS, see Launch template support in the Amazon EKS User Guide.

", "UpdateNodegroupVersionRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "UpdateParam$value": "

The value of the keys submitted as part of an update request.

", + "UpdatePodIdentityAssociationRequest$clusterName": "

The name of the cluster that you want to update the association in.

", + "UpdatePodIdentityAssociationRequest$associationId": "

The ID of the association to be updated.

", + "UpdatePodIdentityAssociationRequest$roleArn": "

The new IAM role to change the

", + "UpdatePodIdentityAssociationRequest$clientRequestToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "VpcConfigResponse$clusterSecurityGroupId": "

The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.

", "VpcConfigResponse$vpcId": "

The VPC associated with your cluster.

", "labelsKeyList$member": null @@ -1164,11 +1397,12 @@ "DescribeAddonVersionsRequest$types": "

The type of the add-on. For valid types, don't specify a value for this property.

", "DescribeAddonVersionsRequest$publishers": "

The publisher of the add-on. For valid publishers, don't specify a value for this property.

", "DescribeAddonVersionsRequest$owners": "

The owner of the add-on. For valid owners, don't specify a value for this property.

", + "EksAnywhereSubscription$licenseArns": "

Amazon Web Services License Manager ARN associated with the subscription.

", "EncryptionConfig$resources": "

Specifies the resources to be encrypted. The only supported value is \"secrets\".

", "ErrorDetail$resourceIds": "

An optional field that contains the resource IDs associated with the error.

", "FargateProfile$subnets": "

The IDs of subnets to launch pods into.

", "Issue$resourceIds": "

The Amazon Web Services resources that are afflicted by this issue.

", - "ListAddonsResponse$addons": "

A list of available add-ons.

", + "ListAddonsResponse$addons": "

A list of installed add-ons.

", "ListClustersResponse$clusters": "

A list of all of the clusters for your account in the specified Region.

", "ListFargateProfilesResponse$fargateProfileNames": "

A list of all of the Fargate profiles associated with the specified cluster.

", "ListNodegroupsResponse$nodegroups": "

A list of all of the node groups associated with the specified cluster.

", @@ -1188,7 +1422,7 @@ } }, "TagKey": { - "base": null, + "base": "

One part of a key-value pair that make up a tag. A key is a general label that acts like a category for more specific tag values.

", "refs": { "TagKeyList$member": null, "TagMap$key": null @@ -1201,7 +1435,7 @@ } }, "TagMap": { - "base": null, + "base": "

The metadata that you apply to a resource to help you categorize and organize them. Each tag consists of a key and an optional value. You define them.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource – 50

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length – 128 Unicode characters in UTF-8

  • Maximum value length – 256 Unicode characters in UTF-8

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case-sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

", "refs": { "Addon$tags": "

The metadata that you apply to the add-on to assist with categorization and organization. Each tag consists of a key and an optional value. You define both. Add-on tags do not propagate to any other resources associated with the cluster.

", "AssociateIdentityProviderConfigRequest$tags": "

The metadata to apply to the configuration to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.

", @@ -1209,12 +1443,16 @@ "Cluster$tags": "

The metadata that you apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value. You define both. Cluster tags do not propagate to any other resources associated with the cluster.

", "CreateAddonRequest$tags": "

The metadata to apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.

", "CreateClusterRequest$tags": "

The metadata to apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.

", + "CreateEksAnywhereSubscriptionRequest$tags": "

The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags don't propagate to any other resources associated with the subscription.

", "CreateFargateProfileRequest$tags": "

The metadata to apply to the Fargate profile to assist with categorization and organization. Each tag consists of a key and an optional value. You define both. Fargate profile tags do not propagate to any other resources associated with the Fargate profile, such as the pods that are scheduled with it.

", "CreateNodegroupRequest$tags": "

The metadata to apply to the node group to assist with categorization and organization. Each tag consists of a key and an optional value. You define both. Node group tags do not propagate to any other resources associated with the node group, such as the Amazon EC2 instances or subnets.

", + "CreatePodIdentityAssociationRequest$tags": "

The metadata that you apply to a resource to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource – 50

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length – 128 Unicode characters in UTF-8

  • Maximum value length – 256 Unicode characters in UTF-8

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case-sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

", + "EksAnywhereSubscription$tags": "

The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

", "FargateProfile$tags": "

The metadata applied to the Fargate profile to assist with categorization and organization. Each tag consists of a key and an optional value. You define both. Fargate profile tags do not propagate to any other resources associated with the Fargate profile, such as the pods that are scheduled with it.

", "ListTagsForResourceResponse$tags": "

The tags for the resource.

", "Nodegroup$tags": "

The metadata applied to the node group to assist with categorization and organization. Each tag consists of a key and an optional value. You define both. Node group tags do not propagate to any other resources associated with the node group, such as the Amazon EC2 instances or subnets.

", "OidcIdentityProviderConfig$tags": "

The metadata to apply to the provider configuration to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.

", + "PodIdentityAssociation$tags": "

The metadata that you apply to a resource to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.

The following basic restrictions apply to tags:

  • Maximum number of tags per resource – 50

  • For each resource, each tag key must be unique, and each tag key can have only one value.

  • Maximum key length – 128 Unicode characters in UTF-8

  • Maximum value length – 256 Unicode characters in UTF-8

  • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

  • Tag keys and values are case-sensitive.

  • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

", "RegisterClusterRequest$tags": "

The metadata that you apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value, both of which you define. Cluster tags do not propagate to any other resources associated with the cluster.

", "TagResourceRequest$tags": "

The tags to add to the resource. A tag is an array of key-value pairs.

" } @@ -1230,7 +1468,7 @@ } }, "TagValue": { - "base": null, + "base": "

The optional part of a key-value pair that make up a tag. A value acts as a descriptor within a tag category (key).

", "refs": { "TagMap$value": null } @@ -1254,9 +1492,14 @@ "Addon$modifiedAt": "

The date and time that the add-on was last modified.

", "Cluster$createdAt": "

The Unix epoch timestamp in seconds for when the cluster was created.

", "ConnectorConfigResponse$activationExpiry": "

The expiration time of the connected cluster. The cluster's YAML file must be applied through the native provider.

", + "EksAnywhereSubscription$createdAt": "

The Unix timestamp in seconds for when the subscription was created.

", + "EksAnywhereSubscription$effectiveDate": "

The Unix timestamp in seconds for when the subscription is effective.

", + "EksAnywhereSubscription$expirationDate": "

The Unix timestamp in seconds for when the subscription will expire or auto renew, depending on the auto renew configuration of the subscription object.

", "FargateProfile$createdAt": "

The Unix epoch timestamp in seconds for when the Fargate profile was created.

", "Nodegroup$createdAt": "

The Unix epoch timestamp in seconds for when the managed node group was created.

", "Nodegroup$modifiedAt": "

The Unix epoch timestamp in seconds for when the managed node group was last modified.

", + "PodIdentityAssociation$createdAt": "

The timestamp that the association was created at.

", + "PodIdentityAssociation$modifiedAt": "

The most recent timestamp that the association was modified at

", "Update$createdAt": "

The Unix epoch timestamp in seconds for when the update was created.

" } }, @@ -1319,6 +1562,16 @@ "refs": { } }, + "UpdateEksAnywhereSubscriptionRequest": { + "base": null, + "refs": { + } + }, + "UpdateEksAnywhereSubscriptionResponse": { + "base": null, + "refs": { + } + }, "UpdateLabelsPayload": { "base": "

An object representing a Kubernetes label change for a managed node group.

", "refs": { @@ -1363,6 +1616,16 @@ "Update$params": "

A key-value map that contains the parameters associated with the update.

" } }, + "UpdatePodIdentityAssociationRequest": { + "base": null, + "refs": { + } + }, + "UpdatePodIdentityAssociationResponse": { + "base": null, + "refs": { + } + }, "UpdateStatus": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,343 +57,308 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://eks-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://eks-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } + }, + "aws" ] } ], - "type": "tree", - "rules": [ + "endpoint": { + "url": "https://fips.eks.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://fips.eks.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + "fn": "stringEquals", + "argv": [ { - "conditions": [ + "fn": "getAttr", + "argv": [ { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://eks.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "PartitionResult" + }, + "name" + ] }, - { - "conditions": [], - "endpoint": { - "url": "https://eks-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://eks.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://eks-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://eks.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://eks.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://eks.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://eks.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks/2017-11-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks/2017-11-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -18,6 +18,12 @@ "output_token": "nextToken", "result_key": "clusters" }, + "ListEksAnywhereSubscriptions": { + "input_token": "nextToken", + "limit_key": "maxResults", + "output_token": "nextToken", + "result_key": "subscriptions" + }, "ListFargateProfiles": { "input_token": "nextToken", "limit_key": "maxResults", @@ -36,6 +42,12 @@ "output_token": "nextToken", "result_key": "nodegroups" }, + "ListPodIdentityAssociations": { + "input_token": "nextToken", + "limit_key": "maxResults", + "output_token": "nextToken", + "result_key": "associations" + }, "ListUpdates": { "input_token": "nextToken", "limit_key": "maxResults", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,229 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-11-26", + "endpointPrefix":"eks-auth", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon EKS Auth", + "serviceId":"EKS Auth", + "signatureVersion":"v4", + "signingName":"eks-auth", + "uid":"eks-auth-2023-11-26" + }, + "operations":{ + "AssumeRoleForPodIdentity":{ + "name":"AssumeRoleForPodIdentity", + "http":{ + "method":"POST", + "requestUri":"/clusters/{clusterName}/assume-role-for-pod-identity", + "responseCode":200 + }, + "input":{"shape":"AssumeRoleForPodIdentityRequest"}, + "output":{"shape":"AssumeRoleForPodIdentityResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidTokenException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ExpiredTokenException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "AssumeRoleForPodIdentityRequest":{ + "type":"structure", + "required":[ + "clusterName", + "token" + ], + "members":{ + "clusterName":{ + "shape":"ClusterName", + "location":"uri", + "locationName":"clusterName" + }, + "token":{"shape":"JwtToken"} + } + }, + "AssumeRoleForPodIdentityResponse":{ + "type":"structure", + "required":[ + "subject", + "audience", + "podIdentityAssociation", + "assumedRoleUser", + "credentials" + ], + "members":{ + "subject":{"shape":"Subject"}, + "audience":{"shape":"String"}, + "podIdentityAssociation":{"shape":"PodIdentityAssociation"}, + "assumedRoleUser":{"shape":"AssumedRoleUser"}, + "credentials":{"shape":"Credentials"} + } + }, + "AssumedRoleUser":{ + "type":"structure", + "required":[ + "arn", + "assumeRoleId" + ], + "members":{ + "arn":{"shape":"String"}, + "assumeRoleId":{"shape":"String"} + } + }, + "ClusterName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[0-9A-Za-z][A-Za-z0-9\\-_]*" + }, + "Credentials":{ + "type":"structure", + "required":[ + "sessionToken", + "secretAccessKey", + "accessKeyId", + "expiration" + ], + "members":{ + "sessionToken":{"shape":"String"}, + "secretAccessKey":{"shape":"String"}, + "accessKeyId":{"shape":"String"}, + "expiration":{"shape":"Timestamp"} + }, + "sensitive":true + }, + "ExpiredTokenException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "InvalidParameterException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "InvalidRequestException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "InvalidTokenException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "JwtToken":{ + "type":"string", + "min":1, + "pattern":"[A-Za-z0-9-_=]+\\.[A-Za-z0-9-_=]+\\.[A-Za-z0-9-_=]+", + "sensitive":true + }, + "PodIdentityAssociation":{ + "type":"structure", + "required":[ + "associationArn", + "associationId" + ], + "members":{ + "associationArn":{"shape":"String"}, + "associationId":{"shape":"String"} + } + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServiceUnavailableException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":503}, + "exception":true, + "fault":true + }, + "String":{"type":"string"}, + "Subject":{ + "type":"structure", + "required":[ + "namespace", + "serviceAccount" + ], + "members":{ + "namespace":{"shape":"String"}, + "serviceAccount":{"shape":"String"} + } + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "Timestamp":{"type":"timestamp"} + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,130 @@ +{ + "version": "2.0", + "service": "

The Amazon EKS Auth API and the AssumeRoleForPodIdentity action are only used by the EKS Pod Identity Agent.

", + "operations": { + "AssumeRoleForPodIdentity": "

The Amazon EKS Auth API and the AssumeRoleForPodIdentity action are only used by the EKS Pod Identity Agent.

We recommend that applications use the Amazon Web Services SDKs to connect to Amazon Web Services services; if credentials from an EKS Pod Identity association are available in the pod, the latest versions of the SDKs use them automatically.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You don't have permissions to perform the requested operation. The IAM principal making the request must have at least one IAM permissions policy attached that grants the required permissions. For more information, see Access management in the IAM User Guide.

", + "refs": { + } + }, + "AssumeRoleForPodIdentityRequest": { + "base": null, + "refs": { + } + }, + "AssumeRoleForPodIdentityResponse": { + "base": null, + "refs": { + } + }, + "AssumedRoleUser": { + "base": "

An object with the permanent IAM role identity and the temporary session name.

", + "refs": { + "AssumeRoleForPodIdentityResponse$assumedRoleUser": "

An object with the permanent IAM role identity and the temporary session name.

The ARN of the IAM role that the temporary credentials authenticate to.

The session name of the temporary session requested to STS. The value is a unique identifier that contains the role ID, a colon (:), and the role session name of the role that is being assumed. The role ID is generated by IAM when the role is created. The role session name part of the value follows this format: eks-clustername-podname-random UUID

" + } + }, + "ClusterName": { + "base": null, + "refs": { + "AssumeRoleForPodIdentityRequest$clusterName": "

The name of the cluster for the request.

" + } + }, + "Credentials": { + "base": "

The Amazon Web Services Signature Version 4 type of temporary credentials.

", + "refs": { + "AssumeRoleForPodIdentityResponse$credentials": "

The Amazon Web Services Signature Version 4 type of temporary credentials.

" + } + }, + "ExpiredTokenException": { + "base": "

The specified Kubernetes service account token is expired.

", + "refs": { + } + }, + "InternalServerException": { + "base": "

These errors are usually caused by a server-side issue.

", + "refs": { + } + }, + "InvalidParameterException": { + "base": "

The specified parameter is invalid. Review the available parameters for the API request.

", + "refs": { + } + }, + "InvalidRequestException": { + "base": "

This exception is thrown if the request contains a semantic error. The precise meaning will depend on the API, and will be documented in the error message.

", + "refs": { + } + }, + "InvalidTokenException": { + "base": "

The specified Kubernetes service account token is invalid.

", + "refs": { + } + }, + "JwtToken": { + "base": null, + "refs": { + "AssumeRoleForPodIdentityRequest$token": "

The token of the Kubernetes service account for the pod.

" + } + }, + "PodIdentityAssociation": { + "base": "

Amazon EKS Pod Identity associations provide the ability to manage credentials for your applications, similar to the way that Amazon EC2 instance profiles provide credentials to Amazon EC2 instances.

", + "refs": { + "AssumeRoleForPodIdentityResponse$podIdentityAssociation": "

The Amazon Resource Name (ARN) and ID of the EKS Pod Identity association.

" + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource could not be found.

", + "refs": { + } + }, + "ServiceUnavailableException": { + "base": "

The service is unavailable. Back off and retry the operation.

", + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "AssumeRoleForPodIdentityResponse$audience": "

The identity that is allowed to use the credentials. This value is always pods.eks.amazonaws.com.

", + "AssumedRoleUser$arn": "

The ARN of the IAM role that the temporary credentials authenticate to.

", + "AssumedRoleUser$assumeRoleId": "

The session name of the temporary session requested to STS. The value is a unique identifier that contains the role ID, a colon (:), and the role session name of the role that is being assumed. The role ID is generated by IAM when the role is created. The role session name part of the value follows this format: eks-clustername-podname-random UUID

", + "Credentials$sessionToken": "

The token that applications inside the pods must pass to any service API to use the temporary credentials.

", + "Credentials$secretAccessKey": "

The secret access key that applications inside the pods use to sign requests.

", + "Credentials$accessKeyId": "

The access key ID that identifies the temporary security credentials.

", + "ExpiredTokenException$message": null, + "InternalServerException$message": null, + "InvalidParameterException$message": null, + "InvalidRequestException$message": null, + "InvalidTokenException$message": null, + "PodIdentityAssociation$associationArn": "

The Amazon Resource Name (ARN) of the EKS Pod Identity association.

", + "PodIdentityAssociation$associationId": "

The ID of the association.

", + "ResourceNotFoundException$message": null, + "ServiceUnavailableException$message": null, + "Subject$namespace": "

The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.

", + "Subject$serviceAccount": "

The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

", + "ThrottlingException$message": null + } + }, + "Subject": { + "base": "

An object containing the name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

", + "refs": { + "AssumeRoleForPodIdentityResponse$subject": "

The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied because your request rate is too high. Reduce the frequency of requests.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "Credentials$expiration": "

The Unix epoch timestamp in seconds when the current credentials expire.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,247 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://eks-auth-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://eks-auth.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://eks-auth-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://eks-auth.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,119 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://eks-auth-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://eks-auth.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://eks-auth-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://eks-auth.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://eks-auth-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://eks-auth.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4 @@ +{ + "pagination": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/smoke.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/smoke.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/smoke.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/smoke.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,6 @@ +{ + "version": 1, + "defaultRegion": "us-west-2", + "testCases": [ + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eks-auth/2023-11-26/waiters-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eks-auth/2023-11-26/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -33,6 +33,10 @@ {"shape":"SnapshotNotFoundFault"}, {"shape":"UserNotFoundFault"}, {"shape":"UserGroupNotFoundFault"}, + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"InvalidServerlessCacheSnapshotStateFault"}, {"shape":"TagQuotaPerResourceExceeded"}, {"shape":"InvalidARNFault"} ] @@ -105,6 +109,28 @@ {"shape":"ReplicationGroupNotUnderMigrationFault"} ] }, + "CopyServerlessCacheSnapshot":{ + "name":"CopyServerlessCacheSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CopyServerlessCacheSnapshotRequest"}, + "output":{ + "shape":"CopyServerlessCacheSnapshotResponse", + "resultWrapper":"CopyServerlessCacheSnapshotResult" + }, + "errors":[ + {"shape":"ServerlessCacheSnapshotAlreadyExistsFault"}, + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"ServerlessCacheSnapshotQuotaExceededFault"}, + {"shape":"InvalidServerlessCacheSnapshotStateFault"}, + {"shape":"ServiceLinkedRoleNotFoundFault"}, + {"shape":"TagQuotaPerResourceExceeded"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"} + ] + }, "CopySnapshot":{ "name":"CopySnapshot", "http":{ @@ -265,6 +291,53 @@ {"shape":"InvalidParameterCombinationException"} ] }, + "CreateServerlessCache":{ + "name":"CreateServerlessCache", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateServerlessCacheRequest"}, + "output":{ + "shape":"CreateServerlessCacheResponse", + "resultWrapper":"CreateServerlessCacheResult" + }, + "errors":[ + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"ServerlessCacheAlreadyExistsFault"}, + {"shape":"ServerlessCacheQuotaForCustomerExceededFault"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"}, + {"shape":"InvalidCredentialsException"}, + {"shape":"InvalidUserGroupStateFault"}, + {"shape":"UserGroupNotFoundFault"}, + {"shape":"TagQuotaPerResourceExceeded"}, + {"shape":"ServiceLinkedRoleNotFoundFault"} + ] + }, + "CreateServerlessCacheSnapshot":{ + "name":"CreateServerlessCacheSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateServerlessCacheSnapshotRequest"}, + "output":{ + "shape":"CreateServerlessCacheSnapshotResponse", + "resultWrapper":"CreateServerlessCacheSnapshotResult" + }, + "errors":[ + {"shape":"ServerlessCacheSnapshotAlreadyExistsFault"}, + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"ServerlessCacheSnapshotQuotaExceededFault"}, + {"shape":"ServiceLinkedRoleNotFoundFault"}, + {"shape":"TagQuotaPerResourceExceeded"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"} + ] + }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ @@ -475,6 +548,45 @@ {"shape":"InvalidParameterCombinationException"} ] }, + "DeleteServerlessCache":{ + "name":"DeleteServerlessCache", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteServerlessCacheRequest"}, + "output":{ + "shape":"DeleteServerlessCacheResponse", + "resultWrapper":"DeleteServerlessCacheResult" + }, + "errors":[ + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"ServerlessCacheSnapshotAlreadyExistsFault"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"}, + {"shape":"InvalidCredentialsException"}, + {"shape":"ServiceLinkedRoleNotFoundFault"} + ] + }, + "DeleteServerlessCacheSnapshot":{ + "name":"DeleteServerlessCacheSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteServerlessCacheSnapshotRequest"}, + "output":{ + "shape":"DeleteServerlessCacheSnapshotResponse", + "resultWrapper":"DeleteServerlessCacheSnapshotResult" + }, + "errors":[ + {"shape":"ServiceLinkedRoleNotFoundFault"}, + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"InvalidServerlessCacheSnapshotStateFault"}, + {"shape":"InvalidParameterValueException"} + ] + }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ @@ -725,6 +837,41 @@ {"shape":"InvalidParameterCombinationException"} ] }, + "DescribeServerlessCacheSnapshots":{ + "name":"DescribeServerlessCacheSnapshots", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeServerlessCacheSnapshotsRequest"}, + "output":{ + "shape":"DescribeServerlessCacheSnapshotsResponse", + "resultWrapper":"DescribeServerlessCacheSnapshotsResult" + }, + "errors":[ + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"} + ] + }, + "DescribeServerlessCaches":{ + "name":"DescribeServerlessCaches", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeServerlessCachesRequest"}, + "output":{ + "shape":"DescribeServerlessCachesResponse", + "resultWrapper":"DescribeServerlessCachesResult" + }, + "errors":[ + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"} + ] + }, "DescribeServiceUpdates":{ "name":"DescribeServiceUpdates", "http":{ @@ -828,6 +975,24 @@ {"shape":"InvalidParameterCombinationException"} ] }, + "ExportServerlessCacheSnapshot":{ + "name":"ExportServerlessCacheSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ExportServerlessCacheSnapshotRequest"}, + "output":{ + "shape":"ExportServerlessCacheSnapshotResponse", + "resultWrapper":"ExportServerlessCacheSnapshotResult" + }, + "errors":[ + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"InvalidServerlessCacheSnapshotStateFault"}, + {"shape":"ServiceLinkedRoleNotFoundFault"}, + {"shape":"InvalidParameterValueException"} + ] + }, "FailoverGlobalReplicationGroup":{ "name":"FailoverGlobalReplicationGroup", "http":{ @@ -929,6 +1094,10 @@ {"shape":"SnapshotNotFoundFault"}, {"shape":"UserNotFoundFault"}, {"shape":"UserGroupNotFoundFault"}, + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"InvalidServerlessCacheSnapshotStateFault"}, {"shape":"InvalidARNFault"} ] }, @@ -1066,6 +1235,28 @@ {"shape":"InvalidParameterCombinationException"} ] }, + "ModifyServerlessCache":{ + "name":"ModifyServerlessCache", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ModifyServerlessCacheRequest"}, + "output":{ + "shape":"ModifyServerlessCacheResponse", + "resultWrapper":"ModifyServerlessCacheResult" + }, + "errors":[ + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidParameterCombinationException"}, + {"shape":"InvalidCredentialsException"}, + {"shape":"InvalidUserGroupStateFault"}, + {"shape":"UserGroupNotFoundFault"}, + {"shape":"ServiceLinkedRoleNotFoundFault"} + ] + }, "ModifyUser":{ "name":"ModifyUser", "http":{ @@ -1182,6 +1373,10 @@ {"shape":"SnapshotNotFoundFault"}, {"shape":"UserNotFoundFault"}, {"shape":"UserGroupNotFoundFault"}, + {"shape":"ServerlessCacheNotFoundFault"}, + {"shape":"InvalidServerlessCacheStateFault"}, + {"shape":"ServerlessCacheSnapshotNotFoundFault"}, + {"shape":"InvalidServerlessCacheSnapshotStateFault"}, {"shape":"InvalidARNFault"}, {"shape":"TagNotFoundFault"} ] @@ -1879,6 +2074,13 @@ }, "exception":true }, + "CacheUsageLimits":{ + "type":"structure", + "members":{ + "DataStorage":{"shape":"DataStorage"}, + "ECPUPerSecond":{"shape":"ECPUPerSecond"} + } + }, "ChangeType":{ "type":"string", "enum":[ @@ -1945,6 +2147,25 @@ "PreferredOutpostArns":{"shape":"PreferredOutpostArnList"} } }, + "CopyServerlessCacheSnapshotRequest":{ + "type":"structure", + "required":[ + "SourceServerlessCacheSnapshotName", + "TargetServerlessCacheSnapshotName" + ], + "members":{ + "SourceServerlessCacheSnapshotName":{"shape":"String"}, + "TargetServerlessCacheSnapshotName":{"shape":"String"}, + "KmsKeyId":{"shape":"String"}, + "Tags":{"shape":"TagList"} + } + }, + "CopyServerlessCacheSnapshotResponse":{ + "type":"structure", + "members":{ + "ServerlessCacheSnapshot":{"shape":"ServerlessCacheSnapshot"} + } + }, "CopySnapshotMessage":{ "type":"structure", "required":[ @@ -2127,7 +2348,8 @@ "NetworkType":{"shape":"NetworkType"}, "IpDiscovery":{"shape":"IpDiscovery"}, "TransitEncryptionMode":{"shape":"TransitEncryptionMode"}, - "ClusterMode":{"shape":"ClusterMode"} + "ClusterMode":{"shape":"ClusterMode"}, + "ServerlessCacheSnapshotName":{"shape":"String"} } }, "CreateReplicationGroupResult":{ @@ -2136,6 +2358,53 @@ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, + "CreateServerlessCacheRequest":{ + "type":"structure", + "required":[ + "ServerlessCacheName", + "Engine" + ], + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "Description":{"shape":"String"}, + "Engine":{"shape":"String"}, + "MajorEngineVersion":{"shape":"String"}, + "CacheUsageLimits":{"shape":"CacheUsageLimits"}, + "KmsKeyId":{"shape":"String"}, + "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, + "SnapshotArnsToRestore":{"shape":"SnapshotArnsList"}, + "Tags":{"shape":"TagList"}, + "UserGroupId":{"shape":"String"}, + "SubnetIds":{"shape":"SubnetIdsList"}, + "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, + "DailySnapshotTime":{"shape":"String"} + } + }, + "CreateServerlessCacheResponse":{ + "type":"structure", + "members":{ + "ServerlessCache":{"shape":"ServerlessCache"} + } + }, + "CreateServerlessCacheSnapshotRequest":{ + "type":"structure", + "required":[ + "ServerlessCacheSnapshotName", + "ServerlessCacheName" + ], + "members":{ + "ServerlessCacheSnapshotName":{"shape":"String"}, + "ServerlessCacheName":{"shape":"String"}, + "KmsKeyId":{"shape":"String"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateServerlessCacheSnapshotResponse":{ + "type":"structure", + "members":{ + "ServerlessCacheSnapshot":{"shape":"ServerlessCacheSnapshot"} + } + }, "CreateSnapshotMessage":{ "type":"structure", "required":["SnapshotName"], @@ -2196,6 +2465,21 @@ "type":"list", "member":{"shape":"CustomerNodeEndpoint"} }, + "DataStorage":{ + "type":"structure", + "required":[ + "Maximum", + "Unit" + ], + "members":{ + "Maximum":{"shape":"IntegerOptional"}, + "Unit":{"shape":"DataStorageUnit"} + } + }, + "DataStorageUnit":{ + "type":"string", + "enum":["GB"] + }, "DataTieringStatus":{ "type":"string", "enum":[ @@ -2333,6 +2617,33 @@ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, + "DeleteServerlessCacheRequest":{ + "type":"structure", + "required":["ServerlessCacheName"], + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "FinalSnapshotName":{"shape":"String"} + } + }, + "DeleteServerlessCacheResponse":{ + "type":"structure", + "members":{ + "ServerlessCache":{"shape":"ServerlessCache"} + } + }, + "DeleteServerlessCacheSnapshotRequest":{ + "type":"structure", + "required":["ServerlessCacheSnapshotName"], + "members":{ + "ServerlessCacheSnapshotName":{"shape":"String"} + } + }, + "DeleteServerlessCacheSnapshotResponse":{ + "type":"structure", + "members":{ + "ServerlessCacheSnapshot":{"shape":"ServerlessCacheSnapshot"} + } + }, "DeleteSnapshotMessage":{ "type":"structure", "required":["SnapshotName"], @@ -2491,6 +2802,38 @@ "Marker":{"shape":"String"} } }, + "DescribeServerlessCacheSnapshotsRequest":{ + "type":"structure", + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "ServerlessCacheSnapshotName":{"shape":"String"}, + "SnapshotType":{"shape":"String"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"IntegerOptional"} + } + }, + "DescribeServerlessCacheSnapshotsResponse":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"String"}, + "ServerlessCacheSnapshots":{"shape":"ServerlessCacheSnapshotList"} + } + }, + "DescribeServerlessCachesRequest":{ + "type":"structure", + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "MaxResults":{"shape":"IntegerOptional"}, + "NextToken":{"shape":"String"} + } + }, + "DescribeServerlessCachesResponse":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"String"}, + "ServerlessCaches":{"shape":"ServerlessCacheList"} + } + }, "DescribeServiceUpdatesMessage":{ "type":"structure", "members":{ @@ -2626,6 +2969,13 @@ "locationName":"EC2SecurityGroup" } }, + "ECPUPerSecond":{ + "type":"structure", + "required":["Maximum"], + "members":{ + "Maximum":{"shape":"IntegerOptional"} + } + }, "Endpoint":{ "type":"structure", "members":{ @@ -2670,6 +3020,23 @@ "Events":{"shape":"EventList"} } }, + "ExportServerlessCacheSnapshotRequest":{ + "type":"structure", + "required":[ + "ServerlessCacheSnapshotName", + "S3BucketName" + ], + "members":{ + "ServerlessCacheSnapshotName":{"shape":"String"}, + "S3BucketName":{"shape":"String"} + } + }, + "ExportServerlessCacheSnapshotResponse":{ + "type":"structure", + "members":{ + "ServerlessCacheSnapshot":{"shape":"ServerlessCacheSnapshot"} + } + }, "FailoverGlobalReplicationGroupMessage":{ "type":"structure", "required":[ @@ -2915,6 +3282,17 @@ }, "exception":true }, + "InvalidCredentialsException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"InvalidCredentialsException", + "httpStatusCode":408, + "senderFault":true + }, + "exception":true + }, "InvalidGlobalReplicationGroupStateFault":{ "type":"structure", "members":{ @@ -2974,6 +3352,28 @@ }, "exception":true }, + "InvalidServerlessCacheSnapshotStateFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"InvalidServerlessCacheSnapshotStateFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "InvalidServerlessCacheStateFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"InvalidServerlessCacheStateFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "InvalidSnapshotStateFault":{ "type":"structure", "members":{ @@ -3266,6 +3666,26 @@ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, + "ModifyServerlessCacheRequest":{ + "type":"structure", + "required":["ServerlessCacheName"], + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "Description":{"shape":"String"}, + "CacheUsageLimits":{"shape":"CacheUsageLimits"}, + "RemoveUserGroup":{"shape":"BooleanOptional"}, + "UserGroupId":{"shape":"String"}, + "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, + "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, + "DailySnapshotTime":{"shape":"String"} + } + }, + "ModifyServerlessCacheResponse":{ + "type":"structure", + "members":{ + "ServerlessCache":{"shape":"ServerlessCache"} + } + }, "ModifyUserGroupMessage":{ "type":"structure", "required":["UserGroupId"], @@ -4031,6 +4451,127 @@ "type":"list", "member":{"shape":"SecurityGroupMembership"} }, + "ServerlessCache":{ + "type":"structure", + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "Description":{"shape":"String"}, + "CreateTime":{"shape":"TStamp"}, + "Status":{"shape":"String"}, + "Engine":{"shape":"String"}, + "MajorEngineVersion":{"shape":"String"}, + "FullEngineVersion":{"shape":"String"}, + "CacheUsageLimits":{"shape":"CacheUsageLimits"}, + "KmsKeyId":{"shape":"String"}, + "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, + "Endpoint":{"shape":"Endpoint"}, + "ReaderEndpoint":{"shape":"Endpoint"}, + "ARN":{"shape":"String"}, + "UserGroupId":{"shape":"String"}, + "SubnetIds":{"shape":"SubnetIdsList"}, + "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, + "DailySnapshotTime":{"shape":"String"} + } + }, + "ServerlessCacheAlreadyExistsFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ServerlessCacheAlreadyExistsFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ServerlessCacheConfiguration":{ + "type":"structure", + "members":{ + "ServerlessCacheName":{"shape":"String"}, + "Engine":{"shape":"String"}, + "MajorEngineVersion":{"shape":"String"} + } + }, + "ServerlessCacheList":{ + "type":"list", + "member":{"shape":"ServerlessCache"} + }, + "ServerlessCacheNotFoundFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ServerlessCacheNotFoundFault", + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServerlessCacheQuotaForCustomerExceededFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ServerlessCacheQuotaForCustomerExceededFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ServerlessCacheSnapshot":{ + "type":"structure", + "members":{ + "ServerlessCacheSnapshotName":{"shape":"String"}, + "ARN":{"shape":"String"}, + "KmsKeyId":{"shape":"String"}, + "SnapshotType":{"shape":"String"}, + "Status":{"shape":"String"}, + "CreateTime":{"shape":"TStamp"}, + "ExpiryTime":{"shape":"TStamp"}, + "BytesUsedForCache":{"shape":"String"}, + "ServerlessCacheConfiguration":{"shape":"ServerlessCacheConfiguration"} + } + }, + "ServerlessCacheSnapshotAlreadyExistsFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ServerlessCacheSnapshotAlreadyExistsFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ServerlessCacheSnapshotList":{ + "type":"list", + "member":{ + "shape":"ServerlessCacheSnapshot", + "locationName":"ServerlessCacheSnapshot" + } + }, + "ServerlessCacheSnapshotNotFoundFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ServerlessCacheSnapshotNotFoundFault", + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServerlessCacheSnapshotQuotaExceededFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ServerlessCacheSnapshotQuotaExceededFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "ServiceLinkedRoleNotFoundFault":{ "type":"structure", "members":{ @@ -4224,6 +4765,8 @@ "cache-security-group", "cache-subnet-group", "replication-group", + "serverless-cache", + "serverless-cache-snapshot", "user", "user-group" ] @@ -4262,6 +4805,13 @@ "locationName":"SubnetIdentifier" } }, + "SubnetIdsList":{ + "type":"list", + "member":{ + "shape":"String", + "locationName":"SubnetId" + } + }, "SubnetInUse":{ "type":"structure", "members":{ @@ -4403,6 +4953,10 @@ "type":"list", "member":{"shape":"String"} }, + "UGServerlessCacheIdList":{ + "type":"list", + "member":{"shape":"String"} + }, "UnprocessedUpdateAction":{ "type":"structure", "members":{ @@ -4517,6 +5071,7 @@ "MinimumEngineVersion":{"shape":"String"}, "PendingChanges":{"shape":"UserGroupPendingChanges"}, "ReplicationGroups":{"shape":"UGReplicationGroupIdList"}, + "ServerlessCaches":{"shape":"UGServerlessCacheIdList"}, "ARN":{"shape":"String"} } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,6 +7,7 @@ "BatchApplyUpdateAction": "

Apply the service update. For more information on service updates and applying them, see Applying Service Updates.

", "BatchStopUpdateAction": "

Stop the service update. For more information on service updates and stopping them, see Stopping Service Updates.

", "CompleteMigration": "

Complete the migration of data.

", + "CopyServerlessCacheSnapshot": "

Creates a copy of an existing serverless cache’s snapshot. Available for Redis only.

", "CopySnapshot": "

Makes a copy of an existing snapshot.

This operation is valid for Redis only.

Users or groups that have permissions to use the CopySnapshot operation can create their own Amazon S3 buckets and copy snapshots to it. To control access to your snapshots, use an IAM policy to control who has the ability to use the CopySnapshot operation. For more information about using IAM to control the use of ElastiCache operations, see Exporting Snapshots and Authentication & Access Control.

You could receive the following error messages.

Error Messages

  • Error Message: The S3 bucket %s is outside of the region.

    Solution: Create an Amazon S3 bucket in the same region as your snapshot. For more information, see Step 1: Create an Amazon S3 Bucket in the ElastiCache User Guide.

  • Error Message: The S3 bucket %s does not exist.

    Solution: Create an Amazon S3 bucket in the same region as your snapshot. For more information, see Step 1: Create an Amazon S3 Bucket in the ElastiCache User Guide.

  • Error Message: The S3 bucket %s is not owned by the authenticated user.

    Solution: Create an Amazon S3 bucket in the same region as your snapshot. For more information, see Step 1: Create an Amazon S3 Bucket in the ElastiCache User Guide.

  • Error Message: The authenticated user does not have sufficient permissions to perform the desired activity.

    Solution: Contact your system administrator to get the needed permissions.

  • Error Message: The S3 bucket %s already contains an object with key %s.

    Solution: Give the TargetSnapshotName a new and unique value. If exporting a snapshot, you could alternatively create a new Amazon S3 bucket and use this same value for TargetSnapshotName.

  • Error Message: ElastiCache has not been granted READ permissions %s on the S3 Bucket.

    Solution: Add List and Read permissions on the bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the ElastiCache User Guide.

  • Error Message: ElastiCache has not been granted WRITE permissions %s on the S3 Bucket.

    Solution: Add Upload/Delete permissions on the bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the ElastiCache User Guide.

  • Error Message: ElastiCache has not been granted READ_ACP permissions %s on the S3 Bucket.

    Solution: Add View Permissions on the bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the ElastiCache User Guide.

", "CreateCacheCluster": "

Creates a cluster. All nodes in the cluster run the same protocol-compliant cache engine software, either Memcached or Redis.

This operation is not supported for Redis (cluster mode enabled) clusters.

", "CreateCacheParameterGroup": "

Creates a new Amazon ElastiCache cache parameter group. An ElastiCache cache parameter group is a collection of parameters and their values that are applied to all of the nodes in any cluster or replication group using the CacheParameterGroup.

A newly created CacheParameterGroup is an exact duplicate of the default parameter group for the CacheParameterGroupFamily. To customize the newly created CacheParameterGroup you can change the values of specific parameters. For more information, see:

", @@ -14,6 +15,8 @@ "CreateCacheSubnetGroup": "

Creates a new cache subnet group.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

", "CreateGlobalReplicationGroup": "

Global Datastore for Redis offers fully managed, fast, reliable and secure cross-region replication. Using Global Datastore for Redis, you can create cross-region read replica clusters for ElastiCache for Redis to enable low-latency reads and disaster recovery across regions. For more information, see Replication Across Regions Using Global Datastore.

  • The GlobalReplicationGroupIdSuffix is the name of the Global datastore.

  • The PrimaryReplicationGroupId represents the name of the primary cluster that accepts writes and will replicate updates to the secondary cluster.

", "CreateReplicationGroup": "

Creates a Redis (cluster mode disabled) or a Redis (cluster mode enabled) replication group.

This API can be used to create a standalone regional replication group or a secondary replication group associated with a Global datastore.

A Redis (cluster mode disabled) replication group is a collection of clusters, where one of the clusters is a read/write primary and the others are read-only replicas. Writes to the primary are asynchronously propagated to the replicas.

A Redis cluster-mode enabled cluster is comprised of from 1 to 90 shards (API/CLI: node groups). Each shard has a primary node and up to 5 read-only replica nodes. The configuration can range from 90 shards and 0 replicas to 15 shards and 5 replicas, which is the maximum number or replicas allowed.

The node or shard limit can be increased to a maximum of 500 per cluster if the Redis engine version is 5.0.6 or higher. For example, you can choose to configure a 500 node cluster that ranges between 83 shards (one primary and 5 replicas per shard) and 500 shards (single primary and no replicas). Make sure there are enough available IP addresses to accommodate the increase. Common pitfalls include the subnets in the subnet group have too small a CIDR range or the subnets are shared and heavily used by other clusters. For more information, see Creating a Subnet Group. For versions below 5.0.6, the limit is 250 per cluster.

To request a limit increase, see Amazon Service Limits and choose the limit type Nodes per cluster per instance type.

When a Redis (cluster mode disabled) replication group has been successfully created, you can add one or more read replicas to it, up to a total of 5 read replicas. If you need to increase or decrease the number of node groups (console: shards), you can avail yourself of ElastiCache for Redis' scaling. For more information, see Scaling ElastiCache for Redis Clusters in the ElastiCache User Guide.

This operation is valid for Redis only.

", + "CreateServerlessCache": "

Creates a serverless cache.

", + "CreateServerlessCacheSnapshot": "

This API creates a copy of an entire ServerlessCache at a specific moment in time. Available for Redis only.

", "CreateSnapshot": "

Creates a copy of an entire cluster or replication group at a specific moment in time.

This operation is valid for Redis only.

", "CreateUser": "

For Redis engine version 6.0 onwards: Creates a Redis user. For more information, see Using Role Based Access Control (RBAC).

", "CreateUserGroup": "

For Redis engine version 6.0 onwards: Creates a Redis user group. For more information, see Using Role Based Access Control (RBAC)

", @@ -25,6 +28,8 @@ "DeleteCacheSubnetGroup": "

Deletes a cache subnet group.

You cannot delete a default cache subnet group or one that is associated with any clusters.

", "DeleteGlobalReplicationGroup": "

Deleting a Global datastore is a two-step process:

  • First, you must DisassociateGlobalReplicationGroup to remove the secondary clusters in the Global datastore.

  • Once the Global datastore contains only the primary cluster, you can use the DeleteGlobalReplicationGroup API to delete the Global datastore while retainining the primary cluster using RetainPrimaryReplicationGroup=true.

Since the Global Datastore has only a primary cluster, you can delete the Global Datastore while retaining the primary by setting RetainPrimaryReplicationGroup=true. The primary cluster is never deleted when deleting a Global Datastore. It can only be deleted when it no longer is associated with any Global Datastore.

When you receive a successful response from this operation, Amazon ElastiCache immediately begins deleting the selected resources; you cannot cancel or revert this operation.

", "DeleteReplicationGroup": "

Deletes an existing replication group. By default, this operation deletes the entire replication group, including the primary/primaries and all of the read replicas. If the replication group has only one primary, you can optionally delete only the read replicas, while retaining the primary by setting RetainPrimaryCluster=true.

When you receive a successful response from this operation, Amazon ElastiCache immediately begins deleting the selected resources; you cannot cancel or revert this operation.

This operation is valid for Redis only.

", + "DeleteServerlessCache": "

Deletes a specified existing serverless cache.

", + "DeleteServerlessCacheSnapshot": "

Deletes an existing serverless cache snapshot. Available for Redis only.

", "DeleteSnapshot": "

Deletes an existing snapshot. When you receive a successful response from this operation, ElastiCache immediately begins deleting the snapshot; you cannot cancel or revert this operation.

This operation is valid for Redis only.

", "DeleteUser": "

For Redis engine version 6.0 onwards: Deletes a user. The user will be removed from all user groups and in turn removed from all replication groups. For more information, see Using Role Based Access Control (RBAC).

", "DeleteUserGroup": "

For Redis engine version 6.0 onwards: Deletes a user group. The user group must first be disassociated from the replication group before it can be deleted. For more information, see Using Role Based Access Control (RBAC).

", @@ -40,12 +45,15 @@ "DescribeReplicationGroups": "

Returns information about a particular replication group. If no identifier is specified, DescribeReplicationGroups returns information about all replication groups.

This operation is valid for Redis only.

", "DescribeReservedCacheNodes": "

Returns information about reserved cache nodes for this account, or about a specified reserved cache node.

", "DescribeReservedCacheNodesOfferings": "

Lists available reserved cache node offerings.

", + "DescribeServerlessCacheSnapshots": "

Returns information about serverless cache snapshots. By default, this API lists all of the customer’s serverless cache snapshots. It can also describe a single serverless cache snapshot, or the snapshots associated with a particular serverless cache. Available for Redis only.

", + "DescribeServerlessCaches": "

Returns information about a specific serverless cache. If no identifier is specified, then the API returns information on all the serverless caches belonging to this Amazon Web Services account.

", "DescribeServiceUpdates": "

Returns details of the service updates

", "DescribeSnapshots": "

Returns information about cluster or replication group snapshots. By default, DescribeSnapshots lists all of your snapshots; it can optionally describe a single snapshot, or just the snapshots associated with a particular cache cluster.

This operation is valid for Redis only.

", "DescribeUpdateActions": "

Returns details of the update actions

", "DescribeUserGroups": "

Returns a list of user groups.

", "DescribeUsers": "

Returns a list of users.

", "DisassociateGlobalReplicationGroup": "

Remove a secondary cluster from the Global datastore using the Global datastore name. The secondary cluster will no longer receive updates from the primary cluster, but will remain as a standalone cluster in that Amazon region.

", + "ExportServerlessCacheSnapshot": "

Provides the functionality to export the serverless cache snapshot data to Amazon S3. Available for Redis only.

", "FailoverGlobalReplicationGroup": "

Used to failover the primary region to a secondary region. The secondary region will become primary, and all other clusters will become secondary.

", "IncreaseNodeGroupsInGlobalReplicationGroup": "

Increase the number of node groups in the Global datastore

", "IncreaseReplicaCount": "

Dynamically increases the number of replicas in a Redis (cluster mode disabled) replication group or the number of replica nodes in one or more node groups (shards) of a Redis (cluster mode enabled) replication group. This operation is performed with no cluster down time.

", @@ -55,8 +63,9 @@ "ModifyCacheParameterGroup": "

Modifies the parameters of a cache parameter group. You can modify up to 20 parameters in a single request by submitting a list parameter name and value pairs.

", "ModifyCacheSubnetGroup": "

Modifies an existing cache subnet group.

", "ModifyGlobalReplicationGroup": "

Modifies the settings for a Global datastore.

", - "ModifyReplicationGroup": "

Modifies the settings for a replication group.

This operation is valid for Redis only.

", + "ModifyReplicationGroup": "

Modifies the settings for a replication group. This is limited to Redis 7 and newer.

This operation is valid for Redis only.

", "ModifyReplicationGroupShardConfiguration": "

Modifies a replication group's shards (node groups) by allowing you to add shards, remove shards, or rebalance the keyspaces among existing shards.

", + "ModifyServerlessCache": "

This API modifies the attributes of a serverless cache.

", "ModifyUser": "

Changes user password(s) and/or access string.

", "ModifyUserGroup": "

Changes the list of users that belong to the user group.

", "PurchaseReservedCacheNodesOffering": "

Allows you to purchase a reserved cache node offering. Reserved nodes are not eligible for cancellation and are non-refundable. For more information, see Managing Costs with Reserved Nodes for Redis or Managing Costs with Reserved Nodes for Memcached.

", @@ -261,6 +270,7 @@ "ModifyReplicationGroupMessage$AutoMinorVersionUpgrade": "

 If you are running Redis engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next auto minor version upgrade campaign. This parameter is disabled for previous versions. 

", "ModifyReplicationGroupMessage$RemoveUserGroups": "

Removes the user group associated with this replication group.

", "ModifyReplicationGroupMessage$TransitEncryptionEnabled": "

A flag that enables in-transit encryption when set to true. If you are enabling in-transit encryption for an existing cluster, you must also set TransitEncryptionMode to preferred.

", + "ModifyServerlessCacheRequest$RemoveUserGroup": "

The identifier of the UserGroup to be removed from association with the Redis serverless cache. Available for Redis only. Default is NULL.

", "ModifyUserMessage$NoPasswordRequired": "

Indicates no password is required for the user.

", "PendingModifiedValues$TransitEncryptionEnabled": "

A flag that enables in-transit encryption when set to true.

", "ReplicationGroup$ClusterEnabled": "

A flag indicating whether or not this replication group is cluster enabled; i.e., whether its data can be partitioned across multiple shards (API/CLI: node groups).

Valid values: true | false

", @@ -328,7 +338,7 @@ } }, "CacheNode": { - "base": "

Represents an individual cache node within a cluster. Each cache node runs its own instance of the cluster's protocol-compliant caching software - either Memcached or Redis.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "base": "

Represents an individual cache node within a cluster. Each cache node runs its own instance of the cluster's protocol-compliant caching software - either Memcached or Redis.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "refs": { "CacheNodeList$member": null } @@ -534,6 +544,14 @@ "refs": { } }, + "CacheUsageLimits": { + "base": "

The usage limits for storage and ElastiCache Processing Units for the cache.

", + "refs": { + "CreateServerlessCacheRequest$CacheUsageLimits": "

Sets the cache usage limits for storage and ElastiCache Processing Units for the cache.

", + "ModifyServerlessCacheRequest$CacheUsageLimits": "

Modify the cache usage limit for the serverless cache.

", + "ServerlessCache$CacheUsageLimits": "

The cache usage limit for the serverless cache.

" + } + }, "ChangeType": { "base": null, "refs": { @@ -583,6 +601,16 @@ "ReplicaConfigurationList$member": null } }, + "CopyServerlessCacheSnapshotRequest": { + "base": null, + "refs": { + } + }, + "CopyServerlessCacheSnapshotResponse": { + "base": null, + "refs": { + } + }, "CopySnapshotMessage": { "base": "

Represents the input of a CopySnapshotMessage operation.

", "refs": { @@ -653,6 +681,26 @@ "refs": { } }, + "CreateServerlessCacheRequest": { + "base": null, + "refs": { + } + }, + "CreateServerlessCacheResponse": { + "base": null, + "refs": { + } + }, + "CreateServerlessCacheSnapshotRequest": { + "base": null, + "refs": { + } + }, + "CreateServerlessCacheSnapshotResponse": { + "base": null, + "refs": { + } + }, "CreateSnapshotMessage": { "base": "

Represents the input of a CreateSnapshot operation.

", "refs": { @@ -686,6 +734,18 @@ "TestMigrationMessage$CustomerNodeEndpointList": "

List of endpoints from which data should be migrated. List should have only one element.

" } }, + "DataStorage": { + "base": "

The data storage limit.

", + "refs": { + "CacheUsageLimits$DataStorage": "

The maximum data storage limit in the cache, expressed in Gigabytes.

" + } + }, + "DataStorageUnit": { + "base": null, + "refs": { + "DataStorage$Unit": "

The unit that the storage is measured in, in GB.

" + } + }, "DataTieringStatus": { "base": null, "refs": { @@ -768,6 +828,26 @@ "refs": { } }, + "DeleteServerlessCacheRequest": { + "base": null, + "refs": { + } + }, + "DeleteServerlessCacheResponse": { + "base": null, + "refs": { + } + }, + "DeleteServerlessCacheSnapshotRequest": { + "base": null, + "refs": { + } + }, + "DeleteServerlessCacheSnapshotResponse": { + "base": null, + "refs": { + } + }, "DeleteSnapshotMessage": { "base": "

Represents the input of a DeleteSnapshot operation.

", "refs": { @@ -858,6 +938,26 @@ "refs": { } }, + "DescribeServerlessCacheSnapshotsRequest": { + "base": null, + "refs": { + } + }, + "DescribeServerlessCacheSnapshotsResponse": { + "base": null, + "refs": { + } + }, + "DescribeServerlessCachesRequest": { + "base": null, + "refs": { + } + }, + "DescribeServerlessCachesResponse": { + "base": null, + "refs": { + } + }, "DescribeServiceUpdatesMessage": { "base": null, "refs": { @@ -952,6 +1052,12 @@ "CacheSecurityGroup$EC2SecurityGroups": "

A list of Amazon EC2 security groups that are associated with this cache security group.

" } }, + "ECPUPerSecond": { + "base": "

The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.

", + "refs": { + "CacheUsageLimits$ECPUPerSecond": null + } + }, "Endpoint": { "base": "

Represents the information required for client programs to connect to a cache node.

", "refs": { @@ -960,7 +1066,9 @@ "NodeGroup$PrimaryEndpoint": "

The endpoint of the primary node in this node group (shard).

", "NodeGroup$ReaderEndpoint": "

The endpoint of the replica nodes in this node group (shard).

", "NodeGroupMember$ReadEndpoint": "

The information required for client programs to connect to a node for read operations. The read endpoint is only applicable on Redis (cluster mode disabled) clusters.

", - "ReplicationGroup$ConfigurationEndpoint": "

The configuration endpoint for this replication group. Use the configuration endpoint to connect to this replication group.

" + "ReplicationGroup$ConfigurationEndpoint": "

The configuration endpoint for this replication group. Use the configuration endpoint to connect to this replication group.

", + "ServerlessCache$Endpoint": null, + "ServerlessCache$ReaderEndpoint": null } }, "EngineDefaults": { @@ -996,6 +1104,16 @@ "refs": { } }, + "ExportServerlessCacheSnapshotRequest": { + "base": null, + "refs": { + } + }, + "ExportServerlessCacheSnapshotResponse": { + "base": null, + "refs": { + } + }, "FailoverGlobalReplicationGroupMessage": { "base": null, "refs": { @@ -1161,7 +1279,9 @@ "CreateReplicationGroupMessage$ReplicasPerNodeGroup": "

An optional parameter that specifies the number of replica nodes in each node group (shard). Valid values are 0 to 5.

", "CreateReplicationGroupMessage$Port": "

The port number on which each member of the replication group accepts connections.

", "CreateReplicationGroupMessage$SnapshotRetentionLimit": "

The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

Default: 0 (i.e., automatic backups are disabled for this cluster).

", + "CreateServerlessCacheRequest$SnapshotRetentionLimit": "

The number of snapshots that will be retained for the serverless cache that is being created. As new snapshots beyond this limit are added, the oldest snapshots will be deleted on a rolling basis. Available for Redis only.

", "CustomerNodeEndpoint$Port": "

The port of the node endpoint

", + "DataStorage$Maximum": "

The upper limit for data storage the cache is set to use.

", "DecreaseReplicaCountMessage$NewReplicaCount": "

The number of read replica nodes you want at the completion of this operation. For Redis (cluster mode disabled) replication groups, this is the number of replica nodes in the replication group. For Redis (cluster mode enabled) replication groups, this is the number of replica nodes in each of the replication group's node groups.

The minimum number of replicas in a shard or replication group is:

  • Redis (cluster mode disabled)

    • If Multi-AZ is enabled: 1

    • If Multi-AZ is not enabled: 0

  • Redis (cluster mode enabled): 0 (though you will not be able to failover to a replica if your primary node fails)

", "DescribeCacheClustersMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: minimum 20; maximum 100.

", "DescribeCacheEngineVersionsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: minimum 20; maximum 100.

", @@ -1176,19 +1296,24 @@ "DescribeReplicationGroupsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: minimum 20; maximum 100.

", "DescribeReservedCacheNodesMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: minimum 20; maximum 100.

", "DescribeReservedCacheNodesOfferingsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 100

Constraints: minimum 20; maximum 100.

", + "DescribeServerlessCacheSnapshotsRequest$MaxResults": "

The maximum number of records to include in the response. If more records exist than the specified max-results value, a market is included in the response so that remaining results can be retrieved. Available for Redis only.The default is 50. The Validation Constraints are a maximum of 50.

", + "DescribeServerlessCachesRequest$MaxResults": "

The maximum number of records in the response. If more records exist than the specified max-records value, the next token is included in the response so that remaining results can be retrieved. The default is 50.

", "DescribeServiceUpdatesMessage$MaxRecords": "

The maximum number of records to include in the response

", "DescribeSnapshotsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 50

Constraints: minimum 20; maximum 50.

", "DescribeUpdateActionsMessage$MaxRecords": "

The maximum number of records to include in the response

", "DescribeUserGroupsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

", "DescribeUsersMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

", + "ECPUPerSecond$Maximum": "

The configuration for the maximum number of ECPUs the cache can consume per second.

", "IncreaseReplicaCountMessage$NewReplicaCount": "

The number of read replica nodes you want at the completion of this operation. For Redis (cluster mode disabled) replication groups, this is the number of replica nodes in the replication group. For Redis (cluster mode enabled) replication groups, this is the number of replica nodes in each of the replication group's node groups.

", "ModifyCacheClusterMessage$NumCacheNodes": "

The number of cache nodes that the cluster should have. If the value for NumCacheNodes is greater than the sum of the number of current cache nodes and the number of cache nodes pending creation (which may be zero), more nodes are added. If the value is less than the number of existing cache nodes, nodes are removed. If the value is equal to the number of current cache nodes, any pending add or remove requests are canceled.

If you are removing cache nodes, you must use the CacheNodeIdsToRemove parameter to provide the IDs of the specific cache nodes to remove.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.

Adding or removing Memcached cache nodes can be applied immediately or as a pending operation (see ApplyImmediately).

A pending operation to modify the number of cache nodes in a cluster during its maintenance window, whether by adding or removing nodes in accordance with the scale out architecture, is not queued. The customer's latest request to add or remove nodes to the cluster overrides any previous pending operations to modify the number of cache nodes in the cluster. For example, a request to remove 2 nodes would override a previous pending operation to remove 3 nodes. Similarly, a request to add 2 nodes would override a previous pending operation to remove 3 nodes and vice versa. As Memcached cache nodes may now be provisioned in different Availability Zones with flexible cache node placement, a request to add nodes does not automatically override a previous pending operation to add nodes. The customer can modify the previous pending operation to add more nodes or explicitly cancel the pending request and retry the new request. To cancel pending operations to modify the number of cache nodes in a cluster, use the ModifyCacheCluster request and set NumCacheNodes equal to the number of cache nodes currently in the cluster.

", "ModifyCacheClusterMessage$SnapshotRetentionLimit": "

The number of days for which ElastiCache retains automatic cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

", "ModifyReplicationGroupMessage$SnapshotRetentionLimit": "

The number of days for which ElastiCache retains automatic node group (shard) snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

Important If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

", + "ModifyServerlessCacheRequest$SnapshotRetentionLimit": "

The number of days for which Elasticache retains automatic snapshots before deleting them. Available for Redis only. Default = NULL, i.e. the existing snapshot-retention-limit will not be removed or modified. The maximum value allowed is 35 days.

", "NodeGroupConfiguration$ReplicaCount": "

The number of read replica nodes in this node group (shard).

", "PendingModifiedValues$NumCacheNodes": "

The new number of cache nodes for the cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.

", "PurchaseReservedCacheNodesOfferingMessage$CacheNodeCount": "

The number of cache node instances to reserve.

Default: 1

", "ReplicationGroup$SnapshotRetentionLimit": "

The number of days for which ElastiCache retains automatic cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

", + "ServerlessCache$SnapshotRetentionLimit": "

The current setting for the number of serverless cache snapshots the system will retain. Available for Redis only.

", "Snapshot$NumCacheNodes": "

The number of cache nodes in the source cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.

", "Snapshot$Port": "

The port number used by each cache nodes in the source cluster.

", "Snapshot$SnapshotRetentionLimit": "

For an automatic snapshot, the number of days for which ElastiCache retains the snapshot before deleting it.

For manual snapshots, this field reflects the SnapshotRetentionLimit for the source cluster when the snapshot was created. This field is otherwise ignored: Manual snapshots do not expire, and can only be deleted using the DeleteSnapshot operation.

Important If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

", @@ -1215,6 +1340,11 @@ "refs": { } }, + "InvalidCredentialsException": { + "base": "

You must enter valid credentials.

", + "refs": { + } + }, "InvalidGlobalReplicationGroupStateFault": { "base": "

The Global datastore is not available or in primary-only state.

", "refs": { @@ -1240,6 +1370,16 @@ "refs": { } }, + "InvalidServerlessCacheSnapshotStateFault": { + "base": "

The state of the serverless cache snapshot was not received. Available for Redis only.

", + "refs": { + } + }, + "InvalidServerlessCacheStateFault": { + "base": "

The account for these credentials is not currently active.

", + "refs": { + } + }, "InvalidSnapshotStateFault": { "base": "

The current state of the snapshot does not allow the requested operation to occur.

", "refs": { @@ -1403,6 +1543,16 @@ "refs": { } }, + "ModifyServerlessCacheRequest": { + "base": null, + "refs": { + } + }, + "ModifyServerlessCacheResponse": { + "base": null, + "refs": { + } + }, "ModifyUserGroupMessage": { "base": null, "refs": { @@ -1905,8 +2055,11 @@ "refs": { "CreateCacheClusterMessage$SecurityGroupIds": "

One or more VPC security groups associated with the cluster.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

", "CreateReplicationGroupMessage$SecurityGroupIds": "

One or more Amazon VPC security groups associated with this replication group.

Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud (Amazon VPC).

", + "CreateServerlessCacheRequest$SecurityGroupIds": "

A list of the one or more VPC security groups to be associated with the serverless cache. The security group will authorize traffic access for the VPC end-point (private-link). If no other information is given this will be the VPC’s Default Security Group that is associated with the cluster VPC end-point.

", "ModifyCacheClusterMessage$SecurityGroupIds": "

Specifies the VPC Security Groups associated with the cluster.

This parameter can be used only with clusters that are created in an Amazon Virtual Private Cloud (Amazon VPC).

", - "ModifyReplicationGroupMessage$SecurityGroupIds": "

Specifies the VPC Security Groups associated with the clusters in the replication group.

This parameter can be used only with replication group containing clusters running in an Amazon Virtual Private Cloud (Amazon VPC).

" + "ModifyReplicationGroupMessage$SecurityGroupIds": "

Specifies the VPC Security Groups associated with the clusters in the replication group.

This parameter can be used only with replication group containing clusters running in an Amazon Virtual Private Cloud (Amazon VPC).

", + "ModifyServerlessCacheRequest$SecurityGroupIds": "

The new list of VPC security groups to be associated with the serverless cache. Populating this list means the current VPC security groups will be removed. This security group is used to authorize traffic access for the VPC end-point (private-link). Default = NULL - the existing list of VPC security groups is not removed.

", + "ServerlessCache$SecurityGroupIds": "

The IDs of the EC2 security groups associated with the serverless cache.

" } }, "SecurityGroupMembership": { @@ -1921,6 +2074,73 @@ "CacheCluster$SecurityGroups": "

A list of VPC Security Groups associated with the cluster.

" } }, + "ServerlessCache": { + "base": "

The resource representing a serverless cache.

", + "refs": { + "CreateServerlessCacheResponse$ServerlessCache": "

The response for the attempt to create the serverless cache.

", + "DeleteServerlessCacheResponse$ServerlessCache": "

Provides the details of the specified serverless cache that is about to be deleted.

", + "ModifyServerlessCacheResponse$ServerlessCache": "

The response for the attempt to modify the serverless cache.

", + "ServerlessCacheList$member": null + } + }, + "ServerlessCacheAlreadyExistsFault": { + "base": "

A serverless cache with this name already exists.

", + "refs": { + } + }, + "ServerlessCacheConfiguration": { + "base": "

The configuration settings for a specific serverless cache.

", + "refs": { + "ServerlessCacheSnapshot$ServerlessCacheConfiguration": "

The configuration of the serverless cache, at the time the snapshot was taken. Available for Redis only.

" + } + }, + "ServerlessCacheList": { + "base": null, + "refs": { + "DescribeServerlessCachesResponse$ServerlessCaches": "

The serverless caches associated with a given description request.

" + } + }, + "ServerlessCacheNotFoundFault": { + "base": "

The serverless cache was not found or does not exist.

", + "refs": { + } + }, + "ServerlessCacheQuotaForCustomerExceededFault": { + "base": "

The number of serverless caches exceeds the customer quota.

", + "refs": { + } + }, + "ServerlessCacheSnapshot": { + "base": "

The resource representing a serverless cache snapshot. Available for Redis only.

", + "refs": { + "CopyServerlessCacheSnapshotResponse$ServerlessCacheSnapshot": "

The response for the attempt to copy the serverless cache snapshot. Available for Redis only.

", + "CreateServerlessCacheSnapshotResponse$ServerlessCacheSnapshot": "

The state of a serverless cache snapshot at a specific point in time, to the millisecond. Available for Redis only.

", + "DeleteServerlessCacheSnapshotResponse$ServerlessCacheSnapshot": "

The snapshot to be deleted. Available for Redis only.

", + "ExportServerlessCacheSnapshotResponse$ServerlessCacheSnapshot": "

The state of a serverless cache at a specific point in time, to the millisecond. Available for Redis only.

", + "ServerlessCacheSnapshotList$member": null + } + }, + "ServerlessCacheSnapshotAlreadyExistsFault": { + "base": "

A serverless cache snapshot with this name already exists. Available for Redis only.

", + "refs": { + } + }, + "ServerlessCacheSnapshotList": { + "base": null, + "refs": { + "DescribeServerlessCacheSnapshotsResponse$ServerlessCacheSnapshots": "

The serverless caches snapshots associated with a given description request. Available for Redis only.

" + } + }, + "ServerlessCacheSnapshotNotFoundFault": { + "base": "

This serverless cache snapshot could not be found or does not exist. Available for Redis only.

", + "refs": { + } + }, + "ServerlessCacheSnapshotQuotaExceededFault": { + "base": "

The number of serverless cache snapshots exceeds the customer snapshot quota. Available for Redis only.

", + "refs": { + } + }, "ServiceLinkedRoleNotFoundFault": { "base": "

The specified service linked role (SLR) was not found.

", "refs": { @@ -2007,7 +2227,8 @@ "base": null, "refs": { "CreateCacheClusterMessage$SnapshotArns": "

A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The snapshot file is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

This parameter is only valid if the Engine parameter is redis.

Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

", - "CreateReplicationGroupMessage$SnapshotArns": "

A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new replication group. The Amazon S3 object name in the ARN cannot contain any commas. The new replication group will have the number of node groups (console: shards) specified by the parameter NumNodeGroups or the number of node groups configured by NodeGroupConfiguration regardless of the number of ARNs specified here.

Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

" + "CreateReplicationGroupMessage$SnapshotArns": "

A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new replication group. The Amazon S3 object name in the ARN cannot contain any commas. The new replication group will have the number of node groups (console: shards) specified by the parameter NumNodeGroups or the number of node groups configured by NodeGroupConfiguration regardless of the number of ARNs specified here.

Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

", + "CreateServerlessCacheRequest$SnapshotArnsToRestore": "

The ARN(s) of the snapshot that the new serverless cache will be created from. Available for Redis only.

" } }, "SnapshotFeatureNotSupportedFault": { @@ -2061,7 +2282,7 @@ "BatchStopUpdateActionMessage$ServiceUpdateName": "

The unique ID of the service update

", "CacheCluster$CacheClusterId": "

The user-supplied identifier of the cluster. This identifier is a unique key that identifies a cluster.

", "CacheCluster$ClientDownloadLandingPage": "

The URL of the web page where you can download the latest ElastiCache client library.

", - "CacheCluster$CacheNodeType": "

The name of the compute and memory capacity node type for the cluster.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "CacheCluster$CacheNodeType": "

The name of the compute and memory capacity node type for the cluster.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "CacheCluster$Engine": "

The name of the cache engine (memcached or redis) to be used for this cluster.

", "CacheCluster$EngineVersion": "

The version of the cache engine that is used in this cluster.

", "CacheCluster$CacheClusterStatus": "

The current state of this cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cluster nodes, restore-failed, or snapshotting.

", @@ -2121,6 +2342,9 @@ "CloudWatchLogsDestinationDetails$LogGroup": "

The name of the CloudWatch Logs log group.

", "ClusterIdList$member": null, "CompleteMigrationMessage$ReplicationGroupId": "

The ID of the replication group to which data is being migrated.

", + "CopyServerlessCacheSnapshotRequest$SourceServerlessCacheSnapshotName": "

The identifier of the existing serverless cache’s snapshot to be copied. Available for Redis only.

", + "CopyServerlessCacheSnapshotRequest$TargetServerlessCacheSnapshotName": "

The identifier for the snapshot to be created. Available for Redis only.

", + "CopyServerlessCacheSnapshotRequest$KmsKeyId": "

The identifier of the KMS key used to encrypt the target snapshot. Available for Redis only.

", "CopySnapshotMessage$SourceSnapshotName": "

The name of an existing snapshot from which to make a copy.

", "CopySnapshotMessage$TargetSnapshotName": "

A name for the snapshot copy. ElastiCache does not permit overwriting a snapshot, therefore this name must be unique within its context - ElastiCache or an Amazon S3 bucket if exporting.

", "CopySnapshotMessage$TargetBucket": "

The Amazon S3 bucket to which the snapshot is exported. This parameter is used only when exporting a snapshot for external access.

When using this parameter to export a snapshot, be sure Amazon ElastiCache has the needed permissions to this S3 bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the Amazon ElastiCache User Guide.

For more information, see Exporting a Snapshot in the Amazon ElastiCache User Guide.

", @@ -2128,7 +2352,7 @@ "CreateCacheClusterMessage$CacheClusterId": "

The node group (shard) identifier. This parameter is stored as a lowercase string.

Constraints:

  • A name must contain from 1 to 50 alphanumeric characters or hyphens.

  • The first character must be a letter.

  • A name cannot end with a hyphen or contain two consecutive hyphens.

", "CreateCacheClusterMessage$ReplicationGroupId": "

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

If the specified replication group is Multi-AZ enabled and the Availability Zone is not specified, the cluster is created in Availability Zones that provide the best spread of read replicas across Availability Zones.

This parameter is only valid if the Engine parameter is redis.

", "CreateCacheClusterMessage$PreferredAvailabilityZone": "

The EC2 Availability Zone in which the cluster is created.

All nodes belonging to this cluster are placed in the preferred Availability Zone. If you want to create your nodes across multiple Availability Zones, use PreferredAvailabilityZones.

Default: System chosen Availability Zone.

", - "CreateCacheClusterMessage$CacheNodeType": "

The compute and memory capacity of the nodes in the node group (shard).

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "CreateCacheClusterMessage$CacheNodeType": "

The compute and memory capacity of the nodes in the node group (shard).

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "CreateCacheClusterMessage$Engine": "

The name of the cache engine to be used for this cluster.

Valid values for this parameter are: memcached | redis

", "CreateCacheClusterMessage$EngineVersion": "

The version number of the cache engine to be used for this cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.

", "CreateCacheClusterMessage$CacheParameterGroupName": "

The name of the parameter group to associate with this cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes' when creating a cluster.

", @@ -2153,7 +2377,7 @@ "CreateReplicationGroupMessage$ReplicationGroupDescription": "

A user-created description for the replication group.

", "CreateReplicationGroupMessage$GlobalReplicationGroupId": "

The name of the Global datastore

", "CreateReplicationGroupMessage$PrimaryClusterId": "

The identifier of the cluster that serves as the primary for this replication group. This cluster must already exist and have a status of available.

This parameter is not required if NumCacheClusters, NumNodeGroups, or ReplicasPerNodeGroup is specified.

", - "CreateReplicationGroupMessage$CacheNodeType": "

The compute and memory capacity of the nodes in the node group (shard).

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "CreateReplicationGroupMessage$CacheNodeType": "

The compute and memory capacity of the nodes in the node group (shard).

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "CreateReplicationGroupMessage$Engine": "

The name of the cache engine to be used for the clusters in this replication group. The value must be set to Redis.

", "CreateReplicationGroupMessage$EngineVersion": "

The version number of the cache engine to be used for the clusters in this replication group. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version) in the ElastiCache User Guide, but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.

", "CreateReplicationGroupMessage$CacheParameterGroupName": "

The name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used.

If you are running Redis version 3.2.4 or later, only one node group (shard), and want to use a default parameter group, we recommend that you specify the parameter group by name.

  • To create a Redis (cluster mode disabled) replication group, use CacheParameterGroupName=default.redis3.2.

  • To create a Redis (cluster mode enabled) replication group, use CacheParameterGroupName=default.redis3.2.cluster.on.

", @@ -2164,6 +2388,17 @@ "CreateReplicationGroupMessage$SnapshotWindow": "

The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

Example: 05:00-09:00

If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

", "CreateReplicationGroupMessage$AuthToken": "

Reserved parameter. The password used to access a password protected server.

AuthToken can be specified only on replication groups where TransitEncryptionEnabled is true.

For HIPAA compliance, you must specify TransitEncryptionEnabled as true, an AuthToken, and a CacheSubnetGroup.

Password constraints:

  • Must be only printable ASCII characters.

  • Must be at least 16 characters and no more than 128 characters in length.

  • The only permitted printable special characters are !, &, #, $, ^, <, >, and -. Other printable special characters cannot be used in the AUTH token.

For more information, see AUTH password at http://redis.io/commands/AUTH.

", "CreateReplicationGroupMessage$KmsKeyId": "

The ID of the KMS key used to encrypt the disk in the cluster.

", + "CreateReplicationGroupMessage$ServerlessCacheSnapshotName": "

The name of the snapshot used to create a replication group. Available for Redis only.

", + "CreateServerlessCacheRequest$ServerlessCacheName": "

User-provided identifier for the serverless cache. This parameter is stored as a lowercase string.

", + "CreateServerlessCacheRequest$Description": "

User-provided description for the serverless cache. The default is NULL, i.e. if no description is provided then an empty string will be returned. The maximum length is 255 characters.

", + "CreateServerlessCacheRequest$Engine": "

The name of the cache engine to be used for creating the serverless cache.

", + "CreateServerlessCacheRequest$MajorEngineVersion": "

The version of the cache engine that will be used to create the serverless cache.

", + "CreateServerlessCacheRequest$KmsKeyId": "

ARN of the customer managed key for encrypting the data at rest. If no KMS key is provided, a default service key is used.

", + "CreateServerlessCacheRequest$UserGroupId": "

The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. Default is NULL.

", + "CreateServerlessCacheRequest$DailySnapshotTime": "

The daily time that snapshots will be created from the new serverless cache. By default this number is populated with 0, i.e. no snapshots will be created on an automatic daily basis. Available for Redis only.

", + "CreateServerlessCacheSnapshotRequest$ServerlessCacheSnapshotName": "

The name for the snapshot being created. Must be unique for the customer account. Available for Redis only. Must be between 1 and 255 characters.

", + "CreateServerlessCacheSnapshotRequest$ServerlessCacheName": "

The name of an existing serverless cache. The snapshot is created from this cache. Available for Redis only.

", + "CreateServerlessCacheSnapshotRequest$KmsKeyId": "

The ID of the KMS key used to encrypt the snapshot. Available for Redis only. Default: NULL

", "CreateSnapshotMessage$ReplicationGroupId": "

The identifier of an existing replication group. The snapshot is created from this replication group.

", "CreateSnapshotMessage$CacheClusterId": "

The identifier of an existing cluster. The snapshot is created from this cluster.

", "CreateSnapshotMessage$SnapshotName": "

A name for the snapshot being created.

", @@ -2180,6 +2415,9 @@ "DeleteGlobalReplicationGroupMessage$GlobalReplicationGroupId": "

The name of the Global datastore

", "DeleteReplicationGroupMessage$ReplicationGroupId": "

The identifier for the cluster to be deleted. This parameter is not case sensitive.

", "DeleteReplicationGroupMessage$FinalSnapshotIdentifier": "

The name of a final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster, rather than one of the replicas; this is to ensure that it captures the freshest data. After the final snapshot is taken, the replication group is immediately deleted.

", + "DeleteServerlessCacheRequest$ServerlessCacheName": "

The identifier of the serverless cache to be deleted.

", + "DeleteServerlessCacheRequest$FinalSnapshotName": "

Name of the final snapshot to be taken before the serverless cache is deleted. Available for Redis only. Default: NULL, i.e. a final snapshot is not taken.

", + "DeleteServerlessCacheSnapshotRequest$ServerlessCacheSnapshotName": "

Idenfitier of the snapshot to be deleted. Available for Redis only.

", "DeleteSnapshotMessage$SnapshotName": "

The name of the snapshot to be deleted.

", "DeleteUserGroupMessage$UserGroupId": "

The ID of the user group.

", "DescribeCacheClustersMessage$CacheClusterId": "

The user-supplied cluster identifier. If this parameter is specified, only information about that specific cluster is returned. This parameter isn't case sensitive.

", @@ -2208,17 +2446,25 @@ "DescribeReplicationGroupsMessage$Marker": "

An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeReservedCacheNodesMessage$ReservedCacheNodeId": "

The reserved cache node identifier filter value. Use this parameter to show only the reservation that matches the specified reservation ID.

", "DescribeReservedCacheNodesMessage$ReservedCacheNodesOfferingId": "

The offering identifier filter value. Use this parameter to show only purchased reservations matching the specified offering identifier.

", - "DescribeReservedCacheNodesMessage$CacheNodeType": "

The cache node type filter value. Use this parameter to show only those reservations matching the specified cache node type.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "DescribeReservedCacheNodesMessage$CacheNodeType": "

The cache node type filter value. Use this parameter to show only those reservations matching the specified cache node type.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "DescribeReservedCacheNodesMessage$Duration": "

The duration filter value, specified in years or seconds. Use this parameter to show only reservations for this duration.

Valid Values: 1 | 3 | 31536000 | 94608000

", "DescribeReservedCacheNodesMessage$ProductDescription": "

The product description filter value. Use this parameter to show only those reservations matching the specified product description.

", "DescribeReservedCacheNodesMessage$OfferingType": "

The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.

Valid values: \"Light Utilization\"|\"Medium Utilization\"|\"Heavy Utilization\"|\"All Upfront\"|\"Partial Upfront\"| \"No Upfront\"

", "DescribeReservedCacheNodesMessage$Marker": "

An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeReservedCacheNodesOfferingsMessage$ReservedCacheNodesOfferingId": "

The offering identifier filter value. Use this parameter to show only the available offering that matches the specified reservation identifier.

Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

", - "DescribeReservedCacheNodesOfferingsMessage$CacheNodeType": "

The cache node type filter value. Use this parameter to show only the available offerings matching the specified cache node type.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "DescribeReservedCacheNodesOfferingsMessage$CacheNodeType": "

The cache node type filter value. Use this parameter to show only the available offerings matching the specified cache node type.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "DescribeReservedCacheNodesOfferingsMessage$Duration": "

Duration filter value, specified in years or seconds. Use this parameter to show only reservations for a given duration.

Valid Values: 1 | 3 | 31536000 | 94608000

", "DescribeReservedCacheNodesOfferingsMessage$ProductDescription": "

The product description filter value. Use this parameter to show only the available offerings matching the specified product description.

", "DescribeReservedCacheNodesOfferingsMessage$OfferingType": "

The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.

Valid Values: \"Light Utilization\"|\"Medium Utilization\"|\"Heavy Utilization\" |\"All Upfront\"|\"Partial Upfront\"| \"No Upfront\"

", "DescribeReservedCacheNodesOfferingsMessage$Marker": "

An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", + "DescribeServerlessCacheSnapshotsRequest$ServerlessCacheName": "

The identifier of serverless cache. If this parameter is specified, only snapshots associated with that specific serverless cache are described. Available for Redis only.

", + "DescribeServerlessCacheSnapshotsRequest$ServerlessCacheSnapshotName": "

The identifier of the serverless cache’s snapshot. If this parameter is specified, only this snapshot is described. Available for Redis only.

", + "DescribeServerlessCacheSnapshotsRequest$SnapshotType": "

The type of snapshot that is being described. Available for Redis only.

", + "DescribeServerlessCacheSnapshotsRequest$NextToken": "

An optional marker returned from a prior request to support pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by max-results. Available for Redis only.

", + "DescribeServerlessCacheSnapshotsResponse$NextToken": "

An optional marker returned from a prior request to support pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by max-results. Available for Redis only.

", + "DescribeServerlessCachesRequest$ServerlessCacheName": "

The identifier for the serverless cache. If this parameter is specified, only information about that specific serverless cache is returned. Default: NULL

", + "DescribeServerlessCachesRequest$NextToken": "

An optional marker returned from a prior request to support pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxResults.

", + "DescribeServerlessCachesResponse$NextToken": "

An optional marker returned from a prior request to support pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxResults.

", "DescribeServiceUpdatesMessage$ServiceUpdateName": "

The unique ID of the service update

", "DescribeServiceUpdatesMessage$Marker": "

An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeSnapshotsListMessage$Marker": "

An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", @@ -2247,6 +2493,8 @@ "Event$SourceIdentifier": "

The identifier for the source of the event. For example, if the event occurred at the cluster level, the identifier would be the name of the cluster.

", "Event$Message": "

The text of the event.

", "EventsMessage$Marker": "

Provides an identifier to allow retrieval of paginated results.

", + "ExportServerlessCacheSnapshotRequest$ServerlessCacheSnapshotName": "

The identifier of the serverless cache snapshot to be exported to S3. Available for Redis only.

", + "ExportServerlessCacheSnapshotRequest$S3BucketName": "

Name of the Amazon S3 bucket to export the snapshot to. The Amazon S3 bucket must also be in same region as the snapshot. Available for Redis only.

", "FailoverGlobalReplicationGroupMessage$GlobalReplicationGroupId": "

The name of the Global datastore

", "FailoverGlobalReplicationGroupMessage$PrimaryRegion": "

The Amazon region of the primary cluster of the Global datastore

", "FailoverGlobalReplicationGroupMessage$PrimaryReplicationGroupId": "

The name of the primary replication group

", @@ -2305,6 +2553,10 @@ "ModifyReplicationGroupMessage$CacheNodeType": "

A valid cache node type that you want to scale this replication group to.

", "ModifyReplicationGroupMessage$AuthToken": "

Reserved parameter. The password used to access a password protected server. This parameter must be specified with the auth-token-update-strategy parameter. Password constraints:

  • Must be only printable ASCII characters

  • Must be at least 16 characters and no more than 128 characters in length

  • Cannot contain any of the following characters: '/', '\"', or '@', '%'

For more information, see AUTH password at AUTH.

", "ModifyReplicationGroupShardConfigurationMessage$ReplicationGroupId": "

The name of the Redis (cluster mode enabled) cluster (replication group) on which the shards are to be configured.

", + "ModifyServerlessCacheRequest$ServerlessCacheName": "

User-provided identifier for the serverless cache to be modified.

", + "ModifyServerlessCacheRequest$Description": "

User provided description for the serverless cache. Default = NULL, i.e. the existing description is not removed/modified. The description has a maximum length of 255 characters.

", + "ModifyServerlessCacheRequest$UserGroupId": "

The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. Default is NULL - the existing UserGroup is not removed.

", + "ModifyServerlessCacheRequest$DailySnapshotTime": "

The daily time during which Elasticache begins taking a daily snapshot of the serverless cache. Available for Redis only. The default is NULL, i.e. the existing snapshot time configured for the cluster is not removed.

", "ModifyUserGroupMessage$UserGroupId": "

The ID of the user group.

", "NodeGroup$NodeGroupId": "

The identifier for the node group (shard). A Redis (cluster mode disabled) replication group contains only 1 node group; therefore, the node group ID is 0001. A Redis (cluster mode enabled) replication group contains 1 to 90 node groups numbered 0001 to 0090. Optionally, the user can provide the id for a node group.

", "NodeGroup$Status": "

The current state of this replication group - creating, available, modifying, deleting.

", @@ -2368,14 +2620,14 @@ "ReplicationGroupPendingModifiedValues$PrimaryClusterId": "

The primary cluster ID that is applied immediately (if --apply-immediately was specified), or during the next maintenance window.

", "ReservedCacheNode$ReservedCacheNodeId": "

The unique identifier for the reservation.

", "ReservedCacheNode$ReservedCacheNodesOfferingId": "

The offering identifier.

", - "ReservedCacheNode$CacheNodeType": "

The cache node type for the reserved cache nodes.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "ReservedCacheNode$CacheNodeType": "

The cache node type for the reserved cache nodes.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "ReservedCacheNode$ProductDescription": "

The description of the reserved cache node.

", "ReservedCacheNode$OfferingType": "

The offering type of this reserved cache node.

", "ReservedCacheNode$State": "

The state of the reserved cache node.

", "ReservedCacheNode$ReservationARN": "

The Amazon Resource Name (ARN) of the reserved cache node.

Example: arn:aws:elasticache:us-east-1:123456789012:reserved-instance:ri-2017-03-27-08-33-25-582

", "ReservedCacheNodeMessage$Marker": "

Provides an identifier to allow retrieval of paginated results.

", "ReservedCacheNodesOffering$ReservedCacheNodesOfferingId": "

A unique identifier for the reserved cache node offering.

", - "ReservedCacheNodesOffering$CacheNodeType": "

The cache node type for the reserved cache node.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "ReservedCacheNodesOffering$CacheNodeType": "

The cache node type for the reserved cache node.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "ReservedCacheNodesOffering$ProductDescription": "

The cache engine used by the offering.

", "ReservedCacheNodesOffering$OfferingType": "

The offering type.

", "ReservedCacheNodesOfferingMessage$Marker": "

Provides an identifier to allow retrieval of paginated results.

", @@ -2386,6 +2638,25 @@ "SecurityGroupIdsList$member": null, "SecurityGroupMembership$SecurityGroupId": "

The identifier of the cache security group.

", "SecurityGroupMembership$Status": "

The status of the cache security group membership. The status changes whenever a cache security group is modified, or when the cache security groups assigned to a cluster are modified.

", + "ServerlessCache$ServerlessCacheName": "

The unique identifier of the serverless cache.

", + "ServerlessCache$Description": "

A description of the serverless cache.

", + "ServerlessCache$Status": "

The current status of the serverless cache. The allowed values are CREATING, AVAILABLE, DELETING, CREATE-FAILED and MODIFYING.

", + "ServerlessCache$Engine": "

The engine the serverless cache is compatible with.

", + "ServerlessCache$MajorEngineVersion": "

The version number of the engine the serverless cache is compatible with.

", + "ServerlessCache$FullEngineVersion": "

The name and version number of the engine the serverless cache is compatible with.

", + "ServerlessCache$KmsKeyId": "

The ID of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt data at rest in the serverless cache.

", + "ServerlessCache$ARN": "

The Amazon Resource Name (ARN) of the serverless cache.

", + "ServerlessCache$UserGroupId": "

The identifier of the user group associated with the serverless cache. Available for Redis only. Default is NULL.

", + "ServerlessCache$DailySnapshotTime": "

The daily time that a cache snapshot will be created. Default is NULL, i.e. snapshots will not be created at a specific time on a daily basis. Available for Redis only.

", + "ServerlessCacheConfiguration$ServerlessCacheName": "

The identifier of a serverless cache.

", + "ServerlessCacheConfiguration$Engine": "

The engine that the serverless cache is configured with.

", + "ServerlessCacheConfiguration$MajorEngineVersion": "

The engine version number that the serverless cache is configured with.

", + "ServerlessCacheSnapshot$ServerlessCacheSnapshotName": "

The identifier of a serverless cache snapshot. Available for Redis only.

", + "ServerlessCacheSnapshot$ARN": "

The Amazon Resource Name (ARN) of a serverless cache snapshot. Available for Redis only.

", + "ServerlessCacheSnapshot$KmsKeyId": "

The ID of the Amazon Web Services Key Management Service (KMS) key of a serverless cache snapshot. Available for Redis only.

", + "ServerlessCacheSnapshot$SnapshotType": "

The type of snapshot of serverless cache. Available for Redis only.

", + "ServerlessCacheSnapshot$Status": "

The current status of the serverless cache. Available for Redis only.

", + "ServerlessCacheSnapshot$BytesUsedForCache": "

The total size of a serverless cache snapshot, in bytes. Available for Redis only.

", "ServiceUpdate$ServiceUpdateName": "

The unique ID of the service update

", "ServiceUpdate$ServiceUpdateDescription": "

Provides details of the service update

", "ServiceUpdate$Engine": "

The Elasticache engine to which the update applies. Either Redis or Memcached

", @@ -2398,7 +2669,7 @@ "Snapshot$CacheClusterId": "

The user-supplied identifier of the source cluster.

", "Snapshot$SnapshotStatus": "

The status of the snapshot. Valid values: creating | available | restoring | copying | deleting.

", "Snapshot$SnapshotSource": "

Indicates whether the snapshot is from an automatic backup (automated) or was created manually (manual).

", - "Snapshot$CacheNodeType": "

The name of the compute and memory capacity node type for the source cluster.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", + "Snapshot$CacheNodeType": "

The name of the compute and memory capacity node type for the source cluster.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

      For region availability, see Supported Node Types

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

      For region availability, see Supported Node Types

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

", "Snapshot$Engine": "

The name of the cache engine (memcached or redis) used by the source cluster.

", "Snapshot$EngineVersion": "

The version of the cache engine version that is used by the source cluster.

", "Snapshot$PreferredAvailabilityZone": "

The name of the Availability Zone in which the source cluster is located.

", @@ -2415,12 +2686,14 @@ "StartMigrationMessage$ReplicationGroupId": "

The ID of the replication group to which data should be migrated.

", "Subnet$SubnetIdentifier": "

The unique identifier for the subnet.

", "SubnetIdentifierList$member": null, + "SubnetIdsList$member": null, "SubnetOutpost$SubnetOutpostArn": "

The outpost ARN of the subnet.

", "Tag$Key": "

The key for the tag. May not be null.

", "Tag$Value": "

The tag's value. May be null.

", "TestFailoverMessage$ReplicationGroupId": "

The name of the replication group (console: cluster) whose automatic failover is being tested by this operation.

", "TestMigrationMessage$ReplicationGroupId": "

The ID of the replication group to which data is to be migrated.

", "UGReplicationGroupIdList$member": null, + "UGServerlessCacheIdList$member": null, "UnprocessedUpdateAction$ReplicationGroupId": "

The replication group ID

", "UnprocessedUpdateAction$CacheClusterId": "

The ID of the cache cluster

", "UnprocessedUpdateAction$ServiceUpdateName": "

The unique ID of the service update

", @@ -2458,6 +2731,13 @@ "ModifyCacheSubnetGroupMessage$SubnetIds": "

The EC2 subnet IDs for the cache subnet group.

" } }, + "SubnetIdsList": { + "base": null, + "refs": { + "CreateServerlessCacheRequest$SubnetIds": "

A list of the identifiers of the subnets where the VPC endpoint for the serverless cache will be deployed. All the subnetIds must belong to the same VPC.

", + "ServerlessCache$SubnetIds": "

If no subnet IDs are given and your VPC is in SFO, then ElastiCache will select 2 default subnets across AZs in your VPC. For all other Regions, if no subnet IDs are given then ElastiCache will select 3 default subnets across AZs in your default VPC.

" + } + }, "SubnetInUse": { "base": "

The requested subnet is being used by another cache subnet group.

", "refs": { @@ -2504,6 +2784,9 @@ "ReplicationGroup$AuthTokenLastModifiedDate": "

The date the auth token was last modified

", "ReplicationGroup$ReplicationGroupCreateTime": "

The date and time when the cluster was created.

", "ReservedCacheNode$StartTime": "

The time the reservation started.

", + "ServerlessCache$CreateTime": "

When the serverless cache was created.

", + "ServerlessCacheSnapshot$CreateTime": "

The date and time that the source serverless cache's metadata and cache data set was obtained for the snapshot. Available for Redis only.

", + "ServerlessCacheSnapshot$ExpiryTime": "

The time that the serverless cache snapshot will expire. Available for Redis only.

", "ServiceUpdate$ServiceUpdateReleaseDate": "

The date when the service update is initially available

", "ServiceUpdate$ServiceUpdateEndDate": "

The date after which the service update is no longer available

", "ServiceUpdate$ServiceUpdateRecommendedApplyByDate": "

The recommendend date to apply the service update in order to ensure compliance. For information on compliance, see Self-Service Security Updates for Compliance.

", @@ -2526,14 +2809,17 @@ "base": null, "refs": { "AddTagsToResourceMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", + "CopyServerlessCacheSnapshotRequest$Tags": "

A list of tags to be added to the target snapshot resource. A tag is a key-value pair. Available for Redis only. Default: NULL

", "CopySnapshotMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", "CreateCacheClusterMessage$Tags": "

A list of tags to be added to this resource.

", "CreateCacheParameterGroupMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", "CreateCacheSecurityGroupMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", "CreateCacheSubnetGroupMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", "CreateReplicationGroupMessage$Tags": "

A list of tags to be added to this resource. Tags are comma-separated key,value pairs (e.g. Key=myKey, Value=myKeyValue. You can include multiple tags as shown following: Key=myKey, Value=myKeyValue Key=mySecondKey, Value=mySecondKeyValue. Tags on replication groups will be replicated to all nodes.

", + "CreateServerlessCacheRequest$Tags": "

The list of tags (key, value) pairs to be added to the serverless cache resource. Default is NULL.

", + "CreateServerlessCacheSnapshotRequest$Tags": "

A list of tags to be added to the snapshot resource. A tag is a key-value pair. Available for Redis only.

", "CreateSnapshotMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", - "CreateUserGroupMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", + "CreateUserGroupMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted. Available for Redis only.

", "CreateUserMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", "PurchaseReservedCacheNodesOfferingMessage$Tags": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

", "TagListMessage$TagList": "

A list of tags as key-value pairs.

" @@ -2602,6 +2888,12 @@ "UserGroup$ReplicationGroups": "

A list of replication groups that the user group can access.

" } }, + "UGServerlessCacheIdList": { + "base": null, + "refs": { + "UserGroup$ServerlessCaches": "

Indicates which serverless caches the specified user group is associated with. Available for Redis only.

" + } + }, "UnprocessedUpdateAction": { "base": "

Update action that has failed to be processed for the corresponding apply/stop request

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://elasticache-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://elasticache-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://elasticache.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://elasticache-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://elasticache.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://elasticache-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://elasticache.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://elasticache.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://elasticache.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://elasticache.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticache/2015-02-02/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticache/2015-02-02/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -72,6 +72,18 @@ "output_token": "Marker", "result_key": "ReservedCacheNodesOfferings" }, + "DescribeServerlessCacheSnapshots": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "ServerlessCacheSnapshots" + }, + "DescribeServerlessCaches": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "ServerlessCaches" + }, "DescribeServiceUpdates": { "input_token": "Marker", "limit_key": "MaxRecords", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -93,6 +93,7 @@ {"shape":"FileSystemLimitExceeded"}, {"shape":"InsufficientThroughputCapacity"}, {"shape":"ThroughputLimitExceeded"}, + {"shape":"ConflictException"}, {"shape":"InternalServerError"} ] }, @@ -506,6 +507,27 @@ {"shape":"ThroughputLimitExceeded"}, {"shape":"TooManyRequests"} ] + }, + "UpdateFileSystemProtection":{ + "name":"UpdateFileSystemProtection", + "http":{ + "method":"PUT", + "requestUri":"/2015-02-01/file-systems/{FileSystemId}/protection", + "responseCode":200 + }, + "input":{"shape":"UpdateFileSystemProtectionRequest"}, + "output":{"shape":"FileSystemProtectionDescription"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"FileSystemNotFound"}, + {"shape":"IncorrectFileSystemLifeCycleState"}, + {"shape":"InsufficientThroughputCapacity"}, + {"shape":"InternalServerError"}, + {"shape":"ThroughputLimitExceeded"}, + {"shape":"ReplicationAlreadyExists"}, + {"shape":"TooManyRequests"} + ], + "idempotent":true } }, "shapes":{ @@ -624,6 +646,15 @@ "min":1, "pattern":".+" }, + "ConflictException":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"ErrorCode"}, + "Message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "CreateAccessPointRequest":{ "type":"structure", "required":[ @@ -1045,7 +1076,8 @@ "members":{ "Region":{"shape":"RegionName"}, "AvailabilityZoneName":{"shape":"AvailabilityZoneName"}, - "KmsKeyId":{"shape":"KmsKeyId"} + "KmsKeyId":{"shape":"KmsKeyId"}, + "FileSystemId":{"shape":"FileSystemId"} } }, "Destinations":{ @@ -1107,7 +1139,8 @@ "ProvisionedThroughputInMibps":{"shape":"ProvisionedThroughputInMibps"}, "AvailabilityZoneName":{"shape":"AvailabilityZoneName"}, "AvailabilityZoneId":{"shape":"AvailabilityZoneId"}, - "Tags":{"shape":"Tags"} + "Tags":{"shape":"Tags"}, + "FileSystemProtection":{"shape":"FileSystemProtectionDescription"} } }, "FileSystemDescriptions":{ @@ -1160,6 +1193,12 @@ "Policy":{"shape":"Policy"} } }, + "FileSystemProtectionDescription":{ + "type":"structure", + "members":{ + "ReplicationOverwriteProtection":{"shape":"ReplicationOverwriteProtection"} + } + }, "FileSystemSize":{ "type":"structure", "required":["Value"], @@ -1167,7 +1206,8 @@ "Value":{"shape":"FileSystemSizeValue"}, "Timestamp":{"shape":"Timestamp"}, "ValueInIA":{"shape":"FileSystemNullableSizeValue"}, - "ValueInStandard":{"shape":"FileSystemNullableSizeValue"} + "ValueInStandard":{"shape":"FileSystemNullableSizeValue"}, + "ValueInArchive":{"shape":"FileSystemNullableSizeValue"} } }, "FileSystemSizeValue":{ @@ -1269,13 +1309,14 @@ "LifecyclePolicies":{ "type":"list", "member":{"shape":"LifecyclePolicy"}, - "max":2 + "max":3 }, "LifecyclePolicy":{ "type":"structure", "members":{ "TransitionToIA":{"shape":"TransitionToIARules"}, - "TransitionToPrimaryStorageClass":{"shape":"TransitionToPrimaryStorageClassRules"} + "TransitionToPrimaryStorageClass":{"shape":"TransitionToPrimaryStorageClassRules"}, + "TransitionToArchive":{"shape":"TransitionToArchiveRules"} } }, "ListTagsForResourceRequest":{ @@ -1534,6 +1575,15 @@ "min":1, "pattern":"^[a-z]{2}-((iso[a-z]{0,1}-)|(gov-)){0,1}[a-z]+-{0,1}[0-9]{0,1}$" }, + "ReplicationAlreadyExists":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"ErrorCode"}, + "Message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "ReplicationConfigurationDescription":{ "type":"structure", "required":[ @@ -1566,6 +1616,14 @@ "error":{"httpStatusCode":404}, "exception":true }, + "ReplicationOverwriteProtection":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED", + "REPLICATING" + ] + }, "ReplicationStatus":{ "type":"string", "enum":[ @@ -1767,6 +1825,20 @@ "error":{"httpStatusCode":429}, "exception":true }, + "TransitionToArchiveRules":{ + "type":"string", + "enum":[ + "AFTER_1_DAY", + "AFTER_7_DAYS", + "AFTER_14_DAYS", + "AFTER_30_DAYS", + "AFTER_60_DAYS", + "AFTER_90_DAYS", + "AFTER_180_DAYS", + "AFTER_270_DAYS", + "AFTER_365_DAYS" + ] + }, "TransitionToIARules":{ "type":"string", "enum":[ @@ -1775,7 +1847,10 @@ "AFTER_30_DAYS", "AFTER_60_DAYS", "AFTER_90_DAYS", - "AFTER_1_DAY" + "AFTER_1_DAY", + "AFTER_180_DAYS", + "AFTER_270_DAYS", + "AFTER_365_DAYS" ] }, "TransitionToPrimaryStorageClassRules":{ @@ -1816,6 +1891,18 @@ } } }, + "UpdateFileSystemProtectionRequest":{ + "type":"structure", + "required":["FileSystemId"], + "members":{ + "FileSystemId":{ + "shape":"FileSystemId", + "location":"uri", + "locationName":"FileSystemId" + }, + "ReplicationOverwriteProtection":{"shape":"ReplicationOverwriteProtection"} + } + }, "UpdateFileSystemRequest":{ "type":"structure", "required":["FileSystemId"], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,22 +3,22 @@ "service": "Amazon Elastic File System

Amazon Elastic File System (Amazon EFS) provides simple, scalable file storage for use with Amazon EC2 Linux and Mac instances in the Amazon Web Services Cloud. With Amazon EFS, storage capacity is elastic, growing and shrinking automatically as you add and remove files, so that your applications have the storage they need, when they need it. For more information, see the Amazon Elastic File System API Reference and the Amazon Elastic File System User Guide.

", "operations": { "CreateAccessPoint": "

Creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in the application's own directory and any subdirectories. To learn more, see Mounting a file system using EFS access points.

If multiple requests to create access points on the same file system are sent in quick succession, and the file system is near the limit of 1,000 access points, you may experience a throttling response for these requests. This is to ensure that the file system does not exceed the stated access point limit.

This operation requires permissions for the elasticfilesystem:CreateAccessPoint action.

Access points can be tagged on creation. If tags are specified in the creation action, IAM performs additional authorization on the elasticfilesystem:TagResource action to verify if users have permissions to create tags. Therefore, you must grant explicit permissions to use the elasticfilesystem:TagResource action. For more information, see Granting permissions to tag resources during creation.

", - "CreateFileSystem": "

Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's Amazon Web Services account with the specified creation token, this operation does the following:

  • Creates a new, empty file system. The file system will have an Amazon EFS assigned ID, and an initial lifecycle state creating.

  • Returns with the description of the created file system.

Otherwise, this operation returns a FileSystemAlreadyExists error with the ID of the existing file system.

For basic use cases, you can use a randomly generated UUID for the creation token.

The idempotent operation allows you to retry a CreateFileSystem call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists error.

For more information, see Creating a file system in the Amazon EFS User Guide.

The CreateFileSystem call returns while the file system's lifecycle state is still creating. You can check the file system creation status by calling the DescribeFileSystems operation, which among other things returns the file system state.

This operation accepts an optional PerformanceMode parameter that you choose for your file system. We recommend generalPurpose performance mode for most file systems. File systems using the maxIO performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. For more information, see Amazon EFS performance modes.

You can set the throughput mode for the file system using the ThroughputMode parameter.

After the file system is fully created, Amazon EFS sets its lifecycle state to available, at which point you can create one or more mount targets for the file system in your VPC. For more information, see CreateMountTarget. You mount your Amazon EFS file system on an EC2 instances in your VPC by using the mount target. For more information, see Amazon EFS: How it Works.

This operation requires permissions for the elasticfilesystem:CreateFileSystem action.

File systems can be tagged on creation. If tags are specified in the creation action, IAM performs additional authorization on the elasticfilesystem:TagResource action to verify if users have permissions to create tags. Therefore, you must grant explicit permissions to use the elasticfilesystem:TagResource action. For more information, see Granting permissions to tag resources during creation.

", - "CreateMountTarget": "

Creates a mount target for a file system. You can then mount the file system on EC2 instances by using the mount target.

You can create one mount target in each Availability Zone in your VPC. All EC2 instances in a VPC within a given Availability Zone share a single mount target for a given file system. If you have multiple subnets in an Availability Zone, you create a mount target in one of the subnets. EC2 instances do not need to be in the same subnet as the mount target in order to access their file system.

You can create only one mount target for an EFS file system using One Zone storage classes. You must create that mount target in the same Availability Zone in which the file system is located. Use the AvailabilityZoneName and AvailabiltyZoneId properties in the DescribeFileSystems response object to get this information. Use the subnetId associated with the file system's Availability Zone when creating the mount target.

For more information, see Amazon EFS: How it Works.

To create a mount target for a file system, the file system's lifecycle state must be available. For more information, see DescribeFileSystems.

In the request, provide the following:

  • The file system ID for which you are creating the mount target.

  • A subnet ID, which determines the following:

    • The VPC in which Amazon EFS creates the mount target

    • The Availability Zone in which Amazon EFS creates the mount target

    • The IP address range from which Amazon EFS selects the IP address of the mount target (if you don't specify an IP address in the request)

After creating the mount target, Amazon EFS returns a response that includes, a MountTargetId and an IpAddress. You use this IP address when mounting the file system in an EC2 instance. You can also use the mount target's DNS name when mounting the file system. The EC2 instance on which you mount the file system by using the mount target can resolve the mount target's DNS name to its IP address. For more information, see How it Works: Implementation Overview.

Note that you can create mount targets for a file system in only one VPC, and there can be only one mount target per Availability Zone. That is, if the file system already has one or more mount targets created for it, the subnet specified in the request to add another mount target must meet the following requirements:

  • Must belong to the same VPC as the subnets of the existing mount targets

  • Must not be in the same Availability Zone as any of the subnets of the existing mount targets

If the request satisfies the requirements, Amazon EFS does the following:

  • Creates a new mount target in the specified subnet.

  • Also creates a new network interface in the subnet as follows:

    • If the request provides an IpAddress, Amazon EFS assigns that IP address to the network interface. Otherwise, Amazon EFS assigns a free address in the subnet (in the same way that the Amazon EC2 CreateNetworkInterface call does when a request does not specify a primary private IP address).

    • If the request provides SecurityGroups, this network interface is associated with those security groups. Otherwise, it belongs to the default security group for the subnet's VPC.

    • Assigns the description Mount target fsmt-id for file system fs-id where fsmt-id is the mount target ID, and fs-id is the FileSystemId.

    • Sets the requesterManaged property of the network interface to true, and the requesterId value to EFS.

    Each Amazon EFS mount target has one corresponding requester-managed EC2 network interface. After the network interface is created, Amazon EFS sets the NetworkInterfaceId field in the mount target's description to the network interface ID, and the IpAddress field to its address. If network interface creation fails, the entire CreateMountTarget operation fails.

The CreateMountTarget call returns only after creating the network interface, but while the mount target state is still creating, you can check the mount target creation status by calling the DescribeMountTargets operation, which among other things returns the mount target state.

We recommend that you create a mount target in each of the Availability Zones. There are cost considerations for using a file system in an Availability Zone through a mount target created in another Availability Zone. For more information, see Amazon EFS. In addition, by always using a mount target local to the instance's Availability Zone, you eliminate a partial failure scenario. If the Availability Zone in which your mount target is created goes down, then you can't access your file system through that mount target.

This operation requires permissions for the following action on the file system:

  • elasticfilesystem:CreateMountTarget

This operation also requires permissions for the following Amazon EC2 actions:

  • ec2:DescribeSubnets

  • ec2:DescribeNetworkInterfaces

  • ec2:CreateNetworkInterface

", - "CreateReplicationConfiguration": "

Creates a replication configuration that replicates an existing EFS file system to a new, read-only file system. For more information, see Amazon EFS replication in the Amazon EFS User Guide. The replication configuration specifies the following:

  • Source file system - An existing EFS file system that you want replicated. The source file system cannot be a destination file system in an existing replication configuration.

  • Destination file system configuration - The configuration of the destination file system to which the source file system will be replicated. There can only be one destination file system in a replication configuration. The destination file system configuration consists of the following properties:

    • Amazon Web Services Region - The Amazon Web Services Region in which the destination file system is created. Amazon EFS replication is available in all Amazon Web Services Regions that Amazon EFS is available in, except Africa (Cape Town), Asia Pacific (Hong Kong), Asia Pacific (Jakarta), Europe (Milan), and Middle East (Bahrain).

    • Availability Zone - If you want the destination file system to use EFS One Zone availability and durability, you must specify the Availability Zone to create the file system in. For more information about EFS storage classes, see Amazon EFS storage classes in the Amazon EFS User Guide.

    • Encryption - All destination file systems are created with encryption at rest enabled. You can specify the Key Management Service (KMS) key that is used to encrypt the destination file system. If you don't specify a KMS key, your service-managed KMS key for Amazon EFS is used.

      After the file system is created, you cannot change the KMS key.

The following properties are set by default:

  • Performance mode - The destination file system's performance mode matches that of the source file system, unless the destination file system uses EFS One Zone storage. In that case, the General Purpose performance mode is used. The performance mode cannot be changed.

  • Throughput mode - The destination file system's throughput mode matches that of the source file system. After the file system is created, you can modify the throughput mode.

The following properties are turned off by default:

  • Lifecycle management - EFS lifecycle management and EFS Intelligent-Tiering are not enabled on the destination file system. After the destination file system is created, you can enable EFS lifecycle management and EFS Intelligent-Tiering.

  • Automatic backups - Automatic daily backups not enabled on the destination file system. After the file system is created, you can change this setting.

For more information, see Amazon EFS replication in the Amazon EFS User Guide.

", + "CreateFileSystem": "

Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's Amazon Web Services account with the specified creation token, this operation does the following:

  • Creates a new, empty file system. The file system will have an Amazon EFS assigned ID, and an initial lifecycle state creating.

  • Returns with the description of the created file system.

Otherwise, this operation returns a FileSystemAlreadyExists error with the ID of the existing file system.

For basic use cases, you can use a randomly generated UUID for the creation token.

The idempotent operation allows you to retry a CreateFileSystem call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists error.

For more information, see Creating a file system in the Amazon EFS User Guide.

The CreateFileSystem call returns while the file system's lifecycle state is still creating. You can check the file system creation status by calling the DescribeFileSystems operation, which among other things returns the file system state.

This operation accepts an optional PerformanceMode parameter that you choose for your file system. We recommend generalPurpose performance mode for all file systems. File systems using the maxIO mode is a previous generation performance type that is designed for highly parallelized workloads that can tolerate higher latencies than the General Purpose mode. Max I/O mode is not supported for One Zone file systems or file systems that use Elastic throughput.

Due to the higher per-operation latencies with Max I/O, we recommend using General Purpose performance mode for all file systems.

The performance mode can't be changed after the file system has been created. For more information, see Amazon EFS performance modes.

You can set the throughput mode for the file system using the ThroughputMode parameter.

After the file system is fully created, Amazon EFS sets its lifecycle state to available, at which point you can create one or more mount targets for the file system in your VPC. For more information, see CreateMountTarget. You mount your Amazon EFS file system on an EC2 instances in your VPC by using the mount target. For more information, see Amazon EFS: How it Works.

This operation requires permissions for the elasticfilesystem:CreateFileSystem action.

File systems can be tagged on creation. If tags are specified in the creation action, IAM performs additional authorization on the elasticfilesystem:TagResource action to verify if users have permissions to create tags. Therefore, you must grant explicit permissions to use the elasticfilesystem:TagResource action. For more information, see Granting permissions to tag resources during creation.

", + "CreateMountTarget": "

Creates a mount target for a file system. You can then mount the file system on EC2 instances by using the mount target.

You can create one mount target in each Availability Zone in your VPC. All EC2 instances in a VPC within a given Availability Zone share a single mount target for a given file system. If you have multiple subnets in an Availability Zone, you create a mount target in one of the subnets. EC2 instances do not need to be in the same subnet as the mount target in order to access their file system.

You can create only one mount target for a One Zone file system. You must create that mount target in the same Availability Zone in which the file system is located. Use the AvailabilityZoneName and AvailabiltyZoneId properties in the DescribeFileSystems response object to get this information. Use the subnetId associated with the file system's Availability Zone when creating the mount target.

For more information, see Amazon EFS: How it Works.

To create a mount target for a file system, the file system's lifecycle state must be available. For more information, see DescribeFileSystems.

In the request, provide the following:

  • The file system ID for which you are creating the mount target.

  • A subnet ID, which determines the following:

    • The VPC in which Amazon EFS creates the mount target

    • The Availability Zone in which Amazon EFS creates the mount target

    • The IP address range from which Amazon EFS selects the IP address of the mount target (if you don't specify an IP address in the request)

After creating the mount target, Amazon EFS returns a response that includes, a MountTargetId and an IpAddress. You use this IP address when mounting the file system in an EC2 instance. You can also use the mount target's DNS name when mounting the file system. The EC2 instance on which you mount the file system by using the mount target can resolve the mount target's DNS name to its IP address. For more information, see How it Works: Implementation Overview.

Note that you can create mount targets for a file system in only one VPC, and there can be only one mount target per Availability Zone. That is, if the file system already has one or more mount targets created for it, the subnet specified in the request to add another mount target must meet the following requirements:

  • Must belong to the same VPC as the subnets of the existing mount targets

  • Must not be in the same Availability Zone as any of the subnets of the existing mount targets

If the request satisfies the requirements, Amazon EFS does the following:

  • Creates a new mount target in the specified subnet.

  • Also creates a new network interface in the subnet as follows:

    • If the request provides an IpAddress, Amazon EFS assigns that IP address to the network interface. Otherwise, Amazon EFS assigns a free address in the subnet (in the same way that the Amazon EC2 CreateNetworkInterface call does when a request does not specify a primary private IP address).

    • If the request provides SecurityGroups, this network interface is associated with those security groups. Otherwise, it belongs to the default security group for the subnet's VPC.

    • Assigns the description Mount target fsmt-id for file system fs-id where fsmt-id is the mount target ID, and fs-id is the FileSystemId.

    • Sets the requesterManaged property of the network interface to true, and the requesterId value to EFS.

    Each Amazon EFS mount target has one corresponding requester-managed EC2 network interface. After the network interface is created, Amazon EFS sets the NetworkInterfaceId field in the mount target's description to the network interface ID, and the IpAddress field to its address. If network interface creation fails, the entire CreateMountTarget operation fails.

The CreateMountTarget call returns only after creating the network interface, but while the mount target state is still creating, you can check the mount target creation status by calling the DescribeMountTargets operation, which among other things returns the mount target state.

We recommend that you create a mount target in each of the Availability Zones. There are cost considerations for using a file system in an Availability Zone through a mount target created in another Availability Zone. For more information, see Amazon EFS. In addition, by always using a mount target local to the instance's Availability Zone, you eliminate a partial failure scenario. If the Availability Zone in which your mount target is created goes down, then you can't access your file system through that mount target.

This operation requires permissions for the following action on the file system:

  • elasticfilesystem:CreateMountTarget

This operation also requires permissions for the following Amazon EC2 actions:

  • ec2:DescribeSubnets

  • ec2:DescribeNetworkInterfaces

  • ec2:CreateNetworkInterface

", + "CreateReplicationConfiguration": "

Creates a replication configuration that replicates an existing EFS file system to a new, read-only file system. For more information, see Amazon EFS replication in the Amazon EFS User Guide. The replication configuration specifies the following:

  • Source file system – The EFS file system that you want replicated. The source file system cannot be a destination file system in an existing replication configuration.

  • Amazon Web Services Region – The Amazon Web Services Region in which the destination file system is created. Amazon EFS replication is available in all Amazon Web Services Regions in which EFS is available. The Region must be enabled. For more information, see Managing Amazon Web Services Regions in the Amazon Web Services General Reference Reference Guide.

  • Destination file system configuration – The configuration of the destination file system to which the source file system will be replicated. There can only be one destination file system in a replication configuration.

    Parameters for the replication configuration include:

    • File system ID – The ID of the destination file system for the replication. If no ID is provided, then EFS creates a new file system with the default settings. For existing file systems, the file system's replication overwrite protection must be disabled. For more information, see Replicating to an existing file system.

    • Availability Zone – If you want the destination file system to use One Zone storage, you must specify the Availability Zone to create the file system in. For more information, see EFS file system types in the Amazon EFS User Guide.

    • Encryption – All destination file systems are created with encryption at rest enabled. You can specify the Key Management Service (KMS) key that is used to encrypt the destination file system. If you don't specify a KMS key, your service-managed KMS key for Amazon EFS is used.

      After the file system is created, you cannot change the KMS key.

After the file system is created, you cannot change the KMS key.

For new destination file systems, the following properties are set by default:

  • Performance mode - The destination file system's performance mode matches that of the source file system, unless the destination file system uses EFS One Zone storage. In that case, the General Purpose performance mode is used. The performance mode cannot be changed.

  • Throughput mode - The destination file system's throughput mode matches that of the source file system. After the file system is created, you can modify the throughput mode.

  • Lifecycle management – Lifecycle management is not enabled on the destination file system. After the destination file system is created, you can enable lifecycle management.

  • Automatic backups – Automatic daily backups are enabled on the destination file system. After the file system is created, you can change this setting.

For more information, see Amazon EFS replication in the Amazon EFS User Guide.

", "CreateTags": "

DEPRECATED - CreateTags is deprecated and not maintained. To create tags for EFS resources, use the API action.

Creates or overwrites tags associated with a file system. Each tag is a key-value pair. If a tag key specified in the request already exists on the file system, this operation overwrites its value with the value provided in the request. If you add the Name tag to your file system, Amazon EFS returns it in the response to the DescribeFileSystems operation.

This operation requires permission for the elasticfilesystem:CreateTags action.

", "DeleteAccessPoint": "

Deletes the specified access point. After deletion is complete, new clients can no longer connect to the access points. Clients connected to the access point at the time of deletion will continue to function until they terminate their connection.

This operation requires permissions for the elasticfilesystem:DeleteAccessPoint action.

", "DeleteFileSystem": "

Deletes a file system, permanently severing access to its contents. Upon return, the file system no longer exists and you can't access any contents of the deleted file system.

You need to manually delete mount targets attached to a file system before you can delete an EFS file system. This step is performed for you when you use the Amazon Web Services console to delete a file system.

You cannot delete a file system that is part of an EFS Replication configuration. You need to delete the replication configuration first.

You can't delete a file system that is in use. That is, if the file system has any mount targets, you must first delete them. For more information, see DescribeMountTargets and DeleteMountTarget.

The DeleteFileSystem call returns while the file system state is still deleting. You can check the file system deletion status by calling the DescribeFileSystems operation, which returns a list of file systems in your account. If you pass file system ID or creation token for the deleted file system, the DescribeFileSystems returns a 404 FileSystemNotFound error.

This operation requires permissions for the elasticfilesystem:DeleteFileSystem action.

", "DeleteFileSystemPolicy": "

Deletes the FileSystemPolicy for the specified file system. The default FileSystemPolicy goes into effect once the existing policy is deleted. For more information about the default file system policy, see Using Resource-based Policies with EFS.

This operation requires permissions for the elasticfilesystem:DeleteFileSystemPolicy action.

", "DeleteMountTarget": "

Deletes the specified mount target.

This operation forcibly breaks any mounts of the file system by using the mount target that is being deleted, which might disrupt instances or applications using those mounts. To avoid applications getting cut off abruptly, you might consider unmounting any mounts of the mount target, if feasible. The operation also deletes the associated network interface. Uncommitted writes might be lost, but breaking a mount target using this operation does not corrupt the file system itself. The file system you created remains. You can mount an EC2 instance in your VPC by using another mount target.

This operation requires permissions for the following action on the file system:

  • elasticfilesystem:DeleteMountTarget

The DeleteMountTarget call returns while the mount target state is still deleting. You can check the mount target deletion by calling the DescribeMountTargets operation, which returns a list of mount target descriptions for the given file system.

The operation also requires permissions for the following Amazon EC2 action on the mount target's network interface:

  • ec2:DeleteNetworkInterface

", - "DeleteReplicationConfiguration": "

Deletes an existing replication configuration. To delete a replication configuration, you must make the request from the Amazon Web Services Region in which the destination file system is located. Deleting a replication configuration ends the replication process. After a replication configuration is deleted, the destination file system is no longer read-only. You can write to the destination file system after its status becomes Writeable.

", + "DeleteReplicationConfiguration": "

Deletes a replication configuration. Deleting a replication configuration ends the replication process. After a replication configuration is deleted, the destination file system becomes Writeable and its replication overwrite protection is re-enabled. For more information, see Delete a replication configuration.

This operation requires permissions for the elasticfilesystem:DeleteReplicationConfiguration action.

", "DeleteTags": "

DEPRECATED - DeleteTags is deprecated and not maintained. To remove tags from EFS resources, use the API action.

Deletes the specified tags from a file system. If the DeleteTags request includes a tag key that doesn't exist, Amazon EFS ignores it and doesn't cause an error. For more information about tags and related restrictions, see Tag restrictions in the Billing and Cost Management User Guide.

This operation requires permissions for the elasticfilesystem:DeleteTags action.

", "DescribeAccessPoints": "

Returns the description of a specific Amazon EFS access point if the AccessPointId is provided. If you provide an EFS FileSystemId, it returns descriptions of all access points for that file system. You can provide either an AccessPointId or a FileSystemId in the request, but not both.

This operation requires permissions for the elasticfilesystem:DescribeAccessPoints action.

", - "DescribeAccountPreferences": "

Returns the account preferences settings for the Amazon Web Services account associated with the user making the request, in the current Amazon Web Services Region. For more information, see Managing Amazon EFS resource IDs.

", + "DescribeAccountPreferences": "

Returns the account preferences settings for the Amazon Web Services account associated with the user making the request, in the current Amazon Web Services Region.

", "DescribeBackupPolicy": "

Returns the backup policy for the specified EFS file system.

", "DescribeFileSystemPolicy": "

Returns the FileSystemPolicy for the specified EFS file system.

This operation requires permissions for the elasticfilesystem:DescribeFileSystemPolicy action.

", "DescribeFileSystems": "

Returns the description of a specific Amazon EFS file system if either the file system CreationToken or the FileSystemId is provided. Otherwise, it returns descriptions of all file systems owned by the caller's Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.

When retrieving all file system descriptions, you can optionally specify the MaxItems parameter to limit the number of descriptions in a response. This number is automatically set to 100. If more file system descriptions remain, Amazon EFS returns a NextMarker, an opaque token, in the response. In this case, you should send a subsequent request with the Marker request parameter set to the value of NextMarker.

To retrieve a list of your file system descriptions, this operation is used in an iterative process, where DescribeFileSystems is called first without the Marker and then the operation continues to call it with the Marker parameter set to the value of the NextMarker from the previous response until the response has no NextMarker.

The order of file systems returned in the response of one DescribeFileSystems call and the order of file systems returned across the responses of a multi-call iteration is unspecified.

This operation requires permissions for the elasticfilesystem:DescribeFileSystems action.

", - "DescribeLifecycleConfiguration": "

Returns the current LifecycleConfiguration object for the specified Amazon EFS file system. EFS lifecycle management uses the LifecycleConfiguration object to identify which files to move to the EFS Infrequent Access (IA) storage class. For a file system without a LifecycleConfiguration object, the call returns an empty array in the response.

When EFS Intelligent-Tiering is enabled, TransitionToPrimaryStorageClass has a value of AFTER_1_ACCESS.

This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration operation.

", + "DescribeLifecycleConfiguration": "

Returns the current LifecycleConfiguration object for the specified Amazon EFS file system. Lifecycle management uses the LifecycleConfiguration object to identify when to move files between storage classes. For a file system without a LifecycleConfiguration object, the call returns an empty array in the response.

This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration operation.

", "DescribeMountTargetSecurityGroups": "

Returns the security groups currently in effect for a mount target. This operation requires that the network interface of the mount target has been created and the lifecycle state of the mount target is not deleted.

This operation requires permissions for the following actions:

  • elasticfilesystem:DescribeMountTargetSecurityGroups action on the mount target's file system.

  • ec2:DescribeNetworkInterfaceAttribute action on the mount target's network interface.

", "DescribeMountTargets": "

Returns the descriptions of all the current mount targets, or a specific mount target, for a file system. When requesting all of the current mount targets, the order of mount targets returned in the response is unspecified.

This operation requires permissions for the elasticfilesystem:DescribeMountTargets action, on either the file system ID that you specify in FileSystemId, or on the file system of the mount target that you specify in MountTargetId.

", "DescribeReplicationConfigurations": "

Retrieves the replication configuration for a specific file system. If a file system is not specified, all of the replication configurations for the Amazon Web Services account in an Amazon Web Services Region are retrieved.

", @@ -28,10 +28,11 @@ "PutAccountPreferences": "

Use this operation to set the account preference in the current Amazon Web Services Region to use long 17 character (63 bit) or short 8 character (32 bit) resource IDs for new EFS file system and mount target resources. All existing resource IDs are not affected by any changes you make. You can set the ID preference during the opt-in period as EFS transitions to long resource IDs. For more information, see Managing Amazon EFS resource IDs.

Starting in October, 2021, you will receive an error if you try to set the account preference to use the short 8 character format resource ID. Contact Amazon Web Services support if you receive an error and must use short IDs for file system and mount target resources.

", "PutBackupPolicy": "

Updates the file system's backup policy. Use this action to start or stop automatic backups of the file system.

", "PutFileSystemPolicy": "

Applies an Amazon EFS FileSystemPolicy to an Amazon EFS file system. A file system policy is an IAM resource-based policy and can contain multiple policy statements. A file system always has exactly one file system policy, which can be the default policy or an explicit policy set or updated using this API operation. EFS file system policies have a 20,000 character limit. When an explicit policy is set, it overrides the default policy. For more information about the default file system policy, see Default EFS File System Policy.

EFS file system policies have a 20,000 character limit.

This operation requires permissions for the elasticfilesystem:PutFileSystemPolicy action.

", - "PutLifecycleConfiguration": "

Use this action to manage EFS lifecycle management and EFS Intelligent-Tiering. A LifecycleConfiguration consists of one or more LifecyclePolicy objects that define the following:

  • EFS Lifecycle management - When Amazon EFS automatically transitions files in a file system into the lower-cost EFS Infrequent Access (IA) storage class.

    To enable EFS Lifecycle management, set the value of TransitionToIA to one of the available options.

  • EFS Intelligent-Tiering - When Amazon EFS automatically transitions files from IA back into the file system's primary storage class (EFS Standard or EFS One Zone Standard).

    To enable EFS Intelligent-Tiering, set the value of TransitionToPrimaryStorageClass to AFTER_1_ACCESS.

For more information, see EFS Lifecycle Management.

Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration object already exists for the specified file system, a PutLifecycleConfiguration call modifies the existing configuration. A PutLifecycleConfiguration call with an empty LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration and turns off lifecycle management and EFS Intelligent-Tiering for the file system.

In the request, specify the following:

  • The ID for the file system for which you are enabling, disabling, or modifying lifecycle management and EFS Intelligent-Tiering.

  • A LifecyclePolicies array of LifecyclePolicy objects that define when files are moved into IA storage, and when they are moved back to Standard storage.

    Amazon EFS requires that each LifecyclePolicy object have only have a single transition, so the LifecyclePolicies array needs to be structured with separate LifecyclePolicy objects. See the example requests in the following section for more information.

This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration operation.

To apply a LifecycleConfiguration object to an encrypted file system, you need the same Key Management Service permissions as when you created the encrypted file system.

", + "PutLifecycleConfiguration": "

Use this action to manage storage for your file system. A LifecycleConfiguration consists of one or more LifecyclePolicy objects that define the following:

  • TransitionToIA – When to move files in the file system from primary storage (Standard storage class) into the Infrequent Access (IA) storage.

  • TransitionToArchive – When to move files in the file system from their current storage class (either IA or Standard storage) into the Archive storage.

    File systems cannot transition into Archive storage before transitioning into IA storage. Therefore, TransitionToArchive must either not be set or must be later than TransitionToIA.

    The Archive storage class is available only for file systems that use the Elastic Throughput mode and the General Purpose Performance mode.

  • TransitionToPrimaryStorageClass – Whether to move files in the file system back to primary storage (Standard storage class) after they are accessed in IA or Archive storage.

For more information, see Managing file system storage.

Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration object already exists for the specified file system, a PutLifecycleConfiguration call modifies the existing configuration. A PutLifecycleConfiguration call with an empty LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration. In the request, specify the following:

  • The ID for the file system for which you are enabling, disabling, or modifying Lifecycle management.

  • A LifecyclePolicies array of LifecyclePolicy objects that define when to move files to IA storage, to Archive storage, and back to primary storage.

    Amazon EFS requires that each LifecyclePolicy object have only have a single transition, so the LifecyclePolicies array needs to be structured with separate LifecyclePolicy objects. See the example requests in the following section for more information.

This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration operation.

To apply a LifecycleConfiguration object to an encrypted file system, you need the same Key Management Service permissions as when you created the encrypted file system.

", "TagResource": "

Creates a tag for an EFS resource. You can create tags for EFS file systems and access points using this API operation.

This operation requires permissions for the elasticfilesystem:TagResource action.

", "UntagResource": "

Removes tags from an EFS resource. You can remove tags from EFS file systems and access points using this API operation.

This operation requires permissions for the elasticfilesystem:UntagResource action.

", - "UpdateFileSystem": "

Updates the throughput mode or the amount of provisioned throughput of an existing file system.

" + "UpdateFileSystem": "

Updates the throughput mode or the amount of provisioned throughput of an existing file system.

", + "UpdateFileSystemProtection": "

Updates protection on the file system.

This operation requires permissions for the elasticfilesystem:UpdateFileSystemProtection action.

" }, "shapes": { "AccessPointAlreadyExists": { @@ -80,16 +81,16 @@ "AvailabilityZoneId": { "base": null, "refs": { - "FileSystemDescription$AvailabilityZoneId": "

The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes exist. For example, use1-az1 is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it has the same location in every Amazon Web Services account.

", + "FileSystemDescription$AvailabilityZoneId": "

The unique and consistent identifier of the Availability Zone in which the file system is located, and is valid only for One Zone file systems. For example, use1-az1 is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it has the same location in every Amazon Web Services account.

", "MountTargetDescription$AvailabilityZoneId": "

The unique and consistent identifier of the Availability Zone that the mount target resides in. For example, use1-az1 is an AZ ID for the us-east-1 Region and it has the same location in every Amazon Web Services account.

" } }, "AvailabilityZoneName": { "base": null, "refs": { - "CreateFileSystemRequest$AvailabilityZoneName": "

Used to create a file system that uses One Zone storage classes. It specifies the Amazon Web Services Availability Zone in which to create the file system. Use the format us-east-1a to specify the Availability Zone. For more information about One Zone storage classes, see Using EFS storage classes in the Amazon EFS User Guide.

One Zone storage classes are not available in all Availability Zones in Amazon Web Services Regions where Amazon EFS is available.

", - "DestinationToCreate$AvailabilityZoneName": "

To create a file system that uses EFS One Zone storage, specify the name of the Availability Zone in which to create the destination file system.

", - "FileSystemDescription$AvailabilityZoneName": "

Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for file systems using One Zone storage classes. For more information, see Using EFS storage classes in the Amazon EFS User Guide.

", + "CreateFileSystemRequest$AvailabilityZoneName": "

Used to create a One Zone file system. It specifies the Amazon Web Services Availability Zone in which to create the file system. Use the format us-east-1a to specify the Availability Zone. For more information about One Zone file systems, see Using EFS storage classes in the Amazon EFS User Guide.

One Zone file systems are not available in all Availability Zones in Amazon Web Services Regions where Amazon EFS is available.

", + "DestinationToCreate$AvailabilityZoneName": "

To create a file system that uses One Zone storage, specify the name of the Availability Zone in which to create the destination file system.

", + "FileSystemDescription$AvailabilityZoneName": "

Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for One Zone file systems. For more information, see Using EFS storage classes in the Amazon EFS User Guide.

", "MountTargetDescription$AvailabilityZoneName": "

The name of the Availability Zone in which the mount target is located. Availability Zones are independently mapped to names for each Amazon Web Services account. For example, the Availability Zone us-east-1a for your Amazon Web Services account might not be the same location as us-east-1a for another Amazon Web Services account.

" } }, @@ -109,7 +110,7 @@ "Backup": { "base": null, "refs": { - "CreateFileSystemRequest$Backup": "

Specifies whether automatic backups are enabled on the file system that you are creating. Set the value to true to enable automatic backups. If you are creating a file system that uses One Zone storage classes, automatic backups are enabled by default. For more information, see Automatic backups in the Amazon EFS User Guide.

Default is false. However, if you specify an AvailabilityZoneName, the default is true.

Backup is not available in all Amazon Web Services Regions where Amazon EFS is available.

" + "CreateFileSystemRequest$Backup": "

Specifies whether automatic backups are enabled on the file system that you are creating. Set the value to true to enable automatic backups. If you are creating a One Zone file system, automatic backups are enabled by default. For more information, see Automatic backups in the Amazon EFS User Guide.

Default is false. However, if you specify an AvailabilityZoneName, the default is true.

Backup is not available in all Amazon Web Services Regions where Amazon EFS is available.

" } }, "BackupPolicy": { @@ -142,6 +143,11 @@ "CreateAccessPointRequest$ClientToken": "

A string of up to 64 ASCII characters that Amazon EFS uses to ensure idempotent creation.

" } }, + "ConflictException": { + "base": "

Returned if the source file system in a replication is encrypted but the destination file system is unencrypted.

", + "refs": { + } + }, "CreateAccessPointRequest": { "base": null, "refs": { @@ -308,7 +314,7 @@ } }, "DestinationToCreate": { - "base": "

Describes the destination file system to create in the replication configuration.

", + "base": "

Describes the new or existing destination file system for the replication configuration.

", "refs": { "DestinationsToCreate$member": null } @@ -340,6 +346,7 @@ "AccessPointNotFound$ErrorCode": null, "AvailabilityZonesMismatch$ErrorCode": null, "BadRequest$ErrorCode": null, + "ConflictException$ErrorCode": null, "DependencyTimeout$ErrorCode": null, "FileSystemAlreadyExists$ErrorCode": null, "FileSystemInUse$ErrorCode": null, @@ -356,6 +363,7 @@ "NetworkInterfaceLimitExceeded$ErrorCode": null, "NoFreeAddressesInSubnet$ErrorCode": null, "PolicyNotFound$ErrorCode": null, + "ReplicationAlreadyExists$ErrorCode": null, "ReplicationNotFound$ErrorCode": "

ReplicationNotFound

", "SecurityGroupLimitExceeded$ErrorCode": null, "SecurityGroupNotFound$ErrorCode": null, @@ -375,6 +383,7 @@ "AccessPointNotFound$Message": null, "AvailabilityZonesMismatch$Message": null, "BadRequest$Message": null, + "ConflictException$Message": null, "DependencyTimeout$Message": null, "FileSystemAlreadyExists$Message": null, "FileSystemInUse$Message": null, @@ -391,6 +400,7 @@ "NetworkInterfaceLimitExceeded$Message": null, "NoFreeAddressesInSubnet$Message": null, "PolicyNotFound$Message": null, + "ReplicationAlreadyExists$Message": null, "ReplicationNotFound$Message": null, "SecurityGroupLimitExceeded$Message": null, "SecurityGroupNotFound$Message": null, @@ -412,7 +422,7 @@ "refs": { "FileSystemDescription$FileSystemArn": "

The Amazon Resource Name (ARN) for the EFS file system, in the format arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id . Example with sample data: arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567

", "ReplicationConfigurationDescription$SourceFileSystemArn": "

The Amazon Resource Name (ARN) of the current source file system in the replication configuration.

", - "ReplicationConfigurationDescription$OriginalSourceFileSystemArn": "

The Amazon Resource Name (ARN) of the original source Amazon EFS file system in the replication configuration.

" + "ReplicationConfigurationDescription$OriginalSourceFileSystemArn": "

The Amazon Resource Name (ARN) of the original source EFS file system in the replication configuration.

" } }, "FileSystemDescription": { @@ -440,7 +450,7 @@ "DeleteReplicationConfigurationRequest$SourceFileSystemId": "

The ID of the source file system in the replication configuration.

", "DeleteTagsRequest$FileSystemId": "

The ID of the file system whose tags you want to delete (String).

", "DescribeAccessPointsRequest$FileSystemId": "

(Optional) If you provide a FileSystemId, EFS returns all access points for that file system; mutually exclusive with AccessPointId.

", - "DescribeBackupPolicyRequest$FileSystemId": "

Specifies which EFS file system to retrieve the BackupPolicy for.

", + "DescribeBackupPolicyRequest$FileSystemId": "

Specifies which EFS file system for which to retrieve the BackupPolicy.

", "DescribeFileSystemPolicyRequest$FileSystemId": "

Specifies which EFS file system to retrieve the FileSystemPolicy for.

", "DescribeFileSystemsRequest$FileSystemId": "

(Optional) ID of the file system whose description you want to retrieve (String).

", "DescribeLifecycleConfigurationRequest$FileSystemId": "

The ID of the file system whose LifecycleConfiguration object you want to retrieve (String).

", @@ -448,6 +458,7 @@ "DescribeReplicationConfigurationsRequest$FileSystemId": "

You can retrieve the replication configuration for a specific file system by providing its file system ID.

", "DescribeTagsRequest$FileSystemId": "

The ID of the file system whose tag set you want to retrieve.

", "Destination$FileSystemId": "

The ID of the destination Amazon EFS file system.

", + "DestinationToCreate$FileSystemId": "

The ID of the file system to use for the destination. The file system's replication overwrite replication must be disabled. If you do not provide an ID, then EFS creates a new file system for the replication destination.

", "FileSystemAlreadyExists$FileSystemId": null, "FileSystemDescription$FileSystemId": "

The ID of the file system, assigned by Amazon EFS.

", "FileSystemPolicyDescription$FileSystemId": "

Specifies the EFS file system to which the FileSystemPolicy applies.

", @@ -456,6 +467,7 @@ "PutFileSystemPolicyRequest$FileSystemId": "

The ID of the EFS file system that you want to create or update the FileSystemPolicy for.

", "PutLifecycleConfigurationRequest$FileSystemId": "

The ID of the file system for which you are creating the LifecycleConfiguration object (String).

", "ReplicationConfigurationDescription$SourceFileSystemId": "

The ID of the source Amazon EFS file system that is being replicated.

", + "UpdateFileSystemProtectionRequest$FileSystemId": "

The ID of the file system to update.

", "UpdateFileSystemRequest$FileSystemId": "

The ID of the file system that you want to update.

" } }, @@ -478,7 +490,8 @@ "base": null, "refs": { "FileSystemSize$ValueInIA": "

The latest known metered size (in bytes) of data stored in the Infrequent Access storage class.

", - "FileSystemSize$ValueInStandard": "

The latest known metered size (in bytes) of data stored in the Standard storage class.

" + "FileSystemSize$ValueInStandard": "

The latest known metered size (in bytes) of data stored in the Standard storage class.

", + "FileSystemSize$ValueInArchive": "

The latest known metered size (in bytes) of data stored in the Archive storage class.

" } }, "FileSystemPolicyDescription": { @@ -486,6 +499,12 @@ "refs": { } }, + "FileSystemProtectionDescription": { + "base": "

Describes the protection on a file system.

", + "refs": { + "FileSystemDescription$FileSystemProtection": "

Describes the protection on the file system.

" + } + }, "FileSystemSize": { "base": "

The latest known metered size (in bytes) of data stored in the file system, in its Value field, and the time at which that size was determined in its Timestamp field. The value doesn't represent the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to the file system. That is, the value represents the actual size only if the file system is not modified for a period longer than a couple of hours. Otherwise, the value is not necessarily the exact size the file system was at any instant in time.

", "refs": { @@ -546,7 +565,7 @@ "base": null, "refs": { "CreateFileSystemRequest$KmsKeyId": "

The ID of the KMS key that you want to use to protect the encrypted file system. This parameter is required only if you want to use a non-default KMS key. If this parameter is not specified, the default KMS key for Amazon EFS is used. You can specify a KMS key ID using the following formats:

  • Key ID - A unique identifier of the key, for example 1234abcd-12ab-34cd-56ef-1234567890ab.

  • ARN - An Amazon Resource Name (ARN) for the key, for example arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias - A previously created display name for a key, for example alias/projectKey1.

  • Key alias ARN - An ARN for a key alias, for example arn:aws:kms:us-west-2:444455556666:alias/projectKey1.

If you use KmsKeyId, you must set the CreateFileSystemRequest$Encrypted parameter to true.

EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS keys with Amazon EFS file systems.

", - "DestinationToCreate$KmsKeyId": "

Specifies the Key Management Service (KMS) key that you want to use to encrypt the destination file system. If you do not specify a KMS key, Amazon EFS uses your default KMS key for Amazon EFS, /aws/elasticfilesystem. This ID can be in one of the following formats:

  • Key ID - The unique identifier of the key, for example 1234abcd-12ab-34cd-56ef-1234567890ab.

  • ARN - The Amazon Resource Name (ARN) for the key, for example arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias - A previously created display name for a key, for example alias/projectKey1.

  • Key alias ARN - The ARN for a key alias, for example arn:aws:kms:us-west-2:444455556666:alias/projectKey1.

", + "DestinationToCreate$KmsKeyId": "

Specify the Key Management Service (KMS) key that you want to use to encrypt the destination file system. If you do not specify a KMS key, Amazon EFS uses your default KMS key for Amazon EFS, /aws/elasticfilesystem. This ID can be in one of the following formats:

  • Key ID - The unique identifier of the key, for example 1234abcd-12ab-34cd-56ef-1234567890ab.

  • ARN - The Amazon Resource Name (ARN) for the key, for example arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias - A previously created display name for a key, for example alias/projectKey1.

  • Key alias ARN - The ARN for a key alias, for example arn:aws:kms:us-west-2:444455556666:alias/projectKey1.

", "FileSystemDescription$KmsKeyId": "

The ID of an KMS key used to protect the encrypted file system.

" } }, @@ -567,11 +586,11 @@ "base": null, "refs": { "LifecycleConfigurationDescription$LifecyclePolicies": "

An array of lifecycle management policies. EFS supports a maximum of one policy per file system.

", - "PutLifecycleConfigurationRequest$LifecyclePolicies": "

An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration object. A LifecycleConfiguration object informs EFS lifecycle management and EFS Intelligent-Tiering of the following:

  • When to move files in the file system from primary storage to the IA storage class.

  • When to move files that are in IA storage to primary storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition, TransitionToIA, TransitionToPrimaryStorageClass. See the example requests in the following section for more information.

" + "PutLifecycleConfigurationRequest$LifecyclePolicies": "

An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration object. A LifecycleConfiguration object informs EFS Lifecycle management of the following:

  • TransitionToIA – When to move files in the file system from primary storage (Standard storage class) into the Infrequent Access (IA) storage.

  • TransitionToArchive – When to move files in the file system from their current storage class (either IA or Standard storage) into the Archive storage.

    File systems cannot transition into Archive storage before transitioning into IA storage. Therefore, TransitionToArchive must either not be set or must be later than TransitionToIA.

    The Archive storage class is available only for file systems that use the Elastic Throughput mode and the General Purpose Performance mode.

  • TransitionToPrimaryStorageClass – Whether to move files in the file system back to primary storage (Standard storage class) after they are accessed in IA or Archive storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each storage transition. See the example requests in the following section for more information.

" } }, "LifecyclePolicy": { - "base": "

Describes a policy used by EFS lifecycle management and EFS Intelligent-Tiering that specifies when to transition files into and out of the file system's Infrequent Access (IA) storage class. For more information, see EFS Intelligent‐Tiering and EFS Lifecycle Management.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition, TransitionToIA, TransitionToPrimaryStorageClass. For more information, see the request examples in PutLifecycleConfiguration.

", + "base": "

Describes a policy used by Lifecycle management that specifies when to transition files into and out of storage classes. For more information, see Managing file system storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition. For more information, see the request examples in PutLifecycleConfiguration.

", "refs": { "LifecyclePolicies$member": null } @@ -703,8 +722,8 @@ "PerformanceMode": { "base": null, "refs": { - "CreateFileSystemRequest$PerformanceMode": "

The performance mode of the file system. We recommend generalPurpose performance mode for most file systems. File systems using the maxIO performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created.

The maxIO mode is not supported on file systems using One Zone storage classes.

", - "FileSystemDescription$PerformanceMode": "

The performance mode of the file system.

" + "CreateFileSystemRequest$PerformanceMode": "

The Performance mode of the file system. We recommend generalPurpose performance mode for all file systems. File systems using the maxIO performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. The maxIO mode is not supported on One Zone file systems.

Due to the higher per-operation latencies with Max I/O, we recommend using General Purpose performance mode for all file systems.

Default is generalPurpose.

", + "FileSystemDescription$PerformanceMode": "

The Performance mode of the file system.

" } }, "Permissions": { @@ -735,9 +754,9 @@ "ProvisionedThroughputInMibps": { "base": null, "refs": { - "CreateFileSystemRequest$ProvisionedThroughputInMibps": "

The throughput, measured in MiB/s, that you want to provision for a file system that you're creating. Valid values are 1-1024. Required if ThroughputMode is set to provisioned. The upper limit for throughput is 1024 MiB/s. To increase this limit, contact Amazon Web Services Support. For more information, see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.

", - "FileSystemDescription$ProvisionedThroughputInMibps": "

The amount of provisioned throughput, measured in MiB/s, for the file system. Valid for file systems using ThroughputMode set to provisioned.

", - "UpdateFileSystemRequest$ProvisionedThroughputInMibps": "

(Optional) Sets the amount of provisioned throughput, in MiB/s, for the file system. Valid values are 1-1024. If you are changing the throughput mode to provisioned, you must also provide the amount of provisioned throughput. Required if ThroughputMode is changed to provisioned on update.

" + "CreateFileSystemRequest$ProvisionedThroughputInMibps": "

The throughput, measured in mebibytes per second (MiBps), that you want to provision for a file system that you're creating. Required if ThroughputMode is set to provisioned. Valid values are 1-3414 MiBps, with the upper limit depending on Region. To increase this limit, contact Amazon Web Services Support. For more information, see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.

", + "FileSystemDescription$ProvisionedThroughputInMibps": "

The amount of provisioned throughput, measured in MiBps, for the file system. Valid for file systems using ThroughputMode set to provisioned.

", + "UpdateFileSystemRequest$ProvisionedThroughputInMibps": "

(Optional) The throughput, measured in mebibytes per second (MiBps), that you want to provision for a file system that you're creating. Required if ThroughputMode is set to provisioned. Valid values are 1-3414 MiBps, with the upper limit depending on Region. To increase this limit, contact Amazon Web Services Support. For more information, see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.

" } }, "PutAccountPreferencesRequest": { @@ -770,11 +789,16 @@ "refs": { "Destination$Region": "

The Amazon Web Services Region in which the destination file system is located.

", "DestinationToCreate$Region": "

To create a file system that uses Regional storage, specify the Amazon Web Services Region in which to create the destination file system.

", - "ReplicationConfigurationDescription$SourceFileSystemRegion": "

The Amazon Web Services Region in which the source Amazon EFS file system is located.

" + "ReplicationConfigurationDescription$SourceFileSystemRegion": "

The Amazon Web Services Region in which the source EFS file system is located.

" + } + }, + "ReplicationAlreadyExists": { + "base": "

Returned if the file system is already included in a replication configuration.>

", + "refs": { } }, "ReplicationConfigurationDescription": { - "base": null, + "base": "

Describes the replication configuration for a specific file system.

", "refs": { "ReplicationConfigurationDescriptions$member": null } @@ -790,10 +814,17 @@ "refs": { } }, + "ReplicationOverwriteProtection": { + "base": null, + "refs": { + "FileSystemProtectionDescription$ReplicationOverwriteProtection": "

The status of the file system's replication overwrite protection.

  • ENABLED – The file system cannot be used as the destination file system in a replication configuration. The file system is writeable. Replication overwrite protection is ENABLED by default.

  • DISABLED – The file system can be used as the destination file system in a replication configuration. The file system is read-only and can only be modified by EFS replication.

  • REPLICATING – The file system is being used as the destination file system in a replication configuration. The file system is read-only and is only modified only by EFS replication.

If the replication configuration is deleted, the file system's replication overwrite protection is re-enabled, the file system becomes writeable.

", + "UpdateFileSystemProtectionRequest$ReplicationOverwriteProtection": "

The status of the file system's replication overwrite protection.

  • ENABLED – The file system cannot be used as the destination file system in a replication configuration. The file system is writeable. Replication overwrite protection is ENABLED by default.

  • DISABLED – The file system can be used as the destination file system in a replication configuration. The file system is read-only and can only be modified by EFS replication.

  • REPLICATING – The file system is being used as the destination file system in a replication configuration. The file system is read-only and is only modified only by EFS replication.

If the replication configuration is deleted, the file system's replication overwrite protection is re-enabled, the file system becomes writeable.

" + } + }, "ReplicationStatus": { "base": null, "refs": { - "Destination$Status": "

Describes the status of the destination Amazon EFS file system.

  • The Paused state occurs as a result of opting out of the source or destination Region after the replication configuration was created. To resume replication for the file system, you need to again opt in to the Amazon Web Services Region. For more information, see Managing Amazon Web Services Regions in the Amazon Web Services General Reference Guide.

  • The Error state occurs when either the source or the destination file system (or both) is in a failed state and is unrecoverable. For more information, see Monitoring replication status in the Amazon EFS User Guide. You must delete the replication configuration, and then restore the most recent backup of the failed file system (either the source or the destination) to a new file system.

" + "Destination$Status": "

Describes the status of the destination EFS file system.

  • The Paused state occurs as a result of opting out of the source or destination Region after the replication configuration was created. To resume replication for the file system, you need to again opt in to the Amazon Web Services Region. For more information, see Managing Amazon Web Services Regions in the Amazon Web Services General Reference Guide.

  • The Error state occurs when either the source or the destination file system (or both) is in a failed state and is unrecoverable. For more information, see Monitoring replication status in the Amazon EFS User Guide. You must delete the replication configuration, and then restore the most recent backup of the failed file system (either the source or the destination) to a new file system.

" } }, "Resource": { @@ -833,8 +864,8 @@ "RootDirectory": { "base": "

Specifies the directory on the Amazon EFS file system that the access point provides access to. The access point exposes the specified file system path as the root directory of your file system to applications using the access point. NFS clients using the access point can only access data in the access point's RootDirectory and it's subdirectories.

", "refs": { - "AccessPointDescription$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.

", - "CreateAccessPointRequest$RootDirectory": "

Specifies the directory on the Amazon EFS file system that the access point exposes as the root directory of your file system to NFS clients using the access point. The clients using the access point can only access the root directory and below. If the RootDirectory > Path specified does not exist, EFS creates it and applies the CreationInfo settings when a client connects to an access point. When specifying a RootDirectory, you must provide the Path, and the CreationInfo.

Amazon EFS creates a root directory only if you have provided the CreationInfo: OwnUid, OwnGID, and permissions for the directory. If you do not provide this information, Amazon EFS does not create the root directory. If the root directory does not exist, attempts to mount using the access point will fail.

" + "AccessPointDescription$RootDirectory": "

The directory on the EFS file system that the access point exposes as the root directory to NFS clients using the access point.

", + "CreateAccessPointRequest$RootDirectory": "

Specifies the directory on the EFS file system that the access point exposes as the root directory of your file system to NFS clients using the access point. The clients using the access point can only access the root directory and below. If the RootDirectory > Path specified does not exist, Amazon EFS creates it and applies the CreationInfo settings when a client connects to an access point. When specifying a RootDirectory, you must provide the Path, and the CreationInfo.

Amazon EFS creates a root directory only if you have provided the CreationInfo: OwnUid, OwnGID, and permissions for the directory. If you do not provide this information, Amazon EFS does not create the root directory. If the root directory does not exist, attempts to mount using the access point will fail.

" } }, "SecondaryGids": { @@ -870,13 +901,13 @@ "Status": { "base": null, "refs": { - "BackupPolicy$Status": "

Describes the status of the file system's backup policy.

  • ENABLED - EFS is automatically backing up the file system.

  • ENABLING - EFS is turning on automatic backups for the file system.

  • DISABLED - Automatic back ups are turned off for the file system.

  • DISABLING - EFS is turning off automatic backups for the file system.

" + "BackupPolicy$Status": "

Describes the status of the file system's backup policy.

  • ENABLED – EFS is automatically backing up the file system.

  • ENABLING – EFS is turning on automatic backups for the file system.

  • DISABLED – Automatic back ups are turned off for the file system.

  • DISABLING – EFS is turning off automatic backups for the file system.

" } }, "SubnetId": { "base": null, "refs": { - "CreateMountTargetRequest$SubnetId": "

The ID of the subnet to add the mount target in. For file systems that use One Zone storage classes, use the subnet that is associated with the file system's Availability Zone.

", + "CreateMountTargetRequest$SubnetId": "

The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone.

", "MountTargetDescription$SubnetId": "

The ID of the mount target's subnet.

" } }, @@ -943,7 +974,7 @@ "ThroughputMode": { "base": null, "refs": { - "CreateFileSystemRequest$ThroughputMode": "

Specifies the throughput mode for the file system. The mode can be bursting, provisioned, or elastic. If you set ThroughputMode to provisioned, you must also set a value for ProvisionedThroughputInMibps. After you create the file system, you can decrease your file system's throughput in Provisioned Throughput mode or change between the throughput modes, with certain time restrictions. For more information, see Specifying throughput with provisioned mode in the Amazon EFS User Guide.

Default is bursting.

", + "CreateFileSystemRequest$ThroughputMode": "

Specifies the throughput mode for the file system. The mode can be bursting, provisioned, or elastic. If you set ThroughputMode to provisioned, you must also set a value for ProvisionedThroughputInMibps. After you create the file system, you can decrease your file system's Provisioned throughput or change between the throughput modes, with certain time restrictions. For more information, see Specifying throughput with provisioned mode in the Amazon EFS User Guide.

Default is bursting.

", "FileSystemDescription$ThroughputMode": "

Displays the file system's throughput mode. For more information, see Throughput modes in the Amazon EFS User Guide.

", "UpdateFileSystemRequest$ThroughputMode": "

(Optional) Updates the file system's throughput mode. If you're not updating your throughput mode, you don't need to provide this value in your request. If you are changing the ThroughputMode to provisioned, you must also set a value for ProvisionedThroughputInMibps.

" } @@ -975,16 +1006,22 @@ "refs": { } }, + "TransitionToArchiveRules": { + "base": null, + "refs": { + "LifecyclePolicy$TransitionToArchive": "

The number of days after files were last accessed in primary storage (the Standard storage class) files at which to move them to Archive storage. Metadata operations such as listing the contents of a directory don't count as file access events.

" + } + }, "TransitionToIARules": { "base": null, "refs": { - "LifecyclePolicy$TransitionToIA": "

Describes the period of time that a file is not accessed, after which it transitions to IA storage. Metadata operations such as listing the contents of a directory don't count as file access events.

" + "LifecyclePolicy$TransitionToIA": "

The number of days after files were last accessed in primary storage (the Standard storage class) at which to move them to Infrequent Access (IA) storage. Metadata operations such as listing the contents of a directory don't count as file access events.

" } }, "TransitionToPrimaryStorageClassRules": { "base": null, "refs": { - "LifecyclePolicy$TransitionToPrimaryStorageClass": "

Describes when to transition a file from IA storage to primary storage. Metadata operations such as listing the contents of a directory don't count as file access events.

" + "LifecyclePolicy$TransitionToPrimaryStorageClass": "

Whether to move files back to primary (Standard) storage after they are accessed in IA or Archive storage. Metadata operations such as listing the contents of a directory don't count as file access events.

" } }, "Uid": { @@ -1002,6 +1039,11 @@ "base": null, "refs": { } + }, + "UpdateFileSystemProtectionRequest": { + "base": null, + "refs": { + } }, "UpdateFileSystemRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://elasticfilesystem-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://elasticfilesystem-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://elasticfilesystem-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://elasticfilesystem-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://elasticfilesystem.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://elasticfilesystem.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://elasticfilesystem.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://elasticfilesystem.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticfilesystem/2015-02-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticfilesystem/2015-02-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,17 +3,32 @@ "DescribeAccessPoints": { "input_token": "NextToken", "output_token": "NextToken", - "limit_key": "MaxResults" + "limit_key": "MaxResults", + "result_key": "AccessPoints" }, "DescribeFileSystems": { "input_token": "Marker", "output_token": "NextMarker", - "limit_key": "MaxItems" + "limit_key": "MaxItems", + "result_key": "FileSystems" + }, + "DescribeMountTargets": { + "input_token": "Marker", + "output_token": "NextMarker", + "limit_key": "MaxItems", + "result_key": "MountTargets" + }, + "DescribeReplicationConfigurations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Replications" }, "DescribeTags": { "input_token": "Marker", "output_token": "NextMarker", - "limit_key": "MaxItems" + "limit_key": "MaxItems", + "result_key": "Tags" }, "ListTagsForResource": { "input_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -46,7 +46,26 @@ {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"ListenerNotFoundException"}, - {"shape":"RuleNotFoundException"} + {"shape":"RuleNotFoundException"}, + {"shape":"TrustStoreNotFoundException"} + ] + }, + "AddTrustStoreRevocations":{ + "name":"AddTrustStoreRevocations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AddTrustStoreRevocationsInput"}, + "output":{ + "shape":"AddTrustStoreRevocationsOutput", + "resultWrapper":"AddTrustStoreRevocationsResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"}, + {"shape":"InvalidRevocationContentException"}, + {"shape":"TooManyTrustStoreRevocationEntriesException"}, + {"shape":"RevocationContentNotFoundException"} ] }, "CreateListener":{ @@ -78,7 +97,9 @@ {"shape":"InvalidLoadBalancerActionException"}, {"shape":"TooManyUniqueTargetGroupsPerLoadBalancerException"}, {"shape":"ALPNPolicyNotSupportedException"}, - {"shape":"TooManyTagsException"} + {"shape":"TooManyTagsException"}, + {"shape":"TrustStoreNotFoundException"}, + {"shape":"TrustStoreNotReadyException"} ] }, "CreateLoadBalancer":{ @@ -155,6 +176,26 @@ {"shape":"TooManyTagsException"} ] }, + "CreateTrustStore":{ + "name":"CreateTrustStore", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateTrustStoreInput"}, + "output":{ + "shape":"CreateTrustStoreOutput", + "resultWrapper":"CreateTrustStoreResult" + }, + "errors":[ + {"shape":"DuplicateTrustStoreNameException"}, + {"shape":"TooManyTrustStoresException"}, + {"shape":"InvalidCaCertificatesBundleException"}, + {"shape":"CaCertificatesBundleNotFoundException"}, + {"shape":"TooManyTagsException"}, + {"shape":"DuplicateTagKeysException"} + ] + }, "DeleteListener":{ "name":"DeleteListener", "http":{ @@ -219,6 +260,22 @@ {"shape":"ResourceInUseException"} ] }, + "DeleteTrustStore":{ + "name":"DeleteTrustStore", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTrustStoreInput"}, + "output":{ + "shape":"DeleteTrustStoreOutput", + "resultWrapper":"DeleteTrustStoreResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"}, + {"shape":"TrustStoreInUseException"} + ] + }, "DeregisterTargets":{ "name":"DeregisterTargets", "http":{ @@ -356,7 +413,8 @@ {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"ListenerNotFoundException"}, - {"shape":"RuleNotFoundException"} + {"shape":"RuleNotFoundException"}, + {"shape":"TrustStoreNotFoundException"} ] }, "DescribeTargetGroupAttributes":{ @@ -407,6 +465,83 @@ {"shape":"HealthUnavailableException"} ] }, + "DescribeTrustStoreAssociations":{ + "name":"DescribeTrustStoreAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeTrustStoreAssociationsInput"}, + "output":{ + "shape":"DescribeTrustStoreAssociationsOutput", + "resultWrapper":"DescribeTrustStoreAssociationsResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"} + ] + }, + "DescribeTrustStoreRevocations":{ + "name":"DescribeTrustStoreRevocations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeTrustStoreRevocationsInput"}, + "output":{ + "shape":"DescribeTrustStoreRevocationsOutput", + "resultWrapper":"DescribeTrustStoreRevocationsResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"}, + {"shape":"RevocationIdNotFoundException"} + ] + }, + "DescribeTrustStores":{ + "name":"DescribeTrustStores", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeTrustStoresInput"}, + "output":{ + "shape":"DescribeTrustStoresOutput", + "resultWrapper":"DescribeTrustStoresResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"} + ] + }, + "GetTrustStoreCaCertificatesBundle":{ + "name":"GetTrustStoreCaCertificatesBundle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTrustStoreCaCertificatesBundleInput"}, + "output":{ + "shape":"GetTrustStoreCaCertificatesBundleOutput", + "resultWrapper":"GetTrustStoreCaCertificatesBundleResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"} + ] + }, + "GetTrustStoreRevocationContent":{ + "name":"GetTrustStoreRevocationContent", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTrustStoreRevocationContentInput"}, + "output":{ + "shape":"GetTrustStoreRevocationContentOutput", + "resultWrapper":"GetTrustStoreRevocationContentResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"}, + {"shape":"RevocationIdNotFoundException"} + ] + }, "ModifyListener":{ "name":"ModifyListener", "http":{ @@ -435,7 +570,9 @@ {"shape":"TooManyActionsException"}, {"shape":"InvalidLoadBalancerActionException"}, {"shape":"TooManyUniqueTargetGroupsPerLoadBalancerException"}, - {"shape":"ALPNPolicyNotSupportedException"} + {"shape":"ALPNPolicyNotSupportedException"}, + {"shape":"TrustStoreNotFoundException"}, + {"shape":"TrustStoreNotReadyException"} ] }, "ModifyLoadBalancerAttributes":{ @@ -511,6 +648,23 @@ {"shape":"InvalidConfigurationRequestException"} ] }, + "ModifyTrustStore":{ + "name":"ModifyTrustStore", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ModifyTrustStoreInput"}, + "output":{ + "shape":"ModifyTrustStoreOutput", + "resultWrapper":"ModifyTrustStoreResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"}, + {"shape":"InvalidCaCertificatesBundleException"}, + {"shape":"CaCertificatesBundleNotFoundException"} + ] + }, "RegisterTargets":{ "name":"RegisterTargets", "http":{ @@ -561,7 +715,24 @@ {"shape":"TargetGroupNotFoundException"}, {"shape":"ListenerNotFoundException"}, {"shape":"RuleNotFoundException"}, - {"shape":"TooManyTagsException"} + {"shape":"TooManyTagsException"}, + {"shape":"TrustStoreNotFoundException"} + ] + }, + "RemoveTrustStoreRevocations":{ + "name":"RemoveTrustStoreRevocations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RemoveTrustStoreRevocationsInput"}, + "output":{ + "shape":"RemoveTrustStoreRevocationsOutput", + "resultWrapper":"RemoveTrustStoreRevocationsResult" + }, + "errors":[ + {"shape":"TrustStoreNotFoundException"}, + {"shape":"RevocationIdNotFoundException"} ] }, "SetIpAddressType":{ @@ -714,6 +885,20 @@ "members":{ } }, + "AddTrustStoreRevocationsInput":{ + "type":"structure", + "required":["TrustStoreArn"], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "RevocationContents":{"shape":"RevocationContents"} + } + }, + "AddTrustStoreRevocationsOutput":{ + "type":"structure", + "members":{ + "TrustStoreRevocations":{"shape":"TrustStoreRevocations"} + } + }, "AllocationId":{"type":"string"}, "AllocationIdNotFoundException":{ "type":"structure", @@ -731,6 +916,20 @@ "member":{"shape":"AlpnPolicyValue"} }, "AlpnPolicyValue":{"type":"string"}, + "AnomalyDetection":{ + "type":"structure", + "members":{ + "Result":{"shape":"AnomalyResultEnum"}, + "MitigationInEffect":{"shape":"MitigationInEffectEnum"} + } + }, + "AnomalyResultEnum":{ + "type":"string", + "enum":[ + "anomalous", + "normal" + ] + }, "AuthenticateCognitoActionAuthenticationRequestExtraParams":{ "type":"map", "key":{"shape":"AuthenticateCognitoActionAuthenticationRequestParamName"}, @@ -843,6 +1042,17 @@ "type":"list", "member":{"shape":"AvailabilityZone"} }, + "CaCertificatesBundleNotFoundException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"CaCertificatesBundleNotFound", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "CanonicalHostedZoneId":{"type":"string"}, "Certificate":{ "type":"structure", @@ -898,7 +1108,8 @@ "Certificates":{"shape":"CertificateList"}, "DefaultActions":{"shape":"Actions"}, "AlpnPolicy":{"shape":"AlpnPolicyName"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "MutualAuthentication":{"shape":"MutualAuthenticationAttributes"} } }, "CreateListenerOutput":{ @@ -979,6 +1190,27 @@ "TargetGroups":{"shape":"TargetGroups"} } }, + "CreateTrustStoreInput":{ + "type":"structure", + "required":[ + "Name", + "CaCertificatesBundleS3Bucket", + "CaCertificatesBundleS3Key" + ], + "members":{ + "Name":{"shape":"TrustStoreName"}, + "CaCertificatesBundleS3Bucket":{"shape":"S3Bucket"}, + "CaCertificatesBundleS3Key":{"shape":"S3Key"}, + "CaCertificatesBundleS3ObjectVersion":{"shape":"S3ObjectVersion"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateTrustStoreOutput":{ + "type":"structure", + "members":{ + "TrustStores":{"shape":"TrustStores"} + } + }, "CreatedTime":{"type":"timestamp"}, "CustomerOwnedIpv4Pool":{ "type":"string", @@ -1035,6 +1267,18 @@ "members":{ } }, + "DeleteTrustStoreInput":{ + "type":"structure", + "required":["TrustStoreArn"], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"} + } + }, + "DeleteTrustStoreOutput":{ + "type":"structure", + "members":{ + } + }, "DeregisterTargetsInput":{ "type":"structure", "required":[ @@ -1206,15 +1450,85 @@ "required":["TargetGroupArn"], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, - "Targets":{"shape":"TargetDescriptions"} + "Targets":{"shape":"TargetDescriptions"}, + "Include":{"shape":"ListOfDescribeTargetHealthIncludeOptions"} } }, + "DescribeTargetHealthInputIncludeEnum":{ + "type":"string", + "enum":[ + "AnomalyDetection", + "All" + ] + }, "DescribeTargetHealthOutput":{ "type":"structure", "members":{ "TargetHealthDescriptions":{"shape":"TargetHealthDescriptions"} } }, + "DescribeTrustStoreAssociationsInput":{ + "type":"structure", + "required":["TrustStoreArn"], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "Marker":{"shape":"Marker"}, + "PageSize":{"shape":"PageSize"} + } + }, + "DescribeTrustStoreAssociationsOutput":{ + "type":"structure", + "members":{ + "TrustStoreAssociations":{"shape":"TrustStoreAssociations"}, + "NextMarker":{"shape":"Marker"} + } + }, + "DescribeTrustStoreRevocation":{ + "type":"structure", + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "RevocationId":{"shape":"RevocationId"}, + "RevocationType":{"shape":"RevocationType"}, + "NumberOfRevokedEntries":{"shape":"NumberOfRevokedEntries"} + } + }, + "DescribeTrustStoreRevocationResponse":{ + "type":"list", + "member":{"shape":"DescribeTrustStoreRevocation"} + }, + "DescribeTrustStoreRevocationsInput":{ + "type":"structure", + "required":["TrustStoreArn"], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "RevocationIds":{"shape":"RevocationIds"}, + "Marker":{"shape":"Marker"}, + "PageSize":{"shape":"PageSize"} + } + }, + "DescribeTrustStoreRevocationsOutput":{ + "type":"structure", + "members":{ + "TrustStoreRevocations":{"shape":"DescribeTrustStoreRevocationResponse"}, + "NextMarker":{"shape":"Marker"} + } + }, + "DescribeTrustStoresInput":{ + "type":"structure", + "members":{ + "TrustStoreArns":{"shape":"TrustStoreArns"}, + "Names":{"shape":"TrustStoreNames"}, + "Marker":{"shape":"Marker"}, + "PageSize":{"shape":"PageSize"} + } + }, + "DescribeTrustStoresOutput":{ + "type":"structure", + "members":{ + "TrustStores":{"shape":"TrustStores"}, + "NextMarker":{"shape":"Marker"} + } + }, "Description":{"type":"string"}, "DuplicateListenerException":{ "type":"structure", @@ -1260,6 +1574,17 @@ }, "exception":true }, + "DuplicateTrustStoreNameException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"DuplicateTrustStoreName", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic":{"type":"string"}, "EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnum":{ "type":"string", @@ -1298,6 +1623,36 @@ "TargetGroupStickinessConfig":{"shape":"TargetGroupStickinessConfig"} } }, + "GetTrustStoreCaCertificatesBundleInput":{ + "type":"structure", + "required":["TrustStoreArn"], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"} + } + }, + "GetTrustStoreCaCertificatesBundleOutput":{ + "type":"structure", + "members":{ + "Location":{"shape":"Location"} + } + }, + "GetTrustStoreRevocationContentInput":{ + "type":"structure", + "required":[ + "TrustStoreArn", + "RevocationId" + ], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "RevocationId":{"shape":"RevocationId"} + } + }, + "GetTrustStoreRevocationContentOutput":{ + "type":"structure", + "members":{ + "Location":{"shape":"Location"} + } + }, "GrpcCode":{"type":"string"}, "HealthCheckEnabled":{"type":"boolean"}, "HealthCheckIntervalSeconds":{ @@ -1348,6 +1703,7 @@ } }, "IPv6Address":{"type":"string"}, + "IgnoreClientCertificateExpiry":{"type":"boolean"}, "IncompatibleProtocolsException":{ "type":"structure", "members":{ @@ -1359,6 +1715,17 @@ }, "exception":true }, + "InvalidCaCertificatesBundleException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"InvalidCaCertificatesBundle", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "InvalidConfigurationRequestException":{ "type":"structure", "members":{ @@ -1381,6 +1748,17 @@ }, "exception":true }, + "InvalidRevocationContentException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"InvalidRevocationContent", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "InvalidSchemeException":{ "type":"structure", "members":{ @@ -1445,6 +1823,10 @@ "type":"list", "member":{"shape":"Limit"} }, + "ListOfDescribeTargetHealthIncludeOptions":{ + "type":"list", + "member":{"shape":"DescribeTargetHealthInputIncludeEnum"} + }, "ListOfString":{ "type":"list", "member":{"shape":"StringValue"} @@ -1459,7 +1841,8 @@ "Certificates":{"shape":"CertificateList"}, "SslPolicy":{"shape":"SslPolicyName"}, "DefaultActions":{"shape":"Actions"}, - "AlpnPolicy":{"shape":"AlpnPolicyName"} + "AlpnPolicy":{"shape":"AlpnPolicyName"}, + "MutualAuthentication":{"shape":"MutualAuthenticationAttributes"} } }, "ListenerArn":{"type":"string"}, @@ -1591,6 +1974,7 @@ "type":"list", "member":{"shape":"LoadBalancer"} }, + "Location":{"type":"string"}, "Marker":{"type":"string"}, "Matcher":{ "type":"structure", @@ -1600,6 +1984,14 @@ } }, "Max":{"type":"string"}, + "MitigationInEffectEnum":{ + "type":"string", + "enum":[ + "yes", + "no" + ] + }, + "Mode":{"type":"string"}, "ModifyListenerInput":{ "type":"structure", "required":["ListenerArn"], @@ -1610,7 +2002,8 @@ "SslPolicy":{"shape":"SslPolicyName"}, "Certificates":{"shape":"CertificateList"}, "DefaultActions":{"shape":"Actions"}, - "AlpnPolicy":{"shape":"AlpnPolicyName"} + "AlpnPolicy":{"shape":"AlpnPolicyName"}, + "MutualAuthentication":{"shape":"MutualAuthenticationAttributes"} } }, "ModifyListenerOutput":{ @@ -1690,7 +2083,37 @@ "TargetGroups":{"shape":"TargetGroups"} } }, + "ModifyTrustStoreInput":{ + "type":"structure", + "required":[ + "TrustStoreArn", + "CaCertificatesBundleS3Bucket", + "CaCertificatesBundleS3Key" + ], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "CaCertificatesBundleS3Bucket":{"shape":"S3Bucket"}, + "CaCertificatesBundleS3Key":{"shape":"S3Key"}, + "CaCertificatesBundleS3ObjectVersion":{"shape":"S3ObjectVersion"} + } + }, + "ModifyTrustStoreOutput":{ + "type":"structure", + "members":{ + "TrustStores":{"shape":"TrustStores"} + } + }, + "MutualAuthenticationAttributes":{ + "type":"structure", + "members":{ + "Mode":{"shape":"Mode"}, + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "IgnoreClientCertificateExpiry":{"shape":"IgnoreClientCertificateExpiry"} + } + }, "Name":{"type":"string"}, + "NumberOfCaCertificates":{"type":"integer"}, + "NumberOfRevokedEntries":{"type":"long"}, "OperationNotPermittedException":{ "type":"structure", "members":{ @@ -1853,6 +2276,22 @@ "members":{ } }, + "RemoveTrustStoreRevocationsInput":{ + "type":"structure", + "required":[ + "TrustStoreArn", + "RevocationIds" + ], + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "RevocationIds":{"shape":"RevocationIds"} + } + }, + "RemoveTrustStoreRevocationsOutput":{ + "type":"structure", + "members":{ + } + }, "ResourceArn":{"type":"string"}, "ResourceArns":{ "type":"list", @@ -1869,6 +2308,50 @@ }, "exception":true }, + "RevocationContent":{ + "type":"structure", + "members":{ + "S3Bucket":{"shape":"S3Bucket"}, + "S3Key":{"shape":"S3Key"}, + "S3ObjectVersion":{"shape":"S3ObjectVersion"}, + "RevocationType":{"shape":"RevocationType"} + } + }, + "RevocationContentNotFoundException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"RevocationContentNotFound", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "RevocationContents":{ + "type":"list", + "member":{"shape":"RevocationContent"} + }, + "RevocationId":{"type":"long"}, + "RevocationIdNotFoundException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"RevocationIdNotFound", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "RevocationIds":{ + "type":"list", + "member":{"shape":"RevocationId"} + }, + "RevocationType":{ + "type":"string", + "enum":["CRL"] + }, "Rule":{ "type":"structure", "members":{ @@ -1932,6 +2415,9 @@ "type":"list", "member":{"shape":"Rule"} }, + "S3Bucket":{"type":"string"}, + "S3Key":{"type":"string"}, + "S3ObjectVersion":{"type":"string"}, "SSLPolicyNotFoundException":{ "type":"structure", "members":{ @@ -2245,7 +2731,8 @@ "members":{ "Target":{"shape":"TargetDescription"}, "HealthCheckPort":{"shape":"HealthCheckPort"}, - "TargetHealth":{"shape":"TargetHealth"} + "TargetHealth":{"shape":"TargetHealth"}, + "AnomalyDetection":{"shape":"AnomalyDetection"} } }, "TargetHealthDescriptions":{ @@ -2389,6 +2876,28 @@ }, "exception":true }, + "TooManyTrustStoreRevocationEntriesException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TooManyTrustStoreRevocationEntries", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TooManyTrustStoresException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TooManyTrustStores", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "TooManyUniqueTargetGroupsPerLoadBalancerException":{ "type":"structure", "members":{ @@ -2400,6 +2909,100 @@ }, "exception":true }, + "TotalRevokedEntries":{"type":"long"}, + "TrustStore":{ + "type":"structure", + "members":{ + "Name":{"shape":"TrustStoreName"}, + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "Status":{"shape":"TrustStoreStatus"}, + "NumberOfCaCertificates":{"shape":"NumberOfCaCertificates"}, + "TotalRevokedEntries":{"shape":"TotalRevokedEntries"} + } + }, + "TrustStoreArn":{"type":"string"}, + "TrustStoreArns":{ + "type":"list", + "member":{"shape":"TrustStoreArn"} + }, + "TrustStoreAssociation":{ + "type":"structure", + "members":{ + "ResourceArn":{"shape":"TrustStoreAssociationResourceArn"} + } + }, + "TrustStoreAssociationResourceArn":{"type":"string"}, + "TrustStoreAssociations":{ + "type":"list", + "member":{"shape":"TrustStoreAssociation"} + }, + "TrustStoreInUseException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TrustStoreInUse", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TrustStoreName":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^([a-zA-Z0-9]+-)*[a-zA-Z0-9]+$" + }, + "TrustStoreNames":{ + "type":"list", + "member":{"shape":"TrustStoreName"} + }, + "TrustStoreNotFoundException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TrustStoreNotFound", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TrustStoreNotReadyException":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TrustStoreNotReady", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TrustStoreRevocation":{ + "type":"structure", + "members":{ + "TrustStoreArn":{"shape":"TrustStoreArn"}, + "RevocationId":{"shape":"RevocationId"}, + "RevocationType":{"shape":"RevocationType"}, + "NumberOfRevokedEntries":{"shape":"NumberOfRevokedEntries"} + } + }, + "TrustStoreRevocations":{ + "type":"list", + "member":{"shape":"TrustStoreRevocation"} + }, + "TrustStoreStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "CREATING" + ] + }, + "TrustStores":{ + "type":"list", + "member":{"shape":"TrustStore"} + }, "UnsupportedProtocolException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,15 +3,18 @@ "service": "Elastic Load Balancing

A load balancer distributes incoming traffic across targets, such as your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered targets and ensures that it routes traffic only to healthy targets. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer. You configure a target group with a protocol and port number for connections from the load balancer to the targets, and with health check settings to be used when checking the health status of the targets.

Elastic Load Balancing supports the following types of load balancers: Application Load Balancers, Network Load Balancers, Gateway Load Balancers, and Classic Load Balancers. This reference covers the following load balancer types:

  • Application Load Balancer - Operates at the application layer (layer 7) and supports HTTP and HTTPS.

  • Network Load Balancer - Operates at the transport layer (layer 4) and supports TCP, TLS, and UDP.

  • Gateway Load Balancer - Operates at the network layer (layer 3).

For more information, see the Elastic Load Balancing User Guide.

All Elastic Load Balancing operations are idempotent, which means that they complete at most one time. If you repeat an operation, it succeeds.

", "operations": { "AddListenerCertificates": "

Adds the specified SSL server certificate to the certificate list for the specified HTTPS or TLS listener.

If the certificate in already in the certificate list, the call is successful but the certificate is not added again.

For more information, see HTTPS listeners in the Application Load Balancers Guide or TLS listeners in the Network Load Balancers Guide.

", - "AddTags": "

Adds the specified tags to the specified Elastic Load Balancing resource. You can tag your Application Load Balancers, Network Load Balancers, Gateway Load Balancers, target groups, listeners, and rules.

Each tag consists of a key and an optional value. If a resource already has a tag with the same key, AddTags updates its value.

", + "AddTags": "

Adds the specified tags to the specified Elastic Load Balancing resource. You can tag your Application Load Balancers, Network Load Balancers, Gateway Load Balancers, target groups, trust stores, listeners, and rules.

Each tag consists of a key and an optional value. If a resource already has a tag with the same key, AddTags updates its value.

", + "AddTrustStoreRevocations": "

Adds the specified revocation file to the specified trust store.

", "CreateListener": "

Creates a listener for the specified Application Load Balancer, Network Load Balancer, or Gateway Load Balancer.

For more information, see the following:

This operation is idempotent, which means that it completes at most one time. If you attempt to create multiple listeners with the same settings, each call succeeds.

", "CreateLoadBalancer": "

Creates an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer.

For more information, see the following:

This operation is idempotent, which means that it completes at most one time. If you attempt to create multiple load balancers with the same settings, each call succeeds.

", "CreateRule": "

Creates a rule for the specified listener. The listener must be associated with an Application Load Balancer.

Each rule consists of a priority, one or more actions, and one or more conditions. Rules are evaluated in priority order, from the lowest value to the highest value. When the conditions for a rule are met, its actions are performed. If the conditions for no rules are met, the actions for the default rule are performed. For more information, see Listener rules in the Application Load Balancers Guide.

", "CreateTargetGroup": "

Creates a target group.

For more information, see the following:

This operation is idempotent, which means that it completes at most one time. If you attempt to create multiple target groups with the same settings, each call succeeds.

", + "CreateTrustStore": "

Creates a trust store.

", "DeleteListener": "

Deletes the specified listener.

Alternatively, your listener is deleted when you delete the load balancer to which it is attached.

", "DeleteLoadBalancer": "

Deletes the specified Application Load Balancer, Network Load Balancer, or Gateway Load Balancer. Deleting a load balancer also deletes its listeners.

You can't delete a load balancer if deletion protection is enabled. If the load balancer does not exist or has already been deleted, the call succeeds.

Deleting a load balancer does not affect its registered targets. For example, your EC2 instances continue to run and are still registered to their target groups. If you no longer need these EC2 instances, you can stop or terminate them.

", "DeleteRule": "

Deletes the specified rule.

You can't delete the default rule.

", "DeleteTargetGroup": "

Deletes the specified target group.

You can delete a target group if it is not referenced by any actions. Deleting a target group also deletes any associated health checks. Deleting a target group does not affect its registered targets. For example, any EC2 instances continue to run until you stop or terminate them.

", + "DeleteTrustStore": "

Deletes a trust store.

", "DeregisterTargets": "

Deregisters the specified targets from the specified target group. After the targets are deregistered, they no longer receive traffic from the load balancer.

The load balancer stops sending requests to targets that are deregistering, but uses connection draining to ensure that in-flight traffic completes on the existing connections. This deregistration delay is configured by default but can be updated for each target group.

For more information, see the following:

Note: If the specified target does not exist, the action returns successfully.

", "DescribeAccountLimits": "

Describes the current Elastic Load Balancing resource limits for your Amazon Web Services account.

For more information, see the following:

", "DescribeListenerCertificates": "

Describes the default certificate and the certificate list for the specified HTTPS or TLS listener.

If the default certificate is also in the certificate list, it appears twice in the results (once with IsDefault set to true and once with IsDefault set to false).

For more information, see SSL certificates in the Application Load Balancers Guide or Server certificates in the Network Load Balancers Guide.

", @@ -24,18 +27,25 @@ "DescribeTargetGroupAttributes": "

Describes the attributes for the specified target group.

For more information, see the following:

", "DescribeTargetGroups": "

Describes the specified target groups or all of your target groups. By default, all target groups are described. Alternatively, you can specify one of the following to filter the results: the ARN of the load balancer, the names of one or more target groups, or the ARNs of one or more target groups.

", "DescribeTargetHealth": "

Describes the health of the specified targets or all of your targets.

", + "DescribeTrustStoreAssociations": "

Describes all resources associated with the specified trust store.

", + "DescribeTrustStoreRevocations": "

Describes the revocation files in use by the specified trust store arn, or revocation ID.

", + "DescribeTrustStores": "

Describes all trust stores for a given account by trust store arn’s or name.

", + "GetTrustStoreCaCertificatesBundle": "

Retrieves the ca certificate bundle.

This action returns a pre-signed S3 URI which is active for ten minutes.

", + "GetTrustStoreRevocationContent": "

Retrieves the specified revocation file.

This action returns a pre-signed S3 URI which is active for ten minutes.

", "ModifyListener": "

Replaces the specified properties of the specified listener. Any properties that you do not specify remain unchanged.

Changing the protocol from HTTPS to HTTP, or from TLS to TCP, removes the security policy and default certificate properties. If you change the protocol from HTTP to HTTPS, or from TCP to TLS, you must add the security policy and default certificate properties.

To add an item to a list, remove an item from a list, or update an item in a list, you must provide the entire list. For example, to add an action, specify a list with the current actions plus the new action.

", "ModifyLoadBalancerAttributes": "

Modifies the specified attributes of the specified Application Load Balancer, Network Load Balancer, or Gateway Load Balancer.

If any of the specified attributes can't be modified as requested, the call fails. Any existing attributes that you do not modify retain their current values.

", "ModifyRule": "

Replaces the specified properties of the specified rule. Any properties that you do not specify are unchanged.

To add an item to a list, remove an item from a list, or update an item in a list, you must provide the entire list. For example, to add an action, specify a list with the current actions plus the new action.

", "ModifyTargetGroup": "

Modifies the health checks used when evaluating the health state of the targets in the specified target group.

", "ModifyTargetGroupAttributes": "

Modifies the specified attributes of the specified target group.

", + "ModifyTrustStore": "

Update the ca certificate bundle for a given trust store.

", "RegisterTargets": "

Registers the specified targets with the specified target group.

If the target is an EC2 instance, it must be in the running state when you register it.

By default, the load balancer routes requests to registered targets using the protocol and port for the target group. Alternatively, you can override the port for a target when you register it. You can register each EC2 instance or IP address with the same target group multiple times using different ports.

With a Network Load Balancer, you cannot register instances by instance ID if they have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1. You can register instances of these types by IP address.

", "RemoveListenerCertificates": "

Removes the specified certificate from the certificate list for the specified HTTPS or TLS listener.

", "RemoveTags": "

Removes the specified tags from the specified Elastic Load Balancing resources. You can remove the tags for one or more Application Load Balancers, Network Load Balancers, Gateway Load Balancers, target groups, listeners, or rules.

", + "RemoveTrustStoreRevocations": "

Removes the specified revocation file from the specified trust store.

", "SetIpAddressType": "

Sets the type of IP addresses used by the subnets of the specified load balancer.

", "SetRulePriorities": "

Sets the priorities of the specified rules.

You can reorder the rules as long as there are no priority conflicts in the new order. Any existing rules that you do not specify retain their current priority.

", "SetSecurityGroups": "

Associates the specified security groups with the specified Application Load Balancer or Network Load Balancer. The specified security groups override the previously associated security groups.

You can't perform this operation on a Network Load Balancer unless you specified a security group for the load balancer when you created it.

You can't associate a security group with a Gateway Load Balancer.

", - "SetSubnets": "

Enables the Availability Zones for the specified public subnets for the specified Application Load Balancer or Network Load Balancer. The specified subnets replace the previously enabled subnets.

When you specify subnets for a Network Load Balancer, you must include all subnets that were enabled previously, with their existing configurations, plus any additional subnets.

" + "SetSubnets": "

Enables the Availability Zones for the specified public subnets for the specified Application Load Balancer, Network Load Balancer or Gateway Load Balancer. The specified subnets replace the previously enabled subnets.

When you specify subnets for a Network Load Balancer, or Gateway Load Balancer you must include all subnets that were enabled previously, with their existing configurations, plus any additional subnets.

" }, "shapes": { "ALPNPolicyNotSupportedException": { @@ -92,6 +102,16 @@ "refs": { } }, + "AddTrustStoreRevocationsInput": { + "base": null, + "refs": { + } + }, + "AddTrustStoreRevocationsOutput": { + "base": null, + "refs": { + } + }, "AllocationId": { "base": null, "refs": { @@ -118,6 +138,18 @@ "AlpnPolicyName$member": null } }, + "AnomalyDetection": { + "base": "

Information about anomaly detection and mitigation.

", + "refs": { + "TargetHealthDescription$AnomalyDetection": "

The anomaly detection result for the target.

If no anomalies were detected, the result is normal.

If anomalies were detected, the result is anomalous.

" + } + }, + "AnomalyResultEnum": { + "base": null, + "refs": { + "AnomalyDetection$Result": "

The latest anomaly detection result.

" + } + }, "AuthenticateCognitoActionAuthenticationRequestExtraParams": { "base": null, "refs": { @@ -292,6 +324,11 @@ "SetSubnetsOutput$AvailabilityZones": "

Information about the subnets.

" } }, + "CaCertificatesBundleNotFoundException": { + "base": "

The specified ca certificate bundle does not exist.

", + "refs": { + } + }, "CanonicalHostedZoneId": { "base": null, "refs": { @@ -397,6 +434,16 @@ "refs": { } }, + "CreateTrustStoreInput": { + "base": null, + "refs": { + } + }, + "CreateTrustStoreOutput": { + "base": null, + "refs": { + } + }, "CreatedTime": { "base": null, "refs": { @@ -462,6 +509,16 @@ "refs": { } }, + "DeleteTrustStoreInput": { + "base": null, + "refs": { + } + }, + "DeleteTrustStoreOutput": { + "base": null, + "refs": { + } + }, "DeregisterTargetsInput": { "base": null, "refs": { @@ -577,11 +634,59 @@ "refs": { } }, + "DescribeTargetHealthInputIncludeEnum": { + "base": null, + "refs": { + "ListOfDescribeTargetHealthIncludeOptions$member": null + } + }, "DescribeTargetHealthOutput": { "base": null, "refs": { } }, + "DescribeTrustStoreAssociationsInput": { + "base": null, + "refs": { + } + }, + "DescribeTrustStoreAssociationsOutput": { + "base": null, + "refs": { + } + }, + "DescribeTrustStoreRevocation": { + "base": "

Information about the revocations used by a trust store.

", + "refs": { + "DescribeTrustStoreRevocationResponse$member": null + } + }, + "DescribeTrustStoreRevocationResponse": { + "base": null, + "refs": { + "DescribeTrustStoreRevocationsOutput$TrustStoreRevocations": "

Information about the revocation file in the trust store.

" + } + }, + "DescribeTrustStoreRevocationsInput": { + "base": null, + "refs": { + } + }, + "DescribeTrustStoreRevocationsOutput": { + "base": null, + "refs": { + } + }, + "DescribeTrustStoresInput": { + "base": null, + "refs": { + } + }, + "DescribeTrustStoresOutput": { + "base": null, + "refs": { + } + }, "Description": { "base": null, "refs": { @@ -608,6 +713,11 @@ "refs": { } }, + "DuplicateTrustStoreNameException": { + "base": "

A trust store with the specified name already exists.

", + "refs": { + } + }, "EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic": { "base": null, "refs": { @@ -651,6 +761,26 @@ "Action$ForwardConfig": "

Information for creating an action that distributes requests among one or more target groups. For Network Load Balancers, you can specify a single target group. Specify only when Type is forward. If you specify both ForwardConfig and TargetGroupArn, you can specify only one target group using ForwardConfig and it must be the same target group specified in TargetGroupArn.

" } }, + "GetTrustStoreCaCertificatesBundleInput": { + "base": null, + "refs": { + } + }, + "GetTrustStoreCaCertificatesBundleOutput": { + "base": null, + "refs": { + } + }, + "GetTrustStoreRevocationContentInput": { + "base": null, + "refs": { + } + }, + "GetTrustStoreRevocationContentOutput": { + "base": null, + "refs": { + } + }, "GrpcCode": { "base": null, "refs": { @@ -743,11 +873,22 @@ "SubnetMapping$IPv6Address": "

[Network Load Balancers] The IPv6 address.

" } }, + "IgnoreClientCertificateExpiry": { + "base": null, + "refs": { + "MutualAuthenticationAttributes$IgnoreClientCertificateExpiry": "

Indicates whether expired client certificates are ignored.

" + } + }, "IncompatibleProtocolsException": { "base": "

The specified configuration is not valid with this protocol.

", "refs": { } }, + "InvalidCaCertificatesBundleException": { + "base": "

The specified ca certificate bundle is in an invalid format, or corrupt.

", + "refs": { + } + }, "InvalidConfigurationRequestException": { "base": "

The requested configuration is not valid.

", "refs": { @@ -758,6 +899,11 @@ "refs": { } }, + "InvalidRevocationContentException": { + "base": "

The provided revocation file is an invalid format, or uses an incorrect algorithm.

", + "refs": { + } + }, "InvalidSchemeException": { "base": "

The requested scheme is not valid.

", "refs": { @@ -791,8 +937,8 @@ "LoadBalancer$IpAddressType": "

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).

", "SetIpAddressTypeInput$IpAddressType": "

The IP address type. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses). You can’t specify dualstack for a load balancer with a UDP or TCP_UDP listener.

", "SetIpAddressTypeOutput$IpAddressType": "

The IP address type.

", - "SetSubnetsInput$IpAddressType": "

[Network Load Balancers] The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses). You can’t specify dualstack for a load balancer with a UDP or TCP_UDP listener.

", - "SetSubnetsOutput$IpAddressType": "

[Network Load Balancers] The IP address type.

" + "SetSubnetsInput$IpAddressType": "

[Network Load Balancers] The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses). You can’t specify dualstack for a load balancer with a UDP or TCP_UDP listener.

[Gateway Load Balancers] The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).

", + "SetSubnetsOutput$IpAddressType": "

[Network Load Balancers] The IP address type.

[Gateway Load Balancers] The IP address type.

" } }, "IsDefault": { @@ -813,6 +959,12 @@ "DescribeAccountLimitsOutput$Limits": "

Information about the limits.

" } }, + "ListOfDescribeTargetHealthIncludeOptions": { + "base": null, + "refs": { + "DescribeTargetHealthInput$Include": "

Used to inclue anomaly detection information.

" + } + }, "ListOfString": { "base": null, "refs": { @@ -915,7 +1067,7 @@ "LoadBalancerAttributeKey": { "base": null, "refs": { - "LoadBalancerAttribute$Key": "

The name of the attribute.

The following attributes are supported by all load balancers:

  • deletion_protection.enabled - Indicates whether deletion protection is enabled. The value is true or false. The default is false.

  • load_balancing.cross_zone.enabled - Indicates whether cross-zone load balancing is enabled. The possible values are true and false. The default for Network Load Balancers and Gateway Load Balancers is false. The default for Application Load Balancers is true, and cannot be changed.

The following attributes are supported by both Application Load Balancers and Network Load Balancers:

  • access_logs.s3.enabled - Indicates whether access logs are enabled. The value is true or false. The default is false.

  • access_logs.s3.bucket - The name of the S3 bucket for the access logs. This attribute is required if access logs are enabled. The bucket must exist in the same region as the load balancer and have a bucket policy that grants Elastic Load Balancing permissions to write to the bucket.

  • access_logs.s3.prefix - The prefix for the location in the S3 bucket for the access logs.

  • ipv6.deny_all_igw_traffic - Blocks internet gateway (IGW) access to the load balancer. It is set to false for internet-facing load balancers and true for internal load balancers, preventing unintended access to your internal load balancer through an internet gateway.

The following attributes are supported by only Application Load Balancers:

  • idle_timeout.timeout_seconds - The idle timeout value, in seconds. The valid range is 1-4000 seconds. The default is 60 seconds.

  • routing.http.desync_mitigation_mode - Determines how the load balancer handles requests that might pose a security risk to your application. The possible values are monitor, defensive, and strictest. The default is defensive.

  • routing.http.drop_invalid_header_fields.enabled - Indicates whether HTTP headers with invalid header fields are removed by the load balancer (true) or routed to targets (false). The default is false.

  • routing.http.preserve_host_header.enabled - Indicates whether the Application Load Balancer should preserve the Host header in the HTTP request and send it to the target without any change. The possible values are true and false. The default is false.

  • routing.http.x_amzn_tls_version_and_cipher_suite.enabled - Indicates whether the two headers (x-amzn-tls-version and x-amzn-tls-cipher-suite), which contain information about the negotiated TLS version and cipher suite, are added to the client request before sending it to the target. The x-amzn-tls-version header has information about the TLS protocol version negotiated with the client, and the x-amzn-tls-cipher-suite header has information about the cipher suite negotiated with the client. Both headers are in OpenSSL format. The possible values for the attribute are true and false. The default is false.

  • routing.http.xff_client_port.enabled - Indicates whether the X-Forwarded-For header should preserve the source port that the client used to connect to the load balancer. The possible values are true and false. The default is false.

  • routing.http.xff_header_processing.mode - Enables you to modify, preserve, or remove the X-Forwarded-For header in the HTTP request before the Application Load Balancer sends the request to the target. The possible values are append, preserve, and remove. The default is append.

    • If the value is append, the Application Load Balancer adds the client IP address (of the last hop) to the X-Forwarded-For header in the HTTP request before it sends it to targets.

    • If the value is preserve the Application Load Balancer preserves the X-Forwarded-For header in the HTTP request, and sends it to targets without any change.

    • If the value is remove, the Application Load Balancer removes the X-Forwarded-For header in the HTTP request before it sends it to targets.

  • routing.http2.enabled - Indicates whether HTTP/2 is enabled. The possible values are true and false. The default is true. Elastic Load Balancing requires that message header names contain only alphanumeric characters and hyphens.

  • waf.fail_open.enabled - Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to Amazon Web Services WAF. The possible values are true and false. The default is false.

" + "LoadBalancerAttribute$Key": "

The name of the attribute.

The following attributes are supported by all load balancers:

  • deletion_protection.enabled - Indicates whether deletion protection is enabled. The value is true or false. The default is false.

  • load_balancing.cross_zone.enabled - Indicates whether cross-zone load balancing is enabled. The possible values are true and false. The default for Network Load Balancers and Gateway Load Balancers is false. The default for Application Load Balancers is true, and cannot be changed.

The following attributes are supported by both Application Load Balancers and Network Load Balancers:

  • access_logs.s3.enabled - Indicates whether access logs are enabled. The value is true or false. The default is false.

  • access_logs.s3.bucket - The name of the S3 bucket for the access logs. This attribute is required if access logs are enabled. The bucket must exist in the same region as the load balancer and have a bucket policy that grants Elastic Load Balancing permissions to write to the bucket.

  • access_logs.s3.prefix - The prefix for the location in the S3 bucket for the access logs.

  • ipv6.deny_all_igw_traffic - Blocks internet gateway (IGW) access to the load balancer. It is set to false for internet-facing load balancers and true for internal load balancers, preventing unintended access to your internal load balancer through an internet gateway.

The following attributes are supported by only Application Load Balancers:

  • idle_timeout.timeout_seconds - The idle timeout value, in seconds. The valid range is 1-4000 seconds. The default is 60 seconds.

  • connection_logs.s3.enabled - Indicates whether connection logs are enabled. The value is true or false. The default is false.

  • connection_logs.s3.bucket - The name of the S3 bucket for the connection logs. This attribute is required if connection logs are enabled. The bucket must exist in the same region as the load balancer and have a bucket policy that grants Elastic Load Balancing permissions to write to the bucket.

  • connection_logs.s3.prefix - The prefix for the location in the S3 bucket for the connection logs.

  • routing.http.desync_mitigation_mode - Determines how the load balancer handles requests that might pose a security risk to your application. The possible values are monitor, defensive, and strictest. The default is defensive.

  • routing.http.drop_invalid_header_fields.enabled - Indicates whether HTTP headers with invalid header fields are removed by the load balancer (true) or routed to targets (false). The default is false.

  • routing.http.preserve_host_header.enabled - Indicates whether the Application Load Balancer should preserve the Host header in the HTTP request and send it to the target without any change. The possible values are true and false. The default is false.

  • routing.http.x_amzn_tls_version_and_cipher_suite.enabled - Indicates whether the two headers (x-amzn-tls-version and x-amzn-tls-cipher-suite), which contain information about the negotiated TLS version and cipher suite, are added to the client request before sending it to the target. The x-amzn-tls-version header has information about the TLS protocol version negotiated with the client, and the x-amzn-tls-cipher-suite header has information about the cipher suite negotiated with the client. Both headers are in OpenSSL format. The possible values for the attribute are true and false. The default is false.

  • routing.http.xff_client_port.enabled - Indicates whether the X-Forwarded-For header should preserve the source port that the client used to connect to the load balancer. The possible values are true and false. The default is false.

  • routing.http.xff_header_processing.mode - Enables you to modify, preserve, or remove the X-Forwarded-For header in the HTTP request before the Application Load Balancer sends the request to the target. The possible values are append, preserve, and remove. The default is append.

    • If the value is append, the Application Load Balancer adds the client IP address (of the last hop) to the X-Forwarded-For header in the HTTP request before it sends it to targets.

    • If the value is preserve the Application Load Balancer preserves the X-Forwarded-For header in the HTTP request, and sends it to targets without any change.

    • If the value is remove, the Application Load Balancer removes the X-Forwarded-For header in the HTTP request before it sends it to targets.

  • routing.http2.enabled - Indicates whether HTTP/2 is enabled. The possible values are true and false. The default is true. Elastic Load Balancing requires that message header names contain only alphanumeric characters and hyphens.

  • waf.fail_open.enabled - Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to Amazon Web Services WAF. The possible values are true and false. The default is false.

The following attributes are supported by only Network Load Balancers:

  • dns_record.client_routing_policy - Indicates how traffic is distributed among the load balancer Availability Zones. The possible values are availability_zone_affinity with 100 percent zonal affinity, partial_availability_zone_affinity with 85 percent zonal affinity, and any_availability_zone with 0 percent zonal affinity.

" } }, "LoadBalancerAttributeValue": { @@ -985,6 +1137,13 @@ "DescribeLoadBalancersOutput$LoadBalancers": "

Information about the load balancers.

" } }, + "Location": { + "base": null, + "refs": { + "GetTrustStoreCaCertificatesBundleOutput$Location": "

The ca certificate bundles Amazon S3 URI.

", + "GetTrustStoreRevocationContentOutput$Location": "

The revocation files Amazon S3 URI.

" + } + }, "Marker": { "base": null, "refs": { @@ -1001,7 +1160,13 @@ "DescribeSSLPoliciesInput$Marker": "

The marker for the next set of results. (You received this marker from a previous call.)

", "DescribeSSLPoliciesOutput$NextMarker": "

If there are additional results, this is the marker for the next set of results. Otherwise, this is null.

", "DescribeTargetGroupsInput$Marker": "

The marker for the next set of results. (You received this marker from a previous call.)

", - "DescribeTargetGroupsOutput$NextMarker": "

If there are additional results, this is the marker for the next set of results. Otherwise, this is null.

" + "DescribeTargetGroupsOutput$NextMarker": "

If there are additional results, this is the marker for the next set of results. Otherwise, this is null.

", + "DescribeTrustStoreAssociationsInput$Marker": "

The marker for the next set of results. (You received this marker from a previous call.)

", + "DescribeTrustStoreAssociationsOutput$NextMarker": "

If there are additional results, this is the marker for the next set of results. Otherwise, this is null.

", + "DescribeTrustStoreRevocationsInput$Marker": "

The marker for the next set of results. (You received this marker from a previous call.)

", + "DescribeTrustStoreRevocationsOutput$NextMarker": "

If there are additional results, this is the marker for the next set of results. Otherwise, this is null.

", + "DescribeTrustStoresInput$Marker": "

The marker for the next set of results. (You received this marker from a previous call.)

", + "DescribeTrustStoresOutput$NextMarker": "

If there are additional results, this is the marker for the next set of results. Otherwise, this is null.

" } }, "Matcher": { @@ -1018,6 +1183,18 @@ "Limit$Max": "

The maximum value of the limit.

" } }, + "MitigationInEffectEnum": { + "base": null, + "refs": { + "AnomalyDetection$MitigationInEffect": "

Indicates whether anomaly mitigation is in progress.

" + } + }, + "Mode": { + "base": null, + "refs": { + "MutualAuthenticationAttributes$Mode": "

The client certificate handling method. Options are off, passthrough or verify. The default value is off.

" + } + }, "ModifyListenerInput": { "base": null, "refs": { @@ -1068,12 +1245,43 @@ "refs": { } }, + "ModifyTrustStoreInput": { + "base": null, + "refs": { + } + }, + "ModifyTrustStoreOutput": { + "base": null, + "refs": { + } + }, + "MutualAuthenticationAttributes": { + "base": "

Information about the mutual authentication attributes of a listener.

", + "refs": { + "CreateListenerInput$MutualAuthentication": "

The mutual authentication configuration information.

", + "Listener$MutualAuthentication": "

The mutual authentication configuration information.

", + "ModifyListenerInput$MutualAuthentication": "

The mutual authentication configuration information.

" + } + }, "Name": { "base": null, "refs": { "Limit$Name": "

The name of the limit. The possible values are:

  • application-load-balancers

  • condition-values-per-alb-rule

  • condition-wildcards-per-alb-rule

  • gateway-load-balancers

  • gateway-load-balancers-per-vpc

  • geneve-target-groups

  • listeners-per-application-load-balancer

  • listeners-per-network-load-balancer

  • network-load-balancers

  • rules-per-application-load-balancer

  • target-groups

  • target-groups-per-action-on-application-load-balancer

  • target-groups-per-action-on-network-load-balancer

  • target-groups-per-application-load-balancer

  • targets-per-application-load-balancer

  • targets-per-availability-zone-per-gateway-load-balancer

  • targets-per-availability-zone-per-network-load-balancer

  • targets-per-network-load-balancer

" } }, + "NumberOfCaCertificates": { + "base": null, + "refs": { + "TrustStore$NumberOfCaCertificates": "

The number of ca certificates in the trust store.

" + } + }, + "NumberOfRevokedEntries": { + "base": null, + "refs": { + "DescribeTrustStoreRevocation$NumberOfRevokedEntries": "

The number of revoked certificates.

", + "TrustStoreRevocation$NumberOfRevokedEntries": "

The number of revoked certificates.

" + } + }, "OperationNotPermittedException": { "base": "

This operation is not allowed.

", "refs": { @@ -1094,7 +1302,10 @@ "DescribeLoadBalancersInput$PageSize": "

The maximum number of results to return with this call.

", "DescribeRulesInput$PageSize": "

The maximum number of results to return with this call.

", "DescribeSSLPoliciesInput$PageSize": "

The maximum number of results to return with this call.

", - "DescribeTargetGroupsInput$PageSize": "

The maximum number of results to return with this call.

" + "DescribeTargetGroupsInput$PageSize": "

The maximum number of results to return with this call.

", + "DescribeTrustStoreAssociationsInput$PageSize": "

The maximum number of results to return with this call.

", + "DescribeTrustStoreRevocationsInput$PageSize": "

The maximum number of results to return with this call.

", + "DescribeTrustStoresInput$PageSize": "

The maximum number of results to return with this call.

" } }, "Path": { @@ -1244,6 +1455,16 @@ "refs": { } }, + "RemoveTrustStoreRevocationsInput": { + "base": null, + "refs": { + } + }, + "RemoveTrustStoreRevocationsOutput": { + "base": null, + "refs": { + } + }, "ResourceArn": { "base": null, "refs": { @@ -1264,6 +1485,52 @@ "refs": { } }, + "RevocationContent": { + "base": "

Information about a revocation file.

", + "refs": { + "RevocationContents$member": null + } + }, + "RevocationContentNotFoundException": { + "base": "

The specified revocation file does not exist.

", + "refs": { + } + }, + "RevocationContents": { + "base": null, + "refs": { + "AddTrustStoreRevocationsInput$RevocationContents": "

The revocation file to add.

" + } + }, + "RevocationId": { + "base": null, + "refs": { + "DescribeTrustStoreRevocation$RevocationId": "

The revocation ID of a revocation file in use.

", + "GetTrustStoreRevocationContentInput$RevocationId": "

The revocation ID of the revocation file.

", + "RevocationIds$member": null, + "TrustStoreRevocation$RevocationId": "

The revocation ID of the revocation file.

" + } + }, + "RevocationIdNotFoundException": { + "base": "

The specified revocation ID does not exist.

", + "refs": { + } + }, + "RevocationIds": { + "base": null, + "refs": { + "DescribeTrustStoreRevocationsInput$RevocationIds": "

The revocation IDs of the revocation files you want to describe.

", + "RemoveTrustStoreRevocationsInput$RevocationIds": "

The revocation IDs of the revocation files you want to remove.

" + } + }, + "RevocationType": { + "base": null, + "refs": { + "DescribeTrustStoreRevocation$RevocationType": "

The type of revocation file.

", + "RevocationContent$RevocationType": "

The type of revocation file.

", + "TrustStoreRevocation$RevocationType": "

The type of revocation file.

" + } + }, "Rule": { "base": "

Information about a rule.

", "refs": { @@ -1333,6 +1600,30 @@ "SetRulePrioritiesOutput$Rules": "

Information about the rules.

" } }, + "S3Bucket": { + "base": null, + "refs": { + "CreateTrustStoreInput$CaCertificatesBundleS3Bucket": "

The Amazon S3 bucket for the ca certificates bundle.

", + "ModifyTrustStoreInput$CaCertificatesBundleS3Bucket": "

The Amazon S3 bucket for the ca certificates bundle.

", + "RevocationContent$S3Bucket": "

The Amazon S3 bucket for the revocation file.

" + } + }, + "S3Key": { + "base": null, + "refs": { + "CreateTrustStoreInput$CaCertificatesBundleS3Key": "

The Amazon S3 path for the ca certificates bundle.

", + "ModifyTrustStoreInput$CaCertificatesBundleS3Key": "

The Amazon S3 path for the ca certificates bundle.

", + "RevocationContent$S3Key": "

The Amazon S3 path for the revocation file.

" + } + }, + "S3ObjectVersion": { + "base": null, + "refs": { + "CreateTrustStoreInput$CaCertificatesBundleS3ObjectVersion": "

The Amazon S3 object version for the ca certificates bundle. If undefined the current version is used.

", + "ModifyTrustStoreInput$CaCertificatesBundleS3ObjectVersion": "

The Amazon S3 object version for the ca certificates bundle. If undefined the current version is used.

", + "RevocationContent$S3ObjectVersion": "

The Amazon S3 object version of the revocation file.

" + } + }, "SSLPolicyNotFoundException": { "base": "

The specified SSL policy does not exist.

", "refs": { @@ -1477,7 +1768,7 @@ "base": null, "refs": { "CreateLoadBalancerInput$SubnetMappings": "

The IDs of the public subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings, but not both.

[Application Load Balancers] You must specify subnets from at least two Availability Zones. You cannot specify Elastic IP addresses for your subnets.

[Application Load Balancers on Outposts] You must specify one Outpost subnet.

[Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

[Network Load Balancers] You can specify subnets from one or more Availability Zones. You can specify one Elastic IP address per subnet if you need static IP addresses for your internet-facing load balancer. For internal load balancers, you can specify one private IP address per subnet from the IPv4 range of the subnet. For internet-facing load balancer, you can specify one IPv6 address per subnet.

[Gateway Load Balancers] You can specify subnets from one or more Availability Zones. You cannot specify Elastic IP addresses for your subnets.

", - "SetSubnetsInput$SubnetMappings": "

The IDs of the public subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings.

[Application Load Balancers] You must specify subnets from at least two Availability Zones. You cannot specify Elastic IP addresses for your subnets.

[Application Load Balancers on Outposts] You must specify one Outpost subnet.

[Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

[Network Load Balancers] You can specify subnets from one or more Availability Zones. You can specify one Elastic IP address per subnet if you need static IP addresses for your internet-facing load balancer. For internal load balancers, you can specify one private IP address per subnet from the IPv4 range of the subnet. For internet-facing load balancer, you can specify one IPv6 address per subnet.

" + "SetSubnetsInput$SubnetMappings": "

The IDs of the public subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings.

[Application Load Balancers] You must specify subnets from at least two Availability Zones. You cannot specify Elastic IP addresses for your subnets.

[Application Load Balancers on Outposts] You must specify one Outpost subnet.

[Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

[Network Load Balancers] You can specify subnets from one or more Availability Zones. You can specify one Elastic IP address per subnet if you need static IP addresses for your internet-facing load balancer. For internal load balancers, you can specify one private IP address per subnet from the IPv4 range of the subnet. For internet-facing load balancer, you can specify one IPv6 address per subnet.

[Gateway Load Balancers] You can specify subnets from one or more Availability Zones.

" } }, "SubnetNotFoundException": { @@ -1489,7 +1780,7 @@ "base": null, "refs": { "CreateLoadBalancerInput$Subnets": "

The IDs of the public subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings, but not both. To specify an Elastic IP address, specify subnet mappings instead of subnets.

[Application Load Balancers] You must specify subnets from at least two Availability Zones.

[Application Load Balancers on Outposts] You must specify one Outpost subnet.

[Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

[Network Load Balancers] You can specify subnets from one or more Availability Zones.

[Gateway Load Balancers] You can specify subnets from one or more Availability Zones.

", - "SetSubnetsInput$Subnets": "

The IDs of the public subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings.

[Application Load Balancers] You must specify subnets from at least two Availability Zones.

[Application Load Balancers on Outposts] You must specify one Outpost subnet.

[Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

[Network Load Balancers] You can specify subnets from one or more Availability Zones.

" + "SetSubnetsInput$Subnets": "

The IDs of the public subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings.

[Application Load Balancers] You must specify subnets from at least two Availability Zones.

[Application Load Balancers on Outposts] You must specify one Outpost subnet.

[Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

[Network Load Balancers] You can specify subnets from one or more Availability Zones.

[Gateway Load Balancers] You can specify subnets from one or more Availability Zones.

" } }, "Tag": { @@ -1531,6 +1822,7 @@ "CreateLoadBalancerInput$Tags": "

The tags to assign to the load balancer.

", "CreateRuleInput$Tags": "

The tags to assign to the rule.

", "CreateTargetGroupInput$Tags": "

The tags to assign to the target group.

", + "CreateTrustStoreInput$Tags": "

The tags to assign to the trust store.

", "TagDescription$Tags": "

Information about the tags.

" } }, @@ -1597,7 +1889,7 @@ "TargetGroupAttributeKey": { "base": null, "refs": { - "TargetGroupAttribute$Key": "

The name of the attribute.

The following attributes are supported by all load balancers:

  • deregistration_delay.timeout_seconds - The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported.

  • stickiness.enabled - Indicates whether target stickiness is enabled. The value is true or false. The default is false.

  • stickiness.type - Indicates the type of stickiness. The possible values are:

    • lb_cookie and app_cookie for Application Load Balancers.

    • source_ip for Network Load Balancers.

    • source_ip_dest_ip and source_ip_dest_ip_proto for Gateway Load Balancers.

The following attributes are supported by Application Load Balancers and Network Load Balancers:

  • load_balancing.cross_zone.enabled - Indicates whether cross zone load balancing is enabled. The value is true, false or use_load_balancer_configuration. The default is use_load_balancer_configuration.

  • target_group_health.dns_failover.minimum_healthy_targets.count - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are off or an integer from 1 to the maximum number of targets. The default is off.

  • target_group_health.dns_failover.minimum_healthy_targets.percentage - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are off or an integer from 1 to 100. The default is off.

  • target_group_health.unhealthy_state_routing.minimum_healthy_targets.count - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are 1 to the maximum number of targets. The default is 1.

  • target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are off or an integer from 1 to 100. The default is off.

The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address:

  • load_balancing.algorithm.type - The load balancing algorithm determines how the load balancer selects targets when routing requests. The value is round_robin or least_outstanding_requests. The default is round_robin.

  • slow_start.duration_seconds - The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled).

  • stickiness.app_cookie.cookie_name - Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed: AWSALB, AWSALBAPP, and AWSALBTG; they're reserved for use by the load balancer.

  • stickiness.app_cookie.duration_seconds - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).

  • stickiness.lb_cookie.duration_seconds - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).

The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function:

  • lambda.multi_value_headers.enabled - Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value is true or false. The default is false. If the value is false and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client.

The following attributes are supported only by Network Load Balancers:

  • deregistration_delay.connection_termination.enabled - Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value is true or false. For new UDP/TCP_UDP target groups the default is true. Otherwise, the default is false.

  • preserve_client_ip.enabled - Indicates whether client IP preservation is enabled. The value is true or false. The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation cannot be disabled for UDP and TCP_UDP target groups.

  • proxy_protocol_v2.enabled - Indicates whether Proxy Protocol version 2 is enabled. The value is true or false. The default is false.

  • target_health_state.unhealthy.connection_termination.enabled - Indicates whether the load balancer terminates connections to unhealthy targets. The value is true or false. The default is true.

The following attributes are supported only by Gateway Load Balancers:

  • target_failover.on_deregistration - Indicates how the Gateway Load Balancer handles existing flows when a target is deregistered. The possible values are rebalance and no_rebalance. The default is no_rebalance. The two attributes (target_failover.on_deregistration and target_failover.on_unhealthy) can't be set independently. The value you set for both attributes must be the same.

  • target_failover.on_unhealthy - Indicates how the Gateway Load Balancer handles existing flows when a target is unhealthy. The possible values are rebalance and no_rebalance. The default is no_rebalance. The two attributes (target_failover.on_deregistration and target_failover.on_unhealthy) cannot be set independently. The value you set for both attributes must be the same.

" + "TargetGroupAttribute$Key": "

The name of the attribute.

The following attributes are supported by all load balancers:

  • deregistration_delay.timeout_seconds - The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported.

  • stickiness.enabled - Indicates whether target stickiness is enabled. The value is true or false. The default is false.

  • stickiness.type - Indicates the type of stickiness. The possible values are:

    • lb_cookie and app_cookie for Application Load Balancers.

    • source_ip for Network Load Balancers.

    • source_ip_dest_ip and source_ip_dest_ip_proto for Gateway Load Balancers.

The following attributes are supported by Application Load Balancers and Network Load Balancers:

  • load_balancing.cross_zone.enabled - Indicates whether cross zone load balancing is enabled. The value is true, false or use_load_balancer_configuration. The default is use_load_balancer_configuration.

  • target_group_health.dns_failover.minimum_healthy_targets.count - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are off or an integer from 1 to the maximum number of targets. The default is off.

  • target_group_health.dns_failover.minimum_healthy_targets.percentage - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are off or an integer from 1 to 100. The default is off.

  • target_group_health.unhealthy_state_routing.minimum_healthy_targets.count - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are 1 to the maximum number of targets. The default is 1.

  • target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are off or an integer from 1 to 100. The default is off.

The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address:

  • load_balancing.algorithm.type - The load balancing algorithm determines how the load balancer selects targets when routing requests. The value is round_robin, least_outstanding_requests, or weighted_random. The default is round_robin.

  • load_balancing.algorithm.anomaly_mitigation - Only available when load_balancing.algorithm.type is weighted_random. Indicates whether anomaly mitigation is enabled. The value is on or off. The default is off.

  • slow_start.duration_seconds - The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled).

  • stickiness.app_cookie.cookie_name - Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed: AWSALB, AWSALBAPP, and AWSALBTG; they're reserved for use by the load balancer.

  • stickiness.app_cookie.duration_seconds - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).

  • stickiness.lb_cookie.duration_seconds - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).

The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function:

  • lambda.multi_value_headers.enabled - Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value is true or false. The default is false. If the value is false and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client.

The following attributes are supported only by Network Load Balancers:

  • deregistration_delay.connection_termination.enabled - Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value is true or false. For new UDP/TCP_UDP target groups the default is true. Otherwise, the default is false.

  • preserve_client_ip.enabled - Indicates whether client IP preservation is enabled. The value is true or false. The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation cannot be disabled for UDP and TCP_UDP target groups.

  • proxy_protocol_v2.enabled - Indicates whether Proxy Protocol version 2 is enabled. The value is true or false. The default is false.

  • target_health_state.unhealthy.connection_termination.enabled - Indicates whether the load balancer terminates connections to unhealthy targets. The value is true or false. The default is true.

The following attributes are supported only by Gateway Load Balancers:

  • target_failover.on_deregistration - Indicates how the Gateway Load Balancer handles existing flows when a target is deregistered. The possible values are rebalance and no_rebalance. The default is no_rebalance. The two attributes (target_failover.on_deregistration and target_failover.on_unhealthy) can't be set independently. The value you set for both attributes must be the same.

  • target_failover.on_unhealthy - Indicates how the Gateway Load Balancer handles existing flows when a target is unhealthy. The possible values are rebalance and no_rebalance. The default is no_rebalance. The two attributes (target_failover.on_deregistration and target_failover.on_unhealthy) cannot be set independently. The value you set for both attributes must be the same.

" } }, "TargetGroupAttributeValue": { @@ -1758,7 +2050,7 @@ } }, "TooManyTagsException": { - "base": "

You've reached the limit on the number of tags per load balancer.

", + "base": "

You've reached the limit on the number of tags for this resource.

", "refs": { } }, @@ -1772,11 +2064,130 @@ "refs": { } }, + "TooManyTrustStoreRevocationEntriesException": { + "base": "

The specified trust store has too many revocation entries.

", + "refs": { + } + }, + "TooManyTrustStoresException": { + "base": "

You've reached the limit on the number of trust stores for your Amazon Web Services account.

", + "refs": { + } + }, "TooManyUniqueTargetGroupsPerLoadBalancerException": { "base": "

You've reached the limit on the number of unique target groups per load balancer across all listeners. If a target group is used by multiple actions for a load balancer, it is counted as only one use.

", "refs": { } }, + "TotalRevokedEntries": { + "base": null, + "refs": { + "TrustStore$TotalRevokedEntries": "

The number of revoked certificates in the trust store.

" + } + }, + "TrustStore": { + "base": "

Information about a trust store.

", + "refs": { + "TrustStores$member": null + } + }, + "TrustStoreArn": { + "base": null, + "refs": { + "AddTrustStoreRevocationsInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "DeleteTrustStoreInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "DescribeTrustStoreAssociationsInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "DescribeTrustStoreRevocation$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "DescribeTrustStoreRevocationsInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "GetTrustStoreCaCertificatesBundleInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "GetTrustStoreRevocationContentInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "ModifyTrustStoreInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "MutualAuthenticationAttributes$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "RemoveTrustStoreRevocationsInput$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "TrustStore$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

", + "TrustStoreArns$member": null, + "TrustStoreRevocation$TrustStoreArn": "

The Amazon Resource Name (ARN) of the trust store.

" + } + }, + "TrustStoreArns": { + "base": null, + "refs": { + "DescribeTrustStoresInput$TrustStoreArns": "

The Amazon Resource Name (ARN) of the trust store.

" + } + }, + "TrustStoreAssociation": { + "base": "

Information about the resources a trust store is associated with.

", + "refs": { + "TrustStoreAssociations$member": null + } + }, + "TrustStoreAssociationResourceArn": { + "base": null, + "refs": { + "TrustStoreAssociation$ResourceArn": "

The Amazon Resource Name (ARN) of the resource.

" + } + }, + "TrustStoreAssociations": { + "base": null, + "refs": { + "DescribeTrustStoreAssociationsOutput$TrustStoreAssociations": "

Information about the resources the trust store is associated to.

" + } + }, + "TrustStoreInUseException": { + "base": "

The specified trust store is currently in use.

", + "refs": { + } + }, + "TrustStoreName": { + "base": null, + "refs": { + "CreateTrustStoreInput$Name": "

The name of the trust store.

This name must be unique per region and cannot be changed after creation.

", + "TrustStore$Name": "

The name of the trust store.

", + "TrustStoreNames$member": null + } + }, + "TrustStoreNames": { + "base": null, + "refs": { + "DescribeTrustStoresInput$Names": "

The names of the trust stores.

" + } + }, + "TrustStoreNotFoundException": { + "base": "

The specified trust store does not exist.

", + "refs": { + } + }, + "TrustStoreNotReadyException": { + "base": "

The specified trust store is not active.

", + "refs": { + } + }, + "TrustStoreRevocation": { + "base": "

Information about a revocation file in use by a trust store.

", + "refs": { + "TrustStoreRevocations$member": null + } + }, + "TrustStoreRevocations": { + "base": null, + "refs": { + "AddTrustStoreRevocationsOutput$TrustStoreRevocations": "

Information about the revocation file added to the trust store.

" + } + }, + "TrustStoreStatus": { + "base": null, + "refs": { + "TrustStore$Status": "

The current status of the trust store.

" + } + }, + "TrustStores": { + "base": null, + "refs": { + "CreateTrustStoreOutput$TrustStores": "

Information about the trust store created.

", + "DescribeTrustStoresOutput$TrustStores": "

Information about the trust stores.

", + "ModifyTrustStoreOutput$TrustStores": "

Information about the modified trust store.

" + } + }, "UnsupportedProtocolException": { "base": "

The specified protocol is not supported.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticloadbalancingv2/2015-12-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticloadbalancingv2/2015-12-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -14,6 +14,21 @@ "input_token": "Marker", "output_token": "NextMarker", "result_key": "TargetGroups" + }, + "DescribeTrustStoreAssociations": { + "input_token": "Marker", + "limit_key": "PageSize", + "output_token": "NextMarker" + }, + "DescribeTrustStoreRevocations": { + "input_token": "Marker", + "limit_key": "PageSize", + "output_token": "NextMarker" + }, + "DescribeTrustStores": { + "input_token": "Marker", + "limit_key": "PageSize", + "output_token": "NextMarker" } } } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticmapreduce/2009-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticmapreduce/2009-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticmapreduce/2009-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticmapreduce/2009-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -975,7 +975,9 @@ "OutpostArn":{"shape":"OptionalArnType"}, "StepConcurrencyLevel":{"shape":"Integer"}, "PlacementGroups":{"shape":"PlacementGroupConfigList"}, - "OSReleaseLabel":{"shape":"String"} + "OSReleaseLabel":{"shape":"String"}, + "EbsRootVolumeIops":{"shape":"Integer"}, + "EbsRootVolumeThroughput":{"shape":"Integer"} } }, "ClusterId":{"type":"string"}, @@ -1150,7 +1152,11 @@ "DefaultS3Location":{"shape":"XmlString"}, "IdpAuthUrl":{"shape":"XmlString"}, "IdpRelayStateParameterName":{"shape":"XmlStringMaxLen256"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "TrustedIdentityPropagationEnabled":{"shape":"BooleanObject"}, + "IdcUserAssignment":{"shape":"IdcUserAssignment"}, + "IdcInstanceArn":{"shape":"ArnType"}, + "EncryptionKeyArn":{"shape":"XmlString"} } }, "CreateStudioOutput":{ @@ -1464,10 +1470,7 @@ }, "GetClusterSessionCredentialsInput":{ "type":"structure", - "required":[ - "ClusterId", - "ExecutionRoleArn" - ], + "required":["ClusterId"], "members":{ "ClusterId":{"shape":"XmlStringMaxLen256"}, "ExecutionRoleArn":{"shape":"ArnType"} @@ -1537,6 +1540,13 @@ "min":20, "pattern":"^arn:(aws[a-zA-Z0-9-]*):iam::(\\d{12})?:(role((\\u002F)|(\\u002F[\\u0021-\\u007F]+\\u002F))[\\w+=,.@-]+)$" }, + "IdcUserAssignment":{ + "type":"string", + "enum":[ + "REQUIRED", + "OPTIONAL" + ] + }, "IdentityType":{ "type":"string", "enum":[ @@ -2728,7 +2738,9 @@ "ManagedScalingPolicy":{"shape":"ManagedScalingPolicy"}, "PlacementGroupConfigs":{"shape":"PlacementGroupConfigList"}, "AutoTerminationPolicy":{"shape":"AutoTerminationPolicy"}, - "OSReleaseLabel":{"shape":"XmlStringMaxLen256"} + "OSReleaseLabel":{"shape":"XmlStringMaxLen256"}, + "EbsRootVolumeIops":{"shape":"Integer"}, + "EbsRootVolumeThroughput":{"shape":"Integer"} } }, "RunJobFlowOutput":{ @@ -3135,7 +3147,11 @@ "DefaultS3Location":{"shape":"XmlString"}, "IdpAuthUrl":{"shape":"XmlString"}, "IdpRelayStateParameterName":{"shape":"XmlStringMaxLen256"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "IdcInstanceArn":{"shape":"ArnType"}, + "TrustedIdentityPropagationEnabled":{"shape":"BooleanObject"}, + "IdcUserAssignment":{"shape":"IdcUserAssignment"}, + "EncryptionKeyArn":{"shape":"XmlString"} } }, "StudioSummary":{ @@ -3251,7 +3267,8 @@ "Name":{"shape":"XmlStringMaxLen256"}, "Description":{"shape":"XmlStringMaxLen256"}, "SubnetIds":{"shape":"SubnetIdList"}, - "DefaultS3Location":{"shape":"XmlString"} + "DefaultS3Location":{"shape":"XmlString"}, + "EncryptionKeyArn":{"shape":"XmlString"} } }, "UpdateStudioSessionMappingInput":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticmapreduce/2009-03-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticmapreduce/2009-03-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticmapreduce/2009-03-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticmapreduce/2009-03-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -134,9 +134,11 @@ "BlockPublicAccessConfigurationMetadata$CreatedByArn": "

The Amazon Resource Name that created or last modified the configuration.

", "Cluster$ClusterArn": "

The Amazon Resource Name of the cluster.

", "ClusterSummary$ClusterArn": "

The Amazon Resource Name of the cluster.

", + "CreateStudioInput$IdcInstanceArn": "

The ARN of the IAM Identity Center instance to create the Studio application.

", "GetClusterSessionCredentialsInput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the runtime role for interactive workload submission on the cluster. The runtime role can be a cross-account IAM role. The runtime role ARN is a combination of account ID, role name, and role type using the following format: arn:partition:service:region:account:resource.

", "PutAutoScalingPolicyOutput$ClusterArn": "

The Amazon Resource Name (ARN) of the cluster.

", - "RunJobFlowOutput$ClusterArn": "

The Amazon Resource Name (ARN) of the cluster.

" + "RunJobFlowOutput$ClusterArn": "

The Amazon Resource Name (ARN) of the cluster.

", + "Studio$IdcInstanceArn": "

The ARN of the IAM Identity Center instance the Studio application belongs to.

" } }, "AuthMode": { @@ -230,9 +232,11 @@ "BooleanObject": { "base": null, "refs": { + "CreateStudioInput$TrustedIdentityPropagationEnabled": "

A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false.

", "EbsConfiguration$EbsOptimized": "

Indicates whether an Amazon EBS volume is EBS-optimized.

", "InstanceGroup$EbsOptimized": "

If the instance group is EBS-optimized. An Amazon EBS-optimized instance uses an optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O.

", - "InstanceTypeSpecification$EbsOptimized": "

Evaluates to TRUE when the specified InstanceType is EBS-optimized.

" + "InstanceTypeSpecification$EbsOptimized": "

Evaluates to TRUE when the specified InstanceType is EBS-optimized.

", + "Studio$TrustedIdentityPropagationEnabled": "

Indicates whether the Studio has Trusted identity propagation enabled. The default value is false.

" } }, "BootstrapActionConfig": { @@ -792,6 +796,13 @@ "ExecutionEngineConfig$ExecutionRoleArn": "

The execution role ARN required for the notebook execution.

" } }, + "IdcUserAssignment": { + "base": null, + "refs": { + "CreateStudioInput$IdcUserAssignment": "

Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.

", + "Studio$IdcUserAssignment": "

Indicates whether the Studio has REQUIRED or OPTIONAL IAM Identity Center user assignment. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.

" + } + }, "IdentityType": { "base": null, "refs": { @@ -1132,6 +1143,8 @@ "Cluster$NormalizedInstanceHours": "

An approximation of the cost of the cluster, represented in m1.small/hours. This value is incremented one time for every hour an m1.small instance runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

", "Cluster$EbsRootVolumeSize": "

The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x and later.

", "Cluster$StepConcurrencyLevel": "

Specifies the number of steps that can be executed concurrently.

", + "Cluster$EbsRootVolumeIops": "

The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and later.

", + "Cluster$EbsRootVolumeThroughput": "

The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and later.

", "ClusterSummary$NormalizedInstanceHours": "

An approximation of the cost of the cluster, represented in m1.small/hours. This value is incremented one time for every hour an m1.small instance runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

", "ComputeLimits$MinimumCapacityUnits": "

The lower boundary of Amazon EC2 units. It is measured through vCPU cores or instances for instance groups and measured through units for instance fleets. Managed scaling activities are not allowed beyond this boundary. The limit only applies to the core and task nodes. The master node cannot be scaled after initial configuration.

", "ComputeLimits$MaximumCapacityUnits": "

The upper boundary of Amazon EC2 units. It is measured through vCPU cores or instances for instance groups and measured through units for instance fleets. Managed scaling activities are not allowed beyond this boundary. The limit only applies to the core and task nodes. The master node cannot be scaled after initial configuration.

", @@ -1152,6 +1165,8 @@ "ModifyClusterOutput$StepConcurrencyLevel": "

The number of steps that can be executed concurrently.

", "RunJobFlowInput$EbsRootVolumeSize": "

The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x and later.

", "RunJobFlowInput$StepConcurrencyLevel": "

Specifies the number of steps that can be executed concurrently. The default value is 1. The maximum value is 256.

", + "RunJobFlowInput$EbsRootVolumeIops": "

The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and later.

", + "RunJobFlowInput$EbsRootVolumeThroughput": "

The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and later.

", "ScalingConstraints$MinCapacity": "

The lower boundary of Amazon EC2 instances in an instance group below which scaling activities are not allowed to shrink. Scale-in activities will not terminate instances below this boundary.

", "ScalingConstraints$MaxCapacity": "

The upper boundary of Amazon EC2 instances in an instance group beyond which scaling activities are not allowed to grow. Scale-out activities will not add instances beyond this boundary.

", "ShrinkPolicy$DecommissionTimeout": "

The desired timeout for decommissioning an instance. Overrides the default YARN decommissioning timeout.

", @@ -1861,7 +1876,7 @@ "SpotProvisioningAllocationStrategy": { "base": null, "refs": { - "SpotProvisioningSpecification$AllocationStrategy": "

Specifies the strategy to use in launching Spot Instance fleets. Currently, the only option is capacity-optimized (the default), which launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.

" + "SpotProvisioningSpecification$AllocationStrategy": "

Specifies one of the following strategies to launch Spot Instance fleets: price-capacity-optimized, capacity-optimized, lowest-price, or diversified. For more information on the provisioning strategies, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide for Linux Instances.

When you launch a Spot Instance fleet with the old console, it automatically launches with the capacity-optimized strategy. You can't change the allocation strategy from the old console.

" } }, "SpotProvisioningSpecification": { @@ -2133,7 +2148,7 @@ } }, "StudioSummary": { - "base": "

Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. The details do not include subnets, IAM roles, security groups, or tags associated with the Studio.

", + "base": "

Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. To fetch additional details such as subnets, IAM roles, security groups, and tags for the Studio, use the DescribeStudio API.

", "refs": { "StudioSummaryList$member": null } @@ -2274,6 +2289,7 @@ "CreateStudioInput$UserRole": "

The IAM user role that users and groups assume when logged in to an Amazon EMR Studio. Only specify a UserRole when you use IAM Identity Center authentication. The permissions attached to the UserRole can be scoped down for each user or group using session policies.

", "CreateStudioInput$DefaultS3Location": "

The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files.

", "CreateStudioInput$IdpAuthUrl": "

The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials.

", + "CreateStudioInput$EncryptionKeyArn": "

The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.

", "CreateStudioOutput$Url": "

The unique Studio access URL.

", "DeleteSecurityConfigurationInput$Name": "

The name of the security configuration.

", "DescribeSecurityConfigurationInput$Name": "

The name of the security configuration.

", @@ -2316,7 +2332,9 @@ "Studio$Url": "

The unique access URL of the Amazon EMR Studio.

", "Studio$DefaultS3Location": "

The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files.

", "Studio$IdpAuthUrl": "

Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL.

", + "Studio$EncryptionKeyArn": "

The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.

", "UpdateStudioInput$DefaultS3Location": "

The Amazon S3 location to back up Workspaces and notebook files for the Amazon EMR Studio.

", + "UpdateStudioInput$EncryptionKeyArn": "

The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.

", "XmlStringList$member": null } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticmapreduce/2009-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticmapreduce/2009-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/elasticmapreduce/2009-03-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/elasticmapreduce/2009-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://elasticmapreduce-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://elasticmapreduce-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://elasticmapreduce.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://elasticmapreduce-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://elasticmapreduce.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://elasticmapreduce-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://elasticmapreduce.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://elasticmapreduce.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://elasticmapreduce.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://elasticmapreduce.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/emr-serverless/2021-07-13/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/emr-serverless/2021-07-13/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/emr-serverless/2021-07-13/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/emr-serverless/2021-07-13/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -276,7 +276,9 @@ "networkConfiguration":{"shape":"NetworkConfiguration"}, "architecture":{"shape":"Architecture"}, "imageConfiguration":{"shape":"ImageConfiguration"}, - "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationMap"} + "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationMap"}, + "runtimeConfiguration":{"shape":"ConfigurationList"}, + "monitoringConfiguration":{"shape":"MonitoringConfiguration"} } }, "ApplicationArn":{ @@ -483,7 +485,9 @@ "networkConfiguration":{"shape":"NetworkConfiguration"}, "architecture":{"shape":"Architecture"}, "imageConfiguration":{"shape":"ImageConfigurationInput"}, - "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationInputMap"} + "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationInputMap"}, + "runtimeConfiguration":{"shape":"ConfigurationList"}, + "monitoringConfiguration":{"shape":"MonitoringConfiguration"} } }, "CreateApplicationResponse":{ @@ -1299,7 +1303,9 @@ "architecture":{"shape":"Architecture"}, "imageConfiguration":{"shape":"ImageConfigurationInput"}, "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationInputMap"}, - "releaseLabel":{"shape":"ReleaseLabel"} + "releaseLabel":{"shape":"ReleaseLabel"}, + "runtimeConfiguration":{"shape":"ConfigurationList"}, + "monitoringConfiguration":{"shape":"MonitoringConfiguration"} } }, "UpdateApplicationResponse":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/emr-serverless/2021-07-13/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/emr-serverless/2021-07-13/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/emr-serverless/2021-07-13/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/emr-serverless/2021-07-13/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -164,8 +164,11 @@ "ConfigurationList": { "base": null, "refs": { + "Application$runtimeConfiguration": "

The Configuration specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the GetApplication API operation.

", "Configuration$configurations": "

A list of additional configurations to apply within a configuration object.

", - "ConfigurationOverrides$applicationConfiguration": "

The override configurations for the application.

" + "ConfigurationOverrides$applicationConfiguration": "

The override configurations for the application.

", + "CreateApplicationRequest$runtimeConfiguration": "

The Configuration specifications to use when creating an application. Each configuration consists of a classification and properties. This configuration is applied to all the job runs submitted under the application.

", + "UpdateApplicationRequest$runtimeConfiguration": "

The Configuration specifications to use when updating an application. Each configuration consists of a classification and properties. This configuration is applied across all the job runs submitted under the application.

" } }, "ConfigurationOverrides": { @@ -551,7 +554,10 @@ "MonitoringConfiguration": { "base": "

The configuration setting for monitoring.

", "refs": { - "ConfigurationOverrides$monitoringConfiguration": "

The override configurations for monitoring.

" + "Application$monitoringConfiguration": null, + "ConfigurationOverrides$monitoringConfiguration": "

The override configurations for monitoring.

", + "CreateApplicationRequest$monitoringConfiguration": "

The configuration setting for monitoring.

", + "UpdateApplicationRequest$monitoringConfiguration": "

The configuration setting for monitoring.

" } }, "NetworkConfiguration": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://emr-serverless.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://emr-serverless.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://emr-serverless.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://emr-serverless.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -81,7 +81,7 @@ "ProductCode":{"shape":"ProductCode"}, "Filter":{"shape":"GetEntitlementFilters"}, "NextToken":{"shape":"NonEmptyString"}, - "MaxResults":{"shape":"Integer"} + "MaxResults":{"shape":"PageSizeInteger"} } }, "GetEntitlementsResult":{ @@ -111,6 +111,11 @@ "type":"string", "pattern":"\\S+" }, + "PageSizeInteger":{ + "type":"integer", + "max":25, + "min":1 + }, "ProductCode":{ "type":"string", "max":255, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -80,8 +80,7 @@ "Integer": { "base": null, "refs": { - "EntitlementValue$IntegerValue": "

The IntegerValue field will be populated with an integer value when the entitlement is an integer type. Otherwise, the field will not be set.

", - "GetEntitlementsRequest$MaxResults": "

The maximum number of items to retrieve from the GetEntitlements operation. For pagination, use the NextToken field in subsequent calls to GetEntitlements.

" + "EntitlementValue$IntegerValue": "

The IntegerValue field will be populated with an integer value when the entitlement is an integer type. Otherwise, the field will not be set.

" } }, "InternalServiceErrorException": { @@ -103,6 +102,12 @@ "GetEntitlementsResult$NextToken": "

For paginated results, use NextToken in subsequent calls to GetEntitlements. If the result contains an empty set of entitlements, NextToken might still be present and should be used.

" } }, + "PageSizeInteger": { + "base": null, + "refs": { + "GetEntitlementsRequest$MaxResults": "

The maximum number of items to retrieve from the GetEntitlements operation. For pagination, use the NextToken field in subsequent calls to GetEntitlements.

" + } + }, "ProductCode": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,339 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://entitlement.marketplace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://entitlement.marketplace-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://entitlement.marketplace.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://entitlement.marketplace.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://entitlement.marketplace.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://entitlement.marketplace.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entitlement.marketplace/2017-01-11/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entitlement.marketplace/2017-01-11/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,4 +1,9 @@ { "pagination": { + "GetEntitlements": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,352 +1,1001 @@ { - "version":"2.0", - "metadata":{ - "apiVersion":"2018-05-10", - "endpointPrefix":"entityresolution", - "jsonVersion":"1.1", - "protocol":"rest-json", - "serviceAbbreviation":"AWSEntityResolution", - "serviceFullName":"AWS EntityResolution", - "serviceId":"EntityResolution", - "signatureVersion":"v4", - "signingName":"entityresolution", - "uid":"entityresolution-2018-05-10" + "metadata": { + "apiVersion": "2018-05-10", + "endpointPrefix": "entityresolution", + "jsonVersion": "1.1", + "protocol": "rest-json", + "serviceAbbreviation": "AWSEntityResolution", + "serviceFullName": "AWS EntityResolution", + "serviceId": "EntityResolution", + "signatureVersion": "v4", + "signingName": "entityresolution", + "uid": "entityresolution-2018-05-10" }, - "operations":{ - "CreateMatchingWorkflow":{ - "name":"CreateMatchingWorkflow", - "http":{ - "method":"POST", - "requestUri":"/matchingworkflows", - "responseCode":200 - }, - "input":{"shape":"CreateMatchingWorkflowInput"}, - "output":{"shape":"CreateMatchingWorkflowOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ExceedsLimitException"}, - {"shape":"ConflictException"}, - {"shape":"ValidationException"} - ] - }, - "CreateSchemaMapping":{ - "name":"CreateSchemaMapping", - "http":{ - "method":"POST", - "requestUri":"/schemas", - "responseCode":200 - }, - "input":{"shape":"CreateSchemaMappingInput"}, - "output":{"shape":"CreateSchemaMappingOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ExceedsLimitException"}, - {"shape":"ConflictException"}, - {"shape":"ValidationException"} - ] - }, - "DeleteMatchingWorkflow":{ - "name":"DeleteMatchingWorkflow", - "http":{ - "method":"DELETE", - "requestUri":"/matchingworkflows/{workflowName}", - "responseCode":200 - }, - "input":{"shape":"DeleteMatchingWorkflowInput"}, - "output":{"shape":"DeleteMatchingWorkflowOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ], - "idempotent":true - }, - "DeleteSchemaMapping":{ - "name":"DeleteSchemaMapping", - "http":{ - "method":"DELETE", - "requestUri":"/schemas/{schemaName}", - "responseCode":200 - }, - "input":{"shape":"DeleteSchemaMappingInput"}, - "output":{"shape":"DeleteSchemaMappingOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ConflictException"}, - {"shape":"ValidationException"} - ], - "idempotent":true - }, - "GetMatchId":{ - "name":"GetMatchId", - "http":{ - "method":"POST", - "requestUri":"/matchingworkflows/{workflowName}/matches", - "responseCode":200 - }, - "input":{"shape":"GetMatchIdInput"}, - "output":{"shape":"GetMatchIdOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "GetMatchingJob":{ - "name":"GetMatchingJob", - "http":{ - "method":"GET", - "requestUri":"/matchingworkflows/{workflowName}/jobs/{jobId}", - "responseCode":200 - }, - "input":{"shape":"GetMatchingJobInput"}, - "output":{"shape":"GetMatchingJobOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "GetMatchingWorkflow":{ - "name":"GetMatchingWorkflow", - "http":{ - "method":"GET", - "requestUri":"/matchingworkflows/{workflowName}", - "responseCode":200 - }, - "input":{"shape":"GetMatchingWorkflowInput"}, - "output":{"shape":"GetMatchingWorkflowOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "GetSchemaMapping":{ - "name":"GetSchemaMapping", - "http":{ - "method":"GET", - "requestUri":"/schemas/{schemaName}", - "responseCode":200 - }, - "input":{"shape":"GetSchemaMappingInput"}, - "output":{"shape":"GetSchemaMappingOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListMatchingJobs":{ - "name":"ListMatchingJobs", - "http":{ - "method":"GET", - "requestUri":"/matchingworkflows/{workflowName}/jobs", - "responseCode":200 - }, - "input":{"shape":"ListMatchingJobsInput"}, - "output":{"shape":"ListMatchingJobsOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListMatchingWorkflows":{ - "name":"ListMatchingWorkflows", - "http":{ - "method":"GET", - "requestUri":"/matchingworkflows", - "responseCode":200 - }, - "input":{"shape":"ListMatchingWorkflowsInput"}, - "output":{"shape":"ListMatchingWorkflowsOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListSchemaMappings":{ - "name":"ListSchemaMappings", - "http":{ - "method":"GET", - "requestUri":"/schemas", - "responseCode":200 - }, - "input":{"shape":"ListSchemaMappingsInput"}, - "output":{"shape":"ListSchemaMappingsOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListTagsForResource":{ - "name":"ListTagsForResource", - "http":{ - "method":"GET", - "requestUri":"/tags/{resourceArn}", - "responseCode":200 - }, - "input":{"shape":"ListTagsForResourceInput"}, - "output":{"shape":"ListTagsForResourceOutput"}, - "errors":[ - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ValidationException"} - ] - }, - "StartMatchingJob":{ - "name":"StartMatchingJob", - "http":{ - "method":"POST", - "requestUri":"/matchingworkflows/{workflowName}/jobs", - "responseCode":200 - }, - "input":{"shape":"StartMatchingJobInput"}, - "output":{"shape":"StartMatchingJobOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ExceedsLimitException"}, - {"shape":"ConflictException"}, - {"shape":"ValidationException"} - ] - }, - "TagResource":{ - "name":"TagResource", - "http":{ - "method":"POST", - "requestUri":"/tags/{resourceArn}", - "responseCode":200 - }, - "input":{"shape":"TagResourceInput"}, - "output":{"shape":"TagResourceOutput"}, - "errors":[ - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ValidationException"} - ] - }, - "UntagResource":{ - "name":"UntagResource", - "http":{ - "method":"DELETE", - "requestUri":"/tags/{resourceArn}", - "responseCode":200 - }, - "input":{"shape":"UntagResourceInput"}, - "output":{"shape":"UntagResourceOutput"}, - "errors":[ - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"} - ], - "idempotent":true - }, - "UpdateMatchingWorkflow":{ - "name":"UpdateMatchingWorkflow", - "http":{ - "method":"PUT", - "requestUri":"/matchingworkflows/{workflowName}", - "responseCode":200 - }, - "input":{"shape":"UpdateMatchingWorkflowInput"}, - "output":{"shape":"UpdateMatchingWorkflowOutput"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} + "operations": { + "CreateIdMappingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ExceedsLimitException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/idmappingworkflows", + "responseCode": 200 + }, + "input": { + "shape": "CreateIdMappingWorkflowInput" + }, + "name": "CreateIdMappingWorkflow", + "output": { + "shape": "CreateIdMappingWorkflowOutput" + } + }, + "CreateMatchingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ExceedsLimitException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/matchingworkflows", + "responseCode": 200 + }, + "input": { + "shape": "CreateMatchingWorkflowInput" + }, + "name": "CreateMatchingWorkflow", + "output": { + "shape": "CreateMatchingWorkflowOutput" + } + }, + "CreateSchemaMapping": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ExceedsLimitException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/schemas", + "responseCode": 200 + }, + "input": { + "shape": "CreateSchemaMappingInput" + }, + "name": "CreateSchemaMapping", + "output": { + "shape": "CreateSchemaMappingOutput" + } + }, + "DeleteIdMappingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/idmappingworkflows/{workflowName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteIdMappingWorkflowInput" + }, + "name": "DeleteIdMappingWorkflow", + "output": { + "shape": "DeleteIdMappingWorkflowOutput" + } + }, + "DeleteMatchingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/matchingworkflows/{workflowName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteMatchingWorkflowInput" + }, + "name": "DeleteMatchingWorkflow", + "output": { + "shape": "DeleteMatchingWorkflowOutput" + } + }, + "DeleteSchemaMapping": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/schemas/{schemaName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteSchemaMappingInput" + }, + "name": "DeleteSchemaMapping", + "output": { + "shape": "DeleteSchemaMappingOutput" + } + }, + "GetIdMappingJob": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/idmappingworkflows/{workflowName}/jobs/{jobId}", + "responseCode": 200 + }, + "input": { + "shape": "GetIdMappingJobInput" + }, + "name": "GetIdMappingJob", + "output": { + "shape": "GetIdMappingJobOutput" + } + }, + "GetIdMappingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/idmappingworkflows/{workflowName}", + "responseCode": 200 + }, + "input": { + "shape": "GetIdMappingWorkflowInput" + }, + "name": "GetIdMappingWorkflow", + "output": { + "shape": "GetIdMappingWorkflowOutput" + } + }, + "GetMatchId": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/matchingworkflows/{workflowName}/matches", + "responseCode": 200 + }, + "input": { + "shape": "GetMatchIdInput" + }, + "name": "GetMatchId", + "output": { + "shape": "GetMatchIdOutput" + } + }, + "GetMatchingJob": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/matchingworkflows/{workflowName}/jobs/{jobId}", + "responseCode": 200 + }, + "input": { + "shape": "GetMatchingJobInput" + }, + "name": "GetMatchingJob", + "output": { + "shape": "GetMatchingJobOutput" + } + }, + "GetMatchingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/matchingworkflows/{workflowName}", + "responseCode": 200 + }, + "input": { + "shape": "GetMatchingWorkflowInput" + }, + "name": "GetMatchingWorkflow", + "output": { + "shape": "GetMatchingWorkflowOutput" + } + }, + "GetSchemaMapping": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/schemas/{schemaName}", + "responseCode": 200 + }, + "input": { + "shape": "GetSchemaMappingInput" + }, + "name": "GetSchemaMapping", + "output": { + "shape": "GetSchemaMappingOutput" + } + }, + "ListIdMappingJobs": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/idmappingworkflows/{workflowName}/jobs", + "responseCode": 200 + }, + "input": { + "shape": "ListIdMappingJobsInput" + }, + "name": "ListIdMappingJobs", + "output": { + "shape": "ListIdMappingJobsOutput" + } + }, + "ListIdMappingWorkflows": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/idmappingworkflows", + "responseCode": 200 + }, + "input": { + "shape": "ListIdMappingWorkflowsInput" + }, + "name": "ListIdMappingWorkflows", + "output": { + "shape": "ListIdMappingWorkflowsOutput" + } + }, + "ListMatchingJobs": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/matchingworkflows/{workflowName}/jobs", + "responseCode": 200 + }, + "input": { + "shape": "ListMatchingJobsInput" + }, + "name": "ListMatchingJobs", + "output": { + "shape": "ListMatchingJobsOutput" + } + }, + "ListMatchingWorkflows": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/matchingworkflows", + "responseCode": 200 + }, + "input": { + "shape": "ListMatchingWorkflowsInput" + }, + "name": "ListMatchingWorkflows", + "output": { + "shape": "ListMatchingWorkflowsOutput" + } + }, + "ListProviderServices": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/providerservices", + "responseCode": 200 + }, + "input": { + "shape": "ListProviderServicesInput" + }, + "name": "ListProviderServices", + "output": { + "shape": "ListProviderServicesOutput" + } + }, + "ListSchemaMappings": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/schemas", + "responseCode": 200 + }, + "input": { + "shape": "ListSchemaMappingsInput" + }, + "name": "ListSchemaMappings", + "output": { + "shape": "ListSchemaMappingsOutput" + } + }, + "ListTagsForResource": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/tags/{resourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "ListTagsForResourceInput" + }, + "name": "ListTagsForResource", + "output": { + "shape": "ListTagsForResourceOutput" + } + }, + "StartIdMappingJob": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ExceedsLimitException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/idmappingworkflows/{workflowName}/jobs", + "responseCode": 200 + }, + "input": { + "shape": "StartIdMappingJobInput" + }, + "name": "StartIdMappingJob", + "output": { + "shape": "StartIdMappingJobOutput" + } + }, + "StartMatchingJob": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ExceedsLimitException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/matchingworkflows/{workflowName}/jobs", + "responseCode": 200 + }, + "input": { + "shape": "StartMatchingJobInput" + }, + "name": "StartMatchingJob", + "output": { + "shape": "StartMatchingJobOutput" + } + }, + "TagResource": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } ], - "idempotent":true + "http": { + "method": "POST", + "requestUri": "/tags/{resourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "TagResourceInput" + }, + "name": "TagResource", + "output": { + "shape": "TagResourceOutput" + } + }, + "UntagResource": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/tags/{resourceArn}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UntagResourceInput" + }, + "name": "UntagResource", + "output": { + "shape": "UntagResourceOutput" + } + }, + "UpdateIdMappingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/idmappingworkflows/{workflowName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateIdMappingWorkflowInput" + }, + "name": "UpdateIdMappingWorkflow", + "output": { + "shape": "UpdateIdMappingWorkflowOutput" + } + }, + "UpdateMatchingWorkflow": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/matchingworkflows/{workflowName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateMatchingWorkflowInput" + }, + "name": "UpdateMatchingWorkflow", + "output": { + "shape": "UpdateMatchingWorkflowOutput" + } + }, + "UpdateSchemaMapping": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/schemas/{schemaName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateSchemaMappingInput" + }, + "name": "UpdateSchemaMapping", + "output": { + "shape": "UpdateSchemaMappingOutput" + } } }, - "shapes":{ - "AccessDeniedException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"} - }, - "error":{ - "httpStatusCode":403, - "senderFault":true - }, - "exception":true - }, - "AttributeMatchingModel":{ - "type":"string", - "enum":[ + "shapes": { + "AccessDeniedException": { + "error": { + "httpStatusCode": 403, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "type": "structure" + }, + "AttributeMatchingModel": { + "enum": [ "ONE_TO_ONE", "MANY_TO_MANY" - ] + ], + "type": "string" }, - "AttributeName":{ - "type":"string", - "max":255, - "min":0, - "pattern":"^[a-zA-Z_0-9- \\t]*$" - }, - "Boolean":{ - "type":"boolean", - "box":true - }, - "ConflictException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"} - }, - "error":{ - "httpStatusCode":400, - "senderFault":true - }, - "exception":true - }, - "CreateMatchingWorkflowInput":{ - "type":"structure", - "required":[ + "AttributeName": { + "max": 255, + "min": 0, + "pattern": "^[a-zA-Z_0-9- \\t]*$", + "type": "string" + }, + "AwsAccountId": { + "pattern": "\\d{12}", + "type": "string" + }, + "AwsAccountIdList": { + "member": { + "shape": "AwsAccountId" + }, + "type": "list" + }, + "Boolean": { + "box": true, + "type": "boolean" + }, + "ConflictException": { + "error": { + "httpStatusCode": 400, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "type": "structure" + }, + "CreateIdMappingWorkflowInput": { + "members": { + "description": { + "shape": "Description" + }, + "idMappingTechniques": { + "shape": "IdMappingTechniques" + }, + "inputSourceConfig": { + "shape": "IdMappingWorkflowInputSourceConfig" + }, + "outputSourceConfig": { + "shape": "IdMappingWorkflowOutputSourceConfig" + }, + "roleArn": { + "shape": "RoleArn" + }, + "tags": { + "shape": "TagMap" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowName" + ], + "type": "structure" + }, + "CreateIdMappingWorkflowOutput": { + "members": { + "description": { + "shape": "Description" + }, + "idMappingTechniques": { + "shape": "IdMappingTechniques" + }, + "inputSourceConfig": { + "shape": "IdMappingWorkflowInputSourceConfig" + }, + "outputSourceConfig": { + "shape": "IdMappingWorkflowOutputSourceConfig" + }, + "roleArn": { + "shape": "RoleArn" + }, + "workflowArn": { + "shape": "IdMappingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowArn", + "workflowName" + ], + "type": "structure" + }, + "CreateMatchingWorkflowInput": { + "members": { + "description": { + "shape": "Description" + }, + "incrementalRunConfig": { + "shape": "IncrementalRunConfig" + }, + "inputSourceConfig": { + "shape": "InputSourceConfig" + }, + "outputSourceConfig": { + "shape": "OutputSourceConfig" + }, + "resolutionTechniques": { + "shape": "ResolutionTechniques" + }, + "roleArn": { + "shape": "String" + }, + "tags": { + "shape": "TagMap" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ "inputSourceConfig", "outputSourceConfig", "resolutionTechniques", "roleArn", "workflowName" ], - "members":{ - "description":{"shape":"Description"}, - "incrementalRunConfig":{"shape":"IncrementalRunConfig"}, - "inputSourceConfig":{"shape":"InputSourceConfig"}, - "outputSourceConfig":{"shape":"OutputSourceConfig"}, - "resolutionTechniques":{"shape":"ResolutionTechniques"}, - "roleArn":{"shape":"String"}, - "tags":{"shape":"TagMap"}, - "workflowName":{"shape":"EntityName"} - } + "type": "structure" }, - "CreateMatchingWorkflowOutput":{ - "type":"structure", - "required":[ + "CreateMatchingWorkflowOutput": { + "members": { + "description": { + "shape": "Description" + }, + "incrementalRunConfig": { + "shape": "IncrementalRunConfig" + }, + "inputSourceConfig": { + "shape": "InputSourceConfig" + }, + "outputSourceConfig": { + "shape": "OutputSourceConfig" + }, + "resolutionTechniques": { + "shape": "ResolutionTechniques" + }, + "roleArn": { + "shape": "String" + }, + "workflowArn": { + "shape": "MatchingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ "inputSourceConfig", "outputSourceConfig", "resolutionTechniques", @@ -354,186 +1003,394 @@ "workflowArn", "workflowName" ], - "members":{ - "description":{"shape":"Description"}, - "incrementalRunConfig":{"shape":"IncrementalRunConfig"}, - "inputSourceConfig":{"shape":"InputSourceConfig"}, - "outputSourceConfig":{"shape":"OutputSourceConfig"}, - "resolutionTechniques":{"shape":"ResolutionTechniques"}, - "roleArn":{"shape":"String"}, - "workflowArn":{"shape":"MatchingWorkflowArn"}, - "workflowName":{"shape":"EntityName"} - } + "type": "structure" }, - "CreateSchemaMappingInput":{ - "type":"structure", - "required":[ + "CreateSchemaMappingInput": { + "members": { + "description": { + "shape": "Description" + }, + "mappedInputFields": { + "shape": "SchemaInputAttributes" + }, + "schemaName": { + "shape": "EntityName" + }, + "tags": { + "shape": "TagMap" + } + }, + "required": [ "mappedInputFields", "schemaName" ], - "members":{ - "description":{"shape":"Description"}, - "mappedInputFields":{"shape":"SchemaInputAttributes"}, - "schemaName":{"shape":"EntityName"}, - "tags":{"shape":"TagMap"} - } + "type": "structure" }, - "CreateSchemaMappingOutput":{ - "type":"structure", - "required":[ + "CreateSchemaMappingOutput": { + "members": { + "description": { + "shape": "Description" + }, + "mappedInputFields": { + "shape": "SchemaInputAttributes" + }, + "schemaArn": { + "shape": "SchemaMappingArn" + }, + "schemaName": { + "shape": "EntityName" + } + }, + "required": [ "description", "mappedInputFields", "schemaArn", "schemaName" ], - "members":{ - "description":{"shape":"Description"}, - "mappedInputFields":{"shape":"SchemaInputAttributes"}, - "schemaArn":{"shape":"SchemaMappingArn"}, - "schemaName":{"shape":"EntityName"} - } - }, - "DeleteMatchingWorkflowInput":{ - "type":"structure", - "required":["workflowName"], - "members":{ - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" - } - } - }, - "DeleteMatchingWorkflowOutput":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - } - }, - "DeleteSchemaMappingInput":{ - "type":"structure", - "required":["schemaName"], - "members":{ - "schemaName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"schemaName" - } - } - }, - "DeleteSchemaMappingOutput":{ - "type":"structure", - "required":["message"], - "members":{ - "message":{"shape":"String"} - } - }, - "Description":{ - "type":"string", - "max":255, - "min":0 - }, - "EntityName":{ - "type":"string", - "max":255, - "min":0, - "pattern":"^[a-zA-Z_0-9-]*$" - }, - "ErrorDetails":{ - "type":"structure", - "members":{ - "errorMessage":{"shape":"ErrorMessage"} - } - }, - "ErrorMessage":{ - "type":"string", - "max":2048, - "min":1 - }, - "ExceedsLimitException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"}, - "quotaName":{"shape":"String"}, - "quotaValue":{"shape":"Integer"} - }, - "error":{ - "httpStatusCode":402, - "senderFault":true - }, - "exception":true - }, - "GetMatchIdInput":{ - "type":"structure", - "required":[ - "record", + "type": "structure" + }, + "DeleteIdMappingWorkflowInput": { + "members": { + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ "workflowName" ], - "members":{ - "record":{"shape":"RecordAttributeMap"}, - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" + "type": "structure" + }, + "DeleteIdMappingWorkflowOutput": { + "members": { + "message": { + "shape": "String" } - } + }, + "required": [ + "message" + ], + "type": "structure" }, - "GetMatchIdOutput":{ - "type":"structure", - "members":{ - "matchId":{"shape":"String"} - } + "DeleteMatchingWorkflowInput": { + "members": { + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "workflowName" + ], + "type": "structure" + }, + "DeleteMatchingWorkflowOutput": { + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "DeleteSchemaMappingInput": { + "members": { + "schemaName": { + "location": "uri", + "locationName": "schemaName", + "shape": "EntityName" + } + }, + "required": [ + "schemaName" + ], + "type": "structure" + }, + "DeleteSchemaMappingOutput": { + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" }, - "GetMatchingJobInput":{ - "type":"structure", - "required":[ + "Description": { + "max": 255, + "min": 0, + "type": "string" + }, + "EntityName": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z_0-9-]*$", + "type": "string" + }, + "ErrorDetails": { + "members": { + "errorMessage": { + "shape": "ErrorMessage" + } + }, + "type": "structure" + }, + "ErrorMessage": { + "max": 2048, + "min": 1, + "type": "string" + }, + "ExceedsLimitException": { + "error": { + "httpStatusCode": 402, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + }, + "quotaName": { + "shape": "String" + }, + "quotaValue": { + "shape": "Integer" + } + }, + "type": "structure" + }, + "GetIdMappingJobInput": { + "members": { + "jobId": { + "location": "uri", + "locationName": "jobId", + "shape": "JobId" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ "jobId", "workflowName" ], - "members":{ - "jobId":{ - "shape":"JobId", - "location":"uri", - "locationName":"jobId" - }, - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" + "type": "structure" + }, + "GetIdMappingJobOutput": { + "members": { + "endTime": { + "shape": "Timestamp" + }, + "errorDetails": { + "shape": "ErrorDetails" + }, + "jobId": { + "shape": "JobId" + }, + "metrics": { + "shape": "IdMappingJobMetrics" + }, + "startTime": { + "shape": "Timestamp" + }, + "status": { + "shape": "JobStatus" } - } + }, + "required": [ + "jobId", + "startTime", + "status" + ], + "type": "structure" }, - "GetMatchingJobOutput":{ - "type":"structure", - "required":[ + "GetIdMappingWorkflowInput": { + "members": { + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "workflowName" + ], + "type": "structure" + }, + "GetIdMappingWorkflowOutput": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "description": { + "shape": "Description" + }, + "idMappingTechniques": { + "shape": "IdMappingTechniques" + }, + "inputSourceConfig": { + "shape": "IdMappingWorkflowInputSourceConfig" + }, + "outputSourceConfig": { + "shape": "IdMappingWorkflowOutputSourceConfig" + }, + "roleArn": { + "shape": "RoleArn" + }, + "tags": { + "shape": "TagMap" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "workflowArn": { + "shape": "IdMappingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ + "createdAt", + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "updatedAt", + "workflowArn", + "workflowName" + ], + "type": "structure" + }, + "GetMatchIdInput": { + "members": { + "record": { + "shape": "RecordAttributeMap" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "record", + "workflowName" + ], + "type": "structure" + }, + "GetMatchIdOutput": { + "members": { + "matchId": { + "shape": "String" + } + }, + "type": "structure" + }, + "GetMatchingJobInput": { + "members": { + "jobId": { + "location": "uri", + "locationName": "jobId", + "shape": "JobId" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "jobId", + "workflowName" + ], + "type": "structure" + }, + "GetMatchingJobOutput": { + "members": { + "endTime": { + "shape": "Timestamp" + }, + "errorDetails": { + "shape": "ErrorDetails" + }, + "jobId": { + "shape": "JobId" + }, + "metrics": { + "shape": "JobMetrics" + }, + "startTime": { + "shape": "Timestamp" + }, + "status": { + "shape": "JobStatus" + } + }, + "required": [ "jobId", "startTime", "status" ], - "members":{ - "endTime":{"shape":"Timestamp"}, - "errorDetails":{"shape":"ErrorDetails"}, - "jobId":{"shape":"JobId"}, - "metrics":{"shape":"JobMetrics"}, - "startTime":{"shape":"Timestamp"}, - "status":{"shape":"JobStatus"} - } - }, - "GetMatchingWorkflowInput":{ - "type":"structure", - "required":["workflowName"], - "members":{ - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" + "type": "structure" + }, + "GetMatchingWorkflowInput": { + "members": { + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" } - } + }, + "required": [ + "workflowName" + ], + "type": "structure" }, - "GetMatchingWorkflowOutput":{ - "type":"structure", - "required":[ + "GetMatchingWorkflowOutput": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "description": { + "shape": "Description" + }, + "incrementalRunConfig": { + "shape": "IncrementalRunConfig" + }, + "inputSourceConfig": { + "shape": "InputSourceConfig" + }, + "outputSourceConfig": { + "shape": "OutputSourceConfig" + }, + "resolutionTechniques": { + "shape": "ResolutionTechniques" + }, + "roleArn": { + "shape": "String" + }, + "tags": { + "shape": "TagMap" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "workflowArn": { + "shape": "MatchingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ "createdAt", "inputSourceConfig", "outputSourceConfig", @@ -543,399 +1400,890 @@ "workflowArn", "workflowName" ], - "members":{ - "createdAt":{"shape":"Timestamp"}, - "description":{"shape":"Description"}, - "incrementalRunConfig":{"shape":"IncrementalRunConfig"}, - "inputSourceConfig":{"shape":"InputSourceConfig"}, - "outputSourceConfig":{"shape":"OutputSourceConfig"}, - "resolutionTechniques":{"shape":"ResolutionTechniques"}, - "roleArn":{"shape":"String"}, - "tags":{"shape":"TagMap"}, - "updatedAt":{"shape":"Timestamp"}, - "workflowArn":{"shape":"MatchingWorkflowArn"}, - "workflowName":{"shape":"EntityName"} - } - }, - "GetSchemaMappingInput":{ - "type":"structure", - "required":["schemaName"], - "members":{ - "schemaName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"schemaName" + "type": "structure" + }, + "GetProviderServiceInput": { + "members": { + "providerName": { + "location": "uri", + "locationName": "providerName", + "shape": "EntityName" + }, + "providerServiceName": { + "location": "uri", + "locationName": "providerServiceName", + "shape": "ProviderServiceArn" } - } + }, + "required": [ + "providerName", + "providerServiceName" + ], + "type": "structure" + }, + "GetSchemaMappingInput": { + "members": { + "schemaName": { + "location": "uri", + "locationName": "schemaName", + "shape": "EntityName" + } + }, + "required": [ + "schemaName" + ], + "type": "structure" }, - "GetSchemaMappingOutput":{ - "type":"structure", - "required":[ + "GetSchemaMappingOutput": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "description": { + "shape": "Description" + }, + "hasWorkflows": { + "shape": "Boolean" + }, + "mappedInputFields": { + "shape": "SchemaInputAttributes" + }, + "schemaArn": { + "shape": "SchemaMappingArn" + }, + "schemaName": { + "shape": "EntityName" + }, + "tags": { + "shape": "TagMap" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "required": [ "createdAt", + "hasWorkflows", "mappedInputFields", "schemaArn", "schemaName", "updatedAt" ], - "members":{ - "createdAt":{"shape":"Timestamp"}, - "description":{"shape":"Description"}, - "mappedInputFields":{"shape":"SchemaInputAttributes"}, - "schemaArn":{"shape":"SchemaMappingArn"}, - "schemaName":{"shape":"EntityName"}, - "tags":{"shape":"TagMap"}, - "updatedAt":{"shape":"Timestamp"} - } - }, - "IncrementalRunConfig":{ - "type":"structure", - "members":{ - "incrementalRunType":{"shape":"IncrementalRunType"} - } - }, - "IncrementalRunType":{ - "type":"string", - "enum":["IMMEDIATE"] - }, - "InputSource":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "IdMappingJobMetrics": { + "members": { + "inputRecords": { + "shape": "Integer" + }, + "recordsNotProcessed": { + "shape": "Integer" + }, + "totalRecordsProcessed": { + "shape": "Integer" + } + }, + "type": "structure" + }, + "IdMappingTechniques": { + "members": { + "idMappingType": { + "shape": "IdMappingType" + }, + "providerProperties": { + "shape": "ProviderProperties" + } + }, + "required": [ + "idMappingType", + "providerProperties" + ], + "type": "structure" + }, + "IdMappingType": { + "enum": [ + "PROVIDER" + ], + "type": "string" + }, + "IdMappingWorkflowArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(idmappingworkflow/.*)$", + "type": "string" + }, + "IdMappingWorkflowInputSource": { + "members": { + "inputSourceARN": { + "shape": "IdMappingWorkflowInputSourceInputSourceARNString" + }, + "schemaName": { + "shape": "EntityName" + } + }, + "required": [ + "inputSourceARN", + "schemaName" + ], + "type": "structure" + }, + "IdMappingWorkflowInputSourceConfig": { + "max": 20, + "member": { + "shape": "IdMappingWorkflowInputSource" + }, + "min": 1, + "type": "list" + }, + "IdMappingWorkflowInputSourceInputSourceARNString": { + "pattern": "^arn:aws:.*:.*:[0-9]+:.*$", + "type": "string" + }, + "IdMappingWorkflowList": { + "member": { + "shape": "IdMappingWorkflowSummary" + }, + "type": "list" + }, + "IdMappingWorkflowOutputSource": { + "members": { + "KMSArn": { + "shape": "KMSArn" + }, + "outputS3Path": { + "shape": "S3Path" + } + }, + "required": [ + "outputS3Path" + ], + "type": "structure" + }, + "IdMappingWorkflowOutputSourceConfig": { + "max": 1, + "member": { + "shape": "IdMappingWorkflowOutputSource" + }, + "min": 1, + "type": "list" + }, + "IdMappingWorkflowSummary": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "workflowArn": { + "shape": "IdMappingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ + "createdAt", + "updatedAt", + "workflowArn", + "workflowName" + ], + "type": "structure" + }, + "IncrementalRunConfig": { + "members": { + "incrementalRunType": { + "shape": "IncrementalRunType" + } + }, + "type": "structure" + }, + "IncrementalRunType": { + "enum": [ + "IMMEDIATE" + ], + "type": "string" + }, + "InputSource": { + "members": { + "applyNormalization": { + "shape": "Boolean" + }, + "inputSourceARN": { + "shape": "InputSourceInputSourceARNString" + }, + "schemaName": { + "shape": "EntityName" + } + }, + "required": [ "inputSourceARN", "schemaName" ], - "members":{ - "applyNormalization":{"shape":"Boolean"}, - "inputSourceARN":{"shape":"InputSourceInputSourceARNString"}, - "schemaName":{"shape":"EntityName"} - } - }, - "InputSourceConfig":{ - "type":"list", - "member":{"shape":"InputSource"}, - "max":20, - "min":1 - }, - "InputSourceInputSourceARNString":{ - "type":"string", - "pattern":"^arn:aws:.*:.*:[0-9]+:.*$" - }, - "Integer":{ - "type":"integer", - "box":true - }, - "InternalServerException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"} - }, - "error":{"httpStatusCode":500}, - "exception":true, - "fault":true, - "retryable":{"throttling":false} - }, - "JobId":{ - "type":"string", - "pattern":"^[a-f0-9]{32}$" - }, - "JobList":{ - "type":"list", - "member":{"shape":"JobSummary"} - }, - "JobMetrics":{ - "type":"structure", - "members":{ - "inputRecords":{"shape":"Integer"}, - "matchIDs":{"shape":"Integer"}, - "recordsNotProcessed":{"shape":"Integer"}, - "totalRecordsProcessed":{"shape":"Integer"} - } - }, - "JobStatus":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "InputSourceConfig": { + "max": 20, + "member": { + "shape": "InputSource" + }, + "min": 1, + "type": "list" + }, + "InputSourceInputSourceARNString": { + "pattern": "^arn:aws:.*:.*:[0-9]+:.*$", + "type": "string" + }, + "Integer": { + "box": true, + "type": "integer" + }, + "IntermediateSourceConfiguration": { + "members": { + "intermediateS3Path": { + "shape": "S3Path" + } + }, + "required": [ + "intermediateS3Path" + ], + "type": "structure" + }, + "InternalServerException": { + "error": { + "httpStatusCode": 500 + }, + "exception": true, + "fault": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "retryable": { + "throttling": false + }, + "type": "structure" + }, + "JobId": { + "pattern": "^[a-f0-9]{32}$", + "type": "string" + }, + "JobList": { + "member": { + "shape": "JobSummary" + }, + "type": "list" + }, + "JobMetrics": { + "members": { + "inputRecords": { + "shape": "Integer" + }, + "matchIDs": { + "shape": "Integer" + }, + "recordsNotProcessed": { + "shape": "Integer" + }, + "totalRecordsProcessed": { + "shape": "Integer" + } + }, + "type": "structure" + }, + "JobStatus": { + "enum": [ "RUNNING", "SUCCEEDED", "FAILED", "QUEUED" - ] + ], + "type": "string" }, - "JobSummary":{ - "type":"structure", - "required":[ + "JobSummary": { + "members": { + "endTime": { + "shape": "Timestamp" + }, + "jobId": { + "shape": "JobId" + }, + "startTime": { + "shape": "Timestamp" + }, + "status": { + "shape": "JobStatus" + } + }, + "required": [ "jobId", "startTime", "status" ], - "members":{ - "endTime":{"shape":"Timestamp"}, - "jobId":{"shape":"JobId"}, - "startTime":{"shape":"Timestamp"}, - "status":{"shape":"JobStatus"} - } - }, - "KMSArn":{ - "type":"string", - "pattern":"^arn:aws:kms:.*:[0-9]+:.*$" - }, - "ListMatchingJobsInput":{ - "type":"structure", - "required":["workflowName"], - "members":{ - "maxResults":{ - "shape":"ListMatchingJobsInputMaxResultsInteger", - "location":"querystring", - "locationName":"maxResults" - }, - "nextToken":{ - "shape":"NextToken", - "location":"querystring", - "locationName":"nextToken" - }, - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" - } - } - }, - "ListMatchingJobsInputMaxResultsInteger":{ - "type":"integer", - "box":true, - "max":25, - "min":1 - }, - "ListMatchingJobsOutput":{ - "type":"structure", - "members":{ - "jobs":{"shape":"JobList"}, - "nextToken":{"shape":"NextToken"} - } - }, - "ListMatchingWorkflowsInput":{ - "type":"structure", - "members":{ - "maxResults":{ - "shape":"ListMatchingWorkflowsInputMaxResultsInteger", - "location":"querystring", - "locationName":"maxResults" - }, - "nextToken":{ - "shape":"NextToken", - "location":"querystring", - "locationName":"nextToken" - } - } - }, - "ListMatchingWorkflowsInputMaxResultsInteger":{ - "type":"integer", - "box":true, - "max":25 - }, - "ListMatchingWorkflowsOutput":{ - "type":"structure", - "members":{ - "nextToken":{"shape":"NextToken"}, - "workflowSummaries":{"shape":"MatchingWorkflowList"} - } - }, - "ListSchemaMappingsInput":{ - "type":"structure", - "members":{ - "maxResults":{ - "shape":"ListSchemaMappingsInputMaxResultsInteger", - "location":"querystring", - "locationName":"maxResults" - }, - "nextToken":{ - "shape":"NextToken", - "location":"querystring", - "locationName":"nextToken" - } - } - }, - "ListSchemaMappingsInputMaxResultsInteger":{ - "type":"integer", - "box":true, - "max":25 - }, - "ListSchemaMappingsOutput":{ - "type":"structure", - "members":{ - "nextToken":{"shape":"NextToken"}, - "schemaList":{"shape":"SchemaMappingList"} - } - }, - "ListTagsForResourceInput":{ - "type":"structure", - "required":["resourceArn"], - "members":{ - "resourceArn":{ - "shape":"VeniceGlobalArn", - "location":"uri", - "locationName":"resourceArn" - } - } - }, - "ListTagsForResourceOutput":{ - "type":"structure", - "required":["tags"], - "members":{ - "tags":{"shape":"TagMap"} - } - }, - "MatchingWorkflowArn":{ - "type":"string", - "pattern":"^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(matchingworkflow/.*)$" - }, - "MatchingWorkflowList":{ - "type":"list", - "member":{"shape":"MatchingWorkflowSummary"} - }, - "MatchingWorkflowSummary":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "KMSArn": { + "pattern": "^arn:aws:kms:.*:[0-9]+:.*$", + "type": "string" + }, + "ListIdMappingJobsInput": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "ListIdMappingJobsInputMaxResultsInteger" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "workflowName" + ], + "type": "structure" + }, + "ListIdMappingJobsInputMaxResultsInteger": { + "box": true, + "max": 25, + "min": 1, + "type": "integer" + }, + "ListIdMappingJobsOutput": { + "members": { + "jobs": { + "shape": "JobList" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListIdMappingWorkflowsInput": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "ListIdMappingWorkflowsInputMaxResultsInteger" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListIdMappingWorkflowsInputMaxResultsInteger": { + "box": true, + "max": 25, + "type": "integer" + }, + "ListIdMappingWorkflowsOutput": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "workflowSummaries": { + "shape": "IdMappingWorkflowList" + } + }, + "type": "structure" + }, + "ListMatchingJobsInput": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "ListMatchingJobsInputMaxResultsInteger" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "workflowName" + ], + "type": "structure" + }, + "ListMatchingJobsInputMaxResultsInteger": { + "box": true, + "max": 25, + "min": 1, + "type": "integer" + }, + "ListMatchingJobsOutput": { + "members": { + "jobs": { + "shape": "JobList" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListMatchingWorkflowsInput": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "ListMatchingWorkflowsInputMaxResultsInteger" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListMatchingWorkflowsInputMaxResultsInteger": { + "box": true, + "max": 25, + "type": "integer" + }, + "ListMatchingWorkflowsOutput": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "workflowSummaries": { + "shape": "MatchingWorkflowList" + } + }, + "type": "structure" + }, + "ListProviderServicesInput": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "ListProviderServicesInputMaxResultsInteger" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "providerName": { + "location": "querystring", + "locationName": "providerName", + "shape": "EntityName" + } + }, + "type": "structure" + }, + "ListProviderServicesInputMaxResultsInteger": { + "box": true, + "max": 25, + "min": 15, + "type": "integer" + }, + "ListProviderServicesOutput": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "providerServiceSummaries": { + "shape": "ProviderServiceList" + } + }, + "type": "structure" + }, + "ListSchemaMappingsInput": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "ListSchemaMappingsInputMaxResultsInteger" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListSchemaMappingsInputMaxResultsInteger": { + "box": true, + "max": 25, + "type": "integer" + }, + "ListSchemaMappingsOutput": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "schemaList": { + "shape": "SchemaMappingList" + } + }, + "type": "structure" + }, + "ListTagsForResourceInput": { + "members": { + "resourceArn": { + "location": "uri", + "locationName": "resourceArn", + "shape": "VeniceGlobalArn" + } + }, + "required": [ + "resourceArn" + ], + "type": "structure" + }, + "ListTagsForResourceOutput": { + "members": { + "tags": { + "shape": "TagMap" + } + }, + "required": [ + "tags" + ], + "type": "structure" + }, + "MatchingWorkflowArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(matchingworkflow/.*)$", + "type": "string" + }, + "MatchingWorkflowList": { + "member": { + "shape": "MatchingWorkflowSummary" + }, + "type": "list" + }, + "MatchingWorkflowSummary": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "resolutionType": { + "shape": "ResolutionType" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "workflowArn": { + "shape": "MatchingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ "createdAt", + "resolutionType", "updatedAt", "workflowArn", "workflowName" ], - "members":{ - "createdAt":{"shape":"Timestamp"}, - "updatedAt":{"shape":"Timestamp"}, - "workflowArn":{"shape":"MatchingWorkflowArn"}, - "workflowName":{"shape":"EntityName"} - } - }, - "NextToken":{ - "type":"string", - "max":1024, - "min":1, - "pattern":"^[a-zA-Z_0-9-=+/]*$" - }, - "OutputAttribute":{ - "type":"structure", - "required":["name"], - "members":{ - "hashed":{"shape":"Boolean"}, - "name":{"shape":"AttributeName"} - } - }, - "OutputSource":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "NextToken": { + "max": 1024, + "min": 1, + "pattern": "^[a-zA-Z_0-9-=+/]*$", + "type": "string" + }, + "OutputAttribute": { + "members": { + "hashed": { + "shape": "Boolean" + }, + "name": { + "shape": "AttributeName" + } + }, + "required": [ + "name" + ], + "type": "structure" + }, + "OutputSource": { + "members": { + "KMSArn": { + "shape": "KMSArn" + }, + "applyNormalization": { + "shape": "Boolean" + }, + "output": { + "shape": "OutputSourceOutputList" + }, + "outputS3Path": { + "shape": "S3Path" + } + }, + "required": [ "output", "outputS3Path" ], - "members":{ - "KMSArn":{"shape":"KMSArn"}, - "applyNormalization":{"shape":"Boolean"}, - "output":{"shape":"OutputSourceOutputList"}, - "outputS3Path":{"shape":"S3Path"} - } - }, - "OutputSourceConfig":{ - "type":"list", - "member":{"shape":"OutputSource"}, - "max":1, - "min":1 - }, - "OutputSourceOutputList":{ - "type":"list", - "member":{"shape":"OutputAttribute"}, - "max":750, - "min":0 - }, - "RecordAttributeMap":{ - "type":"map", - "key":{"shape":"RecordAttributeMapKeyString"}, - "value":{"shape":"RecordAttributeMapValueString"}, - "sensitive":true - }, - "RecordAttributeMapKeyString":{ - "type":"string", - "max":255, - "min":0, - "pattern":"^[a-zA-Z_0-9- \\t]*$" - }, - "RecordAttributeMapValueString":{ - "type":"string", - "max":255, - "min":0, - "pattern":"^[a-zA-Z_0-9-.@ ()+\\t]*$" - }, - "ResolutionTechniques":{ - "type":"structure", - "required":["resolutionType"], - "members":{ - "resolutionType":{"shape":"ResolutionType"}, - "ruleBasedProperties":{"shape":"RuleBasedProperties"} - } - }, - "ResolutionType":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "OutputSourceConfig": { + "max": 1, + "member": { + "shape": "OutputSource" + }, + "min": 1, + "type": "list" + }, + "OutputSourceOutputList": { + "max": 750, + "member": { + "shape": "OutputAttribute" + }, + "min": 0, + "type": "list" + }, + "ProviderEndpointConfiguration": { + "members": { + "marketplaceConfiguration": { + "shape": "ProviderMarketplaceConfiguration" + } + }, + "type": "structure", + "union": true + }, + "ProviderIntermediateDataAccessConfiguration": { + "members": { + "awsAccountIds": { + "shape": "AwsAccountIdList" + }, + "requiredBucketActions": { + "shape": "RequiredBucketActionsList" + } + }, + "type": "structure" + }, + "ProviderMarketplaceConfiguration": { + "members": { + "assetId": { + "shape": "String" + }, + "dataSetId": { + "shape": "String" + }, + "listingId": { + "shape": "String" + }, + "revisionId": { + "shape": "String" + } + }, + "required": [ + "assetId", + "dataSetId", + "listingId", + "revisionId" + ], + "type": "structure" + }, + "ProviderProperties": { + "members": { + "intermediateSourceConfiguration": { + "shape": "IntermediateSourceConfiguration" + }, + "providerServiceArn": { + "shape": "ProviderServiceArn" + } + }, + "required": [ + "providerServiceArn" + ], + "type": "structure" + }, + "ProviderServiceArn": { + "max": 255, + "min": 20, + "pattern": "^arn:(aws|aws-us-gov|aws-cn):(entityresolution):([a-z]{2}-[a-z-]+?-[0-9])::providerservice/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$", + "type": "string" + }, + "ProviderServiceDisplayName": { + "max": 255, + "min": 0, + "type": "string" + }, + "ProviderServiceList": { + "member": { + "shape": "ProviderServiceSummary" + }, + "type": "list" + }, + "ProviderServiceSummary": { + "members": { + "providerName": { + "shape": "EntityName" + }, + "providerServiceArn": { + "shape": "ProviderServiceArn" + }, + "providerServiceDisplayName": { + "shape": "ProviderServiceDisplayName" + }, + "providerServiceName": { + "shape": "EntityName" + }, + "providerServiceType": { + "shape": "ServiceType" + } + }, + "required": [ + "providerName", + "providerServiceArn", + "providerServiceDisplayName", + "providerServiceName", + "providerServiceType" + ], + "type": "structure" + }, + "RecordAttributeMap": { + "key": { + "shape": "RecordAttributeMapKeyString" + }, + "sensitive": true, + "type": "map", + "value": { + "shape": "RecordAttributeMapValueString" + } + }, + "RecordAttributeMapKeyString": { + "max": 255, + "min": 0, + "pattern": "^[a-zA-Z_0-9- \\t]*$", + "type": "string" + }, + "RecordAttributeMapValueString": { + "max": 255, + "min": 0, + "pattern": "^[a-zA-Z_0-9-.@ ()+\\t]*$", + "type": "string" + }, + "RequiredBucketActionsList": { + "member": { + "shape": "String" + }, + "type": "list" + }, + "ResolutionTechniques": { + "members": { + "providerProperties": { + "shape": "ProviderProperties" + }, + "resolutionType": { + "shape": "ResolutionType" + }, + "ruleBasedProperties": { + "shape": "RuleBasedProperties" + } + }, + "required": [ + "resolutionType" + ], + "type": "structure" + }, + "ResolutionType": { + "enum": [ "RULE_MATCHING", - "ML_MATCHING" - ] + "ML_MATCHING", + "PROVIDER" + ], + "type": "string" }, - "ResourceNotFoundException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"} - }, - "error":{ - "httpStatusCode":404, - "senderFault":true - }, - "exception":true - }, - "Rule":{ - "type":"structure", - "required":[ + "ResourceNotFoundException": { + "error": { + "httpStatusCode": 404, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "type": "structure" + }, + "RoleArn": { + "pattern": "^arn:aws:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "Rule": { + "members": { + "matchingKeys": { + "shape": "RuleMatchingKeysList" + }, + "ruleName": { + "shape": "RuleRuleNameString" + } + }, + "required": [ "matchingKeys", "ruleName" ], - "members":{ - "matchingKeys":{"shape":"RuleMatchingKeysList"}, - "ruleName":{"shape":"RuleRuleNameString"} - } + "type": "structure" }, - "RuleBasedProperties":{ - "type":"structure", - "required":[ + "RuleBasedProperties": { + "members": { + "attributeMatchingModel": { + "shape": "AttributeMatchingModel" + }, + "rules": { + "shape": "RuleBasedPropertiesRulesList" + } + }, + "required": [ "attributeMatchingModel", "rules" ], - "members":{ - "attributeMatchingModel":{"shape":"AttributeMatchingModel"}, - "rules":{"shape":"RuleBasedPropertiesRulesList"} - } - }, - "RuleBasedPropertiesRulesList":{ - "type":"list", - "member":{"shape":"Rule"}, - "max":15, - "min":1 - }, - "RuleMatchingKeysList":{ - "type":"list", - "member":{"shape":"AttributeName"}, - "max":15, - "min":1 - }, - "RuleRuleNameString":{ - "type":"string", - "max":255, - "min":0, - "pattern":"^[a-zA-Z_0-9- \\t]*$" - }, - "S3Path":{ - "type":"string", - "pattern":"^s3://([^/]+)/?(.*?([^/]+)/?)$" - }, - "SchemaAttributeType":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "RuleBasedPropertiesRulesList": { + "max": 15, + "member": { + "shape": "Rule" + }, + "min": 1, + "type": "list" + }, + "RuleMatchingKeysList": { + "max": 15, + "member": { + "shape": "AttributeName" + }, + "min": 1, + "type": "list" + }, + "RuleRuleNameString": { + "max": 255, + "min": 0, + "pattern": "^[a-zA-Z_0-9- \\t]*$", + "type": "string" + }, + "S3Path": { + "max": 1024, + "min": 1, + "pattern": "^s3://[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9](/.*)?$", + "type": "string" + }, + "SchemaAttributeType": { + "enum": [ "NAME", "NAME_FIRST", "NAME_MIDDLE", @@ -954,206 +2302,423 @@ "EMAIL_ADDRESS", "UNIQUE_ID", "DATE", - "STRING" - ] + "STRING", + "PROVIDER_ID" + ], + "type": "string" }, - "SchemaInputAttribute":{ - "type":"structure", - "required":[ + "SchemaInputAttribute": { + "members": { + "fieldName": { + "shape": "AttributeName" + }, + "groupName": { + "shape": "AttributeName" + }, + "matchKey": { + "shape": "AttributeName" + }, + "subType": { + "shape": "AttributeName" + }, + "type": { + "shape": "SchemaAttributeType" + } + }, + "required": [ "fieldName", "type" ], - "members":{ - "fieldName":{"shape":"AttributeName"}, - "groupName":{"shape":"AttributeName"}, - "matchKey":{"shape":"AttributeName"}, - "type":{"shape":"SchemaAttributeType"} - } - }, - "SchemaInputAttributes":{ - "type":"list", - "member":{"shape":"SchemaInputAttribute"}, - "max":25, - "min":2 - }, - "SchemaMappingArn":{ - "type":"string", - "pattern":"^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$" - }, - "SchemaMappingList":{ - "type":"list", - "member":{"shape":"SchemaMappingSummary"} - }, - "SchemaMappingSummary":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "SchemaInputAttributes": { + "max": 25, + "member": { + "shape": "SchemaInputAttribute" + }, + "min": 2, + "type": "list" + }, + "SchemaMappingArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$", + "type": "string" + }, + "SchemaMappingList": { + "member": { + "shape": "SchemaMappingSummary" + }, + "type": "list" + }, + "SchemaMappingSummary": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "hasWorkflows": { + "shape": "Boolean" + }, + "schemaArn": { + "shape": "SchemaMappingArn" + }, + "schemaName": { + "shape": "EntityName" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "required": [ "createdAt", + "hasWorkflows", "schemaArn", "schemaName", "updatedAt" ], - "members":{ - "createdAt":{"shape":"Timestamp"}, - "schemaArn":{"shape":"SchemaMappingArn"}, - "schemaName":{"shape":"EntityName"}, - "updatedAt":{"shape":"Timestamp"} - } - }, - "StartMatchingJobInput":{ - "type":"structure", - "required":["workflowName"], - "members":{ - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" + "type": "structure" + }, + "ServiceType": { + "enum": [ + "ASSIGNMENT", + "ID_MAPPING" + ], + "type": "string" + }, + "StartIdMappingJobInput": { + "members": { + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" } - } + }, + "required": [ + "workflowName" + ], + "type": "structure" }, - "StartMatchingJobOutput":{ - "type":"structure", - "required":["jobId"], - "members":{ - "jobId":{"shape":"JobId"} - } - }, - "String":{"type":"string"}, - "TagKey":{ - "type":"string", - "max":128, - "min":1 - }, - "TagKeyList":{ - "type":"list", - "member":{"shape":"TagKey"}, - "max":200, - "min":0 - }, - "TagMap":{ - "type":"map", - "key":{"shape":"TagKey"}, - "value":{"shape":"TagValue"}, - "max":200, - "min":0 - }, - "TagResourceInput":{ - "type":"structure", - "required":[ - "resourceArn", - "tags" + "StartIdMappingJobOutput": { + "members": { + "jobId": { + "shape": "JobId" + } + }, + "required": [ + "jobId" ], - "members":{ - "resourceArn":{ - "shape":"VeniceGlobalArn", - "location":"uri", - "locationName":"resourceArn" - }, - "tags":{"shape":"TagMap"} - } + "type": "structure" }, - "TagResourceOutput":{ - "type":"structure", - "members":{ - } + "StartMatchingJobInput": { + "members": { + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ + "workflowName" + ], + "type": "structure" }, - "TagValue":{ - "type":"string", - "max":256, - "min":0 + "StartMatchingJobOutput": { + "members": { + "jobId": { + "shape": "JobId" + } + }, + "required": [ + "jobId" + ], + "type": "structure" }, - "ThrottlingException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"} + "String": { + "type": "string" + }, + "TagKey": { + "max": 128, + "min": 1, + "type": "string" + }, + "TagKeyList": { + "max": 200, + "member": { + "shape": "TagKey" + }, + "min": 0, + "type": "list" + }, + "TagMap": { + "key": { + "shape": "TagKey" + }, + "max": 200, + "min": 0, + "type": "map", + "value": { + "shape": "TagValue" + } + }, + "TagResourceInput": { + "members": { + "resourceArn": { + "location": "uri", + "locationName": "resourceArn", + "shape": "VeniceGlobalArn" + }, + "tags": { + "shape": "TagMap" + } }, - "error":{ - "httpStatusCode":429, - "senderFault":true + "required": [ + "resourceArn", + "tags" + ], + "type": "structure" + }, + "TagResourceOutput": { + "members": {}, + "type": "structure" + }, + "TagValue": { + "max": 256, + "min": 0, + "type": "string" + }, + "ThrottlingException": { + "error": { + "httpStatusCode": 429, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "retryable": { + "throttling": true }, - "exception":true, - "retryable":{"throttling":true} + "type": "structure" }, - "Timestamp":{"type":"timestamp"}, - "UntagResourceInput":{ - "type":"structure", - "required":[ + "Timestamp": { + "type": "timestamp" + }, + "UntagResourceInput": { + "members": { + "resourceArn": { + "location": "uri", + "locationName": "resourceArn", + "shape": "VeniceGlobalArn" + }, + "tagKeys": { + "location": "querystring", + "locationName": "tagKeys", + "shape": "TagKeyList" + } + }, + "required": [ "resourceArn", "tagKeys" ], - "members":{ - "resourceArn":{ - "shape":"VeniceGlobalArn", - "location":"uri", - "locationName":"resourceArn" + "type": "structure" + }, + "UntagResourceOutput": { + "members": {}, + "type": "structure" + }, + "UpdateIdMappingWorkflowInput": { + "members": { + "description": { + "shape": "Description" + }, + "idMappingTechniques": { + "shape": "IdMappingTechniques" + }, + "inputSourceConfig": { + "shape": "IdMappingWorkflowInputSourceConfig" }, - "tagKeys":{ - "shape":"TagKeyList", - "location":"querystring", - "locationName":"tagKeys" + "outputSourceConfig": { + "shape": "IdMappingWorkflowOutputSourceConfig" + }, + "roleArn": { + "shape": "RoleArn" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" } - } + }, + "required": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowName" + ], + "type": "structure" }, - "UntagResourceOutput":{ - "type":"structure", - "members":{ - } + "UpdateIdMappingWorkflowOutput": { + "members": { + "description": { + "shape": "Description" + }, + "idMappingTechniques": { + "shape": "IdMappingTechniques" + }, + "inputSourceConfig": { + "shape": "IdMappingWorkflowInputSourceConfig" + }, + "outputSourceConfig": { + "shape": "IdMappingWorkflowOutputSourceConfig" + }, + "roleArn": { + "shape": "RoleArn" + }, + "workflowArn": { + "shape": "IdMappingWorkflowArn" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ + "idMappingTechniques", + "inputSourceConfig", + "outputSourceConfig", + "roleArn", + "workflowArn", + "workflowName" + ], + "type": "structure" }, - "UpdateMatchingWorkflowInput":{ - "type":"structure", - "required":[ + "UpdateMatchingWorkflowInput": { + "members": { + "description": { + "shape": "Description" + }, + "incrementalRunConfig": { + "shape": "IncrementalRunConfig" + }, + "inputSourceConfig": { + "shape": "InputSourceConfig" + }, + "outputSourceConfig": { + "shape": "OutputSourceConfig" + }, + "resolutionTechniques": { + "shape": "ResolutionTechniques" + }, + "roleArn": { + "shape": "String" + }, + "workflowName": { + "location": "uri", + "locationName": "workflowName", + "shape": "EntityName" + } + }, + "required": [ "inputSourceConfig", "outputSourceConfig", "resolutionTechniques", "roleArn", "workflowName" ], - "members":{ - "description":{"shape":"Description"}, - "incrementalRunConfig":{"shape":"IncrementalRunConfig"}, - "inputSourceConfig":{"shape":"InputSourceConfig"}, - "outputSourceConfig":{"shape":"OutputSourceConfig"}, - "resolutionTechniques":{"shape":"ResolutionTechniques"}, - "roleArn":{"shape":"String"}, - "workflowName":{ - "shape":"EntityName", - "location":"uri", - "locationName":"workflowName" - } - } + "type": "structure" }, - "UpdateMatchingWorkflowOutput":{ - "type":"structure", - "required":[ + "UpdateMatchingWorkflowOutput": { + "members": { + "description": { + "shape": "Description" + }, + "incrementalRunConfig": { + "shape": "IncrementalRunConfig" + }, + "inputSourceConfig": { + "shape": "InputSourceConfig" + }, + "outputSourceConfig": { + "shape": "OutputSourceConfig" + }, + "resolutionTechniques": { + "shape": "ResolutionTechniques" + }, + "roleArn": { + "shape": "String" + }, + "workflowName": { + "shape": "EntityName" + } + }, + "required": [ "inputSourceConfig", "outputSourceConfig", "resolutionTechniques", "roleArn", "workflowName" ], - "members":{ - "description":{"shape":"Description"}, - "incrementalRunConfig":{"shape":"IncrementalRunConfig"}, - "inputSourceConfig":{"shape":"InputSourceConfig"}, - "outputSourceConfig":{"shape":"OutputSourceConfig"}, - "resolutionTechniques":{"shape":"ResolutionTechniques"}, - "roleArn":{"shape":"String"}, - "workflowName":{"shape":"EntityName"} - } - }, - "ValidationException":{ - "type":"structure", - "members":{ - "message":{"shape":"ErrorMessage"} - }, - "error":{ - "httpStatusCode":400, - "senderFault":true - }, - "exception":true - }, - "VeniceGlobalArn":{ - "type":"string", - "pattern":"^arn:(aws|aws-us-gov|aws-cn):(entityresolution):.*:[0-9]+:((schemamapping|matchingworkflow)/[a-zA-Z0-9_-]+)$" + "type": "structure" + }, + "UpdateSchemaMappingInput": { + "members": { + "description": { + "shape": "Description" + }, + "mappedInputFields": { + "shape": "SchemaInputAttributes" + }, + "schemaName": { + "location": "uri", + "locationName": "schemaName", + "shape": "EntityName" + } + }, + "required": [ + "mappedInputFields", + "schemaName" + ], + "type": "structure" + }, + "UpdateSchemaMappingOutput": { + "members": { + "description": { + "shape": "Description" + }, + "mappedInputFields": { + "shape": "SchemaInputAttributes" + }, + "schemaArn": { + "shape": "SchemaMappingArn" + }, + "schemaName": { + "shape": "EntityName" + } + }, + "required": [ + "mappedInputFields", + "schemaArn", + "schemaName" + ], + "type": "structure" + }, + "ValidationException": { + "error": { + "httpStatusCode": 400, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "type": "structure" + }, + "VeniceGlobalArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn):(entityresolution):.*:[0-9]+:((schemamapping|matchingworkflow|idmappingworkflow)/[a-zA-Z0-9_-]+)$", + "type": "string" } - } -} + }, + "version": "2.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,22 +2,33 @@ "version": "2.0", "service": "

Welcome to the Entity Resolution API Reference.

Entity Resolution is an Amazon Web Services service that provides pre-configured entity resolution capabilities that enable developers and analysts at advertising and marketing companies to build an accurate and complete view of their consumers.

With Entity Resolution, you can match source records containing consumer identifiers, such as name, email address, and phone number. This is true even when these records have incomplete or conflicting identifiers. For example, Entity Resolution can effectively match a source record from a customer relationship management (CRM) system with a source record from a marketing system containing campaign information.

To learn more about Entity Resolution concepts, procedures, and best practices, see the Entity Resolution User Guide.

", "operations": { + "CreateIdMappingWorkflow": "

Creates an IdMappingWorkflow object which stores the configuration of the data processing job to be run. Each IdMappingWorkflow must have a unique workflow name. To modify an existing workflow, use the UpdateIdMappingWorkflow API.

", "CreateMatchingWorkflow": "

Creates a MatchingWorkflow object which stores the configuration of the data processing job to be run. It is important to note that there should not be a pre-existing MatchingWorkflow with the same name. To modify an existing workflow, utilize the UpdateMatchingWorkflow API.

", "CreateSchemaMapping": "

Creates a schema mapping, which defines the schema of the input customer records table. The SchemaMapping also provides Entity Resolution with some metadata about the table, such as the attribute types of the columns and which columns to match on.

", + "DeleteIdMappingWorkflow": "

Deletes the IdMappingWorkflow with a given name. This operation will succeed even if a workflow with the given name does not exist.

", "DeleteMatchingWorkflow": "

Deletes the MatchingWorkflow with a given name. This operation will succeed even if a workflow with the given name does not exist.

", - "DeleteSchemaMapping": "

Deletes the SchemaMapping with a given name. This operation will succeed even if a schema with the given name does not exist. This operation will fail if there is a DataIntegrationWorkflow object that references the SchemaMapping in the workflow's InputSourceConfig.

", + "DeleteSchemaMapping": "

Deletes the SchemaMapping with a given name. This operation will succeed even if a schema with the given name does not exist. This operation will fail if there is a MatchingWorkflow object that references the SchemaMapping in the workflow's InputSourceConfig.

", + "GetIdMappingJob": "

Gets the status, metrics, and errors (if there are any) that are associated with a job.

", + "GetIdMappingWorkflow": "

Returns the IdMappingWorkflow with a given name, if it exists.

", "GetMatchId": "

Returns the corresponding Match ID of a customer record if the record has been processed.

", "GetMatchingJob": "

Gets the status, metrics, and errors (if there are any) that are associated with a job.

", "GetMatchingWorkflow": "

Returns the MatchingWorkflow with a given name, if it exists.

", + "GetProviderService": "

Returns the ProviderService of a given name.

", "GetSchemaMapping": "

Returns the SchemaMapping of a given name.

", + "ListIdMappingJobs": "

Lists all ID mapping jobs for a given workflow.

", + "ListIdMappingWorkflows": "

Returns a list of all the IdMappingWorkflows that have been created for an Amazon Web Services account.

", "ListMatchingJobs": "

Lists all jobs for a given workflow.

", "ListMatchingWorkflows": "

Returns a list of all the MatchingWorkflows that have been created for an Amazon Web Services account.

", + "ListProviderServices": "

Returns a list of all the ProviderServices that are available in this Amazon Web Services Region.

", "ListSchemaMappings": "

Returns a list of all the SchemaMappings that have been created for an Amazon Web Services account.

", "ListTagsForResource": "

Displays the tags associated with an Entity Resolution resource. In Entity Resolution, SchemaMapping, and MatchingWorkflow can be tagged.

", + "StartIdMappingJob": "

Starts the IdMappingJob of a workflow. The workflow must have previously been created using the CreateIdMappingWorkflow endpoint.

", "StartMatchingJob": "

Starts the MatchingJob of a workflow. The workflow must have previously been created using the CreateMatchingWorkflow endpoint.

", "TagResource": "

Assigns one or more tags (key-value pairs) to the specified Entity Resolution resource. Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values. In Entity Resolution, SchemaMapping and MatchingWorkflow can be tagged. Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters. You can use the TagResource action with a resource that already has tags. If you specify a new tag key, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

", "UntagResource": "

Removes one or more tags from the specified Entity Resolution resource. In Entity Resolution, SchemaMapping, and MatchingWorkflow can be tagged.

", - "UpdateMatchingWorkflow": "

Updates an existing MatchingWorkflow. This method is identical to CreateMatchingWorkflow, except it uses an HTTP PUT request instead of a POST request, and the MatchingWorkflow must already exist for the method to succeed.

" + "UpdateIdMappingWorkflow": "

Updates an existing IdMappingWorkflow. This method is identical to CreateIdMappingWorkflow, except it uses an HTTP PUT request instead of a POST request, and the IdMappingWorkflow must already exist for the method to succeed.

", + "UpdateMatchingWorkflow": "

Updates an existing MatchingWorkflow. This method is identical to CreateMatchingWorkflow, except it uses an HTTP PUT request instead of a POST request, and the MatchingWorkflow must already exist for the method to succeed.

", + "UpdateSchemaMapping": "

Updates a schema mapping.

A schema is immutable if it is being used by a workflow. Therefore, you can't update a schema mapping if it's associated with a workflow.

" }, "shapes": { "AccessDeniedException": { @@ -38,15 +49,31 @@ "RuleMatchingKeysList$member": null, "SchemaInputAttribute$fieldName": "

A string containing the field name.

", "SchemaInputAttribute$groupName": "

Instruct Entity Resolution to combine several columns into a unified column with the identical attribute type. For example, when working with columns such as first_name, middle_name, and last_name, assigning them a common GroupName will prompt Entity Resolution to concatenate them into a single value.

", - "SchemaInputAttribute$matchKey": "

A key that allows grouping of multiple input attributes into a unified matching group. For example, let's consider a scenario where the source table contains various addresses, such as business_address and shipping_address. By assigning the MatchKey Address to both attributes, Entity Resolution will match records across these fields to create a consolidated matching group. If no MatchKey is specified for a column, it won't be utilized for matching purposes but will still be included in the output table.

" + "SchemaInputAttribute$matchKey": "

A key that allows grouping of multiple input attributes into a unified matching group. For example, let's consider a scenario where the source table contains various addresses, such as business_address and shipping_address. By assigning the MatchKey Address to both attributes, Entity Resolution will match records across these fields to create a consolidated matching group. If no MatchKey is specified for a column, it won't be utilized for matching purposes but will still be included in the output table.

", + "SchemaInputAttribute$subType": "

The subtype of the attribute, selected from a list of values.

" + } + }, + "AwsAccountId": { + "base": null, + "refs": { + "AwsAccountIdList$member": null + } + }, + "AwsAccountIdList": { + "base": null, + "refs": { + "ProviderIntermediateDataAccessConfiguration$awsAccountIds": "

The Amazon Web Services account that provider can use to read or write data into the customer's intermediate S3 bucket.

" } }, "Boolean": { "base": null, "refs": { + "GetProviderServiceOutput$anonymizedOutput": "

Specifies whether output data from the provider is anonymized. A value of TRUE means the output will be anonymized and you can't relate the data that comes back from the provider to the identifying input. A value of FALSE means the output won't be anonymized and you can relate the data that comes back from the provider to your source data.

", + "GetSchemaMappingOutput$hasWorkflows": "

Specifies whether the schema mapping has been applied to a workflow.

", "InputSource$applyNormalization": "

Normalizes the attributes defined in the schema in the input data. For example, if an attribute has an AttributeType of PHONE_NUMBER, and the data in the input table is in a format of 1234567890, Entity Resolution will normalize this field in the output to (123)-456-7890.

", "OutputAttribute$hashed": "

Enables the ability to hash the column values in the output.

", - "OutputSource$applyNormalization": "

Normalizes the attributes defined in the schema in the input data. For example, if an attribute has an AttributeType of PHONE_NUMBER, and the data in the input table is in a format of 1234567890, Entity Resolution will normalize this field in the output to (123)-456-7890.

" + "OutputSource$applyNormalization": "

Normalizes the attributes defined in the schema in the input data. For example, if an attribute has an AttributeType of PHONE_NUMBER, and the data in the input table is in a format of 1234567890, Entity Resolution will normalize this field in the output to (123)-456-7890.

", + "SchemaMappingSummary$hasWorkflows": "

Specifies whether the schema mapping has been applied to a workflow.

" } }, "ConflictException": { @@ -54,6 +81,16 @@ "refs": { } }, + "CreateIdMappingWorkflowInput": { + "base": null, + "refs": { + } + }, + "CreateIdMappingWorkflowOutput": { + "base": null, + "refs": { + } + }, "CreateMatchingWorkflowInput": { "base": null, "refs": { @@ -74,6 +111,16 @@ "refs": { } }, + "DeleteIdMappingWorkflowInput": { + "base": null, + "refs": { + } + }, + "DeleteIdMappingWorkflowOutput": { + "base": null, + "refs": { + } + }, "DeleteMatchingWorkflowInput": { "base": null, "refs": { @@ -97,43 +144,79 @@ "Description": { "base": null, "refs": { + "CreateIdMappingWorkflowInput$description": "

A description of the workflow.

", + "CreateIdMappingWorkflowOutput$description": "

A description of the workflow.

", "CreateMatchingWorkflowInput$description": "

A description of the workflow.

", "CreateMatchingWorkflowOutput$description": "

A description of the workflow.

", "CreateSchemaMappingInput$description": "

A description of the schema.

", "CreateSchemaMappingOutput$description": "

A description of the schema.

", + "GetIdMappingWorkflowOutput$description": "

A description of the workflow.

", "GetMatchingWorkflowOutput$description": "

A description of the workflow.

", "GetSchemaMappingOutput$description": "

A description of the schema.

", + "UpdateIdMappingWorkflowInput$description": "

A description of the workflow.

", + "UpdateIdMappingWorkflowOutput$description": "

A description of the workflow.

", "UpdateMatchingWorkflowInput$description": "

A description of the workflow.

", - "UpdateMatchingWorkflowOutput$description": "

A description of the workflow.

" + "UpdateMatchingWorkflowOutput$description": "

A description of the workflow.

", + "UpdateSchemaMappingInput$description": "

A description of the schema.

", + "UpdateSchemaMappingOutput$description": "

A description of the schema.

" + } + }, + "Document": { + "base": null, + "refs": { + "GetProviderServiceOutput$providerConfigurationDefinition": "

The definition of the provider configuration.

", + "GetProviderServiceOutput$providerEntityOutputDefinition": "

The definition of the provider entity output.

", + "ProviderProperties$providerConfiguration": "

The required configuration fields to use with the provider service.

" } }, "EntityName": { "base": null, "refs": { - "CreateMatchingWorkflowInput$workflowName": "

The name of the workflow. There cannot be multiple DataIntegrationWorkflows with the same name.

", + "CreateIdMappingWorkflowInput$workflowName": "

The name of the workflow. There can't be multiple IdMappingWorkflows with the same name.

", + "CreateIdMappingWorkflowOutput$workflowName": "

The name of the workflow.

", + "CreateMatchingWorkflowInput$workflowName": "

The name of the workflow. There can't be multiple MatchingWorkflows with the same name.

", "CreateMatchingWorkflowOutput$workflowName": "

The name of the workflow.

", - "CreateSchemaMappingInput$schemaName": "

The name of the schema. There cannot be multiple SchemaMappings with the same name.

", + "CreateSchemaMappingInput$schemaName": "

The name of the schema. There can't be multiple SchemaMappings with the same name.

", "CreateSchemaMappingOutput$schemaName": "

The name of the schema.

", + "DeleteIdMappingWorkflowInput$workflowName": "

The name of the workflow to be deleted.

", "DeleteMatchingWorkflowInput$workflowName": "

The name of the workflow to be retrieved.

", "DeleteSchemaMappingInput$schemaName": "

The name of the schema to delete.

", + "GetIdMappingJobInput$workflowName": "

The name of the workflow.

", + "GetIdMappingWorkflowInput$workflowName": "

The name of the workflow.

", + "GetIdMappingWorkflowOutput$workflowName": "

The name of the workflow.

", "GetMatchIdInput$workflowName": "

The name of the workflow.

", "GetMatchingJobInput$workflowName": "

The name of the workflow.

", "GetMatchingWorkflowInput$workflowName": "

The name of the workflow.

", "GetMatchingWorkflowOutput$workflowName": "

The name of the workflow.

", + "GetProviderServiceInput$providerName": "

The name of the provider. This name is typically the company name.

", + "GetProviderServiceOutput$providerName": "

The name of the provider. This name is typically the company name.

", + "GetProviderServiceOutput$providerServiceName": "

The name of the product that the provider service provides.

", "GetSchemaMappingInput$schemaName": "

The name of the schema to be retrieved.

", "GetSchemaMappingOutput$schemaName": "

The name of the schema.

", + "IdMappingWorkflowInputSource$schemaName": "

The name of the schema to be retrieved.

", + "IdMappingWorkflowSummary$workflowName": "

The name of the workflow.

", "InputSource$schemaName": "

The name of the schema to be retrieved.

", + "ListIdMappingJobsInput$workflowName": "

The name of the workflow to be retrieved.

", "ListMatchingJobsInput$workflowName": "

The name of the workflow to be retrieved.

", + "ListProviderServicesInput$providerName": "

The name of the provider. This name is typically the company name.

", "MatchingWorkflowSummary$workflowName": "

The name of the workflow.

", + "ProviderServiceSummary$providerName": "

The name of the provider. This name is typically the company name.

", + "ProviderServiceSummary$providerServiceName": "

The name of the product that the provider service provides.

", "SchemaMappingSummary$schemaName": "

The name of the schema.

", + "StartIdMappingJobInput$workflowName": "

The name of the ID mapping job to be retrieved.

", "StartMatchingJobInput$workflowName": "

The name of the matching job to be retrieved.

", + "UpdateIdMappingWorkflowInput$workflowName": "

The name of the workflow.

", + "UpdateIdMappingWorkflowOutput$workflowName": "

The name of the workflow.

", "UpdateMatchingWorkflowInput$workflowName": "

The name of the workflow to be retrieved.

", - "UpdateMatchingWorkflowOutput$workflowName": "

The name of the workflow.

" + "UpdateMatchingWorkflowOutput$workflowName": "

The name of the workflow.

", + "UpdateSchemaMappingInput$schemaName": "

The name of the schema. There can't be multiple SchemaMappings with the same name.

", + "UpdateSchemaMappingOutput$schemaName": "

The name of the schema.

" } }, "ErrorDetails": { "base": "

An object containing an error message, if there was an error.

", "refs": { + "GetIdMappingJobOutput$errorDetails": null, "GetMatchingJobOutput$errorDetails": "

An object containing an error message, if there was an error.

" } }, @@ -155,6 +238,26 @@ "refs": { } }, + "GetIdMappingJobInput": { + "base": null, + "refs": { + } + }, + "GetIdMappingJobOutput": { + "base": null, + "refs": { + } + }, + "GetIdMappingWorkflowInput": { + "base": null, + "refs": { + } + }, + "GetIdMappingWorkflowOutput": { + "base": null, + "refs": { + } + }, "GetMatchIdInput": { "base": null, "refs": { @@ -185,6 +288,16 @@ "refs": { } }, + "GetProviderServiceInput": { + "base": null, + "refs": { + } + }, + "GetProviderServiceOutput": { + "base": null, + "refs": { + } + }, "GetSchemaMappingInput": { "base": null, "refs": { @@ -195,6 +308,87 @@ "refs": { } }, + "IdMappingJobMetrics": { + "base": "

An object containing InputRecords, TotalRecordsProcessed, MatchIDs, and RecordsNotProcessed.

", + "refs": { + "GetIdMappingJobOutput$metrics": "

Metrics associated with the execution, specifically total records processed, unique IDs generated, and records the execution skipped.

" + } + }, + "IdMappingTechniques": { + "base": "

An object which defines the ID mapping techniques and provider configurations.

", + "refs": { + "CreateIdMappingWorkflowInput$idMappingTechniques": "

An object which defines the idMappingType and the providerProperties.

", + "CreateIdMappingWorkflowOutput$idMappingTechniques": "

An object which defines the idMappingType and the providerProperties.

", + "GetIdMappingWorkflowOutput$idMappingTechniques": "

An object which defines the idMappingType and the providerProperties.

", + "UpdateIdMappingWorkflowInput$idMappingTechniques": "

An object which defines the idMappingType and the providerProperties.

", + "UpdateIdMappingWorkflowOutput$idMappingTechniques": "

An object which defines the idMappingType and the providerProperties.

" + } + }, + "IdMappingType": { + "base": null, + "refs": { + "IdMappingTechniques$idMappingType": "

The type of ID mapping.

" + } + }, + "IdMappingWorkflowArn": { + "base": null, + "refs": { + "CreateIdMappingWorkflowOutput$workflowArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the IDMappingWorkflow.

", + "GetIdMappingWorkflowOutput$workflowArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the IdMappingWorkflow .

", + "IdMappingWorkflowSummary$workflowArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the IdMappingWorkflow.

", + "UpdateIdMappingWorkflowOutput$workflowArn": "

The Amazon Resource Name (ARN) of the workflow role. Entity Resolution assumes this role to access resources on your behalf.

" + } + }, + "IdMappingWorkflowInputSource": { + "base": "

An object containing InputSourceARN and SchemaName.

", + "refs": { + "IdMappingWorkflowInputSourceConfig$member": null + } + }, + "IdMappingWorkflowInputSourceConfig": { + "base": null, + "refs": { + "CreateIdMappingWorkflowInput$inputSourceConfig": "

A list of InputSource objects, which have the fields InputSourceARN and SchemaName.

", + "CreateIdMappingWorkflowOutput$inputSourceConfig": "

A list of InputSource objects, which have the fields InputSourceARN and SchemaName.

", + "GetIdMappingWorkflowOutput$inputSourceConfig": "

A list of InputSource objects, which have the fields InputSourceARN and SchemaName.

", + "UpdateIdMappingWorkflowInput$inputSourceConfig": "

A list of InputSource objects, which have the fields InputSourceARN and SchemaName.

", + "UpdateIdMappingWorkflowOutput$inputSourceConfig": "

A list of InputSource objects, which have the fields InputSourceARN and SchemaName.

" + } + }, + "IdMappingWorkflowInputSourceInputSourceARNString": { + "base": null, + "refs": { + "IdMappingWorkflowInputSource$inputSourceARN": "

An Gluetable ARN for the input source table.

" + } + }, + "IdMappingWorkflowList": { + "base": null, + "refs": { + "ListIdMappingWorkflowsOutput$workflowSummaries": "

A list of IdMappingWorkflowSummary objects.

" + } + }, + "IdMappingWorkflowOutputSource": { + "base": "

The output source for the ID mapping workflow.

", + "refs": { + "IdMappingWorkflowOutputSourceConfig$member": null + } + }, + "IdMappingWorkflowOutputSourceConfig": { + "base": null, + "refs": { + "CreateIdMappingWorkflowInput$outputSourceConfig": "

A list of IdMappingWorkflowOutputSource objects, each of which contains fields OutputS3Path and Output.

", + "CreateIdMappingWorkflowOutput$outputSourceConfig": "

A list of IdMappingWorkflowOutputSource objects, each of which contains fields OutputS3Path and Output.

", + "GetIdMappingWorkflowOutput$outputSourceConfig": "

A list of OutputSource objects, each of which contains fields OutputS3Path and KMSArn.

", + "UpdateIdMappingWorkflowInput$outputSourceConfig": "

A list of OutputSource objects, each of which contains fields OutputS3Path and KMSArn.

", + "UpdateIdMappingWorkflowOutput$outputSourceConfig": "

A list of OutputSource objects, each of which contains fields OutputS3Path and KMSArn.

" + } + }, + "IdMappingWorkflowSummary": { + "base": "

A list of IdMappingWorkflowSummary objects, each of which contain the fields WorkflowName, WorkflowArn, CreatedAt, and UpdatedAt.

", + "refs": { + "IdMappingWorkflowList$member": null + } + }, "IncrementalRunConfig": { "base": "

An object which defines an incremental run type and has only incrementalRunType as a field.

", "refs": { @@ -237,12 +431,21 @@ "base": null, "refs": { "ExceedsLimitException$quotaValue": "

The current quota value for the customers.

", + "IdMappingJobMetrics$inputRecords": "

The total number of input records.

", + "IdMappingJobMetrics$recordsNotProcessed": "

The total number of records that did not get processed.

", + "IdMappingJobMetrics$totalRecordsProcessed": "

The total number of records processed.

", "JobMetrics$inputRecords": "

The total number of input records.

", "JobMetrics$matchIDs": "

The total number of matchIDs generated.

", "JobMetrics$recordsNotProcessed": "

The total number of records that did not get processed.

", "JobMetrics$totalRecordsProcessed": "

The total number of records processed.

" } }, + "IntermediateSourceConfiguration": { + "base": "

The Amazon S3 location that temporarily stores your data while it processes. Your information won't be saved permanently.

", + "refs": { + "ProviderProperties$intermediateSourceConfiguration": "

The Amazon S3 location that temporarily stores your data while it processes. Your information won't be saved permanently.

" + } + }, "InternalServerException": { "base": "

This exception occurs when there is an internal failure in the Entity Resolution service. HTTP Status Code: 500

", "refs": { @@ -251,15 +454,19 @@ "JobId": { "base": null, "refs": { + "GetIdMappingJobInput$jobId": "

The ID of the job.

", + "GetIdMappingJobOutput$jobId": "

The ID of the job.

", "GetMatchingJobInput$jobId": "

The ID of the job.

", "GetMatchingJobOutput$jobId": "

The ID of the job.

", "JobSummary$jobId": "

The ID of the job.

", + "StartIdMappingJobOutput$jobId": "

The ID of the job.

", "StartMatchingJobOutput$jobId": "

The ID of the job.

" } }, "JobList": { "base": null, "refs": { + "ListIdMappingJobsOutput$jobs": "

A list of JobSummary objects.

", "ListMatchingJobsOutput$jobs": "

A list of JobSummary objects, each of which contain the ID, status, start time, and end time of a job.

" } }, @@ -272,6 +479,7 @@ "JobStatus": { "base": null, "refs": { + "GetIdMappingJobOutput$status": "

The current status of the job.

", "GetMatchingJobOutput$status": "

The current status of the job.

", "JobSummary$status": "

The current status of the job.

" } @@ -285,9 +493,42 @@ "KMSArn": { "base": null, "refs": { + "IdMappingWorkflowOutputSource$KMSArn": "

Customer KMS ARN for encryption at rest. If not provided, system will use an Entity Resolution managed KMS key.

", "OutputSource$KMSArn": "

Customer KMS ARN for encryption at rest. If not provided, system will use an Entity Resolution managed KMS key.

" } }, + "ListIdMappingJobsInput": { + "base": null, + "refs": { + } + }, + "ListIdMappingJobsInputMaxResultsInteger": { + "base": null, + "refs": { + "ListIdMappingJobsInput$maxResults": "

The maximum number of objects returned per page.

" + } + }, + "ListIdMappingJobsOutput": { + "base": null, + "refs": { + } + }, + "ListIdMappingWorkflowsInput": { + "base": null, + "refs": { + } + }, + "ListIdMappingWorkflowsInputMaxResultsInteger": { + "base": null, + "refs": { + "ListIdMappingWorkflowsInput$maxResults": "

The maximum number of objects returned per page.

" + } + }, + "ListIdMappingWorkflowsOutput": { + "base": null, + "refs": { + } + }, "ListMatchingJobsInput": { "base": null, "refs": { @@ -320,6 +561,22 @@ "refs": { } }, + "ListProviderServicesInput": { + "base": null, + "refs": { + } + }, + "ListProviderServicesInputMaxResultsInteger": { + "base": null, + "refs": { + "ListProviderServicesInput$maxResults": "

The maximum number of objects returned per page.

" + } + }, + "ListProviderServicesOutput": { + "base": null, + "refs": { + } + }, "ListSchemaMappingsInput": { "base": null, "refs": { @@ -369,12 +626,18 @@ "NextToken": { "base": null, "refs": { - "ListMatchingJobsInput$nextToken": "

The pagination token from the previous ListSchemaMappings API call.

", - "ListMatchingJobsOutput$nextToken": "

The pagination token from the previous ListSchemaMappings API call.

", - "ListMatchingWorkflowsInput$nextToken": "

The pagination token from the previous ListSchemaMappings API call.

", - "ListMatchingWorkflowsOutput$nextToken": "

The pagination token from the previous ListSchemaMappings API call.

", - "ListSchemaMappingsInput$nextToken": "

The pagination token from the previous ListSchemaMappings API call.

", - "ListSchemaMappingsOutput$nextToken": "

The pagination token from the previous ListDomains API call.

" + "ListIdMappingJobsInput$nextToken": "

The pagination token from the previous API call.

", + "ListIdMappingJobsOutput$nextToken": "

The pagination token from the previous API call.

", + "ListIdMappingWorkflowsInput$nextToken": "

The pagination token from the previous API call.

", + "ListIdMappingWorkflowsOutput$nextToken": "

The pagination token from the previous API call.

", + "ListMatchingJobsInput$nextToken": "

The pagination token from the previous API call.

", + "ListMatchingJobsOutput$nextToken": "

The pagination token from the previous API call.

", + "ListMatchingWorkflowsInput$nextToken": "

The pagination token from the previous API call.

", + "ListMatchingWorkflowsOutput$nextToken": "

The pagination token from the previous API call.

", + "ListProviderServicesInput$nextToken": "

The pagination token from the previous API call.

", + "ListProviderServicesOutput$nextToken": "

The pagination token from the previous API call.

", + "ListSchemaMappingsInput$nextToken": "

The pagination token from the previous API call.

", + "ListSchemaMappingsOutput$nextToken": "

The pagination token from the previous API call.

" } }, "OutputAttribute": { @@ -405,6 +668,59 @@ "OutputSource$output": "

A list of OutputAttribute objects, each of which have the fields Name and Hashed. Each of these objects selects a column to be included in the output table, and whether the values of the column should be hashed.

" } }, + "ProviderEndpointConfiguration": { + "base": "

The required configuration fields to use with the provider service.

", + "refs": { + "GetProviderServiceOutput$providerEndpointConfiguration": "

The required configuration fields to use with the provider service.

" + } + }, + "ProviderIntermediateDataAccessConfiguration": { + "base": "

The required configuration fields to give intermediate access to a provider service.

", + "refs": { + "GetProviderServiceOutput$providerIntermediateDataAccessConfiguration": "

The Amazon Web Services accounts and the S3 permissions that are required by some providers to create an S3 bucket for intermediate data storage.

" + } + }, + "ProviderMarketplaceConfiguration": { + "base": "

The identifiers of the provider service, from Data Exchange.

", + "refs": { + "ProviderEndpointConfiguration$marketplaceConfiguration": "

The identifiers of the provider service, from Data Exchange.

" + } + }, + "ProviderProperties": { + "base": "

An object containing the providerServiceARN, intermediateSourceConfiguration, and providerConfiguration.

", + "refs": { + "IdMappingTechniques$providerProperties": "

An object which defines any additional configurations required by the provider service.

", + "ResolutionTechniques$providerProperties": "

The properties of the provider service.

" + } + }, + "ProviderServiceArn": { + "base": null, + "refs": { + "GetProviderServiceInput$providerServiceName": "

The ARN (Amazon Resource Name) of the product that the provider service provides.

", + "GetProviderServiceOutput$providerServiceArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the provider service.

", + "ProviderProperties$providerServiceArn": "

The ARN of the provider service.

", + "ProviderServiceSummary$providerServiceArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the providerService.

" + } + }, + "ProviderServiceDisplayName": { + "base": null, + "refs": { + "GetProviderServiceOutput$providerServiceDisplayName": "

The display name of the provider service.

", + "ProviderServiceSummary$providerServiceDisplayName": "

The display name of the provider service.

" + } + }, + "ProviderServiceList": { + "base": null, + "refs": { + "ListProviderServicesOutput$providerServiceSummaries": "

A list of ProviderServices objects.

" + } + }, + "ProviderServiceSummary": { + "base": "

A list of ProviderService objects, each of which contain the fields providerName, providerServiceArn, providerServiceName, and providerServiceType.

", + "refs": { + "ProviderServiceList$member": null + } + }, "RecordAttributeMap": { "base": null, "refs": { @@ -423,6 +739,12 @@ "RecordAttributeMap$value": null } }, + "RequiredBucketActionsList": { + "base": null, + "refs": { + "ProviderIntermediateDataAccessConfiguration$requiredBucketActions": "

The S3 bucket actions that the provider requires permission for.

" + } + }, "ResolutionTechniques": { "base": "

An object which defines the resolutionType and the ruleBasedProperties.

", "refs": { @@ -436,6 +758,7 @@ "ResolutionType": { "base": null, "refs": { + "MatchingWorkflowSummary$resolutionType": "

The method that has been specified for data matching, either using matching provided by Entity Resolution or through a provider service.

", "ResolutionTechniques$resolutionType": "

The type of matching. There are two types of matching: RULE_MATCHING and ML_MATCHING.

" } }, @@ -444,6 +767,16 @@ "refs": { } }, + "RoleArn": { + "base": null, + "refs": { + "CreateIdMappingWorkflowInput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

", + "CreateIdMappingWorkflowOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

", + "GetIdMappingWorkflowOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to access resources on your behalf.

", + "UpdateIdMappingWorkflowInput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to access resources on your behalf.

", + "UpdateIdMappingWorkflowOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to access resources on your behalf.

" + } + }, "Rule": { "base": "

An object containing RuleName, and MatchingKeys.

", "refs": { @@ -477,6 +810,8 @@ "S3Path": { "base": null, "refs": { + "IdMappingWorkflowOutputSource$outputS3Path": "

The S3 path to which Entity Resolution will write the output table.

", + "IntermediateSourceConfiguration$intermediateS3Path": "

The Amazon S3 location (bucket and prefix). For example: s3://provider_bucket/DOC-EXAMPLE-BUCKET

", "OutputSource$outputS3Path": "

The S3 path to which Entity Resolution will write the output table.

" } }, @@ -487,7 +822,7 @@ } }, "SchemaInputAttribute": { - "base": "

An object containing FieldField, Type, GroupName, and MatchKey.

", + "base": "

An object containing FieldName, Type, GroupName, and MatchKey.

", "refs": { "SchemaInputAttributes$member": null } @@ -497,7 +832,9 @@ "refs": { "CreateSchemaMappingInput$mappedInputFields": "

A list of MappedInputFields. Each MappedInputField corresponds to a column the source data table, and contains column name plus additional information that Entity Resolution uses for matching.

", "CreateSchemaMappingOutput$mappedInputFields": "

A list of MappedInputFields. Each MappedInputField corresponds to a column the source data table, and contains column name plus additional information that Entity Resolution uses for matching.

", - "GetSchemaMappingOutput$mappedInputFields": "

A list of MappedInputFields. Each MappedInputField corresponds to a column the source data table, and contains column name plus additional information Venice uses for matching.

" + "GetSchemaMappingOutput$mappedInputFields": "

A list of MappedInputFields. Each MappedInputField corresponds to a column the source data table, and contains column name plus additional information Venice uses for matching.

", + "UpdateSchemaMappingInput$mappedInputFields": "

A list of MappedInputFields. Each MappedInputField corresponds to a column the source data table, and contains column name plus additional information that Entity Resolution uses for matching.

", + "UpdateSchemaMappingOutput$mappedInputFields": "

A list of MappedInputFields. Each MappedInputField corresponds to a column the source data table, and contains column name plus additional information that Entity Resolution uses for matching.

" } }, "SchemaMappingArn": { @@ -505,7 +842,8 @@ "refs": { "CreateSchemaMappingOutput$schemaArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping.

", "GetSchemaMappingOutput$schemaArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping.

", - "SchemaMappingSummary$schemaArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping.

" + "SchemaMappingSummary$schemaArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping.

", + "UpdateSchemaMappingOutput$schemaArn": "

The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping.

" } }, "SchemaMappingList": { @@ -520,6 +858,23 @@ "SchemaMappingList$member": null } }, + "ServiceType": { + "base": null, + "refs": { + "GetProviderServiceOutput$providerServiceType": "

The type of provider service.

", + "ProviderServiceSummary$providerServiceType": "

The type of provider service.

" + } + }, + "StartIdMappingJobInput": { + "base": null, + "refs": { + } + }, + "StartIdMappingJobOutput": { + "base": null, + "refs": { + } + }, "StartMatchingJobInput": { "base": null, "refs": { @@ -535,11 +890,17 @@ "refs": { "CreateMatchingWorkflowInput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

", "CreateMatchingWorkflowOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

", + "DeleteIdMappingWorkflowOutput$message": "

A successful operation message.

", "DeleteMatchingWorkflowOutput$message": "

A successful operation message.

", "DeleteSchemaMappingOutput$message": "

A successful operation message.

", "ExceedsLimitException$quotaName": "

The name of the quota that has been breached.

", "GetMatchIdOutput$matchId": "

The unique identifiers for this group of match records.

", "GetMatchingWorkflowOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to access resources on your behalf.

", + "ProviderMarketplaceConfiguration$assetId": "

The asset ID on Data Exchange.

", + "ProviderMarketplaceConfiguration$dataSetId": "

The dataset ID on Data Exchange.

", + "ProviderMarketplaceConfiguration$listingId": "

The listing ID on Data Exchange.

", + "ProviderMarketplaceConfiguration$revisionId": "

The revision ID on Data Exchange.

", + "RequiredBucketActionsList$member": null, "UpdateMatchingWorkflowInput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

", "UpdateMatchingWorkflowOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

" } @@ -560,8 +921,10 @@ "TagMap": { "base": null, "refs": { + "CreateIdMappingWorkflowInput$tags": "

The tags used to organize, track, or control access for this resource.

", "CreateMatchingWorkflowInput$tags": "

The tags used to organize, track, or control access for this resource.

", "CreateSchemaMappingInput$tags": "

The tags used to organize, track, or control access for this resource.

", + "GetIdMappingWorkflowOutput$tags": "

The tags used to organize, track, or control access for this resource.

", "GetMatchingWorkflowOutput$tags": "

The tags used to organize, track, or control access for this resource.

", "GetSchemaMappingOutput$tags": "

The tags used to organize, track, or control access for this resource.

", "ListTagsForResourceOutput$tags": "

The tags used to organize, track, or control access for this resource.

", @@ -592,12 +955,18 @@ "Timestamp": { "base": null, "refs": { + "GetIdMappingJobOutput$endTime": "

The time at which the job has finished.

", + "GetIdMappingJobOutput$startTime": "

The time at which the job was started.

", + "GetIdMappingWorkflowOutput$createdAt": "

The timestamp of when the workflow was created.

", + "GetIdMappingWorkflowOutput$updatedAt": "

The timestamp of when the workflow was last updated.

", "GetMatchingJobOutput$endTime": "

The time at which the job has finished.

", "GetMatchingJobOutput$startTime": "

The time at which the job was started.

", "GetMatchingWorkflowOutput$createdAt": "

The timestamp of when the workflow was created.

", "GetMatchingWorkflowOutput$updatedAt": "

The timestamp of when the workflow was last updated.

", "GetSchemaMappingOutput$createdAt": "

The timestamp of when the SchemaMapping was created.

", "GetSchemaMappingOutput$updatedAt": "

The timestamp of when the SchemaMapping was last updated.

", + "IdMappingWorkflowSummary$createdAt": "

The timestamp of when the workflow was created.

", + "IdMappingWorkflowSummary$updatedAt": "

The timestamp of when the workflow was last updated.

", "JobSummary$endTime": "

The time at which the job has finished.

", "JobSummary$startTime": "

The time at which the job was started.

", "MatchingWorkflowSummary$createdAt": "

The timestamp of when the workflow was created.

", @@ -616,6 +985,16 @@ "refs": { } }, + "UpdateIdMappingWorkflowInput": { + "base": null, + "refs": { + } + }, + "UpdateIdMappingWorkflowOutput": { + "base": null, + "refs": { + } + }, "UpdateMatchingWorkflowInput": { "base": null, "refs": { @@ -625,6 +1004,16 @@ "base": null, "refs": { } + }, + "UpdateSchemaMappingInput": { + "base": null, + "refs": { + } + }, + "UpdateSchemaMappingOutput": { + "base": null, + "refs": { + } }, "ValidationException": { "base": "

The input fails to satisfy the constraints specified by Entity Resolution. HTTP Status Code: 400

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/entityresolution/2018-05-10/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/entityresolution/2018-05-10/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,17 @@ { "pagination": { + "ListIdMappingJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "jobs" + }, + "ListIdMappingWorkflows": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "workflowSummaries" + }, "ListMatchingJobs": { "input_token": "nextToken", "output_token": "nextToken", @@ -12,6 +24,12 @@ "limit_key": "maxResults", "result_key": "workflowSummaries" }, + "ListProviderServices": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "providerServiceSummaries" + }, "ListSchemaMappings": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eventbridge/2015-10-07/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eventbridge/2015-10-07/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eventbridge/2015-10-07/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eventbridge/2015-10-07/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2804,7 +2804,8 @@ "type":"string", "enum":[ "ENABLED", - "DISABLED" + "DISABLED", + "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS" ] }, "RunCommandParameters":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eventbridge/2015-10-07/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eventbridge/2015-10-07/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eventbridge/2015-10-07/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eventbridge/2015-10-07/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,25 +4,25 @@ "operations": { "ActivateEventSource": "

Activates a partner event source that has been deactivated. Once activated, your matching event bus will start receiving events from the event source.

", "CancelReplay": "

Cancels the specified replay.

", - "CreateApiDestination": "

Creates an API destination, which is an HTTP invocation endpoint configured as a target for events.

", + "CreateApiDestination": "

Creates an API destination, which is an HTTP invocation endpoint configured as a target for events.

API destinations do not support private destinations, such as interface VPC endpoints.

For more information, see API destinations in the EventBridge User Guide.

", "CreateArchive": "

Creates an archive of events with the specified settings. When you create an archive, incoming events might not immediately start being sent to the archive. Allow a short period of time for changes to take effect. If you do not specify a pattern to filter events sent to the archive, all events are sent to the archive except replayed events. Replayed events are not sent to an archive.

", "CreateConnection": "

Creates a connection. A connection defines the authorization type and credentials to use for authorization with an API destination HTTP endpoint.

", "CreateEndpoint": "

Creates a global endpoint. Global endpoints improve your application's availability by making it regional-fault tolerant. To do this, you define a primary and secondary Region with event buses in each Region. You also create a Amazon Route 53 health check that will tell EventBridge to route events to the secondary Region when an \"unhealthy\" state is encountered and events will be routed back to the primary Region when the health check reports a \"healthy\" state.

", "CreateEventBus": "

Creates a new event bus within your account. This can be a custom event bus which you can use to receive events from your custom applications and services, or it can be a partner event bus which can be matched to a partner event source.

", - "CreatePartnerEventSource": "

Called by an SaaS partner to create a partner event source. This operation is not used by Amazon Web Services customers.

Each partner event source can be used by one Amazon Web Services account to create a matching partner event bus in that Amazon Web Services account. A SaaS partner must create one partner event source for each Amazon Web Services account that wants to receive those event types.

A partner event source creates events based on resources within the SaaS partner's service or application.

An Amazon Web Services account that creates a partner event bus that matches the partner event source can use that event bus to receive events from the partner, and then process them using Amazon Web Services Events rules and targets.

Partner event source names follow this format:

partner_name/event_namespace/event_name

partner_name is determined during partner registration and identifies the partner to Amazon Web Services customers. event_namespace is determined by the partner and is a way for the partner to categorize their events. event_name is determined by the partner, and should uniquely identify an event-generating resource within the partner system. The combination of event_namespace and event_name should help Amazon Web Services customers decide whether to create an event bus to receive these events.

", + "CreatePartnerEventSource": "

Called by an SaaS partner to create a partner event source. This operation is not used by Amazon Web Services customers.

Each partner event source can be used by one Amazon Web Services account to create a matching partner event bus in that Amazon Web Services account. A SaaS partner must create one partner event source for each Amazon Web Services account that wants to receive those event types.

A partner event source creates events based on resources within the SaaS partner's service or application.

An Amazon Web Services account that creates a partner event bus that matches the partner event source can use that event bus to receive events from the partner, and then process them using Amazon Web Services Events rules and targets.

Partner event source names follow this format:

partner_name/event_namespace/event_name

  • partner_name is determined during partner registration, and identifies the partner to Amazon Web Services customers.

  • event_namespace is determined by the partner, and is a way for the partner to categorize their events.

  • event_name is determined by the partner, and should uniquely identify an event-generating resource within the partner system.

    The event_name must be unique across all Amazon Web Services customers. This is because the event source is a shared resource between the partner and customer accounts, and each partner event source unique in the partner account.

The combination of event_namespace and event_name should help Amazon Web Services customers decide whether to create an event bus to receive these events.

", "DeactivateEventSource": "

You can use this operation to temporarily stop receiving events from the specified partner event source. The matching event bus is not deleted.

When you deactivate a partner event source, the source goes into PENDING state. If it remains in PENDING state for more than two weeks, it is deleted.

To activate a deactivated partner event source, use ActivateEventSource.

", "DeauthorizeConnection": "

Removes all authorization parameters from the connection. This lets you remove the secret from the connection so you can reuse it without having to create a new connection.

", "DeleteApiDestination": "

Deletes the specified API destination.

", "DeleteArchive": "

Deletes the specified archive.

", "DeleteConnection": "

Deletes a connection.

", - "DeleteEndpoint": "

Delete an existing global endpoint. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", + "DeleteEndpoint": "

Delete an existing global endpoint. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", "DeleteEventBus": "

Deletes the specified custom event bus or partner event bus. All rules associated with this event bus need to be deleted. You can't delete your account's default event bus.

", "DeletePartnerEventSource": "

This operation is used by SaaS partners to delete a partner event source. This operation is not used by Amazon Web Services customers.

When you delete an event source, the status of the corresponding partner event bus in the Amazon Web Services customer account becomes DELETED.

", "DeleteRule": "

Deletes the specified rule.

Before you can delete the rule, you must remove all targets, using RemoveTargets.

When you delete a rule, incoming events might continue to match to the deleted rule. Allow a short period of time for changes to take effect.

If you call delete rule multiple times for the same rule, all calls will succeed. When you call delete rule for a non-existent custom eventbus, ResourceNotFoundException is returned.

Managed rules are rules created and managed by another Amazon Web Services service on your behalf. These rules are created by those other Amazon Web Services services to support functionality in those services. You can delete these rules using the Force option, but you should do so only if you are sure the other service is not still using that rule.

", "DescribeApiDestination": "

Retrieves details about an API destination.

", "DescribeArchive": "

Retrieves details about an archive.

", "DescribeConnection": "

Retrieves details about a connection.

", - "DescribeEndpoint": "

Get the information about an existing global endpoint. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide..

", + "DescribeEndpoint": "

Get the information about an existing global endpoint. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", "DescribeEventBus": "

Displays details about an event bus in your account. This can include the external Amazon Web Services accounts that are permitted to write events to your default event bus, and the associated policy. For custom event buses and partner event buses, it displays the name, ARN, policy, state, and creation time.

To enable your account to receive events from other accounts on its default event bus, use PutPermission.

For more information about partner event buses, see CreateEventBus.

", "DescribeEventSource": "

This operation lists details about a partner event source that is shared with your account.

", "DescribePartnerEventSource": "

An SaaS partner can use this operation to list details about a partner event source that they have created. Amazon Web Services customers do not use this operation. Instead, Amazon Web Services customers can use DescribeEventSource to see details about a partner event source that is shared with them.

", @@ -33,23 +33,23 @@ "ListApiDestinations": "

Retrieves a list of API destination in the account in the current Region.

", "ListArchives": "

Lists your archives. You can either list all the archives or you can provide a prefix to match to the archive names. Filter parameters are exclusive.

", "ListConnections": "

Retrieves a list of connections from the account.

", - "ListEndpoints": "

List the global endpoints associated with this account. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide..

", + "ListEndpoints": "

List the global endpoints associated with this account. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", "ListEventBuses": "

Lists all the event buses in your account, including the default event bus, custom event buses, and partner event buses.

", "ListEventSources": "

You can use this to see all the partner event sources that have been shared with your Amazon Web Services account. For more information about partner event sources, see CreateEventBus.

", "ListPartnerEventSourceAccounts": "

An SaaS partner can use this operation to display the Amazon Web Services account ID that a particular partner event source name is associated with. This operation is not used by Amazon Web Services customers.

", "ListPartnerEventSources": "

An SaaS partner can use this operation to list all the partner event source names that they have created. This operation is not used by Amazon Web Services customers.

", "ListReplays": "

Lists your replays. You can either list all the replays or you can provide a prefix to match to the replay names. Filter parameters are exclusive.

", - "ListRuleNamesByTarget": "

Lists the rules for the specified target. You can see which of the rules in Amazon EventBridge can invoke a specific target in your account.

", - "ListRules": "

Lists your Amazon EventBridge rules. You can either list all the rules or you can provide a prefix to match to the rule names.

ListRules does not list the targets of a rule. To see the targets associated with a rule, use ListTargetsByRule.

", + "ListRuleNamesByTarget": "

Lists the rules for the specified target. You can see which of the rules in Amazon EventBridge can invoke a specific target in your account.

The maximum number of results per page for requests is 100.

", + "ListRules": "

Lists your Amazon EventBridge rules. You can either list all the rules or you can provide a prefix to match to the rule names.

The maximum number of results per page for requests is 100.

ListRules does not list the targets of a rule. To see the targets associated with a rule, use ListTargetsByRule.

", "ListTagsForResource": "

Displays the tags associated with an EventBridge resource. In EventBridge, rules and event buses can be tagged.

", - "ListTargetsByRule": "

Lists the targets assigned to the specified rule.

", - "PutEvents": "

Sends custom events to Amazon EventBridge so that they can be matched to rules.

PutEvents will only process nested JSON up to 1100 levels deep.

", - "PutPartnerEvents": "

This is used by SaaS partners to write events to a customer's partner event bus. Amazon Web Services customers do not use this operation.

", + "ListTargetsByRule": "

Lists the targets assigned to the specified rule.

The maximum number of results per page for requests is 100.

", + "PutEvents": "

Sends custom events to Amazon EventBridge so that they can be matched to rules.

The maximum size for a PutEvents event entry is 256 KB. Entry size is calculated including the event and any necessary characters and keys of the JSON representation of the event. To learn more, see Calculating PutEvents event entry size in the Amazon EventBridge User Guide

PutEvents accepts the data in JSON format. For the JSON number (integer) data type, the constraints are: a minimum value of -9,223,372,036,854,775,808 and a maximum value of 9,223,372,036,854,775,807.

PutEvents will only process nested JSON up to 1100 levels deep.

", + "PutPartnerEvents": "

This is used by SaaS partners to write events to a customer's partner event bus. Amazon Web Services customers do not use this operation.

For information on calculating event batch size, see Calculating EventBridge PutEvents event entry size in the EventBridge User Guide.

", "PutPermission": "

Running PutPermission permits the specified Amazon Web Services account or Amazon Web Services organization to put events to the specified event bus. Amazon EventBridge (CloudWatch Events) rules in your account are triggered by these events arriving to an event bus in your account.

For another account to send events to your account, that external account must have an EventBridge rule with your account's event bus as a target.

To enable multiple Amazon Web Services accounts to put events to your event bus, run PutPermission once for each of these accounts. Or, if all the accounts are members of the same Amazon Web Services organization, you can run PutPermission once specifying Principal as \"*\" and specifying the Amazon Web Services organization ID in Condition, to grant permissions to all accounts in that organization.

If you grant permissions using an organization, then accounts in that organization must specify a RoleArn with proper permissions when they use PutTarget to add your account's event bus as a target. For more information, see Sending and Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

The permission policy on the event bus cannot exceed 10 KB in size.

", "PutRule": "

Creates or updates the specified rule. Rules are enabled by default, or based on value of the state. You can disable a rule using DisableRule.

A single rule watches for events from a single event bus. Events generated by Amazon Web Services services go to your account's default event bus. Events generated by SaaS partner services or applications go to the matching partner event bus. If you have custom applications or services, you can specify whether their events go to your default event bus or a custom event bus that you have created. For more information, see CreateEventBus.

If you are updating an existing rule, the rule is replaced with what you specify in this PutRule command. If you omit arguments in PutRule, the old values for those arguments are not kept. Instead, they are replaced with null values.

When you create or update a rule, incoming events might not immediately start matching to new or updated rules. Allow a short period of time for changes to take effect.

A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can have both an EventPattern and a ScheduleExpression, in which case the rule triggers on matching events as well as on a schedule.

When you initially create a rule, you can optionally assign one or more tags to the rule. Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only rules with certain tag values. To use the PutRule operation and assign tags, you must have both the events:PutRule and events:TagResource permissions.

If you are updating an existing rule, any tags you specify in the PutRule operation are ignored. To update the tags of an existing rule, use TagResource and UntagResource.

Most services in Amazon Web Services treat : or / as the same character in Amazon Resource Names (ARNs). However, EventBridge uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

In EventBridge, it is possible to create rules that lead to infinite loops, where a rule is fired repeatedly. For example, a rule might detect that ACLs have changed on an S3 bucket, and trigger software to change them to the desired state. If the rule is not written carefully, the subsequent change to the ACLs fires the rule again, creating an infinite loop.

To prevent this, write the rules so that the triggered actions do not re-fire the same rule. For example, your rule could fire only if ACLs are found to be in a bad state, instead of after any change.

An infinite loop can quickly cause higher than expected charges. We recommend that you use budgeting, which alerts you when charges exceed your specified limit. For more information, see Managing Your Costs with Budgets.

", - "PutTargets": "

Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.

Targets are the resources that are invoked when a rule is triggered.

Each rule can have up to five (5) targets associated with it at one time.

You can configure the following as targets for Events:

Creating rules with built-in targets is supported only in the Amazon Web Services Management Console. The built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances API call, EC2 StopInstances API call, and EC2 TerminateInstances API call.

For some target types, PutTargets provides target-specific parameters. If the target is a Kinesis data stream, you can optionally specify which shard the event goes to by using the KinesisParameters argument. To invoke a command on multiple EC2 instances with one rule, you can use the RunCommandParameters field.

To be able to make API calls against the resources that you own, Amazon EventBridge needs the appropriate permissions. For Lambda and Amazon SNS resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis Data Streams, Step Functions state machines and API Gateway APIs, EventBridge relies on IAM roles that you specify in the RoleARN argument in PutTargets. For more information, see Authentication and Access Control in the Amazon EventBridge User Guide.

If another Amazon Web Services account is in the same region and has granted you permission (using PutPermission), you can send events to that account. Set that account's event bus as a target of the rules in your account. To send the matched events to the other account, specify that account's event bus as the Arn value when you run PutTargets. If your account sends events to another account, your account is charged for each sent event. Each event sent to another account is charged as a custom event. The account receiving the event is not charged. For more information, see Amazon EventBridge Pricing.

Input, InputPath, and InputTransformer are not available with PutTarget if the target is an event bus of a different Amazon Web Services account.

If you are setting the event bus of another account as the target, and that account granted permission to your account through an organization instead of directly by the account ID, then you must specify a RoleArn with proper permissions in the Target structure. For more information, see Sending and Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

For more information about enabling cross-account events, see PutPermission.

Input, InputPath, and InputTransformer are mutually exclusive and optional parameters of a target. When a rule is triggered due to a matched event:

  • If none of the following arguments are specified for a target, then the entire event is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or Amazon ECS task, in which case nothing from the event is passed to the target).

  • If Input is specified in the form of valid JSON, then the matched event is overridden with this constant.

  • If InputPath is specified in the form of JSONPath (for example, $.detail), then only the part of the event specified in the path is passed to the target (for example, only the detail part of the event is passed).

  • If InputTransformer is specified, then one or more specified JSONPaths are extracted from the event and used as values in a template that you specify as the input to the target.

When you specify InputPath or InputTransformer, you must use JSON dot notation, not bracket notation.

When you add targets to a rule and the associated rule triggers soon after, new or updated targets might not be immediately invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

", + "PutTargets": "

Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.

Targets are the resources that are invoked when a rule is triggered.

The maximum number of entries per request is 10.

Each rule can have up to five (5) targets associated with it at one time.

For a list of services you can configure as targets for events, see EventBridge targets in the Amazon EventBridge User Guide.

Creating rules with built-in targets is supported only in the Amazon Web Services Management Console. The built-in targets are:

  • Amazon EBS CreateSnapshot API call

  • Amazon EC2 RebootInstances API call

  • Amazon EC2 StopInstances API call

  • Amazon EC2 TerminateInstances API call

For some target types, PutTargets provides target-specific parameters. If the target is a Kinesis data stream, you can optionally specify which shard the event goes to by using the KinesisParameters argument. To invoke a command on multiple EC2 instances with one rule, you can use the RunCommandParameters field.

To be able to make API calls against the resources that you own, Amazon EventBridge needs the appropriate permissions:

  • For Lambda and Amazon SNS resources, EventBridge relies on resource-based policies.

  • For EC2 instances, Kinesis Data Streams, Step Functions state machines and API Gateway APIs, EventBridge relies on IAM roles that you specify in the RoleARN argument in PutTargets.

For more information, see Authentication and Access Control in the Amazon EventBridge User Guide.

If another Amazon Web Services account is in the same region and has granted you permission (using PutPermission), you can send events to that account. Set that account's event bus as a target of the rules in your account. To send the matched events to the other account, specify that account's event bus as the Arn value when you run PutTargets. If your account sends events to another account, your account is charged for each sent event. Each event sent to another account is charged as a custom event. The account receiving the event is not charged. For more information, see Amazon EventBridge Pricing.

Input, InputPath, and InputTransformer are not available with PutTarget if the target is an event bus of a different Amazon Web Services account.

If you are setting the event bus of another account as the target, and that account granted permission to your account through an organization instead of directly by the account ID, then you must specify a RoleArn with proper permissions in the Target structure. For more information, see Sending and Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

If you have an IAM role on a cross-account event bus target, a PutTargets call without a role on the same target (same Id and Arn) will not remove the role.

For more information about enabling cross-account events, see PutPermission.

Input, InputPath, and InputTransformer are mutually exclusive and optional parameters of a target. When a rule is triggered due to a matched event:

  • If none of the following arguments are specified for a target, then the entire event is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or Amazon ECS task, in which case nothing from the event is passed to the target).

  • If Input is specified in the form of valid JSON, then the matched event is overridden with this constant.

  • If InputPath is specified in the form of JSONPath (for example, $.detail), then only the part of the event specified in the path is passed to the target (for example, only the detail part of the event is passed).

  • If InputTransformer is specified, then one or more specified JSONPaths are extracted from the event and used as values in a template that you specify as the input to the target.

When you specify InputPath or InputTransformer, you must use JSON dot notation, not bracket notation.

When you add targets to a rule and the associated rule triggers soon after, new or updated targets might not be immediately invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

", "RemovePermission": "

Revokes the permission of another Amazon Web Services account to be able to put events to the specified event bus. Specify the account to revoke by the StatementId value that you associated with the account when you granted it permission with PutPermission. You can find the StatementId by using DescribeEventBus.

", - "RemoveTargets": "

Removes the specified targets from the specified rule. When the rule is triggered, those targets are no longer be invoked.

A successful execution of RemoveTargets doesn't guarantee all targets are removed from the rule, it means that the target(s) listed in the request are removed.

When you remove a target, when the associated rule triggers, removed targets might continue to be invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

", + "RemoveTargets": "

Removes the specified targets from the specified rule. When the rule is triggered, those targets are no longer be invoked.

A successful execution of RemoveTargets doesn't guarantee all targets are removed from the rule, it means that the target(s) listed in the request are removed.

When you remove a target, when the associated rule triggers, removed targets might continue to be invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

The maximum number of entries per request is 10.

", "StartReplay": "

Starts the specified replay. Events are not necessarily replayed in the exact same order that they were added to the archive. A replay processes events to replay based on the time in the event, and replays them using 1 minute intervals. If you specify an EventStartTime and an EventEndTime that covers a 20 minute time range, the events are replayed from the first minute of that 20 minute range first. Then the events from the second minute are replayed. You can use DescribeReplay to determine the progress of a replay. The value returned for EventLastReplayedTime indicates the time within the specified time range associated with the last event replayed.

", "TagResource": "

Assigns one or more tags (key-value pairs) to the specified EventBridge resource. Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values. In EventBridge, rules and event buses can be tagged.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a resource that already has tags. If you specify a new tag key, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource.

", "TestEventPattern": "

Tests whether the specified event pattern matches the provided event.

Most services in Amazon Web Services treat : or / as the same character in Amazon Resource Names (ARNs). However, EventBridge uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

", @@ -57,7 +57,7 @@ "UpdateApiDestination": "

Updates an API destination.

", "UpdateArchive": "

Updates the specified archive.

", "UpdateConnection": "

Updates settings for a connection.

", - "UpdateEndpoint": "

Update an existing endpoint. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide..

" + "UpdateEndpoint": "

Update an existing endpoint. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

" }, "shapes": { "AccountId": { @@ -613,7 +613,7 @@ "DbUser": { "base": "Database user name", "refs": { - "RedshiftDataParameters$DbUser": "

The database user name. Required when authenticating using temporary credentials.

Do not provide this parameter when connecting to a Redshift Serverless workgroup.

" + "RedshiftDataParameters$DbUser": "

The database user name. Required when authenticating using temporary credentials.

" } }, "DeactivateEventSourceRequest": { @@ -799,7 +799,7 @@ } }, "Endpoint": { - "base": "

A global endpoint used to improve your application's availability by making it regional-fault tolerant. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", + "base": "

A global endpoint used to improve your application's availability by making it regional-fault tolerant. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", "refs": { "EndpointList$member": null } @@ -895,7 +895,7 @@ "ErrorCode": { "base": null, "refs": { - "PutEventsResultEntry$ErrorCode": "

The error code that indicates why the event submission failed.

", + "PutEventsResultEntry$ErrorCode": "

The error code that indicates why the event submission failed.

Retryable errors include:

  • InternalFailure

    The request processing has failed because of an unknown error, exception or failure.

  • ThrottlingException

    The request was denied due to request throttling.

Non-retryable errors include:

  • AccessDeniedException

    You do not have sufficient access to perform this action.

  • InvalidAccountIdException

    The account ID provided is not valid.

  • InvalidArgument

    A specified parameter is not valid.

  • MalformedDetail

    The JSON provided is not valid.

  • RedactionFailure

    Redacting the CloudTrail event failed.

  • NotAuthorizedForSourceException

    You do not have permissions to publish events with this source onto this event bus.

  • NotAuthorizedForDetailTypeException

    You do not have permissions to publish events with this detail type onto this event bus.

", "PutPartnerEventsResultEntry$ErrorCode": "

The error code that indicates why the event submission failed.

", "PutTargetsResultEntry$ErrorCode": "

The error code that indicates why the target addition failed. If the value is ConcurrentModificationException, too many requests were made at the same time.

", "RemoveTargetsResultEntry$ErrorCode": "

The error code that indicates why the target removal failed. If the value is ConcurrentModificationException, too many requests were made at the same time.

" @@ -1003,7 +1003,7 @@ "DescribeEventSourceRequest$Name": "

The name of the partner event source to display the details of.

", "DescribePartnerEventSourceRequest$Name": "

The name of the event source to display.

", "ListPartnerEventSourceAccountsRequest$EventSourceName": "

The name of the partner event source to display account information about.

", - "PutPartnerEventsRequestEntry$Source": "

The event source that is generating the entry.

" + "PutPartnerEventsRequestEntry$Source": "

The event source that is generating the entry.

Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request.

" } }, "EventSourceNamePrefix": { @@ -1403,7 +1403,7 @@ "NonPartnerEventBusNameOrArn": { "base": null, "refs": { - "PutEventsRequestEntry$EventBusName": "

The name or ARN of the event bus to receive the event. Only the rules that are associated with this event bus are used to match the event. If you omit this, the default event bus is used.

If you're using a global endpoint with a custom bus, you must enter the name, not the ARN, of the event bus in either the primary or secondary Region here and the corresponding event bus in the other Region will be determined based on the endpoint referenced by the EndpointId.

" + "PutEventsRequestEntry$EventBusName": "

The name or ARN of the event bus to receive the event. Only the rules that are associated with this event bus are used to match the event. If you omit this, the default event bus is used.

If you're using a global endpoint with a custom bus, you can enter either the name or Amazon Resource Name (ARN) of the event bus in either the primary or secondary Region here. EventBridge then determines the corresponding event bus in the other Region based on the endpoint referenced by the EndpointId. Specifying the event bus ARN is preferred.

" } }, "OperationDisabledException": { @@ -1547,7 +1547,7 @@ } }, "PutEventsResultEntry": { - "base": "

Represents an event that failed to be submitted. For information about the errors that are common to all actions, see Common Errors.

", + "base": "

Represents the results of an event submitted to an event bus.

If the submission was successful, the entry has the event ID in it. Otherwise, you can use the error code and error message to identify the problem with the entry.

For information about the errors that are common to all actions, see Common Errors.

", "refs": { "PutEventsResultEntryList$member": null } @@ -1581,7 +1581,7 @@ } }, "PutPartnerEventsResultEntry": { - "base": "

Represents an event that a partner tried to generate, but failed.

", + "base": "

The result of an event entry the partner submitted in this request. If the event was successfully submitted, the entry has the event ID in it. Otherwise, you can use the error code and error message to identify the problem with the entry.

", "refs": { "PutPartnerEventsResultEntryList$member": null } @@ -1589,7 +1589,7 @@ "PutPartnerEventsResultEntryList": { "base": null, "refs": { - "PutPartnerEventsResponse$Entries": "

The list of events from this operation that were successfully written to the partner event bus.

" + "PutPartnerEventsResponse$Entries": "

The results for each event entry the partner submitted in this request. If the event was successfully submitted, the entry has the event ID in it. Otherwise, you can use the error code and error message to identify the problem with the entry.

For each record, the index of the response element is the same as the index in the request array.

" } }, "PutPermissionRequest": { @@ -1655,7 +1655,7 @@ } }, "RedshiftDataParameters": { - "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster or Redshift Serverless workgroup to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

", + "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

", "refs": { "Target$RedshiftDataParameters": "

Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.

If you specify a Amazon Redshift Cluster as a Target, you can use this to specify parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

" } @@ -1898,8 +1898,8 @@ "base": null, "refs": { "DescribeRuleResponse$State": "

Specifies whether the rule is enabled or disabled.

", - "PutRuleRequest$State": "

Indicates whether the rule is enabled or disabled.

", - "Rule$State": "

The state of the rule.

" + "PutRuleRequest$State": "

The state of the rule.

Valid values include:

  • DISABLED: The rule is disabled. EventBridge does not match any events against the rule.

  • ENABLED: The rule is enabled. EventBridge matches events against the rule, except for Amazon Web Services management events delivered through CloudTrail.

  • ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS: The rule is enabled for all events, including Amazon Web Services management events delivered through CloudTrail.

    Management events provide visibility into management operations that are performed on resources in your Amazon Web Services account. These are also known as control plane operations. For more information, see Logging management events in the CloudTrail User Guide, and Filtering management events from Amazon Web Services services in the Amazon EventBridge User Guide.

    This value is only valid for rules on the default event bus or custom event buses. It does not apply to partner event buses.

", + "Rule$State": "

The state of the rule.

Valid values include:

  • DISABLED: The rule is disabled. EventBridge does not match any events against the rule.

  • ENABLED: The rule is enabled. EventBridge matches events against the rule, except for Amazon Web Services management events delivered through CloudTrail.

  • ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS: The rule is enabled for all events, including Amazon Web Services management events delivered through CloudTrail.

    Management events provide visibility into management operations that are performed on resources in your Amazon Web Services account. These are also known as control plane operations. For more information, see Logging management events in the CloudTrail User Guide, and Filtering management events from Amazon Web Services services in the Amazon EventBridge User Guide.

    This value is only valid for rules on the default event bus or custom event buses. It does not apply to partner event buses.

" } }, "RunCommandParameters": { @@ -2004,7 +2004,7 @@ "Sqls": { "base": "A list of SQLs.", "refs": { - "RedshiftDataParameters$Sqls": null + "RedshiftDataParameters$Sqls": "

One or more SQL statements to run. The SQL statements are run as a single transaction. They run serially in the order of the array. Subsequent SQL statements don't start until the previous statement in the array completes. If any SQL statement fails, then because they are run as one transaction, all work is rolled back.

" } }, "SqsParameters": { @@ -2065,11 +2065,11 @@ "EventSource$Name": "

The name of the event source.

", "PartnerEventSource$Arn": "

The ARN of the partner event source.

", "PartnerEventSource$Name": "

The name of the partner event source.

", - "PutEventsRequestEntry$Source": "

The source of the event.

", - "PutEventsRequestEntry$DetailType": "

Free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

", - "PutEventsRequestEntry$Detail": "

A valid JSON object. There is no other schema imposed. The JSON object may contain fields and nested subobjects.

", - "PutPartnerEventsRequestEntry$DetailType": "

A free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

", - "PutPartnerEventsRequestEntry$Detail": "

A valid JSON string. There is no other schema imposed. The JSON string may contain fields and nested subobjects.

", + "PutEventsRequestEntry$Source": "

The source of the event.

Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request.

", + "PutEventsRequestEntry$DetailType": "

Free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request.

", + "PutEventsRequestEntry$Detail": "

A valid JSON object. There is no other schema imposed. The JSON object may contain fields and nested sub-objects.

Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request.

", + "PutPartnerEventsRequestEntry$DetailType": "

A free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request.

", + "PutPartnerEventsRequestEntry$Detail": "

A valid JSON string. There is no other schema imposed. The JSON string may contain fields and nested sub-objects.

Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request.

", "PutPermissionRequest$Policy": "

A JSON string that describes the permission policy statement. You can include a Policy parameter in the request instead of using the StatementId, Action, Principal, or Condition parameters.

", "StringList$member": null, "TestEventPatternRequest$Event": "

The event, in JSON format, to test against the event pattern. The JSON must follow the format specified in Amazon Web Services Events, and the following fields are mandatory:

  • id

  • account

  • source

  • time

  • region

  • resources

  • detail-type

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -62,7 +62,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -76,7 +75,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -90,7 +88,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -134,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -154,7 +150,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -175,14 +170,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -203,21 +200,24 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: FIPS is not supported with EventBridge multi-region endpoints.", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "EndpointId must be a valid host label.", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -230,7 +230,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -273,7 +272,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -286,7 +286,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -300,7 +299,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -323,7 +321,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -358,7 +355,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -369,14 +365,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -390,14 +388,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -406,11 +402,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -459,14 +455,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -480,7 +478,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -500,7 +497,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -511,14 +507,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -529,9 +527,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/events/2015-10-07/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/events/2015-10-07/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/events/2015-10-07/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/events/2015-10-07/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -874,6 +874,13 @@ "min":1, "pattern":"^[ \\t]*[^\\x00-\\x1F:\\x7F]+([ \\t]+[^\\x00-\\x1F:\\x7F]+)*[ \\t]*$" }, + "AuthHeaderParametersSensitive":{ + "type":"string", + "max":512, + "min":1, + "pattern":"^[ \\t]*[^\\x00-\\x1F:\\x7F]+([ \\t]+[^\\x00-\\x1F:\\x7F]+)*[ \\t]*$", + "sensitive":true + }, "AwsVpcConfiguration":{ "type":"structure", "required":["Subnets"], @@ -1024,7 +1031,7 @@ "type":"structure", "members":{ "Key":{"shape":"String"}, - "Value":{"shape":"String"}, + "Value":{"shape":"SensitiveString"}, "IsValueSecret":{"shape":"Boolean"} } }, @@ -1043,7 +1050,7 @@ "type":"structure", "members":{ "Key":{"shape":"HeaderKey"}, - "Value":{"shape":"HeaderValue"}, + "Value":{"shape":"HeaderValueSensitive"}, "IsValueSecret":{"shape":"Boolean"} } }, @@ -1094,7 +1101,7 @@ "type":"structure", "members":{ "Key":{"shape":"QueryStringKey"}, - "Value":{"shape":"QueryStringValue"}, + "Value":{"shape":"QueryStringValueSensitive"}, "IsValueSecret":{"shape":"Boolean"} } }, @@ -1182,7 +1189,7 @@ ], "members":{ "ApiKeyName":{"shape":"AuthHeaderParameters"}, - "ApiKeyValue":{"shape":"AuthHeaderParameters"} + "ApiKeyValue":{"shape":"AuthHeaderParametersSensitive"} } }, "CreateConnectionAuthRequestParameters":{ @@ -1202,7 +1209,7 @@ ], "members":{ "Username":{"shape":"AuthHeaderParameters"}, - "Password":{"shape":"AuthHeaderParameters"} + "Password":{"shape":"AuthHeaderParametersSensitive"} } }, "CreateConnectionOAuthClientRequestParameters":{ @@ -1213,7 +1220,7 @@ ], "members":{ "ClientID":{"shape":"AuthHeaderParameters"}, - "ClientSecret":{"shape":"AuthHeaderParameters"} + "ClientSecret":{"shape":"AuthHeaderParametersSensitive"} } }, "CreateConnectionOAuthRequestParameters":{ @@ -1679,6 +1686,12 @@ "max":512, "pattern":"^[ \\t]*[\\x20-\\x7E]+([ \\t]+[\\x20-\\x7E]+)*[ \\t]*$" }, + "HeaderValueSensitive":{ + "type":"string", + "max":512, + "pattern":"^[ \\t]*[\\x20-\\x7E]+([ \\t]+[\\x20-\\x7E]+)*[ \\t]*$", + "sensitive":true + }, "HttpParameters":{ "type":"structure", "members":{ @@ -2270,6 +2283,12 @@ "max":512, "pattern":"[^\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F]+" }, + "QueryStringValueSensitive":{ + "type":"string", + "max":512, + "pattern":"[^\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F]+", + "sensitive":true + }, "RedshiftDataParameters":{ "type":"structure", "required":[ @@ -2559,6 +2578,10 @@ "min":20, "pattern":"^arn:aws([a-z]|\\-)*:secretsmanager:([a-z]|\\d|\\-)*:([0-9]{12})?:secret:[\\/_+=\\.@\\-A-Za-z0-9]+$" }, + "SensitiveString":{ + "type":"string", + "sensitive":true + }, "Sql":{ "type":"string", "max":100000, @@ -2812,7 +2835,7 @@ "type":"structure", "members":{ "ApiKeyName":{"shape":"AuthHeaderParameters"}, - "ApiKeyValue":{"shape":"AuthHeaderParameters"} + "ApiKeyValue":{"shape":"AuthHeaderParametersSensitive"} } }, "UpdateConnectionAuthRequestParameters":{ @@ -2828,14 +2851,14 @@ "type":"structure", "members":{ "Username":{"shape":"AuthHeaderParameters"}, - "Password":{"shape":"AuthHeaderParameters"} + "Password":{"shape":"AuthHeaderParametersSensitive"} } }, "UpdateConnectionOAuthClientRequestParameters":{ "type":"structure", "members":{ "ClientID":{"shape":"AuthHeaderParameters"}, - "ClientSecret":{"shape":"AuthHeaderParameters"} + "ClientSecret":{"shape":"AuthHeaderParametersSensitive"} } }, "UpdateConnectionOAuthRequestParameters":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/events/2015-10-07/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/events/2015-10-07/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/events/2015-10-07/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/events/2015-10-07/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -233,16 +233,21 @@ "ConnectionBasicAuthResponseParameters$Username": "

The user name to use for Basic authorization.

", "ConnectionOAuthClientResponseParameters$ClientID": "

The client ID associated with the response to the connection request.

", "CreateConnectionApiKeyAuthRequestParameters$ApiKeyName": "

The name of the API key to use for authorization.

", - "CreateConnectionApiKeyAuthRequestParameters$ApiKeyValue": "

The value for the API key to use for authorization.

", "CreateConnectionBasicAuthRequestParameters$Username": "

The user name to use for Basic authorization.

", - "CreateConnectionBasicAuthRequestParameters$Password": "

The password associated with the user name to use for Basic authorization.

", "CreateConnectionOAuthClientRequestParameters$ClientID": "

The client ID to use for OAuth authorization for the connection.

", - "CreateConnectionOAuthClientRequestParameters$ClientSecret": "

The client secret associated with the client ID to use for OAuth authorization for the connection.

", "UpdateConnectionApiKeyAuthRequestParameters$ApiKeyName": "

The name of the API key to use for authorization.

", - "UpdateConnectionApiKeyAuthRequestParameters$ApiKeyValue": "

The value associated with teh API key to use for authorization.

", "UpdateConnectionBasicAuthRequestParameters$Username": "

The user name to use for Basic authorization.

", + "UpdateConnectionOAuthClientRequestParameters$ClientID": "

The client ID to use for OAuth authorization.

" + } + }, + "AuthHeaderParametersSensitive": { + "base": null, + "refs": { + "CreateConnectionApiKeyAuthRequestParameters$ApiKeyValue": "

The value for the API key to use for authorization.

", + "CreateConnectionBasicAuthRequestParameters$Password": "

The password associated with the user name to use for Basic authorization.

", + "CreateConnectionOAuthClientRequestParameters$ClientSecret": "

The client secret associated with the client ID to use for OAuth authorization for the connection.

", + "UpdateConnectionApiKeyAuthRequestParameters$ApiKeyValue": "

The value associated with teh API key to use for authorization.

", "UpdateConnectionBasicAuthRequestParameters$Password": "

The password associated with the user name to use for Basic authorization.

", - "UpdateConnectionOAuthClientRequestParameters$ClientID": "

The client ID to use for OAuth authorization.

", "UpdateConnectionOAuthClientRequestParameters$ClientSecret": "

The client secret assciated with the client ID to use for OAuth authorization.

" } }, @@ -909,10 +914,15 @@ "HeaderValue": { "base": null, "refs": { - "ConnectionHeaderParameter$Value": "

The value associated with the key.

", "HeaderParametersMap$value": null } }, + "HeaderValueSensitive": { + "base": null, + "refs": { + "ConnectionHeaderParameter$Value": "

The value associated with the key.

" + } + }, "HttpParameters": { "base": "

These are custom parameter to be used when the target is an API Gateway REST APIs or EventBridge ApiDestinations. In the latter case, these are merged with any InvocationParameters specified on the Connection, with any values from the Connection taking precedence.

", "refs": { @@ -1451,10 +1461,15 @@ "QueryStringValue": { "base": null, "refs": { - "ConnectionQueryStringParameter$Value": "

The value associated with the key for the query string parameter.

", "QueryStringParametersMap$value": null } }, + "QueryStringValueSensitive": { + "base": null, + "refs": { + "ConnectionQueryStringParameter$Value": "

The value associated with the key for the query string parameter.

" + } + }, "RedshiftDataParameters": { "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

", "refs": { @@ -1749,6 +1764,12 @@ "DescribeConnectionResponse$SecretArn": "

The ARN of the secret created from the authorization parameters specified for the connection.

" } }, + "SensitiveString": { + "base": null, + "refs": { + "ConnectionBodyParameter$Value": "

The value associated with the key.

" + } + }, "Sql": { "base": null, "refs": { @@ -1793,7 +1814,6 @@ "Condition$Key": "

Specifies the key for the condition. Currently the only supported key is aws:PrincipalOrgID.

", "Condition$Value": "

Specifies the value for the key. Currently, this must be the ID of the organization.

", "ConnectionBodyParameter$Key": "

The key for the parameter.

", - "ConnectionBodyParameter$Value": "

The value associated with the key.

", "CreateEventBusResponse$EventBusArn": "

The ARN of the new event bus.

", "CreatePartnerEventSourceResponse$EventSourceArn": "

The ARN of the partner event source.

", "DescribeEventBusResponse$Name": "

The name of the event bus. Currently, this is always default.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace/2021-03-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace/2021-03-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace/2021-03-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace/2021-03-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -28,7 +28,9 @@ {"shape":"ThrottlingException"}, {"shape":"ServiceQuotaExceededException"}, {"shape":"LimitExceededException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "CreateKxChangeset":{ "name":"CreateKxChangeset", @@ -137,7 +139,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, {"shape":"ValidationException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "DeleteKxCluster":{ "name":"DeleteKxCluster", @@ -219,7 +223,9 @@ {"shape":"InternalServerException"}, {"shape":"ValidationException"}, {"shape":"AccessDeniedException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetKxChangeset":{ "name":"GetKxChangeset", @@ -329,7 +335,9 @@ "errors":[ {"shape":"InternalServerException"}, {"shape":"ValidationException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListKxChangesets":{ "name":"ListKxChangesets", @@ -483,6 +491,26 @@ {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, {"shape":"ValidationException"} + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." + }, + "UpdateKxClusterCodeConfiguration":{ + "name":"UpdateKxClusterCodeConfiguration", + "http":{ + "method":"PUT", + "requestUri":"/kx/environments/{environmentId}/clusters/{clusterName}/configuration/code" + }, + "input":{"shape":"UpdateKxClusterCodeConfigurationRequest"}, + "output":{"shape":"UpdateKxClusterCodeConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"} ] }, "UpdateKxClusterDatabases":{ @@ -1561,6 +1589,21 @@ "createdTimestamp":{"shape":"Timestamp"} } }, + "KxClusterCodeDeploymentConfiguration":{ + "type":"structure", + "required":["deploymentStrategy"], + "members":{ + "deploymentStrategy":{"shape":"KxClusterCodeDeploymentStrategy"} + } + }, + "KxClusterCodeDeploymentStrategy":{ + "type":"string", + "enum":[ + "NO_RESTART", + "ROLLING", + "FORCE" + ] + }, "KxClusterDescription":{ "type":"string", "max":1000, @@ -1602,7 +1645,8 @@ "enum":[ "HDB", "RDB", - "GATEWAY" + "GATEWAY", + "GP" ] }, "KxClusters":{ @@ -2328,6 +2372,39 @@ "environment":{"shape":"Environment"} } }, + "UpdateKxClusterCodeConfigurationRequest":{ + "type":"structure", + "required":[ + "environmentId", + "clusterName", + "code" + ], + "members":{ + "environmentId":{ + "shape":"KxEnvironmentId", + "location":"uri", + "locationName":"environmentId" + }, + "clusterName":{ + "shape":"KxClusterName", + "location":"uri", + "locationName":"clusterName" + }, + "clientToken":{ + "shape":"ClientTokenString", + "idempotencyToken":true + }, + "code":{"shape":"CodeConfiguration"}, + "initializationScript":{"shape":"InitializationScriptFilePath"}, + "commandLineArguments":{"shape":"KxCommandLineArguments"}, + "deploymentConfiguration":{"shape":"KxClusterCodeDeploymentConfiguration"} + } + }, + "UpdateKxClusterCodeConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateKxClusterDatabasesRequest":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace/2021-03-12/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace/2021-03-12/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace/2021-03-12/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace/2021-03-12/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -31,6 +31,7 @@ "TagResource": "

Adds metadata tags to a FinSpace resource.

", "UntagResource": "

Removes metadata tags from a FinSpace resource.

", "UpdateEnvironment": "

Update your FinSpace environment.

", + "UpdateKxClusterCodeConfiguration": "

Allows you to update code configuration on a running cluster. By using this API you can update the code, the initialization script path, and the command line arguments for a specific cluster. The configuration that you want to update will override any existing configurations on the cluster.

", "UpdateKxClusterDatabases": "

Updates the databases mounted on a kdb cluster, which includes the changesetId and all the dbPaths to be cached. This API does not allow you to change a database name or add a database if you created a cluster without one.

Using this API you can point a cluster to a different changeset and modify a list of partitions being cached.

", "UpdateKxDatabase": "

Updates information for the given kdb database.

", "UpdateKxEnvironment": "

Updates information for the given kdb environment.

", @@ -112,7 +113,7 @@ "ChangeRequests": { "base": null, "refs": { - "CreateKxChangesetRequest$changeRequests": "

A list of change request objects that are run in order. A change request object consists of changeType , s3Path, and a dbPath. A changeType can has the following values:

  • PUT – Adds or updates files in a database.

  • DELETE – Deletes files in a database.

All the change requests require a mandatory dbPath attribute that defines the path within the database directory. The s3Path attribute defines the s3 source file path and is required for a PUT change type.

Here is an example of how you can use the change request object:

[ { \"changeType\": \"PUT\", \"s3Path\":\"s3://bucket/db/2020.01.02/\", \"dbPath\":\"/2020.01.02/\"}, { \"changeType\": \"PUT\", \"s3Path\":\"s3://bucket/db/sym\", \"dbPath\":\"/\"}, { \"changeType\": \"DELETE\", \"dbPath\": \"/2020.01.01/\"} ]

In this example, the first request with PUT change type allows you to add files in the given s3Path under the 2020.01.02 partition of the database. The second request with PUT change type allows you to add a single sym file at database root location. The last request with DELETE change type allows you to delete the files under the 2020.01.01 partition of the database.

", + "CreateKxChangesetRequest$changeRequests": "

A list of change request objects that are run in order. A change request object consists of changeType , s3Path, and dbPath. A changeType can has the following values:

  • PUT – Adds or updates files in a database.

  • DELETE – Deletes files in a database.

All the change requests require a mandatory dbPath attribute that defines the path within the database directory. All database paths must start with a leading / and end with a trailing /. The s3Path attribute defines the s3 source file path and is required for a PUT change type. The s3path must end with a trailing / if it is a directory and must end without a trailing / if it is a file.

Here are few examples of how you can use the change request object:

  1. This request adds a single sym file at database root location.

    { \"changeType\": \"PUT\", \"s3Path\":\"s3://bucket/db/sym\", \"dbPath\":\"/\"}

  2. This request adds files in the given s3Path under the 2020.01.02 partition of the database.

    { \"changeType\": \"PUT\", \"s3Path\":\"s3://bucket/db/2020.01.02/\", \"dbPath\":\"/2020.01.02/\"}

  3. This request adds files in the given s3Path under the taq table partition of the database.

    [ { \"changeType\": \"PUT\", \"s3Path\":\"s3://bucket/db/2020.01.02/taq/\", \"dbPath\":\"/2020.01.02/taq/\"}]

  4. This request deletes the 2020.01.02 partition of the database.

    [{ \"changeType\": \"DELETE\", \"dbPath\": \"/2020.01.02/\"} ]

  5. The DELETE request allows you to delete the existing files under the 2020.01.02 partition of the database, and the PUT request adds a new taq table under it.

    [ {\"changeType\": \"DELETE\", \"dbPath\":\"/2020.01.02/\"}, {\"changeType\": \"PUT\", \"s3Path\":\"s3://bucket/db/2020.01.02/taq/\", \"dbPath\":\"/2020.01.02/taq/\"}]

", "CreateKxChangesetResponse$changeRequests": "

A list of change requests.

", "GetKxChangesetResponse$changeRequests": "

A list of change request objects that are run in order.

" } @@ -160,6 +161,7 @@ "CreateKxDatabaseRequest$clientToken": "

A token that ensures idempotency. This token expires in 10 minutes.

", "DeleteKxClusterRequest$clientToken": "

A token that ensures idempotency. This token expires in 10 minutes.

", "DeleteKxDatabaseRequest$clientToken": "

A token that ensures idempotency. This token expires in 10 minutes.

", + "UpdateKxClusterCodeConfigurationRequest$clientToken": "

A token that ensures idempotency. This token expires in 10 minutes.

", "UpdateKxClusterDatabasesRequest$clientToken": "

A token that ensures idempotency. This token expires in 10 minutes.

", "UpdateKxDatabaseRequest$clientToken": "

A token that ensures idempotency. This token expires in 10 minutes.

" } @@ -169,7 +171,8 @@ "refs": { "CreateKxClusterRequest$code": "

The details of the custom code that you want to use inside a cluster when analyzing a data. It consists of the S3 source bucket, location, S3 object version, and the relative path from where the custom code is loaded into the cluster.

", "CreateKxClusterResponse$code": "

The details of the custom code that you want to use inside a cluster when analyzing a data. It consists of the S3 source bucket, location, S3 object version, and the relative path from where the custom code is loaded into the cluster.

", - "GetKxClusterResponse$code": "

The details of the custom code that you want to use inside a cluster when analyzing a data. It consists of the S3 source bucket, location, S3 object version, and the relative path from where the custom code is loaded into the cluster.

" + "GetKxClusterResponse$code": "

The details of the custom code that you want to use inside a cluster when analyzing a data. It consists of the S3 source bucket, location, S3 object version, and the relative path from where the custom code is loaded into the cluster.

", + "UpdateKxClusterCodeConfigurationRequest$code": null } }, "ConflictException": { @@ -663,7 +666,8 @@ "CreateKxClusterRequest$initializationScript": "

Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

", "CreateKxClusterResponse$initializationScript": "

Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

", "GetKxClusterResponse$initializationScript": "

Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

", - "KxCluster$initializationScript": "

Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

" + "KxCluster$initializationScript": "

Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

", + "UpdateKxClusterCodeConfigurationRequest$initializationScript": "

Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

You cannot update this parameter for a NO_RESTART deployment.

" } }, "InternalServerException": { @@ -726,7 +730,7 @@ "KxCacheStorageType": { "base": null, "refs": { - "KxCacheStorageConfiguration$type": "

The type of cache storage . The valid values are:

  • CACHE_1000 – This type provides at least 1000 MB/s disk access throughput.

", + "KxCacheStorageConfiguration$type": "

The type of cache storage. The valid values are:

  • CACHE_1000 – This type provides at least 1000 MB/s disk access throughput.

  • CACHE_250 – This type provides at least 250 MB/s disk access throughput.

  • CACHE_12 – This type provides at least 12 MB/s disk access throughput.

For cache type CACHE_1000 and CACHE_250 you can select cache size as 1200 GB or increments of 2400 GB. For cache type CACHE_12 you can select the cache size in increments of 6000 GB.

", "KxDatabaseCacheConfiguration$cacheType": "

The type of disk cache. This parameter is used to map the database path to cache storage. The valid values are:

  • CACHE_1000 – This type provides at least 1000 MB/s disk access throughput.

" } }, @@ -748,6 +752,18 @@ "KxClusters$member": null } }, + "KxClusterCodeDeploymentConfiguration": { + "base": "

The configuration that allows you to choose how you want to update code on a cluster. Depending on the option you choose, you can reduce the time it takes to update the cluster.

", + "refs": { + "UpdateKxClusterCodeConfigurationRequest$deploymentConfiguration": "

The configuration that allows you to choose how you want to update the code on a cluster.

" + } + }, + "KxClusterCodeDeploymentStrategy": { + "base": null, + "refs": { + "KxClusterCodeDeploymentConfiguration$deploymentStrategy": "

The type of deployment that you want on a cluster.

  • ROLLING – This options updates the cluster by stopping the exiting q process and starting a new q process with updated configuration.

  • NO_RESTART – This option updates the cluster without stopping the running q process. It is only available for GP type cluster. This option is quicker as it reduces the turn around time to update configuration on a cluster.

    With this deployment mode, you cannot update the initializationScript and commandLineArguments parameters.

  • FORCE – This option updates the cluster by immediately stopping all the running processes before starting up new ones with the updated configuration.

" + } + }, "KxClusterDescription": { "base": null, "refs": { @@ -768,6 +784,7 @@ "GetKxConnectionStringRequest$clusterName": "

A name of the kdb cluster.

", "KxCluster$clusterName": "

A unique name for the cluster.

", "ListKxClusterNodesRequest$clusterName": "

A unique name for the cluster.

", + "UpdateKxClusterCodeConfigurationRequest$clusterName": "

The name of the cluster.

", "UpdateKxClusterDatabasesRequest$clusterName": "

A unique name for the cluster that you want to modify.

" } }, @@ -796,11 +813,11 @@ "KxClusterType": { "base": null, "refs": { - "CreateKxClusterRequest$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

", - "CreateKxClusterResponse$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

", - "GetKxClusterResponse$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

", - "KxCluster$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

", - "ListKxClustersRequest$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

" + "CreateKxClusterRequest$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

  • GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE AZ mode.

", + "CreateKxClusterResponse$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

  • GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE AZ mode.

", + "GetKxClusterResponse$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

  • GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE AZ mode.

", + "KxCluster$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

  • GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE AZ mode.

", + "ListKxClustersRequest$clusterType": "

Specifies the type of KDB database that is being created. The following types are available:

  • HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.

  • RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration parameter.

  • GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.

  • GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE AZ mode.

" } }, "KxClusters": { @@ -832,7 +849,8 @@ "refs": { "CreateKxClusterRequest$commandLineArguments": "

Defines the key-value pairs to make them available inside the cluster.

", "CreateKxClusterResponse$commandLineArguments": "

Defines the key-value pairs to make them available inside the cluster.

", - "GetKxClusterResponse$commandLineArguments": "

Defines key-value pairs to make them available inside the cluster.

" + "GetKxClusterResponse$commandLineArguments": "

Defines key-value pairs to make them available inside the cluster.

", + "UpdateKxClusterCodeConfigurationRequest$commandLineArguments": "

Specifies the key-value pairs to make them available inside the cluster.

You cannot update this parameter for a NO_RESTART deployment.

" } }, "KxDatabaseCacheConfiguration": { @@ -875,7 +893,7 @@ } }, "KxDeploymentConfiguration": { - "base": "

The configuration that allows you to choose how you want to update the databases on a cluster. Depending on the option you choose, you can reduce the time it takes to update the database changesets on to a cluster.

", + "base": "

The configuration that allows you to choose how you want to update the databases on a cluster. Depending on the option you choose, you can reduce the time it takes to update the cluster.

", "refs": { "UpdateKxClusterDatabasesRequest$deploymentConfiguration": "

The configuration that allows you to choose how you want to update the databases on a cluster.

" } @@ -883,7 +901,7 @@ "KxDeploymentStrategy": { "base": null, "refs": { - "KxDeploymentConfiguration$deploymentStrategy": "

The type of deployment that you want on a cluster.

  • ROLLING – This options loads the updated database by stopping the exiting q process and starting a new q process with updated configuration.

  • NO_RESTART – This option loads the updated database on the running q process without stopping it. This option is quicker as it reduces the turn around time to update a kdb database changeset configuration on a cluster.

" + "KxDeploymentConfiguration$deploymentStrategy": "

The type of deployment that you want on a cluster.

  • ROLLING – This options updates the cluster by stopping the exiting q process and starting a new q process with updated configuration.

  • NO_RESTART – This option updates the cluster without stopping the running q process. It is only available for HDB type cluster. This option is quicker as it reduces the turn around time to update configuration on a cluster.

    With this deployment mode, you cannot update the initializationScript and commandLineArguments parameters.

" } }, "KxEnvironment": { @@ -901,6 +919,7 @@ "GetKxClusterRequest$environmentId": "

A unique identifier for the kdb environment.

", "ListKxClusterNodesRequest$environmentId": "

A unique identifier for the kdb environment.

", "ListKxClustersRequest$environmentId": "

A unique identifier for the kdb environment.

", + "UpdateKxClusterCodeConfigurationRequest$environmentId": "

A unique identifier of the kdb environment.

", "UpdateKxClusterDatabasesRequest$environmentId": "

The unique identifier of a kdb environment.

" } }, @@ -1398,6 +1417,16 @@ "base": null, "refs": { } + }, + "UpdateKxClusterCodeConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateKxClusterCodeConfigurationResponse": { + "base": null, + "refs": { + } }, "UpdateKxClusterDatabasesRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -28,7 +28,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "CreateChangeset":{ "name":"CreateChangeset", @@ -46,7 +48,9 @@ {"shape":"AccessDeniedException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "CreateDataView":{ "name":"CreateDataView", @@ -63,7 +67,9 @@ {"shape":"LimitExceededException"}, {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "CreateDataset":{ "name":"CreateDataset", @@ -81,7 +87,9 @@ {"shape":"LimitExceededException"}, {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "CreatePermissionGroup":{ "name":"CreatePermissionGroup", @@ -98,7 +106,9 @@ {"shape":"AccessDeniedException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "CreateUser":{ "name":"CreateUser", @@ -115,7 +125,9 @@ {"shape":"AccessDeniedException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "DeleteDataset":{ "name":"DeleteDataset", @@ -133,7 +145,9 @@ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "DeletePermissionGroup":{ "name":"DeletePermissionGroup", @@ -151,7 +165,9 @@ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "DisableUser":{ "name":"DisableUser", @@ -168,7 +184,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "DisassociateUserFromPermissionGroup":{ "name":"DisassociateUserFromPermissionGroup", @@ -185,7 +203,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "EnableUser":{ "name":"EnableUser", @@ -203,7 +223,9 @@ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetChangeset":{ "name":"GetChangeset", @@ -220,7 +242,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetDataView":{ "name":"GetDataView", @@ -236,7 +260,9 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetDataset":{ "name":"GetDataset", @@ -253,7 +279,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetExternalDataViewAccessDetails":{ "name":"GetExternalDataViewAccessDetails", @@ -269,7 +297,9 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"}, {"shape":"AccessDeniedException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetPermissionGroup":{ "name":"GetPermissionGroup", @@ -285,7 +315,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetProgrammaticAccessCredentials":{ "name":"GetProgrammaticAccessCredentials", @@ -300,7 +332,9 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetUser":{ "name":"GetUser", @@ -316,7 +350,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "GetWorkingLocation":{ "name":"GetWorkingLocation", @@ -331,7 +367,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, {"shape":"ValidationException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListChangesets":{ "name":"ListChangesets", @@ -348,7 +386,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListDataViews":{ "name":"ListDataViews", @@ -364,7 +404,9 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListDatasets":{ "name":"ListDatasets", @@ -380,7 +422,9 @@ {"shape":"ValidationException"}, {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListPermissionGroups":{ "name":"ListPermissionGroups", @@ -395,7 +439,9 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListPermissionGroupsByUser":{ "name":"ListPermissionGroupsByUser", @@ -411,7 +457,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListUsers":{ "name":"ListUsers", @@ -426,7 +474,9 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ListUsersByPermissionGroup":{ "name":"ListUsersByPermissionGroup", @@ -442,7 +492,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "ResetUserPassword":{ "name":"ResetUserPassword", @@ -459,7 +511,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "UpdateChangeset":{ "name":"UpdateChangeset", @@ -476,7 +530,9 @@ {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "UpdateDataset":{ "name":"UpdateDataset", @@ -493,7 +549,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "UpdatePermissionGroup":{ "name":"UpdatePermissionGroup", @@ -510,7 +568,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." }, "UpdateUser":{ "name":"UpdateUser", @@ -527,7 +587,9 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConflictException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This method will be discontinued." } }, "shapes":{ @@ -613,7 +675,8 @@ "secretAccessKey":{"shape":"SecretAccessKey"}, "sessionToken":{"shape":"SessionToken"}, "expiration":{"shape":"TimestampEpoch"} - } + }, + "sensitive":true }, "Boolean":{"type":"boolean"}, "ChangeType":{ @@ -846,7 +909,7 @@ "type":{"shape":"UserType"}, "firstName":{"shape":"FirstName"}, "lastName":{"shape":"LastName"}, - "ApiAccess":{"shape":"ApiAccess"}, + "apiAccess":{"shape":"ApiAccess"}, "apiAccessPrincipalArn":{"shape":"RoleArn"}, "clientToken":{ "shape":"ClientToken", @@ -866,7 +929,8 @@ "accessKeyId":{"shape":"stringValueLength1to255"}, "secretAccessKey":{"shape":"stringValueMaxLength1000"}, "sessionToken":{"shape":"stringValueMaxLength1000"} - } + }, + "sensitive":true }, "DataViewArn":{"type":"string"}, "DataViewDestinationType":{"type":"string"}, @@ -1786,8 +1850,8 @@ }, "SessionDuration":{ "type":"long", - "max":720, - "min":60 + "max":60, + "min":1 }, "SessionToken":{ "type":"string", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,7 +2,7 @@ "version": "2.0", "service": "

The FinSpace APIs let you take actions inside the FinSpace.

", "operations": { - "AssociateUserToPermissionGroup": "

Adds a user account to a permission group to grant permissions for actions a user can perform in FinSpace.

", + "AssociateUserToPermissionGroup": "

Adds a user to a permission group to grant permissions for actions a user can perform in FinSpace.

", "CreateChangeset": "

Creates a new Changeset in a FinSpace Dataset.

", "CreateDataView": "

Creates a Dataview for a Dataset.

", "CreateDataset": "

Creates a new FinSpace Dataset.

", @@ -11,28 +11,28 @@ "DeleteDataset": "

Deletes a FinSpace Dataset.

", "DeletePermissionGroup": "

Deletes a permission group. This action is irreversible.

", "DisableUser": "

Denies access to the FinSpace web application and API for the specified user.

", - "DisassociateUserFromPermissionGroup": "

Removes a user account from a permission group.

", + "DisassociateUserFromPermissionGroup": "

Removes a user from a permission group.

", "EnableUser": "

Allows the specified user to access the FinSpace web application and API.

", "GetChangeset": "

Get information about a Changeset.

", "GetDataView": "

Gets information about a Dataview.

", "GetDataset": "

Returns information about a Dataset.

", "GetExternalDataViewAccessDetails": "

Returns the credentials to access the external Dataview from an S3 location. To call this API:

  • You must retrieve the programmatic credentials.

  • You must be a member of a FinSpace user group, where the dataset that you want to access has Read Dataset Data permissions.

", "GetPermissionGroup": "

Retrieves the details of a specific permission group.

", - "GetProgrammaticAccessCredentials": "

Request programmatic credentials to use with FinSpace SDK.

", + "GetProgrammaticAccessCredentials": "

Request programmatic credentials to use with FinSpace SDK. For more information, see Step 2. Access credentials programmatically using IAM access key id and secret access key.

", "GetUser": "

Retrieves details for a specific user.

", "GetWorkingLocation": "

A temporary Amazon S3 location, where you can copy your files from a source location to stage or use as a scratch space in FinSpace notebook.

", "ListChangesets": "

Lists the FinSpace Changesets for a Dataset.

", "ListDataViews": "

Lists all available Dataviews for a Dataset.

", "ListDatasets": "

Lists all of the active Datasets that a user has access to.

", "ListPermissionGroups": "

Lists all available permission groups in FinSpace.

", - "ListPermissionGroupsByUser": "

Lists all the permission groups that are associated with a specific user account.

", - "ListUsers": "

Lists all available user accounts in FinSpace.

", + "ListPermissionGroupsByUser": "

Lists all the permission groups that are associated with a specific user.

", + "ListUsers": "

Lists all available users in FinSpace.

", "ListUsersByPermissionGroup": "

Lists details of all the users in a specific permission group.

", "ResetUserPassword": "

Resets the password for a specified user ID and generates a temporary one. Only a superuser can reset password for other users. Resetting the password immediately invalidates the previous password associated with the user.

", "UpdateChangeset": "

Updates a FinSpace Changeset.

", "UpdateDataset": "

Updates a FinSpace Dataset.

", "UpdatePermissionGroup": "

Modifies the details of a permission group. You cannot modify a permissionGroupID.

", - "UpdateUser": "

Modifies the details of the specified user account. You cannot update the userId for a user.

" + "UpdateUser": "

Modifies the details of the specified user. You cannot update the userId for a user.

" }, "shapes": { "AccessDeniedException": { @@ -58,7 +58,7 @@ "ApiAccess": { "base": null, "refs": { - "CreateUserRequest$ApiAccess": "

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

", + "CreateUserRequest$apiAccess": "

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

", "GetUserResponse$apiAccess": "

Indicates whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

", "UpdateUserRequest$apiAccess": "

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

", "User$apiAccess": "

Indicates whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

", @@ -732,7 +732,7 @@ "Password": { "base": null, "refs": { - "ResetUserPasswordResponse$temporaryPassword": "

A randomly generated temporary password for the requested user account. This password expires in 7 days.

" + "ResetUserPasswordResponse$temporaryPassword": "

A randomly generated temporary password for the requested user. This password expires in 7 days.

" } }, "PermissionGroup": { @@ -743,7 +743,7 @@ } }, "PermissionGroupByUser": { - "base": "

The structure of a permission group associated with a user account.

", + "base": "

The structure of a permission group associated with a user.

", "refs": { "PermissionGroupByUserList$member": null } @@ -788,9 +788,9 @@ "PermissionGroupMembershipStatus": { "base": null, "refs": { - "PermissionGroup$membershipStatus": "

Indicates the status of the user account within a permission group.

  • ADDITION_IN_PROGRESS – The user account is currently being added to the permission group.

  • ADDITION_SUCCESS – The user account is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

", - "PermissionGroupByUser$membershipStatus": "

Indicates the status of the user account within a permission group.

  • ADDITION_IN_PROGRESS – The user account is currently being added to the permission group.

  • ADDITION_SUCCESS – The user account is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

", - "UserByPermissionGroup$membershipStatus": "

Indicates the status of the user account within a permission group.

  • ADDITION_IN_PROGRESS – The user account is currently being added to the permission group.

  • ADDITION_SUCCESS – The user account is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

" + "PermissionGroup$membershipStatus": "

Indicates the status of the user within a permission group.

  • ADDITION_IN_PROGRESS – The user is currently being added to the permission group.

  • ADDITION_SUCCESS – The user is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

", + "PermissionGroupByUser$membershipStatus": "

Indicates the status of the user within a permission group.

  • ADDITION_IN_PROGRESS – The user is currently being added to the permission group.

  • ADDITION_SUCCESS – The user is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

", + "UserByPermissionGroup$membershipStatus": "

Indicates the status of the user within a permission group.

  • ADDITION_IN_PROGRESS – The user is currently being added to the permission group.

  • ADDITION_SUCCESS – The user is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

" } }, "PermissionGroupName": { @@ -1001,17 +1001,17 @@ "GetDataViewResponse$createTime": "

The timestamp at which the Dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

", "GetDatasetResponse$createTime": "

The timestamp at which the Dataset was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

", "GetDatasetResponse$lastModifiedTime": "

The last time that the Dataset was modified. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

", - "GetUserResponse$createTime": "

The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in milliseconds.

", - "GetUserResponse$lastEnabledTime": "

Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds.

", - "GetUserResponse$lastDisabledTime": "

Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds.

", - "GetUserResponse$lastModifiedTime": "

Describes the last time the user account was updated. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$createTime": "

The timestamp at which the user was created in FinSpace. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$lastEnabledTime": "

Describes the last time the user was activated. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$lastDisabledTime": "

Describes the last time the user was deactivated. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$lastModifiedTime": "

Describes the last time the user details were updated. The value is determined as epoch time in milliseconds.

", "GetUserResponse$lastLoginTime": "

Describes the last time that the user logged into their account. The value is determined as epoch time in milliseconds.

", "PermissionGroup$createTime": "

The timestamp at which the group was created in FinSpace. The value is determined as epoch time in milliseconds.

", "PermissionGroup$lastModifiedTime": "

Describes the last time the permission group was updated. The value is determined as epoch time in milliseconds.

", - "User$createTime": "

The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in milliseconds.

", - "User$lastEnabledTime": "

Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds.

", - "User$lastDisabledTime": "

Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds.

", - "User$lastModifiedTime": "

Describes the last time the user account was updated. The value is determined as epoch time in milliseconds.

", + "User$createTime": "

The timestamp at which the user was created in FinSpace. The value is determined as epoch time in milliseconds.

", + "User$lastEnabledTime": "

Describes the last time the user was activated. The value is determined as epoch time in milliseconds.

", + "User$lastDisabledTime": "

Describes the last time the user was deactivated. The value is determined as epoch time in milliseconds.

", + "User$lastModifiedTime": "

Describes the last time the user was updated. The value is determined as epoch time in milliseconds.

", "User$lastLoginTime": "

Describes the last time that the user logged into their account. The value is determined as epoch time in milliseconds.

" } }, @@ -1056,13 +1056,13 @@ } }, "User": { - "base": "

The details of the user account.

", + "base": "

The details of the user.

", "refs": { "UserList$member": null } }, "UserByPermissionGroup": { - "base": "

The structure of a user account associated with a permission group.

", + "base": "

The structure of a user associated with a permission group.

", "refs": { "UserByPermissionGroupList$member": null } @@ -1078,18 +1078,18 @@ "refs": { "AssociateUserToPermissionGroupRequest$userId": "

The unique identifier for the user.

", "CreateUserResponse$userId": "

The unique identifier for the user.

", - "DisableUserRequest$userId": "

The unique identifier for the user account that you want to disable.

", - "DisableUserResponse$userId": "

The unique identifier for the disabled user account.

", + "DisableUserRequest$userId": "

The unique identifier for the user that you want to deactivate.

", + "DisableUserResponse$userId": "

The unique identifier for the deactivated user.

", "DisassociateUserFromPermissionGroupRequest$userId": "

The unique identifier for the user.

", - "EnableUserRequest$userId": "

The unique identifier for the user account that you want to enable.

", - "EnableUserResponse$userId": "

The unique identifier for the enabled user account.

", + "EnableUserRequest$userId": "

The unique identifier for the user that you want to activate.

", + "EnableUserResponse$userId": "

The unique identifier for the active user.

", "GetUserRequest$userId": "

The unique identifier of the user to get data for.

", - "GetUserResponse$userId": "

The unique identifier for the user account that is retrieved.

", + "GetUserResponse$userId": "

The unique identifier for the user that is retrieved.

", "ListPermissionGroupsByUserRequest$userId": "

The unique identifier for the user.

", "ResetUserPasswordRequest$userId": "

The unique identifier of the user that a temporary password is requested for.

", "ResetUserPasswordResponse$userId": "

The unique identifier of the user that a new password is generated for.

", - "UpdateUserRequest$userId": "

The unique identifier for the user account to update.

", - "UpdateUserResponse$userId": "

The unique identifier of the updated user account.

", + "UpdateUserRequest$userId": "

The unique identifier for the user that you want to update.

", + "UpdateUserResponse$userId": "

The unique identifier of the updated user.

", "User$userId": "

The unique identifier for the user.

", "UserByPermissionGroup$userId": "

The unique identifier for the user.

" } @@ -1097,15 +1097,15 @@ "UserList": { "base": null, "refs": { - "ListUsersResponse$users": "

A list of all the user accounts.

" + "ListUsersResponse$users": "

A list of all the users.

" } }, "UserStatus": { "base": null, "refs": { - "GetUserResponse$status": "

The current status of the user account.

  • CREATING – The user account creation is in progress.

  • ENABLED – The user account is created and is currently active.

  • DISABLED – The user account is currently inactive.

", - "User$status": "

The current status of the user account.

  • CREATING – The user account creation is in progress.

  • ENABLED – The user account is created and is currently active.

  • DISABLED – The user account is currently inactive.

", - "UserByPermissionGroup$status": "

The current status of the user account.

  • CREATING – The user account creation is in progress.

  • ENABLED – The user account is created and is currently active.

  • DISABLED – The user account is currently inactive.

" + "GetUserResponse$status": "

The current status of the user.

  • CREATING – The creation is in progress.

  • ENABLED – The user is created and is currently active.

  • DISABLED – The user is currently inactive.

", + "User$status": "

The current status of the user.

  • CREATING – The user creation is in progress.

  • ENABLED – The user is created and is currently active.

  • DISABLED – The user is currently inactive.

", + "UserByPermissionGroup$status": "

The current status of the user.

  • CREATING – The user creation is in progress.

  • ENABLED – The user is created and is currently active.

  • DISABLED – The user is currently inactive.

" } }, "UserType": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,366 @@ +{ + "testCases": [ + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/firehose/2015-08-04/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/firehose/2015-08-04/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/firehose/2015-08-04/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/firehose/2015-08-04/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -414,6 +414,17 @@ "min":0, "pattern":".*" }, + "AuthenticationConfiguration":{ + "type":"structure", + "required":[ + "RoleARN", + "Connectivity" + ], + "members":{ + "RoleARN":{"shape":"RoleARN"}, + "Connectivity":{"shape":"Connectivity"} + } + }, "BlockSizeBytes":{ "type":"integer", "min":67108864 @@ -444,7 +455,7 @@ "type":"string", "max":512, "min":1, - "pattern":"jdbc:(redshift|postgresql)://((?!-)[A-Za-z0-9-]{1,63}(?Describes the specified delivery stream and its status. For example, after your delivery stream is created, call DescribeDeliveryStream to see whether the delivery stream is ACTIVE and therefore ready for data to be sent to it.

If the status of a delivery stream is CREATING_FAILED, this status doesn't change, and you can't invoke CreateDeliveryStream again on it. However, you can invoke the DeleteDeliveryStream operation to delete it. If the status is DELETING_FAILED, you can force deletion by invoking DeleteDeliveryStream again but with DeleteDeliveryStreamInput$AllowForceDelete set to true.

", "ListDeliveryStreams": "

Lists your delivery streams in alphabetical order of their names.

The number of delivery streams might be too large to return using a single call to ListDeliveryStreams. You can limit the number of delivery streams returned, using the Limit parameter. To determine whether there are more delivery streams to list, check the value of HasMoreDeliveryStreams in the output. If there are more delivery streams to list, you can request them by calling this operation again and setting the ExclusiveStartDeliveryStreamName parameter to the name of the last delivery stream returned in the last call.

", "ListTagsForDeliveryStream": "

Lists the tags for the specified delivery stream. This operation has a limit of five transactions per second per account.

", - "PutRecord": "

Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to as producers.

By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. If you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Data Firehose Limits.

You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KiB in size, and any kind of data. For example, it can be a segment from a log file, geographic location data, website clickstream data, and so on.

Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.

The PutRecord operation returns a RecordId, which is a unique string assigned to each record. Producer applications can use this ID for purposes such as auditability and investigation.

If the PutRecord operation throws a ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it tries to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.

", - "PutRecordBatch": "

Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.

For information about service quota, see Amazon Kinesis Data Firehose Quota.

Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before base64 encoding), up to a limit of 4 MB for the entire request. These limits cannot be changed.

You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data. For example, it could be a segment from a log file, geographic location data, website clickstream data, and so on.

Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.

The PutRecordBatch response includes a count of failed records, FailedPutCount, and an array of responses, RequestResponses. Even if the PutRecordBatch call succeeds, the value of FailedPutCount may be greater than 0, indicating that there are records for which the operation didn't succeed. Each entry in the RequestResponses array provides additional information about the processed record. It directly correlates with a record in the request array using the same ordering, from the top to the bottom. The response array always includes the same number of records as the request array. RequestResponses includes both successfully and unsuccessfully processed records. Kinesis Data Firehose tries to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.

A successfully processed record includes a RecordId value, which is unique for the record. An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error, and is one of the following values: ServiceUnavailableException or InternalFailure. ErrorMessage provides more detailed information about the error.

If there is an internal server error or a timeout, the write might have completed or it might have failed. If FailedPutCount is greater than 0, retry the request, resending only those records that might have failed processing. This minimizes the possible duplicate records and also reduces the total bytes sent (and corresponding charges). We recommend that you handle any duplicates at the destination.

If PutRecordBatch throws ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.

", - "StartDeliveryStreamEncryption": "

Enables server-side encryption (SSE) for the delivery stream.

This operation is asynchronous. It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to ENABLING, and then to ENABLED. The encryption status of a delivery stream is the Status property in DeliveryStreamEncryptionConfiguration. If the operation fails, the encryption status changes to ENABLING_FAILED. You can continue to read and write data to your delivery stream while the encryption status is ENABLING, but the data is not encrypted. It can take up to 5 seconds after the encryption status changes to ENABLED before all records written to the delivery stream are encrypted. To find out whether a record or a batch of records was encrypted, check the response elements PutRecordOutput$Encrypted and PutRecordBatchOutput$Encrypted, respectively.

To check the encryption status of a delivery stream, use DescribeDeliveryStream.

Even if encryption is currently enabled for a delivery stream, you can still invoke this operation on it to change the ARN of the CMK or both its type and ARN. If you invoke this method to change the CMK, and the old CMK is of type CUSTOMER_MANAGED_CMK, Kinesis Data Firehose schedules the grant it had on the old CMK for retirement. If the new CMK is of type CUSTOMER_MANAGED_CMK, Kinesis Data Firehose creates a grant that enables it to use the new CMK to encrypt and decrypt data and to manage the grant.

If a delivery stream already has encryption enabled and then you invoke this operation to change the ARN of the CMK or both its type and ARN and you get ENABLING_FAILED, this only means that the attempt to change the CMK failed. In this case, encryption remains enabled with the old CMK.

If the encryption status of your delivery stream is ENABLING_FAILED, you can invoke this operation again with a valid CMK. The CMK must be enabled and the key policy mustn't explicitly deny the permission for Kinesis Data Firehose to invoke KMS encrypt and decrypt operations.

You can enable SSE for a delivery stream only if it's a delivery stream that uses DirectPut as its source.

The StartDeliveryStreamEncryption and StopDeliveryStreamEncryption operations have a combined limit of 25 calls per delivery stream per 24 hours. For example, you reach the limit if you call StartDeliveryStreamEncryption 13 times and StopDeliveryStreamEncryption 12 times for the same delivery stream in a 24-hour period.

", + "PutRecord": "

Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to as producers.

By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. If you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Data Firehose Limits.

Kinesis Data Firehose accumulates and publishes a particular metric for a customer account in one minute intervals. It is possible that the bursts of incoming bytes/records ingested to a delivery stream last only for a few seconds. Due to this, the actual spikes in the traffic might not be fully visible in the customer's 1 minute CloudWatch metrics.

You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KiB in size, and any kind of data. For example, it can be a segment from a log file, geographic location data, website clickstream data, and so on.

Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.

The PutRecord operation returns a RecordId, which is a unique string assigned to each record. Producer applications can use this ID for purposes such as auditability and investigation.

If the PutRecord operation throws a ServiceUnavailableException, the API is automatically reinvoked (retried) 3 times. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

Re-invoking the Put API operations (for example, PutRecord and PutRecordBatch) can result in data duplicates. For larger data assets, allow for a longer time out before retrying Put API operations.

Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it tries to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.

", + "PutRecordBatch": "

Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.

Kinesis Data Firehose accumulates and publishes a particular metric for a customer account in one minute intervals. It is possible that the bursts of incoming bytes/records ingested to a delivery stream last only for a few seconds. Due to this, the actual spikes in the traffic might not be fully visible in the customer's 1 minute CloudWatch metrics.

For information about service quota, see Amazon Kinesis Data Firehose Quota.

Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before base64 encoding), up to a limit of 4 MB for the entire request. These limits cannot be changed.

You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data. For example, it could be a segment from a log file, geographic location data, website clickstream data, and so on.

Kinesis Data Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n) or some other character unique within the data. This allows the consumer application to parse individual data items when reading the data from the destination.

The PutRecordBatch response includes a count of failed records, FailedPutCount, and an array of responses, RequestResponses. Even if the PutRecordBatch call succeeds, the value of FailedPutCount may be greater than 0, indicating that there are records for which the operation didn't succeed. Each entry in the RequestResponses array provides additional information about the processed record. It directly correlates with a record in the request array using the same ordering, from the top to the bottom. The response array always includes the same number of records as the request array. RequestResponses includes both successfully and unsuccessfully processed records. Kinesis Data Firehose tries to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.

A successfully processed record includes a RecordId value, which is unique for the record. An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error, and is one of the following values: ServiceUnavailableException or InternalFailure. ErrorMessage provides more detailed information about the error.

If there is an internal server error or a timeout, the write might have completed or it might have failed. If FailedPutCount is greater than 0, retry the request, resending only those records that might have failed processing. This minimizes the possible duplicate records and also reduces the total bytes sent (and corresponding charges). We recommend that you handle any duplicates at the destination.

If PutRecordBatch throws ServiceUnavailableException, the API is automatically reinvoked (retried) 3 times. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

Re-invoking the Put API operations (for example, PutRecord and PutRecordBatch) can result in data duplicates. For larger data assets, allow for a longer time out before retrying Put API operations.

Data records sent to Kinesis Data Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

Don't concatenate two or more base64 strings to form the data fields of your records. Instead, concatenate the raw data, then perform base64 encoding.

", + "StartDeliveryStreamEncryption": "

Enables server-side encryption (SSE) for the delivery stream.

This operation is asynchronous. It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to ENABLING, and then to ENABLED. The encryption status of a delivery stream is the Status property in DeliveryStreamEncryptionConfiguration. If the operation fails, the encryption status changes to ENABLING_FAILED. You can continue to read and write data to your delivery stream while the encryption status is ENABLING, but the data is not encrypted. It can take up to 5 seconds after the encryption status changes to ENABLED before all records written to the delivery stream are encrypted. To find out whether a record or a batch of records was encrypted, check the response elements PutRecordOutput$Encrypted and PutRecordBatchOutput$Encrypted, respectively.

To check the encryption status of a delivery stream, use DescribeDeliveryStream.

Even if encryption is currently enabled for a delivery stream, you can still invoke this operation on it to change the ARN of the CMK or both its type and ARN. If you invoke this method to change the CMK, and the old CMK is of type CUSTOMER_MANAGED_CMK, Kinesis Data Firehose schedules the grant it had on the old CMK for retirement. If the new CMK is of type CUSTOMER_MANAGED_CMK, Kinesis Data Firehose creates a grant that enables it to use the new CMK to encrypt and decrypt data and to manage the grant.

For the KMS grant creation to be successful, Kinesis Data Firehose APIs StartDeliveryStreamEncryption and CreateDeliveryStream should not be called with session credentials that are more than 6 hours old.

If a delivery stream already has encryption enabled and then you invoke this operation to change the ARN of the CMK or both its type and ARN and you get ENABLING_FAILED, this only means that the attempt to change the CMK failed. In this case, encryption remains enabled with the old CMK.

If the encryption status of your delivery stream is ENABLING_FAILED, you can invoke this operation again with a valid CMK. The CMK must be enabled and the key policy mustn't explicitly deny the permission for Kinesis Data Firehose to invoke KMS encrypt and decrypt operations.

You can enable SSE for a delivery stream only if it's a delivery stream that uses DirectPut as its source.

The StartDeliveryStreamEncryption and StopDeliveryStreamEncryption operations have a combined limit of 25 calls per delivery stream per 24 hours. For example, you reach the limit if you call StartDeliveryStreamEncryption 13 times and StopDeliveryStreamEncryption 12 times for the same delivery stream in a 24-hour period.

", "StopDeliveryStreamEncryption": "

Disables server-side encryption (SSE) for the delivery stream.

This operation is asynchronous. It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to DISABLING, and then to DISABLED. You can continue to read and write data to your stream while its status is DISABLING. It can take up to 5 seconds after the encryption status changes to DISABLED before all records written to the delivery stream are no longer subject to encryption. To find out whether a record or a batch of records was encrypted, check the response elements PutRecordOutput$Encrypted and PutRecordBatchOutput$Encrypted, respectively.

To check the encryption state of a delivery stream, use DescribeDeliveryStream.

If SSE is enabled using a customer managed CMK and then you invoke StopDeliveryStreamEncryption, Kinesis Data Firehose schedules the related KMS grant for retirement and then retires it after it ensures that it is finished delivering records to the destination.

The StartDeliveryStreamEncryption and StopDeliveryStreamEncryption operations have a combined limit of 25 calls per delivery stream per 24 hours. For example, you reach the limit if you call StartDeliveryStreamEncryption 13 times and StopDeliveryStreamEncryption 12 times for the same delivery stream in a 24-hour period.

", "TagDeliveryStream": "

Adds or updates tags for the specified delivery stream. A tag is a key-value pair that you can define and assign to Amazon Web Services resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. Tags are metadata. For example, you can add friendly names and descriptions or other types of information that can help you distinguish the delivery stream. For more information about tags, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

Each delivery stream can have up to 50 tags.

This operation has a limit of five transactions per second per account.

", "UntagDeliveryStream": "

Removes tags from the specified delivery stream. Removed tags are deleted, and you can't recover them after this operation successfully completes.

If you specify a tag that doesn't exist, the operation ignores it.

This operation has a limit of five transactions per second per account.

", @@ -198,6 +198,13 @@ "AmazonopensearchserviceDestinationUpdate$TypeName": "

The Amazon OpenSearch Service type name. For Elasticsearch 6.x, there can be only one type per index. If you try to specify a new type for an existing index that already has another type, Kinesis Data Firehose returns an error during runtime.

If you upgrade Elasticsearch from 6.x to 7.x and don’t update your delivery stream, Kinesis Data Firehose still delivers data to Elasticsearch with the old index name and type name. If you want to update your delivery stream with a new index name, provide an empty string for TypeName.

" } }, + "AuthenticationConfiguration": { + "base": "

The authentication configuration of the Amazon MSK cluster.

", + "refs": { + "MSKSourceConfiguration$AuthenticationConfiguration": "

The authentication configuration of the Amazon MSK cluster.

", + "MSKSourceDescription$AuthenticationConfiguration": "

The authentication configuration of the Amazon MSK cluster.

" + } + }, "BlockSizeBytes": { "base": null, "refs": { @@ -305,6 +312,12 @@ "refs": { } }, + "Connectivity": { + "base": null, + "refs": { + "AuthenticationConfiguration$Connectivity": "

The type of connectivity used to access the Amazon MSK cluster.

" + } + }, "ContentEncoding": { "base": null, "refs": { @@ -380,7 +393,8 @@ "DeliveryStartTimestamp": { "base": null, "refs": { - "KinesisStreamSourceDescription$DeliveryStartTimestamp": "

Kinesis Data Firehose starts retrieving records from the Kinesis data stream starting with this timestamp.

" + "KinesisStreamSourceDescription$DeliveryStartTimestamp": "

Kinesis Data Firehose starts retrieving records from the Kinesis data stream starting with this timestamp.

", + "MSKSourceDescription$DeliveryStartTimestamp": "

Kinesis Data Firehose starts retrieving records from the topic within the Amazon MSK cluster starting with this timestamp.

" } }, "DeliveryStreamARN": { @@ -978,6 +992,25 @@ "CloudWatchLoggingOptions$LogStreamName": "

The CloudWatch log stream name for logging. This value is required if CloudWatch logging is enabled.

" } }, + "MSKClusterARN": { + "base": null, + "refs": { + "MSKSourceConfiguration$MSKClusterARN": "

The ARN of the Amazon MSK cluster.

", + "MSKSourceDescription$MSKClusterARN": "

The ARN of the Amazon MSK cluster.

" + } + }, + "MSKSourceConfiguration": { + "base": "

The configuration for the Amazon MSK cluster to be used as the source for a delivery stream.

", + "refs": { + "CreateDeliveryStreamInput$MSKSourceConfiguration": null + } + }, + "MSKSourceDescription": { + "base": "

Details about the Amazon MSK cluster used as the source for a Kinesis Data Firehose delivery stream.

", + "refs": { + "SourceDescription$MSKSourceDescription": "

The configuration description for the Amazon MSK cluster to be used as the source for a delivery stream.

" + } + }, "NoEncryptionConfig": { "base": null, "refs": { @@ -1298,6 +1331,7 @@ "AmazonopensearchserviceDestinationConfiguration$RoleARN": "

The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon OpenSearch Service Configuration API and for indexing documents.

", "AmazonopensearchserviceDestinationDescription$RoleARN": "

The Amazon Resource Name (ARN) of the Amazon Web Services credentials.

", "AmazonopensearchserviceDestinationUpdate$RoleARN": "

The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon OpenSearch Service Configuration API and for indexing documents.

", + "AuthenticationConfiguration$RoleARN": "

The ARN of the role used to access the Amazon MSK cluster.

", "ElasticsearchDestinationConfiguration$RoleARN": "

The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon ES Configuration API and for indexing documents. For more information, see Grant Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", "ElasticsearchDestinationDescription$RoleARN": "

The Amazon Resource Name (ARN) of the Amazon Web Services credentials. For more information, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", "ElasticsearchDestinationUpdate$RoleARN": "

The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon ES Configuration API and for indexing documents. For more information, see Grant Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces.

", @@ -1523,6 +1557,13 @@ "DeliveryStreamDescription$LastUpdateTimestamp": "

The date and time that the delivery stream was last updated.

" } }, + "TopicName": { + "base": null, + "refs": { + "MSKSourceConfiguration$TopicName": "

The topic name within the Amazon MSK cluster.

", + "MSKSourceDescription$TopicName": "

The topic name within the Amazon MSK cluster.

" + } + }, "UntagDeliveryStreamInput": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -29,6 +29,22 @@ {"shape":"ServiceQuotaExceededException"} ] }, + "CreateTargetAccountConfiguration":{ + "name":"CreateTargetAccountConfiguration", + "http":{ + "method":"POST", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"CreateTargetAccountConfigurationRequest"}, + "output":{"shape":"CreateTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, "DeleteExperimentTemplate":{ "name":"DeleteExperimentTemplate", "http":{ @@ -43,6 +59,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "DeleteTargetAccountConfiguration":{ + "name":"DeleteTargetAccountConfiguration", + "http":{ + "method":"DELETE", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"DeleteTargetAccountConfigurationRequest"}, + "output":{"shape":"DeleteTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "GetAction":{ "name":"GetAction", "http":{ @@ -71,6 +101,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetExperimentTargetAccountConfiguration":{ + "name":"GetExperimentTargetAccountConfiguration", + "http":{ + "method":"GET", + "requestUri":"/experiments/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"GetExperimentTargetAccountConfigurationRequest"}, + "output":{"shape":"GetExperimentTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, "GetExperimentTemplate":{ "name":"GetExperimentTemplate", "http":{ @@ -85,6 +129,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetTargetAccountConfiguration":{ + "name":"GetTargetAccountConfiguration", + "http":{ + "method":"GET", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"GetTargetAccountConfigurationRequest"}, + "output":{"shape":"GetTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, "GetTargetResourceType":{ "name":"GetTargetResourceType", "http":{ @@ -112,6 +170,34 @@ {"shape":"ValidationException"} ] }, + "ListExperimentResolvedTargets":{ + "name":"ListExperimentResolvedTargets", + "http":{ + "method":"GET", + "requestUri":"/experiments/{id}/resolvedTargets", + "responseCode":200 + }, + "input":{"shape":"ListExperimentResolvedTargetsRequest"}, + "output":{"shape":"ListExperimentResolvedTargetsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListExperimentTargetAccountConfigurations":{ + "name":"ListExperimentTargetAccountConfigurations", + "http":{ + "method":"GET", + "requestUri":"/experiments/{id}/targetAccountConfigurations", + "responseCode":200 + }, + "input":{"shape":"ListExperimentTargetAccountConfigurationsRequest"}, + "output":{"shape":"ListExperimentTargetAccountConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListExperimentTemplates":{ "name":"ListExperimentTemplates", "http":{ @@ -148,6 +234,20 @@ "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"} }, + "ListTargetAccountConfigurations":{ + "name":"ListTargetAccountConfigurations", + "http":{ + "method":"GET", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations", + "responseCode":200 + }, + "input":{"shape":"ListTargetAccountConfigurationsRequest"}, + "output":{"shape":"ListTargetAccountConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListTargetResourceTypes":{ "name":"ListTargetResourceTypes", "http":{ @@ -225,9 +325,30 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ServiceQuotaExceededException"} ] + }, + "UpdateTargetAccountConfiguration":{ + "name":"UpdateTargetAccountConfiguration", + "http":{ + "method":"PATCH", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"UpdateTargetAccountConfigurationRequest"}, + "output":{"shape":"UpdateTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] } }, "shapes":{ + "AccountTargeting":{ + "type":"string", + "enum":[ + "single-account", + "multi-account" + ] + }, "Action":{ "type":"structure", "members":{ @@ -339,6 +460,13 @@ "key":{"shape":"ExperimentTemplateActionName"}, "value":{"shape":"CreateExperimentTemplateActionInput"} }, + "CreateExperimentTemplateExperimentOptionsInput":{ + "type":"structure", + "members":{ + "accountTargeting":{"shape":"AccountTargeting"}, + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "CreateExperimentTemplateLogConfigurationInput":{ "type":"structure", "required":["logSchemaVersion"], @@ -368,7 +496,8 @@ "actions":{"shape":"CreateExperimentTemplateActionInputMap"}, "roleArn":{"shape":"RoleArn"}, "tags":{"shape":"TagMap"}, - "logConfiguration":{"shape":"CreateExperimentTemplateLogConfigurationInput"} + "logConfiguration":{"shape":"CreateExperimentTemplateLogConfigurationInput"}, + "experimentOptions":{"shape":"CreateExperimentTemplateExperimentOptionsInput"} } }, "CreateExperimentTemplateResponse":{ @@ -409,6 +538,38 @@ "key":{"shape":"ExperimentTemplateTargetName"}, "value":{"shape":"CreateExperimentTemplateTargetInput"} }, + "CreateTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId", + "roleArn" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + }, + "roleArn":{"shape":"RoleArn"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "CreateTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, "CreationTime":{"type":"timestamp"}, "DeleteExperimentTemplateRequest":{ "type":"structure", @@ -427,6 +588,38 @@ "experimentTemplate":{"shape":"ExperimentTemplate"} } }, + "DeleteTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId" + ], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + } + } + }, + "DeleteTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, + "EmptyTargetResolutionMode":{ + "type":"string", + "enum":[ + "fail", + "skip" + ] + }, "ExceptionMessage":{ "type":"string", "max":1024, @@ -446,7 +639,9 @@ "startTime":{"shape":"ExperimentStartTime"}, "endTime":{"shape":"ExperimentEndTime"}, "tags":{"shape":"TagMap"}, - "logConfiguration":{"shape":"ExperimentLogConfiguration"} + "logConfiguration":{"shape":"ExperimentLogConfiguration"}, + "experimentOptions":{"shape":"ExperimentOptions"}, + "targetAccountConfigurationsCount":{"shape":"TargetAccountConfigurationsCount"} } }, "ExperimentAction":{ @@ -520,7 +715,8 @@ "cancelled", "stopping", "stopped", - "failed" + "failed", + "skipped" ] }, "ExperimentActionStatusReason":{ @@ -558,6 +754,13 @@ "logSchemaVersion":{"shape":"LogSchemaVersion"} } }, + "ExperimentOptions":{ + "type":"structure", + "members":{ + "accountTargeting":{"shape":"AccountTargeting"}, + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "ExperimentS3LogConfiguration":{ "type":"structure", "members":{ @@ -626,6 +829,26 @@ "parameters":{"shape":"ExperimentTargetParameterMap"} } }, + "ExperimentTargetAccountConfiguration":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "ExperimentTargetAccountConfigurationList":{ + "type":"list", + "member":{"shape":"ExperimentTargetAccountConfigurationSummary"} + }, + "ExperimentTargetAccountConfigurationSummary":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, "ExperimentTargetFilter":{ "type":"structure", "members":{ @@ -693,7 +916,9 @@ "lastUpdateTime":{"shape":"LastUpdateTime"}, "roleArn":{"shape":"RoleArn"}, "tags":{"shape":"TagMap"}, - "logConfiguration":{"shape":"ExperimentTemplateLogConfiguration"} + "logConfiguration":{"shape":"ExperimentTemplateLogConfiguration"}, + "experimentOptions":{"shape":"ExperimentTemplateExperimentOptions"}, + "targetAccountConfigurationsCount":{"shape":"TargetAccountConfigurationsCount"} } }, "ExperimentTemplateAction":{ @@ -773,6 +998,13 @@ "max":512, "pattern":"[\\s\\S]+" }, + "ExperimentTemplateExperimentOptions":{ + "type":"structure", + "members":{ + "accountTargeting":{"shape":"AccountTargeting"}, + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "ExperimentTemplateId":{ "type":"string", "max":64, @@ -942,6 +1174,31 @@ "experiment":{"shape":"Experiment"} } }, + "GetExperimentTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentId", + "accountId" + ], + "members":{ + "experimentId":{ + "shape":"ExperimentId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + } + } + }, + "GetExperimentTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"ExperimentTargetAccountConfiguration"} + } + }, "GetExperimentTemplateRequest":{ "type":"structure", "required":["id"], @@ -959,6 +1216,31 @@ "experimentTemplate":{"shape":"ExperimentTemplate"} } }, + "GetTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId" + ], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + } + } + }, + "GetTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, "GetTargetResourceTypeRequest":{ "type":"structure", "required":["resourceType"], @@ -1005,6 +1287,68 @@ "nextToken":{"shape":"NextToken"} } }, + "ListExperimentResolvedTargetsMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListExperimentResolvedTargetsRequest":{ + "type":"structure", + "required":["experimentId"], + "members":{ + "experimentId":{ + "shape":"ExperimentId", + "location":"uri", + "locationName":"id" + }, + "maxResults":{ + "shape":"ListExperimentResolvedTargetsMaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "targetName":{ + "shape":"TargetName", + "location":"querystring", + "locationName":"targetName" + } + } + }, + "ListExperimentResolvedTargetsResponse":{ + "type":"structure", + "members":{ + "resolvedTargets":{"shape":"ResolvedTargetList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListExperimentTargetAccountConfigurationsRequest":{ + "type":"structure", + "required":["experimentId"], + "members":{ + "experimentId":{ + "shape":"ExperimentId", + "location":"uri", + "locationName":"id" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListExperimentTargetAccountConfigurationsResponse":{ + "type":"structure", + "members":{ + "targetAccountConfigurations":{"shape":"ExperimentTargetAccountConfigurationList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListExperimentTemplatesMaxResults":{ "type":"integer", "max":100, @@ -1078,6 +1422,40 @@ "tags":{"shape":"TagMap"} } }, + "ListTargetAccountConfigurationsMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListTargetAccountConfigurationsRequest":{ + "type":"structure", + "required":["experimentTemplateId"], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "maxResults":{ + "shape":"ListTargetAccountConfigurationsMaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListTargetAccountConfigurationsResponse":{ + "type":"structure", + "members":{ + "targetAccountConfigurations":{"shape":"TargetAccountConfigurationList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListTargetResourceTypesMaxResults":{ "type":"integer", "max":100, @@ -1113,6 +1491,18 @@ "min":1, "pattern":"[\\S]+" }, + "ResolvedTarget":{ + "type":"structure", + "members":{ + "resourceType":{"shape":"TargetResourceTypeId"}, + "targetName":{"shape":"TargetName"}, + "targetInformation":{"shape":"TargetInformationMap"} + } + }, + "ResolvedTargetList":{ + "type":"list", + "member":{"shape":"ResolvedTarget"} + }, "ResourceArn":{ "type":"string", "max":2048, @@ -1247,6 +1637,61 @@ "max":256, "pattern":"[\\s\\S]*" }, + "TargetAccountConfiguration":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "TargetAccountConfigurationDescription":{ + "type":"string", + "max":512, + "pattern":"[\\s\\S]*" + }, + "TargetAccountConfigurationList":{ + "type":"list", + "member":{"shape":"TargetAccountConfigurationSummary"} + }, + "TargetAccountConfigurationSummary":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "TargetAccountConfigurationsCount":{ + "type":"long", + "min":0 + }, + "TargetAccountId":{ + "type":"string", + "max":48, + "min":12, + "pattern":"[\\S]+" + }, + "TargetInformationKey":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, + "TargetInformationMap":{ + "type":"map", + "key":{"shape":"TargetInformationKey"}, + "value":{"shape":"TargetInformationValue"} + }, + "TargetInformationValue":{ + "type":"string", + "max":2048, + "pattern":"[\\S]+" + }, + "TargetName":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, "TargetResourceType":{ "type":"structure", "members":{ @@ -1338,6 +1783,12 @@ "key":{"shape":"ExperimentTemplateActionName"}, "value":{"shape":"UpdateExperimentTemplateActionInputItem"} }, + "UpdateExperimentTemplateExperimentOptionsInput":{ + "type":"structure", + "members":{ + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "UpdateExperimentTemplateLogConfigurationInput":{ "type":"structure", "members":{ @@ -1360,7 +1811,8 @@ "targets":{"shape":"UpdateExperimentTemplateTargetInputMap"}, "actions":{"shape":"UpdateExperimentTemplateActionInputMap"}, "roleArn":{"shape":"RoleArn"}, - "logConfiguration":{"shape":"UpdateExperimentTemplateLogConfigurationInput"} + "logConfiguration":{"shape":"UpdateExperimentTemplateLogConfigurationInput"}, + "experimentOptions":{"shape":"UpdateExperimentTemplateExperimentOptionsInput"} } }, "UpdateExperimentTemplateResponse":{ @@ -1401,6 +1853,33 @@ "key":{"shape":"ExperimentTemplateTargetName"}, "value":{"shape":"UpdateExperimentTemplateTargetInput"} }, + "UpdateTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId" + ], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + }, + "roleArn":{"shape":"RoleArn"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "UpdateTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, "ValidationException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,24 +2,40 @@ "version": "2.0", "service": "

Fault Injection Simulator is a managed service that enables you to perform fault injection experiments on your Amazon Web Services workloads. For more information, see the Fault Injection Simulator User Guide.

", "operations": { - "CreateExperimentTemplate": "

Creates an experiment template.

An experiment template includes the following components:

  • Targets: A target can be a specific resource in your Amazon Web Services environment, or one or more resources that match criteria that you specify, for example, resources that have specific tags.

  • Actions: The actions to carry out on the target. You can specify multiple actions, the duration of each action, and when to start each action during an experiment.

  • Stop conditions: If a stop condition is triggered while an experiment is running, the experiment is automatically stopped. You can define a stop condition as a CloudWatch alarm.

For more information, see Experiment templates in the Fault Injection Simulator User Guide.

", + "CreateExperimentTemplate": "

Creates an experiment template.

An experiment template includes the following components:

  • Targets: A target can be a specific resource in your Amazon Web Services environment, or one or more resources that match criteria that you specify, for example, resources that have specific tags.

  • Actions: The actions to carry out on the target. You can specify multiple actions, the duration of each action, and when to start each action during an experiment.

  • Stop conditions: If a stop condition is triggered while an experiment is running, the experiment is automatically stopped. You can define a stop condition as a CloudWatch alarm.

For more information, see experiment templates in the Fault Injection Simulator User Guide.

", + "CreateTargetAccountConfiguration": "

Creates a target account configuration for the experiment template. A target account configuration is required when accountTargeting of experimentOptions is set to multi-account. For more information, see experiment options in the Fault Injection Simulator User Guide.

", "DeleteExperimentTemplate": "

Deletes the specified experiment template.

", + "DeleteTargetAccountConfiguration": "

Deletes the specified target account configuration of the experiment template.

", "GetAction": "

Gets information about the specified FIS action.

", "GetExperiment": "

Gets information about the specified experiment.

", + "GetExperimentTargetAccountConfiguration": "

Gets information about the specified target account configuration of the experiment.

", "GetExperimentTemplate": "

Gets information about the specified experiment template.

", + "GetTargetAccountConfiguration": "

Gets information about the specified target account configuration of the experiment template.

", "GetTargetResourceType": "

Gets information about the specified resource type.

", "ListActions": "

Lists the available FIS actions.

", + "ListExperimentResolvedTargets": "

Lists the resolved targets information of the specified experiment.

", + "ListExperimentTargetAccountConfigurations": "

Lists the target account configurations of the specified experiment.

", "ListExperimentTemplates": "

Lists your experiment templates.

", "ListExperiments": "

Lists your experiments.

", "ListTagsForResource": "

Lists the tags for the specified resource.

", + "ListTargetAccountConfigurations": "

Lists the target account configurations of the specified experiment template.

", "ListTargetResourceTypes": "

Lists the target resource types.

", "StartExperiment": "

Starts running an experiment from the specified experiment template.

", "StopExperiment": "

Stops the specified experiment.

", "TagResource": "

Applies the specified tags to the specified resource.

", "UntagResource": "

Removes the specified tags from the specified resource.

", - "UpdateExperimentTemplate": "

Updates the specified experiment template.

" + "UpdateExperimentTemplate": "

Updates the specified experiment template.

", + "UpdateTargetAccountConfiguration": "

Updates the target account configuration for the specified experiment template.

" }, "shapes": { + "AccountTargeting": { + "base": null, + "refs": { + "CreateExperimentTemplateExperimentOptionsInput$accountTargeting": "

Specifies the account targeting setting for experiment options.

", + "ExperimentOptions$accountTargeting": "

The account targeting setting for an experiment.

", + "ExperimentTemplateExperimentOptions$accountTargeting": "

The account targeting setting for an experiment template.

" + } + }, "Action": { "base": "

Describes an action. For more information, see FIS actions in the Fault Injection Simulator User Guide.

", "refs": { @@ -110,6 +126,7 @@ "base": null, "refs": { "CreateExperimentTemplateRequest$clientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateTargetAccountConfigurationRequest$clientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "StartExperimentRequest$clientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

" } }, @@ -138,6 +155,12 @@ "CreateExperimentTemplateRequest$actions": "

The actions for the experiment.

" } }, + "CreateExperimentTemplateExperimentOptionsInput": { + "base": "

Specifies experiment options for an experiment template.

", + "refs": { + "CreateExperimentTemplateRequest$experimentOptions": "

The experiment options for the experiment template.

" + } + }, "CreateExperimentTemplateLogConfigurationInput": { "base": "

Specifies the configuration for experiment logging.

", "refs": { @@ -178,6 +201,16 @@ "CreateExperimentTemplateRequest$targets": "

The targets for the experiment.

" } }, + "CreateTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreateTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "CreationTime": { "base": null, "refs": { @@ -197,6 +230,25 @@ "refs": { } }, + "DeleteTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, + "EmptyTargetResolutionMode": { + "base": null, + "refs": { + "CreateExperimentTemplateExperimentOptionsInput$emptyTargetResolutionMode": "

Specifies the empty target resolution mode for experiment options.

", + "ExperimentOptions$emptyTargetResolutionMode": "

The empty target resolution mode for an experiment.

", + "ExperimentTemplateExperimentOptions$emptyTargetResolutionMode": "

The empty target resolution mode for an experiment template.

", + "UpdateExperimentTemplateExperimentOptionsInput$emptyTargetResolutionMode": "

The empty target resolution mode of the experiment template.

" + } + }, "ExceptionMessage": { "base": null, "refs": { @@ -328,6 +380,9 @@ "Experiment$id": "

The ID of the experiment.

", "ExperimentSummary$id": "

The ID of the experiment.

", "GetExperimentRequest$id": "

The ID of the experiment.

", + "GetExperimentTargetAccountConfigurationRequest$experimentId": "

The ID of the experiment.

", + "ListExperimentResolvedTargetsRequest$experimentId": "

The ID of the experiment.

", + "ListExperimentTargetAccountConfigurationsRequest$experimentId": "

The ID of the experiment.

", "StopExperimentRequest$id": "

The ID of the experiment.

" } }, @@ -337,6 +392,12 @@ "Experiment$logConfiguration": "

The configuration for experiment logging.

" } }, + "ExperimentOptions": { + "base": "

Describes the options for an experiment.

", + "refs": { + "Experiment$experimentOptions": "

The experiment options for the experiment.

" + } + }, "ExperimentS3LogConfiguration": { "base": "

Describes the configuration for experiment logging to Amazon S3.

", "refs": { @@ -398,6 +459,24 @@ "ExperimentTargetMap$value": null } }, + "ExperimentTargetAccountConfiguration": { + "base": "

Describes a target account configuration for an experiment.

", + "refs": { + "GetExperimentTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

" + } + }, + "ExperimentTargetAccountConfigurationList": { + "base": null, + "refs": { + "ListExperimentTargetAccountConfigurationsResponse$targetAccountConfigurations": "

The target account configurations.

" + } + }, + "ExperimentTargetAccountConfigurationSummary": { + "base": "

Provides a summary of a target account configuration.

", + "refs": { + "ExperimentTargetAccountConfigurationList$member": null + } + }, "ExperimentTargetFilter": { "base": "

Describes a filter used for the target resources in an experiment.

", "refs": { @@ -572,17 +651,28 @@ "UpdateExperimentTemplateRequest$description": "

A description for the template.

" } }, + "ExperimentTemplateExperimentOptions": { + "base": "

Describes the experiment options for an experiment template.

", + "refs": { + "ExperimentTemplate$experimentOptions": "

The experiment options for an experiment template.

" + } + }, "ExperimentTemplateId": { "base": null, "refs": { + "CreateTargetAccountConfigurationRequest$experimentTemplateId": "

The experiment template ID.

", "DeleteExperimentTemplateRequest$id": "

The ID of the experiment template.

", + "DeleteTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

", "Experiment$experimentTemplateId": "

The ID of the experiment template.

", "ExperimentSummary$experimentTemplateId": "

The ID of the experiment template.

", "ExperimentTemplate$id": "

The ID of the experiment template.

", "ExperimentTemplateSummary$id": "

The ID of the experiment template.

", "GetExperimentTemplateRequest$id": "

The ID of the experiment template.

", + "GetTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

", + "ListTargetAccountConfigurationsRequest$experimentTemplateId": "

The ID of the experiment template.

", "StartExperimentRequest$experimentTemplateId": "

The ID of the experiment template.

", - "UpdateExperimentTemplateRequest$id": "

The ID of the experiment template.

" + "UpdateExperimentTemplateRequest$id": "

The ID of the experiment template.

", + "UpdateTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

" } }, "ExperimentTemplateLogConfiguration": { @@ -742,6 +832,16 @@ "refs": { } }, + "GetExperimentTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetExperimentTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "GetExperimentTemplateRequest": { "base": null, "refs": { @@ -752,6 +852,16 @@ "refs": { } }, + "GetTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "GetTargetResourceTypeRequest": { "base": null, "refs": { @@ -785,6 +895,32 @@ "refs": { } }, + "ListExperimentResolvedTargetsMaxResults": { + "base": null, + "refs": { + "ListExperimentResolvedTargetsRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "ListExperimentResolvedTargetsRequest": { + "base": null, + "refs": { + } + }, + "ListExperimentResolvedTargetsResponse": { + "base": null, + "refs": { + } + }, + "ListExperimentTargetAccountConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListExperimentTargetAccountConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListExperimentTemplatesMaxResults": { "base": null, "refs": { @@ -827,6 +963,22 @@ "refs": { } }, + "ListTargetAccountConfigurationsMaxResults": { + "base": null, + "refs": { + "ListTargetAccountConfigurationsRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "ListTargetAccountConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListTargetAccountConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListTargetResourceTypesMaxResults": { "base": null, "refs": { @@ -857,14 +1009,32 @@ "refs": { "ListActionsRequest$nextToken": "

The token for the next page of results.

", "ListActionsResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListExperimentResolvedTargetsRequest$nextToken": "

The token for the next page of results.

", + "ListExperimentResolvedTargetsResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListExperimentTargetAccountConfigurationsRequest$nextToken": "

The token for the next page of results.

", + "ListExperimentTargetAccountConfigurationsResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "ListExperimentTemplatesRequest$nextToken": "

The token for the next page of results.

", "ListExperimentTemplatesResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "ListExperimentsRequest$nextToken": "

The token for the next page of results.

", "ListExperimentsResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListTargetAccountConfigurationsRequest$nextToken": "

The token for the next page of results.

", + "ListTargetAccountConfigurationsResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "ListTargetResourceTypesRequest$nextToken": "

The token for the next page of results.

", "ListTargetResourceTypesResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

" } }, + "ResolvedTarget": { + "base": "

Describes a resolved target.

", + "refs": { + "ResolvedTargetList$member": null + } + }, + "ResolvedTargetList": { + "base": null, + "refs": { + "ListExperimentResolvedTargetsResponse$resolvedTargets": "

The resolved targets.

" + } + }, "ResourceArn": { "base": null, "refs": { @@ -892,9 +1062,15 @@ "base": null, "refs": { "CreateExperimentTemplateRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

", + "CreateTargetAccountConfigurationRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", "Experiment$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

", + "ExperimentTargetAccountConfiguration$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", + "ExperimentTargetAccountConfigurationSummary$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", "ExperimentTemplate$roleArn": "

The Amazon Resource Name (ARN) of an IAM role.

", - "UpdateExperimentTemplateRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

" + "TargetAccountConfiguration$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", + "TargetAccountConfigurationSummary$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", + "UpdateExperimentTemplateRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

", + "UpdateTargetAccountConfigurationRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

" } }, "S3BucketName": { @@ -1004,6 +1180,84 @@ "TagMap$value": null } }, + "TargetAccountConfiguration": { + "base": "

Describes a target account configuration.

", + "refs": { + "CreateTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

", + "DeleteTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

", + "GetTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

", + "UpdateTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

" + } + }, + "TargetAccountConfigurationDescription": { + "base": null, + "refs": { + "CreateTargetAccountConfigurationRequest$description": "

The description of the target account.

", + "ExperimentTargetAccountConfiguration$description": "

The description of the target account.

", + "ExperimentTargetAccountConfigurationSummary$description": "

The description of the target account.

", + "TargetAccountConfiguration$description": "

The description of the target account.

", + "TargetAccountConfigurationSummary$description": "

The description of the target account.

", + "UpdateTargetAccountConfigurationRequest$description": "

The description of the target account.

" + } + }, + "TargetAccountConfigurationList": { + "base": null, + "refs": { + "ListTargetAccountConfigurationsResponse$targetAccountConfigurations": "

The target account configurations.

" + } + }, + "TargetAccountConfigurationSummary": { + "base": "

Provides a summary of a target account configuration.

", + "refs": { + "TargetAccountConfigurationList$member": null + } + }, + "TargetAccountConfigurationsCount": { + "base": null, + "refs": { + "Experiment$targetAccountConfigurationsCount": "

The count of target account configurations for the experiment.

", + "ExperimentTemplate$targetAccountConfigurationsCount": "

The count of target account configurations for the experiment template.

" + } + }, + "TargetAccountId": { + "base": null, + "refs": { + "CreateTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "DeleteTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "ExperimentTargetAccountConfiguration$accountId": "

The AWS account ID of the target account.

", + "ExperimentTargetAccountConfigurationSummary$accountId": "

The AWS account ID of the target account.

", + "GetExperimentTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "GetTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "TargetAccountConfiguration$accountId": "

The AWS account ID of the target account.

", + "TargetAccountConfigurationSummary$accountId": "

The AWS account ID of the target account.

", + "UpdateTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

" + } + }, + "TargetInformationKey": { + "base": null, + "refs": { + "TargetInformationMap$key": null + } + }, + "TargetInformationMap": { + "base": null, + "refs": { + "ResolvedTarget$targetInformation": "

Information about the target.

" + } + }, + "TargetInformationValue": { + "base": null, + "refs": { + "TargetInformationMap$value": null + } + }, + "TargetName": { + "base": null, + "refs": { + "ListExperimentResolvedTargetsRequest$targetName": "

The name of the target.

", + "ResolvedTarget$targetName": "

The name of the target.

" + } + }, "TargetResourceType": { "base": "

Describes a resource type.

", "refs": { @@ -1025,6 +1279,7 @@ "ExperimentTarget$resourceType": "

The resource type.

", "ExperimentTemplateTarget$resourceType": "

The resource type.

", "GetTargetResourceTypeRequest$resourceType": "

The resource type.

", + "ResolvedTarget$resourceType": "

The resource type of the target.

", "TargetResourceType$resourceType": "

The resource type.

", "TargetResourceTypeSummary$resourceType": "

The resource type.

", "UpdateExperimentTemplateTargetInput$resourceType": "

The resource type. The resource type must be supported for the specified action.

" @@ -1094,6 +1349,12 @@ "UpdateExperimentTemplateRequest$actions": "

The actions for the experiment.

" } }, + "UpdateExperimentTemplateExperimentOptionsInput": { + "base": "

Specifies an experiment option for an experiment template.

", + "refs": { + "UpdateExperimentTemplateRequest$experimentOptions": "

The experiment options for the experiment template.

" + } + }, "UpdateExperimentTemplateLogConfigurationInput": { "base": "

Specifies the configuration for experiment logging.

", "refs": { @@ -1134,6 +1395,16 @@ "UpdateExperimentTemplateRequest$targets": "

The targets for the experiment.

" } }, + "UpdateTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "ValidationException": { "base": "

The specified input is not valid, or fails to satisfy the constraints for the request.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,78 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -111,61 +62,109 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -176,61 +175,54 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -239,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -259,54 +252,48 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -317,23 +304,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], "endpoint": { "url": "https://fis.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, @@ -341,9 +324,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,133 +1,159 @@ { "testCases": [ { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://fis-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://fis-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-iso-east-1.c2s.ic.gov" + "url": "https://fis-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://fis.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.us-east-1.api.aws" + "url": "https://fis.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://fis-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.us-east-1.amazonaws.com" + "url": "https://fis-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://fis.us-east-1.api.aws" + "url": "https://fis.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-east-1.amazonaws.com" + "url": "https://fis.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-west-1.amazonaws.com" + "url": "https://fis.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-west-1.amazonaws.com" + "url": "https://fis.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-east-1.amazonaws.com" + "url": "https://fis.us-gov-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-west-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-east-1.amazonaws.com" + "url": "https://fis.us-gov-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-west-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -138,9 +164,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -151,100 +177,131 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://fis-fips.us-isob-east-1.sc2s.sgov.gov" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-isob-east-1.sc2s.sgov.gov" + "url": "https://fis-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://fis.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.cn-north-1.amazonaws.com.cn" + "url": "https://fis-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://fis.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://fis.cn-north-1.amazonaws.com.cn" + "url": "https://example.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false, + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -254,9 +311,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -266,11 +323,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fis/2020-12-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fis/2020-12-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,6 +5,11 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListExperimentResolvedTargets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListExperimentTemplates": { "input_token": "nextToken", "output_token": "nextToken", @@ -14,6 +19,11 @@ "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults" + }, + "ListTargetAccountConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" }, "ListTargetResourceTypes": { "input_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fms/2018-01-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fms/2018-01-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fms/2018-01-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fms/2018-01-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -39,7 +39,7 @@ "PutAdminAccount": "

Creates or updates an Firewall Manager administrator account. The account must be a member of the organization that was onboarded to Firewall Manager by AssociateAdminAccount. Only the organization's management account can create an Firewall Manager administrator account. When you create an Firewall Manager administrator account, the service checks to see if the account is already a delegated administrator within Organizations. If the account isn't a delegated administrator, Firewall Manager calls Organizations to delegate the account within Organizations. For more information about administrator accounts within Organizations, see Managing the Amazon Web Services Accounts in Your Organization.

", "PutAppsList": "

Creates an Firewall Manager applications list.

", "PutNotificationChannel": "

Designates the IAM role and Amazon Simple Notification Service (SNS) topic that Firewall Manager uses to record SNS logs.

To perform this action outside of the console, you must first configure the SNS topic's access policy to allow the SnsRoleName to publish SNS logs. If the SnsRoleName provided is a role other than the AWSServiceRoleForFMS service-linked role, this role must have a trust relationship configured to allow the Firewall Manager service principal fms.amazonaws.com to assume this role. For information about configuring an SNS access policy, see Service roles for Firewall Manager in the Firewall Manager Developer Guide.

", - "PutPolicy": "

Creates an Firewall Manager policy.

Firewall Manager provides the following types of policies:

  • An WAF policy (type WAFV2), which defines rule groups to run first in the corresponding WAF web ACL and rule groups to run last in the web ACL.

  • An WAF Classic policy (type WAF), which defines a rule group.

  • A Shield Advanced policy, which applies Shield Advanced protection to specified accounts and resources.

  • A security group policy, which manages VPC security groups across your Amazon Web Services organization.

  • An Network Firewall policy, which provides firewall rules to filter network traffic in specified Amazon VPCs.

  • A DNS Firewall policy, which provides Route 53 Resolver DNS Firewall rules to filter DNS queries for specified VPCs.

Each policy is specific to one of the types. If you want to enforce more than one policy type across accounts, create multiple policies. You can create multiple policies for each type.

You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more information about subscribing to Shield Advanced, see CreateSubscription.

", + "PutPolicy": "

Creates an Firewall Manager policy.

A Firewall Manager policy is specific to the individual policy type. If you want to enforce multiple policy types across accounts, you can create multiple policies. You can create more than one policy for each type.

If you add a new account to an organization that you created with Organizations, Firewall Manager automatically applies the policy to the resources in that account that are within scope of the policy.

Firewall Manager provides the following types of policies:

  • Shield Advanced policy - This policy applies Shield Advanced protection to specified accounts and resources.

  • Security Groups policy - This type of policy gives you control over security groups that are in use throughout your organization in Organizations and lets you enforce a baseline set of rules across your organization.

  • Network Firewall policy - This policy applies Network Firewall protection to your organization's VPCs.

  • DNS Firewall policy - This policy applies Amazon Route 53 Resolver DNS Firewall protections to your organization's VPCs.

  • Third-party firewall policy - This policy applies third-party firewall protections. Third-party firewalls are available by subscription through the Amazon Web Services Marketplace console at Amazon Web Services Marketplace.

    • Palo Alto Networks Cloud NGFW policy - This policy applies Palo Alto Networks Cloud Next Generation Firewall (NGFW) protections and Palo Alto Networks Cloud NGFW rulestacks to your organization's VPCs.

    • Fortigate CNF policy - This policy applies Fortigate Cloud Native Firewall (CNF) protections. Fortigate CNF is a cloud-centered solution that blocks Zero-Day threats and secures cloud infrastructures with industry-leading advanced threat prevention, smart web application firewalls (WAF), and API protection.

", "PutProtocolsList": "

Creates an Firewall Manager protocols list.

", "PutResourceSet": "

Creates the resource set.

An Firewall Manager resource set defines the resources to import into an Firewall Manager policy from another Amazon Web Services service.

", "TagResource": "

Adds one or more tags to an Amazon Web Services resource.

", @@ -262,7 +262,7 @@ "AccountScope$AllAccountsEnabled": "

A boolean value that indicates if the administrator can apply policies to all accounts within an organization. If true, the administrator can apply policies to all accounts within the organization. You can either enable management of all accounts through this operation, or you can specify a list of accounts to manage in AccountScope$Accounts. You cannot specify both.

", "AccountScope$ExcludeSpecifiedAccounts": "

A boolean value that excludes the accounts in AccountScope$Accounts from the administrator's scope. If true, the Firewall Manager administrator can apply policies to all members of the organization except for the accounts listed in AccountScope$Accounts. You can either specify a list of accounts to exclude by AccountScope$Accounts, or you can enable management of all accounts by AccountScope$AllAccountsEnabled. You cannot specify both.

", "AdminAccountSummary$DefaultAdmin": "

A boolean value that indicates if the administrator is the default administrator. If true, then this is the default administrator account. The default administrator can manage third-party firewalls and has full administrative scope. There is only one default administrator account per organization. For information about Firewall Manager default administrator accounts, see Managing Firewall Manager administrators in the Firewall Manager Developer Guide.

", - "DeletePolicyRequest$DeleteAllPolicyResources": "

If True, the request performs cleanup according to the policy type.

For WAF and Shield Advanced policies, the cleanup does the following:

  • Deletes rule groups created by Firewall Manager

  • Removes web ACLs from in-scope resources

  • Deletes web ACLs that contain no rules or rule groups

For security group policies, the cleanup does the following for each security group in the policy:

  • Disassociates the security group from in-scope resources

  • Deletes the security group if it was created through Firewall Manager and if it's no longer associated with any resources through another policy

After the cleanup, in-scope resources are no longer protected by web ACLs in this policy. Protection of out-of-scope resources remains unchanged. Scope is determined by tags that you create and accounts that you associate with the policy. When creating the policy, if you specify that only resources in specific accounts or with specific tags are in scope of the policy, those accounts and resources are handled by the policy. All others are out of scope. If you don't specify tags or accounts, all resources are in scope.

", + "DeletePolicyRequest$DeleteAllPolicyResources": "

If True, the request performs cleanup according to the policy type.

For WAF and Shield Advanced policies, the cleanup does the following:

  • Deletes rule groups created by Firewall Manager

  • Removes web ACLs from in-scope resources

  • Deletes web ACLs that contain no rules or rule groups

For security group policies, the cleanup does the following for each security group in the policy:

  • Disassociates the security group from in-scope resources

  • Deletes the security group if it was created through Firewall Manager and if it's no longer associated with any resources through another policy

For security group common policies, even if set to False, Firewall Manager deletes all security groups created by Firewall Manager that aren't associated with any other resources through another policy.

After the cleanup, in-scope resources are no longer protected by web ACLs in this policy. Protection of out-of-scope resources remains unchanged. Scope is determined by tags that you create and accounts that you associate with the policy. When creating the policy, if you specify that only resources in specific accounts or with specific tags are in scope of the policy, those accounts and resources are handled by the policy. All others are out of scope. If you don't specify tags or accounts, all resources are in scope.

", "EvaluationResult$EvaluationLimitExceeded": "

Indicates that over 100 resources are noncompliant with the Firewall Manager policy.

", "GetAppsListRequest$DefaultList": "

Specifies whether the list to retrieve is a default list owned by Firewall Manager.

", "GetProtocolsListRequest$DefaultList": "

Specifies whether the list to retrieve is a default list owned by Firewall Manager.

", @@ -949,7 +949,7 @@ "base": null, "refs": { "FMSPolicyUpdateFirewallCreationConfigAction$FirewallCreationConfig": "

A FirewallCreationConfig that you can copy into your current policy's SecurityServiceData in order to remedy scope violations.

", - "SecurityServicePolicyData$ManagedServiceData": "

Details about the service that are specific to the service type, in JSON format.

  • Example: DNS_FIREWALL

    \"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"

    Valid values for preProcessRuleGroups are between 1 and 99. Valid values for postProcessRuleGroups are between 9901 and 10000.

  • Example: IMPORT_NETWORK_FIREWALL \"{\\\"type\\\":\\\"IMPORT_NETWORK_FIREWALL\\\",\\\"awsNetworkFirewallConfig\\\":{\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-west-2:000000000000:stateless-rulegroup\\/rg1\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:drop\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:pass\\\"],\\\"networkFirewallStatelessCustomActions\\\":[],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-west-2:aws-managed:stateful-rulegroup\\/ThreatSignaturesEmergingEventsStrictOrder\\\",\\\"priority\\\":8}],\\\"networkFirewallStatefulEngineOptions\\\":{\\\"ruleOrder\\\":\\\"STRICT_ORDER\\\"},\\\"networkFirewallStatefulDefaultActions\\\":[\\\"aws:drop_strict\\\"]}}\"

    \"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"

    Valid values for preProcessRuleGroups are between 1 and 99. Valid values for postProcessRuleGroups are between 9901 and 10000.

  • Example: NETWORK_FIREWALL - Centralized deployment model

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"awsNetworkFirewallConfig\\\":{\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}},\\\"firewallDeploymentModel\\\":{\\\"centralizedFirewallDeploymentModel\\\":{\\\"centralizedFirewallOrchestrationConfig\\\":{\\\"inspectionVpcIds\\\":[{\\\"resourceId\\\":\\\"vpc-1234\\\",\\\"accountId\\\":\\\"123456789011\\\"}],\\\"firewallCreationConfig\\\":{\\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneId\\\":null,\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]}]}},\\\"allowedIPV4CidrList\\\":[]}}}}\"

    To use the centralized deployment model, you must set PolicyOption to CENTRALIZED.

  • Example: NETWORK_FIREWALL - Distributed deployment model with automatic Availability Zone configuration

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\",\\\"192.168.0.0/28\\\"],\\\"routeManagementAction\\\":\\\"OFF\\\"},\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}}\"

    With automatic Availbility Zone configuration, Firewall Manager chooses which Availability Zones to create the endpoints in. To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: NETWORK_FIREWALL - Distributed deployment model with automatic Availability Zone configuration and route management

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\",\\\"192.168.0.0/28\\\"],\\\"routeManagementAction\\\":\\\"MONITOR\\\",\\\"routeManagementTargetTypes\\\":[\\\"InternetGateway\\\"]},\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\": \\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}}\"

    To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: NETWORK_FIREWALL - Distributed deployment model with custom Availability Zone configuration

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"fragmentcustomactionname\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\", \\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}},{\\\"actionName\\\":\\\"fragmentcustomactionname\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"fragmentmetricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"firewallCreationConfig\\\":{ \\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]},{\\\"availabilityZoneName\\\":\\\"us-east-1b\\\",\\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\"]}]} },\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":null,\\\"routeManagementAction\\\":\\\"OFF\\\",\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":boolean}}\"

    With custom Availability Zone configuration, you define which specific Availability Zones to create endpoints in by configuring firewallCreationConfig. To configure the Availability Zones in firewallCreationConfig, specify either the availabilityZoneName or availabilityZoneId parameter, not both parameters.

    To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: NETWORK_FIREWALL - Distributed deployment model with custom Availability Zone configuration and route management

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"fragmentcustomactionname\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}},{\\\"actionName\\\":\\\"fragmentcustomactionname\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"fragmentmetricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"firewallCreationConfig\\\":{\\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]},{\\\"availabilityZoneName\\\":\\\"us-east-1b\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]}]}},\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":null,\\\"routeManagementAction\\\":\\\"MONITOR\\\",\\\"routeManagementTargetTypes\\\":[\\\"InternetGateway\\\"],\\\"routeManagementConfig\\\":{\\\"allowCrossAZTrafficIfNoEndpoint\\\":true}},\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":boolean}}\"

    To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: THIRD_PARTY_FIREWALL

    \"{ \"type\":\"THIRD_PARTY_FIREWALL\", \"thirdPartyFirewall\":\"PALO_ALTO_NETWORKS_CLOUD_NGFW\", \"thirdPartyFirewallConfig\":{ \"thirdPartyFirewallPolicyList\":[\"global-1\"] }, \"firewallDeploymentModel\":{ \"distributedFirewallDeploymentModel\":{ \"distributedFirewallOrchestrationConfig\":{ \"firewallCreationConfig\":{ \"endpointLocation\":{ \"availabilityZoneConfigList\":[ { \"availabilityZoneName\":\"${AvailabilityZone}\" } ] } }, \"allowedIPV4CidrList\":[ ] } } } }\"

  • Example: SECURITY_GROUPS_COMMON

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"

  • Example: SECURITY_GROUPS_COMMON - Security group tag distribution

    \"\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\"sg-000e55995d61a06bd\\\"}],\\\"revertManualSecurityGroupChanges\\\":true,\\\"exclusiveResourceSecurityGroupManagement\\\":false,\\\"applyToAllEC2InstanceENIs\\\":false,\\\"includeSharedVPC\\\":false,\\\"enableTagDistribution\\\":true}\"\"

    Firewall Manager automatically distributes tags from the primary group to the security groups created by this policy. To use security group tag distribution, you must also set revertManualSecurityGroupChanges to true, otherwise Firewall Manager won't be able to create the policy. When you enable revertManualSecurityGroupChanges, Firewall Manager identifies and reports when the security groups created by this policy become non-compliant.

    Firewall Manager won't distrubute system tags added by Amazon Web Services services into the replica security groups. System tags begin with the aws: prefix.

  • Example: Shared VPCs. Apply the preceding policy to resources in shared VPCs as well as to those in VPCs that the account owns

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"includeSharedVPC\\\":true,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"

  • Example: SECURITY_GROUPS_CONTENT_AUDIT

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_CONTENT_AUDIT\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\"sg-000e55995d61a06bd\\\"}],\\\"securityGroupAction\\\":{\\\"type\\\":\\\"ALLOW\\\"}}\"

    The security group action for content audit can be ALLOW or DENY. For ALLOW, all in-scope security group rules must be within the allowed range of the policy's security group rules. For DENY, all in-scope security group rules must not contain a value or a range that matches a rule value or range in the policy security group.

  • Example: SECURITY_GROUPS_USAGE_AUDIT

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_USAGE_AUDIT\\\",\\\"deleteUnusedSecurityGroups\\\":true,\\\"coalesceRedundantSecurityGroups\\\":true}\"

  • Specification for SHIELD_ADVANCED for Amazon CloudFront distributions

    \"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED|IGNORED|DISABLED\\\", \\\"automaticResponseAction\\\":\\\"BLOCK|COUNT\\\"}, \\\"overrideCustomerWebaclClassic\\\":true|false}\"

    For example: \"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED\\\", \\\"automaticResponseAction\\\":\\\"COUNT\\\"}}\"

    The default value for automaticResponseStatus is IGNORED. The value for automaticResponseAction is only required when automaticResponseStatus is set to ENABLED. The default value for overrideCustomerWebaclClassic is false.

    For other resource types that you can protect with a Shield Advanced policy, this ManagedServiceData configuration is an empty string.

  • Example: WAFV2 - Account takeover prevention and Bot Control managed rule groups, and rule action override

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesATPRuleSet\\\",\\\"managedRuleGroupConfigs\\\":[{\\\"awsmanagedRulesATPRuleSet\\\":{\\\"loginPath\\\":\\\"/loginpath\\\",\\\"requestInspection\\\":{\\\"payloadType\\\":\\\"FORM_ENCODED|JSON\\\",\\\"usernameField\\\":{\\\"identifier\\\":\\\"/form/username\\\"},\\\"passwordField\\\":{\\\"identifier\\\":\\\"/form/password\\\"}}}}]},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[],\\\"sampledRequestsEnabled\\\":true},{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesBotControlRuleSet\\\",\\\"managedRuleGroupConfigs\\\":[{\\\"awsmanagedRulesBotControlRuleSet\\\":{\\\"inspectionLevel\\\":\\\"TARGETED|COMMON\\\"}}]},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[],\\\"sampledRequestsEnabled\\\":true,\\\"ruleActionOverrides\\\":[{\\\"name\\\":\\\"Rule1\\\",\\\"actionToUse\\\":{\\\"allow|block|count|captcha|challenge\\\":{}}},{\\\"name\\\":\\\"Rule2\\\",\\\"actionToUse\\\":{\\\"allow|block|count|captcha|challenge\\\":{}}}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"customRequestHandling\\\":null,\\\"customResponse\\\":null,\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":null,\\\"sampledRequestsEnabledForDefaultActions\\\":true}\"

    • Fraud Control account takeover prevention (ATP) - For information about the properties available for AWSManagedRulesATPRuleSet managed rule groups, see AWSManagedRulesATPRuleSet in the WAF API Reference.

    • Bot Control - For information about AWSManagedRulesBotControlRuleSet managed rule groups, see AWSManagedRulesBotControlRuleSet in the WAF API Reference.

    • Rule action overrides - Firewall Manager supports rule action overrides only for managed rule groups. To configure a RuleActionOverrides add the Name of the rule to override, and ActionToUse, which is the new action to use for the rule. For information about using rule action override, see RuleActionOverride in the WAF API Reference.

  • Example: WAFV2 - CAPTCHA and Challenge configs

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAdminProtectionRuleSet\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[],\\\"sampledRequestsEnabled\\\":true}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"customRequestHandling\\\":null,\\\"customResponse\\\":null,\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":null,\\\"sampledRequestsEnabledForDefaultActions\\\":true,\\\"captchaConfig\\\":{\\\"immunityTimeProperty\\\":{\\\"immunityTime\\\":500}},\\\"challengeConfig\\\":{\\\"immunityTimeProperty\\\":{\\\"immunityTime\\\":800}},\\\"tokenDomains\\\":[\\\"google.com\\\",\\\"amazon.com\\\"]}\"

    If you update the policy's values for captchaConfig, challengeConfig, or tokenDomains, Firewall Manager will overwrite your local web ACLs to contain the new value(s). However, if you don't update the policy's captchaConfig, challengeConfig, or tokenDomains values, the values in your local web ACLs will remain unchanged. For information about CAPTCHA and Challenge configs, see CaptchaConfig and ChallengeConfig in the WAF API Reference.

  • Example: WAFV2 - Firewall Manager support for WAF managed rule group versioning

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":true,\\\"version\\\":\\\"Version_2.0\\\",\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesCommonRuleSet\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[{\\\"name\\\":\\\"NoUserAgent_HEADER\\\"}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[\\\"arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination\\\"],\\\"redactedFields\\\":[{\\\"redactedFieldType\\\":\\\"SingleHeader\\\",\\\"redactedFieldValue\\\":\\\"Cookies\\\"},{\\\"redactedFieldType\\\":\\\"Method\\\"}]}}\"

    To use a specific version of a WAF managed rule group in your Firewall Manager policy, you must set versionEnabled to true, and set version to the version you'd like to use. If you don't set versionEnabled to true, or if you omit versionEnabled, then Firewall Manager uses the default version of the WAF managed rule group.

  • Example: WAFV2 - Logging configurations

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null, \\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\": {\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\", \\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAdminProtectionRuleSet\\\"} ,\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[], \\\"sampledRequestsEnabled\\\":true}],\\\"postProcessRuleGroups\\\":[], \\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"customRequestHandling\\\" :null,\\\"customResponse\\\":null,\\\"overrideCustomerWebACLAssociation\\\" :false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\": [\\\"arn:aws:s3:::aws-waf-logs-example-bucket\\\"] ,\\\"redactedFields\\\":[],\\\"loggingFilterConfigs\\\":{\\\"defaultBehavior\\\":\\\"KEEP\\\", \\\"filters\\\":[{\\\"behavior\\\":\\\"KEEP\\\",\\\"requirement\\\":\\\"MEETS_ALL\\\", \\\"conditions\\\":[{\\\"actionCondition\\\":\\\"CAPTCHA\\\"},{\\\"actionCondition\\\": \\\"CHALLENGE\\\"}, {\\\"actionCondition\\\":\\\"EXCLUDED_AS_COUNT\\\"}]}]}},\\\"sampledRequestsEnabledForDefaultActions\\\":true}\"

    Firewall Manager supports Amazon Kinesis Data Firehose and Amazon S3 as the logDestinationConfigs in your loggingConfiguration. For information about WAF logging configurations, see LoggingConfiguration in the WAF API Reference

    In the loggingConfiguration, you can specify one logDestinationConfigs. Optionally provide as many as 20 redactedFields. The RedactedFieldType must be one of URI, QUERY_STRING, HEADER, or METHOD.

  • Example: WAF Classic

    \"{\\\"type\\\": \\\"WAF\\\", \\\"ruleGroups\\\": [{\\\"id\\\":\\\"12345678-1bcd-9012-efga-0987654321ab\\\", \\\"overrideAction\\\" : {\\\"type\\\": \\\"COUNT\\\"}}], \\\"defaultAction\\\": {\\\"type\\\": \\\"BLOCK\\\"}}\"

" + "SecurityServicePolicyData$ManagedServiceData": "

Details about the service that are specific to the service type, in JSON format.

  • Example: DNS_FIREWALL

    \"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"

    Valid values for preProcessRuleGroups are between 1 and 99. Valid values for postProcessRuleGroups are between 9901 and 10000.

  • Example: IMPORT_NETWORK_FIREWALL

    \"{\\\"type\\\":\\\"IMPORT_NETWORK_FIREWALL\\\",\\\"awsNetworkFirewallConfig\\\":{\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-west-2:000000000000:stateless-rulegroup\\/rg1\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:drop\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:pass\\\"],\\\"networkFirewallStatelessCustomActions\\\":[],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-west-2:aws-managed:stateful-rulegroup\\/ThreatSignaturesEmergingEventsStrictOrder\\\",\\\"priority\\\":8}],\\\"networkFirewallStatefulEngineOptions\\\":{\\\"ruleOrder\\\":\\\"STRICT_ORDER\\\"},\\\"networkFirewallStatefulDefaultActions\\\":[\\\"aws:drop_strict\\\"]}}\"

    \"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"

    Valid values for preProcessRuleGroups are between 1 and 99. Valid values for postProcessRuleGroups are between 9901 and 10000.

  • Example: NETWORK_FIREWALL - Centralized deployment model

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"awsNetworkFirewallConfig\\\":{\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}},\\\"firewallDeploymentModel\\\":{\\\"centralizedFirewallDeploymentModel\\\":{\\\"centralizedFirewallOrchestrationConfig\\\":{\\\"inspectionVpcIds\\\":[{\\\"resourceId\\\":\\\"vpc-1234\\\",\\\"accountId\\\":\\\"123456789011\\\"}],\\\"firewallCreationConfig\\\":{\\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneId\\\":null,\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]}]}},\\\"allowedIPV4CidrList\\\":[]}}}}\"

    To use the centralized deployment model, you must set PolicyOption to CENTRALIZED.

  • Example: NETWORK_FIREWALL - Distributed deployment model with automatic Availability Zone configuration

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\",\\\"192.168.0.0/28\\\"],\\\"routeManagementAction\\\":\\\"OFF\\\"},\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}}\"

    With automatic Availbility Zone configuration, Firewall Manager chooses which Availability Zones to create the endpoints in. To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: NETWORK_FIREWALL - Distributed deployment model with automatic Availability Zone configuration and route management

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\",\\\"192.168.0.0/28\\\"],\\\"routeManagementAction\\\":\\\"MONITOR\\\",\\\"routeManagementTargetTypes\\\":[\\\"InternetGateway\\\"]},\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\": \\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}}\"

    To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: NETWORK_FIREWALL - Distributed deployment model with custom Availability Zone configuration

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"fragmentcustomactionname\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\", \\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}},{\\\"actionName\\\":\\\"fragmentcustomactionname\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"fragmentmetricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"firewallCreationConfig\\\":{ \\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]},{\\\"availabilityZoneName\\\":\\\"us-east-1b\\\",\\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\"]}]} },\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":null,\\\"routeManagementAction\\\":\\\"OFF\\\",\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":boolean}}\"

    With custom Availability Zone configuration, you define which specific Availability Zones to create endpoints in by configuring firewallCreationConfig. To configure the Availability Zones in firewallCreationConfig, specify either the availabilityZoneName or availabilityZoneId parameter, not both parameters.

    To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: NETWORK_FIREWALL - Distributed deployment model with custom Availability Zone configuration and route management

    \"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"fragmentcustomactionname\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}},{\\\"actionName\\\":\\\"fragmentcustomactionname\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"fragmentmetricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallOrchestrationConfig\\\":{\\\"firewallCreationConfig\\\":{\\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]},{\\\"availabilityZoneName\\\":\\\"us-east-1b\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]}]}},\\\"singleFirewallEndpointPerVPC\\\":false,\\\"allowedIPV4CidrList\\\":null,\\\"routeManagementAction\\\":\\\"MONITOR\\\",\\\"routeManagementTargetTypes\\\":[\\\"InternetGateway\\\"],\\\"routeManagementConfig\\\":{\\\"allowCrossAZTrafficIfNoEndpoint\\\":true}},\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":boolean}}\"

    To use the distributed deployment model, you must set PolicyOption to NULL.

  • Example: SECURITY_GROUPS_COMMON

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"

  • Example: SECURITY_GROUPS_COMMON - Security group tag distribution

    \"\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\"sg-000e55995d61a06bd\\\"}],\\\"revertManualSecurityGroupChanges\\\":true,\\\"exclusiveResourceSecurityGroupManagement\\\":false,\\\"applyToAllEC2InstanceENIs\\\":false,\\\"includeSharedVPC\\\":false,\\\"enableTagDistribution\\\":true}\"\"

    Firewall Manager automatically distributes tags from the primary group to the security groups created by this policy. To use security group tag distribution, you must also set revertManualSecurityGroupChanges to true, otherwise Firewall Manager won't be able to create the policy. When you enable revertManualSecurityGroupChanges, Firewall Manager identifies and reports when the security groups created by this policy become non-compliant.

    Firewall Manager won't distrubute system tags added by Amazon Web Services services into the replica security groups. System tags begin with the aws: prefix.

  • Example: Shared VPCs. Apply the preceding policy to resources in shared VPCs as well as to those in VPCs that the account owns

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"includeSharedVPC\\\":true,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"

  • Example: SECURITY_GROUPS_CONTENT_AUDIT

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_CONTENT_AUDIT\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\"sg-000e55995d61a06bd\\\"}],\\\"securityGroupAction\\\":{\\\"type\\\":\\\"ALLOW\\\"}}\"

    The security group action for content audit can be ALLOW or DENY. For ALLOW, all in-scope security group rules must be within the allowed range of the policy's security group rules. For DENY, all in-scope security group rules must not contain a value or a range that matches a rule value or range in the policy security group.

  • Example: SECURITY_GROUPS_USAGE_AUDIT

    \"{\\\"type\\\":\\\"SECURITY_GROUPS_USAGE_AUDIT\\\",\\\"deleteUnusedSecurityGroups\\\":true,\\\"coalesceRedundantSecurityGroups\\\":true}\"

  • Example: SHIELD_ADVANCED with web ACL management

    \"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"optimizeUnassociatedWebACL\\\":true}\"

    If you set optimizeUnassociatedWebACL to true, Firewall Manager creates web ACLs in accounts within the policy scope if the web ACLs will be used by at least one resource. Firewall Manager creates web ACLs in the accounts within policy scope only if the web ACLs will be used by at least one resource. If at any time an account comes into policy scope, Firewall Manager automatically creates a web ACL in the account if at least one resource will use the web ACL.

    Upon enablement, Firewall Manager performs a one-time cleanup of unused web ACLs in your account. The cleanup process can take several hours. If a resource leaves policy scope after Firewall Manager creates a web ACL, Firewall Manager doesn't disassociate the resource from the web ACL. If you want Firewall Manager to clean up the web ACL, you must first manually disassociate the resources from the web ACL, and then enable the manage unused web ACLs option in your policy.

    If you set optimizeUnassociatedWebACL to false, and Firewall Manager automatically creates an empty web ACL in each account that's within policy scope.

  • Specification for SHIELD_ADVANCED for Amazon CloudFront distributions

    \"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED|IGNORED|DISABLED\\\", \\\"automaticResponseAction\\\":\\\"BLOCK|COUNT\\\"}, \\\"overrideCustomerWebaclClassic\\\":true|false, \\\"optimizeUnassociatedWebACL\\\":true|false}\"

    For example: \"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED\\\", \\\"automaticResponseAction\\\":\\\"COUNT\\\"}}\"

    The default value for automaticResponseStatus is IGNORED. The value for automaticResponseAction is only required when automaticResponseStatus is set to ENABLED. The default value for overrideCustomerWebaclClassic is false.

    For other resource types that you can protect with a Shield Advanced policy, this ManagedServiceData configuration is an empty string.

  • Example: THIRD_PARTY_FIREWALL

    Replace THIRD_PARTY_FIREWALL_NAME with the name of the third-party firewall.

    \"{ \"type\":\"THIRD_PARTY_FIREWALL\", \"thirdPartyFirewall\":\"THIRD_PARTY_FIREWALL_NAME\", \"thirdPartyFirewallConfig\":{ \"thirdPartyFirewallPolicyList\":[\"global-1\"] }, \"firewallDeploymentModel\":{ \"distributedFirewallDeploymentModel\":{ \"distributedFirewallOrchestrationConfig\":{ \"firewallCreationConfig\":{ \"endpointLocation\":{ \"availabilityZoneConfigList\":[ { \"availabilityZoneName\":\"${AvailabilityZone}\" } ] } }, \"allowedIPV4CidrList\":[ ] } } } }\"

  • Example: WAFV2 - Account takeover prevention, Bot Control managed rule groups, optimize unassociated web ACL, and rule action override

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesATPRuleSet\\\",\\\"managedRuleGroupConfigs\\\":[{\\\"awsmanagedRulesATPRuleSet\\\":{\\\"loginPath\\\":\\\"/loginpath\\\",\\\"requestInspection\\\":{\\\"payloadType\\\":\\\"FORM_ENCODED|JSON\\\",\\\"usernameField\\\":{\\\"identifier\\\":\\\"/form/username\\\"},\\\"passwordField\\\":{\\\"identifier\\\":\\\"/form/password\\\"}}}}]},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[],\\\"sampledRequestsEnabled\\\":true},{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesBotControlRuleSet\\\",\\\"managedRuleGroupConfigs\\\":[{\\\"awsmanagedRulesBotControlRuleSet\\\":{\\\"inspectionLevel\\\":\\\"TARGETED|COMMON\\\"}}]},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[],\\\"sampledRequestsEnabled\\\":true,\\\"ruleActionOverrides\\\":[{\\\"name\\\":\\\"Rule1\\\",\\\"actionToUse\\\":{\\\"allow|block|count|captcha|challenge\\\":{}}},{\\\"name\\\":\\\"Rule2\\\",\\\"actionToUse\\\":{\\\"allow|block|count|captcha|challenge\\\":{}}}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"customRequestHandling\\\":null,\\\"customResponse\\\":null,\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":null,\\\"sampledRequestsEnabledForDefaultActions\\\":true,\\\"optimizeUnassociatedWebACL\\\":true}\"

    • Bot Control - For information about AWSManagedRulesBotControlRuleSet managed rule groups, see AWSManagedRulesBotControlRuleSet in the WAF API Reference.

    • Fraud Control account takeover prevention (ATP) - For information about the properties available for AWSManagedRulesATPRuleSet managed rule groups, see AWSManagedRulesATPRuleSet in the WAF API Reference.

    • Optimize unassociated web ACL - If you set optimizeUnassociatedWebACL to true, Firewall Manager creates web ACLs in accounts within the policy scope if the web ACLs will be used by at least one resource. Firewall Manager creates web ACLs in the accounts within policy scope only if the web ACLs will be used by at least one resource. If at any time an account comes into policy scope, Firewall Manager automatically creates a web ACL in the account if at least one resource will use the web ACL.

      Upon enablement, Firewall Manager performs a one-time cleanup of unused web ACLs in your account. The cleanup process can take several hours. If a resource leaves policy scope after Firewall Manager creates a web ACL, Firewall Manager disassociates the resource from the web ACL, but won't clean up the unused web ACL. Firewall Manager only cleans up unused web ACLs when you first enable management of unused web ACLs in a policy.

      If you set optimizeUnassociatedWebACL to false Firewall Manager doesn't manage unused web ACLs, and Firewall Manager automatically creates an empty web ACL in each account that's within policy scope.

    • Rule action overrides - Firewall Manager supports rule action overrides only for managed rule groups. To configure a RuleActionOverrides add the Name of the rule to override, and ActionToUse, which is the new action to use for the rule. For information about using rule action override, see RuleActionOverride in the WAF API Reference.

  • Example: WAFV2 - CAPTCHA and Challenge configs

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAdminProtectionRuleSet\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[],\\\"sampledRequestsEnabled\\\":true}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"customRequestHandling\\\":null,\\\"customResponse\\\":null,\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":null,\\\"sampledRequestsEnabledForDefaultActions\\\":true,\\\"captchaConfig\\\":{\\\"immunityTimeProperty\\\":{\\\"immunityTime\\\":500}},\\\"challengeConfig\\\":{\\\"immunityTimeProperty\\\":{\\\"immunityTime\\\":800}},\\\"tokenDomains\\\":[\\\"google.com\\\",\\\"amazon.com\\\"],\\\"associationConfig\\\":{\\\"requestBody\\\":{\\\"CLOUDFRONT\\\":{\\\"defaultSizeInspectionLimit\\\":\\\"KB_16\\\"}}}}\"

    • CAPTCHA and Challenge configs - If you update the policy's values for associationConfig, captchaConfig, challengeConfig, or tokenDomains, Firewall Manager will overwrite your local web ACLs to contain the new value(s). However, if you don't update the policy's associationConfig, captchaConfig, challengeConfig, or tokenDomains values, the values in your local web ACLs will remain unchanged. For information about association configs, see AssociationConfig. For information about CAPTCHA and Challenge configs, see CaptchaConfig and ChallengeConfig in the WAF API Reference.

    • defaultSizeInspectionLimit - Specifies the maximum size of the web request body component that an associated Amazon CloudFront distribution should send to WAF for inspection. For more information, see DefaultSizeInspectionLimit in the WAF API Reference.

  • Example: WAFV2 - Firewall Manager support for WAF managed rule group versioning

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":true,\\\"version\\\":\\\"Version_2.0\\\",\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesCommonRuleSet\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[{\\\"name\\\":\\\"NoUserAgent_HEADER\\\"}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[\\\"arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination\\\"],\\\"redactedFields\\\":[{\\\"redactedFieldType\\\":\\\"SingleHeader\\\",\\\"redactedFieldValue\\\":\\\"Cookies\\\"},{\\\"redactedFieldType\\\":\\\"Method\\\"}]}}\"

    To use a specific version of a WAF managed rule group in your Firewall Manager policy, you must set versionEnabled to true, and set version to the version you'd like to use. If you don't set versionEnabled to true, or if you omit versionEnabled, then Firewall Manager uses the default version of the WAF managed rule group.

  • Example: WAFV2 - Logging configurations

    \"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null, \\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\": {\\\"versionEnabled\\\":null,\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\", \\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAdminProtectionRuleSet\\\"} ,\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[], \\\"sampledRequestsEnabled\\\":true}],\\\"postProcessRuleGroups\\\":[], \\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"customRequestHandling\\\" :null,\\\"customResponse\\\":null,\\\"overrideCustomerWebACLAssociation\\\" :false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\": [\\\"arn:aws:s3:::aws-waf-logs-example-bucket\\\"] ,\\\"redactedFields\\\":[],\\\"loggingFilterConfigs\\\":{\\\"defaultBehavior\\\":\\\"KEEP\\\", \\\"filters\\\":[{\\\"behavior\\\":\\\"KEEP\\\",\\\"requirement\\\":\\\"MEETS_ALL\\\", \\\"conditions\\\":[{\\\"actionCondition\\\":\\\"CAPTCHA\\\"},{\\\"actionCondition\\\": \\\"CHALLENGE\\\"}, {\\\"actionCondition\\\":\\\"EXCLUDED_AS_COUNT\\\"}]}]}},\\\"sampledRequestsEnabledForDefaultActions\\\":true}\"

    Firewall Manager supports Amazon Kinesis Data Firehose and Amazon S3 as the logDestinationConfigs in your loggingConfiguration. For information about WAF logging configurations, see LoggingConfiguration in the WAF API Reference

    In the loggingConfiguration, you can specify one logDestinationConfigs. Optionally provide as many as 20 redactedFields. The RedactedFieldType must be one of URI, QUERY_STRING, HEADER, or METHOD.

  • Example: WAF Classic

    \"{\\\"type\\\": \\\"WAF\\\", \\\"ruleGroups\\\": [{\\\"id\\\":\\\"12345678-1bcd-9012-efga-0987654321ab\\\", \\\"overrideAction\\\" : {\\\"type\\\": \\\"COUNT\\\"}}], \\\"defaultAction\\\": {\\\"type\\\": \\\"BLOCK\\\"}}\"

" } }, "MarketplaceSubscriptionOnboardingStatus": { @@ -1207,7 +1207,7 @@ "GetComplianceDetailRequest$PolicyId": "

The ID of the policy that you want to get the details for. PolicyId is returned by PutPolicy and by ListPolicies.

", "GetPolicyRequest$PolicyId": "

The ID of the Firewall Manager policy that you want the details for.

", "GetProtectionStatusRequest$PolicyId": "

The ID of the policy for which you want to get the attack information.

", - "GetViolationDetailsRequest$PolicyId": "

The ID of the Firewall Manager policy that you want the details for. This currently only supports security group content audit policies.

", + "GetViolationDetailsRequest$PolicyId": "

The ID of the Firewall Manager policy that you want the details for. You can get violation details for the following policy types:

  • DNS Firewall

  • Imported Network Firewall

  • Network Firewall

  • Security group content audit

  • Third-party firewall

", "ListComplianceStatusRequest$PolicyId": "

The ID of the Firewall Manager policy that you want the details for.

", "Policy$PolicyId": "

The ID of the Firewall Manager policy.

", "PolicyComplianceDetail$PolicyId": "

The ID of the Firewall Manager policy.

", @@ -1621,7 +1621,7 @@ "DiscoveredResource$Type": "

The type of the discovered resource.

", "GetViolationDetailsRequest$ResourceType": "

The resource type. This is in the format shown in the Amazon Web Services Resource Types Reference. Supported resource types are: AWS::EC2::Instance, AWS::EC2::NetworkInterface, AWS::EC2::SecurityGroup, AWS::NetworkFirewall::FirewallPolicy, and AWS::EC2::Subnet.

", "ListDiscoveredResourcesRequest$ResourceType": "

The type of resources to discover.

", - "Policy$ResourceType": "

The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon Web Services Resource Types Reference. To apply this policy to multiple resource types, specify a resource type of ResourceTypeList and then specify the resource types in a ResourceTypeList.

For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::ElasticLoadBalancing::LoadBalancer, AWS::EC2::EIP, and AWS::CloudFront::Distribution. For a security group common policy, valid values are AWS::EC2::NetworkInterface and AWS::EC2::Instance. For a security group content audit policy, valid values are AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, and AWS::EC2::Instance. For a security group usage audit policy, the value is AWS::EC2::SecurityGroup. For an Network Firewall policy or DNS Firewall policy, the value is AWS::EC2::VPC.

", + "Policy$ResourceType": "

The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon Web Services Resource Types Reference. To apply this policy to multiple resource types, specify a resource type of ResourceTypeList and then specify the resource types in a ResourceTypeList.

The following are valid resource types for each Firewall Manager policy type:

  • Amazon Web Services WAF Classic - AWS::ApiGateway::Stage, AWS::CloudFront::Distribution, and AWS::ElasticLoadBalancingV2::LoadBalancer.

  • WAF - AWS::ApiGateway::Stage, AWS::ElasticLoadBalancingV2::LoadBalancer, and AWS::CloudFront::Distribution.

  • DNS Firewall, Network Firewall, and third-party firewall - AWS::EC2::VPC.

  • Shield Advanced - AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::ElasticLoadBalancing::LoadBalancer, AWS::EC2::EIP, and AWS::CloudFront::Distribution.

  • Security group content audit - AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, and AWS::EC2::Instance.

  • Security group usage audit - AWS::EC2::SecurityGroup.

", "PolicySummary$ResourceType": "

The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon Web Services Resource Types Reference. For WAF and Shield Advanced, examples include AWS::ElasticLoadBalancingV2::LoadBalancer and AWS::CloudFront::Distribution. For a security group common policy, valid values are AWS::EC2::NetworkInterface and AWS::EC2::Instance. For a security group content audit policy, valid values are AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, and AWS::EC2::Instance. For a security group usage audit policy, the value is AWS::EC2::SecurityGroup. For an Network Firewall policy or DNS Firewall policy, the value is AWS::EC2::VPC.

", "ResourceTypeList$member": null, "ViolationDetail$ResourceType": "

The resource type that the violation details were requested for.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fms/2018-01-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fms/2018-01-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fms/2018-01-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fms/2018-01-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://fms-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://fms-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://fms-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://fms-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://fms.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://fms.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://fms.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://fms.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,175 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-09-07", + "endpointPrefix":"freetier", + "jsonVersion":"1.0", + "protocol":"json", + "serviceFullName":"AWS Free Tier", + "serviceId":"FreeTier", + "signatureVersion":"v4", + "signingName":"freetier", + "targetPrefix":"AWSFreeTierService", + "uid":"freetier-2023-09-07" + }, + "operations":{ + "GetFreeTierUsage":{ + "name":"GetFreeTierUsage", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetFreeTierUsageRequest"}, + "output":{"shape":"GetFreeTierUsageResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + } + }, + "shapes":{ + "Dimension":{ + "type":"string", + "enum":[ + "SERVICE", + "OPERATION", + "USAGE_TYPE", + "REGION", + "FREE_TIER_TYPE", + "DESCRIPTION", + "USAGE_PERCENTAGE" + ] + }, + "DimensionValues":{ + "type":"structure", + "required":[ + "Key", + "MatchOptions", + "Values" + ], + "members":{ + "Key":{"shape":"Dimension"}, + "MatchOptions":{"shape":"MatchOptions"}, + "Values":{"shape":"Values"} + } + }, + "Expression":{ + "type":"structure", + "members":{ + "And":{"shape":"Expressions"}, + "Dimensions":{"shape":"DimensionValues"}, + "Not":{"shape":"Expression"}, + "Or":{"shape":"Expressions"} + } + }, + "Expressions":{ + "type":"list", + "member":{"shape":"Expression"} + }, + "FreeTierUsage":{ + "type":"structure", + "members":{ + "actualUsageAmount":{"shape":"GenericDouble"}, + "description":{"shape":"GenericString"}, + "forecastedUsageAmount":{"shape":"GenericDouble"}, + "freeTierType":{"shape":"GenericString"}, + "limit":{"shape":"GenericDouble"}, + "operation":{"shape":"GenericString"}, + "region":{"shape":"GenericString"}, + "service":{"shape":"GenericString"}, + "unit":{"shape":"GenericString"}, + "usageType":{"shape":"GenericString"} + } + }, + "FreeTierUsages":{ + "type":"list", + "member":{"shape":"FreeTierUsage"} + }, + "GenericDouble":{"type":"double"}, + "GenericString":{ + "type":"string", + "max":1024, + "min":0, + "pattern":"^[\\S\\s]*$" + }, + "GetFreeTierUsageRequest":{ + "type":"structure", + "members":{ + "filter":{"shape":"Expression"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextPageToken"} + } + }, + "GetFreeTierUsageResponse":{ + "type":"structure", + "required":["freeTierUsages"], + "members":{ + "freeTierUsages":{"shape":"FreeTierUsages"}, + "nextToken":{"shape":"NextPageToken"} + } + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"GenericString"} + }, + "exception":true, + "fault":true + }, + "MatchOption":{ + "type":"string", + "enum":[ + "EQUALS", + "STARTS_WITH", + "ENDS_WITH", + "CONTAINS", + "GREATER_THAN_OR_EQUAL" + ] + }, + "MatchOptions":{ + "type":"list", + "member":{"shape":"MatchOption"} + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "NextPageToken":{ + "type":"string", + "max":8192, + "min":1, + "pattern":"^[\\S\\s]*$" + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"GenericString"} + }, + "exception":true + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"GenericString"} + }, + "exception":true + }, + "Value":{ + "type":"string", + "max":20, + "min":1, + "pattern":"^[ a-zA-Z0-9\\-\\:\\.\\_\\/\\,\\$\\(\\)]*$" + }, + "Values":{ + "type":"list", + "member":{"shape":"Value"}, + "min":1 + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,133 @@ +{ + "version": "2.0", + "service": "

You can use the Amazon Web Services Free Tier API to query programmatically your Free Tier usage data.

Free Tier tracks your monthly usage data for all free tier offers that are associated with your Amazon Web Services account. You can use the Free Tier API to filter and show only the data that you want.

Service endpoint

The Free Tier API provides the following endpoint:

  • https://freetier.us-east-1.api.aws

For more information, see Using the Amazon Web Services Free Tier in the Billing User Guide.

", + "operations": { + "GetFreeTierUsage": "

Returns a list of all Free Tier usage objects that match your filters.

" + }, + "shapes": { + "Dimension": { + "base": null, + "refs": { + "DimensionValues$Key": "

The name of the dimension that you want to filter on.

" + } + }, + "DimensionValues": { + "base": "

Contains the specifications for the filters to use for your request.

", + "refs": { + "Expression$Dimensions": "

The specific dimension, values, and match type to filter objects with.

" + } + }, + "Expression": { + "base": "

Use Expression to filter in the GetFreeTierUsage API operation.

You can use the following patterns:

  • Simple dimension values (Dimensions root operator)

  • Complex expressions with logical operators (AND, NOT, and OR root operators).

For simple dimension values, you can set the dimension name, values, and match type for the filters that you plan to use.

Example for simple dimension values

You can filter to match exactly for REGION==us-east-1 OR REGION==us-west-1.

The corresponding Expression appears like the following: { \"Dimensions\": { \"Key\": \"REGION\", \"Values\": [ \"us-east-1\", \"us-west-1\" ], \"MatchOptions\": [\"EQUALS\"] } }

As shown in the previous example, lists of dimension values are combined with OR when you apply the filter.

For complex expressions with logical operators, you can have nested expressions to use the logical operators and specify advanced filtering.

Example for complex expressions with logical operators

You can filter by ((REGION == us-east-1 OR REGION == us-west-1) OR (SERVICE CONTAINS AWSLambda)) AND (USAGE_TYPE !CONTAINS DataTransfer).

The corresponding Expression appears like the following: { \"And\": [ {\"Or\": [ {\"Dimensions\": { \"Key\": \"REGION\", \"Values\": [ \"us-east-1\", \"us-west-1\" ], \"MatchOptions\": [\"EQUALS\"] }}, {\"Dimensions\": { \"Key\": \"SERVICE\", \"Values\": [\"AWSLambda\"], \"MatchOptions\": [\"CONTAINS\"] } } ]}, {\"Not\": {\"Dimensions\": { \"Key\": \"USAGE_TYPE\", \"Values\": [\"DataTransfer\"], \"MatchOptions\": [\"CONTAINS\"] }}} ] }

In the following Contents, you must specify exactly one of the following root operators.

", + "refs": { + "Expression$Not": "

Return results that don’t match the Expression that you specified.

", + "Expressions$member": null, + "GetFreeTierUsageRequest$filter": "

An expression that specifies the conditions that you want each FreeTierUsage object to meet.

" + } + }, + "Expressions": { + "base": null, + "refs": { + "Expression$And": "

Return results that match all Expressions that you specified in the array.

", + "Expression$Or": "

Return results that match any of the Expressions that you specified. in the array.

" + } + }, + "FreeTierUsage": { + "base": "

Consists of a Amazon Web Services Free Tier offer’s metadata and your data usage for the offer.

", + "refs": { + "FreeTierUsages$member": null + } + }, + "FreeTierUsages": { + "base": null, + "refs": { + "GetFreeTierUsageResponse$freeTierUsages": "

The list of Free Tier usage objects that meet your filter expression.

" + } + }, + "GenericDouble": { + "base": null, + "refs": { + "FreeTierUsage$actualUsageAmount": "

Describes the actual usage accrued month-to-day (MTD) that you've used so far.

", + "FreeTierUsage$forecastedUsageAmount": "

Describes the forecasted usage by the month that you're expected to use.

", + "FreeTierUsage$limit": "

Describes the maximum usage allowed in Free Tier.

" + } + }, + "GenericString": { + "base": null, + "refs": { + "FreeTierUsage$description": "

The description of the Free Tier offer.

", + "FreeTierUsage$freeTierType": "

Describes the type of the Free Tier offer. For example, the offer can be \"12 Months Free\", \"Always Free\", and \"Free Trial\".

", + "FreeTierUsage$operation": "

Describes usageType more granularly with the specific Amazon Web Service API operation. For example, this can be the RunInstances API operation for Amazon Elastic Compute Cloud.

", + "FreeTierUsage$region": "

Describes the Amazon Web Services Region for which this offer is applicable

", + "FreeTierUsage$service": "

The name of the Amazon Web Service providing the Free Tier offer. For example, this can be Amazon Elastic Compute Cloud.

", + "FreeTierUsage$unit": "

Describes the unit of the usageType, such as Hrs.

", + "FreeTierUsage$usageType": "

Describes the usage details of the offer. For example, this might be Global-BoxUsage:freetrial.

", + "InternalServerException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "GetFreeTierUsageRequest": { + "base": null, + "refs": { + } + }, + "GetFreeTierUsageResponse": { + "base": null, + "refs": { + } + }, + "InternalServerException": { + "base": "

An unexpected error occurred during the processing of your request.

", + "refs": { + } + }, + "MatchOption": { + "base": null, + "refs": { + "MatchOptions$member": null + } + }, + "MatchOptions": { + "base": null, + "refs": { + "DimensionValues$MatchOptions": "

The match options that you can use to filter your results. You can specify only one of these values in the array.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "GetFreeTierUsageRequest$maxResults": "

The maximum number of results to return in the response. MaxResults means that there can be up to the specified number of values, but there might be fewer results based on your filters.

" + } + }, + "NextPageToken": { + "base": null, + "refs": { + "GetFreeTierUsageRequest$nextToken": "

The pagination token that indicates the next set of results to retrieve.

", + "GetFreeTierUsageResponse$nextToken": "

The pagination token that indicates the next set of results to retrieve.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Service.

", + "refs": { + } + }, + "Value": { + "base": null, + "refs": { + "Values$member": null + } + }, + "Values": { + "base": null, + "refs": { + "DimensionValues$Values": "

The metadata values you can specify to filter upon, so that the results all match at least one of the specified values.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,392 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://freetier-fips.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://freetier.us-east-1.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "freetier", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://freetier-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-cn-global" + ] + } + ], + "endpoint": { + "url": "https://freetier.cn-northwest-1.api.amazonwebservices.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "freetier", + "signingRegion": "cn-northwest-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://freetier.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://freetier-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-cn-global" + ] + } + ], + "endpoint": { + "url": "https://freetier.cn-northwest-1.api.amazonwebservices.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "freetier", + "signingRegion": "cn-northwest-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://freetier.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,170 @@ +{ + "testCases": [ + { + "documentation": "For region aws-global with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "freetier", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://freetier.us-east-1.api.aws" + } + }, + "params": { + "Region": "aws-global", + "UseFIPS": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://freetier-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "freetier", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://freetier.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region aws-cn-global with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "freetier", + "signingRegion": "cn-northwest-1" + } + ] + }, + "url": "https://freetier.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "aws-cn-global", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://freetier-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://freetier.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://freetier-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://freetier.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/freetier/2023-09-07/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/freetier/2023-09-07/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,10 @@ +{ + "pagination": { + "GetFreeTierUsage": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "freeTierUsages" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fsx/2018-03-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fsx/2018-03-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fsx/2018-03-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fsx/2018-03-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -67,6 +67,22 @@ ], "idempotent":true }, + "CopySnapshotAndUpdateVolume":{ + "name":"CopySnapshotAndUpdateVolume", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CopySnapshotAndUpdateVolumeRequest"}, + "output":{"shape":"CopySnapshotAndUpdateVolumeResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"ServiceLimitExceeded"} + ], + "idempotent":true + }, "CreateBackup":{ "name":"CreateBackup", "http":{ @@ -463,6 +479,19 @@ {"shape":"InternalServerError"} ] }, + "DescribeSharedVpcConfiguration":{ + "name":"DescribeSharedVpcConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeSharedVpcConfigurationRequest"}, + "output":{"shape":"DescribeSharedVpcConfigurationResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"InternalServerError"} + ] + }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ @@ -567,6 +596,20 @@ ], "idempotent":true }, + "StartMisconfiguredStateRecovery":{ + "name":"StartMisconfiguredStateRecovery", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartMisconfiguredStateRecoveryRequest"}, + "output":{"shape":"StartMisconfiguredStateRecoveryResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"FileSystemNotFound"}, + {"shape":"InternalServerError"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -656,6 +699,20 @@ {"shape":"ServiceLimitExceeded"} ] }, + "UpdateSharedVpcConfiguration":{ + "name":"UpdateSharedVpcConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSharedVpcConfigurationRequest"}, + "output":{"shape":"UpdateSharedVpcConfigurationResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"} + ] + }, "UpdateSnapshot":{ "name":"UpdateSnapshot", "http":{ @@ -761,7 +818,9 @@ "TargetFileSystemValues":{"shape":"FileSystem"}, "FailureDetails":{"shape":"AdministrativeActionFailureDetails"}, "TargetVolumeValues":{"shape":"Volume"}, - "TargetSnapshotValues":{"shape":"Snapshot"} + "TargetSnapshotValues":{"shape":"Snapshot"}, + "TotalTransferBytes":{"shape":"TotalTransferBytes"}, + "RemainingTransferBytes":{"shape":"RemainingTransferBytes"} } }, "AdministrativeActionFailureDetails":{ @@ -783,7 +842,10 @@ "VOLUME_RESTORE", "THROUGHPUT_OPTIMIZATION", "IOPS_OPTIMIZATION", - "STORAGE_TYPE_OPTIMIZATION" + "STORAGE_TYPE_OPTIMIZATION", + "MISCONFIGURED_STATE_RECOVERY", + "VOLUME_UPDATE_WITH_SNAPSHOT", + "VOLUME_INITIALIZE_WITH_SNAPSHOT" ] }, "AdministrativeActions":{ @@ -791,6 +853,29 @@ "member":{"shape":"AdministrativeAction"}, "max":50 }, + "Aggregate":{ + "type":"string", + "max":6, + "min":5, + "pattern":"^(aggr[0-9]{1,2})$" + }, + "AggregateConfiguration":{ + "type":"structure", + "members":{ + "Aggregates":{"shape":"Aggregates"}, + "TotalConstituents":{"shape":"TotalConstituents"} + } + }, + "AggregateListMultiplier":{ + "type":"integer", + "max":200, + "min":1 + }, + "Aggregates":{ + "type":"list", + "member":{"shape":"Aggregate"}, + "max":6 + }, "Alias":{ "type":"structure", "members":{ @@ -1070,7 +1155,39 @@ "Backup":{"shape":"Backup"} } }, + "CopySnapshotAndUpdateVolumeRequest":{ + "type":"structure", + "required":[ + "VolumeId", + "SourceSnapshotARN" + ], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "VolumeId":{"shape":"VolumeId"}, + "SourceSnapshotARN":{"shape":"ResourceARN"}, + "CopyStrategy":{"shape":"OpenZFSCopyStrategy"}, + "Options":{"shape":"UpdateOpenZFSVolumeOptions"} + } + }, + "CopySnapshotAndUpdateVolumeResponse":{ + "type":"structure", + "members":{ + "VolumeId":{"shape":"VolumeId"}, + "Lifecycle":{"shape":"VolumeLifecycle"}, + "AdministrativeActions":{"shape":"AdministrativeActions"} + } + }, "CopyTagsToDataRepositoryAssociations":{"type":"boolean"}, + "CreateAggregateConfiguration":{ + "type":"structure", + "members":{ + "Aggregates":{"shape":"Aggregates"}, + "ConstituentsPerAggregate":{"shape":"AggregateListMultiplier"} + } + }, "CreateBackupRequest":{ "type":"structure", "members":{ @@ -1243,10 +1360,7 @@ }, "CreateFileSystemOntapConfiguration":{ "type":"structure", - "required":[ - "DeploymentType", - "ThroughputCapacity" - ], + "required":["DeploymentType"], "members":{ "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"}, "DailyAutomaticBackupStartTime":{"shape":"DailyTime"}, @@ -1257,7 +1371,9 @@ "PreferredSubnetId":{"shape":"SubnetId"}, "RouteTableIds":{"shape":"RouteTableIds"}, "ThroughputCapacity":{"shape":"MegabytesPerSecond"}, - "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"} + "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"}, + "HAPairs":{"shape":"HAPairs"}, + "ThroughputCapacityPerHAPair":{"shape":"ThroughputCapacityPerHAPair"} } }, "CreateFileSystemOpenZFSConfiguration":{ @@ -1333,21 +1449,25 @@ }, "CreateOntapVolumeConfiguration":{ "type":"structure", - "required":[ - "SizeInMegabytes", - "StorageVirtualMachineId" - ], + "required":["StorageVirtualMachineId"], "members":{ "JunctionPath":{"shape":"JunctionPath"}, "SecurityStyle":{"shape":"SecurityStyle"}, - "SizeInMegabytes":{"shape":"VolumeCapacity"}, + "SizeInMegabytes":{ + "shape":"VolumeCapacity", + "deprecated":true, + "deprecatedMessage":"This property is deprecated, use SizeInBytes instead" + }, "StorageEfficiencyEnabled":{"shape":"Flag"}, "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"}, "TieringPolicy":{"shape":"TieringPolicy"}, "OntapVolumeType":{"shape":"InputOntapVolumeType"}, "SnapshotPolicy":{"shape":"SnapshotPolicy"}, "CopyTagsToBackups":{"shape":"Flag"}, - "SnaplockConfiguration":{"shape":"CreateSnaplockConfiguration"} + "SnaplockConfiguration":{"shape":"CreateSnaplockConfiguration"}, + "VolumeStyle":{"shape":"VolumeStyle"}, + "AggregateConfiguration":{"shape":"CreateAggregateConfiguration"}, + "SizeInBytes":{"shape":"VolumeCapacityBytes"} } }, "CreateOpenZFSOriginSnapshotConfiguration":{ @@ -2033,6 +2153,17 @@ "NextToken":{"shape":"NextToken"} } }, + "DescribeSharedVpcConfigurationRequest":{ + "type":"structure", + "members":{ + } + }, + "DescribeSharedVpcConfigurationResponse":{ + "type":"structure", + "members":{ + "EnableFsxRouteTableUpdatesFromParticipantAccounts":{"shape":"VerboseFlag"} + } + }, "DescribeSnapshotsRequest":{ "type":"structure", "members":{ @@ -2469,6 +2600,11 @@ "min":8, "pattern":"^arn:[^:]{1,63}:[^:]{0,63}:[^:]{0,63}:(?:|\\d{12}):[^/].{0,1023}$" }, + "HAPairs":{ + "type":"integer", + "max":6, + "min":1 + }, "IncompatibleParameterError":{ "type":"structure", "required":["Parameter"], @@ -2576,7 +2712,7 @@ }, "Iops":{ "type":"long", - "max":1000000, + "max":2400000, "min":0 }, "IpAddress":{ @@ -2808,13 +2944,14 @@ "type":"string", "enum":[ "MULTI_AZ_1", - "SINGLE_AZ_1" + "SINGLE_AZ_1", + "SINGLE_AZ_2" ] }, "OntapEndpointIpAddresses":{ "type":"list", "member":{"shape":"IpAddress"}, - "max":2, + "max":24, "min":1 }, "OntapFileSystemConfiguration":{ @@ -2830,7 +2967,9 @@ "RouteTableIds":{"shape":"RouteTableIds"}, "ThroughputCapacity":{"shape":"MegabytesPerSecond"}, "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"}, - "FsxAdminPassword":{"shape":"AdminPassword"} + "FsxAdminPassword":{"shape":"AdminPassword"}, + "HAPairs":{"shape":"HAPairs"}, + "ThroughputCapacityPerHAPair":{"shape":"ThroughputCapacityPerHAPair"} } }, "OntapVolumeConfiguration":{ @@ -2848,7 +2987,10 @@ "OntapVolumeType":{"shape":"OntapVolumeType"}, "SnapshotPolicy":{"shape":"SnapshotPolicy"}, "CopyTagsToBackups":{"shape":"Flag"}, - "SnaplockConfiguration":{"shape":"SnaplockConfiguration"} + "SnaplockConfiguration":{"shape":"SnaplockConfiguration"}, + "VolumeStyle":{"shape":"VolumeStyle"}, + "AggregateConfiguration":{"shape":"AggregateConfiguration"}, + "SizeInBytes":{"shape":"VolumeCapacityBytes"} } }, "OntapVolumeType":{ @@ -2885,7 +3027,8 @@ "type":"string", "enum":[ "CLONE", - "FULL_COPY" + "FULL_COPY", + "INCREMENTAL_COPY" ] }, "OpenZFSCreateRootVolumeConfiguration":{ @@ -3005,7 +3148,10 @@ "UserAndGroupQuotas":{"shape":"OpenZFSUserAndGroupQuotas"}, "RestoreToSnapshot":{"shape":"SnapshotId"}, "DeleteIntermediateSnaphots":{"shape":"Flag"}, - "DeleteClonedVolumes":{"shape":"Flag"} + "DeleteClonedVolumes":{"shape":"Flag"}, + "DeleteIntermediateData":{"shape":"Flag"}, + "SourceSnapshotARN":{"shape":"ResourceARN"}, + "DestinationSnapshot":{"shape":"SnapshotId"} } }, "OrganizationalUnitDistinguishedName":{ @@ -3067,6 +3213,10 @@ } }, "ReleasedCapacity":{"type":"long"}, + "RemainingTransferBytes":{ + "type":"long", + "min":0 + }, "ReportFormat":{ "type":"string", "enum":["REPORT_CSV_20191124"] @@ -3405,6 +3555,23 @@ }, "exception":true }, + "StartMisconfiguredStateRecoveryRequest":{ + "type":"structure", + "required":["FileSystemId"], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "FileSystemId":{"shape":"FileSystemId"} + } + }, + "StartMisconfiguredStateRecoveryResponse":{ + "type":"structure", + "members":{ + "FileSystem":{"shape":"FileSystem"} + } + }, "StartTime":{"type":"timestamp"}, "Status":{ "type":"string", @@ -3632,6 +3799,11 @@ "member":{"shape":"TaskId"}, "max":50 }, + "ThroughputCapacityPerHAPair":{ + "type":"integer", + "max":6144, + "min":128 + }, "TieringPolicy":{ "type":"structure", "members":{ @@ -3648,7 +3820,16 @@ "NONE" ] }, + "TotalConstituents":{ + "type":"integer", + "max":200, + "min":1 + }, "TotalCount":{"type":"long"}, + "TotalTransferBytes":{ + "type":"long", + "min":0 + }, "UUID":{ "type":"string", "max":36, @@ -3733,7 +3914,8 @@ "AutoImportPolicy":{"shape":"AutoImportPolicyType"}, "DataCompressionType":{"shape":"DataCompressionType"}, "LogConfiguration":{"shape":"LustreLogCreateConfiguration"}, - "RootSquashConfiguration":{"shape":"LustreRootSquashConfiguration"} + "RootSquashConfiguration":{"shape":"LustreRootSquashConfiguration"}, + "PerUnitStorageThroughput":{"shape":"PerUnitStorageThroughput"} } }, "UpdateFileSystemOntapConfiguration":{ @@ -3746,7 +3928,8 @@ "DiskIopsConfiguration":{"shape":"DiskIopsConfiguration"}, "ThroughputCapacity":{"shape":"MegabytesPerSecond"}, "AddRouteTableIds":{"shape":"RouteTableIds"}, - "RemoveRouteTableIds":{"shape":"RouteTableIds"} + "RemoveRouteTableIds":{"shape":"RouteTableIds"}, + "ThroughputCapacityPerHAPair":{"shape":"ThroughputCapacityPerHAPair"} } }, "UpdateFileSystemOpenZFSConfiguration":{ @@ -3808,7 +3991,8 @@ "TieringPolicy":{"shape":"TieringPolicy"}, "SnapshotPolicy":{"shape":"SnapshotPolicy"}, "CopyTagsToBackups":{"shape":"Flag"}, - "SnaplockConfiguration":{"shape":"UpdateSnaplockConfiguration"} + "SnaplockConfiguration":{"shape":"UpdateSnaplockConfiguration"}, + "SizeInBytes":{"shape":"VolumeCapacityBytes"} } }, "UpdateOpenZFSVolumeConfiguration":{ @@ -3823,6 +4007,34 @@ "ReadOnly":{"shape":"ReadOnly"} } }, + "UpdateOpenZFSVolumeOption":{ + "type":"string", + "enum":[ + "DELETE_INTERMEDIATE_SNAPSHOTS", + "DELETE_CLONED_VOLUMES", + "DELETE_INTERMEDIATE_DATA" + ] + }, + "UpdateOpenZFSVolumeOptions":{ + "type":"list", + "member":{"shape":"UpdateOpenZFSVolumeOption"} + }, + "UpdateSharedVpcConfigurationRequest":{ + "type":"structure", + "members":{ + "EnableFsxRouteTableUpdatesFromParticipantAccounts":{"shape":"VerboseFlag"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + } + } + }, + "UpdateSharedVpcConfigurationResponse":{ + "type":"structure", + "members":{ + "EnableFsxRouteTableUpdatesFromParticipantAccounts":{"shape":"VerboseFlag"} + } + }, "UpdateSnaplockConfiguration":{ "type":"structure", "members":{ @@ -3904,6 +4116,12 @@ "type":"long", "min":0 }, + "VerboseFlag":{ + "type":"string", + "max":5, + "min":4, + "pattern":"^(?i)(true|false)$" + }, "Volume":{ "type":"structure", "members":{ @@ -3923,7 +4141,12 @@ }, "VolumeCapacity":{ "type":"integer", - "max":314572800, + "max":2147483647, + "min":0 + }, + "VolumeCapacityBytes":{ + "type":"long", + "max":22517998000000000, "min":0 }, "VolumeFilter":{ @@ -3998,6 +4221,13 @@ "min":1, "pattern":"^[A-za-z0-9\\_\\.\\:\\-\\/]*$" }, + "VolumeStyle":{ + "type":"string", + "enum":[ + "FLEXVOL", + "FLEXGROUP" + ] + }, "VolumeType":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fsx/2018-03-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fsx/2018-03-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fsx/2018-03-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fsx/2018-03-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,6 +5,7 @@ "AssociateFileSystemAliases": "

Use this action to associate one or more Domain Name Server (DNS) aliases with an existing Amazon FSx for Windows File Server file system. A file system can have a maximum of 50 DNS aliases associated with it at any one time. If you try to associate a DNS alias that is already associated with the file system, FSx takes no action on that alias in the request. For more information, see Working with DNS Aliases and Walkthrough 5: Using DNS aliases to access your file system, including additional steps you must take to be able to access your file system using a DNS alias.

The system response shows the DNS aliases that Amazon FSx is attempting to associate with the file system. Use the API operation to monitor the status of the aliases Amazon FSx is associating with the file system.

", "CancelDataRepositoryTask": "

Cancels an existing Amazon FSx for Lustre data repository task if that task is in either the PENDING or EXECUTING state. When you cancel am export task, Amazon FSx does the following.

  • Any files that FSx has already exported are not reverted.

  • FSx continues to export any files that are in-flight when the cancel operation is received.

  • FSx does not export any files that have not yet been exported.

For a release task, Amazon FSx will stop releasing files upon cancellation. Any files that have already been released will remain in the released state.

", "CopyBackup": "

Copies an existing backup within the same Amazon Web Services account to another Amazon Web Services Region (cross-Region copy) or within the same Amazon Web Services Region (in-Region copy). You can have up to five backup copy requests in progress to a single destination Region per account.

You can use cross-Region backup copies for cross-Region disaster recovery. You can periodically take backups and copy them to another Region so that in the event of a disaster in the primary Region, you can restore from backup and recover availability quickly in the other Region. You can make cross-Region copies only within your Amazon Web Services partition. A partition is a grouping of Regions. Amazon Web Services currently has three partitions: aws (Standard Regions), aws-cn (China Regions), and aws-us-gov (Amazon Web Services GovCloud [US] Regions).

You can also use backup copies to clone your file dataset to another Region or within the same Region.

You can use the SourceRegion parameter to specify the Amazon Web Services Region from which the backup will be copied. For example, if you make the call from the us-west-1 Region and want to copy a backup from the us-east-2 Region, you specify us-east-2 in the SourceRegion parameter to make a cross-Region copy. If you don't specify a Region, the backup copy is created in the same Region where the request is sent from (in-Region copy).

For more information about creating backup copies, see Copying backups in the Amazon FSx for Windows User Guide, Copying backups in the Amazon FSx for Lustre User Guide, and Copying backups in the Amazon FSx for OpenZFS User Guide.

", + "CopySnapshotAndUpdateVolume": "

Updates an existing volume by using a snapshot from another Amazon FSx for OpenZFS file system. For more information, see on-demand data replication in the Amazon FSx for OpenZFS User Guide.

", "CreateBackup": "

Creates a backup of an existing Amazon FSx for Windows File Server file system, Amazon FSx for Lustre file system, Amazon FSx for NetApp ONTAP volume, or Amazon FSx for OpenZFS file system. We recommend creating regular backups so that you can restore a file system or volume from a backup if an issue arises with the original file system or volume.

For Amazon FSx for Lustre file systems, you can create a backup only for file systems that have the following configuration:

  • A Persistent deployment type

  • Are not linked to a data repository

For more information about backups, see the following:

If a backup with the specified client request token exists and the parameters match, this operation returns the description of the existing backup. If a backup with the specified client request token exists and the parameters don't match, this operation returns IncompatibleParameterError. If a backup with the specified client request token doesn't exist, CreateBackup does the following:

  • Creates a new Amazon FSx backup with an assigned ID, and an initial lifecycle state of CREATING.

  • Returns the description of the backup.

By using the idempotent operation, you can retry a CreateBackup operation without the risk of creating an extra backup. This approach can be useful when an initial call fails in a way that makes it unclear whether a backup was created. If you use the same client request token and the initial call created a backup, the operation returns a successful result because all the parameters are the same.

The CreateBackup operation returns while the backup's lifecycle state is still CREATING. You can check the backup creation status by calling the DescribeBackups operation, which returns the backup state along with other information.

", "CreateDataRepositoryAssociation": "

Creates an Amazon FSx for Lustre data repository association (DRA). A data repository association is a link between a directory on the file system and an Amazon S3 bucket or prefix. You can have a maximum of 8 data repository associations on a file system. Data repository associations are supported on all FSx for Lustre 2.12 and 2.15 file systems, excluding scratch_1 deployment type.

Each data repository association must have a unique Amazon FSx file system directory and a unique S3 bucket or prefix associated with it. You can configure a data repository association for automatic import only, for automatic export only, or for both. To learn more about linking a data repository to your file system, see Linking your file system to an S3 bucket.

CreateDataRepositoryAssociation isn't supported on Amazon File Cache resources. To create a DRA on Amazon File Cache, use the CreateFileCache operation.

", "CreateDataRepositoryTask": "

Creates an Amazon FSx for Lustre data repository task. A CreateDataRepositoryTask operation will fail if a data repository is not linked to the FSx file system.

You use import and export data repository tasks to perform bulk operations between your FSx for Lustre file system and its linked data repositories. An example of a data repository task is exporting any data and metadata changes, including POSIX metadata, to files, directories, and symbolic links (symlinks) from your FSx file system to a linked data repository.

You use release data repository tasks to release data from your file system for files that are exported to S3. The metadata of released files remains on the file system so users or applications can still access released files by reading the files again, which will restore data from Amazon S3 to the FSx for Lustre file system.

To learn more about data repository tasks, see Data Repository Tasks. To learn more about linking a data repository to your file system, see Linking your file system to an S3 bucket.

", @@ -28,18 +29,21 @@ "DescribeFileCaches": "

Returns the description of a specific Amazon File Cache resource, if a FileCacheIds value is provided for that cache. Otherwise, it returns descriptions of all caches owned by your Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.

When retrieving all cache descriptions, you can optionally specify the MaxResults parameter to limit the number of descriptions in a response. If more cache descriptions remain, the operation returns a NextToken value in the response. In this case, send a later request with the NextToken request parameter set to the value of NextToken from the last response.

This operation is used in an iterative process to retrieve a list of your cache descriptions. DescribeFileCaches is called first without a NextTokenvalue. Then the operation continues to be called with the NextToken parameter set to the value of the last NextToken value until a response has no NextToken.

When using this operation, keep the following in mind:

  • The implementation might return fewer than MaxResults cache descriptions while still including a NextToken value.

  • The order of caches returned in the response of one DescribeFileCaches call and the order of caches returned across the responses of a multicall iteration is unspecified.

", "DescribeFileSystemAliases": "

Returns the DNS aliases that are associated with the specified Amazon FSx for Windows File Server file system. A history of all DNS aliases that have been associated with and disassociated from the file system is available in the list of AdministrativeAction provided in the DescribeFileSystems operation response.

", "DescribeFileSystems": "

Returns the description of specific Amazon FSx file systems, if a FileSystemIds value is provided for that file system. Otherwise, it returns descriptions of all file systems owned by your Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.

When retrieving all file system descriptions, you can optionally specify the MaxResults parameter to limit the number of descriptions in a response. If more file system descriptions remain, Amazon FSx returns a NextToken value in the response. In this case, send a later request with the NextToken request parameter set to the value of NextToken from the last response.

This operation is used in an iterative process to retrieve a list of your file system descriptions. DescribeFileSystems is called first without a NextTokenvalue. Then the operation continues to be called with the NextToken parameter set to the value of the last NextToken value until a response has no NextToken.

When using this operation, keep the following in mind:

  • The implementation might return fewer than MaxResults file system descriptions while still including a NextToken value.

  • The order of file systems returned in the response of one DescribeFileSystems call and the order of file systems returned across the responses of a multicall iteration is unspecified.

", + "DescribeSharedVpcConfiguration": "

Indicates whether participant accounts in your organization can create Amazon FSx for NetApp ONTAP Multi-AZ file systems in subnets that are shared by a virtual private cloud (VPC) owner. For more information, see the Amazon FSx for NetApp ONTAP User Guide.

", "DescribeSnapshots": "

Returns the description of specific Amazon FSx for OpenZFS snapshots, if a SnapshotIds value is provided. Otherwise, this operation returns all snapshots owned by your Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.

When retrieving all snapshots, you can optionally specify the MaxResults parameter to limit the number of snapshots in a response. If more backups remain, Amazon FSx returns a NextToken value in the response. In this case, send a later request with the NextToken request parameter set to the value of NextToken from the last response.

Use this operation in an iterative process to retrieve a list of your snapshots. DescribeSnapshots is called first without a NextToken value. Then the operation continues to be called with the NextToken parameter set to the value of the last NextToken value until a response has no NextToken value.

When using this operation, keep the following in mind:

  • The operation might return fewer than the MaxResults value of snapshot descriptions while still including a NextToken value.

  • The order of snapshots returned in the response of one DescribeSnapshots call and the order of backups returned across the responses of a multi-call iteration is unspecified.

", "DescribeStorageVirtualMachines": "

Describes one or more Amazon FSx for NetApp ONTAP storage virtual machines (SVMs).

", "DescribeVolumes": "

Describes one or more Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volumes.

", - "DisassociateFileSystemAliases": "

Use this action to disassociate, or remove, one or more Domain Name Service (DNS) aliases from an Amazon FSx for Windows File Server file system. If you attempt to disassociate a DNS alias that is not associated with the file system, Amazon FSx responds with a 400 Bad Request. For more information, see Working with DNS Aliases.

The system generated response showing the DNS aliases that Amazon FSx is attempting to disassociate from the file system. Use the API operation to monitor the status of the aliases Amazon FSx is disassociating with the file system.

", + "DisassociateFileSystemAliases": "

Use this action to disassociate, or remove, one or more Domain Name Service (DNS) aliases from an Amazon FSx for Windows File Server file system. If you attempt to disassociate a DNS alias that is not associated with the file system, Amazon FSx responds with an HTTP status code 400 (Bad Request). For more information, see Working with DNS Aliases.

The system generated response showing the DNS aliases that Amazon FSx is attempting to disassociate from the file system. Use the API operation to monitor the status of the aliases Amazon FSx is disassociating with the file system.

", "ListTagsForResource": "

Lists tags for Amazon FSx resources.

When retrieving all tags, you can optionally specify the MaxResults parameter to limit the number of tags in a response. If more tags remain, Amazon FSx returns a NextToken value in the response. In this case, send a later request with the NextToken request parameter set to the value of NextToken from the last response.

This action is used in an iterative process to retrieve a list of your tags. ListTagsForResource is called first without a NextTokenvalue. Then the action continues to be called with the NextToken parameter set to the value of the last NextToken value until a response has no NextToken.

When using this action, keep the following in mind:

  • The implementation might return fewer than MaxResults file system descriptions while still including a NextToken value.

  • The order of tags returned in the response of one ListTagsForResource call and the order of tags returned across the responses of a multi-call iteration is unspecified.

", "ReleaseFileSystemNfsV3Locks": "

Releases the file system lock from an Amazon FSx for OpenZFS file system.

", "RestoreVolumeFromSnapshot": "

Returns an Amazon FSx for OpenZFS volume to the state saved by the specified snapshot.

", + "StartMisconfiguredStateRecovery": "

After performing steps to repair the Active Directory configuration of an FSx for Windows File Server file system, use this action to initiate the process of Amazon FSx attempting to reconnect to the file system.

", "TagResource": "

Tags an Amazon FSx resource.

", "UntagResource": "

This action removes a tag from an Amazon FSx resource.

", "UpdateDataRepositoryAssociation": "

Updates the configuration of an existing data repository association on an Amazon FSx for Lustre file system. Data repository associations are supported on all FSx for Lustre 2.12 and 2.15 file systems, excluding scratch_1 deployment type.

", "UpdateFileCache": "

Updates the configuration of an existing Amazon File Cache resource. You can update multiple properties in a single request.

", - "UpdateFileSystem": "

Use this operation to update the configuration of an existing Amazon FSx file system. You can update multiple properties in a single request.

For FSx for Windows File Server file systems, you can update the following properties:

  • AuditLogConfiguration

  • AutomaticBackupRetentionDays

  • DailyAutomaticBackupStartTime

  • SelfManagedActiveDirectoryConfiguration

  • StorageCapacity

  • StorageType

  • ThroughputCapacity

  • DiskIopsConfiguration

  • WeeklyMaintenanceStartTime

For FSx for Lustre file systems, you can update the following properties:

  • AutoImportPolicy

  • AutomaticBackupRetentionDays

  • DailyAutomaticBackupStartTime

  • DataCompressionType

  • LogConfiguration

  • LustreRootSquashConfiguration

  • StorageCapacity

  • WeeklyMaintenanceStartTime

For FSx for ONTAP file systems, you can update the following properties:

  • AddRouteTableIds

  • AutomaticBackupRetentionDays

  • DailyAutomaticBackupStartTime

  • DiskIopsConfiguration

  • FsxAdminPassword

  • RemoveRouteTableIds

  • StorageCapacity

  • ThroughputCapacity

  • WeeklyMaintenanceStartTime

For FSx for OpenZFS file systems, you can update the following properties:

  • AddRouteTableIds

  • AutomaticBackupRetentionDays

  • CopyTagsToBackups

  • CopyTagsToVolumes

  • DailyAutomaticBackupStartTime

  • DiskIopsConfiguration

  • RemoveRouteTableIds

  • StorageCapacity

  • ThroughputCapacity

  • WeeklyMaintenanceStartTime

", + "UpdateFileSystem": "

Use this operation to update the configuration of an existing Amazon FSx file system. You can update multiple properties in a single request.

For FSx for Windows File Server file systems, you can update the following properties:

  • AuditLogConfiguration

  • AutomaticBackupRetentionDays

  • DailyAutomaticBackupStartTime

  • SelfManagedActiveDirectoryConfiguration

  • StorageCapacity

  • StorageType

  • ThroughputCapacity

  • DiskIopsConfiguration

  • WeeklyMaintenanceStartTime

For FSx for Lustre file systems, you can update the following properties:

  • AutoImportPolicy

  • AutomaticBackupRetentionDays

  • DailyAutomaticBackupStartTime

  • DataCompressionType

  • LogConfiguration

  • LustreRootSquashConfiguration

  • PerUnitStorageThroughput

  • StorageCapacity

  • WeeklyMaintenanceStartTime

For FSx for ONTAP file systems, you can update the following properties:

  • AddRouteTableIds

  • AutomaticBackupRetentionDays

  • DailyAutomaticBackupStartTime

  • DiskIopsConfiguration

  • FsxAdminPassword

  • HAPairs

  • RemoveRouteTableIds

  • StorageCapacity

  • ThroughputCapacity

  • ThroughputCapacityPerHAPair

  • WeeklyMaintenanceStartTime

For FSx for OpenZFS file systems, you can update the following properties:

  • AddRouteTableIds

  • AutomaticBackupRetentionDays

  • CopyTagsToBackups

  • CopyTagsToVolumes

  • DailyAutomaticBackupStartTime

  • DiskIopsConfiguration

  • RemoveRouteTableIds

  • StorageCapacity

  • ThroughputCapacity

  • WeeklyMaintenanceStartTime

", + "UpdateSharedVpcConfiguration": "

Configures whether participant accounts in your organization can create Amazon FSx for NetApp ONTAP Multi-AZ file systems in subnets that are shared by a virtual private cloud (VPC) owner. For more information, see the Amazon FSx for NetApp ONTAP User Guide.

We strongly recommend that participant-created Multi-AZ file systems in the shared VPC are deleted before you disable this feature. Once the feature is disabled, these file systems will enter a MISCONFIGURED state and behave like Single-AZ file systems. For more information, see Important considerations before disabling shared VPC support for Multi-AZ file systems.

", "UpdateSnapshot": "

Updates the name of an Amazon FSx for OpenZFS snapshot.

", "UpdateStorageVirtualMachine": "

Updates an FSx for ONTAP storage virtual machine (SVM).

", "UpdateVolume": "

Updates the configuration of an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume.

" @@ -91,7 +95,7 @@ } }, "AdministrativeAction": { - "base": "

Describes a specific Amazon FSx administrative action for the current Windows, Lustre, or OpenZFS file system.

", + "base": "

Describes a specific Amazon FSx administrative action for the current Windows, Lustre, OpenZFS, or ONTAP file system or volume.

", "refs": { "AdministrativeActions$member": null } @@ -103,7 +107,7 @@ } }, "AdministrativeActionType": { - "base": "

Describes the type of administrative action, as follows:

  • FILE_SYSTEM_UPDATE - A file system update administrative action initiated from the Amazon FSx console, API (UpdateFileSystem), or CLI (update-file-system).

  • THROUGHPUT_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's throughput capacity has been completed successfully, a THROUGHPUT_OPTIMIZATION task starts.

    You can track the storage-optimization progress using the ProgressPercent property. When THROUGHPUT_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED. For more information, see Managing throughput capacity in the Amazon FSx for Windows File Server User Guide.

  • STORAGE_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's storage capacity has been completed successfully, a STORAGE_OPTIMIZATION task starts.

    • For Windows and ONTAP, storage optimization is the process of migrating the file system data to newer larger disks.

    • For Lustre, storage optimization consists of rebalancing the data across the existing and newly added file servers.

    You can track the storage-optimization progress using the ProgressPercent property. When STORAGE_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED. For more information, see Managing storage capacity in the Amazon FSx for Windows File Server User Guide, Managing storage and throughput capacity in the Amazon FSx for Lustre User Guide, and Managing storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP User Guide.

  • FILE_SYSTEM_ALIAS_ASSOCIATION - A file system update to associate a new Domain Name System (DNS) alias with the file system. For more information, see AssociateFileSystemAliases.

  • FILE_SYSTEM_ALIAS_DISASSOCIATION - A file system update to disassociate a DNS alias from the file system. For more information, see DisassociateFileSystemAliases.

  • IOPS_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's throughput capacity has been completed successfully, a IOPS_OPTIMIZATION task starts.

    You can track the storage-optimization progress using the ProgressPercent property. When IOPS_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED. For more information, see Managing provisioned SSD IOPS in the Amazon FSx for Windows File Server User Guide.

  • STORAGE_TYPE_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's throughput capacity has been completed successfully, a STORAGE_TYPE_OPTIMIZATION task starts.

    You can track the storage-optimization progress using the ProgressPercent property. When STORAGE_TYPE_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED.

  • VOLUME_UPDATE - A volume update to an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume initiated from the Amazon FSx console, API (UpdateVolume), or CLI (update-volume).

  • VOLUME_RESTORE - An Amazon FSx for OpenZFS volume is returned to the state saved by the specified snapshot, initiated from an API (RestoreVolumeFromSnapshot) or CLI (restore-volume-from-snapshot).

  • SNAPSHOT_UPDATE - A snapshot update to an Amazon FSx for OpenZFS volume initiated from the Amazon FSx console, API (UpdateSnapshot), or CLI (update-snapshot).

  • RELEASE_NFS_V3_LOCKS - Tracks the release of Network File System (NFS) V3 locks on an Amazon FSx for OpenZFS file system.

", + "base": "

Describes the type of administrative action, as follows:

  • FILE_SYSTEM_UPDATE - A file system update administrative action initiated from the Amazon FSx console, API (UpdateFileSystem), or CLI (update-file-system).

  • THROUGHPUT_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's throughput capacity has been completed successfully, a THROUGHPUT_OPTIMIZATION task starts.

    You can track the storage-optimization progress using the ProgressPercent property. When THROUGHPUT_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED. For more information, see Managing throughput capacity in the Amazon FSx for Windows File Server User Guide.

  • STORAGE_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's storage capacity has been completed successfully, a STORAGE_OPTIMIZATION task starts.

    • For Windows and ONTAP, storage optimization is the process of migrating the file system data to newer larger disks.

    • For Lustre, storage optimization consists of rebalancing the data across the existing and newly added file servers.

    You can track the storage-optimization progress using the ProgressPercent property. When STORAGE_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED. For more information, see Managing storage capacity in the Amazon FSx for Windows File Server User Guide, Managing storage capacity in the Amazon FSx for Lustre User Guide, and Managing storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP User Guide.

  • FILE_SYSTEM_ALIAS_ASSOCIATION - A file system update to associate a new Domain Name System (DNS) alias with the file system. For more information, see AssociateFileSystemAliases.

  • FILE_SYSTEM_ALIAS_DISASSOCIATION - A file system update to disassociate a DNS alias from the file system. For more information, see DisassociateFileSystemAliases.

  • IOPS_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's throughput capacity has been completed successfully, a IOPS_OPTIMIZATION task starts.

    You can track the storage-optimization progress using the ProgressPercent property. When IOPS_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED. For more information, see Managing provisioned SSD IOPS in the Amazon FSx for Windows File Server User Guide.

  • STORAGE_TYPE_OPTIMIZATION - After the FILE_SYSTEM_UPDATE task to increase a file system's throughput capacity has been completed successfully, a STORAGE_TYPE_OPTIMIZATION task starts.

    You can track the storage-optimization progress using the ProgressPercent property. When STORAGE_TYPE_OPTIMIZATION has been completed successfully, the parent FILE_SYSTEM_UPDATE action status changes to COMPLETED.

  • VOLUME_UPDATE - A volume update to an Amazon FSx for OpenZFS volume initiated from the Amazon FSx console, API (UpdateVolume), or CLI (update-volume).

  • VOLUME_RESTORE - An Amazon FSx for OpenZFS volume is returned to the state saved by the specified snapshot, initiated from an API (RestoreVolumeFromSnapshot) or CLI (restore-volume-from-snapshot).

  • SNAPSHOT_UPDATE - A snapshot update to an Amazon FSx for OpenZFS volume initiated from the Amazon FSx console, API (UpdateSnapshot), or CLI (update-snapshot).

  • RELEASE_NFS_V3_LOCKS - Tracks the release of Network File System (NFS) V3 locks on an Amazon FSx for OpenZFS file system.

  • VOLUME_INITIALIZE_WITH_SNAPSHOT - A volume is being created from a snapshot on a different FSx for OpenZFS file system. You can initiate this from the Amazon FSx console, API (CreateVolume), or CLI (create-volume) when using the using the FULL_COPY strategy.

  • VOLUME_UPDATE_WITH_SNAPSHOT - A volume is being updated from a snapshot on a different FSx for OpenZFS file system. You can initiate this from the Amazon FSx console, API (CopySnapshotAndUpdateVolume), or CLI (copy-snapshot-and-update-volume).

", "refs": { "AdministrativeAction$AdministrativeActionType": null } @@ -111,12 +115,38 @@ "AdministrativeActions": { "base": null, "refs": { + "CopySnapshotAndUpdateVolumeResponse$AdministrativeActions": "

A list of administrative actions for the file system that are in process or waiting to be processed. Administrative actions describe changes to the Amazon FSx system.

", "FileSystem$AdministrativeActions": "

A list of administrative actions for the file system that are in process or waiting to be processed. Administrative actions describe changes to the Amazon FSx system that you have initiated using the UpdateFileSystem operation.

", "RestoreVolumeFromSnapshotResponse$AdministrativeActions": "

A list of administrative actions for the file system that are in process or waiting to be processed. Administrative actions describe changes to the Amazon FSx system.

", "Snapshot$AdministrativeActions": "

A list of administrative actions for the file system that are in process or waiting to be processed. Administrative actions describe changes to the Amazon FSx system.

", "Volume$AdministrativeActions": "

A list of administrative actions for the volume that are in process or waiting to be processed. Administrative actions describe changes to the volume that you have initiated using the UpdateVolume action.

" } }, + "Aggregate": { + "base": null, + "refs": { + "Aggregates$member": null + } + }, + "AggregateConfiguration": { + "base": "

Used to specify configuration options for a volume’s storage aggregate or aggregates.

", + "refs": { + "OntapVolumeConfiguration$AggregateConfiguration": "

This structure specifies configuration options for a volume’s storage aggregate or aggregates.

" + } + }, + "AggregateListMultiplier": { + "base": null, + "refs": { + "CreateAggregateConfiguration$ConstituentsPerAggregate": "

Used to explicitly set the number of constituents within the FlexGroup per storage aggregate. This field is optional when creating a FlexGroup volume. If unspecified, the default value will be 8. This field cannot be provided when creating a FlexVol volume.

" + } + }, + "Aggregates": { + "base": null, + "refs": { + "AggregateConfiguration$Aggregates": "

The list of aggregates that this volume resides on. Aggregates are storage pools which make up your primary storage tier. Each high-availability (HA) pair has one aggregate. The names of the aggregates map to the names of the aggregates in the ONTAP CLI and REST API. For FlexVols, there will always be a single entry.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The strings in the value of Aggregates are not are not formatted as aggrX, where X is a number between 1 and 6.

  • The value of Aggregates contains aggregates that are not present.

  • One or more of the aggregates supplied are too close to the volume limit to support adding more volumes.

", + "CreateAggregateConfiguration$Aggregates": "

Used to specify the names of aggregates on which the volume will be created.

" + } + }, "Alias": { "base": "

A DNS alias that is associated with the file system. You can use a DNS alias to access a file system using user-defined DNS names, in addition to the default DNS name that Amazon FSx assigns to the file system. For more information, see DNS aliases in the FSx for Windows File Server User Guide.

", "refs": { @@ -345,6 +375,7 @@ "refs": { "AssociateFileSystemAliasesRequest$ClientRequestToken": null, "CopyBackupRequest$ClientRequestToken": null, + "CopySnapshotAndUpdateVolumeRequest$ClientRequestToken": null, "CreateBackupRequest$ClientRequestToken": "

(Optional) A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.

", "CreateDataRepositoryAssociationRequest$ClientRequestToken": null, "CreateDataRepositoryTaskRequest$ClientRequestToken": null, @@ -366,9 +397,11 @@ "DisassociateFileSystemAliasesRequest$ClientRequestToken": null, "ReleaseFileSystemNfsV3LocksRequest$ClientRequestToken": null, "RestoreVolumeFromSnapshotRequest$ClientRequestToken": null, + "StartMisconfiguredStateRecoveryRequest$ClientRequestToken": null, "UpdateDataRepositoryAssociationRequest$ClientRequestToken": null, "UpdateFileCacheRequest$ClientRequestToken": null, "UpdateFileSystemRequest$ClientRequestToken": "

A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent updates. This string is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.

", + "UpdateSharedVpcConfigurationRequest$ClientRequestToken": null, "UpdateSnapshotRequest$ClientRequestToken": null, "UpdateStorageVirtualMachineRequest$ClientRequestToken": null, "UpdateVolumeRequest$ClientRequestToken": null @@ -397,6 +430,16 @@ "refs": { } }, + "CopySnapshotAndUpdateVolumeRequest": { + "base": null, + "refs": { + } + }, + "CopySnapshotAndUpdateVolumeResponse": { + "base": null, + "refs": { + } + }, "CopyTagsToDataRepositoryAssociations": { "base": null, "refs": { @@ -404,6 +447,12 @@ "FileCacheCreating$CopyTagsToDataRepositoryAssociations": "

A boolean flag indicating whether tags for the cache should be copied to data repository associations.

" } }, + "CreateAggregateConfiguration": { + "base": "

Used to specify the configuration options for a volume's storage aggregate or aggregates.

", + "refs": { + "CreateOntapVolumeConfiguration$AggregateConfiguration": "

Use to specify configuration options for a volume’s storage aggregate or aggregates.

" + } + }, "CreateBackupRequest": { "base": "

The request object for the CreateBackup operation.

", "refs": { @@ -467,7 +516,7 @@ } }, "CreateFileSystemLustreConfiguration": { - "base": "

The Lustre configuration for the file system being created.

The following parameters are not supported for file systems with a data repository association created with .

  • AutoImportPolicy

  • ExportPath

  • ImportedChunkSize

  • ImportPath

", + "base": "

The Lustre configuration for the file system being created.

The following parameters are not supported for file systems with a data repository association created with .

  • AutoImportPolicy

  • ExportPath

  • ImportedFileChunkSize

  • ImportPath

", "refs": { "CreateFileSystemFromBackupRequest$LustreConfiguration": null, "CreateFileSystemRequest$LustreConfiguration": null @@ -511,7 +560,7 @@ } }, "CreateOpenZFSOriginSnapshotConfiguration": { - "base": "

The snapshot configuration to use when creating an OpenZFS volume from a snapshot.

", + "base": "

The snapshot configuration to use when creating an Amazon FSx for OpenZFS volume from a snapshot.

", "refs": { "CreateOpenZFSVolumeConfiguration$OriginSnapshot": "

The configuration object that specifies the snapshot to use as the origin of the data for the volume.

" } @@ -994,6 +1043,16 @@ "refs": { } }, + "DescribeSharedVpcConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DescribeSharedVpcConfigurationResponse": { + "base": null, + "refs": { + } + }, "DescribeSnapshotsRequest": { "base": null, "refs": { @@ -1273,12 +1332,13 @@ "FileSystem": { "base": "

A description of a specific Amazon FSx file system.

", "refs": { - "AdministrativeAction$TargetFileSystemValues": "

Describes the target value for the administration action, provided in the UpdateFileSystem operation. Returned for FILE_SYSTEM_UPDATE administrative actions.

", + "AdministrativeAction$TargetFileSystemValues": "

The target value for the administration action, provided in the UpdateFileSystem operation. Returned for FILE_SYSTEM_UPDATE administrative actions.

", "Backup$FileSystem": "

The metadata of the file system associated with the backup. This metadata is persisted even if the file system is deleted.

", "CreateFileSystemFromBackupResponse$FileSystem": "

A description of the file system.

", "CreateFileSystemResponse$FileSystem": "

The configuration of the file system that was created.

", "FileSystems$member": null, "ReleaseFileSystemNfsV3LocksResponse$FileSystem": null, + "StartMisconfiguredStateRecoveryResponse$FileSystem": null, "UpdateFileSystemResponse$FileSystem": "

A description of the file system that was updated.

" } }, @@ -1327,6 +1387,7 @@ "FileSystem$FileSystemId": "

The system-generated, unique 17-digit ID of the file system.

", "FileSystemIds$member": null, "ReleaseFileSystemNfsV3LocksRequest$FileSystemId": null, + "StartMisconfiguredStateRecoveryRequest$FileSystemId": null, "StorageVirtualMachine$FileSystemId": null, "UpdateFileSystemRequest$FileSystemId": "

The ID of the file system that you are updating.

", "Volume$FileSystemId": null @@ -1446,6 +1507,7 @@ "OpenZFSVolumeConfiguration$CopyTagsToSnapshots": "

A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to false. If it's set to true, all tags for the volume are copied to snapshots where the user doesn't specify tags. If this value is true and you specify one or more tags, only the specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are copied from the volume, regardless of this value.

", "OpenZFSVolumeConfiguration$DeleteIntermediateSnaphots": "

A Boolean value indicating whether snapshots between the current state and the specified snapshot should be deleted when a volume is restored from snapshot.

", "OpenZFSVolumeConfiguration$DeleteClonedVolumes": "

A Boolean value indicating whether dependent clone volumes created from intermediate snapshots should be deleted when a volume is restored from snapshot.

", + "OpenZFSVolumeConfiguration$DeleteIntermediateData": "

A Boolean value indicating whether snapshot data that differs between the current state and the specified snapshot should be overwritten when a volume is restored from a snapshot.

", "SnaplockConfiguration$AuditLogVolume": "

Enables or disables the audit log volume for an FSx for ONTAP SnapLock volume. The default value is false. If you set AuditLogVolume to true, the SnapLock volume is created as an audit log volume. The minimum retention period for an audit log volume is six months.

For more information, see SnapLock audit log volumes.

", "SnaplockConfiguration$VolumeAppendModeEnabled": "

Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume. Volume-append mode allows you to create WORM-appendable files and write data to them incrementally. The default value is false.

For more information, see Volume-append mode.

", "UpdateFileSystemOpenZFSConfiguration$CopyTagsToBackups": "

A Boolean value indicating whether tags for the file system should be copied to backups. This value defaults to false. If it's set to true, all tags for the file system are copied to all automatic and user-initiated backups where the user doesn't specify tags. If this value is true and you specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, regardless of this value.

", @@ -1472,6 +1534,13 @@ "WindowsAuditLogCreateConfiguration$AuditLogDestination": "

The Amazon Resource Name (ARN) that specifies the destination of the audit logs.

The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN, with the following requirements:

  • The destination ARN that you provide (either CloudWatch Logs log group or Kinesis Data Firehose delivery stream) must be in the same Amazon Web Services partition, Amazon Web Services Region, and Amazon Web Services account as your Amazon FSx file system.

  • The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. The name of the Amazon Kinesis Data Firehose delivery stream must begin with the aws-fsx prefix.

  • If you do not provide a destination in AuditLogDestination, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/windows log group.

  • If AuditLogDestination is provided and the resource does not exist, the request will fail with a BadRequest error.

  • If FileAccessAuditLogLevel and FileShareAccessAuditLogLevel are both set to DISABLED, you cannot specify a destination in AuditLogDestination.

" } }, + "HAPairs": { + "base": null, + "refs": { + "CreateFileSystemOntapConfiguration$HAPairs": "

Specifies how many high-availability (HA) pairs the file system will have. The default value is 1. The value of this property affects the values of StorageCapacity, Iops, and ThroughputCapacity. For more information, see High-availability (HA) pairs in the FSx for ONTAP user guide.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The value of HAPairs is less than 1 or greater than 6.

  • The value of HAPairs is greater than 1 and the value of DeploymentType is SINGLE_AZ_1 or MULTI_AZ_1.

", + "OntapFileSystemConfiguration$HAPairs": "

Specifies how many high-availability (HA) file server pairs the file system will have. The default value is 1. The value of this property affects the values of StorageCapacity, Iops, and ThroughputCapacity. For more information, see High-availability (HA) pairs in the FSx for ONTAP user guide.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The value of HAPairs is less than 1 or greater than 6.

  • The value of HAPairs is greater than 1 and the value of DeploymentType is SINGLE_AZ_1 or MULTI_AZ_1.

" + } + }, "IncompatibleParameterError": { "base": "

The error returned when a second request is received with the same client request token but different parameters settings. A client request token should always uniquely identify a single request.

", "refs": { @@ -1563,7 +1632,7 @@ "Iops": { "base": null, "refs": { - "DiskIopsConfiguration$Iops": "

The total number of SSD IOPS provisioned for the file system.

" + "DiskIopsConfiguration$Iops": "

The total number of SSD IOPS provisioned for the file system.

The minimum and maximum values for this property depend on the value of HAPairs and StorageCapacity. The minimum value is calculated as StorageCapacity * 3 * HAPairs (3 IOPS per GB of StorageCapacity). The maximum value is calculated as 200,000 * HAPairs.

Amazon FSx responds with an HTTP status code 400 (Bad Request) if the value of Iops is outside of the minimum or maximum values.

" } }, "IpAddress": { @@ -1730,13 +1799,13 @@ "MegabytesPerSecond": { "base": "

The sustained throughput of an Amazon FSx file system in Megabytes per second (MBps).

", "refs": { - "CreateFileSystemOntapConfiguration$ThroughputCapacity": "

Sets the throughput capacity for the file system that you're creating. Valid values are 128, 256, 512, 1024, 2048, and 4096 MBps.

", + "CreateFileSystemOntapConfiguration$ThroughputCapacity": "

Sets the throughput capacity for the file system that you're creating in megabytes per second (MBps). For more information, see Managing throughput capacity in the FSx for ONTAP User Guide.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The value of ThroughputCapacity and ThroughputCapacityPerHAPair are not the same value.

  • The value of ThroughputCapacity when divided by the value of HAPairs is outside of the valid range for ThroughputCapacity.

", "CreateFileSystemOpenZFSConfiguration$ThroughputCapacity": "

Specifies the throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second (MBps). Valid values depend on the DeploymentType you choose, as follows:

  • For MULTI_AZ_1 and SINGLE_AZ_2, valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MBps.

  • For SINGLE_AZ_1, valid values are 64, 128, 256, 512, 1024, 2048, 3072, or 4096 MBps.

You pay for additional throughput capacity that you provision.

", "CreateFileSystemWindowsConfiguration$ThroughputCapacity": "

Sets the throughput capacity of an Amazon FSx file system, measured in megabytes per second (MB/s), in 2 to the nth increments, between 2^3 (8) and 2^11 (2048).

", "OntapFileSystemConfiguration$ThroughputCapacity": null, "OpenZFSFileSystemConfiguration$ThroughputCapacity": "

The throughput of an Amazon FSx file system, measured in megabytes per second (MBps).

", - "UpdateFileSystemOntapConfiguration$ThroughputCapacity": "

Enter a new value to change the amount of throughput capacity for the file system. Throughput capacity is measured in megabytes per second (MBps). Valid values are 128, 256, 512, 1024, 2048, and 4096 MBps. For more information, see Managing throughput capacity in the FSx for ONTAP User Guide.

", - "UpdateFileSystemOpenZFSConfiguration$ThroughputCapacity": "

The throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second
 (MB/s). Valid values depend on the DeploymentType you choose, as follows:

  • For MULTI_AZ_1 and SINGLE_AZ_2, valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MBps.

  • For SINGLE_AZ_1, valid values are 64, 128, 256, 512, 1024, 2048, 3072, or 4096 MB/s.

", + "UpdateFileSystemOntapConfiguration$ThroughputCapacity": "

Enter a new value to change the amount of throughput capacity for the file system in megabytes per second (MBps). For more information, see Managing throughput capacity in the FSx for ONTAP User Guide.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The value of ThroughputCapacity and ThroughputCapacityPerHAPair are not the same value.

  • The value of ThroughputCapacity when divided by the value of HAPairs is outside of the valid range for ThroughputCapacity.

", + "UpdateFileSystemOpenZFSConfiguration$ThroughputCapacity": "

The throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second
 (MB/s). Valid values depend on the DeploymentType you choose, as follows:

  • For MULTI_AZ_1 and SINGLE_AZ_2, valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MB/s.

  • For SINGLE_AZ_1, valid values are 64, 128, 256, 512, 1024, 2048, 3072, or 4096 MB/s.

", "UpdateFileSystemWindowsConfiguration$ThroughputCapacity": "

Sets the target value for a file system's throughput capacity, in MB/s, that you are updating the file system to. Valid values are 8, 16, 32, 64, 128, 256, 512, 1024, 2048. You cannot make a throughput capacity update request if there is an existing throughput capacity update request in progress. For more information, see Managing Throughput Capacity.

", "WindowsFileSystemConfiguration$ThroughputCapacity": "

The throughput of the Amazon FSx file system, measured in megabytes per second.

" } @@ -1840,8 +1909,8 @@ "OntapDeploymentType": { "base": null, "refs": { - "CreateFileSystemOntapConfiguration$DeploymentType": "

Specifies the FSx for ONTAP file system deployment type to use in creating the file system.

  • MULTI_AZ_1 - (Default) A high availability file system configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability.

  • SINGLE_AZ_1 - A file system configured for Single-AZ redundancy.

For information about the use cases for Multi-AZ and Single-AZ deployments, refer to Choosing a file system deployment type.

", - "OntapFileSystemConfiguration$DeploymentType": "

Specifies the FSx for ONTAP file system deployment type in use in the file system.

  • MULTI_AZ_1 - (Default) A high availability file system configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability.

  • SINGLE_AZ_1 - A file system configured for Single-AZ redundancy.

For information about the use cases for Multi-AZ and Single-AZ deployments, refer to Choosing Multi-AZ or Single-AZ file system deployment.

" + "CreateFileSystemOntapConfiguration$DeploymentType": "

Specifies the FSx for ONTAP file system deployment type to use in creating the file system.

  • MULTI_AZ_1 - (Default) A high availability file system configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability.

  • SINGLE_AZ_1 - A file system configured for Single-AZ redundancy.

  • SINGLE_AZ_2 - A file system configured with multiple high-availability (HA) pairs for Single-AZ redundancy.

For information about the use cases for Multi-AZ and Single-AZ deployments, refer to Choosing a file system deployment type.

", + "OntapFileSystemConfiguration$DeploymentType": "

Specifies the FSx for ONTAP file system deployment type in use in the file system.

  • MULTI_AZ_1 - (Default) A high availability file system configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability.

  • SINGLE_AZ_1 - A file system configured for Single-AZ redundancy.

  • SINGLE_AZ_2 - A file system configured with multiple high-availability (HA) pairs for Single-AZ redundancy.

For information about the use cases for Multi-AZ and Single-AZ deployments, refer to Choosing Multi-AZ or Single-AZ file system deployment.

" } }, "OntapEndpointIpAddresses": { @@ -1890,8 +1959,9 @@ "OpenZFSCopyStrategy": { "base": null, "refs": { - "CreateOpenZFSOriginSnapshotConfiguration$CopyStrategy": "

The strategy used when copying data from the snapshot to the new volume.

  • CLONE - The new volume references the data in the origin snapshot. Cloning a snapshot is faster than copying data from the snapshot to a new volume and doesn't consume disk throughput. However, the origin snapshot can't be deleted if there is a volume using its copied data.

  • FULL_COPY - Copies all data from the snapshot to the new volume.

", - "OpenZFSOriginSnapshotConfiguration$CopyStrategy": "

The strategy used when copying data from the snapshot to the new volume.

  • CLONE - The new volume references the data in the origin snapshot. Cloning a snapshot is faster than copying the data from a snapshot to a new volume and doesn't consume disk throughput. However, the origin snapshot can't be deleted if there is a volume using its copied data.

  • FULL_COPY - Copies all data from the snapshot to the new volume.

" + "CopySnapshotAndUpdateVolumeRequest$CopyStrategy": "

Specifies the strategy to use when copying data from a snapshot to the volume.

  • FULL_COPY - Copies all data from the snapshot to the volume.

  • INCREMENTAL_COPY - Copies only the snapshot data that's changed since the previous replication.

CLONE isn't a valid copy strategy option for the CopySnapshotAndUpdateVolume operation.

", + "CreateOpenZFSOriginSnapshotConfiguration$CopyStrategy": "

Specifies the strategy used when copying data from the snapshot to the new volume.

  • CLONE - The new volume references the data in the origin snapshot. Cloning a snapshot is faster than copying data from the snapshot to a new volume and doesn't consume disk throughput. However, the origin snapshot can't be deleted if there is a volume using its copied data.

  • FULL_COPY - Copies all data from the snapshot to the new volume.

    Specify this option to create the volume from a snapshot on another FSx for OpenZFS file system.

The INCREMENTAL_COPY option is only for updating an existing volume by using a snapshot from another FSx for OpenZFS file system. For more information, see CopySnapshotAndUpdateVolume.

", + "OpenZFSOriginSnapshotConfiguration$CopyStrategy": "

The strategy used when copying data from the snapshot to the new volume.

  • CLONE - The new volume references the data in the origin snapshot. Cloning a snapshot is faster than copying the data from a snapshot to a new volume and doesn't consume disk throughput. However, the origin snapshot can't be deleted if there is a volume using its copied data.

  • FULL_COPY - Copies all data from the snapshot to the new volume.

The INCREMENTAL_COPY option is only for updating an existing volume by using a snapshot from another FSx for OpenZFS file system. For more information, see CopySnapshotAndUpdateVolume.

" } }, "OpenZFSCreateRootVolumeConfiguration": { @@ -1950,7 +2020,7 @@ } }, "OpenZFSOriginSnapshotConfiguration": { - "base": "

The snapshot configuration to use when creating an OpenZFS volume from a snapshot.

", + "base": "

The snapshot configuration used when creating an Amazon FSx for OpenZFS volume from a snapshot.

", "refs": { "OpenZFSVolumeConfiguration$OriginSnapshot": "

The configuration object that specifies the snapshot to use as the origin of the data for the volume.

" } @@ -2002,7 +2072,8 @@ "CreateFileCacheLustreConfiguration$PerUnitStorageThroughput": "

Provisions the amount of read and write throughput for each 1 tebibyte (TiB) of cache storage capacity, in MB/s/TiB. The only supported value is 1000.

", "CreateFileSystemLustreConfiguration$PerUnitStorageThroughput": "

Required with PERSISTENT_1 and PERSISTENT_2 deployment types, provisions the amount of read and write throughput for each 1 tebibyte (TiB) of file system storage capacity, in MB/s/TiB. File system throughput capacity is calculated by multiplying file system storage capacity (TiB) by the PerUnitStorageThroughput (MB/s/TiB). For a 2.4-TiB file system, provisioning 50 MB/s/TiB of PerUnitStorageThroughput yields 120 MB/s of file system throughput. You pay for the amount of throughput that you provision.

Valid values:

  • For PERSISTENT_1 SSD storage: 50, 100, 200 MB/s/TiB.

  • For PERSISTENT_1 HDD storage: 12, 40 MB/s/TiB.

  • For PERSISTENT_2 SSD storage: 125, 250, 500, 1000 MB/s/TiB.

", "FileCacheLustreConfiguration$PerUnitStorageThroughput": "

Per unit storage throughput represents the megabytes per second of read or write throughput per 1 tebibyte of storage provisioned. Cache throughput capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput (MB/s/TiB). The only supported value is 1000.

", - "LustreFileSystemConfiguration$PerUnitStorageThroughput": "

Per unit storage throughput represents the megabytes per second of read or write throughput per 1 tebibyte of storage provisioned. File system throughput capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput (MB/s/TiB). This option is only valid for PERSISTENT_1 and PERSISTENT_2 deployment types.

Valid values:

  • For PERSISTENT_1 SSD storage: 50, 100, 200.

  • For PERSISTENT_1 HDD storage: 12, 40.

  • For PERSISTENT_2 SSD storage: 125, 250, 500, 1000.

" + "LustreFileSystemConfiguration$PerUnitStorageThroughput": "

Per unit storage throughput represents the megabytes per second of read or write throughput per 1 tebibyte of storage provisioned. File system throughput capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput (MB/s/TiB). This option is only valid for PERSISTENT_1 and PERSISTENT_2 deployment types.

Valid values:

  • For PERSISTENT_1 SSD storage: 50, 100, 200.

  • For PERSISTENT_1 HDD storage: 12, 40.

  • For PERSISTENT_2 SSD storage: 125, 250, 500, 1000.

", + "UpdateFileSystemLustreConfiguration$PerUnitStorageThroughput": "

The throughput of an Amazon FSx for Lustre Persistent SSD-based file system, measured in megabytes per second per tebibyte (MB/s/TiB). You can increase or decrease your file system's throughput. Valid values depend on the deployment type of the file system, as follows:

  • For PERSISTENT_1 SSD-based deployment types, valid values are 50, 100, and 200 MB/s/TiB.

  • For PERSISTENT_2 SSD-based deployment types, valid values are 125, 250, 500, and 1000 MB/s/TiB.

For more information, see Managing throughput capacity.

" } }, "PrivilegedDelete": { @@ -2059,6 +2130,12 @@ "DataRepositoryTaskStatus$ReleasedCapacity": "

The total amount of data, in GiB, released by an Amazon File Cache AUTO_RELEASE_DATA task that automatically releases files from the cache.

" } }, + "RemainingTransferBytes": { + "base": null, + "refs": { + "AdministrativeAction$RemainingTransferBytes": "

The remaining bytes to transfer for the FSx for OpenZFS snapshot that you're copying.

" + } + }, "ReportFormat": { "base": null, "refs": { @@ -2089,6 +2166,7 @@ "refs": { "ActiveDirectoryBackupAttributes$ResourceARN": null, "Backup$ResourceARN": "

The Amazon Resource Name (ARN) for the backup resource.

", + "CopySnapshotAndUpdateVolumeRequest$SourceSnapshotARN": null, "CreateOpenZFSOriginSnapshotConfiguration$SnapshotARN": null, "DataRepositoryAssociation$ResourceARN": null, "DataRepositoryTask$ResourceARN": null, @@ -2098,6 +2176,7 @@ "ListTagsForResourceRequest$ResourceARN": "

The ARN of the Amazon FSx resource that will have its tags listed.

", "NotServiceResourceError$ResourceARN": "

The Amazon Resource Name (ARN) of the non-Amazon FSx resource.

", "OpenZFSOriginSnapshotConfiguration$SnapshotARN": null, + "OpenZFSVolumeConfiguration$SourceSnapshotARN": null, "ResourceDoesNotSupportTagging$ResourceARN": "

The Amazon Resource Name (ARN) of the resource that doesn't support tagging.

", "ResourceNotFound$ResourceARN": "

The resource ARN of the resource that can't be found.

", "Snapshot$ResourceARN": null, @@ -2314,6 +2393,7 @@ "DeleteSnapshotRequest$SnapshotId": "

The ID of the snapshot that you want to delete.

", "DeleteSnapshotResponse$SnapshotId": "

The ID of the deleted snapshot.

", "OpenZFSVolumeConfiguration$RestoreToSnapshot": "

Specifies the ID of the snapshot to which the volume was restored.

", + "OpenZFSVolumeConfiguration$DestinationSnapshot": "

The ID of the snapshot that's being copied or was most recently copied to the destination volume.

", "RestoreVolumeFromSnapshotRequest$SnapshotId": "

The ID of the source snapshot. Specifies the snapshot that you are restoring from.

", "Snapshot$SnapshotId": "

The ID of the snapshot.

", "SnapshotIds$member": null, @@ -2350,7 +2430,7 @@ "base": null, "refs": { "CreateOntapVolumeConfiguration$SnapshotPolicy": "

Specifies the snapshot policy for the volume. There are three built-in snapshot policies:

  • default: This is the default policy. A maximum of six hourly snapshots taken five minutes past the hour. A maximum of two daily snapshots taken Monday through Saturday at 10 minutes after midnight. A maximum of two weekly snapshots taken every Sunday at 15 minutes after midnight.

  • default-1weekly: This policy is the same as the default policy except that it only retains one snapshot from the weekly schedule.

  • none: This policy does not take any snapshots. This policy can be assigned to volumes to prevent automatic snapshots from being taken.

You can also provide the name of a custom policy that you created with the ONTAP CLI or REST API.

For more information, see Snapshot policies in the Amazon FSx for NetApp ONTAP User Guide.

", - "OntapVolumeConfiguration$SnapshotPolicy": "

Specifies the snapshot policy for the volume. There are three built-in snapshot policies:

  • default: This is the default policy. A maximum of six hourly snapshots taken five minutes past the hour. A maximum of two daily snapshots taken Monday through Saturday at 10 minutes after midnight. A maximum of two weekly snapshots taken every Sunday at 15 minutes after midnight.

  • default-1weekly: This policy is the same as the default policy except that it only retains one snapshot from the weekly schedule.

  • none: This policy does not take any snapshots. This policy can be assigned to volumes to prevent automatic snapshots from being taken.

You can also provide the name of a custom policy that you created with the ONTAP CLI or REST API.

For more information, see Snapshot policies in the Amazon FSx for NetApp ONTAP User Guide.

", + "OntapVolumeConfiguration$SnapshotPolicy": "

Specifies the snapshot policy for the volume. There are three built-in snapshot policies:

  • default: This is the default policy. A maximum of six hourly snapshots taken five minutes past the hour. A maximum of two daily snapshots taken Monday through Saturday at 10 minutes after midnight. A maximum of two weekly snapshots taken every Sunday at 15 minutes after midnight.

  • default-1weekly: This policy is the same as the default policy except that it only retains one snapshot from the weekly schedule.

  • none: This policy does not take any snapshots. This policy can be assigned to volumes to prevent automatic snapshots from being taken.

You can also provide the name of a custom policy that you created with the ONTAP CLI or REST API.

For more information, see Snapshot policies in the Amazon FSx for NetApp ONTAP User Guide.

", "UpdateOntapVolumeConfiguration$SnapshotPolicy": "

Specifies the snapshot policy for the volume. There are three built-in snapshot policies:

  • default: This is the default policy. A maximum of six hourly snapshots taken five minutes past the hour. A maximum of two daily snapshots taken Monday through Saturday at 10 minutes after midnight. A maximum of two weekly snapshots taken every Sunday at 15 minutes after midnight.

  • default-1weekly: This policy is the same as the default policy except that it only retains one snapshot from the weekly schedule.

  • none: This policy does not take any snapshots. This policy can be assigned to volumes to prevent automatic snapshots from being taken.

You can also provide the name of a custom policy that you created with the ONTAP CLI or REST API.

For more information, see Snapshot policies in the Amazon FSx for NetApp ONTAP User Guide.

" } }, @@ -2371,6 +2451,16 @@ "refs": { } }, + "StartMisconfiguredStateRecoveryRequest": { + "base": null, + "refs": { + } + }, + "StartMisconfiguredStateRecoveryResponse": { + "base": null, + "refs": { + } + }, "StartTime": { "base": null, "refs": { @@ -2380,18 +2470,18 @@ "Status": { "base": null, "refs": { - "AdministrativeAction$Status": "

Describes the status of the administrative action, as follows:

  • FAILED - Amazon FSx failed to process the administrative action successfully.

  • IN_PROGRESS - Amazon FSx is processing the administrative action.

  • PENDING - Amazon FSx is waiting to process the administrative action.

  • COMPLETED - Amazon FSx has finished processing the administrative task.

  • UPDATED_OPTIMIZING - For a storage-capacity increase update, Amazon FSx has updated the file system with the new storage capacity, and is now performing the storage-optimization process.

" + "AdministrativeAction$Status": "

The status of the administrative action, as follows:

  • FAILED - Amazon FSx failed to process the administrative action successfully.

  • IN_PROGRESS - Amazon FSx is processing the administrative action.

  • PENDING - Amazon FSx is waiting to process the administrative action.

  • COMPLETED - Amazon FSx has finished processing the administrative task.

  • UPDATED_OPTIMIZING - For a storage-capacity increase update, Amazon FSx has updated the file system with the new storage capacity, and is now performing the storage-optimization process.

" } }, "StorageCapacity": { "base": "

Specifies the file system's storage capacity, in gibibytes (GiB).

", "refs": { "CreateFileCacheRequest$StorageCapacity": "

The storage capacity of the cache in gibibytes (GiB). Valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.

", - "CreateFileSystemFromBackupRequest$StorageCapacity": "

Sets the storage capacity of the OpenZFS file system that you're creating from a backup, in gibibytes (GiB). Valid values are from 64 GiB up to 524,288 GiB (512 TiB). However, the value that you specify must be equal to or greater than the backup's storage capacity value. If you don't use the StorageCapacity parameter, the default is the backup's StorageCapacity value.

If used to create a file system other than OpenZFS, you must provide a value that matches the backup's StorageCapacity value. If you provide any other value, Amazon FSx responds with a 400 Bad Request.

", - "CreateFileSystemRequest$StorageCapacity": "

Sets the storage capacity of the file system that you're creating, in gibibytes (GiB).

FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the value that you set for StorageType and the Lustre DeploymentType, as follows:

  • For SCRATCH_2, PERSISTENT_2 and PERSISTENT_1 deployment types using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.

  • For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.

  • For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB.

FSx for ONTAP file systems - The amount of storage capacity that you can configure is from 1024 GiB up to 196,608 GiB (192 TiB).

FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB up to 524,288 GiB (512 TiB).

FSx for Windows File Server file systems - The amount of storage capacity that you can configure depends on the value that you set for StorageType as follows:

  • For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB).

  • For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB).

", + "CreateFileSystemFromBackupRequest$StorageCapacity": "

Sets the storage capacity of the OpenZFS file system that you're creating from a backup, in gibibytes (GiB). Valid values are from 64 GiB up to 524,288 GiB (512 TiB). However, the value that you specify must be equal to or greater than the backup's storage capacity value. If you don't use the StorageCapacity parameter, the default is the backup's StorageCapacity value.

If used to create a file system other than OpenZFS, you must provide a value that matches the backup's StorageCapacity value. If you provide any other value, Amazon FSx responds with with an HTTP status code 400 Bad Request.

", + "CreateFileSystemRequest$StorageCapacity": "

Sets the storage capacity of the file system that you're creating, in gibibytes (GiB).

FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the value that you set for StorageType and the Lustre DeploymentType, as follows:

  • For SCRATCH_2, PERSISTENT_2 and PERSISTENT_1 deployment types using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.

  • For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.

  • For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB.

FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the value of the HAPairs property. The minimum value is calculated as 1,024 * HAPairs and the maxium is calculated as 524,288 * HAPairs..

FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB up to 524,288 GiB (512 TiB).

FSx for Windows File Server file systems - The amount of storage capacity that you can configure depends on the value that you set for StorageType as follows:

  • For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB).

  • For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB).

", "FileCache$StorageCapacity": "

The storage capacity of the cache in gibibytes (GiB).

", "FileCacheCreating$StorageCapacity": "

The storage capacity of the cache in gibibytes (GiB).

", - "FileSystem$StorageCapacity": "

The storage capacity of the file system in gibibytes (GiB).

", + "FileSystem$StorageCapacity": "

The storage capacity of the file system in gibibytes (GiB).

Amazon FSx responds with an HTTP status code 400 (Bad Request) if the value of StorageCapacity is outside of the minimum or maximum values.

", "UpdateFileSystemRequest$StorageCapacity": "

Use this parameter to increase the storage capacity of an FSx for Windows File Server, FSx for Lustre, FSx for OpenZFS, or FSx for ONTAP file system. Specifies the storage capacity target value, in GiB, to increase the storage capacity for the file system that you're updating.

You can't make a storage capacity increase request if there is an existing storage capacity increase request in progress.

For Lustre file systems, the storage capacity target value can be the following:

  • For SCRATCH_2, PERSISTENT_1, and PERSISTENT_2 SSD deployment types, valid values are in multiples of 2400 GiB. The value must be greater than the current storage capacity.

  • For PERSISTENT HDD file systems, valid values are multiples of 6000 GiB for 12-MBps throughput per TiB file systems and multiples of 1800 GiB for 40-MBps throughput per TiB file systems. The values must be greater than the current storage capacity.

  • For SCRATCH_1 file systems, you can't increase the storage capacity.

For more information, see Managing storage and throughput capacity in the FSx for Lustre User Guide.

For FSx for OpenZFS file systems, the storage capacity target value must be at least 10 percent greater than the current storage capacity value. For more information, see Managing storage capacity in the FSx for OpenZFS User Guide.

For Windows file systems, the storage capacity target value must be at least 10 percent greater than the current storage capacity value. To increase storage capacity, the file system must have at least 16 MBps of throughput capacity. For more information, see Managing storage capacity in the Amazon FSxfor Windows File Server User Guide.

For ONTAP file systems, the storage capacity target value must be at least 10 percent greater than the current storage capacity value. For more information, see Managing storage capacity and provisioned IOPS in the Amazon FSx for NetApp ONTAP User Guide.

" } }, @@ -2640,6 +2730,14 @@ "DescribeDataRepositoryTasksRequest$TaskIds": "

(Optional) IDs of the tasks whose descriptions you want to retrieve (String).

" } }, + "ThroughputCapacityPerHAPair": { + "base": null, + "refs": { + "CreateFileSystemOntapConfiguration$ThroughputCapacityPerHAPair": "

Use to choose the throughput capacity per HA pair, rather than the total throughput for the file system.

This field and ThroughputCapacity cannot be defined in the same API call, but one is required.

This field and ThroughputCapacity are the same for file systems with one HA pair.

  • For SINGLE_AZ_1 and MULTI_AZ_1, valid values are 128, 256, 512, 1024, 2048, or 4096 MBps.

  • For SINGLE_AZ_2, valid values are 3072 or 6144 MBps.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The value of ThroughputCapacity and ThroughputCapacityPerHAPair are not the same value

  • The value of ThroughputCapacityPerHAPair is not a valid value.

", + "OntapFileSystemConfiguration$ThroughputCapacityPerHAPair": "

Use to choose the throughput capacity per HA pair. When the value of HAPairs is equal to 1, the value of ThroughputCapacityPerHAPair is the total throughput for the file system.

This field and ThroughputCapacity cannot be defined in the same API call, but one is required.

This field and ThroughputCapacity are the same for file systems with one HA pair.

  • For SINGLE_AZ_1 and MULTI_AZ_1, valid values are 128, 256, 512, 1024, 2048, or 4096 MBps.

  • For SINGLE_AZ_2, valid values are 3072 or 6144 MBps.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The value of ThroughputCapacity and ThroughputCapacityPerHAPair are not the same value.

  • The value of deployment type is SINGLE_AZ_2 and ThroughputCapacity / ThroughputCapacityPerHAPair is a valid HA pair (a value between 2 and 6).

  • The value of ThroughputCapacityPerHAPair is not a valid value.

", + "UpdateFileSystemOntapConfiguration$ThroughputCapacityPerHAPair": "

Use to choose the throughput capacity per HA pair, rather than the total throughput for the file system.

This field and ThroughputCapacity cannot be defined in the same API call, but one is required.

This field and ThroughputCapacity are the same for file systems with one HA pair.

  • For SINGLE_AZ_1 and MULTI_AZ_1, valid values are 128, 256, 512, 1024, 2048, or 4096 MBps.

  • For SINGLE_AZ_2, valid values are 3072 or 6144 MBps.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

The value of ThroughputCapacity and ThroughputCapacityPerHAPair are not the same value.

The value of ThroughputCapacityPerHAPair is not a valid value.

" + } + }, "TieringPolicy": { "base": "

Describes the data tiering policy for an ONTAP volume. When enabled, Amazon FSx for ONTAP's intelligent tiering automatically transitions a volume's data between the file system's primary storage and capacity pool storage based on your access patterns.

Valid tiering policies are the following:

  • SNAPSHOT_ONLY - (Default value) moves cold snapshots to the capacity pool storage tier.

  • AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns.

  • ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier.

  • NONE - keeps a volume's data in the primary storage tier, preventing it from being moved to the capacity pool tier.

", "refs": { @@ -2654,12 +2752,24 @@ "TieringPolicy$Name": "

Specifies the tiering policy used to transition data. Default value is SNAPSHOT_ONLY.

  • SNAPSHOT_ONLY - moves cold snapshots to the capacity pool storage tier.

  • AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns.

  • ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier.

  • NONE - keeps a volume's data in the primary storage tier, preventing it from being moved to the capacity pool tier.

" } }, + "TotalConstituents": { + "base": null, + "refs": { + "AggregateConfiguration$TotalConstituents": "

The total number of constituents this FlexGroup volume has. Not applicable for FlexVols.

" + } + }, "TotalCount": { "base": null, "refs": { "DataRepositoryTaskStatus$TotalCount": "

The total number of files that the task will process. While a task is executing, the sum of SucceededCount plus FailedCount may not equal TotalCount. When the task is complete, TotalCount equals the sum of SucceededCount plus FailedCount.

" } }, + "TotalTransferBytes": { + "base": null, + "refs": { + "AdministrativeAction$TotalTransferBytes": "

The number of bytes that have transferred for the FSx for OpenZFS snapshot that you're copying.

" + } + }, "UUID": { "base": null, "refs": { @@ -2760,6 +2870,28 @@ "UpdateVolumeRequest$OpenZFSConfiguration": "

The configuration of the OpenZFS volume that you are updating.

" } }, + "UpdateOpenZFSVolumeOption": { + "base": null, + "refs": { + "UpdateOpenZFSVolumeOptions$member": null + } + }, + "UpdateOpenZFSVolumeOptions": { + "base": null, + "refs": { + "CopySnapshotAndUpdateVolumeRequest$Options": "

Confirms that you want to delete data on the destination volume that wasn’t there during the previous snapshot replication.

Your replication will fail if you don’t include an option for a specific type of data and that data is on your destination. For example, if you don’t include DELETE_INTERMEDIATE_SNAPSHOTS and there are intermediate snapshots on the destination, you can’t copy the snapshot.

  • DELETE_INTERMEDIATE_SNAPSHOTS - Deletes snapshots on the destination volume that aren’t on the source volume.

  • DELETE_CLONED_VOLUMES - Deletes snapshot clones on the destination volume that aren't on the source volume.

  • DELETE_INTERMEDIATE_DATA - Overwrites snapshots on the destination volume that don’t match the source snapshot that you’re copying.

" + } + }, + "UpdateSharedVpcConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateSharedVpcConfigurationResponse": { + "base": null, + "refs": { + } + }, "UpdateSnaplockConfiguration": { "base": "

Updates the SnapLock configuration for an existing FSx for ONTAP volume.

", "refs": { @@ -2808,8 +2940,16 @@ "DurationSinceLastAccess$Value": "

An integer that represents the minimum amount of time (in days) since a file was last accessed in the file system. Only exported files with a MAX(atime, ctime, mtime) timestamp that is more than this amount of time in the past (relative to the task create time) will be released. The default of Value is 0. This is a required parameter.

If an exported file meets the last accessed time criteria, its file or directory path must also be specified in the Paths parameter of the operation in order for the file to be released.

" } }, + "VerboseFlag": { + "base": null, + "refs": { + "DescribeSharedVpcConfigurationResponse$EnableFsxRouteTableUpdatesFromParticipantAccounts": "

Indicates whether participant accounts can create FSx for ONTAP Multi-AZ file systems in shared subnets.

", + "UpdateSharedVpcConfigurationRequest$EnableFsxRouteTableUpdatesFromParticipantAccounts": "

Specifies whether participant accounts can create FSx for ONTAP Multi-AZ file systems in shared subnets. Set to true to enable or false to disable.

", + "UpdateSharedVpcConfigurationResponse$EnableFsxRouteTableUpdatesFromParticipantAccounts": "

Indicates whether participant accounts can create FSx for ONTAP Multi-AZ file systems in shared subnets.

" + } + }, "Volume": { - "base": "

Describes an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume.

", + "base": "

Describes an Amazon FSx volume.

", "refs": { "AdministrativeAction$TargetVolumeValues": null, "Backup$Volume": null, @@ -2827,6 +2967,14 @@ "UpdateOntapVolumeConfiguration$SizeInMegabytes": "

Specifies the size of the volume in megabytes.

" } }, + "VolumeCapacityBytes": { + "base": null, + "refs": { + "CreateOntapVolumeConfiguration$SizeInBytes": "

The configured size of the volume, in bytes.

", + "OntapVolumeConfiguration$SizeInBytes": "

The configured size of the volume, in bytes.

", + "UpdateOntapVolumeConfiguration$SizeInBytes": "

The configured size of the volume, in bytes.

" + } + }, "VolumeFilter": { "base": "

A filter used to restrict the results of describe calls for Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volumes. You can use multiple filters to return results that meet all applied filter requirements.

", "refs": { @@ -2860,6 +3008,8 @@ "VolumeId": { "base": null, "refs": { + "CopySnapshotAndUpdateVolumeRequest$VolumeId": "

Specifies the ID of the volume that you are copying the snapshot to.

", + "CopySnapshotAndUpdateVolumeResponse$VolumeId": "

The ID of the volume that you copied the snapshot to.

", "CreateBackupRequest$VolumeId": "

(Optional) The ID of the FSx for ONTAP volume to back up.

", "CreateOpenZFSVolumeConfiguration$ParentVolumeId": "

The ID of the volume to use as the parent volume of the volume that you are creating.

", "CreateSnapshotRequest$VolumeId": "

The ID of the volume that you are taking a snapshot of.

", @@ -2884,6 +3034,7 @@ "VolumeLifecycle": { "base": null, "refs": { + "CopySnapshotAndUpdateVolumeResponse$Lifecycle": "

The lifecycle state of the destination volume.

", "DeleteVolumeResponse$Lifecycle": "

The lifecycle state of the volume being deleted. If the DeleteVolume operation is successful, this value is DELETING.

", "RestoreVolumeFromSnapshotResponse$Lifecycle": "

The lifecycle state of the volume being restored.

", "Volume$Lifecycle": "

The lifecycle status of the volume.

  • AVAILABLE - The volume is fully available for use.

  • CREATED - The volume has been created.

  • CREATING - Amazon FSx is creating the new volume.

  • DELETING - Amazon FSx is deleting an existing volume.

  • FAILED - Amazon FSx was unable to create the volume.

  • MISCONFIGURED - The volume is in a failed but recoverable state.

  • PENDING - Amazon FSx hasn't started creating the volume.

" @@ -2909,6 +3060,13 @@ "OpenZFSVolumeConfiguration$VolumePath": "

The path to the volume from the root volume. For example, fsx/parentVolume/volume1.

" } }, + "VolumeStyle": { + "base": null, + "refs": { + "CreateOntapVolumeConfiguration$VolumeStyle": "

Use to specify the style of an ONTAP volume. For more information about FlexVols and FlexGroups, see Volume types in Amazon FSx for NetApp ONTAP User Guide.

", + "OntapVolumeConfiguration$VolumeStyle": "

Use to specify the style of an ONTAP volume. For more information about FlexVols and FlexGroups, see Volume types in Amazon FSx for NetApp ONTAP User Guide.

" + } + }, "VolumeType": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/fsx/2018-03-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/fsx/2018-03-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/fsx/2018-03-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/fsx/2018-03-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamelift/2015-10-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamelift/2015-10-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamelift/2015-10-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamelift/2015-10-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1187,7 +1187,8 @@ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"ConflictException"}, - {"shape":"InternalServiceException"} + {"shape":"InternalServiceException"}, + {"shape":"LimitExceededException"} ] }, "RegisterGameServer":{ @@ -1639,7 +1640,7 @@ ], "members":{ "TicketId":{"shape":"MatchmakingIdStringModel"}, - "PlayerIds":{"shape":"StringList"}, + "PlayerIds":{"shape":"PlayerIdsForAcceptMatch"}, "AcceptanceType":{"shape":"AcceptanceType"} } }, @@ -1952,7 +1953,8 @@ "Locations":{"shape":"LocationConfigurationList"}, "Tags":{"shape":"TagList"}, "ComputeType":{"shape":"ComputeType"}, - "AnywhereConfiguration":{"shape":"AnywhereConfiguration"} + "AnywhereConfiguration":{"shape":"AnywhereConfiguration"}, + "InstanceRoleCredentialsProvider":{"shape":"InstanceRoleCredentialsProvider"} } }, "CreateFleetLocationsInput":{ @@ -2127,7 +2129,7 @@ ], "members":{ "GameSessionId":{"shape":"ArnStringModel"}, - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "PlayerData":{"shape":"PlayerData"} } }, @@ -2772,7 +2774,7 @@ "type":"structure", "members":{ "GameSessionId":{"shape":"ArnStringModel"}, - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "PlayerSessionId":{"shape":"PlayerSessionId"}, "PlayerSessionStatusFilter":{"shape":"NonZeroAndMaxString"}, "Limit":{"shape":"PositiveInteger"}, @@ -2856,7 +2858,7 @@ "DesiredPlayerSession":{ "type":"structure", "members":{ - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "PlayerData":{"shape":"PlayerData"} } }, @@ -3190,7 +3192,8 @@ "InstanceRoleArn":{"shape":"NonEmptyString"}, "CertificateConfiguration":{"shape":"CertificateConfiguration"}, "ComputeType":{"shape":"ComputeType"}, - "AnywhereConfiguration":{"shape":"AnywhereConfiguration"} + "AnywhereConfiguration":{"shape":"AnywhereConfiguration"}, + "InstanceRoleCredentialsProvider":{"shape":"InstanceRoleCredentialsProvider"} } }, "FleetAttributesList":{ @@ -3885,6 +3888,10 @@ "type":"list", "member":{"shape":"Instance"} }, + "InstanceRoleCredentialsProvider":{ + "type":"string", + "enum":["SHARED_CREDENTIAL_FILE"] + }, "InstanceStatus":{ "type":"string", "enum":[ @@ -3927,7 +3934,8 @@ "type":"string", "max":128, "min":1, - "pattern":"^[0-9A-Fa-f\\:\\.]+" + "pattern":"^[0-9A-Fa-f\\:\\.]+", + "sensitive":true }, "IpPermission":{ "type":"structure", @@ -3940,7 +3948,7 @@ "members":{ "FromPort":{"shape":"PortNumber"}, "ToPort":{"shape":"PortNumber"}, - "IpRange":{"shape":"NonBlankString"}, + "IpRange":{"shape":"IpRange"}, "Protocol":{"shape":"IpProtocol"} } }, @@ -3956,6 +3964,11 @@ "UDP" ] }, + "IpRange":{ + "type":"string", + "pattern":"[^\\s]+", + "sensitive":true + }, "LargeGameSessionData":{ "type":"string", "max":262144, @@ -4238,7 +4251,7 @@ "MatchedPlayerSession":{ "type":"structure", "members":{ - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "PlayerSessionId":{"shape":"PlayerSessionId"} } }, @@ -4411,10 +4424,6 @@ "min":1, "pattern":".*\\S.*" }, - "NonBlankString":{ - "type":"string", - "pattern":"[^\\s]+" - }, "NonEmptyString":{ "type":"string", "min":1 @@ -4461,7 +4470,7 @@ "PlacedPlayerSession":{ "type":"structure", "members":{ - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "PlayerSessionId":{"shape":"PlayerSessionId"} } }, @@ -4472,7 +4481,7 @@ "Player":{ "type":"structure", "members":{ - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "PlayerAttributes":{"shape":"PlayerAttributeMap"}, "Team":{"shape":"NonZeroAndMaxString"}, "LatencyInMs":{"shape":"LatencyMap"} @@ -4507,16 +4516,28 @@ "key":{"shape":"NonZeroAndMaxString"}, "value":{"shape":"PlayerData"} }, + "PlayerId":{ + "type":"string", + "max":1024, + "min":1, + "sensitive":true + }, "PlayerIdList":{ "type":"list", - "member":{"shape":"NonZeroAndMaxString"}, + "member":{"shape":"PlayerId"}, "max":25, - "min":1 + "min":1, + "sensitive":true + }, + "PlayerIdsForAcceptMatch":{ + "type":"list", + "member":{"shape":"PlayerId"}, + "sensitive":true }, "PlayerLatency":{ "type":"structure", "members":{ - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "RegionIdentifier":{"shape":"NonZeroAndMaxString"}, "LatencyInMilliseconds":{"shape":"Float"} } @@ -4544,7 +4565,7 @@ "type":"structure", "members":{ "PlayerSessionId":{"shape":"PlayerSessionId"}, - "PlayerId":{"shape":"NonZeroAndMaxString"}, + "PlayerId":{"shape":"PlayerId"}, "GameSessionId":{"shape":"NonZeroAndMaxString"}, "FleetId":{"shape":"FleetId"}, "FleetArn":{"shape":"FleetArn"}, @@ -4591,7 +4612,8 @@ "PortNumber":{ "type":"integer", "max":60000, - "min":1 + "min":1, + "sensitive":true }, "PositiveInteger":{ "type":"integer", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamelift/2015-10-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamelift/2015-10-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamelift/2015-10-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamelift/2015-10-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,7 +6,7 @@ "ClaimGameServer": "

This operation is used with the Amazon GameLift FleetIQ solution and game server groups.

Locates an available game server and temporarily reserves it to host gameplay and players. This operation is called from a game client or client service (such as a matchmaker) to request hosting resources for a new game session. In response, Amazon GameLift FleetIQ locates an available game server, places it in CLAIMED status for 60 seconds, and returns connection information that players can use to connect to the game server.

To claim a game server, identify a game server group. You can also specify a game server ID, although this approach bypasses Amazon GameLift FleetIQ placement optimization. Optionally, include game data to pass to the game server at the start of a game session, such as a game map or player information. Add filter options to further restrict how a game server is chosen, such as only allowing game servers on ACTIVE instances to be claimed.

When a game server is successfully claimed, connection information is returned. A claimed game server's utilization status remains AVAILABLE while the claim status is set to CLAIMED for up to 60 seconds. This time period gives the game server time to update its status to UTILIZED after players join. If the game server's status is not updated within 60 seconds, the game server reverts to unclaimed status and is available to be claimed by another request. The claim time period is a fixed value and is not configurable.

If you try to claim a specific game server, this request will fail in the following cases:

  • If the game server utilization status is UTILIZED.

  • If the game server claim status is CLAIMED.

  • If the game server is running on an instance in DRAINING status and the provided filter option does not allow placing on DRAINING instances.

Learn more

Amazon GameLift FleetIQ Guide

", "CreateAlias": "

Creates an alias for a fleet. In most situations, you can use an alias ID in place of a fleet ID. An alias provides a level of abstraction for a fleet that is useful when redirecting player traffic from one fleet to another, such as when updating your game build.

Amazon GameLift supports two types of routing strategies for aliases: simple and terminal. A simple alias points to an active fleet. A terminal alias is used to display messaging or link to a URL instead of routing players to an active fleet. For example, you might use a terminal alias when a game version is no longer supported and you want to direct players to an upgrade site.

To create a fleet alias, specify an alias name, routing strategy, and optional description. Each simple alias can point to only one fleet, but a fleet can have multiple aliases. If successful, a new alias record is returned, including an alias ID and an ARN. You can reassign an alias to another fleet by calling UpdateAlias.

Related actions

All APIs by task

", "CreateBuild": "

Creates a new Amazon GameLift build resource for your game server binary files. Combine game server binaries into a zip file for use with Amazon GameLift.

When setting up a new game build for Amazon GameLift, we recommend using the CLI command upload-build . This helper command combines two tasks: (1) it uploads your build files from a file directory to an Amazon GameLift Amazon S3 location, and (2) it creates a new build resource.

You can use the CreateBuild operation in the following scenarios:

  • Create a new game build with build files that are in an Amazon S3 location under an Amazon Web Services account that you control. To use this option, you give Amazon GameLift access to the Amazon S3 bucket. With permissions in place, specify a build name, operating system, and the Amazon S3 storage location of your game build.

  • Upload your build files to a Amazon GameLift Amazon S3 location. To use this option, specify a build name and operating system. This operation creates a new build resource and also returns an Amazon S3 location with temporary access credentials. Use the credentials to manually upload your build files to the specified Amazon S3 location. For more information, see Uploading Objects in the Amazon S3 Developer Guide. After you upload build files to the Amazon GameLift Amazon S3 location, you can't update them.

If successful, this operation creates a new build resource with a unique build ID and places it in INITIALIZED status. A build must be in READY status before you can create fleets with it.

Learn more

Uploading Your Game

Create a Build with Files in Amazon S3

All APIs by task

", - "CreateFleet": "

Creates a fleet of Amazon Elastic Compute Cloud (Amazon EC2) instances to host your custom game server or Realtime Servers. Use this operation to configure the computing resources for your fleet and provide instructions for running game servers on each instance.

Most Amazon GameLift fleets can deploy instances to multiple locations, including the home Region (where the fleet is created) and an optional set of remote locations. Fleets that are created in the following Amazon Web Services Regions support multiple locations: us-east-1 (N. Virginia), us-west-2 (Oregon), eu-central-1 (Frankfurt), eu-west-1 (Ireland), ap-southeast-2 (Sydney), ap-northeast-1 (Tokyo), and ap-northeast-2 (Seoul). Fleets that are created in other Amazon GameLift Regions can deploy instances in the fleet's home Region only. All fleet instances use the same configuration regardless of location; however, you can adjust capacity settings and turn auto-scaling on/off for each location.

To create a fleet, choose the hardware for your instances, specify a game server build or Realtime script to deploy, and provide a runtime configuration to direct Amazon GameLift how to start and run game servers on each instance in the fleet. Set permissions for inbound traffic to your game servers, and enable optional features as needed. When creating a multi-location fleet, provide a list of additional remote locations.

If you need to debug your fleet, fetch logs, view performance metrics or other actions on the fleet, create the development fleet with port 22/3389 open. As a best practice, we recommend opening ports for remote access only when you need them and closing them when you're finished.

If successful, this operation creates a new Fleet resource and places it in NEW status, which prompts Amazon GameLift to initiate the fleet creation workflow.

Learn more

Setting up fleets

Debug fleet creation issues

Multi-location fleets

", + "CreateFleet": "

Creates a fleet of Amazon Elastic Compute Cloud (Amazon EC2) instances to host your custom game server or Realtime Servers. Use this operation to configure the computing resources for your fleet and provide instructions for running game servers on each instance.

Most Amazon GameLift fleets can deploy instances to multiple locations, including the home Region (where the fleet is created) and an optional set of remote locations. Fleets that are created in the following Amazon Web Services Regions support multiple locations: us-east-1 (N. Virginia), us-west-2 (Oregon), eu-central-1 (Frankfurt), eu-west-1 (Ireland), ap-southeast-2 (Sydney), ap-northeast-1 (Tokyo), and ap-northeast-2 (Seoul). Fleets that are created in other Amazon GameLift Regions can deploy instances in the fleet's home Region only. All fleet instances use the same configuration regardless of location; however, you can adjust capacity settings and turn auto-scaling on/off for each location.

To create a fleet, choose the hardware for your instances, specify a game server build or Realtime script to deploy, and provide a runtime configuration to direct Amazon GameLift how to start and run game servers on each instance in the fleet. Set permissions for inbound traffic to your game servers, and enable optional features as needed. When creating a multi-location fleet, provide a list of additional remote locations.

If you need to debug your fleet, fetch logs, view performance metrics or other actions on the fleet, create the development fleet with port 22/3389 open. As a best practice, we recommend opening ports for remote access only when you need them and closing them when you're finished.

If successful, this operation creates a new Fleet resource and places it in NEW status, which prompts Amazon GameLift to initiate the fleet creation workflow. You can track fleet creation by checking fleet status using DescribeFleetAttributes and DescribeFleetLocationAttributes/, or by monitoring fleet creation events using DescribeFleetEvents.

When the fleet status changes to ACTIVE, you can enable automatic scaling with PutScalingPolicy and set capacity for the home Region with UpdateFleetCapacity. When the status of each remote location reaches ACTIVE, you can set capacity by location using UpdateFleetCapacity.

Learn more

Setting up fleets

Debug fleet creation issues

Multi-location fleets

", "CreateFleetLocations": "

Adds remote locations to a fleet and begins populating the new locations with EC2 instances. The new instances conform to the fleet's instance type, auto-scaling, and other configuration settings.

This operation cannot be used with fleets that don't support remote locations. Fleets can have multiple locations only if they reside in Amazon Web Services Regions that support this feature and were created after the feature was released in March 2021.

To add fleet locations, specify the fleet to be updated and provide a list of one or more locations.

If successful, this operation returns the list of added locations with their status set to NEW. Amazon GameLift initiates the process of starting an instance in each added location. You can track the status of each new location by monitoring location creation events using DescribeFleetEvents.

Learn more

Setting up fleets

Multi-location fleets

", "CreateGameServerGroup": "

This operation is used with the Amazon GameLift FleetIQ solution and game server groups.

Creates a Amazon GameLift FleetIQ game server group for managing game hosting on a collection of Amazon Elastic Compute Cloud instances for game hosting. This operation creates the game server group, creates an Auto Scaling group in your Amazon Web Services account, and establishes a link between the two groups. You can view the status of your game server groups in the Amazon GameLift console. Game server group metrics and events are emitted to Amazon CloudWatch.

Before creating a new game server group, you must have the following:

  • An Amazon Elastic Compute Cloud launch template that specifies how to launch Amazon Elastic Compute Cloud instances with your game server build. For more information, see Launching an Instance from a Launch Template in the Amazon Elastic Compute Cloud User Guide.

  • An IAM role that extends limited access to your Amazon Web Services account to allow Amazon GameLift FleetIQ to create and interact with the Auto Scaling group. For more information, see Create IAM roles for cross-service interaction in the Amazon GameLift FleetIQ Developer Guide.

To create a new game server group, specify a unique group name, IAM role and Amazon Elastic Compute Cloud launch template, and provide a list of instance types that can be used in the group. You must also set initial maximum and minimum limits on the group's instance count. You can optionally set an Auto Scaling policy with target tracking based on a Amazon GameLift FleetIQ metric.

Once the game server group and corresponding Auto Scaling group are created, you have full access to change the Auto Scaling group's configuration as needed. Several properties that are set when creating a game server group, including maximum/minimum size and auto-scaling policy settings, must be updated directly in the Auto Scaling group. Keep in mind that some Auto Scaling group properties are periodically updated by Amazon GameLift FleetIQ as part of its balancing activities to optimize for availability and cost.

Learn more

Amazon GameLift FleetIQ Guide

", "CreateGameSession": "

Creates a multiplayer game session for players in a specific fleet location. This operation prompts an available server process to start a game session and retrieves connection information for the new game session. As an alternative, consider using the Amazon GameLift game session placement feature with StartGameSessionPlacement , which uses the FleetIQ algorithm and queues to optimize the placement process.

When creating a game session, you specify exactly where you want to place it and provide a set of game session configuration settings. The target fleet must be in ACTIVE status.

You can use this operation in the following ways:

  • To create a game session on an instance in a fleet's home Region, provide a fleet or alias ID along with your game session configuration.

  • To create a game session on an instance in a fleet's remote location, provide a fleet or alias ID and a location name, along with your game session configuration.

  • To create a game session on an instance in an Anywhere fleet, specify the fleet's custom location.

If successful, Amazon GameLift initiates a workflow to start a new game session and returns a GameSession object containing the game session configuration and status. When the game session status is ACTIVE, it is updated with connection information and you can create player sessions for the game session. By default, newly created game sessions are open to new players. You can restrict new player access by using UpdateGameSession to change the game session's player session creation policy.

Amazon GameLift retains logs for active for 14 days. To access the logs, call GetGameSessionLogUrl to download the log files.

Available in Amazon GameLift Local.

Learn more

Start a game session

All APIs by task

", @@ -25,7 +25,7 @@ "DeleteFleetLocations": "

Removes locations from a multi-location fleet. When deleting a location, all game server process and all instances that are still active in the location are shut down.

To delete fleet locations, identify the fleet ID and provide a list of the locations to be deleted.

If successful, GameLift sets the location status to DELETING, and begins to shut down existing server processes and terminate instances in each location being deleted. When completed, the location status changes to TERMINATED.

Learn more

Setting up Amazon GameLift fleets

", "DeleteGameServerGroup": "

This operation is used with the Amazon GameLift FleetIQ solution and game server groups.

Terminates a game server group and permanently deletes the game server group record. You have several options for how these resources are impacted when deleting the game server group. Depending on the type of delete operation selected, this operation might affect these resources:

  • The game server group

  • The corresponding Auto Scaling group

  • All game servers that are currently running in the group

To delete a game server group, identify the game server group to delete and specify the type of delete operation to initiate. Game server groups can only be deleted if they are in ACTIVE or ERROR status.

If the delete request is successful, a series of operations are kicked off. The game server group status is changed to DELETE_SCHEDULED, which prevents new game servers from being registered and stops automatic scaling activity. Once all game servers in the game server group are deregistered, Amazon GameLift FleetIQ can begin deleting resources. If any of the delete operations fail, the game server group is placed in ERROR status.

Amazon GameLift FleetIQ emits delete events to Amazon CloudWatch.

Learn more

Amazon GameLift FleetIQ Guide

", "DeleteGameSessionQueue": "

Deletes a game session queue. Once a queue is successfully deleted, unfulfilled StartGameSessionPlacement requests that reference the queue will fail. To delete a queue, specify the queue name.

", - "DeleteLocation": "

Deletes a custom location.

Before deleting a custom location, review any fleets currently using the custom location and deregister the location if it is in use. For more information see, DeregisterCompute.

", + "DeleteLocation": "

Deletes a custom location.

Before deleting a custom location, review any fleets currently using the custom location and deregister the location if it is in use. For more information, see DeregisterCompute.

", "DeleteMatchmakingConfiguration": "

Permanently removes a FlexMatch matchmaking configuration. To delete, specify the configuration name. A matchmaking configuration cannot be deleted if it is being used in any active matchmaking tickets.

", "DeleteMatchmakingRuleSet": "

Deletes an existing matchmaking rule set. To delete the rule set, provide the rule set name. Rule sets cannot be deleted if they are currently being used by a matchmaking configuration.

Learn more

", "DeleteScalingPolicy": "

Deletes a fleet scaling policy. Once deleted, the policy is no longer in force and Amazon GameLift removes all record of it. To delete a scaling policy, specify both the scaling policy name and the fleet ID it is associated with.

To temporarily suspend scaling policies, use StopFleetActions. This operation suspends all policies for the fleet.

", @@ -267,7 +267,7 @@ "BuildIdOrArn": { "base": null, "refs": { - "CreateFleetInput$BuildId": "

The unique identifier for a custom game server build to be deployed on fleet instances. You can use either the build ID or ARN. The build must be uploaded to Amazon GameLift and in READY status. This fleet property cannot be changed later.

", + "CreateFleetInput$BuildId": "

The unique identifier for a custom game server build to be deployed on fleet instances. You can use either the build ID or ARN. The build must be uploaded to Amazon GameLift and in READY status. This fleet property can't be changed after the fleet is created.

", "DeleteBuildInput$BuildId": "

A unique identifier for the build to delete. You can use either the build ID or ARN value.

", "DescribeBuildInput$BuildId": "

A unique identifier for the build to retrieve properties for. You can use either the build ID or ARN value.

", "ListFleetsInput$BuildId": "

A unique identifier for the build to request fleets for. Use this parameter to return only fleets using a specified build. Use either the build ID or ARN value.

", @@ -1244,8 +1244,8 @@ "FleetType": { "base": null, "refs": { - "CreateFleetInput$FleetType": "

Indicates whether to use On-Demand or Spot instances for this fleet. By default, this property is set to ON_DEMAND. Learn more about when to use On-Demand versus Spot Instances. This property cannot be changed after the fleet is created.

", - "FleetAttributes$FleetType": "

Indicates whether to use On-Demand or Spot instances for this fleet. By default, this property is set to ON_DEMAND. Learn more about when to use On-Demand versus Spot Instances. This property cannot be changed after the fleet is created.

" + "CreateFleetInput$FleetType": "

Indicates whether to use On-Demand or Spot instances for this fleet. By default, this property is set to ON_DEMAND. Learn more about when to use On-Demand versus Spot Instances. This fleet property can't be changed after the fleet is created.

", + "FleetAttributes$FleetType": "

Indicates whether to use On-Demand or Spot instances for this fleet. By default, this property is set to ON_DEMAND. Learn more about when to use On-Demand versus Spot Instances. This fleet property can't be changed after the fleet is created.

" } }, "FleetUtilization": { @@ -1760,6 +1760,13 @@ "DescribeInstancesOutput$Instances": "

A collection of objects containing properties for each instance returned.

" } }, + "InstanceRoleCredentialsProvider": { + "base": null, + "refs": { + "CreateFleetInput$InstanceRoleCredentialsProvider": "

Prompts Amazon GameLift to generate a shared credentials file for the IAM role defined in InstanceRoleArn. The shared credentials file is stored on each fleet instance and refreshed as needed. Use shared credentials for applications that are deployed along with the game server executable, if the game server is integrated with server SDK version 5.x. For more information about using shared credentials, see Communicate with other Amazon Web Services resources from your fleets.

", + "FleetAttributes$InstanceRoleCredentialsProvider": "

Indicates that fleet instances maintain a shared credentials file for the IAM role defined in InstanceRoleArn. Shared credentials allow applications that are deployed with the game server executable to communicate with other Amazon Web Services resources. This property is used only when the game server is integrated with the server SDK version 5.x. For more information about using shared credentials, see Communicate with other Amazon Web Services resources from your fleets.

" + } + }, "InstanceStatus": { "base": null, "refs": { @@ -1827,6 +1834,12 @@ "IpPermission$Protocol": "

The network communication protocol used by the fleet.

" } }, + "IpRange": { + "base": null, + "refs": { + "IpPermission$IpRange": "

A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".

" + } + }, "LargeGameSessionData": { "base": null, "refs": { @@ -2290,12 +2303,6 @@ "UpdateAliasInput$Name": "

A descriptive label that is associated with an alias. Alias names do not need to be unique.

" } }, - "NonBlankString": { - "base": null, - "refs": { - "IpPermission$IpRange": "

A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".

" - } - }, "NonEmptyString": { "base": null, "refs": { @@ -2303,9 +2310,9 @@ "AwsCredentials$SecretAccessKey": "

The secret access key that can be used to sign requests.

", "AwsCredentials$SessionToken": "

The token that users must pass to the service API to use the temporary credentials.

", "ConflictException$Message": null, - "CreateFleetInput$InstanceRoleArn": "

A unique identifier for an IAM role that manages access to your Amazon Web Services services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN by using the IAM dashboard in the Amazon Web Services Management Console. Learn more about using on-box credentials for your game servers at Access external resources from a game server. This property cannot be changed after the fleet is created.

", + "CreateFleetInput$InstanceRoleArn": "

A unique identifier for an IAM role with access permissions to other Amazon Web Services services. Any application that runs on an instance in the fleet--including install scripts, server processes, and other processes--can use these permissions to interact with Amazon Web Services resources that you own or have access to. For more information about using the role with your game server builds, see Communicate with other Amazon Web Services resources from your fleets. This fleet property can't be changed after the fleet is created.

", "Event$Message": "

Additional information related to the event.

", - "FleetAttributes$InstanceRoleArn": "

A unique identifier for an IAM role that manages access to your Amazon Web Services services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN by using the IAM dashboard in the Amazon Web Services Management Console. Learn more about using on-box credentials for your game servers at Access external resources from a game server.

", + "FleetAttributes$InstanceRoleArn": "

A unique identifier for an IAM role with access permissions to other Amazon Web Services services. Any application that runs on an instance in the fleet--including install scripts, server processes, and other processes--can use these permissions to interact with Amazon Web Services resources that you own or have access to. For more information about using the role with your game server builds, see Communicate with other Amazon Web Services resources from your fleets.

", "FleetCapacityExceededException$Message": null, "GameSessionFullException$Message": null, "IdempotentParameterMismatchException$Message": null, @@ -2361,7 +2368,6 @@ "CreateGameSessionInput$Name": "

A descriptive label that is associated with a game session. Session names do not need to be unique.

", "CreateGameSessionInput$CreatorId": "

A unique identifier for a player or entity creating the game session.

If you add a resource creation limit policy to a fleet, the CreateGameSession operation requires a CreatorId. Amazon GameLift limits the number of game session creation requests with the same CreatorId in a specified time period.

If you your fleet doesn't have a resource creation limit policy and you provide a CreatorId in your CreateGameSession requests, Amazon GameLift limits requests to one request per CreatorId per second.

To not limit CreateGameSession requests with the same CreatorId, don't provide a CreatorId in your CreateGameSession request.

", "CreateMatchmakingConfigurationInput$Description": "

A human-readable description of the matchmaking configuration.

", - "CreatePlayerSessionInput$PlayerId": "

A unique identifier for a player. Player IDs are developer-defined.

", "CreateScriptInput$Name": "

A descriptive label that is associated with a script. Script names don't need to be unique. You can use UpdateScript to change this value later.

", "CreateScriptInput$Version": "

Version information associated with a build or script. Version strings don't need to be unique. You can use UpdateScript to change this value later.

", "CreateVpcPeeringAuthorizationInput$GameLiftAwsAccountId": "

A unique identifier for the Amazon Web Services account that you use to manage your Amazon GameLift fleet. You can find your Account ID in the Amazon Web Services Management Console under account settings.

", @@ -2398,13 +2404,11 @@ "DescribeMatchmakingConfigurationsOutput$NextToken": "

A token that indicates where to resume retrieving results on the next call to this operation. If no token is returned, these results represent the end of the list.

", "DescribeMatchmakingRuleSetsInput$NextToken": "

A token that indicates the start of the next sequential page of results. Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", "DescribeMatchmakingRuleSetsOutput$NextToken": "

A token that indicates where to resume retrieving results on the next call to this operation. If no token is returned, these results represent the end of the list.

", - "DescribePlayerSessionsInput$PlayerId": "

A unique identifier for a player to retrieve player sessions for.

", "DescribePlayerSessionsInput$PlayerSessionStatusFilter": "

Player session status to filter results on. Note that when a PlayerSessionId or PlayerId is provided in a DescribePlayerSessions request, then the PlayerSessionStatusFilter has no effect on the response.

Possible player session statuses include the following:

  • RESERVED -- The player session request has been received, but the player has not yet connected to the server process and/or been validated.

  • ACTIVE -- The player has been validated by the server process and is currently connected.

  • COMPLETED -- The player connection has been dropped.

  • TIMEDOUT -- A player session request was received, but the player did not connect and/or was not validated within the timeout limit (60 seconds).

", "DescribePlayerSessionsInput$NextToken": "

A token that indicates the start of the next sequential page of results. Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value. If a player session ID is specified, this parameter is ignored.

", "DescribePlayerSessionsOutput$NextToken": "

A token that indicates where to resume retrieving results on the next call to this operation. If no token is returned, these results represent the end of the list.

", "DescribeScalingPoliciesInput$NextToken": "

A token that indicates the start of the next sequential page of results. Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", "DescribeScalingPoliciesOutput$NextToken": "

A token that indicates where to resume retrieving results on the next call to this operation. If no token is returned, these results represent the end of the list.

", - "DesiredPlayerSession$PlayerId": "

A unique identifier for a player to associate with the player session.

", "Event$EventId": "

A unique identifier for a fleet event.

", "Event$ResourceId": "

A unique identifier for an event resource, such as a fleet ID.

", "Event$PreSignedLogUrl": "

Location of stored logs with additional detail that is related to the event. This is useful for debugging issues. The URL is valid for 15 minutes. You can also access fleet creation logs through the Amazon GameLift console.

", @@ -2429,17 +2433,11 @@ "ListGameServersOutput$NextToken": "

A token that indicates where to resume retrieving results on the next call to this operation. If no token is returned, these results represent the end of the list.

", "ListLocationsInput$NextToken": "

A token that indicates the start of the next sequential page of results. Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", "ListLocationsOutput$NextToken": "

A token that indicates where to resume retrieving results on the next call to this operation. If no token is returned, these results represent the end of the list.

", - "MatchedPlayerSession$PlayerId": "

A unique identifier for a player

", "MatchmakingConfiguration$Description": "

A descriptive label that is associated with matchmaking configuration.

", - "PlacedPlayerSession$PlayerId": "

A unique identifier for a player that is associated with this player session.

", - "Player$PlayerId": "

A unique identifier for a player

", "Player$Team": "

Name of the team that the player is assigned to in a match. Team names are defined in a matchmaking rule set.

", "PlayerAttributeMap$key": null, "PlayerDataMap$key": null, - "PlayerIdList$member": null, - "PlayerLatency$PlayerId": "

A unique identifier for a player associated with the latency data.

", "PlayerLatency$RegionIdentifier": "

Name of the Region that is associated with the latency value.

", - "PlayerSession$PlayerId": "

A unique identifier for a player that is associated with this player session.

", "PlayerSession$GameSessionId": "

A unique identifier for the game session that the player session is connected to.

", "PutScalingPolicyInput$Name": "

A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique. A fleet can have only one scaling policy with the same name.

", "PutScalingPolicyOutput$Name": "

A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique.

", @@ -2553,12 +2551,33 @@ "CreatePlayerSessionsInput$PlayerDataMap": "

Map of string pairs, each specifying a player ID and a set of developer-defined information related to the player. Amazon GameLift does not use this data, so it can be formatted as needed for use in the game. Any player data strings for player IDs that are not included in the PlayerIds parameter are ignored.

" } }, + "PlayerId": { + "base": null, + "refs": { + "CreatePlayerSessionInput$PlayerId": "

A unique identifier for a player. Player IDs are developer-defined.

", + "DescribePlayerSessionsInput$PlayerId": "

A unique identifier for a player to retrieve player sessions for.

", + "DesiredPlayerSession$PlayerId": "

A unique identifier for a player to associate with the player session.

", + "MatchedPlayerSession$PlayerId": "

A unique identifier for a player

", + "PlacedPlayerSession$PlayerId": "

A unique identifier for a player that is associated with this player session.

", + "Player$PlayerId": "

A unique identifier for a player

", + "PlayerIdList$member": null, + "PlayerIdsForAcceptMatch$member": null, + "PlayerLatency$PlayerId": "

A unique identifier for a player associated with the latency data.

", + "PlayerSession$PlayerId": "

A unique identifier for a player that is associated with this player session.

" + } + }, "PlayerIdList": { "base": null, "refs": { "CreatePlayerSessionsInput$PlayerIds": "

List of unique identifiers for the players to be added.

" } }, + "PlayerIdsForAcceptMatch": { + "base": null, + "refs": { + "AcceptMatchInput$PlayerIds": "

A unique identifier for a player delivering the response. This parameter can include one or multiple player IDs.

" + } + }, "PlayerLatency": { "base": "

Regional latency information for a player, used when requesting a new game session. This value indicates the amount of time lag that exists when the player is connected to a fleet in the specified Region. The relative difference between a player's latency values for multiple Regions are used to determine which fleets are best suited to place a new game session for the player.

", "refs": { @@ -2910,7 +2929,7 @@ "ScriptIdOrArn": { "base": null, "refs": { - "CreateFleetInput$ScriptId": "

The unique identifier for a Realtime configuration script to be deployed on fleet instances. You can use either the script ID or ARN. Scripts must be uploaded to Amazon GameLift prior to creating the fleet. This fleet property cannot be changed later.

", + "CreateFleetInput$ScriptId": "

The unique identifier for a Realtime configuration script to be deployed on fleet instances. You can use either the script ID or ARN. Scripts must be uploaded to Amazon GameLift prior to creating the fleet. This fleet property can't be changed after the fleet is created.

", "DeleteScriptInput$ScriptId": "

A unique identifier for the Realtime script to delete. You can use either the script ID or ARN value.

", "DescribeScriptInput$ScriptId": "

A unique identifier for the Realtime script to retrieve properties for. You can use either the script ID or ARN value.

", "ListFleetsInput$ScriptId": "

A unique identifier for the Realtime script to request fleets for. Use this parameter to return only fleets using a specified script. Use either the script ID or ARN value.

", @@ -3039,7 +3058,6 @@ "StringList": { "base": null, "refs": { - "AcceptMatchInput$PlayerIds": "

A unique identifier for a player delivering the response. This parameter can include one or multiple player IDs.

", "CreateFleetInput$LogPaths": "

This parameter is no longer used. To specify where Amazon GameLift should store log files once a server process shuts down, use the Amazon GameLift server API ProcessReady() and specify one or more directory paths in logParameters. For more information, see Initialize the server process in the Amazon GameLift Developer Guide.

", "FleetAttributes$LogPaths": "

This parameter is no longer used. Game session log paths are now defined using the Amazon GameLift server API ProcessReady() logParameters. See more information in the Server API Reference.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamelift/2015-10-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamelift/2015-10-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamelift/2015-10-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamelift/2015-10-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/api-2.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,2793 +0,0 @@ -{ - "metadata": { - "apiVersion": "2021-08-17", - "endpointPrefix": "gamesparks", - "jsonVersion": "1.1", - "protocol": "rest-json", - "serviceFullName": "GameSparks", - "serviceId": "GameSparks", - "signatureVersion": "v4", - "signingName": "gamesparks", - "uid": "gamesparks-2021-08-17" - }, - "operations": { - "CreateGame": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ConflictException" - }, - { - "shape": "InternalServerException" - }, - { - "shape": "ServiceQuotaExceededException" - } - ], - "http": { - "method": "POST", - "requestUri": "/game", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "CreateGameRequest" - }, - "name": "CreateGame", - "output": { - "shape": "CreateGameResult" - } - }, - "CreateSnapshot": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ConflictException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "POST", - "requestUri": "/game/{GameName}/snapshot", - "responseCode": 200 - }, - "input": { - "shape": "CreateSnapshotRequest" - }, - "name": "CreateSnapshot", - "output": { - "shape": "CreateSnapshotResult" - } - }, - "CreateStage": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ConflictException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "POST", - "requestUri": "/game/{GameName}/stage", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "CreateStageRequest" - }, - "name": "CreateStage", - "output": { - "shape": "CreateStageResult" - } - }, - "DeleteGame": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ConflictException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "DELETE", - "requestUri": "/game/{GameName}", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "DeleteGameRequest" - }, - "name": "DeleteGame", - "output": { - "shape": "DeleteGameResult" - } - }, - "DeleteStage": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ConflictException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "DELETE", - "requestUri": "/game/{GameName}/stage/{StageName}", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "DeleteStageRequest" - }, - "name": "DeleteStage", - "output": { - "shape": "DeleteStageResult" - } - }, - "DisconnectPlayer": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "POST", - "requestUri": "/runtime/game/{GameName}/stage/{StageName}/player/{PlayerId}/disconnect", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "DisconnectPlayerRequest" - }, - "name": "DisconnectPlayer", - "output": { - "shape": "DisconnectPlayerResult" - } - }, - "ExportSnapshot": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/snapshot/{SnapshotId}/export", - "responseCode": 200 - }, - "input": { - "shape": "ExportSnapshotRequest" - }, - "name": "ExportSnapshot", - "output": { - "shape": "ExportSnapshotResult" - } - }, - "GetExtension": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/extension/{Namespace}/{Name}", - "responseCode": 200 - }, - "input": { - "shape": "GetExtensionRequest" - }, - "name": "GetExtension", - "output": { - "shape": "GetExtensionResult" - } - }, - "GetExtensionVersion": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/extension/{Namespace}/{Name}/version/{ExtensionVersion}", - "responseCode": 200 - }, - "input": { - "shape": "GetExtensionVersionRequest" - }, - "name": "GetExtensionVersion", - "output": { - "shape": "GetExtensionVersionResult" - } - }, - "GetGame": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}", - "responseCode": 200 - }, - "input": { - "shape": "GetGameRequest" - }, - "name": "GetGame", - "output": { - "shape": "GetGameResult" - } - }, - "GetGameConfiguration": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/configuration", - "responseCode": 200 - }, - "input": { - "shape": "GetGameConfigurationRequest" - }, - "name": "GetGameConfiguration", - "output": { - "shape": "GetGameConfigurationResult" - } - }, - "GetGeneratedCodeJob": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/snapshot/{SnapshotId}/generated-sdk-code-job/{JobId}", - "responseCode": 200 - }, - "input": { - "shape": "GetGeneratedCodeJobRequest" - }, - "name": "GetGeneratedCodeJob", - "output": { - "shape": "GetGeneratedCodeJobResult" - } - }, - "GetPlayerConnectionStatus": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/runtime/game/{GameName}/stage/{StageName}/player/{PlayerId}/connection", - "responseCode": 200 - }, - "input": { - "shape": "GetPlayerConnectionStatusRequest" - }, - "name": "GetPlayerConnectionStatus", - "output": { - "shape": "GetPlayerConnectionStatusResult" - } - }, - "GetSnapshot": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/snapshot/{SnapshotId}", - "responseCode": 200 - }, - "input": { - "shape": "GetSnapshotRequest" - }, - "name": "GetSnapshot", - "output": { - "shape": "GetSnapshotResult" - } - }, - "GetStage": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/stage/{StageName}", - "responseCode": 200 - }, - "input": { - "shape": "GetStageRequest" - }, - "name": "GetStage", - "output": { - "shape": "GetStageResult" - } - }, - "GetStageDeployment": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/stage/{StageName}/deployment", - "responseCode": 200 - }, - "input": { - "shape": "GetStageDeploymentRequest" - }, - "name": "GetStageDeployment", - "output": { - "shape": "GetStageDeploymentResult" - } - }, - "ImportGameConfiguration": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - }, - { - "shape": "ServiceQuotaExceededException" - } - ], - "http": { - "method": "PUT", - "requestUri": "/game/{GameName}/configuration", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "ImportGameConfigurationRequest" - }, - "name": "ImportGameConfiguration", - "output": { - "shape": "ImportGameConfigurationResult" - } - }, - "ListExtensionVersions": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/extension/{Namespace}/{Name}/version", - "responseCode": 200 - }, - "input": { - "shape": "ListExtensionVersionsRequest" - }, - "name": "ListExtensionVersions", - "output": { - "shape": "ListExtensionVersionsResult" - } - }, - "ListExtensions": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/extension", - "responseCode": 200 - }, - "input": { - "shape": "ListExtensionsRequest" - }, - "name": "ListExtensions", - "output": { - "shape": "ListExtensionsResult" - } - }, - "ListGames": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game", - "responseCode": 200 - }, - "input": { - "shape": "ListGamesRequest" - }, - "name": "ListGames", - "output": { - "shape": "ListGamesResult" - } - }, - "ListGeneratedCodeJobs": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/snapshot/{SnapshotId}/generated-sdk-code-jobs", - "responseCode": 200 - }, - "input": { - "shape": "ListGeneratedCodeJobsRequest" - }, - "name": "ListGeneratedCodeJobs", - "output": { - "shape": "ListGeneratedCodeJobsResult" - } - }, - "ListSnapshots": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/snapshot", - "responseCode": 200 - }, - "input": { - "shape": "ListSnapshotsRequest" - }, - "name": "ListSnapshots", - "output": { - "shape": "ListSnapshotsResult" - } - }, - "ListStageDeployments": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/stage/{StageName}/deployments", - "responseCode": 200 - }, - "input": { - "shape": "ListStageDeploymentsRequest" - }, - "name": "ListStageDeployments", - "output": { - "shape": "ListStageDeploymentsResult" - } - }, - "ListStages": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/game/{GameName}/stage", - "responseCode": 200 - }, - "input": { - "shape": "ListStagesRequest" - }, - "name": "ListStages", - "output": { - "shape": "ListStagesResult" - } - }, - "ListTagsForResource": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "GET", - "requestUri": "/tags/{ResourceArn}", - "responseCode": 200 - }, - "input": { - "shape": "ListTagsForResourceRequest" - }, - "name": "ListTagsForResource", - "output": { - "shape": "ListTagsForResourceResult" - } - }, - "StartGeneratedCodeJob": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "POST", - "requestUri": "/game/{GameName}/snapshot/{SnapshotId}/generated-sdk-code-job", - "responseCode": 200 - }, - "input": { - "shape": "StartGeneratedCodeJobRequest" - }, - "name": "StartGeneratedCodeJob", - "output": { - "shape": "StartGeneratedCodeJobResult" - } - }, - "StartStageDeployment": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ConflictException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "POST", - "requestUri": "/game/{GameName}/stage/{StageName}/deployment", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "StartStageDeploymentRequest" - }, - "name": "StartStageDeployment", - "output": { - "shape": "StartStageDeploymentResult" - } - }, - "TagResource": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "POST", - "requestUri": "/tags/{ResourceArn}", - "responseCode": 200 - }, - "input": { - "shape": "TagResourceRequest" - }, - "name": "TagResource", - "output": { - "shape": "TagResourceResult" - } - }, - "UntagResource": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "DELETE", - "requestUri": "/tags/{ResourceArn}", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "UntagResourceRequest" - }, - "name": "UntagResource", - "output": { - "shape": "UntagResourceResult" - } - }, - "UpdateGame": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "PATCH", - "requestUri": "/game/{GameName}", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "UpdateGameRequest" - }, - "name": "UpdateGame", - "output": { - "shape": "UpdateGameResult" - } - }, - "UpdateGameConfiguration": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - }, - { - "shape": "ServiceQuotaExceededException" - } - ], - "http": { - "method": "PATCH", - "requestUri": "/game/{GameName}/configuration", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "UpdateGameConfigurationRequest" - }, - "name": "UpdateGameConfiguration", - "output": { - "shape": "UpdateGameConfigurationResult" - } - }, - "UpdateSnapshot": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "PATCH", - "requestUri": "/game/{GameName}/snapshot/{SnapshotId}", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "UpdateSnapshotRequest" - }, - "name": "UpdateSnapshot", - "output": { - "shape": "UpdateSnapshotResult" - } - }, - "UpdateStage": { - "errors": [ - { - "shape": "ValidationException" - }, - { - "shape": "AccessDeniedException" - }, - { - "shape": "ThrottlingException" - }, - { - "shape": "ResourceNotFoundException" - }, - { - "shape": "InternalServerException" - } - ], - "http": { - "method": "PATCH", - "requestUri": "/game/{GameName}/stage/{StageName}", - "responseCode": 200 - }, - "idempotent": true, - "input": { - "shape": "UpdateStageRequest" - }, - "name": "UpdateStage", - "output": { - "shape": "UpdateStageResult" - } - } - }, - "shapes": { - "ARN": { - "max": 2048, - "min": 20, - "pattern": "^[A-Za-z0-9:_/-]+$", - "type": "string" - }, - "AccessDeniedException": { - "error": { - "httpStatusCode": 403, - "senderFault": true - }, - "exception": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - }, - "ByteSize": { - "min": 0, - "type": "integer" - }, - "ClientToken": { - "max": 126, - "min": 33, - "type": "string" - }, - "ConflictException": { - "error": { - "httpStatusCode": 409, - "senderFault": true - }, - "exception": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - }, - "Connection": { - "members": { - "Created": { - "shape": "DateTime" - }, - "Id": { - "shape": "ConnectionId" - } - }, - "type": "structure" - }, - "ConnectionId": { - "max": 36, - "min": 1, - "type": "string" - }, - "ConnectionIdList": { - "member": { - "shape": "ConnectionId" - }, - "type": "list" - }, - "ConnectionList": { - "member": { - "shape": "Connection" - }, - "type": "list" - }, - "CreateGameRequest": { - "members": { - "ClientToken": { - "shape": "ClientToken" - }, - "Description": { - "shape": "GameDescription" - }, - "GameName": { - "shape": "GameName" - }, - "Tags": { - "shape": "TagMap" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "CreateGameResult": { - "members": { - "Game": { - "shape": "GameDetails" - } - }, - "type": "structure" - }, - "CreateSnapshotRequest": { - "members": { - "Description": { - "shape": "SnapshotDescription" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "CreateSnapshotResult": { - "members": { - "Snapshot": { - "shape": "SnapshotDetails" - } - }, - "type": "structure" - }, - "CreateStageRequest": { - "members": { - "ClientToken": { - "shape": "ClientToken" - }, - "Description": { - "shape": "StageDescription" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "Role": { - "shape": "RoleARN" - }, - "StageName": { - "shape": "StageName" - }, - "Tags": { - "shape": "TagMap" - } - }, - "required": [ - "GameName", - "Role", - "StageName" - ], - "type": "structure" - }, - "CreateStageResult": { - "members": { - "Stage": { - "shape": "StageDetails" - } - }, - "type": "structure" - }, - "DateTime": { - "timestampFormat": "iso8601", - "type": "timestamp" - }, - "DeleteGameRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "DeleteGameResult": { - "members": {}, - "type": "structure" - }, - "DeleteStageRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "StageName" - ], - "type": "structure" - }, - "DeleteStageResult": { - "members": {}, - "type": "structure" - }, - "DeploymentAction": { - "enum": [ - "DEPLOY", - "UNDEPLOY" - ], - "type": "string" - }, - "DeploymentId": { - "max": 128, - "min": 1, - "pattern": "^\\S(.*\\S)?$", - "type": "string" - }, - "DeploymentResult": { - "members": { - "Message": { - "shape": "Message" - }, - "ResultCode": { - "shape": "ResultCode" - } - }, - "type": "structure" - }, - "DeploymentState": { - "enum": [ - "PENDING", - "IN_PROGRESS", - "COMPLETED", - "FAILED" - ], - "type": "string" - }, - "DisconnectPlayerRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "PlayerId": { - "location": "uri", - "locationName": "PlayerId", - "shape": "PlayerId" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "PlayerId", - "StageName" - ], - "type": "structure" - }, - "DisconnectPlayerResult": { - "members": { - "DisconnectFailures": { - "shape": "ConnectionIdList" - }, - "DisconnectSuccesses": { - "shape": "ConnectionIdList" - } - }, - "type": "structure" - }, - "ExceptionMessage": { - "type": "string" - }, - "ExportSnapshotRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "SnapshotId": { - "location": "uri", - "locationName": "SnapshotId", - "shape": "SnapshotId" - } - }, - "required": [ - "GameName", - "SnapshotId" - ], - "type": "structure" - }, - "ExportSnapshotResult": { - "members": { - "S3Url": { - "shape": "S3PresignedUrl" - } - }, - "type": "structure" - }, - "ExtensionDescription": { - "max": 250, - "min": 0, - "pattern": "^\\S(.*\\S)?$|^$", - "type": "string" - }, - "ExtensionDetails": { - "members": { - "Description": { - "shape": "ExtensionDescription" - }, - "Name": { - "shape": "ExtensionName" - }, - "Namespace": { - "shape": "ExtensionNamespace" - } - }, - "type": "structure" - }, - "ExtensionDetailsList": { - "member": { - "shape": "ExtensionDetails" - }, - "type": "list" - }, - "ExtensionName": { - "max": 36, - "min": 1, - "pattern": "^[a-zA-Z0-9_-]+$", - "type": "string" - }, - "ExtensionNamespace": { - "max": 36, - "min": 1, - "pattern": "^[a-zA-Z0-9_-]+$", - "type": "string" - }, - "ExtensionVersion": { - "max": 20, - "min": 0, - "type": "string" - }, - "ExtensionVersionDetails": { - "members": { - "Name": { - "shape": "ExtensionName" - }, - "Namespace": { - "shape": "ExtensionNamespace" - }, - "Schema": { - "shape": "ExtensionVersionSchema" - }, - "Version": { - "shape": "ExtensionVersion" - } - }, - "type": "structure" - }, - "ExtensionVersionDetailsList": { - "member": { - "shape": "ExtensionVersionDetails" - }, - "type": "list" - }, - "ExtensionVersionSchema": { - "max": 2048, - "min": 0, - "type": "string" - }, - "GameConfigurationDetails": { - "members": { - "Created": { - "shape": "DateTime" - }, - "LastUpdated": { - "shape": "DateTime" - }, - "Sections": { - "shape": "Sections" - } - }, - "type": "structure" - }, - "GameDescription": { - "max": 250, - "min": 0, - "pattern": "^\\S(.*\\S)?$|^$", - "type": "string" - }, - "GameDetails": { - "members": { - "Arn": { - "shape": "ARN" - }, - "Created": { - "shape": "DateTime" - }, - "Description": { - "shape": "GameDescription" - }, - "EnableTerminationProtection": { - "shape": "GameTerminationProtection" - }, - "LastUpdated": { - "shape": "DateTime" - }, - "Name": { - "shape": "GameName" - }, - "State": { - "shape": "GameState" - }, - "Tags": { - "shape": "TagMap" - } - }, - "type": "structure" - }, - "GameKey": { - "max": 44, - "min": 1, - "type": "string" - }, - "GameName": { - "max": 36, - "min": 1, - "pattern": "^[a-zA-Z0-9_-]+$", - "type": "string" - }, - "GameSdkVersion": { - "max": 10, - "min": 5, - "pattern": "^((\\d|[1-9]\\d*)\\.(\\d|[0-9]\\d*)\\.(\\d|[0-9]\\d*)|LATEST)$", - "type": "string" - }, - "GameState": { - "enum": [ - "ACTIVE", - "DELETING" - ], - "type": "string" - }, - "GameSummary": { - "members": { - "Description": { - "shape": "GameDescription" - }, - "Name": { - "shape": "GameName" - }, - "State": { - "shape": "GameState" - }, - "Tags": { - "shape": "TagMap" - } - }, - "type": "structure" - }, - "GameSummaryList": { - "member": { - "shape": "GameSummary" - }, - "type": "list" - }, - "GameTerminationProtection": { - "type": "boolean" - }, - "GeneratedCodeJobDescription": { - "max": 250, - "min": 0, - "pattern": "^\\S(.*\\S)?$|^$", - "type": "string" - }, - "GeneratedCodeJobDetails": { - "members": { - "Description": { - "shape": "GeneratedCodeJobDescription" - }, - "ExpirationTime": { - "shape": "DateTime" - }, - "GeneratedCodeJobId": { - "shape": "GeneratedCodeJobId" - }, - "S3Url": { - "shape": "S3PresignedUrl" - }, - "Status": { - "shape": "GeneratedCodeJobState" - } - }, - "type": "structure" - }, - "GeneratedCodeJobDetailsList": { - "member": { - "shape": "GeneratedCodeJobDetails" - }, - "type": "list" - }, - "GeneratedCodeJobId": { - "pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$", - "type": "string" - }, - "GeneratedCodeJobState": { - "enum": [ - "IN_PROGRESS", - "COMPLETED", - "FAILED", - "PENDING" - ], - "type": "string" - }, - "Generator": { - "members": { - "GameSdkVersion": { - "shape": "GameSdkVersion" - }, - "Language": { - "shape": "Language" - }, - "TargetPlatform": { - "shape": "TargetPlatform" - } - }, - "type": "structure" - }, - "GetExtensionRequest": { - "members": { - "Name": { - "location": "uri", - "locationName": "Name", - "shape": "ExtensionName" - }, - "Namespace": { - "location": "uri", - "locationName": "Namespace", - "shape": "ExtensionNamespace" - } - }, - "required": [ - "Name", - "Namespace" - ], - "type": "structure" - }, - "GetExtensionResult": { - "members": { - "Extension": { - "shape": "ExtensionDetails" - } - }, - "type": "structure" - }, - "GetExtensionVersionRequest": { - "members": { - "ExtensionVersion": { - "location": "uri", - "locationName": "ExtensionVersion", - "shape": "ExtensionVersion" - }, - "Name": { - "location": "uri", - "locationName": "Name", - "shape": "ExtensionName" - }, - "Namespace": { - "location": "uri", - "locationName": "Namespace", - "shape": "ExtensionNamespace" - } - }, - "required": [ - "ExtensionVersion", - "Name", - "Namespace" - ], - "type": "structure" - }, - "GetExtensionVersionResult": { - "members": { - "ExtensionVersion": { - "shape": "ExtensionVersionDetails" - } - }, - "type": "structure" - }, - "GetGameConfigurationRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "Sections": { - "location": "querystring", - "locationName": "Sections", - "shape": "SectionList" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "GetGameConfigurationResult": { - "members": { - "GameConfiguration": { - "shape": "GameConfigurationDetails" - } - }, - "type": "structure" - }, - "GetGameRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "GetGameResult": { - "members": { - "Game": { - "shape": "GameDetails" - } - }, - "type": "structure" - }, - "GetGeneratedCodeJobRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "JobId": { - "location": "uri", - "locationName": "JobId", - "shape": "GeneratedCodeJobId" - }, - "SnapshotId": { - "location": "uri", - "locationName": "SnapshotId", - "shape": "SnapshotId" - } - }, - "required": [ - "GameName", - "JobId", - "SnapshotId" - ], - "type": "structure" - }, - "GetGeneratedCodeJobResult": { - "members": { - "GeneratedCodeJob": { - "shape": "GeneratedCodeJobDetails" - } - }, - "type": "structure" - }, - "GetPlayerConnectionStatusRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "PlayerId": { - "location": "uri", - "locationName": "PlayerId", - "shape": "PlayerId" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "PlayerId", - "StageName" - ], - "type": "structure" - }, - "GetPlayerConnectionStatusResult": { - "members": { - "Connections": { - "shape": "ConnectionList" - } - }, - "type": "structure" - }, - "GetSnapshotRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "Sections": { - "location": "querystring", - "locationName": "Sections", - "shape": "SectionList" - }, - "SnapshotId": { - "location": "uri", - "locationName": "SnapshotId", - "shape": "SnapshotId" - } - }, - "required": [ - "GameName", - "SnapshotId" - ], - "type": "structure" - }, - "GetSnapshotResult": { - "members": { - "Snapshot": { - "shape": "SnapshotDetails" - } - }, - "type": "structure" - }, - "GetStageDeploymentRequest": { - "members": { - "DeploymentId": { - "location": "querystring", - "locationName": "DeploymentId", - "shape": "DeploymentId" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "StageName" - ], - "type": "structure" - }, - "GetStageDeploymentResult": { - "members": { - "StageDeployment": { - "shape": "StageDeploymentDetails" - } - }, - "type": "structure" - }, - "GetStageRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "StageName" - ], - "type": "structure" - }, - "GetStageResult": { - "members": { - "Stage": { - "shape": "StageDetails" - } - }, - "type": "structure" - }, - "ImportGameConfigurationRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "ImportSource": { - "shape": "ImportGameConfigurationSource" - } - }, - "required": [ - "GameName", - "ImportSource" - ], - "type": "structure" - }, - "ImportGameConfigurationResult": { - "members": { - "GameConfiguration": { - "shape": "GameConfigurationDetails" - } - }, - "type": "structure" - }, - "ImportGameConfigurationSource": { - "members": { - "File": { - "shape": "RawGameConfigurationData" - } - }, - "required": [ - "File" - ], - "type": "structure" - }, - "InternalServerException": { - "error": { - "httpStatusCode": 500 - }, - "exception": true, - "fault": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - }, - "Language": { - "max": 16, - "min": 1, - "pattern": "^[a-zA-Z_]+$", - "type": "string" - }, - "ListExtensionVersionsRequest": { - "members": { - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "Name": { - "location": "uri", - "locationName": "Name", - "shape": "ExtensionName" - }, - "Namespace": { - "location": "uri", - "locationName": "Namespace", - "shape": "ExtensionNamespace" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - } - }, - "required": [ - "Name", - "Namespace" - ], - "type": "structure" - }, - "ListExtensionVersionsResult": { - "members": { - "ExtensionVersions": { - "shape": "ExtensionVersionDetailsList" - }, - "NextToken": { - "shape": "NextToken" - } - }, - "type": "structure" - }, - "ListExtensionsRequest": { - "members": { - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - } - }, - "type": "structure" - }, - "ListExtensionsResult": { - "members": { - "Extensions": { - "shape": "ExtensionDetailsList" - }, - "NextToken": { - "shape": "NextToken" - } - }, - "type": "structure" - }, - "ListGamesRequest": { - "members": { - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - } - }, - "type": "structure" - }, - "ListGamesResult": { - "members": { - "Games": { - "shape": "GameSummaryList" - }, - "NextToken": { - "shape": "NextToken" - } - }, - "type": "structure" - }, - "ListGeneratedCodeJobsRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - }, - "SnapshotId": { - "location": "uri", - "locationName": "SnapshotId", - "shape": "SnapshotId" - } - }, - "required": [ - "GameName", - "SnapshotId" - ], - "type": "structure" - }, - "ListGeneratedCodeJobsResult": { - "members": { - "GeneratedCodeJobs": { - "shape": "GeneratedCodeJobDetailsList" - }, - "NextToken": { - "shape": "NextToken" - } - }, - "type": "structure" - }, - "ListSnapshotsRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "ListSnapshotsResult": { - "members": { - "NextToken": { - "shape": "NextToken" - }, - "Snapshots": { - "shape": "SnapshotSummaryList" - } - }, - "type": "structure" - }, - "ListStageDeploymentsRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "StageName" - ], - "type": "structure" - }, - "ListStageDeploymentsResult": { - "members": { - "NextToken": { - "shape": "NextToken" - }, - "StageDeployments": { - "shape": "StageDeploymentList" - } - }, - "type": "structure" - }, - "ListStagesRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "MaxResults": { - "location": "querystring", - "locationName": "MaxResults", - "shape": "MaxResults" - }, - "NextToken": { - "location": "querystring", - "locationName": "NextToken", - "shape": "NextToken" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "ListStagesResult": { - "members": { - "NextToken": { - "shape": "NextToken" - }, - "Stages": { - "shape": "StageSummaryList" - } - }, - "type": "structure" - }, - "ListTagsForResourceRequest": { - "members": { - "ResourceArn": { - "location": "uri", - "locationName": "ResourceArn", - "shape": "ResourceArn" - } - }, - "required": [ - "ResourceArn" - ], - "type": "structure" - }, - "ListTagsForResourceResult": { - "members": { - "tags": { - "shape": "TagMap" - } - }, - "type": "structure" - }, - "LogGroupName": { - "max": 512, - "min": 1, - "type": "string" - }, - "MaxResults": { - "box": true, - "max": 100, - "min": 1, - "type": "integer" - }, - "Message": { - "type": "string" - }, - "NextToken": { - "max": 1024, - "min": 1, - "pattern": "^\\S(.*\\S)?$", - "type": "string" - }, - "Operation": { - "enum": [ - "ADD", - "REMOVE", - "REPLACE" - ], - "type": "string" - }, - "Path": { - "max": 500, - "min": 1, - "pattern": "^\\/.*[^\\/]$", - "type": "string" - }, - "PlayerId": { - "max": 44, - "min": 1, - "pattern": "^[a-zA-Z0-9_-]+$", - "type": "string" - }, - "RawGameConfigurationData": { - "max": 1024000, - "min": 10, - "type": "blob" - }, - "ResourceArn": { - "max": 2048, - "min": 20, - "pattern": "^arn:aws:gamesparks:", - "type": "string" - }, - "ResourceNotFoundException": { - "error": { - "httpStatusCode": 404, - "senderFault": true - }, - "exception": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - }, - "ResultCode": { - "enum": [ - "SUCCESS", - "INVALID_ROLE_FAILURE", - "UNSPECIFIED_FAILURE" - ], - "type": "string" - }, - "RoleARN": { - "max": 2048, - "min": 20, - "pattern": "^arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/.+$", - "type": "string" - }, - "S3PresignedUrl": { - "max": 2048, - "min": 10, - "pattern": "^https:\\/\\/(.*)\\.s3(.*)\\.amazonaws\\.com\\/(.*)$", - "type": "string" - }, - "Section": { - "members": { - "Name": { - "shape": "SectionName" - }, - "Size": { - "shape": "ByteSize" - } - }, - "type": "structure" - }, - "SectionList": { - "max": 100, - "member": { - "shape": "SectionName" - }, - "min": 1, - "type": "list" - }, - "SectionModification": { - "members": { - "Operation": { - "shape": "Operation" - }, - "Path": { - "shape": "Path" - }, - "Section": { - "shape": "SectionName" - } - }, - "required": [ - "Operation", - "Path", - "Section" - ], - "type": "structure" - }, - "SectionModificationList": { - "max": 100, - "member": { - "shape": "SectionModification" - }, - "min": 1, - "type": "list" - }, - "SectionName": { - "max": 36, - "min": 1, - "pattern": "^[a-zA-Z0-9.]+$", - "type": "string" - }, - "Sections": { - "key": { - "shape": "SectionName" - }, - "type": "map", - "value": { - "shape": "Section" - } - }, - "ServiceQuotaExceededException": { - "error": { - "httpStatusCode": 402, - "senderFault": true - }, - "exception": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - }, - "SnapshotDescription": { - "max": 250, - "min": 0, - "pattern": "^\\S(.*\\S)?$|^$", - "type": "string" - }, - "SnapshotDetails": { - "members": { - "Created": { - "shape": "DateTime" - }, - "Description": { - "shape": "SnapshotDescription" - }, - "Id": { - "shape": "SnapshotId" - }, - "LastUpdated": { - "shape": "DateTime" - }, - "Sections": { - "shape": "Sections" - } - }, - "type": "structure" - }, - "SnapshotId": { - "max": 36, - "min": 33, - "pattern": "^Snapshot_\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3,6}Z$", - "type": "string" - }, - "SnapshotSummary": { - "members": { - "Created": { - "shape": "DateTime" - }, - "Description": { - "shape": "SnapshotDescription" - }, - "Id": { - "shape": "SnapshotId" - }, - "LastUpdated": { - "shape": "DateTime" - } - }, - "type": "structure" - }, - "SnapshotSummaryList": { - "member": { - "shape": "SnapshotSummary" - }, - "type": "list" - }, - "StageDeploymentDetails": { - "members": { - "Created": { - "shape": "DateTime" - }, - "DeploymentAction": { - "shape": "DeploymentAction" - }, - "DeploymentId": { - "shape": "DeploymentId" - }, - "DeploymentResult": { - "shape": "DeploymentResult" - }, - "DeploymentState": { - "shape": "DeploymentState" - }, - "LastUpdated": { - "shape": "DateTime" - }, - "SnapshotId": { - "shape": "SnapshotId" - } - }, - "type": "structure" - }, - "StageDeploymentList": { - "member": { - "shape": "StageDeploymentSummary" - }, - "type": "list" - }, - "StageDeploymentSummary": { - "members": { - "DeploymentAction": { - "shape": "DeploymentAction" - }, - "DeploymentId": { - "shape": "DeploymentId" - }, - "DeploymentResult": { - "shape": "DeploymentResult" - }, - "DeploymentState": { - "shape": "DeploymentState" - }, - "LastUpdated": { - "shape": "DateTime" - }, - "SnapshotId": { - "shape": "SnapshotId" - } - }, - "type": "structure" - }, - "StageDescription": { - "max": 250, - "min": 0, - "pattern": "^\\S(.*\\S)?$|^$", - "type": "string" - }, - "StageDetails": { - "members": { - "Arn": { - "shape": "ARN" - }, - "Created": { - "shape": "DateTime" - }, - "Description": { - "shape": "StageDescription" - }, - "GameKey": { - "shape": "GameKey" - }, - "LastUpdated": { - "shape": "DateTime" - }, - "LogGroup": { - "shape": "LogGroupName" - }, - "Name": { - "shape": "StageName" - }, - "Role": { - "shape": "RoleARN" - }, - "State": { - "shape": "StageState" - }, - "Tags": { - "shape": "TagMap" - } - }, - "type": "structure" - }, - "StageName": { - "max": 36, - "min": 1, - "pattern": "^[a-zA-Z0-9_-]+$", - "type": "string" - }, - "StageState": { - "enum": [ - "ACTIVE", - "DELETING" - ], - "type": "string" - }, - "StageSummary": { - "members": { - "Description": { - "shape": "StageDescription" - }, - "GameKey": { - "shape": "GameKey" - }, - "Name": { - "shape": "StageName" - }, - "State": { - "shape": "StageState" - }, - "Tags": { - "shape": "TagMap" - } - }, - "type": "structure" - }, - "StageSummaryList": { - "member": { - "shape": "StageSummary" - }, - "type": "list" - }, - "StartGeneratedCodeJobRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "Generator": { - "shape": "Generator" - }, - "SnapshotId": { - "location": "uri", - "locationName": "SnapshotId", - "shape": "SnapshotId" - } - }, - "required": [ - "GameName", - "Generator", - "SnapshotId" - ], - "type": "structure" - }, - "StartGeneratedCodeJobResult": { - "members": { - "GeneratedCodeJobId": { - "shape": "GeneratedCodeJobId" - } - }, - "type": "structure" - }, - "StartStageDeploymentRequest": { - "members": { - "ClientToken": { - "shape": "ClientToken" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "SnapshotId": { - "shape": "SnapshotId" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "SnapshotId", - "StageName" - ], - "type": "structure" - }, - "StartStageDeploymentResult": { - "members": { - "StageDeployment": { - "shape": "StageDeploymentDetails" - } - }, - "type": "structure" - }, - "TagKey": { - "max": 128, - "min": 1, - "pattern": "^(?!aws:)[a-zA-Z+-=._:/]+$", - "type": "string" - }, - "TagKeyList": { - "max": 50, - "member": { - "shape": "TagKey" - }, - "min": 1, - "type": "list" - }, - "TagMap": { - "key": { - "shape": "TagKey" - }, - "max": 50, - "min": 1, - "type": "map", - "value": { - "shape": "TagValue" - } - }, - "TagResourceRequest": { - "members": { - "ResourceArn": { - "location": "uri", - "locationName": "ResourceArn", - "shape": "ResourceArn" - }, - "tags": { - "shape": "TagMap" - } - }, - "required": [ - "ResourceArn", - "tags" - ], - "type": "structure" - }, - "TagResourceResult": { - "members": {}, - "type": "structure" - }, - "TagValue": { - "max": 256, - "min": 0, - "pattern": "^[\\s\\w+-=\\.:/@]*$", - "type": "string" - }, - "TargetPlatform": { - "max": 16, - "min": 1, - "pattern": "^[a-zA-Z]+$", - "type": "string" - }, - "ThrottlingException": { - "error": { - "httpStatusCode": 429, - "senderFault": true - }, - "exception": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - }, - "UntagResourceRequest": { - "members": { - "ResourceArn": { - "location": "uri", - "locationName": "ResourceArn", - "shape": "ResourceArn" - }, - "tagKeys": { - "location": "querystring", - "locationName": "tagKeys", - "shape": "TagKeyList" - } - }, - "required": [ - "ResourceArn", - "tagKeys" - ], - "type": "structure" - }, - "UntagResourceResult": { - "members": {}, - "type": "structure" - }, - "UpdateGameConfigurationRequest": { - "members": { - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "Modifications": { - "shape": "SectionModificationList" - } - }, - "required": [ - "GameName", - "Modifications" - ], - "type": "structure" - }, - "UpdateGameConfigurationResult": { - "members": { - "GameConfiguration": { - "shape": "GameConfigurationDetails" - } - }, - "type": "structure" - }, - "UpdateGameRequest": { - "members": { - "Description": { - "shape": "GameDescription" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - } - }, - "required": [ - "GameName" - ], - "type": "structure" - }, - "UpdateGameResult": { - "members": { - "Game": { - "shape": "GameDetails" - } - }, - "type": "structure" - }, - "UpdateSnapshotRequest": { - "members": { - "Description": { - "shape": "SnapshotDescription" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "SnapshotId": { - "location": "uri", - "locationName": "SnapshotId", - "shape": "SnapshotId" - } - }, - "required": [ - "GameName", - "SnapshotId" - ], - "type": "structure" - }, - "UpdateSnapshotResult": { - "members": { - "Snapshot": { - "shape": "SnapshotDetails" - } - }, - "type": "structure" - }, - "UpdateStageRequest": { - "members": { - "Description": { - "shape": "StageDescription" - }, - "GameName": { - "location": "uri", - "locationName": "GameName", - "shape": "GameName" - }, - "Role": { - "shape": "RoleARN" - }, - "StageName": { - "location": "uri", - "locationName": "StageName", - "shape": "StageName" - } - }, - "required": [ - "GameName", - "StageName" - ], - "type": "structure" - }, - "UpdateStageResult": { - "members": { - "Stage": { - "shape": "StageDetails" - } - }, - "type": "structure" - }, - "ValidationException": { - "error": { - "httpStatusCode": 400, - "senderFault": true - }, - "exception": true, - "members": { - "Message": { - "shape": "ExceptionMessage" - } - }, - "type": "structure" - } - }, - "version": "2.0" -} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/docs-2.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,1024 +0,0 @@ -{ - "version": "2.0", - "service": "

", - "operations": { - "CreateGame": "

Creates a new game with an empty configuration. After creating your game, you can update the configuration using UpdateGameConfiguration or ImportGameConfiguration.

", - "CreateSnapshot": "

Creates a snapshot of the game configuration.

", - "CreateStage": "

Creates a new stage for stage-by-stage game development and deployment.

", - "DeleteGame": "

Deletes a game.

", - "DeleteStage": "

Deletes a stage from a game, along with the associated game runtime.

", - "DisconnectPlayer": "

Disconnects a player from the game runtime.

If a player has multiple connections, this operation attempts to close all of them.

", - "ExportSnapshot": "

Exports a game configuration snapshot.

", - "GetExtension": "

Gets details about a specified extension.

", - "GetExtensionVersion": "

Gets details about a specified extension version.

", - "GetGame": "

Gets details about a game.

", - "GetGameConfiguration": "

Gets the configuration of the game.

", - "GetGeneratedCodeJob": "

Gets details about a job that is generating code for a snapshot.

", - "GetPlayerConnectionStatus": "

Gets the status of a player's connection to the game runtime.

It's possible for a single player to have multiple connections to the game runtime. If a player is not connected, this operation returns an empty list.

", - "GetSnapshot": "

Gets a copy of the game configuration in a snapshot.

", - "GetStage": "

Gets information about a stage.

", - "GetStageDeployment": "

Gets information about a stage deployment.

", - "ImportGameConfiguration": "

Imports a game configuration.

This operation replaces the current configuration of the game with the provided input. This is not a reversible operation. If you want to preserve the previous configuration, use CreateSnapshot to make a new snapshot before importing.

", - "ListExtensionVersions": "

Gets a paginated list of available versions for the extension.

Each time an API change is made to an extension, the version is incremented. The list retrieved by this operation shows the versions that are currently available.

", - "ListExtensions": "

Gets a paginated list of available extensions.

Extensions provide features that games can use from scripts.

", - "ListGames": "

Gets a paginated list of games.

", - "ListGeneratedCodeJobs": "

Gets a paginated list of code generation jobs for a snapshot.

", - "ListSnapshots": "

Gets a paginated list of snapshot summaries from the game.

", - "ListStageDeployments": "

Gets a paginated list of stage deployment summaries from the game.

", - "ListStages": "

Gets a paginated list of stage summaries from the game.

", - "ListTagsForResource": "

Lists the tags associated with a GameSparks resource.

", - "StartGeneratedCodeJob": "

Starts an asynchronous process that generates client code for system-defined and custom messages. The resulting code is collected as a .zip file and uploaded to a pre-signed Amazon S3 URL.

", - "StartStageDeployment": "

Deploys a snapshot to the stage and creates a new game runtime.

After you call this operation, you can check the deployment status by using GetStageDeployment.

If there are any players connected to the previous game runtime, then both runtimes persist. Existing connections to the previous runtime are maintained. When players disconnect and reconnect, they connect to the new runtime. After there are no connections to the previous game runtime, it is deleted.

", - "TagResource": "

Adds tags to a GameSparks resource.

", - "UntagResource": "

Removes tags from a GameSparks resource.

", - "UpdateGame": "

Updates details of the game.

", - "UpdateGameConfiguration": "

Updates one or more sections of the game configuration.

", - "UpdateSnapshot": "

Updates the metadata of a GameSparks snapshot.

", - "UpdateStage": "

Updates the metadata of a stage.

" - }, - "shapes": { - "ARN": { - "base": null, - "refs": { - "GameDetails$Arn": "

The Amazon Resource Name (ARN) of this game.

", - "StageDetails$Arn": "

The Amazon Resource Name (ARN) of the stage.

" - } - }, - "AccessDeniedException": { - "base": "

You do not have sufficient access to perform this action.

", - "refs": { - } - }, - "ByteSize": { - "base": null, - "refs": { - "Section$Size": "

The size, in bytes, of the section contents.

" - } - }, - "ClientToken": { - "base": null, - "refs": { - "CreateGameRequest$ClientToken": "

A client-defined token. With an active client token in the request, this action is idempotent.

", - "CreateStageRequest$ClientToken": "

A client-defined token. With an active client token in the request, this action is idempotent.

", - "StartStageDeploymentRequest$ClientToken": "

A client-defined token. With an active client token in the request, this action is idempotent.

" - } - }, - "ConflictException": { - "base": "

The resource already exists, or another operation is in progress.

", - "refs": { - } - }, - "Connection": { - "base": "

Details about a WebSocket connection.

", - "refs": { - "ConnectionList$member": null - } - }, - "ConnectionId": { - "base": null, - "refs": { - "Connection$Id": "

The identifier used to indicate a specific WebSocket connection.

", - "ConnectionIdList$member": null - } - }, - "ConnectionIdList": { - "base": null, - "refs": { - "DisconnectPlayerResult$DisconnectFailures": "

The list of the connection ids that could not be disconnected.

", - "DisconnectPlayerResult$DisconnectSuccesses": "

The list of the connection ids that were disconnected.

" - } - }, - "ConnectionList": { - "base": null, - "refs": { - "GetPlayerConnectionStatusResult$Connections": "

The list of connection ids, one for each connection in use by the player.

" - } - }, - "CreateGameRequest": { - "base": null, - "refs": { - } - }, - "CreateGameResult": { - "base": null, - "refs": { - } - }, - "CreateSnapshotRequest": { - "base": null, - "refs": { - } - }, - "CreateSnapshotResult": { - "base": null, - "refs": { - } - }, - "CreateStageRequest": { - "base": null, - "refs": { - } - }, - "CreateStageResult": { - "base": null, - "refs": { - } - }, - "DateTime": { - "base": null, - "refs": { - "Connection$Created": "

The date and time when the connection was created.

", - "GameConfigurationDetails$Created": "

The date when the game was created.

", - "GameConfigurationDetails$LastUpdated": "

The date when the game was last modified.

", - "GameDetails$Created": "

The date when the game was created.

", - "GameDetails$LastUpdated": "

The date when the game was last modified.

", - "GeneratedCodeJobDetails$ExpirationTime": "

The expiration date and time for the download URL.

The download URL us guaranteed to be available until at least this time.

", - "SnapshotDetails$Created": "

The timestamp of when the snapshot was created.

", - "SnapshotDetails$LastUpdated": "

The timestamp of when the snapshot was last updated.

", - "SnapshotSummary$Created": "

The timestamp of when the snapshot was created.

", - "SnapshotSummary$LastUpdated": "

Then timestamp of when the snapshot was last updated.

", - "StageDeploymentDetails$Created": "

The timestamp of when the stage deployment was created.

", - "StageDeploymentDetails$LastUpdated": "

The timestamp of when the deployment was last updated.

", - "StageDeploymentSummary$LastUpdated": "

The timestamp of when the deployment was last updated.

", - "StageDetails$Created": "

The timestamp of when the stage was created.

", - "StageDetails$LastUpdated": "

The timestamp of when the stage was last updated.

" - } - }, - "DeleteGameRequest": { - "base": null, - "refs": { - } - }, - "DeleteGameResult": { - "base": null, - "refs": { - } - }, - "DeleteStageRequest": { - "base": null, - "refs": { - } - }, - "DeleteStageResult": { - "base": null, - "refs": { - } - }, - "DeploymentAction": { - "base": null, - "refs": { - "StageDeploymentDetails$DeploymentAction": "

The type of action of the stage deployment.

", - "StageDeploymentSummary$DeploymentAction": "

The type of action of the deployment.

" - } - }, - "DeploymentId": { - "base": null, - "refs": { - "GetStageDeploymentRequest$DeploymentId": "

The identifier of the stage deployment. StartStageDeployment returns the identifier that you use here.

", - "StageDeploymentDetails$DeploymentId": "

The identifier of the deployment.

", - "StageDeploymentSummary$DeploymentId": "

The identifier of the deployment.

" - } - }, - "DeploymentResult": { - "base": "

The result of the deployment.

", - "refs": { - "StageDeploymentDetails$DeploymentResult": "

The result of the deployment.

", - "StageDeploymentSummary$DeploymentResult": "

The result of the deployment.

" - } - }, - "DeploymentState": { - "base": null, - "refs": { - "StageDeploymentDetails$DeploymentState": "

The state of the deployment.

", - "StageDeploymentSummary$DeploymentState": "

The state of the deployment.

" - } - }, - "DisconnectPlayerRequest": { - "base": null, - "refs": { - } - }, - "DisconnectPlayerResult": { - "base": null, - "refs": { - } - }, - "Document": { - "base": "

", - "refs": { - "Section$Attributes": "

The content of a configuration section.

", - "SectionModification$Value": "

For add and replace operations, this is the value that will be used.

This field should be omitted for delete operations.

" - } - }, - "ExceptionMessage": { - "base": null, - "refs": { - "AccessDeniedException$Message": null, - "ConflictException$Message": null, - "InternalServerException$Message": null, - "ResourceNotFoundException$Message": null, - "ServiceQuotaExceededException$Message": null, - "ThrottlingException$Message": null, - "ValidationException$Message": null - } - }, - "ExportSnapshotRequest": { - "base": null, - "refs": { - } - }, - "ExportSnapshotResult": { - "base": null, - "refs": { - } - }, - "ExtensionDescription": { - "base": null, - "refs": { - "ExtensionDetails$Description": "

The description of the extension.

" - } - }, - "ExtensionDetails": { - "base": "

Details about the extension.

", - "refs": { - "ExtensionDetailsList$member": null, - "GetExtensionResult$Extension": "

Details about the extension.

" - } - }, - "ExtensionDetailsList": { - "base": null, - "refs": { - "ListExtensionsResult$Extensions": "

The list of extensions.

" - } - }, - "ExtensionName": { - "base": null, - "refs": { - "ExtensionDetails$Name": "

The name of the extension.

", - "ExtensionVersionDetails$Name": "

The name of the extension.

", - "GetExtensionRequest$Name": "

The name of the extension.

", - "GetExtensionVersionRequest$Name": "

The name of the extension.

", - "ListExtensionVersionsRequest$Name": "

The name of the extension.

" - } - }, - "ExtensionNamespace": { - "base": null, - "refs": { - "ExtensionDetails$Namespace": "

The namespace (qualifier) of the extension.

", - "ExtensionVersionDetails$Namespace": "

The namespace (qualifier) of the extension.

", - "GetExtensionRequest$Namespace": "

The namespace (qualifier) of the extension.

", - "GetExtensionVersionRequest$Namespace": "

The namespace (qualifier) of the extension.

", - "ListExtensionVersionsRequest$Namespace": "

The namespace (qualifier) of the extension.

" - } - }, - "ExtensionVersion": { - "base": null, - "refs": { - "ExtensionVersionDetails$Version": "

The version of the extension.

", - "GetExtensionVersionRequest$ExtensionVersion": "

The version of the extension.

" - } - }, - "ExtensionVersionDetails": { - "base": "

Details about the extension version.

", - "refs": { - "ExtensionVersionDetailsList$member": null, - "GetExtensionVersionResult$ExtensionVersion": "

The version of the extension.

" - } - }, - "ExtensionVersionDetailsList": { - "base": null, - "refs": { - "ListExtensionVersionsResult$ExtensionVersions": "

The list of extension versions.

" - } - }, - "ExtensionVersionSchema": { - "base": null, - "refs": { - "ExtensionVersionDetails$Schema": "

The model that defines the interface for this extension version.

" - } - }, - "GameConfigurationDetails": { - "base": "

Details about the game configuration.

The game configuration is organized into named sections, where the schema of each section is defined by an extension. The schema for these sections can be retrieved using the GetExtensionVersion operation.

", - "refs": { - "GetGameConfigurationResult$GameConfiguration": "

Details about the game configuration.

", - "ImportGameConfigurationResult$GameConfiguration": "

Details about the game configuration.

", - "UpdateGameConfigurationResult$GameConfiguration": "

Details about the game configuration.

" - } - }, - "GameDescription": { - "base": null, - "refs": { - "CreateGameRequest$Description": "

The description of the game.

", - "GameDetails$Description": "

The description of the game.

", - "GameSummary$Description": "

The description of the game.

", - "UpdateGameRequest$Description": "

The description of the game.

" - } - }, - "GameDetails": { - "base": "

Details about a game.

", - "refs": { - "CreateGameResult$Game": "

Details about the game that was created.

", - "GetGameResult$Game": "

The details of the game.

", - "UpdateGameResult$Game": "

The details of the game.

" - } - }, - "GameKey": { - "base": null, - "refs": { - "StageDetails$GameKey": "

The game key associated with the stage.

The game key is a unique identifier that the game client uses to connect to the GameSparks backend.

", - "StageSummary$GameKey": "

The game key associated with the stage.

The game key is a unique identifier that the game client uses to connect to the GameSparks backend.

" - } - }, - "GameName": { - "base": null, - "refs": { - "CreateGameRequest$GameName": "

The name of the game.

", - "CreateSnapshotRequest$GameName": "

The name of the game.

", - "CreateStageRequest$GameName": "

The name of the game.

", - "DeleteGameRequest$GameName": "

The name of the game to delete.

", - "DeleteStageRequest$GameName": "

The name of the game.

", - "DisconnectPlayerRequest$GameName": "

The name of the game.

", - "ExportSnapshotRequest$GameName": "

The name of the game.

", - "GameDetails$Name": "

The name of the game.

", - "GameSummary$Name": "

The name of the game.

", - "GetGameConfigurationRequest$GameName": "

The name of the game.

", - "GetGameRequest$GameName": "

The name of the game.

", - "GetGeneratedCodeJobRequest$GameName": "

The name of the game.

", - "GetPlayerConnectionStatusRequest$GameName": "

The name of the game.

", - "GetSnapshotRequest$GameName": "

The name of the game.

", - "GetStageDeploymentRequest$GameName": "

The name of the game.

", - "GetStageRequest$GameName": "

The name of the game.

", - "ImportGameConfigurationRequest$GameName": "

The name of the game.

", - "ListGeneratedCodeJobsRequest$GameName": "

The name of the game.

", - "ListSnapshotsRequest$GameName": "

The name of the game.

", - "ListStageDeploymentsRequest$GameName": "

The name of the game.

", - "ListStagesRequest$GameName": "

The name of the game.

", - "StartGeneratedCodeJobRequest$GameName": "

The name of the game.

", - "StartStageDeploymentRequest$GameName": "

The name of the game.

", - "UpdateGameConfigurationRequest$GameName": "

The name of the game.

", - "UpdateGameRequest$GameName": "

The name of the game.

", - "UpdateSnapshotRequest$GameName": "

The name of the game.

", - "UpdateStageRequest$GameName": "

The name of the game.

" - } - }, - "GameSdkVersion": { - "base": null, - "refs": { - "Generator$GameSdkVersion": "

The target version of the GameSparks Game SDK.

" - } - }, - "GameState": { - "base": null, - "refs": { - "GameDetails$State": "

The state of the game.

", - "GameSummary$State": "

The state of the game.

" - } - }, - "GameSummary": { - "base": "

The summary of the properties of a game.

", - "refs": { - "GameSummaryList$member": null - } - }, - "GameSummaryList": { - "base": null, - "refs": { - "ListGamesResult$Games": "

The list of games.

" - } - }, - "GameTerminationProtection": { - "base": null, - "refs": { - "GameDetails$EnableTerminationProtection": "

Determines if the game can be deleted.

" - } - }, - "GeneratedCodeJobDescription": { - "base": null, - "refs": { - "GeneratedCodeJobDetails$Description": "

The description of the generated code job.

" - } - }, - "GeneratedCodeJobDetails": { - "base": "

Details about a generated code job.

", - "refs": { - "GeneratedCodeJobDetailsList$member": null, - "GetGeneratedCodeJobResult$GeneratedCodeJob": "

Details about the generated code job.

" - } - }, - "GeneratedCodeJobDetailsList": { - "base": null, - "refs": { - "ListGeneratedCodeJobsResult$GeneratedCodeJobs": "

The list of generated code jobs.

" - } - }, - "GeneratedCodeJobId": { - "base": null, - "refs": { - "GeneratedCodeJobDetails$GeneratedCodeJobId": "

The identifier for the generated code job.

", - "GetGeneratedCodeJobRequest$JobId": "

The identifier of the code generation job.

", - "StartGeneratedCodeJobResult$GeneratedCodeJobId": "

The identifier of the code generation job. You can use this identifier in the GetGeneratedCodeJob operation.

" - } - }, - "GeneratedCodeJobState": { - "base": null, - "refs": { - "GeneratedCodeJobDetails$Status": "

The status of the generated code job

" - } - }, - "Generator": { - "base": "

Properties that specify the code generator for a generated code job.

", - "refs": { - "StartGeneratedCodeJobRequest$Generator": "

Properties of the generator to use for the job.

" - } - }, - "GetExtensionRequest": { - "base": null, - "refs": { - } - }, - "GetExtensionResult": { - "base": null, - "refs": { - } - }, - "GetExtensionVersionRequest": { - "base": null, - "refs": { - } - }, - "GetExtensionVersionResult": { - "base": null, - "refs": { - } - }, - "GetGameConfigurationRequest": { - "base": null, - "refs": { - } - }, - "GetGameConfigurationResult": { - "base": null, - "refs": { - } - }, - "GetGameRequest": { - "base": null, - "refs": { - } - }, - "GetGameResult": { - "base": null, - "refs": { - } - }, - "GetGeneratedCodeJobRequest": { - "base": null, - "refs": { - } - }, - "GetGeneratedCodeJobResult": { - "base": null, - "refs": { - } - }, - "GetPlayerConnectionStatusRequest": { - "base": null, - "refs": { - } - }, - "GetPlayerConnectionStatusResult": { - "base": null, - "refs": { - } - }, - "GetSnapshotRequest": { - "base": null, - "refs": { - } - }, - "GetSnapshotResult": { - "base": null, - "refs": { - } - }, - "GetStageDeploymentRequest": { - "base": null, - "refs": { - } - }, - "GetStageDeploymentResult": { - "base": null, - "refs": { - } - }, - "GetStageRequest": { - "base": null, - "refs": { - } - }, - "GetStageResult": { - "base": null, - "refs": { - } - }, - "ImportGameConfigurationRequest": { - "base": null, - "refs": { - } - }, - "ImportGameConfigurationResult": { - "base": null, - "refs": { - } - }, - "ImportGameConfigurationSource": { - "base": "

The source used to import configuration sections.

", - "refs": { - "ImportGameConfigurationRequest$ImportSource": "

The source used to import configuration sections.

" - } - }, - "InternalServerException": { - "base": "

The service encountered an internal error.

", - "refs": { - } - }, - "Language": { - "base": null, - "refs": { - "Generator$Language": "

The programming language for the generated code.

Not all languages are supported for each platform. For cases where multiple languages are supported, this parameter specifies the language to be used. If this value is omitted, the default language for the target platform will be used.

" - } - }, - "ListExtensionVersionsRequest": { - "base": null, - "refs": { - } - }, - "ListExtensionVersionsResult": { - "base": null, - "refs": { - } - }, - "ListExtensionsRequest": { - "base": null, - "refs": { - } - }, - "ListExtensionsResult": { - "base": null, - "refs": { - } - }, - "ListGamesRequest": { - "base": null, - "refs": { - } - }, - "ListGamesResult": { - "base": null, - "refs": { - } - }, - "ListGeneratedCodeJobsRequest": { - "base": null, - "refs": { - } - }, - "ListGeneratedCodeJobsResult": { - "base": null, - "refs": { - } - }, - "ListSnapshotsRequest": { - "base": null, - "refs": { - } - }, - "ListSnapshotsResult": { - "base": null, - "refs": { - } - }, - "ListStageDeploymentsRequest": { - "base": null, - "refs": { - } - }, - "ListStageDeploymentsResult": { - "base": null, - "refs": { - } - }, - "ListStagesRequest": { - "base": null, - "refs": { - } - }, - "ListStagesResult": { - "base": null, - "refs": { - } - }, - "ListTagsForResourceRequest": { - "base": null, - "refs": { - } - }, - "ListTagsForResourceResult": { - "base": null, - "refs": { - } - }, - "LogGroupName": { - "base": null, - "refs": { - "StageDetails$LogGroup": "

The Amazon CloudWatch log group for game runtimes deployed to the stage.

" - } - }, - "MaxResults": { - "base": null, - "refs": { - "ListExtensionVersionsRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

", - "ListExtensionsRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

", - "ListGamesRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

", - "ListGeneratedCodeJobsRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

", - "ListSnapshotsRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

", - "ListStageDeploymentsRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

", - "ListStagesRequest$MaxResults": "

The maximum number of results to return.

Use this parameter with NextToken to get results as a set of sequential pages.

" - } - }, - "Message": { - "base": null, - "refs": { - "DeploymentResult$Message": "

Details about the deployment result.

" - } - }, - "NextToken": { - "base": null, - "refs": { - "ListExtensionVersionsRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListExtensionVersionsResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

", - "ListExtensionsRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListExtensionsResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

", - "ListGamesRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListGamesResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

", - "ListGeneratedCodeJobsRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListGeneratedCodeJobsResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

", - "ListSnapshotsRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListSnapshotsResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

", - "ListStageDeploymentsRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListStageDeploymentsResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

", - "ListStagesRequest$NextToken": "

The token that indicates the start of the next sequential page of results.

Use the token that is returned with a previous call to this operation. To start at the beginning of the result set, do not specify a value.

", - "ListStagesResult$NextToken": "

The token that indicates the start of the next sequential page of results.

Use this value when making the next call to this operation to continue where the last one finished.

" - } - }, - "Operation": { - "base": null, - "refs": { - "SectionModification$Operation": "

The operation to be performed on a configuration section.

Content can be added, deleted, or replaced within a section.

" - } - }, - "Path": { - "base": null, - "refs": { - "SectionModification$Path": "

The path within the section content to be modified.

" - } - }, - "PlayerId": { - "base": null, - "refs": { - "DisconnectPlayerRequest$PlayerId": "

The unique identifier representing a player.

", - "GetPlayerConnectionStatusRequest$PlayerId": "

The unique identifier representing a player.

" - } - }, - "RawGameConfigurationData": { - "base": null, - "refs": { - "ImportGameConfigurationSource$File": "

The JSON string containing the configuration sections.

" - } - }, - "ResourceArn": { - "base": null, - "refs": { - "ListTagsForResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the GameSparks resource.

", - "TagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the resource to add the tags to.

", - "UntagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the resource to remove the tags from.

" - } - }, - "ResourceNotFoundException": { - "base": "

The resource specified in the request does not exist.

", - "refs": { - } - }, - "ResultCode": { - "base": null, - "refs": { - "DeploymentResult$ResultCode": "

The type of deployment result.

" - } - }, - "RoleARN": { - "base": null, - "refs": { - "CreateStageRequest$Role": "

The Amazon Resource Name (ARN) of the role to run the game with. This role can be a game-defined role or the default role that GameSparks created.

", - "StageDetails$Role": "

The Amazon Resource Name (ARN) of the role used to run the game runtimes deployed to the stage.

", - "UpdateStageRequest$Role": "

The Amazon Resource Name (ARN) of the role to use for the game snapshots deployed to this stage.

" - } - }, - "S3PresignedUrl": { - "base": null, - "refs": { - "ExportSnapshotResult$S3Url": "

The presigned URL for the snapshot data.

This URL will be available for 10 minutes, and can be used to download the snapshot content. If the URL expires, a new one can be requested using the same operation.

", - "GeneratedCodeJobDetails$S3Url": "

A presigned URL that can be used to download the generated code.

" - } - }, - "Section": { - "base": "

The configuration section.

", - "refs": { - "Sections$value": null - } - }, - "SectionList": { - "base": null, - "refs": { - "GetGameConfigurationRequest$Sections": "

The list of sections to return.

", - "GetSnapshotRequest$Sections": "

The list of game configuration sections to be described.

" - } - }, - "SectionModification": { - "base": "

A single modification to the configuration section.

", - "refs": { - "SectionModificationList$member": null - } - }, - "SectionModificationList": { - "base": null, - "refs": { - "UpdateGameConfigurationRequest$Modifications": "

The list of modifications to make.

" - } - }, - "SectionName": { - "base": null, - "refs": { - "Section$Name": "

The name of the section.

", - "SectionList$member": null, - "SectionModification$Section": "

The name of the section to be modified.

", - "Sections$key": null - } - }, - "Sections": { - "base": null, - "refs": { - "GameConfigurationDetails$Sections": "

Configuration data, organized by section name.

", - "SnapshotDetails$Sections": "

The sections in the snapshot.

" - } - }, - "ServiceQuotaExceededException": { - "base": "

The request would result in exceeding service quota.

", - "refs": { - } - }, - "SnapshotDescription": { - "base": null, - "refs": { - "CreateSnapshotRequest$Description": "

The description of the snapshot.

", - "SnapshotDetails$Description": "

The description of the snapshot.

", - "SnapshotSummary$Description": "

The description of the snapshot.

", - "UpdateSnapshotRequest$Description": "

The description of the snapshot.

" - } - }, - "SnapshotDetails": { - "base": "

Properties that provide details of a snapshot.

", - "refs": { - "CreateSnapshotResult$Snapshot": "

Properties that provide details of the created snapshot.

", - "GetSnapshotResult$Snapshot": "

Properties that provide details of the snapshot.

", - "UpdateSnapshotResult$Snapshot": "

Properties that provide details of the updated snapshot.

" - } - }, - "SnapshotId": { - "base": null, - "refs": { - "ExportSnapshotRequest$SnapshotId": "

The identifier of the snapshot to export.

", - "GetGeneratedCodeJobRequest$SnapshotId": "

The identifier of the snapshot for the code generation job.

", - "GetSnapshotRequest$SnapshotId": "

The identifier of the snapshot.

", - "ListGeneratedCodeJobsRequest$SnapshotId": "

The identifier of the snapshot.

", - "SnapshotDetails$Id": "

The identifier of the snapshot.

", - "SnapshotSummary$Id": "

The identifier of the snapshot.

", - "StageDeploymentDetails$SnapshotId": "

The identifier of the snapshot associated with the stage deployment.

", - "StageDeploymentSummary$SnapshotId": "

The identifier of the snapshot associated with the stage deployment.

", - "StartGeneratedCodeJobRequest$SnapshotId": "

The identifier of the snapshot for which to generate code.

", - "StartStageDeploymentRequest$SnapshotId": "

The identifier of the snapshot to deploy.

", - "UpdateSnapshotRequest$SnapshotId": "

The identifier of the snapshot.

" - } - }, - "SnapshotSummary": { - "base": "

The summary of the properties of a snapshot.

", - "refs": { - "SnapshotSummaryList$member": null - } - }, - "SnapshotSummaryList": { - "base": null, - "refs": { - "ListSnapshotsResult$Snapshots": "

A list of snapshot summaries. You can use the returned snapshot IDs in the UpdateSnapshot and GetSnapshot operations.

" - } - }, - "StageDeploymentDetails": { - "base": "

Properties that provide details of a stage deployment.

", - "refs": { - "GetStageDeploymentResult$StageDeployment": "

Properties that provide details of the stage deployment.

", - "StartStageDeploymentResult$StageDeployment": "

Properties that describe the stage deployment.

" - } - }, - "StageDeploymentList": { - "base": null, - "refs": { - "ListStageDeploymentsResult$StageDeployments": "

A list of stage deployment summaries. You can use the deployment IDs in the UpdateStageDeployment and GetStageDeployment actions.

" - } - }, - "StageDeploymentSummary": { - "base": "

The summary of the properties of a stage deployment.

", - "refs": { - "StageDeploymentList$member": null - } - }, - "StageDescription": { - "base": null, - "refs": { - "CreateStageRequest$Description": "

The description of the stage.

", - "StageDetails$Description": "

The description of the stage.

", - "StageSummary$Description": "

The description of the stage.

", - "UpdateStageRequest$Description": "

The description of the stage.

" - } - }, - "StageDetails": { - "base": "

Properties that provide details of a stage.

", - "refs": { - "CreateStageResult$Stage": "

Properties that describe the stage.

", - "GetStageResult$Stage": "

Properties that provide details of the stage.

", - "UpdateStageResult$Stage": "

Properties that provide details of the updated stage.

" - } - }, - "StageName": { - "base": null, - "refs": { - "CreateStageRequest$StageName": "

The name of the stage.

", - "DeleteStageRequest$StageName": "

The name of the stage to delete.

", - "DisconnectPlayerRequest$StageName": "

The name of the stage.

", - "GetPlayerConnectionStatusRequest$StageName": "

The name of the stage.

", - "GetStageDeploymentRequest$StageName": "

The name of the stage.

", - "GetStageRequest$StageName": "

The name of the stage.

", - "ListStageDeploymentsRequest$StageName": "

The name of the stage.

", - "StageDetails$Name": "

The name of the stage.

", - "StageSummary$Name": "

The name of the stage.

", - "StartStageDeploymentRequest$StageName": "

The name of the stage to deploy the snapshot onto.

", - "UpdateStageRequest$StageName": "

The name of the stage.

" - } - }, - "StageState": { - "base": null, - "refs": { - "StageDetails$State": "

The state of the stage.

", - "StageSummary$State": "

The state of the stage.

" - } - }, - "StageSummary": { - "base": "

The summary of the properties of a stage.

", - "refs": { - "StageSummaryList$member": null - } - }, - "StageSummaryList": { - "base": null, - "refs": { - "ListStagesResult$Stages": "

A list of stage summaries. You can use the stage names in the UpdateStage and GetStage actions.

" - } - }, - "StartGeneratedCodeJobRequest": { - "base": null, - "refs": { - } - }, - "StartGeneratedCodeJobResult": { - "base": null, - "refs": { - } - }, - "StartStageDeploymentRequest": { - "base": null, - "refs": { - } - }, - "StartStageDeploymentResult": { - "base": null, - "refs": { - } - }, - "TagKey": { - "base": null, - "refs": { - "TagKeyList$member": null, - "TagMap$key": null - } - }, - "TagKeyList": { - "base": null, - "refs": { - "UntagResourceRequest$tagKeys": "

The keys of the tags to remove.

" - } - }, - "TagMap": { - "base": null, - "refs": { - "CreateGameRequest$Tags": "

The list of tags to apply to the game.

", - "CreateStageRequest$Tags": "

The list of tags to apply to the stage.

", - "GameDetails$Tags": "

The tags associated with the game.

", - "GameSummary$Tags": "

The tags associated with the game.

", - "ListTagsForResourceResult$tags": "

The tags associated with the resource.

", - "StageDetails$Tags": "

The tags associated with the stage.

", - "StageSummary$Tags": "

The tags associated with the stage.

", - "TagResourceRequest$tags": "

The tags to add to the resource.

" - } - }, - "TagResourceRequest": { - "base": null, - "refs": { - } - }, - "TagResourceResult": { - "base": null, - "refs": { - } - }, - "TagValue": { - "base": null, - "refs": { - "TagMap$value": null - } - }, - "TargetPlatform": { - "base": null, - "refs": { - "Generator$TargetPlatform": "

The platform that will be used to run the generated code.

" - } - }, - "ThrottlingException": { - "base": "

The request throughput limit was exceeded.

", - "refs": { - } - }, - "UntagResourceRequest": { - "base": null, - "refs": { - } - }, - "UntagResourceResult": { - "base": null, - "refs": { - } - }, - "UpdateGameConfigurationRequest": { - "base": null, - "refs": { - } - }, - "UpdateGameConfigurationResult": { - "base": null, - "refs": { - } - }, - "UpdateGameRequest": { - "base": null, - "refs": { - } - }, - "UpdateGameResult": { - "base": null, - "refs": { - } - }, - "UpdateSnapshotRequest": { - "base": null, - "refs": { - } - }, - "UpdateSnapshotResult": { - "base": null, - "refs": { - } - }, - "UpdateStageRequest": { - "base": null, - "refs": { - } - }, - "UpdateStageResult": { - "base": null, - "refs": { - } - }, - "ValidationException": { - "base": "

One of the parameters in the request is invalid.

", - "refs": { - } - } - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,315 +0,0 @@ -{ - "version": "1.0", - "parameters": { - "Region": { - "builtIn": "AWS::Region", - "required": false, - "documentation": "The AWS region used to dispatch the request.", - "type": "String" - }, - "UseDualStack": { - "builtIn": "AWS::UseDualStack", - "required": true, - "default": false, - "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", - "type": "Boolean" - }, - "UseFIPS": { - "builtIn": "AWS::UseFIPS", - "required": true, - "default": false, - "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", - "type": "Boolean" - }, - "Endpoint": { - "builtIn": "SDK::Endpoint", - "required": false, - "documentation": "Override the endpoint used to send this request", - "type": "String" - } - }, - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "PartitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://gamesparks-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://gamesparks-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://gamesparks.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://gamesparks.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] -} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,147 +0,0 @@ -{ - "testCases": [ - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://gamesparks-fips.ap-northeast-1.api.aws" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://gamesparks-fips.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://gamesparks.ap-northeast-1.api.aws" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://gamesparks.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://gamesparks-fips.us-east-1.api.aws" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://gamesparks-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://gamesparks.us-east-1.api.aws" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://gamesparks.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", - "expect": { - "endpoint": { - "url": "https://example.com" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "https://example.com" - } - }, - { - "documentation": "For custom endpoint with fips enabled and dualstack disabled", - "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false, - "Endpoint": "https://example.com" - } - }, - { - "documentation": "For custom endpoint with fips disabled and dualstack enabled", - "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true, - "Endpoint": "https://example.com" - } - } - ], - "version": "1.0" -} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/examples-1.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,5 +0,0 @@ -{ - "version": "1.0", - "examples": { - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/gamesparks/2021-08-17/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/gamesparks/2021-08-17/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,46 +0,0 @@ -{ - "pagination": { - "ListExtensionVersions": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "ExtensionVersions" - }, - "ListExtensions": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "Extensions" - }, - "ListGames": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "Games" - }, - "ListGeneratedCodeJobs": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "GeneratedCodeJobs" - }, - "ListSnapshots": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "Snapshots" - }, - "ListStageDeployments": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "StageDeployments" - }, - "ListStages": { - "input_token": "NextToken", - "output_token": "NextToken", - "limit_key": "MaxResults", - "result_key": "Stages" - } - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -91,6 +91,22 @@ {"shape":"LimitExceededException"} ] }, + "CreateCrossAccountAttachment":{ + "name":"CreateCrossAccountAttachment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateCrossAccountAttachmentRequest"}, + "output":{"shape":"CreateCrossAccountAttachmentResponse"}, + "errors":[ + {"shape":"InternalServiceErrorException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"TransactionInProgressException"} + ] + }, "CreateCustomRoutingAccelerator":{ "name":"CreateCustomRoutingAccelerator", "http":{ @@ -190,6 +206,21 @@ {"shape":"InvalidArgumentException"} ] }, + "DeleteCrossAccountAttachment":{ + "name":"DeleteCrossAccountAttachment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteCrossAccountAttachmentRequest"}, + "errors":[ + {"shape":"AttachmentNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceErrorException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"TransactionInProgressException"} + ] + }, "DeleteCustomRoutingAccelerator":{ "name":"DeleteCustomRoutingAccelerator", "http":{ @@ -316,6 +347,21 @@ {"shape":"InvalidArgumentException"} ] }, + "DescribeCrossAccountAttachment":{ + "name":"DescribeCrossAccountAttachment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeCrossAccountAttachmentRequest"}, + "output":{"shape":"DescribeCrossAccountAttachmentResponse"}, + "errors":[ + {"shape":"AttachmentNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceErrorException"}, + {"shape":"InvalidArgumentException"} + ] + }, "DescribeCustomRoutingAccelerator":{ "name":"DescribeCustomRoutingAccelerator", "http":{ @@ -429,6 +475,50 @@ {"shape":"InvalidNextTokenException"} ] }, + "ListCrossAccountAttachments":{ + "name":"ListCrossAccountAttachments", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCrossAccountAttachmentsRequest"}, + "output":{"shape":"ListCrossAccountAttachmentsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"InvalidNextTokenException"}, + {"shape":"InternalServiceErrorException"} + ] + }, + "ListCrossAccountResourceAccounts":{ + "name":"ListCrossAccountResourceAccounts", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCrossAccountResourceAccountsRequest"}, + "output":{"shape":"ListCrossAccountResourceAccountsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceErrorException"} + ] + }, + "ListCrossAccountResources":{ + "name":"ListCrossAccountResources", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCrossAccountResourcesRequest"}, + "output":{"shape":"ListCrossAccountResourcesResponse"}, + "errors":[ + {"shape":"InternalServiceErrorException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"InvalidNextTokenException"}, + {"shape":"AccessDeniedException"}, + {"shape":"AcceleratorNotFoundException"} + ] + }, "ListCustomRoutingAccelerators":{ "name":"ListCustomRoutingAccelerators", "http":{ @@ -653,6 +743,23 @@ {"shape":"AccessDeniedException"} ] }, + "UpdateCrossAccountAttachment":{ + "name":"UpdateCrossAccountAttachment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateCrossAccountAttachmentRequest"}, + "output":{"shape":"UpdateCrossAccountAttachmentResponse"}, + "errors":[ + {"shape":"AttachmentNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceErrorException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"LimitExceededException"}, + {"shape":"TransactionInProgressException"} + ] + }, "UpdateCustomRoutingAccelerator":{ "name":"UpdateCustomRoutingAccelerator", "http":{ @@ -892,6 +999,43 @@ }, "exception":true }, + "Attachment":{ + "type":"structure", + "members":{ + "AttachmentArn":{"shape":"GenericString"}, + "Name":{"shape":"AttachmentName"}, + "Principals":{"shape":"Principals"}, + "Resources":{"shape":"Resources"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "CreatedTime":{"shape":"Timestamp"} + } + }, + "AttachmentName":{ + "type":"string", + "max":64, + "pattern":"[\\S\\s]+" + }, + "AttachmentNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "Attachments":{ + "type":"list", + "member":{"shape":"Attachment"} + }, + "AwsAccountId":{ + "type":"string", + "max":12, + "min":12, + "pattern":"^\\d{12}$" + }, + "AwsAccountIds":{ + "type":"list", + "member":{"shape":"AwsAccountId"} + }, "ByoipCidr":{ "type":"structure", "members":{ @@ -987,6 +1131,29 @@ "Accelerator":{"shape":"Accelerator"} } }, + "CreateCrossAccountAttachmentRequest":{ + "type":"structure", + "required":[ + "Name", + "IdempotencyToken" + ], + "members":{ + "Name":{"shape":"AttachmentName"}, + "Principals":{"shape":"Principals"}, + "Resources":{"shape":"Resources"}, + "IdempotencyToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true + }, + "Tags":{"shape":"Tags"} + } + }, + "CreateCrossAccountAttachmentResponse":{ + "type":"structure", + "members":{ + "CrossAccountAttachment":{"shape":"Attachment"} + } + }, "CreateCustomRoutingAcceleratorRequest":{ "type":"structure", "required":[ @@ -1112,6 +1279,17 @@ "Listener":{"shape":"Listener"} } }, + "CrossAccountResource":{ + "type":"structure", + "members":{ + "EndpointId":{"shape":"GenericString"}, + "AttachmentArn":{"shape":"GenericString"} + } + }, + "CrossAccountResources":{ + "type":"list", + "member":{"shape":"CrossAccountResource"} + }, "CustomRoutingAccelerator":{ "type":"structure", "members":{ @@ -1186,7 +1364,8 @@ "CustomRoutingEndpointConfiguration":{ "type":"structure", "members":{ - "EndpointId":{"shape":"GenericString"} + "EndpointId":{"shape":"GenericString"}, + "AttachmentArn":{"shape":"GenericString"} } }, "CustomRoutingEndpointConfigurations":{ @@ -1249,6 +1428,13 @@ "AcceleratorArn":{"shape":"GenericString"} } }, + "DeleteCrossAccountAttachmentRequest":{ + "type":"structure", + "required":["AttachmentArn"], + "members":{ + "AttachmentArn":{"shape":"GenericString"} + } + }, "DeleteCustomRoutingAcceleratorRequest":{ "type":"structure", "required":["AcceleratorArn"], @@ -1337,6 +1523,19 @@ "Accelerator":{"shape":"Accelerator"} } }, + "DescribeCrossAccountAttachmentRequest":{ + "type":"structure", + "required":["AttachmentArn"], + "members":{ + "AttachmentArn":{"shape":"GenericString"} + } + }, + "DescribeCrossAccountAttachmentResponse":{ + "type":"structure", + "members":{ + "CrossAccountAttachment":{"shape":"Attachment"} + } + }, "DescribeCustomRoutingAcceleratorAttributesRequest":{ "type":"structure", "required":["AcceleratorArn"], @@ -1454,7 +1653,8 @@ "members":{ "EndpointId":{"shape":"GenericString"}, "Weight":{"shape":"EndpointWeight"}, - "ClientIPPreservationEnabled":{"shape":"GenericBoolean"} + "ClientIPPreservationEnabled":{"shape":"GenericBoolean"}, + "AttachmentArn":{"shape":"GenericString"} } }, "EndpointConfigurations":{ @@ -1691,6 +1891,48 @@ "NextToken":{"shape":"GenericString"} } }, + "ListCrossAccountAttachmentsRequest":{ + "type":"structure", + "members":{ + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"GenericString"} + } + }, + "ListCrossAccountAttachmentsResponse":{ + "type":"structure", + "members":{ + "CrossAccountAttachments":{"shape":"Attachments"}, + "NextToken":{"shape":"GenericString"} + } + }, + "ListCrossAccountResourceAccountsRequest":{ + "type":"structure", + "members":{ + } + }, + "ListCrossAccountResourceAccountsResponse":{ + "type":"structure", + "members":{ + "ResourceOwnerAwsAccountIds":{"shape":"AwsAccountIds"} + } + }, + "ListCrossAccountResourcesRequest":{ + "type":"structure", + "required":["ResourceOwnerAwsAccountId"], + "members":{ + "AcceleratorArn":{"shape":"GenericString"}, + "ResourceOwnerAwsAccountId":{"shape":"AwsAccountId"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"GenericString"} + } + }, + "ListCrossAccountResourcesResponse":{ + "type":"structure", + "members":{ + "CrossAccountResources":{"shape":"CrossAccountResources"}, + "NextToken":{"shape":"GenericString"} + } + }, "ListCustomRoutingAcceleratorsRequest":{ "type":"structure", "members":{ @@ -1895,6 +2137,15 @@ "max":10, "min":1 }, + "Principal":{ + "type":"string", + "max":256, + "pattern":"(^\\d{12}$|arn:.*)" + }, + "Principals":{ + "type":"list", + "member":{"shape":"Principal"} + }, "Protocol":{ "type":"string", "enum":[ @@ -1945,11 +2196,23 @@ "EndpointGroupArn":{"shape":"GenericString"} } }, + "Resource":{ + "type":"structure", + "required":["EndpointId"], + "members":{ + "EndpointId":{"shape":"GenericString"}, + "Region":{"shape":"GenericString"} + } + }, "ResourceArn":{ "type":"string", "max":1011, "min":1 }, + "Resources":{ + "type":"list", + "member":{"shape":"Resource"} + }, "SocketAddress":{ "type":"structure", "members":{ @@ -2074,6 +2337,24 @@ "Accelerator":{"shape":"Accelerator"} } }, + "UpdateCrossAccountAttachmentRequest":{ + "type":"structure", + "required":["AttachmentArn"], + "members":{ + "AttachmentArn":{"shape":"GenericString"}, + "Name":{"shape":"AttachmentName"}, + "AddPrincipals":{"shape":"Principals"}, + "RemovePrincipals":{"shape":"Principals"}, + "AddResources":{"shape":"Resources"}, + "RemoveResources":{"shape":"Resources"} + } + }, + "UpdateCrossAccountAttachmentResponse":{ + "type":"structure", + "members":{ + "CrossAccountAttachment":{"shape":"Attachment"} + } + }, "UpdateCustomRoutingAcceleratorAttributesRequest":{ "type":"structure", "required":["AcceleratorArn"], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,18 +1,20 @@ { "version": "2.0", - "service": "Global Accelerator

This is the Global Accelerator API Reference. This guide is for developers who need detailed information about Global Accelerator API actions, data types, and errors. For more information about Global Accelerator features, see the Global Accelerator Developer Guide.

Global Accelerator is a service in which you create accelerators to improve the performance of your applications for local and global users. Depending on the type of accelerator you choose, you can gain additional benefits.

  • By using a standard accelerator, you can improve availability of your internet applications that are used by a global audience. With a standard accelerator, Global Accelerator directs traffic to optimal endpoints over the Amazon Web Services global network.

  • For other scenarios, you might choose a custom routing accelerator. With a custom routing accelerator, you can use application logic to directly map one or more users to a specific endpoint among many endpoints.

Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the US West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2 on Amazon Web Services CLI commands.

By default, Global Accelerator provides you with static IP addresses that you associate with your accelerator. The static IP addresses are anycast from the Amazon Web Services edge network. For IPv4, Global Accelerator provides two static IPv4 addresses. For dual-stack, Global Accelerator provides a total of four addresses: two static IPv4 addresses and two static IPv6 addresses. With a standard accelerator for IPv4, instead of using the addresses that Global Accelerator provides, you can configure these entry points to be IPv4 addresses from your own IP address ranges that you bring toGlobal Accelerator (BYOIP).

For a standard accelerator, they distribute incoming application traffic across multiple endpoint resources in multiple Amazon Web Services Regions , which increases the availability of your applications. Endpoints for standard accelerators can be Network Load Balancers, Application Load Balancers, Amazon EC2 instances, or Elastic IP addresses that are located in one Amazon Web Services Region or multiple Amazon Web Services Regions. For custom routing accelerators, you map traffic that arrives to the static IP addresses to specific Amazon EC2 servers in endpoints that are virtual private cloud (VPC) subnets.

The static IP addresses remain assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the static IP addresses that are assigned to it, so you can no longer route traffic by using them. You can use IAM policies like tag-based permissions with Global Accelerator to limit the users who have permissions to delete an accelerator. For more information, see Tag-based policies.

For standard accelerators, Global Accelerator uses the Amazon Web Services global network to route traffic to the optimal regional endpoint based on health, client location, and policies that you configure. The service reacts instantly to changes in health or configuration to ensure that internet traffic from clients is always directed to healthy endpoints.

For more information about understanding and using Global Accelerator, see the Global Accelerator Developer Guide.

", + "service": "Global Accelerator

This is the Global Accelerator API Reference. This guide is for developers who need detailed information about Global Accelerator API actions, data types, and errors. For more information about Global Accelerator features, see the Global Accelerator Developer Guide.

Global Accelerator is a service in which you create accelerators to improve the performance of your applications for local and global users. Depending on the type of accelerator you choose, you can gain additional benefits.

  • By using a standard accelerator, you can improve availability of your internet applications that are used by a global audience. With a standard accelerator, Global Accelerator directs traffic to optimal endpoints over the Amazon Web Services global network.

  • For other scenarios, you might choose a custom routing accelerator. With a custom routing accelerator, you can use application logic to directly map one or more users to a specific endpoint among many endpoints.

Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the US West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2 on Amazon Web Services CLI commands.

By default, Global Accelerator provides you with static IP addresses that you associate with your accelerator. The static IP addresses are anycast from the Amazon Web Services edge network. For IPv4, Global Accelerator provides two static IPv4 addresses. For dual-stack, Global Accelerator provides a total of four addresses: two static IPv4 addresses and two static IPv6 addresses. With a standard accelerator for IPv4, instead of using the addresses that Global Accelerator provides, you can configure these entry points to be IPv4 addresses from your own IP address ranges that you bring to Global Accelerator (BYOIP).

For a standard accelerator, they distribute incoming application traffic across multiple endpoint resources in multiple Amazon Web Services Regions , which increases the availability of your applications. Endpoints for standard accelerators can be Network Load Balancers, Application Load Balancers, Amazon EC2 instances, or Elastic IP addresses that are located in one Amazon Web Services Region or multiple Amazon Web Services Regions. For custom routing accelerators, you map traffic that arrives to the static IP addresses to specific Amazon EC2 servers in endpoints that are virtual private cloud (VPC) subnets.

The static IP addresses remain assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the static IP addresses that are assigned to it, so you can no longer route traffic by using them. You can use IAM policies like tag-based permissions with Global Accelerator to limit the users who have permissions to delete an accelerator. For more information, see Tag-based policies.

For standard accelerators, Global Accelerator uses the Amazon Web Services global network to route traffic to the optimal regional endpoint based on health, client location, and policies that you configure. The service reacts instantly to changes in health or configuration to ensure that internet traffic from clients is always directed to healthy endpoints.

For more information about understanding and using Global Accelerator, see the Global Accelerator Developer Guide.

", "operations": { "AddCustomRoutingEndpoints": "

Associate a virtual private cloud (VPC) subnet endpoint with your custom routing accelerator.

The listener port range must be large enough to support the number of IP addresses that can be specified in your subnet. The number of ports required is: subnet size times the number of ports per destination EC2 instances. For example, a subnet defined as /24 requires a listener port range of at least 255 ports.

Note: You must have enough remaining listener ports available to map to the subnet ports, or the call will fail with a LimitExceededException.

By default, all destinations in a subnet in a custom routing accelerator cannot receive traffic. To enable all destinations to receive traffic, or to specify individual port mappings that can receive traffic, see the AllowCustomRoutingTraffic operation.

", "AddEndpoints": "

Add endpoints to an endpoint group. The AddEndpoints API operation is the recommended option for adding endpoints. The alternative options are to add endpoints when you create an endpoint group (with the CreateEndpointGroup API) or when you update an endpoint group (with the UpdateEndpointGroup API).

There are two advantages to using AddEndpoints to add endpoints in Global Accelerator:

  • It's faster, because Global Accelerator only has to resolve the new endpoints that you're adding, rather than resolving new and existing endpoints.

  • It's more convenient, because you don't need to specify the current endpoints that are already in the endpoint group, in addition to the new endpoints that you want to add.

For information about endpoint types and requirements for endpoints that you can add to Global Accelerator, see Endpoints for standard accelerators in the Global Accelerator Developer Guide.

", "AdvertiseByoipCidr": "

Advertises an IPv4 address range that is provisioned for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP). It can take a few minutes before traffic to the specified addresses starts routing to Amazon Web Services because of propagation delays.

To stop advertising the BYOIP address range, use WithdrawByoipCidr.

For more information, see Bring your own IP addresses (BYOIP) in the Global Accelerator Developer Guide.

", "AllowCustomRoutingTraffic": "

Specify the Amazon EC2 instance (destination) IP addresses and ports for a VPC subnet endpoint that can receive traffic for a custom routing accelerator. You can allow traffic to all destinations in the subnet endpoint, or allow traffic to a specified list of destination IP addresses and ports in the subnet. Note that you cannot specify IP addresses or ports outside of the range that you configured for the endpoint group.

After you make changes, you can verify that the updates are complete by checking the status of your accelerator: the status changes from IN_PROGRESS to DEPLOYED.

", "CreateAccelerator": "

Create an accelerator. An accelerator includes one or more listeners that process inbound connections and direct traffic to one or more endpoint groups, each of which includes endpoints, such as Network Load Balancers.

Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the US West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2 on Amazon Web Services CLI commands.

", + "CreateCrossAccountAttachment": "

Create a cross-account attachment in Global Accelerator. You create a cross-account attachment to specify the principals who have permission to add to accelerators in their own account the resources in your account that you also list in the attachment.

A principal can be an Amazon Web Services account number or the Amazon Resource Name (ARN) for an accelerator. For account numbers that are listed as principals, to add a resource listed in the attachment to an accelerator, you must sign in to an account specified as a principal. Then you can add the resources that are listed to any of your accelerators. If an accelerator ARN is listed in the cross-account attachment as a principal, anyone with permission to make updates to the accelerator can add as endpoints resources that are listed in the attachment.

", "CreateCustomRoutingAccelerator": "

Create a custom routing accelerator. A custom routing accelerator directs traffic to one of possibly thousands of Amazon EC2 instance destinations running in a single or multiple virtual private clouds (VPC) subnet endpoints.

Be aware that, by default, all destination EC2 instances in a VPC subnet endpoint cannot receive traffic. To enable all destinations to receive traffic, or to specify individual port mappings that can receive traffic, see the AllowCustomRoutingTraffic operation.

Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the US West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2 on Amazon Web Services CLI commands.

", "CreateCustomRoutingEndpointGroup": "

Create an endpoint group for the specified listener for a custom routing accelerator. An endpoint group is a collection of endpoints in one Amazon Web Services Region.

", "CreateCustomRoutingListener": "

Create a listener to process inbound connections from clients to a custom routing accelerator. Connections arrive to assigned static IP addresses on the port range that you specify.

", "CreateEndpointGroup": "

Create an endpoint group for the specified listener. An endpoint group is a collection of endpoints in one Amazon Web Services Region. A resource must be valid and active when you add it as an endpoint.

For more information about endpoint types and requirements for endpoints that you can add to Global Accelerator, see Endpoints for standard accelerators in the Global Accelerator Developer Guide.

", "CreateListener": "

Create a listener to process inbound connections from clients to an accelerator. Connections arrive to assigned static IP addresses on a port, port range, or list of port ranges that you specify.

", "DeleteAccelerator": "

Delete an accelerator. Before you can delete an accelerator, you must disable it and remove all dependent resources (listeners and endpoint groups). To disable the accelerator, update the accelerator to set Enabled to false.

When you create an accelerator, by default, Global Accelerator provides you with a set of two static IP addresses. Alternatively, you can bring your own IP address ranges to Global Accelerator and assign IP addresses from those ranges.

The IP addresses are assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the static IP addresses that are assigned to the accelerator, so you can no longer route traffic by using them. As a best practice, ensure that you have permissions in place to avoid inadvertently deleting accelerators. You can use IAM policies with Global Accelerator to limit the users who have permissions to delete an accelerator. For more information, see Identity and access management in the Global Accelerator Developer Guide.

", + "DeleteCrossAccountAttachment": "

Delete a cross-account attachment. When you delete an attachment, Global Accelerator revokes the permission to use the resources in the attachment from all principals in the list of principals. Global Accelerator revokes the permission for specific resources by doing the following:

  • If the principal is an account ID, Global Accelerator reviews every accelerator in the account and removes cross-account endpoints from all accelerators.

  • If the principal is an accelerator, Global Accelerator reviews just that accelerator and removes cross-account endpoints from it.

If there are overlapping permissions provided by multiple cross-account attachments, Global Accelerator only removes endpoints if there are no current cross-account attachments that provide access permission. For example, if you delete a cross-account attachment that lists an accelerator as a principal, but another cross-account attachment includes the account ID that owns that accelerator, endpoints will not be removed from the accelerator.

", "DeleteCustomRoutingAccelerator": "

Delete a custom routing accelerator. Before you can delete an accelerator, you must disable it and remove all dependent resources (listeners and endpoint groups). To disable the accelerator, update the accelerator to set Enabled to false.

When you create a custom routing accelerator, by default, Global Accelerator provides you with a set of two static IP addresses.

The IP addresses are assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the static IP addresses that are assigned to the accelerator, so you can no longer route traffic by using them. As a best practice, ensure that you have permissions in place to avoid inadvertently deleting accelerators. You can use IAM policies with Global Accelerator to limit the users who have permissions to delete an accelerator. For more information, see Identity and access management in the Global Accelerator Developer Guide.

", "DeleteCustomRoutingEndpointGroup": "

Delete an endpoint group from a listener for a custom routing accelerator.

", "DeleteCustomRoutingListener": "

Delete a listener for a custom routing accelerator.

", @@ -22,6 +24,7 @@ "DeprovisionByoipCidr": "

Releases the specified address range that you provisioned to use with your Amazon Web Services resources through bring your own IP addresses (BYOIP) and deletes the corresponding address pool.

Before you can release an address range, you must stop advertising it by using WithdrawByoipCidr and you must not have any accelerators that are using static IP addresses allocated from its address range.

For more information, see Bring your own IP addresses (BYOIP) in the Global Accelerator Developer Guide.

", "DescribeAccelerator": "

Describe an accelerator.

", "DescribeAcceleratorAttributes": "

Describe the attributes of an accelerator.

", + "DescribeCrossAccountAttachment": "

Gets configuration information about a cross-account attachment.

", "DescribeCustomRoutingAccelerator": "

Describe a custom routing accelerator.

", "DescribeCustomRoutingAcceleratorAttributes": "

Describe the attributes of a custom routing accelerator.

", "DescribeCustomRoutingEndpointGroup": "

Describe an endpoint group for a custom routing accelerator.

", @@ -30,6 +33,9 @@ "DescribeListener": "

Describe a listener.

", "ListAccelerators": "

List the accelerators for an Amazon Web Services account.

", "ListByoipCidrs": "

Lists the IP address ranges that were specified in calls to ProvisionByoipCidr, including the current state and a history of state changes.

", + "ListCrossAccountAttachments": "

List the cross-account attachments that have been created in Global Accelerator.

", + "ListCrossAccountResourceAccounts": "

List the accounts that have cross-account endpoints.

", + "ListCrossAccountResources": "

List the cross-account endpoints available to add to an accelerator.

", "ListCustomRoutingAccelerators": "

List the custom routing accelerators for an Amazon Web Services account.

", "ListCustomRoutingEndpointGroups": "

List the endpoint groups that are associated with a listener for a custom routing accelerator.

", "ListCustomRoutingListeners": "

List the listeners for a custom routing accelerator.

", @@ -45,6 +51,7 @@ "UntagResource": "

Remove tags from a Global Accelerator resource. When you specify a tag key, the action removes both that key and its associated value. The operation succeeds even if you attempt to remove tags from an accelerator that was already removed.

For more information, see Tagging in Global Accelerator in the Global Accelerator Developer Guide.

", "UpdateAccelerator": "

Update an accelerator to make changes, such as the following:

  • Change the name of the accelerator.

  • Disable the accelerator so that it no longer accepts or routes traffic, or so that you can delete it.

  • Enable the accelerator, if it is disabled.

  • Change the IP address type to dual-stack if it is IPv4, or change the IP address type to IPv4 if it's dual-stack.

Be aware that static IP addresses remain assigned to your accelerator for as long as it exists, even if you disable the accelerator and it no longer accepts or routes traffic. However, when you delete the accelerator, you lose the static IP addresses that are assigned to it, so you can no longer route traffic by using them.

Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the US West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2 on Amazon Web Services CLI commands.

", "UpdateAcceleratorAttributes": "

Update the attributes for an accelerator.

", + "UpdateCrossAccountAttachment": "

Update a cross-account attachment to add or remove principals or resources. When you update an attachment to remove a principal (account ID or accelerator) or a resource, Global Accelerator revokes the permission for specific resources by doing the following:

  • If the principal is an account ID, Global Accelerator reviews every accelerator in the account and removes cross-account endpoints from all accelerators.

  • If the principal is an accelerator, Global Accelerator reviews just that accelerator and removes cross-account endpoints from it.

If there are overlapping permissions provided by multiple cross-account attachments, Global Accelerator only removes endpoints if there are no current cross-account attachments that provide access permission. For example, if you delete a cross-account attachment that lists an accelerator as a principal, but another cross-account attachment includes the account ID that owns that accelerator, endpoints will not be removed from the accelerator.

", "UpdateCustomRoutingAccelerator": "

Update a custom routing accelerator.

", "UpdateCustomRoutingAcceleratorAttributes": "

Update the attributes for a custom routing accelerator.

", "UpdateCustomRoutingListener": "

Update a listener for a custom routing accelerator.

", @@ -153,6 +160,47 @@ "refs": { } }, + "Attachment": { + "base": "

A cross-account attachment in Global Accelerator. A cross-account attachment specifies the principals who have permission to add to accelerators in their own account the resources in your account that you also list in the attachment.

", + "refs": { + "Attachments$member": null, + "CreateCrossAccountAttachmentResponse$CrossAccountAttachment": "

Information about the cross-account attachment.

", + "DescribeCrossAccountAttachmentResponse$CrossAccountAttachment": "

Information about the cross-account attachment.

", + "UpdateCrossAccountAttachmentResponse$CrossAccountAttachment": "

Information about the updated cross-account attachment.

" + } + }, + "AttachmentName": { + "base": null, + "refs": { + "Attachment$Name": "

The name of the cross-account attachment.

", + "CreateCrossAccountAttachmentRequest$Name": "

The name of the cross-account attachment.

", + "UpdateCrossAccountAttachmentRequest$Name": "

The name of the cross-account attachment.

" + } + }, + "AttachmentNotFoundException": { + "base": "

No cross-account attachment was found.

", + "refs": { + } + }, + "Attachments": { + "base": null, + "refs": { + "ListCrossAccountAttachmentsResponse$CrossAccountAttachments": "

Information about the cross-account attachments.

" + } + }, + "AwsAccountId": { + "base": null, + "refs": { + "AwsAccountIds$member": null, + "ListCrossAccountResourcesRequest$ResourceOwnerAwsAccountId": "

The account ID of a resource owner in a cross-account attachment.

" + } + }, + "AwsAccountIds": { + "base": null, + "refs": { + "ListCrossAccountResourceAccountsResponse$ResourceOwnerAwsAccountIds": "

The account IDs of principals (resource owners) in a cross-account attachment who can add endpoints (resources) listed in the same attachment.

" + } + }, "ByoipCidr": { "base": "

Information about an IP address range that is provisioned for use with your Amazon Web Services resources through bring your own IP address (BYOIP).

The following describes each BYOIP State that your IP address range can be in.

  • PENDING_PROVISIONING — You’ve submitted a request to provision an IP address range but it is not yet provisioned with Global Accelerator.

  • READY — The address range is provisioned with Global Accelerator and can be advertised.

  • PENDING_ADVERTISING — You’ve submitted a request for Global Accelerator to advertise an address range but it is not yet being advertised.

  • ADVERTISING — The address range is being advertised by Global Accelerator.

  • PENDING_WITHDRAWING — You’ve submitted a request to withdraw an address range from being advertised but it is still being advertised by Global Accelerator.

  • PENDING_DEPROVISIONING — You’ve submitted a request to deprovision an address range from Global Accelerator but it is still provisioned.

  • DEPROVISIONED — The address range is deprovisioned from Global Accelerator.

  • FAILED_PROVISION — The request to provision the address range from Global Accelerator was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact Amazon Web Services support.

  • FAILED_ADVERTISING — The request for Global Accelerator to advertise the address range was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact Amazon Web Services support.

  • FAILED_WITHDRAW — The request to withdraw the address range from advertising by Global Accelerator was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact Amazon Web Services support.

  • FAILED_DEPROVISION — The request to deprovision the address range from Global Accelerator was not successful. Please make sure that you provide all of the correct information, and try again. If the request fails a second time, contact Amazon Web Services support.

", "refs": { @@ -221,6 +269,16 @@ "refs": { } }, + "CreateCrossAccountAttachmentRequest": { + "base": null, + "refs": { + } + }, + "CreateCrossAccountAttachmentResponse": { + "base": null, + "refs": { + } + }, "CreateCustomRoutingAcceleratorRequest": { "base": null, "refs": { @@ -271,6 +329,18 @@ "refs": { } }, + "CrossAccountResource": { + "base": "

An endpoint (Amazon Web Services resource) that is listed in a cross-account attachment and can be added to an accelerator by specified principals, that are also listed in the attachment.

", + "refs": { + "CrossAccountResources$member": null + } + }, + "CrossAccountResources": { + "base": null, + "refs": { + "ListCrossAccountResourcesResponse$CrossAccountResources": "

The endpoints attached to an accelerator in a cross-account attachment.

" + } + }, "CustomRoutingAccelerator": { "base": "

Attributes of a custom routing accelerator.

", "refs": { @@ -402,6 +472,11 @@ "refs": { } }, + "DeleteCrossAccountAttachmentRequest": { + "base": null, + "refs": { + } + }, "DeleteCustomRoutingAcceleratorRequest": { "base": null, "refs": { @@ -462,6 +537,16 @@ "refs": { } }, + "DescribeCrossAccountAttachmentRequest": { + "base": null, + "refs": { + } + }, + "DescribeCrossAccountAttachmentResponse": { + "base": null, + "refs": { + } + }, "DescribeCustomRoutingAcceleratorAttributesRequest": { "base": null, "refs": { @@ -643,6 +728,7 @@ "AccessDeniedException$Message": null, "AssociatedEndpointGroupFoundException$Message": null, "AssociatedListenerFoundException$Message": null, + "AttachmentNotFoundException$Message": null, "ByoipCidrNotFoundException$Message": null, "ConflictException$Message": null, "EndpointAlreadyExistsException$Message": null, @@ -670,8 +756,8 @@ "CustomRoutingAccelerator$Enabled": "

Indicates whether the accelerator is enabled. The value is true or false. The default value is true.

If the value is set to true, the accelerator cannot be deleted. If set to false, accelerator can be deleted.

", "CustomRoutingAcceleratorAttributes$FlowLogsEnabled": "

Indicates whether flow logs are enabled. The default value is false. If the value is true, FlowLogsS3Bucket and FlowLogsS3Prefix must be specified.

For more information, see Flow logs in the Global Accelerator Developer Guide.

", "DenyCustomRoutingTrafficRequest$DenyAllTrafficToEndpoint": "

Indicates whether all destination IP addresses and ports for a specified VPC subnet endpoint cannot receive traffic from a custom routing accelerator. The value is TRUE or FALSE.

When set to TRUE, no destinations in the custom routing VPC subnet can receive traffic. Note that you cannot specify destination IP addresses and ports when the value is set to TRUE.

When set to FALSE (or not specified), you must specify a list of destination IP addresses that cannot receive traffic. A list of ports is optional. If you don't specify a list of ports, the ports that can accept traffic is the same as the ports configured for the endpoint group.

The default value is FALSE.

", - "EndpointConfiguration$ClientIPPreservationEnabled": "

Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false. The default value is true for new accelerators.

If the value is set to true, the client's IP address is preserved in the X-Forwarded-For request header as traffic travels to applications on the endpoint fronted by the accelerator.

Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load Balancers, Amazon EC2 instances, and Network Load Balancers with Security Groups. IMPORTANT: You cannot use client IP address preservation with Network Load Balancers with TLS listeners.

For more information, see Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.

", - "EndpointDescription$ClientIPPreservationEnabled": "

Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false. The default value is true for new accelerators.

If the value is set to true, the client's IP address is preserved in the X-Forwarded-For request header as traffic travels to applications on the endpoint fronted by the accelerator.

Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load Balancers, Amazon EC2 instances, and Network Load Balancers with Security Groups. IMPORTANT: You cannot use client IP address preservation with Network Load Balancers with TLS listeners.

For more information, see Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.

", + "EndpointConfiguration$ClientIPPreservationEnabled": "

Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false. The default value is true for Application Load Balancer endpoints.

If the value is set to true, the client's IP address is preserved in the X-Forwarded-For request header as traffic travels to applications on the endpoint fronted by the accelerator.

Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load Balancers, Amazon EC2 instances, and Network Load Balancers with security groups. IMPORTANT: You cannot use client IP address preservation with Network Load Balancers with TLS listeners.

For more information, see Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.

", + "EndpointDescription$ClientIPPreservationEnabled": "

Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false. The default value is true for Application Load Balancers endpoints.

If the value is set to true, the client's IP address is preserved in the X-Forwarded-For request header as traffic travels to applications on the endpoint fronted by the accelerator.

Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load Balancers, Amazon EC2 instances, and Network Load Balancers with security groups. IMPORTANT: You cannot use client IP address preservation with Network Load Balancers with TLS listeners.

For more information, see Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.

", "EndpointIdentifier$ClientIPPreservationEnabled": "

Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false.

If the value is set to true, the client's IP address is preserved in the X-Forwarded-For request header as traffic travels to applications on the endpoint fronted by the accelerator.

", "UpdateAcceleratorAttributesRequest$FlowLogsEnabled": "

Update whether flow logs are enabled. The default value is false. If the value is true, FlowLogsS3Bucket and FlowLogsS3Prefix must be specified.

For more information, see Flow Logs in the Global Accelerator Developer Guide.

", "UpdateAcceleratorRequest$Enabled": "

Indicates whether an accelerator is enabled. The value is true or false. The default value is true.

If the value is set to true, the accelerator cannot be deleted. If set to false, the accelerator can be deleted.

", @@ -696,6 +782,7 @@ "AdvertiseByoipCidrRequest$Cidr": "

The address range, in CIDR notation. This must be the exact range that you provisioned. You can't advertise only a portion of the provisioned range.

", "AllowCustomRoutingTrafficRequest$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group.

", "AllowCustomRoutingTrafficRequest$EndpointId": "

An ID for the endpoint. For custom routing accelerators, this is the virtual private cloud (VPC) subnet ID.

", + "Attachment$AttachmentArn": "

The Amazon Resource Name (ARN) of the cross-account attachment.

", "ByoipCidr$Cidr": "

The address range, in CIDR notation.

", "ByoipCidrEvent$Message": "

A string that contains an Event message describing changes that you make in the status of an IP address range that you bring to Global Accelerator through bring your own IP address (BYOIP).

", "CidrAuthorizationContext$Message": "

The plain-text authorization message for the prefix and account.

", @@ -708,17 +795,21 @@ "CreateEndpointGroupRequest$ListenerArn": "

The Amazon Resource Name (ARN) of the listener.

", "CreateEndpointGroupRequest$EndpointGroupRegion": "

The Amazon Web Services Region where the endpoint group is located. A listener can have only one endpoint group in a specific Region.

", "CreateListenerRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of your accelerator.

", + "CrossAccountResource$EndpointId": "

The endpoint ID for the endpoint that is listed in a cross-account attachment and can be added to an accelerator by specified principals.

", + "CrossAccountResource$AttachmentArn": "

The Amazon Resource Name (ARN) of the cross-account attachment that specifies the endpoints (resources) that can be added to accelerators and principals that have permission to add the endpoints to accelerators.

", "CustomRoutingAccelerator$AcceleratorArn": "

The Amazon Resource Name (ARN) of the custom routing accelerator.

", "CustomRoutingAccelerator$Name": "

The name of the accelerator. The name must contain only alphanumeric characters or hyphens (-), and must not begin or end with a hyphen.

", "CustomRoutingAccelerator$DnsName": "

The Domain Name System (DNS) name that Global Accelerator creates that points to an accelerator's static IPv4 addresses.

The naming convention for the DNS name is the following: A lowercase letter a, followed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example: a1234567890abcdef.awsglobalaccelerator.com.

If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName, that points to both the A record and the AAAA record for all four static addresses for the accelerator: two IPv4 addresses and two IPv6 addresses.

For more information about the default DNS name, see Support for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.

", "CustomRoutingAcceleratorAttributes$FlowLogsS3Bucket": "

The name of the Amazon S3 bucket for the flow logs. Attribute is required if FlowLogsEnabled is true. The bucket must exist and have a bucket policy that grants Global Accelerator permission to write to the bucket.

", "CustomRoutingAcceleratorAttributes$FlowLogsS3Prefix": "

The prefix for the location in the Amazon S3 bucket for the flow logs. Attribute is required if FlowLogsEnabled is true.

If you don’t specify a prefix, the flow logs are stored in the root of the bucket. If you specify slash (/) for the S3 bucket prefix, the log file bucket folder structure will include a double slash (//), like the following:

DOC-EXAMPLE-BUCKET//AWSLogs/aws_account_id

", "CustomRoutingEndpointConfiguration$EndpointId": "

An ID for the endpoint. For custom routing accelerators, this is the virtual private cloud (VPC) subnet ID.

", + "CustomRoutingEndpointConfiguration$AttachmentArn": "

The Amazon Resource Name (ARN) of the cross-account attachment that specifies the endpoints (resources) that can be added to accelerators and principals that have permission to add the endpoints to accelerators.

", "CustomRoutingEndpointDescription$EndpointId": "

An ID for the endpoint. For custom routing accelerators, this is the virtual private cloud (VPC) subnet ID.

", "CustomRoutingEndpointGroup$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group.

", "CustomRoutingEndpointGroup$EndpointGroupRegion": "

The Amazon Web Services Region where the endpoint group is located.

", "CustomRoutingListener$ListenerArn": "

The Amazon Resource Name (ARN) of the listener.

", "DeleteAcceleratorRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of an accelerator.

", + "DeleteCrossAccountAttachmentRequest$AttachmentArn": "

The Amazon Resource Name (ARN) for the cross-account attachment to delete.

", "DeleteCustomRoutingAcceleratorRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the custom routing accelerator to delete.

", "DeleteCustomRoutingEndpointGroupRequest$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group to delete.

", "DeleteCustomRoutingListenerRequest$ListenerArn": "

The Amazon Resource Name (ARN) of the listener to delete.

", @@ -729,6 +820,7 @@ "DeprovisionByoipCidrRequest$Cidr": "

The address range, in CIDR notation. The prefix must be the same prefix that you specified when you provisioned the address range.

", "DescribeAcceleratorAttributesRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the accelerator with the attributes that you want to describe.

", "DescribeAcceleratorRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the accelerator to describe.

", + "DescribeCrossAccountAttachmentRequest$AttachmentArn": "

The Amazon Resource Name (ARN) for the cross-account attachment to describe.

", "DescribeCustomRoutingAcceleratorAttributesRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the custom routing accelerator to describe the attributes for.

", "DescribeCustomRoutingAcceleratorRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the accelerator to describe.

", "DescribeCustomRoutingEndpointGroupRequest$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group to describe.

", @@ -740,6 +832,7 @@ "DestinationPortMapping$EndpointId": "

The ID for the virtual private cloud (VPC) subnet.

", "DestinationPortMapping$EndpointGroupRegion": "

The Amazon Web Services Region for the endpoint group.

", "EndpointConfiguration$EndpointId": "

An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address allocation ID. For Amazon EC2 instances, this is the EC2 instance ID. A resource must be valid and active when you add it as an endpoint.

An Application Load Balancer can be either internal or internet-facing.

", + "EndpointConfiguration$AttachmentArn": "

The Amazon Resource Name (ARN) of the cross-account attachment that specifies the endpoints (resources) that can be added to accelerators and principals that have permission to add the endpoints to accelerators.

", "EndpointDescription$EndpointId": "

An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address allocation ID. For Amazon EC2 instances, this is the EC2 instance ID.

An Application Load Balancer can be either internal or internet-facing.

", "EndpointDescription$HealthReason": "

Returns a null result.

", "EndpointGroup$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group.

", @@ -751,6 +844,11 @@ "ListAcceleratorsResponse$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListByoipCidrsRequest$NextToken": "

The token for the next page of results.

", "ListByoipCidrsResponse$NextToken": "

The token for the next page of results.

", + "ListCrossAccountAttachmentsRequest$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "ListCrossAccountAttachmentsResponse$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "ListCrossAccountResourcesRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of an accelerator in a cross-account attachment.

", + "ListCrossAccountResourcesRequest$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "ListCrossAccountResourcesResponse$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListCustomRoutingAcceleratorsRequest$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListCustomRoutingAcceleratorsResponse$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListCustomRoutingEndpointGroupsRequest$ListenerArn": "

The Amazon Resource Name (ARN) of the listener to list endpoint groups for.

", @@ -779,12 +877,15 @@ "ProvisionByoipCidrRequest$Cidr": "

The public IPv4 address range, in CIDR notation. The most specific IP prefix that you can specify is /24. The address range cannot overlap with another address range that you've brought to this or another Region.

", "RemoveCustomRoutingEndpointsRequest$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group to remove endpoints from.

", "RemoveEndpointsRequest$EndpointGroupArn": "

The Amazon Resource Name (ARN) of the endpoint group.

", + "Resource$EndpointId": "

The endpoint ID for the endpoint (Amazon Web Services resource).

", + "Resource$Region": "

The Amazon Web Services Region where a resource is located.

", "SocketAddress$IpAddress": "

The IP address for the socket address.

", "UpdateAcceleratorAttributesRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the accelerator that you want to update.

", "UpdateAcceleratorAttributesRequest$FlowLogsS3Bucket": "

The name of the Amazon S3 bucket for the flow logs. Attribute is required if FlowLogsEnabled is true. The bucket must exist and have a bucket policy that grants Global Accelerator permission to write to the bucket.

", "UpdateAcceleratorAttributesRequest$FlowLogsS3Prefix": "

Update the prefix for the location in the Amazon S3 bucket for the flow logs. Attribute is required if FlowLogsEnabled is true.

If you specify slash (/) for the S3 bucket prefix, the log file bucket folder structure will include a double slash (//), like the following:

s3-bucket_name//AWSLogs/aws_account_id

", "UpdateAcceleratorRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the accelerator to update.

", "UpdateAcceleratorRequest$Name": "

The name of the accelerator. The name can have a maximum of 64 characters, must contain only alphanumeric characters, periods (.), or hyphens (-), and must not begin or end with a hyphen or period.

", + "UpdateCrossAccountAttachmentRequest$AttachmentArn": "

The Amazon Resource Name (ARN) of the cross-account attachment to update.

", "UpdateCustomRoutingAcceleratorAttributesRequest$AcceleratorArn": "

The Amazon Resource Name (ARN) of the custom routing accelerator to update attributes for.

", "UpdateCustomRoutingAcceleratorAttributesRequest$FlowLogsS3Bucket": "

The name of the Amazon S3 bucket for the flow logs. Attribute is required if FlowLogsEnabled is true. The bucket must exist and have a bucket policy that grants Global Accelerator permission to write to the bucket.

", "UpdateCustomRoutingAcceleratorAttributesRequest$FlowLogsS3Prefix": "

Update the prefix for the location in the Amazon S3 bucket for the flow logs. Attribute is required if FlowLogsEnabled is true.

If you don’t specify a prefix, the flow logs are stored in the root of the bucket. If you specify slash (/) for the S3 bucket prefix, the log file bucket folder structure will include a double slash (//), like the following:

DOC-EXAMPLE-BUCKET//AWSLogs/aws_account_id

", @@ -838,6 +939,7 @@ "base": null, "refs": { "CreateAcceleratorRequest$IdempotencyToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency—that is, the uniqueness—of an accelerator.

", + "CreateCrossAccountAttachmentRequest$IdempotencyToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency—that is, the uniqueness—of the request.

", "CreateCustomRoutingAcceleratorRequest$IdempotencyToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency—that is, the uniqueness—of the request.

", "CreateCustomRoutingEndpointGroupRequest$IdempotencyToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency—that is, the uniqueness—of the request.

", "CreateCustomRoutingListenerRequest$IdempotencyToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency—that is, the uniqueness—of the request.

", @@ -941,6 +1043,36 @@ "refs": { } }, + "ListCrossAccountAttachmentsRequest": { + "base": null, + "refs": { + } + }, + "ListCrossAccountAttachmentsResponse": { + "base": null, + "refs": { + } + }, + "ListCrossAccountResourceAccountsRequest": { + "base": null, + "refs": { + } + }, + "ListCrossAccountResourceAccountsResponse": { + "base": null, + "refs": { + } + }, + "ListCrossAccountResourcesRequest": { + "base": null, + "refs": { + } + }, + "ListCrossAccountResourcesResponse": { + "base": null, + "refs": { + } + }, "ListCustomRoutingAcceleratorsRequest": { "base": null, "refs": { @@ -1046,6 +1178,8 @@ "refs": { "ListAcceleratorsRequest$MaxResults": "

The number of Global Accelerator objects that you want to return with this call. The default value is 10.

", "ListByoipCidrsRequest$MaxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

", + "ListCrossAccountAttachmentsRequest$MaxResults": "

The number of cross-account attachment objects that you want to return with this call. The default value is 10.

", + "ListCrossAccountResourcesRequest$MaxResults": "

The number of cross-account endpoints objects that you want to return with this call. The default value is 10.

", "ListCustomRoutingAcceleratorsRequest$MaxResults": "

The number of custom routing Global Accelerator objects that you want to return with this call. The default value is 10.

", "ListCustomRoutingEndpointGroupsRequest$MaxResults": "

The number of endpoint group objects that you want to return with this call. The default value is 10.

", "ListCustomRoutingListenersRequest$MaxResults": "

The number of listener objects that you want to return with this call. The default value is 10.

", @@ -1119,6 +1253,21 @@ "UpdateListenerRequest$PortRanges": "

The updated list of port ranges for the connections from clients to the accelerator.

" } }, + "Principal": { + "base": null, + "refs": { + "Principals$member": null + } + }, + "Principals": { + "base": null, + "refs": { + "Attachment$Principals": "

The principals included in the cross-account attachment.

", + "CreateCrossAccountAttachmentRequest$Principals": "

The principals to list in the cross-account attachment. A principal can be an Amazon Web Services account number or the Amazon Resource Name (ARN) for an accelerator.

", + "UpdateCrossAccountAttachmentRequest$AddPrincipals": "

The principals to add to the cross-account attachment. A principal is an account or the Amazon Resource Name (ARN) of an accelerator that the attachment gives permission to add the resources from another account, listed in the attachment.

To add more than one principal, separate the account numbers or accelerator ARNs, or both, with commas.

", + "UpdateCrossAccountAttachmentRequest$RemovePrincipals": "

The principals to remove from the cross-account attachment. A principal is an account or the Amazon Resource Name (ARN) of an accelerator that is given permission to add the resources from another account, listed in the cross-account attachment.

To remove more than one principal, separate the account numbers or accelerator ARNs, or both, with commas.

" + } + }, "Protocol": { "base": null, "refs": { @@ -1154,6 +1303,12 @@ "refs": { } }, + "Resource": { + "base": "

An Amazon Web Services resource that is supported by Global Accelerator and can be added as an endpoint for an accelerator.

", + "refs": { + "Resources$member": null + } + }, "ResourceArn": { "base": null, "refs": { @@ -1162,6 +1317,15 @@ "UntagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the Global Accelerator resource to remove tags from. An ARN uniquely identifies a resource.

" } }, + "Resources": { + "base": null, + "refs": { + "Attachment$Resources": "

The resources included in the cross-account attachment.

", + "CreateCrossAccountAttachmentRequest$Resources": "

The Amazon Resource Names (ARNs) for the resources to list in the cross-account attachment. A resource can be any supported Amazon Web Services resource type for Global Accelerator.

", + "UpdateCrossAccountAttachmentRequest$AddResources": "

The resources to add to the cross-account attachment. A resource listed in a cross-account attachment can be added to an accelerator by the principals that are listed in the attachment.

To add more than one resource, separate the resource ARNs with commas.

", + "UpdateCrossAccountAttachmentRequest$RemoveResources": "

The resources to remove from the cross-account attachment. A resource listed in a cross-account attachment can be added to an accelerator fy principals that are listed in the cross-account attachment.

To remove more than one resource, separate the resource ARNs with commas.

" + } + }, "SocketAddress": { "base": "

An IP address/port combination.

", "refs": { @@ -1215,6 +1379,7 @@ "base": null, "refs": { "CreateAcceleratorRequest$Tags": "

Create tags for an accelerator.

For more information, see Tagging in Global Accelerator in the Global Accelerator Developer Guide.

", + "CreateCrossAccountAttachmentRequest$Tags": "

Create tags for cross-account attachment.

For more information, see Tagging in Global Accelerator in the Global Accelerator Developer Guide.

", "CreateCustomRoutingAcceleratorRequest$Tags": "

Create tags for an accelerator.

For more information, see Tagging in Global Accelerator in the Global Accelerator Developer Guide.

", "ListTagsForResourceResponse$Tags": "

Root level tag for the Tags parameters.

", "TagResourceRequest$Tags": "

The tags to add to a resource. A tag consists of a key and a value that you define.

" @@ -1234,6 +1399,8 @@ "Accelerator$CreatedTime": "

The date and time that the accelerator was created.

", "Accelerator$LastModifiedTime": "

The date and time that the accelerator was last modified.

", "AcceleratorEvent$Timestamp": "

A timestamp for when you update an accelerator in Global Accelerator from IPv4 to dual-stack, or dual-stack to IPv4.

", + "Attachment$LastModifiedTime": "

The date and time that the cross-account attachment was last modified.

", + "Attachment$CreatedTime": "

The date and time that the cross-account attachment was created.

", "ByoipCidrEvent$Timestamp": "

A timestamp for when you make a status change for an IP address range that you bring to Global Accelerator through bring your own IP address (BYOIP).

", "CustomRoutingAccelerator$CreatedTime": "

The date and time that the accelerator was created.

", "CustomRoutingAccelerator$LastModifiedTime": "

The date and time that the accelerator was last modified.

" @@ -1281,6 +1448,16 @@ "base": null, "refs": { } + }, + "UpdateCrossAccountAttachmentRequest": { + "base": null, + "refs": { + } + }, + "UpdateCrossAccountAttachmentResponse": { + "base": null, + "refs": { + } }, "UpdateCustomRoutingAcceleratorAttributesRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/globalaccelerator/2018-08-08/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/globalaccelerator/2018-08-08/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,6 +12,18 @@ "limit_key": "MaxResults", "result_key": "ByoipCidrs" }, + "ListCrossAccountAttachments": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "CrossAccountAttachments" + }, + "ListCrossAccountResources": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "CrossAccountResources" + }, "ListCustomRoutingAccelerators": { "input_token": "NextToken", "output_token": "NextToken", @@ -21,7 +33,8 @@ "ListCustomRoutingEndpointGroups": { "input_token": "NextToken", "output_token": "NextToken", - "limit_key": "MaxResults" + "limit_key": "MaxResults", + "result_key": "EndpointGroups" }, "ListCustomRoutingListeners": { "input_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -193,6 +193,18 @@ {"shape":"FederationSourceRetryableException"} ] }, + "BatchGetTableOptimizer":{ + "name":"BatchGetTableOptimizer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchGetTableOptimizerRequest"}, + "output":{"shape":"BatchGetTableOptimizerResponse"}, + "errors":[ + {"shape":"InternalServiceException"} + ] + }, "BatchGetTriggers":{ "name":"BatchGetTriggers", "http":{ @@ -637,6 +649,22 @@ {"shape":"ResourceNotReadyException"} ] }, + "CreateTableOptimizer":{ + "name":"CreateTableOptimizer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateTableOptimizerRequest"}, + "output":{"shape":"CreateTableOptimizerResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"}, + {"shape":"AlreadyExistsException"}, + {"shape":"InternalServiceException"} + ] + }, "CreateTrigger":{ "name":"CreateTrigger", "http":{ @@ -1011,6 +1039,21 @@ {"shape":"ResourceNotReadyException"} ] }, + "DeleteTableOptimizer":{ + "name":"DeleteTableOptimizer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTableOptimizerRequest"}, + "output":{"shape":"DeleteTableOptimizerResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceException"} + ] + }, "DeleteTableVersion":{ "name":"DeleteTableVersion", "http":{ @@ -1185,6 +1228,32 @@ {"shape":"GlueEncryptionException"} ] }, + "GetColumnStatisticsTaskRun":{ + "name":"GetColumnStatisticsTaskRun", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetColumnStatisticsTaskRunRequest"}, + "output":{"shape":"GetColumnStatisticsTaskRunResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"InvalidInputException"} + ] + }, + "GetColumnStatisticsTaskRuns":{ + "name":"GetColumnStatisticsTaskRuns", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetColumnStatisticsTaskRunsRequest"}, + "output":{"shape":"GetColumnStatisticsTaskRunsResponse"}, + "errors":[ + {"shape":"OperationTimeoutException"} + ] + }, "GetConnection":{ "name":"GetConnection", "http":{ @@ -1824,6 +1893,21 @@ {"shape":"FederationSourceRetryableException"} ] }, + "GetTableOptimizer":{ + "name":"GetTableOptimizer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTableOptimizerRequest"}, + "output":{"shape":"GetTableOptimizerResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceException"} + ] + }, "GetTableVersion":{ "name":"GetTableVersion", "http":{ @@ -2095,6 +2179,18 @@ {"shape":"OperationTimeoutException"} ] }, + "ListColumnStatisticsTaskRuns":{ + "name":"ListColumnStatisticsTaskRuns", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListColumnStatisticsTaskRunsRequest"}, + "output":{"shape":"ListColumnStatisticsTaskRunsResponse"}, + "errors":[ + {"shape":"OperationTimeoutException"} + ] + }, "ListCrawlers":{ "name":"ListCrawlers", "http":{ @@ -2313,6 +2409,21 @@ {"shape":"IllegalSessionStateException"} ] }, + "ListTableOptimizerRuns":{ + "name":"ListTableOptimizerRuns", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTableOptimizerRunsRequest"}, + "output":{"shape":"ListTableOptimizerRunsResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"} + ] + }, "ListTriggers":{ "name":"ListTriggers", "http":{ @@ -2533,6 +2644,23 @@ {"shape":"IllegalBlueprintStateException"} ] }, + "StartColumnStatisticsTaskRun":{ + "name":"StartColumnStatisticsTaskRun", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartColumnStatisticsTaskRunRequest"}, + "output":{"shape":"StartColumnStatisticsTaskRunResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"ColumnStatisticsTaskRunningException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"ResourceNumberLimitExceededException"}, + {"shape":"InvalidInputException"} + ] + }, "StartCrawler":{ "name":"StartCrawler", "http":{ @@ -2711,6 +2839,21 @@ {"shape":"ConcurrentRunsExceededException"} ] }, + "StopColumnStatisticsTaskRun":{ + "name":"StopColumnStatisticsTaskRun", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StopColumnStatisticsTaskRunRequest"}, + "output":{"shape":"StopColumnStatisticsTaskRunResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"ColumnStatisticsTaskNotRunningException"}, + {"shape":"ColumnStatisticsTaskStoppingException"}, + {"shape":"OperationTimeoutException"} + ] + }, "StopCrawler":{ "name":"StopCrawler", "http":{ @@ -3118,6 +3261,21 @@ {"shape":"ResourceNotReadyException"} ] }, + "UpdateTableOptimizer":{ + "name":"UpdateTableOptimizer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateTableOptimizerRequest"}, + "output":{"shape":"UpdateTableOptimizerResponse"}, + "errors":[ + {"shape":"EntityNotFoundException"}, + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServiceException"} + ] + }, "UpdateTrigger":{ "name":"UpdateTrigger", "http":{ @@ -3197,7 +3355,10 @@ }, "AdditionalOptionKeys":{ "type":"string", - "enum":["performanceTuning.caching"] + "enum":[ + "performanceTuning.caching", + "observations.scope" + ] }, "AdditionalOptions":{ "type":"map", @@ -3338,6 +3499,11 @@ "Mapping":{"shape":"Mappings"} } }, + "ArnString":{ + "type":"string", + "max":2048, + "min":20 + }, "AthenaConnectorSource":{ "type":"structure", "required":[ @@ -3653,6 +3819,47 @@ "max":1000, "min":0 }, + "BatchGetTableOptimizerEntries":{ + "type":"list", + "member":{"shape":"BatchGetTableOptimizerEntry"} + }, + "BatchGetTableOptimizerEntry":{ + "type":"structure", + "members":{ + "catalogId":{"shape":"CatalogIdString"}, + "databaseName":{"shape":"databaseNameString"}, + "tableName":{"shape":"tableNameString"}, + "type":{"shape":"TableOptimizerType"} + } + }, + "BatchGetTableOptimizerError":{ + "type":"structure", + "members":{ + "error":{"shape":"ErrorDetail"}, + "catalogId":{"shape":"CatalogIdString"}, + "databaseName":{"shape":"databaseNameString"}, + "tableName":{"shape":"tableNameString"}, + "type":{"shape":"TableOptimizerType"} + } + }, + "BatchGetTableOptimizerErrors":{ + "type":"list", + "member":{"shape":"BatchGetTableOptimizerError"} + }, + "BatchGetTableOptimizerRequest":{ + "type":"structure", + "required":["Entries"], + "members":{ + "Entries":{"shape":"BatchGetTableOptimizerEntries"} + } + }, + "BatchGetTableOptimizerResponse":{ + "type":"structure", + "members":{ + "TableOptimizers":{"shape":"BatchTableOptimizers"}, + "Failures":{"shape":"BatchGetTableOptimizerErrors"} + } + }, "BatchGetTriggersRequest":{ "type":"structure", "required":["TriggerNames"], @@ -3734,6 +3941,19 @@ "type":"list", "member":{"shape":"BatchStopJobRunSuccessfulSubmission"} }, + "BatchTableOptimizer":{ + "type":"structure", + "members":{ + "catalogId":{"shape":"CatalogIdString"}, + "databaseName":{"shape":"databaseNameString"}, + "tableName":{"shape":"tableNameString"}, + "tableOptimizer":{"shape":"TableOptimizer"} + } + }, + "BatchTableOptimizers":{ + "type":"list", + "member":{"shape":"BatchTableOptimizer"} + }, "BatchUpdatePartitionFailureEntry":{ "type":"structure", "members":{ @@ -4271,7 +4491,9 @@ "EvaluateDataQualityMultiFrame":{"shape":"EvaluateDataQualityMultiFrame"}, "Recipe":{"shape":"Recipe"}, "SnowflakeSource":{"shape":"SnowflakeSource"}, - "SnowflakeTarget":{"shape":"SnowflakeTarget"} + "SnowflakeTarget":{"shape":"SnowflakeTarget"}, + "ConnectorDataSource":{"shape":"ConnectorDataSource"}, + "ConnectorDataTarget":{"shape":"ConnectorDataTarget"} } }, "CodeGenConfigurationNodes":{ @@ -4369,6 +4591,10 @@ "type":"list", "member":{"shape":"Column"} }, + "ColumnNameList":{ + "type":"list", + "member":{"shape":"NameString"} + }, "ColumnNameString":{ "type":"string", "max":1024, @@ -4430,6 +4656,70 @@ "type":"list", "member":{"shape":"ColumnStatistics"} }, + "ColumnStatisticsState":{ + "type":"string", + "enum":[ + "STARTING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "STOPPED" + ] + }, + "ColumnStatisticsTaskNotRunningException":{ + "type":"structure", + "members":{ + "Message":{"shape":"MessageString"} + }, + "exception":true + }, + "ColumnStatisticsTaskRun":{ + "type":"structure", + "members":{ + "CustomerId":{"shape":"AccountId"}, + "ColumnStatisticsTaskRunId":{"shape":"HashString"}, + "DatabaseName":{"shape":"DatabaseName"}, + "TableName":{"shape":"TableName"}, + "ColumnNameList":{"shape":"ColumnNameList"}, + "CatalogID":{"shape":"CatalogIdString"}, + "Role":{"shape":"Role"}, + "SampleSize":{"shape":"SampleSizePercentage"}, + "SecurityConfiguration":{"shape":"CrawlerSecurityConfiguration"}, + "NumberOfWorkers":{"shape":"PositiveInteger"}, + "WorkerType":{"shape":"NameString"}, + "Status":{"shape":"ColumnStatisticsState"}, + "CreationTime":{"shape":"Timestamp"}, + "LastUpdated":{"shape":"Timestamp"}, + "StartTime":{"shape":"Timestamp"}, + "EndTime":{"shape":"Timestamp"}, + "ErrorMessage":{"shape":"DescriptionString"}, + "DPUSeconds":{"shape":"NonNegativeDouble"} + } + }, + "ColumnStatisticsTaskRunIdList":{ + "type":"list", + "member":{"shape":"HashString"}, + "max":100, + "min":0 + }, + "ColumnStatisticsTaskRunningException":{ + "type":"structure", + "members":{ + "Message":{"shape":"MessageString"} + }, + "exception":true + }, + "ColumnStatisticsTaskRunsList":{ + "type":"list", + "member":{"shape":"ColumnStatisticsTaskRun"} + }, + "ColumnStatisticsTaskStoppingException":{ + "type":"structure", + "members":{ + "Message":{"shape":"MessageString"} + }, + "exception":true + }, "ColumnStatisticsType":{ "type":"string", "enum":[ @@ -4658,6 +4948,39 @@ "Connections":{"shape":"OrchestrationStringList"} } }, + "ConnectorDataSource":{ + "type":"structure", + "required":[ + "Name", + "ConnectionType", + "Data" + ], + "members":{ + "Name":{"shape":"NodeName"}, + "ConnectionType":{"shape":"EnclosedInStringProperty"}, + "Data":{"shape":"ConnectorOptions"}, + "OutputSchemas":{"shape":"GlueSchemas"} + } + }, + "ConnectorDataTarget":{ + "type":"structure", + "required":[ + "Name", + "ConnectionType", + "Data" + ], + "members":{ + "Name":{"shape":"NodeName"}, + "ConnectionType":{"shape":"EnclosedInStringProperty"}, + "Data":{"shape":"ConnectorOptions"}, + "Inputs":{"shape":"OneInput"} + } + }, + "ConnectorOptions":{ + "type":"map", + "key":{"shape":"GenericString"}, + "value":{"shape":"GenericString"} + }, "ContextWords":{ "type":"list", "member":{"shape":"NameString"}, @@ -5291,6 +5614,28 @@ "Session":{"shape":"Session"} } }, + "CreateTableOptimizerRequest":{ + "type":"structure", + "required":[ + "CatalogId", + "DatabaseName", + "TableName", + "Type", + "TableOptimizerConfiguration" + ], + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "Type":{"shape":"TableOptimizerType"}, + "TableOptimizerConfiguration":{"shape":"TableOptimizerConfiguration"} + } + }, + "CreateTableOptimizerResponse":{ + "type":"structure", + "members":{ + } + }, "CreateTableRequest":{ "type":"structure", "required":[ @@ -5563,6 +5908,21 @@ "max":255, "min":1 }, + "DataQualityAnalyzerResult":{ + "type":"structure", + "members":{ + "Name":{"shape":"NameString"}, + "Description":{"shape":"DataQualityRuleResultDescription"}, + "EvaluationMessage":{"shape":"DataQualityRuleResultDescription"}, + "EvaluatedMetrics":{"shape":"EvaluatedMetricsMap"} + } + }, + "DataQualityAnalyzerResults":{ + "type":"list", + "member":{"shape":"DataQualityAnalyzerResult"}, + "max":2000, + "min":0 + }, "DataQualityEvaluationRunAdditionalRunOptions":{ "type":"structure", "members":{ @@ -5570,6 +5930,34 @@ "ResultsS3Prefix":{"shape":"UriString"} } }, + "DataQualityMetricValues":{ + "type":"structure", + "members":{ + "ActualValue":{"shape":"NullableDouble"}, + "ExpectedValue":{"shape":"NullableDouble"}, + "LowerLimit":{"shape":"NullableDouble"}, + "UpperLimit":{"shape":"NullableDouble"} + } + }, + "DataQualityObservation":{ + "type":"structure", + "members":{ + "Description":{"shape":"DataQualityObservationDescription"}, + "MetricBasedObservation":{"shape":"MetricBasedObservation"} + } + }, + "DataQualityObservationDescription":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" + }, + "DataQualityObservations":{ + "type":"list", + "member":{"shape":"DataQualityObservation"}, + "max":50, + "min":0 + }, "DataQualityResult":{ "type":"structure", "members":{ @@ -5583,7 +5971,9 @@ "JobName":{"shape":"NameString"}, "JobRunId":{"shape":"HashString"}, "RulesetEvaluationRunId":{"shape":"HashString"}, - "RuleResults":{"shape":"DataQualityRuleResults"} + "RuleResults":{"shape":"DataQualityRuleResults"}, + "AnalyzerResults":{"shape":"DataQualityAnalyzerResults"}, + "Observations":{"shape":"DataQualityObservations"} } }, "DataQualityResultDescription":{ @@ -5652,12 +6042,18 @@ "type":"structure", "members":{ "Name":{"shape":"NameString"}, - "Description":{"shape":"DescriptionString"}, - "EvaluationMessage":{"shape":"DescriptionString"}, + "Description":{"shape":"DataQualityRuleResultDescription"}, + "EvaluationMessage":{"shape":"DataQualityRuleResultDescription"}, "Result":{"shape":"DataQualityRuleResultStatus"}, "EvaluatedMetrics":{"shape":"EvaluatedMetricsMap"} } }, + "DataQualityRuleResultDescription":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" + }, "DataQualityRuleResultStatus":{ "type":"string", "enum":[ @@ -5670,7 +6066,7 @@ "type":"list", "member":{"shape":"DataQualityRuleResult"}, "max":2000, - "min":1 + "min":0 }, "DataQualityRulesetEvaluationRunDescription":{ "type":"structure", @@ -6143,6 +6539,26 @@ "Id":{"shape":"NameString"} } }, + "DeleteTableOptimizerRequest":{ + "type":"structure", + "required":[ + "CatalogId", + "DatabaseName", + "TableName", + "Type" + ], + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "Type":{"shape":"TableOptimizerType"} + } + }, + "DeleteTableOptimizerResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteTableRequest":{ "type":"structure", "required":[ @@ -6996,6 +7412,39 @@ "Errors":{"shape":"ColumnErrors"} } }, + "GetColumnStatisticsTaskRunRequest":{ + "type":"structure", + "required":["ColumnStatisticsTaskRunId"], + "members":{ + "ColumnStatisticsTaskRunId":{"shape":"HashString"} + } + }, + "GetColumnStatisticsTaskRunResponse":{ + "type":"structure", + "members":{ + "ColumnStatisticsTaskRun":{"shape":"ColumnStatisticsTaskRun"} + } + }, + "GetColumnStatisticsTaskRunsRequest":{ + "type":"structure", + "required":[ + "DatabaseName", + "TableName" + ], + "members":{ + "DatabaseName":{"shape":"DatabaseName"}, + "TableName":{"shape":"NameString"}, + "MaxResults":{"shape":"PageSize"}, + "NextToken":{"shape":"Token"} + } + }, + "GetColumnStatisticsTaskRunsResponse":{ + "type":"structure", + "members":{ + "ColumnStatisticsTaskRuns":{"shape":"ColumnStatisticsTaskRunsList"}, + "NextToken":{"shape":"Token"} + } + }, "GetConnectionRequest":{ "type":"structure", "required":["Name"], @@ -7124,7 +7573,9 @@ "JobName":{"shape":"NameString"}, "JobRunId":{"shape":"HashString"}, "RulesetEvaluationRunId":{"shape":"HashString"}, - "RuleResults":{"shape":"DataQualityRuleResults"} + "RuleResults":{"shape":"DataQualityRuleResults"}, + "AnalyzerResults":{"shape":"DataQualityAnalyzerResults"}, + "Observations":{"shape":"DataQualityObservations"} } }, "GetDataQualityRuleRecommendationRunRequest":{ @@ -7737,6 +8188,30 @@ "Statement":{"shape":"Statement"} } }, + "GetTableOptimizerRequest":{ + "type":"structure", + "required":[ + "CatalogId", + "DatabaseName", + "TableName", + "Type" + ], + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "Type":{"shape":"TableOptimizerType"} + } + }, + "GetTableOptimizerResponse":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "TableOptimizer":{"shape":"TableOptimizer"} + } + }, "GetTableRequest":{ "type":"structure", "required":[ @@ -8853,6 +9328,20 @@ "NextToken":{"shape":"GenericString"} } }, + "ListColumnStatisticsTaskRunsRequest":{ + "type":"structure", + "members":{ + "MaxResults":{"shape":"PageSize"}, + "NextToken":{"shape":"Token"} + } + }, + "ListColumnStatisticsTaskRunsResponse":{ + "type":"structure", + "members":{ + "ColumnStatisticsTaskRunIds":{"shape":"ColumnStatisticsTaskRunIdList"}, + "NextToken":{"shape":"Token"} + } + }, "ListCrawlersRequest":{ "type":"structure", "members":{ @@ -9088,6 +9577,34 @@ "NextToken":{"shape":"OrchestrationToken"} } }, + "ListTableOptimizerRunsRequest":{ + "type":"structure", + "required":[ + "CatalogId", + "DatabaseName", + "TableName", + "Type" + ], + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "Type":{"shape":"TableOptimizerType"}, + "MaxResults":{"shape":"MaxListTableOptimizerRunsTokenResults"}, + "NextToken":{"shape":"ListTableOptimizerRunsToken"} + } + }, + "ListTableOptimizerRunsResponse":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "NextToken":{"shape":"ListTableOptimizerRunsToken"}, + "TableOptimizerRuns":{"shape":"TableOptimizerRuns"} + } + }, + "ListTableOptimizerRunsToken":{"type":"string"}, "ListTriggersRequest":{ "type":"structure", "members":{ @@ -9279,6 +9796,7 @@ "min":0 }, "MaxConcurrentRuns":{"type":"integer"}, + "MaxListTableOptimizerRunsTokenResults":{"type":"integer"}, "MaxResultsNumber":{ "type":"integer", "box":true, @@ -9348,6 +9866,14 @@ "min":1, "pattern":"[a-zA-Z0-9+-=._./@]+" }, + "MetricBasedObservation":{ + "type":"structure", + "members":{ + "MetricName":{"shape":"NameString"}, + "MetricValues":{"shape":"DataQualityMetricValues"}, + "NewRules":{"shape":"NewRules"} + } + }, "MicrosoftSQLServerCatalogSource":{ "type":"structure", "required":[ @@ -9427,6 +9953,10 @@ "type":"list", "member":{"shape":"NameString"} }, + "NewRules":{ + "type":"list", + "member":{"shape":"NameString"} + }, "NoScheduleException":{ "type":"structure", "members":{ @@ -9890,6 +10420,10 @@ "box":true, "min":10 }, + "PositiveInteger":{ + "type":"integer", + "min":1 + }, "PositiveLong":{ "type":"long", "box":true, @@ -10365,6 +10899,15 @@ "min":1 }, "RunId":{"type":"string"}, + "RunMetrics":{ + "type":"structure", + "members":{ + "NumberOfBytesCompacted":{"shape":"MessageString"}, + "NumberOfFilesCompacted":{"shape":"MessageString"}, + "NumberOfDpus":{"shape":"MessageString"}, + "JobDurationInHour":{"shape":"MessageString"} + } + }, "RunStatementRequest":{ "type":"structure", "required":[ @@ -10712,6 +11255,11 @@ "type":"list", "member":{"shape":"S3Target"} }, + "SampleSizePercentage":{ + "type":"double", + "max":100, + "min":0 + }, "ScalaCode":{"type":"string"}, "Schedule":{ "type":"structure", @@ -11146,6 +11694,8 @@ "type":"string", "enum":[ "GITHUB", + "GITLAB", + "BITBUCKET", "AWS_CODE_COMMIT" ] }, @@ -11266,6 +11816,29 @@ "RunId":{"shape":"IdString"} } }, + "StartColumnStatisticsTaskRunRequest":{ + "type":"structure", + "required":[ + "DatabaseName", + "TableName", + "Role" + ], + "members":{ + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "ColumnNameList":{"shape":"ColumnNameList"}, + "Role":{"shape":"NameString"}, + "SampleSize":{"shape":"SampleSizePercentage"}, + "CatalogID":{"shape":"NameString"}, + "SecurityConfiguration":{"shape":"NameString"} + } + }, + "StartColumnStatisticsTaskRunResponse":{ + "type":"structure", + "members":{ + "ColumnStatisticsTaskRunId":{"shape":"HashString"} + } + }, "StartCrawlerRequest":{ "type":"structure", "required":["Name"], @@ -11514,6 +12087,22 @@ "ERROR" ] }, + "StopColumnStatisticsTaskRunRequest":{ + "type":"structure", + "required":[ + "DatabaseName", + "TableName" + ], + "members":{ + "DatabaseName":{"shape":"DatabaseName"}, + "TableName":{"shape":"NameString"} + } + }, + "StopColumnStatisticsTaskRunResponse":{ + "type":"structure", + "members":{ + } + }, "StopCrawlerRequest":{ "type":"structure", "required":["Name"], @@ -11697,6 +12286,49 @@ "member":{"shape":"Table"} }, "TableName":{"type":"string"}, + "TableOptimizer":{ + "type":"structure", + "members":{ + "type":{"shape":"TableOptimizerType"}, + "configuration":{"shape":"TableOptimizerConfiguration"}, + "lastRun":{"shape":"TableOptimizerRun"} + } + }, + "TableOptimizerConfiguration":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"ArnString"}, + "enabled":{"shape":"NullableBoolean"} + } + }, + "TableOptimizerEventType":{ + "type":"string", + "enum":[ + "starting", + "completed", + "failed", + "in_progress" + ] + }, + "TableOptimizerRun":{ + "type":"structure", + "members":{ + "eventType":{"shape":"TableOptimizerEventType"}, + "startTimestamp":{"shape":"TableOptimizerRunTimestamp"}, + "endTimestamp":{"shape":"TableOptimizerRunTimestamp"}, + "metrics":{"shape":"RunMetrics"}, + "error":{"shape":"MessageString"} + } + }, + "TableOptimizerRunTimestamp":{"type":"timestamp"}, + "TableOptimizerRuns":{ + "type":"list", + "member":{"shape":"TableOptimizerRun"} + }, + "TableOptimizerType":{ + "type":"string", + "enum":["compaction"] + }, "TablePrefix":{ "type":"string", "max":128, @@ -12476,6 +13108,28 @@ "JobName":{"shape":"NameString"} } }, + "UpdateTableOptimizerRequest":{ + "type":"structure", + "required":[ + "CatalogId", + "DatabaseName", + "TableName", + "Type", + "TableOptimizerConfiguration" + ], + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "DatabaseName":{"shape":"NameString"}, + "TableName":{"shape":"NameString"}, + "Type":{"shape":"TableOptimizerType"}, + "TableOptimizerConfiguration":{"shape":"TableOptimizerConfiguration"} + } + }, + "UpdateTableOptimizerResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateTableRequest":{ "type":"structure", "required":[ @@ -12747,6 +13401,14 @@ "Version":{"shape":"VersionId"}, "RowTag":{"shape":"RowTag"} } + }, + "databaseNameString":{ + "type":"string", + "min":1 + }, + "tableNameString":{ + "type":"string", + "min":1 } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -14,6 +14,7 @@ "BatchGetDevEndpoints": "

Returns a list of resource metadata for a given list of development endpoint names. After calling the ListDevEndpoints operation, you can call this operation to access the data to which you have been granted permissions. This operation supports all IAM permissions, including permission conditions that uses tags.

", "BatchGetJobs": "

Returns a list of resource metadata for a given list of job names. After calling the ListJobs operation, you can call this operation to access the data to which you have been granted permissions. This operation supports all IAM permissions, including permission conditions that uses tags.

", "BatchGetPartition": "

Retrieves partitions in a batch request.

", + "BatchGetTableOptimizer": "

Returns the configuration for the specified table optimizers.

", "BatchGetTriggers": "

Returns a list of resource metadata for a given list of trigger names. After calling the ListTriggers operation, you can call this operation to access the data to which you have been granted permissions. This operation supports all IAM permissions, including permission conditions that uses tags.

", "BatchGetWorkflows": "

Returns a list of resource metadata for a given list of workflow names. After calling the ListWorkflows operation, you can call this operation to access the data to which you have been granted permissions. This operation supports all IAM permissions, including permission conditions that uses tags.

", "BatchStopJobRun": "

Stops one or more job runs for a specified job definition.

", @@ -41,6 +42,7 @@ "CreateSecurityConfiguration": "

Creates a new security configuration. A security configuration is a set of security properties that can be used by Glue. You can use a security configuration to encrypt data at rest. For information about using security configurations in Glue, see Encrypting Data Written by Crawlers, Jobs, and Development Endpoints.

", "CreateSession": "

Creates a new session.

", "CreateTable": "

Creates a new table definition in the Data Catalog.

", + "CreateTableOptimizer": "

Creates a new table optimizer for a specific function. compaction is the only currently supported optimizer type.

", "CreateTrigger": "

Creates a new trigger.

", "CreateUserDefinedFunction": "

Creates a new function definition in the Data Catalog.

", "CreateWorkflow": "

Creates a new workflow.

", @@ -65,6 +67,7 @@ "DeleteSecurityConfiguration": "

Deletes a specified security configuration.

", "DeleteSession": "

Deletes the session.

", "DeleteTable": "

Removes a table definition from the Data Catalog.

After completing this operation, you no longer have access to the table versions and partitions that belong to the deleted table. Glue deletes these \"orphaned\" resources asynchronously in a timely manner, at the discretion of the service.

To ensure the immediate deletion of all related resources, before calling DeleteTable, use DeleteTableVersion or BatchDeleteTableVersion, and DeletePartition or BatchDeletePartition, to delete any resources that belong to the table.

", + "DeleteTableOptimizer": "

Deletes an optimizer and all associated metadata for a table. The optimization will no longer be performed on the table.

", "DeleteTableVersion": "

Deletes a specified version of a table.

", "DeleteTrigger": "

Deletes a specified trigger. If the trigger is not found, no exception is thrown.

", "DeleteUserDefinedFunction": "

Deletes an existing function definition from the Data Catalog.

", @@ -77,6 +80,8 @@ "GetClassifiers": "

Lists all classifier objects in the Data Catalog.

", "GetColumnStatisticsForPartition": "

Retrieves partition statistics of columns.

The Identity and Access Management (IAM) permission required for this operation is GetPartition.

", "GetColumnStatisticsForTable": "

Retrieves table statistics of columns.

The Identity and Access Management (IAM) permission required for this operation is GetTable.

", + "GetColumnStatisticsTaskRun": "

Get the associated metadata/information for a task run, given a task run ID.

", + "GetColumnStatisticsTaskRuns": "

Retrieves information about all runs associated with the specified table.

", "GetConnection": "

Retrieves a connection definition from the Data Catalog.

", "GetConnections": "

Retrieves a list of connection definitions from the Data Catalog.

", "GetCrawler": "

Retrieves metadata for a specified crawler.

", @@ -119,6 +124,7 @@ "GetSession": "

Retrieves the session.

", "GetStatement": "

Retrieves the statement.

", "GetTable": "

Retrieves the Table definition in a Data Catalog for a specified table.

", + "GetTableOptimizer": "

Returns the configuration of all optimizers associated with a specified table.

", "GetTableVersion": "

Retrieves a specified version of a table.

", "GetTableVersions": "

Retrieves a list of strings that identify available versions of a specified table.

", "GetTables": "

Retrieves the definitions of some or all of the tables in a given Database.

", @@ -136,6 +142,7 @@ "GetWorkflowRuns": "

Retrieves metadata for all runs of a given workflow.

", "ImportCatalogToGlue": "

Imports an existing Amazon Athena Data Catalog to Glue.

", "ListBlueprints": "

Lists all the blueprint names in an account.

", + "ListColumnStatisticsTaskRuns": "

List all task runs for a particular account.

", "ListCrawlers": "

Retrieves the names of all crawler resources in this Amazon Web Services account, or the resources with the specified tag. This operation allows you to see which resources are available in your account, and their names.

This operation takes the optional Tags field, which you can use as a filter on the response so that tagged resources can be retrieved as a group. If you choose to use tags filtering, only resources with the tag are retrieved.

", "ListCrawls": "

Returns all the crawls of a specified crawler. Returns only the crawls that have occurred since the launch date of the crawler history feature, and only retains up to 12 months of crawls. Older crawls will not be returned.

You may use this API to:

  • Retrive all the crawls of a specified crawler.

  • Retrieve all the crawls of a specified crawler within a limited count.

  • Retrieve all the crawls of a specified crawler in a specific time range.

  • Retrieve all the crawls of a specified crawler with a particular state, crawl ID, or DPU hour value.

", "ListCustomEntityTypes": "

Lists all the custom patterns that have been created.

", @@ -151,6 +158,7 @@ "ListSchemas": "

Returns a list of schemas with minimal details. Schemas in Deleting status will not be included in the results. Empty results will be returned if there are no schemas available.

When the RegistryId is not provided, all the schemas across registries will be part of the API response.

", "ListSessions": "

Retrieve a list of sessions.

", "ListStatements": "

Lists statements for the session.

", + "ListTableOptimizerRuns": "

Lists the history of previous optimizer runs for a specific table.

", "ListTriggers": "

Retrieves the names of all trigger resources in this Amazon Web Services account, or the resources with the specified tag. This operation allows you to see which resources are available in your account, and their names.

This operation takes the optional Tags field, which you can use as a filter on the response so that tagged resources can be retrieved as a group. If you choose to use tags filtering, only resources with the tag are retrieved.

", "ListWorkflows": "

Lists names of workflows created in the account.

", "PutDataCatalogEncryptionSettings": "

Sets the security configuration for a specified catalog. After the configuration has been set, the specified encryption is applied to every catalog write thereafter.

", @@ -165,9 +173,10 @@ "RunStatement": "

Executes the statement.

", "SearchTables": "

Searches a set of tables based on properties in the table metadata as well as on the parent database. You can search against text or filter conditions.

You can only get tables that you have access to based on the security policies defined in Lake Formation. You need at least a read-only access to the table for it to be returned. If you do not have access to all the columns in the table, these columns will not be searched against when returning the list of tables back to you. If you have access to the columns but not the data in the columns, those columns and the associated metadata for those columns will be included in the search.

", "StartBlueprintRun": "

Starts a new run of the specified blueprint.

", + "StartColumnStatisticsTaskRun": "

Starts a column statistics task run, for a specified table and columns.

", "StartCrawler": "

Starts a crawl using the specified crawler, regardless of what is scheduled. If the crawler is already running, returns a CrawlerRunningException.

", "StartCrawlerSchedule": "

Changes the schedule state of the specified crawler to SCHEDULED, unless the crawler is already running or the schedule state is already SCHEDULED.

", - "StartDataQualityRuleRecommendationRun": "

Starts a recommendation run that is used to generate rules when you don't know what rules to write. Glue Data Quality analyzes the data and comes up with recommendations for a potential ruleset. You can then triage the ruleset and modify the generated ruleset to your liking.

", + "StartDataQualityRuleRecommendationRun": "

Starts a recommendation run that is used to generate rules when you don't know what rules to write. Glue Data Quality analyzes the data and comes up with recommendations for a potential ruleset. You can then triage the ruleset and modify the generated ruleset to your liking.

Recommendation runs are automatically deleted after 90 days.

", "StartDataQualityRulesetEvaluationRun": "

Once you have a ruleset definition (either recommended or your own), you call this operation to evaluate the ruleset against a data source (Glue table). The evaluation computes results which you can retrieve with the GetDataQualityResult API.

", "StartExportLabelsTaskRun": "

Begins an asynchronous task to export all labeled data for a particular transform. This task is the only label-related API call that is not part of the typical active learning workflow. You typically use StartExportLabelsTaskRun when you want to work with all of your existing labels at the same time, such as when you want to remove or change labels that were previously submitted as truth. This API operation accepts the TransformId whose labels you want to export and an Amazon Simple Storage Service (Amazon S3) path to export the labels to. The operation returns a TaskRunId. You can check on the status of your task run by calling the GetMLTaskRun API.

", "StartImportLabelsTaskRun": "

Enables you to provide additional labels (examples of truth) to be used to teach the machine learning transform and improve its quality. This API operation is generally used as part of the active learning workflow that starts with the StartMLLabelingSetGenerationTaskRun call and that ultimately results in improving the quality of your machine learning transform.

After the StartMLLabelingSetGenerationTaskRun finishes, Glue machine learning will have generated a series of questions for humans to answer. (Answering these questions is often called 'labeling' in the machine learning workflows). In the case of the FindMatches transform, these questions are of the form, “What is the correct way to group these rows together into groups composed entirely of matching records?” After the labeling process is finished, users upload their answers/labels with a call to StartImportLabelsTaskRun. After StartImportLabelsTaskRun finishes, all future runs of the machine learning transform use the new and improved labels and perform a higher-quality transformation.

By default, StartMLLabelingSetGenerationTaskRun continually learns from and combines all labels that you upload unless you set Replace to true. If you set Replace to true, StartImportLabelsTaskRun deletes and forgets all previously uploaded labels and learns only from the exact set that you upload. Replacing labels can be helpful if you realize that you previously uploaded incorrect labels, and you believe that they are having a negative effect on your transform quality.

You can check on the status of your task run by calling the GetMLTaskRun operation.

", @@ -176,6 +185,7 @@ "StartMLLabelingSetGenerationTaskRun": "

Starts the active learning workflow for your machine learning transform to improve the transform's quality by generating label sets and adding labels.

When the StartMLLabelingSetGenerationTaskRun finishes, Glue will have generated a \"labeling set\" or a set of questions for humans to answer.

In the case of the FindMatches transform, these questions are of the form, “What is the correct way to group these rows together into groups composed entirely of matching records?”

After the labeling process is finished, you can upload your labels with a call to StartImportLabelsTaskRun. After StartImportLabelsTaskRun finishes, all future runs of the machine learning transform will use the new and improved labels and perform a higher-quality transformation.

", "StartTrigger": "

Starts an existing trigger. See Triggering Jobs for information about how different types of trigger are started.

", "StartWorkflowRun": "

Starts a new run of the specified workflow.

", + "StopColumnStatisticsTaskRun": "

Stops a task run for the specified table.

", "StopCrawler": "

If the specified crawler is running, stops the crawl.

", "StopCrawlerSchedule": "

Sets the schedule state of the specified crawler to NOT_SCHEDULED, but does not stop the crawler if it is already running.

", "StopSession": "

Stops the session.

", @@ -201,6 +211,7 @@ "UpdateSchema": "

Updates the description, compatibility setting, or version checkpoint for a schema set.

For updating the compatibility setting, the call will not validate compatibility for the entire set of schema versions with the new compatibility setting. If the value for Compatibility is provided, the VersionNumber (a checkpoint) is also required. The API will validate the checkpoint version number for consistency.

If the value for the VersionNumber (checkpoint) is provided, Compatibility is optional and this can be used to set/reset a checkpoint for the schema.

This update will happen only if the schema is in the AVAILABLE state.

", "UpdateSourceControlFromJob": "

Synchronizes a job to the source control repository. This operation takes the job artifacts from the Glue internal stores and makes a commit to the remote repository that is configured on the job.

This API supports optional parameters which take in the repository information.

", "UpdateTable": "

Updates a metadata table in the Data Catalog.

", + "UpdateTableOptimizer": "

Updates the configuration for an existing table optimizer.

", "UpdateTrigger": "

Updates a trigger definition.

", "UpdateUserDefinedFunction": "

Updates an existing function definition in the Data Catalog.

", "UpdateWorkflow": "

Updates an existing workflow.

" @@ -214,6 +225,7 @@ "AccountId": { "base": null, "refs": { + "ColumnStatisticsTaskRun$CustomerId": "

The Amazon Web Services account ID.

", "LakeFormationConfiguration$AccountId": "

Required for cross account crawls. For same account crawls as the target data, this can be left as null.

" } }, @@ -328,6 +340,12 @@ "CodeGenConfigurationNode$ApplyMapping": "

Specifies a transform that maps data property keys in the data source to data property keys in the data target. You can rename keys, modify the data types for keys, and choose which keys to drop from the dataset.

" } }, + "ArnString": { + "base": null, + "refs": { + "TableOptimizerConfiguration$roleArn": "

A role passed by the caller which gives the service permission to update the resources associated with the optimizer on the caller's behalf.

" + } + }, "AthenaConnectorSource": { "base": "

Specifies a connector to an Amazon Athena data source.

", "refs": { @@ -548,6 +566,40 @@ "BatchGetPartitionResponse$UnprocessedKeys": "

A list of the partition values in the request for which partitions were not returned.

" } }, + "BatchGetTableOptimizerEntries": { + "base": null, + "refs": { + "BatchGetTableOptimizerRequest$Entries": "

A list of BatchGetTableOptimizerEntry objects specifying the table optimizers to retrieve.

" + } + }, + "BatchGetTableOptimizerEntry": { + "base": "

Represents a table optimizer to retrieve in the BatchGetTableOptimizer operation.

", + "refs": { + "BatchGetTableOptimizerEntries$member": null + } + }, + "BatchGetTableOptimizerError": { + "base": "

Contains details on one of the errors in the error list returned by the BatchGetTableOptimizer operation.

", + "refs": { + "BatchGetTableOptimizerErrors$member": null + } + }, + "BatchGetTableOptimizerErrors": { + "base": null, + "refs": { + "BatchGetTableOptimizerResponse$Failures": "

A list of errors from the operation.

" + } + }, + "BatchGetTableOptimizerRequest": { + "base": null, + "refs": { + } + }, + "BatchGetTableOptimizerResponse": { + "base": null, + "refs": { + } + }, "BatchGetTriggersRequest": { "base": null, "refs": { @@ -614,6 +666,18 @@ "BatchStopJobRunResponse$SuccessfulSubmissions": "

A list of the JobRuns that were successfully submitted for stopping.

" } }, + "BatchTableOptimizer": { + "base": "

Contains details for one of the table optimizers returned by the BatchGetTableOptimizer operation.

", + "refs": { + "BatchTableOptimizers$member": null + } + }, + "BatchTableOptimizers": { + "base": null, + "refs": { + "BatchGetTableOptimizerResponse$TableOptimizers": "

A list of BatchTableOptimizer objects.

" + } + }, "BatchUpdatePartitionFailureEntry": { "base": "

Contains information about a batch update partition error.

", "refs": { @@ -960,11 +1024,16 @@ "BatchDeleteTableRequest$CatalogId": "

The ID of the Data Catalog where the table resides. If none is provided, the Amazon Web Services account ID is used by default.

", "BatchDeleteTableVersionRequest$CatalogId": "

The ID of the Data Catalog where the tables reside. If none is provided, the Amazon Web Services account ID is used by default.

", "BatchGetPartitionRequest$CatalogId": "

The ID of the Data Catalog where the partitions in question reside. If none is supplied, the Amazon Web Services account ID is used by default.

", + "BatchGetTableOptimizerEntry$catalogId": "

The Catalog ID of the table.

", + "BatchGetTableOptimizerError$catalogId": "

The Catalog ID of the table.

", + "BatchTableOptimizer$catalogId": "

The Catalog ID of the table.

", "BatchUpdatePartitionRequest$CatalogId": "

The ID of the catalog in which the partition is to be updated. Currently, this should be the Amazon Web Services account ID.

", + "ColumnStatisticsTaskRun$CatalogID": "

The ID of the Data Catalog where the table resides. If none is supplied, the Amazon Web Services account ID is used by default.

", "CreateConnectionRequest$CatalogId": "

The ID of the Data Catalog in which to create the connection. If none is provided, the Amazon Web Services account ID is used by default.

", "CreateDatabaseRequest$CatalogId": "

The ID of the Data Catalog in which to create the database. If none is provided, the Amazon Web Services account ID is used by default.

", "CreatePartitionIndexRequest$CatalogId": "

The catalog ID where the table resides.

", "CreatePartitionRequest$CatalogId": "

The Amazon Web Services account ID of the catalog in which the partition is to be created.

", + "CreateTableOptimizerRequest$CatalogId": "

The Catalog ID of the table.

", "CreateTableRequest$CatalogId": "

The ID of the Data Catalog in which to create the Table. If none is supplied, the Amazon Web Services account ID is used by default.

", "CreateUserDefinedFunctionRequest$CatalogId": "

The ID of the Data Catalog in which to create the function. If none is provided, the Amazon Web Services account ID is used by default.

", "Database$CatalogId": "

The ID of the Data Catalog in which the database resides.

", @@ -975,6 +1044,7 @@ "DeleteDatabaseRequest$CatalogId": "

The ID of the Data Catalog in which the database resides. If none is provided, the Amazon Web Services account ID is used by default.

", "DeletePartitionIndexRequest$CatalogId": "

The catalog ID where the table resides.

", "DeletePartitionRequest$CatalogId": "

The ID of the Data Catalog where the partition to be deleted resides. If none is provided, the Amazon Web Services account ID is used by default.

", + "DeleteTableOptimizerRequest$CatalogId": "

The Catalog ID of the table.

", "DeleteTableRequest$CatalogId": "

The ID of the Data Catalog where the table resides. If none is provided, the Amazon Web Services account ID is used by default.

", "DeleteTableVersionRequest$CatalogId": "

The ID of the Data Catalog where the tables reside. If none is provided, the Amazon Web Services account ID is used by default.

", "DeleteUserDefinedFunctionRequest$CatalogId": "

The ID of the Data Catalog where the function to be deleted is located. If none is supplied, the Amazon Web Services account ID is used by default.

", @@ -989,6 +1059,8 @@ "GetPartitionIndexesRequest$CatalogId": "

The catalog ID where the table resides.

", "GetPartitionRequest$CatalogId": "

The ID of the Data Catalog where the partition in question resides. If none is provided, the Amazon Web Services account ID is used by default.

", "GetPartitionsRequest$CatalogId": "

The ID of the Data Catalog where the partitions in question reside. If none is provided, the Amazon Web Services account ID is used by default.

", + "GetTableOptimizerRequest$CatalogId": "

The Catalog ID of the table.

", + "GetTableOptimizerResponse$CatalogId": "

The Catalog ID of the table.

", "GetTableRequest$CatalogId": "

The ID of the Data Catalog where the table resides. If none is provided, the Amazon Web Services account ID is used by default.

", "GetTableVersionRequest$CatalogId": "

The ID of the Data Catalog where the tables reside. If none is provided, the Amazon Web Services account ID is used by default.

", "GetTableVersionsRequest$CatalogId": "

The ID of the Data Catalog where the tables reside. If none is provided, the Amazon Web Services account ID is used by default.

", @@ -999,6 +1071,8 @@ "GetUserDefinedFunctionRequest$CatalogId": "

The ID of the Data Catalog where the function to be retrieved is located. If none is provided, the Amazon Web Services account ID is used by default.

", "GetUserDefinedFunctionsRequest$CatalogId": "

The ID of the Data Catalog where the functions to be retrieved are located. If none is provided, the Amazon Web Services account ID is used by default.

", "ImportCatalogToGlueRequest$CatalogId": "

The ID of the catalog to import. Currently, this should be the Amazon Web Services account ID.

", + "ListTableOptimizerRunsRequest$CatalogId": "

The Catalog ID of the table.

", + "ListTableOptimizerRunsResponse$CatalogId": "

The Catalog ID of the table.

", "Partition$CatalogId": "

The ID of the Data Catalog in which the partition resides.

", "PutDataCatalogEncryptionSettingsRequest$CatalogId": "

The ID of the Data Catalog to set the security configuration for. If none is provided, the Amazon Web Services account ID is used by default.

", "SearchTablesRequest$CatalogId": "

A unique identifier, consisting of account_id .

", @@ -1009,6 +1083,7 @@ "UpdateConnectionRequest$CatalogId": "

The ID of the Data Catalog in which the connection resides. If none is provided, the Amazon Web Services account ID is used by default.

", "UpdateDatabaseRequest$CatalogId": "

The ID of the Data Catalog in which the metadata database resides. If none is provided, the Amazon Web Services account ID is used by default.

", "UpdatePartitionRequest$CatalogId": "

The ID of the Data Catalog where the partition to be updated resides. If none is provided, the Amazon Web Services account ID is used by default.

", + "UpdateTableOptimizerRequest$CatalogId": "

The Catalog ID of the table.

", "UpdateTableRequest$CatalogId": "

The ID of the Data Catalog where the table resides. If none is provided, the Amazon Web Services account ID is used by default.

", "UpdateUserDefinedFunctionRequest$CatalogId": "

The ID of the Data Catalog where the function to be updated is located. If none is provided, the Amazon Web Services account ID is used by default.

", "UserDefinedFunction$CatalogId": "

The ID of the Data Catalog in which the function resides.

" @@ -1226,6 +1301,13 @@ "TableInput$PartitionKeys": "

A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.

When you create a table used by Amazon Athena, and you do not specify any partitionKeys, you must at least set the value of partitionKeys to an empty list. For example:

\"PartitionKeys\": []

" } }, + "ColumnNameList": { + "base": null, + "refs": { + "ColumnStatisticsTaskRun$ColumnNameList": "

A list of the column names. If none is supplied, all column names for the table will be used by default.

", + "StartColumnStatisticsTaskRunRequest$ColumnNameList": "

A list of the column names to generate statistics. If none is supplied, all column names for the table will be used by default.

" + } + }, "ColumnNameString": { "base": null, "refs": { @@ -1280,6 +1362,46 @@ "GetColumnStatisticsForTableResponse$ColumnStatisticsList": "

List of ColumnStatistics.

" } }, + "ColumnStatisticsState": { + "base": null, + "refs": { + "ColumnStatisticsTaskRun$Status": "

The status of the task run.

" + } + }, + "ColumnStatisticsTaskNotRunningException": { + "base": "

An exception thrown when you try to stop a task run when there is no task running.

", + "refs": { + } + }, + "ColumnStatisticsTaskRun": { + "base": "

The object that shows the details of the column stats run.

", + "refs": { + "ColumnStatisticsTaskRunsList$member": null, + "GetColumnStatisticsTaskRunResponse$ColumnStatisticsTaskRun": "

A ColumnStatisticsTaskRun object representing the details of the column stats run.

" + } + }, + "ColumnStatisticsTaskRunIdList": { + "base": null, + "refs": { + "ListColumnStatisticsTaskRunsResponse$ColumnStatisticsTaskRunIds": "

A list of column statistics task run IDs.

" + } + }, + "ColumnStatisticsTaskRunningException": { + "base": "

An exception thrown when you try to start another job while running a column stats generation job.

", + "refs": { + } + }, + "ColumnStatisticsTaskRunsList": { + "base": null, + "refs": { + "GetColumnStatisticsTaskRunsResponse$ColumnStatisticsTaskRuns": "

A list of column statistics task runs.

" + } + }, + "ColumnStatisticsTaskStoppingException": { + "base": "

An exception thrown when you try to stop a task run.

", + "refs": { + } + }, "ColumnStatisticsType": { "base": null, "refs": { @@ -1451,6 +1573,25 @@ "Session$Connections": "

The number of connections used for the session.

" } }, + "ConnectorDataSource": { + "base": "

Specifies a source generated with standard connection options.

", + "refs": { + "CodeGenConfigurationNode$ConnectorDataSource": "

Specifies a source generated with standard connection options.

" + } + }, + "ConnectorDataTarget": { + "base": "

Specifies a target generated with standard connection options.

", + "refs": { + "CodeGenConfigurationNode$ConnectorDataTarget": "

Specifies a target generated with standard connection options.

" + } + }, + "ConnectorOptions": { + "base": null, + "refs": { + "ConnectorDataSource$Data": "

A map specifying connection options for the node. You can find standard connection options for the corresponding connection type in the Connection parameters section of the Glue documentation.

", + "ConnectorDataTarget$Data": "

A map specifying connection options for the node. You can find standard connection options for the corresponding connection type in the Connection parameters section of the Glue documentation.

" + } + }, "ContextWords": { "base": null, "refs": { @@ -1570,6 +1711,7 @@ "CrawlerSecurityConfiguration": { "base": null, "refs": { + "ColumnStatisticsTaskRun$SecurityConfiguration": "

Name of the security configuration that is used to encrypt CloudWatch logs for the column stats task run.

", "Crawler$CrawlerSecurityConfiguration": "

The name of the SecurityConfiguration structure to be used by this crawler.

", "CreateCrawlerRequest$CrawlerSecurityConfiguration": "

The name of the SecurityConfiguration structure to be used by this crawler.

", "UpdateCrawlerRequest$CrawlerSecurityConfiguration": "

The name of the SecurityConfiguration structure to be used by this crawler.

" @@ -1794,6 +1936,16 @@ "refs": { } }, + "CreateTableOptimizerRequest": { + "base": null, + "refs": { + } + }, + "CreateTableOptimizerResponse": { + "base": null, + "refs": { + } + }, "CreateTableRequest": { "base": null, "refs": { @@ -2040,6 +2192,19 @@ "DataLakePrincipal$DataLakePrincipalIdentifier": "

An identifier for the Lake Formation principal.

" } }, + "DataQualityAnalyzerResult": { + "base": "

Describes the result of the evaluation of a data quality analyzer.

", + "refs": { + "DataQualityAnalyzerResults$member": null + } + }, + "DataQualityAnalyzerResults": { + "base": null, + "refs": { + "DataQualityResult$AnalyzerResults": "

A list of DataQualityAnalyzerResult objects representing the results for each analyzer.

", + "GetDataQualityResultResponse$AnalyzerResults": "

A list of DataQualityAnalyzerResult objects representing the results for each analyzer.

" + } + }, "DataQualityEvaluationRunAdditionalRunOptions": { "base": "

Additional run options you can specify for an evaluation run.

", "refs": { @@ -2047,6 +2212,31 @@ "StartDataQualityRulesetEvaluationRunRequest$AdditionalRunOptions": "

Additional run options you can specify for an evaluation run.

" } }, + "DataQualityMetricValues": { + "base": "

Describes the data quality metric value according to the analysis of historical data.

", + "refs": { + "MetricBasedObservation$MetricValues": "

An object of type DataQualityMetricValues representing the analysis of the data quality metric value.

" + } + }, + "DataQualityObservation": { + "base": "

Describes the observation generated after evaluating the rules and analyzers.

", + "refs": { + "DataQualityObservations$member": null + } + }, + "DataQualityObservationDescription": { + "base": null, + "refs": { + "DataQualityObservation$Description": "

A description of the data quality observation.

" + } + }, + "DataQualityObservations": { + "base": null, + "refs": { + "DataQualityResult$Observations": "

A list of DataQualityObservation objects representing the observations generated after evaluating the rules and analyzers.

", + "GetDataQualityResultResponse$Observations": "

A list of DataQualityObservation objects representing the observations generated after evaluating the rules and analyzers.

" + } + }, "DataQualityResult": { "base": "

Describes a data quality result.

", "refs": { @@ -2114,6 +2304,15 @@ "DataQualityRuleResults$member": null } }, + "DataQualityRuleResultDescription": { + "base": null, + "refs": { + "DataQualityAnalyzerResult$Description": "

A description of the data quality analyzer.

", + "DataQualityAnalyzerResult$EvaluationMessage": "

An evaluation message.

", + "DataQualityRuleResult$Description": "

A description of the data quality rule.

", + "DataQualityRuleResult$EvaluationMessage": "

An evaluation message.

" + } + }, "DataQualityRuleResultStatus": { "base": null, "refs": { @@ -2237,8 +2436,11 @@ "DatabaseName": { "base": null, "refs": { + "ColumnStatisticsTaskRun$DatabaseName": "

The database where the table resides.

", "Crawler$DatabaseName": "

The name of the database in which the crawler's output is stored.

", "CreateCrawlerRequest$DatabaseName": "

The Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/*.

", + "GetColumnStatisticsTaskRunsRequest$DatabaseName": "

The name of the database where the table resides.

", + "StopColumnStatisticsTaskRunRequest$DatabaseName": "

The name of the database where the table resides.

", "UpdateCrawlerRequest$DatabaseName": "

The Glue database where results are stored, such as: arn:aws:daylight:us-east-1::database/sometable/*.

" } }, @@ -2479,6 +2681,16 @@ "refs": { } }, + "DeleteTableOptimizerRequest": { + "base": null, + "refs": { + } + }, + "DeleteTableOptimizerResponse": { + "base": null, + "refs": { + } + }, "DeleteTableRequest": { "base": null, "refs": { @@ -2550,6 +2762,7 @@ "DescriptionString": { "base": null, "refs": { + "ColumnStatisticsTaskRun$ErrorMessage": "

The error message for the job.

", "Connection$Description": "

The description of the connection.

", "ConnectionInput$Description": "

The description of the connection.

", "Crawl$ErrorMessage": "

The error message associated with the crawl.

", @@ -2565,8 +2778,6 @@ "CreateSchemaResponse$Description": "

A description of the schema if specified when created.

", "CreateSessionRequest$Description": "

The description of the session.

", "CreateTriggerRequest$Description": "

A description of the new trigger.

", - "DataQualityRuleResult$Description": "

A description of the data quality rule.

", - "DataQualityRuleResult$EvaluationMessage": "

An evaluation message.

", "DataQualityRulesetFilterCriteria$Description": "

The description of the ruleset filter criteria.

", "DataQualityRulesetListDetails$Description": "

A description of the data quality ruleset.

", "Database$Description": "

A description of the database.

", @@ -2798,6 +3009,8 @@ "CatalogKinesisSource$Database": "

The name of the database to read from.

", "CatalogSource$Database": "

The name of the database to read from.

", "CatalogSource$Table": "

The name of the table in the database to read from.

", + "ConnectorDataSource$ConnectionType": "

The connectionType, as provided to the underlying Glue library. This node type supports the following connection types:

  • opensearch

  • azuresql

  • azurecosmos

  • bigquery

  • saphana

  • teradata

  • vertica

", + "ConnectorDataTarget$ConnectionType": "

The connectionType, as provided to the underlying Glue library. This node type supports the following connection types:

  • opensearch

  • azuresql

  • azurecosmos

  • bigquery

  • saphana

  • teradata

  • vertica

", "CustomCode$ClassName": "

The name defined for the custom code node class.

", "DQDLAliases$value": null, "DQResultsPublishingOptions$ResultsS3Prefix": "

The Amazon S3 prefix prepended to the results.

", @@ -2973,6 +3186,7 @@ "ErrorDetail": { "base": "

Contains details about an error.

", "refs": { + "BatchGetTableOptimizerError$error": "

An ErrorDetail object containing code and message details about the error.

", "BatchStopJobRunError$ErrorDetail": "

Specifies details about the error that was encountered.

", "BatchUpdatePartitionFailureEntry$ErrorDetail": "

The details about the batch update partition error.

", "ColumnError$Error": "

An error message with the reason for the failure of an operation.

", @@ -3018,6 +3232,7 @@ "EvaluatedMetricsMap": { "base": null, "refs": { + "DataQualityAnalyzerResult$EvaluatedMetrics": "

A map of metrics associated with the evaluation of the analyzer.

", "DataQualityRuleResult$EvaluatedMetrics": "

A map of metrics associated with the evaluation of the rule.

" } }, @@ -3317,6 +3532,8 @@ "AmazonRedshiftNodeData$StagingTable": "

The name of the temporary staging table that is used when doing a MERGE or APPEND with upsert.

", "Blueprint$BlueprintLocation": "

Specifies the path in Amazon S3 where the blueprint is published.

", "Blueprint$BlueprintServiceLocation": "

Specifies a path in Amazon S3 where the blueprint is copied when you call CreateBlueprint/UpdateBlueprint to register the blueprint in Glue.

", + "ConnectorOptions$key": null, + "ConnectorOptions$value": null, "CrawlsFilter$FieldValue": "

The value provided for comparison on the crawl field.

", "CreateDevEndpointRequest$EndpointName": "

The name to be assigned to the new DevEndpoint.

", "CreateDevEndpointRequest$SubnetId": "

The subnet ID for the new DevEndpoint to use.

", @@ -3505,6 +3722,26 @@ "refs": { } }, + "GetColumnStatisticsTaskRunRequest": { + "base": null, + "refs": { + } + }, + "GetColumnStatisticsTaskRunResponse": { + "base": null, + "refs": { + } + }, + "GetColumnStatisticsTaskRunsRequest": { + "base": null, + "refs": { + } + }, + "GetColumnStatisticsTaskRunsResponse": { + "base": null, + "refs": { + } + }, "GetConnectionRequest": { "base": null, "refs": { @@ -3927,6 +4164,16 @@ "refs": { } }, + "GetTableOptimizerRequest": { + "base": null, + "refs": { + } + }, + "GetTableOptimizerResponse": { + "base": null, + "refs": { + } + }, "GetTableRequest": { "base": null, "refs": { @@ -4153,6 +4400,7 @@ "AthenaConnectorSource$OutputSchemas": "

Specifies the data schema for the custom Athena source.

", "CatalogDeltaSource$OutputSchemas": "

Specifies the data schema for the Delta Lake source.

", "CatalogHudiSource$OutputSchemas": "

Specifies the data schema for the Hudi source.

", + "ConnectorDataSource$OutputSchemas": "

Specifies the data schema for this source.

", "CustomCode$OutputSchemas": "

Specifies the data schema for the custom code transform.

", "DynamicTransform$OutputSchemas": "

Specifies the data schema for the dynamic transform.

", "JDBCConnectorSource$OutputSchemas": "

Specifies the data schema for the custom JDBC source.

", @@ -4282,6 +4530,8 @@ "CancelMLTaskRunRequest$TaskRunId": "

A unique identifier for the task run.

", "CancelMLTaskRunResponse$TransformId": "

The unique identifier of the machine learning transform.

", "CancelMLTaskRunResponse$TaskRunId": "

The unique identifier for the task run.

", + "ColumnStatisticsTaskRun$ColumnStatisticsTaskRunId": "

The identifier for the particular column statistics task run.

", + "ColumnStatisticsTaskRunIdList$member": null, "CreateDataQualityRulesetRequest$ClientToken": "

Used for idempotency and is recommended to be set to a random ID (such as a UUID) to avoid creating or starting multiple instances of the same resource.

", "CreateMLTransformResponse$TransformId": "

A unique identifier that is generated for the transform.

", "DataQualityResult$ResultId": "

A unique result ID for the data quality result.

", @@ -4300,6 +4550,7 @@ "DeleteResourcePolicyRequest$PolicyHashCondition": "

The hash value returned when this policy was set.

", "FindMatchesTaskRunProperties$JobId": "

The job ID for the Find Matches task run.

", "FindMatchesTaskRunProperties$JobRunId": "

The job run ID for the Find Matches task run.

", + "GetColumnStatisticsTaskRunRequest$ColumnStatisticsTaskRunId": "

The identifier for the particular column statistics task run.

", "GetDataQualityResultRequest$ResultId": "

A unique result ID for the data quality result.

", "GetDataQualityResultResponse$ResultId": "

A unique result ID for the data quality result.

", "GetDataQualityResultResponse$JobRunId": "

The job run ID associated with the data quality result, if any.

", @@ -4321,6 +4572,7 @@ "MLTransform$TransformId": "

The unique transform ID that is generated for the machine learning transform. The ID is guaranteed to be unique and does not change.

", "PutResourcePolicyRequest$PolicyHashCondition": "

The hash value returned when the previous policy was set using PutResourcePolicy. Its purpose is to prevent concurrent modifications of a policy. Do not use this parameter if no previous policy has been set.

", "PutResourcePolicyResponse$PolicyHash": "

A hash of the policy that has just been set. This must be included in a subsequent call that overwrites or updates this policy.

", + "StartColumnStatisticsTaskRunResponse$ColumnStatisticsTaskRunId": "

The identifier for the column statistics task run.

", "StartDataQualityRuleRecommendationRunRequest$ClientToken": "

Used for idempotency and is recommended to be set to a random ID (such as a UUID) to avoid creating or starting multiple instances of the same resource.

", "StartDataQualityRuleRecommendationRunResponse$RunId": "

The unique run identifier associated with this run.

", "StartDataQualityRulesetEvaluationRunRequest$ClientToken": "

Used for idempotency and is recommended to be set to a random ID (such as a UUID) to avoid creating or starting multiple instances of the same resource.

", @@ -4838,6 +5090,16 @@ "refs": { } }, + "ListColumnStatisticsTaskRunsRequest": { + "base": null, + "refs": { + } + }, + "ListColumnStatisticsTaskRunsResponse": { + "base": null, + "refs": { + } + }, "ListCrawlersRequest": { "base": null, "refs": { @@ -4988,6 +5250,23 @@ "refs": { } }, + "ListTableOptimizerRunsRequest": { + "base": null, + "refs": { + } + }, + "ListTableOptimizerRunsResponse": { + "base": null, + "refs": { + } + }, + "ListTableOptimizerRunsToken": { + "base": null, + "refs": { + "ListTableOptimizerRunsRequest$NextToken": "

A continuation token, if this is a continuation call.

", + "ListTableOptimizerRunsResponse$NextToken": "

A continuation token for paginating the returned list of optimizer runs, returned if the current segment of the list is not the last.

" + } + }, "ListTriggersRequest": { "base": null, "refs": { @@ -5168,6 +5447,12 @@ "ExecutionProperty$MaxConcurrentRuns": "

The maximum number of concurrent runs allowed for the job. The default is 1. An error is returned when this threshold is reached. The maximum value you can specify is controlled by a service limit.

" } }, + "MaxListTableOptimizerRunsTokenResults": { + "base": null, + "refs": { + "ListTableOptimizerRunsRequest$MaxResults": "

The maximum number of optimizer runs to return on each call.

" + } + }, "MaxResultsNumber": { "base": null, "refs": { @@ -5204,6 +5489,9 @@ "AlreadyExistsException$Message": "

A message describing the problem.

", "BlueprintRun$ErrorMessage": "

Indicates any errors that are seen while running the blueprint.

", "BlueprintRun$RollbackErrorMessage": "

If there are any errors while creating the entities of a workflow, we try to roll back the created entities until that point and delete them. This attribute indicates the errors seen while trying to delete the entities that are created.

", + "ColumnStatisticsTaskNotRunningException$Message": "

A message describing the problem.

", + "ColumnStatisticsTaskRunningException$Message": "

A message describing the problem.

", + "ColumnStatisticsTaskStoppingException$Message": "

A message describing the problem.

", "ConcurrentModificationException$Message": "

A message describing the problem.

", "ConcurrentRunsExceededException$Message": "

A message describing the problem.

", "ConditionCheckFailureException$Message": "

A message describing the problem.

", @@ -5229,9 +5517,14 @@ "PermissionTypeMismatchException$Message": "

There is a mismatch between the SupportedPermissionType used in the query request and the permissions defined on the target table.

", "ResourceNotReadyException$Message": "

A message describing the problem.

", "ResourceNumberLimitExceededException$Message": "

A message describing the problem.

", + "RunMetrics$NumberOfBytesCompacted": "

The number of bytes removed by the compaction job run.

", + "RunMetrics$NumberOfFilesCompacted": "

The number of files removed by the compaction job run.

", + "RunMetrics$NumberOfDpus": "

The number of DPU hours consumed by the job.

", + "RunMetrics$JobDurationInHour": "

The duration of the job in hours.

", "SchedulerNotRunningException$Message": "

A message describing the problem.

", "SchedulerRunningException$Message": "

A message describing the problem.

", "SchedulerTransitioningException$Message": "

A message describing the problem.

", + "TableOptimizerRun$error": "

An error that occured during the optimizer run.

", "ValidationException$Message": "

A message describing the problem.

", "VersionMismatchException$Message": "

A message describing the problem.

" } @@ -5287,6 +5580,12 @@ "RemoveSchemaVersionMetadataResponse$MetadataValue": "

The value of the metadata key.

" } }, + "MetricBasedObservation": { + "base": "

Describes the metric based observation generated based on evaluated data quality metrics.

", + "refs": { + "DataQualityObservation$MetricBasedObservation": "

An object of type MetricBasedObservation representing the observation that is based on evaluated data quality metrics.

" + } + }, "MicrosoftSQLServerCatalogSource": { "base": "

Specifies a Microsoft SQL server data source in the Glue Data Catalog.

", "refs": { @@ -5361,8 +5660,10 @@ "Column$Name": "

The name of the Column.

", "ColumnError$ColumnName": "

The name of the column that failed.

", "ColumnImportance$ColumnName": "

The name of a column.

", + "ColumnNameList$member": null, "ColumnRowFilter$ColumnName": "

A string containing the name of the column.

", "ColumnStatistics$ColumnName": "

Name of column which statistics belong to.

", + "ColumnStatisticsTaskRun$WorkerType": "

The type of workers being used for generating stats. The default is g.1x.

", "Condition$JobName": "

The name of the job whose JobRuns this condition applies to, and on which this trigger waits.

", "Condition$CrawlerName": "

The name of the crawler to which this condition applies.

", "Connection$Name": "

The name of the connection definition.

", @@ -5398,6 +5699,8 @@ "CreateSecurityConfigurationResponse$Name": "

The name assigned to the new security configuration.

", "CreateSessionRequest$Id": "

The ID of the session request.

", "CreateSessionRequest$SecurityConfiguration": "

The name of the SecurityConfiguration structure to be used with the session

", + "CreateTableOptimizerRequest$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "CreateTableOptimizerRequest$TableName": "

The name of the table.

", "CreateTableRequest$DatabaseName": "

The catalog database in which to create the new table. For Hive compatibility, this name is entirely lowercase.

", "CreateTriggerRequest$Name": "

The name of the trigger.

", "CreateTriggerRequest$WorkflowName": "

The name of the workflow associated with the trigger.

", @@ -5412,6 +5715,7 @@ "CustomEntityType$Name": "

A name for the custom pattern that allows it to be retrieved or deleted later. This name must be unique per Amazon Web Services account.

", "CustomEntityType$RegexString": "

A regular expression string that is used for detecting sensitive data in a custom pattern.

", "CustomEntityTypeNames$member": null, + "DataQualityAnalyzerResult$Name": "

The name of the data quality analyzer.

", "DataQualityResult$RulesetName": "

The name of the ruleset associated with the data quality result.

", "DataQualityResult$JobName": "

The job name associated with the data quality result, if any.

", "DataQualityResultDescription$JobName": "

The job name associated with the data quality result.

", @@ -5453,6 +5757,8 @@ "DeleteSecurityConfigurationRequest$Name": "

The name of the security configuration to delete.

", "DeleteSessionRequest$Id": "

The ID of the session to be deleted.

", "DeleteSessionResponse$Id": "

Returns the ID of the deleted session.

", + "DeleteTableOptimizerRequest$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "DeleteTableOptimizerRequest$TableName": "

The name of the table.

", "DeleteTableRequest$DatabaseName": "

The name of the catalog database in which the table resides. For Hive compatibility, this name is entirely lowercase.

", "DeleteTableRequest$Name": "

The name of the table to be deleted. For Hive compatibility, this name is entirely lowercase.

", "DeleteTableVersionRequest$DatabaseName": "

The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.

", @@ -5482,6 +5788,7 @@ "GetColumnStatisticsForPartitionRequest$TableName": "

The name of the partitions' table.

", "GetColumnStatisticsForTableRequest$DatabaseName": "

The name of the catalog database where the partitions reside.

", "GetColumnStatisticsForTableRequest$TableName": "

The name of the partitions' table.

", + "GetColumnStatisticsTaskRunsRequest$TableName": "

The name of the table.

", "GetConnectionRequest$Name": "

The name of the connection definition to retrieve.

", "GetCrawlerRequest$Name": "

The name of the crawler to retrieve metadata for.

", "GetCustomEntityTypeRequest$Name": "

The name of the custom pattern that you want to retrieve.

", @@ -5506,6 +5813,10 @@ "GetSecurityConfigurationRequest$Name": "

The name of the security configuration to retrieve.

", "GetSessionRequest$Id": "

The ID of the session.

", "GetStatementRequest$SessionId": "

The Session ID of the statement.

", + "GetTableOptimizerRequest$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "GetTableOptimizerRequest$TableName": "

The name of the table.

", + "GetTableOptimizerResponse$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "GetTableOptimizerResponse$TableName": "

The name of the table.

", "GetTableRequest$DatabaseName": "

The name of the database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.

", "GetTableRequest$Name": "

The name of the table for which to retrieve the definition. For Hive compatibility, this name is entirely lowercase.

", "GetTableVersionRequest$DatabaseName": "

The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.

", @@ -5547,11 +5858,17 @@ "KeySchemaElement$Name": "

The name of a partition key.

", "ListCrawlsRequest$CrawlerName": "

The name of the crawler whose runs you want to retrieve.

", "ListStatementsRequest$SessionId": "

The Session ID of the statements.

", + "ListTableOptimizerRunsRequest$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "ListTableOptimizerRunsRequest$TableName": "

The name of the table.

", + "ListTableOptimizerRunsResponse$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "ListTableOptimizerRunsResponse$TableName": "

The name of the table.

", "ListTriggersRequest$DependentJobName": "

The name of the job for which to retrieve triggers. The trigger that can start this job is returned. If there is no such trigger, all triggers are returned.

", "MLTransform$Name": "

A user-defined name for the machine learning transform. Names are not guaranteed unique and can be changed at any time.

", "MLUserDataEncryption$KmsKeyId": "

The ID for the customer-provided KMS key.

", "MatchCriteria$member": null, + "MetricBasedObservation$MetricName": "

The name of the data quality metric used for generating the observation.

", "NameStringList$member": null, + "NewRules$member": null, "Node$Name": "

The name of the Glue component represented by the node.

", "Node$UniqueId": "

The unique Id assigned to the node within the workflow.

", "NodeIdList$member": null, @@ -5575,6 +5892,11 @@ "Session$SecurityConfiguration": "

The name of the SecurityConfiguration structure to be used with the session.

", "SessionCommand$Name": "

Specifies the name of the SessionCommand. Can be 'glueetl' or 'gluestreaming'.

", "SessionIdList$member": null, + "StartColumnStatisticsTaskRunRequest$DatabaseName": "

The name of the database where the table resides.

", + "StartColumnStatisticsTaskRunRequest$TableName": "

The name of the table to generate statistics.

", + "StartColumnStatisticsTaskRunRequest$Role": "

The IAM role that the service assumes to generate statistics.

", + "StartColumnStatisticsTaskRunRequest$CatalogID": "

The ID of the Data Catalog where the table reside. If none is supplied, the Amazon Web Services account ID is used by default.

", + "StartColumnStatisticsTaskRunRequest$SecurityConfiguration": "

Name of the security configuration that is used to encrypt CloudWatch logs for the column stats task run.

", "StartCrawlerRequest$Name": "

Name of the crawler to start.

", "StartCrawlerScheduleRequest$CrawlerName": "

Name of the crawler to schedule.

", "StartDataQualityRuleRecommendationRunRequest$CreatedRulesetName": "

A name for the ruleset.

", @@ -5583,6 +5905,7 @@ "StartTriggerRequest$Name": "

The name of the trigger to start.

", "StartTriggerResponse$Name": "

The name of the trigger that was started.

", "StartWorkflowRunRequest$Name": "

The name of the workflow to start.

", + "StopColumnStatisticsTaskRunRequest$TableName": "

The name of the table.

", "StopCrawlerRequest$Name": "

Name of the crawler to stop.

", "StopCrawlerScheduleRequest$CrawlerName": "

Name of the crawler whose schedule state to set.

", "StopSessionRequest$Id": "

The ID of the session to be stopped.

", @@ -5621,7 +5944,7 @@ "UpdateDatabaseRequest$Name": "

The name of the database to update in the catalog. For Hive compatibility, this is folded to lowercase.

", "UpdateGrokClassifierRequest$Name": "

The name of the GrokClassifier.

", "UpdateJobFromSourceControlRequest$JobName": "

The name of the Glue job to be synchronized to or from the remote repository.

", - "UpdateJobFromSourceControlRequest$RepositoryName": "

The name of the remote repository that contains the job artifacts.

", + "UpdateJobFromSourceControlRequest$RepositoryName": "

The name of the remote repository that contains the job artifacts. For BitBucket providers, RepositoryName should include WorkspaceName. Use the format <WorkspaceName>/<RepositoryName>.

", "UpdateJobFromSourceControlRequest$RepositoryOwner": "

The owner of the remote repository that contains the job artifacts.

", "UpdateJobFromSourceControlRequest$BranchName": "

An optional branch in the remote repository.

", "UpdateJobFromSourceControlRequest$Folder": "

An optional folder in the remote repository.

", @@ -5633,11 +5956,13 @@ "UpdatePartitionRequest$DatabaseName": "

The name of the catalog database in which the table in question resides.

", "UpdatePartitionRequest$TableName": "

The name of the table in which the partition to be updated is located.

", "UpdateSourceControlFromJobRequest$JobName": "

The name of the Glue job to be synchronized to or from the remote repository.

", - "UpdateSourceControlFromJobRequest$RepositoryName": "

The name of the remote repository that contains the job artifacts.

", + "UpdateSourceControlFromJobRequest$RepositoryName": "

The name of the remote repository that contains the job artifacts. For BitBucket providers, RepositoryName should include WorkspaceName. Use the format <WorkspaceName>/<RepositoryName>.

", "UpdateSourceControlFromJobRequest$RepositoryOwner": "

The owner of the remote repository that contains the job artifacts.

", "UpdateSourceControlFromJobRequest$BranchName": "

An optional branch in the remote repository.

", "UpdateSourceControlFromJobRequest$Folder": "

An optional folder in the remote repository.

", "UpdateSourceControlFromJobResponse$JobName": "

The name of the Glue job.

", + "UpdateTableOptimizerRequest$DatabaseName": "

The name of the database in the catalog in which the table resides.

", + "UpdateTableOptimizerRequest$TableName": "

The name of the table.

", "UpdateTableRequest$DatabaseName": "

The name of the catalog database in which the table resides. For Hive compatibility, this name is entirely lowercase.

", "UpdateTriggerRequest$Name": "

The name of the trigger to update.

", "UpdateUserDefinedFunctionRequest$DatabaseName": "

The name of the catalog database where the function to be updated is located.

", @@ -5669,6 +5994,12 @@ "UnfilteredPartition$AuthorizedColumns": "

The list of columns the user has permissions to access.

" } }, + "NewRules": { + "base": null, + "refs": { + "MetricBasedObservation$NewRules": "

A list of new data quality rules generated as part of the observation based on the data quality metric value.

" + } + }, "NoScheduleException": { "base": "

There is no applicable schedule.

", "refs": { @@ -5718,6 +6049,8 @@ "CatalogKafkaSource$Name": "

The name of the data store.

", "CatalogKinesisSource$Name": "

The name of the data source.

", "CatalogSource$Name": "

The name of the data store.

", + "ConnectorDataSource$Name": "

The name of this source node.

", + "ConnectorDataTarget$Name": "

The name of this target node.

", "CustomCode$Name": "

The name of the transform node.

", "DQDLAliases$key": null, "DirectJDBCSource$Name": "

The name of the JDBC source connection.

", @@ -5788,6 +6121,7 @@ "base": null, "refs": { "BinaryColumnStatisticsData$AverageLength": "

The average bit sequence length in the column.

", + "ColumnStatisticsTaskRun$DPUSeconds": "

The calculated DPU usage in seconds for all autoscaled workers.

", "CrawlerHistory$DPUHour": "

The number of data processing units (DPU) used in hours for the crawl.

", "CrawlerMetrics$TimeLeftSeconds": "

The estimated time left to complete a running crawl.

", "CrawlerMetrics$LastRuntimeSeconds": "

The duration of the crawler's most recent run, in seconds.

", @@ -5895,6 +6229,7 @@ "InvalidInputException$FromFederationSource": "

Indicates whether or not the exception relates to a federated source.

", "LakeFormationConfiguration$UseLakeFormationCredentials": "

Specifies whether to use Lake Formation credentials for the crawler instead of the IAM role credentials.

", "MongoDBTarget$ScanAll": "

Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table.

A value of true means to scan all records, while a value of false means to sample the records. If no value is specified, the value defaults to true.

", + "TableOptimizerConfiguration$enabled": "

Whether table optimization is enabled.

", "UpdateCsvClassifierRequest$DisableValueTrimming": "

Specifies not to trim values before identifying the type of column values. The default value is true.

", "UpdateCsvClassifierRequest$AllowSingleColumn": "

Enables the processing of files that contain only one column.

", "UpdateCsvClassifierRequest$CustomDatatypeConfigured": "

Specifies the configuration of custom datatypes.

" @@ -5906,6 +6241,10 @@ "CreateJobRequest$MaxCapacity": "

For Glue version 1.0 or earlier jobs, using the standard worker type, the number of Glue data processing units (DPUs) that can be allocated when this job runs. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page.

For Glue version 2.0+ jobs, you cannot specify a Maximum capacity. Instead, you should specify a Worker type and the Number of workers.

Do not set MaxCapacity if using WorkerType and NumberOfWorkers.

The value that can be allocated for MaxCapacity depends on whether you are running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming ETL job:

  • When you specify a Python shell job (JobCommand.Name=\"pythonshell\"), you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU.

  • When you specify an Apache Spark ETL job (JobCommand.Name=\"glueetl\") or Apache Spark streaming ETL job (JobCommand.Name=\"gluestreaming\"), you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU allocation.

", "CreateMLTransformRequest$MaxCapacity": "

The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page.

MaxCapacity is a mutually exclusive option with NumberOfWorkers and WorkerType.

  • If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be set.

  • If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be set.

  • If WorkerType is set, then NumberOfWorkers is required (and vice versa).

  • MaxCapacity and NumberOfWorkers must both be at least 1.

When the WorkerType field is set to a value other than Standard, the MaxCapacity field is set automatically and becomes read-only.

When the WorkerType field is set to a value other than Standard, the MaxCapacity field is set automatically and becomes read-only.

", "CreateSessionRequest$MaxCapacity": "

The number of Glue data processing units (DPUs) that can be allocated when the job runs. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB memory.

", + "DataQualityMetricValues$ActualValue": "

The actual value of the data quality metric.

", + "DataQualityMetricValues$ExpectedValue": "

The expected value of the data quality metric according to the analysis of historical data.

", + "DataQualityMetricValues$LowerLimit": "

The lower limit of the data quality metric value according to the analysis of historical data.

", + "DataQualityMetricValues$UpperLimit": "

The upper limit of the data quality metric value according to the analysis of historical data.

", "DynamoDBTarget$scanRate": "

The percentage of the configured read capacity units to use by the Glue crawler. Read capacity units is a term defined by DynamoDB, and is a numeric value that acts as rate limiter for the number of reads that can be performed on that table per second.

The valid values are null or a value between 0.1 to 1.5. A null value is used when user does not provide a value, and defaults to 0.5 of the configured Read Capacity Unit (for provisioned tables), or 0.25 of the max configured Read Capacity Unit (for tables using on-demand mode).

", "EvaluatedMetricsMap$value": null, "GetMLTransformResponse$MaxCapacity": "

The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page.

When the WorkerType field is set to a value other than Standard, the MaxCapacity field is set automatically and becomes read-only.

", @@ -5964,6 +6303,7 @@ "AmazonRedshiftTarget$Inputs": "

The nodes that are inputs to the data target.

", "ApplyMapping$Inputs": "

The data inputs identified by their node names.

", "BasicCatalogTarget$Inputs": "

The nodes that are inputs to the data target.

", + "ConnectorDataTarget$Inputs": "

The nodes that are inputs to the data target.

", "DropDuplicates$Inputs": "

The data inputs identified by their node names.

", "DropFields$Inputs": "

The data inputs identified by their node names.

", "DropNullFields$Inputs": "

The data inputs identified by their node names.

", @@ -6157,6 +6497,7 @@ "refs": { "GetBlueprintRunsRequest$MaxResults": "

The maximum size of a list to return.

", "GetClassifiersRequest$MaxResults": "

The size of the list to return (optional).

", + "GetColumnStatisticsTaskRunsRequest$MaxResults": "

The maximum size of the response.

", "GetConnectionsRequest$MaxResults": "

The maximum number of connections to return in one response.

", "GetCrawlerMetricsRequest$MaxResults": "

The maximum size of a list to return.

", "GetCrawlersRequest$MaxResults": "

The number of crawlers to return on each call.

", @@ -6172,6 +6513,7 @@ "GetUnfilteredPartitionsMetadataRequest$MaxResults": "

The maximum number of partitions to return in a single response.

", "GetWorkflowRunsRequest$MaxResults": "

The maximum number of workflow runs to be included in the response.

", "ListBlueprintsRequest$MaxResults": "

The maximum size of a list to return.

", + "ListColumnStatisticsTaskRunsRequest$MaxResults": "

The maximum size of the response.

", "ListCrawlersRequest$MaxResults": "

The maximum size of a list to return.

", "ListCrawlsRequest$MaxResults": "

The maximum number of results to return. The default is 20, and maximum is 100.

", "ListCustomEntityTypesRequest$MaxResults": "

The maximum number of results to return.

", @@ -6406,6 +6748,12 @@ "StreamingDataPreviewOptions$PollingTime": "

The polling time in milliseconds.

" } }, + "PositiveInteger": { + "base": null, + "refs": { + "ColumnStatisticsTaskRun$NumberOfWorkers": "

The number of workers used to generate column statistics. The job is preconfigured to autoscale up to 25 instances.

" + } + }, "PositiveLong": { "base": null, "refs": { @@ -6751,6 +7099,7 @@ "Role": { "base": null, "refs": { + "ColumnStatisticsTaskRun$Role": "

The IAM role that the service assumes to generate statistics.

", "Crawler$Role": "

The Amazon Resource Name (ARN) of an IAM role that's used to access customer resources, such as Amazon Simple Storage Service (Amazon S3) data.

", "CreateCrawlerRequest$Role": "

The IAM role or Amazon Resource Name (ARN) of an IAM role used by the new crawler to access customer resources.

", "UpdateCrawlerRequest$Role": "

The IAM role or Amazon Resource Name (ARN) of an IAM role that is used by the new crawler to access customer resources.

" @@ -6804,6 +7153,12 @@ "ResetJobBookmarkRequest$RunId": "

The unique run identifier associated with this job run.

" } }, + "RunMetrics": { + "base": "

Metrics for the optimizer run.

", + "refs": { + "TableOptimizerRun$metrics": "

A RunMetrics object containing metrics for the optimizer run.

" + } + }, "RunStatementRequest": { "base": null, "refs": { @@ -6957,6 +7312,13 @@ "CrawlerTargets$S3Targets": "

Specifies Amazon Simple Storage Service (Amazon S3) targets.

" } }, + "SampleSizePercentage": { + "base": null, + "refs": { + "ColumnStatisticsTaskRun$SampleSize": "

The percentage of rows used to generate statistics. If none is supplied, the entire table will be used to generate stats.

", + "StartColumnStatisticsTaskRunRequest$SampleSize": "

The percentage of rows used to generate statistics. If none is supplied, the entire table will be used to generate stats.

" + } + }, "ScalaCode": { "base": null, "refs": { @@ -7372,8 +7734,8 @@ "base": null, "refs": { "SourceControlDetails$Provider": "

The provider for the remote repository.

", - "UpdateJobFromSourceControlRequest$Provider": "

The provider for the remote repository.

", - "UpdateSourceControlFromJobRequest$Provider": "

The provider for the remote repository.

" + "UpdateJobFromSourceControlRequest$Provider": "

The provider for the remote repository. Possible values: GITHUB, AWS_CODE_COMMIT, GITLAB, BITBUCKET.

", + "UpdateSourceControlFromJobRequest$Provider": "

The provider for the remote repository. Possible values: GITHUB, AWS_CODE_COMMIT, GITLAB, BITBUCKET.

" } }, "SparkConnectorSource": { @@ -7435,6 +7797,16 @@ "refs": { } }, + "StartColumnStatisticsTaskRunRequest": { + "base": null, + "refs": { + } + }, + "StartColumnStatisticsTaskRunResponse": { + "base": null, + "refs": { + } + }, "StartCrawlerRequest": { "base": null, "refs": { @@ -7589,6 +7961,16 @@ "StatementOutput$Status": "

The status of the code execution output.

" } }, + "StopColumnStatisticsTaskRunRequest": { + "base": null, + "refs": { + } + }, + "StopColumnStatisticsTaskRunResponse": { + "base": null, + "refs": { + } + }, "StopCrawlerRequest": { "base": null, "refs": { @@ -7717,10 +8099,65 @@ "TableName": { "base": null, "refs": { + "ColumnStatisticsTaskRun$TableName": "

The name of the table for which column statistics is generated.

", "MappingEntry$SourceTable": "

The name of the source table.

", "MappingEntry$TargetTable": "

The target table.

" } }, + "TableOptimizer": { + "base": "

Contains details about an optimizer associated with a table.

", + "refs": { + "BatchTableOptimizer$tableOptimizer": "

A TableOptimizer object that contains details on the configuration and last run of a table optimzer.

", + "GetTableOptimizerResponse$TableOptimizer": "

The optimizer associated with the specified table.

" + } + }, + "TableOptimizerConfiguration": { + "base": "

Contains details on the configuration of a table optimizer. You pass this configuration when creating or updating a table optimizer.

", + "refs": { + "CreateTableOptimizerRequest$TableOptimizerConfiguration": "

A TableOptimizerConfiguration object representing the configuration of a table optimizer.

", + "TableOptimizer$configuration": "

A TableOptimizerConfiguration object that was specified when creating or updating a table optimizer.

", + "UpdateTableOptimizerRequest$TableOptimizerConfiguration": "

A TableOptimizerConfiguration object representing the configuration of a table optimizer.

" + } + }, + "TableOptimizerEventType": { + "base": null, + "refs": { + "TableOptimizerRun$eventType": "

An event type representing the status of the table optimizer run.

" + } + }, + "TableOptimizerRun": { + "base": "

Contains details for a table optimizer run.

", + "refs": { + "TableOptimizer$lastRun": "

A TableOptimizerRun object representing the last run of the table optimizer.

", + "TableOptimizerRuns$member": null + } + }, + "TableOptimizerRunTimestamp": { + "base": null, + "refs": { + "TableOptimizerRun$startTimestamp": "

Represents the epoch timestamp at which the compaction job was started within Lake Formation.

", + "TableOptimizerRun$endTimestamp": "

Represents the epoch timestamp at which the compaction job ended.

" + } + }, + "TableOptimizerRuns": { + "base": null, + "refs": { + "ListTableOptimizerRunsResponse$TableOptimizerRuns": "

A list of the optimizer runs associated with a table.

" + } + }, + "TableOptimizerType": { + "base": null, + "refs": { + "BatchGetTableOptimizerEntry$type": "

The type of table optimizer.

", + "BatchGetTableOptimizerError$type": "

The type of table optimizer.

", + "CreateTableOptimizerRequest$Type": "

The type of table optimizer. Currently, the only valid value is compaction.

", + "DeleteTableOptimizerRequest$Type": "

The type of table optimizer.

", + "GetTableOptimizerRequest$Type": "

The type of table optimizer.

", + "ListTableOptimizerRunsRequest$Type": "

The type of table optimizer. Currently, the only valid value is compaction.

", + "TableOptimizer$type": "

The type of table optimizer. Currently, the only valid value is compaction.

", + "UpdateTableOptimizerRequest$Type": "

The type of table optimizer. Currently, the only valid value is compaction.

" + } + }, "TablePrefix": { "base": null, "refs": { @@ -7907,6 +8344,10 @@ "refs": { "CatalogImportStatus$ImportTime": "

The time that the migration was started.

", "ColumnStatistics$AnalyzedTime": "

The timestamp of when column statistics were generated.

", + "ColumnStatisticsTaskRun$CreationTime": "

The time that this task was created.

", + "ColumnStatisticsTaskRun$LastUpdated": "

The last point in time when this task was modified.

", + "ColumnStatisticsTaskRun$StartTime": "

The start time of the task.

", + "ColumnStatisticsTaskRun$EndTime": "

The end time of the task.

", "Connection$CreationTime": "

The time that this connection definition was created.

", "Connection$LastUpdatedTime": "

The last time that this connection definition was updated.

", "Crawler$CreationTime": "

The time that the crawler was created.

", @@ -8022,6 +8463,8 @@ "refs": { "GetClassifiersRequest$NextToken": "

An optional continuation token.

", "GetClassifiersResponse$NextToken": "

A continuation token.

", + "GetColumnStatisticsTaskRunsRequest$NextToken": "

A continuation token, if this is a continuation call.

", + "GetColumnStatisticsTaskRunsResponse$NextToken": "

A continuation token, if not all task runs have yet been returned.

", "GetConnectionsRequest$NextToken": "

A continuation token, if this is a continuation call.

", "GetConnectionsResponse$NextToken": "

A continuation token, if the list of connections returned does not include the last of the filtered connections.

", "GetCrawlerMetricsRequest$NextToken": "

A continuation token, if this is a continuation call.

", @@ -8044,6 +8487,8 @@ "GetUnfilteredPartitionsMetadataResponse$NextToken": "

A continuation token, if the returned list of partitions does not include the last one.

", "GetUserDefinedFunctionsRequest$NextToken": "

A continuation token, if this is a continuation call.

", "GetUserDefinedFunctionsResponse$NextToken": "

A continuation token, if the list of functions returned does not include the last requested function.

", + "ListColumnStatisticsTaskRunsRequest$NextToken": "

A continuation token, if this is a continuation call.

", + "ListColumnStatisticsTaskRunsResponse$NextToken": "

A continuation token, if not all task run IDs have yet been returned.

", "ListCrawlersRequest$NextToken": "

A continuation token, if this is a continuation request.

", "ListCrawlersResponse$NextToken": "

A continuation token, if the returned list does not contain the last metric available.

", "ListCrawlsRequest$NextToken": "

A continuation token, if this is a continuation call.

", @@ -8474,6 +8919,16 @@ "refs": { } }, + "UpdateTableOptimizerRequest": { + "base": null, + "refs": { + } + }, + "UpdateTableOptimizerResponse": { + "base": null, + "refs": { + } + }, "UpdateTableRequest": { "base": null, "refs": { @@ -8752,6 +9207,22 @@ "refs": { "Classifier$XMLClassifier": "

A classifier for XML content.

" } + }, + "databaseNameString": { + "base": null, + "refs": { + "BatchGetTableOptimizerEntry$databaseName": "

The name of the database in the catalog in which the table resides.

", + "BatchGetTableOptimizerError$databaseName": "

The name of the database in the catalog in which the table resides.

", + "BatchTableOptimizer$databaseName": "

The name of the database in the catalog in which the table resides.

" + } + }, + "tableNameString": { + "base": null, + "refs": { + "BatchGetTableOptimizerEntry$tableName": "

The name of the table.

", + "BatchGetTableOptimizerError$tableName": "

The name of the table.

", + "BatchTableOptimizer$tableName": "

The name of the table.

" + } } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/glue/2017-03-31/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/glue/2017-03-31/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,6 +10,11 @@ "limit_key": "MaxResults", "output_token": "NextToken" }, + "GetColumnStatisticsTaskRuns": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "GetConnections": { "input_token": "NextToken", "limit_key": "MaxResults", @@ -112,6 +117,11 @@ "limit_key": "MaxResults", "output_token": "NextToken" }, + "ListColumnStatisticsTaskRuns": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "ListCrawlers": { "input_token": "NextToken", "limit_key": "MaxResults", @@ -179,6 +189,11 @@ "input_token": "NextToken", "limit_key": "MaxResults", "output_token": "NextToken" + }, + "ListTableOptimizerRuns": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" }, "ListTriggers": { "input_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/groundstation/2019-05-23/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/groundstation/2019-05-23/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/groundstation/2019-05-23/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/groundstation/2019-05-23/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1570,11 +1570,18 @@ "min":1, "pattern":"^arn:aws[a-zA-Z-]{0,16}:kms:[a-z]{2}(-[a-z]{1,16}){1,3}-\\d{1}:\\d{12}:((alias/[a-zA-Z0-9:/_-]{1,256}))$" }, + "KeyAliasName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^alias/[a-zA-Z0-9:/_-]+$" + }, "KeyArn":{"type":"string"}, "KmsKey":{ "type":"structure", "members":{ "kmsAliasArn":{"shape":"KeyAliasArn"}, + "kmsAliasName":{"shape":"KeyAliasName"}, "kmsKeyArn":{"shape":"KeyArn"} }, "union":true diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/groundstation/2019-05-23/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/groundstation/2019-05-23/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/groundstation/2019-05-23/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/groundstation/2019-05-23/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -790,6 +790,12 @@ "KmsKey$kmsAliasArn": "

KMS Alias Arn.

" } }, + "KeyAliasName": { + "base": null, + "refs": { + "KmsKey$kmsAliasName": "

KMS Alias Name.

" + } + }, "KeyArn": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/groundstation/2019-05-23/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/groundstation/2019-05-23/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/groundstation/2019-05-23/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/groundstation/2019-05-23/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://groundstation-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://groundstation-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://groundstation-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://groundstation-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://groundstation.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://groundstation.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://groundstation.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://groundstation.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/guardduty/2017-11-28/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/guardduty/2017-11-28/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/guardduty/2017-11-28/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/guardduty/2017-11-28/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1181,6 +1181,18 @@ "RdsLoginAttemptAction":{ "shape":"RdsLoginAttemptAction", "locationName":"rdsLoginAttemptAction" + }, + "KubernetesPermissionCheckedDetails":{ + "shape":"KubernetesPermissionCheckedDetails", + "locationName":"kubernetesPermissionCheckedDetails" + }, + "KubernetesRoleBindingDetails":{ + "shape":"KubernetesRoleBindingDetails", + "locationName":"kubernetesRoleBindingDetails" + }, + "KubernetesRoleDetails":{ + "shape":"KubernetesRoleDetails", + "locationName":"kubernetesRoleDetails" } } }, @@ -1251,6 +1263,73 @@ "key":{"shape":"String"}, "value":{"shape":"String"} }, + "AgentDetails":{ + "type":"structure", + "members":{ + "Version":{ + "shape":"String", + "locationName":"version" + } + } + }, + "Anomaly":{ + "type":"structure", + "members":{ + "Profiles":{ + "shape":"AnomalyProfiles", + "locationName":"profiles" + }, + "Unusual":{ + "shape":"AnomalyUnusual", + "locationName":"unusual" + } + } + }, + "AnomalyObject":{ + "type":"structure", + "members":{ + "ProfileType":{ + "shape":"ProfileType", + "locationName":"profileType" + }, + "ProfileSubtype":{ + "shape":"ProfileSubtype", + "locationName":"profileSubtype" + }, + "Observations":{ + "shape":"Observations", + "locationName":"observations" + } + } + }, + "AnomalyProfileFeatureObjects":{ + "type":"list", + "member":{"shape":"AnomalyObject"} + }, + "AnomalyProfileFeatures":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"AnomalyProfileFeatureObjects"} + }, + "AnomalyProfiles":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"AnomalyProfileFeatures"} + }, + "AnomalyUnusual":{ + "type":"structure", + "members":{ + "Behavior":{ + "shape":"Behavior", + "locationName":"behavior" + } + } + }, + "AnomalyUnusualBehaviorFeature":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"AnomalyObject"} + }, "ArchiveFindingsRequest":{ "type":"structure", "required":[ @@ -1338,6 +1417,11 @@ "error":{"httpStatusCode":400}, "exception":true }, + "Behavior":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"AnomalyUnusualBehaviorFeature"} + }, "BlockPublicAccess":{ "type":"structure", "members":{ @@ -1521,6 +1605,19 @@ } } }, + "ContainerInstanceDetails":{ + "type":"structure", + "members":{ + "CoveredContainerInstances":{ + "shape":"Long", + "locationName":"coveredContainerInstances" + }, + "CompatibleContainerInstances":{ + "shape":"Long", + "locationName":"compatibleContainerInstances" + } + } + }, "Containers":{ "type":"list", "member":{"shape":"Container"} @@ -1553,6 +1650,48 @@ } } }, + "CoverageEc2InstanceDetails":{ + "type":"structure", + "members":{ + "InstanceId":{ + "shape":"String", + "locationName":"instanceId" + }, + "InstanceType":{ + "shape":"String", + "locationName":"instanceType" + }, + "ClusterArn":{ + "shape":"String", + "locationName":"clusterArn" + }, + "AgentDetails":{ + "shape":"AgentDetails", + "locationName":"agentDetails" + }, + "ManagementType":{ + "shape":"ManagementType", + "locationName":"managementType" + } + } + }, + "CoverageEcsClusterDetails":{ + "type":"structure", + "members":{ + "ClusterName":{ + "shape":"String", + "locationName":"clusterName" + }, + "FargateDetails":{ + "shape":"FargateDetails", + "locationName":"fargateDetails" + }, + "ContainerInstanceDetails":{ + "shape":"ContainerInstanceDetails", + "locationName":"containerInstanceDetails" + } + } + }, "CoverageEksClusterDetails":{ "type":"structure", "members":{ @@ -1621,7 +1760,12 @@ "RESOURCE_TYPE", "COVERAGE_STATUS", "ADDON_VERSION", - "MANAGEMENT_TYPE" + "MANAGEMENT_TYPE", + "EKS_CLUSTER_NAME", + "ECS_CLUSTER_NAME", + "AGENT_VERSION", + "INSTANCE_ID", + "CLUSTER_ARN" ] }, "CoverageFilterCriterionList":{ @@ -1673,6 +1817,14 @@ "ResourceType":{ "shape":"ResourceType", "locationName":"resourceType" + }, + "EcsClusterDetails":{ + "shape":"CoverageEcsClusterDetails", + "locationName":"ecsClusterDetails" + }, + "Ec2InstanceDetails":{ + "shape":"CoverageEc2InstanceDetails", + "locationName":"ec2InstanceDetails" } } }, @@ -1701,7 +1853,10 @@ "COVERAGE_STATUS", "ISSUE", "ADDON_VERSION", - "UPDATED_AT" + "UPDATED_AT", + "EKS_CLUSTER_NAME", + "ECS_CLUSTER_NAME", + "INSTANCE_ID" ] }, "CoverageStatistics":{ @@ -2551,6 +2706,15 @@ "type":"list", "member":{"shape":"Destination"} }, + "Detection":{ + "type":"structure", + "members":{ + "Anomaly":{ + "shape":"Anomaly", + "locationName":"anomaly" + } + } + }, "DetectorAdditionalConfiguration":{ "type":"structure", "members":{ @@ -2597,7 +2761,8 @@ "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", - "LAMBDA_NETWORK_LOGS" + "LAMBDA_NETWORK_LOGS", + "RUNTIME_MONITORING" ] }, "DetectorFeatureConfiguration":{ @@ -2657,7 +2822,8 @@ "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", - "LAMBDA_NETWORK_LOGS" + "LAMBDA_NETWORK_LOGS", + "RUNTIME_MONITORING" ] }, "DetectorId":{ @@ -2773,6 +2939,10 @@ "Blocked":{ "shape":"Boolean", "locationName":"blocked" + }, + "DomainWithSuffix":{ + "shape":"String", + "locationName":"domainWithSuffix" } } }, @@ -3000,9 +3170,25 @@ } } }, + "FargateDetails":{ + "type":"structure", + "members":{ + "Issues":{ + "shape":"Issues", + "locationName":"issues" + }, + "ManagementType":{ + "shape":"ManagementType", + "locationName":"managementType" + } + } + }, "FeatureAdditionalConfiguration":{ "type":"string", - "enum":["EKS_ADDON_MANAGEMENT"] + "enum":[ + "EKS_ADDON_MANAGEMENT", + "ECS_FARGATE_AGENT_MANAGEMENT" + ] }, "FeatureStatus":{ "type":"string", @@ -3280,7 +3466,9 @@ "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", - "LAMBDA_NETWORK_LOGS" + "LAMBDA_NETWORK_LOGS", + "FARGATE_RUNTIME_MONITORING", + "EC2_RUNTIME_MONITORING" ] }, "GeoLocation":{ @@ -3875,6 +4063,19 @@ } } }, + "ImpersonatedUser":{ + "type":"structure", + "members":{ + "Username":{ + "shape":"String", + "locationName":"username" + }, + "Groups":{ + "shape":"Groups", + "locationName":"groups" + } + } + }, "InstanceArn":{ "type":"string", "pattern":"^arn:(aws|aws-cn|aws-us-gov):[a-z]+:[a-z]+(-[0-9]+|-[a-z]+)+:([0-9]{12}):[a-z\\-]+\\/[a-zA-Z0-9]*$" @@ -4057,6 +4258,12 @@ "type":"list", "member":{"shape":"String"} }, + "Issues":{ + "type":"list", + "member":{"shape":"String"}, + "max":50, + "min":0 + }, "KubernetesApiCallAction":{ "type":"structure", "members":{ @@ -4087,6 +4294,22 @@ "Parameters":{ "shape":"String", "locationName":"parameters" + }, + "Resource":{ + "shape":"String", + "locationName":"resource" + }, + "Subresource":{ + "shape":"String", + "locationName":"subresource" + }, + "Namespace":{ + "shape":"String", + "locationName":"namespace" + }, + "ResourceName":{ + "shape":"String", + "locationName":"resourceName" } } }, @@ -4152,6 +4375,69 @@ } } }, + "KubernetesPermissionCheckedDetails":{ + "type":"structure", + "members":{ + "Verb":{ + "shape":"String", + "locationName":"verb" + }, + "Resource":{ + "shape":"String", + "locationName":"resource" + }, + "Namespace":{ + "shape":"String", + "locationName":"namespace" + }, + "Allowed":{ + "shape":"Boolean", + "locationName":"allowed" + } + } + }, + "KubernetesRoleBindingDetails":{ + "type":"structure", + "members":{ + "Kind":{ + "shape":"String", + "locationName":"kind" + }, + "Name":{ + "shape":"String", + "locationName":"name" + }, + "Uid":{ + "shape":"String", + "locationName":"uid" + }, + "RoleRefName":{ + "shape":"String", + "locationName":"roleRefName" + }, + "RoleRefKind":{ + "shape":"String", + "locationName":"roleRefKind" + } + } + }, + "KubernetesRoleDetails":{ + "type":"structure", + "members":{ + "Kind":{ + "shape":"String", + "locationName":"kind" + }, + "Name":{ + "shape":"String", + "locationName":"name" + }, + "Uid":{ + "shape":"String", + "locationName":"uid" + } + } + }, "KubernetesUserDetails":{ "type":"structure", "members":{ @@ -4170,6 +4456,10 @@ "SessionName":{ "shape":"SessionNameList", "locationName":"sessionName" + }, + "ImpersonatedUser":{ + "shape":"ImpersonatedUser", + "locationName":"impersonatedUser" } } }, @@ -4203,6 +4493,18 @@ "Volumes":{ "shape":"Volumes", "locationName":"volumes" + }, + "ServiceAccountName":{ + "shape":"String", + "locationName":"serviceAccountName" + }, + "HostIPC":{ + "shape":"Boolean", + "locationName":"hostIPC" + }, + "HostPID":{ + "shape":"Boolean", + "locationName":"hostPID" } } }, @@ -4747,7 +5049,8 @@ "type":"string", "enum":[ "AUTO_MANAGED", - "MANUAL" + "MANUAL", + "DISABLED" ] }, "MapEquals":{ @@ -5044,6 +5347,19 @@ "type":"list", "member":{"shape":"String"} }, + "ObservationTexts":{ + "type":"list", + "member":{"shape":"String"} + }, + "Observations":{ + "type":"structure", + "members":{ + "Text":{ + "shape":"ObservationTexts", + "locationName":"text" + } + } + }, "OrderBy":{ "type":"string", "enum":[ @@ -5059,12 +5375,16 @@ "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", - "LAMBDA_NETWORK_LOGS" + "LAMBDA_NETWORK_LOGS", + "RUNTIME_MONITORING" ] }, "OrgFeatureAdditionalConfiguration":{ "type":"string", - "enum":["EKS_ADDON_MANAGEMENT"] + "enum":[ + "EKS_ADDON_MANAGEMENT", + "ECS_FARGATE_AGENT_MANAGEMENT" + ] }, "OrgFeatureStatus":{ "type":"string", @@ -5471,6 +5791,19 @@ "type":"list", "member":{"shape":"ProductCode"} }, + "ProfileSubtype":{ + "type":"string", + "enum":[ + "FREQUENT", + "INFREQUENT", + "UNSEEN", + "RARE" + ] + }, + "ProfileType":{ + "type":"string", + "enum":["FREQUENCY"] + }, "PublicAccess":{ "type":"structure", "members":{ @@ -5682,7 +6015,11 @@ }, "ResourceType":{ "type":"string", - "enum":["EKS"] + "enum":[ + "EKS", + "ECS", + "EC2" + ] }, "RuntimeContext":{ "type":"structure", @@ -6098,6 +6435,10 @@ "Privileged":{ "shape":"Boolean", "locationName":"privileged" + }, + "AllowPrivilegeEscalation":{ + "shape":"Boolean", + "locationName":"allowPrivilegeEscalation" } } }, @@ -6176,6 +6517,10 @@ "RuntimeDetails":{ "shape":"RuntimeDetails", "locationName":"runtimeDetails" + }, + "Detection":{ + "shape":"Detection", + "locationName":"detection" } } }, @@ -6927,7 +7272,9 @@ "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "LAMBDA_NETWORK_LOGS", - "EKS_RUNTIME_MONITORING" + "EKS_RUNTIME_MONITORING", + "FARGATE_RUNTIME_MONITORING", + "EC2_RUNTIME_MONITORING" ] }, "UsageFeatureList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/guardduty/2017-11-28/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/guardduty/2017-11-28/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/guardduty/2017-11-28/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/guardduty/2017-11-28/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon GuardDuty is a continuous security monitoring service that analyzes and processes the following data sources: VPC flow logs, Amazon Web Services CloudTrail management event logs, CloudTrail S3 data event logs, EKS audit logs, DNS logs, and Amazon EBS volume data. It uses threat intelligence feeds, such as lists of malicious IPs and domains, and machine learning to identify unexpected, potentially unauthorized, and malicious activity within your Amazon Web Services environment. This can include issues like escalations of privileges, uses of exposed credentials, or communication with malicious IPs, domains, or presence of malware on your Amazon EC2 instances and container workloads. For example, GuardDuty can detect compromised EC2 instances and container workloads serving malware, or mining bitcoin.

GuardDuty also monitors Amazon Web Services account access behavior for signs of compromise, such as unauthorized infrastructure deployments like EC2 instances deployed in a Region that has never been used, or unusual API calls like a password policy change to reduce password strength.

GuardDuty informs you about the status of your Amazon Web Services environment by producing security findings that you can view in the GuardDuty console or through Amazon EventBridge. For more information, see the Amazon GuardDuty User Guide .

", + "service": "

Amazon GuardDuty is a continuous security monitoring service that analyzes and processes the following foundational data sources - VPC flow logs, Amazon Web Services CloudTrail management event logs, CloudTrail S3 data event logs, EKS audit logs, DNS logs, Amazon EBS volume data, runtime activity belonging to container workloads, such as Amazon EKS, Amazon ECS (including Amazon Web Services Fargate), and Amazon EC2 instances. It uses threat intelligence feeds, such as lists of malicious IPs and domains, and machine learning to identify unexpected, potentially unauthorized, and malicious activity within your Amazon Web Services environment. This can include issues like escalations of privileges, uses of exposed credentials, or communication with malicious IPs, domains, or presence of malware on your Amazon EC2 instances and container workloads. For example, GuardDuty can detect compromised EC2 instances and container workloads serving malware, or mining bitcoin.

GuardDuty also monitors Amazon Web Services account access behavior for signs of compromise, such as unauthorized infrastructure deployments like EC2 instances deployed in a Region that has never been used, or unusual API calls like a password policy change to reduce password strength.

GuardDuty informs you about the status of your Amazon Web Services environment by producing security findings that you can view in the GuardDuty console or through Amazon EventBridge. For more information, see the Amazon GuardDuty User Guide .

", "operations": { "AcceptAdministratorInvitation": "

Accepts the invitation to be a member account and get monitored by a GuardDuty administrator account that sent the invitation.

", "AcceptInvitation": "

Accepts the invitation to be monitored by a GuardDuty administrator account.

", @@ -43,7 +43,7 @@ "GetRemainingFreeTrialDays": "

Provides the number of days left for each data source used in the free trial period.

", "GetThreatIntelSet": "

Retrieves the ThreatIntelSet that is specified by the ThreatIntelSet ID.

", "GetUsageStatistics": "

Lists Amazon GuardDuty usage statistics over the last 30 days for the specified detector ID. For newly enabled detectors or data sources, the cost returned will include only the usage so far under 30 days. This may differ from the cost metrics in the console, which project usage over 30 days to provide a monthly cost estimate. For more information, see Understanding How Usage Costs are Calculated.

", - "InviteMembers": "

Invites Amazon Web Services accounts to become members of an organization administered by the Amazon Web Services account that invokes this API. If you are using organizations to manager your GuardDuty environment, this step is not needed. For more information, see Managing accounts with organizations.

To invite Amazon Web Services accounts, the first step is to ensure that GuardDuty has been enabled in the potential member accounts. You can now invoke this API to add accounts by invitation. The invited accounts can either accept or decline the invitation from their GuardDuty accounts. Each invited Amazon Web Services account can choose to accept the invitation from only one Amazon Web Services account. For more information, see Managing GuardDuty accounts by invitation.

After the invite has been accepted and you choose to disassociate a member account (by using DisassociateMembers) from your account, the details of the member account obtained by invoking CreateMembers, including the associated email addresses, will be retained. This is done so that you can invoke InviteMembers without the need to invoke CreateMembers again. To remove the details associated with a member account, you must also invoke DeleteMembers.

", + "InviteMembers": "

Invites Amazon Web Services accounts to become members of an organization administered by the Amazon Web Services account that invokes this API. If you are using Amazon Web Services Organizations to manage your GuardDuty environment, this step is not needed. For more information, see Managing accounts with organizations.

To invite Amazon Web Services accounts, the first step is to ensure that GuardDuty has been enabled in the potential member accounts. You can now invoke this API to add accounts by invitation. The invited accounts can either accept or decline the invitation from their GuardDuty accounts. Each invited Amazon Web Services account can choose to accept the invitation from only one Amazon Web Services account. For more information, see Managing GuardDuty accounts by invitation.

After the invite has been accepted and you choose to disassociate a member account (by using DisassociateMembers) from your account, the details of the member account obtained by invoking CreateMembers, including the associated email addresses, will be retained. This is done so that you can invoke InviteMembers without the need to invoke CreateMembers again. To remove the details associated with a member account, you must also invoke DeleteMembers.

", "ListCoverage": "

Lists coverage details for your GuardDuty account. If you're a GuardDuty administrator, you can retrieve all resources associated with the active member accounts in your organization.

Make sure the accounts have EKS Runtime Monitoring enabled and GuardDuty agent running on their EKS nodes.

", "ListDetectors": "

Lists detectorIds of all the existing Amazon GuardDuty detector resources.

", "ListFilters": "

Returns a paginated list of the current filters.

", @@ -51,7 +51,7 @@ "ListIPSets": "

Lists the IPSets of the GuardDuty service specified by the detector ID. If you use this operation from a member account, the IPSets returned are the IPSets from the associated administrator account.

", "ListInvitations": "

Lists all GuardDuty membership invitations that were sent to the current Amazon Web Services account.

", "ListMembers": "

Lists details about all member accounts for the current GuardDuty administrator account.

", - "ListOrganizationAdminAccounts": "

Lists the accounts configured as GuardDuty delegated administrators. Only the organization's management account can run this API operation.

", + "ListOrganizationAdminAccounts": "

Lists the accounts designated as GuardDuty delegated administrators. Only the organization's management account can run this API operation.

", "ListPublishingDestinations": "

Returns a list of publishing destinations associated with the specified detectorId.

", "ListTagsForResource": "

Lists tags for a resource. Tagging is currently supported for detectors, finding filters, IP sets, threat intel sets, and publishing destination, with a limit of 50 tags per resource. When invoked, this operation returns all assigned tags for a given resource.

", "ListThreatIntelSets": "

Lists the ThreatIntelSets of the GuardDuty service specified by the detector ID. If you use this operation from a member account, the ThreatIntelSets associated with the administrator account are returned.

", @@ -214,6 +214,55 @@ "AwsApiCallAction$AffectedResources": "

The details of the Amazon Web Services account that made the API call. This field identifies the resources that were affected by this API call.

" } }, + "AgentDetails": { + "base": "

Information about the installed GuardDuty security agent.

", + "refs": { + "CoverageEc2InstanceDetails$AgentDetails": "

Information about the installed security agent.

" + } + }, + "Anomaly": { + "base": "

Contains information about the anomalies.

", + "refs": { + "Detection$Anomaly": "

The details about the anomalous activity that caused GuardDuty to generate the finding.

" + } + }, + "AnomalyObject": { + "base": "

Contains information about the unusual anomalies.

", + "refs": { + "AnomalyProfileFeatureObjects$member": null, + "AnomalyUnusualBehaviorFeature$value": null + } + }, + "AnomalyProfileFeatureObjects": { + "base": null, + "refs": { + "AnomalyProfileFeatures$value": null + } + }, + "AnomalyProfileFeatures": { + "base": null, + "refs": { + "AnomalyProfiles$value": null + } + }, + "AnomalyProfiles": { + "base": null, + "refs": { + "Anomaly$Profiles": "

Information about the types of profiles.

" + } + }, + "AnomalyUnusual": { + "base": "

Contains information about the behavior of the anomaly that is new to GuardDuty.

", + "refs": { + "Anomaly$Unusual": "

Information about the behavior of the anomalies.

" + } + }, + "AnomalyUnusualBehaviorFeature": { + "base": null, + "refs": { + "Behavior$value": null + } + }, "ArchiveFindingsRequest": { "base": null, "refs": { @@ -242,6 +291,12 @@ "refs": { } }, + "Behavior": { + "base": null, + "refs": { + "AnomalyUnusual$Behavior": "

The behavior of the anomalous activity that caused GuardDuty to generate the finding.

" + } + }, "BlockPublicAccess": { "base": "

Contains information on how the bucker owner's S3 Block Public Access settings are being applied to the S3 bucket. See S3 Block Public Access for more information.

", "refs": { @@ -268,7 +323,10 @@ "DnsRequestAction$Blocked": "

Indicates whether the targeted port is blocked.

", "InviteMembersRequest$DisableEmailNotification": "

A Boolean value that specifies whether you want to disable email notification to the accounts that you are inviting to GuardDuty as members.

", "KubernetesAuditLogsConfiguration$Enable": "

The status of Kubernetes audit logs as a data source.

", + "KubernetesPermissionCheckedDetails$Allowed": "

Information whether the user has the permission to call the Kubernetes API.

", "KubernetesWorkloadDetails$HostNetwork": "

Whether the hostNetwork flag is enabled for the pods included in the workload.

", + "KubernetesWorkloadDetails$HostIPC": "

Whether the host IPC flag is enabled for the pods in the workload.

", + "KubernetesWorkloadDetails$HostPID": "

Whether the host PID flag is enabled for the pods in the workload.

", "NetworkConnectionAction$Blocked": "

Indicates whether EC2 blocked the network connection to your instance.

", "OrganizationEbsVolumes$AutoEnable": "

Whether scanning EBS volumes should be auto-enabled for new members joining the organization.

", "OrganizationEbsVolumesResult$AutoEnable": "

An object that contains the status of whether scanning EBS volumes should be auto-enabled for new members joining the organization.

", @@ -281,11 +339,12 @@ "S3LogsConfiguration$Enable": "

The status of S3 data event logs as a data source.

", "ScanEc2InstanceWithFindings$EbsVolumes": "

Describes the configuration for scanning EBS volumes as data source.

", "SecurityContext$Privileged": "

Whether the container is privileged.

", + "SecurityContext$AllowPrivilegeEscalation": "

Whether or not a container or a Kubernetes pod is allowed to gain more privileges than its parent process.

", "Service$Archived": "

Indicates whether this finding is archived.

", "ThreatDetectedByName$Shortened": "

Flag to determine if the finding contains every single infected file-path and/or every threat.

", "UpdateDetectorRequest$Enable": "

Specifies whether the detector is enabled or not enabled.

", "UpdateIPSetRequest$Activate": "

The updated Boolean value that specifies whether the IPSet is active or not.

", - "UpdateOrganizationConfigurationRequest$AutoEnable": "

Indicates whether to automatically enable member accounts in the organization.

Even though this is still supported, we recommend using AutoEnableOrganizationMembers to achieve the similar results. You must provide the value for either autoEnableOrganizationMembers or autoEnable.

", + "UpdateOrganizationConfigurationRequest$AutoEnable": "

Represents whether or not to automatically enable member accounts in the organization.

Even though this is still supported, we recommend using AutoEnableOrganizationMembers to achieve the similar results. You must provide a value for either autoEnableOrganizationMembers or autoEnable.

", "UpdateThreatIntelSetRequest$Activate": "

The updated Boolean value that specifies whether the ThreateIntelSet is active or not.

" } }, @@ -341,6 +400,12 @@ "Resource$ContainerDetails": null } }, + "ContainerInstanceDetails": { + "base": "

Contains information about the Amazon EC2 instance that is running the Amazon ECS container.

", + "refs": { + "CoverageEcsClusterDetails$ContainerInstanceDetails": "

Information about the Amazon ECS container running on Amazon EC2 instance.

" + } + }, "Containers": { "base": null, "refs": { @@ -372,6 +437,18 @@ "RemoteIpDetails$Country": "

The country code of the remote IP address.

" } }, + "CoverageEc2InstanceDetails": { + "base": "

This API is also used when you use GuardDuty Runtime Monitoring for your Amazon EC2 instances (currently in preview release) and is subject to change.

Contains information about the Amazon EC2 instance runtime coverage details.

", + "refs": { + "CoverageResourceDetails$Ec2InstanceDetails": "

This API is also used when you use GuardDuty Runtime Monitoring for your Amazon EC2 instances (currently in preview release) and is subject to change.

Information about the Amazon EC2 instance assessed for runtime coverage.

" + } + }, + "CoverageEcsClusterDetails": { + "base": "

Contains information about Amazon ECS cluster runtime coverage details.

", + "refs": { + "CoverageResourceDetails$EcsClusterDetails": "

Information about the Amazon ECS cluster that is assessed for runtime coverage.

" + } + }, "CoverageEksClusterDetails": { "base": "

Information about the EKS cluster that has a coverage status.

", "refs": { @@ -400,7 +477,7 @@ "CoverageFilterCriterionKey": { "base": null, "refs": { - "CoverageFilterCriterion$CriterionKey": "

An enum value representing possible filter fields.

" + "CoverageFilterCriterion$CriterionKey": "

An enum value representing possible filter fields.

Replace the enum value CLUSTER_NAME with EKS_CLUSTER_NAME. CLUSTER_NAME has been deprecated.

" } }, "CoverageFilterCriterionList": { @@ -436,7 +513,7 @@ "CoverageSortKey": { "base": null, "refs": { - "CoverageSortCriteria$AttributeName": "

Represents the field name used to sort the coverage details.

" + "CoverageSortCriteria$AttributeName": "

Represents the field name used to sort the coverage details.

Replace the enum value CLUSTER_NAME with EKS_CLUSTER_NAME. CLUSTER_NAME has been deprecated.

" } }, "CoverageStatistics": { @@ -543,7 +620,7 @@ "CriterionKey": { "base": null, "refs": { - "FilterCriterion$CriterionKey": "

An enum value representing possible scan properties to match with given scan entries.

" + "FilterCriterion$CriterionKey": "

An enum value representing possible scan properties to match with given scan entries.

Replace the enum value CLUSTER_NAME with EKS_CLUSTER_NAME. CLUSTER_NAME has been deprecated.

" } }, "DNSLogsConfigurationResult": { @@ -752,6 +829,12 @@ "ListPublishingDestinationsResponse$Destinations": "

A Destinations object that includes information about each publishing destination returned.

" } }, + "Detection": { + "base": "

Contains information about the detected behavior.

", + "refs": { + "Service$Detection": "

Contains information about the detected unusual behavior.

" + } + }, "DetectorAdditionalConfiguration": { "base": "

Information about the additional configuration for a feature in your GuardDuty account.

", "refs": { @@ -1032,6 +1115,12 @@ "Service$Evidence": "

An evidence object associated with the service.

" } }, + "FargateDetails": { + "base": "

Contains information about AWS Fargate details associated with an Amazon ECS cluster.

", + "refs": { + "CoverageEcsClusterDetails$FargateDetails": "

Information about the Fargate details associated with the Amazon ECS cluster.

" + } + }, "FeatureAdditionalConfiguration": { "base": null, "refs": { @@ -1129,7 +1218,7 @@ } }, "Finding": { - "base": "

Contains information about the finding, which is generated when abnormal or suspicious activity is detected.

", + "base": "

Contains information about the finding that is generated when abnormal or suspicious activity is detected.

", "refs": { "Findings$member": null } @@ -1137,10 +1226,10 @@ "FindingCriteria": { "base": "

Contains information about the criteria used for querying findings.

", "refs": { - "CreateFilterRequest$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

You can only use the following attributes to query findings:

  • accountId

  • id

  • region

  • severity

    To filter on the basis of severity, the API and CLI use the following input list for the FindingCriteria condition:

    • Low: [\"1\", \"2\", \"3\"]

    • Medium: [\"4\", \"5\", \"6\"]

    • High: [\"7\", \"8\", \"9\"]

    For more information, see Severity levels for GuardDuty findings.

  • type

  • updatedAt

    Type: ISO 8601 string format: YYYY-MM-DDTHH:MM:SS.SSSZ or YYYY-MM-DDTHH:MM:SSZ depending on whether the value contains milliseconds.

  • resource.accessKeyDetails.accessKeyId

  • resource.accessKeyDetails.principalId

  • resource.accessKeyDetails.userName

  • resource.accessKeyDetails.userType

  • resource.instanceDetails.iamInstanceProfile.id

  • resource.instanceDetails.imageId

  • resource.instanceDetails.instanceId

  • resource.instanceDetails.tags.key

  • resource.instanceDetails.tags.value

  • resource.instanceDetails.networkInterfaces.ipv6Addresses

  • resource.instanceDetails.networkInterfaces.privateIpAddresses.privateIpAddress

  • resource.instanceDetails.networkInterfaces.publicDnsName

  • resource.instanceDetails.networkInterfaces.publicIp

  • resource.instanceDetails.networkInterfaces.securityGroups.groupId

  • resource.instanceDetails.networkInterfaces.securityGroups.groupName

  • resource.instanceDetails.networkInterfaces.subnetId

  • resource.instanceDetails.networkInterfaces.vpcId

  • resource.instanceDetails.outpostArn

  • resource.resourceType

  • resource.s3BucketDetails.publicAccess.effectivePermissions

  • resource.s3BucketDetails.name

  • resource.s3BucketDetails.tags.key

  • resource.s3BucketDetails.tags.value

  • resource.s3BucketDetails.type

  • service.action.actionType

  • service.action.awsApiCallAction.api

  • service.action.awsApiCallAction.callerType

  • service.action.awsApiCallAction.errorCode

  • service.action.awsApiCallAction.remoteIpDetails.city.cityName

  • service.action.awsApiCallAction.remoteIpDetails.country.countryName

  • service.action.awsApiCallAction.remoteIpDetails.ipAddressV4

  • service.action.awsApiCallAction.remoteIpDetails.organization.asn

  • service.action.awsApiCallAction.remoteIpDetails.organization.asnOrg

  • service.action.awsApiCallAction.serviceName

  • service.action.dnsRequestAction.domain

  • service.action.networkConnectionAction.blocked

  • service.action.networkConnectionAction.connectionDirection

  • service.action.networkConnectionAction.localPortDetails.port

  • service.action.networkConnectionAction.protocol

  • service.action.networkConnectionAction.remoteIpDetails.city.cityName

  • service.action.networkConnectionAction.remoteIpDetails.country.countryName

  • service.action.networkConnectionAction.remoteIpDetails.ipAddressV4

  • service.action.networkConnectionAction.remoteIpDetails.organization.asn

  • service.action.networkConnectionAction.remoteIpDetails.organization.asnOrg

  • service.action.networkConnectionAction.remotePortDetails.port

  • service.action.awsApiCallAction.remoteAccountDetails.affiliated

  • service.action.kubernetesApiCallAction.remoteIpDetails.ipAddressV4

  • service.action.kubernetesApiCallAction.requestUri

  • service.action.networkConnectionAction.localIpDetails.ipAddressV4

  • service.action.networkConnectionAction.protocol

  • service.action.awsApiCallAction.serviceName

  • service.action.awsApiCallAction.remoteAccountDetails.accountId

  • service.additionalInfo.threatListName

  • service.resourceRole

  • resource.eksClusterDetails.name

  • resource.kubernetesDetails.kubernetesWorkloadDetails.name

  • resource.kubernetesDetails.kubernetesWorkloadDetails.namespace

  • resource.kubernetesDetails.kubernetesUserDetails.username

  • resource.kubernetesDetails.kubernetesWorkloadDetails.containers.image

  • resource.kubernetesDetails.kubernetesWorkloadDetails.containers.imagePrefix

  • service.ebsVolumeScanDetails.scanId

  • service.ebsVolumeScanDetails.scanDetections.threatDetectedByName.threatNames.name

  • service.ebsVolumeScanDetails.scanDetections.threatDetectedByName.threatNames.severity

  • service.ebsVolumeScanDetails.scanDetections.threatDetectedByName.threatNames.filePaths.hash

  • resource.ecsClusterDetails.name

  • resource.ecsClusterDetails.taskDetails.containers.image

  • resource.ecsClusterDetails.taskDetails.definitionArn

  • resource.containerDetails.image

  • resource.rdsDbInstanceDetails.dbInstanceIdentifier

  • resource.rdsDbInstanceDetails.dbClusterIdentifier

  • resource.rdsDbInstanceDetails.engine

  • resource.rdsDbUserDetails.user

  • resource.rdsDbInstanceDetails.tags.key

  • resource.rdsDbInstanceDetails.tags.value

  • service.runtimeDetails.process.executableSha256

  • service.runtimeDetails.process.name

  • service.runtimeDetails.process.name

  • resource.lambdaDetails.functionName

  • resource.lambdaDetails.functionArn

  • resource.lambdaDetails.tags.key

  • resource.lambdaDetails.tags.value

", + "CreateFilterRequest$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

You can only use the following attributes to query findings:

  • accountId

  • id

  • region

  • severity

    To filter on the basis of severity, the API and CLI use the following input list for the FindingCriteria condition:

    • Low: [\"1\", \"2\", \"3\"]

    • Medium: [\"4\", \"5\", \"6\"]

    • High: [\"7\", \"8\", \"9\"]

    For more information, see Severity levels for GuardDuty findings.

  • type

  • updatedAt

    Type: ISO 8601 string format: YYYY-MM-DDTHH:MM:SS.SSSZ or YYYY-MM-DDTHH:MM:SSZ depending on whether the value contains milliseconds.

  • resource.accessKeyDetails.accessKeyId

  • resource.accessKeyDetails.principalId

  • resource.accessKeyDetails.userName

  • resource.accessKeyDetails.userType

  • resource.instanceDetails.iamInstanceProfile.id

  • resource.instanceDetails.imageId

  • resource.instanceDetails.instanceId

  • resource.instanceDetails.tags.key

  • resource.instanceDetails.tags.value

  • resource.instanceDetails.networkInterfaces.ipv6Addresses

  • resource.instanceDetails.networkInterfaces.privateIpAddresses.privateIpAddress

  • resource.instanceDetails.networkInterfaces.publicDnsName

  • resource.instanceDetails.networkInterfaces.publicIp

  • resource.instanceDetails.networkInterfaces.securityGroups.groupId

  • resource.instanceDetails.networkInterfaces.securityGroups.groupName

  • resource.instanceDetails.networkInterfaces.subnetId

  • resource.instanceDetails.networkInterfaces.vpcId

  • resource.instanceDetails.outpostArn

  • resource.resourceType

  • resource.s3BucketDetails.publicAccess.effectivePermissions

  • resource.s3BucketDetails.name

  • resource.s3BucketDetails.tags.key

  • resource.s3BucketDetails.tags.value

  • resource.s3BucketDetails.type

  • service.action.actionType

  • service.action.awsApiCallAction.api

  • service.action.awsApiCallAction.callerType

  • service.action.awsApiCallAction.errorCode

  • service.action.awsApiCallAction.remoteIpDetails.city.cityName

  • service.action.awsApiCallAction.remoteIpDetails.country.countryName

  • service.action.awsApiCallAction.remoteIpDetails.ipAddressV4

  • service.action.awsApiCallAction.remoteIpDetails.organization.asn

  • service.action.awsApiCallAction.remoteIpDetails.organization.asnOrg

  • service.action.awsApiCallAction.serviceName

  • service.action.dnsRequestAction.domain

  • service.action.dnsRequestAction.domainWithSuffix

  • service.action.networkConnectionAction.blocked

  • service.action.networkConnectionAction.connectionDirection

  • service.action.networkConnectionAction.localPortDetails.port

  • service.action.networkConnectionAction.protocol

  • service.action.networkConnectionAction.remoteIpDetails.city.cityName

  • service.action.networkConnectionAction.remoteIpDetails.country.countryName

  • service.action.networkConnectionAction.remoteIpDetails.ipAddressV4

  • service.action.networkConnectionAction.remoteIpDetails.organization.asn

  • service.action.networkConnectionAction.remoteIpDetails.organization.asnOrg

  • service.action.networkConnectionAction.remotePortDetails.port

  • service.action.awsApiCallAction.remoteAccountDetails.affiliated

  • service.action.kubernetesApiCallAction.remoteIpDetails.ipAddressV4

  • service.action.kubernetesApiCallAction.namespace

  • service.action.kubernetesApiCallAction.remoteIpDetails.organization.asn

  • service.action.kubernetesApiCallAction.requestUri

  • service.action.kubernetesApiCallAction.statusCode

  • service.action.networkConnectionAction.localIpDetails.ipAddressV4

  • service.action.networkConnectionAction.protocol

  • service.action.awsApiCallAction.serviceName

  • service.action.awsApiCallAction.remoteAccountDetails.accountId

  • service.additionalInfo.threatListName

  • service.resourceRole

  • resource.eksClusterDetails.name

  • resource.kubernetesDetails.kubernetesWorkloadDetails.name

  • resource.kubernetesDetails.kubernetesWorkloadDetails.namespace

  • resource.kubernetesDetails.kubernetesUserDetails.username

  • resource.kubernetesDetails.kubernetesWorkloadDetails.containers.image

  • resource.kubernetesDetails.kubernetesWorkloadDetails.containers.imagePrefix

  • service.ebsVolumeScanDetails.scanId

  • service.ebsVolumeScanDetails.scanDetections.threatDetectedByName.threatNames.name

  • service.ebsVolumeScanDetails.scanDetections.threatDetectedByName.threatNames.severity

  • service.ebsVolumeScanDetails.scanDetections.threatDetectedByName.threatNames.filePaths.hash

  • resource.ecsClusterDetails.name

  • resource.ecsClusterDetails.taskDetails.containers.image

  • resource.ecsClusterDetails.taskDetails.definitionArn

  • resource.containerDetails.image

  • resource.rdsDbInstanceDetails.dbInstanceIdentifier

  • resource.rdsDbInstanceDetails.dbClusterIdentifier

  • resource.rdsDbInstanceDetails.engine

  • resource.rdsDbUserDetails.user

  • resource.rdsDbInstanceDetails.tags.key

  • resource.rdsDbInstanceDetails.tags.value

  • service.runtimeDetails.process.executableSha256

  • service.runtimeDetails.process.name

  • service.runtimeDetails.process.name

  • resource.lambdaDetails.functionName

  • resource.lambdaDetails.functionArn

  • resource.lambdaDetails.tags.key

  • resource.lambdaDetails.tags.value

", "GetFilterResponse$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

", "GetFindingsStatisticsRequest$FindingCriteria": "

Represents the criteria that is used for querying findings.

", - "ListFindingsRequest$FindingCriteria": "

Represents the criteria used for querying findings. Valid values include:

  • JSON field name

  • accountId

  • region

  • confidence

  • id

  • resource.accessKeyDetails.accessKeyId

  • resource.accessKeyDetails.principalId

  • resource.accessKeyDetails.userName

  • resource.accessKeyDetails.userType

  • resource.instanceDetails.iamInstanceProfile.id

  • resource.instanceDetails.imageId

  • resource.instanceDetails.instanceId

  • resource.instanceDetails.networkInterfaces.ipv6Addresses

  • resource.instanceDetails.networkInterfaces.privateIpAddresses.privateIpAddress

  • resource.instanceDetails.networkInterfaces.publicDnsName

  • resource.instanceDetails.networkInterfaces.publicIp

  • resource.instanceDetails.networkInterfaces.securityGroups.groupId

  • resource.instanceDetails.networkInterfaces.securityGroups.groupName

  • resource.instanceDetails.networkInterfaces.subnetId

  • resource.instanceDetails.networkInterfaces.vpcId

  • resource.instanceDetails.tags.key

  • resource.instanceDetails.tags.value

  • resource.resourceType

  • service.action.actionType

  • service.action.awsApiCallAction.api

  • service.action.awsApiCallAction.callerType

  • service.action.awsApiCallAction.remoteIpDetails.city.cityName

  • service.action.awsApiCallAction.remoteIpDetails.country.countryName

  • service.action.awsApiCallAction.remoteIpDetails.ipAddressV4

  • service.action.awsApiCallAction.remoteIpDetails.organization.asn

  • service.action.awsApiCallAction.remoteIpDetails.organization.asnOrg

  • service.action.awsApiCallAction.serviceName

  • service.action.dnsRequestAction.domain

  • service.action.networkConnectionAction.blocked

  • service.action.networkConnectionAction.connectionDirection

  • service.action.networkConnectionAction.localPortDetails.port

  • service.action.networkConnectionAction.protocol

  • service.action.networkConnectionAction.remoteIpDetails.country.countryName

  • service.action.networkConnectionAction.remoteIpDetails.ipAddressV4

  • service.action.networkConnectionAction.remoteIpDetails.organization.asn

  • service.action.networkConnectionAction.remoteIpDetails.organization.asnOrg

  • service.action.networkConnectionAction.remotePortDetails.port

  • service.additionalInfo.threatListName

  • service.archived

    When this attribute is set to 'true', only archived findings are listed. When it's set to 'false', only unarchived findings are listed. When this attribute is not set, all existing findings are listed.

  • service.resourceRole

  • severity

  • type

  • updatedAt

    Type: Timestamp in Unix Epoch millisecond format: 1486685375000

", + "ListFindingsRequest$FindingCriteria": "

Represents the criteria used for querying findings. Valid values include:

  • JSON field name

  • accountId

  • region

  • confidence

  • id

  • resource.accessKeyDetails.accessKeyId

  • resource.accessKeyDetails.principalId

  • resource.accessKeyDetails.userName

  • resource.accessKeyDetails.userType

  • resource.instanceDetails.iamInstanceProfile.id

  • resource.instanceDetails.imageId

  • resource.instanceDetails.instanceId

  • resource.instanceDetails.networkInterfaces.ipv6Addresses

  • resource.instanceDetails.networkInterfaces.privateIpAddresses.privateIpAddress

  • resource.instanceDetails.networkInterfaces.publicDnsName

  • resource.instanceDetails.networkInterfaces.publicIp

  • resource.instanceDetails.networkInterfaces.securityGroups.groupId

  • resource.instanceDetails.networkInterfaces.securityGroups.groupName

  • resource.instanceDetails.networkInterfaces.subnetId

  • resource.instanceDetails.networkInterfaces.vpcId

  • resource.instanceDetails.tags.key

  • resource.instanceDetails.tags.value

  • resource.resourceType

  • service.action.actionType

  • service.action.awsApiCallAction.api

  • service.action.awsApiCallAction.callerType

  • service.action.awsApiCallAction.remoteIpDetails.city.cityName

  • service.action.awsApiCallAction.remoteIpDetails.country.countryName

  • service.action.awsApiCallAction.remoteIpDetails.ipAddressV4

  • service.action.awsApiCallAction.remoteIpDetails.organization.asn

  • service.action.awsApiCallAction.remoteIpDetails.organization.asnOrg

  • service.action.awsApiCallAction.serviceName

  • service.action.dnsRequestAction.domain

  • service.action.dnsRequestAction.domainWithSuffix

  • service.action.networkConnectionAction.blocked

  • service.action.networkConnectionAction.connectionDirection

  • service.action.networkConnectionAction.localPortDetails.port

  • service.action.networkConnectionAction.protocol

  • service.action.networkConnectionAction.remoteIpDetails.country.countryName

  • service.action.networkConnectionAction.remoteIpDetails.ipAddressV4

  • service.action.networkConnectionAction.remoteIpDetails.organization.asn

  • service.action.networkConnectionAction.remoteIpDetails.organization.asnOrg

  • service.action.networkConnectionAction.remotePortDetails.port

  • service.additionalInfo.threatListName

  • service.archived

    When this attribute is set to 'true', only archived findings are listed. When it's set to 'false', only unarchived findings are listed. When this attribute is not set, all existing findings are listed.

  • service.resourceRole

  • severity

  • type

  • updatedAt

    Type: Timestamp in Unix Epoch millisecond format: 1486685375000

", "UpdateFilterRequest$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

" } }, @@ -1394,6 +1483,7 @@ "Groups": { "base": null, "refs": { + "ImpersonatedUser$Groups": "

The group to which the user name belongs.

", "KubernetesUserDetails$Groups": "

The groups that include the user who called the Kubernetes API.

" } }, @@ -1423,6 +1513,12 @@ "InstanceDetails$IamInstanceProfile": "

The profile information of the EC2 instance.

" } }, + "ImpersonatedUser": { + "base": "

Contains information about the impersonated user.

", + "refs": { + "KubernetesUserDetails$ImpersonatedUser": "

Information about the impersonated user.

" + } + }, "InstanceArn": { "base": null, "refs": { @@ -1533,6 +1629,12 @@ "NetworkInterface$Ipv6Addresses": "

A list of IPv6 addresses for the EC2 instance.

" } }, + "Issues": { + "base": null, + "refs": { + "FargateDetails$Issues": "

Runtime coverage issues identified for the resource running on AWS Fargate.

" + } + }, "KubernetesApiCallAction": { "base": "

Information about the Kubernetes API call action described in this finding.

", "refs": { @@ -1575,6 +1677,24 @@ "Resource$KubernetesDetails": "

Details about the Kubernetes user and workload involved in a Kubernetes finding.

" } }, + "KubernetesPermissionCheckedDetails": { + "base": "

Information about the Kubernetes API for which you check if you have permission to call.

", + "refs": { + "Action$KubernetesPermissionCheckedDetails": "

Information whether the user has the permission to use a specific Kubernetes API.

" + } + }, + "KubernetesRoleBindingDetails": { + "base": "

Contains information about the role binding that grants the permission defined in a Kubernetes role.

", + "refs": { + "Action$KubernetesRoleBindingDetails": "

Information about the role binding that grants the permission defined in a Kubernetes role.

" + } + }, + "KubernetesRoleDetails": { + "base": "

Information about the Kubernetes role name and role type.

", + "refs": { + "Action$KubernetesRoleDetails": "

Information about the Kubernetes role name and role type.

" + } + }, "KubernetesUserDetails": { "base": "

Details about the Kubernetes user involved in a Kubernetes finding.

", "refs": { @@ -1759,6 +1879,8 @@ "Condition$GreaterThanOrEqual": "

Represents a greater than or equal condition to be applied to a single field when querying for findings.

", "Condition$LessThan": "

Represents a less than condition to be applied to a single field when querying for findings.

", "Condition$LessThanOrEqual": "

Represents a less than or equal condition to be applied to a single field when querying for findings.

", + "ContainerInstanceDetails$CoveredContainerInstances": "

Represents the nodes in the Amazon ECS cluster that has a HEALTHY coverage status.

", + "ContainerInstanceDetails$CompatibleContainerInstances": "

Represents total number of nodes in the Amazon ECS cluster.

", "CountByCoverageStatus$value": null, "CountByResourceType$value": null, "CoverageEksClusterDetails$CoveredNodes": "

Represents the nodes within the EKS cluster that have a HEALTHY coverage status.

", @@ -1795,7 +1917,9 @@ "ManagementType": { "base": null, "refs": { - "CoverageEksClusterDetails$ManagementType": "

Indicates how the Amazon EKS add-on GuardDuty agent is managed for this EKS cluster.

AUTO_MANAGED indicates GuardDuty deploys and manages updates for this resource.

MANUAL indicates that you are responsible to deploy, update, and manage the Amazon EKS add-on GuardDuty agent for this resource.

" + "CoverageEc2InstanceDetails$ManagementType": "

Indicates how the GuardDuty security agent is managed for this resource.

  • AUTO_MANAGED indicates that GuardDuty deploys and manages updates for this resource.

  • MANUAL indicates that you are responsible to deploy, update, and manage the GuardDuty security agent updates for this resource.

The DISABLED status doesn't apply to Amazon EC2 instances and Amazon EKS clusters that run on Amazon EC2 instances.

", + "CoverageEksClusterDetails$ManagementType": "

Indicates how the Amazon EKS add-on GuardDuty agent is managed for this EKS cluster.

AUTO_MANAGED indicates GuardDuty deploys and manages updates for this resource.

MANUAL indicates that you are responsible to deploy, update, and manage the Amazon EKS add-on GuardDuty agent for this resource.

", + "FargateDetails$ManagementType": "

Indicates how the GuardDuty security agent is managed for this resource.

  • AUTO_MANAGED indicates that GuardDuty deploys and manages updates for this resource.

  • MANUAL indicates that you are responsible to deploy, update, and manage the GuardDuty security agent updates for this resource.

  • DISABLED indicates that the deployment of the GuardDuty security agent is disabled for this resource.

" } }, "MapEquals": { @@ -1897,7 +2021,7 @@ "base": null, "refs": { "GetMembersResponse$Members": "

A list of members.

", - "ListMembersResponse$Members": "

A list of members.

" + "ListMembersResponse$Members": "

A list of members.

The values for email and invitedAt are available only if the member accounts are added by invitation.

" } }, "MemoryRegionsList": { @@ -1959,6 +2083,18 @@ "CoverageFilterCondition$NotEquals": "

Represents a not equal condition that is applied to a single field while retrieving the coverage details.

" } }, + "ObservationTexts": { + "base": null, + "refs": { + "Observations$Text": "

The text that was unusual.

" + } + }, + "Observations": { + "base": "

Contains information about the observed behavior.

", + "refs": { + "AnomalyObject$Observations": "

The recorded value.

" + } + }, "OrderBy": { "base": null, "refs": { @@ -1989,7 +2125,7 @@ "refs": { "OrganizationAdditionalConfiguration$AutoEnable": "

The status of the additional configuration that will be configured for the organization. Use one of the following values to configure the feature status for the entire organization:

  • NEW: Indicates that when a new account joins the organization, they will have the additional configuration enabled automatically.

  • ALL: Indicates that all accounts in the organization have the additional configuration enabled automatically. This includes NEW accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.

    It may take up to 24 hours to update the configuration for all the member accounts.

  • NONE: Indicates that the additional configuration will not be automatically enabled for any account in the organization. The administrator must manage the additional configuration for each account individually.

", "OrganizationAdditionalConfigurationResult$AutoEnable": "

Describes the status of the additional configuration that is configured for the member accounts within the organization. One of the following values is the status for the entire organization:

  • NEW: Indicates that when a new account joins the organization, they will have the additional configuration enabled automatically.

  • ALL: Indicates that all accounts in the organization have the additional configuration enabled automatically. This includes NEW accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.

    It may take up to 24 hours to update the configuration for all the member accounts.

  • NONE: Indicates that the additional configuration will not be automatically enabled for any account in the organization. The administrator must manage the additional configuration for each account individually.

", - "OrganizationFeatureConfiguration$AutoEnable": "

The status of the feature that will be configured for the organization. Use one of the following values to configure the feature status for the entire organization:

  • NEW: Indicates that when a new account joins the organization, they will have the feature enabled automatically.

  • ALL: Indicates that all accounts in the organization have the feature enabled automatically. This includes NEW accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.

    It may take up to 24 hours to update the configuration for all the member accounts.

  • NONE: Indicates that the feature will not be automatically enabled for any account in the organization. The administrator must manage the feature for each account individually.

", + "OrganizationFeatureConfiguration$AutoEnable": "

Describes the status of the feature that is configured for the member accounts within the organization. One of the following values is the status for the entire organization:

  • NEW: Indicates that when a new account joins the organization, they will have the feature enabled automatically.

  • ALL: Indicates that all accounts in the organization have the feature enabled automatically. This includes NEW accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.

    It may take up to 24 hours to update the configuration for all the member accounts.

  • NONE: Indicates that the feature will not be automatically enabled for any account in the organization. The administrator must manage the feature for each account individually.

", "OrganizationFeatureConfigurationResult$AutoEnable": "

Describes the status of the feature that is configured for the member accounts within the organization.

  • NEW: Indicates that when a new account joins the organization, they will have the feature enabled automatically.

  • ALL: Indicates that all accounts in the organization have the feature enabled automatically. This includes NEW accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.

  • NONE: Indicates that the feature will not be automatically enabled for any account in the organization. In this case, each account will be managed individually by the administrator.

" } }, @@ -2200,6 +2336,18 @@ "InstanceDetails$ProductCodes": "

The product code of the EC2 instance.

" } }, + "ProfileSubtype": { + "base": null, + "refs": { + "AnomalyObject$ProfileSubtype": "

The frequency of the anomaly.

" + } + }, + "ProfileType": { + "base": null, + "refs": { + "AnomalyObject$ProfileType": "

The type of behavior of the profile.

" + } + }, "PublicAccess": { "base": "

Describes the public access policies that apply to the S3 bucket.

", "refs": { @@ -2333,7 +2481,7 @@ } }, "ScanConditionPair": { - "base": "

Represents key, value pair to be matched against given resource property.

", + "base": "

Represents the key:value pair to be matched against given resource property.

", "refs": { "MapEquals$member": null } @@ -2541,6 +2689,10 @@ "Administrator$InvitedAt": "

The timestamp when the invitation was sent.

", "AffectedResources$key": null, "AffectedResources$value": null, + "AgentDetails$Version": "

Version of the installed GuardDuty security agent.

", + "AnomalyProfileFeatures$key": null, + "AnomalyProfiles$key": null, + "AnomalyUnusualBehaviorFeature$key": null, "AwsApiCallAction$Api": "

The Amazon Web Services API name.

", "AwsApiCallAction$CallerType": "

The Amazon Web Services API caller type.

", "AwsApiCallAction$ErrorCode": "

The error code of the failed Amazon Web Services API action.

", @@ -2548,6 +2700,7 @@ "AwsApiCallAction$ServiceName": "

The Amazon Web Services service name whose API was invoked.

", "BadRequestException$Message": "

The error message.

", "BadRequestException$Type": "

The error type.

", + "Behavior$key": null, "City$CityName": "

The city name of the remote IP address.

", "ConflictException$Message": "

The error message.

", "ConflictException$Type": "

The error type.

", @@ -2559,6 +2712,10 @@ "CountBySeverity$key": null, "Country$CountryCode": "

The country code of the remote IP address.

", "Country$CountryName": "

The country name of the remote IP address.

", + "CoverageEc2InstanceDetails$InstanceId": "

The Amazon EC2 instance ID.

", + "CoverageEc2InstanceDetails$InstanceType": "

The instance type of the Amazon EC2 instance.

", + "CoverageEc2InstanceDetails$ClusterArn": "

The cluster ARN of the Amazon ECS cluster running on the Amazon EC2 instance.

", + "CoverageEcsClusterDetails$ClusterName": "

The name of the Amazon ECS cluster.

", "CoverageEksClusterDetails$ClusterName": "

Name of the EKS cluster.

", "CoverageResource$ResourceId": "

The unique ID of the resource.

", "CoverageResource$Issue": "

Represents the reason why a coverage status was UNHEALTHY for the EKS cluster.

", @@ -2584,6 +2741,7 @@ "DisableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services Account ID for the organizations account to be disabled as a GuardDuty delegated administrator.

", "DnsRequestAction$Domain": "

The domain information for the DNS query.

", "DnsRequestAction$Protocol": "

The network connection protocol observed in the activity that prompted GuardDuty to generate the finding.

", + "DnsRequestAction$DomainWithSuffix": "

The second and top level domain involved in the activity that prompted GuardDuty to generate this finding.

", "DomainDetails$Domain": "

The domain information for the Amazon Web Services API call.

", "EbsVolumeScanDetails$ScanId": "

Unique Id of the malware scan that generated the finding.

", "EbsVolumeScanDetails$TriggerFindingId": "

GuardDuty finding ID that triggered a malware scan.

", @@ -2600,7 +2758,7 @@ "EksClusterDetails$Arn": "

EKS cluster ARN.

", "EksClusterDetails$VpcId": "

The VPC ID to which the EKS cluster is attached.

", "EksClusterDetails$Status": "

The EKS cluster status.

", - "EnableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services Account ID for the organization account to be enabled as a GuardDuty delegated administrator.

", + "EnableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services account ID for the organization account to be enabled as a GuardDuty delegated administrator.

", "Eq$member": null, "Equals$member": null, "Finding$AccountId": "

The ID of the account in which the finding was generated.

", @@ -2629,6 +2787,7 @@ "HostPath$Path": "

Path of the file or directory on the host that the volume maps to.

", "IamInstanceProfile$Arn": "

The profile ARN of the EC2 instance.

", "IamInstanceProfile$Id": "

The profile ID of the EC2 instance.

", + "ImpersonatedUser$Username": "

Information about the username that was being impersonated.

", "InstanceDetails$AvailabilityZone": "

The Availability Zone of the EC2 instance.

", "InstanceDetails$ImageDescription": "

The image description of the EC2 instance.

", "InstanceDetails$ImageId": "

The image ID of the EC2 instance.

", @@ -2646,16 +2805,33 @@ "InviteMembersRequest$Message": "

The invitation message that you want to send to the accounts that you're inviting to GuardDuty as members.

", "IpSetIds$member": null, "Ipv6Addresses$member": null, + "Issues$member": null, "KubernetesApiCallAction$RequestUri": "

The Kubernetes API request URI.

", "KubernetesApiCallAction$Verb": "

The Kubernetes API request HTTP verb.

", "KubernetesApiCallAction$UserAgent": "

The user agent of the caller of the Kubernetes API.

", "KubernetesApiCallAction$Parameters": "

Parameters related to the Kubernetes API call action.

", + "KubernetesApiCallAction$Resource": "

The resource component in the Kubernetes API call action.

", + "KubernetesApiCallAction$Subresource": "

The name of the sub-resource in the Kubernetes API call action.

", + "KubernetesApiCallAction$Namespace": "

The name of the namespace where the Kubernetes API call action takes place.

", + "KubernetesApiCallAction$ResourceName": "

The name of the resource in the Kubernetes API call action.

", + "KubernetesPermissionCheckedDetails$Verb": "

The verb component of the Kubernetes API call. For example, when you check whether or not you have the permission to call the CreatePod API, the verb component will be Create.

", + "KubernetesPermissionCheckedDetails$Resource": "

The Kubernetes resource with which your Kubernetes API call will interact.

", + "KubernetesPermissionCheckedDetails$Namespace": "

The namespace where the Kubernetes API action will take place.

", + "KubernetesRoleBindingDetails$Kind": "

The kind of the role. For role binding, this value will be RoleBinding.

", + "KubernetesRoleBindingDetails$Name": "

The name of the RoleBinding.

", + "KubernetesRoleBindingDetails$Uid": "

The unique identifier of the role binding.

", + "KubernetesRoleBindingDetails$RoleRefName": "

The name of the role being referenced. This must match the name of the Role or ClusterRole that you want to bind to.

", + "KubernetesRoleBindingDetails$RoleRefKind": "

The type of the role being referenced. This could be either Role or ClusterRole.

", + "KubernetesRoleDetails$Kind": "

The kind of role. For this API, the value of kind will be Role.

", + "KubernetesRoleDetails$Name": "

The name of the Kubernetes role.

", + "KubernetesRoleDetails$Uid": "

The unique identifier of the Kubernetes role name.

", "KubernetesUserDetails$Username": "

The username of the user who called the Kubernetes API.

", "KubernetesUserDetails$Uid": "

The user ID of the user who called the Kubernetes API.

", "KubernetesWorkloadDetails$Name": "

Kubernetes workload name.

", "KubernetesWorkloadDetails$Type": "

Kubernetes workload type (e.g. Pod, Deployment, etc.).

", "KubernetesWorkloadDetails$Uid": "

Kubernetes workload ID.

", "KubernetesWorkloadDetails$Namespace": "

Kubernetes namespace that the workload is part of.

", + "KubernetesWorkloadDetails$ServiceAccountName": "

The service account name that is associated with a Kubernetes workload.

", "LambdaDetails$FunctionArn": "

Amazon Resource Name (ARN) of the Lambda function.

", "LambdaDetails$FunctionName": "

Name of the Lambda function.

", "LambdaDetails$Description": "

Description of the Lambda function.

", @@ -2712,6 +2888,7 @@ "NetworkInterface$SubnetId": "

The subnet ID of the EC2 instance.

", "NetworkInterface$VpcId": "

The VPC ID of the EC2 instance.

", "NotEquals$member": null, + "ObservationTexts$member": null, "Organization$Asn": "

The Autonomous System Number (ASN) of the internet provider of the remote IP address.

", "Organization$AsnOrg": "

The organization that registered this ASN.

", "Organization$Isp": "

The ISP information for the internet provider.

", @@ -2823,7 +3000,7 @@ "TagKey": { "base": null, "refs": { - "ScanConditionPair$Key": "

Represents key in the map condition.

", + "ScanConditionPair$Key": "

Represents the key in the map condition.

", "TagKeyList$member": null, "TagMap$key": null } @@ -2862,7 +3039,7 @@ "TagValue": { "base": null, "refs": { - "ScanConditionPair$Value": "

Represents optional value in the map condition. If not specified, only key will be matched.

", + "ScanConditionPair$Value": "

Represents optional value in the map condition. If not specified, only the key will be matched.

", "TagMap$value": null } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/guardduty/2017-11-28/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/guardduty/2017-11-28/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/guardduty/2017-11-28/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/guardduty/2017-11-28/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -822,10 +822,7 @@ "output":{ "shape":"GetAccessKeyLastUsedResponse", "resultWrapper":"GetAccessKeyLastUsedResult" - }, - "errors":[ - {"shape":"NoSuchEntityException"} - ] + } }, "GetAccountAuthorizationDetails":{ "name":"GetAccountAuthorizationDetails", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -53,7 +53,7 @@ "EnableMFADevice": "

Enables the specified MFA device and associates it with the specified IAM user. When enabled, the MFA device is required for every subsequent login by the IAM user associated with the device.

", "GenerateCredentialReport": "

Generates a credential report for the Amazon Web Services account. For more information about the credential report, see Getting credential reports in the IAM User Guide.

", "GenerateOrganizationsAccessReport": "

Generates a report for service last accessed data for Organizations. You can generate a report for any entities (organization root, organizational unit, or account) or policies in your organization.

To call this operation, you must be signed in using your Organizations management account credentials. You can use your long-term IAM user or root user credentials, or temporary credentials from assuming an IAM role. SCPs must be enabled for your organization root. You must have the required IAM and Organizations permissions. For more information, see Refining permissions using service last accessed data in the IAM User Guide.

You can generate a service last accessed data report for entities by specifying only the entity's path. This data includes a list of services that are allowed by any service control policies (SCPs) that apply to the entity.

You can generate a service last accessed data report for a policy by specifying an entity's path and an optional Organizations policy ID. This data includes a list of services that are allowed by the specified SCP.

For each service in both report types, the data includes the most recent account activity that the policy allows to account principals in the entity or the entity's children. For important information about the data, reporting period, permissions required, troubleshooting, and supported Regions see Reducing permissions using service last accessed data in the IAM User Guide.

The data includes all attempts to access Amazon Web Services, not just the successful ones. This includes all attempts that were made using the Amazon Web Services Management Console, the Amazon Web Services API through any of the SDKs, or any of the command line tools. An unexpected entry in the service last accessed data does not mean that an account has been compromised, because the request might have been denied. Refer to your CloudTrail logs as the authoritative source for information about all API calls and whether they were successful or denied access. For more information, see Logging IAM events with CloudTrail in the IAM User Guide.

This operation returns a JobId. Use this parameter in the GetOrganizationsAccessReport operation to check the status of the report generation. To check the status of this request, use the JobId parameter in the GetOrganizationsAccessReport operation and test the JobStatus response parameter. When the job is complete, you can retrieve the report.

To generate a service last accessed data report for entities, specify an entity path without specifying the optional Organizations policy ID. The type of entity that you specify determines the data returned in the report.

  • Root – When you specify the organizations root as the entity, the resulting report lists all of the services allowed by SCPs that are attached to your root. For each service, the report includes data for all accounts in your organization except the management account, because the management account is not limited by SCPs.

  • OU – When you specify an organizational unit (OU) as the entity, the resulting report lists all of the services allowed by SCPs that are attached to the OU and its parents. For each service, the report includes data for all accounts in the OU or its children. This data excludes the management account, because the management account is not limited by SCPs.

  • management account – When you specify the management account, the resulting report lists all Amazon Web Services services, because the management account is not limited by SCPs. For each service, the report includes data for only the management account.

  • Account – When you specify another account as the entity, the resulting report lists all of the services allowed by SCPs that are attached to the account and its parents. For each service, the report includes data for only the specified account.

To generate a service last accessed data report for policies, specify an entity path and the optional Organizations policy ID. The type of entity that you specify determines the data returned for each service.

  • Root – When you specify the root entity and a policy ID, the resulting report lists all of the services that are allowed by the specified SCP. For each service, the report includes data for all accounts in your organization to which the SCP applies. This data excludes the management account, because the management account is not limited by SCPs. If the SCP is not attached to any entities in the organization, then the report will return a list of services with no data.

  • OU – When you specify an OU entity and a policy ID, the resulting report lists all of the services that are allowed by the specified SCP. For each service, the report includes data for all accounts in the OU or its children to which the SCP applies. This means that other accounts outside the OU that are affected by the SCP might not be included in the data. This data excludes the management account, because the management account is not limited by SCPs. If the SCP is not attached to the OU or one of its children, the report will return a list of services with no data.

  • management account – When you specify the management account, the resulting report lists all Amazon Web Services services, because the management account is not limited by SCPs. If you specify a policy ID in the CLI or API, the policy is ignored. For each service, the report includes data for only the management account.

  • Account – When you specify another account entity and a policy ID, the resulting report lists all of the services that are allowed by the specified SCP. For each service, the report includes data for only the specified account. This means that other accounts in the organization that are affected by the SCP might not be included in the data. If the SCP is not attached to the account, the report will return a list of services with no data.

Service last accessed data does not use other policy types when determining whether a principal could access a service. These other policy types include identity-based policies, resource-based policies, access control lists, IAM permissions boundaries, and STS assume role policies. It only applies SCP logic. For more about the evaluation of policy types, see Evaluating policies in the IAM User Guide.

For more information about service last accessed data, see Reducing policy scope by viewing user activity in the IAM User Guide.

", - "GenerateServiceLastAccessedDetails": "

Generates a report that includes details about when an IAM resource (user, group, role, or policy) was last used in an attempt to access Amazon Web Services services. Recent activity usually appears within four hours. IAM reports activity for at least the last 400 days, or less if your Region began supporting this feature within the last year. For more information, see Regions where data is tracked.

The service last accessed data includes all attempts to access an Amazon Web Services API, not just the successful ones. This includes all attempts that were made using the Amazon Web Services Management Console, the Amazon Web Services API through any of the SDKs, or any of the command line tools. An unexpected entry in the service last accessed data does not mean that your account has been compromised, because the request might have been denied. Refer to your CloudTrail logs as the authoritative source for information about all API calls and whether they were successful or denied access. For more information, see Logging IAM events with CloudTrail in the IAM User Guide.

The GenerateServiceLastAccessedDetails operation returns a JobId. Use this parameter in the following operations to retrieve the following details from your report:

  • GetServiceLastAccessedDetails – Use this operation for users, groups, roles, or policies to list every Amazon Web Services service that the resource could access using permissions policies. For each service, the response includes information about the most recent access attempt.

    The JobId returned by GenerateServiceLastAccessedDetail must be used by the same role within a session, or by the same user when used to call GetServiceLastAccessedDetail.

  • GetServiceLastAccessedDetailsWithEntities – Use this operation for groups and policies to list information about the associated entities (users or roles) that attempted to access a specific Amazon Web Services service.

To check the status of the GenerateServiceLastAccessedDetails request, use the JobId parameter in the same operations and test the JobStatus response parameter.

For additional information about the permissions policies that allow an identity (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.

Service last accessed data does not use other policy types when determining whether a resource could access a service. These other policy types include resource-based policies, access control lists, Organizations policies, IAM permissions boundaries, and STS assume role policies. It only applies permissions policy logic. For more about the evaluation of policy types, see Evaluating policies in the IAM User Guide.

For more information about service and action last accessed data, see Reducing permissions using service last accessed data in the IAM User Guide.

", + "GenerateServiceLastAccessedDetails": "

Generates a report that includes details about when an IAM resource (user, group, role, or policy) was last used in an attempt to access Amazon Web Services services. Recent activity usually appears within four hours. IAM reports activity for at least the last 400 days, or less if your Region began supporting this feature within the last year. For more information, see Regions where data is tracked. For more information about services and actions for which action last accessed information is displayed, see IAM action last accessed information services and actions.

The service last accessed data includes all attempts to access an Amazon Web Services API, not just the successful ones. This includes all attempts that were made using the Amazon Web Services Management Console, the Amazon Web Services API through any of the SDKs, or any of the command line tools. An unexpected entry in the service last accessed data does not mean that your account has been compromised, because the request might have been denied. Refer to your CloudTrail logs as the authoritative source for information about all API calls and whether they were successful or denied access. For more information, see Logging IAM events with CloudTrail in the IAM User Guide.

The GenerateServiceLastAccessedDetails operation returns a JobId. Use this parameter in the following operations to retrieve the following details from your report:

  • GetServiceLastAccessedDetails – Use this operation for users, groups, roles, or policies to list every Amazon Web Services service that the resource could access using permissions policies. For each service, the response includes information about the most recent access attempt.

    The JobId returned by GenerateServiceLastAccessedDetail must be used by the same role within a session, or by the same user when used to call GetServiceLastAccessedDetail.

  • GetServiceLastAccessedDetailsWithEntities – Use this operation for groups and policies to list information about the associated entities (users or roles) that attempted to access a specific Amazon Web Services service.

To check the status of the GenerateServiceLastAccessedDetails request, use the JobId parameter in the same operations and test the JobStatus response parameter.

For additional information about the permissions policies that allow an identity (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.

Service last accessed data does not use other policy types when determining whether a resource could access a service. These other policy types include resource-based policies, access control lists, Organizations policies, IAM permissions boundaries, and STS assume role policies. It only applies permissions policy logic. For more about the evaluation of policy types, see Evaluating policies in the IAM User Guide.

For more information about service and action last accessed data, see Reducing permissions using service last accessed data in the IAM User Guide.

", "GetAccessKeyLastUsed": "

Retrieves information about when the specified access key was last used. The information includes the date and time of last use, along with the Amazon Web Services service and Region that were specified in the last request made with that key.

", "GetAccountAuthorizationDetails": "

Retrieves information about all IAM users, groups, roles, and policies in your Amazon Web Services account, including their relationships to one another. Use this operation to obtain a snapshot of the configuration of IAM permissions (users, groups, roles, and policies) in your account.

Policies returned by this operation are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

You can optionally filter the results using the Filter parameter. You can paginate the results using the MaxItems and Marker parameters.

", "GetAccountPasswordPolicy": "

Retrieves the password policy for the Amazon Web Services account. This tells you the complexity requirements and mandatory rotation periods for the IAM user passwords in your account. For more information about using a password policy, see Managing an IAM password policy.

", @@ -80,7 +80,7 @@ "GetServiceLinkedRoleDeletionStatus": "

Retrieves the status of your service-linked role deletion. After you use DeleteServiceLinkedRole to submit a service-linked role for deletion, you can use the DeletionTaskId parameter in GetServiceLinkedRoleDeletionStatus to check the status of the deletion. If the deletion fails, this operation returns the reason that it failed, if that information is returned by the service.

", "GetUser": "

Retrieves information about the specified IAM user, including the user's creation date, path, unique ID, and ARN.

If you do not specify a user name, IAM determines the user name implicitly based on the Amazon Web Services access key ID used to sign the request to this operation.

", "GetUserPolicy": "

Retrieves the specified inline policy document that is embedded in the specified IAM user.

Policies returned by this operation are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

An IAM user can also have managed policies attached to it. To retrieve a managed policy document that is attached to a user, use GetPolicy to determine the policy's default version. Then use GetPolicyVersion to retrieve the policy document.

For more information about policies, see Managed policies and inline policies in the IAM User Guide.

", - "ListAccessKeys": "

Returns information about the access key IDs associated with the specified IAM user. If there is none, the operation returns an empty list.

Although each user is limited to a small number of keys, you can still paginate the results using the MaxItems and Marker parameters.

If the UserName is not specified, the user name is determined implicitly based on the Amazon Web Services access key ID used to sign the request. If a temporary access key is used, then UserName is required. If a long-term key is assigned to the user, then UserName is not required. This operation works for access keys under the Amazon Web Services account. Consequently, you can use this operation to manage Amazon Web Services account root user credentials even if the Amazon Web Services account has no associated users.

To ensure the security of your Amazon Web Services account, the secret access key is accessible only during key and user creation.

", + "ListAccessKeys": "

Returns information about the access key IDs associated with the specified IAM user. If there is none, the operation returns an empty list.

Although each user is limited to a small number of keys, you can still paginate the results using the MaxItems and Marker parameters.

If the UserName is not specified, the user name is determined implicitly based on the Amazon Web Services access key ID used to sign the request. If a temporary access key is used, then UserName is required. If a long-term key is assigned to the user, then UserName is not required.

This operation works for access keys under the Amazon Web Services account. If the Amazon Web Services account has no associated users, the root user returns it's own access key IDs by running this command.

To ensure the security of your Amazon Web Services account, the secret access key is accessible only during key and user creation.

", "ListAccountAliases": "

Lists the account alias associated with the Amazon Web Services account (Note: you can have only one). For information about using an Amazon Web Services account alias, see Creating, deleting, and listing an Amazon Web Services account alias in the Amazon Web Services Sign-In User Guide.

", "ListAttachedGroupPolicies": "

Lists all managed policies that are attached to the specified IAM group.

An IAM group can also have inline policies embedded with it. To list the inline policies for a group, use ListGroupPolicies. For information about policies, see Managed policies and inline policies in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the operation returns an empty list.

", "ListAttachedRolePolicies": "

Lists all managed policies that are attached to the specified IAM role.

An IAM role can also have inline policies embedded with it. To list the inline policies for a role, use ListRolePolicies. For information about policies, see Managed policies and inline policies in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified role (or none that match the specified path prefix), the operation returns an empty list.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,650 +57,717 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "stringEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://iam.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://iam-fips.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://iam-fips.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-cn" + "name" ] }, + "aws-cn" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.cn-north-1.amazonaws.com.cn", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "cn-north-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://iam.cn-north-1.amazonaws.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "cn-north-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-us-gov" + "name" ] }, + "aws-us-gov" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-gov.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-gov-west-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-gov.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-gov-west-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-us-gov" + "name" ] }, + "aws-us-gov" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-gov.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-gov-west-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-gov.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-gov-west-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-iso" + "name" ] }, + "aws-iso" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-iso-east-1.c2s.ic.gov", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-iso-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-iso-east-1.c2s.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-iso-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-iso-b" + "name" ] }, + "aws-iso-b" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-isob-east-1.sc2s.sgov.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-isob-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", "argv": [ { - "ref": "UseFIPS" + "ref": "PartitionResult" }, - false + "name" ] }, + "aws-iso-e" + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://iam.eu-isoe-west-1.cloud.adc-e.uk", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "eu-isoe-west-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", "argv": [ { - "ref": "UseDualStack" + "ref": "PartitionResult" }, - false + "name" ] + }, + "aws-iso-f" + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-isof-south-1.csp.hci.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "iam", + "signingRegion": "us-isof-south-1" } - ], - "endpoint": { - "url": "https://iam.us-isob-east-1.sc2s.sgov.gov", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-isob-east-1" - } - ] + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, - "headers": {} - }, - "type": "endpoint" + true + ] }, { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://iam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iam-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://iam-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iam.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://iam.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://iam.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://iam.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iam/2010-05-08/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iam/2010-05-08/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -525,6 +525,17 @@ "expect": { "error": "Invalid Configuration: Missing Region" } + }, + { + "documentation": "Partition doesn't support DualStack", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -32,6 +32,25 @@ {"shape":"ResourceInUseException"} ] }, + "CancelLifecycleExecution":{ + "name":"CancelLifecycleExecution", + "http":{ + "method":"PUT", + "requestUri":"/CancelLifecycleExecution" + }, + "input":{"shape":"CancelLifecycleExecutionRequest"}, + "output":{"shape":"CancelLifecycleExecutionResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"IdempotentParameterMismatchException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"}, + {"shape":"ResourceInUseException"} + ] + }, "CreateComponent":{ "name":"CreateComponent", "http":{ @@ -182,6 +201,27 @@ {"shape":"ServiceQuotaExceededException"} ] }, + "CreateLifecyclePolicy":{ + "name":"CreateLifecyclePolicy", + "http":{ + "method":"PUT", + "requestUri":"/CreateLifecyclePolicy" + }, + "input":{"shape":"CreateLifecyclePolicyRequest"}, + "output":{"shape":"CreateLifecyclePolicyResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"IdempotentParameterMismatchException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"}, + {"shape":"ResourceInUseException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, "DeleteComponent":{ "name":"DeleteComponent", "http":{ @@ -308,6 +348,24 @@ {"shape":"ResourceDependencyException"} ] }, + "DeleteLifecyclePolicy":{ + "name":"DeleteLifecyclePolicy", + "http":{ + "method":"DELETE", + "requestUri":"/DeleteLifecyclePolicy" + }, + "input":{"shape":"DeleteLifecyclePolicyRequest"}, + "output":{"shape":"DeleteLifecyclePolicyResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"}, + {"shape":"ResourceDependencyException"} + ] + }, "GetComponent":{ "name":"GetComponent", "http":{ @@ -495,6 +553,40 @@ {"shape":"CallRateLimitExceededException"} ] }, + "GetLifecycleExecution":{ + "name":"GetLifecycleExecution", + "http":{ + "method":"GET", + "requestUri":"/GetLifecycleExecution" + }, + "input":{"shape":"GetLifecycleExecutionRequest"}, + "output":{"shape":"GetLifecycleExecutionResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"} + ] + }, + "GetLifecyclePolicy":{ + "name":"GetLifecyclePolicy", + "http":{ + "method":"GET", + "requestUri":"/GetLifecyclePolicy" + }, + "input":{"shape":"GetLifecyclePolicyRequest"}, + "output":{"shape":"GetLifecyclePolicyResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"} + ] + }, "GetWorkflowExecution":{ "name":"GetWorkflowExecution", "http":{ @@ -800,6 +892,60 @@ {"shape":"CallRateLimitExceededException"} ] }, + "ListLifecycleExecutionResources":{ + "name":"ListLifecycleExecutionResources", + "http":{ + "method":"POST", + "requestUri":"/ListLifecycleExecutionResources" + }, + "input":{"shape":"ListLifecycleExecutionResourcesRequest"}, + "output":{"shape":"ListLifecycleExecutionResourcesResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidPaginationTokenException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"} + ] + }, + "ListLifecycleExecutions":{ + "name":"ListLifecycleExecutions", + "http":{ + "method":"POST", + "requestUri":"/ListLifecycleExecutions" + }, + "input":{"shape":"ListLifecycleExecutionsRequest"}, + "output":{"shape":"ListLifecycleExecutionsResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidPaginationTokenException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"} + ] + }, + "ListLifecyclePolicies":{ + "name":"ListLifecyclePolicies", + "http":{ + "method":"POST", + "requestUri":"/ListLifecyclePolicies" + }, + "input":{"shape":"ListLifecyclePoliciesRequest"}, + "output":{"shape":"ListLifecyclePoliciesResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"InvalidPaginationTokenException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -946,6 +1092,26 @@ {"shape":"ResourceInUseException"} ] }, + "StartResourceStateUpdate":{ + "name":"StartResourceStateUpdate", + "http":{ + "method":"PUT", + "requestUri":"/StartResourceStateUpdate" + }, + "input":{"shape":"StartResourceStateUpdateRequest"}, + "output":{"shape":"StartResourceStateUpdateResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"IdempotentParameterMismatchException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"}, + {"shape":"ResourceInUseException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -1031,6 +1197,26 @@ {"shape":"CallRateLimitExceededException"}, {"shape":"ResourceInUseException"} ] + }, + "UpdateLifecyclePolicy":{ + "name":"UpdateLifecyclePolicy", + "http":{ + "method":"PUT", + "requestUri":"/UpdateLifecyclePolicy" + }, + "input":{"shape":"UpdateLifecyclePolicyRequest"}, + "output":{"shape":"UpdateLifecyclePolicyResponse"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"ClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, + {"shape":"IdempotentParameterMismatchException"}, + {"shape":"ForbiddenException"}, + {"shape":"CallRateLimitExceededException"}, + {"shape":"ResourceInUseException"}, + {"shape":"InvalidParameterCombinationException"} + ] } }, "shapes":{ @@ -1130,6 +1316,26 @@ "imageBuildVersionArn":{"shape":"ImageBuildVersionArn"} } }, + "CancelLifecycleExecutionRequest":{ + "type":"structure", + "required":[ + "lifecycleExecutionId", + "clientToken" + ], + "members":{ + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "CancelLifecycleExecutionResponse":{ + "type":"structure", + "members":{ + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"} + } + }, "ClientException":{ "type":"structure", "members":{ @@ -1617,6 +1823,38 @@ "infrastructureConfigurationArn":{"shape":"InfrastructureConfigurationArn"} } }, + "CreateLifecyclePolicyRequest":{ + "type":"structure", + "required":[ + "name", + "executionRole", + "resourceType", + "policyDetails", + "resourceSelection", + "clientToken" + ], + "members":{ + "name":{"shape":"ResourceName"}, + "description":{"shape":"NonEmptyString"}, + "status":{"shape":"LifecyclePolicyStatus"}, + "executionRole":{"shape":"RoleNameOrArn"}, + "resourceType":{"shape":"LifecyclePolicyResourceType"}, + "policyDetails":{"shape":"LifecyclePolicyDetails"}, + "resourceSelection":{"shape":"LifecyclePolicyResourceSelection"}, + "tags":{"shape":"TagMap"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "CreateLifecyclePolicyResponse":{ + "type":"structure", + "members":{ + "clientToken":{"shape":"ClientToken"}, + "lifecyclePolicyArn":{"shape":"LifecyclePolicyArn"} + } + }, "CvssScore":{ "type":"structure", "members":{ @@ -1780,6 +2018,23 @@ "infrastructureConfigurationArn":{"shape":"InfrastructureConfigurationArn"} } }, + "DeleteLifecyclePolicyRequest":{ + "type":"structure", + "required":["lifecyclePolicyArn"], + "members":{ + "lifecyclePolicyArn":{ + "shape":"LifecyclePolicyArn", + "location":"querystring", + "locationName":"lifecyclePolicyArn" + } + } + }, + "DeleteLifecyclePolicyResponse":{ + "type":"structure", + "members":{ + "lifecyclePolicyArn":{"shape":"LifecyclePolicyArn"} + } + }, "DiskImageFormat":{ "type":"string", "enum":[ @@ -2162,6 +2417,40 @@ "infrastructureConfiguration":{"shape":"InfrastructureConfiguration"} } }, + "GetLifecycleExecutionRequest":{ + "type":"structure", + "required":["lifecycleExecutionId"], + "members":{ + "lifecycleExecutionId":{ + "shape":"LifecycleExecutionId", + "location":"querystring", + "locationName":"lifecycleExecutionId" + } + } + }, + "GetLifecycleExecutionResponse":{ + "type":"structure", + "members":{ + "lifecycleExecution":{"shape":"LifecycleExecution"} + } + }, + "GetLifecyclePolicyRequest":{ + "type":"structure", + "required":["lifecyclePolicyArn"], + "members":{ + "lifecyclePolicyArn":{ + "shape":"LifecyclePolicyArn", + "location":"querystring", + "locationName":"lifecyclePolicyArn" + } + } + }, + "GetLifecyclePolicyResponse":{ + "type":"structure", + "members":{ + "lifecyclePolicy":{"shape":"LifecyclePolicy"} + } + }, "GetWorkflowExecutionRequest":{ "type":"structure", "required":["workflowExecutionId"], @@ -2265,7 +2554,9 @@ "buildType":{"shape":"BuildType"}, "imageSource":{"shape":"ImageSource"}, "scanState":{"shape":"ImageScanState"}, - "imageScanningConfiguration":{"shape":"ImageScanningConfiguration"} + "imageScanningConfiguration":{"shape":"ImageScanningConfiguration"}, + "deprecationTime":{"shape":"DateTimeTimestamp"}, + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"} } }, "ImageAggregation":{ @@ -2286,7 +2577,7 @@ }, "ImageBuilderArn":{ "type":"string", - "pattern":"^arn:aws[^:]*:imagebuilder:[^:]+:(?:[0-9]{12}|aws):(?:image-recipe|container-recipe|infrastructure-configuration|distribution-configuration|component|image|image-pipeline|workflow\\/(?:build|test|distribution))/[a-z0-9-_]+(?:/(?:(?:x|[0-9]+)\\.(?:x|[0-9]+)\\.(?:x|[0-9]+))(?:/[0-9]+)?)?$" + "pattern":"^arn:aws[^:]*:imagebuilder:[^:]+:(?:[0-9]{12}|aws):(?:image-recipe|container-recipe|infrastructure-configuration|distribution-configuration|component|image|image-pipeline|lifecycle-policy|workflow\\/(?:build|test|distribution))/[a-z0-9-_]+(?:/(?:(?:x|[0-9]+)\\.(?:x|[0-9]+)\\.(?:x|[0-9]+))(?:/[0-9]+)?)?$" }, "ImagePackage":{ "type":"structure", @@ -2487,7 +2778,8 @@ "CANCELLED", "FAILED", "DEPRECATED", - "DELETED" + "DELETED", + "DISABLED" ] }, "ImageSummary":{ @@ -2505,7 +2797,9 @@ "outputResources":{"shape":"OutputResources"}, "tags":{"shape":"TagMap"}, "buildType":{"shape":"BuildType"}, - "imageSource":{"shape":"ImageSource"} + "imageSource":{"shape":"ImageSource"}, + "deprecationTime":{"shape":"DateTimeTimestamp"}, + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"} } }, "ImageSummaryList":{ @@ -2810,6 +3104,300 @@ "max":50, "min":1 }, + "LifecycleExecution":{ + "type":"structure", + "members":{ + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"}, + "lifecyclePolicyArn":{"shape":"LifecyclePolicyArn"}, + "resourcesImpactedSummary":{"shape":"LifecycleExecutionResourcesImpactedSummary"}, + "state":{"shape":"LifecycleExecutionState"}, + "startTime":{"shape":"DateTimeTimestamp"}, + "endTime":{"shape":"DateTimeTimestamp"} + } + }, + "LifecycleExecutionId":{ + "type":"string", + "pattern":"^lce-[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" + }, + "LifecycleExecutionResource":{ + "type":"structure", + "members":{ + "accountId":{"shape":"NonEmptyString"}, + "resourceId":{"shape":"NonEmptyString"}, + "state":{"shape":"LifecycleExecutionResourceState"}, + "action":{"shape":"LifecycleExecutionResourceAction"}, + "region":{"shape":"NonEmptyString"}, + "snapshots":{"shape":"LifecycleExecutionSnapshotResourceList"}, + "imageUris":{"shape":"StringList"} + } + }, + "LifecycleExecutionResourceAction":{ + "type":"structure", + "members":{ + "name":{"shape":"LifecycleExecutionResourceActionName"}, + "reason":{"shape":"NonEmptyString"} + } + }, + "LifecycleExecutionResourceActionName":{ + "type":"string", + "enum":[ + "AVAILABLE", + "DELETE", + "DEPRECATE", + "DISABLE" + ] + }, + "LifecycleExecutionResourceList":{ + "type":"list", + "member":{"shape":"LifecycleExecutionResource"} + }, + "LifecycleExecutionResourceState":{ + "type":"structure", + "members":{ + "status":{"shape":"LifecycleExecutionResourceStatus"}, + "reason":{"shape":"NonEmptyString"} + } + }, + "LifecycleExecutionResourceStatus":{ + "type":"string", + "enum":[ + "FAILED", + "IN_PROGRESS", + "SKIPPED", + "SUCCESS" + ] + }, + "LifecycleExecutionResourcesImpactedSummary":{ + "type":"structure", + "members":{ + "hasImpactedResources":{"shape":"Boolean"} + } + }, + "LifecycleExecutionSnapshotResource":{ + "type":"structure", + "members":{ + "snapshotId":{"shape":"NonEmptyString"}, + "state":{"shape":"LifecycleExecutionResourceState"} + } + }, + "LifecycleExecutionSnapshotResourceList":{ + "type":"list", + "member":{"shape":"LifecycleExecutionSnapshotResource"} + }, + "LifecycleExecutionState":{ + "type":"structure", + "members":{ + "status":{"shape":"LifecycleExecutionStatus"}, + "reason":{"shape":"NonEmptyString"} + } + }, + "LifecycleExecutionStatus":{ + "type":"string", + "enum":[ + "IN_PROGRESS", + "CANCELLED", + "CANCELLING", + "FAILED", + "SUCCESS" + ] + }, + "LifecycleExecutionsList":{ + "type":"list", + "member":{"shape":"LifecycleExecution"} + }, + "LifecyclePolicy":{ + "type":"structure", + "members":{ + "arn":{"shape":"LifecyclePolicyArn"}, + "name":{"shape":"ResourceName"}, + "description":{"shape":"NonEmptyString"}, + "status":{"shape":"LifecyclePolicyStatus"}, + "executionRole":{"shape":"RoleNameOrArn"}, + "resourceType":{"shape":"LifecyclePolicyResourceType"}, + "policyDetails":{"shape":"LifecyclePolicyDetails"}, + "resourceSelection":{"shape":"LifecyclePolicyResourceSelection"}, + "dateCreated":{"shape":"DateTimeTimestamp"}, + "dateUpdated":{"shape":"DateTimeTimestamp"}, + "dateLastRun":{"shape":"DateTimeTimestamp"}, + "tags":{"shape":"TagMap"} + } + }, + "LifecyclePolicyArn":{ + "type":"string", + "max":1024, + "pattern":"^arn:aws(?:-[a-z]+)*:imagebuilder:[a-z]{2,}(?:-[a-z]+)+-[0-9]+:(?:[0-9]{12}|aws):lifecycle-policy/[a-z0-9-_]+$" + }, + "LifecyclePolicyDetail":{ + "type":"structure", + "required":[ + "action", + "filter" + ], + "members":{ + "action":{"shape":"LifecyclePolicyDetailAction"}, + "filter":{"shape":"LifecyclePolicyDetailFilter"}, + "exclusionRules":{"shape":"LifecyclePolicyDetailExclusionRules"} + } + }, + "LifecyclePolicyDetailAction":{ + "type":"structure", + "required":["type"], + "members":{ + "type":{"shape":"LifecyclePolicyDetailActionType"}, + "includeResources":{"shape":"LifecyclePolicyDetailActionIncludeResources"} + } + }, + "LifecyclePolicyDetailActionIncludeResources":{ + "type":"structure", + "members":{ + "amis":{"shape":"Boolean"}, + "snapshots":{"shape":"Boolean"}, + "containers":{"shape":"Boolean"} + } + }, + "LifecyclePolicyDetailActionType":{ + "type":"string", + "enum":[ + "DELETE", + "DEPRECATE", + "DISABLE" + ] + }, + "LifecyclePolicyDetailExclusionRules":{ + "type":"structure", + "members":{ + "tagMap":{"shape":"TagMap"}, + "amis":{"shape":"LifecyclePolicyDetailExclusionRulesAmis"} + } + }, + "LifecyclePolicyDetailExclusionRulesAmis":{ + "type":"structure", + "members":{ + "isPublic":{"shape":"Boolean"}, + "regions":{"shape":"StringList"}, + "sharedAccounts":{"shape":"AccountList"}, + "lastLaunched":{"shape":"LifecyclePolicyDetailExclusionRulesAmisLastLaunched"}, + "tagMap":{"shape":"TagMap"} + } + }, + "LifecyclePolicyDetailExclusionRulesAmisLastLaunched":{ + "type":"structure", + "required":[ + "value", + "unit" + ], + "members":{ + "value":{"shape":"LifecyclePolicyDetailExclusionRulesAmisLastLaunchedValue"}, + "unit":{"shape":"LifecyclePolicyTimeUnit"} + } + }, + "LifecyclePolicyDetailExclusionRulesAmisLastLaunchedValue":{ + "type":"integer", + "max":365, + "min":1 + }, + "LifecyclePolicyDetailFilter":{ + "type":"structure", + "required":[ + "type", + "value" + ], + "members":{ + "type":{"shape":"LifecyclePolicyDetailFilterType"}, + "value":{"shape":"LifecyclePolicyDetailFilterValue"}, + "unit":{"shape":"LifecyclePolicyTimeUnit"}, + "retainAtLeast":{"shape":"LifecyclePolicyDetailFilterRetainAtLeast"} + } + }, + "LifecyclePolicyDetailFilterRetainAtLeast":{ + "type":"integer", + "max":10, + "min":1 + }, + "LifecyclePolicyDetailFilterType":{ + "type":"string", + "enum":[ + "AGE", + "COUNT" + ] + }, + "LifecyclePolicyDetailFilterValue":{ + "type":"integer", + "max":1000, + "min":1 + }, + "LifecyclePolicyDetails":{ + "type":"list", + "member":{"shape":"LifecyclePolicyDetail"}, + "max":3, + "min":1 + }, + "LifecyclePolicyResourceSelection":{ + "type":"structure", + "members":{ + "recipes":{"shape":"LifecyclePolicyResourceSelectionRecipes"}, + "tagMap":{"shape":"TagMap"} + } + }, + "LifecyclePolicyResourceSelectionRecipe":{ + "type":"structure", + "required":[ + "name", + "semanticVersion" + ], + "members":{ + "name":{"shape":"ResourceName"}, + "semanticVersion":{"shape":"VersionNumber"} + } + }, + "LifecyclePolicyResourceSelectionRecipes":{ + "type":"list", + "member":{"shape":"LifecyclePolicyResourceSelectionRecipe"}, + "max":50, + "min":1 + }, + "LifecyclePolicyResourceType":{ + "type":"string", + "enum":[ + "AMI_IMAGE", + "CONTAINER_IMAGE" + ] + }, + "LifecyclePolicyStatus":{ + "type":"string", + "enum":[ + "DISABLED", + "ENABLED" + ] + }, + "LifecyclePolicySummary":{ + "type":"structure", + "members":{ + "arn":{"shape":"LifecyclePolicyArn"}, + "name":{"shape":"ResourceName"}, + "description":{"shape":"NonEmptyString"}, + "status":{"shape":"LifecyclePolicyStatus"}, + "executionRole":{"shape":"RoleNameOrArn"}, + "resourceType":{"shape":"LifecyclePolicyResourceType"}, + "dateCreated":{"shape":"DateTimeTimestamp"}, + "dateUpdated":{"shape":"DateTimeTimestamp"}, + "dateLastRun":{"shape":"DateTimeTimestamp"}, + "tags":{"shape":"TagMap"} + } + }, + "LifecyclePolicySummaryList":{ + "type":"list", + "member":{"shape":"LifecyclePolicySummary"} + }, + "LifecyclePolicyTimeUnit":{ + "type":"string", + "enum":[ + "DAYS", + "WEEKS", + "MONTHS", + "YEARS" + ] + }, "ListComponentBuildVersionsRequest":{ "type":"structure", "required":["componentVersionArn"], @@ -3067,6 +3655,65 @@ "nextToken":{"shape":"PaginationToken"} } }, + "ListLifecycleExecutionResourcesRequest":{ + "type":"structure", + "required":["lifecycleExecutionId"], + "members":{ + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"}, + "parentResourceId":{"shape":"NonEmptyString"}, + "maxResults":{ + "shape":"RestrictedInteger", + "box":true + }, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListLifecycleExecutionResourcesResponse":{ + "type":"structure", + "members":{ + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"}, + "lifecycleExecutionState":{"shape":"LifecycleExecutionState"}, + "resources":{"shape":"LifecycleExecutionResourceList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListLifecycleExecutionsRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "maxResults":{ + "shape":"RestrictedInteger", + "box":true + }, + "nextToken":{"shape":"PaginationToken"}, + "resourceArn":{"shape":"ImageBuilderArn"} + } + }, + "ListLifecycleExecutionsResponse":{ + "type":"structure", + "members":{ + "lifecycleExecutions":{"shape":"LifecycleExecutionsList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListLifecyclePoliciesRequest":{ + "type":"structure", + "members":{ + "filters":{"shape":"FilterList"}, + "maxResults":{ + "shape":"RestrictedInteger", + "box":true + }, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListLifecyclePoliciesResponse":{ + "type":"structure", + "members":{ + "lifecyclePolicySummaryList":{"shape":"LifecyclePolicySummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -3138,7 +3785,6 @@ }, "MaxParallelLaunches":{ "type":"integer", - "max":10000, "min":1 }, "NonEmptyString":{ @@ -3376,6 +4022,35 @@ "max":30000, "min":1 }, + "ResourceState":{ + "type":"structure", + "members":{ + "status":{"shape":"ResourceStatus"} + } + }, + "ResourceStateUpdateExclusionRules":{ + "type":"structure", + "members":{ + "amis":{"shape":"LifecyclePolicyDetailExclusionRulesAmis"} + } + }, + "ResourceStateUpdateIncludeResources":{ + "type":"structure", + "members":{ + "amis":{"shape":"Boolean"}, + "snapshots":{"shape":"Boolean"}, + "containers":{"shape":"Boolean"} + } + }, + "ResourceStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "DELETED", + "DEPRECATED", + "DISABLED" + ] + }, "ResourceTagMap":{ "type":"map", "key":{"shape":"TagKey"}, @@ -3388,6 +4063,12 @@ "max":25, "min":1 }, + "RoleNameOrArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"^(?:arn:aws(?:-[a-z]+)*:iam::[0-9]{12}:role/)?[a-zA-Z_0-9+=,.@\\-_/]+$" + }, "S3ExportConfiguration":{ "type":"structure", "required":[ @@ -3482,6 +4163,33 @@ "imageBuildVersionArn":{"shape":"ImageBuildVersionArn"} } }, + "StartResourceStateUpdateRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "state", + "clientToken" + ], + "members":{ + "resourceArn":{"shape":"ImageBuildVersionArn"}, + "state":{"shape":"ResourceState"}, + "executionRole":{"shape":"RoleNameOrArn"}, + "includeResources":{"shape":"ResourceStateUpdateIncludeResources"}, + "exclusionRules":{"shape":"ResourceStateUpdateExclusionRules"}, + "updateAt":{"shape":"DateTimeTimestamp"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "StartResourceStateUpdateResponse":{ + "type":"structure", + "members":{ + "lifecycleExecutionId":{"shape":"LifecycleExecutionId"}, + "resourceArn":{"shape":"ImageBuildVersionArn"} + } + }, "StringList":{ "type":"list", "member":{"shape":"NonEmptyString"} @@ -3673,6 +4381,36 @@ "infrastructureConfigurationArn":{"shape":"InfrastructureConfigurationArn"} } }, + "UpdateLifecyclePolicyRequest":{ + "type":"structure", + "required":[ + "lifecyclePolicyArn", + "executionRole", + "resourceType", + "policyDetails", + "resourceSelection", + "clientToken" + ], + "members":{ + "lifecyclePolicyArn":{"shape":"LifecyclePolicyArn"}, + "description":{"shape":"NonEmptyString"}, + "status":{"shape":"LifecyclePolicyStatus"}, + "executionRole":{"shape":"RoleNameOrArn"}, + "resourceType":{"shape":"LifecyclePolicyResourceType"}, + "policyDetails":{"shape":"LifecyclePolicyDetails"}, + "resourceSelection":{"shape":"LifecyclePolicyResourceSelection"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "UpdateLifecyclePolicyResponse":{ + "type":"structure", + "members":{ + "lifecyclePolicyArn":{"shape":"LifecyclePolicyArn"} + } + }, "Uri":{"type":"string"}, "UserDataOverride":{ "type":"string", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,6 +3,7 @@ "service": "

EC2 Image Builder is a fully managed Amazon Web Services service that makes it easier to automate the creation, management, and deployment of customized, secure, and up-to-date \"golden\" server images that are pre-installed and pre-configured with software and settings to meet specific IT standards.

", "operations": { "CancelImageCreation": "

CancelImageCreation cancels the creation of Image. This operation can only be used on images in a non-terminal state.

", + "CancelLifecycleExecution": "

Cancel a specific image lifecycle policy runtime instance.

", "CreateComponent": "

Creates a new component that can be used to build, validate, test, and assess your image. The component is based on a YAML document that you specify using exactly one of the following methods:

  • Inline, using the data property in the request body.

  • A URL that points to a YAML document file stored in Amazon S3, using the uri property in the request body.

", "CreateContainerRecipe": "

Creates a new container recipe. Container recipes define how images are configured, tested, and assessed.

", "CreateDistributionConfiguration": "

Creates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.

", @@ -10,6 +11,7 @@ "CreateImagePipeline": "

Creates a new image pipeline. Image pipelines enable you to automate the creation and distribution of images.

", "CreateImageRecipe": "

Creates a new image recipe. Image recipes define how images are configured, tested, and assessed.

", "CreateInfrastructureConfiguration": "

Creates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.

", + "CreateLifecyclePolicy": "

Create a lifecycle policy resource.

", "DeleteComponent": "

Deletes a component build version.

", "DeleteContainerRecipe": "

Deletes a container recipe.

", "DeleteDistributionConfiguration": "

Deletes a distribution configuration.

", @@ -17,6 +19,7 @@ "DeleteImagePipeline": "

Deletes an image pipeline.

", "DeleteImageRecipe": "

Deletes an image recipe.

", "DeleteInfrastructureConfiguration": "

Deletes an infrastructure configuration.

", + "DeleteLifecyclePolicy": "

Delete the specified lifecycle policy resource.

", "GetComponent": "

Gets a component object.

", "GetComponentPolicy": "

Gets a component policy.

", "GetContainerRecipe": "

Retrieves a container recipe.

", @@ -28,6 +31,8 @@ "GetImageRecipe": "

Gets an image recipe.

", "GetImageRecipePolicy": "

Gets an image recipe policy.

", "GetInfrastructureConfiguration": "

Gets an infrastructure configuration.

", + "GetLifecycleExecution": "

Get the runtime information that was logged for a specific runtime instance of the lifecycle policy.

", + "GetLifecyclePolicy": "

Get details for the specified image lifecycle policy.

", "GetWorkflowExecution": "

Get the runtime information that was logged for a specific runtime instance of the workflow.

", "GetWorkflowStepExecution": "

Get the runtime information that was logged for a specific runtime instance of the workflow step.

", "ImportComponent": "

Imports a component and transforms its data into a component document.

", @@ -45,6 +50,9 @@ "ListImageScanFindings": "

Returns a list of image scan findings for your account.

", "ListImages": "

Returns the list of images that you have access to. Newly created images can take up to two minutes to appear in the ListImages API Results.

", "ListInfrastructureConfigurations": "

Returns a list of infrastructure configurations.

", + "ListLifecycleExecutionResources": "

List resources that the runtime instance of the image lifecycle identified for lifecycle actions.

", + "ListLifecycleExecutions": "

Get the lifecycle runtime history for the specified resource.

", + "ListLifecyclePolicies": "

Get a list of lifecycle policies in your Amazon Web Services account.

", "ListTagsForResource": "

Returns the list of tags for the specified resource.

", "ListWorkflowExecutions": "

Returns a list of workflow runtime instance metadata objects for a specific image build version.

", "ListWorkflowStepExecutions": "

Shows runtime data for each step in a runtime instance of the workflow that you specify in the request.

", @@ -53,11 +61,13 @@ "PutImagePolicy": "

Applies a policy to an image. We recommend that you call the RAM API CreateResourceShare to share resources. If you call the Image Builder API PutImagePolicy, you must also call the RAM API PromoteResourceShareCreatedFromPolicy in order for the resource to be visible to all principals with whom the resource is shared.

", "PutImageRecipePolicy": "

Applies a policy to an image recipe. We recommend that you call the RAM API CreateResourceShare to share resources. If you call the Image Builder API PutImageRecipePolicy, you must also call the RAM API PromoteResourceShareCreatedFromPolicy in order for the resource to be visible to all principals with whom the resource is shared.

", "StartImagePipelineExecution": "

Manually triggers a pipeline to create an image.

", + "StartResourceStateUpdate": "

Begin asynchronous resource state update for lifecycle changes to the specified image resources.

", "TagResource": "

Adds a tag to a resource.

", "UntagResource": "

Removes a tag from a resource.

", "UpdateDistributionConfiguration": "

Updates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.

", "UpdateImagePipeline": "

Updates an image pipeline. Image pipelines enable you to automate the creation and distribution of images.

UpdateImagePipeline does not support selective updates for the pipeline. You must specify all of the required properties in the update request, not just the properties that have changed.

", - "UpdateInfrastructureConfiguration": "

Updates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.

" + "UpdateInfrastructureConfiguration": "

Updates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.

", + "UpdateLifecyclePolicy": "

Update the specified lifecycle policy.

" }, "shapes": { "AccountAggregation": { @@ -78,7 +88,8 @@ "base": null, "refs": { "AmiDistributionConfiguration$targetAccountIds": "

The ID of an account to which you want to distribute an image.

", - "LaunchPermissionConfiguration$userIds": "

The Amazon Web Services account ID.

" + "LaunchPermissionConfiguration$userIds": "

The Amazon Web Services account ID.

", + "LifecyclePolicyDetailExclusionRulesAmis$sharedAccounts": "

Specifies configuration details for Image Builder to exclude the most recent resources from lifecycle actions.

" } }, "AdditionalInstanceConfiguration": { @@ -130,8 +141,16 @@ "ComponentSummary$obfuscate": "

Indicates whether component source is hidden from view in the console, and from component detail results for API, CLI, or SDK operations.

", "FastLaunchConfiguration$enabled": "

A Boolean that represents the current state of faster launching for the Windows AMI. Set to true to start using Windows faster launching, or false to stop using it.

", "LaunchTemplateConfiguration$setDefaultVersion": "

Set the specified Amazon EC2 launch template as the default launch template for the specified account.

", + "LifecycleExecutionResourcesImpactedSummary$hasImpactedResources": "

Indicates whether an image resource that was identified for a lifecycle action has associated resources that are also impacted.

", + "LifecyclePolicyDetailActionIncludeResources$amis": "

Specifies whether the lifecycle action should apply to distributed AMIs.

", + "LifecyclePolicyDetailActionIncludeResources$snapshots": "

Specifies whether the lifecycle action should apply to snapshots associated with distributed AMIs.

", + "LifecyclePolicyDetailActionIncludeResources$containers": "

Specifies whether the lifecycle action should apply to distributed containers.

", + "LifecyclePolicyDetailExclusionRulesAmis$isPublic": "

Configures whether public AMIs are excluded from the lifecycle action.

", "ListComponentsRequest$byName": "

Returns the list of components for the specified name.

", - "ListImagesRequest$byName": "

Requests a list of images with a specific recipe name.

" + "ListImagesRequest$byName": "

Requests a list of images with a specific recipe name.

", + "ResourceStateUpdateIncludeResources$amis": "

Specifies whether the lifecycle action should apply to distributed AMIs

", + "ResourceStateUpdateIncludeResources$snapshots": "

Specifies whether the lifecycle action should apply to snapshots associated with distributed AMIs.

", + "ResourceStateUpdateIncludeResources$containers": "

Specifies whether the lifecycle action should apply to distributed containers.

" } }, "BuildType": { @@ -157,6 +176,16 @@ "refs": { } }, + "CancelLifecycleExecutionRequest": { + "base": null, + "refs": { + } + }, + "CancelLifecycleExecutionResponse": { + "base": null, + "refs": { + } + }, "ClientException": { "base": "

These errors are usually caused by a client action, such as using an action or resource on behalf of a user that doesn't have permissions to use the action or resource, or specifying an invalid resource identifier.

", "refs": { @@ -166,33 +195,38 @@ "base": null, "refs": { "CancelImageCreationRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", - "CancelImageCreationResponse$clientToken": "

The idempotency token that was used for this request.

", - "CreateComponentRequest$clientToken": "

The idempotency token of the component.

", - "CreateComponentResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateContainerRecipeRequest$clientToken": "

The client token used to make this request idempotent.

", - "CreateContainerRecipeResponse$clientToken": "

The client token used to make this request idempotent.

", - "CreateDistributionConfigurationRequest$clientToken": "

The idempotency token of the distribution configuration.

", - "CreateDistributionConfigurationResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateImagePipelineRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateImagePipelineResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateImageRecipeRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateImageRecipeResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateImageRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateImageResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateInfrastructureConfigurationRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "CreateInfrastructureConfigurationResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "ImportComponentRequest$clientToken": "

The idempotency token of the component.

", - "ImportComponentResponse$clientToken": "

The idempotency token used to make this request idempotent.

", + "CancelImageCreationResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CancelLifecycleExecutionRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateComponentRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateComponentResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateContainerRecipeRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateContainerRecipeResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateDistributionConfigurationRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateDistributionConfigurationResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateImagePipelineRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateImagePipelineResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateImageRecipeRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateImageRecipeResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateImageRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateImageResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateInfrastructureConfigurationRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateInfrastructureConfigurationResponse$clientToken": "

The client token that uniquely identifies the request.

", + "CreateLifecyclePolicyRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "CreateLifecyclePolicyResponse$clientToken": "

The client token that uniquely identifies the request.

", + "ImportComponentRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "ImportComponentResponse$clientToken": "

The client token that uniquely identifies the request.

", "ImportVmImageRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", - "ImportVmImageResponse$clientToken": "

The idempotency token that was used for this request.

", - "StartImagePipelineExecutionRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "StartImagePipelineExecutionResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "UpdateDistributionConfigurationRequest$clientToken": "

The idempotency token of the distribution configuration.

", - "UpdateDistributionConfigurationResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "UpdateImagePipelineRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "UpdateImagePipelineResponse$clientToken": "

The idempotency token used to make this request idempotent.

", - "UpdateInfrastructureConfigurationRequest$clientToken": "

The idempotency token used to make this request idempotent.

", - "UpdateInfrastructureConfigurationResponse$clientToken": "

The idempotency token used to make this request idempotent.

" + "ImportVmImageResponse$clientToken": "

The client token that uniquely identifies the request.

", + "StartImagePipelineExecutionRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "StartImagePipelineExecutionResponse$clientToken": "

The client token that uniquely identifies the request.

", + "StartResourceStateUpdateRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "UpdateDistributionConfigurationRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "UpdateDistributionConfigurationResponse$clientToken": "

The client token that uniquely identifies the request.

", + "UpdateImagePipelineRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "UpdateImagePipelineResponse$clientToken": "

The client token that uniquely identifies the request.

", + "UpdateInfrastructureConfigurationRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

", + "UpdateInfrastructureConfigurationResponse$clientToken": "

The client token that uniquely identifies the request.

", + "UpdateLifecyclePolicyRequest$clientToken": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

" } }, "Component": { @@ -204,7 +238,7 @@ "ComponentBuildVersionArn": { "base": null, "refs": { - "CreateComponentResponse$componentBuildVersionArn": "

The Amazon Resource Name (ARN) of the component that this request created.

", + "CreateComponentResponse$componentBuildVersionArn": "

The Amazon Resource Name (ARN) of the component that the request created.

", "DeleteComponentRequest$componentBuildVersionArn": "

The Amazon Resource Name (ARN) of the component build version to delete.

", "DeleteComponentResponse$componentBuildVersionArn": "

The ARN of the component build version that this request deleted.

", "GetComponentPolicyRequest$componentArn": "

The Amazon Resource Name (ARN) of the component whose policy you want to retrieve.

", @@ -491,6 +525,16 @@ "refs": { } }, + "CreateLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "CreateLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "CvssScore": { "base": "

Amazon Inspector generates a risk score for each finding. This score helps you to prioritize findings, to focus on the most critical findings and the most vulnerable resources. The score uses the Common Vulnerability Scoring System (CVSS) format. This format is a modification of the base CVSS score that the National Vulnerability Database (NVD) provides. For more information about severity levels, see Severity levels for Amazon Inspector findings in the Amazon Inspector User Guide.

", "refs": { @@ -559,10 +603,21 @@ "DateTimeTimestamp": { "base": null, "refs": { + "Image$deprecationTime": "

The time when deprecation occurs for an image resource. This can be a past or future date.

", "ImageScanFinding$firstObservedAt": "

The date and time when the finding was first observed.

", "ImageScanFinding$updatedAt": "

The timestamp when the finding was last updated.

", + "ImageSummary$deprecationTime": "

The time when deprecation occurs for an image resource. This can be a past or future date.

", + "LifecycleExecution$startTime": "

The timestamp when the lifecycle runtime instance started.

", + "LifecycleExecution$endTime": "

The timestamp when the lifecycle runtime instance completed.

", + "LifecyclePolicy$dateCreated": "

The timestamp when Image Builder created the lifecycle policy resource.

", + "LifecyclePolicy$dateUpdated": "

The timestamp when Image Builder updated the lifecycle policy resource.

", + "LifecyclePolicy$dateLastRun": "

The timestamp for the last time Image Builder ran the lifecycle policy.

", + "LifecyclePolicySummary$dateCreated": "

The timestamp when Image Builder created the lifecycle policy resource.

", + "LifecyclePolicySummary$dateUpdated": "

The timestamp when Image Builder updated the lifecycle policy resource.

", + "LifecyclePolicySummary$dateLastRun": "

The timestamp for the last time Image Builder ran the lifecycle policy.

", "PackageVulnerabilityDetails$vendorCreatedAt": "

The date and time when this vulnerability was first added to the vendor's database.

", - "PackageVulnerabilityDetails$vendorUpdatedAt": "

The date and time when the vendor last updated this vulnerability in their database.

" + "PackageVulnerabilityDetails$vendorUpdatedAt": "

The date and time when the vendor last updated this vulnerability in their database.

", + "StartResourceStateUpdateRequest$updateAt": "

The timestamp that indicates when resources are updated by a lifecycle action.

" } }, "DeleteComponentRequest": { @@ -635,6 +690,16 @@ "refs": { } }, + "DeleteLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "DiskImageFormat": { "base": null, "refs": { @@ -806,7 +871,8 @@ "ListImagePipelinesRequest$filters": "

Use the following filters to streamline results:

  • description

  • distributionConfigurationArn

  • imageRecipeArn

  • infrastructureConfigurationArn

  • name

  • status

", "ListImageRecipesRequest$filters": "

Use the following filters to streamline results:

  • name

  • parentImage

  • platform

", "ListImagesRequest$filters": "

Use the following filters to streamline results:

  • name

  • osVersion

  • platform

  • type

  • version

", - "ListInfrastructureConfigurationsRequest$filters": "

You can filter on name to streamline results.

" + "ListInfrastructureConfigurationsRequest$filters": "

You can filter on name to streamline results.

", + "ListLifecyclePoliciesRequest$filters": "

Streamline results based on one of the following values: Name, Status.

" } }, "FilterName": { @@ -944,6 +1010,26 @@ "refs": { } }, + "GetLifecycleExecutionRequest": { + "base": null, + "refs": { + } + }, + "GetLifecycleExecutionResponse": { + "base": null, + "refs": { + } + }, + "GetLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "GetLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "GetWorkflowExecutionRequest": { "base": null, "refs": { @@ -1005,7 +1091,7 @@ "refs": { "CancelImageCreationRequest$imageBuildVersionArn": "

The Amazon Resource Name (ARN) of the image that you want to cancel creation for.

", "CancelImageCreationResponse$imageBuildVersionArn": "

The ARN of the image whose creation this request canceled.

", - "CreateImageResponse$imageBuildVersionArn": "

The Amazon Resource Name (ARN) of the image that this request created.

", + "CreateImageResponse$imageBuildVersionArn": "

The Amazon Resource Name (ARN) of the image that the request created.

", "DeleteImageRequest$imageBuildVersionArn": "

The Amazon Resource Name (ARN) of the Image Builder image resource to delete.

", "DeleteImageResponse$imageBuildVersionArn": "

The ARN of the Image Builder image resource that this request deleted.

", "GetImagePolicyRequest$imageArn": "

The Amazon Resource Name (ARN) of the image whose policy you want to retrieve.

", @@ -1019,7 +1105,9 @@ "ListWorkflowStepExecutionsResponse$imageBuildVersionArn": "

The image build version resource ARN that's associated with the specified runtime instance of the workflow.

", "PutImagePolicyRequest$imageArn": "

The Amazon Resource Name (ARN) of the image that this policy should be applied to.

", "PutImagePolicyResponse$imageArn": "

The Amazon Resource Name (ARN) of the image that this policy was applied to.

", - "StartImagePipelineExecutionResponse$imageBuildVersionArn": "

The Amazon Resource Name (ARN) of the image that was created by this request.

" + "StartImagePipelineExecutionResponse$imageBuildVersionArn": "

The Amazon Resource Name (ARN) of the image that the request created.

", + "StartResourceStateUpdateRequest$resourceArn": "

The ARN of the Image Builder resource that is updated. The state update might also impact associated resources.

", + "StartResourceStateUpdateResponse$resourceArn": "

The requested ARN of the Image Builder resource for the asynchronous update.

" } }, "ImageBuilderArn": { @@ -1040,6 +1128,7 @@ "ImageVersion$arn": "

The Amazon Resource Name (ARN) of a specific version of an Image Builder image.

Semantic versioning is included in each object's Amazon Resource Name (ARN), at the level that applies to that object as follows:

  1. Versionless ARNs and Name ARNs do not include specific values in any of the nodes. The nodes are either left off entirely, or they are specified as wildcards, for example: x.x.x.

  2. Version ARNs have only the first three nodes: <major>.<minor>.<patch>

  3. Build version ARNs have all four nodes, and point to a specific build for a specific version of an object.

", "InfrastructureConfiguration$arn": "

The Amazon Resource Name (ARN) of the infrastructure configuration.

", "InfrastructureConfigurationSummary$arn": "

The Amazon Resource Name (ARN) of the infrastructure configuration.

", + "ListLifecycleExecutionsRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource for which to get a list of lifecycle runtime instances.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource whose tags you want to retrieve.

", "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you want to tag.

", "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you want to untag.

" @@ -1464,6 +1553,259 @@ "Distribution$licenseConfigurationArns": "

The License Manager Configuration to associate with the AMI in the specified Region.

" } }, + "LifecycleExecution": { + "base": "

Contains metadata from a runtime instance of a lifecycle policy.

", + "refs": { + "GetLifecycleExecutionResponse$lifecycleExecution": "

Runtime details for the specified runtime instance of the lifecycle policy.

", + "LifecycleExecutionsList$member": null + } + }, + "LifecycleExecutionId": { + "base": null, + "refs": { + "CancelLifecycleExecutionRequest$lifecycleExecutionId": "

Identifies the specific runtime instance of the image lifecycle to cancel.

", + "CancelLifecycleExecutionResponse$lifecycleExecutionId": "

The unique identifier for the image lifecycle runtime instance that was canceled.

", + "GetLifecycleExecutionRequest$lifecycleExecutionId": "

Use the unique identifier for a runtime instance of the lifecycle policy to get runtime details.

", + "Image$lifecycleExecutionId": "

Identifies the last runtime instance of the lifecycle policy to take action on the image.

", + "ImageSummary$lifecycleExecutionId": "

Identifies the last runtime instance of the lifecycle policy to take action on the image.

", + "LifecycleExecution$lifecycleExecutionId": "

Identifies the lifecycle policy runtime instance.

", + "ListLifecycleExecutionResourcesRequest$lifecycleExecutionId": "

Use the unique identifier for a runtime instance of the lifecycle policy to get runtime details.

", + "ListLifecycleExecutionResourcesResponse$lifecycleExecutionId": "

Runtime details for the specified runtime instance of the lifecycle policy.

", + "StartResourceStateUpdateResponse$lifecycleExecutionId": "

Identifies the lifecycle runtime instance that started the resource state update.

" + } + }, + "LifecycleExecutionResource": { + "base": "

Contains details for a resource that the runtime instance of the lifecycle policy identified for action.

", + "refs": { + "LifecycleExecutionResourceList$member": null + } + }, + "LifecycleExecutionResourceAction": { + "base": "

The lifecycle policy action that was identified for the impacted resource.

", + "refs": { + "LifecycleExecutionResource$action": "

The action to take for the identified resource.

" + } + }, + "LifecycleExecutionResourceActionName": { + "base": null, + "refs": { + "LifecycleExecutionResourceAction$name": "

The name of the resource that was identified for a lifecycle policy action.

" + } + }, + "LifecycleExecutionResourceList": { + "base": null, + "refs": { + "ListLifecycleExecutionResourcesResponse$resources": "

A list of resources that were identified for lifecycle actions.

" + } + }, + "LifecycleExecutionResourceState": { + "base": "

Contains the state of an impacted resource that the runtime instance of the lifecycle policy identified for action.

", + "refs": { + "LifecycleExecutionResource$state": "

The runtime state for the lifecycle execution.

", + "LifecycleExecutionSnapshotResource$state": "

The runtime status of the lifecycle action taken for the snapshot.

" + } + }, + "LifecycleExecutionResourceStatus": { + "base": null, + "refs": { + "LifecycleExecutionResourceState$status": "

The runtime status of the lifecycle action taken for the impacted resource.

" + } + }, + "LifecycleExecutionResourcesImpactedSummary": { + "base": "

Contains details for an image resource that was identified for a lifecycle action.

", + "refs": { + "LifecycleExecution$resourcesImpactedSummary": "

Contains information about associated resources that are identified for action by the runtime instance of the lifecycle policy.

" + } + }, + "LifecycleExecutionSnapshotResource": { + "base": "

Contains the state of an impacted snapshot resource that the runtime instance of the lifecycle policy identified for action.

", + "refs": { + "LifecycleExecutionSnapshotResourceList$member": null + } + }, + "LifecycleExecutionSnapshotResourceList": { + "base": null, + "refs": { + "LifecycleExecutionResource$snapshots": "

A list of associated resource snapshots for the impacted resource if it’s an AMI.

" + } + }, + "LifecycleExecutionState": { + "base": "

The current state of the runtime instance of the lifecycle policy.

", + "refs": { + "LifecycleExecution$state": "

Runtime state that reports if the policy action ran successfully, failed, or was skipped.

", + "ListLifecycleExecutionResourcesResponse$lifecycleExecutionState": "

The current state of the lifecycle runtime instance.

" + } + }, + "LifecycleExecutionStatus": { + "base": null, + "refs": { + "LifecycleExecutionState$status": "

The runtime status of the lifecycle execution.

" + } + }, + "LifecycleExecutionsList": { + "base": null, + "refs": { + "ListLifecycleExecutionsResponse$lifecycleExecutions": "

A list of lifecycle runtime instances for the specified resource.

" + } + }, + "LifecyclePolicy": { + "base": "

The configuration details for a lifecycle policy resource.

", + "refs": { + "GetLifecyclePolicyResponse$lifecyclePolicy": "

The ARN of the image lifecycle policy resource that was returned.

" + } + }, + "LifecyclePolicyArn": { + "base": null, + "refs": { + "CreateLifecyclePolicyResponse$lifecyclePolicyArn": "

The Amazon Resource Name (ARN) of the lifecycle policy that the request created.

", + "DeleteLifecyclePolicyRequest$lifecyclePolicyArn": "

The Amazon Resource Name (ARN) of the lifecycle policy resource to delete.

", + "DeleteLifecyclePolicyResponse$lifecyclePolicyArn": "

The ARN of the lifecycle policy that was deleted.

", + "GetLifecyclePolicyRequest$lifecyclePolicyArn": "

Specifies the Amazon Resource Name (ARN) of the image lifecycle policy resource to get.

", + "LifecycleExecution$lifecyclePolicyArn": "

The Amazon Resource Name (ARN) of the lifecycle policy that ran.

", + "LifecyclePolicy$arn": "

The Amazon Resource Name (ARN) of the lifecycle policy resource.

", + "LifecyclePolicySummary$arn": "

The Amazon Resource Name (ARN) of the lifecycle policy summary resource.

", + "UpdateLifecyclePolicyRequest$lifecyclePolicyArn": "

The Amazon Resource Name (ARN) of the lifecycle policy resource.

", + "UpdateLifecyclePolicyResponse$lifecyclePolicyArn": "

The ARN of the image lifecycle policy resource that was updated.

" + } + }, + "LifecyclePolicyDetail": { + "base": "

The configuration details for a lifecycle policy resource.

", + "refs": { + "LifecyclePolicyDetails$member": null + } + }, + "LifecyclePolicyDetailAction": { + "base": "

Contains selection criteria for the lifecycle policy.

", + "refs": { + "LifecyclePolicyDetail$action": "

Configuration details for the policy action.

" + } + }, + "LifecyclePolicyDetailActionIncludeResources": { + "base": "

Specifies how the lifecycle policy should apply actions to selected resources.

", + "refs": { + "LifecyclePolicyDetailAction$includeResources": "

Specifies the resources that the lifecycle policy applies to.

" + } + }, + "LifecyclePolicyDetailActionType": { + "base": null, + "refs": { + "LifecyclePolicyDetailAction$type": "

Specifies the lifecycle action to take.

" + } + }, + "LifecyclePolicyDetailExclusionRules": { + "base": "

Specifies resources that lifecycle policy actions should not apply to.

", + "refs": { + "LifecyclePolicyDetail$exclusionRules": "

Additional rules to specify resources that should be exempt from policy actions.

" + } + }, + "LifecyclePolicyDetailExclusionRulesAmis": { + "base": "

Defines criteria for AMIs that are excluded from lifecycle actions.

", + "refs": { + "LifecyclePolicyDetailExclusionRules$amis": "

Lists configuration values that apply to AMIs that Image Builder should exclude from the lifecycle action.

", + "ResourceStateUpdateExclusionRules$amis": null + } + }, + "LifecyclePolicyDetailExclusionRulesAmisLastLaunched": { + "base": "

Defines criteria to exclude AMIs from lifecycle actions based on the last time they were used to launch an instance.

", + "refs": { + "LifecyclePolicyDetailExclusionRulesAmis$lastLaunched": "

Configures Amazon Web Services Regions that are excluded from the lifecycle action.

" + } + }, + "LifecyclePolicyDetailExclusionRulesAmisLastLaunchedValue": { + "base": null, + "refs": { + "LifecyclePolicyDetailExclusionRulesAmisLastLaunched$value": "

The integer number of units for the time period. For example 6 (months).

" + } + }, + "LifecyclePolicyDetailFilter": { + "base": "

Defines filters that the lifecycle policy uses to determine impacted resource.

", + "refs": { + "LifecyclePolicyDetail$filter": "

Specifies the resources that the lifecycle policy applies to.

" + } + }, + "LifecyclePolicyDetailFilterRetainAtLeast": { + "base": null, + "refs": { + "LifecyclePolicyDetailFilter$retainAtLeast": "

For age-based filters, this is the number of resources to keep on hand after the lifecycle DELETE action is applied. Impacted resources are only deleted if you have more than this number of resources. If you have fewer resources than this number, the impacted resource is not deleted.

" + } + }, + "LifecyclePolicyDetailFilterType": { + "base": null, + "refs": { + "LifecyclePolicyDetailFilter$type": "

Filter resources based on either age or count.

" + } + }, + "LifecyclePolicyDetailFilterValue": { + "base": null, + "refs": { + "LifecyclePolicyDetailFilter$value": "

The number of units for the time period or for the count. For example, a value of 6 might refer to six months or six AMIs.

For count-based filters, this value represents the minimum number of resources to keep on hand. If you have fewer resources than this number, the resource is excluded from lifecycle actions.

" + } + }, + "LifecyclePolicyDetails": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$policyDetails": "

Configuration details for the lifecycle policy rules.

", + "LifecyclePolicy$policyDetails": "

The configuration details for a lifecycle policy resource.

", + "UpdateLifecyclePolicyRequest$policyDetails": "

The configuration details for a lifecycle policy resource.

" + } + }, + "LifecyclePolicyResourceSelection": { + "base": "

Resource selection criteria for the lifecycle policy.

", + "refs": { + "CreateLifecyclePolicyRequest$resourceSelection": "

Selection criteria for the resources that the lifecycle policy applies to.

", + "LifecyclePolicy$resourceSelection": "

Resource selection criteria used to run the lifecycle policy.

", + "UpdateLifecyclePolicyRequest$resourceSelection": "

Selection criteria for resources that the lifecycle policy applies to.

" + } + }, + "LifecyclePolicyResourceSelectionRecipe": { + "base": "

Specifies an Image Builder recipe that the lifecycle policy uses for resource selection.

", + "refs": { + "LifecyclePolicyResourceSelectionRecipes$member": null + } + }, + "LifecyclePolicyResourceSelectionRecipes": { + "base": null, + "refs": { + "LifecyclePolicyResourceSelection$recipes": "

A list of recipes that are used as selection criteria for the output images that the lifecycle policy applies to.

" + } + }, + "LifecyclePolicyResourceType": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$resourceType": "

The type of Image Builder resource that the lifecycle policy applies to.

", + "LifecyclePolicy$resourceType": "

The type of resources the lifecycle policy targets.

", + "LifecyclePolicySummary$resourceType": "

The type of resources the lifecycle policy targets.

", + "UpdateLifecyclePolicyRequest$resourceType": "

The type of image resource that the lifecycle policy applies to.

" + } + }, + "LifecyclePolicyStatus": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$status": "

Indicates whether the lifecycle policy resource is enabled.

", + "LifecyclePolicy$status": "

Indicates whether the lifecycle policy resource is enabled.

", + "LifecyclePolicySummary$status": "

The lifecycle policy resource status.

", + "UpdateLifecyclePolicyRequest$status": "

Indicates whether the lifecycle policy resource is enabled.

" + } + }, + "LifecyclePolicySummary": { + "base": "

Contains a summary of lifecycle policy resources.

", + "refs": { + "LifecyclePolicySummaryList$member": null + } + }, + "LifecyclePolicySummaryList": { + "base": null, + "refs": { + "ListLifecyclePoliciesResponse$lifecyclePolicySummaryList": "

A list of lifecycle policies in your Amazon Web Services account that meet the criteria specified in the request.

" + } + }, + "LifecyclePolicyTimeUnit": { + "base": null, + "refs": { + "LifecyclePolicyDetailExclusionRulesAmisLastLaunched$unit": "

Defines the unit of time that the lifecycle policy uses to calculate elapsed time since the last instance launched from the AMI. For example: days, weeks, months, or years.

", + "LifecyclePolicyDetailFilter$unit": "

Defines the unit of time that the lifecycle policy uses to determine impacted resources. This is required for age-based rules.

" + } + }, "ListComponentBuildVersionsRequest": { "base": null, "refs": { @@ -1594,6 +1936,36 @@ "refs": { } }, + "ListLifecycleExecutionResourcesRequest": { + "base": null, + "refs": { + } + }, + "ListLifecycleExecutionResourcesResponse": { + "base": null, + "refs": { + } + }, + "ListLifecycleExecutionsRequest": { + "base": null, + "refs": { + } + }, + "ListLifecycleExecutionsResponse": { + "base": null, + "refs": { + } + }, + "ListLifecyclePoliciesRequest": { + "base": null, + "refs": { + } + }, + "ListLifecyclePoliciesResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -1694,6 +2066,7 @@ "CreateInfrastructureConfigurationRequest$subnetId": "

The subnet ID in which to place the instance used to customize your Amazon EC2 AMI.

", "CreateInfrastructureConfigurationRequest$keyPair": "

The key pair of the infrastructure configuration. You can use this to log on to and debug the instance used to create your image.

", "CreateInfrastructureConfigurationResponse$requestId": "

The request ID that uniquely identifies this request.

", + "CreateLifecyclePolicyRequest$description": "

Optional description for the lifecycle policy.

", "CvssScore$scoringVector": "

The vector string of the CVSS score.

", "CvssScore$version": "

The CVSS version that generated the score.

", "CvssScore$source": "

The source of the CVSS score.

", @@ -1768,11 +2141,20 @@ "InstanceBlockDeviceMapping$deviceName": "

The device to which these mappings apply.

", "InstanceBlockDeviceMapping$virtualName": "

Use to manage instance ephemeral devices.

", "InstanceConfiguration$image": "

The AMI ID to use as the base image for a container build and test instance. If not specified, Image Builder will use the appropriate ECS-optimized AMI as a base image.

", + "LifecycleExecutionResource$accountId": "

The account that owns the impacted resource.

", + "LifecycleExecutionResource$resourceId": "

Identifies the impacted resource. The resource ID depends on the type of resource, as follows.

  • Image Builder image resources: Amazon Resource Name (ARN)

  • Distributed AMIs: AMI ID

  • Container images distributed to an ECR repository: image URI or SHA Digest

", + "LifecycleExecutionResource$region": "

The Amazon Web Services Region where the lifecycle execution resource is stored.

", + "LifecycleExecutionResourceAction$reason": "

The reason why the lifecycle policy action is taken.

", + "LifecycleExecutionResourceState$reason": "

Messaging that clarifies the reason for the assigned status.

", + "LifecycleExecutionSnapshotResource$snapshotId": "

Identifies the impacted snapshot resource.

", + "LifecycleExecutionState$reason": "

The reason for the current status.

", + "LifecyclePolicy$description": "

Optional description for the lifecycle policy.

", + "LifecyclePolicySummary$description": "

Optional description for the lifecycle policy.

", "ListComponentBuildVersionsResponse$requestId": "

The request ID that uniquely identifies this request.

", "ListComponentsResponse$requestId": "

The request ID that uniquely identifies this request.

", - "ListContainerRecipesRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", + "ListContainerRecipesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", "ListContainerRecipesResponse$requestId": "

The request ID that uniquely identifies this request.

", - "ListContainerRecipesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", + "ListContainerRecipesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", "ListDistributionConfigurationsResponse$requestId": "

The request ID that uniquely identifies this request.

", "ListImageBuildVersionsResponse$requestId": "

The request ID that uniquely identifies this request.

", "ListImagePackagesResponse$requestId": "

The request ID that uniquely identifies this request.

", @@ -1784,6 +2166,7 @@ "ListImageScanFindingsResponse$requestId": "

The request ID that uniquely identifies this request.

", "ListImagesResponse$requestId": "

The request ID that uniquely identifies this request.

", "ListInfrastructureConfigurationsResponse$requestId": "

The request ID that uniquely identifies this request.

", + "ListLifecycleExecutionResourcesRequest$parentResourceId": "

You can leave this empty to get a list of Image Builder resources that were identified for lifecycle actions.

To get a list of associated resources that are impacted for an individual resource (the parent), specify its Amazon Resource Name (ARN). Associated resources are produced from your image and distributed when you run a build, such as AMIs or container images stored in ECR repositories.

", "ListWorkflowExecutionsResponse$requestId": "

The request ID that uniquely identifies this request.

", "ListWorkflowStepExecutionsResponse$requestId": "

The request ID that uniquely identifies this request.

", "NonEmptyStringList$member": null, @@ -1815,6 +2198,7 @@ "UpdateInfrastructureConfigurationRequest$subnetId": "

The subnet ID to place the instance used to customize your Amazon EC2 AMI in.

", "UpdateInfrastructureConfigurationRequest$keyPair": "

The key pair of the infrastructure configuration. You can use this to log on to and debug the instance used to create your image.

", "UpdateInfrastructureConfigurationResponse$requestId": "

The request ID that uniquely identifies this request.

", + "UpdateLifecyclePolicyRequest$description": "

Optional description for the lifecycle policy.

", "VulnerabilityIdAggregation$vulnerabilityId": "

The vulnerability Id for this set of counts.

", "VulnerablePackage$name": "

The name of the vulnerable package.

", "VulnerablePackage$version": "

The version of the vulnerable package.

", @@ -1940,34 +2324,40 @@ "PaginationToken": { "base": null, "refs": { - "ListComponentBuildVersionsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListComponentBuildVersionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListComponentsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListComponentsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListDistributionConfigurationsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListDistributionConfigurationsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImageBuildVersionsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImageBuildVersionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImagePackagesRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImagePackagesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImagePipelineImagesRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImagePipelineImagesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImagePipelinesRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImagePipelinesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImageRecipesRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImageRecipesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImageScanFindingAggregationsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImageScanFindingAggregationsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImageScanFindingsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImageScanFindingsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListImagesRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListImagesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListInfrastructureConfigurationsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListInfrastructureConfigurationsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListWorkflowExecutionsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListWorkflowExecutionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

", - "ListWorkflowStepExecutionsRequest$nextToken": "

A token to specify where to start paginating. This is the NextToken from a previously truncated response.

", - "ListWorkflowStepExecutionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service has'ot included in this request. Use this token with the next request to retrieve additional objects.

" + "ListComponentBuildVersionsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListComponentBuildVersionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListComponentsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListComponentsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListDistributionConfigurationsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListDistributionConfigurationsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImageBuildVersionsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImageBuildVersionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImagePackagesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImagePackagesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImagePipelineImagesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImagePipelineImagesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImagePipelinesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImagePipelinesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImageRecipesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImageRecipesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImageScanFindingAggregationsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImageScanFindingAggregationsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImageScanFindingsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImageScanFindingsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListImagesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListImagesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListInfrastructureConfigurationsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListInfrastructureConfigurationsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListLifecycleExecutionResourcesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListLifecycleExecutionResourcesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListLifecycleExecutionsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListLifecycleExecutionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListLifecyclePoliciesRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListLifecyclePoliciesResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListWorkflowExecutionsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListWorkflowExecutionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

", + "ListWorkflowStepExecutionsRequest$nextToken": "

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

", + "ListWorkflowStepExecutionsResponse$nextToken": "

The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

" } }, "PipelineExecutionStartCondition": { @@ -2091,6 +2481,7 @@ "CreateImagePipelineRequest$name": "

The name of the image pipeline.

", "CreateImageRecipeRequest$name": "

The name of the image recipe.

", "CreateInfrastructureConfigurationRequest$name": "

The name of the infrastructure configuration.

", + "CreateLifecyclePolicyRequest$name": "

The name of the lifecycle policy to create.

", "DistributionConfiguration$name": "

The name of the distribution configuration.

", "DistributionConfigurationSummary$name": "

The name of the distribution configuration.

", "Image$name": "

The name of the image.

", @@ -2102,7 +2493,10 @@ "ImageVersion$name": "

The name of this specific version of an Image Builder image.

", "ImportComponentRequest$name": "

The name of the component.

", "InfrastructureConfiguration$name": "

The name of the infrastructure configuration.

", - "InfrastructureConfigurationSummary$name": "

The name of the infrastructure configuration.

" + "InfrastructureConfigurationSummary$name": "

The name of the infrastructure configuration.

", + "LifecyclePolicy$name": "

The name of the lifecycle policy.

", + "LifecyclePolicyResourceSelectionRecipe$name": "

The name of an Image Builder recipe that the lifecycle policy uses for resource selection.

", + "LifecyclePolicySummary$name": "

The name of the lifecycle policy.

" } }, "ResourceNotFoundException": { @@ -2123,6 +2517,30 @@ "PutImageRecipePolicyRequest$policy": "

The policy to apply.

" } }, + "ResourceState": { + "base": "

The current state of an impacted resource.

", + "refs": { + "StartResourceStateUpdateRequest$state": "

Indicates the lifecycle action to take for this request.

" + } + }, + "ResourceStateUpdateExclusionRules": { + "base": "

Additional rules to specify resources that should be exempt from ad-hoc lifecycle actions.

", + "refs": { + "StartResourceStateUpdateRequest$exclusionRules": "

Skip action on the image resource and associated resources if specified exclusion rules are met.

" + } + }, + "ResourceStateUpdateIncludeResources": { + "base": "

Specifies if the lifecycle policy should apply actions to selected resources.

", + "refs": { + "StartResourceStateUpdateRequest$includeResources": "

A list of image resources to update state for.

" + } + }, + "ResourceStatus": { + "base": null, + "refs": { + "ResourceState$status": "

Shows the current lifecycle policy action that was applied to an impacted resource.

" + } + }, "ResourceTagMap": { "base": null, "refs": { @@ -2147,10 +2565,23 @@ "ListImageScanFindingsRequest$maxResults": "

The maximum items to return in a request.

", "ListImagesRequest$maxResults": "

The maximum items to return in a request.

", "ListInfrastructureConfigurationsRequest$maxResults": "

The maximum items to return in a request.

", + "ListLifecycleExecutionResourcesRequest$maxResults": "

The maximum items to return in a request.

", + "ListLifecycleExecutionsRequest$maxResults": "

The maximum items to return in a request.

", + "ListLifecyclePoliciesRequest$maxResults": "

The maximum items to return in a request.

", "ListWorkflowExecutionsRequest$maxResults": "

The maximum items to return in a request.

", "ListWorkflowStepExecutionsRequest$maxResults": "

The maximum items to return in a request.

" } }, + "RoleNameOrArn": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$executionRole": "

The role name or Amazon Resource Name (ARN) for the IAM role that grants Image Builder access to run lifecycle actions.

", + "LifecyclePolicy$executionRole": "

The name of the IAM role that Image Builder uses to run the lifecycle policy. This is a custom role that you create.

", + "LifecyclePolicySummary$executionRole": "

The name of the IAM role that Image Builder uses to run the lifecycle policy.

", + "StartResourceStateUpdateRequest$executionRole": "

The name or Amazon Resource Name (ARN) of the IAM role that’s used to update image state.

", + "UpdateLifecyclePolicyRequest$executionRole": "

The name of the IAM role that Image Builder should use to update the lifecycle policy.

" + } + }, "S3ExportConfiguration": { "base": "

Properties that configure export from your build instance to a compatible file format for your VM.

", "refs": { @@ -2235,13 +2666,25 @@ "refs": { } }, + "StartResourceStateUpdateRequest": { + "base": null, + "refs": { + } + }, + "StartResourceStateUpdateResponse": { + "base": null, + "refs": { + } + }, "StringList": { "base": null, "refs": { "Container$imageUris": "

A list of URIs for containers created in the context Region.

", "ContainerDistributionConfiguration$containerTags": "

Tags that are attached to the container distribution configuration.

", "EcrConfiguration$containerTags": "

Tags for Image Builder to apply to the output container image that &INS; scans. Tags can help you identify and manage your scanned images.

", - "LaunchPermissionConfiguration$userGroups": "

The name of the group.

" + "LaunchPermissionConfiguration$userGroups": "

The name of the group.

", + "LifecycleExecutionResource$imageUris": "

For an impacted container image, this identifies a list of URIs for associated container images distributed to ECR repositories.

", + "LifecyclePolicyDetailExclusionRulesAmis$regions": "

Specifies Amazon Web Services accounts whose resources are excluded from the lifecycle action.

" } }, "SystemsManagerAgent": { @@ -2279,6 +2722,7 @@ "CreateImageRecipeRequest$tags": "

The tags of the image recipe.

", "CreateImageRequest$tags": "

The tags of the image.

", "CreateInfrastructureConfigurationRequest$tags": "

The tags of the infrastructure configuration.

", + "CreateLifecyclePolicyRequest$tags": "

Tags to apply to the lifecycle policy resource.

", "DistributionConfiguration$tags": "

The tags of the distribution configuration.

", "DistributionConfigurationSummary$tags": "

The tags associated with the distribution configuration.

", "Image$tags": "

The tags that apply to this image.

", @@ -2290,6 +2734,11 @@ "ImportVmImageRequest$tags": "

Tags that are attached to the import resources.

", "InfrastructureConfiguration$tags": "

The tags of the infrastructure configuration.

", "InfrastructureConfigurationSummary$tags": "

The tags of the infrastructure configuration.

", + "LifecyclePolicy$tags": "

To help manage your lifecycle policy resources, you can assign your own metadata to each resource in the form of tags. Each tag consists of a key and an optional value, both of which you define.

", + "LifecyclePolicyDetailExclusionRules$tagMap": "

Contains a list of tags that Image Builder uses to skip lifecycle actions for AMIs that have them.

", + "LifecyclePolicyDetailExclusionRulesAmis$tagMap": "

Lists tags that should be excluded from lifecycle actions for the AMIs that have them.

", + "LifecyclePolicyResourceSelection$tagMap": "

A list of tags that are used as selection criteria for the resources that the lifecycle policy applies to.

", + "LifecyclePolicySummary$tags": "

To help manage your lifecycle policy resources, you can assign your own metadata to each resource in the form of tags. Each tag consists of a key and an optional value, both of which you define.

", "ListTagsForResourceResponse$tags": "

The tags for the specified resource.

", "TagResourceRequest$tags": "

The tags to apply to the resource.

" } @@ -2371,6 +2820,16 @@ "refs": { } }, + "UpdateLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "UpdateLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "Uri": { "base": null, "refs": { @@ -2400,7 +2859,8 @@ "ImageSummary$version": "

The version of the image.

", "ImageVersion$version": "

Details for a specific version of an Image Builder image. This version follows the semantic version syntax.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Assignment: For the first three nodes you can assign any positive integer value, including zero, with an upper limit of 2^30-1, or 1073741823 for each node. Image Builder automatically assigns the build number to the fourth node.

Patterns: You can use any numeric pattern that adheres to the assignment requirements for the nodes that you can assign. For example, you might choose a software version pattern, such as 1.0.0, or a date, such as 2021.01.01.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

", "ImportComponentRequest$semanticVersion": "

The semantic version of the component. This version follows the semantic version syntax.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

", - "ImportVmImageRequest$semanticVersion": "

The semantic version to attach to the base image that was created during the import process. This version follows the semantic version syntax.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Assignment: For the first three nodes you can assign any positive integer value, including zero, with an upper limit of 2^30-1, or 1073741823 for each node. Image Builder automatically assigns the build number to the fourth node.

Patterns: You can use any numeric pattern that adheres to the assignment requirements for the nodes that you can assign. For example, you might choose a software version pattern, such as 1.0.0, or a date, such as 2021.01.01.

" + "ImportVmImageRequest$semanticVersion": "

The semantic version to attach to the base image that was created during the import process. This version follows the semantic version syntax.

The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.

Assignment: For the first three nodes you can assign any positive integer value, including zero, with an upper limit of 2^30-1, or 1073741823 for each node. Image Builder automatically assigns the build number to the fourth node.

Patterns: You can use any numeric pattern that adheres to the assignment requirements for the nodes that you can assign. For example, you might choose a software version pattern, such as 1.0.0, or a date, such as 2021.01.01.

", + "LifecyclePolicyResourceSelectionRecipe$semanticVersion": "

The version of the Image Builder recipe specified by the name field.

" } }, "VulnerabilityId": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://imagebuilder-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://imagebuilder-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://imagebuilder.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://imagebuilder-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://imagebuilder.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://imagebuilder-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://imagebuilder.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://imagebuilder.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://imagebuilder.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://imagebuilder.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/imagebuilder/2019-12-02/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/imagebuilder/2019-12-02/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -77,6 +77,24 @@ "limit_key": "maxResults", "result_key": "infrastructureConfigurationSummaryList" }, + "ListLifecycleExecutionResources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "resources" + }, + "ListLifecycleExecutions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "lifecycleExecutions" + }, + "ListLifecyclePolicies": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "lifecyclePolicySummaryList" + }, "ListWorkflowExecutions": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,165 @@ +{ + "metadata": { + "apiVersion": "2023-08-08", + "endpointPrefix": "inspector-scan", + "jsonVersion": "1.1", + "protocol": "rest-json", + "serviceAbbreviation": "inspector-scan", + "serviceFullName": "Inspector Scan", + "serviceId": "Inspector Scan", + "signatureVersion": "v4", + "signingName": "inspector-scan", + "uid": "inspector-scan-2023-08-08" + }, + "operations": {}, + "shapes": { + "AccessDeniedException": { + "error": { + "httpStatusCode": 403, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "Integer": { + "box": true, + "type": "integer" + }, + "InternalServerException": { + "error": { + "httpStatusCode": 500 + }, + "exception": true, + "fault": true, + "members": { + "message": { + "shape": "String" + }, + "reason": { + "shape": "InternalServerExceptionReason" + }, + "retryAfterSeconds": { + "location": "header", + "locationName": "Retry-After", + "shape": "Integer" + } + }, + "required": [ + "message", + "reason" + ], + "retryable": { + "throttling": false + }, + "type": "structure" + }, + "InternalServerExceptionReason": { + "enum": [ + "FAILED_TO_GENERATE_SBOM", + "OTHER" + ], + "type": "string" + }, + "OutputFormat": { + "enum": [ + "CYCLONE_DX_1_5", + "INSPECTOR" + ], + "type": "string" + }, + "ScanSbomResponse": { + "members": {}, + "type": "structure" + }, + "String": { + "type": "string" + }, + "ThrottlingException": { + "error": { + "httpStatusCode": 429, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "String" + }, + "retryAfterSeconds": { + "location": "header", + "locationName": "Retry-After", + "shape": "Integer" + } + }, + "required": [ + "message" + ], + "retryable": { + "throttling": true + }, + "type": "structure" + }, + "ValidationException": { + "error": { + "httpStatusCode": 400, + "senderFault": true + }, + "exception": true, + "members": { + "fields": { + "shape": "ValidationExceptionFields" + }, + "message": { + "shape": "String" + }, + "reason": { + "shape": "ValidationExceptionReason" + } + }, + "required": [ + "message", + "reason" + ], + "type": "structure" + }, + "ValidationExceptionField": { + "members": { + "message": { + "shape": "String" + }, + "name": { + "shape": "String" + } + }, + "required": [ + "name", + "message" + ], + "type": "structure" + }, + "ValidationExceptionFields": { + "member": { + "shape": "ValidationExceptionField" + }, + "type": "list" + }, + "ValidationExceptionReason": { + "enum": [ + "UNKNOWN_OPERATION", + "CANNOT_PARSE", + "FIELD_VALIDATION_FAILED", + "UNSUPPORTED_SBOM_TYPE", + "OTHER" + ], + "type": "string" + } + }, + "version": "2.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,94 @@ +{ + "version": "2.0", + "service": "

Amazon Inspector Scan is a vulnerability discovery service that scans a provided Software Bill of Materials (SBOM) for security vulnerabilities.

", + "operations": { + "ScanSbom": "

Scans a provided CycloneDX 1.5 SBOM and reports on any vulnerabilities discovered in that SBOM. You can generate compatible SBOMs for your resources using the Amazon Inspector SBOM generator.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "Integer": { + "base": null, + "refs": { + "InternalServerException$retryAfterSeconds": "

The number of seconds to wait before retrying the request.

", + "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying the request.

" + } + }, + "InternalServerException": { + "base": "

The request processing has failed because of an unknown error, exception or failure.

", + "refs": { + } + }, + "InternalServerExceptionReason": { + "base": null, + "refs": { + "InternalServerException$reason": "

The reason for the validation failure.

" + } + }, + "OutputFormat": { + "base": null, + "refs": { + "ScanSbomRequest$outputFormat": "

The output format for the vulnerability report.

" + } + }, + "Sbom": { + "base": null, + "refs": { + "ScanSbomRequest$sbom": "

The JSON file for the SBOM you want to scan. The SBOM must be in CycloneDX 1.5 format.

", + "ScanSbomResponse$sbom": "

The vulnerability report for the scanned SBOM.

" + } + }, + "ScanSbomRequest": { + "base": null, + "refs": { + } + }, + "ScanSbomResponse": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "InternalServerException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null, + "ValidationExceptionField$name": "

The name of the validation exception.

", + "ValidationExceptionField$message": "

The validation exception message.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "ValidationException": { + "base": "

The request has failed validation due to missing required fields or having invalid inputs.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

The request has failed validation due to missing required fields or having invalid inputs.

", + "refs": { + "ValidationExceptionFields$member": null + } + }, + "ValidationExceptionFields": { + "base": null, + "refs": { + "ValidationException$fields": "

The fields that failed validation.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason for the validation failure.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://inspector-scan.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://inspector-scan.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,174 @@ +{ + "version": "1.0", + "examples": { + "ScanSbom": [ + { + "input": { + "outputFormat": "CYCLONE_DX_1_5", + "sbom": { + "bomFormat": "CycloneDX", + "components": [ + { + "name": "log4j-core", + "type": "library", + "purl": "pkg:maven/org.apache.logging.log4j/log4j-core@2.17.0" + } + ], + "specVersion": "1.5" + } + }, + "output": { + "sbom": { + "metadata": { + "properties": [ + { + "name": "amazon:inspector:sbom_scanner:critical_vulnerabilities", + "value": "0" + }, + { + "name": "amazon:inspector:sbom_scanner:high_vulnerabilities", + "value": "0" + }, + { + "name": "amazon:inspector:sbom_scanner:medium_vulnerabilities", + "value": "1" + }, + { + "name": "amazon:inspector:sbom_scanner:low_vulnerabilities", + "value": "0" + } + ], + "timestamp": "2023-11-16T02:55:34.355Z", + "tools": [ + { + "version": "9f8c30ff+20b2305b", + "name": "CycloneDX SBOM API", + "vendor": "Amazon Inspector" + } + ] + }, + "bomFormat": "CycloneDX", + "components": [ + { + "name": "log4j-core", + "type": "library", + "bom-ref": "comp-1", + "purl": "pkg:maven/org.apache.logging.log4j/log4j-core@2.17.0" + } + ], + "serialNumber": "urn:uuid:26de5e0a-deb4-4b38-a208-7d19c1832e8c", + "specVersion": "1.5", + "vulnerabilities": [ + { + "advisories": [ + { + "url": "https://www.oracle.com/security-alerts/cpujan2022.html" + }, + { + "url": "https://lists.debian.org/debian-lts-announce/2021/12/msg00036.html" + }, + { + "url": "https://cert-portal.siemens.com/productcert/pdf/ssa-784507.pdf" + }, + { + "url": "https://lists.apache.org/thread/s1o5vlo78ypqxnzn6p8zf6t9shtq5143" + }, + { + "url": "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/EVV25FXL4FU5X6X5BSL7RLQ7T6F65MRA/" + }, + { + "url": "https://www.oracle.com/security-alerts/cpuapr2022.html" + }, + { + "url": "https://www.oracle.com/security-alerts/cpujul2022.html" + }, + { + "url": "https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-apache-log4j-qRuKNEbd" + }, + { + "url": "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/T57MPJUW3MA6QGWZRTMCHHMMPQNVKGFC/" + }, + { + "url": "https://issues.apache.org/jira/browse/LOG4J2-3293" + } + ], + "affects": [ + { + "ref": "comp-1" + } + ], + "bom-ref": "vuln-1", + "created": "2021-12-28T20:15:08Z", + "cwes": [ + 20, + 74 + ], + "description": "Apache Log4j2 versions 2.0-beta7 through 2.17.0 (excluding security fix releases 2.3.2 and 2.12.4) are vulnerable to a remote code execution (RCE) attack when a configuration uses a JDBC Appender with a JNDI LDAP data source URI when an attacker has control of the target LDAP server. This issue is fixed by limiting JNDI data source names to the java protocol in Log4j2 versions 2.17.1, 2.12.4, and 2.3.2.", + "id": "CVE-2021-44832", + "properties": [ + { + "name": "amazon:inspector:sbom_scanner:exploit_available", + "value": "true" + }, + { + "name": "amazon:inspector:sbom_scanner:exploit_last_seen_in_public", + "value": "2023-01-02T00:00:00Z" + }, + { + "name": "amazon:inspector:sbom_scanner:fixed_version:comp-1", + "value": "2.17.1" + } + ], + "ratings": [ + { + "method": "CVSSv31", + "score": 6.5, + "severity": "medium", + "source": { + "name": "NVD", + "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-44832" + }, + "vector": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H" + }, + { + "method": "other", + "score": 0.02686, + "severity": "none", + "source": { + "name": "EPSS", + "url": "https://www.first.org/epss/" + }, + "vector": "model:v2023.03.01,date:2023-11-15T00:00:00+0000" + } + ], + "references": [ + { + "id": "GHSA-8489-44mv-ggj8", + "source": { + "name": "GITHUB_SEC", + "url": "https://github.com/advisories" + } + }, + { + "id": "SNYK-JAVA-ORGAPACHELOGGINGLOG4J-2327339", + "source": { + "name": "SNYK", + "url": "https://security.snyk.io/vuln" + } + } + ], + "source": { + "name": "NVD", + "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-44832" + }, + "updated": "2023-11-07T03:39:43Z" + } + ] + } + }, + "id": "example-1", + "title": "Sample ScanSbom Call" + } + ] + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector-scan/2023-08-08/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector-scan/2023-08-08/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4 @@ +{ + "pagination": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector2/2020-06-08/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector2/2020-06-08/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector2/2020-06-08/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector2/2020-06-08/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1858,7 +1858,8 @@ "enum":[ "WINDOWS", "LINUX", - "UNKNOWN" + "UNKNOWN", + "MACOS" ] }, "EcrConfiguration":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector2/2020-06-08/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector2/2020-06-08/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/inspector2/2020-06-08/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/inspector2/2020-06-08/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Inspector is a vulnerability discovery service that automates continuous scanning for security vulnerabilities within your Amazon EC2 and Amazon ECR environments.

", + "service": "

Amazon Inspector is a vulnerability discovery service that automates continuous scanning for security vulnerabilities within your Amazon EC2, Amazon ECR, and Amazon Web Services Lambda environments.

", "operations": { "AssociateMember": "

Associates an Amazon Web Services account with an Amazon Inspector delegated administrator. An HTTP 200 response indicates the association was successfully started, but doesn’t indicate whether it was completed. You can check if the association completed by using ListMembers for multiple accounts or GetMembers for a single account.

", "BatchGetAccountStatus": "

Retrieves the Amazon Inspector status of multiple Amazon Web Services accounts within your environment.

", @@ -11,7 +11,7 @@ "BatchUpdateMemberEc2DeepInspectionStatus": "

Activates or deactivates Amazon Inspector deep inspection for the provided member accounts in your organization. You must be the delegated administrator of an organization in Amazon Inspector to use this API.

", "CancelFindingsReport": "

Cancels the given findings report.

", "CancelSbomExport": "

Cancels a software bill of materials (SBOM) report.

", - "CreateFilter": "

Creates a filter resource using specified filter criteria.

", + "CreateFilter": "

Creates a filter resource using specified filter criteria. When the filter action is set to SUPPRESS this action creates a suppression rule.

", "CreateFindingsReport": "

Creates a finding report. By default only ACTIVE findings are returned in the report. To see SUPRESSED or CLOSED findings you must specify a value for the findingStatus filter criteria.

", "CreateSbomExport": "

Creates a software bill of materials (SBOM) report.

", "DeleteFilter": "

Deletes a filter resource.

", @@ -594,7 +594,7 @@ "CoverageFilterCriteria$lambdaFunctionRuntime": "

Returns coverage statistics for AWS Lambda functions filtered by runtime.

", "CoverageFilterCriteria$resourceId": "

An array of Amazon Web Services resource IDs to return coverage statistics for.

", "CoverageFilterCriteria$resourceType": "

An array of Amazon Web Services resource types to return coverage statistics for. The values can be AWS_EC2_INSTANCE, AWS_LAMBDA_FUNCTION or AWS_ECR_REPOSITORY.

", - "CoverageFilterCriteria$scanStatusCode": "

The scan status code to filter on.

", + "CoverageFilterCriteria$scanStatusCode": "

The scan status code to filter on. Valid values are: ValidationException, InternalServerException, ResourceNotFoundException, BadRequestException, and ThrottlingException.

", "CoverageFilterCriteria$scanStatusReason": "

The scan status reason to filter on.

", "CoverageFilterCriteria$scanType": "

An array of Amazon Inspector scan types to return coverage statistics for.

" } @@ -1287,7 +1287,7 @@ "FindingType": { "base": null, "refs": { - "Finding$type": "

The type of the finding.

" + "Finding$type": "

The type of the finding. The type value determines the valid values for resource in your request. For more information, see Finding types in the Amazon Inspector user guide.

" } }, "FindingTypeAggregation": { @@ -1620,7 +1620,7 @@ "ListAccountPermissionsMaxResults": { "base": null, "refs": { - "ListAccountPermissionsRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListAccountPermissionsRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListAccountPermissionsRequest": { @@ -1636,7 +1636,7 @@ "ListCoverageMaxResults": { "base": null, "refs": { - "ListCoverageRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListCoverageRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListCoverageRequest": { @@ -1672,13 +1672,13 @@ "ListDelegatedAdminMaxResults": { "base": null, "refs": { - "ListDelegatedAdminAccountsRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListDelegatedAdminAccountsRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListFilterMaxResults": { "base": null, "refs": { - "ListFiltersRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListFiltersRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListFiltersRequest": { @@ -1694,7 +1694,7 @@ "ListFindingAggregationsMaxResults": { "base": null, "refs": { - "ListFindingAggregationsRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListFindingAggregationsRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListFindingAggregationsRequest": { @@ -1710,7 +1710,7 @@ "ListFindingsMaxResults": { "base": null, "refs": { - "ListFindingsRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListFindingsRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListFindingsRequest": { @@ -1726,7 +1726,7 @@ "ListMembersMaxResults": { "base": null, "refs": { - "ListMembersRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListMembersRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListMembersRequest": { @@ -1752,13 +1752,13 @@ "ListUsageTotalsMaxResults": { "base": null, "refs": { - "ListUsageTotalsRequest$maxResults": "

The maximum number of results to return in the response.

" + "ListUsageTotalsRequest$maxResults": "

The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

" } }, "ListUsageTotalsNextToken": { "base": null, "refs": { - "ListUsageTotalsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListUsageTotalsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListUsageTotalsResponse$nextToken": "

The pagination parameter to be used on the next list operation to retrieve more items.

" } }, @@ -1893,21 +1893,21 @@ "NextToken": { "base": null, "refs": { - "ListAccountPermissionsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListAccountPermissionsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", "ListAccountPermissionsResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", - "ListCoverageRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListCoverageRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListCoverageResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", "ListCoverageStatisticsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", "ListCoverageStatisticsResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", - "ListDelegatedAdminAccountsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListDelegatedAdminAccountsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListDelegatedAdminAccountsResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", - "ListFiltersRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListFiltersRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListFiltersResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", - "ListFindingAggregationsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListFindingAggregationsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListFindingAggregationsResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", - "ListFindingsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListFindingsRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListFindingsResponse$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", - "ListMembersRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", + "ListMembersRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

", "ListMembersResponse$nextToken": "

The pagination parameter to be used on the next list operation to retrieve more items.

", "SearchVulnerabilitiesRequest$nextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", "SearchVulnerabilitiesResponse$nextToken": "

The pagination parameter to be used on the next list operation to retrieve more items.

" @@ -2278,7 +2278,7 @@ "ResourceList": { "base": null, "refs": { - "Finding$resources": "

Contains information on the resources involved in a finding.

" + "Finding$resources": "

Contains information on the resources involved in a finding. The resource value determines the valid values for type in your request. For more information, see Finding types in the Amazon Inspector user guide.

" } }, "ResourceMapComparison": { @@ -2404,7 +2404,7 @@ "ScanStatusReason": { "base": null, "refs": { - "ScanStatus$reason": "

The reason for the scan.

" + "ScanStatus$reason": "

The scan status. Possible return values and descriptions are:

PENDING_INITIAL_SCAN - This resource has been identified for scanning, results will be available soon.

ACCESS_DENIED - Resource access policy restricting Amazon Inspector access. Please update the IAM policy.

INTERNAL_ERROR - Amazon Inspector has encountered an internal error for this resource. Amazon Inspector service will automatically resolve the issue and resume the scanning. No action required from the user.

UNMANAGED_EC2_INSTANCE - The EC2 instance is not managed by SSM, please use the following SSM automation to remediate the issue: https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/automation-awssupport-troubleshoot-managed-instance.html. Once the instance becomes managed by SSM, Inspector will automatically begin scanning this instance.

UNSUPPORTED_OS - Amazon Inspector does not support this OS, architecture, or image manifest type at this time. To see a complete list of supported operating systems see: https://docs.aws.amazon.com/inspector/latest/user/supported.html.

SCAN_ELIGIBILITY_EXPIRED - The configured scan duration has lapsed for this image.

RESOURCE_TERMINATED - This resource has been terminated. The findings and coverage associated with this resource are in the process of being cleaned up.

SUCCESSFUL - The scan was successful.

NO_RESOURCES_FOUND - Reserved for future use.

IMAGE_SIZE_EXCEEDED - Reserved for future use.

SCAN_FREQUENCY_MANUAL - This image will not be covered by Amazon Inspector due to the repository scan frequency configuration.

SCAN_FREQUENCY_SCAN_ON_PUSH - This image will be scanned one time and will not new findings because of the scan frequency configuration.

EC2_INSTANCE_STOPPED - This EC2 instance is in a stopped state, therefore, Amazon Inspector will pause scanning. The existing findings will continue to exist until the instance is terminated. Once the instance is re-started, Inspector will automatically start scanning the instance again. Please note that you will not be charged for this instance while it’s in a stopped state.

PENDING_DISABLE - This resource is pending cleanup during disablement. The customer will not be billed while a resource is in the pending disable status.

NO INVENTORY - Amazon Inspector couldn’t find software application inventory to scan for vulnerabilities. This might be caused due to required Amazon Inspector associations being deleted or failing to run on your resource. Please verify the status of InspectorInventoryCollection-do-not-delete association in the SSM console for the resource. Additionally, you can verify the instance’s inventory in the SSM Fleet Manager console.

STALE_INVENTORY - Amazon Inspector wasn’t able to collect an updated software application inventory in the last 7 days. Please confirm the required Amazon Inspector associations still exist and you can still see an updated inventory in the SSM console.

EXCLUDED_BY_TAG - This resource was not scanned because it has been excluded by a tag.

UNSUPPORTED_RUNTIME - The function was not scanned because it has an unsupported runtime. To see a complete list of supported runtimes see: https://docs.aws.amazon.com/inspector/latest/user/supported.html.

UNSUPPORTED_MEDIA_TYPE - The ECR image has an unsupported media type.

UNSUPPORTED_CONFIG_FILE - Reserved for future use.

DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED - The instance has exceeded the 5000 package limit for Amazon Inspector Deep inspection. To resume Deep inspection for this instance you can try to adjust the custom paths associated with the account.

DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED - The SSM agent couldn't send inventory to Amazon Inspector because the SSM quota for Inventory data collected per instance per day has already been reached for this instance.

DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED - Amazon Inspector failed to extract the package inventory because the package collection time exceeding the maximum threshold of 15 minutes.

DEEP_INSPECTION_NO_INVENTORY The Amazon Inspector plugin hasn't yet been able to collect an inventory of packages for this instance. This is usually the result of a pending scan, however, if this status persists after 6 hours, use SSM to ensure that the required Amazon Inspector associations exist and are running for the instance.

" } }, "ScanType": { @@ -2459,7 +2459,7 @@ "Severity": { "base": null, "refs": { - "Finding$severity": "

The severity of the finding.

" + "Finding$severity": "

The severity of the finding. UNTRIAGED applies to PACKAGE_VULNERABILITY type findings that the vendor has not assigned a severity yet. For more information, see Severity levels for findings in the Amazon Inspector user guide.

" } }, "SeverityCounts": { @@ -3051,7 +3051,7 @@ "VulnerabilitySource": { "base": null, "refs": { - "Vulnerability$source": "

The source of the vulnerability information.

" + "Vulnerability$source": "

The source of the vulnerability information. Possible results are RHEL, AMAZON_CVE, DEBIAN or NVD.

" } }, "VulnerabilitySourceUrl": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,40 @@ {"shape":"ValidationException"} ] }, + "GetQueryResults":{ + "name":"GetQueryResults", + "http":{ + "method":"GET", + "requestUri":"/v20210603/Monitors/{MonitorName}/Queries/{QueryId}/Results", + "responseCode":200 + }, + "input":{"shape":"GetQueryResultsInput"}, + "output":{"shape":"GetQueryResultsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"} + ] + }, + "GetQueryStatus":{ + "name":"GetQueryStatus", + "http":{ + "method":"GET", + "requestUri":"/v20210603/Monitors/{MonitorName}/Queries/{QueryId}/Status", + "responseCode":200 + }, + "input":{"shape":"GetQueryStatusInput"}, + "output":{"shape":"GetQueryStatusOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"} + ] + }, "ListHealthEvents":{ "name":"ListHealthEvents", "http":{ @@ -129,6 +163,40 @@ {"shape":"InternalServerErrorException"} ] }, + "StartQuery":{ + "name":"StartQuery", + "http":{ + "method":"POST", + "requestUri":"/v20210603/Monitors/{MonitorName}/Queries", + "responseCode":200 + }, + "input":{"shape":"StartQueryInput"}, + "output":{"shape":"StartQueryOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"} + ] + }, + "StopQuery":{ + "name":"StopQuery", + "http":{ + "method":"DELETE", + "requestUri":"/v20210603/Monitors/{MonitorName}/Queries/{QueryId}", + "responseCode":200 + }, + "input":{"shape":"StopQueryInput"}, + "output":{"shape":"StopQueryOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -281,6 +349,22 @@ "type":"double", "box":true }, + "FilterList":{ + "type":"list", + "member":{"shape":"String"} + }, + "FilterParameter":{ + "type":"structure", + "members":{ + "Field":{"shape":"String"}, + "Operator":{"shape":"Operator"}, + "Values":{"shape":"FilterList"} + } + }, + "FilterParameters":{ + "type":"list", + "member":{"shape":"FilterParameter"} + }, "GetHealthEventInput":{ "type":"structure", "required":[ @@ -362,6 +446,73 @@ "HealthEventsConfig":{"shape":"HealthEventsConfig"} } }, + "GetQueryResultsInput":{ + "type":"structure", + "required":[ + "MonitorName", + "QueryId" + ], + "members":{ + "MonitorName":{ + "shape":"ResourceName", + "location":"uri", + "locationName":"MonitorName" + }, + "QueryId":{ + "shape":"String", + "location":"uri", + "locationName":"QueryId" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"QueryMaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "GetQueryResultsOutput":{ + "type":"structure", + "required":[ + "Fields", + "Data" + ], + "members":{ + "Fields":{"shape":"QueryFields"}, + "Data":{"shape":"QueryData"}, + "NextToken":{"shape":"String"} + } + }, + "GetQueryStatusInput":{ + "type":"structure", + "required":[ + "MonitorName", + "QueryId" + ], + "members":{ + "MonitorName":{ + "shape":"ResourceName", + "location":"uri", + "locationName":"MonitorName" + }, + "QueryId":{ + "shape":"String", + "location":"uri", + "locationName":"QueryId" + } + } + }, + "GetQueryStatusOutput":{ + "type":"structure", + "required":["Status"], + "members":{ + "Status":{"shape":"QueryStatus"} + } + }, "HealthEvent":{ "type":"structure", "required":[ @@ -612,11 +763,13 @@ }, "MaxCityNetworksToMonitor":{ "type":"integer", + "box":true, "max":500000, "min":1 }, "MaxResults":{ "type":"integer", + "box":true, "max":25, "min":1 }, @@ -703,6 +856,13 @@ }, "exception":true }, + "Operator":{ + "type":"string", + "enum":[ + "EQUALS", + "NOT_EQUALS" + ] + }, "Percentage":{ "type":"double", "max":100, @@ -717,6 +877,49 @@ "RoundTripTime":{"shape":"RoundTripTime"} } }, + "QueryData":{ + "type":"list", + "member":{"shape":"QueryRow"} + }, + "QueryField":{ + "type":"structure", + "members":{ + "Name":{"shape":"String"}, + "Type":{"shape":"String"} + } + }, + "QueryFields":{ + "type":"list", + "member":{"shape":"QueryField"} + }, + "QueryMaxResults":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "QueryRow":{ + "type":"list", + "member":{"shape":"String"} + }, + "QueryStatus":{ + "type":"string", + "enum":[ + "QUEUED", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELED" + ] + }, + "QueryType":{ + "type":"string", + "enum":[ + "MEASUREMENTS", + "TOP_LOCATIONS", + "TOP_LOCATION_DETAILS" + ] + }, "ResourceName":{ "type":"string", "max":255, @@ -758,6 +961,57 @@ "type":"list", "member":{"shape":"Arn"} }, + "StartQueryInput":{ + "type":"structure", + "required":[ + "MonitorName", + "StartTime", + "EndTime", + "QueryType" + ], + "members":{ + "MonitorName":{ + "shape":"ResourceName", + "location":"uri", + "locationName":"MonitorName" + }, + "StartTime":{"shape":"SyntheticTimestamp_date_time"}, + "EndTime":{"shape":"SyntheticTimestamp_date_time"}, + "QueryType":{"shape":"QueryType"}, + "FilterParameters":{"shape":"FilterParameters"} + } + }, + "StartQueryOutput":{ + "type":"structure", + "required":["QueryId"], + "members":{ + "QueryId":{"shape":"String"} + } + }, + "StopQueryInput":{ + "type":"structure", + "required":[ + "MonitorName", + "QueryId" + ], + "members":{ + "MonitorName":{ + "shape":"ResourceName", + "location":"uri", + "locationName":"MonitorName" + }, + "QueryId":{ + "shape":"String", + "location":"uri", + "locationName":"QueryId" + } + } + }, + "StopQueryOutput":{ + "type":"structure", + "members":{ + } + }, "String":{"type":"string"}, "SyntheticTimestamp_date_time":{ "type":"timestamp", @@ -832,6 +1086,7 @@ }, "TrafficPercentageToMonitor":{ "type":"integer", + "box":true, "max":100, "min":1 }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,9 +6,13 @@ "DeleteMonitor": "

Deletes a monitor in Amazon CloudWatch Internet Monitor.

", "GetHealthEvent": "

Gets information the Amazon CloudWatch Internet Monitor has created and stored about a health event for a specified monitor. This information includes the impacted locations, and all the information related to the event, by location.

The information returned includes the impact on performance, availability, and round-trip time, information about the network providers (ASNs), the event type, and so on.

Information rolled up at the global traffic level is also returned, including the impact type and total traffic impact.

", "GetMonitor": "

Gets information about a monitor in Amazon CloudWatch Internet Monitor based on a monitor name. The information returned includes the Amazon Resource Name (ARN), create time, modified time, resources included in the monitor, and status information.

", + "GetQueryResults": "

Return the data for a query with the Amazon CloudWatch Internet Monitor query interface. Specify the query that you want to return results for by providing a QueryId and a monitor name.

For more information about using the query interface, including examples, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

", + "GetQueryStatus": "

Returns the current status of a query for the Amazon CloudWatch Internet Monitor query interface, for a specified query ID and monitor. When you run a query, check the status to make sure that the query has SUCCEEDED before you review the results.

  • QUEUED: The query is scheduled to run.

  • RUNNING: The query is in progress but not complete.

  • SUCCEEDED: The query completed sucessfully.

  • FAILED: The query failed due to an error.

  • CANCELED: The query was canceled.

", "ListHealthEvents": "

Lists all health events for a monitor in Amazon CloudWatch Internet Monitor. Returns information for health events including the event start and end time and the status.

Health events that have start times during the time frame that is requested are not included in the list of health events.

", "ListMonitors": "

Lists all of your monitors for Amazon CloudWatch Internet Monitor and their statuses, along with the Amazon Resource Name (ARN) and name of each monitor.

", "ListTagsForResource": "

Lists the tags for a resource. Tags are supported only for monitors in Amazon CloudWatch Internet Monitor.

", + "StartQuery": "

Start a query to return data for a specific query type for the Amazon CloudWatch Internet Monitor query interface. Specify a time period for the data that you want returned by using StartTime and EndTime. You filter the query results to return by providing parameters that you specify with FilterParameters.

For more information about using the query interface, including examples, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

", + "StopQuery": "

Stop a query that is progress for a specific monitor.

", "TagResource": "

Adds a tag to a resource. Tags are supported only for monitors in Amazon CloudWatch Internet Monitor. You can add a maximum of 50 tags in Internet Monitor.

A minimum of one tag is required for this call. It returns an error if you use the TagResource request with 0 tags.

", "UntagResource": "

Removes a tag from a resource.

", "UpdateMonitor": "

Updates a monitor. You can update a monitor to change the percentage of traffic to monitor or the maximum number of city-networks (locations and ASNs), to add or remove resources, or to change the status of the monitor. Note that you can't change the name of a monitor.

The city-network maximum that you choose is the limit, but you only pay for the number of city-networks that are actually monitored. For more information, see Choosing a city-network maximum value in the Amazon CloudWatch User Guide.

" @@ -81,6 +85,24 @@ "RoundTripTime$P95": "

RTT at the 95th percentile (p95).

" } }, + "FilterList": { + "base": null, + "refs": { + "FilterParameter$Values": "

One or more values to be used, together with the specified operator, to filter data for a query. For example, you could specify an array of values such as [\"Seattle\", \"Redmond\"]. Values in the array are separated by commas.

" + } + }, + "FilterParameter": { + "base": "

A filter that you use with the results of a Amazon CloudWatch Internet Monitor query that you created and ran. The query sets up a repository of data that is a subset of your application's Internet Monitor data. FilterParameter is a string that defines how you want to filter the repository of data to return a set of results, based on your criteria.

The filter parameters that you can specify depend on the query type that you used to create the repository, since each query type returns a different set of Internet Monitor data.

For each filter, you specify a field (such as city), an operator (such as not_equals, and a value or array of values (such as [\"Seattle\", \"Redmond\"]). Separate values in the array with commas.

For more information about specifying filter parameters, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

", + "refs": { + "FilterParameters$member": null + } + }, + "FilterParameters": { + "base": null, + "refs": { + "StartQueryInput$FilterParameters": "

The FilterParameters field that you use with Amazon CloudWatch Internet Monitor queries is a string the defines how you want a query to be filtered. The filter parameters that you can specify depend on the query type, since each query type returns a different set of Internet Monitor data.

For more information about specifying filter parameters, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

" + } + }, "GetHealthEventInput": { "base": null, "refs": { @@ -101,6 +123,26 @@ "refs": { } }, + "GetQueryResultsInput": { + "base": null, + "refs": { + } + }, + "GetQueryResultsOutput": { + "base": null, + "refs": { + } + }, + "GetQueryStatusInput": { + "base": null, + "refs": { + } + }, + "GetQueryStatusOutput": { + "base": null, + "refs": { + } + }, "HealthEvent": { "base": "

Information about a health event created in a monitor in Amazon CloudWatch Internet Monitor.

", "refs": { @@ -123,9 +165,9 @@ "HealthEventName": { "base": null, "refs": { - "GetHealthEventInput$EventId": "

The internally generated identifier of a health event. Because EventID contains the forward slash (“/”) character, you must URL-encode the EventID field in the request URL.

", - "GetHealthEventOutput$EventId": "

The internally generated identifier of a health event.

", - "HealthEvent$EventId": "

The internally generated identifier of a specific network traffic impairment health event.

" + "GetHealthEventInput$EventId": "

The internally-generated identifier of a health event. Because EventID contains the forward slash (“/”) character, you must URL-encode the EventID field in the request URL.

", + "GetHealthEventOutput$EventId": "

The internally-generated identifier of a health event.

", + "HealthEvent$EventId": "

The internally-generated identifier of a specific network traffic impairment health event.

" } }, "HealthEventStatus": { @@ -218,7 +260,7 @@ } }, "LocalHealthEventsConfig": { - "base": "

A complex type with the configuration information that determines the threshold and other conditions for when Internet Monitor creates a health event for a local performance or availability issue, when scores cross a threshold for one or more city-networks.

Defines the percentages, for performance scores or availability scores, that are the local thresholds for when Amazon CloudWatch Internet Monitor creates a health event. Also defines whether a local threshold is enabled or disabled, and the minimum percentage of overall traffic that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

For more information, see Change health event thresholds in the Internet Monitor section of the CloudWatch User Guide.

", + "base": "

A complex type with the configuration information that determines the threshold and other conditions for when Internet Monitor creates a health event for a local performance or availability issue, when scores cross a threshold for one or more city-networks.

Defines the percentages, for performance scores or availability scores, that are the local thresholds for when Amazon CloudWatch Internet Monitor creates a health event. Also defines whether a local threshold is enabled or disabled, and the minimum percentage of overall traffic that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

If you don't set a local health event threshold, the default value is 60%.

For more information, see Change health event thresholds in the Internet Monitor section of the CloudWatch User Guide.

", "refs": { "HealthEventsConfig$AvailabilityLocalHealthEventsConfig": "

The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local availability issue.

", "HealthEventsConfig$PerformanceLocalHealthEventsConfig": "

The configuration that determines the threshold and other conditions for when Internet Monitor creates a health event for a local performance issue.

" @@ -323,6 +365,12 @@ "refs": { } }, + "Operator": { + "base": null, + "refs": { + "FilterParameter$Operator": "

The operator to use with the filter field and a value, such as not_equals.

" + } + }, "Percentage": { "base": null, "refs": { @@ -331,7 +379,7 @@ "HealthEventsConfig$AvailabilityScoreThreshold": "

The health event threshold percentage set for availability scores.

", "HealthEventsConfig$PerformanceScoreThreshold": "

The health event threshold percentage set for performance scores.

", "LocalHealthEventsConfig$HealthScoreThreshold": "

The health event threshold percentage set for a local health score.

", - "LocalHealthEventsConfig$MinTrafficImpact": "

The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

" + "LocalHealthEventsConfig$MinTrafficImpact": "

The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score.

If you don't set a minimum traffic impact threshold, the default value is 0.01%.

" } }, "PerformanceMeasurement": { @@ -340,6 +388,48 @@ "InternetHealth$Performance": "

Performance in Internet Monitor represents the estimated percentage of traffic that is not seeing a performance drop. For example, a performance score of 99% for an end user and service location pair is equivalent to 1% of the traffic experiencing a performance drop for that pair.

For more information, see How Internet Monitor calculates performance and availability scores in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.

" } }, + "QueryData": { + "base": null, + "refs": { + "GetQueryResultsOutput$Data": "

The data results that the query returns. Data is returned in arrays, aligned with the Fields for the query, which creates a repository of Amazon CloudWatch Internet Monitor information for your application. Then, you can filter the information in the repository by using FilterParameters that you define.

" + } + }, + "QueryField": { + "base": "

Defines a field to query for your application's Amazon CloudWatch Internet Monitor data. You create a data repository by running a query of a specific type. Each QueryType includes a specific set of fields and datatypes to retrieve data for.

", + "refs": { + "QueryFields$member": null + } + }, + "QueryFields": { + "base": null, + "refs": { + "GetQueryResultsOutput$Fields": "

The fields that the query returns data for. Fields are name-data type pairs, such as availability_score-float.

" + } + }, + "QueryMaxResults": { + "base": null, + "refs": { + "GetQueryResultsInput$MaxResults": "

The number of query results that you want to return with this call.

" + } + }, + "QueryRow": { + "base": null, + "refs": { + "QueryData$member": null + } + }, + "QueryStatus": { + "base": null, + "refs": { + "GetQueryStatusOutput$Status": "

The current status for a query.

" + } + }, + "QueryType": { + "base": null, + "refs": { + "StartQueryInput$QueryType": "

The type of query to run. The following are the three types of queries that you can run using the Internet Monitor query interface:

  • MEASUREMENTS: TBD definition

  • TOP_LOCATIONS: TBD definition

  • TOP_LOCATION_DETAILS: TBD definition

For lists of the fields returned with each query type and more information about how each type of query is performed, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

" + } + }, "ResourceName": { "base": null, "refs": { @@ -348,8 +438,12 @@ "GetHealthEventInput$MonitorName": "

The name of the monitor.

", "GetMonitorInput$MonitorName": "

The name of the monitor.

", "GetMonitorOutput$MonitorName": "

The name of the monitor.

", + "GetQueryResultsInput$MonitorName": "

The name of the monitor to return data for.

", + "GetQueryStatusInput$MonitorName": "

The name of the monitor.

", "ListHealthEventsInput$MonitorName": "

The name of the monitor.

", "Monitor$MonitorName": "

The name of the monitor.

", + "StartQueryInput$MonitorName": "

The name of the monitor to query.

", + "StopQueryInput$MonitorName": "

The name of the monitor.

", "UpdateMonitorInput$MonitorName": "

The name of the monitor.

" } }, @@ -385,6 +479,26 @@ "UpdateMonitorInput$ResourcesToRemove": "

The resources to remove from a monitor, which you provide as a set of Amazon Resource Names (ARNs).

" } }, + "StartQueryInput": { + "base": null, + "refs": { + } + }, + "StartQueryOutput": { + "base": null, + "refs": { + } + }, + "StopQueryInput": { + "base": null, + "refs": { + } + }, + "StopQueryOutput": { + "base": null, + "refs": { + } + }, "String": { "base": null, "refs": { @@ -392,7 +506,13 @@ "BadRequestException$message": null, "ConflictException$message": null, "CreateMonitorInput$ClientToken": "

A unique, case-sensitive string of up to 64 ASCII characters that you specify to make an idempotent API request. Don't reuse the same client token for other API requests.

", + "FilterList$member": null, + "FilterParameter$Field": "

A data field that you want to filter, to further scope your application's Internet Monitor data in a repository that you created by running a query. A field might be city, for example. The field must be one of the fields that was returned by the specific query that you used to create the repository.

", "GetMonitorOutput$ProcessingStatusInfo": "

Additional information about the health of the data processing for the monitor.

", + "GetQueryResultsInput$QueryId": "

The ID of the query that you want to return data results for. A QueryId is an internally-generated identifier for a specific query.

", + "GetQueryResultsInput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "GetQueryResultsOutput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "GetQueryStatusInput$QueryId": "

The ID of the query that you want to return the status for. A QueryId is an internally-generated dentifier for a specific query.

", "ImpactedLocation$ASName": "

The name of the network at an impacted location.

", "ImpactedLocation$Country": "

The name of the country where the health event is located.

", "ImpactedLocation$Subdivision": "

The subdivision location where the health event is located. The subdivision usually maps to states in most countries (including the United States). For United Kingdom, it maps to a country (England, Scotland, Wales) or province (Northern Ireland).

", @@ -411,8 +531,13 @@ "ListMonitorsOutput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "Network$ASName": "

The internet provider name or network name.

", "NotFoundException$message": null, + "QueryField$Name": "

The name of a field to query your application's Amazon CloudWatch Internet Monitor data for, such as availability_score.

", + "QueryField$Type": "

The data type for a query field, which must correspond to the field you're defining for QueryField. For example, if the query field name is availability_score, the data type is float.

", + "QueryRow$member": null, "ResourceNotFoundException$message": null, "S3Config$BucketPrefix": "

The Amazon S3 bucket prefix.

", + "StartQueryOutput$QueryId": "

The internally-generated identifier of a specific query.

", + "StopQueryInput$QueryId": "

The ID of the query that you want to stop. A QueryId is an internally-generated identifier for a specific query.

", "ThrottlingException$message": null, "TooManyRequestsException$message": null, "UpdateMonitorInput$ClientToken": "

A unique, case-sensitive string of up to 64 ASCII characters that you specify to make an idempotent API request. You should not reuse the same client token for other API requests.

", @@ -433,7 +558,9 @@ "HealthEvent$CreatedAt": "

When the health event was created.

", "HealthEvent$LastUpdatedAt": "

When the health event was last updated.

", "ListHealthEventsInput$StartTime": "

The time when a health event started.

", - "ListHealthEventsInput$EndTime": "

The time when a health event ended. If the health event is still ongoing, then the end time is not set.

" + "ListHealthEventsInput$EndTime": "

The time when a health event ended. If the health event is still ongoing, then the end time is not set.

", + "StartQueryInput$StartTime": "

The timestamp that is the beginning of the period that you want to retrieve data for with your query.

", + "StartQueryInput$EndTime": "

The timestamp that is the end of the period that you want to retrieve data for with your query.

" } }, "TagKey": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/internetmonitor/2021-06-03/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/internetmonitor/2021-06-03/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,10 @@ { "pagination": { + "GetQueryResults": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListHealthEvents": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iot/2015-05-28/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iot/2015-05-28/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iot/2015-05-28/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iot/2015-05-28/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4893,7 +4893,8 @@ "metric":{"shape":"BehaviorMetric"}, "metricDimension":{"shape":"MetricDimension"}, "criteria":{"shape":"BehaviorCriteria"}, - "suppressAlerts":{"shape":"SuppressAlerts"} + "suppressAlerts":{"shape":"SuppressAlerts"}, + "exportMetric":{"shape":"ExportMetric"} } }, "BehaviorCriteria":{ @@ -6130,7 +6131,8 @@ "deprecatedMessage":"Use additionalMetricsToRetainV2." }, "additionalMetricsToRetainV2":{"shape":"AdditionalMetricsToRetainV2List"}, - "tags":{"shape":"TagList"} + "tags":{"shape":"TagList"}, + "metricsExportConfig":{"shape":"MetricsExportConfig"} } }, "CreateSecurityProfileResponse":{ @@ -6592,6 +6594,7 @@ } } }, + "DeleteMetricsExportConfig":{"type":"boolean"}, "DeleteMitigationActionRequest":{ "type":"structure", "required":["actionName"], @@ -7562,7 +7565,8 @@ "additionalMetricsToRetainV2":{"shape":"AdditionalMetricsToRetainV2List"}, "version":{"shape":"Version"}, "creationDate":{"shape":"Timestamp"}, - "lastModifiedDate":{"shape":"Timestamp"} + "lastModifiedDate":{"shape":"Timestamp"}, + "metricsExportConfig":{"shape":"MetricsExportConfig"} } }, "DescribeStreamRequest":{ @@ -8185,6 +8189,7 @@ "rateIncreaseCriteria":{"shape":"RateIncreaseCriteria"} } }, + "ExportMetric":{"type":"boolean"}, "FailedChecksCount":{"type":"integer"}, "FailedFindingsCount":{"type":"long"}, "FailedThings":{"type":"integer"}, @@ -8323,6 +8328,17 @@ "FunctionArn":{"type":"string"}, "GenerationId":{"type":"string"}, "GenericLongValue":{"type":"long"}, + "GeoLocationTarget":{ + "type":"structure", + "members":{ + "name":{"shape":"TargetFieldName"}, + "order":{"shape":"TargetFieldOrder"} + } + }, + "GeoLocationsFilter":{ + "type":"list", + "member":{"shape":"GeoLocationTarget"} + }, "GetBehaviorModelTrainingSummariesRequest":{ "type":"structure", "members":{ @@ -8819,7 +8835,8 @@ "IndexingFilter":{ "type":"structure", "members":{ - "namedShadowNames":{"shape":"NamedShadowNamesFilter"} + "namedShadowNames":{"shape":"NamedShadowNamesFilter"}, + "geoLocations":{"shape":"GeoLocationsFilter"} } }, "InlineDocument":{"type":"string"}, @@ -9190,9 +9207,37 @@ "topic":{"shape":"String"}, "key":{"shape":"String"}, "partition":{"shape":"String"}, - "clientProperties":{"shape":"ClientProperties"} + "clientProperties":{"shape":"ClientProperties"}, + "headers":{"shape":"KafkaHeaders"} + } + }, + "KafkaActionHeader":{ + "type":"structure", + "required":[ + "key", + "value" + ], + "members":{ + "key":{"shape":"KafkaHeaderKey"}, + "value":{"shape":"KafkaHeaderValue"} } }, + "KafkaHeaderKey":{ + "type":"string", + "max":16384, + "min":0 + }, + "KafkaHeaderValue":{ + "type":"string", + "max":16384, + "min":0 + }, + "KafkaHeaders":{ + "type":"list", + "member":{"shape":"KafkaActionHeader"}, + "max":100, + "min":1 + }, "Key":{"type":"string"}, "KeyName":{ "type":"string", @@ -11147,7 +11192,9 @@ "THING_GROUP", "CLIENT_ID", "SOURCE_IP", - "PRINCIPAL_ID" + "PRINCIPAL_ID", + "EVENT_TYPE", + "DEVICE_DEFENDER" ] }, "LoggingOptionsPayload":{ @@ -11291,7 +11338,8 @@ "required":["metric"], "members":{ "metric":{"shape":"BehaviorMetric"}, - "metricDimension":{"shape":"MetricDimension"} + "metricDimension":{"shape":"MetricDimension"}, + "exportMetric":{"shape":"ExportMetric"} } }, "MetricValue":{ @@ -11305,6 +11353,17 @@ "strings":{"shape":"StringList"} } }, + "MetricsExportConfig":{ + "type":"structure", + "required":[ + "mqttTopic", + "roleArn" + ], + "members":{ + "mqttTopic":{"shape":"MqttTopic"}, + "roleArn":{"shape":"RoleArn"} + } + }, "Minimum":{"type":"double"}, "MinimumNumberOfExecutedThings":{ "type":"integer", @@ -11419,6 +11478,11 @@ "max":65535, "min":1 }, + "MqttTopic":{ + "type":"string", + "max":512, + "min":1 + }, "MqttUsername":{ "type":"string", "max":65535, @@ -12684,7 +12748,7 @@ "type":"string", "max":64, "min":1, - "pattern":"[a-zA-Z0-9:_-]+" + "pattern":"[$a-zA-Z0-9:_-]+" }, "SigV4Authorization":{ "type":"structure", @@ -13088,6 +13152,14 @@ "type":"list", "member":{"shape":"AuditCheckName"} }, + "TargetFieldName":{"type":"string"}, + "TargetFieldOrder":{ + "type":"string", + "enum":[ + "LatLon", + "LonLat" + ] + }, "TargetSelection":{ "type":"string", "enum":[ @@ -14197,7 +14269,9 @@ "shape":"OptionalVersion", "location":"querystring", "locationName":"expectedVersion" - } + }, + "metricsExportConfig":{"shape":"MetricsExportConfig"}, + "deleteMetricsExportConfig":{"shape":"DeleteMetricsExportConfig"} } }, "UpdateSecurityProfileResponse":{ @@ -14216,7 +14290,8 @@ "additionalMetricsToRetainV2":{"shape":"AdditionalMetricsToRetainV2List"}, "version":{"shape":"Version"}, "creationDate":{"shape":"Timestamp"}, - "lastModifiedDate":{"shape":"Timestamp"} + "lastModifiedDate":{"shape":"Timestamp"}, + "metricsExportConfig":{"shape":"MetricsExportConfig"} } }, "UpdateStreamRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iot/2015-05-28/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iot/2015-05-28/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iot/2015-05-28/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iot/2015-05-28/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -21,7 +21,7 @@ "CreateAuditSuppression": "

Creates a Device Defender audit suppression.

Requires permission to access the CreateAuditSuppression action.

", "CreateAuthorizer": "

Creates an authorizer.

Requires permission to access the CreateAuthorizer action.

", "CreateBillingGroup": "

Creates a billing group.

Requires permission to access the CreateBillingGroup action.

", - "CreateCertificateFromCsr": "

Creates an X.509 certificate using the specified certificate signing request.

Requires permission to access the CreateCertificateFromCsr action.

The CSR must include a public key that is either an RSA key with a length of at least 2048 bits or an ECC key from NIST P-256 or NIST P-384 curves. For supported certificates, consult Certificate signing algorithms supported by IoT.

Reusing the same certificate signing request (CSR) results in a distinct certificate.

You can create multiple certificates in a batch by creating a directory, copying multiple .csr files into that directory, and then specifying that directory on the command line. The following commands show how to create a batch of certificates given a batch of CSRs. In the following commands, we assume that a set of CSRs are located inside of the directory my-csr-directory:

On Linux and OS X, the command is:

$ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

This command lists all of the CSRs in my-csr-directory and pipes each CSR file name to the aws iot create-certificate-from-csr Amazon Web Services CLI command to create a certificate for the corresponding CSR.

You can also run the aws iot create-certificate-from-csr part of the command in parallel to speed up the certificate creation process:

$ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

On Windows PowerShell, the command to create certificates for all CSRs in my-csr-directory is:

> ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/$_}

On a Windows command prompt, the command to create certificates for all CSRs in my-csr-directory is:

> forfiles /p my-csr-directory /c \"cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path\"

", + "CreateCertificateFromCsr": "

Creates an X.509 certificate using the specified certificate signing request.

Requires permission to access the CreateCertificateFromCsr action.

The CSR must include a public key that is either an RSA key with a length of at least 2048 bits or an ECC key from NIST P-256, NIST P-384, or NIST P-521 curves. For supported certificates, consult Certificate signing algorithms supported by IoT.

Reusing the same certificate signing request (CSR) results in a distinct certificate.

You can create multiple certificates in a batch by creating a directory, copying multiple .csr files into that directory, and then specifying that directory on the command line. The following commands show how to create a batch of certificates given a batch of CSRs. In the following commands, we assume that a set of CSRs are located inside of the directory my-csr-directory:

On Linux and OS X, the command is:

$ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

This command lists all of the CSRs in my-csr-directory and pipes each CSR file name to the aws iot create-certificate-from-csr Amazon Web Services CLI command to create a certificate for the corresponding CSR.

You can also run the aws iot create-certificate-from-csr part of the command in parallel to speed up the certificate creation process:

$ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

On Windows PowerShell, the command to create certificates for all CSRs in my-csr-directory is:

> ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/$_}

On a Windows command prompt, the command to create certificates for all CSRs in my-csr-directory is:

> forfiles /p my-csr-directory /c \"cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path\"

", "CreateCustomMetric": "

Use this API to define a Custom Metric published by your devices to Device Defender.

Requires permission to access the CreateCustomMetric action.

", "CreateDimension": "

Create a dimension that you can use to limit the scope of a metric used in a security profile for IoT Device Defender. For example, using a TOPIC_FILTER dimension, you can narrow down the scope of the metric only to MQTT topics whose name match the pattern specified in the dimension.

Requires permission to access the CreateDimension action.

", "CreateDomainConfiguration": "

Creates a domain configuration.

Requires permission to access the CreateDomainConfiguration action.

", @@ -44,7 +44,7 @@ "CreateSecurityProfile": "

Creates a Device Defender security profile.

Requires permission to access the CreateSecurityProfile action.

", "CreateStream": "

Creates a stream for delivering one or more large files in chunks over MQTT. A stream transports data bytes in chunks or blocks packaged as MQTT messages from a source like S3. You can have one or more files associated with a stream.

Requires permission to access the CreateStream action.

", "CreateThing": "

Creates a thing record in the registry. If this call is made multiple times using the same thing name and configuration, the call will succeed. If this call is made with the same thing name but different configuration a ResourceAlreadyExistsException is thrown.

This is a control plane operation. See Authorization for information about authorizing control plane actions.

Requires permission to access the CreateThing action.

", - "CreateThingGroup": "

Create a thing group.

This is a control plane operation. See Authorization for information about authorizing control plane actions.

Requires permission to access the CreateThingGroup action.

", + "CreateThingGroup": "

Create a thing group.

This is a control plane operation. See Authorization for information about authorizing control plane actions.

If the ThingGroup that you create has the exact same attributes as an existing ThingGroup, you will get a 200 success response.

Requires permission to access the CreateThingGroup action.

", "CreateThingType": "

Creates a new thing type.

Requires permission to access the CreateThingType action.

", "CreateTopicRule": "

Creates a rule. Creating rules is an administrator-level action. Any user who has permission to create rules will be able to access data processed by the rule.

Requires permission to access the CreateTopicRule action.

", "CreateTopicRuleDestination": "

Creates a topic rule destination. The destination must be confirmed prior to use.

Requires permission to access the CreateTopicRuleDestination action.

", @@ -65,7 +65,7 @@ "DeleteMitigationAction": "

Deletes a defined mitigation action from your Amazon Web Services accounts.

Requires permission to access the DeleteMitigationAction action.

", "DeleteOTAUpdate": "

Delete an OTA update.

Requires permission to access the DeleteOTAUpdate action.

", "DeletePackage": "

Deletes a specific version from a software package.

Note: All package versions must be deleted before deleting the software package.

Requires permission to access the DeletePackageVersion action.

", - "DeletePackageVersion": "

Deletes a specific version from a software package.

Note: If a package version is designated as default, you must remove the designation from the package using the UpdatePackage action.

", + "DeletePackageVersion": "

Deletes a specific version from a software package.

Note: If a package version is designated as default, you must remove the designation from the software package using the UpdatePackage action.

", "DeletePolicy": "

Deletes the specified policy.

A policy cannot be deleted if it has non-default versions or it is attached to any certificate.

To delete a policy, use the DeletePolicyVersion action to delete all non-default versions of the policy; use the DetachPolicy action to detach the policy from any certificate; and then use the DeletePolicy action to delete the policy.

When a policy is deleted using DeletePolicy, its default version is deleted with it.

Because of the distributed nature of Amazon Web Services, it can take up to five minutes after a policy is detached before it's ready to be deleted.

Requires permission to access the DeletePolicy action.

", "DeletePolicyVersion": "

Deletes the specified version of the specified policy. You cannot delete the default version of a policy using this action. To delete the default version of a policy, use DeletePolicy. To find out which version of a policy is marked as the default version, use ListPolicyVersions.

Requires permission to access the DeletePolicyVersion action.

", "DeleteProvisioningTemplate": "

Deletes a provisioning template.

Requires permission to access the DeleteProvisioningTemplate action.

", @@ -239,8 +239,8 @@ "UpdateIndexingConfiguration": "

Updates the search configuration.

Requires permission to access the UpdateIndexingConfiguration action.

", "UpdateJob": "

Updates supported fields of the specified job.

Requires permission to access the UpdateJob action.

", "UpdateMitigationAction": "

Updates the definition for the specified mitigation action.

Requires permission to access the UpdateMitigationAction action.

", - "UpdatePackage": "

Updates the supported fields for a specific package.

Requires permission to access the UpdatePackage and GetIndexingConfiguration actions.

", - "UpdatePackageConfiguration": "

Updates the package configuration.

Requires permission to access the UpdatePackageConfiguration and iam:PassRole actions.

", + "UpdatePackage": "

Updates the supported fields for a specific software package.

Requires permission to access the UpdatePackage and GetIndexingConfiguration actions.

", + "UpdatePackageConfiguration": "

Updates the software package configuration.

Requires permission to access the UpdatePackageConfiguration and iam:PassRole actions.

", "UpdatePackageVersion": "

Updates the supported fields for a specific package version.

Requires permission to access the UpdatePackageVersion and GetIndexingConfiguration actions.

", "UpdateProvisioningTemplate": "

Updates a provisioning template.

Requires permission to access the UpdateProvisioningTemplate action.

", "UpdateRoleAlias": "

Updates a role alias.

Requires permission to access the UpdateRoleAlias action.

", @@ -381,7 +381,7 @@ "AdditionalParameterMap": { "base": null, "refs": { - "CreateOTAUpdateRequest$additionalParameters": "

A list of additional OTA update parameters which are name-value pairs.

", + "CreateOTAUpdateRequest$additionalParameters": "

A list of additional OTA update parameters, which are name-value pairs. They won't be sent to devices as a part of the Job document.

", "OTAUpdateInfo$additionalParameters": "

A collection of name/value pairs

" } }, @@ -669,7 +669,7 @@ "AttributesMap": { "base": null, "refs": { - "OTAUpdateFile$attributes": "

A list of name/attribute pairs.

" + "OTAUpdateFile$attributes": "

A list of name-attribute pairs. They won't be sent to devices as a part of the Job document.

" } }, "AuditCheckConfiguration": { @@ -1204,7 +1204,7 @@ "BehaviorCriteria": { "base": "

The criteria by which the behavior is determined to be normal.

", "refs": { - "Behavior$criteria": "

The criteria that determine if a device is behaving normally in regard to the metric.

" + "Behavior$criteria": "

The criteria that determine if a device is behaving normally in regard to the metric.

In the IoT console, you can choose to be sent an alert through Amazon SNS when IoT Device Defender detects that a device is behaving anomalously.

" } }, "BehaviorCriteriaType": { @@ -2418,6 +2418,12 @@ "refs": { } }, + "DeleteMetricsExportConfig": { + "base": null, + "refs": { + "UpdateSecurityProfileRequest$deleteMetricsExportConfig": "

Set the value as true to delete metrics export related configurations.

" + } + }, "DeleteMitigationActionRequest": { "base": null, "refs": { @@ -2974,10 +2980,10 @@ "DestinationPackageVersions": { "base": null, "refs": { - "CreateJobRequest$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single string. Up to five strings are allowed.

", - "CreateJobTemplateRequest$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single string. Up to five strings are allowed.

", - "DescribeJobTemplateResponse$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single string. Up to five strings are allowed.

", - "Job$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single string. Up to five strings are allowed.

" + "CreateJobRequest$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.

", + "CreateJobTemplateRequest$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.

", + "DescribeJobTemplateResponse$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.

", + "Job$destinationPackageVersions": "

The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.

Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.

" } }, "DetachPolicyRequest": { @@ -3389,7 +3395,7 @@ "EndpointType": { "base": null, "refs": { - "DescribeEndpointRequest$endpointType": "

The endpoint type. Valid endpoint types include:

  • iot:Data - Returns a VeriSign signed data endpoint.

  • iot:Data-ATS - Returns an ATS signed data endpoint.

  • iot:CredentialProvider - Returns an IoT credentials provider API endpoint.

  • iot:Jobs - Returns an IoT device management Jobs API endpoint.

We strongly recommend that customers use the newer iot:Data-ATS endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities.

" + "DescribeEndpointRequest$endpointType": "

The endpoint type. Valid endpoint types include:

  • iot:Data - Returns a VeriSign signed data endpoint.

  • iot:Data-ATS - Returns an ATS signed data endpoint.

  • iot:CredentialProvider - Returns an IoT credentials provider API endpoint.

  • iot:Jobs - Returns an IoT device management Jobs API endpoint.

We strongly recommend that customers use the newer iot:Data-ATS endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.

" } }, "Environment": { @@ -3498,6 +3504,13 @@ "JobExecutionsRolloutConfig$exponentialRate": "

The rate of increase for a job rollout. This parameter allows you to define an exponential rate for a job rollout.

" } }, + "ExportMetric": { + "base": null, + "refs": { + "Behavior$exportMetric": "

Value indicates exporting metrics related to the behavior when it is true.

", + "MetricToRetain$exportMetric": "

Value added in both Behavior and AdditionalMetricsToRetainV2 to indicate if Device Defender Detect should export the corresponding metrics.

" + } + }, "FailedChecksCount": { "base": null, "refs": { @@ -3537,9 +3550,9 @@ "Fields": { "base": null, "refs": { - "ThingGroupIndexingConfiguration$managedFields": "

Contains fields that are indexed and whose types are already known by the Fleet Indexing service. This is an optional field. For more information, see Managed fields in the Amazon Web Services IoT Core Developer Guide.

", + "ThingGroupIndexingConfiguration$managedFields": "

Contains fields that are indexed and whose types are already known by the Fleet Indexing service. This is an optional field. For more information, see Managed fields in the Amazon Web Services IoT Core Developer Guide.

You can't modify managed fields by updating fleet indexing configuration.

", "ThingGroupIndexingConfiguration$customFields": "

A list of thing group fields to index. This list cannot contain any managed fields. Use the GetIndexingConfiguration API to get a list of managed fields.

Contains custom field names and their data type.

", - "ThingIndexingConfiguration$managedFields": "

Contains fields that are indexed and whose types are already known by the Fleet Indexing service.

", + "ThingIndexingConfiguration$managedFields": "

Contains fields that are indexed and whose types are already known by the Fleet Indexing service. This is an optional field. For more information, see Managed fields in the Amazon Web Services IoT Core Developer Guide.

You can't modify managed fields by updating fleet indexing configuration.

", "ThingIndexingConfiguration$customFields": "

Contains custom field names and their data type.

" } }, @@ -3711,6 +3724,18 @@ "DetectMitigationActionsTaskStatistics$actionsFailed": "

The actions that failed.

" } }, + "GeoLocationTarget": { + "base": "

A geolocation target that you select to index. Each geolocation target contains a name and order key-value pair that specifies the geolocation target fields.

", + "refs": { + "GeoLocationsFilter$member": null + } + }, + "GeoLocationsFilter": { + "base": null, + "refs": { + "IndexingFilter$geoLocations": "

The list of geolocation targets that you select to index. The default maximum number of geolocation targets for indexing is 1. To increase the limit, see Amazon Web Services IoT Device Management Quotas in the Amazon Web Services General Reference.

" + } + }, "GetBehaviorModelTrainingSummariesRequest": { "base": null, "refs": { @@ -4084,9 +4109,9 @@ } }, "IndexingFilter": { - "base": "

Provides additional filters for specific data sources. Named shadow is the only data source that currently supports and requires a filter. To add named shadows to your fleet indexing configuration, set namedShadowIndexingMode to be ON and specify your shadow names in filter.

", + "base": "

Provides additional selections for named shadows and geolocation data.

To add named shadows to your fleet indexing configuration, set namedShadowIndexingMode to be ON and specify your shadow names in namedShadowNames filter.

To add geolocation data to your fleet indexing configuration:

  • If you store geolocation data in a class/unnamed shadow, set thingIndexingMode to be REGISTRY_AND_SHADOW and specify your geolocation data in geoLocations filter.

  • If you store geolocation data in a named shadow, set namedShadowIndexingMode to be ON, add the shadow name in namedShadowNames filter, and specify your geolocation data in geoLocations filter. For more information, see Managing fleet indexing.

", "refs": { - "ThingIndexingConfiguration$filter": "

Provides additional filters for specific data sources. Named shadow is the only data source that currently supports and requires a filter. To add named shadows to your fleet indexing configuration, set namedShadowIndexingMode to be ON and specify your shadow names in filter.

" + "ThingIndexingConfiguration$filter": "

Provides additional selections for named shadows and geolocation data.

To add named shadows to your fleet indexing configuration, set namedShadowIndexingMode to be ON and specify your shadow names in namedShadowNames filter.

To add geolocation data to your fleet indexing configuration:

  • If you store geolocation data in a class/unnamed shadow, set thingIndexingMode to be REGISTRY_AND_SHADOW and specify your geolocation data in geoLocations filter.

  • If you store geolocation data in a named shadow, set namedShadowIndexingMode to be ON, add the shadow name in namedShadowNames filter, and specify your geolocation data in geoLocations filter. For more information, see Managing fleet indexing.

" } }, "InlineDocument": { @@ -4263,7 +4288,7 @@ "base": null, "refs": { "CreateJobRequest$documentSource": "

An S3 link, or S3 object URL, to the job document. The link is an Amazon S3 object URL and is required if you don't specify a value for document.

For example, --document-source https://s3.region-code.amazonaws.com/example-firmware/device-firmware.1.0

For more information, see Methods for accessing a bucket.

", - "CreateJobTemplateRequest$documentSource": "

An S3 link to the job document to use in the template. Required if you don't specify a value for document.

If the job document resides in an S3 bucket, you must use a placeholder link when specifying the document.

The placeholder link is of the following form:

${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}

where bucket is your bucket name and key is the object in the bucket to which you are linking.

", + "CreateJobTemplateRequest$documentSource": "

An S3 link, or S3 object URL, to the job document. The link is an Amazon S3 object URL and is required if you don't specify a value for document.

For example, --document-source https://s3.region-code.amazonaws.com/example-firmware/device-firmware.1.0

For more information, see Methods for accessing a bucket.

", "DescribeJobResponse$documentSource": "

An S3 link to the job document.

", "DescribeJobTemplateResponse$documentSource": "

An S3 link to the job document.

" } @@ -4458,6 +4483,30 @@ "Action$kafka": "

Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.

" } }, + "KafkaActionHeader": { + "base": "

Specifies a Kafka header using key-value pairs when you create a Rule’s Kafka Action. You can use these headers to route data from IoT clients to downstream Kafka clusters without modifying your message payload.

For more information about Rule's Kafka action, see Apache Kafka.

", + "refs": { + "KafkaHeaders$member": null + } + }, + "KafkaHeaderKey": { + "base": null, + "refs": { + "KafkaActionHeader$key": "

The key of the Kafka header.

" + } + }, + "KafkaHeaderValue": { + "base": null, + "refs": { + "KafkaActionHeader$value": "

The value of the Kafka header.

" + } + }, + "KafkaHeaders": { + "base": null, + "refs": { + "KafkaAction$headers": "

The list of Kafka headers that you specify.

" + } + }, "Key": { "base": null, "refs": { @@ -5419,6 +5468,15 @@ "ViolationEvent$metricValue": "

The value of the metric (the measurement).

" } }, + "MetricsExportConfig": { + "base": "

Set configurations for metrics export.

", + "refs": { + "CreateSecurityProfileRequest$metricsExportConfig": "

Specifies the MQTT topic and role ARN required for metric export.

", + "DescribeSecurityProfileResponse$metricsExportConfig": "

Specifies the MQTT topic and role ARN required for metric export.

", + "UpdateSecurityProfileRequest$metricsExportConfig": "

Specifies the MQTT topic and role ARN required for metric export.

", + "UpdateSecurityProfileResponse$metricsExportConfig": "

Specifies the MQTT topic and role ARN required for metric export.

" + } + }, "Minimum": { "base": null, "refs": { @@ -5574,6 +5632,12 @@ "MqttContext$password": "

The value of the password key in an MQTT authorization request.

" } }, + "MqttTopic": { + "base": null, + "refs": { + "MetricsExportConfig$mqttTopic": "

The MQTT topic that Device Defender Detect should publish messages to for metrics export.

" + } + }, "MqttUsername": { "base": null, "refs": { @@ -5905,20 +5969,20 @@ "PackageName": { "base": null, "refs": { - "CreatePackageRequest$packageName": "

The name of the new package.

", - "CreatePackageResponse$packageName": "

The name of the package.

", - "CreatePackageVersionRequest$packageName": "

The name of the associated package.

", - "CreatePackageVersionResponse$packageName": "

The name of the associated package.

", - "DeletePackageRequest$packageName": "

The name of the target package.

", - "DeletePackageVersionRequest$packageName": "

The name of the associated package.

", - "GetPackageRequest$packageName": "

The name of the target package.

", - "GetPackageResponse$packageName": "

The name of the package.

", + "CreatePackageRequest$packageName": "

The name of the new software package.

", + "CreatePackageResponse$packageName": "

The name of the software package.

", + "CreatePackageVersionRequest$packageName": "

The name of the associated software package.

", + "CreatePackageVersionResponse$packageName": "

The name of the associated software package.

", + "DeletePackageRequest$packageName": "

The name of the target software package.

", + "DeletePackageVersionRequest$packageName": "

The name of the associated software package.

", + "GetPackageRequest$packageName": "

The name of the target software package.

", + "GetPackageResponse$packageName": "

The name of the software package.

", "GetPackageVersionRequest$packageName": "

The name of the associated package.

", - "GetPackageVersionResponse$packageName": "

The name of the package.

", - "ListPackageVersionsRequest$packageName": "

The name of the target package.

", - "PackageSummary$packageName": "

The name for the target package.

", + "GetPackageVersionResponse$packageName": "

The name of the software package.

", + "ListPackageVersionsRequest$packageName": "

The name of the target software package.

", + "PackageSummary$packageName": "

The name for the target software package.

", "PackageVersionSummary$packageName": "

The name of the associated software package.

", - "UpdatePackageRequest$packageName": "

The name of the target package.

", + "UpdatePackageRequest$packageName": "

The name of the target software package.

", "UpdatePackageVersionRequest$packageName": "

The name of the associated software package.

" } }, @@ -6413,7 +6477,7 @@ "base": null, "refs": { "ListIndicesRequest$maxResults": "

The maximum number of results to return at one time.

", - "SearchIndexRequest$maxResults": "

The maximum number of results to return at one time.

" + "SearchIndexRequest$maxResults": "

The maximum number of results to return per page at one time. The response might contain fewer results but will never contain more.

" } }, "QueryString": { @@ -6767,7 +6831,7 @@ "CreatePackageVersionRequest$attributes": "

Metadata that can be used to define a package version’s configuration. For example, the S3 file location, configuration options that are being sent to the device or fleet.

The combined size of all the attributes on a package version is limited to 3KB.

", "CreatePackageVersionResponse$attributes": "

Metadata that were added to the package version that can be used to define a package version’s configuration.

", "GetPackageVersionResponse$attributes": "

Metadata that were added to the package version that can be used to define a package version’s configuration.

", - "UpdatePackageVersionRequest$attributes": "

Metadata that can be used to define a package version’s configuration. For example, the S3 file location, configuration options that are being sent to the device or fleet.

Note: Attributes can be updated only when the package version is in a draft state.

The combined size of all the attributes on a package version is limited to 3KB.

" + "UpdatePackageVersionRequest$attributes": "

Metadata that can be used to define a package version’s configuration. For example, the Amazon S3 file location, configuration options that are being sent to the device or fleet.

Note: Attributes can be updated only when the package version is in a draft state.

The combined size of all the attributes on a package version is limited to 3KB.

" } }, "ResourceDescription": { @@ -6906,6 +6970,7 @@ "DescribeProvisioningTemplateResponse$provisioningRoleArn": "

The ARN of the role associated with the provisioning template. This IoT role grants permission to provision a device.

", "DescribeThingRegistrationTaskResponse$roleArn": "

The role ARN that grants access to the input file bucket.

", "EnableIoTLoggingParams$roleArnForLogging": "

The Amazon Resource Name (ARN) of the IAM role used for logging.

", + "MetricsExportConfig$roleArn": "

This role ARN has permission to publish MQTT messages, after which Device Defender Detect can assume the role and publish messages on your behalf.

", "MitigationAction$roleArn": "

The IAM role ARN used to apply this mitigation action.

", "PresignedUrlConfig$roleArn": "

The ARN of an IAM role that grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.

For information about addressing the confused deputy problem, see cross-service confused deputy prevention in the Amazon Web Services IoT Core developer guide.

", "RegistrationConfig$roleArn": "

The ARN of the role.

", @@ -7623,8 +7688,8 @@ "base": null, "refs": { "ScheduledJobRollout$startTime": "

Displays the start times of the next seven maintenance window occurrences.

", - "SchedulingConfig$startTime": "

The time a job will begin rollout of the job document to all devices in the target group for a job. The startTime can be scheduled up to a year in advance and must be scheduled a minimum of thirty minutes from the current time. The date and time format for the startTime is YYYY-MM-DD for the date and HH:MM for the time.

", - "SchedulingConfig$endTime": "

The time a job will stop rollout of the job document to all devices in the target group for a job. The endTime must take place no later than two years from the current time and be scheduled a minimum of thirty minutes from the current time. The minimum duration between startTime and endTime is thirty minutes. The maximum duration between startTime and endTime is two years. The date and time format for the endTime is YYYY-MM-DD for the date and HH:MM for the time.

" + "SchedulingConfig$startTime": "

The time a job will begin rollout of the job document to all devices in the target group for a job. The startTime can be scheduled up to a year in advance and must be scheduled a minimum of thirty minutes from the current time. The date and time format for the startTime is YYYY-MM-DD for the date and HH:MM for the time.

For more information on the syntax for startTime when using an API command or the Command Line Interface, see Timestamp.

", + "SchedulingConfig$endTime": "

The time a job will stop rollout of the job document to all devices in the target group for a job. The endTime must take place no later than two years from the current time and be scheduled a minimum of thirty minutes from the current time. The minimum duration between startTime and endTime is thirty minutes. The maximum duration between startTime and endTime is two years. The date and time format for the endTime is YYYY-MM-DD for the date and HH:MM for the time.

For more information on the syntax for endTime when using an API command or the Command Line Interface, see Timestamp.

" } }, "StringList": { @@ -7800,6 +7865,18 @@ "UpdateScheduledAuditRequest$targetCheckNames": "

Which checks are performed during the scheduled audit. Checks must be enabled for your account. (Use DescribeAccountAuditConfiguration to see the list of all checks, including those that are enabled or use UpdateAccountAuditConfiguration to select which checks are enabled.)

" } }, + "TargetFieldName": { + "base": null, + "refs": { + "GeoLocationTarget$name": "

The name of the geolocation target field. If the target field is part of a named shadow, you must select the named shadow using the namedShadow filter.

" + } + }, + "TargetFieldOrder": { + "base": null, + "refs": { + "GeoLocationTarget$order": "

The order of the geolocation target field. This field is optional. The default value is LatLon.

" + } + }, "TargetSelection": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iot/2015-05-28/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iot/2015-05-28/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iot/2015-05-28/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iot/2015-05-28/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,368 +57,333 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iot-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://iot-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iot-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://iot-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iot.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], + "conditions": [], "endpoint": { - "url": "https://iot.{Region}.amazonaws.com", + "url": "https://iot.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" - }, + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", { - "conditions": [ + "fn": "getAttr", + "argv": [ { - "fn": "stringEquals", - "argv": [ - "aws-cn", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://iot.{Region}.amazonaws.com.cn", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://iot.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-cn", { - "conditions": [ + "fn": "getAttr", + "argv": [ { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://iot.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://iot.{Region}.amazonaws.com.cn", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", { - "conditions": [], - "endpoint": { - "url": "https://iot.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] } ] } - ] + ], + "endpoint": { + "url": "https://iot.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://iot.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotfleetwise/2021-06-17/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotfleetwise/2021-06-17/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotfleetwise/2021-06-17/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotfleetwise/2021-06-17/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -24,6 +24,7 @@ "errors":[ {"shape":"InternalServerException"}, {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, {"shape":"ThrottlingException"}, {"shape":"ValidationException"}, {"shape":"AccessDeniedException"} @@ -325,6 +326,22 @@ {"shape":"AccessDeniedException"} ] }, + "GetEncryptionConfiguration":{ + "name":"GetEncryptionConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEncryptionConfigurationRequest"}, + "output":{"shape":"GetEncryptionConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetFleet":{ "name":"GetFleet", "http":{ @@ -679,6 +696,23 @@ {"shape":"AccessDeniedException"} ] }, + "PutEncryptionConfiguration":{ + "name":"PutEncryptionConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutEncryptionConfigurationRequest"}, + "output":{"shape":"PutEncryptionConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, "PutLoggingOptions":{ "name":"PutLoggingOptions", "http":{ @@ -889,7 +923,8 @@ "deprecatedMessage":"assignedValue is no longer in use" }, "deprecationMessage":{"shape":"message"}, - "comment":{"shape":"message"} + "comment":{"shape":"message"}, + "structFullyQualifiedName":{"shape":"NodePath"} } }, "AmazonResourceName":{ @@ -1040,8 +1075,8 @@ ], "members":{ "messageId":{"shape":"nonNegativeInteger"}, - "isBigEndian":{"shape":"boolean"}, - "isSigned":{"shape":"boolean"}, + "isBigEndian":{"shape":"PrimitiveBoolean"}, + "isSigned":{"shape":"PrimitiveBoolean"}, "startBit":{"shape":"nonNegativeInteger"}, "offset":{"shape":"double"}, "factor":{"shape":"double"}, @@ -1294,6 +1329,32 @@ "thingArn":{"shape":"arn"} } }, + "CustomProperty":{ + "type":"structure", + "required":[ + "fullyQualifiedName", + "dataType" + ], + "members":{ + "fullyQualifiedName":{"shape":"string"}, + "dataType":{"shape":"NodeDataType"}, + "dataEncoding":{"shape":"NodeDataEncoding"}, + "description":{"shape":"description"}, + "deprecationMessage":{"shape":"message"}, + "comment":{"shape":"message"}, + "structFullyQualifiedName":{"shape":"NodePath"} + } + }, + "CustomStruct":{ + "type":"structure", + "required":["fullyQualifiedName"], + "members":{ + "fullyQualifiedName":{"shape":"string"}, + "description":{"shape":"description"}, + "deprecationMessage":{"shape":"message"}, + "comment":{"shape":"message"} + } + }, "DataDestinationConfig":{ "type":"structure", "members":{ @@ -1334,7 +1395,8 @@ "description":{"shape":"description"}, "status":{"shape":"ManifestStatus"}, "creationTime":{"shape":"timestamp"}, - "lastModificationTime":{"shape":"timestamp"} + "lastModificationTime":{"shape":"timestamp"}, + "message":{"shape":"message"} } }, "DecoderManifestValidationException":{ @@ -1469,6 +1531,21 @@ "members":{ } }, + "EncryptionStatus":{ + "type":"string", + "enum":[ + "PENDING", + "SUCCESS", + "FAILURE" + ] + }, + "EncryptionType":{ + "type":"string", + "enum":[ + "KMS_BASED_ENCRYPTION", + "FLEETWISE_DEFAULT_ENCRYPTION" + ] + }, "FleetSummary":{ "type":"structure", "required":[ @@ -1557,6 +1634,27 @@ "modelManifestArn":{"shape":"arn"}, "status":{"shape":"ManifestStatus"}, "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"}, + "message":{"shape":"message"} + } + }, + "GetEncryptionConfigurationRequest":{ + "type":"structure", + "members":{ + } + }, + "GetEncryptionConfigurationResponse":{ + "type":"structure", + "required":[ + "encryptionStatus", + "encryptionType" + ], + "members":{ + "kmsKeyId":{"shape":"String"}, + "encryptionStatus":{"shape":"EncryptionStatus"}, + "encryptionType":{"shape":"EncryptionType"}, + "errorMessage":{"shape":"errorMessage"}, + "creationTime":{"shape":"timestamp"}, "lastModificationTime":{"shape":"timestamp"} } }, @@ -1824,7 +1922,8 @@ "type":"structure", "members":{ "name":{"shape":"FullyQualifiedName"}, - "reason":{"shape":"SignalDecoderFailureReason"} + "reason":{"shape":"SignalDecoderFailureReason"}, + "hint":{"shape":"message"} } }, "InvalidSignalDecoders":{ @@ -2065,9 +2164,22 @@ "type":"string", "enum":[ "ACTIVE", - "DRAFT" + "DRAFT", + "INVALID", + "VALIDATING" ] }, + "MessageSignal":{ + "type":"structure", + "required":[ + "topicName", + "structuredMessage" + ], + "members":{ + "topicName":{"shape":"TopicName"}, + "structuredMessage":{"shape":"StructuredMessage"} + } + }, "ModelManifestSummary":{ "type":"structure", "required":[ @@ -2089,7 +2201,11 @@ "key":{"shape":"string"}, "value":{"shape":"string"} }, - "NetworkFileBlob":{"type":"blob"}, + "NetworkFileBlob":{ + "type":"blob", + "max":200000000, + "min":0 + }, "NetworkFileDefinition":{ "type":"structure", "members":{ @@ -2117,7 +2233,8 @@ "interfaceId":{"shape":"InterfaceId"}, "type":{"shape":"NetworkInterfaceType"}, "canInterface":{"shape":"CanInterface"}, - "obdInterface":{"shape":"ObdInterface"} + "obdInterface":{"shape":"ObdInterface"}, + "vehicleMiddleware":{"shape":"VehicleMiddleware"} } }, "NetworkInterfaceFailureReason":{ @@ -2128,14 +2245,18 @@ "NETWORK_INTERFACE_TO_ADD_ALREADY_EXISTS", "CAN_NETWORK_INTERFACE_INFO_IS_NULL", "OBD_NETWORK_INTERFACE_INFO_IS_NULL", - "NETWORK_INTERFACE_TO_REMOVE_ASSOCIATED_WITH_SIGNALS" + "NETWORK_INTERFACE_TO_REMOVE_ASSOCIATED_WITH_SIGNALS", + "VEHICLE_MIDDLEWARE_NETWORK_INTERFACE_INFO_IS_NULL", + "CUSTOMER_DECODED_SIGNAL_NETWORK_INTERFACE_INFO_IS_NULL" ] }, "NetworkInterfaceType":{ "type":"string", "enum":[ "CAN_INTERFACE", - "OBD_INTERFACE" + "OBD_INTERFACE", + "VEHICLE_MIDDLEWARE", + "CUSTOMER_DECODED_INTERFACE" ] }, "NetworkInterfaces":{ @@ -2150,7 +2271,9 @@ "branch":{"shape":"Branch"}, "sensor":{"shape":"Sensor"}, "actuator":{"shape":"Actuator"}, - "attribute":{"shape":"Attribute"} + "attribute":{"shape":"Attribute"}, + "struct":{"shape":"CustomStruct"}, + "property":{"shape":"CustomProperty"} }, "union":true }, @@ -2161,9 +2284,18 @@ "totalBranches":{"shape":"number"}, "totalSensors":{"shape":"number"}, "totalAttributes":{"shape":"number"}, - "totalActuators":{"shape":"number"} + "totalActuators":{"shape":"number"}, + "totalStructs":{"shape":"number"}, + "totalProperties":{"shape":"number"} } }, + "NodeDataEncoding":{ + "type":"string", + "enum":[ + "BINARY", + "TYPED" + ] + }, "NodeDataType":{ "type":"string", "enum":[ @@ -2193,7 +2325,9 @@ "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", - "UNKNOWN" + "UNKNOWN", + "STRUCT", + "STRUCT_ARRAY" ] }, "NodePath":{ @@ -2238,8 +2372,8 @@ "obdStandard":{"shape":"ObdStandard"}, "pidRequestIntervalSeconds":{"shape":"nonNegativeInteger"}, "dtcRequestIntervalSeconds":{"shape":"nonNegativeInteger"}, - "useExtendedIds":{"shape":"boolean"}, - "hasTransmissionEcu":{"shape":"boolean"} + "useExtendedIds":{"shape":"PrimitiveBoolean"}, + "hasTransmissionEcu":{"shape":"PrimitiveBoolean"} } }, "ObdInterfaceName":{ @@ -2281,6 +2415,14 @@ "min":1, "pattern":"[a-zA-Z0-9-_:./!*'()]+" }, + "PrimitiveBoolean":{"type":"boolean"}, + "PrimitiveMessageDefinition":{ + "type":"structure", + "members":{ + "ros2PrimitiveMessageDefinition":{"shape":"ROS2PrimitiveMessageDefinition"} + }, + "union":true + }, "ProtocolName":{ "type":"string", "max":50, @@ -2291,6 +2433,31 @@ "max":50, "min":1 }, + "PutEncryptionConfigurationRequest":{ + "type":"structure", + "required":["encryptionType"], + "members":{ + "kmsKeyId":{"shape":"PutEncryptionConfigurationRequestKmsKeyIdString"}, + "encryptionType":{"shape":"EncryptionType"} + } + }, + "PutEncryptionConfigurationRequestKmsKeyIdString":{ + "type":"string", + "max":2048, + "min":0 + }, + "PutEncryptionConfigurationResponse":{ + "type":"structure", + "required":[ + "encryptionStatus", + "encryptionType" + ], + "members":{ + "kmsKeyId":{"shape":"String"}, + "encryptionStatus":{"shape":"EncryptionStatus"}, + "encryptionType":{"shape":"EncryptionType"} + } + }, "PutLoggingOptionsRequest":{ "type":"structure", "required":["cloudWatchLogDelivery"], @@ -2303,6 +2470,42 @@ "members":{ } }, + "ROS2PrimitiveMessageDefinition":{ + "type":"structure", + "required":["primitiveType"], + "members":{ + "primitiveType":{"shape":"ROS2PrimitiveType"}, + "offset":{"shape":"double"}, + "scaling":{"shape":"double"}, + "upperBound":{"shape":"ROS2PrimitiveMessageDefinitionUpperBoundLong"} + } + }, + "ROS2PrimitiveMessageDefinitionUpperBoundLong":{ + "type":"long", + "box":true, + "max":2048, + "min":0 + }, + "ROS2PrimitiveType":{ + "type":"string", + "enum":[ + "BOOL", + "BYTE", + "CHAR", + "FLOAT32", + "FLOAT64", + "INT8", + "UINT8", + "INT16", + "UINT16", + "INT32", + "UINT32", + "INT64", + "UINT64", + "STRING", + "WSTRING" + ] + }, "RegisterAccountRequest":{ "type":"structure", "members":{ @@ -2388,7 +2591,8 @@ "min":{"shape":"double"}, "max":{"shape":"double"}, "deprecationMessage":{"shape":"message"}, - "comment":{"shape":"message"} + "comment":{"shape":"message"}, + "structFullyQualifiedName":{"shape":"NodePath"} } }, "SignalCatalogSummary":{ @@ -2412,7 +2616,8 @@ "type":{"shape":"SignalDecoderType"}, "interfaceId":{"shape":"InterfaceId"}, "canSignal":{"shape":"CanSignal"}, - "obdSignal":{"shape":"ObdSignal"} + "obdSignal":{"shape":"ObdSignal"}, + "messageSignal":{"shape":"MessageSignal"} } }, "SignalDecoderFailureReason":{ @@ -2426,14 +2631,23 @@ "SIGNAL_NOT_IN_MODEL", "CAN_SIGNAL_INFO_IS_NULL", "OBD_SIGNAL_INFO_IS_NULL", - "NO_DECODER_INFO_FOR_SIGNAL_IN_MODEL" + "NO_DECODER_INFO_FOR_SIGNAL_IN_MODEL", + "MESSAGE_SIGNAL_INFO_IS_NULL", + "SIGNAL_DECODER_TYPE_INCOMPATIBLE_WITH_MESSAGE_SIGNAL_TYPE", + "STRUCT_SIZE_MISMATCH", + "NO_SIGNAL_IN_CATALOG_FOR_DECODER_SIGNAL", + "SIGNAL_DECODER_INCOMPATIBLE_WITH_SIGNAL_CATALOG", + "EMPTY_MESSAGE_SIGNAL", + "CUSTOMER_DECODED_SIGNAL_INFO_IS_NULL" ] }, "SignalDecoderType":{ "type":"string", "enum":[ "CAN_SIGNAL", - "OBD_SIGNAL" + "OBD_SIGNAL", + "MESSAGE_SIGNAL", + "CUSTOMER_DECODED_SIGNAL" ] }, "SignalDecoders":{ @@ -2472,6 +2686,59 @@ ] }, "String":{"type":"string"}, + "StructureMessageName":{ + "type":"string", + "max":150, + "min":1 + }, + "StructuredMessage":{ + "type":"structure", + "members":{ + "primitiveMessageDefinition":{"shape":"PrimitiveMessageDefinition"}, + "structuredMessageListDefinition":{"shape":"StructuredMessageListDefinition"}, + "structuredMessageDefinition":{"shape":"StructuredMessageDefinition"} + }, + "union":true + }, + "StructuredMessageDefinition":{ + "type":"list", + "member":{"shape":"StructuredMessageFieldNameAndDataTypePair"}, + "max":500, + "min":1 + }, + "StructuredMessageFieldNameAndDataTypePair":{ + "type":"structure", + "required":[ + "fieldName", + "dataType" + ], + "members":{ + "fieldName":{"shape":"StructureMessageName"}, + "dataType":{"shape":"StructuredMessage"} + } + }, + "StructuredMessageListDefinition":{ + "type":"structure", + "required":[ + "name", + "memberType", + "listType" + ], + "members":{ + "name":{"shape":"StructureMessageName"}, + "memberType":{"shape":"StructuredMessage"}, + "listType":{"shape":"StructuredMessageListType"}, + "capacity":{"shape":"nonNegativeInteger"} + } + }, + "StructuredMessageListType":{ + "type":"string", + "enum":[ + "FIXED_CAPACITY", + "DYNAMIC_UNBOUNDED_CAPACITY", + "DYNAMIC_BOUNDED_CAPACITY" + ] + }, "Tag":{ "type":"structure", "required":[ @@ -2595,6 +2862,12 @@ "min":3, "pattern":"[a-zA-Z0-9_.-]+" }, + "TopicName":{ + "type":"string", + "max":150, + "min":1, + "pattern":"[a-zA-Z0-9_\\-#:./]+" + }, "TriggerMode":{ "type":"string", "enum":[ @@ -2825,6 +3098,26 @@ "ValidateIotThingExists" ] }, + "VehicleMiddleware":{ + "type":"structure", + "required":[ + "name", + "protocolName" + ], + "members":{ + "name":{"shape":"VehicleMiddlewareName"}, + "protocolName":{"shape":"VehicleMiddlewareProtocol"} + } + }, + "VehicleMiddlewareName":{ + "type":"string", + "max":100, + "min":1 + }, + "VehicleMiddlewareProtocol":{ + "type":"string", + "enum":["ROS_2"] + }, "VehicleState":{ "type":"string", "enum":[ @@ -2879,7 +3172,6 @@ "key":{"shape":"attributeName"}, "value":{"shape":"attributeValue"} }, - "boolean":{"type":"boolean"}, "campaignName":{ "type":"string", "max":100, @@ -2993,6 +3285,7 @@ "number":{"type":"integer"}, "positiveInteger":{ "type":"integer", + "box":true, "min":1 }, "priority":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotfleetwise/2021-06-17/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotfleetwise/2021-06-17/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotfleetwise/2021-06-17/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotfleetwise/2021-06-17/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -20,6 +20,7 @@ "DisassociateVehicleFleet": "

Removes, or disassociates, a vehicle from a fleet. Disassociating a vehicle from a fleet doesn't delete the vehicle.

If the vehicle is successfully dissociated from a fleet, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", "GetCampaign": "

Retrieves information about a campaign.

", "GetDecoderManifest": "

Retrieves information about a created decoder manifest.

", + "GetEncryptionConfiguration": "

Retrieves the encryption configuration for resources and data in Amazon Web Services IoT FleetWise.

", "GetFleet": "

Retrieves information about a fleet.

", "GetLoggingOptions": "

Retrieves the logging options.

", "GetModelManifest": "

Retrieves information about a vehicle model (model manifest).

", @@ -42,8 +43,9 @@ "ListTagsForResource": "

Lists the tags (metadata) you have assigned to the resource.

", "ListVehicles": "

Retrieves a list of summaries of created vehicles.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", "ListVehiclesInFleet": "

Retrieves a list of summaries of all vehicles associated with a fleet.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "PutEncryptionConfiguration": "

Creates or updates the encryption configuration. Amazon Web Services IoT FleetWise can encrypt your data and resources using an Amazon Web Services managed key. Or, you can use a KMS key that you own and manage. For more information, see Data encryption in the Amazon Web Services IoT FleetWise Developer Guide.

", "PutLoggingOptions": "

Creates or updates the logging option.

", - "RegisterAccount": "

This API operation contains deprecated parameters. Register your account again without the Timestream resources parameter so that Amazon Web Services IoT FleetWise can remove the Timestream metadata stored. You should then pass the data destination into the CreateCampaign API operation.

You must delete any existing campaigns that include an empty data destination before you register your account again. For more information, see the DeleteCampaign API operation.

If you want to delete the Timestream inline policy from the service-linked role, such as to mitigate an overly permissive policy, you must first delete any existing campaigns. Then delete the service-linked role and register your account again to enable CloudWatch metrics. For more information, see DeleteServiceLinkedRole in the Identity and Access Management API Reference.

 <p>Registers your Amazon Web Services account, IAM, and Amazon Timestream resources so Amazon Web Services IoT FleetWise can transfer your vehicle data to the Amazon Web Services Cloud. For more information, including step-by-step procedures, see <a href="https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html">Setting up Amazon Web Services IoT FleetWise</a>. </p> <note> <p>An Amazon Web Services account is <b>not</b> the same thing as a "user." An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users">Amazon Web Services user</a> is an identity that you create using Identity and Access Management (IAM) and takes the form of either an <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html">IAM user</a> or an <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html">IAM role, both with credentials</a>. A single Amazon Web Services account can, and typically does, contain many users and roles.</p> </note> 
", + "RegisterAccount": "

This API operation contains deprecated parameters. Register your account again without the Timestream resources parameter so that Amazon Web Services IoT FleetWise can remove the Timestream metadata stored. You should then pass the data destination into the CreateCampaign API operation.

You must delete any existing campaigns that include an empty data destination before you register your account again. For more information, see the DeleteCampaign API operation.

If you want to delete the Timestream inline policy from the service-linked role, such as to mitigate an overly permissive policy, you must first delete any existing campaigns. Then delete the service-linked role and register your account again to enable CloudWatch metrics. For more information, see DeleteServiceLinkedRole in the Identity and Access Management API Reference.

Registers your Amazon Web Services account, IAM, and Amazon Timestream resources so Amazon Web Services IoT FleetWise can transfer your vehicle data to the Amazon Web Services Cloud. For more information, including step-by-step procedures, see Setting up Amazon Web Services IoT FleetWise.

An Amazon Web Services account is not the same thing as a \"user.\" An Amazon Web Services user is an identity that you create using Identity and Access Management (IAM) and takes the form of either an IAM user or an IAM role, both with credentials. A single Amazon Web Services account can, and typically does, contain many users and roles.

", "TagResource": "

Adds to or modifies the tags of the given resource. Tags are metadata which can be used to manage a resource.

", "UntagResource": "

Removes the given tags (metadata) from the resource.

", "UpdateCampaign": "

Updates a campaign.

", @@ -275,6 +277,18 @@ "createVehicleResponses$member": null } }, + "CustomProperty": { + "base": "

Represents a member of the complex data structure. The data type of the property can be either primitive or another struct.

", + "refs": { + "Node$property": "

Represents a member of the complex data structure. The datatype of the property can be either primitive or another struct.

" + } + }, + "CustomStruct": { + "base": "

The custom structure represents a complex or higher-order data structure.

", + "refs": { + "Node$struct": "

Represents a complex or higher-order data structure.

" + } + }, "DataDestinationConfig": { "base": "

The destination where the Amazon Web Services IoT FleetWise campaign sends data. You can send data to be stored in Amazon S3 or Amazon Timestream.

", "refs": { @@ -284,7 +298,7 @@ "DataDestinationConfigs": { "base": null, "refs": { - "CreateCampaignRequest$dataDestinationConfigs": "

The destination where the campaign sends data. You can choose to send data to be stored in Amazon S3 or Amazon Timestream.

Amazon S3 optimizes the cost of data storage and provides additional mechanisms to use vehicle data, such as data lakes, centralized data storage, data processing pipelines, and analytics.

You can use Amazon Timestream to access and analyze time series data, and Timestream to query vehicle data so that you can identify trends and patterns.

", + "CreateCampaignRequest$dataDestinationConfigs": "

The destination where the campaign sends data. You can choose to send data to be stored in Amazon S3 or Amazon Timestream.

Amazon S3 optimizes the cost of data storage and provides additional mechanisms to use vehicle data, such as data lakes, centralized data storage, data processing pipelines, and analytics. Amazon Web Services IoT FleetWise supports at-least-once file delivery to S3. Your vehicle data is stored on multiple Amazon Web Services IoT FleetWise servers for redundancy and high availability.

You can use Amazon Timestream to access and analyze time series data, and Timestream to query vehicle data so that you can identify trends and patterns.

", "GetCampaignResponse$dataDestinationConfigs": "

The destination where the campaign sends data. You can choose to send data to be stored in Amazon S3 or Amazon Timestream.

Amazon S3 optimizes the cost of data storage and provides additional mechanisms to use vehicle data, such as data lakes, centralized data storage, data processing pipelines, and analytics.

You can use Amazon Timestream to access and analyze time series data, and Timestream to query vehicle data so that you can identify trends and patterns.

" } }, @@ -390,6 +404,21 @@ "refs": { } }, + "EncryptionStatus": { + "base": null, + "refs": { + "GetEncryptionConfigurationResponse$encryptionStatus": "

The encryption status.

", + "PutEncryptionConfigurationResponse$encryptionStatus": "

The encryption status.

" + } + }, + "EncryptionType": { + "base": null, + "refs": { + "GetEncryptionConfigurationResponse$encryptionType": "

The type of encryption. Set to KMS_BASED_ENCRYPTION to use a KMS key that you own and manage. Set to FLEETWISE_DEFAULT_ENCRYPTION to use an Amazon Web Services managed key that is owned by the Amazon Web Services IoT FleetWise service account.

", + "PutEncryptionConfigurationRequest$encryptionType": "

The type of encryption. Choose KMS_BASED_ENCRYPTION to use a KMS key or FLEETWISE_DEFAULT_ENCRYPTION to use an Amazon Web Services managed key.

", + "PutEncryptionConfigurationResponse$encryptionType": "

The type of encryption. Set to KMS_BASED_ENCRYPTION to use an KMS key that you own and manage. Set to FLEETWISE_DEFAULT_ENCRYPTION to use an Amazon Web Services managed key that is owned by the Amazon Web Services IoT FleetWise service account.

" + } + }, "FleetSummary": { "base": "

Information about a fleet.

You can use the API operation to return this information about multiple fleets.

", "refs": { @@ -437,6 +466,16 @@ "refs": { } }, + "GetEncryptionConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetEncryptionConfigurationResponse": { + "base": null, + "refs": { + } + }, "GetFleetRequest": { "base": null, "refs": { @@ -766,6 +805,12 @@ "UpdateModelManifestRequest$status": "

The state of the vehicle model. If the status is ACTIVE, the vehicle model can't be edited. If the status is DRAFT, you can edit the vehicle model.

" } }, + "MessageSignal": { + "base": "

The decoding information for a specific message which support higher order data types.

", + "refs": { + "SignalDecoder$messageSignal": "

The decoding information for a specific message which supports higher order data types.

" + } + }, "ModelManifestSummary": { "base": "

Information about a vehicle model (model manifest). You can use the API operation to return this information about multiple vehicle models.

", "refs": { @@ -799,7 +844,7 @@ "NetworkFilesList": { "base": null, "refs": { - "CanDbcDefinition$canDbcFiles": "

A list of DBC files. You can upload only one DBC file for each network interface and specify up to five (inclusive) files in the list.

" + "CanDbcDefinition$canDbcFiles": "

A list of DBC files. You can upload only one DBC file for each network interface and specify up to five (inclusive) files in the list. The DBC file can be a maximum size of 200 MB.

" } }, "NetworkInterface": { @@ -841,19 +886,29 @@ "GetSignalCatalogResponse$nodeCounts": "

The total number of network nodes specified in a signal catalog.

" } }, + "NodeDataEncoding": { + "base": null, + "refs": { + "CustomProperty$dataEncoding": "

Indicates whether the property is binary data.

" + } + }, "NodeDataType": { "base": null, "refs": { "Actuator$dataType": "

The specified data type of the actuator.

", "Attribute$dataType": "

The specified data type of the attribute.

", + "CustomProperty$dataType": "

The data type for the custom property.

", "Sensor$dataType": "

The specified data type of the sensor.

" } }, "NodePath": { "base": null, "refs": { + "Actuator$structFullyQualifiedName": "

The fully qualified name of the struct node for the actuator if the data type of the actuator is Struct or StructArray. For example, the struct fully qualified name of an actuator might be Vehicle.Door.LockStruct.

", + "CustomProperty$structFullyQualifiedName": "

The fully qualified name of the struct node for the custom property if the data type of the custom property is Struct or StructArray.

", "DataExtraDimensionNodePathList$member": null, - "NodePaths$member": null + "NodePaths$member": null, + "Sensor$structFullyQualifiedName": "

The fully qualified name of the struct node for a sensor if the data type of the actuator is Struct or StructArray. For example, the struct fully qualified name of a sensor might be Vehicle.ADAS.CameraStruct.

" } }, "NodePaths": { @@ -917,6 +972,21 @@ "S3Config$prefix": "

(Optional) Enter an S3 bucket prefix. The prefix is the string of characters after the bucket name and before the object name. You can use the prefix to organize data stored in Amazon S3 buckets. For more information, see Organizing objects using prefixes in the Amazon Simple Storage Service User Guide.

By default, Amazon Web Services IoT FleetWise sets the prefix processed-data/year=YY/month=MM/date=DD/hour=HH/ (in UTC) to data it delivers to Amazon S3. You can enter a prefix to append it to this default prefix. For example, if you enter the prefix vehicles, the prefix will be vehicles/processed-data/year=YY/month=MM/date=DD/hour=HH/.

" } }, + "PrimitiveBoolean": { + "base": null, + "refs": { + "CanSignal$isBigEndian": "

Whether the byte ordering of a CAN message is big-endian.

", + "CanSignal$isSigned": "

Whether the message data is specified as a signed value.

", + "ObdInterface$useExtendedIds": "

Whether to use extended IDs in the message.

", + "ObdInterface$hasTransmissionEcu": "

Whether the vehicle has a transmission control module (TCM).

" + } + }, + "PrimitiveMessageDefinition": { + "base": "

Represents a primitive type node of the complex data structure.

", + "refs": { + "StructuredMessage$primitiveMessageDefinition": "

Represents a primitive type node of the complex data structure.

" + } + }, "ProtocolName": { "base": null, "refs": { @@ -929,6 +999,22 @@ "CanInterface$protocolVersion": "

The version of the communication protocol for the interface.

" } }, + "PutEncryptionConfigurationRequest": { + "base": null, + "refs": { + } + }, + "PutEncryptionConfigurationRequestKmsKeyIdString": { + "base": null, + "refs": { + "PutEncryptionConfigurationRequest$kmsKeyId": "

The ID of the KMS key that is used for encryption.

" + } + }, + "PutEncryptionConfigurationResponse": { + "base": null, + "refs": { + } + }, "PutLoggingOptionsRequest": { "base": null, "refs": { @@ -939,6 +1025,24 @@ "refs": { } }, + "ROS2PrimitiveMessageDefinition": { + "base": "

Represents a ROS 2 compliant primitive type message of the complex data structure.

", + "refs": { + "PrimitiveMessageDefinition$ros2PrimitiveMessageDefinition": "

Information about a PrimitiveMessage using a ROS 2 compliant primitive type message of the complex data structure.

" + } + }, + "ROS2PrimitiveMessageDefinitionUpperBoundLong": { + "base": null, + "refs": { + "ROS2PrimitiveMessageDefinition$upperBound": "

An optional attribute specifying the upper bound for STRING and WSTRING.

" + } + }, + "ROS2PrimitiveType": { + "base": null, + "refs": { + "ROS2PrimitiveMessageDefinition$primitiveType": "

The primitive type (integer, floating point, boolean, etc.) for the ROS 2 primitive message definition.

" + } + }, "RegisterAccountRequest": { "base": null, "refs": { @@ -1051,10 +1155,51 @@ "base": null, "refs": { "FormattedVss$vssJson": "

Provides the VSS in JSON format.

", + "GetEncryptionConfigurationResponse$kmsKeyId": "

The ID of the KMS key that is used for encryption.

", + "PutEncryptionConfigurationResponse$kmsKeyId": "

The ID of the KMS key that is used for encryption.

", "ValidationExceptionField$name": "

The name of the parameter field with the validation error.

", "ValidationExceptionField$message": "

A message about the validation error.

" } }, + "StructureMessageName": { + "base": null, + "refs": { + "StructuredMessageFieldNameAndDataTypePair$fieldName": "

The field name of the structured message. It determines how a data value is referenced in the target language.

", + "StructuredMessageListDefinition$name": "

The name of the structured message list definition.

" + } + }, + "StructuredMessage": { + "base": "

The structured message for the message signal. It can be defined with either a primitiveMessageDefinition, structuredMessageListDefinition, or structuredMessageDefinition recursively.

", + "refs": { + "MessageSignal$structuredMessage": "

The structured message for the message signal. It can be defined with either a primitiveMessageDefinition, structuredMessageListDefinition, or structuredMessageDefinition recursively.

", + "StructuredMessageFieldNameAndDataTypePair$dataType": "

The data type.

", + "StructuredMessageListDefinition$memberType": "

The member type of the structured message list definition.

" + } + }, + "StructuredMessageDefinition": { + "base": null, + "refs": { + "StructuredMessage$structuredMessageDefinition": "

Represents a struct type node of the complex data structure.

" + } + }, + "StructuredMessageFieldNameAndDataTypePair": { + "base": "

Represents a StructureMessageName to DataType map element.

", + "refs": { + "StructuredMessageDefinition$member": null + } + }, + "StructuredMessageListDefinition": { + "base": "

Represents a list type node of the complex data structure.

", + "refs": { + "StructuredMessage$structuredMessageListDefinition": "

Represents a list type node of the complex data structure.

" + } + }, + "StructuredMessageListType": { + "base": null, + "refs": { + "StructuredMessageListDefinition$listType": "

The type of list of the structured message list definition.

" + } + }, "Tag": { "base": "

A set of key/value pairs that are used to manage the resource.

", "refs": { @@ -1155,6 +1300,12 @@ "TimestreamResources$timestreamTableName": "

The name of the registered Amazon Timestream database table.

" } }, + "TopicName": { + "base": null, + "refs": { + "MessageSignal$topicName": "

The topic name for the message signal. It corresponds to topics in ROS 2.

" + } + }, "TriggerMode": { "base": null, "refs": { @@ -1292,6 +1443,24 @@ "CreateVehicleRequestItem$associationBehavior": "

An option to create a new Amazon Web Services IoT thing when creating a vehicle, or to validate an existing thing as a vehicle.

" } }, + "VehicleMiddleware": { + "base": "

The vehicle middleware defined as a type of network interface. Examples of vehicle middleware include ROS2 and SOME/IP.

", + "refs": { + "NetworkInterface$vehicleMiddleware": "

The vehicle middleware defined as a type of network interface. Examples of vehicle middleware include ROS2 and SOME/IP.

" + } + }, + "VehicleMiddlewareName": { + "base": null, + "refs": { + "VehicleMiddleware$name": "

The name of the vehicle middleware.

" + } + }, + "VehicleMiddlewareProtocol": { + "base": null, + "refs": { + "VehicleMiddleware$protocolName": "

The protocol name of the vehicle middleware.

" + } + }, "VehicleState": { "base": null, "refs": { @@ -1412,15 +1581,6 @@ "UpdateVehicleRequestItem$attributes": "

Static information about a vehicle in a key-value pair. For example:

\"engineType\" : \"1.3 L R2\"

" } }, - "boolean": { - "base": null, - "refs": { - "CanSignal$isBigEndian": "

Whether the byte ordering of a CAN message is big-endian.

", - "CanSignal$isSigned": "

Whether the message data is specified as a signed value.

", - "ObdInterface$useExtendedIds": "

Whether to use extended IDs in the message.

", - "ObdInterface$hasTransmissionEcu": "

Whether the vehicle has a transmission control module (TCM).

" - } - }, "campaignName": { "base": null, "refs": { @@ -1489,6 +1649,8 @@ "CreateFleetRequest$description": "

A brief description of the fleet to create.

", "CreateModelManifestRequest$description": "

A brief description of the vehicle model.

", "CreateSignalCatalogRequest$description": "

A brief description of the signal catalog.

", + "CustomProperty$description": "

A brief description of the custom property.

", + "CustomStruct$description": "

A brief description of the custom structure.

", "DecoderManifestSummary$description": "

A brief description of the decoder manifest.

", "FleetSummary$description": "

A brief description of the fleet.

", "GetCampaignResponse$description": "

The description of the campaign.

", @@ -1517,6 +1679,8 @@ "CanSignal$factor": "

A multiplier used to decode the CAN message.

", "ObdSignal$scaling": "

A multiplier used to decode the message.

", "ObdSignal$offset": "

The offset used to calculate the signal value. Combined with scaling, the calculation is value = raw_value * scaling + offset.

", + "ROS2PrimitiveMessageDefinition$offset": "

The offset used to calculate the signal value. Combined with scaling, the calculation is value = raw_value * scaling + offset.

", + "ROS2PrimitiveMessageDefinition$scaling": "

A multiplier used to decode the message.

", "Sensor$min": "

The specified possible minimum value of the sensor.

", "Sensor$max": "

The specified possible maximum value of the sensor.

" } @@ -1524,6 +1688,7 @@ "errorMessage": { "base": null, "refs": { + "GetEncryptionConfigurationResponse$errorMessage": "

The error message that describes why encryption settings couldn't be configured, if applicable.

", "IamRegistrationResponse$errorMessage": "

A message associated with a registration error.

", "TimestreamRegistrationResponse$errorMessage": "

A message associated with a registration error.

" } @@ -1617,6 +1782,13 @@ "Attribute$comment": "

A comment in addition to the description.

", "Branch$deprecationMessage": "

The deprecation message for the node or the branch that was moved or deleted.

", "Branch$comment": "

A comment in addition to the description.

", + "CustomProperty$deprecationMessage": "

The deprecation message for the node or the branch that was moved or deleted.

", + "CustomProperty$comment": "

A comment in addition to the description.

", + "CustomStruct$deprecationMessage": "

The deprecation message for the node or the branch that was moved or deleted.

", + "CustomStruct$comment": "

A comment in addition to the description.

", + "DecoderManifestSummary$message": "

The detailed message for the decoder manifest. When a decoder manifest is in an INVALID status, the message contains detailed reason and help information.

", + "GetDecoderManifestResponse$message": "

The detailed message for the decoder manifest. When a decoder manifest is in an INVALID status, the message contains detailed reason and help information.

", + "InvalidSignalDecoder$hint": "

The possible cause for the invalid signal decoder.

", "Sensor$deprecationMessage": "

The deprecation message for the node or the branch that was moved or deleted.

", "Sensor$comment": "

A comment in addition to the description.

" } @@ -1670,7 +1842,8 @@ "ObdSignal$serviceMode": "

The mode of operation (diagnostic service) in a message.

", "ObdSignal$pid": "

The diagnostic code used to request data from a vehicle for this signal.

", "ObdSignal$startByte": "

Indicates the beginning of the message.

", - "ObdSignal$bitRightShift": "

The number of positions to shift bits in the message.

" + "ObdSignal$bitRightShift": "

The number of positions to shift bits in the message.

", + "StructuredMessageListDefinition$capacity": "

The capacity of the structured message list definition when the list type is FIXED_CAPACITY or DYNAMIC_BOUNDED_CAPACITY.

" } }, "number": { @@ -1681,6 +1854,8 @@ "NodeCounts$totalSensors": "

The total number of nodes in a vehicle network that represent sensors.

", "NodeCounts$totalAttributes": "

The total number of nodes in a vehicle network that represent attributes.

", "NodeCounts$totalActuators": "

The total number of nodes in a vehicle network that represent actuators.

", + "NodeCounts$totalStructs": "

The total structure for the node.

", + "NodeCounts$totalProperties": "

The total properties for the node.

", "UpdateVehicleError$code": "

The relevant HTTP error code (400+).

" } }, @@ -1762,6 +1937,8 @@ "ConflictException$resourceType": "

The type of resource on which there are conflicting operations..

", "CreateVehicleError$code": "

An HTTP error code.

", "CreateVehicleError$message": "

A description of the HTTP error.

", + "CustomProperty$fullyQualifiedName": "

The fully qualified name of the custom property. For example, the fully qualified name of a custom property might be ComplexDataTypes.VehicleDataTypes.SVMCamera.FPS.

", + "CustomStruct$fullyQualifiedName": "

The fully qualified name of the custom structure. For example, the fully qualified name of a custom structure might be ComplexDataTypes.VehicleDataTypes.SVMCamera.

", "DecoderManifestSummary$name": "

The name of the decoder manifest.

", "DecoderManifestValidationException$message": null, "GetDecoderManifestResponse$name": "

The name of the decoder manifest.

", @@ -1808,6 +1985,8 @@ "GetCampaignResponse$lastModificationTime": "

The last time the campaign was modified.

", "GetDecoderManifestResponse$creationTime": "

The time the decoder manifest was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", "GetDecoderManifestResponse$lastModificationTime": "

The time the decoder manifest was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetEncryptionConfigurationResponse$creationTime": "

The time when encryption was configured in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetEncryptionConfigurationResponse$lastModificationTime": "

The time when encryption was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", "GetFleetResponse$creationTime": "

The time the fleet was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", "GetFleetResponse$lastModificationTime": "

The time the fleet was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).

", "GetModelManifestResponse$creationTime": "

The time the vehicle model was created, in seconds since epoch (January 1, 1970 at midnight UTC time).

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotfleetwise/2021-06-17/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotfleetwise/2021-06-17/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotfleetwise/2021-06-17/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotfleetwise/2021-06-17/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iotfleetwise-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://iotfleetwise-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iotfleetwise-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://iotfleetwise-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iotfleetwise.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://iotfleetwise.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://iotfleetwise.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://iotfleetwise.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -206,6 +206,26 @@ ], "endpoint":{"hostPrefix":"api."} }, + "CreateAssetModelCompositeModel":{ + "name":"CreateAssetModelCompositeModel", + "http":{ + "method":"POST", + "requestUri":"/asset-models/{assetModelId}/composite-models", + "responseCode":202 + }, + "input":{"shape":"CreateAssetModelCompositeModelRequest"}, + "output":{"shape":"CreateAssetModelCompositeModelResponse"}, + "errors":[ + {"shape":"ConflictingOperationException"}, + {"shape":"InternalFailureException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "CreateBulkImportJob":{ "name":"CreateBulkImportJob", "http":{ @@ -351,6 +371,24 @@ ], "endpoint":{"hostPrefix":"api."} }, + "DeleteAssetModelCompositeModel":{ + "name":"DeleteAssetModelCompositeModel", + "http":{ + "method":"DELETE", + "requestUri":"/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}", + "responseCode":202 + }, + "input":{"shape":"DeleteAssetModelCompositeModelRequest"}, + "output":{"shape":"DeleteAssetModelCompositeModelResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictingOperationException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "DeleteDashboard":{ "name":"DeleteDashboard", "http":{ @@ -451,6 +489,22 @@ ], "endpoint":{"hostPrefix":"monitor."} }, + "DescribeAction":{ + "name":"DescribeAction", + "http":{ + "method":"GET", + "requestUri":"/actions/{actionId}" + }, + "input":{"shape":"DescribeActionRequest"}, + "output":{"shape":"DescribeActionResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "DescribeAsset":{ "name":"DescribeAsset", "http":{ @@ -467,6 +521,22 @@ ], "endpoint":{"hostPrefix":"api."} }, + "DescribeAssetCompositeModel":{ + "name":"DescribeAssetCompositeModel", + "http":{ + "method":"GET", + "requestUri":"/assets/{assetId}/composite-models/{assetCompositeModelId}" + }, + "input":{"shape":"DescribeAssetCompositeModelRequest"}, + "output":{"shape":"DescribeAssetCompositeModelResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "DescribeAssetModel":{ "name":"DescribeAssetModel", "http":{ @@ -483,6 +553,22 @@ ], "endpoint":{"hostPrefix":"api."} }, + "DescribeAssetModelCompositeModel":{ + "name":"DescribeAssetModelCompositeModel", + "http":{ + "method":"GET", + "requestUri":"/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}" + }, + "input":{"shape":"DescribeAssetModelCompositeModelRequest"}, + "output":{"shape":"DescribeAssetModelCompositeModelResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "DescribeAssetProperty":{ "name":"DescribeAssetProperty", "http":{ @@ -695,6 +781,44 @@ ], "endpoint":{"hostPrefix":"api."} }, + "ExecuteAction":{ + "name":"ExecuteAction", + "http":{ + "method":"POST", + "requestUri":"/actions", + "responseCode":202 + }, + "input":{"shape":"ExecuteActionRequest"}, + "output":{"shape":"ExecuteActionResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ConflictingOperationException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "ExecuteQuery":{ + "name":"ExecuteQuery", + "http":{ + "method":"POST", + "requestUri":"/queries/execution" + }, + "input":{"shape":"ExecuteQueryRequest"}, + "output":{"shape":"ExecuteQueryResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"QueryTimeoutException"}, + {"shape":"InternalFailureException"}, + {"shape":"ServiceUnavailableException"} + ], + "endpoint":{"hostPrefix":"data."} + }, "GetAssetPropertyAggregates":{ "name":"GetAssetPropertyAggregates", "http":{ @@ -779,6 +903,38 @@ ], "endpoint":{"hostPrefix":"monitor."} }, + "ListActions":{ + "name":"ListActions", + "http":{ + "method":"GET", + "requestUri":"/actions" + }, + "input":{"shape":"ListActionsRequest"}, + "output":{"shape":"ListActionsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "ListAssetModelCompositeModels":{ + "name":"ListAssetModelCompositeModels", + "http":{ + "method":"GET", + "requestUri":"/asset-models/{assetModelId}/composite-models" + }, + "input":{"shape":"ListAssetModelCompositeModelsRequest"}, + "output":{"shape":"ListAssetModelCompositeModelsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InternalFailureException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "ListAssetModelProperties":{ "name":"ListAssetModelProperties", "http":{ @@ -890,6 +1046,22 @@ ], "endpoint":{"hostPrefix":"data."} }, + "ListCompositionRelationships":{ + "name":"ListCompositionRelationships", + "http":{ + "method":"GET", + "requestUri":"/asset-models/{assetModelId}/composition-relationships" + }, + "input":{"shape":"ListCompositionRelationshipsRequest"}, + "output":{"shape":"ListCompositionRelationshipsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "ListDashboards":{ "name":"ListDashboards", "http":{ @@ -1152,6 +1324,26 @@ ], "endpoint":{"hostPrefix":"api."} }, + "UpdateAssetModelCompositeModel":{ + "name":"UpdateAssetModelCompositeModel", + "http":{ + "method":"PUT", + "requestUri":"/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}", + "responseCode":202 + }, + "input":{"shape":"UpdateAssetModelCompositeModelRequest"}, + "output":{"shape":"UpdateAssetModelCompositeModelResponse"}, + "errors":[ + {"shape":"ConflictingOperationException"}, + {"shape":"InternalFailureException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"} + ], + "endpoint":{"hostPrefix":"api."} + }, "UpdateAssetProperty":{ "name":"UpdateAssetProperty", "http":{ @@ -1261,7 +1453,15 @@ "type":"string", "max":1600, "min":1, - "pattern":".*" + "pattern":"^arn:aws(-cn|-us-gov)?:[a-zA-Z0-9-:\\/_\\.]+$" + }, + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"errorMessage"} + }, + "error":{"httpStatusCode":403}, + "exception":true }, "AccessPolicySummaries":{ "type":"list", @@ -1284,6 +1484,47 @@ "lastUpdateDate":{"shape":"Timestamp"} } }, + "ActionDefinition":{ + "type":"structure", + "required":[ + "actionDefinitionId", + "actionName", + "actionType" + ], + "members":{ + "actionDefinitionId":{"shape":"ID"}, + "actionName":{"shape":"Name"}, + "actionType":{"shape":"Name"} + } + }, + "ActionDefinitions":{ + "type":"list", + "member":{"shape":"ActionDefinition"} + }, + "ActionPayload":{ + "type":"structure", + "required":["stringValue"], + "members":{ + "stringValue":{"shape":"ActionPayloadString"} + } + }, + "ActionPayloadString":{ + "type":"string", + "pattern":"[^\\u0000-\\u001F\\u007F]+" + }, + "ActionSummaries":{ + "type":"list", + "member":{"shape":"ActionSummary"} + }, + "ActionSummary":{ + "type":"structure", + "members":{ + "actionId":{"shape":"ID"}, + "actionDefinitionId":{"shape":"ID"}, + "targetResource":{"shape":"TargetResource"} + } + }, + "AdaptiveIngestion":{"type":"boolean"}, "AggregateType":{ "type":"string", "enum":[ @@ -1353,7 +1594,41 @@ "description":{"shape":"Description"}, "type":{"shape":"Name"}, "properties":{"shape":"AssetProperties"}, - "id":{"shape":"ID"} + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"} + } + }, + "AssetCompositeModelPath":{ + "type":"list", + "member":{"shape":"AssetCompositeModelPathSegment"} + }, + "AssetCompositeModelPathSegment":{ + "type":"structure", + "members":{ + "id":{"shape":"ID"}, + "name":{"shape":"Name"} + } + }, + "AssetCompositeModelSummaries":{ + "type":"list", + "member":{"shape":"AssetCompositeModelSummary"} + }, + "AssetCompositeModelSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "type", + "description", + "path" + ], + "members":{ + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"}, + "name":{"shape":"Name"}, + "type":{"shape":"Name"}, + "description":{"shape":"Description"}, + "path":{"shape":"AssetCompositeModelPath"} } }, "AssetCompositeModels":{ @@ -1387,7 +1662,8 @@ "required":["name"], "members":{ "id":{"shape":"ID"}, - "name":{"shape":"Name"} + "name":{"shape":"Name"}, + "externalId":{"shape":"ExternalId"} } }, "AssetHierarchyInfo":{ @@ -1412,7 +1688,8 @@ "description":{"shape":"Description"}, "type":{"shape":"Name"}, "properties":{"shape":"AssetModelProperties"}, - "id":{"shape":"ID"} + "id":{"shape":"CustomID"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelCompositeModelDefinition":{ @@ -1425,13 +1702,46 @@ "name":{"shape":"Name"}, "description":{"shape":"Description"}, "type":{"shape":"Name"}, - "properties":{"shape":"AssetModelPropertyDefinitions"} + "properties":{"shape":"AssetModelPropertyDefinitions"}, + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelCompositeModelDefinitions":{ "type":"list", "member":{"shape":"AssetModelCompositeModelDefinition"} }, + "AssetModelCompositeModelPath":{ + "type":"list", + "member":{"shape":"AssetModelCompositeModelPathSegment"} + }, + "AssetModelCompositeModelPathSegment":{ + "type":"structure", + "members":{ + "id":{"shape":"ID"}, + "name":{"shape":"Name"} + } + }, + "AssetModelCompositeModelSummaries":{ + "type":"list", + "member":{"shape":"AssetModelCompositeModelSummary"} + }, + "AssetModelCompositeModelSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "type" + ], + "members":{ + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"}, + "name":{"shape":"Name"}, + "type":{"shape":"Name"}, + "description":{"shape":"Description"}, + "path":{"shape":"AssetModelCompositeModelPath"} + } + }, "AssetModelCompositeModels":{ "type":"list", "member":{"shape":"AssetModelCompositeModel"} @@ -1447,9 +1757,10 @@ "childAssetModelId" ], "members":{ - "id":{"shape":"ID"}, + "id":{"shape":"CustomID"}, "name":{"shape":"Name"}, - "childAssetModelId":{"shape":"ID"} + "childAssetModelId":{"shape":"CustomID"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelHierarchyDefinition":{ @@ -1460,7 +1771,9 @@ ], "members":{ "name":{"shape":"Name"}, - "childAssetModelId":{"shape":"ID"} + "childAssetModelId":{"shape":"CustomID"}, + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelHierarchyDefinitions":{ @@ -1479,12 +1792,14 @@ "type" ], "members":{ - "id":{"shape":"ID"}, + "id":{"shape":"CustomID"}, "name":{"shape":"Name"}, "dataType":{"shape":"PropertyDataType"}, "dataTypeSpec":{"shape":"Name"}, "unit":{"shape":"PropertyUnit"}, - "type":{"shape":"PropertyType"} + "type":{"shape":"PropertyType"}, + "path":{"shape":"AssetModelPropertyPath"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelPropertyDefinition":{ @@ -1499,13 +1814,26 @@ "dataType":{"shape":"PropertyDataType"}, "dataTypeSpec":{"shape":"Name"}, "unit":{"shape":"PropertyUnit"}, - "type":{"shape":"PropertyType"} + "type":{"shape":"PropertyType"}, + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelPropertyDefinitions":{ "type":"list", "member":{"shape":"AssetModelPropertyDefinition"} }, + "AssetModelPropertyPath":{ + "type":"list", + "member":{"shape":"AssetModelPropertyPathSegment"} + }, + "AssetModelPropertyPathSegment":{ + "type":"structure", + "members":{ + "id":{"shape":"ID"}, + "name":{"shape":"Name"} + } + }, "AssetModelPropertySummaries":{ "type":"list", "member":{"shape":"AssetModelPropertySummary"} @@ -1524,7 +1852,9 @@ "dataTypeSpec":{"shape":"Name"}, "unit":{"shape":"PropertyUnit"}, "type":{"shape":"PropertyType"}, - "assetModelCompositeModelId":{"shape":"ID"} + "assetModelCompositeModelId":{"shape":"ID"}, + "path":{"shape":"AssetModelPropertyPath"}, + "externalId":{"shape":"ExternalId"} } }, "AssetModelState":{ @@ -1568,9 +1898,18 @@ "description":{"shape":"Description"}, "creationDate":{"shape":"Timestamp"}, "lastUpdateDate":{"shape":"Timestamp"}, - "status":{"shape":"AssetModelStatus"} + "status":{"shape":"AssetModelStatus"}, + "assetModelType":{"shape":"AssetModelType"}, + "externalId":{"shape":"ExternalId"} } }, + "AssetModelType":{ + "type":"string", + "enum":[ + "ASSET_MODEL", + "COMPONENT_MODEL" + ] + }, "AssetProperties":{ "type":"list", "member":{"shape":"AssetProperty"} @@ -1589,7 +1928,9 @@ "notification":{"shape":"PropertyNotification"}, "dataType":{"shape":"PropertyDataType"}, "dataTypeSpec":{"shape":"Name"}, - "unit":{"shape":"PropertyUnit"} + "unit":{"shape":"PropertyUnit"}, + "path":{"shape":"AssetPropertyPath"}, + "externalId":{"shape":"ExternalId"} } }, "AssetPropertyAlias":{ @@ -1598,18 +1939,32 @@ "min":1, "pattern":"[^\\u0000-\\u001F\\u007F]+" }, + "AssetPropertyPath":{ + "type":"list", + "member":{"shape":"AssetPropertyPathSegment"} + }, + "AssetPropertyPathSegment":{ + "type":"structure", + "members":{ + "id":{"shape":"ID"}, + "name":{"shape":"Name"} + } + }, "AssetPropertySummaries":{ "type":"list", "member":{"shape":"AssetPropertySummary"} }, "AssetPropertySummary":{ "type":"structure", + "required":["id"], "members":{ "id":{"shape":"ID"}, "alias":{"shape":"PropertyAlias"}, "unit":{"shape":"PropertyUnit"}, "notification":{"shape":"PropertyNotification"}, - "assetCompositeModelId":{"shape":"ID"} + "assetCompositeModelId":{"shape":"ID"}, + "path":{"shape":"AssetPropertyPath"}, + "externalId":{"shape":"ExternalId"} } }, "AssetPropertyValue":{ @@ -1691,7 +2046,8 @@ "lastUpdateDate":{"shape":"Timestamp"}, "status":{"shape":"AssetStatus"}, "hierarchies":{"shape":"AssetHierarchies"}, - "description":{"shape":"Description"} + "description":{"shape":"Description"}, + "externalId":{"shape":"ExternalId"} } }, "AssociateAssetsRequest":{ @@ -1703,12 +2059,12 @@ ], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, - "hierarchyId":{"shape":"ID"}, - "childAssetId":{"shape":"ID"}, + "hierarchyId":{"shape":"CustomID"}, + "childAssetId":{"shape":"CustomID"}, "clientToken":{ "shape":"ClientToken", "idempotencyToken":true @@ -1729,12 +2085,12 @@ "locationName":"alias" }, "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"assetId" }, "propertyId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"propertyId" }, @@ -1769,7 +2125,8 @@ "lastUpdateDate":{"shape":"Timestamp"}, "status":{"shape":"AssetStatus"}, "hierarchies":{"shape":"AssetHierarchies"}, - "description":{"shape":"Description"} + "description":{"shape":"Description"}, + "externalId":{"shape":"ExternalId"} } }, "Attribute":{ @@ -2273,6 +2630,13 @@ "min":36, "pattern":"\\S{36,64}" }, + "ColumnInfo":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "type":{"shape":"ColumnType"} + } + }, "ColumnName":{ "type":"string", "enum":[ @@ -2290,6 +2654,16 @@ "type":"list", "member":{"shape":"ColumnName"} }, + "ColumnType":{ + "type":"structure", + "members":{ + "scalarType":{"shape":"ScalarType"} + } + }, + "ColumnsList":{ + "type":"list", + "member":{"shape":"ColumnInfo"} + }, "CompositeModelProperty":{ "type":"structure", "required":[ @@ -2301,9 +2675,43 @@ "name":{"shape":"Name"}, "type":{"shape":"Name"}, "assetProperty":{"shape":"Property"}, + "id":{"shape":"ID"}, + "externalId":{"shape":"ExternalId"} + } + }, + "CompositionDetails":{ + "type":"structure", + "members":{ + "compositionRelationship":{"shape":"CompositionRelationship"} + } + }, + "CompositionRelationship":{ + "type":"list", + "member":{"shape":"CompositionRelationshipItem"} + }, + "CompositionRelationshipItem":{ + "type":"structure", + "members":{ "id":{"shape":"ID"} } }, + "CompositionRelationshipSummaries":{ + "type":"list", + "member":{"shape":"CompositionRelationshipSummary"} + }, + "CompositionRelationshipSummary":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId", + "assetModelCompositeModelType" + ], + "members":{ + "assetModelId":{"shape":"ID"}, + "assetModelCompositeModelId":{"shape":"ID"}, + "assetModelCompositeModelType":{"shape":"Name"} + } + }, "ComputeLocation":{ "type":"string", "enum":[ @@ -2387,6 +2795,46 @@ "accessPolicyArn":{"shape":"ARN"} } }, + "CreateAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelName", + "assetModelCompositeModelType" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelId" + }, + "parentAssetModelCompositeModelId":{"shape":"CustomID"}, + "assetModelCompositeModelExternalId":{"shape":"ExternalId"}, + "assetModelCompositeModelId":{"shape":"ID"}, + "assetModelCompositeModelDescription":{"shape":"Description"}, + "assetModelCompositeModelName":{"shape":"Name"}, + "assetModelCompositeModelType":{"shape":"Name"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "composedAssetModelId":{"shape":"CustomID"}, + "assetModelCompositeModelProperties":{"shape":"AssetModelPropertyDefinitions"} + } + }, + "CreateAssetModelCompositeModelResponse":{ + "type":"structure", + "required":[ + "assetModelCompositeModelId", + "assetModelCompositeModelPath", + "assetModelStatus" + ], + "members":{ + "assetModelCompositeModelId":{"shape":"ID"}, + "assetModelCompositeModelPath":{"shape":"AssetModelCompositeModelPath"}, + "assetModelStatus":{"shape":"AssetModelStatus"} + } + }, "CreateAssetModelRequest":{ "type":"structure", "required":["assetModelName"], @@ -2400,7 +2848,10 @@ "shape":"ClientToken", "idempotencyToken":true }, - "tags":{"shape":"TagMap"} + "tags":{"shape":"TagMap"}, + "assetModelId":{"shape":"ID"}, + "assetModelExternalId":{"shape":"ExternalId"}, + "assetModelType":{"shape":"AssetModelType"} } }, "CreateAssetModelResponse":{ @@ -2424,13 +2875,15 @@ ], "members":{ "assetName":{"shape":"Name"}, - "assetModelId":{"shape":"ID"}, + "assetModelId":{"shape":"CustomID"}, "clientToken":{ "shape":"ClientToken", "idempotencyToken":true }, "tags":{"shape":"TagMap"}, - "assetDescription":{"shape":"Description"} + "assetDescription":{"shape":"Description"}, + "assetId":{"shape":"ID"}, + "assetExternalId":{"shape":"ExternalId"} } }, "CreateAssetResponse":{ @@ -2460,7 +2913,9 @@ "jobRoleArn":{"shape":"ARN"}, "files":{"shape":"Files"}, "errorReportLocation":{"shape":"ErrorReportLocation"}, - "jobConfiguration":{"shape":"JobConfiguration"} + "jobConfiguration":{"shape":"JobConfiguration"}, + "adaptiveIngestion":{"shape":"AdaptiveIngestion"}, + "deleteFilesAfterImport":{"shape":"DeleteFilesAfterImport"} } }, "CreateBulkImportJobResponse":{ @@ -2599,10 +3054,17 @@ }, "Csv":{ "type":"structure", + "required":["columnNames"], "members":{ "columnNames":{"shape":"ColumnNames"} } }, + "CustomID":{ + "type":"string", + "max":139, + "min":13, + "pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$|^externalId:[a-zA-Z0-9][a-zA-Z_\\-0-9.:]*[a-zA-Z0-9]+" + }, "CustomerManagedS3Storage":{ "type":"structure", "required":[ @@ -2638,10 +3100,21 @@ "lastUpdateDate":{"shape":"Timestamp"} } }, + "Datum":{ + "type":"structure", + "members":{ + "scalarValue":{"shape":"ScalarValue"}, + "arrayValue":{"shape":"DatumList"}, + "rowValue":{"shape":"Row"}, + "nullValue":{"shape":"NullableBoolean"} + } + }, + "DatumList":{ + "type":"list", + "member":{"shape":"Datum"} + }, "DefaultValue":{ "type":"string", - "max":1024, - "min":1, "pattern":"[^\\u0000-\\u001F\\u007F]+" }, "DeleteAccessPolicyRequest":{ @@ -2666,12 +3139,44 @@ "members":{ } }, + "DeleteAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelId" + }, + "assetModelCompositeModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelCompositeModelId" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + } + } + }, + "DeleteAssetModelCompositeModelResponse":{ + "type":"structure", + "required":["assetModelStatus"], + "members":{ + "assetModelStatus":{"shape":"AssetModelStatus"} + } + }, "DeleteAssetModelRequest":{ "type":"structure", "required":["assetModelId"], "members":{ "assetModelId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetModelId" }, @@ -2695,7 +3200,7 @@ "required":["assetId"], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, @@ -2736,6 +3241,7 @@ "members":{ } }, + "DeleteFilesAfterImport":{"type":"boolean"}, "DeleteGatewayRequest":{ "type":"structure", "required":["gatewayId"], @@ -2802,12 +3308,12 @@ "locationName":"alias" }, "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"assetId" }, "propertyId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"propertyId" }, @@ -2849,12 +3355,129 @@ "accessPolicyLastUpdateDate":{"shape":"Timestamp"} } }, + "DescribeActionRequest":{ + "type":"structure", + "required":["actionId"], + "members":{ + "actionId":{ + "shape":"ID", + "location":"uri", + "locationName":"actionId" + } + } + }, + "DescribeActionResponse":{ + "type":"structure", + "required":[ + "actionId", + "targetResource", + "actionDefinitionId", + "actionPayload", + "executionTime" + ], + "members":{ + "actionId":{"shape":"ID"}, + "targetResource":{"shape":"TargetResource"}, + "actionDefinitionId":{"shape":"ID"}, + "actionPayload":{"shape":"ActionPayload"}, + "executionTime":{"shape":"Timestamp"} + } + }, + "DescribeAssetCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetId", + "assetCompositeModelId" + ], + "members":{ + "assetId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetId" + }, + "assetCompositeModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetCompositeModelId" + } + } + }, + "DescribeAssetCompositeModelResponse":{ + "type":"structure", + "required":[ + "assetId", + "assetCompositeModelId", + "assetCompositeModelPath", + "assetCompositeModelName", + "assetCompositeModelDescription", + "assetCompositeModelType", + "assetCompositeModelProperties", + "assetCompositeModelSummaries" + ], + "members":{ + "assetId":{"shape":"ID"}, + "assetCompositeModelId":{"shape":"ID"}, + "assetCompositeModelExternalId":{"shape":"ExternalId"}, + "assetCompositeModelPath":{"shape":"AssetCompositeModelPath"}, + "assetCompositeModelName":{"shape":"Name"}, + "assetCompositeModelDescription":{"shape":"Description"}, + "assetCompositeModelType":{"shape":"Name"}, + "assetCompositeModelProperties":{"shape":"AssetProperties"}, + "assetCompositeModelSummaries":{"shape":"AssetCompositeModelSummaries"}, + "actionDefinitions":{"shape":"ActionDefinitions"} + } + }, + "DescribeAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelId" + }, + "assetModelCompositeModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelCompositeModelId" + } + } + }, + "DescribeAssetModelCompositeModelResponse":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId", + "assetModelCompositeModelPath", + "assetModelCompositeModelName", + "assetModelCompositeModelDescription", + "assetModelCompositeModelType", + "assetModelCompositeModelProperties", + "assetModelCompositeModelSummaries" + ], + "members":{ + "assetModelId":{"shape":"ID"}, + "assetModelCompositeModelId":{"shape":"ID"}, + "assetModelCompositeModelExternalId":{"shape":"ExternalId"}, + "assetModelCompositeModelPath":{"shape":"AssetModelCompositeModelPath"}, + "assetModelCompositeModelName":{"shape":"Name"}, + "assetModelCompositeModelDescription":{"shape":"Description"}, + "assetModelCompositeModelType":{"shape":"Name"}, + "assetModelCompositeModelProperties":{"shape":"AssetModelProperties"}, + "compositionDetails":{"shape":"CompositionDetails"}, + "assetModelCompositeModelSummaries":{"shape":"AssetModelCompositeModelSummaries"}, + "actionDefinitions":{"shape":"ActionDefinitions"} + } + }, "DescribeAssetModelRequest":{ "type":"structure", "required":["assetModelId"], "members":{ "assetModelId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetModelId" }, @@ -2888,7 +3511,10 @@ "assetModelCompositeModels":{"shape":"AssetModelCompositeModels"}, "assetModelCreationDate":{"shape":"Timestamp"}, "assetModelLastUpdateDate":{"shape":"Timestamp"}, - "assetModelStatus":{"shape":"AssetModelStatus"} + "assetModelStatus":{"shape":"AssetModelStatus"}, + "assetModelType":{"shape":"AssetModelType"}, + "assetModelCompositeModelSummaries":{"shape":"AssetModelCompositeModelSummaries"}, + "assetModelExternalId":{"shape":"ExternalId"} } }, "DescribeAssetPropertyRequest":{ @@ -2899,12 +3525,12 @@ ], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, "propertyId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"propertyId" } @@ -2922,7 +3548,8 @@ "assetName":{"shape":"Name"}, "assetModelId":{"shape":"ID"}, "assetProperty":{"shape":"Property"}, - "compositeModel":{"shape":"CompositeModelProperty"} + "compositeModel":{"shape":"CompositeModelProperty"}, + "assetExternalId":{"shape":"ExternalId"} } }, "DescribeAssetRequest":{ @@ -2930,7 +3557,7 @@ "required":["assetId"], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, @@ -2965,7 +3592,9 @@ "assetCreationDate":{"shape":"Timestamp"}, "assetLastUpdateDate":{"shape":"Timestamp"}, "assetStatus":{"shape":"AssetStatus"}, - "assetDescription":{"shape":"Description"} + "assetDescription":{"shape":"Description"}, + "assetCompositeModelSummaries":{"shape":"AssetCompositeModelSummaries"}, + "assetExternalId":{"shape":"ExternalId"} } }, "DescribeBulkImportJobRequest":{ @@ -3001,7 +3630,9 @@ "errorReportLocation":{"shape":"ErrorReportLocation"}, "jobConfiguration":{"shape":"JobConfiguration"}, "jobCreationDate":{"shape":"Timestamp"}, - "jobLastUpdateDate":{"shape":"Timestamp"} + "jobLastUpdateDate":{"shape":"Timestamp"}, + "adaptiveIngestion":{"shape":"AdaptiveIngestion"}, + "deleteFilesAfterImport":{"shape":"DeleteFilesAfterImport"} } }, "DescribeDashboardRequest":{ @@ -3221,7 +3852,9 @@ "disassociatedDataStorage":{"shape":"DisassociatedDataStorageState"}, "retentionPeriod":{"shape":"RetentionPeriod"}, "configurationStatus":{"shape":"ConfigurationStatus"}, - "lastUpdateDate":{"shape":"Timestamp"} + "lastUpdateDate":{"shape":"Timestamp"}, + "warmTier":{"shape":"WarmTierState"}, + "warmTierRetentionPeriod":{"shape":"WarmTierRetentionPeriod"} } }, "DescribeTimeSeriesRequest":{ @@ -3233,12 +3866,12 @@ "locationName":"alias" }, "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"assetId" }, "propertyId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"propertyId" } @@ -3303,12 +3936,12 @@ ], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, - "hierarchyId":{"shape":"ID"}, - "childAssetId":{"shape":"ID"}, + "hierarchyId":{"shape":"CustomID"}, + "childAssetId":{"shape":"CustomID"}, "clientToken":{ "shape":"ClientToken", "idempotencyToken":true @@ -3329,12 +3962,12 @@ "locationName":"alias" }, "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"assetId" }, "propertyId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"propertyId" }, @@ -3403,6 +4036,53 @@ }, "ExceptionMessage":{"type":"string"}, "ExcludeProperties":{"type":"boolean"}, + "ExecuteActionRequest":{ + "type":"structure", + "required":[ + "targetResource", + "actionDefinitionId", + "actionPayload" + ], + "members":{ + "targetResource":{"shape":"TargetResource"}, + "actionDefinitionId":{"shape":"ID"}, + "actionPayload":{"shape":"ActionPayload"}, + "clientToken":{"shape":"ClientToken"} + } + }, + "ExecuteActionResponse":{ + "type":"structure", + "required":["actionId"], + "members":{ + "actionId":{"shape":"ID"} + } + }, + "ExecuteQueryMaxResults":{ + "type":"integer", + "min":1 + }, + "ExecuteQueryNextToken":{ + "type":"string", + "max":4096, + "min":1 + }, + "ExecuteQueryRequest":{ + "type":"structure", + "required":["queryStatement"], + "members":{ + "queryStatement":{"shape":"QueryStatement"}, + "nextToken":{"shape":"ExecuteQueryNextToken"}, + "maxResults":{"shape":"ExecuteQueryMaxResults"} + } + }, + "ExecuteQueryResponse":{ + "type":"structure", + "members":{ + "columns":{"shape":"ColumnsList"}, + "rows":{"shape":"Rows"}, + "nextToken":{"shape":"ExecuteQueryNextToken"} + } + }, "Expression":{ "type":"string", "max":1024, @@ -3423,6 +4103,12 @@ "type":"list", "member":{"shape":"ExpressionVariable"} }, + "ExternalId":{ + "type":"string", + "max":128, + "min":2, + "pattern":"[a-zA-Z0-9_][a-zA-Z_\\-0-9.:]*[a-zA-Z0-9_]+" + }, "File":{ "type":"structure", "required":[ @@ -3438,7 +4124,8 @@ "FileFormat":{ "type":"structure", "members":{ - "csv":{"shape":"Csv"} + "csv":{"shape":"Csv"}, + "parquet":{"shape":"Parquet"} } }, "Files":{ @@ -4012,6 +4699,75 @@ "nextToken":{"shape":"NextToken"} } }, + "ListActionsRequest":{ + "type":"structure", + "required":[ + "targetResourceType", + "targetResourceId" + ], + "members":{ + "targetResourceType":{ + "shape":"TargetResourceType", + "location":"querystring", + "locationName":"targetResourceType" + }, + "targetResourceId":{ + "shape":"CustomID", + "location":"querystring", + "locationName":"targetResourceId" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListActionsResponse":{ + "type":"structure", + "required":[ + "actionSummaries", + "nextToken" + ], + "members":{ + "actionSummaries":{"shape":"ActionSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAssetModelCompositeModelsRequest":{ + "type":"structure", + "required":["assetModelId"], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelId" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListAssetModelCompositeModelsResponse":{ + "type":"structure", + "required":["assetModelCompositeModelSummaries"], + "members":{ + "assetModelCompositeModelSummaries":{"shape":"AssetModelCompositeModelSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListAssetModelPropertiesFilter":{ "type":"string", "enum":[ @@ -4024,7 +4780,7 @@ "required":["assetModelId"], "members":{ "assetModelId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetModelId" }, @@ -4065,6 +4821,11 @@ "shape":"MaxResults", "location":"querystring", "locationName":"maxResults" + }, + "assetModelTypes":{ + "shape":"ListAssetModelsTypeFilter", + "location":"querystring", + "locationName":"assetModelTypes" } } }, @@ -4076,6 +4837,10 @@ "nextToken":{"shape":"NextToken"} } }, + "ListAssetModelsTypeFilter":{ + "type":"list", + "member":{"shape":"AssetModelType"} + }, "ListAssetPropertiesFilter":{ "type":"string", "enum":[ @@ -4088,7 +4853,7 @@ "required":["assetId"], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, @@ -4125,7 +4890,7 @@ ], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, @@ -4175,7 +4940,7 @@ "locationName":"maxResults" }, "assetModelId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"assetModelId" }, @@ -4199,12 +4964,12 @@ "required":["assetId"], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, "hierarchyId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"hierarchyId" }, @@ -4273,6 +5038,35 @@ "nextToken":{"shape":"NextToken"} } }, + "ListCompositionRelationshipsRequest":{ + "type":"structure", + "required":["assetModelId"], + "members":{ + "assetModelId":{ + "shape":"ID", + "location":"uri", + "locationName":"assetModelId" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListCompositionRelationshipsResponse":{ + "type":"structure", + "required":["compositionRelationshipSummaries"], + "members":{ + "compositionRelationshipSummaries":{"shape":"CompositionRelationshipSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListDashboardsRequest":{ "type":"structure", "required":["projectId"], @@ -4436,7 +5230,7 @@ "locationName":"maxResults" }, "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"querystring", "locationName":"assetId" }, @@ -4572,6 +5366,10 @@ "min":1, "pattern":"[A-Za-z0-9+/=]+" }, + "NullableBoolean":{ + "type":"boolean", + "box":true + }, "NumberOfDays":{ "type":"integer", "min":30 @@ -4586,6 +5384,11 @@ "max":999999999, "min":0 }, + "Parquet":{ + "type":"structure", + "members":{ + } + }, "Permission":{ "type":"string", "enum":[ @@ -4686,7 +5489,9 @@ "notification":{"shape":"PropertyNotification"}, "dataType":{"shape":"PropertyDataType"}, "unit":{"shape":"PropertyUnit"}, - "type":{"shape":"PropertyType"} + "type":{"shape":"PropertyType"}, + "path":{"shape":"AssetPropertyPath"}, + "externalId":{"shape":"ExternalId"} } }, "PropertyAlias":{ @@ -4799,7 +5604,9 @@ "storageType":{"shape":"StorageType"}, "multiLayerStorage":{"shape":"MultiLayerStorage"}, "disassociatedDataStorage":{"shape":"DisassociatedDataStorageState"}, - "retentionPeriod":{"shape":"RetentionPeriod"} + "retentionPeriod":{"shape":"RetentionPeriod"}, + "warmTier":{"shape":"WarmTierState"}, + "warmTierRetentionPeriod":{"shape":"WarmTierRetentionPeriod"} } }, "PutStorageConfigurationResponse":{ @@ -4813,7 +5620,9 @@ "multiLayerStorage":{"shape":"MultiLayerStorage"}, "disassociatedDataStorage":{"shape":"DisassociatedDataStorageState"}, "retentionPeriod":{"shape":"RetentionPeriod"}, - "configurationStatus":{"shape":"ConfigurationStatus"} + "configurationStatus":{"shape":"ConfigurationStatus"}, + "warmTier":{"shape":"WarmTierState"}, + "warmTierRetentionPeriod":{"shape":"WarmTierRetentionPeriod"} } }, "Qualities":{ @@ -4830,6 +5639,19 @@ "UNCERTAIN" ] }, + "QueryStatement":{ + "type":"string", + "min":1, + "pattern":"^[\\s\\S]+$" + }, + "QueryTimeoutException":{ + "type":"structure", + "members":{ + "message":{"shape":"errorMessage"} + }, + "error":{"httpStatusCode":400}, + "exception":true + }, "Resolution":{ "type":"string", "max":3, @@ -4883,12 +5705,34 @@ "unlimited":{"shape":"Unlimited"} } }, + "Row":{ + "type":"structure", + "required":["data"], + "members":{ + "data":{"shape":"DatumList"} + } + }, + "Rows":{ + "type":"list", + "member":{"shape":"Row"} + }, "SSOApplicationId":{ "type":"string", "max":64, "min":1, "pattern":"^[!-~]*" }, + "ScalarType":{ + "type":"string", + "enum":[ + "BOOLEAN", + "INT", + "DOUBLE", + "TIMESTAMP", + "STRING" + ] + }, + "ScalarValue":{"type":"string"}, "ServiceUnavailableException":{ "type":"structure", "required":["message"], @@ -4950,6 +5794,17 @@ "max":256, "min":0 }, + "TargetResource":{ + "type":"structure", + "required":["assetId"], + "members":{ + "assetId":{"shape":"CustomID"} + } + }, + "TargetResourceType":{ + "type":"string", + "enum":["ASSET"] + }, "ThrottlingException":{ "type":"structure", "required":["message"], @@ -5124,6 +5979,45 @@ "members":{ } }, + "UpdateAssetModelCompositeModelRequest":{ + "type":"structure", + "required":[ + "assetModelId", + "assetModelCompositeModelId", + "assetModelCompositeModelName" + ], + "members":{ + "assetModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelId" + }, + "assetModelCompositeModelId":{ + "shape":"CustomID", + "location":"uri", + "locationName":"assetModelCompositeModelId" + }, + "assetModelCompositeModelExternalId":{"shape":"ExternalId"}, + "assetModelCompositeModelDescription":{"shape":"Description"}, + "assetModelCompositeModelName":{"shape":"Name"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "assetModelCompositeModelProperties":{"shape":"AssetModelProperties"} + } + }, + "UpdateAssetModelCompositeModelResponse":{ + "type":"structure", + "required":[ + "assetModelCompositeModelPath", + "assetModelStatus" + ], + "members":{ + "assetModelCompositeModelPath":{"shape":"AssetModelCompositeModelPath"}, + "assetModelStatus":{"shape":"AssetModelStatus"} + } + }, "UpdateAssetModelRequest":{ "type":"structure", "required":[ @@ -5132,7 +6026,7 @@ ], "members":{ "assetModelId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetModelId" }, @@ -5144,7 +6038,8 @@ "clientToken":{ "shape":"ClientToken", "idempotencyToken":true - } + }, + "assetModelExternalId":{"shape":"ExternalId"} } }, "UpdateAssetModelResponse":{ @@ -5162,12 +6057,12 @@ ], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, "propertyId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"propertyId" }, @@ -5188,7 +6083,7 @@ ], "members":{ "assetId":{ - "shape":"ID", + "shape":"CustomID", "location":"uri", "locationName":"assetId" }, @@ -5197,7 +6092,8 @@ "shape":"ClientToken", "idempotencyToken":true }, - "assetDescription":{"shape":"Description"} + "assetDescription":{"shape":"Description"}, + "assetExternalId":{"shape":"ExternalId"} } }, "UpdateAssetResponse":{ @@ -5349,6 +6245,14 @@ "id":{"shape":"IdentityId"} } }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"errorMessage"} + }, + "error":{"httpStatusCode":400}, + "exception":true + }, "VariableName":{ "type":"string", "max":64, @@ -5357,10 +6261,10 @@ }, "VariableValue":{ "type":"structure", - "required":["propertyId"], "members":{ "propertyId":{"shape":"Macro"}, - "hierarchyId":{"shape":"Macro"} + "hierarchyId":{"shape":"Macro"}, + "propertyPath":{"shape":"AssetModelPropertyPath"} } }, "Variant":{ @@ -5371,6 +6275,21 @@ "doubleValue":{"shape":"PropertyValueDoubleValue"}, "booleanValue":{"shape":"PropertyValueBooleanValue"} } - } + }, + "WarmTierRetentionPeriod":{ + "type":"structure", + "members":{ + "numberOfDays":{"shape":"NumberOfDays"}, + "unlimited":{"shape":"Unlimited"} + } + }, + "WarmTierState":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "errorMessage":{"type":"string"} } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,23 +12,28 @@ "BatchPutAssetPropertyValue": "

Sends a list of asset property values to IoT SiteWise. Each value is a timestamp-quality-value (TQV) data point. For more information, see Ingesting data using the API in the IoT SiteWise User Guide.

To identify an asset property, you must specify one of the following:

  • The assetId and propertyId of an asset property.

  • A propertyAlias, which is a data stream alias (for example, /company/windfarm/3/turbine/7/temperature). To define an asset property's alias, see UpdateAssetProperty.

With respect to Unix epoch time, IoT SiteWise accepts only TQVs that have a timestamp of no more than 7 days in the past and no more than 10 minutes in the future. IoT SiteWise rejects timestamps outside of the inclusive range of [-7 days, +10 minutes] and returns a TimestampOutOfRangeException error.

For each asset property, IoT SiteWise overwrites TQVs with duplicate timestamps unless the newer TQV has a different quality. For example, if you store a TQV {T1, GOOD, V1}, then storing {T1, GOOD, V2} replaces the existing TQV.

IoT SiteWise authorizes access to each BatchPutAssetPropertyValue entry individually. For more information, see BatchPutAssetPropertyValue authorization in the IoT SiteWise User Guide.

", "CreateAccessPolicy": "

Creates an access policy that grants the specified identity (IAM Identity Center user, IAM Identity Center group, or IAM user) access to the specified IoT SiteWise Monitor portal or project resource.

", "CreateAsset": "

Creates an asset from an existing asset model. For more information, see Creating assets in the IoT SiteWise User Guide.

", - "CreateAssetModel": "

Creates an asset model from specified property and hierarchy definitions. You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see Defining asset models in the IoT SiteWise User Guide.

", - "CreateBulkImportJob": "

Defines a job to ingest data to IoT SiteWise from Amazon S3. For more information, see Create a bulk import job (CLI) in the Amazon Simple Storage Service User Guide.

You must enable IoT SiteWise to export data to Amazon S3 before you create a bulk import job. For more information about how to configure storage settings, see PutStorageConfiguration.

", + "CreateAssetModel": "

Creates an asset model from specified property and hierarchy definitions. You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see Defining asset models in the IoT SiteWise User Guide.

You can create two types of asset models, ASSET_MODEL or COMPONENT_MODEL.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

", + "CreateAssetModelCompositeModel": "

Creates a custom composite model from specified property and hierarchy definitions. There are two types of custom composite models, inline and component-model-based.

Use component-model-based custom composite models to define standard, reusable components. A component-model-based custom composite model consists of a name, a description, and the ID of the component model it references. A component-model-based custom composite model has no properties of its own; its referenced component model provides its associated properties to any created assets. For more information, see Custom composite models (Components) in the IoT SiteWise User Guide.

Use inline custom composite models to organize the properties of an asset model. The properties of inline custom composite models are local to the asset model where they are included and can't be used to create multiple assets.

To create a component-model-based model, specify the composedAssetModelId of an existing asset model with assetModelType of COMPONENT_MODEL.

To create an inline model, specify the assetModelCompositeModelProperties and don't include an composedAssetModelId.

", + "CreateBulkImportJob": "

Defines a job to ingest data to IoT SiteWise from Amazon S3. For more information, see Create a bulk import job (CLI) in the Amazon Simple Storage Service User Guide.

Before you create a bulk import job, you must enable IoT SiteWise warm tier or IoT SiteWise cold tier. For more information about how to configure storage settings, see PutStorageConfiguration.

Bulk import is designed to store historical data to IoT SiteWise. It does not trigger computations or notifications on IoT SiteWise warm or cold tier storage.

", "CreateDashboard": "

Creates a dashboard in an IoT SiteWise Monitor project.

", "CreateGateway": "

Creates a gateway, which is a virtual or edge device that delivers industrial data streams from local servers to IoT SiteWise. For more information, see Ingesting data using a gateway in the IoT SiteWise User Guide.

", "CreatePortal": "

Creates a portal, which can contain projects and dashboards. IoT SiteWise Monitor uses IAM Identity Center or IAM to authenticate portal users and manage user permissions.

Before you can sign in to a new portal, you must add at least one identity to that portal. For more information, see Adding or removing portal administrators in the IoT SiteWise User Guide.

", "CreateProject": "

Creates a project in the specified portal.

Make sure that the project name and description don't contain confidential information.

", "DeleteAccessPolicy": "

Deletes an access policy that grants the specified identity access to the specified IoT SiteWise Monitor resource. You can use this operation to revoke access to an IoT SiteWise Monitor resource.

", - "DeleteAsset": "

Deletes an asset. This action can't be undone. For more information, see Deleting assets and models in the IoT SiteWise User Guide.

You can't delete an asset that's associated to another asset. For more information, see DisassociateAssets.

", + "DeleteAsset": "

Deletes an asset. This action can't be undone. For more information, see Deleting assets and models in the IoT SiteWise User Guide.

You can't delete an asset that's associated to another asset. For more information, see DisassociateAssets.

", "DeleteAssetModel": "

Deletes an asset model. This action can't be undone. You must delete all assets created from an asset model before you can delete the model. Also, you can't delete an asset model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see Deleting assets and models in the IoT SiteWise User Guide.

", + "DeleteAssetModelCompositeModel": "

Deletes a composite model. This action can't be undone. You must delete all assets created from a composite model before you can delete the model. Also, you can't delete a composite model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see Deleting assets and models in the IoT SiteWise User Guide.

", "DeleteDashboard": "

Deletes a dashboard from IoT SiteWise Monitor.

", "DeleteGateway": "

Deletes a gateway from IoT SiteWise. When you delete a gateway, some of the gateway's files remain in your gateway's file system.

", "DeletePortal": "

Deletes a portal from IoT SiteWise Monitor.

", "DeleteProject": "

Deletes a project from IoT SiteWise Monitor.

", "DeleteTimeSeries": "

Deletes a time series (data stream). If you delete a time series that's associated with an asset property, the asset property still exists, but the time series will no longer be associated with this asset property.

To identify a time series, do one of the following:

  • If the time series isn't associated with an asset property, specify the alias of the time series.

  • If the time series is associated with an asset property, specify one of the following:

    • The alias of the time series.

    • The assetId and propertyId that identifies the asset property.

", "DescribeAccessPolicy": "

Describes an access policy, which specifies an identity's access to an IoT SiteWise Monitor portal or project.

", + "DescribeAction": "

Retrieves information about an action.

", "DescribeAsset": "

Retrieves information about an asset.

", + "DescribeAssetCompositeModel": "

Retrieves information about an asset composite model (also known as an asset component). An AssetCompositeModel is an instance of an AssetModelCompositeModel. If you want to see information about the model this is based on, call DescribeAssetModelCompositeModel.

", "DescribeAssetModel": "

Retrieves information about an asset model.

", + "DescribeAssetModelCompositeModel": "

Retrieves information about an asset model composite model (also known as an asset model component). For more information, see Custom composite models (Components) in the IoT SiteWise User Guide.

", "DescribeAssetProperty": "

Retrieves information about an asset property.

When you call this operation for an attribute property, this response includes the default attribute value that you define in the asset model. If you update the default value in the model, this operation's response includes the new default value.

This operation doesn't return the value of the asset property. To get the value of an asset property, use GetAssetPropertyValue.

", "DescribeBulkImportJob": "

Retrieves information about a bulk import job request. For more information, see Describe a bulk import job (CLI) in the Amazon Simple Storage Service User Guide.

", "DescribeDashboard": "

Retrieves information about a dashboard.

", @@ -42,11 +47,15 @@ "DescribeTimeSeries": "

Retrieves information about a time series (data stream).

To identify a time series, do one of the following:

  • If the time series isn't associated with an asset property, specify the alias of the time series.

  • If the time series is associated with an asset property, specify one of the following:

    • The alias of the time series.

    • The assetId and propertyId that identifies the asset property.

", "DisassociateAssets": "

Disassociates a child asset from the given parent asset through a hierarchy defined in the parent asset's model.

", "DisassociateTimeSeriesFromAssetProperty": "

Disassociates a time series (data stream) from an asset property.

", + "ExecuteAction": "

Executes an action on a target resource.

", + "ExecuteQuery": "

Run SQL queries to retrieve metadata and time-series data from asset models, assets, measurements, metrics, transforms, and aggregates.

", "GetAssetPropertyAggregates": "

Gets aggregated values for an asset property. For more information, see Querying aggregates in the IoT SiteWise User Guide.

To identify an asset property, you must specify one of the following:

  • The assetId and propertyId of an asset property.

  • A propertyAlias, which is a data stream alias (for example, /company/windfarm/3/turbine/7/temperature). To define an asset property's alias, see UpdateAssetProperty.

", "GetAssetPropertyValue": "

Gets an asset property's current value. For more information, see Querying current values in the IoT SiteWise User Guide.

To identify an asset property, you must specify one of the following:

  • The assetId and propertyId of an asset property.

  • A propertyAlias, which is a data stream alias (for example, /company/windfarm/3/turbine/7/temperature). To define an asset property's alias, see UpdateAssetProperty.

", "GetAssetPropertyValueHistory": "

Gets the history of an asset property's values. For more information, see Querying historical values in the IoT SiteWise User Guide.

To identify an asset property, you must specify one of the following:

  • The assetId and propertyId of an asset property.

  • A propertyAlias, which is a data stream alias (for example, /company/windfarm/3/turbine/7/temperature). To define an asset property's alias, see UpdateAssetProperty.

", "GetInterpolatedAssetPropertyValues": "

Get interpolated values for an asset property for a specified time interval, during a period of time. If your time series is missing data points during the specified time interval, you can use interpolation to estimate the missing data.

For example, you can use this operation to return the interpolated temperature values for a wind turbine every 24 hours over a duration of 7 days.

To identify an asset property, you must specify one of the following:

  • The assetId and propertyId of an asset property.

  • A propertyAlias, which is a data stream alias (for example, /company/windfarm/3/turbine/7/temperature). To define an asset property's alias, see UpdateAssetProperty.

", "ListAccessPolicies": "

Retrieves a paginated list of access policies for an identity (an IAM Identity Center user, an IAM Identity Center group, or an IAM user) or an IoT SiteWise Monitor resource (a portal or project).

", + "ListActions": "

Retrieves a paginated list of actions for a specific target resource.

", + "ListAssetModelCompositeModels": "

Retrieves a paginated list of composite models associated with the asset model

", "ListAssetModelProperties": "

Retrieves a paginated list of properties associated with an asset model. If you update properties associated with the model before you finish listing all the properties, you need to start all over again.

", "ListAssetModels": "

Retrieves a paginated list of summaries of all asset models.

", "ListAssetProperties": "

Retrieves a paginated list of properties associated with an asset. If you update properties associated with the model before you finish listing all the properties, you need to start all over again.

", @@ -54,6 +63,7 @@ "ListAssets": "

Retrieves a paginated list of asset summaries.

You can use this operation to do the following:

  • List assets based on a specific asset model.

  • List top-level assets.

You can't use this operation to list all assets. To retrieve summaries for all of your assets, use ListAssetModels to get all of your asset model IDs. Then, use ListAssets to get all assets for each asset model.

", "ListAssociatedAssets": "

Retrieves a paginated list of associated assets.

You can use this operation to do the following:

  • List child assets associated to a parent asset by a hierarchy that you specify.

  • List an asset's parent asset.

", "ListBulkImportJobs": "

Retrieves a paginated list of bulk import job requests. For more information, see List bulk import jobs (CLI) in the IoT SiteWise User Guide.

", + "ListCompositionRelationships": "

Retrieves a paginated list of composition relationships for an asset model of type COMPONENT_MODEL.

", "ListDashboards": "

Retrieves a paginated list of dashboards for an IoT SiteWise Monitor project.

", "ListGateways": "

Retrieves a paginated list of gateways.

", "ListPortals": "

Retrieves a paginated list of IoT SiteWise Monitor portals.

", @@ -69,6 +79,7 @@ "UpdateAccessPolicy": "

Updates an existing access policy that specifies an identity's access to an IoT SiteWise Monitor portal or project resource.

", "UpdateAsset": "

Updates an asset's name. For more information, see Updating assets and models in the IoT SiteWise User Guide.

", "UpdateAssetModel": "

Updates an asset model and all of the assets that were created from the model. Each asset created from the model inherits the updated asset model's property and hierarchy definitions. For more information, see Updating assets and models in the IoT SiteWise User Guide.

This operation overwrites the existing model with the provided model. To avoid deleting your asset model's properties or hierarchies, you must include their IDs and definitions in the updated asset model payload. For more information, see DescribeAssetModel.

If you remove a property from an asset model, IoT SiteWise deletes all previous data for that property. If you remove a hierarchy definition from an asset model, IoT SiteWise disassociates every asset associated with that hierarchy. You can't change the type or data type of an existing property.

", + "UpdateAssetModelCompositeModel": "

Updates a composite model and all of the assets that were created from the model. Each asset created from the model inherits the updated asset model's property and hierarchy definitions. For more information, see Updating assets and models in the IoT SiteWise User Guide.

If you remove a property from a composite asset model, IoT SiteWise deletes all previous data for that property. You can’t change the type or data type of an existing property.

To replace an existing composite asset model property with a new one with the same name, do the following:

  1. Submit an UpdateAssetModelCompositeModel request with the entire existing property removed.

  2. Submit a second UpdateAssetModelCompositeModel request that includes the new property. The new asset property will have the same name as the previous one and IoT SiteWise will generate a new unique id.

", "UpdateAssetProperty": "

Updates an asset property's alias and notification state.

This operation overwrites the property's existing alias and notification state. To keep your existing property's alias or notification state, you must include the existing values in the UpdateAssetProperty request. For more information, see DescribeAssetProperty.

", "UpdateDashboard": "

Updates an IoT SiteWise Monitor dashboard.

", "UpdateGateway": "

Updates a gateway's name.

", @@ -117,6 +128,11 @@ "UpdatePortalRequest$roleArn": "

The ARN of a service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see Using service roles for IoT SiteWise Monitor in the IoT SiteWise User Guide.

" } }, + "AccessDeniedException": { + "base": "

Access is denied.

", + "refs": { + } + }, "AccessPolicySummaries": { "base": null, "refs": { @@ -129,6 +145,51 @@ "AccessPolicySummaries$member": null } }, + "ActionDefinition": { + "base": "

Contains a definition for an action.

", + "refs": { + "ActionDefinitions$member": null + } + }, + "ActionDefinitions": { + "base": null, + "refs": { + "DescribeAssetCompositeModelResponse$actionDefinitions": "

The available actions for a composite model on this asset.

", + "DescribeAssetModelCompositeModelResponse$actionDefinitions": "

The available actions for a composite model on this asset model.

" + } + }, + "ActionPayload": { + "base": "

The JSON payload of the action.

", + "refs": { + "DescribeActionResponse$actionPayload": "

The JSON payload of the action.

", + "ExecuteActionRequest$actionPayload": "

The JSON payload of the action.

" + } + }, + "ActionPayloadString": { + "base": null, + "refs": { + "ActionPayload$stringValue": "

The payload of the action in a JSON string.

" + } + }, + "ActionSummaries": { + "base": null, + "refs": { + "ListActionsResponse$actionSummaries": "

A list that summarizes the actions associated with the specified asset.

" + } + }, + "ActionSummary": { + "base": "

Contains the summary of the actions.

", + "refs": { + "ActionSummaries$member": null + } + }, + "AdaptiveIngestion": { + "base": null, + "refs": { + "CreateBulkImportJobRequest$adaptiveIngestion": "

If set to true, ingest new data into IoT SiteWise storage. Measurements with notifications, metrics and transforms are computed. If set to false, historical data is ingested into IoT SiteWise as is.

", + "DescribeBulkImportJobResponse$adaptiveIngestion": "

If set to true, ingest new data into IoT SiteWise storage. Measurements with notifications, metrics and transforms are computed. If set to false, historical data is ingested into IoT SiteWise as is.

" + } + }, "AggregateType": { "base": null, "refs": { @@ -195,6 +256,32 @@ "AssetCompositeModels$member": null } }, + "AssetCompositeModelPath": { + "base": null, + "refs": { + "AssetCompositeModelSummary$path": "

The path that includes all the components of the asset model for the asset.

", + "DescribeAssetCompositeModelResponse$assetCompositeModelPath": "

The path to the composite model listing the parent composite models.

" + } + }, + "AssetCompositeModelPathSegment": { + "base": "

Represents one level between a composite model and the root of the asset.

", + "refs": { + "AssetCompositeModelPath$member": null + } + }, + "AssetCompositeModelSummaries": { + "base": null, + "refs": { + "DescribeAssetCompositeModelResponse$assetCompositeModelSummaries": "

The list of composite model summaries.

", + "DescribeAssetResponse$assetCompositeModelSummaries": "

The list of the immediate child custom composite model summaries for the asset.

" + } + }, + "AssetCompositeModelSummary": { + "base": "

Contains a summary of the composite model for a specific asset.

", + "refs": { + "AssetCompositeModelSummaries$member": null + } + }, "AssetCompositeModels": { "base": null, "refs": { @@ -261,14 +348,43 @@ "AssetModelCompositeModelDefinitions": { "base": null, "refs": { - "CreateAssetModelRequest$assetModelCompositeModels": "

The composite asset models that are part of this asset model. Composite asset models are asset models that contain specific properties. Each composite model has a type that defines the properties that the composite model supports. Use composite asset models to define alarms on this asset model.

" + "CreateAssetModelRequest$assetModelCompositeModels": "

The composite models that are part of this asset model. It groups properties (such as attributes, measurements, transforms, and metrics) and child composite models that model parts of your industrial equipment. Each composite model has a type that defines the properties that the composite model supports. Use composite models to define alarms on this asset model.

When creating custom composite models, you need to use CreateAssetModelCompositeModel. For more information, see <LINK>.

" + } + }, + "AssetModelCompositeModelPath": { + "base": null, + "refs": { + "AssetModelCompositeModelSummary$path": "

The path that includes all the pieces that make up the composite model.

", + "CreateAssetModelCompositeModelResponse$assetModelCompositeModelPath": "

The path to the composite model listing the parent composite models.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelPath": "

The path to the composite model listing the parent composite models.

", + "UpdateAssetModelCompositeModelResponse$assetModelCompositeModelPath": "

The path to the composite model listing the parent composite models.

" + } + }, + "AssetModelCompositeModelPathSegment": { + "base": "

Represents one level between a composite model and the root of the asset model.

", + "refs": { + "AssetModelCompositeModelPath$member": null + } + }, + "AssetModelCompositeModelSummaries": { + "base": null, + "refs": { + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelSummaries": "

The list of composite model summaries for the composite model.

", + "DescribeAssetModelResponse$assetModelCompositeModelSummaries": "

The list of the immediate child custom composite model summaries for the asset model.

", + "ListAssetModelCompositeModelsResponse$assetModelCompositeModelSummaries": "

A list that summarizes each composite model.

" + } + }, + "AssetModelCompositeModelSummary": { + "base": "

Contains a summary of the composite model.

", + "refs": { + "AssetModelCompositeModelSummaries$member": null } }, "AssetModelCompositeModels": { "base": null, "refs": { - "DescribeAssetModelResponse$assetModelCompositeModels": "

The list of composite asset models for the asset model.

", - "UpdateAssetModelRequest$assetModelCompositeModels": "

The composite asset models that are part of this asset model. Composite asset models are asset models that contain specific properties. Each composite model has a type that defines the properties that the composite model supports. Use composite asset models to define alarms on this asset model.

" + "DescribeAssetModelResponse$assetModelCompositeModels": "

The list of built-in composite models for the asset model, such as those with those of type AWS/ALARMS.

", + "UpdateAssetModelRequest$assetModelCompositeModels": "

The composite models that are part of this asset model. It groups properties (such as attributes, measurements, transforms, and metrics) and child composite models that model parts of your industrial equipment. Each composite model has a type that defines the properties that the composite model supports. Use composite models to define alarms on this asset model.

When creating custom composite models, you need to use CreateAssetModelCompositeModel. For more information, see <LINK>.

" } }, "AssetModelHierarchies": { @@ -300,7 +416,9 @@ "base": null, "refs": { "AssetModelCompositeModel$properties": "

The asset property definitions for this composite model.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelProperties": "

The property definitions of the composite model.

", "DescribeAssetModelResponse$assetModelProperties": "

The list of asset properties for the asset model.

This object doesn't include properties that you define in composite models. You can find composite model properties in the assetModelCompositeModels object.

", + "UpdateAssetModelCompositeModelRequest$assetModelCompositeModelProperties": "

The property definitions of the composite model. For more information, see <LINK>.

You can specify up to 200 properties per composite model. For more information, see Quotas in the IoT SiteWise User Guide.

", "UpdateAssetModelRequest$assetModelProperties": "

The updated property definitions of the asset model. For more information, see Asset properties in the IoT SiteWise User Guide.

You can specify up to 200 properties per asset model. For more information, see Quotas in the IoT SiteWise User Guide.

" } }, @@ -320,9 +438,24 @@ "base": null, "refs": { "AssetModelCompositeModelDefinition$properties": "

The asset property definitions for this composite model.

", + "CreateAssetModelCompositeModelRequest$assetModelCompositeModelProperties": "

The property definitions of the composite model. For more information, see <LINK>.

You can specify up to 200 properties per composite model. For more information, see Quotas in the IoT SiteWise User Guide.

", "CreateAssetModelRequest$assetModelProperties": "

The property definitions of the asset model. For more information, see Asset properties in the IoT SiteWise User Guide.

You can specify up to 200 properties per asset model. For more information, see Quotas in the IoT SiteWise User Guide.

" } }, + "AssetModelPropertyPath": { + "base": null, + "refs": { + "AssetModelProperty$path": "

The structured path to the property from the root of the asset model.

", + "AssetModelPropertySummary$path": "

The structured path to the property from the root of the asset model.

", + "VariableValue$propertyPath": "

The path of the property.

" + } + }, + "AssetModelPropertyPathSegment": { + "base": "

Represents one level between a property and the root of the asset model.

", + "refs": { + "AssetModelPropertyPath$member": null + } + }, "AssetModelPropertySummaries": { "base": null, "refs": { @@ -345,9 +478,12 @@ "base": "

Contains current status information for an asset model. For more information, see Asset and model states in the IoT SiteWise User Guide.

", "refs": { "AssetModelSummary$status": "

The current status of the asset model.

", + "CreateAssetModelCompositeModelResponse$assetModelStatus": null, "CreateAssetModelResponse$assetModelStatus": "

The status of the asset model, which contains a state (CREATING after successfully calling this operation) and any error message.

", + "DeleteAssetModelCompositeModelResponse$assetModelStatus": null, "DeleteAssetModelResponse$assetModelStatus": "

The status of the asset model, which contains a state (DELETING after successfully calling this operation) and any error message.

", "DescribeAssetModelResponse$assetModelStatus": "

The current status of the asset model, which contains a state and any error message.

", + "UpdateAssetModelCompositeModelResponse$assetModelStatus": null, "UpdateAssetModelResponse$assetModelStatus": "

The status of the asset model, which contains a state (UPDATING after successfully calling this operation) and any error message.

" } }, @@ -363,10 +499,20 @@ "AssetModelSummaries$member": null } }, + "AssetModelType": { + "base": null, + "refs": { + "AssetModelSummary$assetModelType": "

The type of asset model.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

", + "CreateAssetModelRequest$assetModelType": "

The type of asset model.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

", + "DescribeAssetModelResponse$assetModelType": "

The type of asset model.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

", + "ListAssetModelsTypeFilter$member": null + } + }, "AssetProperties": { "base": null, "refs": { "AssetCompositeModel$properties": "

The asset properties that this composite model defines.

", + "DescribeAssetCompositeModelResponse$assetCompositeModelProperties": "

The property definitions of the composite model that was used to create the asset.

", "DescribeAssetResponse$assetProperties": "

The list of asset properties for the asset.

This object doesn't include properties that you define in composite models. You can find composite model properties in the assetCompositeModels object.

" } }, @@ -389,6 +535,20 @@ "PutAssetPropertyValueEntry$propertyAlias": "

The alias that identifies the property, such as an OPC-UA server data stream path (for example, /company/windfarm/3/turbine/7/temperature). For more information, see Mapping industrial data streams to asset properties in the IoT SiteWise User Guide.

" } }, + "AssetPropertyPath": { + "base": null, + "refs": { + "AssetProperty$path": "

The structured path to the property from the root of the asset.

", + "AssetPropertySummary$path": "

The structured path to the property from the root of the asset.

", + "Property$path": "

The structured path to the property from the root of the asset.

" + } + }, + "AssetPropertyPathSegment": { + "base": "

Represents one level between a property and the root of the asset.

", + "refs": { + "AssetPropertyPath$member": null + } + }, "AssetPropertySummaries": { "base": null, "refs": { @@ -501,7 +661,7 @@ "AuthMode": { "base": null, "refs": { - "CreatePortalRequest$portalAuthMode": "

The service to use to authenticate users to the portal. Choose from the following options:

  • SSO – The portal uses IAM Identity Center (successor to Single Sign-On) to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see Enabling IAM Identity Center in the IoT SiteWise User Guide. This option is only available in Amazon Web Services Regions other than the China Regions.

  • IAM – The portal uses Identity and Access Management to authenticate users and manage user permissions.

You can't change this value after you create a portal.

Default: SSO

", + "CreatePortalRequest$portalAuthMode": "

The service to use to authenticate users to the portal. Choose from the following options:

  • SSO – The portal uses IAM Identity Center to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see Enabling IAM Identity Center in the IoT SiteWise User Guide. This option is only available in Amazon Web Services Regions other than the China Regions.

  • IAM – The portal uses Identity and Access Management to authenticate users and manage user permissions.

You can't change this value after you create a portal.

Default: SSO

", "DescribePortalResponse$portalAuthMode": "

The service to use to authenticate users to the portal.

" } }, @@ -850,12 +1010,14 @@ "BatchAssociateProjectAssetsRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "BatchDisassociateProjectAssetsRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "CreateAccessPolicyRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", + "CreateAssetModelCompositeModelRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "CreateAssetModelRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "CreateAssetRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "CreateDashboardRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "CreatePortalRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "CreateProjectRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "DeleteAccessPolicyRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", + "DeleteAssetModelCompositeModelRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "DeleteAssetModelRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "DeleteAssetRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "DeleteDashboardRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", @@ -864,7 +1026,9 @@ "DeleteTimeSeriesRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "DisassociateAssetsRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "DisassociateTimeSeriesFromAssetPropertyRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", + "ExecuteActionRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "UpdateAccessPolicyRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", + "UpdateAssetModelCompositeModelRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "UpdateAssetModelRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "UpdateAssetPropertyRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", "UpdateAssetRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

", @@ -873,6 +1037,12 @@ "UpdateProjectRequest$clientToken": "

A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.

" } }, + "ColumnInfo": { + "base": "

A description of the column in the query results.

", + "refs": { + "ColumnsList$member": null + } + }, "ColumnName": { "base": null, "refs": { @@ -885,10 +1055,52 @@ "Csv$columnNames": "

The column names specified in the .csv file.

" } }, + "ColumnType": { + "base": "

The data type of the column.

", + "refs": { + "ColumnInfo$type": "

The type of the column description.

" + } + }, + "ColumnsList": { + "base": null, + "refs": { + "ExecuteQueryResponse$columns": "

Represents a single column in the query results.

" + } + }, "CompositeModelProperty": { "base": "

Contains information about a composite model property on an asset.

", "refs": { - "DescribeAssetPropertyResponse$compositeModel": "

The composite asset model that declares this asset property, if this asset property exists in a composite model.

" + "DescribeAssetPropertyResponse$compositeModel": "

The composite model that declares this asset property, if this asset property exists in a composite model.

" + } + }, + "CompositionDetails": { + "base": "

Metadata for the composition relationship established by using composedAssetModelId in CreateAssetModelCompositeModel .

", + "refs": { + "DescribeAssetModelCompositeModelResponse$compositionDetails": "

Metadata for the composition relationship established by using composedAssetModelId in CreateAssetModelCompositeModel . For instance, an array detailing the path of the composition relationship for this composite model.

" + } + }, + "CompositionRelationship": { + "base": null, + "refs": { + "CompositionDetails$compositionRelationship": "

An array detailing the composition relationship for this composite model.

" + } + }, + "CompositionRelationshipItem": { + "base": "

Represents a composite model that composed an asset model of type COMPONENT_MODEL.

", + "refs": { + "CompositionRelationship$member": null + } + }, + "CompositionRelationshipSummaries": { + "base": null, + "refs": { + "ListCompositionRelationshipsResponse$compositionRelationshipSummaries": "

A list that summarizes each composition relationship.

" + } + }, + "CompositionRelationshipSummary": { + "base": "

Contains a summary of the components of the composite model.

", + "refs": { + "CompositionRelationshipSummaries$member": null } }, "ComputeLocation": { @@ -940,6 +1152,16 @@ "refs": { } }, + "CreateAssetModelCompositeModelRequest": { + "base": null, + "refs": { + } + }, + "CreateAssetModelCompositeModelResponse": { + "base": null, + "refs": { + } + }, "CreateAssetModelRequest": { "base": null, "refs": { @@ -1011,9 +1233,65 @@ } }, "Csv": { - "base": "

A .csv file.

", + "base": "

A .CSV file.

", "refs": { - "FileFormat$csv": "

The .csv file format.

" + "FileFormat$csv": "

The file is in .CSV format.

" + } + }, + "CustomID": { + "base": null, + "refs": { + "AssetModelCompositeModel$id": "

The ID of the asset model composite model.

", + "AssetModelHierarchy$id": "

The ID of the asset model hierarchy. This ID is a hierarchyId.

  • If you are callling UpdateAssetModel to create a new hierarchy: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

  • If you are calling UpdateAssetModel to modify an existing hierarchy: This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "AssetModelHierarchy$childAssetModelId": "

The ID of the asset model, in UUID format. All assets in this hierarchy must be instances of the childAssetModelId asset model. IoT SiteWise will always return the actual asset model ID for this value. However, when you are specifying this value as part of a call to UpdateAssetModel, you may provide either the asset model ID or else externalId: followed by the asset model's external ID. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelHierarchyDefinition$childAssetModelId": "

The ID of an asset model for this hierarchy. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "AssetModelProperty$id": "

The ID of the asset model property.

  • If you are callling UpdateAssetModel to create a new property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

  • If you are calling UpdateAssetModel to modify an existing property: This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "AssociateAssetsRequest$assetId": "

The ID of the parent asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "AssociateAssetsRequest$hierarchyId": "

The ID of a hierarchy in the parent asset's model. (This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.) Hierarchies allow different groupings of assets to be formed that all come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.

", + "AssociateAssetsRequest$childAssetId": "

The ID of the child asset to be associated. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "AssociateTimeSeriesToAssetPropertyRequest$assetId": "

The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "AssociateTimeSeriesToAssetPropertyRequest$propertyId": "

The ID of the asset property. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "CreateAssetModelCompositeModelRequest$assetModelId": "

The ID of the asset model this composite model is a part of.

", + "CreateAssetModelCompositeModelRequest$parentAssetModelCompositeModelId": "

The ID of the parent composite model in this asset model relationship.

", + "CreateAssetModelCompositeModelRequest$composedAssetModelId": "

The ID of a composite model on this asset.

", + "CreateAssetRequest$assetModelId": "

The ID of the asset model from which to create the asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DeleteAssetModelCompositeModelRequest$assetModelId": "

The ID of the asset model, in UUID format.

", + "DeleteAssetModelCompositeModelRequest$assetModelCompositeModelId": "

The ID of a composite model on this asset model.

", + "DeleteAssetModelRequest$assetModelId": "

The ID of the asset model to delete. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DeleteAssetRequest$assetId": "

The ID of the asset to delete. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DeleteTimeSeriesRequest$assetId": "

The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DeleteTimeSeriesRequest$propertyId": "

The ID of the asset property. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetCompositeModelRequest$assetId": "

The ID of the asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetCompositeModelRequest$assetCompositeModelId": "

The ID of a composite model on this asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetModelCompositeModelRequest$assetModelId": "

The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetModelCompositeModelRequest$assetModelCompositeModelId": "

The ID of a composite model on this asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetModelRequest$assetModelId": "

The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetPropertyRequest$assetId": "

The ID of the asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetPropertyRequest$propertyId": "

The ID of the asset property. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetRequest$assetId": "

The ID of the asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeTimeSeriesRequest$assetId": "

The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DescribeTimeSeriesRequest$propertyId": "

The ID of the asset property. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DisassociateAssetsRequest$assetId": "

The ID of the parent asset from which to disassociate the child asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DisassociateAssetsRequest$hierarchyId": "

The ID of a hierarchy in the parent asset's model. (This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.) Hierarchies allow different groupings of assets to be formed that all come from the same asset model. You can use the hierarchy ID to identify the correct asset to disassociate. For more information, see Asset hierarchies in the IoT SiteWise User Guide.

", + "DisassociateAssetsRequest$childAssetId": "

The ID of the child asset to disassociate. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DisassociateTimeSeriesFromAssetPropertyRequest$assetId": "

The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "DisassociateTimeSeriesFromAssetPropertyRequest$propertyId": "

The ID of the asset property. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListActionsRequest$targetResourceId": "

The ID of the target resource.

", + "ListAssetModelCompositeModelsRequest$assetModelId": "

The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListAssetModelPropertiesRequest$assetModelId": "

The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListAssetPropertiesRequest$assetId": "

The ID of the asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListAssetRelationshipsRequest$assetId": "

The ID of the asset. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListAssetsRequest$assetModelId": "

The ID of the asset model by which to filter the list of assets. This parameter is required if you choose ALL for filter. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListAssociatedAssetsRequest$assetId": "

The ID of the asset to query. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "ListAssociatedAssetsRequest$hierarchyId": "

The ID of the hierarchy by which child assets are associated to the asset. (This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.) To find a hierarchy ID, use the DescribeAsset or DescribeAssetModel operations. This parameter is required if you choose CHILD for traversalDirection.

For more information, see Asset hierarchies in the IoT SiteWise User Guide.

", + "ListTimeSeriesRequest$assetId": "

The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "TargetResource$assetId": "

The ID of the asset, in UUID format.

", + "UpdateAssetModelCompositeModelRequest$assetModelId": "

The ID of the asset model, in UUID format.

", + "UpdateAssetModelCompositeModelRequest$assetModelCompositeModelId": "

The ID of a composite model on this asset model.

", + "UpdateAssetModelRequest$assetModelId": "

The ID of the asset model to update. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "UpdateAssetPropertyRequest$assetId": "

The ID of the asset to be updated. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "UpdateAssetPropertyRequest$propertyId": "

The ID of the asset property to be updated. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", + "UpdateAssetRequest$assetId": "

The ID of the asset to update. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

" } }, "CustomerManagedS3Storage": { @@ -1042,6 +1320,19 @@ "DashboardSummaries$member": null } }, + "Datum": { + "base": "

Represents a single data point in a query result.

", + "refs": { + "DatumList$member": null + } + }, + "DatumList": { + "base": null, + "refs": { + "Datum$arrayValue": "

Indicates if the data point is an array.

", + "Row$data": "

List of data points in a single row of the result set.

" + } + }, "DefaultValue": { "base": null, "refs": { @@ -1058,6 +1349,16 @@ "refs": { } }, + "DeleteAssetModelCompositeModelRequest": { + "base": null, + "refs": { + } + }, + "DeleteAssetModelCompositeModelResponse": { + "base": null, + "refs": { + } + }, "DeleteAssetModelRequest": { "base": null, "refs": { @@ -1088,6 +1389,13 @@ "refs": { } }, + "DeleteFilesAfterImport": { + "base": null, + "refs": { + "CreateBulkImportJobRequest$deleteFilesAfterImport": "

If set to true, your data files is deleted from S3, after ingestion into IoT SiteWise storage.

", + "DescribeBulkImportJobResponse$deleteFilesAfterImport": "

If set to true, your data files is deleted from S3, after ingestion into IoT SiteWise storage.

" + } + }, "DeleteGatewayRequest": { "base": null, "refs": { @@ -1128,6 +1436,36 @@ "refs": { } }, + "DescribeActionRequest": { + "base": null, + "refs": { + } + }, + "DescribeActionResponse": { + "base": null, + "refs": { + } + }, + "DescribeAssetCompositeModelRequest": { + "base": null, + "refs": { + } + }, + "DescribeAssetCompositeModelResponse": { + "base": null, + "refs": { + } + }, + "DescribeAssetModelCompositeModelRequest": { + "base": null, + "refs": { + } + }, + "DescribeAssetModelCompositeModelResponse": { + "base": null, + "refs": { + } + }, "DescribeAssetModelRequest": { "base": null, "refs": { @@ -1262,17 +1600,22 @@ "base": null, "refs": { "AssetCompositeModel$description": "

The description of the composite model.

", + "AssetCompositeModelSummary$description": "

A description of the composite model that this summary describes.

", "AssetModelCompositeModel$description": "

The description of the composite model.

", "AssetModelCompositeModelDefinition$description": "

The description of the composite model.

", + "AssetModelCompositeModelSummary$description": "

The description of the the composite model that this summary describes..

", "AssetModelSummary$description": "

The asset model description.

", "AssetSummary$description": "

A description for the asset.

", "AssociatedAssetsSummary$description": "

A description for the asset.

", + "CreateAssetModelCompositeModelRequest$assetModelCompositeModelDescription": "

A description for the composite model.

", "CreateAssetModelRequest$assetModelDescription": "

A description for the asset model.

", "CreateAssetRequest$assetDescription": "

A description for the asset.

", "CreateDashboardRequest$dashboardDescription": "

A description for the dashboard.

", "CreatePortalRequest$portalDescription": "

A description for the portal.

", "CreateProjectRequest$projectDescription": "

A description for the project.

", "DashboardSummary$description": "

The dashboard's description.

", + "DescribeAssetCompositeModelResponse$assetCompositeModelDescription": "

A description for the composite model.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelDescription": "

The description for the composite model.

", "DescribeAssetModelResponse$assetModelDescription": "

The asset model's description.

", "DescribeAssetResponse$assetDescription": "

A description for the asset.

", "DescribeDashboardResponse$dashboardDescription": "

The dashboard's description.

", @@ -1280,6 +1623,7 @@ "DescribeProjectResponse$projectDescription": "

The project's description.

", "PortalSummary$description": "

The portal's description.

", "ProjectSummary$description": "

The project's description.

", + "UpdateAssetModelCompositeModelRequest$assetModelCompositeModelDescription": "

A description for the composite model.

", "UpdateAssetModelRequest$assetModelDescription": "

A description for the asset model.

", "UpdateAssetRequest$assetDescription": "

A description for the asset.

", "UpdateDashboardRequest$dashboardDescription": "

A new description for the dashboard.

", @@ -1421,6 +1765,39 @@ "DescribeAssetRequest$excludeProperties": "

Whether or not to exclude asset properties from the response.

" } }, + "ExecuteActionRequest": { + "base": null, + "refs": { + } + }, + "ExecuteActionResponse": { + "base": null, + "refs": { + } + }, + "ExecuteQueryMaxResults": { + "base": null, + "refs": { + "ExecuteQueryRequest$maxResults": "

The maximum number of results to return at one time. The default is 25.

" + } + }, + "ExecuteQueryNextToken": { + "base": null, + "refs": { + "ExecuteQueryRequest$nextToken": "

The string that specifies the next page of results.

", + "ExecuteQueryResponse$nextToken": "

The string that specifies the next page of results.

" + } + }, + "ExecuteQueryRequest": { + "base": null, + "refs": { + } + }, + "ExecuteQueryResponse": { + "base": null, + "refs": { + } + }, "Expression": { "base": null, "refs": { @@ -1441,6 +1818,40 @@ "Transform$variables": "

The list of variables used in the expression.

" } }, + "ExternalId": { + "base": null, + "refs": { + "AssetCompositeModel$externalId": "

The external ID of the asset composite model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetCompositeModelSummary$externalId": "

An external ID to assign to the asset model.

If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel and specifying the derived ID of the model or property from the created model it's a part of.

", + "AssetHierarchy$externalId": "

The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelCompositeModel$externalId": "

The external ID of the asset model composite model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelCompositeModelDefinition$externalId": "

An external ID to assign to the composite model. The external ID must be unique among composite models within this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelCompositeModelSummary$externalId": "

The external ID of a composite model on this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelHierarchy$externalId": "

The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelHierarchyDefinition$externalId": "

An external ID to assign to the asset model hierarchy. The external ID must be unique among asset model hierarchies within this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelProperty$externalId": "

The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelPropertyDefinition$externalId": "

An external ID to assign to the property definition. The external ID must be unique among property definitions within this asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelPropertySummary$externalId": "

The external ID of the property. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetModelSummary$externalId": "

The external ID of the asset model. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetProperty$externalId": "

The external ID of the asset property. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetPropertySummary$externalId": "

The external ID of the property. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssetSummary$externalId": "

The external ID of the asset. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "AssociatedAssetsSummary$externalId": "

The external ID of the asset. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "CompositeModelProperty$externalId": "

The external ID of the composite model that contains the property. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "CreateAssetModelCompositeModelRequest$assetModelCompositeModelExternalId": "

An external ID to assign to the composite model.

If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel and specifying the derived ID of the model or property from the created model it's a part of.

", + "CreateAssetModelRequest$assetModelExternalId": "

An external ID to assign to the asset model. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "CreateAssetRequest$assetExternalId": "

An external ID to assign to the asset. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetCompositeModelResponse$assetCompositeModelExternalId": "

An external ID to assign to the asset model.

If the composite model is a component-based composite model, or one nested inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel and specifying the derived ID of the model or property from the created model it's a part of.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelExternalId": "

The external ID of a composite model on this asset model.

", + "DescribeAssetModelResponse$assetModelExternalId": "

The external ID of the asset model, if any.

", + "DescribeAssetPropertyResponse$assetExternalId": "

The external ID of the asset. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "DescribeAssetResponse$assetExternalId": "

The external ID of the asset, if any.

", + "Property$externalId": "

The external ID of the asset property. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "UpdateAssetModelCompositeModelRequest$assetModelCompositeModelExternalId": "

An external ID to assign to the asset model. You can only set the external ID of the asset model if it wasn't set when it was created, or you're setting it to the exact same thing as when it was created.

", + "UpdateAssetModelRequest$assetModelExternalId": "

An external ID to assign to the asset model. The asset model must not already have an external ID. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "UpdateAssetRequest$assetExternalId": "

An external ID to assign to the asset. The asset must not already have an external ID. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the IoT SiteWise User Guide.

" + } + }, "File": { "base": "

The file in Amazon S3 where your data is saved.

", "refs": { @@ -1448,9 +1859,9 @@ } }, "FileFormat": { - "base": "

The file format of the data.

", + "base": "

The file format of the data in S3.

", "refs": { - "JobConfiguration$fileFormat": "

The file format of the data in Amazon S3.

" + "JobConfiguration$fileFormat": "

The file format of the data in S3.

" } }, "Files": { @@ -1519,7 +1930,7 @@ "GetAssetPropertyValueAggregatesMaxResults": { "base": null, "refs": { - "GetAssetPropertyAggregatesRequest$maxResults": "

The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first.

  • The size of the result set is equal to 1 MB.

  • The number of data points in the result set is equal to the value of maxResults. The maximum value of maxResults is 250.

" + "GetAssetPropertyAggregatesRequest$maxResults": "

The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first.

  • The size of the result set is equal to 1 MB.

  • The number of data points in the result set is equal to the value of maxResults. The maximum value of maxResults is 2500.

" } }, "GetAssetPropertyValueHistoryMaxResults": { @@ -1592,72 +2003,79 @@ "base": null, "refs": { "AccessPolicySummary$id": "

The ID of the access policy.

", + "ActionDefinition$actionDefinitionId": "

The ID of the action definition.

", + "ActionSummary$actionId": "

The ID of the action.

", + "ActionSummary$actionDefinitionId": "

The ID of the action definition.

", "AssetCompositeModel$id": "

The ID of the asset composite model.

", - "AssetErrorDetails$assetId": "

The ID of the asset.

", + "AssetCompositeModelPathSegment$id": "

The ID of the path segment.

", + "AssetCompositeModelSummary$id": "

The ID of the composite model that this summary describes.

", + "AssetErrorDetails$assetId": "

The ID of the asset, in UUID format.

", "AssetHierarchy$id": "

The ID of the hierarchy. This ID is a hierarchyId.

", "AssetHierarchyInfo$parentAssetId": "

The ID of the parent asset in this asset relationship.

", "AssetHierarchyInfo$childAssetId": "

The ID of the child asset in this asset relationship.

", "AssetIDs$member": null, - "AssetModelCompositeModel$id": "

The ID of the asset model composite model.

", - "AssetModelHierarchy$id": "

The ID of the asset model hierarchy. This ID is a hierarchyId.

", - "AssetModelHierarchy$childAssetModelId": "

The ID of the asset model. All assets in this hierarchy must be instances of the childAssetModelId asset model.

", - "AssetModelHierarchyDefinition$childAssetModelId": "

The ID of an asset model for this hierarchy.

", - "AssetModelProperty$id": "

The ID of the asset model property.

", + "AssetModelCompositeModelDefinition$id": "

The ID to assign to the composite model, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

", + "AssetModelCompositeModelPathSegment$id": "

The ID of the path segment.

", + "AssetModelCompositeModelSummary$id": "

The ID of the the composite model that this summary describes..

", + "AssetModelHierarchyDefinition$id": "

The ID to assign to the asset model hierarchy, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

", + "AssetModelPropertyDefinition$id": "

The ID to assign to the asset model property, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

", + "AssetModelPropertyPathSegment$id": "

The ID of the path segment.

", "AssetModelPropertySummary$id": "

The ID of the property.

", "AssetModelPropertySummary$assetModelCompositeModelId": "

The ID of the composite model that contains the asset model property.

", - "AssetModelSummary$id": "

The ID of the asset model (used with IoT SiteWise APIs).

", + "AssetModelSummary$id": "

The ID of the asset model (used with IoT SiteWise API operations).

", "AssetProperty$id": "

The ID of the asset property.

", + "AssetPropertyPathSegment$id": "

The ID of the path segment.

", "AssetPropertySummary$id": "

The ID of the property.

", "AssetPropertySummary$assetCompositeModelId": "

The ID of the composite model that contains the asset property.

", - "AssetSummary$id": "

The ID of the asset.

", + "AssetSummary$id": "

The ID of the asset, in UUID format.

", "AssetSummary$assetModelId": "

The ID of the asset model used to create this asset.

", - "AssociateAssetsRequest$assetId": "

The ID of the parent asset.

", - "AssociateAssetsRequest$hierarchyId": "

The ID of a hierarchy in the parent asset's model. Hierarchies allow different groupings of assets to be formed that all come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.

", - "AssociateAssetsRequest$childAssetId": "

The ID of the child asset to be associated.

", - "AssociateTimeSeriesToAssetPropertyRequest$assetId": "

The ID of the asset in which the asset property was created.

", - "AssociateTimeSeriesToAssetPropertyRequest$propertyId": "

The ID of the asset property.

", - "AssociatedAssetsSummary$id": "

The ID of the asset.

", + "AssociatedAssetsSummary$id": "

The ID of the asset, in UUID format.

", "AssociatedAssetsSummary$assetModelId": "

The ID of the asset model used to create the asset.

", "BatchAssociateProjectAssetsRequest$projectId": "

The ID of the project to which to associate the assets.

", "BatchDisassociateProjectAssetsRequest$projectId": "

The ID of the project from which to disassociate the assets.

", "BatchGetAssetPropertyAggregatesEntry$assetId": "

The ID of the asset in which the asset property was created.

", - "BatchGetAssetPropertyAggregatesEntry$propertyId": "

The ID of the asset property.

", + "BatchGetAssetPropertyAggregatesEntry$propertyId": "

The ID of the asset property, in UUID format.

", "BatchGetAssetPropertyValueEntry$assetId": "

The ID of the asset in which the asset property was created.

", - "BatchGetAssetPropertyValueEntry$propertyId": "

The ID of the asset property.

", + "BatchGetAssetPropertyValueEntry$propertyId": "

The ID of the asset property, in UUID format.

", "BatchGetAssetPropertyValueHistoryEntry$assetId": "

The ID of the asset in which the asset property was created.

", - "BatchGetAssetPropertyValueHistoryEntry$propertyId": "

The ID of the asset property.

", + "BatchGetAssetPropertyValueHistoryEntry$propertyId": "

The ID of the asset property, in UUID format.

", "CompositeModelProperty$id": "

The ID of the composite model that contains the property.

", + "CompositionRelationshipItem$id": "

The ID of the component.

", + "CompositionRelationshipSummary$assetModelId": "

The ID of the asset model, in UUID format.

", + "CompositionRelationshipSummary$assetModelCompositeModelId": "

The ID of a composite model on this asset model.

", "CreateAccessPolicyResponse$accessPolicyId": "

The ID of the access policy.

", - "CreateAssetModelResponse$assetModelId": "

The ID of the asset model. You can use this ID when you call other IoT SiteWise APIs.

", - "CreateAssetRequest$assetModelId": "

The ID of the asset model from which to create the asset.

", - "CreateAssetResponse$assetId": "

The ID of the asset. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise APIs.

", + "CreateAssetModelCompositeModelRequest$assetModelCompositeModelId": "

The ID of the composite model. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

", + "CreateAssetModelCompositeModelResponse$assetModelCompositeModelId": "

The ID of the composed asset model. You can use this ID when you call other IoT SiteWise APIs.

", + "CreateAssetModelRequest$assetModelId": "

The ID to assign to the asset model, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

", + "CreateAssetModelResponse$assetModelId": "

The ID of the asset model, in UUID format. You can use this ID when you call other IoT SiteWise API operations.

", + "CreateAssetRequest$assetId": "

The ID to assign to the asset, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique.

", + "CreateAssetResponse$assetId": "

The ID of the asset, in UUID format. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise API operations.

", "CreateBulkImportJobResponse$jobId": "

The ID of the job.

", "CreateDashboardRequest$projectId": "

The ID of the project in which to create the dashboard.

", "CreateDashboardResponse$dashboardId": "

The ID of the dashboard.

", - "CreateGatewayResponse$gatewayId": "

The ID of the gateway device. You can use this ID when you call other IoT SiteWise APIs.

", + "CreateGatewayResponse$gatewayId": "

The ID of the gateway device. You can use this ID when you call other IoT SiteWise API operations.

", "CreatePortalResponse$portalId": "

The ID of the created portal.

", "CreateProjectRequest$portalId": "

The ID of the portal in which to create the project.

", "CreateProjectResponse$projectId": "

The ID of the project.

", "DashboardSummary$id": "

The ID of the dashboard.

", "DeleteAccessPolicyRequest$accessPolicyId": "

The ID of the access policy to be deleted.

", - "DeleteAssetModelRequest$assetModelId": "

The ID of the asset model to delete.

", - "DeleteAssetRequest$assetId": "

The ID of the asset to delete.

", "DeleteDashboardRequest$dashboardId": "

The ID of the dashboard to delete.

", "DeleteGatewayRequest$gatewayId": "

The ID of the gateway to delete.

", "DeletePortalRequest$portalId": "

The ID of the portal to delete.

", "DeleteProjectRequest$projectId": "

The ID of the project.

", - "DeleteTimeSeriesRequest$assetId": "

The ID of the asset in which the asset property was created.

", - "DeleteTimeSeriesRequest$propertyId": "

The ID of the asset property.

", "DescribeAccessPolicyRequest$accessPolicyId": "

The ID of the access policy.

", "DescribeAccessPolicyResponse$accessPolicyId": "

The ID of the access policy.

", - "DescribeAssetModelRequest$assetModelId": "

The ID of the asset model.

", - "DescribeAssetModelResponse$assetModelId": "

The ID of the asset model.

", - "DescribeAssetPropertyRequest$assetId": "

The ID of the asset.

", - "DescribeAssetPropertyRequest$propertyId": "

The ID of the asset property.

", - "DescribeAssetPropertyResponse$assetId": "

The ID of the asset.

", - "DescribeAssetPropertyResponse$assetModelId": "

The ID of the asset model.

", - "DescribeAssetRequest$assetId": "

The ID of the asset.

", - "DescribeAssetResponse$assetId": "

The ID of the asset.

", + "DescribeActionRequest$actionId": "

The ID of the action.

", + "DescribeActionResponse$actionId": "

The ID of the action.

", + "DescribeActionResponse$actionDefinitionId": "

The ID of the action definition.

", + "DescribeAssetCompositeModelResponse$assetId": "

The ID of the asset, in UUID format. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise APIs.

", + "DescribeAssetCompositeModelResponse$assetCompositeModelId": "

The ID of a composite model on this asset.

", + "DescribeAssetModelCompositeModelResponse$assetModelId": "

The ID of the asset model, in UUID format.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelId": "

The ID of a composite model on this asset model.

", + "DescribeAssetModelResponse$assetModelId": "

The ID of the asset model, in UUID format.

", + "DescribeAssetPropertyResponse$assetId": "

The ID of the asset, in UUID format.

", + "DescribeAssetPropertyResponse$assetModelId": "

The ID of the asset model, in UUID format.

", + "DescribeAssetResponse$assetId": "

The ID of the asset, in UUID format.

", "DescribeAssetResponse$assetModelId": "

The ID of the asset model that was used to create the asset.

", "DescribeBulkImportJobRequest$jobId": "

The ID of the job.

", "DescribeBulkImportJobResponse$jobId": "

The ID of the job.

", @@ -1673,39 +2091,28 @@ "DescribeProjectRequest$projectId": "

The ID of the project.

", "DescribeProjectResponse$projectId": "

The ID of the project.

", "DescribeProjectResponse$portalId": "

The ID of the portal that the project is in.

", - "DescribeTimeSeriesRequest$assetId": "

The ID of the asset in which the asset property was created.

", - "DescribeTimeSeriesRequest$propertyId": "

The ID of the asset property.

", "DescribeTimeSeriesResponse$assetId": "

The ID of the asset in which the asset property was created.

", - "DescribeTimeSeriesResponse$propertyId": "

The ID of the asset property.

", - "DisassociateAssetsRequest$assetId": "

The ID of the parent asset from which to disassociate the child asset.

", - "DisassociateAssetsRequest$hierarchyId": "

The ID of a hierarchy in the parent asset's model. Hierarchies allow different groupings of assets to be formed that all come from the same asset model. You can use the hierarchy ID to identify the correct asset to disassociate. For more information, see Asset hierarchies in the IoT SiteWise User Guide.

", - "DisassociateAssetsRequest$childAssetId": "

The ID of the child asset to disassociate.

", - "DisassociateTimeSeriesFromAssetPropertyRequest$assetId": "

The ID of the asset in which the asset property was created.

", - "DisassociateTimeSeriesFromAssetPropertyRequest$propertyId": "

The ID of the asset property.

", + "DescribeTimeSeriesResponse$propertyId": "

The ID of the asset property, in UUID format.

", + "ExecuteActionRequest$actionDefinitionId": "

The ID of the action definition.

", + "ExecuteActionResponse$actionId": "

The ID of the action.

", "GatewaySummary$gatewayId": "

The ID of the gateway device.

", - "GetAssetPropertyAggregatesRequest$assetId": "

The ID of the asset.

", - "GetAssetPropertyAggregatesRequest$propertyId": "

The ID of the asset property.

", - "GetAssetPropertyValueHistoryRequest$assetId": "

The ID of the asset.

", - "GetAssetPropertyValueHistoryRequest$propertyId": "

The ID of the asset property.

", - "GetAssetPropertyValueRequest$assetId": "

The ID of the asset.

", - "GetAssetPropertyValueRequest$propertyId": "

The ID of the asset property.

", - "GetInterpolatedAssetPropertyValuesRequest$assetId": "

The ID of the asset.

", - "GetInterpolatedAssetPropertyValuesRequest$propertyId": "

The ID of the asset property.

", + "GetAssetPropertyAggregatesRequest$assetId": "

The ID of the asset, in UUID format.

", + "GetAssetPropertyAggregatesRequest$propertyId": "

The ID of the asset property, in UUID format.

", + "GetAssetPropertyValueHistoryRequest$assetId": "

The ID of the asset, in UUID format.

", + "GetAssetPropertyValueHistoryRequest$propertyId": "

The ID of the asset property, in UUID format.

", + "GetAssetPropertyValueRequest$assetId": "

The ID of the asset, in UUID format.

", + "GetAssetPropertyValueRequest$propertyId": "

The ID of the asset property, in UUID format.

", + "GetInterpolatedAssetPropertyValuesRequest$assetId": "

The ID of the asset, in UUID format.

", + "GetInterpolatedAssetPropertyValuesRequest$propertyId": "

The ID of the asset property, in UUID format.

", "IDs$member": null, "Image$id": "

The ID of an existing image. Specify this parameter to keep an existing image.

", "ImageLocation$id": "

The ID of the image.

", "JobSummary$id": "

The ID of the job.

", "ListAccessPoliciesRequest$resourceId": "

The ID of the resource. This parameter is required if you specify resourceType.

", - "ListAssetModelPropertiesRequest$assetModelId": "

The ID of the asset model.

", - "ListAssetPropertiesRequest$assetId": "

The ID of the asset.

", - "ListAssetRelationshipsRequest$assetId": "

The ID of the asset.

", - "ListAssetsRequest$assetModelId": "

The ID of the asset model by which to filter the list of assets. This parameter is required if you choose ALL for filter.

", - "ListAssociatedAssetsRequest$assetId": "

The ID of the asset to query.

", - "ListAssociatedAssetsRequest$hierarchyId": "

The ID of the hierarchy by which child assets are associated to the asset. To find a hierarchy ID, use the DescribeAsset or DescribeAssetModel operations. This parameter is required if you choose CHILD for traversalDirection.

For more information, see Asset hierarchies in the IoT SiteWise User Guide.

", + "ListCompositionRelationshipsRequest$assetModelId": "

The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the IoT SiteWise User Guide.

", "ListDashboardsRequest$projectId": "

The ID of the project.

", "ListProjectAssetsRequest$projectId": "

The ID of the project.

", "ListProjectsRequest$portalId": "

The ID of the portal.

", - "ListTimeSeriesRequest$assetId": "

The ID of the asset in which the asset property was created.

", "PortalResource$id": "

The ID of the portal.

", "PortalSummary$id": "

The ID of the portal.

", "ProjectResource$id": "

The ID of the project.

", @@ -1714,12 +2121,8 @@ "PutAssetPropertyValueEntry$assetId": "

The ID of the asset to update.

", "PutAssetPropertyValueEntry$propertyId": "

The ID of the asset property for this entry.

", "TimeSeriesSummary$assetId": "

The ID of the asset in which the asset property was created.

", - "TimeSeriesSummary$propertyId": "

The ID of the asset property.

", + "TimeSeriesSummary$propertyId": "

The ID of the asset property, in UUID format.

", "UpdateAccessPolicyRequest$accessPolicyId": "

The ID of the access policy.

", - "UpdateAssetModelRequest$assetModelId": "

The ID of the asset model to update.

", - "UpdateAssetPropertyRequest$assetId": "

The ID of the asset to be updated.

", - "UpdateAssetPropertyRequest$propertyId": "

The ID of the asset property to be updated.

", - "UpdateAssetRequest$assetId": "

The ID of the asset to update.

", "UpdateDashboardRequest$dashboardId": "

The ID of the dashboard to update.

", "UpdateGatewayCapabilityConfigurationRequest$gatewayId": "

The ID of the gateway to be updated.

", "UpdateGatewayRequest$gatewayId": "

The ID of the gateway to update.

", @@ -1735,7 +2138,7 @@ } }, "Identity": { - "base": "

Contains an identity that can access an IoT SiteWise Monitor resource.

Currently, you can't use Amazon Web Services APIs to retrieve IAM Identity Center identity IDs. You can find the IAM Identity Center identity IDs in the URL of user and group pages in the IAM Identity Center console.

", + "base": "

Contains an identity that can access an IoT SiteWise Monitor resource.

Currently, you can't use Amazon Web Services API operations to retrieve IAM Identity Center identity IDs. You can find the IAM Identity Center identity IDs in the URL of user and group pages in the IAM Identity Center console.

", "refs": { "AccessPolicySummary$identity": "

The identity (an IAM Identity Center user, an IAM Identity Center group, or an IAM user).

", "CreateAccessPolicyRequest$accessPolicyIdentity": "

The identity for this access policy. Choose an IAM Identity Center user, an IAM Identity Center group, or an IAM user.

", @@ -1844,9 +2247,9 @@ "JobStatus": { "base": null, "refs": { - "CreateBulkImportJobResponse$jobStatus": "

The status of the bulk import job can be one of following values.

  • PENDING – IoT SiteWise is waiting for the current bulk import job to finish.

  • CANCELLED – The bulk import job has been canceled.

  • RUNNING – IoT SiteWise is processing your request to import your data from Amazon S3.

  • COMPLETED – IoT SiteWise successfully completed your request to import data from Amazon S3.

  • FAILED – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

  • COMPLETED_WITH_FAILURES – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

", - "DescribeBulkImportJobResponse$jobStatus": "

The status of the bulk import job can be one of following values.

  • PENDING – IoT SiteWise is waiting for the current bulk import job to finish.

  • CANCELLED – The bulk import job has been canceled.

  • RUNNING – IoT SiteWise is processing your request to import your data from Amazon S3.

  • COMPLETED – IoT SiteWise successfully completed your request to import data from Amazon S3.

  • FAILED – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

  • COMPLETED_WITH_FAILURES – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

", - "JobSummary$status": "

The status of the bulk import job can be one of following values.

  • PENDING – IoT SiteWise is waiting for the current bulk import job to finish.

  • CANCELLED – The bulk import job has been canceled.

  • RUNNING – IoT SiteWise is processing your request to import your data from Amazon S3.

  • COMPLETED – IoT SiteWise successfully completed your request to import data from Amazon S3.

  • FAILED – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

  • COMPLETED_WITH_FAILURES – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

" + "CreateBulkImportJobResponse$jobStatus": "

The status of the bulk import job can be one of following values:

  • PENDING – IoT SiteWise is waiting for the current bulk import job to finish.

  • CANCELLED – The bulk import job has been canceled.

  • RUNNING – IoT SiteWise is processing your request to import your data from Amazon S3.

  • COMPLETED – IoT SiteWise successfully completed your request to import data from Amazon S3.

  • FAILED – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

  • COMPLETED_WITH_FAILURES – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

", + "DescribeBulkImportJobResponse$jobStatus": "

The status of the bulk import job can be one of following values:

  • PENDING – IoT SiteWise is waiting for the current bulk import job to finish.

  • CANCELLED – The bulk import job has been canceled.

  • RUNNING – IoT SiteWise is processing your request to import your data from Amazon S3.

  • COMPLETED – IoT SiteWise successfully completed your request to import data from Amazon S3.

  • FAILED – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

  • COMPLETED_WITH_FAILURES – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

", + "JobSummary$status": "

The status of the bulk import job can be one of following values:

  • PENDING – IoT SiteWise is waiting for the current bulk import job to finish.

  • CANCELLED – The bulk import job has been canceled.

  • RUNNING – IoT SiteWise is processing your request to import your data from Amazon S3.

  • COMPLETED – IoT SiteWise successfully completed your request to import data from Amazon S3.

  • FAILED – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

  • COMPLETED_WITH_FAILURES – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues.

" } }, "JobSummaries": { @@ -1856,7 +2259,7 @@ } }, "JobSummary": { - "base": "

Contains a job summary information.

", + "base": "

Contains the job summary information.

", "refs": { "JobSummaries$member": null } @@ -1882,6 +2285,26 @@ "refs": { } }, + "ListActionsRequest": { + "base": null, + "refs": { + } + }, + "ListActionsResponse": { + "base": null, + "refs": { + } + }, + "ListAssetModelCompositeModelsRequest": { + "base": null, + "refs": { + } + }, + "ListAssetModelCompositeModelsResponse": { + "base": null, + "refs": { + } + }, "ListAssetModelPropertiesFilter": { "base": null, "refs": { @@ -1908,6 +2331,12 @@ "refs": { } }, + "ListAssetModelsTypeFilter": { + "base": null, + "refs": { + "ListAssetModelsRequest$assetModelTypes": "

The type of asset model.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

" + } + }, "ListAssetPropertiesFilter": { "base": null, "refs": { @@ -1976,6 +2405,16 @@ "refs": { } }, + "ListCompositionRelationshipsRequest": { + "base": null, + "refs": { + } + }, + "ListCompositionRelationshipsResponse": { + "base": null, + "refs": { + } + }, "ListDashboardsRequest": { "base": null, "refs": { @@ -2068,8 +2507,8 @@ "Macro": { "base": null, "refs": { - "VariableValue$propertyId": "

The ID of the property to use as the variable. You can use the property name if it's from the same asset model.

", - "VariableValue$hierarchyId": "

The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID.

You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same propertyId. For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.

" + "VariableValue$propertyId": "

The ID of the property to use as the variable. You can use the property name if it's from the same asset model. If the property has an external ID, you can specify externalId: followed by the external ID. For more information, see Using external IDs in the IoT SiteWise User Guide.

", + "VariableValue$hierarchyId": "

The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify externalId: followed by the external ID. For more information, see Using external IDs in the IoT SiteWise User Guide.

You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same propertyId. For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the IoT SiteWise User Guide.

" } }, "MaxInterpolatedResults": { @@ -2082,6 +2521,8 @@ "base": null, "refs": { "ListAccessPoliciesRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", + "ListActionsRequest$maxResults": "

The maximum number of results to return for each paginated request.

", + "ListAssetModelCompositeModelsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListAssetModelPropertiesRequest$maxResults": "

The maximum number of results to return for each paginated request. If not specified, the default value is 50.

", "ListAssetModelsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListAssetPropertiesRequest$maxResults": "

The maximum number of results to return for each paginated request. If not specified, the default value is 50.

", @@ -2089,6 +2530,7 @@ "ListAssetsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListAssociatedAssetsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListBulkImportJobsRequest$maxResults": "

The maximum number of results to return for each paginated request.

", + "ListCompositionRelationshipsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListDashboardsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListGatewaysRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", "ListPortalsRequest$maxResults": "

The maximum number of results to return for each paginated request.

Default: 50

", @@ -2156,28 +2598,41 @@ "Name": { "base": null, "refs": { + "ActionDefinition$actionName": "

The name of the action definition.

", + "ActionDefinition$actionType": "

The type of the action definition.

", "AssetCompositeModel$name": "

The name of the composite model.

", "AssetCompositeModel$type": "

The type of the composite model. For alarm composite models, this type is AWS/ALARM.

", + "AssetCompositeModelPathSegment$name": "

The name of the path segment.

", + "AssetCompositeModelSummary$name": "

The name of the composite model that this summary describes.

", + "AssetCompositeModelSummary$type": "

The type of asset model.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

", "AssetHierarchy$name": "

The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation.

", "AssetModelCompositeModel$name": "

The name of the composite model.

", "AssetModelCompositeModel$type": "

The type of the composite model. For alarm composite models, this type is AWS/ALARM.

", "AssetModelCompositeModelDefinition$name": "

The name of the composite model.

", "AssetModelCompositeModelDefinition$type": "

The type of the composite model. For alarm composite models, this type is AWS/ALARM.

", + "AssetModelCompositeModelPathSegment$name": "

The name of the path segment.

", + "AssetModelCompositeModelSummary$name": "

The name of the the composite model that this summary describes..

", + "AssetModelCompositeModelSummary$type": "

The type of asset model.

  • ASSET_MODEL – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.

  • COMPONENT_MODEL – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.

", "AssetModelHierarchy$name": "

The name of the asset model hierarchy that you specify by using the CreateAssetModel or UpdateAssetModel API operation.

", "AssetModelHierarchyDefinition$name": "

The name of the asset model hierarchy definition (as specified in the CreateAssetModel or UpdateAssetModel API operation).

", "AssetModelProperty$name": "

The name of the asset model property.

", "AssetModelProperty$dataTypeSpec": "

The data type of the structure for this property. This parameter exists on properties that have the STRUCT data type.

", "AssetModelPropertyDefinition$name": "

The name of the property definition.

", "AssetModelPropertyDefinition$dataTypeSpec": "

The data type of the structure for this property. This parameter is required on properties that have the STRUCT data type.

The options for this parameter depend on the type of the composite model in which you define this property. Use AWS/ALARM_STATE for alarm state in alarm composite models.

", + "AssetModelPropertyPathSegment$name": "

The name of the path segment.

", "AssetModelPropertySummary$name": "

The name of the property.

", "AssetModelPropertySummary$dataTypeSpec": "

The data type of the structure for this property. This parameter exists on properties that have the STRUCT data type.

", "AssetModelSummary$name": "

The name of the asset model.

", "AssetProperty$name": "

The name of the property.

", "AssetProperty$dataTypeSpec": "

The data type of the structure for this property. This parameter exists on properties that have the STRUCT data type.

", + "AssetPropertyPathSegment$name": "

The name of the path segment.

", "AssetSummary$name": "

The name of the asset.

", "AssociatedAssetsSummary$name": "

The name of the asset.

", "CompositeModelProperty$name": "

The name of the property.

", "CompositeModelProperty$type": "

The type of the composite model that defines this property.

", + "CompositionRelationshipSummary$assetModelCompositeModelType": "

The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY.

", + "CreateAssetModelCompositeModelRequest$assetModelCompositeModelName": "

A unique, friendly name for the composite model.

", + "CreateAssetModelCompositeModelRequest$assetModelCompositeModelType": "

The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY.

", "CreateAssetModelRequest$assetModelName": "

A unique, friendly name for the asset model.

", "CreateAssetRequest$assetName": "

A friendly name for the asset.

", "CreateBulkImportJobRequest$jobName": "

The unique name that helps identify the job request.

", @@ -2187,6 +2642,10 @@ "CreatePortalRequest$portalName": "

A friendly name for the portal.

", "CreateProjectRequest$projectName": "

A friendly name for the project.

", "DashboardSummary$name": "

The name of the dashboard

", + "DescribeAssetCompositeModelResponse$assetCompositeModelName": "

The unique, friendly name for the composite model.

", + "DescribeAssetCompositeModelResponse$assetCompositeModelType": "

The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelName": "

The unique, friendly name for the composite model.

", + "DescribeAssetModelCompositeModelResponse$assetModelCompositeModelType": "

The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY.

", "DescribeAssetModelResponse$assetModelName": "

The name of the asset model.

", "DescribeAssetPropertyResponse$assetName": "

The name of the asset.

", "DescribeAssetResponse$assetName": "

The name of the asset.

", @@ -2202,6 +2661,7 @@ "ProjectSummary$name": "

The name of the project.

", "Property$name": "

The name of the property.

", "TimeSeriesSummary$dataTypeSpec": "

The data type of the structure for this time series. This parameter is required for time series that have the STRUCT data type.

The options for this parameter depend on the type of the composite model in which you created the asset property that is associated with your time series. Use AWS/ALARM_STATE for alarm state in alarm composite models.

", + "UpdateAssetModelCompositeModelRequest$assetModelCompositeModelName": "

A unique, friendly name for the composite model.

", "UpdateAssetModelRequest$assetModelName": "

A unique, friendly name for the asset model.

", "UpdateAssetRequest$assetName": "

A friendly name for the asset.

", "UpdateDashboardRequest$dashboardName": "

A new friendly name for the dashboard.

", @@ -2227,6 +2687,10 @@ "GetInterpolatedAssetPropertyValuesResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", "ListAccessPoliciesRequest$nextToken": "

The token to be used for the next set of paginated results.

", "ListAccessPoliciesResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", + "ListActionsRequest$nextToken": "

The token to be used for the next set of paginated results.

", + "ListActionsResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", + "ListAssetModelCompositeModelsRequest$nextToken": "

The token to be used for the next set of paginated results.

", + "ListAssetModelCompositeModelsResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", "ListAssetModelPropertiesRequest$nextToken": "

The token to be used for the next set of paginated results.

", "ListAssetModelPropertiesResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", "ListAssetModelsRequest$nextToken": "

The token to be used for the next set of paginated results.

", @@ -2241,6 +2705,8 @@ "ListAssociatedAssetsResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", "ListBulkImportJobsRequest$nextToken": "

The token to be used for the next set of paginated results.

", "ListBulkImportJobsResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", + "ListCompositionRelationshipsRequest$nextToken": "

The token to be used for the next set of paginated results.

", + "ListCompositionRelationshipsResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", "ListDashboardsRequest$nextToken": "

The token to be used for the next set of paginated results.

", "ListDashboardsResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

", "ListGatewaysRequest$nextToken": "

The token to be used for the next set of paginated results.

", @@ -2255,10 +2721,17 @@ "ListTimeSeriesResponse$nextToken": "

The token for the next set of results, or null if there are no additional results.

" } }, + "NullableBoolean": { + "base": null, + "refs": { + "Datum$nullValue": "

Indicates if the data point is null.

" + } + }, "NumberOfDays": { "base": null, "refs": { - "RetentionPeriod$numberOfDays": "

The number of days that your data is kept.

If you specified a value for this parameter, the unlimited parameter must be false.

" + "RetentionPeriod$numberOfDays": "

The number of days that your data is kept.

If you specified a value for this parameter, the unlimited parameter must be false.

", + "WarmTierRetentionPeriod$numberOfDays": "

The number of days the data is stored in the warm tier.

" } }, "Offset": { @@ -2275,6 +2748,12 @@ "TimeInNanos$offsetInNanos": "

The nanosecond offset from timeInSeconds.

" } }, + "Parquet": { + "base": "

A parquet file.

", + "refs": { + "FileFormat$parquet": "

The file is in parquet format.

" + } + }, "Permission": { "base": null, "refs": { @@ -2287,7 +2766,7 @@ "PortalClientId": { "base": null, "refs": { - "DescribePortalResponse$portalClientId": "

The IAM Identity Center application generated client ID (used with IAM Identity Center APIs). IoT SiteWise includes portalClientId for only portals that use IAM Identity Center to authenticate users.

" + "DescribePortalResponse$portalClientId": "

The IAM Identity Center application generated client ID (used with IAM Identity Center API operations). IoT SiteWise includes portalClientId for only portals that use IAM Identity Center to authenticate users.

" } }, "PortalResource": { @@ -2434,7 +2913,7 @@ "PropertyValueIntegerValue": { "base": null, "refs": { - "Variant$integerValue": "

Asset property data of type integer (whole number).

" + "Variant$integerValue": "

Asset property data of type integer (number that's greater than or equal to zero).

" } }, "PropertyValueStringValue": { @@ -2503,6 +2982,17 @@ "Qualities$member": null } }, + "QueryStatement": { + "base": null, + "refs": { + "ExecuteQueryRequest$queryStatement": "

The IoT SiteWise query statement.

" + } + }, + "QueryTimeoutException": { + "base": "

The query timed out.

", + "refs": { + } + }, "Resolution": { "base": null, "refs": { @@ -2550,19 +3040,44 @@ } }, "RetentionPeriod": { - "base": "

How many days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.

", + "base": "

The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.

", "refs": { - "DescribeStorageConfigurationResponse$retentionPeriod": "

How many days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.

", + "DescribeStorageConfigurationResponse$retentionPeriod": "

The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier.

", "PutStorageConfigurationRequest$retentionPeriod": null, "PutStorageConfigurationResponse$retentionPeriod": null } }, + "Row": { + "base": "

Represents a single row in the query results.

", + "refs": { + "Datum$rowValue": "

Indicates if the data point is a row.

", + "Rows$member": null + } + }, + "Rows": { + "base": null, + "refs": { + "ExecuteQueryResponse$rows": "

Represents a single row in the query results.

" + } + }, "SSOApplicationId": { "base": null, "refs": { "CreatePortalResponse$ssoApplicationId": "

The associated IAM Identity Center application ID, if the portal uses IAM Identity Center.

" } }, + "ScalarType": { + "base": null, + "refs": { + "ColumnType$scalarType": "

The allowed data types that the column has as it's value.

" + } + }, + "ScalarValue": { + "base": null, + "refs": { + "Datum$scalarValue": "

Indicates if the data point is a scalar value such as integer, string, double, or Boolean.

" + } + }, "ServiceUnavailableException": { "base": "

The requested service is unavailable.

", "refs": { @@ -2579,6 +3094,7 @@ "String": { "base": null, "refs": { + "ColumnInfo$name": "

The name of the column description.

", "ErrorReportLocation$prefix": "

Amazon S3 uses the prefix as a folder name to organize data in the bucket. Each Amazon S3 object has a key that is its unique identifier in the bucket. Each object in a bucket has exactly one key. The prefix must end with a forward slash (/). For more information, see Organizing objects using prefixes in the Amazon Simple Storage Service User Guide.

", "File$key": "

The key of the Amazon S3 object that contains your data. Each object has a key that is a unique identifier. Each object has exactly one key.

", "File$versionId": "

The version ID to identify a specific version of the Amazon S3 object that contains your data.

" @@ -2627,6 +3143,20 @@ "TagMap$value": null } }, + "TargetResource": { + "base": "

The resource the action will be taken on.

", + "refs": { + "ActionSummary$targetResource": "

The resource the action will be taken on.

", + "DescribeActionResponse$targetResource": "

The resource the action will be taken on.

", + "ExecuteActionRequest$targetResource": "

The resource the action will be taken on.

" + } + }, + "TargetResourceType": { + "base": null, + "refs": { + "ListActionsRequest$targetResourceType": "

The type of resource.

" + } + }, "ThrottlingException": { "base": "

Your request exceeded a rate limit. For example, you might have exceeded the number of IoT SiteWise assets that can be created per second, the allowed number of messages per second, and so on.

For more information, see Quotas in the IoT SiteWise User Guide.

", "refs": { @@ -2699,6 +3229,7 @@ "DashboardSummary$lastUpdateDate": "

The date the dashboard was last updated, in Unix epoch time.

", "DescribeAccessPolicyResponse$accessPolicyCreationDate": "

The date the access policy was created, in Unix epoch time.

", "DescribeAccessPolicyResponse$accessPolicyLastUpdateDate": "

The date the access policy was last updated, in Unix epoch time.

", + "DescribeActionResponse$executionTime": "

The time the action was executed.

", "DescribeAssetModelResponse$assetModelCreationDate": "

The date the asset model was created, in Unix epoch time.

", "DescribeAssetModelResponse$assetModelLastUpdateDate": "

The date the asset model was last updated, in Unix epoch time.

", "DescribeAssetResponse$assetCreationDate": "

The date the asset was created, in Unix epoch time.

", @@ -2779,7 +3310,8 @@ "Unlimited": { "base": null, "refs": { - "RetentionPeriod$unlimited": "

If true, your data is kept indefinitely.

If configured to true, you must not specify a value for the numberOfDays parameter.

" + "RetentionPeriod$unlimited": "

If true, your data is kept indefinitely.

If configured to true, you must not specify a value for the numberOfDays parameter.

", + "WarmTierRetentionPeriod$unlimited": "

If set to true, the data is stored indefinitely in the warm tier.

" } }, "UntagResourceRequest": { @@ -2802,6 +3334,16 @@ "refs": { } }, + "UpdateAssetModelCompositeModelRequest": { + "base": null, + "refs": { + } + }, + "UpdateAssetModelCompositeModelResponse": { + "base": null, + "refs": { + } + }, "UpdateAssetModelRequest": { "base": null, "refs": { @@ -2887,6 +3429,11 @@ "Identity$user": "

An IAM Identity Center user identity.

" } }, + "ValidationException": { + "base": "

The validation failed for this query.

", + "refs": { + } + }, "VariableName": { "base": null, "refs": { @@ -2905,6 +3452,30 @@ "AssetPropertyValue$value": "

The value of the asset property (see Variant).

", "InterpolatedAssetPropertyValue$value": null } + }, + "WarmTierRetentionPeriod": { + "base": "

Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.

", + "refs": { + "DescribeStorageConfigurationResponse$warmTierRetentionPeriod": "

Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.

", + "PutStorageConfigurationRequest$warmTierRetentionPeriod": "

Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.

", + "PutStorageConfigurationResponse$warmTierRetentionPeriod": "

Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled.

" + } + }, + "WarmTierState": { + "base": null, + "refs": { + "DescribeStorageConfigurationResponse$warmTier": "

A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API.

", + "PutStorageConfigurationRequest$warmTier": "

A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API.

", + "PutStorageConfigurationResponse$warmTier": "

A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API.

" + } + }, + "errorMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "QueryTimeoutException$message": null, + "ValidationException$message": null + } } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iotsitewise-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://iotsitewise-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iotsitewise-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://iotsitewise-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iotsitewise.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://iotsitewise.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://iotsitewise.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://iotsitewise.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotsitewise/2019-12-02/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotsitewise/2019-12-02/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -14,6 +14,12 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ExecuteQuery": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "rows" + }, "GetAssetPropertyAggregates": { "input_token": "nextToken", "output_token": "nextToken", @@ -38,6 +44,18 @@ "limit_key": "maxResults", "result_key": "accessPolicySummaries" }, + "ListActions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "actionSummaries" + }, + "ListAssetModelCompositeModels": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "assetModelCompositeModelSummaries" + }, "ListAssetModelProperties": { "input_token": "nextToken", "output_token": "nextToken", @@ -80,6 +98,12 @@ "limit_key": "maxResults", "result_key": "jobSummaries" }, + "ListCompositionRelationships": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "compositionRelationshipSummaries" + }, "ListDashboards": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -42,6 +42,43 @@ "shape": "BatchPutPropertyValuesResponse" } }, + "CancelMetadataTransferJob": { + "endpoint": { + "hostPrefix": "api." + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/metadata-transfer-jobs/{metadataTransferJobId}/cancel", + "responseCode": 200 + }, + "input": { + "shape": "CancelMetadataTransferJobRequest" + }, + "name": "CancelMetadataTransferJob", + "output": { + "shape": "CancelMetadataTransferJobResponse" + } + }, "CreateComponentType": { "endpoint": { "hostPrefix": "api." @@ -116,6 +153,46 @@ "shape": "CreateEntityResponse" } }, + "CreateMetadataTransferJob": { + "endpoint": { + "hostPrefix": "api." + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/metadata-transfer-jobs", + "responseCode": 200 + }, + "input": { + "shape": "CreateMetadataTransferJobRequest" + }, + "name": "CreateMetadataTransferJob", + "output": { + "shape": "CreateMetadataTransferJobResponse" + } + }, "CreateScene": { "endpoint": { "hostPrefix": "api." @@ -505,6 +582,40 @@ "shape": "GetEntityResponse" } }, + "GetMetadataTransferJob": { + "endpoint": { + "hostPrefix": "api." + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "GET", + "requestUri": "/metadata-transfer-jobs/{metadataTransferJobId}", + "responseCode": 200 + }, + "input": { + "shape": "GetMetadataTransferJobRequest" + }, + "name": "GetMetadataTransferJob", + "output": { + "shape": "GetMetadataTransferJobResponse" + } + }, "GetPricingPlan": { "endpoint": { "hostPrefix": "api." @@ -752,6 +863,40 @@ "shape": "ListComponentTypesResponse" } }, + "ListComponents": { + "endpoint": { + "hostPrefix": "api." + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/workspaces/{workspaceId}/entities/{entityId}/components-list", + "responseCode": 200 + }, + "input": { + "shape": "ListComponentsRequest" + }, + "name": "ListComponents", + "output": { + "shape": "ListComponentsResponse" + } + }, "ListEntities": { "endpoint": { "hostPrefix": "api." @@ -783,6 +928,71 @@ "shape": "ListEntitiesResponse" } }, + "ListMetadataTransferJobs": { + "endpoint": { + "hostPrefix": "api." + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/metadata-transfer-jobs-list", + "responseCode": 200 + }, + "input": { + "shape": "ListMetadataTransferJobsRequest" + }, + "name": "ListMetadataTransferJobs", + "output": { + "shape": "ListMetadataTransferJobsResponse" + } + }, + "ListProperties": { + "endpoint": { + "hostPrefix": "api." + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/workspaces/{workspaceId}/properties-list", + "responseCode": 200 + }, + "input": { + "shape": "ListPropertiesRequest" + }, + "name": "ListProperties", + "output": { + "shape": "ListPropertiesResponse" + } + }, "ListScenes": { "endpoint": { "hostPrefix": "api." @@ -1267,6 +1477,45 @@ "pattern": ".*", "type": "string" }, + "CancelMetadataTransferJobRequest": { + "members": { + "metadataTransferJobId": { + "location": "uri", + "locationName": "metadataTransferJobId", + "shape": "Id" + } + }, + "required": [ + "metadataTransferJobId" + ], + "type": "structure" + }, + "CancelMetadataTransferJobResponse": { + "members": { + "arn": { + "shape": "TwinMakerArn" + }, + "metadataTransferJobId": { + "shape": "Id" + }, + "progress": { + "shape": "MetadataTransferJobProgress" + }, + "status": { + "shape": "MetadataTransferJobStatus" + }, + "updateDateTime": { + "shape": "Timestamp" + } + }, + "required": [ + "metadataTransferJobId", + "arn", + "updateDateTime", + "status" + ], + "type": "structure" + }, "ColumnDescription": { "members": { "name": { @@ -1296,6 +1545,12 @@ ], "type": "string" }, + "ComponentPath": { + "max": 2048, + "min": 1, + "pattern": "[a-zA-Z_\\-0-9/]+", + "type": "string" + }, "ComponentPropertyGroupRequest": { "members": { "groupType": { @@ -1366,12 +1621,21 @@ }, "ComponentResponse": { "members": { + "areAllCompositeComponentsReturned": { + "shape": "Boolean" + }, + "areAllPropertiesReturned": { + "shape": "Boolean" + }, "componentName": { "shape": "Name" }, "componentTypeId": { "shape": "ComponentTypeId" }, + "compositeComponents": { + "shape": "CompositeComponentResponse" + }, "definedIn": { "shape": "String" }, @@ -1393,6 +1657,46 @@ }, "type": "structure" }, + "ComponentSummaries": { + "member": { + "shape": "ComponentSummary" + }, + "type": "list" + }, + "ComponentSummary": { + "members": { + "componentName": { + "shape": "Name" + }, + "componentPath": { + "shape": "ComponentPath" + }, + "componentTypeId": { + "shape": "ComponentTypeId" + }, + "definedIn": { + "shape": "String" + }, + "description": { + "shape": "Description" + }, + "propertyGroups": { + "shape": "ComponentPropertyGroupResponses" + }, + "status": { + "shape": "Status" + }, + "syncSource": { + "shape": "SyncSource" + } + }, + "required": [ + "componentName", + "componentTypeId", + "status" + ], + "type": "structure" + }, "ComponentTypeId": { "max": 256, "min": 1, @@ -1498,6 +1802,101 @@ "shape": "ComponentRequest" } }, + "CompositeComponentRequest": { + "members": { + "description": { + "shape": "Description" + }, + "properties": { + "shape": "PropertyRequests" + }, + "propertyGroups": { + "shape": "ComponentPropertyGroupRequests" + } + }, + "type": "structure" + }, + "CompositeComponentResponse": { + "key": { + "shape": "Name" + }, + "type": "map", + "value": { + "shape": "ComponentSummary" + } + }, + "CompositeComponentTypeRequest": { + "members": { + "componentTypeId": { + "shape": "ComponentTypeId" + } + }, + "type": "structure" + }, + "CompositeComponentTypeResponse": { + "members": { + "componentTypeId": { + "shape": "ComponentTypeId" + }, + "isInherited": { + "shape": "Boolean" + } + }, + "type": "structure" + }, + "CompositeComponentTypesRequest": { + "key": { + "shape": "Name" + }, + "type": "map", + "value": { + "shape": "CompositeComponentTypeRequest" + } + }, + "CompositeComponentTypesResponse": { + "key": { + "shape": "Name" + }, + "type": "map", + "value": { + "shape": "CompositeComponentTypeResponse" + } + }, + "CompositeComponentUpdateRequest": { + "members": { + "description": { + "shape": "Description" + }, + "propertyGroupUpdates": { + "shape": "ComponentPropertyGroupRequests" + }, + "propertyUpdates": { + "shape": "PropertyRequests" + }, + "updateType": { + "shape": "ComponentUpdateType" + } + }, + "type": "structure" + }, + "CompositeComponentUpdatesMapRequest": { + "key": { + "shape": "ComponentPath" + }, + "type": "map", + "value": { + "shape": "CompositeComponentUpdateRequest" + } + }, + "CompositeComponentsMapRequest": { + "key": { + "shape": "ComponentPath" + }, + "type": "map", + "value": { + "shape": "CompositeComponentRequest" + } + }, "Configuration": { "key": { "shape": "Name" @@ -1556,6 +1955,9 @@ "componentTypeName": { "shape": "ComponentTypeName" }, + "compositeComponentTypes": { + "shape": "CompositeComponentTypesRequest" + }, "description": { "shape": "Description" }, @@ -1613,6 +2015,9 @@ "components": { "shape": "ComponentsMapRequest" }, + "compositeComponents": { + "shape": "CompositeComponentsMapRequest" + }, "description": { "shape": "Description" }, @@ -1663,6 +2068,50 @@ ], "type": "structure" }, + "CreateMetadataTransferJobRequest": { + "members": { + "description": { + "shape": "Description" + }, + "destination": { + "shape": "DestinationConfiguration" + }, + "metadataTransferJobId": { + "shape": "Id" + }, + "sources": { + "shape": "SourceConfigurations" + } + }, + "required": [ + "sources", + "destination" + ], + "type": "structure" + }, + "CreateMetadataTransferJobResponse": { + "members": { + "arn": { + "shape": "TwinMakerArn" + }, + "creationDateTime": { + "shape": "Timestamp" + }, + "metadataTransferJobId": { + "shape": "Id" + }, + "status": { + "shape": "MetadataTransferJobStatus" + } + }, + "required": [ + "metadataTransferJobId", + "arn", + "creationDateTime", + "status" + ], + "type": "structure" + }, "CreateSceneRequest": { "members": { "capabilities": { @@ -1777,9 +2226,7 @@ } }, "required": [ - "workspaceId", - "s3Location", - "role" + "workspaceId" ], "type": "structure" }, @@ -2015,7 +2462,11 @@ "type": "structure" }, "DeleteWorkspaceResponse": { - "members": {}, + "members": { + "message": { + "shape": "WorkspaceDeleteMessage" + } + }, "type": "structure" }, "Description": { @@ -2024,6 +2475,31 @@ "pattern": ".*", "type": "string" }, + "DestinationConfiguration": { + "members": { + "iotTwinMakerConfiguration": { + "shape": "IotTwinMakerDestinationConfiguration" + }, + "s3Configuration": { + "shape": "S3DestinationConfiguration" + }, + "type": { + "shape": "DestinationType" + } + }, + "required": [ + "type" + ], + "type": "structure" + }, + "DestinationType": { + "enum": [ + "s3", + "iotsitewise", + "iottwinmaker" + ], + "type": "string" + }, "Double": { "box": true, "type": "double" @@ -2045,6 +2521,9 @@ "componentName": { "shape": "Name" }, + "componentPath": { + "shape": "ComponentPath" + }, "entityId": { "shape": "EntityId" }, @@ -2120,7 +2599,10 @@ "INTERNAL_FAILURE", "SYNC_INITIALIZING_ERROR", "SYNC_CREATING_ERROR", - "SYNC_PROCESSING_ERROR" + "SYNC_PROCESSING_ERROR", + "SYNC_DELETING_ERROR", + "PROCESSING_ERROR", + "COMPOSITE_COMPONENT_FAILURE" ], "type": "string" }, @@ -2215,6 +2697,62 @@ "shape": "String" } }, + "FilterByAsset": { + "members": { + "assetExternalId": { + "shape": "SiteWiseExternalId" + }, + "assetId": { + "shape": "Uuid" + }, + "includeAssetModel": { + "shape": "Boolean" + }, + "includeOffspring": { + "shape": "Boolean" + } + }, + "type": "structure" + }, + "FilterByAssetModel": { + "members": { + "assetModelExternalId": { + "shape": "SiteWiseExternalId" + }, + "assetModelId": { + "shape": "Uuid" + }, + "includeAssets": { + "shape": "Boolean" + }, + "includeOffspring": { + "shape": "Boolean" + } + }, + "type": "structure" + }, + "FilterByComponentType": { + "members": { + "componentTypeId": { + "shape": "ComponentTypeId" + } + }, + "required": [ + "componentTypeId" + ], + "type": "structure" + }, + "FilterByEntity": { + "members": { + "entityId": { + "shape": "EntityId" + } + }, + "required": [ + "entityId" + ], + "type": "structure" + }, "FunctionRequest": { "members": { "implementedBy": { @@ -2305,6 +2843,9 @@ "componentTypeName": { "shape": "ComponentTypeName" }, + "compositeComponentTypes": { + "shape": "CompositeComponentTypesResponse" + }, "creationDateTime": { "shape": "Timestamp" }, @@ -2375,6 +2916,9 @@ }, "GetEntityResponse": { "members": { + "areAllComponentsReturned": { + "shape": "Boolean" + }, "arn": { "shape": "TwinMakerArn" }, @@ -2425,6 +2969,67 @@ ], "type": "structure" }, + "GetMetadataTransferJobRequest": { + "members": { + "metadataTransferJobId": { + "location": "uri", + "locationName": "metadataTransferJobId", + "shape": "Id" + } + }, + "required": [ + "metadataTransferJobId" + ], + "type": "structure" + }, + "GetMetadataTransferJobResponse": { + "members": { + "arn": { + "shape": "TwinMakerArn" + }, + "creationDateTime": { + "shape": "Timestamp" + }, + "description": { + "shape": "Description" + }, + "destination": { + "shape": "DestinationConfiguration" + }, + "metadataTransferJobId": { + "shape": "Id" + }, + "metadataTransferJobRole": { + "shape": "RoleArn" + }, + "progress": { + "shape": "MetadataTransferJobProgress" + }, + "reportUrl": { + "shape": "String" + }, + "sources": { + "shape": "SourceConfigurations" + }, + "status": { + "shape": "MetadataTransferJobStatus" + }, + "updateDateTime": { + "shape": "Timestamp" + } + }, + "required": [ + "metadataTransferJobId", + "arn", + "sources", + "destination", + "metadataTransferJobRole", + "creationDateTime", + "updateDateTime", + "status" + ], + "type": "structure" + }, "GetPricingPlanRequest": { "members": {}, "type": "structure" @@ -2448,6 +3053,9 @@ "componentName": { "shape": "Name" }, + "componentPath": { + "shape": "ComponentPath" + }, "componentTypeId": { "shape": "ComponentTypeId" }, @@ -2519,6 +3127,9 @@ "componentName": { "shape": "Name" }, + "componentPath": { + "shape": "ComponentPath" + }, "componentTypeId": { "shape": "ComponentTypeId" }, @@ -2708,6 +3319,9 @@ "description": { "shape": "Description" }, + "linkedServices": { + "shape": "LinkedServices" + }, "role": { "shape": "RoleArn" }, @@ -2724,8 +3338,6 @@ "required": [ "workspaceId", "arn", - "s3Location", - "role", "creationDateTime", "updateDateTime" ], @@ -2787,6 +3399,75 @@ "box": true, "type": "long" }, + "IotSiteWiseSourceConfiguration": { + "members": { + "filters": { + "shape": "IotSiteWiseSourceConfigurationFilters" + } + }, + "type": "structure" + }, + "IotSiteWiseSourceConfigurationFilter": { + "members": { + "filterByAsset": { + "shape": "FilterByAsset" + }, + "filterByAssetModel": { + "shape": "FilterByAssetModel" + } + }, + "type": "structure", + "union": true + }, + "IotSiteWiseSourceConfigurationFilters": { + "member": { + "shape": "IotSiteWiseSourceConfigurationFilter" + }, + "type": "list" + }, + "IotTwinMakerDestinationConfiguration": { + "members": { + "workspace": { + "shape": "TwinMakerArn" + } + }, + "required": [ + "workspace" + ], + "type": "structure" + }, + "IotTwinMakerSourceConfiguration": { + "members": { + "filters": { + "shape": "IotTwinMakerSourceConfigurationFilters" + }, + "workspace": { + "shape": "TwinMakerArn" + } + }, + "required": [ + "workspace" + ], + "type": "structure" + }, + "IotTwinMakerSourceConfigurationFilter": { + "members": { + "filterByComponentType": { + "shape": "FilterByComponentType" + }, + "filterByEntity": { + "shape": "FilterByEntity" + } + }, + "type": "structure", + "union": true + }, + "IotTwinMakerSourceConfigurationFilters": { + "member": { + "shape": "IotTwinMakerSourceConfigurationFilter" + }, + "type": "list" + }, "LambdaArn": { "max": 2048, "min": 20, @@ -2804,6 +3485,16 @@ ], "type": "structure" }, + "LinkedService": { + "pattern": "[a-zA-Z_0-9]+", + "type": "string" + }, + "LinkedServices": { + "member": { + "shape": "LinkedService" + }, + "type": "list" + }, "ListComponentTypesFilter": { "members": { "extendsFrom": { @@ -2868,6 +3559,48 @@ ], "type": "structure" }, + "ListComponentsRequest": { + "members": { + "componentPath": { + "shape": "ComponentPath" + }, + "entityId": { + "location": "uri", + "locationName": "entityId", + "shape": "EntityId" + }, + "maxResults": { + "shape": "MaxResults" + }, + "nextToken": { + "shape": "NextToken" + }, + "workspaceId": { + "location": "uri", + "locationName": "workspaceId", + "shape": "Id" + } + }, + "required": [ + "workspaceId", + "entityId" + ], + "type": "structure" + }, + "ListComponentsResponse": { + "members": { + "componentSummaries": { + "shape": "ComponentSummaries" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "required": [ + "componentSummaries" + ], + "type": "structure" + }, "ListEntitiesFilter": { "members": { "componentTypeId": { @@ -2922,6 +3655,105 @@ }, "type": "structure" }, + "ListMetadataTransferJobsFilter": { + "members": { + "state": { + "shape": "MetadataTransferJobState" + }, + "workspaceId": { + "shape": "Id" + } + }, + "type": "structure", + "union": true + }, + "ListMetadataTransferJobsFilters": { + "member": { + "shape": "ListMetadataTransferJobsFilter" + }, + "type": "list" + }, + "ListMetadataTransferJobsRequest": { + "members": { + "destinationType": { + "shape": "DestinationType" + }, + "filters": { + "shape": "ListMetadataTransferJobsFilters" + }, + "maxResults": { + "shape": "MaxResults" + }, + "nextToken": { + "shape": "NextToken" + }, + "sourceType": { + "shape": "SourceType" + } + }, + "required": [ + "sourceType", + "destinationType" + ], + "type": "structure" + }, + "ListMetadataTransferJobsResponse": { + "members": { + "metadataTransferJobSummaries": { + "shape": "MetadataTransferJobSummaries" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "required": [ + "metadataTransferJobSummaries" + ], + "type": "structure" + }, + "ListPropertiesRequest": { + "members": { + "componentName": { + "shape": "Name" + }, + "componentPath": { + "shape": "ComponentPath" + }, + "entityId": { + "shape": "EntityId" + }, + "maxResults": { + "shape": "MaxResults" + }, + "nextToken": { + "shape": "NextToken" + }, + "workspaceId": { + "location": "uri", + "locationName": "workspaceId", + "shape": "Id" + } + }, + "required": [ + "workspaceId", + "entityId" + ], + "type": "structure" + }, + "ListPropertiesResponse": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "propertySummaries": { + "shape": "PropertySummaries" + } + }, + "required": [ + "propertySummaries" + ], + "type": "structure" + }, "ListScenesRequest": { "members": { "maxResults": { @@ -3081,6 +3913,85 @@ "min": 0, "type": "integer" }, + "MetadataTransferJobProgress": { + "members": { + "failedCount": { + "shape": "Integer" + }, + "skippedCount": { + "shape": "Integer" + }, + "succeededCount": { + "shape": "Integer" + }, + "totalCount": { + "shape": "Integer" + } + }, + "type": "structure" + }, + "MetadataTransferJobState": { + "enum": [ + "VALIDATING", + "PENDING", + "RUNNING", + "CANCELLING", + "ERROR", + "COMPLETED", + "CANCELLED" + ], + "type": "string" + }, + "MetadataTransferJobStatus": { + "members": { + "error": { + "shape": "ErrorDetails" + }, + "queuedPosition": { + "shape": "Integer" + }, + "state": { + "shape": "MetadataTransferJobState" + } + }, + "type": "structure" + }, + "MetadataTransferJobSummaries": { + "member": { + "shape": "MetadataTransferJobSummary" + }, + "type": "list" + }, + "MetadataTransferJobSummary": { + "members": { + "arn": { + "shape": "TwinMakerArn" + }, + "creationDateTime": { + "shape": "Timestamp" + }, + "metadataTransferJobId": { + "shape": "Id" + }, + "progress": { + "shape": "MetadataTransferJobProgress" + }, + "status": { + "shape": "MetadataTransferJobStatus" + }, + "updateDateTime": { + "shape": "Timestamp" + } + }, + "required": [ + "metadataTransferJobId", + "arn", + "creationDateTime", + "updateDateTime", + "status" + ], + "type": "structure" + }, "Name": { "max": 256, "min": 1, @@ -3443,6 +4354,9 @@ }, "PropertyResponse": { "members": { + "areAllPropertyValuesReturned": { + "shape": "Boolean" + }, "definition": { "shape": "PropertyDefinitionResponse" }, @@ -3461,6 +4375,32 @@ "shape": "PropertyResponse" } }, + "PropertySummaries": { + "member": { + "shape": "PropertySummary" + }, + "type": "list" + }, + "PropertySummary": { + "members": { + "areAllPropertyValuesReturned": { + "shape": "Boolean" + }, + "definition": { + "shape": "PropertyDefinitionResponse" + }, + "propertyName": { + "shape": "Name" + }, + "value": { + "shape": "DataValue" + } + }, + "required": [ + "propertyName" + ], + "type": "structure" + }, "PropertyTableValue": { "key": { "shape": "Name" @@ -3624,12 +4564,42 @@ }, "type": "list" }, + "S3DestinationConfiguration": { + "members": { + "location": { + "shape": "S3DestinationLocation" + } + }, + "required": [ + "location" + ], + "type": "structure" + }, + "S3DestinationLocation": { + "pattern": ".*(^arn:((aws)|(aws-cn)|(aws-us-gov)):s3:::)([/a-zA-Z0-9_-]+$).*", + "type": "string" + }, "S3Location": { "max": 1024, "min": 0, "pattern": ".*(^arn:((aws)|(aws-cn)|(aws-us-gov)):s3:::)([a-zA-Z0-9_-]+$).*", "type": "string" }, + "S3SourceConfiguration": { + "members": { + "location": { + "shape": "S3SourceLocation" + } + }, + "required": [ + "location" + ], + "type": "structure" + }, + "S3SourceLocation": { + "pattern": ".*(^arn:((aws)|(aws-cn)|(aws-us-gov)):s3:::)([a-zA-Z0-9_-]+)\\/([/.a-zA-Z0-9_-]+$).*", + "type": "string" + }, "S3Url": { "max": 256, "min": 0, @@ -3748,6 +4718,48 @@ }, "type": "structure" }, + "SiteWiseExternalId": { + "max": 128, + "min": 2, + "pattern": ".*[a-zA-Z0-9_][a-zA-Z_\\-0-9.:]*[a-zA-Z0-9_]+.*", + "type": "string" + }, + "SourceConfiguration": { + "members": { + "iotSiteWiseConfiguration": { + "shape": "IotSiteWiseSourceConfiguration" + }, + "iotTwinMakerConfiguration": { + "shape": "IotTwinMakerSourceConfiguration" + }, + "s3Configuration": { + "shape": "S3SourceConfiguration" + }, + "type": { + "shape": "SourceType" + } + }, + "required": [ + "type" + ], + "type": "structure" + }, + "SourceConfigurations": { + "max": 1, + "member": { + "shape": "SourceConfiguration" + }, + "min": 1, + "type": "list" + }, + "SourceType": { + "enum": [ + "s3", + "iotsitewise", + "iottwinmaker" + ], + "type": "string" + }, "State": { "enum": [ "CREATING", @@ -4066,6 +5078,9 @@ "componentTypeName": { "shape": "ComponentTypeName" }, + "compositeComponentTypes": { + "shape": "CompositeComponentTypesRequest" + }, "description": { "shape": "Description" }, @@ -4124,6 +5139,9 @@ "componentUpdates": { "shape": "ComponentUpdatesMapRequest" }, + "compositeComponentUpdates": { + "shape": "CompositeComponentUpdatesMapRequest" + }, "description": { "shape": "Description" }, @@ -4253,6 +5271,9 @@ "role": { "shape": "RoleArn" }, + "s3Location": { + "shape": "S3Location" + }, "workspaceId": { "location": "uri", "locationName": "workspaceId", @@ -4275,6 +5296,12 @@ ], "type": "structure" }, + "Uuid": { + "max": 36, + "min": 36, + "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}", + "type": "string" + }, "ValidationException": { "error": { "httpStatusCode": 400, @@ -4298,6 +5325,12 @@ }, "type": "list" }, + "WorkspaceDeleteMessage": { + "max": 2048, + "min": 0, + "pattern": ".*", + "type": "string" + }, "WorkspaceSummaries": { "member": { "shape": "WorkspaceSummary" @@ -4315,6 +5348,9 @@ "description": { "shape": "Description" }, + "linkedServices": { + "shape": "LinkedServices" + }, "updateDateTime": { "shape": "Timestamp" }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,8 +3,10 @@ "service": "

IoT TwinMaker is a service with which you can build operational digital twins of physical systems. IoT TwinMaker overlays measurements and analysis from real-world sensors, cameras, and enterprise applications so you can create data visualizations to monitor your physical factory, building, or industrial plant. You can use this real-world data to monitor operations and diagnose and repair errors.

", "operations": { "BatchPutPropertyValues": "

Sets values for multiple time series properties.

", + "CancelMetadataTransferJob": "

Cancels the metadata transfer job.

", "CreateComponentType": "

Creates a component type.

", "CreateEntity": "

Creates an entity.

", + "CreateMetadataTransferJob": "

Creates a new metadata transfer job.

", "CreateScene": "

Creates a scene.

", "CreateSyncJob": "

This action creates a SyncJob.

", "CreateWorkspace": "

Creates a workplace.

", @@ -13,9 +15,10 @@ "DeleteScene": "

Deletes a scene.

", "DeleteSyncJob": "

Delete the SyncJob.

", "DeleteWorkspace": "

Deletes a workspace.

", - "ExecuteQuery": "

Run queries to access information from your knowledge graph of entities within individual workspaces.

", + "ExecuteQuery": "

Run queries to access information from your knowledge graph of entities within individual workspaces.

The ExecuteQuery action only works with Amazon Web Services Java SDK2. ExecuteQuery will not work with any Amazon Web Services Java SDK version < 2.x.

", "GetComponentType": "

Retrieves information about a component type.

", "GetEntity": "

Retrieves information about an entity.

", + "GetMetadataTransferJob": "

Gets a nmetadata transfer job.

", "GetPricingPlan": "

Gets the pricing plan.

", "GetPropertyValue": "

Gets the property values for a component, component type, entity, or workspace.

You must specify a value for either componentName, componentTypeId, entityId, or workspaceId.

", "GetPropertyValueHistory": "

Retrieves information about the history of a time series property value for a component, component type, entity, or workspace.

You must specify a value for workspaceId. For entity-specific queries, specify values for componentName and entityId. For cross-entity quries, specify a value for componentTypeId.

", @@ -23,7 +26,10 @@ "GetSyncJob": "

Gets the SyncJob.

", "GetWorkspace": "

Retrieves information about a workspace.

", "ListComponentTypes": "

Lists all component types in a workspace.

", + "ListComponents": "

This API lists the components of an entity.

", "ListEntities": "

Lists all entities in a workspace.

", + "ListMetadataTransferJobs": "

Lists the metadata transfer jobs.

", + "ListProperties": "

This API lists the properties of a component.

", "ListScenes": "

Lists all scenes in a workspace.

", "ListSyncJobs": "

List all SyncJobs.

", "ListSyncResources": "

Lists the sync resources.

", @@ -69,16 +75,24 @@ "base": null, "refs": { "ComponentPropertyGroupResponse$isInherited": "

A Boolean value that specifies whether the property group is inherited from a parent entity

", + "ComponentResponse$areAllPropertiesReturned": "

This flag notes whether all properties of the component are returned in the API response. The maximum number of properties returned is 800.

", + "ComponentResponse$areAllCompositeComponentsReturned": "

This flag notes whether all compositeComponents are returned in the API response.

", + "CompositeComponentTypeResponse$isInherited": "

This boolean indicates whether this compositeComponentType is inherited from its parent.

", "CreateComponentTypeRequest$isSingleton": "

A Boolean value that specifies whether an entity can have more than one component of this type.

", "DataConnector$isNative": "

A Boolean value that specifies whether the data connector is native to IoT TwinMaker.

", "DataValue$booleanValue": "

A Boolean value.

", "DeleteEntityRequest$isRecursive": "

A Boolean value that specifies whether the operation deletes child entities.

", - "EntitySummary$hasChildEntities": "

A Boolean value that specifies whether the entity has child entities or not.

", + "EntitySummary$hasChildEntities": "

An eventual Boolean value that specifies whether the entity has child entities or not.

", + "FilterByAsset$includeOffspring": "

Includes sub-assets.[need description hekp for this]

", + "FilterByAsset$includeAssetModel": "

Boolean to include the asset model.

", + "FilterByAssetModel$includeOffspring": "

Include asset offspring. [need desc.]

", + "FilterByAssetModel$includeAssets": "

Bolean to include assets.

", "FunctionResponse$isInherited": "

Indicates whether this function is inherited.

", "GetComponentTypeResponse$isSingleton": "

A Boolean value that specifies whether an entity can have more than one component of this type.

", "GetComponentTypeResponse$isAbstract": "

A Boolean value that specifies whether the component type is abstract.

", "GetComponentTypeResponse$isSchemaInitialized": "

A Boolean value that specifies whether the component type has a schema initializer and that the schema initializer has run.

", "GetEntityResponse$hasChildEntities": "

A Boolean value that specifies whether the entity has associated child entities.

", + "GetEntityResponse$areAllComponentsReturned": "

This flag notes whether all components are returned in the API response. The maximum number of components returned is 30.

", "ListComponentTypesFilter$isAbstract": "

A Boolean value that specifies whether the component types in the list are abstract.

", "PropertyDefinitionRequest$isRequiredInEntity": "

A Boolean value that specifies whether the property is required.

", "PropertyDefinitionRequest$isExternalId": "

A Boolean value that specifies whether the property ID comes from an external data store.

", @@ -92,6 +106,8 @@ "PropertyDefinitionResponse$isFinal": "

A Boolean value that specifies whether the property definition can be updated.

", "PropertyDefinitionResponse$isInherited": "

A Boolean value that specifies whether the property definition is inherited from a parent entity.

", "PropertyGroupResponse$isInherited": "

A Boolean value that specifies whether the property group is inherited from a parent entity

", + "PropertyResponse$areAllPropertyValuesReturned": "

This flag notes whether all values of a list or map type property are returned in the API response. The maximum number of values per property returned is 50.

", + "PropertySummary$areAllPropertyValuesReturned": "

This flag notes whether all values of a list or map type property are returned in the API response. The maximum number of values per property returned is 50.

", "UpdateComponentTypeRequest$isSingleton": "

A Boolean value that specifies whether an entity can have more than one component of this type.

" } }, @@ -107,6 +123,16 @@ "PricingBundles$member": null } }, + "CancelMetadataTransferJobRequest": { + "base": null, + "refs": { + } + }, + "CancelMetadataTransferJobResponse": { + "base": null, + "refs": { + } + }, "ColumnDescription": { "base": "

A description of the column in the query results.

", "refs": { @@ -131,6 +157,19 @@ "ColumnDescription$type": "

The type of the column description.

" } }, + "ComponentPath": { + "base": null, + "refs": { + "ComponentSummary$componentPath": "

This string specifies the path to the composite component, starting from the top-level component.

", + "CompositeComponentUpdatesMapRequest$key": null, + "CompositeComponentsMapRequest$key": null, + "EntityPropertyReference$componentPath": "

This string specifies the path to the composite component, starting from the top-level component.

", + "GetPropertyValueHistoryRequest$componentPath": "

This string specifies the path to the composite component, starting from the top-level component.

", + "GetPropertyValueRequest$componentPath": "

This string specifies the path to the composite component, starting from the top-level component.

", + "ListComponentsRequest$componentPath": "

This string specifies the path to the composite component, starting from the top-level component.

", + "ListPropertiesRequest$componentPath": "

This string specifies the path to the composite component, starting from the top-level component.

" + } + }, "ComponentPropertyGroupRequest": { "base": "

The component property group request.

", "refs": { @@ -141,7 +180,9 @@ "base": null, "refs": { "ComponentRequest$propertyGroups": "

The property groups.

", - "ComponentUpdateRequest$propertyGroupUpdates": "

The property group updates.

" + "ComponentUpdateRequest$propertyGroupUpdates": "

The property group updates.

", + "CompositeComponentRequest$propertyGroups": "

The property groups.

", + "CompositeComponentUpdateRequest$propertyGroupUpdates": "

The property group updates.

" } }, "ComponentPropertyGroupResponse": { @@ -153,7 +194,8 @@ "ComponentPropertyGroupResponses": { "base": null, "refs": { - "ComponentResponse$propertyGroups": "

The property groups.

" + "ComponentResponse$propertyGroups": "

The property groups.

", + "ComponentSummary$propertyGroups": "

The property groups.

" } }, "ComponentRequest": { @@ -168,16 +210,33 @@ "ComponentsMap$value": null } }, + "ComponentSummaries": { + "base": null, + "refs": { + "ListComponentsResponse$componentSummaries": "

A list of objects that contain information about the components.

" + } + }, + "ComponentSummary": { + "base": "

An object that returns information about a component summary.

", + "refs": { + "ComponentSummaries$member": null, + "CompositeComponentResponse$value": null + } + }, "ComponentTypeId": { "base": null, "refs": { "ComponentRequest$componentTypeId": "

The ID of the component type.

", "ComponentResponse$componentTypeId": "

The ID of the component type.

", + "ComponentSummary$componentTypeId": "

The ID of the component type.

", "ComponentTypeSummary$componentTypeId": "

The ID of the component type.

", "ComponentUpdateRequest$componentTypeId": "

The ID of the component type.

", + "CompositeComponentTypeRequest$componentTypeId": "

This is the componentTypeId that the compositeComponentType refers to.

", + "CompositeComponentTypeResponse$componentTypeId": "

This is the componentTypeId that this compositeComponentType refers to.

", "CreateComponentTypeRequest$componentTypeId": "

The ID of the component type.

", "DeleteComponentTypeRequest$componentTypeId": "

The ID of the component type to delete.

", "ExtendsFrom$member": null, + "FilterByComponentType$componentTypeId": "

The component type Id.

", "GetComponentTypeRequest$componentTypeId": "

The ID of the component type.

", "GetComponentTypeResponse$componentTypeId": "

The ID of the component type.

", "GetPropertyValueHistoryRequest$componentTypeId": "

The ID of the component type.

", @@ -219,7 +278,8 @@ "ComponentUpdateType": { "base": null, "refs": { - "ComponentUpdateRequest$updateType": "

The update type of the component update request.

" + "ComponentUpdateRequest$updateType": "

The update type of the component update request.

", + "CompositeComponentUpdateRequest$updateType": "

The update type of the component update request.

" } }, "ComponentUpdatesMapRequest": { @@ -240,6 +300,61 @@ "CreateEntityRequest$components": "

An object that maps strings to the components in the entity. Each string in the mapping must be unique to this object.

" } }, + "CompositeComponentRequest": { + "base": "

An object that sets information about the composite component update request.

", + "refs": { + "CompositeComponentsMapRequest$value": null + } + }, + "CompositeComponentResponse": { + "base": null, + "refs": { + "ComponentResponse$compositeComponents": "

This lists objects that contain information about the compositeComponents.

" + } + }, + "CompositeComponentTypeRequest": { + "base": "

An object that sets information about the composite component types of a component type.

", + "refs": { + "CompositeComponentTypesRequest$value": null + } + }, + "CompositeComponentTypeResponse": { + "base": "

An object that returns information about the composite component types of a component type.

", + "refs": { + "CompositeComponentTypesResponse$value": null + } + }, + "CompositeComponentTypesRequest": { + "base": null, + "refs": { + "CreateComponentTypeRequest$compositeComponentTypes": "

This is an object that maps strings to compositeComponentTypes of the componentType. CompositeComponentType is referenced by componentTypeId.

", + "UpdateComponentTypeRequest$compositeComponentTypes": "

This is an object that maps strings to compositeComponentTypes of the componentType. CompositeComponentType is referenced by componentTypeId.

" + } + }, + "CompositeComponentTypesResponse": { + "base": null, + "refs": { + "GetComponentTypeResponse$compositeComponentTypes": "

This is an object that maps strings to compositeComponentTypes of the componentType. CompositeComponentType is referenced by componentTypeId.

" + } + }, + "CompositeComponentUpdateRequest": { + "base": "

An object that sets information about the composite component update request.

", + "refs": { + "CompositeComponentUpdatesMapRequest$value": null + } + }, + "CompositeComponentUpdatesMapRequest": { + "base": null, + "refs": { + "UpdateEntityRequest$compositeComponentUpdates": "

This is an object that maps strings to compositeComponent updates in the request. Each key of the map represents the componentPath of the compositeComponent.

" + } + }, + "CompositeComponentsMapRequest": { + "base": null, + "refs": { + "CreateEntityRequest$compositeComponents": "

This is an object that maps strings to compositeComponent updates in the request. Each key of the map represents the componentPath of the compositeComponent.

" + } + }, "Configuration": { "base": null, "refs": { @@ -282,6 +397,16 @@ "refs": { } }, + "CreateMetadataTransferJobRequest": { + "base": null, + "refs": { + } + }, + "CreateMetadataTransferJobResponse": { + "base": null, + "refs": { + } + }, "CreateSceneRequest": { "base": null, "refs": { @@ -338,6 +463,7 @@ "PropertyLatestValue$propertyValue": "

The value of the property.

", "PropertyRequest$value": "

The value of the property.

", "PropertyResponse$value": "

The value of the property.

", + "PropertySummary$value": "

This is the value for the property.

", "PropertyTableValue$value": null, "PropertyValue$value": "

An object that specifies a value for a time series property.

" } @@ -410,15 +536,20 @@ "refs": { "ComponentRequest$description": "

The description of the component request.

", "ComponentResponse$description": "

The description of the component type.

", + "ComponentSummary$description": "

The description of the component request.

", "ComponentTypeSummary$description": "

The description of the component type.

", "ComponentUpdateRequest$description": "

The description of the component type.

", + "CompositeComponentRequest$description": "

The description of the component type.

", + "CompositeComponentUpdateRequest$description": "

The description of the component type.

", "CreateComponentTypeRequest$description": "

The description of the component type.

", "CreateEntityRequest$description": "

The description of the entity.

", + "CreateMetadataTransferJobRequest$description": "

The metadata transfer job description.

", "CreateSceneRequest$description": "

The description for this scene.

", "CreateWorkspaceRequest$description": "

The description of the workspace.

", "EntitySummary$description": "

The description of the entity.

", "GetComponentTypeResponse$description": "

The description of the component type.

", "GetEntityResponse$description": "

The description of the entity.

", + "GetMetadataTransferJobResponse$description": "

The metadata transfer job description.

", "GetSceneResponse$description": "

The description of the scene.

", "GetWorkspaceResponse$description": "

The description of the workspace.

", "SceneSummary$description": "

The scene description.

", @@ -429,6 +560,20 @@ "WorkspaceSummary$description": "

The description of the workspace.

" } }, + "DestinationConfiguration": { + "base": "

The [link to action] metadata transfer job destination configuration.

", + "refs": { + "CreateMetadataTransferJobRequest$destination": "

The metadata transfer job destination.

", + "GetMetadataTransferJobResponse$destination": "

The metadata transfer job's destination.

" + } + }, + "DestinationType": { + "base": null, + "refs": { + "DestinationConfiguration$type": "

The destination type.

", + "ListMetadataTransferJobsRequest$destinationType": "

The metadata transfer job's destination type.

" + } + }, "Double": { "base": null, "refs": { @@ -443,10 +588,13 @@ "DeleteEntityRequest$entityId": "

The ID of the entity to delete.

", "EntityPropertyReference$entityId": "

The ID of the entity.

", "EntitySummary$entityId": "

The ID of the entity.

", + "FilterByEntity$entityId": "

The entity Id.

", "GetEntityRequest$entityId": "

The ID of the entity.

", "GetEntityResponse$entityId": "

The ID of the entity.

", "GetPropertyValueHistoryRequest$entityId": "

The ID of the entity.

", "GetPropertyValueRequest$entityId": "

The ID of the entity whose property values the operation returns.

", + "ListComponentsRequest$entityId": "

The ID for the entity whose metadata (component/properties) is returned by the operation.

", + "ListPropertiesRequest$entityId": "

The ID for the entity whose metadata (component/properties) is returned by the operation.

", "RelationshipValue$targetEntityId": "

The ID of the target entity associated with this relationship value.

", "UpdateEntityRequest$entityId": "

The ID of the entity.

" } @@ -495,6 +643,7 @@ "ErrorDetails": { "base": "

The error details.

", "refs": { + "MetadataTransferJobStatus$error": "

The metadata transfer job error.

", "Status$error": "

The error message.

", "SyncJobStatus$error": "

The SyncJob error.

", "SyncResourceStatus$error": "

The status error.

" @@ -565,6 +714,30 @@ "EntityPropertyReference$externalIdProperty": "

A mapping of external IDs to property names. External IDs uniquely identify properties from external data stores.

" } }, + "FilterByAsset": { + "base": "

Filter by asset. [TwinMaker asset]

", + "refs": { + "IotSiteWiseSourceConfigurationFilter$filterByAsset": "

Filter by asset.

" + } + }, + "FilterByAssetModel": { + "base": "

Filter by asset model.

", + "refs": { + "IotSiteWiseSourceConfigurationFilter$filterByAssetModel": "

Filter by asset model.

" + } + }, + "FilterByComponentType": { + "base": "

Filter by component type.

", + "refs": { + "IotTwinMakerSourceConfigurationFilter$filterByComponentType": "

Filter by component type.

" + } + }, + "FilterByEntity": { + "base": "

Vilter by entity.

", + "refs": { + "IotTwinMakerSourceConfigurationFilter$filterByEntity": "

Filter by entity.

" + } + }, "FunctionRequest": { "base": "

The function request body.

", "refs": { @@ -616,6 +789,16 @@ "refs": { } }, + "GetMetadataTransferJobRequest": { + "base": null, + "refs": { + } + }, + "GetMetadataTransferJobResponse": { + "base": null, + "refs": { + } + }, "GetPricingPlanRequest": { "base": null, "refs": { @@ -689,8 +872,12 @@ "base": null, "refs": { "BatchPutPropertyValuesRequest$workspaceId": "

The ID of the workspace that contains the properties to set.

", + "CancelMetadataTransferJobRequest$metadataTransferJobId": "

The metadata transfer job Id.

", + "CancelMetadataTransferJobResponse$metadataTransferJobId": "

The metadata transfer job Id.

", "CreateComponentTypeRequest$workspaceId": "

The ID of the workspace that contains the component type.

", "CreateEntityRequest$workspaceId": "

The ID of the workspace that contains the entity.

", + "CreateMetadataTransferJobRequest$metadataTransferJobId": "

The metadata transfer job Id.

", + "CreateMetadataTransferJobResponse$metadataTransferJobId": "

The metadata transfer job Id.

", "CreateSceneRequest$workspaceId": "

The ID of the workspace that contains the scene.

", "CreateSceneRequest$sceneId": "

The ID of the scene.

", "CreateSyncJobRequest$workspaceId": "

The workspace ID.

", @@ -706,6 +893,8 @@ "GetComponentTypeResponse$workspaceId": "

The ID of the workspace that contains the component type.

", "GetEntityRequest$workspaceId": "

The ID of the workspace.

", "GetEntityResponse$workspaceId": "

The ID of the workspace.

", + "GetMetadataTransferJobRequest$metadataTransferJobId": "

The metadata transfer job Id.

", + "GetMetadataTransferJobResponse$metadataTransferJobId": "

The metadata transfer job Id.

", "GetPropertyValueHistoryRequest$workspaceId": "

The ID of the workspace.

", "GetPropertyValueRequest$workspaceId": "

The ID of the workspace whose values the operation returns.

", "GetSceneRequest$workspaceId": "

The ID of the workspace that contains the scene.

", @@ -717,10 +906,14 @@ "GetWorkspaceResponse$workspaceId": "

The ID of the workspace.

", "ListComponentTypesRequest$workspaceId": "

The ID of the workspace.

", "ListComponentTypesResponse$workspaceId": "

The ID of the workspace.

", + "ListComponentsRequest$workspaceId": "

The workspace ID.

", "ListEntitiesRequest$workspaceId": "

The ID of the workspace.

", + "ListMetadataTransferJobsFilter$workspaceId": "

The workspace Id.

", + "ListPropertiesRequest$workspaceId": "

The workspace ID.

", "ListScenesRequest$workspaceId": "

The ID of the workspace that contains the scenes.

", "ListSyncJobsRequest$workspaceId": "

The ID of the workspace that contains the sync job.

", "ListSyncResourcesRequest$workspaceId": "

The ID of the workspace that contains the sync job.

", + "MetadataTransferJobSummary$metadataTransferJobId": "

The metadata transfer job summary Id.

", "SceneSummary$sceneId": "

The ID of the scene.

", "SyncJobSummary$workspaceId": "

The ID of the workspace that contains the sync job.

", "SyncResourceFilter$resourceId": "

The sync resource filter resource ID.

", @@ -745,7 +938,12 @@ "Integer": { "base": null, "refs": { - "DataValue$integerValue": "

An integer value.

" + "DataValue$integerValue": "

An integer value.

", + "MetadataTransferJobProgress$totalCount": "

The total count. [of what]

", + "MetadataTransferJobProgress$succeededCount": "

The succeeded count.

", + "MetadataTransferJobProgress$skippedCount": "

The skipped count.

", + "MetadataTransferJobProgress$failedCount": "

The failed count.

", + "MetadataTransferJobStatus$queuedPosition": "

The queued position.

" } }, "InternalServerException": { @@ -771,6 +969,48 @@ "InterpolationParameters$intervalInSeconds": "

The interpolation time interval in seconds.

" } }, + "IotSiteWiseSourceConfiguration": { + "base": "

The metadata transfer job AWS IoT SiteWise source configuration.

", + "refs": { + "SourceConfiguration$iotSiteWiseConfiguration": "

The source configuration IoT SiteWise configuration.

" + } + }, + "IotSiteWiseSourceConfigurationFilter": { + "base": "

The AWS IoT SiteWise soucre configuration filter.[need held with desc here]

", + "refs": { + "IotSiteWiseSourceConfigurationFilters$member": null + } + }, + "IotSiteWiseSourceConfigurationFilters": { + "base": null, + "refs": { + "IotSiteWiseSourceConfiguration$filters": "

The AWS IoT SiteWise soucre configuration filters.

" + } + }, + "IotTwinMakerDestinationConfiguration": { + "base": "

The metadata transfer job AWS IoT TwinMaker destination configuration.

", + "refs": { + "DestinationConfiguration$iotTwinMakerConfiguration": "

The metadata transfer job Amazon Web Services IoT TwinMaker configuration.

" + } + }, + "IotTwinMakerSourceConfiguration": { + "base": "

The metadata transfer job AWS IoT TwinMaker source configuration.

", + "refs": { + "SourceConfiguration$iotTwinMakerConfiguration": "

The source configuration IoT TwinMaker configuration.

" + } + }, + "IotTwinMakerSourceConfigurationFilter": { + "base": "

The metadata transfer job AWS IoT TwinMaker source configuration filter.

", + "refs": { + "IotTwinMakerSourceConfigurationFilters$member": null + } + }, + "IotTwinMakerSourceConfigurationFilters": { + "base": null, + "refs": { + "IotTwinMakerSourceConfiguration$filters": "

The metadata transfer job AWS IoT TwinMaker source configuration filters.

" + } + }, "LambdaArn": { "base": null, "refs": { @@ -783,6 +1023,19 @@ "DataConnector$lambda": "

The Lambda function associated with this data connector.

" } }, + "LinkedService": { + "base": null, + "refs": { + "LinkedServices$member": null + } + }, + "LinkedServices": { + "base": null, + "refs": { + "GetWorkspaceResponse$linkedServices": "

A list of services that are linked to the workspace.

", + "WorkspaceSummary$linkedServices": "

A list of services that are linked to the workspace.

" + } + }, "ListComponentTypesFilter": { "base": "

An object that filters items in a list of component types.

Only one object is accepted as a valid input.

", "refs": { @@ -805,6 +1058,16 @@ "refs": { } }, + "ListComponentsRequest": { + "base": null, + "refs": { + } + }, + "ListComponentsResponse": { + "base": null, + "refs": { + } + }, "ListEntitiesFilter": { "base": "

An object that filters items in a list of entities.

", "refs": { @@ -827,6 +1090,38 @@ "refs": { } }, + "ListMetadataTransferJobsFilter": { + "base": "

The ListMetadataTransferJobs filter.

", + "refs": { + "ListMetadataTransferJobsFilters$member": null + } + }, + "ListMetadataTransferJobsFilters": { + "base": null, + "refs": { + "ListMetadataTransferJobsRequest$filters": "

An object that filters metadata transfer jobs.

" + } + }, + "ListMetadataTransferJobsRequest": { + "base": null, + "refs": { + } + }, + "ListMetadataTransferJobsResponse": { + "base": null, + "refs": { + } + }, + "ListPropertiesRequest": { + "base": null, + "refs": { + } + }, + "ListPropertiesResponse": { + "base": null, + "refs": { + } + }, "ListScenesRequest": { "base": null, "refs": { @@ -891,7 +1186,10 @@ "GetPropertyValueRequest$maxResults": "

The maximum number of results to return at one time. The default is 25.

Valid Range: Minimum value of 1. Maximum value of 250.

", "ListComponentTypesRequest$maxResults": "

The maximum number of results to return at one time. The default is 25.

Valid Range: Minimum value of 1. Maximum value of 250.

", "ListComponentTypesResponse$maxResults": "

Specifies the maximum number of results to display.

", + "ListComponentsRequest$maxResults": "

The maximum number of results returned at one time. The default is 25.

", "ListEntitiesRequest$maxResults": "

The maximum number of results to return at one time. The default is 25.

Valid Range: Minimum value of 1. Maximum value of 250.

", + "ListMetadataTransferJobsRequest$maxResults": "

The maximum number of results to return at one time.

", + "ListPropertiesRequest$maxResults": "

The maximum number of results returned at one time. The default is 25.

", "ListScenesRequest$maxResults": "

Specifies the maximum number of results to display.

", "ListSyncJobsRequest$maxResults": "

The maximum number of results to return at one time. The default is 50.

Valid Range: Minimum value of 0. Maximum value of 200.

", "ListSyncResourcesRequest$maxResults": "

The maximum number of results to return at one time. The default is 50.

Valid Range: Minimum value of 0. Maximum value of 200.

", @@ -899,15 +1197,55 @@ "ListWorkspacesRequest$maxResults": "

The maximum number of results to return at one time. The default is 25.

Valid Range: Minimum value of 1. Maximum value of 250.

" } }, + "MetadataTransferJobProgress": { + "base": "

The metadata transfer job's progress.

", + "refs": { + "CancelMetadataTransferJobResponse$progress": "

The metadata transfer job's progress.

", + "GetMetadataTransferJobResponse$progress": "

The metadata transfer job's progress.

", + "MetadataTransferJobSummary$progress": "

The metadata transfer job summary progess.

" + } + }, + "MetadataTransferJobState": { + "base": null, + "refs": { + "ListMetadataTransferJobsFilter$state": "

The filter state.

", + "MetadataTransferJobStatus$state": "

The metadata transfer job state.

" + } + }, + "MetadataTransferJobStatus": { + "base": "

The metadata transfer job status.

", + "refs": { + "CancelMetadataTransferJobResponse$status": "

The metadata transfer job's status.

", + "CreateMetadataTransferJobResponse$status": "

The metadata transfer job response status.

", + "GetMetadataTransferJobResponse$status": "

The metadata transfer job's status.

", + "MetadataTransferJobSummary$status": "

The metadata transfer job summary status.

" + } + }, + "MetadataTransferJobSummaries": { + "base": null, + "refs": { + "ListMetadataTransferJobsResponse$metadataTransferJobSummaries": "

The metadata transfer job summaries.

" + } + }, + "MetadataTransferJobSummary": { + "base": "

The metadata transfer job summary.

", + "refs": { + "MetadataTransferJobSummaries$member": null + } + }, "Name": { "base": null, "refs": { "ComponentPropertyGroupRequests$key": null, "ComponentPropertyGroupResponses$key": null, "ComponentResponse$componentName": "

The name of the component.

", + "ComponentSummary$componentName": "

The name of the component.

", "ComponentUpdatesMapRequest$key": null, "ComponentsMap$key": null, "ComponentsMapRequest$key": null, + "CompositeComponentResponse$key": null, + "CompositeComponentTypesRequest$key": null, + "CompositeComponentTypesResponse$key": null, "Configuration$key": null, "EntityPropertyReference$componentName": "

The name of the component.

", "EntityPropertyReference$propertyName": "

The name of the property.

", @@ -917,6 +1255,7 @@ "GetPropertyValueHistoryRequest$componentName": "

The name of the component.

", "GetPropertyValueRequest$componentName": "

The name of the component whose property values the operation returns.

", "GetPropertyValueRequest$propertyGroupName": "

The property group name.

", + "ListPropertiesRequest$componentName": "

The name of the component whose properties are returned by the operation.

", "PropertyDefinitionsRequest$key": null, "PropertyDefinitionsResponse$key": null, "PropertyGroupsRequest$key": null, @@ -925,6 +1264,7 @@ "PropertyNames$member": null, "PropertyRequests$key": null, "PropertyResponses$key": null, + "PropertySummary$propertyName": "

This is the name of the property.

", "PropertyTableValue$key": null, "RelationshipValue$targetComponentName": "

The name of the target component associated with the relationship value.

", "RequiredProperties$member": null, @@ -942,8 +1282,14 @@ "GetPropertyValueResponse$nextToken": "

The string that specifies the next page of results.

", "ListComponentTypesRequest$nextToken": "

The string that specifies the next page of results.

", "ListComponentTypesResponse$nextToken": "

The string that specifies the next page of results.

", + "ListComponentsRequest$nextToken": "

The string that specifies the next page of results.

", + "ListComponentsResponse$nextToken": "

The string that specifies the next page of component results.

", "ListEntitiesRequest$nextToken": "

The string that specifies the next page of results.

", "ListEntitiesResponse$nextToken": "

The string that specifies the next page of results.

", + "ListMetadataTransferJobsRequest$nextToken": "

The string that specifies the next page of results.

", + "ListMetadataTransferJobsResponse$nextToken": "

The string that specifies the next page of results.

", + "ListPropertiesRequest$nextToken": "

The string that specifies the next page of results.

", + "ListPropertiesResponse$nextToken": "

The string that specifies the next page of property results.

", "ListScenesRequest$nextToken": "

The string that specifies the next page of results.

", "ListScenesResponse$nextToken": "

The string that specifies the next page of results.

", "ListSyncJobsRequest$nextToken": "

The string that specifies the next page of results.

", @@ -1042,7 +1388,8 @@ "base": "

An object that contains response data from a property definition request.

", "refs": { "PropertyDefinitionsResponse$value": null, - "PropertyResponse$definition": "

An object that specifies information about a property.

" + "PropertyResponse$definition": "

An object that specifies information about a property.

", + "PropertySummary$definition": "

This is the schema for the property.

" } }, "PropertyDefinitionsRequest": { @@ -1140,7 +1487,9 @@ "base": null, "refs": { "ComponentRequest$properties": "

An object that maps strings to the properties to set in the component type. Each string in the mapping must be unique to this object.

", - "ComponentUpdateRequest$propertyUpdates": "

An object that maps strings to the properties to set in the component type update. Each string in the mapping must be unique to this object.

" + "ComponentUpdateRequest$propertyUpdates": "

An object that maps strings to the properties to set in the component type update. Each string in the mapping must be unique to this object.

", + "CompositeComponentRequest$properties": "

This is an object that maps strings to the properties to set in the component type. Each string in the mapping must be unique to this object.

", + "CompositeComponentUpdateRequest$propertyUpdates": "

An object that maps strings to the properties to set in the component type update. Each string in the mapping must be unique to this object.

" } }, "PropertyResponse": { @@ -1155,6 +1504,18 @@ "ComponentResponse$properties": "

An object that maps strings to the properties to set in the component type. Each string in the mapping must be unique to this object.

" } }, + "PropertySummaries": { + "base": null, + "refs": { + "ListPropertiesResponse$propertySummaries": "

A list of objects that contain information about the properties.

" + } + }, + "PropertySummary": { + "base": "

This is an object that contains the information of a property.

", + "refs": { + "PropertySummaries$member": null + } + }, "PropertyTableValue": { "base": null, "refs": { @@ -1208,7 +1569,7 @@ "QueryServiceMaxResults": { "base": null, "refs": { - "ExecuteQueryRequest$maxResults": "

The maximum number of results to return at one time. The default is 25.

Valid Range: Minimum value of 1. Maximum value of 250.

" + "ExecuteQueryRequest$maxResults": "

The maximum number of results to return at one time. The default is 50.

" } }, "QueryStatement": { @@ -1251,6 +1612,7 @@ "refs": { "CreateSyncJobRequest$syncRole": "

The SyncJob IAM role. This IAM role is used by the SyncJob to read from the syncSource, and create, update, or delete the corresponding resources.

", "CreateWorkspaceRequest$role": "

The ARN of the execution role associated with the workspace.

", + "GetMetadataTransferJobResponse$metadataTransferJobRole": "

The metadata transfer job's role.

", "GetSyncJobResponse$syncRole": "

The sync IAM role.

", "GetWorkspaceResponse$role": "

The ARN of the execution role associated with the workspace.

", "UpdateWorkspaceRequest$role": "

The ARN of the execution role associated with the workspace.

" @@ -1274,11 +1636,36 @@ "ExecuteQueryResponse$rows": "

Represents a single row in the query results.

" } }, + "S3DestinationConfiguration": { + "base": "

The S3 destination configuration.

", + "refs": { + "DestinationConfiguration$s3Configuration": "

The metadata transfer job S3 configuration. [need to add S3 entity]

" + } + }, + "S3DestinationLocation": { + "base": null, + "refs": { + "S3DestinationConfiguration$location": "

The S3 destination configuration location.

" + } + }, "S3Location": { "base": null, "refs": { "CreateWorkspaceRequest$s3Location": "

The ARN of the S3 bucket where resources associated with the workspace are stored.

", - "GetWorkspaceResponse$s3Location": "

The ARN of the S3 bucket where resources associated with the workspace are stored.

" + "GetWorkspaceResponse$s3Location": "

The ARN of the S3 bucket where resources associated with the workspace are stored.

", + "UpdateWorkspaceRequest$s3Location": "

The ARN of the S3 bucket where resources associated with the workspace are stored.

" + } + }, + "S3SourceConfiguration": { + "base": "

The S3 destination source configuration.

", + "refs": { + "SourceConfiguration$s3Configuration": "

The source configuration S3 configuration.

" + } + }, + "S3SourceLocation": { + "base": null, + "refs": { + "S3SourceConfiguration$location": "

The S3 destination source configuration location.

" } }, "S3Url": { @@ -1362,6 +1749,33 @@ "refs": { } }, + "SiteWiseExternalId": { + "base": null, + "refs": { + "FilterByAsset$assetExternalId": "

The external-Id property of an asset.

", + "FilterByAssetModel$assetModelExternalId": "

The external-Id property of an asset model.

" + } + }, + "SourceConfiguration": { + "base": "

The source configuration.

", + "refs": { + "SourceConfigurations$member": null + } + }, + "SourceConfigurations": { + "base": null, + "refs": { + "CreateMetadataTransferJobRequest$sources": "

The metadata transfer job sources.

", + "GetMetadataTransferJobResponse$sources": "

The metadata transfer job's sources.

" + } + }, + "SourceType": { + "base": null, + "refs": { + "ListMetadataTransferJobsRequest$sourceType": "

The metadata transfer job's source type.

", + "SourceConfiguration$type": "

The source configuration type.

" + } + }, "State": { "base": null, "refs": { @@ -1378,6 +1792,7 @@ "base": "

An object that represents the status of an entity, component, component type, or workspace.

", "refs": { "ComponentResponse$status": "

The status of the component type.

", + "ComponentSummary$status": "

The status of the component type.

", "ComponentTypeSummary$status": "

The current status of the component type.

", "EntitySummary$status": "

The current status of the entity.

", "GetComponentTypeResponse$status": "

The current status of the component type.

", @@ -1390,11 +1805,13 @@ "BatchPutPropertyError$errorCode": "

The error code.

", "BatchPutPropertyError$errorMessage": "

The error message.

", "ComponentResponse$definedIn": "

The name of the property definition set in the request.

", + "ComponentSummary$definedIn": "

The name of the property definition set in the request.

", "DataType$unitOfMeasure": "

The unit of measure used in this data type.

", "DataValue$stringValue": "

A string value.

", "DataValueMap$key": null, "ExternalIdProperty$key": null, "ExternalIdProperty$value": null, + "GetMetadataTransferJobResponse$reportUrl": "

The metadata transfer job's report URL.

", "ListComponentTypesFilter$namespace": "

The namespace to which the component types in the list belong.

", "ListEntitiesFilter$externalId": "

The external-Id property of a component. The external-Id property is the primary key of an external storage system.

", "OrderBy$propertyName": "

The property name.

", @@ -1479,6 +1896,7 @@ "base": null, "refs": { "ComponentResponse$syncSource": "

The syncSource of the sync job, if this entity was created by a sync job.

", + "ComponentSummary$syncSource": "

The syncSource of the sync job, if this entity was created by a sync job.

", "CreateSyncJobRequest$syncSource": "

The sync source.

Currently the only supported syncSoource is SITEWISE .

", "DeleteSyncJobRequest$syncSource": "

The sync source.

Currently the only supported syncSource is SITEWISE .

", "GetComponentTypeResponse$syncSource": "

The syncSource of the SyncJob, if this entity was created by a SyncJob.

", @@ -1564,10 +1982,12 @@ "Timestamp": { "base": "

supports epoch seconds value

", "refs": { + "CancelMetadataTransferJobResponse$updateDateTime": "

Used to update the DateTime property.

", "ComponentTypeSummary$creationDateTime": "

The date and time when the component type was created.

", "ComponentTypeSummary$updateDateTime": "

The date and time when the component type was last updated.

", "CreateComponentTypeResponse$creationDateTime": "

The date and time when the entity was created.

", "CreateEntityResponse$creationDateTime": "

The date and time when the entity was created.

", + "CreateMetadataTransferJobResponse$creationDateTime": "

The The metadata transfer job creation DateTime property.

", "CreateSceneResponse$creationDateTime": "

The date and time when the scene was created.

", "CreateSyncJobResponse$creationDateTime": "

The date and time for the SyncJob creation.

", "CreateWorkspaceResponse$creationDateTime": "

The date and time when the workspace was created.

", @@ -1577,6 +1997,8 @@ "GetComponentTypeResponse$updateDateTime": "

The date and time when the component was last updated.

", "GetEntityResponse$creationDateTime": "

The date and time when the entity was created.

", "GetEntityResponse$updateDateTime": "

The date and time when the entity was last updated.

", + "GetMetadataTransferJobResponse$creationDateTime": "

The metadata transfer job's creation DateTime property.

", + "GetMetadataTransferJobResponse$updateDateTime": "

The metadata transfer job's update DateTime property.

", "GetPropertyValueHistoryRequest$startDateTime": "

The date and time of the earliest property value to return.

", "GetPropertyValueHistoryRequest$endDateTime": "

The date and time of the latest property value to return.

", "GetSceneResponse$creationDateTime": "

The date and time when the scene was created.

", @@ -1585,6 +2007,8 @@ "GetSyncJobResponse$updateDateTime": "

The update date and time.

", "GetWorkspaceResponse$creationDateTime": "

The date and time when the workspace was created.

", "GetWorkspaceResponse$updateDateTime": "

The date and time when the workspace was last updated.

", + "MetadataTransferJobSummary$creationDateTime": "

The metadata transfer job summary creation DateTime object.

", + "MetadataTransferJobSummary$updateDateTime": "

The metadata transfer job summary update DateTime object

", "PricingPlan$effectiveDateTime": "

The effective date and time of the pricing plan.

", "PricingPlan$updateDateTime": "

The set date and time for updating a pricing plan.

", "PropertyValue$timestamp": "

The timestamp of a value for a time series property.

", @@ -1608,19 +2032,25 @@ "TwinMakerArn": { "base": null, "refs": { + "CancelMetadataTransferJobResponse$arn": "

The metadata transfer job ARN.

", "ComponentTypeSummary$arn": "

The ARN of the component type.

", "CreateComponentTypeResponse$arn": "

The ARN of the component type.

", "CreateEntityResponse$arn": "

The ARN of the entity.

", + "CreateMetadataTransferJobResponse$arn": "

The metadata transfer job ARN.

", "CreateSceneResponse$arn": "

The ARN of the scene.

", "CreateSyncJobResponse$arn": "

The SyncJob ARN.

", "CreateWorkspaceResponse$arn": "

The ARN of the workspace.

", "EntitySummary$arn": "

The ARN of the entity.

", "GetComponentTypeResponse$arn": "

The ARN of the component type.

", "GetEntityResponse$arn": "

The ARN of the entity.

", + "GetMetadataTransferJobResponse$arn": "

The metadata transfer job ARN.

", "GetSceneResponse$arn": "

The ARN of the scene.

", "GetSyncJobResponse$arn": "

The sync job ARN.

", "GetWorkspaceResponse$arn": "

The ARN of the workspace.

", + "IotTwinMakerDestinationConfiguration$workspace": "

The IoT TwinMaker workspace.

", + "IotTwinMakerSourceConfiguration$workspace": "

The IoT TwinMaker workspace.

", "ListTagsForResourceRequest$resourceARN": "

The ARN of the resource.

", + "MetadataTransferJobSummary$arn": "

The metadata transfer job summary ARN.

", "SceneSummary$arn": "

The ARN of the scene.

", "SyncJobSummary$arn": "

The SyncJob summary ARN.

", "TagResourceRequest$resourceARN": "

The ARN of the resource.

", @@ -1701,6 +2131,13 @@ "refs": { } }, + "Uuid": { + "base": null, + "refs": { + "FilterByAsset$assetId": "

Filter by asset Id.

", + "FilterByAssetModel$assetModelId": "

The asset model Id.

" + } + }, "ValidationException": { "base": "

Failed

", "refs": { @@ -1718,6 +2155,12 @@ "PropertyValueHistory$values": "

A list of objects that contain information about the values in the history of a time series property.

" } }, + "WorkspaceDeleteMessage": { + "base": null, + "refs": { + "DeleteWorkspaceResponse$message": "

The string that specifies the delete result for the workspace.

" + } + }, "WorkspaceSummaries": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iottwinmaker-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://iottwinmaker-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://iottwinmaker-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://iottwinmaker-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://iottwinmaker.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://iottwinmaker.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://iottwinmaker.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://iottwinmaker.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iottwinmaker/2021-11-29/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iottwinmaker/2021-11-29/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -20,10 +20,25 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListComponents": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListEntities": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults" + }, + "ListMetadataTransferJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "ListProperties": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" }, "ListScenes": { "input_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotwireless/2020-11-22/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotwireless/2020-11-22/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotwireless/2020-11-22/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotwireless/2020-11-22/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5131,6 +5131,7 @@ "members":{ "AppKey":{"shape":"AppKey"}, "AppEui":{"shape":"AppEui"}, + "JoinEui":{"shape":"JoinEui"}, "GenAppKey":{"shape":"GenAppKey"} } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotwireless/2020-11-22/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotwireless/2020-11-22/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotwireless/2020-11-22/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotwireless/2020-11-22/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1440,7 +1440,7 @@ "GeoJsonPayload": { "base": null, "refs": { - "GetPositionEstimateResponse$GeoJsonPayload": "

The position information of the resource, displayed as a JSON payload. The payload uses the GeoJSON format, which a format that's used to encode geographic data structures. For more information, see GeoJSON.

", + "GetPositionEstimateResponse$GeoJsonPayload": "

The position information of the resource, displayed as a JSON payload. The payload is of type blob and uses the GeoJSON format, which a format that's used to encode geographic data structures. A sample payload contains the timestamp information, the WGS84 coordinates of the location, and the accuracy and confidence level. For more information and examples, see Resolve device location (console).

", "GetResourcePositionResponse$GeoJsonPayload": "

The position information of the resource, displayed as a JSON payload. The payload uses the GeoJSON format, which a format that's used to encode geographic data structures. For more information, see GeoJSON.

", "UpdateResourcePositionRequest$GeoJsonPayload": "

The position information of the resource, displayed as a JSON payload. The payload uses the GeoJSON format, which a format that's used to encode geographic data structures. For more information, see GeoJSON.

" } @@ -1910,6 +1910,7 @@ "base": null, "refs": { "JoinEuiRange$member": null, + "OtaaV1_0_x$JoinEui": "

The JoinEUI value.

", "OtaaV1_1$JoinEui": "

The JoinEUI value.

" } }, @@ -2383,7 +2384,7 @@ "MaxDutyCycle": { "base": null, "refs": { - "LoRaWANDeviceProfile$MaxDutyCycle": "

The MaxDutyCycle value.

" + "LoRaWANDeviceProfile$MaxDutyCycle": "

The MaxDutyCycle value. It ranges from 0 to 15.

" } }, "MaxEirp": { @@ -2479,7 +2480,7 @@ } }, "MulticastFrameInfo": { - "base": "

FrameInfo of your multicast group resources for the trace content. Use FrameInfo to debug the multicast communication between your LoRaWAN end devices and the network server.

", + "base": "

FrameInfo of your multicast group resources for the trace content. Use FrameInfo to debug the multicast communication between your multicast groups and the network server.

", "refs": { "TraceContent$MulticastFrameInfo": null } @@ -2624,7 +2625,7 @@ "CreateNetworkAnalyzerConfigurationRequest$MulticastGroups": "

Multicast Group resources to add to the network analyzer configruation. Provide the MulticastGroupId of the resource to add in the input array.

", "GetNetworkAnalyzerConfigurationResponse$MulticastGroups": "

List of multicast group resources that have been added to the network analyzer configuration.

", "UpdateNetworkAnalyzerConfigurationRequest$MulticastGroupsToAdd": "

Multicast group resources to add to the network analyzer configuration. Provide the MulticastGroupId of the resource to add in the input array.

", - "UpdateNetworkAnalyzerConfigurationRequest$MulticastGroupsToRemove": "

Multicast group resources to remove from the network analyzer configuration. Provide the MulticastGroupId of the resource to remove in the input array.

" + "UpdateNetworkAnalyzerConfigurationRequest$MulticastGroupsToRemove": "

Multicast group resources to remove from the network analyzer configuration. Provide the MulticastGroupId of the resources to remove in the input array.

" } }, "NetworkId": { @@ -3698,7 +3699,7 @@ } }, "TraceContent": { - "base": "

Trace content for your wireless gateway and wireless device resources.

", + "base": "

Trace content for your wireless devices, gateways, and multicast groups.

", "refs": { "CreateNetworkAnalyzerConfigurationRequest$TraceContent": null, "GetNetworkAnalyzerConfigurationResponse$TraceContent": null, @@ -4080,7 +4081,7 @@ "base": null, "refs": { "CreateNetworkAnalyzerConfigurationRequest$WirelessDevices": "

Wireless device resources to add to the network analyzer configuration. Provide the WirelessDeviceId of the resource to add in the input array.

", - "GetNetworkAnalyzerConfigurationResponse$WirelessDevices": "

List of wireless gateway resources that have been added to the network analyzer configuration.

", + "GetNetworkAnalyzerConfigurationResponse$WirelessDevices": "

List of wireless device resources that have been added to the network analyzer configuration.

", "UpdateNetworkAnalyzerConfigurationRequest$WirelessDevicesToAdd": "

Wireless device resources to add to the network analyzer configuration. Provide the WirelessDeviceId of the resource to add in the input array.

", "UpdateNetworkAnalyzerConfigurationRequest$WirelessDevicesToRemove": "

Wireless device resources to remove from the network analyzer configuration. Provide the WirelessDeviceId of the resources to remove in the input array.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotwireless/2020-11-22/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotwireless/2020-11-22/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/iotwireless/2020-11-22/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/iotwireless/2020-11-22/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://api.iotwireless-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://api.iotwireless-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://api.iotwireless-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://api.iotwireless-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://api.iotwireless.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://api.iotwireless.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://api.iotwireless.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://api.iotwireless.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs/2020-07-14/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs/2020-07-14/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs/2020-07-14/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs/2020-07-14/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1008,26 +1008,31 @@ }, "MaxChannelResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, "MaxPlaybackKeyPairResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, "MaxRecordingConfigurationResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, "MaxStreamKeyResults":{ "type":"integer", + "box":true, "max":50, "min":1 }, "MaxStreamResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, @@ -1461,6 +1466,7 @@ }, "TargetIntervalSeconds":{ "type":"long", + "box":true, "max":60, "min":1 }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs/2020-07-14/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs/2020-07-14/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs/2020-07-14/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs/2020-07-14/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,25 @@ "uid":"ivs-realtime-2020-07-14" }, "operations":{ + "CreateEncoderConfiguration":{ + "name":"CreateEncoderConfiguration", + "http":{ + "method":"POST", + "requestUri":"/CreateEncoderConfiguration", + "responseCode":200 + }, + "input":{"shape":"CreateEncoderConfigurationRequest"}, + "output":{"shape":"CreateEncoderConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"PendingVerification"} + ] + }, "CreateParticipantToken":{ "name":"CreateParticipantToken", "http":{ @@ -46,6 +65,43 @@ {"shape":"PendingVerification"} ] }, + "CreateStorageConfiguration":{ + "name":"CreateStorageConfiguration", + "http":{ + "method":"POST", + "requestUri":"/CreateStorageConfiguration", + "responseCode":200 + }, + "input":{"shape":"CreateStorageConfigurationRequest"}, + "output":{"shape":"CreateStorageConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"PendingVerification"} + ] + }, + "DeleteEncoderConfiguration":{ + "name":"DeleteEncoderConfiguration", + "http":{ + "method":"POST", + "requestUri":"/DeleteEncoderConfiguration", + "responseCode":200 + }, + "input":{"shape":"DeleteEncoderConfigurationRequest"}, + "output":{"shape":"DeleteEncoderConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, "DeleteStage":{ "name":"DeleteStage", "http":{ @@ -63,6 +119,24 @@ {"shape":"PendingVerification"} ] }, + "DeleteStorageConfiguration":{ + "name":"DeleteStorageConfiguration", + "http":{ + "method":"POST", + "requestUri":"/DeleteStorageConfiguration", + "responseCode":200 + }, + "input":{"shape":"DeleteStorageConfigurationRequest"}, + "output":{"shape":"DeleteStorageConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, "DisconnectParticipant":{ "name":"DisconnectParticipant", "http":{ @@ -79,6 +153,42 @@ {"shape":"PendingVerification"} ] }, + "GetComposition":{ + "name":"GetComposition", + "http":{ + "method":"POST", + "requestUri":"/GetComposition", + "responseCode":200 + }, + "input":{"shape":"GetCompositionRequest"}, + "output":{"shape":"GetCompositionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, + "GetEncoderConfiguration":{ + "name":"GetEncoderConfiguration", + "http":{ + "method":"POST", + "requestUri":"/GetEncoderConfiguration", + "responseCode":200 + }, + "input":{"shape":"GetEncoderConfigurationRequest"}, + "output":{"shape":"GetEncoderConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, "GetParticipant":{ "name":"GetParticipant", "http":{ @@ -124,6 +234,58 @@ {"shape":"AccessDeniedException"} ] }, + "GetStorageConfiguration":{ + "name":"GetStorageConfiguration", + "http":{ + "method":"POST", + "requestUri":"/GetStorageConfiguration", + "responseCode":200 + }, + "input":{"shape":"GetStorageConfigurationRequest"}, + "output":{"shape":"GetStorageConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, + "ListCompositions":{ + "name":"ListCompositions", + "http":{ + "method":"POST", + "requestUri":"/ListCompositions", + "responseCode":200 + }, + "input":{"shape":"ListCompositionsRequest"}, + "output":{"shape":"ListCompositionsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, + "ListEncoderConfigurations":{ + "name":"ListEncoderConfigurations", + "http":{ + "method":"POST", + "requestUri":"/ListEncoderConfigurations", + "responseCode":200 + }, + "input":{"shape":"ListEncoderConfigurationsRequest"}, + "output":{"shape":"ListEncoderConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, "ListParticipantEvents":{ "name":"ListParticipantEvents", "http":{ @@ -181,6 +343,23 @@ {"shape":"ConflictException"} ] }, + "ListStorageConfigurations":{ + "name":"ListStorageConfigurations", + "http":{ + "method":"POST", + "requestUri":"/ListStorageConfigurations", + "responseCode":200 + }, + "input":{"shape":"ListStorageConfigurationsRequest"}, + "output":{"shape":"ListStorageConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -196,6 +375,43 @@ {"shape":"InternalServerException"} ] }, + "StartComposition":{ + "name":"StartComposition", + "http":{ + "method":"POST", + "requestUri":"/StartComposition", + "responseCode":200 + }, + "input":{"shape":"StartCompositionRequest"}, + "output":{"shape":"StartCompositionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"PendingVerification"} + ] + }, + "StopComposition":{ + "name":"StopComposition", + "http":{ + "method":"POST", + "requestUri":"/StopComposition", + "responseCode":200 + }, + "input":{"shape":"StopCompositionRequest"}, + "output":{"shape":"StopCompositionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -257,6 +473,96 @@ }, "exception":true }, + "AttributeKey":{ + "type":"string", + "max":128, + "min":0, + "pattern":"^[a-zA-Z0-9-_]*$" + }, + "Bitrate":{ + "type":"integer", + "box":true, + "max":8500000, + "min":1 + }, + "ChannelArn":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^arn:aws:[is]vs:[a-z0-9-]+:[0-9]+:channel/[a-zA-Z0-9-]+$" + }, + "ChannelDestinationConfiguration":{ + "type":"structure", + "required":["channelArn"], + "members":{ + "channelArn":{"shape":"ChannelArn"}, + "encoderConfigurationArn":{"shape":"EncoderConfigurationArn"} + } + }, + "Composition":{ + "type":"structure", + "required":[ + "arn", + "destinations", + "layout", + "stageArn", + "state" + ], + "members":{ + "arn":{"shape":"CompositionArn"}, + "destinations":{"shape":"DestinationList"}, + "endTime":{"shape":"Time"}, + "layout":{"shape":"LayoutConfiguration"}, + "stageArn":{"shape":"StageArn"}, + "startTime":{"shape":"Time"}, + "state":{"shape":"CompositionState"}, + "tags":{"shape":"Tags"} + } + }, + "CompositionArn":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^arn:aws:ivs:[a-z0-9-]+:[0-9]+:composition/[a-zA-Z0-9-]+$" + }, + "CompositionClientToken":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z0-9-_]*$" + }, + "CompositionState":{ + "type":"string", + "enum":[ + "STARTING", + "ACTIVE", + "STOPPING", + "FAILED", + "STOPPED" + ] + }, + "CompositionSummary":{ + "type":"structure", + "required":[ + "arn", + "destinations", + "stageArn", + "state" + ], + "members":{ + "arn":{"shape":"CompositionArn"}, + "destinations":{"shape":"DestinationSummaryList"}, + "endTime":{"shape":"Time"}, + "stageArn":{"shape":"StageArn"}, + "startTime":{"shape":"Time"}, + "state":{"shape":"CompositionState"}, + "tags":{"shape":"Tags"} + } + }, + "CompositionSummaryList":{ + "type":"list", + "member":{"shape":"CompositionSummary"} + }, "ConflictException":{ "type":"structure", "members":{ @@ -268,6 +574,20 @@ }, "exception":true }, + "CreateEncoderConfigurationRequest":{ + "type":"structure", + "members":{ + "name":{"shape":"EncoderConfigurationName"}, + "tags":{"shape":"Tags"}, + "video":{"shape":"Video"} + } + }, + "CreateEncoderConfigurationResponse":{ + "type":"structure", + "members":{ + "encoderConfiguration":{"shape":"EncoderConfiguration"} + } + }, "CreateParticipantTokenRequest":{ "type":"structure", "required":["stageArn"], @@ -300,6 +620,33 @@ "stage":{"shape":"Stage"} } }, + "CreateStorageConfigurationRequest":{ + "type":"structure", + "required":["s3"], + "members":{ + "name":{"shape":"StorageConfigurationName"}, + "s3":{"shape":"S3StorageConfiguration"}, + "tags":{"shape":"Tags"} + } + }, + "CreateStorageConfigurationResponse":{ + "type":"structure", + "members":{ + "storageConfiguration":{"shape":"StorageConfiguration"} + } + }, + "DeleteEncoderConfigurationRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"EncoderConfigurationArn"} + } + }, + "DeleteEncoderConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteStageRequest":{ "type":"structure", "required":["arn"], @@ -312,6 +659,96 @@ "members":{ } }, + "DeleteStorageConfigurationRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"StorageConfigurationArn"} + } + }, + "DeleteStorageConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, + "Destination":{ + "type":"structure", + "required":[ + "configuration", + "id", + "state" + ], + "members":{ + "configuration":{"shape":"DestinationConfiguration"}, + "detail":{"shape":"DestinationDetail"}, + "endTime":{"shape":"Time"}, + "id":{"shape":"String"}, + "startTime":{"shape":"Time"}, + "state":{"shape":"DestinationState"} + } + }, + "DestinationConfiguration":{ + "type":"structure", + "members":{ + "channel":{"shape":"ChannelDestinationConfiguration"}, + "name":{"shape":"DestinationConfigurationName"}, + "s3":{"shape":"S3DestinationConfiguration"} + } + }, + "DestinationConfigurationList":{ + "type":"list", + "member":{"shape":"DestinationConfiguration"}, + "max":2, + "min":1 + }, + "DestinationConfigurationName":{ + "type":"string", + "max":128, + "min":0, + "pattern":"^[a-zA-Z0-9-_]*$" + }, + "DestinationDetail":{ + "type":"structure", + "members":{ + "s3":{"shape":"S3Detail"} + } + }, + "DestinationList":{ + "type":"list", + "member":{"shape":"Destination"}, + "max":2, + "min":1 + }, + "DestinationState":{ + "type":"string", + "enum":[ + "STARTING", + "ACTIVE", + "STOPPING", + "RECONNECTING", + "FAILED", + "STOPPED" + ] + }, + "DestinationSummary":{ + "type":"structure", + "required":[ + "id", + "state" + ], + "members":{ + "endTime":{"shape":"Time"}, + "id":{"shape":"String"}, + "startTime":{"shape":"Time"}, + "state":{"shape":"DestinationState"} + } + }, + "DestinationSummaryList":{ + "type":"list", + "member":{"shape":"DestinationSummary"}, + "max":2, + "min":1 + }, "DisconnectParticipantReason":{ "type":"string", "max":128, @@ -334,6 +771,47 @@ "members":{ } }, + "EncoderConfiguration":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"EncoderConfigurationArn"}, + "name":{"shape":"EncoderConfigurationName"}, + "tags":{"shape":"Tags"}, + "video":{"shape":"Video"} + } + }, + "EncoderConfigurationArn":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^arn:aws:ivs:[a-z0-9-]+:[0-9]+:encoder-configuration/[a-zA-Z0-9-]+$" + }, + "EncoderConfigurationArnList":{ + "type":"list", + "member":{"shape":"EncoderConfigurationArn"}, + "max":1, + "min":1 + }, + "EncoderConfigurationName":{ + "type":"string", + "max":128, + "min":0, + "pattern":"^[a-zA-Z0-9-_]*$" + }, + "EncoderConfigurationSummary":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"EncoderConfigurationArn"}, + "name":{"shape":"EncoderConfigurationName"}, + "tags":{"shape":"Tags"} + } + }, + "EncoderConfigurationSummaryList":{ + "type":"list", + "member":{"shape":"EncoderConfigurationSummary"} + }, "Event":{ "type":"structure", "members":{ @@ -370,6 +848,38 @@ "JOIN_ERROR" ] }, + "Framerate":{ + "type":"float", + "box":true, + "max":60, + "min":1 + }, + "GetCompositionRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"CompositionArn"} + } + }, + "GetCompositionResponse":{ + "type":"structure", + "members":{ + "composition":{"shape":"Composition"} + } + }, + "GetEncoderConfigurationRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"EncoderConfigurationArn"} + } + }, + "GetEncoderConfigurationResponse":{ + "type":"structure", + "members":{ + "encoderConfiguration":{"shape":"EncoderConfiguration"} + } + }, "GetParticipantRequest":{ "type":"structure", "required":[ @@ -419,6 +929,31 @@ "stageSession":{"shape":"StageSession"} } }, + "GetStorageConfigurationRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"StorageConfigurationArn"} + } + }, + "GetStorageConfigurationResponse":{ + "type":"structure", + "members":{ + "storageConfiguration":{"shape":"StorageConfiguration"} + } + }, + "GridConfiguration":{ + "type":"structure", + "members":{ + "featuredParticipantAttribute":{"shape":"AttributeKey"} + } + }, + "Height":{ + "type":"integer", + "box":true, + "max":1920, + "min":1 + }, "InternalServerException":{ "type":"structure", "members":{ @@ -428,6 +963,44 @@ "exception":true, "fault":true }, + "LayoutConfiguration":{ + "type":"structure", + "members":{ + "grid":{"shape":"GridConfiguration"} + } + }, + "ListCompositionsRequest":{ + "type":"structure", + "members":{ + "filterByEncoderConfigurationArn":{"shape":"EncoderConfigurationArn"}, + "filterByStageArn":{"shape":"StageArn"}, + "maxResults":{"shape":"MaxCompositionResults"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListCompositionsResponse":{ + "type":"structure", + "required":["compositions"], + "members":{ + "compositions":{"shape":"CompositionSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEncoderConfigurationsRequest":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxEncoderConfigurationResults"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEncoderConfigurationsResponse":{ + "type":"structure", + "required":["encoderConfigurations"], + "members":{ + "encoderConfigurations":{"shape":"EncoderConfigurationSummaryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListParticipantEventsRequest":{ "type":"structure", "required":[ @@ -507,6 +1080,21 @@ "stages":{"shape":"StageSummaryList"} } }, + "ListStorageConfigurationsRequest":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxStorageConfigurationResults"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListStorageConfigurationsResponse":{ + "type":"structure", + "required":["storageConfigurations"], + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "storageConfigurations":{"shape":"StorageConfigurationSummaryList"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -525,23 +1113,45 @@ "tags":{"shape":"Tags"} } }, + "MaxCompositionResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MaxEncoderConfigurationResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, "MaxParticipantEventResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, "MaxParticipantResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, "MaxStageResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, "MaxStageSessionResults":{ "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MaxStorageConfigurationResults":{ + "type":"integer", + "box":true, "max":100, "min":1 }, @@ -555,9 +1165,15 @@ "type":"structure", "members":{ "attributes":{"shape":"ParticipantAttributes"}, + "browserName":{"shape":"ParticipantClientAttribute"}, + "browserVersion":{"shape":"ParticipantClientAttribute"}, "firstJoinTime":{"shape":"Time"}, + "ispName":{"shape":"ParticipantClientAttribute"}, + "osName":{"shape":"ParticipantClientAttribute"}, + "osVersion":{"shape":"ParticipantClientAttribute"}, "participantId":{"shape":"ParticipantId"}, "published":{"shape":"Published"}, + "sdkVersion":{"shape":"ParticipantClientAttribute"}, "state":{"shape":"ParticipantState"}, "userId":{"shape":"UserId"} } @@ -567,7 +1183,18 @@ "key":{"shape":"String"}, "value":{"shape":"String"} }, - "ParticipantId":{"type":"string"}, + "ParticipantClientAttribute":{ + "type":"string", + "max":128, + "min":0, + "pattern":"^[a-zA-Z0-9-_.,:;\\s]*$" + }, + "ParticipantId":{ + "type":"string", + "max":64, + "min":0, + "pattern":"^[a-zA-Z0-9-]*$" + }, "ParticipantList":{ "type":"list", "member":{"shape":"ParticipantSummary"} @@ -636,6 +1263,7 @@ }, "ParticipantTokenDurationMinutes":{ "type":"integer", + "box":true, "max":20160, "min":1 }, @@ -669,6 +1297,16 @@ "exception":true }, "Published":{"type":"boolean"}, + "RecordingConfiguration":{ + "type":"structure", + "members":{ + "format":{"shape":"RecordingConfigurationFormat"} + } + }, + "RecordingConfigurationFormat":{ + "type":"string", + "enum":["HLS"] + }, "ResourceArn":{ "type":"string", "max":128, @@ -686,6 +1324,38 @@ }, "exception":true }, + "S3BucketName":{ + "type":"string", + "max":63, + "min":3, + "pattern":"^[a-z0-9-.]+$" + }, + "S3DestinationConfiguration":{ + "type":"structure", + "required":[ + "encoderConfigurationArns", + "storageConfigurationArn" + ], + "members":{ + "encoderConfigurationArns":{"shape":"EncoderConfigurationArnList"}, + "recordingConfiguration":{"shape":"RecordingConfiguration"}, + "storageConfigurationArn":{"shape":"StorageConfigurationArn"} + } + }, + "S3Detail":{ + "type":"structure", + "required":["recordingPrefix"], + "members":{ + "recordingPrefix":{"shape":"String"} + } + }, + "S3StorageConfiguration":{ + "type":"structure", + "required":["bucketName"], + "members":{ + "bucketName":{"shape":"S3BucketName"} + } + }, "ServiceQuotaExceededException":{ "type":"structure", "members":{ @@ -759,6 +1429,77 @@ "type":"list", "member":{"shape":"StageSummary"} }, + "StartCompositionRequest":{ + "type":"structure", + "required":[ + "destinations", + "stageArn" + ], + "members":{ + "destinations":{"shape":"DestinationConfigurationList"}, + "idempotencyToken":{ + "shape":"CompositionClientToken", + "idempotencyToken":true + }, + "layout":{"shape":"LayoutConfiguration"}, + "stageArn":{"shape":"StageArn"}, + "tags":{"shape":"Tags"} + } + }, + "StartCompositionResponse":{ + "type":"structure", + "members":{ + "composition":{"shape":"Composition"} + } + }, + "StopCompositionRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"CompositionArn"} + } + }, + "StopCompositionResponse":{ + "type":"structure", + "members":{ + } + }, + "StorageConfiguration":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"StorageConfigurationArn"}, + "name":{"shape":"StorageConfigurationName"}, + "s3":{"shape":"S3StorageConfiguration"}, + "tags":{"shape":"Tags"} + } + }, + "StorageConfigurationArn":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^arn:aws:ivs:[a-z0-9-]+:[0-9]+:storage-configuration/[a-zA-Z0-9-]+$" + }, + "StorageConfigurationName":{ + "type":"string", + "max":128, + "min":0, + "pattern":"^[a-zA-Z0-9-_]*$" + }, + "StorageConfigurationSummary":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{"shape":"StorageConfigurationArn"}, + "name":{"shape":"StorageConfigurationName"}, + "s3":{"shape":"S3StorageConfiguration"}, + "tags":{"shape":"Tags"} + } + }, + "StorageConfigurationSummaryList":{ + "type":"list", + "member":{"shape":"StorageConfigurationSummary"} + }, "String":{"type":"string"}, "TagKey":{ "type":"string", @@ -861,6 +1602,21 @@ }, "exception":true }, + "Video":{ + "type":"structure", + "members":{ + "bitrate":{"shape":"Bitrate"}, + "framerate":{"shape":"Framerate"}, + "height":{"shape":"Height"}, + "width":{"shape":"Width"} + } + }, + "Width":{ + "type":"integer", + "box":true, + "max":1920, + "min":1 + }, "errorMessage":{"type":"string"} } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,19 +1,31 @@ { "version": "2.0", - "service": "

Introduction

The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP API and an AWS EventBridge event stream for responses. JSON is used for both requests and responses, including errors.

Terminology:

  • A stage is a virtual space where participants can exchange video in real time.

  • A participant token is a token that authenticates a participant when they join a stage.

  • A participant object represents participants (people) in the stage and contains information about them. When a token is created, it includes a participant ID; when a participant uses that token to join a stage, the participant is associated with that participant ID There is a 1:1 mapping between participant tokens and participants.

Resources

The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):

  • Stage — A stage is a virtual space where participants can exchange video in real time.

Tagging

A tag is a metadata label that you assign to an AWS resource. A tag comprises a key and a value, both set by you. For example, you might set a tag as topic:nature to label a particular video category. See Tagging AWS Resources for more information, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS stages has no service-specific constraints beyond what is documented there.

Tags can help you identify and organize your AWS resources. For example, you can use the same tag for different resources to indicate that they are related. You can also use tags to manage access (see Access Tags).

The Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and ListTagsForResource. The following resource supports tagging: Stage.

At most 50 tags can be applied to a resource.

Stages Endpoints

  • CreateParticipantToken — Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire.

  • CreateStage — Creates a new stage (and optionally participant tokens).

  • DeleteStage — Shuts down and deletes the specified stage (disconnecting all participants).

  • DisconnectParticipant — Disconnects a specified participant and revokes the participant permanently from a specified stage.

  • GetParticipant — Gets information about the specified participant token.

  • GetStage — Gets information for the specified stage.

  • GetStageSession — Gets information for the specified stage session.

  • ListParticipantEvents — Lists events for a specified participant that occurred during a specified stage session.

  • ListParticipants — Lists all participants in a specified stage session.

  • ListStages — Gets summary information about all stages in your account, in the AWS region where the API request is processed.

  • ListStageSessions — Gets all sessions for a specified stage.

  • UpdateStage — Updates a stage’s configuration.

Tags Endpoints

  • ListTagsForResource — Gets information about AWS tags for the specified ARN.

  • TagResource — Adds or updates tags for the AWS resource with the specified ARN.

  • UntagResource — Removes tags from the resource with the specified ARN.

", + "service": "

Introduction

The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP API and an AWS EventBridge event stream for responses. JSON is used for both requests and responses, including errors.

Terminology:

  • A stage is a virtual space where participants can exchange video in real time.

  • A participant token is a token that authenticates a participant when they join a stage.

  • A participant object represents participants (people) in the stage and contains information about them. When a token is created, it includes a participant ID; when a participant uses that token to join a stage, the participant is associated with that participant ID. There is a 1:1 mapping between participant tokens and participants.

  • Server-side composition: The composition process composites participants of a stage into a single video and forwards it to a set of outputs (e.g., IVS channels). Composition endpoints support this process.

  • Server-side composition: A composition controls the look of the outputs, including how participants are positioned in the video.

Resources

The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):

  • Stage — A stage is a virtual space where participants can exchange video in real time.

Tagging

A tag is a metadata label that you assign to an AWS resource. A tag comprises a key and a value, both set by you. For example, you might set a tag as topic:nature to label a particular video category. See Tagging AWS Resources for more information, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS stages has no service-specific constraints beyond what is documented there.

Tags can help you identify and organize your AWS resources. For example, you can use the same tag for different resources to indicate that they are related. You can also use tags to manage access (see Access Tags).

The Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and ListTagsForResource. The following resource supports tagging: Stage.

At most 50 tags can be applied to a resource.

Stages Endpoints

  • CreateParticipantToken — Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire.

  • CreateStage — Creates a new stage (and optionally participant tokens).

  • DeleteStage — Shuts down and deletes the specified stage (disconnecting all participants).

  • DisconnectParticipant — Disconnects a specified participant and revokes the participant permanently from a specified stage.

  • GetParticipant — Gets information about the specified participant token.

  • GetStage — Gets information for the specified stage.

  • GetStageSession — Gets information for the specified stage session.

  • ListParticipantEvents — Lists events for a specified participant that occurred during a specified stage session.

  • ListParticipants — Lists all participants in a specified stage session.

  • ListStages — Gets summary information about all stages in your account, in the AWS region where the API request is processed.

  • ListStageSessions — Gets all sessions for a specified stage.

  • UpdateStage — Updates a stage’s configuration.

Composition Endpoints

  • GetComposition — Gets information about the specified Composition resource.

  • ListCompositions — Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

  • StartComposition — Starts a Composition from a stage based on the configuration provided in the request.

  • StopComposition — Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

EncoderConfiguration Endpoints

StorageConfiguration Endpoints

Tags Endpoints

  • ListTagsForResource — Gets information about AWS tags for the specified ARN.

  • TagResource — Adds or updates tags for the AWS resource with the specified ARN.

  • UntagResource — Removes tags from the resource with the specified ARN.

", "operations": { + "CreateEncoderConfiguration": "

Creates an EncoderConfiguration object.

", "CreateParticipantToken": "

Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire. Tokens always are scoped to the stage for which they are created.

Encryption keys are owned by Amazon IVS and never used directly by your application.

", "CreateStage": "

Creates a new stage (and optionally participant tokens).

", + "CreateStorageConfiguration": "

Creates a new storage configuration, used to enable recording to Amazon S3. When a StorageConfiguration is created, IVS will modify the S3 bucketPolicy of the provided bucket. This will ensure that IVS has sufficient permissions to write content to the provided bucket.

", + "DeleteEncoderConfiguration": "

Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.

", "DeleteStage": "

Shuts down and deletes the specified stage (disconnecting all participants).

", + "DeleteStorageConfiguration": "

Deletes the storage configuration for the specified ARN.

If you try to delete a storage configuration that is used by a Composition, you will get an error (409 ConflictException). To avoid this, for all Compositions that reference the storage configuration, first use StopComposition and wait for it to complete, then use DeleteStorageConfiguration.

", "DisconnectParticipant": "

Disconnects a specified participant and revokes the participant permanently from a specified stage.

", + "GetComposition": "

Get information about the specified Composition resource.

", + "GetEncoderConfiguration": "

Gets information about the specified EncoderConfiguration resource.

", "GetParticipant": "

Gets information about the specified participant token.

", "GetStage": "

Gets information for the specified stage.

", "GetStageSession": "

Gets information for the specified stage session.

", + "GetStorageConfiguration": "

Gets the storage configuration for the specified ARN.

", + "ListCompositions": "

Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

", + "ListEncoderConfigurations": "

Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

", "ListParticipantEvents": "

Lists events for a specified participant that occurred during a specified stage session.

", "ListParticipants": "

Lists all participants in a specified stage session.

", "ListStageSessions": "

Gets all sessions for a specified stage.

", "ListStages": "

Gets summary information about all stages in your account, in the AWS region where the API request is processed.

", + "ListStorageConfigurations": "

Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

", "ListTagsForResource": "

Gets information about AWS tags for the specified ARN.

", + "StartComposition": "

Starts a Composition from a stage based on the configuration provided in the request.

A Composition is an ephemeral resource that exists after this endpoint returns successfully. Composition stops and the resource is deleted:

  • When StopComposition is called.

  • After a 1-minute timeout, when all participants are disconnected from the stage.

  • After a 1-minute timeout, if there are no participants in the stage when StartComposition is called.

  • When broadcasting to the IVS channel fails and all retries are exhausted.

  • When broadcasting is disconnected and all attempts to reconnect are exhausted.

", + "StopComposition": "

Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

", "TagResource": "

Adds or updates tags for the AWS resource with the specified ARN.

", "UntagResource": "

Removes tags from the resource with the specified ARN.

", "UpdateStage": "

Updates a stage’s configuration.

" @@ -24,11 +36,86 @@ "refs": { } }, + "AttributeKey": { + "base": null, + "refs": { + "GridConfiguration$featuredParticipantAttribute": "

This attribute name identifies the featured slot. A participant with this attribute set to \"true\" (as a string value) in ParticipantTokenConfiguration is placed in the featured slot.

" + } + }, + "Bitrate": { + "base": null, + "refs": { + "Video$bitrate": "

Bitrate for generated output, in bps. Default: 2500000.

" + } + }, + "ChannelArn": { + "base": null, + "refs": { + "ChannelDestinationConfiguration$channelArn": "

ARN of the channel to use for broadcasting. The channel and stage resources must be in the same AWS account and region. The channel must be offline (not broadcasting).

" + } + }, + "ChannelDestinationConfiguration": { + "base": "

Object specifying a channel as a destination.

", + "refs": { + "DestinationConfiguration$channel": "

An IVS channel to be used for broadcasting, for server-side composition. Either a channel or an s3 must be specified.

" + } + }, + "Composition": { + "base": "

Object specifying a Composition resource.

", + "refs": { + "GetCompositionResponse$composition": "

The Composition that was returned.

", + "StartCompositionResponse$composition": "

The Composition that was created.

" + } + }, + "CompositionArn": { + "base": null, + "refs": { + "Composition$arn": "

ARN of the Composition resource.

", + "CompositionSummary$arn": "

ARN of the Composition resource.

", + "GetCompositionRequest$arn": "

ARN of the Composition resource.

", + "StopCompositionRequest$arn": "

ARN of the Composition.

" + } + }, + "CompositionClientToken": { + "base": null, + "refs": { + "StartCompositionRequest$idempotencyToken": "

Idempotency token.

" + } + }, + "CompositionState": { + "base": null, + "refs": { + "Composition$state": "

State of the Composition.

", + "CompositionSummary$state": "

State of the Composition resource.

" + } + }, + "CompositionSummary": { + "base": "

Summary information about a Composition.

", + "refs": { + "CompositionSummaryList$member": null + } + }, + "CompositionSummaryList": { + "base": null, + "refs": { + "ListCompositionsResponse$compositions": "

List of the matching Compositions (summary information only).

" + } + }, "ConflictException": { "base": "

", "refs": { } }, + "CreateEncoderConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreateEncoderConfigurationResponse": { + "base": null, + "refs": { + } + }, "CreateParticipantTokenRequest": { "base": null, "refs": { @@ -49,6 +136,26 @@ "refs": { } }, + "CreateStorageConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreateStorageConfigurationResponse": { + "base": null, + "refs": { + } + }, + "DeleteEncoderConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteEncoderConfigurationResponse": { + "base": null, + "refs": { + } + }, "DeleteStageRequest": { "base": null, "refs": { @@ -59,6 +166,72 @@ "refs": { } }, + "DeleteStorageConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteStorageConfigurationResponse": { + "base": null, + "refs": { + } + }, + "Destination": { + "base": "

Object specifying the status of a Destination.

", + "refs": { + "DestinationList$member": null + } + }, + "DestinationConfiguration": { + "base": "

Complex data type that defines destination-configuration objects.

", + "refs": { + "Destination$configuration": "

Configuration used to create this destination.

", + "DestinationConfigurationList$member": null + } + }, + "DestinationConfigurationList": { + "base": null, + "refs": { + "StartCompositionRequest$destinations": "

Array of destination configuration.

" + } + }, + "DestinationConfigurationName": { + "base": null, + "refs": { + "DestinationConfiguration$name": "

Name that can be specified to help identify the destination.

" + } + }, + "DestinationDetail": { + "base": "

Complex data type that defines destination-detail objects.

", + "refs": { + "Destination$detail": "

Optional details regarding the status of the destination.

" + } + }, + "DestinationList": { + "base": null, + "refs": { + "Composition$destinations": "

Array of Destination objects. A Composition can contain either one destination (channel or s3) or two (one channel and one s3).

" + } + }, + "DestinationState": { + "base": null, + "refs": { + "Destination$state": "

State of the Composition Destination.

", + "DestinationSummary$state": "

State of the Composition Destination.

" + } + }, + "DestinationSummary": { + "base": "

Summary information about a Destination.

", + "refs": { + "DestinationSummaryList$member": null + } + }, + "DestinationSummaryList": { + "base": null, + "refs": { + "CompositionSummary$destinations": "

Array of Destination objects.

" + } + }, "DisconnectParticipantReason": { "base": null, "refs": { @@ -75,6 +248,51 @@ "refs": { } }, + "EncoderConfiguration": { + "base": "

Settings for transcoding.

", + "refs": { + "CreateEncoderConfigurationResponse$encoderConfiguration": "

The EncoderConfiguration that was created.

", + "GetEncoderConfigurationResponse$encoderConfiguration": "

The EncoderConfiguration that was returned.

" + } + }, + "EncoderConfigurationArn": { + "base": null, + "refs": { + "ChannelDestinationConfiguration$encoderConfigurationArn": "

ARN of the EncoderConfiguration resource. The encoder configuration and stage resources must be in the same AWS account and region.

", + "DeleteEncoderConfigurationRequest$arn": "

ARN of the EncoderConfiguration.

", + "EncoderConfiguration$arn": "

ARN of the EncoderConfiguration resource.

", + "EncoderConfigurationArnList$member": null, + "EncoderConfigurationSummary$arn": "

ARN of the EncoderConfiguration resource.

", + "GetEncoderConfigurationRequest$arn": "

ARN of the EncoderConfiguration resource.

", + "ListCompositionsRequest$filterByEncoderConfigurationArn": "

Filters the Composition list to match the specified EncoderConfiguration attached to at least one of its output.

" + } + }, + "EncoderConfigurationArnList": { + "base": null, + "refs": { + "S3DestinationConfiguration$encoderConfigurationArns": "

ARNs of the EncoderConfiguration resource. The encoder configuration and stage resources must be in the same AWS account and region.

" + } + }, + "EncoderConfigurationName": { + "base": null, + "refs": { + "CreateEncoderConfigurationRequest$name": "

Optional name to identify the resource.

", + "EncoderConfiguration$name": "

Optional name to identify the resource.

", + "EncoderConfigurationSummary$name": "

Optional name to identify the resource.

" + } + }, + "EncoderConfigurationSummary": { + "base": "

Summary information about an EncoderConfiguration.

", + "refs": { + "EncoderConfigurationSummaryList$member": null + } + }, + "EncoderConfigurationSummaryList": { + "base": null, + "refs": { + "ListEncoderConfigurationsResponse$encoderConfigurations": "

List of the matching EncoderConfigurations (summary information only).

" + } + }, "Event": { "base": "

An occurrence during a stage session.

", "refs": { @@ -99,6 +317,32 @@ "Event$name": "

The name of the event.

" } }, + "Framerate": { + "base": null, + "refs": { + "Video$framerate": "

Video frame rate, in fps. Default: 30.

" + } + }, + "GetCompositionRequest": { + "base": null, + "refs": { + } + }, + "GetCompositionResponse": { + "base": null, + "refs": { + } + }, + "GetEncoderConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetEncoderConfigurationResponse": { + "base": null, + "refs": { + } + }, "GetParticipantRequest": { "base": null, "refs": { @@ -129,11 +373,60 @@ "refs": { } }, + "GetStorageConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetStorageConfigurationResponse": { + "base": null, + "refs": { + } + }, + "GridConfiguration": { + "base": "

Configuration information specific to Grid layout, for server-side composition. See \"Layouts\" in Server-Side Composition.

", + "refs": { + "LayoutConfiguration$grid": "

Configuration related to grid layout. Default: Grid layout.

" + } + }, + "Height": { + "base": null, + "refs": { + "Video$height": "

Video-resolution height. Note that the maximum value is determined by width times height, such that the maximum total pixels is 2073600 (1920x1080 or 1080x1920). Default: 720.

" + } + }, "InternalServerException": { "base": "

", "refs": { } }, + "LayoutConfiguration": { + "base": "

Configuration information of supported layouts for server-side composition.

", + "refs": { + "Composition$layout": "

Layout object to configure composition parameters.

", + "StartCompositionRequest$layout": "

Layout object to configure composition parameters.

" + } + }, + "ListCompositionsRequest": { + "base": null, + "refs": { + } + }, + "ListCompositionsResponse": { + "base": null, + "refs": { + } + }, + "ListEncoderConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListEncoderConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListParticipantEventsRequest": { "base": null, "refs": { @@ -174,6 +467,16 @@ "refs": { } }, + "ListStorageConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListStorageConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -184,6 +487,18 @@ "refs": { } }, + "MaxCompositionResults": { + "base": null, + "refs": { + "ListCompositionsRequest$maxResults": "

Maximum number of results to return. Default: 100.

" + } + }, + "MaxEncoderConfigurationResults": { + "base": null, + "refs": { + "ListEncoderConfigurationsRequest$maxResults": "

Maximum number of results to return. Default: 100.

" + } + }, "MaxParticipantEventResults": { "base": null, "refs": { @@ -208,17 +523,29 @@ "ListStageSessionsRequest$maxResults": "

Maximum number of results to return. Default: 50.

" } }, + "MaxStorageConfigurationResults": { + "base": null, + "refs": { + "ListStorageConfigurationsRequest$maxResults": "

Maximum number of storage configurations to return. Default: your service quota or 100, whichever is smaller.

" + } + }, "PaginationToken": { "base": null, "refs": { - "ListParticipantEventsRequest$nextToken": "

The first participant to retrieve. This is used for pagination; see the nextToken response field.

", - "ListParticipantEventsResponse$nextToken": "

If there are more rooms than maxResults, use nextToken in the request to get the next set.

", + "ListCompositionsRequest$nextToken": "

The first Composition to retrieve. This is used for pagination; see the nextToken response field.

", + "ListCompositionsResponse$nextToken": "

If there are more compositions than maxResults, use nextToken in the request to get the next set.

", + "ListEncoderConfigurationsRequest$nextToken": "

The first encoder configuration to retrieve. This is used for pagination; see the nextToken response field.

", + "ListEncoderConfigurationsResponse$nextToken": "

If there are more encoder configurations than maxResults, use nextToken in the request to get the next set.

", + "ListParticipantEventsRequest$nextToken": "

The first participant event to retrieve. This is used for pagination; see the nextToken response field.

", + "ListParticipantEventsResponse$nextToken": "

If there are more events than maxResults, use nextToken in the request to get the next set.

", "ListParticipantsRequest$nextToken": "

The first participant to retrieve. This is used for pagination; see the nextToken response field.

", - "ListParticipantsResponse$nextToken": "

If there are more rooms than maxResults, use nextToken in the request to get the next set.

", - "ListStageSessionsRequest$nextToken": "

The first stage to retrieve. This is used for pagination; see the nextToken response field.

", - "ListStageSessionsResponse$nextToken": "

If there are more rooms than maxResults, use nextToken in the request to get the next set.

", + "ListParticipantsResponse$nextToken": "

If there are more participants than maxResults, use nextToken in the request to get the next set.

", + "ListStageSessionsRequest$nextToken": "

The first stage session to retrieve. This is used for pagination; see the nextToken response field.

", + "ListStageSessionsResponse$nextToken": "

If there are more stage sessions than maxResults, use nextToken in the request to get the next set.

", "ListStagesRequest$nextToken": "

The first stage to retrieve. This is used for pagination; see the nextToken response field.

", - "ListStagesResponse$nextToken": "

If there are more rooms than maxResults, use nextToken in the request to get the next set.

" + "ListStagesResponse$nextToken": "

If there are more stages than maxResults, use nextToken in the request to get the next set.

", + "ListStorageConfigurationsRequest$nextToken": "

The first storage configuration to retrieve. This is used for pagination; see the nextToken response field.

", + "ListStorageConfigurationsResponse$nextToken": "

If there are more storage configurations than maxResults, use nextToken in the request to get the next set.

" } }, "Participant": { @@ -233,6 +560,17 @@ "Participant$attributes": "

Application-provided attributes to encode into the token and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

" } }, + "ParticipantClientAttribute": { + "base": null, + "refs": { + "Participant$browserName": "

The participant’s browser.

", + "Participant$browserVersion": "

The participant’s browser version.

", + "Participant$ispName": "

The participant’s Internet Service Provider.

", + "Participant$osName": "

The participant’s operating system.

", + "Participant$osVersion": "

The participant’s operating system version.

", + "Participant$sdkVersion": "

The participant’s SDK version.

" + } + }, "ParticipantId": { "base": null, "refs": { @@ -359,6 +697,18 @@ "ParticipantSummary$published": "

Whether the participant ever published to the stage session.

" } }, + "RecordingConfiguration": { + "base": "

An object representing a configuration to record a stage stream.

", + "refs": { + "S3DestinationConfiguration$recordingConfiguration": "

Array of maps, each of the form string:string (key:value). This is an optional customer specification, currently used only to specify the recording format for storing a recording in Amazon S3.

" + } + }, + "RecordingConfigurationFormat": { + "base": null, + "refs": { + "RecordingConfiguration$format": "

The recording format for storing a recording in Amazon S3.

" + } + }, "ResourceArn": { "base": null, "refs": { @@ -372,6 +722,32 @@ "refs": { } }, + "S3BucketName": { + "base": null, + "refs": { + "S3StorageConfiguration$bucketName": "

Location (S3 bucket name) where recorded videos will be stored. Note that the StorageConfiguration and S3 bucket must be in the same region as the Composition.

" + } + }, + "S3DestinationConfiguration": { + "base": "

A complex type that describes an S3 location where recorded videos will be stored.

", + "refs": { + "DestinationConfiguration$s3": "

An S3 storage configuration to be used for recording video data. Either a channel or an s3 must be specified.

" + } + }, + "S3Detail": { + "base": "

Complex data type that defines S3Detail objects.

", + "refs": { + "DestinationDetail$s3": "

An S3 detail object to return information about the S3 destination.

" + } + }, + "S3StorageConfiguration": { + "base": "

A complex type that describes an S3 location where recorded videos will be stored.

", + "refs": { + "CreateStorageConfigurationRequest$s3": "

A complex type that contains a storage configuration for where recorded video will be stored.

", + "StorageConfiguration$s3": "

An S3 destination configuration where recorded videos will be stored.

", + "StorageConfigurationSummary$s3": "

An S3 destination configuration where recorded videos will be stored.

" + } + }, "ServiceQuotaExceededException": { "base": "

", "refs": { @@ -388,17 +764,21 @@ "StageArn": { "base": null, "refs": { + "Composition$stageArn": "

ARN of the stage used as input

", + "CompositionSummary$stageArn": "

ARN of the attached stage.

", "CreateParticipantTokenRequest$stageArn": "

ARN of the stage to which this token is scoped.

", "DeleteStageRequest$arn": "

ARN of the stage to be deleted.

", "DisconnectParticipantRequest$stageArn": "

ARN of the stage to which the participant is attached.

", "GetParticipantRequest$stageArn": "

Stage ARN.

", "GetStageRequest$arn": "

ARN of the stage for which the information is to be retrieved.

", "GetStageSessionRequest$stageArn": "

ARN of the stage for which the information is to be retrieved.

", + "ListCompositionsRequest$filterByStageArn": "

Filters the Composition list to match the specified Stage ARN.

", "ListParticipantEventsRequest$stageArn": "

Stage ARN.

", "ListParticipantsRequest$stageArn": "

Stage ARN.

", "ListStageSessionsRequest$stageArn": "

Stage ARN.

", "Stage$arn": "

Stage ARN.

", "StageSummary$arn": "

Stage ARN.

", + "StartCompositionRequest$stageArn": "

ARN of the stage to be used for compositing.

", "UpdateStageRequest$arn": "

ARN of the stage to be updated.

" } }, @@ -454,13 +834,73 @@ "ListStagesResponse$stages": "

List of the matching stages (summary information only).

" } }, + "StartCompositionRequest": { + "base": null, + "refs": { + } + }, + "StartCompositionResponse": { + "base": null, + "refs": { + } + }, + "StopCompositionRequest": { + "base": null, + "refs": { + } + }, + "StopCompositionResponse": { + "base": null, + "refs": { + } + }, + "StorageConfiguration": { + "base": "

A complex type that describes a location where recorded videos will be stored.

", + "refs": { + "CreateStorageConfigurationResponse$storageConfiguration": "

The StorageConfiguration that was created.

", + "GetStorageConfigurationResponse$storageConfiguration": "

The StorageConfiguration that was returned.

" + } + }, + "StorageConfigurationArn": { + "base": null, + "refs": { + "DeleteStorageConfigurationRequest$arn": "

ARN of the storage configuration to be deleted.

", + "GetStorageConfigurationRequest$arn": "

ARN of the storage configuration to be retrieved.

", + "S3DestinationConfiguration$storageConfigurationArn": "

ARN of the StorageConfiguration where recorded videos will be stored.

", + "StorageConfiguration$arn": "

ARN of the storage configuration.

", + "StorageConfigurationSummary$arn": "

ARN of the storage configuration.

" + } + }, + "StorageConfigurationName": { + "base": null, + "refs": { + "CreateStorageConfigurationRequest$name": "

Storage configuration name. The value does not need to be unique.

", + "StorageConfiguration$name": "

Name of the storage configuration.

", + "StorageConfigurationSummary$name": "

Name of the storage configuration.

" + } + }, + "StorageConfigurationSummary": { + "base": "

Summary information about a storage configuration.

", + "refs": { + "StorageConfigurationSummaryList$member": null + } + }, + "StorageConfigurationSummaryList": { + "base": null, + "refs": { + "ListStorageConfigurationsResponse$storageConfigurations": "

List of the matching storage configurations.

" + } + }, "String": { "base": null, "refs": { + "Destination$id": "

Unique identifier for this destination, assigned by IVS.

", + "DestinationSummary$id": "

Unique identifier for this destination, assigned by IVS.

", "ParticipantAttributes$key": null, "ParticipantAttributes$value": null, "ParticipantTokenAttributes$key": null, - "ParticipantTokenAttributes$value": null + "ParticipantTokenAttributes$value": null, + "S3Detail$recordingPrefix": "

The S3 bucket prefix under which the recording is stored.

" } }, "TagKey": { @@ -495,16 +935,33 @@ "Tags": { "base": null, "refs": { + "Composition$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "CompositionSummary$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "CreateEncoderConfigurationRequest$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", "CreateStageRequest$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "CreateStorageConfigurationRequest$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "EncoderConfiguration$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "EncoderConfigurationSummary$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", "ListTagsForResourceResponse$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value).

", "Stage$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", "StageSummary$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "StartCompositionRequest$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "StorageConfiguration$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", + "StorageConfigurationSummary$tags": "

Tags attached to the resource. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints on tags beyond what is documented there.

", "TagResourceRequest$tags": "

Array of tags to be added or updated. Array of maps, each of the form string:string (key:value). See Tagging AWS Resources for details, including restrictions that apply to tags and \"Tag naming limits and requirements\"; Amazon IVS has no constraints beyond what is documented there.

" } }, "Time": { "base": null, "refs": { + "Composition$endTime": "

UTC time of the Composition end. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "Composition$startTime": "

UTC time of the Composition start. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "CompositionSummary$endTime": "

UTC time of the Composition end. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "CompositionSummary$startTime": "

UTC time of the Composition start. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "Destination$endTime": "

UTC time of the destination end. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "Destination$startTime": "

UTC time of the destination start. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "DestinationSummary$endTime": "

UTC time of the destination end. This is an ISO 8601 timestamp; note that this is returned as a string.

", + "DestinationSummary$startTime": "

UTC time of the destination start. This is an ISO 8601 timestamp; note that this is returned as a string.

", "Event$eventTime": "

ISO 8601 timestamp (returned as a string) for when the event occurred.

", "Participant$firstJoinTime": "

ISO 8601 timestamp (returned as a string) when the participant first joined the stage session.

", "ParticipantSummary$firstJoinTime": "

ISO 8601 timestamp (returned as a string) when the participant first joined the stage session.

", @@ -547,6 +1004,19 @@ "refs": { } }, + "Video": { + "base": "

Settings for video.

", + "refs": { + "CreateEncoderConfigurationRequest$video": "

Video configuration. Default: video resolution 1280x720, bitrate 2500 kbps, 30 fps.

", + "EncoderConfiguration$video": "

Video configuration. Default: video resolution 1280x720, bitrate 2500 kbps, 30 fps

" + } + }, + "Width": { + "base": null, + "refs": { + "Video$width": "

Video-resolution width. Note that the maximum value is determined by width times height, such that the maximum total pixels is 2073600 (1920x1080 or 1080x1920). Default: 1280.

" + } + }, "errorMessage": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivs-realtime/2020-07-14/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivs-realtime/2020-07-14/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,15 @@ { "pagination": { + "ListCompositions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "ListEncoderConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListParticipantEvents": { "input_token": "nextToken", "output_token": "nextToken", @@ -19,6 +29,11 @@ "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults" + }, + "ListStorageConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivschat/2020-07-14/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivschat/2020-07-14/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivschat/2020-07-14/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivschat/2020-07-14/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -305,11 +305,15 @@ "min":3, "pattern":"^[a-z0-9-.]+$" }, - "ChatToken":{"type":"string"}, + "ChatToken":{ + "type":"string", + "sensitive":true + }, "ChatTokenAttributes":{ "type":"map", "key":{"shape":"String"}, - "value":{"shape":"String"} + "value":{"shape":"String"}, + "sensitive":true }, "ChatTokenCapabilities":{ "type":"list", @@ -695,11 +699,13 @@ }, "MaxLoggingConfigurationResults":{ "type":"integer", + "box":true, "max":50, "min":1 }, "MaxRoomResults":{ "type":"integer", + "box":true, "max":50, "min":1 }, @@ -794,11 +800,13 @@ }, "RoomMaxMessageLength":{ "type":"integer", + "box":true, "max":500, "min":1 }, "RoomMaxMessageRatePerSecond":{ "type":"integer", + "box":true, "max":100, "min":1 }, @@ -868,6 +876,7 @@ }, "SessionDurationInMinutes":{ "type":"integer", + "box":true, "max":180, "min":1 }, @@ -1019,7 +1028,8 @@ "UserID":{ "type":"string", "max":128, - "min":1 + "min":1, + "sensitive":true }, "ValidationException":{ "type":"structure", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivschat/2020-07-14/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivschat/2020-07-14/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivschat/2020-07-14/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivschat/2020-07-14/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://ivschat-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://ivschat-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://ivschat-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://ivschat-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://ivschat.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://ivschat.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://ivschat.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://ivschat.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivschat/2020-07-14/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivschat/2020-07-14/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ivschat/2020-07-14/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ivschat/2020-07-14/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,9 +8,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-west-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -21,9 +21,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-west-2", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -47,9 +47,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -99,9 +99,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -125,9 +125,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-gov-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -151,9 +151,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-gov-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-gov-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -177,9 +177,20 @@ } }, "params": { - "UseDualStack": false, "Region": "us-gov-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -190,9 +201,20 @@ } }, "params": { - "UseDualStack": false, "Region": "us-iso-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -203,9 +225,20 @@ } }, "params": { - "UseDualStack": false, "Region": "us-iso-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -216,9 +249,20 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -229,9 +273,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -242,9 +286,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -256,8 +300,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -267,9 +311,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -279,11 +323,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -152,6 +152,46 @@ } ] }, + "CreateReplicator": { + "name": "CreateReplicator", + "http": { + "method": "POST", + "requestUri": "/replication/v1/replicators", + "responseCode": 200 + }, + "input": { + "shape": "CreateReplicatorRequest" + }, + "output": { + "shape": "CreateReplicatorResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "UnauthorizedException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "NotFoundException" + }, + { + "shape": "ServiceUnavailableException" + }, + { + "shape": "TooManyRequestsException" + }, + { + "shape": "ConflictException" + } + ] + }, "CreateVpcConnection": { "name": "CreateVpcConnection", "http": { @@ -245,6 +285,43 @@ } ] }, + "DeleteReplicator": { + "name": "DeleteReplicator", + "http": { + "method": "DELETE", + "requestUri": "/replication/v1/replicators/{replicatorArn}", + "responseCode": 200 + }, + "input": { + "shape": "DeleteReplicatorRequest" + }, + "output": { + "shape": "DeleteReplicatorResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "UnauthorizedException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "NotFoundException" + }, + { + "shape": "ServiceUnavailableException" + }, + { + "shape": "TooManyRequestsException" + } + ] + }, "DeleteVpcConnection": { "name": "DeleteVpcConnection", "http": { @@ -463,6 +540,43 @@ } ] }, + "DescribeReplicator": { + "name": "DescribeReplicator", + "http": { + "method": "GET", + "requestUri": "/replication/v1/replicators/{replicatorArn}", + "responseCode": 200 + }, + "input": { + "shape": "DescribeReplicatorRequest" + }, + "output": { + "shape": "DescribeReplicatorResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "UnauthorizedException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "NotFoundException" + }, + { + "shape": "ServiceUnavailableException" + }, + { + "shape": "TooManyRequestsException" + } + ] + }, "DescribeVpcConnection": { "name": "DescribeVpcConnection", "http": { @@ -828,6 +942,43 @@ } ] }, + "ListReplicators": { + "name": "ListReplicators", + "http": { + "method": "GET", + "requestUri": "/replication/v1/replicators", + "responseCode": 200 + }, + "input": { + "shape": "ListReplicatorsRequest" + }, + "output": { + "shape": "ListReplicatorsResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "UnauthorizedException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "NotFoundException" + }, + { + "shape": "ServiceUnavailableException" + }, + { + "shape": "TooManyRequestsException" + } + ] + }, "ListScramSecrets" : { "name" : "ListScramSecrets", "http" : { @@ -1412,6 +1563,43 @@ "shape" : "ForbiddenException" } ] }, + "UpdateReplicationInfo": { + "name": "UpdateReplicationInfo", + "http": { + "method": "PUT", + "requestUri": "/replication/v1/replicators/{replicatorArn}/replication-info", + "responseCode": 200 + }, + "input": { + "shape": "UpdateReplicationInfoRequest" + }, + "output": { + "shape": "UpdateReplicationInfoResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "UnauthorizedException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "NotFoundException" + }, + { + "shape": "ServiceUnavailableException" + }, + { + "shape": "TooManyRequestsException" + } + ] + }, "UpdateSecurity" : { "name" : "UpdateSecurity", "http" : { @@ -1472,6 +1660,16 @@ } }, "shapes": { + "AmazonMskCluster": { + "type": "structure", + "members": { + "MskClusterArn": { + "shape": "__string", + "locationName": "mskClusterArn" + } + }, + "required": ["MskClusterArn"] + }, "BatchAssociateScramSecretRequest" : { "type" : "structure", "members" : { @@ -1773,6 +1971,10 @@ "StorageMode" : { "shape" : "StorageMode", "locationName" : "storageMode" + }, + "CustomerActionStatus": { + "shape": "CustomerActionStatus", + "locationName": "customerActionStatus" } } }, @@ -2160,6 +2362,50 @@ } } }, + "ConsumerGroupReplication": { + "type": "structure", + "members": { + "ConsumerGroupsToExclude": { + "shape": "__listOf__stringMax256", + "locationName": "consumerGroupsToExclude" + }, + "ConsumerGroupsToReplicate": { + "shape": "__listOf__stringMax256", + "locationName": "consumerGroupsToReplicate" + }, + "DetectAndCopyNewConsumerGroups": { + "shape": "__boolean", + "locationName": "detectAndCopyNewConsumerGroups" + }, + "SynchroniseConsumerGroupOffsets": { + "shape": "__boolean", + "locationName": "synchroniseConsumerGroupOffsets" + } + }, + "required": ["ConsumerGroupsToReplicate"] + }, + "ConsumerGroupReplicationUpdate": { + "type": "structure", + "members": { + "ConsumerGroupsToExclude": { + "shape": "__listOf__stringMax256", + "locationName": "consumerGroupsToExclude" + }, + "ConsumerGroupsToReplicate": { + "shape": "__listOf__stringMax256", + "locationName": "consumerGroupsToReplicate" + }, + "DetectAndCopyNewConsumerGroups": { + "shape": "__boolean", + "locationName": "detectAndCopyNewConsumerGroups" + }, + "SynchroniseConsumerGroupOffsets": { + "shape": "__boolean", + "locationName": "synchroniseConsumerGroupOffsets" + } + }, + "required": ["ConsumerGroupsToReplicate", "ConsumerGroupsToExclude", "SynchroniseConsumerGroupOffsets", "DetectAndCopyNewConsumerGroups"] + }, "CreateClusterRequest": { "type": "structure", "members": { @@ -2286,6 +2532,53 @@ } } }, + "CreateReplicatorRequest": { + "type": "structure", + "members": { + "Description": { + "shape": "__stringMax1024", + "locationName": "description" + }, + "KafkaClusters": { + "shape": "__listOfKafkaCluster", + "locationName": "kafkaClusters" + }, + "ReplicationInfoList": { + "shape": "__listOfReplicationInfo", + "locationName": "replicationInfoList" + }, + "ReplicatorName": { + "shape": "__stringMin1Max128Pattern09AZaZ09AZaZ0", + "locationName": "replicatorName" + }, + "ServiceExecutionRoleArn": { + "shape": "__string", + "locationName": "serviceExecutionRoleArn" + }, + "Tags": { + "shape": "__mapOf__string", + "locationName": "tags" + } + }, + "required": ["ServiceExecutionRoleArn", "ReplicatorName", "ReplicationInfoList", "KafkaClusters"] + }, + "CreateReplicatorResponse": { + "type": "structure", + "members": { + "ReplicatorArn": { + "shape": "__string", + "locationName": "replicatorArn" + }, + "ReplicatorName": { + "shape": "__string", + "locationName": "replicatorName" + }, + "ReplicatorState": { + "shape": "ReplicatorState", + "locationName": "replicatorState" + } + } + }, "CreateVpcConnectionRequest": { "type": "structure", "members": { @@ -2418,6 +2711,35 @@ } } }, + "DeleteReplicatorRequest": { + "type": "structure", + "members": { + "CurrentVersion": { + "shape": "__string", + "location": "querystring", + "locationName": "currentVersion" + }, + "ReplicatorArn": { + "shape": "__string", + "location": "uri", + "locationName": "replicatorArn" + } + }, + "required": ["ReplicatorArn"] + }, + "DeleteReplicatorResponse": { + "type": "structure", + "members": { + "ReplicatorArn": { + "shape": "__string", + "locationName": "replicatorArn" + }, + "ReplicatorState": { + "shape": "ReplicatorState", + "locationName": "replicatorState" + } + } + }, "DeleteVpcConnectionRequest": { "type": "structure", "members": { @@ -2598,6 +2920,74 @@ } } }, + "DescribeReplicatorRequest": { + "type": "structure", + "members": { + "ReplicatorArn": { + "shape": "__string", + "location": "uri", + "locationName": "replicatorArn" + } + }, + "required": ["ReplicatorArn"] + }, + "DescribeReplicatorResponse": { + "type": "structure", + "members": { + "CreationTime": { + "shape": "__timestampIso8601", + "locationName": "creationTime" + }, + "CurrentVersion": { + "shape": "__string", + "locationName": "currentVersion" + }, + "IsReplicatorReference": { + "shape": "__boolean", + "locationName": "isReplicatorReference" + }, + "KafkaClusters": { + "shape": "__listOfKafkaClusterDescription", + "locationName": "kafkaClusters" + }, + "ReplicationInfoList": { + "shape": "__listOfReplicationInfoDescription", + "locationName": "replicationInfoList" + }, + "ReplicatorArn": { + "shape": "__string", + "locationName": "replicatorArn" + }, + "ReplicatorDescription": { + "shape": "__string", + "locationName": "replicatorDescription" + }, + "ReplicatorName": { + "shape": "__string", + "locationName": "replicatorName" + }, + "ReplicatorResourceArn": { + "shape": "__string", + "locationName": "replicatorResourceArn" + }, + "ReplicatorState": { + "shape": "ReplicatorState", + "locationName": "replicatorState" + }, + "ServiceExecutionRoleArn": { + "shape": "__string", + "locationName": "serviceExecutionRoleArn" + }, + "StateInfo": { + "shape": "ReplicationStateInfo", + "locationName": "stateInfo" + }, + "Tags": { + "shape": "__mapOf__string", + "locationName": "tags" + } + } + }, "DescribeVpcConnectionRequest": { "type": "structure", "members": { @@ -2892,6 +3282,64 @@ "httpStatusCode": 500 } }, + "KafkaCluster": { + "type": "structure", + "members": { + "AmazonMskCluster": { + "shape": "AmazonMskCluster", + "locationName": "amazonMskCluster" + }, + "VpcConfig": { + "shape": "KafkaClusterClientVpcConfig", + "locationName": "vpcConfig" + } + }, + "required": ["VpcConfig", "AmazonMskCluster"] + }, + "KafkaClusterClientVpcConfig" : { + "type" : "structure", + "members" : { + "SecurityGroupIds" : { + "shape" : "__listOf__string", + "locationName" : "securityGroupIds" + }, + "SubnetIds" : { + "shape" : "__listOf__string", + "locationName" : "subnetIds" + } + }, + "required" : [ "SubnetIds" ] + }, + "KafkaClusterDescription": { + "type": "structure", + "members": { + "AmazonMskCluster": { + "shape": "AmazonMskCluster", + "locationName": "amazonMskCluster" + }, + "KafkaClusterAlias": { + "shape": "__string", + "locationName": "kafkaClusterAlias" + }, + "VpcConfig": { + "shape": "KafkaClusterClientVpcConfig", + "locationName": "vpcConfig" + } + } + }, + "KafkaClusterSummary": { + "type": "structure", + "members": { + "AmazonMskCluster": { + "shape": "AmazonMskCluster", + "locationName": "amazonMskCluster" + }, + "KafkaClusterAlias": { + "shape": "__string", + "locationName": "kafkaClusterAlias" + } + } + }, "KafkaVersion": { "type": "structure", "members": { @@ -3079,6 +3527,10 @@ } } }, + "CustomerActionStatus": { + "type": "string", + "enum": [ "CRITICAL_ACTION_REQUIRED", "ACTION_RECOMMENDED", "NONE" ] + }, "DescribeClusterV2Request": { "type": "structure", "members": { @@ -3366,6 +3818,11 @@ "shape" : "StorageMode", "locationName" : "storageMode", "documentation": "\n

This controls storage mode for supported storage tiers.

\n " + }, + "CustomerActionStatus": { + "shape": "CustomerActionStatus", + "locationName": "customerActionStatus", + "documentation": "\n

Determines if there is an action required from the customer.

\n " } }, "required": [ @@ -3718,6 +4175,39 @@ } } }, + "ListReplicatorsRequest": { + "type": "structure", + "members": { + "MaxResults": { + "shape": "MaxResults", + "location": "querystring", + "locationName": "maxResults" + }, + "NextToken": { + "shape": "__string", + "location": "querystring", + "locationName": "nextToken" + }, + "ReplicatorNameFilter": { + "shape": "__string", + "location": "querystring", + "locationName": "replicatorNameFilter" + } + } + }, + "ListReplicatorsResponse": { + "type": "structure", + "members": { + "NextToken": { + "shape": "__string", + "locationName": "nextToken" + }, + "Replicators": { + "shape": "__listOfReplicatorSummary", + "locationName": "replicators" + } + } + }, "ListVpcConnectionsRequest" : { "type" : "structure", "members" : { @@ -3871,6 +4361,128 @@ "httpStatusCode": 404 } }, + "ReplicationInfo": { + "type": "structure", + "members": { + "ConsumerGroupReplication": { + "shape": "ConsumerGroupReplication", + "locationName": "consumerGroupReplication" + }, + "SourceKafkaClusterArn": { + "shape": "__string", + "locationName": "sourceKafkaClusterArn" + }, + "TargetCompressionType": { + "shape": "TargetCompressionType", + "locationName": "targetCompressionType" + }, + "TargetKafkaClusterArn": { + "shape": "__string", + "locationName": "targetKafkaClusterArn" + }, + "TopicReplication": { + "shape": "TopicReplication", + "locationName": "topicReplication" + } + }, + "required": ["TargetCompressionType", "TopicReplication", "ConsumerGroupReplication", "SourceKafkaClusterArn", "TargetKafkaClusterArn"] + }, + "ReplicationInfoDescription": { + "type": "structure", + "members": { + "ConsumerGroupReplication": { + "shape": "ConsumerGroupReplication", + "locationName": "consumerGroupReplication" + }, + "SourceKafkaClusterAlias": { + "shape": "__string", + "locationName": "sourceKafkaClusterAlias" + }, + "TargetCompressionType": { + "shape": "TargetCompressionType", + "locationName": "targetCompressionType" + }, + "TargetKafkaClusterAlias": { + "shape": "__string", + "locationName": "targetKafkaClusterAlias" + }, + "TopicReplication": { + "shape": "TopicReplication", + "locationName": "topicReplication" + } + } + }, + "ReplicationInfoSummary": { + "type": "structure", + "members": { + "SourceKafkaClusterAlias": { + "shape": "__string", + "locationName": "sourceKafkaClusterAlias" + }, + "TargetKafkaClusterAlias": { + "shape": "__string", + "locationName": "targetKafkaClusterAlias" + } + } + }, + "ReplicationStateInfo": { + "type": "structure", + "members": { + "Code": { + "shape": "__string", + "locationName": "code" + }, + "Message": { + "shape": "__string", + "locationName": "message" + } + } + }, + "ReplicatorState": { + "type": "string", + "enum": ["RUNNING", "CREATING", "UPDATING", "DELETING", "FAILED"] + }, + "ReplicatorSummary": { + "type": "structure", + "members": { + "CreationTime": { + "shape": "__timestampIso8601", + "locationName": "creationTime" + }, + "CurrentVersion": { + "shape": "__string", + "locationName": "currentVersion" + }, + "IsReplicatorReference": { + "shape": "__boolean", + "locationName": "isReplicatorReference" + }, + "KafkaClustersSummary": { + "shape": "__listOfKafkaClusterSummary", + "locationName": "kafkaClustersSummary" + }, + "ReplicationInfoSummaryList": { + "shape": "__listOfReplicationInfoSummary", + "locationName": "replicationInfoSummaryList" + }, + "ReplicatorArn": { + "shape": "__string", + "locationName": "replicatorArn" + }, + "ReplicatorName": { + "shape": "__string", + "locationName": "replicatorName" + }, + "ReplicatorResourceArn": { + "shape": "__string", + "locationName": "replicatorResourceArn" + }, + "ReplicatorState": { + "shape": "ReplicatorState", + "locationName": "replicatorState" + } + } + }, "Sasl" : { "type" : "structure", "members" : { @@ -3994,6 +4606,62 @@ "Tags" ] }, + "TargetCompressionType": { + "type": "string", + "enum": ["NONE", "GZIP", "SNAPPY", "LZ4", "ZSTD"] + }, + "TopicReplication": { + "type": "structure", + "members": { + "CopyAccessControlListsForTopics": { + "shape": "__boolean", + "locationName": "copyAccessControlListsForTopics" + }, + "CopyTopicConfigurations": { + "shape": "__boolean", + "locationName": "copyTopicConfigurations" + }, + "DetectAndCopyNewTopics": { + "shape": "__boolean", + "locationName": "detectAndCopyNewTopics" + }, + "TopicsToExclude": { + "shape": "__listOf__stringMax249", + "locationName": "topicsToExclude" + }, + "TopicsToReplicate": { + "shape": "__listOf__stringMax249", + "locationName": "topicsToReplicate" + } + }, + "required": ["TopicsToReplicate"] + }, + "TopicReplicationUpdate": { + "type": "structure", + "members": { + "CopyAccessControlListsForTopics": { + "shape": "__boolean", + "locationName": "copyAccessControlListsForTopics" + }, + "CopyTopicConfigurations": { + "shape": "__boolean", + "locationName": "copyTopicConfigurations" + }, + "DetectAndCopyNewTopics": { + "shape": "__boolean", + "locationName": "detectAndCopyNewTopics" + }, + "TopicsToExclude": { + "shape": "__listOf__stringMax249", + "locationName": "topicsToExclude" + }, + "TopicsToReplicate": { + "shape": "__listOf__stringMax249", + "locationName": "topicsToReplicate" + } + }, + "required": ["TopicsToReplicate", "TopicsToExclude", "CopyTopicConfigurations", "DetectAndCopyNewTopics", "CopyAccessControlListsForTopics"] + }, "Tls" : { "type" : "structure", "members" : { @@ -4386,6 +5054,50 @@ } } }, + "UpdateReplicationInfoRequest": { + "type": "structure", + "members": { + "ConsumerGroupReplication": { + "shape": "ConsumerGroupReplicationUpdate", + "locationName": "consumerGroupReplication" + }, + "CurrentVersion": { + "shape": "__string", + "locationName": "currentVersion" + }, + "ReplicatorArn": { + "shape": "__string", + "location": "uri", + "locationName": "replicatorArn" + }, + "SourceKafkaClusterArn": { + "shape": "__string", + "locationName": "sourceKafkaClusterArn" + }, + "TargetKafkaClusterArn": { + "shape": "__string", + "locationName": "targetKafkaClusterArn" + }, + "TopicReplication": { + "shape": "TopicReplicationUpdate", + "locationName": "topicReplication" + } + }, + "required": ["ReplicatorArn", "SourceKafkaClusterArn", "CurrentVersion", "TargetKafkaClusterArn"] + }, + "UpdateReplicationInfoResponse": { + "type": "structure", + "members": { + "ReplicatorArn": { + "shape": "__string", + "locationName": "replicatorArn" + }, + "ReplicatorState": { + "shape": "ReplicatorState", + "locationName": "replicatorState" + } + } + }, "UpdateSecurityRequest" : { "type" : "structure", "members" : { @@ -4807,6 +5519,24 @@ "shape": "ConfigurationRevision" } }, + "__listOfKafkaCluster" : { + "type" : "list", + "member" : { + "shape" : "KafkaCluster" + } + }, + "__listOfKafkaClusterDescription" : { + "type" : "list", + "member" : { + "shape" : "KafkaClusterDescription" + } + }, + "__listOfKafkaClusterSummary" : { + "type" : "list", + "member" : { + "shape" : "KafkaClusterSummary" + } + }, "__listOfKafkaVersion": { "type": "list", "member": { @@ -4825,6 +5555,31 @@ "shape": "ClientVpcConnection" } }, + "__listOfReplicationInfo" : { + "type" : "list", + "member" : { + "shape" : "ReplicationInfo" + } + }, + "__listOfReplicationInfoDescription" : { + "type" : "list", + "member" : { + "shape" : "ReplicationInfoDescription" + } + }, + "__listOfReplicationInfoSummary" : { + "type" : "list", + "member" : { + "shape" : "ReplicationInfoSummary" + } + }, + "__listOfReplicatorSummary" : { + "type" : "list", + "member" : { + "shape" : "ReplicatorSummary" + } + }, + "__listOfVpcConnection": { "type": "list", "member": { @@ -4843,6 +5598,18 @@ "shape": "__string" } }, + "__listOf__stringMax249" : { + "type" : "list", + "member" : { + "shape" : "__stringMax249" + } + }, + "__listOf__stringMax256" : { + "type" : "list", + "member" : { + "shape" : "__stringMax256" + } + }, "__long": { "type": "long" }, @@ -4858,11 +5625,29 @@ "__string": { "type": "string" }, + "__stringMax1024" : { + "type" : "string", + "max" : 1024 + }, + "__stringMax249" : { + "type" : "string", + "max" : 249 + }, + "__stringMax256" : { + "type" : "string", + "max" : 256 + }, "__stringMin1Max128": { "type": "string", "min": 1, "max": 128 }, + "__stringMin1Max128Pattern09AZaZ09AZaZ0" : { + "type" : "string", + "min" : 1, + "max" : 128, + "pattern" : "^[0-9A-Za-z][0-9A-Za-z-]{0,}$" + }, "__stringMin1Max64": { "type": "string", "min": 1, @@ -4876,6 +5661,10 @@ "__timestampIso8601": { "type": "timestamp", "timestampFormat": "iso8601" + }, + "__timestampUnix": { + "type": "timestamp", + "timestampFormat": "unixTimestamp" } } } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,11 +5,13 @@ "BatchAssociateScramSecret" : "

Associates one or more Scram Secrets with an Amazon MSK cluster.

", "CreateCluster" : "

Creates a new MSK cluster.

", "CreateClusterV2" : "

Creates a new Amazon MSK cluster of either the provisioned or the serverless type.

", + "CreateReplicator" : "

Creates a new Kafka Replicator.

", "CreateConfiguration" : "

Creates a new MSK configuration.

", "CreateVpcConnection" : "

Creates a new Amazon MSK VPC connection.

", "DeleteCluster" : "

Deletes the MSK cluster specified by the Amazon Resource Name (ARN) in the request.

", "DeleteClusterPolicy" : "

Deletes the MSK cluster policy specified by the Amazon Resource Name (ARN) in your request.

", "DeleteConfiguration" : "

Deletes the specified MSK configuration. The configuration must be in the ACTIVE or DELETE_FAILED state.

", + "DeleteReplicator" : "

Deletes a replicator.

", "DeleteVpcConnection" : "

Deletes the Amazon MSK VPC connection specified in your request.

", "DescribeCluster" : "

Returns a description of the MSK cluster whose Amazon Resource Name (ARN) is specified in the request.

", "DescribeClusterV2" : "

Returns a description of the MSK cluster of either the provisioned or the serverless type whose Amazon Resource Name (ARN) is specified in the request.

", @@ -17,6 +19,7 @@ "DescribeClusterOperationV2" : "

Returns a description of the cluster operation specified by the ARN.

", "DescribeConfiguration" : "

Returns a description of this MSK configuration.

", "DescribeConfigurationRevision" : "

Returns a description of this revision of the configuration.

", + "DescribeReplicator" : "

Returns a description of the Kafka Replicator whose Amazon Resource Name (ARN) is specified in the request.

", "DescribeVpcConnection" : "

Displays information about the specified Amazon MSK VPC connection.

", "BatchDisassociateScramSecret" : "

Disassociates one or more Scram Secrets from an Amazon MSK cluster.

", "GetBootstrapBrokers" : "

A list of brokers that a client application can use to bootstrap.

", @@ -31,6 +34,7 @@ "ListConfigurations" : "

Returns a list of all the MSK configurations in this Region.

", "ListKafkaVersions" : "

Returns a list of Apache Kafka versions.

", "ListNodes" : "

Returns a list of the broker nodes in the cluster.

", + "ListReplicators" : "

Lists the replicators.

", "ListScramSecrets" : "

Returns a list of the Scram Secrets associated with an Amazon MSK cluster.

", "ListTagsForResource" : "

Returns a list of the tags associated with the specified resource.

", "ListVpcConnections" : "

Displays a list of Amazon MSK VPC connections.

", @@ -47,10 +51,19 @@ "UpdateClusterConfiguration" : "

Updates the cluster with the configuration that is specified in the request body.

", "UpdateClusterKafkaVersion" : "

Updates the Apache Kafka version for the cluster.

", "UpdateMonitoring" : "

Updates the monitoring settings for the cluster. You can use this operation to specify which Apache Kafka metrics you want Amazon MSK to send to Amazon CloudWatch. You can also specify settings for open monitoring with Prometheus.

", + "UpdateReplicationInfo" : "

Updates replication info of a replicator.

", "UpdateSecurity" : "

You can use this operation to update the encrypting and authentication settings for an existing cluster.

", "UpdateStorage" : "

Updates cluster broker volume size (or) sets cluster storage mode to TIERED.

" }, "shapes" : { + "AmazonMskCluster" : { + "base" : "

Details of an Amazon MSK Cluster.

", + "refs" : { + "KafkaCluster$AmazonMskCluster" : "

Details of an Amazon MSK Cluster.

", + "KafkaClusterDescription$AmazonMskCluster" : "

Details of an Amazon MSK Cluster.

", + "KafkaClusterSummary$AmazonMskCluster" : "

Details of an Amazon MSK Cluster

." + } + }, "BatchAssociateScramSecretRequest" : { "base" : "

Request body for BatchAssociateScramSecret.

", "refs" : { } @@ -281,6 +294,19 @@ "UpdateConnectivityRequest$ConnectivityInfo" : "

Information about the broker access configuration.

" } }, + "ConsumerGroupReplication" : { + "base" : "

Details about consumer group replication.

", + "refs" : { + "ReplicationInfo$ConsumerGroupReplication" : "

Configuration relating to consumer group replication.

", + "ReplicationInfoDescription$ConsumerGroupReplication" : "

Configuration relating to consumer group replication

." + } + }, + "ConsumerGroupReplicationUpdate" : { + "base" : "

Details about consumer group replication.

", + "refs" : { + "UpdateReplicationInfoRequest$ConsumerGroupReplication" : "

Updated consumer group replication information.

" + } + }, "CreateClusterRequest" : { "base" : "

Creates a cluster.

", "refs" : { } @@ -305,6 +331,14 @@ "base" : "

Response body for CreateConfiguration

", "refs" : { } }, + "CreateReplicatorRequest" : { + "base" : "

Request body for replicator.

", + "refs" : { } + }, + "CreateReplicatorResponse" : { + "base" : "

Returns information about the created replicator.

", + "refs" : { } + }, "CreateVpcConnectionRequest" : { "base" : "

Request body for CreateVpcConnection.

", "refs" : { } @@ -313,6 +347,13 @@ "base" : "

Response body for CreateVpcConnection

", "refs" : { } }, + "CustomerActionStatus" : { + "base" : "

A type of an action required from the customer.

", + "refs" : { + "ClusterInfo$CustomerActionStatus" : "

Determines if there is an action required from the customer.

", + "Provisioned$CustomerActionStatus" : "

Determines if there is an action required from the customer.

" + } + }, "DeleteClusterResponse" : { "base" : "

Returns information about the deleted cluster.

", "refs" : { } @@ -333,6 +374,10 @@ "base" : "

Response body for DeleteConfiguration.

", "refs" : { } }, + "DeleteReplicatorResponse" : { + "base" : "

Returns information about the deleted replicator.

", + "refs" : { } + }, "DeleteVpcConnectionRequest" : { "base" : "

Request body for DeleteVpcConnection.

", "refs" : { } @@ -365,6 +410,10 @@ "base" : "

Response body for DescribeConfigurationRevision.

", "refs" : { } }, + "DescribeReplicatorResponse" : { + "base" : "

Response body for DescribeReplicator.

", + "refs" : { } + }, "DescribeVpcConnectionResponse" : { "base" : "

Response body for DescribeVpcConnection.

", "refs" : { } @@ -469,6 +518,31 @@ "PrometheusInfo$JmxExporter" : "

JMX Exporter settings.

" } }, + "KafkaCluster" : { + "base" : "

Information about Kafka Cluster to be used as source / target for replication.

", + "refs" : { + "__listOfKafkaCluster$member" : null + } + }, + "KafkaClusterClientVpcConfig" : { + "base" : null, + "refs" : { + "KafkaCluster$VpcConfig" : "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster.", + "KafkaClusterDescription$VpcConfig" : "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster." + } + }, + "KafkaClusterDescription" : { + "base" : "

Information about Kafka Cluster used as source / target for replication.

", + "refs" : { + "__listOfKafkaClusterDescription$member" : null + } + }, + "KafkaClusterSummary" : { + "base" : "

Summarized information about Kafka Cluster used as source / target for replication.

", + "refs" : { + "__listOfKafkaClusterSummary$member" : null + } + }, "KafkaVersion" : { "base" : "

Information about a Apache Kafka version.

", "refs" : { @@ -513,6 +587,10 @@ "base" : "

Information about nodes in the cluster.

", "refs" : { } }, + "ListReplicatorsResponse" : { + "base" : "

The response contains an array containing replicator information and a NextToken if the response is truncated.

", + "refs" : { } + }, "ListScramSecretsResponse" : { "base" : "

Information about scram secrets associated to the cluster.

", "refs" : { } @@ -649,6 +727,46 @@ "base" : "

Response body for RebootBrokers action.

", "refs" : { } }, + "ReplicationInfo" : { + "base" : "

Specifies configuration for replication between a source and target Kafka cluster.

", + "refs" : { + "__listOfReplicationInfo$member" : null + } + }, + "ReplicationInfoDescription" : { + "base" : "

Specifies configuration for replication between a source and target Kafka cluster (sourceKafkaClusterAlias -> targetKafkaClusterAlias)

", + "refs" : { + "__listOfReplicationInfoDescription$member" : null + } + }, + "ReplicationInfoSummary" : { + "base" : "

Summarized information of replication between clusters.

", + "refs" : { + "__listOfReplicationInfoSummary$member" : null + } + }, + "ReplicationStateInfo" : { + "base" : "Details about the state of a replicator", + "refs" : { + "DescribeReplicatorResponse$StateInfo" : "Details about the state of the replicator." + } + }, + "ReplicatorState" : { + "base" : "

The state of a replicator.

", + "refs" : { + "CreateReplicatorResponse$ReplicatorState" : "

State of the replicator.

", + "DeleteReplicatorResponse$ReplicatorState" : "

The state of the replicator.

", + "DescribeReplicatorResponse$ReplicatorState" : "

State of the replicator.

", + "ReplicatorSummary$ReplicatorState" : "

State of the replicator.

", + "UpdateReplicationInfoResponse$ReplicatorState" : "

State of the replicator.

" + } + }, + "ReplicatorSummary" : { + "base" : "

Information about a replicator.

", + "refs" : { + "__listOfReplicatorSummary$member" : null + } + }, "S3" : { "base" : "

The details of the Amazon S3 destination for broker logs.

", "refs" : { @@ -686,6 +804,26 @@ "base" : "

Tag a resource.

", "refs" : { } }, + "TargetCompressionType" : { + "base" : "

The type of compression to use producing records to the target cluster.

", + "refs" : { + "ReplicationInfo$TargetCompressionType" : "

The compression type to use when producing records to target cluster.

", + "ReplicationInfoDescription$TargetCompressionType" : "

The compression type to use when producing records to target cluster.

" + } + }, + "TopicReplication" : { + "base" : "

Details about topic replication.

", + "refs" : { + "ReplicationInfo$TopicReplication" : "

Configuration relating to topic replication.

", + "ReplicationInfoDescription$TopicReplication" : "

Configuration relating to topic replication.

" + } + }, + "TopicReplicationUpdate" : { + "base" : "

Details for updating the topic replication of a replicator.

", + "refs" : { + "UpdateReplicationInfoRequest$TopicReplication" : "

Updated topic replication information.

" + } + }, "Tls" : { "base" : "

Details for client authentication using TLS.

", "refs" : { @@ -770,6 +908,14 @@ "base" : "

Response body for UpdateMonitoring.

", "refs" : { } }, + "UpdateReplicationInfoRequest" : { + "base" : "

Parameters for updating replication information between source and target Kafka clusters of a replicator.

", + "refs" : { } + }, + "UpdateReplicationInfoResponse" : { + "base" : "

Updated Replication information of a replicator.

", + "refs" : { } + }, "UpdateSecurityRequest" : { "base" : "

Request body for UpdateSecurity.

", "refs" : { } @@ -850,6 +996,11 @@ "base" : null, "refs" : { "CloudWatchLogs$Enabled" : "

Specifies whether broker logs get sent to the specified CloudWatch Logs destination.

", + "ConsumerGroupReplication$DetectAndCopyNewConsumerGroups" : "

Enables synchronization of consumer groups to target cluster.

", + "ConsumerGroupReplication$SynchroniseConsumerGroupOffsets" : "

Enables synchronization of consumer group offsets to target cluster. The translated offsets will be written to topic __consumer_offsets.

", + "ConsumerGroupReplicationUpdate$DetectAndCopyNewConsumerGroups" : "

Enables synchronization of consumer groups to target cluster.

", + "ConsumerGroupReplicationUpdate$SynchroniseConsumerGroupOffsets" : "

Enables synchronization of consumer group offsets to target cluster. The translated offsets will be written to topic __consumer_offsets.

", + "DescribeReplicatorResponse$IsReplicatorReference" : "

Whether this resource is a replicator reference.

", "EncryptionInTransit$InCluster" : "

When set to true, it indicates that data communication among the broker nodes of the cluster is encrypted. When set to false, the communication happens in plaintext.

The default value is true.

", "Firehose$Enabled" : "

Specifies whether broker logs get sent to the specified Kinesis Data Firehose delivery stream.

", "IAM$Enabled" : "

IAM authentication is enabled or not.

", @@ -858,9 +1009,16 @@ "NodeExporter$EnabledInBroker" : "

Indicates whether you want to enable or disable the Node Exporter.

", "NodeExporterInfo$EnabledInBroker" : "

Node Exporter being enabled in broker.

", "ProvisionedThroughput$Enabled" : "

Provisioned throughput is enabled or not.

", + "ReplicatorSummary$IsReplicatorReference" : "

Whether this resource is a replicator reference.

", "S3$Enabled" : "

Specifies whether broker logs get sent to the specified Amazon S3 destination.

", "Scram$Enabled" : "

SASL/SCRAM authentication is enabled or not.

", "Tls$Enabled" : "

TLS authentication is enabled or not.

", + "TopicReplication$CopyAccessControlListsForTopics" : "

Whether to periodically configure remote topic ACLs to match their corresponding upstream topics.

", + "TopicReplication$CopyTopicConfigurations" : "

Whether to periodically configure remote topics to match their corresponding upstream topics.

", + "TopicReplication$DetectAndCopyNewTopics" : "

Whether to periodically check for new topics and partitions.

", + "TopicReplicationUpdate$CopyAccessControlListsForTopics" : "

Whether to periodically configure remote topic ACLs to match their corresponding upstream topics.

", + "TopicReplicationUpdate$CopyTopicConfigurations" : "

Whether to periodically configure remote topics to match their corresponding upstream topics.

", + "TopicReplicationUpdate$DetectAndCopyNewTopics" : "

Whether to periodically check for new topics and partitions.

", "Unauthenticated$Enabled" : "

Specifies whether you want to enable or disable unauthenticated traffic to your cluster.

", "VpcConnectivityIAM$Enabled" : "

SASL/IAM authentication for VPC connectivity is on or off.

", "VpcConnectivityScram$Enabled" : "

SASL/SCRAM authentication for VPC connectivity is on or off.

", @@ -917,6 +1075,48 @@ "ListClustersV2Response$ClusterInfoList" : "

Information on each of the MSK clusters in the response.

" } }, + "__listOfKafkaCluster" : { + "base" : null, + "refs" : { + "CreateReplicatorRequest$KafkaClusters" : "

Kafka Clusters to use in setting up sources / targets for replication.

" + } + }, + "__listOfKafkaClusterDescription" : { + "base" : null, + "refs" : { + "DescribeReplicatorResponse$KafkaClusters" : "

Kafka Clusters used in setting up sources / targets for replication.

" + } + }, + "__listOfKafkaClusterSummary" : { + "base" : null, + "refs" : { + "ReplicatorSummary$KafkaClustersSummary" : "

Kafka Clusters used in setting up sources / targets for replication.

" + } + }, + "__listOfReplicationInfo" : { + "base" : null, + "refs" : { + "CreateReplicatorRequest$ReplicationInfoList" : "

A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow.

" + } + }, + "__listOfReplicationInfoDescription" : { + "base" : null, + "refs" : { + "DescribeReplicatorResponse$ReplicationInfoList" : "

A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow.

" + } + }, + "__listOfReplicationInfoSummary" : { + "base" : null, + "refs" : { + "ReplicatorSummary$ReplicationInfoSummaryList" : "

A list of summarized information of replications between clusters.

" + } + }, + "__listOfReplicatorSummary" : { + "base" : null, + "refs" : { + "ListReplicatorsResponse$Replicators" : "

List containing information of each of the replicators in the account.

" + } + }, "__listOfVpcConfig" : { "base" : null, "refs" : { @@ -1006,7 +1206,27 @@ "ListScramSecretsResponse$SecretArnList" : "

The list of scram secrets associated with the cluster.

", "RebootBrokerRequest$BrokerIds" : "

The list of broker ids to be rebooted.

", "Tls$CertificateAuthorityArnList" : "

List of ACM Certificate Authority ARNs.

", - "ZookeeperNodeInfo$Endpoints" : "

Endpoints for accessing the ZooKeeper.

" + "ZookeeperNodeInfo$Endpoints" : "

Endpoints for accessing the ZooKeeper.

", + "KafkaClusterClientVpcConfig$SecurityGroupIds" : "

The security groups to attach to the ENIs for the broker nodes.

", + "KafkaClusterClientVpcConfig$SubnetIds" : "

The list of subnets in the client VPC to connect to.

" + } + }, + "__listOf__stringMax249" : { + "base" : null, + "refs" : { + "TopicReplication$TopicsToExclude" : "

List of regular expression patterns indicating the topics that should not be replicated.

", + "TopicReplication$TopicsToReplicate" : "

List of regular expression patterns indicating the topics to copy.

", + "TopicReplicationUpdate$TopicsToExclude" : "

List of regular expression patterns indicating the topics that should not be replicated.

", + "TopicReplicationUpdate$TopicsToReplicate" : "

List of regular expression patterns indicating the topics to copy.

" + } + }, + "__listOf__stringMax256" : { + "base" : null, + "refs" : { + "ConsumerGroupReplication$ConsumerGroupsToExclude" : "

List of regular expression patterns indicating the consumer groups that should not be replicated.

", + "ConsumerGroupReplication$ConsumerGroupsToReplicate" : "

List of regular expression patterns indicating the consumer groups to copy.

", + "ConsumerGroupReplicationUpdate$ConsumerGroupsToExclude" : "

List of regular expression patterns indicating the consumer groups that should not be replicated.

", + "ConsumerGroupReplicationUpdate$ConsumerGroupsToReplicate" : "

List of regular expression patterns indicating the consumer groups to copy.

" } }, "__long" : { @@ -1023,8 +1243,10 @@ "refs" : { "ClusterInfo$Tags" : "

Tags attached to the cluster.

", "CreateClusterRequest$Tags" : "

Create tags when creating the cluster.

", + "CreateReplicatorRequest$Tags" : "

List of tags to attach to created Replicator.

", "CreateVpcConnectionRequest$Tags" : "

Create tags when creating the VPC connection.

", "CreateVpcConnectionResponse$Tags" : "

Tags attached to the VPC connection.

", + "DescribeReplicatorResponse$Tags" : "

List of tags attached to the Replicator.

", "DescribeVpcConnectionResponse$Tags" : "

Tags attached to the VPC connection.

", "ListTagsForResourceResponse$Tags" : "

The key-value pair for the resource tag.

", "TagResourceRequest$Tags" : "

The key-value pair for the resource tag.

", @@ -1034,6 +1256,7 @@ "__string" : { "base" : null, "refs" : { + "AmazonMskCluster$MskClusterArn" : "

The Amazon Resource Name (ARN) of an Amazon MSK cluster.

", "BatchAssociateScramSecretResponse$ClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "BatchDisassociateScramSecretResponse$ClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "BrokerEBSVolumeInfo$KafkaBrokerNodeId" : "

The ID of the broker to update.

", @@ -1070,6 +1293,9 @@ "CreateConfigurationRequest$Name" : "

The name of the configuration. Configuration names are strings that match the regex \"^[0-9A-Za-z-]+$\".

", "CreateConfigurationResponse$Arn" : "

The Amazon Resource Name (ARN) of the configuration.

", "CreateConfigurationResponse$Name" : "

The name of the configuration. Configuration names are strings that match the regex \"^[0-9A-Za-z-]+$\".

", + "CreateReplicatorRequest$ServiceExecutionRoleArn" : "

The ARN of the IAM role used by the replicator to access resources in the customer's account (e.g source and target clusters)

", + "CreateReplicatorResponse$ReplicatorArn" : "

The Amazon Resource Name (ARN) of the replicator.

", + "CreateReplicatorResponse$ReplicatorName" : "

Name of the replicator provided by the customer.

", "CreateVpcConnectionRequest$TargetClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "CreateVpcConnectionRequest$VpcId" : "

The VPC ID of the VPC connection.

", "CreateVpcConnectionResponse$VpcConnectionArn" : "

The Amazon Resource Name (ARN) of the VPC connection.

", @@ -1077,12 +1303,19 @@ "DeleteClusterResponse$ClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "DeleteConfigurationRequest$Arn" : "

The Amazon Resource Name (ARN) of the configuration.

", "DeleteConfigurationResponse$Arn" : "

The Amazon Resource Name (ARN) of the configuration.

", + "DeleteReplicatorResponse$ReplicatorArn" : "

The Amazon Resource Name (ARN) of the replicator.

", "DeleteVpcConnectionResponse$VpcConnectionArn" : "

The Amazon Resource Name (ARN) of the VPC connection.

", "DescribeConfigurationResponse$Arn" : "

The Amazon Resource Name (ARN) of the configuration.

", "DescribeConfigurationResponse$Description" : "

The description of the configuration.

", "DescribeConfigurationResponse$Name" : "

The name of the configuration. Configuration names are strings that match the regex \"^[0-9A-Za-z-]+$\".

", "DescribeConfigurationRevisionResponse$Arn" : "

The Amazon Resource Name (ARN) of the configuration.

", "DescribeConfigurationRevisionResponse$Description" : "

The description of the configuration.

", + "DescribeReplicatorResponse$CurrentVersion" : "

The current version number of the replicator.

", + "DescribeReplicatorResponse$ReplicatorArn" : "

The Amazon Resource Name (ARN) of the replicator.

", + "DescribeReplicatorResponse$ReplicatorDescription" : "

The description of the replicator.

", + "DescribeReplicatorResponse$ReplicatorName" : "

The name of the replicator.

", + "DescribeReplicatorResponse$ReplicatorResourceArn" : "

The Amazon Resource Name (ARN) of the replicator resource in the region where the replicator was created.

", + "DescribeReplicatorResponse$ServiceExecutionRoleArn" : "

The Amazon Resource Name (ARN) of the IAM role used by the replicator to access resources in the customer's account (e.g source and target clusters)

", "DescribeVpcConnectionResponse$Authentication" : "

The authentication type of the VPC connection.

", "DescribeVpcConnectionResponse$TargetClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "DescribeVpcConnectionResponse$VpcConnectionArn" : "

The Amazon Resource Name (ARN) of the VPC connection.

", @@ -1106,6 +1339,8 @@ "GetClusterPolicyResponse$CurrentVersion" : "

Cluster policy version.

", "GetClusterPolicyResponse$Policy" : "

Cluster policy attached to the MSK cluster.

", "KafkaVersion$Version" : "

The Apache Kafka version.

", + "KafkaClusterDescription$KafkaClusterAlias" : "

The alias of the Kafka cluster. Used to prefix names of replicated topics.

", + "KafkaClusterSummary$KafkaClusterAlias" : "

The alias of the Kafka cluster. Used to prefix names of replicated topics.

", "ListClientVpcConnectionsResponse$NextToken" : "

If the response of ListClientVpcConnections is truncated, it returns a NextToken in the response. This Nexttoken should be sent in the subsequent request to ListClientVpcConnections.

", "ListClusterOperationsResponse$NextToken" : "

If the response of ListClusterOperations is truncated, it returns a NextToken in the response. This Nexttoken should be sent in the subsequent request to ListClusterOperations.

", "ListClustersResponse$NextToken" : "

The paginated results marker. When the result of a ListClusters operation is truncated, the call returns NextToken in the response. To get another batch of clusters, provide this token in your next request.

", @@ -1113,6 +1348,7 @@ "ListConfigurationsResponse$NextToken" : "

The paginated results marker. When the result of a ListConfigurations operation is truncated, the call returns NextToken in the response. To get another batch of configurations, provide this token in your next request.

", "ListKafkaVersionsResponse$NextToken" : "

Paginated results marker.

", "ListNodesResponse$NextToken" : "

The paginated results marker. When the result of a ListNodes operation is truncated, the call returns NextToken in the response. To get another batch of nodes, provide this token in your next request.

", + "ListReplicatorsResponse$NextToken" : "

If the response of ListReplicators is truncated, it returns a NextToken in the response. This NextToken should be sent in the subsequent request to ListReplicators.

", "ListScramSecretsResponse$NextToken" : "

Paginated results marker.

", "ListVpcConnectionsResponse$NextToken" : "

If the response of ListVpcConnections is truncated, it returns a NextToken in the response. This NextToken should be sent in the subsequent request to ListVpcConnections.

", "MutableClusterInfo$KafkaVersion" : "

The Apache Kafka version.

", @@ -1123,6 +1359,18 @@ "PutClusterPolicyResponse$CurrentVersion" : "

Cluster policy version.

", "RebootBrokerResponse$ClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "RebootBrokerResponse$ClusterOperationArn" : "

The Amazon Resource Name (ARN) of the cluster operation.

", + "ReplicationInfo$SourceKafkaClusterArn" : "

The ARN of the source Kafka cluster.

", + "ReplicationInfo$TargetKafkaClusterArn" : "

The ARN of the target Kafka cluster.

", + "ReplicationInfoDescription$SourceKafkaClusterAlias" : "

The alias of the source Kafka cluster.

", + "ReplicationInfoDescription$TargetKafkaClusterAlias" : "

The alias of the target Kafka cluster.

", + "ReplicationInfoSummary$SourceKafkaClusterAlias" : "

The alias of the source Kafka cluster.

", + "ReplicationInfoSummary$TargetKafkaClusterAlias" : "

The alias of the target Kafka cluster.

", + "ReplicationStateInfo$Code" : "

Code that describes the current state of the replicator.

", + "ReplicationStateInfo$Message" : "

Message that describes the state of the replicator.

", + "ReplicatorSummary$CurrentVersion" : "

The current version of the replicator.

", + "ReplicatorSummary$ReplicatorArn" : "

The Amazon Resource Name (ARN) of the replicator.

", + "ReplicatorSummary$ReplicatorName" : "

The name of the replicator.

", + "ReplicatorSummary$ReplicatorResourceArn" : "The Amazon Resource Name (ARN) of the replicator resource in the region where the replicator was created.

", "S3$Bucket" : "

The name of the S3 bucket that is the destination for broker logs.

", "S3$Prefix" : "

The S3 prefix that is the destination for broker logs.

", "StateInfo$Code" : "

If the cluster is in an unusable state, this field contains the code that describes the issue.

", @@ -1153,6 +1401,10 @@ "UpdateMonitoringRequest$CurrentVersion" : "

The version of cluster to update from. A successful operation will then generate a new version.

", "UpdateMonitoringResponse$ClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "UpdateMonitoringResponse$ClusterOperationArn" : "

The Amazon Resource Name (ARN) of the cluster operation.

", + "UpdateReplicationInfoRequest$CurrentVersion" : "

Current replicator version.

", + "UpdateReplicationInfoRequest$SourceKafkaClusterArn" : "

The ARN of the source Kafka cluster.

", + "UpdateReplicationInfoRequest$TargetKafkaClusterArn" : "

The ARN of the target Kafka cluster.

", + "UpdateReplicationInfoResponse$ReplicatorArn" : "

The Amazon Resource Name (ARN) of the replicator.

", "UpdateSecurityRequest$CurrentVersion" : "

You can use the DescribeCluster operation to get the current version of the cluster. After the security update is complete, the cluster will have a new version.

", "UpdateSecurityResponse$ClusterArn" : "

The Amazon Resource Name (ARN) of the cluster.

", "UpdateSecurityResponse$ClusterOperationArn" : "

The Amazon Resource Name (ARN) of the cluster operation.

", @@ -1170,6 +1422,24 @@ "__mapOf__string$member" : null } }, + "__stringMax1024" : { + "base" : null, + "refs" : { + "CreateReplicatorRequest$Description" : "

A summary description of the replicator.

" + } + }, + "__stringMax249" : { + "base" : null, + "refs" : { + "__listOf__stringMax249$member" : null + } + }, + "__stringMax256" : { + "base" : null, + "refs" : { + "__listOf__stringMax256$member" : null + } + }, "__stringMin1" : { "base" : null, "refs" : { @@ -1209,6 +1479,12 @@ "MutableClusterInfo$InstanceType": "

The Amazon MSK broker type that you want all of the brokers in this cluster to be.

" } }, + "__stringMin1Max128Pattern09AZaZ09AZaZ0" : { + "base" : null, + "refs" : { + "CreateReplicatorRequest$ReplicatorName" : "

The name of the replicator. Alpha-numeric characters with '-' are allowed.

" + } + }, "__timestampIso8601" : { "base" : null, "refs" : { @@ -1223,6 +1499,8 @@ "DescribeConfigurationResponse$CreationTime" : "

The time when the configuration was created.

", "DescribeConfigurationRevisionResponse$CreationTime" : "

The time when the configuration was created.

", "DescribeVpcConnectionResponse$CreationTime" : "

The creation time of the VPC connection.

", + "DescribeReplicatorResponse$CreationTime" : "

The time when the replicator was created.

", + "ReplicatorSummary$CreationTime" : "

The time the replicator was created.

", "VpcConnection$CreationTime" : "

The creation time of the VPC connection.

" } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://kafka-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://kafka-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://kafka.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://kafka-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://kafka.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://kafka-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://kafka.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://kafka.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://kafka.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://kafka.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kafka/2018-11-14/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kafka/2018-11-14/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -48,6 +48,12 @@ "limit_key": "MaxResults", "result_key": "Revisions" }, + "ListReplicators": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Replicators" + }, "ListScramSecrets": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kendra/2019-02-03/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kendra/2019-02-03/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kendra/2019-02-03/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kendra/2019-02-03/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2769,6 +2769,43 @@ "min": 1, "type": "string" }, + "CollapseConfiguration": { + "members": { + "DocumentAttributeKey": { + "shape": "DocumentAttributeKey" + }, + "Expand": { + "shape": "Boolean" + }, + "ExpandConfiguration": { + "shape": "ExpandConfiguration" + }, + "MissingAttributeKeyStrategy": { + "shape": "MissingAttributeKeyStrategy" + }, + "SortingConfigurations": { + "shape": "SortingConfigurationList" + } + }, + "required": [ + "DocumentAttributeKey" + ], + "type": "structure" + }, + "CollapsedResultDetail": { + "members": { + "DocumentAttribute": { + "shape": "DocumentAttribute" + }, + "ExpandedResults": { + "shape": "ExpandedResultList" + } + }, + "required": [ + "DocumentAttribute" + ], + "type": "structure" + }, "ColumnConfiguration": { "members": { "ChangeDetectingColumns": { @@ -5106,6 +5143,46 @@ "min": 0, "type": "list" }, + "ExpandConfiguration": { + "members": { + "MaxExpandedResultsPerItem": { + "shape": "Integer" + }, + "MaxResultItemsToExpand": { + "shape": "Integer" + } + }, + "type": "structure" + }, + "ExpandedResultItem": { + "members": { + "DocumentAttributes": { + "shape": "DocumentAttributeList" + }, + "DocumentExcerpt": { + "shape": "TextWithHighlights" + }, + "DocumentId": { + "shape": "DocumentId" + }, + "DocumentTitle": { + "shape": "TextWithHighlights" + }, + "DocumentURI": { + "shape": "Url" + }, + "Id": { + "shape": "ResultId" + } + }, + "type": "structure" + }, + "ExpandedResultList": { + "member": { + "shape": "ExpandedResultItem" + }, + "type": "list" + }, "ExperienceConfiguration": { "members": { "ContentSourceConfiguration": { @@ -6806,6 +6883,14 @@ "min": 1, "type": "integer" }, + "MissingAttributeKeyStrategy": { + "enum": [ + "IGNORE", + "COLLAPSE", + "EXPAND" + ], + "type": "string" + }, "Mode": { "enum": [ "ENABLED", @@ -7099,6 +7184,9 @@ "AttributeFilter": { "shape": "AttributeFilter" }, + "CollapseConfiguration": { + "shape": "CollapseConfiguration" + }, "DocumentRelevanceOverrideConfigurations": { "shape": "DocumentRelevanceOverrideConfigurationList" }, @@ -7126,6 +7214,9 @@ "SortingConfiguration": { "shape": "SortingConfiguration" }, + "SortingConfigurations": { + "shape": "SortingConfigurationList" + }, "SpellCorrectionConfiguration": { "shape": "SpellCorrectionConfiguration" }, @@ -7179,6 +7270,9 @@ "AdditionalAttributes": { "shape": "AdditionalResultAttributeList" }, + "CollapsedResultDetail": { + "shape": "CollapsedResultDetail" + }, "DocumentAttributes": { "shape": "DocumentAttributeList" }, @@ -8265,6 +8359,13 @@ ], "type": "structure" }, + "SortingConfigurationList": { + "member": { + "shape": "SortingConfiguration" + }, + "min": 1, + "type": "list" + }, "SourceDocument": { "members": { "AdditionalAttributes": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kendra/2019-02-03/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kendra/2019-02-03/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kendra/2019-02-03/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kendra/2019-02-03/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -53,8 +53,8 @@ "ListTagsForResource": "

Gets a list of tags associated with a specified resource. Indexes, FAQs, and data sources can have tags associated with them.

", "ListThesauri": "

Lists the thesauri for an index.

", "PutPrincipalMapping": "

Maps users to their groups so that you only need to provide the user ID when you issue the query.

You can also map sub groups to groups. For example, the group \"Company Intellectual Property Teams\" includes sub groups \"Research\" and \"Engineering\". These sub groups include their own list of users or people who work in these teams. Only users who work in research and engineering, and therefore belong in the intellectual property group, can see top-secret company documents in their search results.

This is useful for user context filtering, where search results are filtered based on the user or their group access to documents. For more information, see Filtering on user context.

If more than five PUT actions for a group are currently processing, a validation exception is thrown.

", - "Query": "

Searches an index given an input query.

You can configure boosting or relevance tuning at the query level to override boosting at the index level, filter based on document fields/attributes and faceted search, and filter based on the user or their group access to documents. You can also include certain fields in the response that might provide useful additional information.

A query response contains three types of results.

  • Relevant suggested answers. The answers can be either a text excerpt or table excerpt. The answer can be highlighted in the excerpt.

  • Matching FAQs or questions-answer from your FAQ file.

  • Relevant documents. This result type includes an excerpt of the document with the document title. The searched terms can be highlighted in the excerpt.

You can specify that the query return only one type of result using the QueryResultTypeFilter parameter. Each query returns the 100 most relevant results. If you filter result type to only question-answers, a maximum of four results are returned. If you filter result type to only answers, a maximum of three results are returned.

", - "Retrieve": "

Retrieves relevant passages or text excerpts given an input query.

This API is similar to the Query API. However, by default, the Query API only returns excerpt passages of up to 100 token words. With the Retrieve API, you can retrieve longer passages of up to 200 token words and up to 100 semantically relevant passages. This doesn't include question-answer or FAQ type responses from your index. The passages are text excerpts that can be semantically extracted from multiple documents and multiple parts of the same document. If in extreme cases your documents produce zero passages using the Retrieve API, you can alternatively use the Query API and its types of responses.

You can also do the following:

  • Override boosting at the index level

  • Filter based on document fields or attributes

  • Filter based on the user or their group access to documents

You can also include certain fields in the response that might provide useful additional information.

The Retrieve API shares the number of query capacity units that you set for your index. For more information on what's included in a single capacity unit and the default base capacity for an index, see Adjusting capacity.

", + "Query": "

Searches an index given an input query.

If you are working with large language models (LLMs) or implementing retrieval augmented generation (RAG) systems, you can use Amazon Kendra's Retrieve API, which can return longer semantically relevant passages. We recommend using the Retrieve API instead of filing a service limit increase to increase the Query API document excerpt length.

You can configure boosting or relevance tuning at the query level to override boosting at the index level, filter based on document fields/attributes and faceted search, and filter based on the user or their group access to documents. You can also include certain fields in the response that might provide useful additional information.

A query response contains three types of results.

  • Relevant suggested answers. The answers can be either a text excerpt or table excerpt. The answer can be highlighted in the excerpt.

  • Matching FAQs or questions-answer from your FAQ file.

  • Relevant documents. This result type includes an excerpt of the document with the document title. The searched terms can be highlighted in the excerpt.

You can specify that the query return only one type of result using the QueryResultTypeFilter parameter. Each query returns the 100 most relevant results. If you filter result type to only question-answers, a maximum of four results are returned. If you filter result type to only answers, a maximum of three results are returned.

", + "Retrieve": "

Retrieves relevant passages or text excerpts given an input query.

This API is similar to the Query API. However, by default, the Query API only returns excerpt passages of up to 100 token words. With the Retrieve API, you can retrieve longer passages of up to 200 token words and up to 100 semantically relevant passages. This doesn't include question-answer or FAQ type responses from your index. The passages are text excerpts that can be semantically extracted from multiple documents and multiple parts of the same document. If in extreme cases your documents produce zero passages using the Retrieve API, you can alternatively use the Query API and its types of responses.

You can also do the following:

  • Override boosting at the index level

  • Filter based on document fields or attributes

  • Filter based on the user or their group access to documents

  • View the confidence score bucket for a retrieved passage result. The confidence bucket provides a relative ranking that indicates how confident Amazon Kendra is that the response is relevant to the query.

    Confidence score buckets are currently available only for English.

You can also include certain fields in the response that might provide useful additional information.

The Retrieve API shares the number of query capacity units that you set for your index. For more information on what's included in a single capacity unit and the default base capacity for an index, see Adjusting capacity.

", "StartDataSourceSyncJob": "

Starts a synchronization job for a data source connector. If a synchronization job is already in progress, Amazon Kendra returns a ResourceInUseException exception.

Re-syncing your data source with your index after modifying, adding, or deleting documents from your data source respository could take up to an hour or more, depending on the number of documents to sync.

", "StopDataSourceSyncJob": "

Stops a synchronization job that is currently running. You can't stop a scheduled synchronization job.

", "SubmitFeedback": "

Enables you to provide feedback to Amazon Kendra to improve the performance of your index.

SubmitFeedback is currently not supported in the Amazon Web Services GovCloud (US-West) region.

", @@ -358,6 +358,7 @@ "BoxConfiguration$CrawlComments": "

TRUE to index comments.

", "BoxConfiguration$CrawlTasks": "

TRUE to index the contents of tasks.

", "BoxConfiguration$CrawlWebLinks": "

TRUE to index web links.

", + "CollapseConfiguration$Expand": "

Specifies whether to expand the collapsed results.

", "ConfluenceAttachmentConfiguration$CrawlAttachments": "

TRUE to index attachments of pages and blogs in Confluence.

", "ConfluenceSpaceConfiguration$CrawlPersonalSpaces": "

TRUE to index personal spaces. You can add restrictions to items in personal spaces. If personal spaces are indexed, queries without user context information may return restricted items from a personal space in their results. For more information, see Filtering on user context.

", "ConfluenceSpaceConfiguration$CrawlArchivedSpaces": "

TRUE to index archived spaces.

", @@ -454,6 +455,18 @@ "CreateThesaurusRequest$ClientToken": "

A token that you provide to identify the request to create a thesaurus. Multiple calls to the CreateThesaurus API with the same client token will create only one thesaurus.

" } }, + "CollapseConfiguration": { + "base": "

Specifies how to group results by document attribute value, and how to display them collapsed/expanded under a designated primary document for each group.

", + "refs": { + "QueryRequest$CollapseConfiguration": "

Provides configuration to determine how to group results by document attribute value, and how to display them (collapsed or expanded) under a designated primary document for each group.

" + } + }, + "CollapsedResultDetail": { + "base": "

Provides details about a collapsed group of search results.

", + "refs": { + "QueryResultItem$CollapsedResultDetail": "

Provides details about a collapsed group of search results.

" + } + }, "ColumnConfiguration": { "base": "

Provides information about how Amazon Kendra should use the columns of a database in an index.

", "refs": { @@ -1261,6 +1274,7 @@ "AttributeFilter$GreaterThanOrEquals": "

Performs a greater or equals than operation on document attributes/fields and their values. Use with the document attribute type Date or Long.

", "AttributeFilter$LessThan": "

Performs a less than operation on document attributes/fields and their values. Use with the document attribute type Date or Long.

", "AttributeFilter$LessThanOrEquals": "

Performs a less than or equals operation on document attributes/fields and their values. Use with the document attribute type Date or Long.

", + "CollapsedResultDetail$DocumentAttribute": "

The value of the document attribute that results are collapsed on.

", "DocumentAttributeList$member": null } }, @@ -1274,6 +1288,7 @@ "DocumentAttributeKey": { "base": null, "refs": { + "CollapseConfiguration$DocumentAttributeKey": "

The document attribute used to group search results. You can use any attribute that has the Sortable flag set to true. You can also sort by any of the following built-in attributes:\"_category\",\"_created_at\", \"_last_updated_at\", \"_version\", \"_view_count\".

", "DocumentAttribute$Key": "

The identifier for the attribute.

", "DocumentAttributeCondition$ConditionDocumentAttributeKey": "

The identifier of the document attribute used for the condition.

For example, 'Source_URI' could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

Amazon Kendra currently does not support _document_body as an attribute key used for the condition.

", "DocumentAttributeKeyList$member": null, @@ -1299,6 +1314,7 @@ "refs": { "Document$Attributes": "

Custom attributes to apply to the document. Use the custom attributes to provide additional information for searching, to provide facets for refining searches, and to provide additional information in the query response.

For example, 'DataSourceId' and 'DataSourceSyncJobId' are custom attributes that provide information on the synchronization of documents running on a data source. Note, 'DataSourceSyncJobId' could be an optional custom attribute as Amazon Kendra will use the ID of a running sync job.

", "DocumentInfo$Attributes": "

Attributes that identify a specific version of a document to check.

The only valid attributes are:

  • version

  • datasourceId

  • jobExecutionId

The attributes follow these rules:

  • dataSourceId and jobExecutionId must be used together.

  • version is ignored if dataSourceId and jobExecutionId are not provided.

  • If dataSourceId and jobExecutionId are provided, but version is not, the version defaults to \"0\".

", + "ExpandedResultItem$DocumentAttributes": "

An array of document attributes assigned to a document in the search results. For example, the document author (\"_author\") or the source URI (\"_source_uri\") of the document.

", "FeaturedResultsItem$DocumentAttributes": "

An array of document attributes assigned to a featured document in the search results. For example, the document author (_author) or the source URI (_source_uri) of the document.

", "QueryResultItem$DocumentAttributes": "

An array of document fields/attributes assigned to a document in the search results. For example, the document author (_author) or the source URI (_source_uri) of the document.

", "RetrieveResultItem$DocumentAttributes": "

An array of document fields/attributes assigned to a document in the search results. For example, the document author (_author) or the source URI (_source_uri) of the document.

", @@ -1360,6 +1376,7 @@ "Document$Id": "

A identifier of the document in the index.

Note, each document ID must be unique per index. You cannot create a data source to index your documents with their unique IDs and then use the BatchPutDocument API to index the same documents, or vice versa. You can delete a data source and then use the BatchPutDocument API to index the same documents, or vice versa.

", "DocumentIdList$member": null, "DocumentInfo$DocumentId": "

The identifier of the document.

", + "ExpandedResultItem$DocumentId": "

The idenitifier of the document.

", "FeaturedDocument$Id": "

The identifier of the document to feature in the search results. You can use the Query API to search for specific documents with their document IDs included in the result items, or you can use the console.

", "FeaturedDocumentMissing$Id": "

The identifier of the document that doesn't exist but you have specified as a featured document.

", "FeaturedDocumentWithMetadata$Id": "

The identifier of the featured document with its metadata. You can use the Query API to search for specific documents with their document IDs included in the result items, or you can use the console.

", @@ -1598,6 +1615,24 @@ "GoogleDriveConfiguration$ExcludeUserAccounts": "

A list of email addresses of the users. Documents owned by these users are excluded from the index. Documents shared with excluded users are indexed unless they are excluded in another way.

" } }, + "ExpandConfiguration": { + "base": "

Specifies the configuration information needed to customize how collapsed search result groups expand.

", + "refs": { + "CollapseConfiguration$ExpandConfiguration": "

Provides configuration information to customize expansion options for a collapsed group.

" + } + }, + "ExpandedResultItem": { + "base": "

A single expanded result in a collapsed group of search results.

An expanded result item contains information about an expanded result document within a collapsed group of search results. This includes the original location of the document, a list of attributes assigned to the document, and relevant text from the document that satisfies the query.

", + "refs": { + "ExpandedResultList$member": null + } + }, + "ExpandedResultList": { + "base": null, + "refs": { + "CollapsedResultDetail$ExpandedResults": "

A list of results in the collapsed group.

" + } + }, "ExperienceConfiguration": { "base": "

Provides the configuration information for your Amazon Kendra experience. This includes the data source IDs and/or FAQ IDs, and user or group information to grant access to your Amazon Kendra experience.

", "refs": { @@ -2250,6 +2285,8 @@ "DescribeQuerySuggestionsConfigResponse$QueryLogLookBackWindowInDays": "

How recent your queries are in your query log time window (in days).

", "DescribeQuerySuggestionsConfigResponse$TotalSuggestionsCount": "

The current total count of query suggestions for an index.

This count can change when you update your query suggestions settings, if you filter out certain queries from suggestions using a block list, and as the query log accumulates more queries for Amazon Kendra to learn from.

If the count is much lower than you expected, it could be because Amazon Kendra needs more queries in the query history to learn from or your current query suggestions settings are too strict.

", "DocumentAttributeValueCountPair$Count": "

The number of documents in the response that have the attribute/field value for the key.

", + "ExpandConfiguration$MaxResultItemsToExpand": "

The number of collapsed search result groups to expand. If you set this value to 10, for example, only the first 10 out of 100 result groups will have expand functionality.

", + "ExpandConfiguration$MaxExpandedResultsPerItem": "

The number of expanded results to show per collapsed primary document. For instance, if you set this value to 3, then at most 3 results per collapsed group will be displayed.

", "GetQuerySuggestionsRequest$MaxSuggestionsCount": "

The maximum number of query suggestions you want to show to your users.

", "GetSnapshotsRequest$MaxResults": "

The maximum number of returned data for the metric.

", "Highlight$BeginOffset": "

The zero-based location in the response string where the highlight starts.

", @@ -2668,6 +2705,12 @@ "UpdateQuerySuggestionsConfigRequest$MinimumQueryCount": "

The the minimum number of times a query must be searched in order to be eligible to suggest to your users.

Decreasing this number increases the number of suggestions. However, this affects the quality of suggestions as it sets a low bar for a query to be considered popular to suggest to users.

How you tune this setting depends on your specific needs.

" } }, + "MissingAttributeKeyStrategy": { + "base": null, + "refs": { + "CollapseConfiguration$MissingAttributeKeyStrategy": "

Specifies the behavior for documents without a value for the collapse attribute.

Amazon Kendra offers three customization options:

  • Choose to COLLAPSE all documents with null or missing values in one group. This is the default configuration.

  • Choose to IGNORE documents with null or missing values. Ignored documents will not appear in query results.

  • Choose to EXPAND each document with a null or missing value into a group of its own.

" + } + }, "Mode": { "base": null, "refs": { @@ -3073,6 +3116,7 @@ "base": null, "refs": { "ClickFeedback$ResultId": "

The identifier of the search result that was clicked.

", + "ExpandedResultItem$Id": "

The identifier for the expanded result.

", "FeaturedResultsItem$Id": "

The identifier of the featured result.

", "QueryResultItem$Id": "

The identifier for the query result.

", "RelevanceFeedback$ResultId": "

The identifier of the search result that the user provided relevance feedback for.

", @@ -3107,7 +3151,7 @@ "refs": { "BatchPutDocumentRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access your S3 bucket. For more information, see IAM access roles for Amazon Kendra.

", "CreateDataSourceRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources. For more information, see IAM access roles for Amazon Kendra..

You can't specify the RoleArn parameter when the Type parameter is set to CUSTOM. If you do, you receive a ValidationException exception.

The RoleArn parameter is required for all other data sources.

", - "CreateExperienceRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access Query API, GetQuerySuggestions API, and other required APIs. The role also must include permission to access IAM Identity Center (successor to Single Sign-On) that stores your user and group information. For more information, see IAM access roles for Amazon Kendra.

", + "CreateExperienceRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access Query API, GetQuerySuggestions API, and other required APIs. The role also must include permission to access IAM Identity Center that stores your user and group information. For more information, see IAM access roles for Amazon Kendra.

", "CreateFaqRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access the S3 bucket that contains the FAQs. For more information, see IAM access roles for Amazon Kendra.

", "CreateIndexRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access your Amazon CloudWatch logs and metrics. For more information, see IAM access roles for Amazon Kendra.

", "CreateQuerySuggestionsBlockListRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access your S3 bucket that contains the block list text file. For more information, see IAM access roles for Amazon Kendra.

", @@ -3502,7 +3546,15 @@ "SortingConfiguration": { "base": "

Specifies the document attribute to use to sort the response to a Amazon Kendra query. You can specify a single attribute for sorting. The attribute must have the Sortable flag set to true, otherwise Amazon Kendra returns an exception.

You can sort attributes of the following types.

  • Date value

  • Long value

  • String value

You can't sort attributes of the following type.

  • String list value

", "refs": { - "QueryRequest$SortingConfiguration": "

Provides information that determines how the results of the query are sorted. You can set the field that Amazon Kendra should sort the results on, and specify whether the results should be sorted in ascending or descending order. In the case of ties in sorting the results, the results are sorted by relevance.

If you don't provide sorting configuration, the results are sorted by the relevance that Amazon Kendra determines for the result.

" + "QueryRequest$SortingConfiguration": "

Provides information that determines how the results of the query are sorted. You can set the field that Amazon Kendra should sort the results on, and specify whether the results should be sorted in ascending or descending order. In the case of ties in sorting the results, the results are sorted by relevance.

If you don't provide sorting configuration, the results are sorted by the relevance that Amazon Kendra determines for the result.

", + "SortingConfigurationList$member": null + } + }, + "SortingConfigurationList": { + "base": null, + "refs": { + "CollapseConfiguration$SortingConfigurations": "

A prioritized list of document attributes/fields that determine the primary document among those in a collapsed group.

", + "QueryRequest$SortingConfigurations": "

Provides configuration information to determine how the results of a query are sorted.

You can set upto 3 fields that Amazon Kendra should sort the results on, and specify whether the results should be sorted in ascending or descending order. The sort field quota can be increased.

If you don't provide a sorting configuration, the results are sorted by the relevance that Amazon Kendra determines for the result. In the case of ties in sorting the results, the results are sorted by relevance.

" } }, "SourceDocument": { @@ -3821,6 +3873,8 @@ "base": "

Provides text and information about where to highlight the text.

", "refs": { "AdditionalResultAttributeValue$TextWithHighlightsValue": "

The text associated with the attribute and information about the highlight to apply to the text.

", + "ExpandedResultItem$DocumentTitle": null, + "ExpandedResultItem$DocumentExcerpt": null, "FeaturedResultsItem$DocumentTitle": null, "FeaturedResultsItem$DocumentExcerpt": null, "QueryResultItem$DocumentTitle": "

The title of the document. Contains the text of the title and information for highlighting the relevant terms in the title.

", @@ -4006,6 +4060,7 @@ "base": null, "refs": { "ConfluenceConfiguration$ServerUrl": "

The URL of your Confluence instance. Use the full URL of the server. For example, https://server.example.com:port/. You can also use an IP address, for example, https://192.168.1.113/.

", + "ExpandedResultItem$DocumentURI": "

The URI of the original location of the document.

", "FeaturedDocumentWithMetadata$URI": "

The source URI location of the featured document.

", "FeaturedResultsItem$DocumentURI": "

The source URI location of the featured document.

", "JwtTokenTypeConfiguration$URL": "

The signing key URL.

", @@ -4046,17 +4101,17 @@ } }, "UserGroupResolutionConfiguration": { - "base": "

Provides the configuration information to get users and groups from an IAM Identity Center (successor to Single Sign-On) identity source. This is useful for user context filtering, where search results are filtered based on the user or their group access to documents. You can also use the PutPrincipalMapping API to map users to their groups so that you only need to provide the user ID when you issue the query.

To set up an IAM Identity Center identity source in the console to use with Amazon Kendra, see Getting started with an IAM Identity Center identity source. You must also grant the required permissions to use IAM Identity Center with Amazon Kendra. For more information, see IAM roles for IAM Identity Center.

Amazon Kendra currently does not support using UserGroupResolutionConfiguration with an Amazon Web Services organization member account for your IAM Identity Center identify source. You must create your index in the management account for the organization in order to use UserGroupResolutionConfiguration.

", + "base": "

Provides the configuration information to get users and groups from an IAM Identity Center identity source. This is useful for user context filtering, where search results are filtered based on the user or their group access to documents. You can also use the PutPrincipalMapping API to map users to their groups so that you only need to provide the user ID when you issue the query.

To set up an IAM Identity Center identity source in the console to use with Amazon Kendra, see Getting started with an IAM Identity Center identity source. You must also grant the required permissions to use IAM Identity Center with Amazon Kendra. For more information, see IAM roles for IAM Identity Center.

Amazon Kendra currently does not support using UserGroupResolutionConfiguration with an Amazon Web Services organization member account for your IAM Identity Center identify source. You must create your index in the management account for the organization in order to use UserGroupResolutionConfiguration.

", "refs": { - "CreateIndexRequest$UserGroupResolutionConfiguration": "

Gets users and groups from IAM Identity Center (successor to Single Sign-On) identity source. To configure this, see UserGroupResolutionConfiguration.

", - "DescribeIndexResponse$UserGroupResolutionConfiguration": "

Whether you have enabled the configuration for fetching access levels of groups and users from an IAM Identity Center (successor to Single Sign-On) identity source.

", - "UpdateIndexRequest$UserGroupResolutionConfiguration": "

Enables fetching access levels of groups and users from an IAM Identity Center (successor to Single Sign-On) identity source. To configure this, see UserGroupResolutionConfiguration.

" + "CreateIndexRequest$UserGroupResolutionConfiguration": "

Gets users and groups from IAM Identity Center identity source. To configure this, see UserGroupResolutionConfiguration.

", + "DescribeIndexResponse$UserGroupResolutionConfiguration": "

Whether you have enabled the configuration for fetching access levels of groups and users from an IAM Identity Center identity source.

", + "UpdateIndexRequest$UserGroupResolutionConfiguration": "

Enables fetching access levels of groups and users from an IAM Identity Center identity source. To configure this, see UserGroupResolutionConfiguration.

" } }, "UserGroupResolutionMode": { "base": null, "refs": { - "UserGroupResolutionConfiguration$UserGroupResolutionMode": "

The identity store provider (mode) you want to use to get users and groups. IAM Identity Center (successor to Single Sign-On) is currently the only available mode. Your users and groups must exist in an IAM Identity Center identity source in order to use this mode.

" + "UserGroupResolutionConfiguration$UserGroupResolutionMode": "

The identity store provider (mode) you want to use to get users and groups. IAM Identity Center is currently the only available mode. Your users and groups must exist in an IAM Identity Center identity source in order to use this mode.

" } }, "UserId": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kendra/2019-02-03/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kendra/2019-02-03/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kendra/2019-02-03/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kendra/2019-02-03/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -63,6 +63,24 @@ "OperationType":{"value":"control"} } }, + "DeleteResourcePolicy":{ + "name":"DeleteResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteResourcePolicyInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"ResourceInUseException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } + }, "DeleteStream":{ "name":"DeleteStream", "http":{ @@ -225,6 +243,24 @@ "OperationType":{"value":"data"} } }, + "GetResourcePolicy":{ + "name":"GetResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetResourcePolicyInput"}, + "output":{"shape":"GetResourcePolicyOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"InvalidArgumentException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } + }, "GetShardIterator":{ "name":"GetShardIterator", "http":{ @@ -399,6 +435,24 @@ "OperationType":{"value":"data"} } }, + "PutResourcePolicy":{ + "name":"PutResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutResourcePolicyInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"InvalidArgumentException"}, + {"shape":"ResourceInUseException"} + ], + "staticContextParams":{ + "OperationType":{"value":"control"} + } + }, "RegisterStreamConsumer":{ "name":"RegisterStreamConsumer", "http":{ @@ -678,6 +732,16 @@ } } }, + "DeleteResourcePolicyInput":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{ + "shape":"ResourceARN", + "contextParam":{"name":"ResourceARN"} + } + } + }, "DeleteStreamInput":{ "type":"structure", "members":{ @@ -878,6 +942,23 @@ "ChildShards":{"shape":"ChildShardList"} } }, + "GetResourcePolicyInput":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{ + "shape":"ResourceARN", + "contextParam":{"name":"ResourceARN"} + } + } + }, + "GetResourcePolicyOutput":{ + "type":"structure", + "required":["Policy"], + "members":{ + "Policy":{"shape":"Policy"} + } + }, "GetShardIteratorInput":{ "type":"structure", "required":[ @@ -1163,6 +1244,7 @@ "max":256, "min":1 }, + "Policy":{"type":"string"}, "PositiveIntegerObject":{ "type":"integer", "min":1 @@ -1258,6 +1340,20 @@ "max":500, "min":1 }, + "PutResourcePolicyInput":{ + "type":"structure", + "required":[ + "ResourceARN", + "Policy" + ], + "members":{ + "ResourceARN":{ + "shape":"ResourceARN", + "contextParam":{"name":"ResourceARN"} + }, + "Policy":{"shape":"Policy"} + } + }, "Record":{ "type":"structure", "required":[ @@ -1310,6 +1406,12 @@ } } }, + "ResourceARN":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:aws.*:kinesis:.*:\\d{12}:.*stream/\\S+" + }, "ResourceInUseException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,34 +2,37 @@ "version": "2.0", "service": "Amazon Kinesis Data Streams Service API Reference

Amazon Kinesis Data Streams is a managed service that scales elastically for real-time processing of streaming big data.

", "operations": { - "AddTagsToStream": "

Adds or updates tags for the specified Kinesis data stream. You can assign up to 50 tags to a data stream.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If tags have already been assigned to the stream, AddTagsToStream overwrites any existing tags that correspond to the specified tag keys.

AddTagsToStream has a limit of five transactions per second per account.

", + "AddTagsToStream": "

Adds or updates tags for the specified Kinesis data stream. You can assign up to 50 tags to a data stream.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

If tags have already been assigned to the stream, AddTagsToStream overwrites any existing tags that correspond to the specified tag keys.

AddTagsToStream has a limit of five transactions per second per account.

", "CreateStream": "

Creates a Kinesis data stream. A stream captures and transports data records that are continuously emitted from different data sources or producers. Scale-out within a stream is explicitly supported by means of shards, which are uniquely identified groups of data records in a stream.

You can create your data stream using either on-demand or provisioned capacity mode. Data streams with an on-demand mode require no capacity planning and automatically scale to handle gigabytes of write and read throughput per minute. With the on-demand mode, Kinesis Data Streams automatically manages the shards in order to provide the necessary throughput. For the data streams with a provisioned mode, you must specify the number of shards for the data stream. Each shard can support reads up to five transactions per second, up to a maximum data read total of 2 MiB per second. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second. If the amount of data input increases or decreases, you can add or remove shards.

The stream name identifies the stream. The name is scoped to the Amazon Web Services account used by the application. It is also scoped by Amazon Web Services Region. That is, two streams in two different accounts can have the same name, and two streams in the same account, but in two different Regions, can have the same name.

CreateStream is an asynchronous operation. Upon receiving a CreateStream request, Kinesis Data Streams immediately returns and sets the stream status to CREATING. After the stream is created, Kinesis Data Streams sets the stream status to ACTIVE. You should perform read and write operations only on an ACTIVE stream.

You receive a LimitExceededException when making a CreateStream request when you try to do one of the following:

  • Have more than five streams in the CREATING state at any point in time.

  • Create more shards than are authorized for your account.

For the default shard limit for an Amazon Web Services account, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

You can use DescribeStreamSummary to check the stream status, which is returned in StreamStatus.

CreateStream has a limit of five transactions per second per account.

", - "DecreaseStreamRetentionPeriod": "

Decreases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The minimum value of a stream's retention period is 24 hours.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

This operation may result in lost data. For example, if the stream's retention period is 48 hours and is decreased to 24 hours, any data already in the stream that is older than 24 hours is inaccessible.

", - "DeleteStream": "

Deletes a Kinesis data stream and all its shards and data. You must shut down any applications that are operating on the stream before you delete the stream. If an application attempts to operate on a deleted stream, it receives the exception ResourceNotFoundException.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If the stream is in the ACTIVE state, you can delete it. After a DeleteStream request, the specified stream is in the DELETING state until Kinesis Data Streams completes the deletion.

Note: Kinesis Data Streams might continue to accept data read and write operations, such as PutRecord, PutRecords, and GetRecords, on a stream in the DELETING state until the stream deletion is complete.

When you delete a stream, any shards in that stream are also deleted, and any tags are dissociated from the stream.

You can use the DescribeStreamSummary operation to check the state of the stream, which is returned in StreamStatus.

DeleteStream has a limit of five transactions per second per account.

", + "DecreaseStreamRetentionPeriod": "

Decreases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The minimum value of a stream's retention period is 24 hours.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

This operation may result in lost data. For example, if the stream's retention period is 48 hours and is decreased to 24 hours, any data already in the stream that is older than 24 hours is inaccessible.

", + "DeleteResourcePolicy": "

Delete a policy for the specified data stream or consumer. Request patterns can be one of the following:

  • Data stream pattern: arn:aws.*:kinesis:.*:\\d{12}:.*stream/\\S+

  • Consumer pattern: ^(arn):aws.*:kinesis:.*:\\d{12}:.*stream\\/[a-zA-Z0-9_.-]+\\/consumer\\/[a-zA-Z0-9_.-]+:[0-9]+

", + "DeleteStream": "

Deletes a Kinesis data stream and all its shards and data. You must shut down any applications that are operating on the stream before you delete the stream. If an application attempts to operate on a deleted stream, it receives the exception ResourceNotFoundException.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

If the stream is in the ACTIVE state, you can delete it. After a DeleteStream request, the specified stream is in the DELETING state until Kinesis Data Streams completes the deletion.

Note: Kinesis Data Streams might continue to accept data read and write operations, such as PutRecord, PutRecords, and GetRecords, on a stream in the DELETING state until the stream deletion is complete.

When you delete a stream, any shards in that stream are also deleted, and any tags are dissociated from the stream.

You can use the DescribeStreamSummary operation to check the state of the stream, which is returned in StreamStatus.

DeleteStream has a limit of five transactions per second per account.

", "DeregisterStreamConsumer": "

To deregister a consumer, provide its ARN. Alternatively, you can provide the ARN of the data stream and the name you gave the consumer when you registered it. You may also provide all three parameters, as long as they don't conflict with each other. If you don't know the name or ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its name and ARN.

This operation has a limit of five transactions per second per stream.

", "DescribeLimits": "

Describes the shard limits and usage for the account.

If you update your account limits, the old limits might be returned for a few minutes.

This operation has a limit of one transaction per second per account.

", - "DescribeStream": "

Describes the specified Kinesis data stream.

This API has been revised. It's highly recommended that you use the DescribeStreamSummary API to get a summarized description of the specified Kinesis data stream and the ListShards API to list the shards in a specified data stream and obtain information about each shard.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

The information returned includes the stream name, Amazon Resource Name (ARN), creation time, enhanced metric configuration, and shard map. The shard map is an array of shard objects. For each shard object, there is the hash key and sequence number ranges that the shard spans, and the IDs of any earlier shards that played in a role in creating the shard. Every record ingested in the stream is identified by a sequence number, which is assigned when the record is put into the stream.

You can limit the number of shards returned by each call. For more information, see Retrieving Shards from a Stream in the Amazon Kinesis Data Streams Developer Guide.

There are no guarantees about the chronological order shards returned. To process shards in chronological order, use the ID of the parent shard to track the lineage to the oldest shard.

This operation has a limit of 10 transactions per second per account.

", - "DescribeStreamConsumer": "

To get the description of a registered consumer, provide the ARN of the consumer. Alternatively, you can provide the ARN of the data stream and the name you gave the consumer when you registered it. You may also provide all three parameters, as long as they don't conflict with each other. If you don't know the name or ARN of the consumer that you want to describe, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream.

This operation has a limit of 20 transactions per second per stream.

", - "DescribeStreamSummary": "

Provides a summarized description of the specified Kinesis data stream without the shard list.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

The information returned includes the stream name, Amazon Resource Name (ARN), status, record retention period, approximate creation time, monitoring, encryption details, and open shard count.

DescribeStreamSummary has a limit of 20 transactions per second per account.

", - "DisableEnhancedMonitoring": "

Disables enhanced monitoring.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", - "EnableEnhancedMonitoring": "

Enables enhanced Kinesis data stream monitoring for shard-level metrics.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", - "GetRecords": "

Gets data records from a Kinesis data stream's shard.

When invoking this API, it is recommended you use the StreamARN input parameter in addition to the ShardIterator parameter.

Specify a shard iterator using the ShardIterator parameter. The shard iterator specifies the position in the shard from which you want to start reading data records sequentially. If there are no records available in the portion of the shard that the iterator points to, GetRecords returns an empty list. It might take multiple calls to get to a portion of the shard that contains records.

You can scale by provisioning multiple shards per stream while considering service limits (for more information, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide). Your application should have one thread per shard, each reading continuously from its stream. To read from a stream continually, call GetRecords in a loop. Use GetShardIterator to get the shard iterator to specify in the first GetRecords call. GetRecords returns a new shard iterator in NextShardIterator. Specify the shard iterator returned in NextShardIterator in subsequent calls to GetRecords. If the shard has been closed, the shard iterator can't return more data and GetRecords returns null in NextShardIterator. You can terminate the loop when the shard is closed, or when the shard iterator reaches the record with the sequence number or other attribute that marks it as the last record to process.

Each data record can be up to 1 MiB in size, and each shard can read up to 2 MiB per second. You can ensure that your calls don't exceed the maximum supported size or throughput by using the Limit parameter to specify the maximum number of records that GetRecords can return. Consider your average record size when determining this limit. The maximum number of records that can be returned per call is 10,000.

The size of the data returned by GetRecords varies depending on the utilization of the shard. It is recommended that consumer applications retrieve records via the GetRecords command using the 5 TPS limit to remain caught up. Retrieving records less frequently can lead to consumer applications falling behind. The maximum size of data that GetRecords can return is 10 MiB. If a call returns this amount of data, subsequent calls made within the next 5 seconds throw ProvisionedThroughputExceededException. If there is insufficient provisioned throughput on the stream, subsequent calls made within the next 1 second throw ProvisionedThroughputExceededException. GetRecords doesn't return any data when it throws an exception. For this reason, we recommend that you wait 1 second between calls to GetRecords. However, it's possible that the application will get exceptions for longer than 1 second.

To detect whether the application is falling behind in processing, you can use the MillisBehindLatest response attribute. You can also monitor the stream using CloudWatch metrics and other mechanisms (see Monitoring in the Amazon Kinesis Data Streams Developer Guide).

Each Amazon Kinesis record includes a value, ApproximateArrivalTimestamp, that is set when a stream successfully receives and stores a record. This is commonly referred to as a server-side time stamp, whereas a client-side time stamp is set when a data producer creates or sends the record to a stream (a data producer is any data source putting data records into a stream, for example with PutRecords). The time stamp has millisecond precision. There are no guarantees about the time stamp accuracy, or that the time stamp is always increasing. For example, records in a shard or across a stream might have time stamps that are out of order.

This operation has a limit of five transactions per second per shard.

", - "GetShardIterator": "

Gets an Amazon Kinesis shard iterator. A shard iterator expires 5 minutes after it is returned to the requester.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

A shard iterator specifies the shard position from which to start reading data records sequentially. The position is specified using the sequence number of a data record in a shard. A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards.

You must specify the shard iterator type. For example, you can set the ShardIteratorType parameter to read exactly from the position denoted by a specific sequence number by using the AT_SEQUENCE_NUMBER shard iterator type. Alternatively, the parameter can read right after the sequence number by using the AFTER_SEQUENCE_NUMBER shard iterator type, using sequence numbers returned by earlier calls to PutRecord, PutRecords, GetRecords, or DescribeStream. In the request, you can specify the shard iterator type AT_TIMESTAMP to read records from an arbitrary point in time, TRIM_HORIZON to cause ShardIterator to point to the last untrimmed record in the shard in the system (the oldest data record in the shard), or LATEST so that you always read the most recent data in the shard.

When you read repeatedly from a stream, use a GetShardIterator request to get the first shard iterator for use in your first GetRecords request and for subsequent reads use the shard iterator returned by the GetRecords request in NextShardIterator. A new shard iterator is returned by every GetRecords request in NextShardIterator, which you use in the ShardIterator parameter of the next GetRecords request.

If a GetShardIterator request is made too often, you receive a ProvisionedThroughputExceededException. For more information about throughput limits, see GetRecords, and Streams Limits in the Amazon Kinesis Data Streams Developer Guide.

If the shard is closed, GetShardIterator returns a valid iterator for the last sequence number of the shard. A shard can be closed as a result of using SplitShard or MergeShards.

GetShardIterator has a limit of five transactions per second per account per open shard.

", - "IncreaseStreamRetentionPeriod": "

Increases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The maximum value of a stream's retention period is 8760 hours (365 days).

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If you choose a longer stream retention period, this operation increases the time period during which records that have not yet expired are accessible. However, it does not make previous, expired data (older than the stream's previous retention period) accessible after the operation has been called. For example, if a stream's retention period is set to 24 hours and is increased to 168 hours, any data that is older than 24 hours remains inaccessible to consumer applications.

", - "ListShards": "

Lists the shards in a stream and provides information about each shard. This operation has a limit of 1000 transactions per second per data stream.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

This action does not list expired shards. For information about expired shards, see Data Routing, Data Persistence, and Shard State after a Reshard.

This API is a new operation that is used by the Amazon Kinesis Client Library (KCL). If you have a fine-grained IAM policy that only allows specific operations, you must update your policy to allow calls to this API. For more information, see Controlling Access to Amazon Kinesis Data Streams Resources Using IAM.

", + "DescribeStream": "

Describes the specified Kinesis data stream.

This API has been revised. It's highly recommended that you use the DescribeStreamSummary API to get a summarized description of the specified Kinesis data stream and the ListShards API to list the shards in a specified data stream and obtain information about each shard.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

The information returned includes the stream name, Amazon Resource Name (ARN), creation time, enhanced metric configuration, and shard map. The shard map is an array of shard objects. For each shard object, there is the hash key and sequence number ranges that the shard spans, and the IDs of any earlier shards that played in a role in creating the shard. Every record ingested in the stream is identified by a sequence number, which is assigned when the record is put into the stream.

You can limit the number of shards returned by each call. For more information, see Retrieving Shards from a Stream in the Amazon Kinesis Data Streams Developer Guide.

There are no guarantees about the chronological order shards returned. To process shards in chronological order, use the ID of the parent shard to track the lineage to the oldest shard.

This operation has a limit of 10 transactions per second per account.

", + "DescribeStreamConsumer": "

To get the description of a registered consumer, provide the ARN of the consumer. Alternatively, you can provide the ARN of the data stream and the name you gave the consumer when you registered it. You may also provide all three parameters, as long as they don't conflict with each other. If you don't know the name or ARN of the consumer that you want to describe, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream.

This operation has a limit of 20 transactions per second per stream.

When making a cross-account call with DescribeStreamConsumer, make sure to provide the ARN of the consumer.

", + "DescribeStreamSummary": "

Provides a summarized description of the specified Kinesis data stream without the shard list.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

The information returned includes the stream name, Amazon Resource Name (ARN), status, record retention period, approximate creation time, monitoring, encryption details, and open shard count.

DescribeStreamSummary has a limit of 20 transactions per second per account.

", + "DisableEnhancedMonitoring": "

Disables enhanced monitoring.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

", + "EnableEnhancedMonitoring": "

Enables enhanced Kinesis data stream monitoring for shard-level metrics.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

", + "GetRecords": "

Gets data records from a Kinesis data stream's shard.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

Specify a shard iterator using the ShardIterator parameter. The shard iterator specifies the position in the shard from which you want to start reading data records sequentially. If there are no records available in the portion of the shard that the iterator points to, GetRecords returns an empty list. It might take multiple calls to get to a portion of the shard that contains records.

You can scale by provisioning multiple shards per stream while considering service limits (for more information, see Amazon Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide). Your application should have one thread per shard, each reading continuously from its stream. To read from a stream continually, call GetRecords in a loop. Use GetShardIterator to get the shard iterator to specify in the first GetRecords call. GetRecords returns a new shard iterator in NextShardIterator. Specify the shard iterator returned in NextShardIterator in subsequent calls to GetRecords. If the shard has been closed, the shard iterator can't return more data and GetRecords returns null in NextShardIterator. You can terminate the loop when the shard is closed, or when the shard iterator reaches the record with the sequence number or other attribute that marks it as the last record to process.

Each data record can be up to 1 MiB in size, and each shard can read up to 2 MiB per second. You can ensure that your calls don't exceed the maximum supported size or throughput by using the Limit parameter to specify the maximum number of records that GetRecords can return. Consider your average record size when determining this limit. The maximum number of records that can be returned per call is 10,000.

The size of the data returned by GetRecords varies depending on the utilization of the shard. It is recommended that consumer applications retrieve records via the GetRecords command using the 5 TPS limit to remain caught up. Retrieving records less frequently can lead to consumer applications falling behind. The maximum size of data that GetRecords can return is 10 MiB. If a call returns this amount of data, subsequent calls made within the next 5 seconds throw ProvisionedThroughputExceededException. If there is insufficient provisioned throughput on the stream, subsequent calls made within the next 1 second throw ProvisionedThroughputExceededException. GetRecords doesn't return any data when it throws an exception. For this reason, we recommend that you wait 1 second between calls to GetRecords. However, it's possible that the application will get exceptions for longer than 1 second.

To detect whether the application is falling behind in processing, you can use the MillisBehindLatest response attribute. You can also monitor the stream using CloudWatch metrics and other mechanisms (see Monitoring in the Amazon Kinesis Data Streams Developer Guide).

Each Amazon Kinesis record includes a value, ApproximateArrivalTimestamp, that is set when a stream successfully receives and stores a record. This is commonly referred to as a server-side time stamp, whereas a client-side time stamp is set when a data producer creates or sends the record to a stream (a data producer is any data source putting data records into a stream, for example with PutRecords). The time stamp has millisecond precision. There are no guarantees about the time stamp accuracy, or that the time stamp is always increasing. For example, records in a shard or across a stream might have time stamps that are out of order.

This operation has a limit of five transactions per second per shard.

", + "GetResourcePolicy": "

Returns a policy attached to the specified data stream or consumer. Request patterns can be one of the following:

  • Data stream pattern: arn:aws.*:kinesis:.*:\\d{12}:.*stream/\\S+

  • Consumer pattern: ^(arn):aws.*:kinesis:.*:\\d{12}:.*stream\\/[a-zA-Z0-9_.-]+\\/consumer\\/[a-zA-Z0-9_.-]+:[0-9]+

", + "GetShardIterator": "

Gets an Amazon Kinesis shard iterator. A shard iterator expires 5 minutes after it is returned to the requester.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

A shard iterator specifies the shard position from which to start reading data records sequentially. The position is specified using the sequence number of a data record in a shard. A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards.

You must specify the shard iterator type. For example, you can set the ShardIteratorType parameter to read exactly from the position denoted by a specific sequence number by using the AT_SEQUENCE_NUMBER shard iterator type. Alternatively, the parameter can read right after the sequence number by using the AFTER_SEQUENCE_NUMBER shard iterator type, using sequence numbers returned by earlier calls to PutRecord, PutRecords, GetRecords, or DescribeStream. In the request, you can specify the shard iterator type AT_TIMESTAMP to read records from an arbitrary point in time, TRIM_HORIZON to cause ShardIterator to point to the last untrimmed record in the shard in the system (the oldest data record in the shard), or LATEST so that you always read the most recent data in the shard.

When you read repeatedly from a stream, use a GetShardIterator request to get the first shard iterator for use in your first GetRecords request and for subsequent reads use the shard iterator returned by the GetRecords request in NextShardIterator. A new shard iterator is returned by every GetRecords request in NextShardIterator, which you use in the ShardIterator parameter of the next GetRecords request.

If a GetShardIterator request is made too often, you receive a ProvisionedThroughputExceededException. For more information about throughput limits, see GetRecords, and Streams Limits in the Amazon Kinesis Data Streams Developer Guide.

If the shard is closed, GetShardIterator returns a valid iterator for the last sequence number of the shard. A shard can be closed as a result of using SplitShard or MergeShards.

GetShardIterator has a limit of five transactions per second per account per open shard.

", + "IncreaseStreamRetentionPeriod": "

Increases the Kinesis data stream's retention period, which is the length of time data records are accessible after they are added to the stream. The maximum value of a stream's retention period is 8760 hours (365 days).

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

If you choose a longer stream retention period, this operation increases the time period during which records that have not yet expired are accessible. However, it does not make previous, expired data (older than the stream's previous retention period) accessible after the operation has been called. For example, if a stream's retention period is set to 24 hours and is increased to 168 hours, any data that is older than 24 hours remains inaccessible to consumer applications.

", + "ListShards": "

Lists the shards in a stream and provides information about each shard. This operation has a limit of 1000 transactions per second per data stream.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

This action does not list expired shards. For information about expired shards, see Data Routing, Data Persistence, and Shard State after a Reshard.

This API is a new operation that is used by the Amazon Kinesis Client Library (KCL). If you have a fine-grained IAM policy that only allows specific operations, you must update your policy to allow calls to this API. For more information, see Controlling Access to Amazon Kinesis Data Streams Resources Using IAM.

", "ListStreamConsumers": "

Lists the consumers registered to receive data from a stream using enhanced fan-out, and provides information about each consumer.

This operation has a limit of 5 transactions per second per stream.

", "ListStreams": "

Lists your Kinesis data streams.

The number of streams may be too large to return from a single call to ListStreams. You can limit the number of returned streams using the Limit parameter. If you do not specify a value for the Limit parameter, Kinesis Data Streams uses the default limit, which is currently 100.

You can detect if there are more streams available to list by using the HasMoreStreams flag from the returned output. If there are more streams available, you can request more streams by using the name of the last stream returned by the ListStreams request in the ExclusiveStartStreamName parameter in a subsequent request to ListStreams. The group of stream names returned by the subsequent request is then added to the list. You can continue this process until all the stream names have been collected in the list.

ListStreams has a limit of five transactions per second per account.

", - "ListTagsForStream": "

Lists the tags for the specified Kinesis data stream. This operation has a limit of five transactions per second per account.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", - "MergeShards": "

Merges two adjacent shards in a Kinesis data stream and combines them into a single shard to reduce the stream's capacity to ingest and transport data. This API is only supported for the data streams with the provisioned capacity mode. Two shards are considered adjacent if the union of the hash key ranges for the two shards form a contiguous set with no gaps. For example, if you have two shards, one with a hash key range of 276...381 and the other with a hash key range of 382...454, then you could merge these two shards into a single shard that would have a hash key range of 276...454. After the merge, the single child shard receives data for all hash key values covered by the two parent shards.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

MergeShards is called when there is a need to reduce the overall capacity of a stream because of excess capacity that is not being used. You must specify the shard to be merged and the adjacent shard for a stream. For more information about merging shards, see Merge Two Shards in the Amazon Kinesis Data Streams Developer Guide.

If the stream is in the ACTIVE state, you can call MergeShards. If a stream is in the CREATING, UPDATING, or DELETING state, MergeShards returns a ResourceInUseException. If the specified stream does not exist, MergeShards returns a ResourceNotFoundException.

You can use DescribeStreamSummary to check the state of the stream, which is returned in StreamStatus.

MergeShards is an asynchronous operation. Upon receiving a MergeShards request, Amazon Kinesis Data Streams immediately returns a response and sets the StreamStatus to UPDATING. After the operation is completed, Kinesis Data Streams sets the StreamStatus to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You use DescribeStreamSummary and the ListShards APIs to determine the shard IDs that are specified in the MergeShards request.

If you try to operate on too many streams in parallel using CreateStream, DeleteStream, MergeShards, or SplitShard, you receive a LimitExceededException.

MergeShards has a limit of five transactions per second per account.

", - "PutRecord": "

Writes a single data record into an Amazon Kinesis data stream. Call PutRecord to send data into the stream for real-time ingestion and subsequent processing, one record at a time. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

You must specify the name of the stream that captures, stores, and transports the data; a partition key; and the data blob itself.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams to distribute data across shards. Kinesis Data Streams segregates the data records that belong to a stream into multiple shards, using the partition key associated with each data record to determine the shard to which a given data record belongs.

Partition keys are Unicode strings, with a maximum length limit of 256 characters for each key. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards using the hash key ranges of the shards. You can override hashing the partition key to determine the shard by explicitly specifying a hash value using the ExplicitHashKey parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

PutRecord returns the shard ID of where the data record was placed and the sequence number that was assigned to the data record.

Sequence numbers increase over time and are specific to a shard within a stream, not across all shards within a stream. To guarantee strictly increasing ordering, write serially to a shard and use the SequenceNumberForOrdering parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

If a PutRecord request cannot be processed because of insufficient provisioned throughput on the shard involved in the request, PutRecord throws ProvisionedThroughputExceededException.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", - "PutRecords": "

Writes multiple data records into a Kinesis data stream in a single call (also referred to as a PutRecords request). Use this operation to send data into the stream for data ingestion and processing.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

Each PutRecords request can support up to 500 records. Each record in the request can be as large as 1 MiB, up to a limit of 5 MiB for the entire request, including partition keys. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

You must specify the name of the stream that captures, stores, and transports the data; and an array of request Records, with each record in the array requiring a partition key and data blob. The record size limit applies to the total size of the partition key and data blob.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams as input to a hash function that maps the partition key and associated data to a specific shard. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

Each record in the Records array may include an optional parameter, ExplicitHashKey, which overrides the partition key to shard mapping. This parameter allows a data producer to determine explicitly the shard where the record is stored. For more information, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

The PutRecords response includes an array of response Records. Each record in the response array directly correlates with a record in the request array using natural ordering, from the top to the bottom of the request and response. The response Records array always includes the same number of records as the request array.

The response Records array includes both successfully and unsuccessfully processed records. Kinesis Data Streams attempts to process all records in each PutRecords request. A single record failure does not stop the processing of subsequent records. As a result, PutRecords doesn't guarantee the ordering of records. If you need to read records in the same order they are written to the stream, use PutRecord instead of PutRecords, and write to the same shard.

A successfully processed record includes ShardId and SequenceNumber values. The ShardId parameter identifies the shard in the stream where the record is stored. The SequenceNumber parameter is an identifier assigned to the put record, unique to all records in the stream.

An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and can be one of the following values: ProvisionedThroughputExceededException or InternalFailure. ErrorMessage provides more detailed information about the ProvisionedThroughputExceededException exception including the account ID, stream name, and shard ID of the record that was throttled. For more information about partially successful responses, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", + "ListTagsForStream": "

Lists the tags for the specified Kinesis data stream. This operation has a limit of five transactions per second per account.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

", + "MergeShards": "

Merges two adjacent shards in a Kinesis data stream and combines them into a single shard to reduce the stream's capacity to ingest and transport data. This API is only supported for the data streams with the provisioned capacity mode. Two shards are considered adjacent if the union of the hash key ranges for the two shards form a contiguous set with no gaps. For example, if you have two shards, one with a hash key range of 276...381 and the other with a hash key range of 382...454, then you could merge these two shards into a single shard that would have a hash key range of 276...454. After the merge, the single child shard receives data for all hash key values covered by the two parent shards.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

MergeShards is called when there is a need to reduce the overall capacity of a stream because of excess capacity that is not being used. You must specify the shard to be merged and the adjacent shard for a stream. For more information about merging shards, see Merge Two Shards in the Amazon Kinesis Data Streams Developer Guide.

If the stream is in the ACTIVE state, you can call MergeShards. If a stream is in the CREATING, UPDATING, or DELETING state, MergeShards returns a ResourceInUseException. If the specified stream does not exist, MergeShards returns a ResourceNotFoundException.

You can use DescribeStreamSummary to check the state of the stream, which is returned in StreamStatus.

MergeShards is an asynchronous operation. Upon receiving a MergeShards request, Amazon Kinesis Data Streams immediately returns a response and sets the StreamStatus to UPDATING. After the operation is completed, Kinesis Data Streams sets the StreamStatus to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You use DescribeStreamSummary and the ListShards APIs to determine the shard IDs that are specified in the MergeShards request.

If you try to operate on too many streams in parallel using CreateStream, DeleteStream, MergeShards, or SplitShard, you receive a LimitExceededException.

MergeShards has a limit of five transactions per second per account.

", + "PutRecord": "

Writes a single data record into an Amazon Kinesis data stream. Call PutRecord to send data into the stream for real-time ingestion and subsequent processing, one record at a time. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

You must specify the name of the stream that captures, stores, and transports the data; a partition key; and the data blob itself.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams to distribute data across shards. Kinesis Data Streams segregates the data records that belong to a stream into multiple shards, using the partition key associated with each data record to determine the shard to which a given data record belongs.

Partition keys are Unicode strings, with a maximum length limit of 256 characters for each key. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards using the hash key ranges of the shards. You can override hashing the partition key to determine the shard by explicitly specifying a hash value using the ExplicitHashKey parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

PutRecord returns the shard ID of where the data record was placed and the sequence number that was assigned to the data record.

Sequence numbers increase over time and are specific to a shard within a stream, not across all shards within a stream. To guarantee strictly increasing ordering, write serially to a shard and use the SequenceNumberForOrdering parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

If a PutRecord request cannot be processed because of insufficient provisioned throughput on the shard involved in the request, PutRecord throws ProvisionedThroughputExceededException.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", + "PutRecords": "

Writes multiple data records into a Kinesis data stream in a single call (also referred to as a PutRecords request). Use this operation to send data into the stream for data ingestion and processing.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

Each PutRecords request can support up to 500 records. Each record in the request can be as large as 1 MiB, up to a limit of 5 MiB for the entire request, including partition keys. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MiB per second.

You must specify the name of the stream that captures, stores, and transports the data; and an array of request Records, with each record in the array requiring a partition key and data blob. The record size limit applies to the total size of the partition key and data blob.

The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

The partition key is used by Kinesis Data Streams as input to a hash function that maps the partition key and associated data to a specific shard. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream. For more information, see Adding Data to a Stream in the Amazon Kinesis Data Streams Developer Guide.

Each record in the Records array may include an optional parameter, ExplicitHashKey, which overrides the partition key to shard mapping. This parameter allows a data producer to determine explicitly the shard where the record is stored. For more information, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

The PutRecords response includes an array of response Records. Each record in the response array directly correlates with a record in the request array using natural ordering, from the top to the bottom of the request and response. The response Records array always includes the same number of records as the request array.

The response Records array includes both successfully and unsuccessfully processed records. Kinesis Data Streams attempts to process all records in each PutRecords request. A single record failure does not stop the processing of subsequent records. As a result, PutRecords doesn't guarantee the ordering of records. If you need to read records in the same order they are written to the stream, use PutRecord instead of PutRecords, and write to the same shard.

A successfully processed record includes ShardId and SequenceNumber values. The ShardId parameter identifies the shard in the stream where the record is stored. The SequenceNumber parameter is an identifier assigned to the put record, unique to all records in the stream.

An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and can be one of the following values: ProvisionedThroughputExceededException or InternalFailure. ErrorMessage provides more detailed information about the ProvisionedThroughputExceededException exception including the account ID, stream name, and shard ID of the record that was throttled. For more information about partially successful responses, see Adding Multiple Records with PutRecords in the Amazon Kinesis Data Streams Developer Guide.

After you write a record to a stream, you cannot modify that record or its order within the stream.

By default, data records are accessible for 24 hours from the time that they are added to a stream. You can use IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to modify this retention period.

", + "PutResourcePolicy": "

Attaches a resource-based policy to a data stream or registered consumer. If you are using an identity other than the root user of the Amazon Web Services account that owns the resource, the calling identity must have the PutResourcePolicy permissions on the specified Kinesis Data Streams resource and belong to the owner's account in order to use this operation. If you don't have PutResourcePolicy permissions, Amazon Kinesis Data Streams returns a 403 Access Denied error. If you receive a ResourceNotFoundException, check to see if you passed a valid stream or consumer resource.

Request patterns can be one of the following:

  • Data stream pattern: arn:aws.*:kinesis:.*:\\d{12}:.*stream/\\S+

  • Consumer pattern: ^(arn):aws.*:kinesis:.*:\\d{12}:.*stream\\/[a-zA-Z0-9_.-]+\\/consumer\\/[a-zA-Z0-9_.-]+:[0-9]+

For more information, see Controlling Access to Amazon Kinesis Data Streams Resources Using IAM.

", "RegisterStreamConsumer": "

Registers a consumer with a Kinesis data stream. When you use this operation, the consumer you register can then call SubscribeToShard to receive data from the stream using enhanced fan-out, at a rate of up to 2 MiB per second for every shard you subscribe to. This rate is unaffected by the total number of consumers that read from the same stream.

You can register up to 20 consumers per stream. A given consumer can only be registered with one stream at a time.

For an example of how to use this operations, see Enhanced Fan-Out Using the Kinesis Data Streams API.

The use of this operation has a limit of five transactions per second per account. Also, only 5 consumers can be created simultaneously. In other words, you cannot have more than 5 consumers in a CREATING status at the same time. Registering a 6th consumer while there are 5 in a CREATING status results in a LimitExceededException.

", - "RemoveTagsFromStream": "

Removes tags from the specified Kinesis data stream. Removed tags are deleted and cannot be recovered after this operation successfully completes.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

If you specify a tag that does not exist, it is ignored.

RemoveTagsFromStream has a limit of five transactions per second per account.

", - "SplitShard": "

Splits a shard into two new shards in the Kinesis data stream, to increase the stream's capacity to ingest and transport data. SplitShard is called when there is a need to increase the overall capacity of a stream because of an expected increase in the volume of data records being ingested. This API is only supported for the data streams with the provisioned capacity mode.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

You can also use SplitShard when a shard appears to be approaching its maximum utilization; for example, the producers sending data into the specific shard are suddenly sending more than previously anticipated. You can also call SplitShard to increase stream capacity, so that more Kinesis Data Streams applications can simultaneously read data from the stream for real-time processing.

You must specify the shard to be split and the new hash key, which is the position in the shard where the shard gets split in two. In many cases, the new hash key might be the average of the beginning and ending hash key, but it can be any hash key value in the range being mapped into the shard. For more information, see Split a Shard in the Amazon Kinesis Data Streams Developer Guide.

You can use DescribeStreamSummary and the ListShards APIs to determine the shard ID and hash key values for the ShardToSplit and NewStartingHashKey parameters that are specified in the SplitShard request.

SplitShard is an asynchronous operation. Upon receiving a SplitShard request, Kinesis Data Streams immediately returns a response and sets the stream status to UPDATING. After the operation is completed, Kinesis Data Streams sets the stream status to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You can use DescribeStreamSummary to check the status of the stream, which is returned in StreamStatus. If the stream is in the ACTIVE state, you can call SplitShard.

If the specified stream does not exist, DescribeStreamSummary returns a ResourceNotFoundException. If you try to create more shards than are authorized for your account, you receive a LimitExceededException.

For the default shard limit for an Amazon Web Services account, see Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

If you try to operate on too many streams simultaneously using CreateStream, DeleteStream, MergeShards, and/or SplitShard, you receive a LimitExceededException.

SplitShard has a limit of five transactions per second per account.

", - "StartStreamEncryption": "

Enables or updates server-side encryption using an Amazon Web Services KMS key for a specified stream.

Starting encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Updating or applying encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, encryption begins for records written to the stream.

API Limits: You can successfully apply a new Amazon Web Services KMS key for server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are encrypted. After you enable encryption, you can verify that encryption is applied by inspecting the API response from PutRecord or PutRecords.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

", - "StopStreamEncryption": "

Disables server-side encryption for a specified stream.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

Stopping encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Stopping encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, records written to the stream are no longer encrypted by Kinesis Data Streams.

API Limits: You can successfully disable server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are no longer subject to encryption. After you disabled encryption, you can verify that encryption is not applied by inspecting the API response from PutRecord or PutRecords.

", + "RemoveTagsFromStream": "

Removes tags from the specified Kinesis data stream. Removed tags are deleted and cannot be recovered after this operation successfully completes.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

If you specify a tag that does not exist, it is ignored.

RemoveTagsFromStream has a limit of five transactions per second per account.

", + "SplitShard": "

Splits a shard into two new shards in the Kinesis data stream, to increase the stream's capacity to ingest and transport data. SplitShard is called when there is a need to increase the overall capacity of a stream because of an expected increase in the volume of data records being ingested. This API is only supported for the data streams with the provisioned capacity mode.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

You can also use SplitShard when a shard appears to be approaching its maximum utilization; for example, the producers sending data into the specific shard are suddenly sending more than previously anticipated. You can also call SplitShard to increase stream capacity, so that more Kinesis Data Streams applications can simultaneously read data from the stream for real-time processing.

You must specify the shard to be split and the new hash key, which is the position in the shard where the shard gets split in two. In many cases, the new hash key might be the average of the beginning and ending hash key, but it can be any hash key value in the range being mapped into the shard. For more information, see Split a Shard in the Amazon Kinesis Data Streams Developer Guide.

You can use DescribeStreamSummary and the ListShards APIs to determine the shard ID and hash key values for the ShardToSplit and NewStartingHashKey parameters that are specified in the SplitShard request.

SplitShard is an asynchronous operation. Upon receiving a SplitShard request, Kinesis Data Streams immediately returns a response and sets the stream status to UPDATING. After the operation is completed, Kinesis Data Streams sets the stream status to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

You can use DescribeStreamSummary to check the status of the stream, which is returned in StreamStatus. If the stream is in the ACTIVE state, you can call SplitShard.

If the specified stream does not exist, DescribeStreamSummary returns a ResourceNotFoundException. If you try to create more shards than are authorized for your account, you receive a LimitExceededException.

For the default shard limit for an Amazon Web Services account, see Kinesis Data Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To increase this limit, contact Amazon Web Services Support.

If you try to operate on too many streams simultaneously using CreateStream, DeleteStream, MergeShards, and/or SplitShard, you receive a LimitExceededException.

SplitShard has a limit of five transactions per second per account.

", + "StartStreamEncryption": "

Enables or updates server-side encryption using an Amazon Web Services KMS key for a specified stream.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

Starting encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Updating or applying encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, encryption begins for records written to the stream.

API Limits: You can successfully apply a new Amazon Web Services KMS key for server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are encrypted. After you enable encryption, you can verify that encryption is applied by inspecting the API response from PutRecord or PutRecords.

", + "StopStreamEncryption": "

Disables server-side encryption for a specified stream.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

Stopping encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Stopping encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is UPDATING. Once the status of the stream is ACTIVE, records written to the stream are no longer encrypted by Kinesis Data Streams.

API Limits: You can successfully disable server-side encryption 25 times in a rolling 24-hour period.

Note: It can take up to 5 seconds after the stream is in an ACTIVE status before all records written to the stream are no longer subject to encryption. After you disabled encryption, you can verify that encryption is not applied by inspecting the API response from PutRecord or PutRecords.

", "SubscribeToShard": "

This operation establishes an HTTP/2 connection between the consumer you specify in the ConsumerARN parameter and the shard you specify in the ShardId parameter. After the connection is successfully established, Kinesis Data Streams pushes records from the shard to the consumer over this connection. Before you call this operation, call RegisterStreamConsumer to register the consumer with Kinesis Data Streams.

When the SubscribeToShard call succeeds, your consumer starts receiving events of type SubscribeToShardEvent over the HTTP/2 connection for up to 5 minutes, after which time you need to call SubscribeToShard again to renew the subscription if you want to continue to receive records.

You can make one call to SubscribeToShard per second per registered consumer per shard. For example, if you have a 4000 shard stream and two registered stream consumers, you can make one SubscribeToShard request per second for each combination of shard and registered consumer, allowing you to subscribe both consumers to all 4000 shards in one second.

If you call SubscribeToShard again with the same ConsumerARN and ShardId within 5 seconds of a successful call, you'll get a ResourceInUseException. If you call SubscribeToShard 5 seconds or more after a successful call, the second call takes over the subscription and the previous connection expires or fails with a ResourceInUseException.

For an example of how to use this operations, see Enhanced Fan-Out Using the Kinesis Data Streams API.

", - "UpdateShardCount": "

Updates the shard count of the specified stream to the specified number of shards. This API is only supported for the data streams with the provisioned capacity mode.

When invoking this API, it is recommended you use the StreamARN input parameter rather than the StreamName input parameter.

Updating the shard count is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Depending on the size of the stream, the scaling action could take a few minutes to complete. You can continue to read and write data to your stream while its status is UPDATING.

To update the shard count, Kinesis Data Streams performs splits or merges on individual shards. This can cause short-lived shards to be created, in addition to the final shards. These short-lived shards count towards your total shard limit for your account in the Region.

When using this operation, we recommend that you specify a target shard count that is a multiple of 25% (25%, 50%, 75%, 100%). You can specify any target value within your shard limit. However, if you specify a target that isn't a multiple of 25%, the scaling action might take longer to complete.

This operation has the following default limits. By default, you cannot do the following:

  • Scale more than ten times per rolling 24-hour period per stream

  • Scale up to more than double your current shard count for a stream

  • Scale down below half your current shard count for a stream

  • Scale up to more than 10000 shards in a stream

  • Scale a stream with more than 10000 shards down unless the result is less than 10000 shards

  • Scale up to more than the shard limit for your account

For the default limits for an Amazon Web Services account, see Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To request an increase in the call rate limit, the shard limit for this API, or your overall shard limit, use the limits form.

", + "UpdateShardCount": "

Updates the shard count of the specified stream to the specified number of shards. This API is only supported for the data streams with the provisioned capacity mode.

When invoking this API, you must use either the StreamARN or the StreamName parameter, or both. It is recommended that you use the StreamARN input parameter when you invoke this API.

Updating the shard count is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to UPDATING. After the update is complete, Kinesis Data Streams sets the status of the stream back to ACTIVE. Depending on the size of the stream, the scaling action could take a few minutes to complete. You can continue to read and write data to your stream while its status is UPDATING.

To update the shard count, Kinesis Data Streams performs splits or merges on individual shards. This can cause short-lived shards to be created, in addition to the final shards. These short-lived shards count towards your total shard limit for your account in the Region.

When using this operation, we recommend that you specify a target shard count that is a multiple of 25% (25%, 50%, 75%, 100%). You can specify any target value within your shard limit. However, if you specify a target that isn't a multiple of 25%, the scaling action might take longer to complete.

This operation has the following default limits. By default, you cannot do the following:

  • Scale more than ten times per rolling 24-hour period per stream

  • Scale up to more than double your current shard count for a stream

  • Scale down below half your current shard count for a stream

  • Scale up to more than 10000 shards in a stream

  • Scale a stream with more than 10000 shards down unless the result is less than 10000 shards

  • Scale up to more than the shard limit for your account

  • Make over 10 TPS. TPS over 10 will trigger the LimitExceededException

For the default limits for an Amazon Web Services account, see Streams Limits in the Amazon Kinesis Data Streams Developer Guide. To request an increase in the call rate limit, the shard limit for this API, or your overall shard limit, use the limits form.

", "UpdateStreamMode": "

Updates the capacity mode of the data stream. Currently, in Kinesis Data Streams, you can choose between an on-demand capacity mode and a provisioned capacity mode for your data stream.

" }, "shapes": { @@ -135,6 +138,11 @@ "refs": { } }, + "DeleteResourcePolicyInput": { + "base": null, + "refs": { + } + }, "DeleteStreamInput": { "base": "

Represents the input for DeleteStream.

", "refs": { @@ -285,6 +293,16 @@ "refs": { } }, + "GetResourcePolicyInput": { + "base": null, + "refs": { + } + }, + "GetResourcePolicyOutput": { + "base": null, + "refs": { + } + }, "GetShardIteratorInput": { "base": "

Represents the input for GetShardIterator.

", "refs": { @@ -501,6 +519,13 @@ "Record$PartitionKey": "

Identifies which shard in the stream the data record is assigned to.

" } }, + "Policy": { + "base": null, + "refs": { + "GetResourcePolicyOutput$Policy": "

Details of the resource policy. This is formatted as a JSON string.

", + "PutResourcePolicyInput$Policy": "

Details of the resource policy. It must include the identity of the principal and the actions allowed on this resource. This is formatted as a JSON string.

" + } + }, "PositiveIntegerObject": { "base": null, "refs": { @@ -560,6 +585,11 @@ "PutRecordsOutput$Records": "

An array of successfully and unsuccessfully processed record results. A record that is successfully added to a stream includes SequenceNumber and ShardId in the result. A record that fails to be added to a stream includes ErrorCode and ErrorMessage in the result.

" } }, + "PutResourcePolicyInput": { + "base": null, + "refs": { + } + }, "Record": { "base": "

The unit of data of the Kinesis data stream, which is composed of a sequence number, a partition key, and a data blob.

", "refs": { @@ -588,6 +618,14 @@ "refs": { } }, + "ResourceARN": { + "base": null, + "refs": { + "DeleteResourcePolicyInput$ResourceARN": "

The Amazon Resource Name (ARN) of the data stream or consumer.

", + "GetResourcePolicyInput$ResourceARN": "

The Amazon Resource Name (ARN) of the data stream or consumer.

", + "PutResourcePolicyInput$ResourceARN": "

The Amazon Resource Name (ARN) of the data stream or consumer.

" + } + }, "ResourceInUseException": { "base": "

The resource is not available for this operation. For successful operation, the resource must be in the ACTIVE state.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,9 +1,9 @@ { - "version": "1.3", + "version": "1.0", "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -41,111 +41,151 @@ "required": false, "documentation": "The ARN of the Kinesis consumer", "type": "String" + }, + "ResourceARN": { + "required": false, + "documentation": "The ARN of the Kinesis resource", + "type": "String" } }, "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "StreamARN" } - ], - "assign": "PartitionResult" - } - ], - "type": "tree", - "rules": [ + ] + }, { - "conditions": [ + "fn": "not", + "argv": [ { "fn": "isSet", "argv": [ { - "ref": "StreamARN" + "ref": "Endpoint" } ] - }, + } + ] + }, + { + "fn": "isSet", + "argv": [ { - "fn": "not", + "ref": "Region" + } + ] + }, + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", "argv": [ { - "fn": "isSet", + "fn": "getAttr", "argv": [ { - "ref": "Endpoint" - } + "ref": "PartitionResult" + }, + "name" ] - } + }, + "aws-iso" ] - }, + } + ] + }, + { + "fn": "not", + "argv": [ { - "fn": "not", + "fn": "stringEquals", "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-iso" + "name" ] - } + }, + "aws-iso-b" ] - }, + } + ] + } + ], + "rules": [ + { + "conditions": [ { - "fn": "not", + "fn": "aws.parseArn", "argv": [ { - "fn": "stringEquals", + "ref": "StreamARN" + } + ], + "assign": "arn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", "argv": [ { "fn": "getAttr", "argv": [ { - "ref": "PartitionResult" + "ref": "arn" }, - "name" + "accountId" ] }, - "aws-iso-b" + false ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ + ], + "rules": [ { - "fn": "aws.parseArn", - "argv": [ + "conditions": [ { - "ref": "StreamARN" + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "region" + ] + }, + false + ] } ], - "assign": "arn" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isValidHostLabel", + "fn": "stringEquals", "argv": [ { "fn": "getAttr", @@ -153,528 +193,491 @@ { "ref": "arn" }, - "accountId" + "service" ] }, - false + "kinesis" ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isValidHostLabel", + "fn": "stringEquals", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "arn" - }, - "region" - ] + "ref": "arnType" }, - false + "stream" ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "{arn#partition}" + ] + } + ], "rules": [ { "conditions": [ { - "fn": "stringEquals", + "fn": "isSet", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "arn" - }, - "service" - ] - }, - "kinesis" + "ref": "OperationType" + } ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "arn" - }, - "resourceId[0]" - ], - "assign": "arnType" + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ { - "fn": "not", + "fn": "booleanEquals", "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "arnType" + "ref": "PartitionResult" }, - "" + "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "arnType" + "ref": "PartitionResult" }, - "stream" + "supportsDualStack" ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - }, - "{arn#partition}" - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "OperationType" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled, but this partition does not support DualStack.", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled, but this partition does not support FIPS.", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { - "conditions": [], - "error": "Operation Type is not set. Please contact service team for resolution.", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", - "type": "error" - } - ] - } + }, + true ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", - "type": "error" + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled, but this partition does not support DualStack.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled, but this partition does not support FIPS.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true ] } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: No ARN type specified", + "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", + "error": "Operation Type is not set. Please contact service team for resolution.", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: Invalid region.", + "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: Invalid account id.", + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid region.", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: Failed to parse ARN.", + "error": "Invalid ARN: Invalid account id.", "type": "error" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Failed to parse ARN.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "ConsumerARN" + } ] }, { - "conditions": [ + "fn": "not", + "argv": [ { "fn": "isSet", "argv": [ { - "ref": "ConsumerARN" + "ref": "Endpoint" } ] - }, + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + }, + { + "fn": "aws.partition", + "argv": [ { - "fn": "not", + "ref": "Region" + } + ], + "assign": "PartitionResult" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", "argv": [ { - "fn": "isSet", + "fn": "getAttr", "argv": [ { - "ref": "Endpoint" - } + "ref": "PartitionResult" + }, + "name" ] - } + }, + "aws-iso" ] - }, + } + ] + }, + { + "fn": "not", + "argv": [ { - "fn": "not", + "fn": "stringEquals", "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-iso" + "name" ] - } + }, + "aws-iso-b" ] - }, + } + ] + } + ], + "rules": [ + { + "conditions": [ { - "fn": "not", + "fn": "aws.parseArn", "argv": [ { - "fn": "stringEquals", + "ref": "ConsumerARN" + } + ], + "assign": "arn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", "argv": [ { "fn": "getAttr", "argv": [ { - "ref": "PartitionResult" + "ref": "arn" }, - "name" + "accountId" ] }, - "aws-iso-b" + false ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ + ], + "rules": [ { - "fn": "aws.parseArn", - "argv": [ + "conditions": [ { - "ref": "ConsumerARN" + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "region" + ] + }, + false + ] } ], - "assign": "arn" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isValidHostLabel", + "fn": "stringEquals", "argv": [ { "fn": "getAttr", @@ -682,442 +685,367 @@ { "ref": "arn" }, - "accountId" + "service" ] }, - false + "kinesis" ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isValidHostLabel", + "fn": "stringEquals", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "arn" - }, - "region" - ] + "ref": "arnType" }, - false + "stream" ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "{arn#partition}" + ] + } + ], "rules": [ { "conditions": [ { - "fn": "stringEquals", + "fn": "isSet", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "arn" - }, - "service" - ] - }, - "kinesis" + "ref": "OperationType" + } ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "arn" - }, - "resourceId[0]" - ], - "assign": "arnType" + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "not", + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "arnType" + "ref": "PartitionResult" }, - "" + "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "arnType" + "ref": "PartitionResult" }, - "stream" + "supportsDualStack" ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - }, - "{arn#partition}" - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "OperationType" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled, but this partition does not support DualStack.", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled, but this partition does not support FIPS.", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { - "conditions": [], - "error": "Operation Type is not set. Please contact service team for resolution.", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", - "type": "error" - } - ] - } + }, + true ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", - "type": "error" + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled, but this partition does not support DualStack.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled, but this partition does not support FIPS.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true ] } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: No ARN type specified", + "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", + "error": "Operation Type is not set. Please contact service team for resolution.", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: Invalid region.", + "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: Invalid account id.", + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid region.", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "Invalid ARN: Failed to parse ARN.", + "error": "Invalid ARN: Invalid account id.", "type": "error" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Failed to parse ARN.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "ResourceARN" + } ] }, { - "conditions": [ + "fn": "not", + "argv": [ { "fn": "isSet", "argv": [ @@ -1126,59 +1054,490 @@ } ] } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + }, + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso" + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso-b" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "ResourceARN" + } + ], + "assign": "arn" + } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "isValidHostLabel", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "accountId" + ] }, - true + false ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "isValidHostLabel", "argv": [ { - "ref": "UseDualStack" + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "region" + ] }, - true + false ] } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "service" + ] + }, + "kinesis" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "stream" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "{arn#partition}" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "OperationType" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled, but this partition does not support DualStack.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled, but this partition does not support FIPS.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{arn#accountId}.{OperationType}-kinesis.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Operation Type is not set. Please contact service team for resolution.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Partition: {arn#partition} from ARN doesn't match with partition name: {PartitionResult#name}.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Kinesis ARNs don't support `{arnType}` arn types.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: {arn#service}.", + "type": "error" + } + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "Invalid ARN: Invalid region.", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Invalid account id.", + "type": "error" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "Invalid ARN: Failed to parse ARN.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", @@ -1188,7 +1547,13 @@ }, true ] - }, + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ { "fn": "booleanEquals", "argv": [ @@ -1199,46 +1564,103 @@ ] } ], - "type": "tree", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -1249,61 +1671,54 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -1312,7 +1727,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -1332,54 +1748,48 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -1390,58 +1800,16 @@ }, "type": "endpoint" } - ] - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-east-1" - ] - } - ], - "endpoint": { - "url": "https://kinesis.us-gov-east-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ + ], + "type": "tree" + }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-west-1" - ] + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ], - "endpoint": { - "url": "https://kinesis.us-gov-west-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree" }, { "conditions": [], @@ -1452,9 +1820,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesis/2013-12-02/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesis/2013-12-02/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,94 +1,94 @@ { "testCases": [ { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-gov-west-1.amazonaws.com" + "url": "https://kinesis.af-south-1.amazonaws.com" } }, "params": { + "Region": "af-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-gov-west-1.amazonaws.com" + "url": "https://kinesis.ap-east-1.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-west-1" + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-gov-east-1.amazonaws.com" + "url": "https://kinesis.ap-northeast-1.amazonaws.com" } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-gov-east-1.amazonaws.com" + "url": "https://kinesis.ap-northeast-2.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-gov-east-1.api.aws" + "url": "https://kinesis.ap-northeast-3.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-gov-east-1.api.aws" + "url": "https://kinesis.ap-south-1.amazonaws.com" } }, "params": { + "Region": "ap-south-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-southeast-3.amazonaws.com" + "url": "https://kinesis.ap-southeast-1.amazonaws.com" } }, "params": { + "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-3" + "UseDualStack": false } }, { @@ -99,113 +99,113 @@ } }, "params": { + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-southeast-1.amazonaws.com" + "url": "https://kinesis.ap-southeast-3.amazonaws.com" } }, "params": { + "Region": "ap-southeast-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.eu-central-1.amazonaws.com" + "url": "https://kinesis.ca-central-1.amazonaws.com" } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.eu-south-1.amazonaws.com" + "url": "https://kinesis.eu-central-1.amazonaws.com" } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-south-1" + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-east-1.amazonaws.com" + "url": "https://kinesis.eu-north-1.amazonaws.com" } }, "params": { + "Region": "eu-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.sa-east-1.amazonaws.com" + "url": "https://kinesis.eu-south-1.amazonaws.com" } }, "params": { + "Region": "eu-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-east-2.amazonaws.com" + "url": "https://kinesis.eu-west-1.amazonaws.com" } }, "params": { + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-east-2.amazonaws.com" + "url": "https://kinesis.eu-west-2.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-2" + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.eu-north-1.amazonaws.com" + "url": "https://kinesis.eu-west-3.amazonaws.com" } }, "params": { + "Region": "eu-west-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { @@ -216,334 +216,356 @@ } }, "params": { + "Region": "me-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "me-south-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.eu-west-3.amazonaws.com" + "url": "https://kinesis.sa-east-1.amazonaws.com" } }, "params": { + "Region": "sa-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-3" + "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.eu-west-2.amazonaws.com" + "url": "https://kinesis.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.eu-west-1.amazonaws.com" + "url": "https://kinesis-fips.us-east-1.amazonaws.com" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-east-1.amazonaws.com" + "url": "https://kinesis.us-east-2.amazonaws.com" } }, "params": { + "Region": "us-east-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-east-1.amazonaws.com" + "url": "https://kinesis-fips.us-east-2.amazonaws.com" } }, "params": { + "Region": "us-east-2", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-northeast-3.amazonaws.com" + "url": "https://kinesis.us-west-1.amazonaws.com" } }, "params": { + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-3" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-northeast-2.amazonaws.com" + "url": "https://kinesis-fips.us-west-1.amazonaws.com" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-northeast-1.amazonaws.com" + "url": "https://kinesis.us-west-2.amazonaws.com" } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ap-south-1.amazonaws.com" + "url": "https://kinesis-fips.us-west-2.amazonaws.com" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-1" + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://kinesis.af-south-1.amazonaws.com" + "url": "https://kinesis-fips.us-east-1.api.aws" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://kinesis.us-west-2.amazonaws.com" + "url": "https://kinesis.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": true } }, { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-west-2.amazonaws.com" + "url": "https://kinesis.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-2" + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-west-1.amazonaws.com" + "url": "https://kinesis.cn-northwest-1.amazonaws.com.cn" } }, "params": { + "Region": "cn-northwest-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-west-1.amazonaws.com" + "url": "https://kinesis-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": true } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.ca-central-1.amazonaws.com" + "url": "https://kinesis-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-east-1.api.aws" + "url": "https://kinesis.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-east-1.api.aws" + "url": "https://kinesis.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" + "url": "https://kinesis.us-gov-east-1.amazonaws.com" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" + "url": "https://kinesis.us-gov-west-1.amazonaws.com" } }, "params": { + "Region": "us-gov-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://kinesis.us-gov-west-1.amazonaws.com" } }, "params": { + "Region": "us-gov-west-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://kinesis.cn-north-1.amazonaws.com.cn" + "url": "https://kinesis-fips.us-gov-east-1.api.aws" } }, "params": { - "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://kinesis.cn-northwest-1.amazonaws.com.cn" + "url": "https://kinesis.us-gov-east-1.api.aws" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-northwest-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis-fips.cn-north-1.amazonaws.com.cn" + "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://kinesis.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -554,9 +576,20 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -567,13 +600,38 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": false, - "Region": "us-isob-east-1" + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -582,7 +640,6 @@ "params": { "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -592,9 +649,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -604,13 +661,19 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + }, + { "documentation": "Invalid ARN: Failed to parse ARN.", "expect": { "error": "Invalid ARN: Failed to parse ARN." @@ -1392,6 +1455,746 @@ "StreamARN": "arn:aws:kinesis:us-east-1:123:stream/foobar", "ConsumerARN": "arn:aws:kinesis:us-east-1:123456789123:stream/foobar/consumer/test-consumer:1525898737" } + }, + { + "documentation": "ResourceARN test: Invalid ARN: Failed to parse ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: partition missing from ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn::kinesis:us-west-2:123456789012:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: partitions mismatch.", + "expect": { + "error": "Partition: aws from ARN doesn't match with partition name: aws-us-gov." + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-west-2:123456789012:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: Not Kinesis", + "expect": { + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: s3." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:s3:us-west-2:123456789012:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: Region is missing in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis::123456789012:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: Region is empty string in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis: :123456789012:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1::stream/testStream", + "OperationType": "control" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1: :stream/testStream", + "OperationType": "control" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Invalid ARN: Kinesis ARNs only support stream arn types", + "expect": { + "error": "Invalid ARN: Kinesis ARNs don't support `accesspoint` arn types." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1:123:accesspoint/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Dual Stack not supported region.", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": true, + "UseDualStack": true, + "ResourceARN": "arn:aws-iso:kinesis:us-iso-west-1:123456789012:stream/testStream", + "OperationType": "control" + } + }, + { + "documentation": "ResourceARN as StreamARN test: OperationType not set", + "expect": { + "error": "Operation Type is not set. Please contact service team for resolution." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1:123456789012:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Custom Endpoint is specified", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with fips targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with fips targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with Dual Stack and FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with Dual Stack enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": true, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with FIPS and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: RegionMismatch: client region should be used for endpoint region", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-west-1:123:stream/testStream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with FIPS and DualStack enabled for cn regions.", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "data", + "ResourceARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws-iso:kinesis:us-iso-west-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with fips targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as StreamARN test: Account endpoint with fips targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: partition missing from ARN.", + "expect": { + "error": "Invalid ARN: Failed to parse ARN." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn::kinesis:us-west-2:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: partitions mismatch.", + "expect": { + "error": "Partition: aws from ARN doesn't match with partition name: aws-us-gov." + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-west-2:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: Not Kinesis", + "expect": { + "error": "Invalid ARN: The ARN was not for the Kinesis service, found: s3." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:s3:us-west-2:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: Region is missing in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis::123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: Region is empty string in ARN", + "expect": { + "error": "Invalid ARN: Invalid region." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis: :123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1::stream/testStream/consumer/test-consumer:1525898737", + "OperationType": "control" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: Invalid account id", + "expect": { + "error": "Invalid ARN: Invalid account id." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1: :stream/testStream/consumer/test-consumer:1525898737", + "OperationType": "control" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Invalid ARN: Kinesis ARNs only support stream arn/consumer arn types", + "expect": { + "error": "Invalid ARN: Kinesis ARNs don't support `accesspoint` arn types." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1:123:accesspoint/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Dual Stack not supported region.", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": true, + "UseDualStack": true, + "ResourceARN": "arn:aws-iso:kinesis:us-iso-west-1:123456789012:stream/testStream/consumer/test-consumer:1525898737", + "OperationType": "control" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: OperationType not set", + "expect": { + "error": "Operation Type is not set. Please contact service team for resolution." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "ResourceARN": "arn:aws:kinesis:us-east-1:123456789012:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Custom Endpoint is specified", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737", + "Endpoint": "https://example.com" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with fips targeting data operation type", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with fips targeting control operation type", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with Dual Stack and FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with Dual Stack enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-west-1.api.aws" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": true, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with FIPS and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://123.control-kinesis.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws:kinesis:us-west-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: RegionMismatch: client region should be used for endpoint region", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws:kinesis:us-west-1:123:stream/testStream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with FIPS enabled", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with FIPS and DualStack enabled for cn regions.", + "expect": { + "endpoint": { + "url": "https://123.data-kinesis-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true, + "UseDualStack": true, + "OperationType": "data", + "ResourceARN": "arn:aws-cn:kinesis:cn-northwest-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws-iso:kinesis:us-iso-west-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with fips targeting control operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "control", + "ResourceARN": "arn:aws-iso:kinesis:us-iso-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } + }, + { + "documentation": "ResourceARN as ConsumerARN test: Account endpoint with fips targeting data operation type in ADC regions", + "expect": { + "endpoint": { + "url": "https://kinesis-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false, + "OperationType": "data", + "ResourceARN": "arn:aws-iso-b:kinesis:us-isob-east-1:123:stream/test-stream/consumer/test-consumer:1525898737" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesisvideo/2017-09-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesisvideo/2017-09-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesisvideo/2017-09-30/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesisvideo/2017-09-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,7 +10,7 @@ "DescribeEdgeConfiguration": "

Describes a stream’s edge configuration that was set using the StartEdgeConfigurationUpdate API and the latest status of the edge agent's recorder and uploader jobs. Use this API to get the status of the configuration to determine if the configuration is in sync with the Edge Agent. Use this API to evaluate the health of the Edge Agent.

", "DescribeImageGenerationConfiguration": "

Gets the ImageGenerationConfiguration for a given Kinesis video stream.

", "DescribeMappedResourceConfiguration": "

Returns the most current information about the stream. The streamName or streamARN should be provided in the input.

", - "DescribeMediaStorageConfiguration": "

This API is related to WebRTC Ingestion and is only available in the us-west-2 region.

Returns the most current information about the channel. Specify the ChannelName or ChannelARN in the input.

", + "DescribeMediaStorageConfiguration": "

Returns the most current information about the channel. Specify the ChannelName or ChannelARN in the input.

", "DescribeNotificationConfiguration": "

Gets the NotificationConfiguration for a given Kinesis video stream.

", "DescribeSignalingChannel": "

Returns the most current information about the signaling channel. You must specify either the name or the Amazon Resource Name (ARN) of the channel that you want to describe.

", "DescribeStream": "

Returns the most current information about the specified stream. You must specify either the StreamName or the StreamARN.

", @@ -26,9 +26,9 @@ "TagStream": "

Adds one or more tags to a stream. A tag is a key-value pair (the value is optional) that you can define and assign to Amazon Web Services resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. For more information, see Using Cost Allocation Tags in the Billing and Cost Management and Cost Management User Guide.

You must provide either the StreamName or the StreamARN.

This operation requires permission for the KinesisVideo:TagStream action.

A Kinesis video stream can support up to 50 tags.

", "UntagResource": "

Removes one or more tags from a signaling channel. In the request, specify only a tag key or keys; don't specify the value. If you specify a tag key that does not exist, it's ignored.

", "UntagStream": "

Removes one or more tags from a stream. In the request, specify only a tag key or keys; don't specify the value. If you specify a tag key that does not exist, it's ignored.

In the request, you must provide the StreamName or StreamARN.

", - "UpdateDataRetention": "

Increases or decreases the stream's data retention period by the value that you specify. To indicate whether you want to increase or decrease the data retention period, specify the Operation parameter in the request body. In the request, you must specify either the StreamName or the StreamARN.

The retention period that you specify replaces the current value.

This operation requires permission for the KinesisVideo:UpdateDataRetention action.

Changing the data retention period affects the data in the stream as follows:

  • If the data retention period is increased, existing data is retained for the new retention period. For example, if the data retention period is increased from one hour to seven hours, all existing data is retained for seven hours.

  • If the data retention period is decreased, existing data is retained for the new retention period. For example, if the data retention period is decreased from seven hours to one hour, all existing data is retained for one hour, and any data older than one hour is deleted immediately.

", + "UpdateDataRetention": "

Increases or decreases the stream's data retention period by the value that you specify. To indicate whether you want to increase or decrease the data retention period, specify the Operation parameter in the request body. In the request, you must specify either the StreamName or the StreamARN.

This operation requires permission for the KinesisVideo:UpdateDataRetention action.

Changing the data retention period affects the data in the stream as follows:

  • If the data retention period is increased, existing data is retained for the new retention period. For example, if the data retention period is increased from one hour to seven hours, all existing data is retained for seven hours.

  • If the data retention period is decreased, existing data is retained for the new retention period. For example, if the data retention period is decreased from seven hours to one hour, all existing data is retained for one hour, and any data older than one hour is deleted immediately.

", "UpdateImageGenerationConfiguration": "

Updates the StreamInfo and ImageProcessingConfiguration fields.

", - "UpdateMediaStorageConfiguration": "

This API is related to WebRTC Ingestion and is only available in the us-west-2 region.

Associates a SignalingChannel to a stream to store the media. There are two signaling modes that can specified :

  • If the StorageStatus is disabled, no data will be stored, and the StreamARN parameter will not be needed.

  • If the StorageStatus is enabled, the data will be stored in the StreamARN provided.

If StorageStatus is enabled, direct peer-to-peer (master-viewer) connections no longer occur. Peers connect directly to the storage session. You must call the JoinStorageSession API to trigger an SDP offer send and establish a connection between a peer and the storage session.

", + "UpdateMediaStorageConfiguration": "

Associates a SignalingChannel to a stream to store the media. There are two signaling modes that you can specify :

  • If StorageStatus is enabled, the data will be stored in the StreamARN provided. In order for WebRTC Ingestion to work, the stream must have data retention enabled.

  • If StorageStatus is disabled, no data will be stored, and the StreamARN parameter will not be needed.

If StorageStatus is enabled, direct peer-to-peer (master-viewer) connections no longer occur. Peers connect directly to the storage session. You must call the JoinStorageSession API to trigger an SDP offer send and establish a connection between a peer and the storage session.

", "UpdateNotificationConfiguration": "

Updates the notification information for a stream.

", "UpdateSignalingChannel": "

Updates the existing signaling channel. This is an asynchronous operation and takes time to complete.

If the MessageTtlSeconds value is updated (either increased or reduced), it only applies to new messages sent via this channel after it's been updated. Existing messages are still expired as per the previous MessageTtlSeconds value.

", "UpdateStream": "

Updates stream metadata, such as the device name and media type.

You must provide the stream name or the Amazon Resource Name (ARN) of the stream.

To make sure that you have the latest version of the stream before updating it, you can specify the stream version. Kinesis Video Streams assigns a version to each stream. When you update a stream, Kinesis Video Streams assigns a new version number. To get the latest stream version, use the DescribeStream API.

UpdateStream is an asynchronous operation, and takes time to complete.

" @@ -152,7 +152,7 @@ "DataRetentionChangeInHours": { "base": null, "refs": { - "UpdateDataRetentionInput$DataRetentionChangeInHours": "

The retention period, in hours. The value you specify replaces the current value. The maximum value for this parameter is 87600 (ten years).

" + "UpdateDataRetentionInput$DataRetentionChangeInHours": "

The number of hours to adjust the current retention by. The value you specify is added to or subtracted from the current value, depending on the operation.

The minimum value for data retention is 0 and the maximum value is 87600 (ten years).

" } }, "DataRetentionInHours": { @@ -590,7 +590,7 @@ } }, "MediaStorageConfiguration": { - "base": "

A structure that encapsulates, or contains, the media storage configuration properties.

", + "base": "

A structure that encapsulates, or contains, the media storage configuration properties.

  • If StorageStatus is enabled, the data will be stored in the StreamARN provided. In order for WebRTC Ingestion to work, the stream must have data retention enabled.

  • If StorageStatus is disabled, no data will be stored, and the StreamARN parameter will not be needed.

", "refs": { "DescribeMediaStorageConfigurationOutput$MediaStorageConfiguration": "

A structure that encapsulates, or contains, the media storage configuration properties.

", "UpdateMediaStorageConfigurationInput$MediaStorageConfiguration": "

A structure that encapsulates, or contains, the media storage configuration properties.

" @@ -703,7 +703,7 @@ "ListTagsForResourceInput$ResourceARN": "

The Amazon Resource Name (ARN) of the signaling channel for which you want to list tags.

", "ListTagsForStreamInput$StreamARN": "

The Amazon Resource Name (ARN) of the stream that you want to list tags for.

", "MappedResourceConfigurationListItem$ARN": "

The Amazon Resource Name (ARN) of the Kinesis Video Stream resource, associated with the stream.

", - "MediaStorageConfiguration$StreamARN": "

The Amazon Resource Name (ARN) of the stream

", + "MediaStorageConfiguration$StreamARN": "

The Amazon Resource Name (ARN) of the stream.

", "StartEdgeConfigurationUpdateInput$StreamARN": "

The Amazon Resource Name (ARN) of the stream. Specify either the StreamName or the StreamARN.

", "StartEdgeConfigurationUpdateOutput$StreamARN": "

The Amazon Resource Name (ARN) of the stream.

", "StreamInfo$StreamARN": "

The Amazon Resource Name (ARN) of the stream.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesisvideo/2017-09-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesisvideo/2017-09-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/kinesisvideo/2017-09-30/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/kinesisvideo/2017-09-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -141,6 +141,40 @@ {"shape":"AccessDeniedException"} ] }, + "CreateLakeFormationIdentityCenterConfiguration":{ + "name":"CreateLakeFormationIdentityCenterConfiguration", + "http":{ + "method":"POST", + "requestUri":"/CreateLakeFormationIdentityCenterConfiguration" + }, + "input":{"shape":"CreateLakeFormationIdentityCenterConfigurationRequest"}, + "output":{"shape":"CreateLakeFormationIdentityCenterConfigurationResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"AlreadyExistsException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, + "CreateLakeFormationOptIn":{ + "name":"CreateLakeFormationOptIn", + "http":{ + "method":"POST", + "requestUri":"/CreateLakeFormationOptIn" + }, + "input":{"shape":"CreateLakeFormationOptInRequest"}, + "output":{"shape":"CreateLakeFormationOptInResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, "DeleteDataCellsFilter":{ "name":"DeleteDataCellsFilter", "http":{ @@ -173,6 +207,40 @@ {"shape":"AccessDeniedException"} ] }, + "DeleteLakeFormationIdentityCenterConfiguration":{ + "name":"DeleteLakeFormationIdentityCenterConfiguration", + "http":{ + "method":"POST", + "requestUri":"/DeleteLakeFormationIdentityCenterConfiguration" + }, + "input":{"shape":"DeleteLakeFormationIdentityCenterConfigurationRequest"}, + "output":{"shape":"DeleteLakeFormationIdentityCenterConfigurationResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, + "DeleteLakeFormationOptIn":{ + "name":"DeleteLakeFormationOptIn", + "http":{ + "method":"POST", + "requestUri":"/DeleteLakeFormationOptIn" + }, + "input":{"shape":"DeleteLakeFormationOptInRequest"}, + "output":{"shape":"DeleteLakeFormationOptInResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, "DeleteObjectsOnCancel":{ "name":"DeleteObjectsOnCancel", "http":{ @@ -207,6 +275,22 @@ {"shape":"EntityNotFoundException"} ] }, + "DescribeLakeFormationIdentityCenterConfiguration":{ + "name":"DescribeLakeFormationIdentityCenterConfiguration", + "http":{ + "method":"POST", + "requestUri":"/DescribeLakeFormationIdentityCenterConfiguration" + }, + "input":{"shape":"DescribeLakeFormationIdentityCenterConfigurationRequest"}, + "output":{"shape":"DescribeLakeFormationIdentityCenterConfigurationResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"AccessDeniedException"} + ] + }, "DescribeResource":{ "name":"DescribeResource", "http":{ @@ -501,6 +585,21 @@ {"shape":"AccessDeniedException"} ] }, + "ListLakeFormationOptIns":{ + "name":"ListLakeFormationOptIns", + "http":{ + "method":"POST", + "requestUri":"/ListLakeFormationOptIns" + }, + "input":{"shape":"ListLakeFormationOptInsRequest"}, + "output":{"shape":"ListLakeFormationOptInsResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListPermissions":{ "name":"ListPermissions", "http":{ @@ -719,6 +818,23 @@ {"shape":"AccessDeniedException"} ] }, + "UpdateLakeFormationIdentityCenterConfiguration":{ + "name":"UpdateLakeFormationIdentityCenterConfiguration", + "http":{ + "method":"POST", + "requestUri":"/UpdateLakeFormationIdentityCenterConfiguration" + }, + "input":{"shape":"UpdateLakeFormationIdentityCenterConfigurationRequest"}, + "output":{"shape":"UpdateLakeFormationIdentityCenterConfigurationResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, "UpdateResource":{ "name":"UpdateResource", "http":{ @@ -827,6 +943,14 @@ }, "exception":true }, + "ApplicationArn":{"type":"string"}, + "ApplicationStatus":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "AssumeDecoratedRoleWithSAMLRequest":{ "type":"structure", "required":[ @@ -1030,6 +1154,36 @@ "members":{ } }, + "CreateLakeFormationIdentityCenterConfigurationRequest":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "InstanceArn":{"shape":"IdentityCenterInstanceArn"}, + "ExternalFiltering":{"shape":"ExternalFilteringConfiguration"} + } + }, + "CreateLakeFormationIdentityCenterConfigurationResponse":{ + "type":"structure", + "members":{ + "ApplicationArn":{"shape":"ApplicationArn"} + } + }, + "CreateLakeFormationOptInRequest":{ + "type":"structure", + "required":[ + "Principal", + "Resource" + ], + "members":{ + "Principal":{"shape":"DataLakePrincipal"}, + "Resource":{"shape":"Resource"} + } + }, + "CreateLakeFormationOptInResponse":{ + "type":"structure", + "members":{ + } + }, "CredentialTimeoutDurationSecondInteger":{ "type":"integer", "box":true, @@ -1164,6 +1318,33 @@ "members":{ } }, + "DeleteLakeFormationIdentityCenterConfigurationRequest":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"} + } + }, + "DeleteLakeFormationIdentityCenterConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteLakeFormationOptInRequest":{ + "type":"structure", + "required":[ + "Principal", + "Resource" + ], + "members":{ + "Principal":{"shape":"DataLakePrincipal"}, + "Resource":{"shape":"Resource"} + } + }, + "DeleteLakeFormationOptInResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteObjectInput":{ "type":"structure", "required":["Uri"], @@ -1206,6 +1387,21 @@ "members":{ } }, + "DescribeLakeFormationIdentityCenterConfigurationRequest":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"} + } + }, + "DescribeLakeFormationIdentityCenterConfigurationResponse":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "InstanceArn":{"shape":"IdentityCenterInstanceArn"}, + "ApplicationArn":{"shape":"ApplicationArn"}, + "ExternalFiltering":{"shape":"ExternalFilteringConfiguration"} + } + }, "DescribeResourceRequest":{ "type":"structure", "required":["ResourceArn"], @@ -1250,6 +1446,13 @@ "min":1, "pattern":"[\\p{L}\\p{N}\\p{P}]*" }, + "EnableStatus":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "EntityNotFoundException":{ "type":"structure", "members":{ @@ -1300,6 +1503,17 @@ "members":{ } }, + "ExternalFilteringConfiguration":{ + "type":"structure", + "required":[ + "Status", + "AuthorizedTargets" + ], + "members":{ + "Status":{"shape":"EnableStatus"}, + "AuthorizedTargets":{"shape":"ScopeTargets"} + } + }, "FieldNameString":{ "type":"string", "enum":[ @@ -1608,6 +1822,7 @@ "max":255, "min":1 }, + "IdentityCenterInstanceArn":{"type":"string"}, "Integer":{ "type":"integer", "box":true @@ -1714,6 +1929,19 @@ "max":50, "min":1 }, + "LakeFormationOptInsInfo":{ + "type":"structure", + "members":{ + "Resource":{"shape":"Resource"}, + "Principal":{"shape":"DataLakePrincipal"}, + "LastModified":{"shape":"LastModifiedTimestamp"}, + "LastUpdatedBy":{"shape":"NameString"} + } + }, + "LakeFormationOptInsInfoList":{ + "type":"list", + "member":{"shape":"LakeFormationOptInsInfo"} + }, "LastModifiedTimestamp":{"type":"timestamp"}, "ListDataCellsFilterRequest":{ "type":"structure", @@ -1746,6 +1974,22 @@ "NextToken":{"shape":"Token"} } }, + "ListLakeFormationOptInsRequest":{ + "type":"structure", + "members":{ + "Principal":{"shape":"DataLakePrincipal"}, + "Resource":{"shape":"Resource"}, + "MaxResults":{"shape":"PageSize"}, + "NextToken":{"shape":"Token"} + } + }, + "ListLakeFormationOptInsResponse":{ + "type":"structure", + "members":{ + "LakeFormationOptInsInfoList":{"shape":"LakeFormationOptInsInfoList"}, + "NextToken":{"shape":"Token"} + } + }, "ListPermissionsRequest":{ "type":"structure", "members":{ @@ -1968,7 +2212,9 @@ "Resource":{"shape":"Resource"}, "Permissions":{"shape":"PermissionList"}, "PermissionsWithGrantOption":{"shape":"PermissionList"}, - "AdditionalDetails":{"shape":"DetailsMap"} + "AdditionalDetails":{"shape":"DetailsMap"}, + "LastUpdated":{"shape":"LastModifiedTimestamp"}, + "LastUpdatedBy":{"shape":"NameString"} } }, "PrincipalResourcePermissionsList":{ @@ -2028,7 +2274,8 @@ "ResourceArn":{"shape":"ResourceArnString"}, "UseServiceLinkedRole":{"shape":"NullableBoolean"}, "RoleArn":{"shape":"IAMRoleArn"}, - "WithFederation":{"shape":"NullableBoolean"} + "WithFederation":{"shape":"NullableBoolean"}, + "HybridAccessEnabled":{"shape":"NullableBoolean"} } }, "RegisterResourceResponse":{ @@ -2074,7 +2321,8 @@ "ResourceArn":{"shape":"ResourceArnString"}, "RoleArn":{"shape":"IAMRoleArn"}, "LastModified":{"shape":"LastModifiedTimestamp"}, - "WithFederation":{"shape":"NullableBoolean"} + "WithFederation":{"shape":"NullableBoolean"}, + "HybridAccessEnabled":{"shape":"NullableBoolean"} } }, "ResourceInfoList":{ @@ -2151,6 +2399,11 @@ "max":100000, "min":4 }, + "ScopeTarget":{"type":"string"}, + "ScopeTargets":{ + "type":"list", + "member":{"shape":"ScopeTarget"} + }, "SearchDatabasesByLFTagsRequest":{ "type":"structure", "required":["Expression"], @@ -2473,6 +2726,19 @@ "members":{ } }, + "UpdateLakeFormationIdentityCenterConfigurationRequest":{ + "type":"structure", + "members":{ + "CatalogId":{"shape":"CatalogIdString"}, + "ApplicationStatus":{"shape":"ApplicationStatus"}, + "ExternalFiltering":{"shape":"ExternalFilteringConfiguration"} + } + }, + "UpdateLakeFormationIdentityCenterConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateResourceRequest":{ "type":"structure", "required":[ @@ -2482,7 +2748,8 @@ "members":{ "RoleArn":{"shape":"IAMRoleArn"}, "ResourceArn":{"shape":"ResourceArnString"}, - "WithFederation":{"shape":"NullableBoolean"} + "WithFederation":{"shape":"NullableBoolean"}, + "HybridAccessEnabled":{"shape":"NullableBoolean"} } }, "UpdateResourceResponse":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,10 +10,15 @@ "CommitTransaction": "

Attempts to commit the specified transaction. Returns an exception if the transaction was previously aborted. This API action is idempotent if called multiple times for the same transaction.

", "CreateDataCellsFilter": "

Creates a data cell filter to allow one to grant access to certain columns on certain rows.

", "CreateLFTag": "

Creates an LF-tag with the specified name and values.

", + "CreateLakeFormationIdentityCenterConfiguration": "

Creates an IAM Identity Center connection with Lake Formation to allow IAM Identity Center users and groups to access Data Catalog resources.

", + "CreateLakeFormationOptIn": "

Enforce Lake Formation permissions for the given databases, tables, and principals.

", "DeleteDataCellsFilter": "

Deletes a data cell filter.

", "DeleteLFTag": "

Deletes the specified LF-tag given a key name. If the input parameter tag key was not found, then the operation will throw an exception. When you delete an LF-tag, the LFTagPolicy attached to the LF-tag becomes invalid. If the deleted LF-tag was still assigned to any resource, the tag policy attach to the deleted LF-tag will no longer be applied to the resource.

", + "DeleteLakeFormationIdentityCenterConfiguration": "

Deletes an IAM Identity Center connection with Lake Formation.

", + "DeleteLakeFormationOptIn": "

Remove the Lake Formation permissions enforcement of the given databases, tables, and principals.

", "DeleteObjectsOnCancel": "

For a specific governed table, provides a list of Amazon S3 objects that will be written during the current transaction and that can be automatically deleted if the transaction is canceled. Without this call, no Amazon S3 objects are automatically deleted when a transaction cancels.

The Glue ETL library function write_dynamic_frame.from_catalog() includes an option to automatically call DeleteObjectsOnCancel before writes. For more information, see Rolling Back Amazon S3 Writes.

", "DeregisterResource": "

Deregisters the resource as managed by the Data Catalog.

When you deregister a path, Lake Formation removes the path from the inline policy attached to your service-linked role.

", + "DescribeLakeFormationIdentityCenterConfiguration": "

Retrieves the instance ARN and application ARN for the connection.

", "DescribeResource": "

Retrieves the current data access role for the given resource registered in Lake Formation.

", "DescribeTransaction": "

Returns the details of a single transaction.

", "ExtendTransaction": "

Indicates to the service that the specified transaction is still active and should not be treated as idle and aborted.

Write transactions that remain idle for a long period are automatically aborted unless explicitly extended.

", @@ -32,6 +37,7 @@ "GrantPermissions": "

Grants permissions to the principal to access metadata in the Data Catalog and data organized in underlying data storage such as Amazon S3.

For information about permissions, see Security and Access Control to Metadata and Data.

", "ListDataCellsFilter": "

Lists all the data cell filters on a table.

", "ListLFTags": "

Lists LF-tags that the requester has permission to view.

", + "ListLakeFormationOptIns": "

Retrieve the current list of resources and principals that are opt in to enforce Lake Formation permissions.

", "ListPermissions": "

Returns a list of the principal permissions on the resource, filtered by the permissions of the caller. For example, if you are granted an ALTER permission, you are able to see only the principal permissions for ALTER.

This operation returns only those permissions that have been explicitly granted.

For information about permissions, see Security and Access Control to Metadata and Data.

", "ListResources": "

Lists the resources registered to be managed by the Data Catalog.

", "ListTableStorageOptimizers": "

Returns the configuration of all storage optimizers associated with a specified table.

", @@ -46,6 +52,7 @@ "StartTransaction": "

Starts a new transaction and returns its transaction ID. Transaction IDs are opaque objects that you can use to identify a transaction.

", "UpdateDataCellsFilter": "

Updates a data cell filter.

", "UpdateLFTag": "

Updates the list of possible values for the specified LF-tag key. If the LF-tag does not exist, the operation throws an EntityNotFoundException. The values in the delete key values will be deleted from list of possible values. If any value in the delete key values is attached to a resource, then API errors out with a 400 Exception - \"Update not allowed\". Untag the attribute before deleting the LF-tag key's value.

", + "UpdateLakeFormationIdentityCenterConfiguration": "

Updates the IAM Identity Center connection parameters.

", "UpdateResource": "

Updates the data access role used for vending access to the given (registered) resource in Lake Formation.

", "UpdateTableObjects": "

Updates the manifest of Amazon S3 objects that make up the specified governed table.

", "UpdateTableStorageOptimizer": "

Updates the configuration of the storage optimizers for a table.

" @@ -91,6 +98,19 @@ "refs": { } }, + "ApplicationArn": { + "base": null, + "refs": { + "CreateLakeFormationIdentityCenterConfigurationResponse$ApplicationArn": "

The Amazon Resource Name (ARN) of the integrated application.

", + "DescribeLakeFormationIdentityCenterConfigurationResponse$ApplicationArn": "

The Amazon Resource Name (ARN) of the integrated application.

" + } + }, + "ApplicationStatus": { + "base": null, + "refs": { + "UpdateLakeFormationIdentityCenterConfigurationRequest$ApplicationStatus": "

Allows to enable or disable the IAM Identity Center connection.

" + } + }, "AssumeDecoratedRoleWithSAMLRequest": { "base": null, "refs": { @@ -190,13 +210,17 @@ "BatchGrantPermissionsRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", "BatchRevokePermissionsRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", "CreateLFTagRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", + "CreateLakeFormationIdentityCenterConfigurationRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, view definitions, and other control information to manage your Lake Formation environment.

", "DataCellsFilter$TableCatalogId": "

The ID of the catalog to which the table belongs.

", "DataCellsFilterResource$TableCatalogId": "

The ID of the catalog to which the table belongs.

", "DataLocationResource$CatalogId": "

The identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.

", "DatabaseResource$CatalogId": "

The identifier for the Data Catalog. By default, it is the account ID of the caller.

", "DeleteDataCellsFilterRequest$TableCatalogId": "

The ID of the catalog to which the table belongs.

", "DeleteLFTagRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", + "DeleteLakeFormationIdentityCenterConfigurationRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, view definition, and other control information to manage your Lake Formation environment.

", "DeleteObjectsOnCancelRequest$CatalogId": "

The Glue data catalog that contains the governed table. Defaults to the current account ID.

", + "DescribeLakeFormationIdentityCenterConfigurationRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", + "DescribeLakeFormationIdentityCenterConfigurationResponse$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", "GetDataCellsFilterRequest$TableCatalogId": "

The ID of the catalog to which the table belongs.

", "GetDataLakeSettingsRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", "GetEffectivePermissionsForPathRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", @@ -222,6 +246,7 @@ "TableWithColumnsResource$CatalogId": "

The identifier for the Data Catalog. By default, it is the account ID of the caller.

", "TrustedResourceOwners$member": null, "UpdateLFTagRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

", + "UpdateLakeFormationIdentityCenterConfigurationRequest$CatalogId": "

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, view definitions, and other control information to manage your Lake Formation environment.

", "UpdateTableObjectsRequest$CatalogId": "

The catalog containing the governed table to update. Defaults to the caller’s account ID.

", "UpdateTableStorageOptimizerRequest$CatalogId": "

The Catalog ID of the table.

" } @@ -301,6 +326,26 @@ "refs": { } }, + "CreateLakeFormationIdentityCenterConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreateLakeFormationIdentityCenterConfigurationResponse": { + "base": null, + "refs": { + } + }, + "CreateLakeFormationOptInRequest": { + "base": null, + "refs": { + } + }, + "CreateLakeFormationOptInResponse": { + "base": null, + "refs": { + } + }, "CredentialTimeoutDurationSecondInteger": { "base": null, "refs": { @@ -334,8 +379,12 @@ "base": "

The Lake Formation principal. Supported principals are IAM users or IAM roles.

", "refs": { "BatchPermissionsRequestEntry$Principal": "

The principal to be granted a permission.

", + "CreateLakeFormationOptInRequest$Principal": null, "DataLakePrincipalList$member": null, + "DeleteLakeFormationOptInRequest$Principal": null, "GrantPermissionsRequest$Principal": "

The principal to be granted the permissions on the resource. Supported principals are IAM users or IAM roles, and they are defined by their principal type and their ARN.

Note that if you define a resource with a particular ARN, then later delete, and recreate a resource with that same ARN, the resource maintains the permissions already granted.

", + "LakeFormationOptInsInfo$Principal": null, + "ListLakeFormationOptInsRequest$Principal": null, "ListPermissionsRequest$Principal": "

Specifies a principal to filter the permissions returned.

", "PrincipalPermissions$Principal": "

The principal who is granted permissions.

", "PrincipalResourcePermissions$Principal": "

The Data Lake principal to be granted or revoked permissions.

", @@ -414,6 +463,26 @@ "refs": { } }, + "DeleteLakeFormationIdentityCenterConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteLakeFormationIdentityCenterConfigurationResponse": { + "base": null, + "refs": { + } + }, + "DeleteLakeFormationOptInRequest": { + "base": null, + "refs": { + } + }, + "DeleteLakeFormationOptInResponse": { + "base": null, + "refs": { + } + }, "DeleteObjectInput": { "base": "

An object to delete from the governed table.

", "refs": { @@ -440,6 +509,16 @@ "refs": { } }, + "DescribeLakeFormationIdentityCenterConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DescribeLakeFormationIdentityCenterConfigurationResponse": { + "base": null, + "refs": { + } + }, "DescribeResourceRequest": { "base": null, "refs": { @@ -481,6 +560,12 @@ "VirtualObject$ETag": "

The ETag of the Amazon S3 object.

" } }, + "EnableStatus": { + "base": null, + "refs": { + "ExternalFilteringConfiguration$Status": "

Allows to enable or disable the third-party applications that are allowed to access data managed by Lake Formation.

" + } + }, "EntityNotFoundException": { "base": "

A specified entity does not exist.

", "refs": { @@ -536,6 +621,14 @@ "refs": { } }, + "ExternalFilteringConfiguration": { + "base": "

Configuration for enabling external data filtering for third-party applications to access data managed by Lake Formation .

", + "refs": { + "CreateLakeFormationIdentityCenterConfigurationRequest$ExternalFiltering": "

A list of the account IDs of Amazon Web Services accounts of third-party applications that are allowed to to access data managed by Lake Formation.

", + "DescribeLakeFormationIdentityCenterConfigurationResponse$ExternalFiltering": "

Indicates if external filtering is enabled.

", + "UpdateLakeFormationIdentityCenterConfigurationRequest$ExternalFiltering": "

A list of the account IDs of Amazon Web Services accounts of third-party applications that are allowed to access data managed by Lake Formation.

" + } + }, "FieldNameString": { "base": null, "refs": { @@ -740,6 +833,13 @@ "BatchPermissionsRequestEntry$Id": "

A unique identifier for the batch permissions request entry.

" } }, + "IdentityCenterInstanceArn": { + "base": null, + "refs": { + "CreateLakeFormationIdentityCenterConfigurationRequest$InstanceArn": "

The ARN of the IAM Identity Center instance for which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "DescribeLakeFormationIdentityCenterConfigurationResponse$InstanceArn": "

The Amazon Resource Name (ARN) of the connection.

" + } + }, "Integer": { "base": null, "refs": { @@ -832,9 +932,23 @@ "TaggedTable$LFTagsOnTable": "

A list of LF-tags attached to the table.

" } }, + "LakeFormationOptInsInfo": { + "base": "

A single principal-resource pair that has Lake Formation permissins enforced.

", + "refs": { + "LakeFormationOptInsInfoList$member": null + } + }, + "LakeFormationOptInsInfoList": { + "base": null, + "refs": { + "ListLakeFormationOptInsResponse$LakeFormationOptInsInfoList": "

A list of principal-resource pairs that have Lake Formation permissins enforced.

" + } + }, "LastModifiedTimestamp": { "base": null, "refs": { + "LakeFormationOptInsInfo$LastModified": "

The last modified date and time of the record.

", + "PrincipalResourcePermissions$LastUpdated": "

The date and time when the resource was last updated.

", "ResourceInfo$LastModified": "

The date and time the resource was last modified.

" } }, @@ -858,6 +972,16 @@ "refs": { } }, + "ListLakeFormationOptInsRequest": { + "base": null, + "refs": { + } + }, + "ListLakeFormationOptInsResponse": { + "base": null, + "refs": { + } + }, "ListPermissionsRequest": { "base": null, "refs": { @@ -949,8 +1073,10 @@ "GetTableObjectsRequest$DatabaseName": "

The database containing the governed table.

", "GetTableObjectsRequest$TableName": "

The governed table for which to retrieve objects.

", "LFTagKeyResource$TagKey": "

The key-name for the LF-tag.

", + "LakeFormationOptInsInfo$LastUpdatedBy": "

The user who updated the record.

", "ListTableStorageOptimizersRequest$DatabaseName": "

Name of the database where the table is present.

", "ListTableStorageOptimizersRequest$TableName": "

Name of the table.

", + "PrincipalResourcePermissions$LastUpdatedBy": "

The user who updated the record.

", "TableResource$DatabaseName": "

The name of the database for the table. Unique to a Data Catalog. A database is a set of associated table definitions organized into a logical group. You can Grant and Revoke database privileges to a principal.

", "TableResource$Name": "

The name of the table.

", "TableWithColumnsResource$DatabaseName": "

The name of the database for the table with columns resource. Unique to the Data Catalog. A database is a set of associated table definitions organized into a logical group. You can Grant and Revoke database privileges to a principal.

", @@ -968,8 +1094,11 @@ "DataLakeSettings$AllowFullTableExternalDataAccess": "

Whether to allow a third-party query engine to get data access credentials without session tags when a caller has full data access permissions.

", "RegisterResourceRequest$UseServiceLinkedRole": "

Designates an Identity and Access Management (IAM) service-linked role by registering this role with the Data Catalog. A service-linked role is a unique type of IAM role that is linked directly to Lake Formation.

For more information, see Using Service-Linked Roles for Lake Formation.

", "RegisterResourceRequest$WithFederation": "

Whether or not the resource is a federated resource.

", + "RegisterResourceRequest$HybridAccessEnabled": "

Specifies whether the data access of tables pointing to the location can be managed by both Lake Formation permissions as well as Amazon S3 bucket policies.

", "ResourceInfo$WithFederation": "

Whether or not the resource is a federated resource.

", - "UpdateResourceRequest$WithFederation": "

Whether or not the resource is a federated resource.

" + "ResourceInfo$HybridAccessEnabled": "

Indicates whether the data access of tables pointing to the location can be managed by both Lake Formation permissions as well as Amazon S3 bucket policies.

", + "UpdateResourceRequest$WithFederation": "

Whether or not the resource is a federated resource.

", + "UpdateResourceRequest$HybridAccessEnabled": "

Specifies whether the data access of tables pointing to the location can be managed by both Lake Formation permissions as well as Amazon S3 bucket policies.

" } }, "NumberOfBytes": { @@ -1021,6 +1150,7 @@ "GetTableObjectsRequest$MaxResults": "

Specifies how many values to return in a page.

", "ListDataCellsFilterRequest$MaxResults": "

The maximum size of the response.

", "ListLFTagsRequest$MaxResults": "

The maximum number of results to return.

", + "ListLakeFormationOptInsRequest$MaxResults": "

The maximum number of results to return.

", "ListPermissionsRequest$MaxResults": "

The maximum number of results to return.

", "ListResourcesRequest$MaxResults": "

The maximum number of resource results.

", "ListTableStorageOptimizersRequest$MaxResults": "

The number of storage optimizers to return on each call.

", @@ -1030,7 +1160,7 @@ "ParametersMap": { "base": null, "refs": { - "DataLakeSettings$Parameters": "

A key-value map that provides an additional configuration on your data lake. CrossAccountVersion is the key you can configure in the Parameters field. Accepted values for the CrossAccountVersion key are 1, 2, and 3.

" + "DataLakeSettings$Parameters": "

A key-value map that provides an additional configuration on your data lake. CROSS_ACCOUNT_VERSION is the key you can configure in the Parameters field. Accepted values for the CrossAccountVersion key are 1, 2, 3, and 4.

" } }, "ParametersMapValue": { @@ -1222,8 +1352,12 @@ "refs": { "AddLFTagsToResourceRequest$Resource": "

The database, table, or column resource to which to attach an LF-tag.

", "BatchPermissionsRequestEntry$Resource": "

The resource to which the principal is to be granted a permission.

", + "CreateLakeFormationOptInRequest$Resource": null, + "DeleteLakeFormationOptInRequest$Resource": null, "GetResourceLFTagsRequest$Resource": "

The database, table, or column resource for which you want to return LF-tags.

", "GrantPermissionsRequest$Resource": "

The resource to which permissions are to be granted. Resources in Lake Formation are the Data Catalog, databases, and tables.

", + "LakeFormationOptInsInfo$Resource": null, + "ListLakeFormationOptInsRequest$Resource": "

A structure for the resource.

", "ListPermissionsRequest$Resource": "

A resource where you will get a list of the principal permissions.

This operation does not support getting privileges on a table with columns. Instead, call this operation on the table, and the operation returns the table and the table w columns.

", "PrincipalResourcePermissions$Resource": "

The resource where permissions are to be granted or revoked.

", "RemoveLFTagsFromResourceRequest$Resource": "

The database, table, or column resource where you want to remove an LF-tag.

", @@ -1319,6 +1453,18 @@ "AssumeDecoratedRoleWithSAMLRequest$SAMLAssertion": "

A SAML assertion consisting of an assertion statement for the user who needs temporary credentials. This must match the SAML assertion that was issued to IAM. This must be Base64 encoded.

" } }, + "ScopeTarget": { + "base": null, + "refs": { + "ScopeTargets$member": null + } + }, + "ScopeTargets": { + "base": null, + "refs": { + "ExternalFilteringConfiguration$AuthorizedTargets": "

List of third-party application ARNs integrated with Lake Formation.

" + } + }, "SearchDatabasesByLFTagsRequest": { "base": null, "refs": { @@ -1498,7 +1644,7 @@ "refs": { "CreateLFTagRequest$TagValues": "

A list of possible values an attribute can take.

", "GetLFTagResponse$TagValues": "

A list of possible values an attribute can take.

", - "LFTag$TagValues": "

A list of possible values an attribute can take.

", + "LFTag$TagValues": "

A list of possible values an attribute can take.

The maximum number of values that can be defined for a LF-Tag is 1000. A single API call supports 50 values. You can use multiple API calls to add more values.

", "LFTagKeyResource$TagValues": "

A list of possible values an attribute can take.

", "LFTagPair$TagValues": "

A list of possible values an attribute can take.

", "UpdateLFTagRequest$TagValuesToDelete": "

A list of LF-tag values to delete from the LF-tag.

", @@ -1542,6 +1688,8 @@ "ListDataCellsFilterResponse$NextToken": "

A continuation token, if not all requested data cell filters have been returned.

", "ListLFTagsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListLFTagsResponse$NextToken": "

A continuation token, present if the current list segment is not the last.

", + "ListLakeFormationOptInsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", + "ListLakeFormationOptInsResponse$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListPermissionsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListPermissionsResponse$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListResourcesRequest$NextToken": "

A continuation token, if this is not the first call to retrieve these resources.

", @@ -1551,7 +1699,7 @@ "SearchDatabasesByLFTagsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "SearchDatabasesByLFTagsResponse$NextToken": "

A continuation token, present if the current list segment is not the last.

", "SearchTablesByLFTagsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", - "SearchTablesByLFTagsResponse$NextToken": "

A continuation token, present if the current list segment is not the last.

" + "SearchTablesByLFTagsResponse$NextToken": "

A continuation token, present if the current list segment is not the last. On the first run, if you include a not null (a value) token you can get empty pages.

" } }, "TokenString": { @@ -1665,6 +1813,16 @@ "base": null, "refs": { } + }, + "UpdateLakeFormationIdentityCenterConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateLakeFormationIdentityCenterConfigurationResponse": { + "base": null, + "refs": { + } }, "UpdateResourceRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://lakeformation-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://lakeformation-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://lakeformation-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://lakeformation-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://lakeformation.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://lakeformation.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://lakeformation.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://lakeformation.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lakeformation/2017-03-31/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lakeformation/2017-03-31/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -28,6 +28,11 @@ "output_token": "NextToken", "result_key": "LFTags" }, + "ListLakeFormationOptIns": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "ListPermissions": { "input_token": "NextToken", "limit_key": "MaxResults", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lambda/2015-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lambda/2015-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lambda/2015-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lambda/2015-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1305,6 +1305,17 @@ "ConsumerGroupId":{"shape":"URI"} } }, + "ApplicationLogLevel":{ + "type":"string", + "enum":[ + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "FATAL" + ] + }, "Architecture":{ "type":"string", "enum":[ @@ -1535,7 +1546,8 @@ "CodeSigningConfigArn":{"shape":"CodeSigningConfigArn"}, "Architectures":{"shape":"ArchitecturesList"}, "EphemeralStorage":{"shape":"EphemeralStorage"}, - "SnapStart":{"shape":"SnapStart"} + "SnapStart":{"shape":"SnapStart"}, + "LoggingConfig":{"shape":"LoggingConfig"} } }, "CreateFunctionUrlConfigRequest":{ @@ -2072,7 +2084,8 @@ "Architectures":{"shape":"ArchitecturesList"}, "EphemeralStorage":{"shape":"EphemeralStorage"}, "SnapStart":{"shape":"SnapStartResponse"}, - "RuntimeVersionConfig":{"shape":"RuntimeVersionConfig"} + "RuntimeVersionConfig":{"shape":"RuntimeVersionConfig"}, + "LoggingConfig":{"shape":"LoggingConfig"} } }, "FunctionEventInvokeConfig":{ @@ -3299,6 +3312,19 @@ "max":160, "pattern":"^/mnt/[a-zA-Z0-9-_.]+$" }, + "LogFormat":{ + "type":"string", + "enum":[ + "JSON", + "Text" + ] + }, + "LogGroup":{ + "type":"string", + "max":512, + "min":1, + "pattern":"[\\.\\-_/#A-Za-z0-9]+" + }, "LogType":{ "type":"string", "enum":[ @@ -3306,6 +3332,15 @@ "Tail" ] }, + "LoggingConfig":{ + "type":"structure", + "members":{ + "LogFormat":{"shape":"LogFormat"}, + "ApplicationLogLevel":{"shape":"ApplicationLogLevel"}, + "SystemLogLevel":{"shape":"SystemLogLevel"}, + "LogGroup":{"shape":"LogGroup"} + } + }, "Long":{"type":"long"}, "MasterRegion":{ "type":"string", @@ -3401,6 +3436,7 @@ "type":"integer", "min":0 }, + "NullableBoolean":{"type":"boolean"}, "OnFailure":{ "type":"structure", "members":{ @@ -3863,7 +3899,11 @@ "python3.10", "java17", "ruby3.2", - "python3.11" + "python3.11", + "nodejs20.x", + "provided.al2023", + "python3.12", + "java21" ] }, "RuntimeVersionArn":{ @@ -4096,6 +4136,14 @@ "member":{"shape":"SubnetId"}, "max":16 }, + "SystemLogLevel":{ + "type":"string", + "enum":[ + "DEBUG", + "INFO", + "WARN" + ] + }, "TagKey":{"type":"string"}, "TagKeyList":{ "type":"list", @@ -4342,7 +4390,8 @@ "FileSystemConfigs":{"shape":"FileSystemConfigList"}, "ImageConfig":{"shape":"ImageConfig"}, "EphemeralStorage":{"shape":"EphemeralStorage"}, - "SnapStart":{"shape":"SnapStart"} + "SnapStart":{"shape":"SnapStart"}, + "LoggingConfig":{"shape":"LoggingConfig"} } }, "UpdateFunctionEventInvokeConfigRequest":{ @@ -4420,7 +4469,8 @@ "type":"structure", "members":{ "SubnetIds":{"shape":"SubnetIds"}, - "SecurityGroupIds":{"shape":"SecurityGroupIds"} + "SecurityGroupIds":{"shape":"SecurityGroupIds"}, + "Ipv6AllowedForDualStack":{"shape":"NullableBoolean"} } }, "VpcConfigResponse":{ @@ -4428,7 +4478,8 @@ "members":{ "SubnetIds":{"shape":"SubnetIds"}, "SecurityGroupIds":{"shape":"SecurityGroupIds"}, - "VpcId":{"shape":"VpcId"} + "VpcId":{"shape":"VpcId"}, + "Ipv6AllowedForDualStack":{"shape":"NullableBoolean"} } }, "VpcId":{"type":"string"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lambda/2015-03-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lambda/2015-03-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lambda/2015-03-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lambda/2015-03-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -35,7 +35,7 @@ "GetPolicy": "

Returns the resource-based IAM policy for a function, version, or alias.

", "GetProvisionedConcurrencyConfig": "

Retrieves the provisioned concurrency configuration for a function's alias or version.

", "GetRuntimeManagementConfig": "

Retrieves the runtime management configuration for a function's version. If the runtime update mode is Manual, this includes the ARN of the runtime version and the runtime update mode. If the runtime update mode is Auto or Function update, this includes the runtime update mode and null is returned for the ARN. For more information, see Runtime updates.

", - "Invoke": "

Invokes a Lambda function. You can invoke a function synchronously (and wait for the response), or asynchronously. To invoke a function asynchronously, set InvocationType to Event.

For synchronous invocation, details about the function response, including errors, are included in the response body and headers. For either invocation type, you can find more information in the execution log and trace.

When an error occurs, your function may be invoked multiple times. Retry behavior varies by error type, client, event source, and invocation type. For example, if you invoke a function asynchronously and it returns an error, Lambda executes the function up to two more times. For more information, see Error handling and automatic retries in Lambda.

For asynchronous invocation, Lambda adds events to a queue before sending them to your function. If your function does not have enough capacity to keep up with the queue, events may be lost. Occasionally, your function may receive the same event multiple times, even if no error occurs. To retain events that were not processed, configure your function with a dead-letter queue.

The status code in the API response doesn't reflect function errors. Error codes are reserved for errors that prevent your function from executing, such as permissions errors, quota errors, or issues with your function's code and configuration. For example, Lambda returns TooManyRequestsException if running the function would cause you to exceed a concurrency limit at either the account level (ConcurrentInvocationLimitExceeded) or function level (ReservedFunctionConcurrentInvocationLimitExceeded).

For functions with a long timeout, your client might disconnect during synchronous invocation while it waits for a response. Configure your HTTP client, SDK, firewall, proxy, or operating system to allow for long connections with timeout or keep-alive settings.

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up permissions for cross-account invocations, see Granting function access to other accounts.

", + "Invoke": "

Invokes a Lambda function. You can invoke a function synchronously (and wait for the response), or asynchronously. By default, Lambda invokes your function synchronously (i.e. theInvocationType is RequestResponse). To invoke a function asynchronously, set InvocationType to Event. Lambda passes the ClientContext object to your function for synchronous invocations only.

For synchronous invocation, details about the function response, including errors, are included in the response body and headers. For either invocation type, you can find more information in the execution log and trace.

When an error occurs, your function may be invoked multiple times. Retry behavior varies by error type, client, event source, and invocation type. For example, if you invoke a function asynchronously and it returns an error, Lambda executes the function up to two more times. For more information, see Error handling and automatic retries in Lambda.

For asynchronous invocation, Lambda adds events to a queue before sending them to your function. If your function does not have enough capacity to keep up with the queue, events may be lost. Occasionally, your function may receive the same event multiple times, even if no error occurs. To retain events that were not processed, configure your function with a dead-letter queue.

The status code in the API response doesn't reflect function errors. Error codes are reserved for errors that prevent your function from executing, such as permissions errors, quota errors, or issues with your function's code and configuration. For example, Lambda returns TooManyRequestsException if running the function would cause you to exceed a concurrency limit at either the account level (ConcurrentInvocationLimitExceeded) or function level (ReservedFunctionConcurrentInvocationLimitExceeded).

For functions with a long timeout, your client might disconnect during synchronous invocation while it waits for a response. Configure your HTTP client, SDK, firewall, proxy, or operating system to allow for long connections with timeout or keep-alive settings.

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up permissions for cross-account invocations, see Granting function access to other accounts.

", "InvokeAsync": "

For asynchronous function invocation, use Invoke.

Invokes a function asynchronously.

", "InvokeWithResponseStream": "

Configure your Lambda functions to stream response payloads back to clients. For more information, see Configuring a Lambda function to stream responses.

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up permissions for cross-account invocations, see Granting function access to other accounts.

", "ListAliases": "

Returns a list of aliases for a Lambda function.

", @@ -183,6 +183,12 @@ "EventSourceMappingConfiguration$AmazonManagedKafkaEventSourceConfig": "

Specific configuration settings for an Amazon Managed Streaming for Apache Kafka (Amazon MSK) event source.

" } }, + "ApplicationLogLevel": { + "base": null, + "refs": { + "LoggingConfig$ApplicationLogLevel": "

Set this property to filter the application logs for your function that Lambda sends to CloudWatch. Lambda only sends application logs at the selected level and lower.

" + } + }, "Architecture": { "base": null, "refs": { @@ -1466,6 +1472,18 @@ "FileSystemConfig$LocalMountPath": "

The path where the function can access the file system, starting with /mnt/.

" } }, + "LogFormat": { + "base": null, + "refs": { + "LoggingConfig$LogFormat": "

The format in which Lambda sends your function's application and system logs to CloudWatch. Select between plain text and structured JSON.

" + } + }, + "LogGroup": { + "base": null, + "refs": { + "LoggingConfig$LogGroup": "

The name of the Amazon CloudWatch log group the function sends logs to. By default, Lambda functions send logs to a default log group named /aws/lambda/<function name>. To use a different log group, enter an existing log group or enter a new log group name.

" + } + }, "LogType": { "base": null, "refs": { @@ -1473,6 +1491,14 @@ "InvokeWithResponseStreamRequest$LogType": "

Set to Tail to include the execution log in the response. Applies to synchronously invoked functions only.

" } }, + "LoggingConfig": { + "base": "

The function's Amazon CloudWatch Logs configuration settings.

", + "refs": { + "CreateFunctionRequest$LoggingConfig": "

The function's Amazon CloudWatch Logs configuration settings.

", + "FunctionConfiguration$LoggingConfig": "

The function's Amazon CloudWatch Logs configuration settings.

", + "UpdateFunctionConfigurationRequest$LoggingConfig": "

The function's Amazon CloudWatch Logs configuration settings.

" + } + }, "Long": { "base": null, "refs": { @@ -1632,6 +1658,13 @@ "PutProvisionedConcurrencyConfigResponse$AllocatedProvisionedConcurrentExecutions": "

The amount of provisioned concurrency allocated. When a weighted alias is used during linear and canary deployments, this value fluctuates depending on the amount of concurrency that is provisioned for the function versions.

" } }, + "NullableBoolean": { + "base": null, + "refs": { + "VpcConfig$Ipv6AllowedForDualStack": "

Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.

", + "VpcConfigResponse$Ipv6AllowedForDualStack": "

Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.

" + } + }, "OnFailure": { "base": "

A destination for events that failed processing.

", "refs": { @@ -2275,6 +2308,12 @@ "VpcConfigResponse$SubnetIds": "

A list of VPC subnet IDs.

" } }, + "SystemLogLevel": { + "base": null, + "refs": { + "LoggingConfig$SystemLogLevel": "

Set this property to filter the system logs for your function that Lambda sends to CloudWatch. Lambda only sends system logs at the selected level and lower.

" + } + }, "TagKey": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/lambda/2015-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/lambda/2015-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/lambda/2015-03-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/lambda/2015-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://lambda-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://lambda-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://lambda-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://lambda-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://lambda.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://lambda.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://lambda.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://lambda.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,542 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2018-05-10", + "endpointPrefix":"launchwizard", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AWS Launch Wizard", + "serviceId":"Launch Wizard", + "signatureVersion":"v4", + "signingName":"launchwizard", + "uid":"launch-wizard-2018-05-10" + }, + "operations":{ + "CreateDeployment":{ + "name":"CreateDeployment", + "http":{ + "method":"POST", + "requestUri":"/createDeployment", + "responseCode":200 + }, + "input":{"shape":"CreateDeploymentInput"}, + "output":{"shape":"CreateDeploymentOutput"}, + "errors":[ + {"shape":"ResourceLimitException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "DeleteDeployment":{ + "name":"DeleteDeployment", + "http":{ + "method":"POST", + "requestUri":"/deleteDeployment", + "responseCode":200 + }, + "input":{"shape":"DeleteDeploymentInput"}, + "output":{"shape":"DeleteDeploymentOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "GetDeployment":{ + "name":"GetDeployment", + "http":{ + "method":"POST", + "requestUri":"/getDeployment", + "responseCode":200 + }, + "input":{"shape":"GetDeploymentInput"}, + "output":{"shape":"GetDeploymentOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetWorkload":{ + "name":"GetWorkload", + "http":{ + "method":"POST", + "requestUri":"/getWorkload", + "responseCode":200 + }, + "input":{"shape":"GetWorkloadInput"}, + "output":{"shape":"GetWorkloadOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListDeploymentEvents":{ + "name":"ListDeploymentEvents", + "http":{ + "method":"POST", + "requestUri":"/listDeploymentEvents", + "responseCode":200 + }, + "input":{"shape":"ListDeploymentEventsInput"}, + "output":{"shape":"ListDeploymentEventsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListDeployments":{ + "name":"ListDeployments", + "http":{ + "method":"POST", + "requestUri":"/listDeployments", + "responseCode":200 + }, + "input":{"shape":"ListDeploymentsInput"}, + "output":{"shape":"ListDeploymentsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"} + ] + }, + "ListWorkloadDeploymentPatterns":{ + "name":"ListWorkloadDeploymentPatterns", + "http":{ + "method":"POST", + "requestUri":"/listWorkloadDeploymentPatterns", + "responseCode":200 + }, + "input":{"shape":"ListWorkloadDeploymentPatternsInput"}, + "output":{"shape":"ListWorkloadDeploymentPatternsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListWorkloads":{ + "name":"ListWorkloads", + "http":{ + "method":"POST", + "requestUri":"/listWorkloads", + "responseCode":200 + }, + "input":{"shape":"ListWorkloadsInput"}, + "output":{"shape":"ListWorkloadsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"} + ] + } + }, + "shapes":{ + "Boolean":{ + "type":"boolean", + "box":true + }, + "CreateDeploymentInput":{ + "type":"structure", + "required":[ + "deploymentPatternName", + "name", + "specifications", + "workloadName" + ], + "members":{ + "deploymentPatternName":{"shape":"DeploymentPatternName"}, + "dryRun":{"shape":"Boolean"}, + "name":{"shape":"DeploymentName"}, + "specifications":{"shape":"DeploymentSpecifications"}, + "workloadName":{"shape":"WorkloadName"} + } + }, + "CreateDeploymentOutput":{ + "type":"structure", + "members":{ + "deploymentId":{"shape":"DeploymentId"} + } + }, + "DeleteDeploymentInput":{ + "type":"structure", + "required":["deploymentId"], + "members":{ + "deploymentId":{"shape":"DeploymentId"} + } + }, + "DeleteDeploymentOutput":{ + "type":"structure", + "members":{ + "status":{"shape":"DeploymentStatus"}, + "statusReason":{"shape":"String"} + } + }, + "DeploymentData":{ + "type":"structure", + "members":{ + "createdAt":{"shape":"Timestamp"}, + "deletedAt":{"shape":"Timestamp"}, + "id":{"shape":"DeploymentId"}, + "name":{"shape":"String"}, + "patternName":{"shape":"DeploymentPatternName"}, + "resourceGroup":{"shape":"String"}, + "specifications":{"shape":"DeploymentSpecifications"}, + "status":{"shape":"DeploymentStatus"}, + "workloadName":{"shape":"WorkloadName"} + } + }, + "DeploymentDataSummary":{ + "type":"structure", + "members":{ + "createdAt":{"shape":"Timestamp"}, + "id":{"shape":"DeploymentId"}, + "name":{"shape":"String"}, + "patternName":{"shape":"DeploymentPatternName"}, + "status":{"shape":"DeploymentStatus"}, + "workloadName":{"shape":"WorkloadName"} + } + }, + "DeploymentDataSummaryList":{ + "type":"list", + "member":{"shape":"DeploymentDataSummary"} + }, + "DeploymentEventDataSummary":{ + "type":"structure", + "members":{ + "description":{"shape":"String"}, + "name":{"shape":"String"}, + "status":{"shape":"EventStatus"}, + "statusReason":{"shape":"String"}, + "timestamp":{"shape":"Timestamp"} + } + }, + "DeploymentEventDataSummaryList":{ + "type":"list", + "member":{"shape":"DeploymentEventDataSummary"} + }, + "DeploymentFilter":{ + "type":"structure", + "members":{ + "name":{"shape":"DeploymentFilterKey"}, + "values":{"shape":"DeploymentFilterValues"} + } + }, + "DeploymentFilterKey":{ + "type":"string", + "enum":[ + "WORKLOAD_NAME", + "DEPLOYMENT_STATUS" + ] + }, + "DeploymentFilterList":{ + "type":"list", + "member":{"shape":"DeploymentFilter"}, + "min":1 + }, + "DeploymentFilterValues":{ + "type":"list", + "member":{"shape":"DeploymentFilterValuesMemberString"} + }, + "DeploymentFilterValuesMemberString":{ + "type":"string", + "max":100, + "min":1 + }, + "DeploymentId":{ + "type":"string", + "max":128, + "min":2, + "pattern":"^[a-zA-Z0-9-]+$" + }, + "DeploymentName":{ + "type":"string", + "max":25, + "min":1, + "pattern":"^[A-Za-z0-9_\\s\\.-]+$" + }, + "DeploymentPatternName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9-]+$" + }, + "DeploymentSpecifications":{ + "type":"map", + "key":{"shape":"KeyString"}, + "value":{"shape":"ValueString"}, + "max":100, + "min":1, + "sensitive":true + }, + "DeploymentStatus":{ + "type":"string", + "enum":[ + "COMPLETED", + "CREATING", + "DELETE_IN_PROGRESS", + "DELETE_INITIATING", + "DELETE_FAILED", + "DELETED", + "FAILED", + "IN_PROGRESS", + "VALIDATING" + ] + }, + "EventStatus":{ + "type":"string", + "enum":[ + "CANCELED", + "CANCELING", + "COMPLETED", + "CREATED", + "FAILED", + "IN_PROGRESS", + "PENDING", + "TIMED_OUT" + ] + }, + "GetDeploymentInput":{ + "type":"structure", + "required":["deploymentId"], + "members":{ + "deploymentId":{"shape":"DeploymentId"} + } + }, + "GetDeploymentOutput":{ + "type":"structure", + "members":{ + "deployment":{"shape":"DeploymentData"} + } + }, + "GetWorkloadInput":{ + "type":"structure", + "required":["workloadName"], + "members":{ + "workloadName":{"shape":"WorkloadName"} + } + }, + "GetWorkloadOutput":{ + "type":"structure", + "members":{ + "workload":{"shape":"WorkloadData"} + } + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "KeyString":{ + "type":"string", + "max":256, + "min":3, + "pattern":"^[a-zA-Z0-9-:]+$" + }, + "ListDeploymentEventsInput":{ + "type":"structure", + "required":["deploymentId"], + "members":{ + "deploymentId":{"shape":"DeploymentId"}, + "maxResults":{"shape":"MaxDeploymentEventResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDeploymentEventsOutput":{ + "type":"structure", + "members":{ + "deploymentEvents":{"shape":"DeploymentEventDataSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDeploymentsInput":{ + "type":"structure", + "members":{ + "filters":{"shape":"DeploymentFilterList"}, + "maxResults":{"shape":"MaxDeploymentResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDeploymentsOutput":{ + "type":"structure", + "members":{ + "deployments":{"shape":"DeploymentDataSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListWorkloadDeploymentPatternsInput":{ + "type":"structure", + "required":["workloadName"], + "members":{ + "maxResults":{"shape":"MaxWorkloadDeploymentPatternResults"}, + "nextToken":{"shape":"NextToken"}, + "workloadName":{"shape":"WorkloadName"} + } + }, + "ListWorkloadDeploymentPatternsOutput":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "workloadDeploymentPatterns":{"shape":"WorkloadDeploymentPatternDataSummaryList"} + } + }, + "ListWorkloadsInput":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxWorkloadResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListWorkloadsOutput":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "workloads":{"shape":"WorkloadDataSummaryList"} + } + }, + "MaxDeploymentEventResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MaxDeploymentResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MaxWorkloadDeploymentPatternResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MaxWorkloadResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "NextToken":{ + "type":"string", + "max":1024, + "min":1 + }, + "ResourceLimitException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "String":{"type":"string"}, + "Timestamp":{"type":"timestamp"}, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ValueString":{ + "type":"string", + "max":1500, + "min":1 + }, + "WorkloadData":{ + "type":"structure", + "members":{ + "description":{"shape":"String"}, + "displayName":{"shape":"String"}, + "documentationUrl":{"shape":"String"}, + "iconUrl":{"shape":"String"}, + "status":{"shape":"WorkloadStatus"}, + "statusMessage":{"shape":"String"}, + "workloadName":{"shape":"WorkloadName"} + } + }, + "WorkloadDataSummary":{ + "type":"structure", + "members":{ + "displayName":{"shape":"String"}, + "workloadName":{"shape":"WorkloadName"} + } + }, + "WorkloadDataSummaryList":{ + "type":"list", + "member":{"shape":"WorkloadDataSummary"} + }, + "WorkloadDeploymentPatternDataSummary":{ + "type":"structure", + "members":{ + "deploymentPatternName":{"shape":"DeploymentPatternName"}, + "description":{"shape":"String"}, + "displayName":{"shape":"String"}, + "status":{"shape":"WorkloadDeploymentPatternStatus"}, + "statusMessage":{"shape":"String"}, + "workloadName":{"shape":"WorkloadName"}, + "workloadVersionName":{"shape":"WorkloadVersionName"} + } + }, + "WorkloadDeploymentPatternDataSummaryList":{ + "type":"list", + "member":{"shape":"WorkloadDeploymentPatternDataSummary"} + }, + "WorkloadDeploymentPatternStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "INACTIVE", + "DISABLED", + "DELETED" + ] + }, + "WorkloadName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9-]+$" + }, + "WorkloadStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "INACTIVE", + "DISABLED", + "DELETED" + ] + }, + "WorkloadVersionName":{ + "type":"string", + "max":30, + "min":5, + "pattern":"^[a-zA-Z0-9-]+$" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,373 @@ +{ + "version": "2.0", + "service": "

Launch Wizard offers a guided way of sizing, configuring, and deploying Amazon Web Services resources for third party applications, such as Microsoft SQL Server Always On and HANA based SAP systems, without the need to manually identify and provision individual Amazon Web Services resources.

", + "operations": { + "CreateDeployment": "

Creates a deployment for the given workload. Deployments created by this operation are not available in the Launch Wizard console to use the Clone deployment action on.

", + "DeleteDeployment": "

Deletes a deployment.

", + "GetDeployment": "

Returns information about the deployment.

", + "GetWorkload": "

Returns information about a workload.

", + "ListDeploymentEvents": "

Lists the events of a deployment.

", + "ListDeployments": "

Lists the deployments that have been created.

", + "ListWorkloadDeploymentPatterns": "

Lists the workload deployment patterns.

", + "ListWorkloads": "

Lists the workloads.

" + }, + "shapes": { + "Boolean": { + "base": null, + "refs": { + "CreateDeploymentInput$dryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "CreateDeploymentInput": { + "base": null, + "refs": { + } + }, + "CreateDeploymentOutput": { + "base": null, + "refs": { + } + }, + "DeleteDeploymentInput": { + "base": null, + "refs": { + } + }, + "DeleteDeploymentOutput": { + "base": null, + "refs": { + } + }, + "DeploymentData": { + "base": "

The data associated with a deployment.

", + "refs": { + "GetDeploymentOutput$deployment": "

An object that details the deployment.

" + } + }, + "DeploymentDataSummary": { + "base": "

A summary of the deployment data.

", + "refs": { + "DeploymentDataSummaryList$member": null + } + }, + "DeploymentDataSummaryList": { + "base": null, + "refs": { + "ListDeploymentsOutput$deployments": "

Lists the deployments.

" + } + }, + "DeploymentEventDataSummary": { + "base": "

A summary of the deployment event data.

", + "refs": { + "DeploymentEventDataSummaryList$member": null + } + }, + "DeploymentEventDataSummaryList": { + "base": null, + "refs": { + "ListDeploymentEventsOutput$deploymentEvents": "

Lists the deployment events.

" + } + }, + "DeploymentFilter": { + "base": "

A filter name and value pair that is used to return more specific results from a describe operation. Filters can be used to match a set of resources by specific criteria.

", + "refs": { + "DeploymentFilterList$member": null + } + }, + "DeploymentFilterKey": { + "base": null, + "refs": { + "DeploymentFilter$name": "

The name of the filter. Filter names are case-sensitive.

" + } + }, + "DeploymentFilterList": { + "base": null, + "refs": { + "ListDeploymentsInput$filters": "

Filters to scope the results. The following filters are supported:

  • WORKLOAD_NAME

  • DEPLOYMENT_STATUS

" + } + }, + "DeploymentFilterValues": { + "base": null, + "refs": { + "DeploymentFilter$values": "

The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR, and the request returns all results that match any of the specified values.

" + } + }, + "DeploymentFilterValuesMemberString": { + "base": null, + "refs": { + "DeploymentFilterValues$member": null + } + }, + "DeploymentId": { + "base": null, + "refs": { + "CreateDeploymentOutput$deploymentId": "

The ID of the deployment.

", + "DeleteDeploymentInput$deploymentId": "

The ID of the deployment.

", + "DeploymentData$id": "

The ID of the deployment.

", + "DeploymentDataSummary$id": "

The ID of the deployment.

", + "GetDeploymentInput$deploymentId": "

The ID of the deployment.

", + "ListDeploymentEventsInput$deploymentId": "

The ID of the deployment.

" + } + }, + "DeploymentName": { + "base": null, + "refs": { + "CreateDeploymentInput$name": "

The name of the deployment.

" + } + }, + "DeploymentPatternName": { + "base": null, + "refs": { + "CreateDeploymentInput$deploymentPatternName": "

The name of the deployment pattern supported by a given workload. You can use the ListWorkloadDeploymentPatterns operation to discover supported values for this parameter.

", + "DeploymentData$patternName": "

The pattern name of the deployment.

", + "DeploymentDataSummary$patternName": "

The name of the workload deployment pattern.

", + "WorkloadDeploymentPatternDataSummary$deploymentPatternName": "

The name of a workload deployment pattern.

" + } + }, + "DeploymentSpecifications": { + "base": null, + "refs": { + "CreateDeploymentInput$specifications": "

The settings specified for the deployment. For more information on the specifications required for creating a deployment, see Workload specifications.

", + "DeploymentData$specifications": "

The specifications of the deployment. For more information on specifications for each deployment, see Workload specifications.

" + } + }, + "DeploymentStatus": { + "base": null, + "refs": { + "DeleteDeploymentOutput$status": "

The status of the deployment.

", + "DeploymentData$status": "

The status of the deployment.

", + "DeploymentDataSummary$status": "

The status of the deployment.

" + } + }, + "EventStatus": { + "base": null, + "refs": { + "DeploymentEventDataSummary$status": "

The status of the deployment event.

" + } + }, + "GetDeploymentInput": { + "base": null, + "refs": { + } + }, + "GetDeploymentOutput": { + "base": null, + "refs": { + } + }, + "GetWorkloadInput": { + "base": null, + "refs": { + } + }, + "GetWorkloadOutput": { + "base": null, + "refs": { + } + }, + "InternalServerException": { + "base": "

An internal error has occurred. Retry your request, but if the problem persists, contact us with details by posting a question on re:Post.

", + "refs": { + } + }, + "KeyString": { + "base": null, + "refs": { + "DeploymentSpecifications$key": null + } + }, + "ListDeploymentEventsInput": { + "base": null, + "refs": { + } + }, + "ListDeploymentEventsOutput": { + "base": null, + "refs": { + } + }, + "ListDeploymentsInput": { + "base": null, + "refs": { + } + }, + "ListDeploymentsOutput": { + "base": null, + "refs": { + } + }, + "ListWorkloadDeploymentPatternsInput": { + "base": null, + "refs": { + } + }, + "ListWorkloadDeploymentPatternsOutput": { + "base": null, + "refs": { + } + }, + "ListWorkloadsInput": { + "base": null, + "refs": { + } + }, + "ListWorkloadsOutput": { + "base": null, + "refs": { + } + }, + "MaxDeploymentEventResults": { + "base": null, + "refs": { + "ListDeploymentEventsInput$maxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

" + } + }, + "MaxDeploymentResults": { + "base": null, + "refs": { + "ListDeploymentsInput$maxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

" + } + }, + "MaxWorkloadDeploymentPatternResults": { + "base": null, + "refs": { + "ListWorkloadDeploymentPatternsInput$maxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

" + } + }, + "MaxWorkloadResults": { + "base": null, + "refs": { + "ListWorkloadsInput$maxResults": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "ListDeploymentEventsInput$nextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "ListDeploymentEventsOutput$nextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "ListDeploymentsInput$nextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "ListDeploymentsOutput$nextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "ListWorkloadDeploymentPatternsInput$nextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "ListWorkloadDeploymentPatternsOutput$nextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "ListWorkloadsInput$nextToken": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "ListWorkloadsOutput$nextToken": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" + } + }, + "ResourceLimitException": { + "base": "

You have exceeded an Launch Wizard resource limit. For example, you might have too many deployments in progress.

", + "refs": { + } + }, + "ResourceNotFoundException": { + "base": "

The specified workload or deployment resource can't be found.

", + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "DeleteDeploymentOutput$statusReason": "

The reason for the deployment status.

", + "DeploymentData$name": "

The name of the deployment.

", + "DeploymentData$resourceGroup": "

The resource group of the deployment.

", + "DeploymentDataSummary$name": "

The name of the deployment

", + "DeploymentEventDataSummary$description": "

The description of the deployment event.

", + "DeploymentEventDataSummary$name": "

The name of the deployment event.

", + "DeploymentEventDataSummary$statusReason": "

The reason of the deployment event status.

", + "InternalServerException$message": null, + "ResourceLimitException$message": null, + "ResourceNotFoundException$message": null, + "ValidationException$message": null, + "WorkloadData$description": "

The description of a workload.

", + "WorkloadData$displayName": "

The display name of a workload.

", + "WorkloadData$documentationUrl": "

The URL of a workload document.

", + "WorkloadData$iconUrl": "

The URL of a workload icon.

", + "WorkloadData$statusMessage": "

The message about a workload's status.

", + "WorkloadDataSummary$displayName": "

The display name of the workload data.

", + "WorkloadDeploymentPatternDataSummary$description": "

The description of a workload deployment pattern.

", + "WorkloadDeploymentPatternDataSummary$displayName": "

The display name of a workload deployment pattern.

", + "WorkloadDeploymentPatternDataSummary$statusMessage": "

A message about a workload deployment pattern's status.

" + } + }, + "Timestamp": { + "base": null, + "refs": { + "DeploymentData$createdAt": "

The time the deployment was created.

", + "DeploymentData$deletedAt": "

The time the deployment was deleted.

", + "DeploymentDataSummary$createdAt": "

The time the deployment was created.

", + "DeploymentEventDataSummary$timestamp": "

The timestamp of the deployment event.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", + "refs": { + } + }, + "ValueString": { + "base": null, + "refs": { + "DeploymentSpecifications$value": null + } + }, + "WorkloadData": { + "base": "

Describes a workload.

", + "refs": { + "GetWorkloadOutput$workload": "

Information about the workload.

" + } + }, + "WorkloadDataSummary": { + "base": "

Describes workload data.

", + "refs": { + "WorkloadDataSummaryList$member": null + } + }, + "WorkloadDataSummaryList": { + "base": null, + "refs": { + "ListWorkloadsOutput$workloads": "

Information about the workloads.

" + } + }, + "WorkloadDeploymentPatternDataSummary": { + "base": "

Describes a workload deployment pattern.

", + "refs": { + "WorkloadDeploymentPatternDataSummaryList$member": null + } + }, + "WorkloadDeploymentPatternDataSummaryList": { + "base": null, + "refs": { + "ListWorkloadDeploymentPatternsOutput$workloadDeploymentPatterns": "

Describes the workload deployment patterns.

" + } + }, + "WorkloadDeploymentPatternStatus": { + "base": null, + "refs": { + "WorkloadDeploymentPatternDataSummary$status": "

The status of a workload deployment pattern.

" + } + }, + "WorkloadName": { + "base": null, + "refs": { + "CreateDeploymentInput$workloadName": "

The name of the workload. You can use the ListWorkloadDeploymentPatterns operation to discover supported values for this parameter.

", + "DeploymentData$workloadName": "

The name of the workload.

", + "DeploymentDataSummary$workloadName": "

The name of the workload.

", + "GetWorkloadInput$workloadName": "

The name of the workload.

", + "ListWorkloadDeploymentPatternsInput$workloadName": "

The name of the workload.

", + "WorkloadData$workloadName": "

The name of the workload.

", + "WorkloadDataSummary$workloadName": "

The name of the workload.

", + "WorkloadDeploymentPatternDataSummary$workloadName": "

The name of the workload.

" + } + }, + "WorkloadStatus": { + "base": null, + "refs": { + "WorkloadData$status": "

The status of a workload.

" + } + }, + "WorkloadVersionName": { + "base": null, + "refs": { + "WorkloadDeploymentPatternDataSummary$workloadVersionName": "

The name of the workload deployment pattern version.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://launchwizard-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://launchwizard-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://launchwizard.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://launchwizard.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,325 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://launchwizard.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + }, + { + "documentation": "Partition doesn't support DualStack", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/launch-wizard/2018-05-10/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/launch-wizard/2018-05-10/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,28 @@ +{ + "pagination": { + "ListDeploymentEvents": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "deploymentEvents" + }, + "ListDeployments": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "deployments" + }, + "ListWorkloadDeploymentPatterns": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "workloadDeploymentPatterns" + }, + "ListWorkloads": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "workloads" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/location/2020-11-19/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/location/2020-11-19/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/location/2020-11-19/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/location/2020-11-19/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -30,7 +30,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."} + "endpoint":{"hostPrefix":"cp.tracking."} }, "BatchDeleteDevicePositionHistory":{ "name":"BatchDeleteDevicePositionHistory", @@ -193,7 +193,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"geofencing."}, + "endpoint":{"hostPrefix":"cp.geofencing."}, "idempotent":true }, "CreateKey":{ @@ -213,7 +213,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."}, + "endpoint":{"hostPrefix":"cp.metadata."}, "idempotent":true }, "CreateMap":{ @@ -233,7 +233,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"maps."}, + "endpoint":{"hostPrefix":"cp.maps."}, "idempotent":true }, "CreatePlaceIndex":{ @@ -253,7 +253,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"places."}, + "endpoint":{"hostPrefix":"cp.places."}, "idempotent":true }, "CreateRouteCalculator":{ @@ -273,7 +273,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"routes."}, + "endpoint":{"hostPrefix":"cp.routes."}, "idempotent":true }, "CreateTracker":{ @@ -293,7 +293,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."}, + "endpoint":{"hostPrefix":"cp.tracking."}, "idempotent":true }, "DeleteGeofenceCollection":{ @@ -312,7 +312,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"geofencing."}, + "endpoint":{"hostPrefix":"cp.geofencing."}, "idempotent":true }, "DeleteKey":{ @@ -331,7 +331,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."}, + "endpoint":{"hostPrefix":"cp.metadata."}, "idempotent":true }, "DeleteMap":{ @@ -350,7 +350,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"maps."}, + "endpoint":{"hostPrefix":"cp.maps."}, "idempotent":true }, "DeletePlaceIndex":{ @@ -369,7 +369,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"places."}, + "endpoint":{"hostPrefix":"cp.places."}, "idempotent":true }, "DeleteRouteCalculator":{ @@ -388,7 +388,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"routes."}, + "endpoint":{"hostPrefix":"cp.routes."}, "idempotent":true }, "DeleteTracker":{ @@ -407,7 +407,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."}, + "endpoint":{"hostPrefix":"cp.tracking."}, "idempotent":true }, "DescribeGeofenceCollection":{ @@ -426,7 +426,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"geofencing."} + "endpoint":{"hostPrefix":"cp.geofencing."} }, "DescribeKey":{ "name":"DescribeKey", @@ -444,7 +444,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."} + "endpoint":{"hostPrefix":"cp.metadata."} }, "DescribeMap":{ "name":"DescribeMap", @@ -462,7 +462,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"maps."} + "endpoint":{"hostPrefix":"cp.maps."} }, "DescribePlaceIndex":{ "name":"DescribePlaceIndex", @@ -480,7 +480,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"places."} + "endpoint":{"hostPrefix":"cp.places."} }, "DescribeRouteCalculator":{ "name":"DescribeRouteCalculator", @@ -498,7 +498,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"routes."} + "endpoint":{"hostPrefix":"cp.routes."} }, "DescribeTracker":{ "name":"DescribeTracker", @@ -516,7 +516,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."} + "endpoint":{"hostPrefix":"cp.tracking."} }, "DisassociateTrackerConsumer":{ "name":"DisassociateTrackerConsumer", @@ -534,7 +534,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."} + "endpoint":{"hostPrefix":"cp.tracking."} }, "GetDevicePosition":{ "name":"GetDevicePosition", @@ -712,7 +712,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"geofencing."} + "endpoint":{"hostPrefix":"cp.geofencing."} }, "ListGeofences":{ "name":"ListGeofences", @@ -747,7 +747,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."} + "endpoint":{"hostPrefix":"cp.metadata."} }, "ListMaps":{ "name":"ListMaps", @@ -764,7 +764,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"maps."} + "endpoint":{"hostPrefix":"cp.maps."} }, "ListPlaceIndexes":{ "name":"ListPlaceIndexes", @@ -781,7 +781,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"places."} + "endpoint":{"hostPrefix":"cp.places."} }, "ListRouteCalculators":{ "name":"ListRouteCalculators", @@ -798,7 +798,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"routes."} + "endpoint":{"hostPrefix":"cp.routes."} }, "ListTagsForResource":{ "name":"ListTagsForResource", @@ -816,7 +816,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."} + "endpoint":{"hostPrefix":"cp.metadata."} }, "ListTrackerConsumers":{ "name":"ListTrackerConsumers", @@ -834,7 +834,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."} + "endpoint":{"hostPrefix":"cp.tracking."} }, "ListTrackers":{ "name":"ListTrackers", @@ -851,7 +851,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."} + "endpoint":{"hostPrefix":"cp.tracking."} }, "PutGeofence":{ "name":"PutGeofence", @@ -942,7 +942,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."} + "endpoint":{"hostPrefix":"cp.metadata."} }, "UntagResource":{ "name":"UntagResource", @@ -960,7 +960,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."}, + "endpoint":{"hostPrefix":"cp.metadata."}, "idempotent":true }, "UpdateGeofenceCollection":{ @@ -979,7 +979,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"geofencing."}, + "endpoint":{"hostPrefix":"cp.geofencing."}, "idempotent":true }, "UpdateKey":{ @@ -998,7 +998,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"metadata."}, + "endpoint":{"hostPrefix":"cp.metadata."}, "idempotent":true }, "UpdateMap":{ @@ -1017,7 +1017,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"maps."}, + "endpoint":{"hostPrefix":"cp.maps."}, "idempotent":true }, "UpdatePlaceIndex":{ @@ -1036,7 +1036,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"places."}, + "endpoint":{"hostPrefix":"cp.places."}, "idempotent":true }, "UpdateRouteCalculator":{ @@ -1055,7 +1055,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"routes."}, + "endpoint":{"hostPrefix":"cp.routes."}, "idempotent":true }, "UpdateTracker":{ @@ -1074,7 +1074,7 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"} ], - "endpoint":{"hostPrefix":"tracking."}, + "endpoint":{"hostPrefix":"cp.tracking."}, "idempotent":true } }, @@ -1900,6 +1900,7 @@ "members":{ "Description":{"shape":"ResourceDescription"}, "EventBridgeEnabled":{"shape":"Boolean"}, + "KmsKeyEnableGeospatialQueries":{"shape":"Boolean"}, "KmsKeyId":{"shape":"KmsKeyId"}, "PositionFiltering":{"shape":"PositionFiltering"}, "PricingPlan":{ @@ -2056,6 +2057,7 @@ "CollectionName":{"shape":"ResourceName"}, "CreateTime":{"shape":"Timestamp"}, "Description":{"shape":"ResourceDescription"}, + "GeofenceCount":{"shape":"DescribeGeofenceCollectionResponseGeofenceCountInteger"}, "KmsKeyId":{"shape":"KmsKeyId"}, "PricingPlan":{ "shape":"PricingPlan", @@ -2071,6 +2073,11 @@ "UpdateTime":{"shape":"Timestamp"} } }, + "DescribeGeofenceCollectionResponseGeofenceCountInteger":{ + "type":"integer", + "box":true, + "min":0 + }, "DescribeKeyRequest":{ "type":"structure", "required":["KeyName"], @@ -2241,6 +2248,7 @@ "CreateTime":{"shape":"Timestamp"}, "Description":{"shape":"ResourceDescription"}, "EventBridgeEnabled":{"shape":"Boolean"}, + "KmsKeyEnableGeospatialQueries":{"shape":"Boolean"}, "KmsKeyId":{"shape":"KmsKeyId"}, "PositionFiltering":{"shape":"PositionFiltering"}, "PricingPlan":{ @@ -2792,6 +2800,7 @@ "type":"structure", "required":["TrackerName"], "members":{ + "FilterGeometry":{"shape":"TrackingFilterGeometry"}, "MaxResults":{"shape":"ListDevicePositionsRequestMaxResultsInteger"}, "NextToken":{"shape":"Token"}, "TrackerName":{ @@ -3274,6 +3283,7 @@ "PlaceId":{"type":"string"}, "PlaceIndexSearchResultLimit":{ "type":"integer", + "box":true, "max":50, "min":1 }, @@ -3827,6 +3837,12 @@ "max":2000, "min":1 }, + "TrackingFilterGeometry":{ + "type":"structure", + "members":{ + "Polygon":{"shape":"LinearRings"} + } + }, "TravelMode":{ "type":"string", "enum":[ @@ -4059,6 +4075,7 @@ "members":{ "Description":{"shape":"ResourceDescription"}, "EventBridgeEnabled":{"shape":"Boolean"}, + "KmsKeyEnableGeospatialQueries":{"shape":"Boolean"}, "PositionFiltering":{"shape":"PositionFiltering"}, "PricingPlan":{ "shape":"PricingPlan", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/location/2020-11-19/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/location/2020-11-19/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/location/2020-11-19/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/location/2020-11-19/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -389,11 +389,14 @@ "CalculateRouteTruckModeOptions$AvoidTolls": "

Avoids tolls when calculating routes.

Default Value: false

Valid Values: false | true

", "CreateKeyRequest$NoExpiry": "

Optionally set to true to set no expiration time for the API key. One of NoExpiry or ExpireTime must be set.

", "CreateTrackerRequest$EventBridgeEnabled": "

Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

You do not need enable this feature to get ENTER and EXIT events for geofences with this tracker. Those events are always sent to EventBridge.

", + "CreateTrackerRequest$KmsKeyEnableGeospatialQueries": "

Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer managed key.

This parameter is only used if you are using a KMS customer managed key.

If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries feature will be disabled by default. This is because by using this feature, a representation of your device positions will not be encrypted using the your KMS managed key. The exact device position, however; is still encrypted using your managed key.

You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker.

", "DescribeTrackerResponse$EventBridgeEnabled": "

Whether UPDATE events from this tracker in EventBridge are enabled. If set to true these events will be sent to EventBridge.

", + "DescribeTrackerResponse$KmsKeyEnableGeospatialQueries": "

Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer managed key.

This parameter is only used if you are using a KMS customer managed key.

If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries feature will be disabled by default. This is because by using this feature, a representation of your device positions will not be encrypted using the your KMS managed key. The exact device position, however; is still encrypted using your managed key.

You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker.

", "Place$Interpolated": "

True if the result is interpolated from other known places.

False if the Place is a known place.

Not returned when the partner does not provide the information.

For example, returns False for an address location that is found in the partner data, but returns True if an address does not exist in the partner data and its location is calculated by interpolating between other known addresses.

", "UpdateKeyRequest$ForceUpdate": "

The boolean flag to be included for updating ExpireTime or Restrictions details.

Must be set to true to update an API key resource that has been used in the past 7 days.

False if force update is not preferred

Default value: False

", "UpdateKeyRequest$NoExpiry": "

Whether the API key should expire. Set to true to set the API key to have no expiration time.

", - "UpdateTrackerRequest$EventBridgeEnabled": "

Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

You do not need enable this feature to get ENTER and EXIT events for geofences with this tracker. Those events are always sent to EventBridge.

" + "UpdateTrackerRequest$EventBridgeEnabled": "

Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

You do not need enable this feature to get ENTER and EXIT events for geofences with this tracker. Those events are always sent to EventBridge.

", + "UpdateTrackerRequest$KmsKeyEnableGeospatialQueries": "

Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer managed key.

This parameter is only used if you are using a KMS customer managed key.

" } }, "BoundingBox": { @@ -683,6 +686,12 @@ "refs": { } }, + "DescribeGeofenceCollectionResponseGeofenceCountInteger": { + "base": null, + "refs": { + "DescribeGeofenceCollectionResponse$GeofenceCount": "

The number of geofences in the geofence collection.

" + } + }, "DescribeKeyRequest": { "base": null, "refs": { @@ -1046,7 +1055,8 @@ "LinearRings": { "base": null, "refs": { - "GeofenceGeometry$Polygon": "

A polygon is a list of linear rings which are each made up of a list of vertices.

Each vertex is a 2-dimensional point of the form: [longitude, latitude]. This is represented as an array of doubles of length 2 (so [double, double]).

An array of 4 or more vertices, where the first and last vertex are the same (to form a closed boundary), is called a linear ring. The linear ring vertices must be listed in counter-clockwise order around the ring’s interior. The linear ring is represented as an array of vertices, or an array of arrays of doubles ([[double, double], ...]).

A geofence consists of a single linear ring. To allow for future expansion, the Polygon parameter takes an array of linear rings, which is represented as an array of arrays of arrays of doubles ([[[double, double], ...], ...]).

A linear ring for use in geofences can consist of between 4 and 1,000 vertices.

" + "GeofenceGeometry$Polygon": "

A polygon is a list of linear rings which are each made up of a list of vertices.

Each vertex is a 2-dimensional point of the form: [longitude, latitude]. This is represented as an array of doubles of length 2 (so [double, double]).

An array of 4 or more vertices, where the first and last vertex are the same (to form a closed boundary), is called a linear ring. The linear ring vertices must be listed in counter-clockwise order around the ring’s interior. The linear ring is represented as an array of vertices, or an array of arrays of doubles ([[double, double], ...]).

A geofence consists of a single linear ring. To allow for future expansion, the Polygon parameter takes an array of linear rings, which is represented as an array of arrays of arrays of doubles ([[[double, double], ...], ...]).

A linear ring for use in geofences can consist of between 4 and 1,000 vertices.

", + "TrackingFilterGeometry$Polygon": "

The set of arrays which define the polygon. A polygon can have between 4 and 1000 vertices.

" } }, "ListDevicePositionsRequest": { @@ -1074,7 +1084,7 @@ "ListDevicePositionsResponseEntryList": { "base": null, "refs": { - "ListDevicePositionsResponse$Entries": "

Contains details about each device's last known position. These details includes the device ID, the time when the position was sampled on the device, the time that the service received the update, and the most recent coordinates.

" + "ListDevicePositionsResponse$Entries": "

Contains details about each device's last known position.

" } }, "ListGeofenceCollectionsRequest": { @@ -1835,7 +1845,7 @@ "DescribeRouteCalculatorResponse$DataSource": "

The data provider of traffic and road network data. Indicates one of the available providers:

  • Esri

  • Grab

  • Here

For more information about data providers, see Amazon Location Service data providers.

", "DescribeTrackerResponse$PricingPlanDataSource": "

No longer used. Always returns an empty string.

", "GetGeofenceResponse$Status": "

Identifies the state of the geofence. A geofence will hold one of the following states:

  • ACTIVE — The geofence has been indexed by the system.

  • PENDING — The geofence is being processed by the system.

  • FAILED — The geofence failed to be indexed by the system.

  • DELETED — The geofence has been deleted from the system index.

  • DELETING — The geofence is being deleted from the system index.

", - "GetMapGlyphsRequest$FontStack": "

A comma-separated list of fonts to load glyphs from in order of preference. For example, Noto Sans Regular, Arial Unicode.

Valid fonts stacks for Esri styles:

  • VectorEsriDarkGrayCanvas – Ubuntu Medium Italic | Ubuntu Medium | Ubuntu Italic | Ubuntu Regular | Ubuntu Bold

  • VectorEsriLightGrayCanvas – Ubuntu Italic | Ubuntu Regular | Ubuntu Light | Ubuntu Bold

  • VectorEsriTopographic – Noto Sans Italic | Noto Sans Regular | Noto Sans Bold | Noto Serif Regular | Roboto Condensed Light Italic

  • VectorEsriStreets – Arial Regular | Arial Italic | Arial Bold

  • VectorEsriNavigation – Arial Regular | Arial Italic | Arial Bold

Valid font stacks for HERE Technologies styles:

  • VectorHereContrast – Fira GO Regular | Fira GO Bold

  • VectorHereExplore, VectorHereExploreTruck, HybridHereExploreSatellite – Fira GO Italic | Fira GO Map | Fira GO Map Bold | Noto Sans CJK JP Bold | Noto Sans CJK JP Light | Noto Sans CJK JP Regular

Valid font stacks for GrabMaps styles:

  • VectorGrabStandardLight, VectorGrabStandardDark – Noto Sans Regular | Noto Sans Medium | Noto Sans Bold

Valid font stacks for Open Data styles:

  • VectorOpenDataStandardLight, VectorOpenDataStandardDark, VectorOpenDataVisualizationLight, VectorOpenDataVisualizationDark – Amazon Ember Regular,Noto Sans Regular | Amazon Ember Bold,Noto Sans Bold | Amazon Ember Medium,Noto Sans Medium | Amazon Ember Regular Italic,Noto Sans Italic | Amazon Ember Condensed RC Regular,Noto Sans Regular | Amazon Ember Condensed RC Bold,Noto Sans Bold | Amazon Ember Regular,Noto Sans Regular,Noto Sans Arabic Regular | Amazon Ember Condensed RC Bold,Noto Sans Bold,Noto Sans Arabic Condensed Bold | Amazon Ember Bold,Noto Sans Bold,Noto Sans Arabic Bold | Amazon Ember Regular Italic,Noto Sans Italic,Noto Sans Arabic Regular | Amazon Ember Condensed RC Regular,Noto Sans Regular,Noto Sans Arabic Condensed Regular | Amazon Ember Medium,Noto Sans Medium,Noto Sans Arabic Medium

The fonts used by the Open Data map styles are combined fonts that use Amazon Ember for most glyphs but Noto Sans for glyphs unsupported by Amazon Ember.

", + "GetMapGlyphsRequest$FontStack": "

A comma-separated list of fonts to load glyphs from in order of preference. For example, Noto Sans Regular, Arial Unicode.

Valid font stacks for Esri styles:

  • VectorEsriDarkGrayCanvas – Ubuntu Medium Italic | Ubuntu Medium | Ubuntu Italic | Ubuntu Regular | Ubuntu Bold

  • VectorEsriLightGrayCanvas – Ubuntu Italic | Ubuntu Regular | Ubuntu Light | Ubuntu Bold

  • VectorEsriTopographic – Noto Sans Italic | Noto Sans Regular | Noto Sans Bold | Noto Serif Regular | Roboto Condensed Light Italic

  • VectorEsriStreets – Arial Regular | Arial Italic | Arial Bold

  • VectorEsriNavigation – Arial Regular | Arial Italic | Arial Bold

Valid font stacks for HERE Technologies styles:

  • VectorHereContrast – Fira GO Regular | Fira GO Bold

  • VectorHereExplore, VectorHereExploreTruck, HybridHereExploreSatellite – Fira GO Italic | Fira GO Map | Fira GO Map Bold | Noto Sans CJK JP Bold | Noto Sans CJK JP Light | Noto Sans CJK JP Regular

Valid font stacks for GrabMaps styles:

  • VectorGrabStandardLight, VectorGrabStandardDark – Noto Sans Regular | Noto Sans Medium | Noto Sans Bold

Valid font stacks for Open Data styles:

  • VectorOpenDataStandardLight, VectorOpenDataStandardDark, VectorOpenDataVisualizationLight, VectorOpenDataVisualizationDark – Amazon Ember Regular,Noto Sans Regular | Amazon Ember Bold,Noto Sans Bold | Amazon Ember Medium,Noto Sans Medium | Amazon Ember Regular Italic,Noto Sans Italic | Amazon Ember Condensed RC Regular,Noto Sans Regular | Amazon Ember Condensed RC Bold,Noto Sans Bold | Amazon Ember Regular,Noto Sans Regular,Noto Sans Arabic Regular | Amazon Ember Condensed RC Bold,Noto Sans Bold,Noto Sans Arabic Condensed Bold | Amazon Ember Bold,Noto Sans Bold,Noto Sans Arabic Bold | Amazon Ember Regular Italic,Noto Sans Italic,Noto Sans Arabic Regular | Amazon Ember Condensed RC Regular,Noto Sans Regular,Noto Sans Arabic Condensed Regular | Amazon Ember Medium,Noto Sans Medium,Noto Sans Arabic Medium

The fonts used by the Open Data map styles are combined fonts that use Amazon Ember for most glyphs but Noto Sans for glyphs unsupported by Amazon Ember.

", "GetMapGlyphsResponse$CacheControl": "

The HTTP Cache-Control directive for the value.

", "GetMapGlyphsResponse$ContentType": "

The map glyph content type. For example, application/octet-stream.

", "GetMapSpritesResponse$CacheControl": "

The HTTP Cache-Control directive for the value.

", @@ -2027,6 +2037,12 @@ "ListTrackersResponse$NextToken": "

A pagination token indicating there are additional pages available. You can use the token in a following request to fetch the next set of results.

" } }, + "TrackingFilterGeometry": { + "base": "

The geomerty used to filter device positions.

", + "refs": { + "ListDevicePositionsRequest$FilterGeometry": "

The geomerty used to filter device positions.

" + } + }, "TravelMode": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/location/2020-11-19/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/location/2020-11-19/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/location/2020-11-19/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/location/2020-11-19/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://geo-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://geo-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://geo-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://geo-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://geo.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://geo.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://geo.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://geo.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,6 +40,24 @@ {"shape":"ServiceUnavailableException"} ] }, + "CreateDelivery":{ + "name":"CreateDelivery", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateDeliveryRequest"}, + "output":{"shape":"CreateDeliveryResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, "CreateExportTask":{ "name":"CreateExportTask", "http":{ @@ -57,6 +75,22 @@ {"shape":"ResourceAlreadyExistsException"} ] }, + "CreateLogAnomalyDetector":{ + "name":"CreateLogAnomalyDetector", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateLogAnomalyDetectorRequest"}, + "output":{"shape":"CreateLogAnomalyDetectorResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"}, + {"shape":"LimitExceededException"} + ] + }, "CreateLogGroup":{ "name":"CreateLogGroup", "http":{ @@ -114,6 +148,68 @@ {"shape":"ServiceUnavailableException"} ] }, + "DeleteDelivery":{ + "name":"DeleteDelivery", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDeliveryRequest"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, + "DeleteDeliveryDestination":{ + "name":"DeleteDeliveryDestination", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDeliveryDestinationRequest"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, + "DeleteDeliveryDestinationPolicy":{ + "name":"DeleteDeliveryDestinationPolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDeliveryDestinationPolicyRequest"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ] + }, + "DeleteDeliverySource":{ + "name":"DeleteDeliverySource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDeliverySourceRequest"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, "DeleteDestination":{ "name":"DeleteDestination", "http":{ @@ -128,6 +224,20 @@ {"shape":"ServiceUnavailableException"} ] }, + "DeleteLogAnomalyDetector":{ + "name":"DeleteLogAnomalyDetector", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteLogAnomalyDetectorRequest"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"} + ] + }, "DeleteLogGroup":{ "name":"DeleteLogGroup", "http":{ @@ -240,6 +350,51 @@ {"shape":"ServiceUnavailableException"} ] }, + "DescribeDeliveries":{ + "name":"DescribeDeliveries", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeDeliveriesRequest"}, + "output":{"shape":"DescribeDeliveriesResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "DescribeDeliveryDestinations":{ + "name":"DescribeDeliveryDestinations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeDeliveryDestinationsRequest"}, + "output":{"shape":"DescribeDeliveryDestinationsResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "DescribeDeliverySources":{ + "name":"DescribeDeliverySources", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeDeliverySourcesRequest"}, + "output":{"shape":"DescribeDeliverySourcesResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, "DescribeDestinations":{ "name":"DescribeDestinations", "http":{ @@ -404,6 +559,83 @@ {"shape":"ServiceUnavailableException"} ] }, + "GetDelivery":{ + "name":"GetDelivery", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDeliveryRequest"}, + "output":{"shape":"GetDeliveryResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetDeliveryDestination":{ + "name":"GetDeliveryDestination", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDeliveryDestinationRequest"}, + "output":{"shape":"GetDeliveryDestinationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetDeliveryDestinationPolicy":{ + "name":"GetDeliveryDestinationPolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDeliveryDestinationPolicyRequest"}, + "output":{"shape":"GetDeliveryDestinationPolicyResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetDeliverySource":{ + "name":"GetDeliverySource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDeliverySourceRequest"}, + "output":{"shape":"GetDeliverySourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetLogAnomalyDetector":{ + "name":"GetLogAnomalyDetector", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetLogAnomalyDetectorRequest"}, + "output":{"shape":"GetLogAnomalyDetectorResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"} + ] + }, "GetLogEvents":{ "name":"GetLogEvents", "http":{ @@ -462,6 +694,36 @@ {"shape":"ServiceUnavailableException"} ] }, + "ListAnomalies":{ + "name":"ListAnomalies", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListAnomaliesRequest"}, + "output":{"shape":"ListAnomaliesResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"} + ] + }, + "ListLogAnomalyDetectors":{ + "name":"ListLogAnomalyDetectors", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListLogAnomalyDetectorsRequest"}, + "output":{"shape":"ListLogAnomalyDetectorsResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -522,6 +784,55 @@ {"shape":"ServiceUnavailableException"} ] }, + "PutDeliveryDestination":{ + "name":"PutDeliveryDestination", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutDeliveryDestinationRequest"}, + "output":{"shape":"PutDeliveryDestinationResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "PutDeliveryDestinationPolicy":{ + "name":"PutDeliveryDestinationPolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutDeliveryDestinationPolicyRequest"}, + "output":{"shape":"PutDeliveryDestinationPolicyResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ] + }, + "PutDeliverySource":{ + "name":"PutDeliverySource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutDeliverySourceRequest"}, + "output":{"shape":"PutDeliverySourceResponse"}, + "errors":[ + {"shape":"ServiceUnavailableException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, "PutDestination":{ "name":"PutDestination", "http":{ @@ -735,9 +1046,43 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] + }, + "UpdateAnomaly":{ + "name":"UpdateAnomaly", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateAnomalyRequest"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"} + ] + }, + "UpdateLogAnomalyDetector":{ + "name":"UpdateLogAnomalyDetector", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateLogAnomalyDetectorRequest"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"OperationAbortedException"} + ] } }, "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "AccessPolicy":{ "type":"string", "min":1 @@ -776,6 +1121,94 @@ "min":1, "pattern":"[\\w+=/:,.@-]*" }, + "Anomalies":{ + "type":"list", + "member":{"shape":"Anomaly"} + }, + "Anomaly":{ + "type":"structure", + "required":[ + "anomalyId", + "patternId", + "anomalyDetectorArn", + "patternString", + "firstSeen", + "lastSeen", + "description", + "active", + "state", + "histogram", + "logSamples", + "patternTokens", + "logGroupArnList" + ], + "members":{ + "anomalyId":{"shape":"AnomalyId"}, + "patternId":{"shape":"PatternId"}, + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"}, + "patternString":{"shape":"PatternString"}, + "patternRegex":{"shape":"PatternRegex"}, + "priority":{"shape":"Priority"}, + "firstSeen":{"shape":"EpochMillis"}, + "lastSeen":{"shape":"EpochMillis"}, + "description":{"shape":"Description"}, + "active":{"shape":"Boolean"}, + "state":{"shape":"State"}, + "histogram":{"shape":"Histogram"}, + "logSamples":{"shape":"LogSamples"}, + "patternTokens":{"shape":"PatternTokens"}, + "logGroupArnList":{"shape":"LogGroupArnList"}, + "suppressed":{"shape":"Boolean"}, + "suppressedDate":{"shape":"EpochMillis"}, + "suppressedUntil":{"shape":"EpochMillis"}, + "isPatternLevelSuppression":{"shape":"Boolean"} + } + }, + "AnomalyDetector":{ + "type":"structure", + "members":{ + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"}, + "detectorName":{"shape":"DetectorName"}, + "logGroupArnList":{"shape":"LogGroupArnList"}, + "evaluationFrequency":{"shape":"EvaluationFrequency"}, + "filterPattern":{"shape":"FilterPattern"}, + "anomalyDetectorStatus":{"shape":"AnomalyDetectorStatus"}, + "kmsKeyId":{"shape":"KmsKeyId"}, + "creationTimeStamp":{"shape":"EpochMillis"}, + "lastModifiedTimeStamp":{"shape":"EpochMillis"}, + "anomalyVisibilityTime":{"shape":"AnomalyVisibilityTime"} + } + }, + "AnomalyDetectorArn":{ + "type":"string", + "min":1, + "pattern":"[\\w#+=/:,.@-]*" + }, + "AnomalyDetectorStatus":{ + "type":"string", + "enum":[ + "INITIALIZING", + "TRAINING", + "ANALYZING", + "FAILED", + "DELETED", + "PAUSED" + ] + }, + "AnomalyDetectors":{ + "type":"list", + "member":{"shape":"AnomalyDetector"} + }, + "AnomalyId":{ + "type":"string", + "max":36, + "min":36 + }, + "AnomalyVisibilityTime":{ + "type":"long", + "max":90, + "min":7 + }, "Arn":{"type":"string"}, "AssociateKmsKeyRequest":{ "type":"structure", @@ -786,6 +1219,7 @@ "resourceIdentifier":{"shape":"ResourceIdentifier"} } }, + "Boolean":{"type":"boolean"}, "CancelExportTaskRequest":{ "type":"structure", "required":["taskId"], @@ -799,6 +1233,31 @@ "min":36, "pattern":"\\S{36,128}" }, + "ConflictException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, + "Count":{"type":"long"}, + "CreateDeliveryRequest":{ + "type":"structure", + "required":[ + "deliverySourceName", + "deliveryDestinationArn" + ], + "members":{ + "deliverySourceName":{"shape":"DeliverySourceName"}, + "deliveryDestinationArn":{"shape":"Arn"}, + "tags":{"shape":"Tags"} + } + }, + "CreateDeliveryResponse":{ + "type":"structure", + "members":{ + "delivery":{"shape":"Delivery"} + } + }, "CreateExportTaskRequest":{ "type":"structure", "required":[ @@ -823,13 +1282,33 @@ "taskId":{"shape":"ExportTaskId"} } }, + "CreateLogAnomalyDetectorRequest":{ + "type":"structure", + "required":["logGroupArnList"], + "members":{ + "logGroupArnList":{"shape":"LogGroupArnList"}, + "detectorName":{"shape":"DetectorName"}, + "evaluationFrequency":{"shape":"EvaluationFrequency"}, + "filterPattern":{"shape":"FilterPattern"}, + "kmsKeyId":{"shape":"KmsKeyId"}, + "anomalyVisibilityTime":{"shape":"AnomalyVisibilityTime"}, + "tags":{"shape":"Tags"} + } + }, + "CreateLogAnomalyDetectorResponse":{ + "type":"structure", + "members":{ + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"} + } + }, "CreateLogGroupRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"}, "kmsKeyId":{"shape":"KmsKeyId"}, - "tags":{"shape":"Tags"} + "tags":{"shape":"Tags"}, + "logGroupClass":{"shape":"LogGroupClass"} } }, "CreateLogStreamRequest":{ @@ -880,6 +1359,34 @@ "logGroupIdentifier":{"shape":"LogGroupIdentifier"} } }, + "DeleteDeliveryDestinationPolicyRequest":{ + "type":"structure", + "required":["deliveryDestinationName"], + "members":{ + "deliveryDestinationName":{"shape":"DeliveryDestinationName"} + } + }, + "DeleteDeliveryDestinationRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"DeliveryDestinationName"} + } + }, + "DeleteDeliveryRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{"shape":"DeliveryId"} + } + }, + "DeleteDeliverySourceRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"DeliverySourceName"} + } + }, "DeleteDestinationRequest":{ "type":"structure", "required":["destinationName"], @@ -887,6 +1394,13 @@ "destinationName":{"shape":"DestinationName"} } }, + "DeleteLogAnomalyDetectorRequest":{ + "type":"structure", + "required":["anomalyDetectorArn"], + "members":{ + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"} + } + }, "DeleteLogGroupRequest":{ "type":"structure", "required":["logGroupName"], @@ -953,6 +1467,89 @@ "filterName":{"shape":"FilterName"} } }, + "Deliveries":{ + "type":"list", + "member":{"shape":"Delivery"} + }, + "Delivery":{ + "type":"structure", + "members":{ + "id":{"shape":"DeliveryId"}, + "arn":{"shape":"Arn"}, + "deliverySourceName":{"shape":"DeliverySourceName"}, + "deliveryDestinationArn":{"shape":"Arn"}, + "deliveryDestinationType":{"shape":"DeliveryDestinationType"}, + "tags":{"shape":"Tags"} + } + }, + "DeliveryDestination":{ + "type":"structure", + "members":{ + "name":{"shape":"DeliveryDestinationName"}, + "arn":{"shape":"Arn"}, + "deliveryDestinationType":{"shape":"DeliveryDestinationType"}, + "outputFormat":{"shape":"OutputFormat"}, + "deliveryDestinationConfiguration":{"shape":"DeliveryDestinationConfiguration"}, + "tags":{"shape":"Tags"} + } + }, + "DeliveryDestinationConfiguration":{ + "type":"structure", + "required":["destinationResourceArn"], + "members":{ + "destinationResourceArn":{"shape":"Arn"} + } + }, + "DeliveryDestinationName":{ + "type":"string", + "max":60, + "min":1, + "pattern":"[\\w-]*" + }, + "DeliveryDestinationPolicy":{ + "type":"string", + "max":51200, + "min":1 + }, + "DeliveryDestinationType":{ + "type":"string", + "enum":[ + "S3", + "CWL", + "FH" + ] + }, + "DeliveryDestinations":{ + "type":"list", + "member":{"shape":"DeliveryDestination"} + }, + "DeliveryId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[0-9A-Za-z]+$" + }, + "DeliverySource":{ + "type":"structure", + "members":{ + "name":{"shape":"DeliverySourceName"}, + "arn":{"shape":"Arn"}, + "resourceArns":{"shape":"ResourceArns"}, + "service":{"shape":"Service"}, + "logType":{"shape":"LogType"}, + "tags":{"shape":"Tags"} + } + }, + "DeliverySourceName":{ + "type":"string", + "max":60, + "min":1, + "pattern":"[\\w-]*" + }, + "DeliverySources":{ + "type":"list", + "member":{"shape":"DeliverySource"} + }, "Descending":{"type":"boolean"}, "DescribeAccountPoliciesRequest":{ "type":"structure", @@ -969,6 +1566,48 @@ "accountPolicies":{"shape":"AccountPolicies"} } }, + "DescribeDeliveriesRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "limit":{"shape":"DescribeLimit"} + } + }, + "DescribeDeliveriesResponse":{ + "type":"structure", + "members":{ + "deliveries":{"shape":"Deliveries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "DescribeDeliveryDestinationsRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "limit":{"shape":"DescribeLimit"} + } + }, + "DescribeDeliveryDestinationsResponse":{ + "type":"structure", + "members":{ + "deliveryDestinations":{"shape":"DeliveryDestinations"}, + "nextToken":{"shape":"NextToken"} + } + }, + "DescribeDeliverySourcesRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "limit":{"shape":"DescribeLimit"} + } + }, + "DescribeDeliverySourcesResponse":{ + "type":"structure", + "members":{ + "deliverySources":{"shape":"DeliverySources"}, + "nextToken":{"shape":"NextToken"} + } + }, "DescribeDestinationsRequest":{ "type":"structure", "members":{ @@ -1013,7 +1652,8 @@ "logGroupNamePattern":{"shape":"LogGroupNamePattern"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"}, - "includeLinkedAccounts":{"shape":"IncludeLinkedAccounts"} + "includeLinkedAccounts":{"shape":"IncludeLinkedAccounts"}, + "logGroupClass":{"shape":"LogGroupClass"} } }, "DescribeLogGroupsResponse":{ @@ -1127,6 +1767,10 @@ "nextToken":{"shape":"NextToken"} } }, + "Description":{ + "type":"string", + "min":1 + }, "Destination":{ "type":"structure", "members":{ @@ -1152,6 +1796,10 @@ "type":"list", "member":{"shape":"Destination"} }, + "DetectorName":{ + "type":"string", + "min":1 + }, "Dimensions":{ "type":"map", "key":{"shape":"DimensionsKey"}, @@ -1179,10 +1827,31 @@ "ByLogStream" ] }, + "DynamicTokenPosition":{"type":"integer"}, "EncryptionKey":{ "type":"string", "max":256 }, + "Enumerations":{ + "type":"map", + "key":{"shape":"TokenString"}, + "value":{"shape":"TokenValue"} + }, + "EpochMillis":{ + "type":"long", + "min":0 + }, + "EvaluationFrequency":{ + "type":"string", + "enum":[ + "ONE_MIN", + "FIVE_MIN", + "TEN_MIN", + "FIFTEEN_MIN", + "THIRTY_MIN", + "ONE_HOUR" + ] + }, "EventId":{"type":"string"}, "EventMessage":{ "type":"string", @@ -1330,6 +1999,79 @@ "lastUpdatedTime":{"shape":"Timestamp"} } }, + "GetDeliveryDestinationPolicyRequest":{ + "type":"structure", + "required":["deliveryDestinationName"], + "members":{ + "deliveryDestinationName":{"shape":"DeliveryDestinationName"} + } + }, + "GetDeliveryDestinationPolicyResponse":{ + "type":"structure", + "members":{ + "policy":{"shape":"Policy"} + } + }, + "GetDeliveryDestinationRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"DeliveryDestinationName"} + } + }, + "GetDeliveryDestinationResponse":{ + "type":"structure", + "members":{ + "deliveryDestination":{"shape":"DeliveryDestination"} + } + }, + "GetDeliveryRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{"shape":"DeliveryId"} + } + }, + "GetDeliveryResponse":{ + "type":"structure", + "members":{ + "delivery":{"shape":"Delivery"} + } + }, + "GetDeliverySourceRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"DeliverySourceName"} + } + }, + "GetDeliverySourceResponse":{ + "type":"structure", + "members":{ + "deliverySource":{"shape":"DeliverySource"} + } + }, + "GetLogAnomalyDetectorRequest":{ + "type":"structure", + "required":["anomalyDetectorArn"], + "members":{ + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"} + } + }, + "GetLogAnomalyDetectorResponse":{ + "type":"structure", + "members":{ + "detectorName":{"shape":"DetectorName"}, + "logGroupArnList":{"shape":"LogGroupArnList"}, + "evaluationFrequency":{"shape":"EvaluationFrequency"}, + "filterPattern":{"shape":"FilterPattern"}, + "anomalyDetectorStatus":{"shape":"AnomalyDetectorStatus"}, + "kmsKeyId":{"shape":"KmsKeyId"}, + "creationTimeStamp":{"shape":"EpochMillis"}, + "lastModifiedTimeStamp":{"shape":"EpochMillis"}, + "anomalyVisibilityTime":{"shape":"AnomalyVisibilityTime"} + } + }, "GetLogEventsRequest":{ "type":"structure", "required":["logStreamName"], @@ -1397,6 +2139,11 @@ "encryptionKey":{"shape":"EncryptionKey"} } }, + "Histogram":{ + "type":"map", + "key":{"shape":"Time"}, + "value":{"shape":"Count"} + }, "IncludeLinkedAccounts":{"type":"boolean"}, "InheritedProperties":{ "type":"list", @@ -1429,6 +2176,7 @@ "max":100, "min":1 }, + "Integer":{"type":"integer"}, "Interleaved":{"type":"boolean"}, "InvalidOperationException":{ "type":"structure", @@ -1459,6 +2207,47 @@ }, "exception":true }, + "ListAnomaliesLimit":{ + "type":"integer", + "max":50, + "min":1 + }, + "ListAnomaliesRequest":{ + "type":"structure", + "members":{ + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"}, + "suppressionState":{"shape":"SuppressionState"}, + "limit":{"shape":"ListAnomaliesLimit"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAnomaliesResponse":{ + "type":"structure", + "members":{ + "anomalies":{"shape":"Anomalies"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListLogAnomalyDetectorsLimit":{ + "type":"integer", + "max":50, + "min":1 + }, + "ListLogAnomalyDetectorsRequest":{ + "type":"structure", + "members":{ + "filterLogGroupArn":{"shape":"LogGroupArn"}, + "limit":{"shape":"ListLogAnomalyDetectorsLimit"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListLogAnomalyDetectorsResponse":{ + "type":"structure", + "members":{ + "anomalyDetectors":{"shape":"AnomalyDetectors"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -1489,6 +2278,10 @@ "deprecated":true, "deprecatedMessage":"Please use the generic tagging API model ListTagsForResourceRequest and ListTagsForResourceResponse" }, + "LogEvent":{ + "type":"string", + "min":1 + }, "LogEventIndex":{"type":"integer"}, "LogGroup":{ "type":"structure", @@ -1501,9 +2294,27 @@ "storedBytes":{"shape":"StoredBytes"}, "kmsKeyId":{"shape":"KmsKeyId"}, "dataProtectionStatus":{"shape":"DataProtectionStatus"}, - "inheritedProperties":{"shape":"InheritedProperties"} + "inheritedProperties":{"shape":"InheritedProperties"}, + "logGroupClass":{"shape":"LogGroupClass"} } }, + "LogGroupArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"[\\w#+=/:,.@-]*" + }, + "LogGroupArnList":{ + "type":"list", + "member":{"shape":"LogGroupArn"} + }, + "LogGroupClass":{ + "type":"string", + "enum":[ + "STANDARD", + "INFREQUENT_ACCESS" + ] + }, "LogGroupField":{ "type":"structure", "members":{ @@ -1551,6 +2362,10 @@ "value":{"shape":"Value"} }, "LogRecordPointer":{"type":"string"}, + "LogSamples":{ + "type":"list", + "member":{"shape":"LogEvent"} + }, "LogStream":{ "type":"structure", "members":{ @@ -1579,6 +2394,12 @@ "type":"list", "member":{"shape":"LogStream"} }, + "LogType":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[\\w]*" + }, "MalformedQueryException":{ "type":"structure", "members":{ @@ -1666,6 +2487,16 @@ "LastEventTime" ] }, + "OutputFormat":{ + "type":"string", + "enum":[ + "json", + "plain", + "w3c", + "raw", + "parquet" + ] + }, "OutputLogEvent":{ "type":"structure", "members":{ @@ -1678,11 +2509,43 @@ "type":"list", "member":{"shape":"OutputLogEvent"} }, + "PatternId":{ + "type":"string", + "max":32, + "min":32 + }, + "PatternRegex":{ + "type":"string", + "min":1 + }, + "PatternString":{ + "type":"string", + "min":1 + }, + "PatternToken":{ + "type":"structure", + "members":{ + "dynamicTokenPosition":{"shape":"DynamicTokenPosition"}, + "isDynamic":{"shape":"Boolean"}, + "tokenString":{"shape":"TokenString"}, + "enumerations":{"shape":"Enumerations"} + } + }, + "PatternTokens":{ + "type":"list", + "member":{"shape":"PatternToken"} + }, "Percentage":{ "type":"integer", "max":100, "min":0 }, + "Policy":{ + "type":"structure", + "members":{ + "deliveryDestinationPolicy":{"shape":"DeliveryDestinationPolicy"} + } + }, "PolicyDocument":{ "type":"string", "max":5120, @@ -1693,6 +2556,10 @@ "type":"string", "enum":["DATA_PROTECTION_POLICY"] }, + "Priority":{ + "type":"string", + "min":1 + }, "PutAccountPolicyRequest":{ "type":"structure", "required":[ @@ -1732,6 +2599,62 @@ "lastUpdatedTime":{"shape":"Timestamp"} } }, + "PutDeliveryDestinationPolicyRequest":{ + "type":"structure", + "required":[ + "deliveryDestinationName", + "deliveryDestinationPolicy" + ], + "members":{ + "deliveryDestinationName":{"shape":"DeliveryDestinationName"}, + "deliveryDestinationPolicy":{"shape":"DeliveryDestinationPolicy"} + } + }, + "PutDeliveryDestinationPolicyResponse":{ + "type":"structure", + "members":{ + "policy":{"shape":"Policy"} + } + }, + "PutDeliveryDestinationRequest":{ + "type":"structure", + "required":[ + "name", + "deliveryDestinationConfiguration" + ], + "members":{ + "name":{"shape":"DeliveryDestinationName"}, + "outputFormat":{"shape":"OutputFormat"}, + "deliveryDestinationConfiguration":{"shape":"DeliveryDestinationConfiguration"}, + "tags":{"shape":"Tags"} + } + }, + "PutDeliveryDestinationResponse":{ + "type":"structure", + "members":{ + "deliveryDestination":{"shape":"DeliveryDestination"} + } + }, + "PutDeliverySourceRequest":{ + "type":"structure", + "required":[ + "name", + "resourceArn", + "logType" + ], + "members":{ + "name":{"shape":"DeliverySourceName"}, + "resourceArn":{"shape":"Arn"}, + "logType":{"shape":"LogType"}, + "tags":{"shape":"Tags"} + } + }, + "PutDeliverySourceResponse":{ + "type":"structure", + "members":{ + "deliverySource":{"shape":"DeliverySource"} + } + }, "PutDestinationPolicyRequest":{ "type":"structure", "required":[ @@ -1970,6 +2893,10 @@ }, "exception":true }, + "ResourceArns":{ + "type":"list", + "member":{"shape":"Arn"} + }, "ResourceIdentifier":{ "type":"string", "max":2048, @@ -2028,6 +2955,18 @@ "type":"string", "min":1 }, + "Service":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[\\w]*" + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "ServiceUnavailableException":{ "type":"structure", "members":{ @@ -2091,6 +3030,14 @@ "queryId":{"shape":"QueryId"} } }, + "State":{ + "type":"string", + "enum":[ + "Active", + "Suppressed", + "Baseline" + ] + }, "StatsValue":{"type":"double"}, "StopQueryRequest":{ "type":"structure", @@ -2126,6 +3073,35 @@ "member":{"shape":"SubscriptionFilter"} }, "Success":{"type":"boolean"}, + "SuppressionPeriod":{ + "type":"structure", + "members":{ + "value":{"shape":"Integer"}, + "suppressionUnit":{"shape":"SuppressionUnit"} + } + }, + "SuppressionState":{ + "type":"string", + "enum":[ + "SUPPRESSED", + "UNSUPPRESSED" + ] + }, + "SuppressionType":{ + "type":"string", + "enum":[ + "LIMITED", + "INFINITE" + ] + }, + "SuppressionUnit":{ + "type":"string", + "enum":[ + "SECONDS", + "MINUTES", + "HOURS" + ] + }, "TagKey":{ "type":"string", "max":128, @@ -2206,11 +3182,26 @@ "matches":{"shape":"MetricFilterMatches"} } }, + "ThrottlingException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, + "Time":{ + "type":"string", + "min":1 + }, "Timestamp":{ "type":"long", "min":0 }, "Token":{"type":"string"}, + "TokenString":{ + "type":"string", + "min":1 + }, + "TokenValue":{"type":"long"}, "TooManyTagsException":{ "type":"structure", "members":{ @@ -2250,6 +3241,37 @@ "tagKeys":{"shape":"TagKeyList"} } }, + "UpdateAnomalyRequest":{ + "type":"structure", + "required":["anomalyDetectorArn"], + "members":{ + "anomalyId":{"shape":"AnomalyId"}, + "patternId":{"shape":"PatternId"}, + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"}, + "suppressionType":{"shape":"SuppressionType"}, + "suppressionPeriod":{"shape":"SuppressionPeriod"} + } + }, + "UpdateLogAnomalyDetectorRequest":{ + "type":"structure", + "required":[ + "anomalyDetectorArn", + "enabled" + ], + "members":{ + "anomalyDetectorArn":{"shape":"AnomalyDetectorArn"}, + "evaluationFrequency":{"shape":"EvaluationFrequency"}, + "filterPattern":{"shape":"FilterPattern"}, + "anomalyVisibilityTime":{"shape":"AnomalyVisibilityTime"}, + "enabled":{"shape":"Boolean"} + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "Value":{"type":"string"} } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,12 +4,19 @@ "operations": { "AssociateKmsKey": "

Associates the specified KMS key with either one log group in the account, or with all stored CloudWatch Logs query insights results in the account.

When you use AssociateKmsKey, you specify either the logGroupName parameter or the resourceIdentifier parameter. You can't specify both of those parameters in the same operation.

  • Specify the logGroupName parameter to cause all log events stored in the log group to be encrypted with that key. Only the log events ingested after the key is associated are encrypted with that key.

    Associating a KMS key with a log group overrides any existing associations between the log group and a KMS key. After a KMS key is associated with a log group, all newly ingested data for the log group is encrypted using the KMS key. This association is stored as long as the data encrypted with the KMS key is still within CloudWatch Logs. This enables CloudWatch Logs to decrypt this data whenever it is requested.

    Associating a key with a log group does not cause the results of queries of that log group to be encrypted with that key. To have query results encrypted with a KMS key, you must use an AssociateKmsKey operation with the resourceIdentifier parameter that specifies a query-result resource.

  • Specify the resourceIdentifier parameter with a query-result resource, to use that key to encrypt the stored results of all future StartQuery operations in the account. The response from a GetQueryResults operation will still return the query results in plain text.

    Even if you have not associated a key with your query results, the query results are encrypted when stored, using the default CloudWatch Logs method.

    If you run a query from a monitoring account that queries logs in a source account, the query results key from the monitoring account, if any, is used.

If you delete the key that is used to encrypt log events or log group query results, then all the associated stored log events or query results that were encrypted with that key will be unencryptable and unusable.

CloudWatch Logs supports only symmetric KMS keys. Do not use an associate an asymmetric KMS key with your log group or query results. For more information, see Using Symmetric and Asymmetric Keys.

It can take up to 5 minutes for this operation to take effect.

If you attempt to associate a KMS key with a log group but the KMS key does not exist or the KMS key is disabled, you receive an InvalidParameterException error.

", "CancelExportTask": "

Cancels the specified export task.

The task must be in the PENDING or RUNNING state.

", + "CreateDelivery": "

Creates a delivery. A delivery is a connection between a logical delivery source and a logical delivery destination that you have already created.

Only some Amazon Web Services services support being configured as a delivery source using this operation. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

A delivery destination can represent a log group in CloudWatch Logs, an Amazon S3 bucket, or a delivery stream in Kinesis Data Firehose.

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Use CreateDelivery to create a delivery by pairing exactly one delivery source and one delivery destination.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

You can't update an existing delivery. You can only create and delete deliveries.

", "CreateExportTask": "

Creates an export task so that you can efficiently export data from a log group to an Amazon S3 bucket. When you perform a CreateExportTask operation, you must use credentials that have permission to write to the S3 bucket that you specify as the destination.

Exporting log data to S3 buckets that are encrypted by KMS is supported. Exporting log data to Amazon S3 buckets that have S3 Object Lock enabled with a retention period is also supported.

Exporting to S3 buckets that are encrypted with AES-256 is supported.

This is an asynchronous call. If all the required information is provided, this operation initiates an export task and responds with the ID of the task. After the task has started, you can use DescribeExportTasks to get the status of the export task. Each account can only have one active (RUNNING or PENDING) export task at a time. To cancel an export task, use CancelExportTask.

You can export logs from multiple log groups or multiple time ranges to the same S3 bucket. To separate log data for each export task, specify a prefix to be used as the Amazon S3 key prefix for all exported objects.

Time-based sorting on chunks of log data inside an exported file is not guaranteed. You can sort the exported log field data by using Linux utilities.

", + "CreateLogAnomalyDetector": "

Creates an anomaly detector that regularly scans one or more log groups and look for patterns and anomalies in the logs.

An anomaly detector can help surface issues by automatically discovering anomalies in your log event traffic. An anomaly detector uses machine learning algorithms to scan log events and find patterns. A pattern is a shared text structure that recurs among your log fields. Patterns provide a useful tool for analyzing large sets of logs because a large number of log events can often be compressed into a few patterns.

The anomaly detector uses pattern recognition to find anomalies, which are unusual log events. It uses the evaluationFrequency to compare current log events and patterns with trained baselines.

Fields within a pattern are called tokens. Fields that vary within a pattern, such as a request ID or timestamp, are referred to as dynamic tokens and represented by <*>.

The following is an example of a pattern:

[INFO] Request time: <*> ms

This pattern represents log events like [INFO] Request time: 327 ms and other similar log events that differ only by the number, in this csse 327. When the pattern is displayed, the different numbers are replaced by <*>

Any parts of log events that are masked as sensitive data are not scanned for anomalies. For more information about masking sensitive data, see Help protect sensitive log data with masking.

", "CreateLogGroup": "

Creates a log group with the specified name. You can create up to 1,000,000 log groups per Region per account.

You must use the following guidelines when naming a log group:

  • Log group names must be unique within a Region for an Amazon Web Services account.

  • Log group names can be between 1 and 512 characters long.

  • Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), '.' (period), and '#' (number sign)

When you create a log group, by default the log events in the log group do not expire. To set a retention policy so that events expire and are deleted after a specified time, use PutRetentionPolicy.

If you associate an KMS key with the log group, ingested data is encrypted using the KMS key. This association is stored as long as the data encrypted with the KMS key is still within CloudWatch Logs. This enables CloudWatch Logs to decrypt this data whenever it is requested.

If you attempt to associate a KMS key with the log group but the KMS key does not exist or the KMS key is disabled, you receive an InvalidParameterException error.

CloudWatch Logs supports only symmetric KMS keys. Do not associate an asymmetric KMS key with your log group. For more information, see Using Symmetric and Asymmetric Keys.

", "CreateLogStream": "

Creates a log stream for the specified log group. A log stream is a sequence of log events that originate from a single source, such as an application instance or a resource that is being monitored.

There is no limit on the number of log streams that you can create for a log group. There is a limit of 50 TPS on CreateLogStream operations, after which transactions are throttled.

You must use the following guidelines when naming a log stream:

  • Log stream names must be unique within the log group.

  • Log stream names can be between 1 and 512 characters long.

  • Don't use ':' (colon) or '*' (asterisk) characters.

", "DeleteAccountPolicy": "

Deletes a CloudWatch Logs account policy.

To use this operation, you must be signed on with the logs:DeleteDataProtectionPolicy and logs:DeleteAccountPolicy permissions.

", "DeleteDataProtectionPolicy": "

Deletes the data protection policy from the specified log group.

For more information about data protection policies, see PutDataProtectionPolicy.

", + "DeleteDelivery": "

Deletes s delivery. A delivery is a connection between a logical delivery source and a logical delivery destination. Deleting a delivery only deletes the connection between the delivery source and delivery destination. It does not delete the delivery destination or the delivery source.

", + "DeleteDeliveryDestination": "

Deletes a delivery destination. A delivery is a connection between a logical delivery source and a logical delivery destination.

You can't delete a delivery destination if any current deliveries are associated with it. To find whether any deliveries are associated with this delivery destination, use the DescribeDeliveries operation and check the deliveryDestinationArn field in the results.

", + "DeleteDeliveryDestinationPolicy": "

Deletes a delivery destination policy. For more information about these policies, see PutDeliveryDestinationPolicy.

", + "DeleteDeliverySource": "

Deletes a delivery source. A delivery is a connection between a logical delivery source and a logical delivery destination.

You can't delete a delivery source if any current deliveries are associated with it. To find whether any deliveries are associated with this delivery source, use the DescribeDeliveries operation and check the deliverySourceName field in the results.

", "DeleteDestination": "

Deletes the specified destination, and eventually disables all the subscription filters that publish to it. This operation does not delete the physical resource encapsulated by the destination.

", + "DeleteLogAnomalyDetector": "

Deletes the specified CloudWatch Logs anomaly detector.

", "DeleteLogGroup": "

Deletes the specified log group and permanently deletes all the archived log events associated with the log group.

", "DeleteLogStream": "

Deletes the specified log stream and permanently deletes all the archived log events associated with the log stream.

", "DeleteMetricFilter": "

Deletes the specified metric filter.

", @@ -18,6 +25,9 @@ "DeleteRetentionPolicy": "

Deletes the specified retention policy.

Log events do not expire if they belong to log groups without a retention policy.

", "DeleteSubscriptionFilter": "

Deletes the specified subscription filter.

", "DescribeAccountPolicies": "

Returns a list of all CloudWatch Logs account policies in the account.

", + "DescribeDeliveries": "

Retrieves a list of the deliveries that have been created in the account.

", + "DescribeDeliveryDestinations": "

Retrieves a list of the delivery destinations that have been created in the account.

", + "DescribeDeliverySources": "

Retrieves a list of the delivery sources that have been created in the account.

", "DescribeDestinations": "

Lists all your destinations. The results are ASCII-sorted by destination name.

", "DescribeExportTasks": "

Lists the specified export tasks. You can list all your export tasks or filter the results based on task ID or task status.

", "DescribeLogGroups": "

Lists the specified log groups. You can list all your log groups or filter the results by prefix. The results are ASCII-sorted by log group name.

CloudWatch Logs doesn’t support IAM policies that control access to the DescribeLogGroups action by using the aws:ResourceTag/key-name condition key. Other CloudWatch Logs actions do support the use of the aws:ResourceTag/key-name condition key to control access. For more information about using tags to control access, see Controlling access to Amazon Web Services resources using tags.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

", @@ -30,14 +40,24 @@ "DisassociateKmsKey": "

Disassociates the specified KMS key from the specified log group or from all CloudWatch Logs Insights query results in the account.

When you use DisassociateKmsKey, you specify either the logGroupName parameter or the resourceIdentifier parameter. You can't specify both of those parameters in the same operation.

  • Specify the logGroupName parameter to stop using the KMS key to encrypt future log events ingested and stored in the log group. Instead, they will be encrypted with the default CloudWatch Logs method. The log events that were ingested while the key was associated with the log group are still encrypted with that key. Therefore, CloudWatch Logs will need permissions for the key whenever that data is accessed.

  • Specify the resourceIdentifier parameter with the query-result resource to stop using the KMS key to encrypt the results of all future StartQuery operations in the account. They will instead be encrypted with the default CloudWatch Logs method. The results from queries that ran while the key was associated with the account are still encrypted with that key. Therefore, CloudWatch Logs will need permissions for the key whenever that data is accessed.

It can take up to 5 minutes for this operation to take effect.

", "FilterLogEvents": "

Lists log events from the specified log group. You can list all the log events or filter the results using a filter pattern, a time range, and the name of the log stream.

You must have the logs:FilterLogEvents permission to perform this operation.

You can specify the log group to search by using either logGroupIdentifier or logGroupName. You must include one of these two parameters, but you can't include both.

By default, this operation returns as many log events as can fit in 1 MB (up to 10,000 log events) or all the events found within the specified time range. If the results include a token, that means there are more log events available. You can get additional results by specifying the token in a subsequent call. This operation can return empty results while there are more log events available through the token.

The returned log events are sorted by event timestamp, the timestamp when the event was ingested by CloudWatch Logs, and the ID of the PutLogEvents request.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

", "GetDataProtectionPolicy": "

Returns information about a log group data protection policy.

", + "GetDelivery": "

Returns complete information about one delivery. A delivery is a connection between a logical delivery source and a logical delivery destination

You need to specify the delivery id in this operation. You can find the IDs of the deliveries in your account with the DescribeDeliveries operation.

", + "GetDeliveryDestination": "

Retrieves complete information about one delivery destination.

", + "GetDeliveryDestinationPolicy": "

Retrieves the delivery destination policy assigned to the delivery destination that you specify. For more information about delivery destinations and their policies, see PutDeliveryDestinationPolicy.

", + "GetDeliverySource": "

Retrieves complete information about one delivery source.

", + "GetLogAnomalyDetector": "

Retrieves information about the log anomaly detector that you specify.

", "GetLogEvents": "

Lists log events from the specified log stream. You can list all of the log events or filter using a time range.

By default, this operation returns as many log events as can fit in a response size of 1MB (up to 10,000 log events). You can get additional log events by specifying one of the tokens in a subsequent call. This operation can return empty results while there are more log events available through the token.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

You can specify the log group to search by using either logGroupIdentifier or logGroupName. You must include one of these two parameters, but you can't include both.

", "GetLogGroupFields": "

Returns a list of the fields that are included in log events in the specified log group. Includes the percentage of log events that contain each field. The search is limited to a time period that you specify.

You can specify the log group to search by using either logGroupIdentifier or logGroupName. You must specify one of these parameters, but you can't specify both.

In the results, fields that start with @ are fields generated by CloudWatch Logs. For example, @timestamp is the timestamp of each log event. For more information about the fields that are generated by CloudWatch logs, see Supported Logs and Discovered Fields.

The response results are sorted by the frequency percentage, starting with the highest percentage.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

", "GetLogRecord": "

Retrieves all of the fields and values of a single log event. All fields are retrieved, even if the original query that produced the logRecordPointer retrieved only a subset of fields. Fields are returned as field name/field value pairs.

The full unparsed log event is returned within @message.

", - "GetQueryResults": "

Returns the results from the specified query.

Only the fields requested in the query are returned, along with a @ptr field, which is the identifier for the log record. You can use the value of @ptr in a GetLogRecord operation to get the full log record.

GetQueryResults does not start running a query. To run a query, use StartQuery.

If the value of the Status field in the output is Running, this operation returns only partial results. If you see a value of Scheduled or Running for the status, you can retry the operation later to see the final results.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account to start queries in linked source accounts. For more information, see CloudWatch cross-account observability.

", + "GetQueryResults": "

Returns the results from the specified query.

Only the fields requested in the query are returned, along with a @ptr field, which is the identifier for the log record. You can use the value of @ptr in a GetLogRecord operation to get the full log record.

GetQueryResults does not start running a query. To run a query, use StartQuery. For more information about how long results of previous queries are available, see CloudWatch Logs quotas.

If the value of the Status field in the output is Running, this operation returns only partial results. If you see a value of Scheduled or Running for the status, you can retry the operation later to see the final results.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account to start queries in linked source accounts. For more information, see CloudWatch cross-account observability.

", + "ListAnomalies": "

Returns a list of anomalies that log anomaly detectors have found. For details about the structure format of each anomaly object that is returned, see the example in this section.

", + "ListLogAnomalyDetectors": "

Retrieves a list of the log anomaly detectors in the account.

", "ListTagsForResource": "

Displays the tags associated with a CloudWatch Logs resource. Currently, log groups and destinations support tagging.

", "ListTagsLogGroup": "

The ListTagsLogGroup operation is on the path to deprecation. We recommend that you use ListTagsForResource instead.

Lists the tags for the specified log group.

", "PutAccountPolicy": "

Creates an account-level data protection policy that applies to all log groups in the account. A data protection policy can help safeguard sensitive data that's ingested by your log groups by auditing and masking the sensitive log data. Each account can have only one account-level policy.

Sensitive data is detected and masked when it is ingested into a log group. When you set a data protection policy, log events ingested into the log groups before that time are not masked.

If you use PutAccountPolicy to create a data protection policy for your whole account, it applies to both existing log groups and all log groups that are created later in this account. The account policy is applied to existing log groups with eventual consistency. It might take up to 5 minutes before sensitive data in existing log groups begins to be masked.

By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks. A user who has the logs:Unmask permission can use a GetLogEvents or FilterLogEvents operation with the unmask parameter set to true to view the unmasked log events. Users with the logs:Unmask can also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs Insights query with the unmask query command.

For more information, including a list of types of data that can be audited and masked, see Protect sensitive log data with masking.

To use the PutAccountPolicy operation, you must be signed on with the logs:PutDataProtectionPolicy and logs:PutAccountPolicy permissions.

The PutAccountPolicy operation applies to all log groups in the account. You can also use PutDataProtectionPolicy to create a data protection policy that applies to just one log group. If a log group has its own data protection policy and the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term specified in either policy is masked.

", "PutDataProtectionPolicy": "

Creates a data protection policy for the specified log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data.

Sensitive data is detected and masked when it is ingested into the log group. When you set a data protection policy, log events ingested into the log group before that time are not masked.

By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks. A user who has the logs:Unmask permission can use a GetLogEvents or FilterLogEvents operation with the unmask parameter set to true to view the unmasked log events. Users with the logs:Unmask can also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs Insights query with the unmask query command.

For more information, including a list of types of data that can be audited and masked, see Protect sensitive log data with masking.

The PutDataProtectionPolicy operation applies to only the specified log group. You can also use PutAccountPolicy to create an account-level data protection policy that applies to all log groups in the account, including both existing log groups and log groups that are created level. If a log group has its own data protection policy and the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term specified in either policy is masked.

", + "PutDeliveryDestination": "

Creates or updates a logical delivery destination. A delivery destination is an Amazon Web Services resource that represents an Amazon Web Services service that logs can be sent to. CloudWatch Logs, Amazon S3, and Kinesis Data Firehose are supported as logs delivery destinations.

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Use PutDeliveryDestination to create a delivery destination, which is a logical object that represents the actual delivery destination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Use CreateDelivery to create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

If you use this operation to update an existing delivery destination, all the current delivery destination parameters are overwritten with the new parameter values that you specify.

", + "PutDeliveryDestinationPolicy": "

Creates and assigns an IAM policy that grants permissions to CloudWatch Logs to deliver logs cross-account to a specified destination in this account. To configure the delivery of logs from an Amazon Web Services service in another account to a logs delivery destination in the current account, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • Use this operation in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

The contents of the policy must include two statements. One statement enables general logs delivery, and the other allows delivery to the chosen destination. See the examples for the needed policies.

", + "PutDeliverySource": "

Creates or updates a logical delivery source. A delivery source represents an Amazon Web Services resource that sends logs to an logs delivery destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.

To configure logs delivery between a delivery destination and an Amazon Web Services service that is supported as a delivery source, you must do the following:

  • Use PutDeliverySource to create a delivery source, which is a logical object that represents the resource that is actually sending the logs.

  • Use PutDeliveryDestination to create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Use CreateDelivery to create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

If you use this operation to update an existing delivery source, all the current delivery source parameters are overwritten with the new parameter values that you specify.

", "PutDestination": "

Creates or updates a destination. This operation is used only to create destinations for cross-account subscriptions.

A destination encapsulates a physical resource (such as an Amazon Kinesis stream). With a destination, you can subscribe to a real-time stream of log events for a different account, ingested using PutLogEvents.

Through an access policy, a destination controls what is written to it. By default, PutDestination does not set any access policy with the destination, which means a cross-account user cannot call PutSubscriptionFilter against this destination. To enable this, the destination owner must call PutDestinationPolicy after PutDestination.

To perform a PutDestination operation, you must also have the iam:PassRole permission.

", "PutDestinationPolicy": "

Creates or updates an access policy associated with an existing destination. An access policy is an IAM policy document that is used to authorize claims to register a subscription filter against a given destination.

", "PutLogEvents": "

Uploads a batch of log events to the specified log stream.

The sequence token is now ignored in PutLogEvents actions. PutLogEvents actions are always accepted and never return InvalidSequenceTokenException or DataAlreadyAcceptedException even if the sequence token is not valid. You can use parallel PutLogEvents actions on the same log stream.

The batch of events must satisfy the following constraints:

  • The maximum batch size is 1,048,576 bytes. This size is calculated as the sum of all event messages in UTF-8, plus 26 bytes for each log event.

  • None of the log events in the batch can be more than 2 hours in the future.

  • None of the log events in the batch can be more than 14 days in the past. Also, none of the log events can be from earlier than the retention period of the log group.

  • The log events in the batch must be in chronological order by their timestamp. The timestamp is the time that the event occurred, expressed as the number of milliseconds after Jan 1, 1970 00:00:00 UTC. (In Amazon Web Services Tools for PowerShell and the Amazon Web Services SDK for .NET, the timestamp is specified in .NET format: yyyy-mm-ddThh:mm:ss. For example, 2017-09-15T13:45:30.)

  • A batch of log events in a single request cannot span more than 24 hours. Otherwise, the operation fails.

  • Each log event can be no larger than 256 KB.

  • The maximum number of log events in a batch is 10,000.

  • The quota of five requests per second per log stream has been removed. Instead, PutLogEvents actions are throttled based on a per-second per-account quota. You can request an increase to the per-second throttling quota by using the Service Quotas service.

If a call to PutLogEvents returns \"UnrecognizedClientException\" the most likely cause is a non-valid Amazon Web Services access key ID or secret key.

", @@ -52,9 +72,16 @@ "TagResource": "

Assigns one or more tags (key-value pairs) to the specified CloudWatch Logs resource. Currently, the only CloudWatch Logs resources that can be tagged are log groups and destinations.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a resource that already has tags. If you specify a new tag key for the alarm, this tag is appended to the list of tags associated with the alarm. If you specify a tag key that is already associated with the alarm, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a CloudWatch Logs resource.

", "TestMetricFilter": "

Tests the filter pattern of a metric filter against a sample of log event messages. You can use this operation to validate the correctness of a metric filter pattern.

", "UntagLogGroup": "

The UntagLogGroup operation is on the path to deprecation. We recommend that you use UntagResource instead.

Removes the specified tags from the specified log group.

To list the tags for a log group, use ListTagsForResource. To add tags, use TagResource.

CloudWatch Logs doesn’t support IAM policies that prevent users from assigning specified tags to log groups using the aws:Resource/key-name or aws:TagKeys condition keys.

", - "UntagResource": "

Removes one or more tags from the specified resource.

" + "UntagResource": "

Removes one or more tags from the specified resource.

", + "UpdateAnomaly": "

Use this operation to suppress anomaly detection for a specified anomaly or pattern. If you suppress an anomaly, CloudWatch Logs won’t report new occurrences of that anomaly and won't update that anomaly with new data. If you suppress a pattern, CloudWatch Logs won’t report any anomalies related to that pattern.

You must specify either anomalyId or patternId, but you can't specify both parameters in the same operation.

If you have previously used this operation to suppress detection of a pattern or anomaly, you can use it again to cause CloudWatch Logs to end the suppression. To do this, use this operation and specify the anomaly or pattern to stop suppressing, and omit the suppressionType and suppressionPeriod parameters.

", + "UpdateLogAnomalyDetector": "

Updates an existing log anomaly detector.

" }, "shapes": { + "AccessDeniedException": { + "base": "

You don't have sufficient permissions to perform this action.

", + "refs": { + } + }, "AccessPolicy": { "base": null, "refs": { @@ -105,12 +132,80 @@ "UntagResourceRequest$resourceArn": "

The ARN of the CloudWatch Logs resource that you're removing tags from.

The ARN format of a log group is arn:aws:logs:Region:account-id:log-group:log-group-name

The ARN format of a destination is arn:aws:logs:Region:account-id:destination:destination-name

For more information about ARN format, see CloudWatch Logs resources and operations.

" } }, + "Anomalies": { + "base": null, + "refs": { + "ListAnomaliesResponse$anomalies": "

An array of structures, where each structure contains information about one anomaly that a log anomaly detector has found.

" + } + }, + "Anomaly": { + "base": "

This structure represents one anomaly that has been found by a logs anomaly detector.

For more information about patterns and anomalies, see CreateLogAnomalyDetector.

", + "refs": { + "Anomalies$member": null + } + }, + "AnomalyDetector": { + "base": "

Contains information about one anomaly detector in the account.

", + "refs": { + "AnomalyDetectors$member": null + } + }, + "AnomalyDetectorArn": { + "base": null, + "refs": { + "Anomaly$anomalyDetectorArn": "

The ARN of the anomaly detector that identified this anomaly.

", + "AnomalyDetector$anomalyDetectorArn": "

The ARN of the anomaly detector.

", + "CreateLogAnomalyDetectorResponse$anomalyDetectorArn": "

The ARN of the log anomaly detector that you just created.

", + "DeleteLogAnomalyDetectorRequest$anomalyDetectorArn": "

The ARN of the anomaly detector to delete. You can find the ARNs of log anomaly detectors in your account by using the ListLogAnomalyDetectors operation.

", + "GetLogAnomalyDetectorRequest$anomalyDetectorArn": "

The ARN of the anomaly detector to retrieve information about. You can find the ARNs of log anomaly detectors in your account by using the ListLogAnomalyDetectors operation.

", + "ListAnomaliesRequest$anomalyDetectorArn": "

Use this to optionally limit the results to only the anomalies found by a certain anomaly detector.

", + "UpdateAnomalyRequest$anomalyDetectorArn": "

The ARN of the anomaly detector that this operation is to act on.

", + "UpdateLogAnomalyDetectorRequest$anomalyDetectorArn": "

The ARN of the anomaly detector that you want to update.

" + } + }, + "AnomalyDetectorStatus": { + "base": null, + "refs": { + "AnomalyDetector$anomalyDetectorStatus": "

Specifies the current status of the anomaly detector. To pause an anomaly detector, use the enabled parameter in the UpdateLogAnomalyDetector operation.

", + "GetLogAnomalyDetectorResponse$anomalyDetectorStatus": "

Specifies whether the anomaly detector is currently active. To change its status, use the enabled parameter in the UpdateLogAnomalyDetector operation.

" + } + }, + "AnomalyDetectors": { + "base": null, + "refs": { + "ListLogAnomalyDetectorsResponse$anomalyDetectors": "

An array of structures, where each structure in the array contains information about one anomaly detector.

" + } + }, + "AnomalyId": { + "base": null, + "refs": { + "Anomaly$anomalyId": "

The unique ID that CloudWatch Logs assigned to this anomaly.

", + "UpdateAnomalyRequest$anomalyId": "

If you are suppressing or unsuppressing an anomaly, specify its unique ID here. You can find anomaly IDs by using the ListAnomalies operation.

" + } + }, + "AnomalyVisibilityTime": { + "base": null, + "refs": { + "AnomalyDetector$anomalyVisibilityTime": "

The number of days used as the life cycle of anomalies. After this time, anomalies are automatically baselined and the anomaly detector model will treat new occurrences of similar event as normal.

", + "CreateLogAnomalyDetectorRequest$anomalyVisibilityTime": "

The number of days to have visibility on an anomaly. After this time period has elapsed for an anomaly, it will be automatically baselined and the anomaly detector will treat new occurrences of a similar anomaly as normal. Therefore, if you do not correct the cause of an anomaly during the time period specified in anomalyVisibilityTime, it will be considered normal going forward and will not be detected as an anomaly.

", + "GetLogAnomalyDetectorResponse$anomalyVisibilityTime": "

The number of days used as the life cycle of anomalies. After this time, anomalies are automatically baselined and the anomaly detector model will treat new occurrences of similar event as normal.

", + "UpdateLogAnomalyDetectorRequest$anomalyVisibilityTime": "

The number of days to use as the life cycle of anomalies. After this time, anomalies are automatically baselined and the anomaly detector model will treat new occurrences of similar event as normal. Therefore, if you do not correct the cause of an anomaly during this time, it will be considered normal going forward and will not be detected.

" + } + }, "Arn": { "base": null, "refs": { + "CreateDeliveryRequest$deliveryDestinationArn": "

The ARN of the delivery destination to use for this delivery.

", + "Delivery$arn": "

The Amazon Resource Name (ARN) that uniquely identifies this delivery.

", + "Delivery$deliveryDestinationArn": "

The ARN of the delivery destination that is associated with this delivery.

", + "DeliveryDestination$arn": "

The Amazon Resource Name (ARN) that uniquely identifies this delivery destination.

", + "DeliveryDestinationConfiguration$destinationResourceArn": "

The ARN of the Amazon Web Services destination that this delivery destination represents. That Amazon Web Services destination can be a log group in CloudWatch Logs, an Amazon S3 bucket, or a delivery stream in Kinesis Data Firehose.

", + "DeliverySource$arn": "

The Amazon Resource Name (ARN) that uniquely identifies this delivery source.

", "Destination$arn": "

The ARN of this destination.

", "LogGroup$arn": "

The Amazon Resource Name (ARN) of the log group.

", - "LogStream$arn": "

The Amazon Resource Name (ARN) of the log stream.

" + "LogStream$arn": "

The Amazon Resource Name (ARN) of the log stream.

", + "PutDeliverySourceRequest$resourceArn": "

The ARN of the Amazon Web Services resource that is generating and sending logs. For example, arn:aws:workmail:us-east-1:123456789012:organization/m-1234EXAMPLEabcd1234abcd1234abcd1234

", + "ResourceArns$member": null } }, "AssociateKmsKeyRequest": { @@ -118,6 +213,16 @@ "refs": { } }, + "Boolean": { + "base": null, + "refs": { + "Anomaly$active": "

Specifies whether this anomaly is still ongoing.

", + "Anomaly$suppressed": "

Indicates whether this anomaly is currently suppressed. To suppress an anomaly, use UpdateAnomaly.

", + "Anomaly$isPatternLevelSuppression": "

If this anomaly is suppressed, this field is true if the suppression is because the pattern is suppressed. If false, then only this particular anomaly is suppressed.

", + "PatternToken$isDynamic": "

Specifies whether this is a dynamic token.

", + "UpdateLogAnomalyDetectorRequest$enabled": "

Use this parameter to pause or restart the anomaly detector.

" + } + }, "CancelExportTaskRequest": { "base": null, "refs": { @@ -129,6 +234,27 @@ "PutQueryDefinitionRequest$clientToken": "

Used as an idempotency token, to avoid returning an exception if the service receives the same request twice because of a network error.

" } }, + "ConflictException": { + "base": "

This operation attempted to create a resource that already exists.

", + "refs": { + } + }, + "Count": { + "base": null, + "refs": { + "Histogram$value": null + } + }, + "CreateDeliveryRequest": { + "base": null, + "refs": { + } + }, + "CreateDeliveryResponse": { + "base": null, + "refs": { + } + }, "CreateExportTaskRequest": { "base": null, "refs": { @@ -139,6 +265,16 @@ "refs": { } }, + "CreateLogAnomalyDetectorRequest": { + "base": null, + "refs": { + } + }, + "CreateLogAnomalyDetectorResponse": { + "base": null, + "refs": { + } + }, "CreateLogGroupRequest": { "base": null, "refs": { @@ -191,11 +327,36 @@ "refs": { } }, + "DeleteDeliveryDestinationPolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteDeliveryDestinationRequest": { + "base": null, + "refs": { + } + }, + "DeleteDeliveryRequest": { + "base": null, + "refs": { + } + }, + "DeleteDeliverySourceRequest": { + "base": null, + "refs": { + } + }, "DeleteDestinationRequest": { "base": null, "refs": { } }, + "DeleteLogAnomalyDetectorRequest": { + "base": null, + "refs": { + } + }, "DeleteLogGroupRequest": { "base": null, "refs": { @@ -236,6 +397,100 @@ "refs": { } }, + "Deliveries": { + "base": null, + "refs": { + "DescribeDeliveriesResponse$deliveries": "

An array of structures. Each structure contains information about one delivery in the account.

" + } + }, + "Delivery": { + "base": "

This structure contains information about one delivery in your account.

A delivery is a connection between a logical delivery source and a logical delivery destination.

For more information, see CreateDelivery.

You can't update an existing delivery. You can only create and delete deliveries.

", + "refs": { + "CreateDeliveryResponse$delivery": "

A structure that contains information about the delivery that you just created.

", + "Deliveries$member": null, + "GetDeliveryResponse$delivery": "

A structure that contains information about the delivery.

" + } + }, + "DeliveryDestination": { + "base": "

This structure contains information about one delivery destination in your account. A delivery destination is an Amazon Web Services resource that represents an Amazon Web Services service that logs can be sent to. CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations.

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Create a delivery destination, which is a logical object that represents the actual delivery destination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

", + "refs": { + "DeliveryDestinations$member": null, + "GetDeliveryDestinationResponse$deliveryDestination": "

A structure containing information about the delivery destination.

", + "PutDeliveryDestinationResponse$deliveryDestination": "

A structure containing information about the delivery destination that you just created or updated.

" + } + }, + "DeliveryDestinationConfiguration": { + "base": "

A structure that contains information about one logs delivery destination.

", + "refs": { + "DeliveryDestination$deliveryDestinationConfiguration": "

A structure that contains the ARN of the Amazon Web Services resource that will receive the logs.

", + "PutDeliveryDestinationRequest$deliveryDestinationConfiguration": "

A structure that contains the ARN of the Amazon Web Services resource that will receive the logs.

" + } + }, + "DeliveryDestinationName": { + "base": null, + "refs": { + "DeleteDeliveryDestinationPolicyRequest$deliveryDestinationName": "

The name of the delivery destination that you want to delete the policy for.

", + "DeleteDeliveryDestinationRequest$name": "

The name of the delivery destination that you want to delete. You can find a list of delivery destionation names by using the DescribeDeliveryDestinations operation.

", + "DeliveryDestination$name": "

The name of this delivery destination.

", + "GetDeliveryDestinationPolicyRequest$deliveryDestinationName": "

The name of the delivery destination that you want to retrieve the policy of.

", + "GetDeliveryDestinationRequest$name": "

The name of the delivery destination that you want to retrieve.

", + "PutDeliveryDestinationPolicyRequest$deliveryDestinationName": "

The name of the delivery destination to assign this policy to.

", + "PutDeliveryDestinationRequest$name": "

A name for this delivery destination. This name must be unique for all delivery destinations in your account.

" + } + }, + "DeliveryDestinationPolicy": { + "base": null, + "refs": { + "Policy$deliveryDestinationPolicy": "

The contents of the delivery destination policy.

", + "PutDeliveryDestinationPolicyRequest$deliveryDestinationPolicy": "

The contents of the policy.

" + } + }, + "DeliveryDestinationType": { + "base": null, + "refs": { + "Delivery$deliveryDestinationType": "

Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.

", + "DeliveryDestination$deliveryDestinationType": "

Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.

" + } + }, + "DeliveryDestinations": { + "base": null, + "refs": { + "DescribeDeliveryDestinationsResponse$deliveryDestinations": "

An array of structures. Each structure contains information about one delivery destination in the account.

" + } + }, + "DeliveryId": { + "base": null, + "refs": { + "DeleteDeliveryRequest$id": "

The unique ID of the delivery to delete. You can find the ID of a delivery with the DescribeDeliveries operation.

", + "Delivery$id": "

The unique ID that identifies this delivery in your account.

", + "GetDeliveryRequest$id": "

The ID of the delivery that you want to retrieve.

" + } + }, + "DeliverySource": { + "base": "

This structure contains information about one delivery source in your account. A delivery source is an Amazon Web Services resource that sends logs to an Amazon Web Services destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

", + "refs": { + "DeliverySources$member": null, + "GetDeliverySourceResponse$deliverySource": "

A structure containing information about the delivery source.

", + "PutDeliverySourceResponse$deliverySource": "

A structure containing information about the delivery source that was just created or updated.

" + } + }, + "DeliverySourceName": { + "base": null, + "refs": { + "CreateDeliveryRequest$deliverySourceName": "

The name of the delivery source to use for this delivery.

", + "DeleteDeliverySourceRequest$name": "

The name of the delivery source that you want to delete.

", + "Delivery$deliverySourceName": "

The name of the delivery source that is associated with this delivery.

", + "DeliverySource$name": "

The unique name of the delivery source.

", + "GetDeliverySourceRequest$name": "

The name of the delivery source that you want to retrieve.

", + "PutDeliverySourceRequest$name": "

A name for this delivery source. This name must be unique for all delivery sources in your account.

" + } + }, + "DeliverySources": { + "base": null, + "refs": { + "DescribeDeliverySourcesResponse$deliverySources": "

An array of structures. Each structure contains information about one delivery source in the account.

" + } + }, "Descending": { "base": null, "refs": { @@ -252,6 +507,36 @@ "refs": { } }, + "DescribeDeliveriesRequest": { + "base": null, + "refs": { + } + }, + "DescribeDeliveriesResponse": { + "base": null, + "refs": { + } + }, + "DescribeDeliveryDestinationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeDeliveryDestinationsResponse": { + "base": null, + "refs": { + } + }, + "DescribeDeliverySourcesRequest": { + "base": null, + "refs": { + } + }, + "DescribeDeliverySourcesResponse": { + "base": null, + "refs": { + } + }, "DescribeDestinationsRequest": { "base": null, "refs": { @@ -275,6 +560,9 @@ "DescribeLimit": { "base": null, "refs": { + "DescribeDeliveriesRequest$limit": "

Optionally specify the maximum number of deliveries to return in the response.

", + "DescribeDeliveryDestinationsRequest$limit": "

Optionally specify the maximum number of delivery destinations to return in the response.

", + "DescribeDeliverySourcesRequest$limit": "

Optionally specify the maximum number of delivery sources to return in the response.

", "DescribeDestinationsRequest$limit": "

The maximum number of items returned. If you don't specify a value, the default maximum value of 50 items is used.

", "DescribeExportTasksRequest$limit": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

", "DescribeLogGroupsRequest$limit": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

", @@ -360,6 +648,12 @@ "refs": { } }, + "Description": { + "base": null, + "refs": { + "Anomaly$description": "

A human-readable description of the anomaly. This description is generated by CloudWatch Logs.

" + } + }, "Destination": { "base": "

Represents a cross-account destination that receives subscription log events.

", "refs": { @@ -390,6 +684,14 @@ "DescribeDestinationsResponse$destinations": "

The destinations.

" } }, + "DetectorName": { + "base": null, + "refs": { + "AnomalyDetector$detectorName": "

The name of the anomaly detector.

", + "CreateLogAnomalyDetectorRequest$detectorName": "

A name for this anomaly detector.

", + "GetLogAnomalyDetectorResponse$detectorName": "

The name of the log anomaly detector

" + } + }, "Dimensions": { "base": null, "refs": { @@ -420,12 +722,46 @@ "SubscriptionFilter$distribution": null } }, + "DynamicTokenPosition": { + "base": null, + "refs": { + "PatternToken$dynamicTokenPosition": "

For a dynamic token, this indicates where in the pattern that this token appears, related to other dynamic tokens. The dynamic token that appears first has a value of 1, the one that appears second is 2, and so on.

" + } + }, "EncryptionKey": { "base": null, "refs": { "GetQueryResultsResponse$encryptionKey": "

If you associated an KMS key with the CloudWatch Logs Insights query results in this account, this field displays the ARN of the key that's used to encrypt the query results when StartQuery stores them.

" } }, + "Enumerations": { + "base": null, + "refs": { + "PatternToken$enumerations": "

Contains the values found for a dynamic token, and the number of times each value was found.

" + } + }, + "EpochMillis": { + "base": null, + "refs": { + "Anomaly$firstSeen": "

The date and time when the anomaly detector first saw this anomaly. It is specified as epoch time, which is the number of seconds since January 1, 1970, 00:00:00 UTC.

", + "Anomaly$lastSeen": "

The date and time when the anomaly detector most recently saw this anomaly. It is specified as epoch time, which is the number of seconds since January 1, 1970, 00:00:00 UTC.

", + "Anomaly$suppressedDate": "

If the anomaly is suppressed, this indicates when it was suppressed.

", + "Anomaly$suppressedUntil": "

If the anomaly is suppressed, this indicates when the suppression will end. If this value is 0, the anomaly was suppressed with no expiration, with the INFINITE value.

", + "AnomalyDetector$creationTimeStamp": "

The date and time when this anomaly detector was created.

", + "AnomalyDetector$lastModifiedTimeStamp": "

The date and time when this anomaly detector was most recently modified.

", + "GetLogAnomalyDetectorResponse$creationTimeStamp": "

The date and time when this anomaly detector was created.

", + "GetLogAnomalyDetectorResponse$lastModifiedTimeStamp": "

The date and time when this anomaly detector was most recently modified.

" + } + }, + "EvaluationFrequency": { + "base": null, + "refs": { + "AnomalyDetector$evaluationFrequency": "

Specifies how often the anomaly detector runs and look for anomalies.

", + "CreateLogAnomalyDetectorRequest$evaluationFrequency": "

Specifies how often the anomaly detector is to run and look for anomalies. Set this value according to the frequency that the log group receives new logs. For example, if the log group receives new log events every 10 minutes, then 15 minutes might be a good setting for evaluationFrequency .

", + "GetLogAnomalyDetectorResponse$evaluationFrequency": "

Specifies how often the anomaly detector runs and look for anomalies. Set this value according to the frequency that the log group receives new logs. For example, if the log group receives new log events every 10 minutes, then setting evaluationFrequency to FIFTEEN_MIN might be appropriate.

", + "UpdateLogAnomalyDetectorRequest$evaluationFrequency": "

Specifies how often the anomaly detector runs and look for anomalies. Set this value according to the frequency that the log group receives new logs. For example, if the log group receives new log events every 10 minutes, then setting evaluationFrequency to FIFTEEN_MIN might be appropriate.

" + } + }, "EventId": { "base": null, "refs": { @@ -569,12 +905,16 @@ "FilterPattern": { "base": "

A symbolic description of how CloudWatch Logs should interpret the data in each log event. For example, a log event can contain timestamps, IP addresses, strings, and so on. You use the filter pattern to specify what to look for in the log event message.

", "refs": { + "AnomalyDetector$filterPattern": null, + "CreateLogAnomalyDetectorRequest$filterPattern": "

You can use this parameter to limit the anomaly detection model to examine only log events that match the pattern you specify here. For more information, see Filter and Pattern Syntax.

", "FilterLogEventsRequest$filterPattern": "

The filter pattern to use. For more information, see Filter and Pattern Syntax.

If not provided, all the events are matched.

", + "GetLogAnomalyDetectorResponse$filterPattern": null, "MetricFilter$filterPattern": null, "PutMetricFilterRequest$filterPattern": "

A filter pattern for extracting metric data out of ingested log events.

", "PutSubscriptionFilterRequest$filterPattern": "

A filter pattern for subscribing to a filtered stream of log events.

", "SubscriptionFilter$filterPattern": null, - "TestMetricFilterRequest$filterPattern": null + "TestMetricFilterRequest$filterPattern": null, + "UpdateLogAnomalyDetectorRequest$filterPattern": null } }, "FilteredLogEvent": { @@ -605,6 +945,56 @@ "refs": { } }, + "GetDeliveryDestinationPolicyRequest": { + "base": null, + "refs": { + } + }, + "GetDeliveryDestinationPolicyResponse": { + "base": null, + "refs": { + } + }, + "GetDeliveryDestinationRequest": { + "base": null, + "refs": { + } + }, + "GetDeliveryDestinationResponse": { + "base": null, + "refs": { + } + }, + "GetDeliveryRequest": { + "base": null, + "refs": { + } + }, + "GetDeliveryResponse": { + "base": null, + "refs": { + } + }, + "GetDeliverySourceRequest": { + "base": null, + "refs": { + } + }, + "GetDeliverySourceResponse": { + "base": null, + "refs": { + } + }, + "GetLogAnomalyDetectorRequest": { + "base": null, + "refs": { + } + }, + "GetLogAnomalyDetectorResponse": { + "base": null, + "refs": { + } + }, "GetLogEventsRequest": { "base": null, "refs": { @@ -645,6 +1035,12 @@ "refs": { } }, + "Histogram": { + "base": null, + "refs": { + "Anomaly$histogram": "

A map showing times when the anomaly detector ran, and the number of occurrences of this anomaly that were detected at each of those runs. The times are specified in epoch time, which is the number of seconds since January 1, 1970, 00:00:00 UTC.

" + } + }, "IncludeLinkedAccounts": { "base": null, "refs": { @@ -681,6 +1077,12 @@ "FilterLogEventsRequest$logStreamNames": "

Filters the results to only logs from the log streams in this list.

If you specify a value for both logStreamNamePrefix and logStreamNames, the action returns an InvalidParameterException error.

" } }, + "Integer": { + "base": null, + "refs": { + "SuppressionPeriod$value": "

Specifies the number of seconds, minutes or hours to suppress this anomaly. There is no maximum.

" + } + }, "Interleaved": { "base": null, "refs": { @@ -705,8 +1107,11 @@ "KmsKeyId": { "base": null, "refs": { + "AnomalyDetector$kmsKeyId": "

The ID of the KMS key assigned to this anomaly detector, if any.

", "AssociateKmsKeyRequest$kmsKeyId": "

The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data. This must be a symmetric KMS key. For more information, see Amazon Resource Names and Using Symmetric and Asymmetric Keys.

", + "CreateLogAnomalyDetectorRequest$kmsKeyId": "

Optionally assigns a KMS key to secure this anomaly detector and its findings. If a key is assigned, the anomalies found and the model used by this detector are encrypted at rest with the key. If a key is assigned to an anomaly detector, a user must have permissions for both this key and for the anomaly detector to retrieve information about the anomalies that it finds.

For more information about using a KMS key and to see the required IAM policy, see Use a KMS key with an anomaly detector.

", "CreateLogGroupRequest$kmsKeyId": "

The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data. For more information, see Amazon Resource Names.

", + "GetLogAnomalyDetectorResponse$kmsKeyId": "

The ID of the KMS key assigned to this anomaly detector, if any.

", "LogGroup$kmsKeyId": "

The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.

" } }, @@ -715,6 +1120,38 @@ "refs": { } }, + "ListAnomaliesLimit": { + "base": null, + "refs": { + "ListAnomaliesRequest$limit": "

The maximum number of items to return. If you don't specify a value, the default maximum value of 50 items is used.

" + } + }, + "ListAnomaliesRequest": { + "base": null, + "refs": { + } + }, + "ListAnomaliesResponse": { + "base": null, + "refs": { + } + }, + "ListLogAnomalyDetectorsLimit": { + "base": null, + "refs": { + "ListLogAnomalyDetectorsRequest$limit": "

The maximum number of items to return. If you don't specify a value, the default maximum value of 50 items is used.

" + } + }, + "ListLogAnomalyDetectorsRequest": { + "base": null, + "refs": { + } + }, + "ListLogAnomalyDetectorsResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -735,6 +1172,12 @@ "refs": { } }, + "LogEvent": { + "base": null, + "refs": { + "LogSamples$member": null + } + }, "LogEventIndex": { "base": null, "refs": { @@ -749,6 +1192,30 @@ "LogGroups$member": null } }, + "LogGroupArn": { + "base": null, + "refs": { + "ListLogAnomalyDetectorsRequest$filterLogGroupArn": "

Use this to optionally filter the results to only include anomaly detectors that are associated with the specified log group.

", + "LogGroupArnList$member": null + } + }, + "LogGroupArnList": { + "base": null, + "refs": { + "Anomaly$logGroupArnList": "

An array of ARNS of the log groups that contained log events considered to be part of this anomaly.

", + "AnomalyDetector$logGroupArnList": "

A list of the ARNs of the log groups that this anomaly detector watches.

", + "CreateLogAnomalyDetectorRequest$logGroupArnList": "

An array containing the ARNs of the log groups that this anomaly detector will watch. You must specify at least one ARN.

", + "GetLogAnomalyDetectorResponse$logGroupArnList": "

An array of structures, where each structure contains the ARN of a log group associated with this anomaly detector.

" + } + }, + "LogGroupClass": { + "base": null, + "refs": { + "CreateLogGroupRequest$logGroupClass": "

Use this parameter to specify the log group class for this log group. There are two classes:

  • The Standard log class supports all CloudWatch Logs features.

  • The Infrequent Access log class supports a subset of CloudWatch Logs features and incurs lower costs.

If you omit this parameter, the default of STANDARD is used.

For details about the features supported by each class, see Log classes

", + "DescribeLogGroupsRequest$logGroupClass": "

Specifies the log group class for this log group. There are two classes:

  • The Standard log class supports all CloudWatch Logs features.

  • The Infrequent Access log class supports a subset of CloudWatch Logs features and incurs lower costs.

For details about the features supported by each class, see Log classes

", + "LogGroup$logGroupClass": "

This specifies the log group class for this log group. There are two classes:

  • The Standard log class supports all CloudWatch Logs features.

  • The Infrequent Access log class supports a subset of CloudWatch Logs features and incurs lower costs.

For details about the features supported by each class, see Log classes

" + } + }, "LogGroupField": { "base": "

The fields contained in log events found by a GetLogGroupFields operation, along with the percentage of queried log events in which each field appears.

", "refs": { @@ -787,7 +1254,7 @@ "refs": { "AssociateKmsKeyRequest$logGroupName": "

The name of the log group.

In your AssociateKmsKey operation, you must specify either the resourceIdentifier parameter or the logGroup parameter, but you can't specify both.

", "CreateExportTaskRequest$logGroupName": "

The name of the log group.

", - "CreateLogGroupRequest$logGroupName": "

The name of the log group.

", + "CreateLogGroupRequest$logGroupName": "

A name for the log group.

", "CreateLogStreamRequest$logGroupName": "

The name of the log group.

", "DeleteLogGroupRequest$logGroupName": "

The name of the log group.

", "DeleteLogStreamRequest$logGroupName": "

The name of the log group.

", @@ -851,6 +1318,12 @@ "GetLogRecordRequest$logRecordPointer": "

The pointer corresponding to the log event record you want to retrieve. You get this from the response of a GetQueryResults operation. In that response, the value of the @ptr field for a log event is the value to use as logRecordPointer to retrieve that complete log event record.

" } }, + "LogSamples": { + "base": null, + "refs": { + "Anomaly$logSamples": "

An array of sample log event messages that are considered to be part of this anomaly.

" + } + }, "LogStream": { "base": "

Represents a log stream, which is a sequence of log events from a single emitter of logs.

", "refs": { @@ -885,6 +1358,13 @@ "DescribeLogStreamsResponse$logStreams": "

The log streams.

" } }, + "LogType": { + "base": null, + "refs": { + "DeliverySource$logType": "

The type of log that the source is sending. For valid values for this parameter, see the documentation for the source service.

", + "PutDeliverySourceRequest$logType": "

Defines the type of log that the source is sending. For valid values for this parameter, see the documentation for the source service.

" + } + }, "MalformedQueryException": { "base": "

The query string is not valid. Details about this error are displayed in a QueryCompileError object. For more information, see QueryCompileError.

For more information about valid query syntax, see CloudWatch Logs Insights Query Syntax.

", "refs": { @@ -957,6 +1437,12 @@ "NextToken": { "base": "

The token for the next set of items to return. The token expires after 24 hours.

", "refs": { + "DescribeDeliveriesRequest$nextToken": null, + "DescribeDeliveriesResponse$nextToken": null, + "DescribeDeliveryDestinationsRequest$nextToken": null, + "DescribeDeliveryDestinationsResponse$nextToken": null, + "DescribeDeliverySourcesRequest$nextToken": null, + "DescribeDeliverySourcesResponse$nextToken": null, "DescribeDestinationsRequest$nextToken": "

The token for the next set of items to return. (You received this token from a previous call.)

", "DescribeDestinationsResponse$nextToken": null, "DescribeExportTasksRequest$nextToken": "

The token for the next set of items to return. (You received this token from a previous call.)

", @@ -979,7 +1465,11 @@ "FilterLogEventsResponse$nextToken": "

The token to use when requesting the next set of items. The token expires after 24 hours.

", "GetLogEventsRequest$nextToken": "

The token for the next set of items to return. (You received this token from a previous call.)

", "GetLogEventsResponse$nextForwardToken": "

The token for the next set of items in the forward direction. The token expires after 24 hours. If you have reached the end of the stream, it returns the same token you passed in.

", - "GetLogEventsResponse$nextBackwardToken": "

The token for the next set of items in the backward direction. The token expires after 24 hours. This token is not null. If you have reached the end of the stream, it returns the same token you passed in.

" + "GetLogEventsResponse$nextBackwardToken": "

The token for the next set of items in the backward direction. The token expires after 24 hours. This token is not null. If you have reached the end of the stream, it returns the same token you passed in.

", + "ListAnomaliesRequest$nextToken": null, + "ListAnomaliesResponse$nextToken": null, + "ListLogAnomalyDetectorsRequest$nextToken": null, + "ListLogAnomalyDetectorsResponse$nextToken": null } }, "OperationAbortedException": { @@ -993,6 +1483,13 @@ "DescribeLogStreamsRequest$orderBy": "

If the value is LogStreamName, the results are ordered by log stream name. If the value is LastEventTime, the results are ordered by the event time. The default value is LogStreamName.

If you order the results by event time, you cannot specify the logStreamNamePrefix parameter.

lastEventTimestamp represents the time of the most recent log event in the log stream in CloudWatch Logs. This number is expressed as the number of milliseconds after Jan 1, 1970 00:00:00 UTC. lastEventTimestamp updates on an eventual consistency basis. It typically updates in less than an hour from ingestion, but in rare situations might take longer.

" } }, + "OutputFormat": { + "base": null, + "refs": { + "DeliveryDestination$outputFormat": "

The format of the logs that are sent to this delivery destination.

", + "PutDeliveryDestinationRequest$outputFormat": "

The format for the logs that this delivery destination will receive.

" + } + }, "OutputLogEvent": { "base": "

Represents a log event.

", "refs": { @@ -1005,12 +1502,50 @@ "GetLogEventsResponse$events": "

The events.

" } }, + "PatternId": { + "base": null, + "refs": { + "Anomaly$patternId": "

The ID of the pattern used to help identify this anomaly.

", + "UpdateAnomalyRequest$patternId": "

If you are suppressing or unsuppressing an pattern, specify its unique ID here. You can find pattern IDs by using the ListAnomalies operation.

" + } + }, + "PatternRegex": { + "base": null, + "refs": { + "Anomaly$patternRegex": "

The pattern used to help identify this anomaly, in regular expression format.

" + } + }, + "PatternString": { + "base": null, + "refs": { + "Anomaly$patternString": "

The pattern used to help identify this anomaly, in string format.

" + } + }, + "PatternToken": { + "base": "

A tructures that contains information about one pattern token related to an anomaly.

For more information about patterns and tokens, see CreateLogAnomalyDetector.

", + "refs": { + "PatternTokens$member": null + } + }, + "PatternTokens": { + "base": null, + "refs": { + "Anomaly$patternTokens": "

An array of structures where each structure contains information about one token that makes up the pattern.

" + } + }, "Percentage": { "base": null, "refs": { "LogGroupField$percent": "

The percentage of log events queried that contained the field.

" } }, + "Policy": { + "base": "

A structure that contains information about one delivery destination policy.

", + "refs": { + "GetDeliveryDestinationPolicyResponse$policy": "

The IAM policy for this delivery destination.

", + "PutDeliveryDestinationPolicyResponse$policy": "

The contents of the policy that you just created.

" + } + }, "PolicyDocument": { "base": null, "refs": { @@ -1039,6 +1574,12 @@ "PutAccountPolicyRequest$policyType": "

Currently the only valid value for this parameter is DATA_PROTECTION_POLICY.

" } }, + "Priority": { + "base": null, + "refs": { + "Anomaly$priority": "

The priority level of this anomaly, as determined by CloudWatch Logs. Priority is computed based on log severity labels such as FATAL and ERROR and the amount of deviation from the baseline. Possible values are HIGH, MEDIUM, and LOW.

" + } + }, "PutAccountPolicyRequest": { "base": null, "refs": { @@ -1059,6 +1600,36 @@ "refs": { } }, + "PutDeliveryDestinationPolicyRequest": { + "base": null, + "refs": { + } + }, + "PutDeliveryDestinationPolicyResponse": { + "base": null, + "refs": { + } + }, + "PutDeliveryDestinationRequest": { + "base": null, + "refs": { + } + }, + "PutDeliveryDestinationResponse": { + "base": null, + "refs": { + } + }, + "PutDeliverySourceRequest": { + "base": null, + "refs": { + } + }, + "PutDeliverySourceResponse": { + "base": null, + "refs": { + } + }, "PutDestinationPolicyRequest": { "base": null, "refs": { @@ -1234,6 +1805,12 @@ "refs": { } }, + "ResourceArns": { + "base": null, + "refs": { + "DeliverySource$resourceArns": "

This array contains the ARN of the Amazon Web Services resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array.

" + } + }, "ResourceIdentifier": { "base": null, "refs": { @@ -1309,6 +1886,17 @@ "PutLogEventsResponse$nextSequenceToken": "

The next sequence token.

This field has been deprecated.

The sequence token is now ignored in PutLogEvents actions. PutLogEvents actions are always accepted even if the sequence token is not valid. You can use parallel PutLogEvents actions on the same log stream and you do not need to wait for the response of a previous PutLogEvents action to obtain the nextSequenceToken value.

" } }, + "Service": { + "base": null, + "refs": { + "DeliverySource$service": "

The Amazon Web Services service that is sending logs.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

This request exceeds a service quota.

", + "refs": { + } + }, "ServiceUnavailableException": { "base": "

The service cannot complete the request.

", "refs": { @@ -1336,6 +1924,12 @@ "refs": { } }, + "State": { + "base": null, + "refs": { + "Anomaly$state": "

Indicates the current state of this anomaly. If it is still being treated as an anomaly, the value is Active. If you have suppressed this anomaly by using the UpdateAnomaly operation, the value is Suppressed. If this behavior is now considered to be normal, the value is Baseline.

" + } + }, "StatsValue": { "base": null, "refs": { @@ -1380,6 +1974,30 @@ "StopQueryResponse$success": "

This is true if the query was stopped by the StopQuery operation.

" } }, + "SuppressionPeriod": { + "base": "

If you are suppressing an anomaly temporariliy, this structure defines how long the suppression period is to be.

", + "refs": { + "UpdateAnomalyRequest$suppressionPeriod": "

If you are temporarily suppressing an anomaly or pattern, use this structure to specify how long the suppression is to last.

" + } + }, + "SuppressionState": { + "base": null, + "refs": { + "ListAnomaliesRequest$suppressionState": "

You can specify this parameter if you want to the operation to return only anomalies that are currently either suppressed or unsuppressed.

" + } + }, + "SuppressionType": { + "base": null, + "refs": { + "UpdateAnomalyRequest$suppressionType": "

Use this to specify whether the suppression to be temporary or infinite. If you specify LIMITED, you must also specify a suppressionPeriod. If you specify INFINITE, any value for suppressionPeriod is ignored.

" + } + }, + "SuppressionUnit": { + "base": null, + "refs": { + "SuppressionPeriod$suppressionUnit": "

Specifies whether the value of value is in seconds, minutes, or hours.

" + } + }, "TagKey": { "base": null, "refs": { @@ -1419,9 +2037,16 @@ "Tags": { "base": null, "refs": { + "CreateDeliveryRequest$tags": "

An optional list of key-value pairs to associate with the resource.

For more information about tagging, see Tagging Amazon Web Services resources

", + "CreateLogAnomalyDetectorRequest$tags": "

An optional list of key-value pairs to associate with the resource.

For more information about tagging, see Tagging Amazon Web Services resources

", "CreateLogGroupRequest$tags": "

The key-value pairs to use for the tags.

You can grant users access to certain log groups while preventing them from accessing other log groups. To do so, tag your groups and use IAM policies that refer to those tags. To assign tags when you create a log group, you must have either the logs:TagResource or logs:TagLogGroup permission. For more information about tagging, see Tagging Amazon Web Services resources. For more information about using tags to control access, see Controlling access to Amazon Web Services resources using tags.

", + "Delivery$tags": "

The tags that have been assigned to this delivery.

", + "DeliveryDestination$tags": "

The tags that have been assigned to this delivery destination.

", + "DeliverySource$tags": "

The tags that have been assigned to this delivery source.

", "ListTagsForResourceResponse$tags": "

The list of tags associated with the requested resource.>

", "ListTagsLogGroupResponse$tags": "

The tags for the log group.

", + "PutDeliveryDestinationRequest$tags": "

An optional list of key-value pairs to associate with the resource.

For more information about tagging, see Tagging Amazon Web Services resources

", + "PutDeliverySourceRequest$tags": "

An optional list of key-value pairs to associate with the resource.

For more information about tagging, see Tagging Amazon Web Services resources

", "PutDestinationRequest$tags": "

An optional list of key-value pairs to associate with the resource.

For more information about tagging, see Tagging Amazon Web Services resources

", "TagLogGroupRequest$tags": "

The key-value pairs to use for the tags.

", "TagResourceRequest$tags": "

The list of key-value pairs to associate with the resource.

" @@ -1450,6 +2075,17 @@ "refs": { } }, + "ThrottlingException": { + "base": "

The request was throttled because of quota limits.

", + "refs": { + } + }, + "Time": { + "base": null, + "refs": { + "Histogram$key": null + } + }, "Timestamp": { "base": null, "refs": { @@ -1493,6 +2129,19 @@ "ExtractedValues$key": null } }, + "TokenString": { + "base": null, + "refs": { + "Enumerations$key": null, + "PatternToken$tokenString": "

The string represented by this token. If this is a dynamic token, the value will be <*>

" + } + }, + "TokenValue": { + "base": null, + "refs": { + "Enumerations$value": null + } + }, "TooManyTagsException": { "base": "

A resource can have no more than 50 tags.

", "refs": { @@ -1521,6 +2170,21 @@ "refs": { } }, + "UpdateAnomalyRequest": { + "base": null, + "refs": { + } + }, + "UpdateLogAnomalyDetectorRequest": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

One of the parameters for the request is not valid.

", + "refs": { + } + }, "Value": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -269,14 +265,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -290,7 +288,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -310,7 +307,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -321,14 +317,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -339,9 +337,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/logs/2014-03-28/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/logs/2014-03-28/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,23 @@ { "pagination": { + "DescribeDeliveries": { + "input_token": "nextToken", + "limit_key": "limit", + "output_token": "nextToken", + "result_key": "deliveries" + }, + "DescribeDeliveryDestinations": { + "input_token": "nextToken", + "limit_key": "limit", + "output_token": "nextToken", + "result_key": "deliveryDestinations" + }, + "DescribeDeliverySources": { + "input_token": "nextToken", + "limit_key": "limit", + "output_token": "nextToken", + "result_key": "deliverySources" + }, "DescribeDestinations": { "input_token": "nextToken", "limit_key": "limit", @@ -44,6 +62,18 @@ "limit_key": "limit", "output_token": "nextForwardToken", "result_key": "events" + }, + "ListAnomalies": { + "input_token": "nextToken", + "limit_key": "limit", + "output_token": "nextToken", + "result_key": "anomalies" + }, + "ListLogAnomalyDetectors": { + "input_token": "nextToken", + "limit_key": "limit", + "output_token": "nextToken", + "result_key": "anomalyDetectors" } } } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/m2/2021-04-28/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/m2/2021-04-28/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/m2/2021-04-28/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/m2/2021-04-28/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -224,8 +224,11 @@ "output":{"shape":"GetDataSetDetailsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, + {"shape":"ExecutionTimeoutException"}, + {"shape":"ServiceUnavailableException"}, {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, {"shape":"ValidationException"}, {"shape":"InternalServerException"} ] @@ -390,8 +393,11 @@ "output":{"shape":"ListDataSetsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, + {"shape":"ExecutionTimeoutException"}, + {"shape":"ServiceUnavailableException"}, {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, {"shape":"ValidationException"}, {"shape":"InternalServerException"} ] @@ -763,6 +769,7 @@ "type":"structure", "members":{ "fileBatchJobIdentifier":{"shape":"FileBatchJobIdentifier"}, + "s3BatchJobIdentifier":{"shape":"S3BatchJobIdentifier"}, "scriptBatchJobIdentifier":{"shape":"ScriptBatchJobIdentifier"} }, "union":true @@ -784,13 +791,13 @@ }, "BatchParamKey":{ "type":"string", - "max":8, + "max":32, "min":1, "pattern":"^[A-Za-z][A-Za-z0-9]{1,7}$" }, "BatchParamValue":{ "type":"string", - "max":44, + "max":80, "min":0 }, "Boolean":{"type":"boolean"}, @@ -1024,6 +1031,7 @@ ], "members":{ "status":{"shape":"DataSetTaskLifecycle"}, + "statusReason":{"shape":"String"}, "summary":{"shape":"DataSetImportSummary"}, "taskId":{"shape":"Identifier"} } @@ -1049,7 +1057,8 @@ "enum":[ "Creating", "Running", - "Completed" + "Completed", + "Failed" ] }, "DataSetsSummaryList":{ @@ -1157,7 +1166,8 @@ "enum":[ "Deploying", "Succeeded", - "Failed" + "Failed", + "Updating Deployment" ] }, "DeploymentList":{ @@ -1279,6 +1289,17 @@ "type":"list", "member":{"shape":"EnvironmentSummary"} }, + "ExecutionTimeoutException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":504}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, "ExternalLocation":{ "type":"structure", "members":{ @@ -1488,6 +1509,7 @@ "creationTime":{"shape":"Timestamp"}, "dataSetName":{"shape":"String200"}, "dataSetOrg":{"shape":"DatasetDetailOrgAttributes"}, + "fileSize":{"shape":"Long"}, "lastReferencedTime":{"shape":"Timestamp"}, "lastUpdatedTime":{"shape":"Timestamp"}, "location":{"shape":"String2000"}, @@ -1659,6 +1681,14 @@ "fault":true, "retryable":{"throttling":false} }, + "JobIdentifier":{ + "type":"structure", + "members":{ + "fileName":{"shape":"String"}, + "scriptName":{"shape":"String"} + }, + "union":true + }, "ListApplicationVersionsRequest":{ "type":"structure", "required":["applicationId"], @@ -1852,6 +1882,11 @@ "location":"querystring", "locationName":"maxResults" }, + "nameFilter":{ + "shape":"String200", + "location":"querystring", + "locationName":"nameFilter" + }, "nextToken":{ "shape":"NextToken", "location":"querystring", @@ -2000,6 +2035,10 @@ "logType":{"shape":"String20"} } }, + "Long":{ + "type":"long", + "box":true + }, "MaintenanceSchedule":{ "type":"structure", "members":{ @@ -2108,6 +2147,18 @@ }, "exception":true }, + "S3BatchJobIdentifier":{ + "type":"structure", + "required":[ + "bucket", + "identifier" + ], + "members":{ + "bucket":{"shape":"String"}, + "identifier":{"shape":"JobIdentifier"}, + "keyPrefix":{"shape":"String"} + } + }, "ScriptBatchJobDefinition":{ "type":"structure", "required":["scriptName"], @@ -2138,6 +2189,17 @@ }, "exception":true }, + "ServiceUnavailableException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":503}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, "StartApplicationRequest":{ "type":"structure", "required":["applicationId"], @@ -2365,6 +2427,7 @@ "location":"uri", "locationName":"environmentId" }, + "forceUpdate":{"shape":"Boolean"}, "instanceType":{"shape":"String20"}, "preferredMaintenanceWindow":{"shape":"String"} } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/m2/2021-04-28/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/m2/2021-04-28/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/m2/2021-04-28/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/m2/2021-04-28/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -198,6 +198,7 @@ "GetEnvironmentResponse$publiclyAccessible": "

Whether applications running in this runtime environment are publicly accessible.

", "StopApplicationRequest$forceStop": "

Stopping an application process can take a long time. Setting this parameter to true lets you force stop the application so you don't need to wait until the process finishes to apply another action on the application. The default value is false.

", "UpdateEnvironmentRequest$applyDuringMaintenanceWindow": "

Indicates whether to update the runtime environment during the maintenance window. The default is false. Currently, Amazon Web Services Mainframe Modernization accepts the engineVersion parameter only if applyDuringMaintenanceWindow is true. If any parameter other than engineVersion is provided in UpdateEnvironmentRequest, it will fail if applyDuringMaintenanceWindow is set to true.

", + "UpdateEnvironmentRequest$forceUpdate": "

Forces the updates on the environment. This option is needed if the applications in the environment are not stopped or if there are ongoing application-related activities in the environment.

If you use this option, be aware that it could lead to data corruption in the applications, and that you might need to perform repair and recovery procedures for the applications.

This option is not needed if the attribute being updated is preferredMaintenanceWindow.

", "VsamAttributes$compressed": "

Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

", "VsamDetailAttributes$cacheAtStartup": "

If set to True, enforces loading the data set into cache before it’s used by the application.

", "VsamDetailAttributes$compressed": "

Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

" @@ -216,7 +217,7 @@ "CapacityValue": { "base": null, "refs": { - "GetEnvironmentResponse$actualCapacity": "

The number of instances included in the runtime environment. A standalone runtime environment has a maxiumum of one instance. Currently, a high availability runtime environment has a maximum of two instances.

", + "GetEnvironmentResponse$actualCapacity": "

The number of instances included in the runtime environment. A standalone runtime environment has a maximum of one instance. Currently, a high availability runtime environment has a maximum of two instances.

", "HighAvailabilityConfig$desiredCapacity": "

The number of instances in a high availability configuration. The minimum possible value is 1 and the maximum is 100.

", "UpdateEnvironmentRequest$desiredCapacity": "

The desired capacity for the runtime environment to update. The minimum possible value is 0 and the maximum is 100.

" } @@ -494,6 +495,11 @@ "ListEnvironmentsResponse$environments": "

Returns a list of summary details for all the runtime environments in your account.

" } }, + "ExecutionTimeoutException": { + "base": "

Failed to connect to server, or didn’t receive response within expected time period.

", + "refs": { + } + }, "ExternalLocation": { "base": "

Defines an external storage location.

", "refs": { @@ -707,6 +713,12 @@ "refs": { } }, + "JobIdentifier": { + "base": "

Identifies a specific batch job.

", + "refs": { + "S3BatchJobIdentifier$identifier": "

Identifies the batch job definition. This identifier can also point to any batch job definition that already exists in the application or to one of the batch job definitions within the directory that is specified in keyPrefix.

" + } + }, "ListApplicationVersionsRequest": { "base": null, "refs": { @@ -825,6 +837,12 @@ "LogGroupSummaries$member": null } }, + "Long": { + "base": null, + "refs": { + "GetDataSetDetailsResponse$fileSize": "

File size of the dataset.

" + } + }, "MaintenanceSchedule": { "base": "

The information about the maintenance schedule.

", "refs": { @@ -922,6 +940,12 @@ "refs": { } }, + "S3BatchJobIdentifier": { + "base": "

A batch job identifier in which the batch jobs to run are identified by an Amazon S3 location.

", + "refs": { + "BatchJobIdentifier$s3BatchJobIdentifier": "

Specifies an Amazon S3 location that identifies the batch jobs that you want to run. Use this identifier to run ad hoc batch jobs.

" + } + }, "ScriptBatchJobDefinition": { "base": "

A batch job definition contained in a script.

", "refs": { @@ -939,6 +963,11 @@ "refs": { } }, + "ServiceUnavailableException": { + "base": "

Server cannot process the request at the moment.

", + "refs": { + } + }, "StartApplicationRequest": { "base": null, "refs": { @@ -1001,10 +1030,12 @@ "DataSet$datasetName": "

The logical identifier for a specific data set (in mainframe format).

", "DataSet$relativePath": "

The relative location of the data set in the database or file system.

", "DataSet$storageType": "

The storage type of the data set: database or file system. For Micro Focus, database corresponds to datastore and file system corresponds to EFS/FSX. For Blu Age, there is no support of file system and database corresponds to Blusam.

", + "DataSetImportTask$statusReason": "

If dataset import failed, the failure reason will show here.

", "DeployedVersionSummary$statusReason": "

The reason for the reported status.

", "DeploymentSummary$statusReason": "

The reason for the reported status.

", "EngineVersionsSummary$engineType": "

The type of target platform for the application.

", "EngineVersionsSummary$engineVersion": "

The version of the engine type used by the application.

", + "ExecutionTimeoutException$message": null, "FileBatchJobDefinition$fileName": "

The name of the file containing the batch job definition.

", "FileBatchJobDefinition$folderPath": "

The path to the file containing the batch job definition.

", "FileBatchJobIdentifier$fileName": "

The file name for the batch job identifier.

", @@ -1021,6 +1052,8 @@ "GetEnvironmentResponse$statusReason": "

The reason for the reported status.

", "GetSignedBluinsightsUrlResponse$signedBiUrl": "

Single sign-on AWS Blu Insights URL.

", "InternalServerException$message": null, + "JobIdentifier$fileName": "

The name of the file that contains the batch job definition.

", + "JobIdentifier$scriptName": "

The name of the script that contains the batch job definition.

", "ListBatchJobDefinitionsRequest$prefix": "

If the batch job definition is a FileBatchJobDefinition, the prefix allows you to search on the file names of FileBatchJobDefinitions.

", "PendingMaintenance$engineVersion": "

The specific runtime engine that the maintenance schedule applies to.

", "PoAttributes$encoding": "

The character set encoding of the data set.

", @@ -1035,6 +1068,8 @@ "ResourceNotFoundException$message": null, "ResourceNotFoundException$resourceId": "

The ID of the missing resource.

", "ResourceNotFoundException$resourceType": "

The type of the missing resource.

", + "S3BatchJobIdentifier$bucket": "

The Amazon S3 bucket that contains the batch job definitions.

", + "S3BatchJobIdentifier$keyPrefix": "

The key prefix that specifies the path to the folder in the S3 bucket that has the batch job definitions.

", "ScriptBatchJobDefinition$scriptName": "

The name of the script containing the batch job definition.

", "ScriptBatchJobIdentifier$scriptName": "

The name of the script containing the batch job definition.

", "ServiceQuotaExceededException$message": null, @@ -1042,10 +1077,11 @@ "ServiceQuotaExceededException$resourceId": "

The ID of the resource that is exceeding the quota limit.

", "ServiceQuotaExceededException$resourceType": "

The type of resource that is exceeding the quota limit for Amazon Web Services Mainframe Modernization.

", "ServiceQuotaExceededException$serviceCode": "

A code that identifies the service that the exceeded quota belongs to.

", + "ServiceUnavailableException$message": null, "ThrottlingException$message": null, - "ThrottlingException$quotaCode": "

The identifier of the throttled reuqest.

", + "ThrottlingException$quotaCode": "

The identifier of the throttled request.

", "ThrottlingException$serviceCode": "

The identifier of the service that the throttled request was made to.

", - "UpdateEnvironmentRequest$preferredMaintenanceWindow": "

Configures the maintenance window you want for the runtime environment. If you do not provide a value, a random system-generated value will be assigned.

", + "UpdateEnvironmentRequest$preferredMaintenanceWindow": "

Configures the maintenance window that you want for the runtime environment. The maintenance window must have the format ddd:hh24:mi-ddd:hh24:mi and must be less than 24 hours. The following two examples are valid maintenance windows: sun:23:45-mon:00:15 or sat:01:00-sat:03:00.

If you do not provide a value, a random system-generated value will be assigned.

", "ValidationException$message": null, "ValidationExceptionField$message": "

The message of the exception field.

", "ValidationExceptionField$name": "

The name of the exception field.

", @@ -1090,6 +1126,7 @@ "FsxStorageConfiguration$mountPoint": "

The mount point for the file system.

", "GetDataSetDetailsRequest$dataSetName": "

The name of the data set.

", "GetDataSetDetailsResponse$dataSetName": "

The name of the data set.

", + "ListDataSetsRequest$nameFilter": "

Filter dataset name matching the specified pattern. Can use * and % as wild cards.

", "ListDataSetsRequest$prefix": "

The prefix of the data set name, which you can use to filter the list of data sets.

" } }, @@ -1111,9 +1148,9 @@ "String50": { "base": null, "refs": { - "CreateEnvironmentRequest$preferredMaintenanceWindow": "

Configures the maintenance window you want for the runtime environment. If you do not provide a value, a random system-generated value will be assigned.

", + "CreateEnvironmentRequest$preferredMaintenanceWindow": "

Configures the maintenance window that you want for the runtime environment. The maintenance window must have the format ddd:hh24:mi-ddd:hh24:mi and must be less than 24 hours. The following two examples are valid maintenance windows: sun:23:45-mon:00:15 or sat:01:00-sat:03:00.

If you do not provide a value, a random system-generated value will be assigned.

", "GdgDetailAttributes$rollDisposition": "

The disposition of the data set in the catalog.

", - "GetEnvironmentResponse$preferredMaintenanceWindow": "

Configures the maintenance window you want for the runtime environment. If you do not provide a value, a random system-generated value will be assigned.

", + "GetEnvironmentResponse$preferredMaintenanceWindow": "

The maintenance window for the runtime environment. If you don't provide a value for the maintenance window, the service assigns a random value.

", "GetEnvironmentResponse$vpcId": "

The unique identifier for the VPC used with this runtime environment.

", "String50List$member": null } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/m2/2021-04-28/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/m2/2021-04-28/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/m2/2021-04-28/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/m2/2021-04-28/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://m2-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://m2-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://m2-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://m2-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://m2.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://m2.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://m2.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://m2.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/machinelearning/2014-12-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/machinelearning/2014-12-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/machinelearning/2014-12-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/machinelearning/2014-12-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1305,7 +1305,8 @@ "RDSDatabasePassword":{ "type":"string", "max":128, - "min":8 + "min":8, + "sensitive":true }, "RDSDatabaseUsername":{ "type":"string", @@ -1416,7 +1417,8 @@ "RedshiftDatabasePassword":{ "type":"string", "max":64, - "min":8 + "min":8, + "sensitive":true }, "RedshiftDatabaseUsername":{ "type":"string", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/machinelearning/2014-12-12/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/machinelearning/2014-12-12/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/machinelearning/2014-12-12/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/machinelearning/2014-12-12/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://machinelearning-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://machinelearning-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://machinelearning.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://machinelearning.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/machinelearning/2014-12-12/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/machinelearning/2014-12-12/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/machinelearning/2014-12-12/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/machinelearning/2014-12-12/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,327 @@ +{ + "testCases": [ + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://machinelearning.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/api-2.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,365 +0,0 @@ -{ - "version":"2.0", - "metadata":{ - "apiVersion":"2017-12-19", - "endpointPrefix":"macie", - "jsonVersion":"1.1", - "protocol":"json", - "serviceFullName":"Amazon Macie", - "serviceId":"Macie", - "signatureVersion":"v4", - "targetPrefix":"MacieService", - "uid":"macie-2017-12-19" - }, - "operations":{ - "AssociateMemberAccount":{ - "name":"AssociateMemberAccount", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"AssociateMemberAccountRequest"}, - "errors":[ - {"shape":"InvalidInputException"}, - {"shape":"LimitExceededException"}, - {"shape":"InternalException"} - ] - }, - "AssociateS3Resources":{ - "name":"AssociateS3Resources", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"AssociateS3ResourcesRequest"}, - "output":{"shape":"AssociateS3ResourcesResult"}, - "errors":[ - {"shape":"InvalidInputException"}, - {"shape":"AccessDeniedException"}, - {"shape":"LimitExceededException"}, - {"shape":"InternalException"} - ] - }, - "DisassociateMemberAccount":{ - "name":"DisassociateMemberAccount", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DisassociateMemberAccountRequest"}, - "errors":[ - {"shape":"InvalidInputException"}, - {"shape":"InternalException"} - ] - }, - "DisassociateS3Resources":{ - "name":"DisassociateS3Resources", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DisassociateS3ResourcesRequest"}, - "output":{"shape":"DisassociateS3ResourcesResult"}, - "errors":[ - {"shape":"InvalidInputException"}, - {"shape":"AccessDeniedException"}, - {"shape":"InternalException"} - ] - }, - "ListMemberAccounts":{ - "name":"ListMemberAccounts", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListMemberAccountsRequest"}, - "output":{"shape":"ListMemberAccountsResult"}, - "errors":[ - {"shape":"InternalException"}, - {"shape":"InvalidInputException"} - ] - }, - "ListS3Resources":{ - "name":"ListS3Resources", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListS3ResourcesRequest"}, - "output":{"shape":"ListS3ResourcesResult"}, - "errors":[ - {"shape":"InvalidInputException"}, - {"shape":"AccessDeniedException"}, - {"shape":"InternalException"} - ] - }, - "UpdateS3Resources":{ - "name":"UpdateS3Resources", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"UpdateS3ResourcesRequest"}, - "output":{"shape":"UpdateS3ResourcesResult"}, - "errors":[ - {"shape":"InvalidInputException"}, - {"shape":"AccessDeniedException"}, - {"shape":"InternalException"} - ] - } - }, - "shapes":{ - "AWSAccountId":{ - "type":"string", - "pattern":"[0-9]{12}" - }, - "AccessDeniedException":{ - "type":"structure", - "members":{ - "message":{"shape":"ExceptionMessage"}, - "resourceType":{"shape":"ResourceType"} - }, - "exception":true - }, - "AssociateMemberAccountRequest":{ - "type":"structure", - "required":["memberAccountId"], - "members":{ - "memberAccountId":{"shape":"AWSAccountId"} - } - }, - "AssociateS3ResourcesRequest":{ - "type":"structure", - "required":["s3Resources"], - "members":{ - "memberAccountId":{"shape":"AWSAccountId"}, - "s3Resources":{"shape":"S3ResourcesClassification"} - } - }, - "AssociateS3ResourcesResult":{ - "type":"structure", - "members":{ - "failedS3Resources":{"shape":"FailedS3Resources"} - } - }, - "BucketName":{ - "type":"string", - "max":500 - }, - "ClassificationType":{ - "type":"structure", - "required":[ - "oneTime", - "continuous" - ], - "members":{ - "oneTime":{"shape":"S3OneTimeClassificationType"}, - "continuous":{"shape":"S3ContinuousClassificationType"} - } - }, - "ClassificationTypeUpdate":{ - "type":"structure", - "members":{ - "oneTime":{"shape":"S3OneTimeClassificationType"}, - "continuous":{"shape":"S3ContinuousClassificationType"} - } - }, - "DisassociateMemberAccountRequest":{ - "type":"structure", - "required":["memberAccountId"], - "members":{ - "memberAccountId":{"shape":"AWSAccountId"} - } - }, - "DisassociateS3ResourcesRequest":{ - "type":"structure", - "required":["associatedS3Resources"], - "members":{ - "memberAccountId":{"shape":"AWSAccountId"}, - "associatedS3Resources":{"shape":"S3Resources"} - } - }, - "DisassociateS3ResourcesResult":{ - "type":"structure", - "members":{ - "failedS3Resources":{"shape":"FailedS3Resources"} - } - }, - "ErrorCode":{ - "type":"string", - "max":10 - }, - "ExceptionMessage":{ - "type":"string", - "max":10000 - }, - "FailedS3Resource":{ - "type":"structure", - "members":{ - "failedItem":{"shape":"S3Resource"}, - "errorCode":{"shape":"ErrorCode"}, - "errorMessage":{"shape":"ExceptionMessage"} - } - }, - "FailedS3Resources":{ - "type":"list", - "member":{"shape":"FailedS3Resource"} - }, - "FieldName":{ - "type":"string", - "max":1000 - }, - "InternalException":{ - "type":"structure", - "members":{ - "errorCode":{"shape":"ErrorCode"}, - "message":{"shape":"ExceptionMessage"} - }, - "exception":true, - "fault":true - }, - "InvalidInputException":{ - "type":"structure", - "members":{ - "errorCode":{"shape":"ErrorCode"}, - "message":{"shape":"ExceptionMessage"}, - "fieldName":{"shape":"FieldName"} - }, - "exception":true - }, - "LimitExceededException":{ - "type":"structure", - "members":{ - "errorCode":{"shape":"ErrorCode"}, - "message":{"shape":"ExceptionMessage"}, - "resourceType":{"shape":"ResourceType"} - }, - "exception":true - }, - "ListMemberAccountsRequest":{ - "type":"structure", - "members":{ - "nextToken":{"shape":"NextToken"}, - "maxResults":{"shape":"MaxResults"} - } - }, - "ListMemberAccountsResult":{ - "type":"structure", - "members":{ - "memberAccounts":{"shape":"MemberAccounts"}, - "nextToken":{"shape":"NextToken"} - } - }, - "ListS3ResourcesRequest":{ - "type":"structure", - "members":{ - "memberAccountId":{"shape":"AWSAccountId"}, - "nextToken":{"shape":"NextToken"}, - "maxResults":{"shape":"MaxResults"} - } - }, - "ListS3ResourcesResult":{ - "type":"structure", - "members":{ - "s3Resources":{"shape":"S3ResourcesClassification"}, - "nextToken":{"shape":"NextToken"} - } - }, - "MaxResults":{ - "type":"integer", - "box":true, - "max":250 - }, - "MemberAccount":{ - "type":"structure", - "members":{ - "accountId":{"shape":"AWSAccountId"} - } - }, - "MemberAccounts":{ - "type":"list", - "member":{"shape":"MemberAccount"} - }, - "NextToken":{ - "type":"string", - "max":500 - }, - "Prefix":{ - "type":"string", - "max":10000 - }, - "ResourceType":{ - "type":"string", - "max":1000 - }, - "S3ContinuousClassificationType":{ - "type":"string", - "enum":["FULL"] - }, - "S3OneTimeClassificationType":{ - "type":"string", - "enum":[ - "FULL", - "NONE" - ] - }, - "S3Resource":{ - "type":"structure", - "required":["bucketName"], - "members":{ - "bucketName":{"shape":"BucketName"}, - "prefix":{"shape":"Prefix"} - } - }, - "S3ResourceClassification":{ - "type":"structure", - "required":[ - "bucketName", - "classificationType" - ], - "members":{ - "bucketName":{"shape":"BucketName"}, - "prefix":{"shape":"Prefix"}, - "classificationType":{"shape":"ClassificationType"} - } - }, - "S3ResourceClassificationUpdate":{ - "type":"structure", - "required":[ - "bucketName", - "classificationTypeUpdate" - ], - "members":{ - "bucketName":{"shape":"BucketName"}, - "prefix":{"shape":"Prefix"}, - "classificationTypeUpdate":{"shape":"ClassificationTypeUpdate"} - } - }, - "S3Resources":{ - "type":"list", - "member":{"shape":"S3Resource"} - }, - "S3ResourcesClassification":{ - "type":"list", - "member":{"shape":"S3ResourceClassification"} - }, - "S3ResourcesClassificationUpdate":{ - "type":"list", - "member":{"shape":"S3ResourceClassificationUpdate"} - }, - "UpdateS3ResourcesRequest":{ - "type":"structure", - "required":["s3ResourcesUpdate"], - "members":{ - "memberAccountId":{"shape":"AWSAccountId"}, - "s3ResourcesUpdate":{"shape":"S3ResourcesClassificationUpdate"} - } - }, - "UpdateS3ResourcesResult":{ - "type":"structure", - "members":{ - "failedS3Resources":{"shape":"FailedS3Resources"} - } - } - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/docs-2.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,261 +0,0 @@ -{ - "version": "2.0", - "service": "Amazon Macie Classic

Amazon Macie Classic has been discontinued and is no longer available.

A new Amazon Macie is now available with significant design improvements and additional features, at a lower price and in most Amazon Web Services Regions. We encourage you to take advantage of the new and improved features, and benefit from the reduced cost. To learn about features and pricing for the new Macie, see Amazon Macie. To learn how to use the new Macie, see the Amazon Macie User Guide.

", - "operations": { - "AssociateMemberAccount": "

(Discontinued) Associates a specified Amazon Web Services account with Amazon Macie Classic as a member account.

", - "AssociateS3Resources": "

(Discontinued) Associates specified S3 resources with Amazon Macie Classic for monitoring and data classification. If memberAccountId isn't specified, the action associates specified S3 resources with Macie Classic for the current Macie Classic administrator account. If memberAccountId is specified, the action associates specified S3 resources with Macie Classic for the specified member account.

", - "DisassociateMemberAccount": "

(Discontinued) Removes the specified member account from Amazon Macie Classic.

", - "DisassociateS3Resources": "

(Discontinued) Removes specified S3 resources from being monitored by Amazon Macie Classic. If memberAccountId isn't specified, the action removes specified S3 resources from Macie Classic for the current Macie Classic administrator account. If memberAccountId is specified, the action removes specified S3 resources from Macie Classic for the specified member account.

", - "ListMemberAccounts": "

(Discontinued) Lists all Amazon Macie Classic member accounts for the current Macie Classic administrator account.

", - "ListS3Resources": "

(Discontinued) Lists all the S3 resources associated with Amazon Macie Classic. If memberAccountId isn't specified, the action lists the S3 resources associated with Macie Classic for the current Macie Classic administrator account. If memberAccountId is specified, the action lists the S3 resources associated with Macie Classic for the specified member account.

", - "UpdateS3Resources": "

(Discontinued) Updates the classification types for the specified S3 resources. If memberAccountId isn't specified, the action updates the classification types of the S3 resources associated with Amazon Macie Classic for the current Macie Classic administrator account. If memberAccountId is specified, the action updates the classification types of the S3 resources associated with Macie Classic for the specified member account.

" - }, - "shapes": { - "AWSAccountId": { - "base": null, - "refs": { - "AssociateMemberAccountRequest$memberAccountId": "

(Discontinued) The ID of the Amazon Web Services account that you want to associate with Amazon Macie Classic as a member account.

", - "AssociateS3ResourcesRequest$memberAccountId": "

(Discontinued) The ID of the Amazon Macie Classic member account whose resources you want to associate with Macie Classic.

", - "DisassociateMemberAccountRequest$memberAccountId": "

(Discontinued) The ID of the member account that you want to remove from Amazon Macie Classic.

", - "DisassociateS3ResourcesRequest$memberAccountId": "

(Discontinued) The ID of the Amazon Macie Classic member account whose resources you want to remove from being monitored by Macie Classic.

", - "ListS3ResourcesRequest$memberAccountId": "

(Discontinued) The Amazon Macie Classic member account ID whose associated S3 resources you want to list.

", - "MemberAccount$accountId": "

(Discontinued) The Amazon Web Services account ID of the Amazon Macie Classic member account.

", - "UpdateS3ResourcesRequest$memberAccountId": "

(Discontinued) The Amazon Web Services account ID of the Amazon Macie Classic member account whose S3 resources' classification types you want to update.

" - } - }, - "AccessDeniedException": { - "base": "

(Discontinued) You do not have required permissions to access the requested resource.

", - "refs": { - } - }, - "AssociateMemberAccountRequest": { - "base": null, - "refs": { - } - }, - "AssociateS3ResourcesRequest": { - "base": null, - "refs": { - } - }, - "AssociateS3ResourcesResult": { - "base": null, - "refs": { - } - }, - "BucketName": { - "base": null, - "refs": { - "S3Resource$bucketName": "

(Discontinued) The name of the S3 bucket.

", - "S3ResourceClassification$bucketName": "

(Discontinued) The name of the S3 bucket that you want to associate with Amazon Macie Classic.

", - "S3ResourceClassificationUpdate$bucketName": "

(Discontinued) The name of the S3 bucket whose classification types you want to update.

" - } - }, - "ClassificationType": { - "base": "

(Discontinued) The classification type that Amazon Macie Classic applies to the associated S3 resources.

", - "refs": { - "S3ResourceClassification$classificationType": "

(Discontinued) The classification type that you want to specify for the resource associated with Amazon Macie Classic.

" - } - }, - "ClassificationTypeUpdate": { - "base": "

(Discontinued) The classification type that Amazon Macie Classic applies to the associated S3 resources. At least one of the classification types (oneTime or continuous) must be specified.

", - "refs": { - "S3ResourceClassificationUpdate$classificationTypeUpdate": "

(Discontinued) The classification type that you want to update for the resource associated with Amazon Macie Classic.

" - } - }, - "DisassociateMemberAccountRequest": { - "base": null, - "refs": { - } - }, - "DisassociateS3ResourcesRequest": { - "base": null, - "refs": { - } - }, - "DisassociateS3ResourcesResult": { - "base": null, - "refs": { - } - }, - "ErrorCode": { - "base": "Error code for the exception", - "refs": { - "FailedS3Resource$errorCode": "

(Discontinued) The status code of a failed item.

", - "InternalException$errorCode": null, - "InvalidInputException$errorCode": null, - "LimitExceededException$errorCode": null - } - }, - "ExceptionMessage": { - "base": null, - "refs": { - "AccessDeniedException$message": null, - "FailedS3Resource$errorMessage": "

(Discontinued) The error message of a failed item.

", - "InternalException$message": null, - "InvalidInputException$message": null, - "LimitExceededException$message": null - } - }, - "FailedS3Resource": { - "base": "

(Discontinued) Includes details about the failed S3 resources.

", - "refs": { - "FailedS3Resources$member": null - } - }, - "FailedS3Resources": { - "base": null, - "refs": { - "AssociateS3ResourcesResult$failedS3Resources": "

(Discontinued) S3 resources that couldn't be associated with Amazon Macie Classic. An error code and an error message are provided for each failed item.

", - "DisassociateS3ResourcesResult$failedS3Resources": "

(Discontinued) S3 resources that couldn't be removed from being monitored and classified by Amazon Macie Classic. An error code and an error message are provided for each failed item.

", - "UpdateS3ResourcesResult$failedS3Resources": "

(Discontinued) The S3 resources whose classification types can't be updated. An error code and an error message are provided for each failed item.

" - } - }, - "FieldName": { - "base": "Field that has invalid input", - "refs": { - "InvalidInputException$fieldName": null - } - }, - "InternalException": { - "base": "

(Discontinued) Internal server error.

", - "refs": { - } - }, - "InvalidInputException": { - "base": "

(Discontinued) The request was rejected because an invalid or out-of-range value was supplied for an input parameter.

", - "refs": { - } - }, - "LimitExceededException": { - "base": "

(Discontinued) The request was rejected because it attempted to create resources beyond the current Amazon Web Services account quotas. The error code describes the quota exceeded.

", - "refs": { - } - }, - "ListMemberAccountsRequest": { - "base": null, - "refs": { - } - }, - "ListMemberAccountsResult": { - "base": null, - "refs": { - } - }, - "ListS3ResourcesRequest": { - "base": null, - "refs": { - } - }, - "ListS3ResourcesResult": { - "base": null, - "refs": { - } - }, - "MaxResults": { - "base": null, - "refs": { - "ListMemberAccountsRequest$maxResults": "

(Discontinued) Use this parameter to indicate the maximum number of items that you want in the response. The default value is 250.

", - "ListS3ResourcesRequest$maxResults": "

(Discontinued) Use this parameter to indicate the maximum number of items that you want in the response. The default value is 250.

" - } - }, - "MemberAccount": { - "base": "

(Discontinued) Contains information about the Amazon Macie Classic member account.

", - "refs": { - "MemberAccounts$member": null - } - }, - "MemberAccounts": { - "base": null, - "refs": { - "ListMemberAccountsResult$memberAccounts": "

(Discontinued) A list of the Amazon Macie Classic member accounts returned by the action. The current Macie Classic administrator account is also included in this list.

" - } - }, - "NextToken": { - "base": null, - "refs": { - "ListMemberAccountsRequest$nextToken": "

(Discontinued) Use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListMemberAccounts action. Subsequent calls to the action fill nextToken in the request with the value of nextToken from the previous response to continue listing data.

", - "ListMemberAccountsResult$nextToken": "

(Discontinued) When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

", - "ListS3ResourcesRequest$nextToken": "

(Discontinued) Use this parameter when paginating results. Set its value to null on your first call to the ListS3Resources action. Subsequent calls to the action fill nextToken in the request with the value of nextToken from the previous response to continue listing data.

", - "ListS3ResourcesResult$nextToken": "

(Discontinued) When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

" - } - }, - "Prefix": { - "base": null, - "refs": { - "S3Resource$prefix": "

(Discontinued) The prefix of the S3 bucket.

", - "S3ResourceClassification$prefix": "

(Discontinued) The prefix of the S3 bucket that you want to associate with Amazon Macie Classic.

", - "S3ResourceClassificationUpdate$prefix": "

(Discontinued) The prefix of the S3 bucket whose classification types you want to update.

" - } - }, - "ResourceType": { - "base": "Resource type that caused the exception", - "refs": { - "AccessDeniedException$resourceType": null, - "LimitExceededException$resourceType": null - } - }, - "S3ContinuousClassificationType": { - "base": null, - "refs": { - "ClassificationType$continuous": "

(Discontinued) A continuous classification of the objects that are added to a specified S3 bucket. Amazon Macie Classic begins performing continuous classification after a bucket is successfully associated with Macie Classic.

", - "ClassificationTypeUpdate$continuous": "

(Discontinued) A continuous classification of the objects that are added to a specified S3 bucket. Amazon Macie Classic begins performing continuous classification after a bucket is successfully associated with Macie Classic.

" - } - }, - "S3OneTimeClassificationType": { - "base": null, - "refs": { - "ClassificationType$oneTime": "

(Discontinued) A one-time classification of all of the existing objects in a specified S3 bucket.

", - "ClassificationTypeUpdate$oneTime": "

(Discontinued) A one-time classification of all of the existing objects in a specified S3 bucket.

" - } - }, - "S3Resource": { - "base": "

(Discontinued) Contains information about the S3 resource. This data type is used as a request parameter in the DisassociateS3Resources action and can be used as a response parameter in the AssociateS3Resources and UpdateS3Resources actions.

", - "refs": { - "FailedS3Resource$failedItem": "

(Discontinued) The failed S3 resources.

", - "S3Resources$member": null - } - }, - "S3ResourceClassification": { - "base": "

(Discontinued) The S3 resources that you want to associate with Amazon Macie Classic for monitoring and data classification. This data type is used as a request parameter in the AssociateS3Resources action and a response parameter in the ListS3Resources action.

", - "refs": { - "S3ResourcesClassification$member": null - } - }, - "S3ResourceClassificationUpdate": { - "base": "

(Discontinued) The S3 resources whose classification types you want to update. This data type is used as a request parameter in the UpdateS3Resources action.

", - "refs": { - "S3ResourcesClassificationUpdate$member": null - } - }, - "S3Resources": { - "base": null, - "refs": { - "DisassociateS3ResourcesRequest$associatedS3Resources": "

(Discontinued) The S3 resources (buckets or prefixes) that you want to remove from being monitored and classified by Amazon Macie Classic.

" - } - }, - "S3ResourcesClassification": { - "base": null, - "refs": { - "AssociateS3ResourcesRequest$s3Resources": "

(Discontinued) The S3 resources that you want to associate with Amazon Macie Classic for monitoring and data classification.

", - "ListS3ResourcesResult$s3Resources": "

(Discontinued) A list of the associated S3 resources returned by the action.

" - } - }, - "S3ResourcesClassificationUpdate": { - "base": null, - "refs": { - "UpdateS3ResourcesRequest$s3ResourcesUpdate": "

(Discontinued) The S3 resources whose classification types you want to update.

" - } - }, - "UpdateS3ResourcesRequest": { - "base": null, - "refs": { - } - }, - "UpdateS3ResourcesResult": { - "base": null, - "refs": { - } - } - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/examples-1.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,5 +0,0 @@ -{ - "version": "1.0", - "examples": { - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie/2017-12-19/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie/2017-12-19/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ -{ - "pagination": { - "ListMemberAccounts": { - "input_token": "nextToken", - "output_token": "nextToken", - "limit_key": "maxResults" - }, - "ListS3Resources": { - "input_token": "nextToken", - "output_token": "nextToken", - "limit_key": "maxResults" - } - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie2/2020-01-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie2/2020-01-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie2/2020-01-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie2/2020-01-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5245,6 +5245,10 @@ "configuration": { "shape": "RevealConfiguration", "locationName": "configuration" + }, + "retrievalConfiguration": { + "shape": "RetrievalConfiguration", + "locationName": "retrievalConfiguration" } } }, @@ -6696,6 +6700,33 @@ } } }, + "RetrievalConfiguration": { + "type": "structure", + "members": { + "externalId": { + "shape": "__string", + "locationName": "externalId" + }, + "retrievalMode": { + "shape": "RetrievalMode", + "locationName": "retrievalMode" + }, + "roleName": { + "shape": "__stringMin1Max64PatternW", + "locationName": "roleName" + } + }, + "required": [ + "retrievalMode" + ] + }, + "RetrievalMode": { + "type": "string", + "enum": [ + "CALLER_CREDENTIALS", + "ASSUME_ROLE" + ] + }, "RevealConfiguration": { "type": "structure", "members": { @@ -7682,7 +7713,13 @@ "UNSUPPORTED_OBJECT_TYPE", "UNSUPPORTED_FINDING_TYPE", "INVALID_CLASSIFICATION_RESULT", - "OBJECT_UNAVAILABLE" + "OBJECT_UNAVAILABLE", + "ACCOUNT_NOT_IN_ORGANIZATION", + "MISSING_GET_MEMBER_PERMISSION", + "ROLE_TOO_PERMISSIVE", + "MEMBER_ROLE_TOO_PERMISSIVE", + "INVALID_RESULT_SIGNATURE", + "RESULT_NOT_SIGNED" ] }, "Unit": { @@ -7994,12 +8031,32 @@ "type": "structure", "members": {} }, + "UpdateRetrievalConfiguration": { + "type": "structure", + "members": { + "retrievalMode": { + "shape": "RetrievalMode", + "locationName": "retrievalMode" + }, + "roleName": { + "shape": "__stringMin1Max64PatternW", + "locationName": "roleName" + } + }, + "required": [ + "retrievalMode" + ] + }, "UpdateRevealConfigurationRequest": { "type": "structure", "members": { "configuration": { "shape": "RevealConfiguration", "locationName": "configuration" + }, + "retrievalConfiguration": { + "shape": "UpdateRetrievalConfiguration", + "locationName": "retrievalConfiguration" } }, "required": [ @@ -8012,6 +8069,10 @@ "configuration": { "shape": "RevealConfiguration", "locationName": "configuration" + }, + "retrievalConfiguration": { + "shape": "RetrievalConfiguration", + "locationName": "retrievalConfiguration" } } }, @@ -8538,6 +8599,12 @@ "max": 512, "pattern": "^[\\s\\S]+$" }, + "__stringMin1Max64PatternW": { + "type": "string", + "min": 1, + "max": 64, + "pattern": "^[\\w+=,.@-]*$" + }, "__stringMin22Max22PatternAZ0922": { "type": "string", "min": 22, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie2/2020-01-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie2/2020-01-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie2/2020-01-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie2/2020-01-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -867,7 +867,7 @@ "refs" : { "ListJobsFilterTerm$Comparator" : "

The operator to use to filter the results.

", "SimpleCriterionForJob$Comparator" : "

The operator to use in the condition. Valid values are EQ (equals) and NE (not equals).

", - "SimpleScopeTerm$Comparator" : "

The operator to use in the condition. Valid values for each supported property (key) are:

  • OBJECT_EXTENSION - EQ (equals) or NE (not equals)

  • OBJECT_KEY - STARTS_WITH

  • OBJECT_LAST_MODIFIED_DATE - Any operator except CONTAINS

  • OBJECT_SIZE - Any operator except CONTAINS

", + "SimpleScopeTerm$Comparator" : "

The operator to use in the condition. Valid values for each supported property (key) are:

  • OBJECT_EXTENSION - EQ (equals) or NE (not equals)

  • OBJECT_KEY - STARTS_WITH

  • OBJECT_LAST_MODIFIED_DATE - EQ (equals), GT (greater than), GTE (greater than or equals), LT (less than), LTE (less than or equals), or NE (not equals)

  • OBJECT_SIZE - EQ (equals), GT (greater than), GTE (greater than or equals), LT (less than), LTE (less than or equals), or NE (not equals)

", "TagCriterionForJob$Comparator" : "

The operator to use in the condition. Valid values are EQ (equals) and NE (not equals).

", "TagScopeTerm$Comparator" : "

The operator to use in the condition. Valid values are EQ (equals) or NE (not equals).

" } @@ -1062,7 +1062,7 @@ "ManagedDataIdentifierSelector" : { "base" : "

The selection type that determines which managed data identifiers a classification job uses to analyze data. Valid values are:

", "refs" : { - "CreateClassificationJobRequest$ManagedDataIdentifierSelector" : "

The selection type to apply when determining which managed data identifiers the job uses to analyze data. Valid values are:

  • ALL - Use all managed data identifiers. If you specify this value, don't specify any values for the managedDataIdentifierIds property.

  • EXCLUDE - Use all managed data identifiers except the ones specified by the managedDataIdentifierIds property.

  • INCLUDE - Use only the managed data identifiers specified by the managedDataIdentifierIds property.

  • NONE - Don't use any managed data identifiers. If you specify this value, specify at least one value for the customDataIdentifierIds property and don't specify any values for the managedDataIdentifierIds property.

  • RECOMMENDED (default) - Use the recommended set of managed data identifiers. If you specify this value, don't specify any values for the managedDataIdentifierIds property.

If you don't specify a value for this property, the job uses the recommended set of managed data identifiers.

If the job is a recurring job and you specify ALL or EXCLUDE, each job run automatically uses new managed data identifiers that are released. If you specify RECOMMENDED for a recurring job, each job run automatically uses all the managed data identifiers that are in the recommended set when the run starts.

For information about individual managed data identifiers or to determine which ones are in the recommended set, see Using managed data identifiers and Recommended managed data identifiers in the Amazon Macie User Guide.

", + "CreateClassificationJobRequest$ManagedDataIdentifierSelector" : "

The selection type to apply when determining which managed data identifiers the job uses to analyze data. Valid values are:

  • ALL - Use all managed data identifiers. If you specify this value, don't specify any values for the managedDataIdentifierIds property.

  • EXCLUDE - Use all managed data identifiers except the ones specified by the managedDataIdentifierIds property.

  • INCLUDE - Use only the managed data identifiers specified by the managedDataIdentifierIds property.

  • NONE - Don't use any managed data identifiers. If you specify this value, specify at least one value for the customDataIdentifierIds property and don't specify any values for the managedDataIdentifierIds property.

  • RECOMMENDED (default) - Use the recommended set of managed data identifiers. If you specify this value, don't specify any values for the managedDataIdentifierIds property.

If you don't specify a value for this property, the job uses the recommended set of managed data identifiers.

If the job is a recurring job and you specify ALL or EXCLUDE, each job run automatically uses new managed data identifiers that are released. If you don't specify a value for this property or you specify RECOMMENDED for a recurring job, each job run automatically uses all the managed data identifiers that are in the recommended set when the run starts.

For information about individual managed data identifiers or to determine which ones are in the recommended set, see Using managed data identifiers and Recommended managed data identifiers in the Amazon Macie User Guide.

", "DescribeClassificationJobResponse$ManagedDataIdentifierSelector" : "

The selection type that determines which managed data identifiers the job uses when it analyzes data. Possible values are:

  • ALL - Use all managed data identifiers.

  • EXCLUDE - Use all managed data identifiers except the ones specified by the managedDataIdentifierIds property.

  • INCLUDE - Use only the managed data identifiers specified by the managedDataIdentifierIds property.

  • NONE - Don't use any managed data identifiers. Use only custom data identifiers (customDataIdentifierIds).

  • RECOMMENDED (default) - Use the recommended set of managed data identifiers.

If this value is null, the job uses the recommended set of managed data identifiers.

If the job is a recurring job and this value is ALL or EXCLUDE, each job run automatically uses new managed data identifiers that are released. If this value is null or RECOMMENDED for a recurring job, each job run uses all the managed data identifiers that are in the recommended set when the run starts.

For information about individual managed data identifiers or to determine which ones are in the recommended set, see Using managed data identifiers and Recommended managed data identifiers in the Amazon Macie User Guide.

" } }, @@ -1237,12 +1237,26 @@ "Finding$ResourcesAffected" : "

The resources that the finding applies to.

" } }, + "RetrievalConfiguration" : { + "base" : "

Provides information about the access method and settings that are used to retrieve occurrences of sensitive data reported by findings.

", + "refs" : { + "GetRevealConfigurationResponse$RetrievalConfiguration" : "

The access method and settings that are used to retrieve the sensitive data.

", + "UpdateRevealConfigurationResponse$RetrievalConfiguration" : "

The access method and settings to use to retrieve the sensitive data.

" + } + }, + "RetrievalMode" : { + "base" : "

The access method to use when retrieving occurrences of sensitive data reported by findings. Valid values are:

", + "refs" : { + "RetrievalConfiguration$RetrievalMode" : "

The access method that's used when retrieving sensitive data from affected S3 objects. Valid values are: ASSUME_ROLE, assume an IAM role that is in the affected Amazon Web Services account and delegates access to Amazon Macie (roleName); and, CALLER_CREDENTIALS, use the credentials of the IAM user who requests the sensitive data.

", + "UpdateRetrievalConfiguration$RetrievalMode" : "

The access method to use when retrieving sensitive data from affected S3 objects. Valid values are: ASSUME_ROLE, assume an IAM role that is in the affected Amazon Web Services account and delegates access to Amazon Macie; and, CALLER_CREDENTIALS, use the credentials of the IAM user who requests the sensitive data. If you specify ASSUME_ROLE, also specify the name of an existing IAM role for Macie to assume (roleName).

If you change this value from ASSUME_ROLE to CALLER_CREDENTIALS for an existing configuration, Macie permanently deletes the external ID and role name currently specified for the configuration. These settings can't be recovered after they're deleted.

" + } + }, "RevealConfiguration" : { - "base" : "

Specifies the configuration settings for retrieving occurrences of sensitive data reported by findings, and the status of the configuration for an Amazon Macie account. When you enable the configuration for the first time, your request must specify an Key Management Service (KMS) key. Otherwise, an error occurs. Macie uses the specified key to encrypt the sensitive data that you retrieve.

", + "base" : "

Specifies the status of the Amazon Macie configuration for retrieving occurrences of sensitive data reported by findings, and the Key Management Service (KMS) key to use to encrypt sensitive data that's retrieved. When you enable the configuration for the first time, your request must specify an KMS key. Otherwise, an error occurs.

", "refs" : { - "GetRevealConfigurationResponse$Configuration" : "

The current configuration settings and the status of the configuration for the account.

", - "UpdateRevealConfigurationRequest$Configuration" : "

The new configuration settings and the status of the configuration for the account.

", - "UpdateRevealConfigurationResponse$Configuration" : "

The new configuration settings and the status of the configuration for the account.

" + "GetRevealConfigurationResponse$Configuration" : "

The KMS key that's used to encrypt the sensitive data, and the status of the configuration for the Amazon Macie account.

", + "UpdateRevealConfigurationRequest$Configuration" : "

The KMS key to use to encrypt the sensitive data, and the status of the configuration for the Amazon Macie account.

", + "UpdateRevealConfigurationResponse$Configuration" : "

The KMS key to use to encrypt the sensitive data, and the status of the configuration for the Amazon Macie account.

" } }, "RevealRequestStatus" : { @@ -1477,8 +1491,8 @@ "SensitivityInspectionTemplateIncludes" : { "base" : "

Specifies the allow lists, custom data identifiers, and managed data identifiers to include (use) when performing automated sensitive data discovery for an Amazon Macie account. The configuration must specify at least one custom data identifier or managed data identifier. For information about the managed data identifiers that Amazon Macie currently provides, see Using managed data identifiers in the Amazon Macie User Guide.

", "refs" : { - "GetSensitivityInspectionTemplateResponse$Includes" : "

The allow lists, custom data identifiers, and managed data identifiers that are included (used) when analyzing data.

", - "UpdateSensitivityInspectionTemplateRequest$Includes" : "

The allow lists, custom data identifiers, and managed data identifiers to include (use) when analyzing data.

" + "GetSensitivityInspectionTemplateResponse$Includes" : "

The allow lists, custom data identifiers, and managed data identifiers that are explicitly included (used) when analyzing data.

", + "UpdateSensitivityInspectionTemplateRequest$Includes" : "

The allow lists, custom data identifiers, and managed data identifiers to explicitly include (use) when analyzing data.

" } }, "SensitivityInspectionTemplatesEntry" : { @@ -1762,8 +1776,14 @@ "base" : "

Specifies a new sensitivity score for an S3 bucket that Amazon Macie monitors and analyzes for your account. To update the score, automated sensitive data discovery must currently be enabled for your account.

", "refs" : { } }, + "UpdateRetrievalConfiguration" : { + "base" : "

Specifies the access method and settings to use when retrieving occurrences of sensitive data reported by findings. If your request specifies an Identity and Access Management (IAM) role to assume when retrieving the sensitive data, Amazon Macie verifies that the role exists and the attached policies are configured correctly. If there's an issue, Macie returns an error. For information about addressing the issue, see Retrieving sensitive data samples with findings in the Amazon Macie User Guide.

", + "refs" : { + "UpdateRevealConfigurationRequest$RetrievalConfiguration" : "

The access method and settings to use to retrieve the sensitive data.

" + } + }, "UpdateRevealConfigurationRequest" : { - "base" : "

Specifies the configuration settings for retrieving occurrences of sensitive data reported by findings, and the status of the configuration for an Amazon Macie account.

", + "base" : "

Specifies configuration settings for retrieving occurrences of sensitive data reported by findings, and the status of the configuration for an Amazon Macie account. If you don't specify retrievalConfiguration values for an existing configuration, Macie sets the access method to CALLER_CREDENTIALS. If your current access method is ASSUME_ROLE, Macie also deletes the external ID and role name currently specified for the configuration. To keep these settings for an existing configuration, specify the current retrievalConfiguration values in your request.

", "refs" : { } }, "UpdateRevealConfigurationResponse" : { @@ -2120,7 +2140,7 @@ "__listOfUnavailabilityReasonCode" : { "base" : null, "refs" : { - "GetSensitiveDataOccurrencesAvailabilityResponse$Reasons" : "

Specifies why occurrences of sensitive data can't be retrieved for the finding. Possible values are:

  • INVALID_CLASSIFICATION_RESULT - Amazon Macie can't verify the location of the sensitive data to retrieve. There isn't a corresponding sensitive data discovery result for the finding. Or the sensitive data discovery result specified by the classificationDetails.detailedResultsLocation field of the finding isn't available, is malformed or corrupted, or uses an unsupported storage format.

  • OBJECT_EXCEEDS_SIZE_QUOTA - The storage size of the affected S3 object exceeds the size quota for retrieving occurrences of sensitive data.

  • OBJECT_UNAVAILABLE - The affected S3 object isn't available. The object might have been renamed, moved, or deleted. Or the object was changed after Macie created the finding.

  • UNSUPPORTED_FINDING_TYPE - The specified finding isn't a sensitive data finding.

  • UNSUPPORTED_OBJECT_TYPE - The affected S3 object uses a file or storage format that Macie doesn't support for retrieving occurrences of sensitive data.

This value is null if sensitive data can be retrieved for the finding.

" + "GetSensitiveDataOccurrencesAvailabilityResponse$Reasons" : "

Specifies why occurrences of sensitive data can't be retrieved for the finding. Possible values are:

  • ACCOUNT_NOT_IN_ORGANIZATION - The affected account isn't currently part of your organization. Or the account is part of your organization but Macie isn't currently enabled for the account. You're not allowed to access the affected S3 object by using Macie.

  • INVALID_CLASSIFICATION_RESULT - There isn't a corresponding sensitive data discovery result for the finding. Or the corresponding sensitive data discovery result isn't available, is malformed or corrupted, or uses an unsupported storage format. Macie can't verify the location of the sensitive data to retrieve.

  • INVALID_RESULT_SIGNATURE - The corresponding sensitive data discovery result is stored in an S3 object that wasn't signed by Macie. Macie can't verify the integrity and authenticity of the sensitive data discovery result. Therefore, Macie can't verify the location of the sensitive data to retrieve.

  • MEMBER_ROLE_TOO_PERMISSIVE - The affected member account is configured to retrieve occurrences of sensitive data by using an IAM role whose trust or permissions policy doesn't meet Macie requirements for restricting access to the role. Or the role's trust policy doesn't specify the correct external ID. Macie can't assume the role to retrieve the sensitive data.

  • MISSING_GET_MEMBER_PERMISSION - You're not allowed to retrieve information about the association between your account and the affected account. Macie can't determine whether you’re allowed to access the affected S3 object as the delegated Macie administrator for the affected account.

  • OBJECT_EXCEEDS_SIZE_QUOTA - The storage size of the affected S3 object exceeds the size quota for retrieving occurrences of sensitive data from this type of file.

  • OBJECT_UNAVAILABLE - The affected S3 object isn't available. The object was renamed, moved, or deleted. Or the object was changed after Macie created the finding.

  • RESULT_NOT_SIGNED - The corresponding sensitive data discovery result is stored in an S3 object that hasn't been signed. Macie can't verify the integrity and authenticity of the sensitive data discovery result. Therefore, Macie can't verify the location of the sensitive data to retrieve.

  • ROLE_TOO_PERMISSIVE - Your account is configured to retrieve occurrences of sensitive data by using an IAM role whose trust or permissions policy doesn't meet Macie requirements for restricting access to the role. Macie can’t assume the role to retrieve the sensitive data.

  • UNSUPPORTED_FINDING_TYPE - The specified finding isn't a sensitive data finding.

  • UNSUPPORTED_OBJECT_TYPE - The affected S3 object uses a file or storage format that Macie doesn't support for retrieving occurrences of sensitive data.

This value is null if sensitive data can be retrieved for the finding.

" } }, "__listOfUnprocessedAccount" : { @@ -2189,7 +2209,7 @@ "SensitivityInspectionTemplateIncludes$CustomDataIdentifierIds" : "

An array of unique identifiers, one for each custom data identifier to include.

", "SensitivityInspectionTemplateIncludes$ManagedDataIdentifierIds" : "

An array of unique identifiers, one for each managed data identifier to include.

Amazon Macie uses these managed data identifiers in addition to managed data identifiers that are subsequently released and recommended for automated sensitive data discovery. To retrieve a list of valid values for the managed data identifiers that are currently available, use the ListManagedDataIdentifiers operation.

", "SimpleCriterionForJob$Values" : "

An array that lists one or more values to use in the condition. If you specify multiple values, Amazon Macie uses OR logic to join the values. Valid values for each supported property (key) are:

  • ACCOUNT_ID - A string that represents the unique identifier for the Amazon Web Services account that owns the bucket.

  • S3_BUCKET_EFFECTIVE_PERMISSION - A string that represents an enumerated value that Macie defines for the BucketPublicAccess.effectivePermission property of a bucket.

  • S3_BUCKET_NAME - A string that represents the name of a bucket.

  • S3_BUCKET_SHARED_ACCESS - A string that represents an enumerated value that Macie defines for the BucketMetadata.sharedAccess property of a bucket.

Values are case sensitive. Also, Macie doesn't support use of partial values or wildcard characters in these values.

", - "SimpleScopeTerm$Values" : "

An array that lists the values to use in the condition. If the value for the key property is OBJECT_EXTENSION or OBJECT_KEY, this array can specify multiple values and Amazon Macie uses OR logic to join the values. Otherwise, this array can specify only one value.

Valid values for each supported property (key) are:

  • OBJECT_EXTENSION - A string that represents the file name extension of an object. For example: docx or pdf

  • OBJECT_KEY - A string that represents the key prefix (folder name or path) of an object. For example: logs or awslogs/eventlogs. This value applies a condition to objects whose keys (names) begin with the specified value.

  • OBJECT_LAST_MODIFIED_DATE - The date and time (in UTC and extended ISO 8601 format) when an object was created or last changed, whichever is latest. For example: 2020-09-28T14:31:13Z

  • OBJECT_SIZE - An integer that represents the storage size (in bytes) of an object.

Macie doesn't support use of wildcard characters in these values. Also, string values are case sensitive.

", + "SimpleScopeTerm$Values" : "

An array that lists the values to use in the condition. If the value for the key property is OBJECT_EXTENSION or OBJECT_KEY, this array can specify multiple values and Amazon Macie uses OR logic to join the values. Otherwise, this array can specify only one value.

Valid values for each supported property (key) are:

  • OBJECT_EXTENSION - A string that represents the file name extension of an object. For example: docx or pdf

  • OBJECT_KEY - A string that represents the key prefix (folder name or path) of an object. For example: logs or awslogs/eventlogs. This value applies a condition to objects whose keys (names) begin with the specified value.

  • OBJECT_LAST_MODIFIED_DATE - The date and time (in UTC and extended ISO 8601 format) when an object was created or last changed, whichever is latest. For example: 2023-09-24T14:31:13Z

  • OBJECT_SIZE - An integer that represents the storage size (in bytes) of an object.

Macie doesn't support use of wildcard characters in these values. Also, string values are case sensitive.

", "TestCustomDataIdentifierRequest$IgnoreWords" : "

An array that lists specific character sequences (ignore words) to exclude from the results. If the text matched by the regular expression contains any string in this array, Amazon Macie ignores it. The array can contain as many as 10 ignore words. Each ignore word can contain 4-90 UTF-8 characters. Ignore words are case sensitive.

", "TestCustomDataIdentifierRequest$Keywords" : "

An array that lists specific character sequences (keywords), one of which must precede and be within proximity (maximumMatchDistance) of the regular expression to match. The array can contain as many as 50 keywords. Each keyword can contain 3-90 UTF-8 characters. Keywords aren't case sensitive.

", "UsageStatisticsFilter$Values" : "

An array that lists values to use in the condition, based on the value for the field specified by the key property. If the value for the key property is accountId, this array can specify multiple values. Otherwise, this array can specify only one value.

Valid values for each supported field are:

  • accountId - The unique identifier for an Amazon Web Services account.

  • freeTrialStartDate - The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie free trial started for an account.

  • serviceLimit - A Boolean (true or false) value that indicates whether an account has reached its monthly quota.

  • total - A string that represents the current estimated cost for an account.

" @@ -2265,7 +2285,7 @@ "ResourceStatistics$TotalDetectionsSuppressed" : "

The total number of occurrences of sensitive data that are currently suppressed by the sensitivity scoring settings for the bucket. These represent occurrences of sensitive data that Amazon Macie found in the bucket's objects, but the occurrences were manually suppressed. By default, suppressed occurrences are excluded from the bucket's sensitivity score.

", "ResourceStatistics$TotalItemsClassified" : "

The total number of objects that Amazon Macie has analyzed in the bucket.

", "ResourceStatistics$TotalItemsSensitive" : "

The total number of the bucket's objects that Amazon Macie has found sensitive data in.

", - "ResourceStatistics$TotalItemsSkipped" : "

The total number of objects that Amazon Macie wasn't able to analyze in the bucket due to an object-level issue or error. For example, the object is a malformed file. This value includes objects that Macie wasn't able to analyze for reasons reported by other statistics in the ResourceStatistics object.

", + "ResourceStatistics$TotalItemsSkipped" : "

The total number of objects that Amazon Macie wasn't able to analyze in the bucket due to an object-level issue or error. For example, an object is a malformed file. This value includes objects that Macie wasn't able to analyze for reasons reported by other statistics in the ResourceStatistics object.

", "ResourceStatistics$TotalItemsSkippedInvalidEncryption" : "

The total number of objects that Amazon Macie wasn't able to analyze in the bucket because the objects are encrypted with a key that Macie can't access. The objects use server-side encryption with customer-provided keys (SSE-C).

", "ResourceStatistics$TotalItemsSkippedInvalidKms" : "

The total number of objects that Amazon Macie wasn't able to analyze in the bucket because the objects are encrypted with KMS keys that were disabled, are scheduled for deletion, or were deleted.

", "ResourceStatistics$TotalItemsSkippedPermissionDenied" : "

The total number of objects that Amazon Macie wasn't able to analyze in the bucket due to the permissions settings for the objects or the permissions settings for the keys that were used to encrypt the objects.

", @@ -2441,10 +2461,11 @@ "Member$Email" : "

The email address for the account. This value is null if the account is associated with the administrator account through Organizations.

", "Member$MasterAccountId" : "

(Deprecated) The Amazon Web Services account ID for the administrator account. This property has been replaced by the administratorAccountId property and is retained only for backward compatibility.

", "PutFindingsPublicationConfigurationRequest$ClientToken" : "

A unique, case-sensitive token that you provide to ensure the idempotency of the request.

", - "Record$JsonPath" : "

The path, as a JSONPath expression, to the sensitive data. For an Avro object container or Parquet file, this is the path to the field in the record (recordIndex) that contains the data. For a JSON or JSON Lines file, this is the path to the field or array that contains the data. If the data is a value in an array, the path also indicates which value contains the data.

If Amazon Macie detects sensitive data in the name of any element in the path, Macie omits this field. If the name of an element exceeds 20 characters, Macie truncates the name by removing characters from the beginning of the name. If the resulting full path exceeds 250 characters, Macie also truncates the path, starting with the first element in the path, until the path contains 250 or fewer characters.

", + "Record$JsonPath" : "

The path, as a JSONPath expression, to the sensitive data. For an Avro object container or Parquet file, this is the path to the field in the record (recordIndex) that contains the data. For a JSON or JSON Lines file, this is the path to the field or array that contains the data. If the data is a value in an array, the path also indicates which value contains the data.

If Amazon Macie detects sensitive data in the name of any element in the path, Macie omits this field. If the name of an element exceeds 240 characters, Macie truncates the name by removing characters from the beginning of the name. If the resulting full path exceeds 250 characters, Macie also truncates the path, starting with the first element in the path, until the path contains 250 or fewer characters.

", "ResourceNotFoundException$Message" : "

The explanation of the error that occurred.

", "ResourceProfileArtifact$Arn" : "

The Amazon Resource Name (ARN) of the object.

", "ResourceProfileArtifact$ClassificationResultStatus" : "

The status of the analysis. Possible values are:

  • COMPLETE - Amazon Macie successfully completed its analysis of the object.

  • PARTIAL - Macie analyzed only a subset of data in the object. For example, the object is an archive file that contains files in an unsupported format.

  • SKIPPED - Macie wasn't able to analyze the object. For example, the object is a malformed file.

", + "RetrievalConfiguration$ExternalId" : "

The external ID to specify in the trust policy for the IAM role to assume when retrieving sensitive data from affected S3 objects (roleName). The trust policy must include an sts:ExternalId condition that requires this ID.

This ID is a unique alphanumeric string that Amazon Macie generates automatically after you configure it to assume a role. This value is null if the value for retrievalMode is CALLER_CREDENTIALS.

", "S3Bucket$Arn" : "

The Amazon Resource Name (ARN) of the bucket.

", "S3Bucket$Name" : "

The name of the bucket.

", "S3BucketDefinitionForJob$AccountId" : "

The unique identifier for the Amazon Web Services account that owns the buckets.

", @@ -2452,7 +2473,7 @@ "S3BucketOwner$Id" : "

The canonical user ID for the account that owns the bucket.

", "S3Destination$BucketName" : "

The name of the bucket.

", "S3Destination$KeyPrefix" : "

The path prefix to use in the path to the location in the bucket. This prefix specifies where to store classification results in the bucket.

", - "S3Destination$KmsKeyArn" : "

The Amazon Resource Name (ARN) of the customer managed KMS key to use for encryption of the results. This must be the ARN of an existing, symmetric encryption KMS key that's in the same Amazon Web Services Region as the bucket.

", + "S3Destination$KmsKeyArn" : "

The Amazon Resource Name (ARN) of the customer managed KMS key to use for encryption of the results. This must be the ARN of an existing, symmetric encryption KMS key that's enabled in the same Amazon Web Services Region as the bucket.

", "S3Object$BucketArn" : "

The Amazon Resource Name (ARN) of the bucket that contains the object.

", "S3Object$ETag" : "

The entity tag (ETag) that identifies the affected version of the object. If the object was overwritten or changed after Amazon Macie produced the finding, this value might be different from the current ETag for the object.

", "S3Object$Extension" : "

The file name extension of the object. If the object doesn't have a file name extension, this value is \"\".

", @@ -2483,7 +2504,7 @@ "TestCustomDataIdentifierRequest$Regex" : "

The regular expression (regex) that defines the pattern to match. The expression can contain as many as 512 characters.

", "TestCustomDataIdentifierRequest$SampleText" : "

The sample text to inspect by using the custom data identifier. The text can contain as many as 1,000 characters.

", "ThrottlingException$Message" : "

The explanation of the error that occurred.

", - "UnprocessableEntityException$Message" : "

The type of error that occurred and prevented Amazon Macie from retrieving occurrences of sensitive data reported by the finding. Possible values are:

  • INVALID_CLASSIFICATION_RESULT - Amazon Macie can't verify the location of the sensitive data to retrieve. There isn't a corresponding sensitive data discovery result for the finding. Or the sensitive data discovery result specified by the classificationDetails.detailedResultsLocation field of the finding isn't available, is malformed or corrupted, or uses an unsupported storage format.

  • OBJECT_EXCEEDS_SIZE_QUOTA - The storage size of the affected S3 object exceeds the size quota for retrieving occurrences of sensitive data.

  • OBJECT_UNAVAILABLE - The affected S3 object isn't available. The object might have been renamed, moved, or deleted. Or the object was changed after Macie created the finding.

  • UNSUPPORTED_FINDING_TYPE - The specified finding isn't a sensitive data finding.

  • UNSUPPORTED_OBJECT_TYPE - The affected S3 object uses a file or storage format that Macie doesn't support for retrieving occurrences of sensitive data.

", + "UnprocessableEntityException$Message" : "

The type of error that occurred and prevented Amazon Macie from retrieving occurrences of sensitive data reported by the finding. Possible values are:

  • ACCOUNT_NOT_IN_ORGANIZATION - The affected account isn't currently part of your organization. Or the account is part of your organization but Macie isn't currently enabled for the account. You're not allowed to access the affected S3 object by using Macie.

  • INVALID_CLASSIFICATION_RESULT - There isn't a corresponding sensitive data discovery result for the finding. Or the corresponding sensitive data discovery result isn't available, is malformed or corrupted, or uses an unsupported storage format. Macie can't verify the location of the sensitive data to retrieve.

  • INVALID_RESULT_SIGNATURE - The corresponding sensitive data discovery result is stored in an S3 object that wasn't signed by Macie. Macie can't verify the integrity and authenticity of the sensitive data discovery result. Therefore, Macie can't verify the location of the sensitive data to retrieve.

  • MEMBER_ROLE_TOO_PERMISSIVE - The affected member account is configured to retrieve occurrences of sensitive data by using an IAM role whose trust or permissions policy doesn't meet Macie requirements for restricting access to the role. Or the role's trust policy doesn't specify the correct external ID. Macie can't assume the role to retrieve the sensitive data.

  • MISSING_GET_MEMBER_PERMISSION - You're not allowed to retrieve information about the association between your account and the affected account. Macie can't determine whether you’re allowed to access the affected S3 object as the delegated Macie administrator for the affected account.

  • OBJECT_EXCEEDS_SIZE_QUOTA - The storage size of the affected S3 object exceeds the size quota for retrieving occurrences of sensitive data from this type of file.

  • OBJECT_UNAVAILABLE - The affected S3 object isn't available. The object was renamed, moved, or deleted. Or the object was changed after Macie created the finding.

  • RESULT_NOT_SIGNED - The corresponding sensitive data discovery result is stored in an S3 object that hasn't been signed. Macie can't verify the integrity and authenticity of the sensitive data discovery result. Therefore, Macie can't verify the location of the sensitive data to retrieve.

  • ROLE_TOO_PERMISSIVE - Your account is configured to retrieve occurrences of sensitive data by using an IAM role whose trust or permissions policy doesn't meet Macie requirements for restricting access to the role. Macie can’t assume the role to retrieve the sensitive data.

  • UNSUPPORTED_FINDING_TYPE - The specified finding isn't a sensitive data finding.

  • UNSUPPORTED_OBJECT_TYPE - The affected S3 object uses a file or storage format that Macie doesn't support for retrieving occurrences of sensitive data.

", "UnprocessedAccount$AccountId" : "

The Amazon Web Services account ID for the account that the request applies to.

", "UnprocessedAccount$ErrorMessage" : "

The reason why the request hasn't been processed.

", "UpdateFindingsFilterRequest$ClientToken" : "

A unique, case-sensitive token that you provide to ensure the idempotency of the request.

", @@ -2513,7 +2534,7 @@ "__stringMin1Max128" : { "base" : null, "refs" : { - "DetectedDataDetails$Value" : "

An occurrence of the specified type of sensitive data. Each occurrence can contain 1-128 characters.

" + "DetectedDataDetails$Value" : "

An occurrence of the specified type of sensitive data. Each occurrence contains 1-128 characters.

" } }, "__stringMin1Max128Pattern" : { @@ -2528,7 +2549,7 @@ "__stringMin1Max2048" : { "base" : null, "refs" : { - "RevealConfiguration$KmsKeyId" : "

The Amazon Resource Name (ARN), ID, or alias of the KMS key to use to encrypt sensitive data that's retrieved. The key must be an existing, customer managed, symmetric encryption key that's in the same Amazon Web Services Region as the Amazon Macie account.

If this value specifies an alias, it must include the following prefix: alias/. If this value specifies a key that's owned by another Amazon Web Services account, it must specify the ARN of the key or the ARN of the key's alias.

" + "RevealConfiguration$KmsKeyId" : "

The Amazon Resource Name (ARN), ID, or alias of the KMS key to use to encrypt sensitive data that's retrieved. The key must be an existing, customer managed, symmetric encryption key that's enabled in the same Amazon Web Services Region as the Amazon Macie account.

If this value specifies an alias, it must include the following prefix: alias/. If this value specifies a key that's owned by another Amazon Web Services account, it must specify the ARN of the key or the ARN of the key's alias.

" } }, "__stringMin1Max512PatternSS" : { @@ -2541,6 +2562,13 @@ "UpdateAllowListRequest$Description" : "

A custom description of the allow list. The description can contain as many as 512 characters.

" } }, + "__stringMin1Max64PatternW" : { + "base" : null, + "refs" : { + "RetrievalConfiguration$RoleName" : "

The name of the IAM role that is in the affected Amazon Web Services account and Amazon Macie is allowed to assume when retrieving sensitive data from affected S3 objects for the account. This value is null if the value for retrievalMode is CALLER_CREDENTIALS.

", + "UpdateRetrievalConfiguration$RoleName" : "

The name of the IAM role that is in the affected Amazon Web Services account and Amazon Macie is allowed to assume when retrieving sensitive data from affected S3 objects for the account. The trust and permissions policies for the role must meet all requirements for Macie to assume the role.

" + } + }, "__stringMin22Max22PatternAZ0922" : { "base" : null, "refs" : { @@ -2586,7 +2614,7 @@ "GetBucketStatisticsResponse$LastUpdated" : "

The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently retrieved bucket or object metadata from Amazon S3 for the buckets.

", "GetCustomDataIdentifierResponse$CreatedAt" : "

The date and time, in UTC and extended ISO 8601 format, when the custom data identifier was created.

", "GetMacieSessionResponse$CreatedAt" : "

The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie account was created.

", - "GetMacieSessionResponse$UpdatedAt" : "

The date and time, in UTC and extended ISO 8601 format, of the most recent change to the status of the Amazon Macie account.

", + "GetMacieSessionResponse$UpdatedAt" : "

The date and time, in UTC and extended ISO 8601 format, of the most recent change to the status or configuration settings for the Amazon Macie account.

", "GetMemberResponse$InvitedAt" : "

The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie membership invitation was last sent to the account. This value is null if a Macie membership invitation hasn't been sent to the account.

", "GetMemberResponse$UpdatedAt" : "

The date and time, in UTC and extended ISO 8601 format, of the most recent change to the status of the relationship between the account and the administrator account.

", "GetResourceProfileResponse$ProfileUpdatedAt" : "

The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently recalculated sensitive data discovery statistics and details for the bucket. If the bucket's sensitivity score is calculated automatically, this includes the score.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie2/2020-01-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie2/2020-01-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/macie2/2020-01-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/macie2/2020-01-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain/2018-09-24/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain/2018-09-24/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain/2018-09-24/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain/2018-09-24/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -476,7 +476,8 @@ "Status":{"shape":"AccessorStatus"}, "CreationDate":{"shape":"Timestamp"}, "Arn":{"shape":"ArnString"}, - "Tags":{"shape":"OutputTagMap"} + "Tags":{"shape":"OutputTagMap"}, + "NetworkType":{"shape":"AccessorNetworkType"} } }, "AccessorBillingTokenString":{ @@ -490,6 +491,16 @@ "max":50, "min":1 }, + "AccessorNetworkType":{ + "type":"string", + "enum":[ + "ETHEREUM_GOERLI", + "ETHEREUM_MAINNET", + "ETHEREUM_MAINNET_AND_GOERLI", + "POLYGON_MAINNET", + "POLYGON_MUMBAI" + ] + }, "AccessorStatus":{ "type":"string", "enum":[ @@ -505,7 +516,8 @@ "Type":{"shape":"AccessorType"}, "Status":{"shape":"AccessorStatus"}, "CreationDate":{"shape":"Timestamp"}, - "Arn":{"shape":"ArnString"} + "Arn":{"shape":"ArnString"}, + "NetworkType":{"shape":"AccessorNetworkType"} } }, "AccessorSummaryList":{ @@ -548,14 +560,16 @@ "idempotencyToken":true }, "AccessorType":{"shape":"AccessorType"}, - "Tags":{"shape":"InputTagMap"} + "Tags":{"shape":"InputTagMap"}, + "NetworkType":{"shape":"AccessorNetworkType"} } }, "CreateAccessorOutput":{ "type":"structure", "members":{ "AccessorId":{"shape":"ResourceIdString"}, - "BillingToken":{"shape":"AccessorBillingTokenString"} + "BillingToken":{"shape":"AccessorBillingTokenString"}, + "NetworkType":{"shape":"AccessorNetworkType"} } }, "CreateMemberInput":{ @@ -970,6 +984,11 @@ "shape":"PaginationToken", "location":"querystring", "locationName":"nextToken" + }, + "NetworkType":{ + "shape":"AccessorNetworkType", + "location":"querystring", + "locationName":"networkType" } } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain/2018-09-24/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain/2018-09-24/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain/2018-09-24/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain/2018-09-24/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,7 +2,7 @@ "version": "2.0", "service": "

Amazon Managed Blockchain is a fully managed service for creating and managing blockchain networks using open-source frameworks. Blockchain allows you to build applications where multiple parties can securely and transparently run transactions and share data without the need for a trusted, central authority.

Managed Blockchain supports the Hyperledger Fabric and Ethereum open-source frameworks. Because of fundamental differences between the frameworks, some API actions or data types may only apply in the context of one framework and not the other. For example, actions related to Hyperledger Fabric network members such as CreateMember and DeleteMember don't apply to Ethereum.

The description for each action indicates the framework or frameworks to which it applies. Data types and properties that apply only in the context of a particular framework are similarly indicated.

", "operations": { - "CreateAccessor": "

Creates a new accessor for use with Managed Blockchain Ethereum nodes. An accessor contains information required for token based access to your Ethereum nodes.

", + "CreateAccessor": "

Creates a new accessor for use with Amazon Managed Blockchain service that supports token based access. The accessor contains information required for token based access.

", "CreateMember": "

Creates a member within a Managed Blockchain network.

Applies only to Hyperledger Fabric.

", "CreateNetwork": "

Creates a new blockchain network using Amazon Managed Blockchain.

Applies only to Hyperledger Fabric.

", "CreateNode": "

Creates a node on the specified blockchain network.

Applies to Hyperledger Fabric and Ethereum.

", @@ -45,8 +45,8 @@ "AccessorBillingTokenString": { "base": null, "refs": { - "Accessor$BillingToken": "

The billing token is a property of the accessor. Use this token to make Ethereum API calls to your Ethereum node. The billing token is used to track your accessor object for billing Ethereum API requests made to your Ethereum nodes.

", - "CreateAccessorOutput$BillingToken": "

The billing token is a property of the Accessor. Use this token to make Ethereum API calls to your Ethereum node. The billing token is used to track your accessor object for billing Ethereum API requests made to your Ethereum nodes.

" + "Accessor$BillingToken": "

The billing token is a property of the Accessor. Use this token to when making calls to the blockchain network. The billing token is used to track your accessor token for billing requests.

", + "CreateAccessorOutput$BillingToken": "

The billing token is a property of the Accessor. Use this token to when making calls to the blockchain network. The billing token is used to track your accessor token for billing requests.

" } }, "AccessorListMaxResults": { @@ -55,6 +55,16 @@ "ListAccessorsInput$MaxResults": "

The maximum number of accessors to list.

" } }, + "AccessorNetworkType": { + "base": null, + "refs": { + "Accessor$NetworkType": "

The blockchain network that the Accessor token is created for.

", + "AccessorSummary$NetworkType": "

The blockchain network that the Accessor token is created for.

", + "CreateAccessorInput$NetworkType": "

The blockchain network that the Accessor token is created for.

We recommend using the appropriate networkType value for the blockchain network that you are creating the Accessor token for. You cannnot use the value ETHEREUM_MAINNET_AND_GOERLI to specify a networkType for your Accessor token.

The default value of ETHEREUM_MAINNET_AND_GOERLI is only applied:

  • when the CreateAccessor action does not set a networkType.

  • to all existing Accessor tokens that were created before the networkType property was introduced.

", + "CreateAccessorOutput$NetworkType": "

The blockchain network that the accessor token is created for.

", + "ListAccessorsInput$NetworkType": "

The blockchain network that the Accessor token is created for.

Use the value ETHEREUM_MAINNET_AND_GOERLI for all existing Accessors tokens that were created before the networkType property was introduced.

" + } + }, "AccessorStatus": { "base": null, "refs": { @@ -834,7 +844,7 @@ "CreateMemberOutput$MemberId": "

The unique identifier of the member.

", "CreateNetworkOutput$NetworkId": "

The unique identifier for the network.

", "CreateNetworkOutput$MemberId": "

The unique identifier for the first member within the network.

", - "CreateNodeInput$NetworkId": "

The unique identifier of the network for the node.

Ethereum public networks have the following NetworkIds:

  • n-ethereum-mainnet

  • n-ethereum-goerli

  • n-ethereum-rinkeby

", + "CreateNodeInput$NetworkId": "

The unique identifier of the network for the node.

Ethereum public networks have the following NetworkIds:

  • n-ethereum-mainnet

  • n-ethereum-goerli

", "CreateNodeInput$MemberId": "

The unique identifier of the member that owns this node.

Applies only to Hyperledger Fabric.

", "CreateNodeOutput$NodeId": "

The unique identifier of the node.

", "CreateProposalInput$NetworkId": "

The unique identifier of the network for which the proposal is made.

", @@ -843,7 +853,7 @@ "DeleteAccessorInput$AccessorId": "

The unique identifier of the accessor.

", "DeleteMemberInput$NetworkId": "

The unique identifier of the network from which the member is removed.

", "DeleteMemberInput$MemberId": "

The unique identifier of the member to remove.

", - "DeleteNodeInput$NetworkId": "

The unique identifier of the network that the node is on.

Ethereum public networks have the following NetworkIds:

  • n-ethereum-mainnet

  • n-ethereum-goerli

  • n-ethereum-rinkeby

", + "DeleteNodeInput$NetworkId": "

The unique identifier of the network that the node is on.

Ethereum public networks have the following NetworkIds:

  • n-ethereum-mainnet

  • n-ethereum-goerli

", "DeleteNodeInput$MemberId": "

The unique identifier of the member that owns this node.

Applies only to Hyperledger Fabric and is required for Hyperledger Fabric.

", "DeleteNodeInput$NodeId": "

The unique identifier of the node.

", "GetAccessorInput$AccessorId": "

The unique identifier of the accessor.

", @@ -922,7 +932,7 @@ "Member$KmsKeyArn": "

The Amazon Resource Name (ARN) of the customer managed key in Key Management Service (KMS) that the member uses for encryption at rest. If the value of this parameter is \"AWS Owned KMS Key\", the member uses an Amazon Web Services owned KMS key for encryption. This parameter is inherited by the nodes that this member owns.

For more information, see Encryption at Rest in the Amazon Managed Blockchain Hyperledger Fabric Developer Guide.

", "MemberFabricAttributes$CaEndpoint": "

The endpoint used to access the member's certificate authority.

", "Network$VpcEndpointServiceName": "

The VPC endpoint service name of the VPC endpoint service of the network. Members use the VPC endpoint service name to create a VPC endpoint to access network resources.

", - "NetworkEthereumAttributes$ChainId": "

The Ethereum CHAIN_ID associated with the Ethereum network. Chain IDs are as follows:

  • mainnet = 1

  • goerli = 5

  • rinkeby = 4

", + "NetworkEthereumAttributes$ChainId": "

The Ethereum CHAIN_ID associated with the Ethereum network. Chain IDs are as follows:

  • mainnet = 1

  • goerli = 5

", "NetworkFabricAttributes$OrderingServiceEndpoint": "

The endpoint of the ordering service for the network.

", "Node$KmsKeyArn": "

The Amazon Resource Name (ARN) of the customer managed key in Key Management Service (KMS) that the node uses for encryption at rest. If the value of this parameter is \"AWS Owned KMS Key\", the node uses an Amazon Web Services owned KMS key for encryption. The node inherits this parameter from the member that it belongs to.

For more information, see Encryption at Rest in the Amazon Managed Blockchain Hyperledger Fabric Developer Guide.

Applies only to Hyperledger Fabric.

", "NodeEthereumAttributes$HttpEndpoint": "

The endpoint on which the Ethereum node listens to run Ethereum API methods over HTTP connections from a client. Use this endpoint in client code for smart contracts when using an HTTP connection. Connections to this endpoint are authenticated using Signature Version 4.

", @@ -969,7 +979,7 @@ "ThresholdComparator": { "base": null, "refs": { - "ApprovalThresholdPolicy$ThresholdComparator": "

Determines whether the vote percentage must be greater than the ThresholdPercentage or must be greater than or equal to the ThreholdPercentage to be approved.

" + "ApprovalThresholdPolicy$ThresholdComparator": "

Determines whether the vote percentage must be greater than the ThresholdPercentage or must be greater than or equal to the ThresholdPercentage to be approved.

" } }, "ThresholdPercentageInt": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain/2018-09-24/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain/2018-09-24/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain/2018-09-24/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain/2018-09-24/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://managedblockchain-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://managedblockchain-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://managedblockchain-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://managedblockchain-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://managedblockchain.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://managedblockchain.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://managedblockchain.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://managedblockchain.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -31,6 +31,24 @@ {"shape":"ServiceQuotaExceededException"} ] }, + "GetAssetContract":{ + "name":"GetAssetContract", + "http":{ + "method":"POST", + "requestUri":"/get-asset-contract", + "responseCode":200 + }, + "input":{"shape":"GetAssetContractInput"}, + "output":{"shape":"GetAssetContractOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, "GetTokenBalance":{ "name":"GetTokenBalance", "http":{ @@ -67,6 +85,23 @@ {"shape":"ServiceQuotaExceededException"} ] }, + "ListAssetContracts":{ + "name":"ListAssetContracts", + "http":{ + "method":"POST", + "requestUri":"/list-asset-contracts", + "responseCode":200 + }, + "input":{"shape":"ListAssetContractsInput"}, + "output":{"shape":"ListAssetContractsOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, "ListTokenBalances":{ "name":"ListTokenBalances", "http":{ @@ -132,6 +167,25 @@ }, "exception":true }, + "AssetContract":{ + "type":"structure", + "required":[ + "contractIdentifier", + "tokenStandard", + "deployerAddress" + ], + "members":{ + "contractIdentifier":{"shape":"ContractIdentifier"}, + "tokenStandard":{"shape":"QueryTokenStandard"}, + "deployerAddress":{"shape":"ChainAddress"} + } + }, + "AssetContractList":{ + "type":"list", + "member":{"shape":"AssetContract"}, + "max":250, + "min":0 + }, "BatchGetTokenBalanceErrorItem":{ "type":"structure", "required":[ @@ -217,6 +271,38 @@ "type":"string", "pattern":"[-A-Za-z0-9]{13,74}" }, + "ContractFilter":{ + "type":"structure", + "required":[ + "network", + "tokenStandard", + "deployerAddress" + ], + "members":{ + "network":{"shape":"QueryNetwork"}, + "tokenStandard":{"shape":"QueryTokenStandard"}, + "deployerAddress":{"shape":"ChainAddress"} + } + }, + "ContractIdentifier":{ + "type":"structure", + "required":[ + "network", + "contractAddress" + ], + "members":{ + "network":{"shape":"QueryNetwork"}, + "contractAddress":{"shape":"ChainAddress"} + } + }, + "ContractMetadata":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "symbol":{"shape":"String"}, + "decimals":{"shape":"Integer"} + } + }, "ErrorType":{ "type":"string", "enum":[ @@ -228,6 +314,27 @@ "type":"string", "min":1 }, + "GetAssetContractInput":{ + "type":"structure", + "required":["contractIdentifier"], + "members":{ + "contractIdentifier":{"shape":"ContractIdentifier"} + } + }, + "GetAssetContractOutput":{ + "type":"structure", + "required":[ + "contractIdentifier", + "tokenStandard", + "deployerAddress" + ], + "members":{ + "contractIdentifier":{"shape":"ContractIdentifier"}, + "tokenStandard":{"shape":"QueryTokenStandard"}, + "deployerAddress":{"shape":"ChainAddress"}, + "metadata":{"shape":"ContractMetadata"} + } + }, "GetTokenBalanceInput":{ "type":"structure", "required":[ @@ -298,6 +405,29 @@ "fault":true, "retryable":{"throttling":false} }, + "ListAssetContractsInput":{ + "type":"structure", + "required":["contractFilter"], + "members":{ + "contractFilter":{"shape":"ContractFilter"}, + "nextToken":{"shape":"NextToken"}, + "maxResults":{"shape":"ListAssetContractsInputMaxResultsInteger"} + } + }, + "ListAssetContractsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":250, + "min":1 + }, + "ListAssetContractsOutput":{ + "type":"structure", + "required":["contracts"], + "members":{ + "contracts":{"shape":"AssetContractList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListTokenBalancesInput":{ "type":"structure", "required":["tokenFilter"], @@ -417,13 +547,23 @@ "type":"string", "enum":[ "ETHEREUM_MAINNET", - "BITCOIN_MAINNET" + "BITCOIN_MAINNET", + "BITCOIN_TESTNET", + "ETHEREUM_SEPOLIA_TESTNET" ] }, "QueryTokenId":{ "type":"string", "pattern":"[a-zA-Z0-9]{1,66}" }, + "QueryTokenStandard":{ + "type":"string", + "enum":[ + "ERC20", + "ERC721", + "ERC1155" + ] + }, "QueryTransactionEventType":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,10 +2,12 @@ "version": "2.0", "service": "

Amazon Managed Blockchain (AMB) Query provides you with convenient access to multi-blockchain network data, which makes it easier for you to extract contextual data related to blockchain activity. You can use AMB Query to read data from public blockchain networks, such as Bitcoin Mainnet and Ethereum Mainnet. You can also get information such as the current and historical balances of addresses, or you can get a list of blockchain transactions for a given time period. Additionally, you can get details of a given transaction, such as transaction events, which you can further analyze or use in business logic for your applications.

", "operations": { - "BatchGetTokenBalance": "

Gets the token balance for a batch of tokens by using the GetTokenBalance action for every token in the request.

Only the native tokens BTC,ETH, and the ERC-20, ERC-721, and ERC 1155 token standards are supported.

", + "BatchGetTokenBalance": "

Gets the token balance for a batch of tokens by using the BatchGetTokenBalance action for every token in the request.

Only the native tokens BTC,ETH, and the ERC-20, ERC-721, and ERC 1155 token standards are supported.

", + "GetAssetContract": "

Gets the information about a specific contract deployed on the blockchain.

  • The Bitcoin blockchain networks do not support this operation.

  • Metadata is currently only available for some ERC-20 contracts. Metadata will be available for additional contracts in the future.

", "GetTokenBalance": "

Gets the balance of a specific token, including native tokens, for a given address (wallet or contract) on the blockchain.

Only the native tokens BTC,ETH, and the ERC-20, ERC-721, and ERC 1155 token standards are supported.

", "GetTransaction": "

Get the details of a transaction.

", - "ListTokenBalances": "

This action returns the following for a given a blockchain network:

  • Lists all token balances owned by an address (either a contact address or a wallet address).

  • Lists all token balances for all tokens created by a contract.

  • Lists all token balances for a given token.

You must always specify the network property of the tokenFilter when using this operation.

", + "ListAssetContracts": "

Lists all the contracts for a given contract type deployed by an address (either a contract address or a wallet address).

The Bitcoin blockchain networks do not support this operation.

", + "ListTokenBalances": "

This action returns the following for a given blockchain network:

  • Lists all token balances owned by an address (either a contract address or a wallet address).

  • Lists all token balances for all tokens created by a contract.

  • Lists all token balances for a given token.

You must always specify the network property of the tokenFilter when using this operation.

", "ListTransactionEvents": "

An array of TransactionEvent objects. Each object contains details about the transaction event.

", "ListTransactions": "

Lists all of the transactions on a given wallet address or to a specific contract.

" }, @@ -15,6 +17,18 @@ "refs": { } }, + "AssetContract": { + "base": "

This container contains information about an contract.

", + "refs": { + "AssetContractList$member": null + } + }, + "AssetContractList": { + "base": null, + "refs": { + "ListAssetContractsOutput$contracts": "

An array of contract objects that contain the properties for each contract.

" + } + }, "BatchGetTokenBalanceErrorItem": { "base": "

Error generated from a failed BatchGetTokenBalance request.

", "refs": { @@ -74,12 +88,16 @@ "ListTransactionsInput$fromBlockchainInstant": null, "ListTransactionsInput$toBlockchainInstant": null, "TokenBalance$atBlockchainInstant": "

The time for when the TokenBalance is requested or the current time if a time is not provided in the request.

This time will only be recorded up to the second.

", - "TokenBalance$lastUpdatedTime": "

The timestamp of the last transaction at which the balance for the token in the wallet was updated.

" + "TokenBalance$lastUpdatedTime": "

The Timestamp of the last transaction at which the balance for the token in the wallet was updated.

" } }, "ChainAddress": { "base": null, "refs": { + "AssetContract$deployerAddress": "

The address of the contract deployer.

", + "ContractFilter$deployerAddress": "

The network address of the deployer.

", + "ContractIdentifier$contractAddress": "

Container for the blockchain address about a contract.

", + "GetAssetContractOutput$deployerAddress": "

The address of the deployer of contract.

", "ListTransactionsInput$address": "

The address (either a contract or wallet), whose transactions are being requested.

", "OwnerFilter$address": "

The contract or wallet address.

", "OwnerIdentifier$address": "

The contract or wallet address for the owner.

", @@ -93,6 +111,26 @@ "TransactionEvent$contractAddress": "

The blockchain address. for the contract

" } }, + "ContractFilter": { + "base": "

The contract or wallet address by which to filter the request.

", + "refs": { + "ListAssetContractsInput$contractFilter": "

Contains the filter parameter for the request.

" + } + }, + "ContractIdentifier": { + "base": "

Container for the blockchain address and network information about a contract.

", + "refs": { + "AssetContract$contractIdentifier": "

The container for the contract identifier containing its blockchain network and address.

", + "GetAssetContractInput$contractIdentifier": "

Contains the blockchain address and network information about the contract.

", + "GetAssetContractOutput$contractIdentifier": "

Contains the blockchain address and network information about the contract.

" + } + }, + "ContractMetadata": { + "base": "

The metadata of the contract.

", + "refs": { + "GetAssetContractOutput$metadata": null + } + }, "ErrorType": { "base": null, "refs": { @@ -110,6 +148,16 @@ "ValidationException$message": "

The container for the exception message.

" } }, + "GetAssetContractInput": { + "base": null, + "refs": { + } + }, + "GetAssetContractOutput": { + "base": null, + "refs": { + } + }, "GetTokenBalanceInput": { "base": null, "refs": { @@ -118,7 +166,7 @@ "GetTokenBalanceInputList": { "base": null, "refs": { - "BatchGetTokenBalanceInput$getTokenBalanceInputs": "

An array of GetTokenBalanceInput objects whose balance is being requested.

" + "BatchGetTokenBalanceInput$getTokenBalanceInputs": "

An array of BatchGetTokenBalanceInputItem objects whose balance is being requested.

" } }, "GetTokenBalanceOutput": { @@ -139,6 +187,7 @@ "Integer": { "base": null, "refs": { + "ContractMetadata$decimals": "

The decimals used by the token contract.

", "InternalServerException$retryAfterSeconds": "

The container of the retryAfterSeconds value.

", "ThrottlingException$retryAfterSeconds": "

The container of the retryAfterSeconds value.

", "Transaction$signatureV": "

The signature of the transaction. The Z coordinate of a point V.

", @@ -150,6 +199,22 @@ "refs": { } }, + "ListAssetContractsInput": { + "base": null, + "refs": { + } + }, + "ListAssetContractsInputMaxResultsInteger": { + "base": null, + "refs": { + "ListAssetContractsInput$maxResults": "

The maximum number of contracts to list.

" + } + }, + "ListAssetContractsOutput": { + "base": null, + "refs": { + } + }, "ListTokenBalancesInput": { "base": null, "refs": { @@ -220,6 +285,8 @@ "NextToken": { "base": null, "refs": { + "ListAssetContractsInput$nextToken": "

The pagination token that indicates the next set of results to retrieve.

", + "ListAssetContractsOutput$nextToken": "

The pagination token that indicates the next set of results to retrieve.

", "ListTokenBalancesInput$nextToken": "

The pagination token that indicates the next set of results to retrieve.

", "ListTokenBalancesOutput$nextToken": "

The pagination token that indicates the next set of results to retrieve.

", "ListTransactionEventsInput$nextToken": "

The pagination token that indicates the next set of results to retrieve.

", @@ -248,12 +315,14 @@ "QueryNetwork": { "base": null, "refs": { + "ContractFilter$network": "

The blockchain network of the contract.

", + "ContractIdentifier$network": "

The blockchain network of the contract.

", "GetTransactionInput$network": "

The blockchain network where the transaction occurred.

", "ListTransactionEventsInput$network": "

The blockchain network where the transaction events occurred.

", "ListTransactionsInput$network": "

The blockchain network where the transactions occurred.

", "TokenFilter$network": "

The blockchain network of the token.

", "TokenIdentifier$network": "

The blockchain network of the token.

", - "Transaction$network": "

The blockchain network where the transaction occured.

", + "Transaction$network": "

The blockchain network where the transaction occurred.

", "TransactionEvent$network": "

The blockchain network where the transaction occurred.

", "TransactionOutputItem$network": "

The blockchain network where the transaction occurred.

" } @@ -262,10 +331,18 @@ "base": null, "refs": { "TokenFilter$tokenId": "

The unique identifier of the token.

", - "TokenIdentifier$tokenId": "

The unique identifier of the token.

", + "TokenIdentifier$tokenId": "

The unique identifier of the token.

You must specify this container with btc for the native BTC token, and eth for the native ETH token. For all other token types you must specify the tokenId in the 64 character hexadecimal tokenid format.

", "TransactionEvent$tokenId": "

The unique identifier for the token involved in the transaction.

" } }, + "QueryTokenStandard": { + "base": null, + "refs": { + "AssetContract$tokenStandard": "

The token standard of the contract.

", + "ContractFilter$tokenStandard": "

The container for the token standard.

", + "GetAssetContractOutput$tokenStandard": "

The token standard of the contract requested.

" + } + }, "QueryTransactionEventType": { "base": null, "refs": { @@ -338,6 +415,8 @@ "BatchGetTokenBalanceErrorItem$errorCode": "

The error code associated with the error.

", "BatchGetTokenBalanceErrorItem$errorMessage": "

The message associated with the error.

", "BatchGetTokenBalanceOutputItem$balance": "

The container for the token balance.

", + "ContractMetadata$name": "

The name of the token contract.

", + "ContractMetadata$symbol": "

The symbol of the token contract.

", "GetTokenBalanceOutput$balance": "

The container for the token balance.

", "TokenBalance$balance": "

The container of the token balance.

", "Transaction$blockNumber": "

The block number in which the transaction is recorded.

", @@ -382,7 +461,7 @@ "TokenFilter": { "base": "

The container of the token filter like the contract address on a given blockchain network or a unique token identifier on a given blockchain network.

You must always specify the network property of this container when using this operation.

", "refs": { - "ListTokenBalancesInput$tokenFilter": "

The contract address or a token identifier on the blockchain network by which to filter the request. You must specify the contractAddress property of this container when listing tokens minted by a contract.

You must always specify the network property of this container when using this operation.

" + "ListTokenBalancesInput$tokenFilter": "

The contract address or a token identifier on the blockchain network by which to filter the request. You must specify the contractAddress property of this container when listing tokens minted by a contract.

You must always specify the network property of this container when using this operation.

" } }, "TokenIdentifier": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/managedblockchain-query/2023-05-04/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/managedblockchain-query/2023-05-04/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,11 @@ { "pagination": { + "ListAssetContracts": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "contracts" + }, "ListTokenBalances": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,637 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2020-03-01", + "endpointPrefix":"agreement-marketplace", + "jsonVersion":"1.0", + "protocol":"json", + "serviceAbbreviation":"Agreement Service", + "serviceFullName":"AWS Marketplace Agreement Service", + "serviceId":"Marketplace Agreement", + "signatureVersion":"v4", + "signingName":"aws-marketplace", + "targetPrefix":"AWSMPCommerceService_v20200301", + "uid":"marketplace-agreement-2020-03-01" + }, + "operations":{ + "DescribeAgreement":{ + "name":"DescribeAgreement", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeAgreementInput"}, + "output":{"shape":"DescribeAgreementOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetAgreementTerms":{ + "name":"GetAgreementTerms", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetAgreementTermsInput"}, + "output":{"shape":"GetAgreementTermsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "SearchAgreements":{ + "name":"SearchAgreements", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SearchAgreementsInput"}, + "output":{"shape":"SearchAgreementsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + } + }, + "shapes":{ + "AWSAccountId":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^[0-9]+$" + }, + "AcceptedTerm":{ + "type":"structure", + "members":{ + "byolPricingTerm":{"shape":"ByolPricingTerm"}, + "configurableUpfrontPricingTerm":{"shape":"ConfigurableUpfrontPricingTerm"}, + "fixedUpfrontPricingTerm":{"shape":"FixedUpfrontPricingTerm"}, + "freeTrialPricingTerm":{"shape":"FreeTrialPricingTerm"}, + "legalTerm":{"shape":"LegalTerm"}, + "paymentScheduleTerm":{"shape":"PaymentScheduleTerm"}, + "recurringPaymentTerm":{"shape":"RecurringPaymentTerm"}, + "renewalTerm":{"shape":"RenewalTerm"}, + "supportTerm":{"shape":"SupportTerm"}, + "usageBasedPricingTerm":{"shape":"UsageBasedPricingTerm"}, + "validityTerm":{"shape":"ValidityTerm"} + }, + "union":true + }, + "AcceptedTermList":{ + "type":"list", + "member":{"shape":"AcceptedTerm"} + }, + "Acceptor":{ + "type":"structure", + "members":{ + "accountId":{"shape":"AWSAccountId"} + } + }, + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "requestId":{"shape":"RequestId"} + }, + "exception":true + }, + "AgreementResourceType":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z]+$" + }, + "AgreementStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "ARCHIVED", + "CANCELLED", + "EXPIRED", + "RENEWED", + "REPLACED", + "ROLLED_BACK", + "SUPERSEDED", + "TERMINATED" + ] + }, + "AgreementType":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[A-Za-z]+$" + }, + "AgreementViewSummary":{ + "type":"structure", + "members":{ + "acceptanceTime":{"shape":"Timestamp"}, + "acceptor":{"shape":"Acceptor"}, + "agreementId":{"shape":"ResourceId"}, + "agreementType":{"shape":"AgreementType"}, + "endTime":{"shape":"Timestamp"}, + "proposalSummary":{"shape":"ProposalSummary"}, + "proposer":{"shape":"Proposer"}, + "startTime":{"shape":"Timestamp"}, + "status":{"shape":"AgreementStatus"} + } + }, + "AgreementViewSummaryList":{ + "type":"list", + "member":{"shape":"AgreementViewSummary"} + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "BoundedString":{ + "type":"string", + "max":4096, + "min":1, + "pattern":"^(.)+$" + }, + "ByolPricingTerm":{ + "type":"structure", + "members":{ + "type":{"shape":"UnversionedTermType"} + } + }, + "Catalog":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z]+$" + }, + "ConfigurableUpfrontPricingTerm":{ + "type":"structure", + "members":{ + "configuration":{"shape":"ConfigurableUpfrontPricingTermConfiguration"}, + "currencyCode":{"shape":"CurrencyCode"}, + "rateCards":{"shape":"ConfigurableUpfrontRateCardList"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "ConfigurableUpfrontPricingTermConfiguration":{ + "type":"structure", + "required":[ + "dimensions", + "selectorValue" + ], + "members":{ + "dimensions":{"shape":"DimensionList"}, + "selectorValue":{"shape":"BoundedString"} + } + }, + "ConfigurableUpfrontRateCardItem":{ + "type":"structure", + "members":{ + "constraints":{"shape":"Constraints"}, + "rateCard":{"shape":"RateCardList"}, + "selector":{"shape":"Selector"} + } + }, + "ConfigurableUpfrontRateCardList":{ + "type":"list", + "member":{"shape":"ConfigurableUpfrontRateCardItem"} + }, + "Constraints":{ + "type":"structure", + "members":{ + "multipleDimensionSelection":{"shape":"BoundedString"}, + "quantityConfiguration":{"shape":"BoundedString"} + } + }, + "CurrencyCode":{ + "type":"string", + "max":3, + "min":3, + "pattern":"^[A-Z]+$" + }, + "DescribeAgreementInput":{ + "type":"structure", + "required":["agreementId"], + "members":{ + "agreementId":{"shape":"ResourceId"} + } + }, + "DescribeAgreementOutput":{ + "type":"structure", + "members":{ + "acceptanceTime":{"shape":"Timestamp"}, + "acceptor":{"shape":"Acceptor"}, + "agreementId":{"shape":"ResourceId"}, + "agreementType":{"shape":"AgreementType"}, + "endTime":{"shape":"Timestamp"}, + "estimatedCharges":{"shape":"EstimatedCharges"}, + "proposalSummary":{"shape":"ProposalSummary"}, + "proposer":{"shape":"Proposer"}, + "startTime":{"shape":"Timestamp"}, + "status":{"shape":"AgreementStatus"} + } + }, + "Dimension":{ + "type":"structure", + "required":[ + "dimensionKey", + "dimensionValue" + ], + "members":{ + "dimensionKey":{"shape":"BoundedString"}, + "dimensionValue":{"shape":"ZeroValueInteger"} + } + }, + "DimensionList":{ + "type":"list", + "member":{"shape":"Dimension"}, + "min":1 + }, + "DocumentItem":{ + "type":"structure", + "members":{ + "type":{"shape":"BoundedString"}, + "url":{"shape":"BoundedString"}, + "version":{"shape":"BoundedString"} + } + }, + "DocumentList":{ + "type":"list", + "member":{"shape":"DocumentItem"} + }, + "EstimatedCharges":{ + "type":"structure", + "members":{ + "agreementValue":{"shape":"BoundedString"}, + "currencyCode":{"shape":"CurrencyCode"} + } + }, + "ExceptionMessage":{ + "type":"string", + "max":1024, + "min":1 + }, + "Filter":{ + "type":"structure", + "members":{ + "name":{"shape":"FilterName"}, + "values":{"shape":"FilterValueList"} + } + }, + "FilterList":{ + "type":"list", + "member":{"shape":"Filter"}, + "max":10, + "min":1 + }, + "FilterName":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^[A-Za-z_]+$" + }, + "FilterValue":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[A-Za-z0-9+:_-]+$" + }, + "FilterValueList":{ + "type":"list", + "member":{"shape":"FilterValue"}, + "max":1, + "min":1 + }, + "FixedUpfrontPricingTerm":{ + "type":"structure", + "members":{ + "currencyCode":{"shape":"CurrencyCode"}, + "duration":{"shape":"BoundedString"}, + "grants":{"shape":"GrantList"}, + "price":{"shape":"BoundedString"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "FreeTrialPricingTerm":{ + "type":"structure", + "members":{ + "duration":{"shape":"BoundedString"}, + "grants":{"shape":"GrantList"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "GetAgreementTermsInput":{ + "type":"structure", + "required":["agreementId"], + "members":{ + "agreementId":{"shape":"ResourceId"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "GetAgreementTermsOutput":{ + "type":"structure", + "members":{ + "acceptedTerms":{"shape":"AcceptedTermList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "GrantItem":{ + "type":"structure", + "members":{ + "dimensionKey":{"shape":"BoundedString"}, + "maxQuantity":{"shape":"PositiveIntegerWithDefaultValueOne"} + } + }, + "GrantList":{ + "type":"list", + "member":{"shape":"GrantItem"} + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "requestId":{"shape":"RequestId"} + }, + "exception":true, + "fault":true + }, + "LegalTerm":{ + "type":"structure", + "members":{ + "documents":{"shape":"DocumentList"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "NextToken":{ + "type":"string", + "max":8192, + "min":0, + "pattern":"^[a-zA-Z0-9+/=]+$" + }, + "OfferId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^\\S{1,64}$" + }, + "PaymentScheduleTerm":{ + "type":"structure", + "members":{ + "currencyCode":{"shape":"CurrencyCode"}, + "schedule":{"shape":"ScheduleList"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "PositiveIntegerWithDefaultValueOne":{ + "type":"integer", + "box":true, + "min":1 + }, + "ProposalSummary":{ + "type":"structure", + "members":{ + "offerId":{"shape":"OfferId"}, + "resources":{"shape":"Resources"} + } + }, + "Proposer":{ + "type":"structure", + "members":{ + "accountId":{"shape":"AWSAccountId"} + } + }, + "RateCardItem":{ + "type":"structure", + "members":{ + "dimensionKey":{"shape":"BoundedString"}, + "price":{"shape":"BoundedString"} + } + }, + "RateCardList":{ + "type":"list", + "member":{"shape":"RateCardItem"} + }, + "RecurringPaymentTerm":{ + "type":"structure", + "members":{ + "billingPeriod":{"shape":"BoundedString"}, + "currencyCode":{"shape":"CurrencyCode"}, + "price":{"shape":"BoundedString"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "RenewalTerm":{ + "type":"structure", + "members":{ + "configuration":{"shape":"RenewalTermConfiguration"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "RenewalTermConfiguration":{ + "type":"structure", + "required":["enableAutoRenew"], + "members":{ + "enableAutoRenew":{"shape":"Boolean"} + } + }, + "RequestId":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[A-Za-z0-9-]+$" + }, + "Resource":{ + "type":"structure", + "members":{ + "id":{"shape":"ResourceId"}, + "type":{"shape":"AgreementResourceType"} + } + }, + "ResourceId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[A-Za-z0-9_/-]+$" + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "requestId":{"shape":"RequestId"}, + "resourceId":{"shape":"ResourceId"}, + "resourceType":{"shape":"ResourceType"} + }, + "exception":true + }, + "ResourceType":{ + "type":"string", + "enum":["Agreement"] + }, + "Resources":{ + "type":"list", + "member":{"shape":"Resource"} + }, + "ScheduleItem":{ + "type":"structure", + "members":{ + "chargeAmount":{"shape":"BoundedString"}, + "chargeDate":{"shape":"Timestamp"} + } + }, + "ScheduleList":{ + "type":"list", + "member":{"shape":"ScheduleItem"} + }, + "SearchAgreementsInput":{ + "type":"structure", + "members":{ + "catalog":{"shape":"Catalog"}, + "filters":{"shape":"FilterList"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"}, + "sort":{"shape":"Sort"} + } + }, + "SearchAgreementsOutput":{ + "type":"structure", + "members":{ + "agreementViewSummaries":{"shape":"AgreementViewSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "Selector":{ + "type":"structure", + "members":{ + "type":{"shape":"BoundedString"}, + "value":{"shape":"BoundedString"} + } + }, + "Sort":{ + "type":"structure", + "members":{ + "sortBy":{"shape":"SortBy"}, + "sortOrder":{"shape":"SortOrder"} + } + }, + "SortBy":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[A-Za-z_]+$" + }, + "SortOrder":{ + "type":"string", + "enum":[ + "ASCENDING", + "DESCENDING" + ] + }, + "SupportTerm":{ + "type":"structure", + "members":{ + "refundPolicy":{"shape":"BoundedString"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "requestId":{"shape":"RequestId"} + }, + "exception":true + }, + "Timestamp":{"type":"timestamp"}, + "UnversionedTermType":{ + "type":"string", + "max":4096, + "min":1, + "pattern":"^[A-Za-z]+$" + }, + "UsageBasedPricingTerm":{ + "type":"structure", + "members":{ + "currencyCode":{"shape":"CurrencyCode"}, + "rateCards":{"shape":"UsageBasedRateCardList"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "UsageBasedRateCardItem":{ + "type":"structure", + "members":{ + "rateCard":{"shape":"RateCardList"} + } + }, + "UsageBasedRateCardList":{ + "type":"list", + "member":{"shape":"UsageBasedRateCardItem"} + }, + "ValidationException":{ + "type":"structure", + "members":{ + "fields":{"shape":"ValidationExceptionFieldList"}, + "message":{"shape":"ExceptionMessage"}, + "reason":{"shape":"ValidationExceptionReason"}, + "requestId":{"shape":"RequestId"} + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "message", + "name" + ], + "members":{ + "message":{"shape":"BoundedString"}, + "name":{"shape":"BoundedString"} + } + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "INVALID_AGREEMENT_ID", + "MISSING_AGREEMENT_ID", + "INVALID_CATALOG", + "INVALID_FILTER_NAME", + "INVALID_FILTER_VALUES", + "INVALID_SORT_BY", + "INVALID_SORT_ORDER", + "INVALID_NEXT_TOKEN", + "INVALID_MAX_RESULTS", + "UNSUPPORTED_FILTERS", + "OTHER" + ] + }, + "ValidityTerm":{ + "type":"structure", + "members":{ + "agreementDuration":{"shape":"BoundedString"}, + "agreementEndDate":{"shape":"Timestamp"}, + "agreementStartDate":{"shape":"Timestamp"}, + "type":{"shape":"UnversionedTermType"} + } + }, + "ZeroValueInteger":{ + "type":"integer", + "min":0 + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,550 @@ +{ + "version": "2.0", + "service": "

AWS Marketplace is a curated digital catalog that customers can use to find, buy, deploy, and manage third-party software, data, and services to build solutions and run their businesses. The AWS Marketplace Agreement Service provides an API interface that helps AWS Marketplace sellers manage their product-related agreements, including listing, searching, and filtering agreements.

To manage agreements in AWS Marketplace, you must ensure that your AWS Identity and Access Management (IAM) policies and roles are set up. The user must have the required policies/permissions that allow them to carry out the actions in AWS:

  • DescribeAgreement – Grants permission to users to obtain detailed meta data about any of their agreements.

  • GetAgreementTerms – Grants permission to users to obtain details about the terms of an agreement.

  • SearchAgreements – Grants permission to users to search through all their agreements.

", + "operations": { + "DescribeAgreement": "

Provides details about an agreement, such as the proposer, acceptor, start date, and end date.

", + "GetAgreementTerms": "

Obtains details about the terms in an agreement that you participated in as proposer or acceptor.

The details include:

  • TermType – The type of term, such as LegalTerm, RenewalTerm, or ConfigurableUpfrontPricingTerm.

  • TermID – The ID of the particular term, which is common between offer and agreement.

  • TermPayload – The key information contained in the term, such as the EULA for LegalTerm or pricing and dimensions for various pricing terms, such as ConfigurableUpfrontPricingTerm or UsageBasedPricingTerm.

  • Configuration – The buyer/acceptor's selection at the time of agreement creation, such as the number of units purchased for a dimension or setting the EnableAutoRenew flag.

", + "SearchAgreements": "

Searches across all agreements that a proposer or an acceptor has in AWS Marketplace. The search returns a list of agreements with basic agreement information.

The following filter combinations are supported:

  • PartyType as Proposer + AgreementType + ResourceIdentifier

  • PartyType as Proposer + AgreementType + OfferId

  • PartyType as Proposer + AgreementType + AcceptorAccountId

  • PartyType as Proposer + AgreementType + Status

  • PartyType as Proposer + AgreementType + ResourceIdentifier + Status

  • PartyType as Proposer + AgreementType + OfferId + Status

  • PartyType as Proposer + AgreementType + AcceptorAccountId + Status

  • PartyType as Proposer + AgreementType + ResourceType + Status

  • PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceType + Status

  • PartyType as Proposer + AgreementType + AcceptorAccountId + OfferId

  • PartyType as Proposer + AgreementType + AcceptorAccountId + OfferId + Status

  • PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceIdentifier

  • PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceIdentifier + Status

  • PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceType

" + }, + "shapes": { + "AWSAccountId": { + "base": null, + "refs": { + "Acceptor$accountId": "

The AWS account ID of the acceptor.

", + "Proposer$accountId": "

The AWS account ID of the proposer.

" + } + }, + "AcceptedTerm": { + "base": "

A subset of terms proposed by the proposer, which have been accepted by the acceptor as part of agreement creation.

", + "refs": { + "AcceptedTermList$member": null + } + }, + "AcceptedTermList": { + "base": null, + "refs": { + "GetAgreementTermsOutput$acceptedTerms": "

A subset of terms proposed by the proposer that have been accepted by the acceptor as part of the agreement creation.

" + } + }, + "Acceptor": { + "base": "

The details of the party accepting the agreement terms. This is commonly the buyer for PurchaseAgreement.

", + "refs": { + "AgreementViewSummary$acceptor": "

Details of the party accepting the agreement terms. This is commonly the buyer for PurchaseAgreement.

", + "DescribeAgreementOutput$acceptor": "

The details of the party accepting the agreement terms. This is commonly the buyer for PurchaseAgreement.

" + } + }, + "AccessDeniedException": { + "base": "

User does not have sufficient access to perform this action.

", + "refs": { + } + }, + "AgreementResourceType": { + "base": null, + "refs": { + "Resource$type": "

Type of the resource, which is the product. Values include SaaSProduct or AmiProduct.

" + } + }, + "AgreementStatus": { + "base": null, + "refs": { + "AgreementViewSummary$status": "

The current status of the agreement.

", + "DescribeAgreementOutput$status": "

The current status of the agreement.

Statuses include:

  • ACTIVE – The terms of the agreement are active.

  • ARCHIVED – The agreement ended without a specified reason.

  • CANCELLED – The acceptor ended the agreement before the defined end date.

  • EXPIRED – The agreement ended on the defined end date.

  • RENEWED – The agreement was renewed into a new agreement (for example, an auto-renewal).

  • REPLACED – The agreement was replaced using an agreement replacement offer.

  • ROLLED_BACK (Only applicable to inactive agreement revisions) – The agreement revision has been rolled back because of an error. An earlier revision is now active.

  • SUPERCEDED (Only applicable to inactive agreement revisions) – The agreement revision is no longer active and another agreement revision is now active.

  • TERMINATED – The agreement ended before the defined end date because of an AWS termination (for example, a payment failure).

" + } + }, + "AgreementType": { + "base": null, + "refs": { + "AgreementViewSummary$agreementType": "

The type of agreement. Values are PurchaseAgreement or VendorInsightsAgreement.

", + "DescribeAgreementOutput$agreementType": "

The type of agreement. Values are PurchaseAgreement or VendorInsightsAgreement.

" + } + }, + "AgreementViewSummary": { + "base": "

A summary of the agreement, including top-level attributes (for example, the agreement ID, version, proposer, and acceptor).

", + "refs": { + "AgreementViewSummaryList$member": null + } + }, + "AgreementViewSummaryList": { + "base": null, + "refs": { + "SearchAgreementsOutput$agreementViewSummaries": "

A summary of the agreement, including top-level attributes (for example, the agreement ID, version, proposer, and acceptor).

" + } + }, + "Boolean": { + "base": null, + "refs": { + "RenewalTermConfiguration$enableAutoRenew": "

Defines whether the acceptor has chosen to auto-renew the agreement at the end of its lifecycle. Can be set to True or False.

" + } + }, + "BoundedString": { + "base": null, + "refs": { + "ConfigurableUpfrontPricingTermConfiguration$selectorValue": "

Defines the length of time for which the particular pricing/dimension is being purchased by the acceptor.

", + "Constraints$multipleDimensionSelection": "

Determines if buyers are allowed to select multiple dimensions in the rate card. The possible values are Allowed and Disallowed. The default value is Allowed.

", + "Constraints$quantityConfiguration": "

Determines if acceptors are allowed to configure quantity for each dimension in rate card. The possible values are Allowed and Disallowed. The default value is Allowed.

", + "Dimension$dimensionKey": "

The name of key value of the dimension.

", + "DocumentItem$type": "

Category of the document. Document types include:

  • CustomEula – A custom EULA provided by you as seller. A URL for a EULA stored in an accessible Amazon S3 bucket is required for this document type.

  • CustomDsa – A custom Data Subscription Agreement (DSA) provided by you as seller. A URL for a DSA stored in an accessible Amazon S3 bucket is required for this document type.

  • StandardEula – The Standard Contract for AWS Marketplace (SCMP). For more information about SCMP, see the AWS Marketplace Seller Guide. You don’t provide a URL for this type because it’s managed by AWS Marketplace.

  • StandardDsa – DSA for AWS Marketplace. For more information about the DSA, see the AWS Data Exchange User Guide. You don’t provide a URL for this type because it’s managed by AWS Marketplace.

", + "DocumentItem$url": "

A URL to the legal document for buyers to read. Required when Type is CustomEula.

", + "DocumentItem$version": "

Version of standard contracts provided by AWS Marketplace. Required when Type is StandardEula or StandardDsa.

", + "EstimatedCharges$agreementValue": "

The total known amount customer has to pay across the lifecycle of the agreement.

This is the total contract value if accepted terms contain ConfigurableUpfrontPricingTerm or FixedUpfrontPricingTerm. In the case of pure contract pricing, this will be the total value of the contract. In the case of contracts with consumption pricing, this will only include the committed value and not include any overages that occur.

If the accepted terms contain PaymentScheduleTerm, it will be the total payment schedule amount. This occurs when flexible payment schedule is used, and is the sum of all invoice charges in the payment schedule.

In case a customer has amended an agreement, by purchasing more units of any dimension, this will include both the original cost as well as the added cost incurred due to addition of new units.

This is 0 if the accepted terms contain UsageBasedPricingTerm without ConfigurableUpfrontPricingTerm or RecurringPaymentTerm. This occurs for usage-based pricing (such as SaaS metered or AMI/container hourly or monthly), because the exact usage is not known upfront.

", + "FixedUpfrontPricingTerm$duration": "

Contract duration for the terms.

", + "FixedUpfrontPricingTerm$price": "

Fixed amount to be charged to the customer when this term is accepted.

", + "FreeTrialPricingTerm$duration": "

Duration of the free trial period (5–31 days).

", + "GrantItem$dimensionKey": "

Unique dimension key defined in the product document. Dimensions represent categories of capacity in a product and are specified when the product is listed in AWS Marketplace.

", + "RateCardItem$dimensionKey": "

Dimension for which the given entitlement applies. Dimensions represent categories of capacity in a product and are specified when the product is listed in AWS Marketplace.

", + "RateCardItem$price": "

Per unit price for the product dimension that’s used for calculating the amount to be charged.

", + "RecurringPaymentTerm$billingPeriod": "

Defines the recurrence at which buyers are charged.

", + "RecurringPaymentTerm$price": "

Amount charged to the buyer every billing period.

", + "ScheduleItem$chargeAmount": "

The price that the customer would pay on the scheduled date (chargeDate).

", + "Selector$type": "

Category of selector.

", + "Selector$value": "

Contract duration. This field supports the ISO 8601 format.

", + "SupportTerm$refundPolicy": "

Free-text field about the refund policy description that will be shown to customers as is on the website and console.

", + "ValidationExceptionField$message": "

See applicable actions.

", + "ValidationExceptionField$name": "

The name of the field associated with the error.

", + "ValidityTerm$agreementDuration": "

Defines the duration that the agreement remains active. If AgreementStartDate isn’t provided, the agreement duration is relative to the agreement signature time. The duration is represented in the ISO_8601 format.

" + } + }, + "ByolPricingTerm": { + "base": "

Enables you and your customers to move your existing agreements to AWS Marketplace. The customer won't be charged for product usage in AWS Marketplace because they already paid for the product outside of AWS Marketplace.

", + "refs": { + "AcceptedTerm$byolPricingTerm": "

Enables you and your customers to move your existing agreements to AWS Marketplace. The customer won't be charged for product usage in AWS Marketplace because they already paid for the product outside of AWS Marketplace.

" + } + }, + "Catalog": { + "base": null, + "refs": { + "SearchAgreementsInput$catalog": "

The catalog in which the agreement was created.

" + } + }, + "ConfigurableUpfrontPricingTerm": { + "base": "

Defines a prepaid payment model that allows buyers to configure the entitlements they want to purchase and the duration.

", + "refs": { + "AcceptedTerm$configurableUpfrontPricingTerm": "

Defines a prepaid payment model that allows buyers to configure the entitlements they want to purchase and the duration.

" + } + }, + "ConfigurableUpfrontPricingTermConfiguration": { + "base": "

Defines a prepaid payment model that allows buyers to configure the entitlements they want to purchase and the duration.

", + "refs": { + "ConfigurableUpfrontPricingTerm$configuration": "

Additional parameters specified by the acceptor while accepting the term.

" + } + }, + "ConfigurableUpfrontRateCardItem": { + "base": "

Within the prepaid payment model defined under ConfigurableUpfrontPricingTerm, the RateCardItem defines all the various rate cards (including pricing and dimensions) that have been proposed.

", + "refs": { + "ConfigurableUpfrontRateCardList$member": null + } + }, + "ConfigurableUpfrontRateCardList": { + "base": null, + "refs": { + "ConfigurableUpfrontPricingTerm$rateCards": "

A rate card defines the per unit rates for product dimensions.

" + } + }, + "Constraints": { + "base": "

Defines limits on how the term can be configured by acceptors.

", + "refs": { + "ConfigurableUpfrontRateCardItem$constraints": "

Defines limits on how the term can be configured by acceptors.

" + } + }, + "CurrencyCode": { + "base": null, + "refs": { + "ConfigurableUpfrontPricingTerm$currencyCode": "

Defines the currency for the prices mentioned in the term.

", + "EstimatedCharges$currencyCode": "

Defines the currency code for the charge.

", + "FixedUpfrontPricingTerm$currencyCode": "

Defines the currency for the prices mentioned in this term.

", + "PaymentScheduleTerm$currencyCode": "

Defines the currency for the prices mentioned in the term.

", + "RecurringPaymentTerm$currencyCode": "

Defines the currency for the prices mentioned in this term.

", + "UsageBasedPricingTerm$currencyCode": "

Defines the currency for the prices mentioned in the term.

" + } + }, + "DescribeAgreementInput": { + "base": null, + "refs": { + } + }, + "DescribeAgreementOutput": { + "base": null, + "refs": { + } + }, + "Dimension": { + "base": "

Defines the dimensions that the acceptor has purchased from the overall set of dimensions presented in the rate card.

", + "refs": { + "DimensionList$member": null + } + }, + "DimensionList": { + "base": null, + "refs": { + "ConfigurableUpfrontPricingTermConfiguration$dimensions": "

Defines the dimensions that the acceptor has purchased from the overall set of dimensions presented in the rate card.

" + } + }, + "DocumentItem": { + "base": "

Includes the list of references to legal resources proposed by the proposer to the acceptor. Each DocumentItem refers to an individual reference.

", + "refs": { + "DocumentList$member": null + } + }, + "DocumentList": { + "base": null, + "refs": { + "LegalTerm$documents": "

List of references to legal resources proposed to the buyers. An example is the EULA.

" + } + }, + "EstimatedCharges": { + "base": "

Estimated cost of the agreement.

", + "refs": { + "DescribeAgreementOutput$estimatedCharges": "

The estimated cost of the agreement.

" + } + }, + "ExceptionMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "Filter": { + "base": "

The filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria, such as offerId or productId.

", + "refs": { + "FilterList$member": null + } + }, + "FilterList": { + "base": null, + "refs": { + "SearchAgreementsInput$filters": "

The filter name and value pair used to return a specific list of results.

The following filters are supported:

  • ResourceIdentifier – The unique identifier of the resource.

  • ResourceType – Type of the resource, which is the product (AmiProduct, ContainerProduct, or SaaSProduct).

  • PartyType – The party type (either Acceptor or Proposer) of the caller. For agreements where the caller is the proposer, use the Proposer filter. For agreements where the caller is the acceptor, use the Acceptor filter.

  • AcceptorAccountId – The AWS account ID of the party accepting the agreement terms.

  • OfferId – The unique identifier of the offer in which the terms are registered in the agreement token.

  • Status – The current status of the agreement. Values include ACTIVE, ARCHIVED, CANCELLED, EXPIRED, RENEWED, REPLACED, and TERMINATED.

  • BeforeEndTime – A date used to filter agreements with a date before the endTime of an agreement.

  • AfterEndTime – A date used to filter agreements with a date after the endTime of an agreement.

  • AgreementType – The type of agreement. Values include PurchaseAgreement or VendorInsightsAgreement.

" + } + }, + "FilterName": { + "base": null, + "refs": { + "Filter$name": "

The name of the filter.

" + } + }, + "FilterValue": { + "base": null, + "refs": { + "FilterValueList$member": null + } + }, + "FilterValueList": { + "base": null, + "refs": { + "Filter$values": "

The filter value.

" + } + }, + "FixedUpfrontPricingTerm": { + "base": "

Defines a prepaid pricing model where the customers are charged a fixed upfront amount.

", + "refs": { + "AcceptedTerm$fixedUpfrontPricingTerm": "

Defines a pre-paid pricing model where the customers are charged a fixed upfront amount.

" + } + }, + "FreeTrialPricingTerm": { + "base": "

Defines a short-term free pricing model where the buyers aren’t charged anything within a specified limit.

", + "refs": { + "AcceptedTerm$freeTrialPricingTerm": "

Defines a short-term free pricing model where the buyers aren’t charged anything within a specified limit.

" + } + }, + "GetAgreementTermsInput": { + "base": null, + "refs": { + } + }, + "GetAgreementTermsOutput": { + "base": null, + "refs": { + } + }, + "GrantItem": { + "base": "

Entitlements granted to the acceptor of fixed upfront as part of agreement execution.

", + "refs": { + "GrantList$member": null + } + }, + "GrantList": { + "base": null, + "refs": { + "FixedUpfrontPricingTerm$grants": "

Entitlements granted to the acceptor of fixed upfront as part of agreement execution.

", + "FreeTrialPricingTerm$grants": "

Entitlements granted to the acceptor of a free trial as part of an agreement execution.

" + } + }, + "InternalServerException": { + "base": "

Unexpected error during processing of request.

", + "refs": { + } + }, + "LegalTerm": { + "base": "

Defines the list of text agreements proposed to the acceptors. An example is the end user license agreement (EULA).

", + "refs": { + "AcceptedTerm$legalTerm": "

Defines the list of text agreements proposed to the acceptors. An example is the end user license agreement (EULA).

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "GetAgreementTermsInput$maxResults": "

The maximum number of agreements to return in the response.

", + "SearchAgreementsInput$maxResults": "

The maximum number of agreements to return in the response.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "GetAgreementTermsInput$nextToken": "

A token to specify where to start pagination

", + "GetAgreementTermsOutput$nextToken": "

A token to specify where to start pagination

", + "SearchAgreementsInput$nextToken": "

A token to specify where to start pagination.

", + "SearchAgreementsOutput$nextToken": "

The token used for pagination. The field is null if there are no more results.

" + } + }, + "OfferId": { + "base": null, + "refs": { + "ProposalSummary$offerId": "

The unique identifier of the offer in AWS Marketplace.

" + } + }, + "PaymentScheduleTerm": { + "base": "

Defines an installment-based pricing model where customers are charged a fixed price on different dates during the agreement validity period. This is used most commonly for flexible payment schedule pricing.

", + "refs": { + "AcceptedTerm$paymentScheduleTerm": "

Defines an installment-based pricing model where customers are charged a fixed price on different dates during the agreement validity period. This is used most commonly for flexible payment schedule pricing.

" + } + }, + "PositiveIntegerWithDefaultValueOne": { + "base": null, + "refs": { + "GrantItem$maxQuantity": "

Maximum amount of capacity that the buyer can be entitled to the given dimension of the product. If MaxQuantity is not provided, the buyer will be able to use an unlimited amount of the given dimension.

" + } + }, + "ProposalSummary": { + "base": "

A summary of the proposal received from the proposer.

", + "refs": { + "AgreementViewSummary$proposalSummary": "

A summary of the proposal

", + "DescribeAgreementOutput$proposalSummary": "

A summary of the proposal received from the proposer.

" + } + }, + "Proposer": { + "base": "

Details of the party proposing the agreement terms,. This is commonly the seller for PurchaseAgreement.

", + "refs": { + "AgreementViewSummary$proposer": "

Details of the party proposing the agreement terms, most commonly the seller for PurchaseAgreement.

", + "DescribeAgreementOutput$proposer": "

The details of the party proposing the agreement terms. This is commonly the seller for PurchaseAgreement.

" + } + }, + "RateCardItem": { + "base": "

Defines the per unit rates for each individual product dimension.

", + "refs": { + "RateCardList$member": null + } + }, + "RateCardList": { + "base": null, + "refs": { + "ConfigurableUpfrontRateCardItem$rateCard": "

Defines the per unit rates for product dimensions.

", + "UsageBasedRateCardItem$rateCard": "

Defines the per unit rates for product dimensions.

" + } + }, + "RecurringPaymentTerm": { + "base": "

Defines a pricing model where customers are charged a fixed recurring price at the end of each billing period.

", + "refs": { + "AcceptedTerm$recurringPaymentTerm": "

Defines a pricing model where customers are charged a fixed recurring price at the end of each billing period.

" + } + }, + "RenewalTerm": { + "base": "

Defines that on graceful expiration of the agreement (when the agreement ends on its pre-defined end date), a new agreement will be created using the accepted terms on the existing agreement. In other words, the agreement will be renewed. The presence of RenewalTerm in the offer document means that auto-renewal is allowed. Buyers will have the option to accept or decline auto-renewal at the offer acceptance/agreement creation. Buyers can also change this flag from True to False or False to True at anytime during the agreement's lifecycle.

", + "refs": { + "AcceptedTerm$renewalTerm": "

Defines that on graceful expiration of the agreement (when the agreement ends on its pre-defined end date), a new agreement will be created using the accepted terms on the existing agreement. In other words, the agreement will be renewed. Presence of RenewalTerm in the offer document means that auto-renewal is allowed. Buyers will have the option to accept or decline auto-renewal at the offer acceptance/agreement creation. Buyers can also change this flag from True to False or False to True at anytime during the agreement's lifecycle.

" + } + }, + "RenewalTermConfiguration": { + "base": "

Additional parameters specified by the acceptor while accepting the term.

", + "refs": { + "RenewalTerm$configuration": "

Additional parameters specified by the acceptor while accepting the term.

" + } + }, + "RequestId": { + "base": null, + "refs": { + "AccessDeniedException$requestId": "

The unique identifier for the error.

", + "InternalServerException$requestId": "

The unique identifier for the error.

", + "ResourceNotFoundException$requestId": "

The unique identifier for the error.

", + "ThrottlingException$requestId": "

The unique identifier for the error.

", + "ValidationException$requestId": "

The unique identifier associated with the error.

" + } + }, + "Resource": { + "base": "

The list of resources involved in the agreement.

", + "refs": { + "Resources$member": null + } + }, + "ResourceId": { + "base": null, + "refs": { + "AgreementViewSummary$agreementId": "

The unique identifier of the agreement.

", + "DescribeAgreementInput$agreementId": "

The unique identifier of the agreement.

", + "DescribeAgreementOutput$agreementId": "

The unique identifier of the agreement.

", + "GetAgreementTermsInput$agreementId": "

The unique identifier of the agreement.

", + "Resource$id": "

The unique identifier of the resource.

We mention the term resource, which is most commonly a product, so a resourceId is also a productId.

", + "ResourceNotFoundException$resourceId": "

The unique identifier for the resource.

" + } + }, + "ResourceNotFoundException": { + "base": "

Request references a resource which does not exist.

", + "refs": { + } + }, + "ResourceType": { + "base": null, + "refs": { + "ResourceNotFoundException$resourceType": "

The type of resource.

" + } + }, + "Resources": { + "base": null, + "refs": { + "ProposalSummary$resources": "

The list of resources involved in the agreement.

" + } + }, + "ScheduleItem": { + "base": "

An individual installment of the payment that includes the date and amount of the charge.

", + "refs": { + "ScheduleList$member": null + } + }, + "ScheduleList": { + "base": null, + "refs": { + "PaymentScheduleTerm$schedule": "

List of the payment schedule where each element defines one installment of payment. It contains the information necessary for calculating the price.

" + } + }, + "SearchAgreementsInput": { + "base": null, + "refs": { + } + }, + "SearchAgreementsOutput": { + "base": null, + "refs": { + } + }, + "Selector": { + "base": "

Differentiates between the mutually exclusive rate cards in the same pricing term to be selected by the buyer.

", + "refs": { + "ConfigurableUpfrontRateCardItem$selector": "

Differentiates between the mutually exclusive rate cards in the same pricing term to be selected by the buyer.

" + } + }, + "Sort": { + "base": "

An object that contains the SortBy and SortOrder attributes.

", + "refs": { + "SearchAgreementsInput$sort": "

An object that contains the SortBy and SortOrder attributes.

" + } + }, + "SortBy": { + "base": null, + "refs": { + "Sort$sortBy": "

The attribute on which the data is grouped, which can be by StartTime and EndTime. The default value is EndTime.

" + } + }, + "SortOrder": { + "base": null, + "refs": { + "Sort$sortOrder": "

The sorting order, which can be ASCENDING or DESCENDING. The default value is DESCENDING.

" + } + }, + "SupportTerm": { + "base": "

Defines the customer support available for the acceptors when they purchase the software.

", + "refs": { + "AcceptedTerm$supportTerm": "

Defines the customer support available for the acceptors when they purchase the software.

" + } + }, + "ThrottlingException": { + "base": "

Request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "AgreementViewSummary$acceptanceTime": "

The date and time that the agreement was accepted.

", + "AgreementViewSummary$endTime": "

The date and time when the agreement ends. The field is null for pay-as-you-go agreements, which don’t have end dates.

", + "AgreementViewSummary$startTime": "

The date and time when the agreement starts.

", + "DescribeAgreementOutput$acceptanceTime": "

The date and time the offer was accepted or the agreement was created.

AcceptanceTime and StartTime can differ for future dated agreements (FDAs).

", + "DescribeAgreementOutput$endTime": "

The date and time when the agreement ends. The field is null for pay-as-you-go agreements, which don’t have end dates.

", + "DescribeAgreementOutput$startTime": "

The date and time when the agreement starts.

", + "ScheduleItem$chargeDate": "

The date that the customer would pay the price defined in this payment schedule term. Invoices are generated on the date provided.

", + "ValidityTerm$agreementEndDate": "

Defines the date when the agreement ends. The agreement ends at 23:59:59.999 UTC on the date provided. If AgreementEndDate isn’t provided, the agreement end date is determined by the validity of individual terms.

", + "ValidityTerm$agreementStartDate": "

Defines the date when agreement starts. The agreement starts at 00:00:00.000 UTC on the date provided. If AgreementStartDate isn’t provided, the agreement start date is determined based on agreement signature time.

" + } + }, + "UnversionedTermType": { + "base": null, + "refs": { + "ByolPricingTerm$type": "

Type of the term being updated.

", + "ConfigurableUpfrontPricingTerm$type": "

Category of selector.

", + "FixedUpfrontPricingTerm$type": "

Category of the term being updated.

", + "FreeTrialPricingTerm$type": "

Category of the term.

", + "LegalTerm$type": "

Category of the term being updated.

", + "PaymentScheduleTerm$type": "

Type of the term.

", + "RecurringPaymentTerm$type": "

Type of the term being updated.

", + "RenewalTerm$type": "

Category of the term being updated.

", + "SupportTerm$type": "

Category of the term being updated.

", + "UsageBasedPricingTerm$type": "

Category of the term.

", + "ValidityTerm$type": "

Category of the term being updated.

" + } + }, + "UsageBasedPricingTerm": { + "base": "

Defines a usage-based pricing model (typically, pay-as-you-go pricing), where the customers are charged based on product usage.

", + "refs": { + "AcceptedTerm$usageBasedPricingTerm": "

Defines a usage-based pricing model (typically, pay-as-you-go pricing), where the customers are charged based on product usage.

" + } + }, + "UsageBasedRateCardItem": { + "base": "

Within the pay-as-you-go model defined under UsageBasedPricingTerm, the UsageBasedRateCardItem defines an individual rate for a product dimension.

", + "refs": { + "UsageBasedRateCardList$member": null + } + }, + "UsageBasedRateCardList": { + "base": null, + "refs": { + "UsageBasedPricingTerm$rateCards": "

List of rate cards.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by the service.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

The input fails to satisfy the constraints specified by the service.

", + "refs": { + "ValidationExceptionFieldList$member": null + } + }, + "ValidationExceptionFieldList": { + "base": null, + "refs": { + "ValidationException$fields": "

The fields associated with the error.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason associated with the error.

" + } + }, + "ValidityTerm": { + "base": "

Defines the conditions that will keep an agreement created from this offer valid.

", + "refs": { + "AcceptedTerm$validityTerm": "

Defines the conditions that will keep an agreement created from this offer valid.

" + } + }, + "ZeroValueInteger": { + "base": null, + "refs": { + "Dimension$dimensionValue": "

The number of units of the dimension the acceptor has purchased.

For Agreements with ConfigurableUpfrontPricingTerm, the RateCard section will define the prices and dimensions defined by the seller (proposer), whereas the Configuration section will define the actual dimensions, prices, and units the buyer has chosen to accept.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://agreement-marketplace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://agreement-marketplace-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://agreement-marketplace.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://agreement-marketplace.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://agreement-marketplace.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-agreement/2020-03-01/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-agreement/2020-03-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,14 @@ +{ + "pagination": { + "GetAgreementTerms": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "SearchAgreements": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-catalog/2018-09-17/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-catalog/2018-09-17/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-catalog/2018-09-17/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-catalog/2018-09-17/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,854 +1,2646 @@ { - "version":"2.0", - "metadata":{ - "apiVersion":"2018-09-17", - "endpointPrefix":"catalog.marketplace", - "jsonVersion":"1.1", - "protocol":"rest-json", - "serviceAbbreviation":"AWS Marketplace Catalog", - "serviceFullName":"AWS Marketplace Catalog Service", - "serviceId":"Marketplace Catalog", - "signatureVersion":"v4", - "signingName":"aws-marketplace", - "uid":"marketplace-catalog-2018-09-17" + "metadata": { + "apiVersion": "2018-09-17", + "endpointPrefix": "catalog.marketplace", + "jsonVersion": "1.1", + "protocol": "rest-json", + "serviceAbbreviation": "AWS Marketplace Catalog", + "serviceFullName": "AWS Marketplace Catalog Service", + "serviceId": "Marketplace Catalog", + "signatureVersion": "v4", + "signingName": "aws-marketplace", + "uid": "marketplace-catalog-2018-09-17" }, - "operations":{ - "CancelChangeSet":{ - "name":"CancelChangeSet", - "http":{ - "method":"PATCH", - "requestUri":"/CancelChangeSet" - }, - "input":{"shape":"CancelChangeSetRequest"}, - "output":{"shape":"CancelChangeSetResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ResourceInUseException"}, - {"shape":"ThrottlingException"} - ] - }, - "DeleteResourcePolicy":{ - "name":"DeleteResourcePolicy", - "http":{ - "method":"DELETE", - "requestUri":"/DeleteResourcePolicy" - }, - "input":{"shape":"DeleteResourcePolicyRequest"}, - "output":{"shape":"DeleteResourcePolicyResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} - ] - }, - "DescribeChangeSet":{ - "name":"DescribeChangeSet", - "http":{ - "method":"GET", - "requestUri":"/DescribeChangeSet" - }, - "input":{"shape":"DescribeChangeSetRequest"}, - "output":{"shape":"DescribeChangeSetResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} - ] - }, - "DescribeEntity":{ - "name":"DescribeEntity", - "http":{ - "method":"GET", - "requestUri":"/DescribeEntity" - }, - "input":{"shape":"DescribeEntityRequest"}, - "output":{"shape":"DescribeEntityResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotSupportedException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} - ] - }, - "GetResourcePolicy":{ - "name":"GetResourcePolicy", - "http":{ - "method":"GET", - "requestUri":"/GetResourcePolicy" - }, - "input":{"shape":"GetResourcePolicyRequest"}, - "output":{"shape":"GetResourcePolicyResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} - ] - }, - "ListChangeSets":{ - "name":"ListChangeSets", - "http":{ - "method":"POST", - "requestUri":"/ListChangeSets" - }, - "input":{"shape":"ListChangeSetsRequest"}, - "output":{"shape":"ListChangeSetsResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ThrottlingException"} - ] - }, - "ListEntities":{ - "name":"ListEntities", - "http":{ - "method":"POST", - "requestUri":"/ListEntities" - }, - "input":{"shape":"ListEntitiesRequest"}, - "output":{"shape":"ListEntitiesResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} - ] - }, - "ListTagsForResource":{ - "name":"ListTagsForResource", - "http":{ - "method":"POST", - "requestUri":"/ListTagsForResource" - }, - "input":{"shape":"ListTagsForResourceRequest"}, - "output":{"shape":"ListTagsForResourceResponse"}, - "errors":[ - {"shape":"ResourceNotFoundException"}, - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ThrottlingException"} - ] - }, - "PutResourcePolicy":{ - "name":"PutResourcePolicy", - "http":{ - "method":"POST", - "requestUri":"/PutResourcePolicy" - }, - "input":{"shape":"PutResourcePolicyRequest"}, - "output":{"shape":"PutResourcePolicyResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} - ] - }, - "StartChangeSet":{ - "name":"StartChangeSet", - "http":{ - "method":"POST", - "requestUri":"/StartChangeSet" - }, - "input":{"shape":"StartChangeSetRequest"}, - "output":{"shape":"StartChangeSetResponse"}, - "errors":[ - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ResourceInUseException"}, - {"shape":"ThrottlingException"}, - {"shape":"ServiceQuotaExceededException"} - ] - }, - "TagResource":{ - "name":"TagResource", - "http":{ - "method":"POST", - "requestUri":"/TagResource" - }, - "input":{"shape":"TagResourceRequest"}, - "output":{"shape":"TagResourceResponse"}, - "errors":[ - {"shape":"ResourceNotFoundException"}, - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ThrottlingException"} - ] - }, - "UntagResource":{ - "name":"UntagResource", - "http":{ - "method":"POST", - "requestUri":"/UntagResource" - }, - "input":{"shape":"UntagResourceRequest"}, - "output":{"shape":"UntagResourceResponse"}, - "errors":[ - {"shape":"ResourceNotFoundException"}, - {"shape":"InternalServiceException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ThrottlingException"} - ] + "operations": { + "CancelChangeSet": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ResourceInUseException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "PATCH", + "requestUri": "/CancelChangeSet" + }, + "input": { + "shape": "CancelChangeSetRequest" + }, + "name": "CancelChangeSet", + "output": { + "shape": "CancelChangeSetResponse" + } + }, + "DeleteResourcePolicy": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/DeleteResourcePolicy" + }, + "input": { + "shape": "DeleteResourcePolicyRequest" + }, + "name": "DeleteResourcePolicy", + "output": { + "shape": "DeleteResourcePolicyResponse" + } + }, + "DescribeChangeSet": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "GET", + "requestUri": "/DescribeChangeSet" + }, + "input": { + "shape": "DescribeChangeSetRequest" + }, + "name": "DescribeChangeSet", + "output": { + "shape": "DescribeChangeSetResponse" + } + }, + "DescribeEntity": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotSupportedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "GET", + "requestUri": "/DescribeEntity" + }, + "input": { + "shape": "DescribeEntityRequest" + }, + "name": "DescribeEntity", + "output": { + "shape": "DescribeEntityResponse" + } + }, + "GetResourcePolicy": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "GET", + "requestUri": "/GetResourcePolicy" + }, + "input": { + "shape": "GetResourcePolicyRequest" + }, + "name": "GetResourcePolicy", + "output": { + "shape": "GetResourcePolicyResponse" + } + }, + "ListChangeSets": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/ListChangeSets" + }, + "input": { + "shape": "ListChangeSetsRequest" + }, + "name": "ListChangeSets", + "output": { + "shape": "ListChangeSetsResponse" + } + }, + "ListEntities": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/ListEntities" + }, + "input": { + "shape": "ListEntitiesRequest" + }, + "name": "ListEntities", + "output": { + "shape": "ListEntitiesResponse" + } + }, + "ListTagsForResource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/ListTagsForResource" + }, + "input": { + "shape": "ListTagsForResourceRequest" + }, + "name": "ListTagsForResource", + "output": { + "shape": "ListTagsForResourceResponse" + } + }, + "PutResourcePolicy": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/PutResourcePolicy" + }, + "input": { + "shape": "PutResourcePolicyRequest" + }, + "name": "PutResourcePolicy", + "output": { + "shape": "PutResourcePolicyResponse" + } + }, + "StartChangeSet": { + "errors": [ + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ResourceInUseException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/StartChangeSet" + }, + "input": { + "shape": "StartChangeSetRequest" + }, + "name": "StartChangeSet", + "output": { + "shape": "StartChangeSetResponse" + } + }, + "TagResource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/TagResource" + }, + "input": { + "shape": "TagResourceRequest" + }, + "name": "TagResource", + "output": { + "shape": "TagResourceResponse" + } + }, + "UntagResource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServiceException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/UntagResource" + }, + "input": { + "shape": "UntagResourceRequest" + }, + "name": "UntagResource", + "output": { + "shape": "UntagResourceResponse" + } } }, - "shapes":{ - "ARN":{ - "type":"string", - "max":2048, - "min":1, - "pattern":"^[a-zA-Z0-9:*/-]+$" - }, - "AccessDeniedException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":403}, - "exception":true, - "synthetic":true - }, - "CancelChangeSetRequest":{ - "type":"structure", - "required":[ + "shapes": { + "ARN": { + "max": 2048, + "min": 1, + "pattern": "^[a-zA-Z0-9:*/-]+$", + "type": "string" + }, + "AccessDeniedException": { + "error": { + "httpStatusCode": 403 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "AmiProductEntityIdFilter": { + "members": { + "ValueList": { + "shape": "AmiProductEntityIdFilterValueList" + } + }, + "type": "structure" + }, + "AmiProductEntityIdFilterValueList": { + "max": 10, + "member": { + "shape": "AmiProductEntityIdString" + }, + "min": 1, + "type": "list" + }, + "AmiProductEntityIdString": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z0-9][.a-zA-Z0-9/-]+[a-zA-Z0-9]$", + "type": "string" + }, + "AmiProductFilters": { + "members": { + "EntityId": { + "shape": "AmiProductEntityIdFilter" + }, + "LastModifiedDate": { + "shape": "AmiProductLastModifiedDateFilter" + }, + "ProductTitle": { + "shape": "AmiProductTitleFilter" + }, + "Visibility": { + "shape": "AmiProductVisibilityFilter" + } + }, + "type": "structure" + }, + "AmiProductLastModifiedDateFilter": { + "members": { + "DateRange": { + "shape": "AmiProductLastModifiedDateFilterDateRange" + } + }, + "type": "structure" + }, + "AmiProductLastModifiedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "AmiProductSort": { + "members": { + "SortBy": { + "shape": "AmiProductSortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "AmiProductSortBy": { + "enum": [ + "EntityId", + "LastModifiedDate", + "ProductTitle", + "Visibility" + ], + "type": "string" + }, + "AmiProductSummary": { + "members": { + "ProductTitle": { + "shape": "AmiProductTitleString" + }, + "Visibility": { + "shape": "AmiProductVisibilityString" + } + }, + "type": "structure" + }, + "AmiProductTitleFilter": { + "members": { + "ValueList": { + "shape": "AmiProductTitleFilterValueList" + }, + "WildCardValue": { + "shape": "AmiProductTitleString" + } + }, + "type": "structure" + }, + "AmiProductTitleFilterValueList": { + "max": 10, + "member": { + "shape": "AmiProductTitleString" + }, + "min": 1, + "type": "list" + }, + "AmiProductTitleString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "AmiProductVisibilityFilter": { + "members": { + "ValueList": { + "shape": "AmiProductVisibilityFilterValueList" + } + }, + "type": "structure" + }, + "AmiProductVisibilityFilterValueList": { + "max": 10, + "member": { + "shape": "AmiProductVisibilityString" + }, + "min": 1, + "type": "list" + }, + "AmiProductVisibilityString": { + "enum": [ + "Limited", + "Public", + "Restricted", + "Draft" + ], + "type": "string" + }, + "CancelChangeSetRequest": { + "members": { + "Catalog": { + "location": "querystring", + "locationName": "catalog", + "shape": "Catalog" + }, + "ChangeSetId": { + "location": "querystring", + "locationName": "changeSetId", + "shape": "ResourceId" + } + }, + "required": [ "Catalog", "ChangeSetId" ], - "members":{ - "Catalog":{ - "shape":"Catalog", - "location":"querystring", - "locationName":"catalog" - }, - "ChangeSetId":{ - "shape":"ResourceId", - "location":"querystring", - "locationName":"changeSetId" + "type": "structure" + }, + "CancelChangeSetResponse": { + "members": { + "ChangeSetArn": { + "shape": "ARN" + }, + "ChangeSetId": { + "shape": "ResourceId" } - } + }, + "type": "structure" }, - "CancelChangeSetResponse":{ - "type":"structure", - "members":{ - "ChangeSetId":{"shape":"ResourceId"}, - "ChangeSetArn":{"shape":"ARN"} - } - }, - "Catalog":{ - "type":"string", - "max":64, - "min":1, - "pattern":"^[a-zA-Z]+$" - }, - "Change":{ - "type":"structure", - "required":[ + "Catalog": { + "max": 64, + "min": 1, + "pattern": "^[a-zA-Z]+$", + "type": "string" + }, + "Change": { + "members": { + "ChangeName": { + "shape": "ChangeName" + }, + "ChangeType": { + "shape": "ChangeType" + }, + "Details": { + "shape": "Json" + }, + "Entity": { + "shape": "Entity" + }, + "EntityTags": { + "shape": "TagList" + } + }, + "required": [ "ChangeType", - "Entity", - "Details" + "Entity" ], - "members":{ - "ChangeType":{"shape":"ChangeType"}, - "Entity":{"shape":"Entity"}, - "EntityTags":{"shape":"TagList"}, - "Details":{"shape":"Json"}, - "ChangeName":{"shape":"ChangeName"} - } - }, - "ChangeName":{ - "type":"string", - "max":72, - "min":1, - "pattern":"^[a-zA-Z]$" - }, - "ChangeSetDescription":{ - "type":"list", - "member":{"shape":"ChangeSummary"} - }, - "ChangeSetName":{ - "type":"string", - "max":100, - "min":1, - "pattern":"^[\\w\\s+=.:@-]+$" - }, - "ChangeSetSummaryList":{ - "type":"list", - "member":{"shape":"ChangeSetSummaryListItem"} - }, - "ChangeSetSummaryListItem":{ - "type":"structure", - "members":{ - "ChangeSetId":{"shape":"ResourceId"}, - "ChangeSetArn":{"shape":"ARN"}, - "ChangeSetName":{"shape":"ChangeSetName"}, - "StartTime":{"shape":"DateTimeISO8601"}, - "EndTime":{"shape":"DateTimeISO8601"}, - "Status":{"shape":"ChangeStatus"}, - "EntityIdList":{"shape":"ResourceIdList"}, - "FailureCode":{"shape":"FailureCode"} - } - }, - "ChangeStatus":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "ChangeName": { + "max": 72, + "min": 1, + "pattern": "^[a-zA-Z]$", + "type": "string" + }, + "ChangeSetDescription": { + "member": { + "shape": "ChangeSummary" + }, + "type": "list" + }, + "ChangeSetName": { + "max": 100, + "min": 1, + "pattern": "^[\\w\\s+=.:@-]+$", + "type": "string" + }, + "ChangeSetSummaryList": { + "member": { + "shape": "ChangeSetSummaryListItem" + }, + "type": "list" + }, + "ChangeSetSummaryListItem": { + "members": { + "ChangeSetArn": { + "shape": "ARN" + }, + "ChangeSetId": { + "shape": "ResourceId" + }, + "ChangeSetName": { + "shape": "ChangeSetName" + }, + "EndTime": { + "shape": "DateTimeISO8601" + }, + "EntityIdList": { + "shape": "ResourceIdList" + }, + "FailureCode": { + "shape": "FailureCode" + }, + "StartTime": { + "shape": "DateTimeISO8601" + }, + "Status": { + "shape": "ChangeStatus" + } + }, + "type": "structure" + }, + "ChangeStatus": { + "enum": [ "PREPARING", "APPLYING", "SUCCEEDED", "CANCELLED", "FAILED" - ] + ], + "type": "string" }, - "ChangeSummary":{ - "type":"structure", - "members":{ - "ChangeType":{"shape":"ChangeType"}, - "Entity":{"shape":"Entity"}, - "Details":{"shape":"Json"}, - "ErrorDetailList":{"shape":"ErrorDetailList"}, - "ChangeName":{"shape":"ChangeName"} - } - }, - "ChangeType":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^[A-Z][\\w]*$" - }, - "ClientRequestToken":{ - "type":"string", - "max":64, - "min":1, - "pattern":"^[!-~]+$" - }, - "DateTimeISO8601":{ - "type":"string", - "max":20, - "min":20, - "pattern":"^([\\d]{4})\\-(1[0-2]|0[1-9])\\-(3[01]|0[1-9]|[12][\\d])T(2[0-3]|[01][\\d]):([0-5][\\d]):([0-5][\\d])Z$" - }, - "DeleteResourcePolicyRequest":{ - "type":"structure", - "required":["ResourceArn"], - "members":{ - "ResourceArn":{ - "shape":"ResourceARN", - "location":"querystring", - "locationName":"resourceArn" + "ChangeSummary": { + "members": { + "ChangeName": { + "shape": "ChangeName" + }, + "ChangeType": { + "shape": "ChangeType" + }, + "Details": { + "shape": "Json" + }, + "Entity": { + "shape": "Entity" + }, + "ErrorDetailList": { + "shape": "ErrorDetailList" } - } + }, + "type": "structure" + }, + "ChangeType": { + "max": 255, + "min": 1, + "pattern": "^[A-Z][\\w]*$", + "type": "string" + }, + "ClientRequestToken": { + "max": 64, + "min": 1, + "pattern": "^[!-~]+$", + "type": "string" + }, + "ContainerProductEntityIdFilter": { + "members": { + "ValueList": { + "shape": "ContainerProductEntityIdFilterValueList" + } + }, + "type": "structure" + }, + "ContainerProductEntityIdFilterValueList": { + "max": 10, + "member": { + "shape": "ContainerProductEntityIdString" + }, + "min": 1, + "type": "list" + }, + "ContainerProductEntityIdString": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z0-9][.a-zA-Z0-9/-]+[a-zA-Z0-9]$", + "type": "string" + }, + "ContainerProductFilters": { + "members": { + "EntityId": { + "shape": "ContainerProductEntityIdFilter" + }, + "LastModifiedDate": { + "shape": "ContainerProductLastModifiedDateFilter" + }, + "ProductTitle": { + "shape": "ContainerProductTitleFilter" + }, + "Visibility": { + "shape": "ContainerProductVisibilityFilter" + } + }, + "type": "structure" + }, + "ContainerProductLastModifiedDateFilter": { + "members": { + "DateRange": { + "shape": "ContainerProductLastModifiedDateFilterDateRange" + } + }, + "type": "structure" }, - "DeleteResourcePolicyResponse":{ - "type":"structure", - "members":{ - } - }, - "DescribeChangeSetRequest":{ - "type":"structure", - "required":[ + "ContainerProductLastModifiedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "ContainerProductSort": { + "members": { + "SortBy": { + "shape": "ContainerProductSortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "ContainerProductSortBy": { + "enum": [ + "EntityId", + "LastModifiedDate", + "ProductTitle", + "Visibility" + ], + "type": "string" + }, + "ContainerProductSummary": { + "members": { + "ProductTitle": { + "shape": "ContainerProductTitleString" + }, + "Visibility": { + "shape": "ContainerProductVisibilityString" + } + }, + "type": "structure" + }, + "ContainerProductTitleFilter": { + "members": { + "ValueList": { + "shape": "ContainerProductTitleFilterValueList" + }, + "WildCardValue": { + "shape": "ContainerProductTitleString" + } + }, + "type": "structure" + }, + "ContainerProductTitleFilterValueList": { + "max": 10, + "member": { + "shape": "ContainerProductTitleString" + }, + "min": 1, + "type": "list" + }, + "ContainerProductTitleString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ContainerProductVisibilityFilter": { + "members": { + "ValueList": { + "shape": "ContainerProductVisibilityFilterValueList" + } + }, + "type": "structure" + }, + "ContainerProductVisibilityFilterValueList": { + "max": 10, + "member": { + "shape": "ContainerProductVisibilityString" + }, + "min": 1, + "type": "list" + }, + "ContainerProductVisibilityString": { + "enum": [ + "Limited", + "Public", + "Restricted", + "Draft" + ], + "type": "string" + }, + "DataProductEntityIdFilter": { + "members": { + "ValueList": { + "shape": "DataProductEntityIdFilterValueList" + } + }, + "type": "structure" + }, + "DataProductEntityIdFilterValueList": { + "max": 10, + "member": { + "shape": "DataProductEntityIdString" + }, + "min": 1, + "type": "list" + }, + "DataProductEntityIdString": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z0-9][.a-zA-Z0-9/-]+[a-zA-Z0-9]$", + "type": "string" + }, + "DataProductFilters": { + "members": { + "EntityId": { + "shape": "DataProductEntityIdFilter" + }, + "LastModifiedDate": { + "shape": "DataProductLastModifiedDateFilter" + }, + "ProductTitle": { + "shape": "DataProductTitleFilter" + }, + "Visibility": { + "shape": "DataProductVisibilityFilter" + } + }, + "type": "structure" + }, + "DataProductLastModifiedDateFilter": { + "members": { + "DateRange": { + "shape": "DataProductLastModifiedDateFilterDateRange" + } + }, + "type": "structure" + }, + "DataProductLastModifiedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "DataProductSort": { + "members": { + "SortBy": { + "shape": "DataProductSortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "DataProductSortBy": { + "enum": [ + "EntityId", + "ProductTitle", + "Visibility", + "LastModifiedDate" + ], + "type": "string" + }, + "DataProductSummary": { + "members": { + "ProductTitle": { + "shape": "DataProductTitleString" + }, + "Visibility": { + "shape": "DataProductVisibilityString" + } + }, + "type": "structure" + }, + "DataProductTitleFilter": { + "members": { + "ValueList": { + "shape": "DataProductTitleFilterValueList" + }, + "WildCardValue": { + "shape": "DataProductTitleString" + } + }, + "type": "structure" + }, + "DataProductTitleFilterValueList": { + "max": 10, + "member": { + "shape": "DataProductTitleString" + }, + "min": 1, + "type": "list" + }, + "DataProductTitleString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "DataProductVisibilityFilter": { + "members": { + "ValueList": { + "shape": "DataProductVisibilityFilterValueList" + } + }, + "type": "structure" + }, + "DataProductVisibilityFilterValueList": { + "max": 10, + "member": { + "shape": "DataProductVisibilityString" + }, + "min": 1, + "type": "list" + }, + "DataProductVisibilityString": { + "enum": [ + "Limited", + "Public", + "Restricted", + "Unavailable", + "Draft" + ], + "type": "string" + }, + "DateTimeISO8601": { + "max": 20, + "min": 20, + "pattern": "^([\\d]{4})\\-(1[0-2]|0[1-9])\\-(3[01]|0[1-9]|[12][\\d])T(2[0-3]|[01][\\d]):([0-5][\\d]):([0-5][\\d])Z$", + "type": "string" + }, + "DeleteResourcePolicyRequest": { + "members": { + "ResourceArn": { + "location": "querystring", + "locationName": "resourceArn", + "shape": "ResourceARN" + } + }, + "required": [ + "ResourceArn" + ], + "type": "structure" + }, + "DeleteResourcePolicyResponse": { + "members": {}, + "type": "structure" + }, + "DescribeChangeSetRequest": { + "members": { + "Catalog": { + "location": "querystring", + "locationName": "catalog", + "shape": "Catalog" + }, + "ChangeSetId": { + "location": "querystring", + "locationName": "changeSetId", + "shape": "ResourceId" + } + }, + "required": [ "Catalog", "ChangeSetId" ], - "members":{ - "Catalog":{ - "shape":"Catalog", - "location":"querystring", - "locationName":"catalog" - }, - "ChangeSetId":{ - "shape":"ResourceId", - "location":"querystring", - "locationName":"changeSetId" + "type": "structure" + }, + "DescribeChangeSetResponse": { + "members": { + "ChangeSet": { + "shape": "ChangeSetDescription" + }, + "ChangeSetArn": { + "shape": "ARN" + }, + "ChangeSetId": { + "shape": "ResourceId" + }, + "ChangeSetName": { + "shape": "ChangeSetName" + }, + "EndTime": { + "shape": "DateTimeISO8601" + }, + "FailureCode": { + "shape": "FailureCode" + }, + "FailureDescription": { + "shape": "ExceptionMessageContent" + }, + "StartTime": { + "shape": "DateTimeISO8601" + }, + "Status": { + "shape": "ChangeStatus" } - } + }, + "type": "structure" }, - "DescribeChangeSetResponse":{ - "type":"structure", - "members":{ - "ChangeSetId":{"shape":"ResourceId"}, - "ChangeSetArn":{"shape":"ARN"}, - "ChangeSetName":{"shape":"ChangeSetName"}, - "StartTime":{"shape":"DateTimeISO8601"}, - "EndTime":{"shape":"DateTimeISO8601"}, - "Status":{"shape":"ChangeStatus"}, - "FailureCode":{"shape":"FailureCode"}, - "FailureDescription":{"shape":"ExceptionMessageContent"}, - "ChangeSet":{"shape":"ChangeSetDescription"} - } - }, - "DescribeEntityRequest":{ - "type":"structure", - "required":[ + "DescribeEntityRequest": { + "members": { + "Catalog": { + "location": "querystring", + "locationName": "catalog", + "shape": "Catalog" + }, + "EntityId": { + "location": "querystring", + "locationName": "entityId", + "shape": "ResourceId" + } + }, + "required": [ "Catalog", "EntityId" ], - "members":{ - "Catalog":{ - "shape":"Catalog", - "location":"querystring", - "locationName":"catalog" - }, - "EntityId":{ - "shape":"ResourceId", - "location":"querystring", - "locationName":"entityId" - } - } - }, - "DescribeEntityResponse":{ - "type":"structure", - "members":{ - "EntityType":{"shape":"EntityType"}, - "EntityIdentifier":{"shape":"Identifier"}, - "EntityArn":{"shape":"ARN"}, - "LastModifiedDate":{"shape":"DateTimeISO8601"}, - "Details":{"shape":"Json"} - } - }, - "Entity":{ - "type":"structure", - "required":["Type"], - "members":{ - "Type":{"shape":"EntityType"}, - "Identifier":{"shape":"Identifier"} - } - }, - "EntityNameString":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^\\\\S+[\\\\S\\\\s]*" - }, - "EntitySummary":{ - "type":"structure", - "members":{ - "Name":{"shape":"EntityNameString"}, - "EntityType":{"shape":"EntityType"}, - "EntityId":{"shape":"ResourceId"}, - "EntityArn":{"shape":"ARN"}, - "LastModifiedDate":{"shape":"DateTimeISO8601"}, - "Visibility":{"shape":"VisibilityValue"} - } - }, - "EntitySummaryList":{ - "type":"list", - "member":{"shape":"EntitySummary"} - }, - "EntityType":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^[a-zA-Z]+$" - }, - "ErrorCodeString":{ - "type":"string", - "max":72, - "min":1, - "pattern":"^[a-zA-Z_]+$" - }, - "ErrorDetail":{ - "type":"structure", - "members":{ - "ErrorCode":{"shape":"ErrorCodeString"}, - "ErrorMessage":{"shape":"ExceptionMessageContent"} - } - }, - "ErrorDetailList":{ - "type":"list", - "member":{"shape":"ErrorDetail"} - }, - "ExceptionMessageContent":{ - "type":"string", - "max":2048, - "min":1, - "pattern":"^(.)+$" - }, - "FailureCode":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "DescribeEntityResponse": { + "members": { + "Details": { + "shape": "Json" + }, + "EntityArn": { + "shape": "ARN" + }, + "EntityIdentifier": { + "shape": "Identifier" + }, + "EntityType": { + "shape": "EntityType" + }, + "LastModifiedDate": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "Entity": { + "members": { + "Identifier": { + "shape": "Identifier" + }, + "Type": { + "shape": "EntityType" + } + }, + "required": [ + "Type" + ], + "type": "structure" + }, + "EntityNameString": { + "max": 255, + "min": 1, + "pattern": "^\\\\S+[\\\\S\\\\s]*", + "type": "string" + }, + "EntitySummary": { + "members": { + "AmiProductSummary": { + "shape": "AmiProductSummary" + }, + "ContainerProductSummary": { + "shape": "ContainerProductSummary" + }, + "DataProductSummary": { + "shape": "DataProductSummary" + }, + "EntityArn": { + "shape": "ARN" + }, + "EntityId": { + "shape": "ResourceId" + }, + "EntityType": { + "shape": "EntityType" + }, + "LastModifiedDate": { + "shape": "DateTimeISO8601" + }, + "Name": { + "shape": "EntityNameString" + }, + "OfferSummary": { + "shape": "OfferSummary" + }, + "ResaleAuthorizationSummary": { + "shape": "ResaleAuthorizationSummary" + }, + "SaaSProductSummary": { + "shape": "SaaSProductSummary" + }, + "Visibility": { + "shape": "VisibilityValue" + } + }, + "type": "structure" + }, + "EntitySummaryList": { + "member": { + "shape": "EntitySummary" + }, + "type": "list" + }, + "EntityType": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z]+$", + "type": "string" + }, + "EntityTypeFilters": { + "members": { + "AmiProductFilters": { + "shape": "AmiProductFilters" + }, + "ContainerProductFilters": { + "shape": "ContainerProductFilters" + }, + "DataProductFilters": { + "shape": "DataProductFilters" + }, + "OfferFilters": { + "shape": "OfferFilters" + }, + "ResaleAuthorizationFilters": { + "shape": "ResaleAuthorizationFilters" + }, + "SaaSProductFilters": { + "shape": "SaaSProductFilters" + } + }, + "type": "structure", + "union": true + }, + "EntityTypeSort": { + "members": { + "AmiProductSort": { + "shape": "AmiProductSort" + }, + "ContainerProductSort": { + "shape": "ContainerProductSort" + }, + "DataProductSort": { + "shape": "DataProductSort" + }, + "OfferSort": { + "shape": "OfferSort" + }, + "ResaleAuthorizationSort": { + "shape": "ResaleAuthorizationSort" + }, + "SaaSProductSort": { + "shape": "SaaSProductSort" + } + }, + "type": "structure", + "union": true + }, + "ErrorCodeString": { + "max": 72, + "min": 1, + "pattern": "^[a-zA-Z_]+$", + "type": "string" + }, + "ErrorDetail": { + "members": { + "ErrorCode": { + "shape": "ErrorCodeString" + }, + "ErrorMessage": { + "shape": "ExceptionMessageContent" + } + }, + "type": "structure" + }, + "ErrorDetailList": { + "member": { + "shape": "ErrorDetail" + }, + "type": "list" + }, + "ExceptionMessageContent": { + "max": 2048, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "FailureCode": { + "enum": [ "CLIENT_ERROR", "SERVER_FAULT" - ] + ], + "type": "string" + }, + "Filter": { + "members": { + "Name": { + "shape": "FilterName" + }, + "ValueList": { + "shape": "ValueList" + } + }, + "type": "structure" }, - "Filter":{ - "type":"structure", - "members":{ - "Name":{"shape":"FilterName"}, - "ValueList":{"shape":"ValueList"} - } - }, - "FilterList":{ - "type":"list", - "member":{"shape":"Filter"}, - "max":8, - "min":1 - }, - "FilterName":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^[a-zA-Z]+$" - }, - "FilterValueContent":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^(.)+$" - }, - "GetResourcePolicyRequest":{ - "type":"structure", - "required":["ResourceArn"], - "members":{ - "ResourceArn":{ - "shape":"ResourceARN", - "location":"querystring", - "locationName":"resourceArn" - } - } - }, - "GetResourcePolicyResponse":{ - "type":"structure", - "members":{ - "Policy":{"shape":"ResourcePolicyJson"} - } - }, - "Identifier":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^[\\w\\-@]+$" - }, - "InternalServiceException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":500}, - "exception":true, - "synthetic":true - }, - "Json":{ - "type":"string", - "max":16384, - "min":2, - "pattern":"^[\\s]*\\{[\\s\\S]*\\}[\\s]*$" - }, - "ListChangeSetsMaxResultInteger":{ - "type":"integer", - "box":true, - "max":20, - "min":1 - }, - "ListChangeSetsRequest":{ - "type":"structure", - "required":["Catalog"], - "members":{ - "Catalog":{"shape":"Catalog"}, - "FilterList":{"shape":"FilterList"}, - "Sort":{"shape":"Sort"}, - "MaxResults":{"shape":"ListChangeSetsMaxResultInteger"}, - "NextToken":{"shape":"NextToken"} - } - }, - "ListChangeSetsResponse":{ - "type":"structure", - "members":{ - "ChangeSetSummaryList":{"shape":"ChangeSetSummaryList"}, - "NextToken":{"shape":"NextToken"} - } - }, - "ListEntitiesMaxResultInteger":{ - "type":"integer", - "box":true, - "max":50, - "min":1 - }, - "ListEntitiesRequest":{ - "type":"structure", - "required":[ + "FilterList": { + "max": 8, + "member": { + "shape": "Filter" + }, + "min": 1, + "type": "list" + }, + "FilterName": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z]+$", + "type": "string" + }, + "FilterValueContent": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "GetResourcePolicyRequest": { + "members": { + "ResourceArn": { + "location": "querystring", + "locationName": "resourceArn", + "shape": "ResourceARN" + } + }, + "required": [ + "ResourceArn" + ], + "type": "structure" + }, + "GetResourcePolicyResponse": { + "members": { + "Policy": { + "shape": "ResourcePolicyJson" + } + }, + "type": "structure" + }, + "Identifier": { + "max": 255, + "min": 1, + "pattern": "^[\\w\\-@]+$", + "type": "string" + }, + "InternalServiceException": { + "error": { + "httpStatusCode": 500 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "Json": { + "max": 16384, + "min": 2, + "pattern": "^[\\s]*\\{[\\s\\S]*\\}[\\s]*$", + "type": "string" + }, + "ListChangeSetsMaxResultInteger": { + "box": true, + "max": 20, + "min": 1, + "type": "integer" + }, + "ListChangeSetsRequest": { + "members": { + "Catalog": { + "shape": "Catalog" + }, + "FilterList": { + "shape": "FilterList" + }, + "MaxResults": { + "shape": "ListChangeSetsMaxResultInteger" + }, + "NextToken": { + "shape": "NextToken" + }, + "Sort": { + "shape": "Sort" + } + }, + "required": [ + "Catalog" + ], + "type": "structure" + }, + "ListChangeSetsResponse": { + "members": { + "ChangeSetSummaryList": { + "shape": "ChangeSetSummaryList" + }, + "NextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListEntitiesMaxResultInteger": { + "box": true, + "max": 50, + "min": 1, + "type": "integer" + }, + "ListEntitiesRequest": { + "members": { + "Catalog": { + "shape": "Catalog" + }, + "EntityType": { + "shape": "EntityType" + }, + "EntityTypeFilters": { + "shape": "EntityTypeFilters" + }, + "EntityTypeSort": { + "shape": "EntityTypeSort" + }, + "FilterList": { + "shape": "FilterList" + }, + "MaxResults": { + "shape": "ListEntitiesMaxResultInteger" + }, + "NextToken": { + "shape": "NextToken" + }, + "OwnershipType": { + "shape": "OwnershipType" + }, + "Sort": { + "shape": "Sort" + } + }, + "required": [ "Catalog", "EntityType" ], - "members":{ - "Catalog":{"shape":"Catalog"}, - "EntityType":{"shape":"EntityType"}, - "FilterList":{"shape":"FilterList"}, - "Sort":{"shape":"Sort"}, - "NextToken":{"shape":"NextToken"}, - "MaxResults":{"shape":"ListEntitiesMaxResultInteger"}, - "OwnershipType":{"shape":"OwnershipType"} - } - }, - "ListEntitiesResponse":{ - "type":"structure", - "members":{ - "EntitySummaryList":{"shape":"EntitySummaryList"}, - "NextToken":{"shape":"NextToken"} - } - }, - "ListTagsForResourceRequest":{ - "type":"structure", - "required":["ResourceArn"], - "members":{ - "ResourceArn":{"shape":"ResourceARN"} - } - }, - "ListTagsForResourceResponse":{ - "type":"structure", - "members":{ - "ResourceArn":{"shape":"ResourceARN"}, - "Tags":{"shape":"TagList"} - } - }, - "NextToken":{ - "type":"string", - "max":2048, - "min":1, - "pattern":"^[\\w+=.:@\\-\\/]$" - }, - "OwnershipType":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "ListEntitiesResponse": { + "members": { + "EntitySummaryList": { + "shape": "EntitySummaryList" + }, + "NextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListTagsForResourceRequest": { + "members": { + "ResourceArn": { + "shape": "ResourceARN" + } + }, + "required": [ + "ResourceArn" + ], + "type": "structure" + }, + "ListTagsForResourceResponse": { + "members": { + "ResourceArn": { + "shape": "ResourceARN" + }, + "Tags": { + "shape": "TagList" + } + }, + "type": "structure" + }, + "NextToken": { + "max": 2048, + "min": 1, + "pattern": "^[\\w+=.:@\\-\\/]$", + "type": "string" + }, + "OfferAvailabilityEndDateFilter": { + "members": { + "DateRange": { + "shape": "OfferAvailabilityEndDateFilterDateRange" + } + }, + "type": "structure" + }, + "OfferAvailabilityEndDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "OfferBuyerAccountsFilter": { + "members": { + "WildCardValue": { + "shape": "OfferBuyerAccountsFilterWildcard" + } + }, + "type": "structure" + }, + "OfferBuyerAccountsFilterWildcard": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "OfferBuyerAccountsList": { + "max": 26, + "member": { + "shape": "OfferBuyerAccountsString" + }, + "min": 0, + "type": "list" + }, + "OfferBuyerAccountsString": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "OfferEntityIdFilter": { + "members": { + "ValueList": { + "shape": "OfferEntityIdFilterValueList" + } + }, + "type": "structure" + }, + "OfferEntityIdFilterValueList": { + "max": 10, + "member": { + "shape": "OfferEntityIdString" + }, + "min": 1, + "type": "list" + }, + "OfferEntityIdString": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z0-9][.a-zA-Z0-9/-]+[a-zA-Z0-9]$", + "type": "string" + }, + "OfferFilters": { + "members": { + "AvailabilityEndDate": { + "shape": "OfferAvailabilityEndDateFilter" + }, + "BuyerAccounts": { + "shape": "OfferBuyerAccountsFilter" + }, + "EntityId": { + "shape": "OfferEntityIdFilter" + }, + "LastModifiedDate": { + "shape": "OfferLastModifiedDateFilter" + }, + "Name": { + "shape": "OfferNameFilter" + }, + "ProductId": { + "shape": "OfferProductIdFilter" + }, + "ReleaseDate": { + "shape": "OfferReleaseDateFilter" + }, + "State": { + "shape": "OfferStateFilter" + }, + "Targeting": { + "shape": "OfferTargetingFilter" + } + }, + "type": "structure" + }, + "OfferLastModifiedDateFilter": { + "members": { + "DateRange": { + "shape": "OfferLastModifiedDateFilterDateRange" + } + }, + "type": "structure" + }, + "OfferLastModifiedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "OfferNameFilter": { + "members": { + "ValueList": { + "shape": "OfferNameFilterValueList" + }, + "WildCardValue": { + "shape": "OfferNameString" + } + }, + "type": "structure" + }, + "OfferNameFilterValueList": { + "max": 10, + "member": { + "shape": "OfferNameString" + }, + "min": 1, + "type": "list" + }, + "OfferNameString": { + "max": 150, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "OfferProductIdFilter": { + "members": { + "ValueList": { + "shape": "OfferProductIdFilterValueList" + } + }, + "type": "structure" + }, + "OfferProductIdFilterValueList": { + "max": 10, + "member": { + "shape": "OfferProductIdString" + }, + "min": 1, + "type": "list" + }, + "OfferProductIdString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "OfferReleaseDateFilter": { + "members": { + "DateRange": { + "shape": "OfferReleaseDateFilterDateRange" + } + }, + "type": "structure" + }, + "OfferReleaseDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "OfferSort": { + "members": { + "SortBy": { + "shape": "OfferSortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "OfferSortBy": { + "enum": [ + "EntityId", + "Name", + "ProductId", + "ReleaseDate", + "AvailabilityEndDate", + "BuyerAccounts", + "State", + "Targeting", + "LastModifiedDate" + ], + "type": "string" + }, + "OfferStateFilter": { + "members": { + "ValueList": { + "shape": "OfferStateFilterValueList" + } + }, + "type": "structure" + }, + "OfferStateFilterValueList": { + "max": 2, + "member": { + "shape": "OfferStateString" + }, + "min": 1, + "type": "list" + }, + "OfferStateString": { + "enum": [ + "Draft", + "Released" + ], + "type": "string" + }, + "OfferSummary": { + "members": { + "AvailabilityEndDate": { + "shape": "DateTimeISO8601" + }, + "BuyerAccounts": { + "shape": "OfferBuyerAccountsList" + }, + "Name": { + "shape": "OfferNameString" + }, + "ProductId": { + "shape": "OfferProductIdString" + }, + "ReleaseDate": { + "shape": "DateTimeISO8601" + }, + "State": { + "shape": "OfferStateString" + }, + "Targeting": { + "shape": "OfferTargetingList" + } + }, + "type": "structure" + }, + "OfferTargetingFilter": { + "members": { + "ValueList": { + "shape": "OfferTargetingFilterValueList" + } + }, + "type": "structure" + }, + "OfferTargetingFilterValueList": { + "max": 4, + "member": { + "shape": "OfferTargetingString" + }, + "min": 1, + "type": "list" + }, + "OfferTargetingList": { + "max": 4, + "member": { + "shape": "OfferTargetingString" + }, + "min": 0, + "type": "list" + }, + "OfferTargetingString": { + "enum": [ + "BuyerAccounts", + "ParticipatingPrograms", + "CountryCodes", + "None" + ], + "type": "string" + }, + "OwnershipType": { + "enum": [ "SELF", "SHARED" - ] + ], + "type": "string" }, - "PutResourcePolicyRequest":{ - "type":"structure", - "required":[ + "PutResourcePolicyRequest": { + "members": { + "Policy": { + "shape": "ResourcePolicyJson" + }, + "ResourceArn": { + "shape": "ResourceARN" + } + }, + "required": [ "ResourceArn", "Policy" ], - "members":{ - "ResourceArn":{"shape":"ResourceARN"}, - "Policy":{"shape":"ResourcePolicyJson"} - } - }, - "PutResourcePolicyResponse":{ - "type":"structure", - "members":{ - } - }, - "RequestedChangeList":{ - "type":"list", - "member":{"shape":"Change"}, - "max":20, - "min":1 - }, - "ResourceARN":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^arn:[\\w+=/,.@-]+:aws-marketplace:[\\w+=/,.@-]*:[0-9]+:[\\w+=,.@-]+(/[\\w+=,.@-]+)*$" - }, - "ResourceId":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^[\\w\\-]+$" - }, - "ResourceIdList":{ - "type":"list", - "member":{"shape":"ResourceId"} - }, - "ResourceInUseException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":423}, - "exception":true, - "synthetic":true - }, - "ResourceNotFoundException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":404}, - "exception":true, - "synthetic":true - }, - "ResourceNotSupportedException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":415}, - "exception":true, - "synthetic":true - }, - "ResourcePolicyJson":{ - "type":"string", - "max":10240, - "min":1, - "pattern":"^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+$" - }, - "ServiceQuotaExceededException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":402}, - "exception":true, - "synthetic":true - }, - "Sort":{ - "type":"structure", - "members":{ - "SortBy":{"shape":"SortBy"}, - "SortOrder":{"shape":"SortOrder"} - } - }, - "SortBy":{ - "type":"string", - "max":255, - "min":1, - "pattern":"^[a-zA-Z]+$" - }, - "SortOrder":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "PutResourcePolicyResponse": { + "members": {}, + "type": "structure" + }, + "RequestedChangeList": { + "max": 20, + "member": { + "shape": "Change" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationAvailabilityEndDateFilter": { + "members": { + "DateRange": { + "shape": "ResaleAuthorizationAvailabilityEndDateFilterDateRange" + }, + "ValueList": { + "shape": "ResaleAuthorizationAvailabilityEndDateFilterValueList" + } + }, + "type": "structure" + }, + "ResaleAuthorizationAvailabilityEndDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "ResaleAuthorizationAvailabilityEndDateFilterValueList": { + "max": 10, + "member": { + "shape": "DateTimeISO8601" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationCreatedDateFilter": { + "members": { + "DateRange": { + "shape": "ResaleAuthorizationCreatedDateFilterDateRange" + }, + "ValueList": { + "shape": "ResaleAuthorizationCreatedDateFilterValueList" + } + }, + "type": "structure" + }, + "ResaleAuthorizationCreatedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "ResaleAuthorizationCreatedDateFilterValueList": { + "max": 10, + "member": { + "shape": "DateTimeISO8601" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationEntityIdFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationEntityIdFilterValueList" + } + }, + "type": "structure" + }, + "ResaleAuthorizationEntityIdFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationEntityIdString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationEntityIdString": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z0-9][.a-zA-Z0-9/-]+[a-zA-Z0-9]$", + "type": "string" + }, + "ResaleAuthorizationFilters": { + "members": { + "AvailabilityEndDate": { + "shape": "ResaleAuthorizationAvailabilityEndDateFilter" + }, + "CreatedDate": { + "shape": "ResaleAuthorizationCreatedDateFilter" + }, + "EntityId": { + "shape": "ResaleAuthorizationEntityIdFilter" + }, + "LastModifiedDate": { + "shape": "ResaleAuthorizationLastModifiedDateFilter" + }, + "ManufacturerAccountId": { + "shape": "ResaleAuthorizationManufacturerAccountIdFilter" + }, + "ManufacturerLegalName": { + "shape": "ResaleAuthorizationManufacturerLegalNameFilter" + }, + "Name": { + "shape": "ResaleAuthorizationNameFilter" + }, + "OfferExtendedStatus": { + "shape": "ResaleAuthorizationOfferExtendedStatusFilter" + }, + "ProductId": { + "shape": "ResaleAuthorizationProductIdFilter" + }, + "ProductName": { + "shape": "ResaleAuthorizationProductNameFilter" + }, + "ResellerAccountID": { + "shape": "ResaleAuthorizationResellerAccountIDFilter" + }, + "ResellerLegalName": { + "shape": "ResaleAuthorizationResellerLegalNameFilter" + }, + "Status": { + "shape": "ResaleAuthorizationStatusFilter" + } + }, + "type": "structure" + }, + "ResaleAuthorizationLastModifiedDateFilter": { + "members": { + "DateRange": { + "shape": "ResaleAuthorizationLastModifiedDateFilterDateRange" + } + }, + "type": "structure" + }, + "ResaleAuthorizationLastModifiedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "ResaleAuthorizationManufacturerAccountIdFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationManufacturerAccountIdFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationManufacturerAccountIdFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationManufacturerAccountIdFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationManufacturerAccountIdString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationManufacturerAccountIdFilterWildcard": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "ResaleAuthorizationManufacturerAccountIdString": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "ResaleAuthorizationManufacturerLegalNameFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationManufacturerLegalNameFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationManufacturerLegalNameFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationManufacturerLegalNameFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationManufacturerLegalNameString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationManufacturerLegalNameFilterWildcard": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationManufacturerLegalNameString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationNameFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationNameFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationNameFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationNameFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationNameString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationNameFilterWildcard": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationNameString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationOfferExtendedStatusFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationOfferExtendedStatusFilterValueList" + } + }, + "type": "structure" + }, + "ResaleAuthorizationOfferExtendedStatusFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationOfferExtendedStatusString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationOfferExtendedStatusString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationProductIdFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationProductIdFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationProductIdFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationProductIdFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationProductIdString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationProductIdFilterWildcard": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationProductIdString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationProductNameFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationProductNameFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationProductNameFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationProductNameFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationProductNameString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationProductNameFilterWildcard": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationProductNameString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationResellerAccountIDFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationResellerAccountIDFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationResellerAccountIDFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationResellerAccountIDFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationResellerAccountIDString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationResellerAccountIDFilterWildcard": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "ResaleAuthorizationResellerAccountIDString": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "ResaleAuthorizationResellerLegalNameFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationResellerLegalNameFilterValueList" + }, + "WildCardValue": { + "shape": "ResaleAuthorizationResellerLegalNameFilterWildcard" + } + }, + "type": "structure" + }, + "ResaleAuthorizationResellerLegalNameFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationResellerLegalNameString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationResellerLegalNameFilterWildcard": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationResellerLegalNameString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "ResaleAuthorizationSort": { + "members": { + "SortBy": { + "shape": "ResaleAuthorizationSortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "ResaleAuthorizationSortBy": { + "enum": [ + "EntityId", + "Name", + "ProductId", + "ProductName", + "ManufacturerAccountId", + "ManufacturerLegalName", + "ResellerAccountID", + "ResellerLegalName", + "Status", + "OfferExtendedStatus", + "CreatedDate", + "AvailabilityEndDate", + "LastModifiedDate" + ], + "type": "string" + }, + "ResaleAuthorizationStatusFilter": { + "members": { + "ValueList": { + "shape": "ResaleAuthorizationStatusFilterValueList" + } + }, + "type": "structure" + }, + "ResaleAuthorizationStatusFilterValueList": { + "max": 10, + "member": { + "shape": "ResaleAuthorizationStatusString" + }, + "min": 1, + "type": "list" + }, + "ResaleAuthorizationStatusString": { + "enum": [ + "Draft", + "Active", + "Restricted" + ], + "type": "string" + }, + "ResaleAuthorizationSummary": { + "members": { + "AvailabilityEndDate": { + "shape": "DateTimeISO8601" + }, + "CreatedDate": { + "shape": "DateTimeISO8601" + }, + "ManufacturerAccountId": { + "shape": "ResaleAuthorizationManufacturerAccountIdString" + }, + "ManufacturerLegalName": { + "shape": "ResaleAuthorizationManufacturerLegalNameString" + }, + "Name": { + "shape": "ResaleAuthorizationNameString" + }, + "OfferExtendedStatus": { + "shape": "ResaleAuthorizationOfferExtendedStatusString" + }, + "ProductId": { + "shape": "ResaleAuthorizationProductIdString" + }, + "ProductName": { + "shape": "ResaleAuthorizationProductNameString" + }, + "ResellerAccountID": { + "shape": "ResaleAuthorizationResellerAccountIDString" + }, + "ResellerLegalName": { + "shape": "ResaleAuthorizationResellerLegalNameString" + }, + "Status": { + "shape": "ResaleAuthorizationStatusString" + } + }, + "type": "structure" + }, + "ResourceARN": { + "max": 255, + "min": 1, + "pattern": "^arn:[\\w+=/,.@-]+:aws-marketplace:[\\w+=/,.@-]*:[0-9]+:[\\w+=,.@-]+(/[\\w+=,.@-]+)*$", + "type": "string" + }, + "ResourceId": { + "max": 255, + "min": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ResourceIdList": { + "member": { + "shape": "ResourceId" + }, + "type": "list" + }, + "ResourceInUseException": { + "error": { + "httpStatusCode": 423 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "ResourceNotFoundException": { + "error": { + "httpStatusCode": 404 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "ResourceNotSupportedException": { + "error": { + "httpStatusCode": 415 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "ResourcePolicyJson": { + "max": 10240, + "min": 1, + "pattern": "^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+$", + "type": "string" + }, + "SaaSProductEntityIdFilter": { + "members": { + "ValueList": { + "shape": "SaaSProductEntityIdFilterValueList" + } + }, + "type": "structure" + }, + "SaaSProductEntityIdFilterValueList": { + "max": 10, + "member": { + "shape": "SaaSProductEntityIdString" + }, + "min": 1, + "type": "list" + }, + "SaaSProductEntityIdString": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z0-9][.a-zA-Z0-9/-]+[a-zA-Z0-9]$", + "type": "string" + }, + "SaaSProductFilters": { + "members": { + "EntityId": { + "shape": "SaaSProductEntityIdFilter" + }, + "LastModifiedDate": { + "shape": "SaaSProductLastModifiedDateFilter" + }, + "ProductTitle": { + "shape": "SaaSProductTitleFilter" + }, + "Visibility": { + "shape": "SaaSProductVisibilityFilter" + } + }, + "type": "structure" + }, + "SaaSProductLastModifiedDateFilter": { + "members": { + "DateRange": { + "shape": "SaaSProductLastModifiedDateFilterDateRange" + } + }, + "type": "structure" + }, + "SaaSProductLastModifiedDateFilterDateRange": { + "members": { + "AfterValue": { + "shape": "DateTimeISO8601" + }, + "BeforeValue": { + "shape": "DateTimeISO8601" + } + }, + "type": "structure" + }, + "SaaSProductSort": { + "members": { + "SortBy": { + "shape": "SaaSProductSortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "SaaSProductSortBy": { + "enum": [ + "EntityId", + "ProductTitle", + "Visibility", + "LastModifiedDate" + ], + "type": "string" + }, + "SaaSProductSummary": { + "members": { + "ProductTitle": { + "shape": "SaaSProductTitleString" + }, + "Visibility": { + "shape": "SaaSProductVisibilityString" + } + }, + "type": "structure" + }, + "SaaSProductTitleFilter": { + "members": { + "ValueList": { + "shape": "SaaSProductTitleFilterValueList" + }, + "WildCardValue": { + "shape": "SaaSProductTitleString" + } + }, + "type": "structure" + }, + "SaaSProductTitleFilterValueList": { + "max": 10, + "member": { + "shape": "SaaSProductTitleString" + }, + "min": 1, + "type": "list" + }, + "SaaSProductTitleString": { + "max": 255, + "min": 1, + "pattern": "^(.)+$", + "type": "string" + }, + "SaaSProductVisibilityFilter": { + "members": { + "ValueList": { + "shape": "SaaSProductVisibilityFilterValueList" + } + }, + "type": "structure" + }, + "SaaSProductVisibilityFilterValueList": { + "max": 10, + "member": { + "shape": "SaaSProductVisibilityString" + }, + "min": 1, + "type": "list" + }, + "SaaSProductVisibilityString": { + "enum": [ + "Limited", + "Public", + "Restricted", + "Draft" + ], + "type": "string" + }, + "ServiceQuotaExceededException": { + "error": { + "httpStatusCode": 402 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "Sort": { + "members": { + "SortBy": { + "shape": "SortBy" + }, + "SortOrder": { + "shape": "SortOrder" + } + }, + "type": "structure" + }, + "SortBy": { + "max": 255, + "min": 1, + "pattern": "^[a-zA-Z]+$", + "type": "string" + }, + "SortOrder": { + "enum": [ "ASCENDING", "DESCENDING" - ] + ], + "type": "string" }, - "StartChangeSetRequest":{ - "type":"structure", - "required":[ + "StartChangeSetRequest": { + "members": { + "Catalog": { + "shape": "Catalog" + }, + "ChangeSet": { + "shape": "RequestedChangeList" + }, + "ChangeSetName": { + "shape": "ChangeSetName" + }, + "ChangeSetTags": { + "shape": "TagList" + }, + "ClientRequestToken": { + "idempotencyToken": true, + "shape": "ClientRequestToken" + } + }, + "required": [ "Catalog", "ChangeSet" ], - "members":{ - "Catalog":{"shape":"Catalog"}, - "ChangeSet":{"shape":"RequestedChangeList"}, - "ChangeSetName":{"shape":"ChangeSetName"}, - "ClientRequestToken":{ - "shape":"ClientRequestToken", - "idempotencyToken":true - }, - "ChangeSetTags":{"shape":"TagList"} - } - }, - "StartChangeSetResponse":{ - "type":"structure", - "members":{ - "ChangeSetId":{"shape":"ResourceId"}, - "ChangeSetArn":{"shape":"ARN"} - } - }, - "Tag":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "StartChangeSetResponse": { + "members": { + "ChangeSetArn": { + "shape": "ARN" + }, + "ChangeSetId": { + "shape": "ResourceId" + } + }, + "type": "structure" + }, + "Tag": { + "members": { + "Key": { + "shape": "TagKey" + }, + "Value": { + "shape": "TagValue" + } + }, + "required": [ "Key", "Value" ], - "members":{ - "Key":{"shape":"TagKey"}, - "Value":{"shape":"TagValue"} - } - }, - "TagKey":{ - "type":"string", - "max":128, - "min":1, - "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" - }, - "TagKeyList":{ - "type":"list", - "member":{"shape":"TagKey"}, - "max":200, - "min":1 - }, - "TagList":{ - "type":"list", - "member":{"shape":"Tag"}, - "max":200, - "min":1 - }, - "TagResourceRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "TagKey": { + "max": 128, + "min": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "TagKeyList": { + "max": 200, + "member": { + "shape": "TagKey" + }, + "min": 1, + "type": "list" + }, + "TagList": { + "max": 200, + "member": { + "shape": "Tag" + }, + "min": 1, + "type": "list" + }, + "TagResourceRequest": { + "members": { + "ResourceArn": { + "shape": "ResourceARN" + }, + "Tags": { + "shape": "TagList" + } + }, + "required": [ "ResourceArn", "Tags" ], - "members":{ - "ResourceArn":{"shape":"ResourceARN"}, - "Tags":{"shape":"TagList"} - } - }, - "TagResourceResponse":{ - "type":"structure", - "members":{ - } - }, - "TagValue":{ - "type":"string", - "max":256, - "min":0, - "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" - }, - "ThrottlingException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":429}, - "exception":true, - "synthetic":true - }, - "UntagResourceRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "TagResourceResponse": { + "members": {}, + "type": "structure" + }, + "TagValue": { + "max": 256, + "min": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "ThrottlingException": { + "error": { + "httpStatusCode": 429 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "UntagResourceRequest": { + "members": { + "ResourceArn": { + "shape": "ResourceARN" + }, + "TagKeys": { + "shape": "TagKeyList" + } + }, + "required": [ "ResourceArn", "TagKeys" ], - "members":{ - "ResourceArn":{"shape":"ResourceARN"}, - "TagKeys":{"shape":"TagKeyList"} - } - }, - "UntagResourceResponse":{ - "type":"structure", - "members":{ - } - }, - "ValidationException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ExceptionMessageContent"} - }, - "error":{"httpStatusCode":422}, - "exception":true, - "synthetic":true - }, - "ValueList":{ - "type":"list", - "member":{"shape":"FilterValueContent"}, - "max":10, - "min":1 - }, - "VisibilityValue":{ - "type":"string", - "max":64, - "min":1, - "pattern":"^[a-zA-Z]+$" + "type": "structure" + }, + "UntagResourceResponse": { + "members": {}, + "type": "structure" + }, + "ValidationException": { + "error": { + "httpStatusCode": 422 + }, + "exception": true, + "members": { + "Message": { + "shape": "ExceptionMessageContent" + } + }, + "synthetic": true, + "type": "structure" + }, + "ValueList": { + "max": 10, + "member": { + "shape": "FilterValueContent" + }, + "min": 1, + "type": "list" + }, + "VisibilityValue": { + "max": 64, + "min": 1, + "pattern": "^[a-zA-Z]+$", + "type": "string" } - } -} + }, + "version": "2.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-catalog/2018-09-17/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-catalog/2018-09-17/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-catalog/2018-09-17/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-catalog/2018-09-17/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,15 +3,15 @@ "service": "

Catalog API actions allow you to manage your entities through list, describe, and update capabilities. An entity can be a product or an offer on AWS Marketplace.

You can automate your entity update process by integrating the AWS Marketplace Catalog API with your AWS Marketplace product build or deployment pipelines. You can also create your own applications on top of the Catalog API to manage your products on AWS Marketplace.

", "operations": { "CancelChangeSet": "

Used to cancel an open change request. Must be sent before the status of the request changes to APPLYING, the final stage of completing your change request. You can describe a change during the 60-day request history retention period for API calls.

", - "DeleteResourcePolicy": "

Deletes a resource-based policy on an Entity that is identified by its resource ARN.

", + "DeleteResourcePolicy": "

Deletes a resource-based policy on an entity that is identified by its resource ARN.

", "DescribeChangeSet": "

Provides information about a given change set.

", "DescribeEntity": "

Returns the metadata and content of the entity.

", - "GetResourcePolicy": "

Gets a resource-based policy of an Entity that is identified by its resource ARN.

", + "GetResourcePolicy": "

Gets a resource-based policy of an entity that is identified by its resource ARN.

", "ListChangeSets": "

Returns the list of change sets owned by the account being used to make the call. You can filter this list by providing any combination of entityId, ChangeSetName, and status. If you provide more than one filter, the API operation applies a logical AND between the filters.

You can describe a change during the 60-day request history retention period for API calls.

", "ListEntities": "

Provides the list of entities of a given type.

", "ListTagsForResource": "

Lists all tags that have been added to a resource (either an entity or change set).

", - "PutResourcePolicy": "

Attaches a resource-based policy to an Entity. Examples of an entity include: AmiProduct and ContainerProduct.

", - "StartChangeSet": "

Allows you to request changes for your entities. Within a single ChangeSet, you can't start the same change type against the same entity multiple times. Additionally, when a ChangeSet is running, all the entities targeted by the different changes are locked until the change set has completed (either succeeded, cancelled, or failed). If you try to start a change set containing a change against an entity that is already locked, you will receive a ResourceInUseException error.

For example, you can't start the ChangeSet described in the example later in this topic because it contains two changes to run the same change type (AddRevisions) against the same entity (entity-id@1).

For more information about working with change sets, see Working with change sets. For information on change types for single-AMI products, see Working with single-AMI products. Als, for more information on change types available for container-based products, see Working with container products.

", + "PutResourcePolicy": "

Attaches a resource-based policy to an entity. Examples of an entity include: AmiProduct and ContainerProduct.

", + "StartChangeSet": "

Allows you to request changes for your entities. Within a single ChangeSet, you can't start the same change type against the same entity multiple times. Additionally, when a ChangeSet is running, all the entities targeted by the different changes are locked until the change set has completed (either succeeded, cancelled, or failed). If you try to start a change set containing a change against an entity that is already locked, you will receive a ResourceInUseException error.

For example, you can't start the ChangeSet described in the example later in this topic because it contains two changes to run the same change type (AddRevisions) against the same entity (entity-id@1).

For more information about working with change sets, see Working with change sets. For information about change types for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

", "TagResource": "

Tags a resource (either an entity or change set).

", "UntagResource": "

Removes a tag or list of tags from a resource (either an entity or change set).

" }, @@ -32,6 +32,99 @@ "refs": { } }, + "AmiProductEntityIdFilter": { + "base": "

Object that allows filtering on entity id of an AMI product.

", + "refs": { + "AmiProductFilters$EntityId": "

Unique identifier for the AMI product.

" + } + }, + "AmiProductEntityIdFilterValueList": { + "base": null, + "refs": { + "AmiProductEntityIdFilter$ValueList": "

A string array of unique entity id values to be filtered on.

" + } + }, + "AmiProductEntityIdString": { + "base": null, + "refs": { + "AmiProductEntityIdFilterValueList$member": null + } + }, + "AmiProductFilters": { + "base": "

Object containing all the filter fields for AMI products. Client can add a maximum of 8 filters in a single ListEntities request.

", + "refs": { + "EntityTypeFilters$AmiProductFilters": "

A filter for AMI products.

" + } + }, + "AmiProductLastModifiedDateFilter": { + "base": "

Object that allows filtering based on the last modified date of AMI products.

", + "refs": { + "AmiProductFilters$LastModifiedDate": "

The last date on which the AMI product was modified.

" + } + }, + "AmiProductLastModifiedDateFilterDateRange": { + "base": "

Object that contains date range of the last modified date to be filtered on. You can optionally provide a BeforeValue and/or AfterValue. Both are inclusive.

", + "refs": { + "AmiProductLastModifiedDateFilter$DateRange": "

Dates between which the AMI product was last modified.

" + } + }, + "AmiProductSort": { + "base": "

Objects that allows sorting on AMI products based on certain fields and sorting order.

", + "refs": { + "EntityTypeSort$AmiProductSort": "

A sort for AMI products.

" + } + }, + "AmiProductSortBy": { + "base": null, + "refs": { + "AmiProductSort$SortBy": "

Field to sort the AMI products by.

" + } + }, + "AmiProductSummary": { + "base": "

Object that contains summarized information about an AMI product.

", + "refs": { + "EntitySummary$AmiProductSummary": "

An object that contains summary information about the AMI product.

" + } + }, + "AmiProductTitleFilter": { + "base": "

Object that allows filtering on product title.

", + "refs": { + "AmiProductFilters$ProductTitle": "

The title of the AMI product.

" + } + }, + "AmiProductTitleFilterValueList": { + "base": null, + "refs": { + "AmiProductTitleFilter$ValueList": "

A string array of unique product title values to be filtered on.

" + } + }, + "AmiProductTitleString": { + "base": null, + "refs": { + "AmiProductSummary$ProductTitle": "

The title of the AMI product.

", + "AmiProductTitleFilter$WildCardValue": "

A string that will be the wildCard input for product tile filter. It matches the provided value as a substring in the actual value.

", + "AmiProductTitleFilterValueList$member": null + } + }, + "AmiProductVisibilityFilter": { + "base": "

Object that allows filtering on the visibility of the product in the AWS Marketplace.

", + "refs": { + "AmiProductFilters$Visibility": "

The visibility of the AMI product.

" + } + }, + "AmiProductVisibilityFilterValueList": { + "base": null, + "refs": { + "AmiProductVisibilityFilter$ValueList": "

A string array of unique visibility values to be filtered on.

" + } + }, + "AmiProductVisibilityString": { + "base": null, + "refs": { + "AmiProductSummary$Visibility": "

The lifecycle of the AMI product.

", + "AmiProductVisibilityFilterValueList$member": null + } + }, "CancelChangeSetRequest": { "base": null, "refs": { @@ -108,7 +201,7 @@ "ChangeType": { "base": null, "refs": { - "Change$ChangeType": "

Change types are single string values that describe your intention for the change. Each change type is unique for each EntityType provided in the change's scope. For more information on change types available for single-AMI products, see Working with single-AMI products. Also, for more information on change types available for container-based products, see Working with container products.

", + "Change$ChangeType": "

Change types are single string values that describe your intention for the change. Each change type is unique for each EntityType provided in the change's scope. For more information on change types available for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

", "ChangeSummary$ChangeType": "

The type of the change.

" } }, @@ -118,15 +211,227 @@ "StartChangeSetRequest$ClientRequestToken": "

A unique token to identify the request to ensure idempotency.

" } }, + "ContainerProductEntityIdFilter": { + "base": "

Object that allows filtering on entity id of a container product.

", + "refs": { + "ContainerProductFilters$EntityId": "

Unique identifier for the container product.

" + } + }, + "ContainerProductEntityIdFilterValueList": { + "base": null, + "refs": { + "ContainerProductEntityIdFilter$ValueList": "

A string array of unique entity id values to be filtered on.

" + } + }, + "ContainerProductEntityIdString": { + "base": null, + "refs": { + "ContainerProductEntityIdFilterValueList$member": null + } + }, + "ContainerProductFilters": { + "base": "

Object containing all the filter fields for container products. Client can add a maximum of 8 filters in a single ListEntities request.

", + "refs": { + "EntityTypeFilters$ContainerProductFilters": "

A filter for container products.

" + } + }, + "ContainerProductLastModifiedDateFilter": { + "base": "

Object that allows filtering based on the last modified date of container products.

", + "refs": { + "ContainerProductFilters$LastModifiedDate": "

The last date on which the container product was modified.

" + } + }, + "ContainerProductLastModifiedDateFilterDateRange": { + "base": "

Object that contains date range of the last modified date to be filtered on. You can optionally provide a BeforeValue and/or AfterValue. Both are inclusive.

", + "refs": { + "ContainerProductLastModifiedDateFilter$DateRange": "

Dates between which the container product was last modified.

" + } + }, + "ContainerProductSort": { + "base": "

Objects that allows sorting on container products based on certain fields and sorting order.

", + "refs": { + "EntityTypeSort$ContainerProductSort": "

A sort for container products.

" + } + }, + "ContainerProductSortBy": { + "base": null, + "refs": { + "ContainerProductSort$SortBy": "

Field to sort the container products by.

" + } + }, + "ContainerProductSummary": { + "base": "

Object that contains summarized information about a container product.

", + "refs": { + "EntitySummary$ContainerProductSummary": "

An object that contains summary information about the container product.

" + } + }, + "ContainerProductTitleFilter": { + "base": "

Object that allows filtering on product title.

", + "refs": { + "ContainerProductFilters$ProductTitle": "

The title of the container product.

" + } + }, + "ContainerProductTitleFilterValueList": { + "base": null, + "refs": { + "ContainerProductTitleFilter$ValueList": "

A string array of unique product title values to be filtered on.

" + } + }, + "ContainerProductTitleString": { + "base": null, + "refs": { + "ContainerProductSummary$ProductTitle": "

The title of the container product.

", + "ContainerProductTitleFilter$WildCardValue": "

A string that will be the wildCard input for product tile filter. It matches the provided value as a substring in the actual value.

", + "ContainerProductTitleFilterValueList$member": null + } + }, + "ContainerProductVisibilityFilter": { + "base": "

Object that allows filtering on the visibility of the product in the AWS Marketplace.

", + "refs": { + "ContainerProductFilters$Visibility": "

The visibility of the container product.

" + } + }, + "ContainerProductVisibilityFilterValueList": { + "base": null, + "refs": { + "ContainerProductVisibilityFilter$ValueList": "

A string array of unique visibility values to be filtered on.

" + } + }, + "ContainerProductVisibilityString": { + "base": null, + "refs": { + "ContainerProductSummary$Visibility": "

The lifecycle of the product.

", + "ContainerProductVisibilityFilterValueList$member": null + } + }, + "DataProductEntityIdFilter": { + "base": "

Object that allows filtering on entity id of a data product.

", + "refs": { + "DataProductFilters$EntityId": "

Unique identifier for the data product.

" + } + }, + "DataProductEntityIdFilterValueList": { + "base": null, + "refs": { + "DataProductEntityIdFilter$ValueList": "

A string array of unique entity id values to be filtered on.

" + } + }, + "DataProductEntityIdString": { + "base": null, + "refs": { + "DataProductEntityIdFilterValueList$member": null + } + }, + "DataProductFilters": { + "base": "

Object containing all the filter fields for data products. Client can add a maximum of 8 filters in a single ListEntities request.

", + "refs": { + "EntityTypeFilters$DataProductFilters": "

A filter for data products.

" + } + }, + "DataProductLastModifiedDateFilter": { + "base": "

Object that allows filtering based on the last modified date of data products.

", + "refs": { + "DataProductFilters$LastModifiedDate": "

The last date on which the data product was modified.

" + } + }, + "DataProductLastModifiedDateFilterDateRange": { + "base": "

Object that contains date range of the last modified date to be filtered on. You can optionally provide a BeforeValue and/or AfterValue. Both are inclusive.

", + "refs": { + "DataProductLastModifiedDateFilter$DateRange": "

Dates between which the data product was last modified.

" + } + }, + "DataProductSort": { + "base": "

Objects that allows sorting on data products based on certain fields and sorting order.

", + "refs": { + "EntityTypeSort$DataProductSort": "

A sort for data products.

" + } + }, + "DataProductSortBy": { + "base": null, + "refs": { + "DataProductSort$SortBy": "

Field to sort the data products by.

" + } + }, + "DataProductSummary": { + "base": "

Object that contains summarized information about a data product.

", + "refs": { + "EntitySummary$DataProductSummary": "

An object that contains summary information about the data product.

" + } + }, + "DataProductTitleFilter": { + "base": "

Object that allows filtering on product title.

", + "refs": { + "DataProductFilters$ProductTitle": "

The title of the data product.

" + } + }, + "DataProductTitleFilterValueList": { + "base": null, + "refs": { + "DataProductTitleFilter$ValueList": "

A string array of unique product title values to be filtered on.

" + } + }, + "DataProductTitleString": { + "base": null, + "refs": { + "DataProductSummary$ProductTitle": "

The title of the data product.

", + "DataProductTitleFilter$WildCardValue": "

A string that will be the wildCard input for product tile filter. It matches the provided value as a substring in the actual value.

", + "DataProductTitleFilterValueList$member": null + } + }, + "DataProductVisibilityFilter": { + "base": "

Object that allows filtering on the visibility of the product in the AWS Marketplace.

", + "refs": { + "DataProductFilters$Visibility": "

The visibility of the data product.

" + } + }, + "DataProductVisibilityFilterValueList": { + "base": null, + "refs": { + "DataProductVisibilityFilter$ValueList": "

A string array of unique visibility values to be filtered on.

" + } + }, + "DataProductVisibilityString": { + "base": null, + "refs": { + "DataProductSummary$Visibility": "

The lifecycle of the data product.

", + "DataProductVisibilityFilterValueList$member": null + } + }, "DateTimeISO8601": { "base": null, "refs": { + "AmiProductLastModifiedDateFilterDateRange$AfterValue": "

Date after which the AMI product was last modified.

", + "AmiProductLastModifiedDateFilterDateRange$BeforeValue": "

Date before which the AMI product was last modified.

", "ChangeSetSummaryListItem$StartTime": "

The time, in ISO 8601 format (2018-02-27T13:45:22Z), when the change set was started.

", "ChangeSetSummaryListItem$EndTime": "

The time, in ISO 8601 format (2018-02-27T13:45:22Z), when the change set was finished.

", + "ContainerProductLastModifiedDateFilterDateRange$AfterValue": "

Date after which the container product was last modified.

", + "ContainerProductLastModifiedDateFilterDateRange$BeforeValue": "

Date before which the container product was last modified.

", + "DataProductLastModifiedDateFilterDateRange$AfterValue": "

Date after which the data product was last modified.

", + "DataProductLastModifiedDateFilterDateRange$BeforeValue": "

Date before which the data product was last modified.

", "DescribeChangeSetResponse$StartTime": "

The date and time, in ISO 8601 format (2018-02-27T13:45:22Z), the request started.

", "DescribeChangeSetResponse$EndTime": "

The date and time, in ISO 8601 format (2018-02-27T13:45:22Z), the request transitioned to a terminal state. The change cannot transition to a different state. Null if the request is not in a terminal state.

", "DescribeEntityResponse$LastModifiedDate": "

The last modified date of the entity, in ISO 8601 format (2018-02-27T13:45:22Z).

", - "EntitySummary$LastModifiedDate": "

The last time the entity was published, using ISO 8601 format (2018-02-27T13:45:22Z).

" + "EntitySummary$LastModifiedDate": "

The last time the entity was published, using ISO 8601 format (2018-02-27T13:45:22Z).

", + "OfferAvailabilityEndDateFilterDateRange$AfterValue": "

Allows filtering on the AvailabilityEndDate of an offer after a date.

", + "OfferAvailabilityEndDateFilterDateRange$BeforeValue": "

Allows filtering on the AvailabilityEndDate of an offer before a date.

", + "OfferLastModifiedDateFilterDateRange$AfterValue": "

Allows filtering on the LastModifiedDate of an offer after a date.

", + "OfferLastModifiedDateFilterDateRange$BeforeValue": "

Allows filtering on the LastModifiedDate of an offer before a date.

", + "OfferReleaseDateFilterDateRange$AfterValue": "

Allows filtering on the ReleaseDate of offers after a date.

", + "OfferReleaseDateFilterDateRange$BeforeValue": "

Allows filtering on the ReleaseDate of offers before a date.

", + "OfferSummary$ReleaseDate": "

The release date of the offer.

", + "OfferSummary$AvailabilityEndDate": "

The availability end date of the offer.

", + "ResaleAuthorizationAvailabilityEndDateFilterDateRange$AfterValue": "

Allows filtering on AvailabilityEndDate of a ResaleAuthorization after a date.

", + "ResaleAuthorizationAvailabilityEndDateFilterDateRange$BeforeValue": "

Allows filtering on AvailabilityEndDate of a ResaleAuthorization before a date.

", + "ResaleAuthorizationAvailabilityEndDateFilterValueList$member": null, + "ResaleAuthorizationCreatedDateFilterDateRange$AfterValue": "

Allows filtering on CreatedDate of a ResaleAuthorization after a date.

", + "ResaleAuthorizationCreatedDateFilterDateRange$BeforeValue": "

Allows filtering on CreatedDate of a ResaleAuthorization before a date.

", + "ResaleAuthorizationCreatedDateFilterValueList$member": null, + "ResaleAuthorizationLastModifiedDateFilterDateRange$AfterValue": "

Allows filtering on the LastModifiedDate of a ResaleAuthorization after a date.

", + "ResaleAuthorizationLastModifiedDateFilterDateRange$BeforeValue": "

Allows filtering on the LastModifiedDate of a ResaleAuthorization before a date.

", + "ResaleAuthorizationSummary$CreatedDate": "

The created date of the ResaleAuthorization.

", + "ResaleAuthorizationSummary$AvailabilityEndDate": "

The availability end date of the ResaleAuthorization.

", + "SaaSProductLastModifiedDateFilterDateRange$AfterValue": "

Date after which the SaaS product was last modified.

", + "SaaSProductLastModifiedDateFilterDateRange$BeforeValue": "

Date before which the SaaS product was last modified.

" } }, "DeleteResourcePolicyRequest": { @@ -181,7 +486,7 @@ "EntitySummaryList": { "base": null, "refs": { - "ListEntitiesResponse$EntitySummaryList": "

Array of EntitySummary object.

" + "ListEntitiesResponse$EntitySummaryList": "

Array of EntitySummary objects.

" } }, "EntityType": { @@ -190,7 +495,19 @@ "DescribeEntityResponse$EntityType": "

The named type of the entity, in the format of EntityType@Version.

", "Entity$Type": "

The type of entity.

", "EntitySummary$EntityType": "

The type of the entity.

", - "ListEntitiesRequest$EntityType": "

The type of entities to retrieve.

" + "ListEntitiesRequest$EntityType": "

The type of entities to retrieve. Valid values are: ServerProduct, AmiProduct, ContainerProduct, DataProduct, SaaSProduct, ProcurementPolicy, Experience, Audience, BrandingSettings, Offer, Seller, ResaleAuthorization.

" + } + }, + "EntityTypeFilters": { + "base": "

Object containing all the filter fields per entity type.

", + "refs": { + "ListEntitiesRequest$EntityTypeFilters": "

A Union object containing filter shapes for all EntityTypes. Each EntityTypeFilter shape will have filters applicable for that EntityType that can be used to search or filter entities.

" + } + }, + "EntityTypeSort": { + "base": "

Object containing all the sort fields per entity type.

", + "refs": { + "ListEntitiesRequest$EntityTypeSort": "

A Union object containing Sort shapes for all EntityTypes. Each EntityTypeSort shape will have SortBy and SortOrder applicable for fields on that EntityType. This can be used to sort the results of the filter query.

" } }, "ErrorCodeString": { @@ -283,11 +600,19 @@ "Json": { "base": null, "refs": { - "Change$Details": "

This object contains details specific to the change type of the requested change. For more information on change types available for single-AMI products, see Working with single-AMI products. Also, for more information on change types available for container-based products, see Working with container products.

", + "Change$Details": "

This object contains details specific to the change type of the requested change. For more information about change types available for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

", "ChangeSummary$Details": "

This object contains details specific to the change type of the requested change.

", "DescribeEntityResponse$Details": "

This stringified JSON object includes the details of the entity.

" } }, + "JsonDocumentType": { + "base": null, + "refs": { + "Change$DetailsDocument": "

Alternative field that accepts a JSON value instead of a string for ChangeType details. You can use either Details or DetailsDocument, but not both.

", + "ChangeSummary$DetailsDocument": "

The JSON value of the details specific to the change type of the requested change.

", + "DescribeEntityResponse$DetailsDocument": "

The JSON value of the details specific to the entity.

" + } + }, "ListChangeSetsMaxResultInteger": { "base": null, "refs": { @@ -339,10 +664,195 @@ "ListEntitiesResponse$NextToken": "

The value of the next token if it exists. Null if there is no more result.

" } }, + "OfferAvailabilityEndDateFilter": { + "base": "

Allows filtering on the AvailabilityEndDate of an offer.

", + "refs": { + "OfferFilters$AvailabilityEndDate": "

Allows filtering on the AvailabilityEndDate of an offer.

" + } + }, + "OfferAvailabilityEndDateFilterDateRange": { + "base": "

Allows filtering on the AvailabilityEndDate of an offer with date range as input.

", + "refs": { + "OfferAvailabilityEndDateFilter$DateRange": "

Allows filtering on the AvailabilityEndDate of an offer with date range as input.

" + } + }, + "OfferBuyerAccountsFilter": { + "base": "

Allows filtering on the BuyerAccounts of an offer.

", + "refs": { + "OfferFilters$BuyerAccounts": "

Allows filtering on the BuyerAccounts of an offer.

" + } + }, + "OfferBuyerAccountsFilterWildcard": { + "base": null, + "refs": { + "OfferBuyerAccountsFilter$WildCardValue": "

Allows filtering on the BuyerAccounts of an offer with wild card input.

" + } + }, + "OfferBuyerAccountsList": { + "base": null, + "refs": { + "OfferSummary$BuyerAccounts": "

The buyer accounts in the offer.

" + } + }, + "OfferBuyerAccountsString": { + "base": null, + "refs": { + "OfferBuyerAccountsList$member": null + } + }, + "OfferEntityIdFilter": { + "base": "

Allows filtering on the entity id of an offer.

", + "refs": { + "OfferFilters$EntityId": "

Allows filtering on EntityId of an offer.

" + } + }, + "OfferEntityIdFilterValueList": { + "base": null, + "refs": { + "OfferEntityIdFilter$ValueList": "

Allows filtering on entity id of an offer with list input.

" + } + }, + "OfferEntityIdString": { + "base": null, + "refs": { + "OfferEntityIdFilterValueList$member": null + } + }, + "OfferFilters": { + "base": "

A filter for offers entity.

", + "refs": { + "EntityTypeFilters$OfferFilters": "

A filter for offers.

" + } + }, + "OfferLastModifiedDateFilter": { + "base": "

Allows filtering on the LastModifiedDate of an offer.

", + "refs": { + "OfferFilters$LastModifiedDate": "

Allows filtering on the LastModifiedDate of an offer.

" + } + }, + "OfferLastModifiedDateFilterDateRange": { + "base": "

Allows filtering on the LastModifiedDate of an offer with date range as input.

", + "refs": { + "OfferLastModifiedDateFilter$DateRange": "

Allows filtering on the LastModifiedDate of an offer with date range as input.

" + } + }, + "OfferNameFilter": { + "base": "

Allows filtering on the Name of an offer.

", + "refs": { + "OfferFilters$Name": "

Allows filtering on the Name of an offer.

" + } + }, + "OfferNameFilterValueList": { + "base": null, + "refs": { + "OfferNameFilter$ValueList": "

Allows filtering on the Name of an offer with list input.

" + } + }, + "OfferNameString": { + "base": null, + "refs": { + "OfferNameFilter$WildCardValue": "

Allows filtering on the Name of an offer with wild card input.

", + "OfferNameFilterValueList$member": null, + "OfferSummary$Name": "

The name of the offer.

" + } + }, + "OfferProductIdFilter": { + "base": "

Allows filtering on the ProductId of an offer.

", + "refs": { + "OfferFilters$ProductId": "

Allows filtering on the ProductId of an offer.

" + } + }, + "OfferProductIdFilterValueList": { + "base": null, + "refs": { + "OfferProductIdFilter$ValueList": "

Allows filtering on the ProductId of an offer with list input.

" + } + }, + "OfferProductIdString": { + "base": null, + "refs": { + "OfferProductIdFilterValueList$member": null, + "OfferSummary$ProductId": "

The product ID of the offer.

" + } + }, + "OfferReleaseDateFilter": { + "base": "

Allows filtering on the ReleaseDate of an offer.

", + "refs": { + "OfferFilters$ReleaseDate": "

Allows filtering on the ReleaseDate of an offer.

" + } + }, + "OfferReleaseDateFilterDateRange": { + "base": "

Allows filtering on the ReleaseDate of an offer with date range as input.

", + "refs": { + "OfferReleaseDateFilter$DateRange": "

Allows filtering on the ReleaseDate of an offer with date range as input.

" + } + }, + "OfferSort": { + "base": "

Allows to sort offers.

", + "refs": { + "EntityTypeSort$OfferSort": "

A sort for offers.

" + } + }, + "OfferSortBy": { + "base": null, + "refs": { + "OfferSort$SortBy": "

Allows to sort offers.

" + } + }, + "OfferStateFilter": { + "base": "

Allows filtering on the State of an offer.

", + "refs": { + "OfferFilters$State": "

Allows filtering on the State of an offer.

" + } + }, + "OfferStateFilterValueList": { + "base": null, + "refs": { + "OfferStateFilter$ValueList": "

Allows filtering on the State of an offer with list input.

" + } + }, + "OfferStateString": { + "base": null, + "refs": { + "OfferStateFilterValueList$member": null, + "OfferSummary$State": "

The status of the offer.

" + } + }, + "OfferSummary": { + "base": "

Summarized information about an offer.

", + "refs": { + "EntitySummary$OfferSummary": "

An object that contains summary information about the offer.

" + } + }, + "OfferTargetingFilter": { + "base": "

Allows filtering on the Targeting of an offer.

", + "refs": { + "OfferFilters$Targeting": "

Allows filtering on the Targeting of an offer.

" + } + }, + "OfferTargetingFilterValueList": { + "base": null, + "refs": { + "OfferTargetingFilter$ValueList": "

Allows filtering on the Targeting of an offer with list input.

" + } + }, + "OfferTargetingList": { + "base": null, + "refs": { + "OfferSummary$Targeting": "

The targeting in the offer.

" + } + }, + "OfferTargetingString": { + "base": null, + "refs": { + "OfferTargetingFilterValueList$member": null, + "OfferTargetingList$member": null + } + }, "OwnershipType": { "base": null, "refs": { - "ListEntitiesRequest$OwnershipType": null + "ListEntitiesRequest$OwnershipType": "

Filters the returned set of entities based on their owner. The default is SELF. To list entities shared with you through AWS Resource Access Manager (AWS RAM), set to SHARED. Entities shared through the AWS Marketplace Catalog API PutResourcePolicy operation can't be discovered through the SHARED parameter.

" } }, "PutResourcePolicyRequest": { @@ -361,14 +871,317 @@ "StartChangeSetRequest$ChangeSet": "

Array of change object.

" } }, + "ResaleAuthorizationAvailabilityEndDateFilter": { + "base": "

Allows filtering on AvailabilityEndDate of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$AvailabilityEndDate": "

Allows filtering on the AvailabilityEndDate of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationAvailabilityEndDateFilterDateRange": { + "base": "

Allows filtering on AvailabilityEndDate of a ResaleAuthorization with date range as input.

", + "refs": { + "ResaleAuthorizationAvailabilityEndDateFilter$DateRange": "

Allows filtering on AvailabilityEndDate of a ResaleAuthorization with date range as input

" + } + }, + "ResaleAuthorizationAvailabilityEndDateFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationAvailabilityEndDateFilter$ValueList": "

Allows filtering on AvailabilityEndDate of a ResaleAuthorization with date value as input.

" + } + }, + "ResaleAuthorizationCreatedDateFilter": { + "base": "

Allows filtering on CreatedDate of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$CreatedDate": "

Allows filtering on the CreatedDate of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationCreatedDateFilterDateRange": { + "base": "

Allows filtering on CreatedDate of a ResaleAuthorization with date range as input.

", + "refs": { + "ResaleAuthorizationCreatedDateFilter$DateRange": "

Allows filtering on CreatedDate of a ResaleAuthorization with date range as input.

" + } + }, + "ResaleAuthorizationCreatedDateFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationCreatedDateFilter$ValueList": "

Allows filtering on CreatedDate of a ResaleAuthorization with date value as input.

" + } + }, + "ResaleAuthorizationEntityIdFilter": { + "base": "

Allows filtering on EntityId of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$EntityId": "

Allows filtering on the EntityId of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationEntityIdFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationEntityIdFilter$ValueList": "

Allows filtering on EntityId of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationEntityIdString": { + "base": null, + "refs": { + "ResaleAuthorizationEntityIdFilterValueList$member": null + } + }, + "ResaleAuthorizationFilters": { + "base": "

A filter for ResaleAuthorization entity.

", + "refs": { + "EntityTypeFilters$ResaleAuthorizationFilters": "

A filter for Resale Authorizations.

" + } + }, + "ResaleAuthorizationLastModifiedDateFilter": { + "base": "

Allows filtering on the LastModifiedDate of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$LastModifiedDate": "

Allows filtering on the LastModifiedDate of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationLastModifiedDateFilterDateRange": { + "base": "

Allows filtering on the LastModifiedDate of a ResaleAuthorization with date range as input.

", + "refs": { + "ResaleAuthorizationLastModifiedDateFilter$DateRange": "

Allows filtering on the LastModifiedDate of a ResaleAuthorization with date range as input.

" + } + }, + "ResaleAuthorizationManufacturerAccountIdFilter": { + "base": "

Allows filtering on the ManufacturerAccountId of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$ManufacturerAccountId": "

Allows filtering on the ManufacturerAccountId of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationManufacturerAccountIdFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationManufacturerAccountIdFilter$ValueList": "

Allows filtering on the ManufacturerAccountId of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationManufacturerAccountIdFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationManufacturerAccountIdFilter$WildCardValue": "

Allows filtering on the ManufacturerAccountId of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationManufacturerAccountIdString": { + "base": null, + "refs": { + "ResaleAuthorizationManufacturerAccountIdFilterValueList$member": null, + "ResaleAuthorizationSummary$ManufacturerAccountId": "

The manufacturer account ID of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationManufacturerLegalNameFilter": { + "base": "

Allows filtering on the ManufacturerLegalName of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$ManufacturerLegalName": "

Allows filtering on the ManufacturerLegalName of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationManufacturerLegalNameFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationManufacturerLegalNameFilter$ValueList": "

Allows filtering on the ManufacturerLegalName of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationManufacturerLegalNameFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationManufacturerLegalNameFilter$WildCardValue": "

Allows filtering on the ManufacturerLegalName of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationManufacturerLegalNameString": { + "base": null, + "refs": { + "ResaleAuthorizationManufacturerLegalNameFilterValueList$member": null, + "ResaleAuthorizationSummary$ManufacturerLegalName": "

The manufacturer legal name of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationNameFilter": { + "base": "

Allows filtering on the Name of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$Name": "

Allows filtering on the Name of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationNameFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationNameFilter$ValueList": "

Allows filtering on the Name of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationNameFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationNameFilter$WildCardValue": "

Allows filtering on the Name of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationNameString": { + "base": null, + "refs": { + "ResaleAuthorizationNameFilterValueList$member": null, + "ResaleAuthorizationSummary$Name": "

The name of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationOfferExtendedStatusFilter": { + "base": "

Allows filtering on the OfferExtendedStatus of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$OfferExtendedStatus": "

Allows filtering on the OfferExtendedStatus of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationOfferExtendedStatusFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationOfferExtendedStatusFilter$ValueList": "

Allows filtering on the OfferExtendedStatus of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationOfferExtendedStatusString": { + "base": null, + "refs": { + "ResaleAuthorizationOfferExtendedStatusFilterValueList$member": null, + "ResaleAuthorizationSummary$OfferExtendedStatus": "

The offer extended status of the ResaleAuthorization

" + } + }, + "ResaleAuthorizationProductIdFilter": { + "base": "

Allows filtering on the ProductId of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$ProductId": "

Allows filtering on the ProductId of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationProductIdFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationProductIdFilter$ValueList": "

Allows filtering on the ProductId of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationProductIdFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationProductIdFilter$WildCardValue": "

Allows filtering on the ProductId of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationProductIdString": { + "base": null, + "refs": { + "ResaleAuthorizationProductIdFilterValueList$member": null, + "ResaleAuthorizationSummary$ProductId": "

The product ID of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationProductNameFilter": { + "base": "

Allows filtering on the ProductName of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$ProductName": "

Allows filtering on the ProductName of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationProductNameFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationProductNameFilter$ValueList": "

Allows filtering on the ProductName of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationProductNameFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationProductNameFilter$WildCardValue": "

Allows filtering on the ProductName of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationProductNameString": { + "base": null, + "refs": { + "ResaleAuthorizationProductNameFilterValueList$member": null, + "ResaleAuthorizationSummary$ProductName": "

The product name of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationResellerAccountIDFilter": { + "base": "

Allows filtering on the ResellerAccountID of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$ResellerAccountID": "

Allows filtering on the ResellerAccountID of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationResellerAccountIDFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationResellerAccountIDFilter$ValueList": "

Allows filtering on the ResellerAccountID of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationResellerAccountIDFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationResellerAccountIDFilter$WildCardValue": "

Allows filtering on the ResellerAccountID of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationResellerAccountIDString": { + "base": null, + "refs": { + "ResaleAuthorizationResellerAccountIDFilterValueList$member": null, + "ResaleAuthorizationSummary$ResellerAccountID": "

The reseller account ID of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationResellerLegalNameFilter": { + "base": "

Allows filtering on the ResellerLegalName of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$ResellerLegalName": "

Allows filtering on the ResellerLegalName of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationResellerLegalNameFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationResellerLegalNameFilter$ValueList": "

Allows filtering on the ResellerLegalNameProductName of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationResellerLegalNameFilterWildcard": { + "base": null, + "refs": { + "ResaleAuthorizationResellerLegalNameFilter$WildCardValue": "

Allows filtering on the ResellerLegalName of a ResaleAuthorization with wild card input.

" + } + }, + "ResaleAuthorizationResellerLegalNameString": { + "base": null, + "refs": { + "ResaleAuthorizationResellerLegalNameFilterValueList$member": null, + "ResaleAuthorizationSummary$ResellerLegalName": "

The reseller legal name of the ResaleAuthorization

" + } + }, + "ResaleAuthorizationSort": { + "base": "

Allows to sort ResaleAuthorization.

", + "refs": { + "EntityTypeSort$ResaleAuthorizationSort": "

A sort for Resale Authorizations.

" + } + }, + "ResaleAuthorizationSortBy": { + "base": null, + "refs": { + "ResaleAuthorizationSort$SortBy": "

Allows to sort ResaleAuthorization.

" + } + }, + "ResaleAuthorizationStatusFilter": { + "base": "

Allows filtering on the Status of a ResaleAuthorization.

", + "refs": { + "ResaleAuthorizationFilters$Status": "

Allows filtering on the Status of a ResaleAuthorization.

" + } + }, + "ResaleAuthorizationStatusFilterValueList": { + "base": null, + "refs": { + "ResaleAuthorizationStatusFilter$ValueList": "

Allows filtering on the Status of a ResaleAuthorization with list input.

" + } + }, + "ResaleAuthorizationStatusString": { + "base": null, + "refs": { + "ResaleAuthorizationStatusFilterValueList$member": null, + "ResaleAuthorizationSummary$Status": "

The status of the ResaleAuthorization.

" + } + }, + "ResaleAuthorizationSummary": { + "base": "

Summarized information about a Resale Authorization.

", + "refs": { + "EntitySummary$ResaleAuthorizationSummary": "

An object that contains summary information about the Resale Authorization.

" + } + }, "ResourceARN": { "base": null, "refs": { - "DeleteResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the Entity resource that is associated with the resource policy.

", - "GetResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the Entity resource that is associated with the resource policy.

", + "DeleteResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the entity resource that is associated with the resource policy.

", + "GetResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the entity resource that is associated with the resource policy.

", "ListTagsForResourceRequest$ResourceArn": "

Required. The Amazon Resource Name (ARN) associated with the resource you want to list tags on.

", "ListTagsForResourceResponse$ResourceArn": "

Required. The ARN associated with the resource you want to list tags on.

", - "PutResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the Entity resource you want to associate with a resource policy.

", + "PutResourcePolicyRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the entity resource you want to associate with a resource policy.

", "TagResourceRequest$ResourceArn": "

Required. The Amazon Resource Name (ARN) associated with the resource you want to tag.

", "UntagResourceRequest$ResourceArn": "

Required. The Amazon Resource Name (ARN) associated with the resource you want to remove the tag from.

" } @@ -415,6 +1228,99 @@ "PutResourcePolicyRequest$Policy": "

The policy document to set; formatted in JSON.

" } }, + "SaaSProductEntityIdFilter": { + "base": "

Object that allows filtering on entity id of a SaaS product.

", + "refs": { + "SaaSProductFilters$EntityId": "

Unique identifier for the SaaS product.

" + } + }, + "SaaSProductEntityIdFilterValueList": { + "base": null, + "refs": { + "SaaSProductEntityIdFilter$ValueList": "

A string array of unique entity id values to be filtered on.

" + } + }, + "SaaSProductEntityIdString": { + "base": null, + "refs": { + "SaaSProductEntityIdFilterValueList$member": null + } + }, + "SaaSProductFilters": { + "base": "

Object containing all the filter fields for SaaS products. Client can add a maximum of 8 filters in a single ListEntities request.

", + "refs": { + "EntityTypeFilters$SaaSProductFilters": "

A filter for SaaS products.

" + } + }, + "SaaSProductLastModifiedDateFilter": { + "base": "

Object that allows filtering based on the last modified date of SaaS products

", + "refs": { + "SaaSProductFilters$LastModifiedDate": "

The last date on which the SaaS product was modified.

" + } + }, + "SaaSProductLastModifiedDateFilterDateRange": { + "base": "

Object that contains date range of the last modified date to be filtered on. You can optionally provide a BeforeValue and/or AfterValue. Both are inclusive.

", + "refs": { + "SaaSProductLastModifiedDateFilter$DateRange": "

Dates between which the SaaS product was last modified.

" + } + }, + "SaaSProductSort": { + "base": "

Objects that allows sorting on SaaS products based on certain fields and sorting order.

", + "refs": { + "EntityTypeSort$SaaSProductSort": "

A sort for SaaS products.

" + } + }, + "SaaSProductSortBy": { + "base": null, + "refs": { + "SaaSProductSort$SortBy": "

Field to sort the SaaS products by.

" + } + }, + "SaaSProductSummary": { + "base": "

Object that contains summarized information about a SaaS product.

", + "refs": { + "EntitySummary$SaaSProductSummary": "

An object that contains summary information about the SaaS product.

" + } + }, + "SaaSProductTitleFilter": { + "base": "

Object that allows filtering on product title.

", + "refs": { + "SaaSProductFilters$ProductTitle": "

The title of the SaaS product.

" + } + }, + "SaaSProductTitleFilterValueList": { + "base": null, + "refs": { + "SaaSProductTitleFilter$ValueList": "

A string array of unique product title values to be filtered on.

" + } + }, + "SaaSProductTitleString": { + "base": null, + "refs": { + "SaaSProductSummary$ProductTitle": "

The title of the SaaS product.

", + "SaaSProductTitleFilter$WildCardValue": "

A string that will be the wildCard input for product tile filter. It matches the provided value as a substring in the actual value.

", + "SaaSProductTitleFilterValueList$member": null + } + }, + "SaaSProductVisibilityFilter": { + "base": "

Object that allows filtering on the visibility of the product in the AWS Marketplace.

", + "refs": { + "SaaSProductFilters$Visibility": "

The visibility of the SaaS product.

" + } + }, + "SaaSProductVisibilityFilterValueList": { + "base": null, + "refs": { + "SaaSProductVisibilityFilter$ValueList": "

A string array of unique visibility values to be filtered on.

" + } + }, + "SaaSProductVisibilityString": { + "base": null, + "refs": { + "SaaSProductSummary$Visibility": "

The lifecycle of the SaaS product.

", + "SaaSProductVisibilityFilterValueList$member": null + } + }, "ServiceQuotaExceededException": { "base": "

The maximum number of open requests per account has been exceeded.

", "refs": { @@ -430,12 +1336,18 @@ "SortBy": { "base": null, "refs": { - "Sort$SortBy": "

For ListEntities, supported attributes include LastModifiedDate (default), Visibility, EntityId, and Name.

For ListChangeSets, supported attributes include StartTime and EndTime.

" + "Sort$SortBy": "

For ListEntities, supported attributes include LastModifiedDate (default) and EntityId. In addition to LastModifiedDate and EntityId, each EntityType might support additional fields.

For ListChangeSets, supported attributes include StartTime and EndTime.

" } }, "SortOrder": { "base": null, "refs": { + "AmiProductSort$SortOrder": "

The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING.

", + "ContainerProductSort$SortOrder": "

The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING.

", + "DataProductSort$SortOrder": "

The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING.

", + "OfferSort$SortOrder": "

Allows to sort offers.

", + "ResaleAuthorizationSort$SortOrder": "

Allows to sort ResaleAuthorization.

", + "SaaSProductSort$SortOrder": "

The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING.

", "Sort$SortOrder": "

The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-catalog/2018-09-17/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-catalog/2018-09-17/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-catalog/2018-09-17/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-catalog/2018-09-17/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://catalog.marketplace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://catalog.marketplace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://catalog.marketplace-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://catalog.marketplace-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://catalog.marketplace.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://catalog.marketplace.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://catalog.marketplace.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://catalog.marketplace.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,371 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-01-25", + "endpointPrefix":"deployment-marketplace", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AWS Marketplace Deployment Service", + "serviceId":"Marketplace Deployment", + "signatureVersion":"v4", + "signingName":"aws-marketplace", + "uid":"marketplace-deployment-2023-01-25" + }, + "operations":{ + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "PutDeploymentParameter":{ + "name":"PutDeploymentParameter", + "http":{ + "method":"POST", + "requestUri":"/catalogs/{catalog}/products/{productId}/deployment-parameters", + "responseCode":200 + }, + "input":{"shape":"PutDeploymentParameterRequest"}, + "output":{"shape":"PutDeploymentParameterResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":204 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":204 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "Catalog":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z_-]+$" + }, + "ClientToken":{ + "type":"string", + "max":64, + "min":32, + "pattern":"^[a-zA-Z0-9/_+=.:@-]+$" + }, + "ConflictException":{ + "type":"structure", + "required":[ + "message", + "resourceId" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{"shape":"ResourceId"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "DeploymentParameterInput":{ + "type":"structure", + "required":[ + "name", + "secretString" + ], + "members":{ + "name":{"shape":"DeploymentParameterName"}, + "secretString":{"shape":"SecretString"} + } + }, + "DeploymentParameterName":{ + "type":"string", + "max":400, + "min":1, + "pattern":"^[a-zA-Z0-9/_+=.@-]+$" + }, + "DeploymentParameterResourceIdentifier":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^dp-[a-zA-Z0-9]+$" + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"Tags"} + } + }, + "PutDeploymentParameterRequest":{ + "type":"structure", + "required":[ + "agreementId", + "catalog", + "deploymentParameter", + "productId" + ], + "members":{ + "agreementId":{"shape":"ResourceId"}, + "catalog":{ + "shape":"Catalog", + "location":"uri", + "locationName":"catalog" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "deploymentParameter":{"shape":"DeploymentParameterInput"}, + "expirationDate":{"shape":"SyntheticTimestamp_date_time"}, + "productId":{ + "shape":"ResourceId", + "location":"uri", + "locationName":"productId" + }, + "tags":{"shape":"TagsMap"} + } + }, + "PutDeploymentParameterResponse":{ + "type":"structure", + "required":[ + "agreementId", + "deploymentParameterId", + "resourceArn" + ], + "members":{ + "agreementId":{"shape":"ResourceId"}, + "deploymentParameterId":{"shape":"DeploymentParameterResourceIdentifier"}, + "resourceArn":{"shape":"ResourceArn"}, + "tags":{"shape":"TagsMap"} + } + }, + "ResourceArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"^[a-zA-Z0-9:*/-]+$" + }, + "ResourceId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[A-Za-z0-9_/-]+$" + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "SecretString":{ + "type":"string", + "max":15000, + "min":1, + "sensitive":true + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "String":{"type":"string"}, + "StringList":{ + "type":"list", + "member":{"shape":"String"} + }, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[a-zA-Z0-9/_+=.:@-]+$" + }, + "TagResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"Tags"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9/_+=.:@-]+$" + }, + "Tags":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "TagsMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":50, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"StringList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "ValidationException":{ + "type":"structure", + "required":[ + "fieldName", + "message" + ], + "members":{ + "fieldName":{"shape":"String"}, + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,195 @@ +{ + "version": "2.0", + "service": "

The AWS Marketplace Deployment Service supports the Quick Launch experience, which is a deployment option for software as a service (SaaS) products. Quick Launch simplifies and reduces the time, resources, and steps required to configure, deploy, and launch a products. The AWS Marketplace Deployment Service provides sellers with a secure method for passing deployment parameters (for example, API keys and external IDs) to buyers during the Quick Launch experience.

", + "operations": { + "ListTagsForResource": "

Lists all tags that have been added to a deployment parameter resource.

", + "PutDeploymentParameter": "

Creates or updates a deployment parameter and is targeted by catalog and agreementId.

", + "TagResource": "

Tags a resource.

", + "UntagResource": "

Removes a tag or list of tags from a resource.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "Catalog": { + "base": null, + "refs": { + "PutDeploymentParameterRequest$catalog": "

The catalog related to the request. Fixed value: AWS Marketplace

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "PutDeploymentParameterRequest$clientToken": "

The idempotency token for deployment parameters. A unique identifier for the new version.

" + } + }, + "ConflictException": { + "base": "

The request configuration has conflicts. For details, see the accompanying error message.

", + "refs": { + } + }, + "DeploymentParameterInput": { + "base": "

The shape containing the requested deployment parameter name and secretString.

", + "refs": { + "PutDeploymentParameterRequest$deploymentParameter": "

The deployment parameter targeted to the acceptor of an agreement for which to create the AWS Secret Manager resource.

" + } + }, + "DeploymentParameterName": { + "base": null, + "refs": { + "DeploymentParameterInput$name": "

The desired name of the deployment parameter. This is the identifier on which deployment parameters are keyed for a given buyer and product. If this name matches an existing deployment parameter, this request will update the existing resource.

" + } + }, + "DeploymentParameterResourceIdentifier": { + "base": null, + "refs": { + "PutDeploymentParameterResponse$deploymentParameterId": "

The unique identifier of the deployment parameter.

" + } + }, + "InternalServerException": { + "base": "

There was an internal service exception.

", + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "PutDeploymentParameterRequest": { + "base": null, + "refs": { + } + }, + "PutDeploymentParameterResponse": { + "base": null, + "refs": { + } + }, + "ResourceArn": { + "base": null, + "refs": { + "PutDeploymentParameterResponse$resourceArn": "

The Amazon Resource Name (ARN) associated with the deployment parameter resource you want to create or update.

" + } + }, + "ResourceId": { + "base": null, + "refs": { + "ConflictException$resourceId": "

The unique identifier for the resource associated with the error.

", + "PutDeploymentParameterRequest$agreementId": "

The unique identifier of the agreement.

", + "PutDeploymentParameterRequest$productId": "

The product for which AWS Marketplace will save secrets for the buyer’s account.

", + "PutDeploymentParameterResponse$agreementId": "

The unique identifier of the agreement.

" + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource wasn't found.

", + "refs": { + } + }, + "SecretString": { + "base": null, + "refs": { + "DeploymentParameterInput$secretString": "

The text to encrypt and store in the secret.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

The maximum number of requests per account has been exceeded.

", + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) associated with the deployment parameter resource you want to list tags on.

", + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "StringList$member": null, + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) associated with the resource you want to tag.

", + "Tags$key": null, + "Tags$value": null, + "ThrottlingException$message": null, + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) associated with the resource you want to remove the tag from.

", + "ValidationException$fieldName": "

The field name associated with the error.

", + "ValidationException$message": null + } + }, + "StringList": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

A list of key names of tags to be removed.

" + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "PutDeploymentParameterRequest$expirationDate": "

The date when deployment parameters expire and are scheduled for deletion.

" + } + }, + "TagKey": { + "base": null, + "refs": { + "TagsMap$key": null + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "TagsMap$value": null + } + }, + "Tags": { + "base": null, + "refs": { + "ListTagsForResourceResponse$tags": "

A map of key-value pairs, where each pair represents a tag present on the resource.

", + "TagResourceRequest$tags": "

A map of key-value pairs, where each pair represents a tag present on the resource.

" + } + }, + "TagsMap": { + "base": null, + "refs": { + "PutDeploymentParameterRequest$tags": "

A map of key-value pairs, where each pair represents a tag saved to the resource. Tags will only be applied for create operations, and they'll be ignored if the resource already exists.

", + "PutDeploymentParameterResponse$tags": "

A map of key-value pairs, where each pair represents a tag saved to the resource. Tags will only be applied for create operations, and they'll be ignored if the resource already exists.

" + } + }, + "ThrottlingException": { + "base": "

Too many requests.

", + "refs": { + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

An error occurred during validation.

", + "refs": { + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://deployment-marketplace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://deployment-marketplace-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://deployment-marketplace.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://deployment-marketplace.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://deployment-marketplace.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplace-deployment/2023-01-25/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplace-deployment/2023-01-25/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4 @@ +{ + "pagination": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -35,7 +35,9 @@ "output":{"shape":"StartSupportDataExportResult"}, "errors":[ {"shape":"MarketplaceCommerceAnalyticsException"} - ] + ], + "deprecated":true, + "deprecatedMessage":"This target has been deprecated. As of December 2022 Product Support Connection is no longer supported." } }, "shapes":{ @@ -82,6 +84,7 @@ }, "DestinationS3BucketName":{ "type":"string", + "max":63, "min":1 }, "DestinationS3Prefix":{"type":"string"}, @@ -132,10 +135,12 @@ }, "RoleNameArn":{ "type":"string", + "max":2048, "min":1 }, "SnsTopicArn":{ "type":"string", + "max":256, "min":1 }, "StartSupportDataExportRequest":{ @@ -155,13 +160,17 @@ "destinationS3Prefix":{"shape":"DestinationS3Prefix"}, "snsTopicArn":{"shape":"SnsTopicArn"}, "customerDefinedValues":{"shape":"CustomerDefinedValues"} - } + }, + "deprecated":true, + "deprecatedMessage":"This target has been deprecated. As of December 2022 Product Support Connection is no longer supported." }, "StartSupportDataExportResult":{ "type":"structure", "members":{ "dataSetRequestId":{"shape":"DataSetRequestId"} - } + }, + "deprecated":true, + "deprecatedMessage":"This target has been deprecated. As of December 2022 Product Support Connection is no longer supported." }, "SupportDataSetType":{ "type":"string", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,14 +3,14 @@ "service": "Provides AWS Marketplace business intelligence data on-demand.", "operations": { "GenerateDataSet": "Given a data set type and data set publication date, asynchronously publishes the requested data set to the specified S3 bucket and notifies the specified SNS topic once the data is available. Returns a unique request identifier that can be used to correlate requests with notifications from the SNS topic. Data sets will be published in comma-separated values (CSV) format with the file name {data_set_type}_YYYY-MM-DD.csv. If a file with the same name already exists (e.g. if the same data set is requested twice), the original file will be overwritten by the new file. Requires a Role with an attached permissions policy providing Allow permissions for the following actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy.", - "StartSupportDataExport": "Given a data set type and a from date, asynchronously publishes the requested customer support data to the specified S3 bucket and notifies the specified SNS topic once the data is available. Returns a unique request identifier that can be used to correlate requests with notifications from the SNS topic. Data sets will be published in comma-separated values (CSV) format with the file name {data_set_type}_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. If a file with the same name already exists (e.g. if the same data set is requested twice), the original file will be overwritten by the new file. Requires a Role with an attached permissions policy providing Allow permissions for the following actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy." + "StartSupportDataExport": "This target has been deprecated. Given a data set type and a from date, asynchronously publishes the requested customer support data to the specified S3 bucket and notifies the specified SNS topic once the data is available. Returns a unique request identifier that can be used to correlate requests with notifications from the SNS topic. Data sets will be published in comma-separated values (CSV) format with the file name {data_set_type}_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. If a file with the same name already exists (e.g. if the same data set is requested twice), the original file will be overwritten by the new file. Requires a Role with an attached permissions policy providing Allow permissions for the following actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy." }, "shapes": { "CustomerDefinedValues": { "base": null, "refs": { "GenerateDataSetRequest$customerDefinedValues": "(Optional) Key-value pairs which will be returned, unmodified, in the Amazon SNS notification message and the data set metadata file. These key-value pairs can be used to correlated responses with tracking information from other systems.", - "StartSupportDataExportRequest$customerDefinedValues": "(Optional) Key-value pairs which will be returned, unmodified, in the Amazon SNS notification message and the data set metadata file." + "StartSupportDataExportRequest$customerDefinedValues": "This target has been deprecated. (Optional) Key-value pairs which will be returned, unmodified, in the Amazon SNS notification message and the data set metadata file." } }, "DataSetPublicationDate": { @@ -23,7 +23,7 @@ "base": null, "refs": { "GenerateDataSetResult$dataSetRequestId": "A unique identifier representing a specific request to the GenerateDataSet operation. This identifier can be used to correlate a request with notifications from the SNS topic.", - "StartSupportDataExportResult$dataSetRequestId": "A unique identifier representing a specific request to the StartSupportDataExport operation. This identifier can be used to correlate a request with notifications from the SNS topic." + "StartSupportDataExportResult$dataSetRequestId": "This target has been deprecated. A unique identifier representing a specific request to the StartSupportDataExport operation. This identifier can be used to correlate a request with notifications from the SNS topic." } }, "DataSetType": { @@ -36,14 +36,14 @@ "base": null, "refs": { "GenerateDataSetRequest$destinationS3BucketName": "The name (friendly name, not ARN) of the destination S3 bucket.", - "StartSupportDataExportRequest$destinationS3BucketName": "The name (friendly name, not ARN) of the destination S3 bucket." + "StartSupportDataExportRequest$destinationS3BucketName": "This target has been deprecated. The name (friendly name, not ARN) of the destination S3 bucket." } }, "DestinationS3Prefix": { "base": null, "refs": { "GenerateDataSetRequest$destinationS3Prefix": "(Optional) The desired S3 prefix for the published data set, similar to a directory path in standard file systems. For example, if given the bucket name \"mybucket\" and the prefix \"myprefix/mydatasets\", the output file \"outputfile\" would be published to \"s3://mybucket/myprefix/mydatasets/outputfile\". If the prefix directory structure does not exist, it will be created. If no prefix is provided, the data set will be published to the S3 bucket root.", - "StartSupportDataExportRequest$destinationS3Prefix": "(Optional) The desired S3 prefix for the published data set, similar to a directory path in standard file systems. For example, if given the bucket name \"mybucket\" and the prefix \"myprefix/mydatasets\", the output file \"outputfile\" would be published to \"s3://mybucket/myprefix/mydatasets/outputfile\". If the prefix directory structure does not exist, it will be created. If no prefix is provided, the data set will be published to the S3 bucket root." + "StartSupportDataExportRequest$destinationS3Prefix": "This target has been deprecated. (Optional) The desired S3 prefix for the published data set, similar to a directory path in standard file systems. For example, if given the bucket name \"mybucket\" and the prefix \"myprefix/mydatasets\", the output file \"outputfile\" would be published to \"s3://mybucket/myprefix/mydatasets/outputfile\". If the prefix directory structure does not exist, it will be created. If no prefix is provided, the data set will be published to the S3 bucket root." } }, "ExceptionMessage": { @@ -55,7 +55,7 @@ "FromDate": { "base": null, "refs": { - "StartSupportDataExportRequest$fromDate": "The start date from which to retrieve the data set in UTC. This parameter only affects the customer_support_contacts_data data set type." + "StartSupportDataExportRequest$fromDate": "This target has been deprecated. The start date from which to retrieve the data set in UTC. This parameter only affects the customer_support_contacts_data data set type." } }, "GenerateDataSetRequest": { @@ -89,30 +89,30 @@ "base": null, "refs": { "GenerateDataSetRequest$roleNameArn": "The Amazon Resource Name (ARN) of the Role with an attached permissions policy to interact with the provided AWS services.", - "StartSupportDataExportRequest$roleNameArn": "The Amazon Resource Name (ARN) of the Role with an attached permissions policy to interact with the provided AWS services." + "StartSupportDataExportRequest$roleNameArn": "This target has been deprecated. The Amazon Resource Name (ARN) of the Role with an attached permissions policy to interact with the provided AWS services." } }, "SnsTopicArn": { "base": null, "refs": { "GenerateDataSetRequest$snsTopicArn": "Amazon Resource Name (ARN) for the SNS Topic that will be notified when the data set has been published or if an error has occurred.", - "StartSupportDataExportRequest$snsTopicArn": "Amazon Resource Name (ARN) for the SNS Topic that will be notified when the data set has been published or if an error has occurred." + "StartSupportDataExportRequest$snsTopicArn": "This target has been deprecated. Amazon Resource Name (ARN) for the SNS Topic that will be notified when the data set has been published or if an error has occurred." } }, "StartSupportDataExportRequest": { - "base": "Container for the parameters to the StartSupportDataExport operation.", + "base": "This target has been deprecated. Container for the parameters to the StartSupportDataExport operation.", "refs": { } }, "StartSupportDataExportResult": { - "base": "Container for the result of the StartSupportDataExport operation.", + "base": "This target has been deprecated. Container for the result of the StartSupportDataExport operation.", "refs": { } }, "SupportDataSetType": { "base": null, "refs": { - "StartSupportDataExportRequest$dataSetType": "

Specifies the data set type to be written to the output csv file. The data set types customer_support_contacts_data and test_customer_support_contacts_data both result in a csv file containing the following fields: Product Id, Product Code, Customer Guid, Subscription Guid, Subscription Start Date, Organization, AWS Account Id, Given Name, Surname, Telephone Number, Email, Title, Country Code, ZIP Code, Operation Type, and Operation Time.

  • customer_support_contacts_data Customer support contact data. The data set will contain all changes (Creates, Updates, and Deletes) to customer support contact data from the date specified in the from_date parameter.
  • test_customer_support_contacts_data An example data set containing static test data in the same format as customer_support_contacts_data

" + "StartSupportDataExportRequest$dataSetType": "

This target has been deprecated. Specifies the data set type to be written to the output csv file. The data set types customer_support_contacts_data and test_customer_support_contacts_data both result in a csv file containing the following fields: Product Id, Product Code, Customer Guid, Subscription Guid, Subscription Start Date, Organization, AWS Account Id, Given Name, Surname, Telephone Number, Email, Title, Country Code, ZIP Code, Operation Type, and Operation Time.

  • customer_support_contacts_data Customer support contact data. The data set will contain all changes (Creates, Updates, and Deletes) to customer support contact data from the date specified in the from_date parameter.
  • test_customer_support_contacts_data An example data set containing static test data in the same format as customer_support_contacts_data

" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://marketplacecommerceanalytics.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://marketplacecommerceanalytics.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/marketplacecommerceanalytics/2015-07-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://marketplacecommerceanalytics.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediaconvert/2017-08-29/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediaconvert/2017-08-29/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediaconvert/2017-08-29/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediaconvert/2017-08-29/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1379,6 +1379,10 @@ "ChannelTag": { "shape": "AudioChannelTag", "locationName": "channelTag" + }, + "ChannelTags": { + "shape": "__listOfAudioChannelTag", + "locationName": "channelTags" } } }, @@ -2785,7 +2789,8 @@ "enum": [ "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT", "ALTERNATE_AUDIO_AUTO_SELECT", - "ALTERNATE_AUDIO_NOT_AUTO_SELECT" + "ALTERNATE_AUDIO_NOT_AUTO_SELECT", + "AUDIO_ONLY_VARIANT_STREAM" ] }, "CmfcDescriptiveVideoServiceFlag": { @@ -4807,6 +4812,13 @@ "STATIC" ] }, + "H264EndOfStreamMarkers": { + "type": "string", + "enum": [ + "INCLUDE", + "SUPPRESS" + ] + }, "H264EntropyEncoding": { "type": "string", "enum": [ @@ -4958,6 +4970,10 @@ "shape": "H264DynamicSubGop", "locationName": "dynamicSubGop" }, + "EndOfStreamMarkers": { + "shape": "H264EndOfStreamMarkers", + "locationName": "endOfStreamMarkers" + }, "EntropyEncoding": { "shape": "H264EntropyEncoding", "locationName": "entropyEncoding" @@ -5205,6 +5221,13 @@ "STATIC" ] }, + "H265EndOfStreamMarkers": { + "type": "string", + "enum": [ + "INCLUDE", + "SUPPRESS" + ] + }, "H265FlickerAdaptiveQuantization": { "type": "string", "enum": [ @@ -5346,6 +5369,10 @@ "shape": "H265DynamicSubGop", "locationName": "dynamicSubGop" }, + "EndOfStreamMarkers": { + "shape": "H265EndOfStreamMarkers", + "locationName": "endOfStreamMarkers" + }, "FlickerAdaptiveQuantization": { "shape": "H265FlickerAdaptiveQuantization", "locationName": "flickerAdaptiveQuantization" @@ -6257,6 +6284,10 @@ "shape": "InputVideoGenerator", "locationName": "videoGenerator" }, + "VideoOverlays": { + "shape": "__listOfVideoOverlay", + "locationName": "videoOverlays" + }, "VideoSelector": { "shape": "VideoSelector", "locationName": "videoSelector" @@ -6437,6 +6468,10 @@ "shape": "__stringMin11Max11Pattern01D20305D205D", "locationName": "timecodeStart" }, + "VideoOverlays": { + "shape": "__listOfVideoOverlay", + "locationName": "videoOverlays" + }, "VideoSelector": { "shape": "VideoSelector", "locationName": "videoSelector" @@ -6679,6 +6714,10 @@ "shape": "ExtendedDataServices", "locationName": "extendedDataServices" }, + "FollowSource": { + "shape": "__integerMin1Max150", + "locationName": "followSource" + }, "Inputs": { "shape": "__listOfInput", "locationName": "inputs" @@ -6811,6 +6850,10 @@ "shape": "ExtendedDataServices", "locationName": "extendedDataServices" }, + "FollowSource": { + "shape": "__integerMin1Max150", + "locationName": "followSource" + }, "Inputs": { "shape": "__listOfInputTemplate", "locationName": "inputs" @@ -9444,7 +9487,10 @@ "type": "string", "enum": [ "DEFAULT", - "STRETCH_TO_OUTPUT" + "STRETCH_TO_OUTPUT", + "FIT", + "FIT_NO_UPSCALE", + "FILL" ] }, "SccDestinationFramerate": { @@ -9489,7 +9535,7 @@ "locationName": "systemIds" }, "Url": { - "shape": "__stringPatternHttps", + "shape": "__stringPatternHttpsD", "locationName": "url" } } @@ -9514,7 +9560,7 @@ "locationName": "resourceId" }, "Url": { - "shape": "__stringPatternHttps", + "shape": "__stringPatternHttpsD", "locationName": "url" } } @@ -10166,6 +10212,57 @@ } } }, + "VideoOverlay": { + "type": "structure", + "members": { + "EndTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "endTimecode" + }, + "Input": { + "shape": "VideoOverlayInput", + "locationName": "input" + }, + "StartTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "startTimecode" + } + } + }, + "VideoOverlayInput": { + "type": "structure", + "members": { + "FileInput": { + "shape": "__stringPatternS3Https", + "locationName": "fileInput" + }, + "InputClippings": { + "shape": "__listOfVideoOverlayInputClipping", + "locationName": "inputClippings" + }, + "TimecodeSource": { + "shape": "InputTimecodeSource", + "locationName": "timecodeSource" + }, + "TimecodeStart": { + "shape": "__stringMin11Max11Pattern01D20305D205D", + "locationName": "timecodeStart" + } + } + }, + "VideoOverlayInputClipping": { + "type": "structure", + "members": { + "EndTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "endTimecode" + }, + "StartTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "startTimecode" + } + } + }, "VideoPreprocessor": { "type": "structure", "members": { @@ -11166,6 +11263,11 @@ "min": 1, "max": 1001 }, + "__integerMin1Max150": { + "type": "integer", + "min": 1, + "max": 150 + }, "__integerMin1Max17895697": { "type": "integer", "min": 1, @@ -11427,6 +11529,12 @@ "shape": "AllowedRenditionSize" } }, + "__listOfAudioChannelTag": { + "type": "list", + "member": { + "shape": "AudioChannelTag" + } + }, "__listOfAudioDescription": { "type": "list", "member": { @@ -11601,6 +11709,18 @@ "shape": "TeletextPageType" } }, + "__listOfVideoOverlay": { + "type": "list", + "member": { + "shape": "VideoOverlay" + } + }, + "__listOfVideoOverlayInputClipping": { + "type": "list", + "member": { + "shape": "VideoOverlayInputClipping" + } + }, "__listOfWarningGroup": { "type": "list", "member": { @@ -11875,6 +11995,10 @@ "type": "string", "pattern": "^https:\\/\\/" }, + "__stringPatternHttpsD": { + "type": "string", + "pattern": "^https:\\/\\/[^:@\\/]*(:\\d*)?(\\/.*)?$" + }, "__stringPatternHttpsKantarmedia": { "type": "string", "pattern": "^https:\\/\\/.*.kantarmedia.*$" @@ -11920,4 +12044,4 @@ "timestampFormat": "unixTimestamp" } } -} +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediaconvert/2017-08-29/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediaconvert/2017-08-29/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediaconvert/2017-08-29/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediaconvert/2017-08-29/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -235,15 +235,16 @@ } }, "AudioChannelTag": { - "base": "You can add a tag for this mono-channel audio track to mimic its placement in a multi-channel layout. For example, if this track is the left surround channel, choose Left surround (LS).", + "base": "Specify the QuickTime audio channel layout tags for the audio channels in this audio track. Enter channel layout tags in the same order as your output's audio channel order. For example, if your output audio track has a left and a right channel, enter Left (L) for the first channel and Right (R) for the second. If your output has multiple single-channel audio tracks, enter a single channel layout tag for each track.", "refs": { - "AudioChannelTaggingSettings$ChannelTag": "You can add a tag for this mono-channel audio track to mimic its placement in a multi-channel layout. For example, if this track is the left surround channel, choose Left surround (LS)." + "AudioChannelTaggingSettings$ChannelTag": "Specify the QuickTime audio channel layout tags for the audio channels in this audio track. Enter channel layout tags in the same order as your output's audio channel order. For example, if your output audio track has a left and a right channel, enter Left (L) for the first channel and Right (R) for the second. If your output has multiple single-channel audio tracks, enter a single channel layout tag for each track.", + "__listOfAudioChannelTag$member": null } }, "AudioChannelTaggingSettings": { - "base": "When you mimic a multi-channel audio layout with multiple mono-channel tracks, you can tag each channel layout manually. For example, you would tag the tracks that contain your left, right, and center audio with Left (L), Right (R), and Center (C), respectively. When you don't specify a value, MediaConvert labels your track as Center (C) by default. To use audio layout tagging, your output must be in a QuickTime (.mov) container; your audio codec must be AAC, WAV, or AIFF; and you must set up your audio track to have only one channel.", + "base": "Specify the QuickTime audio channel layout tags for the audio channels in this audio track. When you don't specify a value, MediaConvert labels your track as Center (C) by default. To use Audio layout tagging, your output must be in a QuickTime (MOV) container and your audio codec must be AAC, WAV, or AIFF.", "refs": { - "AudioDescription$AudioChannelTaggingSettings": "When you mimic a multi-channel audio layout with multiple mono-channel tracks, you can tag each channel layout manually. For example, you would tag the tracks that contain your left, right, and center audio with Left (L), Right (R), and Center (C), respectively. When you don't specify a value, MediaConvert labels your track as Center (C) by default. To use audio layout tagging, your output must be in a QuickTime (.mov) container; your audio codec must be AAC, WAV, or AIFF; and you must set up your audio track to have only one channel." + "AudioDescription$AudioChannelTaggingSettings": "Specify the QuickTime audio channel layout tags for the audio channels in this audio track. When you don't specify a value, MediaConvert labels your track as Center (C) by default. To use Audio layout tagging, your output must be in a QuickTime (MOV) container and your audio codec must be AAC, WAV, or AIFF." } }, "AudioCodec": { @@ -795,9 +796,9 @@ } }, "CmfcAudioTrackType": { - "base": "Use this setting to control the values that MediaConvert puts in your HLS parent playlist to control how the client player selects which audio track to play. The other options for this setting determine the values that MediaConvert writes for the DEFAULT and AUTOSELECT attributes of the EXT-X-MEDIA entry for the audio variant. For more information about these attributes, see the Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. Choose Alternate audio, auto select, default to set DEFAULT=YES and AUTOSELECT=YES. Choose this value for only one variant in your output group. Choose Alternate audio, auto select, not default to set DEFAULT=NO and AUTOSELECT=YES. Choose Alternate Audio, Not Auto Select to set DEFAULT=NO and AUTOSELECT=NO. When you don't specify a value for this setting, MediaConvert defaults to Alternate audio, auto select, default. When there is more than one variant in your output group, you must explicitly choose a value for this setting.", + "base": "Use this setting to control the values that MediaConvert puts in your HLS parent playlist to control how the client player selects which audio track to play. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF in the HLS manifest. The other options for this setting determine the values that MediaConvert writes for the DEFAULT and AUTOSELECT attributes of the EXT-X-MEDIA entry for the audio variant. For more information about these attributes, see the Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. Choose Alternate audio, auto select, default to set DEFAULT=YES and AUTOSELECT=YES. Choose this value for only one variant in your output group. Choose Alternate audio, auto select, not default to set DEFAULT=NO and AUTOSELECT=YES. Choose Alternate Audio, Not Auto Select to set DEFAULT=NO and AUTOSELECT=NO. When you don't specify a value for this setting, MediaConvert defaults to Alternate audio, auto select, default. When there is more than one variant in your output group, you must explicitly choose a value for this setting.", "refs": { - "CmfcSettings$AudioTrackType": "Use this setting to control the values that MediaConvert puts in your HLS parent playlist to control how the client player selects which audio track to play. The other options for this setting determine the values that MediaConvert writes for the DEFAULT and AUTOSELECT attributes of the EXT-X-MEDIA entry for the audio variant. For more information about these attributes, see the Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. Choose Alternate audio, auto select, default to set DEFAULT=YES and AUTOSELECT=YES. Choose this value for only one variant in your output group. Choose Alternate audio, auto select, not default to set DEFAULT=NO and AUTOSELECT=YES. Choose Alternate Audio, Not Auto Select to set DEFAULT=NO and AUTOSELECT=NO. When you don't specify a value for this setting, MediaConvert defaults to Alternate audio, auto select, default. When there is more than one variant in your output group, you must explicitly choose a value for this setting." + "CmfcSettings$AudioTrackType": "Use this setting to control the values that MediaConvert puts in your HLS parent playlist to control how the client player selects which audio track to play. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF in the HLS manifest. The other options for this setting determine the values that MediaConvert writes for the DEFAULT and AUTOSELECT attributes of the EXT-X-MEDIA entry for the audio variant. For more information about these attributes, see the Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. Choose Alternate audio, auto select, default to set DEFAULT=YES and AUTOSELECT=YES. Choose this value for only one variant in your output group. Choose Alternate audio, auto select, not default to set DEFAULT=NO and AUTOSELECT=YES. Choose Alternate Audio, Not Auto Select to set DEFAULT=NO and AUTOSELECT=NO. When you don't specify a value for this setting, MediaConvert defaults to Alternate audio, auto select, default. When there is more than one variant in your output group, you must explicitly choose a value for this setting." } }, "CmfcDescriptiveVideoServiceFlag": { @@ -1520,9 +1521,9 @@ } }, "F4vMoovPlacement": { - "base": "If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning of the archive as required for progressive downloading. Otherwise it is placed normally at the end.", + "base": "To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal.", "refs": { - "F4vSettings$MoovPlacement": "If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning of the archive as required for progressive downloading. Otherwise it is placed normally at the end." + "F4vSettings$MoovPlacement": "To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal." } }, "F4vSettings": { @@ -1659,6 +1660,12 @@ "H264Settings$DynamicSubGop": "Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending on your input video content. To improve the subjective video quality of your output that has high-motion content: Leave blank or keep the default value Adaptive. MediaConvert will use fewer B-frames for high-motion video content than low-motion content. The maximum number of B- frames is limited by the value that you choose for B-frames between reference frames. To use the same number B-frames for all types of content: Choose Static." } }, + "H264EndOfStreamMarkers": { + "base": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream.", + "refs": { + "H264Settings$EndOfStreamMarkers": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream." + } + }, "H264EntropyEncoding": { "base": "Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC.", "refs": { @@ -1821,6 +1828,12 @@ "H265Settings$DynamicSubGop": "Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending on your input video content. To improve the subjective video quality of your output that has high-motion content: Leave blank or keep the default value Adaptive. MediaConvert will use fewer B-frames for high-motion video content than low-motion content. The maximum number of B- frames is limited by the value that you choose for B-frames between reference frames. To use the same number B-frames for all types of content: Choose Static." } }, + "H265EndOfStreamMarkers": { + "base": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream.", + "refs": { + "H265Settings$EndOfStreamMarkers": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream." + } + }, "H265FlickerAdaptiveQuantization": { "base": "Enable this setting to have the encoder reduce I-frame pop. I-frame pop appears as a visual flicker that can arise when the encoder saves bits by copying some macroblocks many times from frame to frame, and then refreshes them at the I-frame. When you enable this setting, the encoder updates these macroblocks slightly more often to smooth out the flicker. This setting is disabled by default. Related setting: In addition to enabling this setting, you must also set adaptiveQuantization to a value other than Off.", "refs": { @@ -2297,7 +2310,8 @@ "base": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", "refs": { "Input$TimecodeSource": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", - "InputTemplate$TimecodeSource": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode." + "InputTemplate$TimecodeSource": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", + "VideoOverlayInput$TimecodeSource": "Specify the timecode source for your video overlay input clips. To use the timecode present in your video overlay: Choose Embedded. To use a zerobased timecode: Choose Start at 0. To choose a timecode: Choose Specified start. When you do, enter the starting timecode in Start timecode. If you don't specify a value for Timecode source, MediaConvert uses Embedded by default." } }, "InputVideoGenerator": { @@ -2692,9 +2706,9 @@ } }, "Mp4MoovPlacement": { - "base": "If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning of the archive as required for progressive downloading. Otherwise it is placed normally at the end.", + "base": "To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal.", "refs": { - "Mp4Settings$MoovPlacement": "If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning of the archive as required for progressive downloading. Otherwise it is placed normally at the end." + "Mp4Settings$MoovPlacement": "To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal." } }, "Mp4Settings": { @@ -3351,9 +3365,9 @@ } }, "S3StorageClass": { - "base": "Specify the S3 storage class to use for this destination.", + "base": "Specify the S3 storage class to use for this output. To use your destination's default storage class: Keep the default value, Not set. For more information about S3 storage classes, see https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html", "refs": { - "S3DestinationSettings$StorageClass": "Specify the S3 storage class to use for this destination." + "S3DestinationSettings$StorageClass": "Specify the S3 storage class to use for this output. To use your destination's default storage class: Keep the default value, Not set. For more information about S3 storage classes, see https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html" } }, "SampleRangeConversion": { @@ -3363,9 +3377,9 @@ } }, "ScalingBehavior": { - "base": "Specify how the service handles outputs that have a different aspect ratio from the input aspect ratio. Choose Stretch to output to have the service stretch your video image to fit. Keep the setting Default to have the service letterbox your video instead. This setting overrides any value that you specify for the setting Selection placement in this output.", + "base": "Specify the video Scaling behavior when your output has a different resolution than your input. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-scaling.html", "refs": { - "VideoDescription$ScalingBehavior": "Specify how the service handles outputs that have a different aspect ratio from the input aspect ratio. Choose Stretch to output to have the service stretch your video image to fit. Keep the setting Default to have the service letterbox your video instead. This setting overrides any value that you specify for the setting Selection placement in this output." + "VideoDescription$ScalingBehavior": "Specify the video Scaling behavior when your output has a different resolution than your input. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-scaling.html" } }, "SccDestinationFramerate": { @@ -3659,6 +3673,24 @@ "OutputDetail$VideoDetails": "Contains details about the output's video stream" } }, + "VideoOverlay": { + "base": "Overlay one or more videos on top of your input video. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-overlays.html", + "refs": { + "__listOfVideoOverlay$member": null + } + }, + "VideoOverlayInput": { + "base": "Input settings for Video overlay. You can include one or more video overlays in sequence at different times that you specify.", + "refs": { + "VideoOverlay$Input": "Input settings for Video overlay. You can include one or more video overlays in sequence at different times that you specify." + } + }, + "VideoOverlayInputClipping": { + "base": "To transcode only portions of your video overlay, include one input clip for each part of your video overlay that you want in your output.", + "refs": { + "__listOfVideoOverlayInputClipping$member": null + } + }, "VideoPreprocessor": { "base": "Find additional transcoding features under Preprocessors. Enable the features at each output individually. These features are disabled by default.", "refs": { @@ -4399,7 +4431,7 @@ "__integerMin16000Max48000": { "base": null, "refs": { - "OpusSettings$SampleRate": "Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The default value is 48000." + "OpusSettings$SampleRate": "Optional. Sample rate in Hz. Valid values are 16000, 24000, and 48000. The default value is 48000." } }, "__integerMin16Max24": { @@ -4449,6 +4481,13 @@ "XavcSettings$FramerateDenominator": "When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateDenominator to specify the denominator of this fraction. In this example, use 1001 for the value of FramerateDenominator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Frame rate. In this example, specify 23.976." } }, + "__integerMin1Max150": { + "base": null, + "refs": { + "JobSettings$FollowSource": "Specify the input that MediaConvert references for your default output settings. MediaConvert uses this input's Resolution, Frame rate, and Pixel aspect ratio for all outputs that you don't manually specify different output settings for. Enabling this setting will disable \"Follow source\" for all other inputs. If MediaConvert cannot follow your source, for example if you specify an audio-only input, MediaConvert uses the first followable input instead. In your JSON job specification, enter an integer from 1 to 150 corresponding to the order of your inputs.", + "JobTemplateSettings$FollowSource": "Specify the input that MediaConvert references for your default output settings. MediaConvert uses this input's Resolution, Frame rate, and Pixel aspect ratio for all outputs that you don't manually specify different output settings for. Enabling this setting will disable \"Follow source\" for all other inputs. If MediaConvert cannot follow your source, for example if you specify an audio-only input, MediaConvert uses the first followable input instead. In your JSON job specification, enter an integer from 1 to 150 corresponding to the order of your inputs." + } + }, "__integerMin1Max17895697": { "base": null, "refs": { @@ -4602,8 +4641,8 @@ "__integerMin22050Max48000": { "base": null, "refs": { - "FlacSettings$SampleRate": "Sample rate in hz.", - "Mp3Settings$SampleRate": "Sample rate in hz.", + "FlacSettings$SampleRate": "Sample rate in Hz.", + "Mp3Settings$SampleRate": "Sample rate in Hz.", "VorbisSettings$SampleRate": "Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, 44100, and 48000. The default value is 48000." } }, @@ -4663,7 +4702,7 @@ "__integerMin32000Max48000": { "base": null, "refs": { - "Mp2Settings$SampleRate": "Sample rate in hz." + "Mp2Settings$SampleRate": "Sample rate in Hz." } }, "__integerMin32Max8182": { @@ -4748,7 +4787,7 @@ "__integerMin8000Max192000": { "base": null, "refs": { - "AiffSettings$SampleRate": "Sample rate in hz.", + "AiffSettings$SampleRate": "Sample rate in Hz.", "WavSettings$SampleRate": "Sample rate in Hz." } }, @@ -4872,6 +4911,12 @@ "AutomatedAbrRule$AllowedRenditions": "When customer adds the allowed renditions rule for auto ABR ladder, they are required to add at leat one rendition to allowedRenditions list" } }, + "__listOfAudioChannelTag": { + "base": null, + "refs": { + "AudioChannelTaggingSettings$ChannelTags": "Specify the QuickTime audio channel layout tags for the audio channels in this audio track. Enter channel layout tags in the same order as your output's audio channel order. For example, if your output audio track has a left and a right channel, enter Left (L) for the first channel and Right (R) for the second. If your output has multiple single-channel audio tracks, enter a single channel layout tag for each track." + } + }, "__listOfAudioDescription": { "base": null, "refs": { @@ -5053,6 +5098,19 @@ "TeletextDestinationSettings$PageTypes": "Specify the page types for this Teletext page. If you don't specify a value here, the service sets the page type to the default value Subtitle. If you pass through the entire set of Teletext data, don't use this field. When you pass through a set of Teletext pages, your output has the same page types as your input." } }, + "__listOfVideoOverlay": { + "base": null, + "refs": { + "Input$VideoOverlays": "Contains an array of video overlays.", + "InputTemplate$VideoOverlays": "Contains an array of video overlays." + } + }, + "__listOfVideoOverlayInputClipping": { + "base": null, + "refs": { + "VideoOverlayInput$InputClippings": "Specify one or more clips to use from your video overlay. When you include an input clip, you must also specify its start timecode, end timecode, or both start and end timecode." + } + }, "__listOfWarningGroup": { "base": null, "refs": { @@ -5292,7 +5350,8 @@ "refs": { "Input$TimecodeStart": "Specify the timecode that you want the service to use for this input's initial frame. To use this setting, you must set the Timecode source setting, located under the input settings, to Specified start. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", "InputTemplate$TimecodeStart": "Specify the timecode that you want the service to use for this input's initial frame. To use this setting, you must set the Timecode source setting, located under the input settings, to Specified start. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", - "MotionImageInserter$StartTime": "Specify when the motion overlay begins. Use timecode format (HH:MM:SS:FF or HH:MM:SS;FF). Make sure that the timecode you provide here takes into account how you have set up your timecode configuration under both job settings and input settings. The simplest way to do that is to set both to start at 0. If you need to set up your job to follow timecodes embedded in your source that don't start at zero, make sure that you specify a start time that is after the first embedded timecode. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/setting-up-timecode.html" + "MotionImageInserter$StartTime": "Specify when the motion overlay begins. Use timecode format (HH:MM:SS:FF or HH:MM:SS;FF). Make sure that the timecode you provide here takes into account how you have set up your timecode configuration under both job settings and input settings. The simplest way to do that is to set both to start at 0. If you need to set up your job to follow timecodes embedded in your source that don't start at zero, make sure that you specify a start time that is after the first embedded timecode. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/setting-up-timecode.html", + "VideoOverlayInput$TimecodeStart": "Specify the starting timecode for this video overlay. To use this setting, you must set Timecode source to Specified start." } }, "__stringMin14PatternS3BmpBMPPngPNGHttpsBmpBMPPngPNG": { @@ -5439,7 +5498,11 @@ "InputClipping$EndTimecode": "Set End timecode to the end of the portion of the input you are clipping. The frame corresponding to the End timecode value is included in the clip. Start timecode or End timecode may be left blank, but not both. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When choosing this value, take into account your setting for timecode source under input settings. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your clip to end six minutes into the video, use 01:06:00:00.", "InputClipping$StartTimecode": "Set Start timecode to the beginning of the portion of the input you are clipping. The frame corresponding to the Start timecode value is included in the clip. Start timecode or End timecode may be left blank, but not both. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When choosing this value, take into account your setting for Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your clip to begin five minutes into the video, use 01:05:00:00.", "TimecodeConfig$Anchor": "If you use an editing platform that relies on an anchor timecode, use Anchor Timecode to specify a timecode that will match the input video frame to the output video frame. Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF). This setting ignores frame rate conversion. System behavior for Anchor Timecode varies depending on your setting for Source. * If Source is set to Specified Start, the first input frame is the specified value in Start Timecode. Anchor Timecode and Start Timecode are used calculate output timecode. * If Source is set to Start at 0 the first frame is 00:00:00:00. * If Source is set to Embedded, the first frame is the timecode value on the first input frame of the input.", - "TimecodeConfig$Start": "Only use when you set Source to Specified start. Use Start timecode to specify the timecode for the initial frame. Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF)." + "TimecodeConfig$Start": "Only use when you set Source to Specified start. Use Start timecode to specify the timecode for the initial frame. Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF).", + "VideoOverlay$EndTimecode": "Enter the end timecode in the underlying input video for this overlay. Your overlay will be active through this frame. To display your video overlay for the duration of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to end ten minutes into the video, enter 01:10:00:00.", + "VideoOverlay$StartTimecode": "Enter the start timecode in the underlying input video for this overlay. Your overlay will be active starting with this frame. To display your video overlay starting at the beginning of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to begin five minutes into the video, enter 01:05:00:00.", + "VideoOverlayInputClipping$EndTimecode": "Specify the timecode of the last frame to include in your video overlay's clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for Timecode source.", + "VideoOverlayInputClipping$StartTimecode": "Specify the timecode of the first frame to include in your video overlay's clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for Timecode source." } }, "__stringPattern01D20305D205D": { @@ -5509,7 +5572,12 @@ "__stringPatternHttps": { "base": null, "refs": { - "NielsenNonLinearWatermarkSettings$TicServerUrl": "Specify the endpoint for the TIC server that you have deployed and configured in the AWS Cloud. Required for all Nielsen non-linear watermarking. MediaConvert can't connect directly to a TIC server. Instead, you must use API Gateway to provide a RESTful interface between MediaConvert and a TIC server that you deploy in your AWS account. For more information on deploying a TIC server in your AWS account and the required API Gateway, contact Nielsen support.", + "NielsenNonLinearWatermarkSettings$TicServerUrl": "Specify the endpoint for the TIC server that you have deployed and configured in the AWS Cloud. Required for all Nielsen non-linear watermarking. MediaConvert can't connect directly to a TIC server. Instead, you must use API Gateway to provide a RESTful interface between MediaConvert and a TIC server that you deploy in your AWS account. For more information on deploying a TIC server in your AWS account and the required API Gateway, contact Nielsen support." + } + }, + "__stringPatternHttpsD": { + "base": null, + "refs": { "SpekeKeyProvider$Url": "Specify the URL to the key server that your SPEKE-compliant DRM key provider uses to provide keys for encrypting your content.", "SpekeKeyProviderCmaf$Url": "Specify the URL to the key server that your SPEKE-compliant DRM key provider uses to provide keys for encrypting your content." } @@ -5549,7 +5617,8 @@ "base": null, "refs": { "AudioSelector$ExternalAudioFileInput": "Specifies audio data from an external file source.", - "Input$FileInput": "Specify the source file for your transcoding job. You can use multiple inputs in a single job. The service concatenates these inputs, in the order that you specify them in the job, to create the outputs. If your input format is IMF, specify your input by providing the path to your CPL. For example, \"s3://bucket/vf/cpl.xml\". If the CPL is in an incomplete IMP, make sure to use *Supplemental IMPs* to specify any supplemental IMPs that contain assets referenced by the CPL." + "Input$FileInput": "Specify the source file for your transcoding job. You can use multiple inputs in a single job. The service concatenates these inputs, in the order that you specify them in the job, to create the outputs. If your input format is IMF, specify your input by providing the path to your CPL. For example, \"s3://bucket/vf/cpl.xml\". If the CPL is in an incomplete IMP, make sure to use *Supplemental IMPs* to specify any supplemental IMPs that contain assets referenced by the CPL.", + "VideoOverlayInput$FileInput": "Specify the input file S3, HTTP, or HTTPS URI for your video overlay. For consistency in color and formatting in your output video image, we recommend that you specify a video with similar characteristics as the underlying input video." } }, "__stringPatternSNManifestConfirmConditionNotificationNS": { @@ -5595,4 +5664,4 @@ } } } -} +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediaconvert/2017-08-29/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediaconvert/2017-08-29/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediaconvert/2017-08-29/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediaconvert/2017-08-29/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -345,9 +343,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/medialive/2017-10-14/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/medialive/2017-10-14/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/medialive/2017-10-14/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/medialive/2017-10-14/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -844,6 +844,40 @@ } ] }, + "DescribeAccountConfiguration": { + "name": "DescribeAccountConfiguration", + "http": { + "method": "GET", + "requestUri": "/prod/accountConfiguration", + "responseCode": 200 + }, + "input": { + "shape": "DescribeAccountConfigurationRequest" + }, + "output": { + "shape": "DescribeAccountConfigurationResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "BadGatewayException" + }, + { + "shape": "GatewayTimeoutException" + }, + { + "shape": "TooManyRequestsException" + } + ] + }, "DescribeChannel": { "name": "DescribeChannel", "http": { @@ -1214,40 +1248,6 @@ } ] }, - "DescribeAccountConfiguration": { - "name": "DescribeAccountConfiguration", - "http": { - "method": "GET", - "requestUri": "/prod/accountConfiguration", - "responseCode": 200 - }, - "input": { - "shape": "DescribeAccountConfigurationRequest" - }, - "output": { - "shape": "DescribeAccountConfigurationResponse" - }, - "errors": [ - { - "shape": "BadRequestException" - }, - { - "shape": "InternalServerErrorException" - }, - { - "shape": "ForbiddenException" - }, - { - "shape": "BadGatewayException" - }, - { - "shape": "GatewayTimeoutException" - }, - { - "shape": "TooManyRequestsException" - } - ] - }, "DescribeThumbnails": { "name": "DescribeThumbnails", "http": { @@ -1751,43 +1751,6 @@ } ] }, - "UpdateAccountConfiguration": { - "name": "UpdateAccountConfiguration", - "http": { - "method": "PUT", - "requestUri": "/prod/accountConfiguration", - "responseCode": 200 - }, - "input": { - "shape": "UpdateAccountConfigurationRequest" - }, - "output": { - "shape": "UpdateAccountConfigurationResponse" - }, - "errors": [ - { - "shape": "BadRequestException" - }, - { - "shape": "UnprocessableEntityException" - }, - { - "shape": "InternalServerErrorException" - }, - { - "shape": "ForbiddenException" - }, - { - "shape": "BadGatewayException" - }, - { - "shape": "GatewayTimeoutException" - }, - { - "shape": "TooManyRequestsException" - } - ] - }, "StartChannel": { "name": "StartChannel", "http": { @@ -2111,6 +2074,43 @@ } ] }, + "UpdateAccountConfiguration": { + "name": "UpdateAccountConfiguration", + "http": { + "method": "PUT", + "requestUri": "/prod/accountConfiguration", + "responseCode": 200 + }, + "input": { + "shape": "UpdateAccountConfigurationRequest" + }, + "output": { + "shape": "UpdateAccountConfigurationResponse" + }, + "errors": [ + { + "shape": "BadRequestException" + }, + { + "shape": "UnprocessableEntityException" + }, + { + "shape": "InternalServerErrorException" + }, + { + "shape": "ForbiddenException" + }, + { + "shape": "BadGatewayException" + }, + { + "shape": "GatewayTimeoutException" + }, + { + "shape": "TooManyRequestsException" + } + ] + }, "UpdateChannel": { "name": "UpdateChannel", "http": { @@ -2647,7 +2647,7 @@ "AccountConfiguration": { "type": "structure", "members": { - "kmsKeyId": { + "KmsKeyId": { "shape": "__string", "locationName": "kmsKeyId" } @@ -4111,6 +4111,49 @@ "members": { } }, + "ColorCorrection": { + "type": "structure", + "members": { + "InputColorSpace": { + "shape": "ColorSpace", + "locationName": "inputColorSpace" + }, + "OutputColorSpace": { + "shape": "ColorSpace", + "locationName": "outputColorSpace" + }, + "Uri": { + "shape": "__string", + "locationName": "uri" + } + }, + "required": [ + "OutputColorSpace", + "InputColorSpace", + "Uri" + ] + }, + "ColorCorrectionSettings": { + "type": "structure", + "members": { + "GlobalColorCorrections": { + "shape": "__listOfColorCorrection", + "locationName": "globalColorCorrections" + } + }, + "required": [ + "GlobalColorCorrections" + ] + }, + "ColorSpace": { + "type": "string", + "enum": [ + "HDR10", + "HLG_2020", + "REC_601", + "REC_709" + ] + }, "ColorSpacePassthroughSettings": { "type": "structure", "members": { @@ -5004,6 +5047,29 @@ "ResourceArn" ] }, + "DescribeAccountConfigurationRequest": { + "type": "structure", + "members": { + } + }, + "DescribeAccountConfigurationResponse": { + "type": "structure", + "members": { + "AccountConfiguration": { + "shape": "AccountConfiguration", + "locationName": "accountConfiguration" + } + } + }, + "DescribeAccountConfigurationResultModel": { + "type": "structure", + "members": { + "AccountConfiguration": { + "shape": "AccountConfiguration", + "locationName": "accountConfiguration" + } + } + }, "DescribeChannelRequest": { "type": "structure", "members": { @@ -5643,6 +5709,49 @@ } } }, + "DescribeThumbnailsRequest": { + "type": "structure", + "members": { + "ChannelId": { + "shape": "__string", + "location": "uri", + "locationName": "channelId" + }, + "PipelineId": { + "shape": "__string", + "location": "querystring", + "locationName": "pipelineId" + }, + "ThumbnailType": { + "shape": "__string", + "location": "querystring", + "locationName": "thumbnailType" + } + }, + "required": [ + "ThumbnailType", + "PipelineId", + "ChannelId" + ] + }, + "DescribeThumbnailsResponse": { + "type": "structure", + "members": { + "ThumbnailDetails": { + "shape": "__listOfThumbnailDetail", + "locationName": "thumbnailDetails" + } + } + }, + "DescribeThumbnailsResultModel": { + "type": "structure", + "members": { + "ThumbnailDetails": { + "shape": "__listOfThumbnailDetail", + "locationName": "thumbnailDetails" + } + } + }, "DeviceSettingsSyncState": { "type": "string", "enum": [ @@ -6288,6 +6397,10 @@ "ThumbnailConfiguration": { "shape": "ThumbnailConfiguration", "locationName": "thumbnailConfiguration" + }, + "ColorCorrectionSettings": { + "shape": "ColorCorrectionSettings", + "locationName": "colorCorrectionSettings" } }, "required": [ @@ -6375,6 +6488,10 @@ "InputPrepareScheduleActions": { "shape": "FeatureActivationsInputPrepareScheduleActions", "locationName": "inputPrepareScheduleActions" + }, + "OutputStaticImageOverlayScheduleActions": { + "shape": "FeatureActivationsOutputStaticImageOverlayScheduleActions", + "locationName": "outputStaticImageOverlayScheduleActions" } } }, @@ -6385,6 +6502,13 @@ "ENABLED" ] }, + "FeatureActivationsOutputStaticImageOverlayScheduleActions": { + "type": "string", + "enum": [ + "DISABLED", + "ENABLED" + ] + }, "FecOutputIncludeFec": { "type": "string", "enum": [ @@ -6597,72 +6721,6 @@ "httpStatusCode": 504 } }, - "DescribeAccountConfigurationRequest": { - "type": "structure", - "members": { - } - }, - "DescribeAccountConfigurationResponse": { - "type": "structure", - "members": { - "AccountConfiguration": { - "shape": "AccountConfiguration", - "locationName": "accountConfiguration" - } - } - }, - "DescribeAccountConfigurationResultModel": { - "type": "structure", - "members": { - "AccountConfiguration": { - "shape": "AccountConfiguration", - "locationName": "accountConfiguration" - } - } - }, - "DescribeThumbnailsRequest": { - "type": "structure", - "members": { - "ChannelId": { - "shape": "__string", - "location": "uri", - "locationName": "channelId" - }, - "PipelineId": { - "shape": "__string", - "location": "querystring", - "locationName": "pipelineId" - }, - "ThumbnailType": { - "shape": "__string", - "location": "querystring", - "locationName": "thumbnailType" - } - }, - "required": [ - "ThumbnailType", - "PipelineId", - "ChannelId" - ] - }, - "DescribeThumbnailsResponse": { - "type": "structure", - "members": { - "ThumbnailDetails": { - "shape": "__listOfThumbnailDetail", - "locationName": "thumbnailDetails" - } - } - }, - "DescribeThumbnailsResultModel": { - "type": "structure", - "members": { - "ThumbnailDetails": { - "shape": "__listOfThumbnailDetail", - "locationName": "thumbnailDetails" - } - } - }, "GlobalConfiguration": { "type": "structure", "members": { @@ -11908,6 +11966,14 @@ "StaticImageDeactivateSettings": { "shape": "StaticImageDeactivateScheduleActionSettings", "locationName": "staticImageDeactivateSettings" + }, + "StaticImageOutputActivateSettings": { + "shape": "StaticImageOutputActivateScheduleActionSettings", + "locationName": "staticImageOutputActivateSettings" + }, + "StaticImageOutputDeactivateSettings": { + "shape": "StaticImageOutputDeactivateScheduleActionSettings", + "locationName": "staticImageOutputDeactivateSettings" } } }, @@ -12269,42 +12335,6 @@ "WEB_DELIVERY_ALLOWED" ] }, - "UpdateAccountConfigurationRequest": { - "type": "structure", - "members": { - "AccountConfiguration": { - "shape": "AccountConfiguration", - "locationName": "accountConfiguration" - } - } - }, - "UpdateAccountConfigurationRequestModel": { - "type": "structure", - "members": { - "AccountConfiguration": { - "shape": "AccountConfiguration", - "locationName": "accountConfiguration" - } - } - }, - "UpdateAccountConfigurationResponse": { - "type": "structure", - "members": { - "AccountConfiguration": { - "shape": "AccountConfiguration", - "locationName": "accountConfiguration" - } - } - }, - "UpdateAccountConfigurationResultModel": { - "type": "structure", - "members": { - "AccountConfiguration": { - "shape": "AccountConfiguration", - "locationName": "accountConfiguration" - } - } - }, "SmoothGroupAudioOnlyTimecodeControl": { "type": "string", "enum": [ @@ -12645,6 +12675,79 @@ } } }, + "StaticImageOutputActivateScheduleActionSettings": { + "type": "structure", + "members": { + "Duration": { + "shape": "__integerMin0", + "locationName": "duration" + }, + "FadeIn": { + "shape": "__integerMin0", + "locationName": "fadeIn" + }, + "FadeOut": { + "shape": "__integerMin0", + "locationName": "fadeOut" + }, + "Height": { + "shape": "__integerMin1", + "locationName": "height" + }, + "Image": { + "shape": "InputLocation", + "locationName": "image" + }, + "ImageX": { + "shape": "__integerMin0", + "locationName": "imageX" + }, + "ImageY": { + "shape": "__integerMin0", + "locationName": "imageY" + }, + "Layer": { + "shape": "__integerMin0Max7", + "locationName": "layer" + }, + "Opacity": { + "shape": "__integerMin0Max100", + "locationName": "opacity" + }, + "OutputNames": { + "shape": "__listOf__string", + "locationName": "outputNames" + }, + "Width": { + "shape": "__integerMin1", + "locationName": "width" + } + }, + "required": [ + "OutputNames", + "Image" + ] + }, + "StaticImageOutputDeactivateScheduleActionSettings": { + "type": "structure", + "members": { + "FadeOut": { + "shape": "__integerMin0", + "locationName": "fadeOut" + }, + "Layer": { + "shape": "__integerMin0Max7", + "locationName": "layer" + }, + "OutputNames": { + "shape": "__listOf__string", + "locationName": "outputNames" + } + }, + "required": [ + "OutputNames" + ] + }, "StaticKeySettings": { "type": "structure", "members": { @@ -13234,6 +13337,42 @@ "httpStatusCode": 422 } }, + "UpdateAccountConfigurationRequest": { + "type": "structure", + "members": { + "AccountConfiguration": { + "shape": "AccountConfiguration", + "locationName": "accountConfiguration" + } + } + }, + "UpdateAccountConfigurationRequestModel": { + "type": "structure", + "members": { + "AccountConfiguration": { + "shape": "AccountConfiguration", + "locationName": "accountConfiguration" + } + } + }, + "UpdateAccountConfigurationResponse": { + "type": "structure", + "members": { + "AccountConfiguration": { + "shape": "AccountConfiguration", + "locationName": "accountConfiguration" + } + } + }, + "UpdateAccountConfigurationResultModel": { + "type": "structure", + "members": { + "AccountConfiguration": { + "shape": "AccountConfiguration", + "locationName": "accountConfiguration" + } + } + }, "UpdateChannel": { "type": "structure", "members": { @@ -14076,6 +14215,15 @@ "__doubleMin1Max65535": { "type": "double" }, + "__doubleMin250Max5000": { + "type": "double" + }, + "__doubleMin32Max46": { + "type": "double" + }, + "__doubleMinNegative1Max5": { + "type": "double" + }, "__doubleMinNegative59Max0": { "type": "double" }, @@ -14126,6 +14274,11 @@ "min": 0, "max": 15 }, + "__integerMin0Max2000": { + "type": "integer", + "min": 0, + "max": 2000 + }, "__integerMin0Max255": { "type": "integer", "min": 0, @@ -14397,6 +14550,12 @@ "shape": "ChannelSummary" } }, + "__listOfColorCorrection": { + "type": "list", + "member": { + "shape": "ColorCorrection" + } + }, "__listOfFailoverCondition": { "type": "list", "member": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/medialive/2017-10-14/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/medialive/2017-10-14/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/medialive/2017-10-14/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/medialive/2017-10-14/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -24,6 +24,7 @@ "DeleteReservation": "Delete an expired reservation.", "DeleteSchedule": "Delete all schedule actions on a channel.", "DeleteTags": "Removes tags for a resource", + "DescribeAccountConfiguration": "Describe account configuration", "DescribeChannel": "Gets details about a channel", "DescribeInput": "Produces details about an input", "DescribeInputDevice": "Gets the details for the input device", @@ -34,7 +35,6 @@ "DescribeOffering": "Get details for an offering.", "DescribeReservation": "Get details for a reservation.", "DescribeSchedule": "Get a channel schedule", - "DescribeAccountConfiguration": "Get account configuration", "DescribeThumbnails": "Describe the latest thumbnails data.", "ListChannels": "Produces list of channels that have been created", "ListInputDeviceTransfers": "List input devices that are currently being transferred. List input devices that you are transferring from your AWS account or input devices that another AWS account is transferring to you.", @@ -49,7 +49,6 @@ "PurchaseOffering": "Purchase an offering and create a reservation.", "RebootInputDevice": "Send a reboot command to the specified input device. The device will begin rebooting within a few seconds of sending the command. When the reboot is complete, the device\u2019s connection status will change to connected.", "RejectInputDeviceTransfer": "Reject the transfer of the specified input device to your AWS account.", - "UpdateAccountConfiguration": "Update account configuration", "StartChannel": "Starts an existing channel", "StartInputDevice": "Start an input device that is attached to a MediaConnect flow. (There is no need to start a device that is attached to a MediaLive input; MediaLive starts the device when the channel starts.)", "StartInputDeviceMaintenanceWindow": "Start a maintenance window for the specified input device. Starting a maintenance window will give the device up to two hours to install software. If the device was streaming prior to the maintenance, it will resume streaming when the software is fully installed. Devices automatically install updates while they are powered on and their MediaLive channels are stopped. A maintenance window allows you to update a device without having to stop MediaLive channels that use the device. The device must remain powered on and connected to the internet for the duration of the maintenance.", @@ -58,6 +57,7 @@ "StopInputDevice": "Stop an input device that is attached to a MediaConnect flow. (There is no need to stop a device that is attached to a MediaLive input; MediaLive automatically stops the device when the channel stops.)", "StopMultiplex": "Stops a running multiplex. If the multiplex isn't running, this action has no effect.", "TransferInputDevice": "Start an input device transfer to another AWS account. After you make the request, the other account must accept or reject the transfer.", + "UpdateAccountConfiguration": "Update account configuration", "UpdateChannel": "Updates a channel.", "UpdateChannelClass": "Changes the class of the channel.", "UpdateInput": "Updates an input.", @@ -218,7 +218,7 @@ "ArchiveS3LogUploads": { "base": "Archive S3 Log Uploads", "refs": { - "ArchiveS3Settings$LogUploads": "When set to enabled, each upload to CDN or server will be logged." + "ArchiveS3Settings$LogUploads": "This field is unused and deprecated." } }, "ArchiveS3Settings": { @@ -656,6 +656,25 @@ "refs": { } }, + "ColorCorrection": { + "base": "Property of ColorCorrectionSettings. Used for custom color space conversion. The object identifies one 3D LUT file and specifies the input/output color space combination that the file will be used for.", + "refs": { + "__listOfColorCorrection$member": null + } + }, + "ColorCorrectionSettings": { + "base": "Property of encoderSettings. Controls color conversion when you are using 3D LUT files to perform color conversion on video.", + "refs": { + "EncoderSettings$ColorCorrectionSettings": "Color correction settings" + } + }, + "ColorSpace": { + "base": "Property of colorCorrections. When you are using 3D LUT files to perform color conversion on video, these are the supported color spaces.", + "refs": { + "ColorCorrection$InputColorSpace": "The color space of the input.", + "ColorCorrection$OutputColorSpace": "The color space of the output." + } + }, "ColorSpacePassthroughSettings": { "base": "Passthrough applies no color space conversion to the output", "refs": { @@ -723,6 +742,16 @@ "refs": { } }, + "DescribeAccountConfigurationResultModel": { + "base": "The account's configuration.", + "refs": { + } + }, + "DescribeThumbnailsResultModel": { + "base": "Thumbnail details for all the pipelines of a running channel.", + "refs": { + } + }, "DeviceSettingsSyncState": { "base": "The status of the action to synchronize the device configuration. If you change the configuration of the input device (for example, the maximum bitrate), MediaLive sends the new data to the device. The device might not update itself immediately. SYNCED means the device has updated its configuration. SYNCING means that it has not updated its configuration.", "refs": { @@ -1038,6 +1067,12 @@ "FeatureActivations$InputPrepareScheduleActions": "Enables the Input Prepare feature. You can create Input Prepare actions in the schedule only if this feature is enabled.\nIf you disable the feature on an existing schedule, make sure that you first delete all input prepare actions from the schedule." } }, + "FeatureActivationsOutputStaticImageOverlayScheduleActions": { + "base": "Feature Activations Output Static Image Overlay Schedule Actions", + "refs": { + "FeatureActivations$OutputStaticImageOverlayScheduleActions": "Enables the output static image overlay feature. Enabling this feature allows you to send channel schedule updates\nto display/clear/modify image overlays on an output-by-output bases." + } + }, "FecOutputIncludeFec": { "base": "Fec Output Include Fec", "refs": { @@ -1132,7 +1167,7 @@ "FrameCaptureS3LogUploads": { "base": "Frame Capture S3 Log Uploads", "refs": { - "FrameCaptureS3Settings$LogUploads": "When set to enabled, each upload to CDN or server will be logged." + "FrameCaptureS3Settings$LogUploads": "This field is unused and deprecated." } }, "FrameCaptureS3Settings": { @@ -1152,16 +1187,6 @@ "refs": { } }, - "DescribeAccountConfigurationResultModel": { - "base": "The account's configuration.", - "refs": { - } - }, - "DescribeThumbnailsResultModel": { - "base": "Thumbnail details for all the pipelines of a running channel.", - "refs": { - } - }, "GlobalConfiguration": { "base": "Global Configuration", "refs": { @@ -1616,7 +1641,7 @@ "HlsS3LogUploads": { "base": "Hls S3 Log Uploads", "refs": { - "HlsS3Settings$LogUploads": "When set to enabled, each fragment upload to CDN or server will be logged." + "HlsS3Settings$LogUploads": "This field is unused and deprecated." } }, "HlsS3Settings": { @@ -1927,6 +1952,7 @@ "DvbSubDestinationSettings$Font": "External font file used for caption burn-in. File extension must be 'ttf' or 'tte'. Although the user can select output fonts for many different types of input captions, embedded, STL and teletext sources use a strict grid system. Using external fonts with these caption sources could cause unexpected display of proportional fonts. All burn-in and DVB-Sub font settings must match.", "InputLossBehavior$InputLossImageSlate": "When input loss image type is \"slate\" these fields specify the parameters for accessing the slate.", "StaticImageActivateScheduleActionSettings$Image": "The location and filename of the image file to overlay on the video. The file must be a 32-bit BMP, PNG, or TGA file, and must not be larger (in pixels) than the input video.", + "StaticImageOutputActivateScheduleActionSettings$Image": "The location and filename of the image file to overlay on the video. The file must be a 32-bit BMP, PNG, or TGA file, and must not be larger (in pixels) than the input video.", "StaticKeySettings$KeyProviderServer": "The URL of the license server used for protecting content." } }, @@ -3187,16 +3213,6 @@ "Scte35DeliveryRestrictions$WebDeliveryAllowedFlag": "Corresponds to SCTE-35 web_delivery_allowed_flag parameter." } }, - "UpdateAccountConfigurationRequestModel": { - "base": "The desired new account configuration.", - "refs": { - } - }, - "UpdateAccountConfigurationResultModel": { - "base": "The account's updated configuration.", - "refs": { - } - }, "SmoothGroupAudioOnlyTimecodeControl": { "base": "Smooth Group Audio Only Timecode Control", "refs": { @@ -3281,6 +3297,18 @@ "ScheduleActionSettings$StaticImageDeactivateSettings": "Action to deactivate a static image overlay" } }, + "StaticImageOutputActivateScheduleActionSettings": { + "base": "Settings for the action to activate a static image.", + "refs": { + "ScheduleActionSettings$StaticImageOutputActivateSettings": "Action to activate a static image overlay in one or more specified outputs" + } + }, + "StaticImageOutputDeactivateScheduleActionSettings": { + "base": "Settings for the action to deactivate the image in a specific layer.", + "refs": { + "ScheduleActionSettings$StaticImageOutputDeactivateSettings": "Action to deactivate a static image overlay in one or more specified outputs" + } + }, "StaticKeySettings": { "base": "Static Key Settings", "refs": { @@ -3382,7 +3410,7 @@ "ThumbnailState": { "base": "Thumbnail State", "refs": { - "ThumbnailConfiguration$State": "Whether Thumbnail is enabled." + "ThumbnailConfiguration$State": "Enables the thumbnail feature. The feature generates thumbnails of the incoming video in each pipeline in the channel. AUTO turns the feature on, DISABLE turns the feature off." } }, "ThumbnailType": { @@ -3481,6 +3509,16 @@ "refs": { } }, + "UpdateAccountConfigurationRequestModel": { + "base": "The desired new account configuration.", + "refs": { + } + }, + "UpdateAccountConfigurationResultModel": { + "base": "The account's updated configuration.", + "refs": { + } + }, "UpdateChannel": { "base": null, "refs": { @@ -3735,6 +3773,24 @@ "NielsenNaesIiNw$Sid": "Enter the Nielsen Source ID (SID) to include in the watermark" } }, + "__doubleMin250Max5000": { + "base": null, + "refs": { + "AbWatermarkingCustomProfile$EmbeddingFrequency": "The frequency with which watermarks will be embedded, in milliseconds." + } + }, + "__doubleMin32Max46": { + "base": null, + "refs": { + "AbWatermarkingCustomProfile$TargetPsnr": "The target PSNR of the watermarked frame" + } + }, + "__doubleMinNegative1Max5": { + "base": null, + "refs": { + "AbWatermarkingCustomProfile$SceneCut": "The number of frames after scene-cut to embed the watermark" + } + }, "__doubleMinNegative59Max0": { "base": null, "refs": { @@ -3822,6 +3878,12 @@ "StaticImageActivateScheduleActionSettings$ImageX": "Placement of the left edge of the overlay relative to the left edge of the video frame, in pixels. 0 (the default) is the left edge of the frame. If the placement causes the overlay to extend beyond the right edge of the underlying video, then the overlay is cropped on the right.", "StaticImageActivateScheduleActionSettings$ImageY": "Placement of the top edge of the overlay relative to the top edge of the video frame, in pixels. 0 (the default) is the top edge of the frame. If the placement causes the overlay to extend beyond the bottom edge of the underlying video, then the overlay is cropped on the bottom.", "StaticImageDeactivateScheduleActionSettings$FadeOut": "The time in milliseconds for the image to fade out. Default is 0 (no fade-out).", + "StaticImageOutputActivateScheduleActionSettings$Duration": "The duration in milliseconds for the image to remain on the video. If omitted or set to 0 the duration is unlimited and the image will remain until it is explicitly deactivated.", + "StaticImageOutputActivateScheduleActionSettings$FadeIn": "The time in milliseconds for the image to fade in. The fade-in starts at the start time of the overlay. Default is 0 (no fade-in).", + "StaticImageOutputActivateScheduleActionSettings$FadeOut": "Applies only if a duration is specified. The time in milliseconds for the image to fade out. The fade-out starts when the duration time is hit, so it effectively extends the duration. Default is 0 (no fade-out).", + "StaticImageOutputActivateScheduleActionSettings$ImageX": "Placement of the left edge of the overlay relative to the left edge of the video frame, in pixels. 0 (the default) is the left edge of the frame. If the placement causes the overlay to extend beyond the right edge of the underlying video, then the overlay is cropped on the right.", + "StaticImageOutputActivateScheduleActionSettings$ImageY": "Placement of the top edge of the overlay relative to the top edge of the video frame, in pixels. 0 (the default) is the top edge of the frame. If the placement causes the overlay to extend beyond the bottom edge of the underlying video, then the overlay is cropped on the bottom.", + "StaticImageOutputDeactivateScheduleActionSettings$FadeOut": "The time in milliseconds for the image to fade out. Default is 0 (no fade-out).", "UdpGroupSettings$TimedMetadataId3Period": "Timed Metadata interval in seconds." } }, @@ -3837,6 +3899,7 @@ "refs": { "H264Settings$BufFillPct": "Percentage of the buffer that should initially be filled (HRD buffer model).", "StaticImageActivateScheduleActionSettings$Opacity": "Opacity of image where 0 is transparent and 100 is fully opaque. Default is 100.", + "StaticImageOutputActivateScheduleActionSettings$Opacity": "Opacity of image where 0 is transparent and 100 is fully opaque. Default is 100.", "VideoDescription$Sharpness": "Changes the strength of the anti-alias filter used for scaling. 0 is the softest setting, 100 is the sharpest. A setting of 50 is recommended for most content." } }, @@ -3886,6 +3949,11 @@ "InputChannelLevel$InputChannel": "The index of the input channel used as a source." } }, + "__integerMin0Max2000": { + "base": null, + "refs": { + } + }, "__integerMin0Max255": { "base": null, "refs": { @@ -3964,7 +4032,9 @@ "H264Settings$GopNumBFrames": "Number of B-frames between reference frames.", "Mpeg2Settings$GopNumBFrames": "Relates to the GOP structure. The number of B-frames between reference frames. If you do not know what a B-frame is, use the default.", "StaticImageActivateScheduleActionSettings$Layer": "The number of the layer, 0 to 7. There are 8 layers that can be overlaid on the video, each layer with a different image. The layers are in Z order, which means that overlays with higher values of layer are inserted on top of overlays with lower values of layer. Default is 0.", - "StaticImageDeactivateScheduleActionSettings$Layer": "The image overlay layer to deactivate, 0 to 7. Default is 0." + "StaticImageDeactivateScheduleActionSettings$Layer": "The image overlay layer to deactivate, 0 to 7. Default is 0.", + "StaticImageOutputActivateScheduleActionSettings$Layer": "The number of the layer, 0 to 7. There are 8 layers that can be overlaid on the video, each layer with a different image. The layers are in Z order, which means that overlays with higher values of layer are inserted on top of overlays with lower values of layer. Default is 0.", + "StaticImageOutputDeactivateScheduleActionSettings$Layer": "The image overlay layer to deactivate, 0 to 7. Default is 0." } }, "__integerMin0Max8191": { @@ -3999,7 +4069,9 @@ "RtmpOutputSettings$ConnectionRetryInterval": "Number of seconds to wait before retrying a connection to the Flash Media server if the connection is lost.", "Scte27SourceSettings$Pid": "The pid field is used in conjunction with the caption selector languageCode field as follows:\n - Specify PID and Language: Extracts captions from that PID; the language is \"informational\".\n - Specify PID and omit Language: Extracts the specified PID.\n - Omit PID and specify Language: Extracts the specified language, whichever PID that happens to be.\n - Omit PID and omit Language: Valid only if source is DVB-Sub that is being passed through; all languages will be passed through.", "StaticImageActivateScheduleActionSettings$Height": "The height of the image when inserted into the video, in pixels. The overlay will be scaled up or down to the specified height. Leave blank to use the native height of the overlay.", - "StaticImageActivateScheduleActionSettings$Width": "The width of the image when inserted into the video, in pixels. The overlay will be scaled up or down to the specified width. Leave blank to use the native width of the overlay." + "StaticImageActivateScheduleActionSettings$Width": "The width of the image when inserted into the video, in pixels. The overlay will be scaled up or down to the specified width. Leave blank to use the native width of the overlay.", + "StaticImageOutputActivateScheduleActionSettings$Height": "The height of the image when inserted into the video, in pixels. The overlay will be scaled up or down to the specified height. Leave blank to use the native height of the overlay.", + "StaticImageOutputActivateScheduleActionSettings$Width": "The width of the image when inserted into the video, in pixels. The overlay will be scaled up or down to the specified width. Leave blank to use the native width of the overlay." } }, "__integerMin100": { @@ -4277,6 +4349,12 @@ "ListChannelsResultModel$Channels": null } }, + "__listOfColorCorrection": { + "base": null, + "refs": { + "ColorCorrectionSettings$GlobalColorCorrections": "An array of colorCorrections that applies when you are using 3D LUT files to perform color conversion on video. Each colorCorrection contains one 3D LUT file (that defines the color mapping for converting an input color space to an output color space), and the input/output combination that this 3D LUT file applies to. MediaLive reads the color space in the input metadata, determines the color space that you have specified for the output, and finds and uses the LUT file that applies to this combination." + } + }, "__listOfFailoverCondition": { "base": null, "refs": { @@ -4548,6 +4626,7 @@ "Input$InputPartnerIds": "A list of IDs for all Inputs which are partners of this one.", "Input$SecurityGroups": "A list of IDs for all the Input Security Groups attached to the input.", "InputDevice$MedialiveInputArns": "An array of the ARNs for the MediaLive inputs attached to the device. Returned only if the outputType is MEDIALIVE_INPUT.", + "InputDeviceAttachmentConfiguration$Inputs": "The ARN of each input attached to the device. Only present when state is ATTACHED_EML_INPUT", "InputDeviceNetworkSettings$DnsAddresses": "The DNS addresses of the input device.", "InputDeviceSummary$MedialiveInputArns": "An array of the ARNs for the MediaLive inputs attached to the device. Returned only if the outputType is MEDIALIVE_INPUT.", "InputPrepareScheduleActionSettings$UrlPath": "The value for the variable portion of the URL for the dynamic input, for this instance of the input. Each time you use the same dynamic input in an input switch action, you can provide a different value, in order to connect the input to a different content source.", @@ -4559,6 +4638,8 @@ "MultiplexSummary$AvailabilityZones": "A list of availability zones for the multiplex.", "Output$AudioDescriptionNames": "The names of the AudioDescriptions used as audio sources for this output.", "Output$CaptionDescriptionNames": "The names of the CaptionDescriptions used as caption sources for this output.", + "StaticImageOutputActivateScheduleActionSettings$OutputNames": "The name(s) of the output(s) the activation should apply to.", + "StaticImageOutputDeactivateScheduleActionSettings$OutputNames": "The name(s) of the output(s) the deactivation should apply to.", "UpdateInput$InputSecurityGroups": "A list of security groups referenced by IDs to attach to the input.", "VpcOutputSettings$PublicAddressAllocationIds": "List of public address allocation ids to associate with ENIs that will be created in Output VPC.\nMust specify one for SINGLE_PIPELINE, two for STANDARD channels\n", "VpcOutputSettings$SecurityGroupIds": "A list of up to 5 EC2 VPC security group IDs to attach to the Output VPC network interfaces.\nIf none are specified then the VPC default security group will be used\n", @@ -4635,6 +4716,7 @@ "ChannelSummary$Name": "The name of the channel. (user-mutable)", "ChannelSummary$RoleArn": "The Amazon Resource Name (ARN) of the role assumed when running the Channel.", "ClaimDeviceRequest$Id": "The id of the device you want to claim.", + "ColorCorrection$Uri": "The URI of the 3D LUT file. The protocol must be 's3:' or 's3ssl:':.", "CreateChannel$Name": "Name of channel.", "CreateChannel$RequestId": "Unique request ID to be specified. This is needed to prevent retries from\ncreating multiple resources.\n", "CreateChannel$Reserved": "Deprecated field that's only usable by whitelisted customers.", @@ -4677,8 +4759,11 @@ "InputAttachment$InputAttachmentName": "User-specified name for the attachment. This is required if the user wants to use this input in an input switch action.", "InputAttachment$InputId": "The ID of the input", "InputDestination$Ip": "The system-generated static IP address of endpoint.\nIt remains fixed for the lifetime of the input.\n", + "InputDestination$NetworkRouteCidr": "This is the networkRouteCidr of the on-prem push input. This is required for inputs of this type so that\nthe encoder can properly route in the input.\n", "InputDestination$Port": "The port number for the input.", "InputDestination$Url": "This represents the endpoint that the customer stream will be\npushed to.\n", + "InputDestinationRequest$NetworkRouteCidr": "If the push input has an input location of ON-PREM it's a requirement to specify what the route of the input\nis going to be on the customer local network.\n", + "InputDestinationRequest$StaticIpAddress": "If the push input has an input location of ON-PREM it's a requirement to specify what the ip address\nof the input is going to be on the customer local network.\n", "InputDestinationRequest$StreamName": "A unique name for the location the RTMP stream is being pushed\nto.\n", "InputDestinationVpc$AvailabilityZone": "The availability zone of the Input destination.\n", "InputDestinationVpc$NetworkInterfaceId": "The network interface ID of the Input destination in the VPC.\n", @@ -4688,7 +4773,19 @@ "InputDevice$MacAddress": "The network MAC address of the input device.", "InputDevice$Name": "A name that you specify for the input device.", "InputDevice$SerialNumber": "The unique serial number of the input device.", + "InputDeviceConfigurableFlowSettings$FlowArn": "The unique ARN of the flow.", + "InputDeviceConfigurableFlowSettings$RoleArn": "The ARN of the role used to access EMX and Secrets Manager on behalf of the customer.", + "InputDeviceConfigurableFlowSettings$SecretArn": "The ARN of the secret used to encrypt the stream.", + "InputDeviceConfigurableFlowSettings$SourceName": "The name of the flow source to stream to.", + "InputDeviceConfigurableSettings$InputResolution": "Choose the resolution of the Link device's source (HD or UHD). Make sure the resolution matches the current source from the device. This value determines MediaLive resource allocation and billing for this input. Only UHD devices can specify this parameter.", "InputDeviceConfigurationValidationError$Message": "The error message.", + "InputDeviceFlowSettings$EncryptedSecret": "The secret used to encrypt the stream.", + "InputDeviceFlowSettings$EndpointUri": "The endpoint to stream to.", + "InputDeviceFlowSettings$FlowArn": "The unique ARN of the flow.", + "InputDeviceFlowSettings$RoleArn": "The ARN of the role used to access EMX and Secrets Manager on behalf of the customer.", + "InputDeviceFlowSettings$SecretArn": "The ARN of the secret used to encrypt the stream.", + "InputDeviceFlowSettings$SourceName": "The name of the flow source to stream to.", + "InputDeviceFlowSettings$StreamId": "The id of the stream.", "InputDeviceMediaConnectConfigurableSettings$FlowArn": "The ARN of the MediaConnect flow to attach this device to.", "InputDeviceMediaConnectConfigurableSettings$RoleArn": "The ARN for the role that MediaLive assumes to access the attached flow and secret. For more information about how to create this role, see the MediaLive user guide.", "InputDeviceMediaConnectConfigurableSettings$SecretArn": "The ARN for the secret that holds the encryption key to encrypt the content output by the device.", @@ -4701,6 +4798,7 @@ "InputDeviceNetworkSettings$IpAddress": "The IP address of the input device.", "InputDeviceNetworkSettings$SubnetMask": "The subnet mask of the input device.", "InputDeviceRequest$Id": "The unique ID for the device.", + "InputDeviceSettings$AvailabilityZone": "The currently assigned availability zone of the input device.", "InputDeviceSettings$Id": "The unique ID for the device.", "InputDeviceSummary$Arn": "The unique ARN of the input device.", "InputDeviceSummary$AvailabilityZone": "The Availability Zone associated with this input device.", @@ -4708,6 +4806,7 @@ "InputDeviceSummary$MacAddress": "The network MAC address of the input device.", "InputDeviceSummary$Name": "A name that you specify for the input device.", "InputDeviceSummary$SerialNumber": "The unique serial number of the input device.", + "InputDeviceUhdSettings$InputResolution": "The resolution of the Link device's source (HD or UHD). This value determines MediaLive resource allocation and billing for this input.", "InputLocation$PasswordParam": "key used to extract the password from EC2 Parameter store", "InputLocation$Username": "Username if credentials are required to access a file or publishing point. This can be either a plaintext username, or a reference to an AWS parameter store name from which the username can be retrieved. AWS Parameter store format: \"ssm://\"", "InputPrepareScheduleActionSettings$InputAttachmentNameReference": "The name of the input attachment that should be prepared by this action. If no name is provided, the action will stop the most recent prepare (if any) when activated.", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/medialive/2017-10-14/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/medialive/2017-10-14/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/medialive/2017-10-14/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/medialive/2017-10-14/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackage/2017-10-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackage/2017-10-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackage/2017-10-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackage/2017-10-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1921,7 +1921,8 @@ "ManifestLayout": { "enum": [ "FULL", - "COMPACT" + "COMPACT", + "DRM_TOP_LEVEL_COMPACT" ], "type": "string" }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackage/2017-10-12/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackage/2017-10-12/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackage/2017-10-12/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackage/2017-10-12/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -198,7 +198,7 @@ "ManifestLayout" : { "base" : null, "refs" : { - "DashPackage$ManifestLayout" : "Determines the position of some tags in the Media Presentation Description (MPD). When set to FULL, elements like SegmentTemplate and ContentProtection are included in each Representation. When set to COMPACT, duplicate elements are combined and presented at the AdaptationSet level." + "DashPackage$ManifestLayout" : "Determines the position of some tags in the Media Presentation Description (MPD). When set to FULL, elements like SegmentTemplate and ContentProtection are included in each Representation. When set to COMPACT, duplicate elements are combined and presented at the AdaptationSet level. When set to DRM_TOP_LEVEL_COMPACT, content protection elements are placed the MPD level and referenced at the AdaptationSet level." } }, "MssEncryption" : { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackage/2017-10-12/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackage/2017-10-12/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackage/2017-10-12/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackage/2017-10-12/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -276,7 +276,8 @@ {"shape":"ThrottlingException"}, {"shape":"InternalServerException"}, {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} ] }, "ListOriginEndpoints":{ @@ -464,7 +465,7 @@ "Arn":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"} + "Description":{"shape":"ResourceDescription"} } }, "ChannelGroupsList":{ @@ -490,7 +491,7 @@ "ChannelGroupName":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"} + "Description":{"shape":"ResourceDescription"} } }, "CmafEncryptionMethod":{ @@ -561,7 +562,7 @@ "EgressDomain":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"}, + "Description":{"shape":"ResourceDescription"}, "Tags":{"shape":"TagMap"} } }, @@ -606,7 +607,7 @@ "ChannelGroupName":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"}, + "Description":{"shape":"ResourceDescription"}, "IngestEndpoints":{"shape":"IngestEndpointList"}, "Tags":{"shape":"TagMap"} } @@ -619,7 +620,8 @@ "ChildManifestName":{"shape":"ManifestName"}, "ScteHls":{"shape":"ScteHls"}, "ManifestWindowSeconds":{"shape":"CreateHlsManifestConfigurationManifestWindowSecondsInteger"}, - "ProgramDateTimeIntervalSeconds":{"shape":"CreateHlsManifestConfigurationProgramDateTimeIntervalSecondsInteger"} + "ProgramDateTimeIntervalSeconds":{"shape":"CreateHlsManifestConfigurationProgramDateTimeIntervalSecondsInteger"}, + "FilterConfiguration":{"shape":"FilterConfiguration"} } }, "CreateHlsManifestConfigurationManifestWindowSecondsInteger":{ @@ -646,7 +648,8 @@ "ChildManifestName":{"shape":"ManifestName"}, "ScteHls":{"shape":"ScteHls"}, "ManifestWindowSeconds":{"shape":"CreateLowLatencyHlsManifestConfigurationManifestWindowSecondsInteger"}, - "ProgramDateTimeIntervalSeconds":{"shape":"CreateLowLatencyHlsManifestConfigurationProgramDateTimeIntervalSecondsInteger"} + "ProgramDateTimeIntervalSeconds":{"shape":"CreateLowLatencyHlsManifestConfigurationProgramDateTimeIntervalSecondsInteger"}, + "FilterConfiguration":{"shape":"FilterConfiguration"} } }, "CreateLowLatencyHlsManifestConfigurationManifestWindowSecondsInteger":{ @@ -910,6 +913,26 @@ "CmafEncryptionMethod":{"shape":"CmafEncryptionMethod"} } }, + "FilterConfiguration":{ + "type":"structure", + "members":{ + "ManifestFilter":{"shape":"FilterConfigurationManifestFilterString"}, + "Start":{"shape":"Timestamp"}, + "End":{"shape":"Timestamp"}, + "TimeDelaySeconds":{"shape":"FilterConfigurationTimeDelaySecondsInteger"} + } + }, + "FilterConfigurationManifestFilterString":{ + "type":"string", + "max":1024, + "min":1 + }, + "FilterConfigurationTimeDelaySecondsInteger":{ + "type":"integer", + "box":true, + "max":1209600, + "min":0 + }, "GetChannelGroupRequest":{ "type":"structure", "required":["ChannelGroupName"], @@ -936,7 +959,7 @@ "EgressDomain":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"}, + "Description":{"shape":"ResourceDescription"}, "Tags":{ "shape":"TagMap", "locationName":"tags" @@ -972,7 +995,7 @@ "members":{ "ChannelGroupName":{"shape":"String"}, "ChannelName":{"shape":"String"}, - "Policy":{"shape":"String"} + "Policy":{"shape":"PolicyText"} } }, "GetChannelRequest":{ @@ -1009,7 +1032,7 @@ "ChannelGroupName":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"}, + "Description":{"shape":"ResourceDescription"}, "IngestEndpoints":{"shape":"IngestEndpointList"}, "Tags":{"shape":"TagMap"} } @@ -1026,7 +1049,8 @@ "ChildManifestName":{"shape":"ResourceName"}, "ManifestWindowSeconds":{"shape":"Integer"}, "ProgramDateTimeIntervalSeconds":{"shape":"Integer"}, - "ScteHls":{"shape":"ScteHls"} + "ScteHls":{"shape":"ScteHls"}, + "FilterConfiguration":{"shape":"FilterConfiguration"} } }, "GetHlsManifests":{ @@ -1045,7 +1069,8 @@ "ChildManifestName":{"shape":"ResourceName"}, "ManifestWindowSeconds":{"shape":"Integer"}, "ProgramDateTimeIntervalSeconds":{"shape":"Integer"}, - "ScteHls":{"shape":"ScteHls"} + "ScteHls":{"shape":"ScteHls"}, + "FilterConfiguration":{"shape":"FilterConfiguration"} } }, "GetLowLatencyHlsManifests":{ @@ -1086,10 +1111,10 @@ "Policy" ], "members":{ - "ChannelGroupName":{"shape":"String"}, - "ChannelName":{"shape":"String"}, - "OriginEndpointName":{"shape":"String"}, - "Policy":{"shape":"String"} + "ChannelGroupName":{"shape":"ResourceName"}, + "ChannelName":{"shape":"ResourceName"}, + "OriginEndpointName":{"shape":"ResourceName"}, + "Policy":{"shape":"PolicyText"} } }, "GetOriginEndpointRequest":{ @@ -1666,7 +1691,7 @@ "EgressDomain":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"}, + "Description":{"shape":"ResourceDescription"}, "Tags":{ "shape":"TagMap", "locationName":"tags" @@ -1708,7 +1733,7 @@ "ChannelGroupName":{"shape":"String"}, "CreatedAt":{"shape":"Timestamp"}, "ModifiedAt":{"shape":"Timestamp"}, - "Description":{"shape":"String"}, + "Description":{"shape":"ResourceDescription"}, "IngestEndpoints":{"shape":"IngestEndpointList"}, "Tags":{ "shape":"TagMap", @@ -1829,7 +1854,10 @@ "MEMBER_MIN_LENGTH", "MEMBER_MAX_LENGTH", "MEMBER_INVALID_ENUM_VALUE", - "MEMBER_DOES_NOT_MATCH_PATTERN" + "MEMBER_DOES_NOT_MATCH_PATTERN", + "INVALID_MANIFEST_FILTER", + "INVALID_TIME_DELAY_SECONDS", + "END_TIME_EARLIER_THAN_START_TIME" ] } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -271,6 +271,27 @@ "Encryption$EncryptionMethod": "

The encryption method to use.

" } }, + "FilterConfiguration": { + "base": "

Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest.

", + "refs": { + "CreateHlsManifestConfiguration$FilterConfiguration": null, + "CreateLowLatencyHlsManifestConfiguration$FilterConfiguration": null, + "GetHlsManifestConfiguration$FilterConfiguration": null, + "GetLowLatencyHlsManifestConfiguration$FilterConfiguration": null + } + }, + "FilterConfigurationManifestFilterString": { + "base": null, + "refs": { + "FilterConfiguration$ManifestFilter": "

Optionally specify one or more manifest filters for all of your manifest egress requests. When you include a manifest filter, note that you cannot use an identical manifest filter query parameter for this manifest's endpoint URL.

" + } + }, + "FilterConfigurationTimeDelaySecondsInteger": { + "base": null, + "refs": { + "FilterConfiguration$TimeDelaySeconds": "

Optionally specify the time delay for all of your manifest egress requests. Enter a value that is smaller than your endpoint's startover window. When you include time delay, note that you cannot use time delay query parameters for this manifest's endpoint URL.

" + } + }, "GetChannelGroupRequest": { "base": null, "refs": { @@ -484,6 +505,8 @@ "PolicyText": { "base": null, "refs": { + "GetChannelPolicyResponse$Policy": "

The policy assigned to the channel.

", + "GetOriginEndpointPolicyResponse$Policy": "

The policy assigned to the origin endpoint.

", "PutChannelPolicyRequest$Policy": "

The policy to attach to the specified channel.

", "PutOriginEndpointPolicyRequest$Policy": "

The policy to attach to the specified origin endpoint.

" } @@ -523,14 +546,22 @@ "ResourceDescription": { "base": null, "refs": { + "ChannelGroupListConfiguration$Description": "

Any descriptive information that you want to add to the channel group for future identification purposes.

", + "ChannelListConfiguration$Description": "

Any descriptive information that you want to add to the channel for future identification purposes.

", "CreateChannelGroupRequest$Description": "

Enter any descriptive text that helps you to identify the channel group.

", + "CreateChannelGroupResponse$Description": "

The description for your channel group.

", "CreateChannelRequest$Description": "

Enter any descriptive text that helps you to identify the channel.

", + "CreateChannelResponse$Description": "

The description for your channel.

", "CreateOriginEndpointRequest$Description": "

Enter any descriptive text that helps you to identify the origin endpoint.

", "CreateOriginEndpointResponse$Description": "

The description for your origin endpoint.

", + "GetChannelGroupResponse$Description": "

The description for your channel group.

", + "GetChannelResponse$Description": "

The description for your channel.

", "GetOriginEndpointResponse$Description": "

The description for your origin endpoint.

", "OriginEndpointListConfiguration$Description": "

Any descriptive information that you want to add to the origin endpoint for future identification purposes.

", "UpdateChannelGroupRequest$Description": "

Any descriptive information that you want to add to the channel group for future identification purposes.

", + "UpdateChannelGroupResponse$Description": "

The description for your channel group.

", "UpdateChannelRequest$Description": "

Any descriptive information that you want to add to the channel for future identification purposes.

", + "UpdateChannelResponse$Description": "

The description for your channel.

", "UpdateOriginEndpointRequest$Description": "

Any descriptive information that you want to add to the origin endpoint for future identification purposes.

", "UpdateOriginEndpointResponse$Description": "

The description of the origin endpoint.

" } @@ -570,6 +601,9 @@ "GetOriginEndpointPolicyRequest$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "GetOriginEndpointPolicyRequest$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", "GetOriginEndpointPolicyRequest$OriginEndpointName": "

The name that describes the origin endpoint. The name is the primary identifier for the origin endpoint, and and must be unique for your account in the AWS Region and channel.

", + "GetOriginEndpointPolicyResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", + "GetOriginEndpointPolicyResponse$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", + "GetOriginEndpointPolicyResponse$OriginEndpointName": "

The name that describes the origin endpoint. The name is the primary identifier for the origin endpoint, and and must be unique for your account in the AWS Region and channel.

", "GetOriginEndpointRequest$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "GetOriginEndpointRequest$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", "GetOriginEndpointRequest$OriginEndpointName": "

The name that describes the origin endpoint. The name is the primary identifier for the origin endpoint, and and must be unique for your account in the AWS Region and channel.

", @@ -703,38 +737,27 @@ "AccessDeniedException$Message": null, "ChannelGroupListConfiguration$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "ChannelGroupListConfiguration$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", - "ChannelGroupListConfiguration$Description": "

Any descriptive information that you want to add to the channel group for future identification purposes.

", "ChannelListConfiguration$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "ChannelListConfiguration$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", "ChannelListConfiguration$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", - "ChannelListConfiguration$Description": "

Any descriptive information that you want to add to the channel for future identification purposes.

", "ConflictException$Message": null, "CreateChannelGroupResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "CreateChannelGroupResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "CreateChannelGroupResponse$EgressDomain": "

The output domain where the source stream should be sent. Integrate the egress domain with a downstream CDN (such as Amazon CloudFront) or playback device.

", - "CreateChannelGroupResponse$Description": "

The description for your channel group.

", "CreateChannelResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "CreateChannelResponse$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", "CreateChannelResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", - "CreateChannelResponse$Description": "

The description for your channel.

", "CreateOriginEndpointResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "GetChannelGroupResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "GetChannelGroupResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "GetChannelGroupResponse$EgressDomain": "

The output domain where the source stream should be sent. Integrate the domain with a downstream CDN (such as Amazon CloudFront) or playback device.

", - "GetChannelGroupResponse$Description": "

The description for your channel group.

", "GetChannelPolicyResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "GetChannelPolicyResponse$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", - "GetChannelPolicyResponse$Policy": "

The policy assigned to the channel.

", "GetChannelResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "GetChannelResponse$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", "GetChannelResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", - "GetChannelResponse$Description": "

The description for your channel.

", "GetHlsManifestConfiguration$Url": "

The egress domain URL for stream delivery from MediaPackage.

", "GetLowLatencyHlsManifestConfiguration$Url": "

The egress domain URL for stream delivery from MediaPackage.

", - "GetOriginEndpointPolicyResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", - "GetOriginEndpointPolicyResponse$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", - "GetOriginEndpointPolicyResponse$OriginEndpointName": "

The name that describes the origin endpoint. The name is the primary identifier for the origin endpoint, and and must be unique for your account in the AWS Region and channel.

", - "GetOriginEndpointPolicyResponse$Policy": "

The policy assigned to the origin endpoint.

", "GetOriginEndpointResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "IngestEndpoint$Id": "

The system-generated unique identifier for the IngestEndpoint.

", "IngestEndpoint$Url": "

The ingest domain URL where the source stream should be sent.

", @@ -754,11 +777,9 @@ "UpdateChannelGroupResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", "UpdateChannelGroupResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "UpdateChannelGroupResponse$EgressDomain": "

The output domain where the source stream is sent. Integrate the domain with a downstream CDN (such as Amazon CloudFront) or playback device.

", - "UpdateChannelGroupResponse$Description": "

The description for your channel group.

", "UpdateChannelResponse$Arn": "

The Amazon Resource Name (ARN) associated with the resource.

", "UpdateChannelResponse$ChannelName": "

The name that describes the channel. The name is the primary identifier for the channel, and must be unique for your account in the AWS Region and channel group.

", "UpdateChannelResponse$ChannelGroupName": "

The name that describes the channel group. The name is the primary identifier for the channel group, and must be unique for your account in the AWS Region.

", - "UpdateChannelResponse$Description": "

The description for your channel.

", "UpdateOriginEndpointResponse$Arn": "

The ARN associated with the resource.

", "ValidationException$Message": null } @@ -832,6 +853,8 @@ "CreateChannelResponse$ModifiedAt": "

The date and time the channel was modified.

", "CreateOriginEndpointResponse$CreatedAt": "

The date and time the origin endpoint was created.

", "CreateOriginEndpointResponse$ModifiedAt": "

The date and time the origin endpoint was modified.

", + "FilterConfiguration$Start": "

Optionally specify the start time for all of your manifest egress requests. When you include start time, note that you cannot use start time query parameters for this manifest's endpoint URL.

", + "FilterConfiguration$End": "

Optionally specify the end time for all of your manifest egress requests. When you include end time, note that you cannot use end time query parameters for this manifest's endpoint URL.

", "GetChannelGroupResponse$CreatedAt": "

The date and time the channel group was created.

", "GetChannelGroupResponse$ModifiedAt": "

The date and time the channel group was modified.

", "GetChannelResponse$CreatedAt": "

The date and time the channel was created.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediapackagev2/2022-12-25/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediapackagev2/2022-12-25/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,54 +1,54 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://mediapackagev2-fips.us-gov-east-1.api.aws" + "url": "https://mediapackagev2-fips.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://mediapackagev2-fips.us-gov-east-1.amazonaws.com" + "url": "https://mediapackagev2-fips.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://mediapackagev2.us-gov-east-1.api.aws" + "url": "https://mediapackagev2.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://mediapackagev2.us-gov-east-1.amazonaws.com" + "url": "https://mediapackagev2.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": false } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -99,108 +99,108 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://mediapackagev2-fips.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://mediapackagev2-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://mediapackagev2-fips.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://mediapackagev2.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://mediapackagev2.us-iso-east-1.c2s.ic.gov" + "url": "https://mediapackagev2.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://mediapackagev2-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://mediapackagev2-fips.us-east-1.amazonaws.com" + "url": "https://mediapackagev2-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://mediapackagev2.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://mediapackagev2.us-east-1.amazonaws.com" + "url": "https://mediapackagev2.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": false } }, @@ -210,8 +210,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -223,8 +223,8 @@ } }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -234,8 +234,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -247,21 +247,34 @@ } }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -272,8 +285,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediatailor/2018-04-23/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediatailor/2018-04-23/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediatailor/2018-04-23/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediatailor/2018-04-23/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -517,6 +517,17 @@ "type":"list", "member":{"shape":"KeyValuePair"} }, + "AdBreakOpportunities":{ + "type":"list", + "member":{"shape":"AdBreakOpportunity"} + }, + "AdBreakOpportunity":{ + "type":"structure", + "required":["OffsetMillis"], + "members":{ + "OffsetMillis":{"shape":"__long"} + } + }, "AdMarkerPassthrough":{ "type":"structure", "members":{ @@ -1266,6 +1277,7 @@ "DescribeVodSourceResponse":{ "type":"structure", "members":{ + "AdBreakOpportunities":{"shape":"AdBreakOpportunities"}, "Arn":{"shape":"__string"}, "CreationTime":{"shape":"__timestampUnix"}, "HttpPackageConfigurations":{"shape":"HttpPackageConfigurations"}, @@ -1707,6 +1719,7 @@ }, "MaxResults":{ "type":"integer", + "box":true, "max":100, "min":1 }, @@ -2352,14 +2365,22 @@ "VodSourceName":{"shape":"__string"} } }, - "__boolean":{"type":"boolean"}, - "__integer":{"type":"integer"}, + "__boolean":{ + "type":"boolean", + "box":true + }, + "__integer":{ + "type":"integer", + "box":true + }, "__integerMin1":{ "type":"integer", + "box":true, "min":1 }, "__integerMin1Max100":{ "type":"integer", + "box":true, "max":100, "min":1 }, @@ -2415,7 +2436,10 @@ "type":"list", "member":{"shape":"__string"} }, - "__long":{"type":"long"}, + "__long":{ + "type":"long", + "box":true + }, "__mapOf__string":{ "type":"map", "key":{"shape":"__string"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediatailor/2018-04-23/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediatailor/2018-04-23/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediatailor/2018-04-23/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediatailor/2018-04-23/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -77,6 +77,18 @@ "AdBreak$AdBreakMetadata": "

Defines a list of key/value pairs that MediaTailor generates within the EXT-X-ASSETtag for SCTE35_ENHANCED output.

" } }, + "AdBreakOpportunities": { + "base": "

The list of ad break opportunities detected within the VOD source.

", + "refs": { + "DescribeVodSourceResponse$AdBreakOpportunities": "

The ad break opportunities within the VOD source.

" + } + }, + "AdBreakOpportunity": { + "base": "

A location at which a zero-duration ad marker was detected in a VOD source manifest.

", + "refs": { + "AdBreakOpportunities$member": null + } + }, "AdMarkerPassthrough": { "base": "

For HLS, when set to true, MediaTailor passes through EXT-X-CUE-IN, EXT-X-CUE-OUT, and EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the MediaTailor personalized manifest.

No logic is applied to these ad markers. For example, if EXT-X-CUE-OUT has a value of 60, but no ads are filled for that ad break, MediaTailor will not set the value to 0.

", "refs": { @@ -1131,6 +1143,7 @@ "base": null, "refs": { "AdBreak$OffsetMillis": "

How long (in milliseconds) after the beginning of the program that an ad starts. This value must fall within 100ms of a segment boundary, otherwise the ad break will be skipped.

", + "AdBreakOpportunity$OffsetMillis": "

The offset in milliseconds from the start of the VOD source at which an ad marker was detected.

", "ClipRange$EndOffsetMillis": "

The end offset of the clip range, in milliseconds, starting from the beginning of the VOD source associated with the program.

", "CreateProgramResponse$DurationMillis": "

The duration of the live program in milliseconds.

", "ScheduleAdBreak$ApproximateDurationSeconds": "

The approximate duration of the ad break, in seconds.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediatailor/2018-04-23/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediatailor/2018-04-23/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mediatailor/2018-04-23/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mediatailor/2018-04-23/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/medical-imaging/2023-07-19/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/medical-imaging/2023-07-19/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/medical-imaging/2023-07-19/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/medical-imaging/2023-07-19/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

This is the AWS HealthImaging API Reference. AWS HealthImaging is an AWS service for storing, accessing, and analyzing medical images. For an introduction to the service, see the AWS HealthImaging Developer Guide .

We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as they take care of request authentication, serialization, and connection management. For more information, see Tools to build on AWS.

For information about using AWS HealthImaging API actions in one of the language-specific AWS SDKs, refer to the See Also link at the end of each section that describes an API action or data type.

The following sections list AWS HealthImaging API actions categorized according to functionality. Links are provided to actions within this Reference, along with links back to corresponding sections in the AWS HealthImaging Developer Guide so you can view console procedures and CLI/SDK code examples.

Data store actions

Import job actions

Image set access actions

Image set modification actions

Tagging actions

", + "service": "

This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible service that helps health care providers and their medical imaging ISV partners store, transform, and apply machine learning to medical images. For an introduction to the service, see the AWS HealthImaging Developer Guide .

We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as they take care of request authentication, serialization, and connection management. For more information, see Tools to build on AWS.

For information about using HealthImaging API actions in one of the language-specific AWS SDKs, refer to the See Also link at the end of each section that describes an API action or data type.

The following sections list AWS HealthImaging API actions categorized according to functionality. Links are provided to actions within this Reference, along with links back to corresponding sections in the AWS HealthImaging Developer Guide where you can view console procedures and CLI/SDK code examples.

Data store actions

Import job actions

Image set access actions

Image set modification actions

Tagging actions

", "operations": { "CopyImageSet": "

Copy an image set.

", "CreateDatastore": "

Create a data store.

", @@ -11,11 +11,11 @@ "GetImageFrame": "

Get an image frame (pixel data) for an image set.

", "GetImageSet": "

Get image set properties.

", "GetImageSetMetadata": "

Get metadata attributes for an image set.

", - "ListDICOMImportJobs": "

List import jobs created by this AWS account for a specific data store.

", - "ListDatastores": "

List data stores created by this AWS account.

", + "ListDICOMImportJobs": "

List import jobs created for a specific data store.

", + "ListDatastores": "

List data stores.

", "ListImageSetVersions": "

List image set versions.

", "ListTagsForResource": "

Lists all tags associated with a medical imaging resource.

", - "SearchImageSets": "

Search image sets based on defined input attributes.

", + "SearchImageSets": "

Search image sets based on defined input attributes.

SearchImageSets accepts a single search query parameter and returns a paginated response of all image sets that have the matching criteria. All range queries must be input as (lowerBound, upperBound).

SearchImageSets uses the updatedAt field for sorting in decreasing order from latest to oldest.

", "StartDICOMImportJob": "

Start importing bulk data into an ACTIVE data store. The import job imports DICOM P10 files found in the S3 prefix specified by the inputS3Uri parameter. The import job stores processing results in the file specified by the outputS3Uri parameter.

", "TagResource": "

Adds a user-specifed key and value tag to a medical imaging resource.

", "UntagResource": "

Removes tags from a medical imaging resource.

", @@ -309,8 +309,8 @@ "ImageSetProperties$createdAt": "

The timestamp when the image set properties were created.

", "ImageSetProperties$updatedAt": "

The timestamp when the image set properties were updated.

", "ImageSetProperties$deletedAt": "

The timestamp when the image set properties were deleted.

", - "ImageSetsMetadataSummary$createdAt": "

The time an image set is created in AWS HealthImaging. Sample creation date is provided in 1985-04-12T23:20:50.52Z format.

", - "ImageSetsMetadataSummary$updatedAt": "

The time when an image was last updated in AWS HealthImaging.

", + "ImageSetsMetadataSummary$createdAt": "

The time an image set is created. Sample creation date is provided in 1985-04-12T23:20:50.52Z format.

", + "ImageSetsMetadataSummary$updatedAt": "

The time an image set was last updated.

", "SearchByAttributeValue$createdAt": "

The created at time of the image set provided for search.

", "StartDICOMImportJobResponse$submittedAt": "

The timestamp when the import job was submitted.

", "UpdateImageSetMetadataResponse$createdAt": "

The timestamp when image set metadata was created.

", @@ -526,8 +526,8 @@ "KmsKeyArn": { "base": "

ARN referencing a KMS key or KMS key alias.

", "refs": { - "CreateDatastoreRequest$kmsKeyArn": "

The Amazon Resource Name (ARN) assigned to the AWS Key Management Service (AWS KMS) key for accessing encrypted data.

", - "DatastoreProperties$kmsKeyArn": "

The Amazon Resource Name (ARN) assigned to the AWS Key Management Service (AWS KMS) key for accessing encrypted data.

" + "CreateDatastoreRequest$kmsKeyArn": "

The Amazon Resource Name (ARN) assigned to the Key Management Service (KMS) key for accessing encrypted data.

", + "DatastoreProperties$kmsKeyArn": "

The Amazon Resource Name (ARN) assigned to the Key Management Service (KMS) key for accessing encrypted data.

" } }, "ListDICOMImportJobsRequest": { @@ -790,7 +790,7 @@ } }, "ValidationException": { - "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "base": "

The input fails to satisfy the constraints set by the service.

", "refs": { } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,53 +1,53 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://medical-imaging-fips.us-gov-east-1.api.aws" + "url": "https://medical-imaging-fips.us-east-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://medical-imaging-fips.us-gov-east-1.amazonaws.com" + "url": "https://medical-imaging-fips.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://medical-imaging.us-gov-east-1.api.aws" + "url": "https://medical-imaging.us-east-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://medical-imaging.us-gov-east-1.amazonaws.com" + "url": "https://medical-imaging.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false } @@ -105,101 +105,101 @@ } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://medical-imaging-fips.us-gov-east-1.api.aws" + } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://medical-imaging-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://medical-imaging-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://medical-imaging.us-gov-east-1.api.aws" + } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://medical-imaging.us-iso-east-1.c2s.ic.gov" + "url": "https://medical-imaging.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://medical-imaging-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://medical-imaging-fips.us-east-1.amazonaws.com" + "url": "https://medical-imaging-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://medical-imaging.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://medical-imaging.us-east-1.amazonaws.com" + "url": "https://medical-imaging.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": false } @@ -253,7 +253,7 @@ } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -267,6 +267,19 @@ } }, { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { "documentation": "For custom endpoint with fips enabled and dualstack disabled", "expect": { "error": "Invalid Configuration: FIPS and custom endpoint are not supported" @@ -289,6 +302,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -111,6 +111,21 @@ ], "idempotent":true }, + "CreateConnector":{ + "name":"CreateConnector", + "http":{ + "method":"POST", + "requestUri":"/CreateConnector", + "responseCode":201 + }, + "input":{"shape":"CreateConnectorRequest"}, + "output":{"shape":"Connector"}, + "errors":[ + {"shape":"UninitializedAccountException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, "CreateLaunchConfigurationTemplate":{ "name":"CreateLaunchConfigurationTemplate", "http":{ @@ -173,6 +188,21 @@ ], "idempotent":true }, + "DeleteConnector":{ + "name":"DeleteConnector", + "http":{ + "method":"POST", + "requestUri":"/DeleteConnector", + "responseCode":204 + }, + "input":{"shape":"DeleteConnectorRequest"}, + "errors":[ + {"shape":"UninitializedAccountException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, "DeleteJob":{ "name":"DeleteJob", "http":{ @@ -473,6 +503,20 @@ {"shape":"UninitializedAccountException"} ] }, + "ListConnectors":{ + "name":"ListConnectors", + "http":{ + "method":"POST", + "requestUri":"/ListConnectors", + "responseCode":200 + }, + "input":{"shape":"ListConnectorsRequest"}, + "output":{"shape":"ListConnectorsResponse"}, + "errors":[ + {"shape":"UninitializedAccountException"}, + {"shape":"ValidationException"} + ] + }, "ListExportErrors":{ "name":"ListExportErrors", "http":{ @@ -917,6 +961,22 @@ ], "idempotent":true }, + "UpdateConnector":{ + "name":"UpdateConnector", + "http":{ + "method":"POST", + "requestUri":"/UpdateConnector", + "responseCode":200 + }, + "input":{"shape":"UpdateConnectorRequest"}, + "output":{"shape":"Connector"}, + "errors":[ + {"shape":"UninitializedAccountException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, "UpdateLaunchConfiguration":{ "name":"UpdateLaunchConfiguration", "http":{ @@ -984,6 +1044,22 @@ {"shape":"AccessDeniedException"} ] }, + "UpdateSourceServer":{ + "name":"UpdateSourceServer", + "http":{ + "method":"POST", + "requestUri":"/UpdateSourceServer", + "responseCode":200 + }, + "input":{"shape":"UpdateSourceServerRequest"}, + "output":{"shape":"SourceServer"}, + "errors":[ + {"shape":"UninitializedAccountException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, "UpdateSourceServerReplicationType":{ "name":"UpdateSourceServerReplicationType", "http":{ @@ -1295,6 +1371,58 @@ "type":"list", "member":{"shape":"ErrorDetails"} }, + "Connector":{ + "type":"structure", + "members":{ + "arn":{"shape":"ARN"}, + "connectorID":{"shape":"ConnectorID"}, + "name":{"shape":"ConnectorName"}, + "ssmCommandConfig":{"shape":"ConnectorSsmCommandConfig"}, + "ssmInstanceID":{"shape":"SsmInstanceID"}, + "tags":{"shape":"TagsMap"} + } + }, + "ConnectorArn":{ + "type":"string", + "max":100, + "min":27, + "pattern":"^arn:[\\w-]+:mgn:([a-z]{2}-(gov-)?[a-z]+-\\d{1})?:(\\d{12})?:connector\\/(connector-[0-9a-zA-Z]{17})$" + }, + "ConnectorID":{ + "type":"string", + "max":27, + "min":27, + "pattern":"^connector-[0-9a-zA-Z]{17}$" + }, + "ConnectorIDsFilter":{ + "type":"list", + "member":{"shape":"ConnectorID"}, + "max":20, + "min":0 + }, + "ConnectorName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[A-Za-z0-9_-]+$" + }, + "ConnectorSsmCommandConfig":{ + "type":"structure", + "required":[ + "cloudWatchOutputEnabled", + "s3OutputEnabled" + ], + "members":{ + "cloudWatchLogGroupName":{"shape":"CloudWatchLogGroupName"}, + "cloudWatchOutputEnabled":{"shape":"Boolean"}, + "outputS3BucketName":{"shape":"S3BucketName"}, + "s3OutputEnabled":{"shape":"Boolean"} + } + }, + "ConnectorsList":{ + "type":"list", + "member":{"shape":"Connector"} + }, "Cpus":{ "type":"list", "member":{"shape":"CPU"}, @@ -1311,6 +1439,19 @@ "tags":{"shape":"TagsMap"} } }, + "CreateConnectorRequest":{ + "type":"structure", + "required":[ + "name", + "ssmInstanceID" + ], + "members":{ + "name":{"shape":"ConnectorName"}, + "ssmCommandConfig":{"shape":"ConnectorSsmCommandConfig"}, + "ssmInstanceID":{"shape":"SsmInstanceID"}, + "tags":{"shape":"TagsMap"} + } + }, "CreateLaunchConfigurationTemplateRequest":{ "type":"structure", "members":{ @@ -1503,6 +1644,13 @@ "members":{ } }, + "DeleteConnectorRequest":{ + "type":"structure", + "required":["connectorID"], + "members":{ + "connectorID":{"shape":"ConnectorID"} + } + }, "DeleteJobRequest":{ "type":"structure", "required":["jobID"], @@ -2054,6 +2202,7 @@ }, "Iops":{ "type":"long", + "box":true, "max":64000, "min":100 }, @@ -2368,6 +2517,27 @@ "nextToken":{"shape":"PaginationToken"} } }, + "ListConnectorsRequest":{ + "type":"structure", + "members":{ + "filters":{"shape":"ListConnectorsRequestFilters"}, + "maxResults":{"shape":"MaxResultsType"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListConnectorsRequestFilters":{ + "type":"structure", + "members":{ + "connectorIDs":{"shape":"ConnectorIDsFilter"} + } + }, + "ListConnectorsResponse":{ + "type":"structure", + "members":{ + "items":{"shape":"ConnectorsList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListExportErrorsRequest":{ "type":"structure", "required":["exportID"], @@ -2560,6 +2730,7 @@ }, "MaxResultsType":{ "type":"integer", + "box":true, "max":1000, "min":1 }, @@ -2589,6 +2760,7 @@ }, "OrderType":{ "type":"integer", + "box":true, "max":10000, "min":1001 }, @@ -2929,6 +3101,12 @@ "max":63, "min":3 }, + "SecretArn":{ + "type":"string", + "max":100, + "min":20, + "pattern":"^arn:[\\w-]+:secretsmanager:([a-z]{2}-(gov-)?[a-z]+-\\d{1})?:(\\d{12})?:secret:(.+)$" + }, "SecurityGroupID":{ "type":"string", "max":255, @@ -2975,6 +3153,7 @@ "members":{ "applicationID":{"shape":"ApplicationID"}, "arn":{"shape":"ARN"}, + "connectorAction":{"shape":"SourceServerConnectorAction"}, "dataReplicationInfo":{"shape":"DataReplicationInfo"}, "fqdnForActionFramework":{"shape":"BoundedString"}, "isArchived":{"shape":"Boolean"}, @@ -3017,6 +3196,13 @@ "actionIDs":{"shape":"ActionIDs"} } }, + "SourceServerConnectorAction":{ + "type":"structure", + "members":{ + "connectorArn":{"shape":"ConnectorArn"}, + "credentialsSecretArn":{"shape":"SecretArn"} + } + }, "SourceServerID":{ "type":"string", "max":19, @@ -3088,6 +3274,12 @@ }, "union":true }, + "SsmInstanceID":{ + "type":"string", + "max":20, + "min":19, + "pattern":"(^i-[0-9a-zA-Z]{17}$)|(^mi-[0-9a-zA-Z]{17}$)" + }, "SsmParameterStoreParameter":{ "type":"structure", "required":[ @@ -3210,6 +3402,7 @@ }, "StrictlyPositiveInteger":{ "type":"integer", + "box":true, "min":1 }, "SubnetID":{ @@ -3335,6 +3528,7 @@ }, "Throughput":{ "type":"long", + "box":true, "max":1000, "min":125 }, @@ -3395,6 +3589,15 @@ "name":{"shape":"ApplicationName"} } }, + "UpdateConnectorRequest":{ + "type":"structure", + "required":["connectorID"], + "members":{ + "connectorID":{"shape":"ConnectorID"}, + "name":{"shape":"ConnectorName"}, + "ssmCommandConfig":{"shape":"ConnectorSsmCommandConfig"} + } + }, "UpdateLaunchConfigurationRequest":{ "type":"structure", "required":["sourceServerID"], @@ -3489,6 +3692,15 @@ "sourceServerID":{"shape":"SourceServerID"} } }, + "UpdateSourceServerRequest":{ + "type":"structure", + "required":["sourceServerID"], + "members":{ + "accountID":{"shape":"AccountID"}, + "connectorAction":{"shape":"SourceServerConnectorAction"}, + "sourceServerID":{"shape":"SourceServerID"} + } + }, "UpdateWaveRequest":{ "type":"structure", "required":["waveID"], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,10 +8,12 @@ "AssociateSourceServers": "

Associate source servers to application.

", "ChangeServerLifeCycleState": "

Allows the user to set the SourceServer.LifeCycle.state property for specific Source Server IDs to one of the following: READY_FOR_TEST or READY_FOR_CUTOVER. This command only works if the Source Server is already launchable (dataReplicationInfo.lagDuration is not null.)

", "CreateApplication": "

Create application.

", + "CreateConnector": "

Create Connector.

", "CreateLaunchConfigurationTemplate": "

Creates a new Launch Configuration Template.

", "CreateReplicationConfigurationTemplate": "

Creates a new ReplicationConfigurationTemplate.

", "CreateWave": "

Create wave.

", "DeleteApplication": "

Delete application.

", + "DeleteConnector": "

Delete Connector.

", "DeleteJob": "

Deletes a single Job by ID.

", "DeleteLaunchConfigurationTemplate": "

Deletes a single Launch Configuration Template by ID.

", "DeleteReplicationConfigurationTemplate": "

Deletes a single Replication Configuration Template by ID

", @@ -32,6 +34,7 @@ "GetReplicationConfiguration": "

Lists all ReplicationConfigurations, filtered by Source Server ID.

", "InitializeService": "

Initialize Application Migration Service.

", "ListApplications": "

Retrieves all applications or multiple applications by ID.

", + "ListConnectors": "

List Connectors.

", "ListExportErrors": "

List export errors.

", "ListExports": "

List exports.

", "ListImportErrors": "

List import errors.

", @@ -61,10 +64,12 @@ "UnarchiveWave": "

Unarchive wave.

", "UntagResource": "

Deletes the specified set of tags from the specified set of Application Migration Service resources.

", "UpdateApplication": "

Update application.

", + "UpdateConnector": "

Update Connector.

", "UpdateLaunchConfiguration": "

Updates multiple LaunchConfigurations by Source Server ID.

", "UpdateLaunchConfigurationTemplate": "

Updates an existing Launch Configuration Template by ID.

", "UpdateReplicationConfiguration": "

Allows you to update multiple ReplicationConfigurations by Source Server ID.

", "UpdateReplicationConfigurationTemplate": "

Updates multiple ReplicationConfigurationTemplates by ID.

", + "UpdateSourceServer": "

Update Source Server.

", "UpdateSourceServerReplicationType": "

Allows you to change between the AGENT_BASED replication type and the SNAPSHOT_SHIPPING replication type.

", "UpdateWave": "

Update wave.

" }, @@ -73,6 +78,7 @@ "base": null, "refs": { "Application$arn": "

Application ARN.

", + "Connector$arn": "

Connector arn.

", "CreateReplicationConfigurationTemplateRequest$ebsEncryptionKeyArn": "

Request to configure an EBS encryption key during Replication Settings template creation.

", "Job$arn": "

the ARN of the specific Job.

", "LaunchConfigurationTemplate$arn": "

ARN of the Launch Configuration Template.

", @@ -143,6 +149,7 @@ "UpdateLaunchConfigurationRequest$accountID": "

Update Launch configuration Account ID.

", "UpdateReplicationConfigurationRequest$accountID": "

Update replication configuration Account ID request.

", "UpdateSourceServerReplicationTypeRequest$accountID": "

Account ID on which to update replication type.

", + "UpdateSourceServerRequest$accountID": "

Update Source Server request account ID.

", "UpdateWaveRequest$accountID": "

Account ID.

" } }, @@ -316,6 +323,8 @@ "base": null, "refs": { "Application$isArchived": "

Application archival status.

", + "ConnectorSsmCommandConfig$cloudWatchOutputEnabled": "

Connector SSM command config CloudWatch output enabled.

", + "ConnectorSsmCommandConfig$s3OutputEnabled": "

Connector SSM command config S3 output enabled.

", "CreateLaunchConfigurationTemplateRequest$associatePublicIpAddress": "

Associate public Ip address.

", "CreateLaunchConfigurationTemplateRequest$copyPrivateIp": "

Copy private Ip.

", "CreateLaunchConfigurationTemplateRequest$copyTags": "

Copy tags.

", @@ -449,6 +458,7 @@ "CloudWatchLogGroupName": { "base": null, "refs": { + "ConnectorSsmCommandConfig$cloudWatchLogGroupName": "

Connector SSM command config CloudWatch log group name.

", "PostLaunchActions$cloudWatchLogGroupName": "

AWS Systems Manager Command's CloudWatch log group name.

" } }, @@ -463,6 +473,55 @@ "ConflictException$errors": "

Conflict Exception specific errors.

" } }, + "Connector": { + "base": null, + "refs": { + "ConnectorsList$member": null + } + }, + "ConnectorArn": { + "base": null, + "refs": { + "SourceServerConnectorAction$connectorArn": "

Source Server connector action connector arn.

" + } + }, + "ConnectorID": { + "base": null, + "refs": { + "Connector$connectorID": "

Connector ID.

", + "ConnectorIDsFilter$member": null, + "DeleteConnectorRequest$connectorID": "

Delete Connector request connector ID.

", + "UpdateConnectorRequest$connectorID": "

Update Connector request connector ID.

" + } + }, + "ConnectorIDsFilter": { + "base": null, + "refs": { + "ListConnectorsRequestFilters$connectorIDs": "

List Connectors Request Filters connector IDs.

" + } + }, + "ConnectorName": { + "base": null, + "refs": { + "Connector$name": "

Connector name.

", + "CreateConnectorRequest$name": "

Create Connector request name.

", + "UpdateConnectorRequest$name": "

Update Connector request name.

" + } + }, + "ConnectorSsmCommandConfig": { + "base": "

Connector SSM command config.

", + "refs": { + "Connector$ssmCommandConfig": "

Connector SSM command config.

", + "CreateConnectorRequest$ssmCommandConfig": "

Create Connector request SSM command config.

", + "UpdateConnectorRequest$ssmCommandConfig": "

Update Connector request SSM command config.

" + } + }, + "ConnectorsList": { + "base": null, + "refs": { + "ListConnectorsResponse$items": "

List connectors response items.

" + } + }, "Cpus": { "base": null, "refs": { @@ -474,6 +533,11 @@ "refs": { } }, + "CreateConnectorRequest": { + "base": null, + "refs": { + } + }, "CreateLaunchConfigurationTemplateRequest": { "base": null, "refs": { @@ -565,6 +629,11 @@ "refs": { } }, + "DeleteConnectorRequest": { + "base": null, + "refs": { + } + }, "DeleteJobRequest": { "base": null, "refs": { @@ -1315,6 +1384,22 @@ "refs": { } }, + "ListConnectorsRequest": { + "base": null, + "refs": { + } + }, + "ListConnectorsRequestFilters": { + "base": "

List Connectors Request Filters.

", + "refs": { + "ListConnectorsRequest$filters": "

List Connectors Request filters.

" + } + }, + "ListConnectorsResponse": { + "base": null, + "refs": { + } + }, "ListExportErrorsRequest": { "base": "

List export errors request.

", "refs": { @@ -1456,6 +1541,7 @@ "DescribeSourceServersRequest$maxResults": "

Request to filter Source Servers list by maximum results.

", "DescribeVcenterClientsRequest$maxResults": "

Maximum results to be returned in DescribeVcenterClients.

", "ListApplicationsRequest$maxResults": "

Maximum results to return when listing applications.

", + "ListConnectorsRequest$maxResults": "

List Connectors Request max results.

", "ListExportErrorsRequest$maxResults": "

List export errors request max results.

", "ListExportsRequest$maxResults": "

List export request max results.

", "ListImportErrorsRequest$maxResults": "

List import errors request max results.

", @@ -1517,6 +1603,8 @@ "DescribeVcenterClientsResponse$nextToken": "

Next pagination token returned from DescribeVcenterClients.

", "ListApplicationsRequest$nextToken": "

Request next token.

", "ListApplicationsResponse$nextToken": "

Response next token.

", + "ListConnectorsRequest$nextToken": "

List Connectors Request next token.

", + "ListConnectorsResponse$nextToken": "

List connectors response next token.

", "ListExportErrorsRequest$nextToken": "

List export errors request next token.

", "ListExportErrorsResponse$nextToken": "

List export errors response next token.

", "ListExportsRequest$nextToken": "

List export request next token.

", @@ -1769,6 +1857,7 @@ "S3BucketName": { "base": null, "refs": { + "ConnectorSsmCommandConfig$outputS3BucketName": "

Connector SSM command config output S3 bucket name.

", "ExportTask$s3Bucket": "

Export task s3 bucket.

", "S3BucketSource$s3Bucket": "

S3 bucket source s3 bucket.

", "StartExportRequest$s3Bucket": "

Start export request s3 bucket.

" @@ -1795,6 +1884,12 @@ "PostLaunchActions$s3LogBucket": "

AWS Systems Manager Command's logs S3 log bucket.

" } }, + "SecretArn": { + "base": null, + "refs": { + "SourceServerConnectorAction$credentialsSecretArn": "

Source Server connector action credentials secret arn.

" + } + }, "SecurityGroupID": { "base": null, "refs": { @@ -1845,6 +1940,13 @@ "ListSourceServerActionsRequest$filters": "

Filters to apply when listing source server post migration custom actions.

" } }, + "SourceServerConnectorAction": { + "base": "

Source Server connector action.

", + "refs": { + "SourceServer$connectorAction": "

Source Server connector action.

", + "UpdateSourceServerRequest$connectorAction": "

Update Source Server request connector action.

" + } + }, "SourceServerID": { "base": null, "refs": { @@ -1877,7 +1979,8 @@ "TerminateTargetInstancesRequestSourceServerIDs$member": null, "UpdateLaunchConfigurationRequest$sourceServerID": "

Update Launch configuration by Source Server ID request.

", "UpdateReplicationConfigurationRequest$sourceServerID": "

Update replication configuration Source Server ID request.

", - "UpdateSourceServerReplicationTypeRequest$sourceServerID": "

ID of source server on which to update replication type.

" + "UpdateSourceServerReplicationTypeRequest$sourceServerID": "

ID of source server on which to update replication type.

", + "UpdateSourceServerRequest$sourceServerID": "

Update Source Server request source server ID.

" } }, "SourceServersList": { @@ -1944,6 +2047,13 @@ "SsmDocumentExternalParameters$value": null } }, + "SsmInstanceID": { + "base": null, + "refs": { + "Connector$ssmInstanceID": "

Connector SSM instance ID.

", + "CreateConnectorRequest$ssmInstanceID": "

Create Connector request SSM instance ID.

" + } + }, "SsmParameterStoreParameter": { "base": "

AWS Systems Manager Parameter Store parameter.

", "refs": { @@ -2084,7 +2194,9 @@ "base": null, "refs": { "Application$tags": "

Application tags.

", + "Connector$tags": "

Connector tags.

", "CreateApplicationRequest$tags": "

Application tags.

", + "CreateConnectorRequest$tags": "

Create Connector request tags.

", "CreateLaunchConfigurationTemplateRequest$tags": "

Request to associate tags during creation of a Launch Configuration Template.

", "CreateReplicationConfigurationTemplateRequest$stagingAreaTags": "

Request to configure Staging Area tags during Replication Settings template creation.

", "CreateReplicationConfigurationTemplateRequest$tags": "

Request to configure tags during Replication Settings template creation.

", @@ -2187,6 +2299,11 @@ "refs": { } }, + "UpdateConnectorRequest": { + "base": null, + "refs": { + } + }, "UpdateLaunchConfigurationRequest": { "base": null, "refs": { @@ -2211,6 +2328,11 @@ "base": null, "refs": { } + }, + "UpdateSourceServerRequest": { + "base": null, + "refs": { + } }, "UpdateWaveRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://mgn-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://mgn-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://mgn-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://mgn-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://mgn.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://mgn.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://mgn.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://mgn.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mgn/2020-02-26/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mgn/2020-02-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -42,6 +42,12 @@ "limit_key": "maxResults", "result_key": "items" }, + "ListConnectors": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, "ListExportErrors": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -30,6 +30,22 @@ {"shape":"InvalidInputException"} ] }, + "DeleteHomeRegionControl":{ + "name":"DeleteHomeRegionControl", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteHomeRegionControlRequest"}, + "output":{"shape":"DeleteHomeRegionControlResult"}, + "errors":[ + {"shape":"InternalServerError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidInputException"} + ] + }, "DescribeHomeRegionControls":{ "name":"DescribeHomeRegionControls", "http":{ @@ -95,6 +111,18 @@ "HomeRegionControl":{"shape":"HomeRegionControl"} } }, + "DeleteHomeRegionControlRequest":{ + "type":"structure", + "required":["ControlId"], + "members":{ + "ControlId":{"shape":"ControlId"} + } + }, + "DeleteHomeRegionControlResult":{ + "type":"structure", + "members":{ + } + }, "DescribeHomeRegionControlsMaxResults":{ "type":"integer", "box":true, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,6 +3,7 @@ "service": "

The AWS Migration Hub home region APIs are available specifically for working with your Migration Hub home region. You can use these APIs to determine a home region, as well as to create and work with controls that describe the home region.

  • You must make API calls for write actions (create, notify, associate, disassociate, import, or put) while in your home region, or a HomeRegionNotSetException error is returned.

  • API calls for read actions (list, describe, stop, and delete) are permitted outside of your home region.

  • If you call a write API outside the home region, an InvalidInputException is returned.

  • You can call GetHomeRegion action to obtain the account's Migration Hub home region.

For specific API usage, see the sections that follow in this AWS Migration Hub Home Region API reference.

", "operations": { "CreateHomeRegionControl": "

This API sets up the home region for the calling account only.

", + "DeleteHomeRegionControl": "

This operation deletes the home region configuration for the calling account. The operation does not delete discovery or migration tracking data in the home region.

", "DescribeHomeRegionControls": "

This API permits filtering on the ControlId and HomeRegion fields.

", "GetHomeRegion": "

Returns the calling account’s home region, if configured. This API is used by other AWS services to determine the regional endpoint for calling AWS Application Discovery Service and Migration Hub. You must call GetHomeRegion at least once before you call any other AWS Application Discovery Service and AWS Migration Hub APIs, to obtain the account's Migration Hub home region.

" }, @@ -15,6 +16,7 @@ "ControlId": { "base": null, "refs": { + "DeleteHomeRegionControlRequest$ControlId": "

A unique identifier that's generated for each home region control. It's always a string that begins with \"hrc-\" followed by 12 lowercase letters and numbers.

", "DescribeHomeRegionControlsRequest$ControlId": "

The ControlID is a unique identifier string of your HomeRegionControl object.

", "HomeRegionControl$ControlId": "

A unique identifier that's generated for each home region control. It's always a string that begins with \"hrc-\" followed by 12 lowercase letters and numbers.

" } @@ -28,6 +30,16 @@ "base": null, "refs": { } + }, + "DeleteHomeRegionControlRequest": { + "base": null, + "refs": { + } + }, + "DeleteHomeRegionControlResult": { + "base": null, + "refs": { + } }, "DescribeHomeRegionControlsMaxResults": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-config-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-config-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-config.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-config.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhub-config/2019-06-30/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhub-config/2019-06-30/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-config.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -173,6 +173,22 @@ {"shape":"InternalServerException"} ] }, + "ListAnalyzableServers":{ + "name":"ListAnalyzableServers", + "http":{ + "method":"POST", + "requestUri":"/list-analyzable-servers", + "responseCode":200 + }, + "input":{"shape":"ListAnalyzableServersRequest"}, + "output":{"shape":"ListAnalyzableServersResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "ListApplicationComponents":{ "name":"ListApplicationComponents", "http":{ @@ -383,6 +399,19 @@ "BINARY_ANALYSIS" ] }, + "AnalyzableServerSummary":{ + "type":"structure", + "members":{ + "hostname":{"shape":"String"}, + "ipAddress":{"shape":"String"}, + "source":{"shape":"String"}, + "vmId":{"shape":"String"} + } + }, + "AnalyzableServerSummaryList":{ + "type":"list", + "member":{"shape":"AnalyzableServerSummary"} + }, "AnalyzerNameUnion":{ "type":"structure", "members":{ @@ -554,6 +583,14 @@ "managementPreference":{"shape":"ManagementPreference"} } }, + "AssessmentDataSourceType":{ + "type":"string", + "enum":[ + "StrategyRecommendationsApplicationDataCollector", + "ManualImport", + "ApplicationDiscoveryService" + ] + }, "AssessmentStatus":{ "type":"string", "enum":[ @@ -757,7 +794,8 @@ "enum":[ "ApplicationDiscoveryService", "MPA", - "Import" + "Import", + "StrategyRecommendationsApplicationDataCollector" ] }, "DatabaseConfigDetail":{ @@ -1117,6 +1155,21 @@ "exception":true, "fault":true }, + "ListAnalyzableServersRequest":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxResult"}, + "nextToken":{"shape":"NextToken"}, + "sort":{"shape":"SortOrder"} + } + }, + "ListAnalyzableServersResponse":{ + "type":"structure", + "members":{ + "analyzableServers":{"shape":"AnalyzableServerSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListAntipatternSeveritySummary":{ "type":"list", "member":{"shape":"AntipatternSeveritySummary"} @@ -1742,6 +1795,7 @@ "StartAssessmentRequest":{ "type":"structure", "members":{ + "assessmentDataSourceType":{"shape":"AssessmentDataSourceType"}, "assessmentTargets":{"shape":"AssessmentTargets"}, "s3bucketForAnalysisData":{"shape":"StartAssessmentRequestS3bucketForAnalysisDataString"}, "s3bucketForReportData":{"shape":"StartAssessmentRequestS3bucketForReportDataString"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,6 +12,7 @@ "GetRecommendationReportDetails": "

Retrieves detailed information about the specified recommendation report.

", "GetServerDetails": "

Retrieves detailed information about a specified server.

", "GetServerStrategies": "

Retrieves recommended strategies and tools for the specified server.

", + "ListAnalyzableServers": "

Retrieves a list of all the servers fetched from customer vCenter using Strategy Recommendation Collector.

", "ListApplicationComponents": "

Retrieves a list of all the application components (processes).

", "ListCollectors": "

Retrieves a list of all the installed collectors.

", "ListImportFileTask": "

Retrieves a list of all the imports performed.

", @@ -42,6 +43,18 @@ "Result$analysisType": "

The error in server analysis.

" } }, + "AnalyzableServerSummary": { + "base": "

Summary information about an analyzable server.

", + "refs": { + "AnalyzableServerSummaryList$member": null + } + }, + "AnalyzableServerSummaryList": { + "base": null, + "refs": { + "ListAnalyzableServersResponse$analyzableServers": "

The list of analyzable servers with summary information about each server.

" + } + }, "AnalyzerNameUnion": { "base": "

The combination of the existing analyzers.

", "refs": { @@ -160,6 +173,12 @@ "PutPortfolioPreferencesRequest$applicationPreferences": "

The transformation preferences for non-database applications.

" } }, + "AssessmentDataSourceType": { + "base": null, + "refs": { + "StartAssessmentRequest$assessmentDataSourceType": "

The data source type of an assessment to be started.

" + } + }, "AssessmentStatus": { "base": null, "refs": { @@ -586,6 +605,16 @@ "refs": { } }, + "ListAnalyzableServersRequest": { + "base": "

Represents input for ListAnalyzableServers operation.

", + "refs": { + } + }, + "ListAnalyzableServersResponse": { + "base": "

Represents output for ListAnalyzableServers operation.

", + "refs": { + } + }, "ListAntipatternSeveritySummary": { "base": null, "refs": { @@ -700,6 +729,7 @@ "base": null, "refs": { "GetServerDetailsRequest$maxResults": "

The maximum number of items to include in the response. The maximum value is 100.

", + "ListAnalyzableServersRequest$maxResults": "

The maximum number of items to include in the response. The maximum value is 100.

", "ListApplicationComponentsRequest$maxResults": "

The maximum number of items to include in the response. The maximum value is 100.

", "ListCollectorsRequest$maxResults": "

The maximum number of items to include in the response. The maximum value is 100.

", "ListServersRequest$maxResults": "

The maximum number of items to include in the response. The maximum value is 100.

" @@ -727,6 +757,8 @@ "base": null, "refs": { "GetServerDetailsRequest$nextToken": "

The token from a previous call that you use to retrieve the next set of results. For example, if a previous call to this action returned 100 items, but you set maxResults to 10. You'll receive a set of 10 results along with a token. You then use the returned token to retrieve the next set of 10.

", + "ListAnalyzableServersRequest$nextToken": "

The token from a previous call that you use to retrieve the next set of results. For example, if a previous call to this action returned 100 items, but you set maxResults to 10. You'll receive a set of 10 results along with a token. You then use the returned token to retrieve the next set of 10.

", + "ListAnalyzableServersResponse$nextToken": "

The token you use to retrieve the next set of results, or null if there are no more results.

", "ListApplicationComponentsRequest$nextToken": "

The token from a previous call that you use to retrieve the next set of results. For example, if a previous call to this action returned 100 items, but you set maxResults to 10. You'll receive a set of 10 results along with a token. You then use the returned token to retrieve the next set of 10.

", "ListApplicationComponentsResponse$nextToken": "

The token you use to retrieve the next set of results, or null if there are no more results.

", "ListCollectorsRequest$nextToken": "

The token from a previous call that you use to retrieve the next set of results. For example, if a previous call to this action returned 100 items, but you set maxResults to 10. You'll receive a set of 10 results along with a token. You then use the returned token to retrieve the next set of 10.

", @@ -1071,6 +1103,7 @@ "SortOrder": { "base": null, "refs": { + "ListAnalyzableServersRequest$sort": "

Specifies whether to sort by ascending (ASC) or descending (DESC) order.

", "ListApplicationComponentsRequest$sort": "

Specifies whether to sort by ascending (ASC) or descending (DESC) order.

", "ListServersRequest$sort": "

Specifies whether to sort by ascending (ASC) or descending (DESC) order.

" } @@ -1228,6 +1261,10 @@ "base": null, "refs": { "AccessDeniedException$message": null, + "AnalyzableServerSummary$hostname": "

The host name of the analyzable server.

", + "AnalyzableServerSummary$ipAddress": "

The ip address of the analyzable server.

", + "AnalyzableServerSummary$source": "

The data source of the analyzable server.

", + "AnalyzableServerSummary$vmId": "

The virtual machine id of the analyzable server.

", "ApplicationComponentDetail$osDriver": "

OS driver.

", "ApplicationComponentDetail$osVersion": "

OS version.

", "AssessmentTarget$name": "

Name of an assessment.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://migrationhub-strategy-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://migrationhub-strategy-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://migrationhub-strategy-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://migrationhub-strategy-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://migrationhub-strategy.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://migrationhub-strategy.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://migrationhub-strategy.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-strategy.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -235,6 +235,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -248,6 +259,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -261,6 +283,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -274,6 +307,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -336,6 +380,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/migrationhubstrategy/2020-02-19/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/migrationhubstrategy/2020-02-19/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,6 +6,12 @@ "limit_key": "maxResults", "result_key": "associatedApplications" }, + "ListAnalyzableServers": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "analyzableServers" + }, "ListApplicationComponents": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -605,6 +605,22 @@ {"shape":"InternalServerException"} ] }, + "DescribeBotResourceGeneration":{ + "name":"DescribeBotResourceGeneration", + "http":{ + "method":"GET", + "requestUri":"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/generations/{generationId}", + "responseCode":200 + }, + "input":{"shape":"DescribeBotResourceGenerationRequest"}, + "output":{"shape":"DescribeBotResourceGenerationResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, "DescribeBotVersion":{ "name":"DescribeBotVersion", "http":{ @@ -805,6 +821,26 @@ {"shape":"InternalServerException"} ] }, + "GenerateBotElement":{ + "name":"GenerateBotElement", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/generate", + "responseCode":202 + }, + "input":{"shape":"GenerateBotElementRequest"}, + "output":{"shape":"GenerateBotElementResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "GetTestExecutionArtifactsUrl":{ "name":"GetTestExecutionArtifactsUrl", "http":{ @@ -886,6 +922,22 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListBotResourceGenerations":{ + "name":"ListBotResourceGenerations", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/generations", + "responseCode":200 + }, + "input":{"shape":"ListBotResourceGenerationsRequest"}, + "output":{"shape":"ListBotResourceGenerationsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListBotVersions":{ "name":"ListBotVersions", "http":{ @@ -1300,6 +1352,25 @@ {"shape":"InternalServerException"} ] }, + "StartBotResourceGeneration":{ + "name":"StartBotResourceGeneration", + "http":{ + "method":"PUT", + "requestUri":"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/startgeneration", + "responseCode":202 + }, + "input":{"shape":"StartBotResourceGenerationRequest"}, + "output":{"shape":"StartBotResourceGenerationResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, "StartImport":{ "name":"StartImport", "http":{ @@ -2456,7 +2527,8 @@ ], "members":{ "enabled":{"shape":"Boolean"}, - "destination":{"shape":"AudioLogDestination"} + "destination":{"shape":"AudioLogDestination"}, + "selectiveLoggingEnabled":{"shape":"BoxedBoolean"} } }, "AudioLogSettingsList":{ @@ -2591,6 +2663,17 @@ "resources":{"shape":"CustomVocabularyItems"} } }, + "BedrockModelArn":{ + "type":"string", + "pattern":"^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model\\/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}$" + }, + "BedrockModelSpecification":{ + "type":"structure", + "required":["modelArn"], + "members":{ + "modelArn":{"shape":"BedrockModelArn"} + } + }, "Boolean":{"type":"boolean"}, "BotAliasHistoryEvent":{ "type":"structure", @@ -3054,6 +3137,13 @@ "lastBuildSubmittedDateTime":{"shape":"Timestamp"} } }, + "BuildtimeSettings":{ + "type":"structure", + "members":{ + "descriptiveBotBuilder":{"shape":"DescriptiveBotBuilderSpecification"}, + "sampleUtteranceGeneration":{"shape":"SampleUtteranceGenerationSpecification"} + } + }, "BuiltInIntentSortAttribute":{ "type":"string", "enum":["IntentSignature"] @@ -3460,7 +3550,8 @@ "localeId":{"shape":"LocaleId"}, "description":{"shape":"Description"}, "nluIntentConfidenceThreshold":{"shape":"ConfidenceThreshold"}, - "voiceSettings":{"shape":"VoiceSettings"} + "voiceSettings":{"shape":"VoiceSettings"}, + "generativeAISettings":{"shape":"GenerativeAISettings"} } }, "CreateBotLocaleResponse":{ @@ -3474,7 +3565,8 @@ "nluIntentConfidenceThreshold":{"shape":"ConfidenceThreshold"}, "voiceSettings":{"shape":"VoiceSettings"}, "botLocaleStatus":{"shape":"BotLocaleStatus"}, - "creationDateTime":{"shape":"Timestamp"} + "creationDateTime":{"shape":"Timestamp"}, + "generativeAISettings":{"shape":"GenerativeAISettings"} } }, "CreateBotRequest":{ @@ -4417,7 +4509,8 @@ "lastUpdatedDateTime":{"shape":"Timestamp"}, "lastBuildSubmittedDateTime":{"shape":"Timestamp"}, "botLocaleHistoryEvents":{"shape":"BotLocaleHistoryEventsList"}, - "recommendedActions":{"shape":"RecommendedActions"} + "recommendedActions":{"shape":"RecommendedActions"}, + "generativeAISettings":{"shape":"GenerativeAISettings"} } }, "DescribeBotRecommendationRequest":{ @@ -4478,6 +4571,53 @@ } } }, + "DescribeBotResourceGenerationRequest":{ + "type":"structure", + "required":[ + "botId", + "botVersion", + "localeId", + "generationId" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "botVersion":{ + "shape":"BotVersion", + "location":"uri", + "locationName":"botVersion" + }, + "localeId":{ + "shape":"LocaleId", + "location":"uri", + "locationName":"localeId" + }, + "generationId":{ + "shape":"Id", + "location":"uri", + "locationName":"generationId" + } + } + }, + "DescribeBotResourceGenerationResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "botVersion":{"shape":"BotVersion"}, + "localeId":{"shape":"LocaleId"}, + "generationId":{"shape":"Id"}, + "failureReasons":{"shape":"FailureReasons"}, + "generationStatus":{"shape":"GenerationStatus"}, + "generationInputPrompt":{"shape":"GenerationInput"}, + "generatedBotLocaleUrl":{"shape":"PresignedS3Url"}, + "creationDateTime":{"shape":"Timestamp"}, + "modelArn":{"shape":"BedrockModelArn"}, + "lastUpdatedDateTime":{"shape":"Timestamp"} + } + }, "DescribeBotResponse":{ "type":"structure", "members":{ @@ -4905,6 +5045,14 @@ "max":200, "min":0 }, + "DescriptiveBotBuilderSpecification":{ + "type":"structure", + "required":["enabled"], + "members":{ + "enabled":{"shape":"Boolean"}, + "bedrockModelSpecification":{"shape":"BedrockModelSpecification"} + } + }, "DialogAction":{ "type":"structure", "required":["type"], @@ -4978,6 +5126,7 @@ "invocationLabel":{"shape":"Name"} } }, + "Enabled":{"type":"boolean"}, "EncryptionSetting":{ "type":"structure", "members":{ @@ -5186,6 +5335,94 @@ "timeoutInSeconds":{"shape":"FulfillmentTimeout"} } }, + "GenerateBotElementRequest":{ + "type":"structure", + "required":[ + "intentId", + "botId", + "botVersion", + "localeId" + ], + "members":{ + "intentId":{"shape":"Id"}, + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "botVersion":{ + "shape":"BotVersion", + "location":"uri", + "locationName":"botVersion" + }, + "localeId":{ + "shape":"LocaleId", + "location":"uri", + "locationName":"localeId" + } + } + }, + "GenerateBotElementResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "botVersion":{"shape":"DraftBotVersion"}, + "localeId":{"shape":"LocaleId"}, + "intentId":{"shape":"Id"}, + "sampleUtterances":{"shape":"SampleUtterancesList"} + } + }, + "GenerationInput":{ + "type":"string", + "max":2000, + "min":100 + }, + "GenerationSortBy":{ + "type":"structure", + "required":[ + "attribute", + "order" + ], + "members":{ + "attribute":{"shape":"GenerationSortByAttribute"}, + "order":{"shape":"SortOrder"} + } + }, + "GenerationSortByAttribute":{ + "type":"string", + "enum":[ + "creationStartTime", + "lastUpdatedTime" + ] + }, + "GenerationStatus":{ + "type":"string", + "enum":[ + "Failed", + "Complete", + "InProgress" + ] + }, + "GenerationSummary":{ + "type":"structure", + "members":{ + "generationId":{"shape":"Id"}, + "generationStatus":{"shape":"GenerationStatus"}, + "creationDateTime":{"shape":"Timestamp"}, + "lastUpdatedDateTime":{"shape":"Timestamp"} + } + }, + "GenerationSummaryList":{ + "type":"list", + "member":{"shape":"GenerationSummary"} + }, + "GenerativeAISettings":{ + "type":"structure", + "members":{ + "runtimeSettings":{"shape":"RuntimeSettings"}, + "buildtimeSettings":{"shape":"BuildtimeSettings"} + } + }, "GetTestExecutionArtifactsUrlRequest":{ "type":"structure", "required":["testExecutionId"], @@ -5751,6 +5988,44 @@ "nextToken":{"shape":"NextToken"} } }, + "ListBotResourceGenerationsRequest":{ + "type":"structure", + "required":[ + "botId", + "botVersion", + "localeId" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "botVersion":{ + "shape":"BotVersion", + "location":"uri", + "locationName":"botVersion" + }, + "localeId":{ + "shape":"LocaleId", + "location":"uri", + "locationName":"localeId" + }, + "sortBy":{"shape":"GenerationSortBy"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListBotResourceGenerationsResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "botVersion":{"shape":"BotVersion"}, + "localeId":{"shape":"LocaleId"}, + "generationSummaries":{"shape":"GenerationSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListBotVersionsRequest":{ "type":"structure", "required":["botId"], @@ -6821,6 +7096,12 @@ "slotHints":{"shape":"SlotHintsIntentMap"} } }, + "RuntimeSettings":{ + "type":"structure", + "members":{ + "slotResolutionImprovement":{"shape":"SlotResolutionImprovementSpecification"} + } + }, "S3BucketArn":{ "type":"string", "max":2048, @@ -6884,6 +7165,14 @@ "utterance":{"shape":"Utterance"} } }, + "SampleUtteranceGenerationSpecification":{ + "type":"structure", + "required":["enabled"], + "members":{ + "enabled":{"shape":"Boolean"}, + "bedrockModelSpecification":{"shape":"BedrockModelSpecification"} + } + }, "SampleUtterancesCount":{"type":"integer"}, "SampleUtterancesList":{ "type":"list", @@ -7117,6 +7406,28 @@ "slotId":{"shape":"Id"} } }, + "SlotResolutionImprovementSpecification":{ + "type":"structure", + "required":["enabled"], + "members":{ + "enabled":{"shape":"Enabled"}, + "bedrockModelSpecification":{"shape":"BedrockModelSpecification"} + } + }, + "SlotResolutionSetting":{ + "type":"structure", + "required":["slotResolutionStrategy"], + "members":{ + "slotResolutionStrategy":{"shape":"SlotResolutionStrategy"} + } + }, + "SlotResolutionStrategy":{ + "type":"string", + "enum":[ + "EnhancedFallback", + "Default" + ] + }, "SlotResolutionTestResultItem":{ "type":"structure", "required":[ @@ -7295,7 +7606,8 @@ "promptSpecification":{"shape":"PromptSpecification"}, "sampleUtterances":{"shape":"SampleUtterancesList"}, "waitAndContinueSpecification":{"shape":"WaitAndContinueSpecification"}, - "slotCaptureSetting":{"shape":"SlotCaptureSetting"} + "slotCaptureSetting":{"shape":"SlotCaptureSetting"}, + "slotResolutionSetting":{"shape":"SlotResolutionSetting"} } }, "SlotValueOverride":{ @@ -7398,6 +7710,45 @@ "encryptionSetting":{"shape":"EncryptionSetting"} } }, + "StartBotResourceGenerationRequest":{ + "type":"structure", + "required":[ + "generationInputPrompt", + "botId", + "botVersion", + "localeId" + ], + "members":{ + "generationInputPrompt":{"shape":"GenerationInput"}, + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "botVersion":{ + "shape":"BotVersion", + "location":"uri", + "locationName":"botVersion" + }, + "localeId":{ + "shape":"LocaleId", + "location":"uri", + "locationName":"localeId" + } + } + }, + "StartBotResourceGenerationResponse":{ + "type":"structure", + "members":{ + "generationInputPrompt":{"shape":"GenerationInput"}, + "generationId":{"shape":"Id"}, + "botId":{"shape":"Id"}, + "botVersion":{"shape":"BotVersion"}, + "localeId":{"shape":"LocaleId"}, + "generationStatus":{"shape":"GenerationStatus"}, + "creationDateTime":{"shape":"Timestamp"} + } + }, "StartImportRequest":{ "type":"structure", "required":[ @@ -8014,7 +8365,8 @@ ], "members":{ "enabled":{"shape":"Boolean"}, - "destination":{"shape":"TextLogDestination"} + "destination":{"shape":"TextLogDestination"}, + "selectiveLoggingEnabled":{"shape":"BoxedBoolean"} } }, "TextLogSettingsList":{ @@ -8180,7 +8532,8 @@ }, "description":{"shape":"Description"}, "nluIntentConfidenceThreshold":{"shape":"ConfidenceThreshold"}, - "voiceSettings":{"shape":"VoiceSettings"} + "voiceSettings":{"shape":"VoiceSettings"}, + "generativeAISettings":{"shape":"GenerativeAISettings"} } }, "UpdateBotLocaleResponse":{ @@ -8197,7 +8550,8 @@ "failureReasons":{"shape":"FailureReasons"}, "creationDateTime":{"shape":"Timestamp"}, "lastUpdatedDateTime":{"shape":"Timestamp"}, - "recommendedActions":{"shape":"RecommendedActions"} + "recommendedActions":{"shape":"RecommendedActions"}, + "generativeAISettings":{"shape":"GenerativeAISettings"} } }, "UpdateBotRecommendationRequest":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,7 +9,7 @@ "CreateBot": "

Creates an Amazon Lex conversational bot.

", "CreateBotAlias": "

Creates an alias for the specified version of a bot. Use an alias to enable you to change the version of a bot without updating applications that use the bot.

For example, you can create an alias called \"PROD\" that your applications use to call the Amazon Lex bot.

", "CreateBotLocale": "

Creates a locale in the bot. The locale contains the intents and slot types that the bot uses in conversations with users in the specified language and locale. You must add a locale to a bot before you can add intents and slot types to the bot.

", - "CreateBotVersion": "

Creates a new version of the bot based on the DRAFT version. If the DRAFT version of this resource hasn't changed since you created the last version, Amazon Lex doesn't create a new version, it returns the last created version.

When you create the first version of a bot, Amazon Lex sets the version to 1. Subsequent versions increment by 1.

", + "CreateBotVersion": "

Creates an immutable version of the bot. When you create the first version of a bot, Amazon Lex sets the version number to 1. Subsequent bot versions increase in an increment of 1. The version number will always represent the total number of versions created of the bot, not the current number of versions. If a bot version is deleted, that bot version number will not be reused.

", "CreateExport": "

Creates a zip archive containing the contents of a bot or a bot locale. The archive contains a directory structure that contains JSON files that define the bot.

You can create an archive that contains the complete definition of a bot, or you can specify that the archive contain only the definition of a single bot locale.

For more information about exporting bots, and about the structure of the export archive, see Importing and exporting bots

", "CreateIntent": "

Creates an intent.

To define the interaction between the user and your bot, you define one or more intents. For example, for a pizza ordering bot you would create an OrderPizza intent.

When you create an intent, you must provide a name. You can optionally provide the following:

  • Sample utterances. For example, \"I want to order a pizza\" and \"Can I order a pizza.\" You can't provide utterances for built-in intents.

  • Information to be gathered. You specify slots for the information that you bot requests from the user. You can specify standard slot types, such as date and time, or custom slot types for your application.

  • How the intent is fulfilled. You can provide a Lambda function or configure the intent to return the intent information to your client application. If you use a Lambda function, Amazon Lex invokes the function when all of the intent information is available.

  • A confirmation prompt to send to the user to confirm an intent. For example, \"Shall I order your pizza?\"

  • A conclusion statement to send to the user after the intent is fulfilled. For example, \"I ordered your pizza.\"

  • A follow-up prompt that asks the user for additional activity. For example, \"Do you want a drink with your pizza?\"

", "CreateResourcePolicy": "

Creates a new resource policy with the specified policy statements.

", @@ -36,6 +36,7 @@ "DescribeBotAlias": "

Get information about a specific bot alias.

", "DescribeBotLocale": "

Describes the settings that a bot has for a specific locale.

", "DescribeBotRecommendation": "

Provides metadata information about a bot recommendation. This information will enable you to get a description on the request inputs, to download associated transcripts after processing is complete, and to download intents and slot-types generated by the bot recommendation.

", + "DescribeBotResourceGeneration": "

Returns information about a request to generate a bot through natural language description, made through the StartBotResource API. Use the generatedBotLocaleUrl to retrieve the Amazon S3 object containing the bot locale configuration. You can then modify and import this configuration.

", "DescribeBotVersion": "

Provides metadata about a version of a bot.

", "DescribeCustomVocabularyMetadata": "

Provides metadata information about a custom vocabulary.

", "DescribeExport": "

Gets information about a specific export.

", @@ -48,11 +49,13 @@ "DescribeTestSet": "

Gets metadata information about the test set.

", "DescribeTestSetDiscrepancyReport": "

Gets metadata information about the test set discrepancy report.

", "DescribeTestSetGeneration": "

Gets metadata information about the test set generation.

", + "GenerateBotElement": "

Generates sample utterances for an intent.

", "GetTestExecutionArtifactsUrl": "

The pre-signed Amazon S3 URL to download the test execution result artifacts.

", "ListAggregatedUtterances": "

Provides a list of utterances that users have sent to the bot.

Utterances are aggregated by the text of the utterance. For example, all instances where customers used the phrase \"I want to order pizza\" are aggregated into the same line in the response.

You can see both detected utterances and missed utterances. A detected utterance is where the bot properly recognized the utterance and activated the associated intent. A missed utterance was not recognized by the bot and didn't activate an intent.

Utterances can be aggregated for a bot alias or for a bot version, but not both at the same time.

Utterances statistics are not generated under the following conditions:

  • The childDirected field was set to true when the bot was created.

  • You are using slot obfuscation with one or more slots.

  • You opted out of participating in improving Amazon Lex.

", "ListBotAliases": "

Gets a list of aliases for the specified bot.

", "ListBotLocales": "

Gets a list of locales for the specified bot.

", "ListBotRecommendations": "

Get a list of bot recommendations that meet the specified criteria.

", + "ListBotResourceGenerations": "

Lists the generation requests made for a bot locale.

", "ListBotVersions": "

Gets information about all of the versions of a bot.

The ListBotVersions operation returns a summary of each version of a bot. For example, if a bot has three numbered versions, the ListBotVersions operation returns for summaries, one for each numbered version and one for the DRAFT version.

The ListBotVersions operation always returns at least one version, the DRAFT version.

", "ListBots": "

Gets a list of available bots.

", "ListBuiltInIntents": "

Gets a list of built-in intents provided by Amazon Lex that you can use in your bot.

To use a built-in intent as a the base for your own intent, include the built-in intent signature in the parentIntentSignature parameter when you call the CreateIntent operation. For more information, see CreateIntent.

", @@ -78,6 +81,7 @@ "ListUtteranceMetrics": "

To use this API operation, your IAM role must have permissions to perform the ListAggregatedUtterances operation, which provides access to utterance-related analytics. See Viewing utterance statistics for the IAM policy to apply to the IAM role.

Retrieves summary metrics for the utterances in your bot. The following fields are required:

  • metrics – A list of AnalyticsUtteranceMetric objects. In each object, use the name field to specify the metric to calculate, the statistic field to specify whether to calculate the Sum, Average, or Max number, and the order field to specify whether to sort the results in Ascending or Descending order.

  • startDateTime and endDateTime – Define a time range for which you want to retrieve results.

Of the optional fields, you can organize the results in the following ways:

  • Use the filters field to filter the results, the groupBy field to specify categories by which to group the results, and the binBy field to specify time intervals by which to group the results.

  • Use the maxResults field to limit the number of results to return in a single response and the nextToken field to return the next batch of results if the response does not return the full set of results.

Note that an order field exists in both binBy and metrics. Currently, you can specify it in either field, but not in both.

", "SearchAssociatedTranscripts": "

Search for associated transcripts that meet the specified criteria.

", "StartBotRecommendation": "

Use this to provide your transcript data, and to start the bot recommendation process.

", + "StartBotResourceGeneration": "

Starts a request for the descriptive bot builder to generate a bot locale configuration based on the prompt you provide it. After you make this call, use the DescribeBotResourceGeneration operation to check on the status of the generation and for the generatedBotLocaleUrl when the generation is complete. Use that value to retrieve the Amazon S3 object containing the bot locale configuration. You can then modify and import this configuration.

", "StartImport": "

Starts importing a bot, bot locale, or custom vocabulary from a zip archive that you uploaded to an S3 bucket.

", "StartTestExecution": "

The action to start test set execution.

", "StartTestSetGeneration": "

The action to start the generation of test set.

", @@ -942,11 +946,27 @@ "refs": { } }, + "BedrockModelArn": { + "base": null, + "refs": { + "BedrockModelSpecification$modelArn": "

The ARN of the foundation model used in descriptive bot building.

", + "DescribeBotResourceGenerationResponse$modelArn": "

The ARN of the model used to generate the bot resources.

" + } + }, + "BedrockModelSpecification": { + "base": "

Contains information about the Amazon Bedrock model used to interpret the prompt used in descriptive bot building.

", + "refs": { + "DescriptiveBotBuilderSpecification$bedrockModelSpecification": "

An object containing information about the Amazon Bedrock model used to interpret the prompt used in descriptive bot building.

", + "SampleUtteranceGenerationSpecification$bedrockModelSpecification": null, + "SlotResolutionImprovementSpecification$bedrockModelSpecification": "

An object containing information about the Amazon Bedrock model used to assist slot resolution.

" + } + }, "Boolean": { "base": null, "refs": { "AudioLogSetting$enabled": "

Determines whether audio logging in enabled for the bot.

", "BotAliasLocaleSettings$enabled": "

Determines whether the locale is enabled for the bot. If the value is false, the locale isn't available for use.

", + "DescriptiveBotBuilderSpecification$enabled": "

Specifies whether the descriptive bot building feature is activated or not.

", "DialogCodeHookSettings$enabled": "

Enables the dialog code hook so that it processes user requests.

", "FulfillmentCodeHookSettings$enabled": "

Indicates whether a Lambda function should be invoked to fulfill a specific intent.

", "IntentClassificationTestResultItem$multiTurnConversation": "

Indicates whether the conversation involves multiple turns or not.

", @@ -954,6 +974,7 @@ "KendraConfiguration$queryFilterStringEnabled": "

Determines whether the AMAZON.KendraSearchIntent intent uses a custom query string to query the Amazon Kendra index.

", "MultipleValuesSetting$allowMultipleValues": "

Indicates whether a slot can return multiple values. When true, the slot may return more than one value in a response. When false, the slot returns only a single value.

Multi-value slots are only available in the en-US locale. If you set this value to true in any other locale, Amazon Lex throws a ValidationException.

If the allowMutlipleValues is not set, the default value is false.

", "OverallTestResultItem$multiTurnConversation": "

Indicates whether the conversation contains multiple turns or not.

", + "SampleUtteranceGenerationSpecification$enabled": "

Specifies whether to enable sample utterance generation or not.

", "SentimentAnalysisSettings$detectSentiment": "

Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment of user utterances.

", "TextLogSetting$enabled": "

Determines whether conversation logs should be stored for an alias.

" } @@ -1287,6 +1308,8 @@ "DescribeBotAliasResponse$botVersion": "

The version of the bot associated with the bot alias.

", "DescribeBotLocaleRequest$botVersion": "

The version of the bot associated with the locale.

", "DescribeBotLocaleResponse$botVersion": "

The version of the bot associated with the locale.

", + "DescribeBotResourceGenerationRequest$botVersion": "

The version of the bot for which to return the generation details.

", + "DescribeBotResourceGenerationResponse$botVersion": "

The version of the bot for which the generation request was made.

", "DescribeCustomVocabularyMetadataRequest$botVersion": "

The bot version of the bot to return metadata for.

", "DescribeCustomVocabularyMetadataResponse$botVersion": "

The version of the bot that contains the custom vocabulary to describe.

", "DescribeIntentRequest$botVersion": "

The version of the bot associated with the intent.

", @@ -1294,10 +1317,13 @@ "DescribeSlotResponse$botVersion": "

The version of the bot associated with the slot.

", "DescribeSlotTypeRequest$botVersion": "

The version of the bot associated with the slot type.

", "DescribeSlotTypeResponse$botVersion": "

The version of the bot associated with the slot type.

", + "GenerateBotElementRequest$botVersion": "

The bot version for the bot request to generate utterances.

", "ListAggregatedUtterancesRequest$botVersion": "

The identifier of the bot version associated with this request. If you specify the bot version, you can't specify the bot alias.

", "ListAggregatedUtterancesResponse$botVersion": "

The identifier of the bot version that contains the utterances. If you specified the bot alias, the bot version isn't returned.

", "ListBotLocalesRequest$botVersion": "

The version of the bot to list locales for.

", "ListBotLocalesResponse$botVersion": "

The version of the bot.

", + "ListBotResourceGenerationsRequest$botVersion": "

The version of the bot whose generation requests you want to view.

", + "ListBotResourceGenerationsResponse$botVersion": "

The version of the bot for which the generation requests were made.

", "ListCustomVocabularyItemsRequest$botVersion": "

The bot version of the bot to the list custom vocabulary request.

", "ListCustomVocabularyItemsResponse$botVersion": "

The identifier of the version of the bot associated with this custom vocabulary.

", "ListExportsRequest$botVersion": "

The version of the bot to list exports for.

", @@ -1311,6 +1337,8 @@ "ParentBotNetwork$botVersion": "

The version of the network of bots.

", "SearchAssociatedTranscriptsRequest$botVersion": "

The version of the bot containing the transcripts that you are searching.

", "SearchAssociatedTranscriptsResponse$botVersion": "

The version of the bot containing the transcripts that you are searching.

", + "StartBotResourceGenerationRequest$botVersion": "

The version of the bot for which to generate intents and slot types.

", + "StartBotResourceGenerationResponse$botVersion": "

The version of the bot for which the generation request was made.

", "UpdateBotAliasRequest$botVersion": "

The new bot version to assign to the bot alias.

", "UpdateBotAliasResponse$botVersion": "

The updated version of the bot that the alias points to.

" } @@ -1358,6 +1386,7 @@ "AggregatedUtterancesSummary$containsDataFromDeletedResources": "

Aggregated utterance data may contain utterances from versions of your bot that have since been deleted. When the aggregated contains this kind of data, this field is set to true.

", "AllowedInputTypes$allowAudioInput": "

Indicates whether audio input is allowed.

", "AllowedInputTypes$allowDTMFInput": "

Indicates whether DTMF input is allowed.

", + "AudioLogSetting$selectiveLoggingEnabled": "

The option to enable selective conversation log capture for audio.

", "ConditionalSpecification$active": "

Determines whether a conditional branch is active. When active is false, the conditions are not evaluated.

", "DialogAction$suppressNextMessage": "

When true the next message for the intent is not used.

", "DialogCodeHookInvocationSetting$enableCodeHookInvocation": "

Indicates whether a Lambda function should be invoked for the dialog.

", @@ -1373,6 +1402,7 @@ "PromptSpecification$allowInterrupt": "

Indicates whether the user can interrupt a speech prompt from the bot.

", "ResponseSpecification$allowInterrupt": "

Indicates whether the user can interrupt a speech response from Amazon Lex.

", "StillWaitingResponseSpecification$allowInterrupt": "

Indicates that the user can interrupt the response by speaking while the message is being played.

", + "TextLogSetting$selectiveLoggingEnabled": "

The option to enable selective conversation log capture for text.

", "WaitAndContinueSpecification$active": "

Specifies whether the bot will wait for a user to respond. When this field is false, wait and continue responses for a slot aren't used. If the active field isn't specified, the default is true.

" } }, @@ -1386,6 +1416,12 @@ "refs": { } }, + "BuildtimeSettings": { + "base": "

Contains specifications about the Amazon Lex build time generative AI capabilities from Amazon Bedrock that you can turn on for your bot.

", + "refs": { + "GenerativeAISettings$buildtimeSettings": null + } + }, "BuiltInIntentSortAttribute": { "base": null, "refs": { @@ -2097,6 +2133,16 @@ "refs": { } }, + "DescribeBotResourceGenerationRequest": { + "base": null, + "refs": { + } + }, + "DescribeBotResourceGenerationResponse": { + "base": null, + "refs": { + } + }, "DescribeBotResponse": { "base": null, "refs": { @@ -2277,6 +2323,12 @@ "UpdateTestSetResponse$description": "

The test set description for the updated test set.

" } }, + "DescriptiveBotBuilderSpecification": { + "base": "

Contains specifications for the descriptive bot building feature.

", + "refs": { + "BuildtimeSettings$descriptiveBotBuilder": "

An object containing specifications for the descriptive bot building feature.

" + } + }, "DialogAction": { "base": "

Defines the action that the bot executes at runtime when the conversation reaches this step.

", "refs": { @@ -2352,6 +2404,7 @@ "DescribeBotRecommendationRequest$botVersion": "

The version of the bot associated with the bot recommendation.

", "DescribeBotRecommendationResponse$botVersion": "

The version of the bot associated with the bot recommendation.

", "DescribeIntentResponse$botVersion": "

The version of the bot associated with the intent.

", + "GenerateBotElementResponse$botVersion": "

The unique bot version for the bot which received the response.

", "ListBotRecommendationsRequest$botVersion": "

The version of the bot that contains the bot recommendation list.

", "ListBotRecommendationsResponse$botVersion": "

The version of the bot that contains the bot recommendation list.

", "ListImportsRequest$botVersion": "

The version of the bot to list imports for.

", @@ -2387,6 +2440,12 @@ "SlotCaptureSetting$elicitationCodeHook": "

Code hook called when Amazon Lex doesn't capture a slot value.

" } }, + "Enabled": { + "base": null, + "refs": { + "SlotResolutionImprovementSpecification$enabled": "

Specifies whether assisted slot resolution is turned on or off.

" + } + }, "EncryptionSetting": { "base": "

The object representing the passwords that were used to encrypt the data related to the bot recommendation, as well as the KMS key ARN used to encrypt the associated metadata.

", "refs": { @@ -2531,6 +2590,7 @@ "refs": { "DescribeBotLocaleResponse$failureReasons": "

if botLocaleStatus is Failed, Amazon Lex explains why it failed to build the bot.

", "DescribeBotRecommendationResponse$failureReasons": "

If botRecommendationStatus is Failed, Amazon Lex explains why.

", + "DescribeBotResourceGenerationResponse$failureReasons": "

A list of reasons why the generation of bot resources through natural language description failed.

", "DescribeBotResponse$failureReasons": "

If the botStatus is Failed, this contains a list of reasons that the bot couldn't be built.

", "DescribeBotVersionResponse$failureReasons": "

If the botStatus is Failed, this contains a list of reasons that the version couldn't be built.

", "DescribeExportResponse$failureReasons": "

If the exportStatus is failed, contains one or more reasons why the export could not be completed.

", @@ -2614,6 +2674,66 @@ "FulfillmentCodeHookSettings$fulfillmentUpdatesSpecification": "

Provides settings for update messages sent to the user for long-running Lambda fulfillment functions. Fulfillment updates can be used only with streaming conversations.

" } }, + "GenerateBotElementRequest": { + "base": null, + "refs": { + } + }, + "GenerateBotElementResponse": { + "base": null, + "refs": { + } + }, + "GenerationInput": { + "base": null, + "refs": { + "DescribeBotResourceGenerationResponse$generationInputPrompt": "

The prompt used in the generation request.

", + "StartBotResourceGenerationRequest$generationInputPrompt": "

The prompt to generate intents and slot types for the bot locale. Your description should be both detailed and precise to help generate appropriate and sufficient intents for your bot. Include a list of actions to improve the intent creation process.

", + "StartBotResourceGenerationResponse$generationInputPrompt": "

The prompt that was used generate intents and slot types for the bot locale.

" + } + }, + "GenerationSortBy": { + "base": "

Specifies the attribute and method by which to sort the generation request information.

", + "refs": { + "ListBotResourceGenerationsRequest$sortBy": "

An object containing information about the attribute and the method by which to sort the results

" + } + }, + "GenerationSortByAttribute": { + "base": null, + "refs": { + "GenerationSortBy$attribute": "

The attribute by which to sort the generation request information. You can sort by the following attributes.

  • creationStartTime – The time at which the generation request was created.

  • lastUpdatedTime – The time at which the generation request was last updated.

" + } + }, + "GenerationStatus": { + "base": null, + "refs": { + "DescribeBotResourceGenerationResponse$generationStatus": "

The status of the generation request.

", + "GenerationSummary$generationStatus": "

The status of the generation request.

", + "StartBotResourceGenerationResponse$generationStatus": "

The status of the generation request.

" + } + }, + "GenerationSummary": { + "base": "

Contains information about a generation request made for the bot locale.

", + "refs": { + "GenerationSummaryList$member": null + } + }, + "GenerationSummaryList": { + "base": null, + "refs": { + "ListBotResourceGenerationsResponse$generationSummaries": "

A list of objects, each containing information about a generation request for the bot locale.

" + } + }, + "GenerativeAISettings": { + "base": "

Contains specifications about the generative AI capabilities from Amazon Bedrock that you can turn on for your bot.

", + "refs": { + "CreateBotLocaleRequest$generativeAISettings": null, + "CreateBotLocaleResponse$generativeAISettings": null, + "DescribeBotLocaleResponse$generativeAISettings": "

Contains settings for Amazon Bedrock's generative AI features for your bot locale.

", + "UpdateBotLocaleRequest$generativeAISettings": "

Contains settings for generative AI features powered by Amazon Bedrock for your bot locale. Use this object to turn generative AI features on and off. Pricing may differ if you turn a feature on. For more information, see LINK.

", + "UpdateBotLocaleResponse$generativeAISettings": "

Contains settings for generative AI features powered by Amazon Bedrock for your bot locale.

" + } + }, "GetTestExecutionArtifactsUrlRequest": { "base": null, "refs": { @@ -2718,6 +2838,10 @@ "DescribeBotRecommendationResponse$botId": "

The identifier of the bot associated with the bot recommendation.

", "DescribeBotRecommendationResponse$botRecommendationId": "

The identifier of the bot recommendation being described.

", "DescribeBotRequest$botId": "

The unique identifier of the bot to describe.

", + "DescribeBotResourceGenerationRequest$botId": "

The unique identifier of the bot for which to return the generation details.

", + "DescribeBotResourceGenerationRequest$generationId": "

The unique identifier of the generation request for which to return the generation details.

", + "DescribeBotResourceGenerationResponse$botId": "

The unique identifier of the bot for which the generation request was made.

", + "DescribeBotResourceGenerationResponse$generationId": "

The generation ID for which to return the generation details.

", "DescribeBotResponse$botId": "

The unique identifier of the bot.

", "DescribeBotVersionRequest$botId": "

The identifier of the bot containing the version to return metadata for.

", "DescribeBotVersionResponse$botId": "

The identifier of the bot that contains the version.

", @@ -2753,6 +2877,11 @@ "DescribeTestSetRequest$testSetId": "

The test set Id for the test set request.

", "DescribeTestSetResponse$testSetId": "

The test set Id for the test set response.

", "ExportSummary$exportId": "

The unique identifier that Amazon Lex assigned to the export.

", + "GenerateBotElementRequest$intentId": "

The intent unique Id for the bot request to generate utterances.

", + "GenerateBotElementRequest$botId": "

The bot unique Id for the bot request to generate utterances.

", + "GenerateBotElementResponse$botId": "

The unique bot Id for the bot which received the response.

", + "GenerateBotElementResponse$intentId": "

The unique intent Id for the bot which received the response.

", + "GenerationSummary$generationId": "

The unique identifier of the generation request.

", "GetTestExecutionArtifactsUrlRequest$testExecutionId": "

The unique identifier of the completed test execution.

", "GetTestExecutionArtifactsUrlResponse$testExecutionId": "

The unique identifier of the completed test execution.

", "ImportSummary$importId": "

The unique identifier that Amazon Lex assigned to the import.

", @@ -2765,6 +2894,8 @@ "ListBotLocalesResponse$botId": "

The identifier of the bot to list locales for.

", "ListBotRecommendationsRequest$botId": "

The unique identifier of the bot that contains the bot recommendation list.

", "ListBotRecommendationsResponse$botId": "

The unique identifier of the bot that contains the bot recommendation list.

", + "ListBotResourceGenerationsRequest$botId": "

The unique identifier of the bot whose generation requests you want to view.

", + "ListBotResourceGenerationsResponse$botId": "

The unique identifier of the bot for which the generation requests were made.

", "ListBotVersionsRequest$botId": "

The identifier of the bot to list versions for.

", "ListBotVersionsResponse$botId": "

The identifier of the bot to list versions for.

", "ListCustomVocabularyItemsRequest$botId": "

The identifier of the version of the bot associated with this custom vocabulary.

", @@ -2812,6 +2943,9 @@ "StartBotRecommendationRequest$botId": "

The unique identifier of the bot containing the bot recommendation.

", "StartBotRecommendationResponse$botId": "

The unique identifier of the bot containing the bot recommendation.

", "StartBotRecommendationResponse$botRecommendationId": "

The identifier of the bot recommendation that you have created.

", + "StartBotResourceGenerationRequest$botId": "

The unique identifier of the bot for which to generate intents and slot types.

", + "StartBotResourceGenerationResponse$generationId": "

The unique identifier of the generation request.

", + "StartBotResourceGenerationResponse$botId": "

The unique identifier of the bot for which the generation request was made.

", "StartImportRequest$importId": "

The unique identifier for the import. It is included in the response from the CreateUploadUrl operation.

", "StartImportResponse$importId": "

A unique identifier for the import.

", "StartTestExecutionRequest$testSetId": "

The test set Id for the test set execution.

", @@ -3243,6 +3377,16 @@ "refs": { } }, + "ListBotResourceGenerationsRequest": { + "base": null, + "refs": { + } + }, + "ListBotResourceGenerationsResponse": { + "base": null, + "refs": { + } + }, "ListBotVersionsRequest": { "base": null, "refs": { @@ -3513,6 +3657,8 @@ "DescribeBotLocaleResponse$localeId": "

The unique identifier of the described locale.

", "DescribeBotRecommendationRequest$localeId": "

The identifier of the language and locale of the bot recommendation to describe. The string must match one of the supported locales. For more information, see Supported languages.

", "DescribeBotRecommendationResponse$localeId": "

The identifier of the language and locale of the bot recommendation to describe.

", + "DescribeBotResourceGenerationRequest$localeId": "

The locale of the bot for which to return the generation details.

", + "DescribeBotResourceGenerationResponse$localeId": "

The locale of the bot for which the generation request was made.

", "DescribeCustomVocabularyMetadataRequest$localeId": "

The locale to return the custom vocabulary information for. The locale must be en_GB.

", "DescribeCustomVocabularyMetadataResponse$localeId": "

The locale that contains the custom vocabulary to describe.

", "DescribeIntentRequest$localeId": "

The identifier of the language and locale of the intent to describe. The string must match one of the supported locales. For more information, see Supported languages.

", @@ -3521,10 +3667,14 @@ "DescribeSlotResponse$localeId": "

The language and locale specified for the slot.

", "DescribeSlotTypeRequest$localeId": "

The identifier of the language and locale of the slot type to describe. The string must match one of the supported locales. For more information, see Supported languages.

", "DescribeSlotTypeResponse$localeId": "

The language and locale specified for the slot type.

", + "GenerateBotElementRequest$localeId": "

The unique locale Id for the bot request to generate utterances.

", + "GenerateBotElementResponse$localeId": "

The unique locale Id for the bot which received the response.

", "ListAggregatedUtterancesRequest$localeId": "

The identifier of the language and locale where the utterances were collected. For more information, see Supported languages.

", "ListAggregatedUtterancesResponse$localeId": "

The identifier of the language and locale that the utterances are in.

", "ListBotRecommendationsRequest$localeId": "

The identifier of the language and locale of the bot recommendation list.

", "ListBotRecommendationsResponse$localeId": "

The identifier of the language and locale of the bot recommendation list.

", + "ListBotResourceGenerationsRequest$localeId": "

The locale of the bot whose generation requests you want to view.

", + "ListBotResourceGenerationsResponse$localeId": "

The locale of the bot for which the generation requests were made.

", "ListBuiltInIntentsRequest$localeId": "

The identifier of the language and locale of the intents to list. The string must match one of the supported locales. For more information, see Supported languages.

", "ListBuiltInIntentsResponse$localeId": "

The language and locale of the intents in the list.

", "ListBuiltInSlotTypesRequest$localeId": "

The identifier of the language and locale of the slot types to list. The string must match one of the supported locales. For more information, see Supported languages.

", @@ -3548,6 +3698,8 @@ "SessionSpecification$localeId": "

The locale of the bot that the session was held with.

", "StartBotRecommendationRequest$localeId": "

The identifier of the language and locale of the bot recommendation to start. The string must match one of the supported locales. For more information, see Supported languages

", "StartBotRecommendationResponse$localeId": "

The identifier of the language and locale of the bot recommendation to start. The string must match one of the supported locales. For more information, see Supported languages

", + "StartBotResourceGenerationRequest$localeId": "

The locale of the bot for which to generate intents and slot types.

", + "StartBotResourceGenerationResponse$localeId": "

The locale of the bot for which the generation request was made.

", "StopBotRecommendationRequest$localeId": "

The identifier of the language and locale of the bot recommendation to stop. The string must match one of the supported locales. For more information, see Supported languages

", "StopBotRecommendationResponse$localeId": "

The identifier of the language and locale of the bot response to stop. The string must match one of the supported locales. For more information, see Supported languages

", "TestSetDiscrepancyReportBotAliasTarget$localeId": "

The unique identifier of the locale associated with the bot alias.

", @@ -3587,6 +3739,7 @@ "ListBotAliasesRequest$maxResults": "

The maximum number of aliases to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListBotLocalesRequest$maxResults": "

The maximum number of aliases to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListBotRecommendationsRequest$maxResults": "

The maximum number of bot recommendations to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", + "ListBotResourceGenerationsRequest$maxResults": "

The maximum number of results to return in the response.

", "ListBotVersionsRequest$maxResults": "

The maximum number of versions to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListBotsRequest$maxResults": "

The maximum number of bots to return in each page of results. If there are fewer results than the maximum page size, only the actual number of results are returned.

", "ListCustomVocabularyItemsRequest$maxResults": "

The maximum number of items returned by the list operation.

", @@ -3781,6 +3934,8 @@ "ListBotLocalesResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListBotLocales operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListBotLocales operation request to get the next page of results.

", "ListBotRecommendationsRequest$nextToken": "

If the response from the ListBotRecommendation operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", "ListBotRecommendationsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListBotRecommendations operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListBotRecommendations operation request to get the next page of results.

", + "ListBotResourceGenerationsRequest$nextToken": "

If the total number of results is greater than the number specified in the maxResults, the response returns a token in the nextToken field. Use this token when making a request to return the next batch of results.

", + "ListBotResourceGenerationsResponse$nextToken": "

If the total number of results is greater than the number specified in the maxResults, the response returns a token in the nextToken field. Use this token when making a request to return the next batch of results.

", "ListBotVersionsRequest$nextToken": "

If the response to the ListBotVersion operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", "ListBotVersionsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListBotVersions operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListBotAliases operation request to get the next page of results.

", "ListBotsRequest$nextToken": "

If the response from the ListBots operation contains more results than specified in the maxResults parameter, a token is returned in the response.

Use the returned token in the nextToken parameter of a ListBots request to return the next page of results. For a complete set of results, call the ListBots operation until the nextToken returned in the response is null.

", @@ -3996,6 +4151,7 @@ "BotRecommendationResults$botLocaleExportUrl": "

The presigned URL link of the recommended bot definition.

", "BotRecommendationResults$associatedTranscriptsUrl": "

The presigned url link of the associated transcript.

", "CreateUploadUrlResponse$uploadUrl": "

A pre-signed S3 write URL. Upload the zip archive file that contains the definition of your bot or bot locale.

", + "DescribeBotResourceGenerationResponse$generatedBotLocaleUrl": "

The Amazon S3 location of the generated bot locale configuration.

", "DescribeExportResponse$downloadUrl": "

A pre-signed S3 URL that points to the bot or bot locale archive. The URL is only available for 5 minutes after calling the DescribeExport operation.

", "DescribeTestSetDiscrepancyReportResponse$testSetDiscrepancyRawOutputUrl": "

Pre-signed Amazon S3 URL to download the test set discrepancy report.

", "GetTestExecutionArtifactsUrlResponse$downloadArtifactsUrl": "

The pre-signed Amazon S3 URL to download completed test execution.

" @@ -4212,6 +4368,12 @@ "InputSessionStateSpecification$runtimeHints": "

Runtime hints for the session state.

" } }, + "RuntimeSettings": { + "base": "

Contains specifications about the Amazon Lex runtime generative AI capabilities from Amazon Bedrock that you can turn on for your bot.

", + "refs": { + "GenerativeAISettings$runtimeSettings": null + } + }, "S3BucketArn": { "base": null, "refs": { @@ -4265,6 +4427,12 @@ "SampleUtterancesList$member": null } }, + "SampleUtteranceGenerationSpecification": { + "base": "

Contains specifications for the sample utterance generation feature.

", + "refs": { + "BuildtimeSettings$sampleUtteranceGeneration": null + } + }, "SampleUtterancesCount": { "base": null, "refs": { @@ -4277,6 +4445,7 @@ "CreateIntentRequest$sampleUtterances": "

An array of strings that a user might say to signal the intent. For example, \"I want a pizza\", or \"I want a {PizzaSize} pizza\".

In an utterance, slot names are enclosed in curly braces (\"{\", \"}\") to indicate where they should be displayed in the utterance shown to the user..

", "CreateIntentResponse$sampleUtterances": "

The sample utterances specified for the intent.

", "DescribeIntentResponse$sampleUtterances": "

User utterances that trigger this intent.

", + "GenerateBotElementResponse$sampleUtterances": "

The sample utterances for the bot which received the response.

", "SlotValueElicitationSetting$sampleUtterances": "

If you know a specific pattern that users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy. This is optional. In most cases, Amazon Lex is capable of understanding user utterances.

", "SubSlotValueElicitationSetting$sampleUtterances": "

If you know a specific pattern that users might respond to an Amazon Lex request for a sub slot value, you can provide those utterances to improve accuracy. This is optional. In most cases Amazon Lex is capable of understanding user utterances. This is similar to SampleUtterances for slots.

", "UpdateIntentRequest$sampleUtterances": "

New utterances used to invoke the intent.

", @@ -4461,6 +4630,24 @@ "SlotPrioritiesList$member": null } }, + "SlotResolutionImprovementSpecification": { + "base": "

Contains specifications for the assisted slot resolution feature.

", + "refs": { + "RuntimeSettings$slotResolutionImprovement": "

An object containing specifications for the assisted slot resolution feature.

" + } + }, + "SlotResolutionSetting": { + "base": "

Contains information about whether assisted slot resolution is turned on for the slot or not.

", + "refs": { + "SlotValueElicitationSetting$slotResolutionSetting": "

An object containing information about whether assisted slot resolution is turned on for the slot or not.

" + } + }, + "SlotResolutionStrategy": { + "base": null, + "refs": { + "SlotResolutionSetting$slotResolutionStrategy": "

Specifies whether assisted slot resolution is turned on for the slot or not. If the value is EnhancedFallback, assisted slot resolution is activated when Amazon Lex defaults to the AMAZON.FallbackIntent. If the value is Default, assisted slot resolution is turned off.

" + } + }, "SlotResolutionTestResultItem": { "base": "

Information about the success and failure rate of slot resolution in the results of a test execution.

", "refs": { @@ -4664,6 +4851,7 @@ "BuiltInIntentSortBy$order": "

The order to sort the list. You can specify ascending or descending order.

", "BuiltInSlotTypeSortBy$order": "

The order to sort the list. You can choose ascending or descending.

", "ExportSortBy$order": "

The order to sort the list.

", + "GenerationSortBy$order": "

The order by which to sort the generation request information.

", "ImportSortBy$order": "

The order to sort the list.

", "IntentSortBy$order": "

The order to sort the list. You can choose ascending or descending.

", "SlotSortBy$order": "

The order to sort the list. You can choose ascending or descending.

", @@ -4688,6 +4876,16 @@ "refs": { } }, + "StartBotResourceGenerationRequest": { + "base": null, + "refs": { + } + }, + "StartBotResourceGenerationResponse": { + "base": null, + "refs": { + } + }, "StartImportRequest": { "base": null, "refs": { @@ -5239,6 +5437,8 @@ "DescribeBotLocaleResponse$lastBuildSubmittedDateTime": "

The date and time that the locale was last submitted for building.

", "DescribeBotRecommendationResponse$creationDateTime": "

The date and time that the bot recommendation was created.

", "DescribeBotRecommendationResponse$lastUpdatedDateTime": "

The date and time that the bot recommendation was last updated.

", + "DescribeBotResourceGenerationResponse$creationDateTime": "

The date and time at which the item was generated.

", + "DescribeBotResourceGenerationResponse$lastUpdatedDateTime": "

The date and time at which the generated item was updated.

", "DescribeBotResponse$creationDateTime": "

A timestamp of the date and time that the bot was created.

", "DescribeBotResponse$lastUpdatedDateTime": "

A timestamp of the date and time that the bot was last updated.

", "DescribeBotVersionResponse$creationDateTime": "

A timestamp of the date and time that the bot version was created.

", @@ -5264,6 +5464,8 @@ "DescribeTestSetResponse$lastUpdatedDateTime": "

The date and time for the last update of the test set data.

", "ExportSummary$creationDateTime": "

The date and time that the export was created.

", "ExportSummary$lastUpdatedDateTime": "

The date and time that the export was last updated.

", + "GenerationSummary$creationDateTime": "

The date and time at which the generation request was made.

", + "GenerationSummary$lastUpdatedDateTime": "

The date and time at which the generation request was last updated.

", "ImportSummary$creationDateTime": "

The date and time that the import was created.

", "ImportSummary$lastUpdatedDateTime": "

The date and time that the import was last updated.

", "IntentSummary$lastUpdatedDateTime": "

The timestamp of the date and time that the intent was last updated.

", @@ -5289,6 +5491,7 @@ "SlotSummary$lastUpdatedDateTime": "

The timestamp of the last date and time that the slot was updated.

", "SlotTypeSummary$lastUpdatedDateTime": "

A timestamp of the date and time that the slot type was last updated.

", "StartBotRecommendationResponse$creationDateTime": "

A timestamp of the date and time that the bot recommendation was created.

", + "StartBotResourceGenerationResponse$creationDateTime": "

The date and time at which the generation request was made.

", "StartImportResponse$creationDateTime": "

The date and time that the import request was created.

", "StartTestExecutionResponse$creationDateTime": "

The creation date and time for the test set execution.

", "StartTestSetGenerationResponse$creationDateTime": "

The creation date and time for the test set generation.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/models.lex.v2/2020-08-07/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/models.lex.v2/2020-08-07/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -20,6 +20,11 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListBotResourceGenerations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListBotVersions": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mwaa/2020-07-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mwaa/2020-07-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mwaa/2020-07-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mwaa/2020-07-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -137,6 +137,8 @@ {"shape":"ValidationException"}, {"shape":"InternalServerException"} ], + "deprecated":true, + "deprecatedMessage":"This API is for internal use and not meant for public use, and is no longer available.", "endpoint":{"hostPrefix":"ops."} }, "TagResource":{ @@ -213,6 +215,12 @@ "min":1, "pattern":"^[0-9a-z.]+$" }, + "CeleryExecutorQueue":{ + "type":"string", + "max":1224, + "min":1, + "pattern":"^arn:aws(-[a-z]+)?:sqs:[a-z0-9\\-]+:\\d{12}:[a-zA-Z_0-9+=,.@\\-_/]+$" + }, "CloudWatchLogGroupArn":{ "type":"string", "max":1224, @@ -263,6 +271,7 @@ "AirflowConfigurationOptions":{"shape":"AirflowConfigurationOptions"}, "AirflowVersion":{"shape":"AirflowVersion"}, "DagS3Path":{"shape":"RelativePath"}, + "EndpointManagement":{"shape":"EndpointManagement"}, "EnvironmentClass":{"shape":"EnvironmentClass"}, "ExecutionRoleArn":{"shape":"IamRoleArn"}, "KmsKey":{"shape":"KmsKey"}, @@ -338,24 +347,38 @@ "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"} - } + }, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "Dimensions":{ "type":"list", - "member":{"shape":"Dimension"} + "member":{"shape":"Dimension"}, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "Double":{ "type":"double", "box":true }, + "EndpointManagement":{ + "type":"string", + "enum":[ + "CUSTOMER", + "SERVICE" + ] + }, "Environment":{ "type":"structure", "members":{ "AirflowConfigurationOptions":{"shape":"AirflowConfigurationOptions"}, "AirflowVersion":{"shape":"AirflowVersion"}, "Arn":{"shape":"EnvironmentArn"}, + "CeleryExecutorQueue":{"shape":"CeleryExecutorQueue"}, "CreatedAt":{"shape":"CreatedAt"}, "DagS3Path":{"shape":"RelativePath"}, + "DatabaseVpcEndpointService":{"shape":"VpcEndpointServiceName"}, + "EndpointManagement":{"shape":"EndpointManagement"}, "EnvironmentClass":{"shape":"EnvironmentClass"}, "ExecutionRoleArn":{"shape":"IamRoleArn"}, "KmsKey":{"shape":"KmsKey"}, @@ -378,6 +401,7 @@ "Tags":{"shape":"TagMap"}, "WebserverAccessMode":{"shape":"WebserverAccessMode"}, "WebserverUrl":{"shape":"WebserverUrl"}, + "WebserverVpcEndpointService":{"shape":"VpcEndpointServiceName"}, "WeeklyMaintenanceWindowStart":{"shape":"WeeklyMaintenanceWindowStart"} } }, @@ -414,7 +438,8 @@ "UNAVAILABLE", "UPDATE_FAILED", "ROLLING_BACK", - "CREATING_SNAPSHOT" + "CREATING_SNAPSHOT", + "PENDING" ] }, "ErrorCode":{"type":"string"}, @@ -568,7 +593,9 @@ }, "MetricData":{ "type":"list", - "member":{"shape":"MetricDatum"} + "member":{"shape":"MetricDatum"}, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "MetricDatum":{ "type":"structure", @@ -583,7 +610,9 @@ "Timestamp":{"shape":"Timestamp"}, "Unit":{"shape":"Unit"}, "Value":{"shape":"Double"} - } + }, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "MinWorkers":{ "type":"integer", @@ -634,12 +663,16 @@ "locationName":"EnvironmentName" }, "MetricData":{"shape":"MetricData"} - } + }, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "PublishMetricsOutput":{ "type":"structure", "members":{ - } + }, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "RelativePath":{ "type":"string", @@ -693,7 +726,9 @@ "Minimum":{"shape":"Double"}, "SampleCount":{"shape":"Integer"}, "Sum":{"shape":"Double"} - } + }, + "deprecated":true, + "deprecatedMessage":"This type is for internal use and not meant for public use. Data set for this type will be ignored." }, "String":{"type":"string"}, "SubnetId":{ @@ -890,6 +925,12 @@ }, "exception":true }, + "VpcEndpointServiceName":{ + "type":"string", + "max":1224, + "min":1, + "pattern":"^([a-z.-]+)?com\\.amazonaws\\.vpce\\.[a-z0-9\\-]+\\.[a-zA-Z_0-9+=,.@\\-_/]+$" + }, "WebserverAccessMode":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mwaa/2020-07-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mwaa/2020-07-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mwaa/2020-07-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mwaa/2020-07-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Managed Workflows for Apache Airflow

This section contains the Amazon Managed Workflows for Apache Airflow (MWAA) API reference documentation. For more information, see What is Amazon MWAA?.

Endpoints

Regions

For a list of regions that Amazon MWAA supports, see Region availability in the Amazon MWAA User Guide.

", + "service": "

Amazon Managed Workflows for Apache Airflow

This section contains the Amazon Managed Workflows for Apache Airflow (MWAA) API reference documentation. For more information, see What is Amazon MWAA?.

Endpoints

Regions

For a list of supported regions, see Amazon MWAA endpoints and quotas in the Amazon Web Services General Reference.

", "operations": { "CreateCliToken": "

Creates a CLI token for the Airflow CLI. To learn more, see Creating an Apache Airflow CLI token.

", "CreateEnvironment": "

Creates an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

", @@ -31,9 +31,15 @@ "AirflowVersion": { "base": null, "refs": { - "CreateEnvironmentInput$AirflowVersion": "

The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version. Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, and 2.5.1. For more information, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA).

", - "Environment$AirflowVersion": "

The Apache Airflow version on your environment. Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, and 2.5.1.

", - "UpdateEnvironmentInput$AirflowVersion": "

The Apache Airflow version for your environment. To upgrade your environment, specify a newer version of Apache Airflow supported by Amazon MWAA.

Before you upgrade an environment, make sure your requirements, DAGs, plugins, and other resources used in your workflows are compatible with the new Apache Airflow version. For more information about updating your resources, see Upgrading an Amazon MWAA environment.

Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, and 2.5.1.

" + "CreateEnvironmentInput$AirflowVersion": "

The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version. For more information, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA).

Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, 2.5.1, 2.6.3, 2.7.2

", + "Environment$AirflowVersion": "

The Apache Airflow version on your environment.

Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, 2.5.1, 2.6.3, 2.7.2.

", + "UpdateEnvironmentInput$AirflowVersion": "

The Apache Airflow version for your environment. To upgrade your environment, specify a newer version of Apache Airflow supported by Amazon MWAA.

Before you upgrade an environment, make sure your requirements, DAGs, plugins, and other resources used in your workflows are compatible with the new Apache Airflow version. For more information about updating your resources, see Upgrading an Amazon MWAA environment.

Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, 2.5.1, 2.6.3, 2.7.2.

" + } + }, + "CeleryExecutorQueue": { + "base": null, + "refs": { + "Environment$CeleryExecutorQueue": "

The queue ARN for the environment's Celery Executor. Amazon MWAA uses a Celery Executor to distribute tasks across multiple workers. When you create an environment in a shared VPC, you must provide access to the Celery Executor queue from your VPC.

" } }, "CloudWatchLogGroupArn": { @@ -121,6 +127,13 @@ "StatisticSet$Sum": "

Internal only. The sum of values for the sample set.

" } }, + "EndpointManagement": { + "base": null, + "refs": { + "CreateEnvironmentInput$EndpointManagement": "

Defines whether the VPC endpoints configured for the environment are created, and managed, by the customer or by Amazon MWAA. If set to SERVICE, Amazon MWAA will create and manage the required VPC endpoints in your VPC. If set to CUSTOMER, you must create, and manage, the VPC endpoints for your VPC. If you choose to create an environment in a shared VPC, you must set this value to CUSTOMER. In a shared VPC deployment, the environment will remain in PENDING status until you create the VPC endpoints. If you do not take action to create the endpoints within 72 hours, the status will change to CREATE_FAILED. You can delete the failed environment and create a new one.

", + "Environment$EndpointManagement": "

Defines whether the VPC endpoints configured for the environment are created, and managed, by the customer or by Amazon MWAA. If set to SERVICE, Amazon MWAA will create and manage the required VPC endpoints in your VPC. If set to CUSTOMER, you must create, and manage, the VPC endpoints in your VPC.

" + } + }, "Environment": { "base": "

Describes an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

", "refs": { @@ -169,7 +182,7 @@ "EnvironmentStatus": { "base": null, "refs": { - "Environment$Status": "

The status of the Amazon MWAA environment. Valid values:

  • CREATING - Indicates the request to create the environment is in progress.

  • CREATING_SNAPSHOT - Indicates the request to update environment details, or upgrade the environment version, is in progress and Amazon MWAA is creating a storage volume snapshot of the Amazon RDS database cluster associated with the environment. A database snapshot is a backup created at a specific point in time. Amazon MWAA uses snapshots to recover environment metadata if the process to update or upgrade an environment fails.

  • CREATE_FAILED - Indicates the request to create the environment failed, and the environment could not be created.

  • AVAILABLE - Indicates the request was successful and the environment is ready to use.

  • UPDATING - Indicates the request to update the environment is in progress.

  • ROLLING_BACK - Indicates the request to update environment details, or upgrade the environment version, failed and Amazon MWAA is restoring the environment using the latest storage volume snapshot.

  • DELETING - Indicates the request to delete the environment is in progress.

  • DELETED - Indicates the request to delete the environment is complete, and the environment has been deleted.

  • UNAVAILABLE - Indicates the request failed, but the environment was unable to rollback and is not in a stable state.

  • UPDATE_FAILED - Indicates the request to update the environment failed, and the environment has rolled back successfully and is ready to use.

We recommend reviewing our troubleshooting guide for a list of common errors and their solutions. For more information, see Amazon MWAA troubleshooting.

" + "Environment$Status": "

The status of the Amazon MWAA environment.

Valid values:

  • CREATING - Indicates the request to create the environment is in progress.

  • CREATING_SNAPSHOT - Indicates the request to update environment details, or upgrade the environment version, is in progress and Amazon MWAA is creating a storage volume snapshot of the Amazon RDS database cluster associated with the environment. A database snapshot is a backup created at a specific point in time. Amazon MWAA uses snapshots to recover environment metadata if the process to update or upgrade an environment fails.

  • CREATE_FAILED - Indicates the request to create the environment failed, and the environment could not be created.

  • AVAILABLE - Indicates the request was successful and the environment is ready to use.

  • PENDING - Indicates the request was successful, but the process to create the environment is paused until you create the required VPC endpoints in your VPC. After you create the VPC endpoints, the process resumes.

  • UPDATING - Indicates the request to update the environment is in progress.

  • ROLLING_BACK - Indicates the request to update environment details, or upgrade the environment version, failed and Amazon MWAA is restoring the environment using the latest storage volume snapshot.

  • DELETING - Indicates the request to delete the environment is in progress.

  • DELETED - Indicates the request to delete the environment is complete, and the environment has been deleted.

  • UNAVAILABLE - Indicates the request failed, but the environment was unable to rollback and is not in a stable state.

  • UPDATE_FAILED - Indicates the request to update the environment failed, and the environment has rolled back successfully and is ready to use.

We recommend reviewing our troubleshooting guide for a list of common errors and their solutions. For more information, see Amazon MWAA troubleshooting.

" } }, "ErrorCode": { @@ -566,11 +579,18 @@ "refs": { } }, + "VpcEndpointServiceName": { + "base": null, + "refs": { + "Environment$DatabaseVpcEndpointService": "

The VPC endpoint for the environment's Amazon RDS database.

", + "Environment$WebserverVpcEndpointService": "

The VPC endpoint for the environment's web server.

" + } + }, "WebserverAccessMode": { "base": null, "refs": { - "CreateEnvironmentInput$WebserverAccessMode": "

The Apache Airflow Web server access mode. For more information, see Apache Airflow access modes.

", - "Environment$WebserverAccessMode": "

The Apache Airflow Web server access mode. For more information, see Apache Airflow access modes.

", + "CreateEnvironmentInput$WebserverAccessMode": "

Defines the access mode for the Apache Airflow web server. For more information, see Apache Airflow access modes.

", + "Environment$WebserverAccessMode": "

The Apache Airflow web server access mode. For more information, see Apache Airflow access modes.

", "UpdateEnvironmentInput$WebserverAccessMode": "

The Apache Airflow Web server access mode. For more information, see Apache Airflow access modes.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/mwaa/2020-07-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/mwaa/2020-07-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/mwaa/2020-07-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/mwaa/2020-07-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://airflow-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://airflow-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://airflow-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://airflow-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://airflow.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://airflow.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://airflow.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://airflow.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1548,7 +1548,7 @@ "DBClusterIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, - "TdeCredentialPassword":{"shape":"String"}, + "TdeCredentialPassword":{"shape":"SensitiveString"}, "StorageEncrypted":{"shape":"BooleanOptional"}, "KmsKeyId":{"shape":"String"}, "Domain":{"shape":"String"}, @@ -3363,7 +3363,7 @@ "NewDBInstanceIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, - "TdeCredentialPassword":{"shape":"String"}, + "TdeCredentialPassword":{"shape":"SensitiveString"}, "CACertificateIdentifier":{"shape":"String"}, "Domain":{"shape":"String"}, "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, @@ -3868,6 +3868,10 @@ }, "exception":true }, + "SensitiveString":{ + "type":"string", + "sensitive":true + }, "ServerlessV2ScalingConfiguration":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -390,7 +390,7 @@ } }, "DBCluster": { - "base": "

Contains the details of an Amazon Neptune DB cluster.

This data type is used as a response element in the DescribeDBClusters action.

", + "base": "

Contains the details of an Amazon Neptune DB cluster.

This data type is used as a response element in the DescribeDBClusters.

", "refs": { "CreateDBClusterResult$DBCluster": null, "DBClusterList$member": null, @@ -1755,19 +1755,26 @@ "refs": { } }, + "SensitiveString": { + "base": null, + "refs": { + "CreateDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

", + "ModifyDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

" + } + }, "ServerlessV2ScalingConfiguration": { "base": "

Contains the scaling configuration of a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

", "refs": { - "CreateDBClusterMessage$ServerlessV2ScalingConfiguration": null, - "ModifyDBClusterMessage$ServerlessV2ScalingConfiguration": null, - "RestoreDBClusterFromSnapshotMessage$ServerlessV2ScalingConfiguration": null, - "RestoreDBClusterToPointInTimeMessage$ServerlessV2ScalingConfiguration": null + "CreateDBClusterMessage$ServerlessV2ScalingConfiguration": "

Contains the scaling configuration of a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

", + "ModifyDBClusterMessage$ServerlessV2ScalingConfiguration": "

Contains the scaling configuration of a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

", + "RestoreDBClusterFromSnapshotMessage$ServerlessV2ScalingConfiguration": "

Contains the scaling configuration of a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

", + "RestoreDBClusterToPointInTimeMessage$ServerlessV2ScalingConfiguration": "

Contains the scaling configuration of a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

" } }, "ServerlessV2ScalingConfigurationInfo": { "base": "

Shows the scaling configuration for a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

", "refs": { - "DBCluster$ServerlessV2ScalingConfiguration": null + "DBCluster$ServerlessV2ScalingConfiguration": "

Shows the scaling configuration for a Neptune Serverless DB cluster.

For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.

" } }, "SharedSnapshotQuotaExceededFault": { @@ -1834,7 +1841,7 @@ "refs": { "AddRoleToDBClusterMessage$DBClusterIdentifier": "

The name of the DB cluster to associate the IAM role with.

", "AddRoleToDBClusterMessage$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role to associate with the Neptune DB cluster, for example arn:aws:iam::123456789012:role/NeptuneAccessRole.

", - "AddRoleToDBClusterMessage$FeatureName": "

The name of the feature for the Neptune DB cluster that the IAM role is to be associated with. For the list of supported feature names, see DBEngineVersion.

", + "AddRoleToDBClusterMessage$FeatureName": "

The name of the feature for the Neptune DB cluster that the IAM role is to be associated with. For the list of supported feature names, see DBEngineVersion.

", "AddSourceIdentifierToSubscriptionMessage$SubscriptionName": "

The name of the event notification subscription you want to add a source identifier to.

", "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

The identifier of the event source to be added.

Constraints:

  • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.

  • If the source type is a DB security group, a DBSecurityGroupName must be supplied.

  • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.

  • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.

", "AddTagsToResourceMessage$ResourceName": "

The Amazon Neptune resource that the tags are added to. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an Amazon Resource Name (ARN).

", @@ -1879,8 +1886,8 @@ "CreateDBClusterMessage$MasterUsername": "

Not supported by Neptune.

", "CreateDBClusterMessage$MasterUserPassword": "

Not supported by Neptune.

", "CreateDBClusterMessage$OptionGroupName": "

(Not supported by Neptune)

", - "CreateDBClusterMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", - "CreateDBClusterMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide.

Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

Constraints: Minimum 30-minute window.

", + "CreateDBClusterMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see the time blocks available, see Neptune Maintenance Window in the Amazon Neptune User Guide.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", + "CreateDBClusterMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region, occurring on a random day of the week. To see the time blocks available, see Neptune Maintenance Window in the Amazon Neptune User Guide.

Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

Constraints: Minimum 30-minute window.

", "CreateDBClusterMessage$ReplicationSourceIdentifier": "

The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a Read Replica.

", "CreateDBClusterMessage$KmsKeyId": "

The Amazon KMS key identifier for an encrypted DB cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key.

If an encryption key is not specified in KmsKeyId:

  • If ReplicationSourceIdentifier identifies an encrypted source, then Amazon Neptune will use the encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption key.

  • If the StorageEncrypted parameter is true and ReplicationSourceIdentifier is not specified, then Amazon Neptune will use your default encryption key.

Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different default encryption key for each Amazon Region.

If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set KmsKeyId to a KMS key ID that is valid in the destination Amazon Region. This key is used to encrypt the Read Replica in that Amazon Region.

", "CreateDBClusterMessage$PreSignedUrl": "

This parameter is not currently supported.

", @@ -1907,7 +1914,6 @@ "CreateDBInstanceMessage$DBClusterIdentifier": "

The identifier of the DB cluster that the instance will belong to.

For information on creating a DB cluster, see CreateDBCluster.

Type: String

", "CreateDBInstanceMessage$StorageType": "

Specifies the storage type to be associated with the DB instance.

Not applicable. Storage is managed by the DB Cluster.

", "CreateDBInstanceMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

", - "CreateDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

", "CreateDBInstanceMessage$KmsKeyId": "

The Amazon KMS key identifier for an encrypted DB instance.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB instance with the same Amazon account that owns the KMS encryption key used to encrypt the new DB instance, then you can use the KMS key alias instead of the ARN for the KM encryption key.

Not applicable. The KMS key identifier is managed by the DB cluster. For more information, see CreateDBCluster.

If the StorageEncrypted parameter is true, and you do not specify a value for the KmsKeyId parameter, then Amazon Neptune will use your default encryption key. Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different default encryption key for each Amazon Region.

", "CreateDBInstanceMessage$Domain": "

Specify the Active Directory Domain to create the instance in.

", "CreateDBInstanceMessage$MonitoringRoleArn": "

The ARN for the IAM role that permits Neptune to send enhanced monitoring metrics to Amazon CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess.

If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

", @@ -1968,7 +1974,7 @@ "DBClusterParameterGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeDBClusterParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DBClusterRole$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that is associated with the DB cluster.

", "DBClusterRole$Status": "

Describes the state of association between the IAM role and the DB cluster. The Status property returns one of the following values:

  • ACTIVE - the IAM role ARN is associated with the DB cluster and can be used to access other Amazon services on your behalf.

  • PENDING - the IAM role ARN is being associated with the DB cluster.

  • INVALID - the IAM role ARN is associated with the DB cluster, but the DB cluster is unable to assume the IAM role in order to access other Amazon services on your behalf.

", - "DBClusterRole$FeatureName": "

The name of the feature associated with the Amazon Identity and Access Management (IAM) role. For the list of supported feature names, see DescribeDBEngineVersions.

", + "DBClusterRole$FeatureName": "

The name of the feature associated with the Amazon Identity and Access Management (IAM) role. For the list of supported feature names, see DescribeDBEngineVersions.

", "DBClusterSnapshot$DBClusterSnapshotIdentifier": "

Specifies the identifier for a DB cluster snapshot. Must match the identifier of an existing snapshot.

After you restore a DB cluster using a DBClusterSnapshotIdentifier, you must specify the same DBClusterSnapshotIdentifier for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the snapshot again, and the data in the database is not changed.

However, if you don't specify the DBClusterSnapshotIdentifier, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, the DB cluster is restored from the snapshot specified by the DBClusterSnapshotIdentifier, and the original DB cluster is deleted.

", "DBClusterSnapshot$DBClusterIdentifier": "

Specifies the DB cluster identifier of the DB cluster that this DB cluster snapshot was created from.

", "DBClusterSnapshot$Engine": "

Specifies the name of the database engine.

", @@ -2155,7 +2161,7 @@ "ModifyDBClusterMessage$OptionGroupName": "

Not supported by Neptune.

", "ModifyDBClusterMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", "ModifyDBClusterMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region, occurring on a random day of the week.

Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

Constraints: Minimum 30-minute window.

", - "ModifyDBClusterMessage$EngineVersion": "

The version number of the database engine to which you want to upgrade. Changing this parameter results in an outage. The change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true.

For a list of valid engine versions, see Engine Releases for Amazon Neptune, or call DescribeDBEngineVersions.

", + "ModifyDBClusterMessage$EngineVersion": "

The version number of the database engine to which you want to upgrade. Changing this parameter results in an outage. The change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true.

For a list of valid engine versions, see Engine Releases for Amazon Neptune, or call DescribeDBEngineVersions.

", "ModifyDBClusterMessage$DBInstanceParameterGroupName": "

The name of the DB parameter group to apply to all instances of the DB cluster.

When you apply a parameter group using DBInstanceParameterGroupName, parameter changes aren't applied during the next maintenance window but instead are applied immediately.

Default: The existing name setting

Constraints:

  • The DB parameter group must be in the same DB parameter group family as the target DB cluster version.

  • The DBInstanceParameterGroupName parameter is only valid in combination with the AllowMajorVersionUpgrade parameter.

", "ModifyDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

The name of the DB cluster parameter group to modify.

", "ModifyDBClusterSnapshotAttributeMessage$DBClusterSnapshotIdentifier": "

The identifier for the DB cluster snapshot to modify the attributes for.

", @@ -2173,7 +2179,6 @@ "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

The new DB instance identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot will occur immediately if you set Apply Immediately to true, or will occur during the next maintenance window if Apply Immediately to false. This value is stored as a lowercase string.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • The first character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

Example: mydbinstance

", "ModifyDBInstanceMessage$StorageType": "

Not supported.

", "ModifyDBInstanceMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

", - "ModifyDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

", "ModifyDBInstanceMessage$CACertificateIdentifier": "

Indicates the certificate that needs to be associated with the instance.

", "ModifyDBInstanceMessage$Domain": "

Not supported.

", "ModifyDBInstanceMessage$MonitoringRoleArn": "

The ARN for the IAM role that permits Neptune to send enhanced monitoring metrics to Amazon CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess.

If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

", @@ -2223,7 +2228,7 @@ "RemoveFromGlobalClusterMessage$DbClusterIdentifier": "

The Amazon Resource Name (ARN) identifying the cluster to be detached from the Neptune global database cluster.

", "RemoveRoleFromDBClusterMessage$DBClusterIdentifier": "

The name of the DB cluster to disassociate the IAM role from.

", "RemoveRoleFromDBClusterMessage$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role to disassociate from the DB cluster, for example arn:aws:iam::123456789012:role/NeptuneAccessRole.

", - "RemoveRoleFromDBClusterMessage$FeatureName": "

The name of the feature for the DB cluster that the IAM role is to be disassociated from. For the list of supported feature names, see DescribeDBEngineVersions.

", + "RemoveRoleFromDBClusterMessage$FeatureName": "

The name of the feature for the DB cluster that the IAM role is to be disassociated from. For the list of supported feature names, see DescribeDBEngineVersions.

", "RemoveSourceIdentifierFromSubscriptionMessage$SubscriptionName": "

The name of the event notification subscription you want to remove a source identifier from.

", "RemoveSourceIdentifierFromSubscriptionMessage$SourceIdentifier": "

The source identifier to be removed from the subscription, such as the DB instance identifier for a DB instance or the name of a security group.

", "RemoveTagsFromResourceMessage$ResourceName": "

The Amazon Neptune resource that the tags are removed from. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an Amazon Resource Name (ARN).

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://rds-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://rds-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://rds.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://rds-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://rds.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://rds-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://rds.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://rds.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://rds.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://rds.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptune/2014-10-31/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptune/2014-10-31/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -547,6 +547,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -560,6 +571,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -573,6 +595,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -586,6 +619,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { @@ -635,6 +679,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptunedata/2023-08-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptunedata/2023-08-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptunedata/2023-08-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptunedata/2023-08-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2510,9 +2510,6 @@ "requestId", "code" ], - "retryable": { - "throttling": false - }, "type": "structure" }, "Classes": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptunedata/2023-08-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptunedata/2023-08-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptunedata/2023-08-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptunedata/2023-08-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,49 +2,49 @@ "version": "2.0", "service": "

Neptune Data API

The Amazon Neptune data API provides SDK support for more than 40 of Neptune's data operations, including data loading, query execution, data inquiry, and machine learning. It supports the Gremlin and openCypher query languages, and is available in all SDK languages. It automatically signs API requests and greatly simplifies integrating Neptune into your applications.

", "operations": { - "CancelGremlinQuery": "

Cancels a Gremlin query. See Gremlin query cancellation for more information.

", - "CancelLoaderJob": "

Cancels a specified load job. This is an HTTP DELETE request.

See Neptune Loader Get-Status API for more information.

", - "CancelMLDataProcessingJob": "

Cancels a Neptune ML data processing job. See The dataprocessing command.

", - "CancelMLModelTrainingJob": "

Cancels a Neptune ML model training job. See Model training using the modeltraining command.

", - "CancelMLModelTransformJob": "

Cancels a specified model transform job. See Use a trained model to generate new model artifacts.

", - "CancelOpenCypherQuery": "

Cancels a specified openCypher query. See Neptune openCypher status endpoint for more information.

", - "CreateMLEndpoint": "

Creates a new Neptune ML inference endpoint that lets you query one specific model that the model-training process constructed. See Managing inference endpoints using the endpoints command.

", - "DeleteMLEndpoint": "

Cancels the creation of a Neptune ML inference endpoint. See Managing inference endpoints using the endpoints command.

", - "DeletePropertygraphStatistics": "

Deletes statistics for Gremlin and openCypher (property graph) data.

", - "DeleteSparqlStatistics": "

Deletes SPARQL statistics

", - "ExecuteFastReset": "

The fast reset REST API lets you reset a Neptune graph quicky and easily, removing all of its data.

Neptune fast reset is a two-step process. First you call ExecuteFastReset with action set to initiateDatabaseReset. This returns a UUID token which you then include when calling ExecuteFastReset again with action set to performDatabaseReset. See Empty an Amazon Neptune DB cluster using the fast reset API.

", - "ExecuteGremlinExplainQuery": "

Executes a Gremlin Explain query.

Amazon Neptune has added a Gremlin feature named explain that provides is a self-service tool for understanding the execution approach being taken by the Neptune engine for the query. You invoke it by adding an explain parameter to an HTTP call that submits a Gremlin query.

The explain feature provides information about the logical structure of query execution plans. You can use this information to identify potential evaluation and execution bottlenecks and to tune your query, as explained in Tuning Gremlin queries. You can also use query hints to improve query execution plans.

", - "ExecuteGremlinProfileQuery": "

Executes a Gremlin Profile query, which runs a specified traversal, collects various metrics about the run, and produces a profile report as output. See Gremlin profile API in Neptune for details.

", - "ExecuteGremlinQuery": "

This commands executes a Gremlin query. Amazon Neptune is compatible with Apache TinkerPop3 and Gremlin, so you can use the Gremlin traversal language to query the graph, as described under The Graph in the Apache TinkerPop3 documentation. More details can also be found in Accessing a Neptune graph with Gremlin.

", - "ExecuteOpenCypherExplainQuery": "

Executes an openCypher explain request. See The openCypher explain feature for more information.

", - "ExecuteOpenCypherQuery": "

Executes an openCypher query. See Accessing the Neptune Graph with openCypher for more information.

Neptune supports building graph applications using openCypher, which is currently one of the most popular query languages among developers working with graph databases. Developers, business analysts, and data scientists like openCypher's declarative, SQL-inspired syntax because it provides a familiar structure in which to querying property graphs.

The openCypher language was originally developed by Neo4j, then open-sourced in 2015 and contributed to the openCypher project under an Apache 2 open-source license.

", - "GetEngineStatus": "

Check the status of the graph database on the host.

", - "GetGremlinQueryStatus": "

Gets the status of a specified Gremlin query.

", - "GetLoaderJobStatus": "

Gets status information about a specified load job. Neptune keeps track of the most recent 1,024 bulk load jobs, and stores the last 10,000 error details per job.

See Neptune Loader Get-Status API for more information.

", - "GetMLDataProcessingJob": "

Retrieves information about a specified data processing job. See The dataprocessing command.

", - "GetMLEndpoint": "

Retrieves details about an inference endpoint. See Managing inference endpoints using the endpoints command.

", - "GetMLModelTrainingJob": "

Retrieves information about a Neptune ML model training job. See Model training using the modeltraining command.

", - "GetMLModelTransformJob": "

Gets information about a specified model transform job. See Use a trained model to generate new model artifacts.

", - "GetOpenCypherQueryStatus": "

Retrieves the status of a specified openCypher query.

", - "GetPropertygraphStatistics": "

Gets property graph statistics (Gremlin and openCypher).

", - "GetPropertygraphStream": "

Gets a stream for a property graph.

With the Neptune Streams feature, you can generate a complete sequence of change-log entries that record every change made to your graph data as it happens. GetPropertygraphStream lets you collect these change-log entries for a property graph.

The Neptune streams feature needs to be enabled on your Neptune DBcluster. To enable streams, set the neptune_streams DB cluster parameter to 1.

See Capturing graph changes in real time using Neptune streams.

", - "GetPropertygraphSummary": "

Gets a graph summary for a property graph.

", - "GetRDFGraphSummary": "

Gets a graph summary for an RDF graph.

", + "CancelGremlinQuery": "

Cancels a Gremlin query. See Gremlin query cancellation for more information.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CancelQuery IAM action in that cluster.

", + "CancelLoaderJob": "

Cancels a specified load job. This is an HTTP DELETE request. See Neptune Loader Get-Status API for more information.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CancelLoaderJob IAM action in that cluster..

", + "CancelMLDataProcessingJob": "

Cancels a Neptune ML data processing job. See The dataprocessing command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CancelMLDataProcessingJob IAM action in that cluster.

", + "CancelMLModelTrainingJob": "

Cancels a Neptune ML model training job. See Model training using the modeltraining command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CancelMLModelTrainingJob IAM action in that cluster.

", + "CancelMLModelTransformJob": "

Cancels a specified model transform job. See Use a trained model to generate new model artifacts.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CancelMLModelTransformJob IAM action in that cluster.

", + "CancelOpenCypherQuery": "

Cancels a specified openCypher query. See Neptune openCypher status endpoint for more information.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CancelQuery IAM action in that cluster.

", + "CreateMLEndpoint": "

Creates a new Neptune ML inference endpoint that lets you query one specific model that the model-training process constructed. See Managing inference endpoints using the endpoints command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:CreateMLEndpoint IAM action in that cluster.

", + "DeleteMLEndpoint": "

Cancels the creation of a Neptune ML inference endpoint. See Managing inference endpoints using the endpoints command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:DeleteMLEndpoint IAM action in that cluster.

", + "DeletePropertygraphStatistics": "

Deletes statistics for Gremlin and openCypher (property graph) data.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:DeleteStatistics IAM action in that cluster.

", + "DeleteSparqlStatistics": "

Deletes SPARQL statistics

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:DeleteStatistics IAM action in that cluster.

", + "ExecuteFastReset": "

The fast reset REST API lets you reset a Neptune graph quicky and easily, removing all of its data.

Neptune fast reset is a two-step process. First you call ExecuteFastReset with action set to initiateDatabaseReset. This returns a UUID token which you then include when calling ExecuteFastReset again with action set to performDatabaseReset. See Empty an Amazon Neptune DB cluster using the fast reset API.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ResetDatabase IAM action in that cluster.

", + "ExecuteGremlinExplainQuery": "

Executes a Gremlin Explain query.

Amazon Neptune has added a Gremlin feature named explain that provides is a self-service tool for understanding the execution approach being taken by the Neptune engine for the query. You invoke it by adding an explain parameter to an HTTP call that submits a Gremlin query.

The explain feature provides information about the logical structure of query execution plans. You can use this information to identify potential evaluation and execution bottlenecks and to tune your query, as explained in Tuning Gremlin queries. You can also use query hints to improve query execution plans.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows one of the following IAM actions in that cluster, depending on the query:

Note that the neptune-db:QueryLanguage:Gremlin IAM condition key can be used in the policy document to restrict the use of Gremlin queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ExecuteGremlinProfileQuery": "

Executes a Gremlin Profile query, which runs a specified traversal, collects various metrics about the run, and produces a profile report as output. See Gremlin profile API in Neptune for details.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ReadDataViaQuery IAM action in that cluster.

Note that the neptune-db:QueryLanguage:Gremlin IAM condition key can be used in the policy document to restrict the use of Gremlin queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ExecuteGremlinQuery": "

This commands executes a Gremlin query. Amazon Neptune is compatible with Apache TinkerPop3 and Gremlin, so you can use the Gremlin traversal language to query the graph, as described under The Graph in the Apache TinkerPop3 documentation. More details can also be found in Accessing a Neptune graph with Gremlin.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that enables one of the following IAM actions in that cluster, depending on the query:

Note that the neptune-db:QueryLanguage:Gremlin IAM condition key can be used in the policy document to restrict the use of Gremlin queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ExecuteOpenCypherExplainQuery": "

Executes an openCypher explain request. See The openCypher explain feature for more information.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ReadDataViaQuery IAM action in that cluster.

Note that the neptune-db:QueryLanguage:OpenCypher IAM condition key can be used in the policy document to restrict the use of openCypher queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ExecuteOpenCypherQuery": "

Executes an openCypher query. See Accessing the Neptune Graph with openCypher for more information.

Neptune supports building graph applications using openCypher, which is currently one of the most popular query languages among developers working with graph databases. Developers, business analysts, and data scientists like openCypher's declarative, SQL-inspired syntax because it provides a familiar structure in which to querying property graphs.

The openCypher language was originally developed by Neo4j, then open-sourced in 2015 and contributed to the openCypher project under an Apache 2 open-source license.

Note that when invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows one of the following IAM actions in that cluster, depending on the query:

Note also that the neptune-db:QueryLanguage:OpenCypher IAM condition key can be used in the policy document to restrict the use of openCypher queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "GetEngineStatus": "

Retrieves the status of the graph database on the host.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetEngineStatus IAM action in that cluster.

", + "GetGremlinQueryStatus": "

Gets the status of a specified Gremlin query.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetQueryStatus IAM action in that cluster.

Note that the neptune-db:QueryLanguage:Gremlin IAM condition key can be used in the policy document to restrict the use of Gremlin queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "GetLoaderJobStatus": "

Gets status information about a specified load job. Neptune keeps track of the most recent 1,024 bulk load jobs, and stores the last 10,000 error details per job.

See Neptune Loader Get-Status API for more information.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetLoaderJobStatus IAM action in that cluster..

", + "GetMLDataProcessingJob": "

Retrieves information about a specified data processing job. See The dataprocessing command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:neptune-db:GetMLDataProcessingJobStatus IAM action in that cluster.

", + "GetMLEndpoint": "

Retrieves details about an inference endpoint. See Managing inference endpoints using the endpoints command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetMLEndpointStatus IAM action in that cluster.

", + "GetMLModelTrainingJob": "

Retrieves information about a Neptune ML model training job. See Model training using the modeltraining command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetMLModelTrainingJobStatus IAM action in that cluster.

", + "GetMLModelTransformJob": "

Gets information about a specified model transform job. See Use a trained model to generate new model artifacts.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetMLModelTransformJobStatus IAM action in that cluster.

", + "GetOpenCypherQueryStatus": "

Retrieves the status of a specified openCypher query.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetQueryStatus IAM action in that cluster.

Note that the neptune-db:QueryLanguage:OpenCypher IAM condition key can be used in the policy document to restrict the use of openCypher queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "GetPropertygraphStatistics": "

Gets property graph statistics (Gremlin and openCypher).

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetStatisticsStatus IAM action in that cluster.

", + "GetPropertygraphStream": "

Gets a stream for a property graph.

With the Neptune Streams feature, you can generate a complete sequence of change-log entries that record every change made to your graph data as it happens. GetPropertygraphStream lets you collect these change-log entries for a property graph.

The Neptune streams feature needs to be enabled on your Neptune DBcluster. To enable streams, set the neptune_streams DB cluster parameter to 1.

See Capturing graph changes in real time using Neptune streams.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetStreamRecords IAM action in that cluster.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that enables one of the following IAM actions, depending on the query:

Note that you can restrict property-graph queries using the following IAM context keys:

See Condition keys available in Neptune IAM data-access policy statements).

", + "GetPropertygraphSummary": "

Gets a graph summary for a property graph.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetGraphSummary IAM action in that cluster.

", + "GetRDFGraphSummary": "

Gets a graph summary for an RDF graph.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetGraphSummary IAM action in that cluster.

", "GetSparqlStatistics": "

Gets RDF statistics (SPARQL).

", - "GetSparqlStream": "

Gets a stream for an RDF graph.

With the Neptune Streams feature, you can generate a complete sequence of change-log entries that record every change made to your graph data as it happens. GetSparqlStream lets you collect these change-log entries for an RDF graph.

The Neptune streams feature needs to be enabled on your Neptune DBcluster. To enable streams, set the neptune_streams DB cluster parameter to 1.

See Capturing graph changes in real time using Neptune streams.

", - "ListGremlinQueries": "

Lists active Gremlin queries. See Gremlin query status API for details about the output.

", - "ListLoaderJobs": "

Retrieves a list of the loadIds for all active loader jobs.

", - "ListMLDataProcessingJobs": "

Returns a list of Neptune ML data processing jobs. See Listing active data-processing jobs using the Neptune ML dataprocessing command.

", - "ListMLEndpoints": "

Lists existing inference endpoints. See Managing inference endpoints using the endpoints command.

", - "ListMLModelTrainingJobs": "

Lists Neptune ML model-training jobs. See Model training using the modeltraining command.

", - "ListMLModelTransformJobs": "

Returns a list of model transform job IDs. See Use a trained model to generate new model artifacts.

", - "ListOpenCypherQueries": "

Lists active openCypher queries. See Neptune openCypher status endpoint for more information.

", - "ManagePropertygraphStatistics": "

Manages the generation and use of property graph statistics.

", - "ManageSparqlStatistics": "

Manages the generation and use of RDF graph statistics.

", - "StartLoaderJob": "

Starts a Neptune bulk loader job to load data from an Amazon S3 bucket into a Neptune DB instance. See Using the Amazon Neptune Bulk Loader to Ingest Data.

", - "StartMLDataProcessingJob": "

Creates a new Neptune ML data processing job for processing the graph data exported from Neptune for training. See The dataprocessing command.

", - "StartMLModelTrainingJob": "

Creates a new Neptune ML model training job. See Model training using the modeltraining command.

", - "StartMLModelTransformJob": "

Creates a new model transform job. See Use a trained model to generate new model artifacts.

" + "GetSparqlStream": "

Gets a stream for an RDF graph.

With the Neptune Streams feature, you can generate a complete sequence of change-log entries that record every change made to your graph data as it happens. GetSparqlStream lets you collect these change-log entries for an RDF graph.

The Neptune streams feature needs to be enabled on your Neptune DBcluster. To enable streams, set the neptune_streams DB cluster parameter to 1.

See Capturing graph changes in real time using Neptune streams.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetStreamRecords IAM action in that cluster.

Note that the neptune-db:QueryLanguage:Sparql IAM condition key can be used in the policy document to restrict the use of SPARQL queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ListGremlinQueries": "

Lists active Gremlin queries. See Gremlin query status API for details about the output.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetQueryStatus IAM action in that cluster.

Note that the neptune-db:QueryLanguage:Gremlin IAM condition key can be used in the policy document to restrict the use of Gremlin queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ListLoaderJobs": "

Retrieves a list of the loadIds for all active loader jobs.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ListLoaderJobs IAM action in that cluster..

", + "ListMLDataProcessingJobs": "

Returns a list of Neptune ML data processing jobs. See Listing active data-processing jobs using the Neptune ML dataprocessing command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ListMLDataProcessingJobs IAM action in that cluster.

", + "ListMLEndpoints": "

Lists existing inference endpoints. See Managing inference endpoints using the endpoints command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ListMLEndpoints IAM action in that cluster.

", + "ListMLModelTrainingJobs": "

Lists Neptune ML model-training jobs. See Model training using the modeltraining command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:neptune-db:ListMLModelTrainingJobs IAM action in that cluster.

", + "ListMLModelTransformJobs": "

Returns a list of model transform job IDs. See Use a trained model to generate new model artifacts.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ListMLModelTransformJobs IAM action in that cluster.

", + "ListOpenCypherQueries": "

Lists active openCypher queries. See Neptune openCypher status endpoint for more information.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetQueryStatus IAM action in that cluster.

Note that the neptune-db:QueryLanguage:OpenCypher IAM condition key can be used in the policy document to restrict the use of openCypher queries (see Condition keys available in Neptune IAM data-access policy statements).

", + "ManagePropertygraphStatistics": "

Manages the generation and use of property graph statistics.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ManageStatistics IAM action in that cluster.

", + "ManageSparqlStatistics": "

Manages the generation and use of RDF graph statistics.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:ManageStatistics IAM action in that cluster.

", + "StartLoaderJob": "

Starts a Neptune bulk loader job to load data from an Amazon S3 bucket into a Neptune DB instance. See Using the Amazon Neptune Bulk Loader to Ingest Data.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:StartLoaderJob IAM action in that cluster.

", + "StartMLDataProcessingJob": "

Creates a new Neptune ML data processing job for processing the graph data exported from Neptune for training. See The dataprocessing command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:StartMLModelDataProcessingJob IAM action in that cluster.

", + "StartMLModelTrainingJob": "

Creates a new Neptune ML model training job. See Model training using the modeltraining command.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:StartMLModelTrainingJob IAM action in that cluster.

", + "StartMLModelTransformJob": "

Creates a new model transform job. See Use a trained model to generate new model artifacts.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:StartMLModelTransformJob IAM action in that cluster.

" }, "shapes": { "AccessDeniedException": { @@ -92,7 +92,7 @@ "SparqlRecord$isLastOp": "

Only present if this operation is the last one in its transaction. If present, it is set to true. It is useful for ensuring that an entire transaction is consumed.

", "StartLoaderJobInput$failOnError": "

failOnError   –   A flag to toggle a complete stop on an error.

Allowed values: \"TRUE\", \"FALSE\".

Default value: \"TRUE\".

When this parameter is set to \"FALSE\", the loader tries to load all the data in the location specified, skipping any entries with errors.

When this parameter is set to \"TRUE\", the loader stops as soon as it encounters an error. Data loaded up to that point persists.

", "StartLoaderJobInput$updateSingleCardinalityProperties": "

updateSingleCardinalityProperties is an optional parameter that controls how the bulk loader treats a new value for single-cardinality vertex or edge properties. This is not supported for loading openCypher data.

Allowed values: \"TRUE\", \"FALSE\".

Default value: \"FALSE\".

By default, or when updateSingleCardinalityProperties is explicitly set to \"FALSE\", the loader treats a new value as an error, because it violates single cardinality.

When updateSingleCardinalityProperties is set to \"TRUE\", on the other hand, the bulk loader replaces the existing value with the new one. If multiple edge or single-cardinality vertex property values are provided in the source file(s) being loaded, the final value at the end of the bulk load could be any one of those new values. The loader only guarantees that the existing value has been replaced by one of the new ones.

", - "StartLoaderJobInput$queueRequest": "

This is an optional flag parameter that indicates whether the load request can be queued up or not.

You don't have to wait for one load job to complete before issuing the next one, because Neptune can queue up as many as 64 jobs at a time, provided that their queueRequest parameters are all set to \"TRUE\".

If the queueRequest parameter is omitted or set to \"FALSE\", the load request will fail if another load job is already running.

Allowed values: \"TRUE\", \"FALSE\".

Default value: \"FALSE\".

", + "StartLoaderJobInput$queueRequest": "

This is an optional flag parameter that indicates whether the load request can be queued up or not.

You don't have to wait for one load job to complete before issuing the next one, because Neptune can queue up as many as 64 jobs at a time, provided that their queueRequest parameters are all set to \"TRUE\". The queue order of the jobs will be first-in-first-out (FIFO).

If the queueRequest parameter is omitted or set to \"FALSE\", the load request will fail if another load job is already running.

Allowed values: \"TRUE\", \"FALSE\".

Default value: \"FALSE\".

", "StartLoaderJobInput$userProvidedEdgeIds": "

This parameter is required only when loading openCypher data that contains relationship IDs. It must be included and set to True when openCypher relationship IDs are explicitly provided in the load data (recommended).

When userProvidedEdgeIds is absent or set to True, an :ID column must be present in every relationship file in the load.

When userProvidedEdgeIds is present and set to False, relationship files in the load must not contain an :ID column. Instead, the Neptune loader automatically generates an ID for each relationship.

It's useful to provide relationship IDs explicitly so that the loader can resume loading after error in the CSV data have been fixed, without having to reload any relationships that have already been loaded. If relationship IDs have not been explicitly assigned, the loader cannot resume a failed load if any relationship file has had to be corrected, and must instead reload all the relationships.

", "StartMLModelTrainingJobInput$enableManagedSpotTraining": "

Optimizes the cost of training machine-learning models by using Amazon Elastic Compute Cloud spot instances. The default is False.

", "Statistics$autoCompute": "

Indicates whether or not automatic statistics generation is enabled.

", @@ -973,7 +973,7 @@ "RDFGraphSummary": { "base": "

The RDF graph summary API returns a read-only list of classes and predicate keys, along with counts of quads, subjects, and predicates.

", "refs": { - "RDFGraphSummaryValueMap$graphSummary": "

The graph summary of an RDF graph. See Graph summary response for an RDF graph.

" + "RDFGraphSummaryValueMap$graphSummary": "

The graph summary of an RDF graph. See Graph summary response for an RDF graph.

" } }, "RDFGraphSummaryValueMap": { @@ -1217,9 +1217,9 @@ "GetOpenCypherQueryStatusInput$queryId": "

The unique ID of the openCypher query for which to retrieve the query status.

", "GetOpenCypherQueryStatusOutput$queryId": "

The unique ID of the query for which status is being returned.

", "GetOpenCypherQueryStatusOutput$queryString": "

The openCypher query string.

", - "GetPropertygraphStatisticsOutput$status": "

The HTTP return code of the request. If the request succeeded, the code is 200. See Common error codes for DFE statistics request for a list of common errors.

", + "GetPropertygraphStatisticsOutput$status": "

The HTTP return code of the request. If the request succeeded, the code is 200. See Common error codes for DFE statistics request for a list of common errors.

", "GetPropertygraphStreamOutput$format": "

Serialization format for the change records being returned. Currently, the only supported value is PG_JSON.

", - "GetSparqlStatisticsOutput$status": "

The HTTP return code of the request. If the request succeeded, the code is 200. See Common error codes for DFE statistics request for a list of common errors.

", + "GetSparqlStatisticsOutput$status": "

The HTTP return code of the request. If the request succeeded, the code is 200. See Common error codes for DFE statistics request for a list of common errors.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetStatisticsStatus IAM action in that cluster.

", "GetSparqlStreamOutput$format": "

Serialization format for the change records being returned. Currently, the only supported value is NQUADS.

", "GremlinQueryStatus$queryId": "

The ID of the Gremlin query.

", "GremlinQueryStatus$queryString": "

The query string of the Gremlin query.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptunedata/2023-08-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptunedata/2023-08-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/neptunedata/2023-08-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/neptunedata/2023-08-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/network-firewall/2020-11-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/network-firewall/2020-11-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/network-firewall/2020-11-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/network-firewall/2020-11-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -616,6 +616,18 @@ "type":"list", "member":{"shape":"Address"} }, + "AnalysisResult":{ + "type":"structure", + "members":{ + "IdentifiedRuleIds":{"shape":"RuleIdList"}, + "IdentifiedType":{"shape":"IdentifiedType"}, + "AnalysisDetail":{"shape":"CollectionMember_String"} + } + }, + "AnalysisResultList":{ + "type":"list", + "member":{"shape":"AnalysisResult"} + }, "AssociateFirewallPolicyRequest":{ "type":"structure", "required":["FirewallPolicyArn"], @@ -709,6 +721,13 @@ "type":"list", "member":{"shape":"TlsCertificateData"} }, + "CheckCertificateRevocationStatusActions":{ + "type":"structure", + "members":{ + "RevokedStatusAction":{"shape":"RevocationCheckAction"}, + "UnknownStatusAction":{"shape":"RevocationCheckAction"} + } + }, "CollectionMember_String":{"type":"string"}, "ConfigurationSyncState":{ "type":"string", @@ -789,7 +808,8 @@ "Tags":{"shape":"TagList"}, "DryRun":{"shape":"Boolean"}, "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}, - "SourceMetadata":{"shape":"SourceMetadata"} + "SourceMetadata":{"shape":"SourceMetadata"}, + "AnalyzeRuleGroup":{"shape":"Boolean"} } }, "CreateRuleGroupResponse":{ @@ -1002,7 +1022,8 @@ "members":{ "RuleGroupName":{"shape":"ResourceName"}, "RuleGroupArn":{"shape":"ResourceArn"}, - "Type":{"shape":"RuleGroupType"} + "Type":{"shape":"RuleGroupType"}, + "AnalyzeRuleGroup":{"shape":"Boolean"} } }, "DescribeRuleGroupResponse":{ @@ -1298,6 +1319,13 @@ "key":{"shape":"RuleVariableName"}, "value":{"shape":"IPSet"} }, + "IdentifiedType":{ + "type":"string", + "enum":[ + "STATELESS_RULE_FORWARDING_ASYMMETRICALLY", + "STATELESS_RULE_CONTAINS_TCP_FLAGS" + ] + }, "InsufficientCapacityException":{ "type":"structure", "members":{ @@ -1676,7 +1704,16 @@ "type":"string", "enum":[ "ACTIVE", - "DELETING" + "DELETING", + "ERROR" + ] + }, + "RevocationCheckAction":{ + "type":"string", + "enum":[ + "PASS", + "DROP", + "REJECT" ] }, "RuleCapacity":{"type":"integer"}, @@ -1729,7 +1766,8 @@ "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}, "SourceMetadata":{"shape":"SourceMetadata"}, "SnsTopic":{"shape":"ResourceArn"}, - "LastModifiedTime":{"shape":"LastUpdateTime"} + "LastModifiedTime":{"shape":"LastUpdateTime"}, + "AnalysisResults":{"shape":"AnalysisResultList"} } }, "RuleGroupType":{ @@ -1743,6 +1781,10 @@ "type":"list", "member":{"shape":"RuleGroupMetadata"} }, + "RuleIdList":{ + "type":"list", + "member":{"shape":"CollectionMember_String"} + }, "RuleOption":{ "type":"structure", "required":["Keyword"], @@ -1816,7 +1858,9 @@ "type":"structure", "members":{ "ServerCertificates":{"shape":"ServerCertificates"}, - "Scopes":{"shape":"ServerCertificateScopes"} + "Scopes":{"shape":"ServerCertificateScopes"}, + "CertificateAuthorityArn":{"shape":"ResourceArn"}, + "CheckCertificateRevocationStatus":{"shape":"CheckCertificateRevocationStatusActions"} } }, "ServerCertificateConfigurations":{ @@ -2101,7 +2145,8 @@ "LastModifiedTime":{"shape":"LastUpdateTime"}, "NumberOfAssociations":{"shape":"NumberOfAssociations"}, "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}, - "Certificates":{"shape":"Certificates"} + "Certificates":{"shape":"Certificates"}, + "CertificateAuthority":{"shape":"TlsCertificateData"} } }, "TLSInspectionConfigurations":{ @@ -2344,7 +2389,8 @@ "Description":{"shape":"Description"}, "DryRun":{"shape":"Boolean"}, "EncryptionConfiguration":{"shape":"EncryptionConfiguration"}, - "SourceMetadata":{"shape":"SourceMetadata"} + "SourceMetadata":{"shape":"SourceMetadata"}, + "AnalyzeRuleGroup":{"shape":"Boolean"} } }, "UpdateRuleGroupResponse":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/network-firewall/2020-11-12/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/network-firewall/2020-11-12/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/network-firewall/2020-11-12/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/network-firewall/2020-11-12/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,7 +7,7 @@ "CreateFirewall": "

Creates an Network Firewall Firewall and accompanying FirewallStatus for a VPC.

The firewall defines the configuration settings for an Network Firewall firewall. The settings that you can define at creation include the firewall policy, the subnets in your VPC to use for the firewall endpoints, and any tags that are attached to the firewall Amazon Web Services resource.

After you create a firewall, you can provide additional settings, like the logging configuration.

To update the settings for a firewall, you use the operations that apply to the settings themselves, for example UpdateLoggingConfiguration, AssociateSubnets, and UpdateFirewallDeleteProtection.

To manage a firewall's tags, use the standard Amazon Web Services resource tagging operations, ListTagsForResource, TagResource, and UntagResource.

To retrieve information about firewalls, use ListFirewalls and DescribeFirewall.

", "CreateFirewallPolicy": "

Creates the firewall policy for the firewall according to the specifications.

An Network Firewall firewall policy defines the behavior of a firewall, in a collection of stateless and stateful rule groups and other settings. You can use one firewall policy for multiple firewalls.

", "CreateRuleGroup": "

Creates the specified stateless or stateful rule group, which includes the rules for network traffic inspection, a capacity setting, and tags.

You provide your rule group specification in your request using either RuleGroup or Rules.

", - "CreateTLSInspectionConfiguration": "

Creates an Network Firewall TLS inspection configuration. A TLS inspection configuration contains the Certificate Manager certificate references that Network Firewall uses to decrypt and re-encrypt inbound traffic.

After you create a TLS inspection configuration, you associate it with a new firewall policy.

To update the settings for a TLS inspection configuration, use UpdateTLSInspectionConfiguration.

To manage a TLS inspection configuration's tags, use the standard Amazon Web Services resource tagging operations, ListTagsForResource, TagResource, and UntagResource.

To retrieve information about TLS inspection configurations, use ListTLSInspectionConfigurations and DescribeTLSInspectionConfiguration.

For more information about TLS inspection configurations, see Decrypting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", + "CreateTLSInspectionConfiguration": "

Creates an Network Firewall TLS inspection configuration. A TLS inspection configuration contains Certificate Manager certificate associations between and the scope configurations that Network Firewall uses to decrypt and re-encrypt traffic traveling through your firewall.

After you create a TLS inspection configuration, you can associate it with a new firewall policy.

To update the settings for a TLS inspection configuration, use UpdateTLSInspectionConfiguration.

To manage a TLS inspection configuration's tags, use the standard Amazon Web Services resource tagging operations, ListTagsForResource, TagResource, and UntagResource.

To retrieve information about TLS inspection configurations, use ListTLSInspectionConfigurations and DescribeTLSInspectionConfiguration.

For more information about TLS inspection configurations, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", "DeleteFirewall": "

Deletes the specified Firewall and its FirewallStatus. This operation requires the firewall's DeleteProtection flag to be FALSE. You can't revert this operation.

You can check whether a firewall is in use by reviewing the route tables for the Availability Zones where you have firewall subnet mappings. Retrieve the subnet mappings by calling DescribeFirewall. You define and update the route tables through Amazon VPC. As needed, update the route tables for the zones to remove the firewall endpoints. When the route tables no longer use the firewall endpoints, you can remove the firewall safely.

To delete a firewall, remove the delete protection if you need to using UpdateFirewallDeleteProtection, then delete the firewall by calling DeleteFirewall.

", "DeleteFirewallPolicy": "

Deletes the specified FirewallPolicy.

", "DeleteResourcePolicy": "

Deletes a resource policy that you created in a PutResourcePolicy request.

", @@ -37,7 +37,7 @@ "UpdateLoggingConfiguration": "

Sets the logging configuration for the specified firewall.

To change the logging configuration, retrieve the LoggingConfiguration by calling DescribeLoggingConfiguration, then change it and provide the modified object to this update call. You must change the logging configuration one LogDestinationConfig at a time inside the retrieved LoggingConfiguration object.

You can perform only one of the following actions in any call to UpdateLoggingConfiguration:

  • Create a new log destination object by adding a single LogDestinationConfig array element to LogDestinationConfigs.

  • Delete a log destination object by removing a single LogDestinationConfig array element from LogDestinationConfigs.

  • Change the LogDestination setting in a single LogDestinationConfig array element.

You can't change the LogDestinationType or LogType in a LogDestinationConfig. To change these settings, delete the existing LogDestinationConfig object and create a new one, using two separate calls to this update operation.

", "UpdateRuleGroup": "

Updates the rule settings for the specified rule group. You use a rule group by reference in one or more firewall policies. When you modify a rule group, you modify all firewall policies that use the rule group.

To update a rule group, first call DescribeRuleGroup to retrieve the current RuleGroup object, update the object as needed, and then provide the updated object to this call.

", "UpdateSubnetChangeProtection": "

", - "UpdateTLSInspectionConfiguration": "

Updates the TLS inspection configuration settings for the specified TLS inspection configuration. You use a TLS inspection configuration by reference in one or more firewall policies. When you modify a TLS inspection configuration, you modify all firewall policies that use the TLS inspection configuration.

To update a TLS inspection configuration, first call DescribeTLSInspectionConfiguration to retrieve the current TLSInspectionConfiguration object, update the object as needed, and then provide the updated object to this call.

" + "UpdateTLSInspectionConfiguration": "

Updates the TLS inspection configuration settings for the specified TLS inspection configuration. You use a TLS inspection configuration by referencing it in one or more firewall policies. When you modify a TLS inspection configuration, you modify all firewall policies that use the TLS inspection configuration.

To update a TLS inspection configuration, first call DescribeTLSInspectionConfiguration to retrieve the current TLSInspectionConfiguration object, update the object as needed, and then provide the updated object to this call.

" }, "shapes": { "ActionDefinition": { @@ -73,6 +73,18 @@ "ServerCertificateScope$Destinations": "

The destination IP addresses and address ranges to decrypt for inspection, in CIDR notation. If not specified, this matches with any destination address.

" } }, + "AnalysisResult": { + "base": "

The analysis result for Network Firewall's stateless rule group analyzer. Every time you call CreateRuleGroup, UpdateRuleGroup, or DescribeRuleGroup on a stateless rule group, Network Firewall analyzes the stateless rule groups in your account and identifies the rules that might adversely effect your firewall's functionality. For example, if Network Firewall detects a rule that's routing traffic asymmetrically, which impacts the service's ability to properly process traffic, the service includes the rule in a list of analysis results.

", + "refs": { + "AnalysisResultList$member": null + } + }, + "AnalysisResultList": { + "base": null, + "refs": { + "RuleGroupResponse$AnalysisResults": "

The list of analysis results for AnalyzeRuleGroup. If you set AnalyzeRuleGroup to TRUE in CreateRuleGroup, UpdateRuleGroup, or DescribeRuleGroup, Network Firewall analyzes the rule group and identifies the rules that might adversely effect your firewall's functionality. For example, if Network Firewall detects a rule that's routing traffic asymmetrically, which impacts the service's ability to properly process traffic, the service includes the rule in the list of analysis results.

" + } + }, "AssociateFirewallPolicyRequest": { "base": null, "refs": { @@ -132,6 +144,8 @@ "CreateFirewallRequest$SubnetChangeProtection": "

A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

", "CreateFirewallRequest$FirewallPolicyChangeProtection": "

A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

", "CreateRuleGroupRequest$DryRun": "

Indicates whether you want Network Firewall to just check the validity of the request, rather than run the request.

If set to TRUE, Network Firewall checks whether the request can run successfully, but doesn't actually make the requested changes. The call returns the value that the request would return if you ran it with dry run set to FALSE, but doesn't make additions or changes to your resources. This option allows you to make sure that you have the required permissions to run the request and that your request parameters are valid.

If set to FALSE, Network Firewall makes the requested changes to your resources.

", + "CreateRuleGroupRequest$AnalyzeRuleGroup": "

Indicates whether you want Network Firewall to analyze the stateless rules in the rule group for rule behavior such as asymmetric routing. If set to TRUE, Network Firewall runs the analysis and then creates the rule group for you. To run the stateless rule group analyzer without creating the rule group, set DryRun to TRUE.

", + "DescribeRuleGroupRequest$AnalyzeRuleGroup": "

Indicates whether you want Network Firewall to analyze the stateless rules in the rule group for rule behavior such as asymmetric routing. If set to TRUE, Network Firewall runs the analysis.

", "Firewall$DeleteProtection": "

A flag indicating whether it is possible to delete the firewall. A setting of TRUE indicates that the firewall is protected against deletion. Use this setting to protect against accidentally deleting a firewall that is in use. When you create a firewall, the operation initializes this flag to TRUE.

", "Firewall$SubnetChangeProtection": "

A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

", "Firewall$FirewallPolicyChangeProtection": "

A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

", @@ -141,6 +155,7 @@ "UpdateFirewallPolicyChangeProtectionResponse$FirewallPolicyChangeProtection": "

A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

", "UpdateFirewallPolicyRequest$DryRun": "

Indicates whether you want Network Firewall to just check the validity of the request, rather than run the request.

If set to TRUE, Network Firewall checks whether the request can run successfully, but doesn't actually make the requested changes. The call returns the value that the request would return if you ran it with dry run set to FALSE, but doesn't make additions or changes to your resources. This option allows you to make sure that you have the required permissions to run the request and that your request parameters are valid.

If set to FALSE, Network Firewall makes the requested changes to your resources.

", "UpdateRuleGroupRequest$DryRun": "

Indicates whether you want Network Firewall to just check the validity of the request, rather than run the request.

If set to TRUE, Network Firewall checks whether the request can run successfully, but doesn't actually make the requested changes. The call returns the value that the request would return if you ran it with dry run set to FALSE, but doesn't make additions or changes to your resources. This option allows you to make sure that you have the required permissions to run the request and that your request parameters are valid.

If set to FALSE, Network Firewall makes the requested changes to your resources.

", + "UpdateRuleGroupRequest$AnalyzeRuleGroup": "

Indicates whether you want Network Firewall to analyze the stateless rules in the rule group for rule behavior such as asymmetric routing. If set to TRUE, Network Firewall runs the analysis and then updates the rule group for you. To run the stateless rule group analyzer without updating the rule group, set DryRun to TRUE.

", "UpdateSubnetChangeProtectionRequest$SubnetChangeProtection": "

A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

", "UpdateSubnetChangeProtectionResponse$SubnetChangeProtection": "

A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to TRUE.

" } @@ -171,9 +186,17 @@ "TLSInspectionConfigurationResponse$Certificates": "

A list of the certificates associated with the TLS inspection configuration.

" } }, + "CheckCertificateRevocationStatusActions": { + "base": "

Defines the actions to take on the SSL/TLS connection if the certificate presented by the server in the connection has a revoked or unknown status.

", + "refs": { + "ServerCertificateConfiguration$CheckCertificateRevocationStatus": "

When enabled, Network Firewall checks if the server certificate presented by the server in the SSL/TLS connection has a revoked or unkown status. If the certificate has an unknown or revoked status, you must specify the actions that Network Firewall takes on outbound traffic. To check the certificate revocation status, you must also specify a CertificateAuthorityArn in ServerCertificateConfiguration.

" + } + }, "CollectionMember_String": { "base": null, "refs": { + "AnalysisResult$AnalysisDetail": "

Provides analysis details for the identified rule.

", + "RuleIdList$member": null, "RuleTargets$member": null, "StatefulActions$member": null, "StatelessActions$member": null, @@ -610,13 +633,19 @@ "RuleVariables$IPSets": "

A list of IP addresses and address ranges, in CIDR notation.

" } }, + "IdentifiedType": { + "base": null, + "refs": { + "AnalysisResult$IdentifiedType": "

The types of rule configurations that Network Firewall analyzes your rule groups for. Network Firewall analyzes stateless rule groups for the following types of rule configurations:

  • STATELESS_RULE_FORWARDING_ASYMMETRICALLY

    Cause: One or more stateless rules with the action pass or forward are forwarding traffic asymmetrically. Specifically, the rule's set of source IP addresses or their associated port numbers, don't match the set of destination IP addresses or their associated port numbers.

    To mitigate: Make sure that there's an existing return path. For example, if the rule allows traffic from source 10.1.0.0/24 to destination 20.1.0.0/24, you should allow return traffic from source 20.1.0.0/24 to destination 10.1.0.0/24.

  • STATELESS_RULE_CONTAINS_TCP_FLAGS

    Cause: At least one stateless rule with the action pass orforward contains TCP flags that are inconsistent in the forward and return directions.

    To mitigate: Prevent asymmetric routing issues caused by TCP flags by following these actions:

    • Remove unnecessary TCP flag inspections from the rules.

    • If you need to inspect TCP flags, check that the rules correctly account for changes in TCP flags throughout the TCP connection cycle, for example SYN and ACK flags used in a 3-way TCP handshake.

" + } + }, "InsufficientCapacityException": { "base": "

Amazon Web Services doesn't currently have enough available capacity to fulfill your request. Try your request later.

", "refs": { } }, "InternalServerError": { - "base": "

Your request is valid, but Network Firewall couldn’t perform the operation because of a system problem. Retry your request.

", + "base": "

Your request is valid, but Network Firewall couldn't perform the operation because of a system problem. Retry your request.

", "refs": { } }, @@ -950,7 +979,8 @@ "RuleGroupMetadata$Arn": "

The Amazon Resource Name (ARN) of the rule group.

", "RuleGroupResponse$RuleGroupArn": "

The Amazon Resource Name (ARN) of the rule group.

If this response is for a create request that had DryRun set to TRUE, then this ARN is a placeholder that isn't attached to a valid resource.

", "RuleGroupResponse$SnsTopic": "

The Amazon resource name (ARN) of the Amazon Simple Notification Service SNS topic that's used to record changes to the managed rule group. You can subscribe to the SNS topic to receive notifications when the managed rule group is modified, such as for new versions and for version expiration. For more information, see the Amazon Simple Notification Service Developer Guide..

", - "ServerCertificate$ResourceArn": "

The Amazon Resource Name (ARN) of the Certificate Manager SSL/TLS server certificate.

", + "ServerCertificate$ResourceArn": "

The Amazon Resource Name (ARN) of the Certificate Manager SSL/TLS server certificate that's used for inbound SSL/TLS inspection.

", + "ServerCertificateConfiguration$CertificateAuthorityArn": "

The Amazon Resource Name (ARN) of the imported certificate authority (CA) certificate within Certificate Manager (ACM) to use for outbound SSL/TLS inspection.

The following limitations apply:

  • You can use CA certificates that you imported into ACM, but you can't generate CA certificates with ACM.

  • You can't use certificates issued by Private Certificate Authority.

For more information about configuring certificates for outbound inspection, see Using SSL/TLS certificates with certificates with TLS inspection configurations in the Network Firewall Developer Guide.

For information about working with certificates in ACM, see Importing certificates in the Certificate Manager User Guide.

", "SourceMetadata$SourceArn": "

The Amazon Resource Name (ARN) of the rule group that your own rule group is copied from.

", "StatefulRuleGroupReference$ResourceArn": "

The Amazon Resource Name (ARN) of the stateful rule group.

", "StatelessRuleGroupReference$ResourceArn": "

The Amazon Resource Name (ARN) of the stateless rule group.

", @@ -1065,6 +1095,13 @@ "TLSInspectionConfigurationResponse$TLSInspectionConfigurationStatus": "

Detailed information about the current status of a TLSInspectionConfiguration. You can retrieve this for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration and providing the TLS inspection configuration name and ARN.

" } }, + "RevocationCheckAction": { + "base": null, + "refs": { + "CheckCertificateRevocationStatusActions$RevokedStatusAction": "

Configures how Network Firewall processes traffic when it determines that the certificate presented by the server in the SSL/TLS connection has a revoked status.

  • PASS - Allow the connection to continue, and pass subsequent packets to the stateful engine for inspection.

  • DROP - Network Firewall closes the connection and drops subsequent packets for that connection.

  • REJECT - Network Firewall sends a TCP reject packet back to your client. The service closes the connection and drops subsequent packets for that connection. REJECT is available only for TCP traffic.

", + "CheckCertificateRevocationStatusActions$UnknownStatusAction": "

Configures how Network Firewall processes traffic when it determines that the certificate presented by the server in the SSL/TLS connection has an unknown status, or a status that cannot be determined for any other reason, including when the service is unable to connect to the OCSP and CRL endpoints for the certificate.

  • PASS - Allow the connection to continue, and pass subsequent packets to the stateful engine for inspection.

  • DROP - Network Firewall closes the connection and drops subsequent packets for that connection.

  • REJECT - Network Firewall sends a TCP reject packet back to your client. The service closes the connection and drops subsequent packets for that connection. REJECT is available only for TCP traffic.

" + } + }, "RuleCapacity": { "base": null, "refs": { @@ -1124,6 +1161,12 @@ "ListRuleGroupsResponse$RuleGroups": "

The rule group metadata objects that you've defined. Depending on your setting for max results and the number of rule groups, this might not be the full list.

" } }, + "RuleIdList": { + "base": null, + "refs": { + "AnalysisResult$IdentifiedRuleIds": "

The priority number of the stateless rules identified in the analysis.

" + } + }, "RuleOption": { "base": "

Additional settings for a stateful rule. This is part of the StatefulRule configuration.

", "refs": { @@ -1139,7 +1182,7 @@ "RuleOrder": { "base": null, "refs": { - "StatefulEngineOptions$RuleOrder": "

Indicates how to manage the order of stateful rule evaluation for the policy. DEFAULT_ACTION_ORDER is the default behavior. Stateful rules are provided to the rule engine as Suricata compatible strings, and Suricata evaluates them based on certain settings. For more information, see Evaluation order for stateful rules in the Network Firewall Developer Guide.

", + "StatefulEngineOptions$RuleOrder": "

Indicates how to manage the order of stateful rule evaluation for the policy. STRICT_ORDER is the default and recommended option. With STRICT_ORDER, provide your rules in the order that you want them to be evaluated. You can then choose one or more default actions for packets that don't match any rules. Choose STRICT_ORDER to have the stateful rules engine determine the evaluation order of your rules. The default action for this rule order is PASS, followed by DROP, REJECT, and ALERT actions. Stateful rules are provided to the rule engine as Suricata compatible strings, and Suricata evaluates them based on your settings. For more information, see Evaluation order for stateful rules in the Network Firewall Developer Guide.

", "StatefulRuleOptions$RuleOrder": "

Indicates how to manage the order of the rule evaluation for the rule group. DEFAULT_ACTION_ORDER is the default behavior. Stateful rules are provided to the rule engine as Suricata compatible strings, and Suricata evaluates them based on certain settings. For more information, see Evaluation order for stateful rules in the Network Firewall Developer Guide.

" } }, @@ -1178,18 +1221,18 @@ "base": null, "refs": { "CreateRuleGroupRequest$Rules": "

A string containing stateful rule group rules specifications in Suricata flat format, with one rule per line. Use this to import your existing Suricata compatible rule groups.

You must provide either this rules setting or a populated RuleGroup setting, but not both.

You can provide your rule group specification in Suricata flat format through this setting when you create or update your rule group. The call response returns a RuleGroup object that Network Firewall has populated from your string.

", - "RulesSource$RulesString": "

Stateful inspection criteria, provided in Suricata compatible intrusion prevention system (IPS) rules. Suricata is an open-source network IPS that includes a standard rule-based language for network traffic inspection.

These rules contain the inspection criteria and the action to take for traffic that matches the criteria, so this type of rule group doesn't have a separate action setting.

", + "RulesSource$RulesString": "

Stateful inspection criteria, provided in Suricata compatible rules. Suricata is an open-source threat detection framework that includes a standard rule-based language for network traffic inspection.

These rules contain the inspection criteria and the action to take for traffic that matches the criteria, so this type of rule group doesn't have a separate action setting.

You can't use the priority keyword if the RuleOrder option in StatefulRuleOptions is set to STRICT_ORDER.

", "UpdateRuleGroupRequest$Rules": "

A string containing stateful rule group rules specifications in Suricata flat format, with one rule per line. Use this to import your existing Suricata compatible rule groups.

You must provide either this rules setting or a populated RuleGroup setting, but not both.

You can provide your rule group specification in Suricata flat format through this setting when you create or update your rule group. The call response returns a RuleGroup object that Network Firewall has populated from your string.

" } }, "ServerCertificate": { - "base": "

Any Certificate Manager Secure Sockets Layer/Transport Layer Security (SSL/TLS) server certificate that's associated with a ServerCertificateConfiguration used in a TLSInspectionConfiguration. You must request or import a SSL/TLS certificate into ACM for each domain Network Firewall needs to decrypt and inspect. Network Firewall uses the SSL/TLS certificates to decrypt specified inbound SSL/TLS traffic going to your firewall. For information about working with certificates in Certificate Manager, see Request a public certificate or Importing certificates in the Certificate Manager User Guide.

", + "base": "

Any Certificate Manager (ACM) Secure Sockets Layer/Transport Layer Security (SSL/TLS) server certificate that's associated with a ServerCertificateConfiguration. Used in a TLSInspectionConfiguration for inspection of inbound traffic to your firewall. You must request or import a SSL/TLS certificate into ACM for each domain Network Firewall needs to decrypt and inspect. Network Firewall uses the SSL/TLS certificates to decrypt specified inbound SSL/TLS traffic going to your firewall. For information about working with certificates in Certificate Manager, see Request a public certificate or Importing certificates in the Certificate Manager User Guide.

", "refs": { "ServerCertificates$member": null } }, "ServerCertificateConfiguration": { - "base": "

Configures the associated Certificate Manager Secure Sockets Layer/Transport Layer Security (SSL/TLS) server certificates and scope settings Network Firewall uses to decrypt traffic in a TLSInspectionConfiguration. For information about working with SSL/TLS certificates for TLS inspection, see Requirements for using SSL/TLS server certficiates with TLS inspection configurations in the Network Firewall Developer Guide.

If a server certificate that's associated with your TLSInspectionConfiguration is revoked, deleted, or expired it can result in client-side TLS errors.

", + "base": "

Configures the Certificate Manager certificates and scope that Network Firewall uses to decrypt and re-encrypt traffic using a TLSInspectionConfiguration. You can configure ServerCertificates for inbound SSL/TLS inspection, a CertificateAuthorityArn for outbound SSL/TLS inspection, or both. For information about working with certificates for TLS inspection, see Using SSL/TLS server certficiates with TLS inspection configurations in the Network Firewall Developer Guide.

If a server certificate that's associated with your TLSInspectionConfiguration is revoked, deleted, or expired it can result in client-side TLS errors.

", "refs": { "ServerCertificateConfigurations$member": null } @@ -1209,13 +1252,13 @@ "ServerCertificateScopes": { "base": null, "refs": { - "ServerCertificateConfiguration$Scopes": "

A list of a server certificate configuration's scopes.

" + "ServerCertificateConfiguration$Scopes": "

A list of scopes.

" } }, "ServerCertificates": { "base": null, "refs": { - "ServerCertificateConfiguration$ServerCertificates": "

The list of a server certificate configuration's Certificate Manager SSL/TLS certificates.

" + "ServerCertificateConfiguration$ServerCertificates": "

The list of server certificates to use for inbound SSL/TLS inspection.

" } }, "Setting": { @@ -1247,7 +1290,7 @@ "StatefulAction": { "base": null, "refs": { - "StatefulRule$Action": "

Defines what Network Firewall should do with the packets in a traffic flow when the flow matches the stateful rule criteria. For all actions, Network Firewall performs the specified action and discontinues stateful inspection of the traffic flow.

The actions for a stateful rule are defined as follows:

  • PASS - Permits the packets to go to the intended destination.

  • DROP - Blocks the packets from going to the intended destination and sends an alert log message, if alert logging is configured in the Firewall LoggingConfiguration.

  • ALERT - Permits the packets to go to the intended destination and sends an alert log message, if alert logging is configured in the Firewall LoggingConfiguration.

    You can use this action to test a rule that you intend to use to drop traffic. You can enable the rule with ALERT action, verify in the logs that the rule is filtering as you want, then change the action to DROP.

" + "StatefulRule$Action": "

Defines what Network Firewall should do with the packets in a traffic flow when the flow matches the stateful rule criteria. For all actions, Network Firewall performs the specified action and discontinues stateful inspection of the traffic flow.

The actions for a stateful rule are defined as follows:

  • PASS - Permits the packets to go to the intended destination.

  • DROP - Blocks the packets from going to the intended destination and sends an alert log message, if alert logging is configured in the Firewall LoggingConfiguration.

  • ALERT - Sends an alert log message, if alert logging is configured in the Firewall LoggingConfiguration.

    You can use this action to test a rule that you intend to use to drop traffic. You can enable the rule with ALERT action, verify in the logs that the rule is filtering as you want, then change the action to DROP.

" } }, "StatefulActions": { @@ -1296,7 +1339,7 @@ "base": "

Additional options governing how Network Firewall handles the rule group. You can only use these for stateful rule groups.

", "refs": { "DescribeRuleGroupMetadataResponse$StatefulRuleOptions": null, - "RuleGroup$StatefulRuleOptions": "

Additional options governing how Network Firewall handles stateful rules. The policies where you use your stateful rule group must have stateful rule options settings that are compatible with these settings.

" + "RuleGroup$StatefulRuleOptions": "

Additional options governing how Network Firewall handles stateful rules. The policies where you use your stateful rule group must have stateful rule options settings that are compatible with these settings. Some limitations apply; for more information, see Strict evaluation order in the Network Firewall Developer Guide.

" } }, "StatefulRuleProtocol": { @@ -1420,11 +1463,11 @@ } }, "TLSInspectionConfiguration": { - "base": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect inbound traffic. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Decrypting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", + "base": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect the traffic traveling through your firewalls. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", "refs": { - "CreateTLSInspectionConfigurationRequest$TLSInspectionConfiguration": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect inbound traffic. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Decrypting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", - "DescribeTLSInspectionConfigurationResponse$TLSInspectionConfiguration": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect inbound traffic. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Decrypting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", - "UpdateTLSInspectionConfigurationRequest$TLSInspectionConfiguration": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect inbound traffic. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Decrypting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

" + "CreateTLSInspectionConfigurationRequest$TLSInspectionConfiguration": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect the traffic traveling through your firewalls. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", + "DescribeTLSInspectionConfigurationResponse$TLSInspectionConfiguration": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect the traffic traveling through your firewalls. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

", + "UpdateTLSInspectionConfigurationRequest$TLSInspectionConfiguration": "

The object that defines a TLS inspection configuration. This, along with TLSInspectionConfigurationResponse, define the TLS inspection configuration. You can retrieve all objects for a TLS inspection configuration by calling DescribeTLSInspectionConfiguration.

Network Firewall uses a TLS inspection configuration to decrypt traffic. Network Firewall re-encrypts the traffic before sending it to its destination.

To use a TLS inspection configuration, you add it to a new Network Firewall firewall policy, then you apply the firewall policy to a firewall. Network Firewall acts as a proxy service to decrypt and inspect the traffic traveling through your firewalls. You can reference a TLS inspection configuration from more than one firewall policy, and you can use a firewall policy in more than one firewall. For more information about using TLS inspection configurations, see Inspecting SSL/TLS traffic with TLS inspection configurations in the Network Firewall Developer Guide.

" } }, "TLSInspectionConfigurationMetadata": { @@ -1524,7 +1567,8 @@ "TlsCertificateData": { "base": "

Contains metadata about an Certificate Manager certificate.

", "refs": { - "Certificates$member": null + "Certificates$member": null, + "TLSInspectionConfigurationResponse$CertificateAuthority": null } }, "UnsupportedOperationException": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/network-firewall/2020-11-12/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/network-firewall/2020-11-12/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/network-firewall/2020-11-12/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/network-firewall/2020-11-12/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1734,7 +1734,8 @@ "State":{"shape":"ConnectPeerState"}, "CreatedAt":{"shape":"DateTime"}, "Configuration":{"shape":"ConnectPeerConfiguration"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "SubnetArn":{"shape":"SubnetArn"} } }, "ConnectPeerAssociation":{ @@ -1811,7 +1812,8 @@ "EdgeLocation":{"shape":"ExternalRegionCode"}, "ConnectPeerState":{"shape":"ConnectPeerState"}, "CreatedAt":{"shape":"DateTime"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "SubnetArn":{"shape":"SubnetArn"} } }, "ConnectPeerSummaryList":{ @@ -2129,8 +2131,7 @@ "type":"structure", "required":[ "ConnectAttachmentId", - "PeerAddress", - "InsideCidrBlocks" + "PeerAddress" ], "members":{ "ConnectAttachmentId":{"shape":"AttachmentId"}, @@ -2142,7 +2143,8 @@ "ClientToken":{ "shape":"ClientToken", "idempotencyToken":true - } + }, + "SubnetArn":{"shape":"SubnetArn"} } }, "CreateConnectPeerResponse":{ @@ -4844,7 +4846,10 @@ }, "TunnelProtocol":{ "type":"string", - "enum":["GRE"] + "enum":[ + "GRE", + "NO_ENCAP" + ] }, "UntagResourceRequest":{ "type":"structure", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2385,6 +2385,9 @@ "base": null, "refs": { "AWSLocation$SubnetArn": "

The Amazon Resource Name (ARN) of the subnet that the device is located in.

", + "ConnectPeer$SubnetArn": "

The subnet ARN for the Connect peer.

", + "ConnectPeerSummary$SubnetArn": "

The subnet ARN for the Connect peer summary.

", + "CreateConnectPeerRequest$SubnetArn": "

The subnet ARN for the Connect peer.

", "SubnetArnList$member": null } }, @@ -2578,7 +2581,7 @@ "base": null, "refs": { "CreateTransitGatewayRouteTableAttachmentRequest$TransitGatewayRouteTableArn": "

The ARN of the transit gateway route table for the attachment request. For example, \"TransitGatewayRouteTableArn\": \"arn:aws:ec2:us-west-2:123456789012:transit-gateway-route-table/tgw-rtb-9876543210123456\".

", - "RouteTableIdentifier$TransitGatewayRouteTableArn": "

The ARN of the transit gateway route table.

", + "RouteTableIdentifier$TransitGatewayRouteTableArn": "

The ARN of the transit gateway route table for the attachment request. For example, \"TransitGatewayRouteTableArn\": \"arn:aws:ec2:us-west-2:123456789012:transit-gateway-route-table/tgw-rtb-9876543210123456\".

", "TransitGatewayRouteTableAttachment$TransitGatewayRouteTableArn": "

The ARN of the transit gateway attachment route table. For example, \"TransitGatewayRouteTableArn\": \"arn:aws:ec2:us-west-2:123456789012:transit-gateway-route-table/tgw-rtb-9876543210123456\".

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,785 +57,360 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "stringEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] - } - ], - "type": "tree", - "rules": [ + }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager-fips.{Region}.api.aws", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager-fips.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] + "ref": "UseDualStack" }, + false + ] + } + ], + "endpoint": { + "url": "https://networkmanager.us-west-2.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "networkmanager", + "signingRegion": "us-west-2" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ + "fn": "getAttr", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager.{Region}.api.aws", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "ref": "PartitionResult" }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } + "name" ] }, + "aws-us-gov" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [], - "endpoint": { - "url": "https://networkmanager.us-west-2.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "networkmanager", - "signingRegion": "us-west-2" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://networkmanager.us-gov-west-1.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "networkmanager", + "signingRegion": "us-gov-west-1" } ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ { "conditions": [ { - "fn": "stringEquals", + "fn": "booleanEquals", "argv": [ + true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "name" - ] - }, - "aws-us-gov" - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true + "supportsFIPS" ] } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager-fips.{Region}.api.aws", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } ] }, { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ { - "ref": "UseFIPS" + "ref": "PartitionResult" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager-fips.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "supportsDualStack" ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" } ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager.{Region}.api.aws", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, + } + ], + "rules": [ { "conditions": [], "endpoint": { - "url": "https://networkmanager.us-gov-west-1.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "networkmanager", - "signingRegion": "us-gov-west-1" - } - ] - }, + "url": "https://networkmanager-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "ref": "UseFIPS" }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } + true ] - }, + } + ], + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://networkmanager.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://networkmanager-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", - "rules": [ + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://networkmanager.us-west-2.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "networkmanager", - "signingRegion": "us-west-2" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "UseDualStack" }, + true + ] + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "aws-us-gov-global" + "supportsDualStack" ] } - ], - "endpoint": { - "url": "https://networkmanager.us-gov-west-1.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "networkmanager", - "signingRegion": "us-gov-west-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "rules": [ { "conditions": [], "endpoint": { - "url": "https://networkmanager.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://networkmanager.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://networkmanager.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/networkmanager/2019-07-05/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/networkmanager/2019-07-05/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -17,9 +17,9 @@ } }, "params": { + "Region": "aws-global", "UseFIPS": false, - "UseDualStack": false, - "Region": "aws-global" + "UseDualStack": false } }, { @@ -30,9 +30,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -43,9 +43,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -56,9 +56,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -78,9 +78,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -91,9 +91,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -104,9 +104,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -117,9 +117,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -130,9 +130,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -152,9 +152,9 @@ } }, "params": { + "Region": "aws-us-gov-global", "UseFIPS": false, - "UseDualStack": false, - "Region": "aws-us-gov-global" + "UseDualStack": false } }, { @@ -165,9 +165,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -178,9 +178,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -191,9 +191,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -213,9 +213,20 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -226,9 +237,20 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -239,9 +261,20 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -252,9 +285,20 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -265,9 +309,9 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -278,9 +322,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -303,9 +347,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -315,11 +359,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -603,7 +603,8 @@ "enum":[ "AWS::CloudWatch::Metric", "AWS::Logs::LogGroup", - "AWS::XRay::Trace" + "AWS::XRay::Trace", + "AWS::ApplicationInsights::Application" ] }, "ResourceTypesInput":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Use Amazon CloudWatch Observability Access Manager to create and manage links between source accounts and monitoring accounts by using CloudWatch cross-account observability. With CloudWatch cross-account observability, you can monitor and troubleshoot applications that span multiple accounts within a Region. Seamlessly search, visualize, and analyze your metrics, logs, and traces in any of the linked accounts without account boundaries.

 <p>Set up one or more Amazon Web Services accounts as <i>monitoring accounts</i> and link them with multiple <i>source accounts</i>. A monitoring account is a central Amazon Web Services account that can view and interact with observability data generated from source accounts. A source account is an individual Amazon Web Services account that generates observability data for the resources that reside in it. Source accounts share their observability data with the monitoring account. The shared observability data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch Logs, and traces in X-Ray.</p> 
", + "service": "

Use Amazon CloudWatch Observability Access Manager to create and manage links between source accounts and monitoring accounts by using CloudWatch cross-account observability. With CloudWatch cross-account observability, you can monitor and troubleshoot applications that span multiple accounts within a Region. Seamlessly search, visualize, and analyze your metrics, logs, traces, and Application Insights applications in any of the linked accounts without account boundaries.

Set up one or more Amazon Web Services accounts as monitoring accounts and link them with multiple source accounts. A monitoring account is a central Amazon Web Services account that can view and interact with observability data generated from source accounts. A source account is an individual Amazon Web Services account that generates observability data for the resources that reside in it. Source accounts share their observability data with the monitoring account. The shared observability data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch Logs, traces in X-Ray, and applications in Amazon CloudWatch Application Insights.

", "operations": { "CreateLink": "

Creates a link between a source account and a sink that you have created in a monitoring account.

Before you create a link, you must create a sink in the monitoring account and create a sink policy in that account. The sink policy must permit the source account to link to it. You can grant permission to source accounts by granting permission to an entire organization or to individual accounts.

For more information, see CreateSink and PutSinkPolicy.

Each monitoring account can be linked to as many as 100,000 source accounts.

Each source account can be linked to as many as five monitoring accounts.

", "CreateSink": "

Use this to create a sink in the current account, so that it can be used as a monitoring account in CloudWatch cross-account observability. A sink is a resource that represents an attachment point in a monitoring account. Source accounts can link to the sink to send observability data.

After you create a sink, you must create a sink policy that allows source accounts to attach to it. For more information, see PutSinkPolicy.

Each account can contain one sink. If you delete a sink, you can then create a new one in that account.

", @@ -13,7 +13,7 @@ "ListLinks": "

Use this operation in a source account to return a list of links to monitoring account sinks that this source account has.

To find a list of links for one monitoring account sink, use ListAttachedLinks from within the monitoring account.

", "ListSinks": "

Use this operation in a monitoring account to return the list of sinks created in that account.

", "ListTagsForResource": "

Displays the tags associated with a resource. Both sinks and links support tagging.

", - "PutSinkPolicy": "

Creates or updates the resource policy that grants permissions to source accounts to link to the monitoring account sink. When you create a sink policy, you can grant permissions to all accounts in an organization or to individual accounts.

You can also use a sink policy to limit the types of data that is shared. The three types that you can allow or deny are:

  • Metrics - Specify with AWS::CloudWatch::Metric

  • Log groups - Specify with AWS::Logs::LogGroup

  • Traces - Specify with AWS::XRay::Trace

See the examples in this section to see how to specify permitted source accounts and data types.

", + "PutSinkPolicy": "

Creates or updates the resource policy that grants permissions to source accounts to link to the monitoring account sink. When you create a sink policy, you can grant permissions to all accounts in an organization or to individual accounts.

You can also use a sink policy to limit the types of data that is shared. The three types that you can allow or deny are:

  • Metrics - Specify with AWS::CloudWatch::Metric

  • Log groups - Specify with AWS::Logs::LogGroup

  • Traces - Specify with AWS::XRay::Trace

  • Application Insights - Applications - Specify with AWS::ApplicationInsights::Application

See the examples in this section to see how to specify permitted source accounts and data types.

", "TagResource": "

Assigns one or more tags (key-value pairs) to the specified resource. Both sinks and links can be tagged.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a resource that already has tags. If you specify a new tag key for the alarm, this tag is appended to the list of tags associated with the alarm. If you specify a tag key that is already associated with the alarm, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource.

Unlike tagging permissions in other Amazon Web Services services, to tag or untag links and sinks you must have the oam:ResourceTag permission. The iam:ResourceTag permission does not allow you to tag and untag links and sinks.

", "UntagResource": "

Removes one or more tags from the specified resource.

Unlike tagging permissions in other Amazon Web Services services, to tag or untag links and sinks you must have the oam:ResourceTag permission. The iam:TagResource permission does not allow you to tag and untag links and sinks.

", "UpdateLink": "

Use this operation to change what types of data are shared from a source account to its linked monitoring account sink. You can't change the sink or change the monitoring account with this operation.

To update the list of tags associated with the sink, use TagResource.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,13 +32,12 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], "type": "tree", @@ -46,23 +45,20 @@ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], "type": "tree", "rules": [ { @@ -71,67 +67,42 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", "type": "error" }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "endpoint": { + "url": { + "ref": "Endpoint" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, + } + ] + }, + { + "conditions": [], + "type": "tree", + "rules": [ { "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", + "fn": "isSet", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Region" + } ] } ], @@ -140,168 +111,238 @@ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ - true, { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] }, - "supportsDualStack" + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://oam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://oam-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ + }, { "conditions": [], - "endpoint": { - "url": "https://oam.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } ] }, { "conditions": [], - "endpoint": { - "url": "https://oam.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/oam/2022-06-10/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/oam/2022-06-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,55 +1,55 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-gov-east-1.api.aws" + "url": "https://oam-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-gov-east-1.amazonaws.com" + "url": "https://oam-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://oam.us-gov-east-1.api.aws" + "url": "https://oam.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam.us-gov-east-1.amazonaws.com" + "url": "https://oam.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -99,109 +99,109 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://oam-fips.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://oam-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://oam.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam.us-iso-east-1.c2s.ic.gov" + "url": "https://oam.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://oam-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-east-1.amazonaws.com" + "url": "https://oam-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://oam.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam.us-east-1.amazonaws.com" + "url": "https://oam.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -247,22 +247,35 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/omics/2022-11-28/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/omics/2022-11-28/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/omics/2022-11-28/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/omics/2022-11-28/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,7 +12,6 @@ }, "operations": { "AbortMultipartReadSetUpload": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -56,7 +55,6 @@ } }, "AcceptShare": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -97,7 +95,6 @@ } }, "BatchDeleteReadSet": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -136,7 +133,6 @@ } }, "CancelAnnotationImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -172,7 +168,6 @@ } }, "CancelRun": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -213,7 +208,6 @@ "name": "CancelRun" }, "CancelVariantImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -249,7 +243,6 @@ } }, "CompleteMultipartReadSetUpload": { - "authtype": "v4", "endpoint": { "hostPrefix": "storage-" }, @@ -293,7 +286,6 @@ } }, "CreateAnnotationStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -334,7 +326,6 @@ } }, "CreateAnnotationStoreVersion": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -375,7 +366,6 @@ } }, "CreateMultipartReadSetUpload": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -419,7 +409,6 @@ } }, "CreateReferenceStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -457,7 +446,6 @@ } }, "CreateRunGroup": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -501,7 +489,6 @@ } }, "CreateSequenceStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -539,7 +526,6 @@ } }, "CreateShare": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -580,7 +566,6 @@ } }, "CreateVariantStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -621,7 +606,6 @@ } }, "CreateWorkflow": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -665,7 +649,6 @@ } }, "DeleteAnnotationStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -704,7 +687,6 @@ } }, "DeleteAnnotationStoreVersions": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -743,7 +725,6 @@ } }, "DeleteReference": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -785,7 +766,6 @@ } }, "DeleteReferenceStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -827,7 +807,6 @@ } }, "DeleteRun": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -869,7 +848,6 @@ "name": "DeleteRun" }, "DeleteRunGroup": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -911,7 +889,6 @@ "name": "DeleteRunGroup" }, "DeleteSequenceStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -953,7 +930,6 @@ } }, "DeleteShare": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -995,7 +971,6 @@ } }, "DeleteVariantStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1034,7 +1009,6 @@ } }, "DeleteWorkflow": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -1076,7 +1050,6 @@ "name": "DeleteWorkflow" }, "GetAnnotationImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1111,7 +1084,6 @@ } }, "GetAnnotationStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1146,7 +1118,6 @@ } }, "GetAnnotationStoreVersion": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1181,7 +1152,6 @@ } }, "GetReadSet": { - "authtype": "v4", "endpoint": { "hostPrefix": "storage-" }, @@ -1225,7 +1195,6 @@ } }, "GetReadSetActivationJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1263,7 +1232,6 @@ } }, "GetReadSetExportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1301,7 +1269,6 @@ } }, "GetReadSetImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1339,7 +1306,6 @@ } }, "GetReadSetMetadata": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1377,7 +1343,6 @@ } }, "GetReference": { - "authtype": "v4", "endpoint": { "hostPrefix": "storage-" }, @@ -1418,7 +1383,6 @@ } }, "GetReferenceImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1456,7 +1420,6 @@ } }, "GetReferenceMetadata": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1494,7 +1457,6 @@ } }, "GetReferenceStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1532,7 +1494,6 @@ } }, "GetRun": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -1576,7 +1537,6 @@ } }, "GetRunGroup": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -1620,7 +1580,6 @@ } }, "GetRunTask": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -1664,7 +1623,6 @@ } }, "GetSequenceStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -1702,7 +1660,6 @@ } }, "GetShare": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1743,7 +1700,6 @@ } }, "GetVariantImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1778,7 +1734,6 @@ } }, "GetVariantStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1813,7 +1768,6 @@ } }, "GetWorkflow": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -1857,7 +1811,6 @@ } }, "ListAnnotationImportJobs": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1892,7 +1845,6 @@ } }, "ListAnnotationStoreVersions": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1927,7 +1879,6 @@ } }, "ListAnnotationStores": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -1962,7 +1913,6 @@ } }, "ListMultipartReadSetUploads": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2006,7 +1956,6 @@ } }, "ListReadSetActivationJobs": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2044,7 +1993,6 @@ } }, "ListReadSetExportJobs": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2082,7 +2030,6 @@ } }, "ListReadSetImportJobs": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2120,7 +2067,6 @@ } }, "ListReadSetUploadParts": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2164,7 +2110,6 @@ } }, "ListReadSets": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2202,7 +2147,6 @@ } }, "ListReferenceImportJobs": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2240,7 +2184,6 @@ } }, "ListReferenceStores": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2275,7 +2218,6 @@ } }, "ListReferences": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2313,7 +2255,6 @@ } }, "ListRunGroups": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -2357,7 +2298,6 @@ } }, "ListRunTasks": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -2401,7 +2341,6 @@ } }, "ListRuns": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -2445,7 +2384,6 @@ } }, "ListSequenceStores": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2480,7 +2418,6 @@ } }, "ListShares": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -2521,7 +2458,6 @@ } }, "ListTagsForResource": { - "authtype": "v4", "endpoint": { "hostPrefix": "tags-" }, @@ -2565,7 +2501,6 @@ } }, "ListVariantImportJobs": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -2600,7 +2535,6 @@ } }, "ListVariantStores": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -2635,7 +2569,6 @@ } }, "ListWorkflows": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -2679,7 +2612,6 @@ } }, "StartAnnotationImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -2717,7 +2649,6 @@ } }, "StartReadSetActivationJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2758,7 +2689,6 @@ } }, "StartReadSetExportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2799,7 +2729,6 @@ } }, "StartReadSetImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2840,7 +2769,6 @@ } }, "StartReferenceImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "control-storage-" }, @@ -2881,7 +2809,6 @@ } }, "StartRun": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -2925,7 +2852,6 @@ } }, "StartVariantImportJob": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -2963,7 +2889,6 @@ } }, "TagResource": { - "authtype": "v4", "endpoint": { "hostPrefix": "tags-" }, @@ -3007,7 +2932,6 @@ } }, "UntagResource": { - "authtype": "v4", "endpoint": { "hostPrefix": "tags-" }, @@ -3052,7 +2976,6 @@ } }, "UpdateAnnotationStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -3087,7 +3010,6 @@ } }, "UpdateAnnotationStoreVersion": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -3122,7 +3044,6 @@ } }, "UpdateRunGroup": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -3163,7 +3084,6 @@ "name": "UpdateRunGroup" }, "UpdateVariantStore": { - "authtype": "v4", "endpoint": { "hostPrefix": "analytics-" }, @@ -3198,7 +3118,6 @@ } }, "UpdateWorkflow": { - "authtype": "v4", "endpoint": { "hostPrefix": "workflows-" }, @@ -4025,7 +3944,6 @@ "sourceFileType", "subjectId", "sampleId", - "referenceArn", "name" ], "type": "structure" @@ -4620,6 +4538,28 @@ "min": 0, "type": "string" }, + "ETag": { + "members": { + "algorithm": { + "shape": "ETagAlgorithm" + }, + "source1": { + "shape": "String" + }, + "source2": { + "shape": "String" + } + }, + "type": "structure" + }, + "ETagAlgorithm": { + "enum": [ + "FASTQ_MD5up", + "BAM_MD5up", + "CRAM_MD5up" + ], + "type": "string" + }, "Encoding": { "max": 20, "min": 1, @@ -4631,6 +4571,10 @@ ], "type": "string" }, + "EngineLogStream": { + "pattern": "[\\p{L}||\\p{M}||\\p{Z}||\\p{S}||\\p{N}||\\p{P}]+", + "type": "string" + }, "EscapeChar": { "max": 1, "min": 1, @@ -4766,7 +4710,8 @@ "enum": [ "FASTQ", "BAM", - "CRAM" + "CRAM", + "UBAM" ], "type": "string" }, @@ -5245,6 +5190,9 @@ "description": { "shape": "ReadSetDescription" }, + "etag": { + "shape": "ETag" + }, "fileType": { "shape": "FileType" }, @@ -5647,12 +5595,18 @@ "digest": { "shape": "WorkflowDigest" }, + "failureReason": { + "shape": "RunFailureReason" + }, "id": { "shape": "RunId" }, "logLevel": { "shape": "RunLogLevel" }, + "logLocation": { + "shape": "RunLogLocation" + }, "name": { "shape": "RunName" }, @@ -5677,6 +5631,9 @@ "runId": { "shape": "RunId" }, + "runOutputUri": { + "shape": "RunOutputUri" + }, "startTime": { "shape": "RunTimestamp" }, @@ -5698,6 +5655,9 @@ "tags": { "shape": "TagMap" }, + "uuid": { + "shape": "RunUuid" + }, "workflowId": { "shape": "WorkflowId" }, @@ -5746,6 +5706,9 @@ "creationTime": { "shape": "TaskTimestamp" }, + "failureReason": { + "shape": "TaskFailureReason" + }, "gpus": { "shape": "GetRunTaskResponseGpusInteger" }, @@ -7551,7 +7514,7 @@ "shape": "ReadSetName" }, "referenceArn": { - "shape": "ReferenceArn" + "shape": "ReferenceArnFilter" }, "sampleId": { "shape": "SampleId" @@ -7620,6 +7583,9 @@ "description": { "shape": "ReadSetDescription" }, + "etag": { + "shape": "ETag" + }, "fileType": { "shape": "FileType" }, @@ -7765,6 +7731,12 @@ "pattern": "arn:.+", "type": "string" }, + "ReferenceArnFilter": { + "max": 127, + "min": 0, + "pattern": "$|^arn:.+", + "type": "string" + }, "ReferenceDescription": { "max": 255, "min": 1, @@ -8054,6 +8026,12 @@ "min": 0, "type": "list" }, + "RunFailureReason": { + "max": 64, + "min": 1, + "pattern": "[\\p{L}||\\p{M}||\\p{Z}||\\p{S}||\\p{N}||\\p{P}]+", + "type": "string" + }, "RunGroupArn": { "max": 128, "min": 1, @@ -8226,6 +8204,21 @@ "min": 1, "type": "string" }, + "RunLogLocation": { + "members": { + "engineLogStream": { + "shape": "EngineLogStream" + }, + "runLogStream": { + "shape": "RunLogStream" + } + }, + "type": "structure" + }, + "RunLogStream": { + "pattern": "[\\p{L}||\\p{M}||\\p{Z}||\\p{S}||\\p{N}||\\p{P}]+", + "type": "string" + }, "RunName": { "max": 128, "min": 1, @@ -8233,7 +8226,7 @@ "type": "string" }, "RunOutputUri": { - "max": 128, + "max": 750, "min": 1, "pattern": "[\\p{L}||\\p{M}||\\p{Z}||\\p{S}||\\p{N}||\\p{P}]+", "type": "string" @@ -8308,6 +8301,12 @@ "timestampFormat": "iso8601", "type": "timestamp" }, + "RunUuid": { + "max": 128, + "min": 1, + "pattern": "[\\p{L}||\\p{M}||\\p{Z}||\\p{S}||\\p{N}||\\p{P}]+", + "type": "string" + }, "S3Destination": { "pattern": "s3://([a-z0-9][a-z0-9-.]{1,61}[a-z0-9])/?((.{1,1024})/)?", "type": "string" @@ -8810,8 +8809,7 @@ "sourceFiles", "sourceFileType", "subjectId", - "sampleId", - "referenceArn" + "sampleId" ], "type": "structure" }, @@ -8964,11 +8962,17 @@ "id": { "shape": "RunId" }, + "runOutputUri": { + "shape": "RunOutputUri" + }, "status": { "shape": "RunStatus" }, "tags": { "shape": "TagMap" + }, + "uuid": { + "shape": "RunUuid" } }, "type": "structure" @@ -9131,6 +9135,12 @@ "min": 0, "type": "string" }, + "TaskFailureReason": { + "max": 64, + "min": 1, + "pattern": "[\\p{L}||\\p{M}||\\p{Z}||\\p{S}||\\p{N}||\\p{P}]+", + "type": "string" + }, "TaskId": { "max": 18, "min": 1, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/omics/2022-11-28/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/omics/2022-11-28/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/omics/2022-11-28/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/omics/2022-11-28/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -635,6 +635,19 @@ "VariantStoreItem$description": "

The store's description.

" } }, + "ETag": { + "base": "

The entity tag (ETag) is a hash of the object representing its semantic content.

", + "refs": { + "GetReadSetMetadataResponse$etag": "

The entity tag (ETag) is a hash of the object meant to represent its semantic content.

", + "ReadSetListItem$etag": "

The entity tag (ETag) is a hash of the object representing its semantic content.

" + } + }, + "ETagAlgorithm": { + "base": null, + "refs": { + "ETag$algorithm": "

The algorithm used to calculate the read set’s ETag(s).

" + } + }, "Encoding": { "base": null, "refs": { @@ -647,6 +660,12 @@ "SseConfig$type": "

The encryption type.

" } }, + "EngineLogStream": { + "base": null, + "refs": { + "RunLogLocation$engineLogStream": "

The log stream ARN for the engine log.

" + } + }, "EscapeChar": { "base": null, "refs": { @@ -1915,13 +1934,18 @@ "GetReferenceMetadataResponse$arn": "

The reference's ARN.

", "ImportReadSetSourceItem$referenceArn": "

The source's genome reference ARN.

", "MultipartReadSetUploadListItem$referenceArn": "

The source's reference ARN.

", - "ReadSetFilter$referenceArn": "

A genome reference ARN to filter on.

", "ReadSetListItem$referenceArn": "

The read set's genome reference ARN.

", "ReferenceItem$referenceArn": "

The reference's ARN.

", "ReferenceListItem$arn": "

The reference's ARN.

", "StartReadSetImportJobSourceItem$referenceArn": "

The source's reference ARN.

" } }, + "ReferenceArnFilter": { + "base": null, + "refs": { + "ReadSetFilter$referenceArn": "

A genome reference ARN to filter on.

" + } + }, "ReferenceDescription": { "base": null, "refs": { @@ -2179,6 +2203,12 @@ "GetRunRequest$export": "

The run's export format.

" } }, + "RunFailureReason": { + "base": null, + "refs": { + "GetRunResponse$failureReason": "

The reason a run has failed.

" + } + }, "RunGroupArn": { "base": null, "refs": { @@ -2275,7 +2305,7 @@ "GetRunRequest$id": "

The run's ID.

", "GetRunResponse$id": "

The run's ID.

", "GetRunResponse$runId": "

The run's ID.

", - "GetRunTaskRequest$id": "

The task's ID.

", + "GetRunTaskRequest$id": "

The workflow run ID.

", "ListRunTasksRequest$id": "

The run's ID.

", "RunListItem$id": "

The run's ID.

", "StartRunRequest$runId": "

The ID of a run to duplicate.

", @@ -2331,6 +2361,18 @@ "StartRunRequest$logLevel": "

A log level for the run.

" } }, + "RunLogLocation": { + "base": "

The URI for the run log.

", + "refs": { + "GetRunResponse$logLocation": "

The location of the run log.

" + } + }, + "RunLogStream": { + "base": null, + "refs": { + "RunLogLocation$runLogStream": "

The log stream ARN for the run log.

" + } + }, "RunName": { "base": null, "refs": { @@ -2344,7 +2386,9 @@ "base": null, "refs": { "GetRunResponse$outputUri": "

The run's output URI.

", - "StartRunRequest$outputUri": "

An output URI for the run.

" + "GetRunResponse$runOutputUri": "

The destination for workflow outputs.

", + "StartRunRequest$outputUri": "

An output URI for the run.

", + "StartRunResponse$runOutputUri": "

The destination for workflow outputs.

" } }, "RunParameters": { @@ -2424,6 +2468,13 @@ "RunListItem$stopTime": "

When the run stopped.

" } }, + "RunUuid": { + "base": null, + "refs": { + "GetRunResponse$uuid": "

The universally unique identifier for a run.

", + "StartRunResponse$uuid": "

The universally unique identifier for a run.

" + } + }, "S3Destination": { "base": null, "refs": { @@ -2864,6 +2915,8 @@ "DeleteAnnotationStoreVersionsRequest$name": "

The name of the annotation store from which versions are being deleted.

", "DeleteShareRequest$shareId": "

The ID for the share request to be deleted.

", "DeleteVariantStoreRequest$name": "

The store's name.

", + "ETag$source1": "

The ETag hash calculated on Source1 of the read set.

", + "ETag$source2": "

The ETag hash calculated on Source2 of the read set.

", "GetAnnotationStoreRequest$name": "

The store's name.

", "GetAnnotationStoreResponse$name": "

The store's name.

", "GetAnnotationStoreVersionRequest$name": "

The name given to an annotation store version to distinguish it from others.

", @@ -3057,6 +3110,12 @@ "TagResourceRequestTagsMap$value": null } }, + "TaskFailureReason": { + "base": null, + "refs": { + "GetRunTaskResponse$failureReason": "

The reason a task has failed.

" + } + }, "TaskId": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/omics/2022-11-28/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/omics/2022-11-28/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/omics/2022-11-28/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/omics/2022-11-28/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -24,6 +24,24 @@ {"shape":"DisabledOperationException"} ] }, + "AddDataSource":{ + "name":"AddDataSource", + "http":{ + "method":"POST", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/dataSource" + }, + "input":{"shape":"AddDataSourceRequest"}, + "output":{"shape":"AddDataSourceResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"}, + {"shape":"DependencyFailureException"}, + {"shape":"LimitExceededException"} + ] + }, "AddTags":{ "name":"AddTags", "http":{ @@ -155,6 +173,23 @@ {"shape":"BaseException"} ] }, + "DeleteDataSource":{ + "name":"DeleteDataSource", + "http":{ + "method":"DELETE", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/dataSource/{DataSourceName}" + }, + "input":{"shape":"DeleteDataSourceRequest"}, + "output":{"shape":"DeleteDataSourceResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"}, + {"shape":"DependencyFailureException"} + ] + }, "DeleteDomain":{ "name":"DeleteDomain", "http":{ @@ -488,6 +523,39 @@ {"shape":"InternalException"} ] }, + "GetDataSource":{ + "name":"GetDataSource", + "http":{ + "method":"GET", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/dataSource/{DataSourceName}" + }, + "input":{"shape":"GetDataSourceRequest"}, + "output":{"shape":"GetDataSourceResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"}, + {"shape":"DependencyFailureException"} + ] + }, + "GetDomainMaintenanceStatus":{ + "name":"GetDomainMaintenanceStatus", + "http":{ + "method":"GET", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/domainMaintenance" + }, + "input":{"shape":"GetDomainMaintenanceStatusRequest"}, + "output":{"shape":"GetDomainMaintenanceStatusResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"} + ] + }, "GetPackageVersionHistory":{ "name":"GetPackageVersionHistory", "http":{ @@ -536,6 +604,39 @@ {"shape":"InternalException"} ] }, + "ListDataSources":{ + "name":"ListDataSources", + "http":{ + "method":"GET", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/dataSource" + }, + "input":{"shape":"ListDataSourcesRequest"}, + "output":{"shape":"ListDataSourcesResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"}, + {"shape":"DependencyFailureException"} + ] + }, + "ListDomainMaintenances":{ + "name":"ListDomainMaintenances", + "http":{ + "method":"GET", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/domainMaintenances" + }, + "input":{"shape":"ListDomainMaintenancesRequest"}, + "output":{"shape":"ListDomainMaintenancesResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"} + ] + }, "ListDomainNames":{ "name":"ListDomainNames", "http":{ @@ -745,6 +846,22 @@ {"shape":"BaseException"} ] }, + "StartDomainMaintenance":{ + "name":"StartDomainMaintenance", + "http":{ + "method":"POST", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/domainMaintenance" + }, + "input":{"shape":"StartDomainMaintenanceRequest"}, + "output":{"shape":"StartDomainMaintenanceResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"} + ] + }, "StartServiceSoftwareUpdate":{ "name":"StartServiceSoftwareUpdate", "http":{ @@ -760,6 +877,23 @@ {"shape":"ValidationException"} ] }, + "UpdateDataSource":{ + "name":"UpdateDataSource", + "http":{ + "method":"PUT", + "requestUri":"/2021-01-01/opensearch/domain/{DomainName}/dataSource/{DataSourceName}" + }, + "input":{"shape":"UpdateDataSourceRequest"}, + "output":{"shape":"UpdateDataSourceResponse"}, + "errors":[ + {"shape":"BaseException"}, + {"shape":"InternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"DisabledOperationException"}, + {"shape":"DependencyFailureException"} + ] + }, "UpdateDomainConfig":{ "name":"UpdateDomainConfig", "http":{ @@ -929,6 +1063,30 @@ "JVM_YOUNG_GEN_TUNING" ] }, + "AddDataSourceRequest":{ + "type":"structure", + "required":[ + "DomainName", + "Name", + "DataSourceType" + ], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "Name":{"shape":"DataSourceName"}, + "DataSourceType":{"shape":"DataSourceType"}, + "Description":{"shape":"DataSourceDescription"} + } + }, + "AddDataSourceResponse":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + } + }, "AddTagsRequest":{ "type":"structure", "required":[ @@ -1376,6 +1534,7 @@ "ClusterConfig":{"shape":"ClusterConfig"}, "EBSOptions":{"shape":"EBSOptions"}, "AccessPolicies":{"shape":"PolicyDocument"}, + "IPAddressType":{"shape":"IPAddressType"}, "SnapshotOptions":{"shape":"SnapshotOptions"}, "VPCOptions":{"shape":"VPCOptions"}, "CognitoOptions":{"shape":"CognitoOptions"}, @@ -1470,6 +1629,61 @@ "SkipUnavailable":{"shape":"SkipUnavailableStatus"} } }, + "DataSourceDescription":{ + "type":"string", + "max":1000, + "pattern":"^([a-zA-Z0-9_])*[\\\\a-zA-Z0-9_@#%*+=:?./!\\s-]*$" + }, + "DataSourceDetails":{ + "type":"structure", + "members":{ + "DataSourceType":{"shape":"DataSourceType"}, + "Name":{"shape":"DataSourceName"}, + "Description":{"shape":"DataSourceDescription"} + } + }, + "DataSourceList":{ + "type":"list", + "member":{"shape":"DataSourceDetails"} + }, + "DataSourceName":{ + "type":"string", + "max":80, + "min":3, + "pattern":"[a-z][a-z0-9_]+" + }, + "DataSourceType":{ + "type":"structure", + "members":{ + "S3GlueDataCatalog":{"shape":"S3GlueDataCatalog"} + }, + "union":true + }, + "DeleteDataSourceRequest":{ + "type":"structure", + "required":[ + "DomainName", + "Name" + ], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "Name":{ + "shape":"DataSourceName", + "location":"uri", + "locationName":"DataSourceName" + } + } + }, + "DeleteDataSourceResponse":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + } + }, "DeleteDomainRequest":{ "type":"structure", "required":["DomainName"], @@ -1822,16 +2036,19 @@ "enum":[ "PackageID", "PackageName", - "PackageStatus" + "PackageStatus", + "PackageType", + "EngineVersion" ] }, "DescribePackagesFilterValue":{ "type":"string", - "pattern":"^[0-9a-zA-Z\\*\\.\\\\/\\?-]*$" + "pattern":"^[0-9a-zA-Z\\*\\.\\_\\\\\\/\\?-]+$" }, "DescribePackagesFilterValues":{ "type":"list", - "member":{"shape":"DescribePackagesFilterValue"} + "member":{"shape":"DescribePackagesFilterValue"}, + "min":1 }, "DescribePackagesRequest":{ "type":"structure", @@ -1967,6 +2184,7 @@ "ClusterConfig":{"shape":"ClusterConfigStatus"}, "EBSOptions":{"shape":"EBSOptionsStatus"}, "AccessPolicies":{"shape":"AccessPoliciesStatus"}, + "IPAddressType":{"shape":"IPAddressTypeStatus"}, "SnapshotOptions":{"shape":"SnapshotOptionsStatus"}, "VPCOptions":{"shape":"VPCDerivedInfoStatus"}, "CognitoOptions":{"shape":"CognitoOptionsStatus"}, @@ -2034,6 +2252,23 @@ "AWSDomainInformation":{"shape":"AWSDomainInformation"} } }, + "DomainMaintenanceDetails":{ + "type":"structure", + "members":{ + "MaintenanceId":{"shape":"RequestId"}, + "DomainName":{"shape":"DomainName"}, + "Action":{"shape":"MaintenanceType"}, + "NodeId":{"shape":"NodeId"}, + "Status":{"shape":"MaintenanceStatus"}, + "StatusMessage":{"shape":"MaintenanceStatusMessage"}, + "CreatedAt":{"shape":"UpdateTimestamp"}, + "UpdatedAt":{"shape":"UpdateTimestamp"} + } + }, + "DomainMaintenanceList":{ + "type":"list", + "member":{"shape":"DomainMaintenanceDetails"} + }, "DomainName":{ "type":"string", "max":28, @@ -2118,6 +2353,7 @@ "Created":{"shape":"Boolean"}, "Deleted":{"shape":"Boolean"}, "Endpoint":{"shape":"ServiceUrl"}, + "EndpointV2":{"shape":"ServiceUrl"}, "Endpoints":{"shape":"EndpointsMap"}, "Processing":{"shape":"Boolean"}, "UpgradeProcessing":{"shape":"Boolean"}, @@ -2125,6 +2361,7 @@ "ClusterConfig":{"shape":"ClusterConfig"}, "EBSOptions":{"shape":"EBSOptions"}, "AccessPolicies":{"shape":"PolicyDocument"}, + "IPAddressType":{"shape":"IPAddressType"}, "SnapshotOptions":{"shape":"SnapshotOptions"}, "VPCOptions":{"shape":"VPCDerivedInfo"}, "CognitoOptions":{"shape":"CognitoOptions"}, @@ -2244,6 +2481,10 @@ "Elasticsearch" ] }, + "EngineVersion":{ + "type":"string", + "pattern":"^Elasticsearch_[0-9]{1}\\.[0-9]{1,2}$|^OpenSearch_[0-9]{1,2}\\.[0-9]{1,2}$" + }, "EnvironmentInfo":{ "type":"structure", "members":{ @@ -2296,6 +2537,63 @@ "CompatibleVersions":{"shape":"CompatibleVersionsList"} } }, + "GetDataSourceRequest":{ + "type":"structure", + "required":[ + "DomainName", + "Name" + ], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "Name":{ + "shape":"DataSourceName", + "location":"uri", + "locationName":"DataSourceName" + } + } + }, + "GetDataSourceResponse":{ + "type":"structure", + "members":{ + "DataSourceType":{"shape":"DataSourceType"}, + "Name":{"shape":"DataSourceName"}, + "Description":{"shape":"DataSourceDescription"} + } + }, + "GetDomainMaintenanceStatusRequest":{ + "type":"structure", + "required":[ + "DomainName", + "MaintenanceId" + ], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "MaintenanceId":{ + "shape":"RequestId", + "location":"querystring", + "locationName":"maintenanceId" + } + } + }, + "GetDomainMaintenanceStatusResponse":{ + "type":"structure", + "members":{ + "Status":{"shape":"MaintenanceStatus"}, + "StatusMessage":{"shape":"MaintenanceStatusMessage"}, + "NodeId":{"shape":"NodeId"}, + "Action":{"shape":"MaintenanceType"}, + "CreatedAt":{"shape":"UpdateTimestamp"}, + "UpdatedAt":{"shape":"UpdateTimestamp"} + } + }, "GetPackageVersionHistoryRequest":{ "type":"structure", "required":["PackageID"], @@ -2372,6 +2670,24 @@ "UpgradeName":{"shape":"UpgradeName"} } }, + "IPAddressType":{ + "type":"string", + "enum":[ + "ipv4", + "dualstack" + ] + }, + "IPAddressTypeStatus":{ + "type":"structure", + "required":[ + "Options", + "Status" + ], + "members":{ + "Options":{"shape":"IPAddressType"}, + "Status":{"shape":"OptionStatus"} + } + }, "IdentityPoolId":{ "type":"string", "max":55, @@ -2518,6 +2834,61 @@ "key":{"shape":"InstanceRole"}, "value":{"shape":"Limits"} }, + "ListDataSourcesRequest":{ + "type":"structure", + "required":["DomainName"], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + } + } + }, + "ListDataSourcesResponse":{ + "type":"structure", + "members":{ + "DataSources":{"shape":"DataSourceList"} + } + }, + "ListDomainMaintenancesRequest":{ + "type":"structure", + "required":["DomainName"], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "Action":{ + "shape":"MaintenanceType", + "location":"querystring", + "locationName":"action" + }, + "Status":{ + "shape":"MaintenanceStatus", + "location":"querystring", + "locationName":"status" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListDomainMaintenancesResponse":{ + "type":"structure", + "members":{ + "DomainMaintenances":{"shape":"DomainMaintenanceList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListDomainNamesRequest":{ "type":"structure", "members":{ @@ -2804,6 +3175,30 @@ ] }, "Long":{"type":"long"}, + "MaintenanceStatus":{ + "type":"string", + "enum":[ + "PENDING", + "IN_PROGRESS", + "COMPLETED", + "FAILED", + "TIMED_OUT" + ] + }, + "MaintenanceStatusMessage":{ + "type":"string", + "max":1000, + "min":0, + "pattern":"^([\\s\\S]*)$" + }, + "MaintenanceType":{ + "type":"string", + "enum":[ + "REBOOT_NODE", + "RESTART_SEARCH_PROCESS", + "RESTART_DASHBOARD" + ] + }, "MasterNodeStatus":{ "type":"string", "enum":[ @@ -3106,17 +3501,22 @@ "CreatedAt":{"shape":"CreatedAt"}, "LastUpdatedAt":{"shape":"LastUpdated"}, "AvailablePackageVersion":{"shape":"PackageVersion"}, - "ErrorDetails":{"shape":"ErrorDetails"} + "ErrorDetails":{"shape":"ErrorDetails"}, + "EngineVersion":{"shape":"EngineVersion"}, + "AvailablePluginProperties":{"shape":"PluginProperties"} } }, "PackageDetailsList":{ "type":"list", "member":{"shape":"PackageDetails"} }, - "PackageID":{"type":"string"}, + "PackageID":{ + "type":"string", + "pattern":"^([FG][0-9]+)$" + }, "PackageName":{ "type":"string", - "max":28, + "max":256, "min":3, "pattern":"[a-z][a-z0-9\\-]+" }, @@ -3142,7 +3542,10 @@ }, "PackageType":{ "type":"string", - "enum":["TXT-DICTIONARY"] + "enum":[ + "TXT-DICTIONARY", + "ZIP-PLUGIN" + ] }, "PackageVersion":{"type":"string"}, "PackageVersionHistory":{ @@ -3150,7 +3553,8 @@ "members":{ "PackageVersion":{"shape":"PackageVersion"}, "CommitMessage":{"shape":"CommitMessage"}, - "CreatedAt":{"shape":"CreatedAt"} + "CreatedAt":{"shape":"CreatedAt"}, + "PluginProperties":{"shape":"PluginProperties"} } }, "PackageVersionHistoryList":{ @@ -3164,6 +3568,32 @@ "pattern":".*", "sensitive":true }, + "PluginClassName":{ + "type":"string", + "max":1024 + }, + "PluginDescription":{ + "type":"string", + "max":1024 + }, + "PluginName":{ + "type":"string", + "max":1024 + }, + "PluginProperties":{ + "type":"structure", + "members":{ + "Name":{"shape":"PluginName"}, + "Description":{"shape":"PluginDescription"}, + "Version":{"shape":"PluginVersion"}, + "ClassName":{"shape":"PluginClassName"}, + "UncompressedSizeInBytes":{"shape":"UncompressedPluginSizeInBytes"} + } + }, + "PluginVersion":{ + "type":"string", + "max":1024 + }, "PolicyDocument":{ "type":"string", "max":102400, @@ -3242,6 +3672,12 @@ "TagKeys":{"shape":"StringList"} } }, + "RequestId":{ + "type":"string", + "max":100, + "min":1, + "pattern":"^([\\s\\S]*)$" + }, "ReservationToken":{ "type":"string", "max":64, @@ -3348,6 +3784,12 @@ "max":63, "min":3 }, + "S3GlueDataCatalog":{ + "type":"structure", + "members":{ + "RoleArn":{"shape":"RoleArn"} + } + }, "S3Key":{ "type":"string", "max":1024, @@ -3524,6 +3966,28 @@ } }, "StartAt":{"type":"timestamp"}, + "StartDomainMaintenanceRequest":{ + "type":"structure", + "required":[ + "DomainName", + "Action" + ], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "Action":{"shape":"MaintenanceType"}, + "NodeId":{"shape":"NodeId"} + } + }, + "StartDomainMaintenanceResponse":{ + "type":"structure", + "members":{ + "MaintenanceId":{"shape":"RequestId"} + } + }, "StartServiceSoftwareUpdateRequest":{ "type":"structure", "required":["DomainName"], @@ -3623,6 +4087,35 @@ "type":"integer", "min":0 }, + "UncompressedPluginSizeInBytes":{"type":"long"}, + "UpdateDataSourceRequest":{ + "type":"structure", + "required":[ + "DomainName", + "Name", + "DataSourceType" + ], + "members":{ + "DomainName":{ + "shape":"DomainName", + "location":"uri", + "locationName":"DomainName" + }, + "Name":{ + "shape":"DataSourceName", + "location":"uri", + "locationName":"DataSourceName" + }, + "DataSourceType":{"shape":"DataSourceType"}, + "Description":{"shape":"DataSourceDescription"} + } + }, + "UpdateDataSourceResponse":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + } + }, "UpdateDomainConfigRequest":{ "type":"structure", "required":["DomainName"], @@ -3639,6 +4132,7 @@ "CognitoOptions":{"shape":"CognitoOptions"}, "AdvancedOptions":{"shape":"AdvancedOptions"}, "AccessPolicies":{"shape":"PolicyDocument"}, + "IPAddressType":{"shape":"IPAddressType"}, "LogPublishingOptions":{"shape":"LogPublishingOptions"}, "EncryptionAtRestOptions":{"shape":"EncryptionAtRestOptions"}, "DomainEndpointOptions":{"shape":"DomainEndpointOptions"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,6 +3,7 @@ "service": "

Use the Amazon OpenSearch Service configuration API to create, configure, and manage OpenSearch Service domains.

For sample code that uses the configuration API, see the Amazon OpenSearch Service Developer Guide . The guide also contains sample code for sending signed HTTP requests to the OpenSearch APIs. The endpoint for configuration service requests is Region specific: es.region.amazonaws.com. For example, es.us-east-1.amazonaws.com. For a current list of supported Regions and endpoints, see Amazon Web Services service endpoints.

", "operations": { "AcceptInboundConnection": "

Allows the destination Amazon OpenSearch Service domain owner to accept an inbound cross-cluster search connection request. For more information, see Cross-cluster search for Amazon OpenSearch Service.

", + "AddDataSource": "

Adds the data source on the domain.

", "AddTags": "

Attaches tags to an existing Amazon OpenSearch Service domain. Tags are a set of case-sensitive key-value pairs. A domain can have up to 10 tags. For more information, see Tagging Amazon OpenSearch Service domains.

", "AssociatePackage": "

Associates a package with an Amazon OpenSearch Service domain. For more information, see Custom packages for Amazon OpenSearch Service.

", "AuthorizeVpcEndpointAccess": "

Provides access to an Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

", @@ -11,6 +12,7 @@ "CreateOutboundConnection": "

Creates a new cross-cluster search connection from a source Amazon OpenSearch Service domain to a destination domain. For more information, see Cross-cluster search for Amazon OpenSearch Service.

", "CreatePackage": "

Creates a package for use with Amazon OpenSearch Service domains. For more information, see Custom packages for Amazon OpenSearch Service.

", "CreateVpcEndpoint": "

Creates an Amazon OpenSearch Service-managed VPC endpoint.

", + "DeleteDataSource": "

Deletes the data source.

", "DeleteDomain": "

Deletes an Amazon OpenSearch Service domain and all of its data. You can't recover a domain after you delete it.

", "DeleteInboundConnection": "

Allows the destination Amazon OpenSearch Service domain owner to delete an existing inbound cross-cluster search connection. For more information, see Cross-cluster search for Amazon OpenSearch Service.

", "DeleteOutboundConnection": "

Allows the source Amazon OpenSearch Service domain owner to delete an existing outbound cross-cluster search connection. For more information, see Cross-cluster search for Amazon OpenSearch Service.

", @@ -33,9 +35,13 @@ "DescribeVpcEndpoints": "

Describes one or more Amazon OpenSearch Service-managed VPC endpoints.

", "DissociatePackage": "

Removes a package from the specified Amazon OpenSearch Service domain. The package can't be in use with any OpenSearch index for the dissociation to succeed. The package is still available in OpenSearch Service for association later. For more information, see Custom packages for Amazon OpenSearch Service.

", "GetCompatibleVersions": "

Returns a map of OpenSearch or Elasticsearch versions and the versions you can upgrade them to.

", + "GetDataSource": "

Describes the data source details.

", + "GetDomainMaintenanceStatus": "

The status of the maintenance action.

", "GetPackageVersionHistory": "

Returns a list of Amazon OpenSearch Service package versions, along with their creation time, commit message, and plugin properties (if the package is a zip plugin package). For more information, see Custom packages for Amazon OpenSearch Service.

", "GetUpgradeHistory": "

Retrieves the complete history of the last 10 upgrades performed on an Amazon OpenSearch Service domain.

", "GetUpgradeStatus": "

Returns the most recent status of the last upgrade or upgrade eligibility check performed on an Amazon OpenSearch Service domain.

", + "ListDataSources": "

A list of the data source details of the domain.

", + "ListDomainMaintenances": "

A list of maintenance actions for the domain.

", "ListDomainNames": "

Returns the names of all Amazon OpenSearch Service domains owned by the current user in the active Region.

", "ListDomainsForPackage": "

Lists all Amazon OpenSearch Service domains associated with a given package. For more information, see Custom packages for Amazon OpenSearch Service.

", "ListInstanceTypeDetails": "

Lists all instance types and available features for a given OpenSearch or Elasticsearch version.

", @@ -50,8 +56,10 @@ "RejectInboundConnection": "

Allows the remote Amazon OpenSearch Service domain owner to reject an inbound cross-cluster connection request.

", "RemoveTags": "

Removes the specified set of tags from an Amazon OpenSearch Service domain. For more information, see Tagging Amazon OpenSearch Service domains.

", "RevokeVpcEndpointAccess": "

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface VPC endpoint.

", + "StartDomainMaintenance": "

Starts the node maintenance process on the data node. These processes can include a node reboot, an Opensearch or Elasticsearch process restart, or a Dashboard or Kibana restart.

", "StartServiceSoftwareUpdate": "

Schedules a service software update for an Amazon OpenSearch Service domain. For more information, see Service software updates in Amazon OpenSearch Service.

", - "UpdateDomainConfig": "

Modifies the cluster configuration of the specified Amazon OpenSearch Service domain.sl

", + "UpdateDataSource": "

Updates the data source on the domain.

", + "UpdateDomainConfig": "

Modifies the cluster configuration of the specified Amazon OpenSearch Service domain.

", "UpdatePackage": "

Updates a package for use with Amazon OpenSearch Service domains. For more information, see Custom packages for Amazon OpenSearch Service.

", "UpdateScheduledAction": "

Reschedules a planned domain configuration change for a later time. This change can be a scheduled service software update or a blue/green Auto-Tune enhancement.

", "UpdateVpcEndpoint": "

Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.

", @@ -123,6 +131,16 @@ "UpdateScheduledActionRequest$ActionType": "

The type of action to reschedule. Can be one of SERVICE_SOFTWARE_UPDATE, JVM_HEAP_SIZE_TUNING, or JVM_YOUNG_GEN_TUNING. To retrieve this value, send a ListScheduledActions request.

" } }, + "AddDataSourceRequest": { + "base": "

Container for the parameters to the AddDataSource operation.

", + "refs": { + } + }, + "AddDataSourceResponse": { + "base": "

The result of an AddDataSource operation.

", + "refs": { + } + }, "AddTagsRequest": { "base": "

Container for the parameters to the AddTags operation. Specifies the tags to attach to the domain.

", "refs": { @@ -598,11 +616,62 @@ } }, "CrossClusterSearchConnectionProperties": { - "base": "

Cross cluster search specific connection properties.

", + "base": "

Cross-cluster search specific connection properties.

", "refs": { "ConnectionProperties$CrossClusterSearch": "

The connection properties for cross cluster search.

" } }, + "DataSourceDescription": { + "base": null, + "refs": { + "AddDataSourceRequest$Description": "

A description of the data source.

", + "DataSourceDetails$Description": "

A description of the data source.

", + "GetDataSourceResponse$Description": "

A description of the data source.

", + "UpdateDataSourceRequest$Description": "

A description of the data source.

" + } + }, + "DataSourceDetails": { + "base": "

Details about the data sources.

", + "refs": { + "DataSourceList$member": null + } + }, + "DataSourceList": { + "base": null, + "refs": { + "ListDataSourcesResponse$DataSources": "

A list of the data sources.

" + } + }, + "DataSourceName": { + "base": null, + "refs": { + "AddDataSourceRequest$Name": "

The name of the data source.

", + "DataSourceDetails$Name": "

The name of the data source.

", + "DeleteDataSourceRequest$Name": "

The name of the data source.

", + "GetDataSourceRequest$Name": "

The name of the data source.

", + "GetDataSourceResponse$Name": "

The name of the data source.

", + "UpdateDataSourceRequest$Name": "

The name of the data source.

" + } + }, + "DataSourceType": { + "base": "

Information about the data source.

", + "refs": { + "AddDataSourceRequest$DataSourceType": "

The type of data source.

", + "DataSourceDetails$DataSourceType": "

The type of data source.

", + "GetDataSourceResponse$DataSourceType": "

The type of data source.

", + "UpdateDataSourceRequest$DataSourceType": "

The type of data source.

" + } + }, + "DeleteDataSourceRequest": { + "base": "

Container for the parameters to the DeleteDataSource operation.

", + "refs": { + } + }, + "DeleteDataSourceResponse": { + "base": "

The result of a GetDataSource operation.

", + "refs": { + } + }, "DeleteDomainRequest": { "base": "

Container for the parameters to the DeleteDomain operation.

", "refs": { @@ -950,14 +1019,28 @@ "OutboundConnection$RemoteDomainInfo": "

Information about the destination (remote) domain.

" } }, + "DomainMaintenanceDetails": { + "base": "

Container for the domain maintenance details.

", + "refs": { + "DomainMaintenanceList$member": null + } + }, + "DomainMaintenanceList": { + "base": null, + "refs": { + "ListDomainMaintenancesResponse$DomainMaintenances": "

A list of the submitted maintenance actions.

" + } + }, "DomainName": { "base": "

The name of an OpenSearch Service domain. Domain names are unique across the domains owned by an account within an Amazon Web Services Region.

", "refs": { "AWSDomainInformation$DomainName": "

Name of the domain.

", + "AddDataSourceRequest$DomainName": "

The name of the domain.

", "AssociatePackageRequest$DomainName": "

Name of the domain to associate the package with.

", "AuthorizeVpcEndpointAccessRequest$DomainName": "

The name of the OpenSearch Service domain to provide access to.

", "CancelServiceSoftwareUpdateRequest$DomainName": "

Name of the OpenSearch Service domain that you want to cancel the service software update on.

", "CreateDomainRequest$DomainName": "

Name of the OpenSearch Service domain to create. Domain names are unique across the domains owned by an account within an Amazon Web Services Region.

", + "DeleteDataSourceRequest$DomainName": "

The name of the domain.

", "DeleteDomainRequest$DomainName": "

The name of the domain you want to permanently delete.

", "DescribeDomainAutoTunesRequest$DomainName": "

Name of the domain that you want Auto-Tune details about.

", "DescribeDomainChangeProgressRequest$DomainName": "

The name of the domain to get progress information for.

", @@ -969,19 +1052,26 @@ "DescribeInstanceTypeLimitsRequest$DomainName": "

The name of the domain. Only specify if you need the limits for an existing domain.

", "DissociatePackageRequest$DomainName": "

Name of the domain to dissociate the package from.

", "DomainInfo$DomainName": "

Name of the domain.

", + "DomainMaintenanceDetails$DomainName": "

The name of the domain.

", "DomainNameList$member": null, "DomainPackageDetails$DomainName": "

Name of the domain that the package is associated with.

", "DomainStatus$DomainName": "

Name of the domain. Domain names are unique across all domains owned by the same account within an Amazon Web Services Region.

", "GetCompatibleVersionsRequest$DomainName": "

The name of an existing domain. Provide this parameter to limit the results to a single domain.

", + "GetDataSourceRequest$DomainName": "

The name of the domain.

", + "GetDomainMaintenanceStatusRequest$DomainName": "

The name of the domain.

", "GetUpgradeHistoryRequest$DomainName": "

The name of an existing domain.

", "GetUpgradeStatusRequest$DomainName": "

The domain of the domain to get upgrade status information for.

", + "ListDataSourcesRequest$DomainName": "

The name of the domain.

", + "ListDomainMaintenancesRequest$DomainName": "

The name of the domain.

", "ListInstanceTypeDetailsRequest$DomainName": "

The name of the domain.

", "ListPackagesForDomainRequest$DomainName": "

The name of the domain for which you want to list associated packages.

", "ListScheduledActionsRequest$DomainName": "

The name of the domain.

", "ListVpcEndpointAccessRequest$DomainName": "

The name of the OpenSearch Service domain to retrieve access information for.

", "ListVpcEndpointsForDomainRequest$DomainName": "

The name of the domain to list associated VPC endpoints for.

", "RevokeVpcEndpointAccessRequest$DomainName": "

The name of the OpenSearch Service domain.

", + "StartDomainMaintenanceRequest$DomainName": "

The name of the domain.

", "StartServiceSoftwareUpdateRequest$DomainName": "

The name of the domain that you want to update to the latest service software.

", + "UpdateDataSourceRequest$DomainName": "

The name of the domain.

", "UpdateDomainConfigRequest$DomainName": "

The name of the domain that you're updating.

", "UpdateScheduledActionRequest$DomainName": "

The name of the domain to reschedule an action for.

", "UpgradeDomainRequest$DomainName": "

Name of the OpenSearch Service domain that you want to upgrade.

", @@ -997,7 +1087,7 @@ "DomainNameList": { "base": "

A list of OpenSearch Service domain names.

", "refs": { - "DescribeDomainsRequest$DomainNames": "

Array of OpenSearch Service domain names that you want information about. If you don't specify any domains, OpenSearch Service returns information about all domains owned by the account.

" + "DescribeDomainsRequest$DomainNames": "

Array of OpenSearch Service domain names that you want information about. You must specify at least one domain name.

" } }, "DomainNodesStatus": { @@ -1154,6 +1244,12 @@ "ListDomainNamesRequest$EngineType": "

Filters the output by domain engine type.

" } }, + "EngineVersion": { + "base": null, + "refs": { + "PackageDetails$EngineVersion": "

Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.

" + } + }, "EnvironmentInfo": { "base": "

Information about the active domain environment.

", "refs": { @@ -1225,6 +1321,26 @@ "refs": { } }, + "GetDataSourceRequest": { + "base": "

Container for the parameters to the GetDataSource operation.

", + "refs": { + } + }, + "GetDataSourceResponse": { + "base": "

The result of a GetDataSource operation.

", + "refs": { + } + }, + "GetDomainMaintenanceStatusRequest": { + "base": "

Container for the parameters to the GetDomainMaintenanceStatus operation.

", + "refs": { + } + }, + "GetDomainMaintenanceStatusResponse": { + "base": "

The result of a GetDomainMaintenanceStatus request that information about the requested action.

", + "refs": { + } + }, "GetPackageVersionHistoryRequest": { "base": "

Container for the request parameters to the GetPackageVersionHistory operation.

", "refs": { @@ -1255,6 +1371,21 @@ "refs": { } }, + "IPAddressType": { + "base": null, + "refs": { + "CreateDomainRequest$IPAddressType": "

The type of IP addresses supported by the endpoint for the domain.

", + "DomainStatus$IPAddressType": "

The type of IP addresses supported by the endpoint for the domain.

", + "IPAddressTypeStatus$Options": "

The IP address options for the domain.

", + "UpdateDomainConfigRequest$IPAddressType": "

The type of IP addresses supported by the endpoint for the domain.

" + } + }, + "IPAddressTypeStatus": { + "base": "

The IP address type status for the domain.

", + "refs": { + "DomainConfig$IPAddressType": "

The type of IP addresses supported by the endpoint for the domain.

" + } + }, "IdentityPoolId": { "base": null, "refs": { @@ -1348,7 +1479,7 @@ "IntegerClass": { "base": null, "refs": { - "ClusterConfig$InstanceCount": "

Number of dedicated master nodes in the cluster. This number must be greater than 1, otherwise you receive a validation exception.

", + "ClusterConfig$InstanceCount": "

Number of data nodes in the cluster. This number must be greater than 1, otherwise you receive a validation exception.

", "ClusterConfig$DedicatedMasterCount": "

Number of dedicated master nodes in the cluster. This number must be greater than 2 and not 4, otherwise you receive a validation exception.

", "ClusterConfig$WarmCount": "

The number of warm nodes in the cluster.

", "EBSOptions$VolumeSize": "

Specifies the size (in GiB) of EBS volumes attached to data nodes.

", @@ -1438,6 +1569,26 @@ "DescribeInstanceTypeLimitsResponse$LimitsByRole": "

Map that contains all applicable instance type limits.data refers to data nodes.master refers to dedicated master nodes.

" } }, + "ListDataSourcesRequest": { + "base": "

Container for the parameters to the ListDataSources operation.

", + "refs": { + } + }, + "ListDataSourcesResponse": { + "base": "

The result of a ListDataSources operation.

", + "refs": { + } + }, + "ListDomainMaintenancesRequest": { + "base": "

Container for the parameters to the ListDomainMaintenances operation.

", + "refs": { + } + }, + "ListDomainMaintenancesResponse": { + "base": "

The result of a ListDomainMaintenances request that contains information about the requested actions.

", + "refs": { + } + }, "ListDomainNamesRequest": { "base": "

Container for the parameters to the ListDomainNames operation.

", "refs": { @@ -1575,6 +1726,30 @@ "UpdateScheduledActionRequest$DesiredStartTime": "

The time to implement the change, in Coordinated Universal Time (UTC). Only specify this parameter if you set ScheduleAt to TIMESTAMP.

" } }, + "MaintenanceStatus": { + "base": null, + "refs": { + "DomainMaintenanceDetails$Status": "

The status of the action.

", + "GetDomainMaintenanceStatusResponse$Status": "

The status of the maintenance action.

", + "ListDomainMaintenancesRequest$Status": "

The status of the action.

" + } + }, + "MaintenanceStatusMessage": { + "base": null, + "refs": { + "DomainMaintenanceDetails$StatusMessage": "

The status message for the action.

", + "GetDomainMaintenanceStatusResponse$StatusMessage": "

The status message of the maintenance action.

" + } + }, + "MaintenanceType": { + "base": null, + "refs": { + "DomainMaintenanceDetails$Action": "

The name of the action.

", + "GetDomainMaintenanceStatusResponse$Action": "

The action name.

", + "ListDomainMaintenancesRequest$Action": "

The name of the action.

", + "StartDomainMaintenanceRequest$Action": "

The name of the action.

" + } + }, "MasterNodeStatus": { "base": null, "refs": { @@ -1598,6 +1773,7 @@ "DescribeReservedInstancesRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", "GetPackageVersionHistoryRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", "GetUpgradeHistoryRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", + "ListDomainMaintenancesRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", "ListDomainsForPackageRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", "ListInstanceTypeDetailsRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", "ListPackagesForDomainRequest$MaxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

", @@ -1639,6 +1815,8 @@ "DescribeReservedInstancesRequest$NextToken": "

If your initial DescribeReservedInstances operation returns a nextToken, you can include the returned nextToken in subsequent DescribeReservedInstances operations, which returns results in the next page.

", "GetPackageVersionHistoryRequest$NextToken": "

If your initial GetPackageVersionHistory operation returns a nextToken, you can include the returned nextToken in subsequent GetPackageVersionHistory operations, which returns results in the next page.

", "GetUpgradeHistoryRequest$NextToken": "

If your initial GetUpgradeHistory operation returns a nextToken, you can include the returned nextToken in subsequent GetUpgradeHistory operations, which returns results in the next page.

", + "ListDomainMaintenancesRequest$NextToken": "

If your initial ListDomainMaintenances operation returns a nextToken, include the returned nextToken in subsequent ListDomainMaintenances operations, which returns results in the next page.

", + "ListDomainMaintenancesResponse$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.

", "ListDomainsForPackageRequest$NextToken": "

If your initial ListDomainsForPackage operation returns a nextToken, you can include the returned nextToken in subsequent ListDomainsForPackage operations, which returns results in the next page.

", "ListInstanceTypeDetailsRequest$NextToken": "

If your initial ListInstanceTypeDetails operation returns a nextToken, you can include the returned nextToken in subsequent ListInstanceTypeDetails operations, which returns results in the next page.

", "ListInstanceTypeDetailsResponse$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.

", @@ -1658,7 +1836,10 @@ "NodeId": { "base": null, "refs": { - "DomainNodesStatus$NodeId": "

The ID of the node.

" + "DomainMaintenanceDetails$NodeId": "

The ID of the data node.

", + "DomainNodesStatus$NodeId": "

The ID of the node.

", + "GetDomainMaintenanceStatusResponse$NodeId": "

The node ID of the maintenance action.

", + "StartDomainMaintenanceRequest$NodeId": "

The ID of the data node.

" } }, "NodeStatus": { @@ -1778,6 +1959,7 @@ "DomainEndpointOptionsStatus$Status": "

The status of the endpoint options for a domain.

", "EBSOptionsStatus$Status": "

The status of the EBS options for the specified domain.

", "EncryptionAtRestOptionsStatus$Status": "

The status of the encryption at rest options for the specified domain.

", + "IPAddressTypeStatus$Status": null, "LogPublishingOptionsStatus$Status": "

The status of the log publishing options for the domain.

", "NodeToNodeEncryptionOptionsStatus$Status": "

The status of the node-to-node encryption options for the specified domain.

", "OffPeakWindowOptionsStatus$Status": "

The current status of off-peak window options.

", @@ -1917,6 +2099,37 @@ "MasterUserOptions$MasterUserPassword": "

Password for the master user. Only specify if InternalUserDatabaseEnabled is true.

" } }, + "PluginClassName": { + "base": null, + "refs": { + "PluginProperties$ClassName": "

The name of the class to load.

" + } + }, + "PluginDescription": { + "base": null, + "refs": { + "PluginProperties$Description": "

The description of the plugin.

" + } + }, + "PluginName": { + "base": null, + "refs": { + "PluginProperties$Name": "

The name of the plugin.

" + } + }, + "PluginProperties": { + "base": "

Basic information about the plugin.

", + "refs": { + "PackageDetails$AvailablePluginProperties": "

If the package is a ZIP-PLUGIN package, additional information about plugin properties.

", + "PackageVersionHistory$PluginProperties": "

Additional information about plugin properties if the package is a ZIP-PLUGIN package.

" + } + }, + "PluginVersion": { + "base": null, + "refs": { + "PluginProperties$Version": "

The version of the plugin.

" + } + }, "PolicyDocument": { "base": "

Access policy rules for an Amazon OpenSearch Service domain endpoint. For more information, see Configuring access policies. The maximum size of a policy document is 100 KB.

", "refs": { @@ -1982,6 +2195,14 @@ "refs": { } }, + "RequestId": { + "base": null, + "refs": { + "DomainMaintenanceDetails$MaintenanceId": "

The ID of the requested action.

", + "GetDomainMaintenanceStatusRequest$MaintenanceId": "

The request ID of the maintenance action.

", + "StartDomainMaintenanceResponse$MaintenanceId": "

The request ID of requested action.

" + } + }, "ReservationToken": { "base": null, "refs": { @@ -2044,7 +2265,8 @@ "RoleArn": { "base": null, "refs": { - "CognitoOptions$RoleArn": "

The AmazonOpenSearchServiceCognitoAccess role that allows OpenSearch Service to configure your user pool and identity pool.

" + "CognitoOptions$RoleArn": "

The AmazonOpenSearchServiceCognitoAccess role that allows OpenSearch Service to configure your user pool and identity pool.

", + "S3GlueDataCatalog$RoleArn": "

The role ARN for the AWS S3 Glue Data Catalog.

" } }, "RollbackOnDisable": { @@ -2059,6 +2281,12 @@ "PackageSource$S3BucketName": "

The name of the Amazon S3 bucket containing the package.

" } }, + "S3GlueDataCatalog": { + "base": "

Information about the AWS S3 Glue Data Catalog.

", + "refs": { + "DataSourceType$S3GlueDataCatalog": "

The data source for the AWS S3 Glue Data Catalog.

" + } + }, "S3Key": { "base": null, "refs": { @@ -2158,13 +2386,14 @@ "base": "

The domain endpoint to which index and search requests are submitted. For example, search-imdb-movies-oopcnjfn6ugo.eu-west-1.es.amazonaws.com or doc-imdb-movies-oopcnjfn6u.eu-west-1.es.amazonaws.com.

", "refs": { "DomainStatus$Endpoint": "

Domain-specific endpoint used to submit index, search, and data upload requests to the domain.

", + "DomainStatus$EndpointV2": null, "EndpointsMap$value": null } }, "SkipUnavailableStatus": { - "base": "

Status of SkipUnavailable param for outbound connection.

  • ENABLED - The SkipUnavailable param is enabled for the connection.

  • DISABLED - The SkipUnavailable param is disabled for the connection.

", + "base": "

The status of SkipUnavailable setting for the outbound connection.

  • ENABLED - The SkipUnavailable setting is enabled for the connection.

  • DISABLED - The SkipUnavailable setting is disabled for the connection.

", "refs": { - "CrossClusterSearchConnectionProperties$SkipUnavailable": "

Status of SkipUnavailable param for outbound connection.

" + "CrossClusterSearchConnectionProperties$SkipUnavailable": "

The status of the SkipUnavailable setting for the outbound connection. This feature allows you to specify some clusters as optional and ensure that your cross-cluster queries return partial results despite failures on one or more remote clusters.

" } }, "SlotList": { @@ -2214,6 +2443,16 @@ "AutoTuneMaintenanceSchedule$StartAt": "

The Epoch timestamp at which the Auto-Tune maintenance schedule starts.

" } }, + "StartDomainMaintenanceRequest": { + "base": "

Container for the parameters to the StartDomainMaintenance operation.

", + "refs": { + } + }, + "StartDomainMaintenanceResponse": { + "base": "

The result of a StartDomainMaintenance request that information about the requested action.

", + "refs": { + } + }, "StartServiceSoftwareUpdateRequest": { "base": "

Container for the request parameters to the StartServiceSoftwareUpdate operation.

", "refs": { @@ -2282,12 +2521,14 @@ "String": { "base": null, "refs": { + "AddDataSourceResponse$Message": "

A message associated with the data source.

", "AdvancedOptions$key": null, "AdvancedOptions$value": null, "AuthorizedPrincipal$Principal": "

The IAM principal that is allowed access to the domain.

", "AutoTuneMaintenanceSchedule$CronExpressionForRecurrence": "

A cron expression for a recurring maintenance schedule during which Auto-Tune can deploy changes.

", "AutoTuneOptionsOutput$ErrorMessage": "

Any errors that occurred while enabling or disabling Auto-Tune.

", "AutoTuneStatus$ErrorMessage": "

Any errors that occurred while enabling or disabling Auto-Tune.

", + "DeleteDataSourceResponse$Message": "

A message associated with the initiated request.

", "DescribePackagesResponse$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.

", "DescribeReservedInstancesResponse$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.

", "DryRunProgressStatus$DryRunStatus": "

The current status of the dry run.

", @@ -2313,6 +2554,7 @@ "ServiceSoftwareOptions$NewVersion": "

The new service software version, if one is available.

", "ServiceSoftwareOptions$Description": "

A description of the service software update status.

", "StringList$member": null, + "UpdateDataSourceResponse$Message": "

A message associated with the data source.

", "UpdateScheduledActionRequest$ActionID": "

The unique identifier of the action to reschedule. To retrieve this ID, send a ListScheduledActions request.

", "UpgradeDomainResponse$UpgradeId": "

The unique identifier of the domain upgrade.

", "VPCDerivedInfo$VPCId": "

The ID for your VPC. Amazon VPC generates this value when you create a VPC.

", @@ -2338,7 +2580,7 @@ "TLSSecurityPolicy": { "base": null, "refs": { - "DomainEndpointOptions$TLSSecurityPolicy": "

Specify the TLS security policy to apply to the HTTPS endpoint of the domain.

Can be one of the following values:

  • Policy-Min-TLS-1-0-2019-07: TLS security policy which supports TLS version 1.0 and higher.

  • Policy-Min-TLS-1-2-2019-07: TLS security policy which supports only TLS version 1.2

" + "DomainEndpointOptions$TLSSecurityPolicy": "

Specify the TLS security policy to apply to the HTTPS endpoint of the domain. The policy can be one of the following values:

  • Policy-Min-TLS-1-0-2019-07: TLS security policy which supports TLS version 1.0 to TLS version 1.2

  • Policy-Min-TLS-1-2-2019-07: TLS security policy which supports only TLS version 1.2

  • Policy-Min-TLS-1-0-2023-10: TLS security policy which supports TLS version 1.0 to TLS version 1.3

  • Policy-Min-TLS-1-2-2023-10: TLS security policy which supports TLS version 1.2 to TLS version 1.3 with perfect forward secrecy cipher suites

" } }, "Tag": { @@ -2386,6 +2628,22 @@ "OptionStatus$UpdateVersion": "

The latest version of the entity.

" } }, + "UncompressedPluginSizeInBytes": { + "base": null, + "refs": { + "PluginProperties$UncompressedSizeInBytes": "

The uncompressed size of the plugin.

" + } + }, + "UpdateDataSourceRequest": { + "base": "

Container for the parameters to the UpdateDataSource operation.

", + "refs": { + } + }, + "UpdateDataSourceResponse": { + "base": "

The result of an UpdateDataSource operation.

", + "refs": { + } + }, "UpdateDomainConfigRequest": { "base": "

Container for the request parameters to the UpdateDomain operation.

", "refs": { @@ -2422,6 +2680,10 @@ "AutoTuneStatus$CreationDate": "

Date and time when Auto-Tune was enabled for the domain.

", "AutoTuneStatus$UpdateDate": "

Date and time when the Auto-Tune options were last updated for the domain.

", "ChangeProgressStatusDetails$StartTime": "

The time at which the configuration change is made on the domain.

", + "DomainMaintenanceDetails$CreatedAt": "

The time at which the action was created.

", + "DomainMaintenanceDetails$UpdatedAt": "

The time at which the action was updated.

", + "GetDomainMaintenanceStatusResponse$CreatedAt": "

The time at which the action was created.

", + "GetDomainMaintenanceStatusResponse$UpdatedAt": "

The time at which the action was updated.

", "OptionStatus$CreationDate": "

The timestamp when the entity was created.

", "OptionStatus$UpdateDate": "

The timestamp of the last time the entity was updated.

", "ReservedInstance$StartTime": "

The date and time when the reservation was purchased.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,333 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } ], - "type": "tree", "rules": [ { - "conditions": [ + "conditions": [], + "endpoint": { + "url": "https://es-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://es-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } + true ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://es-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, + "aws", { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] } ] } ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://es-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "endpoint": { + "url": "https://aos.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, + "aws-cn", { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "name" ] } ] } ], - "type": "tree", - "rules": [ + "endpoint": { + "url": "https://aos.{Region}.api.amazonwebservices.com.cn", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [], - "type": "tree", - "rules": [ + "fn": "stringEquals", + "argv": [ + "aws-us-gov", { - "conditions": [], - "endpoint": { - "url": "https://es.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] } ] } - ] + ], + "endpoint": { + "url": "https://aos.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], "endpoint": { - "url": "https://es.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://es.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://es.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -355,7 +355,7 @@ "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://es.us-east-1.api.aws" + "url": "https://aos.us-east-1.api.aws" } }, "params": { @@ -420,7 +420,7 @@ "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://es.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://aos.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { @@ -498,7 +498,7 @@ "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://es.us-gov-east-1.api.aws" + "url": "https://aos.us-gov-east-1.api.aws" } }, "params": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearch/2021-01-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearch/2021-01-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,6 +40,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListDomainMaintenances": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListDomainsForPackage": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -33,6 +33,48 @@ "shape": "BatchGetCollectionResponse" } }, + "BatchGetEffectiveLifecyclePolicy": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "BatchGetEffectiveLifecyclePolicyRequest" + }, + "name": "BatchGetEffectiveLifecyclePolicy", + "output": { + "shape": "BatchGetEffectiveLifecyclePolicyResponse" + } + }, + "BatchGetLifecyclePolicy": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "BatchGetLifecyclePolicyRequest" + }, + "name": "BatchGetLifecyclePolicy", + "output": { + "shape": "BatchGetLifecyclePolicyResponse" + } + }, "BatchGetVpcEndpoint": { "errors": [ { @@ -113,6 +155,34 @@ "shape": "CreateCollectionResponse" } }, + "CreateLifecyclePolicy": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "CreateLifecyclePolicyRequest" + }, + "name": "CreateLifecyclePolicy", + "output": { + "shape": "CreateLifecyclePolicyResponse" + } + }, "CreateSecurityConfig": { "errors": [ { @@ -253,6 +323,34 @@ "shape": "DeleteCollectionResponse" } }, + "DeleteLifecyclePolicy": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "DeleteLifecyclePolicyRequest" + }, + "name": "DeleteLifecyclePolicy", + "output": { + "shape": "DeleteLifecyclePolicyResponse" + } + }, "DeleteSecurityConfig": { "errors": [ { @@ -490,6 +588,27 @@ "shape": "ListCollectionsResponse" } }, + "ListLifecyclePolicies": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListLifecyclePoliciesRequest" + }, + "name": "ListLifecyclePolicies", + "output": { + "shape": "ListLifecyclePoliciesResponse" + } + }, "ListSecurityConfigs": { "errors": [ { @@ -708,6 +827,37 @@ "shape": "UpdateCollectionResponse" } }, + "UpdateLifecyclePolicy": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "UpdateLifecyclePolicyRequest" + }, + "name": "UpdateLifecyclePolicy", + "output": { + "shape": "UpdateLifecyclePolicyResponse" + } + }, "UpdateSecurityConfig": { "errors": [ { @@ -895,6 +1045,50 @@ }, "type": "structure" }, + "BatchGetEffectiveLifecyclePolicyRequest": { + "members": { + "resourceIdentifiers": { + "shape": "LifecyclePolicyResourceIdentifiers" + } + }, + "required": [ + "resourceIdentifiers" + ], + "type": "structure" + }, + "BatchGetEffectiveLifecyclePolicyResponse": { + "members": { + "effectiveLifecyclePolicyDetails": { + "shape": "EffectiveLifecyclePolicyDetails" + }, + "effectiveLifecyclePolicyErrorDetails": { + "shape": "EffectiveLifecyclePolicyErrorDetails" + } + }, + "type": "structure" + }, + "BatchGetLifecyclePolicyRequest": { + "members": { + "identifiers": { + "shape": "LifecyclePolicyIdentifiers" + } + }, + "required": [ + "identifiers" + ], + "type": "structure" + }, + "BatchGetLifecyclePolicyResponse": { + "members": { + "lifecyclePolicyDetails": { + "shape": "LifecyclePolicyDetails" + }, + "lifecyclePolicyErrorDetails": { + "shape": "LifecyclePolicyErrorDetails" + } + }, + "type": "structure" + }, "BatchGetVpcEndpointRequest": { "members": { "ids": { @@ -917,6 +1111,10 @@ }, "type": "structure" }, + "Boolean": { + "box": true, + "type": "boolean" + }, "CapacityLimits": { "members": { "maxIndexingCapacityInOCU": { @@ -962,6 +1160,9 @@ "name": { "shape": "CollectionName" }, + "standbyReplicas": { + "shape": "StandbyReplicas" + }, "status": { "shape": "CollectionStatus" }, @@ -1156,6 +1357,9 @@ "name": { "shape": "CollectionName" }, + "standbyReplicas": { + "shape": "StandbyReplicas" + }, "status": { "shape": "CollectionStatus" }, @@ -1177,6 +1381,9 @@ "name": { "shape": "CollectionName" }, + "standbyReplicas": { + "shape": "StandbyReplicas" + }, "tags": { "shape": "Tags" }, @@ -1202,6 +1409,40 @@ }, "type": "structure" }, + "CreateLifecyclePolicyRequest": { + "members": { + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "description": { + "shape": "PolicyDescription" + }, + "name": { + "shape": "PolicyName" + }, + "policy": { + "shape": "PolicyDocument" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "required": [ + "name", + "policy", + "type" + ], + "type": "structure" + }, + "CreateLifecyclePolicyResponse": { + "members": { + "lifecyclePolicyDetail": { + "shape": "LifecyclePolicyDetail" + } + }, + "type": "structure" + }, "CreateSecurityConfigRequest": { "members": { "clientToken": { @@ -1377,6 +1618,29 @@ }, "type": "structure" }, + "DeleteLifecyclePolicyRequest": { + "members": { + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "name": { + "shape": "PolicyName" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "required": [ + "name", + "type" + ], + "type": "structure" + }, + "DeleteLifecyclePolicyResponse": { + "members": {}, + "type": "structure" + }, "DeleteSecurityConfigRequest": { "members": { "clientToken": { @@ -1456,6 +1720,58 @@ }, "type": "structure" }, + "EffectiveLifecyclePolicyDetail": { + "members": { + "noMinRetentionPeriod": { + "shape": "Boolean" + }, + "policyName": { + "shape": "PolicyName" + }, + "resource": { + "shape": "Resource" + }, + "resourceType": { + "shape": "ResourceType" + }, + "retentionPeriod": { + "shape": "String" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "type": "structure" + }, + "EffectiveLifecyclePolicyDetails": { + "member": { + "shape": "EffectiveLifecyclePolicyDetail" + }, + "type": "list" + }, + "EffectiveLifecyclePolicyErrorDetail": { + "members": { + "errorCode": { + "shape": "String" + }, + "errorMessage": { + "shape": "String" + }, + "resource": { + "shape": "Resource" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "type": "structure" + }, + "EffectiveLifecyclePolicyErrorDetails": { + "member": { + "shape": "EffectiveLifecyclePolicyErrorDetail" + }, + "type": "list" + }, "GetAccessPolicyRequest": { "members": { "name": { @@ -1500,6 +1816,9 @@ "AccessPolicyStats": { "shape": "AccessPolicyStats" }, + "LifecyclePolicyStats": { + "shape": "LifecyclePolicyStats" + }, "SecurityConfigStats": { "shape": "SecurityConfigStats" }, @@ -1569,6 +1888,150 @@ }, "type": "structure" }, + "LifecyclePolicyDetail": { + "members": { + "createdDate": { + "shape": "Long" + }, + "description": { + "shape": "PolicyDescription" + }, + "lastModifiedDate": { + "shape": "Long" + }, + "name": { + "shape": "PolicyName" + }, + "policyVersion": { + "shape": "PolicyVersion" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "type": "structure" + }, + "LifecyclePolicyDetails": { + "member": { + "shape": "LifecyclePolicyDetail" + }, + "type": "list" + }, + "LifecyclePolicyErrorDetail": { + "members": { + "errorCode": { + "shape": "String" + }, + "errorMessage": { + "shape": "String" + }, + "name": { + "shape": "PolicyName" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "type": "structure" + }, + "LifecyclePolicyErrorDetails": { + "member": { + "shape": "LifecyclePolicyErrorDetail" + }, + "type": "list" + }, + "LifecyclePolicyIdentifier": { + "members": { + "name": { + "shape": "PolicyName" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "required": [ + "name", + "type" + ], + "type": "structure" + }, + "LifecyclePolicyIdentifiers": { + "max": 40, + "member": { + "shape": "LifecyclePolicyIdentifier" + }, + "min": 1, + "type": "list" + }, + "LifecyclePolicyResourceIdentifier": { + "members": { + "resource": { + "shape": "ResourceName" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "required": [ + "resource", + "type" + ], + "type": "structure" + }, + "LifecyclePolicyResourceIdentifiers": { + "max": 100, + "member": { + "shape": "LifecyclePolicyResourceIdentifier" + }, + "min": 1, + "type": "list" + }, + "LifecyclePolicyStats": { + "members": { + "RetentionPolicyCount": { + "shape": "Long" + } + }, + "type": "structure" + }, + "LifecyclePolicySummaries": { + "member": { + "shape": "LifecyclePolicySummary" + }, + "type": "list" + }, + "LifecyclePolicySummary": { + "members": { + "createdDate": { + "shape": "Long" + }, + "description": { + "shape": "PolicyDescription" + }, + "lastModifiedDate": { + "shape": "Long" + }, + "name": { + "shape": "PolicyName" + }, + "policyVersion": { + "shape": "PolicyVersion" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "type": "structure" + }, + "LifecyclePolicyType": { + "enum": [ + "retention" + ], + "type": "string" + }, + "LifecycleResource": { + "type": "string" + }, "ListAccessPoliciesRequest": { "members": { "maxResults": { @@ -1645,6 +2108,51 @@ }, "type": "structure" }, + "ListLifecyclePoliciesRequest": { + "members": { + "maxResults": { + "shape": "ListLifecyclePoliciesRequestMaxResultsInteger" + }, + "nextToken": { + "shape": "String" + }, + "resources": { + "shape": "ListLifecyclePoliciesRequestResourcesList" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "required": [ + "type" + ], + "type": "structure" + }, + "ListLifecyclePoliciesRequestMaxResultsInteger": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "ListLifecyclePoliciesRequestResourcesList": { + "max": 1000, + "member": { + "shape": "LifecycleResource" + }, + "min": 1, + "type": "list" + }, + "ListLifecyclePoliciesResponse": { + "members": { + "lifecyclePolicySummaries": { + "shape": "LifecyclePolicySummaries" + }, + "nextToken": { + "shape": "String" + } + }, + "type": "structure" + }, "ListSecurityConfigsRequest": { "members": { "maxResults": { @@ -1816,6 +2324,10 @@ "Resource": { "type": "string" }, + "ResourceName": { + "pattern": "^index/[a-z][a-z0-9-]{3,32}/([a-z;0-9\u0026$%][+.~=\\-_a-z;0-9\u0026$%]*|\\*)$", + "type": "string" + }, "ResourceNotFoundException": { "exception": true, "members": { @@ -1825,6 +2337,12 @@ }, "type": "structure" }, + "ResourceType": { + "enum": [ + "index" + ], + "type": "string" + }, "SamlConfigOptions": { "members": { "groupAttribute": { @@ -2039,6 +2557,13 @@ ], "type": "structure" }, + "StandbyReplicas": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, "String": { "type": "string" }, @@ -2247,6 +2772,43 @@ } }, "type": "structure" + }, + "UpdateLifecyclePolicyRequest": { + "members": { + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "description": { + "shape": "PolicyDescription" + }, + "name": { + "shape": "PolicyName" + }, + "policy": { + "shape": "PolicyDocument" + }, + "policyVersion": { + "shape": "PolicyVersion" + }, + "type": { + "shape": "LifecyclePolicyType" + } + }, + "required": [ + "name", + "policyVersion", + "type" + ], + "type": "structure" + }, + "UpdateLifecyclePolicyResponse": { + "members": { + "lifecyclePolicyDetail": { + "shape": "LifecyclePolicyDetail" + } + }, + "type": "structure" }, "UpdateSecurityConfigRequest": { "members": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,14 +3,18 @@ "service": "

Use the Amazon OpenSearch Serverless API to create, configure, and manage OpenSearch Serverless collections and security policies.

OpenSearch Serverless is an on-demand, pre-provisioned serverless configuration for Amazon OpenSearch Service. OpenSearch Serverless removes the operational complexities of provisioning, configuring, and tuning your OpenSearch clusters. It enables you to easily search and analyze petabytes of data without having to worry about the underlying infrastructure and data management.

To learn more about OpenSearch Serverless, see What is Amazon OpenSearch Serverless?

", "operations": { "BatchGetCollection": "

Returns attributes for one or more collections, including the collection endpoint and the OpenSearch Dashboards endpoint. For more information, see Creating and managing Amazon OpenSearch Serverless collections.

", + "BatchGetEffectiveLifecyclePolicy": "

Returns a list of successful and failed retrievals for the OpenSearch Serverless indexes. For more information, see Viewing data lifecycle policies.

", + "BatchGetLifecyclePolicy": "

Returns one or more configured OpenSearch Serverless lifecycle policies. For more information, see Viewing data lifecycle policies.

", "BatchGetVpcEndpoint": "

Returns attributes for one or more VPC endpoints associated with the current account. For more information, see Access Amazon OpenSearch Serverless using an interface endpoint.

", "CreateAccessPolicy": "

Creates a data access policy for OpenSearch Serverless. Access policies limit access to collections and the resources within them, and allow a user to access that data irrespective of the access mechanism or network source. For more information, see Data access control for Amazon OpenSearch Serverless.

", "CreateCollection": "

Creates a new OpenSearch Serverless collection. For more information, see Creating and managing Amazon OpenSearch Serverless collections.

", + "CreateLifecyclePolicy": "

Creates a lifecyle policy to be applied to OpenSearch Serverless indexes. Lifecycle policies define the number of days or hours to retain the data on an OpenSearch Serverless index. For more information, see Creating data lifecycle policies.

", "CreateSecurityConfig": "

Specifies a security configuration for OpenSearch Serverless. For more information, see SAML authentication for Amazon OpenSearch Serverless.

", "CreateSecurityPolicy": "

Creates a security policy to be used by one or more OpenSearch Serverless collections. Security policies provide access to a collection and its OpenSearch Dashboards endpoint from public networks or specific VPC endpoints. They also allow you to secure a collection with a KMS encryption key. For more information, see Network access for Amazon OpenSearch Serverless and Encryption at rest for Amazon OpenSearch Serverless.

", "CreateVpcEndpoint": "

Creates an OpenSearch Serverless-managed interface VPC endpoint. For more information, see Access Amazon OpenSearch Serverless using an interface endpoint.

", "DeleteAccessPolicy": "

Deletes an OpenSearch Serverless access policy. For more information, see Data access control for Amazon OpenSearch Serverless.

", "DeleteCollection": "

Deletes an OpenSearch Serverless collection. For more information, see Creating and managing Amazon OpenSearch Serverless collections.

", + "DeleteLifecyclePolicy": "

Deletes an OpenSearch Serverless lifecycle policy. For more information, see Deleting data lifecycle policies.

", "DeleteSecurityConfig": "

Deletes a security configuration for OpenSearch Serverless. For more information, see SAML authentication for Amazon OpenSearch Serverless.

", "DeleteSecurityPolicy": "

Deletes an OpenSearch Serverless security policy.

", "DeleteVpcEndpoint": "

Deletes an OpenSearch Serverless-managed interface endpoint. For more information, see Access Amazon OpenSearch Serverless using an interface endpoint.

", @@ -21,6 +25,7 @@ "GetSecurityPolicy": "

Returns information about a configured OpenSearch Serverless security policy. For more information, see Network access for Amazon OpenSearch Serverless and Encryption at rest for Amazon OpenSearch Serverless.

", "ListAccessPolicies": "

Returns information about a list of OpenSearch Serverless access policies.

", "ListCollections": "

Lists all OpenSearch Serverless collections. For more information, see Creating and managing Amazon OpenSearch Serverless collections.

Make sure to include an empty request body {} if you don't include any collection filters in the request.

", + "ListLifecyclePolicies": "

Returns a list of OpenSearch Serverless lifecycle policies. For more information, see Viewing data lifecycle policies.

", "ListSecurityConfigs": "

Returns information about configured OpenSearch Serverless security configurations. For more information, see SAML authentication for Amazon OpenSearch Serverless.

", "ListSecurityPolicies": "

Returns information about configured OpenSearch Serverless security policies.

", "ListTagsForResource": "

Returns the tags for an OpenSearch Serverless resource. For more information, see Tagging Amazon OpenSearch Serverless collections.

", @@ -30,6 +35,7 @@ "UpdateAccessPolicy": "

Updates an OpenSearch Serverless access policy. For more information, see Data access control for Amazon OpenSearch Serverless.

", "UpdateAccountSettings": "

Update the OpenSearch Serverless settings for the current Amazon Web Services account. For more information, see Managing capacity limits for Amazon OpenSearch Serverless.

", "UpdateCollection": "

Updates an OpenSearch Serverless collection.

", + "UpdateLifecyclePolicy": "

Updates an OpenSearch Serverless access policy. For more information, see Updating data lifecycle policies.

", "UpdateSecurityConfig": "

Updates a security configuration for OpenSearch Serverless. For more information, see SAML authentication for Amazon OpenSearch Serverless.

", "UpdateSecurityPolicy": "

Updates an OpenSearch Serverless security policy. For more information, see Network access for Amazon OpenSearch Serverless and Encryption at rest for Amazon OpenSearch Serverless.

", "UpdateVpcEndpoint": "

Updates an OpenSearch Serverless-managed interface endpoint. For more information, see Access Amazon OpenSearch Serverless using an interface endpoint.

" @@ -65,10 +71,10 @@ "base": null, "refs": { "AccessPolicyDetail$type": "

The type of access policy.

", - "AccessPolicySummary$type": "

The type of access policy. Currently the only available type is data.

", + "AccessPolicySummary$type": "

The type of access policy. Currently, the only available type is data.

", "CreateAccessPolicyRequest$type": "

The type of policy.

", "DeleteAccessPolicyRequest$type": "

The type of policy.

", - "GetAccessPolicyRequest$type": "

Tye type of policy. Currently the only supported value is data.

", + "GetAccessPolicyRequest$type": "

Tye type of policy. Currently, the only supported value is data.

", "ListAccessPoliciesRequest$type": "

The type of access policy.

", "UpdateAccessPolicyRequest$type": "

The type of policy.

" } @@ -98,6 +104,26 @@ "refs": { } }, + "BatchGetEffectiveLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "BatchGetEffectiveLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, + "BatchGetLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "BatchGetLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "BatchGetVpcEndpointRequest": { "base": null, "refs": { @@ -108,6 +134,12 @@ "refs": { } }, + "Boolean": { + "base": null, + "refs": { + "EffectiveLifecyclePolicyDetail$noMinRetentionPeriod": "

The minimum number of index retention days set. That is an optional param that will return as true if the minimum number of days or hours is not set to a index resource.

" + } + }, "CapacityLimits": { "base": "

The maximum capacity limits for all OpenSearch Serverless collections, in OpenSearch Compute Units (OCUs). These limits are used to scale your collections based on the current workload. For more information, see Managing capacity limits for Amazon OpenSearch Serverless.

", "refs": { @@ -120,16 +152,19 @@ "refs": { "CreateAccessPolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "CreateCollectionRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", + "CreateLifecyclePolicyRequest$clientToken": "

A unique, case-sensitive identifier to ensure idempotency of the request.

", "CreateSecurityConfigRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "CreateSecurityPolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "CreateVpcEndpointRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "DeleteAccessPolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "DeleteCollectionRequest$clientToken": "

A unique, case-sensitive identifier to ensure idempotency of the request.

", + "DeleteLifecyclePolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "DeleteSecurityConfigRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "DeleteSecurityPolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "DeleteVpcEndpointRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "UpdateAccessPolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "UpdateCollectionRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", + "UpdateLifecyclePolicyRequest$clientToken": "

A unique, case-sensitive identifier to ensure idempotency of the request.

", "UpdateSecurityConfigRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "UpdateSecurityPolicyRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", "UpdateVpcEndpointRequest$clientToken": "

Unique, case-sensitive identifier to ensure idempotency of the request.

" @@ -160,9 +195,9 @@ } }, "CollectionFilters": { - "base": "

List of filter keys that you can use for LIST, UPDATE, and DELETE requests to OpenSearch Serverless collections.

", + "base": "

A list of filter keys that you can use for LIST, UPDATE, and DELETE requests to OpenSearch Serverless collections.

", "refs": { - "ListCollectionsRequest$collectionFilters": "

List of filter names and values that you can use for requests.

" + "ListCollectionsRequest$collectionFilters": "

A list of filter names and values that you can use for requests.

" } }, "CollectionId": { @@ -289,6 +324,16 @@ "refs": { } }, + "CreateLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "CreateLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "CreateSecurityConfigRequest": { "base": null, "refs": { @@ -351,6 +396,16 @@ "refs": { } }, + "DeleteLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteLifecyclePolicyResponse": { + "base": null, + "refs": { + } + }, "DeleteSecurityConfigRequest": { "base": null, "refs": { @@ -391,9 +446,34 @@ "base": null, "refs": { "AccessPolicyDetail$policy": "

The JSON policy document without any whitespaces.

", + "LifecyclePolicyDetail$policy": "

The JSON policy document without any whitespaces.

", "SecurityPolicyDetail$policy": "

The JSON policy document without any whitespaces.

" } }, + "EffectiveLifecyclePolicyDetail": { + "base": "

Error information for an OpenSearch Serverless request.

", + "refs": { + "EffectiveLifecyclePolicyDetails$member": null + } + }, + "EffectiveLifecyclePolicyDetails": { + "base": null, + "refs": { + "BatchGetEffectiveLifecyclePolicyResponse$effectiveLifecyclePolicyDetails": "

A list of lifecycle policies applied to the OpenSearch Serverless indexes.

" + } + }, + "EffectiveLifecyclePolicyErrorDetail": { + "base": "

Error information for an OpenSearch Serverless request.

", + "refs": { + "EffectiveLifecyclePolicyErrorDetails$member": null + } + }, + "EffectiveLifecyclePolicyErrorDetails": { + "base": null, + "refs": { + "BatchGetEffectiveLifecyclePolicyResponse$effectiveLifecyclePolicyErrorDetails": "

A list of resources for which retrieval failed.

" + } + }, "GetAccessPolicyRequest": { "base": null, "refs": { @@ -455,6 +535,96 @@ "refs": { } }, + "LifecyclePolicyDetail": { + "base": "

Details about an OpenSearch Serverless lifecycle policy.

", + "refs": { + "CreateLifecyclePolicyResponse$lifecyclePolicyDetail": "

Details about the created lifecycle policy.

", + "LifecyclePolicyDetails$member": null, + "UpdateLifecyclePolicyResponse$lifecyclePolicyDetail": "

Details about the updated lifecycle policy.

" + } + }, + "LifecyclePolicyDetails": { + "base": null, + "refs": { + "BatchGetLifecyclePolicyResponse$lifecyclePolicyDetails": "

A list of lifecycle policies matched to the input policy name and policy type.

" + } + }, + "LifecyclePolicyErrorDetail": { + "base": "

Error information for an OpenSearch Serverless request.

", + "refs": { + "LifecyclePolicyErrorDetails$member": null + } + }, + "LifecyclePolicyErrorDetails": { + "base": null, + "refs": { + "BatchGetLifecyclePolicyResponse$lifecyclePolicyErrorDetails": "

A list of lifecycle policy names and policy types for which retrieval failed.

" + } + }, + "LifecyclePolicyIdentifier": { + "base": "

The unique identifiers of policy types and policy names.

", + "refs": { + "LifecyclePolicyIdentifiers$member": null + } + }, + "LifecyclePolicyIdentifiers": { + "base": null, + "refs": { + "BatchGetLifecyclePolicyRequest$identifiers": "

The unique identifiers of policy types and policy names.

" + } + }, + "LifecyclePolicyResourceIdentifier": { + "base": "

The unique identifiers of policy types and resource names.

", + "refs": { + "LifecyclePolicyResourceIdentifiers$member": null + } + }, + "LifecyclePolicyResourceIdentifiers": { + "base": null, + "refs": { + "BatchGetEffectiveLifecyclePolicyRequest$resourceIdentifiers": "

The unique identifiers of policy types and resource names.

" + } + }, + "LifecyclePolicyStats": { + "base": "

Statistics for an OpenSearch Serverless lifecycle policy.

", + "refs": { + "GetPoliciesStatsResponse$LifecyclePolicyStats": "

Information about the lifecycle policies in your account.

" + } + }, + "LifecyclePolicySummaries": { + "base": null, + "refs": { + "ListLifecyclePoliciesResponse$lifecyclePolicySummaries": "

Details about the requested lifecycle policies.

" + } + }, + "LifecyclePolicySummary": { + "base": "

A summary of the lifecycle policy.

", + "refs": { + "LifecyclePolicySummaries$member": null + } + }, + "LifecyclePolicyType": { + "base": null, + "refs": { + "CreateLifecyclePolicyRequest$type": "

The type of lifecycle policy.

", + "DeleteLifecyclePolicyRequest$type": "

The type of lifecycle policy.

", + "EffectiveLifecyclePolicyDetail$type": "

The type of lifecycle policy.

", + "EffectiveLifecyclePolicyErrorDetail$type": "

The type of lifecycle policy.

", + "LifecyclePolicyDetail$type": "

The type of lifecycle policy.

", + "LifecyclePolicyErrorDetail$type": "

The type of lifecycle policy.

", + "LifecyclePolicyIdentifier$type": "

The type of lifecycle policy.

", + "LifecyclePolicyResourceIdentifier$type": "

The type of lifecycle policy.

", + "LifecyclePolicySummary$type": "

The type of lifecycle policy.

", + "ListLifecyclePoliciesRequest$type": "

The type of lifecycle policy.

", + "UpdateLifecyclePolicyRequest$type": "

The type of lifecycle policy.

" + } + }, + "LifecycleResource": { + "base": null, + "refs": { + "ListLifecyclePoliciesRequestResourcesList$member": null + } + }, "ListAccessPoliciesRequest": { "base": null, "refs": { @@ -493,6 +663,28 @@ "refs": { } }, + "ListLifecyclePoliciesRequest": { + "base": null, + "refs": { + } + }, + "ListLifecyclePoliciesRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListLifecyclePoliciesRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use use nextToken to get the next page of results. The default is 10.

" + } + }, + "ListLifecyclePoliciesRequestResourcesList": { + "base": null, + "refs": { + "ListLifecyclePoliciesRequest$resources": "

Resource filters that policies can apply to. Currently, the only supported resource type is index.

" + } + }, + "ListLifecyclePoliciesResponse": { + "base": null, + "refs": { + } + }, "ListSecurityConfigsRequest": { "base": null, "refs": { @@ -570,6 +762,11 @@ "CreateCollectionDetail$createdDate": "

The Epoch time when the collection was created.

", "CreateCollectionDetail$lastModifiedDate": "

The date and time when the collection was last modified.

", "GetPoliciesStatsResponse$TotalPolicyCount": "

The total number of OpenSearch Serverless security policies and configurations in your account.

", + "LifecyclePolicyDetail$createdDate": "

The date the lifecycle policy was created.

", + "LifecyclePolicyDetail$lastModifiedDate": "

The timestamp of when the lifecycle policy was last modified.

", + "LifecyclePolicyStats$RetentionPolicyCount": "

The number of retention lifecycle policies in the current account.

", + "LifecyclePolicySummary$createdDate": "

The Epoch time when the lifecycle policy was created.

", + "LifecyclePolicySummary$lastModifiedDate": "

The date and time when the lifecycle policy was last modified.

", "SecurityConfigDetail$createdDate": "

The date the configuration was created.

", "SecurityConfigDetail$lastModifiedDate": "

The timestamp of when the configuration was last modified.

", "SecurityConfigStats$SamlConfigCount": "

The number of security configurations in the current account.

", @@ -598,10 +795,14 @@ "AccessPolicyDetail$description": "

The description of the policy.

", "AccessPolicySummary$description": "

The description of the access policy.

", "CreateAccessPolicyRequest$description": "

A description of the policy. Typically used to store information about the permissions defined in the policy.

", + "CreateLifecyclePolicyRequest$description": "

A description of the lifecycle policy.

", "CreateSecurityPolicyRequest$description": "

A description of the policy. Typically used to store information about the permissions defined in the policy.

", + "LifecyclePolicyDetail$description": "

The description of the lifecycle policy.

", + "LifecyclePolicySummary$description": "

The description of the lifecycle policy.

", "SecurityPolicyDetail$description": "

The description of the security policy.

", "SecurityPolicySummary$description": "

The description of the security policy.

", "UpdateAccessPolicyRequest$description": "

A description of the policy. Typically used to store information about the permissions defined in the policy.

", + "UpdateLifecyclePolicyRequest$description": "

A description of the lifecycle policy.

", "UpdateSecurityPolicyRequest$description": "

A description of the policy. Typically used to store information about the permissions defined in the policy.

" } }, @@ -609,8 +810,10 @@ "base": null, "refs": { "CreateAccessPolicyRequest$policy": "

The JSON policy document to use as the content for the policy.

", + "CreateLifecyclePolicyRequest$policy": "

The JSON policy document to use as the content for the lifecycle policy.

", "CreateSecurityPolicyRequest$policy": "

The JSON policy document to use as the content for the new policy.

", "UpdateAccessPolicyRequest$policy": "

The JSON policy document to use as the content for the policy.

", + "UpdateLifecyclePolicyRequest$policy": "

The JSON policy document to use as the content for the lifecycle policy.

", "UpdateSecurityPolicyRequest$policy": "

The JSON policy document to use as the content for the new policy.

" } }, @@ -620,14 +823,22 @@ "AccessPolicyDetail$name": "

The name of the policy.

", "AccessPolicySummary$name": "

The name of the access policy.

", "CreateAccessPolicyRequest$name": "

The name of the policy.

", + "CreateLifecyclePolicyRequest$name": "

The name of the lifecycle policy.

", "CreateSecurityPolicyRequest$name": "

The name of the policy.

", "DeleteAccessPolicyRequest$name": "

The name of the policy to delete.

", + "DeleteLifecyclePolicyRequest$name": "

The name of the policy to delete.

", "DeleteSecurityPolicyRequest$name": "

The name of the policy to delete.

", + "EffectiveLifecyclePolicyDetail$policyName": "

The name of the lifecycle policy.

", "GetAccessPolicyRequest$name": "

The name of the access policy.

", "GetSecurityPolicyRequest$name": "

The name of the security policy.

", + "LifecyclePolicyDetail$name": "

The name of the lifecycle policy.

", + "LifecyclePolicyErrorDetail$name": "

The name of the lifecycle policy.

", + "LifecyclePolicyIdentifier$name": "

The name of the lifecycle policy.

", + "LifecyclePolicySummary$name": "

The name of the lifecycle policy.

", "SecurityPolicyDetail$name": "

The name of the policy.

", "SecurityPolicySummary$name": "

The name of the policy.

", "UpdateAccessPolicyRequest$name": "

The name of the policy.

", + "UpdateLifecyclePolicyRequest$name": "

The name of the policy.

", "UpdateSecurityPolicyRequest$name": "

The name of the policy.

" } }, @@ -636,11 +847,14 @@ "refs": { "AccessPolicyDetail$policyVersion": "

The version of the policy.

", "AccessPolicySummary$policyVersion": "

The version of the policy.

", + "LifecyclePolicyDetail$policyVersion": "

The version of the lifecycle policy.

", + "LifecyclePolicySummary$policyVersion": "

The version of the lifecycle policy.

", "SecurityConfigDetail$configVersion": "

The version of the security configuration.

", "SecurityConfigSummary$configVersion": "

The version of the security configuration.

", "SecurityPolicyDetail$policyVersion": "

The version of the policy.

", "SecurityPolicySummary$policyVersion": "

The version of the policy.

", "UpdateAccessPolicyRequest$policyVersion": "

The version of the policy being updated.

", + "UpdateLifecyclePolicyRequest$policyVersion": "

The version of the policy being updated.

", "UpdateSecurityConfigRequest$configVersion": "

The version of the security configuration to be updated. You can find the most recent version of a security configuration using the GetSecurityPolicy command.

", "UpdateSecurityPolicyRequest$policyVersion": "

The version of the policy being updated.

" } @@ -648,15 +862,29 @@ "Resource": { "base": null, "refs": { + "EffectiveLifecyclePolicyDetail$resource": "

The name of the OpenSearch Serverless index resource.

", + "EffectiveLifecyclePolicyErrorDetail$resource": "

The name of OpenSearch Serverless index resource.

", "ListAccessPoliciesRequestResourceList$member": null, "ListSecurityPoliciesRequestResourceList$member": null } }, + "ResourceName": { + "base": null, + "refs": { + "LifecyclePolicyResourceIdentifier$resource": "

The name of the OpenSearch Serverless ilndex resource.

" + } + }, "ResourceNotFoundException": { "base": "

Thrown when accessing or deleting a resource that does not exist.

", "refs": { } }, + "ResourceType": { + "base": null, + "refs": { + "EffectiveLifecyclePolicyDetail$resourceType": "

The type of OpenSearch Serverless resource. Currently, the only supported resource is index.

" + } + }, "SamlConfigOptions": { "base": "

Describes SAML options for an OpenSearch Serverless security configuration in the form of a key-value map.

", "refs": { @@ -781,6 +1009,14 @@ "refs": { } }, + "StandbyReplicas": { + "base": null, + "refs": { + "CollectionDetail$standbyReplicas": "

Details about an OpenSearch Serverless collection.

", + "CreateCollectionDetail$standbyReplicas": "

Creates details about an OpenSearch Serverless collection.

", + "CreateCollectionRequest$standbyReplicas": "

Indicates whether standby replicas should be used for a collection.

" + } + }, "String": { "base": null, "refs": { @@ -796,11 +1032,18 @@ "CreateCollectionDetail$arn": "

The Amazon Resource Name (ARN) of the collection.

", "CreateCollectionDetail$description": "

A description of the collection.

", "CreateCollectionDetail$kmsKeyArn": "

The Amazon Resource Name (ARN) of the KMS key with which to encrypt the collection.

", + "EffectiveLifecyclePolicyDetail$retentionPeriod": "

The minimum number of index retention in days or hours. This is an optional parameter that will return only if it’s set.

", + "EffectiveLifecyclePolicyErrorDetail$errorCode": "

The error code for the request.

", + "EffectiveLifecyclePolicyErrorDetail$errorMessage": "

A description of the error. For example, The specified Index resource is not found.

", "InternalServerException$message": null, + "LifecyclePolicyErrorDetail$errorCode": "

The error code for the request. For example, NOT_FOUND.

", + "LifecyclePolicyErrorDetail$errorMessage": "

A description of the error. For example, The specified Lifecycle Policy is not found.

", "ListAccessPoliciesRequest$nextToken": "

If your initial ListAccessPolicies operation returns a nextToken, you can include the returned nextToken in subsequent ListAccessPolicies operations, which returns results in the next page.

", "ListAccessPoliciesResponse$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.

", "ListCollectionsRequest$nextToken": "

If your initial ListCollections operation returns a nextToken, you can include the returned nextToken in subsequent ListCollections operations, which returns results in the next page.

", "ListCollectionsResponse$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.

", + "ListLifecyclePoliciesRequest$nextToken": "

If your initial ListLifecyclePolicies operation returns a nextToken, you can include the returned nextToken in subsequent ListLifecyclePolicies operations, which returns results in the next page.

", + "ListLifecyclePoliciesResponse$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.

", "ListSecurityConfigsRequest$nextToken": "

If your initial ListSecurityConfigs operation returns a nextToken, you can include the returned nextToken in subsequent ListSecurityConfigs operations, which returns results in the next page.

", "ListSecurityConfigsResponse$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.

", "ListSecurityPoliciesRequest$nextToken": "

If your initial ListSecurityPolicies operation returns a nextToken, you can include the returned nextToken in subsequent ListSecurityPolicies operations, which returns results in the next page.

", @@ -931,6 +1174,16 @@ "base": null, "refs": { } + }, + "UpdateLifecyclePolicyRequest": { + "base": null, + "refs": { + } + }, + "UpdateLifecyclePolicyResponse": { + "base": null, + "refs": { + } }, "UpdateSecurityConfigRequest": { "base": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,55 +1,55 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://aoss-fips.us-gov-east-1.api.aws" + "url": "https://aoss-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://aoss-fips.us-gov-east-1.amazonaws.com" + "url": "https://aoss-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://aoss.us-gov-east-1.api.aws" + "url": "https://aoss.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://aoss.us-gov-east-1.amazonaws.com" + "url": "https://aoss.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -99,109 +99,109 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://aoss-fips.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://aoss-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://aoss-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://aoss.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://aoss.us-iso-east-1.c2s.ic.gov" + "url": "https://aoss.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://aoss-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://aoss-fips.us-east-1.amazonaws.com" + "url": "https://aoss-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://aoss.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://aoss.us-east-1.amazonaws.com" + "url": "https://aoss.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -247,22 +247,35 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,11 +297,28 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + }, + { + "documentation": "Partition doesn't support DualStack", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/opensearchserverless/2021-11-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/opensearchserverless/2021-11-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,6 +10,11 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListLifecyclePolicies": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListSecurityConfigs": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -23,7 +23,8 @@ {"shape":"ValidationException"}, {"shape":"InternalException"}, {"shape":"AccessDeniedException"}, - {"shape":"ResourceAlreadyExistsException"} + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ResourceNotFoundException"} ] }, "DeletePipeline":{ @@ -235,6 +236,13 @@ "exception":true }, "Boolean":{"type":"boolean"}, + "BufferOptions":{ + "type":"structure", + "required":["PersistentBufferEnabled"], + "members":{ + "PersistentBufferEnabled":{"shape":"Boolean"} + } + }, "ChangeProgressStage":{ "type":"structure", "members":{ @@ -308,6 +316,8 @@ "PipelineConfigurationBody":{"shape":"PipelineConfigurationBody"}, "LogPublishingOptions":{"shape":"LogPublishingOptions"}, "VpcOptions":{"shape":"VpcOptions"}, + "BufferOptions":{"shape":"BufferOptions"}, + "EncryptionAtRestOptions":{"shape":"EncryptionAtRestOptions"}, "Tags":{"shape":"TagList"} } }, @@ -333,6 +343,13 @@ "members":{ } }, + "EncryptionAtRestOptions":{ + "type":"structure", + "required":["KmsKeyArn"], + "members":{ + "KmsKeyArn":{"shape":"KmsKeyArn"} + } + }, "GetPipelineBlueprintRequest":{ "type":"structure", "required":["BlueprintName"], @@ -403,6 +420,11 @@ "error":{"httpStatusCode":400}, "exception":true }, + "KmsKeyArn":{ + "type":"string", + "max":2048, + "min":7 + }, "LimitExceededException":{ "type":"structure", "members":{ @@ -498,7 +520,11 @@ "LastUpdatedAt":{"shape":"Timestamp"}, "IngestEndpointUrls":{"shape":"IngestEndpointUrlsList"}, "LogPublishingOptions":{"shape":"LogPublishingOptions"}, - "VpcEndpoints":{"shape":"VpcEndpointsList"} + "VpcEndpoints":{"shape":"VpcEndpointsList"}, + "BufferOptions":{"shape":"BufferOptions"}, + "EncryptionAtRestOptions":{"shape":"EncryptionAtRestOptions"}, + "ServiceVpcEndpoints":{"shape":"ServiceVpcEndpointsList"}, + "Tags":{"shape":"TagList"} } }, "PipelineArn":{ @@ -566,7 +592,8 @@ "MinUnits":{"shape":"PipelineUnits"}, "MaxUnits":{"shape":"PipelineUnits"}, "CreatedAt":{"shape":"Timestamp"}, - "LastUpdatedAt":{"shape":"Timestamp"} + "LastUpdatedAt":{"shape":"Timestamp"}, + "Tags":{"shape":"TagList"} } }, "PipelineSummaryList":{ @@ -575,7 +602,6 @@ }, "PipelineUnits":{ "type":"integer", - "max":96, "min":1 }, "ResourceAlreadyExistsException":{ @@ -604,6 +630,17 @@ "max":12, "min":1 }, + "ServiceVpcEndpoint":{ + "type":"structure", + "members":{ + "ServiceName":{"shape":"VpcEndpointServiceName"}, + "VpcEndpointId":{"shape":"String"} + } + }, + "ServiceVpcEndpointsList":{ + "type":"list", + "member":{"shape":"ServiceVpcEndpoint"} + }, "StartPipelineRequest":{ "type":"structure", "required":["PipelineName"], @@ -735,7 +772,9 @@ "MinUnits":{"shape":"PipelineUnits"}, "MaxUnits":{"shape":"PipelineUnits"}, "PipelineConfigurationBody":{"shape":"PipelineConfigurationBody"}, - "LogPublishingOptions":{"shape":"LogPublishingOptions"} + "LogPublishingOptions":{"shape":"LogPublishingOptions"}, + "BufferOptions":{"shape":"BufferOptions"}, + "EncryptionAtRestOptions":{"shape":"EncryptionAtRestOptions"} } }, "UpdatePipelineResponse":{ @@ -783,6 +822,10 @@ "VpcOptions":{"shape":"VpcOptions"} } }, + "VpcEndpointServiceName":{ + "type":"string", + "enum":["OPENSEARCH_SERVERLESS"] + }, "VpcEndpointsList":{ "type":"list", "member":{"shape":"VpcEndpoint"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -26,10 +26,19 @@ "Boolean": { "base": null, "refs": { + "BufferOptions$PersistentBufferEnabled": "

Whether persistent buffering should be enabled.

", "LogPublishingOptions$IsLoggingEnabled": "

Whether logs should be published.

", "ValidatePipelineResponse$isValid": "

A boolean indicating whether or not the pipeline configuration is valid.

" } }, + "BufferOptions": { + "base": "

Options that specify the configuration of a persistent buffer. To configure how OpenSearch Ingestion encrypts this data, set the EncryptionAtRestOptions.

", + "refs": { + "CreatePipelineRequest$BufferOptions": "

Key-value pairs to configure persistent buffering for the pipeline.

", + "Pipeline$BufferOptions": null, + "UpdatePipelineRequest$BufferOptions": "

Key-value pairs to configure persistent buffering for the pipeline.

" + } + }, "ChangeProgressStage": { "base": "

Progress details for a specific stage of a pipeline configuration change.

", "refs": { @@ -97,6 +106,14 @@ "refs": { } }, + "EncryptionAtRestOptions": { + "base": "

Options to control how OpenSearch encrypts all data-at-rest.

", + "refs": { + "CreatePipelineRequest$EncryptionAtRestOptions": "

Key-value pairs to configure encryption for data that is written to a persistent buffer.

", + "Pipeline$EncryptionAtRestOptions": null, + "UpdatePipelineRequest$EncryptionAtRestOptions": "

Key-value pairs to configure encryption for data that is written to a persistent buffer.

" + } + }, "GetPipelineBlueprintRequest": { "base": null, "refs": { @@ -151,6 +168,12 @@ "refs": { } }, + "KmsKeyArn": { + "base": null, + "refs": { + "EncryptionAtRestOptions$KmsKeyArn": "

The ARN of the KMS key used to encrypt data-at-rest in OpenSearch Ingestion. By default, data is encrypted using an AWS owned key.

" + } + }, "LimitExceededException": { "base": "

You attempted to create more than the allowed number of tags.

", "refs": { @@ -330,6 +353,18 @@ "VpcOptions$SecurityGroupIds": "

A list of security groups associated with the VPC endpoint.

" } }, + "ServiceVpcEndpoint": { + "base": "

A container for information about VPC endpoints that were created to other services

", + "refs": { + "ServiceVpcEndpointsList$member": null + } + }, + "ServiceVpcEndpointsList": { + "base": null, + "refs": { + "Pipeline$ServiceVpcEndpoints": "

A list of VPC endpoints that OpenSearch Ingestion has created to other AWS services.

" + } + }, "StartPipelineRequest": { "base": null, "refs": { @@ -364,6 +399,7 @@ "PipelineBlueprint$PipelineConfigurationBody": "

The YAML configuration of the blueprint.

", "PipelineBlueprintSummary$BlueprintName": "

The name of the blueprint.

", "PipelineStatusReason$Description": "

A description of why a pipeline has a certain status.

", + "ServiceVpcEndpoint$VpcEndpointId": "

The ID of the VPC endpoint that was created.

", "StringList$member": null, "ValidationMessage$Message": "

The validation message.

", "VpcEndpoint$VpcEndpointId": "

The unique identifier of the endpoint.

", @@ -405,6 +441,8 @@ "refs": { "CreatePipelineRequest$Tags": "

List of tags to add to the pipeline upon creation.

", "ListTagsForResourceResponse$Tags": "

A list of tags associated with the given pipeline.

", + "Pipeline$Tags": "

A list of tags associated with the given pipeline.

", + "PipelineSummary$Tags": "

A list of tags associated with the given pipeline.

", "TagResourceRequest$Tags": "

The list of key-value tags to add to the pipeline.

" } }, @@ -488,6 +526,12 @@ "VpcEndpointsList$member": null } }, + "VpcEndpointServiceName": { + "base": null, + "refs": { + "ServiceVpcEndpoint$ServiceName": "

The name of the service for which a VPC endpoint was created.

" + } + }, "VpcEndpointsList": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/osis/2022-01-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/osis/2022-01-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,55 +1,55 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://osis-fips.us-gov-east-1.api.aws" + "url": "https://osis-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://osis-fips.us-gov-east-1.amazonaws.com" + "url": "https://osis-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://osis.us-gov-east-1.api.aws" + "url": "https://osis.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://osis.us-gov-east-1.amazonaws.com" + "url": "https://osis.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -99,109 +99,109 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://osis-fips.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://osis-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://osis-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://osis.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://osis.us-iso-east-1.c2s.ic.gov" + "url": "https://osis.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://osis-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://osis-fips.us-east-1.amazonaws.com" + "url": "https://osis-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://osis.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://osis.us-east-1.amazonaws.com" + "url": "https://osis.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -247,22 +247,35 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -30,7 +30,8 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, {"shape":"InternalServerException"} - ] + ], + "idempotent":true }, "CreateKey":{ "name":"CreateKey", @@ -67,7 +68,8 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, {"shape":"InternalServerException"} - ] + ], + "idempotent":true }, "DeleteKey":{ "name":"DeleteKey", @@ -85,7 +87,8 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, {"shape":"InternalServerException"} - ] + ], + "idempotent":true }, "ExportKey":{ "name":"ExportKey", @@ -490,6 +493,20 @@ "Key":{"shape":"Key"} } }, + "ExportAttributes":{ + "type":"structure", + "members":{ + "ExportDukptInitialKey":{"shape":"ExportDukptInitialKey"}, + "KeyCheckValueAlgorithm":{"shape":"KeyCheckValueAlgorithm"} + } + }, + "ExportDukptInitialKey":{ + "type":"structure", + "required":["KeySerialNumber"], + "members":{ + "KeySerialNumber":{"shape":"HexLength20Or24"} + } + }, "ExportKeyInput":{ "type":"structure", "required":[ @@ -497,6 +514,7 @@ "KeyMaterial" ], "members":{ + "ExportAttributes":{"shape":"ExportAttributes"}, "ExportKeyIdentifier":{"shape":"KeyArnOrKeyAliasType"}, "KeyMaterial":{"shape":"ExportKeyMaterial"} } @@ -650,6 +668,12 @@ "min":16, "pattern":"^[0-9A-F]+$" }, + "HexLength20Or24":{ + "type":"string", + "max":24, + "min":20, + "pattern":"^[0-9A-F]{20}$|^[0-9A-F]{24}$" + }, "ImportKeyInput":{ "type":"structure", "required":["KeyMaterial"], @@ -1175,6 +1199,8 @@ "WrappingKeyArn" ], "members":{ + "KeyCheckValue":{"shape":"KeyCheckValue"}, + "KeyCheckValueAlgorithm":{"shape":"KeyCheckValueAlgorithm"}, "KeyMaterial":{"shape":"KeyMaterial"}, "WrappedKeyMaterialFormat":{"shape":"WrappedKeyMaterialFormat"}, "WrappingKeyArn":{"shape":"KeyArn"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,18 +1,18 @@ { "version": "2.0", - "service": "

You use the Amazon Web Services Payment Cryptography Control Plane to manage the encryption keys you use for payment-related cryptographic operations. You can create, import, export, share, manage, and delete keys. You can also manage Identity and Access Management (IAM) policies for keys. For more information, see Identity and access management in the Amazon Web Services Payment Cryptography User Guide.

To use encryption keys for payment-related transaction processing and associated cryptographic operations, you use the Amazon Web Services Payment Cryptography Data Plane. You can encrypt, decrypt, generate, verify, and translate payment-related cryptographic operations.

All Amazon Web Services Payment Cryptography API calls must be signed and transmitted using Transport Layer Security (TLS). We recommend you always use the latest supported TLS version for logging API requests.

Amazon Web Services Payment Cryptography supports CloudTrail, a service that logs Amazon Web Services API calls and related events for your Amazon Web Services account and delivers them to an Amazon S3 bucket that you specify. By using the information collected by CloudTrail, you can determine what requests were made to Amazon Web Services Payment Cryptography, who made the request, when it was made, and so on. If you don't configure a trail, you can still view the most recent events in the CloudTrail console. For more information, see the CloudTrail User Guide.

", + "service": "

Amazon Web Services Payment Cryptography Control Plane APIs manage encryption keys for use during payment-related cryptographic operations. You can create, import, export, share, manage, and delete keys. You can also manage Identity and Access Management (IAM) policies for keys. For more information, see Identity and access management in the Amazon Web Services Payment Cryptography User Guide.

To use encryption keys for payment-related transaction processing and associated cryptographic operations, you use the Amazon Web Services Payment Cryptography Data Plane. You can perform actions like encrypt, decrypt, generate, and verify payment-related data.

All Amazon Web Services Payment Cryptography API calls must be signed and transmitted using Transport Layer Security (TLS). We recommend you always use the latest supported TLS version for logging API requests.

Amazon Web Services Payment Cryptography supports CloudTrail for control plane operations, a service that logs Amazon Web Services API calls and related events for your Amazon Web Services account and delivers them to an Amazon S3 bucket you specify. By using the information collected by CloudTrail, you can determine what requests were made to Amazon Web Services Payment Cryptography, who made the request, when it was made, and so on. If you don't configure a trail, you can still view the most recent events in the CloudTrail console. For more information, see the CloudTrail User Guide.

", "operations": { "CreateAlias": "

Creates an alias, or a friendly name, for an Amazon Web Services Payment Cryptography key. You can use an alias to identify a key in the console and when you call cryptographic operations such as EncryptData or DecryptData.

You can associate the alias with any key in the same Amazon Web Services Region. Each alias is associated with only one key at a time, but a key can have multiple aliases. You can't create an alias without a key. The alias must be unique in the account and Amazon Web Services Region, but you can create another alias with the same name in a different Amazon Web Services Region.

To change the key that's associated with the alias, call UpdateAlias. To delete the alias, call DeleteAlias. These operations don't affect the underlying key. To get the alias that you created, call ListAliases.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", - "CreateKey": "

Creates an Amazon Web Services Payment Cryptography key, a logical representation of a cryptographic key, that is unique in your account and Amazon Web Services Region. You use keys for cryptographic functions such as encryption and decryption.

In addition to the key material used in cryptographic operations, an Amazon Web Services Payment Cryptography key includes metadata such as the key ARN, key usage, key origin, creation date, description, and key state.

When you create a key, you specify both immutable and mutable data about the key. The immutable data contains key attributes that defines the scope and cryptographic operations that you can perform using the key, for example key class (example: SYMMETRIC_KEY), key algorithm (example: TDES_2KEY), key usage (example: TR31_P0_PIN_ENCRYPTION_KEY) and key modes of use (example: Encrypt). For information about valid combinations of key attributes, see Understanding key attributes in the Amazon Web Services Payment Cryptography User Guide. The mutable data contained within a key includes usage timestamp and key deletion timestamp and can be modified after creation.

Amazon Web Services Payment Cryptography binds key attributes to keys using key blocks when you store or export them. Amazon Web Services Payment Cryptography stores the key contents wrapped and never stores or transmits them in the clear.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", + "CreateKey": "

Creates an Amazon Web Services Payment Cryptography key, a logical representation of a cryptographic key, that is unique in your account and Amazon Web Services Region. You use keys for cryptographic functions such as encryption and decryption.

In addition to the key material used in cryptographic operations, an Amazon Web Services Payment Cryptography key includes metadata such as the key ARN, key usage, key origin, creation date, description, and key state.

When you create a key, you specify both immutable and mutable data about the key. The immutable data contains key attributes that define the scope and cryptographic operations that you can perform using the key, for example key class (example: SYMMETRIC_KEY), key algorithm (example: TDES_2KEY), key usage (example: TR31_P0_PIN_ENCRYPTION_KEY) and key modes of use (example: Encrypt). For information about valid combinations of key attributes, see Understanding key attributes in the Amazon Web Services Payment Cryptography User Guide. The mutable data contained within a key includes usage timestamp and key deletion timestamp and can be modified after creation.

Amazon Web Services Payment Cryptography binds key attributes to keys using key blocks when you store or export them. Amazon Web Services Payment Cryptography stores the key contents wrapped and never stores or transmits them in the clear.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "DeleteAlias": "

Deletes the alias, but doesn't affect the underlying key.

Each key can have multiple aliases. To get the aliases of all keys, use the ListAliases operation. To change the alias of a key, first use DeleteAlias to delete the current alias and then use CreateAlias to create a new alias. To associate an existing alias with a different key, call UpdateAlias.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", - "DeleteKey": "

Deletes the key material and all metadata associated with Amazon Web Services Payment Cryptography key.

Key deletion is irreversible. After a key is deleted, you can't perform cryptographic operations using the key. For example, you can't decrypt data that was encrypted by a deleted Amazon Web Services Payment Cryptography key, and the data may become unrecoverable. Because key deletion is destructive, Amazon Web Services Payment Cryptography has a safety mechanism to prevent accidental deletion of a key. When you call this operation, Amazon Web Services Payment Cryptography disables the specified key but doesn't delete it until after a waiting period. The default waiting period is 7 days. To set a different waiting period, set DeleteKeyInDays. During the waiting period, the KeyState is DELETE_PENDING. After the key is deleted, the KeyState is DELETE_COMPLETE.

If you delete key material, you can use ImportKey to reimport the same key material into the Amazon Web Services Payment Cryptography key.

You should delete a key only when you are sure that you don't need to use it anymore and no other parties are utilizing this key. If you aren't sure, consider deactivating it instead by calling StopKeyUsage.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", - "ExportKey": "

Exports a key from Amazon Web Services Payment Cryptography using either ANSI X9 TR-34 or TR-31 key export standard.

Amazon Web Services Payment Cryptography simplifies main or root key exchange process by eliminating the need of a paper-based key exchange process. It takes a modern and secure approach based of the ANSI X9 TR-34 key exchange standard.

You can use ExportKey to export main or root keys such as KEK (Key Encryption Key), using asymmetric key exchange technique following ANSI X9 TR-34 standard. The ANSI X9 TR-34 standard uses asymmetric keys to establishes bi-directional trust between the two parties exchanging keys. After which you can export working keys using the ANSI X9 TR-31 symmetric key exchange standard as mandated by PCI PIN. Using this operation, you can share your Amazon Web Services Payment Cryptography generated keys with other service partners to perform cryptographic operations outside of Amazon Web Services Payment Cryptography

TR-34 key export

Amazon Web Services Payment Cryptography uses TR-34 asymmetric key exchange standard to export main keys such as KEK. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Host (KRH). In key export process, KDH is Amazon Web Services Payment Cryptography which initiates key export. KRH is the user receiving the key. Before you initiate TR-34 key export, you must obtain an export token by calling GetParametersForExport. This operation also returns the signing key certificate that KDH uses to sign the wrapped key to generate a TR-34 wrapped key block. The export token expires after 7 days.

Set the following parameters:

CertificateAuthorityPublicKeyIdentifier

The KeyARN of the certificate chain that will sign the wrapping key certificate. This must exist within Amazon Web Services Payment Cryptography before you initiate TR-34 key export. If it does not exist, you can import it by calling ImportKey for RootCertificatePublicKey.

ExportToken

Obtained from KDH by calling GetParametersForExport.

WrappingKeyCertificate

Amazon Web Services Payment Cryptography uses this to wrap the key under export.

When this operation is successful, Amazon Web Services Payment Cryptography returns the TR-34 wrapped key block.

TR-31 key export

Amazon Web Services Payment Cryptography uses TR-31 symmetric key exchange standard to export working keys. In TR-31, you must use a main key such as KEK to encrypt or wrap the key under export. To establish a KEK, you can use CreateKey or ImportKey. When this operation is successful, Amazon Web Services Payment Cryptography returns a TR-31 wrapped key block.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", + "DeleteKey": "

Deletes the key material and metadata associated with Amazon Web Services Payment Cryptography key.

Key deletion is irreversible. After a key is deleted, you can't perform cryptographic operations using the key. For example, you can't decrypt data that was encrypted by a deleted Amazon Web Services Payment Cryptography key, and the data may become unrecoverable. Because key deletion is destructive, Amazon Web Services Payment Cryptography has a safety mechanism to prevent accidental deletion of a key. When you call this operation, Amazon Web Services Payment Cryptography disables the specified key but doesn't delete it until after a waiting period set using DeleteKeyInDays. The default waiting period is 7 days. During the waiting period, the KeyState is DELETE_PENDING. After the key is deleted, the KeyState is DELETE_COMPLETE.

You should delete a key only when you are sure that you don't need to use it anymore and no other parties are utilizing this key. If you aren't sure, consider deactivating it instead by calling StopKeyUsage.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", + "ExportKey": "

Exports a key from Amazon Web Services Payment Cryptography.

Amazon Web Services Payment Cryptography simplifies key exchange by replacing the existing paper-based approach with a modern electronic approach. With ExportKey you can export symmetric keys using either symmetric and asymmetric key exchange mechanisms. Using this operation, you can share your Amazon Web Services Payment Cryptography generated keys with other service partners to perform cryptographic operations outside of Amazon Web Services Payment Cryptography

For symmetric key exchange, Amazon Web Services Payment Cryptography uses the ANSI X9 TR-31 norm in accordance with PCI PIN guidelines. And for asymmetric key exchange, Amazon Web Services Payment Cryptography supports ANSI X9 TR-34 norm . Asymmetric key exchange methods are typically used to establish bi-directional trust between the two parties exhanging keys and are used for initial key exchange such as Key Encryption Key (KEK). After which you can export working keys using symmetric method to perform various cryptographic operations within Amazon Web Services Payment Cryptography.

The TR-34 norm is intended for exchanging 3DES keys only and keys are imported in a WrappedKeyBlock format. Key attributes (such as KeyUsage, KeyAlgorithm, KeyModesOfUse, Exportability) are contained within the key block.

You can also use ExportKey functionality to generate and export an IPEK (Initial Pin Encryption Key) from Amazon Web Services Payment Cryptography using either TR-31 or TR-34 export key exchange. IPEK is generated from BDK (Base Derivation Key) and ExportDukptInitialKey attribute KSN (KeySerialNumber). The generated IPEK does not persist within Amazon Web Services Payment Cryptography and has to be re-generated each time during export.

To export KEK or IPEK using TR-34

Using this operation, you can export initial key using TR-34 asymmetric key exchange. You can only export KEK generated within Amazon Web Services Payment Cryptography. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Device (KRD). During key export process, KDH is Amazon Web Services Payment Cryptography which initiates key export and KRD is the user receiving the key.

To initiate TR-34 key export, the KRD must obtain an export token by calling GetParametersForExport. This operation also generates a key pair for the purpose of key export, signs the key and returns back the signing public key certificate (also known as KDH signing certificate) and root certificate chain. The KDH uses the private key to sign the the export payload and the signing public key certificate is provided to KRD to verify the signature. The KRD can import the root certificate into its Hardware Security Module (HSM), as required. The export token and the associated KDH signing certificate expires after 7 days.

Next the KRD generates a key pair for the the purpose of encrypting the KDH key and provides the public key cerificate (also known as KRD wrapping certificate) back to KDH. The KRD will also import the root cerificate chain into Amazon Web Services Payment Cryptography by calling ImportKey for RootCertificatePublicKey. The KDH, Amazon Web Services Payment Cryptography, will use the KRD wrapping cerificate to encrypt (wrap) the key under export and signs it with signing private key to generate a TR-34 WrappedKeyBlock. For more information on TR-34 key export, see section Exporting symmetric keys in the Amazon Web Services Payment Cryptography User Guide.

Set the following parameters:

  • ExportAttributes: Specify export attributes in case of IPEK export. This parameter is optional for KEK export.

  • ExportKeyIdentifier: The KeyARN of the KEK or BDK (in case of IPEK) under export.

  • KeyMaterial: Use Tr34KeyBlock parameters.

  • CertificateAuthorityPublicKeyIdentifier: The KeyARN of the certificate chain that signed the KRD wrapping key certificate.

  • ExportToken: Obtained from KDH by calling GetParametersForImport.

  • WrappingKeyCertificate: The public key certificate in PEM format (base64 encoded) of the KRD wrapping key Amazon Web Services Payment Cryptography uses for encryption of the TR-34 export payload. This certificate must be signed by the root certificate (CertificateAuthorityPublicKeyIdentifier) imported into Amazon Web Services Payment Cryptography.

When this operation is successful, Amazon Web Services Payment Cryptography returns the KEK or IPEK as a TR-34 WrappedKeyBlock.

To export WK (Working Key) or IPEK using TR-31

Using this operation, you can export working keys or IPEK using TR-31 symmetric key exchange. In TR-31, you must use an initial key such as KEK to encrypt or wrap the key under export. To establish a KEK, you can use CreateKey or ImportKey.

Set the following parameters:

  • ExportAttributes: Specify export attributes in case of IPEK export. This parameter is optional for KEK export.

  • ExportKeyIdentifier: The KeyARN of the KEK or BDK (in case of IPEK) under export.

  • KeyMaterial: Use Tr31KeyBlock parameters.

When this operation is successful, Amazon Web Services Payment Cryptography returns the WK or IPEK as a TR-31 WrappedKeyBlock.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "GetAlias": "

Gets the Amazon Web Services Payment Cryptography key associated with the alias.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "GetKey": "

Gets the key material for an Amazon Web Services Payment Cryptography key, including the immutable and mutable data specified when the key was created.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "GetParametersForExport": "

Gets the export token and the signing key certificate to initiate a TR-34 key export from Amazon Web Services Payment Cryptography.

The signing key certificate signs the wrapped key under export within the TR-34 key payload. The export token and signing key certificate must be in place and operational before calling ExportKey. The export token expires in 7 days. You can use the same export token to export multiple keys from your service account.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", - "GetParametersForImport": "

Gets the import token and the wrapping key certificate to initiate a TR-34 key import into Amazon Web Services Payment Cryptography.

The wrapping key certificate wraps the key under import within the TR-34 key payload. The import token and wrapping key certificate must be in place and operational before calling ImportKey. The import token expires in 7 days. The same import token can be used to import multiple keys into your service account.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", + "GetParametersForImport": "

Gets the import token and the wrapping key certificate in PEM format (base64 encoded) to initiate a TR-34 WrappedKeyBlock.

The wrapping key certificate wraps the key under import. The import token and wrapping key certificate must be in place and operational before calling ImportKey. The import token expires in 7 days. You can use the same import token to import multiple keys into your service account.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "GetPublicKeyCertificate": "

Gets the public key certificate of the asymmetric key pair that exists within Amazon Web Services Payment Cryptography.

Unlike the private key of an asymmetric key, which never leaves Amazon Web Services Payment Cryptography unencrypted, callers with GetPublicKeyCertificate permission can download the public key certificate of the asymmetric key. You can share the public key certificate to allow others to encrypt messages and verify signatures outside of Amazon Web Services Payment Cryptography

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

", - "ImportKey": "

Imports keys and public key certificates into Amazon Web Services Payment Cryptography.

Amazon Web Services Payment Cryptography simplifies main or root key exchange process by eliminating the need of a paper-based key exchange process. It takes a modern and secure approach based of the ANSI X9 TR-34 key exchange standard.

You can use ImportKey to import main or root keys such as KEK (Key Encryption Key) using asymmetric key exchange technique following the ANSI X9 TR-34 standard. The ANSI X9 TR-34 standard uses asymmetric keys to establishes bi-directional trust between the two parties exchanging keys.

After you have imported a main or root key, you can import working keys to perform various cryptographic operations within Amazon Web Services Payment Cryptography using the ANSI X9 TR-31 symmetric key exchange standard as mandated by PCI PIN.

You can also import a root public key certificate, a self-signed certificate used to sign other public key certificates, or a trusted public key certificate under an already established root public key certificate.

To import a public root key certificate

Using this operation, you can import the public component (in PEM cerificate format) of your private root key. You can use the imported public root key certificate for digital signatures, for example signing wrapping key or signing key in TR-34, within your Amazon Web Services Payment Cryptography account.

Set the following parameters:

  • KeyMaterial: RootCertificatePublicKey

  • KeyClass: PUBLIC_KEY

  • KeyModesOfUse: Verify

  • KeyUsage: TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE

  • PublicKeyCertificate: The certificate authority used to sign the root public key certificate.

To import a trusted public key certificate

The root public key certificate must be in place and operational before you import a trusted public key certificate. Set the following parameters:

  • KeyMaterial: TrustedCertificatePublicKey

  • CertificateAuthorityPublicKeyIdentifier: KeyArn of the RootCertificatePublicKey.

  • KeyModesOfUse and KeyUsage: Corresponding to the cryptographic operations such as wrap, sign, or encrypt that you will allow the trusted public key certificate to perform.

  • PublicKeyCertificate: The certificate authority used to sign the trusted public key certificate.

Import main keys

Amazon Web Services Payment Cryptography uses TR-34 asymmetric key exchange standard to import main keys such as KEK. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Host (KRH). During the key import process, KDH is the user who initiates the key import and KRH is Amazon Web Services Payment Cryptography who receives the key. Before initiating TR-34 key import, you must obtain an import token by calling GetParametersForImport. This operation also returns the wrapping key certificate that KDH uses wrap key under import to generate a TR-34 wrapped key block. The import token expires after 7 days.

Set the following parameters:

  • CertificateAuthorityPublicKeyIdentifier: The KeyArn of the certificate chain that will sign the signing key certificate and should exist within Amazon Web Services Payment Cryptography before initiating TR-34 key import. If it does not exist, you can import it by calling by calling ImportKey for RootCertificatePublicKey.

  • ImportToken: Obtained from KRH by calling GetParametersForImport.

  • WrappedKeyBlock: The TR-34 wrapped key block from KDH. It contains the KDH key under import, wrapped with KRH provided wrapping key certificate and signed by the KDH private signing key. This TR-34 key block is generated by the KDH Hardware Security Module (HSM) outside of Amazon Web Services Payment Cryptography.

  • SigningKeyCertificate: The public component of the private key that signed the KDH TR-34 wrapped key block. In PEM certificate format.

TR-34 is intended primarily to exchange 3DES keys. Your ability to export AES-128 and larger AES keys may be dependent on your source system.

Import working keys

Amazon Web Services Payment Cryptography uses TR-31 symmetric key exchange standard to import working keys. A KEK must be established within Amazon Web Services Payment Cryptography by using TR-34 key import. To initiate a TR-31 key import, set the following parameters:

  • WrappedKeyBlock: The key under import and encrypted using KEK. The TR-31 key block generated by your HSM outside of Amazon Web Services Payment Cryptography.

  • WrappingKeyIdentifier: The KeyArn of the KEK that Amazon Web Services Payment Cryptography uses to decrypt or unwrap the key under import.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", + "ImportKey": "

Imports symmetric keys and public key certificates in PEM format (base64 encoded) into Amazon Web Services Payment Cryptography.

Amazon Web Services Payment Cryptography simplifies key exchange by replacing the existing paper-based approach with a modern electronic approach. With ImportKey you can import symmetric keys using either symmetric and asymmetric key exchange mechanisms.

For symmetric key exchange, Amazon Web Services Payment Cryptography uses the ANSI X9 TR-31 norm in accordance with PCI PIN guidelines. And for asymmetric key exchange, Amazon Web Services Payment Cryptography supports ANSI X9 TR-34 norm . Asymmetric key exchange methods are typically used to establish bi-directional trust between the two parties exhanging keys and are used for initial key exchange such as Key Encryption Key (KEK) or Zone Master Key (ZMK). After which you can import working keys using symmetric method to perform various cryptographic operations within Amazon Web Services Payment Cryptography.

The TR-34 norm is intended for exchanging 3DES keys only and keys are imported in a WrappedKeyBlock format. Key attributes (such as KeyUsage, KeyAlgorithm, KeyModesOfUse, Exportability) are contained within the key block.

You can also import a root public key certificate, used to sign other public key certificates, or a trusted public key certificate under an already established root public key certificate.

To import a public root key certificate

You can also import a root public key certificate, used to sign other public key certificates, or a trusted public key certificate under an already established root public key certificate.

To import a public root key certificate

Using this operation, you can import the public component (in PEM cerificate format) of your private root key. You can use the imported public root key certificate for digital signatures, for example signing wrapping key or signing key in TR-34, within your Amazon Web Services Payment Cryptography account.

Set the following parameters:

  • KeyMaterial: RootCertificatePublicKey

  • KeyClass: PUBLIC_KEY

  • KeyModesOfUse: Verify

  • KeyUsage: TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE

  • PublicKeyCertificate: The public key certificate in PEM format (base64 encoded) of the private root key under import.

To import a trusted public key certificate

The root public key certificate must be in place and operational before you import a trusted public key certificate. Set the following parameters:

  • KeyMaterial: TrustedCertificatePublicKey

  • CertificateAuthorityPublicKeyIdentifier: KeyArn of the RootCertificatePublicKey.

  • KeyModesOfUse and KeyUsage: Corresponding to the cryptographic operations such as wrap, sign, or encrypt that you will allow the trusted public key certificate to perform.

  • PublicKeyCertificate: The trusted public key certificate in PEM format (base64 encoded) under import.

To import KEK or ZMK using TR-34

Using this operation, you can import initial key using TR-34 asymmetric key exchange. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Device (KRD). During the key import process, KDH is the user who initiates the key import and KRD is Amazon Web Services Payment Cryptography who receives the key.

To initiate TR-34 key import, the KDH must obtain an import token by calling GetParametersForImport. This operation generates an encryption keypair for the purpose of key import, signs the key and returns back the wrapping key certificate (also known as KRD wrapping certificate) and the root certificate chain. The KDH must trust and install the KRD wrapping certificate on its HSM and use it to encrypt (wrap) the KDH key during TR-34 WrappedKeyBlock generation. The import token and associated KRD wrapping certificate expires after 7 days.

Next the KDH generates a key pair for the purpose of signing the encrypted KDH key and provides the public certificate of the signing key to Amazon Web Services Payment Cryptography. The KDH will also need to import the root certificate chain of the KDH signing certificate by calling ImportKey for RootCertificatePublicKey. For more information on TR-34 key import, see section Importing symmetric keys in the Amazon Web Services Payment Cryptography User Guide.

Set the following parameters:

  • KeyMaterial: Use Tr34KeyBlock parameters.

  • CertificateAuthorityPublicKeyIdentifier: The KeyARN of the certificate chain that signed the KDH signing key certificate.

  • ImportToken: Obtained from KRD by calling GetParametersForImport.

  • WrappedKeyBlock: The TR-34 wrapped key material from KDH. It contains the KDH key under import, wrapped with KRD wrapping certificate and signed by KDH signing private key. This TR-34 key block is typically generated by the KDH Hardware Security Module (HSM) outside of Amazon Web Services Payment Cryptography.

  • SigningKeyCertificate: The public key certificate in PEM format (base64 encoded) of the KDH signing key generated under the root certificate (CertificateAuthorityPublicKeyIdentifier) imported in Amazon Web Services Payment Cryptography.

To import WK (Working Key) using TR-31

Amazon Web Services Payment Cryptography uses TR-31 symmetric key exchange norm to import working keys. A KEK must be established within Amazon Web Services Payment Cryptography by using TR-34 key import or by using CreateKey. To initiate a TR-31 key import, set the following parameters:

  • KeyMaterial: Use Tr31KeyBlock parameters.

  • WrappedKeyBlock: The TR-31 wrapped key material. It contains the key under import, encrypted using KEK. The TR-31 key block is typically generated by a HSM outside of Amazon Web Services Payment Cryptography.

  • WrappingKeyIdentifier: The KeyArn of the KEK that Amazon Web Services Payment Cryptography uses to decrypt or unwrap the key under import.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "ListAliases": "

Lists the aliases for all keys in the caller's Amazon Web Services account and Amazon Web Services Region. You can filter the list of aliases. For more information, see Using aliases in the Amazon Web Services Payment Cryptography User Guide.

This is a paginated operation, which means that each response might contain only a subset of all the aliases. When the response contains only a subset of aliases, it includes a NextToken value. Use this value in a subsequent ListAliases request to get more aliases. When you receive a response with no NextToken (or an empty or null value), that means there are no more aliases to get.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "ListKeys": "

Lists the keys in the caller's Amazon Web Services account and Amazon Web Services Region. You can filter the list of keys.

This is a paginated operation, which means that each response might contain only a subset of all the keys. When the response contains only a subset of keys, it includes a NextToken value. Use this value in a subsequent ListKeys request to get more keys. When you receive a response with no NextToken (or an empty or null value), that means there are no more keys to get.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", "ListTagsForResource": "

Lists the tags for an Amazon Web Services resource.

This is a paginated operation, which means that each response might contain only a subset of all the tags. When the response contains only a subset of tags, it includes a NextToken value. Use this value in a subsequent ListTagsForResource request to get more tags. When you receive a response with no NextToken (or an empty or null value), that means there are no more tags to get.

Cross-account use: This operation can't be used across different Amazon Web Services accounts.

Related operations:

", @@ -42,7 +42,7 @@ "base": null, "refs": { "Alias$AliasName": "

A friendly name that you can use to refer to a key. The value must begin with alias/.

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

", - "CreateAliasInput$AliasName": "

A friendly name that you can use to refer a key. An alias must begin with alias/ followed by a name, for example alias/ExampleAlias. It can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-).

Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

", + "CreateAliasInput$AliasName": "

A friendly name that you can use to refer to a key. An alias must begin with alias/ followed by a name, for example alias/ExampleAlias. It can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-).

Don't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

", "DeleteAliasInput$AliasName": "

A friendly name that you can use to refer Amazon Web Services Payment Cryptography key. This value must begin with alias/ followed by a name, such as alias/ExampleAlias.

", "GetAliasInput$AliasName": "

The alias of the Amazon Web Services Payment Cryptography key.

", "UpdateAliasInput$AliasName": "

The alias whose associated key is changing.

" @@ -57,7 +57,7 @@ "Boolean": { "base": null, "refs": { - "CreateKeyInput$Enabled": "

Specifies whether to enable the key. If the key is enabled, it is activated for use within the service. If the key not enabled, then it is created but not activated. The default value is enabled.

", + "CreateKeyInput$Enabled": "

Specifies whether to enable the key. If the key is enabled, it is activated for use within the service. If the key is not enabled, then it is created but not activated. The default value is enabled.

", "CreateKeyInput$Exportable": "

Specifies whether the key is exportable from the service.

", "ImportKeyInput$Enabled": "

Specifies whether import key is enabled.

", "Key$Enabled": "

Specifies whether the key is enabled.

", @@ -70,13 +70,13 @@ "base": null, "refs": { "ExportTr34KeyBlock$WrappingKeyCertificate": "

The KeyARN of the wrapping key certificate. Amazon Web Services Payment Cryptography uses this certificate to wrap the key under export.

", - "GetParametersForExportOutput$SigningKeyCertificate": "

The signing key certificate of the public key for signature within the TR-34 key block cryptogram. The certificate expires after 7 days.

", - "GetParametersForExportOutput$SigningKeyCertificateChain": "

The certificate chain that signed the signing key certificate. This is the root certificate authority (CA) within your service account.

", - "GetParametersForImportOutput$WrappingKeyCertificate": "

The wrapping key certificate of the wrapping key for use within the TR-34 key block. The certificate expires in 7 days.

", - "GetParametersForImportOutput$WrappingKeyCertificateChain": "

The Amazon Web Services Payment Cryptography certificate chain that signed the wrapping key certificate. This is the root certificate authority (CA) within your service account.

", - "GetPublicKeyCertificateOutput$KeyCertificate": "

The public key component of the asymmetric key pair in a certificate (PEM) format. It is signed by the root certificate authority (CA) within your service account. The certificate expires in 90 days.

", - "GetPublicKeyCertificateOutput$KeyCertificateChain": "

The certificate chain that signed the public key certificate of the asymmetric key pair. This is the root certificate authority (CA) within your service account.

", - "ImportTr34KeyBlock$SigningKeyCertificate": "

The public key component in PEM certificate format of the private key that signs the KDH TR-34 wrapped key block.

", + "GetParametersForExportOutput$SigningKeyCertificate": "

The signing key certificate in PEM format (base64 encoded) of the public key for signature within the TR-34 key block. The certificate expires after 7 days.

", + "GetParametersForExportOutput$SigningKeyCertificateChain": "

The root certificate authority (CA) that signed the signing key certificate in PEM format (base64 encoded).

", + "GetParametersForImportOutput$WrappingKeyCertificate": "

The wrapping key certificate in PEM format (base64 encoded) of the wrapping key for use within the TR-34 key block. The certificate expires in 7 days.

", + "GetParametersForImportOutput$WrappingKeyCertificateChain": "

The Amazon Web Services Payment Cryptography root certificate authority (CA) that signed the wrapping key certificate in PEM format (base64 encoded).

", + "GetPublicKeyCertificateOutput$KeyCertificate": "

The public key component of the asymmetric key pair in a certificate PEM format (base64 encoded). It is signed by the root certificate authority (CA). The certificate expires in 90 days.

", + "GetPublicKeyCertificateOutput$KeyCertificateChain": "

The root certificate authority (CA) that signed the public key certificate in PEM format (base64 encoded) of the asymmetric key pair.

", + "ImportTr34KeyBlock$SigningKeyCertificate": "

The public key component in PEM certificate format of the private key that signs the KDH TR-34 WrappedKeyBlock.

", "RootCertificatePublicKey$PublicKeyCertificate": "

Parameter information for root public key certificate import.

", "TrustedCertificatePublicKey$PublicKeyCertificate": "

Parameter information for trusted public key certificate import.

" } @@ -132,13 +132,25 @@ "refs": { } }, + "ExportAttributes": { + "base": "

The attributes for IPEK generation during export.

", + "refs": { + "ExportKeyInput$ExportAttributes": "

The attributes for IPEK generation during export.

" + } + }, + "ExportDukptInitialKey": { + "base": "

Parameter information for IPEK generation during export.

", + "refs": { + "ExportAttributes$ExportDukptInitialKey": "

Parameter information for IPEK export.

" + } + }, "ExportKeyInput": { "base": null, "refs": { } }, "ExportKeyMaterial": { - "base": "

Parameter information for key material export from Amazon Web Services Payment Cryptography.

", + "base": "

Parameter information for key material export from Amazon Web Services Payment Cryptography using TR-31 or TR-34 key exchange method.

", "refs": { "ExportKeyInput$KeyMaterial": "

The key block format type, for example, TR-34 or TR-31, to use during key material export.

" } @@ -156,15 +168,15 @@ } }, "ExportTr31KeyBlock": { - "base": "

Parameter information for key material export using TR-31 standard.

", + "base": "

Parameter information for key material export using symmetric TR-31 key exchange method.

", "refs": { - "ExportKeyMaterial$Tr31KeyBlock": "

Parameter information for key material export using TR-31 standard.

" + "ExportKeyMaterial$Tr31KeyBlock": "

Parameter information for key material export using symmetric TR-31 key exchange method.

" } }, "ExportTr34KeyBlock": { - "base": "

Parameter information for key material export using TR-34 standard.

", + "base": "

Parameter information for key material export using the asymmetric TR-34 key exchange method.

", "refs": { - "ExportKeyMaterial$Tr34KeyBlock": "

Parameter information for key material export using TR-34 standard.

" + "ExportKeyMaterial$Tr34KeyBlock": "

Parameter information for key material export using the asymmetric TR-34 key exchange method.

" } }, "GetAliasInput": { @@ -224,13 +236,19 @@ "ImportTr34KeyBlock$RandomNonce": "

A random number value that is unique to the TR-34 key block generated using 2 pass. The operation will fail, if a random nonce value is not provided for a TR-34 key block generated using 2 pass.

" } }, + "HexLength20Or24": { + "base": null, + "refs": { + "ExportDukptInitialKey$KeySerialNumber": "

The KSN for IPEK generation using DUKPT.

KSN must be padded before sending to Amazon Web Services Payment Cryptography. KSN hex length should be 20 for a TDES_2KEY key or 24 for an AES key.

" + } + }, "ImportKeyInput": { "base": null, "refs": { } }, "ImportKeyMaterial": { - "base": "

Parameter information for key material import.

", + "base": "

Parameter information for key material import into Amazon Web Services Payment Cryptography using TR-31 or TR-34 key exchange method.

", "refs": { "ImportKeyInput$KeyMaterial": "

The key or public key certificate type to use during key material import, for example TR-34 or RootCertificatePublicKey.

" } @@ -244,19 +262,19 @@ "base": null, "refs": { "GetParametersForImportOutput$ImportToken": "

The import token to initiate key import into Amazon Web Services Payment Cryptography. The import token expires after 7 days. You can use the same import token to import multiple keys to the same service account.

", - "ImportTr34KeyBlock$ImportToken": "

The import token that initiates key import into Amazon Web Services Payment Cryptography. It expires after 7 days. You can use the same import token to import multiple keys to the same service account.

" + "ImportTr34KeyBlock$ImportToken": "

The import token that initiates key import using the asymmetric TR-34 key exchange method into Amazon Web Services Payment Cryptography. It expires after 7 days. You can use the same import token to import multiple keys to the same service account.

" } }, "ImportTr31KeyBlock": { - "base": "

Parameter information for key material import using TR-31 standard.

", + "base": "

Parameter information for key material import using symmetric TR-31 key exchange method.

", "refs": { - "ImportKeyMaterial$Tr31KeyBlock": "

Parameter information for key material import using TR-31 standard.

" + "ImportKeyMaterial$Tr31KeyBlock": "

Parameter information for key material import using symmetric TR-31 key exchange method.

" } }, "ImportTr34KeyBlock": { - "base": "

Parameter information for key material import using TR-34 standard.

", + "base": "

Parameter information for key material import using the asymmetric TR-34 key exchange method.

", "refs": { - "ImportKeyMaterial$Tr34KeyBlock": "

Parameter information for key material import using TR-34 standard.

" + "ImportKeyMaterial$Tr34KeyBlock": "

Parameter information for key material import using the asymmetric TR-34 key exchange method.

" } }, "InternalServerException": { @@ -279,10 +297,10 @@ "KeyAlgorithm": { "base": null, "refs": { - "GetParametersForExportInput$SigningKeyAlgorithm": "

The signing key algorithm to generate a signing key certificate. This certificate signs the wrapped key under export within the TR-34 key block cryptogram. RSA_2048 is the only signing key algorithm allowed.

", + "GetParametersForExportInput$SigningKeyAlgorithm": "

The signing key algorithm to generate a signing key certificate. This certificate signs the wrapped key under export within the TR-34 key block. RSA_2048 is the only signing key algorithm allowed.

", "GetParametersForExportOutput$SigningKeyAlgorithm": "

The algorithm of the signing key certificate for use in TR-34 key block generation. RSA_2048 is the only signing key algorithm allowed.

", - "GetParametersForImportInput$WrappingKeyAlgorithm": "

The wrapping key algorithm to generate a wrapping key certificate. This certificate wraps the key under import within the TR-34 key block cryptogram. RSA_2048 is the only wrapping key algorithm allowed.

", - "GetParametersForImportOutput$WrappingKeyAlgorithm": "

The algorithm of the wrapping key for use within TR-34 key block. RSA_2048 is the only wrapping key algorithm allowed.

", + "GetParametersForImportInput$WrappingKeyAlgorithm": "

The wrapping key algorithm to generate a wrapping key certificate. This certificate wraps the key under import.

At this time, RSA_2048, RSA_3072, RSA_4096 are the only allowed algorithms for TR-34 WrappedKeyBlock import.

", + "GetParametersForImportOutput$WrappingKeyAlgorithm": "

The algorithm of the wrapping key for use within TR-34 WrappedKeyBlock.

", "KeyAttributes$KeyAlgorithm": "

The key algorithm to be use during creation of an Amazon Web Services Payment Cryptography key.

For symmetric keys, Amazon Web Services Payment Cryptography supports AES and TDES algorithms. For asymmetric keys, Amazon Web Services Payment Cryptography supports RSA and ECC_NIST algorithms.

" } }, @@ -327,16 +345,19 @@ "KeyCheckValue": { "base": null, "refs": { - "Key$KeyCheckValue": "

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed. Amazon Web Services Payment Cryptography calculates the KCV by using standard algorithms, typically by encrypting 8 or 16 bytes or \"00\" or \"01\" and then truncating the result to the first 3 bytes, or 6 hex digits, of the resulting cryptogram.

", - "KeySummary$KeyCheckValue": "

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed. Amazon Web Services Payment Cryptography calculates the KCV by using standard algorithms, typically by encrypting 8 or 16 bytes or \"00\" or \"01\" and then truncating the result to the first 3 bytes, or 6 hex digits, of the resulting cryptogram.

" + "Key$KeyCheckValue": "

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.

", + "KeySummary$KeyCheckValue": "

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.

", + "WrappedKey$KeyCheckValue": "

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.

" } }, "KeyCheckValueAlgorithm": { "base": null, "refs": { - "CreateKeyInput$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV) for DES and AES keys.

For DES key, the KCV is computed by encrypting 8 bytes, each with value '00', with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES key, the KCV is computed by encrypting 8 bytes, each with value '01', with the key to be checked and retaining the 3 highest order bytes of the encrypted result.

", - "ImportKeyInput$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV) for DES and AES keys.

For DES key, the KCV is computed by encrypting 8 bytes, each with value '00', with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES key, the KCV is computed by encrypting 8 bytes, each with value '01', with the key to be checked and retaining the 3 highest order bytes of the encrypted result.

", - "Key$KeyCheckValueAlgorithm": "

The algorithm used for calculating key check value (KCV) for DES and AES keys. For a DES key, Amazon Web Services Payment Cryptography computes the KCV by encrypting 8 bytes, each with value '00', with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For an AES key, Amazon Web Services Payment Cryptography computes the KCV by encrypting 8 bytes, each with value '01', with the key to be checked and retaining the 3 highest order bytes of the encrypted result.

" + "CreateKeyInput$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

", + "ExportAttributes$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity. Specify KCV for IPEK export only.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

", + "ImportKeyInput$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

", + "Key$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

", + "WrappedKey$KeyCheckValueAlgorithm": "

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

" } }, "KeyClass": { @@ -348,14 +369,14 @@ "KeyMaterial": { "base": null, "refs": { - "WrappedKey$KeyMaterial": "

Parameter information for generating a wrapped key using TR-31 or TR-34 standard.

" + "WrappedKey$KeyMaterial": "

Parameter information for generating a wrapped key using TR-31 or TR-34 skey exchange method.

" } }, "KeyMaterialType": { "base": null, "refs": { "GetParametersForExportInput$KeyMaterialType": "

The key block format type (for example, TR-34 or TR-31) to use during key material export. Export token is only required for a TR-34 key export, TR34_KEY_BLOCK. Export token is not required for TR-31 key export.

", - "GetParametersForImportInput$KeyMaterialType": "

The key block format type such as TR-34 or TR-31 to use during key material import. Import token is only required for TR-34 key import TR34_KEY_BLOCK. Import token is not required for TR-31 key import.

" + "GetParametersForImportInput$KeyMaterialType": "

The method to use for key material import. Import token is only required for TR-34 WrappedKeyBlock (TR34_KEY_BLOCK).

Import token is not required for TR-31, root public key cerificate or trusted public key certificate.

" } }, "KeyModesOfUse": { @@ -430,8 +451,8 @@ "base": null, "refs": { "ListAliasesInput$MaxResults": "

Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.

This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.

", - "ListKeysInput$MaxResults": "

Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.

", - "ListTagsForResourceInput$MaxResults": "

Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.

" + "ListKeysInput$MaxResults": "

Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.

This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.

", + "ListTagsForResourceInput$MaxResults": "

Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.

This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.

" } }, "NextToken": { @@ -569,10 +590,10 @@ "Tags": { "base": null, "refs": { - "CreateKeyInput$Tags": "

The tags to attach to the key. Each tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key.

To use this parameter, you must have TagResource permission.

Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

Tagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.

", - "ImportKeyInput$Tags": "

The tags to attach to the key. Each tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key.

You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the specified one.

To use this parameter, you must have TagResource permission.

Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

Tagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.

", + "CreateKeyInput$Tags": "

Assigns one or more tags to the Amazon Web Services Payment Cryptography key. Use this parameter to tag a key when it is created. To tag an existing Amazon Web Services Payment Cryptography key, use the TagResource operation.

Each tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key.

Don't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

Tagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.

", + "ImportKeyInput$Tags": "

Assigns one or more tags to the Amazon Web Services Payment Cryptography key. Use this parameter to tag a key when it is imported. To tag an existing Amazon Web Services Payment Cryptography key, use the TagResource operation.

Each tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the specified one.

Don't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

Tagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.

", "ListTagsForResourceOutput$Tags": "

The list of tags associated with a ResourceArn. Each tag will list the key-value pair contained within that tag.

", - "TagResourceInput$Tags": "

One or more tags. Each tag consists of a tag key and a tag value. The tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the new one.

Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

To use this parameter, you must have TagResource permission in an IAM policy.

Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

" + "TagResourceInput$Tags": "

One or more tags. Each tag consists of a tag key and a tag value. The tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the new one.

Don't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

To use this parameter, you must have TagResource permission in an IAM policy.

Don't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

" } }, "ThrottlingException": { @@ -595,7 +616,7 @@ "Tr31WrappedKeyBlock": { "base": null, "refs": { - "ImportTr31KeyBlock$WrappedKeyBlock": "

The TR-34 wrapped key block to import.

" + "ImportTr31KeyBlock$WrappedKeyBlock": "

The TR-31 wrapped key block to import.

" } }, "Tr34KeyBlockFormat": { @@ -643,9 +664,9 @@ } }, "WrappedKey": { - "base": "

Parameter information for generating a wrapped key using TR-31 or TR-34 standard.

", + "base": "

Parameter information for generating a WrappedKeyBlock for key exchange.

", "refs": { - "ExportKeyOutput$WrappedKey": "

The key material under export as a TR-34 or TR-31 wrapped key block.

" + "ExportKeyOutput$WrappedKey": "

The key material under export as a TR-34 WrappedKeyBlock or a TR-31 WrappedKeyBlock.

" } }, "WrappedKeyMaterialFormat": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/payment-cryptography/2021-09-14/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/payment-cryptography/2021-09-14/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,54 +1,54 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography-fips.us-gov-east-1.api.aws" + "url": "https://controlplane.payment-cryptography-fips.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography-fips.us-gov-east-1.amazonaws.com" + "url": "https://controlplane.payment-cryptography-fips.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography.us-gov-east-1.api.aws" + "url": "https://controlplane.payment-cryptography.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography.us-gov-east-1.amazonaws.com" + "url": "https://controlplane.payment-cryptography.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": false } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -99,108 +99,108 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://controlplane.payment-cryptography-fips.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://controlplane.payment-cryptography-fips.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://controlplane.payment-cryptography.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography.us-iso-east-1.c2s.ic.gov" + "url": "https://controlplane.payment-cryptography.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://controlplane.payment-cryptography-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography-fips.us-east-1.amazonaws.com" + "url": "https://controlplane.payment-cryptography-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://controlplane.payment-cryptography.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://controlplane.payment-cryptography.us-east-1.amazonaws.com" + "url": "https://controlplane.payment-cryptography.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": false } }, @@ -210,8 +210,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -223,8 +223,8 @@ } }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -234,8 +234,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -247,21 +247,34 @@ } }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -272,8 +285,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize/2018-05-22/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize/2018-05-22/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize/2018-05-22/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize/2018-05-22/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1052,7 +1052,7 @@ }, "AvroSchema":{ "type":"string", - "max":10000 + "max":20000 }, "BatchInferenceJob":{ "type":"structure", @@ -1067,6 +1067,8 @@ "jobOutput":{"shape":"BatchInferenceJobOutput"}, "batchInferenceJobConfig":{"shape":"BatchInferenceJobConfig"}, "roleArn":{"shape":"RoleArn"}, + "batchInferenceJobMode":{"shape":"BatchInferenceJobMode"}, + "themeGenerationConfig":{"shape":"ThemeGenerationConfig"}, "status":{"shape":"Status"}, "creationDateTime":{"shape":"Date"}, "lastUpdatedDateTime":{"shape":"Date"} @@ -1085,6 +1087,13 @@ "s3DataSource":{"shape":"S3DataConfig"} } }, + "BatchInferenceJobMode":{ + "type":"string", + "enum":[ + "BATCH_INFERENCE", + "THEME_GENERATION" + ] + }, "BatchInferenceJobOutput":{ "type":"structure", "required":["s3DataDestination"], @@ -1101,7 +1110,8 @@ "creationDateTime":{"shape":"Date"}, "lastUpdatedDateTime":{"shape":"Date"}, "failureReason":{"shape":"FailureReason"}, - "solutionVersionArn":{"shape":"Arn"} + "solutionVersionArn":{"shape":"Arn"}, + "batchInferenceJobMode":{"shape":"BatchInferenceJobMode"} } }, "BatchInferenceJobs":{ @@ -1176,7 +1186,8 @@ "CampaignConfig":{ "type":"structure", "members":{ - "itemExplorationConfig":{"shape":"HyperParameters"} + "itemExplorationConfig":{"shape":"HyperParameters"}, + "enableMetadataWithRecommendations":{"shape":"Boolean"} } }, "CampaignSummary":{ @@ -1276,7 +1287,9 @@ "jobOutput":{"shape":"BatchInferenceJobOutput"}, "roleArn":{"shape":"RoleArn"}, "batchInferenceJobConfig":{"shape":"BatchInferenceJobConfig"}, - "tags":{"shape":"Tags"} + "tags":{"shape":"Tags"}, + "batchInferenceJobMode":{"shape":"BatchInferenceJobMode"}, + "themeGenerationConfig":{"shape":"ThemeGenerationConfig"} } }, "CreateBatchInferenceJobResponse":{ @@ -1573,7 +1586,8 @@ "status":{"shape":"Status"}, "creationDateTime":{"shape":"Date"}, "lastUpdatedDateTime":{"shape":"Date"}, - "latestDatasetUpdate":{"shape":"DatasetUpdateSummary"} + "latestDatasetUpdate":{"shape":"DatasetUpdateSummary"}, + "trackingId":{"shape":"TrackingId"} } }, "DatasetExportJob":{ @@ -2142,6 +2156,13 @@ "value":{"shape":"ParameterValue"}, "max":100 }, + "FieldsForThemeGeneration":{ + "type":"structure", + "required":["itemName"], + "members":{ + "itemName":{"shape":"ColumnName"} + } + }, "Filter":{ "type":"structure", "members":{ @@ -2736,7 +2757,8 @@ "members":{ "itemExplorationConfig":{"shape":"HyperParameters"}, "minRecommendationRequestsPerSecond":{"shape":"TransactionsPerSecond"}, - "trainingDataConfig":{"shape":"TrainingDataConfig"} + "trainingDataConfig":{"shape":"TrainingDataConfig"}, + "enableMetadataWithRecommendations":{"shape":"Boolean"} } }, "RecommenderSummary":{ @@ -2987,6 +3009,13 @@ "max":200, "min":0 }, + "ThemeGenerationConfig":{ + "type":"structure", + "required":["fieldsForThemeGeneration"], + "members":{ + "fieldsForThemeGeneration":{"shape":"FieldsForThemeGeneration"} + } + }, "TooManyTagKeysException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize/2018-05-22/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize/2018-05-22/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize/2018-05-22/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize/2018-05-22/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,14 +2,14 @@ "version": "2.0", "service": "

Amazon Personalize is a machine learning service that makes it easy to add individualized recommendations to customers.

", "operations": { - "CreateBatchInferenceJob": "

Creates a batch inference job. The operation can handle up to 50 million records and the input file must be in JSON format. For more information, see Creating a batch inference job.

", + "CreateBatchInferenceJob": "

Generates batch recommendations based on a list of items or users stored in Amazon S3 and exports the recommendations to an Amazon S3 bucket.

To generate batch recommendations, specify the ARN of a solution version and an Amazon S3 URI for the input and output data. For user personalization, popular items, and personalized ranking solutions, the batch inference job generates a list of recommended items for each user ID in the input file. For related items solutions, the job generates a list of recommended items for each item ID in the input file.

For more information, see Creating a batch inference job .

If you use the Similar-Items recipe, Amazon Personalize can add descriptive themes to batch recommendations. To generate themes, set the job's mode to THEME_GENERATION and specify the name of the field that contains item names in the input data.

For more information about generating themes, see Batch recommendations with themes from Content Generator .

You can't get batch recommendations with the Trending-Now or Next-Best-Action recipes.

", "CreateBatchSegmentJob": "

Creates a batch segment job. The operation can handle up to 50 million records and the input file must be in JSON format. For more information, see Getting batch recommendations and user segments.

", "CreateCampaign": "

Creates a campaign that deploys a solution version. When a client calls the GetRecommendations and GetPersonalizedRanking APIs, a campaign is specified in the request.

Minimum Provisioned TPS and Auto-Scaling

A high minProvisionedTPS will increase your bill. We recommend starting with 1 for minProvisionedTPS (the default). Track your usage using Amazon CloudWatch metrics, and increase the minProvisionedTPS as necessary.

A transaction is a single GetRecommendations or GetPersonalizedRanking call. Transactions per second (TPS) is the throughput and unit of billing for Amazon Personalize. The minimum provisioned TPS (minProvisionedTPS) specifies the baseline throughput provisioned by Amazon Personalize, and thus, the minimum billing charge.

If your TPS increases beyond minProvisionedTPS, Amazon Personalize auto-scales the provisioned capacity up and down, but never below minProvisionedTPS. There's a short time delay while the capacity is increased that might cause loss of transactions.

The actual TPS used is calculated as the average requests/second within a 5-minute window. You pay for maximum of either the minimum provisioned TPS or the actual TPS. We recommend starting with a low minProvisionedTPS, track your usage using Amazon CloudWatch metrics, and then increase the minProvisionedTPS as necessary.

Status

A campaign can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING > DELETE IN_PROGRESS

To get the campaign status, call DescribeCampaign.

Wait until the status of the campaign is ACTIVE before asking the campaign for recommendations.

Related APIs

", - "CreateDataset": "

Creates an empty dataset and adds it to the specified dataset group. Use CreateDatasetImportJob to import your training data to a dataset.

There are three types of datasets:

  • Interactions

  • Items

  • Users

Each dataset type has an associated schema with required field types. Only the Interactions dataset is required in order to train a model (also referred to as creating a solution).

A dataset can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING > DELETE IN_PROGRESS

To get the status of the dataset, call DescribeDataset.

Related APIs

", + "CreateDataset": "

Creates an empty dataset and adds it to the specified dataset group. Use CreateDatasetImportJob to import your training data to a dataset.

There are 5 types of datasets:

  • Item interactions

  • Items

  • Users

  • Action interactions

  • Actions

Each dataset type has an associated schema with required field types. Only the Item interactions dataset is required in order to train a model (also referred to as creating a solution).

A dataset can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING > DELETE IN_PROGRESS

To get the status of the dataset, call DescribeDataset.

Related APIs

", "CreateDatasetExportJob": "

Creates a job that exports data from your dataset to an Amazon S3 bucket. To allow Amazon Personalize to export the training data, you must specify an service-linked IAM role that gives Amazon Personalize PutObject permissions for your Amazon S3 bucket. For information, see Exporting a dataset in the Amazon Personalize developer guide.

Status

A dataset export job can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

To get the status of the export job, call DescribeDatasetExportJob, and specify the Amazon Resource Name (ARN) of the dataset export job. The dataset export is complete when the status shows as ACTIVE. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the job failed.

", - "CreateDatasetGroup": "

Creates an empty dataset group. A dataset group is a container for Amazon Personalize resources. A dataset group can contain at most three datasets, one for each type of dataset:

  • Interactions

  • Items

  • Users

A dataset group can be a Domain dataset group, where you specify a domain and use pre-configured resources like recommenders, or a Custom dataset group, where you use custom resources, such as a solution with a solution version, that you deploy with a campaign. If you start with a Domain dataset group, you can still add custom resources such as solutions and solution versions trained with recipes for custom use cases and deployed with campaigns.

A dataset group can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING

To get the status of the dataset group, call DescribeDatasetGroup. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the creation failed.

You must wait until the status of the dataset group is ACTIVE before adding a dataset to the group.

You can specify an Key Management Service (KMS) key to encrypt the datasets in the group. If you specify a KMS key, you must also include an Identity and Access Management (IAM) role that has permission to access the key.

APIs that require a dataset group ARN in the request

Related APIs

", - "CreateDatasetImportJob": "

Creates a job that imports training data from your data source (an Amazon S3 bucket) to an Amazon Personalize dataset. To allow Amazon Personalize to import the training data, you must specify an IAM service role that has permission to read from the data source, as Amazon Personalize makes a copy of your data and processes it internally. For information on granting access to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon S3 Resources.

By default, a dataset import job replaces any existing data in the dataset that you imported in bulk. To add new records without replacing existing data, specify INCREMENTAL for the import mode in the CreateDatasetImportJob operation.

Status

A dataset import job can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

To get the status of the import job, call DescribeDatasetImportJob, providing the Amazon Resource Name (ARN) of the dataset import job. The dataset import is complete when the status shows as ACTIVE. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the job failed.

Importing takes time. You must wait until the status shows as ACTIVE before training a model using the dataset.

Related APIs

", - "CreateEventTracker": "

Creates an event tracker that you use when adding event data to a specified dataset group using the PutEvents API.

Only one event tracker can be associated with a dataset group. You will get an error if you call CreateEventTracker using the same dataset group as an existing event tracker.

When you create an event tracker, the response includes a tracking ID, which you pass as a parameter when you use the PutEvents operation. Amazon Personalize then appends the event data to the Interactions dataset of the dataset group you specify in your event tracker.

The event tracker can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING > DELETE IN_PROGRESS

To get the status of the event tracker, call DescribeEventTracker.

The event tracker must be in the ACTIVE state before using the tracking ID.

Related APIs

", + "CreateDatasetGroup": "

Creates an empty dataset group. A dataset group is a container for Amazon Personalize resources. A dataset group can contain at most three datasets, one for each type of dataset:

  • Item interactions

  • Items

  • Users

  • Actions

  • Action interactions

A dataset group can be a Domain dataset group, where you specify a domain and use pre-configured resources like recommenders, or a Custom dataset group, where you use custom resources, such as a solution with a solution version, that you deploy with a campaign. If you start with a Domain dataset group, you can still add custom resources such as solutions and solution versions trained with recipes for custom use cases and deployed with campaigns.

A dataset group can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING

To get the status of the dataset group, call DescribeDatasetGroup. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the creation failed.

You must wait until the status of the dataset group is ACTIVE before adding a dataset to the group.

You can specify an Key Management Service (KMS) key to encrypt the datasets in the group. If you specify a KMS key, you must also include an Identity and Access Management (IAM) role that has permission to access the key.

APIs that require a dataset group ARN in the request

Related APIs

", + "CreateDatasetImportJob": "

Creates a job that imports training data from your data source (an Amazon S3 bucket) to an Amazon Personalize dataset. To allow Amazon Personalize to import the training data, you must specify an IAM service role that has permission to read from the data source, as Amazon Personalize makes a copy of your data and processes it internally. For information on granting access to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon S3 Resources.

If you already created a recommender or deployed a custom solution version with a campaign, how new bulk records influence recommendations depends on the domain use case or recipe that you use. For more information, see How new data influences real-time recommendations.

By default, a dataset import job replaces any existing data in the dataset that you imported in bulk. To add new records without replacing existing data, specify INCREMENTAL for the import mode in the CreateDatasetImportJob operation.

Status

A dataset import job can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

To get the status of the import job, call DescribeDatasetImportJob, providing the Amazon Resource Name (ARN) of the dataset import job. The dataset import is complete when the status shows as ACTIVE. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the job failed.

Importing takes time. You must wait until the status shows as ACTIVE before training a model using the dataset.

Related APIs

", + "CreateEventTracker": "

Creates an event tracker that you use when adding event data to a specified dataset group using the PutEvents API.

Only one event tracker can be associated with a dataset group. You will get an error if you call CreateEventTracker using the same dataset group as an existing event tracker.

When you create an event tracker, the response includes a tracking ID, which you pass as a parameter when you use the PutEvents operation. Amazon Personalize then appends the event data to the Item interactions dataset of the dataset group you specify in your event tracker.

The event tracker can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • DELETE PENDING > DELETE IN_PROGRESS

To get the status of the event tracker, call DescribeEventTracker.

The event tracker must be in the ACTIVE state before using the tracking ID.

Related APIs

", "CreateFilter": "

Creates a recommendation filter. For more information, see Filtering recommendations and user segments.

", "CreateMetricAttribution": "

Creates a metric attribution. A metric attribution creates reports on the data that you import into Amazon Personalize. Depending on how you imported the data, you can view reports in Amazon CloudWatch or Amazon S3. For more information, see Measuring impact of recommendations.

", "CreateRecommender": "

Creates a recommender with the recipe (a Domain dataset group use case) you specify. You create recommenders for a Domain dataset group and specify the recommender's Amazon Resource Name (ARN) when you make a GetRecommendations request.

Minimum recommendation requests per second

A high minRecommendationRequestsPerSecond will increase your bill. We recommend starting with 1 for minRecommendationRequestsPerSecond (the default). Track your usage using Amazon CloudWatch metrics, and increase the minRecommendationRequestsPerSecond as necessary.

When you create a recommender, you can configure the recommender's minimum recommendation requests per second. The minimum recommendation requests per second (minRecommendationRequestsPerSecond) specifies the baseline recommendation request throughput provisioned by Amazon Personalize. The default minRecommendationRequestsPerSecond is 1. A recommendation request is a single GetRecommendations operation. Request throughput is measured in requests per second and Amazon Personalize uses your requests per second to derive your requests per hour and the price of your recommender usage.

If your requests per second increases beyond minRecommendationRequestsPerSecond, Amazon Personalize auto-scales the provisioned capacity up and down, but never below minRecommendationRequestsPerSecond. There's a short time delay while the capacity is increased that might cause loss of requests.

Your bill is the greater of either the minimum requests per hour (based on minRecommendationRequestsPerSecond) or the actual number of requests. The actual request throughput used is calculated as the average requests/second within a one-hour window. We recommend starting with the default minRecommendationRequestsPerSecond, track your usage using Amazon CloudWatch metrics, and then increase the minRecommendationRequestsPerSecond as necessary.

Status

A recommender can be in one of the following states:

  • CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED

  • STOP PENDING > STOP IN_PROGRESS > INACTIVE > START PENDING > START IN_PROGRESS > ACTIVE

  • DELETE PENDING > DELETE IN_PROGRESS

To get the recommender status, call DescribeRecommender.

Wait until the status of the recommender is ACTIVE before asking the recommender for recommendations.

Related APIs

", @@ -19,7 +19,7 @@ "DeleteCampaign": "

Removes a campaign by deleting the solution deployment. The solution that the campaign is based on is not deleted and can be redeployed when needed. A deleted campaign can no longer be specified in a GetRecommendations request. For information on creating campaigns, see CreateCampaign.

", "DeleteDataset": "

Deletes a dataset. You can't delete a dataset if an associated DatasetImportJob or SolutionVersion is in the CREATE PENDING or IN PROGRESS state. For more information on datasets, see CreateDataset.

", "DeleteDatasetGroup": "

Deletes a dataset group. Before you delete a dataset group, you must delete the following:

  • All associated event trackers.

  • All associated solutions.

  • All datasets in the dataset group.

", - "DeleteEventTracker": "

Deletes the event tracker. Does not delete the event-interactions dataset from the associated dataset group. For more information on event trackers, see CreateEventTracker.

", + "DeleteEventTracker": "

Deletes the event tracker. Does not delete the dataset from the dataset group. For more information on event trackers, see CreateEventTracker.

", "DeleteFilter": "

Deletes a filter.

", "DeleteMetricAttribution": "

Deletes a metric attribution.

", "DeleteRecommender": "

Deactivates and removes a recommender. A deleted recommender can no longer be specified in a GetRecommendations request.

", @@ -65,7 +65,7 @@ "StopSolutionVersionCreation": "

Stops creating a solution version that is in a state of CREATE_PENDING or CREATE IN_PROGRESS.

Depending on the current state of the solution version, the solution version state changes as follows:

  • CREATE_PENDING > CREATE_STOPPED

    or

  • CREATE_IN_PROGRESS > CREATE_STOPPING > CREATE_STOPPED

You are billed for all of the training completed up until you stop the solution version creation. You cannot resume creating a solution version once it has been stopped.

", "TagResource": "

Add a list of tags to a resource.

", "UntagResource": "

Remove tags that are attached to a resource.

", - "UpdateCampaign": "

Updates a campaign by either deploying a new solution or changing the value of the campaign's minProvisionedTPS parameter.

To update a campaign, the campaign status must be ACTIVE or CREATE FAILED. Check the campaign status using the DescribeCampaign operation.

You can still get recommendations from a campaign while an update is in progress. The campaign will use the previous solution version and campaign configuration to generate recommendations until the latest campaign update status is Active.

For more information on campaigns, see CreateCampaign.

", + "UpdateCampaign": "

Updates a campaign to deploy a retrained solution version with an existing campaign, change your campaign's minProvisionedTPS, or modify your campaign's configuration, such as the exploration configuration.

To update a campaign, the campaign status must be ACTIVE or CREATE FAILED. Check the campaign status using the DescribeCampaign operation.

You can still get recommendations from a campaign while an update is in progress. The campaign will use the previous solution version and campaign configuration to generate recommendations until the latest campaign update status is Active.

For more information about updating a campaign, including code samples, see Updating a campaign. For more information about campaigns, see Creating a campaign.

", "UpdateDataset": "

Update a dataset to replace its schema with a new or existing one. For more information, see Replacing a dataset's schema.

", "UpdateMetricAttribution": "

Updates a metric attribution.

", "UpdateRecommender": "

Updates the recommender to modify the recommender configuration. If you update the recommender to modify the columns used in training, Amazon Personalize automatically starts a full retraining of the models backing your recommender. While the update completes, you can still get recommendations from the recommender. The recommender uses the previous configuration until the update completes. To track the status of this update, use the latestRecommenderUpdate returned in the DescribeRecommender operation.

" @@ -295,6 +295,14 @@ "CreateBatchInferenceJobRequest$jobInput": "

The Amazon S3 path that leads to the input file to base your recommendations on. The input material must be in JSON format.

" } }, + "BatchInferenceJobMode": { + "base": null, + "refs": { + "BatchInferenceJob$batchInferenceJobMode": "

The job's mode.

", + "BatchInferenceJobSummary$batchInferenceJobMode": "

The job's mode.

", + "CreateBatchInferenceJobRequest$batchInferenceJobMode": "

The mode of the batch inference job. To generate descriptive themes for groups of similar items, set the job mode to THEME_GENERATION. If you don't want to generate themes, use the default BATCH_INFERENCE.

When you get batch recommendations with themes, you will incur additional costs. For more information, see Amazon Personalize pricing.

" + } + }, "BatchInferenceJobOutput": { "base": "

The output configuration parameters of a batch inference job.

", "refs": { @@ -349,9 +357,11 @@ "Boolean": { "base": null, "refs": { + "CampaignConfig$enableMetadataWithRecommendations": "

Whether metadata with recommendations is enabled for the campaign. If enabled, you can specify the columns from your Items dataset in your request for recommendations. Amazon Personalize returns this data for each item in the recommendation response.

If you enable metadata in recommendations, you will incur additional costs. For more information, see Amazon Personalize pricing.

", "CreateDatasetImportJobRequest$publishAttributionMetricsToS3": "

If you created a metric attribution, specify whether to publish metrics for this import job to Amazon S3

", "CreateSolutionRequest$performHPO": "

Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is false.

When performing AutoML, this parameter is always true and you should not set it to false.

", - "DatasetImportJob$publishAttributionMetricsToS3": "

Whether the job publishes metrics to Amazon S3 for a metric attribution.

" + "DatasetImportJob$publishAttributionMetricsToS3": "

Whether the job publishes metrics to Amazon S3 for a metric attribution.

", + "RecommenderConfig$enableMetadataWithRecommendations": "

Whether metadata with recommendations is enabled for the recommender. If enabled, you can specify the columns from your Items dataset in your request for recommendations. Amazon Personalize returns this data for each item in the recommendation response.

If you enable metadata in recommendations, you will incur additional costs. For more information, see Amazon Personalize pricing.

" } }, "Campaign": { @@ -415,7 +425,8 @@ "ColumnName": { "base": null, "refs": { - "ColumnNamesList$member": null + "ColumnNamesList$member": null, + "FieldsForThemeGeneration$itemName": "

The name of the Items dataset column that stores the name of each item in the dataset.

" } }, "ColumnNamesList": { @@ -629,7 +640,7 @@ } }, "DatasetGroup": { - "base": "

A dataset group is a collection of related datasets (Interactions, User, and Item). You create a dataset group by calling CreateDatasetGroup. You then create a dataset and add it to a dataset group by calling CreateDataset. The dataset group is used to create and train a solution by calling CreateSolution. A dataset group can contain only one of each type of dataset.

You can specify an Key Management Service (KMS) key to encrypt the datasets in the group.

", + "base": "

A dataset group is a collection of related datasets (Item interactions, Users, Items, Actions, Action interactions). You create a dataset group by calling CreateDatasetGroup. You then create a dataset and add it to a dataset group by calling CreateDataset. The dataset group is used to create and train a solution by calling CreateSolution. A dataset group can contain only one of each type of dataset.

You can specify an Key Management Service (KMS) key to encrypt the datasets in the group.

", "refs": { "DescribeDatasetGroupResponse$datasetGroup": "

A listing of the dataset group's properties.

" } @@ -685,8 +696,8 @@ "DatasetType": { "base": null, "refs": { - "CreateDatasetRequest$datasetType": "

The type of dataset.

One of the following (case insensitive) values:

  • Interactions

  • Items

  • Users

", - "Dataset$datasetType": "

One of the following values:

  • Interactions

  • Items

  • Users

", + "CreateDatasetRequest$datasetType": "

The type of dataset.

One of the following (case insensitive) values:

  • Interactions

  • Items

  • Users

  • Actions

  • Action_Interactions

", + "Dataset$datasetType": "

One of the following values:

  • Interactions

  • Items

  • Users

  • Actions

  • Action_Interactions

", "DatasetSummary$datasetType": "

The dataset type. One of the following values:

  • Interactions

  • Items

  • Users

  • Event-Interactions

", "ExcludedDatasetColumns$key": null } @@ -1158,6 +1169,12 @@ "FeatureTransformation$defaultParameters": "

Provides the default parameters for feature transformation.

" } }, + "FieldsForThemeGeneration": { + "base": "

A string to string map of the configuration details for theme generation.

", + "refs": { + "ThemeGenerationConfig$fieldsForThemeGeneration": "

Fields used to generate descriptive themes for a batch inference job.

" + } + }, "Filter": { "base": "

Contains information on a recommendation filter, including its ARN, status, and filter expression.

", "refs": { @@ -1237,7 +1254,7 @@ "BatchInferenceJobConfig$itemExplorationConfig": "

A string to string map specifying the exploration configuration hyperparameters, including explorationWeight and explorationItemAgeCutOff, you want to use to configure the amount of item exploration Amazon Personalize uses when recommending items. See User-Personalization.

", "CampaignConfig$itemExplorationConfig": "

Specifies the exploration configuration hyperparameters, including explorationWeight and explorationItemAgeCutOff, you want to use to configure the amount of item exploration Amazon Personalize uses when recommending items. Provide itemExplorationConfig data only if your solution uses the User-Personalization recipe.

", "RecommenderConfig$itemExplorationConfig": "

Specifies the exploration configuration hyperparameters, including explorationWeight and explorationItemAgeCutOff, you want to use to configure the amount of item exploration Amazon Personalize uses when recommending items. Provide itemExplorationConfig data only if your recommenders generate personalized recommendations for a user (not popular items or similar items).

", - "SolutionConfig$algorithmHyperParameters": "

Lists the hyperparameter names and ranges.

", + "SolutionConfig$algorithmHyperParameters": "

Lists the algorithm hyperparameters and their values.

", "TunedHPOParams$algorithmHyperParameters": "

A list of the hyperparameter values of the best performing model.

" } }, @@ -1649,7 +1666,7 @@ "ListDatasetGroupsResponse$nextToken": "

A token for getting the next set of dataset groups (if they exist).

", "ListDatasetImportJobsRequest$nextToken": "

A token returned from the previous call to ListDatasetImportJobs for getting the next set of dataset import jobs (if they exist).

", "ListDatasetImportJobsResponse$nextToken": "

A token for getting the next set of dataset import jobs (if they exist).

", - "ListDatasetsRequest$nextToken": "

A token returned from the previous call to ListDatasetImportJobs for getting the next set of dataset import jobs (if they exist).

", + "ListDatasetsRequest$nextToken": "

A token returned from the previous call to ListDatasets for getting the next set of dataset import jobs (if they exist).

", "ListDatasetsResponse$nextToken": "

A token for getting the next set of datasets (if they exist).

", "ListEventTrackersRequest$nextToken": "

A token returned from the previous call to ListEventTrackers for getting the next set of event trackers (if they exist).

", "ListEventTrackersResponse$nextToken": "

A token for getting the next set of event trackers (if they exist).

", @@ -1826,7 +1843,7 @@ "CreateDatasetExportJobRequest$roleArn": "

The Amazon Resource Name (ARN) of the IAM service role that has permissions to add data to your output Amazon S3 bucket.

", "CreateDatasetGroupRequest$roleArn": "

The ARN of the Identity and Access Management (IAM) role that has permissions to access the Key Management Service (KMS) key. Supplying an IAM role is only valid when also specifying a KMS key.

", "CreateDatasetImportJobRequest$roleArn": "

The ARN of the IAM role that has permissions to read from the Amazon S3 data source.

", - "DatasetGroup$roleArn": "

The ARN of the IAM role that has permissions to create the dataset group.

", + "DatasetGroup$roleArn": "

The ARN of the Identity and Access Management (IAM) role that has permissions to access the Key Management Service (KMS) key. Supplying an IAM role is only valid when also specifying a KMS key.

", "MetricAttributionOutput$roleArn": "

The Amazon Resource Name (ARN) of the IAM service role that has permissions to add data to your output Amazon S3 bucket and add metrics to Amazon CloudWatch. For more information, see Measuring impact of recommendations.

" } }, @@ -2015,6 +2032,13 @@ "TagResourceRequest$tags": "

Tags to apply to the resource. For more information see Tagging Amazon Personalize recources.

" } }, + "ThemeGenerationConfig": { + "base": "

The configuration details for generating themes with a batch inference job.

", + "refs": { + "BatchInferenceJob$themeGenerationConfig": "

The job's theme generation settings.

", + "CreateBatchInferenceJobRequest$themeGenerationConfig": "

For theme generation jobs, specify the name of the column in your Items dataset that contains each item's name.

" + } + }, "TooManyTagKeysException": { "base": "

The request contains more tag keys than can be associated with a resource (50 tag keys per resource).

", "refs": { @@ -2029,6 +2053,7 @@ "base": null, "refs": { "CreateEventTrackerResponse$trackingId": "

The ID of the event tracker. Include this ID in requests to the PutEvents API.

", + "Dataset$trackingId": "

The ID of the event tracker for an Action interactions dataset. You specify the tracker's ID in the PutActionInteractions API operation. Amazon Personalize uses it to direct new data to the Action interactions dataset in your dataset group.

", "EventTracker$trackingId": "

The ID of the event tracker. Include this ID in requests to the PutEvents API.

" } }, @@ -2054,7 +2079,7 @@ "TrainingMode": { "base": null, "refs": { - "CreateSolutionVersionRequest$trainingMode": "

The scope of training to be performed when creating the solution version. The FULL option trains the solution version based on the entirety of the input solution's training data, while the UPDATE option processes only the data that has changed in comparison to the input solution. Choose UPDATE when you want to incrementally update your solution version instead of creating an entirely new one.

The UPDATE option can only be used when you already have an active solution version created from the input solution using the FULL option and the input solution was trained with the User-Personalization recipe or the HRNN-Coldstart recipe.

", + "CreateSolutionVersionRequest$trainingMode": "

The scope of training to be performed when creating the solution version. The default is FULL. This creates a completely new model based on the entirety of the training data from the datasets in your dataset group.

If you use User-Personalization, you can specify a training mode of UPDATE. This updates the model to consider new items for recommendations. It is not a full retraining. You should still complete a full retraining weekly. If you specify UPDATE, Amazon Personalize will stop automatic updates for the solution version. To resume updates, create a new solution with training mode set to FULL and deploy it in a campaign. For more information about automatic updates, see Automatic updates.

The UPDATE option can only be used when you already have an active solution version created from the input solution using the FULL option and the input solution was trained with the User-Personalization recipe or the legacy HRNN-Coldstart recipe.

", "SolutionVersion$trainingMode": "

The scope of training to be performed when creating the solution version. The FULL option trains the solution version based on the entirety of the input solution's training data, while the UPDATE option processes only the data that has changed in comparison to the input solution. Choose UPDATE when you want to incrementally update your solution version instead of creating an entirely new one.

The UPDATE option can only be used when you already have an active solution version created from the input solution using the FULL option and the input solution was trained with the User-Personalization recipe or the HRNN-Coldstart recipe.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize/2018-05-22/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize/2018-05-22/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize/2018-05-22/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize/2018-05-22/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://personalize-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://personalize-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://personalize-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://personalize-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://personalize.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://personalize.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://personalize.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://personalize.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,6 +12,32 @@ "uid":"personalize-events-2018-03-22" }, "operations":{ + "PutActionInteractions":{ + "name":"PutActionInteractions", + "http":{ + "method":"POST", + "requestUri":"/action-interactions" + }, + "input":{"shape":"PutActionInteractionsRequest"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceInUseException"} + ] + }, + "PutActions":{ + "name":"PutActions", + "http":{ + "method":"POST", + "requestUri":"/actions" + }, + "input":{"shape":"PutActionsRequest"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceInUseException"} + ] + }, "PutEvents":{ "name":"PutEvents", "http":{ @@ -51,6 +77,76 @@ } }, "shapes":{ + "Action":{ + "type":"structure", + "required":["actionId"], + "members":{ + "actionId":{"shape":"StringType"}, + "properties":{ + "shape":"ActionProperties", + "jsonvalue":true + } + } + }, + "ActionId":{ + "type":"string", + "max":256, + "min":1, + "sensitive":true + }, + "ActionImpression":{ + "type":"list", + "member":{"shape":"ActionId"}, + "max":25, + "min":1 + }, + "ActionInteraction":{ + "type":"structure", + "required":[ + "actionId", + "sessionId", + "timestamp", + "eventType" + ], + "members":{ + "actionId":{"shape":"ActionId"}, + "userId":{"shape":"UserId"}, + "sessionId":{"shape":"StringType"}, + "timestamp":{"shape":"Date"}, + "eventType":{"shape":"StringType"}, + "eventId":{"shape":"StringType"}, + "recommendationId":{"shape":"RecommendationId"}, + "impression":{"shape":"ActionImpression"}, + "properties":{ + "shape":"ActionInteractionProperties", + "jsonvalue":true + } + } + }, + "ActionInteractionProperties":{ + "type":"string", + "max":1024, + "min":1, + "sensitive":true + }, + "ActionInteractionsList":{ + "type":"list", + "member":{"shape":"ActionInteraction"}, + "max":10, + "min":1 + }, + "ActionList":{ + "type":"list", + "member":{"shape":"Action"}, + "max":10, + "min":1 + }, + "ActionProperties":{ + "type":"string", + "max":32000, + "min":1, + "sensitive":true + }, "Arn":{ "type":"string", "max":256, @@ -137,7 +233,7 @@ }, "ItemProperties":{ "type":"string", - "max":24262, + "max":32000, "min":1, "sensitive":true }, @@ -148,6 +244,28 @@ "eventAttributionSource":{"shape":"EventAttributionSource"} } }, + "PutActionInteractionsRequest":{ + "type":"structure", + "required":[ + "trackingId", + "actionInteractions" + ], + "members":{ + "trackingId":{"shape":"StringType"}, + "actionInteractions":{"shape":"ActionInteractionsList"} + } + }, + "PutActionsRequest":{ + "type":"structure", + "required":[ + "datasetArn", + "actions" + ], + "members":{ + "datasetArn":{"shape":"Arn"}, + "actions":{"shape":"ActionList"} + } + }, "PutEventsRequest":{ "type":"structure", "required":[ @@ -235,7 +353,7 @@ }, "UserProperties":{ "type":"string", - "max":4096, + "max":24000, "min":1, "sensitive":true } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,15 +1,67 @@ { "version": "2.0", - "service": "

Amazon Personalize can consume real-time user event data, such as stream or click data, and use it for model training either alone or combined with historical data. For more information see Recording Events.

", + "service": "

Amazon Personalize can consume real-time user event data, such as stream or click data, and use it for model training either alone or combined with historical data. For more information see Recording item interaction events.

", "operations": { - "PutEvents": "

Records user interaction event data. For more information see Recording Events.

", - "PutItems": "

Adds one or more items to an Items dataset. For more information see Importing Items Incrementally.

", - "PutUsers": "

Adds one or more users to a Users dataset. For more information see Importing Users Incrementally.

" + "PutActionInteractions": "

Records action interaction event data. An action interaction event is an interaction between a user and an action. For example, a user taking an action, such a enrolling in a membership program or downloading your app.

For more information about recording action interactions, see Recording action interaction events. For more information about actions in an Actions dataset, see Actions dataset.

", + "PutActions": "

Adds one or more actions to an Actions dataset. For more information see Importing actions individually.

", + "PutEvents": "

Records item interaction event data. For more information see Recording item interaction events.

", + "PutItems": "

Adds one or more items to an Items dataset. For more information see Importing items individually.

", + "PutUsers": "

Adds one or more users to a Users dataset. For more information see Importing users individually.

" }, "shapes": { + "Action": { + "base": "

Represents action metadata added to an Action dataset using the PutActions API. For more information see Importing actions individually.

", + "refs": { + "ActionList$member": null + } + }, + "ActionId": { + "base": null, + "refs": { + "ActionImpression$member": null, + "ActionInteraction$actionId": "

The ID of the action the user interacted with. This corresponds to the ACTION_ID field of the Action interaction schema.

" + } + }, + "ActionImpression": { + "base": null, + "refs": { + "ActionInteraction$impression": "

A list of action IDs that represents the sequence of actions you have shown the user. For example, [\"actionId1\", \"actionId2\", \"actionId3\"]. Amazon Personalize doesn't use impressions data from action interaction events. Instead, record multiple events for each action and use the Viewed event type.

" + } + }, + "ActionInteraction": { + "base": "

Represents an action interaction event sent using the PutActionInteractions API.

", + "refs": { + "ActionInteractionsList$member": null + } + }, + "ActionInteractionProperties": { + "base": null, + "refs": { + "ActionInteraction$properties": "

A string map of event-specific data that you might choose to record. For example, if a user takes an action, other than the action ID, you might also send the number of actions taken by the user.

Each item in the map consists of a key-value pair. For example,

{\"numberOfActions\": \"12\"}

The keys use camel case names that match the fields in the Action interactions schema. In the above example, the numberOfActions would match the 'NUMBER_OF_ACTIONS' field defined in the Action interactions schema.

The following can't be included as a keyword for properties (case insensitive).

  • userId

  • sessionId

  • eventType

  • timestamp

  • recommendationId

  • impression

" + } + }, + "ActionInteractionsList": { + "base": null, + "refs": { + "PutActionInteractionsRequest$actionInteractions": "

A list of action interaction events from the session.

" + } + }, + "ActionList": { + "base": null, + "refs": { + "PutActionsRequest$actions": "

A list of action data.

" + } + }, + "ActionProperties": { + "base": null, + "refs": { + "Action$properties": "

A string map of action-specific metadata. Each element in the map consists of a key-value pair. For example, {\"value\": \"100\"}.

The keys use camel case names that match the fields in the schema for the Actions dataset. In the previous example, the value matches the 'VALUE' field defined in the Actions schema. For categorical string data, to include multiple categories for a single action, separate each category with a pipe separator (|). For example, \\\"Deluxe|Premium\\\".

" + } + }, "Arn": { "base": null, "refs": { + "PutActionsRequest$datasetArn": "

The Amazon Resource Name (ARN) of the Actions dataset you are adding the action or actions to.

", "PutItemsRequest$datasetArn": "

The Amazon Resource Name (ARN) of the Items dataset you are adding the item or items to.

", "PutUsersRequest$datasetArn": "

The Amazon Resource Name (ARN) of the Users dataset you are adding the user or users to.

" } @@ -17,6 +69,7 @@ "Date": { "base": null, "refs": { + "ActionInteraction$timestamp": "

The timestamp for when the action interaction event occurred. Timestamps must be in Unix epoch time format, in seconds.

", "Event$sentAt": "

The timestamp (in Unix time) on the client side when the event occurred.

" } }, @@ -29,7 +82,7 @@ } }, "Event": { - "base": "

Represents user interaction event information sent using the PutEvents API.

", + "base": "

Represents item interaction event information sent using the PutEvents API.

", "refs": { "EventList$member": null } @@ -49,13 +102,13 @@ "EventPropertiesJSON": { "base": null, "refs": { - "Event$properties": "

A string map of event-specific data that you might choose to record. For example, if a user rates a movie on your site, other than movie ID (itemId) and rating (eventValue) , you might also send the number of movie ratings made by the user.

Each item in the map consists of a key-value pair. For example,

{\"numberOfRatings\": \"12\"}

The keys use camel case names that match the fields in the Interactions schema. In the above example, the numberOfRatings would match the 'NUMBER_OF_RATINGS' field defined in the Interactions schema.

" + "Event$properties": "

A string map of event-specific data that you might choose to record. For example, if a user rates a movie on your site, other than movie ID (itemId) and rating (eventValue) , you might also send the number of movie ratings made by the user.

Each item in the map consists of a key-value pair. For example,

{\"numberOfRatings\": \"12\"}

The keys use camel case names that match the fields in the Item interactions dataset's schema. In the above example, the numberOfRatings would match the 'NUMBER_OF_RATINGS' field defined in the Item interactions dataset's schema.

The following can't be included as a keyword for properties (case insensitive).

  • userId

  • sessionId

  • eventType

  • timestamp

  • recommendationId

  • impression

" } }, "FloatType": { "base": null, "refs": { - "Event$eventValue": "

The event value that corresponds to the EVENT_VALUE field of the Interactions schema.

" + "Event$eventValue": "

The event value that corresponds to the EVENT_VALUE field of the Item interactions schema.

" } }, "Impression": { @@ -70,7 +123,7 @@ } }, "Item": { - "base": "

Represents item metadata added to an Items dataset using the PutItems API. For more information see Importing Items Incrementally.

", + "base": "

Represents item metadata added to an Items dataset using the PutItems API. For more information see Importing items individually.

", "refs": { "ItemList$member": null } @@ -78,7 +131,7 @@ "ItemId": { "base": null, "refs": { - "Event$itemId": "

The item ID key that corresponds to the ITEM_ID field of the Interactions schema.

", + "Event$itemId": "

The item ID key that corresponds to the ITEM_ID field of the Item interactions dataset's schema.

", "Impression$member": null } }, @@ -100,6 +153,16 @@ "Event$metricAttribution": "

Contains information about the metric attribution associated with an event. For more information about metric attributions, see Measuring impact of recommendations.

" } }, + "PutActionInteractionsRequest": { + "base": null, + "refs": { + } + }, + "PutActionsRequest": { + "base": null, + "refs": { + } + }, "PutEventsRequest": { "base": null, "refs": { @@ -118,6 +181,7 @@ "RecommendationId": { "base": null, "refs": { + "ActionInteraction$recommendationId": "

The ID of the list of recommendations that contains the action the user interacted with.

", "Event$recommendationId": "

The ID of the list of recommendations that contains the item the user interacted with. Provide a recommendationId to have Amazon Personalize implicitly record the recommendations you show your user as impressions data. Or provide a recommendationId if you use a metric attribution to measure the impact of recommendations.

For more information on recording impressions data, see Recording impressions data. For more information on creating a metric attribution see Measuring impact of recommendations.

" } }, @@ -134,16 +198,21 @@ "StringType": { "base": null, "refs": { - "Event$eventId": "

An ID associated with the event. If an event ID is not provided, Amazon Personalize generates a unique ID for the event. An event ID is not used as an input to the model. Amazon Personalize uses the event ID to distinquish unique events. Any subsequent events after the first with the same event ID are not used in model training.

", - "Event$eventType": "

The type of event, such as click or download. This property corresponds to the EVENT_TYPE field of your Interactions schema and depends on the types of events you are tracking.

", + "Action$actionId": "

The ID associated with the action.

", + "ActionInteraction$sessionId": "

The ID associated with the user's visit. Your application generates a unique sessionId when a user first visits your website or uses your application.

", + "ActionInteraction$eventType": "

The type of action interaction event. You can specify Viewed, Taken, and Not Taken event types. For more information about action interaction event type data, see Event type data.

", + "ActionInteraction$eventId": "

An ID associated with the event. If an event ID is not provided, Amazon Personalize generates a unique ID for the event. An event ID is not used as an input to the model. Amazon Personalize uses the event ID to distinguish unique events. Any subsequent events after the first with the same event ID are not used in model training.

", + "Event$eventId": "

An ID associated with the event. If an event ID is not provided, Amazon Personalize generates a unique ID for the event. An event ID is not used as an input to the model. Amazon Personalize uses the event ID to distinguish unique events. Any subsequent events after the first with the same event ID are not used in model training.

", + "Event$eventType": "

The type of event, such as click or download. This property corresponds to the EVENT_TYPE field of your Item interactions dataset's schema and depends on the types of events you are tracking.

", "Item$itemId": "

The ID associated with the item.

", + "PutActionInteractionsRequest$trackingId": "

The ID of your action interaction event tracker. When you create an Action interactions dataset, Amazon Personalize creates an action interaction event tracker for you. For more information, see Action interaction event tracker ID.

", "PutEventsRequest$trackingId": "

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker API.

", - "PutEventsRequest$sessionId": "

The session ID associated with the user's visit. Your application generates the sessionId when a user first visits your website or uses your application. Amazon Personalize uses the sessionId to associate events with the user before they log in. For more information, see Recording Events.

", + "PutEventsRequest$sessionId": "

The session ID associated with the user's visit. Your application generates the sessionId when a user first visits your website or uses your application. Amazon Personalize uses the sessionId to associate events with the user before they log in. For more information, see Recording item interaction events.

", "User$userId": "

The ID associated with the user.

" } }, "User": { - "base": "

Represents user metadata added to a Users dataset using the PutUsers API. For more information see Importing Users Incrementally.

", + "base": "

Represents user metadata added to a Users dataset using the PutUsers API. For more information see Importing users individually.

", "refs": { "UserList$member": null } @@ -151,6 +220,7 @@ "UserId": { "base": null, "refs": { + "ActionInteraction$userId": "

The ID of the user who interacted with the action. This corresponds to the USER_ID field of the Action interaction schema.

", "PutEventsRequest$userId": "

The user associated with the event.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -32,38 +32,83 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ { - "fn": "parseURL", + "fn": "aws.partition", "argv": [ { - "ref": "Endpoint" + "ref": "Region" } ], - "assign": "url" + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -75,235 +120,195 @@ }, true ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://personalize-events-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "type": "tree" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] - }, + } + ], + "rules": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, - "supportsDualStack" + true ] } - ] - } - ], - "type": "tree", - "rules": [ + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://personalize-events-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://personalize-events-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://personalize-events-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ + true, { - "ref": "PartitionResult" - }, - "supportsDualStack" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } - ] - } - ], - "type": "tree", - "rules": [ + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://personalize-events.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://personalize-events.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://personalize-events.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://personalize-events.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-events/2018-03-22/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-events/2018-03-22/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,16 +1,281 @@ { "testCases": [ { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-events.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { + "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -20,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -32,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -12,6 +12,20 @@ "uid":"personalize-runtime-2018-05-22" }, "operations":{ + "GetActionRecommendations":{ + "name":"GetActionRecommendations", + "http":{ + "method":"POST", + "requestUri":"/action-recommendations" + }, + "input":{"shape":"GetActionRecommendationsRequest"}, + "output":{"shape":"GetActionRecommendationsResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "GetPersonalizedRanking":{ "name":"GetPersonalizedRanking", "http":{ @@ -42,6 +56,14 @@ } }, "shapes":{ + "ActionID":{ + "type":"string", + "max":256 + }, + "ActionList":{ + "type":"list", + "member":{"shape":"PredictedAction"} + }, "Arn":{ "type":"string", "max":256, @@ -57,12 +79,29 @@ "max":1000, "sensitive":true }, + "ColumnName":{ + "type":"string", + "max":150 + }, + "ColumnNamesList":{ + "type":"list", + "member":{"shape":"ColumnName"}, + "max":99 + }, + "ColumnValue":{ + "type":"string", + "max":20000 + }, "Context":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"}, "max":150 }, + "DatasetType":{ + "type":"string", + "max":256 + }, "ErrorMessage":{"type":"string"}, "FilterAttributeName":{ "type":"string", @@ -80,6 +119,23 @@ "value":{"shape":"FilterAttributeValue"}, "max":25 }, + "GetActionRecommendationsRequest":{ + "type":"structure", + "members":{ + "campaignArn":{"shape":"Arn"}, + "userId":{"shape":"UserID"}, + "numResults":{"shape":"NumResults"}, + "filterArn":{"shape":"Arn"}, + "filterValues":{"shape":"FilterValues"} + } + }, + "GetActionRecommendationsResponse":{ + "type":"structure", + "members":{ + "actionList":{"shape":"ActionList"}, + "recommendationId":{"shape":"RecommendationID"} + } + }, "GetPersonalizedRankingRequest":{ "type":"structure", "required":[ @@ -93,7 +149,8 @@ "userId":{"shape":"UserID"}, "context":{"shape":"Context"}, "filterArn":{"shape":"Arn"}, - "filterValues":{"shape":"FilterValues"} + "filterValues":{"shape":"FilterValues"}, + "metadataColumns":{"shape":"MetadataColumns"} } }, "GetPersonalizedRankingResponse":{ @@ -114,7 +171,8 @@ "filterArn":{"shape":"Arn"}, "filterValues":{"shape":"FilterValues"}, "recommenderArn":{"shape":"Arn"}, - "promotions":{"shape":"PromotionList"} + "promotions":{"shape":"PromotionList"}, + "metadataColumns":{"shape":"MetadataColumns"} } }, "GetRecommendationsResponse":{ @@ -144,6 +202,17 @@ "type":"list", "member":{"shape":"PredictedItem"} }, + "Metadata":{ + "type":"map", + "key":{"shape":"ColumnName"}, + "value":{"shape":"ColumnValue"} + }, + "MetadataColumns":{ + "type":"map", + "key":{"shape":"DatasetType"}, + "value":{"shape":"ColumnNamesList"}, + "max":1 + }, "Name":{ "type":"string", "max":63, @@ -159,12 +228,20 @@ "max":100, "min":1 }, + "PredictedAction":{ + "type":"structure", + "members":{ + "actionId":{"shape":"ActionID"}, + "score":{"shape":"Score"} + } + }, "PredictedItem":{ "type":"structure", "members":{ "itemId":{"shape":"ItemID"}, "score":{"shape":"Score"}, - "promotionName":{"shape":"Name"} + "promotionName":{"shape":"Name"}, + "metadata":{"shape":"Metadata"} } }, "Promotion":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,13 +2,28 @@ "version": "2.0", "service": "

", "operations": { + "GetActionRecommendations": "

Returns a list of recommended actions in sorted in descending order by prediction score. Use the GetActionRecommendations API if you have a custom campaign that deploys a solution version trained with a PERSONALIZED_ACTIONS recipe.

For more information about PERSONALIZED_ACTIONS recipes, see PERSONALIZED_ACTIONS recipes. For more information about getting action recommendations, see Getting action recommendations.

", "GetPersonalizedRanking": "

Re-ranks a list of recommended items for the given user. The first item in the list is deemed the most likely item to be of interest to the user.

The solution backing the campaign must have been created using a recipe of type PERSONALIZED_RANKING.

", "GetRecommendations": "

Returns a list of recommended items. For campaigns, the campaign's Amazon Resource Name (ARN) is required and the required user and item input depends on the recipe type used to create the solution backing the campaign as follows:

  • USER_PERSONALIZATION - userId required, itemId not used

  • RELATED_ITEMS - itemId required, userId not used

Campaigns that are backed by a solution created using a recipe of type PERSONALIZED_RANKING use the API.

For recommenders, the recommender's ARN is required and the required item and user input depends on the use case (domain-based recipe) backing the recommender. For information on use case requirements see Choosing recommender use cases.

" }, "shapes": { + "ActionID": { + "base": null, + "refs": { + "PredictedAction$actionId": "

The ID of the recommended action.

" + } + }, + "ActionList": { + "base": null, + "refs": { + "GetActionRecommendationsResponse$actionList": "

A list of action recommendations sorted in descending order by prediction score. There can be a maximum of 100 actions in the list. For information about action scores, see How action recommendation scoring works.

" + } + }, "Arn": { "base": null, "refs": { + "GetActionRecommendationsRequest$campaignArn": "

The Amazon Resource Name (ARN) of the campaign to use for getting action recommendations. This campaign must deploy a solution version trained with a PERSONALIZED_ACTIONS recipe.

", + "GetActionRecommendationsRequest$filterArn": "

The ARN of the filter to apply to the returned recommendations. For more information, see Filtering Recommendations.

When using this parameter, be sure the filter resource is ACTIVE.

", "GetPersonalizedRankingRequest$campaignArn": "

The Amazon Resource Name (ARN) of the campaign to use for generating the personalized ranking.

", "GetPersonalizedRankingRequest$filterArn": "

The Amazon Resource Name (ARN) of a filter you created to include items or exclude items from recommendations for a given user. For more information, see Filtering Recommendations.

", "GetRecommendationsRequest$campaignArn": "

The Amazon Resource Name (ARN) of the campaign to use for getting recommendations.

", @@ -29,6 +44,25 @@ "Context$value": null } }, + "ColumnName": { + "base": null, + "refs": { + "ColumnNamesList$member": null, + "Metadata$key": null + } + }, + "ColumnNamesList": { + "base": null, + "refs": { + "MetadataColumns$value": null + } + }, + "ColumnValue": { + "base": null, + "refs": { + "Metadata$value": null + } + }, "Context": { "base": null, "refs": { @@ -36,6 +70,12 @@ "GetRecommendationsRequest$context": "

The contextual metadata to use when getting recommendations. Contextual metadata includes any interaction information that might be relevant when getting a user's recommendations, such as the user's current location or device type.

" } }, + "DatasetType": { + "base": null, + "refs": { + "MetadataColumns$key": null + } + }, "ErrorMessage": { "base": null, "refs": { @@ -58,11 +98,22 @@ "FilterValues": { "base": null, "refs": { + "GetActionRecommendationsRequest$filterValues": "

The values to use when filtering recommendations. For each placeholder parameter in your filter expression, provide the parameter name (in matching case) as a key and the filter value(s) as the corresponding value. Separate multiple values for one parameter with a comma.

For filter expressions that use an INCLUDE element to include actions, you must provide values for all parameters that are defined in the expression. For filters with expressions that use an EXCLUDE element to exclude actions, you can omit the filter-values. In this case, Amazon Personalize doesn't use that portion of the expression to filter recommendations.

For more information, see Filtering recommendations and user segments.

", "GetPersonalizedRankingRequest$filterValues": "

The values to use when filtering recommendations. For each placeholder parameter in your filter expression, provide the parameter name (in matching case) as a key and the filter value(s) as the corresponding value. Separate multiple values for one parameter with a comma.

For filter expressions that use an INCLUDE element to include items, you must provide values for all parameters that are defined in the expression. For filters with expressions that use an EXCLUDE element to exclude items, you can omit the filter-values.In this case, Amazon Personalize doesn't use that portion of the expression to filter recommendations.

For more information, see Filtering Recommendations.

", "GetRecommendationsRequest$filterValues": "

The values to use when filtering recommendations. For each placeholder parameter in your filter expression, provide the parameter name (in matching case) as a key and the filter value(s) as the corresponding value. Separate multiple values for one parameter with a comma.

For filter expressions that use an INCLUDE element to include items, you must provide values for all parameters that are defined in the expression. For filters with expressions that use an EXCLUDE element to exclude items, you can omit the filter-values.In this case, Amazon Personalize doesn't use that portion of the expression to filter recommendations.

For more information, see Filtering recommendations and user segments.

", "Promotion$filterValues": "

The values to use when promoting items. For each placeholder parameter in your promotion's filter expression, provide the parameter name (in matching case) as a key and the filter value(s) as the corresponding value. Separate multiple values for one parameter with a comma.

For filter expressions that use an INCLUDE element to include items, you must provide values for all parameters that are defined in the expression. For filters with expressions that use an EXCLUDE element to exclude items, you can omit the filter-values. In this case, Amazon Personalize doesn't use that portion of the expression to filter recommendations.

For more information on creating filters, see Filtering recommendations and user segments.

" } }, + "GetActionRecommendationsRequest": { + "base": null, + "refs": { + } + }, + "GetActionRecommendationsResponse": { + "base": null, + "refs": { + } + }, "GetPersonalizedRankingRequest": { "base": null, "refs": { @@ -86,7 +137,7 @@ "InputList": { "base": null, "refs": { - "GetPersonalizedRankingRequest$inputList": "

A list of items (by itemId) to rank. If an item was not included in the training dataset, the item is appended to the end of the reranked list. The maximum is 500.

" + "GetPersonalizedRankingRequest$inputList": "

A list of items (by itemId) to rank. If an item was not included in the training dataset, the item is appended to the end of the reranked list. If you are including metadata in recommendations, the maximum is 50. Otherwise, the maximum is 500.

" } }, "InvalidInputException": { @@ -109,6 +160,19 @@ "GetRecommendationsResponse$itemList": "

A list of recommendations sorted in descending order by prediction score. There can be a maximum of 500 items in the list.

" } }, + "Metadata": { + "base": null, + "refs": { + "PredictedItem$metadata": "

Metadata about the item from your Items dataset.

" + } + }, + "MetadataColumns": { + "base": null, + "refs": { + "GetPersonalizedRankingRequest$metadataColumns": "

If you enabled metadata in recommendations when you created or updated the campaign, specify metadata columns from your Items dataset to include in the personalized ranking. The map key is ITEMS and the value is a list of column names from your Items dataset. The maximum number of columns you can provide is 10.

For information about enabling metadata for a campaign, see Enabling metadata in recommendations for a campaign.

", + "GetRecommendationsRequest$metadataColumns": "

If you enabled metadata in recommendations when you created or updated the campaign or recommender, specify the metadata columns from your Items dataset to include in item recommendations. The map key is ITEMS and the value is a list of column names from your Items dataset. The maximum number of columns you can provide is 10.

For information about enabling metadata for a campaign, see Enabling metadata in recommendations for a campaign. For information about enabling metadata for a recommender, see Enabling metadata in recommendations for a recommender.

" + } + }, "Name": { "base": null, "refs": { @@ -119,7 +183,8 @@ "NumResults": { "base": null, "refs": { - "GetRecommendationsRequest$numResults": "

The number of results to return. The default is 25. The maximum is 500.

" + "GetActionRecommendationsRequest$numResults": "

The number of results to return. The default is 5. The maximum is 100.

", + "GetRecommendationsRequest$numResults": "

The number of results to return. The default is 25. If you are including metadata in recommendations, the maximum is 50. Otherwise, the maximum is 500.

" } }, "PercentPromotedItems": { @@ -128,6 +193,12 @@ "Promotion$percentPromotedItems": "

The percentage of recommended items to apply the promotion to.

" } }, + "PredictedAction": { + "base": "

An object that identifies an action.

The API returns a list of PredictedActions.

", + "refs": { + "ActionList$member": null + } + }, "PredictedItem": { "base": "

An object that identifies an item.

The and APIs return a list of PredictedItems.

", "refs": { @@ -149,6 +220,7 @@ "RecommendationID": { "base": null, "refs": { + "GetActionRecommendationsResponse$recommendationId": "

The ID of the recommendation.

", "GetPersonalizedRankingResponse$recommendationId": "

The ID of the recommendation.

", "GetRecommendationsResponse$recommendationId": "

The ID of the recommendation.

" } @@ -161,12 +233,14 @@ "Score": { "base": null, "refs": { + "PredictedAction$score": "

The score of the recommended action. For information about action scores, see How action recommendation scoring works.

", "PredictedItem$score": "

A numeric representation of the model's certainty that the item will be the next user selection. For more information on scoring logic, see how-scores-work.

" } }, "UserID": { "base": null, "refs": { + "GetActionRecommendationsRequest$userId": "

The user ID of the user to provide action recommendations for.

", "GetPersonalizedRankingRequest$userId": "

The user for which you want the campaign to provide a personalized ranking.

", "GetRecommendationsRequest$userId": "

The user ID to provide recommendations for.

Required for USER_PERSONALIZATION recipe type.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://personalize-runtime-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://personalize-runtime-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://personalize-runtime.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://personalize-runtime.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/personalize-runtime/2018-05-22/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/personalize-runtime/2018-05-22/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://personalize-runtime.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint/2016-12-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint/2016-12-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint/2016-12-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint/2016-12-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -93,7 +93,7 @@ "PhoneNumberValidate": "

Retrieves information about a phone number.

", "PutEventStream": "

Creates a new event stream for an application or updates the settings of an existing event stream for an application.

", "PutEvents": "

Creates a new event to record for endpoints, or creates or updates endpoint data that existing events are associated with.

", - "RemoveAttributes": "

Removes one or more attributes, of the same attribute type, from all the endpoints that are associated with an application.

", + "RemoveAttributes": "

Removes one or more custom attributes, of the same attribute type, from the application. Existing endpoints still have the attributes but Amazon Pinpoint will stop capturing new or changed values for these attributes.

", "SendMessages": "

Creates and sends a direct message.

", "SendOTPMessage": "

Send an OTP message

", "SendUsersMessages": "

Creates and sends a message to a list of users.

", @@ -2269,7 +2269,7 @@ "EndpointBatchItem$Address": "

The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For a push-notification channel, use the token provided by the push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. For the SMS channel, use a phone number in E.164 format, such as +12065550100. For the email channel, use an email address.

", "EndpointBatchItem$EffectiveDate": "

The date and time, in ISO 8601 format, when the endpoint was created or updated.

", "EndpointBatchItem$EndpointStatus": "

Specifies whether to send messages or push notifications to the endpoint. Valid values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

", - "EndpointBatchItem$Id": "

The unique identifier for the endpoint in the context of the batch.

", + "EndpointBatchItem$Id": "

The case insensitive unique identifier for the endpoint in the context of the batch. The identifier can't contain $, { or }.

", "EndpointBatchItem$OptOut": "

Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

", "EndpointBatchItem$RequestId": "

The unique identifier for the request to create or update the endpoint.

", "EndpointDemographic$AppVersion": "

The version of the app that's associated with the endpoint.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,400 +57,365 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://pinpoint-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://pinpoint-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://pinpoint-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseDualStack" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://pinpoint.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], "endpoint": { - "url": "https://pinpoint.us-east-1.amazonaws.com", + "url": "https://pinpoint-fips.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" }, + true + ] + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "us-west-2" + "supportsDualStack" ] } - ], + ] + } + ], + "rules": [ + { + "conditions": [], "endpoint": { - "url": "https://pinpoint.us-west-2.amazonaws.com", + "url": "https://pinpoint.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://pinpoint.us-east-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-west-1" - ] - } - ], - "endpoint": { - "url": "https://pinpoint.us-gov-west-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "us-west-2" + ] + } + ], + "endpoint": { + "url": "https://pinpoint.us-west-2.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://pinpoint.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "us-gov-west-1" + ] + } + ], + "endpoint": { + "url": "https://pinpoint.us-gov-west-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", { - "conditions": [ + "fn": "getAttr", + "argv": [ { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://pinpoint.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://pinpoint.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", { - "conditions": [], - "endpoint": { - "url": "https://pinpoint.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] } ] } - ] + ], + "endpoint": { + "url": "https://pinpoint.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://pinpoint.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -101,6 +101,93 @@ {"shape":"InternalServerException"} ] }, + "CreateRegistration":{ + "name":"CreateRegistration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateRegistrationRequest"}, + "output":{"shape":"CreateRegistrationResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "CreateRegistrationAssociation":{ + "name":"CreateRegistrationAssociation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateRegistrationAssociationRequest"}, + "output":{"shape":"CreateRegistrationAssociationResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "CreateRegistrationAttachment":{ + "name":"CreateRegistrationAttachment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateRegistrationAttachmentRequest"}, + "output":{"shape":"CreateRegistrationAttachmentResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "CreateRegistrationVersion":{ + "name":"CreateRegistrationVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateRegistrationVersionRequest"}, + "output":{"shape":"CreateRegistrationVersionResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "CreateVerifiedDestinationNumber":{ + "name":"CreateVerifiedDestinationNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateVerifiedDestinationNumberRequest"}, + "output":{"shape":"CreateVerifiedDestinationNumberResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "DeleteConfigurationSet":{ "name":"DeleteConfigurationSet", "http":{ @@ -233,6 +320,57 @@ {"shape":"InternalServerException"} ] }, + "DeleteRegistration":{ + "name":"DeleteRegistration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteRegistrationRequest"}, + "output":{"shape":"DeleteRegistrationResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "DeleteRegistrationAttachment":{ + "name":"DeleteRegistrationAttachment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteRegistrationAttachmentRequest"}, + "output":{"shape":"DeleteRegistrationAttachmentResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "DeleteRegistrationFieldValue":{ + "name":"DeleteRegistrationFieldValue", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteRegistrationFieldValueRequest"}, + "output":{"shape":"DeleteRegistrationFieldValueResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "DeleteTextMessageSpendLimitOverride":{ "name":"DeleteTextMessageSpendLimitOverride", "http":{ @@ -248,6 +386,23 @@ {"shape":"InternalServerException"} ] }, + "DeleteVerifiedDestinationNumber":{ + "name":"DeleteVerifiedDestinationNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteVerifiedDestinationNumberRequest"}, + "output":{"shape":"DeleteVerifiedDestinationNumberResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "DeleteVoiceMessageSpendLimitOverride":{ "name":"DeleteVoiceMessageSpendLimitOverride", "http":{ @@ -389,6 +544,115 @@ {"shape":"InternalServerException"} ] }, + "DescribeRegistrationAttachments":{ + "name":"DescribeRegistrationAttachments", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationAttachmentsRequest"}, + "output":{"shape":"DescribeRegistrationAttachmentsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "DescribeRegistrationFieldDefinitions":{ + "name":"DescribeRegistrationFieldDefinitions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationFieldDefinitionsRequest"}, + "output":{"shape":"DescribeRegistrationFieldDefinitionsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "DescribeRegistrationFieldValues":{ + "name":"DescribeRegistrationFieldValues", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationFieldValuesRequest"}, + "output":{"shape":"DescribeRegistrationFieldValuesResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "DescribeRegistrationSectionDefinitions":{ + "name":"DescribeRegistrationSectionDefinitions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationSectionDefinitionsRequest"}, + "output":{"shape":"DescribeRegistrationSectionDefinitionsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "DescribeRegistrationTypeDefinitions":{ + "name":"DescribeRegistrationTypeDefinitions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationTypeDefinitionsRequest"}, + "output":{"shape":"DescribeRegistrationTypeDefinitionsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "DescribeRegistrationVersions":{ + "name":"DescribeRegistrationVersions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationVersionsRequest"}, + "output":{"shape":"DescribeRegistrationVersionsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "DescribeRegistrations":{ + "name":"DescribeRegistrations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRegistrationsRequest"}, + "output":{"shape":"DescribeRegistrationsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "DescribeSenderIds":{ "name":"DescribeSenderIds", "http":{ @@ -420,6 +684,22 @@ {"shape":"InternalServerException"} ] }, + "DescribeVerifiedDestinationNumbers":{ + "name":"DescribeVerifiedDestinationNumbers", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeVerifiedDestinationNumbersRequest"}, + "output":{"shape":"DescribeVerifiedDestinationNumbersResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "DisassociateOriginationIdentity":{ "name":"DisassociateOriginationIdentity", "http":{ @@ -437,6 +717,23 @@ {"shape":"InternalServerException"} ] }, + "DiscardRegistrationVersion":{ + "name":"DiscardRegistrationVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DiscardRegistrationVersionRequest"}, + "output":{"shape":"DiscardRegistrationVersionResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "ListPoolOriginationIdentities":{ "name":"ListPoolOriginationIdentities", "http":{ @@ -453,6 +750,22 @@ {"shape":"InternalServerException"} ] }, + "ListRegistrationAssociations":{ + "name":"ListRegistrationAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRegistrationAssociationsRequest"}, + "output":{"shape":"ListRegistrationAssociationsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -503,6 +816,23 @@ {"shape":"InternalServerException"} ] }, + "PutRegistrationFieldValue":{ + "name":"PutRegistrationFieldValue", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutRegistrationFieldValueRequest"}, + "output":{"shape":"PutRegistrationFieldValueResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "ReleasePhoneNumber":{ "name":"ReleasePhoneNumber", "http":{ @@ -520,6 +850,23 @@ {"shape":"InternalServerException"} ] }, + "ReleaseSenderId":{ + "name":"ReleaseSenderId", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ReleaseSenderIdRequest"}, + "output":{"shape":"ReleaseSenderIdResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "RequestPhoneNumber":{ "name":"RequestPhoneNumber", "http":{ @@ -538,6 +885,41 @@ {"shape":"InternalServerException"} ] }, + "RequestSenderId":{ + "name":"RequestSenderId", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RequestSenderIdRequest"}, + "output":{"shape":"RequestSenderIdResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "SendDestinationNumberVerificationCode":{ + "name":"SendDestinationNumberVerificationCode", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SendDestinationNumberVerificationCodeRequest"}, + "output":{"shape":"SendDestinationNumberVerificationCodeResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "SendTextMessage":{ "name":"SendTextMessage", "http":{ @@ -636,6 +1018,23 @@ {"shape":"InternalServerException"} ] }, + "SubmitRegistrationVersion":{ + "name":"SubmitRegistrationVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SubmitRegistrationVersionRequest"}, + "output":{"shape":"SubmitRegistrationVersionResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -719,6 +1118,39 @@ {"shape":"ConflictException"}, {"shape":"InternalServerException"} ] + }, + "UpdateSenderId":{ + "name":"UpdateSenderId", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSenderIdRequest"}, + "output":{"shape":"UpdateSenderIdResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "VerifyDestinationNumber":{ + "name":"VerifyDestinationNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"VerifyDestinationNumberRequest"}, + "output":{"shape":"VerifyDestinationNumberResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] } }, "shapes":{ @@ -779,7 +1211,11 @@ "PHONE_NUMBERS", "POOLS", "CONFIGURATION_SETS", - "OPT_OUT_LISTS" + "OPT_OUT_LISTS", + "SENDER_IDS", + "REGISTRATIONS", + "REGISTRATION_ATTACHMENTS", + "VERIFIED_DESTINATION_NUMBERS" ] }, "AmazonResourceName":{ @@ -815,6 +1251,30 @@ "IsoCountryCode":{"shape":"IsoCountryCode"} } }, + "AttachmentBody":{ + "type":"blob", + "max":1572864, + "min":1 + }, + "AttachmentStatus":{ + "type":"string", + "enum":[ + "UPLOAD_IN_PROGRESS", + "UPLOAD_COMPLETE", + "UPLOAD_FAILED", + "DELETED" + ] + }, + "AttachmentUploadErrorReason":{ + "type":"string", + "enum":["INTERNAL_ERROR"] + }, + "AttachmentUrl":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"\\S+" + }, "Boolean":{ "type":"boolean", "box":true @@ -914,25 +1374,37 @@ "ConflictExceptionReason":{ "type":"string", "enum":[ + "CREATE_REGISTRATION_VERSION_NOT_ALLOWED", "DELETION_PROTECTION_ENABLED", "DESTINATION_PHONE_NUMBER_NOT_VERIFIED", "DESTINATION_PHONE_NUMBER_OPTED_OUT", + "DISASSOCIATE_REGISTRATION_NOT_ALLOWED", + "DISCARD_REGISTRATION_VERSION_NOT_ALLOWED", + "EDIT_REGISTRATION_FIELD_VALUES_NOT_ALLOWED", "EVENT_DESTINATION_MISMATCH", "KEYWORD_MISMATCH", "LAST_PHONE_NUMBER", - "SELF_MANAGED_OPT_OUTS_MISMATCH", + "NUMBER_CAPABILITIES_MISMATCH", "MESSAGE_TYPE_MISMATCH", "NO_ORIGINATION_IDENTITIES_FOUND", "OPT_OUT_LIST_MISMATCH", "PHONE_NUMBER_ASSOCIATED_TO_POOL", + "PHONE_NUMBER_ASSOCIATED_TO_REGISTRATION", "PHONE_NUMBER_NOT_ASSOCIATED_TO_POOL", "PHONE_NUMBER_NOT_IN_REGISTRATION_REGION", + "REGISTRATION_ALREADY_SUBMITTED", + "REGISTRATION_NOT_COMPLETE", + "SENDER_ID_ASSOCIATED_TO_POOL", "RESOURCE_ALREADY_EXISTS", "RESOURCE_DELETION_NOT_ALLOWED", "RESOURCE_MODIFICATION_NOT_ALLOWED", "RESOURCE_NOT_ACTIVE", "RESOURCE_NOT_EMPTY", - "TWO_WAY_CONFIG_MISMATCH" + "SELF_MANAGED_OPT_OUTS_MISMATCH", + "SUBMIT_REGISTRATION_VERSION_NOT_ALLOWED", + "TWO_WAY_CONFIG_MISMATCH", + "VERIFICATION_CODE_EXPIRED", + "VERIFICATION_ALREADY_COMPLETE" ] }, "ContextKey":{ @@ -952,7 +1424,7 @@ "type":"string", "max":800, "min":1, - "pattern":"\\S+" + "pattern":"(?!\\s)^[\\s\\S]+(?Welcome to the Amazon Pinpoint SMS and Voice, version 2 API Reference. This guide provides information about Amazon Pinpoint SMS and Voice, version 2 API resources, including supported HTTP methods, parameters, and schemas.

Amazon Pinpoint is an Amazon Web Services service that you can use to engage with your recipients across multiple messaging channels. The Amazon Pinpoint SMS and Voice, version 2 API provides programmatic access to options that are unique to the SMS and voice channels and supplements the resources provided by the Amazon Pinpoint API.

If you're new to Amazon Pinpoint, it's also helpful to review the Amazon Pinpoint Developer Guide. The Amazon Pinpoint Developer Guide provides tutorials, code samples, and procedures that demonstrate how to use Amazon Pinpoint features programmatically and how to integrate Amazon Pinpoint functionality into mobile apps and other types of applications. The guide also provides key information, such as Amazon Pinpoint integration with other Amazon Web Services services, and the quotas that apply to use of the service.

", + "service": "

Welcome to the Amazon Pinpoint SMS and Voice, version 2 API Reference. This guide provides information about Amazon Pinpoint SMS and Voice, version 2 API resources, including supported HTTP methods, parameters, and schemas.

Amazon Pinpoint is an Amazon Web Services service that you can use to engage with your recipients across multiple messaging channels. The Amazon Pinpoint SMS and Voice, version 2 API provides programmatic access to options that are unique to the SMS and voice channels and supplements the resources provided by the Amazon Pinpoint API.

If you're new to Amazon Pinpoint, it's also helpful to review the Amazon Pinpoint Developer Guide. The Amazon Pinpoint Developer Guide provides tutorials, code samples, and procedures that demonstrate how to use Amazon Pinpoint features programmatically and how to integrate Amazon Pinpoint functionality into mobile apps and other types of applications. The guide also provides key information, such as Amazon Pinpoint integration with other Amazon Web Services services, and the quotas that apply to use of the service.

Regional availability

The Amazon Pinpoint SMS and Voice, version 2 API Reference is available in several Amazon Web Services Regions and it provides an endpoint for each of these Regions. For a list of all the Regions and endpoints where the API is currently available, see Amazon Web Services Service Endpoints and Amazon Pinpoint endpoints and quotas in the Amazon Web Services General Reference. To learn more about Amazon Web Services Regions, see Managing Amazon Web Services Regions in the Amazon Web Services General Reference.

In each Region, Amazon Web Services maintains multiple Availability Zones. These Availability Zones are physically isolated from each other, but are united by private, low-latency, high-throughput, and highly redundant network connections. These Availability Zones enable us to provide very high levels of availability and redundancy, while also minimizing latency. To learn more about the number of Availability Zones that are available in each Region, see Amazon Web Services Global Infrastructure.

", "operations": { - "AssociateOriginationIdentity": "

Associates the specified origination identity with a pool.

If the origination identity is a phone number and is already associated with another pool, an Error is returned. A sender ID can be associated with multiple pools.

If the origination identity configuration doesn't match the pool's configuration, an Error is returned.

", + "AssociateOriginationIdentity": "

Associates the specified origination identity with a pool.

If the origination identity is a phone number and is already associated with another pool, an error is returned. A sender ID can be associated with multiple pools.

If the origination identity configuration doesn't match the pool's configuration, an error is returned.

", "CreateConfigurationSet": "

Creates a new configuration set. After you create the configuration set, you can add one or more event destinations to it.

A configuration set is a set of rules that you apply to the SMS and voice messages that you send.

When you send a message, you can optionally specify a single configuration set.

", "CreateEventDestination": "

Creates a new event destination in a configuration set.

An event destination is a location where you send message events. The event options are Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon SNS. For example, when a message is delivered successfully, you can send information about that event to an event destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.

Each configuration set can contain between 0 and 5 event destinations. Each event destination can contain a reference to a single destination, such as a CloudWatch or Kinesis Data Firehose destination.

", - "CreateOptOutList": "

Creates a new opt-out list.

If the opt-out list name already exists, an Error is returned.

An opt-out list is a list of phone numbers that are opted out, meaning you can't send SMS or voice messages to them. If end user replies with the keyword \"STOP,\" an entry for the phone number is added to the opt-out list. In addition to STOP, your recipients can use any supported opt-out keyword, such as CANCEL or OPTOUT. For a list of supported opt-out keywords, see SMS opt out in the Amazon Pinpoint User Guide.

", - "CreatePool": "

Creates a new pool and associates the specified origination identity to the pool. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

The new pool inherits its configuration from the specified origination identity. This includes keywords, message type, opt-out list, two-way configuration, and self-managed opt-out configuration. Deletion protection isn't inherited from the origination identity and defaults to false.

If the origination identity is a phone number and is already associated with another pool, an Error is returned. A sender ID can be associated with multiple pools.

", + "CreateOptOutList": "

Creates a new opt-out list.

If the opt-out list name already exists, an error is returned.

An opt-out list is a list of phone numbers that are opted out, meaning you can't send SMS or voice messages to them. If end user replies with the keyword \"STOP,\" an entry for the phone number is added to the opt-out list. In addition to STOP, your recipients can use any supported opt-out keyword, such as CANCEL or OPTOUT. For a list of supported opt-out keywords, see SMS opt out in the Amazon Pinpoint User Guide.

", + "CreatePool": "

Creates a new pool and associates the specified origination identity to the pool. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

The new pool inherits its configuration from the specified origination identity. This includes keywords, message type, opt-out list, two-way configuration, and self-managed opt-out configuration. Deletion protection isn't inherited from the origination identity and defaults to false.

If the origination identity is a phone number and is already associated with another pool, an error is returned. A sender ID can be associated with multiple pools.

", + "CreateRegistration": "

Creates a new registration based on the RegistrationType field.

", + "CreateRegistrationAssociation": "

Associate the registration with an origination identity such as a phone number or sender ID.

", + "CreateRegistrationAttachment": "

Create a new registration attachment to use for uploading a file or a URL to a file. The maximum file size is 1MiB and valid file extensions are PDF, JPEG and PNG. For example, many sender ID registrations require a signed “letter of authorization” (LOA) to be submitted.

", + "CreateRegistrationVersion": "

Create a new version of the registration and increase the VersionNumber. The previous version of the registration becomes read-only.

", + "CreateVerifiedDestinationNumber": "

You can only send messages to verified destination numbers when your account is in the sandbox. You can add up to 10 verified destination numbers.

", "DeleteConfigurationSet": "

Deletes an existing configuration set.

A configuration set is a set of rules that you apply to voice and SMS messages that you send. In a configuration set, you can specify a destination for specific types of events related to voice and SMS messages.

", "DeleteDefaultMessageType": "

Deletes an existing default message type on a configuration set.

A message type is a type of messages that you plan to send. If you send account-related messages or time-sensitive messages such as one-time passcodes, choose Transactional. If you plan to send messages that contain marketing material or other promotional content, choose Promotional. This setting applies to your entire Amazon Web Services account.

", "DeleteDefaultSenderId": "

Deletes an existing default sender ID on a configuration set.

A default sender ID is the identity that appears on recipients' devices when they receive SMS messages. Support for sender ID capabilities varies by country or region.

", "DeleteEventDestination": "

Deletes an existing event destination.

An event destination is a location where you send response information about the messages that you send. For example, when a message is delivered successfully, you can send information about that event to an Amazon CloudWatch destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.

", "DeleteKeyword": "

Deletes an existing keyword from an origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.

Keywords \"HELP\" and \"STOP\" can't be deleted or modified.

", - "DeleteOptOutList": "

Deletes an existing opt-out list. All opted out phone numbers in the opt-out list are deleted.

If the specified opt-out list name doesn't exist or is in-use by an origination phone number or pool, an Error is returned.

", - "DeleteOptedOutNumber": "

Deletes an existing opted out destination phone number from the specified opt-out list.

Each destination phone number can only be deleted once every 30 days.

If the specified destination phone number doesn't exist or if the opt-out list doesn't exist, an Error is returned.

", - "DeletePool": "

Deletes an existing pool. Deleting a pool disassociates all origination identities from that pool.

If the pool status isn't active or if deletion protection is enabled, an Error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

", + "DeleteOptOutList": "

Deletes an existing opt-out list. All opted out phone numbers in the opt-out list are deleted.

If the specified opt-out list name doesn't exist or is in-use by an origination phone number or pool, an error is returned.

", + "DeleteOptedOutNumber": "

Deletes an existing opted out destination phone number from the specified opt-out list.

Each destination phone number can only be deleted once every 30 days.

If the specified destination phone number doesn't exist or if the opt-out list doesn't exist, an error is returned.

", + "DeletePool": "

Deletes an existing pool. Deleting a pool disassociates all origination identities from that pool.

If the pool status isn't active or if deletion protection is enabled, an error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

", + "DeleteRegistration": "

Permanently delete an existing registration from your account.

", + "DeleteRegistrationAttachment": "

Permanently delete the specified registration attachment.

", + "DeleteRegistrationFieldValue": "

Delete the value in a registration form field.

", "DeleteTextMessageSpendLimitOverride": "

Deletes an account-level monthly spending limit override for sending text messages. Deleting a spend limit override will set the EnforcedLimit to equal the MaxLimit, which is controlled by Amazon Web Services. For more information on spend limits (quotas) see Amazon Pinpoint quotas in the Amazon Pinpoint Developer Guide.

", + "DeleteVerifiedDestinationNumber": "

Delete a verified destination phone number.

", "DeleteVoiceMessageSpendLimitOverride": "

Deletes an account level monthly spend limit override for sending voice messages. Deleting a spend limit override sets the EnforcedLimit equal to the MaxLimit, which is controlled by Amazon Web Services. For more information on spending limits (quotas) see Amazon Pinpoint quotas in the Amazon Pinpoint Developer Guide.

", "DescribeAccountAttributes": "

Describes attributes of your Amazon Web Services account. The supported account attributes include account tier, which indicates whether your account is in the sandbox or production environment. When you're ready to move your account out of the sandbox, create an Amazon Web Services Support case for a service limit increase request.

New Amazon Pinpoint accounts are placed into an SMS or voice sandbox. The sandbox protects both Amazon Web Services end recipients and SMS or voice recipients from fraud and abuse.

", "DescribeAccountLimits": "

Describes the current Amazon Pinpoint SMS Voice V2 resource quotas for your account. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value.

When you establish an Amazon Web Services account, the account has initial quotas on the maximum number of configuration sets, opt-out lists, phone numbers, and pools that you can create in a given Region. For more information see Amazon Pinpoint quotas in the Amazon Pinpoint Developer Guide.

", "DescribeConfigurationSets": "

Describes the specified configuration sets or all in your account.

If you specify configuration set names, the output includes information for only the specified configuration sets. If you specify filters, the output includes information for only those configuration sets that meet the filter criteria. If you don't specify configuration set names or filters, the output includes information for all configuration sets.

If you specify a configuration set name that isn't valid, an error is returned.

", - "DescribeKeywords": "

Describes the specified keywords or all keywords on your origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.

If you specify a keyword that isn't valid, an Error is returned.

", - "DescribeOptOutLists": "

Describes the specified opt-out list or all opt-out lists in your account.

If you specify opt-out list names, the output includes information for only the specified opt-out lists. Opt-out lists include only those that meet the filter criteria. If you don't specify opt-out list names or filters, the output includes information for all opt-out lists.

If you specify an opt-out list name that isn't valid, an Error is returned.

", - "DescribeOptedOutNumbers": "

Describes the specified opted out destination numbers or all opted out destination numbers in an opt-out list.

If you specify opted out numbers, the output includes information for only the specified opted out numbers. If you specify filters, the output includes information for only those opted out numbers that meet the filter criteria. If you don't specify opted out numbers or filters, the output includes information for all opted out destination numbers in your opt-out list.

If you specify an opted out number that isn't valid, an Error is returned.

", - "DescribePhoneNumbers": "

Describes the specified origination phone number, or all the phone numbers in your account.

If you specify phone number IDs, the output includes information for only the specified phone numbers. If you specify filters, the output includes information for only those phone numbers that meet the filter criteria. If you don't specify phone number IDs or filters, the output includes information for all phone numbers.

If you specify a phone number ID that isn't valid, an Error is returned.

", - "DescribePools": "

Retrieves the specified pools or all pools associated with your Amazon Web Services account.

If you specify pool IDs, the output includes information for only the specified pools. If you specify filters, the output includes information for only those pools that meet the filter criteria. If you don't specify pool IDs or filters, the output includes information for all pools.

If you specify a pool ID that isn't valid, an Error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

", - "DescribeSenderIds": "

Describes the specified SenderIds or all SenderIds associated with your Amazon Web Services account.

If you specify SenderIds, the output includes information for only the specified SenderIds. If you specify filters, the output includes information for only those SenderIds that meet the filter criteria. If you don't specify SenderIds or filters, the output includes information for all SenderIds.

f you specify a sender ID that isn't valid, an Error is returned.

", + "DescribeKeywords": "

Describes the specified keywords or all keywords on your origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.

If you specify a keyword that isn't valid, an error is returned.

", + "DescribeOptOutLists": "

Describes the specified opt-out list or all opt-out lists in your account.

If you specify opt-out list names, the output includes information for only the specified opt-out lists. Opt-out lists include only those that meet the filter criteria. If you don't specify opt-out list names or filters, the output includes information for all opt-out lists.

If you specify an opt-out list name that isn't valid, an error is returned.

", + "DescribeOptedOutNumbers": "

Describes the specified opted out destination numbers or all opted out destination numbers in an opt-out list.

If you specify opted out numbers, the output includes information for only the specified opted out numbers. If you specify filters, the output includes information for only those opted out numbers that meet the filter criteria. If you don't specify opted out numbers or filters, the output includes information for all opted out destination numbers in your opt-out list.

If you specify an opted out number that isn't valid, an error is returned.

", + "DescribePhoneNumbers": "

Describes the specified origination phone number, or all the phone numbers in your account.

If you specify phone number IDs, the output includes information for only the specified phone numbers. If you specify filters, the output includes information for only those phone numbers that meet the filter criteria. If you don't specify phone number IDs or filters, the output includes information for all phone numbers.

If you specify a phone number ID that isn't valid, an error is returned.

", + "DescribePools": "

Retrieves the specified pools or all pools associated with your Amazon Web Services account.

If you specify pool IDs, the output includes information for only the specified pools. If you specify filters, the output includes information for only those pools that meet the filter criteria. If you don't specify pool IDs or filters, the output includes information for all pools.

If you specify a pool ID that isn't valid, an error is returned.

A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.

", + "DescribeRegistrationAttachments": "

Retrieves the specified registration attachments or all registration attachments associated with your Amazon Web Services account.

", + "DescribeRegistrationFieldDefinitions": "

Retrieves the specified registration type field definitions. You can use DescribeRegistrationFieldDefinitions to view the requirements for creating, filling out, and submitting each registration type.

", + "DescribeRegistrationFieldValues": "

Retrieves the specified registration field values.

", + "DescribeRegistrationSectionDefinitions": "

Retrieves the specified registration section definitions. You can use DescribeRegistrationSectionDefinitions to view the requirements for creating, filling out, and submitting each registration type.

", + "DescribeRegistrationTypeDefinitions": "

Retrieves the specified registration type definitions. You can use DescribeRegistrationTypeDefinitions to view the requirements for creating, filling out, and submitting each registration type.

", + "DescribeRegistrationVersions": "

Retrieves the specified registration version.

", + "DescribeRegistrations": "

Retrieves the specified registrations.

", + "DescribeSenderIds": "

Describes the specified SenderIds or all SenderIds associated with your Amazon Web Services account.

If you specify SenderIds, the output includes information for only the specified SenderIds. If you specify filters, the output includes information for only those SenderIds that meet the filter criteria. If you don't specify SenderIds or filters, the output includes information for all SenderIds.

f you specify a sender ID that isn't valid, an error is returned.

", "DescribeSpendLimits": "

Describes the current Amazon Pinpoint monthly spend limits for sending voice and text messages.

When you establish an Amazon Web Services account, the account has initial monthly spend limit in a given Region. For more information on increasing your monthly spend limit, see Requesting increases to your monthly SMS spending quota for Amazon Pinpoint in the Amazon Pinpoint User Guide.

", - "DisassociateOriginationIdentity": "

Removes the specified origination identity from an existing pool.

If the origination identity isn't associated with the specified pool, an Error is returned.

", + "DescribeVerifiedDestinationNumbers": "

Retrieves the specified verified destiona numbers.

", + "DisassociateOriginationIdentity": "

Removes the specified origination identity from an existing pool.

If the origination identity isn't associated with the specified pool, an error is returned.

", + "DiscardRegistrationVersion": "

Discard the current version of the registration.

", "ListPoolOriginationIdentities": "

Lists all associated origination identities in your pool.

If you specify filters, the output includes information for only those origination identities that meet the filter criteria.

", + "ListRegistrationAssociations": "

Retreive all of the origination identies that are associated with a registration.

", "ListTagsForResource": "

List all tags associated with a resource.

", - "PutKeyword": "

Creates or updates a keyword configuration on an origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.

If you specify a keyword that isn't valid, an Error is returned.

", - "PutOptedOutNumber": "

Creates an opted out destination phone number in the opt-out list.

If the destination phone number isn't valid or if the specified opt-out list doesn't exist, an Error is returned.

", - "ReleasePhoneNumber": "

Releases an existing origination phone number in your account. Once released, a phone number is no longer available for sending messages.

If the origination phone number has deletion protection enabled or is associated with a pool, an Error is returned.

", + "PutKeyword": "

Creates or updates a keyword configuration on an origination phone number or pool.

A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.

If you specify a keyword that isn't valid, an error is returned.

", + "PutOptedOutNumber": "

Creates an opted out destination phone number in the opt-out list.

If the destination phone number isn't valid or if the specified opt-out list doesn't exist, an error is returned.

", + "PutRegistrationFieldValue": "

Creates or updates a field value for a registration.

", + "ReleasePhoneNumber": "

Releases an existing origination phone number in your account. Once released, a phone number is no longer available for sending messages.

If the origination phone number has deletion protection enabled or is associated with a pool, an error is returned.

", + "ReleaseSenderId": "

Releases an existing sender ID in your account.

", "RequestPhoneNumber": "

Request an origination phone number for use in your account. For more information on phone number request see Requesting a number in the Amazon Pinpoint User Guide.

", + "RequestSenderId": "

Request a new sender ID that doesn't require registration.

", + "SendDestinationNumberVerificationCode": "

Before you can send test messages to a verified destination phone number you need to opt-in the verified destination phone number. Creates a new text message with a verification code and send it to a verified destination phone number. Once you have the verification code use VerifyDestinationNumber to opt-in the verified destination phone number to receive messages.

", "SendTextMessage": "

Creates a new text message and sends it to a recipient's phone number.

SMS throughput limits are measured in Message Parts per Second (MPS). Your MPS limit depends on the destination country of your messages, as well as the type of phone number (origination number) that you use to send the message. For more information, see Message Parts per Second (MPS) limits in the Amazon Pinpoint User Guide.

", - "SendVoiceMessage": "

Allows you to send a request that sends a text message through Amazon Pinpoint. This operation uses Amazon Polly to convert a text script into a voice message.

", + "SendVoiceMessage": "

Allows you to send a request that sends a voice message through Amazon Pinpoint. This operation uses Amazon Polly to convert a text script into a voice message.

", "SetDefaultMessageType": "

Sets the default message type on a configuration set.

Choose the category of SMS messages that you plan to send from this account. If you send account-related messages or time-sensitive messages such as one-time passcodes, choose Transactional. If you plan to send messages that contain marketing material or other promotional content, choose Promotional. This setting applies to your entire Amazon Web Services account.

", "SetDefaultSenderId": "

Sets default sender ID on a configuration set.

When sending a text message to a destination country that supports sender IDs, the default sender ID on the configuration set specified will be used if no dedicated origination phone numbers or registered sender IDs are available in your account.

", "SetTextMessageSpendLimitOverride": "

Sets an account level monthly spend limit override for sending text messages. The requested spend limit must be less than or equal to the MaxLimit, which is set by Amazon Web Services.

", "SetVoiceMessageSpendLimitOverride": "

Sets an account level monthly spend limit override for sending voice messages. The requested spend limit must be less than or equal to the MaxLimit, which is set by Amazon Web Services.

", + "SubmitRegistrationVersion": "

Submit the specified registration for review and approval.

", "TagResource": "

Adds or overwrites only the specified tags for the specified Amazon Pinpoint SMS Voice, version 2 resource. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and an optional value. Tag keys must be unique per resource. For more information about tags, see Tagging Amazon Pinpoint resources in the Amazon Pinpoint Developer Guide.

", "UntagResource": "

Removes the association of the specified tags from an Amazon Pinpoint SMS Voice V2 resource. For more information on tags see Tagging Amazon Pinpoint resources in the Amazon Pinpoint Developer Guide.

", "UpdateEventDestination": "

Updates an existing event destination in a configuration set. You can update the IAM role ARN for CloudWatch Logs and Kinesis Data Firehose. You can also enable or disable the event destination.

You may want to update an event destination to change its matching event types or updating the destination resource ARN. You can't change an event destination's type between CloudWatch Logs, Kinesis Data Firehose, and Amazon SNS.

", - "UpdatePhoneNumber": "

Updates the configuration of an existing origination phone number. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, and enable or disable deletion protection.

If the origination phone number is associated with a pool, an Error is returned.

", - "UpdatePool": "

Updates the configuration of an existing pool. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, enable or disable deletion protection, and enable or disable shared routes.

" + "UpdatePhoneNumber": "

Updates the configuration of an existing origination phone number. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, and enable or disable deletion protection.

If the origination phone number is associated with a pool, an error is returned.

", + "UpdatePool": "

Updates the configuration of an existing pool. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, enable or disable deletion protection, and enable or disable shared routes.

", + "UpdateSenderId": "

Updates the configuration of an existing sender ID.

", + "VerifyDestinationNumber": "

Use the verification code that was received by the verified destination phone number to opt-in the verified destination phone number to receive more messages.

" }, "shapes": { "AccessDeniedException": { @@ -113,12 +139,40 @@ "refs": { } }, + "AttachmentBody": { + "base": null, + "refs": { + "CreateRegistrationAttachmentRequest$AttachmentBody": "

The registration file to upload. The maximum file size is 1MiB and valid file extensions are PDF, JPEG and PNG.

" + } + }, + "AttachmentStatus": { + "base": null, + "refs": { + "CreateRegistrationAttachmentResult$AttachmentStatus": "

The status of the registration attachment.

  • UPLOAD_IN_PROGRESS The attachment is being uploaded.

  • UPLOAD_COMPLETE The attachment has been uploaded.

  • UPLOAD_FAILED The attachment failed to uploaded.

  • DELETED The attachment has been deleted..

", + "DeleteRegistrationAttachmentResult$AttachmentStatus": "

The status of the registration attachment.

  • UPLOAD_IN_PROGRESS The attachment is being uploaded.

  • UPLOAD_COMPLETE The attachment has been uploaded.

  • UPLOAD_FAILED The attachment failed to uploaded.

  • DELETED The attachment has been deleted..

", + "RegistrationAttachmentsInformation$AttachmentStatus": "

The status of the registration attachment.

  • UPLOAD_IN_PROGRESS The attachment is being uploaded.

  • UPLOAD_COMPLETE The attachment has been uploaded.

  • UPLOAD_FAILED The attachment failed to uploaded.

  • DELETED The attachment has been deleted..

" + } + }, + "AttachmentUploadErrorReason": { + "base": null, + "refs": { + "DeleteRegistrationAttachmentResult$AttachmentUploadErrorReason": "

The error message if the upload failed.

", + "RegistrationAttachmentsInformation$AttachmentUploadErrorReason": "

A description of why the upload didn't successfully complete.

" + } + }, + "AttachmentUrl": { + "base": null, + "refs": { + "CreateRegistrationAttachmentRequest$AttachmentUrl": "

A URL to the required registration file. For example, you can provide the S3 object URL.

" + } + }, "Boolean": { "base": null, "refs": { "CreatePoolRequest$DeletionProtectionEnabled": "

By default this is set to false. When set to true the pool can't be deleted. You can change this value using the UpdatePool action.

", "EventDestination$Enabled": "

When set to true events will be logged.

", "RequestPhoneNumberRequest$DeletionProtectionEnabled": "

By default this is set to false. When set to true the phone number can't be deleted.

", + "RequestSenderIdRequest$DeletionProtectionEnabled": "

By default this is set to false. When set to true the sender ID can't be deleted.

", "UpdateEventDestinationRequest$Enabled": "

When set to true logging is enabled.

", "UpdatePhoneNumberRequest$TwoWayEnabled": "

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

", "UpdatePhoneNumberRequest$SelfManagedOptOutsEnabled": "

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

", @@ -126,7 +180,8 @@ "UpdatePoolRequest$TwoWayEnabled": "

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

", "UpdatePoolRequest$SelfManagedOptOutsEnabled": "

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

", "UpdatePoolRequest$SharedRoutesEnabled": "

Indicates whether shared routes are enabled for the pool.

", - "UpdatePoolRequest$DeletionProtectionEnabled": "

When set to true the pool can't be deleted.

" + "UpdatePoolRequest$DeletionProtectionEnabled": "

When set to true the pool can't be deleted.

", + "UpdateSenderIdRequest$DeletionProtectionEnabled": "

By default this is set to false. When set to true the sender ID can't be deleted.

" } }, "ClientToken": { @@ -137,8 +192,12 @@ "CreateEventDestinationRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", "CreateOptOutListRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", "CreatePoolRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", + "CreateRegistrationAttachmentRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", + "CreateRegistrationRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", + "CreateVerifiedDestinationNumberRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", "DisassociateOriginationIdentityRequest$ClientToken": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", - "RequestPhoneNumberRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

" + "RequestPhoneNumberRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

", + "RequestSenderIdRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

" } }, "CloudWatchLogsDestination": { @@ -210,6 +269,7 @@ "DeleteDefaultMessageTypeRequest$ConfigurationSetName": "

The name of the configuration set or the configuration set Amazon Resource Name (ARN) to delete the default message type from. The ConfigurationSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

", "DeleteDefaultSenderIdRequest$ConfigurationSetName": "

The name of the configuration set or the configuration set Amazon Resource Name (ARN) to delete the default sender ID from. The ConfigurationSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

", "DeleteEventDestinationRequest$ConfigurationSetName": "

The name of the configuration set or the configuration set's Amazon Resource Name (ARN) to remove the event destination from. The ConfigurateSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

", + "SendDestinationNumberVerificationCodeRequest$ConfigurationSetName": "

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

", "SendTextMessageRequest$ConfigurationSetName": "

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

", "SendVoiceMessageRequest$ConfigurationSetName": "

The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.

", "SetDefaultMessageTypeRequest$ConfigurationSetName": "

The configuration set to update with a new default message type. This field can be the ConsigurationSetName or ConfigurationSetArn.

", @@ -237,6 +297,7 @@ "ContextMap": { "base": null, "refs": { + "SendDestinationNumberVerificationCodeRequest$Context": "

You can specify custom data in this field. If you do, that data is logged to the event destination.

", "SendTextMessageRequest$Context": "

You can specify custom data in this field. If you do, that data is logged to the event destination.

", "SendVoiceMessageRequest$Context": "

You can specify custom data in this field. If you do, that data is logged to the event destination.

" } @@ -287,6 +348,56 @@ "refs": { } }, + "CreateRegistrationAssociationRequest": { + "base": null, + "refs": { + } + }, + "CreateRegistrationAssociationResult": { + "base": null, + "refs": { + } + }, + "CreateRegistrationAttachmentRequest": { + "base": null, + "refs": { + } + }, + "CreateRegistrationAttachmentResult": { + "base": null, + "refs": { + } + }, + "CreateRegistrationRequest": { + "base": null, + "refs": { + } + }, + "CreateRegistrationResult": { + "base": null, + "refs": { + } + }, + "CreateRegistrationVersionRequest": { + "base": null, + "refs": { + } + }, + "CreateRegistrationVersionResult": { + "base": null, + "refs": { + } + }, + "CreateVerifiedDestinationNumberRequest": { + "base": null, + "refs": { + } + }, + "CreateVerifiedDestinationNumberResult": { + "base": null, + "refs": { + } + }, "DeleteConfigurationSetRequest": { "base": null, "refs": { @@ -367,6 +478,36 @@ "refs": { } }, + "DeleteRegistrationAttachmentRequest": { + "base": null, + "refs": { + } + }, + "DeleteRegistrationAttachmentResult": { + "base": null, + "refs": { + } + }, + "DeleteRegistrationFieldValueRequest": { + "base": null, + "refs": { + } + }, + "DeleteRegistrationFieldValueResult": { + "base": null, + "refs": { + } + }, + "DeleteRegistrationRequest": { + "base": null, + "refs": { + } + }, + "DeleteRegistrationResult": { + "base": null, + "refs": { + } + }, "DeleteTextMessageSpendLimitOverrideRequest": { "base": null, "refs": { @@ -377,6 +518,16 @@ "refs": { } }, + "DeleteVerifiedDestinationNumberRequest": { + "base": null, + "refs": { + } + }, + "DeleteVerifiedDestinationNumberResult": { + "base": null, + "refs": { + } + }, "DeleteVoiceMessageSpendLimitOverrideRequest": { "base": null, "refs": { @@ -473,6 +624,76 @@ "refs": { } }, + "DescribeRegistrationAttachmentsRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationAttachmentsResult": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationFieldDefinitionsRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationFieldDefinitionsResult": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationFieldValuesRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationFieldValuesResult": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationSectionDefinitionsRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationSectionDefinitionsResult": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationTypeDefinitionsRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationTypeDefinitionsResult": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationVersionsRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationVersionsResult": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeRegistrationsResult": { + "base": null, + "refs": { + } + }, "DescribeSenderIdsRequest": { "base": null, "refs": { @@ -493,6 +714,16 @@ "refs": { } }, + "DescribeVerifiedDestinationNumbersRequest": { + "base": null, + "refs": { + } + }, + "DescribeVerifiedDestinationNumbersResult": { + "base": null, + "refs": { + } + }, "DestinationCountryParameterKey": { "base": null, "refs": { @@ -508,9 +739,16 @@ "DestinationCountryParameters": { "base": null, "refs": { + "SendDestinationNumberVerificationCodeRequest$DestinationCountryParameters": "

This field is used for any country-specific registration requirements. Currently, this setting is only used when you send messages to recipients in India using a sender ID. For more information see Special requirements for sending SMS messages to recipients in India.

", "SendTextMessageRequest$DestinationCountryParameters": "

This field is used for any country-specific registration requirements. Currently, this setting is only used when you send messages to recipients in India using a sender ID. For more information see Special requirements for sending SMS messages to recipients in India.

" } }, + "DestinationPhoneNumberList": { + "base": null, + "refs": { + "DescribeVerifiedDestinationNumbersRequest$DestinationPhoneNumbers": "

An array of verified destination phone number, in E.164 format.

" + } + }, "DisassociateOriginationIdentityRequest": { "base": null, "refs": { @@ -521,8 +759,18 @@ "refs": { } }, + "DiscardRegistrationVersionRequest": { + "base": null, + "refs": { + } + }, + "DiscardRegistrationVersionResult": { + "base": null, + "refs": { + } + }, "EventDestination": { - "base": "

Contains information about an event destination.

Event destinations are associated with configuration sets, which enable you to publish message sending events to Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon SNS.

", + "base": "

Contains information about an event destination.

Event destinations are associated with configuration sets, which enable you to publish message sending events to CloudWatch, Kinesis Data Firehose,or Amazon SNS.

", "refs": { "CreateEventDestinationResult$EventDestination": "

The details of the destination where events are logged.

", "DeleteEventDestinationResult$EventDestination": "

The event destination object that was deleted.

", @@ -555,9 +803,40 @@ "EventTypeList": { "base": null, "refs": { - "CreateEventDestinationRequest$MatchingEventTypes": "

An array of event types that determine which events to log. If \"ALL\" is used, then Amazon Pinpoint logs every event type.

", - "EventDestination$MatchingEventTypes": "

An array of event types that determine which events to log.

", - "UpdateEventDestinationRequest$MatchingEventTypes": "

An array of event types that determine which events to log.

" + "CreateEventDestinationRequest$MatchingEventTypes": "

An array of event types that determine which events to log. If \"ALL\" is used, then Amazon Pinpoint logs every event type.

The TEXT_SENT event type is not supported.

", + "EventDestination$MatchingEventTypes": "

An array of event types that determine which events to log.

The TEXT_SENT event type is not supported.

", + "UpdateEventDestinationRequest$MatchingEventTypes": "

An array of event types that determine which events to log.

The TEXT_SENT event type is not supported.

" + } + }, + "FieldPath": { + "base": null, + "refs": { + "DeleteRegistrationFieldValueRequest$FieldPath": "

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

", + "DeleteRegistrationFieldValueResult$FieldPath": "

The path to the registration form field.

", + "FieldPathList$member": null, + "PutRegistrationFieldValueRequest$FieldPath": "

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

", + "PutRegistrationFieldValueResult$FieldPath": "

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

", + "RegistrationFieldDefinition$FieldPath": "

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

", + "RegistrationFieldValueInformation$FieldPath": "

The path to the registration form field. You can use DescribeRegistrationFieldDefinitions for a list of FieldPaths.

" + } + }, + "FieldPathList": { + "base": null, + "refs": { + "DescribeRegistrationFieldDefinitionsRequest$FieldPaths": "

An array of paths to the registration form field.

", + "DescribeRegistrationFieldValuesRequest$FieldPaths": "

An array of paths to the registration form field.

" + } + }, + "FieldRequirement": { + "base": null, + "refs": { + "RegistrationFieldDefinition$FieldRequirement": "

Specifies if the field for the registration form is required, conditional or optional.

" + } + }, + "FieldType": { + "base": null, + "refs": { + "RegistrationFieldDefinition$FieldType": "

The type of field.

" } }, "FilterValue": { @@ -575,14 +854,39 @@ "PhoneNumberFilter$Values": "

An array values to filter for.

", "PoolFilter$Values": "

An array values to filter for.

", "PoolOriginationIdentitiesFilter$Values": "

An array values to filter for.

", - "SenderIdFilter$Values": "

An array of values to filter for.

" + "RegistrationAssociationFilter$Values": "

An array of values to filter for.

", + "RegistrationAttachmentFilter$Values": "

An array of values to filter on.

", + "RegistrationFilter$Values": "

An array of values to filter on.

", + "RegistrationTypeFilter$Values": "

An array of values to filter on.

", + "RegistrationVersionFilter$Values": "

An array of values to filter on.

", + "SenderIdFilter$Values": "

An array of values to filter for.

", + "VerifiedDestinationNumberFilter$Values": "

An array of values to filter on.

" } }, "IamRoleArn": { "base": null, "refs": { "CloudWatchLogsDestination$IamRoleArn": "

The Amazon Resource Name (ARN) of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon CloudWatch destination.

", - "KinesisFirehoseDestination$IamRoleArn": "

The ARN of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon Firehose destination.

" + "CreatePoolResult$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "DeletePoolResult$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "KinesisFirehoseDestination$IamRoleArn": "

The ARN of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon Firehose destination.

", + "PhoneNumberInformation$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "PoolInformation$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "ReleasePhoneNumberResult$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "RequestPhoneNumberResult$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "UpdatePhoneNumberRequest$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "UpdatePhoneNumberResult$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "UpdatePoolRequest$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

", + "UpdatePoolResult$TwoWayChannelRole": "

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

" + } + }, + "Integer": { + "base": null, + "refs": { + "SelectValidation$MinChoices": "

The minimum number of choices for the select.

", + "SelectValidation$MaxChoices": "

The maximum number of choices for the select.

", + "TextValidation$MinLength": "

The minimum number of characters for the text field.

", + "TextValidation$MaxLength": "

The maximum number of characters for the text field.

" } }, "InternalServerException": { @@ -596,16 +900,25 @@ "AssociateOriginationIdentityRequest$IsoCountryCode": "

The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region of the origination identity.

", "AssociateOriginationIdentityResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "CreatePoolRequest$IsoCountryCode": "

The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region of the new pool.

", + "CreateRegistrationAssociationResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "DisassociateOriginationIdentityRequest$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "DisassociateOriginationIdentityResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "OriginationIdentityMetadata$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "PhoneNumberInformation$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "RegistrationAssociationMetadata$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "ReleasePhoneNumberResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "ReleaseSenderIdRequest$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "ReleaseSenderIdResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "RequestPhoneNumberRequest$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "RequestPhoneNumberResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "RequestSenderIdRequest$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "RequestSenderIdResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "SenderIdAndCountry$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", "SenderIdInformation$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", - "UpdatePhoneNumberResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

" + "SupportedAssociation$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "UpdatePhoneNumberResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "UpdateSenderIdRequest$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

", + "UpdateSenderIdResult$IsoCountryCode": "

The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.

" } }, "Keyword": { @@ -625,7 +938,7 @@ "refs": { "DeleteKeywordResult$KeywordAction": "

The action that was associated with the deleted keyword.

", "KeywordInformation$KeywordAction": "

The action to perform for the keyword.

", - "PutKeywordRequest$KeywordAction": "

The action to perform for the new keyword when it is received.

", + "PutKeywordRequest$KeywordAction": "

The action to perform for the new keyword when it is received.

  • AUTOMATIC_RESPONSE: A message is sent to the recipient.

  • OPT_OUT: Keeps the recipient from receiving future messages.

  • OPT_IN: The recipient wants to receive future messages.

", "PutKeywordResult$KeywordAction": "

The action to perform when the keyword is used.

" } }, @@ -670,7 +983,7 @@ "refs": { "DeleteKeywordResult$KeywordMessage": "

The message that was associated with the deleted keyword.

", "KeywordInformation$KeywordMessage": "

A custom message that can be used with the keyword.

", - "PutKeywordRequest$KeywordMessage": "

The message associated with the keyword.

  • AUTOMATIC_RESPONSE: A message is sent to the recipient.

  • OPT_OUT: Keeps the recipient from receiving future messages.

  • OPT_IN: The recipient wants to receive future messages.

", + "PutKeywordRequest$KeywordMessage": "

The message associated with the keyword.

", "PutKeywordResult$KeywordMessage": "

The message associated with the keyword.

" } }, @@ -682,6 +995,12 @@ "UpdateEventDestinationRequest$KinesisFirehoseDestination": "

An object that contains information about an event destination for logging to Kinesis Data Firehose.

" } }, + "LanguageCode": { + "base": null, + "refs": { + "SendDestinationNumberVerificationCodeRequest$LanguageCode": "

Choose the language to use for the message.

" + } + }, "ListPoolOriginationIdentitiesRequest": { "base": null, "refs": { @@ -692,6 +1011,16 @@ "refs": { } }, + "ListRegistrationAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListRegistrationAssociationsResult": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -726,9 +1055,18 @@ "DescribeOptedOutNumbersRequest$MaxResults": "

The maximum number of results to return per each request.

", "DescribePhoneNumbersRequest$MaxResults": "

The maximum number of results to return per each request.

", "DescribePoolsRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationAttachmentsRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationFieldDefinitionsRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationFieldValuesRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationSectionDefinitionsRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationTypeDefinitionsRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationVersionsRequest$MaxResults": "

The maximum number of results to return per each request.

", + "DescribeRegistrationsRequest$MaxResults": "

The maximum number of results to return per each request.

", "DescribeSenderIdsRequest$MaxResults": "

The maximum number of results to return per each request.

", "DescribeSpendLimitsRequest$MaxResults": "

The maximum number of results to return per each request.

", - "ListPoolOriginationIdentitiesRequest$MaxResults": "

The maximum number of results to return per each request.

" + "DescribeVerifiedDestinationNumbersRequest$MaxResults": "

The maximum number of results to return per each request.

", + "ListPoolOriginationIdentitiesRequest$MaxResults": "

The maximum number of results to return per each request.

", + "ListRegistrationAssociationsRequest$MaxResults": "

The maximum number of results to return per each request.

" } }, "MessageType": { @@ -746,7 +1084,7 @@ "ReleasePhoneNumberResult$MessageType": "

The message type that was associated with the phone number.

", "RequestPhoneNumberRequest$MessageType": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", "RequestPhoneNumberResult$MessageType": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", - "SendTextMessageRequest$MessageType": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", + "SendTextMessageRequest$MessageType": "

The type of message. Valid values are for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", "SetDefaultMessageTypeRequest$MessageType": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", "SetDefaultMessageTypeResult$MessageType": "

The new default message type of the configuration set.

", "UpdatePhoneNumberResult$MessageType": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", @@ -756,7 +1094,11 @@ "MessageTypeList": { "base": null, "refs": { - "SenderIdInformation$MessageTypes": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

" + "ReleaseSenderIdResult$MessageTypes": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", + "RequestSenderIdRequest$MessageTypes": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", + "RequestSenderIdResult$MessageTypes": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", + "SenderIdInformation$MessageTypes": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

", + "UpdateSenderIdResult$MessageTypes": "

The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.

" } }, "MonthlyLimit": { @@ -789,12 +1131,30 @@ "DescribePhoneNumbersResult$NextToken": "

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

", "DescribePoolsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", "DescribePoolsResult$NextToken": "

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

", + "DescribeRegistrationAttachmentsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationAttachmentsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationFieldDefinitionsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationFieldDefinitionsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationFieldValuesRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationFieldValuesResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationSectionDefinitionsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationSectionDefinitionsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationTypeDefinitionsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationTypeDefinitionsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationVersionsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationVersionsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeRegistrationsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", "DescribeSenderIdsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", "DescribeSenderIdsResult$NextToken": "

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

", "DescribeSpendLimitsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", "DescribeSpendLimitsResult$NextToken": "

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

", + "DescribeVerifiedDestinationNumbersRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "DescribeVerifiedDestinationNumbersResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", "ListPoolOriginationIdentitiesRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", - "ListPoolOriginationIdentitiesResult$NextToken": "

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

" + "ListPoolOriginationIdentitiesResult$NextToken": "

The token to be used for the next set of paginated results. If this field is empty then there are no more results.

", + "ListRegistrationAssociationsRequest$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

", + "ListRegistrationAssociationsResult$NextToken": "

The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.

" } }, "NonEmptyTagList": { @@ -883,7 +1243,7 @@ "DescribeOptedOutNumbersRequest$OptOutListName": "

The OptOutListName or OptOutListArn of the OptOutList. You can use DescribeOptOutLists to find the values for OptOutListName and OptOutListArn.

", "OptOutListNameList$member": null, "PutOptedOutNumberRequest$OptOutListName": "

The OptOutListName or OptOutListArn to add the phone number to.

", - "RequestPhoneNumberRequest$OptOutListName": "

The name of the OptOutList to associate with the phone number. You can use the OutOutListName or OptPutListArn.

", + "RequestPhoneNumberRequest$OptOutListName": "

The name of the OptOutList to associate with the phone number. You can use the OptOutListName or OptOutListArn.

", "UpdatePhoneNumberRequest$OptOutListName": "

The OptOutList to add the phone number to. Valid values for this field can be either the OutOutListName or OutOutListArn.

", "UpdatePoolRequest$OptOutListName": "

The OptOutList to associate with the pool. Valid values are either OptOutListName or OptOutListArn.

" } @@ -939,18 +1299,27 @@ "PhoneNumber": { "base": null, "refs": { + "CreateRegistrationAssociationResult$PhoneNumber": "

The phone number associated with the registration in E.164 format.

", + "CreateVerifiedDestinationNumberRequest$DestinationPhoneNumber": "

The verified destination phone number, in E.164 format.

", + "CreateVerifiedDestinationNumberResult$DestinationPhoneNumber": "

The verified destination phone number, in E.164 format.

", "DeleteOptedOutNumberRequest$OptedOutNumber": "

The phone number, in E.164 format, to remove from the OptOutList.

", "DeleteOptedOutNumberResult$OptedOutNumber": "

The phone number that was removed from the OptOutList.

", + "DeleteVerifiedDestinationNumberResult$DestinationPhoneNumber": "

The verified destination phone number, in E.164 format.

", + "DestinationPhoneNumberList$member": null, "OptedOutNumberInformation$OptedOutNumber": "

The phone number that is opted out.

", "OptedOutNumberList$member": null, + "OriginationIdentityMetadata$PhoneNumber": "

The phone number in E.164 format.

", "PhoneNumberInformation$PhoneNumber": "

The phone number in E.164 format.

", "PutOptedOutNumberRequest$OptedOutNumber": "

The phone number to add to the OptOutList in E.164 format.

", "PutOptedOutNumberResult$OptedOutNumber": "

The phone number that was added to the OptOutList.

", + "RegistrationAssociationMetadata$PhoneNumber": "

The phone number associated with the registration in E.164 format.

", "ReleasePhoneNumberResult$PhoneNumber": "

The phone number that was released.

", "RequestPhoneNumberResult$PhoneNumber": "

The new phone number that was requested.

", "SendTextMessageRequest$DestinationPhoneNumber": "

The destination phone number in E.164 format.

", "SendVoiceMessageRequest$DestinationPhoneNumber": "

The destination phone number in E.164 format.

", - "UpdatePhoneNumberResult$PhoneNumber": "

The phone number that was updated.

" + "UpdatePhoneNumberResult$PhoneNumber": "

The phone number that was updated.

", + "VerifiedDestinationNumberInformation$DestinationPhoneNumber": "

The verified destination phone number, in E.164 format.

", + "VerifyDestinationNumberResult$DestinationPhoneNumber": "

The phone number in E.164 format.

" } }, "PhoneNumberFilter": { @@ -986,7 +1355,7 @@ } }, "PhoneNumberInformation": { - "base": "

The information for a phone number in an Amazon Web Services account.

", + "base": "

The information for a phone number, in E.164 format, in an Amazon Web Services account.

", "refs": { "PhoneNumberInformationList$member": null } @@ -1110,11 +1479,16 @@ "PutOptedOutNumberResult$EndUserOptedOut": "

This is true if it was the end user who requested their phone number be removed.

", "ReleasePhoneNumberResult$TwoWayEnabled": "

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

", "ReleasePhoneNumberResult$SelfManagedOptOutsEnabled": "

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

", + "ReleaseSenderIdResult$Registered": "

True if the sender ID is registered.

", "RequestPhoneNumberResult$TwoWayEnabled": "

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

", "RequestPhoneNumberResult$SelfManagedOptOutsEnabled": "

By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

", "RequestPhoneNumberResult$DeletionProtectionEnabled": "

By default this is set to false. When set to true the phone number can't be deleted.

", + "RequestSenderIdResult$DeletionProtectionEnabled": "

By default this is set to false. When set to true the sender ID can't be deleted.

", + "RequestSenderIdResult$Registered": "

True if the sender ID is registered.

", "SendTextMessageRequest$DryRun": "

When set to true, the message is checked and validated, but isn't sent to the end recipient.

", "SendVoiceMessageRequest$DryRun": "

When set to true, the message is checked and validated, but isn't sent to the end recipient.

", + "SenderIdInformation$DeletionProtectionEnabled": "

By default this is set to false. When set to true the sender ID can't be deleted.

", + "SenderIdInformation$Registered": "

True if the sender ID is registered.

", "SpendLimit$Overridden": "

When set to True, the value that has been specified in the EnforcedLimit is used to determine the maximum amount in US dollars that can be spent to send messages each month, in US dollars.

", "UpdatePhoneNumberResult$TwoWayEnabled": "

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

", "UpdatePhoneNumberResult$SelfManagedOptOutsEnabled": "

This is true if self managed opt-out are enabled.

", @@ -1122,7 +1496,9 @@ "UpdatePoolResult$TwoWayEnabled": "

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

", "UpdatePoolResult$SelfManagedOptOutsEnabled": "

When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

", "UpdatePoolResult$SharedRoutesEnabled": "

Indicates whether shared routes are enabled for the pool.

", - "UpdatePoolResult$DeletionProtectionEnabled": "

When set to true the pool can't be deleted.

" + "UpdatePoolResult$DeletionProtectionEnabled": "

When set to true the pool can't be deleted.

", + "UpdateSenderIdResult$DeletionProtectionEnabled": "

By default this is set to false. When set to true the sender ID can't be deleted.

", + "UpdateSenderIdResult$Registered": "

True if the sender ID is registered..

" } }, "PrimitiveLong": { @@ -1154,10 +1530,356 @@ "refs": { } }, - "RegistrationId": { + "PutRegistrationFieldValueRequest": { + "base": null, + "refs": { + } + }, + "PutRegistrationFieldValueResult": { + "base": null, + "refs": { + } + }, + "RegistrationAssociationBehavior": { + "base": null, + "refs": { + "SupportedAssociation$AssociationBehavior": "

The association behavior.

  • ASSOCIATE_BEFORE_SUBMIT The origination identity has to be supplied when creating a registration.

  • ASSOCIATE_ON_APPROVAL This applies to all short code registrations. The short code will be automatically provisioned once the registration is approved.

  • ASSOCIATE_AFTER_COMPLETE This applies to phone number registrations when you must complete a registration first, then associate one or more phone numbers later. For example 10DLC campaigns and long codes.

" + } + }, + "RegistrationAssociationFilter": { + "base": "

The filter definition for filtering registrations that meets a specified criteria.

", + "refs": { + "RegistrationAssociationFilterList$member": null + } + }, + "RegistrationAssociationFilterList": { + "base": null, + "refs": { + "ListRegistrationAssociationsRequest$Filters": "

An array of RegistrationAssociationFilter to apply to the results that are returned.

" + } + }, + "RegistrationAssociationFilterName": { + "base": null, + "refs": { + "RegistrationAssociationFilter$Name": "

The name of the attribute to filter on.

" + } + }, + "RegistrationAssociationMetadata": { + "base": "

Metadata for the origination identity that is associated with the registration.

", + "refs": { + "RegistrationAssociationMetadataList$member": null + } + }, + "RegistrationAssociationMetadataList": { + "base": null, + "refs": { + "ListRegistrationAssociationsResult$RegistrationAssociations": "

An array of RegistrationAssociationMetadata objects.

" + } + }, + "RegistrationAttachmentFilter": { + "base": "

The filter definition for filtering registration attachments that meets a specified criteria.

", + "refs": { + "RegistrationAttachmentFilterList$member": null + } + }, + "RegistrationAttachmentFilterList": { + "base": null, + "refs": { + "DescribeRegistrationAttachmentsRequest$Filters": "

An array of RegistrationAttachmentFilter objects to filter the results.

" + } + }, + "RegistrationAttachmentFilterName": { + "base": null, + "refs": { + "RegistrationAttachmentFilter$Name": "

The name of the attribute to filter on.

" + } + }, + "RegistrationAttachmentIdList": { + "base": null, + "refs": { + "DescribeRegistrationAttachmentsRequest$RegistrationAttachmentIds": "

The unique identifier of registration attachments to find. This is an array of RegistrationAttachmentId.

" + } + }, + "RegistrationAttachmentIdOrArn": { + "base": null, + "refs": { + "DeleteRegistrationAttachmentRequest$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "PutRegistrationFieldValueRequest$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "RegistrationFieldValueInformation$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

" + } + }, + "RegistrationAttachmentsInformation": { + "base": "

Provides information on the specified registration attachments.

", + "refs": { + "RegistrationAttachmentsInformationList$member": null + } + }, + "RegistrationAttachmentsInformationList": { + "base": null, + "refs": { + "DescribeRegistrationAttachmentsResult$RegistrationAttachments": "

An array of RegistrationAttachments objects that contain the details for the requested registration attachments.

" + } + }, + "RegistrationDeniedReasonInformation": { + "base": "

Provides the reason a registration was rejected.

", + "refs": { + "RegistrationDeniedReasonInformationList$member": null + } + }, + "RegistrationDeniedReasonInformationList": { + "base": null, + "refs": { + "RegistrationVersionInformation$DeniedReasons": "

An array of RegistrationDeniedReasonInformation objects.

" + } + }, + "RegistrationDisassociationBehavior": { + "base": null, + "refs": { + "SupportedAssociation$DisassociationBehavior": "

The disassociation behavior.

  • DISASSOCIATE_ALL_CLOSES_REGISTRATION All origination identities must be disassociated from the registration before the registration can be closed.

  • DISASSOCIATE_ALL_ALLOWS_DELETE_REGISTRATION All origination identities must be disassociated from the registration before the registration can be deleted.

  • DELETE_REGISTRATION_DISASSOCIATES The registration can be deleted and all origination identities will be disasscoiated.

" + } + }, + "RegistrationFieldDefinition": { + "base": "

Provides a description of the specified field.

", + "refs": { + "RegistrationFieldDefinitionList$member": null + } + }, + "RegistrationFieldDefinitionList": { + "base": null, + "refs": { + "DescribeRegistrationFieldDefinitionsResult$RegistrationFieldDefinitions": "

An array of RegistrationFieldDefinitions objects that contain the details for the requested fields.

" + } + }, + "RegistrationFieldDisplayHints": { + "base": "

Provides help information on the registration field.

", + "refs": { + "RegistrationFieldDefinition$DisplayHints": "

An array of RegistrationFieldDisplayHints objects for the field.

" + } + }, + "RegistrationFieldValueInformation": { + "base": "

Provides the values of the specified field.

", + "refs": { + "RegistrationFieldValueInformationList$member": null + } + }, + "RegistrationFieldValueInformationList": { + "base": null, + "refs": { + "DescribeRegistrationFieldValuesResult$RegistrationFieldValues": "

An array of RegistrationFieldValues objects that contain the values for the requested registration.

" + } + }, + "RegistrationFilter": { + "base": "

The filter definition for filtering registrations that meets a specified criteria.

", + "refs": { + "RegistrationFilterList$member": null + } + }, + "RegistrationFilterList": { + "base": null, + "refs": { + "DescribeRegistrationsRequest$Filters": "

An array of RegistrationFilter objects to filter the results.

" + } + }, + "RegistrationFilterName": { + "base": null, + "refs": { + "RegistrationFilter$Name": "

The name of the attribute to filter on.

" + } + }, + "RegistrationIdList": { + "base": null, + "refs": { + "DescribeRegistrationsRequest$RegistrationIds": "

An array of unique identifiers for each registration.

" + } + }, + "RegistrationIdOrArn": { + "base": null, + "refs": { + "CreateRegistrationAssociationRequest$RegistrationId": "

The unique identifier for the registration.

", + "CreateRegistrationVersionRequest$RegistrationId": "

The unique identifier for the registration.

", + "DeleteRegistrationFieldValueRequest$RegistrationId": "

The unique identifier for the registration.

", + "DeleteRegistrationRequest$RegistrationId": "

The unique identifier for the registration.

", + "DescribeRegistrationFieldValuesRequest$RegistrationId": "

The unique identifier for the registration.

", + "DescribeRegistrationVersionsRequest$RegistrationId": "

The unique identifier for the registration.

", + "DiscardRegistrationVersionRequest$RegistrationId": "

The unique identifier for the registration.

", + "ListRegistrationAssociationsRequest$RegistrationId": "

The unique identifier for the registration.

", + "PutRegistrationFieldValueRequest$RegistrationId": "

The unique identifier for the registration.

", + "RegistrationAttachmentIdList$member": null, + "RegistrationIdList$member": null, + "RequestPhoneNumberRequest$RegistrationId": "

Use this field to attach your phone number for an external registration process.

", + "SubmitRegistrationVersionRequest$RegistrationId": "

The unique identifier for the registration.

" + } + }, + "RegistrationInformation": { + "base": "

Provides information about the requested registration.

", + "refs": { + "RegistrationInformationList$member": null + } + }, + "RegistrationInformationList": { + "base": null, + "refs": { + "DescribeRegistrationsResult$Registrations": "

An array of RegistrationInformation objects.

" + } + }, + "RegistrationSectionDefinition": { + "base": "

Provides information on the specified section definition.

", + "refs": { + "RegistrationSectionDefinitionList$member": null + } + }, + "RegistrationSectionDefinitionList": { + "base": null, + "refs": { + "DescribeRegistrationSectionDefinitionsResult$RegistrationSectionDefinitions": "

An array of RegistrationSectionDefinition objects.

" + } + }, + "RegistrationSectionDisplayHints": { + "base": "

Provides help information on the registration section.

", + "refs": { + "RegistrationSectionDefinition$DisplayHints": "

The path to the section of the registration.

" + } + }, + "RegistrationStatus": { + "base": null, + "refs": { + "CreateRegistrationResult$RegistrationStatus": "

The status of the registration.

  • CREATED: Your registration is created but not submitted.

  • SUBMITTED: Your registration has been submitted and is awaiting review.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • PROVISIONING: Your registration has been approved and your origination identity is being created.

  • COMPLETE: Your registration has been approved and and your origination identity has been created.

  • REQUIRES_UPDATES: You must fix your registration and resubmit it.

  • CLOSED: The phone number or sender ID has been deleted and you must also delete the registration for the number.

  • DELETED: The registration has been deleted.

", + "DeleteRegistrationResult$RegistrationStatus": "

The status of the registration.

  • CREATED: Your registration is created but not submitted.

  • SUBMITTED: Your registration has been submitted and is awaiting review.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • PROVISIONING: Your registration has been approved and your origination identity is being created.

  • COMPLETE: Your registration has been approved and and your origination identity has been created.

  • REQUIRES_UPDATES: You must fix your registration and resubmit it.

  • CLOSED: The phone number or sender ID has been deleted and you must also delete the registration for the number.

  • DELETED: The registration has been deleted.

", + "RegistrationInformation$RegistrationStatus": "

The status of the registration.

  • CREATED: Your registration is created but not submitted.

  • SUBMITTED: Your registration has been submitted and is awaiting review.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • PROVISIONING: Your registration has been approved and your origination identity is being created.

  • COMPLETE: Your registration has been approved and and your origination identity has been created.

  • REQUIRES_UPDATES: You must fix your registration and resubmit it.

  • CLOSED: The phone number or sender ID has been deleted and you must also delete the registration for the number.

  • DELETED: The registration has been deleted.

" + } + }, + "RegistrationType": { + "base": null, + "refs": { + "CreateRegistrationAssociationResult$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "CreateRegistrationRequest$RegistrationType": "

The type of registration form to create. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "CreateRegistrationResult$RegistrationType": "

The type of registration form to create. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "DeleteRegistrationResult$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "DescribeRegistrationFieldDefinitionsRequest$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "DescribeRegistrationFieldDefinitionsResult$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "DescribeRegistrationSectionDefinitionsRequest$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "DescribeRegistrationSectionDefinitionsResult$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "ListRegistrationAssociationsResult$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "RegistrationInformation$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "RegistrationTypeDefinition$RegistrationType": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

", + "RegistrationTypeList$member": null + } + }, + "RegistrationTypeDefinition": { + "base": "

Provides information on the supported registration type.

", + "refs": { + "RegistrationTypeDefinitionList$member": null + } + }, + "RegistrationTypeDefinitionList": { "base": null, "refs": { - "RequestPhoneNumberRequest$RegistrationId": "

Use this field to attach your phone number for an external registration process.

" + "DescribeRegistrationTypeDefinitionsResult$RegistrationTypeDefinitions": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

" + } + }, + "RegistrationTypeDisplayHints": { + "base": "

Provides help information on the registration type.

", + "refs": { + "RegistrationTypeDefinition$DisplayHints": "

Provides help information on the registration.

" + } + }, + "RegistrationTypeFilter": { + "base": "

The filter definition for filtering registration types that meets a specified criteria.

", + "refs": { + "RegistrationTypeFilterList$member": null + } + }, + "RegistrationTypeFilterList": { + "base": null, + "refs": { + "DescribeRegistrationTypeDefinitionsRequest$Filters": "

An array of RegistrationFilter objects to filter the results.

" + } + }, + "RegistrationTypeFilterName": { + "base": null, + "refs": { + "RegistrationTypeFilter$Name": "

The name of the attribute to filter on.

" + } + }, + "RegistrationTypeList": { + "base": null, + "refs": { + "DescribeRegistrationTypeDefinitionsRequest$RegistrationTypes": "

The type of registration form. The list of RegistrationTypes can be found using the DescribeRegistrationTypeDefinitions action.

" + } + }, + "RegistrationVersionFilter": { + "base": "

The filter definition for filtering registration versions that meets a specified criteria.

", + "refs": { + "RegistrationVersionFilterList$member": null + } + }, + "RegistrationVersionFilterList": { + "base": null, + "refs": { + "DescribeRegistrationVersionsRequest$Filters": "

An array of RegistrationVersionFilter objects to filter the results.

" + } + }, + "RegistrationVersionFilterName": { + "base": null, + "refs": { + "RegistrationVersionFilter$Name": "

The name of the attribute to filter on.

" + } + }, + "RegistrationVersionInformation": { + "base": "

Provides information about the specified version of the registration.

", + "refs": { + "RegistrationVersionInformationList$member": null + } + }, + "RegistrationVersionInformationList": { + "base": null, + "refs": { + "DescribeRegistrationVersionsResult$RegistrationVersions": "

An array of RegistrationVersions objects.

" + } + }, + "RegistrationVersionNumber": { + "base": null, + "refs": { + "CreateRegistrationResult$CurrentVersionNumber": "

The current version number of the registration.

", + "CreateRegistrationVersionResult$VersionNumber": "

The new version number of the registration.

", + "DeleteRegistrationFieldValueResult$VersionNumber": "

The version number of the registration.

", + "DeleteRegistrationResult$CurrentVersionNumber": "

The current version number of the registration.

", + "DeleteRegistrationResult$ApprovedVersionNumber": "

The version number of the registration that was approved.

", + "DeleteRegistrationResult$LatestDeniedVersionNumber": "

The latest version number of the registration that was denied.

", + "DescribeRegistrationFieldValuesRequest$VersionNumber": "

The version number of the registration.

", + "DescribeRegistrationFieldValuesResult$VersionNumber": "

The current version of the registration.

", + "DiscardRegistrationVersionResult$VersionNumber": "

The version number of the registration.

", + "PutRegistrationFieldValueResult$VersionNumber": "

The version number of the registration.

", + "RegistrationInformation$CurrentVersionNumber": "

The current version number of the registration.

", + "RegistrationInformation$ApprovedVersionNumber": "

The version number of the registration that was approved.

", + "RegistrationInformation$LatestDeniedVersionNumber": "

The latest version number of the registration that was denied.

", + "RegistrationVersionInformation$VersionNumber": "

The version number of the registration.

", + "RegistrationVersionNumberList$member": null, + "SubmitRegistrationVersionResult$VersionNumber": "

The version number of the registration.

" + } + }, + "RegistrationVersionNumberList": { + "base": null, + "refs": { + "DescribeRegistrationVersionsRequest$VersionNumbers": "

An array of registration version numbers.

" + } + }, + "RegistrationVersionStatus": { + "base": null, + "refs": { + "CreateRegistrationVersionResult$RegistrationVersionStatus": "

The status of the registration.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

", + "DiscardRegistrationVersionResult$RegistrationVersionStatus": "

The status of the registration version.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

", + "RegistrationVersionInformation$RegistrationVersionStatus": "

The status of the registration.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

", + "SubmitRegistrationVersionResult$RegistrationVersionStatus": "

The status of the registration version.

  • DRAFT: The initial status of a registration version after it’s created.

  • SUBMITTED: Your registration has been submitted.

  • REVIEWING: Your registration has been accepted and is being reviewed.

  • APPROVED: Your registration has been approved.

  • DISCARDED: You've abandon this version of their registration to start over with a new version.

  • DENIED: You must fix your registration and resubmit it.

  • REVOKED: Your previously approved registration has been revoked.

  • ARCHIVED: Your previously approved registration version moves into this status when a more recently submitted version is approved.

" + } + }, + "RegistrationVersionStatusHistory": { + "base": "

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

", + "refs": { + "CreateRegistrationVersionResult$RegistrationVersionStatusHistory": "

A RegistrationVersionStatusHistory object that contains timestamps for the registration.

", + "DiscardRegistrationVersionResult$RegistrationVersionStatusHistory": "

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

", + "RegistrationVersionInformation$RegistrationVersionStatusHistory": "

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

", + "SubmitRegistrationVersionResult$RegistrationVersionStatusHistory": "

The RegistrationVersionStatusHistory object contains the time stamps for when the reservations status changes.

" } }, "ReleasePhoneNumberRequest": { @@ -1170,6 +1892,16 @@ "refs": { } }, + "ReleaseSenderIdRequest": { + "base": null, + "refs": { + } + }, + "ReleaseSenderIdResult": { + "base": null, + "refs": { + } + }, "RequestPhoneNumberRequest": { "base": null, "refs": { @@ -1180,6 +1912,16 @@ "refs": { } }, + "RequestSenderIdRequest": { + "base": null, + "refs": { + } + }, + "RequestSenderIdResult": { + "base": null, + "refs": { + } + }, "RequestableNumberType": { "base": null, "refs": { @@ -1187,6 +1929,12 @@ "RequestPhoneNumberResult$NumberType": "

The type of number that was released.

" } }, + "ResourceIdOrArn": { + "base": null, + "refs": { + "CreateRegistrationAssociationRequest$ResourceId": "

The unique identifier for the origination identity. For example this could be a PhoneNumberId or SenderId.

" + } + }, "ResourceNotFoundException": { "base": "

A requested resource couldn't be found.

", "refs": { @@ -1199,6 +1947,65 @@ "ResourceNotFoundException$ResourceType": "

The type of resource that caused the exception.

" } }, + "SectionPath": { + "base": null, + "refs": { + "DescribeRegistrationFieldDefinitionsRequest$SectionPath": "

The path to the section of the registration.

", + "DescribeRegistrationFieldValuesRequest$SectionPath": "

The path to the section of the registration.

", + "RegistrationFieldDefinition$SectionPath": "

The section path of the field.

", + "RegistrationSectionDefinition$SectionPath": "

The path to the section of the registration.

", + "SectionPathList$member": null + } + }, + "SectionPathList": { + "base": null, + "refs": { + "DescribeRegistrationSectionDefinitionsRequest$SectionPaths": "

An array of paths for the registration form section.

" + } + }, + "SelectChoice": { + "base": null, + "refs": { + "SelectChoiceList$member": null + } + }, + "SelectChoiceList": { + "base": null, + "refs": { + "DeleteRegistrationFieldValueResult$SelectChoices": "

An array of values for the form field.

", + "PutRegistrationFieldValueRequest$SelectChoices": "

An array of values for the form field.

", + "PutRegistrationFieldValueResult$SelectChoices": "

An array of values for the form field.

", + "RegistrationFieldValueInformation$SelectChoices": "

An array of values for the form field.

" + } + }, + "SelectOptionDescription": { + "base": "

A description of each select option.

", + "refs": { + "SelectOptionDescriptionsList$member": null + } + }, + "SelectOptionDescriptionsList": { + "base": null, + "refs": { + "RegistrationFieldDisplayHints$SelectOptionDescriptions": "

An array of SelectOptionDescription objects.

" + } + }, + "SelectValidation": { + "base": "

Validation rules for a select field.

", + "refs": { + "RegistrationFieldDefinition$SelectValidation": "

The validation rules for a select field.

" + } + }, + "SendDestinationNumberVerificationCodeRequest": { + "base": null, + "refs": { + } + }, + "SendDestinationNumberVerificationCodeResult": { + "base": null, + "refs": { + } + }, "SendTextMessageRequest": { "base": null, "refs": { @@ -1225,9 +2032,13 @@ "ConfigurationSetInformation$DefaultSenderId": "

The default sender ID used by the ConfigurationSet.

", "DeleteConfigurationSetResult$DefaultSenderId": "

The default Sender ID of the configuration set that was deleted.

", "DeleteDefaultSenderIdResult$SenderId": "

The current sender ID for the configuration set.

", + "ReleaseSenderIdResult$SenderId": "

The sender ID that was released.

", + "RequestSenderIdRequest$SenderId": "

The sender ID string to request.

", + "RequestSenderIdResult$SenderId": "

The sender ID that was requested.

", "SenderIdInformation$SenderId": "

The alphanumeric sender ID in a specific country that you'd like to describe.

", "SetDefaultSenderIdRequest$SenderId": "

The current sender ID for the configuration set. When sending a text message to a destination country which supports SenderIds, the default sender ID on the configuration set specified on SendTextMessage will be used if no dedicated origination phone numbers or registered SenderIds are available in your account, instead of a generic sender ID, such as 'NOTICE'.

", - "SetDefaultSenderIdResult$SenderId": "

The default sender ID to set for the ConfigurationSet.

" + "SetDefaultSenderIdResult$SenderId": "

The default sender ID to set for the ConfigurationSet.

", + "UpdateSenderIdResult$SenderId": "

The sender ID that was updated.

" } }, "SenderIdAndCountry": { @@ -1275,7 +2086,9 @@ "SenderIdOrArn": { "base": null, "refs": { - "SenderIdAndCountry$SenderId": "

The unique identifier of the sender.

" + "ReleaseSenderIdRequest$SenderId": "

The sender ID to release.

", + "SenderIdAndCountry$SenderId": "

The unique identifier of the sender.

", + "UpdateSenderIdRequest$SenderId": "

The sender ID to update.

" } }, "ServiceQuotaExceededException": { @@ -1378,6 +2191,19 @@ "CreateOptOutListResult$OptOutListArn": "

The Amazon Resource Name (ARN) for the OptOutList.

", "CreatePoolResult$PoolArn": "

The Amazon Resource Name (ARN) for the pool.

", "CreatePoolResult$PoolId": "

The unique identifier for the pool.

", + "CreateRegistrationAssociationResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "CreateRegistrationAssociationResult$RegistrationId": "

The unique identifier for the registration.

", + "CreateRegistrationAssociationResult$ResourceArn": "

The Amazon Resource Name (ARN) of the origination identity that is associated with the registration.

", + "CreateRegistrationAssociationResult$ResourceId": "

The unique identifier for the origination identity. For example this could be a PhoneNumberId or SenderId.

", + "CreateRegistrationAssociationResult$ResourceType": "

The registration type or origination identity type.

", + "CreateRegistrationAttachmentResult$RegistrationAttachmentArn": "

The Amazon Resource Name (ARN) for the registration attachment.

", + "CreateRegistrationAttachmentResult$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "CreateRegistrationResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "CreateRegistrationResult$RegistrationId": "

The unique identifier for the registration.

", + "CreateRegistrationVersionResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "CreateRegistrationVersionResult$RegistrationId": "

The unique identifier for the registration.

", + "CreateVerifiedDestinationNumberResult$VerifiedDestinationNumberArn": "

The Amazon Resource Name (ARN) for the verified destination phone number.

", + "CreateVerifiedDestinationNumberResult$VerifiedDestinationNumberId": "

The unique identifier for the verified destination phone number.

", "DeleteConfigurationSetResult$ConfigurationSetArn": "

The Amazon Resource Name (ARN) of the deleted configuration set.

", "DeleteDefaultMessageTypeResult$ConfigurationSetArn": "

The Amazon Resource Name (ARN) of the configuration set.

", "DeleteDefaultSenderIdResult$ConfigurationSetArn": "

The Amazon Resource Name (ARN) of the configuration set.

", @@ -1388,17 +2214,34 @@ "DeleteOptedOutNumberResult$OptOutListArn": "

The OptOutListArn that the phone number was removed from.

", "DeletePoolResult$PoolArn": "

The Amazon Resource Name (ARN) of the pool that was deleted.

", "DeletePoolResult$PoolId": "

The PoolId of the pool that was deleted.

", + "DeleteRegistrationAttachmentResult$RegistrationAttachmentArn": "

The Amazon Resource Name (ARN) for the registration attachment.

", + "DeleteRegistrationAttachmentResult$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "DeleteRegistrationFieldValueResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "DeleteRegistrationFieldValueResult$RegistrationId": "

The unique identifier for the registration.

", + "DeleteRegistrationFieldValueResult$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "DeleteRegistrationResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "DeleteRegistrationResult$RegistrationId": "

The unique identifier for the registration.

", + "DeleteVerifiedDestinationNumberResult$VerifiedDestinationNumberArn": "

The Amazon Resource Name (ARN) for the verified destination phone number.

", + "DeleteVerifiedDestinationNumberResult$VerifiedDestinationNumberId": "

The unique identifier for the verified destination phone number.

", "DescribeKeywordsResult$OriginationIdentityArn": "

The PhoneNumberArn or PoolArn that is associated with the OriginationIdentity.

", "DescribeKeywordsResult$OriginationIdentity": "

The PhoneNumberId or PoolId that is associated with the OriginationIdentity.

", "DescribeOptedOutNumbersResult$OptOutListArn": "

The Amazon Resource Name (ARN) of the OptOutList.

", + "DescribeRegistrationFieldValuesResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "DescribeRegistrationFieldValuesResult$RegistrationId": "

The unique identifier for the registration.

", + "DescribeRegistrationVersionsResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "DescribeRegistrationVersionsResult$RegistrationId": "

The unique identifier for the registration.

", "DisassociateOriginationIdentityResult$PoolArn": "

The Amazon Resource Name (ARN) of the pool.

", "DisassociateOriginationIdentityResult$PoolId": "

The PoolId of the pool no longer associated with the origination identity.

", "DisassociateOriginationIdentityResult$OriginationIdentityArn": "

The PhoneNumberArn or SenderIdArn of the origination identity.

", "DisassociateOriginationIdentityResult$OriginationIdentity": "

The PhoneNumberId or SenderId of the origination identity.

", + "DiscardRegistrationVersionResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "DiscardRegistrationVersionResult$RegistrationId": "

The unique identifier for the registration.

", "InternalServerException$Message": null, "InternalServerException$RequestId": "

The unique identifier of the request.

", "ListPoolOriginationIdentitiesResult$PoolArn": "

The Amazon Resource Name (ARN) for the pool.

", "ListPoolOriginationIdentitiesResult$PoolId": "

The unique PoolId of the pool.

", + "ListRegistrationAssociationsResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "ListRegistrationAssociationsResult$RegistrationId": "

The unique identifier for the registration.

", "OptOutListInformation$OptOutListArn": "

The Amazon Resource Name (ARN) of the OptOutList.

", "OriginationIdentityMetadata$OriginationIdentityArn": "

The Amazon Resource Name (ARN) associated with the origination identity.

", "OriginationIdentityMetadata$OriginationIdentity": "

The unique identifier of the origination identity.

", @@ -1406,37 +2249,134 @@ "PhoneNumberInformation$PhoneNumberId": "

The unique identifier for the phone number.

", "PhoneNumberInformation$MonthlyLeasingPrice": "

The price, in US dollars, to lease the phone number.

", "PhoneNumberInformation$PoolId": "

The unique identifier of the pool associated with the phone number.

", + "PhoneNumberInformation$RegistrationId": "

The unique identifier for the registration.

", "PoolInformation$PoolArn": "

The Amazon Resource Name (ARN) for the pool.

", "PoolInformation$PoolId": "

The unique identifier for the pool.

", "PutKeywordResult$OriginationIdentityArn": "

The PhoneNumberArn or PoolArn that the keyword was associated with.

", "PutKeywordResult$OriginationIdentity": "

The PhoneNumberId or PoolId that the keyword was associated with.

", "PutOptedOutNumberResult$OptOutListArn": "

The OptOutListArn that the phone number was removed from.

", + "PutRegistrationFieldValueResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "PutRegistrationFieldValueResult$RegistrationId": "

The unique identifier for the registration.

", + "PutRegistrationFieldValueResult$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "RegistrationAssociationMetadata$ResourceArn": "

The Amazon Resource Name (ARN) of the origination identity that is associated with the registration.

", + "RegistrationAssociationMetadata$ResourceId": "

The unique identifier for the origination identity. For example this could be a PhoneNumberId or SenderId.

", + "RegistrationAssociationMetadata$ResourceType": "

The origination identity type.

", + "RegistrationAttachmentsInformation$RegistrationAttachmentArn": "

The Amazon Resource Name (ARN) for the registration attachment.

", + "RegistrationAttachmentsInformation$RegistrationAttachmentId": "

The unique identifier for the registration attachment.

", + "RegistrationDeniedReasonInformation$Reason": "

The reason a registration was rejected.

", + "RegistrationDeniedReasonInformation$ShortDescription": "

A short description of the rejection reason.

", + "RegistrationDeniedReasonInformation$LongDescription": "

A long description of the rejection reason.

", + "RegistrationDeniedReasonInformation$DocumentationTitle": "

The title of the document.

", + "RegistrationDeniedReasonInformation$DocumentationLink": "

The link to the document.

", + "RegistrationFieldDisplayHints$Title": "

The title of the display hint.

", + "RegistrationFieldDisplayHints$ShortDescription": "

A short description of the display hint.

", + "RegistrationFieldDisplayHints$LongDescription": "

A full description of the display hint.

", + "RegistrationFieldDisplayHints$DocumentationTitle": "

The title of the document the display hint is associated with.

", + "RegistrationFieldDisplayHints$DocumentationLink": "

The link to the document the display hint is associated with.

", + "RegistrationFieldDisplayHints$TextValidationDescription": "

The validation rules for the text field.

", + "RegistrationFieldDisplayHints$ExampleTextValue": "

Example text of what the value of a field should contain.

", + "RegistrationFieldValueInformation$DeniedReason": "

A description of why the registration was denied.

", + "RegistrationInformation$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "RegistrationInformation$RegistrationId": "

The unique identifier for the registration.

", + "RegistrationSectionDisplayHints$Title": "

The title of the display hint.

", + "RegistrationSectionDisplayHints$ShortDescription": "

A short description of the display hint.

", + "RegistrationSectionDisplayHints$LongDescription": "

A full description of the display hint.

", + "RegistrationSectionDisplayHints$DocumentationTitle": "

The title of the document the display hint is associated with.

", + "RegistrationSectionDisplayHints$DocumentationLink": "

The link to the document the display hint is associated with.

", + "RegistrationTypeDisplayHints$Title": "

The title of the display hint.

", + "RegistrationTypeDisplayHints$ShortDescription": "

A short description of the display hint.

", + "RegistrationTypeDisplayHints$LongDescription": "

A full description of the display hint.

", + "RegistrationTypeDisplayHints$DocumentationTitle": "

The title of the document the display hint is associated with.

", + "RegistrationTypeDisplayHints$DocumentationLink": "

The link to the document the display hint is associated with.

", "ReleasePhoneNumberResult$PhoneNumberArn": "

The PhoneNumberArn of the phone number that was released.

", "ReleasePhoneNumberResult$PhoneNumberId": "

The PhoneNumberId of the phone number that was released.

", "ReleasePhoneNumberResult$MonthlyLeasingPrice": "

The monthly price of the phone number, in US dollars.

", + "ReleasePhoneNumberResult$RegistrationId": "

The unique identifier for the registration.

", + "ReleaseSenderIdResult$SenderIdArn": "

The Amazon Resource Name (ARN) associated with the SenderId.

", + "ReleaseSenderIdResult$MonthlyLeasingPrice": "

The monthly price, in US dollars, to lease the sender ID.

", + "ReleaseSenderIdResult$RegistrationId": "

The unique identifier for the registration.

", "RequestPhoneNumberResult$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the requested phone number.

", "RequestPhoneNumberResult$PhoneNumberId": "

The unique identifier of the new phone number.

", "RequestPhoneNumberResult$MonthlyLeasingPrice": "

The monthly price, in US dollars, to lease the phone number.

", "RequestPhoneNumberResult$PoolId": "

The unique identifier of the pool associated with the phone number

", + "RequestPhoneNumberResult$RegistrationId": "

The unique identifier for the registration.

", + "RequestSenderIdResult$SenderIdArn": "

The Amazon Resource Name (ARN) associated with the SenderId.

", + "RequestSenderIdResult$MonthlyLeasingPrice": "

The monthly price, in US dollars, to lease the sender ID.

", "ResourceNotFoundException$Message": null, "ResourceNotFoundException$ResourceId": "

The unique identifier of the resource.

", + "SelectOptionDescription$Option": "

The value of the option.

", + "SelectOptionDescription$Title": "

The title of the select option.

", + "SelectOptionDescription$Description": "

A description of the option meaning.

", + "SendDestinationNumberVerificationCodeResult$MessageId": "

The unique identifier for the message.

", "SendTextMessageResult$MessageId": "

The unique identifier for the message.

", "SendVoiceMessageResult$MessageId": "

The unique identifier for the message.

", "SenderIdInformation$SenderIdArn": "

The Amazon Resource Name (ARN) associated with the SenderId.

", "SenderIdInformation$MonthlyLeasingPrice": "

The monthly leasing price, in US dollars.

", + "SenderIdInformation$RegistrationId": "

The unique identifier for the registration.

", "ServiceQuotaExceededException$Message": null, "SetDefaultMessageTypeResult$ConfigurationSetArn": "

The Amazon Resource Name (ARN) of the updated configuration set.

", "SetDefaultSenderIdResult$ConfigurationSetArn": "

The Amazon Resource Name (ARN) of the updated configuration set.

", + "StringList$member": null, + "StringMap$key": null, + "StringMap$value": null, + "SubmitRegistrationVersionResult$RegistrationArn": "

The Amazon Resource Name (ARN) for the registration.

", + "SubmitRegistrationVersionResult$RegistrationId": "

The unique identifier for the registration.

", + "SupportedAssociation$ResourceType": "

Defines the behavior of when an origination identity and registration can be associated with each other.

", + "TextValidation$Pattern": "

The regular expression used to validate the text field.

", "ThrottlingException$Message": null, "UpdateEventDestinationResult$ConfigurationSetArn": "

The Amazon Resource Name (ARN) for the ConfigurationSet that was updated.

", "UpdatePhoneNumberResult$PhoneNumberArn": "

The Amazon Resource Name (ARN) of the updated phone number.

", "UpdatePhoneNumberResult$PhoneNumberId": "

The unique identifier of the phone number.

", "UpdatePhoneNumberResult$MonthlyLeasingPrice": "

The monthly leasing price of the phone number, in US dollars.

", + "UpdatePhoneNumberResult$RegistrationId": "

The unique identifier for the registration.

", "UpdatePoolResult$PoolArn": "

The ARN of the pool.

", "UpdatePoolResult$PoolId": "

The unique identifier of the pool.

", + "UpdateSenderIdResult$SenderIdArn": "

The Amazon Resource Name (ARN) associated with the SenderId.

", + "UpdateSenderIdResult$MonthlyLeasingPrice": "

The monthly price, in US dollars, to lease the sender ID.

", + "UpdateSenderIdResult$RegistrationId": "

The unique identifier for the registration.

", "ValidationException$Message": null, "ValidationExceptionField$Name": "

The name of the field.

", - "ValidationExceptionField$Message": "

The message associated with the validation exception with information to help determine its cause.

" + "ValidationExceptionField$Message": "

The message associated with the validation exception with information to help determine its cause.

", + "VerifiedDestinationNumberInformation$VerifiedDestinationNumberArn": "

The Amazon Resource Name (ARN) for the verified destination phone number.

", + "VerifiedDestinationNumberInformation$VerifiedDestinationNumberId": "

The unique identifier for the verified destination phone number.

", + "VerifyDestinationNumberResult$VerifiedDestinationNumberArn": "

The Amazon Resource Name (ARN) for the verified destination phone number.

", + "VerifyDestinationNumberResult$VerifiedDestinationNumberId": "

The unique identifier for the verified destination phone number.

" + } + }, + "StringList": { + "base": null, + "refs": { + "SelectValidation$Options": "

An array of strings for the possible selection options.

" + } + }, + "StringMap": { + "base": null, + "refs": { + "CreateRegistrationResult$AdditionalAttributes": "

Metadata about a given registration which is specific to that registration type.

", + "DeleteRegistrationResult$AdditionalAttributes": "

Metadata about a given registration which is specific to that registration type.

", + "RegistrationInformation$AdditionalAttributes": "

Metadata about a given registration which is specific to that registration type.

" + } + }, + "SubmitRegistrationVersionRequest": { + "base": null, + "refs": { + } + }, + "SubmitRegistrationVersionResult": { + "base": null, + "refs": { + } + }, + "SupportedAssociation": { + "base": "

The processing rules for when a registration can be associated with an origination identity and disassociated from an origination identity.

", + "refs": { + "SupportedAssociationList$member": null + } + }, + "SupportedAssociationList": { + "base": null, + "refs": { + "RegistrationTypeDefinition$SupportedAssociations": "

The supported association behavior for the registration type.

" } }, "Tag": { @@ -1468,9 +2408,17 @@ "CreateOptOutListResult$Tags": "

An array of tags (key and value pairs) associated with the new OptOutList.

", "CreatePoolRequest$Tags": "

An array of tags (key and value pairs) associated with the pool.

", "CreatePoolResult$Tags": "

An array of tags (key and value pairs) associated with the pool.

", + "CreateRegistrationAttachmentRequest$Tags": "

An array of tags (key and value pairs) to associate with the registration attachment.

", + "CreateRegistrationAttachmentResult$Tags": "

An array of tags (key and value pairs) to associate with the registration attachment.

", + "CreateRegistrationRequest$Tags": "

An array of tags (key and value pairs) to associate with the registration.

", + "CreateRegistrationResult$Tags": "

An array of tags (key and value pairs) to associate with the registration.

", + "CreateVerifiedDestinationNumberRequest$Tags": "

An array of tags (key and value pairs) to associate with the destination number.

", + "CreateVerifiedDestinationNumberResult$Tags": "

An array of tags (key and value pairs) to associate with the destination number.

", "ListTagsForResourceResult$Tags": "

An array of key and value pair tags that are associated with the resource.

", "RequestPhoneNumberRequest$Tags": "

An array of tags (key and value pairs) associate with the requested phone number.

", - "RequestPhoneNumberResult$Tags": "

An array of key and value pair tags that are associated with the phone number.

" + "RequestPhoneNumberResult$Tags": "

An array of key and value pair tags that are associated with the phone number.

", + "RequestSenderIdRequest$Tags": "

An array of tags (key and value pairs) to associate with the sender ID.

", + "RequestSenderIdResult$Tags": "

An array of tags (key and value pairs) to associate with the sender ID.

" } }, "TagResourceRequest": { @@ -1501,6 +2449,21 @@ "SendTextMessageRequest$OriginationIdentity": "

The origination identity of the message. This can be either the PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn.

" } }, + "TextValidation": { + "base": "

Validation rules for a text field.

", + "refs": { + "RegistrationFieldDefinition$TextValidation": "

The validation rules for a text field.

" + } + }, + "TextValue": { + "base": null, + "refs": { + "DeleteRegistrationFieldValueResult$TextValue": "

The text data for a free form field.

", + "PutRegistrationFieldValueRequest$TextValue": "

The text data for a free form field.

", + "PutRegistrationFieldValueResult$TextValue": "

The text data for a free form field.

", + "RegistrationFieldValueInformation$TextValue": "

The text data for a free form field.

" + } + }, "ThrottlingException": { "base": "

An error that occurred because too many requests were sent during a certain amount of time.

", "refs": { @@ -1520,19 +2483,37 @@ "CreateConfigurationSetResult$CreatedTimestamp": "

The time when the configuration set was created, in UNIX epoch time format.

", "CreateOptOutListResult$CreatedTimestamp": "

The time when the pool was created, in UNIX epoch time format.

", "CreatePoolResult$CreatedTimestamp": "

The time when the pool was created, in UNIX epoch time format.

", + "CreateRegistrationAttachmentResult$CreatedTimestamp": "

The time when the registration attachment was created, in UNIX epoch time format.

", + "CreateRegistrationResult$CreatedTimestamp": "

The time when the registration was created, in UNIX epoch time format.

", + "CreateVerifiedDestinationNumberResult$CreatedTimestamp": "

The time when the verified phone number was created, in UNIX epoch time format.

", "DeleteConfigurationSetResult$CreatedTimestamp": "

The time that the deleted configuration set was created in UNIX epoch time format.

", "DeleteOptOutListResult$CreatedTimestamp": "

The time when the OptOutList was created, in UNIX epoch time format.

", "DeleteOptedOutNumberResult$OptedOutTimestamp": "

The time that the number was removed at, in UNIX epoch time format.

", "DeletePoolResult$CreatedTimestamp": "

The time when the pool was created, in UNIX epoch time format.

", + "DeleteRegistrationAttachmentResult$CreatedTimestamp": "

The time when the registration attachment was created, in UNIX epoch time format.

", + "DeleteRegistrationResult$CreatedTimestamp": "

The time when the registration was created, in UNIX epoch time format.

", + "DeleteVerifiedDestinationNumberResult$CreatedTimestamp": "

The time when the destination phone number was created, in UNIX epoch time format.

", "OptOutListInformation$CreatedTimestamp": "

The time when the OutOutList was created, in UNIX epoch time format.

", "OptedOutNumberInformation$OptedOutTimestamp": "

The time that the op tout occurred, in UNIX epoch time format.

", "PhoneNumberInformation$CreatedTimestamp": "

The time when the phone number was created, in UNIX epoch time format.

", "PoolInformation$CreatedTimestamp": "

The time when the pool was created, in UNIX epoch time format.

", "PutOptedOutNumberResult$OptedOutTimestamp": "

The time that the phone number was added to the OptOutList, in UNIX epoch time format.

", + "RegistrationAttachmentsInformation$CreatedTimestamp": "

The time when the registration attachment was created, in UNIX epoch time format.

", + "RegistrationInformation$CreatedTimestamp": "

The time when the registration was created, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$DraftTimestamp": "

The time when the registration was in the draft state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$SubmittedTimestamp": "

The time when the registration was in the submitted state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$ReviewingTimestamp": "

The time when the registration was in the reviewing state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$ApprovedTimestamp": "

The time when the registration was in the approved state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$DiscardedTimestamp": "

The time when the registration was in the discarded state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$DeniedTimestamp": "

The time when the registration was in the denied state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$RevokedTimestamp": "

The time when the registration was in the revoked state, in UNIX epoch time format.

", + "RegistrationVersionStatusHistory$ArchivedTimestamp": "

The time when the registration was in the archived state, in UNIX epoch time format.

", "ReleasePhoneNumberResult$CreatedTimestamp": "

The time when the phone number was created, in UNIX epoch time format.

", "RequestPhoneNumberResult$CreatedTimestamp": "

The time when the phone number was created, in UNIX epoch time format.

", "UpdatePhoneNumberResult$CreatedTimestamp": "

The time when the phone number was created, in UNIX epoch time format.

", - "UpdatePoolResult$CreatedTimestamp": "

The time when the pool was created, in UNIX epoch time format.

" + "UpdatePoolResult$CreatedTimestamp": "

The time when the pool was created, in UNIX epoch time format.

", + "VerifiedDestinationNumberInformation$CreatedTimestamp": "

The time when the destination phone number was created, in UNIX epoch time format.

", + "VerifyDestinationNumberResult$CreatedTimestamp": "

The time when the destination phone number was created, in UNIX epoch time format.

" } }, "TwoWayChannelArn": { @@ -1590,6 +2571,16 @@ "refs": { } }, + "UpdateSenderIdRequest": { + "base": null, + "refs": { + } + }, + "UpdateSenderIdResult": { + "base": null, + "refs": { + } + }, "ValidationException": { "base": "

A validation exception for a field.

", "refs": { @@ -1613,6 +2604,87 @@ "ValidationException$Reason": "

The reason for the exception.

" } }, + "VerificationChannel": { + "base": null, + "refs": { + "SendDestinationNumberVerificationCodeRequest$VerificationChannel": "

Choose to send the verification code as an SMS or voice message.

" + } + }, + "VerificationCode": { + "base": null, + "refs": { + "VerifyDestinationNumberRequest$VerificationCode": "

The verification code that was received by the verified destination phone number.

" + } + }, + "VerificationMessageOriginationIdentity": { + "base": null, + "refs": { + "SendDestinationNumberVerificationCodeRequest$OriginationIdentity": "

The origination identity of the message. This can be either the PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn.

" + } + }, + "VerificationStatus": { + "base": null, + "refs": { + "CreateVerifiedDestinationNumberResult$Status": "

The status of the verified destination phone number.

  • PENDING: The phone number hasn't been verified yet.

  • VERIFIED: The phone number is verified and can receive messages.

", + "VerifiedDestinationNumberInformation$Status": "

The status of the verified destination phone number.

  • PENDING: The phone number hasn't been verified yet.

  • VERIFIED: The phone number is verified and can receive messages.

", + "VerifyDestinationNumberResult$Status": "

The status for being able to send messages to the phone number.

" + } + }, + "VerifiedDestinationNumberFilter": { + "base": "

The filter definition for filtering verified destination phone numbers that meets a specified criteria.

", + "refs": { + "VerifiedDestinationNumberFilterList$member": null + } + }, + "VerifiedDestinationNumberFilterList": { + "base": null, + "refs": { + "DescribeVerifiedDestinationNumbersRequest$Filters": "

An array of VerifiedDestinationNumberFilter objects to filter the results.

" + } + }, + "VerifiedDestinationNumberFilterName": { + "base": null, + "refs": { + "VerifiedDestinationNumberFilter$Name": "

The name of the attribute to filter on.

" + } + }, + "VerifiedDestinationNumberIdList": { + "base": null, + "refs": { + "DescribeVerifiedDestinationNumbersRequest$VerifiedDestinationNumberIds": "

An array of VerifiedDestinationNumberid to retreive.

" + } + }, + "VerifiedDestinationNumberIdOrArn": { + "base": null, + "refs": { + "DeleteVerifiedDestinationNumberRequest$VerifiedDestinationNumberId": "

The unique identifier for the verified destination phone number.

", + "SendDestinationNumberVerificationCodeRequest$VerifiedDestinationNumberId": "

The unique identifier for the verified destination phone number.

", + "VerifiedDestinationNumberIdList$member": null, + "VerifyDestinationNumberRequest$VerifiedDestinationNumberId": "

The unique identifier for the verififed destination phone number.

" + } + }, + "VerifiedDestinationNumberInformation": { + "base": "

Provides information about the requested verified destintion phone number.

", + "refs": { + "VerifiedDestinationNumberInformationList$member": null + } + }, + "VerifiedDestinationNumberInformationList": { + "base": null, + "refs": { + "DescribeVerifiedDestinationNumbersResult$VerifiedDestinationNumbers": "

An array of VerifiedDestinationNumberInformation objects

" + } + }, + "VerifyDestinationNumberRequest": { + "base": null, + "refs": { + } + }, + "VerifyDestinationNumberResult": { + "base": null, + "refs": { + } + }, "VoiceId": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://sms-voice-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://sms-voice-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://sms-voice.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://sms-voice.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,444 @@ +{ + "testCases": [ + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://sms-voice.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -48,6 +48,48 @@ "limit_key": "MaxResults", "result_key": "Pools" }, + "DescribeRegistrationAttachments": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationAttachments" + }, + "DescribeRegistrationFieldDefinitions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationFieldDefinitions" + }, + "DescribeRegistrationFieldValues": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationFieldValues" + }, + "DescribeRegistrationSectionDefinitions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationSectionDefinitions" + }, + "DescribeRegistrationTypeDefinitions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationTypeDefinitions" + }, + "DescribeRegistrationVersions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationVersions" + }, + "DescribeRegistrations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Registrations" + }, "DescribeSenderIds": { "input_token": "NextToken", "output_token": "NextToken", @@ -60,11 +102,23 @@ "limit_key": "MaxResults", "result_key": "SpendLimits" }, + "DescribeVerifiedDestinationNumbers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "VerifiedDestinationNumbers" + }, "ListPoolOriginationIdentities": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "OriginationIdentities" + }, + "ListRegistrationAssociations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RegistrationAssociations" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -223,6 +223,7 @@ }, "BatchArraySize":{ "type":"integer", + "box":true, "max":10000, "min":2 }, @@ -296,6 +297,7 @@ }, "BatchRetryAttempts":{ "type":"integer", + "box":true, "max":10, "min":1 }, @@ -337,6 +339,25 @@ "max":1000, "min":0 }, + "CloudwatchLogGroupArn":{ + "type":"string", + "max":1600, + "min":1, + "pattern":"^(^arn:aws([a-z]|\\-)*:logs:([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}):(\\d{12}):log-group:.+)$" + }, + "CloudwatchLogsLogDestination":{ + "type":"structure", + "members":{ + "LogGroupArn":{"shape":"CloudwatchLogGroupArn"} + } + }, + "CloudwatchLogsLogDestinationParameters":{ + "type":"structure", + "required":["LogGroupArn"], + "members":{ + "LogGroupArn":{"shape":"CloudwatchLogGroupArn"} + } + }, "ConflictException":{ "type":"structure", "required":[ @@ -368,6 +389,7 @@ "DesiredState":{"shape":"RequestedPipeState"}, "Enrichment":{"shape":"OptionalArn"}, "EnrichmentParameters":{"shape":"PipeEnrichmentParameters"}, + "LogConfiguration":{"shape":"PipeLogConfigurationParameters"}, "Name":{ "shape":"PipeName", "location":"uri", @@ -454,6 +476,7 @@ "Enrichment":{"shape":"OptionalArn"}, "EnrichmentParameters":{"shape":"PipeEnrichmentParameters"}, "LastModifiedTime":{"shape":"Timestamp"}, + "LogConfiguration":{"shape":"PipeLogConfiguration"}, "Name":{"shape":"PipeName"}, "RoleArn":{"shape":"RoleArn"}, "Source":{"shape":"ArnOrUrl"}, @@ -579,6 +602,7 @@ }, "EphemeralStorageSize":{ "type":"integer", + "box":true, "max":200, "min":21 }, @@ -633,6 +657,25 @@ "max":5, "min":0 }, + "FirehoseArn":{ + "type":"string", + "max":1600, + "min":1, + "pattern":"^(^arn:aws([a-z]|\\-)*:firehose:([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}):(\\d{12}):deliverystream/.+)$" + }, + "FirehoseLogDestination":{ + "type":"structure", + "members":{ + "DeliveryStreamArn":{"shape":"FirehoseArn"} + } + }, + "FirehoseLogDestinationParameters":{ + "type":"structure", + "required":["DeliveryStreamArn"], + "members":{ + "DeliveryStreamArn":{"shape":"FirehoseArn"} + } + }, "HeaderKey":{ "type":"string", "max":512, @@ -651,6 +694,14 @@ "pattern":"^[ \\t]*[\\x20-\\x7E]+([ \\t]+[\\x20-\\x7E]+)*[ \\t]*|(\\$(\\.[\\w/_-]+(\\[(\\d+|\\*)\\])*)*)$", "sensitive":true }, + "IncludeExecutionData":{ + "type":"list", + "member":{"shape":"IncludeExecutionDataOption"} + }, + "IncludeExecutionDataOption":{ + "type":"string", + "enum":["ALL"] + }, "InputTemplate":{ "type":"string", "max":8192, @@ -804,6 +855,15 @@ "tags":{"shape":"TagMap"} } }, + "LogLevel":{ + "type":"string", + "enum":[ + "OFF", + "ERROR", + "INFO", + "TRACE" + ] + }, "LogStreamName":{ "type":"string", "max":256, @@ -908,9 +968,7 @@ }, "PathParameterList":{ "type":"list", - "member":{"shape":"PathParameter"}, - "max":1, - "min":0 + "member":{"shape":"PathParameter"} }, "Pipe":{ "type":"structure", @@ -959,6 +1017,27 @@ "type":"list", "member":{"shape":"Pipe"} }, + "PipeLogConfiguration":{ + "type":"structure", + "members":{ + "CloudwatchLogsLogDestination":{"shape":"CloudwatchLogsLogDestination"}, + "FirehoseLogDestination":{"shape":"FirehoseLogDestination"}, + "IncludeExecutionData":{"shape":"IncludeExecutionData"}, + "Level":{"shape":"LogLevel"}, + "S3LogDestination":{"shape":"S3LogDestination"} + } + }, + "PipeLogConfigurationParameters":{ + "type":"structure", + "required":["Level"], + "members":{ + "CloudwatchLogsLogDestination":{"shape":"CloudwatchLogsLogDestinationParameters"}, + "FirehoseLogDestination":{"shape":"FirehoseLogDestinationParameters"}, + "IncludeExecutionData":{"shape":"IncludeExecutionData"}, + "Level":{"shape":"LogLevel"}, + "S3LogDestination":{"shape":"S3LogDestinationParameters"} + } + }, "PipeName":{ "type":"string", "max":64, @@ -1081,7 +1160,11 @@ "CREATE_FAILED", "UPDATE_FAILED", "START_FAILED", - "STOP_FAILED" + "STOP_FAILED", + "DELETE_FAILED", + "CREATE_ROLLBACK_FAILED", + "DELETE_ROLLBACK_FAILED", + "UPDATE_ROLLBACK_FAILED" ] }, "PipeStateReason":{ @@ -1330,6 +1413,50 @@ "min":1, "pattern":"^arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z0-9+=,.@\\-_/]+$" }, + "S3LogDestination":{ + "type":"structure", + "members":{ + "BucketName":{"shape":"String"}, + "BucketOwner":{"shape":"String"}, + "OutputFormat":{"shape":"S3OutputFormat"}, + "Prefix":{"shape":"String"} + } + }, + "S3LogDestinationParameters":{ + "type":"structure", + "required":[ + "BucketName", + "BucketOwner" + ], + "members":{ + "BucketName":{"shape":"S3LogDestinationParametersBucketNameString"}, + "BucketOwner":{"shape":"S3LogDestinationParametersBucketOwnerString"}, + "OutputFormat":{"shape":"S3OutputFormat"}, + "Prefix":{"shape":"S3LogDestinationParametersPrefixString"} + } + }, + "S3LogDestinationParametersBucketNameString":{ + "type":"string", + "max":63, + "min":3 + }, + "S3LogDestinationParametersBucketOwnerString":{ + "type":"string", + "pattern":"^\\d{12}$" + }, + "S3LogDestinationParametersPrefixString":{ + "type":"string", + "max":256, + "min":0 + }, + "S3OutputFormat":{ + "type":"string", + "enum":[ + "json", + "plain", + "w3c" + ] + }, "SageMakerPipelineParameter":{ "type":"structure", "required":[ @@ -1453,6 +1580,7 @@ "Sqls":{ "type":"list", "member":{"shape":"Sql"}, + "max":40, "min":1 }, "StartPipeRequest":{ @@ -1657,6 +1785,7 @@ "DesiredState":{"shape":"RequestedPipeState"}, "Enrichment":{"shape":"OptionalArn"}, "EnrichmentParameters":{"shape":"PipeEnrichmentParameters"}, + "LogConfiguration":{"shape":"PipeLogConfigurationParameters"}, "Name":{ "shape":"PipeName", "location":"uri", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -11,14 +11,14 @@ "StopPipe": "

Stop an existing pipe.

", "TagResource": "

Assigns one or more tags (key-value pairs) to the specified pipe. Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a pipe that already has tags. If you specify a new tag key, this tag is appended to the list of tags associated with the pipe. If you specify a tag key that is already associated with the pipe, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a pipe.

", "UntagResource": "

Removes one or more tags from the specified pipes.

", - "UpdatePipe": "

Update an existing pipe. When you call UpdatePipe, only the fields that are included in the request are changed, the rest are unchanged. The exception to this is if you modify any Amazon Web Services-service specific fields in the SourceParameters, EnrichmentParameters, or TargetParameters objects. The fields in these objects are updated atomically as one and override existing values. This is by design and means that if you don't specify an optional field in one of these Parameters objects, that field will be set to its system-default value after the update.

For more information about pipes, see Amazon EventBridge Pipes in the Amazon EventBridge User Guide.

" + "UpdatePipe": "

Update an existing pipe. When you call UpdatePipe, EventBridge only the updates fields you have specified in the request; the rest remain unchanged. The exception to this is if you modify any Amazon Web Services-service specific fields in the SourceParameters, EnrichmentParameters, or TargetParameters objects. For example, DynamoDBStreamParameters or EventBridgeEventBusParameters. EventBridge updates the fields in these objects atomically as one and overrides existing values. This is by design, and means that if you don't specify an optional field in one of these Parameters objects, EventBridge sets that field to its system-default value during the update.

For more information about pipes, see Amazon EventBridge Pipes in the Amazon EventBridge User Guide.

" }, "shapes": { "Arn": { "base": null, "refs": { "CreatePipeRequest$Target": "

The ARN of the target resource.

", - "DeadLetterConfig$Arn": "

The ARN of the Amazon SQS queue specified as the target for the dead-letter queue.

", + "DeadLetterConfig$Arn": "

The ARN of the specified target for the dead-letter queue.

For Amazon Kinesis stream and Amazon DynamoDB stream sources, specify either an Amazon SNS topic or Amazon SQS queue ARN.

", "DescribePipeResponse$Target": "

The ARN of the target resource.

", "Pipe$Target": "

The ARN of the target resource.

", "UpdatePipeRequest$Target": "

The ARN of the target resource.

" @@ -175,6 +175,25 @@ "CapacityProviderStrategyItem$weight": "

The weight value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The weight value is taken into consideration after the base value, if defined, is satisfied.

" } }, + "CloudwatchLogGroupArn": { + "base": null, + "refs": { + "CloudwatchLogsLogDestination$LogGroupArn": "

The Amazon Web Services Resource Name (ARN) for the CloudWatch log group to which EventBridge sends the log records.

", + "CloudwatchLogsLogDestinationParameters$LogGroupArn": "

The Amazon Web Services Resource Name (ARN) for the CloudWatch log group to which EventBridge sends the log records.

" + } + }, + "CloudwatchLogsLogDestination": { + "base": "

The Amazon CloudWatch Logs logging configuration settings for the pipe.

", + "refs": { + "PipeLogConfiguration$CloudwatchLogsLogDestination": "

The Amazon CloudWatch Logs logging configuration settings for the pipe.

" + } + }, + "CloudwatchLogsLogDestinationParameters": { + "base": "

The Amazon CloudWatch Logs logging configuration settings for the pipe.

", + "refs": { + "PipeLogConfigurationParameters$CloudwatchLogsLogDestination": "

The Amazon CloudWatch Logs logging configuration settings for the pipe.

" + } + }, "ConflictException": { "base": "

An action you attempted resulted in an exception.

", "refs": { @@ -350,7 +369,7 @@ "EventBridgeEndpointId": { "base": null, "refs": { - "PipeTargetEventBridgeEventBusParameters$EndpointId": "

The URL subdomain of the endpoint. For example, if the URL for Endpoint is https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

When using Java, you must include auth-crt on the class path.

" + "PipeTargetEventBridgeEventBusParameters$EndpointId": "

The URL subdomain of the endpoint. For example, if the URL for Endpoint is https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

" } }, "EventBridgeEventResourceList": { @@ -378,10 +397,10 @@ } }, "FilterCriteria": { - "base": "

The collection of event patterns used to filter events. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", + "base": "

The collection of event patterns used to filter events.

To remove a filter, specify a FilterCriteria object with an empty array of Filter objects.

For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", "refs": { - "PipeSourceParameters$FilterCriteria": "

The collection of event patterns used to filter events. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", - "UpdatePipeSourceParameters$FilterCriteria": "

The collection of event patterns used to filter events. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

" + "PipeSourceParameters$FilterCriteria": "

The collection of event patterns used to filter events.

To remove a filter, specify a FilterCriteria object with an empty array of Filter objects.

For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", + "UpdatePipeSourceParameters$FilterCriteria": "

The collection of event patterns used to filter events.

To remove a filter, specify a FilterCriteria object with an empty array of Filter objects.

For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

" } }, "FilterList": { @@ -390,6 +409,25 @@ "FilterCriteria$Filters": "

The event patterns.

" } }, + "FirehoseArn": { + "base": null, + "refs": { + "FirehoseLogDestination$DeliveryStreamArn": "

The Amazon Resource Name (ARN) of the Kinesis Data Firehose delivery stream to which EventBridge delivers the pipe log records.

", + "FirehoseLogDestinationParameters$DeliveryStreamArn": "

Specifies the Amazon Resource Name (ARN) of the Kinesis Data Firehose delivery stream to which EventBridge delivers the pipe log records.

" + } + }, + "FirehoseLogDestination": { + "base": "

The Amazon Kinesis Data Firehose logging configuration settings for the pipe.

", + "refs": { + "PipeLogConfiguration$FirehoseLogDestination": "

The Amazon Kinesis Data Firehose logging configuration settings for the pipe.

" + } + }, + "FirehoseLogDestinationParameters": { + "base": "

The Amazon Kinesis Data Firehose logging configuration settings for the pipe.

", + "refs": { + "PipeLogConfigurationParameters$FirehoseLogDestination": "

The Amazon Kinesis Data Firehose logging configuration settings for the pipe.

" + } + }, "HeaderKey": { "base": null, "refs": { @@ -409,11 +447,24 @@ "HeaderParametersMap$value": null } }, + "IncludeExecutionData": { + "base": null, + "refs": { + "PipeLogConfiguration$IncludeExecutionData": "

Whether the execution data (specifically, the payload, awsRequest, and awsResponse fields) is included in the log messages for this pipe.

This applies to all log destinations for the pipe.

For more information, see Including execution data in logs in the Amazon EventBridge User Guide.

", + "PipeLogConfigurationParameters$IncludeExecutionData": "

Specify ON to include the execution data (specifically, the payload and awsRequest fields) in the log messages for this pipe.

This applies to all log destinations for the pipe.

For more information, see Including execution data in logs in the Amazon EventBridge User Guide.

The default is OFF.

" + } + }, + "IncludeExecutionDataOption": { + "base": null, + "refs": { + "IncludeExecutionData$member": null + } + }, "InputTemplate": { "base": null, "refs": { - "PipeEnrichmentParameters$InputTemplate": "

Valid JSON text passed to the enrichment. In this case, nothing from the event itself is passed to the enrichment. For more information, see The JavaScript Object Notation (JSON) Data Interchange Format.

", - "PipeTargetParameters$InputTemplate": "

Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target. For more information, see The JavaScript Object Notation (JSON) Data Interchange Format.

" + "PipeEnrichmentParameters$InputTemplate": "

Valid JSON text passed to the enrichment. In this case, nothing from the event itself is passed to the enrichment. For more information, see The JavaScript Object Notation (JSON) Data Interchange Format.

To remove an input template, specify an empty string.

", + "PipeTargetParameters$InputTemplate": "

Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target. For more information, see The JavaScript Object Notation (JSON) Data Interchange Format.

To remove an input template, specify an empty string.

" } }, "Integer": { @@ -529,6 +580,13 @@ "refs": { } }, + "LogLevel": { + "base": null, + "refs": { + "PipeLogConfiguration$Level": "

The level of logging detail to include. This applies to all log destinations for the pipe.

", + "PipeLogConfigurationParameters$Level": "

The level of logging detail to include. This applies to all log destinations for the pipe.

For more information, see Specifying EventBridge Pipes log level in the Amazon EventBridge User Guide.

" + } + }, "LogStreamName": { "base": null, "refs": { @@ -711,6 +769,19 @@ "ListPipesResponse$Pipes": "

The pipes returned by the call.

" } }, + "PipeLogConfiguration": { + "base": "

The logging configuration settings for the pipe.

", + "refs": { + "DescribePipeResponse$LogConfiguration": "

The logging configuration settings for the pipe.

" + } + }, + "PipeLogConfigurationParameters": { + "base": "

Specifies the logging configuration settings for the pipe.

When you call UpdatePipe, EventBridge updates the fields in the PipeLogConfigurationParameters object atomically as one and overrides existing values. This is by design. If you don't specify an optional field in any of the Amazon Web Services service parameters objects (CloudwatchLogsLogDestinationParameters, FirehoseLogDestinationParameters, or S3LogDestinationParameters), EventBridge sets that field to its system-default value during the update.

For example, suppose when you created the pipe you specified a Kinesis Data Firehose stream log destination. You then update the pipe to add an Amazon S3 log destination. In addition to specifying the S3LogDestinationParameters for the new log destination, you must also specify the fields in the FirehoseLogDestinationParameters object in order to retain the Kinesis Data Firehose stream log destination.

For more information on generating pipe log records, see Log EventBridge Pipes in the Amazon EventBridge User Guide.

", + "refs": { + "CreatePipeRequest$LogConfiguration": "

The logging configuration settings for the pipe.

", + "UpdatePipeRequest$LogConfiguration": "

The logging configuration settings for the pipe.

" + } + }, "PipeName": { "base": null, "refs": { @@ -832,14 +903,14 @@ "PipeTargetInvocationType": { "base": null, "refs": { - "PipeTargetLambdaFunctionParameters$InvocationType": "

Choose from the following options.

  • RequestResponse (default) - Invoke the function synchronously. Keep the connection open until the function returns a response or times out. The API response includes the function response and additional data.

  • Event - Invoke the function asynchronously. Send events that fail multiple times to the function's dead-letter queue (if it's configured). The API response only includes a status code.

  • DryRun - Validate parameter values and verify that the user or role has permission to invoke the function.

", - "PipeTargetStateMachineParameters$InvocationType": "

Specify whether to wait for the state machine to finish or not.

" + "PipeTargetLambdaFunctionParameters$InvocationType": "

Specify whether to invoke the function synchronously or asynchronously.

  • REQUEST_RESPONSE (default) - Invoke synchronously. This corresponds to the RequestResponse option in the InvocationType parameter for the Lambda Invoke API.

  • FIRE_AND_FORGET - Invoke asynchronously. This corresponds to the Event option in the InvocationType parameter for the Lambda Invoke API.

For more information, see Invocation types in the Amazon EventBridge User Guide.

", + "PipeTargetStateMachineParameters$InvocationType": "

Specify whether to invoke the Step Functions state machine synchronously or asynchronously.

  • REQUEST_RESPONSE (default) - Invoke synchronously. For more information, see StartSyncExecution in the Step Functions API Reference.

    REQUEST_RESPONSE is not supported for STANDARD state machine workflows.

  • FIRE_AND_FORGET - Invoke asynchronously. For more information, see StartExecution in the Step Functions API Reference.

For more information, see Invocation types in the Amazon EventBridge User Guide.

" } }, "PipeTargetKinesisStreamParameters": { - "base": "

The parameters for using a Kinesis stream as a source.

", + "base": "

The parameters for using a Kinesis stream as a target.

", "refs": { - "PipeTargetParameters$KinesisStreamParameters": "

The parameters for using a Kinesis stream as a source.

" + "PipeTargetParameters$KinesisStreamParameters": "

The parameters for using a Kinesis stream as a target.

" } }, "PipeTargetLambdaFunctionParameters": { @@ -849,17 +920,17 @@ } }, "PipeTargetParameters": { - "base": "

The parameters required to set up a target for your pipe.

", + "base": "

The parameters required to set up a target for your pipe.

For more information about pipe target parameters, including how to use dynamic path parameters, see Target parameters in the Amazon EventBridge User Guide.

", "refs": { - "CreatePipeRequest$TargetParameters": "

The parameters required to set up a target for your pipe.

", - "DescribePipeResponse$TargetParameters": "

The parameters required to set up a target for your pipe.

", - "UpdatePipeRequest$TargetParameters": "

The parameters required to set up a target for your pipe.

" + "CreatePipeRequest$TargetParameters": "

The parameters required to set up a target for your pipe.

For more information about pipe target parameters, including how to use dynamic path parameters, see Target parameters in the Amazon EventBridge User Guide.

", + "DescribePipeResponse$TargetParameters": "

The parameters required to set up a target for your pipe.

For more information about pipe target parameters, including how to use dynamic path parameters, see Target parameters in the Amazon EventBridge User Guide.

", + "UpdatePipeRequest$TargetParameters": "

The parameters required to set up a target for your pipe.

For more information about pipe target parameters, including how to use dynamic path parameters, see Target parameters in the Amazon EventBridge User Guide.

" } }, "PipeTargetRedshiftDataParameters": { - "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API ExecuteStatement.

", + "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API BatchExecuteStatement.

", "refs": { - "PipeTargetParameters$RedshiftDataParameters": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API ExecuteStatement.

" + "PipeTargetParameters$RedshiftDataParameters": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API BatchExecuteStatement.

" } }, "PipeTargetSageMakerPipelineParameters": { @@ -869,9 +940,9 @@ } }, "PipeTargetSqsQueueParameters": { - "base": "

The parameters for using a Amazon SQS stream as a source.

", + "base": "

The parameters for using a Amazon SQS stream as a target.

", "refs": { - "PipeTargetParameters$SqsQueueParameters": "

The parameters for using a Amazon SQS stream as a source.

" + "PipeTargetParameters$SqsQueueParameters": "

The parameters for using a Amazon SQS stream as a target.

" } }, "PipeTargetStateMachineParameters": { @@ -994,6 +1065,43 @@ "UpdatePipeRequest$RoleArn": "

The ARN of the role that allows the pipe to send data to the target.

" } }, + "S3LogDestination": { + "base": "

The Amazon S3 logging configuration settings for the pipe.

", + "refs": { + "PipeLogConfiguration$S3LogDestination": "

The Amazon S3 logging configuration settings for the pipe.

" + } + }, + "S3LogDestinationParameters": { + "base": "

The Amazon S3 logging configuration settings for the pipe.

", + "refs": { + "PipeLogConfigurationParameters$S3LogDestination": "

The Amazon S3 logging configuration settings for the pipe.

" + } + }, + "S3LogDestinationParametersBucketNameString": { + "base": null, + "refs": { + "S3LogDestinationParameters$BucketName": "

Specifies the name of the Amazon S3 bucket to which EventBridge delivers the log records for the pipe.

" + } + }, + "S3LogDestinationParametersBucketOwnerString": { + "base": null, + "refs": { + "S3LogDestinationParameters$BucketOwner": "

Specifies the Amazon Web Services account that owns the Amazon S3 bucket to which EventBridge delivers the log records for the pipe.

" + } + }, + "S3LogDestinationParametersPrefixString": { + "base": null, + "refs": { + "S3LogDestinationParameters$Prefix": "

Specifies any prefix text with which to begin Amazon S3 log object names.

You can use prefixes to organize the data that you store in Amazon S3 buckets. A prefix is a string of characters at the beginning of the object key name. A prefix can be any length, subject to the maximum length of the object key name (1,024 bytes). For more information, see Organizing objects using prefixes in the Amazon Simple Storage Service User Guide.

" + } + }, + "S3OutputFormat": { + "base": null, + "refs": { + "S3LogDestination$OutputFormat": "

The format EventBridge uses for the log records.

", + "S3LogDestinationParameters$OutputFormat": "

How EventBridge should format the log records.

" + } + }, "SageMakerPipelineParameter": { "base": "

Name/Value pair of a parameter to start execution of a SageMaker Model Building Pipeline.

", "refs": { @@ -1035,7 +1143,7 @@ "SecretManagerArnOrJsonPath": { "base": "

// For targets, can either specify an ARN or a jsonpath pointing to the ARN.

", "refs": { - "PipeTargetRedshiftDataParameters$SecretManagerArn": "

The name or ARN of the secret that enables access to the database. Required when authenticating using SageMaker.

" + "PipeTargetRedshiftDataParameters$SecretManagerArn": "

The name or ARN of the secret that enables access to the database. Required when authenticating using Secrets Manager.

" } }, "SecurityGroup": { @@ -1152,6 +1260,9 @@ "PipeTargetBatchJobParameters$JobName": "

The name of the job. It can be up to 128 letters long. The first character must be alphanumeric, can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).

", "PipeTargetEcsTaskParameters$Group": "

Specifies an Amazon ECS task group for the task. The maximum length is 255 characters.

", "PipeTargetEcsTaskParameters$PlatformVersion": "

Specifies the platform version for the task. Specify only the numeric portion of the platform version, such as 1.1.0.

This structure is used only if LaunchType is FARGATE. For more information about valid platform versions, see Fargate Platform Versions in the Amazon Elastic Container Service Developer Guide.

", + "S3LogDestination$BucketName": "

The name of the Amazon S3 bucket to which EventBridge delivers the log records for the pipe.

", + "S3LogDestination$BucketOwner": "

The Amazon Web Services account that owns the Amazon S3 bucket to which EventBridge delivers the log records for the pipe.

", + "S3LogDestination$Prefix": "

The prefix text with which to begin Amazon S3 log object names.

For more information, see Organizing objects using prefixes in the Amazon Simple Storage Service User Guide.

", "ServiceQuotaExceededException$message": null, "ServiceQuotaExceededException$quotaCode": "

The identifier of the quota that caused the exception.

", "ServiceQuotaExceededException$resourceId": "

The ID of the resource that caused the exception.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pipes/2015-10-07/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pipes/2015-10-07/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,54 +1,54 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://pipes-fips.us-gov-east-1.api.aws" + "url": "https://pipes-fips.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://pipes-fips.us-gov-east-1.amazonaws.com" + "url": "https://pipes-fips.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-gov-east-1", "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://pipes.us-gov-east-1.api.aws" + "url": "https://pipes.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://pipes.us-gov-east-1.amazonaws.com" + "url": "https://pipes.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-gov-east-1", "UseDualStack": false } }, @@ -60,8 +60,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -73,8 +73,8 @@ } }, "params": { - "UseFIPS": true, "Region": "cn-north-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -86,8 +86,8 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -99,108 +99,108 @@ } }, "params": { - "UseFIPS": false, "Region": "cn-north-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://pipes-fips.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://pipes-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://pipes-fips.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://pipes.us-gov-east-1.api.aws" + } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://pipes.us-iso-east-1.c2s.ic.gov" + "url": "https://pipes.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-iso-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://pipes-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://pipes-fips.us-east-1.amazonaws.com" + "url": "https://pipes-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-east-1", "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://pipes.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://pipes.us-east-1.amazonaws.com" + "url": "https://pipes.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-east-1", "UseDualStack": false } }, @@ -210,8 +210,8 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": true } }, @@ -223,8 +223,8 @@ } }, "params": { - "UseFIPS": true, "Region": "us-isob-east-1", + "UseFIPS": true, "UseDualStack": false } }, @@ -234,8 +234,8 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": true } }, @@ -247,21 +247,34 @@ } }, "params": { - "UseFIPS": false, "Region": "us-isob-east-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -272,8 +285,8 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, "UseDualStack": false, "Endpoint": "https://example.com" } @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/polly/2016-06-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/polly/2016-06-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/polly/2016-06-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/polly/2016-06-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -220,7 +220,8 @@ "type":"string", "enum":[ "standard", - "neural" + "neural", + "long-form" ] }, "EngineList":{ @@ -865,7 +866,9 @@ "Sofie", "Lisa", "Isabelle", - "Zayd" + "Zayd", + "Danielle", + "Gregory" ] }, "VoiceList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/polly/2016-06-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/polly/2016-06-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/polly/2016-06-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/polly/2016-06-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -60,17 +60,17 @@ "Engine": { "base": null, "refs": { - "DescribeVoicesInput$Engine": "

Specifies the engine (standard or neural) used by Amazon Polly when processing input text for speech synthesis.

", + "DescribeVoicesInput$Engine": "

Specifies the engine (standard, neural or long-form) used by Amazon Polly when processing input text for speech synthesis.

", "EngineList$member": null, - "StartSpeechSynthesisTaskInput$Engine": "

Specifies the engine (standard or neural) for Amazon Polly to use when processing input text for speech synthesis. Using a voice that is not supported for the engine selected will result in an error.

", - "SynthesisTask$Engine": "

Specifies the engine (standard or neural) for Amazon Polly to use when processing input text for speech synthesis. Using a voice that is not supported for the engine selected will result in an error.

", - "SynthesizeSpeechInput$Engine": "

Specifies the engine (standard or neural) for Amazon Polly to use when processing input text for speech synthesis. For information on Amazon Polly voices and which voices are available in standard-only, NTTS-only, and both standard and NTTS formats, see Available Voices.

NTTS-only voices

When using NTTS-only voices such as Kevin (en-US), this parameter is required and must be set to neural. If the engine is not specified, or is set to standard, this will result in an error.

Type: String

Valid Values: standard | neural

Required: Yes

Standard voices

For standard voices, this is not required; the engine parameter defaults to standard. If the engine is not specified, or is set to standard and an NTTS-only voice is selected, this will result in an error.

" + "StartSpeechSynthesisTaskInput$Engine": "

Specifies the engine (standard, neural or long-form) for Amazon Polly to use when processing input text for speech synthesis. Using a voice that is not supported for the engine selected will result in an error.

", + "SynthesisTask$Engine": "

Specifies the engine (standard, neural or long-form) for Amazon Polly to use when processing input text for speech synthesis. Using a voice that is not supported for the engine selected will result in an error.

", + "SynthesizeSpeechInput$Engine": "

Specifies the engine (standard, neural or long-form) for Amazon Polly to use when processing input text for speech synthesis. For information on Amazon Polly voices and which voices are available for each engine, see Available Voices.

NTTS-only voices

When using NTTS-only voices such as Kevin (en-US), this parameter is required and must be set to neural. If the engine is not specified, or is set to standard, this will result in an error.

long-form-only voices

When using long-form-only voices such as Danielle (en-US), this parameter is required and must be set to long-form. If the engine is not specified, or is set to standard or neural, this will result in an error.

Type: String

Valid Values: standard | neural | long-form

Required: Yes

Standard voices

For standard voices, this is not required; the engine parameter defaults to standard. If the engine is not specified, or is set to standard and an NTTS-only voice is selected, this will result in an error.

" } }, "EngineList": { "base": null, "refs": { - "Voice$SupportedEngines": "

Specifies which engines (standard or neural) that are supported by a given voice.

" + "Voice$SupportedEngines": "

Specifies which engines (standard, neural or long-form) are supported by a given voice.

" } }, "EngineNotSupportedException": { @@ -382,9 +382,9 @@ "SampleRate": { "base": null, "refs": { - "StartSpeechSynthesisTaskInput$SampleRate": "

The audio frequency specified in Hz.

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", and \"24000\". The default value for standard voices is \"22050\". The default value for neural voices is \"24000\".

Valid values for pcm are \"8000\" and \"16000\" The default value is \"16000\".

", - "SynthesisTask$SampleRate": "

The audio frequency specified in Hz.

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", and \"24000\". The default value for standard voices is \"22050\". The default value for neural voices is \"24000\".

Valid values for pcm are \"8000\" and \"16000\" The default value is \"16000\".

", - "SynthesizeSpeechInput$SampleRate": "

The audio frequency specified in Hz.

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", and \"24000\". The default value for standard voices is \"22050\". The default value for neural voices is \"24000\".

Valid values for pcm are \"8000\" and \"16000\" The default value is \"16000\".

" + "StartSpeechSynthesisTaskInput$SampleRate": "

The audio frequency specified in Hz.

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", and \"24000\". The default value for standard voices is \"22050\". The default value for neural voices is \"24000\". The default value for long-form voices is \"24000\".

Valid values for pcm are \"8000\" and \"16000\" The default value is \"16000\".

", + "SynthesisTask$SampleRate": "

The audio frequency specified in Hz.

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", and \"24000\". The default value for standard voices is \"22050\". The default value for neural voices is \"24000\". The default value for long-form voices is \"24000\".

Valid values for pcm are \"8000\" and \"16000\" The default value is \"16000\".

", + "SynthesizeSpeechInput$SampleRate": "

The audio frequency specified in Hz.

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", and \"24000\". The default value for standard voices is \"22050\". The default value for neural voices is \"24000\". The default value for long-form voices is \"24000\".

Valid values for pcm are \"8000\" and \"16000\" The default value is \"16000\".

" } }, "ServiceFailureException": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/polly/2016-06-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/polly/2016-06-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/polly/2016-06-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/polly/2016-06-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pricing/2017-10-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pricing/2017-10-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pricing/2017-10-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pricing/2017-10-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,12 +1,12 @@ { "version": "2.0", - "service": "

The Amazon Web Services Price List API is a centralized and convenient way to programmatically query Amazon Web Services for services, products, and pricing information. The Amazon Web Services Price List uses standardized product attributes such as Location, Storage Class, and Operating System, and provides prices at the SKU level. You can use the Amazon Web Services Price List to do the following:

  • Build cost control and scenario planning tools

  • Reconcile billing data

  • Forecast future spend for budgeting purposes

  • Provide cost benefit analysis that compare your internal workloads with Amazon Web Services

Use GetServices without a service code to retrieve the service codes for all Amazon Web Services, then GetServices with a service code to retrieve the attribute names for that service. After you have the service code and attribute names, you can use GetAttributeValues to see what values are available for an attribute. With the service code and an attribute name and value, you can use GetProducts to find specific products that you're interested in, such as an AmazonEC2 instance, with a Provisioned IOPS volumeType.

You can use the following endpoints for the Amazon Web Services Price List API:

  • https://api.pricing.us-east-1.amazonaws.com

  • https://api.pricing.ap-south-1.amazonaws.com

", + "service": "

The Amazon Web Services Price List API is a centralized and convenient way to programmatically query Amazon Web Services for services, products, and pricing information. The Amazon Web Services Price List uses standardized product attributes such as Location, Storage Class, and Operating System, and provides prices at the SKU level. You can use the Amazon Web Services Price List to do the following:

  • Build cost control and scenario planning tools

  • Reconcile billing data

  • Forecast future spend for budgeting purposes

  • Provide cost benefit analysis that compare your internal workloads with Amazon Web Services

Use GetServices without a service code to retrieve the service codes for all Amazon Web Services, then GetServices with a service code to retrieve the attribute names for that service. After you have the service code and attribute names, you can use GetAttributeValues to see what values are available for an attribute. With the service code and an attribute name and value, you can use GetProducts to find specific products that you're interested in, such as an AmazonEC2 instance, with a Provisioned IOPS volumeType.

For more information, see Using the Amazon Web Services Price List API in the Billing User Guide.

", "operations": { "DescribeServices": "

Returns the metadata for one service or a list of the metadata for all services. Use this without a service code to get the service codes for all services. Use it with a service code, such as AmazonEC2, to get information specific to that service, such as the attribute names available for that service. For example, some of the attribute names available for EC2 are volumeType, maxIopsVolume, operation, locationType, and instanceCapacity10xlarge.

", "GetAttributeValues": "

Returns a list of attribute values. Attributes are similar to the details in a Price List API offer file. For a list of available attributes, see Offer File Definitions in the Billing and Cost Management User Guide.

", - "GetPriceListFileUrl": "

This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10).

This returns the URL that you can retrieve your Price List file from. This URL is based on the PriceListArn and FileFormat that you retrieve from the ListPriceLists response.

", + "GetPriceListFileUrl": "

This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10).

This returns the URL that you can retrieve your Price List file from. This URL is based on the PriceListArn and FileFormat that you retrieve from the ListPriceLists response.

", "GetProducts": "

Returns a list of all products that match the filter criteria.

", - "ListPriceLists": "

This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10).

This returns a list of Price List references that the requester if authorized to view, given a ServiceCode, CurrencyCode, and an EffectiveDate. Use without a RegionCode filter to list Price List references from all available Amazon Web Services Regions. Use with a RegionCode filter to get the Price List reference that's specific to a specific Amazon Web Services Region. You can use the PriceListArn from the response to get your preferred Price List files through the GetPriceListFileUrl API.

" + "ListPriceLists": "

This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10).

This returns a list of Price List references that the requester if authorized to view, given a ServiceCode, CurrencyCode, and an EffectiveDate. Use without a RegionCode filter to list Price List references from all available Amazon Web Services Regions. Use with a RegionCode filter to get the Price List reference that's specific to a specific Amazon Web Services Region. You can use the PriceListArn from the response to get your preferred Price List files through the GetPriceListFileUrl API.

" }, "shapes": { "AccessDeniedException": { @@ -72,7 +72,7 @@ "base": null, "refs": { "FileFormats$member": null, - "GetPriceListFileUrlRequest$FileFormat": "

The format that you want to retrieve your Price List files in. The FileFormat can be obtained from the ListPriceLists response.

" + "GetPriceListFileUrlRequest$FileFormat": "

The format that you want to retrieve your Price List files in. The FileFormat can be obtained from the ListPriceLists response.

" } }, "FileFormats": { @@ -174,7 +174,7 @@ "PriceListArn": { "base": null, "refs": { - "GetPriceListFileUrlRequest$PriceListArn": "

The unique identifier that maps to where your Price List files are located. PriceListArn can be obtained from the ListPriceLists response.

", + "GetPriceListFileUrlRequest$PriceListArn": "

The unique identifier that maps to where your Price List files are located. PriceListArn can be obtained from the ListPriceLists response.

", "PriceList$PriceListArn": "

The unique identifier that maps to where your Price List files are located. PriceListArn can be obtained from the ListPriceList response.

" } }, @@ -193,7 +193,7 @@ "RegionCode": { "base": null, "refs": { - "ListPriceListsRequest$RegionCode": "

This is used to filter the Price List by Amazon Web Services Region. For example, to get the price list only for the US East (N. Virginia) Region, use us-east-1. If nothing is specified, you retrieve price lists for all applicable Regions. The available RegionCode list can be retrieved from GetAttributeValues API.

", + "ListPriceListsRequest$RegionCode": "

This is used to filter the Price List by Amazon Web Services Region. For example, to get the price list only for the US East (N. Virginia) Region, use us-east-1. If nothing is specified, you retrieve price lists for all applicable Regions. The available RegionCode list can be retrieved from GetAttributeValues API.

", "PriceList$RegionCode": "

This is used to filter the Price List by Amazon Web Services Region. For example, to get the price list only for the US East (N. Virginia) Region, use us-east-1. If nothing is specified, you retrieve price lists for all applicable Regions. The available RegionCode list can be retrieved from GetAttributeValues API.

" } }, @@ -206,7 +206,7 @@ "ServiceCode": { "base": null, "refs": { - "ListPriceListsRequest$ServiceCode": "

The service code or the Savings Plan service code for the attributes that you want to retrieve. For example, to get the list of applicable Amazon EC2 price lists, use AmazonEC2. For a full list of service codes containing On-Demand and Reserved Instance (RI) pricing, use the DescribeServices API.

To retrieve the Compute Savings Plan price lists, use ComputeSavingsPlans. To retrieve Machine Learning Savings Plans price lists, use MachineLearningSavingsPlans.

" + "ListPriceListsRequest$ServiceCode": "

The service code or the Savings Plan service code for the attributes that you want to retrieve. For example, to get the list of applicable Amazon EC2 price lists, use AmazonEC2. For a full list of service codes containing On-Demand and Reserved Instance (RI) pricing, use the DescribeServices API.

To retrieve the Reserved Instance and Compute Savings Plan price lists, use ComputeSavingsPlans.

To retrieve Machine Learning Savings Plans price lists, use MachineLearningSavingsPlans.

" } }, "ServiceList": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/pricing/2017-10-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/pricing/2017-10-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/pricing/2017-10-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/pricing/2017-10-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,249 +140,200 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://api.pricing-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://api.pricing-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://api.pricing-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://api.pricing-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://api.pricing.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://api.pricing.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { "conditions": [], "endpoint": { - "url": "https://api.pricing.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://api.pricing.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://api.pricing.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://api.pricing.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,6198 @@ +{ + "metadata": { + "apiVersion": "2023-11-27", + "endpointPrefix": "qbusiness", + "jsonVersion": "1.1", + "protocol": "rest-json", + "serviceFullName": "QBusiness", + "serviceId": "QBusiness", + "signatureVersion": "v4", + "signingName": "qbusiness", + "uid": "qbusiness-2023-11-27" + }, + "operations": { + "BatchDeleteDocument": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/indices/{indexId}/documents/delete", + "responseCode": 200 + }, + "input": { + "shape": "BatchDeleteDocumentRequest" + }, + "name": "BatchDeleteDocument", + "output": { + "shape": "BatchDeleteDocumentResponse" + } + }, + "BatchPutDocument": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/indices/{indexId}/documents", + "responseCode": 200 + }, + "input": { + "shape": "BatchPutDocumentRequest" + }, + "name": "BatchPutDocument", + "output": { + "shape": "BatchPutDocumentResponse" + } + }, + "ChatSync": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "LicenseNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/conversations?sync", + "responseCode": 200 + }, + "input": { + "shape": "ChatSyncInput" + }, + "name": "ChatSync", + "output": { + "shape": "ChatSyncOutput" + } + }, + "CreateApplication": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "CreateApplicationRequest" + }, + "name": "CreateApplication", + "output": { + "shape": "CreateApplicationResponse" + } + }, + "CreateIndex": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/indices", + "responseCode": 200 + }, + "input": { + "shape": "CreateIndexRequest" + }, + "name": "CreateIndex", + "output": { + "shape": "CreateIndexResponse" + } + }, + "CreatePlugin": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/plugins", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "CreatePluginRequest" + }, + "name": "CreatePlugin", + "output": { + "shape": "CreatePluginResponse" + } + }, + "CreateRetriever": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/retrievers", + "responseCode": 200 + }, + "input": { + "shape": "CreateRetrieverRequest" + }, + "name": "CreateRetriever", + "output": { + "shape": "CreateRetrieverResponse" + } + }, + "CreateUser": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/users", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "CreateUserRequest" + }, + "name": "CreateUser", + "output": { + "shape": "CreateUserResponse" + } + }, + "CreateWebExperience": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/experiences", + "responseCode": 200 + }, + "input": { + "shape": "CreateWebExperienceRequest" + }, + "name": "CreateWebExperience", + "output": { + "shape": "CreateWebExperienceResponse" + } + }, + "DeleteApplication": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteApplicationRequest" + }, + "name": "DeleteApplication", + "output": { + "shape": "DeleteApplicationResponse" + } + }, + "DeleteChatControlsConfiguration": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/chatcontrols", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteChatControlsConfigurationRequest" + }, + "name": "DeleteChatControlsConfiguration", + "output": { + "shape": "DeleteChatControlsConfigurationResponse" + } + }, + "DeleteConversation": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "LicenseNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/conversations/{conversationId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteConversationRequest" + }, + "name": "DeleteConversation", + "output": { + "shape": "DeleteConversationResponse" + } + }, + "DeleteDataSource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteDataSourceRequest" + }, + "name": "DeleteDataSource", + "output": { + "shape": "DeleteDataSourceResponse" + } + }, + "DeleteGroup": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/indices/{indexId}/groups/{groupName}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteGroupRequest" + }, + "name": "DeleteGroup", + "output": { + "shape": "DeleteGroupResponse" + } + }, + "DeleteIndex": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/indices/{indexId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteIndexRequest" + }, + "name": "DeleteIndex", + "output": { + "shape": "DeleteIndexResponse" + } + }, + "DeletePlugin": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/plugins/{pluginId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeletePluginRequest" + }, + "name": "DeletePlugin", + "output": { + "shape": "DeletePluginResponse" + } + }, + "DeleteRetriever": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/retrievers/{retrieverId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteRetrieverRequest" + }, + "name": "DeleteRetriever", + "output": { + "shape": "DeleteRetrieverResponse" + } + }, + "DeleteUser": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/users/{userId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteUserRequest" + }, + "name": "DeleteUser", + "output": { + "shape": "DeleteUserResponse" + } + }, + "DeleteWebExperience": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/applications/{applicationId}/experiences/{webExperienceId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DeleteWebExperienceRequest" + }, + "name": "DeleteWebExperience", + "output": { + "shape": "DeleteWebExperienceResponse" + } + }, + "GetApplication": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}", + "responseCode": 200 + }, + "input": { + "shape": "GetApplicationRequest" + }, + "name": "GetApplication", + "output": { + "shape": "GetApplicationResponse" + } + }, + "GetChatControlsConfiguration": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/chatcontrols", + "responseCode": 200 + }, + "input": { + "shape": "GetChatControlsConfigurationRequest" + }, + "name": "GetChatControlsConfiguration", + "output": { + "shape": "GetChatControlsConfigurationResponse" + } + }, + "GetDataSource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + "responseCode": 200 + }, + "input": { + "shape": "GetDataSourceRequest" + }, + "name": "GetDataSource", + "output": { + "shape": "GetDataSourceResponse" + } + }, + "GetGroup": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices/{indexId}/groups/{groupName}", + "responseCode": 200 + }, + "input": { + "shape": "GetGroupRequest" + }, + "name": "GetGroup", + "output": { + "shape": "GetGroupResponse" + } + }, + "GetIndex": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices/{indexId}", + "responseCode": 200 + }, + "input": { + "shape": "GetIndexRequest" + }, + "name": "GetIndex", + "output": { + "shape": "GetIndexResponse" + } + }, + "GetPlugin": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/plugins/{pluginId}", + "responseCode": 200 + }, + "input": { + "shape": "GetPluginRequest" + }, + "name": "GetPlugin", + "output": { + "shape": "GetPluginResponse" + } + }, + "GetRetriever": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/retrievers/{retrieverId}", + "responseCode": 200 + }, + "input": { + "shape": "GetRetrieverRequest" + }, + "name": "GetRetriever", + "output": { + "shape": "GetRetrieverResponse" + } + }, + "GetUser": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/users/{userId}", + "responseCode": 200 + }, + "input": { + "shape": "GetUserRequest" + }, + "name": "GetUser", + "output": { + "shape": "GetUserResponse" + } + }, + "GetWebExperience": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/experiences/{webExperienceId}", + "responseCode": 200 + }, + "input": { + "shape": "GetWebExperienceRequest" + }, + "name": "GetWebExperience", + "output": { + "shape": "GetWebExperienceResponse" + } + }, + "ListApplications": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications", + "responseCode": 200 + }, + "input": { + "shape": "ListApplicationsRequest" + }, + "name": "ListApplications", + "output": { + "shape": "ListApplicationsResponse" + } + }, + "ListConversations": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "LicenseNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/conversations", + "responseCode": 200 + }, + "input": { + "shape": "ListConversationsRequest" + }, + "name": "ListConversations", + "output": { + "shape": "ListConversationsResponse" + } + }, + "ListDataSourceSyncJobs": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/syncjobs", + "responseCode": 200 + }, + "input": { + "shape": "ListDataSourceSyncJobsRequest" + }, + "name": "ListDataSourceSyncJobs", + "output": { + "shape": "ListDataSourceSyncJobsResponse" + } + }, + "ListDataSources": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources", + "responseCode": 200 + }, + "input": { + "shape": "ListDataSourcesRequest" + }, + "name": "ListDataSources", + "output": { + "shape": "ListDataSourcesResponse" + } + }, + "ListDocuments": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/index/{indexId}/documents", + "responseCode": 200 + }, + "input": { + "shape": "ListDocumentsRequest" + }, + "name": "ListDocuments", + "output": { + "shape": "ListDocumentsResponse" + } + }, + "ListGroups": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices/{indexId}/groups", + "responseCode": 200 + }, + "input": { + "shape": "ListGroupsRequest" + }, + "name": "ListGroups", + "output": { + "shape": "ListGroupsResponse" + } + }, + "ListIndices": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/indices", + "responseCode": 200 + }, + "input": { + "shape": "ListIndicesRequest" + }, + "name": "ListIndices", + "output": { + "shape": "ListIndicesResponse" + } + }, + "ListMessages": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "LicenseNotFoundException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/conversations/{conversationId}", + "responseCode": 200 + }, + "input": { + "shape": "ListMessagesRequest" + }, + "name": "ListMessages", + "output": { + "shape": "ListMessagesResponse" + } + }, + "ListPlugins": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/plugins", + "responseCode": 200 + }, + "input": { + "shape": "ListPluginsRequest" + }, + "name": "ListPlugins", + "output": { + "shape": "ListPluginsResponse" + } + }, + "ListRetrievers": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/retrievers", + "responseCode": 200 + }, + "input": { + "shape": "ListRetrieversRequest" + }, + "name": "ListRetrievers", + "output": { + "shape": "ListRetrieversResponse" + } + }, + "ListTagsForResource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/v1/tags/{resourceARN}", + "responseCode": 200 + }, + "input": { + "shape": "ListTagsForResourceRequest" + }, + "name": "ListTagsForResource", + "output": { + "shape": "ListTagsForResourceResponse" + } + }, + "ListWebExperiences": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "GET", + "requestUri": "/applications/{applicationId}/experiences", + "responseCode": 200 + }, + "input": { + "shape": "ListWebExperiencesRequest" + }, + "name": "ListWebExperiences", + "output": { + "shape": "ListWebExperiencesResponse" + } + }, + "PutFeedback": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/conversations/{conversationId}/messages/{messageId}/feedback", + "responseCode": 200 + }, + "input": { + "shape": "PutFeedbackRequest" + }, + "name": "PutFeedback" + }, + "PutGroup": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/indices/{indexId}/groups", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "PutGroupRequest" + }, + "name": "PutGroup", + "output": { + "shape": "PutGroupResponse" + } + }, + "StartDataSourceSyncJob": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/startsync", + "responseCode": 200 + }, + "input": { + "shape": "StartDataSourceSyncJobRequest" + }, + "name": "StartDataSourceSyncJob", + "output": { + "shape": "StartDataSourceSyncJobResponse" + } + }, + "StopDataSourceSyncJob": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/stopsync", + "responseCode": 200 + }, + "input": { + "shape": "StopDataSourceSyncJobRequest" + }, + "name": "StopDataSourceSyncJob", + "output": { + "shape": "StopDataSourceSyncJobResponse" + } + }, + "TagResource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/v1/tags/{resourceARN}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "TagResourceRequest" + }, + "name": "TagResource", + "output": { + "shape": "TagResourceResponse" + } + }, + "UntagResource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "DELETE", + "requestUri": "/v1/tags/{resourceARN}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UntagResourceRequest" + }, + "name": "UntagResource", + "output": { + "shape": "UntagResourceResponse" + } + }, + "UpdateApplication": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateApplicationRequest" + }, + "name": "UpdateApplication", + "output": { + "shape": "UpdateApplicationResponse" + } + }, + "UpdateChatControlsConfiguration": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "PATCH", + "requestUri": "/applications/{applicationId}/chatcontrols", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateChatControlsConfigurationRequest" + }, + "name": "UpdateChatControlsConfiguration", + "output": { + "shape": "UpdateChatControlsConfigurationResponse" + } + }, + "UpdateDataSource": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateDataSourceRequest" + }, + "name": "UpdateDataSource", + "output": { + "shape": "UpdateDataSourceResponse" + } + }, + "UpdateIndex": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/indices/{indexId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateIndexRequest" + }, + "name": "UpdateIndex", + "output": { + "shape": "UpdateIndexResponse" + } + }, + "UpdatePlugin": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/plugins/{pluginId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdatePluginRequest" + }, + "name": "UpdatePlugin", + "output": { + "shape": "UpdatePluginResponse" + } + }, + "UpdateRetriever": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/retrievers/{retrieverId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateRetrieverRequest" + }, + "name": "UpdateRetriever", + "output": { + "shape": "UpdateRetrieverResponse" + } + }, + "UpdateUser": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ServiceQuotaExceededException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/users/{userId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateUserRequest" + }, + "name": "UpdateUser", + "output": { + "shape": "UpdateUserResponse" + } + }, + "UpdateWebExperience": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "PUT", + "requestUri": "/applications/{applicationId}/experiences/{webExperienceId}", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "UpdateWebExperienceRequest" + }, + "name": "UpdateWebExperience", + "output": { + "shape": "UpdateWebExperienceResponse" + } + } + }, + "shapes": { + "AccessConfiguration": { + "members": { + "accessControls": { + "shape": "AccessControls" + }, + "memberRelation": { + "shape": "MemberRelation" + } + }, + "required": [ + "accessControls" + ], + "type": "structure" + }, + "AccessControl": { + "members": { + "memberRelation": { + "shape": "MemberRelation" + }, + "principals": { + "shape": "Principals" + } + }, + "required": [ + "principals" + ], + "type": "structure" + }, + "AccessControls": { + "member": { + "shape": "AccessControl" + }, + "type": "list" + }, + "AccessDeniedException": { + "error": { + "httpStatusCode": 403, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "ActionPayloadFieldKey": { + "min": 1, + "type": "string" + }, + "ActionPayloadFieldNameSeparator": { + "max": 1, + "min": 1, + "type": "string" + }, + "ActionPayloadFieldType": { + "enum": [ + "STRING", + "NUMBER", + "ARRAY", + "BOOLEAN" + ], + "type": "string" + }, + "ActionReview": { + "members": { + "payload": { + "shape": "ActionReviewPayload" + }, + "payloadFieldNameSeparator": { + "shape": "ActionPayloadFieldNameSeparator" + }, + "pluginId": { + "shape": "PluginId" + }, + "pluginType": { + "shape": "PluginType" + } + }, + "type": "structure" + }, + "ActionReviewPayload": { + "key": { + "shape": "ActionPayloadFieldKey" + }, + "type": "map", + "value": { + "shape": "ActionReviewPayloadField" + } + }, + "ActionReviewPayloadField": { + "members": { + "allowedValues": { + "shape": "ActionReviewPayloadFieldAllowedValues" + }, + "displayName": { + "shape": "String" + }, + "displayOrder": { + "shape": "Integer" + }, + "required": { + "shape": "Boolean" + }, + "type": { + "shape": "ActionPayloadFieldType" + } + }, + "type": "structure" + }, + "ActionReviewPayloadFieldAllowedValue": { + "members": {}, + "type": "structure" + }, + "ActionReviewPayloadFieldAllowedValues": { + "member": { + "shape": "ActionReviewPayloadFieldAllowedValue" + }, + "type": "list" + }, + "AmazonResourceName": { + "max": 1011, + "min": 1, + "type": "string" + }, + "Application": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "createdAt": { + "shape": "Timestamp" + }, + "displayName": { + "shape": "ApplicationName" + }, + "status": { + "shape": "ApplicationStatus" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "ApplicationArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "ApplicationId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "ApplicationName": { + "max": 1000, + "min": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "type": "string" + }, + "ApplicationStatus": { + "enum": [ + "CREATING", + "ACTIVE", + "DELETING", + "FAILED", + "UPDATING" + ], + "type": "string" + }, + "Applications": { + "member": { + "shape": "Application" + }, + "type": "list" + }, + "AppliedAttachmentsConfiguration": { + "members": { + "attachmentsControlMode": { + "shape": "AttachmentsControlMode" + } + }, + "type": "structure" + }, + "AttachmentInput": { + "members": { + "data": { + "shape": "Blob" + }, + "name": { + "shape": "AttachmentName" + } + }, + "required": [ + "data", + "name" + ], + "type": "structure" + }, + "AttachmentName": { + "max": 1000, + "min": 1, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "AttachmentOutput": { + "members": { + "error": { + "shape": "ErrorDetail" + }, + "name": { + "shape": "AttachmentName" + }, + "status": { + "shape": "AttachmentStatus" + } + }, + "type": "structure" + }, + "AttachmentStatus": { + "enum": [ + "FAILED", + "SUCCEEDED" + ], + "type": "string" + }, + "AttachmentsConfiguration": { + "members": { + "attachmentsControlMode": { + "shape": "AttachmentsControlMode" + } + }, + "required": [ + "attachmentsControlMode" + ], + "type": "structure" + }, + "AttachmentsControlMode": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "AttachmentsInput": { + "member": { + "shape": "AttachmentInput" + }, + "min": 1, + "type": "list" + }, + "AttachmentsOutput": { + "member": { + "shape": "AttachmentOutput" + }, + "type": "list" + }, + "AttributeFilter": { + "members": { + "andAllFilters": { + "shape": "AttributeFilters" + }, + "containsAll": { + "shape": "DocumentAttribute" + }, + "containsAny": { + "shape": "DocumentAttribute" + }, + "equalsTo": { + "shape": "DocumentAttribute" + }, + "greaterThan": { + "shape": "DocumentAttribute" + }, + "greaterThanOrEquals": { + "shape": "DocumentAttribute" + }, + "lessThan": { + "shape": "DocumentAttribute" + }, + "lessThanOrEquals": { + "shape": "DocumentAttribute" + }, + "notFilter": { + "shape": "AttributeFilter" + }, + "orAllFilters": { + "shape": "AttributeFilters" + } + }, + "type": "structure" + }, + "AttributeFilters": { + "member": { + "shape": "AttributeFilter" + }, + "type": "list" + }, + "AttributeType": { + "enum": [ + "STRING", + "STRING_LIST", + "NUMBER", + "DATE" + ], + "type": "string" + }, + "AttributeValueOperator": { + "enum": [ + "DELETE" + ], + "type": "string" + }, + "BasicAuthConfiguration": { + "members": { + "roleArn": { + "shape": "RoleArn" + }, + "secretArn": { + "shape": "SecretArn" + } + }, + "required": [ + "roleArn", + "secretArn" + ], + "type": "structure" + }, + "BatchDeleteDocumentRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceSyncId": { + "shape": "ExecutionId" + }, + "documents": { + "shape": "DeleteDocuments" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "documents", + "indexId" + ], + "type": "structure" + }, + "BatchDeleteDocumentResponse": { + "members": { + "failedDocuments": { + "shape": "FailedDocuments" + } + }, + "type": "structure" + }, + "BatchPutDocumentRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceSyncId": { + "shape": "ExecutionId" + }, + "documents": { + "shape": "Documents" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "roleArn": { + "shape": "RoleArn" + } + }, + "required": [ + "applicationId", + "documents", + "indexId" + ], + "type": "structure" + }, + "BatchPutDocumentResponse": { + "members": { + "failedDocuments": { + "shape": "FailedDocuments" + } + }, + "type": "structure" + }, + "Blob": { + "type": "blob" + }, + "BlockedPhrase": { + "max": 36, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "BlockedPhrases": { + "max": 5, + "member": { + "shape": "BlockedPhrase" + }, + "min": 0, + "type": "list" + }, + "BlockedPhrasesConfiguration": { + "members": { + "blockedPhrases": { + "shape": "BlockedPhrases" + }, + "systemMessageOverride": { + "shape": "SystemMessageOverride" + } + }, + "type": "structure" + }, + "BlockedPhrasesConfigurationUpdate": { + "members": { + "blockedPhrasesToCreateOrUpdate": { + "shape": "BlockedPhrases" + }, + "blockedPhrasesToDelete": { + "shape": "BlockedPhrases" + }, + "systemMessageOverride": { + "shape": "SystemMessageOverride" + } + }, + "type": "structure" + }, + "Boolean": { + "box": true, + "type": "boolean" + }, + "ChatSyncInput": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "attachments": { + "shape": "AttachmentsInput" + }, + "attributeFilter": { + "shape": "AttributeFilter" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "conversationId": { + "shape": "ConversationId" + }, + "parentMessageId": { + "shape": "MessageId" + }, + "userGroups": { + "location": "querystring", + "locationName": "userGroups", + "shape": "UserGroups" + }, + "userId": { + "location": "querystring", + "locationName": "userId", + "shape": "UserId" + }, + "userMessage": { + "shape": "UserMessage" + } + }, + "required": [ + "applicationId", + "userId" + ], + "type": "structure" + }, + "ChatSyncOutput": { + "members": { + "actionReview": { + "shape": "ActionReview" + }, + "conversationId": { + "shape": "ConversationId" + }, + "failedAttachments": { + "shape": "AttachmentsOutput" + }, + "sourceAttributions": { + "shape": "SourceAttributions" + }, + "systemMessage": { + "shape": "String" + }, + "systemMessageId": { + "shape": "MessageId" + }, + "userMessageId": { + "shape": "MessageId" + } + }, + "type": "structure" + }, + "ClientToken": { + "max": 100, + "min": 1, + "type": "string" + }, + "ConflictException": { + "error": { + "httpStatusCode": 409, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + }, + "resourceId": { + "shape": "String" + }, + "resourceType": { + "shape": "String" + } + }, + "required": [ + "message", + "resourceId", + "resourceType" + ], + "type": "structure" + }, + "ContentBlockerRule": { + "members": { + "systemMessageOverride": { + "shape": "SystemMessageOverride" + } + }, + "type": "structure" + }, + "ContentRetrievalRule": { + "members": { + "eligibleDataSources": { + "shape": "EligibleDataSources" + } + }, + "type": "structure" + }, + "ContentType": { + "enum": [ + "PDF", + "HTML", + "MS_WORD", + "PLAIN_TEXT", + "PPT", + "RTF", + "XML", + "XSLT", + "MS_EXCEL", + "CSV", + "JSON", + "MD" + ], + "type": "string" + }, + "Conversation": { + "members": { + "conversationId": { + "shape": "ConversationId" + }, + "startTime": { + "shape": "Timestamp" + }, + "title": { + "shape": "ConversationTitle" + } + }, + "type": "structure" + }, + "ConversationId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "ConversationTitle": { + "type": "string" + }, + "Conversations": { + "member": { + "shape": "Conversation" + }, + "type": "list" + }, + "CreateApplicationRequest": { + "members": { + "attachmentsConfiguration": { + "shape": "AttachmentsConfiguration" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "ApplicationName" + }, + "encryptionConfiguration": { + "shape": "EncryptionConfiguration" + }, + "roleArn": { + "shape": "RoleArn" + }, + "tags": { + "shape": "Tags" + } + }, + "required": [ + "displayName", + "roleArn" + ], + "type": "structure" + }, + "CreateApplicationResponse": { + "members": { + "applicationArn": { + "shape": "ApplicationArn" + }, + "applicationId": { + "shape": "ApplicationId" + } + }, + "type": "structure" + }, + "CreateDataSourceResponse": { + "members": { + "dataSourceArn": { + "shape": "DataSourceArn" + }, + "dataSourceId": { + "shape": "DataSourceId" + } + }, + "type": "structure" + }, + "CreateIndexRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "capacityConfiguration": { + "shape": "IndexCapacityConfiguration" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "IndexName" + }, + "tags": { + "shape": "Tags" + } + }, + "required": [ + "applicationId", + "displayName" + ], + "type": "structure" + }, + "CreateIndexResponse": { + "members": { + "indexArn": { + "shape": "IndexArn" + }, + "indexId": { + "shape": "IndexId" + } + }, + "type": "structure" + }, + "CreatePluginRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "authConfiguration": { + "shape": "PluginAuthConfiguration" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "displayName": { + "shape": "PluginName" + }, + "serverUrl": { + "shape": "Url" + }, + "tags": { + "shape": "Tags" + }, + "type": { + "shape": "PluginType" + } + }, + "required": [ + "applicationId", + "authConfiguration", + "displayName", + "serverUrl", + "type" + ], + "type": "structure" + }, + "CreatePluginResponse": { + "members": { + "pluginArn": { + "shape": "PluginArn" + }, + "pluginId": { + "shape": "PluginId" + } + }, + "type": "structure" + }, + "CreateRetrieverRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "configuration": { + "shape": "RetrieverConfiguration" + }, + "displayName": { + "shape": "RetrieverName" + }, + "roleArn": { + "shape": "RoleArn" + }, + "tags": { + "shape": "Tags" + }, + "type": { + "shape": "RetrieverType" + } + }, + "required": [ + "applicationId", + "configuration", + "displayName", + "type" + ], + "type": "structure" + }, + "CreateRetrieverResponse": { + "members": { + "retrieverArn": { + "shape": "RetrieverArn" + }, + "retrieverId": { + "shape": "RetrieverId" + } + }, + "type": "structure" + }, + "CreateUserRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "userAliases": { + "shape": "CreateUserRequestUserAliasesList" + }, + "userId": { + "shape": "String" + } + }, + "required": [ + "applicationId", + "userId" + ], + "type": "structure" + }, + "CreateUserRequestUserAliasesList": { + "max": 100, + "member": { + "shape": "UserAlias" + }, + "min": 0, + "type": "list" + }, + "CreateUserResponse": { + "members": {}, + "type": "structure" + }, + "CreateWebExperienceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "samplePromptsControlMode": { + "shape": "WebExperienceSamplePromptsControlMode" + }, + "subtitle": { + "shape": "WebExperienceSubtitle" + }, + "tags": { + "shape": "Tags" + }, + "title": { + "shape": "WebExperienceTitle" + }, + "welcomeMessage": { + "shape": "WebExperienceWelcomeMessage" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "CreateWebExperienceResponse": { + "members": { + "webExperienceArn": { + "shape": "WebExperienceArn" + }, + "webExperienceId": { + "shape": "WebExperienceId" + } + }, + "type": "structure" + }, + "DataSource": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "dataSourceId": { + "shape": "DataSourceId" + }, + "displayName": { + "shape": "DataSourceName" + }, + "status": { + "shape": "DataSourceStatus" + }, + "type": { + "shape": "String" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "DataSourceArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "DataSourceId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "DataSourceIds": { + "max": 1, + "member": { + "shape": "DataSourceId" + }, + "min": 1, + "type": "list" + }, + "DataSourceName": { + "max": 1000, + "min": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "type": "string" + }, + "DataSourceStatus": { + "enum": [ + "PENDING_CREATION", + "CREATING", + "ACTIVE", + "DELETING", + "FAILED", + "UPDATING" + ], + "type": "string" + }, + "DataSourceSyncJob": { + "members": { + "dataSourceErrorCode": { + "shape": "String" + }, + "endTime": { + "shape": "Timestamp" + }, + "error": { + "shape": "ErrorDetail" + }, + "executionId": { + "shape": "ExecutionId" + }, + "metrics": { + "shape": "DataSourceSyncJobMetrics" + }, + "startTime": { + "shape": "Timestamp" + }, + "status": { + "shape": "DataSourceSyncJobStatus" + } + }, + "type": "structure" + }, + "DataSourceSyncJobMetrics": { + "members": { + "documentsAdded": { + "shape": "MetricValue" + }, + "documentsDeleted": { + "shape": "MetricValue" + }, + "documentsFailed": { + "shape": "MetricValue" + }, + "documentsModified": { + "shape": "MetricValue" + }, + "documentsScanned": { + "shape": "MetricValue" + } + }, + "type": "structure" + }, + "DataSourceSyncJobStatus": { + "enum": [ + "FAILED", + "SUCCEEDED", + "SYNCING", + "INCOMPLETE", + "STOPPING", + "ABORTED", + "SYNCING_INDEXING" + ], + "type": "string" + }, + "DataSourceSyncJobs": { + "member": { + "shape": "DataSourceSyncJob" + }, + "type": "list" + }, + "DataSourceUserId": { + "max": 1024, + "min": 1, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "DataSourceVpcConfiguration": { + "members": { + "securityGroupIds": { + "shape": "SecurityGroupIds" + }, + "subnetIds": { + "shape": "SubnetIds" + } + }, + "required": [ + "securityGroupIds", + "subnetIds" + ], + "type": "structure" + }, + "DataSources": { + "member": { + "shape": "DataSource" + }, + "type": "list" + }, + "DeleteApplicationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "DeleteApplicationResponse": { + "members": {}, + "type": "structure" + }, + "DeleteChatControlsConfigurationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "DeleteChatControlsConfigurationResponse": { + "members": {}, + "type": "structure" + }, + "DeleteConversationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "conversationId": { + "location": "uri", + "locationName": "conversationId", + "shape": "ConversationId" + }, + "userId": { + "location": "querystring", + "locationName": "userId", + "shape": "UserId" + } + }, + "required": [ + "applicationId", + "conversationId", + "userId" + ], + "type": "structure" + }, + "DeleteConversationResponse": { + "members": {}, + "type": "structure" + }, + "DeleteDataSourceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "uri", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "dataSourceId", + "indexId" + ], + "type": "structure" + }, + "DeleteDataSourceResponse": { + "members": {}, + "type": "structure" + }, + "DeleteDocument": { + "members": { + "documentId": { + "shape": "DocumentId" + } + }, + "required": [ + "documentId" + ], + "type": "structure" + }, + "DeleteDocuments": { + "member": { + "shape": "DeleteDocument" + }, + "type": "list" + }, + "DeleteGroupRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "querystring", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "groupName": { + "location": "uri", + "locationName": "groupName", + "shape": "GroupName" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "groupName", + "indexId" + ], + "type": "structure" + }, + "DeleteGroupResponse": { + "members": {}, + "type": "structure" + }, + "DeleteIndexRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "indexId" + ], + "type": "structure" + }, + "DeleteIndexResponse": { + "members": {}, + "type": "structure" + }, + "DeletePluginRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "pluginId": { + "location": "uri", + "locationName": "pluginId", + "shape": "PluginId" + } + }, + "required": [ + "applicationId", + "pluginId" + ], + "type": "structure" + }, + "DeletePluginResponse": { + "members": {}, + "type": "structure" + }, + "DeleteRetrieverRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "retrieverId": { + "location": "uri", + "locationName": "retrieverId", + "shape": "RetrieverId" + } + }, + "required": [ + "applicationId", + "retrieverId" + ], + "type": "structure" + }, + "DeleteRetrieverResponse": { + "members": {}, + "type": "structure" + }, + "DeleteUserRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "userId": { + "location": "uri", + "locationName": "userId", + "shape": "String" + } + }, + "required": [ + "applicationId", + "userId" + ], + "type": "structure" + }, + "DeleteUserResponse": { + "members": {}, + "type": "structure" + }, + "DeleteWebExperienceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "webExperienceId": { + "location": "uri", + "locationName": "webExperienceId", + "shape": "WebExperienceId" + } + }, + "required": [ + "applicationId", + "webExperienceId" + ], + "type": "structure" + }, + "DeleteWebExperienceResponse": { + "members": {}, + "type": "structure" + }, + "Description": { + "max": 1000, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "Document": { + "members": { + "accessConfiguration": { + "shape": "AccessConfiguration" + }, + "attributes": { + "shape": "DocumentAttributes" + }, + "content": { + "shape": "DocumentContent" + }, + "contentType": { + "shape": "ContentType" + }, + "documentEnrichmentConfiguration": { + "shape": "DocumentEnrichmentConfiguration" + }, + "id": { + "shape": "DocumentId" + }, + "title": { + "shape": "Title" + } + }, + "required": [ + "id" + ], + "type": "structure" + }, + "DocumentAttribute": { + "members": { + "name": { + "shape": "DocumentAttributeKey" + }, + "value": { + "shape": "DocumentAttributeValue" + } + }, + "required": [ + "name", + "value" + ], + "type": "structure" + }, + "DocumentAttributeCondition": { + "members": { + "key": { + "shape": "DocumentAttributeKey" + }, + "operator": { + "shape": "DocumentEnrichmentConditionOperator" + }, + "value": { + "shape": "DocumentAttributeValue" + } + }, + "required": [ + "key", + "operator" + ], + "type": "structure" + }, + "DocumentAttributeConfiguration": { + "members": { + "name": { + "shape": "String" + }, + "search": { + "shape": "Status" + }, + "type": { + "shape": "AttributeType" + } + }, + "type": "structure" + }, + "DocumentAttributeConfigurations": { + "max": 500, + "member": { + "shape": "DocumentAttributeConfiguration" + }, + "min": 1, + "type": "list" + }, + "DocumentAttributeKey": { + "max": 200, + "min": 1, + "pattern": "^[a-zA-Z0-9_][a-zA-Z0-9_-]*$", + "type": "string" + }, + "DocumentAttributeStringListValue": { + "member": { + "shape": "String" + }, + "type": "list" + }, + "DocumentAttributeTarget": { + "members": { + "attributeValueOperator": { + "shape": "AttributeValueOperator" + }, + "key": { + "shape": "DocumentAttributeKey" + }, + "value": { + "shape": "DocumentAttributeValue" + } + }, + "required": [ + "key" + ], + "type": "structure" + }, + "DocumentAttributeValue": { + "members": { + "dateValue": { + "shape": "Timestamp" + }, + "longValue": { + "shape": "Long" + }, + "stringListValue": { + "shape": "DocumentAttributeStringListValue" + }, + "stringValue": { + "shape": "DocumentAttributeValueStringValueString" + } + }, + "type": "structure", + "union": true + }, + "DocumentAttributeValueStringValueString": { + "max": 2048, + "min": 0, + "type": "string" + }, + "DocumentAttributes": { + "max": 500, + "member": { + "shape": "DocumentAttribute" + }, + "min": 1, + "type": "list" + }, + "DocumentContent": { + "members": { + "blob": { + "shape": "Blob" + }, + "s3": { + "shape": "S3" + } + }, + "type": "structure", + "union": true + }, + "DocumentContentOperator": { + "enum": [ + "DELETE" + ], + "type": "string" + }, + "DocumentDetailList": { + "member": { + "shape": "DocumentDetails" + }, + "type": "list" + }, + "DocumentDetails": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "documentId": { + "shape": "DocumentId" + }, + "error": { + "shape": "ErrorDetail" + }, + "status": { + "shape": "DocumentStatus" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "DocumentEnrichmentConditionOperator": { + "enum": [ + "GREATER_THAN", + "GREATER_THAN_OR_EQUALS", + "LESS_THAN", + "LESS_THAN_OR_EQUALS", + "EQUALS", + "NOT_EQUALS", + "CONTAINS", + "NOT_CONTAINS", + "EXISTS", + "NOT_EXISTS", + "BEGINS_WITH" + ], + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "members": { + "inlineConfigurations": { + "shape": "InlineDocumentEnrichmentConfigurations" + }, + "postExtractionHookConfiguration": { + "shape": "HookConfiguration" + }, + "preExtractionHookConfiguration": { + "shape": "HookConfiguration" + } + }, + "type": "structure" + }, + "DocumentId": { + "max": 1825, + "min": 1, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "DocumentStatus": { + "enum": [ + "RECEIVED", + "PROCESSING", + "INDEXED", + "UPDATED", + "FAILED", + "DELETING", + "DELETED", + "DOCUMENT_FAILED_TO_INDEX" + ], + "type": "string" + }, + "Documents": { + "max": 10, + "member": { + "shape": "Document" + }, + "min": 1, + "type": "list" + }, + "EligibleDataSource": { + "members": { + "dataSourceId": { + "shape": "DataSourceId" + }, + "indexId": { + "shape": "IndexId" + } + }, + "type": "structure" + }, + "EligibleDataSources": { + "max": 5, + "member": { + "shape": "EligibleDataSource" + }, + "min": 0, + "type": "list" + }, + "EncryptionConfiguration": { + "members": { + "kmsKeyId": { + "shape": "KmsKeyId" + } + }, + "type": "structure" + }, + "ErrorCode": { + "enum": [ + "InternalError", + "InvalidRequest", + "ResourceInactive", + "ResourceNotFound" + ], + "type": "string" + }, + "ErrorDetail": { + "members": { + "errorCode": { + "shape": "ErrorCode" + }, + "errorMessage": { + "shape": "ErrorMessage" + } + }, + "type": "structure" + }, + "ErrorMessage": { + "max": 2048, + "min": 1, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "ExampleChatMessage": { + "max": 350, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "ExampleChatMessages": { + "max": 5, + "member": { + "shape": "ExampleChatMessage" + }, + "min": 0, + "type": "list" + }, + "ExecutionId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "FailedDocument": { + "members": { + "dataSourceId": { + "shape": "DataSourceId" + }, + "error": { + "shape": "ErrorDetail" + }, + "id": { + "shape": "DocumentId" + } + }, + "type": "structure" + }, + "FailedDocuments": { + "member": { + "shape": "FailedDocument" + }, + "type": "list" + }, + "GetApplicationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "GetApplicationResponse": { + "members": { + "applicationArn": { + "shape": "ApplicationArn" + }, + "applicationId": { + "shape": "ApplicationId" + }, + "attachmentsConfiguration": { + "shape": "AppliedAttachmentsConfiguration" + }, + "createdAt": { + "shape": "Timestamp" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "ApplicationName" + }, + "encryptionConfiguration": { + "shape": "EncryptionConfiguration" + }, + "error": { + "shape": "ErrorDetail" + }, + "roleArn": { + "shape": "RoleArn" + }, + "status": { + "shape": "ApplicationStatus" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "GetChatControlsConfigurationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForGetTopicConfigurations" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "GetChatControlsConfigurationResponse": { + "members": { + "blockedPhrases": { + "shape": "BlockedPhrasesConfiguration" + }, + "nextToken": { + "shape": "NextToken" + }, + "responseScope": { + "shape": "ResponseScope" + }, + "topicConfigurations": { + "shape": "TopicConfigurations" + } + }, + "type": "structure" + }, + "GetDataSourceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "uri", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "dataSourceId", + "indexId" + ], + "type": "structure" + }, + "GetDataSourceResponse": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "createdAt": { + "shape": "Timestamp" + }, + "dataSourceArn": { + "shape": "DataSourceArn" + }, + "dataSourceId": { + "shape": "DataSourceId" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "DataSourceName" + }, + "documentEnrichmentConfiguration": { + "shape": "DocumentEnrichmentConfiguration" + }, + "error": { + "shape": "ErrorDetail" + }, + "indexId": { + "shape": "IndexId" + }, + "roleArn": { + "shape": "RoleArn" + }, + "status": { + "shape": "DataSourceStatus" + }, + "syncSchedule": { + "shape": "SyncSchedule" + }, + "type": { + "shape": "String" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "vpcConfiguration": { + "shape": "DataSourceVpcConfiguration" + } + }, + "type": "structure" + }, + "GetGroupRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "querystring", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "groupName": { + "location": "uri", + "locationName": "groupName", + "shape": "GroupName" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "groupName", + "indexId" + ], + "type": "structure" + }, + "GetGroupResponse": { + "members": { + "status": { + "shape": "GroupStatusDetail" + }, + "statusHistory": { + "shape": "GroupStatusDetails" + } + }, + "type": "structure" + }, + "GetIndexRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "indexId" + ], + "type": "structure" + }, + "GetIndexResponse": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "capacityConfiguration": { + "shape": "IndexCapacityConfiguration" + }, + "createdAt": { + "shape": "Timestamp" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "IndexName" + }, + "documentAttributeConfigurations": { + "shape": "DocumentAttributeConfigurations" + }, + "error": { + "shape": "ErrorDetail" + }, + "indexArn": { + "shape": "IndexArn" + }, + "indexId": { + "shape": "IndexId" + }, + "indexStatistics": { + "shape": "IndexStatistics" + }, + "status": { + "shape": "IndexStatus" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "GetPluginRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "pluginId": { + "location": "uri", + "locationName": "pluginId", + "shape": "PluginId" + } + }, + "required": [ + "applicationId", + "pluginId" + ], + "type": "structure" + }, + "GetPluginResponse": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "authConfiguration": { + "shape": "PluginAuthConfiguration" + }, + "createdAt": { + "shape": "Timestamp" + }, + "displayName": { + "shape": "PluginName" + }, + "pluginArn": { + "shape": "PluginArn" + }, + "pluginId": { + "shape": "PluginId" + }, + "serverUrl": { + "shape": "Url" + }, + "state": { + "shape": "PluginState" + }, + "type": { + "shape": "PluginType" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "GetRetrieverRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "retrieverId": { + "location": "uri", + "locationName": "retrieverId", + "shape": "RetrieverId" + } + }, + "required": [ + "applicationId", + "retrieverId" + ], + "type": "structure" + }, + "GetRetrieverResponse": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "configuration": { + "shape": "RetrieverConfiguration" + }, + "createdAt": { + "shape": "Timestamp" + }, + "displayName": { + "shape": "RetrieverName" + }, + "retrieverArn": { + "shape": "RetrieverArn" + }, + "retrieverId": { + "shape": "RetrieverId" + }, + "roleArn": { + "shape": "RoleArn" + }, + "status": { + "shape": "RetrieverStatus" + }, + "type": { + "shape": "RetrieverType" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "GetUserRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "userId": { + "location": "uri", + "locationName": "userId", + "shape": "String" + } + }, + "required": [ + "applicationId", + "userId" + ], + "type": "structure" + }, + "GetUserResponse": { + "members": { + "userAliases": { + "shape": "UserAliases" + } + }, + "type": "structure" + }, + "GetWebExperienceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "webExperienceId": { + "location": "uri", + "locationName": "webExperienceId", + "shape": "WebExperienceId" + } + }, + "required": [ + "applicationId", + "webExperienceId" + ], + "type": "structure" + }, + "GetWebExperienceResponse": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "authenticationConfiguration": { + "shape": "WebExperienceAuthConfiguration" + }, + "createdAt": { + "shape": "Timestamp" + }, + "defaultEndpoint": { + "shape": "Url" + }, + "error": { + "shape": "ErrorDetail" + }, + "samplePromptsControlMode": { + "shape": "WebExperienceSamplePromptsControlMode" + }, + "status": { + "shape": "WebExperienceStatus" + }, + "subtitle": { + "shape": "WebExperienceSubtitle" + }, + "title": { + "shape": "WebExperienceTitle" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "webExperienceArn": { + "shape": "WebExperienceArn" + }, + "webExperienceId": { + "shape": "WebExperienceId" + }, + "welcomeMessage": { + "shape": "WebExperienceWelcomeMessage" + } + }, + "type": "structure" + }, + "GroupMembers": { + "members": { + "memberGroups": { + "shape": "MemberGroups" + }, + "memberUsers": { + "shape": "MemberUsers" + } + }, + "type": "structure" + }, + "GroupName": { + "max": 1024, + "min": 1, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "GroupStatus": { + "enum": [ + "FAILED", + "SUCCEEDED", + "PROCESSING", + "DELETING", + "DELETED" + ], + "type": "string" + }, + "GroupStatusDetail": { + "members": { + "errorDetail": { + "shape": "ErrorDetail" + }, + "lastUpdatedAt": { + "shape": "Timestamp" + }, + "status": { + "shape": "GroupStatus" + } + }, + "type": "structure" + }, + "GroupStatusDetails": { + "member": { + "shape": "GroupStatusDetail" + }, + "type": "list" + }, + "GroupSummary": { + "members": { + "groupName": { + "shape": "GroupName" + } + }, + "type": "structure" + }, + "GroupSummaryList": { + "member": { + "shape": "GroupSummary" + }, + "type": "list" + }, + "HookConfiguration": { + "members": { + "invocationCondition": { + "shape": "DocumentAttributeCondition" + }, + "lambdaArn": { + "shape": "LambdaArn" + }, + "roleArn": { + "shape": "RoleArn" + }, + "s3BucketName": { + "shape": "S3BucketName" + } + }, + "type": "structure" + }, + "Index": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "displayName": { + "shape": "IndexName" + }, + "indexId": { + "shape": "IndexId" + }, + "status": { + "shape": "IndexStatus" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "IndexArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "IndexCapacityConfiguration": { + "members": { + "units": { + "shape": "IndexCapacityInteger" + } + }, + "type": "structure" + }, + "IndexCapacityInteger": { + "box": true, + "min": 1, + "type": "integer" + }, + "IndexId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "IndexName": { + "max": 1000, + "min": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "type": "string" + }, + "IndexStatistics": { + "members": { + "textDocumentStatistics": { + "shape": "TextDocumentStatistics" + } + }, + "type": "structure" + }, + "IndexStatus": { + "enum": [ + "CREATING", + "ACTIVE", + "DELETING", + "FAILED", + "UPDATING" + ], + "type": "string" + }, + "IndexedTextBytes": { + "box": true, + "min": 0, + "type": "long" + }, + "IndexedTextDocument": { + "box": true, + "min": 0, + "type": "integer" + }, + "Indices": { + "member": { + "shape": "Index" + }, + "type": "list" + }, + "InlineDocumentEnrichmentConfiguration": { + "members": { + "condition": { + "shape": "DocumentAttributeCondition" + }, + "documentContentOperator": { + "shape": "DocumentContentOperator" + }, + "target": { + "shape": "DocumentAttributeTarget" + } + }, + "type": "structure" + }, + "InlineDocumentEnrichmentConfigurations": { + "max": 100, + "member": { + "shape": "InlineDocumentEnrichmentConfiguration" + }, + "min": 1, + "type": "list" + }, + "Integer": { + "box": true, + "type": "integer" + }, + "InternalServerException": { + "error": { + "httpStatusCode": 500 + }, + "exception": true, + "fault": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "KendraIndexConfiguration": { + "members": { + "indexId": { + "shape": "KendraIndexId" + } + }, + "required": [ + "indexId" + ], + "type": "structure" + }, + "KendraIndexId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "KmsKeyId": { + "max": 2048, + "min": 1, + "sensitive": true, + "type": "string" + }, + "LambdaArn": { + "max": 2048, + "min": 1, + "pattern": "^arn:aws[a-zA-Z-]*:lambda:[a-z-]*-[0-9]:[0-9]{12}:function:[a-zA-Z0-9-_]+(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})?(:[a-zA-Z0-9-_]+)?$", + "type": "string" + }, + "LicenseNotFoundException": { + "error": { + "httpStatusCode": 400, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "ListApplicationsRequest": { + "members": { + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListApplications" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListApplicationsResponse": { + "members": { + "applications": { + "shape": "Applications" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListConversationsRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListConversations" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "userId": { + "location": "querystring", + "locationName": "userId", + "shape": "UserId" + } + }, + "required": [ + "applicationId", + "userId" + ], + "type": "structure" + }, + "ListConversationsResponse": { + "members": { + "conversations": { + "shape": "Conversations" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListDataSourceSyncJobsRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "uri", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "endTime": { + "location": "querystring", + "locationName": "endTime", + "shape": "Timestamp" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListDataSourcesSyncJobs" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "startTime": { + "location": "querystring", + "locationName": "startTime", + "shape": "Timestamp" + }, + "statusFilter": { + "location": "querystring", + "locationName": "syncStatus", + "shape": "DataSourceSyncJobStatus" + } + }, + "required": [ + "applicationId", + "dataSourceId", + "indexId" + ], + "type": "structure" + }, + "ListDataSourceSyncJobsResponse": { + "members": { + "history": { + "shape": "DataSourceSyncJobs" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListDataSourcesRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListDataSources" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId", + "indexId" + ], + "type": "structure" + }, + "ListDataSourcesResponse": { + "members": { + "dataSources": { + "shape": "DataSources" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListDocumentsRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceIds": { + "location": "querystring", + "locationName": "dataSourceIds", + "shape": "DataSourceIds" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListDocuments" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId", + "indexId" + ], + "type": "structure" + }, + "ListDocumentsResponse": { + "members": { + "documentDetailList": { + "shape": "DocumentDetailList" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListGroupsRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "querystring", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListGroupsRequest" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "updatedEarlierThan": { + "location": "querystring", + "locationName": "updatedEarlierThan", + "shape": "Timestamp" + } + }, + "required": [ + "applicationId", + "indexId", + "updatedEarlierThan" + ], + "type": "structure" + }, + "ListGroupsResponse": { + "members": { + "items": { + "shape": "GroupSummaryList" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListIndicesRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListIndices" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "ListIndicesResponse": { + "members": { + "indices": { + "shape": "Indices" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListMessagesRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "conversationId": { + "location": "uri", + "locationName": "conversationId", + "shape": "ConversationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListMessages" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + }, + "userId": { + "location": "querystring", + "locationName": "userId", + "shape": "UserId" + } + }, + "required": [ + "applicationId", + "conversationId", + "userId" + ], + "type": "structure" + }, + "ListMessagesResponse": { + "members": { + "messages": { + "shape": "Messages" + }, + "nextToken": { + "shape": "NextToken" + } + }, + "type": "structure" + }, + "ListPluginsRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListPlugins" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "ListPluginsResponse": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "plugins": { + "shape": "Plugins" + } + }, + "type": "structure" + }, + "ListRetrieversRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListRetrieversRequest" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "ListRetrieversResponse": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "retrievers": { + "shape": "Retrievers" + } + }, + "type": "structure" + }, + "ListTagsForResourceRequest": { + "members": { + "resourceARN": { + "location": "uri", + "locationName": "resourceARN", + "shape": "AmazonResourceName" + } + }, + "required": [ + "resourceARN" + ], + "type": "structure" + }, + "ListTagsForResourceResponse": { + "members": { + "tags": { + "shape": "Tags" + } + }, + "type": "structure" + }, + "ListWebExperiencesRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "shape": "MaxResultsIntegerForListWebExperiencesRequest" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken", + "shape": "NextToken" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "ListWebExperiencesResponse": { + "members": { + "nextToken": { + "shape": "NextToken" + }, + "webExperiences": { + "shape": "WebExperiences" + } + }, + "type": "structure" + }, + "Long": { + "box": true, + "type": "long" + }, + "MaxResultsIntegerForGetTopicConfigurations": { + "box": true, + "max": 50, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListApplications": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListConversations": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListDataSources": { + "box": true, + "max": 10, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListDataSourcesSyncJobs": { + "box": true, + "max": 10, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListDocuments": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListGroupsRequest": { + "box": true, + "max": 10, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListIndices": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListMessages": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListPlugins": { + "box": true, + "max": 50, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListRetrieversRequest": { + "box": true, + "max": 50, + "min": 1, + "type": "integer" + }, + "MaxResultsIntegerForListWebExperiencesRequest": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "MemberGroup": { + "members": { + "groupName": { + "shape": "GroupName" + }, + "type": { + "shape": "MembershipType" + } + }, + "required": [ + "groupName" + ], + "type": "structure" + }, + "MemberGroups": { + "max": 1000, + "member": { + "shape": "MemberGroup" + }, + "min": 1, + "type": "list" + }, + "MemberRelation": { + "enum": [ + "AND", + "OR" + ], + "type": "string" + }, + "MemberUser": { + "members": { + "type": { + "shape": "MembershipType" + }, + "userId": { + "shape": "DataSourceUserId" + } + }, + "required": [ + "userId" + ], + "type": "structure" + }, + "MemberUsers": { + "max": 1000, + "member": { + "shape": "MemberUser" + }, + "min": 1, + "type": "list" + }, + "MembershipType": { + "enum": [ + "INDEX", + "DATASOURCE" + ], + "type": "string" + }, + "Message": { + "members": { + "actionReview": { + "shape": "ActionReview" + }, + "attachments": { + "shape": "AttachmentsOutput" + }, + "body": { + "shape": "MessageBody" + }, + "messageId": { + "shape": "String" + }, + "sourceAttribution": { + "shape": "SourceAttributions" + }, + "time": { + "shape": "Timestamp" + }, + "type": { + "shape": "MessageType" + } + }, + "type": "structure" + }, + "MessageBody": { + "max": 1000, + "min": 0, + "pattern": "^\\P{C}*$}$", + "type": "string" + }, + "MessageId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "MessageType": { + "enum": [ + "USER", + "SYSTEM" + ], + "type": "string" + }, + "MessageUsefulness": { + "enum": [ + "USEFUL", + "NOT_USEFUL" + ], + "type": "string" + }, + "MessageUsefulnessComment": { + "max": 1000, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "MessageUsefulnessFeedback": { + "members": { + "comment": { + "shape": "MessageUsefulnessComment" + }, + "reason": { + "shape": "MessageUsefulnessReason" + }, + "submittedAt": { + "shape": "Timestamp" + }, + "usefulness": { + "shape": "MessageUsefulness" + } + }, + "required": [ + "submittedAt", + "usefulness" + ], + "type": "structure" + }, + "MessageUsefulnessReason": { + "enum": [ + "NOT_FACTUALLY_CORRECT", + "HARMFUL_OR_UNSAFE", + "INCORRECT_OR_MISSING_SOURCES", + "NOT_HELPFUL", + "FACTUALLY_CORRECT", + "COMPLETE", + "RELEVANT_SOURCES", + "HELPFUL" + ], + "type": "string" + }, + "Messages": { + "member": { + "shape": "Message" + }, + "type": "list" + }, + "MetricValue": { + "pattern": "^(([1-9][0-9]*)|0)$", + "type": "string" + }, + "NativeIndexConfiguration": { + "members": { + "indexId": { + "shape": "IndexId" + } + }, + "required": [ + "indexId" + ], + "type": "structure" + }, + "NextToken": { + "max": 800, + "min": 1, + "type": "string" + }, + "OAuth2ClientCredentialConfiguration": { + "members": { + "roleArn": { + "shape": "RoleArn" + }, + "secretArn": { + "shape": "SecretArn" + } + }, + "required": [ + "roleArn", + "secretArn" + ], + "type": "structure" + }, + "Plugin": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "displayName": { + "shape": "PluginName" + }, + "pluginId": { + "shape": "PluginId" + }, + "serverUrl": { + "shape": "Url" + }, + "state": { + "shape": "PluginState" + }, + "type": { + "shape": "PluginType" + }, + "updatedAt": { + "shape": "Timestamp" + } + }, + "type": "structure" + }, + "PluginArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "PluginAuthConfiguration": { + "members": { + "basicAuthConfiguration": { + "shape": "BasicAuthConfiguration" + }, + "oAuth2ClientCredentialConfiguration": { + "shape": "OAuth2ClientCredentialConfiguration" + } + }, + "type": "structure", + "union": true + }, + "PluginId": { + "max": 36, + "min": 36, + "pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$", + "type": "string" + }, + "PluginName": { + "max": 100, + "min": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "type": "string" + }, + "PluginState": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "PluginType": { + "enum": [ + "SERVICE_NOW", + "SALESFORCE", + "JIRA", + "ZENDESK" + ], + "type": "string" + }, + "Plugins": { + "member": { + "shape": "Plugin" + }, + "type": "list" + }, + "Principal": { + "members": { + "group": { + "shape": "PrincipalGroup" + }, + "user": { + "shape": "PrincipalUser" + } + }, + "type": "structure", + "union": true + }, + "PrincipalGroup": { + "members": { + "access": { + "shape": "ReadAccessType" + }, + "membershipType": { + "shape": "MembershipType" + }, + "name": { + "shape": "GroupName" + } + }, + "required": [ + "access" + ], + "type": "structure" + }, + "PrincipalUser": { + "members": { + "access": { + "shape": "ReadAccessType" + }, + "id": { + "shape": "UserId" + }, + "membershipType": { + "shape": "MembershipType" + } + }, + "required": [ + "access" + ], + "type": "structure" + }, + "Principals": { + "member": { + "shape": "Principal" + }, + "type": "list" + }, + "PutFeedbackRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "conversationId": { + "location": "uri", + "locationName": "conversationId", + "shape": "ConversationId" + }, + "messageCopiedAt": { + "shape": "Timestamp" + }, + "messageId": { + "location": "uri", + "locationName": "messageId", + "shape": "SystemMessageId" + }, + "messageUsefulness": { + "shape": "MessageUsefulnessFeedback" + }, + "userId": { + "location": "querystring", + "locationName": "userId", + "shape": "UserId" + } + }, + "required": [ + "applicationId", + "conversationId", + "messageId", + "userId" + ], + "type": "structure" + }, + "PutGroupRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "shape": "DataSourceId" + }, + "groupMembers": { + "shape": "GroupMembers" + }, + "groupName": { + "shape": "GroupName" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "type": { + "shape": "MembershipType" + } + }, + "required": [ + "applicationId", + "groupMembers", + "groupName", + "indexId", + "type" + ], + "type": "structure" + }, + "PutGroupResponse": { + "members": {}, + "type": "structure" + }, + "ReadAccessType": { + "enum": [ + "ALLOW", + "DENY" + ], + "type": "string" + }, + "ResourceNotFoundException": { + "error": { + "httpStatusCode": 404, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + }, + "resourceId": { + "shape": "String" + }, + "resourceType": { + "shape": "String" + } + }, + "required": [ + "message", + "resourceId", + "resourceType" + ], + "type": "structure" + }, + "ResponseScope": { + "enum": [ + "ENTERPRISE_CONTENT_ONLY", + "EXTENDED_KNOWLEDGE_ENABLED" + ], + "type": "string" + }, + "Retriever": { + "members": { + "applicationId": { + "shape": "ApplicationId" + }, + "displayName": { + "shape": "RetrieverName" + }, + "retrieverId": { + "shape": "RetrieverId" + }, + "status": { + "shape": "RetrieverStatus" + }, + "type": { + "shape": "RetrieverType" + } + }, + "type": "structure" + }, + "RetrieverArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "RetrieverConfiguration": { + "members": { + "kendraIndexConfiguration": { + "shape": "KendraIndexConfiguration" + }, + "nativeIndexConfiguration": { + "shape": "NativeIndexConfiguration" + } + }, + "type": "structure", + "union": true + }, + "RetrieverId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "RetrieverName": { + "max": 1000, + "min": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "type": "string" + }, + "RetrieverStatus": { + "enum": [ + "CREATING", + "ACTIVE", + "FAILED" + ], + "type": "string" + }, + "RetrieverType": { + "enum": [ + "NATIVE_INDEX", + "KENDRA_INDEX" + ], + "type": "string" + }, + "Retrievers": { + "member": { + "shape": "Retriever" + }, + "type": "list" + }, + "RoleArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "Rule": { + "members": { + "excludedUsersAndGroups": { + "shape": "UsersAndGroups" + }, + "includedUsersAndGroups": { + "shape": "UsersAndGroups" + }, + "ruleConfiguration": { + "shape": "RuleConfiguration" + }, + "ruleType": { + "shape": "RuleType" + } + }, + "required": [ + "ruleType" + ], + "type": "structure" + }, + "RuleConfiguration": { + "members": { + "contentBlockerRule": { + "shape": "ContentBlockerRule" + }, + "contentRetrievalRule": { + "shape": "ContentRetrievalRule" + } + }, + "type": "structure", + "union": true + }, + "RuleType": { + "enum": [ + "CONTENT_BLOCKER_RULE", + "CONTENT_RETRIEVAL_RULE" + ], + "type": "string" + }, + "Rules": { + "max": 10, + "member": { + "shape": "Rule" + }, + "min": 0, + "type": "list" + }, + "S3": { + "members": { + "bucket": { + "shape": "S3BucketName" + }, + "key": { + "shape": "S3ObjectKey" + } + }, + "required": [ + "bucket", + "key" + ], + "type": "structure" + }, + "S3BucketName": { + "max": 63, + "min": 1, + "pattern": "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$", + "type": "string" + }, + "S3ObjectKey": { + "max": 1024, + "min": 1, + "type": "string" + }, + "SamlAttribute": { + "max": 256, + "min": 1, + "type": "string" + }, + "SamlConfiguration": { + "members": { + "metadataXML": { + "shape": "SamlMetadataXML" + }, + "roleArn": { + "shape": "RoleArn" + }, + "userGroupAttribute": { + "shape": "SamlAttribute" + }, + "userIdAttribute": { + "shape": "SamlAttribute" + } + }, + "required": [ + "metadataXML", + "roleArn", + "userIdAttribute" + ], + "type": "structure" + }, + "SamlMetadataXML": { + "max": 10000000, + "min": 1000, + "pattern": "^.*$", + "type": "string" + }, + "SecretArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "SecurityGroupId": { + "max": 200, + "min": 1, + "pattern": "^[-0-9a-zA-Z]+$", + "type": "string" + }, + "SecurityGroupIds": { + "max": 10, + "member": { + "shape": "SecurityGroupId" + }, + "min": 1, + "type": "list" + }, + "ServiceQuotaExceededException": { + "error": { + "httpStatusCode": 402, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + }, + "resourceId": { + "shape": "String" + }, + "resourceType": { + "shape": "String" + } + }, + "required": [ + "message", + "resourceId", + "resourceType" + ], + "type": "structure" + }, + "SourceAttribution": { + "members": { + "citationNumber": { + "shape": "Integer" + }, + "snippet": { + "shape": "String" + }, + "textMessageSegments": { + "shape": "TextSegmentList" + }, + "title": { + "shape": "String" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "url": { + "shape": "String" + } + }, + "type": "structure" + }, + "SourceAttributions": { + "member": { + "shape": "SourceAttribution" + }, + "type": "list" + }, + "StartDataSourceSyncJobRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "uri", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "dataSourceId", + "indexId" + ], + "type": "structure" + }, + "StartDataSourceSyncJobResponse": { + "members": { + "executionId": { + "shape": "ExecutionId" + } + }, + "type": "structure" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StopDataSourceSyncJobRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "uri", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "dataSourceId", + "indexId" + ], + "type": "structure" + }, + "StopDataSourceSyncJobResponse": { + "members": {}, + "type": "structure" + }, + "String": { + "max": 2048, + "min": 1, + "type": "string" + }, + "SubnetId": { + "max": 200, + "min": 1, + "pattern": "^[-0-9a-zA-Z]+$", + "type": "string" + }, + "SubnetIds": { + "member": { + "shape": "SubnetId" + }, + "type": "list" + }, + "SyncSchedule": { + "max": 998, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "SystemMessageId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$", + "type": "string" + }, + "SystemMessageOverride": { + "max": 350, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "Tag": { + "members": { + "key": { + "shape": "TagKey" + }, + "value": { + "shape": "TagValue" + } + }, + "required": [ + "key", + "value" + ], + "type": "structure" + }, + "TagKey": { + "max": 128, + "min": 1, + "type": "string" + }, + "TagKeys": { + "max": 200, + "member": { + "shape": "TagKey" + }, + "min": 0, + "type": "list" + }, + "TagResourceRequest": { + "members": { + "resourceARN": { + "location": "uri", + "locationName": "resourceARN", + "shape": "AmazonResourceName" + }, + "tags": { + "shape": "Tags" + } + }, + "required": [ + "resourceARN", + "tags" + ], + "type": "structure" + }, + "TagResourceResponse": { + "members": {}, + "type": "structure" + }, + "TagValue": { + "max": 256, + "min": 0, + "type": "string" + }, + "Tags": { + "max": 200, + "member": { + "shape": "Tag" + }, + "min": 0, + "type": "list" + }, + "TextDocumentStatistics": { + "members": { + "indexedTextBytes": { + "shape": "IndexedTextBytes" + }, + "indexedTextDocumentCount": { + "shape": "IndexedTextDocument" + } + }, + "type": "structure" + }, + "TextSegment": { + "members": { + "beginOffset": { + "shape": "Integer" + }, + "endOffset": { + "shape": "Integer" + } + }, + "type": "structure" + }, + "TextSegmentList": { + "member": { + "shape": "TextSegment" + }, + "type": "list" + }, + "ThrottlingException": { + "error": { + "httpStatusCode": 429, + "senderFault": true + }, + "exception": true, + "members": { + "message": { + "shape": "ErrorMessage" + } + }, + "required": [ + "message" + ], + "type": "structure" + }, + "Timestamp": { + "type": "timestamp" + }, + "Title": { + "max": 1024, + "min": 1, + "type": "string" + }, + "TopicConfiguration": { + "members": { + "description": { + "shape": "TopicDescription" + }, + "exampleChatMessages": { + "shape": "ExampleChatMessages" + }, + "name": { + "shape": "TopicConfigurationName" + }, + "rules": { + "shape": "Rules" + } + }, + "required": [ + "name", + "rules" + ], + "type": "structure" + }, + "TopicConfigurationName": { + "max": 36, + "min": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,35}$", + "type": "string" + }, + "TopicConfigurations": { + "max": 10, + "member": { + "shape": "TopicConfiguration" + }, + "min": 0, + "type": "list" + }, + "TopicDescription": { + "max": 350, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "UntagResourceRequest": { + "members": { + "resourceARN": { + "location": "uri", + "locationName": "resourceARN", + "shape": "AmazonResourceName" + }, + "tagKeys": { + "location": "querystring", + "locationName": "tagKeys", + "shape": "TagKeys" + } + }, + "required": [ + "resourceARN", + "tagKeys" + ], + "type": "structure" + }, + "UntagResourceResponse": { + "members": {}, + "type": "structure" + }, + "UpdateApplicationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "attachmentsConfiguration": { + "shape": "AttachmentsConfiguration" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "ApplicationName" + }, + "roleArn": { + "shape": "RoleArn" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "UpdateApplicationResponse": { + "members": {}, + "type": "structure" + }, + "UpdateChatControlsConfigurationRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "blockedPhrasesConfigurationUpdate": { + "shape": "BlockedPhrasesConfigurationUpdate" + }, + "clientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "responseScope": { + "shape": "ResponseScope" + }, + "topicConfigurationsToCreateOrUpdate": { + "shape": "TopicConfigurations" + }, + "topicConfigurationsToDelete": { + "shape": "TopicConfigurations" + } + }, + "required": [ + "applicationId" + ], + "type": "structure" + }, + "UpdateChatControlsConfigurationResponse": { + "members": {}, + "type": "structure" + }, + "UpdateDataSourceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "dataSourceId": { + "location": "uri", + "locationName": "dataSourceId", + "shape": "DataSourceId" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "DataSourceName" + }, + "documentEnrichmentConfiguration": { + "shape": "DocumentEnrichmentConfiguration" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + }, + "roleArn": { + "shape": "RoleArn" + }, + "syncSchedule": { + "shape": "SyncSchedule" + }, + "vpcConfiguration": { + "shape": "DataSourceVpcConfiguration" + } + }, + "required": [ + "applicationId", + "dataSourceId", + "indexId" + ], + "type": "structure" + }, + "UpdateDataSourceResponse": { + "members": {}, + "type": "structure" + }, + "UpdateIndexRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "capacityConfiguration": { + "shape": "IndexCapacityConfiguration" + }, + "description": { + "shape": "Description" + }, + "displayName": { + "shape": "ApplicationName" + }, + "documentAttributeConfigurations": { + "shape": "DocumentAttributeConfigurations" + }, + "indexId": { + "location": "uri", + "locationName": "indexId", + "shape": "IndexId" + } + }, + "required": [ + "applicationId", + "indexId" + ], + "type": "structure" + }, + "UpdateIndexResponse": { + "members": {}, + "type": "structure" + }, + "UpdatePluginRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "authConfiguration": { + "shape": "PluginAuthConfiguration" + }, + "displayName": { + "shape": "PluginName" + }, + "pluginId": { + "location": "uri", + "locationName": "pluginId", + "shape": "PluginId" + }, + "serverUrl": { + "shape": "Url" + }, + "state": { + "shape": "PluginState" + } + }, + "required": [ + "applicationId", + "pluginId" + ], + "type": "structure" + }, + "UpdatePluginResponse": { + "members": {}, + "type": "structure" + }, + "UpdateRetrieverRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "configuration": { + "shape": "RetrieverConfiguration" + }, + "displayName": { + "shape": "RetrieverName" + }, + "retrieverId": { + "location": "uri", + "locationName": "retrieverId", + "shape": "RetrieverId" + }, + "roleArn": { + "shape": "RoleArn" + } + }, + "required": [ + "applicationId", + "retrieverId" + ], + "type": "structure" + }, + "UpdateRetrieverResponse": { + "members": {}, + "type": "structure" + }, + "UpdateUserRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "userAliasesToDelete": { + "shape": "UserAliases" + }, + "userAliasesToUpdate": { + "shape": "UserAliases" + }, + "userId": { + "location": "uri", + "locationName": "userId", + "shape": "String" + } + }, + "required": [ + "applicationId", + "userId" + ], + "type": "structure" + }, + "UpdateUserResponse": { + "members": { + "userAliasesAdded": { + "shape": "UserAliases" + }, + "userAliasesDeleted": { + "shape": "UserAliases" + }, + "userAliasesUpdated": { + "shape": "UserAliases" + } + }, + "type": "structure" + }, + "UpdateWebExperienceRequest": { + "members": { + "applicationId": { + "location": "uri", + "locationName": "applicationId", + "shape": "ApplicationId" + }, + "authenticationConfiguration": { + "shape": "WebExperienceAuthConfiguration" + }, + "samplePromptsControlMode": { + "shape": "WebExperienceSamplePromptsControlMode" + }, + "subtitle": { + "shape": "WebExperienceSubtitle" + }, + "title": { + "shape": "WebExperienceTitle" + }, + "webExperienceId": { + "location": "uri", + "locationName": "webExperienceId", + "shape": "WebExperienceId" + }, + "welcomeMessage": { + "shape": "WebExperienceWelcomeMessage" + } + }, + "required": [ + "applicationId", + "webExperienceId" + ], + "type": "structure" + }, + "UpdateWebExperienceResponse": { + "members": {}, + "type": "structure" + }, + "Url": { + "max": 2048, + "min": 1, + "pattern": "^(https?|ftp|file)://([^\\s]*)$", + "type": "string" + }, + "UserAlias": { + "members": { + "dataSourceId": { + "shape": "DataSourceId" + }, + "indexId": { + "shape": "IndexId" + }, + "userId": { + "shape": "String" + } + }, + "required": [ + "userId" + ], + "type": "structure" + }, + "UserAliases": { + "member": { + "shape": "UserAlias" + }, + "type": "list" + }, + "UserGroups": { + "member": { + "shape": "String" + }, + "type": "list" + }, + "UserId": { + "max": 1024, + "min": 1, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "UserIds": { + "member": { + "shape": "String" + }, + "type": "list" + }, + "UserMessage": { + "max": 7000, + "min": 1, + "type": "string" + }, + "UsersAndGroups": { + "members": { + "userGroups": { + "shape": "UserGroups" + }, + "userIds": { + "shape": "UserIds" + } + }, + "type": "structure" + }, + "ValidationException": { + "error": { + "httpStatusCode": 400, + "senderFault": true + }, + "exception": true, + "members": { + "fields": { + "shape": "ValidationExceptionFields" + }, + "message": { + "shape": "ErrorMessage" + }, + "reason": { + "shape": "ValidationExceptionReason" + } + }, + "required": [ + "message", + "reason" + ], + "type": "structure" + }, + "ValidationExceptionField": { + "members": { + "message": { + "shape": "String" + }, + "name": { + "shape": "String" + } + }, + "required": [ + "message", + "name" + ], + "type": "structure" + }, + "ValidationExceptionFields": { + "member": { + "shape": "ValidationExceptionField" + }, + "type": "list" + }, + "ValidationExceptionReason": { + "enum": [ + "CANNOT_PARSE", + "FIELD_VALIDATION_FAILED", + "UNKNOWN_OPERATION" + ], + "type": "string" + }, + "WebExperience": { + "members": { + "createdAt": { + "shape": "Timestamp" + }, + "defaultEndpoint": { + "shape": "Url" + }, + "status": { + "shape": "WebExperienceStatus" + }, + "updatedAt": { + "shape": "Timestamp" + }, + "webExperienceId": { + "shape": "WebExperienceId" + } + }, + "type": "structure" + }, + "WebExperienceArn": { + "max": 1284, + "min": 0, + "pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$", + "type": "string" + }, + "WebExperienceAuthConfiguration": { + "members": { + "samlConfiguration": { + "shape": "SamlConfiguration" + } + }, + "type": "structure", + "union": true + }, + "WebExperienceId": { + "max": 36, + "min": 36, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "WebExperienceSamplePromptsControlMode": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "WebExperienceStatus": { + "enum": [ + "CREATING", + "ACTIVE", + "DELETING", + "FAILED", + "PENDING_AUTH_CONFIG" + ], + "type": "string" + }, + "WebExperienceSubtitle": { + "max": 500, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "WebExperienceTitle": { + "max": 500, + "min": 0, + "pattern": "^\\P{C}*$", + "type": "string" + }, + "WebExperienceWelcomeMessage": { + "max": 300, + "min": 0, + "type": "string" + }, + "WebExperiences": { + "member": { + "shape": "WebExperience" + }, + "type": "list" + } + }, + "version": "2.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,2473 @@ +{ + "version": "2.0", + "service": "

", + "operations": { + "BatchDeleteDocument": "

Asynchronously deletes one or more documents added using the BatchPutDocument API from an Amazon Q index.

You can see the progress of the deletion, and any error messages related to the process, by using CloudWatch.

", + "BatchPutDocument": "

Adds one or more documents to an Amazon Q index.

You use this API to:

  • ingest your structured and unstructured documents and documents stored in an Amazon S3 bucket into an Amazon Q index.

  • add custom attributes to documents in an Amazon Q index.

  • attach an access control list to the documents added to an Amazon Q index.

You can see the progress of the deletion, and any error messages related to the process, by using CloudWatch.

", + "ChatSync": "

Starts or continues a non-streaming Amazon Q conversation.

", + "CreateApplication": "

Creates an Amazon Q application.

", + "CreateDataSource": "

Creates a data source connector for an Amazon Q application.

CreateDataSource is a synchronous operation. The operation returns 200 if the data source was successfully created. Otherwise, an exception is raised.

", + "CreateIndex": "

Creates an Amazon Q index.

To determine if index creation has completed, check the Status field returned from a call to DescribeIndex. The Status field is set to ACTIVE when the index is ready to use.

Once the index is active, you can index your documents using the BatchPutDocument API or the CreateDataSource API.

", + "CreatePlugin": "

Creates an Amazon Q plugin.

", + "CreateRetriever": "

Adds a retriever to your Amazon Q application.

", + "CreateUser": "

Creates a universally unique identifier (UUID) mapped to a list of local user ids within an application.

", + "CreateWebExperience": "

Creates an Amazon Q web experience.

", + "DeleteApplication": "

Deletes an Amazon Q application.

", + "DeleteChatControlsConfiguration": "

Deletes chat controls configured for an existing Amazon Q application.

", + "DeleteConversation": "

Deletes an Amazon Q web experience conversation.

", + "DeleteDataSource": "

Deletes an Amazon Q data source connector. While the data source is being deleted, the Status field returned by a call to the DescribeDataSource API is set to DELETING.

", + "DeleteGroup": "

Deletes a group so that all users and sub groups that belong to the group can no longer access documents only available to that group. For example, after deleting the group \"Summer Interns\", all interns who belonged to that group no longer see intern-only documents in their chat results.

If you want to delete, update, or replace users or sub groups of a group, you need to use the PutGroup operation. For example, if a user in the group \"Engineering\" leaves the engineering team and another user takes their place, you provide an updated list of users or sub groups that belong to the \"Engineering\" group when calling PutGroup.

", + "DeleteIndex": "

Deletes an Amazon Q index.

", + "DeletePlugin": "

Deletes an Amazon Q plugin.

", + "DeleteRetriever": "

Deletes the retriever used by an Amazon Q application.

", + "DeleteUser": "

Deletes a user by email id.

", + "DeleteWebExperience": "

Deletes an Amazon Q web experience.

", + "GetApplication": "

Gets information about an existing Amazon Q application.

", + "GetChatControlsConfiguration": "

Gets information about an chat controls configured for an existing Amazon Q application.

", + "GetDataSource": "

Gets information about an existing Amazon Q data source connector.

", + "GetGroup": "

Describes a group by group name.

", + "GetIndex": "

Gets information about an existing Amazon Q index.

", + "GetPlugin": "

Gets information about an existing Amazon Q plugin.

", + "GetRetriever": "

Gets information about an existing retriever used by an Amazon Q application.

", + "GetUser": "

Describes the universally unique identifier (UUID) associated with a local user in a data source.

", + "GetWebExperience": "

Gets information about an existing Amazon Q web experience.

", + "ListApplications": "

Lists Amazon Q applications.

", + "ListConversations": "

Lists one or more Amazon Q conversations.

", + "ListDataSourceSyncJobs": "

Get information about an Amazon Q data source connector synchronization.

", + "ListDataSources": "

Lists the Amazon Q data source connectors that you have created.

", + "ListDocuments": "

A list of documents attached to an index.

", + "ListGroups": "

Provides a list of groups that are mapped to users.

", + "ListIndices": "

Lists the Amazon Q indices you have created.

", + "ListMessages": "

Gets a list of messages associated with an Amazon Q web experience.

", + "ListPlugins": "

Lists configured Amazon Q plugins.

", + "ListRetrievers": "

Lists the retriever used by an Amazon Q application.

", + "ListTagsForResource": "

Gets a list of tags associated with a specified resource. Amazon Q applications and data sources can have tags associated with them.

", + "ListWebExperiences": "

Lists one or more Amazon Q Web Experiences.

", + "PutFeedback": "

Enables your end user to to provide feedback on their Amazon Q generated chat responses.

", + "PutGroup": "

Create, or updates, a mapping of users—who have access to a document—to groups.

You can also map sub groups to groups. For example, the group \"Company Intellectual Property Teams\" includes sub groups \"Research\" and \"Engineering\". These sub groups include their own list of users or people who work in these teams. Only users who work in research and engineering, and therefore belong in the intellectual property group, can see top-secret company documents in their Amazon Q chat results.

", + "StartDataSourceSyncJob": "

Starts a data source connector synchronization job. If a synchronization job is already in progress, Amazon Q returns a ConflictException.

", + "StopDataSourceSyncJob": "

Stops an Amazon Q data source connector synchronization job already in progress.

", + "TagResource": "

Adds the specified tag to the specified Amazon Q application or data source resource. If the tag already exists, the existing value is replaced with the new value.

", + "UntagResource": "

Removes a tag from an Amazon Q application or a data source.

", + "UpdateApplication": "

Updates an existing Amazon Q application.

", + "UpdateChatControlsConfiguration": "

Updates an set of chat controls configured for an existing Amazon Q application.

", + "UpdateDataSource": "

Updates an existing Amazon Q data source connector.

", + "UpdateIndex": "

Updates an Amazon Q index.

", + "UpdatePlugin": "

Updates an Amazon Q plugin.

", + "UpdateRetriever": "

Updates the retriever used for your Amazon Q application.

", + "UpdateUser": "

Updates a information associated with a user id.

", + "UpdateWebExperience": "

Updates an Amazon Q web experience.

" + }, + "shapes": { + "AccessConfiguration": { + "base": "

Used to configure access permissions for a document.

", + "refs": { + "Document$accessConfiguration": "

Configuration information for access permission to a document.

" + } + }, + "AccessControl": { + "base": "

A list of principals. Each principal can be either a USER or a GROUP and can be designated document access permissions of either ALLOW or DENY.

", + "refs": { + "AccessControls$member": null + } + }, + "AccessControls": { + "base": null, + "refs": { + "AccessConfiguration$accessControls": "

A list of AccessControlList objects.

" + } + }, + "AccessDeniedException": { + "base": "

You don't have access to perform this action. Make sure you have the required permission policies and user accounts and try again.

", + "refs": { + } + }, + "ActionExecution": { + "base": "

Performs an Amazon Q plugin action during a non-streaming chat conversation.

", + "refs": { + "ChatSyncInput$actionExecution": "

A request from an end user to perform an Amazon Q plugin action.

", + "Message$actionExecution": null + } + }, + "ActionExecutionPayload": { + "base": null, + "refs": { + "ActionExecution$payload": "

A mapping of field names to the field values in input that an end user provides to Amazon Q requests to perform their plugin action.

" + } + }, + "ActionExecutionPayloadField": { + "base": "

A user input field in an plugin action execution payload.

", + "refs": { + "ActionExecutionPayload$value": null + } + }, + "ActionPayloadFieldKey": { + "base": null, + "refs": { + "ActionExecutionPayload$key": null, + "ActionReviewPayload$key": null + } + }, + "ActionPayloadFieldNameSeparator": { + "base": null, + "refs": { + "ActionExecution$payloadFieldNameSeparator": "

A string used to retain information about the hierarchical contexts within an action execution event payload.

", + "ActionReview$payloadFieldNameSeparator": "

A string used to retain information about the hierarchical contexts within an action review payload.

" + } + }, + "ActionPayloadFieldType": { + "base": null, + "refs": { + "ActionReviewPayloadField$type": "

The type of field.

" + } + }, + "ActionPayloadFieldValue": { + "base": null, + "refs": { + "ActionExecutionPayloadField$value": "

The content of a user input field in an plugin action execution payload.

", + "ActionReviewPayloadField$value": "

The field value.

", + "ActionReviewPayloadFieldAllowedValue$displayValue": "

The name of the field.

", + "ActionReviewPayloadFieldAllowedValue$value": "

The field value.

" + } + }, + "ActionReview": { + "base": "

An output event that Amazon Q returns to an user who wants to perform a plugin action during a non-streaming chat conversation. It contains information about the selected action with a list of possible user input fields, some pre-populated by Amazon Q.

", + "refs": { + "ChatSyncOutput$actionReview": "

A request from Amazon Q to the end user for information Amazon Q needs to successfully complete a requested plugin action.

", + "Message$actionReview": null + } + }, + "ActionReviewPayload": { + "base": null, + "refs": { + "ActionReview$payload": "

Field values that an end user needs to provide to Amazon Q for Amazon Q to perform the requested plugin action.

" + } + }, + "ActionReviewPayloadField": { + "base": "

A user input field in an plugin action review payload.

", + "refs": { + "ActionReviewPayload$value": null + } + }, + "ActionReviewPayloadFieldAllowedValue": { + "base": "

Information about the field values that an end user can use to provide to Amazon Q for Amazon Q to perform the requested plugin action.

", + "refs": { + "ActionReviewPayloadFieldAllowedValues$member": null + } + }, + "ActionReviewPayloadFieldAllowedValues": { + "base": null, + "refs": { + "ActionReviewPayloadField$allowedValues": "

Information about the field values that an end user can use to provide to Amazon Q for Amazon Q to perform the requested plugin action.

" + } + }, + "AmazonResourceName": { + "base": null, + "refs": { + "ListTagsForResourceRequest$resourceARN": "

The Amazon Resource Name (ARN) of the Amazon Q application or data source to get a list of tags for.

", + "TagResourceRequest$resourceARN": "

The Amazon Resource Name (ARN) of the Amazon Q application or data source to tag.

", + "UntagResourceRequest$resourceARN": "

The Amazon Resource Name (ARN) of the Amazon Q application, or data source to remove the tag from.

" + } + }, + "Application": { + "base": "

Summary information for an Amazon Q application.

", + "refs": { + "Applications$member": null + } + }, + "ApplicationArn": { + "base": null, + "refs": { + "CreateApplicationResponse$applicationArn": "

The Amazon Resource Name (ARN) of the Amazon Q application.

", + "GetApplicationResponse$applicationArn": "

The Amazon Resource Name (ARN) of the Amazon Q application.

" + } + }, + "ApplicationId": { + "base": null, + "refs": { + "Application$applicationId": "

The identifier for the Amazon Q application.

", + "BatchDeleteDocumentRequest$applicationId": "

The identifier of the Amazon Q application.

", + "BatchPutDocumentRequest$applicationId": "

The identifier of the Amazon Q application.

", + "ChatSyncInput$applicationId": "

The identifier of the Amazon Q application linked to the Amazon Q conversation.

", + "CreateApplicationResponse$applicationId": "

The identifier of the Amazon Q application.

", + "CreateDataSourceRequest$applicationId": "

The identifier of the Amazon Q application the data source will be attached to.

", + "CreateIndexRequest$applicationId": "

The identifier of the Amazon Q application using the index.

", + "CreatePluginRequest$applicationId": "

The identifier of the application that will contain the plugin.

", + "CreateRetrieverRequest$applicationId": "

The identifier of your Amazon Q application.

", + "CreateUserRequest$applicationId": "

The identifier of the application for which the user mapping will be created.

", + "CreateWebExperienceRequest$applicationId": "

The identifier of the Amazon Q web experience.

", + "DeleteApplicationRequest$applicationId": "

The identifier of the Amazon Q application.

", + "DeleteChatControlsConfigurationRequest$applicationId": "

The identifier of the application the chat controls have been configured for.

", + "DeleteConversationRequest$applicationId": "

The identifier of the Amazon Q application associated with the conversation.

", + "DeleteDataSourceRequest$applicationId": "

The identifier of the Amazon Q application used with the data source connector.

", + "DeleteGroupRequest$applicationId": "

The identifier of the application in which the group mapping belongs.

", + "DeleteIndexRequest$applicationId": "

The identifier of the Amazon Q application the Amazon Q index is linked to.

", + "DeletePluginRequest$applicationId": "

The identifier the application attached to the Amazon Q plugin.

", + "DeleteRetrieverRequest$applicationId": "

The identifier of the Amazon Q application using the retriever.

", + "DeleteUserRequest$applicationId": "

The identifier of the application from which the user is being deleted.

", + "DeleteWebExperienceRequest$applicationId": "

The identifier of the Amazon Q application linked to the Amazon Q web experience.

", + "GetApplicationRequest$applicationId": "

The identifier of the Amazon Q application.

", + "GetApplicationResponse$applicationId": "

The identifier of the Amazon Q application.

", + "GetChatControlsConfigurationRequest$applicationId": "

The identifier of the application for which the chat controls are configured.

", + "GetDataSourceRequest$applicationId": "

The identifier of the Amazon Q application.

", + "GetDataSourceResponse$applicationId": "

The identifier of the Amazon Q application.

", + "GetGroupRequest$applicationId": "

The identifier of the application id the group is attached to.

", + "GetIndexRequest$applicationId": "

The identifier of the Amazon Q application connected to the index.

", + "GetIndexResponse$applicationId": "

The identifier of the Amazon Q application associated with the index.

", + "GetPluginRequest$applicationId": "

The identifier of the application which contains the plugin.

", + "GetPluginResponse$applicationId": "

The identifier of the application which contains the plugin.

", + "GetRetrieverRequest$applicationId": "

The identifier of the Amazon Q application using the retriever.

", + "GetRetrieverResponse$applicationId": "

The identifier of the Amazon Q application using the retriever.

", + "GetUserRequest$applicationId": "

The identifier of the application connected to the user.

", + "GetWebExperienceRequest$applicationId": "

The identifier of the Amazon Q application linked to the web experience.

", + "GetWebExperienceResponse$applicationId": "

The identifier of the Amazon Q application linked to the web experience.

", + "ListConversationsRequest$applicationId": "

The identifier of the Amazon Q application.

", + "ListDataSourceSyncJobsRequest$applicationId": "

The identifier of the Amazon Q application connected to the data source.

", + "ListDataSourcesRequest$applicationId": "

The identifier of the Amazon Q application linked to the data source connectors.

", + "ListDocumentsRequest$applicationId": "

The identifier of the application id the documents are attached to.

", + "ListGroupsRequest$applicationId": "

The identifier of the application for getting a list of groups mapped to users.

", + "ListIndicesRequest$applicationId": "

The identifier of the Amazon Q application connected to the index.

", + "ListMessagesRequest$applicationId": "

The identifier for the Amazon Q application.

", + "ListPluginsRequest$applicationId": "

The identifier of the application the plugin is attached to.

", + "ListRetrieversRequest$applicationId": "

The identifier of the Amazon Q application using the retriever.

", + "ListWebExperiencesRequest$applicationId": "

The identifier of the Amazon Q application linked to the listed web experiences.

", + "PutFeedbackRequest$applicationId": "

The identifier of the application associated with the feedback.

", + "PutGroupRequest$applicationId": "

The identifier of the application in which the user and group mapping belongs.

", + "Retriever$applicationId": "

The identifier of the Amazon Q application using the retriever.

", + "StartDataSourceSyncJobRequest$applicationId": "

The identifier of Amazon Q application the data source is connected to.

", + "StopDataSourceSyncJobRequest$applicationId": "

The identifier of the Amazon Q application that the data source is connected to.

", + "UpdateApplicationRequest$applicationId": "

The identifier of the Amazon Q application.

", + "UpdateChatControlsConfigurationRequest$applicationId": "

The identifier of the application for which the chat controls are configured.

", + "UpdateDataSourceRequest$applicationId": "

The identifier of the Amazon Q application the data source is attached to.

", + "UpdateIndexRequest$applicationId": "

The identifier of the Amazon Q application connected to the index.

", + "UpdatePluginRequest$applicationId": "

The identifier of the application the plugin is attached to.

", + "UpdateRetrieverRequest$applicationId": "

The identifier of your Amazon Q application.

", + "UpdateUserRequest$applicationId": "

The identifier of the application the user is attached to.

", + "UpdateWebExperienceRequest$applicationId": "

The identifier of the Amazon Q application attached to the web experience.

" + } + }, + "ApplicationName": { + "base": null, + "refs": { + "Application$displayName": "

The name of the Amazon Q application.

", + "CreateApplicationRequest$displayName": "

A name for the Amazon Q application.

", + "GetApplicationResponse$displayName": "

The name of the Amazon Q application.

", + "UpdateApplicationRequest$displayName": "

A name for the Amazon Q application.

", + "UpdateIndexRequest$displayName": "

The name of the Amazon Q index.

" + } + }, + "ApplicationStatus": { + "base": null, + "refs": { + "Application$status": "

The status of the Amazon Q application. The application is ready to use when the status is ACTIVE.

", + "GetApplicationResponse$status": "

The status of the Amazon Q application.

" + } + }, + "Applications": { + "base": null, + "refs": { + "ListApplicationsResponse$applications": "

An array of summary information on the configuration of one or more Amazon Q applications.

" + } + }, + "AppliedAttachmentsConfiguration": { + "base": "

Configuration information about the file upload during chat feature for your application.

", + "refs": { + "GetApplicationResponse$attachmentsConfiguration": "

Settings for whether end users can upload files directly during chat.

" + } + }, + "AttachmentInput": { + "base": "

A file directly uploaded into a web experience chat.

", + "refs": { + "AttachmentsInput$member": null + } + }, + "AttachmentName": { + "base": null, + "refs": { + "AttachmentInput$name": "

The name of the file.

", + "AttachmentOutput$name": "

The name of a file uploaded during chat.

" + } + }, + "AttachmentOutput": { + "base": "

The details of a file uploaded during chat.

", + "refs": { + "AttachmentsOutput$member": null + } + }, + "AttachmentStatus": { + "base": null, + "refs": { + "AttachmentOutput$status": "

The status of a file uploaded during chat.

" + } + }, + "AttachmentsConfiguration": { + "base": "

Configuration information for the file upload during chat feature.

", + "refs": { + "CreateApplicationRequest$attachmentsConfiguration": "

An option to allow end users to upload files directly during chat.

", + "UpdateApplicationRequest$attachmentsConfiguration": "

An option to allow end users to upload files directly during chat.

" + } + }, + "AttachmentsControlMode": { + "base": null, + "refs": { + "AppliedAttachmentsConfiguration$attachmentsControlMode": "

Information about whether file upload during chat functionality is activated for your application.

", + "AttachmentsConfiguration$attachmentsControlMode": "

Status information about whether file upload functionality is activated or deactivated for your end user.

" + } + }, + "AttachmentsInput": { + "base": null, + "refs": { + "ChatSyncInput$attachments": "

A list of files uploaded directly during chat. You can upload a maximum of 5 files of upto 10 MB each.

" + } + }, + "AttachmentsOutput": { + "base": null, + "refs": { + "ChatSyncOutput$failedAttachments": "

A list of files which failed to upload during chat.

", + "Message$attachments": "

A file directly uploaded into an Amazon Q web experience chat.

" + } + }, + "AttributeFilter": { + "base": "

Enables filtering of Amazon Q web experience responses based on document attributes or metadata fields.

", + "refs": { + "AttributeFilter$notFilter": "

Performs a logical NOT operation on all supplied filters.

", + "AttributeFilters$member": null, + "ChatSyncInput$attributeFilter": "

Enables filtering of Amazon Q web experience responses based on document attributes or metadata fields.

" + } + }, + "AttributeFilters": { + "base": null, + "refs": { + "AttributeFilter$andAllFilters": "

Performs a logical AND operation on all supplied filters.

", + "AttributeFilter$orAllFilters": "

Performs a logical OR operation on all supplied filters.

" + } + }, + "AttributeType": { + "base": null, + "refs": { + "DocumentAttributeConfiguration$type": "

The type of document attribute.

" + } + }, + "AttributeValueOperator": { + "base": null, + "refs": { + "DocumentAttributeTarget$attributeValueOperator": "

TRUE to delete the existing target value for your specified target attribute key. You cannot create a target value and set this to TRUE.

" + } + }, + "BasicAuthConfiguration": { + "base": "

Information about the basic authentication credentials used to configure a plugin.

", + "refs": { + "PluginAuthConfiguration$basicAuthConfiguration": "

Information about the basic authentication credentials used to configure a plugin.

" + } + }, + "BatchDeleteDocumentRequest": { + "base": null, + "refs": { + } + }, + "BatchDeleteDocumentResponse": { + "base": null, + "refs": { + } + }, + "BatchPutDocumentRequest": { + "base": null, + "refs": { + } + }, + "BatchPutDocumentResponse": { + "base": null, + "refs": { + } + }, + "Blob": { + "base": null, + "refs": { + "AttachmentInput$data": "

The data contained within the uploaded file.

", + "DocumentContent$blob": "

The contents of the document. Documents passed to the blob parameter must be base64 encoded. Your code might not need to encode the document file bytes if you're using an Amazon Web Services SDK to call Amazon Q APIs. If you are calling the Amazon Q endpoint directly using REST, you must base64 encode the contents before sending.

" + } + }, + "BlockedPhrase": { + "base": null, + "refs": { + "BlockedPhrases$member": null + } + }, + "BlockedPhrases": { + "base": null, + "refs": { + "BlockedPhrasesConfiguration$blockedPhrases": "

A list of phrases blocked from a Amazon Q web experience chat.

", + "BlockedPhrasesConfigurationUpdate$blockedPhrasesToCreateOrUpdate": "

Creates or updates a blocked phrases configuration in your Amazon Q application.

", + "BlockedPhrasesConfigurationUpdate$blockedPhrasesToDelete": "

Deletes a blocked phrases configuration in your Amazon Q application.

" + } + }, + "BlockedPhrasesConfiguration": { + "base": "

Provides information about the phrases blocked from chat by your chat control configuration.

", + "refs": { + "GetChatControlsConfigurationResponse$blockedPhrases": "

The phrases blocked from chat by your chat control configuration.

" + } + }, + "BlockedPhrasesConfigurationUpdate": { + "base": "

Updates a blocked phrases configuration in your Amazon Q application.

", + "refs": { + "UpdateChatControlsConfigurationRequest$blockedPhrasesConfigurationUpdate": "

The phrases blocked from chat by your chat control configuration.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "ActionReviewPayloadField$required": "

Information about whether the field is required.

" + } + }, + "ChatSyncInput": { + "base": null, + "refs": { + } + }, + "ChatSyncOutput": { + "base": null, + "refs": { + } + }, + "ClientToken": { + "base": null, + "refs": { + "ChatSyncInput$clientToken": "

A token that you provide to identify a chat request.

", + "CreateApplicationRequest$clientToken": "

A token that you provide to identify the request to create your Amazon Q application.

", + "CreateDataSourceRequest$clientToken": "

A token you provide to identify a request to create a data source connector. Multiple calls to the CreateDataSource API with the same client token will create only one data source connector.

", + "CreateIndexRequest$clientToken": "

A token that you provide to identify the request to create an index. Multiple calls to the CreateIndex API with the same client token will create only one index.

", + "CreatePluginRequest$clientToken": "

A token that you provide to identify the request to create your Amazon Q plugin.

", + "CreateRetrieverRequest$clientToken": "

A token that you provide to identify the request to create your Amazon Q application retriever.

", + "CreateUserRequest$clientToken": "

A token that you provide to identify the request to create your Amazon Q user mapping.

", + "CreateWebExperienceRequest$clientToken": "

A token you provide to identify a request to create an Amazon Q web experience.

", + "UpdateChatControlsConfigurationRequest$clientToken": "

A token that you provide to identify the request to update a Amazon Q application chat configuration.

" + } + }, + "ConflictException": { + "base": "

You are trying to perform an action that conflicts with the current status of your resource. Fix any inconsistences with your resources and try again.

", + "refs": { + } + }, + "ContentBlockerRule": { + "base": "

A rule for configuring how Amazon Q responds when it encounters a a blocked topic. You can configure a custom message to inform your end users that they have asked about a restricted topic and suggest any next steps they should take.

", + "refs": { + "RuleConfiguration$contentBlockerRule": "

A rule for configuring how Amazon Q responds when it encounters a a blocked topic.

" + } + }, + "ContentRetrievalRule": { + "base": "

Rules for retrieving content from data sources connected to a Amazon Q application for a specific topic control configuration.

", + "refs": { + "RuleConfiguration$contentRetrievalRule": null + } + }, + "ContentType": { + "base": null, + "refs": { + "Document$contentType": "

The file type of the document in the Blob field.

If you want to index snippets or subsets of HTML documents instead of the entirety of the HTML documents, you add the HTML start and closing tags (<HTML>content</HTML>) around the content.

" + } + }, + "Conversation": { + "base": "

A conversation in an Amazon Q application.

", + "refs": { + "Conversations$member": null + } + }, + "ConversationId": { + "base": null, + "refs": { + "ChatSyncInput$conversationId": "

The identifier of the Amazon Q conversation.

", + "ChatSyncOutput$conversationId": "

The identifier of the Amazon Q conversation.

", + "Conversation$conversationId": "

The identifier of the Amazon Q conversation.

", + "DeleteConversationRequest$conversationId": "

The identifier of the Amazon Q web experience conversation being deleted.

", + "ListMessagesRequest$conversationId": "

The identifier of the Amazon Q web experience conversation.

", + "PutFeedbackRequest$conversationId": "

The identifier of the conversation the feedback is attached to.

" + } + }, + "ConversationTitle": { + "base": null, + "refs": { + "Conversation$title": "

The title of the conversation.

" + } + }, + "Conversations": { + "base": null, + "refs": { + "ListConversationsResponse$conversations": "

An array of summary information on the configuration of one or more Amazon Q web experiences.

" + } + }, + "CreateApplicationRequest": { + "base": null, + "refs": { + } + }, + "CreateApplicationResponse": { + "base": null, + "refs": { + } + }, + "CreateDataSourceRequest": { + "base": null, + "refs": { + } + }, + "CreateDataSourceResponse": { + "base": null, + "refs": { + } + }, + "CreateIndexRequest": { + "base": null, + "refs": { + } + }, + "CreateIndexResponse": { + "base": null, + "refs": { + } + }, + "CreatePluginRequest": { + "base": null, + "refs": { + } + }, + "CreatePluginResponse": { + "base": null, + "refs": { + } + }, + "CreateRetrieverRequest": { + "base": null, + "refs": { + } + }, + "CreateRetrieverResponse": { + "base": null, + "refs": { + } + }, + "CreateUserRequest": { + "base": null, + "refs": { + } + }, + "CreateUserRequestUserAliasesList": { + "base": null, + "refs": { + "CreateUserRequest$userAliases": "

The list of user aliases in the mapping.

" + } + }, + "CreateUserResponse": { + "base": null, + "refs": { + } + }, + "CreateWebExperienceRequest": { + "base": null, + "refs": { + } + }, + "CreateWebExperienceResponse": { + "base": null, + "refs": { + } + }, + "DataSource": { + "base": "

A data source in an Amazon Q application.

", + "refs": { + "DataSources$member": null + } + }, + "DataSourceArn": { + "base": null, + "refs": { + "CreateDataSourceResponse$dataSourceArn": "

The Amazon Resource Name (ARN) of a data source in an Amazon Q application.

", + "GetDataSourceResponse$dataSourceArn": "

The Amazon Resource Name (ARN) of the data source.

" + } + }, + "DataSourceConfiguration": { + "base": "

Provides the configuration information for an Amazon Q data source.

", + "refs": { + "CreateDataSourceRequest$configuration": "

Configuration information to connect to your data source repository. For configuration templates for your specific data source, see Supported connectors.

", + "GetDataSourceResponse$configuration": "

The details of how the data source connector is configured.

", + "UpdateDataSourceRequest$configuration": null + } + }, + "DataSourceId": { + "base": null, + "refs": { + "CreateDataSourceResponse$dataSourceId": "

The identifier of the data source connector.

", + "DataSource$dataSourceId": "

The identifier of the Amazon Q data source.

", + "DataSourceIds$member": null, + "DeleteDataSourceRequest$dataSourceId": "

The identifier of the data source connector that you want to delete.

", + "DeleteGroupRequest$dataSourceId": "

The identifier of the data source linked to the group

A group can be tied to multiple data sources. You can delete a group from accessing documents in a certain data source. For example, the groups \"Research\", \"Engineering\", and \"Sales and Marketing\" are all tied to the company's documents stored in the data sources Confluence and Salesforce. You want to delete \"Research\" and \"Engineering\" groups from Salesforce, so that these groups cannot access customer-related documents stored in Salesforce. Only \"Sales and Marketing\" should access documents in the Salesforce data source.

", + "EligibleDataSource$dataSourceId": "

The identifier of the data source.

", + "FailedDocument$dataSourceId": "

The identifier of the Amazon Q data source connector that contains the failed document.

", + "GetDataSourceRequest$dataSourceId": "

The identifier of the data source connector.

", + "GetDataSourceResponse$dataSourceId": "

The identifier of the data source connector.

", + "GetGroupRequest$dataSourceId": "

The identifier of the data source the group is attached to.

", + "ListDataSourceSyncJobsRequest$dataSourceId": "

The identifier of the data source connector.

", + "ListGroupsRequest$dataSourceId": "

The identifier of the data source for getting a list of groups mapped to users.

", + "PutGroupRequest$dataSourceId": "

The identifier of the data source for which you want to map users to their groups. This is useful if a group is tied to multiple data sources, but you only want the group to access documents of a certain data source. For example, the groups \"Research\", \"Engineering\", and \"Sales and Marketing\" are all tied to the company's documents stored in the data sources Confluence and Salesforce. However, \"Sales and Marketing\" team only needs access to customer-related documents stored in Salesforce.

", + "StartDataSourceSyncJobRequest$dataSourceId": "

The identifier of the data source connector.

", + "StopDataSourceSyncJobRequest$dataSourceId": "

The identifier of the data source connector.

", + "UpdateDataSourceRequest$dataSourceId": "

The identifier of the data source connector.

", + "UserAlias$dataSourceId": "

The identifier of the data source that the user aliases are associated with.

" + } + }, + "DataSourceIds": { + "base": null, + "refs": { + "ListDocumentsRequest$dataSourceIds": "

The identifier of the data sources the documents are attached to.

" + } + }, + "DataSourceName": { + "base": null, + "refs": { + "CreateDataSourceRequest$displayName": "

A name for the data source connector.

", + "DataSource$displayName": "

The name of the Amazon Q data source.

", + "GetDataSourceResponse$displayName": "

The name for the data source connector.

", + "UpdateDataSourceRequest$displayName": "

A name of the data source connector.

" + } + }, + "DataSourceStatus": { + "base": null, + "refs": { + "DataSource$status": "

The status of the Amazon Q data source.

", + "GetDataSourceResponse$status": "

The current status of the data source connector. When the Status field value is FAILED, the ErrorMessage field contains a description of the error that caused the data source connector to fail.

" + } + }, + "DataSourceSyncJob": { + "base": "

Provides information about an Amazon Q data source connector synchronization job.

", + "refs": { + "DataSourceSyncJobs$member": null + } + }, + "DataSourceSyncJobMetrics": { + "base": "

Maps a batch delete document request to a specific Amazon Q data source connector sync job.

", + "refs": { + "DataSourceSyncJob$metrics": "

Maps a batch delete document request to a specific data source sync job. This is optional and should only be supplied when documents are deleted by a data source connector.

" + } + }, + "DataSourceSyncJobStatus": { + "base": null, + "refs": { + "DataSourceSyncJob$status": "

The status of the synchronization job. When the Status field is set to SUCCEEDED, the synchronization job is done. If the status code is FAILED, the ErrorCode and ErrorMessage fields give you the reason for the failure.

", + "ListDataSourceSyncJobsRequest$statusFilter": "

Only returns synchronization jobs with the Status field equal to the specified status.

" + } + }, + "DataSourceSyncJobs": { + "base": null, + "refs": { + "ListDataSourceSyncJobsResponse$history": "

A history of synchronization jobs for the data source connector.

" + } + }, + "DataSourceUserId": { + "base": null, + "refs": { + "MemberUser$userId": "

The identifier of the user you want to map to a group.

" + } + }, + "DataSourceVpcConfiguration": { + "base": "

Provides configuration information needed to connect to an Amazon VPC (Virtual Private Cloud).

", + "refs": { + "CreateDataSourceRequest$vpcConfiguration": "

Configuration information for an Amazon VPC (Virtual Private Cloud) to connect to your data source. For more information, see Using Amazon VPC with Amazon Q connectors.

", + "GetDataSourceResponse$vpcConfiguration": "

Configuration information for an Amazon VPC (Virtual Private Cloud) to connect to your data source.

", + "UpdateDataSourceRequest$vpcConfiguration": null + } + }, + "DataSources": { + "base": null, + "refs": { + "ListDataSourcesResponse$dataSources": "

An array of summary information for one or more data source connector.

" + } + }, + "DeleteApplicationRequest": { + "base": null, + "refs": { + } + }, + "DeleteApplicationResponse": { + "base": null, + "refs": { + } + }, + "DeleteChatControlsConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteChatControlsConfigurationResponse": { + "base": null, + "refs": { + } + }, + "DeleteConversationRequest": { + "base": null, + "refs": { + } + }, + "DeleteConversationResponse": { + "base": null, + "refs": { + } + }, + "DeleteDataSourceRequest": { + "base": null, + "refs": { + } + }, + "DeleteDataSourceResponse": { + "base": null, + "refs": { + } + }, + "DeleteDocument": { + "base": "

A document deleted from an Amazon Q data source connector.

", + "refs": { + "DeleteDocuments$member": null + } + }, + "DeleteDocuments": { + "base": null, + "refs": { + "BatchDeleteDocumentRequest$documents": "

Documents deleted from the Amazon Q index.

" + } + }, + "DeleteGroupRequest": { + "base": null, + "refs": { + } + }, + "DeleteGroupResponse": { + "base": null, + "refs": { + } + }, + "DeleteIndexRequest": { + "base": null, + "refs": { + } + }, + "DeleteIndexResponse": { + "base": null, + "refs": { + } + }, + "DeletePluginRequest": { + "base": null, + "refs": { + } + }, + "DeletePluginResponse": { + "base": null, + "refs": { + } + }, + "DeleteRetrieverRequest": { + "base": null, + "refs": { + } + }, + "DeleteRetrieverResponse": { + "base": null, + "refs": { + } + }, + "DeleteUserRequest": { + "base": null, + "refs": { + } + }, + "DeleteUserResponse": { + "base": null, + "refs": { + } + }, + "DeleteWebExperienceRequest": { + "base": null, + "refs": { + } + }, + "DeleteWebExperienceResponse": { + "base": null, + "refs": { + } + }, + "Description": { + "base": null, + "refs": { + "CreateApplicationRequest$description": "

A description for the Amazon Q application.

", + "CreateDataSourceRequest$description": "

A description for the data source connector.

", + "CreateIndexRequest$description": "

A description for the Amazon Q index.

", + "GetApplicationResponse$description": "

A description for the Amazon Q application.

", + "GetDataSourceResponse$description": "

The description for the data source connector.

", + "GetIndexResponse$description": "

The description for the Amazon Q index.

", + "UpdateApplicationRequest$description": "

A description for the Amazon Q application.

", + "UpdateDataSourceRequest$description": "

The description of the data source connector.

", + "UpdateIndexRequest$description": "

The description of the Amazon Q index.

" + } + }, + "Document": { + "base": "

A document in an Amazon Q application.

", + "refs": { + "Documents$member": null + } + }, + "DocumentAttribute": { + "base": "

A document attribute or metadata field.

", + "refs": { + "AttributeFilter$containsAll": "

Returns true when a document contains all the specified document attributes or metadata fields.

", + "AttributeFilter$containsAny": "

Returns true when a document contains any of the specified document attributes or metadata fields.

", + "AttributeFilter$equalsTo": "

Performs an equals operation on two document attributes or metadata fields.

", + "AttributeFilter$greaterThan": "

Performs a greater than operation on two document attributes or metadata fields. Use with a document attribute of type Date or Long.

", + "AttributeFilter$greaterThanOrEquals": "

Performs a greater or equals than operation on two document attributes or metadata fields. Use with a document attribute of type Date or Long.

", + "AttributeFilter$lessThan": "

Performs a less than operation on two document attributes or metadata fields. Use with a document attribute of type Date or Long.

", + "AttributeFilter$lessThanOrEquals": "

Performs a less than or equals operation on two document attributes or metadata fields. Use with a document attribute of type Date or Long.

", + "DocumentAttributes$member": null + } + }, + "DocumentAttributeCondition": { + "base": "

The condition used for the target document attribute or metadata field when ingesting documents into Amazon Q. You use this with DocumentAttributeTarget to apply the condition.

For example, you can create the 'Department' target field and have it prefill department names associated with the documents based on information in the 'Source_URI' field. Set the condition that if the 'Source_URI' field contains 'financial' in its URI value, then prefill the target field 'Department' with the target value 'Finance' for the document.

Amazon Q can't create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget. Amazon Q then will map your newly created metadata field to your index field.

", + "refs": { + "HookConfiguration$invocationCondition": "

The condition used for when a Lambda function should be invoked.

For example, you can specify a condition that if there are empty date-time values, then Amazon Q should invoke a function that inserts the current date-time.

", + "InlineDocumentEnrichmentConfiguration$condition": null + } + }, + "DocumentAttributeConfiguration": { + "base": "

Configuration information for document attributes. Document attributes are metadata or fields associated with your documents. For example, the company department name associated with each document.

For more information, see Understanding document attributes.

", + "refs": { + "DocumentAttributeConfigurations$member": null + } + }, + "DocumentAttributeConfigurations": { + "base": null, + "refs": { + "GetIndexResponse$documentAttributeConfigurations": "

Configuration information for document attributes or metadata. Document metadata are fields associated with your documents. For example, the company department name associated with each document. For more information, see Understanding document attributes.

", + "UpdateIndexRequest$documentAttributeConfigurations": "

Configuration information for document metadata or fields. Document metadata are fields or attributes associated with your documents. For example, the company department name associated with each document. For more information, see Understanding document attributes.

" + } + }, + "DocumentAttributeKey": { + "base": null, + "refs": { + "DocumentAttribute$name": "

The identifier for the attribute.

", + "DocumentAttributeCondition$key": "

The identifier of the document attribute used for the condition.

For example, 'Source_URI' could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

Amazon Q currently doesn't support _document_body as an attribute key used for the condition.

", + "DocumentAttributeTarget$key": "

The identifier of the target document attribute or metadata field. For example, 'Department' could be an identifier for the target attribute or metadata field that includes the department names associated with the documents.

" + } + }, + "DocumentAttributeStringListValue": { + "base": null, + "refs": { + "DocumentAttributeValue$stringListValue": "

A list of strings.

" + } + }, + "DocumentAttributeTarget": { + "base": "

The target document attribute or metadata field you want to alter when ingesting documents into Amazon Q.

For example, you can delete all customer identification numbers associated with the documents, stored in the document metadata field called 'Customer_ID' by setting the target key as 'Customer_ID' and the deletion flag to TRUE. This removes all customer ID values in the field 'Customer_ID'. This would scrub personally identifiable information from each document's metadata.

Amazon Q can't create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget . Amazon Q will then map your newly created document attribute to your index field.

You can also use this with DocumentAttributeCondition .

", + "refs": { + "InlineDocumentEnrichmentConfiguration$target": null + } + }, + "DocumentAttributeValue": { + "base": "

The value of a document attribute. You can only provide one value for a document attribute.

", + "refs": { + "DocumentAttribute$value": "

The value of the attribute.

", + "DocumentAttributeCondition$value": null, + "DocumentAttributeTarget$value": null + } + }, + "DocumentAttributeValueStringValueString": { + "base": null, + "refs": { + "DocumentAttributeValue$stringValue": "

A string.

" + } + }, + "DocumentAttributes": { + "base": null, + "refs": { + "Document$attributes": "

Custom attributes to apply to the document for refining Amazon Q web experience responses.

" + } + }, + "DocumentContent": { + "base": "

The contents of a document.

", + "refs": { + "Document$content": "

The contents of the document.

" + } + }, + "DocumentContentOperator": { + "base": null, + "refs": { + "InlineDocumentEnrichmentConfiguration$documentContentOperator": "

TRUE to delete content if the condition used for the target attribute is met.

" + } + }, + "DocumentDetailList": { + "base": null, + "refs": { + "ListDocumentsResponse$documentDetailList": "

A list of document details.

" + } + }, + "DocumentDetails": { + "base": "

The details of a document within an Amazon Q index.

", + "refs": { + "DocumentDetailList$member": null + } + }, + "DocumentEnrichmentConditionOperator": { + "base": null, + "refs": { + "DocumentAttributeCondition$operator": "

The identifier of the document attribute used for the condition.

For example, 'Source_URI' could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

Amazon Kendra currently does not support _document_body as an attribute key used for the condition.

" + } + }, + "DocumentEnrichmentConfiguration": { + "base": "

Provides the configuration information for altering document metadata and content during the document ingestion process.

For more information, see Custom document enrichment.

", + "refs": { + "CreateDataSourceRequest$documentEnrichmentConfiguration": null, + "Document$documentEnrichmentConfiguration": "

The configuration information for altering document metadata and content during the document ingestion process.

", + "GetDataSourceResponse$documentEnrichmentConfiguration": null, + "UpdateDataSourceRequest$documentEnrichmentConfiguration": null + } + }, + "DocumentId": { + "base": null, + "refs": { + "DeleteDocument$documentId": "

The identifier of the deleted document.

", + "Document$id": "

The identifier of the document.

", + "DocumentDetails$documentId": "

The identifier of the document.

", + "FailedDocument$id": "

The identifier of the document that couldn't be removed from the Amazon Q index.

" + } + }, + "DocumentStatus": { + "base": null, + "refs": { + "DocumentDetails$status": "

The current status of the document.

" + } + }, + "Documents": { + "base": null, + "refs": { + "BatchPutDocumentRequest$documents": "

One or more documents to add to the index.

" + } + }, + "EligibleDataSource": { + "base": "

The identifier of the data source Amazon Q will generate responses from.

", + "refs": { + "EligibleDataSources$member": null + } + }, + "EligibleDataSources": { + "base": null, + "refs": { + "ContentRetrievalRule$eligibleDataSources": "

Specifies data sources in a Amazon Q application to use for content generation.

" + } + }, + "EncryptionConfiguration": { + "base": "

Provides the identifier of the KMS key used to encrypt data indexed by Amazon Q. Amazon Q doesn't support asymmetric keys.

", + "refs": { + "CreateApplicationRequest$encryptionConfiguration": "

The identifier of the KMS key that is used to encrypt your data. Amazon Q doesn't support asymmetric keys.

", + "GetApplicationResponse$encryptionConfiguration": "

The identifier of the Amazon Web Services KMS key that is used to encrypt your data. Amazon Q doesn't support asymmetric keys.

" + } + }, + "ErrorCode": { + "base": null, + "refs": { + "ErrorDetail$errorCode": "

The code associated with the data source sync error.

" + } + }, + "ErrorDetail": { + "base": "

Provides information about a data source sync error.

", + "refs": { + "AttachmentOutput$error": "

An error associated with a file uploaded during chat.

", + "DataSourceSyncJob$error": "

If the Status field is set to FAILED, the ErrorCode field indicates the reason the synchronization failed.

", + "DocumentDetails$error": "

An error message associated with the document.

", + "FailedDocument$error": "

An explanation for why the document couldn't be removed from the index.

", + "GetApplicationResponse$error": "

If the Status field is set to ERROR, the ErrorMessage field contains a description of the error that caused the synchronization to fail.

", + "GetDataSourceResponse$error": "

When the Status field value is FAILED, the ErrorMessage field contains a description of the error that caused the data source connector to fail.

", + "GetIndexResponse$error": "

When the Status field value is FAILED, the ErrorMessage field contains a message that explains why.

", + "GetWebExperienceResponse$error": "

When the Status field value is FAILED, the ErrorMessage field contains a description of the error that caused the data source connector to fail.

", + "GroupStatusDetail$errorDetail": "

The details of an error associated a group status.

" + } + }, + "ErrorMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": "

The message describing a ConflictException.

", + "ErrorDetail$errorMessage": "

The message explaining the data source sync error.

", + "InternalServerException$message": null, + "LicenseNotFoundException$message": null, + "ResourceNotFoundException$message": "

The message describing a ResourceNotFoundException.

", + "ServiceQuotaExceededException$message": "

The message describing a ServiceQuotaExceededException.

", + "ThrottlingException$message": null, + "ValidationException$message": "

The message describing the ValidationException.

" + } + }, + "ExampleChatMessage": { + "base": null, + "refs": { + "ExampleChatMessages$member": null + } + }, + "ExampleChatMessages": { + "base": null, + "refs": { + "TopicConfiguration$exampleChatMessages": "

A list of example phrases that you expect the end user to use in relation to the topic.

" + } + }, + "ExecutionId": { + "base": null, + "refs": { + "BatchDeleteDocumentRequest$dataSourceSyncId": "

The identifier of the data source sync during which the documents were deleted.

", + "BatchPutDocumentRequest$dataSourceSyncId": "

The identifier of the data source sync during which the documents were added.

", + "DataSourceSyncJob$executionId": "

The identifier of a data source synchronization job.

", + "StartDataSourceSyncJobResponse$executionId": "

The identifier for a particular synchronization job.

" + } + }, + "FailedDocument": { + "base": "

A list of documents that could not be removed from an Amazon Q index. Each entry contains an error message that indicates why the document couldn't be removed from the index.

", + "refs": { + "FailedDocuments$member": null + } + }, + "FailedDocuments": { + "base": null, + "refs": { + "BatchDeleteDocumentResponse$failedDocuments": "

A list of documents that couldn't be removed from the Amazon Q index. Each entry contains an error message that indicates why the document couldn't be removed from the index.

", + "BatchPutDocumentResponse$failedDocuments": "

A list of documents that were not added to the Amazon Q index because the document failed a validation check. Each document contains an error message that indicates why the document couldn't be added to the index.

" + } + }, + "GetApplicationRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationResponse": { + "base": null, + "refs": { + } + }, + "GetChatControlsConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetChatControlsConfigurationResponse": { + "base": null, + "refs": { + } + }, + "GetDataSourceRequest": { + "base": null, + "refs": { + } + }, + "GetDataSourceResponse": { + "base": null, + "refs": { + } + }, + "GetGroupRequest": { + "base": null, + "refs": { + } + }, + "GetGroupResponse": { + "base": null, + "refs": { + } + }, + "GetIndexRequest": { + "base": null, + "refs": { + } + }, + "GetIndexResponse": { + "base": null, + "refs": { + } + }, + "GetPluginRequest": { + "base": null, + "refs": { + } + }, + "GetPluginResponse": { + "base": null, + "refs": { + } + }, + "GetRetrieverRequest": { + "base": null, + "refs": { + } + }, + "GetRetrieverResponse": { + "base": null, + "refs": { + } + }, + "GetUserRequest": { + "base": null, + "refs": { + } + }, + "GetUserResponse": { + "base": null, + "refs": { + } + }, + "GetWebExperienceRequest": { + "base": null, + "refs": { + } + }, + "GetWebExperienceResponse": { + "base": null, + "refs": { + } + }, + "GroupMembers": { + "base": "

A list of users or sub groups that belong to a group. This is for generating Amazon Q chat results only from document a user has access to.

", + "refs": { + "PutGroupRequest$groupMembers": null + } + }, + "GroupName": { + "base": null, + "refs": { + "DeleteGroupRequest$groupName": "

The name of the group you want to delete.

", + "GetGroupRequest$groupName": "

The name of the group.

", + "GroupSummary$groupName": "

The name of the group the summary information is for.

", + "MemberGroup$groupName": "

The name of the sub group.

", + "PrincipalGroup$name": "

The name of the group.

", + "PutGroupRequest$groupName": "

The list that contains your users or sub groups that belong the same group. For example, the group \"Company\" includes the user \"CEO\" and the sub groups \"Research\", \"Engineering\", and \"Sales and Marketing\".

If you have more than 1000 users and/or sub groups for a single group, you need to provide the path to the S3 file that lists your users and sub groups for a group. Your sub groups can contain more than 1000 users, but the list of sub groups that belong to a group (and/or users) must be no more than 1000.

" + } + }, + "GroupStatus": { + "base": null, + "refs": { + "GroupStatusDetail$status": "

The status of a group.

" + } + }, + "GroupStatusDetail": { + "base": "

Provides the details of a group's status.

", + "refs": { + "GetGroupResponse$status": "

The current status of the group.

", + "GroupStatusDetails$member": null + } + }, + "GroupStatusDetails": { + "base": null, + "refs": { + "GetGroupResponse$statusHistory": "

The status history of the group.

" + } + }, + "GroupSummary": { + "base": "

Summary information for groups.

", + "refs": { + "GroupSummaryList$member": null + } + }, + "GroupSummaryList": { + "base": null, + "refs": { + "ListGroupsResponse$items": "

Summary information for list of groups that are mapped to users.

" + } + }, + "HookConfiguration": { + "base": "

Provides the configuration information for invoking a Lambda function in Lambda to alter document metadata and content when ingesting documents into Amazon Q.

You can configure your Lambda function using PreExtractionHookConfiguration if you want to apply advanced alterations on the original or raw documents.

If you want to apply advanced alterations on the Amazon Q structured documents, you must configure your Lambda function using PostExtractionHookConfiguration.

You can only invoke one Lambda function. However, this function can invoke other functions it requires.

For more information, see Custom document enrichment.

", + "refs": { + "DocumentEnrichmentConfiguration$postExtractionHookConfiguration": null, + "DocumentEnrichmentConfiguration$preExtractionHookConfiguration": null + } + }, + "Index": { + "base": "

Summary information for your Amazon Q index.

", + "refs": { + "Indices$member": null + } + }, + "IndexArn": { + "base": null, + "refs": { + "CreateIndexResponse$indexArn": "

The Amazon Resource Name (ARN) of an Amazon Q index.

", + "GetIndexResponse$indexArn": "

The Amazon Resource Name (ARN) of the Amazon Q index.

" + } + }, + "IndexCapacityConfiguration": { + "base": "

Provides information about index capacity configuration.

", + "refs": { + "CreateIndexRequest$capacityConfiguration": "

The capacity units you want to provision for your index. You can add and remove capacity to fit your usage needs.

", + "GetIndexResponse$capacityConfiguration": "

The storage capacity units chosen for your Amazon Q index.

", + "UpdateIndexRequest$capacityConfiguration": "

The storage capacity units you want to provision for your Amazon Q index. You can add and remove capacity to fit your usage needs.

" + } + }, + "IndexCapacityInteger": { + "base": null, + "refs": { + "IndexCapacityConfiguration$units": "

The number of storage units configured for an Amazon Q index.

" + } + }, + "IndexId": { + "base": null, + "refs": { + "BatchDeleteDocumentRequest$indexId": "

The identifier of the Amazon Q index that contains the documents to delete.

", + "BatchPutDocumentRequest$indexId": "

The identifier of the Amazon Q index to add the documents to.

", + "CreateDataSourceRequest$indexId": "

The identifier of the index that you want to use with the data source connector.

", + "CreateIndexResponse$indexId": "

The identifier for the Amazon Q index.

", + "DeleteDataSourceRequest$indexId": "

The identifier of the index used with the data source connector.

", + "DeleteGroupRequest$indexId": "

The identifier of the index you want to delete the group from.

", + "DeleteIndexRequest$indexId": "

The identifier of the Amazon Q index.

", + "EligibleDataSource$indexId": "

The identifier of the index the data source is attached to.

", + "GetDataSourceRequest$indexId": "

The identfier of the index used with the data source connector.

", + "GetDataSourceResponse$indexId": "

The identifier of the index linked to the data source connector.

", + "GetGroupRequest$indexId": "

The identifier of the index the group is attached to.

", + "GetIndexRequest$indexId": "

The identifier of the Amazon Q index you want information on.

", + "GetIndexResponse$indexId": "

The identifier of the Amazon Q index.

", + "Index$indexId": "

The identifier for the index.

", + "ListDataSourceSyncJobsRequest$indexId": "

The identifier of the index used with the Amazon Q data source connector.

", + "ListDataSourcesRequest$indexId": "

The identifier of the index used with one or more data source connectors.

", + "ListDocumentsRequest$indexId": "

The identifier of the index the documents are attached to.

", + "ListGroupsRequest$indexId": "

The identifier of the index for getting a list of groups mapped to users.

", + "NativeIndexConfiguration$indexId": "

The identifier for the Amazon Q index.

", + "PutGroupRequest$indexId": "

The identifier of the index in which you want to map users to their groups.

", + "StartDataSourceSyncJobRequest$indexId": "

The identifier of the index used with the data source connector.

", + "StopDataSourceSyncJobRequest$indexId": "

The identifier of the index used with the Amazon Q data source connector.

", + "UpdateDataSourceRequest$indexId": "

The identifier of the index attached to the data source connector.

", + "UpdateIndexRequest$indexId": "

The identifier of the Amazon Q index.

", + "UserAlias$indexId": "

The identifier of the index that the user aliases are associated with.

" + } + }, + "IndexName": { + "base": null, + "refs": { + "CreateIndexRequest$displayName": "

A name for the Amazon Q index.

", + "GetIndexResponse$displayName": "

The name of the Amazon Q index.

", + "Index$displayName": "

The name of the index.

" + } + }, + "IndexStatistics": { + "base": "

Provides information about the number of documents in an index.

", + "refs": { + "GetIndexResponse$indexStatistics": "

Provides information about the number of documents indexed.

" + } + }, + "IndexStatus": { + "base": null, + "refs": { + "GetIndexResponse$status": "

The current status of the index. When the value is ACTIVE, the index is ready for use. If the Status field value is FAILED, the ErrorMessage field contains a message that explains why.

", + "Index$status": "

The current status of the index. When the status is ACTIVE, the index is ready.

" + } + }, + "IndexedTextBytes": { + "base": null, + "refs": { + "TextDocumentStatistics$indexedTextBytes": "

The total size, in bytes, of the indexed documents.

" + } + }, + "IndexedTextDocument": { + "base": null, + "refs": { + "TextDocumentStatistics$indexedTextDocumentCount": "

The number of text documents indexed.

" + } + }, + "Indices": { + "base": null, + "refs": { + "ListIndicesResponse$indices": "

An array of information on the items in one or more indexes.

" + } + }, + "InlineDocumentEnrichmentConfiguration": { + "base": "

Provides the configuration information for applying basic logic to alter document metadata and content when ingesting documents into Amazon Q.

To apply advanced logic, to go beyond what you can do with basic logic, see HookConfiguration .

For more information, see Custom document enrichment.

", + "refs": { + "InlineDocumentEnrichmentConfigurations$member": null + } + }, + "InlineDocumentEnrichmentConfigurations": { + "base": null, + "refs": { + "DocumentEnrichmentConfiguration$inlineConfigurations": "

Configuration information to alter document attributes or metadata fields and content when ingesting documents into Amazon Q.

" + } + }, + "Integer": { + "base": null, + "refs": { + "ActionReviewPayloadField$displayOrder": "

The display order of fields in a payload.

", + "SourceAttribution$citationNumber": "

The number attached to a citation in an Amazon Q generated response.

", + "TextSegment$beginOffset": "

The zero-based location in the response string where the source attribution starts.

", + "TextSegment$endOffset": "

The zero-based location in the response string where the source attribution ends.

" + } + }, + "InternalServerException": { + "base": "

An issue occurred with the internal server used for your Amazon Q service. Wait some minutes and try again, or contact Support for help.

", + "refs": { + } + }, + "KendraIndexConfiguration": { + "base": "

Stores an Amazon Kendra index as a retriever.

", + "refs": { + "RetrieverConfiguration$kendraIndexConfiguration": "

Provides information on how the Amazon Kendra index used as a retriever for your Amazon Q application is configured.

" + } + }, + "KendraIndexId": { + "base": null, + "refs": { + "KendraIndexConfiguration$indexId": "

The identifier of the Amazon Kendra index.

" + } + }, + "KmsKeyId": { + "base": null, + "refs": { + "EncryptionConfiguration$kmsKeyId": "

The identifier of the KMS key. Amazon Q doesn't support asymmetric keys.

" + } + }, + "LambdaArn": { + "base": null, + "refs": { + "HookConfiguration$lambdaArn": "

The Amazon Resource Name (ARN) of a role with permission to run a Lambda function during ingestion. For more information, see IAM roles for Custom Document Enrichment (CDE).

" + } + }, + "LicenseNotFoundException": { + "base": "

You don't have permissions to perform the action because your license is inactive. Ask your admin to activate your license and try again after your licence is active.

", + "refs": { + } + }, + "ListApplicationsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationsResponse": { + "base": null, + "refs": { + } + }, + "ListConversationsRequest": { + "base": null, + "refs": { + } + }, + "ListConversationsResponse": { + "base": null, + "refs": { + } + }, + "ListDataSourceSyncJobsRequest": { + "base": null, + "refs": { + } + }, + "ListDataSourceSyncJobsResponse": { + "base": null, + "refs": { + } + }, + "ListDataSourcesRequest": { + "base": null, + "refs": { + } + }, + "ListDataSourcesResponse": { + "base": null, + "refs": { + } + }, + "ListDocumentsRequest": { + "base": null, + "refs": { + } + }, + "ListDocumentsResponse": { + "base": null, + "refs": { + } + }, + "ListGroupsRequest": { + "base": null, + "refs": { + } + }, + "ListGroupsResponse": { + "base": null, + "refs": { + } + }, + "ListIndicesRequest": { + "base": null, + "refs": { + } + }, + "ListIndicesResponse": { + "base": null, + "refs": { + } + }, + "ListMessagesRequest": { + "base": null, + "refs": { + } + }, + "ListMessagesResponse": { + "base": null, + "refs": { + } + }, + "ListPluginsRequest": { + "base": null, + "refs": { + } + }, + "ListPluginsResponse": { + "base": null, + "refs": { + } + }, + "ListRetrieversRequest": { + "base": null, + "refs": { + } + }, + "ListRetrieversResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ListWebExperiencesRequest": { + "base": null, + "refs": { + } + }, + "ListWebExperiencesResponse": { + "base": null, + "refs": { + } + }, + "Long": { + "base": null, + "refs": { + "DocumentAttributeValue$longValue": "

A long integer value.

" + } + }, + "MaxResultsIntegerForGetTopicConfigurations": { + "base": null, + "refs": { + "GetChatControlsConfigurationRequest$maxResults": "

The maximum number of configured chat controls to return.

" + } + }, + "MaxResultsIntegerForListApplications": { + "base": null, + "refs": { + "ListApplicationsRequest$maxResults": "

The maximum number of Amazon Q applications to return.

" + } + }, + "MaxResultsIntegerForListConversations": { + "base": null, + "refs": { + "ListConversationsRequest$maxResults": "

The maximum number of Amazon Q conversations to return.

" + } + }, + "MaxResultsIntegerForListDataSources": { + "base": null, + "refs": { + "ListDataSourcesRequest$maxResults": "

The maximum number of data source connectors to return.

" + } + }, + "MaxResultsIntegerForListDataSourcesSyncJobs": { + "base": null, + "refs": { + "ListDataSourceSyncJobsRequest$maxResults": "

The maximum number of synchronization jobs to return in the response.

" + } + }, + "MaxResultsIntegerForListDocuments": { + "base": null, + "refs": { + "ListDocumentsRequest$maxResults": "

The maximum number of documents to return.

" + } + }, + "MaxResultsIntegerForListGroupsRequest": { + "base": null, + "refs": { + "ListGroupsRequest$maxResults": "

The maximum number of returned groups that are mapped to users.

" + } + }, + "MaxResultsIntegerForListIndices": { + "base": null, + "refs": { + "ListIndicesRequest$maxResults": "

The maximum number of indices to return.

" + } + }, + "MaxResultsIntegerForListMessages": { + "base": null, + "refs": { + "ListMessagesRequest$maxResults": "

The maximum number of messages to return.

" + } + }, + "MaxResultsIntegerForListPlugins": { + "base": null, + "refs": { + "ListPluginsRequest$maxResults": "

The maximum number of documents to return.

" + } + }, + "MaxResultsIntegerForListRetrieversRequest": { + "base": null, + "refs": { + "ListRetrieversRequest$maxResults": "

The maximum number of retrievers returned.

" + } + }, + "MaxResultsIntegerForListWebExperiencesRequest": { + "base": null, + "refs": { + "ListWebExperiencesRequest$maxResults": "

The maximum number of Amazon Q Web Experiences to return.

" + } + }, + "MemberGroup": { + "base": "

The sub groups that belong to a group.

", + "refs": { + "MemberGroups$member": null + } + }, + "MemberGroups": { + "base": null, + "refs": { + "GroupMembers$memberGroups": "

A list of sub groups that belong to a group. For example, the sub groups \"Research\", \"Engineering\", and \"Sales and Marketing\" all belong to the group \"Company\".

" + } + }, + "MemberRelation": { + "base": null, + "refs": { + "AccessConfiguration$memberRelation": "

Describes the member relation within the AccessControlList object.

", + "AccessControl$memberRelation": "

Describes the member relation within a principal list.

" + } + }, + "MemberUser": { + "base": "

The users that belong to a group.

", + "refs": { + "MemberUsers$member": null + } + }, + "MemberUsers": { + "base": null, + "refs": { + "GroupMembers$memberUsers": "

A list of users that belong to a group. For example, a list of interns all belong to the \"Interns\" group.

" + } + }, + "MembershipType": { + "base": null, + "refs": { + "MemberGroup$type": "

The type of the sub group.

", + "MemberUser$type": "

The type of the user.

", + "PrincipalGroup$membershipType": "

The type of group.

", + "PrincipalUser$membershipType": "

The type of group.

", + "PutGroupRequest$type": "

The type of the group.

" + } + }, + "Message": { + "base": "

A message in an Amazon Q web experience.

", + "refs": { + "Messages$member": null + } + }, + "MessageBody": { + "base": null, + "refs": { + "Message$body": "

The content of the Amazon Q web experience message.

" + } + }, + "MessageId": { + "base": null, + "refs": { + "ChatSyncInput$parentMessageId": "

The identifier of the previous end user text input message in a conversation.

", + "ChatSyncOutput$systemMessageId": "

The identifier of an Amazon Q AI generated message within the conversation.

", + "ChatSyncOutput$userMessageId": "

The identifier of an Amazon Q end user text input message within the conversation.

" + } + }, + "MessageType": { + "base": null, + "refs": { + "Message$type": "

The type of Amazon Q message, whether HUMAN or AI generated.

" + } + }, + "MessageUsefulness": { + "base": null, + "refs": { + "MessageUsefulnessFeedback$usefulness": "

The usefulness value assigned by an end user to a message.

" + } + }, + "MessageUsefulnessComment": { + "base": null, + "refs": { + "MessageUsefulnessFeedback$comment": "

A comment given by an end user on the usefulness of an AI-generated chat message.

" + } + }, + "MessageUsefulnessFeedback": { + "base": "

End user feedback on an AI-generated web experience chat message usefulness.

", + "refs": { + "PutFeedbackRequest$messageUsefulness": "

The feedback usefulness value given by the user to the chat message.

" + } + }, + "MessageUsefulnessReason": { + "base": null, + "refs": { + "MessageUsefulnessFeedback$reason": "

The reason for a usefulness rating.

" + } + }, + "Messages": { + "base": null, + "refs": { + "ListMessagesResponse$messages": "

An array of information on one or more messages.

" + } + }, + "MetricValue": { + "base": null, + "refs": { + "DataSourceSyncJobMetrics$documentsAdded": "

The current count of documents added from the data source during the data source sync.

", + "DataSourceSyncJobMetrics$documentsDeleted": "

The current count of documents deleted from the data source during the data source sync.

", + "DataSourceSyncJobMetrics$documentsFailed": "

The current count of documents that failed to sync from the data source during the data source sync.

", + "DataSourceSyncJobMetrics$documentsModified": "

The current count of documents modified in the data source during the data source sync.

", + "DataSourceSyncJobMetrics$documentsScanned": "

The current count of documents crawled by the ongoing sync job in the data source.

" + } + }, + "NativeIndexConfiguration": { + "base": "

Configuration information for an Amazon Q index.

", + "refs": { + "RetrieverConfiguration$nativeIndexConfiguration": "

Provides information on how a Amazon Q index used as a retriever for your Amazon Q application is configured.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "GetChatControlsConfigurationRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q chat controls configured.

", + "GetChatControlsConfigurationResponse$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q chat controls configured.

", + "ListApplicationsRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q applications.

", + "ListApplicationsResponse$nextToken": "

If the response is truncated, Amazon Q returns this token. You can use this token in a subsequent request to retrieve the next set of applications.

", + "ListConversationsRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q conversations.

", + "ListConversationsResponse$nextToken": "

If the response is truncated, Amazon Q returns this token, which you can use in a later request to list the next set of messages.

", + "ListDataSourceSyncJobsRequest$nextToken": "

If the maxResults response was incpmplete because there is more data to retriever, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of responses.

", + "ListDataSourceSyncJobsResponse$nextToken": "

If the response is truncated, Amazon Q returns this token. You can use this token in any subsequent request to retrieve the next set of jobs.

", + "ListDataSourcesRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q data source connectors.

", + "ListDataSourcesResponse$nextToken": "

If the response is truncated, Amazon Q returns this token. You can use this token in a subsequent request to retrieve the next set of data source connectors.

", + "ListDocumentsRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of documents.

", + "ListDocumentsResponse$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of documents.

", + "ListGroupsRequest$nextToken": "

If the previous response was incomplete (because there is more data to retrieve), Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of groups that are mapped to users.

", + "ListGroupsResponse$nextToken": "

If the response is truncated, Amazon Q returns this token that you can use in the subsequent request to retrieve the next set of groups that are mapped to users.

", + "ListIndicesRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q indices.

", + "ListIndicesResponse$nextToken": "

If the response is truncated, Amazon Q returns this token that you can use in the subsequent request to retrieve the next set of indexes.

", + "ListMessagesRequest$nextToken": "

If the number of retrievers returned exceeds maxResults, Amazon Q returns a next token as a pagination token to retrieve the next set of messages.

", + "ListMessagesResponse$nextToken": "

If the response is truncated, Amazon Q returns this token, which you can use in a later request to list the next set of messages.

", + "ListPluginsRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of plugins.

", + "ListPluginsResponse$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of plugins.

", + "ListRetrieversRequest$nextToken": "

If the number of retrievers returned exceeds maxResults, Amazon Q returns a next token as a pagination token to retrieve the next set of retrievers.

", + "ListRetrieversResponse$nextToken": "

If the response is truncated, Amazon Q returns this token, which you can use in a later request to list the next set of retrievers.

", + "ListWebExperiencesRequest$nextToken": "

If the maxResults response was incomplete because there is more data to retrieve, Amazon Q returns a pagination token in the response. You can use this pagination token to retrieve the next set of Amazon Q conversations.

", + "ListWebExperiencesResponse$nextToken": "

If the response is truncated, Amazon Q returns this token, which you can use in a later request to list the next set of messages.

" + } + }, + "OAuth2ClientCredentialConfiguration": { + "base": "

Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

", + "refs": { + "PluginAuthConfiguration$oAuth2ClientCredentialConfiguration": "

Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

" + } + }, + "Plugin": { + "base": "

Information about an Amazon Q plugin and its configuration.

", + "refs": { + "Plugins$member": null + } + }, + "PluginArn": { + "base": null, + "refs": { + "CreatePluginResponse$pluginArn": "

The Amazon Resource Name (ARN) of a plugin.

", + "GetPluginResponse$pluginArn": "

The Amazon Resource Name (ARN) of the role with permission to access resources needed to create the plugin.

" + } + }, + "PluginAuthConfiguration": { + "base": "

Authentication configuration information for an Amazon Q plugin.

", + "refs": { + "CreatePluginRequest$authConfiguration": null, + "GetPluginResponse$authConfiguration": null, + "UpdatePluginRequest$authConfiguration": "

The authentication configuration the plugin is using.

" + } + }, + "PluginId": { + "base": null, + "refs": { + "ActionExecution$pluginId": "

The identifier of the plugin the action is attached to.

", + "ActionReview$pluginId": "

The identifier of the plugin associated with the action review.

", + "CreatePluginResponse$pluginId": "

The identifier of the plugin created.

", + "DeletePluginRequest$pluginId": "

The identifier of the plugin being deleted.

", + "GetPluginRequest$pluginId": "

The identifier of the plugin.

", + "GetPluginResponse$pluginId": "

The identifier of the plugin.

", + "Plugin$pluginId": "

The identifier of the plugin.

", + "UpdatePluginRequest$pluginId": "

The identifier of the plugin.

" + } + }, + "PluginName": { + "base": null, + "refs": { + "CreatePluginRequest$displayName": "

A the name for your plugin.

", + "GetPluginResponse$displayName": "

The name of the plugin.

", + "Plugin$displayName": "

The name of the plugin.

", + "UpdatePluginRequest$displayName": "

The name of the plugin.

" + } + }, + "PluginState": { + "base": null, + "refs": { + "GetPluginResponse$state": "

The current state of the plugin.

", + "Plugin$state": "

The current status of the plugin.

", + "UpdatePluginRequest$state": "

The status of the plugin.

" + } + }, + "PluginType": { + "base": null, + "refs": { + "ActionReview$pluginType": "

The type of plugin.

", + "CreatePluginRequest$type": "

The type of plugin you want to create.

", + "GetPluginResponse$type": "

The type of the plugin.

", + "Plugin$type": "

The type of the plugin.

" + } + }, + "Plugins": { + "base": null, + "refs": { + "ListPluginsResponse$plugins": "

Information about a configured plugin.

" + } + }, + "Principal": { + "base": "

Provides user and group information used for filtering documents to use for generating Amazon Q conversation responses.

", + "refs": { + "Principals$member": null + } + }, + "PrincipalGroup": { + "base": "

Provides information about a group associated with the principal.

", + "refs": { + "Principal$group": "

The group associated with the principal.

" + } + }, + "PrincipalUser": { + "base": "

Provides information about a user associated with a principal.

", + "refs": { + "Principal$user": "

The user associated with the principal.

" + } + }, + "Principals": { + "base": null, + "refs": { + "AccessControl$principals": "

Contains a list of principals, where a principal can be either a USER or a GROUP. Each principal can be have the following type of document access: ALLOW or DENY.

" + } + }, + "PutFeedbackRequest": { + "base": null, + "refs": { + } + }, + "PutGroupRequest": { + "base": null, + "refs": { + } + }, + "PutGroupResponse": { + "base": null, + "refs": { + } + }, + "ReadAccessType": { + "base": null, + "refs": { + "PrincipalGroup$access": "

Provides information about whether to allow or deny access to the principal.

", + "PrincipalUser$access": "

Provides information about whether to allow or deny access to the principal.

" + } + }, + "ResourceNotFoundException": { + "base": "

The resource you want to use doesn’t exist. Make sure you have provided the correct resource and try again.

", + "refs": { + } + }, + "ResponseScope": { + "base": null, + "refs": { + "GetChatControlsConfigurationResponse$responseScope": "

The response scope configured for a Amazon Q application. This determines whether your application uses its retrieval augmented generation (RAG) system to generate answers only from your enterprise data, or also uses the large language models (LLM) knowledge to respons to end user questions in chat.

", + "UpdateChatControlsConfigurationRequest$responseScope": "

The response scope configured for your application. This determines whether your application uses its retrieval augmented generation (RAG) system to generate answers only from your enterprise data, or also uses the large language models (LLM) knowledge to respons to end user questions in chat.

" + } + }, + "Retriever": { + "base": "

Summary information for the retriever used for your Amazon Q application.

", + "refs": { + "Retrievers$member": null + } + }, + "RetrieverArn": { + "base": null, + "refs": { + "CreateRetrieverResponse$retrieverArn": "

The Amazon Resource Name (ARN) of an IAM role associated with a retriever.

", + "GetRetrieverResponse$retrieverArn": "

The Amazon Resource Name (ARN) of the IAM role associated with the retriever.

" + } + }, + "RetrieverConfiguration": { + "base": "

Provides information on how the retriever used for your Amazon Q application is configured.

", + "refs": { + "CreateRetrieverRequest$configuration": null, + "GetRetrieverResponse$configuration": null, + "UpdateRetrieverRequest$configuration": null + } + }, + "RetrieverId": { + "base": null, + "refs": { + "CreateRetrieverResponse$retrieverId": "

The identifier of the retriever you are using.

", + "DeleteRetrieverRequest$retrieverId": "

The identifier of the retriever being deleted.

", + "GetRetrieverRequest$retrieverId": "

The identifier of the retriever.

", + "GetRetrieverResponse$retrieverId": "

The identifier of the retriever.

", + "Retriever$retrieverId": "

The identifier of the retriever used by your Amazon Q application.

", + "UpdateRetrieverRequest$retrieverId": "

The identifier of your retriever.

" + } + }, + "RetrieverName": { + "base": null, + "refs": { + "CreateRetrieverRequest$displayName": "

The name of your retriever.

", + "GetRetrieverResponse$displayName": "

The name of the retriever.

", + "Retriever$displayName": "

The name of your retriever.

", + "UpdateRetrieverRequest$displayName": "

The name of your retriever.

" + } + }, + "RetrieverStatus": { + "base": null, + "refs": { + "GetRetrieverResponse$status": "

The status of the retriever.

", + "Retriever$status": "

The status of your retriever.

" + } + }, + "RetrieverType": { + "base": null, + "refs": { + "CreateRetrieverRequest$type": "

The type of retriever you are using.

", + "GetRetrieverResponse$type": "

The type of the retriever.

", + "Retriever$type": "

The type of your retriever.

" + } + }, + "Retrievers": { + "base": null, + "refs": { + "ListRetrieversResponse$retrievers": "

An array of summary information for one or more retrievers.

" + } + }, + "RoleArn": { + "base": null, + "refs": { + "BasicAuthConfiguration$roleArn": "

The ARN of an IAM role used by Amazon Q to access the basic authentication credentials stored in a Secrets Manager secret.

", + "BatchPutDocumentRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access your S3 bucket.

", + "CreateApplicationRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics.

", + "CreateDataSourceRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.

", + "CreateRetrieverRequest$roleArn": "

The ARN of an IAM role used by Amazon Q to access the basic authentication credentials stored in a Secrets Manager secret.

", + "GetApplicationResponse$roleArn": "

The Amazon Resource Name (ARN) of the IAM with permissions to access your CloudWatch logs and metrics.

", + "GetDataSourceResponse$roleArn": "

The Amazon Resource Name (ARN) of the role with permission to access the data source and required resources.

", + "GetRetrieverResponse$roleArn": "

The Amazon Resource Name (ARN) of the role with the permission to access the retriever and required resources.

", + "HookConfiguration$roleArn": "

The Amazon Resource Name (ARN) of a role with permission to run PreExtractionHookConfiguration and PostExtractionHookConfiguration for altering document metadata and content during the document ingestion process.

", + "OAuth2ClientCredentialConfiguration$roleArn": "

The ARN of an IAM role used by Amazon Q to access the OAuth 2.0 authentication credentials stored in a Secrets Manager secret.

", + "SamlConfiguration$roleArn": "

The Amazon Resource Name (ARN) of an IAM role assumed by users when they authenticate into their Amazon Q web experience, containing the relevant Amazon Q permissions for conversing with Amazon Q.

", + "UpdateApplicationRequest$roleArn": "

An Amazon Web Services Identity and Access Management (IAM) role that gives Amazon Q permission to access Amazon CloudWatch logs and metrics.

", + "UpdateDataSourceRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.

", + "UpdateRetrieverRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role with permission to access the retriever and required resources.

" + } + }, + "Rule": { + "base": "

Guardrail rules for an Amazon Q application. Amazon Q supports only one rule at a time.

", + "refs": { + "Rules$member": null + } + }, + "RuleConfiguration": { + "base": "

Provides configuration information about a rule.

", + "refs": { + "Rule$ruleConfiguration": "

The configuration information for a rule.

" + } + }, + "RuleType": { + "base": null, + "refs": { + "Rule$ruleType": "

The type fo rule.

" + } + }, + "Rules": { + "base": null, + "refs": { + "TopicConfiguration$rules": "

Rules defined for a topic configuration.

" + } + }, + "S3": { + "base": "

Information required for Amazon Q to find a specific file in an Amazon S3 bucket.

", + "refs": { + "DocumentContent$s3": "

The path to the document in an Amazon S3 bucket.

" + } + }, + "S3BucketName": { + "base": null, + "refs": { + "HookConfiguration$s3BucketName": "

Stores the original, raw documents or the structured, parsed documents before and after altering them. For more information, see Data contracts for Lambda functions.

", + "S3$bucket": "

The name of the S3 bucket that contains the file.

" + } + }, + "S3ObjectKey": { + "base": null, + "refs": { + "S3$key": "

The name of the file.

" + } + }, + "SamlAttribute": { + "base": null, + "refs": { + "SamlConfiguration$userGroupAttribute": "

The group attribute name in your IdP that maps to user groups.

", + "SamlConfiguration$userIdAttribute": "

The user attribute name in your IdP that maps to the user email.

" + } + }, + "SamlConfiguration": { + "base": "

Provides the SAML 2.0 compliant identity provider (IdP) configuration information Amazon Q needs to deploy a Amazon Q web experience.

", + "refs": { + "WebExperienceAuthConfiguration$samlConfiguration": null + } + }, + "SamlMetadataXML": { + "base": null, + "refs": { + "SamlConfiguration$metadataXML": "

The metadata XML that your IdP generated.

" + } + }, + "SecretArn": { + "base": null, + "refs": { + "BasicAuthConfiguration$secretArn": "

The ARN of the Secrets Manager secret that stores the basic authentication credentials used for plugin configuration..

", + "OAuth2ClientCredentialConfiguration$secretArn": "

The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token used for plugin configuration.

" + } + }, + "SecurityGroupId": { + "base": null, + "refs": { + "SecurityGroupIds$member": null + } + }, + "SecurityGroupIds": { + "base": null, + "refs": { + "DataSourceVpcConfiguration$securityGroupIds": "

A list of identifiers of security groups within your Amazon VPC. The security groups should enable Amazon Q to connect to the data source.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

You have exceeded the set limits for your Amazon Q service.

", + "refs": { + } + }, + "SourceAttribution": { + "base": "

The documents used to generate an Amazon Q web experience response.

", + "refs": { + "SourceAttributions$member": null + } + }, + "SourceAttributions": { + "base": null, + "refs": { + "ChatSyncOutput$sourceAttributions": "

The source documents used to generate the conversation response.

", + "Message$sourceAttribution": "

The source documents used to generate Amazon Q web experience message.

" + } + }, + "StartDataSourceSyncJobRequest": { + "base": null, + "refs": { + } + }, + "StartDataSourceSyncJobResponse": { + "base": null, + "refs": { + } + }, + "Status": { + "base": null, + "refs": { + "DocumentAttributeConfiguration$search": "

Information about whether the document attribute can be used by an end user to search for information on their web experience.

" + } + }, + "StopDataSourceSyncJobRequest": { + "base": null, + "refs": { + } + }, + "StopDataSourceSyncJobResponse": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "ActionReviewPayloadField$displayName": "

The name of the field.

", + "ChatSyncOutput$systemMessage": "

An AI-generated message in a conversation.

", + "ConflictException$resourceId": "

The identifier of the resource affected.

", + "ConflictException$resourceType": "

The type of the resource affected.

", + "CreateUserRequest$userId": "

The user emails attached to a user mapping.

", + "DataSource$type": "

The type of the Amazon Q data source.

", + "DataSourceSyncJob$dataSourceErrorCode": "

If the reason that the synchronization failed is due to an error with the underlying data source, this field contains a code that identifies the error.

", + "DeleteUserRequest$userId": "

The user email being deleted.

", + "DocumentAttributeConfiguration$name": "

The name of the document attribute.

", + "DocumentAttributeStringListValue$member": null, + "GetDataSourceResponse$type": "

The type of the data source connector. For example, S3.

", + "GetUserRequest$userId": "

The user email address attached to the user.

", + "Message$messageId": "

The identifier of the Amazon Q web experience message.

", + "ResourceNotFoundException$resourceId": "

The identifier of the resource affected.

", + "ResourceNotFoundException$resourceType": "

The type of the resource affected.

", + "ServiceQuotaExceededException$resourceId": "

The identifier of the resource affected.

", + "ServiceQuotaExceededException$resourceType": "

The type of the resource affected.

", + "SourceAttribution$snippet": "

The content extract from the document on which the generated response is based.

", + "SourceAttribution$title": "

The title of the document which is the source for the Amazon Q generated response.

", + "SourceAttribution$url": "

The URL of the document which is the source for the Amazon Q generated response.

", + "UpdateUserRequest$userId": "

The email id attached to the user.

", + "UserAlias$userId": "

The identifier of the user id associated with the user aliases.

", + "UserGroups$member": null, + "UserIds$member": null, + "ValidationExceptionField$message": "

A message about the validation exception.

", + "ValidationExceptionField$name": "

The field name where the invalid entry was detected.

" + } + }, + "SubnetId": { + "base": null, + "refs": { + "SubnetIds$member": null + } + }, + "SubnetIds": { + "base": null, + "refs": { + "DataSourceVpcConfiguration$subnetIds": "

A list of identifiers for subnets within your Amazon VPC. The subnets should be able to connect to each other in the VPC, and they should have outgoing access to the Internet through a NAT device.

" + } + }, + "SyncSchedule": { + "base": null, + "refs": { + "CreateDataSourceRequest$syncSchedule": "

Sets the frequency for Amazon Q to check the documents in your data source repository and update your index. If you don't set a schedule, Amazon Q won't periodically update the index.

Specify a cron- format schedule string or an empty string to indicate that the index is updated on demand. You can't specify the Schedule parameter when the Type parameter is set to CUSTOM. If you do, you receive a ValidationException exception.

", + "GetDataSourceResponse$syncSchedule": "

The schedule for Amazon Q to update the index.

", + "UpdateDataSourceRequest$syncSchedule": "

The chosen update frequency for your data source.

" + } + }, + "SystemMessageId": { + "base": null, + "refs": { + "PutFeedbackRequest$messageId": "

The identifier of the chat message that the feedback was given for.

" + } + }, + "SystemMessageOverride": { + "base": null, + "refs": { + "BlockedPhrasesConfiguration$systemMessageOverride": "

The configured custom message displayed to an end user informing them that they've used a blocked phrase during chat.

", + "BlockedPhrasesConfigurationUpdate$systemMessageOverride": "

The configured custom message displayed to your end user when they use blocked phrase during chat.

", + "ContentBlockerRule$systemMessageOverride": "

The configured custom message displayed to an end user informing them that they've used a blocked phrase during chat.

" + } + }, + "Tag": { + "base": "

A list of key/value pairs that identify an index, FAQ, or data source. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "refs": { + "Tags$member": null + } + }, + "TagKey": { + "base": null, + "refs": { + "Tag$key": "

The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q application or data source.

", + "TagKeys$member": null + } + }, + "TagKeys": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

A list of tag keys to remove from the Amazon Q application or data source. If a tag key does not exist on the resource, it is ignored.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tag$value": "

The value associated with the tag. The value may be an empty string but it can't be null.

" + } + }, + "Tags": { + "base": null, + "refs": { + "CreateApplicationRequest$tags": "

A list of key-value pairs that identify or categorize your Amazon Q application. You can also use tags to help control access to the application. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "CreateDataSourceRequest$tags": "

A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "CreateIndexRequest$tags": "

A list of key-value pairs that identify or categorize the index. You can also use tags to help control access to the index. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "CreatePluginRequest$tags": "

A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "CreateRetrieverRequest$tags": "

A list of key-value pairs that identify or categorize the retriever. You can also use tags to help control access to the retriever. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "CreateWebExperienceRequest$tags": "

A list of key-value pairs that identify or categorize your Amazon Q web experience. You can also use tags to help control access to the web experience. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

", + "ListTagsForResourceResponse$tags": "

A list of tags associated with the Amazon Q application or data source.

", + "TagResourceRequest$tags": "

A list of tag keys to add to the Amazon Q application or data source. If a tag already exists, the existing value is replaced with the new value.

" + } + }, + "TextDocumentStatistics": { + "base": "

Provides information about text documents in an index.

", + "refs": { + "IndexStatistics$textDocumentStatistics": "

The number of documents indexed.

" + } + }, + "TextSegment": { + "base": "

Provides information about a text extract in a chat response that can be attributed to a source document.

", + "refs": { + "TextSegmentList$member": null + } + }, + "TextSegmentList": { + "base": null, + "refs": { + "SourceAttribution$textMessageSegments": "

A text extract from a source document that is used for source attribution.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to throttling. Reduce the number of requests and try again.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "Application$createdAt": "

The Unix timestamp when the Amazon Q application was created.

", + "Application$updatedAt": "

The Unix timestamp when the Amazon Q application was last updated.

", + "Conversation$startTime": "

The start time of the conversation.

", + "DataSource$createdAt": "

The Unix timestamp when the Amazon Q data source was created.

", + "DataSource$updatedAt": "

The Unix timestamp when the Amazon Q data source was last updated.

", + "DataSourceSyncJob$endTime": "

The Unix timestamp when the synchronization job completed.

", + "DataSourceSyncJob$startTime": "

The Unix time stamp when the data source synchronization job started.

", + "DocumentAttributeValue$dateValue": "

A date expressed as an ISO 8601 string.

It's important for the time zone to be included in the ISO 8601 date-time format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

", + "DocumentDetails$createdAt": "

The timestamp for when the document was created.

", + "DocumentDetails$updatedAt": "

The timestamp for when the document was last updated.

", + "GetApplicationResponse$createdAt": "

The Unix timestamp when the Amazon Q application was last updated.

", + "GetApplicationResponse$updatedAt": "

The Unix timestamp when the Amazon Q application was last updated.

", + "GetDataSourceResponse$createdAt": "

The Unix timestamp when the data source connector was created.

", + "GetDataSourceResponse$updatedAt": "

The Unix timestamp when the data source connector was last updated.

", + "GetIndexResponse$createdAt": "

The Unix timestamp when the Amazon Q index was created.

", + "GetIndexResponse$updatedAt": "

The Unix timestamp when the Amazon Q index was last updated.

", + "GetPluginResponse$createdAt": "

The timestamp for when the plugin was created.

", + "GetPluginResponse$updatedAt": "

The timestamp for when the plugin was last updated.

", + "GetRetrieverResponse$createdAt": "

The Unix timestamp when the retriever was created.

", + "GetRetrieverResponse$updatedAt": "

The Unix timestamp when the retriever was last updated.

", + "GetWebExperienceResponse$createdAt": "

The Unix timestamp when the retriever was created.

", + "GetWebExperienceResponse$updatedAt": "

The Unix timestamp when the data source connector was last updated.

", + "GroupStatusDetail$lastUpdatedAt": "

The Unix timestamp when the Amazon Q application was last updated.

", + "Index$createdAt": "

The Unix timestamp when the index was created.

", + "Index$updatedAt": "

The Unix timestamp when the index was last updated.

", + "ListDataSourceSyncJobsRequest$endTime": "

The end time of the data source connector sync.

", + "ListDataSourceSyncJobsRequest$startTime": "

The start time of the data source connector sync.

", + "ListGroupsRequest$updatedEarlierThan": "

The timestamp identifier used for the latest PUT or DELETE action for mapping users to their groups.

", + "Message$time": "

The timestamp of the first Amazon Q web experience message.

", + "MessageUsefulnessFeedback$submittedAt": "

The timestamp for when the feedback was submitted.

", + "Plugin$createdAt": "

The timestamp for when the plugin was created.

", + "Plugin$updatedAt": "

The timestamp for when the plugin was last updated.

", + "PutFeedbackRequest$messageCopiedAt": "

The timestamp for when the feedback was recorded.

", + "SourceAttribution$updatedAt": "

The Unix timestamp when the Amazon Q application was last updated.

", + "WebExperience$createdAt": "

The Unix timestamp when the Amazon Q application was last updated.

", + "WebExperience$updatedAt": "

The Unix timestamp when your Amazon Q web experience was updated.

" + } + }, + "Title": { + "base": null, + "refs": { + "Document$title": "

The title of the document.

" + } + }, + "TopicConfiguration": { + "base": "

The topic specific controls configured for an Amazon Q application.

", + "refs": { + "TopicConfigurations$member": null + } + }, + "TopicConfigurationName": { + "base": null, + "refs": { + "TopicConfiguration$name": "

A name for your topic control configuration.

" + } + }, + "TopicConfigurations": { + "base": null, + "refs": { + "GetChatControlsConfigurationResponse$topicConfigurations": "

The topic specific controls configured for a Amazon Q application.

", + "UpdateChatControlsConfigurationRequest$topicConfigurationsToCreateOrUpdate": "

The configured topic specific chat controls you want to update.

", + "UpdateChatControlsConfigurationRequest$topicConfigurationsToDelete": "

The configured topic specific chat controls you want to delete.

" + } + }, + "TopicDescription": { + "base": null, + "refs": { + "TopicConfiguration$description": "

A description for your topic control configuration. Use this outline how the large language model (LLM) should use this topic control configuration.

" + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateApplicationRequest": { + "base": null, + "refs": { + } + }, + "UpdateApplicationResponse": { + "base": null, + "refs": { + } + }, + "UpdateChatControlsConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateChatControlsConfigurationResponse": { + "base": null, + "refs": { + } + }, + "UpdateDataSourceRequest": { + "base": null, + "refs": { + } + }, + "UpdateDataSourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateIndexRequest": { + "base": null, + "refs": { + } + }, + "UpdateIndexResponse": { + "base": null, + "refs": { + } + }, + "UpdatePluginRequest": { + "base": null, + "refs": { + } + }, + "UpdatePluginResponse": { + "base": null, + "refs": { + } + }, + "UpdateRetrieverRequest": { + "base": null, + "refs": { + } + }, + "UpdateRetrieverResponse": { + "base": null, + "refs": { + } + }, + "UpdateUserRequest": { + "base": null, + "refs": { + } + }, + "UpdateUserResponse": { + "base": null, + "refs": { + } + }, + "UpdateWebExperienceRequest": { + "base": null, + "refs": { + } + }, + "UpdateWebExperienceResponse": { + "base": null, + "refs": { + } + }, + "Url": { + "base": null, + "refs": { + "CreatePluginRequest$serverUrl": "

The source URL used for plugin configuration.

", + "GetPluginResponse$serverUrl": "

The source URL used for plugin configuration.

", + "GetWebExperienceResponse$defaultEndpoint": "

The endpoint of your Amazon Q web experience.

", + "Plugin$serverUrl": "

The plugin server URL used for configuration.

", + "UpdatePluginRequest$serverUrl": "

The source URL used for plugin configuration.

", + "WebExperience$defaultEndpoint": "

The endpoint URLs for your Amazon Q web experience. The URLs are unique and fully hosted by Amazon Web Services.

" + } + }, + "UserAlias": { + "base": "

Aliases attached to a user id within an Amazon Q application.

", + "refs": { + "CreateUserRequestUserAliasesList$member": null, + "UserAliases$member": null + } + }, + "UserAliases": { + "base": null, + "refs": { + "GetUserResponse$userAliases": "

A list of user aliases attached to a user.

", + "UpdateUserRequest$userAliasesToDelete": "

The user aliases attached to the user id that are to be deleted.

", + "UpdateUserRequest$userAliasesToUpdate": "

The user aliases attached to the user id that are to be updated.

", + "UpdateUserResponse$userAliasesAdded": "

The user aliases that have been to be added to a user id.

", + "UpdateUserResponse$userAliasesDeleted": "

The user aliases that have been deleted from a user id.

", + "UpdateUserResponse$userAliasesUpdated": "

The user aliases attached to a user id that have been updated.

" + } + }, + "UserGroups": { + "base": null, + "refs": { + "ChatSyncInput$userGroups": "

The groups that a user associated with the chat input belongs to.

", + "UsersAndGroups$userGroups": "

The user groups associated with a topic control rule.

" + } + }, + "UserId": { + "base": null, + "refs": { + "ChatSyncInput$userId": "

The identifier of the user attached to the chat input.

", + "DeleteConversationRequest$userId": "

The identifier of the user who is deleting the conversation.

", + "ListConversationsRequest$userId": "

The identifier of the user involved in the Amazon Q web experience conversation.

", + "ListMessagesRequest$userId": "

The identifier of the user involved in the Amazon Q web experience conversation.

", + "PrincipalUser$id": "

The identifier of the user.

", + "PutFeedbackRequest$userId": "

The identifier of the user giving the feedback.

" + } + }, + "UserIds": { + "base": null, + "refs": { + "UsersAndGroups$userIds": "

The user ids associated with a topic control rule.

" + } + }, + "UserMessage": { + "base": null, + "refs": { + "ChatSyncInput$userMessage": "

A end user message in a conversation.

" + } + }, + "UsersAndGroups": { + "base": "

Provides information about users and groups associated with a topic control rule.

", + "refs": { + "Rule$excludedUsersAndGroups": "

Users and groups to be excluded from a rule.

", + "Rule$includedUsersAndGroups": "

Users and groups to be included in a rule.

" + } + }, + "ValidationException": { + "base": "

The input doesn't meet the constraints set by the Amazon Q service. Provide the correct input and try again.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

The input failed to meet the constraints specified by Amazon Q in a specified field.

", + "refs": { + "ValidationExceptionFields$member": null + } + }, + "ValidationExceptionFields": { + "base": null, + "refs": { + "ValidationException$fields": "

The input field(s) that failed validation.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason for the ValidationException.

" + } + }, + "WebExperience": { + "base": "

Provides information for an Amazon Q web experience.

", + "refs": { + "WebExperiences$member": null + } + }, + "WebExperienceArn": { + "base": null, + "refs": { + "CreateWebExperienceResponse$webExperienceArn": "

The Amazon Resource Name (ARN) of an Amazon Q web experience.

", + "GetWebExperienceResponse$webExperienceArn": "

The Amazon Resource Name (ARN) of the role with the permission to access the Amazon Q web experience and required resources.

" + } + }, + "WebExperienceAuthConfiguration": { + "base": "

Provides the authorization configuration information needed to deploy a Amazon Q web experience to end users.

", + "refs": { + "GetWebExperienceResponse$authenticationConfiguration": "

The authentication configuration information for your Amazon Q web experience.

", + "UpdateWebExperienceRequest$authenticationConfiguration": "

The authentication configuration of the Amazon Q web experience.

" + } + }, + "WebExperienceId": { + "base": null, + "refs": { + "CreateWebExperienceResponse$webExperienceId": "

The identifier of the Amazon Q web experience.

", + "DeleteWebExperienceRequest$webExperienceId": "

The identifier of the Amazon Q web experience being deleted.

", + "GetWebExperienceRequest$webExperienceId": "

The identifier of the Amazon Q web experience.

", + "GetWebExperienceResponse$webExperienceId": "

The identifier of the Amazon Q web experience.

", + "UpdateWebExperienceRequest$webExperienceId": "

The identifier of the Amazon Q web experience.

", + "WebExperience$webExperienceId": "

The identifier of your Amazon Q web experience.

" + } + }, + "WebExperienceSamplePromptsControlMode": { + "base": null, + "refs": { + "CreateWebExperienceRequest$samplePromptsControlMode": "

Determines whether sample prompts are enabled in the web experience for an end user.

", + "GetWebExperienceResponse$samplePromptsControlMode": "

Determines whether sample prompts are enabled in the web experience for an end user.

", + "UpdateWebExperienceRequest$samplePromptsControlMode": "

Determines whether sample prompts are enabled in the web experience for an end user.

" + } + }, + "WebExperienceStatus": { + "base": null, + "refs": { + "GetWebExperienceResponse$status": "

The current status of the Amazon Q web experience. When the Status field value is FAILED, the ErrorMessage field contains a description of the error that caused the data source connector to fail.

", + "WebExperience$status": "

The status of your Amazon Q web experience.

" + } + }, + "WebExperienceSubtitle": { + "base": null, + "refs": { + "CreateWebExperienceRequest$subtitle": "

A subtitle to personalize your Amazon Q web experience.

", + "GetWebExperienceResponse$subtitle": "

The subtitle for your Amazon Q web experience.

", + "UpdateWebExperienceRequest$subtitle": "

The subtitle of the Amazon Q web experience.

" + } + }, + "WebExperienceTitle": { + "base": null, + "refs": { + "CreateWebExperienceRequest$title": "

The title for your Amazon Q web experience.

", + "GetWebExperienceResponse$title": "

The title for your Amazon Q web experience.

", + "UpdateWebExperienceRequest$title": "

The title of the Amazon Q web experience.

" + } + }, + "WebExperienceWelcomeMessage": { + "base": null, + "refs": { + "CreateWebExperienceRequest$welcomeMessage": "

The customized welcome message for end users of an Amazon Q web experience.

", + "GetWebExperienceResponse$welcomeMessage": "

The customized welcome message for end users of an Amazon Q web experience.

", + "UpdateWebExperienceRequest$welcomeMessage": "

A customized welcome message for an end user in an Amazon Q web experience.

" + } + }, + "WebExperiences": { + "base": null, + "refs": { + "ListWebExperiencesResponse$webExperiences": "

An array of summary information for one or more Amazon Q experiences.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,247 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://qbusiness-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://qbusiness.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://qbusiness-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://qbusiness.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,119 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://qbusiness-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://qbusiness.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://qbusiness-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://qbusiness.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://qbusiness-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://qbusiness.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qbusiness/2023-11-27/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qbusiness/2023-11-27/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,76 @@ +{ + "pagination": { + "GetChatControlsConfiguration": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "topicConfigurations" + }, + "ListApplications": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "applications" + }, + "ListConversations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "conversations" + }, + "ListDataSourceSyncJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "history" + }, + "ListDataSources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "dataSources" + }, + "ListDocuments": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "documentDetailList" + }, + "ListGroups": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListIndices": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "indices" + }, + "ListMessages": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "messages" + }, + "ListPlugins": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "plugins" + }, + "ListRetrievers": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "retrievers" + }, + "ListWebExperiences": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "webExperiences" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,3165 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2020-10-19", + "endpointPrefix":"wisdom", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon Q Connect", + "serviceId":"QConnect", + "signatureVersion":"v4", + "signingName":"wisdom", + "uid":"qconnect-2020-10-19" + }, + "operations":{ + "CreateAssistant":{ + "name":"CreateAssistant", + "http":{ + "method":"POST", + "requestUri":"/assistants", + "responseCode":200 + }, + "input":{"shape":"CreateAssistantRequest"}, + "output":{"shape":"CreateAssistantResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateAssistantAssociation":{ + "name":"CreateAssistantAssociation", + "http":{ + "method":"POST", + "requestUri":"/assistants/{assistantId}/associations", + "responseCode":200 + }, + "input":{"shape":"CreateAssistantAssociationRequest"}, + "output":{"shape":"CreateAssistantAssociationResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "CreateContent":{ + "name":"CreateContent", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents", + "responseCode":200 + }, + "input":{"shape":"CreateContentRequest"}, + "output":{"shape":"CreateContentResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "CreateKnowledgeBase":{ + "name":"CreateKnowledgeBase", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases", + "responseCode":200 + }, + "input":{"shape":"CreateKnowledgeBaseRequest"}, + "output":{"shape":"CreateKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateQuickResponse":{ + "name":"CreateQuickResponse", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses", + "responseCode":200 + }, + "input":{"shape":"CreateQuickResponseRequest"}, + "output":{"shape":"CreateQuickResponseResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "CreateSession":{ + "name":"CreateSession", + "http":{ + "method":"POST", + "requestUri":"/assistants/{assistantId}/sessions", + "responseCode":200 + }, + "input":{"shape":"CreateSessionRequest"}, + "output":{"shape":"CreateSessionResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteAssistant":{ + "name":"DeleteAssistant", + "http":{ + "method":"DELETE", + "requestUri":"/assistants/{assistantId}", + "responseCode":204 + }, + "input":{"shape":"DeleteAssistantRequest"}, + "output":{"shape":"DeleteAssistantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteAssistantAssociation":{ + "name":"DeleteAssistantAssociation", + "http":{ + "method":"DELETE", + "requestUri":"/assistants/{assistantId}/associations/{assistantAssociationId}", + "responseCode":204 + }, + "input":{"shape":"DeleteAssistantAssociationRequest"}, + "output":{"shape":"DeleteAssistantAssociationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteContent":{ + "name":"DeleteContent", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}", + "responseCode":204 + }, + "input":{"shape":"DeleteContentRequest"}, + "output":{"shape":"DeleteContentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteImportJob":{ + "name":"DeleteImportJob", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + "responseCode":204 + }, + "input":{"shape":"DeleteImportJobRequest"}, + "output":{"shape":"DeleteImportJobResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteKnowledgeBase":{ + "name":"DeleteKnowledgeBase", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}", + "responseCode":204 + }, + "input":{"shape":"DeleteKnowledgeBaseRequest"}, + "output":{"shape":"DeleteKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteQuickResponse":{ + "name":"DeleteQuickResponse", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + "responseCode":204 + }, + "input":{"shape":"DeleteQuickResponseRequest"}, + "output":{"shape":"DeleteQuickResponseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "GetAssistant":{ + "name":"GetAssistant", + "http":{ + "method":"GET", + "requestUri":"/assistants/{assistantId}", + "responseCode":200 + }, + "input":{"shape":"GetAssistantRequest"}, + "output":{"shape":"GetAssistantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAssistantAssociation":{ + "name":"GetAssistantAssociation", + "http":{ + "method":"GET", + "requestUri":"/assistants/{assistantId}/associations/{assistantAssociationId}", + "responseCode":200 + }, + "input":{"shape":"GetAssistantAssociationRequest"}, + "output":{"shape":"GetAssistantAssociationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetContent":{ + "name":"GetContent", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}", + "responseCode":200 + }, + "input":{"shape":"GetContentRequest"}, + "output":{"shape":"GetContentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetContentSummary":{ + "name":"GetContentSummary", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/summary", + "responseCode":200 + }, + "input":{"shape":"GetContentSummaryRequest"}, + "output":{"shape":"GetContentSummaryResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetImportJob":{ + "name":"GetImportJob", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + "responseCode":200 + }, + "input":{"shape":"GetImportJobRequest"}, + "output":{"shape":"GetImportJobResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetKnowledgeBase":{ + "name":"GetKnowledgeBase", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}", + "responseCode":200 + }, + "input":{"shape":"GetKnowledgeBaseRequest"}, + "output":{"shape":"GetKnowledgeBaseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetQuickResponse":{ + "name":"GetQuickResponse", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + "responseCode":200 + }, + "input":{"shape":"GetQuickResponseRequest"}, + "output":{"shape":"GetQuickResponseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetRecommendations":{ + "name":"GetRecommendations", + "http":{ + "method":"GET", + "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/recommendations", + "responseCode":200 + }, + "input":{"shape":"GetRecommendationsRequest"}, + "output":{"shape":"GetRecommendationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetSession":{ + "name":"GetSession", + "http":{ + "method":"GET", + "requestUri":"/assistants/{assistantId}/sessions/{sessionId}", + "responseCode":200 + }, + "input":{"shape":"GetSessionRequest"}, + "output":{"shape":"GetSessionResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAssistantAssociations":{ + "name":"ListAssistantAssociations", + "http":{ + "method":"GET", + "requestUri":"/assistants/{assistantId}/associations", + "responseCode":200 + }, + "input":{"shape":"ListAssistantAssociationsRequest"}, + "output":{"shape":"ListAssistantAssociationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAssistants":{ + "name":"ListAssistants", + "http":{ + "method":"GET", + "requestUri":"/assistants", + "responseCode":200 + }, + "input":{"shape":"ListAssistantsRequest"}, + "output":{"shape":"ListAssistantsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListContents":{ + "name":"ListContents", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents", + "responseCode":200 + }, + "input":{"shape":"ListContentsRequest"}, + "output":{"shape":"ListContentsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListImportJobs":{ + "name":"ListImportJobs", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs", + "responseCode":200 + }, + "input":{"shape":"ListImportJobsRequest"}, + "output":{"shape":"ListImportJobsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListKnowledgeBases":{ + "name":"ListKnowledgeBases", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases", + "responseCode":200 + }, + "input":{"shape":"ListKnowledgeBasesRequest"}, + "output":{"shape":"ListKnowledgeBasesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListQuickResponses":{ + "name":"ListQuickResponses", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses", + "responseCode":200 + }, + "input":{"shape":"ListQuickResponsesRequest"}, + "output":{"shape":"ListQuickResponsesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"} + ] + }, + "NotifyRecommendationsReceived":{ + "name":"NotifyRecommendationsReceived", + "http":{ + "method":"POST", + "requestUri":"/assistants/{assistantId}/sessions/{sessionId}/recommendations/notify", + "responseCode":200 + }, + "input":{"shape":"NotifyRecommendationsReceivedRequest"}, + "output":{"shape":"NotifyRecommendationsReceivedResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "PutFeedback":{ + "name":"PutFeedback", + "http":{ + "method":"PUT", + "requestUri":"/assistants/{assistantId}/feedback", + "responseCode":200 + }, + "input":{"shape":"PutFeedbackRequest"}, + "output":{"shape":"PutFeedbackResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "QueryAssistant":{ + "name":"QueryAssistant", + "http":{ + "method":"POST", + "requestUri":"/assistants/{assistantId}/query", + "responseCode":200 + }, + "input":{"shape":"QueryAssistantRequest"}, + "output":{"shape":"QueryAssistantResponse"}, + "errors":[ + {"shape":"RequestTimeoutException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "RemoveKnowledgeBaseTemplateUri":{ + "name":"RemoveKnowledgeBaseTemplateUri", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/templateUri", + "responseCode":204 + }, + "input":{"shape":"RemoveKnowledgeBaseTemplateUriRequest"}, + "output":{"shape":"RemoveKnowledgeBaseTemplateUriResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "SearchContent":{ + "name":"SearchContent", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/search", + "responseCode":200 + }, + "input":{"shape":"SearchContentRequest"}, + "output":{"shape":"SearchContentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "SearchQuickResponses":{ + "name":"SearchQuickResponses", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/search/quickResponses", + "responseCode":200 + }, + "input":{"shape":"SearchQuickResponsesRequest"}, + "output":{"shape":"SearchQuickResponsesResponse"}, + "errors":[ + {"shape":"RequestTimeoutException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "SearchSessions":{ + "name":"SearchSessions", + "http":{ + "method":"POST", + "requestUri":"/assistants/{assistantId}/searchSessions", + "responseCode":200 + }, + "input":{"shape":"SearchSessionsRequest"}, + "output":{"shape":"SearchSessionsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "StartContentUpload":{ + "name":"StartContentUpload", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/upload", + "responseCode":200 + }, + "input":{"shape":"StartContentUploadRequest"}, + "output":{"shape":"StartContentUploadResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "StartImportJob":{ + "name":"StartImportJob", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs", + "responseCode":200 + }, + "input":{"shape":"StartImportJobRequest"}, + "output":{"shape":"StartImportJobResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"TooManyTagsException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateContent":{ + "name":"UpdateContent", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/contents/{contentId}", + "responseCode":200 + }, + "input":{"shape":"UpdateContentRequest"}, + "output":{"shape":"UpdateContentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "UpdateKnowledgeBaseTemplateUri":{ + "name":"UpdateKnowledgeBaseTemplateUri", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/templateUri", + "responseCode":200 + }, + "input":{"shape":"UpdateKnowledgeBaseTemplateUriRequest"}, + "output":{"shape":"UpdateKnowledgeBaseTemplateUriResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "UpdateQuickResponse":{ + "name":"UpdateQuickResponse", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + "responseCode":200 + }, + "input":{"shape":"UpdateQuickResponseRequest"}, + "output":{"shape":"UpdateQuickResponseResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ResourceNotFoundException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "AppIntegrationsConfiguration":{ + "type":"structure", + "required":["appIntegrationArn"], + "members":{ + "appIntegrationArn":{"shape":"GenericArn"}, + "objectFields":{"shape":"ObjectFieldsList"} + } + }, + "Arn":{ + "type":"string", + "pattern":"^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})?$" + }, + "AssistantAssociationData":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantAssociationArn", + "assistantAssociationId", + "assistantId", + "associationData", + "associationType" + ], + "members":{ + "assistantArn":{"shape":"Arn"}, + "assistantAssociationArn":{"shape":"Arn"}, + "assistantAssociationId":{"shape":"Uuid"}, + "assistantId":{"shape":"Uuid"}, + "associationData":{"shape":"AssistantAssociationOutputData"}, + "associationType":{"shape":"AssociationType"}, + "tags":{"shape":"Tags"} + } + }, + "AssistantAssociationInputData":{ + "type":"structure", + "members":{ + "knowledgeBaseId":{"shape":"Uuid"} + }, + "union":true + }, + "AssistantAssociationOutputData":{ + "type":"structure", + "members":{ + "knowledgeBaseAssociation":{"shape":"KnowledgeBaseAssociationData"} + }, + "union":true + }, + "AssistantAssociationSummary":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantAssociationArn", + "assistantAssociationId", + "assistantId", + "associationData", + "associationType" + ], + "members":{ + "assistantArn":{"shape":"Arn"}, + "assistantAssociationArn":{"shape":"Arn"}, + "assistantAssociationId":{"shape":"Uuid"}, + "assistantId":{"shape":"Uuid"}, + "associationData":{"shape":"AssistantAssociationOutputData"}, + "associationType":{"shape":"AssociationType"}, + "tags":{"shape":"Tags"} + } + }, + "AssistantAssociationSummaryList":{ + "type":"list", + "member":{"shape":"AssistantAssociationSummary"} + }, + "AssistantCapabilityConfiguration":{ + "type":"structure", + "members":{ + "type":{"shape":"AssistantCapabilityType"} + } + }, + "AssistantCapabilityType":{ + "type":"string", + "enum":[ + "V1", + "V2" + ] + }, + "AssistantData":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantId", + "name", + "status", + "type" + ], + "members":{ + "assistantArn":{"shape":"Arn"}, + "assistantId":{"shape":"Uuid"}, + "capabilityConfiguration":{"shape":"AssistantCapabilityConfiguration"}, + "description":{"shape":"Description"}, + "integrationConfiguration":{"shape":"AssistantIntegrationConfiguration"}, + "name":{"shape":"Name"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "status":{"shape":"AssistantStatus"}, + "tags":{"shape":"Tags"}, + "type":{"shape":"AssistantType"} + } + }, + "AssistantIntegrationConfiguration":{ + "type":"structure", + "members":{ + "topicIntegrationArn":{"shape":"GenericArn"} + } + }, + "AssistantList":{ + "type":"list", + "member":{"shape":"AssistantSummary"} + }, + "AssistantStatus":{ + "type":"string", + "enum":[ + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "ACTIVE", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED" + ] + }, + "AssistantSummary":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantId", + "name", + "status", + "type" + ], + "members":{ + "assistantArn":{"shape":"Arn"}, + "assistantId":{"shape":"Uuid"}, + "capabilityConfiguration":{"shape":"AssistantCapabilityConfiguration"}, + "description":{"shape":"Description"}, + "integrationConfiguration":{"shape":"AssistantIntegrationConfiguration"}, + "name":{"shape":"Name"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "status":{"shape":"AssistantStatus"}, + "tags":{"shape":"Tags"}, + "type":{"shape":"AssistantType"} + } + }, + "AssistantType":{ + "type":"string", + "enum":["AGENT"] + }, + "AssociationType":{ + "type":"string", + "enum":["KNOWLEDGE_BASE"] + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "Channel":{ + "type":"string", + "max":10, + "min":1, + "sensitive":true + }, + "Channels":{ + "type":"list", + "member":{"shape":"Channel"} + }, + "ClientToken":{ + "type":"string", + "max":4096, + "min":1 + }, + "Configuration":{ + "type":"structure", + "members":{ + "connectConfiguration":{"shape":"ConnectConfiguration"} + }, + "union":true + }, + "ConflictException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "ConnectConfiguration":{ + "type":"structure", + "members":{ + "instanceId":{"shape":"NonEmptyString"} + } + }, + "ContactAttributeKey":{"type":"string"}, + "ContactAttributeKeys":{ + "type":"list", + "member":{"shape":"ContactAttributeKey"}, + "sensitive":true + }, + "ContactAttributeValue":{"type":"string"}, + "ContactAttributes":{ + "type":"map", + "key":{"shape":"ContactAttributeKey"}, + "value":{"shape":"ContactAttributeValue"}, + "sensitive":true + }, + "ContentData":{ + "type":"structure", + "required":[ + "contentArn", + "contentId", + "contentType", + "knowledgeBaseArn", + "knowledgeBaseId", + "metadata", + "name", + "revisionId", + "status", + "title", + "url", + "urlExpiry" + ], + "members":{ + "contentArn":{"shape":"Arn"}, + "contentId":{"shape":"Uuid"}, + "contentType":{"shape":"ContentType"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "linkOutUri":{"shape":"Uri"}, + "metadata":{"shape":"ContentMetadata"}, + "name":{"shape":"Name"}, + "revisionId":{"shape":"NonEmptyString"}, + "status":{"shape":"ContentStatus"}, + "tags":{"shape":"Tags"}, + "title":{"shape":"ContentTitle"}, + "url":{"shape":"Url"}, + "urlExpiry":{"shape":"SyntheticTimestamp_epoch_seconds"} + } + }, + "ContentDataDetails":{ + "type":"structure", + "required":[ + "rankingData", + "textData" + ], + "members":{ + "rankingData":{"shape":"RankingData"}, + "textData":{"shape":"TextData"} + } + }, + "ContentFeedbackData":{ + "type":"structure", + "members":{ + "generativeContentFeedbackData":{"shape":"GenerativeContentFeedbackData"} + }, + "union":true + }, + "ContentMetadata":{ + "type":"map", + "key":{"shape":"NonEmptyString"}, + "value":{"shape":"NonEmptyString"}, + "max":10, + "min":0 + }, + "ContentReference":{ + "type":"structure", + "members":{ + "contentArn":{"shape":"Arn"}, + "contentId":{"shape":"Uuid"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"} + } + }, + "ContentStatus":{ + "type":"string", + "enum":[ + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "ACTIVE", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED", + "UPDATE_FAILED" + ] + }, + "ContentSummary":{ + "type":"structure", + "required":[ + "contentArn", + "contentId", + "contentType", + "knowledgeBaseArn", + "knowledgeBaseId", + "metadata", + "name", + "revisionId", + "status", + "title" + ], + "members":{ + "contentArn":{"shape":"Arn"}, + "contentId":{"shape":"Uuid"}, + "contentType":{"shape":"ContentType"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "metadata":{"shape":"ContentMetadata"}, + "name":{"shape":"Name"}, + "revisionId":{"shape":"NonEmptyString"}, + "status":{"shape":"ContentStatus"}, + "tags":{"shape":"Tags"}, + "title":{"shape":"ContentTitle"} + } + }, + "ContentSummaryList":{ + "type":"list", + "member":{"shape":"ContentSummary"} + }, + "ContentTitle":{ + "type":"string", + "max":255, + "min":1 + }, + "ContentType":{ + "type":"string", + "pattern":"^(text/(plain|html|csv))|(application/(pdf|vnd\\.openxmlformats-officedocument\\.wordprocessingml\\.document))|(application/x\\.wisdom-json;source=(salesforce|servicenow|zendesk))$" + }, + "CreateAssistantAssociationRequest":{ + "type":"structure", + "required":[ + "assistantId", + "association", + "associationType" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "association":{"shape":"AssistantAssociationInputData"}, + "associationType":{"shape":"AssociationType"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "tags":{"shape":"Tags"} + } + }, + "CreateAssistantAssociationResponse":{ + "type":"structure", + "members":{ + "assistantAssociation":{"shape":"AssistantAssociationData"} + } + }, + "CreateAssistantRequest":{ + "type":"structure", + "required":[ + "name", + "type" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "name":{"shape":"Name"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "tags":{"shape":"Tags"}, + "type":{"shape":"AssistantType"} + } + }, + "CreateAssistantResponse":{ + "type":"structure", + "members":{ + "assistant":{"shape":"AssistantData"} + } + }, + "CreateContentRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "name", + "uploadId" + ], + "members":{ + "clientToken":{ + "shape":"NonEmptyString", + "idempotencyToken":true + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "metadata":{"shape":"ContentMetadata"}, + "name":{"shape":"Name"}, + "overrideLinkOutUri":{"shape":"Uri"}, + "tags":{"shape":"Tags"}, + "title":{"shape":"ContentTitle"}, + "uploadId":{"shape":"UploadId"} + } + }, + "CreateContentResponse":{ + "type":"structure", + "members":{ + "content":{"shape":"ContentData"} + } + }, + "CreateKnowledgeBaseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseType", + "name" + ], + "members":{ + "clientToken":{ + "shape":"NonEmptyString", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "knowledgeBaseType":{"shape":"KnowledgeBaseType"}, + "name":{"shape":"Name"}, + "renderingConfiguration":{"shape":"RenderingConfiguration"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "sourceConfiguration":{"shape":"SourceConfiguration"}, + "tags":{"shape":"Tags"} + } + }, + "CreateKnowledgeBaseResponse":{ + "type":"structure", + "members":{ + "knowledgeBase":{"shape":"KnowledgeBaseData"} + } + }, + "CreateQuickResponseRequest":{ + "type":"structure", + "required":[ + "content", + "knowledgeBaseId", + "name" + ], + "members":{ + "channels":{"shape":"Channels"}, + "clientToken":{ + "shape":"NonEmptyString", + "idempotencyToken":true + }, + "content":{"shape":"QuickResponseDataProvider"}, + "contentType":{"shape":"QuickResponseType"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "language":{"shape":"LanguageCode"}, + "name":{"shape":"QuickResponseName"}, + "shortcutKey":{"shape":"ShortCutKey"}, + "tags":{"shape":"Tags"} + } + }, + "CreateQuickResponseResponse":{ + "type":"structure", + "members":{ + "quickResponse":{"shape":"QuickResponseData"} + } + }, + "CreateSessionRequest":{ + "type":"structure", + "required":[ + "assistantId", + "name" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "name":{"shape":"Name"}, + "tags":{"shape":"Tags"} + } + }, + "CreateSessionResponse":{ + "type":"structure", + "members":{ + "session":{"shape":"SessionData"} + } + }, + "DataDetails":{ + "type":"structure", + "members":{ + "contentData":{"shape":"ContentDataDetails"}, + "generativeData":{"shape":"GenerativeDataDetails"}, + "sourceContentData":{"shape":"SourceContentDataDetails"} + }, + "union":true + }, + "DataReference":{ + "type":"structure", + "members":{ + "contentReference":{"shape":"ContentReference"}, + "generativeReference":{"shape":"GenerativeReference"} + }, + "union":true + }, + "DataSummary":{ + "type":"structure", + "required":[ + "details", + "reference" + ], + "members":{ + "details":{"shape":"DataDetails"}, + "reference":{"shape":"DataReference"} + } + }, + "DataSummaryList":{ + "type":"list", + "member":{"shape":"DataSummary"} + }, + "DeleteAssistantAssociationRequest":{ + "type":"structure", + "required":[ + "assistantAssociationId", + "assistantId" + ], + "members":{ + "assistantAssociationId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantAssociationId" + }, + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + } + } + }, + "DeleteAssistantAssociationResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteAssistantRequest":{ + "type":"structure", + "required":["assistantId"], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + } + } + }, + "DeleteAssistantResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteContentRequest":{ + "type":"structure", + "required":[ + "contentId", + "knowledgeBaseId" + ], + "members":{ + "contentId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"contentId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "DeleteContentResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteImportJobRequest":{ + "type":"structure", + "required":[ + "importJobId", + "knowledgeBaseId" + ], + "members":{ + "importJobId":{ + "shape":"Uuid", + "location":"uri", + "locationName":"importJobId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "DeleteImportJobResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteKnowledgeBaseRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "DeleteKnowledgeBaseResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteQuickResponseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "quickResponseId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "quickResponseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"quickResponseId" + } + } + }, + "DeleteQuickResponseResponse":{ + "type":"structure", + "members":{ + } + }, + "Description":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[a-zA-Z0-9\\s_.,-]+" + }, + "Document":{ + "type":"structure", + "required":["contentReference"], + "members":{ + "contentReference":{"shape":"ContentReference"}, + "excerpt":{"shape":"DocumentText"}, + "title":{"shape":"DocumentText"} + } + }, + "DocumentText":{ + "type":"structure", + "members":{ + "highlights":{"shape":"Highlights"}, + "text":{"shape":"SensitiveString"} + } + }, + "ExternalSource":{ + "type":"string", + "enum":["AMAZON_CONNECT"] + }, + "ExternalSourceConfiguration":{ + "type":"structure", + "required":[ + "configuration", + "source" + ], + "members":{ + "configuration":{"shape":"Configuration"}, + "source":{"shape":"ExternalSource"} + } + }, + "Filter":{ + "type":"structure", + "required":[ + "field", + "operator", + "value" + ], + "members":{ + "field":{"shape":"FilterField"}, + "operator":{"shape":"FilterOperator"}, + "value":{"shape":"NonEmptyString"} + } + }, + "FilterField":{ + "type":"string", + "enum":["NAME"] + }, + "FilterList":{ + "type":"list", + "member":{"shape":"Filter"} + }, + "FilterOperator":{ + "type":"string", + "enum":["EQUALS"] + }, + "GenerativeContentFeedbackData":{ + "type":"structure", + "required":["relevance"], + "members":{ + "relevance":{"shape":"Relevance"} + } + }, + "GenerativeDataDetails":{ + "type":"structure", + "required":[ + "completion", + "rankingData", + "references" + ], + "members":{ + "completion":{"shape":"SensitiveString"}, + "rankingData":{"shape":"RankingData"}, + "references":{"shape":"DataSummaryList"} + } + }, + "GenerativeReference":{ + "type":"structure", + "members":{ + "generationId":{"shape":"Uuid"}, + "modelId":{"shape":"LlmModelId"} + } + }, + "GenericArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"^arn:[a-z-]+?:[a-z-]+?:[a-z0-9-]*?:([0-9]{12})?:[a-zA-Z0-9-:/]+$" + }, + "GetAssistantAssociationRequest":{ + "type":"structure", + "required":[ + "assistantAssociationId", + "assistantId" + ], + "members":{ + "assistantAssociationId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantAssociationId" + }, + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + } + } + }, + "GetAssistantAssociationResponse":{ + "type":"structure", + "members":{ + "assistantAssociation":{"shape":"AssistantAssociationData"} + } + }, + "GetAssistantRequest":{ + "type":"structure", + "required":["assistantId"], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + } + } + }, + "GetAssistantResponse":{ + "type":"structure", + "members":{ + "assistant":{"shape":"AssistantData"} + } + }, + "GetContentRequest":{ + "type":"structure", + "required":[ + "contentId", + "knowledgeBaseId" + ], + "members":{ + "contentId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"contentId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetContentResponse":{ + "type":"structure", + "members":{ + "content":{"shape":"ContentData"} + } + }, + "GetContentSummaryRequest":{ + "type":"structure", + "required":[ + "contentId", + "knowledgeBaseId" + ], + "members":{ + "contentId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"contentId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetContentSummaryResponse":{ + "type":"structure", + "members":{ + "contentSummary":{"shape":"ContentSummary"} + } + }, + "GetImportJobRequest":{ + "type":"structure", + "required":[ + "importJobId", + "knowledgeBaseId" + ], + "members":{ + "importJobId":{ + "shape":"Uuid", + "location":"uri", + "locationName":"importJobId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetImportJobResponse":{ + "type":"structure", + "members":{ + "importJob":{"shape":"ImportJobData"} + } + }, + "GetKnowledgeBaseRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetKnowledgeBaseResponse":{ + "type":"structure", + "members":{ + "knowledgeBase":{"shape":"KnowledgeBaseData"} + } + }, + "GetQuickResponseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "quickResponseId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "quickResponseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"quickResponseId" + } + } + }, + "GetQuickResponseResponse":{ + "type":"structure", + "members":{ + "quickResponse":{"shape":"QuickResponseData"} + } + }, + "GetRecommendationsRequest":{ + "type":"structure", + "required":[ + "assistantId", + "sessionId" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "sessionId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"sessionId" + }, + "waitTimeSeconds":{ + "shape":"WaitTimeSeconds", + "location":"querystring", + "locationName":"waitTimeSeconds" + } + } + }, + "GetRecommendationsResponse":{ + "type":"structure", + "required":["recommendations"], + "members":{ + "recommendations":{"shape":"RecommendationList"}, + "triggers":{"shape":"RecommendationTriggerList"} + } + }, + "GetSessionRequest":{ + "type":"structure", + "required":[ + "assistantId", + "sessionId" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "sessionId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"sessionId" + } + } + }, + "GetSessionResponse":{ + "type":"structure", + "members":{ + "session":{"shape":"SessionData"} + } + }, + "GroupingConfiguration":{ + "type":"structure", + "members":{ + "criteria":{"shape":"GroupingCriteria"}, + "values":{"shape":"GroupingValues"} + } + }, + "GroupingCriteria":{ + "type":"string", + "max":100, + "min":1, + "sensitive":true + }, + "GroupingValue":{ + "type":"string", + "max":2048, + "min":1, + "sensitive":true + }, + "GroupingValues":{ + "type":"list", + "member":{"shape":"GroupingValue"} + }, + "Headers":{ + "type":"map", + "key":{"shape":"NonEmptyString"}, + "value":{"shape":"NonEmptyString"} + }, + "Highlight":{ + "type":"structure", + "members":{ + "beginOffsetInclusive":{"shape":"HighlightOffset"}, + "endOffsetExclusive":{"shape":"HighlightOffset"} + } + }, + "HighlightOffset":{"type":"integer"}, + "Highlights":{ + "type":"list", + "member":{"shape":"Highlight"} + }, + "ImportJobData":{ + "type":"structure", + "required":[ + "createdTime", + "importJobId", + "importJobType", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "status", + "uploadId", + "url", + "urlExpiry" + ], + "members":{ + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}, + "failedRecordReport":{"shape":"Url"}, + "importJobId":{"shape":"Uuid"}, + "importJobType":{"shape":"ImportJobType"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "metadata":{"shape":"ContentMetadata"}, + "status":{"shape":"ImportJobStatus"}, + "uploadId":{"shape":"UploadId"}, + "url":{"shape":"Url"}, + "urlExpiry":{"shape":"SyntheticTimestamp_epoch_seconds"} + } + }, + "ImportJobList":{ + "type":"list", + "member":{"shape":"ImportJobSummary"} + }, + "ImportJobStatus":{ + "type":"string", + "enum":[ + "START_IN_PROGRESS", + "FAILED", + "COMPLETE", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED" + ] + }, + "ImportJobSummary":{ + "type":"structure", + "required":[ + "createdTime", + "importJobId", + "importJobType", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "status", + "uploadId" + ], + "members":{ + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}, + "importJobId":{"shape":"Uuid"}, + "importJobType":{"shape":"ImportJobType"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "metadata":{"shape":"ContentMetadata"}, + "status":{"shape":"ImportJobStatus"}, + "uploadId":{"shape":"UploadId"} + } + }, + "ImportJobType":{ + "type":"string", + "enum":["QUICK_RESPONSES"] + }, + "KnowledgeBaseAssociationData":{ + "type":"structure", + "members":{ + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"} + } + }, + "KnowledgeBaseData":{ + "type":"structure", + "required":[ + "knowledgeBaseArn", + "knowledgeBaseId", + "knowledgeBaseType", + "name", + "status" + ], + "members":{ + "description":{"shape":"Description"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "knowledgeBaseType":{"shape":"KnowledgeBaseType"}, + "lastContentModificationTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"Name"}, + "renderingConfiguration":{"shape":"RenderingConfiguration"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "sourceConfiguration":{"shape":"SourceConfiguration"}, + "status":{"shape":"KnowledgeBaseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "KnowledgeBaseList":{ + "type":"list", + "member":{"shape":"KnowledgeBaseSummary"} + }, + "KnowledgeBaseStatus":{ + "type":"string", + "enum":[ + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "ACTIVE", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED" + ] + }, + "KnowledgeBaseSummary":{ + "type":"structure", + "required":[ + "knowledgeBaseArn", + "knowledgeBaseId", + "knowledgeBaseType", + "name", + "status" + ], + "members":{ + "description":{"shape":"Description"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "knowledgeBaseType":{"shape":"KnowledgeBaseType"}, + "name":{"shape":"Name"}, + "renderingConfiguration":{"shape":"RenderingConfiguration"}, + "serverSideEncryptionConfiguration":{"shape":"ServerSideEncryptionConfiguration"}, + "sourceConfiguration":{"shape":"SourceConfiguration"}, + "status":{"shape":"KnowledgeBaseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "KnowledgeBaseType":{ + "type":"string", + "enum":[ + "EXTERNAL", + "CUSTOM", + "QUICK_RESPONSES" + ] + }, + "LanguageCode":{ + "type":"string", + "max":5, + "min":2 + }, + "ListAssistantAssociationsRequest":{ + "type":"structure", + "required":["assistantId"], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListAssistantAssociationsResponse":{ + "type":"structure", + "required":["assistantAssociationSummaries"], + "members":{ + "assistantAssociationSummaries":{"shape":"AssistantAssociationSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListAssistantsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListAssistantsResponse":{ + "type":"structure", + "required":["assistantSummaries"], + "members":{ + "assistantSummaries":{"shape":"AssistantList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListContentsRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListContentsResponse":{ + "type":"structure", + "required":["contentSummaries"], + "members":{ + "contentSummaries":{"shape":"ContentSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListImportJobsRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListImportJobsResponse":{ + "type":"structure", + "required":["importJobSummaries"], + "members":{ + "importJobSummaries":{"shape":"ImportJobList"}, + "nextToken":{"shape":"NonEmptyString"} + } + }, + "ListKnowledgeBasesRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListKnowledgeBasesResponse":{ + "type":"structure", + "required":["knowledgeBaseSummaries"], + "members":{ + "knowledgeBaseSummaries":{"shape":"KnowledgeBaseList"}, + "nextToken":{"shape":"NonEmptyString"} + } + }, + "ListQuickResponsesRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListQuickResponsesResponse":{ + "type":"structure", + "required":["quickResponseSummaries"], + "members":{ + "nextToken":{"shape":"NonEmptyString"}, + "quickResponseSummaries":{"shape":"QuickResponseSummaryList"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"Tags"} + } + }, + "LlmModelId":{ + "type":"string", + "max":128, + "min":1 + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "Name":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[a-zA-Z0-9\\s_.,-]+" + }, + "NextToken":{ + "type":"string", + "max":2048, + "min":1 + }, + "NonEmptyString":{ + "type":"string", + "max":4096, + "min":1 + }, + "NotifyRecommendationsReceivedError":{ + "type":"structure", + "members":{ + "message":{"shape":"NotifyRecommendationsReceivedErrorMessage"}, + "recommendationId":{"shape":"RecommendationId"} + } + }, + "NotifyRecommendationsReceivedErrorList":{ + "type":"list", + "member":{"shape":"NotifyRecommendationsReceivedError"} + }, + "NotifyRecommendationsReceivedErrorMessage":{"type":"string"}, + "NotifyRecommendationsReceivedRequest":{ + "type":"structure", + "required":[ + "assistantId", + "recommendationIds", + "sessionId" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "recommendationIds":{"shape":"RecommendationIdList"}, + "sessionId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"sessionId" + } + } + }, + "NotifyRecommendationsReceivedResponse":{ + "type":"structure", + "members":{ + "errors":{"shape":"NotifyRecommendationsReceivedErrorList"}, + "recommendationIds":{"shape":"RecommendationIdList"} + } + }, + "ObjectFieldsList":{ + "type":"list", + "member":{"shape":"NonEmptyString"}, + "max":100, + "min":1 + }, + "Order":{ + "type":"string", + "enum":[ + "ASC", + "DESC" + ] + }, + "PreconditionFailedException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":412, + "senderFault":true + }, + "exception":true + }, + "Priority":{ + "type":"string", + "enum":[ + "HIGH", + "MEDIUM", + "LOW" + ] + }, + "PutFeedbackRequest":{ + "type":"structure", + "required":[ + "assistantId", + "contentFeedback", + "targetId", + "targetType" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "contentFeedback":{"shape":"ContentFeedbackData"}, + "targetId":{"shape":"Uuid"}, + "targetType":{"shape":"TargetType"} + } + }, + "PutFeedbackResponse":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantId", + "contentFeedback", + "targetId", + "targetType" + ], + "members":{ + "assistantArn":{"shape":"UuidOrArn"}, + "assistantId":{"shape":"Uuid"}, + "contentFeedback":{"shape":"ContentFeedbackData"}, + "targetId":{"shape":"Uuid"}, + "targetType":{"shape":"TargetType"} + } + }, + "QueryAssistantRequest":{ + "type":"structure", + "required":[ + "assistantId", + "queryText" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"}, + "queryCondition":{"shape":"QueryConditionExpression"}, + "queryText":{"shape":"QueryText"}, + "sessionId":{"shape":"UuidOrArn"} + } + }, + "QueryAssistantResponse":{ + "type":"structure", + "required":["results"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "results":{"shape":"QueryResultsList"} + } + }, + "QueryCondition":{ + "type":"structure", + "members":{ + "single":{"shape":"QueryConditionItem"} + }, + "union":true + }, + "QueryConditionComparisonOperator":{ + "type":"string", + "enum":["EQUALS"] + }, + "QueryConditionExpression":{ + "type":"list", + "member":{"shape":"QueryCondition"}, + "max":1, + "min":0 + }, + "QueryConditionFieldName":{ + "type":"string", + "enum":["RESULT_TYPE"] + }, + "QueryConditionItem":{ + "type":"structure", + "required":[ + "comparator", + "field", + "value" + ], + "members":{ + "comparator":{"shape":"QueryConditionComparisonOperator"}, + "field":{"shape":"QueryConditionFieldName"}, + "value":{"shape":"NonEmptyString"} + } + }, + "QueryRecommendationTriggerData":{ + "type":"structure", + "members":{ + "text":{"shape":"QueryText"} + } + }, + "QueryResultType":{ + "type":"string", + "enum":[ + "KNOWLEDGE_CONTENT", + "GENERATIVE_ANSWER" + ] + }, + "QueryResultsList":{ + "type":"list", + "member":{"shape":"ResultData"} + }, + "QueryText":{ + "type":"string", + "max":1024, + "min":0, + "sensitive":true + }, + "QuickResponseContent":{ + "type":"string", + "max":1024, + "min":1, + "sensitive":true + }, + "QuickResponseContentProvider":{ + "type":"structure", + "members":{ + "content":{"shape":"QuickResponseContent"} + }, + "union":true + }, + "QuickResponseContents":{ + "type":"structure", + "members":{ + "markdown":{"shape":"QuickResponseContentProvider"}, + "plainText":{"shape":"QuickResponseContentProvider"} + } + }, + "QuickResponseData":{ + "type":"structure", + "required":[ + "contentType", + "createdTime", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "name", + "quickResponseArn", + "quickResponseId", + "status" + ], + "members":{ + "channels":{"shape":"Channels"}, + "contentType":{"shape":"QuickResponseType"}, + "contents":{"shape":"QuickResponseContents"}, + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "language":{"shape":"LanguageCode"}, + "lastModifiedBy":{"shape":"GenericArn"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseArn":{"shape":"Arn"}, + "quickResponseId":{"shape":"Uuid"}, + "shortcutKey":{"shape":"ShortCutKey"}, + "status":{"shape":"QuickResponseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "QuickResponseDataProvider":{ + "type":"structure", + "members":{ + "content":{"shape":"QuickResponseContent"} + }, + "union":true + }, + "QuickResponseDescription":{ + "type":"string", + "max":255, + "min":1 + }, + "QuickResponseFilterField":{ + "type":"structure", + "required":[ + "name", + "operator" + ], + "members":{ + "includeNoExistence":{"shape":"Boolean"}, + "name":{"shape":"NonEmptyString"}, + "operator":{"shape":"QuickResponseFilterOperator"}, + "values":{"shape":"QuickResponseFilterValueList"} + } + }, + "QuickResponseFilterFieldList":{ + "type":"list", + "member":{"shape":"QuickResponseFilterField"}, + "max":10, + "min":0 + }, + "QuickResponseFilterOperator":{ + "type":"string", + "enum":[ + "EQUALS", + "PREFIX" + ] + }, + "QuickResponseFilterValue":{ + "type":"string", + "max":2048, + "min":1 + }, + "QuickResponseFilterValueList":{ + "type":"list", + "member":{"shape":"QuickResponseFilterValue"}, + "max":5, + "min":1 + }, + "QuickResponseName":{ + "type":"string", + "max":40, + "min":1 + }, + "QuickResponseOrderField":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"NonEmptyString"}, + "order":{"shape":"Order"} + } + }, + "QuickResponseQueryField":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "allowFuzziness":{"shape":"Boolean"}, + "name":{"shape":"NonEmptyString"}, + "operator":{"shape":"QuickResponseQueryOperator"}, + "priority":{"shape":"Priority"}, + "values":{"shape":"QuickResponseQueryValueList"} + } + }, + "QuickResponseQueryFieldList":{ + "type":"list", + "member":{"shape":"QuickResponseQueryField"}, + "max":4, + "min":0 + }, + "QuickResponseQueryOperator":{ + "type":"string", + "enum":[ + "CONTAINS", + "CONTAINS_AND_PREFIX" + ] + }, + "QuickResponseQueryValue":{ + "type":"string", + "max":1024, + "min":1 + }, + "QuickResponseQueryValueList":{ + "type":"list", + "member":{"shape":"QuickResponseQueryValue"}, + "max":5, + "min":1 + }, + "QuickResponseSearchExpression":{ + "type":"structure", + "members":{ + "filters":{"shape":"QuickResponseFilterFieldList"}, + "orderOnField":{"shape":"QuickResponseOrderField"}, + "queries":{"shape":"QuickResponseQueryFieldList"} + } + }, + "QuickResponseSearchResultData":{ + "type":"structure", + "required":[ + "contentType", + "contents", + "createdTime", + "isActive", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "name", + "quickResponseArn", + "quickResponseId", + "status" + ], + "members":{ + "attributesInterpolated":{"shape":"ContactAttributeKeys"}, + "attributesNotInterpolated":{"shape":"ContactAttributeKeys"}, + "channels":{"shape":"Channels"}, + "contentType":{"shape":"QuickResponseType"}, + "contents":{"shape":"QuickResponseContents"}, + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "language":{"shape":"LanguageCode"}, + "lastModifiedBy":{"shape":"GenericArn"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseArn":{"shape":"Arn"}, + "quickResponseId":{"shape":"Uuid"}, + "shortcutKey":{"shape":"ShortCutKey"}, + "status":{"shape":"QuickResponseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "QuickResponseSearchResultsList":{ + "type":"list", + "member":{"shape":"QuickResponseSearchResultData"} + }, + "QuickResponseStatus":{ + "type":"string", + "enum":[ + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "CREATED", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED", + "UPDATE_IN_PROGRESS", + "UPDATE_FAILED" + ] + }, + "QuickResponseSummary":{ + "type":"structure", + "required":[ + "contentType", + "createdTime", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "name", + "quickResponseArn", + "quickResponseId", + "status" + ], + "members":{ + "channels":{"shape":"Channels"}, + "contentType":{"shape":"QuickResponseType"}, + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "description":{"shape":"QuickResponseDescription"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "lastModifiedBy":{"shape":"GenericArn"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseArn":{"shape":"Arn"}, + "quickResponseId":{"shape":"Uuid"}, + "status":{"shape":"QuickResponseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "QuickResponseSummaryList":{ + "type":"list", + "member":{"shape":"QuickResponseSummary"} + }, + "QuickResponseType":{ + "type":"string", + "pattern":"^(application/x\\.quickresponse;format=(plain|markdown))$" + }, + "RankingData":{ + "type":"structure", + "members":{ + "relevanceLevel":{"shape":"RelevanceLevel"}, + "relevanceScore":{"shape":"RelevanceScore"} + } + }, + "RecommendationData":{ + "type":"structure", + "required":["recommendationId"], + "members":{ + "data":{"shape":"DataSummary"}, + "document":{"shape":"Document"}, + "recommendationId":{"shape":"RecommendationId"}, + "relevanceLevel":{"shape":"RelevanceLevel"}, + "relevanceScore":{"shape":"RelevanceScore"}, + "type":{"shape":"RecommendationType"} + } + }, + "RecommendationId":{ + "type":"string", + "max":2048, + "min":1 + }, + "RecommendationIdList":{ + "type":"list", + "member":{"shape":"RecommendationId"}, + "max":25, + "min":0 + }, + "RecommendationList":{ + "type":"list", + "member":{"shape":"RecommendationData"} + }, + "RecommendationSourceType":{ + "type":"string", + "enum":[ + "ISSUE_DETECTION", + "RULE_EVALUATION", + "OTHER" + ] + }, + "RecommendationTrigger":{ + "type":"structure", + "required":[ + "data", + "id", + "recommendationIds", + "source", + "type" + ], + "members":{ + "data":{"shape":"RecommendationTriggerData"}, + "id":{"shape":"Uuid"}, + "recommendationIds":{"shape":"RecommendationIdList"}, + "source":{"shape":"RecommendationSourceType"}, + "type":{"shape":"RecommendationTriggerType"} + } + }, + "RecommendationTriggerData":{ + "type":"structure", + "members":{ + "query":{"shape":"QueryRecommendationTriggerData"} + }, + "union":true + }, + "RecommendationTriggerList":{ + "type":"list", + "member":{"shape":"RecommendationTrigger"} + }, + "RecommendationTriggerType":{ + "type":"string", + "enum":[ + "QUERY", + "GENERATIVE" + ] + }, + "RecommendationType":{ + "type":"string", + "enum":[ + "KNOWLEDGE_CONTENT", + "GENERATIVE_RESPONSE", + "GENERATIVE_ANSWER" + ] + }, + "Relevance":{ + "type":"string", + "enum":[ + "HELPFUL", + "NOT_HELPFUL" + ] + }, + "RelevanceLevel":{ + "type":"string", + "enum":[ + "HIGH", + "MEDIUM", + "LOW" + ] + }, + "RelevanceScore":{ + "type":"double", + "min":0.0 + }, + "RemoveKnowledgeBaseTemplateUriRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "RemoveKnowledgeBaseTemplateUriResponse":{ + "type":"structure", + "members":{ + } + }, + "RenderingConfiguration":{ + "type":"structure", + "members":{ + "templateUri":{"shape":"Uri"} + } + }, + "RequestTimeoutException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":408, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":false} + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"}, + "resourceName":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResultData":{ + "type":"structure", + "required":["resultId"], + "members":{ + "data":{"shape":"DataSummary"}, + "document":{"shape":"Document"}, + "relevanceScore":{"shape":"RelevanceScore"}, + "resultId":{"shape":"Uuid"}, + "type":{"shape":"QueryResultType"} + } + }, + "SearchContentRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "searchExpression" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "searchExpression":{"shape":"SearchExpression"} + } + }, + "SearchContentResponse":{ + "type":"structure", + "required":["contentSummaries"], + "members":{ + "contentSummaries":{"shape":"ContentSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "SearchExpression":{ + "type":"structure", + "required":["filters"], + "members":{ + "filters":{"shape":"FilterList"} + } + }, + "SearchQuickResponsesRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "searchExpression" + ], + "members":{ + "attributes":{"shape":"ContactAttributes"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + }, + "searchExpression":{"shape":"QuickResponseSearchExpression"} + } + }, + "SearchQuickResponsesResponse":{ + "type":"structure", + "required":["results"], + "members":{ + "nextToken":{"shape":"NonEmptyString"}, + "results":{"shape":"QuickResponseSearchResultsList"} + } + }, + "SearchSessionsRequest":{ + "type":"structure", + "required":[ + "assistantId", + "searchExpression" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "searchExpression":{"shape":"SearchExpression"} + } + }, + "SearchSessionsResponse":{ + "type":"structure", + "required":["sessionSummaries"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "sessionSummaries":{"shape":"SessionSummaries"} + } + }, + "SensitiveString":{ + "type":"string", + "sensitive":true + }, + "ServerSideEncryptionConfiguration":{ + "type":"structure", + "members":{ + "kmsKeyId":{"shape":"NonEmptyString"} + } + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "SessionData":{ + "type":"structure", + "required":[ + "name", + "sessionArn", + "sessionId" + ], + "members":{ + "description":{"shape":"Description"}, + "integrationConfiguration":{"shape":"SessionIntegrationConfiguration"}, + "name":{"shape":"Name"}, + "sessionArn":{"shape":"Arn"}, + "sessionId":{"shape":"Uuid"}, + "tags":{"shape":"Tags"} + } + }, + "SessionIntegrationConfiguration":{ + "type":"structure", + "members":{ + "topicIntegrationArn":{"shape":"GenericArn"} + } + }, + "SessionSummaries":{ + "type":"list", + "member":{"shape":"SessionSummary"} + }, + "SessionSummary":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantId", + "sessionArn", + "sessionId" + ], + "members":{ + "assistantArn":{"shape":"Arn"}, + "assistantId":{"shape":"Uuid"}, + "sessionArn":{"shape":"Arn"}, + "sessionId":{"shape":"Uuid"} + } + }, + "ShortCutKey":{ + "type":"string", + "max":10, + "min":1 + }, + "SourceConfiguration":{ + "type":"structure", + "members":{ + "appIntegrations":{"shape":"AppIntegrationsConfiguration"} + }, + "union":true + }, + "SourceContentDataDetails":{ + "type":"structure", + "required":[ + "id", + "rankingData", + "textData", + "type" + ], + "members":{ + "id":{"shape":"Uuid"}, + "rankingData":{"shape":"RankingData"}, + "textData":{"shape":"TextData"}, + "type":{"shape":"SourceContentType"} + } + }, + "SourceContentType":{ + "type":"string", + "enum":["KNOWLEDGE_CONTENT"] + }, + "StartContentUploadRequest":{ + "type":"structure", + "required":[ + "contentType", + "knowledgeBaseId" + ], + "members":{ + "contentType":{"shape":"ContentType"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "presignedUrlTimeToLive":{"shape":"TimeToLive"} + } + }, + "StartContentUploadResponse":{ + "type":"structure", + "required":[ + "headersToInclude", + "uploadId", + "url", + "urlExpiry" + ], + "members":{ + "headersToInclude":{"shape":"Headers"}, + "uploadId":{"shape":"UploadId"}, + "url":{"shape":"Url"}, + "urlExpiry":{"shape":"SyntheticTimestamp_epoch_seconds"} + } + }, + "StartImportJobRequest":{ + "type":"structure", + "required":[ + "importJobType", + "knowledgeBaseId", + "uploadId" + ], + "members":{ + "clientToken":{ + "shape":"NonEmptyString", + "idempotencyToken":true + }, + "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}, + "importJobType":{"shape":"ImportJobType"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "metadata":{"shape":"ContentMetadata"}, + "uploadId":{"shape":"UploadId"} + } + }, + "StartImportJobResponse":{ + "type":"structure", + "members":{ + "importJob":{"shape":"ImportJobData"} + } + }, + "String":{"type":"string"}, + "SyntheticTimestamp_epoch_seconds":{ + "type":"timestamp", + "timestampFormat":"unixTimestamp" + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(?!aws:)[a-zA-Z+-=._:/]+$" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":50, + "min":1 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"Tags"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":1 + }, + "Tags":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + }, + "TargetType":{ + "type":"string", + "enum":[ + "RECOMMENDATION", + "RESULT" + ] + }, + "TextData":{ + "type":"structure", + "members":{ + "excerpt":{"shape":"DocumentText"}, + "title":{"shape":"DocumentText"} + } + }, + "TimeToLive":{ + "type":"integer", + "box":true, + "max":60, + "min":1 + }, + "TooManyTagsException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"}, + "resourceName":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateContentRequest":{ + "type":"structure", + "required":[ + "contentId", + "knowledgeBaseId" + ], + "members":{ + "contentId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"contentId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "metadata":{"shape":"ContentMetadata"}, + "overrideLinkOutUri":{"shape":"Uri"}, + "removeOverrideLinkOutUri":{"shape":"Boolean"}, + "revisionId":{"shape":"NonEmptyString"}, + "title":{"shape":"ContentTitle"}, + "uploadId":{"shape":"UploadId"} + } + }, + "UpdateContentResponse":{ + "type":"structure", + "members":{ + "content":{"shape":"ContentData"} + } + }, + "UpdateKnowledgeBaseTemplateUriRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "templateUri" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "templateUri":{"shape":"Uri"} + } + }, + "UpdateKnowledgeBaseTemplateUriResponse":{ + "type":"structure", + "members":{ + "knowledgeBase":{"shape":"KnowledgeBaseData"} + } + }, + "UpdateQuickResponseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "quickResponseId" + ], + "members":{ + "channels":{"shape":"Channels"}, + "content":{"shape":"QuickResponseDataProvider"}, + "contentType":{"shape":"QuickResponseType"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "language":{"shape":"LanguageCode"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"quickResponseId" + }, + "removeDescription":{"shape":"Boolean"}, + "removeGroupingConfiguration":{"shape":"Boolean"}, + "removeShortcutKey":{"shape":"Boolean"}, + "shortcutKey":{"shape":"ShortCutKey"} + } + }, + "UpdateQuickResponseResponse":{ + "type":"structure", + "members":{ + "quickResponse":{"shape":"QuickResponseData"} + } + }, + "UploadId":{ + "type":"string", + "max":1200, + "min":1 + }, + "Uri":{ + "type":"string", + "max":4096, + "min":1 + }, + "Url":{ + "type":"string", + "max":4096, + "min":1, + "sensitive":true + }, + "Uuid":{ + "type":"string", + "pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" + }, + "UuidOrArn":{ + "type":"string", + "pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$|^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})?$" + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "WaitTimeSeconds":{ + "type":"integer", + "max":20, + "min":0 + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1823 @@ +{ + "version": "2.0", + "service": "

Powered by Amazon Bedrock: Amazon Web Services implements automated abuse detection. Because Amazon Q in Connect is built on Amazon Bedrock, users can take full advantage of the controls implemented in Amazon Bedrock to enforce safety, security, and the responsible use of artificial intelligence (AI).

Amazon Q in Connect is a generative AI customer service assistant. It is an LLM-enhanced evolution of Amazon Connect Wisdom that delivers real-time recommendations to help contact center agents resolve customer issues quickly and accurately.

Amazon Q automatically detects customer intent during calls and chats using conversational analytics and natural language understanding (NLU). It then provides agents with immediate, real-time generative responses and suggested actions, and links to relevant documents and articles. Agents can also query Amazon Q directly using natural language or keywords to answer customer requests.

Use the Amazon Q in Connect APIs to create an assistant and a knowledge base, for example, or manage content by uploading custom files.

For more information, see Use Amazon Q in Connect for generative AI powered agent assistance in real-time in the Amazon Connect Administrator Guide.

", + "operations": { + "CreateAssistant": "

Creates an Amazon Q in Connect assistant.

", + "CreateAssistantAssociation": "

Creates an association between an Amazon Q in Connect assistant and another resource. Currently, the only supported association is with a knowledge base. An assistant can have only a single association.

", + "CreateContent": "

Creates Amazon Q content. Before to calling this API, use StartContentUpload to upload an asset.

", + "CreateKnowledgeBase": "

Creates a knowledge base.

When using this API, you cannot reuse Amazon AppIntegrations DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. If you do, you'll get an InvalidRequestException error.

For example, you're programmatically managing your external knowledge base, and you want to add or remove one of the fields that is being ingested from Salesforce. Do the following:

  1. Call DeleteKnowledgeBase.

  2. Call DeleteDataIntegration.

  3. Call CreateDataIntegration to recreate the DataIntegration or a create different one.

  4. Call CreateKnowledgeBase.

", + "CreateQuickResponse": "

Creates an Amazon Q quick response.

", + "CreateSession": "

Creates a session. A session is a contextual container used for generating recommendations. Amazon Connect creates a new Amazon Q session for each contact on which Amazon Q is enabled.

", + "DeleteAssistant": "

Deletes an assistant.

", + "DeleteAssistantAssociation": "

Deletes an assistant association.

", + "DeleteContent": "

Deletes the content.

", + "DeleteImportJob": "

Deletes the quick response import job.

", + "DeleteKnowledgeBase": "

Deletes the knowledge base.

When you use this API to delete an external knowledge base such as Salesforce or ServiceNow, you must also delete the Amazon AppIntegrations DataIntegration. This is because you can't reuse the DataIntegration after it's been associated with an external knowledge base. However, you can delete and recreate it. See DeleteDataIntegration and CreateDataIntegration in the Amazon AppIntegrations API Reference.

", + "DeleteQuickResponse": "

Deletes a quick response.

", + "GetAssistant": "

Retrieves information about an assistant.

", + "GetAssistantAssociation": "

Retrieves information about an assistant association.

", + "GetContent": "

Retrieves content, including a pre-signed URL to download the content.

", + "GetContentSummary": "

Retrieves summary information about the content.

", + "GetImportJob": "

Retrieves the started import job.

", + "GetKnowledgeBase": "

Retrieves information about the knowledge base.

", + "GetQuickResponse": "

Retrieves the quick response.

", + "GetRecommendations": "

Retrieves recommendations for the specified session. To avoid retrieving the same recommendations in subsequent calls, use NotifyRecommendationsReceived. This API supports long-polling behavior with the waitTimeSeconds parameter. Short poll is the default behavior and only returns recommendations already available. To perform a manual query against an assistant, use QueryAssistant.

", + "GetSession": "

Retrieves information for a specified session.

", + "ListAssistantAssociations": "

Lists information about assistant associations.

", + "ListAssistants": "

Lists information about assistants.

", + "ListContents": "

Lists the content.

", + "ListImportJobs": "

Lists information about import jobs.

", + "ListKnowledgeBases": "

Lists the knowledge bases.

", + "ListQuickResponses": "

Lists information about quick response.

", + "ListTagsForResource": "

Lists the tags for the specified resource.

", + "NotifyRecommendationsReceived": "

Removes the specified recommendations from the specified assistant's queue of newly available recommendations. You can use this API in conjunction with GetRecommendations and a waitTimeSeconds input for long-polling behavior and avoiding duplicate recommendations.

", + "PutFeedback": "

Provides feedback against the specified assistant for the specified target. This API only supports generative targets.

", + "QueryAssistant": "

Performs a manual search against the specified assistant. To retrieve recommendations for an assistant, use GetRecommendations.

", + "RemoveKnowledgeBaseTemplateUri": "

Removes a URI template from a knowledge base.

", + "SearchContent": "

Searches for content in a specified knowledge base. Can be used to get a specific content resource by its name.

", + "SearchQuickResponses": "

Searches existing Amazon Q quick responses in an Amazon Q knowledge base.

", + "SearchSessions": "

Searches for sessions.

", + "StartContentUpload": "

Get a URL to upload content to a knowledge base. To upload content, first make a PUT request to the returned URL with your file, making sure to include the required headers. Then use CreateContent to finalize the content creation process or UpdateContent to modify an existing resource. You can only upload content to a knowledge base of type CUSTOM.

", + "StartImportJob": "

Start an asynchronous job to import Amazon Q resources from an uploaded source file. Before calling this API, use StartContentUpload to upload an asset that contains the resource data.

  • For importing Amazon Q quick responses, you need to upload a csv file including the quick responses. For information about how to format the csv file for importing quick responses, see Import quick responses.

", + "TagResource": "

Adds the specified tags to the specified resource.

", + "UntagResource": "

Removes the specified tags from the specified resource.

", + "UpdateContent": "

Updates information about the content.

", + "UpdateKnowledgeBaseTemplateUri": "

Updates the template URI of a knowledge base. This is only supported for knowledge bases of type EXTERNAL. Include a single variable in ${variable} format; this interpolated by Amazon Q using ingested content. For example, if you ingest a Salesforce article, it has an Id value, and you can set the template URI to https://myInstanceName.lightning.force.com/lightning/r/Knowledge__kav/*${Id}*/view.

", + "UpdateQuickResponse": "

Updates an existing Amazon Q quick response.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "AppIntegrationsConfiguration": { + "base": "

Configuration information for Amazon AppIntegrations to automatically ingest content.

", + "refs": { + "SourceConfiguration$appIntegrations": "

Configuration information for Amazon AppIntegrations to automatically ingest content.

" + } + }, + "Arn": { + "base": null, + "refs": { + "AssistantAssociationData$assistantArn": "

The Amazon Resource Name (ARN) of the Amazon Q assistant.

", + "AssistantAssociationData$assistantAssociationArn": "

The Amazon Resource Name (ARN) of the assistant association.

", + "AssistantAssociationSummary$assistantArn": "

The Amazon Resource Name (ARN) of the Amazon Q assistant.

", + "AssistantAssociationSummary$assistantAssociationArn": "

The Amazon Resource Name (ARN) of the assistant association.

", + "AssistantData$assistantArn": "

The Amazon Resource Name (ARN) of the Amazon Q assistant.

", + "AssistantSummary$assistantArn": "

The Amazon Resource Name (ARN) of the Amazon Q assistant.

", + "ContentData$contentArn": "

The Amazon Resource Name (ARN) of the content.

", + "ContentData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ContentReference$contentArn": "

The Amazon Resource Name (ARN) of the content.

", + "ContentReference$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ContentSummary$contentArn": "

The Amazon Resource Name (ARN) of the content.

", + "ContentSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ImportJobData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ImportJobSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "KnowledgeBaseAssociationData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "KnowledgeBaseData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "KnowledgeBaseSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", + "QuickResponseData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "QuickResponseData$quickResponseArn": "

The Amazon Resource Name (ARN) of the quick response.

", + "QuickResponseSearchResultData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "QuickResponseSearchResultData$quickResponseArn": "

The Amazon Resource Name (ARN) of the quick response.

", + "QuickResponseSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "QuickResponseSummary$quickResponseArn": "

The Amazon Resource Name (ARN) of the quick response.

", + "SessionData$sessionArn": "

The Amazon Resource Name (ARN) of the session.

", + "SessionSummary$assistantArn": "

The Amazon Resource Name (ARN) of the Amazon Q assistant.

", + "SessionSummary$sessionArn": "

The Amazon Resource Name (ARN) of the session.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

" + } + }, + "AssistantAssociationData": { + "base": "

Information about the assistant association.

", + "refs": { + "CreateAssistantAssociationResponse$assistantAssociation": "

The assistant association.

", + "GetAssistantAssociationResponse$assistantAssociation": "

The assistant association.

" + } + }, + "AssistantAssociationInputData": { + "base": "

The data that is input into Amazon Q as a result of the assistant association.

", + "refs": { + "CreateAssistantAssociationRequest$association": "

The identifier of the associated resource.

" + } + }, + "AssistantAssociationOutputData": { + "base": "

The data that is output as a result of the assistant association.

", + "refs": { + "AssistantAssociationData$associationData": "

A union type that currently has a single argument, the knowledge base ID.

", + "AssistantAssociationSummary$associationData": "

The association data.

" + } + }, + "AssistantAssociationSummary": { + "base": "

Summary information about the assistant association.

", + "refs": { + "AssistantAssociationSummaryList$member": null + } + }, + "AssistantAssociationSummaryList": { + "base": null, + "refs": { + "ListAssistantAssociationsResponse$assistantAssociationSummaries": "

Summary information about assistant associations.

" + } + }, + "AssistantCapabilityConfiguration": { + "base": "

The capability configuration for an Amazon Q assistant.

", + "refs": { + "AssistantData$capabilityConfiguration": "

The configuration information for the Amazon Q assistant capability.

", + "AssistantSummary$capabilityConfiguration": "

The configuration information for the Amazon Q assistant capability.

" + } + }, + "AssistantCapabilityType": { + "base": null, + "refs": { + "AssistantCapabilityConfiguration$type": "

The type of Amazon Q assistant capability.

" + } + }, + "AssistantData": { + "base": "

The assistant data.

", + "refs": { + "CreateAssistantResponse$assistant": "

Information about the assistant.

", + "GetAssistantResponse$assistant": "

Information about the assistant.

" + } + }, + "AssistantIntegrationConfiguration": { + "base": "

The configuration information for the Amazon Q assistant integration.

", + "refs": { + "AssistantData$integrationConfiguration": "

The configuration information for the Amazon Q assistant integration.

", + "AssistantSummary$integrationConfiguration": "

The configuration information for the Amazon Q assistant integration.

" + } + }, + "AssistantList": { + "base": null, + "refs": { + "ListAssistantsResponse$assistantSummaries": "

Information about the assistants.

" + } + }, + "AssistantStatus": { + "base": null, + "refs": { + "AssistantData$status": "

The status of the assistant.

", + "AssistantSummary$status": "

The status of the assistant.

" + } + }, + "AssistantSummary": { + "base": "

Summary information about the assistant.

", + "refs": { + "AssistantList$member": null + } + }, + "AssistantType": { + "base": null, + "refs": { + "AssistantData$type": "

The type of assistant.

", + "AssistantSummary$type": "

The type of the assistant.

", + "CreateAssistantRequest$type": "

The type of assistant.

" + } + }, + "AssociationType": { + "base": null, + "refs": { + "AssistantAssociationData$associationType": "

The type of association.

", + "AssistantAssociationSummary$associationType": "

The type of association.

", + "CreateAssistantAssociationRequest$associationType": "

The type of association.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "CreateQuickResponseRequest$isActive": "

Whether the quick response is active.

", + "QuickResponseData$isActive": "

Whether the quick response is active.

", + "QuickResponseFilterField$includeNoExistence": "

Whether to treat null value as a match for the attribute field.

", + "QuickResponseQueryField$allowFuzziness": "

Whether the query expects only exact matches on the attribute field values. The results of the query will only include exact matches if this parameter is set to false.

", + "QuickResponseSearchResultData$isActive": "

Whether the quick response is active.

", + "QuickResponseSummary$isActive": "

Whether the quick response is active.

", + "UpdateContentRequest$removeOverrideLinkOutUri": "

Unset the existing overrideLinkOutUri if it exists.

", + "UpdateQuickResponseRequest$isActive": "

Whether the quick response is active.

", + "UpdateQuickResponseRequest$removeDescription": "

Whether to remove the description from the quick response.

", + "UpdateQuickResponseRequest$removeGroupingConfiguration": "

Whether to remove the grouping configuration of the quick response.

", + "UpdateQuickResponseRequest$removeShortcutKey": "

Whether to remove the shortcut key of the quick response.

" + } + }, + "Channel": { + "base": null, + "refs": { + "Channels$member": null + } + }, + "Channels": { + "base": null, + "refs": { + "CreateQuickResponseRequest$channels": "

The Amazon Connect channels this quick response applies to.

", + "QuickResponseData$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

", + "QuickResponseSearchResultData$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

", + "QuickResponseSummary$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

", + "UpdateQuickResponseRequest$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "CreateAssistantAssociationRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "CreateAssistantRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "CreateSessionRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

" + } + }, + "Configuration": { + "base": "

The configuration information of the external data source.

", + "refs": { + "ExternalSourceConfiguration$configuration": "

The configuration information of the external data source.

" + } + }, + "ConflictException": { + "base": "

The request could not be processed because of conflict in the current state of the resource. For example, if you're using a Create API (such as CreateAssistant) that accepts name, a conflicting resource (usually with the same name) is being created or mutated.

", + "refs": { + } + }, + "ConnectConfiguration": { + "base": "

The configuration information of the Amazon Connect data source.

", + "refs": { + "Configuration$connectConfiguration": "

The configuration information of the Amazon Connect data source.

" + } + }, + "ContactAttributeKey": { + "base": null, + "refs": { + "ContactAttributeKeys$member": null, + "ContactAttributes$key": null + } + }, + "ContactAttributeKeys": { + "base": null, + "refs": { + "QuickResponseSearchResultData$attributesInterpolated": "

The user defined contact attributes that are resolved when the search result is returned.

", + "QuickResponseSearchResultData$attributesNotInterpolated": "

The user defined contact attributes that are not resolved when the search result is returned.

" + } + }, + "ContactAttributeValue": { + "base": null, + "refs": { + "ContactAttributes$value": null + } + }, + "ContactAttributes": { + "base": null, + "refs": { + "SearchQuickResponsesRequest$attributes": "

The user-defined Amazon Connect contact attributes to be resolved when search results are returned.

" + } + }, + "ContentData": { + "base": "

Information about the content.

", + "refs": { + "CreateContentResponse$content": "

The content.

", + "GetContentResponse$content": "

The content.

", + "UpdateContentResponse$content": "

The content.

" + } + }, + "ContentDataDetails": { + "base": "

Details about the content data.

", + "refs": { + "DataDetails$contentData": "

Details about the content data.

" + } + }, + "ContentFeedbackData": { + "base": "

Information about the feedback.

", + "refs": { + "PutFeedbackRequest$contentFeedback": "

Information about the feedback provided.

", + "PutFeedbackResponse$contentFeedback": "

Information about the feedback provided.

" + } + }, + "ContentMetadata": { + "base": null, + "refs": { + "ContentData$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q, you can store an external version identifier as metadata to utilize for determining drift.

", + "ContentSummary$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q, you can store an external version identifier as metadata to utilize for determining drift.

", + "CreateContentRequest$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q, you can store an external version identifier as metadata to utilize for determining drift.

", + "ImportJobData$metadata": "

The metadata fields of the imported Amazon Q resources.

", + "ImportJobSummary$metadata": "

The metadata fields of the imported Amazon Q resources.

", + "StartImportJobRequest$metadata": "

The metadata fields of the imported Amazon Q resources.

", + "UpdateContentRequest$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Amazon Q, you can store an external version identifier as metadata to utilize for determining drift.

" + } + }, + "ContentReference": { + "base": "

Reference information about the content.

", + "refs": { + "DataReference$contentReference": null, + "Document$contentReference": "

A reference to the content resource.

" + } + }, + "ContentStatus": { + "base": null, + "refs": { + "ContentData$status": "

The status of the content.

", + "ContentSummary$status": "

The status of the content.

" + } + }, + "ContentSummary": { + "base": "

Summary information about the content.

", + "refs": { + "ContentSummaryList$member": null, + "GetContentSummaryResponse$contentSummary": "

The content summary.

" + } + }, + "ContentSummaryList": { + "base": null, + "refs": { + "ListContentsResponse$contentSummaries": "

Information about the content.

", + "SearchContentResponse$contentSummaries": "

Summary information about the content.

" + } + }, + "ContentTitle": { + "base": null, + "refs": { + "ContentData$title": "

The title of the content.

", + "ContentSummary$title": "

The title of the content.

", + "CreateContentRequest$title": "

The title of the content. If not set, the title is equal to the name.

", + "UpdateContentRequest$title": "

The title of the content.

" + } + }, + "ContentType": { + "base": null, + "refs": { + "ContentData$contentType": "

The media type of the content.

", + "ContentSummary$contentType": "

The media type of the content.

", + "StartContentUploadRequest$contentType": "

The type of content to upload.

" + } + }, + "CreateAssistantAssociationRequest": { + "base": null, + "refs": { + } + }, + "CreateAssistantAssociationResponse": { + "base": null, + "refs": { + } + }, + "CreateAssistantRequest": { + "base": null, + "refs": { + } + }, + "CreateAssistantResponse": { + "base": null, + "refs": { + } + }, + "CreateContentRequest": { + "base": null, + "refs": { + } + }, + "CreateContentResponse": { + "base": null, + "refs": { + } + }, + "CreateKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "CreateKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "CreateQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "CreateQuickResponseResponse": { + "base": null, + "refs": { + } + }, + "CreateSessionRequest": { + "base": null, + "refs": { + } + }, + "CreateSessionResponse": { + "base": null, + "refs": { + } + }, + "DataDetails": { + "base": "

Details about the data.

", + "refs": { + "DataSummary$details": "

Details about the data.

" + } + }, + "DataReference": { + "base": "

Reference data.

", + "refs": { + "DataSummary$reference": "

Reference information about the content.

" + } + }, + "DataSummary": { + "base": "

Summary of the data.

", + "refs": { + "DataSummaryList$member": null, + "RecommendationData$data": "

Summary of the recommended content.

", + "ResultData$data": "

Summary of the recommended content.

" + } + }, + "DataSummaryList": { + "base": null, + "refs": { + "GenerativeDataDetails$references": "

The references used to generative the LLM response.

" + } + }, + "DeleteAssistantAssociationRequest": { + "base": null, + "refs": { + } + }, + "DeleteAssistantAssociationResponse": { + "base": null, + "refs": { + } + }, + "DeleteAssistantRequest": { + "base": null, + "refs": { + } + }, + "DeleteAssistantResponse": { + "base": null, + "refs": { + } + }, + "DeleteContentRequest": { + "base": null, + "refs": { + } + }, + "DeleteContentResponse": { + "base": null, + "refs": { + } + }, + "DeleteImportJobRequest": { + "base": null, + "refs": { + } + }, + "DeleteImportJobResponse": { + "base": null, + "refs": { + } + }, + "DeleteKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "DeleteKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "DeleteQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "DeleteQuickResponseResponse": { + "base": null, + "refs": { + } + }, + "Description": { + "base": null, + "refs": { + "AssistantData$description": "

The description.

", + "AssistantSummary$description": "

The description of the assistant.

", + "CreateAssistantRequest$description": "

The description of the assistant.

", + "CreateKnowledgeBaseRequest$description": "

The description.

", + "CreateSessionRequest$description": "

The description.

", + "KnowledgeBaseData$description": "

The description.

", + "KnowledgeBaseSummary$description": "

The description of the knowledge base.

", + "SessionData$description": "

The description of the session.

" + } + }, + "Document": { + "base": "

The document.

", + "refs": { + "RecommendationData$document": "

The recommended document.

", + "ResultData$document": "

The document.

" + } + }, + "DocumentText": { + "base": "

The text of the document.

", + "refs": { + "Document$excerpt": "

The excerpt from the document.

", + "Document$title": "

The title of the document.

", + "TextData$excerpt": null, + "TextData$title": null + } + }, + "ExternalSource": { + "base": null, + "refs": { + "ExternalSourceConfiguration$source": "

The type of the external data source.

" + } + }, + "ExternalSourceConfiguration": { + "base": "

The configuration information of the external data source.

", + "refs": { + "ImportJobData$externalSourceConfiguration": null, + "ImportJobSummary$externalSourceConfiguration": "

The configuration information of the external source that the resource data are imported from.

", + "StartImportJobRequest$externalSourceConfiguration": "

The configuration information of the external source that the resource data are imported from.

" + } + }, + "Filter": { + "base": "

A search filter.

", + "refs": { + "FilterList$member": null + } + }, + "FilterField": { + "base": null, + "refs": { + "Filter$field": "

The field on which to filter.

" + } + }, + "FilterList": { + "base": null, + "refs": { + "SearchExpression$filters": "

The search expression filters.

" + } + }, + "FilterOperator": { + "base": null, + "refs": { + "Filter$operator": "

The operator to use for comparing the field’s value with the provided value.

" + } + }, + "GenerativeContentFeedbackData": { + "base": "

The feedback information for a generative target type.

", + "refs": { + "ContentFeedbackData$generativeContentFeedbackData": "

Information about the feedback for a generative target type.

" + } + }, + "GenerativeDataDetails": { + "base": "

Details about generative data.

", + "refs": { + "DataDetails$generativeData": "

Details about the generative data.

" + } + }, + "GenerativeReference": { + "base": "

Reference information about generative content.

", + "refs": { + "DataReference$generativeReference": "

Reference information about the generative content.

" + } + }, + "GenericArn": { + "base": null, + "refs": { + "AppIntegrationsConfiguration$appIntegrationArn": "

The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.

  • For Salesforce, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted as source fields.

  • For ServiceNow, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least number, short_description, sys_mod_count, workflow_state, and active as source fields.

  • For Zendesk, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least id, title, updated_at, and draft as source fields.

  • For SharePoint, your AppIntegrations DataIntegration must have a FileConfiguration, including only file extensions that are among docx, pdf, html, htm, and txt.

  • For Amazon S3, the ObjectConfiguration and FileConfiguration of your AppIntegrations DataIntegration must be null. The SourceURI of your DataIntegration must use the following format: s3://your_s3_bucket_name.

    The bucket policy of the corresponding S3 bucket must allow the Amazon Web Services principal app-integrations.amazonaws.com to perform s3:ListBucket, s3:GetObject, and s3:GetBucketLocation against the bucket.

", + "AssistantIntegrationConfiguration$topicIntegrationArn": "

The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for streaming chat messages.

", + "QuickResponseData$lastModifiedBy": "

The Amazon Resource Name (ARN) of the user who last updated the quick response data.

", + "QuickResponseSearchResultData$lastModifiedBy": "

The Amazon Resource Name (ARN) of the user who last updated the quick response search result data.

", + "QuickResponseSummary$lastModifiedBy": "

The Amazon Resource Name (ARN) of the user who last updated the quick response data.

", + "SessionIntegrationConfiguration$topicIntegrationArn": "

The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for streaming chat messages.

" + } + }, + "GetAssistantAssociationRequest": { + "base": null, + "refs": { + } + }, + "GetAssistantAssociationResponse": { + "base": null, + "refs": { + } + }, + "GetAssistantRequest": { + "base": null, + "refs": { + } + }, + "GetAssistantResponse": { + "base": null, + "refs": { + } + }, + "GetContentRequest": { + "base": null, + "refs": { + } + }, + "GetContentResponse": { + "base": null, + "refs": { + } + }, + "GetContentSummaryRequest": { + "base": null, + "refs": { + } + }, + "GetContentSummaryResponse": { + "base": null, + "refs": { + } + }, + "GetImportJobRequest": { + "base": null, + "refs": { + } + }, + "GetImportJobResponse": { + "base": null, + "refs": { + } + }, + "GetKnowledgeBaseRequest": { + "base": null, + "refs": { + } + }, + "GetKnowledgeBaseResponse": { + "base": null, + "refs": { + } + }, + "GetQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "GetQuickResponseResponse": { + "base": null, + "refs": { + } + }, + "GetRecommendationsRequest": { + "base": null, + "refs": { + } + }, + "GetRecommendationsResponse": { + "base": null, + "refs": { + } + }, + "GetSessionRequest": { + "base": null, + "refs": { + } + }, + "GetSessionResponse": { + "base": null, + "refs": { + } + }, + "GroupingConfiguration": { + "base": "

The configuration information of the grouping of Amazon Q users.

", + "refs": { + "CreateQuickResponseRequest$groupingConfiguration": "

The configuration information of the user groups that the quick response is accessible to.

", + "QuickResponseData$groupingConfiguration": "

The configuration information of the user groups that the quick response is accessible to.

", + "QuickResponseSearchResultData$groupingConfiguration": "

The configuration information of the user groups that the quick response is accessible to.

", + "UpdateQuickResponseRequest$groupingConfiguration": "

The updated grouping configuration of the quick response.

" + } + }, + "GroupingCriteria": { + "base": null, + "refs": { + "GroupingConfiguration$criteria": "

The criteria used for grouping Amazon Q users.

The following is the list of supported criteria values.

" + } + }, + "GroupingValue": { + "base": null, + "refs": { + "GroupingValues$member": null + } + }, + "GroupingValues": { + "base": null, + "refs": { + "GroupingConfiguration$values": "

The list of values that define different groups of Amazon Q users.

" + } + }, + "Headers": { + "base": null, + "refs": { + "StartContentUploadResponse$headersToInclude": "

The headers to include in the upload.

" + } + }, + "Highlight": { + "base": "

Offset specification to describe highlighting of document excerpts for rendering search results and recommendations.

", + "refs": { + "Highlights$member": null + } + }, + "HighlightOffset": { + "base": null, + "refs": { + "Highlight$beginOffsetInclusive": "

The offset for the start of the highlight.

", + "Highlight$endOffsetExclusive": "

The offset for the end of the highlight.

" + } + }, + "Highlights": { + "base": null, + "refs": { + "DocumentText$highlights": "

Highlights in the document text.

" + } + }, + "ImportJobData": { + "base": "

Summary information about the import job.

", + "refs": { + "GetImportJobResponse$importJob": "

The import job.

", + "StartImportJobResponse$importJob": "

The import job.

" + } + }, + "ImportJobList": { + "base": null, + "refs": { + "ListImportJobsResponse$importJobSummaries": "

Summary information about the import jobs.

" + } + }, + "ImportJobStatus": { + "base": null, + "refs": { + "ImportJobData$status": "

The status of the import job.

", + "ImportJobSummary$status": "

The status of the import job.

" + } + }, + "ImportJobSummary": { + "base": "

Summary information about the import job.

", + "refs": { + "ImportJobList$member": null + } + }, + "ImportJobType": { + "base": null, + "refs": { + "ImportJobData$importJobType": "

The type of the import job.

", + "ImportJobSummary$importJobType": "

The type of import job.

", + "StartImportJobRequest$importJobType": "

The type of the import job.

  • For importing quick response resource, set the value to QUICK_RESPONSES.

" + } + }, + "KnowledgeBaseAssociationData": { + "base": "

Association information about the knowledge base.

", + "refs": { + "AssistantAssociationOutputData$knowledgeBaseAssociation": "

The knowledge base where output data is sent.

" + } + }, + "KnowledgeBaseData": { + "base": "

Information about the knowledge base.

", + "refs": { + "CreateKnowledgeBaseResponse$knowledgeBase": "

The knowledge base.

", + "GetKnowledgeBaseResponse$knowledgeBase": "

The knowledge base.

", + "UpdateKnowledgeBaseTemplateUriResponse$knowledgeBase": "

The knowledge base to update.

" + } + }, + "KnowledgeBaseList": { + "base": null, + "refs": { + "ListKnowledgeBasesResponse$knowledgeBaseSummaries": "

Information about the knowledge bases.

" + } + }, + "KnowledgeBaseStatus": { + "base": null, + "refs": { + "KnowledgeBaseData$status": "

The status of the knowledge base.

", + "KnowledgeBaseSummary$status": "

The status of the knowledge base summary.

" + } + }, + "KnowledgeBaseSummary": { + "base": "

Summary information about the knowledge base.

", + "refs": { + "KnowledgeBaseList$member": null + } + }, + "KnowledgeBaseType": { + "base": null, + "refs": { + "CreateKnowledgeBaseRequest$knowledgeBaseType": "

The type of knowledge base. Only CUSTOM knowledge bases allow you to upload your own content. EXTERNAL knowledge bases support integrations with third-party systems whose content is synchronized automatically.

", + "KnowledgeBaseData$knowledgeBaseType": "

The type of knowledge base.

", + "KnowledgeBaseSummary$knowledgeBaseType": "

The type of knowledge base.

" + } + }, + "LanguageCode": { + "base": null, + "refs": { + "CreateQuickResponseRequest$language": "

The language code value for the language in which the quick response is written. The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, ja_JP, ko_KR, pt_BR, zh_CN, zh_TW

", + "QuickResponseData$language": "

The language code value for the language in which the quick response is written.

", + "QuickResponseSearchResultData$language": "

The language code value for the language in which the quick response is written.

", + "UpdateQuickResponseRequest$language": "

The language code value for the language in which the quick response is written. The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, ja_JP, ko_KR, pt_BR, zh_CN, zh_TW

" + } + }, + "ListAssistantAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListAssistantAssociationsResponse": { + "base": null, + "refs": { + } + }, + "ListAssistantsRequest": { + "base": null, + "refs": { + } + }, + "ListAssistantsResponse": { + "base": null, + "refs": { + } + }, + "ListContentsRequest": { + "base": null, + "refs": { + } + }, + "ListContentsResponse": { + "base": null, + "refs": { + } + }, + "ListImportJobsRequest": { + "base": null, + "refs": { + } + }, + "ListImportJobsResponse": { + "base": null, + "refs": { + } + }, + "ListKnowledgeBasesRequest": { + "base": null, + "refs": { + } + }, + "ListKnowledgeBasesResponse": { + "base": null, + "refs": { + } + }, + "ListQuickResponsesRequest": { + "base": null, + "refs": { + } + }, + "ListQuickResponsesResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "LlmModelId": { + "base": null, + "refs": { + "GenerativeReference$modelId": "

The identifier of the LLM model.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "GetRecommendationsRequest$maxResults": "

The maximum number of results to return per page.

", + "ListAssistantAssociationsRequest$maxResults": "

The maximum number of results to return per page.

", + "ListAssistantsRequest$maxResults": "

The maximum number of results to return per page.

", + "ListContentsRequest$maxResults": "

The maximum number of results to return per page.

", + "ListImportJobsRequest$maxResults": "

The maximum number of results to return per page.

", + "ListKnowledgeBasesRequest$maxResults": "

The maximum number of results to return per page.

", + "ListQuickResponsesRequest$maxResults": "

The maximum number of results to return per page.

", + "QueryAssistantRequest$maxResults": "

The maximum number of results to return per page.

", + "SearchContentRequest$maxResults": "

The maximum number of results to return per page.

", + "SearchQuickResponsesRequest$maxResults": "

The maximum number of results to return per page.

", + "SearchSessionsRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "Name": { + "base": null, + "refs": { + "AssistantData$name": "

The name.

", + "AssistantSummary$name": "

The name of the assistant.

", + "ContentData$name": "

The name of the content.

", + "ContentSummary$name": "

The name of the content.

", + "CreateAssistantRequest$name": "

The name of the assistant.

", + "CreateContentRequest$name": "

The name of the content. Each piece of content in a knowledge base must have a unique name. You can retrieve a piece of content using only its knowledge base and its name with the SearchContent API.

", + "CreateKnowledgeBaseRequest$name": "

The name of the knowledge base.

", + "CreateSessionRequest$name": "

The name of the session.

", + "KnowledgeBaseData$name": "

The name of the knowledge base.

", + "KnowledgeBaseSummary$name": "

The name of the knowledge base.

", + "SessionData$name": "

The name of the session.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "ListAssistantAssociationsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListAssistantAssociationsResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListAssistantsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListAssistantsResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListContentsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListContentsResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "QueryAssistantRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "QueryAssistantResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "SearchContentRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "SearchContentResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "SearchSessionsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "SearchSessionsResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

" + } + }, + "NonEmptyString": { + "base": null, + "refs": { + "ConnectConfiguration$instanceId": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "ContentData$revisionId": "

The identifier of the content revision.

", + "ContentMetadata$key": null, + "ContentMetadata$value": null, + "ContentSummary$revisionId": "

The identifier of the revision of the content.

", + "CreateContentRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "CreateKnowledgeBaseRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "CreateQuickResponseRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "Filter$value": "

The desired field value on which to filter.

", + "Headers$key": null, + "Headers$value": null, + "ListImportJobsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListImportJobsResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListKnowledgeBasesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListKnowledgeBasesResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListQuickResponsesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListQuickResponsesResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ObjectFieldsList$member": null, + "QueryConditionItem$value": "

The value for the query condition to query on.

", + "QuickResponseFilterField$name": "

The name of the attribute field to filter the quick responses by.

", + "QuickResponseOrderField$name": "

The name of the attribute to order the quick response query results by.

", + "QuickResponseQueryField$name": "

The name of the attribute to query the quick responses by.

", + "SearchQuickResponsesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "SearchQuickResponsesResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ServerSideEncryptionConfiguration$kmsKeyId": "

The customer managed key used for encryption. For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance. For information about valid ID values, see Key identifiers (KeyId).

", + "StartImportJobRequest$clientToken": "

The tags used to organize, track, or control access for this resource.

", + "UpdateContentRequest$revisionId": "

The revisionId of the content resource to update, taken from an earlier call to GetContent, GetContentSummary, SearchContent, or ListContents. If included, this argument acts as an optimistic lock to ensure content was not modified since it was last read. If it has been modified, this API throws a PreconditionFailedException.

" + } + }, + "NotifyRecommendationsReceivedError": { + "base": "

An error occurred when creating a recommendation.

", + "refs": { + "NotifyRecommendationsReceivedErrorList$member": null + } + }, + "NotifyRecommendationsReceivedErrorList": { + "base": null, + "refs": { + "NotifyRecommendationsReceivedResponse$errors": "

The identifiers of recommendations that are causing errors.

" + } + }, + "NotifyRecommendationsReceivedErrorMessage": { + "base": null, + "refs": { + "NotifyRecommendationsReceivedError$message": "

A recommendation is causing an error.

" + } + }, + "NotifyRecommendationsReceivedRequest": { + "base": null, + "refs": { + } + }, + "NotifyRecommendationsReceivedResponse": { + "base": null, + "refs": { + } + }, + "ObjectFieldsList": { + "base": null, + "refs": { + "AppIntegrationsConfiguration$objectFields": "

The fields from the source that are made available to your agents in Amazon Q. Optional if ObjectConfiguration is included in the provided DataIntegration.

  • For Salesforce, you must include at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted.

  • For ServiceNow, you must include at least number, short_description, sys_mod_count, workflow_state, and active.

  • For Zendesk, you must include at least id, title, updated_at, and draft.

Make sure to include additional fields. These fields are indexed and used to source recommendations.

" + } + }, + "Order": { + "base": null, + "refs": { + "QuickResponseOrderField$order": "

The order at which the quick responses are sorted by.

" + } + }, + "PreconditionFailedException": { + "base": "

The provided revisionId does not match, indicating the content has been modified since it was last read.

", + "refs": { + } + }, + "Priority": { + "base": null, + "refs": { + "QuickResponseQueryField$priority": "

The importance of the attribute field when calculating query result relevancy scores. The value set for this parameter affects the ordering of search results.

" + } + }, + "PutFeedbackRequest": { + "base": null, + "refs": { + } + }, + "PutFeedbackResponse": { + "base": null, + "refs": { + } + }, + "QueryAssistantRequest": { + "base": null, + "refs": { + } + }, + "QueryAssistantResponse": { + "base": null, + "refs": { + } + }, + "QueryCondition": { + "base": "

Information about how to query content.

", + "refs": { + "QueryConditionExpression$member": null + } + }, + "QueryConditionComparisonOperator": { + "base": null, + "refs": { + "QueryConditionItem$comparator": "

The comparison operator for query condition to query on.

" + } + }, + "QueryConditionExpression": { + "base": null, + "refs": { + "QueryAssistantRequest$queryCondition": "

Information about how to query content.

" + } + }, + "QueryConditionFieldName": { + "base": null, + "refs": { + "QueryConditionItem$field": "

The name of the field for query condition to query on.

" + } + }, + "QueryConditionItem": { + "base": "

The condition for the query.

", + "refs": { + "QueryCondition$single": "

The condition for the query.

" + } + }, + "QueryRecommendationTriggerData": { + "base": "

Data associated with the QUERY RecommendationTriggerType.

", + "refs": { + "RecommendationTriggerData$query": "

Data associated with the QUERY RecommendationTriggerType.

" + } + }, + "QueryResultType": { + "base": null, + "refs": { + "ResultData$type": "

The type of the query result.

" + } + }, + "QueryResultsList": { + "base": null, + "refs": { + "QueryAssistantResponse$results": "

The results of the query.

" + } + }, + "QueryText": { + "base": null, + "refs": { + "QueryAssistantRequest$queryText": "

The text to search for.

", + "QueryRecommendationTriggerData$text": "

The text associated with the recommendation trigger.

" + } + }, + "QuickResponseContent": { + "base": null, + "refs": { + "QuickResponseContentProvider$content": "

The content of the quick response.

", + "QuickResponseDataProvider$content": "

The content of the quick response.

" + } + }, + "QuickResponseContentProvider": { + "base": "

The container quick response content.

", + "refs": { + "QuickResponseContents$markdown": null, + "QuickResponseContents$plainText": null + } + }, + "QuickResponseContents": { + "base": "

The content of the quick response stored in different media types.

", + "refs": { + "QuickResponseData$contents": "

The contents of the quick response.

", + "QuickResponseSearchResultData$contents": "

The contents of the quick response.

" + } + }, + "QuickResponseData": { + "base": "

Information about the quick response.

", + "refs": { + "CreateQuickResponseResponse$quickResponse": "

The quick response.

", + "GetQuickResponseResponse$quickResponse": "

The quick response.

", + "UpdateQuickResponseResponse$quickResponse": "

The quick response.

" + } + }, + "QuickResponseDataProvider": { + "base": "

The container of quick response data.

", + "refs": { + "CreateQuickResponseRequest$content": "

The content of the quick response.

", + "UpdateQuickResponseRequest$content": "

The updated content of the quick response.

" + } + }, + "QuickResponseDescription": { + "base": null, + "refs": { + "CreateQuickResponseRequest$description": "

The description of the quick response.

", + "QuickResponseData$description": "

The description of the quick response.

", + "QuickResponseSearchResultData$description": "

The description of the quick response.

", + "QuickResponseSummary$description": "

The description of the quick response.

", + "UpdateQuickResponseRequest$description": "

The updated description of the quick response.

" + } + }, + "QuickResponseFilterField": { + "base": "

The quick response fields to filter the quick response query results by.

The following is the list of supported field names.

  • name

  • description

  • shortcutKey

  • isActive

  • channels

  • language

  • contentType

  • createdTime

  • lastModifiedTime

  • lastModifiedBy

  • groupingConfiguration.criteria

  • groupingConfiguration.values

", + "refs": { + "QuickResponseFilterFieldList$member": null + } + }, + "QuickResponseFilterFieldList": { + "base": null, + "refs": { + "QuickResponseSearchExpression$filters": "

The configuration of filtering rules applied to quick response query results.

" + } + }, + "QuickResponseFilterOperator": { + "base": null, + "refs": { + "QuickResponseFilterField$operator": "

The operator to use for filtering.

" + } + }, + "QuickResponseFilterValue": { + "base": null, + "refs": { + "QuickResponseFilterValueList$member": null + } + }, + "QuickResponseFilterValueList": { + "base": null, + "refs": { + "QuickResponseFilterField$values": "

The values of attribute field to filter the quick response by.

" + } + }, + "QuickResponseName": { + "base": null, + "refs": { + "CreateQuickResponseRequest$name": "

The name of the quick response.

", + "QuickResponseData$name": "

The name of the quick response.

", + "QuickResponseSearchResultData$name": "

The name of the quick response.

", + "QuickResponseSummary$name": "

The name of the quick response.

", + "UpdateQuickResponseRequest$name": "

The name of the quick response.

" + } + }, + "QuickResponseOrderField": { + "base": "

The quick response fields to order the quick response query results by.

The following is the list of supported field names.

  • name

  • description

  • shortcutKey

  • isActive

  • channels

  • language

  • contentType

  • createdTime

  • lastModifiedTime

  • lastModifiedBy

  • groupingConfiguration.criteria

  • groupingConfiguration.values

", + "refs": { + "QuickResponseSearchExpression$orderOnField": "

The quick response attribute fields on which the query results are ordered.

" + } + }, + "QuickResponseQueryField": { + "base": "

The quick response fields to query quick responses by.

The following is the list of supported field names.

  • content

  • name

  • description

  • shortcutKey

", + "refs": { + "QuickResponseQueryFieldList$member": null + } + }, + "QuickResponseQueryFieldList": { + "base": null, + "refs": { + "QuickResponseSearchExpression$queries": "

The quick response query expressions.

" + } + }, + "QuickResponseQueryOperator": { + "base": null, + "refs": { + "QuickResponseQueryField$operator": "

The operator to use for matching attribute field values in the query.

" + } + }, + "QuickResponseQueryValue": { + "base": null, + "refs": { + "QuickResponseQueryValueList$member": null + } + }, + "QuickResponseQueryValueList": { + "base": null, + "refs": { + "QuickResponseQueryField$values": "

The values of the attribute to query the quick responses by.

" + } + }, + "QuickResponseSearchExpression": { + "base": "

Information about the import job.

", + "refs": { + "SearchQuickResponsesRequest$searchExpression": "

The search expression for querying the quick response.

" + } + }, + "QuickResponseSearchResultData": { + "base": "

The result of quick response search.

", + "refs": { + "QuickResponseSearchResultsList$member": null + } + }, + "QuickResponseSearchResultsList": { + "base": null, + "refs": { + "SearchQuickResponsesResponse$results": "

The results of the quick response search.

" + } + }, + "QuickResponseStatus": { + "base": null, + "refs": { + "QuickResponseData$status": "

The status of the quick response data.

", + "QuickResponseSearchResultData$status": "

The resource status of the quick response.

", + "QuickResponseSummary$status": "

The resource status of the quick response.

" + } + }, + "QuickResponseSummary": { + "base": "

The summary information about the quick response.

", + "refs": { + "QuickResponseSummaryList$member": null + } + }, + "QuickResponseSummaryList": { + "base": null, + "refs": { + "ListQuickResponsesResponse$quickResponseSummaries": "

Summary information about the quick responses.

" + } + }, + "QuickResponseType": { + "base": null, + "refs": { + "CreateQuickResponseRequest$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for a quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for a quick response written in richtext.

", + "QuickResponseData$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

", + "QuickResponseSearchResultData$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

", + "QuickResponseSummary$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

", + "UpdateQuickResponseRequest$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

" + } + }, + "RankingData": { + "base": "

Details about the source content ranking data.

", + "refs": { + "ContentDataDetails$rankingData": "

Details about the content ranking data.

", + "GenerativeDataDetails$rankingData": "

Details about the generative content ranking data.

", + "SourceContentDataDetails$rankingData": "

Details about the source content ranking data.

" + } + }, + "RecommendationData": { + "base": "

Information about the recommendation.

", + "refs": { + "RecommendationList$member": null + } + }, + "RecommendationId": { + "base": null, + "refs": { + "NotifyRecommendationsReceivedError$recommendationId": "

The identifier of the recommendation that is in error.

", + "RecommendationData$recommendationId": "

The identifier of the recommendation.

", + "RecommendationIdList$member": null + } + }, + "RecommendationIdList": { + "base": null, + "refs": { + "NotifyRecommendationsReceivedRequest$recommendationIds": "

The identifiers of the recommendations.

", + "NotifyRecommendationsReceivedResponse$recommendationIds": "

The identifiers of the recommendations.

", + "RecommendationTrigger$recommendationIds": "

The identifiers of the recommendations.

" + } + }, + "RecommendationList": { + "base": null, + "refs": { + "GetRecommendationsResponse$recommendations": "

The recommendations.

" + } + }, + "RecommendationSourceType": { + "base": null, + "refs": { + "RecommendationTrigger$source": "

The source of the recommendation trigger.

  • ISSUE_DETECTION: The corresponding recommendations were triggered by a Contact Lens issue.

  • RULE_EVALUATION: The corresponding recommendations were triggered by a Contact Lens rule.

" + } + }, + "RecommendationTrigger": { + "base": "

A recommendation trigger provides context on the event that produced the referenced recommendations. Recommendations are only referenced in recommendationIds by a single RecommendationTrigger.

", + "refs": { + "RecommendationTriggerList$member": null + } + }, + "RecommendationTriggerData": { + "base": "

A union type containing information related to the trigger.

", + "refs": { + "RecommendationTrigger$data": "

A union type containing information related to the trigger.

" + } + }, + "RecommendationTriggerList": { + "base": null, + "refs": { + "GetRecommendationsResponse$triggers": "

The triggers corresponding to recommendations.

" + } + }, + "RecommendationTriggerType": { + "base": null, + "refs": { + "RecommendationTrigger$type": "

The type of recommendation trigger.

" + } + }, + "RecommendationType": { + "base": null, + "refs": { + "RecommendationData$type": "

The type of recommendation.

" + } + }, + "Relevance": { + "base": null, + "refs": { + "GenerativeContentFeedbackData$relevance": "

The relevance of the feedback.

" + } + }, + "RelevanceLevel": { + "base": null, + "refs": { + "RankingData$relevanceLevel": "

The relevance score of the content.

", + "RecommendationData$relevanceLevel": "

The relevance level of the recommendation.

" + } + }, + "RelevanceScore": { + "base": null, + "refs": { + "RankingData$relevanceScore": "

The relevance level of the recommendation.

", + "RecommendationData$relevanceScore": "

The relevance score of the recommendation.

", + "ResultData$relevanceScore": "

The relevance score of the results.

" + } + }, + "RemoveKnowledgeBaseTemplateUriRequest": { + "base": null, + "refs": { + } + }, + "RemoveKnowledgeBaseTemplateUriResponse": { + "base": null, + "refs": { + } + }, + "RenderingConfiguration": { + "base": "

Information about how to render the content.

", + "refs": { + "CreateKnowledgeBaseRequest$renderingConfiguration": "

Information about how to render the content.

", + "KnowledgeBaseData$renderingConfiguration": "

Information about how to render the content.

", + "KnowledgeBaseSummary$renderingConfiguration": "

Information about how to render the content.

" + } + }, + "RequestTimeoutException": { + "base": "

The request reached the service more than 15 minutes after the date stamp on the request or more than 15 minutes after the request expiration date (such as for pre-signed URLs), or the date stamp on the request is more than 15 minutes in the future.

", + "refs": { + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource does not exist.

", + "refs": { + } + }, + "ResultData": { + "base": "

Information about the result.

", + "refs": { + "QueryResultsList$member": null + } + }, + "SearchContentRequest": { + "base": null, + "refs": { + } + }, + "SearchContentResponse": { + "base": null, + "refs": { + } + }, + "SearchExpression": { + "base": "

The search expression.

", + "refs": { + "SearchContentRequest$searchExpression": "

The search expression to filter results.

", + "SearchSessionsRequest$searchExpression": "

The search expression to filter results.

" + } + }, + "SearchQuickResponsesRequest": { + "base": null, + "refs": { + } + }, + "SearchQuickResponsesResponse": { + "base": null, + "refs": { + } + }, + "SearchSessionsRequest": { + "base": null, + "refs": { + } + }, + "SearchSessionsResponse": { + "base": null, + "refs": { + } + }, + "SensitiveString": { + "base": null, + "refs": { + "DocumentText$text": "

Text in the document.

", + "GenerativeDataDetails$completion": "

The LLM response.

" + } + }, + "ServerSideEncryptionConfiguration": { + "base": "

The configuration information for the customer managed key used for encryption.

", + "refs": { + "AssistantData$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q. To use Amazon Q with chat, the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions to the connect.amazonaws.com service principal.

For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance.

", + "AssistantSummary$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q. To use Amazon Q with chat, the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions to the connect.amazonaws.com service principal.

For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance.

", + "CreateAssistantRequest$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

The customer managed key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q. To use Amazon Q with chat, the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions to the connect.amazonaws.com service principal.

For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance.

", + "CreateKnowledgeBaseRequest$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q.

For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance.

", + "KnowledgeBaseData$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q.

For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance.

", + "KnowledgeBaseSummary$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using the key to invoke Amazon Q.

For more information about setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect for your instance.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

You've exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use service quotas to request a service quota increase.

", + "refs": { + } + }, + "SessionData": { + "base": "

Information about the session.

", + "refs": { + "CreateSessionResponse$session": "

The session.

", + "GetSessionResponse$session": "

The session.

" + } + }, + "SessionIntegrationConfiguration": { + "base": "

The configuration information for the session integration.

", + "refs": { + "SessionData$integrationConfiguration": "

The configuration information for the session integration.

" + } + }, + "SessionSummaries": { + "base": null, + "refs": { + "SearchSessionsResponse$sessionSummaries": "

Summary information about the sessions.

" + } + }, + "SessionSummary": { + "base": "

Summary information about the session.

", + "refs": { + "SessionSummaries$member": null + } + }, + "ShortCutKey": { + "base": null, + "refs": { + "CreateQuickResponseRequest$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

", + "QuickResponseData$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

", + "QuickResponseSearchResultData$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

", + "UpdateQuickResponseRequest$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

" + } + }, + "SourceConfiguration": { + "base": "

Configuration information about the external data source.

", + "refs": { + "CreateKnowledgeBaseRequest$sourceConfiguration": "

The source of the knowledge base content. Only set this argument for EXTERNAL knowledge bases.

", + "KnowledgeBaseData$sourceConfiguration": "

Source configuration information about the knowledge base.

", + "KnowledgeBaseSummary$sourceConfiguration": "

Configuration information about the external data source.

" + } + }, + "SourceContentDataDetails": { + "base": "

Details about the source content data.

", + "refs": { + "DataDetails$sourceContentData": "

Details about the content data.

" + } + }, + "SourceContentType": { + "base": null, + "refs": { + "SourceContentDataDetails$type": "

The type of the source content.

" + } + }, + "StartContentUploadRequest": { + "base": null, + "refs": { + } + }, + "StartContentUploadResponse": { + "base": null, + "refs": { + } + }, + "StartImportJobRequest": { + "base": null, + "refs": { + } + }, + "StartImportJobResponse": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "PreconditionFailedException$message": null, + "RequestTimeoutException$message": null, + "ResourceNotFoundException$message": null, + "ResourceNotFoundException$resourceName": "

The specified resource name.

", + "ServiceQuotaExceededException$message": null, + "TooManyTagsException$message": null, + "TooManyTagsException$resourceName": "

The specified resource name.

", + "ValidationException$message": null + } + }, + "SyntheticTimestamp_epoch_seconds": { + "base": null, + "refs": { + "ContentData$urlExpiry": "

The expiration time of the URL as an epoch timestamp.

", + "ImportJobData$createdTime": "

The timestamp when the import job was created.

", + "ImportJobData$lastModifiedTime": "

The timestamp when the import job data was last modified.

", + "ImportJobData$urlExpiry": "

The expiration time of the URL as an epoch timestamp.

", + "ImportJobSummary$createdTime": "

The timestamp when the import job was created.

", + "ImportJobSummary$lastModifiedTime": "

The timestamp when the import job was last modified.

", + "KnowledgeBaseData$lastContentModificationTime": "

An epoch timestamp indicating the most recent content modification inside the knowledge base. If no content exists in a knowledge base, this value is unset.

", + "QuickResponseData$createdTime": "

The timestamp when the quick response was created.

", + "QuickResponseData$lastModifiedTime": "

The timestamp when the quick response data was last modified.

", + "QuickResponseSearchResultData$createdTime": "

The timestamp when the quick response was created.

", + "QuickResponseSearchResultData$lastModifiedTime": "

The timestamp when the quick response search result data was last modified.

", + "QuickResponseSummary$createdTime": "

The timestamp when the quick response was created.

", + "QuickResponseSummary$lastModifiedTime": "

The timestamp when the quick response summary was last modified.

", + "StartContentUploadResponse$urlExpiry": "

The expiration time of the URL as an epoch timestamp.

" + } + }, + "TagKey": { + "base": null, + "refs": { + "TagKeyList$member": null, + "Tags$key": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

The tag keys.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tags$value": null + } + }, + "Tags": { + "base": null, + "refs": { + "AssistantAssociationData$tags": "

The tags used to organize, track, or control access for this resource.

", + "AssistantAssociationSummary$tags": "

The tags used to organize, track, or control access for this resource.

", + "AssistantData$tags": "

The tags used to organize, track, or control access for this resource.

", + "AssistantSummary$tags": "

The tags used to organize, track, or control access for this resource.

", + "ContentData$tags": "

The tags used to organize, track, or control access for this resource.

", + "ContentSummary$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateAssistantAssociationRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateAssistantRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateContentRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateKnowledgeBaseRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateQuickResponseRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateSessionRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "KnowledgeBaseData$tags": "

The tags used to organize, track, or control access for this resource.

", + "KnowledgeBaseSummary$tags": "

The tags used to organize, track, or control access for this resource.

", + "ListTagsForResourceResponse$tags": "

The tags used to organize, track, or control access for this resource.

", + "QuickResponseData$tags": "

The tags used to organize, track, or control access for this resource.

", + "QuickResponseSearchResultData$tags": "

The tags used to organize, track, or control access for this resource.

", + "QuickResponseSummary$tags": "

The tags used to organize, track, or control access for this resource.

", + "SessionData$tags": "

The tags used to organize, track, or control access for this resource.

", + "TagResourceRequest$tags": "

The tags used to organize, track, or control access for this resource.

" + } + }, + "TargetType": { + "base": null, + "refs": { + "PutFeedbackRequest$targetType": "

The type of the feedback target.

", + "PutFeedbackResponse$targetType": "

The type of the feedback target.

" + } + }, + "TextData": { + "base": "

Details about the source content text data.

", + "refs": { + "ContentDataDetails$textData": "

Details about the content text data.

", + "SourceContentDataDetails$textData": "

Details about the source content text data.

" + } + }, + "TimeToLive": { + "base": "

Expiration time in minutes

", + "refs": { + "StartContentUploadRequest$presignedUrlTimeToLive": "

The expected expiration time of the generated presigned URL, specified in minutes.

" + } + }, + "TooManyTagsException": { + "base": "

Amazon Q in Connect throws this exception if you have too many tags in your tag set.

", + "refs": { + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateContentRequest": { + "base": null, + "refs": { + } + }, + "UpdateContentResponse": { + "base": null, + "refs": { + } + }, + "UpdateKnowledgeBaseTemplateUriRequest": { + "base": null, + "refs": { + } + }, + "UpdateKnowledgeBaseTemplateUriResponse": { + "base": null, + "refs": { + } + }, + "UpdateQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "UpdateQuickResponseResponse": { + "base": null, + "refs": { + } + }, + "UploadId": { + "base": null, + "refs": { + "CreateContentRequest$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", + "ImportJobData$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", + "ImportJobSummary$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", + "StartContentUploadResponse$uploadId": "

The identifier of the upload.

", + "StartImportJobRequest$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", + "UpdateContentRequest$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

" + } + }, + "Uri": { + "base": null, + "refs": { + "ContentData$linkOutUri": "

The URI of the content.

", + "CreateContentRequest$overrideLinkOutUri": "

The URI you want to use for the article. If the knowledge base has a templateUri, setting this argument overrides it for this piece of content.

", + "RenderingConfiguration$templateUri": "

A URI template containing exactly one variable in ${variableName} format. This can only be set for EXTERNAL knowledge bases. For Salesforce, ServiceNow, and Zendesk, the variable must be one of the following:

  • Salesforce: Id, ArticleNumber, VersionNumber, Title, PublishStatus, or IsDeleted

  • ServiceNow: number, short_description, sys_mod_count, workflow_state, or active

  • Zendesk: id, title, updated_at, or draft

The variable is replaced with the actual value for a piece of content when calling GetContent.

", + "UpdateContentRequest$overrideLinkOutUri": "

The URI for the article. If the knowledge base has a templateUri, setting this argument overrides it for this piece of content. To remove an existing overrideLinkOurUri, exclude this argument and set removeOverrideLinkOutUri to true.

", + "UpdateKnowledgeBaseTemplateUriRequest$templateUri": "

The template URI to update.

" + } + }, + "Url": { + "base": null, + "refs": { + "ContentData$url": "

The URL of the content.

", + "ImportJobData$failedRecordReport": "

The link to donwload the information of resource data that failed to be imported.

", + "ImportJobData$url": "

The download link to the resource file that is uploaded to the import job.

", + "StartContentUploadResponse$url": "

The URL of the upload.

" + } + }, + "Uuid": { + "base": null, + "refs": { + "AssistantAssociationData$assistantAssociationId": "

The identifier of the assistant association.

", + "AssistantAssociationData$assistantId": "

The identifier of the Amazon Q assistant.

", + "AssistantAssociationInputData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "AssistantAssociationSummary$assistantAssociationId": "

The identifier of the assistant association.

", + "AssistantAssociationSummary$assistantId": "

The identifier of the Amazon Q assistant.

", + "AssistantData$assistantId": "

The identifier of the Amazon Q assistant.

", + "AssistantSummary$assistantId": "

The identifier of the Amazon Q assistant.

", + "ContentData$contentId": "

The identifier of the content.

", + "ContentData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "ContentReference$contentId": "

The identifier of the content.

", + "ContentReference$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "ContentSummary$contentId": "

The identifier of the content.

", + "ContentSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "DeleteImportJobRequest$importJobId": "

The identifier of the import job to be deleted.

", + "GenerativeReference$generationId": "

The identifier of the LLM model.

", + "GetImportJobRequest$importJobId": "

The identifier of the import job to retrieve.

", + "ImportJobData$importJobId": "

The identifier of the import job.

", + "ImportJobData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "ImportJobSummary$importJobId": "

The identifier of the import job.

", + "ImportJobSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "KnowledgeBaseAssociationData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "KnowledgeBaseData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "KnowledgeBaseSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "PutFeedbackRequest$targetId": "

The identifier of the feedback target.

", + "PutFeedbackResponse$assistantId": "

The identifier of the Amazon Q assistant.

", + "PutFeedbackResponse$targetId": "

The identifier of the feedback target.

", + "QuickResponseData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "QuickResponseData$quickResponseId": "

The identifier of the quick response.

", + "QuickResponseSearchResultData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "QuickResponseSearchResultData$quickResponseId": "

The identifier of the quick response.

", + "QuickResponseSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "QuickResponseSummary$quickResponseId": "

The identifier of the quick response.

", + "RecommendationTrigger$id": "

The identifier of the recommendation trigger.

", + "ResultData$resultId": "

The identifier of the result data.

", + "SessionData$sessionId": "

The identifier of the session.

", + "SessionSummary$assistantId": "

The identifier of the Amazon Q assistant.

", + "SessionSummary$sessionId": "

The identifier of the session.

", + "SourceContentDataDetails$id": "

The identifier of the source content.

" + } + }, + "UuidOrArn": { + "base": null, + "refs": { + "CreateAssistantAssociationRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "CreateContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "CreateQuickResponseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "CreateSessionRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteAssistantAssociationRequest$assistantAssociationId": "

The identifier of the assistant association. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteAssistantAssociationRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteAssistantRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteContentRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteImportJobRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "DeleteKnowledgeBaseRequest$knowledgeBaseId": "

The knowledge base to delete content from. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteQuickResponseRequest$knowledgeBaseId": "

The knowledge base from which the quick response is deleted. The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.

", + "DeleteQuickResponseRequest$quickResponseId": "

The identifier of the quick response to delete.

", + "GetAssistantAssociationRequest$assistantAssociationId": "

The identifier of the assistant association. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetAssistantAssociationRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetAssistantRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetContentRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetContentSummaryRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetContentSummaryRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetImportJobRequest$knowledgeBaseId": "

The identifier of the knowledge base that the import job belongs to.

", + "GetKnowledgeBaseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetQuickResponseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should be a QUICK_RESPONSES type knowledge base.

", + "GetQuickResponseRequest$quickResponseId": "

The identifier of the quick response.

", + "GetRecommendationsRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetRecommendationsRequest$sessionId": "

The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetSessionRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetSessionRequest$sessionId": "

The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListAssistantAssociationsRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListContentsRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListImportJobsRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListQuickResponsesRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "NotifyRecommendationsReceivedRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "NotifyRecommendationsReceivedRequest$sessionId": "

The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "PutFeedbackRequest$assistantId": "

The identifier of the Amazon Q assistant.

", + "PutFeedbackResponse$assistantArn": "

The Amazon Resource Name (ARN) of the Amazon Q assistant.

", + "QueryAssistantRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "QueryAssistantRequest$sessionId": "

The identifier of the Amazon Q session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "RemoveKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "SearchContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "SearchQuickResponsesRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "SearchSessionsRequest$assistantId": "

The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "StartContentUploadRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "StartImportJobRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

  • For importing Amazon Q quick responses, this should be a QUICK_RESPONSES type knowledge base.

", + "UpdateContentRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "UpdateContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN

", + "UpdateKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "UpdateQuickResponseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "UpdateQuickResponseRequest$quickResponseId": "

The identifier of the quick response.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by a service.

", + "refs": { + } + }, + "WaitTimeSeconds": { + "base": null, + "refs": { + "GetRecommendationsRequest$waitTimeSeconds": "

The duration (in seconds) for which the call waits for a recommendation to be made available before returning. If a recommendation is available, the call returns sooner than WaitTimeSeconds. If no messages are available and the wait time expires, the call returns successfully with an empty list.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://wisdom-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://wisdom-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://wisdom.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://wisdom.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://wisdom.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://wisdom.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://wisdom.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://wisdom.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/qconnect/2020-10-19/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/qconnect/2020-10-19/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,64 @@ +{ + "pagination": { + "ListAssistantAssociations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "assistantAssociationSummaries" + }, + "ListAssistants": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "assistantSummaries" + }, + "ListContents": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "contentSummaries" + }, + "ListImportJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "importJobSummaries" + }, + "ListKnowledgeBases": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "knowledgeBaseSummaries" + }, + "ListQuickResponses": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "quickResponseSummaries" + }, + "QueryAssistant": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "results" + }, + "SearchContent": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "contentSummaries" + }, + "SearchQuickResponses": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "results" + }, + "SearchSessions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "sessionSummaries" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -297,6 +297,24 @@ {"shape":"InternalFailureException"} ] }, + "CreateRoleMembership":{ + "name":"CreateRoleMembership", + "http":{ + "method":"POST", + "requestUri":"/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/members/{MemberName}" + }, + "input":{"shape":"CreateRoleMembershipRequest"}, + "output":{"shape":"CreateRoleMembershipResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"PreconditionNotMetException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceUnavailableException"} + ] + }, "CreateTemplate":{ "name":"CreateTemplate", "http":{ @@ -643,6 +661,22 @@ {"shape":"InternalFailureException"} ] }, + "DeleteIdentityPropagationConfig":{ + "name":"DeleteIdentityPropagationConfig", + "http":{ + "method":"DELETE", + "requestUri":"/accounts/{AwsAccountId}/identity-propagation-config/{Service}" + }, + "input":{"shape":"DeleteIdentityPropagationConfigRequest"}, + "output":{"shape":"DeleteIdentityPropagationConfigResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalFailureException"} + ] + }, "DeleteNamespace":{ "name":"DeleteNamespace", "http":{ @@ -678,6 +712,42 @@ {"shape":"InternalFailureException"} ] }, + "DeleteRoleCustomPermission":{ + "name":"DeleteRoleCustomPermission", + "http":{ + "method":"DELETE", + "requestUri":"/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/custom-permission" + }, + "input":{"shape":"DeleteRoleCustomPermissionRequest"}, + "output":{"shape":"DeleteRoleCustomPermissionResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"PreconditionNotMetException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceUnavailableException"} + ] + }, + "DeleteRoleMembership":{ + "name":"DeleteRoleMembership", + "http":{ + "method":"DELETE", + "requestUri":"/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/members/{MemberName}" + }, + "input":{"shape":"DeleteRoleMembershipRequest"}, + "output":{"shape":"DeleteRoleMembershipResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"PreconditionNotMetException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceUnavailableException"} + ] + }, "DeleteTemplate":{ "name":"DeleteTemplate", "http":{ @@ -1309,6 +1379,24 @@ {"shape":"InternalFailureException"} ] }, + "DescribeRoleCustomPermission":{ + "name":"DescribeRoleCustomPermission", + "http":{ + "method":"GET", + "requestUri":"/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/custom-permission" + }, + "input":{"shape":"DescribeRoleCustomPermissionRequest"}, + "output":{"shape":"DescribeRoleCustomPermissionResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"PreconditionNotMetException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceUnavailableException"} + ] + }, "DescribeTemplate":{ "name":"DescribeTemplate", "http":{ @@ -1835,6 +1923,22 @@ {"shape":"InternalFailureException"} ] }, + "ListIdentityPropagationConfigs":{ + "name":"ListIdentityPropagationConfigs", + "http":{ + "method":"GET", + "requestUri":"/accounts/{AwsAccountId}/identity-propagation-config" + }, + "input":{"shape":"ListIdentityPropagationConfigsRequest"}, + "output":{"shape":"ListIdentityPropagationConfigsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalFailureException"} + ] + }, "ListIngestions":{ "name":"ListIngestions", "http":{ @@ -1889,6 +1993,26 @@ {"shape":"InternalFailureException"} ] }, + "ListRoleMemberships":{ + "name":"ListRoleMemberships", + "http":{ + "method":"GET", + "requestUri":"/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/members" + }, + "input":{"shape":"ListRoleMembershipsRequest"}, + "output":{"shape":"ListRoleMembershipsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidNextTokenException"}, + {"shape":"PreconditionNotMetException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceUnavailableException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -2616,6 +2740,22 @@ {"shape":"InternalFailureException"} ] }, + "UpdateIdentityPropagationConfig":{ + "name":"UpdateIdentityPropagationConfig", + "http":{ + "method":"POST", + "requestUri":"/accounts/{AwsAccountId}/identity-propagation-config/{Service}" + }, + "input":{"shape":"UpdateIdentityPropagationConfigRequest"}, + "output":{"shape":"UpdateIdentityPropagationConfigResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalFailureException"} + ] + }, "UpdateIpRestriction":{ "name":"UpdateIpRestriction", "http":{ @@ -2668,6 +2808,24 @@ {"shape":"InternalFailureException"} ] }, + "UpdateRoleCustomPermission":{ + "name":"UpdateRoleCustomPermission", + "http":{ + "method":"PUT", + "requestUri":"/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/custom-permission" + }, + "input":{"shape":"UpdateRoleCustomPermissionRequest"}, + "output":{"shape":"UpdateRoleCustomPermissionResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"PreconditionNotMetException"}, + {"shape":"InternalFailureException"}, + {"shape":"ResourceUnavailableException"} + ] + }, "UpdateTemplate":{ "name":"UpdateTemplate", "http":{ @@ -3034,7 +3192,8 @@ "ParameterDeclarations":{"shape":"ParameterDeclarationList"}, "FilterGroups":{"shape":"FilterGroupList"}, "ColumnConfigurations":{"shape":"ColumnConfigurationList"}, - "AnalysisDefaults":{"shape":"AnalysisDefaults"} + "AnalysisDefaults":{"shape":"AnalysisDefaults"}, + "Options":{"shape":"AssetOptions"} } }, "AnalysisError":{ @@ -3259,7 +3418,10 @@ }, "AssetBundleExportJobAnalysisOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobAnalysisPropertyToOverrideList"} @@ -3283,7 +3445,10 @@ }, "AssetBundleExportJobDashboardOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobDashboardPropertyToOverrideList"} @@ -3307,7 +3472,10 @@ }, "AssetBundleExportJobDataSetOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobDataSetPropertyToOverrideList"} @@ -3331,7 +3499,10 @@ }, "AssetBundleExportJobDataSourceOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobDataSourcePropertyToOverrideList"} @@ -3385,7 +3556,10 @@ }, "AssetBundleExportJobRefreshScheduleOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobRefreshSchedulePropertyToOverrideList"} @@ -3430,7 +3604,9 @@ "CreatedTime":{"shape":"Timestamp"}, "AssetBundleExportJobId":{"shape":"ShortRestrictiveResourceId"}, "IncludeAllDependencies":{"shape":"Boolean"}, - "ExportFormat":{"shape":"AssetBundleExportFormat"} + "ExportFormat":{"shape":"AssetBundleExportFormat"}, + "IncludePermissions":{"shape":"Boolean"}, + "IncludeTags":{"shape":"Boolean"} } }, "AssetBundleExportJobSummaryList":{ @@ -3439,7 +3615,10 @@ }, "AssetBundleExportJobThemeOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobThemePropertyToOverrideList"} @@ -3463,7 +3642,10 @@ }, "AssetBundleExportJobVPCConnectionOverrideProperties":{ "type":"structure", - "required":["Properties"], + "required":[ + "Arn", + "Properties" + ], "members":{ "Arn":{"shape":"Arn"}, "Properties":{"shape":"AssetBundleExportJobVPCConnectionPropertyToOverrideList"} @@ -3489,6 +3671,23 @@ "max":10, "min":1 }, + "AssetBundleExportJobValidationStrategy":{ + "type":"structure", + "members":{ + "StrictModeForAllResources":{"shape":"Boolean"} + } + }, + "AssetBundleExportJobWarning":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Message":{"shape":"NonEmptyString"} + } + }, + "AssetBundleExportJobWarningList":{ + "type":"list", + "member":{"shape":"AssetBundleExportJobWarning"} + }, "AssetBundleImportBodyBlob":{ "type":"blob", "max":20971520, @@ -3516,6 +3715,40 @@ "max":50, "min":1 }, + "AssetBundleImportJobAnalysisOverridePermissions":{ + "type":"structure", + "required":[ + "AnalysisIds", + "Permissions" + ], + "members":{ + "AnalysisIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Permissions":{"shape":"AssetBundleResourcePermissions"} + } + }, + "AssetBundleImportJobAnalysisOverridePermissionsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobAnalysisOverridePermissions"}, + "max":1, + "min":1 + }, + "AssetBundleImportJobAnalysisOverrideTags":{ + "type":"structure", + "required":[ + "AnalysisIds", + "Tags" + ], + "members":{ + "AnalysisIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Tags":{"shape":"TagList"} + } + }, + "AssetBundleImportJobAnalysisOverrideTagsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobAnalysisOverrideTags"}, + "max":5, + "min":1 + }, "AssetBundleImportJobDashboardOverrideParameters":{ "type":"structure", "required":["DashboardId"], @@ -3530,6 +3763,38 @@ "max":50, "min":1 }, + "AssetBundleImportJobDashboardOverridePermissions":{ + "type":"structure", + "required":["DashboardIds"], + "members":{ + "DashboardIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Permissions":{"shape":"AssetBundleResourcePermissions"}, + "LinkSharingConfiguration":{"shape":"AssetBundleResourceLinkSharingConfiguration"} + } + }, + "AssetBundleImportJobDashboardOverridePermissionsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobDashboardOverridePermissions"}, + "max":2, + "min":1 + }, + "AssetBundleImportJobDashboardOverrideTags":{ + "type":"structure", + "required":[ + "DashboardIds", + "Tags" + ], + "members":{ + "DashboardIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Tags":{"shape":"TagList"} + } + }, + "AssetBundleImportJobDashboardOverrideTagsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobDashboardOverrideTags"}, + "max":5, + "min":1 + }, "AssetBundleImportJobDataSetOverrideParameters":{ "type":"structure", "required":["DataSetId"], @@ -3544,6 +3809,40 @@ "max":50, "min":1 }, + "AssetBundleImportJobDataSetOverridePermissions":{ + "type":"structure", + "required":[ + "DataSetIds", + "Permissions" + ], + "members":{ + "DataSetIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Permissions":{"shape":"AssetBundleResourcePermissions"} + } + }, + "AssetBundleImportJobDataSetOverridePermissionsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobDataSetOverridePermissions"}, + "max":2, + "min":1 + }, + "AssetBundleImportJobDataSetOverrideTags":{ + "type":"structure", + "required":[ + "DataSetIds", + "Tags" + ], + "members":{ + "DataSetIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Tags":{"shape":"TagList"} + } + }, + "AssetBundleImportJobDataSetOverrideTagsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobDataSetOverrideTags"}, + "max":5, + "min":1 + }, "AssetBundleImportJobDataSourceCredentialPair":{ "type":"structure", "required":[ @@ -3581,6 +3880,40 @@ "max":50, "min":1 }, + "AssetBundleImportJobDataSourceOverridePermissions":{ + "type":"structure", + "required":[ + "DataSourceIds", + "Permissions" + ], + "members":{ + "DataSourceIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Permissions":{"shape":"AssetBundleResourcePermissions"} + } + }, + "AssetBundleImportJobDataSourceOverridePermissionsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobDataSourceOverridePermissions"}, + "max":2, + "min":1 + }, + "AssetBundleImportJobDataSourceOverrideTags":{ + "type":"structure", + "required":[ + "DataSourceIds", + "Tags" + ], + "members":{ + "DataSourceIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Tags":{"shape":"TagList"} + } + }, + "AssetBundleImportJobDataSourceOverrideTagsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobDataSourceOverrideTags"}, + "max":5, + "min":1 + }, "AssetBundleImportJobError":{ "type":"structure", "members":{ @@ -3606,6 +3939,33 @@ "Dashboards":{"shape":"AssetBundleImportJobDashboardOverrideParametersList"} } }, + "AssetBundleImportJobOverridePermissions":{ + "type":"structure", + "members":{ + "DataSources":{"shape":"AssetBundleImportJobDataSourceOverridePermissionsList"}, + "DataSets":{"shape":"AssetBundleImportJobDataSetOverridePermissionsList"}, + "Themes":{"shape":"AssetBundleImportJobThemeOverridePermissionsList"}, + "Analyses":{"shape":"AssetBundleImportJobAnalysisOverridePermissionsList"}, + "Dashboards":{"shape":"AssetBundleImportJobDashboardOverridePermissionsList"} + } + }, + "AssetBundleImportJobOverrideTags":{ + "type":"structure", + "members":{ + "VPCConnections":{"shape":"AssetBundleImportJobVPCConnectionOverrideTagsList"}, + "DataSources":{"shape":"AssetBundleImportJobDataSourceOverrideTagsList"}, + "DataSets":{"shape":"AssetBundleImportJobDataSetOverrideTagsList"}, + "Themes":{"shape":"AssetBundleImportJobThemeOverrideTagsList"}, + "Analyses":{"shape":"AssetBundleImportJobAnalysisOverrideTagsList"}, + "Dashboards":{"shape":"AssetBundleImportJobDashboardOverrideTagsList"} + } + }, + "AssetBundleImportJobOverrideValidationStrategy":{ + "type":"structure", + "members":{ + "StrictModeForAllResources":{"shape":"Boolean"} + } + }, "AssetBundleImportJobRefreshScheduleOverrideParameters":{ "type":"structure", "required":[ @@ -3670,6 +4030,40 @@ "max":50, "min":1 }, + "AssetBundleImportJobThemeOverridePermissions":{ + "type":"structure", + "required":[ + "ThemeIds", + "Permissions" + ], + "members":{ + "ThemeIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Permissions":{"shape":"AssetBundleResourcePermissions"} + } + }, + "AssetBundleImportJobThemeOverridePermissionsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobThemeOverridePermissions"}, + "max":2, + "min":1 + }, + "AssetBundleImportJobThemeOverrideTags":{ + "type":"structure", + "required":[ + "ThemeIds", + "Tags" + ], + "members":{ + "ThemeIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Tags":{"shape":"TagList"} + } + }, + "AssetBundleImportJobThemeOverrideTagsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobThemeOverrideTags"}, + "max":5, + "min":1 + }, "AssetBundleImportJobVPCConnectionOverrideParameters":{ "type":"structure", "required":["VPCConnectionId"], @@ -3688,6 +4082,23 @@ "max":50, "min":1 }, + "AssetBundleImportJobVPCConnectionOverrideTags":{ + "type":"structure", + "required":[ + "VPCConnectionIds", + "Tags" + ], + "members":{ + "VPCConnectionIds":{"shape":"AssetBundleRestrictiveResourceIdList"}, + "Tags":{"shape":"TagList"} + } + }, + "AssetBundleImportJobVPCConnectionOverrideTagsList":{ + "type":"list", + "member":{"shape":"AssetBundleImportJobVPCConnectionOverrideTags"}, + "max":5, + "min":1 + }, "AssetBundleImportSource":{ "type":"structure", "members":{ @@ -3698,16 +4109,56 @@ "AssetBundleImportSourceDescription":{ "type":"structure", "members":{ - "Body":{"shape":"String"}, + "Body":{"shape":"SensitiveS3Uri"}, "S3Uri":{"shape":"S3Uri"} } }, + "AssetBundlePrincipalList":{ + "type":"list", + "member":{"shape":"Principal"}, + "max":64, + "min":1 + }, "AssetBundleResourceArns":{ "type":"list", "member":{"shape":"Arn"}, "max":100, "min":1 }, + "AssetBundleResourceLinkSharingConfiguration":{ + "type":"structure", + "members":{ + "Permissions":{"shape":"AssetBundleResourcePermissions"} + } + }, + "AssetBundleResourcePermissions":{ + "type":"structure", + "required":[ + "Principals", + "Actions" + ], + "members":{ + "Principals":{"shape":"AssetBundlePrincipalList"}, + "Actions":{"shape":"ActionList"} + } + }, + "AssetBundleRestrictiveResourceId":{ + "type":"string", + "pattern":"\\*|[\\w\\-]{1,2048}" + }, + "AssetBundleRestrictiveResourceIdList":{ + "type":"list", + "member":{"shape":"AssetBundleRestrictiveResourceId"}, + "max":50, + "min":1 + }, + "AssetOptions":{ + "type":"structure", + "members":{ + "Timezone":{"shape":"String"}, + "WeekStart":{"shape":"DayOfTheWeek"} + } + }, "AssignmentStatus":{ "type":"string", "enum":[ @@ -3786,6 +4237,21 @@ "type":"list", "member":{"shape":"AuthorSpecifiedAggregation"} }, + "AuthorizedTargetsByService":{ + "type":"structure", + "members":{ + "Service":{"shape":"ServiceType"}, + "AuthorizedTargets":{"shape":"AuthorizedTargetsList"} + } + }, + "AuthorizedTargetsByServices":{ + "type":"list", + "member":{"shape":"AuthorizedTargetsByService"} + }, + "AuthorizedTargetsList":{ + "type":"list", + "member":{"shape":"String"} + }, "AwsAccountId":{ "type":"string", "max":12, @@ -3999,6 +4465,14 @@ "IMAGERY" ] }, + "BigQueryParameters":{ + "type":"structure", + "required":["ProjectId"], + "members":{ + "ProjectId":{"shape":"ProjectId"}, + "DataSetRegion":{"shape":"DataSetRegion"} + } + }, "BinCountLimit":{ "type":"long", "max":1000, @@ -4268,6 +4742,7 @@ "members":{ "ColumnName":{"shape":"ColumnName"}, "NewColumnType":{"shape":"ColumnDataType"}, + "SubType":{"shape":"ColumnDataSubType"}, "Format":{"shape":"TypeCastFormat"} } }, @@ -4479,6 +4954,13 @@ "MEASURE" ] }, + "ColumnDataSubType":{ + "type":"string", + "enum":[ + "FLOAT", + "FIXED" + ] + }, "ColumnDataType":{ "type":"string", "enum":[ @@ -5018,7 +5500,9 @@ "SourceEntity":{"shape":"AnalysisSourceEntity"}, "ThemeArn":{"shape":"Arn"}, "Tags":{"shape":"TagList"}, - "Definition":{"shape":"AnalysisDefinition"} + "Definition":{"shape":"AnalysisDefinition"}, + "ValidationStrategy":{"shape":"ValidationStrategy"}, + "FolderArns":{"shape":"FolderArnList"} } }, "CreateAnalysisResponse":{ @@ -5067,7 +5551,10 @@ "VersionDescription":{"shape":"VersionDescription"}, "DashboardPublishOptions":{"shape":"DashboardPublishOptions"}, "ThemeArn":{"shape":"Arn"}, - "Definition":{"shape":"DashboardVersionDefinition"} + "Definition":{"shape":"DashboardVersionDefinition"}, + "ValidationStrategy":{"shape":"ValidationStrategy"}, + "FolderArns":{"shape":"FolderArnList"}, + "LinkSharingConfiguration":{"shape":"LinkSharingConfiguration"} } }, "CreateDashboardResponse":{ @@ -5112,7 +5599,8 @@ "ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"}, "Tags":{"shape":"TagList"}, "DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"}, - "DatasetParameters":{"shape":"DatasetParameterList"} + "DatasetParameters":{"shape":"DatasetParameterList"}, + "FolderArns":{"shape":"FolderArnList"} } }, "CreateDataSetResponse":{ @@ -5151,7 +5639,8 @@ "Permissions":{"shape":"ResourcePermissionList"}, "VpcConnectionProperties":{"shape":"VpcConnectionProperties"}, "SslProperties":{"shape":"SslProperties"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "FolderArns":{"shape":"FolderArnList"} } }, "CreateDataSourceResponse":{ @@ -5463,6 +5952,47 @@ "Arn":{"shape":"Arn"} } }, + "CreateRoleMembershipRequest":{ + "type":"structure", + "required":[ + "MemberName", + "AwsAccountId", + "Namespace", + "Role" + ], + "members":{ + "MemberName":{ + "shape":"GroupName", + "location":"uri", + "locationName":"MemberName" + }, + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Namespace":{ + "shape":"Namespace", + "location":"uri", + "locationName":"Namespace" + }, + "Role":{ + "shape":"Role", + "location":"uri", + "locationName":"Role" + } + } + }, + "CreateRoleMembershipResponse":{ + "type":"structure", + "members":{ + "RequestId":{"shape":"String"}, + "Status":{ + "shape":"StatusCode", + "location":"statusCode" + } + } + }, "CreateTemplateAliasRequest":{ "type":"structure", "required":[ @@ -5523,7 +6053,8 @@ "SourceEntity":{"shape":"TemplateSourceEntity"}, "Tags":{"shape":"TagList"}, "VersionDescription":{"shape":"VersionDescription"}, - "Definition":{"shape":"TemplateVersionDefinition"} + "Definition":{"shape":"TemplateVersionDefinition"}, + "ValidationStrategy":{"shape":"ValidationStrategy"} } }, "CreateTemplateResponse":{ @@ -6096,7 +6627,8 @@ "ParameterDeclarations":{"shape":"ParameterDeclarationList"}, "FilterGroups":{"shape":"FilterGroupList"}, "ColumnConfigurations":{"shape":"ColumnConfigurationList"}, - "AnalysisDefaults":{"shape":"AnalysisDefaults"} + "AnalysisDefaults":{"shape":"AnalysisDefaults"}, + "Options":{"shape":"AssetOptions"} } }, "DashboardVersionSummary":{ @@ -6273,15 +6805,18 @@ "SortPaths":{"shape":"DataPathValueList"} } }, + "DataPathType":{ + "type":"structure", + "members":{ + "PivotTableDataPathType":{"shape":"PivotTableDataPathType"} + } + }, "DataPathValue":{ "type":"structure", - "required":[ - "FieldId", - "FieldValue" - ], "members":{ "FieldId":{"shape":"FieldId"}, - "FieldValue":{"shape":"FieldValue"} + "FieldValue":{"shape":"FieldValue"}, + "DataPathType":{"shape":"DataPathType"} } }, "DataPathValueList":{ @@ -6415,6 +6950,11 @@ "RefreshConfiguration":{"shape":"RefreshConfiguration"} } }, + "DataSetRegion":{ + "type":"string", + "max":256, + "min":1 + }, "DataSetSchema":{ "type":"structure", "members":{ @@ -6550,7 +7090,10 @@ "TwitterParameters":{"shape":"TwitterParameters"}, "AmazonOpenSearchParameters":{"shape":"AmazonOpenSearchParameters"}, "ExasolParameters":{"shape":"ExasolParameters"}, - "DatabricksParameters":{"shape":"DatabricksParameters"} + "DatabricksParameters":{"shape":"DatabricksParameters"}, + "StarburstParameters":{"shape":"StarburstParameters"}, + "TrinoParameters":{"shape":"TrinoParameters"}, + "BigQueryParameters":{"shape":"BigQueryParameters"} } }, "DataSourceParametersList":{ @@ -6621,7 +7164,10 @@ "TIMESTREAM", "AMAZON_OPENSEARCH", "EXASOL", - "DATABRICKS" + "DATABRICKS", + "STARBURST", + "TRINO", + "BIGQUERY" ] }, "Database":{ @@ -6629,6 +7175,22 @@ "max":128, "min":1 }, + "DatabaseGroup":{ + "type":"string", + "max":64, + "min":1 + }, + "DatabaseGroupList":{ + "type":"list", + "member":{"shape":"DatabaseGroup"}, + "max":50, + "min":1 + }, + "DatabaseUser":{ + "type":"string", + "max":64, + "min":1 + }, "DatabricksParameters":{ "type":"structure", "required":[ @@ -6846,6 +7408,18 @@ "min":1, "pattern":"^(?:LAST_DAY_OF_MONTH|1[0-9]|2[0-8]|[12]|[3-9])$" }, + "DayOfTheWeek":{ + "type":"string", + "enum":[ + "SUNDAY", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY" + ] + }, "DayOfWeek":{ "type":"string", "enum":[ @@ -7416,6 +7990,35 @@ } } }, + "DeleteIdentityPropagationConfigRequest":{ + "type":"structure", + "required":[ + "AwsAccountId", + "Service" + ], + "members":{ + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Service":{ + "shape":"ServiceType", + "location":"uri", + "locationName":"Service" + } + } + }, + "DeleteIdentityPropagationConfigResponse":{ + "type":"structure", + "members":{ + "RequestId":{"shape":"String"}, + "Status":{ + "shape":"StatusCode", + "location":"statusCode" + } + } + }, "DeleteNamespaceRequest":{ "type":"structure", "required":[ @@ -7482,6 +8085,79 @@ "Arn":{"shape":"Arn"} } }, + "DeleteRoleCustomPermissionRequest":{ + "type":"structure", + "required":[ + "Role", + "AwsAccountId", + "Namespace" + ], + "members":{ + "Role":{ + "shape":"Role", + "location":"uri", + "locationName":"Role" + }, + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Namespace":{ + "shape":"Namespace", + "location":"uri", + "locationName":"Namespace" + } + } + }, + "DeleteRoleCustomPermissionResponse":{ + "type":"structure", + "members":{ + "RequestId":{"shape":"String"}, + "Status":{"shape":"StatusCode"} + } + }, + "DeleteRoleMembershipRequest":{ + "type":"structure", + "required":[ + "MemberName", + "Role", + "AwsAccountId", + "Namespace" + ], + "members":{ + "MemberName":{ + "shape":"GroupName", + "location":"uri", + "locationName":"MemberName" + }, + "Role":{ + "shape":"Role", + "location":"uri", + "locationName":"Role" + }, + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Namespace":{ + "shape":"Namespace", + "location":"uri", + "locationName":"Namespace" + } + } + }, + "DeleteRoleMembershipResponse":{ + "type":"structure", + "members":{ + "RequestId":{"shape":"String"}, + "Status":{ + "shape":"StatusCode", + "location":"statusCode" + } + } + }, "DeleteTemplateAliasRequest":{ "type":"structure", "required":[ @@ -8006,7 +8682,7 @@ "type":"structure", "members":{ "JobStatus":{"shape":"AssetBundleExportJobStatus"}, - "DownloadUrl":{"shape":"String"}, + "DownloadUrl":{"shape":"SensitiveS3Uri"}, "Errors":{"shape":"AssetBundleExportJobErrorList"}, "Arn":{"shape":"Arn"}, "CreatedTime":{"shape":"Timestamp"}, @@ -8020,7 +8696,11 @@ "Status":{ "shape":"StatusCode", "location":"statusCode" - } + }, + "IncludePermissions":{"shape":"Boolean"}, + "IncludeTags":{"shape":"Boolean"}, + "ValidationStrategy":{"shape":"AssetBundleExportJobValidationStrategy"}, + "Warnings":{"shape":"AssetBundleExportJobWarningList"} } }, "DescribeAssetBundleImportJobRequest":{ @@ -8059,7 +8739,10 @@ "Status":{ "shape":"StatusCode", "location":"statusCode" - } + }, + "OverridePermissions":{"shape":"AssetBundleImportJobOverridePermissions"}, + "OverrideTags":{"shape":"AssetBundleImportJobOverrideTags"}, + "OverrideValidationStrategy":{"shape":"AssetBundleImportJobOverrideValidationStrategy"} } }, "DescribeDashboardDefinitionRequest":{ @@ -8786,6 +9469,39 @@ "Arn":{"shape":"Arn"} } }, + "DescribeRoleCustomPermissionRequest":{ + "type":"structure", + "required":[ + "Role", + "AwsAccountId", + "Namespace" + ], + "members":{ + "Role":{ + "shape":"Role", + "location":"uri", + "locationName":"Role" + }, + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Namespace":{ + "shape":"Namespace", + "location":"uri", + "locationName":"Namespace" + } + } + }, + "DescribeRoleCustomPermissionResponse":{ + "type":"structure", + "members":{ + "CustomPermissionsName":{"shape":"RoleName"}, + "RequestId":{"shape":"String"}, + "Status":{"shape":"StatusCode"} + } + }, "DescribeTemplateAliasRequest":{ "type":"structure", "required":[ @@ -9792,7 +10508,8 @@ "members":{ "MatchOperator":{"shape":"CategoryFilterMatchOperator"}, "CategoryValues":{"shape":"CategoryValueList"}, - "SelectAllOptions":{"shape":"CategoryFilterSelectAllOptions"} + "SelectAllOptions":{"shape":"CategoryFilterSelectAllOptions"}, + "NullOption":{"shape":"FilterNullOption"} } }, "FilterListControl":{ @@ -9950,6 +10667,11 @@ "SharingModel":{"shape":"SharingModel"} } }, + "FolderArnList":{ + "type":"list", + "member":{"shape":"Arn"}, + "max":1 + }, "FolderColumnList":{ "type":"list", "member":{"shape":"String"}, @@ -10016,7 +10738,10 @@ }, "FolderType":{ "type":"string", - "enum":["SHARED"] + "enum":[ + "SHARED", + "RESTRICTED" + ] }, "Font":{ "type":"structure", @@ -11094,6 +11819,15 @@ "X" ] }, + "IdentityCenterConfiguration":{ + "type":"structure", + "members":{ + "EnableIdentityPropagation":{ + "shape":"Boolean", + "box":true + } + } + }, "IdentityMap":{ "type":"map", "key":{"shape":"String"}, @@ -11270,7 +12004,8 @@ ], "members":{ "Name":{"shape":"ColumnName"}, - "Type":{"shape":"InputColumnDataType"} + "Type":{"shape":"InputColumnDataType"}, + "SubType":{"shape":"ColumnDataSubType"} } }, "InputColumnDataType":{ @@ -12376,6 +13111,45 @@ } } }, + "ListIdentityPropagationConfigsRequest":{ + "type":"structure", + "required":["AwsAccountId"], + "members":{ + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "MaxResults":{ + "shape":"ListIdentityPropagationMaxResults", + "box":true, + "location":"querystring", + "locationName":"max-results" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"next-token" + } + } + }, + "ListIdentityPropagationConfigsResponse":{ + "type":"structure", + "members":{ + "Services":{"shape":"AuthorizedTargetsByServices"}, + "NextToken":{"shape":"String"}, + "Status":{ + "shape":"StatusCode", + "location":"statusCode" + }, + "RequestId":{"shape":"String"} + } + }, + "ListIdentityPropagationMaxResults":{ + "type":"integer", + "max":10, + "min":1 + }, "ListIngestionsRequest":{ "type":"structure", "required":[ @@ -12482,6 +13256,54 @@ "RequestId":{"shape":"String"} } }, + "ListRoleMembershipsRequest":{ + "type":"structure", + "required":[ + "Role", + "AwsAccountId", + "Namespace" + ], + "members":{ + "Role":{ + "shape":"Role", + "location":"uri", + "locationName":"Role" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"next-token" + }, + "MaxResults":{ + "shape":"MaxResults", + "box":true, + "location":"querystring", + "locationName":"max-results" + }, + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Namespace":{ + "shape":"Namespace", + "location":"uri", + "locationName":"Namespace" + } + } + }, + "ListRoleMembershipsResponse":{ + "type":"structure", + "members":{ + "MembersList":{"shape":"GroupsList"}, + "NextToken":{"shape":"String"}, + "RequestId":{"shape":"String"}, + "Status":{ + "shape":"StatusCode", + "location":"statusCode" + } + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["ResourceArn"], @@ -13145,7 +13967,9 @@ "enum":[ "DASHBOARD", "ANALYSIS", - "DATASET" + "DATASET", + "DATASOURCE", + "TOPIC" ] }, "MetricComparisonComputation":{ @@ -13605,7 +14429,8 @@ "members":{ "Name":{"shape":"ColumnName"}, "Description":{"shape":"ColumnDescriptiveText"}, - "Type":{"shape":"ColumnDataType"} + "Type":{"shape":"ColumnDataType"}, + "SubType":{"shape":"ColumnDataSubType"} } }, "OutputColumnList":{ @@ -14106,6 +14931,15 @@ "member":{"shape":"PivotTableDataPathOption"}, "max":100 }, + "PivotTableDataPathType":{ + "type":"string", + "enum":[ + "HIERARCHY_ROWS_LAYOUT_COLUMN", + "MULTIPLE_ROW_METRICS_COLUMN", + "EMPTY_COLUMN_HEADER", + "COUNT_METRIC_COLUMN" + ] + }, "PivotTableDimensionList":{ "type":"list", "member":{"shape":"DimensionField"}, @@ -14279,7 +15113,8 @@ "CustomLabel":{"shape":"String"}, "TotalCellStyle":{"shape":"TableCellStyle"}, "ValueCellStyle":{"shape":"TableCellStyle"}, - "MetricHeaderCellStyle":{"shape":"TableCellStyle"} + "MetricHeaderCellStyle":{"shape":"TableCellStyle"}, + "TotalAggregationOptions":{"shape":"TotalAggregationOptionList"} } }, "PixelLength":{"type":"string"}, @@ -14385,6 +15220,11 @@ "Visibility":{"shape":"Visibility"} } }, + "ProjectId":{ + "type":"string", + "max":256, + "min":1 + }, "ProjectOperation":{ "type":"structure", "required":["ProjectedColumns"], @@ -14600,6 +15440,19 @@ "max":30, "min":7 }, + "RedshiftIAMParameters":{ + "type":"structure", + "required":[ + "RoleArn", + "DatabaseUser" + ], + "members":{ + "RoleArn":{"shape":"RoleArn"}, + "DatabaseUser":{"shape":"DatabaseUser"}, + "DatabaseGroups":{"shape":"DatabaseGroupList"}, + "AutoCreateDatabaseUser":{"shape":"Boolean"} + } + }, "RedshiftParameters":{ "type":"structure", "required":["Database"], @@ -14607,7 +15460,9 @@ "Host":{"shape":"Host"}, "Port":{"shape":"OptionalPort"}, "Database":{"shape":"Database"}, - "ClusterId":{"shape":"ClusterId"} + "ClusterId":{"shape":"ClusterId"}, + "IAMParameters":{"shape":"RedshiftIAMParameters"}, + "IdentityCenterConfiguration":{"shape":"IdentityCenterConfiguration"} } }, "ReferenceLine":{ @@ -14632,7 +15487,8 @@ "members":{ "StaticConfiguration":{"shape":"ReferenceLineStaticDataConfiguration"}, "DynamicConfiguration":{"shape":"ReferenceLineDynamicDataConfiguration"}, - "AxisBinding":{"shape":"AxisBinding"} + "AxisBinding":{"shape":"AxisBinding"}, + "SeriesType":{"shape":"ReferenceLineSeriesType"} } }, "ReferenceLineDynamicDataConfiguration":{ @@ -14686,6 +15542,13 @@ "DOTTED" ] }, + "ReferenceLineSeriesType":{ + "type":"string", + "enum":[ + "BAR", + "LINE" + ] + }, "ReferenceLineStaticDataConfiguration":{ "type":"structure", "required":["Value"], @@ -14790,7 +15653,8 @@ "CustomPermissionsName":{"shape":"RoleName"}, "ExternalLoginFederationProviderType":{"shape":"String"}, "CustomFederationProviderUrl":{"shape":"String"}, - "ExternalLoginId":{"shape":"String"} + "ExternalLoginId":{"shape":"String"}, + "Tags":{"shape":"TagList"} } }, "RegisterUserResponse":{ @@ -14876,12 +15740,12 @@ }, "RelationalTableName":{ "type":"string", - "max":64, + "max":256, "min":1 }, "RelationalTableSchema":{ "type":"string", - "max":64 + "max":256 }, "RelativeDateTimeControlDisplayOptions":{ "type":"structure", @@ -15057,6 +15921,14 @@ "min":1, "pattern":"[\\w\\-]+" }, + "Role":{ + "type":"string", + "enum":[ + "ADMIN", + "AUTHOR", + "READER" + ] + }, "RoleArn":{ "type":"string", "max":2048, @@ -15761,6 +16633,10 @@ "SiteBaseUrl":{"shape":"SiteBaseUrl"} } }, + "ServiceType":{ + "type":"string", + "enum":["REDSHIFT"] + }, "SessionLifetimeInMinutes":{ "type":"long", "max":600, @@ -16087,6 +16963,17 @@ "MEDIAN" ] }, + "SimpleTotalAggregationFunction":{ + "type":"string", + "enum":[ + "DEFAULT", + "SUM", + "AVERAGE", + "MIN", + "MAX", + "NONE" + ] + }, "SiteBaseUrl":{ "type":"string", "max":1024, @@ -16399,6 +17286,27 @@ "DisableSsl":{"shape":"Boolean"} } }, + "StarburstParameters":{ + "type":"structure", + "required":[ + "Host", + "Port", + "Catalog" + ], + "members":{ + "Host":{"shape":"Host"}, + "Port":{"shape":"Port"}, + "Catalog":{"shape":"Catalog"}, + "ProductType":{"shape":"StarburstProductType"} + } + }, + "StarburstProductType":{ + "type":"string", + "enum":[ + "GALAXY", + "ENTERPRISE" + ] + }, "StartAssetBundleExportJobRequest":{ "type":"structure", "required":[ @@ -16417,7 +17325,10 @@ "ResourceArns":{"shape":"AssetBundleResourceArns"}, "IncludeAllDependencies":{"shape":"Boolean"}, "ExportFormat":{"shape":"AssetBundleExportFormat"}, - "CloudFormationOverridePropertyConfiguration":{"shape":"AssetBundleCloudFormationOverridePropertyConfiguration"} + "CloudFormationOverridePropertyConfiguration":{"shape":"AssetBundleCloudFormationOverridePropertyConfiguration"}, + "IncludePermissions":{"shape":"Boolean"}, + "IncludeTags":{"shape":"Boolean"}, + "ValidationStrategy":{"shape":"AssetBundleExportJobValidationStrategy"} } }, "StartAssetBundleExportJobResponse":{ @@ -16448,7 +17359,10 @@ "AssetBundleImportJobId":{"shape":"ShortRestrictiveResourceId"}, "AssetBundleImportSource":{"shape":"AssetBundleImportSource"}, "OverrideParameters":{"shape":"AssetBundleImportJobOverrideParameters"}, - "FailureAction":{"shape":"AssetBundleImportFailureAction"} + "FailureAction":{"shape":"AssetBundleImportFailureAction"}, + "OverridePermissions":{"shape":"AssetBundleImportJobOverridePermissions"}, + "OverrideTags":{"shape":"AssetBundleImportJobOverrideTags"}, + "OverrideValidationStrategy":{"shape":"AssetBundleImportJobOverrideValidationStrategy"} } }, "StartAssetBundleImportJobResponse":{ @@ -16913,7 +17827,8 @@ "type":"string", "enum":[ "START", - "END" + "END", + "AUTO" ] }, "TableTotalsScrollStatus":{ @@ -17136,7 +18051,8 @@ "ParameterDeclarations":{"shape":"ParameterDeclarationList"}, "FilterGroups":{"shape":"FilterGroupList"}, "ColumnConfigurations":{"shape":"ColumnConfigurationList"}, - "AnalysisDefaults":{"shape":"AnalysisDefaults"} + "AnalysisDefaults":{"shape":"AnalysisDefaults"}, + "Options":{"shape":"AssetOptions"} } }, "TemplateVersionSummary":{ @@ -17392,7 +18308,8 @@ "Column":{"shape":"ColumnIdentifier"}, "Value":{"shape":"Timestamp"}, "ParameterName":{"shape":"ParameterName"}, - "TimeGranularity":{"shape":"TimeGranularity"} + "TimeGranularity":{"shape":"TimeGranularity"}, + "RollingDate":{"shape":"RollingDateConfiguration"} } }, "TimeGranularity":{ @@ -17839,6 +18756,28 @@ "Value":{"shape":"MeasureField"} } }, + "TotalAggregationFunction":{ + "type":"structure", + "members":{ + "SimpleTotalAggregationFunction":{"shape":"SimpleTotalAggregationFunction"} + } + }, + "TotalAggregationOption":{ + "type":"structure", + "required":[ + "FieldId", + "TotalAggregationFunction" + ], + "members":{ + "FieldId":{"shape":"FieldId"}, + "TotalAggregationFunction":{"shape":"TotalAggregationFunction"} + } + }, + "TotalAggregationOptionList":{ + "type":"list", + "member":{"shape":"TotalAggregationOption"}, + "max":200 + }, "TotalOptions":{ "type":"structure", "members":{ @@ -17846,7 +18785,8 @@ "Placement":{"shape":"TableTotalsPlacement"}, "ScrollStatus":{"shape":"TableTotalsScrollStatus"}, "CustomLabel":{"shape":"String"}, - "TotalCellStyle":{"shape":"TableCellStyle"} + "TotalCellStyle":{"shape":"TableCellStyle"}, + "TotalAggregationOptions":{"shape":"TotalAggregationOptionList"} } }, "TransformOperation":{ @@ -17931,6 +18871,19 @@ "Visibility":{"shape":"Visibility"} } }, + "TrinoParameters":{ + "type":"structure", + "required":[ + "Host", + "Port", + "Catalog" + ], + "members":{ + "Host":{"shape":"Host"}, + "Port":{"shape":"Port"}, + "Catalog":{"shape":"Catalog"} + } + }, "TwitterParameters":{ "type":"structure", "required":[ @@ -18204,7 +19157,8 @@ "Parameters":{"shape":"Parameters"}, "SourceEntity":{"shape":"AnalysisSourceEntity"}, "ThemeArn":{"shape":"Arn"}, - "Definition":{"shape":"AnalysisDefinition"} + "Definition":{"shape":"AnalysisDefinition"}, + "ValidationStrategy":{"shape":"ValidationStrategy"} } }, "UpdateAnalysisResponse":{ @@ -18318,7 +19272,8 @@ "VersionDescription":{"shape":"VersionDescription"}, "DashboardPublishOptions":{"shape":"DashboardPublishOptions"}, "ThemeArn":{"shape":"Arn"}, - "Definition":{"shape":"DashboardVersionDefinition"} + "Definition":{"shape":"DashboardVersionDefinition"}, + "ValidationStrategy":{"shape":"ValidationStrategy"} } }, "UpdateDashboardResponse":{ @@ -18627,6 +19582,36 @@ } } }, + "UpdateIdentityPropagationConfigRequest":{ + "type":"structure", + "required":[ + "AwsAccountId", + "Service" + ], + "members":{ + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Service":{ + "shape":"ServiceType", + "location":"uri", + "locationName":"Service" + }, + "AuthorizedTargets":{"shape":"AuthorizedTargetsList"} + } + }, + "UpdateIdentityPropagationConfigResponse":{ + "type":"structure", + "members":{ + "RequestId":{"shape":"String"}, + "Status":{ + "shape":"StatusCode", + "location":"statusCode" + } + } + }, "UpdateIpRestrictionRequest":{ "type":"structure", "required":["AwsAccountId"], @@ -18654,7 +19639,7 @@ "UpdateLinkPermissionList":{ "type":"list", "member":{"shape":"ResourcePermission"}, - "max":2 + "max":100 }, "UpdatePublicSharingSettingsRequest":{ "type":"structure", @@ -18716,6 +19701,40 @@ "member":{"shape":"ResourcePermission"}, "max":100 }, + "UpdateRoleCustomPermissionRequest":{ + "type":"structure", + "required":[ + "CustomPermissionsName", + "Role", + "AwsAccountId", + "Namespace" + ], + "members":{ + "CustomPermissionsName":{"shape":"RoleName"}, + "Role":{ + "shape":"Role", + "location":"uri", + "locationName":"Role" + }, + "AwsAccountId":{ + "shape":"AwsAccountId", + "location":"uri", + "locationName":"AwsAccountId" + }, + "Namespace":{ + "shape":"Namespace", + "location":"uri", + "locationName":"Namespace" + } + } + }, + "UpdateRoleCustomPermissionResponse":{ + "type":"structure", + "members":{ + "RequestId":{"shape":"String"}, + "Status":{"shape":"StatusCode"} + } + }, "UpdateTemplateAliasRequest":{ "type":"structure", "required":[ @@ -18808,7 +19827,8 @@ "SourceEntity":{"shape":"TemplateSourceEntity"}, "VersionDescription":{"shape":"VersionDescription"}, "Name":{"shape":"TemplateName"}, - "Definition":{"shape":"TemplateVersionDefinition"} + "Definition":{"shape":"TemplateVersionDefinition"}, + "ValidationStrategy":{"shape":"ValidationStrategy"} } }, "UpdateTemplateResponse":{ @@ -19252,6 +20272,20 @@ "type":"list", "member":{"shape":"VPCConnectionSummary"} }, + "ValidationStrategy":{ + "type":"structure", + "required":["Mode"], + "members":{ + "Mode":{"shape":"ValidationStrategyMode"} + } + }, + "ValidationStrategyMode":{ + "type":"string", + "enum":[ + "STRICT", + "LENIENT" + ] + }, "ValueWhenUnsetOption":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -17,6 +17,7 @@ "CreateIngestion": "

Creates and starts a new SPICE ingestion for a dataset. You can manually refresh datasets in an Enterprise edition account 32 times in a 24-hour period. You can manually refresh datasets in a Standard edition account 8 times in a 24-hour period. Each 24-hour period is measured starting 24 hours before the current date and time.

Any ingestions operating on tagged datasets inherit the same tags automatically for use in access control. For an example, see How do I create an IAM policy to control access to Amazon EC2 resources using tags? in the Amazon Web Services Knowledge Center. Tags are visible on the tagged dataset, but not on the ingestion resource.

", "CreateNamespace": "

(Enterprise edition only) Creates a new namespace for you to use with Amazon QuickSight.

A namespace allows you to isolate the Amazon QuickSight users and groups that are registered for that namespace. Users that access the namespace can share assets only with other users or groups in the same namespace. They can't see users and groups in other namespaces. You can create a namespace after your Amazon Web Services account is subscribed to Amazon QuickSight. The namespace must be unique within the Amazon Web Services account. By default, there is a limit of 100 namespaces per Amazon Web Services account. To increase your limit, create a ticket with Amazon Web Services Support.

", "CreateRefreshSchedule": "

Creates a refresh schedule for a dataset. You can create up to 5 different schedules for a single dataset.

", + "CreateRoleMembership": "

Use CreateRoleMembership to add an existing Amazon QuickSight group to an existing role.

", "CreateTemplate": "

Creates a template either from a TemplateDefinition or from an existing Amazon QuickSight analysis or template. You can use the resulting template to create additional dashboards, templates, or analyses.

A template is an entity in Amazon QuickSight that encapsulates the metadata required to create an analysis and that you can use to create s dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with the analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.

", "CreateTemplateAlias": "

Creates a template alias for a template.

", "CreateTheme": "

Creates a theme.

A theme is set of configuration options for color and layout. Themes apply to analyses and dashboards. For more information, see Using Themes in Amazon QuickSight in the Amazon QuickSight User Guide.

", @@ -36,8 +37,11 @@ "DeleteGroup": "

Removes a user group from Amazon QuickSight.

", "DeleteGroupMembership": "

Removes a user from a group so that the user is no longer a member of the group.

", "DeleteIAMPolicyAssignment": "

Deletes an existing IAM policy assignment.

", + "DeleteIdentityPropagationConfig": "

Deletes all access scopes and authorized targets that are associated with a service from the Amazon QuickSight IAM Identity Center application.

This operation is only supported for Amazon QuickSight accounts that use IAM Identity Center.

", "DeleteNamespace": "

Deletes a namespace and the users and groups that are associated with the namespace. This is an asynchronous process. Assets including dashboards, analyses, datasets and data sources are not deleted. To delete these assets, you use the API operations for the relevant asset.

", "DeleteRefreshSchedule": "

Deletes a refresh schedule from a dataset.

", + "DeleteRoleCustomPermission": "

Removes custom permissions from the role.

", + "DeleteRoleMembership": "

Removes a group from a role.

", "DeleteTemplate": "

Deletes a template.

", "DeleteTemplateAlias": "

Deletes the item that the specified template alias points to. If you provide a specific alias, you delete the version of the template that the alias points to.

", "DeleteTheme": "

Deletes a theme.

", @@ -75,6 +79,7 @@ "DescribeIpRestriction": "

Provides a summary and status of IP rules.

", "DescribeNamespace": "

Describes the current namespace.

", "DescribeRefreshSchedule": "

Provides a summary of a refresh schedule.

", + "DescribeRoleCustomPermission": "

Describes all custom permissions that are mapped to a role.

", "DescribeTemplate": "

Describes a template's metadata.

", "DescribeTemplateAlias": "

Describes the template alias for a template.

", "DescribeTemplateDefinition": "

Provides a detailed description of the definition of a template.

If you do not need to know details about the content of a template, for instance if you are trying to check the status of a recently created or updated template, use the DescribeTemplate instead.

", @@ -105,9 +110,11 @@ "ListGroups": "

Lists all user groups in Amazon QuickSight.

", "ListIAMPolicyAssignments": "

Lists the IAM policy assignments in the current Amazon QuickSight account.

", "ListIAMPolicyAssignmentsForUser": "

Lists all of the IAM policy assignments, including the Amazon Resource Names (ARNs), for the IAM policies assigned to the specified user and group, or groups that the user belongs to.

", + "ListIdentityPropagationConfigs": "

Lists all services and authorized targets that the Amazon QuickSight IAM Identity Center application can access.

This operation is only supported for Amazon QuickSight accounts that use IAM Identity Center.

", "ListIngestions": "

Lists the history of SPICE ingestions for a dataset.

", "ListNamespaces": "

Lists the namespaces for the specified Amazon Web Services account. This operation doesn't list deleted namespaces.

", "ListRefreshSchedules": "

Lists the refresh schedules of a dataset. Each dataset can have up to 5 schedules.

", + "ListRoleMemberships": "

Lists all groups that are associated with a role.

", "ListTagsForResource": "

Lists the tags assigned to a resource.

", "ListTemplateAliases": "

Lists all the aliases of a template.

", "ListTemplateVersions": "

Lists all the versions of the templates in the current Amazon QuickSight account.

", @@ -132,7 +139,7 @@ "StartAssetBundleExportJob": "

Starts an Asset Bundle export job.

An Asset Bundle export job exports specified Amazon QuickSight assets. You can also choose to export any asset dependencies in the same job. Export jobs run asynchronously and can be polled with a DescribeAssetBundleExportJob API call. When a job is successfully completed, a download URL that contains the exported assets is returned. The URL is valid for 5 minutes and can be refreshed with a DescribeAssetBundleExportJob API call. Each Amazon QuickSight account can run up to 5 export jobs concurrently.

The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.

", "StartAssetBundleImportJob": "

Starts an Asset Bundle import job.

An Asset Bundle import job imports specified Amazon QuickSight assets into an Amazon QuickSight account. You can also choose to import a naming prefix and specified configuration overrides. The assets that are contained in the bundle file that you provide are used to create or update a new or existing asset in your Amazon QuickSight account. Each Amazon QuickSight account can run up to 5 import jobs concurrently.

The API caller must have the necessary \"create\", \"describe\", and \"update\" permissions in their IAM role to access each resource type that is contained in the bundle file before the resources can be imported.

", "StartDashboardSnapshotJob": "

Starts an asynchronous job that generates a dashboard snapshot. You can request one of the following format configurations per API call.

  • 1 paginated PDF

  • 1 Excel workbook

  • 5 CSVs

Poll job descriptions with a DescribeDashboardSnapshotJob API call. Once the job succeeds, use the DescribeDashboardSnapshotJobResult API to obtain the download URIs that the job generates.

", - "TagResource": "

Assigns one or more tags (key-value pairs) to the specified Amazon QuickSight resource.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource. Amazon QuickSight supports tagging on data set, data source, dashboard, template, and topic.

Tagging for Amazon QuickSight works in a similar way to tagging for other Amazon Web Services services, except for the following:

  • You can't use tags to track costs for Amazon QuickSight. This isn't possible because you can't tag the resources that Amazon QuickSight costs are based on, for example Amazon QuickSight storage capacity (SPICE), number of users, type of users, and usage metrics.

  • Amazon QuickSight doesn't currently support the tag editor for Resource Groups.

", + "TagResource": "

Assigns one or more tags (key-value pairs) to the specified Amazon QuickSight resource.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource. Amazon QuickSight supports tagging on data set, data source, dashboard, template, topic, and user.

Tagging for Amazon QuickSight works in a similar way to tagging for other Amazon Web Services services, except for the following:

  • Tags are used to track costs for users in Amazon QuickSight. You can't tag other resources that Amazon QuickSight costs are based on, such as storage capacoty (SPICE), session usage, alert consumption, or reporting units.

  • Amazon QuickSight doesn't currently support the tag editor for Resource Groups.

", "UntagResource": "

Removes a tag or tags from a resource.

", "UpdateAccountCustomization": "

Updates Amazon QuickSight customizations for the current Amazon Web Services Region. Currently, the only customization that you can use is a theme.

You can use customizations for your Amazon Web Services account or, if you specify a namespace, for a Amazon QuickSight namespace instead. Customizations that apply to a namespace override customizations that apply to an Amazon Web Services account. To find out which customizations apply, use the DescribeAccountCustomization API operation.

", "UpdateAccountSettings": "

Updates the Amazon QuickSight settings in your Amazon Web Services account.

", @@ -149,9 +156,11 @@ "UpdateFolderPermissions": "

Updates permissions of a folder.

", "UpdateGroup": "

Changes a group description.

", "UpdateIAMPolicyAssignment": "

Updates an existing IAM policy assignment. This operation updates only the optional parameter or parameters that are specified in the request. This overwrites all of the users included in Identities.

", + "UpdateIdentityPropagationConfig": "

Adds or updates services and authorized targets to configure what the Amazon QuickSight IAM Identity Center application can access.

This operation is only supported for Amazon QuickSight accounts using IAM Identity Center

", "UpdateIpRestriction": "

Updates the content and status of IP rules. To use this operation, you must provide the entire map of rules. You can use the DescribeIpRestriction operation to get the current rule map.

", "UpdatePublicSharingSettings": "

Use the UpdatePublicSharingSettings operation to turn on or turn off the public sharing settings of an Amazon QuickSight dashboard.

To use this operation, turn on session capacity pricing for your Amazon QuickSight account.

Before you can turn on public sharing on your account, make sure to give public sharing permissions to an administrative user in the Identity and Access Management (IAM) console. For more information on using IAM with Amazon QuickSight, see Using Amazon QuickSight with IAM in the Amazon QuickSight User Guide.

", "UpdateRefreshSchedule": "

Updates a refresh schedule for a dataset.

", + "UpdateRoleCustomPermission": "

Updates the custom permissions that are associated with a role.

", "UpdateTemplate": "

Updates a template from an existing Amazon QuickSight analysis or another template.

", "UpdateTemplateAlias": "

Updates the template alias of a template.

", "UpdateTemplatePermissions": "

Updates the resource permissions for a template.

", @@ -201,6 +210,7 @@ "ActionList": { "base": null, "refs": { + "AssetBundleResourcePermissions$Actions": "

A list of IAM actions to grant permissions on.

", "ResourcePermission$Actions": "

The IAM action to grant or revoke permissions on.

" } }, @@ -496,6 +506,7 @@ "AssetBundleExportJobSummary$Arn": "

The ARN of the export job.

", "AssetBundleExportJobThemeOverrideProperties$Arn": "

The ARN of the specific Theme resource whose override properties are configured in this structure.

", "AssetBundleExportJobVPCConnectionOverrideProperties$Arn": "

The ARN of the specific VPCConnection resource whose override properties are configured in this structure.

", + "AssetBundleExportJobWarning$Arn": "

The ARN of the resource whose processing caused a warning.

", "AssetBundleImportJobError$Arn": "

The ARN of the resource whose processing caused an error.

", "AssetBundleImportJobSummary$Arn": "

The ARN of the import job.

", "AssetBundleResourceArns$member": null, @@ -579,6 +590,7 @@ "DescribeTopicRefreshScheduleResponse$DatasetArn": "

The Amazon Resource Name (ARN) of the dataset.

", "DescribeTopicResponse$Arn": "

The Amazon Resource Name (ARN) of the topic.

", "Folder$Arn": "

The Amazon Resource Name (ARN) for the folder.

", + "FolderArnList$member": null, "FolderSummary$Arn": "

The Amazon Resource Name (ARN) of the folder.

", "GenerateEmbedUrlForAnonymousUserResponse$AnonymousUserArn": "

The Amazon Resource Name (ARN) to use for the anonymous Amazon QuickSight user.

", "GenerateEmbedUrlForRegisteredUserRequest$UserArn": "

The Amazon Resource Name for the registered user.

", @@ -883,6 +895,25 @@ "AssetBundleExportJobVPCConnectionOverrideProperties$Properties": "

A list of VPCConnection resource properties to generate variables for in the returned CloudFormation template.

" } }, + "AssetBundleExportJobValidationStrategy": { + "base": "

The option to relax the validation that is required to export each asset. When StrictModeForAllResource is set to true, validation is skipped for specific UI errors.

", + "refs": { + "DescribeAssetBundleExportJobResponse$ValidationStrategy": "

The validation strategy that is used to export the analysis or dashboard.

", + "StartAssetBundleExportJobRequest$ValidationStrategy": "

An optional parameter that determines which validation strategy to use for the export job. If StrictModeForAllResources is set to TRUE, strict validation for every error is enforced. If it is set to FALSE, validation is skipped for specific UI errors that are shown as warnings. The default value for StrictModeForAllResources is FALSE.

" + } + }, + "AssetBundleExportJobWarning": { + "base": "

Describes a warning that occurred during an Asset Bundle export job.

", + "refs": { + "AssetBundleExportJobWarningList$member": null + } + }, + "AssetBundleExportJobWarningList": { + "base": null, + "refs": { + "DescribeAssetBundleExportJobResponse$Warnings": "

An array of warning records that describe the analysis or dashboard that is exported. This array includes UI errors that can be skipped during the validation process.

This property only appears if StrictModeForAllResources in ValidationStrategy is set to FALSE.

" + } + }, "AssetBundleImportBodyBlob": { "base": null, "refs": { @@ -909,6 +940,30 @@ "AssetBundleImportJobOverrideParameters$Analyses": "

A list of overrides for any Analysis resources that are present in the asset bundle that is imported.

" } }, + "AssetBundleImportJobAnalysisOverridePermissions": { + "base": "

An object that contains a list of permissions to be applied to a list of analysis IDs.

", + "refs": { + "AssetBundleImportJobAnalysisOverridePermissionsList$member": null + } + }, + "AssetBundleImportJobAnalysisOverridePermissionsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverridePermissions$Analyses": "

A list of permissions overrides for any Analysis resources that are present in the asset bundle that is imported.

" + } + }, + "AssetBundleImportJobAnalysisOverrideTags": { + "base": "

An object that contains a list of tags to be assigned to a list of analysis IDs.

", + "refs": { + "AssetBundleImportJobAnalysisOverrideTagsList$member": null + } + }, + "AssetBundleImportJobAnalysisOverrideTagsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverrideTags$Analyses": "

A list of tag overrides for any Analysis resources that are present in the asset bundle that is imported.

" + } + }, "AssetBundleImportJobDashboardOverrideParameters": { "base": "

The override parameters for a single dashboard that is being imported.

", "refs": { @@ -921,6 +976,30 @@ "AssetBundleImportJobOverrideParameters$Dashboards": "

A list of overrides for any Dashboard resources that are present in the asset bundle that is imported.

" } }, + "AssetBundleImportJobDashboardOverridePermissions": { + "base": "

An object that contains a list of permissions to be applied to a list of dashboard IDs.

", + "refs": { + "AssetBundleImportJobDashboardOverridePermissionsList$member": null + } + }, + "AssetBundleImportJobDashboardOverridePermissionsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverridePermissions$Dashboards": "

A list of permissions overrides for any Dashboard resources that are present in the asset bundle that is imported.

" + } + }, + "AssetBundleImportJobDashboardOverrideTags": { + "base": "

An object that contains a list of tags to be assigned to a list of dashboard IDs.

", + "refs": { + "AssetBundleImportJobDashboardOverrideTagsList$member": null + } + }, + "AssetBundleImportJobDashboardOverrideTagsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverrideTags$Dashboards": "

A list of tag overrides for any Dashboard resources that are present in the asset bundle that is imported.

" + } + }, "AssetBundleImportJobDataSetOverrideParameters": { "base": "

The override parameters for a single dataset that is being imported.

", "refs": { @@ -933,6 +1012,30 @@ "AssetBundleImportJobOverrideParameters$DataSets": "

A list of overrides for any DataSet resources that are present in the asset bundle that is imported.

" } }, + "AssetBundleImportJobDataSetOverridePermissions": { + "base": "

An object that contains a list of permissions to be applied to a list of dataset IDs.

", + "refs": { + "AssetBundleImportJobDataSetOverridePermissionsList$member": null + } + }, + "AssetBundleImportJobDataSetOverridePermissionsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverridePermissions$DataSets": "

A list of permissions overrides for any DataSet resources that are present in the asset bundle that is imported.

" + } + }, + "AssetBundleImportJobDataSetOverrideTags": { + "base": "

An object that contains a list of tags to be assigned to a list of dataset IDs.

", + "refs": { + "AssetBundleImportJobDataSetOverrideTagsList$member": null + } + }, + "AssetBundleImportJobDataSetOverrideTagsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverrideTags$DataSets": "

A list of tag overrides for any DataSet resources that are present in the asset bundle that is imported.

" + } + }, "AssetBundleImportJobDataSourceCredentialPair": { "base": "

A username and password credential pair to use to import a data source resource.

", "refs": { @@ -957,6 +1060,30 @@ "AssetBundleImportJobOverrideParameters$DataSources": "

A list of overrides for any DataSource resources that are present in the asset bundle that is imported.

" } }, + "AssetBundleImportJobDataSourceOverridePermissions": { + "base": "

An object that contains a list of permissions to be applied to a list of data source IDs.

", + "refs": { + "AssetBundleImportJobDataSourceOverridePermissionsList$member": null + } + }, + "AssetBundleImportJobDataSourceOverridePermissionsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverridePermissions$DataSources": "

A list of permissions overrides for any DataSource resources that are present in the asset bundle that is imported.

" + } + }, + "AssetBundleImportJobDataSourceOverrideTags": { + "base": "

An object that contains a list of tags to be assigned to a list of data source IDs.

", + "refs": { + "AssetBundleImportJobDataSourceOverrideTagsList$member": null + } + }, + "AssetBundleImportJobDataSourceOverrideTagsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverrideTags$DataSources": "

A list of tag overrides for any DataSource resources that are present in the asset bundle that is imported.

" + } + }, "AssetBundleImportJobError": { "base": "

Describes an error that occurred within an Asset Bundle import execution.

", "refs": { @@ -973,8 +1100,29 @@ "AssetBundleImportJobOverrideParameters": { "base": "

A list of overrides that modify the asset bundle resource configuration before the resource is imported.

", "refs": { - "DescribeAssetBundleImportJobResponse$OverrideParameters": "

Optional overrides to be applied to the resource configuration before import.

", - "StartAssetBundleImportJobRequest$OverrideParameters": "

Optional overrides to be applied to the resource configuration before import.

" + "DescribeAssetBundleImportJobResponse$OverrideParameters": "

Optional overrides that are applied to the resource configuration before import.

", + "StartAssetBundleImportJobRequest$OverrideParameters": "

Optional overrides that are applied to the resource configuration before import.

" + } + }, + "AssetBundleImportJobOverridePermissions": { + "base": "

A structure that contains the override permission configurations that modify the permissions for specified resources before the resource is imported.

", + "refs": { + "DescribeAssetBundleImportJobResponse$OverridePermissions": "

Optional permission overrides that are applied to the resource configuration before import.

", + "StartAssetBundleImportJobRequest$OverridePermissions": "

Optional permission overrides that are applied to the resource configuration before import.

" + } + }, + "AssetBundleImportJobOverrideTags": { + "base": "

A structure that contains the override tag configuration that modify the tags that are assigned to specified resources before the resource is imported.

", + "refs": { + "DescribeAssetBundleImportJobResponse$OverrideTags": "

Optional tag overrides that are applied to the resource configuration before import.

", + "StartAssetBundleImportJobRequest$OverrideTags": "

Optional tag overrides that are applied to the resource configuration before import.

" + } + }, + "AssetBundleImportJobOverrideValidationStrategy": { + "base": "

An optional parameter that overrides the validation strategy for all analyses and dashboards before the resource is imported.

", + "refs": { + "DescribeAssetBundleImportJobResponse$OverrideValidationStrategy": "

An optional validation strategy override for all analyses and dashboards to be applied to the resource configuration before import.

", + "StartAssetBundleImportJobRequest$OverrideValidationStrategy": "

An optional validation strategy override for all analyses and dashboards that is applied to the resource configuration before import.

" } }, "AssetBundleImportJobRefreshScheduleOverrideParameters": { @@ -1026,6 +1174,30 @@ "AssetBundleImportJobOverrideParameters$Themes": "

A list of overrides for any Theme resources that are present in the asset bundle that is imported.

" } }, + "AssetBundleImportJobThemeOverridePermissions": { + "base": "

An object that contains a list of permissions to be applied to a list of theme IDs.

", + "refs": { + "AssetBundleImportJobThemeOverridePermissionsList$member": null + } + }, + "AssetBundleImportJobThemeOverridePermissionsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverridePermissions$Themes": "

A list of permissions overrides for any Theme resources that are present in the asset bundle that is imported.

" + } + }, + "AssetBundleImportJobThemeOverrideTags": { + "base": "

An object that contains a list of tags to be assigned to a list of theme IDs.

", + "refs": { + "AssetBundleImportJobThemeOverrideTagsList$member": null + } + }, + "AssetBundleImportJobThemeOverrideTagsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverrideTags$Themes": "

A list of tag overrides for any Theme resources that are present in the asset bundle that is imported.

" + } + }, "AssetBundleImportJobVPCConnectionOverrideParameters": { "base": "

The override parameters for a single VPC connection that is imported.

", "refs": { @@ -1038,6 +1210,18 @@ "AssetBundleImportJobOverrideParameters$VPCConnections": "

A list of overrides for any VPCConnection resources that are present in the asset bundle that is imported.

" } }, + "AssetBundleImportJobVPCConnectionOverrideTags": { + "base": "

An object that contains a list of tags to be assigned to a list of VPC connection IDs.

", + "refs": { + "AssetBundleImportJobVPCConnectionOverrideTagsList$member": null + } + }, + "AssetBundleImportJobVPCConnectionOverrideTagsList": { + "base": null, + "refs": { + "AssetBundleImportJobOverrideTags$VPCConnections": "

A list of tag overrides for any VPCConnection resources that are present in the asset bundle that is imported.

" + } + }, "AssetBundleImportSource": { "base": "

The source of the asset bundle zip file that contains the data that you want to import. The file must be in QUICKSIGHT_JSON format.

", "refs": { @@ -1050,6 +1234,12 @@ "DescribeAssetBundleImportJobResponse$AssetBundleImportSource": "

The source of the asset bundle zip file that contains the data that is imported by the job.

" } }, + "AssetBundlePrincipalList": { + "base": null, + "refs": { + "AssetBundleResourcePermissions$Principals": "

A list of principals to grant permissions on.

" + } + }, "AssetBundleResourceArns": { "base": null, "refs": { @@ -1057,6 +1247,53 @@ "StartAssetBundleExportJobRequest$ResourceArns": "

An array of resource ARNs to export. The following resources are supported.

  • Analysis

  • Dashboard

  • DataSet

  • DataSource

  • RefreshSchedule

  • Theme

  • VPCConnection

The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.

" } }, + "AssetBundleResourceLinkSharingConfiguration": { + "base": "

A structure that contains the configuration of a shared link to an Amazon QuickSight dashboard.

", + "refs": { + "AssetBundleImportJobDashboardOverridePermissions$LinkSharingConfiguration": "

A structure that contains the link sharing configurations that you want to apply overrides to.

" + } + }, + "AssetBundleResourcePermissions": { + "base": "

A structure that contains the permissions for the resource that you want to override in an asset bundle import job.

", + "refs": { + "AssetBundleImportJobAnalysisOverridePermissions$Permissions": "

A list of permissions for the analyses that you want to apply overrides to.

", + "AssetBundleImportJobDashboardOverridePermissions$Permissions": "

A list of permissions for the dashboards that you want to apply overrides to.

", + "AssetBundleImportJobDataSetOverridePermissions$Permissions": "

A list of permissions for the datasets that you want to apply overrides to.

", + "AssetBundleImportJobDataSourceOverridePermissions$Permissions": "

A list of permissions for the data source that you want to apply overrides to.

", + "AssetBundleImportJobThemeOverridePermissions$Permissions": "

A list of permissions for the themes that you want to apply overrides to.

", + "AssetBundleResourceLinkSharingConfiguration$Permissions": "

A list of link sharing permissions for the dashboards that you want to apply overrides to.

" + } + }, + "AssetBundleRestrictiveResourceId": { + "base": null, + "refs": { + "AssetBundleRestrictiveResourceIdList$member": null + } + }, + "AssetBundleRestrictiveResourceIdList": { + "base": null, + "refs": { + "AssetBundleImportJobAnalysisOverridePermissions$AnalysisIds": "

A list of analysis IDs that you want to apply overrides to. You can use * to override all analyses in this asset bundle.

", + "AssetBundleImportJobAnalysisOverrideTags$AnalysisIds": "

A list of analysis IDs that you want to apply overrides to. You can use * to override all analyses in this asset bundle.

", + "AssetBundleImportJobDashboardOverridePermissions$DashboardIds": "

A list of dashboard IDs that you want to apply overrides to. You can use * to override all dashboards in this asset bundle.

", + "AssetBundleImportJobDashboardOverrideTags$DashboardIds": "

A list of dashboard IDs that you want to apply overrides to. You can use * to override all dashboards in this asset bundle.

", + "AssetBundleImportJobDataSetOverridePermissions$DataSetIds": "

A list of dataset IDs that you want to apply overrides to. You can use * to override all datasets in this asset bundle.

", + "AssetBundleImportJobDataSetOverrideTags$DataSetIds": "

A list of dataset IDs that you want to apply overrides to. You can use * to override all datasets in this asset bundle.

", + "AssetBundleImportJobDataSourceOverridePermissions$DataSourceIds": "

A list of data source IDs that you want to apply overrides to. You can use * to override all data sources in this asset bundle.

", + "AssetBundleImportJobDataSourceOverrideTags$DataSourceIds": "

A list of data source IDs that you want to apply overrides to. You can use * to override all data sources in this asset bundle.

", + "AssetBundleImportJobThemeOverridePermissions$ThemeIds": "

A list of theme IDs that you want to apply overrides to. You can use * to override all themes in this asset bundle.

", + "AssetBundleImportJobThemeOverrideTags$ThemeIds": "

A list of theme IDs that you want to apply overrides to. You can use * to override all themes in this asset bundle.

", + "AssetBundleImportJobVPCConnectionOverrideTags$VPCConnectionIds": "

A list of VPC connection IDs that you want to apply overrides to. You can use * to override all VPC connections in this asset bundle.

" + } + }, + "AssetOptions": { + "base": "

An array of analysis level configurations.

", + "refs": { + "AnalysisDefinition$Options": "

An array of option definitions for an analysis.

", + "DashboardVersionDefinition$Options": "

An array of option definitions for a dashboard.

", + "TemplateVersionDefinition$Options": "

An array of option definitions for a template.

" + } + }, "AssignmentStatus": { "base": null, "refs": { @@ -1096,7 +1333,7 @@ "AuthenticationMethodOption": { "base": null, "refs": { - "CreateAccountSubscriptionRequest$AuthenticationMethod": "

The method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are IAM_AND_QUICKSIGHT, IAM_ONLY, and ACTIVE_DIRECTORY.

If you choose ACTIVE_DIRECTORY, provide an ActiveDirectoryName and an AdminGroup associated with your Active Directory.

" + "CreateAccountSubscriptionRequest$AuthenticationMethod": "

The method that you want to use to authenticate your Amazon QuickSight account.

If you choose ACTIVE_DIRECTORY, provide an ActiveDirectoryName and an AdminGroup associated with your Active Directory.

If you choose IAM_IDENTITY_CENTER, provide an AdminGroup associated with your IAM Identity Center account.

" } }, "AuthorSpecifiedAggregation": { @@ -1114,6 +1351,25 @@ "TopicColumn$NotAllowedAggregations": "

The list of aggregation types that are not allowed for the column. Valid values for this structure are COUNT, DISTINCT_COUNT, MIN, MAX, MEDIAN, SUM, AVERAGE, STDEV, STDEVP, VAR, VARP, and PERCENTILE.

" } }, + "AuthorizedTargetsByService": { + "base": "

The authorized targets that are associated with a service.

", + "refs": { + "AuthorizedTargetsByServices$member": null + } + }, + "AuthorizedTargetsByServices": { + "base": null, + "refs": { + "ListIdentityPropagationConfigsResponse$Services": "

A list of services and their authorized targets that the Amazon QuickSight IAM Identity Center application can access.

" + } + }, + "AuthorizedTargetsList": { + "base": null, + "refs": { + "AuthorizedTargetsByService$AuthorizedTargets": "

Aist of authorized targets that are represented by IAM Identity Center application ARNs.

", + "UpdateIdentityPropagationConfigRequest$AuthorizedTargets": "

Specifies a list of application ARNs that represent the authorized targets for a service.

" + } + }, "AwsAccountId": { "base": null, "refs": { @@ -1133,6 +1389,7 @@ "CreateIngestionRequest$AwsAccountId": "

The Amazon Web Services account ID.

", "CreateNamespaceRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to create the Amazon QuickSight namespace in.

", "CreateRefreshScheduleRequest$AwsAccountId": "

The Amazon Web Services account ID.

", + "CreateRoleMembershipRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to create a group in. The Amazon Web Services account ID that you provide must be the same Amazon Web Services account that contains your Amazon QuickSight account.

", "CreateTemplateAliasRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template that you creating an alias for.

", "CreateTemplateRequest$AwsAccountId": "

The ID for the Amazon Web Services account that the group is in. You use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.

", "CreateThemeAliasRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the theme for the new theme alias.

", @@ -1152,8 +1409,11 @@ "DeleteGroupMembershipRequest$AwsAccountId": "

The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.

", "DeleteGroupRequest$AwsAccountId": "

The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.

", "DeleteIAMPolicyAssignmentRequest$AwsAccountId": "

The Amazon Web Services account ID where you want to delete the IAM policy assignment.

", + "DeleteIdentityPropagationConfigRequest$AwsAccountId": "

The ID of the Amazon Web Services account that you want to delete an identity propagation configuration from.

", "DeleteNamespaceRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to delete the Amazon QuickSight namespace from.

", "DeleteRefreshScheduleRequest$AwsAccountId": "

The Amazon Web Services account ID.

", + "DeleteRoleCustomPermissionRequest$AwsAccountId": "

The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.

", + "DeleteRoleMembershipRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to create a group in. The Amazon Web Services account ID that you provide must be the same Amazon Web Services account that contains your Amazon QuickSight account.

", "DeleteTemplateAliasRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the item to delete.

", "DeleteTemplateRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template that you're deleting.

", "DeleteThemeAliasRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the theme alias to delete.

", @@ -1196,6 +1456,7 @@ "DescribeIpRestrictionResponse$AwsAccountId": "

The ID of the Amazon Web Services account that contains the IP rules.

", "DescribeNamespaceRequest$AwsAccountId": "

The ID for the Amazon Web Services account that contains the Amazon QuickSight namespace that you want to describe.

", "DescribeRefreshScheduleRequest$AwsAccountId": "

The Amazon Web Services account ID.

", + "DescribeRoleCustomPermissionRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to create a group in. The Amazon Web Services account ID that you provide must be the same Amazon Web Services account that contains your Amazon QuickSight account.

", "DescribeTemplateAliasRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template alias that you're describing.

", "DescribeTemplateDefinitionRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template. You must be using the Amazon Web Services account that the template is in.

", "DescribeTemplatePermissionsRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template that you're describing.

", @@ -1226,9 +1487,11 @@ "ListGroupsRequest$AwsAccountId": "

The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.

", "ListIAMPolicyAssignmentsForUserRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the assignments.

", "ListIAMPolicyAssignmentsRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains these IAM policy assignments.

", + "ListIdentityPropagationConfigsRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contain the identity propagation configurations of.

", "ListIngestionsRequest$AwsAccountId": "

The Amazon Web Services account ID.

", "ListNamespacesRequest$AwsAccountId": "

The ID for the Amazon Web Services account that contains the Amazon QuickSight namespaces that you want to list.

", "ListRefreshSchedulesRequest$AwsAccountId": "

The Amazon Web Services account ID.

", + "ListRoleMembershipsRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to create a group in. The Amazon Web Services account ID that you provide must be the same Amazon Web Services account that contains your Amazon QuickSight account.

", "ListTemplateAliasesRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template aliases that you're listing.

", "ListTemplateVersionsRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the templates that you're listing.

", "ListTemplatesRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the templates that you're listing.

", @@ -1268,10 +1531,12 @@ "UpdateFolderRequest$AwsAccountId": "

The ID for the Amazon Web Services account that contains the folder to update.

", "UpdateGroupRequest$AwsAccountId": "

The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.

", "UpdateIAMPolicyAssignmentRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the IAM policy assignment.

", + "UpdateIdentityPropagationConfigRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the identity propagation configuration that you want to update.

", "UpdateIpRestrictionRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the IP rules.

", "UpdateIpRestrictionResponse$AwsAccountId": "

The ID of the Amazon Web Services account that contains the IP rules.

", "UpdatePublicSharingSettingsRequest$AwsAccountId": "

The Amazon Web Services account ID associated with your Amazon QuickSight subscription.

", "UpdateRefreshScheduleRequest$AwsAccountId": "

The Amazon Web Services account ID.

", + "UpdateRoleCustomPermissionRequest$AwsAccountId": "

The ID for the Amazon Web Services account that you want to create a group in. The Amazon Web Services account ID that you provide must be the same Amazon Web Services account that contains your Amazon QuickSight account.

", "UpdateTemplateAliasRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template alias that you're updating.

", "UpdateTemplatePermissionsRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template.

", "UpdateTemplateRequest$AwsAccountId": "

The ID of the Amazon Web Services account that contains the template that you're updating.

", @@ -1303,7 +1568,7 @@ "DataFieldSeriesItem$AxisBinding": "

The axis that you are binding the field to.

", "FieldSeriesItem$AxisBinding": "

The axis that you are binding the field to.

", "LineChartDefaultSeriesSettings$AxisBinding": "

The axis to which you are binding all line series to.

", - "ReferenceLineDataConfiguration$AxisBinding": "

The axis binding type of the reference line. Choose one of the following options:

  • PrimaryY

  • SecondaryY

" + "ReferenceLineDataConfiguration$AxisBinding": "

The axis binding type of the reference line. Choose one of the following options:

  • PrimaryY

  • SecondaryY

" } }, "AxisDataOptions": { @@ -1443,6 +1708,12 @@ "GeospatialMapStyleOptions$BaseMapStyle": "

The base map style of the geospatial map.

" } }, + "BigQueryParameters": { + "base": "

The parameters that are required to connect to a Google BigQuery data source.

", + "refs": { + "DataSourceParameters$BigQueryParameters": "

The parameters that are required to connect to a Google BigQuery data source.

" + } + }, "BinCountLimit": { "base": null, "refs": { @@ -1504,6 +1775,10 @@ "AccountSettings$TerminationProtectionEnabled": "

A boolean value that determines whether or not an Amazon QuickSight account can be deleted. A True value doesn't allow the account to be deleted and results in an error message if a user tries to make a DeleteAccountSubsctiption request. A False value will allow the ccount to be deleted.

", "AssetBundleExportJobResourceIdOverrideConfiguration$PrefixForAllResources": "

An option to request a CloudFormation variable for a prefix to be prepended to each resource's ID before import. The prefix is only added to the asset IDs and does not change the name of the asset.

", "AssetBundleExportJobSummary$IncludeAllDependencies": "

The flag that determines the inclusion of resource dependencies in the returned asset bundle.

", + "AssetBundleExportJobSummary$IncludePermissions": "

The flag that determines the inclusion of permissions associated with each resource ARN.

", + "AssetBundleExportJobSummary$IncludeTags": "

The flag that determines the inclusion of tags associated with each resource ARN.

", + "AssetBundleExportJobValidationStrategy$StrictModeForAllResources": "

A Boolean value that indicates whether to export resources under strict or lenient mode.

", + "AssetBundleImportJobOverrideValidationStrategy$StrictModeForAllResources": "

A Boolean value that indicates whether to import all analyses and dashboards under strict or lenient mode.

", "BookmarksConfigurations$Enabled": "

A Boolean value that determines whether a user can bookmark an embedded dashboard.

", "BorderStyle$Show": "

The option to enable display of borders for visuals.

", "DataSetSummary$RowLevelPermissionTagConfigurationApplied": "

Whether or not the row level permission tags are applied.

", @@ -1512,19 +1787,25 @@ "DataSetUsageConfiguration$DisableUseAsImportedSource": "

An option that controls whether a child dataset that's stored in QuickSight can use this dataset as a source.

", "DeleteAnalysisRequest$ForceDeleteWithoutRecovery": "

This option defaults to the value NoForceDeleteWithoutRecovery. To immediately delete the analysis, add the ForceDeleteWithoutRecovery option. You can't restore an analysis after it's deleted.

", "DescribeAssetBundleExportJobResponse$IncludeAllDependencies": "

The include dependencies flag.

", + "DescribeAssetBundleExportJobResponse$IncludePermissions": "

The include permissions flag.

", + "DescribeAssetBundleExportJobResponse$IncludeTags": "

The include tags flag.

", "DisplayFormatOptions$UseBlankCellFormat": "

A Boolean value that indicates whether to use blank cell format.

", "DisplayFormatOptions$UseGrouping": "

A Boolean value that indicates whether to use grouping.

", "GetDashboardEmbedUrlRequest$UndoRedoDisabled": "

Remove the undo/redo button on the embedded dashboard. The default is FALSE, which enables the undo/redo button.

", "GetDashboardEmbedUrlRequest$ResetDisabled": "

Remove the reset button on the embedded dashboard. The default is FALSE, which enables the reset button.

", "GetDashboardEmbedUrlRequest$StatePersistenceEnabled": "

Adds persistence of state for the user session in an embedded dashboard. Persistence applies to the sheet and the parameter settings. These are control settings that the dashboard subscriber (Amazon QuickSight reader) chooses while viewing the dashboard. If this is set to TRUE, the settings are the same when the subscriber reopens the same dashboard URL. The state is stored in Amazon QuickSight, not in a browser cookie. If this is set to FALSE, the state of the user session is not persisted. The default is FALSE.

", "GutterStyle$Show": "

This Boolean value controls whether to display a gutter space between sheet tiles.

", + "IdentityCenterConfiguration$EnableIdentityPropagation": "

A Boolean option that controls whether Trusted Identity Propagation should be used.

", "JoinKeyProperties$UniqueKey": "

A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by Amazon QuickSight to optimize query performance.

", "MarginStyle$Show": "

This Boolean value controls whether to display sheet margins.

", "NumericRangeFilter$IncludeMinimum": "

Determines whether the minimum value in the filter value range should be included in the filtered results.

", "NumericRangeFilter$IncludeMaximum": "

Determines whether the maximum value in the filter value range should be included in the filtered results.

", + "RedshiftIAMParameters$AutoCreateDatabaseUser": "

Automatically creates a database user. If your database doesn't have a DatabaseUser, set this parameter to True. If there is no DatabaseUser, Amazon QuickSight can't connect to your cluster. The RoleArn that you use for this operation must grant access to redshift:CreateClusterUser to successfully create the user.

", "SignupResponse$IAMUser": "

A Boolean that is TRUE if the Amazon QuickSight uses IAM as an authentication method.

", "SslProperties$DisableSsl": "

A Boolean option to control whether SSL should be disabled.

", "StartAssetBundleExportJobRequest$IncludeAllDependencies": "

A Boolean that determines whether all dependencies of each resource ARN are recursively exported with the job. For example, say you provided a Dashboard ARN to the ResourceArns parameter. If you set IncludeAllDependencies to TRUE, any theme, dataset, and data source resource that is a dependency of the dashboard is also exported.

", + "StartAssetBundleExportJobRequest$IncludePermissions": "

A Boolean that determines whether all permissions for each resource ARN are exported with the job. If you set IncludePermissions to TRUE, any permissions associated with each resource are exported.

", + "StartAssetBundleExportJobRequest$IncludeTags": "

A Boolean that determines whether all tags for each resource ARN are exported with the job. If you set IncludeTags to TRUE, any tags associated with each resource are exported.

", "StatePersistenceConfigurations$Enabled": "

Determines if a Amazon QuickSight dashboard's state persistence settings are turned on or off.

", "TimeRangeFilter$IncludeMinimum": "

Determines whether the minimum value in the filter value range should be included in the filtered results.

", "TimeRangeFilter$IncludeMaximum": "

Determines whether the maximum value in the filter value range should be included in the filtered results.

", @@ -1699,7 +1980,9 @@ "Catalog": { "base": null, "refs": { - "PrestoParameters$Catalog": "

Catalog.

" + "PrestoParameters$Catalog": "

Catalog.

", + "StarburstParameters$Catalog": "

The catalog name for the Starburst data source.

", + "TrinoParameters$Catalog": "

The catalog name for the Trino data source.

" } }, "CategoricalAggregationFunction": { @@ -1906,11 +2189,19 @@ "TopicColumn$ColumnDataRole": "

The role of the column in the data. Valid values are DIMENSION and MEASURE.

" } }, + "ColumnDataSubType": { + "base": null, + "refs": { + "CastColumnTypeOperation$SubType": "

The sub data type of the new column. Sub types are only available for decimal columns that are part of a SPICE dataset.

", + "InputColumn$SubType": "

The sub data type of the column. Sub types are only available for decimal columns that are part of a SPICE dataset.

", + "OutputColumn$SubType": "

The sub data type of the column.

" + } + }, "ColumnDataType": { "base": null, "refs": { "CastColumnTypeOperation$NewColumnType": "

New column data type.

", - "OutputColumn$Type": "

The type.

" + "OutputColumn$Type": "

The data type of the column.

" } }, "ColumnDescription": { @@ -2069,7 +2360,7 @@ "ColumnIdentifier$ColumnName": "

The name of the column.

", "ColumnList$member": null, "InputColumn$Name": "

The name of this column in the underlying data source.

", - "OutputColumn$Name": "

A display name for the dataset.

", + "OutputColumn$Name": "

The display name of the column..

", "RenameColumnOperation$ColumnName": "

The name of the column to be renamed.

", "RenameColumnOperation$NewColumnName": "

The new name for the column.

", "TagColumnOperation$ColumnName": "

The column that this operation acts on.

", @@ -2475,6 +2766,16 @@ "refs": { } }, + "CreateRoleMembershipRequest": { + "base": null, + "refs": { + } + }, + "CreateRoleMembershipResponse": { + "base": null, + "refs": { + } + }, "CreateTemplateAliasRequest": { "base": null, "refs": { @@ -2934,6 +3235,12 @@ "PivotTableSortBy$DataPath": "

The data path sort (data path value, direction) for the pivot table sort by options.

" } }, + "DataPathType": { + "base": "

The type of the data path value.

", + "refs": { + "DataPathValue$DataPathType": "

The type configuration of the field.

" + } + }, "DataPathValue": { "base": "

The data path that needs to be sorted.

", "refs": { @@ -3061,6 +3368,12 @@ "PutDataSetRefreshPropertiesRequest$DataSetRefreshProperties": "

The dataset refresh properties.

" } }, + "DataSetRegion": { + "base": null, + "refs": { + "BigQueryParameters$DataSetRegion": "

The storage location where you create a Google BigQuery data source.

" + } + }, "DataSetSchema": { "base": "

Dataset schema.

", "refs": { @@ -3203,10 +3516,28 @@ "TeradataParameters$Database": "

Database.

" } }, + "DatabaseGroup": { + "base": null, + "refs": { + "DatabaseGroupList$member": null + } + }, + "DatabaseGroupList": { + "base": null, + "refs": { + "RedshiftIAMParameters$DatabaseGroups": "

A list of groups whose permissions will be granted to Amazon QuickSight to access the cluster. These permissions are combined with the permissions granted to Amazon QuickSight by the DatabaseUser. If you choose to include this parameter, the RoleArn must grant access to redshift:JoinGroup.

" + } + }, + "DatabaseUser": { + "base": null, + "refs": { + "RedshiftIAMParameters$DatabaseUser": "

The user whose permissions and group memberships will be used by Amazon QuickSight to access the cluster. If this user already exists in your database, Amazon QuickSight is granted the same permissions that the user has. If the user doesn't exist, set the value of AutoCreateDatabaseUser to True to create a new user with PUBLIC permissions.

" + } + }, "DatabricksParameters": { - "base": "

The required parameters that are needed to connect to a Databricks data source.

", + "base": "

The parameters that are required to connect to a Databricks data source.

", "refs": { - "DataSourceParameters$DatabricksParameters": "

The required parameters that are needed to connect to a Databricks data source.

" + "DataSourceParameters$DatabricksParameters": "

The parameters that are required to connect to a Databricks data source.

" } }, "DatasetMetadata": { @@ -3386,6 +3717,12 @@ "ScheduleRefreshOnEntity$DayOfMonth": "

The day of the month that you want to schedule refresh on.

" } }, + "DayOfTheWeek": { + "base": null, + "refs": { + "AssetOptions$WeekStart": "

Determines the week start day for an analysis.

" + } + }, "DayOfWeek": { "base": null, "refs": { @@ -3645,6 +3982,16 @@ "refs": { } }, + "DeleteIdentityPropagationConfigRequest": { + "base": null, + "refs": { + } + }, + "DeleteIdentityPropagationConfigResponse": { + "base": null, + "refs": { + } + }, "DeleteNamespaceRequest": { "base": null, "refs": { @@ -3665,6 +4012,26 @@ "refs": { } }, + "DeleteRoleCustomPermissionRequest": { + "base": null, + "refs": { + } + }, + "DeleteRoleCustomPermissionResponse": { + "base": null, + "refs": { + } + }, + "DeleteRoleMembershipRequest": { + "base": null, + "refs": { + } + }, + "DeleteRoleMembershipResponse": { + "base": null, + "refs": { + } + }, "DeleteTemplateAliasRequest": { "base": null, "refs": { @@ -4041,6 +4408,16 @@ "refs": { } }, + "DescribeRoleCustomPermissionRequest": { + "base": null, + "refs": { + } + }, + "DescribeRoleCustomPermissionResponse": { + "base": null, + "refs": { + } + }, "DescribeTemplateAliasRequest": { "base": null, "refs": { @@ -4526,6 +4903,7 @@ "TableCellConditionalFormatting$FieldId": "

The field ID of the cell for conditional formatting.

", "TableFieldOption$FieldId": "

The field ID for a table field.

", "TableFieldOrderList$member": null, + "TotalAggregationOption$FieldId": "

The field id that's associated with the total aggregation option.

", "UnaggregatedField$FieldId": "

The custom field ID.

" } }, @@ -4746,6 +5124,7 @@ "refs": { "CustomFilterConfiguration$NullOption": "

This option determines how null values should be treated when filtering data.

  • ALL_VALUES: Include null values in filtered results.

  • NULLS_ONLY: Only include null values in filtered results.

  • NON_NULLS_ONLY: Exclude null values from filtered results.

", "CustomFilterListConfiguration$NullOption": "

This option determines how null values should be treated when filtering data.

  • ALL_VALUES: Include null values in filtered results.

  • NULLS_ONLY: Only include null values in filtered results.

  • NON_NULLS_ONLY: Exclude null values from filtered results.

", + "FilterListConfiguration$NullOption": "

This option determines how null values should be treated when filtering data.

  • ALL_VALUES: Include null values in filtered results.

  • NULLS_ONLY: Only include null values in filtered results.

  • NON_NULLS_ONLY: Exclude null values from filtered results.

", "NumericEqualityFilter$NullOption": "

This option determines how null values should be treated when filtering data.

  • ALL_VALUES: Include null values in filtered results.

  • NULLS_ONLY: Only include null values in filtered results.

  • NON_NULLS_ONLY: Exclude null values from filtered results.

", "NumericRangeFilter$NullOption": "

This option determines how null values should be treated when filtering data.

  • ALL_VALUES: Include null values in filtered results.

  • NULLS_ONLY: Only include null values in filtered results.

  • NON_NULLS_ONLY: Exclude null values from filtered results.

", "RelativeDatesFilter$NullOption": "

This option determines how null values should be treated when filtering data.

  • ALL_VALUES: Include null values in filtered results.

  • NULLS_ONLY: Only include null values in filtered results.

  • NON_NULLS_ONLY: Exclude null values from filtered results.

", @@ -4835,6 +5214,15 @@ "DescribeFolderResponse$Folder": "

Information about the folder.

" } }, + "FolderArnList": { + "base": null, + "refs": { + "CreateAnalysisRequest$FolderArns": "

When you create the analysis, Amazon QuickSight adds the analysis to these folders.

", + "CreateDashboardRequest$FolderArns": "

When you create the dashboard, Amazon QuickSight adds the dashboard to these folders.

", + "CreateDataSetRequest$FolderArns": "

When you create the dataset, Amazon QuickSight adds the dataset to these folders.

", + "CreateDataSourceRequest$FolderArns": "

When you create the data source, Amazon QuickSight adds the data source to these folders.

" + } + }, "FolderColumnList": { "base": null, "refs": { @@ -5444,8 +5832,10 @@ "refs": { "CreateGroupMembershipRequest$GroupName": "

The name of the group that you want to add the user to.

", "CreateGroupRequest$GroupName": "

A name for the group that you want to create.

", + "CreateRoleMembershipRequest$MemberName": "

The name of the group that you want to add to the role.

", "DeleteGroupMembershipRequest$GroupName": "

The name of the group that you want to delete the user from.

", "DeleteGroupRequest$GroupName": "

The name of the group that you want to delete.

", + "DeleteRoleMembershipRequest$MemberName": "

The name of the group.

", "DescribeGroupMembershipRequest$GroupName": "

The name of the group that you want to search.

", "DescribeGroupRequest$GroupName": "

The name of the group that you want to describe.

", "Group$GroupName": "

The name of the group.

", @@ -5468,9 +5858,10 @@ "GroupsList": { "base": null, "refs": { - "CreateAccountSubscriptionRequest$AdminGroup": "

The admin group associated with your Active Directory. This field is required if ACTIVE_DIRECTORY is the selected authentication method of the new Amazon QuickSight account. For more information about using Active Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide.

", - "CreateAccountSubscriptionRequest$AuthorGroup": "

The author group associated with your Active Directory. For more information about using Active Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide.

", - "CreateAccountSubscriptionRequest$ReaderGroup": "

The reader group associated with your Active Direcrtory. For more information about using Active Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide.

" + "CreateAccountSubscriptionRequest$AdminGroup": "

The admin group associated with your Active Directory or IAM Identity Center account. This field is required if ACTIVE_DIRECTORY or IAM_IDENTITY_CENTER is the selected authentication method of the new Amazon QuickSight account.

For more information about using IAM Identity Center in Amazon QuickSight, see Using IAM Identity Center with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide. For more information about using Active Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide.

", + "CreateAccountSubscriptionRequest$AuthorGroup": "

The author group associated with your Active Directory or IAM Identity Center account.

For more information about using IAM Identity Center in Amazon QuickSight, see Using IAM Identity Center with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide. For more information about using Active Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide.

", + "CreateAccountSubscriptionRequest$ReaderGroup": "

The reader group associated with your Active Directory or IAM Identity Center account.

For more information about using IAM Identity Center in Amazon QuickSight, see Using IAM Identity Center with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide. For more information about using Active Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise Edition in the Amazon QuickSight User Guide.

", + "ListRoleMembershipsResponse$MembersList": "

The list of groups associated with a role

" } }, "GrowthRateComputation": { @@ -5678,7 +6069,9 @@ "SnowflakeParameters$Host": "

Host.

", "SparkParameters$Host": "

Host.

", "SqlServerParameters$Host": "

Host.

", - "TeradataParameters$Host": "

Host.

" + "StarburstParameters$Host": "

The host name of the Starburst data source.

", + "TeradataParameters$Host": "

Host.

", + "TrinoParameters$Host": "

The host name of the Trino data source.

" } }, "IAMPolicyAssignment": { @@ -5726,6 +6119,12 @@ "ConditionalFormattingCustomIconOptions$Icon": "

Determines the type of icon.

" } }, + "IdentityCenterConfiguration": { + "base": "

The parameters for an IAM Identity Center configuration.

", + "refs": { + "RedshiftParameters$IdentityCenterConfiguration": "

An optional parameter that configures IAM Identity Center authentication to grant Amazon QuickSight access to your cluster.

This parameter can only be specified if your Amazon QuickSight account is configured with IAM Identity Center.

" + } + }, "IdentityMap": { "base": null, "refs": { @@ -6353,6 +6752,7 @@ "LinkSharingConfiguration": { "base": "

A structure that contains the configuration of a shareable link to the dashboard.

", "refs": { + "CreateDashboardRequest$LinkSharingConfiguration": "

A structure that contains the permissions of a shareable link to the dashboard.

", "DescribeDashboardPermissionsResponse$LinkSharingConfiguration": "

A structure that contains the configuration of a shareable link that grants access to the dashboard. Your users can use the link to view and interact with the dashboard, if the dashboard has been shared with them. For more information about sharing dashboards, see Sharing Dashboards.

", "UpdateDashboardPermissionsResponse$LinkSharingConfiguration": "

Updates the permissions of a shared link to an Amazon QuickSight dashboard.

" } @@ -6507,6 +6907,22 @@ "refs": { } }, + "ListIdentityPropagationConfigsRequest": { + "base": null, + "refs": { + } + }, + "ListIdentityPropagationConfigsResponse": { + "base": null, + "refs": { + } + }, + "ListIdentityPropagationMaxResults": { + "base": null, + "refs": { + "ListIdentityPropagationConfigsRequest$MaxResults": "

The maximum number of results to be returned.

" + } + }, "ListIngestionsRequest": { "base": null, "refs": { @@ -6537,6 +6953,16 @@ "refs": { } }, + "ListRoleMembershipsRequest": { + "base": null, + "refs": { + } + }, + "ListRoleMembershipsResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -6811,6 +7237,7 @@ "ListIAMPolicyAssignmentsForUserRequest$MaxResults": "

The maximum number of results to be returned per request.

", "ListIAMPolicyAssignmentsRequest$MaxResults": "

The maximum number of results to be returned per request.

", "ListNamespacesRequest$MaxResults": "

The maximum number of results to return.

", + "ListRoleMembershipsRequest$MaxResults": "

The maximum number of results to return.

", "ListTemplateAliasesRequest$MaxResults": "

The maximum number of results to be returned per request.

", "ListTemplateVersionsRequest$MaxResults": "

The maximum number of results to be returned per request.

", "ListTemplatesRequest$MaxResults": "

The maximum number of results to be returned per request.

", @@ -6992,11 +7419,14 @@ "CreateIAMPolicyAssignmentRequest$Namespace": "

The namespace that contains the assignment.

", "CreateNamespaceRequest$Namespace": "

The name that you want to use to describe the new namespace.

", "CreateNamespaceResponse$Name": "

The name of the new namespace that you created.

", + "CreateRoleMembershipRequest$Namespace": "

The namespace that the role belongs to.

", "DeleteAccountCustomizationRequest$Namespace": "

The Amazon QuickSight namespace that you're deleting the customizations from.

", "DeleteGroupMembershipRequest$Namespace": "

The namespace of the group that you want to remove a user from.

", "DeleteGroupRequest$Namespace": "

The namespace of the group that you want to delete.

", "DeleteIAMPolicyAssignmentRequest$Namespace": "

The namespace that contains the assignment.

", "DeleteNamespaceRequest$Namespace": "

The namespace that you want to delete.

", + "DeleteRoleCustomPermissionRequest$Namespace": "

The namespace that includes the role.

", + "DeleteRoleMembershipRequest$Namespace": "

The namespace that contains the role.

", "DeleteUserByPrincipalIdRequest$Namespace": "

The namespace. Currently, you should set this to default.

", "DeleteUserRequest$Namespace": "

The namespace. Currently, you should set this to default.

", "DescribeAccountCustomizationRequest$Namespace": "

The Amazon QuickSight namespace that you want to describe Amazon QuickSight customizations for.

", @@ -7007,6 +7437,7 @@ "DescribeGroupRequest$Namespace": "

The namespace of the group that you want described.

", "DescribeIAMPolicyAssignmentRequest$Namespace": "

The namespace that contains the assignment.

", "DescribeNamespaceRequest$Namespace": "

The namespace that you want to describe.

", + "DescribeRoleCustomPermissionRequest$Namespace": "

The namespace that contains the role.

", "DescribeUserRequest$Namespace": "

The namespace. Currently, you should set this to default.

", "GenerateEmbedUrlForAnonymousUserRequest$Namespace": "

The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon QuickSight custom namespace, set this to default.

", "GetDashboardEmbedUrlRequest$Namespace": "

The Amazon QuickSight namespace that contains the dashboard IDs in this request. If you're not using a custom namespace, set Namespace = default.

", @@ -7014,6 +7445,7 @@ "ListGroupsRequest$Namespace": "

The namespace that you want a list of groups from.

", "ListIAMPolicyAssignmentsForUserRequest$Namespace": "

The namespace of the assignment.

", "ListIAMPolicyAssignmentsRequest$Namespace": "

The namespace for the assignments.

", + "ListRoleMembershipsRequest$Namespace": "

The namespace that includes the role.

", "ListUserGroupsRequest$Namespace": "

The namespace. Currently, you should set this to default.

", "ListUsersRequest$Namespace": "

The namespace. Currently, you should set this to default.

", "NamespaceInfoV2$Name": "

The name of the error.

", @@ -7025,6 +7457,7 @@ "UpdateAccountSettingsRequest$DefaultNamespace": "

The default namespace for this Amazon Web Services account. Currently, the default is default. IAM users that register for the first time with Amazon QuickSight provide an email address that becomes associated with the default namespace.

", "UpdateGroupRequest$Namespace": "

The namespace of the group that you want to update.

", "UpdateIAMPolicyAssignmentRequest$Namespace": "

The namespace of the assignment.

", + "UpdateRoleCustomPermissionRequest$Namespace": "

The namespace that contains the role that you want to update.

", "UpdateUserRequest$Namespace": "

The namespace. Currently, you should set this to default.

" } }, @@ -7123,6 +7556,7 @@ "AnalysisError$Message": "

The message associated with the analysis error.

", "AssetBundleExportJobError$Type": "

The specific error type of the error that occurred.

", "AssetBundleExportJobError$Message": "

A description of the error.

", + "AssetBundleExportJobWarning$Message": "

A description of the warning.

", "AssetBundleImportJobError$Type": "

The specific error type or the error that occurred.

", "AssetBundleImportJobError$Message": "

A description of the error.

", "DashboardError$Message": "

Message.

", @@ -7437,7 +7871,7 @@ "RelativeDatesFilter$ParameterName": "

The parameter whose value should be used for the filter value.

", "SetParameterValueConfiguration$DestinationParameterName": "

The destination parameter name of the SetParameterValueConfiguration.

", "StringParameterDeclaration$Name": "

The name of the parameter that is being declared.

", - "TimeEqualityFilter$ParameterName": "

The parameter whose value should be used for the filter value.

This field is mutually exclusive to Value.

", + "TimeEqualityFilter$ParameterName": "

The parameter whose value should be used for the filter value.

This field is mutually exclusive to Value and RollingDate.

", "TimeRangeFilterValue$Parameter": "

The parameter type input value.

", "TopBottomFilter$ParameterName": "

The parameter whose value should be used for the filter value.

" } @@ -7699,6 +8133,12 @@ "PivotTableFieldOptions$DataPathOptions": "

The data path options for the pivot table field options.

" } }, + "PivotTableDataPathType": { + "base": null, + "refs": { + "DataPathType$PivotTableDataPathType": "

The type of data path value utilized in a pivot table. Choose one of the following options:

  • HIERARCHY_ROWS_LAYOUT_COLUMN - The type of data path for the rows layout column, when RowsLayout is set to HIERARCHY.

  • MULTIPLE_ROW_METRICS_COLUMN - The type of data path for the metric column when the row is set to Metric Placement.

  • EMPTY_COLUMN_HEADER - The type of data path for the column with empty column header, when there is no field in ColumnsFieldWell and the row is set to Metric Placement.

  • COUNT_METRIC_COLUMN - The type of data path for the column with COUNT as the metric, when there is no field in the ValuesFieldWell.

" + } + }, "PivotTableDimensionList": { "base": null, "refs": { @@ -7874,7 +8314,9 @@ "PrestoParameters$Port": "

Port.

", "SparkParameters$Port": "

Port.

", "SqlServerParameters$Port": "

Port.

", - "TeradataParameters$Port": "

Port.

" + "StarburstParameters$Port": "

The port for the Starburst data source.

", + "TeradataParameters$Port": "

Port.

", + "TrinoParameters$Port": "

The port for the Trino data source.

" } }, "PositiveInteger": { @@ -7944,6 +8386,7 @@ "Principal": { "base": null, "refs": { + "AssetBundlePrincipalList$member": null, "ResourcePermission$Principal": "

The Amazon Resource Name (ARN) of the principal. This can be one of the following:

  • The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

  • The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

  • The ARN of an Amazon Web Services account root: This is an IAM ARN rather than a QuickSight ARN. Use this option only to share resources (templates) across Amazon Web Services accounts. (This is less common.)

" } }, @@ -7959,6 +8402,12 @@ "KPIOptions$ProgressBar": "

The options that determine the presentation of the progress bar of a KPI visual.

" } }, + "ProjectId": { + "base": null, + "refs": { + "BigQueryParameters$ProjectId": "

The Google Cloud Platform project ID where your datasource was created.

" + } + }, "ProjectOperation": { "base": "

A transform operation that projects columns. Operations that come after a projection can only refer to projected columns.

", "refs": { @@ -8112,6 +8561,12 @@ "DeleteAnalysisRequest$RecoveryWindowInDays": "

A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. You can't use this parameter with the ForceDeleteWithoutRecovery option in the same API call. The default value is 30.

" } }, + "RedshiftIAMParameters": { + "base": "

A structure that grants Amazon QuickSight access to your cluster and make a call to the redshift:GetClusterCredentials API. For more information on the redshift:GetClusterCredentials API, see GetClusterCredentials .

", + "refs": { + "RedshiftParameters$IAMParameters": "

An optional parameter that uses IAM authentication to grant Amazon QuickSight access to your cluster. This parameter can be used instead of DataSourceCredentials.

" + } + }, "RedshiftParameters": { "base": "

The parameters for Amazon Redshift. The ClusterId field can be blank if Host and Port are both set. The Host and Port fields can be blank if the ClusterId field is set.

", "refs": { @@ -8175,6 +8630,12 @@ "ReferenceLineStyleConfiguration$Pattern": "

The pattern type of the line style. Choose one of the following options:

  • SOLID

  • DASHED

  • DOTTED

" } }, + "ReferenceLineSeriesType": { + "base": null, + "refs": { + "ReferenceLineDataConfiguration$SeriesType": "

The series type of the reference line data configuration. Choose one of the following options:

  • BAR

  • LINE

" + } + }, "ReferenceLineStaticDataConfiguration": { "base": "

The static data configuration of the reference line data configuration.

", "refs": { @@ -8541,12 +9002,24 @@ "UpdateFolderResponse$FolderId": "

The ID of the folder.

" } }, + "Role": { + "base": null, + "refs": { + "CreateRoleMembershipRequest$Role": "

The role that you want to add a group to.

", + "DeleteRoleCustomPermissionRequest$Role": "

The role that you want to remove permissions from.

", + "DeleteRoleMembershipRequest$Role": "

The role that you want to remove permissions from.

", + "DescribeRoleCustomPermissionRequest$Role": "

The name of the role whose permissions you want described.

", + "ListRoleMembershipsRequest$Role": "

The name of the role.

", + "UpdateRoleCustomPermissionRequest$Role": "

The name of role tht you want to update.

" + } + }, "RoleArn": { "base": null, "refs": { "AssetBundleImportJobVPCConnectionOverrideParameters$RoleArn": "

An optional override of the role ARN to be used by the VPC connection.

", "AthenaParameters$RoleArn": "

Use the RoleArn structure to override an account-wide role for a specific Athena data source. For example, say an account administrator has turned off all Athena access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow Athena access for the single Athena data source that is specified in the structure, even if the account-wide role forbidding Athena access is still active.

", "CreateVPCConnectionRequest$RoleArn": "

The IAM role to associate with the VPC connection.

", + "RedshiftIAMParameters$RoleArn": "

Use the RoleArn structure to allow Amazon QuickSight to call redshift:GetClusterCredentials on your cluster. The calling principal must have iam:PassRole access to pass the role to Amazon QuickSight. The role's trust policy must allow the Amazon QuickSight service principal to assume the role.

", "S3Parameters$RoleArn": "

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

", "UpdateVPCConnectionRequest$RoleArn": "

An IAM role associated with the VPC connection.

" } @@ -8554,7 +9027,9 @@ "RoleName": { "base": null, "refs": { + "DescribeRoleCustomPermissionResponse$CustomPermissionsName": "

The name of the custom permission that is described.

", "RegisterUserRequest$CustomPermissionsName": "

(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:

  • Create and update data sources

  • Create and update datasets

  • Create and update email reports

  • Subscribe to email reports

To add custom permissions to an existing user, use UpdateUser instead.

A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the Amazon QuickSight console. Then, you use the RegisterUser API operation to assign the named set of permissions to a Amazon QuickSight user.

Amazon QuickSight custom permissions are applied through IAM policies. Therefore, they override the permissions typically granted by assigning Amazon QuickSight users to one of the default security cohorts in Amazon QuickSight (admin, author, reader).

This feature is available only to Amazon QuickSight Enterprise edition subscriptions.

", + "UpdateRoleCustomPermissionRequest$CustomPermissionsName": "

The name of the custom permission that you want to update the role with.

", "UpdateUserRequest$CustomPermissionsName": "

(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:

  • Create and update data sources

  • Create and update datasets

  • Create and update email reports

  • Subscribe to email reports

A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the Amazon QuickSight console. Then, you use the RegisterUser API operation to assign the named set of permissions to a Amazon QuickSight user.

Amazon QuickSight custom permissions are applied through IAM policies. Therefore, they override the permissions typically granted by assigning Amazon QuickSight users to one of the default security cohorts in Amazon QuickSight (admin, author, reader).

This feature is available only to Amazon QuickSight Enterprise edition subscriptions.

", "User$CustomPermissionsName": "

The custom permissions profile associated with this user.

" } @@ -8569,6 +9044,7 @@ "base": "

The rolling date configuration of a date time filter.

", "refs": { "DateTimeDefaultValues$RollingDate": "

The rolling date of the DataTimeDefaultValues. The date is determined from the dataset based on input expression.

", + "TimeEqualityFilter$RollingDate": "

The rolling date input for the TimeEquality filter.

This field is mutually exclusive to Value and ParameterName.

", "TimeRangeFilterValue$RollingDate": "

The rolling date input value.

" } }, @@ -9003,6 +9479,8 @@ "SensitiveS3Uri": { "base": null, "refs": { + "AssetBundleImportSourceDescription$Body": "

An HTTPS download URL for the provided asset bundle that you optionally provided at the start of the import job. This URL is valid for five minutes after issuance. Call DescribeAssetBundleExportJob again for a fresh URL if needed. The downloaded asset bundle is a .qs zip file.

", + "DescribeAssetBundleExportJobResponse$DownloadUrl": "

The URL to download the exported asset bundle data from.

This URL is available only after the job has succeeded. This URL is valid for 5 minutes after issuance. Call DescribeAssetBundleExportJob again for a fresh URL if needed.

The downloaded asset bundle is a zip file named assetbundle-{jobId}.qs. The file has a .qs extension.

This URL can't be used in a StartAssetBundleImportJob API call and should only be used for download purposes.

", "SnapshotJobS3Result$S3Uri": "

The Amazon S3 Uri.

" } }, @@ -9062,6 +9540,14 @@ "DataSourceParameters$ServiceNowParameters": "

The parameters for ServiceNow.

" } }, + "ServiceType": { + "base": null, + "refs": { + "AuthorizedTargetsByService$Service": "

The name of the Amazon Web Services service.

", + "DeleteIdentityPropagationConfigRequest$Service": "

The name of the Amazon Web Services service that you want to delete the associated access scopes and authorized targets from.

", + "UpdateIdentityPropagationConfigRequest$Service": "

The name of the Amazon Web Services service that contains the authorized targets that you want to add or update.

" + } + }, "SessionLifetimeInMinutes": { "base": null, "refs": { @@ -9560,6 +10046,12 @@ "NumericalAggregationFunction$SimpleNumericalAggregation": "

Built-in aggregation functions for numerical values.

  • SUM: The sum of a dimension or measure.

  • AVERAGE: The average of a dimension or measure.

  • MIN: The minimum value of a dimension or measure.

  • MAX: The maximum value of a dimension or measure.

  • COUNT: The count of a dimension or measure.

  • DISTINCT_COUNT: The count of distinct values in a dimension or measure.

  • VAR: The variance of a dimension or measure.

  • VARP: The partitioned variance of a dimension or measure.

  • STDEV: The standard deviation of a dimension or measure.

  • STDEVP: The partitioned standard deviation of a dimension or measure.

  • MEDIAN: The median value of a dimension or measure.

" } }, + "SimpleTotalAggregationFunction": { + "base": null, + "refs": { + "TotalAggregationFunction$SimpleTotalAggregationFunction": "

A built in aggregation function for total values.

" + } + }, "SiteBaseUrl": { "base": null, "refs": { @@ -9842,6 +10334,18 @@ "UpdateDataSourceRequest$SslProperties": "

Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your underlying source.

" } }, + "StarburstParameters": { + "base": "

The parameters that are required to connect to a Starburst data source.

", + "refs": { + "DataSourceParameters$StarburstParameters": "

The parameters that are required to connect to a Starburst data source.

" + } + }, + "StarburstProductType": { + "base": null, + "refs": { + "StarburstParameters$ProductType": "

The product type for the Starburst data source.

" + } + }, "StartAssetBundleExportJobRequest": { "base": null, "refs": { @@ -9904,6 +10408,7 @@ "CreateIngestionResponse$Status": "

The HTTP status of the request.

", "CreateNamespaceResponse$Status": "

The HTTP status of the request.

", "CreateRefreshScheduleResponse$Status": "

The HTTP status of the request.

", + "CreateRoleMembershipResponse$Status": "

The HTTP status of the request.

", "CreateTemplateAliasResponse$Status": "

The HTTP status of the request.

", "CreateTemplateResponse$Status": "

The HTTP status of the request.

", "CreateThemeAliasResponse$Status": "

The HTTP status of the request.

", @@ -9923,8 +10428,11 @@ "DeleteGroupMembershipResponse$Status": "

The HTTP status of the request.

", "DeleteGroupResponse$Status": "

The HTTP status of the request.

", "DeleteIAMPolicyAssignmentResponse$Status": "

The HTTP status of the request.

", + "DeleteIdentityPropagationConfigResponse$Status": "

The HTTP status of the request.

", "DeleteNamespaceResponse$Status": "

The HTTP status of the request.

", "DeleteRefreshScheduleResponse$Status": "

The HTTP status of the request.

", + "DeleteRoleCustomPermissionResponse$Status": "

The HTTP status of the request.

", + "DeleteRoleMembershipResponse$Status": "

The HTTP status of the request.

", "DeleteTemplateAliasResponse$Status": "

The HTTP status of the request.

", "DeleteTemplateResponse$Status": "

The HTTP status of the request.

", "DeleteThemeAliasResponse$Status": "

The HTTP status of the request.

", @@ -9962,6 +10470,7 @@ "DescribeIpRestrictionResponse$Status": "

The HTTP status of the request.

", "DescribeNamespaceResponse$Status": "

The HTTP status of the request.

", "DescribeRefreshScheduleResponse$Status": "

The HTTP status of the request.

", + "DescribeRoleCustomPermissionResponse$Status": "

The HTTP status of the request.

", "DescribeTemplateAliasResponse$Status": "

The HTTP status of the request.

", "DescribeTemplateDefinitionResponse$Status": "

The HTTP status of the request.

", "DescribeTemplatePermissionsResponse$Status": "

The HTTP status of the request.

", @@ -9992,9 +10501,11 @@ "ListGroupsResponse$Status": "

The HTTP status of the request.

", "ListIAMPolicyAssignmentsForUserResponse$Status": "

The HTTP status of the request.

", "ListIAMPolicyAssignmentsResponse$Status": "

The HTTP status of the request.

", + "ListIdentityPropagationConfigsResponse$Status": "

The HTTP status of the request.

", "ListIngestionsResponse$Status": "

The HTTP status of the request.

", "ListNamespacesResponse$Status": "

The HTTP status of the request.

", "ListRefreshSchedulesResponse$Status": "

The HTTP status of the request.

", + "ListRoleMembershipsResponse$Status": "

The HTTP status of the request.

", "ListTagsForResourceResponse$Status": "

The HTTP status of the request.

", "ListTemplateAliasesResponse$Status": "

The HTTP status of the request.

", "ListTemplateVersionsResponse$Status": "

The HTTP status of the request.

", @@ -10036,9 +10547,11 @@ "UpdateFolderResponse$Status": "

The HTTP status of the request.

", "UpdateGroupResponse$Status": "

The HTTP status of the request.

", "UpdateIAMPolicyAssignmentResponse$Status": "

The HTTP status of the request.

", + "UpdateIdentityPropagationConfigResponse$Status": "

The HTTP status of the request.

", "UpdateIpRestrictionResponse$Status": "

The HTTP status of the request.

", "UpdatePublicSharingSettingsResponse$Status": "

The HTTP status of the request.

", "UpdateRefreshScheduleResponse$Status": "

The HTTP status of the request.

", + "UpdateRoleCustomPermissionResponse$Status": "

The HTTP status of the request.

", "UpdateTemplateAliasResponse$Status": "

The HTTP status of the request.

", "UpdateTemplatePermissionsResponse$Status": "

The HTTP status of the request.

", "UpdateTemplateResponse$Status": "

The HTTP status of the request.

", @@ -10068,8 +10581,9 @@ "AnalysisSearchFilter$Value": "

The value of the named item, in this case QUICKSIGHT_USER, that you want to use as a filter, for example \"Value\". An example is \"arn:aws:quicksight:us-east-1:1:user/default/UserName1\".

", "AssetBundleImportJobRefreshScheduleOverrideParameters$ScheduleId": "

A partial identifier for the specific RefreshSchedule resource being overridden. This structure is used together with the DataSetId structure.

", "AssetBundleImportJobResourceIdOverrideConfiguration$PrefixForAllResources": "

An option to request a CloudFormation variable for a prefix to be prepended to each resource's ID before import. The prefix is only added to the asset IDs and does not change the name of the asset.

", - "AssetBundleImportSourceDescription$Body": "

An HTTPS download URL for the provided asset bundle that you optionally provided at the start of the import job. This URL is valid for five minutes after issuance. Call DescribeAssetBundleExportJob again for a fresh URL if needed. The downloaded asset bundle is a .qs zip file.

", + "AssetOptions$Timezone": "

Determines the timezone for the analysis.

", "AttributeAggregationFunction$ValueForMultipleValues": "

Used by the UNIQUE_VALUE aggregation function. If there are multiple values for the field used by the aggregation, the value for this property will be returned instead. Defaults to '*'.

", + "AuthorizedTargetsList$member": null, "AxisLabelOptions$CustomLabel": "

The text for the axis label.

", "CancelIngestionRequest$DataSetId": "

The ID of the dataset used in the ingestion.

", "CancelIngestionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10111,6 +10625,7 @@ "CreateNamespaceResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "CreateRefreshScheduleResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "CreateRefreshScheduleResponse$ScheduleId": "

The ID of the refresh schedule.

", + "CreateRoleMembershipResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "CreateTemplateAliasResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "CreateTemplateResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "CreateThemeAliasResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10136,10 +10651,13 @@ "DeleteGroupMembershipResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteGroupResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteIAMPolicyAssignmentResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", + "DeleteIdentityPropagationConfigResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteNamespaceResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteRefreshScheduleRequest$ScheduleId": "

The ID of the refresh schedule.

", "DeleteRefreshScheduleResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteRefreshScheduleResponse$ScheduleId": "

The ID of the refresh schedule.

", + "DeleteRoleCustomPermissionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", + "DeleteRoleMembershipResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteTemplateAliasResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteTemplateResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DeleteThemeAliasResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10157,7 +10675,6 @@ "DescribeAnalysisDefinitionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeAnalysisPermissionsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeAnalysisResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", - "DescribeAssetBundleExportJobResponse$DownloadUrl": "

The URL to download the exported asset bundle data from.

This URL is available only after the job has succeeded. This URL is valid for 5 minutes after issuance. Call DescribeAssetBundleExportJob again for a fresh URL if needed.

The downloaded asset bundle is a zip file named assetbundle-{jobId}.qs. The file has a .qs extension.

This URL can't be used in a StartAssetBundleImportJob API call and should only be used for download purposes.

", "DescribeDashboardDefinitionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeDashboardPermissionsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeDashboardResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10182,6 +10699,7 @@ "DescribeNamespaceResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeRefreshScheduleRequest$ScheduleId": "

The ID of the refresh schedule.

", "DescribeRefreshScheduleResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", + "DescribeRoleCustomPermissionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeTemplateAliasResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeTemplateDefinitionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "DescribeTemplatePermissionsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10265,6 +10783,9 @@ "ListIAMPolicyAssignmentsRequest$NextToken": "

The token for the next set of results, or null if there are no more results.

", "ListIAMPolicyAssignmentsResponse$NextToken": "

The token for the next set of results, or null if there are no more results.

", "ListIAMPolicyAssignmentsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", + "ListIdentityPropagationConfigsRequest$NextToken": "

The token for the next set of results, or null if there are no more results.

", + "ListIdentityPropagationConfigsResponse$NextToken": "

The token for the next set of results, or null if there are no more results.

", + "ListIdentityPropagationConfigsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "ListIngestionsRequest$DataSetId": "

The ID of the dataset used in the ingestion.

", "ListIngestionsRequest$NextToken": "

The token for the next set of results, or null if there are no more results.

", "ListIngestionsResponse$NextToken": "

The token for the next set of results, or null if there are no more results.

", @@ -10273,6 +10794,9 @@ "ListNamespacesResponse$NextToken": "

A unique pagination token that can be used in a subsequent request. Receiving NextToken in your response inticates that there is more data that can be returned. To receive the data, make another ListNamespaces API call with the returned token to retrieve the next page of data. Each token is valid for 24 hours. If you try to make a ListNamespaces API call with an expired token, you will receive a HTTP 400 InvalidNextTokenException error.

", "ListNamespacesResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "ListRefreshSchedulesResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", + "ListRoleMembershipsRequest$NextToken": "

A pagination token that can be used in a subsequent request.

", + "ListRoleMembershipsResponse$NextToken": "

A pagination token that can be used in a subsequent request.

", + "ListRoleMembershipsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "ListTagsForResourceResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "ListTemplateAliasesRequest$NextToken": "

The token for the next set of results, or null if there are no more results.

", "ListTemplateAliasesResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10404,10 +10928,12 @@ "UpdateGroupResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateIAMPolicyAssignmentResponse$AssignmentId": "

The ID of the assignment.

", "UpdateIAMPolicyAssignmentResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", + "UpdateIdentityPropagationConfigResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateIpRestrictionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdatePublicSharingSettingsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateRefreshScheduleResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateRefreshScheduleResponse$ScheduleId": "

The ID of the refresh schedule.

", + "UpdateRoleCustomPermissionResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateTemplateAliasResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateTemplatePermissionsResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", "UpdateTemplateResponse$RequestId": "

The Amazon Web Services request ID for this operation.

", @@ -10851,6 +11377,12 @@ "TagList": { "base": null, "refs": { + "AssetBundleImportJobAnalysisOverrideTags$Tags": "

A list of tags for the analyses that you want to apply overrides to.

", + "AssetBundleImportJobDashboardOverrideTags$Tags": "

A list of tags for the dashboards that you want to apply overrides to.

", + "AssetBundleImportJobDataSetOverrideTags$Tags": "

A list of tags for the datasets that you want to apply overrides to.

", + "AssetBundleImportJobDataSourceOverrideTags$Tags": "

A list of tags for the data source that you want to apply overrides to.

", + "AssetBundleImportJobThemeOverrideTags$Tags": "

A list of tags for the themes that you want to apply overrides to.

", + "AssetBundleImportJobVPCConnectionOverrideTags$Tags": "

A list of tags for the VPC connections that you want to apply overrides to.

", "CreateAccountCustomizationRequest$Tags": "

A list of the tags that you want to attach to this resource.

", "CreateAnalysisRequest$Tags": "

Contains a map of the key-value pairs for the resource tag or tags assigned to the analysis.

", "CreateDashboardRequest$Tags": "

Contains a map of the key-value pairs for the resource tag or tags assigned to the dashboard.

", @@ -10863,6 +11395,7 @@ "CreateTopicRequest$Tags": "

Contains a map of the key-value pairs for the resource tag or tags that are assigned to the dataset.

", "CreateVPCConnectionRequest$Tags": "

A map of the key-value pairs for the resource tag or tags assigned to the VPC connection.

", "ListTagsForResourceResponse$Tags": "

Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.

", + "RegisterUserRequest$Tags": "

The tags to associate with the user.

", "TagResourceRequest$Tags": "

Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.

" } }, @@ -11269,7 +11802,7 @@ "ThemeSummary$LastUpdatedTime": "

The last date and time that this theme was updated.

", "ThemeVersion$CreatedTime": "

The date and time that this theme version was created.

", "ThemeVersionSummary$CreatedTime": "

The date and time that this theme version was created.

", - "TimeEqualityFilter$Value": "

The value of a TimeEquality filter.

This field is mutually exclusive to ParameterName.

", + "TimeEqualityFilter$Value": "

The value of a TimeEquality filter.

This field is mutually exclusive to RollingDate and ParameterName.

", "TimeRangeDrillDownFilter$RangeMinimum": "

The minimum value for the filter value range.

", "TimeRangeDrillDownFilter$RangeMaximum": "

The maximum value for the filter value range.

", "TimeRangeFilterValue$StaticValue": "

The static input value.

", @@ -11575,6 +12108,25 @@ "Computation$TotalAggregation": "

The total aggregation computation configuration.

" } }, + "TotalAggregationFunction": { + "base": "

An aggregation function that aggregates the total values of a measure.

", + "refs": { + "TotalAggregationOption$TotalAggregationFunction": "

The total aggregation function that you want to set for a specified field id.

" + } + }, + "TotalAggregationOption": { + "base": "

The total aggregation settings map of a field id.

", + "refs": { + "TotalAggregationOptionList$member": null + } + }, + "TotalAggregationOptionList": { + "base": null, + "refs": { + "PivotTotalOptions$TotalAggregationOptions": "

The total aggregation options for each value field.

", + "TotalOptions$TotalAggregationOptions": "

The total aggregation settings for each value field.

" + } + }, "TotalOptions": { "base": "

The total options for a table visual.

", "refs": { @@ -11642,6 +12194,12 @@ "KPIOptions$TrendArrows": "

The options that determine the presentation of trend arrows in a KPI visual.

" } }, + "TrinoParameters": { + "base": "

The parameters that are required to connect to a Trino data source.

", + "refs": { + "DataSourceParameters$TrinoParameters": "

The parameters that are required to connect to a Trino data source.

" + } + }, "TwitterParameters": { "base": "

The parameters for Twitter.

", "refs": { @@ -11899,6 +12457,16 @@ "refs": { } }, + "UpdateIdentityPropagationConfigRequest": { + "base": null, + "refs": { + } + }, + "UpdateIdentityPropagationConfigResponse": { + "base": null, + "refs": { + } + }, "UpdateIpRestrictionRequest": { "base": null, "refs": { @@ -11951,6 +12519,16 @@ "UpdateTopicPermissionsRequest$RevokePermissions": "

The resource permissions that you want to revoke from the topic.

" } }, + "UpdateRoleCustomPermissionRequest": { + "base": null, + "refs": { + } + }, + "UpdateRoleCustomPermissionResponse": { + "base": null, + "refs": { + } + }, "UpdateTemplateAliasRequest": { "base": null, "refs": { @@ -12160,6 +12738,23 @@ "ListVPCConnectionsResponse$VPCConnectionSummaries": "

A VPCConnectionSummaries object that returns a summary of VPC connection objects.

" } }, + "ValidationStrategy": { + "base": "

The option to relax the validation that is required to create and update analyses, dashboards, and templates with definition objects. When you set this value to LENIENT, validation is skipped for specific errors.

", + "refs": { + "CreateAnalysisRequest$ValidationStrategy": "

The option to relax the validation needed to create an analysis with definition objects. This skips the validation step for specific errors.

", + "CreateDashboardRequest$ValidationStrategy": "

The option to relax the validation needed to create a dashboard with definition objects. This option skips the validation step for specific errors.

", + "CreateTemplateRequest$ValidationStrategy": "

TThe option to relax the validation needed to create a template with definition objects. This skips the validation step for specific errors.

", + "UpdateAnalysisRequest$ValidationStrategy": "

The option to relax the validation needed to update an analysis with definition objects. This skips the validation step for specific errors.

", + "UpdateDashboardRequest$ValidationStrategy": "

The option to relax the validation needed to update a dashboard with definition objects. This skips the validation step for specific errors.

", + "UpdateTemplateRequest$ValidationStrategy": "

The option to relax the validation needed to update a template with definition objects. This skips the validation step for specific errors.

" + } + }, + "ValidationStrategyMode": { + "base": null, + "refs": { + "ValidationStrategy$Mode": "

The mode of validation for the asset to be created or updated. When you set this value to STRICT, strict validation for every error is enforced. When you set this value to LENIENT, validation is skipped for specific UI errors.

" + } + }, "ValueWhenUnsetOption": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/quicksight/2018-04-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/quicksight/2018-04-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -102,6 +102,12 @@ "limit_key": "MaxResults", "result_key": "Namespaces" }, + "ListRoleMemberships": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "MembersList" + }, "ListTemplateAliases": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -163,7 +163,8 @@ {"shape":"ValidationException"}, {"shape":"InternalServerException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ConflictException"} + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} ] } }, @@ -207,7 +208,8 @@ "ResourceTags":{"shape":"ResourceTags"}, "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, - "LockState":{"shape":"LockState"} + "LockState":{"shape":"LockState"}, + "RuleArn":{"shape":"RuleArn"} } }, "DeleteRuleRequest":{ @@ -253,7 +255,8 @@ "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, "LockState":{"shape":"LockState"}, - "LockEndTime":{"shape":"TimeStamp"} + "LockEndTime":{"shape":"TimeStamp"}, + "RuleArn":{"shape":"RuleArn"} } }, "InternalServerException":{ @@ -332,7 +335,8 @@ "ResourceTags":{"shape":"ResourceTags"}, "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, - "LockState":{"shape":"LockState"} + "LockState":{"shape":"LockState"}, + "RuleArn":{"shape":"RuleArn"} } }, "LockState":{ @@ -437,7 +441,8 @@ "Identifier":{"shape":"RuleIdentifier"}, "Description":{"shape":"Description"}, "RetentionPeriod":{"shape":"RetentionPeriod"}, - "LockState":{"shape":"LockState"} + "LockState":{"shape":"LockState"}, + "RuleArn":{"shape":"RuleArn"} } }, "RuleSummaryList":{ @@ -555,7 +560,8 @@ "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, "LockState":{"shape":"LockState"}, - "LockEndTime":{"shape":"TimeStamp"} + "LockEndTime":{"shape":"TimeStamp"}, + "RuleArn":{"shape":"RuleArn"} } }, "UntagResourceRequest":{ @@ -607,7 +613,8 @@ "ResourceTags":{"shape":"ResourceTags"}, "Status":{"shape":"RuleStatus"}, "LockState":{"shape":"LockState"}, - "LockEndTime":{"shape":"TimeStamp"} + "LockEndTime":{"shape":"TimeStamp"}, + "RuleArn":{"shape":"RuleArn"} } }, "ValidationException":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

This is the Recycle Bin API Reference. This documentation provides descriptions and syntax for each of the actions and data types in Recycle Bin.

Recycle Bin is a resource recovery feature that enables you to restore accidentally deleted snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify.

You can restore a resource from the Recycle Bin at any time before its retention period expires. After you restore a resource from the Recycle Bin, the resource is removed from the Recycle Bin, and you can then use it in the same way you use any other resource of that type in your account. If the retention period expires and the resource is not restored, the resource is permanently deleted from the Recycle Bin and is no longer available for recovery. For more information about Recycle Bin, see Recycle Bin in the Amazon Elastic Compute Cloud User Guide.

", + "service": "

This is the Recycle Bin API Reference. This documentation provides descriptions and syntax for each of the actions and data types in Recycle Bin.

Recycle Bin is a resource recovery feature that enables you to restore accidentally deleted snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify.

You can restore a resource from the Recycle Bin at any time before its retention period expires. After you restore a resource from the Recycle Bin, the resource is removed from the Recycle Bin, and you can then use it in the same way you use any other resource of that type in your account. If the retention period expires and the resource is not restored, the resource is permanently deleted from the Recycle Bin and is no longer available for recovery. For more information about Recycle Bin, see Recycle Bin in the Amazon Elastic Compute Cloud User Guide.

", "operations": { "CreateRule": "

Creates a Recycle Bin retention rule. For more information, see Create Recycle Bin retention rules in the Amazon Elastic Compute Cloud User Guide.

", "DeleteRule": "

Deletes a Recycle Bin retention rule. For more information, see Delete Recycle Bin retention rules in the Amazon Elastic Compute Cloud User Guide.

", @@ -232,9 +232,15 @@ "RuleArn": { "base": null, "refs": { + "CreateRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the retention rule.

", + "GetRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the retention rule.

", "ListTagsForResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the retention rule.

", + "LockRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the retention rule.

", + "RuleSummary$RuleArn": "

The Amazon Resource Name (ARN) of the retention rule.

", "TagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the retention rule.

", - "UntagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the retention rule.

" + "UnlockRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the retention rule.

", + "UntagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the retention rule.

", + "UpdateRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the retention rule.

" } }, "RuleIdentifier": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,38 +32,83 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "parseURL", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "Endpoint" + "ref": "Region" } ], - "assign": "url" + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -75,158 +120,103 @@ }, true ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://rbin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "type": "tree" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://rbin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, - "supportsFIPS" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], @@ -237,79 +227,88 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://rbin.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://rbin.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://rbin.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://rbin.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rbin/2021-06-15/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rbin/2021-06-15/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,94 +1,68 @@ { "testCases": [ { - "documentation": "For region ap-south-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-south-2.api.aws" - } - }, - "params": { - "Region": "ap-south-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-south-2 with FIPS enabled and DualStack disabled", + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-south-2.amazonaws.com" + "url": "https://rbin.af-south-1.amazonaws.com" } }, "params": { - "Region": "ap-south-2", - "UseFIPS": true, + "Region": "af-south-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-south-2 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-south-2.api.aws" + "url": "https://rbin.ap-east-1.amazonaws.com" } }, "params": { - "Region": "ap-south-2", + "Region": "ap-east-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region ap-south-2 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-south-2.amazonaws.com" + "url": "https://rbin.ap-northeast-1.amazonaws.com" } }, "params": { - "Region": "ap-south-2", + "Region": "ap-northeast-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-south-1.api.aws" - } - }, - "params": { - "Region": "ap-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-south-1.amazonaws.com" + "url": "https://rbin.ap-northeast-2.amazonaws.com" } }, "params": { - "Region": "ap-south-1", - "UseFIPS": true, + "Region": "ap-northeast-2", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-south-1.api.aws" + "url": "https://rbin.ap-northeast-3.amazonaws.com" } }, "params": { - "Region": "ap-south-1", + "Region": "ap-northeast-3", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { @@ -105,253 +79,32 @@ } }, { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-1.api.aws" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-1.api.aws" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-2.api.aws" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-2.api.aws" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-gov-east-1.api.aws" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-gov-east-1.api.aws" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.us-gov-east-1.amazonaws.com" + "url": "https://rbin.ap-southeast-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "ap-southeast-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region me-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.me-central-1.api.aws" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region me-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.me-central-1.amazonaws.com" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region me-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.me-central-1.api.aws" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region me-central-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.me-central-1.amazonaws.com" + "url": "https://rbin.ap-southeast-2.amazonaws.com" } }, "params": { - "Region": "me-central-1", + "Region": "ap-southeast-2", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ca-central-1.api.aws" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ca-central-1.amazonaws.com" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ca-central-1.api.aws" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -365,45 +118,6 @@ } }, { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-1.api.aws" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-1.api.aws" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -417,253 +131,6 @@ } }, { - "documentation": "For region eu-central-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-2.api.aws" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-central-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-2.api.aws" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-1.api.aws" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-1.api.aws" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-2.api.aws" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-2.api.aws" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.af-south-1.api.aws" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.af-south-1.amazonaws.com" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.af-south-1.api.aws" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.af-south-1.amazonaws.com" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-north-1.api.aws" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-north-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-north-1.api.aws" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -677,94 +144,29 @@ } }, { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-3.api.aws" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-3.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-3.api.aws" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.eu-west-3.amazonaws.com" + "url": "https://rbin.eu-south-1.amazonaws.com" } }, "params": { - "Region": "eu-west-3", + "Region": "eu-south-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-2.api.aws" - } - }, - "params": { - "Region": "eu-west-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.eu-west-2.api.aws" + "url": "https://rbin.eu-west-1.amazonaws.com" } }, "params": { - "Region": "eu-west-2", + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { @@ -781,370 +183,136 @@ } }, { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-1.api.aws" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-1.api.aws" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.eu-west-1.amazonaws.com" + "url": "https://rbin.eu-west-3.amazonaws.com" } }, "params": { - "Region": "eu-west-1", + "Region": "eu-west-3", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-3.api.aws" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-3.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-3.api.aws" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-northeast-3.amazonaws.com" + "url": "https://rbin.me-south-1.amazonaws.com" } }, "params": { - "Region": "ap-northeast-3", + "Region": "me-south-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-2.api.aws" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-2.api.aws" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-northeast-2.amazonaws.com" + "url": "https://rbin.sa-east-1.amazonaws.com" } }, "params": { - "Region": "ap-northeast-2", + "Region": "sa-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-1.api.aws" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-1.api.aws" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-northeast-1.amazonaws.com" + "url": "https://rbin.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-northeast-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.me-south-1.api.aws" - } - }, - "params": { - "Region": "me-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.me-south-1.amazonaws.com" - } - }, - "params": { - "Region": "me-south-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.me-south-1.api.aws" - } - }, - "params": { - "Region": "me-south-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.me-south-1.amazonaws.com" + "url": "https://rbin.us-east-2.amazonaws.com" } }, "params": { - "Region": "me-south-1", + "Region": "us-east-2", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.sa-east-1.api.aws" - } - }, - "params": { - "Region": "sa-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.sa-east-1.amazonaws.com" - } - }, - "params": { - "Region": "sa-east-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.sa-east-1.api.aws" + "url": "https://rbin.us-west-1.amazonaws.com" } }, "params": { - "Region": "sa-east-1", + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.sa-east-1.amazonaws.com" + "url": "https://rbin.us-west-2.amazonaws.com" } }, "params": { - "Region": "sa-east-1", + "Region": "us-west-2", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-east-1.api.aws" + "url": "https://rbin-fips.us-east-1.api.aws" } }, "params": { - "Region": "ap-east-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-east-1.amazonaws.com" + "url": "https://rbin-fips.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-east-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin.ap-east-1.api.aws" + "url": "https://rbin.us-east-1.api.aws" } }, "params": { - "Region": "ap-east-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-east-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-east-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { @@ -1197,378 +365,175 @@ } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-gov-west-1.api.aws" - } - }, - "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-gov-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-gov-west-1.api.aws" - } - }, - "params": { - "Region": "us-gov-west-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-gov-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-west-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-1.api.aws" + "url": "https://rbin-fips.us-gov-east-1.api.aws" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-1.amazonaws.com" + "url": "https://rbin-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-1.api.aws" + "url": "https://rbin.us-gov-east-1.api.aws" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-1.amazonaws.com" + "url": "https://rbin.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-southeast-2.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "ap-southeast-2", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-2.amazonaws.com" + "url": "https://rbin-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "ap-southeast-2", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin.ap-southeast-2.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "ap-southeast-2", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-2.amazonaws.com" + "url": "https://rbin.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "ap-southeast-2", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-southeast-3.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "ap-southeast-3", + "Region": "us-isob-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-3.amazonaws.com" + "url": "https://rbin-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "Region": "ap-southeast-3", + "Region": "us-isob-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin.ap-southeast-3.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "ap-southeast-3", + "Region": "us-isob-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-3.amazonaws.com" + "url": "https://rbin.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "Region": "ap-southeast-3", + "Region": "us-isob-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-east-1.api.aws" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-east-1.api.aws" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://rbin.us-east-1.amazonaws.com" + "url": "https://example.com" } }, "params": { "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-east-2.api.aws" - } - }, - "params": { - "Region": "us-east-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-east-2.amazonaws.com" - } - }, - "params": { - "Region": "us-east-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-east-2.api.aws" - } - }, - "params": { - "Region": "us-east-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-east-2.amazonaws.com" - } - }, - "params": { - "Region": "us-east-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.cn-northwest-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.cn-northwest-1.amazonaws.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.cn-northwest-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.cn-northwest-1.amazonaws.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Endpoint": "https://example.com" @@ -1597,6 +562,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -69,7 +69,10 @@ {"shape":"DBSnapshotNotFoundFault"}, {"shape":"DBProxyNotFoundFault"}, {"shape":"DBProxyTargetGroupNotFoundFault"}, - {"shape":"BlueGreenDeploymentNotFoundFault"} + {"shape":"BlueGreenDeploymentNotFoundFault"}, + {"shape":"IntegrationNotFoundFault"}, + {"shape":"TenantDatabaseNotFoundFault"}, + {"shape":"DBSnapshotTenantDatabaseNotFoundFault"} ] }, "ApplyPendingMaintenanceAction":{ @@ -293,6 +296,7 @@ {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidDBClusterStateFault"}, + {"shape":"InvalidDBSubnetGroupFault"}, {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidDBInstanceStateFault"}, @@ -303,7 +307,8 @@ {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"GlobalClusterNotFoundFault"}, {"shape":"InvalidGlobalClusterStateFault"}, - {"shape":"DomainNotFoundFault"} + {"shape":"DomainNotFoundFault"}, + {"shape":"OptionGroupNotFoundFault"} ] }, "CreateDBClusterEndpoint":{ @@ -393,7 +398,8 @@ {"shape":"DomainNotFoundFault"}, {"shape":"BackupPolicyNotFoundFault"}, {"shape":"NetworkTypeNotSupported"}, - {"shape":"CertificateNotFoundFault"} + {"shape":"CertificateNotFoundFault"}, + {"shape":"TenantDatabaseQuotaExceededFault"} ] }, "CreateDBInstanceReadReplica":{ @@ -429,7 +435,8 @@ {"shape":"StorageTypeNotSupportedFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"DomainNotFoundFault"}, - {"shape":"NetworkTypeNotSupported"} + {"shape":"NetworkTypeNotSupported"}, + {"shape":"TenantDatabaseQuotaExceededFault"} ] }, "CreateDBParameterGroup":{ @@ -577,6 +584,26 @@ {"shape":"DBClusterNotFoundFault"} ] }, + "CreateIntegration":{ + "name":"CreateIntegration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateIntegrationMessage"}, + "output":{ + "shape":"Integration", + "resultWrapper":"CreateIntegrationResult" + }, + "errors":[ + {"shape":"DBClusterNotFoundFault"}, + {"shape":"DBInstanceNotFoundFault"}, + {"shape":"IntegrationAlreadyExistsFault"}, + {"shape":"IntegrationQuotaExceededFault"}, + {"shape":"KMSKeyNotAccessibleFault"}, + {"shape":"IntegrationConflictOperationFault"} + ] + }, "CreateOptionGroup":{ "name":"CreateOptionGroup", "http":{ @@ -593,6 +620,24 @@ {"shape":"OptionGroupQuotaExceededFault"} ] }, + "CreateTenantDatabase":{ + "name":"CreateTenantDatabase", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateTenantDatabaseMessage"}, + "output":{ + "shape":"CreateTenantDatabaseResult", + "resultWrapper":"CreateTenantDatabaseResult" + }, + "errors":[ + {"shape":"DBInstanceNotFoundFault"}, + {"shape":"InvalidDBInstanceStateFault"}, + {"shape":"TenantDatabaseAlreadyExistsFault"}, + {"shape":"TenantDatabaseQuotaExceededFault"} + ] + }, "DeleteBlueGreenDeployment":{ "name":"DeleteBlueGreenDeployment", "http":{ @@ -859,6 +904,23 @@ {"shape":"InvalidGlobalClusterStateFault"} ] }, + "DeleteIntegration":{ + "name":"DeleteIntegration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteIntegrationMessage"}, + "output":{ + "shape":"Integration", + "resultWrapper":"DeleteIntegrationResult" + }, + "errors":[ + {"shape":"IntegrationNotFoundFault"}, + {"shape":"IntegrationConflictOperationFault"}, + {"shape":"InvalidIntegrationStateFault"} + ] + }, "DeleteOptionGroup":{ "name":"DeleteOptionGroup", "http":{ @@ -871,6 +933,23 @@ {"shape":"InvalidOptionGroupStateFault"} ] }, + "DeleteTenantDatabase":{ + "name":"DeleteTenantDatabase", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTenantDatabaseMessage"}, + "output":{ + "shape":"DeleteTenantDatabaseResult", + "resultWrapper":"DeleteTenantDatabaseResult" + }, + "errors":[ + {"shape":"DBInstanceNotFoundFault"}, + {"shape":"TenantDatabaseNotFoundFault"}, + {"shape":"InvalidDBInstanceStateFault"} + ] + }, "DeregisterDBProxyTargets":{ "name":"DeregisterDBProxyTargets", "http":{ @@ -1235,6 +1314,21 @@ {"shape":"DBSnapshotNotFoundFault"} ] }, + "DescribeDBSnapshotTenantDatabases":{ + "name":"DescribeDBSnapshotTenantDatabases", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeDBSnapshotTenantDatabasesMessage"}, + "output":{ + "shape":"DBSnapshotTenantDatabasesMessage", + "resultWrapper":"DescribeDBSnapshotTenantDatabasesResult" + }, + "errors":[ + {"shape":"DBSnapshotNotFoundFault"} + ] + }, "DescribeDBSnapshots":{ "name":"DescribeDBSnapshots", "http":{ @@ -1358,6 +1452,21 @@ {"shape":"GlobalClusterNotFoundFault"} ] }, + "DescribeIntegrations":{ + "name":"DescribeIntegrations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeIntegrationsMessage"}, + "output":{ + "shape":"DescribeIntegrationsResponse", + "resultWrapper":"DescribeIntegrationsResult" + }, + "errors":[ + {"shape":"IntegrationNotFoundFault"} + ] + }, "DescribeOptionGroupOptions":{ "name":"DescribeOptionGroupOptions", "http":{ @@ -1454,6 +1563,21 @@ "resultWrapper":"DescribeSourceRegionsResult" } }, + "DescribeTenantDatabases":{ + "name":"DescribeTenantDatabases", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeTenantDatabasesMessage"}, + "output":{ + "shape":"TenantDatabasesMessage", + "resultWrapper":"DescribeTenantDatabasesResult" + }, + "errors":[ + {"shape":"DBInstanceNotFoundFault"} + ] + }, "DescribeValidDBInstanceModifications":{ "name":"DescribeValidDBInstanceModifications", "http":{ @@ -1538,7 +1662,10 @@ {"shape":"DBClusterNotFoundFault"}, {"shape":"DBProxyNotFoundFault"}, {"shape":"DBProxyTargetGroupNotFoundFault"}, - {"shape":"BlueGreenDeploymentNotFoundFault"} + {"shape":"BlueGreenDeploymentNotFoundFault"}, + {"shape":"IntegrationNotFoundFault"}, + {"shape":"TenantDatabaseNotFoundFault"}, + {"shape":"DBSnapshotTenantDatabaseNotFoundFault"} ] }, "ModifyActivityStream":{ @@ -1631,7 +1758,8 @@ {"shape":"DBClusterAlreadyExistsFault"}, {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DomainNotFoundFault"}, - {"shape":"StorageTypeNotAvailableFault"} + {"shape":"StorageTypeNotAvailableFault"}, + {"shape":"OptionGroupNotFoundFault"} ] }, "ModifyDBClusterEndpoint":{ @@ -1717,7 +1845,8 @@ {"shape":"BackupPolicyNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"InvalidDBClusterStateFault"}, - {"shape":"NetworkTypeNotSupported"} + {"shape":"NetworkTypeNotSupported"}, + {"shape":"TenantDatabaseQuotaExceededFault"} ] }, "ModifyDBParameterGroup":{ @@ -1893,6 +2022,24 @@ {"shape":"OptionGroupNotFoundFault"} ] }, + "ModifyTenantDatabase":{ + "name":"ModifyTenantDatabase", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ModifyTenantDatabaseMessage"}, + "output":{ + "shape":"ModifyTenantDatabaseResult", + "resultWrapper":"ModifyTenantDatabaseResult" + }, + "errors":[ + {"shape":"DBInstanceNotFoundFault"}, + {"shape":"TenantDatabaseNotFoundFault"}, + {"shape":"TenantDatabaseAlreadyExistsFault"}, + {"shape":"InvalidDBInstanceStateFault"} + ] + }, "PromoteReadReplica":{ "name":"PromoteReadReplica", "http":{ @@ -2070,7 +2217,10 @@ {"shape":"DBClusterNotFoundFault"}, {"shape":"DBProxyNotFoundFault"}, {"shape":"DBProxyTargetGroupNotFoundFault"}, - {"shape":"BlueGreenDeploymentNotFoundFault"} + {"shape":"BlueGreenDeploymentNotFoundFault"}, + {"shape":"IntegrationNotFoundFault"}, + {"shape":"TenantDatabaseNotFoundFault"}, + {"shape":"DBSnapshotTenantDatabaseNotFoundFault"} ] }, "ResetDBClusterParameterGroup":{ @@ -2235,7 +2385,8 @@ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"BackupPolicyNotFoundFault"}, {"shape":"NetworkTypeNotSupported"}, - {"shape":"DBClusterSnapshotNotFoundFault"} + {"shape":"DBClusterSnapshotNotFoundFault"}, + {"shape":"TenantDatabaseQuotaExceededFault"} ] }, "RestoreDBInstanceFromS3":{ @@ -2304,7 +2455,8 @@ {"shape":"BackupPolicyNotFoundFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBInstanceAutomatedBackupNotFoundFault"}, - {"shape":"NetworkTypeNotSupported"} + {"shape":"NetworkTypeNotSupported"}, + {"shape":"TenantDatabaseQuotaExceededFault"} ] }, "RevokeDBSecurityGroupIngress":{ @@ -2682,6 +2834,11 @@ "ResourcePendingMaintenanceActions":{"shape":"ResourcePendingMaintenanceActions"} } }, + "Arn":{ + "type":"string", + "max":2048, + "min":20 + }, "AttributeValueList":{ "type":"list", "member":{ @@ -2944,6 +3101,7 @@ "CertificateMessage":{ "type":"structure", "members":{ + "DefaultCertificateForNewLaunches":{"shape":"String"}, "Certificates":{"shape":"CertificateList"}, "Marker":{"shape":"String"} } @@ -2992,6 +3150,7 @@ "EngineVersion":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "AllocatedStorage":{"shape":"IntegerOptional"}, + "RdsCustomClusterConfiguration":{"shape":"RdsCustomClusterConfiguration"}, "Iops":{"shape":"IntegerOptional"}, "StorageType":{"shape":"String"} } @@ -3133,7 +3292,9 @@ "TargetEngineVersion":{"shape":"TargetEngineVersion"}, "TargetDBParameterGroupName":{"shape":"TargetDBParameterGroupName"}, "TargetDBClusterParameterGroupName":{"shape":"TargetDBClusterParameterGroupName"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "TargetDBInstanceClass":{"shape":"TargetDBInstanceClass"}, + "UpgradeTargetStorageConfig":{"shape":"BooleanOptional"} } }, "CreateBlueGreenDeploymentResponse":{ @@ -3222,6 +3383,7 @@ "EnableCloudwatchLogsExports":{"shape":"LogTypeList"}, "EngineMode":{"shape":"String"}, "ScalingConfiguration":{"shape":"ScalingConfiguration"}, + "RdsCustomClusterConfiguration":{"shape":"RdsCustomClusterConfiguration"}, "DeletionProtection":{"shape":"BooleanOptional"}, "GlobalClusterIdentifier":{"shape":"String"}, "EnableHttpEndpoint":{"shape":"BooleanOptional"}, @@ -3359,7 +3521,9 @@ "ManageMasterUserPassword":{"shape":"BooleanOptional"}, "MasterUserSecretKmsKeyId":{"shape":"String"}, "CACertificateIdentifier":{"shape":"String"}, - "DBSystemId":{"shape":"String"} + "DBSystemId":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"}, + "MultiTenant":{"shape":"BooleanOptional"} } }, "CreateDBInstanceReadReplicaMessage":{ @@ -3407,7 +3571,9 @@ "StorageThroughput":{"shape":"IntegerOptional"}, "EnableCustomerOwnedIp":{"shape":"BooleanOptional"}, "AllocatedStorage":{"shape":"IntegerOptional"}, - "SourceDBClusterIdentifier":{"shape":"String"} + "SourceDBClusterIdentifier":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"}, + "UpgradeStorageConfig":{"shape":"BooleanOptional"} } }, "CreateDBInstanceReadReplicaResult":{ @@ -3588,6 +3754,22 @@ "GlobalCluster":{"shape":"GlobalCluster"} } }, + "CreateIntegrationMessage":{ + "type":"structure", + "required":[ + "SourceArn", + "TargetArn", + "IntegrationName" + ], + "members":{ + "SourceArn":{"shape":"SourceArn"}, + "TargetArn":{"shape":"Arn"}, + "IntegrationName":{"shape":"IntegrationName"}, + "KMSKeyId":{"shape":"String"}, + "AdditionalEncryptionContext":{"shape":"EncryptionContextMap"}, + "Tags":{"shape":"TagList"} + } + }, "CreateOptionGroupMessage":{ "type":"structure", "required":[ @@ -3610,6 +3792,30 @@ "OptionGroup":{"shape":"OptionGroup"} } }, + "CreateTenantDatabaseMessage":{ + "type":"structure", + "required":[ + "DBInstanceIdentifier", + "TenantDBName", + "MasterUsername", + "MasterUserPassword" + ], + "members":{ + "DBInstanceIdentifier":{"shape":"String"}, + "TenantDBName":{"shape":"String"}, + "MasterUsername":{"shape":"String"}, + "MasterUserPassword":{"shape":"SensitiveString"}, + "CharacterSetName":{"shape":"String"}, + "NcharCharacterSetName":{"shape":"String"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateTenantDatabaseResult":{ + "type":"structure", + "members":{ + "TenantDatabase":{"shape":"TenantDatabase"} + } + }, "CustomAvailabilityZoneNotFoundFault":{ "type":"structure", "members":{ @@ -3716,6 +3922,7 @@ "PreferredMaintenanceWindow":{"shape":"String"}, "ReplicationSourceIdentifier":{"shape":"String"}, "ReadReplicaIdentifiers":{"shape":"ReadReplicaIdentifierList"}, + "StatusInfos":{"shape":"DBClusterStatusInfoList"}, "DBClusterMembers":{"shape":"DBClusterMemberList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "HostedZoneId":{"shape":"String"}, @@ -3734,6 +3941,7 @@ "Capacity":{"shape":"IntegerOptional"}, "EngineMode":{"shape":"String"}, "ScalingConfigurationInfo":{"shape":"ScalingConfigurationInfo"}, + "RdsCustomClusterConfiguration":{"shape":"RdsCustomClusterConfiguration"}, "DeletionProtection":{"shape":"BooleanOptional"}, "HttpEndpointEnabled":{"shape":"BooleanOptional"}, "ActivityStreamMode":{"shape":"ActivityStreamMode"}, @@ -4210,6 +4418,22 @@ }, "exception":true }, + "DBClusterStatusInfo":{ + "type":"structure", + "members":{ + "StatusType":{"shape":"String"}, + "Normal":{"shape":"Boolean"}, + "Status":{"shape":"String"}, + "Message":{"shape":"String"} + } + }, + "DBClusterStatusInfoList":{ + "type":"list", + "member":{ + "shape":"DBClusterStatusInfo", + "locationName":"DBClusterStatusInfo" + } + }, "DBEngineVersion":{ "type":"structure", "members":{ @@ -4244,7 +4468,8 @@ "CustomDBEngineVersionManifest":{"shape":"CustomDBEngineVersionManifest"}, "SupportsCertificateRotationWithoutRestart":{"shape":"BooleanOptional"}, "SupportedCACertificateIdentifiers":{"shape":"CACertificateIdentifiersList"}, - "SupportsLocalWriteForwarding":{"shape":"BooleanOptional"} + "SupportsLocalWriteForwarding":{"shape":"BooleanOptional"}, + "SupportsIntegrations":{"shape":"Boolean"} } }, "DBEngineVersionList":{ @@ -4345,7 +4570,10 @@ "MasterUserSecret":{"shape":"MasterUserSecret"}, "CertificateDetails":{"shape":"CertificateDetails"}, "ReadReplicaSourceDBClusterIdentifier":{"shape":"String"}, - "PercentProgress":{"shape":"String"} + "PercentProgress":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"Boolean"}, + "IsStorageConfigUpgradeAvailable":{"shape":"BooleanOptional"}, + "MultiTenant":{"shape":"BooleanOptional"} }, "wrapper":true }, @@ -4391,7 +4619,9 @@ "DBInstanceAutomatedBackupsReplications":{"shape":"DBInstanceAutomatedBackupsReplicationList"}, "BackupTarget":{"shape":"String"}, "StorageThroughput":{"shape":"IntegerOptional"}, - "AwsBackupRecoveryPointArn":{"shape":"String"} + "AwsBackupRecoveryPointArn":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"}, + "MultiTenant":{"shape":"BooleanOptional"} }, "wrapper":true }, @@ -4969,7 +5199,9 @@ "SnapshotDatabaseTime":{"shape":"TStamp"}, "SnapshotTarget":{"shape":"String"}, "StorageThroughput":{"shape":"IntegerOptional"}, - "DBSystemId":{"shape":"String"} + "DBSystemId":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"Boolean"}, + "MultiTenant":{"shape":"BooleanOptional"} }, "wrapper":true }, @@ -5032,6 +5264,50 @@ }, "exception":true }, + "DBSnapshotTenantDatabase":{ + "type":"structure", + "members":{ + "DBSnapshotIdentifier":{"shape":"String"}, + "DBInstanceIdentifier":{"shape":"String"}, + "DbiResourceId":{"shape":"String"}, + "EngineName":{"shape":"String"}, + "SnapshotType":{"shape":"String"}, + "TenantDatabaseCreateTime":{"shape":"TStamp"}, + "TenantDBName":{"shape":"String"}, + "MasterUsername":{"shape":"String"}, + "TenantDatabaseResourceId":{"shape":"String"}, + "CharacterSetName":{"shape":"String"}, + "DBSnapshotTenantDatabaseARN":{"shape":"String"}, + "NcharCharacterSetName":{"shape":"String"}, + "TagList":{"shape":"TagList"} + }, + "wrapper":true + }, + "DBSnapshotTenantDatabaseNotFoundFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"DBSnapshotTenantDatabaseNotFoundFault", + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "DBSnapshotTenantDatabasesList":{ + "type":"list", + "member":{ + "shape":"DBSnapshotTenantDatabase", + "locationName":"DBSnapshotTenantDatabase" + } + }, + "DBSnapshotTenantDatabasesMessage":{ + "type":"structure", + "members":{ + "Marker":{"shape":"String"}, + "DBSnapshotTenantDatabases":{"shape":"DBSnapshotTenantDatabasesList"} + } + }, "DBSubnetGroup":{ "type":"structure", "members":{ @@ -5338,6 +5614,13 @@ "GlobalCluster":{"shape":"GlobalCluster"} } }, + "DeleteIntegrationMessage":{ + "type":"structure", + "required":["IntegrationIdentifier"], + "members":{ + "IntegrationIdentifier":{"shape":"IntegrationIdentifier"} + } + }, "DeleteOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], @@ -5345,6 +5628,25 @@ "OptionGroupName":{"shape":"String"} } }, + "DeleteTenantDatabaseMessage":{ + "type":"structure", + "required":[ + "DBInstanceIdentifier", + "TenantDBName" + ], + "members":{ + "DBInstanceIdentifier":{"shape":"String"}, + "TenantDBName":{"shape":"String"}, + "SkipFinalSnapshot":{"shape":"Boolean"}, + "FinalDBSnapshotIdentifier":{"shape":"String"} + } + }, + "DeleteTenantDatabaseResult":{ + "type":"structure", + "members":{ + "TenantDatabase":{"shape":"TenantDatabase"} + } + }, "DeregisterDBProxyTargetsRequest":{ "type":"structure", "required":["DBProxyName"], @@ -5659,6 +5961,18 @@ "DBSnapshotAttributesResult":{"shape":"DBSnapshotAttributesResult"} } }, + "DescribeDBSnapshotTenantDatabasesMessage":{ + "type":"structure", + "members":{ + "DBInstanceIdentifier":{"shape":"String"}, + "DBSnapshotIdentifier":{"shape":"String"}, + "SnapshotType":{"shape":"String"}, + "Filters":{"shape":"FilterList"}, + "MaxRecords":{"shape":"IntegerOptional"}, + "Marker":{"shape":"String"}, + "DbiResourceId":{"shape":"String"} + } + }, "DescribeDBSnapshotsMessage":{ "type":"structure", "members":{ @@ -5764,6 +6078,22 @@ "Marker":{"shape":"String"} } }, + "DescribeIntegrationsMessage":{ + "type":"structure", + "members":{ + "IntegrationIdentifier":{"shape":"IntegrationIdentifier"}, + "Filters":{"shape":"FilterList"}, + "MaxRecords":{"shape":"IntegerOptional"}, + "Marker":{"shape":"Marker"} + } + }, + "DescribeIntegrationsResponse":{ + "type":"structure", + "members":{ + "Marker":{"shape":"Marker"}, + "Integrations":{"shape":"IntegrationList"} + } + }, "DescribeOptionGroupOptionsMessage":{ "type":"structure", "required":["EngineName"], @@ -5849,6 +6179,16 @@ "Filters":{"shape":"FilterList"} } }, + "DescribeTenantDatabasesMessage":{ + "type":"structure", + "members":{ + "DBInstanceIdentifier":{"shape":"String"}, + "TenantDBName":{"shape":"String"}, + "Filters":{"shape":"FilterList"}, + "Marker":{"shape":"String"}, + "MaxRecords":{"shape":"IntegerOptional"} + } + }, "DescribeValidDBInstanceModificationsMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], @@ -5962,6 +6302,11 @@ }, "exception":true }, + "EncryptionContextMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, "Endpoint":{ "type":"structure", "members":{ @@ -6425,6 +6770,117 @@ }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, + "Integration":{ + "type":"structure", + "members":{ + "SourceArn":{"shape":"SourceArn"}, + "TargetArn":{"shape":"Arn"}, + "IntegrationName":{"shape":"IntegrationName"}, + "IntegrationArn":{"shape":"IntegrationArn"}, + "KMSKeyId":{"shape":"String"}, + "AdditionalEncryptionContext":{"shape":"EncryptionContextMap"}, + "Status":{"shape":"IntegrationStatus"}, + "Tags":{"shape":"TagList"}, + "CreateTime":{"shape":"TStamp"}, + "Errors":{"shape":"IntegrationErrorList"} + } + }, + "IntegrationAlreadyExistsFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"IntegrationAlreadyExistsFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "IntegrationArn":{ + "type":"string", + "max":255, + "min":1, + "pattern":"arn:aws[a-z\\-]*:rds(-[a-z]*)?:[a-z0-9\\-]*:[0-9]*:integration:[a-z][a-z0-9]*(-[a-zA-Z0-9]+)*\\/[a-zA-Z0-9_:\\-\\/]+" + }, + "IntegrationConflictOperationFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"IntegrationConflictOperationFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "IntegrationError":{ + "type":"structure", + "required":["ErrorCode"], + "members":{ + "ErrorCode":{"shape":"String"}, + "ErrorMessage":{"shape":"String"} + } + }, + "IntegrationErrorList":{ + "type":"list", + "member":{ + "shape":"IntegrationError", + "locationName":"IntegrationError" + } + }, + "IntegrationIdentifier":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[a-zA-Z0-9_:\\-\\/]+" + }, + "IntegrationList":{ + "type":"list", + "member":{ + "shape":"Integration", + "locationName":"Integration" + } + }, + "IntegrationName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"[a-zA-Z][a-zA-Z0-9]*(-[a-zA-Z0-9]+)*" + }, + "IntegrationNotFoundFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"IntegrationNotFoundFault", + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "IntegrationQuotaExceededFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"IntegrationQuotaExceededFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "IntegrationStatus":{ + "type":"string", + "enum":[ + "creating", + "active", + "modifying", + "failed", + "deleting", + "syncing", + "needs_attention" + ] + }, "InvalidBlueGreenDeploymentStateFault":{ "type":"structure", "members":{ @@ -6667,6 +7123,17 @@ }, "exception":true }, + "InvalidIntegrationStateFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"InvalidIntegrationStateFault", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "InvalidOptionGroupStateFault":{ "type":"structure", "members":{ @@ -6767,6 +7234,11 @@ }, "Long":{"type":"long"}, "LongOptional":{"type":"long"}, + "Marker":{ + "type":"string", + "max":340, + "min":1 + }, "MasterUserSecret":{ "type":"structure", "members":{ @@ -7004,7 +7476,9 @@ "ManageMasterUserPassword":{"shape":"BooleanOptional"}, "RotateMasterUserPassword":{"shape":"BooleanOptional"}, "MasterUserSecretKmsKeyId":{"shape":"String"}, - "Engine":{"shape":"String"} + "Engine":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"}, + "MultiTenant":{"shape":"BooleanOptional"} } }, "ModifyDBInstanceResult":{ @@ -7179,6 +7653,25 @@ "OptionGroup":{"shape":"OptionGroup"} } }, + "ModifyTenantDatabaseMessage":{ + "type":"structure", + "required":[ + "DBInstanceIdentifier", + "TenantDBName" + ], + "members":{ + "DBInstanceIdentifier":{"shape":"String"}, + "TenantDBName":{"shape":"String"}, + "MasterUserPassword":{"shape":"SensitiveString"}, + "NewTenantDBName":{"shape":"String"} + } + }, + "ModifyTenantDatabaseResult":{ + "type":"structure", + "members":{ + "TenantDatabase":{"shape":"TenantDatabase"} + } + }, "NetworkTypeNotSupported":{ "type":"structure", "members":{ @@ -7461,7 +7954,8 @@ "MinStorageThroughputPerDbInstance":{"shape":"IntegerOptional"}, "MaxStorageThroughputPerDbInstance":{"shape":"IntegerOptional"}, "MinStorageThroughputPerIops":{"shape":"DoubleOptional"}, - "MaxStorageThroughputPerIops":{"shape":"DoubleOptional"} + "MaxStorageThroughputPerIops":{"shape":"DoubleOptional"}, + "SupportsDedicatedLogVolume":{"shape":"Boolean"} }, "wrapper":true }, @@ -7569,7 +8063,9 @@ "AutomationMode":{"shape":"AutomationMode"}, "ResumeFullAutomationModeTime":{"shape":"TStamp"}, "StorageThroughput":{"shape":"IntegerOptional"}, - "Engine":{"shape":"String"} + "Engine":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"}, + "MultiTenant":{"shape":"BooleanOptional"} } }, "PointInTimeRestoreNotEnabledFault":{ @@ -7667,6 +8163,14 @@ "locationName":"Range" } }, + "RdsCustomClusterConfiguration":{ + "type":"structure", + "members":{ + "InterconnectSubnetId":{"shape":"String"}, + "TransitGatewayMulticastDomainId":{"shape":"String"}, + "ReplicaMode":{"shape":"ReplicaMode"} + } + }, "ReadReplicaDBClusterIdentifierList":{ "type":"list", "member":{ @@ -8061,7 +8565,8 @@ "Iops":{"shape":"IntegerOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "ServerlessV2ScalingConfiguration":{"shape":"ServerlessV2ScalingConfiguration"}, - "NetworkType":{"shape":"String"} + "NetworkType":{"shape":"String"}, + "RdsCustomClusterConfiguration":{"shape":"RdsCustomClusterConfiguration"} } }, "RestoreDBClusterFromSnapshotResult":{ @@ -8101,7 +8606,8 @@ "Iops":{"shape":"IntegerOptional"}, "ServerlessV2ScalingConfiguration":{"shape":"ServerlessV2ScalingConfiguration"}, "NetworkType":{"shape":"String"}, - "SourceDbClusterResourceId":{"shape":"String"} + "SourceDbClusterResourceId":{"shape":"String"}, + "RdsCustomClusterConfiguration":{"shape":"RdsCustomClusterConfiguration"} } }, "RestoreDBClusterToPointInTimeResult":{ @@ -8152,7 +8658,8 @@ "NetworkType":{"shape":"String"}, "StorageThroughput":{"shape":"IntegerOptional"}, "DBClusterSnapshotIdentifier":{"shape":"String"}, - "AllocatedStorage":{"shape":"IntegerOptional"} + "AllocatedStorage":{"shape":"IntegerOptional"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"} } }, "RestoreDBInstanceFromDBSnapshotResult":{ @@ -8220,7 +8727,8 @@ "NetworkType":{"shape":"String"}, "StorageThroughput":{"shape":"IntegerOptional"}, "ManageMasterUserPassword":{"shape":"BooleanOptional"}, - "MasterUserSecretKmsKeyId":{"shape":"String"} + "MasterUserSecretKmsKeyId":{"shape":"String"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"} } }, "RestoreDBInstanceFromS3Result":{ @@ -8275,7 +8783,8 @@ "BackupTarget":{"shape":"String"}, "NetworkType":{"shape":"String"}, "StorageThroughput":{"shape":"IntegerOptional"}, - "AllocatedStorage":{"shape":"IntegerOptional"} + "AllocatedStorage":{"shape":"IntegerOptional"}, + "DedicatedLogVolume":{"shape":"BooleanOptional"} } }, "RestoreDBInstanceToPointInTimeResult":{ @@ -8363,6 +8872,10 @@ "SecondsBeforeTimeout":{"shape":"IntegerOptional"} } }, + "SensitiveString":{ + "type":"string", + "sensitive":true + }, "ServerlessV2ScalingConfiguration":{ "type":"structure", "members":{ @@ -8399,6 +8912,12 @@ }, "exception":true }, + "SourceArn":{ + "type":"string", + "max":255, + "min":1, + "pattern":"arn:aws[a-z\\-]*:rds(-[a-z]*)?:[a-z0-9\\-]*:[0-9]*:(cluster|db):[a-z][a-z0-9]*(-[a-z0-9]+)*" + }, "SourceClusterNotSupportedFault":{ "type":"structure", "members":{ @@ -8832,6 +9351,12 @@ "min":1, "pattern":"[A-Za-z](?!.*--)[0-9A-Za-z-]*[^-]|^default(?!.*--)(?!.*\\.\\.)[0-9A-Za-z-.]*[^-]" }, + "TargetDBInstanceClass":{ + "type":"string", + "max":20, + "min":5, + "pattern":"db\\.[0-9a-z]{2,6}\\.[0-9a-z]{4,9}" + }, "TargetDBParameterGroupName":{ "type":"string", "max":255, @@ -8894,6 +9419,79 @@ "TRACKED_CLUSTER" ] }, + "TenantDatabase":{ + "type":"structure", + "members":{ + "TenantDatabaseCreateTime":{"shape":"TStamp"}, + "DBInstanceIdentifier":{"shape":"String"}, + "TenantDBName":{"shape":"String"}, + "Status":{"shape":"String"}, + "MasterUsername":{"shape":"String"}, + "DbiResourceId":{"shape":"String"}, + "TenantDatabaseResourceId":{"shape":"String"}, + "TenantDatabaseARN":{"shape":"String"}, + "CharacterSetName":{"shape":"String"}, + "NcharCharacterSetName":{"shape":"String"}, + "DeletionProtection":{"shape":"Boolean"}, + "PendingModifiedValues":{"shape":"TenantDatabasePendingModifiedValues"}, + "TagList":{"shape":"TagList"} + }, + "wrapper":true + }, + "TenantDatabaseAlreadyExistsFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TenantDatabaseAlreadyExists", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TenantDatabaseNotFoundFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TenantDatabaseNotFound", + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "TenantDatabasePendingModifiedValues":{ + "type":"structure", + "members":{ + "MasterUserPassword":{"shape":"SensitiveString"}, + "TenantDBName":{"shape":"String"} + } + }, + "TenantDatabaseQuotaExceededFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"TenantDatabaseQuotaExceeded", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "TenantDatabasesList":{ + "type":"list", + "member":{ + "shape":"TenantDatabase", + "locationName":"TenantDatabase" + } + }, + "TenantDatabasesMessage":{ + "type":"structure", + "members":{ + "Marker":{"shape":"String"}, + "TenantDatabases":{"shape":"TenantDatabasesList"} + } + }, "Timezone":{ "type":"structure", "members":{ @@ -8912,7 +9510,8 @@ "SupportsParallelQuery":{"shape":"BooleanOptional"}, "SupportsGlobalDatabases":{"shape":"BooleanOptional"}, "SupportsBabelfish":{"shape":"BooleanOptional"}, - "SupportsLocalWriteForwarding":{"shape":"BooleanOptional"} + "SupportsLocalWriteForwarding":{"shape":"BooleanOptional"}, + "SupportsIntegrations":{"shape":"BooleanOptional"} } }, "UserAuthConfig":{ @@ -8949,7 +9548,8 @@ "type":"structure", "members":{ "Storage":{"shape":"ValidStorageOptionsList"}, - "ValidProcessorFeatures":{"shape":"AvailableProcessorFeatureList"} + "ValidProcessorFeatures":{"shape":"AvailableProcessorFeatureList"}, + "SupportsDedicatedLogVolume":{"shape":"Boolean"} }, "wrapper":true }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "Amazon Relational Database Service

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizeable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle, or Amazon Aurora database server. These capabilities mean that the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your DB instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

This interface reference for Amazon RDS contains documentation for a programming or command line interface you can use to manage Amazon RDS. Amazon RDS is asynchronous, which means that some interfaces might require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. The reference structure is as follows, and we list following some related topics from the user guide.

Amazon RDS API Reference

Amazon RDS User Guide

", + "service": "Amazon Relational Database Service

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizeable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle, Db2, or Amazon Aurora database server. These capabilities mean that the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your DB instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

This interface reference for Amazon RDS contains documentation for a programming or command line interface you can use to manage Amazon RDS. Amazon RDS is asynchronous, which means that some interfaces might require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. The reference structure is as follows, and we list following some related topics from the user guide.

Amazon RDS API Reference

Amazon RDS User Guide

", "operations": { "AddRoleToDBCluster": "

Associates an Identity and Access Management (IAM) role with a DB cluster.

", "AddRoleToDBInstance": "

Associates an Amazon Web Services Identity and Access Management (IAM) role with a DB instance.

To add a role to a DB instance, the status of the DB instance must be available.

This command doesn't apply to RDS Custom.

", @@ -10,9 +10,9 @@ "AuthorizeDBSecurityGroupIngress": "

Enables ingress to a DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC security groups can be added to the DBSecurityGroup if the application using the database is running on EC2 or VPC instances. Second, IP ranges are available if the application accessing your database is running on the internet. Required parameters for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

You can't authorize ingress from an EC2 security group in one Amazon Web Services Region to an Amazon RDS DB instance in another. You can't authorize ingress from a VPC security group in one VPC to an Amazon RDS DB instance in another.

For an overview of CIDR ranges, go to the Wikipedia Tutorial.

EC2-Classic was retired on August 15, 2022. If you haven't migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see Migrate from EC2-Classic to a VPC in the Amazon EC2 User Guide, the blog EC2-Classic Networking is Retiring – Here’s How to Prepare, and Moving a DB instance not in a VPC into a VPC in the Amazon RDS User Guide.

", "BacktrackDBCluster": "

Backtracks a DB cluster to a specific time, without creating a new DB cluster.

For more information on backtracking, see Backtracking an Aurora DB Cluster in the Amazon Aurora User Guide.

This action applies only to Aurora MySQL DB clusters.

", "CancelExportTask": "

Cancels an export task in progress that is exporting a snapshot or cluster to Amazon S3. Any data that has already been written to the S3 bucket isn't removed.

", - "CopyDBClusterParameterGroup": "

Copies the specified DB cluster parameter group.

", + "CopyDBClusterParameterGroup": "

Copies the specified DB cluster parameter group.

You can't copy a default DB cluster parameter group. Instead, create a new custom DB cluster parameter group, which copies the default parameters and values for the specified DB cluster parameter group family.

", "CopyDBClusterSnapshot": "

Copies a snapshot of a DB cluster.

To copy a DB cluster snapshot from a shared manual DB cluster snapshot, SourceDBClusterSnapshotIdentifier must be the Amazon Resource Name (ARN) of the shared DB cluster snapshot.

You can copy an encrypted DB cluster snapshot from another Amazon Web Services Region. In that case, the Amazon Web Services Region where you call the CopyDBClusterSnapshot operation is the destination Amazon Web Services Region for the encrypted DB cluster snapshot to be copied to. To copy an encrypted DB cluster snapshot from another Amazon Web Services Region, you must provide the following values:

  • KmsKeyId - The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to encrypt the copy of the DB cluster snapshot in the destination Amazon Web Services Region.

  • TargetDBClusterSnapshotIdentifier - The identifier for the new copy of the DB cluster snapshot in the destination Amazon Web Services Region.

  • SourceDBClusterSnapshotIdentifier - The DB cluster snapshot identifier for the encrypted DB cluster snapshot to be copied. This identifier must be in the ARN format for the source Amazon Web Services Region and is the same value as the SourceDBClusterSnapshotIdentifier in the presigned URL.

To cancel the copy operation once it is in progress, delete the target DB cluster snapshot identified by TargetDBClusterSnapshotIdentifier while that DB cluster snapshot is in \"copying\" status.

For more information on copying encrypted Amazon Aurora DB cluster snapshots from one Amazon Web Services Region to another, see Copying a Snapshot in the Amazon Aurora User Guide.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "CopyDBParameterGroup": "

Copies the specified DB parameter group.

", + "CopyDBParameterGroup": "

Copies the specified DB parameter group.

You can't copy a default DB parameter group. Instead, create a new custom DB parameter group, which copies the default parameters and values for the specified DB parameter group family.

", "CopyDBSnapshot": "

Copies the specified DB snapshot. The source DB snapshot must be in the available state.

You can copy a snapshot from one Amazon Web Services Region to another. In that case, the Amazon Web Services Region where you call the CopyDBSnapshot operation is the destination Amazon Web Services Region for the DB snapshot copy.

This command doesn't apply to RDS Custom.

For more information about copying snapshots, see Copying a DB Snapshot in the Amazon RDS User Guide.

", "CopyOptionGroup": "

Copies the specified option group.

", "CreateBlueGreenDeployment": "

Creates a blue/green deployment.

A blue/green deployment creates a staging environment that copies the production environment. In a blue/green deployment, the blue environment is the current production environment. The green environment is the staging environment. The staging environment stays in sync with the current production environment using logical replication.

You can make changes to the databases in the green environment without affecting production workloads. For example, you can upgrade the major or minor DB engine version, change database parameters, or make schema changes in the staging environment. You can thoroughly test changes in the green environment. When ready, you can switch over the environments to promote the green environment to be the new production environment. The switchover typically takes under a minute.

For more information, see Using Amazon RDS Blue/Green Deployments for database updates in the Amazon RDS User Guide and Using Amazon RDS Blue/Green Deployments for database updates in the Amazon Aurora User Guide.

", @@ -22,7 +22,7 @@ "CreateDBClusterParameterGroup": "

Creates a new DB cluster parameter group.

Parameters in a DB cluster parameter group apply to all of the instances in a DB cluster.

A DB cluster parameter group is initially created with the default parameters for the database engine used by instances in the DB cluster. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBClusterParameterGroup. Once you've created a DB cluster parameter group, you need to associate it with your DB cluster using ModifyDBCluster.

When you associate a new DB cluster parameter group with a running Aurora DB cluster, reboot the DB instances in the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

When you associate a new DB cluster parameter group with a running Multi-AZ DB cluster, reboot the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the DB cluster parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters operation to verify that your DB cluster parameter group has been created or modified.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "CreateDBClusterSnapshot": "

Creates a snapshot of a DB cluster.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "CreateDBInstance": "

Creates a new DB instance.

The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster. For an Aurora DB cluster, you can call this operation multiple times to add more than one DB instance to the cluster.

For more information about creating an RDS DB instance, see Creating an Amazon RDS DB instance in the Amazon RDS User Guide.

For more information about creating a DB instance in an Aurora DB cluster, see Creating an Amazon Aurora DB cluster in the Amazon Aurora User Guide.

", - "CreateDBInstanceReadReplica": "

Creates a new DB instance that acts as a read replica for an existing source DB instance or Multi-AZ DB cluster. You can create a read replica for a DB instance running MySQL, MariaDB, Oracle, PostgreSQL, or SQL Server. You can create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. For more information, see Working with read replicas and Migrating from a Multi-AZ DB cluster to a DB instance using a read replica in the Amazon RDS User Guide.

Amazon Aurora doesn't support this operation. Call the CreateDBInstance operation to create a DB instance for an Aurora DB cluster.

All read replica DB instances are created with backups disabled. All other attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance or cluster, except as specified.

Your source DB instance or cluster must have backup retention enabled.

", + "CreateDBInstanceReadReplica": "

Creates a new DB instance that acts as a read replica for an existing source DB instance or Multi-AZ DB cluster. You can create a read replica for a DB instance running Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server. You can create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. For more information, see Working with read replicas and Migrating from a Multi-AZ DB cluster to a DB instance using a read replica in the Amazon RDS User Guide.

Amazon Aurora doesn't support this operation. To create a DB instance for an Aurora DB cluster, use the CreateDBInstance operation.

All read replica DB instances are created with backups disabled. All other attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance or cluster, except as specified.

Your source DB instance or cluster must have backup retention enabled.

", "CreateDBParameterGroup": "

Creates a new DB parameter group.

A DB parameter group is initially created with the default parameters for the database engine used by the DB instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB parameter group, you need to associate it with your DB instance using ModifyDBInstance. When you associate a new DB parameter group with a running DB instance, you need to reboot the DB instance without failover for the new DB parameter group and associated settings to take effect.

This command doesn't apply to RDS Custom.

After you create a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

", "CreateDBProxy": "

Creates a new DB proxy.

", "CreateDBProxyEndpoint": "

Creates a DBProxyEndpoint. Only applies to proxies that are associated with Aurora DB clusters. You can use DB proxy endpoints to specify read/write or read-only access to the DB cluster. You can also use DB proxy endpoints to access a DB proxy through a different VPC than the proxy's default VPC.

", @@ -31,7 +31,9 @@ "CreateDBSubnetGroup": "

Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Web Services Region.

", "CreateEventSubscription": "

Creates an RDS event notification subscription. This operation requires a topic Amazon Resource Name (ARN) created by either the RDS console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

You can specify the type of source (SourceType) that you want to be notified of and provide a list of RDS sources (SourceIds) that triggers the events. You can also provide a list of event categories (EventCategories) for events that you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIds = myDBInstance1, you are notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify SourceIds, you receive notice of the events for that source type for all your RDS sources. If you don't specify either the SourceType or the SourceIds, you are notified of events generated from all RDS sources belonging to your customer account.

For more information about subscribing to an event for RDS DB engines, see Subscribing to Amazon RDS event notification in the Amazon RDS User Guide.

For more information about subscribing to an event for Aurora DB engines, see Subscribing to Amazon RDS event notification in the Amazon Aurora User Guide.

", "CreateGlobalCluster": "

Creates an Aurora global database spread across multiple Amazon Web Services Regions. The global database contains a single primary cluster with read-write capability, and a read-only secondary cluster that receives data from the primary cluster through high-speed replication performed by the Aurora storage subsystem.

You can create a global database that is initially empty, and then create the primary and secondary DB clusters in the global database. Or you can specify an existing Aurora cluster during the create operation, and this cluster becomes the primary cluster of the global database.

This operation applies only to Aurora DB clusters.

", + "CreateIntegration": "

Creates a zero-ETL integration with Amazon Redshift.

", "CreateOptionGroup": "

Creates a new option group. You can create up to 20 option groups.

This command doesn't apply to RDS Custom.

", + "CreateTenantDatabase": "

Creates a tenant database in a DB instance that uses the multi-tenant configuration. Only RDS for Oracle container database (CDB) instances are supported.

", "DeleteBlueGreenDeployment": "

Deletes a blue/green deployment.

For more information, see Using Amazon RDS Blue/Green Deployments for database updates in the Amazon RDS User Guide and Using Amazon RDS Blue/Green Deployments for database updates in the Amazon Aurora User Guide.

", "DeleteCustomDBEngineVersion": "

Deletes a custom engine version. To run this command, make sure you meet the following prerequisites:

  • The CEV must not be the default for RDS Custom. If it is, change the default before running this command.

  • The CEV must not be associated with an RDS Custom DB instance, RDS Custom instance snapshot, or automated backup of your RDS Custom instance.

Typically, deletion takes a few minutes.

The MediaImport service that imports files from Amazon S3 to create CEVs isn't integrated with Amazon Web Services CloudTrail. If you turn on data logging for Amazon RDS in CloudTrail, calls to the DeleteCustomDbEngineVersion event aren't logged. However, you might see calls from the API gateway that accesses your Amazon S3 bucket. These calls originate from the MediaImport service for the DeleteCustomDbEngineVersion event.

For more information, see Deleting a CEV in the Amazon RDS User Guide.

", "DeleteDBCluster": "

The DeleteDBCluster action deletes a previously provisioned DB cluster. When you delete a DB cluster, all automated backups for that DB cluster are deleted and can't be recovered. Manual DB cluster snapshots of the specified DB cluster are not deleted.

If you're deleting a Multi-AZ DB cluster with read replicas, all cluster members are terminated and read replicas are promoted to standalone instances.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", @@ -39,7 +41,7 @@ "DeleteDBClusterEndpoint": "

Deletes a custom endpoint and removes it from an Amazon Aurora DB cluster.

This action only applies to Aurora DB clusters.

", "DeleteDBClusterParameterGroup": "

Deletes a specified DB cluster parameter group. The DB cluster parameter group to be deleted can't be associated with any DB clusters.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "DeleteDBClusterSnapshot": "

Deletes a DB cluster snapshot. If the snapshot is being copied, the copy operation is terminated.

The DB cluster snapshot must be in the available state to be deleted.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "DeleteDBInstance": "

The DeleteDBInstance action deletes a previously provisioned DB instance. When you delete a DB instance, all automated backups for that instance are deleted and can't be recovered. Manual DB snapshots of the DB instance to be deleted by DeleteDBInstance are not deleted.

If you request a final DB snapshot the status of the Amazon RDS DB instance is deleting until the DB snapshot is created. The API action DescribeDBInstance is used to monitor the status of this operation. The action can't be canceled or reverted once submitted.

When a DB instance is in a failure state and has a status of failed, incompatible-restore, or incompatible-network, you can only delete it when you skip creation of the final snapshot with the SkipFinalSnapshot parameter.

If the specified DB instance is part of an Amazon Aurora DB cluster, you can't delete the DB instance if both of the following conditions are true:

  • The DB cluster is a read replica of another Amazon Aurora DB cluster.

  • The DB instance is the only instance in the DB cluster.

To delete a DB instance in this case, first call the PromoteReadReplicaDBCluster API action to promote the DB cluster so it's no longer a read replica. After the promotion completes, then call the DeleteDBInstance API action to delete the final instance in the DB cluster.

", + "DeleteDBInstance": "

Deletes a previously provisioned DB instance. When you delete a DB instance, all automated backups for that instance are deleted and can't be recovered. However, manual DB snapshots of the DB instance aren't deleted.

If you request a final DB snapshot, the status of the Amazon RDS DB instance is deleting until the DB snapshot is created. This operation can't be canceled or reverted after it begins. To monitor the status of this operation, use DescribeDBInstance.

When a DB instance is in a failure state and has a status of failed, incompatible-restore, or incompatible-network, you can only delete it when you skip creation of the final snapshot with the SkipFinalSnapshot parameter.

If the specified DB instance is part of an Amazon Aurora DB cluster, you can't delete the DB instance if both of the following conditions are true:

  • The DB cluster is a read replica of another Amazon Aurora DB cluster.

  • The DB instance is the only instance in the DB cluster.

To delete a DB instance in this case, first use the PromoteReadReplicaDBCluster operation to promote the DB cluster so that it's no longer a read replica. After the promotion completes, use the DeleteDBInstance operation to delete the final instance in the DB cluster.

For RDS Custom DB instances, deleting the DB instance permanently deletes the EC2 instance and the associated EBS volumes. Make sure that you don't terminate or delete these resources before you delete the DB instance. Otherwise, deleting the DB instance and creation of the final snapshot might fail.

", "DeleteDBInstanceAutomatedBackup": "

Deletes automated backups using the DbiResourceId value of the source DB instance or the Amazon Resource Name (ARN) of the automated backups.

", "DeleteDBParameterGroup": "

Deletes a specified DB parameter group. The DB parameter group to be deleted can't be associated with any DB instances.

", "DeleteDBProxy": "

Deletes an existing DB proxy.

", @@ -49,11 +51,13 @@ "DeleteDBSubnetGroup": "

Deletes a DB subnet group.

The specified database subnet group must not be associated with any DB instances.

", "DeleteEventSubscription": "

Deletes an RDS event notification subscription.

", "DeleteGlobalCluster": "

Deletes a global database cluster. The primary and secondary clusters must already be detached or destroyed first.

This action only applies to Aurora DB clusters.

", + "DeleteIntegration": "

Deletes a zero-ETL integration with Amazon Redshift.

", "DeleteOptionGroup": "

Deletes an existing option group.

", + "DeleteTenantDatabase": "

Deletes a tenant database from your DB instance. This command only applies to RDS for Oracle container database (CDB) instances.

You can't delete a tenant database when it is the only tenant in the DB instance.

", "DeregisterDBProxyTargets": "

Remove the association between one or more DBProxyTarget data structures and a DBProxyTargetGroup.

", "DescribeAccountAttributes": "

Lists all of the attributes for a customer account. The attributes include Amazon RDS quotas for the account, such as the number of DB instances allowed. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value.

This command doesn't take any parameters.

", "DescribeBlueGreenDeployments": "

Describes one or more blue/green deployments.

For more information, see Using Amazon RDS Blue/Green Deployments for database updates in the Amazon RDS User Guide and Using Amazon RDS Blue/Green Deployments for database updates in the Amazon Aurora User Guide.

", - "DescribeCertificates": "

Lists the set of CA certificates provided by Amazon RDS for this Amazon Web Services account.

For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

", + "DescribeCertificates": "

Lists the set of certificate authority (CA) certificates provided by Amazon RDS for this Amazon Web Services account.

For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

", "DescribeDBClusterAutomatedBackups": "

Displays backups for both current and deleted DB clusters. For example, use this operation to find details about automated backups for previously deleted clusters. Current clusters are returned for both the DescribeDBClusterAutomatedBackups and DescribeDBClusters operations.

All parameters are optional.

", "DescribeDBClusterBacktracks": "

Returns information about backtracks for a DB cluster.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This action only applies to Aurora MySQL DB clusters.

", "DescribeDBClusterEndpoints": "

Returns information about endpoints for an Amazon Aurora DB cluster.

This action only applies to Aurora DB clusters.

", @@ -62,7 +66,7 @@ "DescribeDBClusterSnapshotAttributes": "

Returns a list of DB cluster snapshot attribute names and values for a manual DB cluster snapshot.

When sharing snapshots with other Amazon Web Services accounts, DescribeDBClusterSnapshotAttributes returns the restore attribute and a list of IDs for the Amazon Web Services accounts that are authorized to copy or restore the manual DB cluster snapshot. If all is included in the list of values for the restore attribute, then the manual DB cluster snapshot is public and can be copied or restored by all Amazon Web Services accounts.

To add or remove access for an Amazon Web Services account to copy or restore a manual DB cluster snapshot, or to make the manual DB cluster snapshot public or private, use the ModifyDBClusterSnapshotAttribute API action.

", "DescribeDBClusterSnapshots": "

Returns information about DB cluster snapshots. This API action supports pagination.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "DescribeDBClusters": "

Describes existing Amazon Aurora DB clusters and Multi-AZ DB clusters. This API supports pagination.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

This operation can also return information for Amazon Neptune DB instances and Amazon DocumentDB instances.

", - "DescribeDBEngineVersions": "

Returns a list of the available DB engines.

", + "DescribeDBEngineVersions": "

Describes the properties of specific versions of DB engines.

", "DescribeDBInstanceAutomatedBackups": "

Displays backups for both current and deleted instances. For example, use this operation to find details about automated backups for previously deleted instances. Current instances with retention periods greater than zero (0) are returned for both the DescribeDBInstanceAutomatedBackups and DescribeDBInstances operations.

All parameters are optional.

", "DescribeDBInstances": "

Describes provisioned RDS instances. This API supports pagination.

This operation can also return information for Amazon Neptune DB instances and Amazon DocumentDB instances.

", "DescribeDBLogFiles": "

Returns a list of DB log files for the DB instance.

This command doesn't apply to RDS Custom.

", @@ -74,6 +78,7 @@ "DescribeDBProxyTargets": "

Returns information about DBProxyTarget objects. This API supports pagination.

", "DescribeDBSecurityGroups": "

Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName is specified, the list will contain only the descriptions of the specified DB security group.

EC2-Classic was retired on August 15, 2022. If you haven't migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see Migrate from EC2-Classic to a VPC in the Amazon EC2 User Guide, the blog EC2-Classic Networking is Retiring – Here’s How to Prepare, and Moving a DB instance not in a VPC into a VPC in the Amazon RDS User Guide.

", "DescribeDBSnapshotAttributes": "

Returns a list of DB snapshot attribute names and values for a manual DB snapshot.

When sharing snapshots with other Amazon Web Services accounts, DescribeDBSnapshotAttributes returns the restore attribute and a list of IDs for the Amazon Web Services accounts that are authorized to copy or restore the manual DB snapshot. If all is included in the list of values for the restore attribute, then the manual DB snapshot is public and can be copied or restored by all Amazon Web Services accounts.

To add or remove access for an Amazon Web Services account to copy or restore a manual DB snapshot, or to make the manual DB snapshot public or private, use the ModifyDBSnapshotAttribute API action.

", + "DescribeDBSnapshotTenantDatabases": "

Describes the tenant databases that exist in a DB snapshot. This command only applies to RDS for Oracle DB instances in the multi-tenant configuration.

You can use this command to inspect the tenant databases within a snapshot before restoring it. You can't directly interact with the tenant databases in a DB snapshot. If you restore a snapshot that was taken from DB instance using the multi-tenant configuration, you restore all its tenant databases.

", "DescribeDBSnapshots": "

Returns information about DB snapshots. This API action supports pagination.

", "DescribeDBSubnetGroups": "

Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

For an overview of CIDR ranges, go to the Wikipedia Tutorial.

", "DescribeEngineDefaultClusterParameters": "

Returns the default engine and system parameter information for the cluster database engine.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

", @@ -83,13 +88,15 @@ "DescribeEvents": "

Returns events related to DB instances, DB clusters, DB parameter groups, DB security groups, DB snapshots, DB cluster snapshots, and RDS Proxies for the past 14 days. Events specific to a particular DB instance, DB cluster, DB parameter group, DB security group, DB snapshot, DB cluster snapshot group, or RDS Proxy can be obtained by providing the name as a parameter.

For more information on working with events, see Monitoring Amazon RDS events in the Amazon RDS User Guide and Monitoring Amazon Aurora events in the Amazon Aurora User Guide.

By default, RDS returns events that were generated in the past hour.

", "DescribeExportTasks": "

Returns information about a snapshot or cluster export to Amazon S3. This API operation supports pagination.

", "DescribeGlobalClusters": "

Returns information about Aurora global database clusters. This API supports pagination.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters.

", - "DescribeOptionGroupOptions": "

Describes all available options.

", + "DescribeIntegrations": "

Describe one or more zero-ETL integrations with Amazon Redshift.

", + "DescribeOptionGroupOptions": "

Describes all available options for the specified engine.

", "DescribeOptionGroups": "

Describes the available option groups.

", - "DescribeOrderableDBInstanceOptions": "

Returns a list of orderable DB instance options for the specified DB engine, DB engine version, and DB instance class.

", + "DescribeOrderableDBInstanceOptions": "

Describes the orderable DB instance options for a specified DB engine.

", "DescribePendingMaintenanceActions": "

Returns a list of resources (for example, DB instances) that have at least one pending maintenance action.

", "DescribeReservedDBInstances": "

Returns information about reserved DB instances for this account, or about a specified reserved DB instance.

", "DescribeReservedDBInstancesOfferings": "

Lists available reserved DB instance offerings.

", "DescribeSourceRegions": "

Returns a list of the source Amazon Web Services Regions where the current Amazon Web Services Region can create a read replica, copy a DB snapshot from, or replicate automated backups from.

Use this operation to determine whether cross-Region features are supported between other Regions and your current Region. This operation supports pagination.

To return information about the Regions that are enabled for your account, or all Regions, use the EC2 operation DescribeRegions. For more information, see DescribeRegions in the Amazon EC2 API Reference.

", + "DescribeTenantDatabases": "

Describes the tenant databases in a DB instance that uses the multi-tenant configuration. Only RDS for Oracle CDB instances are supported.

", "DescribeValidDBInstanceModifications": "

You can call DescribeValidDBInstanceModifications to learn what modifications you can make to your DB instance. You can use this information when you call ModifyDBInstance.

This command doesn't apply to RDS Custom.

", "DownloadDBLogFilePortion": "

Downloads all or a portion of the specified log file, up to 1 MB in size.

This command doesn't apply to RDS Custom.

", "FailoverDBCluster": "

Forces a failover for a DB cluster.

For an Aurora DB cluster, failover for a DB cluster promotes one of the Aurora Replicas (read-only instances) in the DB cluster to be the primary DB instance (the cluster writer).

For a Multi-AZ DB cluster, failover for a DB cluster promotes one of the readable standby DB instances (read-only instances) in the DB cluster to be the primary DB instance (the cluster writer).

An Amazon Aurora DB cluster automatically fails over to an Aurora Replica, if one exists, when the primary DB instance fails. A Multi-AZ DB cluster automatically fails over to a readable standby DB instance when the primary DB instance fails.

To simulate a failure of a primary instance for testing, you can force a failover. Because each instance in a DB cluster has its own endpoint address, make sure to clean up and re-establish any existing connections that use those endpoint addresses when the failover is complete.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", @@ -97,50 +104,51 @@ "ListTagsForResource": "

Lists all tags on an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

", "ModifyActivityStream": "

Changes the audit policy state of a database activity stream to either locked (default) or unlocked. A locked policy is read-only, whereas an unlocked policy is read/write. If your activity stream is started and locked, you can unlock it, customize your audit policy, and then lock your activity stream. Restarting the activity stream isn't required. For more information, see Modifying a database activity stream in the Amazon RDS User Guide.

This operation is supported for RDS for Oracle and Microsoft SQL Server.

", "ModifyCertificates": "

Override the system-default Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificate for Amazon RDS for new DB instances, or remove the override.

By using this operation, you can specify an RDS-approved SSL/TLS certificate for new DB instances that is different from the default certificate provided by RDS. You can also use this operation to remove the override, so that new DB instances use the default certificate provided by RDS.

You might need to override the default certificate in the following situations:

  • You already migrated your applications to support the latest certificate authority (CA) certificate, but the new CA certificate is not yet the RDS default CA certificate for the specified Amazon Web Services Region.

  • RDS has already moved to a new default CA certificate for the specified Amazon Web Services Region, but you are still in the process of supporting the new CA certificate. In this case, you temporarily need additional time to finish your application changes.

For more information about rotating your SSL/TLS certificate for RDS DB engines, see Rotating Your SSL/TLS Certificate in the Amazon RDS User Guide.

For more information about rotating your SSL/TLS certificate for Aurora DB engines, see Rotating Your SSL/TLS Certificate in the Amazon Aurora User Guide.

", - "ModifyCurrentDBClusterCapacity": "

Set the capacity of an Aurora Serverless v1 DB cluster to a specific value.

Aurora Serverless v1 scales seamlessly based on the workload on the DB cluster. In some cases, the capacity might not scale fast enough to meet a sudden change in workload, such as a large number of new transactions. Call ModifyCurrentDBClusterCapacity to set the capacity explicitly.

After this call sets the DB cluster capacity, Aurora Serverless v1 can automatically scale the DB cluster based on the cooldown period for scaling up and the cooldown period for scaling down.

For more information about Aurora Serverless v1, see Using Amazon Aurora Serverless v1 in the Amazon Aurora User Guide.

If you call ModifyCurrentDBClusterCapacity with the default TimeoutAction, connections that prevent Aurora Serverless v1 from finding a scaling point might be dropped. For more information about scaling points, see Autoscaling for Aurora Serverless v1 in the Amazon Aurora User Guide.

This action only applies to Aurora Serverless v1 DB clusters.

", + "ModifyCurrentDBClusterCapacity": "

Set the capacity of an Aurora Serverless v1 DB cluster to a specific value.

Aurora Serverless v1 scales seamlessly based on the workload on the DB cluster. In some cases, the capacity might not scale fast enough to meet a sudden change in workload, such as a large number of new transactions. Call ModifyCurrentDBClusterCapacity to set the capacity explicitly.

After this call sets the DB cluster capacity, Aurora Serverless v1 can automatically scale the DB cluster based on the cooldown period for scaling up and the cooldown period for scaling down.

For more information about Aurora Serverless v1, see Using Amazon Aurora Serverless v1 in the Amazon Aurora User Guide.

If you call ModifyCurrentDBClusterCapacity with the default TimeoutAction, connections that prevent Aurora Serverless v1 from finding a scaling point might be dropped. For more information about scaling points, see Autoscaling for Aurora Serverless v1 in the Amazon Aurora User Guide.

This operation only applies to Aurora Serverless v1 DB clusters.

", "ModifyCustomDBEngineVersion": "

Modifies the status of a custom engine version (CEV). You can find CEVs to modify by calling DescribeDBEngineVersions.

The MediaImport service that imports files from Amazon S3 to create CEVs isn't integrated with Amazon Web Services CloudTrail. If you turn on data logging for Amazon RDS in CloudTrail, calls to the ModifyCustomDbEngineVersion event aren't logged. However, you might see calls from the API gateway that accesses your Amazon S3 bucket. These calls originate from the MediaImport service for the ModifyCustomDbEngineVersion event.

For more information, see Modifying CEV status in the Amazon RDS User Guide.

", "ModifyDBCluster": "

Modifies the settings of an Amazon Aurora DB cluster or a Multi-AZ DB cluster. You can change one or more settings by specifying these parameters and the new values in the request.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "ModifyDBClusterEndpoint": "

Modifies the properties of an endpoint in an Amazon Aurora DB cluster.

This action only applies to Aurora DB clusters.

", - "ModifyDBClusterParameterGroup": "

Modifies the parameters of a DB cluster parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters operation to verify that your DB cluster parameter group has been created or modified.

If the modified DB cluster parameter group is used by an Aurora Serverless v1 cluster, Aurora applies the update immediately. The cluster restart might interrupt your workload. In that case, your application must reopen any connections and retry any transactions that were active when the parameter changes took effect.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", + "ModifyDBClusterEndpoint": "

Modifies the properties of an endpoint in an Amazon Aurora DB cluster.

This operation only applies to Aurora DB clusters.

", + "ModifyDBClusterParameterGroup": "

Modifies the parameters of a DB cluster parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create operation before the parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters operation to verify that your DB cluster parameter group has been created or modified.

If the modified DB cluster parameter group is used by an Aurora Serverless v1 cluster, Aurora applies the update immediately. The cluster restart might interrupt your workload. In that case, your application must reopen any connections and retry any transactions that were active when the parameter changes took effect.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "ModifyDBClusterSnapshotAttribute": "

Adds an attribute and values to, or removes an attribute and values from, a manual DB cluster snapshot.

To share a manual DB cluster snapshot with other Amazon Web Services accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the Amazon Web Services accounts that are authorized to restore the manual DB cluster snapshot. Use the value all to make the manual DB cluster snapshot public, which means that it can be copied or restored by all Amazon Web Services accounts.

Don't add the all value for any manual DB cluster snapshots that contain private information that you don't want available to all Amazon Web Services accounts.

If a manual DB cluster snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ValuesToAdd parameter. You can't use all as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB cluster snapshot, or whether a manual DB cluster snapshot is public or private, use the DescribeDBClusterSnapshotAttributes API operation. The accounts are returned as values for the restore attribute.

", "ModifyDBInstance": "

Modifies settings for a DB instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. To learn what modifications you can make to your DB instance, call DescribeValidDBInstanceModifications before you call ModifyDBInstance.

", - "ModifyDBParameterGroup": "

Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

", + "ModifyDBParameterGroup": "

Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify operation before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

", "ModifyDBProxy": "

Changes the settings for an existing DB proxy.

", "ModifyDBProxyEndpoint": "

Changes the settings for an existing DB proxy endpoint.

", "ModifyDBProxyTargetGroup": "

Modifies the properties of a DBProxyTargetGroup.

", - "ModifyDBSnapshot": "

Updates a manual DB snapshot with a new engine version. The snapshot can be encrypted or unencrypted, but not shared or public.

Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. This command doesn't apply to RDS Custom.

", + "ModifyDBSnapshot": "

Updates a manual DB snapshot with a new engine version. The snapshot can be encrypted or unencrypted, but not shared or public.

Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. This operation doesn't apply to RDS Custom or RDS for Db2.

", "ModifyDBSnapshotAttribute": "

Adds an attribute and values to, or removes an attribute and values from, a manual DB snapshot.

To share a manual DB snapshot with other Amazon Web Services accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the Amazon Web Services accounts that are authorized to restore the manual DB snapshot. Uses the value all to make the manual DB snapshot public, which means it can be copied or restored by all Amazon Web Services accounts.

Don't add the all value for any manual DB snapshots that contain private information that you don't want available to all Amazon Web Services accounts.

If the manual DB snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ValuesToAdd parameter. You can't use all as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB snapshot, or whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes API operation. The accounts are returned as values for the restore attribute.

", "ModifyDBSubnetGroup": "

Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Web Services Region.

", "ModifyEventSubscription": "

Modifies an existing RDS event notification subscription. You can't modify the source identifiers using this call. To change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

You can see a list of the event categories for a given source type (SourceType) in Events in the Amazon RDS User Guide or by using the DescribeEventCategories operation.

", "ModifyGlobalCluster": "

Modifies a setting for an Amazon Aurora global database cluster. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This operation only applies to Aurora global database clusters.

", "ModifyOptionGroup": "

Modifies an existing option group.

", + "ModifyTenantDatabase": "

Modifies an existing tenant database in a DB instance. You can change the tenant database name or the master user password. This operation is supported only for RDS for Oracle CDB instances using the multi-tenant configuration.

", "PromoteReadReplica": "

Promotes a read replica DB instance to a standalone DB instance.

  • Backup duration is a function of the amount of changes to the database since the previous backup. If you plan to promote a read replica to a standalone instance, we recommend that you enable backups and complete at least one backup prior to promotion. In addition, a read replica cannot be promoted to a standalone instance when it is in the backing-up status. If you have enabled backups on your read replica, configure the automated backup window so that daily backups do not interfere with read replica promotion.

  • This command doesn't apply to Aurora MySQL, Aurora PostgreSQL, or RDS Custom.

", "PromoteReadReplicaDBCluster": "

Promotes a read replica DB cluster to a standalone DB cluster.

", "PurchaseReservedDBInstancesOffering": "

Purchases a reserved DB instance offering.

", "RebootDBCluster": "

You might need to reboot your DB cluster, usually for maintenance reasons. For example, if you make certain modifications, or if you change the DB cluster parameter group associated with the DB cluster, reboot the DB cluster for the changes to take effect.

Rebooting a DB cluster restarts the database engine service. Rebooting a DB cluster results in a momentary outage, during which the DB cluster status is set to rebooting.

Use this operation only for a non-Aurora Multi-AZ DB cluster.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "RebootDBInstance": "

You might need to reboot your DB instance, usually for maintenance reasons. For example, if you make certain modifications, or if you change the DB parameter group associated with the DB instance, you must reboot the instance for the changes to take effect.

Rebooting a DB instance restarts the database engine service. Rebooting a DB instance results in a momentary outage, during which the DB instance status is set to rebooting.

For more information about rebooting, see Rebooting a DB Instance in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom.

If your DB instance is part of a Multi-AZ DB cluster, you can reboot the DB cluster with the RebootDBCluster operation.

", "RegisterDBProxyTargets": "

Associate one or more DBProxyTarget data structures with a DBProxyTargetGroup.

", - "RemoveFromGlobalCluster": "

Detaches an Aurora secondary cluster from an Aurora global database cluster. The cluster becomes a standalone cluster with read-write capability instead of being read-only and receiving data from a primary cluster in a different Region.

This action only applies to Aurora DB clusters.

", + "RemoveFromGlobalCluster": "

Detaches an Aurora secondary cluster from an Aurora global database cluster. The cluster becomes a standalone cluster with read-write capability instead of being read-only and receiving data from a primary cluster in a different Region.

This operation only applies to Aurora DB clusters.

", "RemoveRoleFromDBCluster": "

Removes the asssociation of an Amazon Web Services Identity and Access Management (IAM) role from a DB cluster.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "RemoveRoleFromDBInstance": "

Disassociates an Amazon Web Services Identity and Access Management (IAM) role from a DB instance.

", "RemoveSourceIdentifierFromSubscription": "

Removes a source identifier from an existing RDS event notification subscription.

", "RemoveTagsFromResource": "

Removes metadata tags from an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

", "ResetDBClusterParameterGroup": "

Modifies the parameters of a DB cluster parameter group to the default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DB cluster parameter group, specify the DBClusterParameterGroupName and ResetAllParameters parameters.

When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request. You must call RebootDBInstance for every DB instance in your DB cluster that you want the updated static parameter to apply to.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "ResetDBParameterGroup": "

Modifies the parameters of a DB parameter group to the engine/system default value. To reset specific parameters, provide a list of the following: ParameterName and ApplyMethod. To reset the entire DB parameter group, specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

", - "RestoreDBClusterFromS3": "

Creates an Amazon Aurora DB cluster from MySQL data stored in an Amazon S3 bucket. Amazon RDS must be authorized to access the Amazon S3 bucket and the data must be created using the Percona XtraBackup utility as described in Migrating Data from MySQL by Using an Amazon S3 Bucket in the Amazon Aurora User Guide.

This action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromS3 action has completed and the DB cluster is available.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters. The source DB engine must be MySQL.

", - "RestoreDBClusterFromSnapshot": "

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

The target DB cluster is created from the source snapshot with a default configuration. If you don't specify a security group, the new DB cluster is associated with the default security group.

This action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromSnapshot action has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "RestoreDBClusterToPointInTime": "

Restores a DB cluster to an arbitrary point in time. Users can restore to any point in time before LatestRestorableTime for up to BackupRetentionPeriod days. The target DB cluster is created from the source DB cluster with the same configuration as the original DB cluster, except that the new DB cluster is created with the default DB security group.

For Aurora, this action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterToPointInTime action has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "RestoreDBInstanceFromDBSnapshot": "

Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with most of the source's original configuration, including the default security group and DB parameter group. By default, the new DB instance is created as a Single-AZ deployment, except when the instance is a SQL Server instance that has an option group associated with mirroring. In this case, the instance becomes a Multi-AZ deployment, not a Single-AZ deployment.

If you want to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot action. RDS doesn't allow two DB instances with the same name. After you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot action. The result is that you replace the original DB instance with the DB instance created from the snapshot.

If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterFromSnapshot.

", - "RestoreDBInstanceFromS3": "

Amazon Relational Database Service (Amazon RDS) supports importing MySQL databases by using backup files. You can create a backup of your on-premises database, store it on Amazon Simple Storage Service (Amazon S3), and then restore the backup file onto a new Amazon RDS DB instance running MySQL. For more information, see Importing Data into an Amazon RDS MySQL DB Instance in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTime": "

Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the LatestRestorableTime property. You can restore to a point up to the number of days specified by the BackupRetentionPeriod property.

The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterToPointInTime.

", + "RestoreDBClusterFromS3": "

Creates an Amazon Aurora DB cluster from MySQL data stored in an Amazon S3 bucket. Amazon RDS must be authorized to access the Amazon S3 bucket and the data must be created using the Percona XtraBackup utility as described in Migrating Data from MySQL by Using an Amazon S3 Bucket in the Amazon Aurora User Guide.

This operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance operation to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromS3 operation has completed and the DB cluster is available.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This operation only applies to Aurora DB clusters. The source DB engine must be MySQL.

", + "RestoreDBClusterFromSnapshot": "

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

The target DB cluster is created from the source snapshot with a default configuration. If you don't specify a security group, the new DB cluster is associated with the default security group.

This operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance operation to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromSnapshot operation has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", + "RestoreDBClusterToPointInTime": "

Restores a DB cluster to an arbitrary point in time. Users can restore to any point in time before LatestRestorableTime for up to BackupRetentionPeriod days. The target DB cluster is created from the source DB cluster with the same configuration as the original DB cluster, except that the new DB cluster is created with the default DB security group.

For Aurora, this operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance operation to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterToPointInTime operation has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromDBSnapshot": "

Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with most of the source's original configuration, including the default security group and DB parameter group. By default, the new DB instance is created as a Single-AZ deployment, except when the instance is a SQL Server instance that has an option group associated with mirroring. In this case, the instance becomes a Multi-AZ deployment, not a Single-AZ deployment.

If you want to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot operation. RDS doesn't allow two DB instances with the same name. After you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot operation. The result is that you replace the original DB instance with the DB instance created from the snapshot.

If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterFromSnapshot.

", + "RestoreDBInstanceFromS3": "

Amazon Relational Database Service (Amazon RDS) supports importing MySQL databases by using backup files. You can create a backup of your on-premises database, store it on Amazon Simple Storage Service (Amazon S3), and then restore the backup file onto a new Amazon RDS DB instance running MySQL. For more information, see Importing Data into an Amazon RDS MySQL DB Instance in the Amazon RDS User Guide.

This operation doesn't apply to RDS Custom.

", + "RestoreDBInstanceToPointInTime": "

Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the LatestRestorableTime property. You can restore to a point up to the number of days specified by the BackupRetentionPeriod property.

The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

This operation doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterToPointInTime.

", "RevokeDBSecurityGroupIngress": "

Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC security groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

EC2-Classic was retired on August 15, 2022. If you haven't migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see Migrate from EC2-Classic to a VPC in the Amazon EC2 User Guide, the blog EC2-Classic Networking is Retiring – Here’s How to Prepare, and Moving a DB instance not in a VPC into a VPC in the Amazon RDS User Guide.

", "StartActivityStream": "

Starts a database activity stream to monitor activity on the database. For more information, see Monitoring Amazon Aurora with Database Activity Streams in the Amazon Aurora User Guide or Monitoring Amazon RDS with Database Activity Streams in the Amazon RDS User Guide.

", - "StartDBCluster": "

Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web Services console, the stop-db-cluster CLI command, or the StopDBCluster action.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters.

", - "StartDBInstance": "

Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services console, the stop-db-instance CLI command, or the StopDBInstance action.

For more information, see Starting an Amazon RDS DB instance That Was Previously Stopped in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora DB clusters, use StartDBCluster instead.

", + "StartDBCluster": "

Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web Services console, the stop-db-cluster CLI command, or the StopDBCluster operation.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This operation only applies to Aurora DB clusters.

", + "StartDBInstance": "

Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services console, the stop-db-instance CLI command, or the StopDBInstance operation.

For more information, see Starting an Amazon RDS DB instance That Was Previously Stopped in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora DB clusters, use StartDBCluster instead.

", "StartDBInstanceAutomatedBackupsReplication": "

Enables replication of automated backups to a different Amazon Web Services Region.

This command doesn't apply to RDS Custom.

For more information, see Replicating Automated Backups to Another Amazon Web Services Region in the Amazon RDS User Guide.

", - "StartExportTask": "

Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided IAM role must have access to the S3 bucket.

You can't export snapshot data from RDS Custom DB instances.

You can't export cluster data from Multi-AZ DB clusters.

For more information on exporting DB snapshot data, see Exporting DB snapshot data to Amazon S3 in the Amazon RDS User Guide or Exporting DB cluster snapshot data to Amazon S3 in the Amazon Aurora User Guide.

For more information on exporting DB cluster data, see Exporting DB cluster data to Amazon S3 in the Amazon Aurora User Guide.

", - "StopActivityStream": "

Stops a database activity stream that was started using the Amazon Web Services console, the start-activity-stream CLI command, or the StartActivityStream action.

For more information, see Monitoring Amazon Aurora with Database Activity Streams in the Amazon Aurora User Guide or Monitoring Amazon RDS with Database Activity Streams in the Amazon RDS User Guide.

", - "StopDBCluster": "

Stops an Amazon Aurora DB cluster. When you stop a DB cluster, Aurora retains the DB cluster's metadata, including its endpoints and DB parameter groups. Aurora also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters.

", + "StartExportTask": "

Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided IAM role must have access to the S3 bucket.

You can't export snapshot data from Db2 or RDS Custom DB instances.

You can't export cluster data from Multi-AZ DB clusters.

For more information on exporting DB snapshot data, see Exporting DB snapshot data to Amazon S3 in the Amazon RDS User Guide or Exporting DB cluster snapshot data to Amazon S3 in the Amazon Aurora User Guide.

For more information on exporting DB cluster data, see Exporting DB cluster data to Amazon S3 in the Amazon Aurora User Guide.

", + "StopActivityStream": "

Stops a database activity stream that was started using the Amazon Web Services console, the start-activity-stream CLI command, or the StartActivityStream operation.

For more information, see Monitoring Amazon Aurora with Database Activity Streams in the Amazon Aurora User Guide or Monitoring Amazon RDS with Database Activity Streams in the Amazon RDS User Guide.

", + "StopDBCluster": "

Stops an Amazon Aurora DB cluster. When you stop a DB cluster, Aurora retains the DB cluster's metadata, including its endpoints and DB parameter groups. Aurora also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This operation only applies to Aurora DB clusters.

", "StopDBInstance": "

Stops an Amazon RDS DB instance. When you stop a DB instance, Amazon RDS retains the DB instance's metadata, including its endpoint, DB parameter group, and option group membership. Amazon RDS also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping an Amazon RDS DB Instance Temporarily in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora clusters, use StopDBCluster instead.

", "StopDBInstanceAutomatedBackupsReplication": "

Stops automated backup replication for a DB instance.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL.

For more information, see Replicating Automated Backups to Another Amazon Web Services Region in the Amazon RDS User Guide.

", "SwitchoverBlueGreenDeployment": "

Switches over a blue/green deployment.

Before you switch over, production traffic is routed to the databases in the blue environment. After you switch over, production traffic is routed to the databases in the green environment.

For more information, see Using Amazon RDS Blue/Green Deployments for database updates in the Amazon RDS User Guide and Using Amazon RDS Blue/Green Deployments for database updates in the Amazon Aurora User Guide.

", @@ -239,6 +247,13 @@ "refs": { } }, + "Arn": { + "base": null, + "refs": { + "CreateIntegrationMessage$TargetArn": "

The ARN of the Redshift data warehouse to use as the target for replication.

", + "Integration$TargetArn": "

The ARN of the Redshift data warehouse used as the target for replication.

" + } + }, "AttributeValueList": { "base": null, "refs": { @@ -315,7 +330,7 @@ "CreateDBClusterMessage$AvailabilityZones": "

A list of Availability Zones (AZs) where DB instances in the DB cluster can be created.

For information on Amazon Web Services Regions and Availability Zones, see Choosing the Regions and Availability Zones in the Amazon Aurora User Guide.

Valid for Cluster Type: Aurora DB clusters only

", "DBCluster$AvailabilityZones": "

The list of Availability Zones (AZs) where instances in the DB cluster can be created.

", "DBClusterAutomatedBackup$AvailabilityZones": "

The Availability Zones where instances in the DB cluster can be created. For information on Amazon Web Services Regions and Availability Zones, see Regions and Availability Zones.

", - "DBClusterSnapshot$AvailabilityZones": "

Provides the list of Availability Zones (AZs) where instances in the DB cluster snapshot can be restored.

", + "DBClusterSnapshot$AvailabilityZones": "

The list of Availability Zones (AZs) where instances in the DB cluster snapshot can be restored.

", "RestoreDBClusterFromS3Message$AvailabilityZones": "

A list of Availability Zones (AZs) where instances in the restored DB cluster can be created.

", "RestoreDBClusterFromSnapshotMessage$AvailabilityZones": "

Provides the list of Availability Zones (AZs) where instances in the restored DB cluster can be created.

Valid for: Aurora DB clusters only

" } @@ -430,20 +445,22 @@ "Boolean": { "base": null, "refs": { - "CreateDBProxyRequest$RequireTLS": "

A Boolean parameter that specifies whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy.

", - "CreateDBProxyRequest$DebugLogging": "

Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

", + "CreateDBProxyRequest$RequireTLS": "

Specifies whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy.

", + "CreateDBProxyRequest$DebugLogging": "

Specifies whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

", "DBCluster$StorageEncrypted": "

Indicates whether the DB cluster is encrypted.

", "DBCluster$AutoMinorVersionUpgrade": "

Indicates whether minor version patches are applied automatically.

This setting is only for non-Aurora Multi-AZ DB clusters.

", - "DBClusterAutomatedBackup$IAMDatabaseAuthenticationEnabled": "

True if mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.

", - "DBClusterAutomatedBackup$StorageEncrypted": "

Specifies whether the source DB cluster is encrypted.

", - "DBClusterMember$IsClusterWriter": "

Value that is true if the cluster member is the primary instance for the DB cluster and false otherwise.

", - "DBClusterSnapshot$StorageEncrypted": "

Specifies whether the DB cluster snapshot is encrypted.

", - "DBClusterSnapshot$IAMDatabaseAuthenticationEnabled": "

True if mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.

", - "DBEngineVersion$SupportsLogExportsToCloudwatchLogs": "

A value that indicates whether the engine version supports exporting the log types specified by ExportableLogTypes to CloudWatch Logs.

", + "DBClusterAutomatedBackup$IAMDatabaseAuthenticationEnabled": "

Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", + "DBClusterAutomatedBackup$StorageEncrypted": "

Indicates whether the source DB cluster is encrypted.

", + "DBClusterMember$IsClusterWriter": "

Indicates whether the cluster member is the primary DB instance for the DB cluster.

", + "DBClusterSnapshot$StorageEncrypted": "

Indicates whether the DB cluster snapshot is encrypted.

", + "DBClusterSnapshot$IAMDatabaseAuthenticationEnabled": "

Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", + "DBClusterStatusInfo$Normal": "

Reserved for future use.

", + "DBEngineVersion$SupportsLogExportsToCloudwatchLogs": "

Indicates whether the engine version supports exporting the log types specified by ExportableLogTypes to CloudWatch Logs.

", "DBEngineVersion$SupportsReadReplica": "

Indicates whether the database engine version supports read replicas.

", - "DBEngineVersion$SupportsParallelQuery": "

A value that indicates whether you can use Aurora parallel query with a specific DB engine version.

", - "DBEngineVersion$SupportsGlobalDatabases": "

A value that indicates whether you can use Aurora global databases with a specific DB engine version.

", - "DBEngineVersion$SupportsBabelfish": "

A value that indicates whether the engine version supports Babelfish for Aurora PostgreSQL.

", + "DBEngineVersion$SupportsParallelQuery": "

Indicates whether you can use Aurora parallel query with a specific DB engine version.

", + "DBEngineVersion$SupportsGlobalDatabases": "

Indicates whether you can use Aurora global databases with a specific DB engine version.

", + "DBEngineVersion$SupportsBabelfish": "

Indicates whether the engine version supports Babelfish for Aurora PostgreSQL.

", + "DBEngineVersion$SupportsIntegrations": "

Indicates whether the DB engine version supports zero-ETL integrations with Amazon Redshift.

", "DBInstance$MultiAZ": "

Indicates whether the DB instance is a Multi-AZ deployment. This setting doesn't apply to RDS Custom DB instances.

", "DBInstance$AutoMinorVersionUpgrade": "

Indicates whether minor version patches are applied automatically.

", "DBInstance$PubliclyAccessible": "

Indicates whether the DB instance is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn't permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", @@ -451,46 +468,49 @@ "DBInstance$CopyTagsToSnapshot": "

Indicates whether tags are copied from the DB instance to snapshots of the DB instance.

This setting doesn't apply to Amazon Aurora DB instances. Copying tags to snapshots is managed by the DB cluster. Setting this value for an Aurora DB instance has no effect on the DB cluster setting. For more information, see DBCluster.

", "DBInstance$IAMDatabaseAuthenticationEnabled": "

Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled for the DB instance.

For a list of engine versions that support IAM database authentication, see IAM database authentication in the Amazon RDS User Guide and IAM database authentication in Aurora in the Amazon Aurora User Guide.

", "DBInstance$DeletionProtection": "

Indicates whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. For more information, see Deleting a DB Instance.

", - "DBInstanceAutomatedBackup$Encrypted": "

Specifies whether the automated backup is encrypted.

", + "DBInstance$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

", + "DBInstanceAutomatedBackup$Encrypted": "

Indicates whether the automated backup is encrypted.

", "DBInstanceAutomatedBackup$IAMDatabaseAuthenticationEnabled": "

True if mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.

", - "DBInstanceStatusInfo$Normal": "

Boolean value that is true if the instance is operating normally, or false if the instance is in an error state.

", + "DBInstanceStatusInfo$Normal": "

Indicates whether the instance is operating normally (TRUE) or is in an error state (FALSE).

", "DBProxy$RequireTLS": "

Indicates whether Transport Layer Security (TLS) encryption is required for connections to the proxy.

", - "DBProxy$DebugLogging": "

Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

", - "DBProxyEndpoint$IsDefault": "

A value that indicates whether this endpoint is the default endpoint for the associated DB proxy. Default DB proxy endpoints always have read/write capability. Other endpoints that you associate with the DB proxy can be either read/write or read-only.

", - "DBProxyTargetGroup$IsDefault": "

Whether this target group is the first one used for connection requests by the associated proxy. Because each proxy is currently associated with a single target group, currently this setting is always true.

", - "DBSnapshot$Encrypted": "

Specifies whether the DB snapshot is encrypted.

", - "DBSnapshot$IAMDatabaseAuthenticationEnabled": "

True if mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.

", - "DeleteDBClusterMessage$SkipFinalSnapshot": "

A value that indicates whether to skip the creation of a final DB cluster snapshot before the DB cluster is deleted. If skip is specified, no DB cluster snapshot is created. If skip isn't specified, a DB cluster snapshot is created before the DB cluster is deleted. By default, skip isn't specified, and the DB cluster snapshot is created. By default, this parameter is disabled.

You must specify a FinalDBSnapshotIdentifier parameter if SkipFinalSnapshot is disabled.

", - "DeleteDBInstanceMessage$SkipFinalSnapshot": "

A value that indicates whether to skip the creation of a final DB snapshot before deleting the instance. If you enable this parameter, RDS doesn't create a DB snapshot. If you don't enable this parameter, RDS creates a DB snapshot before the DB instance is deleted. By default, skip isn't enabled, and the DB snapshot is created.

If you don't enable this parameter, you must specify the FinalDBSnapshotIdentifier parameter.

When a DB instance is in a failure state and has a status of failed, incompatible-restore, or incompatible-network, RDS can delete the instance only if you enable this parameter.

If you delete a read replica or an RDS Custom instance, you must enable this setting.

This setting is required for RDS Custom.

", - "DescribeDBClusterSnapshotsMessage$IncludeShared": "

A value that indicates whether to include shared manual DB cluster snapshots from other Amazon Web Services accounts that this Amazon Web Services account has been given permission to copy or restore. By default, these snapshots are not included.

You can give an Amazon Web Services account permission to restore a manual DB cluster snapshot from another Amazon Web Services account by the ModifyDBClusterSnapshotAttribute API action.

", - "DescribeDBClusterSnapshotsMessage$IncludePublic": "

A value that indicates whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute API action.

", + "DBProxy$DebugLogging": "

Indicates whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

", + "DBProxyEndpoint$IsDefault": "

Indicates whether this endpoint is the default endpoint for the associated DB proxy. Default DB proxy endpoints always have read/write capability. Other endpoints that you associate with the DB proxy can be either read/write or read-only.

", + "DBProxyTargetGroup$IsDefault": "

Indicates whether this target group is the first one used for connection requests by the associated proxy. Because each proxy is currently associated with a single target group, currently this setting is always true.

", + "DBSnapshot$Encrypted": "

Indicates whether the DB snapshot is encrypted.

", + "DBSnapshot$IAMDatabaseAuthenticationEnabled": "

Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", + "DBSnapshot$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

", + "DeleteDBClusterMessage$SkipFinalSnapshot": "

Specifies whether to skip the creation of a final DB cluster snapshot before the DB cluster is deleted. If skip is specified, no DB cluster snapshot is created. If skip isn't specified, a DB cluster snapshot is created before the DB cluster is deleted. By default, skip isn't specified, and the DB cluster snapshot is created. By default, this parameter is disabled.

You must specify a FinalDBSnapshotIdentifier parameter if SkipFinalSnapshot is disabled.

", + "DeleteDBInstanceMessage$SkipFinalSnapshot": "

Specifies whether to skip the creation of a final DB snapshot before deleting the instance. If you enable this parameter, RDS doesn't create a DB snapshot. If you don't enable this parameter, RDS creates a DB snapshot before the DB instance is deleted. By default, skip isn't enabled, and the DB snapshot is created.

If you don't enable this parameter, you must specify the FinalDBSnapshotIdentifier parameter.

When a DB instance is in a failure state and has a status of failed, incompatible-restore, or incompatible-network, RDS can delete the instance only if you enable this parameter.

If you delete a read replica or an RDS Custom instance, you must enable this setting.

This setting is required for RDS Custom.

", + "DeleteTenantDatabaseMessage$SkipFinalSnapshot": "

Specifies whether to skip the creation of a final DB snapshot before removing the tenant database from your DB instance. If you enable this parameter, RDS doesn't create a DB snapshot. If you don't enable this parameter, RDS creates a DB snapshot before it deletes the tenant database. By default, RDS doesn't skip the final snapshot. If you don't enable this parameter, you must specify the FinalDBSnapshotIdentifier parameter.

", + "DescribeDBClusterSnapshotsMessage$IncludeShared": "

Specifies whether to include shared manual DB cluster snapshots from other Amazon Web Services accounts that this Amazon Web Services account has been given permission to copy or restore. By default, these snapshots are not included.

You can give an Amazon Web Services account permission to restore a manual DB cluster snapshot from another Amazon Web Services account by the ModifyDBClusterSnapshotAttribute API action.

", + "DescribeDBClusterSnapshotsMessage$IncludePublic": "

Specifies whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute API action.

", "DescribeDBClustersMessage$IncludeShared": "

Specifies whether the output includes information about clusters shared from other Amazon Web Services accounts.

", - "DescribeDBEngineVersionsMessage$DefaultOnly": "

A value that indicates whether only the default version of the specified engine or engine and major version combination is returned.

", - "DescribeDBSnapshotsMessage$IncludeShared": "

A value that indicates whether to include shared manual DB cluster snapshots from other Amazon Web Services accounts that this Amazon Web Services account has been given permission to copy or restore. By default, these snapshots are not included.

You can give an Amazon Web Services account permission to restore a manual DB snapshot from another Amazon Web Services account by using the ModifyDBSnapshotAttribute API action.

This setting doesn't apply to RDS Custom.

", - "DescribeDBSnapshotsMessage$IncludePublic": "

A value that indicates whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute API.

This setting doesn't apply to RDS Custom.

", - "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

Boolean value that if true, indicates there is more data to be downloaded.

", - "EventSubscription$Enabled": "

A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

", + "DescribeDBEngineVersionsMessage$DefaultOnly": "

Specifies whether to return only the default version of the specified engine or the engine and major version combination.

", + "DescribeDBSnapshotsMessage$IncludeShared": "

Specifies whether to include shared manual DB cluster snapshots from other Amazon Web Services accounts that this Amazon Web Services account has been given permission to copy or restore. By default, these snapshots are not included.

You can give an Amazon Web Services account permission to restore a manual DB snapshot from another Amazon Web Services account by using the ModifyDBSnapshotAttribute API action.

This setting doesn't apply to RDS Custom.

", + "DescribeDBSnapshotsMessage$IncludePublic": "

Specifies whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute API.

This setting doesn't apply to RDS Custom.

", + "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

A Boolean value that, if true, indicates there is more data to be downloaded.

", + "EventSubscription$Enabled": "

Specifies whether the subscription is enabled. True indicates the subscription is enabled.

", "FailoverState$IsDataLossAllowed": "

Indicates whether the operation is a global switchover or a global failover. If data loss is allowed, then the operation is a global failover. Otherwise, it's a switchover.

", - "GlobalClusterMember$IsWriter": "

Specifies whether the Aurora DB cluster is the primary cluster (that is, has read-write capability) for the global cluster with which it is associated.

", + "GlobalClusterMember$IsWriter": "

Indicates whether the Aurora DB cluster is the primary cluster (that is, has read-write capability) for the global cluster with which it is associated.

", "ModifyDBClusterMessage$ApplyImmediately": "

Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB cluster. If this parameter is disabled, changes to the DB cluster are applied during the next maintenance window.

Most modifications can be applied immediately or during the next scheduled maintenance window. Some modifications, such as turning on deletion protection and changing the master password, are applied immediately—regardless of when you choose to apply them.

By default, this parameter is disabled.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", - "ModifyDBClusterMessage$AllowMajorVersionUpgrade": "

Specifies whether major version upgrades are allowed.

Valid for Cluster Type: Aurora DB clusters only

Constraints:

  • You must allow major version upgrades when specifying a value for the EngineVersion parameter that is a different major version than the DB cluster's current version.

", + "ModifyDBClusterMessage$AllowMajorVersionUpgrade": "

Specifies whether major version upgrades are allowed.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

Constraints:

  • You must allow major version upgrades when specifying a value for the EngineVersion parameter that is a different major version than the DB cluster's current version.

", "ModifyDBClusterMessage$AllowEngineModeChange": "

Specifies whether engine mode changes from serverless to provisioned are allowed.

Valid for Cluster Type: Aurora Serverless v1 DB clusters only

Constraints:

  • You must allow engine mode changes when specifying a different value for the EngineMode parameter from the DB cluster's current engine mode.

", "ModifyDBInstanceMessage$ApplyImmediately": "

Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB instance. By default, this parameter is disabled.

If this parameter is disabled, changes to the DB instance are applied during the next maintenance window. Some parameter changes can cause an outage and are applied on the next call to RebootDBInstance, or the next failure reboot. Review the table of parameters in Modifying a DB Instance in the Amazon RDS User Guide to see the impact of enabling or disabling ApplyImmediately for each modified parameter and to determine when the changes are applied.

", "ModifyDBInstanceMessage$AllowMajorVersionUpgrade": "

Specifies whether major version upgrades are allowed. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible.

This setting doesn't apply to RDS Custom DB instances.

Constraints:

  • Major version upgrades must be allowed when specifying a value for the EngineVersion parameter that's a different major version than the DB instance's current version.

", - "ModifyOptionGroupMessage$ApplyImmediately": "

A value that indicates whether to apply the change immediately or during the next maintenance window for each instance associated with the option group.

", - "Option$Persistent": "

Indicate if this option is persistent.

", - "Option$Permanent": "

Indicate if this option is permanent.

", + "ModifyOptionGroupMessage$ApplyImmediately": "

Specifies whether to apply the change immediately or during the next maintenance window for each instance associated with the option group.

", + "Option$Persistent": "

Indicates whether this option is persistent.

", + "Option$Permanent": "

Indicates whether this option is permanent.

", "OptionGroup$AllowsVpcAndNonVpcInstanceMemberships": "

Indicates whether this option group can be applied to both VPC and non-VPC instances. The value true indicates the option group can be applied to both VPC and non-VPC instances.

", - "OptionGroupOption$PortRequired": "

Specifies whether the option requires a port.

", + "OptionGroupOption$PortRequired": "

Indicates whether the option requires a port.

", "OptionGroupOption$Persistent": "

Persistent options can't be removed from an option group while DB instances are associated with the option group. If you disassociate all DB instances from the option group, your can remove the persistent option from the option group.

", "OptionGroupOption$Permanent": "

Permanent options can never be removed from an option group. An option group containing a permanent option can't be removed from a DB instance.

", "OptionGroupOption$RequiresAutoMinorEngineVersionUpgrade": "

If true, you must enable the Auto Minor Version Upgrade setting for your DB instance before you can use this option. You can enable Auto Minor Version Upgrade when you first create your DB instance, or by modifying your DB instance later.

", "OptionGroupOption$VpcOnly": "

If true, you can only use this option with a DB instance that is in a VPC.

", - "OptionGroupOptionSetting$IsModifiable": "

Boolean value where true indicates that this option group option can be changed from the default value.

", - "OptionGroupOptionSetting$IsRequired": "

Boolean value where true indicates that a value must be specified for this option setting of the option group option.

", - "OptionSetting$IsModifiable": "

A Boolean value that, when true, indicates the option setting can be modified from the default.

", - "OptionSetting$IsCollection": "

Indicates if the option setting is part of a collection.

", - "OptionVersion$IsDefault": "

True if the version is the default version of the option, and otherwise false.

", + "OptionGroupOptionSetting$IsModifiable": "

Indicates whether this option group option can be changed from the default value.

", + "OptionGroupOptionSetting$IsRequired": "

Indicates whether a value must be specified for this option setting of the option group option.

", + "OptionSetting$IsModifiable": "

Indicates whether the option setting can be modified from the default.

", + "OptionSetting$IsCollection": "

Indicates whether the option setting is part of a collection.

", + "OptionVersion$IsDefault": "

Indicates whether the version is the default version of the option.

", "OrderableDBInstanceOption$MultiAZCapable": "

Indicates whether a DB instance is Multi-AZ capable.

", "OrderableDBInstanceOption$ReadReplicaCapable": "

Indicates whether a DB instance can have a read replica.

", "OrderableDBInstanceOption$Vpc": "

Indicates whether a DB instance is in a VPC.

", @@ -498,36 +518,40 @@ "OrderableDBInstanceOption$SupportsIops": "

Indicates whether a DB instance supports provisioned IOPS.

", "OrderableDBInstanceOption$SupportsEnhancedMonitoring": "

Indicates whether a DB instance supports Enhanced Monitoring at intervals from 1 to 60 seconds.

", "OrderableDBInstanceOption$SupportsIAMDatabaseAuthentication": "

Indicates whether a DB instance supports IAM database authentication.

", - "OrderableDBInstanceOption$SupportsPerformanceInsights": "

True if a DB instance supports Performance Insights, otherwise false.

", - "OrderableDBInstanceOption$OutpostCapable": "

Whether a DB instance supports RDS on Outposts.

For more information about RDS on Outposts, see Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", - "OrderableDBInstanceOption$SupportsGlobalDatabases": "

A value that indicates whether you can use Aurora global databases with a specific combination of other DB engine attributes.

", - "OrderableDBInstanceOption$SupportsClusters": "

Whether DB instances can be configured as a Multi-AZ DB cluster.

For more information on Multi-AZ DB clusters, see Multi-AZ deployments with two readable standby DB instances in the Amazon RDS User Guide.

", + "OrderableDBInstanceOption$SupportsPerformanceInsights": "

Indicates whether a DB instance supports Performance Insights.

", + "OrderableDBInstanceOption$OutpostCapable": "

Indicates whether a DB instance supports RDS on Outposts.

For more information about RDS on Outposts, see Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", + "OrderableDBInstanceOption$SupportsGlobalDatabases": "

Indicates whether you can use Aurora global databases with a specific combination of other DB engine attributes.

", + "OrderableDBInstanceOption$SupportsClusters": "

Indicates whether DB instances can be configured as a Multi-AZ DB cluster.

For more information on Multi-AZ DB clusters, see Multi-AZ deployments with two readable standby DB instances in the Amazon RDS User Guide.

", "OrderableDBInstanceOption$SupportsStorageThroughput": "

Indicates whether a DB instance supports storage throughput.

", + "OrderableDBInstanceOption$SupportsDedicatedLogVolume": "

Indicates whether a DB instance supports using a dedicated log volume (DLV).

", "Parameter$IsModifiable": "

Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

", - "ReservedDBInstance$MultiAZ": "

Indicates if the reservation applies to Multi-AZ deployments.

", - "ReservedDBInstancesOffering$MultiAZ": "

Indicates if the offering applies to Multi-AZ deployments.

", - "ResetDBClusterParameterGroupMessage$ResetAllParameters": "

A value that indicates whether to reset all parameters in the DB cluster parameter group to their default values. You can't use this parameter if there is a list of parameter names specified for the Parameters parameter.

", - "ResetDBParameterGroupMessage$ResetAllParameters": "

A value that indicates whether to reset all parameters in the DB parameter group to default values. By default, all parameters in the DB parameter group are reset to default values.

", - "RestoreDBClusterToPointInTimeMessage$UseLatestRestorableTime": "

A value that indicates whether to restore the DB cluster to the latest restorable backup time. By default, the DB cluster isn't restored to the latest restorable backup time.

Constraints: Can't be specified if RestoreToTime parameter is provided.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

A value that indicates whether the DB instance is restored from the latest backup time. By default, the DB instance isn't restored from the latest backup time.

Constraints: Can't be specified if the RestoreTime parameter is provided.

", - "SourceRegion$SupportsDBInstanceAutomatedBackupsReplication": "

Whether the source Amazon Web Services Region supports replicating automated backups to the current Amazon Web Services Region.

", + "ReservedDBInstance$MultiAZ": "

Indicates whether the reservation applies to Multi-AZ deployments.

", + "ReservedDBInstancesOffering$MultiAZ": "

Indicates whether the offering applies to Multi-AZ deployments.

", + "ResetDBClusterParameterGroupMessage$ResetAllParameters": "

Specifies whether to reset all parameters in the DB cluster parameter group to their default values. You can't use this parameter if there is a list of parameter names specified for the Parameters parameter.

", + "ResetDBParameterGroupMessage$ResetAllParameters": "

Specifies whether to reset all parameters in the DB parameter group to default values. By default, all parameters in the DB parameter group are reset to default values.

", + "RestoreDBClusterToPointInTimeMessage$UseLatestRestorableTime": "

Specifies whether to restore the DB cluster to the latest restorable backup time. By default, the DB cluster isn't restored to the latest restorable backup time.

Constraints: Can't be specified if RestoreToTime parameter is provided.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

Specifies whether the DB instance is restored from the latest backup time. By default, the DB instance isn't restored from the latest backup time.

Constraints:

  • Can't be specified if the RestoreTime parameter is provided.

", + "SourceRegion$SupportsDBInstanceAutomatedBackupsReplication": "

Indicates whether the source Amazon Web Services Region supports replicating automated backups to the current Amazon Web Services Region.

", "StartActivityStreamResponse$ApplyImmediately": "

Indicates whether or not the database activity stream will start as soon as possible, regardless of the maintenance window for the database.

", - "UpgradeTarget$AutoUpgrade": "

A value that indicates whether the target version is applied to any source DB instances that have AutoMinorVersionUpgrade set to true.

", - "UpgradeTarget$IsMajorVersionUpgrade": "

A value that indicates whether upgrading to the target version requires upgrading the major version of the database engine.

", - "ValidStorageOptions$SupportsStorageAutoscaling": "

Whether or not Amazon RDS can automatically scale storage for DB instances that use the new instance class.

" + "TenantDatabase$DeletionProtection": "

Specifies whether deletion protection is enabled for the DB instance.

", + "UpgradeTarget$AutoUpgrade": "

Indicates whether the target version is applied to any source DB instances that have AutoMinorVersionUpgrade set to true.

", + "UpgradeTarget$IsMajorVersionUpgrade": "

Indicates whether upgrading to the target version requires upgrading the major version of the database engine.

", + "ValidDBInstanceModificationsMessage$SupportsDedicatedLogVolume": "

Indicates whether a DB instance supports using a dedicated log volume (DLV).

", + "ValidStorageOptions$SupportsStorageAutoscaling": "

Indicates whether or not Amazon RDS can automatically scale storage for DB instances that use the new instance class.

" } }, "BooleanOptional": { "base": null, "refs": { - "BacktrackDBClusterMessage$Force": "

A value that indicates whether to force the DB cluster to backtrack when binary logging is enabled. Otherwise, an error occurs when binary logging is enabled.

", - "BacktrackDBClusterMessage$UseEarliestTimeOnPointInTimeUnavailable": "

A value that indicates whether to backtrack the DB cluster to the earliest possible backtrack time when BacktrackTo is set to a timestamp earlier than the earliest backtrack time. When this parameter is disabled and BacktrackTo is set to a timestamp earlier than the earliest backtrack time, an error occurs.

", - "Certificate$CustomerOverride": "

Whether there is an override for the default certificate identifier.

", - "ClusterPendingModifiedValues$IAMDatabaseAuthenticationEnabled": "

A value that indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", - "CopyDBClusterSnapshotMessage$CopyTags": "

A value that indicates whether to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot. By default, tags are not copied.

", - "CopyDBSnapshotMessage$CopyTags": "

A value that indicates whether to copy all tags from the source DB snapshot to the target DB snapshot. By default, tags aren't copied.

", - "CopyDBSnapshotMessage$CopyOptionGroup": "

A value that indicates whether to copy the DB option group associated with the source DB snapshot to the target Amazon Web Services account and associate with the target DB snapshot. The associated option group can be copied only with cross-account snapshot copy calls.

", - "CreateCustomDBEngineVersionMessage$UseAwsProvidedLatestImage": "

Reserved for future use.

", + "BacktrackDBClusterMessage$Force": "

Specifies whether to force the DB cluster to backtrack when binary logging is enabled. Otherwise, an error occurs when binary logging is enabled.

", + "BacktrackDBClusterMessage$UseEarliestTimeOnPointInTimeUnavailable": "

Specifies whether to backtrack the DB cluster to the earliest possible backtrack time when BacktrackTo is set to a timestamp earlier than the earliest backtrack time. When this parameter is disabled and BacktrackTo is set to a timestamp earlier than the earliest backtrack time, an error occurs.

", + "Certificate$CustomerOverride": "

Indicates whether there is an override for the default certificate identifier.

", + "ClusterPendingModifiedValues$IAMDatabaseAuthenticationEnabled": "

Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", + "CopyDBClusterSnapshotMessage$CopyTags": "

Specifies whether to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot. By default, tags are not copied.

", + "CopyDBSnapshotMessage$CopyTags": "

Specifies whether to copy all tags from the source DB snapshot to the target DB snapshot. By default, tags aren't copied.

", + "CopyDBSnapshotMessage$CopyOptionGroup": "

Specifies whether to copy the DB option group associated with the source DB snapshot to the target Amazon Web Services account and associate with the target DB snapshot. The associated option group can be copied only with cross-account snapshot copy calls.

", + "CreateBlueGreenDeploymentRequest$UpgradeTargetStorageConfig": "

Whether to upgrade the storage file system configuration on the green database. This option migrates the green DB instance from the older 32-bit file system to the preferred configuration. For more information, see Upgrading the storage file system for a DB instance.

", + "CreateCustomDBEngineVersionMessage$UseAwsProvidedLatestImage": "

Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV. If you specify UseAwsProvidedLatestImage, you can't also specify ImageId.

", "CreateDBClusterMessage$StorageEncrypted": "

Specifies whether the DB cluster is encrypted.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", "CreateDBClusterMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

Valid for Cluster Type: Aurora DB clusters only

", "CreateDBClusterMessage$DeletionProtection": "

Specifies whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", @@ -549,16 +573,20 @@ "CreateDBInstanceMessage$DeletionProtection": "

Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

This setting doesn't apply to Amazon Aurora DB instances. You can enable or disable deletion protection for the DB cluster. For more information, see CreateDBCluster. DB instances in a DB cluster can be deleted even when deletion protection is enabled for the DB cluster.

", "CreateDBInstanceMessage$EnableCustomerOwnedIp": "

Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", "CreateDBInstanceMessage$ManageMasterUserPassword": "

Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

", - "CreateDBInstanceReadReplicaMessage$MultiAZ": "

A value that indicates whether the read replica is in a Multi-AZ deployment.

You can create a read replica as a Multi-AZ DB instance. RDS creates a standby of your replica in another Availability Zone for failover support for the replica. Creating your read replica as a Multi-AZ DB instance is independent of whether the source is a Multi-AZ DB instance or a Multi-AZ DB cluster.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

A value that indicates whether minor engine upgrades are applied automatically to the read replica during the maintenance window.

This setting doesn't apply to RDS Custom.

Default: Inherits from the source DB instance

", - "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": "

A value that indicates whether the DB instance is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn't permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", - "CreateDBInstanceReadReplicaMessage$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the read replica to snapshots of the read replica. By default, tags are not copied.

", - "CreateDBInstanceReadReplicaMessage$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$EnablePerformanceInsights": "

A value that indicates whether to enable Performance Insights for the read replica.

For more information, see Using Amazon Performance Insights in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$UseDefaultProcessorFeatures": "

A value that indicates whether the DB instance class of the DB instance uses its default processor features.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$DeletionProtection": "

A value that indicates whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", - "CreateDBInstanceReadReplicaMessage$EnableCustomerOwnedIp": "

A value that indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts read replica.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the read replica from outside of its virtual private cloud (VPC) on your local network.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", - "CreateEventSubscriptionMessage$Enabled": "

A value that indicates whether to activate the subscription. If the event notification subscription isn't activated, the subscription is created but not active.

", + "CreateDBInstanceMessage$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

", + "CreateDBInstanceMessage$MultiTenant": "

Specifies whether to use the multi-tenant configuration or the single-tenant configuration (default). This parameter only applies to RDS for Oracle container database (CDB) engines.

Note the following restrictions:

  • The DB engine that you specify in the request must support the multi-tenant configuration. If you attempt to enable the multi-tenant configuration on a DB engine that doesn't support it, the request fails.

  • If you specify the multi-tenant configuration when you create your DB instance, you can't later modify this DB instance to use the single-tenant configuration.

", + "CreateDBInstanceReadReplicaMessage$MultiAZ": "

Specifies whether the read replica is in a Multi-AZ deployment.

You can create a read replica as a Multi-AZ DB instance. RDS creates a standby of your replica in another Availability Zone for failover support for the replica. Creating your read replica as a Multi-AZ DB instance is independent of whether the source is a Multi-AZ DB instance or a Multi-AZ DB cluster.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

Specifies whether to automatically apply minor engine upgrades to the read replica during the maintenance window.

This setting doesn't apply to RDS Custom DB instances.

Default: Inherits the value from the source DB instance.

", + "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": "

Specifies whether the DB instance is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn't permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", + "CreateDBInstanceReadReplicaMessage$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the read replica to snapshots of the read replica. By default, tags aren't copied.

", + "CreateDBInstanceReadReplicaMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$EnablePerformanceInsights": "

Specifies whether to enable Performance Insights for the read replica.

For more information, see Using Amazon Performance Insights in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$UseDefaultProcessorFeatures": "

Specifies whether the DB instance class of the DB instance uses its default processor features.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$DeletionProtection": "

Specifies whether to enable deletion protection for the DB instance. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", + "CreateDBInstanceReadReplicaMessage$EnableCustomerOwnedIp": "

Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts read replica.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the read replica from outside of its virtual private cloud (VPC) on your local network.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", + "CreateDBInstanceReadReplicaMessage$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

", + "CreateDBInstanceReadReplicaMessage$UpgradeStorageConfig": "

Whether to upgrade the storage file system configuration on the read replica. This option migrates the read replica from the old storage file system layout to the preferred layout.

", + "CreateEventSubscriptionMessage$Enabled": "

Specifies whether to activate the subscription. If the event notification subscription isn't activated, the subscription is created but not active.

", "CreateGlobalClusterMessage$DeletionProtection": "

Specifies whether to enable deletion protection for the new global database cluster. The global database can't be deleted when deletion protection is enabled.

", "CreateGlobalClusterMessage$StorageEncrypted": "

Specifies whether to enable storage encryption for the new global database cluster.

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the setting from the source DB cluster.

", "DBCluster$MultiAZ": "

Indicates whether the DB cluster has instances in multiple Availability Zones.

", @@ -567,29 +595,34 @@ "DBCluster$HttpEndpointEnabled": "

Indicates whether the HTTP endpoint for an Aurora Serverless v1 DB cluster is enabled.

When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on the Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with the query editor.

For more information, see Using the Data API for Aurora Serverless v1 in the Amazon Aurora User Guide.

", "DBCluster$CopyTagsToSnapshot": "

Indicates whether tags are copied from the DB cluster to snapshots of the DB cluster.

", "DBCluster$CrossAccountClone": "

Indicates whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.

", - "DBCluster$GlobalWriteForwardingRequested": "

Specifies whether write forwarding is enabled for a secondary cluster in an Aurora global database. Because write forwarding takes time to enable, check the value of GlobalWriteForwardingStatus to confirm that the request has completed before using the write forwarding feature for this cluster.

", + "DBCluster$GlobalWriteForwardingRequested": "

Indicates whether write forwarding is enabled for a secondary cluster in an Aurora global database. Because write forwarding takes time to enable, check the value of GlobalWriteForwardingStatus to confirm that the request has completed before using the write forwarding feature for this cluster.

", "DBCluster$PubliclyAccessible": "

Indicates whether the DB cluster is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn't permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to a private IP address.

For more information, see CreateDBCluster.

This setting is only for non-Aurora Multi-AZ DB clusters.

", "DBCluster$PerformanceInsightsEnabled": "

Indicates whether Performance Insights is enabled for the DB cluster.

This setting is only for non-Aurora Multi-AZ DB clusters.

", - "DBEngineVersion$SupportsCertificateRotationWithoutRestart": "

A value that indicates whether the engine version supports rotating the server certificate without rebooting the DB instance.

", - "DBEngineVersion$SupportsLocalWriteForwarding": "

A value that indicates whether the DB engine version supports forwarding write operations from reader DB instances to the writer DB instance in the DB cluster. By default, write operations aren't allowed on reader DB instances.

Valid for: Aurora DB clusters only

", + "DBEngineVersion$SupportsCertificateRotationWithoutRestart": "

Indicates whether the engine version supports rotating the server certificate without rebooting the DB instance.

", + "DBEngineVersion$SupportsLocalWriteForwarding": "

Indicates whether the DB engine version supports forwarding write operations from reader DB instances to the writer DB instance in the DB cluster. By default, write operations aren't allowed on reader DB instances.

Valid for: Aurora DB clusters only

", "DBInstance$PerformanceInsightsEnabled": "

Indicates whether Performance Insights is enabled for the DB instance.

", "DBInstance$CustomerOwnedIpEnabled": "

Indicates whether a customer-owned IP address (CoIP) is enabled for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", "DBInstance$ActivityStreamEngineNativeAuditFieldsIncluded": "

Indicates whether engine-native audit fields are included in the database activity stream.

", + "DBInstance$IsStorageConfigUpgradeAvailable": "

Indicates whether an upgrade is recommended for the storage file system configuration on the DB instance. To migrate to the preferred configuration, you can either create a blue/green deployment, or create a read replica from the DB instance. For more information, see Upgrading the storage file system for a DB instance.

", + "DBInstance$MultiTenant": "

Specifies whether the DB instance is in the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).

", + "DBInstanceAutomatedBackup$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

", + "DBInstanceAutomatedBackup$MultiTenant": "

Specifies whether the automatic backup is for a DB instance in the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).

", + "DBSnapshot$MultiTenant": "

Indicates whether the snapshot is of a DB instance using the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).

", "DeleteBlueGreenDeploymentRequest$DeleteTarget": "

Specifies whether to delete the resources in the green environment. You can't specify this option if the blue/green deployment status is SWITCHOVER_COMPLETED.

", - "DeleteDBClusterMessage$DeleteAutomatedBackups": "

A value that indicates whether to remove automated backups immediately after the DB cluster is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB cluster is deleted.

", - "DeleteDBInstanceMessage$DeleteAutomatedBackups": "

A value that indicates whether to remove automated backups immediately after the DB instance is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB instance is deleted.

", - "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

A value that indicates whether to list the supported character sets for each engine version.

If this parameter is enabled and the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

For RDS Custom, the default is not to list supported character sets. If you set ListSupportedCharacterSets to true, RDS Custom returns no results.

", - "DescribeDBEngineVersionsMessage$ListSupportedTimezones": "

A value that indicates whether to list the supported time zones for each engine version.

If this parameter is enabled and the requested engine supports the TimeZone parameter for CreateDBInstance, the response includes a list of supported time zones for each engine version.

For RDS Custom, the default is not to list supported time zones. If you set ListSupportedTimezones to true, RDS Custom returns no results.

", - "DescribeDBEngineVersionsMessage$IncludeAll": "

A value that indicates whether to include engine versions that aren't available in the list. The default is to list only available engine versions.

", - "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

A value that indicates whether to show only VPC or non-VPC offerings. RDS Custom supports only VPC offerings.

RDS Custom supports only VPC offerings. If you describe non-VPC offerings for RDS Custom, the output shows VPC offerings.

", - "DescribeReservedDBInstancesMessage$MultiAZ": "

A value that indicates whether to show only those reservations that support Multi-AZ.

", - "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

A value that indicates whether to show only those reservations that support Multi-AZ.

", + "DeleteDBClusterMessage$DeleteAutomatedBackups": "

Specifies whether to remove automated backups immediately after the DB cluster is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB cluster is deleted.

", + "DeleteDBInstanceMessage$DeleteAutomatedBackups": "

Specifies whether to remove automated backups immediately after the DB instance is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB instance is deleted.

", + "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

Specifies whether to list the supported character sets for each engine version.

If this parameter is enabled and the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

For RDS Custom, the default is not to list supported character sets. If you enable this parameter, RDS Custom returns no results.

", + "DescribeDBEngineVersionsMessage$ListSupportedTimezones": "

Specifies whether to list the supported time zones for each engine version.

If this parameter is enabled and the requested engine supports the TimeZone parameter for CreateDBInstance, the response includes a list of supported time zones for each engine version.

For RDS Custom, the default is not to list supported time zones. If you enable this parameter, RDS Custom returns no results.

", + "DescribeDBEngineVersionsMessage$IncludeAll": "

Specifies whether to also list the engine versions that aren't available. The default is to list only available engine versions.

", + "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

Specifies whether to show only VPC or non-VPC offerings. RDS Custom supports only VPC offerings.

RDS Custom supports only VPC offerings. If you describe non-VPC offerings for RDS Custom, the output shows VPC offerings.

", + "DescribeReservedDBInstancesMessage$MultiAZ": "

Specifies whether to show only those reservations that support Multi-AZ.

", + "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

Specifies whether to show only those reservations that support Multi-AZ.

", "FailoverGlobalClusterMessage$AllowDataLoss": "

Specifies whether to allow data loss for this global database cluster operation. Allowing data loss triggers a global failover operation.

If you don't specify AllowDataLoss, the global database cluster operation defaults to a switchover.

Constraints:

  • Can't be specified together with the Switchover parameter.

", "FailoverGlobalClusterMessage$Switchover": "

Specifies whether to switch over this global database cluster.

Constraints:

  • Can't be specified together with the AllowDataLoss parameter.

", "GlobalCluster$StorageEncrypted": "

The storage encryption setting for the global database cluster.

", "GlobalCluster$DeletionProtection": "

The deletion protection setting for the new global database cluster.

", "ModifyActivityStreamResponse$EngineNativeAuditFieldsIncluded": "

Indicates whether engine-native audit fields are included in the database activity stream.

", - "ModifyCertificatesMessage$RemoveCustomerOverride": "

A value that indicates whether to remove the override for the default certificate. If the override is removed, the default certificate is the system default.

", + "ModifyCertificatesMessage$RemoveCustomerOverride": "

Specifies whether to remove the override for the default certificate. If the override is removed, the default certificate is the system default.

", "ModifyDBClusterMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

Valid for Cluster Type: Aurora DB clusters only

", "ModifyDBClusterMessage$DeletionProtection": "

Specifies whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", "ModifyDBClusterMessage$EnableHttpEndpoint": "

Specifies whether to enable the HTTP endpoint for an Aurora Serverless v1 DB cluster. By default, the HTTP endpoint is disabled.

When enabled, the HTTP endpoint provides a connectionless web service API for running SQL queries on the Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with the query editor.

For more information, see Using the Data API for Aurora Serverless v1 in the Amazon Aurora User Guide.

Valid for Cluster Type: Aurora DB clusters only

", @@ -613,67 +646,75 @@ "ModifyDBInstanceMessage$EnableCustomerOwnedIp": "

Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", "ModifyDBInstanceMessage$ManageMasterUserPassword": "

Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

If the DB instance doesn't manage the master user password with Amazon Web Services Secrets Manager, you can turn on this management. In this case, you can't specify MasterUserPassword.

If the DB instance already manages the master user password with Amazon Web Services Secrets Manager, and you specify that the master user password is not managed with Amazon Web Services Secrets Manager, then you must specify MasterUserPassword. In this case, Amazon RDS deletes the secret and uses the new password for the master user specified by MasterUserPassword.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

", "ModifyDBInstanceMessage$RotateMasterUserPassword": "

Specifies whether to rotate the secret managed by Amazon Web Services Secrets Manager for the master user password.

This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB cluster. The secret value contains the updated password.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.

Constraints:

  • You must apply the change immediately when rotating the master user password.

", + "ModifyDBInstanceMessage$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

", + "ModifyDBInstanceMessage$MultiTenant": "

Specifies whether the to convert your DB instance from the single-tenant configuration to the multi-tenant configuration. This parameter is supported only for RDS for Oracle CDB instances.

During the conversion, RDS creates an initial tenant database and associates the DB name, master user name, character set, and national character set metadata with this database. The tags associated with the instance also propagate to the initial tenant database. You can add more tenant databases to your DB instance by using the CreateTenantDatabase operation.

The conversion to the multi-tenant configuration is permanent and irreversible, so you can't later convert back to the single-tenant configuration. When you specify this parameter, you must also specify ApplyImmediately.

", "ModifyDBProxyRequest$RequireTLS": "

Whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy, even if the associated database doesn't use TLS.

", "ModifyDBProxyRequest$DebugLogging": "

Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

", - "ModifyEventSubscriptionMessage$Enabled": "

A value that indicates whether to activate the subscription.

", + "ModifyEventSubscriptionMessage$Enabled": "

Specifies whether to activate the subscription.

", "ModifyGlobalClusterMessage$DeletionProtection": "

Specifies whether to enable deletion protection for the global database cluster. The global database cluster can't be deleted when deletion protection is enabled.

", "ModifyGlobalClusterMessage$AllowMajorVersionUpgrade": "

Specifies whether to allow major version upgrades.

Constraints: Must be enabled if you specify a value for the EngineVersion parameter that's a different major version than the global cluster's current version.

If you upgrade the major version of a global database, the cluster and DB instance parameter groups are set to the default parameter groups for the new version. Apply any custom parameter groups after completing the upgrade.

", "OptionGroupOption$SupportsOptionVersionDowngrade": "

If true, you can change the option to an earlier version of the option. This only applies to options that have different versions available.

", - "OptionGroupOption$CopyableCrossAccount": "

Specifies whether the option can be copied across Amazon Web Services accounts.

", - "OrderableDBInstanceOption$SupportsStorageAutoscaling": "

Whether Amazon RDS can automatically scale storage for DB instances that use the specified DB instance class.

", - "OrderableDBInstanceOption$SupportsKerberosAuthentication": "

Whether a DB instance supports Kerberos Authentication.

", - "PendingModifiedValues$MultiAZ": "

A value that indicates that the Single-AZ DB instance will change to a Multi-AZ deployment.

", - "PendingModifiedValues$IAMDatabaseAuthenticationEnabled": "

Whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", - "RebootDBInstanceMessage$ForceFailover": "

A value that indicates whether the reboot is conducted through a Multi-AZ failover.

Constraint: You can't enable force failover if the instance isn't configured for Multi-AZ.

", - "RestoreDBClusterFromS3Message$StorageEncrypted": "

A value that indicates whether the restored DB cluster is encrypted.

", - "RestoreDBClusterFromS3Message$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

", - "RestoreDBClusterFromS3Message$DeletionProtection": "

A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

", - "RestoreDBClusterFromS3Message$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

", - "RestoreDBClusterFromS3Message$ManageMasterUserPassword": "

A value that indicates whether to manage the master user password with Amazon Web Services Secrets Manager.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide and Password management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide.

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

", - "RestoreDBClusterFromSnapshotMessage$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", - "RestoreDBClusterFromSnapshotMessage$DeletionProtection": "

A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterFromSnapshotMessage$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterFromSnapshotMessage$PubliclyAccessible": "

A value that indicates whether the DB cluster is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to a private IP address.

Default: The default behavior varies depending on whether DBSubnetGroupName is specified.

If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the following applies:

  • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the following applies:

  • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterToPointInTimeMessage$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", - "RestoreDBClusterToPointInTimeMessage$DeletionProtection": "

A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterToPointInTimeMessage$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterToPointInTimeMessage$PubliclyAccessible": "

A value that indicates whether the DB cluster is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to a private IP address.

Default: The default behavior varies depending on whether DBSubnetGroupName is specified.

If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the following applies:

  • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the following applies:

  • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

Valid for: Multi-AZ DB clusters only

", - "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

A value that indicates whether the DB instance is a Multi-AZ deployment.

This setting doesn't apply to RDS Custom.

Constraint: You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

", - "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": "

A value that indicates whether the DB instance is publicly accessible.

When the DB instance is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB instance's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB instance's VPC. Access to the DB instance is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB instance doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", - "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

A value that indicates whether minor version upgrades are applied automatically to the DB instance during the maintenance window.

If you restore an RDS Custom DB instance, you must disable this parameter.

", - "RestoreDBInstanceFromDBSnapshotMessage$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the restored DB instance to snapshots of the DB instance.

In most cases, tags aren't copied by default. However, when you restore a DB instance from a DB snapshot, RDS checks whether you specify new tags. If yes, the new tags are added to the restored DB instance. If there are no new tags, RDS looks for the tags from the source DB instance for the DB snapshot, and then adds those tags to the restored DB instance.

For more information, see Copying tags to DB instance snapshots in the Amazon RDS User Guide.

", - "RestoreDBInstanceFromDBSnapshotMessage$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceFromDBSnapshotMessage$UseDefaultProcessorFeatures": "

A value that indicates whether the DB instance class of the DB instance uses its default processor features.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceFromDBSnapshotMessage$DeletionProtection": "

A value that indicates whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", - "RestoreDBInstanceFromDBSnapshotMessage$EnableCustomerOwnedIp": "

A value that indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

This setting doesn't apply to RDS Custom.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", - "RestoreDBInstanceFromS3Message$MultiAZ": "

A value that indicates whether the DB instance is a Multi-AZ deployment. If the DB instance is a Multi-AZ deployment, you can't set the AvailabilityZone parameter.

", - "RestoreDBInstanceFromS3Message$AutoMinorVersionUpgrade": "

A value that indicates whether minor engine upgrades are applied automatically to the DB instance during the maintenance window. By default, minor engine upgrades are not applied automatically.

", - "RestoreDBInstanceFromS3Message$PubliclyAccessible": "

A value that indicates whether the DB instance is publicly accessible.

When the DB instance is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB instance's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB instance's VPC. Access to the DB instance is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB instance doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", - "RestoreDBInstanceFromS3Message$StorageEncrypted": "

A value that indicates whether the new DB instance is encrypted or not.

", - "RestoreDBInstanceFromS3Message$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the DB instance to snapshots of the DB instance. By default, tags are not copied.

", - "RestoreDBInstanceFromS3Message$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

", - "RestoreDBInstanceFromS3Message$EnablePerformanceInsights": "

A value that indicates whether to enable Performance Insights for the DB instance.

For more information, see Using Amazon Performance Insights in the Amazon RDS User Guide.

", - "RestoreDBInstanceFromS3Message$UseDefaultProcessorFeatures": "

A value that indicates whether the DB instance class of the DB instance uses its default processor features.

", - "RestoreDBInstanceFromS3Message$DeletionProtection": "

A value that indicates whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", - "RestoreDBInstanceFromS3Message$ManageMasterUserPassword": "

A value that indicates whether to manage the master user password with Amazon Web Services Secrets Manager.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

", - "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

A value that indicates whether the DB instance is a Multi-AZ deployment.

This setting doesn't apply to RDS Custom.

Constraint: You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

", - "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": "

A value that indicates whether the DB instance is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn't permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", - "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

A value that indicates whether minor version upgrades are applied automatically to the DB instance during the maintenance window.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$CopyTagsToSnapshot": "

A value that indicates whether to copy all tags from the restored DB instance to snapshots of the DB instance. By default, tags are not copied.

", - "RestoreDBInstanceToPointInTimeMessage$EnableIAMDatabaseAuthentication": "

A value that indicates whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

This setting doesn't apply to RDS Custom.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

", - "RestoreDBInstanceToPointInTimeMessage$UseDefaultProcessorFeatures": "

A value that indicates whether the DB instance class of the DB instance uses its default processor features.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$DeletionProtection": "

A value that indicates whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", - "RestoreDBInstanceToPointInTimeMessage$EnableCustomerOwnedIp": "

A value that indicates whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

This setting doesn't apply to RDS Custom.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", - "ScalingConfiguration$AutoPause": "

A value that indicates whether to allow or disallow automatic pause for an Aurora DB cluster in serverless DB engine mode. A DB cluster can be paused only when it's idle (it has no connections).

If a DB cluster is paused for more than seven days, the DB cluster might be backed up with a snapshot. In this case, the DB cluster is restored when there is a request to connect to it.

", - "ScalingConfigurationInfo$AutoPause": "

A value that indicates whether automatic pause is allowed for the Aurora DB cluster in serverless DB engine mode.

When the value is set to false for an Aurora Serverless v1 DB cluster, the DB cluster automatically resumes.

", + "OptionGroupOption$CopyableCrossAccount": "

Indicates whether the option can be copied across Amazon Web Services accounts.

", + "OrderableDBInstanceOption$SupportsStorageAutoscaling": "

Indicates whether Amazon RDS can automatically scale storage for DB instances that use the specified DB instance class.

", + "OrderableDBInstanceOption$SupportsKerberosAuthentication": "

Indicates whether a DB instance supports Kerberos Authentication.

", + "PendingModifiedValues$MultiAZ": "

Indicates whether the Single-AZ DB instance will change to a Multi-AZ deployment.

", + "PendingModifiedValues$IAMDatabaseAuthenticationEnabled": "

Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

", + "PendingModifiedValues$DedicatedLogVolume": "

Indicates whether the DB instance has a dedicated log volume (DLV) enabled.>

", + "PendingModifiedValues$MultiTenant": "

Indicates whether the DB instance will change to the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).

", + "RebootDBInstanceMessage$ForceFailover": "

Specifies whether the reboot is conducted through a Multi-AZ failover.

Constraint: You can't enable force failover if the instance isn't configured for Multi-AZ.

", + "RestoreDBClusterFromS3Message$StorageEncrypted": "

Specifies whether the restored DB cluster is encrypted.

", + "RestoreDBClusterFromS3Message$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

", + "RestoreDBClusterFromS3Message$DeletionProtection": "

Specifies whether to enable deletion protection for the DB cluster. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

", + "RestoreDBClusterFromS3Message$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

", + "RestoreDBClusterFromS3Message$ManageMasterUserPassword": "

Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide and Password management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide.

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

", + "RestoreDBClusterFromSnapshotMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterFromSnapshotMessage$DeletionProtection": "

Specifies whether to enable deletion protection for the DB cluster. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterFromSnapshotMessage$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterFromSnapshotMessage$PubliclyAccessible": "

Specifies whether the DB cluster is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to a private IP address.

Default: The default behavior varies depending on whether DBSubnetGroupName is specified.

If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the following applies:

  • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the following applies:

  • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterToPointInTimeMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information, see IAM Database Authentication in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterToPointInTimeMessage$DeletionProtection": "

Specifies whether to enable deletion protection for the DB cluster. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterToPointInTimeMessage$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterToPointInTimeMessage$PubliclyAccessible": "

Specifies whether the DB cluster is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB cluster isn't publicly accessible, it is an internal DB cluster with a DNS name that resolves to a private IP address.

Default: The default behavior varies depending on whether DBSubnetGroupName is specified.

If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the following applies:

  • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the following applies:

  • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

  • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

Valid for: Multi-AZ DB clusters only

", + "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

Specifies whether the DB instance is a Multi-AZ deployment.

This setting doesn't apply to RDS Custom.

Constraint: You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

", + "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": "

Specifies whether the DB instance is publicly accessible.

When the DB instance is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB instance's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB instance's VPC. Access to the DB instance is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB instance doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", + "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

Specifies whether to automatically apply minor version upgrades to the DB instance during the maintenance window.

If you restore an RDS Custom DB instance, you must disable this parameter.

", + "RestoreDBInstanceFromDBSnapshotMessage$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the restored DB instance to snapshots of the DB instance.

In most cases, tags aren't copied by default. However, when you restore a DB instance from a DB snapshot, RDS checks whether you specify new tags. If yes, the new tags are added to the restored DB instance. If there are no new tags, RDS looks for the tags from the source DB instance for the DB snapshot, and then adds those tags to the restored DB instance.

For more information, see Copying tags to DB instance snapshots in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromDBSnapshotMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceFromDBSnapshotMessage$UseDefaultProcessorFeatures": "

Specifies whether the DB instance class of the DB instance uses its default processor features.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceFromDBSnapshotMessage$DeletionProtection": "

Specifies whether to enable deletion protection for the DB instance. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", + "RestoreDBInstanceFromDBSnapshotMessage$EnableCustomerOwnedIp": "

Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

This setting doesn't apply to RDS Custom.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", + "RestoreDBInstanceFromDBSnapshotMessage$DedicatedLogVolume": "

Specifies whether to enable a dedicated log volume (DLV) for the DB instance.

", + "RestoreDBInstanceFromS3Message$MultiAZ": "

Specifies whether the DB instance is a Multi-AZ deployment. If the DB instance is a Multi-AZ deployment, you can't set the AvailabilityZone parameter.

", + "RestoreDBInstanceFromS3Message$AutoMinorVersionUpgrade": "

Specifies whether to automatically apply minor engine upgrades to the DB instance during the maintenance window. By default, minor engine upgrades are not applied automatically.

", + "RestoreDBInstanceFromS3Message$PubliclyAccessible": "

Specifies whether the DB instance is publicly accessible.

When the DB instance is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB instance's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB instance's VPC. Access to the DB instance is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB instance doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", + "RestoreDBInstanceFromS3Message$StorageEncrypted": "

Specifies whether the new DB instance is encrypted or not.

", + "RestoreDBInstanceFromS3Message$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the DB instance to snapshots of the DB instance. By default, tags are not copied.

", + "RestoreDBInstanceFromS3Message$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromS3Message$EnablePerformanceInsights": "

Specifies whether to enable Performance Insights for the DB instance.

For more information, see Using Amazon Performance Insights in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromS3Message$UseDefaultProcessorFeatures": "

Specifies whether the DB instance class of the DB instance uses its default processor features.

", + "RestoreDBInstanceFromS3Message$DeletionProtection": "

Specifies whether to enable deletion protection for the DB instance. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", + "RestoreDBInstanceFromS3Message$ManageMasterUserPassword": "

Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

", + "RestoreDBInstanceFromS3Message$DedicatedLogVolume": "

Specifies whether to enable a dedicated log volume (DLV) for the DB instance.

", + "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

Secifies whether the DB instance is a Multi-AZ deployment.

This setting doesn't apply to RDS Custom.

Constraints:

  • You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

", + "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": "

Specifies whether the DB instance is publicly accessible.

When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster's VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn't permitted if the security group assigned to the DB cluster doesn't permit it.

When the DB instance isn't publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

For more information, see CreateDBInstance.

", + "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

Specifies whether minor version upgrades are applied automatically to the DB instance during the maintenance window.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceToPointInTimeMessage$CopyTagsToSnapshot": "

Specifies whether to copy all tags from the restored DB instance to snapshots of the DB instance. By default, tags are not copied.

", + "RestoreDBInstanceToPointInTimeMessage$EnableIAMDatabaseAuthentication": "

Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

This setting doesn't apply to RDS Custom.

For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

", + "RestoreDBInstanceToPointInTimeMessage$UseDefaultProcessorFeatures": "

Specifies whether the DB instance class of the DB instance uses its default processor features.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceToPointInTimeMessage$DeletionProtection": "

Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see Deleting a DB Instance.

", + "RestoreDBInstanceToPointInTimeMessage$EnableCustomerOwnedIp": "

Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

This setting doesn't apply to RDS Custom.

For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

", + "RestoreDBInstanceToPointInTimeMessage$DedicatedLogVolume": "

Specifies whether to enable a dedicated log volume (DLV) for the DB instance.

", + "ScalingConfiguration$AutoPause": "

Indicates whether to allow or disallow automatic pause for an Aurora DB cluster in serverless DB engine mode. A DB cluster can be paused only when it's idle (it has no connections).

If a DB cluster is paused for more than seven days, the DB cluster might be backed up with a snapshot. In this case, the DB cluster is restored when there is a request to connect to it.

", + "ScalingConfigurationInfo$AutoPause": "

Indicates whether automatic pause is allowed for the Aurora DB cluster in serverless DB engine mode.

When the value is set to false for an Aurora Serverless v1 DB cluster, the DB cluster automatically resumes.

", "StartActivityStreamRequest$ApplyImmediately": "

Specifies whether or not the database activity stream is to start as soon as possible, regardless of the maintenance window for the database.

", "StartActivityStreamRequest$EngineNativeAuditFieldsIncluded": "

Specifies whether the database activity stream includes engine-native audit fields. This option applies to an Oracle or Microsoft SQL Server DB instance. By default, no engine-native audit fields are included.

", "StartActivityStreamResponse$EngineNativeAuditFieldsIncluded": "

Indicates whether engine-native audit fields are included in the database activity stream.

", "StopActivityStreamRequest$ApplyImmediately": "

Specifies whether or not the database activity stream is to stop as soon as possible, regardless of the maintenance window for the database.

", - "UpgradeTarget$SupportsParallelQuery": "

A value that indicates whether you can use Aurora parallel query with the target engine version.

", - "UpgradeTarget$SupportsGlobalDatabases": "

A value that indicates whether you can use Aurora global databases with the target engine version.

", - "UpgradeTarget$SupportsBabelfish": "

A value that indicates whether you can use Babelfish for Aurora PostgreSQL with the target engine version.

", - "UpgradeTarget$SupportsLocalWriteForwarding": "

A value that indicates whether the target engine version supports forwarding write operations from reader DB instances to the writer DB instance in the DB cluster. By default, write operations aren't allowed on reader DB instances.

Valid for: Aurora DB clusters only

" + "UpgradeTarget$SupportsParallelQuery": "

Indicates whether you can use Aurora parallel query with the target engine version.

", + "UpgradeTarget$SupportsGlobalDatabases": "

Indicates whether you can use Aurora global databases with the target engine version.

", + "UpgradeTarget$SupportsBabelfish": "

Indicates whether you can use Babelfish for Aurora PostgreSQL with the target engine version.

", + "UpgradeTarget$SupportsLocalWriteForwarding": "

Indicates whether the target engine version supports forwarding write operations from reader DB instances to the writer DB instance in the DB cluster. By default, write operations aren't allowed on reader DB instances.

Valid for: Aurora DB clusters only

", + "UpgradeTarget$SupportsIntegrations": "

Indicates whether the DB engine version supports zero-ETL integrations with Amazon Redshift.

" } }, "BucketName": { @@ -966,6 +1007,11 @@ "refs": { } }, + "CreateIntegrationMessage": { + "base": null, + "refs": { + } + }, "CreateOptionGroupMessage": { "base": "

", "refs": { @@ -976,6 +1022,16 @@ "refs": { } }, + "CreateTenantDatabaseMessage": { + "base": null, + "refs": { + } + }, + "CreateTenantDatabaseResult": { + "base": null, + "refs": { + } + }, "CustomAvailabilityZoneNotFoundFault": { "base": "

CustomAvailabilityZoneId doesn't refer to an existing custom Availability Zone identifier.

", "refs": { @@ -1302,6 +1358,18 @@ "refs": { } }, + "DBClusterStatusInfo": { + "base": "

Reserved for future use.

", + "refs": { + "DBClusterStatusInfoList$member": null + } + }, + "DBClusterStatusInfoList": { + "base": null, + "refs": { + "DBCluster$StatusInfos": "

Reserved for future use.

" + } + }, "DBEngineVersion": { "base": "

This data type is used as a response element in the action DescribeDBEngineVersions.

", "refs": { @@ -1402,7 +1470,7 @@ } }, "DBInstanceRole": { - "base": "

Describes an Amazon Web Services Identity and Access Management (IAM) role that is associated with a DB instance.

", + "base": "

Information about an Amazon Web Services Identity and Access Management (IAM) role that is associated with a DB instance.

", "refs": { "DBInstanceRoles$member": null } @@ -1470,7 +1538,7 @@ } }, "DBParameterGroupNameMessage": { - "base": "

Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

", + "base": "

Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup operation.

", "refs": { } }, @@ -1564,7 +1632,7 @@ "DBProxyEndpointTargetRole": { "base": null, "refs": { - "CreateDBProxyEndpointRequest$TargetRole": "

A value that indicates whether the DB proxy endpoint can be used for read/write or read-only operations. The default is READ_WRITE. The only role that proxies for RDS for Microsoft SQL Server support is READ_WRITE.

", + "CreateDBProxyEndpointRequest$TargetRole": "

The role of the DB proxy endpoint. The role determines whether the endpoint can be used for read/write or only read operations. The default is READ_WRITE. The only role that proxies for RDS for Microsoft SQL Server support is READ_WRITE.

", "DBProxyEndpoint$TargetRole": "

A value that indicates whether the DB proxy endpoint can be used for read/write or read-only operations.

" } }, @@ -1737,6 +1805,28 @@ "refs": { } }, + "DBSnapshotTenantDatabase": { + "base": "

Contains the details of a tenant database in a snapshot of a DB instance.

", + "refs": { + "DBSnapshotTenantDatabasesList$member": null + } + }, + "DBSnapshotTenantDatabaseNotFoundFault": { + "base": "

The specified snapshot tenant database wasn't found.

", + "refs": { + } + }, + "DBSnapshotTenantDatabasesList": { + "base": null, + "refs": { + "DBSnapshotTenantDatabasesMessage$DBSnapshotTenantDatabases": "

A list of DB snapshot tenant databases.

" + } + }, + "DBSnapshotTenantDatabasesMessage": { + "base": null, + "refs": { + } + }, "DBSubnetGroup": { "base": "

Contains the details of an Amazon RDS DB subnet group.

This data type is used as a response element in the DescribeDBSubnetGroups action.

", "refs": { @@ -1942,11 +2032,26 @@ "refs": { } }, + "DeleteIntegrationMessage": { + "base": null, + "refs": { + } + }, "DeleteOptionGroupMessage": { "base": "

", "refs": { } }, + "DeleteTenantDatabaseMessage": { + "base": null, + "refs": { + } + }, + "DeleteTenantDatabaseResult": { + "base": null, + "refs": { + } + }, "DeregisterDBProxyTargetsRequest": { "base": null, "refs": { @@ -2124,6 +2229,11 @@ "refs": { } }, + "DescribeDBSnapshotTenantDatabasesMessage": { + "base": null, + "refs": { + } + }, "DescribeDBSnapshotsMessage": { "base": "

", "refs": { @@ -2179,6 +2289,16 @@ "refs": { } }, + "DescribeIntegrationsMessage": { + "base": null, + "refs": { + } + }, + "DescribeIntegrationsResponse": { + "base": null, + "refs": { + } + }, "DescribeOptionGroupOptionsMessage": { "base": "

", "refs": { @@ -2214,6 +2334,11 @@ "refs": { } }, + "DescribeTenantDatabasesMessage": { + "base": null, + "refs": { + } + }, "DescribeValidDBInstanceModificationsMessage": { "base": "

", "refs": { @@ -2314,6 +2439,13 @@ "refs": { } }, + "EncryptionContextMap": { + "base": null, + "refs": { + "CreateIntegrationMessage$AdditionalEncryptionContext": "

An optional set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see Encryption context in the Amazon Web Services Key Management Service Developer Guide.

You can only include this parameter if you specify the KMSKeyId parameter.

", + "Integration$AdditionalEncryptionContext": "

The encryption context for the integration. For more information, see Encryption context in the Amazon Web Services Key Management Service Developer Guide.

" + } + }, "Endpoint": { "base": "

This data type represents the information you need to connect to an Amazon RDS DB instance. This data type is used as a response element in the following actions:

  • CreateDBInstance

  • DescribeDBInstances

  • DeleteDBInstance

For the data structure that represents Amazon Aurora DB cluster endpoints, see DBClusterEndpoint.

", "refs": { @@ -2423,7 +2555,7 @@ } }, "ExportTask": { - "base": "

Contains the details of a snapshot or cluster export to Amazon S3.

This data type is used as a response element in the DescribeExportTasks action.

", + "base": "

Contains the details of a snapshot or cluster export to Amazon S3.

This data type is used as a response element in the DescribeExportTasks operation.

", "refs": { "ExportTasksList$member": null } @@ -2478,7 +2610,7 @@ "FailoverStatus": { "base": null, "refs": { - "FailoverState$Status": "

The current status of the global cluster. Possible values are as follows:

  • pending – The service received a request to switch over or fail over the global cluster. The global cluster's primary DB cluster and the specified secondary DB cluster are being verified before the operation starts.

  • failing-over – This status covers the range of Aurora internal operations that take place during the switchover or failover process, such as demoting the primary Aurora DB cluster, promoting the secondary Aurora DB cluster, and synchronizing replicas.

  • cancelling – The request to switch over or fail over the global cluster was cancelled and the primary Aurora DB cluster and the selected secondary Aurora DB cluster are returning to their previous states.

" + "FailoverState$Status": "

The current status of the global cluster. Possible values are as follows:

  • pending – The service received a request to switch over or fail over the global cluster. The global cluster's primary DB cluster and the specified secondary DB cluster are being verified before the operation starts.

  • failing-over – Aurora is promoting the chosen secondary Aurora DB cluster to become the new primary DB cluster to fail over the global cluster.

  • cancelling – The request to switch over or fail over the global cluster was cancelled and the primary Aurora DB cluster and the selected secondary Aurora DB cluster are returning to their previous states.

  • switching-over – This status covers the range of Aurora internal operations that take place during the switchover process, such as demoting the primary Aurora DB cluster, promoting the secondary Aurora DB cluster, and synchronizing replicas.

" } }, "FeatureNameList": { @@ -2516,6 +2648,7 @@ "DescribeDBProxyTargetGroupsRequest$Filters": "

This parameter is not currently supported.

", "DescribeDBProxyTargetsRequest$Filters": "

This parameter is not currently supported.

", "DescribeDBSecurityGroupsMessage$Filters": "

This parameter isn't currently supported.

", + "DescribeDBSnapshotTenantDatabasesMessage$Filters": "

A filter that specifies one or more tenant databases to describe.

Supported filters:

  • tenant-db-name - Tenant database names. The results list only includes information about the tenant databases that match these tenant DB names.

  • tenant-database-resource-id - Tenant database resource identifiers. The results list only includes information about the tenant databases contained within the DB snapshots.

  • dbi-resource-id - DB instance resource identifiers. The results list only includes information about snapshots containing tenant databases contained within the DB instances identified by these resource identifiers.

  • db-instance-id - Accepts DB instance identifiers and DB instance Amazon Resource Names (ARNs).

  • db-snapshot-id - Accepts DB snapshot identifiers.

  • snapshot-type - Accepts types of DB snapshots.

", "DescribeDBSnapshotsMessage$Filters": "

A filter that specifies one or more DB snapshots to describe.

Supported filters:

  • db-instance-id - Accepts DB instance identifiers and DB instance Amazon Resource Names (ARNs).

  • db-snapshot-id - Accepts DB snapshot identifiers.

  • dbi-resource-id - Accepts identifiers of source DB instances.

  • snapshot-type - Accepts types of DB snapshots.

  • engine - Accepts names of database engines.

", "DescribeDBSubnetGroupsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeEngineDefaultClusterParametersMessage$Filters": "

This parameter isn't currently supported.

", @@ -2525,6 +2658,7 @@ "DescribeEventsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeExportTasksMessage$Filters": "

Filters specify one or more snapshot or cluster exports to describe. The filters are specified as name-value pairs that define what to include in the output. Filter names and values are case-sensitive.

Supported filters include the following:

  • export-task-identifier - An identifier for the snapshot or cluster export task.

  • s3-bucket - The Amazon S3 bucket the data is exported to.

  • source-arn - The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.

  • status - The status of the export task. Must be lowercase. Valid statuses are the following:

    • canceled

    • canceling

    • complete

    • failed

    • in_progress

    • starting

", "DescribeGlobalClustersMessage$Filters": "

This parameter isn't currently supported.

", + "DescribeIntegrationsMessage$Filters": "

A filter that specifies one or more resources to return.

", "DescribeOptionGroupOptionsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeOptionGroupsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeOrderableDBInstanceOptionsMessage$Filters": "

This parameter isn't currently supported.

", @@ -2532,6 +2666,7 @@ "DescribeReservedDBInstancesMessage$Filters": "

This parameter isn't currently supported.

", "DescribeReservedDBInstancesOfferingsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeSourceRegionsMessage$Filters": "

This parameter isn't currently supported.

", + "DescribeTenantDatabasesMessage$Filters": "

A filter that specifies one or more database tenants to describe.

Supported filters:

  • tenant-db-name - Tenant database names. The results list only includes information about the tenant databases that match these tenant DB names.

  • tenant-database-resource-id - Tenant database resource identifiers.

  • dbi-resource-id - DB instance resource identifiers. The results list only includes information about the tenants contained within the DB instances identified by these resource identifiers.

", "ListTagsForResourceMessage$Filters": "

This parameter isn't currently supported.

" } }, @@ -2607,7 +2742,7 @@ "IAMAuthMode": { "base": null, "refs": { - "UserAuthConfig$IAMAuth": "

Whether to require or disallow Amazon Web Services Identity and Access Management (IAM) authentication for connections to the proxy. The ENABLED value is valid only for proxies with RDS for Microsoft SQL Server.

", + "UserAuthConfig$IAMAuth": "

A value that indicates whether to require or disallow Amazon Web Services Identity and Access Management (IAM) authentication for connections to the proxy. The ENABLED value is valid only for proxies with RDS for Microsoft SQL Server.

", "UserAuthConfigInfo$IAMAuth": "

Whether to require or disallow Amazon Web Services Identity and Access Management (IAM) authentication for connections to the proxy. The ENABLED value is valid only for proxies with RDS for Microsoft SQL Server.

" } }, @@ -2666,13 +2801,13 @@ "ConnectionPoolConfigurationInfo$ConnectionBorrowTimeout": "

The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.

", "DBClusterAutomatedBackup$AllocatedStorage": "

For all database engines except Amazon Aurora, AllocatedStorage specifies the allocated storage size in gibibytes (GiB). For Aurora, AllocatedStorage always returns 1, because Aurora DB cluster storage size isn't fixed, but instead automatically adjusts as needed.

", "DBClusterAutomatedBackup$Port": "

The port number that the automated backup used for connections.

Default: Inherits from the source DB cluster

Valid Values: 1150-65535

", - "DBClusterSnapshot$AllocatedStorage": "

Specifies the allocated storage size in gibibytes (GiB).

", - "DBClusterSnapshot$Port": "

Specifies the port that the DB cluster was listening on at the time of the snapshot.

", - "DBClusterSnapshot$PercentProgress": "

Specifies the percentage of the estimated data that has been transferred.

", + "DBClusterSnapshot$AllocatedStorage": "

The allocated storage size of the DB cluster snapshot in gibibytes (GiB).

", + "DBClusterSnapshot$Port": "

The port that the DB cluster was listening on at the time of the snapshot.

", + "DBClusterSnapshot$PercentProgress": "

The percentage of the estimated data that has been transferred.

", "DBInstance$AllocatedStorage": "

The amount of storage in gibibytes (GiB) allocated for the DB instance.

", "DBInstance$BackupRetentionPeriod": "

The number of days for which automatic DB snapshots are retained.

", "DBInstance$DbInstancePort": "

The port that the DB instance listens on. If the DB instance is part of a DB cluster, this can be a different port than the DB cluster port.

", - "DBInstanceAutomatedBackup$AllocatedStorage": "

Specifies the allocated storage size in gibibytes (GiB).

", + "DBInstanceAutomatedBackup$AllocatedStorage": "

The allocated storage size for the the automated backup in gibibytes (GiB).

", "DBInstanceAutomatedBackup$Port": "

The port number that the automated backup used for connections.

Default: Inherits from the source DB instance

Valid Values: 1150-65535

", "DBProxy$IdleClientTimeout": "

The number of seconds a connection to the proxy can have no activity before the proxy drops the client connection. The proxy keeps the underlying database connection open and puts it back into the connection pool for reuse by later connection requests.

Default: 1800 (30 minutes)

Constraints: 1 to 28,800

", "DBProxyTarget$Port": "

The port that the RDS Proxy uses to connect to the target RDS DB instance or Aurora DB cluster.

", @@ -2696,30 +2831,30 @@ "ClusterPendingModifiedValues$BackupRetentionPeriod": "

The number of days for which automatic DB snapshots are retained.

", "ClusterPendingModifiedValues$AllocatedStorage": "

The allocated storage size in gibibytes (GiB) for all database engines except Amazon Aurora. For Aurora, AllocatedStorage always returns 1, because Aurora DB cluster storage size isn't fixed, but instead automatically adjusts as needed.

", "ClusterPendingModifiedValues$Iops": "

The Provisioned IOPS (I/O operations per second) value. This setting is only for non-Aurora Multi-AZ DB clusters.

", - "ConnectionPoolConfiguration$MaxConnectionsPercent": "

The maximum size of the connection pool for each target in a target group. The value is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.

If you specify MaxIdleConnectionsPercent, then you must also include a value for this parameter.

Default: 10 for RDS for Microsoft SQL Server, and 100 for all other engines

Constraints: Must be between 1 and 100.

", - "ConnectionPoolConfiguration$MaxIdleConnectionsPercent": "

Controls how actively the proxy closes idle database connections in the connection pool. The value is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group. With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database.

If you specify this parameter, then you must also include a value for MaxConnectionsPercent.

Default: The default value is half of the value of MaxConnectionsPercent. For example, if MaxConnectionsPercent is 80, then the default value of MaxIdleConnectionsPercent is 40. If the value of MaxConnectionsPercent isn't specified, then for SQL Server, MaxIdleConnectionsPercent is 5, and for all other engines, the default is 50.

Constraints: Must be between 0 and the value of MaxConnectionsPercent.

", - "ConnectionPoolConfiguration$ConnectionBorrowTimeout": "

The number of seconds for a proxy to wait for a connection to become available in the connection pool. Only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions.

Default: 120

Constraints: between 1 and 3600, or 0 representing unlimited

", + "ConnectionPoolConfiguration$MaxConnectionsPercent": "

The maximum size of the connection pool for each target in a target group. The value is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.

If you specify MaxIdleConnectionsPercent, then you must also include a value for this parameter.

Default: 10 for RDS for Microsoft SQL Server, and 100 for all other engines

Constraints:

  • Must be between 1 and 100.

", + "ConnectionPoolConfiguration$MaxIdleConnectionsPercent": "

A value that controls how actively the proxy closes idle database connections in the connection pool. The value is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group. With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database.

If you specify this parameter, then you must also include a value for MaxConnectionsPercent.

Default: The default value is half of the value of MaxConnectionsPercent. For example, if MaxConnectionsPercent is 80, then the default value of MaxIdleConnectionsPercent is 40. If the value of MaxConnectionsPercent isn't specified, then for SQL Server, MaxIdleConnectionsPercent is 5, and for all other engines, the default is 50.

Constraints:

  • Must be between 0 and the value of MaxConnectionsPercent.

", + "ConnectionPoolConfiguration$ConnectionBorrowTimeout": "

The number of seconds for a proxy to wait for a connection to become available in the connection pool. This setting only applies when the proxy has opened its maximum number of connections and all connections are busy with client sessions. For an unlimited wait time, specify 0.

Default: 120

Constraints:

  • Must be between 0 and 3600.

", "CreateDBClusterMessage$BackupRetentionPeriod": "

The number of days for which automated backups are retained.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

Default: 1

Constraints:

  • Must be a value from 1 to 35.

", "CreateDBClusterMessage$Port": "

The port number on which the instances in the DB cluster accept connections.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

Valid Values: 1150-65535

Default:

  • RDS for MySQL and Aurora MySQL - 3306

  • RDS for PostgreSQL and Aurora PostgreSQL - 5432

", "CreateDBClusterMessage$AllocatedStorage": "

The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.

Valid for Cluster Type: Multi-AZ DB clusters only

This setting is required to create a Multi-AZ DB cluster.

", "CreateDBClusterMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

For information about valid IOPS values, see Provisioned IOPS storage in the Amazon RDS User Guide.

This setting is required to create a Multi-AZ DB cluster.

Valid for Cluster Type: Multi-AZ DB clusters only

Constraints:

  • Must be a multiple between .5 and 50 of the storage amount for the DB cluster.

", "CreateDBClusterMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, also set MonitoringInterval to a value other than 0.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", "CreateDBClusterMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values:

  • 7

  • month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), 341 (11 months * 31), 589 (19 months * 31)

  • 731

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS issues an error.

", - "CreateDBInstanceMessage$AllocatedStorage": "

The amount of storage in gibibytes (GiB) to allocate for the DB instance.

This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the amount of data in your database increases, though you are only charged for the space that you use in an Aurora cluster volume.

Amazon RDS Custom

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 for RDS Custom for SQL Server.

  • Provisioned IOPS storage (io1): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 for RDS Custom for SQL Server.

RDS for MariaDB

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 5 to 3072.

RDS for MySQL

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 5 to 3072.

RDS for Oracle

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 10 to 3072.

RDS for PostgreSQL

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 5 to 3072.

RDS for SQL Server

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3):

    • Enterprise and Standard editions: Must be an integer from 20 to 16384.

    • Web and Express editions: Must be an integer from 20 to 16384.

  • Provisioned IOPS storage (io1):

    • Enterprise and Standard editions: Must be an integer from 100 to 16384.

    • Web and Express editions: Must be an integer from 100 to 16384.

  • Magnetic storage (standard):

    • Enterprise and Standard editions: Must be an integer from 20 to 1024.

    • Web and Express editions: Must be an integer from 20 to 1024.

", + "CreateDBInstanceMessage$AllocatedStorage": "

The amount of storage in gibibytes (GiB) to allocate for the DB instance.

This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the amount of data in your database increases, though you are only charged for the space that you use in an Aurora cluster volume.

Amazon RDS Custom

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 for RDS Custom for SQL Server.

  • Provisioned IOPS storage (io1): Must be an integer from 40 to 65536 for RDS Custom for Oracle, 16384 for RDS Custom for SQL Server.

RDS for Db2

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 64000.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 64000.

RDS for MariaDB

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 5 to 3072.

RDS for MySQL

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 5 to 3072.

RDS for Oracle

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 10 to 3072.

RDS for PostgreSQL

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 to 65536.

  • Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.

  • Magnetic storage (standard): Must be an integer from 5 to 3072.

RDS for SQL Server

Constraints to the amount of storage for each storage type are the following:

  • General Purpose (SSD) storage (gp2, gp3):

    • Enterprise and Standard editions: Must be an integer from 20 to 16384.

    • Web and Express editions: Must be an integer from 20 to 16384.

  • Provisioned IOPS storage (io1):

    • Enterprise and Standard editions: Must be an integer from 100 to 16384.

    • Web and Express editions: Must be an integer from 100 to 16384.

  • Magnetic storage (standard):

    • Enterprise and Standard editions: Must be an integer from 20 to 1024.

    • Web and Express editions: Must be an integer from 20 to 1024.

", "CreateDBInstanceMessage$BackupRetentionPeriod": "

The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster.

Default: 1

Constraints:

  • Must be a value from 0 to 35.

  • Can't be set to 0 if the DB instance is a source to read replicas.

  • Can't be set to 0 for an RDS Custom for Oracle DB instance.

", - "CreateDBInstanceMessage$Port": "

The port number on which the database accepts connections.

This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster.

Valid Values: 1150-65535

Default:

  • RDS for MariaDB - 3306

  • RDS for Microsoft SQL Server - 1433

  • RDS for MySQL - 3306

  • RDS for Oracle - 1521

  • RDS for PostgreSQL - 5432

Constraints:

  • For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, 3343, 3389, 47001, or 49152-49156.

", - "CreateDBInstanceMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance. For information about valid IOPS values, see Amazon RDS DB instance storage in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.

Constraints:

  • For RDS for MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance.

  • For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.

", + "CreateDBInstanceMessage$Port": "

The port number on which the database accepts connections.

This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster.

Valid Values: 1150-65535

Default:

  • RDS for Db2 - 50000

  • RDS for MariaDB - 3306

  • RDS for Microsoft SQL Server - 1433

  • RDS for MySQL - 3306

  • RDS for Oracle - 1521

  • RDS for PostgreSQL - 5432

Constraints:

  • For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, 3343, 3389, 47001, or 49152-49156.

", + "CreateDBInstanceMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance. For information about valid IOPS values, see Amazon RDS DB instance storage in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.

Constraints:

  • For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance.

  • For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.

", "CreateDBInstanceMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collection of Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, then you must set MonitoringInterval to a value other than 0.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", "CreateDBInstanceMessage$PromotionTier": "

The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

This setting doesn't apply to RDS Custom DB instances.

Default: 1

Valid Values: 0 - 15

", "CreateDBInstanceMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

This setting doesn't apply to RDS Custom DB instances.

Valid Values:

  • 7

  • month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), 341 (11 months * 31), 589 (19 months * 31)

  • 731

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error.

", "CreateDBInstanceMessage$MaxAllocatedStorage": "

The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (Storage is managed by the DB cluster.)

  • RDS Custom

", "CreateDBInstanceMessage$StorageThroughput": "

The storage throughput value for the DB instance.

This setting applies only to the gp3 storage type.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

", - "CreateDBInstanceReadReplicaMessage$Port": "

The port number that the DB instance uses for connections.

Default: Inherits from the source DB instance

Valid Values: 1150-65535

", - "CreateDBInstanceReadReplicaMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

", - "CreateDBInstanceReadReplicaMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the read replica. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0.

If MonitoringRoleArn is specified, then you must also set MonitoringInterval to a value other than 0.

This setting doesn't apply to RDS Custom.

Valid Values: 0, 1, 5, 10, 15, 30, 60

", - "CreateDBInstanceReadReplicaMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data. The default is 7 days. The following values are valid:

  • 7

  • month * 31, where month is a number of months from 1-23

  • 731

For example, the following values are valid:

  • 93 (3 months * 31)

  • 341 (11 months * 31)

  • 589 (19 months * 31)

  • 731

If you specify a retention period such as 94, which isn't a valid value, RDS issues an error.

This setting doesn't apply to RDS Custom.

", + "CreateDBInstanceReadReplicaMessage$Port": "

The port number that the DB instance uses for connections.

Valid Values: 1150-65535

Default: Inherits the value from the source DB instance.

", + "CreateDBInstanceReadReplicaMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance.

", + "CreateDBInstanceReadReplicaMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the read replica. To disable collection of Enhanced Monitoring metrics, specify 0. The default is 0.

If MonitoringRoleArn is specified, then you must set MonitoringInterval to a value other than 0.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 0, 1, 5, 10, 15, 30, 60

Default: 0

", + "CreateDBInstanceReadReplicaMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

This setting doesn't apply to RDS Custom DB instances.

Valid Values:

  • 7

  • month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), 341 (11 months * 31), 589 (19 months * 31)

  • 731

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error.

", "CreateDBInstanceReadReplicaMessage$MaxAllocatedStorage": "

The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

", - "CreateDBInstanceReadReplicaMessage$StorageThroughput": "

Specifies the storage throughput value for the read replica.

This setting doesn't apply to RDS Custom or Amazon Aurora.

", + "CreateDBInstanceReadReplicaMessage$StorageThroughput": "

Specifies the storage throughput value for the read replica.

This setting doesn't apply to RDS Custom or Amazon Aurora DB instances.

", "CreateDBInstanceReadReplicaMessage$AllocatedStorage": "

The amount of storage (in gibibytes) to allocate initially for the read replica. Follow the allocation rules specified in CreateDBInstance.

Be sure to allocate enough storage for your read replica so that the create operation can succeed. You can also allocate additional storage for future growth.

", "CreateDBProxyRequest$IdleClientTimeout": "

The number of seconds that a connection to the proxy can be inactive before the proxy disconnects it. You can set this value higher or lower than the connection timeout limit for the associated database.

", "DBCluster$AllocatedStorage": "

For all database engines except Amazon Aurora, AllocatedStorage specifies the allocated storage size in gibibytes (GiB). For Aurora, AllocatedStorage always returns 1, because Aurora DB cluster storage size isn't fixed, but instead automatically adjusts as needed.

", @@ -2743,7 +2878,7 @@ "DBInstance$StorageThroughput": "

The storage throughput for the DB instance.

This setting applies only to the gp3 storage type.

", "DBInstanceAutomatedBackup$Iops": "

The IOPS (I/O operations per second) value for the automated backup.

", "DBInstanceAutomatedBackup$BackupRetentionPeriod": "

The retention period for the automated backups.

", - "DBInstanceAutomatedBackup$StorageThroughput": "

Specifies the storage throughput for the automated backup.

", + "DBInstanceAutomatedBackup$StorageThroughput": "

The storage throughput for the automated backup.

", "DBSnapshot$Iops": "

Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

", "DBSnapshot$StorageThroughput": "

Specifies the storage throughput for the DB snapshot.

", "DescribeCertificatesMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", @@ -2761,6 +2896,7 @@ "DescribeDBParameterGroupsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeDBParametersMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeDBSecurityGroupsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", + "DescribeDBSnapshotTenantDatabasesMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

", "DescribeDBSnapshotsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeDBSubnetGroupsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeEngineDefaultClusterParametersMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", @@ -2769,6 +2905,7 @@ "DescribeEventsMessage$Duration": "

The number of minutes to retrieve events for.

Default: 60

", "DescribeEventsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeGlobalClustersMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", + "DescribeIntegrationsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeOptionGroupOptionsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeOptionGroupsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeOrderableDBInstanceOptionsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 10000.

", @@ -2776,6 +2913,7 @@ "DescribeReservedDBInstancesMessage$MaxRecords": "

The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeReservedDBInstancesOfferingsMessage$MaxRecords": "

The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", "DescribeSourceRegionsMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

", + "DescribeTenantDatabasesMessage$MaxRecords": "

The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

", "ModifyCurrentDBClusterCapacityMessage$Capacity": "

The DB cluster capacity.

When you change the capacity of a paused Aurora Serverless v1 DB cluster, it automatically resumes.

Constraints:

  • For Aurora MySQL, valid capacity values are 1, 2, 4, 8, 16, 32, 64, 128, and 256.

  • For Aurora PostgreSQL, valid capacity values are 2, 4, 8, 16, 32, 64, 192, and 384.

", "ModifyCurrentDBClusterCapacityMessage$SecondsBeforeTimeout": "

The amount of time, in seconds, that Aurora Serverless v1 tries to find a scaling point to perform seamless scaling before enforcing the timeout action. The default is 300.

Specify a value between 10 and 600 seconds.

", "ModifyDBClusterMessage$BackupRetentionPeriod": "

The number of days for which automated backups are retained. Specify a minimum value of 1.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

Default: 1

Constraints:

  • Must be a value from 1 to 35.

", @@ -2784,11 +2922,11 @@ "ModifyDBClusterMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

For information about valid IOPS values, see Amazon RDS Provisioned IOPS storage in the Amazon RDS User Guide.

Valid for Cluster Type: Multi-AZ DB clusters only

Constraints:

  • Must be a multiple between .5 and 50 of the storage amount for the DB cluster.

", "ModifyDBClusterMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, also set MonitoringInterval to a value other than 0.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", "ModifyDBClusterMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values:

  • 7

  • month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), 341 (11 months * 31), 589 (19 months * 31)

  • 731

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS issues an error.

", - "ModifyDBInstanceMessage$AllocatedStorage": "

The new amount of storage in gibibytes (GiB) to allocate for the DB instance.

For RDS for MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, the value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

For the valid values for allocated storage for each engine, see CreateDBInstance.

", + "ModifyDBInstanceMessage$AllocatedStorage": "

The new amount of storage in gibibytes (GiB) to allocate for the DB instance.

For RDS for Db2, MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, the value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

For the valid values for allocated storage for each engine, see CreateDBInstance.

", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

Enabling and disabling backups can result in a brief I/O suspension that lasts from a few seconds to a few minutes, depending on the size and class of your DB instance.

These changes are applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster. For more information, see ModifyDBCluster.

Default: Uses existing setting

Constraints:

  • Must be a value from 0 to 35.

  • Can't be set to 0 if the DB instance is a source to read replicas.

  • Can't be set to 0 for an RDS Custom for Oracle DB instance.

", "ModifyDBInstanceMessage$Iops": "

The new Provisioned IOPS (I/O operations per second) value for the RDS instance.

Changing this setting doesn't result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request. If you are migrating from Provisioned IOPS to standard storage, set this value to 0. The DB instance will require a reboot for the change in storage type to take effect.

If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance are suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

Constraints:

  • For RDS for MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL - The value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

Default: Uses existing setting

", "ModifyDBInstanceMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collection of Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, set MonitoringInterval to a value other than 0.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", - "ModifyDBInstanceMessage$DBPortNumber": "

The port number on which the database accepts connections.

The value of the DBPortNumber parameter must not match any of the port values specified for options in the option group for the DB instance.

If you change the DBPortNumber value, your database restarts regardless of the value of the ApplyImmediately parameter.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 1150-65535

Default:

  • Amazon Aurora - 3306

  • RDS for MariaDB - 3306

  • RDS for Microsoft SQL Server - 1433

  • RDS for MySQL - 3306

  • RDS for Oracle - 1521

  • RDS for PostgreSQL - 5432

Constraints:

  • For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, 3343, 3389, 47001, or 49152-49156.

", + "ModifyDBInstanceMessage$DBPortNumber": "

The port number on which the database accepts connections.

The value of the DBPortNumber parameter must not match any of the port values specified for options in the option group for the DB instance.

If you change the DBPortNumber value, your database restarts regardless of the value of the ApplyImmediately parameter.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 1150-65535

Default:

  • Amazon Aurora - 3306

  • RDS for Db2 - 50000

  • RDS for MariaDB - 3306

  • RDS for Microsoft SQL Server - 1433

  • RDS for MySQL - 3306

  • RDS for Oracle - 1521

  • RDS for PostgreSQL - 5432

Constraints:

  • For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, 3343, 3389, 47001, or 49152-49156.

", "ModifyDBInstanceMessage$PromotionTier": "

The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

This setting doesn't apply to RDS Custom DB instances.

Default: 1

Valid Values: 0 - 15

", "ModifyDBInstanceMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

This setting doesn't apply to RDS Custom DB instances.

Valid Values:

  • 7

  • month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), 341 (11 months * 31), 589 (19 months * 31)

  • 731

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error.

", "ModifyDBInstanceMessage$MaxAllocatedStorage": "

The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", @@ -2830,10 +2968,10 @@ "RestoreDBInstanceFromS3Message$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data. The default is 7 days. The following values are valid:

  • 7

  • month * 31, where month is a number of months from 1-23

  • 731

For example, the following values are valid:

  • 93 (3 months * 31)

  • 341 (11 months * 31)

  • 589 (19 months * 31)

  • 731

If you specify a retention period such as 94, which isn't a valid value, RDS issues an error.

", "RestoreDBInstanceFromS3Message$MaxAllocatedStorage": "

The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

", "RestoreDBInstanceFromS3Message$StorageThroughput": "

Specifies the storage throughput value for the DB instance.

This setting doesn't apply to RDS Custom or Amazon Aurora.

", - "RestoreDBInstanceToPointInTimeMessage$Port": "

The port number on which the database accepts connections.

Constraints: Value must be 1150-65535

Default: The same port as the original DB instance.

", - "RestoreDBInstanceToPointInTimeMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

Constraints: Must be an integer greater than 1000.

SQL Server

Setting the IOPS value for the SQL Server database engine isn't supported.

", + "RestoreDBInstanceToPointInTimeMessage$Port": "

The port number on which the database accepts connections.

Default: The same port as the original DB instance.

Constraints:

  • The value must be 1150-65535.

", + "RestoreDBInstanceToPointInTimeMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance.

This setting doesn't apply to SQL Server.

Constraints:

  • Must be an integer greater than 1000.

", "RestoreDBInstanceToPointInTimeMessage$MaxAllocatedStorage": "

The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$StorageThroughput": "

Specifies the storage throughput value for the DB instance.

This setting doesn't apply to RDS Custom or Amazon Aurora.

", + "RestoreDBInstanceToPointInTimeMessage$StorageThroughput": "

The storage throughput value for the DB instance.

This setting doesn't apply to RDS Custom or Amazon Aurora.

", "RestoreDBInstanceToPointInTimeMessage$AllocatedStorage": "

The amount of storage (in gibibytes) to allocate initially for the DB instance. Follow the allocation rules specified in CreateDBInstance.

Be sure to allocate enough storage for your new DB instance so that the restore operation can succeed. You can also allocate additional storage for future growth.

", "ScalingConfiguration$MinCapacity": "

The minimum capacity for an Aurora DB cluster in serverless DB engine mode.

For Aurora MySQL, valid capacity values are 1, 2, 4, 8, 16, 32, 64, 128, and 256.

For Aurora PostgreSQL, valid capacity values are 2, 4, 8, 16, 32, 64, 192, and 384.

The minimum capacity must be less than or equal to the maximum capacity.

", "ScalingConfiguration$MaxCapacity": "

The maximum capacity for an Aurora DB cluster in serverless DB engine mode.

For Aurora MySQL, valid capacity values are 1, 2, 4, 8, 16, 32, 64, 128, and 256.

For Aurora PostgreSQL, valid capacity values are 2, 4, 8, 16, 32, 64, 192, and 384.

The maximum capacity must be greater than or equal to the minimum capacity.

", @@ -2846,6 +2984,76 @@ "StartDBInstanceAutomatedBackupsReplicationMessage$BackupRetentionPeriod": "

The retention period for the replicated automated backups.

" } }, + "Integration": { + "base": "

A zero-ETL integration with Amazon Redshift.

", + "refs": { + "IntegrationList$member": null + } + }, + "IntegrationAlreadyExistsFault": { + "base": "

The integration you are trying to create already exists.

", + "refs": { + } + }, + "IntegrationArn": { + "base": null, + "refs": { + "Integration$IntegrationArn": "

The ARN of the integration.

" + } + }, + "IntegrationConflictOperationFault": { + "base": "

A conflicting conditional operation is currently in progress against this resource. Typically occurs when there are multiple requests being made to the same resource at the same time, and these requests conflict with each other.

", + "refs": { + } + }, + "IntegrationError": { + "base": "

An error associated with a zero-ETL integration with Amazon Redshift.

", + "refs": { + "IntegrationErrorList$member": null + } + }, + "IntegrationErrorList": { + "base": null, + "refs": { + "Integration$Errors": "

Any errors associated with the integration.

" + } + }, + "IntegrationIdentifier": { + "base": null, + "refs": { + "DeleteIntegrationMessage$IntegrationIdentifier": "

The unique identifier of the integration.

", + "DescribeIntegrationsMessage$IntegrationIdentifier": "

The unique identifier of the integration.

" + } + }, + "IntegrationList": { + "base": null, + "refs": { + "DescribeIntegrationsResponse$Integrations": "

A list of integrations.

" + } + }, + "IntegrationName": { + "base": null, + "refs": { + "CreateIntegrationMessage$IntegrationName": "

The name of the integration.

", + "Integration$IntegrationName": "

The name of the integration.

" + } + }, + "IntegrationNotFoundFault": { + "base": "

The specified integration could not be found.

", + "refs": { + } + }, + "IntegrationQuotaExceededFault": { + "base": "

You can't crate any more zero-ETL integrations because the quota has been reached.

", + "refs": { + } + }, + "IntegrationStatus": { + "base": null, + "refs": { + "Integration$Status": "

The current status of the integration.

" + } + }, "InvalidBlueGreenDeploymentStateFault": { "base": "

The blue/green deployment can't be switched over or deleted because there is an invalid configuration in the green environment.

", "refs": { @@ -2956,6 +3164,11 @@ "refs": { } }, + "InvalidIntegrationStateFault": { + "base": "

The integration is in an invalid state and can't perform the requested operation.

", + "refs": { + } + }, "InvalidOptionGroupStateFault": { "base": "

The option group isn't in the available state.

", "refs": { @@ -3006,7 +3219,7 @@ "LocalWriteForwardingStatus": { "base": null, "refs": { - "DBCluster$LocalWriteForwardingStatus": "

Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, or is in the process of enabling it.

" + "DBCluster$LocalWriteForwardingStatus": "

Indicates whether an Aurora DB cluster has in-cluster write forwarding enabled, not enabled, requested, or is in the process of enabling it.

" } }, "LogTypeList": { @@ -3015,8 +3228,8 @@ "CloudwatchLogsExportConfiguration$EnableLogTypes": "

The list of log types to enable.

", "CloudwatchLogsExportConfiguration$DisableLogTypes": "

The list of log types to disable.

", "CreateDBClusterMessage$EnableCloudwatchLogsExports": "

The list of log types that need to be enabled for exporting to CloudWatch Logs.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

The following values are valid for each DB engine:

  • Aurora MySQL - audit | error | general | slowquery

  • Aurora PostgreSQL - postgresql

  • RDS for MySQL - error | general | slowquery

  • RDS for PostgreSQL - postgresql | upgrade

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

", - "CreateDBInstanceMessage$EnableCloudwatchLogsExports": "

The list of log types that need to be enabled for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.)

  • RDS Custom

The following values are valid for each DB engine:

  • RDS for MariaDB - audit | error | general | slowquery

  • RDS for Microsoft SQL Server - agent | error

  • RDS for MySQL - audit | error | general | slowquery

  • RDS for Oracle - alert | audit | listener | trace | oemagent

  • RDS for PostgreSQL - postgresql | upgrade

", - "CreateDBInstanceReadReplicaMessage$EnableCloudwatchLogsExports": "

The list of logs that the new DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", + "CreateDBInstanceMessage$EnableCloudwatchLogsExports": "

The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.)

  • RDS Custom

The following values are valid for each DB engine:

  • RDS for Db2 - diag.log | notify.log

  • RDS for MariaDB - audit | error | general | slowquery

  • RDS for Microsoft SQL Server - agent | error

  • RDS for MySQL - audit | error | general | slowquery

  • RDS for Oracle - alert | audit | listener | trace | oemagent

  • RDS for PostgreSQL - postgresql | upgrade

", + "CreateDBInstanceReadReplicaMessage$EnableCloudwatchLogsExports": "

The list of logs that the new DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", "DBCluster$EnabledCloudwatchLogsExports": "

A list of log types that this DB cluster is configured to export to CloudWatch Logs.

Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS Database Log Files in the Amazon Aurora User Guide.

", "DBEngineVersion$ExportableLogTypes": "

The types of logs that the database engine has available for export to CloudWatch Logs.

", "DBInstance$EnabledCloudwatchLogsExports": "

A list of log types that this DB instance is configured to export to CloudWatch Logs.

Log types vary by DB engine. For information about the log types for each DB engine, see Monitoring Amazon RDS log files in the Amazon RDS User Guide.

", @@ -3025,7 +3238,7 @@ "RestoreDBClusterFromS3Message$EnableCloudwatchLogsExports": "

The list of logs that the restored DB cluster is to export to CloudWatch Logs. The values in the list depend on the DB engine being used.

Aurora MySQL

Possible values are audit, error, general, and slowquery.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

", "RestoreDBClusterFromSnapshotMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. The values in the list depend on the DB engine being used.

RDS for MySQL

Possible values are error, general, and slowquery.

RDS for PostgreSQL

Possible values are postgresql and upgrade.

Aurora MySQL

Possible values are audit, error, general, and slowquery.

Aurora PostgreSQL

Possible value is postgresql.

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB cluster is to export to CloudWatch Logs. The values in the list depend on the DB engine being used.

RDS for MySQL

Possible values are error, general, and slowquery.

RDS for PostgreSQL

Possible values are postgresql and upgrade.

Aurora MySQL

Possible values are audit, error, general, and slowquery.

Aurora PostgreSQL

Possible value is postgresql.

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBInstanceFromDBSnapshotMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceFromDBSnapshotMessage$EnableCloudwatchLogsExports": "

The list of logs for the restored DB instance to export to CloudWatch Logs. The values in the list depend on the DB engine. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromS3Message$EnableCloudwatchLogsExports": "

The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

", "RestoreDBInstanceToPointInTimeMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

" } @@ -3053,6 +3266,13 @@ "RestoreDBClusterToPointInTimeMessage$BacktrackWindow": "

The target backtrack window, in seconds. To disable backtracking, set this value to 0.

Default: 0

Constraints:

  • If specified, this value must be set to a number from 0 to 259,200 (72 hours).

Valid for: Aurora MySQL DB clusters only

" } }, + "Marker": { + "base": null, + "refs": { + "DescribeIntegrationsMessage$Marker": "

An optional pagination token provided by a previous DescribeIntegrations request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", + "DescribeIntegrationsResponse$Marker": "

A pagination token that can be used in a later DescribeIntegrations request.

" + } + }, "MasterUserSecret": { "base": "

Contains the secret managed by RDS in Amazon Web Services Secrets Manager for the master user password.

For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide and Password management with Amazon Web Services Secrets Manager in the Amazon Aurora User Guide.

", "refs": { @@ -3248,13 +3468,23 @@ "refs": { } }, + "ModifyTenantDatabaseMessage": { + "base": null, + "refs": { + } + }, + "ModifyTenantDatabaseResult": { + "base": null, + "refs": { + } + }, "NetworkTypeNotSupported": { "base": "

The network type is invalid for the DB instance. Valid nework type values are IPV4 and DUAL.

", "refs": { } }, "Option": { - "base": "

Option details.

", + "base": "

The details of an option.

", "refs": { "OptionsList$member": null } @@ -3494,7 +3724,7 @@ "base": null, "refs": { "CreateDBInstanceMessage$ProcessorFeatures": "

The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

", - "CreateDBInstanceReadReplicaMessage$ProcessorFeatures": "

The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

This setting doesn't apply to RDS Custom.

", + "CreateDBInstanceReadReplicaMessage$ProcessorFeatures": "

The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

This setting doesn't apply to RDS Custom DB instances.

", "DBInstance$ProcessorFeatures": "

The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

", "DBSnapshot$ProcessorFeatures": "

The number of CPU cores and the number of threads per core for the DB instance class of the DB instance when the DB snapshot was created.

", "ModifyDBInstanceMessage$ProcessorFeatures": "

The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

This setting doesn't apply to RDS Custom DB instances.

", @@ -3553,6 +3783,16 @@ "ValidStorageOptions$ProvisionedStorageThroughput": "

The valid range of provisioned storage throughput. For example, 500-4,000 mebibytes per second (MiBps).

" } }, + "RdsCustomClusterConfiguration": { + "base": "

Reserved for future use.

", + "refs": { + "ClusterPendingModifiedValues$RdsCustomClusterConfiguration": "

Reserved for future use.

", + "CreateDBClusterMessage$RdsCustomClusterConfiguration": "

Reserved for future use.

", + "DBCluster$RdsCustomClusterConfiguration": "

Reserved for future use.

", + "RestoreDBClusterFromSnapshotMessage$RdsCustomClusterConfiguration": "

Reserved for future use.

", + "RestoreDBClusterToPointInTimeMessage$RdsCustomClusterConfiguration": "

Reserved for future use.

" + } + }, "ReadReplicaDBClusterIdentifierList": { "base": null, "refs": { @@ -3660,7 +3900,8 @@ "refs": { "CreateDBInstanceReadReplicaMessage$ReplicaMode": "

The open mode of the replica database: mounted or read-only.

This parameter is only supported for Oracle DB instances.

Mounted DB replicas are included in Oracle Database Enterprise Edition. The main use case for mounted replicas is cross-Region disaster recovery. The primary database doesn't use Active Data Guard to transmit information to the mounted replica. Because it doesn't accept user connections, a mounted replica can't serve a read-only workload.

You can create a combination of mounted and read-only DB replicas for the same primary DB instance. For more information, see Working with Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.

For RDS Custom, you must specify this parameter and set it to mounted. The value won't be set by default. After replica creation, you can manage the open mode manually.

", "DBInstance$ReplicaMode": "

The open mode of an Oracle read replica. The default is open-read-only. For more information, see Working with Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.

This attribute is only supported in RDS for Oracle.

", - "ModifyDBInstanceMessage$ReplicaMode": "

A value that sets the open mode of a replica database to either mounted or read-only.

Currently, this parameter is only supported for Oracle DB instances.

Mounted DB replicas are included in Oracle Enterprise Edition. The main use case for mounted replicas is cross-Region disaster recovery. The primary database doesn't use Active Data Guard to transmit information to the mounted replica. Because it doesn't accept user connections, a mounted replica can't serve a read-only workload. For more information, see Working with Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

" + "ModifyDBInstanceMessage$ReplicaMode": "

A value that sets the open mode of a replica database to either mounted or read-only.

Currently, this parameter is only supported for Oracle DB instances.

Mounted DB replicas are included in Oracle Enterprise Edition. The main use case for mounted replicas is cross-Region disaster recovery. The primary database doesn't use Active Data Guard to transmit information to the mounted replica. Because it doesn't accept user connections, a mounted replica can't serve a read-only workload. For more information, see Working with Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", + "RdsCustomClusterConfiguration$ReplicaMode": "

Reserved for future use.

" } }, "ReservedDBInstance": { @@ -3804,7 +4045,7 @@ "base": "

Earliest and latest time an instance can be restored to:

", "refs": { "DBClusterAutomatedBackup$RestoreWindow": null, - "DBInstanceAutomatedBackup$RestoreWindow": "

Earliest and latest time an instance can be restored to.

" + "DBInstanceAutomatedBackup$RestoreWindow": "

The earliest and latest time a DB instance can be restored to.

" } }, "RevokeDBSecurityGroupIngressMessage": { @@ -3847,6 +4088,14 @@ "DBCluster$ScalingConfigurationInfo": null } }, + "SensitiveString": { + "base": null, + "refs": { + "CreateTenantDatabaseMessage$MasterUserPassword": "

The password for the master user in your tenant database.

Constraints:

  • Must be 8 to 30 characters.

  • Can include any printable ASCII character except forward slash (/), double quote (\"), at symbol (@), ampersand (&), or single quote (').

", + "ModifyTenantDatabaseMessage$MasterUserPassword": "

The new password for the master user of the specified tenant database in your DB instance.

Amazon RDS operations never return the password, so this action provides a way to regain access to a tenant database user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

Constraints:

  • Can include any printable ASCII character except /, \" (double quote), @, & (ampersand), and ' (single quote).

Length constraints:

  • Must contain between 8 and 30 characters.

", + "TenantDatabasePendingModifiedValues$MasterUserPassword": "

The master password for the tenant database.

" + } + }, "ServerlessV2ScalingConfiguration": { "base": "

Contains the scaling configuration of an Aurora Serverless v2 DB cluster.

For more information, see Using Amazon Aurora Serverless v2 in the Amazon Aurora User Guide.

", "refs": { @@ -3873,6 +4122,13 @@ "refs": { } }, + "SourceArn": { + "base": null, + "refs": { + "CreateIntegrationMessage$SourceArn": "

The Amazon Resource Name (ARN) of the database to use as the source for replication.

", + "Integration$SourceArn": "

The Amazon Resource Name (ARN) of the database used as the source for replication.

" + } + }, "SourceClusterNotSupportedFault": { "base": "

The source DB cluster isn't supported for a blue/green deployment.

", "refs": { @@ -4034,8 +4290,8 @@ "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

The identifier of the event source to be added.

Constraints:

  • If the source type is a DB instance, a DBInstanceIdentifier value must be supplied.

  • If the source type is a DB cluster, a DBClusterIdentifier value must be supplied.

  • If the source type is a DB parameter group, a DBParameterGroupName value must be supplied.

  • If the source type is a DB security group, a DBSecurityGroupName value must be supplied.

  • If the source type is a DB snapshot, a DBSnapshotIdentifier value must be supplied.

  • If the source type is a DB cluster snapshot, a DBClusterSnapshotIdentifier value must be supplied.

  • If the source type is an RDS Proxy, a DBProxyName value must be supplied.

", "AddTagsToResourceMessage$ResourceName": "

The Amazon RDS resource that the tags are added to. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

", "ApplyPendingMaintenanceActionMessage$ResourceIdentifier": "

The RDS Amazon Resource Name (ARN) of the resource that the pending maintenance action applies to. For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

", - "ApplyPendingMaintenanceActionMessage$ApplyAction": "

The pending maintenance action to apply to this resource.

Valid values: system-update, db-upgrade, hardware-maintenance, ca-certificate-rotation

", - "ApplyPendingMaintenanceActionMessage$OptInType": "

A value that specifies the type of opt-in request, or undoes an opt-in request. An opt-in request of type immediate can't be undone.

Valid values:

  • immediate - Apply the maintenance action immediately.

  • next-maintenance - Apply the maintenance action during the next maintenance window for the resource.

  • undo-opt-in - Cancel any existing next-maintenance opt-in requests.

", + "ApplyPendingMaintenanceActionMessage$ApplyAction": "

The pending maintenance action to apply to this resource.

Valid Values: system-update, db-upgrade, hardware-maintenance, ca-certificate-rotation

", + "ApplyPendingMaintenanceActionMessage$OptInType": "

A value that specifies the type of opt-in request, or undoes an opt-in request. An opt-in request of type immediate can't be undone.

Valid Values:

  • immediate - Apply the maintenance action immediately.

  • next-maintenance - Apply the maintenance action during the next maintenance window for the resource.

  • undo-opt-in - Cancel any existing next-maintenance opt-in requests.

", "AttributeValueList$member": null, "AuthorizeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

The name of the DB security group to add authorization to.

", "AuthorizeDBSecurityGroupIngressMessage$CIDRIP": "

The IP range to authorize.

", @@ -4055,6 +4311,7 @@ "Certificate$Thumbprint": "

The thumbprint of the certificate.

", "Certificate$CertificateArn": "

The Amazon Resource Name (ARN) for the certificate.

", "CertificateDetails$CAIdentifier": "

The CA identifier of the CA certificate used for the DB instance's server certificate.

", + "CertificateMessage$DefaultCertificateForNewLaunches": "

The default root CA for new databases created by your Amazon Web Services account. This is either the root CA override set on your Amazon Web Services account or the system default CA for the Region if no override exists. To override the default CA, use the ModifyCertificates operation.

", "CertificateMessage$Marker": "

An optional pagination token provided by a previous DescribeCertificates request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

", "CharacterSet$CharacterSetName": "

The name of the character set.

", "CharacterSet$CharacterSetDescription": "

The description of the character set.

", @@ -4117,19 +4374,19 @@ "CreateDBClusterParameterGroupMessage$Description": "

The description for the DB cluster parameter group.

", "CreateDBClusterSnapshotMessage$DBClusterSnapshotIdentifier": "

The identifier of the DB cluster snapshot. This parameter is stored as a lowercase string.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Example: my-cluster1-snapshot1

", "CreateDBClusterSnapshotMessage$DBClusterIdentifier": "

The identifier of the DB cluster to create a snapshot for. This parameter isn't case-sensitive.

Constraints:

  • Must match the identifier of an existing DBCluster.

Example: my-cluster1

", - "CreateDBInstanceMessage$DBName": "

The meaning of this parameter differs according to the database engine you use.

MySQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

  • Must contain 1 to 64 letters or numbers.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine

MariaDB

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

  • Must contain 1 to 64 letters or numbers.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine

PostgreSQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, a database named postgres is created in the DB instance.

Constraints:

  • Must contain 1 to 63 letters, numbers, or underscores.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine

Oracle

The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is ORCL. You can't specify the string null, or any other reserved word, for DBName.

Default: ORCL

Constraints:

  • Can't be longer than 8 characters

Amazon RDS Custom for Oracle

The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value is ORCL for non-CDBs and RDSCDB for CDBs.

Default: ORCL

Constraints:

  • It must contain 1 to 8 alphanumeric characters.

  • It must contain a letter.

  • It can't be a word reserved by the database engine.

Amazon RDS Custom for SQL Server

Not applicable. Must be null.

SQL Server

Not applicable. Must be null.

Amazon Aurora MySQL

The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster.

Constraints:

  • It must contain 1 to 64 alphanumeric characters.

  • It can't be a word reserved by the database engine.

Amazon Aurora PostgreSQL

The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. If this parameter isn't specified for an Aurora PostgreSQL DB cluster, a database named postgres is created in the DB cluster.

Constraints:

  • It must contain 1 to 63 alphanumeric characters.

  • It must begin with a letter. Subsequent characters can be letters, underscores, or digits (0 to 9).

  • It can't be a word reserved by the database engine.

", + "CreateDBInstanceMessage$DBName": "

The meaning of this parameter differs according to the database engine you use.

Amazon Aurora MySQL

The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster.

Constraints:

  • Must contain 1 to 64 alphanumeric characters.

  • Can't be a word reserved by the database engine.

Amazon Aurora PostgreSQL

The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. If this parameter isn't specified for an Aurora PostgreSQL DB cluster, a database named postgres is created in the DB cluster.

Constraints:

  • It must contain 1 to 63 alphanumeric characters.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0 to 9).

  • Can't be a word reserved by the database engine.

Amazon RDS Custom for Oracle

The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value is ORCL for non-CDBs and RDSCDB for CDBs.

Default: ORCL

Constraints:

  • Must contain 1 to 8 alphanumeric characters.

  • Must contain a letter.

  • Can't be a word reserved by the database engine.

Amazon RDS Custom for SQL Server

Not applicable. Must be null.

RDS for Db2

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

  • Must contain 1 to 64 letters or numbers.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine.

RDS for MariaDB

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

  • Must contain 1 to 64 letters or numbers.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine.

RDS for MySQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

  • Must contain 1 to 64 letters or numbers.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine.

RDS for Oracle

The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is ORCL. You can't specify the string null, or any other reserved word, for DBName.

Default: ORCL

Constraints:

  • Can't be longer than 8 characters.

RDS for PostgreSQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, a database named postgres is created in the DB instance.

Constraints:

  • Must contain 1 to 63 letters, numbers, or underscores.

  • Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).

  • Can't be a word reserved by the specified database engine.

RDS for SQL Server

Not applicable. Must be null.

", "CreateDBInstanceMessage$DBInstanceIdentifier": "

The identifier for this DB instance. This parameter is stored as a lowercase string.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Example: mydbinstance

", "CreateDBInstanceMessage$DBInstanceClass": "

The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB instance classes in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide.

", - "CreateDBInstanceMessage$Engine": "

The database engine to use for this DB instance.

Not every database engine is available in every Amazon Web Services Region.

Valid Values:

  • aurora-mysql (for Aurora MySQL DB instances)

  • aurora-postgresql (for Aurora PostgreSQL DB instances)

  • custom-oracle-ee (for RDS Custom for Oracle DB instances)

  • custom-oracle-ee-cdb (for RDS Custom for Oracle DB instances)

  • custom-sqlserver-ee (for RDS Custom for SQL Server DB instances)

  • custom-sqlserver-se (for RDS Custom for SQL Server DB instances)

  • custom-sqlserver-web (for RDS Custom for SQL Server DB instances)

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "CreateDBInstanceMessage$Engine": "

The database engine to use for this DB instance.

Not every database engine is available in every Amazon Web Services Region.

Valid Values:

  • aurora-mysql (for Aurora MySQL DB instances)

  • aurora-postgresql (for Aurora PostgreSQL DB instances)

  • custom-oracle-ee (for RDS Custom for Oracle DB instances)

  • custom-oracle-ee-cdb (for RDS Custom for Oracle DB instances)

  • custom-sqlserver-ee (for RDS Custom for SQL Server DB instances)

  • custom-sqlserver-se (for RDS Custom for SQL Server DB instances)

  • custom-sqlserver-web (for RDS Custom for SQL Server DB instances)

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", "CreateDBInstanceMessage$MasterUsername": "

The name for the master user.

This setting doesn't apply to Amazon Aurora DB instances. The name for the master user is managed by the DB cluster.

This setting is required for RDS DB instances.

Constraints:

  • Must be 1 to 16 letters, numbers, or underscores.

  • First character must be a letter.

  • Can't be a reserved word for the chosen database engine.

", - "CreateDBInstanceMessage$MasterUserPassword": "

The password for the master user.

This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by the DB cluster.

Constraints:

  • Can't be specified if ManageMasterUserPassword is turned on.

  • Can include any printable ASCII character except \"/\", \"\"\", or \"@\".

Length Constraints:

  • RDS for MariaDB - Must contain from 8 to 41 characters.

  • RDS for Microsoft SQL Server - Must contain from 8 to 128 characters.

  • RDS for MySQL - Must contain from 8 to 41 characters.

  • RDS for Oracle - Must contain from 8 to 30 characters.

  • RDS for PostgreSQL - Must contain from 8 to 128 characters.

", + "CreateDBInstanceMessage$MasterUserPassword": "

The password for the master user.

This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by the DB cluster.

Constraints:

  • Can't be specified if ManageMasterUserPassword is turned on.

  • Can include any printable ASCII character except \"/\", \"\"\", or \"@\". For RDS for Oracle, can't include the \"&\" (ampersand) or the \"'\" (single quotes) character.

Length Constraints:

  • RDS for Db2 - Must contain from 8 to 255 characters.

  • RDS for MariaDB - Must contain from 8 to 41 characters.

  • RDS for Microsoft SQL Server - Must contain from 8 to 128 characters.

  • RDS for MySQL - Must contain from 8 to 41 characters.

  • RDS for Oracle - Must contain from 8 to 30 characters.

  • RDS for PostgreSQL - Must contain from 8 to 128 characters.

", "CreateDBInstanceMessage$AvailabilityZone": "

The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services Regions and Availability Zones, see Regions and Availability Zones.

For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability Zones. Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability Zone if you don't specify one.

Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.

Constraints:

  • The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ deployment.

  • The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint.

Example: us-east-1d

", "CreateDBInstanceMessage$DBSubnetGroupName": "

A DB subnet group to associate with this DB instance.

Constraints:

  • Must match the name of an existing DB subnet group.

  • Must not be default.

Example: mydbsubnetgroup

", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

The time range each week during which system maintenance can occur. For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Constraints:

  • Must be in the format ddd:hh24:mi-ddd:hh24:mi.

  • The day values must be mon | tue | wed | thu | fri | sat | sun.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred backup window.

  • Must be at least 30 minutes.

", "CreateDBInstanceMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance. If you don't specify a value, then Amazon RDS uses the default DB parameter group for the specified DB engine and version.

This setting doesn't apply to RDS Custom DB instances.

Constraints:

  • Must be 1 to 255 letters, numbers, or hyphens.

  • The first character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", "CreateDBInstanceMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter. The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is managed by the DB cluster.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", - "CreateDBInstanceMessage$EngineVersion": "

The version number of the database engine to use.

This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the DB instance uses is managed by the DB cluster.

For a list of valid engine versions, use the DescribeDBEngineVersions operation.

The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region.

Amazon RDS Custom for Oracle

A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom for Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is 19.my_cev1. For more information, see Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide.

Amazon RDS Custom for SQL Server

See RDS Custom for SQL Server general requirements in the Amazon RDS User Guide.

RDS for MariaDB

For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Microsoft SQL Server

For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide.

RDS for MySQL

For information, see MySQL on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Oracle

For information, see Oracle Database Engine release notes in the Amazon RDS User Guide.

RDS for PostgreSQL

For information, see Amazon RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide.

", - "CreateDBInstanceMessage$LicenseModel": "

The license model information for this DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

  • RDS for MariaDB - general-public-license

  • RDS for Microsoft SQL Server - license-included

  • RDS for MySQL - general-public-license

  • RDS for Oracle - bring-your-own-license | license-included

  • RDS for PostgreSQL - postgresql-license

", + "CreateDBInstanceMessage$EngineVersion": "

The version number of the database engine to use.

This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the DB instance uses is managed by the DB cluster.

For a list of valid engine versions, use the DescribeDBEngineVersions operation.

The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region.

Amazon RDS Custom for Oracle

A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom for Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is 19.my_cev1. For more information, see Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide.

Amazon RDS Custom for SQL Server

See RDS Custom for SQL Server general requirements in the Amazon RDS User Guide.

RDS for Db2

For information, see Db2 on Amazon RDS versions in the Amazon RDS User Guide.

RDS for MariaDB

For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Microsoft SQL Server

For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide.

RDS for MySQL

For information, see MySQL on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Oracle

For information, see Oracle Database Engine release notes in the Amazon RDS User Guide.

RDS for PostgreSQL

For information, see Amazon RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide.

", + "CreateDBInstanceMessage$LicenseModel": "

The license model information for this DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

  • RDS for Db2 - bring-your-own-license

  • RDS for MariaDB - general-public-license

  • RDS for Microsoft SQL Server - license-included

  • RDS for MySQL - general-public-license

  • RDS for Oracle - bring-your-own-license | license-included

  • RDS for PostgreSQL - postgresql-license

", "CreateDBInstanceMessage$OptionGroupName": "

The option group to associate the DB instance with.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group. Also, that option group can't be removed from a DB instance after it is associated with a DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

", "CreateDBInstanceMessage$CharacterSetName": "

For supported engines, the character set (CharacterSet) to associate the DB instance with.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora - The character set is managed by the DB cluster. For more information, see CreateDBCluster.

  • RDS Custom - However, if you need to change the character set, you can change it on the database itself.

", "CreateDBInstanceMessage$NcharCharacterSetName": "

The name of the NCHAR character set for the Oracle DB instance.

This setting doesn't apply to RDS Custom DB instances.

", @@ -4138,7 +4395,7 @@ "CreateDBInstanceMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

", "CreateDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom DB instances.

", "CreateDBInstanceMessage$KmsKeyId": "

The Amazon Web Services KMS key identifier for an encrypted DB instance.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

This setting doesn't apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier is managed by the DB cluster. For more information, see CreateDBCluster.

If StorageEncrypted is enabled, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this parameter empty while enabling StorageEncrypted, the engine uses the default KMS key. However, RDS Custom doesn't use the default key when this parameter is empty. You must explicitly specify a key.

", - "CreateDBInstanceMessage$Domain": "

The Active Directory directory ID to create the DB instance in. Currently, only Microsoft SQL Server, MySQL, Oracle, and PostgreSQL DB instances can be created in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (The domain is managed by the DB cluster.)

  • RDS Custom

", + "CreateDBInstanceMessage$Domain": "

The Active Directory directory ID to create the DB instance in. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (The domain is managed by the DB cluster.)

  • RDS Custom

", "CreateDBInstanceMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

  • Can't be longer than 64 characters.

Example: mymanagedADtest.mymanagedAD.mydomain

", "CreateDBInstanceMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

  • Must be in the distinguished name format.

  • Can't be longer than 64 characters.

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "CreateDBInstanceMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", @@ -4147,33 +4404,33 @@ "CreateDBInstanceMessage$Timezone": "

The time zone of the DB instance. The time zone parameter is currently supported only by Microsoft SQL Server.

", "CreateDBInstanceMessage$PerformanceInsightsKMSKeyId": "

The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

This setting doesn't apply to RDS Custom DB instances.

", "CreateDBInstanceMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.

This setting is required for RDS Custom.

Constraints:

  • The profile must exist in your account.

  • The profile must have an IAM role that Amazon EC2 has permissions to assume.

  • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

", - "CreateDBInstanceMessage$BackupTarget": "

The location for storing automated backups and manual snapshots.

Valie Values:

  • outposts (Amazon Web Services Outposts)

  • region (Amazon Web Services Region)

Default: region

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", + "CreateDBInstanceMessage$BackupTarget": "

The location for storing automated backups and manual snapshots.

Valid Values:

  • outposts (Amazon Web Services Outposts)

  • region (Amazon Web Services Region)

Default: region

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", "CreateDBInstanceMessage$NetworkType": "

The network type of the DB instance.

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Valid Values: IPV4 | DUAL

", "CreateDBInstanceMessage$MasterUserSecretKmsKeyId": "

The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in Amazon Web Services Secrets Manager.

This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB instance.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed KMS key.

There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", "CreateDBInstanceMessage$CACertificateIdentifier": "

The CA certificate identifier to use for the DB instance's server certificate.

This setting doesn't apply to RDS Custom DB instances.

For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

", "CreateDBInstanceMessage$DBSystemId": "

The Oracle system identifier (SID), which is the name of the Oracle database instance that manages your database files. In this context, the term \"Oracle database instance\" refers exclusively to the system global area (SGA) and Oracle background processes. If you don't specify a SID, the value defaults to RDSCDB. The Oracle SID is also the name of your CDB.

", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

The DB instance identifier of the read replica. This identifier is the unique key that identifies a DB instance. This parameter is stored as a lowercase string.

", - "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

The identifier of the DB instance that will act as the source for the read replica. Each DB instance can have up to 15 read replicas, with the exception of Oracle and SQL Server, which can have up to five.

Constraints:

  • Must be the identifier of an existing MySQL, MariaDB, Oracle, PostgreSQL, or SQL Server DB instance.

  • Can't be specified if the SourceDBClusterIdentifier parameter is also specified.

  • For the limitations of Oracle read replicas, see Version and licensing considerations for RDS for Oracle replicas in the Amazon RDS User Guide.

  • For the limitations of SQL Server read replicas, see Read replica limitations with SQL Server in the Amazon RDS User Guide.

  • The specified DB instance must have automatic backups enabled, that is, its backup retention period must be greater than 0.

  • If the source DB instance is in the same Amazon Web Services Region as the read replica, specify a valid DB instance identifier.

  • If the source DB instance is in a different Amazon Web Services Region from the read replica, specify a valid DB instance ARN. For more information, see Constructing an ARN for Amazon RDS in the Amazon RDS User Guide. This doesn't apply to SQL Server or RDS Custom, which don't support cross-Region replicas.

", - "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

The compute and memory capacity of the read replica, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: Inherits from the source DB instance.

", + "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

The identifier of the DB instance that will act as the source for the read replica. Each DB instance can have up to 15 read replicas, with the exception of Oracle and SQL Server, which can have up to five.

Constraints:

  • Must be the identifier of an existing Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server DB instance.

  • Can't be specified if the SourceDBClusterIdentifier parameter is also specified.

  • For the limitations of Oracle read replicas, see Version and licensing considerations for RDS for Oracle replicas in the Amazon RDS User Guide.

  • For the limitations of SQL Server read replicas, see Read replica limitations with SQL Server in the Amazon RDS User Guide.

  • The specified DB instance must have automatic backups enabled, that is, its backup retention period must be greater than 0.

  • If the source DB instance is in the same Amazon Web Services Region as the read replica, specify a valid DB instance identifier.

  • If the source DB instance is in a different Amazon Web Services Region from the read replica, specify a valid DB instance ARN. For more information, see Constructing an ARN for Amazon RDS in the Amazon RDS User Guide. This doesn't apply to SQL Server or RDS Custom, which don't support cross-Region replicas.

", + "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

The compute and memory capacity of the read replica, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: Inherits the value from the source DB instance.

", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

The Availability Zone (AZ) where the read replica will be created.

Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.

Example: us-east-1d

", - "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

The option group the DB instance is associated with. If omitted, the option group associated with the source instance or cluster is used.

For SQL Server, you must use the option group associated with the source.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you do not specify a value for DBParameterGroupName, then Amazon RDS uses the DBParameterGroup of source DB instance for a same Region read replica, or the default DBParameterGroup for the specified DB engine for a cross-Region read replica.

Specifying a parameter group for this operation is only supported for MySQL and Oracle DB instances. It isn't supported for RDS Custom.

Constraints:

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

", - "CreateDBInstanceReadReplicaMessage$DBSubnetGroupName": "

Specifies a DB subnet group for the DB instance. The new DB instance is created in the VPC associated with the DB subnet group. If no DB subnet group is specified, then the new DB instance isn't created in a VPC.

Constraints:

  • If supplied, must match the name of an existing DBSubnetGroup.

  • The specified DB subnet group must be in the same Amazon Web Services Region in which the operation is running.

  • All read replicas in one Amazon Web Services Region that are created from the same source DB instance must either:>

    • Specify DB subnet groups from the same VPC. All these read replicas are created in the same VPC.

    • Not specify a DB subnet group. All these read replicas are created outside of any VPC.

Example: mydbsubnetgroup

", - "CreateDBInstanceReadReplicaMessage$StorageType": "

Specifies the storage type to be associated with the read replica.

Valid values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified, otherwise gp2

", - "CreateDBInstanceReadReplicaMessage$MonitoringRoleArn": "

The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, go to To create an IAM role for Amazon RDS Enhanced Monitoring in the Amazon RDS User Guide.

If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

This setting doesn't apply to RDS Custom.

", + "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

The option group to associate the DB instance with. If not specified, RDS uses the option group associated with the source DB instance or cluster.

For SQL Server, you must use the option group associated with the source.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you don't specify a value for DBParameterGroupName, then Amazon RDS uses the DBParameterGroup of the source DB instance for a same Region read replica, or the default DBParameterGroup for the specified DB engine for a cross-Region read replica.

Specifying a parameter group for this operation is only supported for MySQL DB instances for cross-Region read replicas and for Oracle DB instances. It isn't supported for MySQL DB instances for same Region read replicas or for RDS Custom.

Constraints:

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", + "CreateDBInstanceReadReplicaMessage$DBSubnetGroupName": "

A DB subnet group for the DB instance. The new DB instance is created in the VPC associated with the DB subnet group. If no DB subnet group is specified, then the new DB instance isn't created in a VPC.

Constraints:

  • If supplied, must match the name of an existing DB subnet group.

  • The specified DB subnet group must be in the same Amazon Web Services Region in which the operation is running.

  • All read replicas in one Amazon Web Services Region that are created from the same source DB instance must either:

    • Specify DB subnet groups from the same VPC. All these read replicas are created in the same VPC.

    • Not specify a DB subnet group. All these read replicas are created outside of any VPC.

Example: mydbsubnetgroup

", + "CreateDBInstanceReadReplicaMessage$StorageType": "

The storage type to associate with the read replica.

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Valid Values: gp2 | gp3 | io1 | standard

Default: io1 if the Iops parameter is specified. Otherwise, gp2.

", + "CreateDBInstanceReadReplicaMessage$MonitoringRoleArn": "

The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, go to To create an IAM role for Amazon RDS Enhanced Monitoring in the Amazon RDS User Guide.

If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

This setting doesn't apply to RDS Custom DB instances.

", "CreateDBInstanceReadReplicaMessage$KmsKeyId": "

The Amazon Web Services KMS key identifier for an encrypted read replica.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you create an encrypted read replica in the same Amazon Web Services Region as the source DB instance or Multi-AZ DB cluster, don't specify a value for this parameter. A read replica in the same Amazon Web Services Region is always encrypted with the same KMS key as the source DB instance or cluster.

If you create an encrypted read replica in a different Amazon Web Services Region, then you must specify a KMS key identifier for the destination Amazon Web Services Region. KMS keys are specific to the Amazon Web Services Region that they are created in, and you can't use KMS keys from one Amazon Web Services Region in another Amazon Web Services Region.

You can't create an encrypted read replica from an unencrypted DB instance or Multi-AZ DB cluster.

This setting doesn't apply to RDS Custom, which uses the same KMS key as the primary replica.

", - "CreateDBInstanceReadReplicaMessage$PreSignedUrl": "

When you are creating a read replica from one Amazon Web Services GovCloud (US) Region to another or from one China Amazon Web Services Region to another, the URL that contains a Signature Version 4 signed request for the CreateDBInstanceReadReplica API operation in the source Amazon Web Services Region that contains the source DB instance.

This setting applies only to Amazon Web Services GovCloud (US) Regions and China Amazon Web Services Regions. It's ignored in other Amazon Web Services Regions.

This setting applies only when replicating from a source DB instance. Source DB clusters aren't supported in Amazon Web Services GovCloud (US) Regions and China Amazon Web Services Regions.

You must specify this parameter when you create an encrypted read replica from another Amazon Web Services Region by using the Amazon RDS API. Don't specify PreSignedUrl when you are creating an encrypted read replica in the same Amazon Web Services Region.

The presigned URL must be a valid request for the CreateDBInstanceReadReplica API operation that can run in the source Amazon Web Services Region that contains the encrypted source DB instance. The presigned URL request must contain the following parameter values:

  • DestinationRegion - The Amazon Web Services Region that the encrypted read replica is created in. This Amazon Web Services Region is the same one where the CreateDBInstanceReadReplica operation is called that contains this presigned URL.

    For example, if you create an encrypted DB instance in the us-west-1 Amazon Web Services Region, from a source DB instance in the us-east-2 Amazon Web Services Region, then you call the CreateDBInstanceReadReplica operation in the us-east-1 Amazon Web Services Region and provide a presigned URL that contains a call to the CreateDBInstanceReadReplica operation in the us-west-2 Amazon Web Services Region. For this example, the DestinationRegion in the presigned URL must be set to the us-east-1 Amazon Web Services Region.

  • KmsKeyId - The KMS key identifier for the key to use to encrypt the read replica in the destination Amazon Web Services Region. This is the same identifier for both the CreateDBInstanceReadReplica operation that is called in the destination Amazon Web Services Region, and the operation contained in the presigned URL.

  • SourceDBInstanceIdentifier - The DB instance identifier for the encrypted DB instance to be replicated. This identifier must be in the Amazon Resource Name (ARN) format for the source Amazon Web Services Region. For example, if you are creating an encrypted read replica from a DB instance in the us-west-2 Amazon Web Services Region, then your SourceDBInstanceIdentifier looks like the following example: arn:aws:rds:us-west-2:123456789012:instance:mysql-instance1-20161115.

To learn how to generate a Signature Version 4 signed request, see Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4) and Signature Version 4 Signing Process.

If you are using an Amazon Web Services SDK tool or the CLI, you can specify SourceRegion (or --source-region for the CLI) instead of specifying PreSignedUrl manually. Specifying SourceRegion autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

SourceRegion isn't supported for SQL Server, because Amazon RDS for SQL Server doesn't support cross-Region read replicas.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$PerformanceInsightsKMSKeyId": "

The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$Domain": "

The Active Directory directory ID to create the DB instance in. Currently, only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances can be created in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$DomainIAMRoleName": "

The name of the IAM role to be used when making API calls to the Directory Service.

This setting doesn't apply to RDS Custom.

", + "CreateDBInstanceReadReplicaMessage$PreSignedUrl": "

When you are creating a read replica from one Amazon Web Services GovCloud (US) Region to another or from one China Amazon Web Services Region to another, the URL that contains a Signature Version 4 signed request for the CreateDBInstanceReadReplica API operation in the source Amazon Web Services Region that contains the source DB instance.

This setting applies only to Amazon Web Services GovCloud (US) Regions and China Amazon Web Services Regions. It's ignored in other Amazon Web Services Regions.

This setting applies only when replicating from a source DB instance. Source DB clusters aren't supported in Amazon Web Services GovCloud (US) Regions and China Amazon Web Services Regions.

You must specify this parameter when you create an encrypted read replica from another Amazon Web Services Region by using the Amazon RDS API. Don't specify PreSignedUrl when you are creating an encrypted read replica in the same Amazon Web Services Region.

The presigned URL must be a valid request for the CreateDBInstanceReadReplica API operation that can run in the source Amazon Web Services Region that contains the encrypted source DB instance. The presigned URL request must contain the following parameter values:

  • DestinationRegion - The Amazon Web Services Region that the encrypted read replica is created in. This Amazon Web Services Region is the same one where the CreateDBInstanceReadReplica operation is called that contains this presigned URL.

    For example, if you create an encrypted DB instance in the us-west-1 Amazon Web Services Region, from a source DB instance in the us-east-2 Amazon Web Services Region, then you call the CreateDBInstanceReadReplica operation in the us-east-1 Amazon Web Services Region and provide a presigned URL that contains a call to the CreateDBInstanceReadReplica operation in the us-west-2 Amazon Web Services Region. For this example, the DestinationRegion in the presigned URL must be set to the us-east-1 Amazon Web Services Region.

  • KmsKeyId - The KMS key identifier for the key to use to encrypt the read replica in the destination Amazon Web Services Region. This is the same identifier for both the CreateDBInstanceReadReplica operation that is called in the destination Amazon Web Services Region, and the operation contained in the presigned URL.

  • SourceDBInstanceIdentifier - The DB instance identifier for the encrypted DB instance to be replicated. This identifier must be in the Amazon Resource Name (ARN) format for the source Amazon Web Services Region. For example, if you are creating an encrypted read replica from a DB instance in the us-west-2 Amazon Web Services Region, then your SourceDBInstanceIdentifier looks like the following example: arn:aws:rds:us-west-2:123456789012:instance:mysql-instance1-20161115.

To learn how to generate a Signature Version 4 signed request, see Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4) and Signature Version 4 Signing Process.

If you are using an Amazon Web Services SDK tool or the CLI, you can specify SourceRegion (or --source-region for the CLI) instead of specifying PreSignedUrl manually. Specifying SourceRegion autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

SourceRegion isn't supported for SQL Server, because Amazon RDS for SQL Server doesn't support cross-Region read replicas.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$PerformanceInsightsKMSKeyId": "

The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$Domain": "

The Active Directory directory ID to create the DB instance in. Currently, only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances can be created in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$DomainIAMRoleName": "

The name of the IAM role to use when making API calls to the Directory Service.

This setting doesn't apply to RDS Custom DB instances.

", "CreateDBInstanceReadReplicaMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

  • Can't be longer than 64 characters.

Example: mymanagedADtest.mymanagedAD.mydomain

", "CreateDBInstanceReadReplicaMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

  • Must be in the distinguished name format.

  • Can't be longer than 64 characters.

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "CreateDBInstanceReadReplicaMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", - "CreateDBInstanceReadReplicaMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

  • The profile must exist in your account.

  • The profile must have an IAM role that Amazon EC2 has permissions to assume.

  • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

This setting is required for RDS Custom.

", - "CreateDBInstanceReadReplicaMessage$NetworkType": "

The network type of the DB instance.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for read replica. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", + "CreateDBInstanceReadReplicaMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

  • The profile must exist in your account.

  • The profile must have an IAM role that Amazon EC2 has permissions to assume.

  • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

This setting is required for RDS Custom DB instances.

", + "CreateDBInstanceReadReplicaMessage$NetworkType": "

The network type of the DB instance.

Valid Values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for read replica. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", "CreateDBInstanceReadReplicaMessage$SourceDBClusterIdentifier": "

The identifier of the Multi-AZ DB cluster that will act as the source for the read replica. Each DB cluster can have up to 15 read replicas.

Constraints:

  • Must be the identifier of an existing Multi-AZ DB cluster.

  • Can't be specified if the SourceDBInstanceIdentifier parameter is also specified.

  • The specified DB cluster must have automatic backups enabled, that is, its backup retention period must be greater than 0.

  • The source DB cluster must be in the same Amazon Web Services Region as the read replica. Cross-Region replication isn't supported.

", "CreateDBParameterGroupMessage$DBParameterGroupName": "

The name of the DB parameter group.

Constraints:

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

This value is stored as a lowercase string.

", - "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

To list all of the available parameter group families for a DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine <engine>

For example, to list all of the available parameter group families for the MySQL DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine mysql

The output contains duplicates.

The following are the valid DB engine values:

  • aurora-mysql

  • aurora-postgresql

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

To list all of the available parameter group families for a DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine <engine>

For example, to list all of the available parameter group families for the MySQL DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine mysql

The output contains duplicates.

The following are the valid DB engine values:

  • aurora-mysql

  • aurora-postgresql

  • db2-ae

  • db2-se

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", "CreateDBParameterGroupMessage$Description": "

The description for the DB parameter group.

", "CreateDBProxyRequest$DBProxyName": "

The identifier for the proxy. This name must be unique for all proxies owned by your Amazon Web Services account in the specified Amazon Web Services Region. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can't end with a hyphen or contain two consecutive hyphens.

", "CreateDBProxyRequest$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in Amazon Web Services Secrets Manager.

", @@ -4185,16 +4442,22 @@ "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

The description for the DB subnet group.

", "CreateEventSubscriptionMessage$SubscriptionName": "

The name of the subscription.

Constraints: The name must be less than 255 characters.

", "CreateEventSubscriptionMessage$SnsTopicArn": "

The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

", - "CreateEventSubscriptionMessage$SourceType": "

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you set this parameter to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't specified, all events are returned.

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", + "CreateEventSubscriptionMessage$SourceType": "

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you set this parameter to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't specified, all events are returned.

Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", "CreateGlobalClusterMessage$GlobalClusterIdentifier": "

The cluster identifier for this global database cluster. This parameter is stored as a lowercase string.

", "CreateGlobalClusterMessage$SourceDBClusterIdentifier": "

The Amazon Resource Name (ARN) to use as the primary cluster of the global database.

If you provide a value for this parameter, don't specify values for the following settings because Amazon Aurora uses the values from the specified source DB cluster:

  • DatabaseName

  • Engine

  • EngineVersion

  • StorageEncrypted

", "CreateGlobalClusterMessage$Engine": "

The database engine to use for this global database cluster.

Valid Values: aurora-mysql | aurora-postgresql

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the engine of the source DB cluster.

", "CreateGlobalClusterMessage$EngineVersion": "

The engine version to use for this global database cluster.

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the engine version of the source DB cluster.

", "CreateGlobalClusterMessage$DatabaseName": "

The name for your database of up to 64 alphanumeric characters. If you don't specify a name, Amazon Aurora doesn't create a database in the global database cluster.

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the database name from the source DB cluster.

", + "CreateIntegrationMessage$KMSKeyId": "

The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default Amazon Web Services owned key.

", "CreateOptionGroupMessage$OptionGroupName": "

Specifies the name of the option group to be created.

Constraints:

  • Must be 1 to 255 letters, numbers, or hyphens

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

Example: myoptiongroup

", - "CreateOptionGroupMessage$EngineName": "

Specifies the name of the engine that this option group should be associated with.

Valid Values:

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "CreateOptionGroupMessage$EngineName": "

The name of the engine to associate this option group with.

Valid Values:

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", "CreateOptionGroupMessage$MajorEngineVersion": "

Specifies the major version of the engine that this option group should be associated with.

", "CreateOptionGroupMessage$OptionGroupDescription": "

The description of the option group.

", + "CreateTenantDatabaseMessage$DBInstanceIdentifier": "

The user-supplied DB instance identifier. RDS creates your tenant database in this DB instance. This parameter isn't case-sensitive.

", + "CreateTenantDatabaseMessage$TenantDBName": "

The user-supplied name of the tenant database that you want to create in your DB instance. This parameter has the same constraints as DBName in CreateDBInstance.

", + "CreateTenantDatabaseMessage$MasterUsername": "

The name for the master user account in your tenant database. RDS creates this user account in the tenant database and grants privileges to the master user. This parameter is case-sensitive.

Constraints:

  • Must be 1 to 16 letters, numbers, or underscores.

  • First character must be a letter.

  • Can't be a reserved word for the chosen database engine.

", + "CreateTenantDatabaseMessage$CharacterSetName": "

The character set for your tenant database. If you don't specify a value, the character set name defaults to AL32UTF8.

", + "CreateTenantDatabaseMessage$NcharCharacterSetName": "

The NCHAR value for the tenant database.

", "CustomDBEngineVersionAMI$ImageId": "

A value that indicates the ID of the AMI.

", "CustomDBEngineVersionAMI$Status": "

A value that indicates the status of a custom engine version (CEV).

", "DBCluster$CharacterSetName": "

If present, specifies the name of the character set that this cluster is associated with.

", @@ -4273,25 +4536,28 @@ "DBClusterRole$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that is associated with the DB cluster.

", "DBClusterRole$Status": "

Describes the state of association between the IAM role and the DB cluster. The Status property returns one of the following values:

  • ACTIVE - the IAM role ARN is associated with the DB cluster and can be used to access other Amazon Web Services on your behalf.

  • PENDING - the IAM role ARN is being associated with the DB cluster.

  • INVALID - the IAM role ARN is associated with the DB cluster, but the DB cluster is unable to assume the IAM role in order to access other Amazon Web Services on your behalf.

", "DBClusterRole$FeatureName": "

The name of the feature associated with the Amazon Web Services Identity and Access Management (IAM) role. For information about supported feature names, see DBEngineVersion.

", - "DBClusterSnapshot$DBClusterSnapshotIdentifier": "

Specifies the identifier for the DB cluster snapshot.

", - "DBClusterSnapshot$DBClusterIdentifier": "

Specifies the DB cluster identifier of the DB cluster that this DB cluster snapshot was created from.

", - "DBClusterSnapshot$Engine": "

Specifies the name of the database engine for this DB cluster snapshot.

", - "DBClusterSnapshot$EngineMode": "

Provides the engine mode of the database engine for this DB cluster snapshot.

", - "DBClusterSnapshot$Status": "

Specifies the status of this DB cluster snapshot. Valid statuses are the following:

  • available

  • copying

  • creating

", - "DBClusterSnapshot$VpcId": "

Provides the VPC ID associated with the DB cluster snapshot.

", - "DBClusterSnapshot$MasterUsername": "

Provides the master username for this DB cluster snapshot.

", - "DBClusterSnapshot$EngineVersion": "

Provides the version of the database engine for this DB cluster snapshot.

", - "DBClusterSnapshot$LicenseModel": "

Provides the license model information for this DB cluster snapshot.

", - "DBClusterSnapshot$SnapshotType": "

Provides the type of the DB cluster snapshot.

", + "DBClusterSnapshot$DBClusterSnapshotIdentifier": "

The identifier for the DB cluster snapshot.

", + "DBClusterSnapshot$DBClusterIdentifier": "

The DB cluster identifier of the DB cluster that this DB cluster snapshot was created from.

", + "DBClusterSnapshot$Engine": "

The name of the database engine for this DB cluster snapshot.

", + "DBClusterSnapshot$EngineMode": "

The engine mode of the database engine for this DB cluster snapshot.

", + "DBClusterSnapshot$Status": "

The status of this DB cluster snapshot. Valid statuses are the following:

  • available

  • copying

  • creating

", + "DBClusterSnapshot$VpcId": "

The VPC ID associated with the DB cluster snapshot.

", + "DBClusterSnapshot$MasterUsername": "

The master username for this DB cluster snapshot.

", + "DBClusterSnapshot$EngineVersion": "

The version of the database engine for this DB cluster snapshot.

", + "DBClusterSnapshot$LicenseModel": "

The license model information for this DB cluster snapshot.

", + "DBClusterSnapshot$SnapshotType": "

The type of the DB cluster snapshot.

", "DBClusterSnapshot$KmsKeyId": "

If StorageEncrypted is true, the Amazon Web Services KMS key identifier for the encrypted DB cluster snapshot.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

", - "DBClusterSnapshot$DBClusterSnapshotArn": "

Specifies the Amazon Resource Name (ARN) for the DB cluster snapshot.

", + "DBClusterSnapshot$DBClusterSnapshotArn": "

The Amazon Resource Name (ARN) for the DB cluster snapshot.

", "DBClusterSnapshot$SourceDBClusterSnapshotArn": "

If the DB cluster snapshot was copied from a source DB cluster snapshot, the Amazon Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null value.

", "DBClusterSnapshot$DBSystemId": "

Reserved for future use.

", "DBClusterSnapshot$StorageType": "

The storage type associated with the DB cluster snapshot.

This setting is only for Aurora DB clusters.

", - "DBClusterSnapshot$DbClusterResourceId": "

Specifies the resource ID of the DB cluster that this DB cluster snapshot was created from.

", + "DBClusterSnapshot$DbClusterResourceId": "

The resource ID of the DB cluster that this DB cluster snapshot was created from.

", "DBClusterSnapshotAttribute$AttributeName": "

The name of the manual DB cluster snapshot attribute.

The attribute named restore refers to the list of Amazon Web Services accounts that have permission to copy or restore the manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute API action.

", "DBClusterSnapshotAttributesResult$DBClusterSnapshotIdentifier": "

The identifier of the manual DB cluster snapshot that the attributes apply to.

", "DBClusterSnapshotMessage$Marker": "

An optional pagination token provided by a previous DescribeDBClusterSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", + "DBClusterStatusInfo$StatusType": "

Reserved for future use.

", + "DBClusterStatusInfo$Status": "

Reserved for future use.

", + "DBClusterStatusInfo$Message": "

Reserved for future use.

", "DBEngineVersion$Engine": "

The name of the database engine.

", "DBEngineVersion$EngineVersion": "

The version number of the database engine.

", "DBEngineVersion$DBParameterGroupFamily": "

The name of the DB parameter group family for the database engine.

", @@ -4310,7 +4576,7 @@ "DBInstance$Engine": "

The database engine used for this DB instance.

", "DBInstance$DBInstanceStatus": "

The current state of this database.

For information about DB instance statuses, see Viewing DB instance status in the Amazon RDS User Guide.

", "DBInstance$MasterUsername": "

The master username for the DB instance.

", - "DBInstance$DBName": "

Contains the initial database name that you provided (if required) when you created the DB instance. This name is returned for the life of your DB instance. For an RDS for Oracle CDB instance, the name identifies the PDB rather than the CDB.

", + "DBInstance$DBName": "

The initial database name that you provided (if required) when you created the DB instance. This name is returned for the life of your DB instance. For an RDS for Oracle CDB instance, the name identifies the PDB rather than the CDB.

", "DBInstance$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

", "DBInstance$AvailabilityZone": "

The name of the Availability Zone where the DB instance is located.

", "DBInstance$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

", @@ -4344,29 +4610,29 @@ "DBInstanceAutomatedBackup$DbiResourceId": "

The resource ID for the source DB instance, which can't be changed and which is unique to an Amazon Web Services Region.

", "DBInstanceAutomatedBackup$Region": "

The Amazon Web Services Region associated with the automated backup.

", "DBInstanceAutomatedBackup$DBInstanceIdentifier": "

The identifier for the source DB instance, which can't be changed and which is unique to an Amazon Web Services Region.

", - "DBInstanceAutomatedBackup$Status": "

Provides a list of status information for an automated backup:

  • active - Automated backups for current instances.

  • retained - Automated backups for deleted instances.

  • creating - Automated backups that are waiting for the first automated snapshot to be available.

", + "DBInstanceAutomatedBackup$Status": "

A list of status information for an automated backup:

  • active - Automated backups for current instances.

  • retained - Automated backups for deleted instances.

  • creating - Automated backups that are waiting for the first automated snapshot to be available.

", "DBInstanceAutomatedBackup$AvailabilityZone": "

The Availability Zone that the automated backup was created in. For information on Amazon Web Services Regions and Availability Zones, see Regions and Availability Zones.

", - "DBInstanceAutomatedBackup$VpcId": "

Provides the VPC ID associated with the DB instance.

", + "DBInstanceAutomatedBackup$VpcId": "

The VPC ID associated with the DB instance.

", "DBInstanceAutomatedBackup$MasterUsername": "

The master user name of an automated backup.

", "DBInstanceAutomatedBackup$Engine": "

The name of the database engine for this automated backup.

", "DBInstanceAutomatedBackup$EngineVersion": "

The version of the database engine for the automated backup.

", - "DBInstanceAutomatedBackup$LicenseModel": "

License model information for the automated backup.

", + "DBInstanceAutomatedBackup$LicenseModel": "

The license model information for the automated backup.

", "DBInstanceAutomatedBackup$OptionGroupName": "

The option group the automated backup is associated with. If omitted, the default option group for the engine specified is used.

", "DBInstanceAutomatedBackup$TdeCredentialArn": "

The ARN from the key store with which the automated backup is associated for TDE encryption.

", - "DBInstanceAutomatedBackup$StorageType": "

Specifies the storage type associated with the automated backup.

", + "DBInstanceAutomatedBackup$StorageType": "

The storage type associated with the automated backup.

", "DBInstanceAutomatedBackup$KmsKeyId": "

The Amazon Web Services KMS key ID for an automated backup.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

", "DBInstanceAutomatedBackup$Timezone": "

The time zone of the automated backup. In most cases, the Timezone element is empty. Timezone content appears only for Microsoft SQL Server DB instances that were created with a time zone specified.

", "DBInstanceAutomatedBackup$DBInstanceAutomatedBackupsArn": "

The Amazon Resource Name (ARN) for the replicated automated backups.

", - "DBInstanceAutomatedBackup$BackupTarget": "

Specifies where automated backups are stored: Amazon Web Services Outposts or the Amazon Web Services Region.

", + "DBInstanceAutomatedBackup$BackupTarget": "

The location where automated backups are stored: Amazon Web Services Outposts or the Amazon Web Services Region.

", "DBInstanceAutomatedBackup$AwsBackupRecoveryPointArn": "

The Amazon Resource Name (ARN) of the recovery point in Amazon Web Services Backup.

", "DBInstanceAutomatedBackupMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DBInstanceAutomatedBackupsReplication$DBInstanceAutomatedBackupsArn": "

The Amazon Resource Name (ARN) of the replicated automated backups.

", "DBInstanceMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

", "DBInstanceRole$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that is associated with the DB instance.

", "DBInstanceRole$FeatureName": "

The name of the feature associated with the Amazon Web Services Identity and Access Management (IAM) role. For information about supported feature names, see DBEngineVersion.

", - "DBInstanceRole$Status": "

Describes the state of association between the IAM role and the DB instance. The Status property returns one of the following values:

  • ACTIVE - the IAM role ARN is associated with the DB instance and can be used to access other Amazon Web Services services on your behalf.

  • PENDING - the IAM role ARN is being associated with the DB instance.

  • INVALID - the IAM role ARN is associated with the DB instance, but the DB instance is unable to assume the IAM role in order to access other Amazon Web Services services on your behalf.

", + "DBInstanceRole$Status": "

Information about the state of association between the IAM role and the DB instance. The Status property returns one of the following values:

  • ACTIVE - the IAM role ARN is associated with the DB instance and can be used to access other Amazon Web Services services on your behalf.

  • PENDING - the IAM role ARN is being associated with the DB instance.

  • INVALID - the IAM role ARN is associated with the DB instance, but the DB instance is unable to assume the IAM role in order to access other Amazon Web Services services on your behalf.

", "DBInstanceStatusInfo$StatusType": "

This value is currently \"read replication.\"

", - "DBInstanceStatusInfo$Status": "

Status of the DB instance. For a StatusType of read replica, the values can be replicating, replication stop point set, replication stop point reached, error, stopped, or terminated.

", + "DBInstanceStatusInfo$Status": "

The status of the DB instance. For a StatusType of read replica, the values can be replicating, replication stop point set, replication stop point reached, error, stopped, or terminated.

", "DBInstanceStatusInfo$Message": "

Details of the error if there is an error for the instance. If the instance isn't in an error state, this value is blank.

", "DBParameterGroup$DBParameterGroupName": "

The name of the DB parameter group.

", "DBParameterGroup$DBParameterGroupFamily": "

The name of the DB parameter group family that this DB parameter group is compatible with.

", @@ -4429,6 +4695,18 @@ "DBSnapshotAttribute$AttributeName": "

The name of the manual DB snapshot attribute.

The attribute named restore refers to the list of Amazon Web Services accounts that have permission to copy or restore the manual DB cluster snapshot. For more information, see the ModifyDBSnapshotAttribute API action.

", "DBSnapshotAttributesResult$DBSnapshotIdentifier": "

The identifier of the manual DB snapshot that the attributes apply to.

", "DBSnapshotMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", + "DBSnapshotTenantDatabase$DBSnapshotIdentifier": "

The identifier for the snapshot of the DB instance.

", + "DBSnapshotTenantDatabase$DBInstanceIdentifier": "

The ID for the DB instance that contains the tenant databases.

", + "DBSnapshotTenantDatabase$DbiResourceId": "

The resource identifier of the source CDB instance. This identifier can't be changed and is unique to an Amazon Web Services Region.

", + "DBSnapshotTenantDatabase$EngineName": "

The name of the database engine.

", + "DBSnapshotTenantDatabase$SnapshotType": "

The type of DB snapshot.

", + "DBSnapshotTenantDatabase$TenantDBName": "

The name of the tenant database.

", + "DBSnapshotTenantDatabase$MasterUsername": "

The master username of the tenant database.

", + "DBSnapshotTenantDatabase$TenantDatabaseResourceId": "

The resource ID of the tenant database.

", + "DBSnapshotTenantDatabase$CharacterSetName": "

The name of the character set of a tenant database.

", + "DBSnapshotTenantDatabase$DBSnapshotTenantDatabaseARN": "

The Amazon Resource Name (ARN) for the snapshot tenant database.

", + "DBSnapshotTenantDatabase$NcharCharacterSetName": "

The NCHAR character set name of the tenant database.

", + "DBSnapshotTenantDatabasesMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DBSubnetGroup$DBSubnetGroupName": "

The name of the DB subnet group.

", "DBSubnetGroup$DBSubnetGroupDescription": "

Provides the description of the DB subnet group.

", "DBSubnetGroup$VpcId": "

Provides the VpcId of the DB subnet group.

", @@ -4453,6 +4731,9 @@ "DeleteEventSubscriptionMessage$SubscriptionName": "

The name of the RDS event notification subscription you want to delete.

", "DeleteGlobalClusterMessage$GlobalClusterIdentifier": "

The cluster identifier of the global database cluster being deleted.

", "DeleteOptionGroupMessage$OptionGroupName": "

The name of the option group to be deleted.

You can't delete default option groups.

", + "DeleteTenantDatabaseMessage$DBInstanceIdentifier": "

The user-supplied identifier for the DB instance that contains the tenant database that you want to delete.

", + "DeleteTenantDatabaseMessage$TenantDBName": "

The user-supplied name of the tenant database that you want to remove from your DB instance. Amazon RDS deletes the tenant database with this name. This parameter isn’t case-sensitive.

", + "DeleteTenantDatabaseMessage$FinalDBSnapshotIdentifier": "

The DBSnapshotIdentifier of the new DBSnapshot created when the SkipFinalSnapshot parameter is disabled.

If you enable this parameter and also enable SkipFinalShapshot, the command results in an error.

", "DeregisterDBProxyTargetsRequest$DBProxyName": "

The identifier of the DBProxy that is associated with the DBProxyTargetGroup.

", "DeregisterDBProxyTargetsRequest$TargetGroupName": "

The identifier of the DBProxyTargetGroup.

", "DescribeBlueGreenDeploymentsRequest$Marker": "

An optional pagination token provided by a previous DescribeBlueGreenDeployments request. If you specify this parameter, the response only includes records beyond the marker, up to the value specified by MaxRecords.

", @@ -4471,7 +4752,7 @@ "DescribeDBClusterParameterGroupsMessage$DBClusterParameterGroupName": "

The name of a specific DB cluster parameter group to return details for.

Constraints:

  • If supplied, must match the name of an existing DBClusterParameterGroup.

", "DescribeDBClusterParameterGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeDBClusterParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeDBClusterParametersMessage$DBClusterParameterGroupName": "

The name of a specific DB cluster parameter group to return parameter details for.

Constraints:

  • If supplied, must match the name of an existing DBClusterParameterGroup.

", - "DescribeDBClusterParametersMessage$Source": "

A value that indicates to return only parameters for a specific source. Parameter sources can be engine, service, or customer.

", + "DescribeDBClusterParametersMessage$Source": "

A specific source to return parameters for.

Valid Values:

  • customer

  • engine

  • service

", "DescribeDBClusterParametersMessage$Marker": "

An optional pagination token provided by a previous DescribeDBClusterParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeDBClusterSnapshotAttributesMessage$DBClusterSnapshotIdentifier": "

The identifier for the DB cluster snapshot to describe the attributes for.

", "DescribeDBClusterSnapshotsMessage$DBClusterIdentifier": "

The ID of the DB cluster to retrieve the list of DB cluster snapshots for. This parameter can't be used in conjunction with the DBClusterSnapshotIdentifier parameter. This parameter isn't case-sensitive.

Constraints:

  • If supplied, must match the identifier of an existing DBCluster.

", @@ -4481,9 +4762,9 @@ "DescribeDBClusterSnapshotsMessage$DbClusterResourceId": "

A specific DB cluster resource ID to describe.

", "DescribeDBClustersMessage$DBClusterIdentifier": "

The user-supplied DB cluster identifier or the Amazon Resource Name (ARN) of the DB cluster. If this parameter is specified, information for only the specific DB cluster is returned. This parameter isn't case-sensitive.

Constraints:

  • If supplied, must match an existing DB cluster identifier.

", "DescribeDBClustersMessage$Marker": "

An optional pagination token provided by a previous DescribeDBClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeDBEngineVersionsMessage$Engine": "

The database engine to return.

Valid Values:

  • aurora-mysql

  • aurora-postgresql

  • custom-oracle-ee

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", - "DescribeDBEngineVersionsMessage$EngineVersion": "

The database engine version to return.

Example: 5.1.49

", - "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

The name of a specific DB parameter group family to return details for.

Constraints:

  • If supplied, must match an existing DBParameterGroupFamily.

", + "DescribeDBEngineVersionsMessage$Engine": "

The database engine to return version details for.

Valid Values:

  • aurora-mysql

  • aurora-postgresql

  • custom-oracle-ee

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "DescribeDBEngineVersionsMessage$EngineVersion": "

A specific database engine version to return details for.

Example: 5.1.49

", + "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

The name of a specific DB parameter group family to return details for.

Constraints:

  • If supplied, must match an existing DB parameter group family.

", "DescribeDBEngineVersionsMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeDBInstanceAutomatedBackupsMessage$DbiResourceId": "

The resource ID of the DB instance that is the source of the automated backup. This parameter isn't case-sensitive.

", "DescribeDBInstanceAutomatedBackupsMessage$DBInstanceIdentifier": "

(Optional) The user-supplied instance identifier. If this parameter is specified, it must match the identifier of an existing DB instance. It returns information from the specific DB instance's automated backup. This parameter isn't case-sensitive.

", @@ -4517,6 +4798,11 @@ "DescribeDBSecurityGroupsMessage$DBSecurityGroupName": "

The name of the DB security group to return details for.

", "DescribeDBSecurityGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeDBSecurityGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeDBSnapshotAttributesMessage$DBSnapshotIdentifier": "

The identifier for the DB snapshot to describe the attributes for.

", + "DescribeDBSnapshotTenantDatabasesMessage$DBInstanceIdentifier": "

The ID of the DB instance used to create the DB snapshots. This parameter isn't case-sensitive.

Constraints:

  • If supplied, must match the identifier of an existing DBInstance.

", + "DescribeDBSnapshotTenantDatabasesMessage$DBSnapshotIdentifier": "

The ID of a DB snapshot that contains the tenant databases to describe. This value is stored as a lowercase string.

Constraints:

  • If you specify this parameter, the value must match the ID of an existing DB snapshot.

  • If you specify an automatic snapshot, you must also specify SnapshotType.

", + "DescribeDBSnapshotTenantDatabasesMessage$SnapshotType": "

The type of DB snapshots to be returned. You can specify one of the following values:

  • automated – All DB snapshots that have been automatically taken by Amazon RDS for my Amazon Web Services account.

  • manual – All DB snapshots that have been taken by my Amazon Web Services account.

  • shared – All manual DB snapshots that have been shared to my Amazon Web Services account.

  • public – All DB snapshots that have been marked as public.

  • awsbackup – All DB snapshots managed by the Amazon Web Services Backup service.

", + "DescribeDBSnapshotTenantDatabasesMessage$Marker": "

An optional pagination token provided by a previous DescribeDBSnapshotTenantDatabases request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", + "DescribeDBSnapshotTenantDatabasesMessage$DbiResourceId": "

A specific DB resource identifier to describe.

", "DescribeDBSnapshotsMessage$DBInstanceIdentifier": "

The ID of the DB instance to retrieve the list of DB snapshots for. This parameter isn't case-sensitive.

Constraints:

  • If supplied, must match the identifier of an existing DBInstance.

", "DescribeDBSnapshotsMessage$DBSnapshotIdentifier": "

A specific DB snapshot identifier to describe. This value is stored as a lowercase string.

Constraints:

  • If supplied, must match the identifier of an existing DBSnapshot.

  • If this identifier is for an automated snapshot, the SnapshotType parameter must also be specified.

", "DescribeDBSnapshotsMessage$SnapshotType": "

The type of snapshots to be returned. You can specify one of the following values:

  • automated - Return all DB snapshots that have been automatically taken by Amazon RDS for my Amazon Web Services account.

  • manual - Return all DB snapshots that have been taken by my Amazon Web Services account.

  • shared - Return all manual DB snapshots that have been shared to my Amazon Web Services account.

  • public - Return all DB snapshots that have been marked as public.

  • awsbackup - Return the DB snapshots managed by the Amazon Web Services Backup service.

    For information about Amazon Web Services Backup, see the Amazon Web Services Backup Developer Guide.

    The awsbackup type does not apply to Aurora.

If you don't specify a SnapshotType value, then both automated and manual snapshots are returned. Shared and public DB snapshots are not included in the returned results by default. You can include shared snapshots with these results by enabling the IncludeShared parameter. You can include public snapshots with these results by enabling the IncludePublic parameter.

The IncludeShared and IncludePublic parameters don't apply for SnapshotType values of manual or automated. The IncludePublic parameter doesn't apply when SnapshotType is set to shared. The IncludeShared parameter doesn't apply when SnapshotType is set to public.

", @@ -4526,9 +4812,9 @@ "DescribeDBSubnetGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeEngineDefaultClusterParametersMessage$DBParameterGroupFamily": "

The name of the DB cluster parameter group family to return engine parameter information for.

", "DescribeEngineDefaultClusterParametersMessage$Marker": "

An optional pagination token provided by a previous DescribeEngineDefaultClusterParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

The name of the DB parameter group family.

Valid Values:

  • aurora-mysql5.7

  • aurora-mysql8.0

  • aurora-postgresql10

  • aurora-postgresql11

  • aurora-postgresql12

  • aurora-postgresql13

  • aurora-postgresql14

  • custom-oracle-ee-19

  • mariadb10.2

  • mariadb10.3

  • mariadb10.4

  • mariadb10.5

  • mariadb10.6

  • mysql5.7

  • mysql8.0

  • oracle-ee-19

  • oracle-ee-cdb-19

  • oracle-ee-cdb-21

  • oracle-se2-19

  • oracle-se2-cdb-19

  • oracle-se2-cdb-21

  • postgres10

  • postgres11

  • postgres12

  • postgres13

  • postgres14

  • sqlserver-ee-11.0

  • sqlserver-ee-12.0

  • sqlserver-ee-13.0

  • sqlserver-ee-14.0

  • sqlserver-ee-15.0

  • sqlserver-ex-11.0

  • sqlserver-ex-12.0

  • sqlserver-ex-13.0

  • sqlserver-ex-14.0

  • sqlserver-ex-15.0

  • sqlserver-se-11.0

  • sqlserver-se-12.0

  • sqlserver-se-13.0

  • sqlserver-se-14.0

  • sqlserver-se-15.0

  • sqlserver-web-11.0

  • sqlserver-web-12.0

  • sqlserver-web-13.0

  • sqlserver-web-14.0

  • sqlserver-web-15.0

", + "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

The name of the DB parameter group family.

Valid Values:

  • aurora-mysql5.7

  • aurora-mysql8.0

  • aurora-postgresql10

  • aurora-postgresql11

  • aurora-postgresql12

  • aurora-postgresql13

  • aurora-postgresql14

  • custom-oracle-ee-19

  • db2-ae

  • db2-se

  • mariadb10.2

  • mariadb10.3

  • mariadb10.4

  • mariadb10.5

  • mariadb10.6

  • mysql5.7

  • mysql8.0

  • oracle-ee-19

  • oracle-ee-cdb-19

  • oracle-ee-cdb-21

  • oracle-se2-19

  • oracle-se2-cdb-19

  • oracle-se2-cdb-21

  • postgres10

  • postgres11

  • postgres12

  • postgres13

  • postgres14

  • sqlserver-ee-11.0

  • sqlserver-ee-12.0

  • sqlserver-ee-13.0

  • sqlserver-ee-14.0

  • sqlserver-ee-15.0

  • sqlserver-ex-11.0

  • sqlserver-ex-12.0

  • sqlserver-ex-13.0

  • sqlserver-ex-14.0

  • sqlserver-ex-15.0

  • sqlserver-se-11.0

  • sqlserver-se-12.0

  • sqlserver-se-13.0

  • sqlserver-se-14.0

  • sqlserver-se-15.0

  • sqlserver-web-11.0

  • sqlserver-web-12.0

  • sqlserver-web-13.0

  • sqlserver-web-14.0

  • sqlserver-web-15.0

", "DescribeEngineDefaultParametersMessage$Marker": "

An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeEventCategoriesMessage$SourceType": "

The type of source that is generating the events. For RDS Proxy events, specify db-proxy.

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", + "DescribeEventCategoriesMessage$SourceType": "

The type of source that is generating the events. For RDS Proxy events, specify db-proxy.

Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", "DescribeEventSubscriptionsMessage$SubscriptionName": "

The name of the RDS event notification subscription you want to describe.

", "DescribeEventSubscriptionsMessage$Marker": "

An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

", "DescribeEventsMessage$SourceIdentifier": "

The identifier of the event source for which events are returned. If not specified, then all sources are included in the response.

Constraints:

  • If SourceIdentifier is supplied, SourceType must also be provided.

  • If the source type is a DB instance, a DBInstanceIdentifier value must be supplied.

  • If the source type is a DB cluster, a DBClusterIdentifier value must be supplied.

  • If the source type is a DB parameter group, a DBParameterGroupName value must be supplied.

  • If the source type is a DB security group, a DBSecurityGroupName value must be supplied.

  • If the source type is a DB snapshot, a DBSnapshotIdentifier value must be supplied.

  • If the source type is a DB cluster snapshot, a DBClusterSnapshotIdentifier value must be supplied.

  • If the source type is an RDS Proxy, a DBProxyName value must be supplied.

  • Can't end with a hyphen or contain two consecutive hyphens.

", @@ -4538,18 +4824,18 @@ "DescribeExportTasksMessage$Marker": "

An optional pagination token provided by a previous DescribeExportTasks request. If you specify this parameter, the response includes only records beyond the marker, up to the value specified by the MaxRecords parameter.

", "DescribeGlobalClustersMessage$GlobalClusterIdentifier": "

The user-supplied DB cluster identifier. If this parameter is specified, information from only the specific DB cluster is returned. This parameter isn't case-sensitive.

Constraints:

  • If supplied, must match an existing DBClusterIdentifier.

", "DescribeGlobalClustersMessage$Marker": "

An optional pagination token provided by a previous DescribeGlobalClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeOptionGroupOptionsMessage$EngineName": "

A required parameter. Options available for the given engine name are described.

Valid Values:

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "DescribeOptionGroupOptionsMessage$EngineName": "

The name of the engine to describe options for.

Valid Values:

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

If specified, filters the results to include only options for the specified major engine version.

", "DescribeOptionGroupOptionsMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeOptionGroupsMessage$OptionGroupName": "

The name of the option group to describe. Can't be supplied together with EngineName or MajorEngineVersion.

", "DescribeOptionGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeOptionGroupsMessage$EngineName": "

Filters the list of option groups to only include groups associated with a specific database engine.

Valid Values:

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "DescribeOptionGroupsMessage$EngineName": "

A filter to only include option groups associated with this database engine.

Valid Values:

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", "DescribeOptionGroupsMessage$MajorEngineVersion": "

Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

", - "DescribeOrderableDBInstanceOptionsMessage$Engine": "

The name of the engine to retrieve DB instance options for.

Valid Values:

  • aurora-mysql

  • aurora-postgresql

  • custom-oracle-ee

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", - "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

", - "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

", - "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

RDS Custom supports only the BYOL licensing model.

", - "DescribeOrderableDBInstanceOptionsMessage$AvailabilityZoneGroup": "

The Availability Zone group associated with a Local Zone. Specify this parameter to retrieve available offerings for the Local Zones in the group.

Omit this parameter to show the available offerings in the specified Amazon Web Services Region.

This setting doesn't apply to RDS Custom.

", + "DescribeOrderableDBInstanceOptionsMessage$Engine": "

The name of the engine to describe DB instance options for.

Valid Values:

  • aurora-mysql

  • aurora-postgresql

  • custom-oracle-ee

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

A filter to include only the available options for the specified engine version.

", + "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

A filter to include only the available options for the specified DB instance class.

", + "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

A filter to include only the available options for the specified license model.

RDS Custom supports only the BYOL licensing model.

", + "DescribeOrderableDBInstanceOptionsMessage$AvailabilityZoneGroup": "

The Availability Zone group associated with a Local Zone. Specify this parameter to retrieve available options for the Local Zones in the group.

Omit this parameter to show the available options in the specified Amazon Web Services Region.

This setting doesn't apply to RDS Custom DB instances.

", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribePendingMaintenanceActionsMessage$ResourceIdentifier": "

The ARN of a resource to return pending maintenance actions for.

", "DescribePendingMaintenanceActionsMessage$Marker": "

An optional pagination token provided by a previous DescribePendingMaintenanceActions request. If this parameter is specified, the response includes only records beyond the marker, up to a number of records specified by MaxRecords.

", @@ -4569,6 +4855,9 @@ "DescribeReservedDBInstancesOfferingsMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeSourceRegionsMessage$RegionName": "

The source Amazon Web Services Region name. For example, us-east-1.

Constraints:

  • Must specify a valid Amazon Web Services Region name.

", "DescribeSourceRegionsMessage$Marker": "

An optional pagination token provided by a previous DescribeSourceRegions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", + "DescribeTenantDatabasesMessage$DBInstanceIdentifier": "

The user-supplied DB instance identifier, which must match the identifier of an existing instance owned by the Amazon Web Services account. This parameter isn't case-sensitive.

", + "DescribeTenantDatabasesMessage$TenantDBName": "

The user-supplied tenant database name, which must match the name of an existing tenant database on the specified DB instance owned by your Amazon Web Services account. This parameter isn’t case-sensitive.

", + "DescribeTenantDatabasesMessage$Marker": "

An optional pagination token provided by a previous DescribeTenantDatabases request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeValidDBInstanceModificationsMessage$DBInstanceIdentifier": "

The customer identifier or the ARN of your DB instance.

", "DomainMembership$Domain": "

The identifier of the Active Directory Domain.

", "DomainMembership$Status": "

The status of the Active Directory Domain membership for the DB instance or cluster. Values include joined, pending-join, failed, and so on.

", @@ -4585,6 +4874,8 @@ "EC2SecurityGroup$EC2SecurityGroupName": "

Specifies the name of the EC2 security group.

", "EC2SecurityGroup$EC2SecurityGroupId": "

Specifies the id of the EC2 security group.

", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

Specifies the Amazon Web Services ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

", + "EncryptionContextMap$key": null, + "EncryptionContextMap$value": null, "Endpoint$Address": "

Specifies the DNS address of the DB instance.

", "Endpoint$HostedZoneId": "

Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

", "EngineDefaults$DBParameterGroupFamily": "

Specifies the name of the DB parameter group family that the engine default parameters apply to.

", @@ -4606,7 +4897,7 @@ "EventsMessage$Marker": "

An optional pagination token provided by a previous Events request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "ExportTask$ExportTaskIdentifier": "

A unique identifier for the snapshot or cluster export task. This ID isn't an identifier for the Amazon S3 bucket where the data is exported.

", "ExportTask$SourceArn": "

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.

", - "ExportTask$S3Bucket": "

The Amazon S3 bucket that the snapshot or cluster is exported to.

", + "ExportTask$S3Bucket": "

The Amazon S3 bucket where the snapshot or cluster is exported to.

", "ExportTask$S3Prefix": "

The Amazon S3 bucket prefix that is the file name and path of the exported data.

", "ExportTask$IamRoleArn": "

The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot or cluster.

", "ExportTask$KmsKeyId": "

The key identifier of the Amazon Web Services KMS key that is used to encrypt the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, key ID, alias ARN, or alias name. The IAM role used for the export must have encryption and decryption permissions to use this KMS key.

", @@ -4614,7 +4905,7 @@ "ExportTask$FailureCause": "

The reason the export failed, if it failed.

", "ExportTask$WarningMessage": "

A warning about the snapshot or cluster export task.

", "ExportTasksMessage$Marker": "

A pagination token that can be used in a later DescribeExportTasks request. A marker is used for pagination to identify the location to begin output for the next response of DescribeExportTasks.

", - "FailoverDBClusterMessage$DBClusterIdentifier": "

A DB cluster identifier to force a failover for. This parameter isn't case-sensitive.

Constraints:

  • Must match the identifier of an existing DBCluster.

", + "FailoverDBClusterMessage$DBClusterIdentifier": "

The identifier of the DB cluster to force a failover for. This parameter isn't case-sensitive.

Constraints:

  • Must match the identifier of an existing DB cluster.

", "FailoverDBClusterMessage$TargetDBInstanceIdentifier": "

The name of the DB instance to promote to the primary DB instance.

Specify the DB instance identifier for an Aurora Replica or a Multi-AZ readable standby in the DB cluster, for example mydbcluster-replica1.

This setting isn't supported for RDS for MySQL Multi-AZ DB clusters.

", "FailoverState$FromDbClusterArn": "

The Amazon Resource Name (ARN) of the Aurora DB cluster that is currently being demoted, and which is associated with this state.

", "FailoverState$ToDbClusterArn": "

The Amazon Resource Name (ARN) of the Aurora DB cluster that is currently being promoted, and which is associated with this state.

", @@ -4630,8 +4921,11 @@ "GlobalCluster$DatabaseName": "

The default database name within the new global database cluster.

", "GlobalClusterMember$DBClusterArn": "

The Amazon Resource Name (ARN) for each Aurora DB cluster in the global cluster.

", "GlobalClustersMessage$Marker": "

An optional pagination token provided by a previous DescribeGlobalClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "IPRange$Status": "

Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

", - "IPRange$CIDRIP": "

Specifies the IP range.

", + "IPRange$Status": "

The status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

", + "IPRange$CIDRIP": "

The IP range.

", + "Integration$KMSKeyId": "

The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key used to to encrypt the integration.

", + "IntegrationError$ErrorCode": "

The error code associated with the integration.

", + "IntegrationError$ErrorMessage": "

A message explaining the error.

", "KeyList$member": null, "ListTagsForResourceMessage$ResourceName": "

The Amazon RDS resource with tags to be listed. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an ARN for Amazon RDS in the Amazon RDS User Guide.

", "LogTypeList$member": null, @@ -4670,21 +4964,21 @@ "ModifyDBClusterSnapshotAttributeMessage$DBClusterSnapshotIdentifier": "

The identifier for the DB cluster snapshot to modify the attributes for.

", "ModifyDBClusterSnapshotAttributeMessage$AttributeName": "

The name of the DB cluster snapshot attribute to modify.

To manage authorization for other Amazon Web Services accounts to copy or restore a manual DB cluster snapshot, set this value to restore.

To view the list of attributes available to modify, use the DescribeDBClusterSnapshotAttributes API operation.

", "ModifyDBInstanceMessage$DBInstanceIdentifier": "

The identifier of DB instance to modify. This value is stored as a lowercase string.

Constraints:

  • Must match the identifier of an existing DB instance.

", - "ModifyDBInstanceMessage$DBInstanceClass": "

The new compute and memory capacity of the DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide. For RDS Custom, see DB instance class support for RDS Custom for Oracle and DB instance class support for RDS Custom for SQL Server.

If you modify the DB instance class, an outage occurs during the change. The change is applied during the next maintenance window, unless you specify ApplyImmediately in your request.

Default: Uses existing setting

", + "ModifyDBInstanceMessage$DBInstanceClass": "

The new compute and memory capacity of the DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide. For RDS Custom, see DB instance class support for RDS Custom for Oracle and DB instance class support for RDS Custom for SQL Server.

If you modify the DB instance class, an outage occurs during the change. The change is applied during the next maintenance window, unless you specify ApplyImmediately in your request.

Default: Uses existing setting

Constraints:

  • If you are modifying the DB instance class and upgrading the engine version at the same time, the currently running engine version must be supported on the specified DB instance class. Otherwise, the operation returns an error. In this case, first run the operation to upgrade the engine version, and then run it again to modify the DB instance class.

", "ModifyDBInstanceMessage$DBSubnetGroupName": "

The new DB subnet group for the DB instance. You can use this parameter to move your DB instance to a different VPC. If your DB instance isn't in a VPC, you can also use this parameter to move your DB instance into a VPC. For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Changing the subnet group causes an outage during the change. The change is applied during the next maintenance window, unless you enable ApplyImmediately.

This parameter doesn't apply to RDS Custom DB instances.

Constraints:

  • If supplied, must match existing DB subnet group.

Example: mydbsubnetgroup

", - "ModifyDBInstanceMessage$MasterUserPassword": "

The new password for the master user.

Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

Amazon RDS API operations never return the password, so this action provides a way to regain access to a primary instance user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (The password for the master user is managed by the DB cluster. For more information, see ModifyDBCluster.)

  • RDS Custom

Default: Uses existing setting

Constraints:

  • Can't be specified if ManageMasterUserPassword is turned on.

  • Can include any printable ASCII character except \"/\", \"\"\", or \"@\".

Length Constraints:

  • RDS for MariaDB - Must contain from 8 to 41 characters.

  • RDS for Microsoft SQL Server - Must contain from 8 to 128 characters.

  • RDS for MySQL - Must contain from 8 to 41 characters.

  • RDS for Oracle - Must contain from 8 to 30 characters.

  • RDS for PostgreSQL - Must contain from 8 to 128 characters.

", + "ModifyDBInstanceMessage$MasterUserPassword": "

The new password for the master user.

Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

Amazon RDS API operations never return the password, so this operation provides a way to regain access to a primary instance user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (The password for the master user is managed by the DB cluster. For more information, see ModifyDBCluster.)

  • RDS Custom

Default: Uses existing setting

Constraints:

  • Can't be specified if ManageMasterUserPassword is turned on.

  • Can include any printable ASCII character except \"/\", \"\"\", or \"@\". For RDS for Oracle, can't include the \"&\" (ampersand) or the \"'\" (single quotes) character.

Length Constraints:

  • RDS for Db2 - Must contain from 8 to 255 characters.

  • RDS for MariaDB - Must contain from 8 to 41 characters.

  • RDS for Microsoft SQL Server - Must contain from 8 to 128 characters.

  • RDS for MySQL - Must contain from 8 to 41 characters.

  • RDS for Oracle - Must contain from 8 to 30 characters.

  • RDS for PostgreSQL - Must contain from 8 to 128 characters.

", "ModifyDBInstanceMessage$DBParameterGroupName": "

The name of the DB parameter group to apply to the DB instance.

Changing this setting doesn't result in an outage. The parameter group name itself is changed immediately, but the actual parameter changes are not applied until you reboot the instance without failover. In this case, the DB instance isn't rebooted automatically, and the parameter changes aren't applied during the next maintenance window. However, if you modify dynamic parameters in the newly associated DB parameter group, these changes are applied immediately without a reboot.

This setting doesn't apply to RDS Custom DB instances.

Default: Uses existing setting

Constraints:

  • Must be in the same DB parameter group family as the DB instance.

", "ModifyDBInstanceMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod parameter. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is managed by the DB cluster. For more information, see ModifyDBCluster.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, which might result in an outage. Changing this parameter doesn't result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter causes a reboot of the DB instance. If you change this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

Default: Uses existing setting

Constraints:

  • Must be in the format ddd:hh24:mi-ddd:hh24:mi.

  • The day values must be mon | tue | wed | thu | fri | sat | sun.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred backup window.

  • Must be at least 30 minutes.

", - "ModifyDBInstanceMessage$EngineVersion": "

The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

For major version upgrades, if a nondefault DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

If you specify only a major version, Amazon RDS updates the DB instance to the default minor version if the current minor version is lower. For information about valid engine versions, see CreateDBInstance, or call DescribeDBEngineVersions.

If the instance that you're modifying is acting as a read replica, the engine version that you specify must be the same or higher than the version that the source DB instance or cluster is running.

In RDS Custom for Oracle, this parameter is supported for read replicas only if they are in the PATCH_DB_FAILURE lifecycle.

", - "ModifyDBInstanceMessage$LicenseModel": "

The license model for the DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

  • RDS for MariaDB - general-public-license

  • RDS for Microsoft SQL Server - license-included

  • RDS for MySQL - general-public-license

  • RDS for Oracle - bring-your-own-license | license-included

  • RDS for PostgreSQL - postgresql-license

", + "ModifyDBInstanceMessage$EngineVersion": "

The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

For major version upgrades, if a nondefault DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

If you specify only a major version, Amazon RDS updates the DB instance to the default minor version if the current minor version is lower. For information about valid engine versions, see CreateDBInstance, or call DescribeDBEngineVersions.

If the instance that you're modifying is acting as a read replica, the engine version that you specify must be the same or higher than the version that the source DB instance or cluster is running.

In RDS Custom for Oracle, this parameter is supported for read replicas only if they are in the PATCH_DB_FAILURE lifecycle.

Constraints:

  • If you are upgrading the engine version and modifying the DB instance class at the same time, the currently running engine version must be supported on the specified DB instance class. Otherwise, the operation returns an error. In this case, first run the operation to upgrade the engine version, and then run it again to modify the DB instance class.

", + "ModifyDBInstanceMessage$LicenseModel": "

The license model for the DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

  • RDS for Db2 - bring-your-own-license

  • RDS for MariaDB - general-public-license

  • RDS for Microsoft SQL Server - license-included

  • RDS for MySQL - general-public-license

  • RDS for Oracle - bring-your-own-license | license-included

  • RDS for PostgreSQL - postgresql-license

", "ModifyDBInstanceMessage$OptionGroupName": "

The option group to associate the DB instance with.

Changing this parameter doesn't result in an outage, with one exception. If the parameter change results in an option group that enables OEM, it can cause a brief period, lasting less than a second, during which new connections are rejected but existing connections aren't interrupted.

The change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

The new identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot occurs immediately if you enable ApplyImmediately, or will occur during the next maintenance window if you disable ApplyImmediately. This value is stored as a lowercase string.

This setting doesn't apply to RDS Custom DB instances.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • The first character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Example: mydbinstance

", "ModifyDBInstanceMessage$StorageType": "

The storage type to associate with the DB instance.

If you specify Provisioned IOPS (io1), you must also include a value for the Iops parameter.

If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance are suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

Valid Values: gp2 | gp3 | io1 | standard

Default: io1, if the Iops parameter is specified. Otherwise, gp2.

", "ModifyDBInstanceMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$CACertificateIdentifier": "

The CA certificate identifier to use for the DB instance's server certificate.

This setting doesn't apply to RDS Custom DB instances.

For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

", - "ModifyDBInstanceMessage$Domain": "

The Active Directory directory ID to move the DB instance to. Specify none to remove the instance from its current domain. You must create the domain before this operation. Currently, you can create only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", + "ModifyDBInstanceMessage$Domain": "

The Active Directory directory ID to move the DB instance to. Specify none to remove the instance from its current domain. You must create the domain before this operation. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

  • Can't be longer than 64 characters.

Example: mymanagedADtest.mymanagedAD.mydomain

", "ModifyDBInstanceMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

  • Must be in the distinguished name format.

  • Can't be longer than 64 characters.

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "ModifyDBInstanceMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", @@ -4704,17 +4998,20 @@ "ModifyDBSnapshotAttributeMessage$DBSnapshotIdentifier": "

The identifier for the DB snapshot to modify the attributes for.

", "ModifyDBSnapshotAttributeMessage$AttributeName": "

The name of the DB snapshot attribute to modify.

To manage authorization for other Amazon Web Services accounts to copy or restore a manual DB snapshot, set this value to restore.

To view the list of attributes available to modify, use the DescribeDBSnapshotAttributes API operation.

", "ModifyDBSnapshotMessage$DBSnapshotIdentifier": "

The identifier of the DB snapshot to modify.

", - "ModifyDBSnapshotMessage$EngineVersion": "

The engine version to upgrade the DB snapshot to.

The following are the database engines and engine versions that are available when you upgrade a DB snapshot.

MySQL

  • 5.5.46 (supported for 5.1 DB snapshots)

Oracle

  • 19.0.0.0.ru-2022-01.rur-2022-01.r1 (supported for 12.2.0.1 DB snapshots)

  • 19.0.0.0.ru-2022-07.rur-2022-07.r1 (supported for 12.1.0.2 DB snapshots)

  • 12.1.0.2.v8 (supported for 12.1.0.1 DB snapshots)

  • 11.2.0.4.v12 (supported for 11.2.0.2 DB snapshots)

  • 11.2.0.4.v11 (supported for 11.2.0.3 DB snapshots)

PostgreSQL

For the list of engine versions that are available for upgrading a DB snapshot, see Upgrading the PostgreSQL DB Engine for Amazon RDS.

", + "ModifyDBSnapshotMessage$EngineVersion": "

The engine version to upgrade the DB snapshot to.

The following are the database engines and engine versions that are available when you upgrade a DB snapshot.

MySQL

For the list of engine versions that are available for upgrading a DB snapshot, see Upgrading a MySQL DB snapshot engine version in the Amazon RDS User Guide.

Oracle

  • 19.0.0.0.ru-2022-01.rur-2022-01.r1 (supported for 12.2.0.1 DB snapshots)

  • 19.0.0.0.ru-2022-07.rur-2022-07.r1 (supported for 12.1.0.2 DB snapshots)

  • 12.1.0.2.v8 (supported for 12.1.0.1 DB snapshots)

  • 11.2.0.4.v12 (supported for 11.2.0.2 DB snapshots)

  • 11.2.0.4.v11 (supported for 11.2.0.3 DB snapshots)

PostgreSQL

For the list of engine versions that are available for upgrading a DB snapshot, see Upgrading a PostgreSQL DB snapshot engine version in the Amazon RDS User Guide.

", "ModifyDBSnapshotMessage$OptionGroupName": "

The option group to identify with the upgraded DB snapshot.

You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see Option group considerations in the Amazon RDS User Guide.

", "ModifyDBSubnetGroupMessage$DBSubnetGroupName": "

The name for the DB subnet group. This value is stored as a lowercase string. You can't modify the default subnet group.

Constraints: Must match the name of an existing DBSubnetGroup. Must not be default.

Example: mydbsubnetgroup

", "ModifyDBSubnetGroupMessage$DBSubnetGroupDescription": "

The description for the DB subnet group.

", "ModifyEventSubscriptionMessage$SubscriptionName": "

The name of the RDS event notification subscription.

", "ModifyEventSubscriptionMessage$SnsTopicArn": "

The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

", - "ModifyEventSubscriptionMessage$SourceType": "

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't specified, all events are returned.

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", + "ModifyEventSubscriptionMessage$SourceType": "

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't specified, all events are returned.

Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", "ModifyGlobalClusterMessage$GlobalClusterIdentifier": "

The cluster identifier for the global cluster to modify. This parameter isn't case-sensitive.

Constraints:

  • Must match the identifier of an existing global database cluster.

", "ModifyGlobalClusterMessage$NewGlobalClusterIdentifier": "

The new cluster identifier for the global database cluster. This value is stored as a lowercase string.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • The first character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Example: my-cluster2

", "ModifyGlobalClusterMessage$EngineVersion": "

The version number of the database engine to which you want to upgrade.

To list all of the available engine versions for aurora-mysql (for MySQL-based Aurora global databases), use the following command:

aws rds describe-db-engine-versions --engine aurora-mysql --query '*[]|[?SupportsGlobalDatabases == `true`].[EngineVersion]'

To list all of the available engine versions for aurora-postgresql (for PostgreSQL-based Aurora global databases), use the following command:

aws rds describe-db-engine-versions --engine aurora-postgresql --query '*[]|[?SupportsGlobalDatabases == `true`].[EngineVersion]'

", "ModifyOptionGroupMessage$OptionGroupName": "

The name of the option group to be modified.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance once it is associated with a DB instance

", + "ModifyTenantDatabaseMessage$DBInstanceIdentifier": "

The identifier of the DB instance that contains the tenant database that you are modifying. This parameter isn't case-sensitive.

Constraints:

  • Must match the identifier of an existing DB instance.

", + "ModifyTenantDatabaseMessage$TenantDBName": "

The user-supplied name of the tenant database that you want to modify. This parameter isn’t case-sensitive.

Constraints:

  • Must match the identifier of an existing tenant database.

", + "ModifyTenantDatabaseMessage$NewTenantDBName": "

The new name of the tenant database when renaming a tenant database. This parameter isn’t case-sensitive.

Constraints:

  • Can't be the string null or any other reserved word.

  • Can't be longer than 8 characters.

", "Option$OptionName": "

The name of the option.

", "Option$OptionDescription": "

The description of the option.

", "Option$OptionVersion": "

The version of the option.

", @@ -4758,13 +5055,13 @@ "OrderableDBInstanceOption$DBInstanceClass": "

The DB instance class for a DB instance.

", "OrderableDBInstanceOption$LicenseModel": "

The license model for a DB instance.

", "OrderableDBInstanceOption$AvailabilityZoneGroup": "

The Availability Zone group for a DB instance.

", - "OrderableDBInstanceOption$StorageType": "

Indicates the storage type for a DB instance.

", + "OrderableDBInstanceOption$StorageType": "

The storage type for a DB instance.

", "OrderableDBInstanceOptionsMessage$Marker": "

An optional pagination token provided by a previous OrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "Outpost$Arn": "

The Amazon Resource Name (ARN) of the Outpost.

", - "Parameter$ParameterName": "

Specifies the name of the parameter.

", - "Parameter$ParameterValue": "

Specifies the value of the parameter.

", + "Parameter$ParameterName": "

The name of the parameter.

", + "Parameter$ParameterValue": "

The value of the parameter.

", "Parameter$Description": "

Provides a description of the parameter.

", - "Parameter$Source": "

Indicates the source of the parameter value.

", + "Parameter$Source": "

The source of the parameter value.

", "Parameter$ApplyType": "

Specifies the engine specific parameters type.

", "Parameter$DataType": "

Specifies the valid data type for the parameter.

", "Parameter$AllowedValues": "

Specifies the valid range of values for the parameter.

", @@ -4789,6 +5086,8 @@ "PromoteReadReplicaMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferingId": "

The ID of the Reserved DB instance offering to purchase.

Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstanceId": "

Customer-specified identifier to track this reservation.

Example: myreservationID

", + "RdsCustomClusterConfiguration$InterconnectSubnetId": "

Reserved for future use.

", + "RdsCustomClusterConfiguration$TransitGatewayMulticastDomainId": "

Reserved for future use.

", "ReadReplicaDBClusterIdentifierList$member": null, "ReadReplicaDBInstanceIdentifierList$member": null, "ReadReplicaIdentifierList$member": null, @@ -4841,16 +5140,16 @@ "RestoreDBClusterFromS3Message$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. To view the time blocks available, see Backup window in the Amazon Aurora User Guide.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

", "RestoreDBClusterFromS3Message$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon Aurora User Guide.

Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

Constraints: Minimum 30-minute window.

", "RestoreDBClusterFromS3Message$KmsKeyId": "

The Amazon Web Services KMS key identifier for an encrypted DB cluster.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

If the StorageEncrypted parameter is enabled, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS will use your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", - "RestoreDBClusterFromS3Message$SourceEngine": "

The identifier for the database engine that was backed up to create the files stored in the Amazon S3 bucket.

Valid values: mysql

", + "RestoreDBClusterFromS3Message$SourceEngine": "

The identifier for the database engine that was backed up to create the files stored in the Amazon S3 bucket.

Valid Values: mysql

", "RestoreDBClusterFromS3Message$SourceEngineVersion": "

The version of the database that the backup files were created from.

MySQL versions 5.7 and 8.0 are supported.

Example: 5.7.40, 8.0.28

", "RestoreDBClusterFromS3Message$S3BucketName": "

The name of the Amazon S3 bucket that contains the data used to create the Amazon Aurora DB cluster.

", "RestoreDBClusterFromS3Message$S3Prefix": "

The prefix for all of the file names that contain the data used to create the Amazon Aurora DB cluster. If you do not specify a SourceS3Prefix value, then the Amazon Aurora DB cluster is created by using all of the files in the Amazon S3 bucket.

", "RestoreDBClusterFromS3Message$S3IngestionRoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that authorizes Amazon RDS to access the Amazon S3 bucket on your behalf.

", "RestoreDBClusterFromS3Message$Domain": "

Specify the Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation.

For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication to authenticate users that connect to the DB cluster. For more information, see Kerberos Authentication in the Amazon Aurora User Guide.

", "RestoreDBClusterFromS3Message$DomainIAMRoleName": "

Specify the name of the IAM role to be used when making API calls to the Directory Service.

", - "RestoreDBClusterFromS3Message$NetworkType": "

The network type of the DB cluster.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

", + "RestoreDBClusterFromS3Message$NetworkType": "

The network type of the DB cluster.

Valid Values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

", "RestoreDBClusterFromS3Message$MasterUserSecretKmsKeyId": "

The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in Amazon Web Services Secrets Manager.

This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB cluster.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed KMS key.

There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", - "RestoreDBClusterFromS3Message$StorageType": "

Specifies the storage type to be associated with the DB cluster.

Valid values: aurora, aurora-iopt1

Default: aurora

Valid for: Aurora DB clusters only

", + "RestoreDBClusterFromS3Message$StorageType": "

Specifies the storage type to be associated with the DB cluster.

Valid Values: aurora, aurora-iopt1

Default: aurora

Valid for: Aurora DB clusters only

", "RestoreDBClusterFromSnapshotMessage$DBClusterIdentifier": "

The name of the DB cluster to create from the DB snapshot or DB cluster snapshot. This parameter isn't case-sensitive.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

Example: my-snapshot-id

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterFromSnapshotMessage$SnapshotIdentifier": "

The identifier for the DB snapshot or DB cluster snapshot to restore from.

You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can use only the ARN to specify a DB snapshot.

Constraints:

  • Must match the identifier of an existing Snapshot.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterFromSnapshotMessage$Engine": "

The database engine to use for the new DB cluster.

Default: The same as source

Constraint: Must be compatible with the engine of the source

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", @@ -4861,53 +5160,53 @@ "RestoreDBClusterFromSnapshotMessage$KmsKeyId": "

The Amazon Web Services KMS key identifier to use when restoring an encrypted DB cluster from a DB snapshot or DB cluster snapshot.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

When you don't specify a value for the KmsKeyId parameter, then the following occurs:

  • If the DB snapshot or DB cluster snapshot in SnapshotIdentifier is encrypted, then the restored DB cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster snapshot.

  • If the DB snapshot or DB cluster snapshot in SnapshotIdentifier isn't encrypted, then the restored DB cluster isn't encrypted.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterFromSnapshotMessage$EngineMode": "

The DB engine mode of the DB cluster, either provisioned or serverless.

For more information, see CreateDBCluster.

Valid for: Aurora DB clusters only

", "RestoreDBClusterFromSnapshotMessage$DBClusterParameterGroupName": "

The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the default DB cluster parameter group for the specified engine is used.

Constraints:

  • If supplied, must match the name of an existing default DB cluster parameter group.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterFromSnapshotMessage$Domain": "

Specify the Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation. Currently, only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances can be created in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

Valid for: Aurora DB clusters only

", - "RestoreDBClusterFromSnapshotMessage$DomainIAMRoleName": "

Specify the name of the IAM role to be used when making API calls to the Directory Service.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterFromSnapshotMessage$Domain": "

The Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation. Currently, only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances can be created in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterFromSnapshotMessage$DomainIAMRoleName": "

The name of the IAM role to be used when making API calls to the Directory Service.

Valid for: Aurora DB clusters only

", "RestoreDBClusterFromSnapshotMessage$DBClusterInstanceClass": "

The compute and memory capacity of the each DB instance in the Multi-AZ DB cluster, for example db.m6gd.xlarge. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines.

For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Valid for: Multi-AZ DB clusters only

", - "RestoreDBClusterFromSnapshotMessage$StorageType": "

Specifies the storage type to be associated with the DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterFromSnapshotMessage$NetworkType": "

The network type of the DB cluster.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterFromSnapshotMessage$StorageType": "

Specifies the storage type to be associated with the DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid Values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterFromSnapshotMessage$NetworkType": "

The network type of the DB cluster.

Valid Values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", "RestoreDBClusterToPointInTimeMessage$DBClusterIdentifier": "

The name of the new DB cluster to be created.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$RestoreType": "

The type of restore to be performed. You can specify one of the following values:

  • full-copy - The new DB cluster is restored as a full copy of the source DB cluster.

  • copy-on-write - The new DB cluster is restored as a clone of the source DB cluster.

If you don't specify a RestoreType value, then the new DB cluster is restored as a full copy of the source DB cluster.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$SourceDBClusterIdentifier": "

The identifier of the source DB cluster from which to restore.

Constraints:

  • Must match the identifier of an existing DBCluster.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$DBSubnetGroupName": "

The DB subnet group name to use for the new DB cluster.

Constraints: If supplied, must match the name of an existing DBSubnetGroup.

Example: mydbsubnetgroup

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$OptionGroupName": "

The name of the option group for the new DB cluster.

DB clusters are associated with a default option group that can't be modified.

", "RestoreDBClusterToPointInTimeMessage$KmsKeyId": "

The Amazon Web Services KMS key identifier to use when restoring an encrypted DB cluster from an encrypted DB cluster.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

You can restore to a new DB cluster and encrypt the new DB cluster with a KMS key that is different from the KMS key used to encrypt the source DB cluster. The new DB cluster is encrypted with the KMS key identified by the KmsKeyId parameter.

If you don't specify a value for the KmsKeyId parameter, then the following occurs:

  • If the DB cluster is encrypted, then the restored DB cluster is encrypted using the KMS key that was used to encrypt the source DB cluster.

  • If the DB cluster isn't encrypted, then the restored DB cluster isn't encrypted.

If DBClusterIdentifier refers to a DB cluster that isn't encrypted, then the restore request is rejected.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterToPointInTimeMessage$DBClusterParameterGroupName": "

The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the default DB cluster parameter group for the specified engine is used.

Constraints:

  • If supplied, must match the name of an existing DB cluster parameter group.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterToPointInTimeMessage$Domain": "

Specify the Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation.

For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication to authenticate users that connect to the DB cluster. For more information, see Kerberos Authentication in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", - "RestoreDBClusterToPointInTimeMessage$DomainIAMRoleName": "

Specify the name of the IAM role to be used when making API calls to the Directory Service.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterToPointInTimeMessage$DBClusterParameterGroupName": "

The name of the custom DB cluster parameter group to associate with this DB cluster.

If the DBClusterParameterGroupName parameter is omitted, the default DB cluster parameter group for the specified engine is used.

Constraints:

  • If supplied, must match the name of an existing DB cluster parameter group.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterToPointInTimeMessage$Domain": "

The Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation.

For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication to authenticate users that connect to the DB cluster. For more information, see Kerberos Authentication in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterToPointInTimeMessage$DomainIAMRoleName": "

The name of the IAM role to be used when making API calls to the Directory Service.

Valid for: Aurora DB clusters only

", "RestoreDBClusterToPointInTimeMessage$EngineMode": "

The engine mode of the new cluster. Specify provisioned or serverless, depending on the type of the cluster you are creating. You can create an Aurora Serverless v1 clone from a provisioned cluster, or a provisioned clone from an Aurora Serverless v1 cluster. To create a clone that is an Aurora Serverless v1 cluster, the original cluster must be an Aurora Serverless v1 cluster or an encrypted provisioned cluster.

Valid for: Aurora DB clusters only

", - "RestoreDBClusterToPointInTimeMessage$DBClusterInstanceClass": "

The compute and memory capacity of the each DB instance in the Multi-AZ DB cluster, for example db.m6gd.xlarge. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines.

For the full list of DB instance classes, and availability for your engine, see DB instance class in the Amazon RDS User Guide.

Valid for: Multi-AZ DB clusters only

", - "RestoreDBClusterToPointInTimeMessage$StorageType": "

Specifies the storage type to be associated with the DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBClusterToPointInTimeMessage$NetworkType": "

The network type of the DB cluster.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", + "RestoreDBClusterToPointInTimeMessage$DBClusterInstanceClass": "

The compute and memory capacity of the each DB instance in the Multi-AZ DB cluster, for example db.m6gd.xlarge. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines.

For the full list of DB instance classes, and availability for your engine, see DB instance class in the Amazon RDS User Guide.

Valid for: Multi-AZ DB clusters only

", + "RestoreDBClusterToPointInTimeMessage$StorageType": "

Specifies the storage type to be associated with the DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid Values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", + "RestoreDBClusterToPointInTimeMessage$NetworkType": "

The network type of the DB cluster.

Valid Values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", "RestoreDBClusterToPointInTimeMessage$SourceDbClusterResourceId": "

The resource ID of the source DB cluster from which to restore.

", - "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

Name of the DB instance to create from the DB snapshot. This parameter isn't case-sensitive.

Constraints:

  • Must contain from 1 to 63 numbers, letters, or hyphens

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

Example: my-snapshot-id

", - "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

The identifier for the DB snapshot to restore from.

Constraints:

  • Must match the identifier of an existing DBSnapshot.

  • Can't be specified when DBClusterSnapshotIdentifier is specified.

  • Must be specified when DBClusterSnapshotIdentifier isn't specified.

  • If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

", + "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

The name of the DB instance to create from the DB snapshot. This parameter isn't case-sensitive.

Constraints:

  • Must contain from 1 to 63 numbers, letters, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Example: my-snapshot-id

", + "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

The identifier for the DB snapshot to restore from.

Constraints:

  • Must match the identifier of an existing DB snapshot.

  • Can't be specified when DBClusterSnapshotIdentifier is specified.

  • Must be specified when DBClusterSnapshotIdentifier isn't specified.

  • If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

The compute and memory capacity of the Amazon RDS DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: The same DBInstanceClass as the original DB instance.

", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

The Availability Zone (AZ) where the DB instance will be created.

Default: A random, system-chosen Availability Zone.

Constraint: You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

Example: us-east-1a

", - "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

The DB subnet group name to use for the new instance.

Constraints: If supplied, must match the name of an existing DBSubnetGroup.

Example: mydbsubnetgroup

", - "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

License model information for the restored DB instance.

This setting doesn't apply to RDS Custom.

Default: Same as source.

Valid values: license-included | bring-your-own-license | general-public-license

", - "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

The database name for the restored DB instance.

This parameter doesn't apply to the MySQL, PostgreSQL, or MariaDB engines. It also doesn't apply to RDS Custom DB instances.

", - "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Default: The same as source

Constraint: Must be compatible with the engine of the source. For example, you can restore a MariaDB 10.1 DB instance from a MySQL 5.6 snapshot.

Valid Values:

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", + "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

The name of the DB subnet group to use for the new instance.

Constraints:

  • If supplied, must match the name of an existing DB subnet group.

Example: mydbsubnetgroup

", + "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

License model information for the restored DB instance.

This setting doesn't apply to RDS Custom.

Default: Same as source.

Valid Values: license-included | bring-your-own-license | general-public-license

", + "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

The name of the database for the restored DB instance.

This parameter only applies to RDS for Oracle and RDS for SQL Server DB instances. It doesn't apply to the other engines or to RDS Custom DB instances.

", + "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Default: The same as source

Constraint: Must be compatible with the engine of the source. For example, you can restore a MariaDB 10.1 DB instance from a MySQL 5.6 snapshot.

Valid Values:

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": "

The name of the option group to be used for the restored DB instance.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceFromDBSnapshotMessage$StorageType": "

Specifies the storage type to be associated with the DB instance.

Valid values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified, otherwise gp2

", + "RestoreDBInstanceFromDBSnapshotMessage$StorageType": "

Specifies the storage type to be associated with the DB instance.

Valid Values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified, otherwise gp2

", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceFromDBSnapshotMessage$Domain": "

Specify the Active Directory directory ID to restore the DB instance in. The domain/ must be created prior to this operation. Currently, you can create only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceFromDBSnapshotMessage$Domain": "

The Active Directory directory ID to restore the DB instance in. The domain/ must be created prior to this operation. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

  • Can't be longer than 64 characters.

Example: mymanagedADtest.mymanagedAD.mydomain

", "RestoreDBInstanceFromDBSnapshotMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

  • Must be in the distinguished name format.

  • Can't be longer than 64 characters.

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", - "RestoreDBInstanceFromDBSnapshotMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Constraints:

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", + "RestoreDBInstanceFromDBSnapshotMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Constraints:

  • Can't be longer than 64 characters.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", "RestoreDBInstanceFromDBSnapshotMessage$DomainIAMRoleName": "

The name of the IAM role to use when making API calls to the Directory Service.

This setting doesn't apply to RDS Custom DB instances.

", - "RestoreDBInstanceFromDBSnapshotMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you don't specify a value for DBParameterGroupName, then RDS uses the default DBParameterGroup for the specified DB engine.

This setting doesn't apply to RDS Custom.

Constraints:

  • If supplied, must match the name of an existing DBParameterGroup.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", + "RestoreDBInstanceFromDBSnapshotMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you don't specify a value for DBParameterGroupName, then RDS uses the default DBParameterGroup for the specified DB engine.

This setting doesn't apply to RDS Custom.

Constraints:

  • If supplied, must match the name of an existing DB parameter group.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", "RestoreDBInstanceFromDBSnapshotMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

  • The profile must exist in your account.

  • The profile must have an IAM role that Amazon EC2 has permissions to assume.

  • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

This setting is required for RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$BackupTarget": "

Specifies where automated backups and manual snapshots are stored for the restored DB instance.

Possible values are outposts (Amazon Web Services Outposts) and region (Amazon Web Services Region). The default is region.

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", - "RestoreDBInstanceFromDBSnapshotMessage$NetworkType": "

The network type of the DB instance.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromDBSnapshotMessage$NetworkType": "

The network type of the DB instance.

Valid Values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", "RestoreDBInstanceFromDBSnapshotMessage$DBClusterSnapshotIdentifier": "

The identifier for the RDS for MySQL Multi-AZ DB cluster snapshot to restore from.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

Constraints:

  • Must match the identifier of an existing Multi-AZ DB cluster snapshot.

  • Can't be specified when DBSnapshotIdentifier is specified.

  • Must be specified when DBSnapshotIdentifier isn't specified.

  • If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the DBClusterSnapshotIdentifier must be the ARN of the shared snapshot.

  • Can't be the identifier of an Aurora DB cluster snapshot.

  • Can't be the identifier of an RDS for PostgreSQL Multi-AZ DB cluster snapshot.

", "RestoreDBInstanceFromS3Message$DBName": "

The name of the database to create when the DB instance is created. Follow the naming rules specified in CreateDBInstance.

", "RestoreDBInstanceFromS3Message$DBInstanceIdentifier": "

The DB instance identifier. This parameter is stored as a lowercase string.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

Example: mydbinstance

", "RestoreDBInstanceFromS3Message$DBInstanceClass": "

The compute and memory capacity of the DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Importing from Amazon S3 isn't supported on the db.t2.micro DB instance class.

", "RestoreDBInstanceFromS3Message$Engine": "

The name of the database engine to be used for this instance.

Valid Values: mysql

", "RestoreDBInstanceFromS3Message$MasterUsername": "

The name for the master user.

Constraints:

  • Must be 1 to 16 letters or numbers.

  • First character must be a letter.

  • Can't be a reserved word for the chosen database engine.

", - "RestoreDBInstanceFromS3Message$MasterUserPassword": "

The password for the master user. The password can include any printable ASCII character except \"/\", \"\"\", or \"@\".

Constraints: Can't be specified if ManageMasterUserPassword is turned on.

MariaDB

Constraints: Must contain from 8 to 41 characters.

Microsoft SQL Server

Constraints: Must contain from 8 to 128 characters.

MySQL

Constraints: Must contain from 8 to 41 characters.

Oracle

Constraints: Must contain from 8 to 30 characters.

PostgreSQL

Constraints: Must contain from 8 to 128 characters.

", + "RestoreDBInstanceFromS3Message$MasterUserPassword": "

The password for the master user.

Constraints:

  • Can't be specified if ManageMasterUserPassword is turned on.

  • Can include any printable ASCII character except \"/\", \"\"\", or \"@\". For RDS for Oracle, can't include the \"&\" (ampersand) or the \"'\" (single quotes) character.

Length Constraints:

  • RDS for Db2 - Must contain from 8 to 128 characters.

  • RDS for MariaDB - Must contain from 8 to 41 characters.

  • RDS for Microsoft SQL Server - Must contain from 8 to 128 characters.

  • RDS for MySQL - Must contain from 8 to 41 characters.

  • RDS for Oracle - Must contain from 8 to 30 characters.

  • RDS for PostgreSQL - Must contain from 8 to 128 characters.

", "RestoreDBInstanceFromS3Message$AvailabilityZone": "

The Availability Zone that the DB instance is created in. For information about Amazon Web Services Regions and Availability Zones, see Regions and Availability Zones in the Amazon RDS User Guide.

Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.

Example: us-east-1d

Constraint: The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ deployment. The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint.

", "RestoreDBInstanceFromS3Message$DBSubnetGroupName": "

A DB subnet group to associate with this DB instance.

Constraints: If supplied, must match the name of an existing DBSubnetGroup.

Example: mydbsubnetgroup

", "RestoreDBInstanceFromS3Message$PreferredMaintenanceWindow": "

The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

Constraints:

  • Must be in the format ddd:hh24:mi-ddd:hh24:mi.

  • Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred backup window.

  • Must be at least 30 minutes.

", @@ -4916,7 +5215,7 @@ "RestoreDBInstanceFromS3Message$EngineVersion": "

The version number of the database engine to use. Choose the latest minor version of your database engine. For information about engine versions, see CreateDBInstance, or call DescribeDBEngineVersions.

", "RestoreDBInstanceFromS3Message$LicenseModel": "

The license model for this DB instance. Use general-public-license.

", "RestoreDBInstanceFromS3Message$OptionGroupName": "

The name of the option group to associate with this DB instance. If this argument is omitted, the default option group for the specified engine is used.

", - "RestoreDBInstanceFromS3Message$StorageType": "

Specifies the storage type to be associated with the DB instance.

Valid values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified; otherwise gp2

", + "RestoreDBInstanceFromS3Message$StorageType": "

Specifies the storage type to be associated with the DB instance.

Valid Values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified; otherwise gp2

", "RestoreDBInstanceFromS3Message$KmsKeyId": "

The Amazon Web Services KMS key identifier for an encrypted DB instance.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

If the StorageEncrypted parameter is enabled, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS will use your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", "RestoreDBInstanceFromS3Message$MonitoringRoleArn": "

The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, see Setting Up and Enabling Enhanced Monitoring in the Amazon RDS User Guide.

If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

", "RestoreDBInstanceFromS3Message$SourceEngine": "

The name of the engine of your source database.

Valid Values: mysql

", @@ -4925,31 +5224,31 @@ "RestoreDBInstanceFromS3Message$S3Prefix": "

The prefix of your Amazon S3 bucket.

", "RestoreDBInstanceFromS3Message$S3IngestionRoleArn": "

An Amazon Web Services Identity and Access Management (IAM) role to allow Amazon RDS to access your Amazon S3 bucket.

", "RestoreDBInstanceFromS3Message$PerformanceInsightsKMSKeyId": "

The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", - "RestoreDBInstanceFromS3Message$NetworkType": "

The network type of the DB instance.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromS3Message$NetworkType": "

The network type of the DB instance.

Valid Values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", "RestoreDBInstanceFromS3Message$MasterUserSecretKmsKeyId": "

The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in Amazon Web Services Secrets Manager.

This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB instance.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed KMS key.

There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceIdentifier": "

The identifier of the source DB instance from which to restore.

Constraints:

  • Must match the identifier of an existing DB instance.

", - "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

The name of the new DB instance to be created.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens

  • First character must be a letter

  • Can't end with a hyphen or contain two consecutive hyphens

", - "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

The compute and memory capacity of the Amazon RDS DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: The same DBInstanceClass as the original DB instance.

", - "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

The Availability Zone (AZ) where the DB instance will be created.

Default: A random, system-chosen Availability Zone.

Constraint: You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

Example: us-east-1a

", - "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

The DB subnet group name to use for the new instance.

Constraints: If supplied, must match the name of an existing DBSubnetGroup.

Example: mydbsubnetgroup

", - "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

License model information for the restored DB instance.

This setting doesn't apply to RDS Custom.

Default: Same as source.

Valid values: license-included | bring-your-own-license | general-public-license

", - "RestoreDBInstanceToPointInTimeMessage$DBName": "

The database name for the restored DB instance.

This parameter isn't supported for the MySQL or MariaDB engines. It also doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Default: The same as source

Constraint: Must be compatible with the engine of the source

Valid Values:

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

", - "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

The name of the option group to be used for the restored DB instance.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$StorageType": "

Specifies the storage type to be associated with the DB instance.

Valid values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified, otherwise gp2

", + "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

The name of the new DB instance to create.

Constraints:

  • Must contain from 1 to 63 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", + "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

The compute and memory capacity of the Amazon RDS DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: The same DB instance class as the original DB instance.

", + "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

The Availability Zone (AZ) where the DB instance will be created.

Default: A random, system-chosen Availability Zone.

Constraints:

  • You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

Example: us-east-1a

", + "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

The DB subnet group name to use for the new instance.

Constraints:

  • If supplied, must match the name of an existing DB subnet group.

Example: mydbsubnetgroup

", + "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

The license model information for the restored DB instance.

This setting doesn't apply to RDS Custom.

Valid Values: license-included | bring-your-own-license | general-public-license

Default: Same as the source.

", + "RestoreDBInstanceToPointInTimeMessage$DBName": "

The database name for the restored DB instance.

This parameter doesn't apply to the following DB instances:

  • RDS Custom

  • RDS for Db2

  • RDS for MariaDB

  • RDS for MySQL

", + "RestoreDBInstanceToPointInTimeMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Valid Values:

  • db2-ae

  • db2-se

  • mariadb

  • mysql

  • oracle-ee

  • oracle-ee-cdb

  • oracle-se2

  • oracle-se2-cdb

  • postgres

  • sqlserver-ee

  • sqlserver-se

  • sqlserver-ex

  • sqlserver-web

Default: The same as source

Constraints:

  • Must be compatible with the engine of the source.

", + "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

The name of the option group to use for the restored DB instance.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceToPointInTimeMessage$StorageType": "

The storage type to associate with the DB instance.

Valid Values: gp2 | gp3 | io1 | standard

Default: io1, if the Iops parameter is specified. Otherwise, gp2.

Constraints:

  • If you specify io1 or gp3, you must also include a value for the Iops parameter.

", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$Domain": "

Specify the Active Directory directory ID to restore the DB instance in. Create the domain before running this command. Currently, you can create only the MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

This setting doesn't apply to RDS Custom.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

", + "RestoreDBInstanceToPointInTimeMessage$Domain": "

The Active Directory directory ID to restore the DB instance in. Create the domain before running this command. Currently, you can create only the MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

This setting doesn't apply to RDS Custom.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

", "RestoreDBInstanceToPointInTimeMessage$DomainIAMRoleName": "

The name of the IAM role to use when making API calls to the Directory Service.

This setting doesn't apply to RDS Custom DB instances.

", "RestoreDBInstanceToPointInTimeMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

  • Can't be longer than 64 characters.

Example: mymanagedADtest.mymanagedAD.mydomain

", "RestoreDBInstanceToPointInTimeMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

  • Must be in the distinguished name format.

  • Can't be longer than 64 characters.

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "RestoreDBInstanceToPointInTimeMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Constraints:

  • Can't be longer than 64 characters.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", - "RestoreDBInstanceToPointInTimeMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you do not specify a value for DBParameterGroupName, then the default DBParameterGroup for the specified DB engine is used.

This setting doesn't apply to RDS Custom.

Constraints:

  • If supplied, must match the name of an existing DBParameterGroup.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", + "RestoreDBInstanceToPointInTimeMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you do not specify a value for DBParameterGroupName, then the default DBParameterGroup for the specified DB engine is used.

This setting doesn't apply to RDS Custom.

Constraints:

  • If supplied, must match the name of an existing DB parameter group.

  • Must be 1 to 255 letters, numbers, or hyphens.

  • First character must be a letter.

  • Can't end with a hyphen or contain two consecutive hyphens.

", "RestoreDBInstanceToPointInTimeMessage$SourceDbiResourceId": "

The resource ID of the source DB instance from which to restore.

", - "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceAutomatedBackupsArn": "

The Amazon Resource Name (ARN) of the replicated automated backups from which to restore, for example, arn:aws:rds:useast-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceAutomatedBackupsArn": "

The Amazon Resource Name (ARN) of the replicated automated backups from which to restore, for example, arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceToPointInTimeMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

  • The profile must exist in your account.

  • The profile must have an IAM role that Amazon EC2 has permissions to assume.

  • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

This setting is required for RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$BackupTarget": "

Specifies where automated backups and manual snapshots are stored for the restored DB instance.

Possible values are outposts (Amazon Web Services Outposts) and region (Amazon Web Services Region). The default is region.

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", - "RestoreDBInstanceToPointInTimeMessage$NetworkType": "

The network type of the DB instance.

Valid values:

  • IPV4

  • DUAL

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", + "RestoreDBInstanceToPointInTimeMessage$BackupTarget": "

The location for storing automated backups and manual snapshots for the restored DB instance.

Valid Values:

  • outposts (Amazon Web Services Outposts)

  • region (Amazon Web Services Region)

Default: region

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", + "RestoreDBInstanceToPointInTimeMessage$NetworkType": "

The network type of the DB instance.

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Valid Values:

  • IPV4

  • DUAL

", "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

The name of the DB security group to revoke ingress from.

", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId can't be provided.

", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

The name of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

", @@ -4992,6 +5291,17 @@ "Tag$Key": "

A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and can't be prefixed with aws: or rds:. The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', ':', '/', '=', '+', '-', '@' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-@]*)$\").

", "Tag$Value": "

A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and can't be prefixed with aws: or rds:. The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', ':', '/', '=', '+', '-', '@' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-@]*)$\").

", "TargetHealth$Description": "

A description of the health of the RDS Proxy target. If the State is AVAILABLE, a description is not included.

", + "TenantDatabase$DBInstanceIdentifier": "

The ID of the DB instance that contains the tenant database.

", + "TenantDatabase$TenantDBName": "

The database name of the tenant database.

", + "TenantDatabase$Status": "

The status of the tenant database.

", + "TenantDatabase$MasterUsername": "

The master username of the tenant database.

", + "TenantDatabase$DbiResourceId": "

The Amazon Web Services Region-unique, immutable identifier for the DB instance.

", + "TenantDatabase$TenantDatabaseResourceId": "

The Amazon Web Services Region-unique, immutable identifier for the tenant database.

", + "TenantDatabase$TenantDatabaseARN": "

The Amazon Resource Name (ARN) for the tenant database.

", + "TenantDatabase$CharacterSetName": "

The character set of the tenant database.

", + "TenantDatabase$NcharCharacterSetName": "

The NCHAR character set name of the tenant database.

", + "TenantDatabasePendingModifiedValues$TenantDBName": "

The name of the tenant database.

", + "TenantDatabasesMessage$Marker": "

An optional pagination token provided by a previous DescribeTenantDatabases request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "Timezone$TimezoneName": "

The name of the time zone.

", "UpgradeTarget$Engine": "

The name of the upgrade target database engine.

", "UpgradeTarget$EngineVersion": "

The version number of the upgrade target database engine.

", @@ -5013,7 +5323,7 @@ "refs": { "CreateCustomDBEngineVersionMessage$DatabaseInstallationFilesS3Prefix": "

The Amazon S3 directory that contains the database installation files for your CEV. For example, a valid bucket name is 123456789012/cev1. If this setting isn't specified, no prefix is assumed.

", "CreateCustomDBEngineVersionMessage$ImageId": "

The ID of the Amazon Machine Image (AMI). For RDS Custom for SQL Server, an AMI ID is required to create a CEV. For RDS Custom for Oracle, the default is the most recent AMI available, but you can specify an AMI ID that was used in a different Oracle CEV. Find the AMIs used by your CEVs by calling the DescribeDBEngineVersions operation.

", - "CreateCustomDBEngineVersionMessage$SourceCustomDbEngineVersionIdentifier": "

Reserved for future use.

" + "CreateCustomDBEngineVersionMessage$SourceCustomDbEngineVersionIdentifier": "

The ARN of a CEV to use as a source for creating a new CEV. You can specify a different Amazon Machine Imagine (AMI) by using either Source or UseAwsProvidedLatestImage. You can't specify a different JSON manifest when you specify SourceCustomDbEngineVersionIdentifier.

" } }, "StringList": { @@ -5040,7 +5350,7 @@ "DeregisterDBProxyTargetsRequest$DBInstanceIdentifiers": "

One or more DB instance identifiers.

", "DeregisterDBProxyTargetsRequest$DBClusterIdentifiers": "

One or more DB cluster identifiers.

", "DomainMembership$DnsIps": "

The IPv4 DNS IP addresses of the primary and secondary Active Directory domain controllers.

", - "ExportTask$ExportOnly": "

The data exported from the snapshot or cluster. Valid values are the following:

  • database - Export all the data from a specified database.

  • database.table table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • database.schema schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

  • database.schema.table table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

", + "ExportTask$ExportOnly": "

The data exported from the snapshot or cluster.

Valid Values:

  • database - Export all the data from a specified database.

  • database.table table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • database.schema schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

  • database.schema.table table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

", "ModifyDBClusterEndpointMessage$StaticMembers": "

List of DB instance identifiers that are part of the custom endpoint group.

", "ModifyDBClusterEndpointMessage$ExcludedMembers": "

List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty.

", "ModifyDBInstanceMessage$DomainDnsIps": "

The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

Constraints:

  • Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list.

Example: 123.124.125.126,234.235.236.237

", @@ -5051,7 +5361,7 @@ "RegisterDBProxyTargetsRequest$DBClusterIdentifiers": "

One or more DB cluster identifiers.

", "RestoreDBInstanceFromDBSnapshotMessage$DomainDnsIps": "

The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

Constraints:

  • Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list.

Example: 123.124.125.126,234.235.236.237

", "RestoreDBInstanceToPointInTimeMessage$DomainDnsIps": "

The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

Constraints:

  • Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list.

Example: 123.124.125.126,234.235.236.237

", - "StartExportTaskMessage$ExportOnly": "

The data to be exported from the snapshot or cluster. If this parameter is not provided, all of the data is exported. Valid values are the following:

  • database - Export all the data from a specified database.

  • database.table table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • database.schema schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

  • database.schema.table table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

" + "StartExportTaskMessage$ExportOnly": "

The data to be exported from the snapshot or cluster. If this parameter isn't provided, all of the data is exported.

Valid Values:

  • database - Export all the data from a specified database.

  • database.table table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • database.schema schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

  • database.schema.table table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

" } }, "Subnet": { @@ -5180,14 +5490,14 @@ "DBClusterBacktrack$BacktrackTo": "

The timestamp of the time to which the DB cluster was backtracked.

", "DBClusterBacktrack$BacktrackedFrom": "

The timestamp of the time from which the DB cluster was backtracked.

", "DBClusterBacktrack$BacktrackRequestCreationTime": "

The timestamp of the time at which the backtrack was requested.

", - "DBClusterSnapshot$SnapshotCreateTime": "

Provides the time when the snapshot was taken, in Universal Coordinated Time (UTC).

", - "DBClusterSnapshot$ClusterCreateTime": "

Specifies the time when the DB cluster was created, in Universal Coordinated Time (UTC).

", + "DBClusterSnapshot$SnapshotCreateTime": "

The time when the snapshot was taken, in Universal Coordinated Time (UTC).

", + "DBClusterSnapshot$ClusterCreateTime": "

The time when the DB cluster was created, in Universal Coordinated Time (UTC).

", "DBEngineVersion$CreateTime": "

The creation time of the DB engine version.

", "DBInstance$AutomaticRestartTime": "

The time when a stopped DB instance is restarted automatically.

", "DBInstance$InstanceCreateTime": "

The date and time when the DB instance was created.

", "DBInstance$LatestRestorableTime": "

The latest time to which a database in this DB instance can be restored with point-in-time restore.

", "DBInstance$ResumeFullAutomationModeTime": "

The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full automation. The minimum value is 60 (default). The maximum value is 1,440.

", - "DBInstanceAutomatedBackup$InstanceCreateTime": "

Provides the date and time that the DB instance was created.

", + "DBInstanceAutomatedBackup$InstanceCreateTime": "

The date and time when the DB instance was created.

", "DBProxy$CreatedDate": "

The date and time when the proxy was first created.

", "DBProxy$UpdatedDate": "

The date and time when the proxy was last updated.

", "DBProxyEndpoint$CreatedDate": "

The date and time when the DB proxy endpoint was first created.

", @@ -5197,12 +5507,14 @@ "DBSnapshot$InstanceCreateTime": "

Specifies the time in Coordinated Universal Time (UTC) when the DB instance, from which the snapshot was taken, was created.

", "DBSnapshot$OriginalSnapshotCreateTime": "

Specifies the time of the CreateDBSnapshot operation in Coordinated Universal Time (UTC). Doesn't change when the snapshot is copied.

", "DBSnapshot$SnapshotDatabaseTime": "

The timestamp of the most recent transaction applied to the database that you're backing up. Thus, if you restore a snapshot, SnapshotDatabaseTime is the most recent transaction in the restored DB instance. In contrast, originalSnapshotCreateTime specifies the system time that the snapshot completed.

If you back up a read replica, you can determine the replica lag by comparing SnapshotDatabaseTime with originalSnapshotCreateTime. For example, if originalSnapshotCreateTime is two hours later than SnapshotDatabaseTime, then the replica lag is two hours.

", + "DBSnapshotTenantDatabase$TenantDatabaseCreateTime": "

The time the DB snapshot was taken, specified in Coordinated Universal Time (UTC). If you copy the snapshot, the creation time changes.

", "DescribeEventsMessage$StartTime": "

The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

Example: 2009-07-08T18:00Z

", "DescribeEventsMessage$EndTime": "

The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

Example: 2009-07-08T18:00Z

", "Event$Date": "

Specifies the date and time of the event.

", - "ExportTask$SnapshotTime": "

The time that the snapshot was created.

", - "ExportTask$TaskStartTime": "

The time that the snapshot or cluster export task started.

", - "ExportTask$TaskEndTime": "

The time that the snapshot or cluster export task ended.

", + "ExportTask$SnapshotTime": "

The time when the snapshot was created.

", + "ExportTask$TaskStartTime": "

The time when the snapshot or cluster export task started.

", + "ExportTask$TaskEndTime": "

The time when the snapshot or cluster export task ended.

", + "Integration$CreateTime": "

The time when the integration was created, in Universal Coordinated Time (UTC).

", "OptionGroup$CopyTimestamp": "

Indicates when the option group was copied.

", "PendingMaintenanceAction$AutoAppliedAfterDate": "

The date of the maintenance window when the action is applied. The maintenance action is applied to the resource during its first maintenance window after this date.

", "PendingMaintenanceAction$ForcedApplyDate": "

The date when the maintenance action is automatically applied.

On this date, the maintenance action is applied to the resource as soon as possible, regardless of the maintenance window for the resource. There might be a delay of one or more days from this date before the maintenance action is applied.

", @@ -5210,9 +5522,10 @@ "PendingModifiedValues$ResumeFullAutomationModeTime": "

The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full automation. The minimum value is 60 (default). The maximum value is 1,440.

", "ReservedDBInstance$StartTime": "

The time the reservation started.

", "RestoreDBClusterToPointInTimeMessage$RestoreToTime": "

The date and time to restore the DB cluster to.

Valid Values: Value must be a time in Universal Coordinated Time (UTC) format

Constraints:

  • Must be before the latest restorable time for the DB instance

  • Must be specified if UseLatestRestorableTime parameter isn't provided

  • Can't be specified if the UseLatestRestorableTime parameter is enabled

  • Can't be specified if the RestoreType parameter is copy-on-write

Example: 2015-03-07T23:45:00Z

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

The date and time to restore from.

Valid Values: Value must be a time in Universal Coordinated Time (UTC) format

Constraints:

  • Must be before the latest restorable time for the DB instance

  • Can't be specified if the UseLatestRestorableTime parameter is enabled

Example: 2009-09-07T23:45:00Z

", + "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

The date and time to restore from.

Constraints:

  • Must be a time in Universal Coordinated Time (UTC) format.

  • Must be before the latest restorable time for the DB instance.

  • Can't be specified if the UseLatestRestorableTime parameter is enabled.

Example: 2009-09-07T23:45:00Z

", "RestoreWindow$EarliestTime": "

The earliest time you can restore an instance to.

", - "RestoreWindow$LatestTime": "

The latest time you can restore an instance to.

" + "RestoreWindow$LatestTime": "

The latest time you can restore an instance to.

", + "TenantDatabase$TenantDatabaseCreateTime": "

The creation time of the tenant database.

" } }, "Tag": { @@ -5246,12 +5559,16 @@ "CreateDBSnapshotMessage$Tags": null, "CreateDBSubnetGroupMessage$Tags": "

Tags to assign to the DB subnet group.

", "CreateEventSubscriptionMessage$Tags": null, + "CreateIntegrationMessage$Tags": null, "CreateOptionGroupMessage$Tags": "

Tags to assign to the option group.

", + "CreateTenantDatabaseMessage$Tags": null, "DBCluster$TagList": null, "DBClusterSnapshot$TagList": null, "DBEngineVersion$TagList": null, "DBInstance$TagList": null, "DBSnapshot$TagList": null, + "DBSnapshotTenantDatabase$TagList": null, + "Integration$Tags": null, "PurchaseReservedDBInstancesOfferingMessage$Tags": null, "RestoreDBClusterFromS3Message$Tags": null, "RestoreDBClusterFromSnapshotMessage$Tags": "

The tags to be assigned to the restored DB cluster.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", @@ -5259,7 +5576,8 @@ "RestoreDBInstanceFromDBSnapshotMessage$Tags": null, "RestoreDBInstanceFromS3Message$Tags": "

A list of tags to associate with this DB instance. For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

", "RestoreDBInstanceToPointInTimeMessage$Tags": null, - "TagListMessage$TagList": "

List of tags returned by the ListTagsForResource operation.

" + "TagListMessage$TagList": "

List of tags returned by the ListTagsForResource operation.

", + "TenantDatabase$TagList": null } }, "TagListMessage": { @@ -5273,6 +5591,12 @@ "CreateBlueGreenDeploymentRequest$TargetDBClusterParameterGroupName": "

The DB cluster parameter group associated with the Aurora DB cluster in the green environment.

To test parameter changes, specify a DB cluster parameter group that is different from the one associated with the source DB cluster.

" } }, + "TargetDBInstanceClass": { + "base": null, + "refs": { + "CreateBlueGreenDeploymentRequest$TargetDBInstanceClass": "

Specify the DB instance class for the databases in the green environment.

" + } + }, "TargetDBParameterGroupName": { "base": null, "refs": { @@ -5328,6 +5652,47 @@ "DBProxyTarget$Type": "

Specifies the kind of database, such as an RDS DB instance or an Aurora DB cluster, that the target represents.

" } }, + "TenantDatabase": { + "base": "

A tenant database in the DB instance. This data type is an element in the response to the DescribeTenantDatabases action.

", + "refs": { + "CreateTenantDatabaseResult$TenantDatabase": null, + "DeleteTenantDatabaseResult$TenantDatabase": null, + "ModifyTenantDatabaseResult$TenantDatabase": null, + "TenantDatabasesList$member": null + } + }, + "TenantDatabaseAlreadyExistsFault": { + "base": "

You attempted to either create a tenant database that already exists or modify a tenant database to use the name of an existing tenant database.

", + "refs": { + } + }, + "TenantDatabaseNotFoundFault": { + "base": "

The specified tenant database wasn't found in the DB instance.

", + "refs": { + } + }, + "TenantDatabasePendingModifiedValues": { + "base": "

A response element in the ModifyTenantDatabase operation that describes changes that will be applied. Specific changes are identified by subelements.

", + "refs": { + "TenantDatabase$PendingModifiedValues": "

Information about pending changes for a tenant database.

" + } + }, + "TenantDatabaseQuotaExceededFault": { + "base": "

You attempted to create more tenant databases than are permitted in your Amazon Web Services account.

", + "refs": { + } + }, + "TenantDatabasesList": { + "base": null, + "refs": { + "TenantDatabasesMessage$TenantDatabases": "

An array of the tenant databases requested by the DescribeTenantDatabases operation.

" + } + }, + "TenantDatabasesMessage": { + "base": null, + "refs": { + } + }, "Timezone": { "base": "

A time zone associated with a DBInstance or a DBSnapshot. This data type is an element in the response to the DescribeDBInstances, the DescribeDBSnapshots, and the DescribeDBEngineVersions actions.

", "refs": { @@ -5394,7 +5759,7 @@ "refs": { "CreateDBClusterMessage$VpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with this DB cluster.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", "CreateDBInstanceMessage$VpcSecurityGroupIds": "

A list of Amazon EC2 VPC security groups to associate with this DB instance.

This setting doesn't apply to Amazon Aurora DB instances. The associated list of EC2 VPC security groups is managed by the DB cluster.

Default: The default EC2 VPC security group for the DB subnet group's VPC.

", - "CreateDBInstanceReadReplicaMessage$VpcSecurityGroupIds": "

A list of Amazon EC2 VPC security groups to associate with the read replica.

This setting doesn't apply to RDS Custom.

Default: The default EC2 VPC security group for the DB subnet group's VPC.

", + "CreateDBInstanceReadReplicaMessage$VpcSecurityGroupIds": "

A list of Amazon EC2 VPC security groups to associate with the read replica.

This setting doesn't apply to RDS Custom DB instances.

Default: The default EC2 VPC security group for the DB subnet group's VPC.

", "ModifyDBClusterMessage$VpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with this DB cluster.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", "ModifyDBInstanceMessage$VpcSecurityGroupIds": "

A list of Amazon EC2 VPC security groups to associate with this DB instance. This change is asynchronously applied as soon as possible.

This setting doesn't apply to the following DB instances:

  • Amazon Aurora (The associated list of EC2 VPC security groups is managed by the DB cluster. For more information, see ModifyDBCluster.)

  • RDS Custom

Constraints:

  • If supplied, must match existing VPC security group IDs.

", "OptionConfiguration$VpcSecurityGroupMemberships": "

A list of VpcSecurityGroupMembership name strings used for this option.

", @@ -5424,7 +5789,7 @@ "base": null, "refs": { "DBCluster$GlobalWriteForwardingStatus": "

The status of write forwarding for a secondary cluster in an Aurora global database.

", - "GlobalClusterMember$GlobalWriteForwardingStatus": "

Specifies whether a secondary cluster in the global cluster has write forwarding enabled, not enabled, or is in the process of enabling it.

" + "GlobalClusterMember$GlobalWriteForwardingStatus": "

The status of write forwarding for a secondary cluster in the global cluster.

" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -120,6 +120,12 @@ "output_token": "Marker", "result_key": "DBSecurityGroups" }, + "DescribeDBSnapshotTenantDatabases": { + "input_token": "Marker", + "limit_key": "MaxRecords", + "output_token": "Marker", + "result_key": "DBSnapshotTenantDatabases" + }, "DescribeDBSnapshots": { "input_token": "Marker", "limit_key": "MaxRecords", @@ -162,6 +168,12 @@ "output_token": "Marker", "result_key": "GlobalClusters" }, + "DescribeIntegrations": { + "input_token": "Marker", + "limit_key": "MaxRecords", + "output_token": "Marker", + "result_key": "Integrations" + }, "DescribeOptionGroupOptions": { "input_token": "Marker", "limit_key": "MaxRecords", @@ -204,6 +216,12 @@ "output_token": "Marker", "result_key": "SourceRegions" }, + "DescribeTenantDatabases": { + "input_token": "Marker", + "limit_key": "MaxRecords", + "output_token": "Marker", + "result_key": "TenantDatabases" + }, "DownloadDBLogFilePortion": { "input_token": "Marker", "limit_key": "NumberOfLines", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rds/2014-10-31/waiters-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rds/2014-10-31/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -340,6 +340,55 @@ "argument": "DBClusters[].Status" } ] + }, + "TenantDatabaseAvailable": { + "delay": 30, + "operation": "DescribeTenantDatabases", + "maxAttempts": 60, + "acceptors": [ + { + "expected": "available", + "matcher": "pathAll", + "state": "success", + "argument": "TenantDatabases[].Status" + }, + { + "expected": "deleted", + "matcher": "pathAny", + "state": "failure", + "argument": "TenantDatabases[].Status" + }, + { + "expected": "incompatible-parameters", + "matcher": "pathAny", + "state": "failure", + "argument": "TenantDatabases[].Status" + }, + { + "expected": "incompatible-restore", + "matcher": "pathAny", + "state": "failure", + "argument": "TenantDatabases[].Status" + } + ] + }, + "TenantDatabaseDeleted": { + "delay": 30, + "operation": "DescribeTenantDatabases", + "maxAttempts": 60, + "acceptors": [ + { + "expected": true, + "matcher": "path", + "state": "success", + "argument": "length(TenantDatabases) == `0`" + }, + { + "expected": "DBInstanceNotFoundFault", + "matcher": "error", + "state": "success" + } + ] } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift/2012-12-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift/2012-12-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift/2012-12-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift/2012-12-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -46,7 +46,8 @@ "errors":[ {"shape":"PartnerNotFoundFault"}, {"shape":"ClusterNotFoundFault"}, - {"shape":"UnauthorizedPartnerIntegrationFault"} + {"shape":"UnauthorizedPartnerIntegrationFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "AssociateDataShareConsumer":{ @@ -200,6 +201,7 @@ "resultWrapper":"CopyClusterSnapshotResult" }, "errors":[ + {"shape":"ClusterNotFoundFault"}, {"shape":"ClusterSnapshotAlreadyExistsFault"}, {"shape":"ClusterSnapshotNotFoundFault"}, {"shape":"InvalidClusterSnapshotStateFault"}, @@ -257,7 +259,10 @@ {"shape":"DependentServiceRequestThrottlingFault"}, {"shape":"InvalidClusterTrackFault"}, {"shape":"SnapshotScheduleNotFoundFault"}, - {"shape":"InvalidRetentionPeriodFault"} + {"shape":"InvalidRetentionPeriodFault"}, + {"shape":"Ipv6CidrBlockNotFoundFault"}, + {"shape":"UnsupportedOperationFault"}, + {"shape":"RedshiftIdcApplicationNotExistsFault"} ] }, "CreateClusterParameterGroup":{ @@ -441,6 +446,25 @@ {"shape":"InvalidTagFault"} ] }, + "CreateRedshiftIdcApplication":{ + "name":"CreateRedshiftIdcApplication", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateRedshiftIdcApplicationMessage"}, + "output":{ + "shape":"CreateRedshiftIdcApplicationResult", + "resultWrapper":"CreateRedshiftIdcApplicationResult" + }, + "errors":[ + {"shape":"RedshiftIdcApplicationAlreadyExistsFault"}, + {"shape":"DependentServiceUnavailableFault"}, + {"shape":"UnsupportedOperationFault"}, + {"shape":"DependentServiceAccessDeniedFault"}, + {"shape":"RedshiftIdcApplicationQuotaExceededFault"} + ] + }, "CreateScheduledAction":{ "name":"CreateScheduledAction", "http":{ @@ -453,12 +477,14 @@ "resultWrapper":"CreateScheduledActionResult" }, "errors":[ + {"shape":"ClusterNotFoundFault"}, {"shape":"ScheduledActionAlreadyExistsFault"}, {"shape":"ScheduledActionQuotaExceededFault"}, {"shape":"ScheduledActionTypeUnsupportedFault"}, {"shape":"InvalidScheduleFault"}, {"shape":"InvalidScheduledActionFault"}, - {"shape":"UnauthorizedOperation"} + {"shape":"UnauthorizedOperation"}, + {"shape":"UnsupportedOperationFault"} ] }, "CreateSnapshotCopyGrant":{ @@ -649,7 +675,8 @@ "errors":[ {"shape":"UnsupportedOperationFault"}, {"shape":"ClusterNotFoundFault"}, - {"shape":"CustomCnameAssociationFault"} + {"shape":"CustomCnameAssociationFault"}, + {"shape":"CustomDomainAssociationNotFoundFault"} ] }, "DeleteEndpointAccess":{ @@ -721,7 +748,34 @@ "errors":[ {"shape":"PartnerNotFoundFault"}, {"shape":"ClusterNotFoundFault"}, - {"shape":"UnauthorizedPartnerIntegrationFault"} + {"shape":"UnauthorizedPartnerIntegrationFault"}, + {"shape":"UnsupportedOperationFault"} + ] + }, + "DeleteRedshiftIdcApplication":{ + "name":"DeleteRedshiftIdcApplication", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteRedshiftIdcApplicationMessage"}, + "errors":[ + {"shape":"RedshiftIdcApplicationNotExistsFault"}, + {"shape":"DependentServiceUnavailableFault"}, + {"shape":"UnsupportedOperationFault"}, + {"shape":"DependentServiceAccessDeniedFault"} + ] + }, + "DeleteResourcePolicy":{ + "name":"DeleteResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteResourcePolicyMessage"}, + "errors":[ + {"shape":"ResourceNotFoundFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "DeleteScheduledAction":{ @@ -1131,6 +1185,23 @@ {"shape":"InvalidTagFault"} ] }, + "DescribeInboundIntegrations":{ + "name":"DescribeInboundIntegrations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeInboundIntegrationsMessage"}, + "output":{ + "shape":"InboundIntegrationsMessage", + "resultWrapper":"DescribeInboundIntegrationsResult" + }, + "errors":[ + {"shape":"IntegrationNotFoundFault"}, + {"shape":"InvalidNamespaceFault"}, + {"shape":"UnsupportedOperationFault"} + ] + }, "DescribeLoggingStatus":{ "name":"DescribeLoggingStatus", "http":{ @@ -1143,7 +1214,8 @@ "resultWrapper":"DescribeLoggingStatusResult" }, "errors":[ - {"shape":"ClusterNotFoundFault"} + {"shape":"ClusterNotFoundFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "DescribeNodeConfigurationOptions":{ @@ -1190,7 +1262,26 @@ }, "errors":[ {"shape":"ClusterNotFoundFault"}, - {"shape":"UnauthorizedPartnerIntegrationFault"} + {"shape":"UnauthorizedPartnerIntegrationFault"}, + {"shape":"UnsupportedOperationFault"} + ] + }, + "DescribeRedshiftIdcApplications":{ + "name":"DescribeRedshiftIdcApplications", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRedshiftIdcApplicationsMessage"}, + "output":{ + "shape":"DescribeRedshiftIdcApplicationsResult", + "resultWrapper":"DescribeRedshiftIdcApplicationsResult" + }, + "errors":[ + {"shape":"RedshiftIdcApplicationNotExistsFault"}, + {"shape":"DependentServiceUnavailableFault"}, + {"shape":"UnsupportedOperationFault"}, + {"shape":"DependentServiceAccessDeniedFault"} ] }, "DescribeReservedNodeExchangeStatus":{ @@ -1256,7 +1347,8 @@ }, "errors":[ {"shape":"ClusterNotFoundFault"}, - {"shape":"ResizeNotFoundFault"} + {"shape":"ResizeNotFoundFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "DescribeScheduledActions":{ @@ -1375,7 +1467,8 @@ }, "errors":[ {"shape":"ClusterNotFoundFault"}, - {"shape":"InvalidClusterStateFault"} + {"shape":"InvalidClusterStateFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "DisableSnapshotCopy":{ @@ -1393,7 +1486,8 @@ {"shape":"ClusterNotFoundFault"}, {"shape":"SnapshotCopyAlreadyDisabledFault"}, {"shape":"InvalidClusterStateFault"}, - {"shape":"UnauthorizedOperation"} + {"shape":"UnauthorizedOperation"}, + {"shape":"UnsupportedOperationFault"} ] }, "DisassociateDataShareConsumer":{ @@ -1429,7 +1523,8 @@ {"shape":"InsufficientS3BucketPolicyFault"}, {"shape":"InvalidS3KeyPrefixFault"}, {"shape":"InvalidS3BucketNameFault"}, - {"shape":"InvalidClusterStateFault"} + {"shape":"InvalidClusterStateFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "EnableSnapshotCopy":{ @@ -1457,6 +1552,24 @@ {"shape":"InvalidRetentionPeriodFault"} ] }, + "FailoverPrimaryCompute":{ + "name":"FailoverPrimaryCompute", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"FailoverPrimaryComputeInputMessage"}, + "output":{ + "shape":"FailoverPrimaryComputeResult", + "resultWrapper":"FailoverPrimaryComputeResult" + }, + "errors":[ + {"shape":"ClusterNotFoundFault"}, + {"shape":"UnsupportedOperationFault"}, + {"shape":"UnauthorizedOperation"}, + {"shape":"InvalidClusterStateFault"} + ] + }, "GetClusterCredentials":{ "name":"GetClusterCredentials", "http":{ @@ -1531,6 +1644,23 @@ {"shape":"DependentServiceUnavailableFault"} ] }, + "GetResourcePolicy":{ + "name":"GetResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetResourcePolicyMessage"}, + "output":{ + "shape":"GetResourcePolicyResult", + "resultWrapper":"GetResourcePolicyResult" + }, + "errors":[ + {"shape":"ResourceNotFoundFault"}, + {"shape":"InvalidPolicyFault"}, + {"shape":"UnsupportedOperationFault"} + ] + }, "ModifyAquaConfiguration":{ "name":"ModifyAquaConfiguration", "http":{ @@ -1597,7 +1727,8 @@ {"shape":"InvalidClusterTrackFault"}, {"shape":"InvalidRetentionPeriodFault"}, {"shape":"UnsupportedOperationFault"}, - {"shape":"CustomCnameAssociationFault"} + {"shape":"CustomCnameAssociationFault"}, + {"shape":"Ipv6CidrBlockNotFoundFault"} ] }, "ModifyClusterDbRevision":{ @@ -1614,7 +1745,8 @@ "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"ClusterOnLatestRevisionFault"}, - {"shape":"InvalidClusterStateFault"} + {"shape":"InvalidClusterStateFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "ModifyClusterIamRoles":{ @@ -1729,7 +1861,8 @@ "errors":[ {"shape":"UnsupportedOperationFault"}, {"shape":"ClusterNotFoundFault"}, - {"shape":"CustomCnameAssociationFault"} + {"shape":"CustomCnameAssociationFault"}, + {"shape":"CustomDomainAssociationNotFoundFault"} ] }, "ModifyEndpointAccess":{ @@ -1775,6 +1908,24 @@ {"shape":"InvalidSubscriptionStateFault"} ] }, + "ModifyRedshiftIdcApplication":{ + "name":"ModifyRedshiftIdcApplication", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ModifyRedshiftIdcApplicationMessage"}, + "output":{ + "shape":"ModifyRedshiftIdcApplicationResult", + "resultWrapper":"ModifyRedshiftIdcApplicationResult" + }, + "errors":[ + {"shape":"RedshiftIdcApplicationNotExistsFault"}, + {"shape":"DependentServiceUnavailableFault"}, + {"shape":"UnsupportedOperationFault"}, + {"shape":"DependentServiceAccessDeniedFault"} + ] + }, "ModifyScheduledAction":{ "name":"ModifyScheduledAction", "http":{ @@ -1787,11 +1938,13 @@ "resultWrapper":"ModifyScheduledActionResult" }, "errors":[ + {"shape":"ClusterNotFoundFault"}, {"shape":"ScheduledActionNotFoundFault"}, {"shape":"ScheduledActionTypeUnsupportedFault"}, {"shape":"InvalidScheduleFault"}, {"shape":"InvalidScheduledActionFault"}, - {"shape":"UnauthorizedOperation"} + {"shape":"UnauthorizedOperation"}, + {"shape":"UnsupportedOperationFault"} ] }, "ModifySnapshotCopyRetentionPeriod":{ @@ -1860,7 +2013,8 @@ }, "errors":[ {"shape":"ClusterNotFoundFault"}, - {"shape":"InvalidClusterStateFault"} + {"shape":"InvalidClusterStateFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "PurchaseReservedNodeOffering":{ @@ -1881,6 +2035,24 @@ {"shape":"UnsupportedOperationFault"} ] }, + "PutResourcePolicy":{ + "name":"PutResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutResourcePolicyMessage"}, + "output":{ + "shape":"PutResourcePolicyResult", + "resultWrapper":"PutResourcePolicyResult" + }, + "errors":[ + {"shape":"ResourceNotFoundFault"}, + {"shape":"InvalidPolicyFault"}, + {"shape":"ConflictPolicyUpdateFault"}, + {"shape":"UnsupportedOperationFault"} + ] + }, "RebootCluster":{ "name":"RebootCluster", "http":{ @@ -2000,7 +2172,8 @@ {"shape":"ReservedNodeOfferingNotFoundFault"}, {"shape":"DependentServiceUnavailableFault"}, {"shape":"ReservedNodeAlreadyExistsFault"}, - {"shape":"UnsupportedOperationFault"} + {"shape":"UnsupportedOperationFault"}, + {"shape":"Ipv6CidrBlockNotFoundFault"} ] }, "RestoreTableFromClusterSnapshot":{ @@ -2038,7 +2211,8 @@ "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"InvalidClusterStateFault"}, - {"shape":"InsufficientClusterCapacityFault"} + {"shape":"InsufficientClusterCapacityFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "RevokeClusterSecurityGroupIngress":{ @@ -2111,7 +2285,8 @@ "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"InvalidClusterStateFault"}, - {"shape":"DependentServiceRequestThrottlingFault"} + {"shape":"DependentServiceRequestThrottlingFault"}, + {"shape":"UnsupportedOperationFault"} ] }, "UpdatePartnerStatus":{ @@ -2128,7 +2303,8 @@ "errors":[ {"shape":"PartnerNotFoundFault"}, {"shape":"ClusterNotFoundFault"}, - {"shape":"UnauthorizedPartnerIntegrationFault"} + {"shape":"UnauthorizedPartnerIntegrationFault"}, + {"shape":"UnsupportedOperationFault"} ] } }, @@ -2237,7 +2413,8 @@ "DataShareArn":{"shape":"String"}, "AssociateEntireAccount":{"shape":"BooleanOptional"}, "ConsumerArn":{"shape":"String"}, - "ConsumerRegion":{"shape":"String"} + "ConsumerRegion":{"shape":"String"}, + "AllowWrites":{"shape":"BooleanOptional"} } }, "AssociatedClusterList":{ @@ -2403,7 +2580,8 @@ ], "members":{ "DataShareArn":{"shape":"String"}, - "ConsumerIdentifier":{"shape":"String"} + "ConsumerIdentifier":{"shape":"String"}, + "AllowWrites":{"shape":"BooleanOptional"} } }, "AuthorizeEndpointAccessMessage":{ @@ -2431,6 +2609,21 @@ "Snapshot":{"shape":"Snapshot"} } }, + "AuthorizedAudienceList":{ + "type":"list", + "member":{"shape":"String"} + }, + "AuthorizedTokenIssuer":{ + "type":"structure", + "members":{ + "TrustedTokenIssuerArn":{"shape":"String"}, + "AuthorizedAudiencesList":{"shape":"AuthorizedAudienceList"} + } + }, + "AuthorizedTokenIssuerList":{ + "type":"list", + "member":{"shape":"AuthorizedTokenIssuer"} + }, "AvailabilityZone":{ "type":"structure", "members":{ @@ -2603,7 +2796,12 @@ "ReservedNodeExchangeStatus":{"shape":"ReservedNodeExchangeStatus"}, "CustomDomainName":{"shape":"String"}, "CustomDomainCertificateArn":{"shape":"String"}, - "CustomDomainCertificateExpiryDate":{"shape":"TStamp"} + "CustomDomainCertificateExpiryDate":{"shape":"TStamp"}, + "MasterPasswordSecretArn":{"shape":"String"}, + "MasterPasswordSecretKmsKeyId":{"shape":"String"}, + "IpAddressType":{"shape":"String"}, + "MultiAZ":{"shape":"String"}, + "MultiAZSecondary":{"shape":"SecondaryClusterInfo"} }, "wrapper":true }, @@ -2951,7 +3149,8 @@ "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "SupportedClusterIpAddressTypes":{"shape":"ValueStringList"} }, "wrapper":true }, @@ -3042,6 +3241,17 @@ "Clusters":{"shape":"ClusterList"} } }, + "ConflictPolicyUpdateFault":{ + "type":"structure", + "members":{ + }, + "error":{ + "code":"ConflictPolicyUpdateFault", + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, "CopyClusterSnapshotMessage":{ "type":"structure", "required":[ @@ -3095,8 +3305,7 @@ "required":[ "ClusterIdentifier", "NodeType", - "MasterUsername", - "MasterUserPassword" + "MasterUsername" ], "members":{ "DBName":{"shape":"String"}, @@ -3104,7 +3313,7 @@ "ClusterType":{"shape":"String"}, "NodeType":{"shape":"String"}, "MasterUsername":{"shape":"String"}, - "MasterUserPassword":{"shape":"String"}, + "MasterUserPassword":{"shape":"SensitiveString"}, "ClusterSecurityGroups":{"shape":"ClusterSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ClusterSubnetGroupName":{"shape":"String"}, @@ -3132,7 +3341,12 @@ "AvailabilityZoneRelocation":{"shape":"BooleanOptional"}, "AquaConfigurationStatus":{"shape":"AquaConfigurationStatus"}, "DefaultIamRoleArn":{"shape":"String"}, - "LoadSampleData":{"shape":"String"} + "LoadSampleData":{"shape":"String"}, + "ManageMasterPassword":{"shape":"BooleanOptional"}, + "MasterPasswordSecretKmsKeyId":{"shape":"String"}, + "IpAddressType":{"shape":"String"}, + "MultiAZ":{"shape":"BooleanOptional"}, + "RedshiftIdcApplicationArn":{"shape":"String"} } }, "CreateClusterParameterGroupMessage":{ @@ -3317,6 +3531,30 @@ "HsmConfiguration":{"shape":"HsmConfiguration"} } }, + "CreateRedshiftIdcApplicationMessage":{ + "type":"structure", + "required":[ + "IdcInstanceArn", + "RedshiftIdcApplicationName", + "IdcDisplayName", + "IamRoleArn" + ], + "members":{ + "IdcInstanceArn":{"shape":"String"}, + "RedshiftIdcApplicationName":{"shape":"RedshiftIdcApplicationName"}, + "IdentityNamespace":{"shape":"IdentityNamespaceString"}, + "IdcDisplayName":{"shape":"IdcDisplayNameString"}, + "IamRoleArn":{"shape":"String"}, + "AuthorizedTokenIssuerList":{"shape":"AuthorizedTokenIssuerList"}, + "ServiceIntegrations":{"shape":"ServiceIntegrationList"} + } + }, + "CreateRedshiftIdcApplicationResult":{ + "type":"structure", + "members":{ + "RedshiftIdcApplication":{"shape":"RedshiftIdcApplication"} + } + }, "CreateScheduledActionMessage":{ "type":"structure", "required":[ @@ -3430,7 +3668,7 @@ "type":"string", "max":253, "min":1, - "pattern":"^((?!-)[A-Za-z0-9-]{1,63}(?Creates an Amazon Redshift event notification subscription. This action requires an ARN (Amazon Resource Name) of an Amazon SNS topic created by either the Amazon Redshift console, the Amazon SNS console, or the Amazon SNS API. To obtain an ARN with Amazon SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

You can specify the source type, and lists of Amazon Redshift source IDs, event categories, and event severities. Notifications will be sent for all events you want that match those criteria. For example, you can specify source type = cluster, source ID = my-cluster-1 and mycluster2, event categories = Availability, Backup, and severity = ERROR. The subscription will only send notifications for those ERROR events in the Availability and Backup categories for the specified clusters.

If you specify both the source type and source IDs, such as source type = cluster and source identifier = my-cluster-1, notifications will be sent for all the cluster events for my-cluster-1. If you specify a source type but do not specify a source identifier, you will receive notice of the events for the objects of that type in your Amazon Web Services account. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all Amazon Redshift sources belonging to your Amazon Web Services account. You must specify a source type if you specify a source ID.

", "CreateHsmClientCertificate": "

Creates an HSM client certificate that an Amazon Redshift cluster will use to connect to the client's HSM in order to store and retrieve the keys used to encrypt the cluster databases.

The command returns a public key, which you must store in the HSM. In addition to creating the HSM certificate, you must create an Amazon Redshift HSM configuration that provides a cluster the information needed to store and use encryption keys in the HSM. For more information, go to Hardware Security Modules in the Amazon Redshift Cluster Management Guide.

", "CreateHsmConfiguration": "

Creates an HSM configuration that contains the information required by an Amazon Redshift cluster to store and use database encryption keys in a Hardware Security Module (HSM). After creating the HSM configuration, you can specify it as a parameter when creating a cluster. The cluster will then store its encryption keys in the HSM.

In addition to creating an HSM configuration, you must also create an HSM client certificate. For more information, go to Hardware Security Modules in the Amazon Redshift Cluster Management Guide.

", + "CreateRedshiftIdcApplication": "

Creates an Amazon Redshift application for use with IAM Identity Center.

", "CreateScheduledAction": "

Creates a scheduled action. A scheduled action contains a schedule and an Amazon Redshift API action. For example, you can create a schedule of when to run the ResizeCluster API operation.

", "CreateSnapshotCopyGrant": "

Creates a snapshot copy grant that permits Amazon Redshift to use an encrypted symmetric key from Key Management Service (KMS) to encrypt copied snapshots in a destination region.

For more information about managing snapshot copy grants, go to Amazon Redshift Database Encryption in the Amazon Redshift Cluster Management Guide.

", "CreateSnapshotSchedule": "

Create a snapshot schedule that can be associated to a cluster and which overrides the default system backup schedule.

", @@ -42,6 +43,8 @@ "DeleteHsmClientCertificate": "

Deletes the specified HSM client certificate.

", "DeleteHsmConfiguration": "

Deletes the specified Amazon Redshift HSM configuration.

", "DeletePartner": "

Deletes a partner integration from a cluster. Data can still flow to the cluster until the integration is deleted at the partner's website.

", + "DeleteRedshiftIdcApplication": "

Deletes an Amazon Redshift IAM Identity Center application.

", + "DeleteResourcePolicy": "

Deletes the resource policy for a specified resource.

", "DeleteScheduledAction": "

Deletes a scheduled action.

", "DeleteSnapshotCopyGrant": "

Deletes the specified snapshot copy grant.

", "DeleteSnapshotSchedule": "

Deletes a snapshot schedule.

", @@ -58,7 +61,7 @@ "DescribeClusterTracks": "

Returns a list of all the available maintenance tracks.

", "DescribeClusterVersions": "

Returns descriptions of the available Amazon Redshift cluster versions. You can call this operation even before creating any clusters to learn more about the Amazon Redshift versions. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

", "DescribeClusters": "

Returns properties of provisioned clusters including general cluster properties, cluster database properties, maintenance and backup properties, and security and access properties. This operation supports pagination. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

If you specify both tag keys and tag values in the same request, Amazon Redshift returns all clusters that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all clusters that have any combination of those values are returned.

If both tag keys and values are omitted from the request, clusters are returned regardless of whether they have tag keys or values associated with them.

", - "DescribeCustomDomainAssociations": "

Contains information for custom domain associations for a cluster.

", + "DescribeCustomDomainAssociations": "

Contains information about custom domain associations for a cluster.

", "DescribeDataShares": "

Shows the status of any inbound or outbound datashares available in the specified account.

", "DescribeDataSharesForConsumer": "

Returns a list of datashares where the account identifier being called is a consumer account identifier.

", "DescribeDataSharesForProducer": "

Returns a list of datashares when the account identifier being called is a producer account identifier.

", @@ -70,10 +73,12 @@ "DescribeEvents": "

Returns events related to clusters, security groups, snapshots, and parameter groups for the past 14 days. Events specific to a particular cluster, security group, snapshot or parameter group can be obtained by providing the name as a parameter. By default, the past hour of events are returned.

", "DescribeHsmClientCertificates": "

Returns information about the specified HSM client certificate. If no certificate ID is specified, returns information about all the HSM certificates owned by your Amazon Web Services account.

If you specify both tag keys and tag values in the same request, Amazon Redshift returns all HSM client certificates that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all HSM client certificates that have any combination of those values are returned.

If both tag keys and values are omitted from the request, HSM client certificates are returned regardless of whether they have tag keys or values associated with them.

", "DescribeHsmConfigurations": "

Returns information about the specified Amazon Redshift HSM configuration. If no configuration ID is specified, returns information about all the HSM configurations owned by your Amazon Web Services account.

If you specify both tag keys and tag values in the same request, Amazon Redshift returns all HSM connections that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all HSM connections that have any combination of those values are returned.

If both tag keys and values are omitted from the request, HSM connections are returned regardless of whether they have tag keys or values associated with them.

", + "DescribeInboundIntegrations": "

Returns a list of inbound integrations.

", "DescribeLoggingStatus": "

Describes whether information, such as queries and connection attempts, is being logged for the specified Amazon Redshift cluster.

", "DescribeNodeConfigurationOptions": "

Returns properties of possible node configurations such as node type, number of nodes, and disk usage for the specified action type.

", "DescribeOrderableClusterOptions": "

Returns a list of orderable cluster options. Before you create a new cluster you can use this operation to find what options are available, such as the EC2 Availability Zones (AZ) in the specific Amazon Web Services Region that you can specify, and the node types you can request. The node types differ by available storage, memory, CPU and price. With the cost involved you might want to obtain a list of cluster options in the specific region and specify values when creating a cluster. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

", "DescribePartners": "

Returns information about the partner integrations defined for a cluster.

", + "DescribeRedshiftIdcApplications": "

Lists the Amazon Redshift IAM Identity Center applications.

", "DescribeReservedNodeExchangeStatus": "

Returns exchange status details and associated metadata for a reserved-node exchange. Statuses include such values as in progress and requested.

", "DescribeReservedNodeOfferings": "

Returns a list of the available reserved node offerings by Amazon Redshift with their descriptions including the node type, the fixed and recurring costs of reserving the node and duration the node will be reserved for you. These descriptions help you determine which reserve node offering you want to purchase. You then use the unique offering ID in you call to PurchaseReservedNodeOffering to reserve one or more nodes for your Amazon Redshift cluster.

For more information about reserved node offerings, go to Purchasing Reserved Nodes in the Amazon Redshift Cluster Management Guide.

", "DescribeReservedNodes": "

Returns the descriptions of the reserved nodes.

", @@ -90,10 +95,12 @@ "DisassociateDataShareConsumer": "

From a datashare consumer account, remove association for the specified datashare.

", "EnableLogging": "

Starts logging information, such as queries and connection attempts, for the specified Amazon Redshift cluster.

", "EnableSnapshotCopy": "

Enables the automatic copy of snapshots from one region to another region for a specified cluster.

", + "FailoverPrimaryCompute": "

Fails over the primary compute unit of the specified Multi-AZ cluster to another Availability Zone.

", "GetClusterCredentials": "

Returns a database user name and temporary password with temporary authorization to log on to an Amazon Redshift database. The action returns the database user name prefixed with IAM: if AutoCreate is False or IAMA: if AutoCreate is True. You can optionally specify one or more database user groups that the user will join at log on. 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). For more information, see Using IAM Authentication to Generate Database User Credentials in the Amazon Redshift Cluster Management Guide.

The Identity and Access Management (IAM) user or role that runs GetClusterCredentials must have an IAM policy attached that allows access to all necessary actions and resources. For more information about permissions, see Resource Policies for GetClusterCredentials in the Amazon Redshift Cluster Management Guide.

If the DbGroups parameter is specified, the IAM policy must allow the redshift:JoinGroup action with access to the listed dbgroups.

In addition, if the AutoCreate parameter is set to True, then the policy must include the redshift:CreateClusterUser permission.

If the DbName parameter is specified, the IAM policy must allow access to the resource dbname for the specified database name.

", "GetClusterCredentialsWithIAM": "

Returns a database user name and temporary password with temporary authorization to log in to an Amazon Redshift database. The database user is mapped 1:1 to the source Identity and Access Management (IAM) identity. For more information about IAM identities, see IAM Identities (users, user groups, and roles) in the Amazon Web Services Identity and Access Management User Guide.

The Identity and Access Management (IAM) identity that runs this operation must have an IAM policy attached that allows access to all necessary actions and resources. For more information about permissions, see Using identity-based policies (IAM policies) in the Amazon Redshift Cluster Management Guide.

", "GetReservedNodeExchangeConfigurationOptions": "

Gets the configuration options for the reserved-node exchange. These options include information about the source reserved node and target reserved node offering. Details include the node type, the price, the node count, and the offering type.

", "GetReservedNodeExchangeOfferings": "

Returns an array of DC2 ReservedNodeOfferings that matches the payment type, term, and usage price of the given DC1 reserved node.

", + "GetResourcePolicy": "

Get the resource policy for a specified resource.

", "ModifyAquaConfiguration": "

This operation is retired. Calling this operation does not change AQUA configuration. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).

", "ModifyAuthenticationProfile": "

Modifies an authentication profile.

", "ModifyCluster": "

Modifies the settings for a cluster.

You can also change node type and the number of nodes to scale up or down the cluster. When resizing a cluster, you must specify both the number of nodes and the node type even if one of the parameters does not change.

You can add another security or parameter group, or change the admin user password. Resetting a cluster password or modifying the security groups associated with a cluster do not need a reboot. However, modifying a parameter group requires a reboot for parameters to take effect. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

", @@ -107,12 +114,14 @@ "ModifyCustomDomainAssociation": "

Contains information for changing a custom domain association.

", "ModifyEndpointAccess": "

Modifies a Redshift-managed VPC endpoint.

", "ModifyEventSubscription": "

Modifies an existing Amazon Redshift event notification subscription.

", + "ModifyRedshiftIdcApplication": "

Changes an existing Amazon Redshift IAM Identity Center application.

", "ModifyScheduledAction": "

Modifies a scheduled action.

", "ModifySnapshotCopyRetentionPeriod": "

Modifies the number of days to retain snapshots in the destination Amazon Web Services Region after they are copied from the source Amazon Web Services Region. By default, this operation only changes the retention period of copied automated snapshots. The retention periods for both new and existing copied automated snapshots are updated with the new retention period. You can set the manual option to change only the retention periods of copied manual snapshots. If you set this option, only newly copied manual snapshots have the new retention period.

", "ModifySnapshotSchedule": "

Modifies a snapshot schedule. Any schedule associated with a cluster is modified asynchronously.

", "ModifyUsageLimit": "

Modifies a usage limit in a cluster. You can't modify the feature type or period of a usage limit.

", "PauseCluster": "

Pauses a cluster.

", "PurchaseReservedNodeOffering": "

Allows you to purchase reserved nodes. Amazon Redshift offers a predefined set of reserved node offerings. You can purchase one or more of the offerings. You can call the DescribeReservedNodeOfferings API to obtain the available reserved node offerings. You can call this API by providing a specific reserved node offering and the number of nodes you want to reserve.

For more information about reserved node offerings, go to Purchasing Reserved Nodes in the Amazon Redshift Cluster Management Guide.

", + "PutResourcePolicy": "

Updates the resource policy for a specified resource.

", "RebootCluster": "

Reboots a cluster. This action is taken as soon as possible. It results in a momentary outage to the cluster, during which the cluster status is set to rebooting. A cluster event is created when the reboot is completed. Any pending cluster modifications (see ModifyCluster) are applied at this reboot. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

", "RejectDataShare": "

From a datashare consumer account, rejects the specified datashare.

", "ResetClusterParameterGroup": "

Sets one or more parameters of the specified parameter group to their default values and sets the source values of the parameters to \"engine-default\". To reset the entire parameter group specify the ResetAllParameters parameter. For parameter changes to take effect you must reboot any associated clusters.

", @@ -336,6 +345,26 @@ "refs": { } }, + "AuthorizedAudienceList": { + "base": null, + "refs": { + "AuthorizedTokenIssuer$AuthorizedAudiencesList": "

The list of audiences for the authorized token issuer for integrating Amazon Redshift with IDC Identity Center.

" + } + }, + "AuthorizedTokenIssuer": { + "base": "

The authorized token issuer for the Amazon Redshift IAM Identity Center application.

", + "refs": { + "AuthorizedTokenIssuerList$member": null + } + }, + "AuthorizedTokenIssuerList": { + "base": null, + "refs": { + "CreateRedshiftIdcApplicationMessage$AuthorizedTokenIssuerList": "

The token issuer list for the Amazon Redshift IAM Identity Center application instance.

", + "ModifyRedshiftIdcApplicationMessage$AuthorizedTokenIssuerList": "

The authorized token issuer list for the Amazon Redshift IAM Identity Center application to change.

", + "RedshiftIdcApplication$AuthorizedTokenIssuerList": "

The authorized token issuer list for the Amazon Redshift IAM Identity Center application.

" + } + }, "AvailabilityZone": { "base": "

Describes an availability zone.

", "refs": { @@ -419,14 +448,20 @@ "base": null, "refs": { "AssociateDataShareConsumerMessage$AssociateEntireAccount": "

A value that specifies whether the datashare is associated with the entire account.

", + "AssociateDataShareConsumerMessage$AllowWrites": "

If set to true, allows write operations for a datashare.

", + "AuthorizeDataShareMessage$AllowWrites": "

If set to true, allows write operations for a datashare.

", "CreateClusterMessage$AllowVersionUpgrade": "

If true, major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster.

When a new major version of the Amazon Redshift engine is released, you can request that the service automatically apply upgrades during the maintenance window to the Amazon Redshift engine that is running on your cluster.

Default: true

", "CreateClusterMessage$PubliclyAccessible": "

If true, the cluster can be accessed from a public network.

", "CreateClusterMessage$Encrypted": "

If true, the data in the cluster is encrypted at rest.

Default: false

", "CreateClusterMessage$EnhancedVpcRouting": "

An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

If this option is true, enhanced VPC routing is enabled.

Default: false

", "CreateClusterMessage$AvailabilityZoneRelocation": "

The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is created.

", + "CreateClusterMessage$ManageMasterPassword": "

If true, Amazon Redshift uses Secrets Manager to manage this cluster's admin credentials. You can't use MasterUserPassword if ManageMasterPassword is true. If ManageMasterPassword is false or not set, Amazon Redshift uses MasterUserPassword for the admin user account's password.

", + "CreateClusterMessage$MultiAZ": "

If true, Amazon Redshift will deploy the cluster in two Availability Zones (AZ).

", "CreateEventSubscriptionMessage$Enabled": "

A boolean value; set to true to activate the subscription, and set to false to create the subscription but not activate it.

", "CreateScheduledActionMessage$Enable": "

If true, the schedule is enabled. If false, the scheduled action does not trigger. For more information about state of the scheduled action, see ScheduledAction.

", "CreateSnapshotScheduleMessage$DryRun": "

", + "DataShareAssociation$ProducerAllowedWrites": "

Specifies whether write operations were allowed during data share authorization.

", + "DataShareAssociation$ConsumerAcceptedWrites": "

Specifies whether write operations were allowed during data share association.

", "DescribeClusterSnapshotsMessage$ClusterExists": "

A value that indicates whether to return snapshots only for an existing cluster. You can perform table-level restore only by using a snapshot of an existing cluster, that is, a cluster that has not been deleted. Values for this parameter work as follows:

  • If ClusterExists is set to true, ClusterIdentifier is required.

  • If ClusterExists is set to false and ClusterIdentifier isn't specified, all snapshots associated with deleted clusters (orphaned snapshots) are returned.

  • If ClusterExists is set to false and ClusterIdentifier is specified for a deleted cluster, snapshots associated with that cluster are returned.

  • If ClusterExists is set to false and ClusterIdentifier is specified for an existing cluster, no snapshots are returned.

", "DescribeEndpointAuthorizationMessage$Grantee": "

Indicates whether to check authorization from a grantor or grantee point of view. If true, Amazon Redshift returns endpoint authorizations that you've been granted. If false (default), checks authorization from a grantor point of view.

", "DescribeScheduledActionsMessage$Active": "

If true, retrieve only active scheduled actions. If false, retrieve only disabled scheduled actions.

", @@ -438,6 +473,8 @@ "ModifyClusterMessage$EnhancedVpcRouting": "

An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

If this option is true, enhanced VPC routing is enabled.

Default: false

", "ModifyClusterMessage$Encrypted": "

Indicates whether the cluster is encrypted. If the value is encrypted (true) and you provide a value for the KmsKeyId parameter, we encrypt the cluster with the provided KmsKeyId. If you don't provide a KmsKeyId, we encrypt with the default key.

If the value is not encrypted (false), then the cluster is decrypted.

", "ModifyClusterMessage$AvailabilityZoneRelocation": "

The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster modification is complete.

", + "ModifyClusterMessage$ManageMasterPassword": "

If true, Amazon Redshift uses Secrets Manager to manage this cluster's admin credentials. You can't use MasterUserPassword if ManageMasterPassword is true. If ManageMasterPassword is false or not set, Amazon Redshift uses MasterUserPassword for the admin user account's password.

", + "ModifyClusterMessage$MultiAZ": "

If true and the cluster is currently only deployed in a single Availability Zone, the cluster will be modified to be deployed in two Availability Zones.

", "ModifyClusterSnapshotScheduleMessage$DisassociateSchedule": "

A boolean to indicate whether to remove the assoiciation between the cluster and the schedule.

", "ModifyEventSubscriptionMessage$Enabled": "

A Boolean value indicating if the subscription is enabled. true indicates the subscription is enabled

", "ModifyScheduledActionMessage$Enable": "

A modified enable flag of the scheduled action. If true, the scheduled action is active. If false, the scheduled action is disabled.

", @@ -449,6 +486,8 @@ "RestoreFromClusterSnapshotMessage$EnhancedVpcRouting": "

An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

If this option is true, enhanced VPC routing is enabled.

Default: false

", "RestoreFromClusterSnapshotMessage$AvailabilityZoneRelocation": "

The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is restored.

", "RestoreFromClusterSnapshotMessage$Encrypted": "

Enables support for restoring an unencrypted snapshot to a cluster encrypted with Key Management Service (KMS) and a customer managed key.

", + "RestoreFromClusterSnapshotMessage$ManageMasterPassword": "

If true, Amazon Redshift uses Secrets Manager to manage the restored cluster's admin credentials. If ManageMasterPassword is false or not set, Amazon Redshift uses the admin credentials the cluster had at the time the snapshot was taken.

", + "RestoreFromClusterSnapshotMessage$MultiAZ": "

If true, the snapshot will be restored to a cluster deployed in two Availability Zones.

", "RestoreTableFromClusterSnapshotMessage$EnableCaseSensitiveIdentifier": "

Indicates whether name identifiers for database, schema, and table are case sensitive. If true, the names are case sensitive. If false (default), the names are not case sensitive.

" } }, @@ -482,6 +521,7 @@ "DeleteClusterResult$Cluster": null, "DisableSnapshotCopyResult$Cluster": null, "EnableSnapshotCopyResult$Cluster": null, + "FailoverPrimaryComputeResult$Cluster": null, "ModifyClusterDbRevisionResult$Cluster": null, "ModifyClusterIamRolesResult$Cluster": null, "ModifyClusterMaintenanceResult$Cluster": null, @@ -560,7 +600,8 @@ "ClusterNodesList": { "base": null, "refs": { - "Cluster$ClusterNodes": "

The nodes in the cluster.

" + "Cluster$ClusterNodes": "

The nodes in the cluster.

", + "SecondaryClusterInfo$ClusterNodes": "

The nodes in the secondary compute unit.

" } }, "ClusterNotFoundFault": { @@ -776,6 +817,11 @@ "refs": { } }, + "ConflictPolicyUpdateFault": { + "base": "

There is a conflict while updating the resource policy.

", + "refs": { + } + }, "CopyClusterSnapshotMessage": { "base": "

", "refs": { @@ -896,6 +942,16 @@ "refs": { } }, + "CreateRedshiftIdcApplicationMessage": { + "base": null, + "refs": { + } + }, + "CreateRedshiftIdcApplicationResult": { + "base": null, + "refs": { + } + }, "CreateScheduledActionMessage": { "base": null, "refs": { @@ -956,6 +1012,7 @@ "refs": { "CreateCustomDomainAssociationMessage$CustomDomainName": "

The custom domain name for a custom domain association.

", "CreateCustomDomainAssociationResult$CustomDomainName": "

The custom domain name for the association result.

", + "DeleteCustomDomainAssociationMessage$CustomDomainName": "

The custom domain name for the custom domain association.

", "DescribeCustomDomainAssociationsMessage$CustomDomainName": "

The custom domain name for the custom domain association.

", "ModifyCustomDomainAssociationMessage$CustomDomainName": "

The custom domain name for a changed custom domain association.

", "ModifyCustomDomainAssociationResult$CustomDomainName": "

The custom domain name associated with the result for the changed custom domain association.

" @@ -1122,6 +1179,16 @@ "refs": { } }, + "DeleteRedshiftIdcApplicationMessage": { + "base": null, + "refs": { + } + }, + "DeleteResourcePolicyMessage": { + "base": null, + "refs": { + } + }, "DeleteScheduledActionMessage": { "base": null, "refs": { @@ -1147,6 +1214,11 @@ "refs": { } }, + "DependentServiceAccessDeniedFault": { + "base": "

A dependent service denied access for the integration.

", + "refs": { + } + }, "DependentServiceRequestThrottlingFault": { "base": "

The request cannot be completed because a dependent service is throttling requests made by Amazon Redshift on your behalf. Wait and retry the request.

", "refs": { @@ -1297,6 +1369,11 @@ "refs": { } }, + "DescribeInboundIntegrationsMessage": { + "base": null, + "refs": { + } + }, "DescribeLoggingStatusMessage": { "base": "

", "refs": { @@ -1322,6 +1399,16 @@ "refs": { } }, + "DescribeRedshiftIdcApplicationsMessage": { + "base": null, + "refs": { + } + }, + "DescribeRedshiftIdcApplicationsResult": { + "base": null, + "refs": { + } + }, "DescribeReservedNodeExchangeStatusInputMessage": { "base": null, "refs": { @@ -1622,6 +1709,16 @@ "refs": { } }, + "FailoverPrimaryComputeInputMessage": { + "base": null, + "refs": { + } + }, + "FailoverPrimaryComputeResult": { + "base": null, + "refs": { + } + }, "GetClusterCredentialsMessage": { "base": "

The request parameters to get cluster credentials.

", "refs": { @@ -1652,6 +1749,16 @@ "refs": { } }, + "GetResourcePolicyMessage": { + "base": null, + "refs": { + } + }, + "GetResourcePolicyResult": { + "base": null, + "refs": { + } + }, "HsmClientCertificate": { "base": "

Returns information about an HSM client certificate. The certificate is stored in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift cluster to encrypt data files.

", "refs": { @@ -1745,6 +1852,22 @@ "RestoreFromClusterSnapshotMessage$IamRoles": "

A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format.

The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the Amazon Redshift Cluster Management Guide.

" } }, + "IdcDisplayNameString": { + "base": null, + "refs": { + "CreateRedshiftIdcApplicationMessage$IdcDisplayName": "

The display name for the Amazon Redshift IAM Identity Center application instance. It appears in the console.

", + "ModifyRedshiftIdcApplicationMessage$IdcDisplayName": "

The display name for the Amazon Redshift IAM Identity Center application to change. It appears on the console.

", + "RedshiftIdcApplication$IdcDisplayName": "

The display name for the Amazon Redshift IAM Identity Center application. It appears on the console.

" + } + }, + "IdentityNamespaceString": { + "base": null, + "refs": { + "CreateRedshiftIdcApplicationMessage$IdentityNamespace": "

The namespace for the Amazon Redshift IAM Identity Center application instance. It determines which managed application verifies the connection token.

", + "ModifyRedshiftIdcApplicationMessage$IdentityNamespace": "

The namespace for the Amazon Redshift IAM Identity Center application to change. It determines which managed application verifies the connection token.

", + "RedshiftIdcApplication$IdentityNamespace": "

The identity namespace for the Amazon Redshift IAM Identity Center application. It determines which managed application verifies the connection token.

" + } + }, "ImportTablesCompleted": { "base": null, "refs": { @@ -1768,6 +1891,23 @@ "refs": { } }, + "InboundIntegration": { + "base": "

The content of an inbound integration.

", + "refs": { + "InboundIntegrationList$member": null + } + }, + "InboundIntegrationList": { + "base": null, + "refs": { + "InboundIntegrationsMessage$InboundIntegrations": "

A list of InboundIntegration instances.

" + } + }, + "InboundIntegrationsMessage": { + "base": null, + "refs": { + } + }, "IncompatibleOrderableOptions": { "base": "

The specified options are incompatible.

", "refs": { @@ -1838,8 +1978,10 @@ "DescribeEventsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", "DescribeHsmClientCertificatesMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", "DescribeHsmConfigurationsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", + "DescribeInboundIntegrationsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", "DescribeNodeConfigurationOptionsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 500

Constraints: minimum 100, maximum 500.

", "DescribeOrderableClusterOptionsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", + "DescribeRedshiftIdcApplicationsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

", "DescribeReservedNodeExchangeStatusInputMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a Marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

", "DescribeReservedNodeOfferingsMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", "DescribeReservedNodesMessage$MaxRecords": "

The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

Default: 100

Constraints: minimum 20, maximum 100.

", @@ -1875,6 +2017,23 @@ "SnapshotSchedule$AssociatedClusterCount": "

The number of clusters associated with the schedule.

" } }, + "IntegrationError": { + "base": "

The error of an inbound integration.

", + "refs": { + "IntegrationErrorList$member": null + } + }, + "IntegrationErrorList": { + "base": null, + "refs": { + "InboundIntegration$Errors": "

The outstanding errors of an inbound integration. Each item is an \"IntegrationError\". This is null if there is no error.

" + } + }, + "IntegrationNotFoundFault": { + "base": "

The integration can't be found.

", + "refs": { + } + }, "InvalidAuthenticationProfileRequestFault": { "base": "

The authentication profile request is not valid. The profile name can't be null or empty. The authentication profile API operation must be available in the Amazon Web Services Region.

", "refs": { @@ -1955,6 +2114,11 @@ "refs": { } }, + "InvalidPolicyFault": { + "base": "

The resource policy isn't valid.

", + "refs": { + } + }, "InvalidReservedNodeStateFault": { "base": "

Indicates that the Reserved Node being exchanged is not in an active state.

", "refs": { @@ -2025,6 +2189,29 @@ "refs": { } }, + "Ipv6CidrBlockNotFoundFault": { + "base": "

There are no subnets in your VPC with associated IPv6 CIDR blocks. To use dual-stack mode, associate an IPv6 CIDR block with each subnet in your VPC.

", + "refs": { + } + }, + "LakeFormationQuery": { + "base": "

The Lake Formation scope.

", + "refs": { + "LakeFormationScopeUnion$LakeFormationQuery": "

The Lake Formation scope.

" + } + }, + "LakeFormationScopeUnion": { + "base": "

A list of scopes set up for Lake Formation integration.

", + "refs": { + "LakeFormationServiceIntegrations$member": null + } + }, + "LakeFormationServiceIntegrations": { + "base": null, + "refs": { + "ServiceIntegrationsUnion$LakeFormation": "

A list of scopes set up for Lake Formation integration.

" + } + }, "LimitExceededFault": { "base": "

The encryption key has exceeded its grant limit in Amazon Web Services KMS.

", "refs": { @@ -2207,6 +2394,16 @@ "refs": { } }, + "ModifyRedshiftIdcApplicationMessage": { + "base": null, + "refs": { + } + }, + "ModifyRedshiftIdcApplicationResult": { + "base": null, + "refs": { + } + }, "ModifyScheduledActionMessage": { "base": null, "refs": { @@ -2449,6 +2646,16 @@ "refs": { } }, + "PutResourcePolicyMessage": { + "base": null, + "refs": { + } + }, + "PutResourcePolicyResult": { + "base": null, + "refs": { + } + }, "RebootClusterMessage": { "base": "

", "refs": { @@ -2472,6 +2679,42 @@ "ReservedNodeOffering$RecurringCharges": "

The charge to your account regardless of whether you are creating any clusters using the node offering. Recurring charges are only in effect for heavy-utilization reserved nodes.

" } }, + "RedshiftIdcApplication": { + "base": "

Contains properties for the Redshift IDC application.

", + "refs": { + "CreateRedshiftIdcApplicationResult$RedshiftIdcApplication": null, + "ModifyRedshiftIdcApplicationResult$RedshiftIdcApplication": null, + "RedshiftIdcApplicationList$member": null + } + }, + "RedshiftIdcApplicationAlreadyExistsFault": { + "base": "

The application you attempted to add already exists.

", + "refs": { + } + }, + "RedshiftIdcApplicationList": { + "base": null, + "refs": { + "DescribeRedshiftIdcApplicationsResult$RedshiftIdcApplications": "

The list of Amazon Redshift IAM Identity Center applications.

" + } + }, + "RedshiftIdcApplicationName": { + "base": null, + "refs": { + "CreateRedshiftIdcApplicationMessage$RedshiftIdcApplicationName": "

The name of the Redshift application in IAM Identity Center.

", + "RedshiftIdcApplication$RedshiftIdcApplicationName": "

The name of the Redshift application in IAM Identity Center.

" + } + }, + "RedshiftIdcApplicationNotExistsFault": { + "base": "

The application you attempted to find doesn't exist.

", + "refs": { + } + }, + "RedshiftIdcApplicationQuotaExceededFault": { + "base": "

The maximum number of Redshift IAM Identity Center applications was exceeded.

", + "refs": { + } + }, "RejectDataShareMessage": { "base": null, "refs": { @@ -2627,6 +2870,13 @@ "refs": { } }, + "ResourcePolicy": { + "base": "

The policy that is attached to a resource.

", + "refs": { + "GetResourcePolicyResult$ResourcePolicy": "

The content of the resource policy.

", + "PutResourcePolicyResult$ResourcePolicy": "

The content of the updated resource policy.

" + } + }, "RestorableNodeTypeList": { "base": null, "refs": { @@ -2839,11 +3089,40 @@ "SnapshotSchedule$NextInvocations": "

" } }, + "SecondaryClusterInfo": { + "base": "

The AvailabilityZone and ClusterNodes information of the secondary compute unit.

", + "refs": { + "Cluster$MultiAZSecondary": "

The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.

" + } + }, "SensitiveString": { "base": null, "refs": { "ClusterCredentials$DbPassword": "

A temporary password that authorizes the user name returned by DbUser to log on to the database DbName.

", - "ClusterExtendedCredentials$DbPassword": "

A temporary password that you provide when you connect to a database.

" + "ClusterExtendedCredentials$DbPassword": "

A temporary password that you provide when you connect to a database.

", + "CreateClusterMessage$MasterUserPassword": "

The password associated with the admin user account for the cluster that is being created.

You can't use MasterUserPassword if ManageMasterPassword is true.

Constraints:

  • Must be between 8 and 64 characters in length.

  • Must contain at least one uppercase letter.

  • Must contain at least one lowercase letter.

  • Must contain one number.

  • Can be any printable ASCII character (ASCII code 33-126) except ' (single quote), \" (double quote), \\, /, or @.

", + "ModifyClusterMessage$MasterUserPassword": "

The new password for the cluster admin user. This change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

You can't use MasterUserPassword if ManageMasterPassword is true.

Operations never return the password, so this operation provides a way to regain access to the admin user account for a cluster if the password is lost.

Default: Uses existing setting.

Constraints:

  • Must be between 8 and 64 characters in length.

  • Must contain at least one uppercase letter.

  • Must contain at least one lowercase letter.

  • Must contain one number.

  • Can be any printable ASCII character (ASCII code 33-126) except ' (single quote), \" (double quote), \\, /, or @.

", + "PendingModifiedValues$MasterUserPassword": "

The pending or in-progress change of the admin user password for the cluster.

" + } + }, + "ServiceAuthorization": { + "base": null, + "refs": { + "LakeFormationQuery$Authorization": "

Determines whether the query scope is enabled or disabled.

" + } + }, + "ServiceIntegrationList": { + "base": null, + "refs": { + "CreateRedshiftIdcApplicationMessage$ServiceIntegrations": "

A collection of service integrations for the Redshift IAM Identity Center application.

", + "ModifyRedshiftIdcApplicationMessage$ServiceIntegrations": "

A collection of service integrations associated with the application.

", + "RedshiftIdcApplication$ServiceIntegrations": "

A list of service integrations for the Redshift IAM Identity Center application.

" + } + }, + "ServiceIntegrationsUnion": { + "base": "

A list of service integrations.

", + "refs": { + "ServiceIntegrationList$member": null } }, "Snapshot": { @@ -3035,6 +3314,8 @@ "AuthorizeSnapshotAccessMessage$SnapshotArn": "

The Amazon Resource Name (ARN) of the snapshot to authorize access to.

", "AuthorizeSnapshotAccessMessage$SnapshotClusterIdentifier": "

The identifier of the cluster the snapshot was created from. This parameter is required if your IAM user has a policy containing a snapshot resource element that specifies anything other than * for the cluster name.

", "AuthorizeSnapshotAccessMessage$AccountWithRestoreAccess": "

The identifier of the Amazon Web Services account authorized to restore the specified snapshot.

To share a snapshot with Amazon Web Services Support, specify amazon-redshift-support.

", + "AuthorizedAudienceList$member": null, + "AuthorizedTokenIssuer$TrustedTokenIssuerArn": "

The ARN for the authorized token issuer for integrating Amazon Redshift with IDC Identity Center.

", "AvailabilityZone$Name": "

The name of the availability zone.

", "CancelResizeMessage$ClusterIdentifier": "

The unique identifier for the cluster that you want to cancel a resize operation for.

", "CertificateAssociation$CustomDomainName": "

The custom domain name for the certificate association.

", @@ -3063,6 +3344,10 @@ "Cluster$DefaultIamRoleArn": "

The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.

", "Cluster$CustomDomainName": "

The custom domain name associated with the cluster.

", "Cluster$CustomDomainCertificateArn": "

The certificate Amazon Resource Name (ARN) for the custom domain name.

", + "Cluster$MasterPasswordSecretArn": "

The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.

", + "Cluster$MasterPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.

", + "Cluster$IpAddressType": "

The IP address type for the cluster. Possible values are ipv4 and dualstack.

", + "Cluster$MultiAZ": "

A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.

", "ClusterAssociatedToSchedule$ClusterIdentifier": "

", "ClusterCredentials$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 permissions as the the user named in DbUser. By default, the user is added to PUBLIC. If the DbGroups parameter is specifed, DbUser is added to the listed groups for any sessions created using these credentials.

", "ClusterDbRevision$ClusterIdentifier": "

The unique identifier of the cluster.

", @@ -3114,7 +3399,6 @@ "CreateClusterMessage$ClusterType": "

The type of the cluster. When cluster type is specified as

  • single-node, the NumberOfNodes parameter is not required.

  • multi-node, the NumberOfNodes parameter is required.

Valid Values: multi-node | single-node

Default: multi-node

", "CreateClusterMessage$NodeType": "

The node type to be provisioned for the cluster. For information about node types, go to Working with Clusters in the Amazon Redshift Cluster Management Guide.

Valid Values: ds2.xlarge | ds2.8xlarge | dc1.large | dc1.8xlarge | dc2.large | dc2.8xlarge | ra3.xlplus | ra3.4xlarge | ra3.16xlarge

", "CreateClusterMessage$MasterUsername": "

The user name associated with the admin user account for the cluster that is being created.

Constraints:

  • Must be 1 - 128 alphanumeric characters or hyphens. The user name can't be PUBLIC.

  • 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 a slash (/).

  • Cannot be a reserved word. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.

", - "CreateClusterMessage$MasterUserPassword": "

The password associated with the admin user account for the cluster that is being created.

Constraints:

  • Must be between 8 and 64 characters in length.

  • Must contain at least one uppercase letter.

  • Must contain at least one lowercase letter.

  • Must contain one number.

  • Can be any printable ASCII character (ASCII code 33-126) except ' (single quote), \" (double quote), \\, /, or @.

", "CreateClusterMessage$ClusterSubnetGroupName": "

The name of a cluster subnet group to be associated with this cluster.

If this parameter is not provided the resulting cluster will be deployed outside virtual private cloud (VPC).

", "CreateClusterMessage$AvailabilityZone": "

The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision the cluster. For example, if you have several EC2 instances running in a specific Availability Zone, then you might want the cluster to be provisioned in the same zone in order to decrease network latency.

Default: A random, system-chosen Availability Zone in the region that is specified by the endpoint.

Example: us-east-2d

Constraint: The specified Availability Zone must be in the same region as the current endpoint.

", "CreateClusterMessage$PreferredMaintenanceWindow": "

The weekly time range (in UTC) during which automated cluster maintenance can occur.

Format: ddd:hh24:mi-ddd:hh24:mi

Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. For more information about the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide.

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: Minimum 30-minute window.

", @@ -3129,6 +3413,9 @@ "CreateClusterMessage$SnapshotScheduleIdentifier": "

A unique identifier for the snapshot schedule.

", "CreateClusterMessage$DefaultIamRoleArn": "

The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was created.

", "CreateClusterMessage$LoadSampleData": "

A flag that specifies whether to load sample data once the cluster is created.

", + "CreateClusterMessage$MasterPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret. You can only use this parameter if ManageMasterPassword is true.

", + "CreateClusterMessage$IpAddressType": "

The IP address types that the cluster supports. Possible values are ipv4 and dualstack.

", + "CreateClusterMessage$RedshiftIdcApplicationArn": "

The Amazon resource name (ARN) of the Amazon Redshift IAM Identity Center application.

", "CreateClusterParameterGroupMessage$ParameterGroupName": "

The name of the cluster parameter group.

Constraints:

  • Must be 1 to 255 alphanumeric characters or hyphens

  • First character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

  • Must be unique withing your Amazon Web Services account.

This value is stored as a lower-case string.

", "CreateClusterParameterGroupMessage$ParameterGroupFamily": "

The Amazon Redshift engine version to which the cluster parameter group applies. The cluster engine version determines the set of parameters.

To get a list of valid parameter group family names, you can call DescribeClusterParameterGroups. By default, Amazon Redshift returns a list of all the parameter groups that are owned by your Amazon Web Services account, including the default parameter groups for each Amazon Redshift engine version. The parameter group family names associated with the default parameter groups provide you the valid values. For example, a valid family name is \"redshift-1.0\".

", "CreateClusterParameterGroupMessage$Description": "

A description of the parameter group.

", @@ -3156,6 +3443,8 @@ "CreateHsmConfigurationMessage$HsmPartitionName": "

The name of the partition in the HSM where the Amazon Redshift clusters will store their database encryption keys.

", "CreateHsmConfigurationMessage$HsmPartitionPassword": "

The password required to access the HSM partition.

", "CreateHsmConfigurationMessage$HsmServerPublicCertificate": "

The HSMs public certificate file. When using Cloud HSM, the file name is server.pem.

", + "CreateRedshiftIdcApplicationMessage$IdcInstanceArn": "

The Amazon resource name (ARN) of the IAM Identity Center instance where Amazon Redshift creates a new managed application.

", + "CreateRedshiftIdcApplicationMessage$IamRoleArn": "

The IAM role ARN for the Amazon Redshift IAM Identity Center application instance. It has the required permissions to be assumed and invoke the IDC Identity Center API.

", "CreateScheduledActionMessage$ScheduledActionName": "

The name of the scheduled action. The name must be unique within an account. For more information about this parameter, see ScheduledAction.

", "CreateScheduledActionMessage$Schedule": "

The schedule in at( ) or cron( ) format. For more information about this parameter, see ScheduledAction.

", "CreateScheduledActionMessage$IamRole": "

The IAM role to assume to run the target action. For more information about this parameter, see ScheduledAction.

", @@ -3191,6 +3480,8 @@ "DeleteEventSubscriptionMessage$SubscriptionName": "

The name of the Amazon Redshift event notification subscription to be deleted.

", "DeleteHsmClientCertificateMessage$HsmClientCertificateIdentifier": "

The identifier of the HSM client certificate to be deleted.

", "DeleteHsmConfigurationMessage$HsmConfigurationIdentifier": "

The identifier of the Amazon Redshift HSM configuration to be deleted.

", + "DeleteRedshiftIdcApplicationMessage$RedshiftIdcApplicationArn": "

The ARN for a deleted Amazon Redshift IAM Identity Center application.

", + "DeleteResourcePolicyMessage$ResourceArn": "

The Amazon Resource Name (ARN) of the resource of which its resource policy is deleted.

", "DeleteScheduledActionMessage$ScheduledActionName": "

The name of the scheduled action to delete.

", "DeleteSnapshotCopyGrantMessage$SnapshotCopyGrantName": "

The name of the snapshot copy grant to delete.

", "DeleteSnapshotScheduleMessage$ScheduleIdentifier": "

A unique identifier of the snapshot schedule to delete.

", @@ -3249,6 +3540,9 @@ "DescribeHsmClientCertificatesMessage$Marker": "

An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeHsmClientCertificates request exceed the value specified in MaxRecords, Amazon Web Services returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

", "DescribeHsmConfigurationsMessage$HsmConfigurationIdentifier": "

The identifier of a specific Amazon Redshift HSM configuration to be described. If no identifier is specified, information is returned for all HSM configurations owned by your Amazon Web Services account.

", "DescribeHsmConfigurationsMessage$Marker": "

An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeHsmConfigurations request exceed the value specified in MaxRecords, Amazon Web Services returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

", + "DescribeInboundIntegrationsMessage$IntegrationArn": "

The Amazon Resource Name (ARN) of the inbound integration.

", + "DescribeInboundIntegrationsMessage$TargetArn": "

The Amazon Resource Name (ARN) of the target of an inbound integration.

", + "DescribeInboundIntegrationsMessage$Marker": "

An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeInboundIntegrations request exceed the value specified in MaxRecords, Amazon Web Services returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

", "DescribeLoggingStatusMessage$ClusterIdentifier": "

The identifier of the cluster from which to get the logging status.

Example: examplecluster

", "DescribeNodeConfigurationOptionsMessage$ClusterIdentifier": "

The identifier of the cluster to evaluate for possible node configurations.

", "DescribeNodeConfigurationOptionsMessage$SnapshotIdentifier": "

The identifier of the snapshot to evaluate for possible node configurations.

", @@ -3258,6 +3552,9 @@ "DescribeOrderableClusterOptionsMessage$ClusterVersion": "

The version filter value. Specify this parameter to show only the available offerings matching the specified version.

Default: All versions.

Constraints: Must be one of the version returned from DescribeClusterVersions.

", "DescribeOrderableClusterOptionsMessage$NodeType": "

The node type filter value. Specify this parameter to show only the available offerings matching the specified node type.

", "DescribeOrderableClusterOptionsMessage$Marker": "

An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeOrderableClusterOptions request exceed the value specified in MaxRecords, Amazon Web Services returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

", + "DescribeRedshiftIdcApplicationsMessage$RedshiftIdcApplicationArn": "

The ARN for the Redshift application that integrates with IAM Identity Center.

", + "DescribeRedshiftIdcApplicationsMessage$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", + "DescribeRedshiftIdcApplicationsResult$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", "DescribeReservedNodeExchangeStatusInputMessage$ReservedNodeId": "

The identifier of the source reserved node in a reserved-node exchange request.

", "DescribeReservedNodeExchangeStatusInputMessage$ReservedNodeExchangeRequestId": "

The identifier of the reserved-node exchange request.

", "DescribeReservedNodeExchangeStatusInputMessage$Marker": "

An optional pagination token provided by a previous DescribeReservedNodeExchangeStatus request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by the MaxRecords parameter. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

", @@ -3330,6 +3627,7 @@ "EventSubscription$Severity": "

The event severity specified in the Amazon Redshift event notification subscription.

Values: ERROR, INFO

", "EventSubscriptionsMessage$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", "EventsMessage$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", + "FailoverPrimaryComputeInputMessage$ClusterIdentifier": "

The unique identifier of the cluster for which the primary compute unit will be failed over to another Availability Zone.

", "GetClusterCredentialsMessage$DbUser": "

The name of a database user. If a user name matching DbUser exists in the database, the temporary user credentials have the same permissions as the existing user. If DbUser doesn't exist in the database and Autocreate is True, a new user is created using the value for DbUser with PUBLIC permissions. If a database user matching the value for DbUser doesn't exist and Autocreate is False, then the command succeeds but the connection attempt will fail because the user doesn't exist in the database.

For more information, see CREATE USER in the Amazon Redshift Database Developer Guide.

Constraints:

  • Must be 1 to 64 alphanumeric characters or hyphens. The user name can't be PUBLIC.

  • Must contain uppercase or lowercase letters, numbers, underscore, plus sign, period (dot), at symbol (@), or hyphen.

  • 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 in the Amazon Redshift Database Developer Guide.

", "GetClusterCredentialsMessage$DbName": "

The name of a database that DbUser is authorized to log on to. If DbName is not specified, DbUser can log on to any existing database.

Constraints:

  • Must be 1 to 64 alphanumeric characters or hyphens

  • Must contain uppercase or lowercase letters, numbers, underscore, plus sign, period (dot), at symbol (@), or hyphen.

  • 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 in the Amazon Redshift Database Developer Guide.

", "GetClusterCredentialsMessage$ClusterIdentifier": "

The unique identifier of the cluster that contains the database for which you are requesting credentials. This parameter is case sensitive.

", @@ -3344,6 +3642,7 @@ "GetReservedNodeExchangeOfferingsInputMessage$ReservedNodeId": "

A string representing the node identifier for the DC1 Reserved Node to be exchanged.

", "GetReservedNodeExchangeOfferingsInputMessage$Marker": "

A value that indicates the starting point for the next set of ReservedNodeOfferings.

", "GetReservedNodeExchangeOfferingsOutputMessage$Marker": "

An optional parameter that specifies the starting point for returning a set of response records. When the results of a GetReservedNodeExchangeOfferings request exceed the value specified in MaxRecords, Amazon Redshift returns a value in the marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the marker parameter and retrying the request.

", + "GetResourcePolicyMessage$ResourceArn": "

The Amazon Resource Name (ARN) of the resource of which its resource policy is fetched.

", "HsmClientCertificate$HsmClientCertificateIdentifier": "

The identifier of the HSM client certificate.

", "HsmClientCertificate$HsmClientCertificatePublicKey": "

The public key that the Amazon Redshift cluster will use to connect to the HSM. You must register the public key in the HSM.

", "HsmClientCertificateMessage$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", @@ -3361,6 +3660,12 @@ "ImportTablesCompleted$member": null, "ImportTablesInProgress$member": null, "ImportTablesNotStarted$member": null, + "InboundIntegration$IntegrationArn": "

The Amazon Resource Name (ARN) of an inbound integration.

", + "InboundIntegration$SourceArn": "

The Amazon Resource Name (ARN) of the source of an inbound integration.

", + "InboundIntegration$TargetArn": "

The Amazon Resource Name (ARN) of the target of an inbound integration.

", + "InboundIntegrationsMessage$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", + "IntegrationError$ErrorCode": "

The error code of an inbound integration error.

", + "IntegrationError$ErrorMessage": "

The error message of an inbound integration error.

", "LogTypeList$member": null, "LoggingStatus$BucketName": "

The name of the S3 bucket where the log files are stored.

", "LoggingStatus$S3KeyPrefix": "

The prefix applied to the log file names.

", @@ -3379,7 +3684,6 @@ "ModifyClusterMessage$ClusterIdentifier": "

The unique identifier of the cluster to be modified.

Example: examplecluster

", "ModifyClusterMessage$ClusterType": "

The new cluster type.

When you submit your cluster resize request, your existing cluster goes into a read-only mode. After Amazon Redshift provisions a new cluster based on your resize requirements, there will be outage for a period while the old cluster is deleted and your connection is switched to the new cluster. You can use DescribeResize to track the progress of the resize request.

Valid Values: multi-node | single-node

", "ModifyClusterMessage$NodeType": "

The new node type of the cluster. If you specify a new node type, you must also specify the number of nodes parameter.

For more information about resizing clusters, go to Resizing Clusters in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

Valid Values: ds2.xlarge | ds2.8xlarge | dc1.large | dc1.8xlarge | dc2.large | dc2.8xlarge | ra3.xlplus | ra3.4xlarge | ra3.16xlarge

", - "ModifyClusterMessage$MasterUserPassword": "

The new password for the cluster admin user. This change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

Operations never return the password, so this operation provides a way to regain access to the admin user account for a cluster if the password is lost.

Default: Uses existing setting.

Constraints:

  • Must be between 8 and 64 characters in length.

  • Must contain at least one uppercase letter.

  • Must contain at least one lowercase letter.

  • Must contain one number.

  • Can be any printable ASCII character (ASCII code 33-126) except ' (single quote), \" (double quote), \\, /, or @.

", "ModifyClusterMessage$ClusterParameterGroupName": "

The name of the cluster parameter group to apply to this cluster. This change is applied only after the cluster is rebooted. To reboot a cluster use RebootCluster.

Default: Uses existing setting.

Constraints: The cluster parameter group must be in the same parameter group family that matches the cluster version.

", "ModifyClusterMessage$PreferredMaintenanceWindow": "

The weekly time range (in UTC) during which system maintenance can occur, if necessary. If system maintenance is necessary during the window, it may result in an outage.

This maintenance window change is made immediately. If the new maintenance window indicates the current time, there must be at least 120 minutes between the current time and end of the window in order to ensure that pending changes are applied.

Default: Uses existing setting.

Format: ddd:hh24:mi-ddd:hh24:mi, for example wed:07:30-wed:08:00.

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: Must be at least 30 minutes.

", "ModifyClusterMessage$ClusterVersion": "

The new version number of the Amazon Redshift engine to upgrade to.

For major version upgrades, if a non-default cluster parameter group is currently in use, a new cluster parameter group in the cluster parameter group family for the new version must be specified. The new cluster parameter group can be the default for that cluster parameter group family. For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

Example: 1.0

", @@ -3390,6 +3694,8 @@ "ModifyClusterMessage$MaintenanceTrackName": "

The name for the maintenance track that you want to assign for the cluster. This name change is asynchronous. The new track name stays in the PendingModifiedValues for the cluster until the next maintenance window. When the maintenance track changes, the cluster is switched to the latest cluster release available for the maintenance track. At this point, the maintenance track name is applied.

", "ModifyClusterMessage$KmsKeyId": "

The Key Management Service (KMS) key ID of the encryption key that you want to use to encrypt data in the cluster.

", "ModifyClusterMessage$AvailabilityZone": "

The option to initiate relocation for an Amazon Redshift cluster to the target Availability Zone.

", + "ModifyClusterMessage$MasterPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret. You can only use this parameter if ManageMasterPassword is true.

", + "ModifyClusterMessage$IpAddressType": "

The IP address types that the cluster supports. Possible values are ipv4 and dualstack.

", "ModifyClusterParameterGroupMessage$ParameterGroupName": "

The name of the parameter group to be modified.

", "ModifyClusterSnapshotMessage$SnapshotIdentifier": "

The identifier of the snapshot whose setting you want to modify.

", "ModifyClusterSnapshotScheduleMessage$ClusterIdentifier": "

A unique identifier for the cluster whose snapshot schedule you want to modify.

", @@ -3404,6 +3710,8 @@ "ModifyEventSubscriptionMessage$SnsTopicArn": "

The Amazon Resource Name (ARN) of the SNS topic to be used by the event notification subscription.

", "ModifyEventSubscriptionMessage$SourceType": "

The type of source that will be generating the events. For example, if you want to be notified of events generated by a cluster, you would set this parameter to cluster. If this value is not specified, events are returned for all Amazon Redshift objects in your Amazon Web Services account. You must specify a source type in order to specify source IDs.

Valid values: cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot, and scheduled-action.

", "ModifyEventSubscriptionMessage$Severity": "

Specifies the Amazon Redshift event severity to be published by the event notification subscription.

Values: ERROR, INFO

", + "ModifyRedshiftIdcApplicationMessage$RedshiftIdcApplicationArn": "

The ARN for the Redshift application that integrates with IAM Identity Center.

", + "ModifyRedshiftIdcApplicationMessage$IamRoleArn": "

The IAM role ARN associated with the Amazon Redshift IAM Identity Center application to change. It has the required permissions to be assumed and invoke the IDC Identity Center API.

", "ModifyScheduledActionMessage$ScheduledActionName": "

The name of the scheduled action to modify.

", "ModifyScheduledActionMessage$Schedule": "

A modified schedule in either at( ) or cron( ) format. For more information about this parameter, see ScheduledAction.

", "ModifyScheduledActionMessage$IamRole": "

A different IAM role to assume to run the target action. For more information about this parameter, see ScheduledAction.

", @@ -3415,6 +3723,7 @@ "NetworkInterface$SubnetId": "

The subnet identifier.

", "NetworkInterface$PrivateIpAddress": "

The IPv4 address of the network interface within the subnet.

", "NetworkInterface$AvailabilityZone": "

The Availability Zone.

", + "NetworkInterface$Ipv6Address": "

The IPv6 address of the network interface within the subnet.

", "NodeConfigurationOption$NodeType": "

The node type, such as, \"ds2.8xlarge\".

", "NodeConfigurationOptionsMessage$Marker": "

A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

", "OrderableClusterOption$ClusterVersion": "

The version of the orderable cluster.

", @@ -3430,7 +3739,6 @@ "Parameter$MinimumEngineVersion": "

The earliest engine version to which the parameter can apply.

", "PauseClusterMessage$ClusterIdentifier": "

The identifier of the cluster to be paused.

", "PendingActionsList$member": null, - "PendingModifiedValues$MasterUserPassword": "

The pending or in-progress change of the admin user password for the cluster.

", "PendingModifiedValues$NodeType": "

The pending or in-progress change of the cluster's node type.

", "PendingModifiedValues$ClusterType": "

The pending or in-progress change of the cluster type.

", "PendingModifiedValues$ClusterVersion": "

The pending or in-progress change of the service version.

", @@ -3438,8 +3746,15 @@ "PendingModifiedValues$MaintenanceTrackName": "

The name of the maintenance track that the cluster will change to during the next maintenance window.

", "PendingModifiedValues$EncryptionType": "

The encryption type for a cluster. Possible values are: KMS and None.

", "PurchaseReservedNodeOfferingMessage$ReservedNodeOfferingId": "

The unique identifier of the reserved node offering you want to purchase.

", + "PutResourcePolicyMessage$ResourceArn": "

The Amazon Resource Name (ARN) of the resource of which its resource policy is updated.

", + "PutResourcePolicyMessage$Policy": "

The content of the resource policy being updated.

", "RebootClusterMessage$ClusterIdentifier": "

The cluster identifier.

", "RecurringCharge$RecurringChargeFrequency": "

The frequency at which the recurring charge amount is applied.

", + "RedshiftIdcApplication$IdcInstanceArn": "

The ARN for the IAM Identity Center instance that Redshift integrates with.

", + "RedshiftIdcApplication$RedshiftIdcApplicationArn": "

The ARN for the Redshift application that integrates with IAM Identity Center.

", + "RedshiftIdcApplication$IamRoleArn": "

The ARN for the Amazon Redshift IAM Identity Center application. It has the required permissions to be assumed and invoke the IDC Identity Center API.

", + "RedshiftIdcApplication$IdcManagedApplicationArn": "

The ARN for the Amazon Redshift IAM Identity Center application.

", + "RedshiftIdcApplication$IdcOnboardStatus": "

The onboarding status for the Amazon Redshift IAM Identity Center application.

", "RejectDataShareMessage$DataShareArn": "

The Amazon Resource Name (ARN) of the datashare to reject.

", "ReservedNode$ReservedNodeId": "

The unique identifier for the reservation.

", "ReservedNode$ReservedNodeOfferingId": "

The identifier for the reserved node offering.

", @@ -3471,6 +3786,8 @@ "ResizeProgressMessage$ResizeType": "

An enum with possible values of ClassicResize and ElasticResize. These values describe the type of resize operation being performed.

", "ResizeProgressMessage$Message": "

An optional string to provide additional details about the resize action.

", "ResizeProgressMessage$TargetEncryptionType": "

The type of encryption for the cluster after the resize is complete.

Possible values are KMS and None.

", + "ResourcePolicy$ResourceArn": "

The resources that a policy is attached to.

", + "ResourcePolicy$Policy": "

The content of a resource policy.

", "RestorableNodeTypeList$member": null, "RestoreFromClusterSnapshotMessage$ClusterIdentifier": "

The identifier of the cluster that will be created from restoring the snapshot.

Constraints:

  • Must contain from 1 to 63 alphanumeric characters or hyphens.

  • Alphabetic characters must be lowercase.

  • First character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

  • Must be unique for all clusters within an Amazon Web Services account.

", "RestoreFromClusterSnapshotMessage$SnapshotIdentifier": "

The name of the snapshot from which to create the new cluster. This parameter isn't case sensitive. You must specify this parameter or snapshotArn, but not both.

Example: my-snapshot-id

", @@ -3492,6 +3809,8 @@ "RestoreFromClusterSnapshotMessage$DefaultIamRoleArn": "

The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was last modified while it was restored from a snapshot.

", "RestoreFromClusterSnapshotMessage$ReservedNodeId": "

The identifier of the target reserved node offering.

", "RestoreFromClusterSnapshotMessage$TargetReservedNodeOfferingId": "

The identifier of the target reserved node offering.

", + "RestoreFromClusterSnapshotMessage$MasterPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret. You can only use this parameter if ManageMasterPassword is true.

", + "RestoreFromClusterSnapshotMessage$IpAddressType": "

The IP address type for the cluster. Possible values are ipv4 and dualstack.

", "RestoreStatus$Status": "

The status of the restore action. Returns starting, restoring, completed, or failed.

", "RestoreTableFromClusterSnapshotMessage$ClusterIdentifier": "

The identifier of the Amazon Redshift cluster to restore the table to.

", "RestoreTableFromClusterSnapshotMessage$SnapshotIdentifier": "

The identifier of the snapshot to restore the table from. This snapshot must have been created from the Amazon Redshift cluster specified by the ClusterIdentifier parameter.

", @@ -3521,6 +3840,7 @@ "ScheduledAction$IamRole": "

The IAM role to assume to run the scheduled action. This IAM role must have permission to run the Amazon Redshift API operation in the scheduled action. This IAM role must allow the Amazon Redshift scheduler (Principal scheduler.redshift.amazonaws.com) to assume permissions on your behalf. For more information about the IAM role to use with the Amazon Redshift scheduler, see Using Identity-Based Policies for Amazon Redshift in the Amazon Redshift Cluster Management Guide.

", "ScheduledAction$ScheduledActionDescription": "

The description of the scheduled action.

", "ScheduledActionsMessage$Marker": "

An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeScheduledActions request exceed the value specified in MaxRecords, Amazon Web Services returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

", + "SecondaryClusterInfo$AvailabilityZone": "

The name of the Availability Zone in which the secondary compute unit of the cluster is located.

", "Snapshot$SnapshotIdentifier": "

The snapshot identifier that is provided in the request.

", "Snapshot$ClusterIdentifier": "

The identifier of the cluster for which the snapshot was taken.

", "Snapshot$Status": "

The snapshot status. The value of the status depends on the API operation used:

", @@ -3536,6 +3856,8 @@ "Snapshot$OwnerAccount": "

For manual snapshots, the Amazon Web Services account used to create or copy the snapshot. For automatic snapshots, the owner of the cluster. The owner can perform all snapshot actions, such as sharing a manual snapshot.

", "Snapshot$SourceRegion": "

The source region from which the snapshot was copied.

", "Snapshot$MaintenanceTrackName": "

The name of the maintenance track for the snapshot.

", + "Snapshot$MasterPasswordSecretArn": "

The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.

", + "Snapshot$MasterPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.

", "SnapshotCopyGrant$SnapshotCopyGrantName": "

The name of the snapshot copy grant.

", "SnapshotCopyGrant$KmsKeyId": "

The unique identifier of the encrypted symmetric key in Amazon Web Services KMS to which Amazon Redshift is granted permission.

", "SnapshotCopyGrantMessage$Marker": "

An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeSnapshotCopyGrant request exceed the value specified in MaxRecords, Amazon Web Services returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

Constraints: You can specify either the SnapshotCopyGrantName parameter or the Marker parameter, but not both.

", @@ -3687,6 +4009,7 @@ "EndpointAuthorization$AuthorizeTime": "

The time (UTC) when the authorization was created.

", "Event$Date": "

The date and time of the event.

", "EventSubscription$SubscriptionCreationTime": "

The date and time the Amazon Redshift event notification subscription was created.

", + "InboundIntegration$CreateTime": "

The creation time of an inbound integration.

", "LoggingStatus$LastSuccessfulDeliveryTime": "

The last time that logs were delivered.

", "LoggingStatus$LastFailureTime": "

The last time when logs failed to be delivered.

", "ModifyClusterMaintenanceMessage$DeferMaintenanceStartTime": "

A timestamp indicating the start time for the deferred maintenance window.

", @@ -3943,6 +4266,7 @@ "ValueStringList": { "base": null, "refs": { + "ClusterSubnetGroup$SupportedClusterIpAddressTypes": "

The IP address types supported by this cluster subnet group. Possible values are ipv4 and dualstack.

", "NodeConfigurationOptionsFilter$Values": "

List of values. Compare Name using Operator to Values. If filter Name is NumberOfNodes, then values can range from 0 to 200. If filter Name is EstimatedDiskUtilizationPercent, then values can range from 0 to 100. For example, filter NumberOfNodes (name) GT (operator) 3 (values).

", "ScheduledActionFilter$Values": "

List of values. Compare if the value (of type defined by Name) equals an item in the list of scheduled actions.

" } @@ -3990,6 +4314,12 @@ "Cluster$VpcSecurityGroups": "

A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This parameter is returned only if the cluster is in a VPC.

", "EndpointAccess$VpcSecurityGroups": "

The security groups associated with the endpoint.

" } + }, + "ZeroETLIntegrationStatus": { + "base": null, + "refs": { + "InboundIntegration$Status": "

The status of an inbound integration.

" + } } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift/2012-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift/2012-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift/2012-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift/2012-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://redshift-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://redshift-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://redshift.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://redshift-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://redshift.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://redshift-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://redshift.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://redshift.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://redshift.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://redshift.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift/2012-12-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift/2012-12-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift/2012-12-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift/2012-12-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -120,6 +120,12 @@ "output_token": "Marker", "result_key": "HsmConfigurations" }, + "DescribeInboundIntegrations": { + "input_token": "Marker", + "limit_key": "MaxRecords", + "output_token": "Marker", + "result_key": "InboundIntegrations" + }, "DescribeNodeConfigurationOptions": { "input_token": "Marker", "limit_key": "MaxRecords", @@ -132,6 +138,12 @@ "output_token": "Marker", "result_key": "OrderableClusterOptions" }, + "DescribeRedshiftIdcApplications": { + "input_token": "Marker", + "limit_key": "MaxRecords", + "output_token": "Marker", + "result_key": "RedshiftIdcApplications" + }, "DescribeReservedNodeExchangeStatus": { "input_token": "Marker", "limit_key": "MaxRecords", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -30,6 +30,23 @@ {"shape":"ServiceQuotaExceededException"} ] }, + "CreateCustomDomainAssociation":{ + "name":"CreateCustomDomainAssociation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateCustomDomainAssociationRequest"}, + "output":{"shape":"CreateCustomDomainAssociationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "CreateEndpointAccess":{ "name":"CreateEndpointAccess", "http":{ @@ -64,6 +81,22 @@ ], "idempotent":true }, + "CreateScheduledAction":{ + "name":"CreateScheduledAction", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateScheduledActionRequest"}, + "output":{"shape":"CreateScheduledActionResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ @@ -82,6 +115,24 @@ ], "idempotent":true }, + "CreateSnapshotCopyConfiguration":{ + "name":"CreateSnapshotCopyConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateSnapshotCopyConfigurationRequest"}, + "output":{"shape":"CreateSnapshotCopyConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, "CreateUsageLimit":{ "name":"CreateUsageLimit", "http":{ @@ -117,6 +168,23 @@ ], "idempotent":true }, + "DeleteCustomDomainAssociation":{ + "name":"DeleteCustomDomainAssociation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteCustomDomainAssociationRequest"}, + "output":{"shape":"DeleteCustomDomainAssociationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "DeleteEndpointAccess":{ "name":"DeleteEndpointAccess", "http":{ @@ -163,6 +231,21 @@ {"shape":"ValidationException"} ] }, + "DeleteScheduledAction":{ + "name":"DeleteScheduledAction", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteScheduledActionRequest"}, + "output":{"shape":"DeleteScheduledActionResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ @@ -179,6 +262,23 @@ ], "idempotent":true }, + "DeleteSnapshotCopyConfiguration":{ + "name":"DeleteSnapshotCopyConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteSnapshotCopyConfigurationRequest"}, + "output":{"shape":"DeleteSnapshotCopyConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "DeleteUsageLimit":{ "name":"DeleteUsageLimit", "http":{ @@ -225,6 +325,23 @@ {"shape":"ValidationException"} ] }, + "GetCustomDomainAssociation":{ + "name":"GetCustomDomainAssociation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetCustomDomainAssociationRequest"}, + "output":{"shape":"GetCustomDomainAssociationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "GetEndpointAccess":{ "name":"GetEndpointAccess", "http":{ @@ -283,6 +400,20 @@ {"shape":"ValidationException"} ] }, + "GetScheduledAction":{ + "name":"GetScheduledAction", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetScheduledActionRequest"}, + "output":{"shape":"GetScheduledActionResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, "GetSnapshot":{ "name":"GetSnapshot", "http":{ @@ -339,6 +470,22 @@ {"shape":"ValidationException"} ] }, + "ListCustomDomainAssociations":{ + "name":"ListCustomDomainAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCustomDomainAssociationsRequest"}, + "output":{"shape":"ListCustomDomainAssociationsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"InvalidPaginationException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "ListEndpointAccess":{ "name":"ListEndpointAccess", "http":{ @@ -380,6 +527,37 @@ {"shape":"ValidationException"} ] }, + "ListScheduledActions":{ + "name":"ListScheduledActions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListScheduledActionsRequest"}, + "output":{"shape":"ListScheduledActionsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"InvalidPaginationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "ListSnapshotCopyConfigurations":{ + "name":"ListSnapshotCopyConfigurations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListSnapshotCopyConfigurationsRequest"}, + "output":{"shape":"ListSnapshotCopyConfigurationsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"InvalidPaginationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, "ListSnapshots":{ "name":"ListSnapshots", "http":{ @@ -500,6 +678,21 @@ ], "idempotent":true }, + "RestoreTableFromRecoveryPoint":{ + "name":"RestoreTableFromRecoveryPoint", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RestoreTableFromRecoveryPointRequest"}, + "output":{"shape":"RestoreTableFromRecoveryPointResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, "RestoreTableFromSnapshot":{ "name":"RestoreTableFromSnapshot", "http":{ @@ -546,6 +739,23 @@ {"shape":"ThrottlingException"} ] }, + "UpdateCustomDomainAssociation":{ + "name":"UpdateCustomDomainAssociation", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateCustomDomainAssociationRequest"}, + "output":{"shape":"UpdateCustomDomainAssociationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "UpdateEndpointAccess":{ "name":"UpdateEndpointAccess", "http":{ @@ -577,6 +787,22 @@ {"shape":"ValidationException"} ] }, + "UpdateScheduledAction":{ + "name":"UpdateScheduledAction", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateScheduledActionRequest"}, + "output":{"shape":"UpdateScheduledActionResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, "UpdateSnapshot":{ "name":"UpdateSnapshot", "http":{ @@ -592,6 +818,22 @@ {"shape":"ValidationException"} ] }, + "UpdateSnapshotCopyConfiguration":{ + "name":"UpdateSnapshotCopyConfiguration", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSnapshotCopyConfigurationRequest"}, + "output":{"shape":"UpdateSnapshotCopyConfigurationResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, "UpdateUsageLimit":{ "name":"UpdateUsageLimit", "http":{ @@ -642,6 +884,19 @@ "max":1011, "min":1 }, + "Association":{ + "type":"structure", + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainCertificateExpiryTime":{"shape":"SyntheticTimestamp_date_time"}, + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "AssociationList":{ + "type":"list", + "member":{"shape":"Association"} + }, "Boolean":{ "type":"boolean", "box":true @@ -684,6 +939,28 @@ "snapshot":{"shape":"Snapshot"} } }, + "CreateCustomDomainAssociationRequest":{ + "type":"structure", + "required":[ + "customDomainCertificateArn", + "customDomainName", + "workgroupName" + ], + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "CreateCustomDomainAssociationResponse":{ + "type":"structure", + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainCertificateExpiryTime":{"shape":"SyntheticTimestamp_date_time"}, + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, "CreateEndpointAccessRequest":{ "type":"structure", "required":[ @@ -693,6 +970,7 @@ ], "members":{ "endpointName":{"shape":"String"}, + "ownerAccount":{"shape":"OwnerAccount"}, "subnetIds":{"shape":"SubnetIdList"}, "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "workgroupName":{"shape":"String"} @@ -708,6 +986,7 @@ "type":"structure", "required":["namespaceName"], "members":{ + "adminPasswordSecretKmsKeyId":{"shape":"KmsKeyId"}, "adminUserPassword":{"shape":"DbPassword"}, "adminUsername":{"shape":"DbUser"}, "dbName":{"shape":"String"}, @@ -715,7 +994,9 @@ "iamRoles":{"shape":"IamRoleArnList"}, "kmsKeyId":{"shape":"String"}, "logExports":{"shape":"LogExportList"}, + "manageAdminPassword":{"shape":"Boolean"}, "namespaceName":{"shape":"NamespaceName"}, + "redshiftIdcApplicationArn":{"shape":"RedshiftIdcApplicationArn"}, "tags":{"shape":"TagList"} } }, @@ -725,6 +1006,53 @@ "namespace":{"shape":"Namespace"} } }, + "CreateScheduledActionRequest":{ + "type":"structure", + "required":[ + "namespaceName", + "roleArn", + "schedule", + "scheduledActionName", + "targetAction" + ], + "members":{ + "enabled":{"shape":"Boolean"}, + "endTime":{"shape":"Timestamp"}, + "namespaceName":{"shape":"NamespaceName"}, + "roleArn":{"shape":"IamRoleArn"}, + "schedule":{"shape":"Schedule"}, + "scheduledActionDescription":{"shape":"String"}, + "scheduledActionName":{"shape":"ScheduledActionName"}, + "startTime":{"shape":"Timestamp"}, + "targetAction":{"shape":"TargetAction"} + } + }, + "CreateScheduledActionResponse":{ + "type":"structure", + "members":{ + "scheduledAction":{"shape":"ScheduledActionResponse"} + } + }, + "CreateSnapshotCopyConfigurationRequest":{ + "type":"structure", + "required":[ + "destinationRegion", + "namespaceName" + ], + "members":{ + "destinationKmsKeyId":{"shape":"KmsKeyId"}, + "destinationRegion":{"shape":"String"}, + "namespaceName":{"shape":"NamespaceName"}, + "snapshotRetentionPeriod":{"shape":"Integer"} + } + }, + "CreateSnapshotCopyConfigurationResponse":{ + "type":"structure", + "required":["snapshotCopyConfiguration"], + "members":{ + "snapshotCopyConfiguration":{"shape":"SnapshotCopyConfiguration"} + } + }, "CreateSnapshotRequest":{ "type":"structure", "required":[ @@ -744,6 +1072,19 @@ "snapshot":{"shape":"Snapshot"} } }, + "CreateSnapshotScheduleActionParameters":{ + "type":"structure", + "required":[ + "namespaceName", + "snapshotNamePrefix" + ], + "members":{ + "namespaceName":{"shape":"NamespaceName"}, + "retentionPeriod":{"shape":"Integer"}, + "snapshotNamePrefix":{"shape":"SnapshotNamePrefix"}, + "tags":{"shape":"TagList"} + } + }, "CreateUsageLimitRequest":{ "type":"structure", "required":[ @@ -775,6 +1116,7 @@ "baseCapacity":{"shape":"Integer"}, "configParameters":{"shape":"ConfigParameterList"}, "enhancedVpcRouting":{"shape":"Boolean"}, + "maxCapacity":{"shape":"Integer"}, "namespaceName":{"shape":"NamespaceName"}, "port":{"shape":"Integer"}, "publiclyAccessible":{"shape":"Boolean"}, @@ -790,6 +1132,18 @@ "workgroup":{"shape":"Workgroup"} } }, + "CustomDomainCertificateArnString":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:[\\w+=/,.@-]+:acm:[\\w+=/,.@-]*:[0-9]+:[\\w+=,.@-]+(/[\\w+=,.@-]+)*" + }, + "CustomDomainName":{ + "type":"string", + "max":253, + "min":1, + "pattern":"^(((?!-)[A-Za-z0-9-]{0,62}[A-Za-z0-9])\\.)+((?!-)[A-Za-z0-9-]{1,62}[A-Za-z0-9])$" + }, "DbName":{"type":"string"}, "DbPassword":{ "type":"string", @@ -799,6 +1153,22 @@ "type":"string", "sensitive":true }, + "DeleteCustomDomainAssociationRequest":{ + "type":"structure", + "required":[ + "customDomainName", + "workgroupName" + ], + "members":{ + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "DeleteCustomDomainAssociationResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteEndpointAccessRequest":{ "type":"structure", "required":["endpointName"], @@ -840,6 +1210,33 @@ "members":{ } }, + "DeleteScheduledActionRequest":{ + "type":"structure", + "required":["scheduledActionName"], + "members":{ + "scheduledActionName":{"shape":"ScheduledActionName"} + } + }, + "DeleteScheduledActionResponse":{ + "type":"structure", + "members":{ + "scheduledAction":{"shape":"ScheduledActionResponse"} + } + }, + "DeleteSnapshotCopyConfigurationRequest":{ + "type":"structure", + "required":["snapshotCopyConfigurationId"], + "members":{ + "snapshotCopyConfigurationId":{"shape":"String"} + } + }, + "DeleteSnapshotCopyConfigurationResponse":{ + "type":"structure", + "required":["snapshotCopyConfiguration"], + "members":{ + "snapshotCopyConfiguration":{"shape":"SnapshotCopyConfiguration"} + } + }, "DeleteSnapshotRequest":{ "type":"structure", "required":["snapshotName"], @@ -913,8 +1310,8 @@ }, "GetCredentialsRequest":{ "type":"structure", - "required":["workgroupName"], "members":{ + "customDomainName":{"shape":"CustomDomainName"}, "dbName":{"shape":"DbName"}, "durationSeconds":{"shape":"Integer"}, "workgroupName":{"shape":"WorkgroupName"} @@ -929,6 +1326,26 @@ "nextRefreshTime":{"shape":"Timestamp"} } }, + "GetCustomDomainAssociationRequest":{ + "type":"structure", + "required":[ + "customDomainName", + "workgroupName" + ], + "members":{ + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "GetCustomDomainAssociationResponse":{ + "type":"structure", + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainCertificateExpiryTime":{"shape":"SyntheticTimestamp_date_time"}, + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, "GetEndpointAccessRequest":{ "type":"structure", "required":["endpointName"], @@ -982,6 +1399,19 @@ "resourcePolicy":{"shape":"ResourcePolicy"} } }, + "GetScheduledActionRequest":{ + "type":"structure", + "required":["scheduledActionName"], + "members":{ + "scheduledActionName":{"shape":"ScheduledActionName"} + } + }, + "GetScheduledActionResponse":{ + "type":"structure", + "members":{ + "scheduledAction":{"shape":"ScheduledActionResponse"} + } + }, "GetSnapshotRequest":{ "type":"structure", "members":{ @@ -1073,6 +1503,31 @@ "exception":true }, "KmsKeyId":{"type":"string"}, + "ListCustomDomainAssociationsRequest":{ + "type":"structure", + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainName":{"shape":"CustomDomainName"}, + "maxResults":{ + "shape":"ListCustomDomainAssociationsRequestMaxResultsInteger", + "box":true + }, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListCustomDomainAssociationsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListCustomDomainAssociationsResponse":{ + "type":"structure", + "members":{ + "associations":{"shape":"AssociationList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListEndpointAccessRequest":{ "type":"structure", "members":{ @@ -1081,6 +1536,7 @@ "box":true }, "nextToken":{"shape":"String"}, + "ownerAccount":{"shape":"OwnerAccount"}, "vpcId":{"shape":"String"}, "workgroupName":{"shape":"String"} } @@ -1150,6 +1606,55 @@ "recoveryPoints":{"shape":"RecoveryPointList"} } }, + "ListScheduledActionsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListScheduledActionsRequestMaxResultsInteger", + "box":true + }, + "namespaceName":{"shape":"NamespaceName"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListScheduledActionsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListScheduledActionsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "scheduledActions":{"shape":"ScheduledActionsList"} + } + }, + "ListSnapshotCopyConfigurationsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListSnapshotCopyConfigurationsRequestMaxResultsInteger", + "box":true + }, + "namespaceName":{"shape":"NamespaceName"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListSnapshotCopyConfigurationsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListSnapshotCopyConfigurationsResponse":{ + "type":"structure", + "required":["snapshotCopyConfigurations"], + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "snapshotCopyConfigurations":{"shape":"SnapshotCopyConfigurations"} + } + }, "ListSnapshotsRequest":{ "type":"structure", "members":{ @@ -1248,7 +1753,8 @@ "shape":"ListWorkgroupsRequestMaxResultsInteger", "box":true }, - "nextToken":{"shape":"String"} + "nextToken":{"shape":"String"}, + "ownerAccount":{"shape":"OwnerAccount"} } }, "ListWorkgroupsRequestMaxResultsInteger":{ @@ -1286,6 +1792,8 @@ "Namespace":{ "type":"structure", "members":{ + "adminPasswordSecretArn":{"shape":"String"}, + "adminPasswordSecretKmsKeyId":{"shape":"KmsKeyId"}, "adminUsername":{"shape":"DbUser"}, "creationDate":{"shape":"SyntheticTimestamp_date_time"}, "dbName":{"shape":"String"}, @@ -1330,6 +1838,16 @@ "type":"list", "member":{"shape":"NetworkInterface"} }, + "NextInvocationsList":{ + "type":"list", + "member":{"shape":"Timestamp"} + }, + "OwnerAccount":{ + "type":"string", + "max":12, + "min":1, + "pattern":"(\\d{12})" + }, "PaginationToken":{ "type":"string", "max":1024, @@ -1369,6 +1887,11 @@ "type":"list", "member":{"shape":"RecoveryPoint"} }, + "RedshiftIdcApplicationArn":{ + "type":"string", + "max":1024, + "min":1 + }, "ResourceNotFoundException":{ "type":"structure", "required":["message"], @@ -1412,6 +1935,8 @@ "workgroupName" ], "members":{ + "adminPasswordSecretKmsKeyId":{"shape":"KmsKeyId"}, + "manageAdminPassword":{"shape":"Boolean"}, "namespaceName":{"shape":"NamespaceName"}, "ownerAccount":{"shape":"String"}, "snapshotArn":{"shape":"String"}, @@ -1427,6 +1952,35 @@ "snapshotName":{"shape":"String"} } }, + "RestoreTableFromRecoveryPointRequest":{ + "type":"structure", + "required":[ + "namespaceName", + "newTableName", + "recoveryPointId", + "sourceDatabaseName", + "sourceTableName", + "workgroupName" + ], + "members":{ + "activateCaseSensitiveIdentifier":{"shape":"Boolean"}, + "namespaceName":{"shape":"String"}, + "newTableName":{"shape":"String"}, + "recoveryPointId":{"shape":"String"}, + "sourceDatabaseName":{"shape":"String"}, + "sourceSchemaName":{"shape":"String"}, + "sourceTableName":{"shape":"String"}, + "targetDatabaseName":{"shape":"String"}, + "targetSchemaName":{"shape":"String"}, + "workgroupName":{"shape":"String"} + } + }, + "RestoreTableFromRecoveryPointResponse":{ + "type":"structure", + "members":{ + "tableRestoreStatus":{"shape":"TableRestoreStatus"} + } + }, "RestoreTableFromSnapshotRequest":{ "type":"structure", "required":[ @@ -1456,6 +2010,40 @@ "tableRestoreStatus":{"shape":"TableRestoreStatus"} } }, + "Schedule":{ + "type":"structure", + "members":{ + "at":{"shape":"Timestamp"}, + "cron":{"shape":"String"} + }, + "union":true + }, + "ScheduledActionName":{ + "type":"string", + "max":60, + "min":3, + "pattern":"^[a-z0-9-]+$" + }, + "ScheduledActionResponse":{ + "type":"structure", + "members":{ + "endTime":{"shape":"Timestamp"}, + "namespaceName":{"shape":"NamespaceName"}, + "nextInvocations":{"shape":"NextInvocationsList"}, + "roleArn":{"shape":"IamRoleArn"}, + "schedule":{"shape":"Schedule"}, + "scheduledActionDescription":{"shape":"String"}, + "scheduledActionName":{"shape":"ScheduledActionName"}, + "scheduledActionUuid":{"shape":"String"}, + "startTime":{"shape":"Timestamp"}, + "state":{"shape":"State"}, + "targetAction":{"shape":"TargetAction"} + } + }, + "ScheduledActionsList":{ + "type":"list", + "member":{"shape":"ScheduledActionName"} + }, "SecurityGroupId":{"type":"string"}, "SecurityGroupIdList":{ "type":"list", @@ -1475,6 +2063,8 @@ "accountsWithProvisionedRestoreAccess":{"shape":"AccountIdList"}, "accountsWithRestoreAccess":{"shape":"AccountIdList"}, "actualIncrementalBackupSizeInMegaBytes":{"shape":"Double"}, + "adminPasswordSecretArn":{"shape":"String"}, + "adminPasswordSecretKmsKeyId":{"shape":"KmsKeyId"}, "adminUsername":{"shape":"String"}, "backupProgressInMegaBytes":{"shape":"Double"}, "currentBackupRateInMegaBytesPerSecond":{"shape":"Double"}, @@ -1494,10 +2084,32 @@ "totalBackupSizeInMegaBytes":{"shape":"Double"} } }, + "SnapshotCopyConfiguration":{ + "type":"structure", + "members":{ + "destinationKmsKeyId":{"shape":"KmsKeyId"}, + "destinationRegion":{"shape":"String"}, + "namespaceName":{"shape":"NamespaceName"}, + "snapshotCopyConfigurationArn":{"shape":"String"}, + "snapshotCopyConfigurationId":{"shape":"String"}, + "snapshotRetentionPeriod":{"shape":"Integer"} + } + }, + "SnapshotCopyConfigurations":{ + "type":"list", + "member":{"shape":"SnapshotCopyConfiguration"}, + "max":100, + "min":1 + }, "SnapshotList":{ "type":"list", "member":{"shape":"Snapshot"} }, + "SnapshotNamePrefix":{ + "type":"string", + "max":235, + "min":1 + }, "SnapshotStatus":{ "type":"string", "enum":[ @@ -1509,6 +2121,13 @@ "COPYING" ] }, + "State":{ + "type":"string", + "enum":[ + "ACTIVE", + "DISABLED" + ] + }, "String":{"type":"string"}, "SubnetId":{"type":"string"}, "SubnetIdList":{ @@ -1526,6 +2145,7 @@ "namespaceName":{"shape":"String"}, "newTableName":{"shape":"String"}, "progressInMegaBytes":{"shape":"Long"}, + "recoveryPointId":{"shape":"String"}, "requestTime":{"shape":"Timestamp"}, "snapshotName":{"shape":"String"}, "sourceDatabaseName":{"shape":"String"}, @@ -1592,6 +2212,13 @@ "max":256, "min":0 }, + "TargetAction":{ + "type":"structure", + "members":{ + "createSnapshot":{"shape":"CreateSnapshotScheduleActionParameters"} + }, + "union":true + }, "ThrottlingException":{ "type":"structure", "members":{ @@ -1626,6 +2253,28 @@ "members":{ } }, + "UpdateCustomDomainAssociationRequest":{ + "type":"structure", + "required":[ + "customDomainCertificateArn", + "customDomainName", + "workgroupName" + ], + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "UpdateCustomDomainAssociationResponse":{ + "type":"structure", + "members":{ + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainCertificateExpiryTime":{"shape":"SyntheticTimestamp_date_time"}, + "customDomainName":{"shape":"CustomDomainName"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, "UpdateEndpointAccessRequest":{ "type":"structure", "required":["endpointName"], @@ -1644,12 +2293,14 @@ "type":"structure", "required":["namespaceName"], "members":{ + "adminPasswordSecretKmsKeyId":{"shape":"KmsKeyId"}, "adminUserPassword":{"shape":"DbPassword"}, "adminUsername":{"shape":"DbUser"}, "defaultIamRoleArn":{"shape":"String"}, "iamRoles":{"shape":"IamRoleArnList"}, "kmsKeyId":{"shape":"String"}, "logExports":{"shape":"LogExportList"}, + "manageAdminPassword":{"shape":"Boolean"}, "namespaceName":{"shape":"NamespaceName"} } }, @@ -1660,6 +2311,41 @@ "namespace":{"shape":"Namespace"} } }, + "UpdateScheduledActionRequest":{ + "type":"structure", + "required":["scheduledActionName"], + "members":{ + "enabled":{"shape":"Boolean"}, + "endTime":{"shape":"Timestamp"}, + "roleArn":{"shape":"IamRoleArn"}, + "schedule":{"shape":"Schedule"}, + "scheduledActionDescription":{"shape":"String"}, + "scheduledActionName":{"shape":"ScheduledActionName"}, + "startTime":{"shape":"Timestamp"}, + "targetAction":{"shape":"TargetAction"} + } + }, + "UpdateScheduledActionResponse":{ + "type":"structure", + "members":{ + "scheduledAction":{"shape":"ScheduledActionResponse"} + } + }, + "UpdateSnapshotCopyConfigurationRequest":{ + "type":"structure", + "required":["snapshotCopyConfigurationId"], + "members":{ + "snapshotCopyConfigurationId":{"shape":"String"}, + "snapshotRetentionPeriod":{"shape":"Integer"} + } + }, + "UpdateSnapshotCopyConfigurationResponse":{ + "type":"structure", + "required":["snapshotCopyConfiguration"], + "members":{ + "snapshotCopyConfiguration":{"shape":"SnapshotCopyConfiguration"} + } + }, "UpdateSnapshotRequest":{ "type":"structure", "required":["snapshotName"], @@ -1696,6 +2382,7 @@ "baseCapacity":{"shape":"Integer"}, "configParameters":{"shape":"ConfigParameterList"}, "enhancedVpcRouting":{"shape":"Boolean"}, + "maxCapacity":{"shape":"Integer"}, "port":{"shape":"Integer"}, "publiclyAccessible":{"shape":"Boolean"}, "securityGroupIds":{"shape":"SecurityGroupIdList"}, @@ -1771,6 +2458,10 @@ "type":"list", "member":{"shape":"VpcEndpoint"} }, + "VpcIds":{ + "type":"list", + "member":{"shape":"String"} + }, "VpcSecurityGroupId":{"type":"string"}, "VpcSecurityGroupIdList":{ "type":"list", @@ -1793,9 +2484,15 @@ "baseCapacity":{"shape":"Integer"}, "configParameters":{"shape":"ConfigParameterList"}, "creationDate":{"shape":"SyntheticTimestamp_date_time"}, + "crossAccountVpcs":{"shape":"VpcIds"}, + "customDomainCertificateArn":{"shape":"CustomDomainCertificateArnString"}, + "customDomainCertificateExpiryTime":{"shape":"SyntheticTimestamp_date_time"}, + "customDomainName":{"shape":"CustomDomainName"}, "endpoint":{"shape":"Endpoint"}, "enhancedVpcRouting":{"shape":"Boolean"}, + "maxCapacity":{"shape":"Integer"}, "namespaceName":{"shape":"String"}, + "patchVersion":{"shape":"String"}, "port":{"shape":"Integer"}, "publiclyAccessible":{"shape":"Boolean"}, "securityGroupIds":{"shape":"SecurityGroupIdList"}, @@ -1803,7 +2500,8 @@ "subnetIds":{"shape":"SubnetIdList"}, "workgroupArn":{"shape":"String"}, "workgroupId":{"shape":"String"}, - "workgroupName":{"shape":"WorkgroupName"} + "workgroupName":{"shape":"WorkgroupName"}, + "workgroupVersion":{"shape":"String"} } }, "WorkgroupList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,29 +3,40 @@ "service": "

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.

", + "CreateCustomDomainAssociation": "

Creates a custom domain association for Amazon Redshift Serverless.

", "CreateEndpointAccess": "

Creates an Amazon Redshift Serverless managed VPC endpoint.

", "CreateNamespace": "

Creates a namespace in Amazon Redshift Serverless.

", + "CreateScheduledAction": "

Creates a scheduled action. A scheduled action contains a schedule and an Amazon Redshift API action. For example, you can create a schedule of when to run the CreateSnapshot API operation.

", "CreateSnapshot": "

Creates a snapshot of all databases in a namespace. For more information about snapshots, see Working with snapshots and recovery points.

", + "CreateSnapshotCopyConfiguration": "

Creates a snapshot copy configuration that lets you copy snapshots to another Amazon Web Services Region.

", "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.

", + "DeleteCustomDomainAssociation": "

Deletes a custom domain association for 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.

", + "DeleteScheduledAction": "

Deletes a scheduled action.

", "DeleteSnapshot": "

Deletes a snapshot from Amazon Redshift Serverless.

", + "DeleteSnapshotCopyConfiguration": "

Deletes a snapshot copy configuration

", "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> 
", + "GetCustomDomainAssociation": "

Gets information about a specific custom domain association.

", "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.

", + "GetScheduledAction": "

Returns information about a scheduled action.

", "GetSnapshot": "

Returns information about a specific snapshot.

", "GetTableRestoreStatus": "

Returns information about a TableRestoreStatus object.

", "GetUsageLimit": "

Returns information about a usage limit.

", "GetWorkgroup": "

Returns information about a specific workgroup.

", + "ListCustomDomainAssociations": "

Lists custom domain associations for Amazon Redshift Serverless.

", "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.

", + "ListScheduledActions": "

Returns a list of scheduled actions. You can use the flags to filter the list of returned scheduled actions.

", + "ListSnapshotCopyConfigurations": "

Returns a list of snapshot copy configurations.

", "ListSnapshots": "

Returns a list of snapshots.

", "ListTableRestoreStatus": "

Returns information about an array of TableRestoreStatus objects.

", "ListTagsForResource": "

Lists the tags assigned to a resource.

", @@ -34,12 +45,16 @@ "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.

", + "RestoreTableFromRecoveryPoint": "

Restores a table from a recovery point to your Amazon Redshift Serverless instance. You can't use this operation to restore tables with interleaved sort keys.

", "RestoreTableFromSnapshot": "

Restores a table from a snapshot to your Amazon Redshift Serverless instance. You can't use this operation to restore tables with interleaved sort keys.

", "TagResource": "

Assigns one or more tags to a resource.

", "UntagResource": "

Removes a tag or set of tags from a resource.

", + "UpdateCustomDomainAssociation": "

Updates an Amazon Redshift Serverless certificate associated with a custom domain.

", "UpdateEndpointAccess": "

Updates an Amazon Redshift Serverless managed endpoint.

", "UpdateNamespace": "

Updates a namespace with the specified settings. Unless required, you can't update multiple parameters in one request. For example, you must specify both adminUsername and adminUserPassword to update either field, but you can't update both kmsKeyId and logExports in a single request.

", + "UpdateScheduledAction": "

Updates a scheduled action.

", "UpdateSnapshot": "

Updates a snapshot.

", + "UpdateSnapshotCopyConfiguration": "

Updates a snapshot copy configuration.

", "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. You can't update multiple parameters in one request. For example, you can update baseCapacity or port in a single request, but you can't update both in the same request.

" }, @@ -66,12 +81,30 @@ "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource to remove tags from.

" } }, + "Association": { + "base": "

An object that represents the custom domain name association.

", + "refs": { + "AssociationList$member": null + } + }, + "AssociationList": { + "base": null, + "refs": { + "ListCustomDomainAssociationsResponse$associations": "

A list of Association objects.

" + } + }, "Boolean": { "base": null, "refs": { + "CreateNamespaceRequest$manageAdminPassword": "

If true, Amazon Redshift uses Secrets Manager to manage the namespace's admin credentials. You can't use adminUserPassword if manageAdminPassword is true. If manageAdminPassword is false or not set, Amazon Redshift uses adminUserPassword for the admin user account's password.

", + "CreateScheduledActionRequest$enabled": "

Indicates whether the schedule is enabled. If false, the scheduled action does not trigger. For more information about state of the scheduled action, see ScheduledAction.

", "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.

", + "RestoreFromSnapshotRequest$manageAdminPassword": "

If true, Amazon Redshift uses Secrets Manager to manage the restored snapshot's admin credentials. If MmanageAdminPassword is false or not set, Amazon Redshift uses the admin credentials that the namespace or cluster had at the time the snapshot was taken.

", + "RestoreTableFromRecoveryPointRequest$activateCaseSensitiveIdentifier": "

Indicates whether name identifiers for database, schema, and table are case sensitive. If true, the names are case sensitive. If false, the names are not case sensitive. The default is false.

", "RestoreTableFromSnapshotRequest$activateCaseSensitiveIdentifier": "

Indicates whether name identifiers for database, schema, and table are case sensitive. If true, the names are case sensitive. If false, the names are not case sensitive. The default is false.

", + "UpdateNamespaceRequest$manageAdminPassword": "

If true, Amazon Redshift uses Secrets Manager to manage the namespace's admin credentials. You can't use adminUserPassword if manageAdminPassword is true. If manageAdminPassword is false or not set, Amazon Redshift uses adminUserPassword for the admin user account's password.

", + "UpdateScheduledActionRequest$enabled": "

Specifies whether to enable the scheduled action.

", "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.

", @@ -87,9 +120,9 @@ "ConfigParameterList": { "base": null, "refs": { - "CreateWorkgroupRequest$configParameters": "

An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

", - "UpdateWorkgroupRequest$configParameters": "

An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

", - "Workgroup$configParameters": "

An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, query_group, , search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

" + "CreateWorkgroupRequest$configParameters": "

An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

", + "UpdateWorkgroupRequest$configParameters": "

An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

", + "Workgroup$configParameters": "

An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

" } }, "ConflictException": { @@ -107,6 +140,16 @@ "refs": { } }, + "CreateCustomDomainAssociationRequest": { + "base": null, + "refs": { + } + }, + "CreateCustomDomainAssociationResponse": { + "base": null, + "refs": { + } + }, "CreateEndpointAccessRequest": { "base": null, "refs": { @@ -127,6 +170,26 @@ "refs": { } }, + "CreateScheduledActionRequest": { + "base": null, + "refs": { + } + }, + "CreateScheduledActionResponse": { + "base": null, + "refs": { + } + }, + "CreateSnapshotCopyConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreateSnapshotCopyConfigurationResponse": { + "base": null, + "refs": { + } + }, "CreateSnapshotRequest": { "base": null, "refs": { @@ -137,6 +200,12 @@ "refs": { } }, + "CreateSnapshotScheduleActionParameters": { + "base": "

The parameters that you can use to configure a scheduled action to create a snapshot. For more information about creating a scheduled action, see CreateScheduledAction.

", + "refs": { + "TargetAction$createSnapshot": null + } + }, "CreateUsageLimitRequest": { "base": null, "refs": { @@ -157,6 +226,35 @@ "refs": { } }, + "CustomDomainCertificateArnString": { + "base": null, + "refs": { + "Association$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

", + "CreateCustomDomainAssociationRequest$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

", + "CreateCustomDomainAssociationResponse$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

", + "GetCustomDomainAssociationResponse$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

", + "ListCustomDomainAssociationsRequest$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

", + "UpdateCustomDomainAssociationRequest$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN). This is optional.

", + "UpdateCustomDomainAssociationResponse$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

", + "Workgroup$customDomainCertificateArn": "

The custom domain name’s certificate Amazon resource name (ARN).

" + } + }, + "CustomDomainName": { + "base": null, + "refs": { + "Association$customDomainName": "

The custom domain name associated with the workgroup.

", + "CreateCustomDomainAssociationRequest$customDomainName": "

The custom domain name to associate with the workgroup.

", + "CreateCustomDomainAssociationResponse$customDomainName": "

The custom domain name to associate with the workgroup.

", + "DeleteCustomDomainAssociationRequest$customDomainName": "

The custom domain name associated with the workgroup.

", + "GetCredentialsRequest$customDomainName": "

The custom domain name associated with the workgroup. The custom domain name or the workgroup name must be included in the request.

", + "GetCustomDomainAssociationRequest$customDomainName": "

The custom domain name associated with the workgroup.

", + "GetCustomDomainAssociationResponse$customDomainName": "

The custom domain name associated with the workgroup.

", + "ListCustomDomainAssociationsRequest$customDomainName": "

The custom domain name associated with the workgroup.

", + "UpdateCustomDomainAssociationRequest$customDomainName": "

The custom domain name associated with the workgroup.

", + "UpdateCustomDomainAssociationResponse$customDomainName": "

The custom domain name associated with the workgroup.

", + "Workgroup$customDomainName": "

The custom domain name associated with the workgroup.

" + } + }, "DbName": { "base": null, "refs": { @@ -166,9 +264,9 @@ "DbPassword": { "base": null, "refs": { - "CreateNamespaceRequest$adminUserPassword": "

The password of the administrator for the first database created in the namespace.

", + "CreateNamespaceRequest$adminUserPassword": "

The password of the administrator for the first database created in the namespace.

You can't use adminUserPassword if manageAdminPassword is true.

", "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. This parameter must be updated together with adminUsername.

" + "UpdateNamespaceRequest$adminUserPassword": "

The password of the administrator for the first database created in the namespace. This parameter must be updated together with adminUsername.

You can't use adminUserPassword if manageAdminPassword is true.

" } }, "DbUser": { @@ -180,6 +278,16 @@ "UpdateNamespaceRequest$adminUsername": "

The username of the administrator for the first database created in the namespace. This parameter must be updated together with adminUserPassword.

" } }, + "DeleteCustomDomainAssociationRequest": { + "base": null, + "refs": { + } + }, + "DeleteCustomDomainAssociationResponse": { + "base": null, + "refs": { + } + }, "DeleteEndpointAccessRequest": { "base": null, "refs": { @@ -210,6 +318,26 @@ "refs": { } }, + "DeleteScheduledActionRequest": { + "base": null, + "refs": { + } + }, + "DeleteScheduledActionResponse": { + "base": null, + "refs": { + } + }, + "DeleteSnapshotCopyConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteSnapshotCopyConfigurationResponse": { + "base": null, + "refs": { + } + }, "DeleteSnapshotRequest": { "base": null, "refs": { @@ -282,6 +410,16 @@ "refs": { } }, + "GetCustomDomainAssociationRequest": { + "base": null, + "refs": { + } + }, + "GetCustomDomainAssociationResponse": { + "base": null, + "refs": { + } + }, "GetEndpointAccessRequest": { "base": null, "refs": { @@ -322,6 +460,16 @@ "refs": { } }, + "GetScheduledActionRequest": { + "base": null, + "refs": { + } + }, + "GetScheduledActionResponse": { + "base": null, + "refs": { + } + }, "GetSnapshotRequest": { "base": null, "refs": { @@ -365,7 +513,10 @@ "IamRoleArn": { "base": null, "refs": { - "IamRoleArnList$member": null + "CreateScheduledActionRequest$roleArn": "

The ARN of the IAM role to assume to run the scheduled action. This IAM role must have permission to run the Amazon Redshift Serverless API operation in the scheduled action. This IAM role must allow the Amazon Redshift scheduler to schedule creating snapshots. (Principal scheduler.redshift.amazonaws.com) to assume permissions on your behalf. For more information about the IAM role to use with the Amazon Redshift scheduler, see Using Identity-Based Policies for Amazon Redshift in the Amazon Redshift Cluster Management Guide

", + "IamRoleArnList$member": null, + "ScheduledActionResponse$roleArn": "

The ARN of the IAM role to assume to run the scheduled action. This IAM role must have permission to run the Amazon Redshift Serverless API operation in the scheduled action. This IAM role must allow the Amazon Redshift scheduler to schedule creating snapshots. (Principal scheduler.redshift.amazonaws.com) to assume permissions on your behalf. For more information about the IAM role to use with the Amazon Redshift scheduler, see Using Identity-Based Policies for Amazon Redshift in the Amazon Redshift Cluster Management Guide

", + "UpdateScheduledActionRequest$roleArn": "

The ARN of the IAM role to assume to run the scheduled action. This IAM role must have permission to run the Amazon Redshift Serverless API operation in the scheduled action. This IAM role must allow the Amazon Redshift scheduler to schedule creating snapshots (Principal scheduler.redshift.amazonaws.com) to assume permissions on your behalf. For more information about the IAM role to use with the Amazon Redshift scheduler, see Using Identity-Based Policies for Amazon Redshift in the Amazon Redshift Cluster Management Guide

" } }, "IamRoleArnList": { @@ -385,8 +536,11 @@ "base": null, "refs": { "ConvertRecoveryPointToSnapshotRequest$retentionPeriod": "

How long to retain the snapshot.

", + "CreateSnapshotCopyConfigurationRequest$snapshotRetentionPeriod": "

The retention period of the snapshots that you copy to the destination Amazon Web Services Region.

", "CreateSnapshotRequest$retentionPeriod": "

How long to retain the created snapshot.

", + "CreateSnapshotScheduleActionParameters$retentionPeriod": "

The retention period of the snapshot created by the scheduled action.

", "CreateWorkgroupRequest$baseCapacity": "

The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).

", + "CreateWorkgroupRequest$maxCapacity": "

The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs.

", "CreateWorkgroupRequest$port": "

The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.

", "DeleteNamespaceRequest$finalSnapshotRetentionPeriod": "

How long to retain the final snapshot.

", "Endpoint$port": "

The port that Amazon Redshift Serverless listens on.

", @@ -394,10 +548,14 @@ "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.

", + "SnapshotCopyConfiguration$snapshotRetentionPeriod": "

The retention period of snapshots that are copied to the destination Amazon Web Services Region.

", + "UpdateSnapshotCopyConfigurationRequest$snapshotRetentionPeriod": "

The new retention period of how long to keep a snapshot in the destination Amazon Web Services Region.

", "UpdateSnapshotRequest$retentionPeriod": "

The new retention period of the snapshot.

", "UpdateWorkgroupRequest$baseCapacity": "

The new base data warehouse capacity in Redshift Processing Units (RPUs).

", + "UpdateWorkgroupRequest$maxCapacity": "

The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs.

", "UpdateWorkgroupRequest$port": "

The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.

", "Workgroup$baseCapacity": "

The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).

", + "Workgroup$maxCapacity": "

The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs.

", "Workgroup$port": "

The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.

" } }, @@ -414,7 +572,30 @@ "KmsKeyId": { "base": null, "refs": { - "Snapshot$kmsKeyId": "

The unique identifier of the KMS key used to encrypt the snapshot.

" + "CreateNamespaceRequest$adminPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the namespace's admin credentials secret. You can only use this parameter if manageAdminPassword is true.

", + "CreateSnapshotCopyConfigurationRequest$destinationKmsKeyId": "

The KMS key to use to encrypt your snapshots in the destination Amazon Web Services Region.

", + "Namespace$adminPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the namespace's admin credentials secret.

", + "RestoreFromSnapshotRequest$adminPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the namespace's admin credentials secret.

", + "Snapshot$adminPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the namespace's admin credentials secret.

", + "Snapshot$kmsKeyId": "

The unique identifier of the KMS key used to encrypt the snapshot.

", + "SnapshotCopyConfiguration$destinationKmsKeyId": "

The ID of the KMS key to use to encrypt your snapshots in the destination Amazon Web Services Region.

", + "UpdateNamespaceRequest$adminPasswordSecretKmsKeyId": "

The ID of the Key Management Service (KMS) key used to encrypt and store the namespace's admin credentials secret. You can only use this parameter if manageAdminPassword is true.

" + } + }, + "ListCustomDomainAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListCustomDomainAssociationsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListCustomDomainAssociationsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to display the next page of results.

" + } + }, + "ListCustomDomainAssociationsResponse": { + "base": null, + "refs": { } }, "ListEndpointAccessRequest": { @@ -465,6 +646,38 @@ "refs": { } }, + "ListScheduledActionsRequest": { + "base": null, + "refs": { + } + }, + "ListScheduledActionsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListScheduledActionsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. Use nextToken to display the next page of results.

" + } + }, + "ListScheduledActionsResponse": { + "base": null, + "refs": { + } + }, + "ListSnapshotCopyConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListSnapshotCopyConfigurationsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListSnapshotCopyConfigurationsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to display the next page of results.

" + } + }, + "ListSnapshotCopyConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListSnapshotsRequest": { "base": null, "refs": { @@ -587,14 +800,21 @@ "base": null, "refs": { "CreateNamespaceRequest$namespaceName": "

The name of the namespace.

", + "CreateScheduledActionRequest$namespaceName": "

The name of the namespace for which to create a scheduled action.

", + "CreateSnapshotCopyConfigurationRequest$namespaceName": "

The name of the namespace to copy snapshots from.

", + "CreateSnapshotScheduleActionParameters$namespaceName": "

The name of the namespace for which you want to configure a scheduled action to create a snapshot.

", "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.

", + "ListScheduledActionsRequest$namespaceName": "

The name of namespace associated with the scheduled action to retrieve.

", + "ListSnapshotCopyConfigurationsRequest$namespaceName": "

The namespace from which to list all snapshot copy configurations.

", "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.

", + "ScheduledActionResponse$namespaceName": "

The end time in UTC when the schedule is no longer active. After this time, the scheduled action does not trigger.

", + "SnapshotCopyConfiguration$namespaceName": "

The name of the namespace to copy snapshots from in the source Amazon Web Services Region.

", "UpdateNamespaceRequest$namespaceName": "

The name of the namespace to update. You can't update the name of a namespace once it is created.

" } }, @@ -616,9 +836,29 @@ "VpcEndpoint$networkInterfaces": "

One or more network interfaces of the endpoint. Also known as an interface endpoint.

" } }, + "NextInvocationsList": { + "base": null, + "refs": { + "ScheduledActionResponse$nextInvocations": "

An array of timestamps of when the next scheduled actions will trigger.

" + } + }, + "OwnerAccount": { + "base": null, + "refs": { + "CreateEndpointAccessRequest$ownerAccount": "

The owner Amazon Web Services account for the Amazon Redshift Serverless workgroup.

", + "ListEndpointAccessRequest$ownerAccount": "

The owner Amazon Web Services account for the Amazon Redshift Serverless workgroup.

", + "ListWorkgroupsRequest$ownerAccount": "

The owner Amazon Web Services account for the Amazon Redshift Serverless workgroup.

" + } + }, "PaginationToken": { "base": null, "refs": { + "ListCustomDomainAssociationsRequest$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.

", + "ListCustomDomainAssociationsResponse$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.

", + "ListScheduledActionsRequest$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.

", + "ListScheduledActionsResponse$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.

", + "ListSnapshotCopyConfigurationsRequest$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.

", + "ListSnapshotCopyConfigurationsResponse$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.

", "ListTableRestoreStatusRequest$nextToken": "

If your initial ListTableRestoreStatus operation returns a nextToken, you can include the returned nextToken in following ListTableRestoreStatus operations. This will return results on the next page.

", "ListTableRestoreStatusResponse$nextToken": "

If your initial ListTableRestoreStatus operation returns a nextToken, you can include the returned nextToken in following ListTableRestoreStatus operations. This will returns results on the next page.

", "ListUsageLimitsRequest$nextToken": "

If your initial ListUsageLimits operation returns a nextToken, you can include the returned nextToken in following ListUsageLimits operations, which returns results in the next page.

", @@ -628,7 +868,7 @@ "ParameterKey": { "base": null, "refs": { - "ConfigParameter$parameterKey": "

The key of the parameter. The options are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

" + "ConfigParameter$parameterKey": "

The key of the parameter. The options are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless.

" } }, "ParameterValue": { @@ -660,6 +900,12 @@ "ListRecoveryPointsResponse$recoveryPoints": "

The returned recovery point objects.

" } }, + "RedshiftIdcApplicationArn": { + "base": null, + "refs": { + "CreateNamespaceRequest$redshiftIdcApplicationArn": "

The ARN for the Redshift application that integrates with IAM Identity Center.

" + } + }, "ResourceNotFoundException": { "base": "

The resource could not be found.

", "refs": { @@ -692,6 +938,16 @@ "refs": { } }, + "RestoreTableFromRecoveryPointRequest": { + "base": null, + "refs": { + } + }, + "RestoreTableFromRecoveryPointResponse": { + "base": null, + "refs": { + } + }, "RestoreTableFromSnapshotRequest": { "base": null, "refs": { @@ -702,6 +958,40 @@ "refs": { } }, + "Schedule": { + "base": "

The schedule of when Amazon Redshift Serverless should run the scheduled action.

", + "refs": { + "CreateScheduledActionRequest$schedule": "

The schedule for a one-time (at format) or recurring (cron format) scheduled action. Schedule invocations must be separated by at least one hour.

Format of at expressions is \"at(yyyy-mm-ddThh:mm:ss)\". For example, \"at(2016-03-04T17:27:00)\".

Format of cron expressions is \"cron(Minutes Hours Day-of-month Month Day-of-week Year)\". For example, \"cron(0 10 ? * MON *)\". For more information, see Cron Expressions in the Amazon CloudWatch Events User Guide.

", + "ScheduledActionResponse$schedule": "

The schedule for a one-time (at format) or recurring (cron format) scheduled action. Schedule invocations must be separated by at least one hour.

Format of at expressions is \"at(yyyy-mm-ddThh:mm:ss)\". For example, \"at(2016-03-04T17:27:00)\".

Format of cron expressions is \"cron(Minutes Hours Day-of-month Month Day-of-week Year)\". For example, \"cron(0 10 ? * MON *)\". For more information, see Cron Expressions in the Amazon CloudWatch Events User Guide.

", + "UpdateScheduledActionRequest$schedule": "

The schedule for a one-time (at format) or recurring (cron format) scheduled action. Schedule invocations must be separated by at least one hour.

Format of at expressions is \"at(yyyy-mm-ddThh:mm:ss)\". For example, \"at(2016-03-04T17:27:00)\".

Format of cron expressions is \"cron(Minutes Hours Day-of-month Month Day-of-week Year)\". For example, \"cron(0 10 ? * MON *)\". For more information, see Cron Expressions in the Amazon CloudWatch Events User Guide.

" + } + }, + "ScheduledActionName": { + "base": null, + "refs": { + "CreateScheduledActionRequest$scheduledActionName": "

The name of the scheduled action.

", + "DeleteScheduledActionRequest$scheduledActionName": "

The name of the scheduled action to delete.

", + "GetScheduledActionRequest$scheduledActionName": "

The name of the scheduled action.

", + "ScheduledActionResponse$scheduledActionName": "

The name of the scheduled action.

", + "ScheduledActionsList$member": null, + "UpdateScheduledActionRequest$scheduledActionName": "

The name of the scheduled action to update to.

" + } + }, + "ScheduledActionResponse": { + "base": "

The returned scheduled action object.

", + "refs": { + "CreateScheduledActionResponse$scheduledAction": "

The returned ScheduledAction object that describes the properties of a scheduled action.

", + "DeleteScheduledActionResponse$scheduledAction": "

The deleted scheduled action object.

", + "GetScheduledActionResponse$scheduledAction": "

The returned scheduled action object.

", + "UpdateScheduledActionResponse$scheduledAction": "

The ScheduledAction object that was updated.

" + } + }, + "ScheduledActionsList": { + "base": null, + "refs": { + "ListScheduledActionsResponse$scheduledActions": "

All of the returned scheduled action objects.

" + } + }, "SecurityGroupId": { "base": null, "refs": { @@ -732,18 +1022,45 @@ "UpdateSnapshotResponse$snapshot": "

The updated snapshot object.

" } }, + "SnapshotCopyConfiguration": { + "base": "

The object that you configure to copy snapshots from one namespace to a namespace in another Amazon Web Services Region.

", + "refs": { + "CreateSnapshotCopyConfigurationResponse$snapshotCopyConfiguration": "

The snapshot copy configuration object that is returned.

", + "DeleteSnapshotCopyConfigurationResponse$snapshotCopyConfiguration": "

The deleted snapshot copy configuration object.

", + "SnapshotCopyConfigurations$member": null, + "UpdateSnapshotCopyConfigurationResponse$snapshotCopyConfiguration": "

The updated snapshot copy configuration object.

" + } + }, + "SnapshotCopyConfigurations": { + "base": null, + "refs": { + "ListSnapshotCopyConfigurationsResponse$snapshotCopyConfigurations": "

All of the returned snapshot copy configurations.

" + } + }, "SnapshotList": { "base": null, "refs": { "ListSnapshotsResponse$snapshots": "

All of the returned snapshot objects.

" } }, + "SnapshotNamePrefix": { + "base": null, + "refs": { + "CreateSnapshotScheduleActionParameters$snapshotNamePrefix": "

A string prefix that is attached to the name of the snapshot created by the scheduled action. The final name of the snapshot is the string prefix appended by the date and time of when the snapshot was created.

" + } + }, "SnapshotStatus": { "base": null, "refs": { "Snapshot$status": "

The status of the snapshot.

" } }, + "State": { + "base": null, + "refs": { + "ScheduledActionResponse$state": "

The state of the scheduled action.

" + } + }, "String": { "base": null, "refs": { @@ -758,12 +1075,15 @@ "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.

", + "CreateScheduledActionRequest$scheduledActionDescription": "

The description of the scheduled action.

", + "CreateSnapshotCopyConfigurationRequest$destinationRegion": "

The destination Amazon Web Services Region that you want to copy snapshots to.

", "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.

", + "DeleteSnapshotCopyConfigurationRequest$snapshotCopyConfigurationId": "

The ID of the snapshot copy configuration 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.

", @@ -802,6 +1122,7 @@ "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 following 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$adminPasswordSecretArn": "

The Amazon Resource Name (ARN) for the namespace's admin user credentials secret.

", "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.

", @@ -825,6 +1146,15 @@ "RestoreFromSnapshotRequest$snapshotName": "

The name of the snapshot to restore from. Must not be specified at the same time as snapshotArn.

", "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.

", + "RestoreTableFromRecoveryPointRequest$namespaceName": "

Namespace of the recovery point to restore from.

", + "RestoreTableFromRecoveryPointRequest$newTableName": "

The name of the table to create from the restore operation.

", + "RestoreTableFromRecoveryPointRequest$recoveryPointId": "

The ID of the recovery point to restore the table from.

", + "RestoreTableFromRecoveryPointRequest$sourceDatabaseName": "

The name of the source database that contains the table being restored.

", + "RestoreTableFromRecoveryPointRequest$sourceSchemaName": "

The name of the source schema that contains the table being restored.

", + "RestoreTableFromRecoveryPointRequest$sourceTableName": "

The name of the source table being restored.

", + "RestoreTableFromRecoveryPointRequest$targetDatabaseName": "

The name of the database to restore the table to.

", + "RestoreTableFromRecoveryPointRequest$targetSchemaName": "

The name of the schema to restore the table to.

", + "RestoreTableFromRecoveryPointRequest$workgroupName": "

The workgroup to restore the table to.

", "RestoreTableFromSnapshotRequest$namespaceName": "

The namespace of the snapshot to restore from.

", "RestoreTableFromSnapshotRequest$newTableName": "

The name of the table to create from the restore operation.

", "RestoreTableFromSnapshotRequest$snapshotName": "

The name of the snapshot to restore the table from.

", @@ -834,21 +1164,29 @@ "RestoreTableFromSnapshotRequest$targetDatabaseName": "

The name of the database to restore the table to.

", "RestoreTableFromSnapshotRequest$targetSchemaName": "

The name of the schema to restore the table to.

", "RestoreTableFromSnapshotRequest$workgroupName": "

The workgroup to restore the table to.

", + "Schedule$cron": "

The cron expression to use to schedule a recurring scheduled action. Schedule invocations must be separated by at least one hour.

Format of cron expressions is \"cron(Minutes Hours Day-of-month Month Day-of-week Year)\". For example, \"cron(0 10 ? * MON *)\". For more information, see Cron Expressions in the Amazon CloudWatch Events User Guide.

", + "ScheduledActionResponse$scheduledActionDescription": "

The description of the scheduled action.

", + "ScheduledActionResponse$scheduledActionUuid": "

The uuid of the scheduled action.

", "ServiceQuotaExceededException$message": null, + "Snapshot$adminPasswordSecretArn": "

The Amazon Resource Name (ARN) for the namespace's admin user credentials secret.

", "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.

", - "TableRestoreStatus$message": "

A description of the status of the table restore request. Status values include SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS.

", + "SnapshotCopyConfiguration$destinationRegion": "

The destination Amazon Web Services Region to copy snapshots to.

", + "SnapshotCopyConfiguration$snapshotCopyConfigurationArn": "

The ARN of the snapshot copy configuration object.

", + "SnapshotCopyConfiguration$snapshotCopyConfigurationId": "

The ID of the snapshot copy configuration object.

", + "TableRestoreStatus$message": "

A message that explains the returned status. For example, if the status of the operation is FAILED, the message explains why the operation failed.

", "TableRestoreStatus$namespaceName": "

The namespace of the table being restored from.

", "TableRestoreStatus$newTableName": "

The name of the table to create from the restore operation.

", + "TableRestoreStatus$recoveryPointId": "

The ID of the recovery point being restored from.

", "TableRestoreStatus$snapshotName": "

The name of the snapshot being restored from.

", "TableRestoreStatus$sourceDatabaseName": "

The name of the source database being restored from.

", "TableRestoreStatus$sourceSchemaName": "

The name of the source schema being restored from.

", "TableRestoreStatus$sourceTableName": "

The name of the source table being restored from.

", - "TableRestoreStatus$status": "

A value that describes the current state of the table restore request. Possible values include SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS.

", + "TableRestoreStatus$status": "

A value that describes the current state of the table restore request. Possible values are SUCCEEDED, FAILED, CANCELED, PENDING, and IN_PROGRESS.

", "TableRestoreStatus$tableRestoreRequestId": "

The ID of the RestoreTableFromSnapshot request.

", "TableRestoreStatus$targetDatabaseName": "

The name of the database to restore to.

", "TableRestoreStatus$targetSchemaName": "

The name of the schema to restore to.

", @@ -859,6 +1197,8 @@ "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. This parameter must be updated together with iamRoles.

", "UpdateNamespaceRequest$kmsKeyId": "

The ID of the Amazon Web Services Key Management Service key used to encrypt your data.

", + "UpdateScheduledActionRequest$scheduledActionDescription": "

The descripion of the scheduled action to update to.

", + "UpdateSnapshotCopyConfigurationRequest$snapshotCopyConfigurationId": "

The ID of the snapshot copy configuration to update.

", "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.

", @@ -867,10 +1207,13 @@ "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.

", + "VpcIds$member": null, "VpcSecurityGroupMembership$status": "

The status of the VPC security group.

", "Workgroup$namespaceName": "

The namespace the workgroup is associated with.

", + "Workgroup$patchVersion": "

The patch version of your Amazon Redshift Serverless workgroup. For more information about patch versions, see Cluster versions for Amazon Redshift.

", "Workgroup$workgroupArn": "

The Amazon Resource Name (ARN) that links to the workgroup.

", - "Workgroup$workgroupId": "

The unique identifier of the workgroup.

" + "Workgroup$workgroupId": "

The unique identifier of the workgroup.

", + "Workgroup$workgroupVersion": "

The Amazon Redshift Serverless version of your workgroup. For more information about Amazon Redshift Serverless versions, seeCluster versions for Amazon Redshift.

" } }, "SubnetId": { @@ -892,18 +1235,24 @@ "SyntheticTimestamp_date_time": { "base": null, "refs": { + "Association$customDomainCertificateExpiryTime": "

The expiration time for the certificate.

", + "CreateCustomDomainAssociationResponse$customDomainCertificateExpiryTime": "

The expiration time for the certificate.

", "EndpointAccess$endpointCreateTime": "

The time that the endpoint was created.

", + "GetCustomDomainAssociationResponse$customDomainCertificateExpiryTime": "

The expiration time for the certificate.

", "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.

" + "UpdateCustomDomainAssociationResponse$customDomainCertificateExpiryTime": "

The expiration time for the certificate.

", + "Workgroup$creationDate": "

The creation date of the workgroup.

", + "Workgroup$customDomainCertificateExpiryTime": "

The expiration time for the certificate.

" } }, "TableRestoreStatus": { "base": "

Contains information about a table restore request.

", "refs": { "GetTableRestoreStatusResponse$tableRestoreStatus": "

The returned TableRestoreStatus object that contains information about the status of your RestoreTableFromSnapshot request.

", + "RestoreTableFromRecoveryPointResponse$tableRestoreStatus": null, "RestoreTableFromSnapshotResponse$tableRestoreStatus": "

The TableRestoreStatus object that contains the status of the restore operation.

", "TableRestoreStatusList$member": null } @@ -939,6 +1288,7 @@ "ConvertRecoveryPointToSnapshotRequest$tags": "

An array of Tag objects to associate with the created snapshot.

", "CreateNamespaceRequest$tags": "

A list of tag instances.

", "CreateSnapshotRequest$tags": "

An array of Tag objects to associate with the snapshot.

", + "CreateSnapshotScheduleActionParameters$tags": "

An array of Tag objects to associate with the snapshot.

", "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.

" @@ -960,6 +1310,14 @@ "Tag$value": "

The value of the tag.

" } }, + "TargetAction": { + "base": "

A JSON format string of the Amazon Redshift Serverless API operation with input parameters. The following is an example of a target action.

\"{\"CreateSnapshot\": {\"NamespaceName\": \"sampleNamespace\",\"SnapshotName\": \"sampleSnapshot\", \"retentionPeriod\": \"1\"}}\"

", + "refs": { + "CreateScheduledActionRequest$targetAction": null, + "ScheduledActionResponse$targetAction": null, + "UpdateScheduledActionRequest$targetAction": null + } + }, "ThrottlingException": { "base": "

The request was denied due to request throttling.

", "refs": { @@ -968,13 +1326,21 @@ "Timestamp": { "base": null, "refs": { + "CreateScheduledActionRequest$endTime": "

The end time in UTC when the schedule is no longer active. After this time, the scheduled action does not trigger.

", + "CreateScheduledActionRequest$startTime": "

The start time in UTC when the schedule is active. Before this time, the scheduled action does not trigger.

", "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.

", - "TableRestoreStatus$requestTime": "

The time that the table restore request was made, in Universal Coordinated Time (UTC).

" + "NextInvocationsList$member": null, + "Schedule$at": "

The timestamp of when Amazon Redshift Serverless should run the scheduled action. Format of at expressions is \"at(yyyy-mm-ddThh:mm:ss)\". For example, \"at(2016-03-04T17:27:00)\".

", + "ScheduledActionResponse$endTime": "

The end time of

", + "ScheduledActionResponse$startTime": "

The start time in UTC when the schedule is active. Before this time, the scheduled action does not trigger.

", + "TableRestoreStatus$requestTime": "

The time that the table restore request was made, in Universal Coordinated Time (UTC).

", + "UpdateScheduledActionRequest$endTime": "

The end time in UTC of the scheduled action to update.

", + "UpdateScheduledActionRequest$startTime": "

The start time in UTC of the scheduled action to update to.

" } }, "TooManyTagsException": { @@ -992,6 +1358,16 @@ "refs": { } }, + "UpdateCustomDomainAssociationRequest": { + "base": null, + "refs": { + } + }, + "UpdateCustomDomainAssociationResponse": { + "base": null, + "refs": { + } + }, "UpdateEndpointAccessRequest": { "base": null, "refs": { @@ -1012,6 +1388,26 @@ "refs": { } }, + "UpdateScheduledActionRequest": { + "base": null, + "refs": { + } + }, + "UpdateScheduledActionResponse": { + "base": null, + "refs": { + } + }, + "UpdateSnapshotCopyConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateSnapshotCopyConfigurationResponse": { + "base": null, + "refs": { + } + }, "UpdateSnapshotRequest": { "base": null, "refs": { @@ -1099,6 +1495,12 @@ "Endpoint$vpcEndpoints": "

An array of VpcEndpoint objects.

" } }, + "VpcIds": { + "base": null, + "refs": { + "Workgroup$crossAccountVpcs": "

A list of VPCs. Each entry is the unique identifier of a virtual private cloud with access to Amazon Redshift Serverless. If all of the VPCs for the grantee are allowed, it shows an asterisk.

" + } + }, "VpcSecurityGroupId": { "base": null, "refs": { @@ -1144,13 +1546,21 @@ "WorkgroupName": { "base": null, "refs": { + "Association$workgroupName": "

The name of the workgroup associated with the database.

", + "CreateCustomDomainAssociationRequest$workgroupName": "

The name of the workgroup associated with the database.

", + "CreateCustomDomainAssociationResponse$workgroupName": "

The name of the workgroup associated with the database.

", "CreateWorkgroupRequest$workgroupName": "

The name of the created workgroup.

", + "DeleteCustomDomainAssociationRequest$workgroupName": "

The name of the workgroup associated with the database.

", "DeleteWorkgroupRequest$workgroupName": "

The name of the workgroup to be deleted.

", "GetCredentialsRequest$workgroupName": "

The name of the workgroup associated with the database.

", + "GetCustomDomainAssociationRequest$workgroupName": "

The name of the workgroup associated with the database.

", + "GetCustomDomainAssociationResponse$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.

", + "UpdateCustomDomainAssociationRequest$workgroupName": "

The name of the workgroup associated with the database.

", + "UpdateCustomDomainAssociationResponse$workgroupName": "

The name of the workgroup associated with the database.

", "UpdateWorkgroupRequest$workgroupName": "

The name of the workgroup to update. You can't update the name of a workgroup once it is created.

", "Workgroup$workgroupName": "

The name of the workgroup.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,78 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -111,61 +62,109 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -176,54 +175,48 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [], @@ -234,54 +227,48 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -292,23 +279,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], "endpoint": { "url": "https://redshift-serverless.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, @@ -316,9 +299,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,81 +1,55 @@ { "testCases": [ { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://redshift-serverless-fips.cn-north-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://redshift-serverless-fips.cn-north-1.amazonaws.com.cn" - } - }, - "params": { - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://redshift-serverless.ap-northeast-1.amazonaws.com" } }, "params": { - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.cn-north-1.amazonaws.com.cn" + "url": "https://redshift-serverless.ap-northeast-2.amazonaws.com" } }, "params": { - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://redshift-serverless.ap-southeast-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": true + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.us-iso-east-1.c2s.ic.gov" + "url": "https://redshift-serverless.ap-southeast-2.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": false + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -87,21 +61,21 @@ }, "params": { "Region": "eu-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.us-east-1.amazonaws.com" + "url": "https://redshift-serverless.eu-north-1.amazonaws.com" } }, "params": { - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -113,8 +87,8 @@ }, "params": { "Region": "eu-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -126,138 +100,138 @@ }, "params": { "Region": "eu-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.ap-southeast-1.amazonaws.com" + "url": "https://redshift-serverless.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-1", - "UseDualStack": false, - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.ap-southeast-2.amazonaws.com" + "url": "https://redshift-serverless.us-east-2.amazonaws.com" } }, "params": { - "Region": "ap-southeast-2", - "UseDualStack": false, - "UseFIPS": false + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.eu-north-1.amazonaws.com" + "url": "https://redshift-serverless.us-west-2.amazonaws.com" } }, "params": { - "Region": "eu-north-1", - "UseDualStack": false, - "UseFIPS": false + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.us-east-2.amazonaws.com" + "url": "https://redshift-serverless-fips.us-east-1.api.aws" } }, "params": { - "Region": "us-east-2", - "UseDualStack": false, - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.us-west-2.amazonaws.com" + "url": "https://redshift-serverless-fips.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.ap-northeast-1.amazonaws.com" + "url": "https://redshift-serverless.us-east-1.api.aws" } }, "params": { - "Region": "ap-northeast-1", - "UseDualStack": false, - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.ap-northeast-2.amazonaws.com" + "url": "https://redshift-serverless-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "ap-northeast-2", - "UseDualStack": false, - "UseFIPS": false + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless-fips.us-east-1.api.aws" + "url": "https://redshift-serverless-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": true + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://redshift-serverless-fips.us-east-1.amazonaws.com" + "url": "https://redshift-serverless.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": true + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://redshift-serverless.us-east-1.api.aws" + "url": "https://redshift-serverless.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": false + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -269,8 +243,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -282,8 +256,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -295,8 +269,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -308,8 +282,67 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://redshift-serverless-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://redshift-serverless.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -321,8 +354,19 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -334,12 +378,12 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -347,8 +391,21 @@ }, "params": { "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -359,8 +416,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -371,10 +428,16 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/redshift-serverless/2021-04-21/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/redshift-serverless/2021-04-21/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,11 @@ { "pagination": { + "ListCustomDomainAssociations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "associations" + }, "ListEndpointAccess": { "input_token": "nextToken", "output_token": "nextToken", @@ -18,6 +24,18 @@ "limit_key": "maxResults", "result_key": "recoveryPoints" }, + "ListScheduledActions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "scheduledActions" + }, + "ListSnapshotCopyConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "snapshotCopyConfigurations" + }, "ListSnapshots": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -510,7 +510,9 @@ {"shape":"ThrottlingException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"InvalidImageFormatException"}, - {"shape":"HumanLoopQuotaExceededException"} + {"shape":"HumanLoopQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceNotReadyException"} ] }, "DetectProtectiveEquipment":{ @@ -712,6 +714,23 @@ {"shape":"ThrottlingException"} ] }, + "GetMediaAnalysisJob":{ + "name":"GetMediaAnalysisJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetMediaAnalysisJobRequest"}, + "output":{"shape":"GetMediaAnalysisJobResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerError"}, + {"shape":"InvalidParameterException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"ThrottlingException"} + ] + }, "GetPersonTracking":{ "name":"GetPersonTracking", "http":{ @@ -863,6 +882,23 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListMediaAnalysisJobs":{ + "name":"ListMediaAnalysisJobs", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListMediaAnalysisJobsRequest"}, + "output":{"shape":"ListMediaAnalysisJobsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerError"}, + {"shape":"InvalidParameterException"}, + {"shape":"InvalidPaginationTokenException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"ThrottlingException"} + ] + }, "ListProjectPolicies":{ "name":"ListProjectPolicies", "http":{ @@ -1155,6 +1191,29 @@ ], "idempotent":true }, + "StartMediaAnalysisJob":{ + "name":"StartMediaAnalysisJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartMediaAnalysisJobRequest"}, + "output":{"shape":"StartMediaAnalysisJobResponse"}, + "errors":[ + {"shape":"InternalServerError"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterException"}, + {"shape":"InvalidManifestException"}, + {"shape":"InvalidS3ObjectException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceNotReadyException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"IdempotentParameterMismatchException"} + ], + "idempotent":true + }, "StartPersonTracking":{ "name":"StartPersonTracking", "http":{ @@ -1808,7 +1867,9 @@ "type":"structure", "required":["ProjectName"], "members":{ - "ProjectName":{"shape":"ProjectName"} + "ProjectName":{"shape":"ProjectName"}, + "Feature":{"shape":"CustomizationFeature"}, + "AutoUpdate":{"shape":"ProjectAutoUpdate"} } }, "CreateProjectResponse":{ @@ -1831,7 +1892,9 @@ "TrainingData":{"shape":"TrainingData"}, "TestingData":{"shape":"TestingData"}, "Tags":{"shape":"TagMap"}, - "KmsKeyId":{"shape":"KmsKeyId"} + "KmsKeyId":{"shape":"KmsKeyId"}, + "VersionDescription":{"shape":"VersionDescription"}, + "FeatureConfig":{"shape":"CustomizationFeatureConfig"} } }, "CreateProjectVersionResponse":{ @@ -1900,6 +1963,31 @@ "type":"list", "member":{"shape":"CustomLabel"} }, + "CustomizationFeature":{ + "type":"string", + "enum":[ + "CONTENT_MODERATION", + "CUSTOM_LABELS" + ] + }, + "CustomizationFeatureConfig":{ + "type":"structure", + "members":{ + "ContentModeration":{"shape":"CustomizationFeatureContentModerationConfig"} + } + }, + "CustomizationFeatureContentModerationConfig":{ + "type":"structure", + "members":{ + "ConfidenceThreshold":{"shape":"Percent"} + } + }, + "CustomizationFeatures":{ + "type":"list", + "member":{"shape":"CustomizationFeature"}, + "max":2, + "min":1 + }, "DatasetArn":{ "type":"string", "max":2048, @@ -2198,7 +2286,8 @@ "members":{ "NextToken":{"shape":"ExtendedPaginationToken"}, "MaxResults":{"shape":"ProjectsPageSize"}, - "ProjectNames":{"shape":"ProjectNames"} + "ProjectNames":{"shape":"ProjectNames"}, + "Features":{"shape":"CustomizationFeatures"} } }, "DescribeProjectsResponse":{ @@ -2356,7 +2445,8 @@ "members":{ "Image":{"shape":"Image"}, "MinConfidence":{"shape":"Percent"}, - "HumanLoopConfig":{"shape":"HumanLoopConfig"} + "HumanLoopConfig":{"shape":"HumanLoopConfig"}, + "ProjectVersion":{"shape":"ProjectVersionId"} } }, "DetectModerationLabelsResponse":{ @@ -2364,7 +2454,8 @@ "members":{ "ModerationLabels":{"shape":"ModerationLabels"}, "ModerationModelVersion":{"shape":"String"}, - "HumanLoopActivationOutput":{"shape":"HumanLoopActivationOutput"} + "HumanLoopActivationOutput":{"shape":"HumanLoopActivationOutput"}, + "ProjectVersion":{"shape":"ProjectVersionId"} } }, "DetectProtectiveEquipmentRequest":{ @@ -2902,6 +2993,38 @@ "GetRequestMetadata":{"shape":"GetLabelDetectionRequestMetadata"} } }, + "GetMediaAnalysisJobRequest":{ + "type":"structure", + "required":["JobId"], + "members":{ + "JobId":{"shape":"MediaAnalysisJobId"} + } + }, + "GetMediaAnalysisJobResponse":{ + "type":"structure", + "required":[ + "JobId", + "OperationsConfig", + "Status", + "CreationTimestamp", + "Input", + "OutputConfig" + ], + "members":{ + "JobId":{"shape":"MediaAnalysisJobId"}, + "JobName":{"shape":"MediaAnalysisJobName"}, + "OperationsConfig":{"shape":"MediaAnalysisOperationsConfig"}, + "Status":{"shape":"MediaAnalysisJobStatus"}, + "FailureDetails":{"shape":"MediaAnalysisJobFailureDetails"}, + "CreationTimestamp":{"shape":"DateTime"}, + "CompletionTimestamp":{"shape":"DateTime"}, + "Input":{"shape":"MediaAnalysisInput"}, + "OutputConfig":{"shape":"MediaAnalysisOutputConfig"}, + "KmsKeyId":{"shape":"KmsKeyId"}, + "Results":{"shape":"MediaAnalysisResults"}, + "ManifestSummary":{"shape":"MediaAnalysisManifestSummary"} + } + }, "GetPersonTrackingRequest":{ "type":"structure", "required":["JobId"], @@ -3134,6 +3257,12 @@ }, "exception":true }, + "InvalidManifestException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "InvalidPaginationTokenException":{ "type":"structure", "members":{ @@ -3437,6 +3566,26 @@ "FaceModelVersion":{"shape":"String"} } }, + "ListMediaAnalysisJobsPageSize":{ + "type":"integer", + "max":100, + "min":1 + }, + "ListMediaAnalysisJobsRequest":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"ExtendedPaginationToken"}, + "MaxResults":{"shape":"ListMediaAnalysisJobsPageSize"} + } + }, + "ListMediaAnalysisJobsResponse":{ + "type":"structure", + "required":["MediaAnalysisJobs"], + "members":{ + "NextToken":{"shape":"ExtendedPaginationToken"}, + "MediaAnalysisJobs":{"shape":"MediaAnalysisJobDescriptions"} + } + }, "ListProjectPoliciesPageSize":{ "type":"integer", "max":5, @@ -3577,6 +3726,123 @@ "max":500, "min":1 }, + "MediaAnalysisDetectModerationLabelsConfig":{ + "type":"structure", + "members":{ + "MinConfidence":{"shape":"Percent"}, + "ProjectVersion":{"shape":"ProjectVersionId"} + } + }, + "MediaAnalysisInput":{ + "type":"structure", + "required":["S3Object"], + "members":{ + "S3Object":{"shape":"S3Object"} + } + }, + "MediaAnalysisJobDescription":{ + "type":"structure", + "required":[ + "JobId", + "OperationsConfig", + "Status", + "CreationTimestamp", + "Input", + "OutputConfig" + ], + "members":{ + "JobId":{"shape":"MediaAnalysisJobId"}, + "JobName":{"shape":"MediaAnalysisJobName"}, + "OperationsConfig":{"shape":"MediaAnalysisOperationsConfig"}, + "Status":{"shape":"MediaAnalysisJobStatus"}, + "FailureDetails":{"shape":"MediaAnalysisJobFailureDetails"}, + "CreationTimestamp":{"shape":"DateTime"}, + "CompletionTimestamp":{"shape":"DateTime"}, + "Input":{"shape":"MediaAnalysisInput"}, + "OutputConfig":{"shape":"MediaAnalysisOutputConfig"}, + "KmsKeyId":{"shape":"KmsKeyId"}, + "Results":{"shape":"MediaAnalysisResults"}, + "ManifestSummary":{"shape":"MediaAnalysisManifestSummary"} + } + }, + "MediaAnalysisJobDescriptions":{ + "type":"list", + "member":{"shape":"MediaAnalysisJobDescription"} + }, + "MediaAnalysisJobFailureCode":{ + "type":"string", + "enum":[ + "INTERNAL_ERROR", + "INVALID_S3_OBJECT", + "INVALID_MANIFEST", + "INVALID_OUTPUT_CONFIG", + "INVALID_KMS_KEY", + "ACCESS_DENIED", + "RESOURCE_NOT_FOUND", + "RESOURCE_NOT_READY", + "THROTTLED" + ] + }, + "MediaAnalysisJobFailureDetails":{ + "type":"structure", + "members":{ + "Code":{"shape":"MediaAnalysisJobFailureCode"}, + "Message":{"shape":"String"} + } + }, + "MediaAnalysisJobId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^[a-zA-Z0-9-_]+$" + }, + "MediaAnalysisJobName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_.\\-]+" + }, + "MediaAnalysisJobStatus":{ + "type":"string", + "enum":[ + "CREATED", + "QUEUED", + "IN_PROGRESS", + "SUCCEEDED", + "FAILED" + ] + }, + "MediaAnalysisManifestSummary":{ + "type":"structure", + "members":{ + "S3Object":{"shape":"S3Object"} + } + }, + "MediaAnalysisOperationsConfig":{ + "type":"structure", + "members":{ + "DetectModerationLabels":{"shape":"MediaAnalysisDetectModerationLabelsConfig"} + } + }, + "MediaAnalysisOutputConfig":{ + "type":"structure", + "required":["S3Bucket"], + "members":{ + "S3Bucket":{"shape":"S3Bucket"}, + "S3KeyPrefix":{"shape":"MediaAnalysisS3KeyPrefix"} + } + }, + "MediaAnalysisResults":{ + "type":"structure", + "members":{ + "S3Object":{"shape":"S3Object"} + } + }, + "MediaAnalysisS3KeyPrefix":{ + "type":"string", + "max":800, + "pattern":"\\S*" + }, "MinCoveragePercentage":{ "type":"float", "max":100, @@ -3723,13 +3989,22 @@ "min":20, "pattern":"(^arn:[a-z\\d-]+:rekognition:[a-z\\d-]+:\\d{12}:project\\/[a-zA-Z0-9_.\\-]{1,255}\\/[0-9]+$)" }, + "ProjectAutoUpdate":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "ProjectDescription":{ "type":"structure", "members":{ "ProjectArn":{"shape":"ProjectArn"}, "CreationTimestamp":{"shape":"DateTime"}, "Status":{"shape":"ProjectStatus"}, - "Datasets":{"shape":"DatasetMetadataList"} + "Datasets":{"shape":"DatasetMetadataList"}, + "Feature":{"shape":"CustomizationFeature"}, + "AutoUpdate":{"shape":"ProjectAutoUpdate"} } }, "ProjectDescriptions":{ @@ -3811,13 +4086,23 @@ "ManifestSummary":{"shape":"GroundTruthManifest"}, "KmsKeyId":{"shape":"KmsKeyId"}, "MaxInferenceUnits":{"shape":"InferenceUnits"}, - "SourceProjectVersionArn":{"shape":"ProjectVersionArn"} + "SourceProjectVersionArn":{"shape":"ProjectVersionArn"}, + "VersionDescription":{"shape":"VersionDescription"}, + "Feature":{"shape":"CustomizationFeature"}, + "BaseModelVersion":{"shape":"String"}, + "FeatureConfig":{"shape":"CustomizationFeatureConfig"} } }, "ProjectVersionDescriptions":{ "type":"list", "member":{"shape":"ProjectVersionDescription"} }, + "ProjectVersionId":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"(^arn:[a-z\\d-]+:rekognition:[a-z\\d-]+:\\d{12}:project\\/[a-zA-Z0-9_.\\-]{1,255}\\/version\\/[a-zA-Z0-9_.\\-]{1,255}\\/[0-9]+$)" + }, "ProjectVersionStatus":{ "type":"string", "enum":[ @@ -3832,7 +4117,9 @@ "DELETING", "COPYING_IN_PROGRESS", "COPYING_COMPLETED", - "COPYING_FAILED" + "COPYING_FAILED", + "DEPRECATED", + "EXPIRED" ] }, "ProjectVersionsPageSize":{ @@ -4333,6 +4620,32 @@ "JobId":{"shape":"JobId"} } }, + "StartMediaAnalysisJobRequest":{ + "type":"structure", + "required":[ + "OperationsConfig", + "Input", + "OutputConfig" + ], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "JobName":{"shape":"MediaAnalysisJobName"}, + "OperationsConfig":{"shape":"MediaAnalysisOperationsConfig"}, + "Input":{"shape":"MediaAnalysisInput"}, + "OutputConfig":{"shape":"MediaAnalysisOutputConfig"}, + "KmsKeyId":{"shape":"KmsKeyId"} + } + }, + "StartMediaAnalysisJobResponse":{ + "type":"structure", + "required":["JobId"], + "members":{ + "JobId":{"shape":"MediaAnalysisJobId"} + } + }, "StartPersonTrackingRequest":{ "type":"structure", "required":["Video"], @@ -4944,6 +5257,12 @@ "Assets":{"shape":"Assets"} } }, + "VersionDescription":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[a-zA-Z0-9-_. ()':,;?]+" + }, "VersionName":{ "type":"string", "max":255, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,35 +4,35 @@ "operations": { "AssociateFaces": "

Associates one or more faces with an existing UserID. Takes an array of FaceIds. Each FaceId that are present in the FaceIds list is associated with the provided UserID. The maximum number of total FaceIds per UserID is 100.

The UserMatchThreshold parameter specifies the minimum user match confidence required for the face to be associated with a UserID that has at least one FaceID already associated. This ensures that the FaceIds are associated with the right UserID. The value ranges from 0-100 and default value is 75.

If successful, an array of AssociatedFace objects containing the associated FaceIds is returned. If a given face is already associated with the given UserID, it will be ignored and will not be returned in the response. If a given face is already associated to a different UserID, isn't found in the collection, doesn’t meet the UserMatchThreshold, or there are already 100 faces associated with the UserID, it will be returned as part of an array of UnsuccessfulFaceAssociations.

The UserStatus reflects the status of an operation which updates a UserID representation with a list of given faces. The UserStatus can be:

  • ACTIVE - All associations or disassociations of FaceID(s) for a UserID are complete.

  • CREATED - A UserID has been created, but has no FaceID(s) associated with it.

  • UPDATING - A UserID is being updated and there are current associations or disassociations of FaceID(s) taking place.

", "CompareFaces": "

Compares a face in the source input image with each of the 100 largest faces detected in the target input image.

If the source image contains multiple faces, the service detects the largest face and compares it with each face detected in the target image.

CompareFaces uses machine learning algorithms, which are probabilistic. A false negative is an incorrect prediction that a face in the target image has a low similarity confidence score when compared to the face in the source image. To reduce the probability of false negatives, we recommend that you compare the target image against multiple source images. If you plan to use CompareFaces to make a decision that impacts an individual's rights, privacy, or access to services, we recommend that you pass the result to a human for review and further validation before taking action.

You pass the input and target images either as base64-encoded image bytes or as references to images in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes isn't supported. The image must be formatted as a PNG or JPEG file.

In response, the operation returns an array of face matches ordered by similarity score in descending order. For each face match, the response provides a bounding box of the face, facial landmarks, pose details (pitch, roll, and yaw), quality (brightness and sharpness), and confidence value (indicating the level of confidence that the bounding box contains a face). The response also provides a similarity score, which indicates how closely the faces match.

By default, only faces with a similarity score of greater than or equal to 80% are returned in the response. You can change this value by specifying the SimilarityThreshold parameter.

CompareFaces also returns an array of faces that don't match the source image. For each face, it returns a bounding box, confidence value, landmarks, pose details, and quality. The response also returns information about the face in the source image, including the bounding box of the face and confidence value.

The QualityFilter input parameter allows you to filter out detected faces that don’t meet a required quality bar. The quality bar is based on a variety of common use cases. Use QualityFilter to set the quality bar by specifying LOW, MEDIUM, or HIGH. If you do not want to filter detected faces, specify NONE. The default value is NONE.

If the image doesn't contain Exif metadata, CompareFaces returns orientation information for the source and target images. Use these values to display the images with the correct image orientation.

If no faces are detected in the source or target images, CompareFaces returns an InvalidParameterException error.

This is a stateless API operation. That is, data returned by this operation doesn't persist.

For an example, see Comparing Faces in Images in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:CompareFaces action.

", - "CopyProjectVersion": "

Copies a version of an Amazon Rekognition Custom Labels model from a source project to a destination project. The source and destination projects can be in different AWS accounts but must be in the same AWS Region. You can't copy a model to another AWS service.

To copy a model version to a different AWS account, you need to create a resource-based policy known as a project policy. You attach the project policy to the source project by calling PutProjectPolicy. The project policy gives permission to copy the model version from a trusting AWS account to a trusted account.

For more information creating and attaching a project policy, see Attaching a project policy (SDK) in the Amazon Rekognition Custom Labels Developer Guide.

If you are copying a model version to a project in the same AWS account, you don't need to create a project policy.

To copy a model, the destination project, source project, and source model version must already exist.

Copying a model version takes a while to complete. To get the current status, call DescribeProjectVersions and check the value of Status in the ProjectVersionDescription object. The copy operation has finished when the value of Status is COPYING_COMPLETED.

This operation requires permissions to perform the rekognition:CopyProjectVersion action.

", + "CopyProjectVersion": "

This operation applies only to Amazon Rekognition Custom Labels.

Copies a version of an Amazon Rekognition Custom Labels model from a source project to a destination project. The source and destination projects can be in different AWS accounts but must be in the same AWS Region. You can't copy a model to another AWS service.

To copy a model version to a different AWS account, you need to create a resource-based policy known as a project policy. You attach the project policy to the source project by calling PutProjectPolicy. The project policy gives permission to copy the model version from a trusting AWS account to a trusted account.

For more information creating and attaching a project policy, see Attaching a project policy (SDK) in the Amazon Rekognition Custom Labels Developer Guide.

If you are copying a model version to a project in the same AWS account, you don't need to create a project policy.

Copying project versions is supported only for Custom Labels models.

To copy a model, the destination project, source project, and source model version must already exist.

Copying a model version takes a while to complete. To get the current status, call DescribeProjectVersions and check the value of Status in the ProjectVersionDescription object. The copy operation has finished when the value of Status is COPYING_COMPLETED.

This operation requires permissions to perform the rekognition:CopyProjectVersion action.

", "CreateCollection": "

Creates a collection in an AWS Region. You can add faces to the collection using the IndexFaces operation.

For example, you might create collections, one for each of your application users. A user can then index faces using the IndexFaces operation and persist results in a specific collection. Then, a user can search the collection for faces in the user-specific container.

When you create a collection, it is associated with the latest version of the face model version.

Collection names are case-sensitive.

This operation requires permissions to perform the rekognition:CreateCollection action. If you want to tag your collection, you also require permission to perform the rekognition:TagResource operation.

", - "CreateDataset": "

Creates a new Amazon Rekognition Custom Labels dataset. You can create a dataset by using an Amazon Sagemaker format manifest file or by copying an existing Amazon Rekognition Custom Labels dataset.

To create a training dataset for a project, specify TRAIN for the value of DatasetType. To create the test dataset for a project, specify TEST for the value of DatasetType.

The response from CreateDataset is the Amazon Resource Name (ARN) for the dataset. Creating a dataset takes a while to complete. Use DescribeDataset to check the current status. The dataset created successfully if the value of Status is CREATE_COMPLETE.

To check if any non-terminal errors occurred, call ListDatasetEntries and check for the presence of errors lists in the JSON Lines.

Dataset creation fails if a terminal error occurs (Status = CREATE_FAILED). Currently, you can't access the terminal error information.

For more information, see Creating dataset in the Amazon Rekognition Custom Labels Developer Guide.

This operation requires permissions to perform the rekognition:CreateDataset action. If you want to copy an existing dataset, you also require permission to perform the rekognition:ListDatasetEntries action.

", + "CreateDataset": "

This operation applies only to Amazon Rekognition Custom Labels.

Creates a new Amazon Rekognition Custom Labels dataset. You can create a dataset by using an Amazon Sagemaker format manifest file or by copying an existing Amazon Rekognition Custom Labels dataset.

To create a training dataset for a project, specify TRAIN for the value of DatasetType. To create the test dataset for a project, specify TEST for the value of DatasetType.

The response from CreateDataset is the Amazon Resource Name (ARN) for the dataset. Creating a dataset takes a while to complete. Use DescribeDataset to check the current status. The dataset created successfully if the value of Status is CREATE_COMPLETE.

To check if any non-terminal errors occurred, call ListDatasetEntries and check for the presence of errors lists in the JSON Lines.

Dataset creation fails if a terminal error occurs (Status = CREATE_FAILED). Currently, you can't access the terminal error information.

For more information, see Creating dataset in the Amazon Rekognition Custom Labels Developer Guide.

This operation requires permissions to perform the rekognition:CreateDataset action. If you want to copy an existing dataset, you also require permission to perform the rekognition:ListDatasetEntries action.

", "CreateFaceLivenessSession": "

This API operation initiates a Face Liveness session. It returns a SessionId, which you can use to start streaming Face Liveness video and get the results for a Face Liveness session.

You can use the OutputConfig option in the Settings parameter to provide an Amazon S3 bucket location. The Amazon S3 bucket stores reference images and audit images. If no Amazon S3 bucket is defined, raw bytes are sent instead.

You can use AuditImagesLimit to limit the number of audit images returned when GetFaceLivenessSessionResults is called. This number is between 0 and 4. By default, it is set to 0. The limit is best effort and based on the duration of the selfie-video.

", - "CreateProject": "

Creates a new Amazon Rekognition Custom Labels project. A project is a group of resources (datasets, model versions) that you use to create and manage Amazon Rekognition Custom Labels models.

This operation requires permissions to perform the rekognition:CreateProject action.

", - "CreateProjectVersion": "

Creates a new version of a model and begins training. Models are managed as part of an Amazon Rekognition Custom Labels project. The response from CreateProjectVersion is an Amazon Resource Name (ARN) for the version of the model.

Training uses the training and test datasets associated with the project. For more information, see Creating training and test dataset in the Amazon Rekognition Custom Labels Developer Guide.

You can train a model in a project that doesn't have associated datasets by specifying manifest files in the TrainingData and TestingData fields.

If you open the console after training a model with manifest files, Amazon Rekognition Custom Labels creates the datasets for you using the most recent manifest files. You can no longer train a model version for the project by specifying manifest files.

Instead of training with a project without associated datasets, we recommend that you use the manifest files to create training and test datasets for the project.

Training takes a while to complete. You can get the current status by calling DescribeProjectVersions. Training completed successfully if the value of the Status field is TRAINING_COMPLETED.

If training fails, see Debugging a failed model training in the Amazon Rekognition Custom Labels developer guide.

Once training has successfully completed, call DescribeProjectVersions to get the training results and evaluate the model. For more information, see Improving a trained Amazon Rekognition Custom Labels model in the Amazon Rekognition Custom Labels developers guide.

After evaluating the model, you start the model by calling StartProjectVersion.

This operation requires permissions to perform the rekognition:CreateProjectVersion action.

", + "CreateProject": "

Creates a new Amazon Rekognition project. A project is a group of resources (datasets, model versions) that you use to create and manage a Amazon Rekognition Custom Labels Model or custom adapter. You can specify a feature to create the project with, if no feature is specified then Custom Labels is used by default. For adapters, you can also choose whether or not to have the project auto update by using the AutoUpdate argument. This operation requires permissions to perform the rekognition:CreateProject action.

", + "CreateProjectVersion": "

Creates a new version of Amazon Rekognition project (like a Custom Labels model or a custom adapter) and begins training. Models and adapters are managed as part of a Rekognition project. The response from CreateProjectVersion is an Amazon Resource Name (ARN) for the project version.

The FeatureConfig operation argument allows you to configure specific model or adapter settings. You can provide a description to the project version by using the VersionDescription argment. Training can take a while to complete. You can get the current status by calling DescribeProjectVersions. Training completed successfully if the value of the Status field is TRAINING_COMPLETED. Once training has successfully completed, call DescribeProjectVersions to get the training results and evaluate the model.

This operation requires permissions to perform the rekognition:CreateProjectVersion action.

The following applies only to projects with Amazon Rekognition Custom Labels as the chosen feature:

You can train a model in a project that doesn't have associated datasets by specifying manifest files in the TrainingData and TestingData fields.

If you open the console after training a model with manifest files, Amazon Rekognition Custom Labels creates the datasets for you using the most recent manifest files. You can no longer train a model version for the project by specifying manifest files.

Instead of training with a project without associated datasets, we recommend that you use the manifest files to create training and test datasets for the project.

", "CreateStreamProcessor": "

Creates an Amazon Rekognition stream processor that you can use to detect and recognize faces or to detect labels in a streaming video.

Amazon Rekognition Video is a consumer of live video from Amazon Kinesis Video Streams. There are two different settings for stream processors in Amazon Rekognition: detecting faces and detecting labels.

  • If you are creating a stream processor for detecting faces, you provide as input a Kinesis video stream (Input) and a Kinesis data stream (Output) stream for receiving the output. You must use the FaceSearch option in Settings, specifying the collection that contains the faces you want to recognize. After you have finished analyzing a streaming video, use StopStreamProcessor to stop processing.

  • If you are creating a stream processor to detect labels, you provide as input a Kinesis video stream (Input), Amazon S3 bucket information (Output), and an Amazon SNS topic ARN (NotificationChannel). You can also provide a KMS key ID to encrypt the data sent to your Amazon S3 bucket. You specify what you want to detect by using the ConnectedHome option in settings, and selecting one of the following: PERSON, PET, PACKAGE, ALL You can also specify where in the frame you want Amazon Rekognition to monitor with RegionsOfInterest. When you run the StartStreamProcessor operation on a label detection stream processor, you input start and stop information to determine the length of the processing time.

Use Name to assign an identifier for the stream processor. You use Name to manage the stream processor. For example, you can start processing the source video by calling StartStreamProcessor with the Name field.

This operation requires permissions to perform the rekognition:CreateStreamProcessor action. If you want to tag your stream processor, you also require permission to perform the rekognition:TagResource operation.

", "CreateUser": "

Creates a new User within a collection specified by CollectionId. Takes UserId as a parameter, which is a user provided ID which should be unique within the collection. The provided UserId will alias the system generated UUID to make the UserId more user friendly.

Uses a ClientToken, an idempotency token that ensures a call to CreateUser completes only once. If the value is not supplied, the AWS SDK generates an idempotency token for the requests. This prevents retries after a network error results from making multiple CreateUser calls.

", "DeleteCollection": "

Deletes the specified collection. Note that this operation removes all faces in the collection. For an example, see Deleting a collection.

This operation requires permissions to perform the rekognition:DeleteCollection action.

", - "DeleteDataset": "

Deletes an existing Amazon Rekognition Custom Labels dataset. Deleting a dataset might take while. Use DescribeDataset to check the current status. The dataset is still deleting if the value of Status is DELETE_IN_PROGRESS. If you try to access the dataset after it is deleted, you get a ResourceNotFoundException exception.

You can't delete a dataset while it is creating (Status = CREATE_IN_PROGRESS) or if the dataset is updating (Status = UPDATE_IN_PROGRESS).

This operation requires permissions to perform the rekognition:DeleteDataset action.

", + "DeleteDataset": "

This operation applies only to Amazon Rekognition Custom Labels.

Deletes an existing Amazon Rekognition Custom Labels dataset. Deleting a dataset might take while. Use DescribeDataset to check the current status. The dataset is still deleting if the value of Status is DELETE_IN_PROGRESS. If you try to access the dataset after it is deleted, you get a ResourceNotFoundException exception.

You can't delete a dataset while it is creating (Status = CREATE_IN_PROGRESS) or if the dataset is updating (Status = UPDATE_IN_PROGRESS).

This operation requires permissions to perform the rekognition:DeleteDataset action.

", "DeleteFaces": "

Deletes faces from a collection. You specify a collection ID and an array of face IDs to remove from the collection.

This operation requires permissions to perform the rekognition:DeleteFaces action.

", - "DeleteProject": "

Deletes an Amazon Rekognition Custom Labels project. To delete a project you must first delete all models associated with the project. To delete a model, see DeleteProjectVersion.

DeleteProject is an asynchronous operation. To check if the project is deleted, call DescribeProjects. The project is deleted when the project no longer appears in the response. Be aware that deleting a given project will also delete any ProjectPolicies associated with that project.

This operation requires permissions to perform the rekognition:DeleteProject action.

", - "DeleteProjectPolicy": "

Deletes an existing project policy.

To get a list of project policies attached to a project, call ListProjectPolicies. To attach a project policy to a project, call PutProjectPolicy.

This operation requires permissions to perform the rekognition:DeleteProjectPolicy action.

", - "DeleteProjectVersion": "

Deletes an Amazon Rekognition Custom Labels model.

You can't delete a model if it is running or if it is training. To check the status of a model, use the Status field returned from DescribeProjectVersions. To stop a running model call StopProjectVersion. If the model is training, wait until it finishes.

This operation requires permissions to perform the rekognition:DeleteProjectVersion action.

", + "DeleteProject": "

Deletes a Amazon Rekognition project. To delete a project you must first delete all models or adapters associated with the project. To delete a model or adapter, see DeleteProjectVersion.

DeleteProject is an asynchronous operation. To check if the project is deleted, call DescribeProjects. The project is deleted when the project no longer appears in the response. Be aware that deleting a given project will also delete any ProjectPolicies associated with that project.

This operation requires permissions to perform the rekognition:DeleteProject action.

", + "DeleteProjectPolicy": "

This operation applies only to Amazon Rekognition Custom Labels.

Deletes an existing project policy.

To get a list of project policies attached to a project, call ListProjectPolicies. To attach a project policy to a project, call PutProjectPolicy.

This operation requires permissions to perform the rekognition:DeleteProjectPolicy action.

", + "DeleteProjectVersion": "

Deletes a Rekognition project model or project version, like a Amazon Rekognition Custom Labels model or a custom adapter.

You can't delete a project version if it is running or if it is training. To check the status of a project version, use the Status field returned from DescribeProjectVersions. To stop a project version call StopProjectVersion. If the project version is training, wait until it finishes.

This operation requires permissions to perform the rekognition:DeleteProjectVersion action.

", "DeleteStreamProcessor": "

Deletes the stream processor identified by Name. You assign the value for Name when you create the stream processor with CreateStreamProcessor. You might not be able to use the same name for a stream processor for a few seconds after calling DeleteStreamProcessor.

", "DeleteUser": "

Deletes the specified UserID within the collection. Faces that are associated with the UserID are disassociated from the UserID before deleting the specified UserID. If the specified Collection or UserID is already deleted or not found, a ResourceNotFoundException will be thrown. If the action is successful with a 200 response, an empty HTTP body is returned.

", "DescribeCollection": "

Describes the specified collection. You can use DescribeCollection to get information, such as the number of faces indexed into a collection and the version of the model used by the collection for face detection.

For more information, see Describing a Collection in the Amazon Rekognition Developer Guide.

", - "DescribeDataset": "

Describes an Amazon Rekognition Custom Labels dataset. You can get information such as the current status of a dataset and statistics about the images and labels in a dataset.

This operation requires permissions to perform the rekognition:DescribeDataset action.

", - "DescribeProjectVersions": "

Lists and describes the versions of a model in an Amazon Rekognition Custom Labels project. You can specify up to 10 model versions in ProjectVersionArns. If you don't specify a value, descriptions for all model versions in the project are returned.

This operation requires permissions to perform the rekognition:DescribeProjectVersions action.

", - "DescribeProjects": "

Gets information about your Amazon Rekognition Custom Labels projects.

This operation requires permissions to perform the rekognition:DescribeProjects action.

", + "DescribeDataset": "

This operation applies only to Amazon Rekognition Custom Labels.

Describes an Amazon Rekognition Custom Labels dataset. You can get information such as the current status of a dataset and statistics about the images and labels in a dataset.

This operation requires permissions to perform the rekognition:DescribeDataset action.

", + "DescribeProjectVersions": "

Lists and describes the versions of an Amazon Rekognition project. You can specify up to 10 model or adapter versions in ProjectVersionArns. If you don't specify a value, descriptions for all model/adapter versions in the project are returned.

This operation requires permissions to perform the rekognition:DescribeProjectVersions action.

", + "DescribeProjects": "

Gets information about your Rekognition projects.

This operation requires permissions to perform the rekognition:DescribeProjects action.

", "DescribeStreamProcessor": "

Provides information about a stream processor created by CreateStreamProcessor. You can get information about the input and output streams, the input parameters for the face recognition being performed, and the current status of the stream processor.

", - "DetectCustomLabels": "

Detects custom labels in a supplied image by using an Amazon Rekognition Custom Labels model.

You specify which version of a model version to use by using the ProjectVersionArn input parameter.

You pass the input image as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

For each object that the model version detects on an image, the API returns a (CustomLabel) object in an array (CustomLabels). Each CustomLabel object provides the label name (Name), the level of confidence that the image contains the object (Confidence), and object location information, if it exists, for the label on the image (Geometry).

To filter labels that are returned, specify a value for MinConfidence. DetectCustomLabelsLabels only returns labels with a confidence that's higher than the specified value. The value of MinConfidence maps to the assumed threshold values created during training. For more information, see Assumed threshold in the Amazon Rekognition Custom Labels Developer Guide. Amazon Rekognition Custom Labels metrics expresses an assumed threshold as a floating point value between 0-1. The range of MinConfidence normalizes the threshold value to a percentage value (0-100). Confidence responses from DetectCustomLabels are also returned as a percentage. You can use MinConfidence to change the precision and recall or your model. For more information, see Analyzing an image in the Amazon Rekognition Custom Labels Developer Guide.

If you don't specify a value for MinConfidence, DetectCustomLabels returns labels based on the assumed threshold of each label.

This is a stateless API operation. That is, the operation does not persist any data.

This operation requires permissions to perform the rekognition:DetectCustomLabels action.

For more information, see Analyzing an image in the Amazon Rekognition Custom Labels Developer Guide.

", + "DetectCustomLabels": "

This operation applies only to Amazon Rekognition Custom Labels.

Detects custom labels in a supplied image by using an Amazon Rekognition Custom Labels model.

You specify which version of a model version to use by using the ProjectVersionArn input parameter.

You pass the input image as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

For each object that the model version detects on an image, the API returns a (CustomLabel) object in an array (CustomLabels). Each CustomLabel object provides the label name (Name), the level of confidence that the image contains the object (Confidence), and object location information, if it exists, for the label on the image (Geometry).

To filter labels that are returned, specify a value for MinConfidence. DetectCustomLabelsLabels only returns labels with a confidence that's higher than the specified value. The value of MinConfidence maps to the assumed threshold values created during training. For more information, see Assumed threshold in the Amazon Rekognition Custom Labels Developer Guide. Amazon Rekognition Custom Labels metrics expresses an assumed threshold as a floating point value between 0-1. The range of MinConfidence normalizes the threshold value to a percentage value (0-100). Confidence responses from DetectCustomLabels are also returned as a percentage. You can use MinConfidence to change the precision and recall or your model. For more information, see Analyzing an image in the Amazon Rekognition Custom Labels Developer Guide.

If you don't specify a value for MinConfidence, DetectCustomLabels returns labels based on the assumed threshold of each label.

This is a stateless API operation. That is, the operation does not persist any data.

This operation requires permissions to perform the rekognition:DetectCustomLabels action.

For more information, see Analyzing an image in the Amazon Rekognition Custom Labels Developer Guide.

", "DetectFaces": "

Detects faces within an image that is provided as input.

DetectFaces detects the 100 largest faces in the image. For each face detected, the operation returns face details. These details include a bounding box of the face, a confidence value (that the bounding box contains a face), and a fixed set of attributes such as facial landmarks (for example, coordinates of eye and mouth), pose, presence of facial occlusion, and so on.

The face-detection algorithm is most effective on frontal faces. For non-frontal or obscured faces, the algorithm might not detect the faces or might detect faces with lower confidence.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

This is a stateless API operation. That is, the operation does not persist any data.

This operation requires permissions to perform the rekognition:DetectFaces action.

", "DetectLabels": "

Detects instances of real-world entities within an image (JPEG or PNG) provided as input. This includes objects like flower, tree, and table; events like wedding, graduation, and birthday party; and concepts like landscape, evening, and nature.

For an example, see Analyzing images stored in an Amazon S3 bucket in the Amazon Rekognition Developer Guide.

You pass the input image as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

Optional Parameters

You can specify one or both of the GENERAL_LABELS and IMAGE_PROPERTIES feature types when calling the DetectLabels API. Including GENERAL_LABELS will ensure the response includes the labels detected in the input image, while including IMAGE_PROPERTIES will ensure the response includes information about the image quality and color.

When using GENERAL_LABELS and/or IMAGE_PROPERTIES you can provide filtering criteria to the Settings parameter. You can filter with sets of individual labels or with label categories. You can specify inclusive filters, exclusive filters, or a combination of inclusive and exclusive filters. For more information on filtering see Detecting Labels in an Image.

When getting labels, you can specify MinConfidence to control the confidence threshold for the labels returned. The default is 55%. You can also add the MaxLabels parameter to limit the number of labels returned. The default and upper limit is 1000 labels. These arguments are only valid when supplying GENERAL_LABELS as a feature type.

Response Elements

For each object, scene, and concept the API returns one or more labels. The API returns the following types of information about labels:

  • Name - The name of the detected label.

  • Confidence - The level of confidence in the label assigned to a detected object.

  • Parents - The ancestor labels for a detected label. DetectLabels returns a hierarchical taxonomy of detected labels. For example, a detected car might be assigned the label car. The label car has two parent labels: Vehicle (its parent) and Transportation (its grandparent). The response includes the all ancestors for a label, where every ancestor is a unique label. In the previous example, Car, Vehicle, and Transportation are returned as unique labels in the response.

  • Aliases - Possible Aliases for the label.

  • Categories - The label categories that the detected label belongs to.

  • BoundingBox — Bounding boxes are described for all instances of detected common object labels, returned in an array of Instance objects. An Instance object contains a BoundingBox object, describing the location of the label on the input image. It also includes the confidence for the accuracy of the detected bounding box.

The API returns the following information regarding the image, as part of the ImageProperties structure:

  • Quality - Information about the Sharpness, Brightness, and Contrast of the input image, scored between 0 to 100. Image quality is returned for the entire image, as well as the background and the foreground.

  • Dominant Color - An array of the dominant colors in the image.

  • Foreground - Information about the sharpness, brightness, and dominant colors of the input image’s foreground.

  • Background - Information about the sharpness, brightness, and dominant colors of the input image’s background.

The list of returned labels will include at least one label for every detected object, along with information about that label. In the following example, suppose the input image has a lighthouse, the sea, and a rock. The response includes all three labels, one for each object, as well as the confidence in the label:

{Name: lighthouse, Confidence: 98.4629}

{Name: rock,Confidence: 79.2097}

{Name: sea,Confidence: 75.061}

The list of labels can include multiple labels for the same object. For example, if the input image shows a flower (for example, a tulip), the operation might return the following three labels.

{Name: flower,Confidence: 99.0562}

{Name: plant,Confidence: 99.0562}

{Name: tulip,Confidence: 99.0562}

In this example, the detection algorithm more precisely identifies the flower as a tulip.

If the object detected is a person, the operation doesn't provide the same facial details that the DetectFaces operation provides.

This is a stateless API operation that doesn't return any data.

This operation requires permissions to perform the rekognition:DetectLabels action.

", - "DetectModerationLabels": "

Detects unsafe content in a specified JPEG or PNG format image. Use DetectModerationLabels to moderate images depending on your requirements. For example, you might want to filter images that contain nudity, but not images containing suggestive content.

To filter images, use the labels returned by DetectModerationLabels to determine which types of content are appropriate.

For information about moderation labels, see Detecting Unsafe Content in the Amazon Rekognition Developer Guide.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

", + "DetectModerationLabels": "

Detects unsafe content in a specified JPEG or PNG format image. Use DetectModerationLabels to moderate images depending on your requirements. For example, you might want to filter images that contain nudity, but not images containing suggestive content.

To filter images, use the labels returned by DetectModerationLabels to determine which types of content are appropriate.

For information about moderation labels, see Detecting Unsafe Content in the Amazon Rekognition Developer Guide.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

You can specify an adapter to use when retrieving label predictions by providing a ProjectVersionArn to the ProjectVersion argument.

", "DetectProtectiveEquipment": "

Detects Personal Protective Equipment (PPE) worn by people detected in an image. Amazon Rekognition can detect the following types of PPE.

  • Face cover

  • Hand cover

  • Head cover

You pass the input image as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. The image must be either a PNG or JPG formatted file.

DetectProtectiveEquipment detects PPE worn by up to 15 persons detected in an image.

For each person detected in the image the API returns an array of body parts (face, head, left-hand, right-hand). For each body part, an array of detected items of PPE is returned, including an indicator of whether or not the PPE covers the body part. The API returns the confidence it has in each detection (person, PPE, body part and body part coverage). It also returns a bounding box (BoundingBox) for each detected person and each detected item of PPE.

You can optionally request a summary of detected PPE items with the SummarizationAttributes input parameter. The summary provides the following information.

  • The persons detected as wearing all of the types of PPE that you specify.

  • The persons detected as not wearing all of the types PPE that you specify.

  • The persons detected where PPE adornment could not be determined.

This is a stateless API operation. That is, the operation does not persist any data.

This operation requires permissions to perform the rekognition:DetectProtectiveEquipment action.

", "DetectText": "

Detects text in the input image and converts it into machine-readable text.

Pass the input image as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, you must pass it as a reference to an image in an Amazon S3 bucket. For the AWS CLI, passing image bytes is not supported. The image must be either a .png or .jpeg formatted file.

The DetectText operation returns text in an array of TextDetection elements, TextDetections. Each TextDetection element provides information about a single word or line of text that was detected in the image.

A word is one or more script characters that are not separated by spaces. DetectText can detect up to 100 words in an image.

A line is a string of equally spaced words. A line isn't necessarily a complete sentence. For example, a driver's license number is detected as a line. A line ends when there is no aligned text after it. Also, a line ends when there is a large gap between words, relative to the length of the words. This means, depending on the gap between words, Amazon Rekognition may detect multiple lines in text aligned in the same direction. Periods don't represent the end of a line. If a sentence spans multiple lines, the DetectText operation returns multiple lines.

To determine whether a TextDetection element is a line of text or a word, use the TextDetection object Type field.

To be detected, text must be within +/- 90 degrees orientation of the horizontal axis.

For more information, see Detecting text in the Amazon Rekognition Developer Guide.

", "DisassociateFaces": "

Removes the association between a Face supplied in an array of FaceIds and the User. If the User is not present already, then a ResourceNotFound exception is thrown. If successful, an array of faces that are disassociated from the User is returned. If a given face is already disassociated from the given UserID, it will be ignored and not be returned in the response. If a given face is already associated with a different User or not found in the collection it will be returned as part of UnsuccessfulDisassociations. You can remove 1 - 100 face IDs from a user at one time.

", - "DistributeDatasetEntries": "

Distributes the entries (images) in a training dataset across the training dataset and the test dataset for a project. DistributeDatasetEntries moves 20% of the training dataset images to the test dataset. An entry is a JSON Line that describes an image.

You supply the Amazon Resource Names (ARN) of a project's training dataset and test dataset. The training dataset must contain the images that you want to split. The test dataset must be empty. The datasets must belong to the same project. To create training and test datasets for a project, call CreateDataset.

Distributing a dataset takes a while to complete. To check the status call DescribeDataset. The operation is complete when the Status field for the training dataset and the test dataset is UPDATE_COMPLETE. If the dataset split fails, the value of Status is UPDATE_FAILED.

This operation requires permissions to perform the rekognition:DistributeDatasetEntries action.

", + "DistributeDatasetEntries": "

This operation applies only to Amazon Rekognition Custom Labels.

Distributes the entries (images) in a training dataset across the training dataset and the test dataset for a project. DistributeDatasetEntries moves 20% of the training dataset images to the test dataset. An entry is a JSON Line that describes an image.

You supply the Amazon Resource Names (ARN) of a project's training dataset and test dataset. The training dataset must contain the images that you want to split. The test dataset must be empty. The datasets must belong to the same project. To create training and test datasets for a project, call CreateDataset.

Distributing a dataset takes a while to complete. To check the status call DescribeDataset. The operation is complete when the Status field for the training dataset and the test dataset is UPDATE_COMPLETE. If the dataset split fails, the value of Status is UPDATE_FAILED.

This operation requires permissions to perform the rekognition:DistributeDatasetEntries action.

", "GetCelebrityInfo": "

Gets the name and additional information about a celebrity based on their Amazon Rekognition ID. The additional information is returned as an array of URLs. If there is no additional information about the celebrity, this list is empty.

For more information, see Getting information about a celebrity in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:GetCelebrityInfo action.

", "GetCelebrityRecognition": "

Gets the celebrity recognition results for a Amazon Rekognition Video analysis started by StartCelebrityRecognition.

Celebrity recognition in a video is an asynchronous operation. Analysis is started by a call to StartCelebrityRecognition which returns a job identifier (JobId).

When the celebrity recognition operation finishes, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartCelebrityRecognition. To get the results of the celebrity recognition analysis, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetCelebrityDetection and pass the job identifier (JobId) from the initial call to StartCelebrityDetection.

For more information, see Working With Stored Videos in the Amazon Rekognition Developer Guide.

GetCelebrityRecognition returns detected celebrities and the time(s) they are detected in an array (Celebrities) of CelebrityRecognition objects. Each CelebrityRecognition contains information about the celebrity in a CelebrityDetail object and the time, Timestamp, the celebrity was detected. This CelebrityDetail object stores information about the detected celebrity's face attributes, a face bounding box, known gender, the celebrity's name, and a confidence estimate.

GetCelebrityRecognition only returns the default facial attributes (BoundingBox, Confidence, Landmarks, Pose, and Quality). The BoundingBox field only applies to the detected face instance. The other facial attributes listed in the Face object of the following response syntax are not returned. For more information, see FaceDetail in the Amazon Rekognition Developer Guide.

By default, the Celebrities array is sorted by time (milliseconds from the start of the video). You can also sort the array by celebrity by specifying the value ID in the SortBy input parameter.

The CelebrityDetail object includes the celebrity identifer and additional information urls. If you don't store the additional information urls, you can get them later by calling GetCelebrityInfo with the celebrity identifer.

No information is returned for faces not recognized as celebrities.

Use MaxResults parameter to limit the number of labels returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetCelebrityDetection and populate the NextToken request parameter with the token value returned from the previous call to GetCelebrityRecognition.

", "GetContentModeration": "

Gets the inappropriate, unwanted, or offensive content analysis results for a Amazon Rekognition Video analysis started by StartContentModeration. For a list of moderation labels in Amazon Rekognition, see Using the image and video moderation APIs.

Amazon Rekognition Video inappropriate or offensive content detection in a stored video is an asynchronous operation. You start analysis by calling StartContentModeration which returns a job identifier (JobId). When analysis finishes, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartContentModeration. To get the results of the content analysis, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetContentModeration and pass the job identifier (JobId) from the initial call to StartContentModeration.

For more information, see Working with Stored Videos in the Amazon Rekognition Devlopers Guide.

GetContentModeration returns detected inappropriate, unwanted, or offensive content moderation labels, and the time they are detected, in an array, ModerationLabels, of ContentModerationDetection objects.

By default, the moderated labels are returned sorted by time, in milliseconds from the start of the video. You can also sort them by moderated label by specifying NAME for the SortBy input parameter.

Since video analysis can return a large number of results, use the MaxResults parameter to limit the number of labels returned in a single call to GetContentModeration. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetContentModeration and populate the NextToken request parameter with the value of NextToken returned from the previous call to GetContentModeration.

For more information, see moderating content in the Amazon Rekognition Developer Guide.

", @@ -40,19 +40,21 @@ "GetFaceLivenessSessionResults": "

Retrieves the results of a specific Face Liveness session. It requires the sessionId as input, which was created using CreateFaceLivenessSession. Returns the corresponding Face Liveness confidence score, a reference image that includes a face bounding box, and audit images that also contain face bounding boxes. The Face Liveness confidence score ranges from 0 to 100.

The number of audit images returned by GetFaceLivenessSessionResults is defined by the AuditImagesLimit paramater when calling CreateFaceLivenessSession. Reference images are always returned when possible.

", "GetFaceSearch": "

Gets the face search results for Amazon Rekognition Video face search started by StartFaceSearch. The search returns faces in a collection that match the faces of persons detected in a video. It also includes the time(s) that faces are matched in the video.

Face search in a video is an asynchronous operation. You start face search by calling to StartFaceSearch which returns a job identifier (JobId). When the search operation finishes, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartFaceSearch. To get the search results, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetFaceSearch and pass the job identifier (JobId) from the initial call to StartFaceSearch.

For more information, see Searching Faces in a Collection in the Amazon Rekognition Developer Guide.

The search results are retured in an array, Persons, of PersonMatch objects. EachPersonMatch element contains details about the matching faces in the input collection, person information (facial attributes, bounding boxes, and person identifer) for the matched person, and the time the person was matched in the video.

GetFaceSearch only returns the default facial attributes (BoundingBox, Confidence, Landmarks, Pose, and Quality). The other facial attributes listed in the Face object of the following response syntax are not returned. For more information, see FaceDetail in the Amazon Rekognition Developer Guide.

By default, the Persons array is sorted by the time, in milliseconds from the start of the video, persons are matched. You can also sort by persons by specifying INDEX for the SORTBY input parameter.

", "GetLabelDetection": "

Gets the label detection results of a Amazon Rekognition Video analysis started by StartLabelDetection.

The label detection operation is started by a call to StartLabelDetection which returns a job identifier (JobId). When the label detection operation finishes, Amazon Rekognition publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartlabelDetection.

To get the results of the label detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetLabelDetection and pass the job identifier (JobId) from the initial call to StartLabelDetection.

GetLabelDetection returns an array of detected labels (Labels) sorted by the time the labels were detected. You can also sort by the label name by specifying NAME for the SortBy input parameter. If there is no NAME specified, the default sort is by timestamp.

You can select how results are aggregated by using the AggregateBy input parameter. The default aggregation method is TIMESTAMPS. You can also aggregate by SEGMENTS, which aggregates all instances of labels detected in a given segment.

The returned Labels array may include the following attributes:

  • Name - The name of the detected label.

  • Confidence - The level of confidence in the label assigned to a detected object.

  • Parents - The ancestor labels for a detected label. GetLabelDetection returns a hierarchical taxonomy of detected labels. For example, a detected car might be assigned the label car. The label car has two parent labels: Vehicle (its parent) and Transportation (its grandparent). The response includes the all ancestors for a label, where every ancestor is a unique label. In the previous example, Car, Vehicle, and Transportation are returned as unique labels in the response.

  • Aliases - Possible Aliases for the label.

  • Categories - The label categories that the detected label belongs to.

  • BoundingBox — Bounding boxes are described for all instances of detected common object labels, returned in an array of Instance objects. An Instance object contains a BoundingBox object, describing the location of the label on the input image. It also includes the confidence for the accuracy of the detected bounding box.

  • Timestamp - Time, in milliseconds from the start of the video, that the label was detected. For aggregation by SEGMENTS, the StartTimestampMillis, EndTimestampMillis, and DurationMillis structures are what define a segment. Although the “Timestamp” structure is still returned with each label, its value is set to be the same as StartTimestampMillis.

Timestamp and Bounding box information are returned for detected Instances, only if aggregation is done by TIMESTAMPS. If aggregating by SEGMENTS, information about detected instances isn’t returned.

The version of the label model used for the detection is also returned.

Note DominantColors isn't returned for Instances, although it is shown as part of the response in the sample seen below.

Use MaxResults parameter to limit the number of labels returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetlabelDetection and populate the NextToken request parameter with the token value returned from the previous call to GetLabelDetection.

", + "GetMediaAnalysisJob": "

Retrieves the results for a given media analysis job. Takes a JobId returned by StartMediaAnalysisJob.

", "GetPersonTracking": "

Gets the path tracking results of a Amazon Rekognition Video analysis started by StartPersonTracking.

The person path tracking operation is started by a call to StartPersonTracking which returns a job identifier (JobId). When the operation finishes, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartPersonTracking.

To get the results of the person path tracking operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetPersonTracking and pass the job identifier (JobId) from the initial call to StartPersonTracking.

GetPersonTracking returns an array, Persons, of tracked persons and the time(s) their paths were tracked in the video.

GetPersonTracking only returns the default facial attributes (BoundingBox, Confidence, Landmarks, Pose, and Quality). The other facial attributes listed in the Face object of the following response syntax are not returned.

For more information, see FaceDetail in the Amazon Rekognition Developer Guide.

By default, the array is sorted by the time(s) a person's path is tracked in the video. You can sort by tracked persons by specifying INDEX for the SortBy input parameter.

Use the MaxResults parameter to limit the number of items returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetPersonTracking and populate the NextToken request parameter with the token value returned from the previous call to GetPersonTracking.

", "GetSegmentDetection": "

Gets the segment detection results of a Amazon Rekognition Video analysis started by StartSegmentDetection.

Segment detection with Amazon Rekognition Video is an asynchronous operation. You start segment detection by calling StartSegmentDetection which returns a job identifier (JobId). When the segment detection operation finishes, Amazon Rekognition publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartSegmentDetection. To get the results of the segment detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. if so, call GetSegmentDetection and pass the job identifier (JobId) from the initial call of StartSegmentDetection.

GetSegmentDetection returns detected segments in an array (Segments) of SegmentDetection objects. Segments is sorted by the segment types specified in the SegmentTypes input parameter of StartSegmentDetection. Each element of the array includes the detected segment, the precentage confidence in the acuracy of the detected segment, the type of the segment, and the frame in which the segment was detected.

Use SelectedSegmentTypes to find out the type of segment detection requested in the call to StartSegmentDetection.

Use the MaxResults parameter to limit the number of segment detections returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetSegmentDetection and populate the NextToken request parameter with the token value returned from the previous call to GetSegmentDetection.

For more information, see Detecting video segments in stored video in the Amazon Rekognition Developer Guide.

", "GetTextDetection": "

Gets the text detection results of a Amazon Rekognition Video analysis started by StartTextDetection.

Text detection with Amazon Rekognition Video is an asynchronous operation. You start text detection by calling StartTextDetection which returns a job identifier (JobId) When the text detection operation finishes, Amazon Rekognition publishes a completion status to the Amazon Simple Notification Service topic registered in the initial call to StartTextDetection. To get the results of the text detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. if so, call GetTextDetection and pass the job identifier (JobId) from the initial call of StartLabelDetection.

GetTextDetection returns an array of detected text (TextDetections) sorted by the time the text was detected, up to 100 words per frame of video.

Each element of the array includes the detected text, the precentage confidence in the acuracy of the detected text, the time the text was detected, bounding box information for where the text was located, and unique identifiers for words and their lines.

Use MaxResults parameter to limit the number of text detections returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetTextDetection and populate the NextToken request parameter with the token value returned from the previous call to GetTextDetection.

", "IndexFaces": "

Detects faces in the input image and adds them to the specified collection.

Amazon Rekognition doesn't save the actual faces that are detected. Instead, the underlying detection algorithm first detects the faces in the input image. For each face, the algorithm extracts facial features into a feature vector, and stores it in the backend database. Amazon Rekognition uses feature vectors when it performs face match and search operations using the SearchFaces and SearchFacesByImage operations.

For more information, see Adding faces to a collection in the Amazon Rekognition Developer Guide.

To get the number of faces in a collection, call DescribeCollection.

If you're using version 1.0 of the face detection model, IndexFaces indexes the 15 largest faces in the input image. Later versions of the face detection model index the 100 largest faces in the input image.

If you're using version 4 or later of the face model, image orientation information is not returned in the OrientationCorrection field.

To determine which version of the model you're using, call DescribeCollection and supply the collection ID. You can also get the model version from the value of FaceModelVersion in the response from IndexFaces

For more information, see Model Versioning in the Amazon Rekognition Developer Guide.

If you provide the optional ExternalImageId for the input image you provided, Amazon Rekognition associates this ID with all faces that it detects. When you call the ListFaces operation, the response returns the external ID. You can use this external image ID to create a client-side index to associate the faces with each image. You can then use the index to find all faces in an image.

You can specify the maximum number of faces to index with the MaxFaces input parameter. This is useful when you want to index the largest faces in an image and don't want to index smaller faces, such as those belonging to people standing in the background.

The QualityFilter input parameter allows you to filter out detected faces that don’t meet a required quality bar. The quality bar is based on a variety of common use cases. By default, IndexFaces chooses the quality bar that's used to filter faces. You can also explicitly choose the quality bar. Use QualityFilter, to set the quality bar by specifying LOW, MEDIUM, or HIGH. If you do not want to filter detected faces, specify NONE.

To use quality filtering, you need a collection associated with version 3 of the face model or higher. To get the version of the face model associated with a collection, call DescribeCollection.

Information about faces detected in an image, but not indexed, is returned in an array of UnindexedFace objects, UnindexedFaces. Faces aren't indexed for reasons such as:

  • The number of faces detected exceeds the value of the MaxFaces request parameter.

  • The face is too small compared to the image dimensions.

  • The face is too blurry.

  • The image is too dark.

  • The face has an extreme pose.

  • The face doesn’t have enough detail to be suitable for face search.

In response, the IndexFaces operation returns an array of metadata for all detected faces, FaceRecords. This includes:

  • The bounding box, BoundingBox, of the detected face.

  • A confidence value, Confidence, which indicates the confidence that the bounding box contains a face.

  • A face ID, FaceId, assigned by the service for each face that's detected and stored.

  • An image ID, ImageId, assigned by the service for the input image.

If you request ALL or specific facial attributes (e.g., FACE_OCCLUDED) by using the detectionAttributes parameter, Amazon Rekognition returns detailed facial attributes, such as facial landmarks (for example, location of eye and mouth), facial occlusion, and other facial attributes.

If you provide the same image, specify the same collection, and use the same external ID in the IndexFaces operation, Amazon Rekognition doesn't save duplicate face metadata.

The input image is passed either as base64-encoded image bytes, or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes isn't supported. The image must be formatted as a PNG or JPEG file.

This operation requires permissions to perform the rekognition:IndexFaces action.

", "ListCollections": "

Returns list of collection IDs in your account. If the result is truncated, the response also provides a NextToken that you can use in the subsequent request to fetch the next set of collection IDs.

For an example, see Listing collections in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:ListCollections action.

", - "ListDatasetEntries": "

Lists the entries (images) within a dataset. An entry is a JSON Line that contains the information for a single image, including the image location, assigned labels, and object location bounding boxes. For more information, see Creating a manifest file.

JSON Lines in the response include information about non-terminal errors found in the dataset. Non terminal errors are reported in errors lists within each JSON Line. The same information is reported in the training and testing validation result manifests that Amazon Rekognition Custom Labels creates during model training.

You can filter the response in variety of ways, such as choosing which labels to return and returning JSON Lines created after a specific date.

This operation requires permissions to perform the rekognition:ListDatasetEntries action.

", - "ListDatasetLabels": "

Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels to describe images. For more information, see Labeling images.

Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels to describe images. For more information, see Labeling images in the Amazon Rekognition Custom Labels Developer Guide.

", + "ListDatasetEntries": "

This operation applies only to Amazon Rekognition Custom Labels.

Lists the entries (images) within a dataset. An entry is a JSON Line that contains the information for a single image, including the image location, assigned labels, and object location bounding boxes. For more information, see Creating a manifest file.

JSON Lines in the response include information about non-terminal errors found in the dataset. Non terminal errors are reported in errors lists within each JSON Line. The same information is reported in the training and testing validation result manifests that Amazon Rekognition Custom Labels creates during model training.

You can filter the response in variety of ways, such as choosing which labels to return and returning JSON Lines created after a specific date.

This operation requires permissions to perform the rekognition:ListDatasetEntries action.

", + "ListDatasetLabels": "

This operation applies only to Amazon Rekognition Custom Labels.

Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels to describe images. For more information, see Labeling images.

Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels to describe images. For more information, see Labeling images in the Amazon Rekognition Custom Labels Developer Guide.

", "ListFaces": "

Returns metadata for faces in the specified collection. This metadata includes information such as the bounding box coordinates, the confidence (that the bounding box contains a face), and face ID. For an example, see Listing Faces in a Collection in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:ListFaces action.

", - "ListProjectPolicies": "

Gets a list of the project policies attached to a project.

To attach a project policy to a project, call PutProjectPolicy. To remove a project policy from a project, call DeleteProjectPolicy.

This operation requires permissions to perform the rekognition:ListProjectPolicies action.

", + "ListMediaAnalysisJobs": "

Returns a list of media analysis jobs. Results are sorted by CreationTimestamp in descending order.

", + "ListProjectPolicies": "

This operation applies only to Amazon Rekognition Custom Labels.

Gets a list of the project policies attached to a project.

To attach a project policy to a project, call PutProjectPolicy. To remove a project policy from a project, call DeleteProjectPolicy.

This operation requires permissions to perform the rekognition:ListProjectPolicies action.

", "ListStreamProcessors": "

Gets a list of stream processors that you have created with CreateStreamProcessor.

", "ListTagsForResource": "

Returns a list of tags in an Amazon Rekognition collection, stream processor, or Custom Labels model.

This operation requires permissions to perform the rekognition:ListTagsForResource action.

", "ListUsers": "

Returns metadata of the User such as UserID in the specified collection. Anonymous User (to reserve faces without any identity) is not returned as part of this request. The results are sorted by system generated primary key ID. If the response is truncated, NextToken is returned in the response that can be used in the subsequent request to retrieve the next set of identities.

", - "PutProjectPolicy": "

Attaches a project policy to a Amazon Rekognition Custom Labels project in a trusting AWS account. A project policy specifies that a trusted AWS account can copy a model version from a trusting AWS account to a project in the trusted AWS account. To copy a model version you use the CopyProjectVersion operation.

For more information about the format of a project policy document, see Attaching a project policy (SDK) in the Amazon Rekognition Custom Labels Developer Guide.

The response from PutProjectPolicy is a revision ID for the project policy. You can attach multiple project policies to a project. You can also update an existing project policy by specifying the policy revision ID of the existing policy.

To remove a project policy from a project, call DeleteProjectPolicy. To get a list of project policies attached to a project, call ListProjectPolicies.

You copy a model version by calling CopyProjectVersion.

This operation requires permissions to perform the rekognition:PutProjectPolicy action.

", + "PutProjectPolicy": "

This operation applies only to Amazon Rekognition Custom Labels.

Attaches a project policy to a Amazon Rekognition Custom Labels project in a trusting AWS account. A project policy specifies that a trusted AWS account can copy a model version from a trusting AWS account to a project in the trusted AWS account. To copy a model version you use the CopyProjectVersion operation. Only applies to Custom Labels projects.

For more information about the format of a project policy document, see Attaching a project policy (SDK) in the Amazon Rekognition Custom Labels Developer Guide.

The response from PutProjectPolicy is a revision ID for the project policy. You can attach multiple project policies to a project. You can also update an existing project policy by specifying the policy revision ID of the existing policy.

To remove a project policy from a project, call DeleteProjectPolicy. To get a list of project policies attached to a project, call ListProjectPolicies.

You copy a model version by calling CopyProjectVersion.

This operation requires permissions to perform the rekognition:PutProjectPolicy action.

", "RecognizeCelebrities": "

Returns an array of celebrities recognized in the input image. For more information, see Recognizing celebrities in the Amazon Rekognition Developer Guide.

RecognizeCelebrities returns the 64 largest faces in the image. It lists the recognized celebrities in the CelebrityFaces array and any unrecognized faces in the UnrecognizedFaces array. RecognizeCelebrities doesn't return celebrities whose faces aren't among the largest 64 faces in the image.

For each celebrity recognized, RecognizeCelebrities returns a Celebrity object. The Celebrity object contains the celebrity name, ID, URL links to additional information, match confidence, and a ComparedFace object that you can use to locate the celebrity's face on the image.

Amazon Rekognition doesn't retain information about which images a celebrity has been recognized in. Your application must store this information and use the Celebrity ID property as a unique identifier for the celebrity. If you don't store the celebrity name or additional information URLs returned by RecognizeCelebrities, you will need the ID to identify the celebrity in a call to the GetCelebrityInfo operation.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

For an example, see Recognizing celebrities in an image in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:RecognizeCelebrities operation.

", "SearchFaces": "

For a given input face ID, searches for matching faces in the collection the face belongs to. You get a face ID when you add a face to the collection using the IndexFaces operation. The operation compares the features of the input face with faces in the specified collection.

You can also search faces without indexing faces by using the SearchFacesByImage operation.

The operation response returns an array of faces that match, ordered by similarity score with the highest similarity first. More specifically, it is an array of metadata for each face match that is found. Along with the metadata, the response also includes a confidence value for each face match, indicating the confidence that the specific face matches the input face.

For an example, see Searching for a face using its face ID in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:SearchFaces action.

", "SearchFacesByImage": "

For a given input image, first detects the largest face in the image, and then searches the specified collection for matching faces. The operation compares the features of the input face with faces in the specified collection.

To search for all faces in an input image, you might first call the IndexFaces operation, and then use the face IDs returned in subsequent calls to the SearchFaces operation.

You can also call the DetectFaces operation and use the bounding boxes in the response to make face crops, which then you can pass in to the SearchFacesByImage operation.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

The response returns an array of faces that match, ordered by similarity score with the highest similarity first. More specifically, it is an array of metadata for each face match found. Along with the metadata, the response also includes a similarity indicating how similar the face is to the input face. In the response, the operation also returns the bounding box (and a confidence level that the bounding box contains a face) of the face that Amazon Rekognition used for the input image.

If no faces are detected in the input image, SearchFacesByImage returns an InvalidParameterException error.

For an example, Searching for a Face Using an Image in the Amazon Rekognition Developer Guide.

The QualityFilter input parameter allows you to filter out detected faces that don’t meet a required quality bar. The quality bar is based on a variety of common use cases. Use QualityFilter to set the quality bar for filtering by specifying LOW, MEDIUM, or HIGH. If you do not want to filter detected faces, specify NONE. The default value is NONE.

To use quality filtering, you need a collection associated with version 3 of the face model or higher. To get the version of the face model associated with a collection, call DescribeCollection.

This operation requires permissions to perform the rekognition:SearchFacesByImage action.

", @@ -63,16 +65,17 @@ "StartFaceDetection": "

Starts asynchronous detection of faces in a stored video.

Amazon Rekognition Video can detect faces in a video stored in an Amazon S3 bucket. Use Video to specify the bucket name and the filename of the video. StartFaceDetection returns a job identifier (JobId) that you use to get the results of the operation. When face detection is finished, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic that you specify in NotificationChannel. To get the results of the face detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetFaceDetection and pass the job identifier (JobId) from the initial call to StartFaceDetection.

For more information, see Detecting faces in a stored video in the Amazon Rekognition Developer Guide.

", "StartFaceSearch": "

Starts the asynchronous search for faces in a collection that match the faces of persons detected in a stored video.

The video must be stored in an Amazon S3 bucket. Use Video to specify the bucket name and the filename of the video. StartFaceSearch returns a job identifier (JobId) which you use to get the search results once the search has completed. When searching is finished, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic that you specify in NotificationChannel. To get the search results, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetFaceSearch and pass the job identifier (JobId) from the initial call to StartFaceSearch. For more information, see Searching stored videos for faces.

", "StartLabelDetection": "

Starts asynchronous detection of labels in a stored video.

Amazon Rekognition Video can detect labels in a video. Labels are instances of real-world entities. This includes objects like flower, tree, and table; events like wedding, graduation, and birthday party; concepts like landscape, evening, and nature; and activities like a person getting out of a car or a person skiing.

The video must be stored in an Amazon S3 bucket. Use Video to specify the bucket name and the filename of the video. StartLabelDetection returns a job identifier (JobId) which you use to get the results of the operation. When label detection is finished, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic that you specify in NotificationChannel.

To get the results of the label detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetLabelDetection and pass the job identifier (JobId) from the initial call to StartLabelDetection.

Optional Parameters

StartLabelDetection has the GENERAL_LABELS Feature applied by default. This feature allows you to provide filtering criteria to the Settings parameter. You can filter with sets of individual labels or with label categories. You can specify inclusive filters, exclusive filters, or a combination of inclusive and exclusive filters. For more information on filtering, see Detecting labels in a video.

You can specify MinConfidence to control the confidence threshold for the labels returned. The default is 50.

", + "StartMediaAnalysisJob": "

Initiates a new media analysis job. Accepts a manifest file in an Amazon S3 bucket. The output is a manifest file and a summary of the manifest stored in the Amazon S3 bucket.

", "StartPersonTracking": "

Starts the asynchronous tracking of a person's path in a stored video.

Amazon Rekognition Video can track the path of people in a video stored in an Amazon S3 bucket. Use Video to specify the bucket name and the filename of the video. StartPersonTracking returns a job identifier (JobId) which you use to get the results of the operation. When label detection is finished, Amazon Rekognition publishes a completion status to the Amazon Simple Notification Service topic that you specify in NotificationChannel.

To get the results of the person detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetPersonTracking and pass the job identifier (JobId) from the initial call to StartPersonTracking.

", - "StartProjectVersion": "

Starts the running of the version of a model. Starting a model takes a while to complete. To check the current state of the model, use DescribeProjectVersions.

Once the model is running, you can detect custom labels in new images by calling DetectCustomLabels.

You are charged for the amount of time that the model is running. To stop a running model, call StopProjectVersion.

For more information, see Running a trained Amazon Rekognition Custom Labels model in the Amazon Rekognition Custom Labels Guide.

This operation requires permissions to perform the rekognition:StartProjectVersion action.

", + "StartProjectVersion": "

This operation applies only to Amazon Rekognition Custom Labels.

Starts the running of the version of a model. Starting a model takes a while to complete. To check the current state of the model, use DescribeProjectVersions.

Once the model is running, you can detect custom labels in new images by calling DetectCustomLabels.

You are charged for the amount of time that the model is running. To stop a running model, call StopProjectVersion.

This operation requires permissions to perform the rekognition:StartProjectVersion action.

", "StartSegmentDetection": "

Starts asynchronous detection of segment detection in a stored video.

Amazon Rekognition Video can detect segments in a video stored in an Amazon S3 bucket. Use Video to specify the bucket name and the filename of the video. StartSegmentDetection returns a job identifier (JobId) which you use to get the results of the operation. When segment detection is finished, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic that you specify in NotificationChannel.

You can use the Filters (StartSegmentDetectionFilters) input parameter to specify the minimum detection confidence returned in the response. Within Filters, use ShotFilter (StartShotDetectionFilter) to filter detected shots. Use TechnicalCueFilter (StartTechnicalCueDetectionFilter) to filter technical cues.

To get the results of the segment detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. if so, call GetSegmentDetection and pass the job identifier (JobId) from the initial call to StartSegmentDetection.

For more information, see Detecting video segments in stored video in the Amazon Rekognition Developer Guide.

", "StartStreamProcessor": "

Starts processing a stream processor. You create a stream processor by calling CreateStreamProcessor. To tell StartStreamProcessor which stream processor to start, use the value of the Name field specified in the call to CreateStreamProcessor.

If you are using a label detection stream processor to detect labels, you need to provide a Start selector and a Stop selector to determine the length of the stream processing time.

", "StartTextDetection": "

Starts asynchronous detection of text in a stored video.

Amazon Rekognition Video can detect text in a video stored in an Amazon S3 bucket. Use Video to specify the bucket name and the filename of the video. StartTextDetection returns a job identifier (JobId) which you use to get the results of the operation. When text detection is finished, Amazon Rekognition Video publishes a completion status to the Amazon Simple Notification Service topic that you specify in NotificationChannel.

To get the results of the text detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. if so, call GetTextDetection and pass the job identifier (JobId) from the initial call to StartTextDetection.

", - "StopProjectVersion": "

Stops a running model. The operation might take a while to complete. To check the current status, call DescribeProjectVersions.

This operation requires permissions to perform the rekognition:StopProjectVersion action.

", + "StopProjectVersion": "

This operation applies only to Amazon Rekognition Custom Labels.

Stops a running model. The operation might take a while to complete. To check the current status, call DescribeProjectVersions. Only applies to Custom Labels projects.

This operation requires permissions to perform the rekognition:StopProjectVersion action.

", "StopStreamProcessor": "

Stops a running stream processor that was created by CreateStreamProcessor.

", "TagResource": "

Adds one or more key-value tags to an Amazon Rekognition collection, stream processor, or Custom Labels model. For more information, see Tagging AWS Resources.

This operation requires permissions to perform the rekognition:TagResource action.

", "UntagResource": "

Removes one or more tags from an Amazon Rekognition collection, stream processor, or Custom Labels model.

This operation requires permissions to perform the rekognition:UntagResource action.

", - "UpdateDatasetEntries": "

Adds or updates one or more entries (images) in a dataset. An entry is a JSON Line which contains the information for a single image, including the image location, assigned labels, and object location bounding boxes. For more information, see Image-Level labels in manifest files and Object localization in manifest files in the Amazon Rekognition Custom Labels Developer Guide.

If the source-ref field in the JSON line references an existing image, the existing image in the dataset is updated. If source-ref field doesn't reference an existing image, the image is added as a new image to the dataset.

You specify the changes that you want to make in the Changes input parameter. There isn't a limit to the number JSON Lines that you can change, but the size of Changes must be less than 5MB.

UpdateDatasetEntries returns immediatly, but the dataset update might take a while to complete. Use DescribeDataset to check the current status. The dataset updated successfully if the value of Status is UPDATE_COMPLETE.

To check if any non-terminal errors occured, call ListDatasetEntries and check for the presence of errors lists in the JSON Lines.

Dataset update fails if a terminal error occurs (Status = UPDATE_FAILED). Currently, you can't access the terminal error information from the Amazon Rekognition Custom Labels SDK.

This operation requires permissions to perform the rekognition:UpdateDatasetEntries action.

", + "UpdateDatasetEntries": "

This operation applies only to Amazon Rekognition Custom Labels.

Adds or updates one or more entries (images) in a dataset. An entry is a JSON Line which contains the information for a single image, including the image location, assigned labels, and object location bounding boxes. For more information, see Image-Level labels in manifest files and Object localization in manifest files in the Amazon Rekognition Custom Labels Developer Guide.

If the source-ref field in the JSON line references an existing image, the existing image in the dataset is updated. If source-ref field doesn't reference an existing image, the image is added as a new image to the dataset.

You specify the changes that you want to make in the Changes input parameter. There isn't a limit to the number JSON Lines that you can change, but the size of Changes must be less than 5MB.

UpdateDatasetEntries returns immediatly, but the dataset update might take a while to complete. Use DescribeDataset to check the current status. The dataset updated successfully if the value of Status is UPDATE_COMPLETE.

To check if any non-terminal errors occured, call ListDatasetEntries and check for the presence of errors lists in the JSON Lines.

Dataset update fails if a terminal error occurs (Status = UPDATE_FAILED). Currently, you can't access the terminal error information from the Amazon Rekognition Custom Labels SDK.

This operation requires permissions to perform the rekognition:UpdateDatasetEntries action.

", "UpdateStreamProcessor": "

Allows you to update a stream processor. You can change some settings and regions of interest and delete certain parameters.

" }, "shapes": { @@ -97,7 +100,7 @@ "base": null, "refs": { "TestingData$Assets": "

The assets used for testing.

", - "TrainingData$Assets": "

A Sagemaker GroundTruth manifest file that contains the training images (assets).

", + "TrainingData$Assets": "

A manifest file that contains references to the training images and ground-truth annotations.

", "ValidationData$Assets": "

The assets that comprise the validation data.

" } }, @@ -204,7 +207,7 @@ "Smile$Value": "

Boolean value that indicates whether the face is smiling or not.

", "StreamProcessorDataSharingPreference$OptIn": "

If this option is set to true, you choose to share data with Rekognition to improve model performance.

", "Sunglasses$Value": "

Boolean value that indicates whether the face is wearing sunglasses or not.

", - "TestingData$AutoCreate": "

If specified, Amazon Rekognition Custom Labels temporarily splits the training dataset (80%) to create a test dataset (20%) for the training job. After training completes, the test dataset is not stored and the training dataset reverts to its previous size.

" + "TestingData$AutoCreate": "

If specified, Rekognition splits training dataset to create a test dataset for the training job.

" } }, "BoundingBox": { @@ -286,6 +289,7 @@ "StartFaceDetectionRequest$ClientRequestToken": "

Idempotent token used to identify the start request. If you use the same token with multiple StartFaceDetection requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidently started more than once.

", "StartFaceSearchRequest$ClientRequestToken": "

Idempotent token used to identify the start request. If you use the same token with multiple StartFaceSearch requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidently started more than once.

", "StartLabelDetectionRequest$ClientRequestToken": "

Idempotent token used to identify the start request. If you use the same token with multiple StartLabelDetection requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidently started more than once.

", + "StartMediaAnalysisJobRequest$ClientRequestToken": "

Idempotency token used to prevent the accidental creation of duplicate versions. If you use the same token with multiple StartMediaAnalysisJobRequest requests, the same response is returned. Use ClientRequestToken to prevent the same request from being processed more than once.

", "StartPersonTrackingRequest$ClientRequestToken": "

Idempotent token used to identify the start request. If you use the same token with multiple StartPersonTracking requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidently started more than once.

", "StartSegmentDetectionRequest$ClientRequestToken": "

Idempotent token used to identify the start request. If you use the same token with multiple StartSegmentDetection requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidently started more than once.

", "StartTextDetectionRequest$ClientRequestToken": "

Idempotent token used to identify the start request. If you use the same token with multiple StartTextDetection requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidentaly started more than once.

" @@ -541,6 +545,34 @@ "DetectCustomLabelsResponse$CustomLabels": "

An array of custom labels detected in the input image.

" } }, + "CustomizationFeature": { + "base": null, + "refs": { + "CreateProjectRequest$Feature": "

Specifies feature that is being customized. If no value is provided CUSTOM_LABELS is used as a default.

", + "CustomizationFeatures$member": null, + "ProjectDescription$Feature": "

Specifies the project that is being customized.

", + "ProjectVersionDescription$Feature": "

The feature that was customized.

" + } + }, + "CustomizationFeatureConfig": { + "base": "

Feature specific configuration for the training job. Configuration provided for the job must match the feature type parameter associated with project. If configuration and feature type do not match an InvalidParameterException is returned.

", + "refs": { + "CreateProjectVersionRequest$FeatureConfig": "

Feature-specific configuration of the training job. If the job configuration does not match the feature type associated with the project, an InvalidParameterException is returned.

", + "ProjectVersionDescription$FeatureConfig": "

Feature specific configuration that was applied during training.

" + } + }, + "CustomizationFeatureContentModerationConfig": { + "base": "

Configuration options for Content Moderation training.

", + "refs": { + "CustomizationFeatureConfig$ContentModeration": "

Configuration options for Custom Moderation training.

" + } + }, + "CustomizationFeatures": { + "base": null, + "refs": { + "DescribeProjectsRequest$Features": "

Specifies the type of customization to filter projects by. If no value is specified, CUSTOM_LABELS is used as a default.

" + } + }, "DatasetArn": { "base": null, "refs": { @@ -664,6 +696,10 @@ "DescribeCollectionResponse$CreationTimestamp": "

The number of milliseconds since the Unix epoch time until the creation of the collection. The Unix epoch time is 00:00:00 Coordinated Universal Time (UTC), Thursday, 1 January 1970.

", "DescribeStreamProcessorResponse$CreationTimestamp": "

Date and time the stream processor was created

", "DescribeStreamProcessorResponse$LastUpdateTimestamp": "

The time, in Unix format, the stream processor was last updated. For example, when the stream processor moves from a running state to a failed state, or when the user starts or stops the stream processor.

", + "GetMediaAnalysisJobResponse$CreationTimestamp": "

The Unix date and time when the job was started.

", + "GetMediaAnalysisJobResponse$CompletionTimestamp": "

The Unix date and time when the job finished.

", + "MediaAnalysisJobDescription$CreationTimestamp": "

The Unix date and time when the job was started.

", + "MediaAnalysisJobDescription$CompletionTimestamp": "

The Unix date and time when the job finished.

", "ProjectDescription$CreationTimestamp": "

The Unix timestamp for the date and time that the project was created.

", "ProjectPolicy$CreationTimestamp": "

The Unix datetime for the creation of the project policy.

", "ProjectPolicy$LastUpdatedTimestamp": "

The Unix datetime for when the project policy was last updated.

", @@ -1039,14 +1075,16 @@ "ExtendedPaginationToken": { "base": null, "refs": { - "DescribeProjectVersionsRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", - "DescribeProjectVersionsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", - "DescribeProjectsRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", - "DescribeProjectsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "DescribeProjectVersionsRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "DescribeProjectVersionsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "DescribeProjectsRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Rekognition returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "DescribeProjectsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListDatasetEntriesRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListDatasetEntriesResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListDatasetLabelsRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListDatasetLabelsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "ListMediaAnalysisJobsRequest$NextToken": "

Pagination token, if the previous response was incomplete.

", + "ListMediaAnalysisJobsResponse$NextToken": "

Pagination token, if the previous response was incomplete.

", "ListProjectPoliciesRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListProjectPoliciesResponse$NextToken": "

If the response is truncated, Amazon Rekognition returns this token that you can use in the subsequent request to retrieve the next set of project policies.

" } @@ -1351,6 +1389,16 @@ "refs": { } }, + "GetMediaAnalysisJobRequest": { + "base": null, + "refs": { + } + }, + "GetMediaAnalysisJobResponse": { + "base": null, + "refs": { + } + }, "GetPersonTrackingRequest": { "base": null, "refs": { @@ -1519,9 +1567,9 @@ "InferenceUnits": { "base": null, "refs": { - "ProjectVersionDescription$MinInferenceUnits": "

The minimum number of inference units used by the model. For more information, see StartProjectVersion.

", - "ProjectVersionDescription$MaxInferenceUnits": "

The maximum number of inference units Amazon Rekognition Custom Labels uses to auto-scale the model. For more information, see StartProjectVersion.

", - "StartProjectVersionRequest$MinInferenceUnits": "

The minimum number of inference units to use. A single inference unit represents 1 hour of processing.

For information about the number of transactions per second (TPS) that an inference unit can support, see Running a trained Amazon Rekognition Custom Labels model in the Amazon Rekognition Custom Labels Guide.

Use a higher number to increase the TPS throughput of your model. You are charged for the number of inference units that you use.

", + "ProjectVersionDescription$MinInferenceUnits": "

The minimum number of inference units used by the model. Applies only to Custom Labels projects. For more information, see StartProjectVersion.

", + "ProjectVersionDescription$MaxInferenceUnits": "

The maximum number of inference units Amazon Rekognition uses to auto-scale the model. Applies only to Custom Labels projects. For more information, see StartProjectVersion.

", + "StartProjectVersionRequest$MinInferenceUnits": "

The minimum number of inference units to use. A single inference unit represents 1 hour of processing.

Use a higher number to increase the TPS throughput of your model. You are charged for the number of inference units that you use.

", "StartProjectVersionRequest$MaxInferenceUnits": "

The maximum number of inference units to use for auto-scaling the model. If you don't specify a value, Amazon Rekognition Custom Labels doesn't auto-scale the model.

" } }, @@ -1547,6 +1595,11 @@ "refs": { } }, + "InvalidManifestException": { + "base": "

Indicates that a provided manifest file is empty or larger than the allowed limit.

", + "refs": { + } + }, "InvalidPaginationTokenException": { "base": "

Pagination token in the request is not valid.

", "refs": { @@ -1664,10 +1717,13 @@ "refs": { "CopyProjectVersionRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt training results and manifest files written to the output Amazon S3 bucket (OutputConfig).

If you choose to use your own KMS key, you need the following permissions on the KMS key.

  • kms:CreateGrant

  • kms:DescribeKey

  • kms:GenerateDataKey

  • kms:Decrypt

If you don't specify a value for KmsKeyId, images copied into the service are encrypted using a key that AWS owns and manages.

", "CreateFaceLivenessSessionRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). Used to encrypt audit images and reference images.

", - "CreateProjectVersionRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt training and test images copied into the service for model training. Your source images are unaffected. The key is also used to encrypt training results and manifest files written to the output Amazon S3 bucket (OutputConfig).

If you choose to use your own KMS key, you need the following permissions on the KMS key.

  • kms:CreateGrant

  • kms:DescribeKey

  • kms:GenerateDataKey

  • kms:Decrypt

If you don't specify a value for KmsKeyId, images copied into the service are encrypted using a key that AWS owns and manages.

", + "CreateProjectVersionRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt training images, test images, and manifest files copied into the service for the project version. Your source images are unaffected. The key is also used to encrypt training results and manifest files written to the output Amazon S3 bucket (OutputConfig).

If you choose to use your own KMS key, you need the following permissions on the KMS key.

  • kms:CreateGrant

  • kms:DescribeKey

  • kms:GenerateDataKey

  • kms:Decrypt

If you don't specify a value for KmsKeyId, images copied into the service are encrypted using a key that AWS owns and manages.

", "CreateStreamProcessorRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). This is an optional parameter for label detection stream processors and should not be used to create a face search stream processor. You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt results and data published to your Amazon S3 bucket, which includes image frames and hero images. Your source images are unaffected.

", "DescribeStreamProcessorResponse$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). This is an optional parameter for label detection stream processors.

", - "ProjectVersionDescription$KmsKeyId": "

The identifer for the AWS Key Management Service key (AWS KMS key) that was used to encrypt the model during training.

" + "GetMediaAnalysisJobResponse$KmsKeyId": "

KMS Key that was provided in the creation request.

", + "MediaAnalysisJobDescription$KmsKeyId": "

KMS Key that was provided in the creation request.

", + "ProjectVersionDescription$KmsKeyId": "

The identifer for the AWS Key Management Service key (AWS KMS key) that was used to encrypt the model during training.

", + "StartMediaAnalysisJobRequest$KmsKeyId": "

The identifier of customer managed AWS KMS key (name or ARN). The key is used to encrypt images copied into the service. The key is also used to encrypt results and manifest files written to the output Amazon S3 bucket.

" } }, "KnownGender": { @@ -1785,7 +1841,7 @@ } }, "LimitExceededException": { - "base": "

An Amazon Rekognition service limit was exceeded. For example, if you start too many Amazon Rekognition Video jobs concurrently, calls to start operations (StartLabelDetection, for example) will raise a LimitExceededException exception (HTTP status code: 400) until the number of concurrently running jobs is below the Amazon Rekognition service limit.

", + "base": "

An Amazon Rekognition service limit was exceeded. For example, if you start too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) will raise a LimitExceededException exception (HTTP status code: 400) until the number of concurrently running jobs is below the Amazon Rekognition service limit.

", "refs": { } }, @@ -1841,6 +1897,22 @@ "refs": { } }, + "ListMediaAnalysisJobsPageSize": { + "base": null, + "refs": { + "ListMediaAnalysisJobsRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value user can specify is 100. If user specifies a value greater than 100, an InvalidParameterException error occurs. The default value is 100.

" + } + }, + "ListMediaAnalysisJobsRequest": { + "base": null, + "refs": { + } + }, + "ListMediaAnalysisJobsResponse": { + "base": null, + "refs": { + } + }, "ListProjectPoliciesPageSize": { "base": null, "refs": { @@ -1977,6 +2049,105 @@ "SearchUsersRequest$MaxUsers": "

Maximum number of identities to return.

" } }, + "MediaAnalysisDetectModerationLabelsConfig": { + "base": "

Configuration for Moderation Labels Detection.

", + "refs": { + "MediaAnalysisOperationsConfig$DetectModerationLabels": "

Contains configuration options for a DetectModerationLabels job.

" + } + }, + "MediaAnalysisInput": { + "base": "

Contains input information for a media analysis job.

", + "refs": { + "GetMediaAnalysisJobResponse$Input": "

Reference to the input manifest that was provided in the job creation request.

", + "MediaAnalysisJobDescription$Input": "

Reference to the input manifest that was provided in the job creation request.

", + "StartMediaAnalysisJobRequest$Input": "

Input data to be analyzed by the job.

" + } + }, + "MediaAnalysisJobDescription": { + "base": "

Description for a media analysis job.

", + "refs": { + "MediaAnalysisJobDescriptions$member": null + } + }, + "MediaAnalysisJobDescriptions": { + "base": null, + "refs": { + "ListMediaAnalysisJobsResponse$MediaAnalysisJobs": "

Contains a list of all media analysis jobs.

" + } + }, + "MediaAnalysisJobFailureCode": { + "base": null, + "refs": { + "MediaAnalysisJobFailureDetails$Code": "

Error code for the failed job.

" + } + }, + "MediaAnalysisJobFailureDetails": { + "base": "

Details about the error that resulted in failure of the job.

", + "refs": { + "GetMediaAnalysisJobResponse$FailureDetails": "

Details about the error that resulted in failure of the job.

", + "MediaAnalysisJobDescription$FailureDetails": "

Details about the error that resulted in failure of the job.

" + } + }, + "MediaAnalysisJobId": { + "base": null, + "refs": { + "GetMediaAnalysisJobRequest$JobId": "

Unique identifier for the media analysis job for which you want to retrieve results.

", + "GetMediaAnalysisJobResponse$JobId": "

The identifier for the media analysis job.

", + "MediaAnalysisJobDescription$JobId": "

The identifier for a media analysis job.

", + "StartMediaAnalysisJobResponse$JobId": "

Identifier for the created job.

" + } + }, + "MediaAnalysisJobName": { + "base": null, + "refs": { + "GetMediaAnalysisJobResponse$JobName": "

The name of the media analysis job.

", + "MediaAnalysisJobDescription$JobName": "

The name of a media analysis job.

", + "StartMediaAnalysisJobRequest$JobName": "

The name of the job. Does not have to be unique.

" + } + }, + "MediaAnalysisJobStatus": { + "base": null, + "refs": { + "GetMediaAnalysisJobResponse$Status": "

The current status of the media analysis job.

", + "MediaAnalysisJobDescription$Status": "

The status of the media analysis job being retrieved.

" + } + }, + "MediaAnalysisManifestSummary": { + "base": "

Summary that provides statistics on input manifest and errors identified in the input manifest.

", + "refs": { + "GetMediaAnalysisJobResponse$ManifestSummary": "

The summary manifest provides statistics on input manifest and errors identified in the input manifest.

", + "MediaAnalysisJobDescription$ManifestSummary": "

Provides statistics on input manifest and errors identified in the input manifest.

" + } + }, + "MediaAnalysisOperationsConfig": { + "base": "

Configuration options for a media analysis job. Configuration is operation-specific.

", + "refs": { + "GetMediaAnalysisJobResponse$OperationsConfig": "

Operation configurations that were provided during job creation.

", + "MediaAnalysisJobDescription$OperationsConfig": "

Operation configurations that were provided during job creation.

", + "StartMediaAnalysisJobRequest$OperationsConfig": "

Configuration options for the media analysis job to be created.

" + } + }, + "MediaAnalysisOutputConfig": { + "base": "

Output configuration provided in the job creation request.

", + "refs": { + "GetMediaAnalysisJobResponse$OutputConfig": "

Output configuration that was provided in the creation request.

", + "MediaAnalysisJobDescription$OutputConfig": "

Output configuration that was provided in the creation request.

", + "StartMediaAnalysisJobRequest$OutputConfig": "

The Amazon S3 bucket location to store the results.

" + } + }, + "MediaAnalysisResults": { + "base": "

Contains the results for a media analysis job created with StartMediaAnalysisJob.

", + "refs": { + "GetMediaAnalysisJobResponse$Results": "

Output manifest that contains prediction results.

", + "MediaAnalysisJobDescription$Results": "

Output manifest that contains prediction results.

" + } + }, + "MediaAnalysisS3KeyPrefix": { + "base": null, + "refs": { + "MediaAnalysisOutputConfig$S3KeyPrefix": "

Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for storage.

" + } + }, "MinCoveragePercentage": { "base": null, "refs": { @@ -2036,7 +2207,7 @@ "base": "

The S3 bucket and folder location where training output is placed.

", "refs": { "CopyProjectVersionRequest$OutputConfig": "

The S3 bucket and folder location where the training output for the source model version is placed.

", - "CreateProjectVersionRequest$OutputConfig": "

The Amazon S3 bucket location to store the results of training. The S3 bucket can be in any AWS account as long as the caller has s3:PutObject permissions on the S3 bucket.

", + "CreateProjectVersionRequest$OutputConfig": "

The Amazon S3 bucket location to store the results of training. The bucket can be any S3 bucket in your AWS account. You need s3:PutObject permission on the bucket.

", "ProjectVersionDescription$OutputConfig": "

The location where training results are saved.

" } }, @@ -2102,6 +2273,7 @@ "ConnectedHomeSettingsForUpdate$MinConfidence": "

The minimum confidence required to label an object in the video.

", "CoversBodyPart$Confidence": "

The confidence that Amazon Rekognition has in the value of Value.

", "CustomLabel$Confidence": "

The confidence that the model has in the detection of the custom label. The range is 0-100. A higher value indicates a higher confidence.

", + "CustomizationFeatureContentModerationConfig$ConfidenceThreshold": "

The confidence level you plan to use to identify if unsafe content is present during inference.

", "DetectCustomLabelsRequest$MinConfidence": "

Specifies the minimum confidence level for the labels to return. DetectCustomLabels doesn't return any labels with a confidence value that's lower than this specified value. If you specify a value of 0, DetectCustomLabels returns all labels, regardless of the assumed threshold applied to each label. If you don't specify a value for MinConfidence, DetectCustomLabels returns labels based on the assumed threshold of each label.

", "DetectLabelsRequest$MinConfidence": "

Specifies the minimum confidence level for the labels to return. Amazon Rekognition doesn't return any labels with confidence lower than this specified value.

If MinConfidence is not specified, the operation returns labels with a confidence values greater than or equal to 55 percent. Only valid when GENERAL_LABELS is specified as a feature type in the Feature input parameter.

", "DetectModerationLabelsRequest$MinConfidence": "

Specifies the minimum confidence level for the labels to return. Amazon Rekognition doesn't return any labels with a confidence level lower than this specified value.

If you don't specify MinConfidence, the operation returns labels with confidence values greater than or equal to 50 percent.

", @@ -2121,6 +2293,7 @@ "GetFaceLivenessSessionResultsResponse$Confidence": "

Probabalistic confidence score for if the person in the given video was live, represented as a float value between 0 to 100.

", "Instance$Confidence": "

The confidence that Amazon Rekognition has in the accuracy of the bounding box.

", "Label$Confidence": "

Level of confidence.

", + "MediaAnalysisDetectModerationLabelsConfig$MinConfidence": "

Specifies the minimum confidence level for the moderation labels to return. Amazon Rekognition doesn't return any labels with a confidence level lower than this specified value.

", "ModerationLabel$Confidence": "

Specifies the confidence that Amazon Rekognition has that the label has been correctly identified.

If you don't specify the MinConfidence parameter in the call to DetectModerationLabels, the operation returns labels with a confidence value greater than or equal to 50 percent.

", "MouthOpen$Confidence": "

Level of confidence in the determination.

", "Mustache$Confidence": "

Level of confidence in the determination.

", @@ -2212,16 +2385,23 @@ "CopyProjectVersionRequest$DestinationProjectArn": "

The ARN of the project in the trusted AWS account that you want to copy the model version to.

", "CreateDatasetRequest$ProjectArn": "

The ARN of the Amazon Rekognition Custom Labels project to which you want to asssign the dataset.

", "CreateProjectResponse$ProjectArn": "

The Amazon Resource Name (ARN) of the new project. You can use the ARN to configure IAM access to the project.

", - "CreateProjectVersionRequest$ProjectArn": "

The ARN of the Amazon Rekognition Custom Labels project that manages the model that you want to train.

", + "CreateProjectVersionRequest$ProjectArn": "

The ARN of the Amazon Rekognition project that will manage the project version you want to train.

", "DeleteProjectPolicyRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that the project policy you want to delete is attached to.

", "DeleteProjectRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that you want to delete.

", - "DescribeProjectVersionsRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that contains the models you want to describe.

", + "DescribeProjectVersionsRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that contains the model/adapter you want to describe.

", "ListProjectPoliciesRequest$ProjectArn": "

The ARN of the project for which you want to list the project policies.

", "ProjectDescription$ProjectArn": "

The Amazon Resource Name (ARN) of the project.

", "ProjectPolicy$ProjectArn": "

The Amazon Resource Name (ARN) of the project to which the project policy is attached.

", "PutProjectPolicyRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that the project policy is attached to.

" } }, + "ProjectAutoUpdate": { + "base": null, + "refs": { + "CreateProjectRequest$AutoUpdate": "

Specifies whether automatic retraining should be attempted for the versions of the project. Automatic retraining is done as a best effort. Required argument for Content Moderation. Applicable only to adapters.

", + "ProjectDescription$AutoUpdate": "

Indicates whether automatic retraining will be attempted for the versions of the project. Applies only to adapters.

" + } + }, "ProjectDescription": { "base": "

A description of an Amazon Rekognition Custom Labels project. For more information, see DescribeProjects.

", "refs": { @@ -2244,7 +2424,7 @@ "ProjectNames": { "base": null, "refs": { - "DescribeProjectsRequest$ProjectNames": "

A list of the projects that you want Amazon Rekognition Custom Labels to describe. If you don't specify a value, the response includes descriptions for all the projects in your AWS account.

" + "DescribeProjectsRequest$ProjectNames": "

A list of the projects that you want Rekognition to describe. If you don't specify a value, the response includes descriptions for all the projects in your AWS account.

" } }, "ProjectPolicies": { @@ -2295,17 +2475,17 @@ "refs": { "CopyProjectVersionRequest$SourceProjectVersionArn": "

The ARN of the model version in the source project that you want to copy to a destination project.

", "CopyProjectVersionResponse$ProjectVersionArn": "

The ARN of the copied model version in the destination project.

", - "CreateProjectVersionResponse$ProjectVersionArn": "

The ARN of the model version that was created. Use DescribeProjectVersion to get the current status of the training operation.

", - "DeleteProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version that you want to delete.

", - "DetectCustomLabelsRequest$ProjectVersionArn": "

The ARN of the model version that you want to use.

", - "ProjectVersionDescription$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version.

", + "CreateProjectVersionResponse$ProjectVersionArn": "

The ARN of the model or the project version that was created. Use DescribeProjectVersion to get the current status of the training operation.

", + "DeleteProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the project version that you want to delete.

", + "DetectCustomLabelsRequest$ProjectVersionArn": "

The ARN of the model version that you want to use. Only models associated with Custom Labels projects accepted by the operation. If a provided ARN refers to a model version associated with a project for a different feature type, then an InvalidParameterException is returned.

", + "ProjectVersionDescription$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the project version.

", "ProjectVersionDescription$SourceProjectVersionArn": "

If the model version was copied from a different project, SourceProjectVersionArn contains the ARN of the source model version.

", "StartProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name(ARN) of the model version that you want to start.

", - "StopProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version that you want to delete.

This operation requires permissions to perform the rekognition:StopProjectVersion action.

" + "StopProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version that you want to stop.

This operation requires permissions to perform the rekognition:StopProjectVersion action.

" } }, "ProjectVersionDescription": { - "base": "

A description of a version of an Amazon Rekognition Custom Labels model.

", + "base": "

A description of a version of a Amazon Rekognition project version.

", "refs": { "ProjectVersionDescriptions$member": null } @@ -2313,7 +2493,15 @@ "ProjectVersionDescriptions": { "base": null, "refs": { - "DescribeProjectVersionsResponse$ProjectVersionDescriptions": "

A list of model descriptions. The list is sorted by the creation date and time of the model versions, latest to earliest.

" + "DescribeProjectVersionsResponse$ProjectVersionDescriptions": "

A list of project version descriptions. The list is sorted by the creation date and time of the project versions, latest to earliest.

" + } + }, + "ProjectVersionId": { + "base": null, + "refs": { + "DetectModerationLabelsRequest$ProjectVersion": "

Identifier for the custom adapter. Expects the ProjectVersionArn as a value. Use the CreateProject or CreateProjectVersion APIs to create a custom adapter.

", + "DetectModerationLabelsResponse$ProjectVersion": "

Identifier of the custom adapter that was used during inference. If during inference the adapter was EXPIRED, then the parameter will not be returned, indicating that a base moderation detection project version was used.

", + "MediaAnalysisDetectModerationLabelsConfig$ProjectVersion": "

Specifies the custom moderation model to be used during the label detection job. If not provided the pre-trained model is used.

" } }, "ProjectVersionStatus": { @@ -2504,6 +2692,7 @@ "base": null, "refs": { "LivenessOutputConfig$S3Bucket": "

The path to an AWS Amazon S3 bucket used to store Face Liveness session results.

", + "MediaAnalysisOutputConfig$S3Bucket": "

Specifies the Amazon S3 bucket to contain the output of the media analysis job.

", "OutputConfig$S3Bucket": "

The S3 bucket where training output is placed.

", "S3Destination$Bucket": "

The name of the Amazon S3 bucket you want to associate with the streaming video project. You must be the owner of the Amazon S3 bucket.

", "S3Object$Bucket": "

Name of the S3 bucket.

" @@ -2528,6 +2717,9 @@ "AuditImage$S3Object": null, "GroundTruthManifest$S3Object": null, "Image$S3Object": "

Identifies an S3 object as the image source.

", + "MediaAnalysisInput$S3Object": null, + "MediaAnalysisManifestSummary$S3Object": null, + "MediaAnalysisResults$S3Object": null, "Summary$S3Object": null, "Video$S3Object": "

The Amazon S3 bucket name and file name for the video.

" } @@ -2729,6 +2921,16 @@ "refs": { } }, + "StartMediaAnalysisJobRequest": { + "base": null, + "refs": { + } + }, + "StartMediaAnalysisJobResponse": { + "base": null, + "refs": { + } + }, "StartPersonTrackingRequest": { "base": null, "refs": { @@ -2963,7 +3165,7 @@ "DescribeCollectionResponse$CollectionARN": "

The Amazon Resource Name (ARN) of the collection.

", "DescribeStreamProcessorResponse$StatusMessage": "

Detailed status message about the stream processor.

", "DetectLabelsResponse$LabelModelVersion": "

Version number of the label detection model that was used to detect labels.

", - "DetectModerationLabelsResponse$ModerationModelVersion": "

Version number of the moderation detection model that was used to detect unsafe content.

", + "DetectModerationLabelsResponse$ModerationModelVersion": "

Version number of the base moderation detection model that was used to detect unsafe content.

", "DetectProtectiveEquipmentResponse$ProtectiveEquipmentModelVersion": "

The version number of the PPE detection model used to detect PPE in the image.

", "DetectTextResponse$TextModelVersion": "

The model version used to detect text.

", "DominantColor$HexCode": "

The Hex code equivalent of the RGB values for a dominant color.

", @@ -2983,9 +3185,11 @@ "LabelCategory$Name": "

The name of a category that applies to a given label.

", "ListFacesResponse$NextToken": "

If the response is truncated, Amazon Rekognition returns this token that you can use in the subsequent request to retrieve the next set of faces.

", "ListFacesResponse$FaceModelVersion": "

Version number of the face detection model associated with the input collection (CollectionId).

", + "MediaAnalysisJobFailureDetails$Message": "

Human readable error message.

", "ModerationLabel$Name": "

The label name for the type of unsafe content detected in the image.

", "ModerationLabel$ParentName": "

The name for the parent label. Labels at the top level of the hierarchy have the parent label \"\".

", "Parent$Name": "

The name of the parent label.

", + "ProjectVersionDescription$BaseModelVersion": "

The base detection model version used to create the project version.

", "SearchFacesByImageResponse$FaceModelVersion": "

Version number of the face detection model associated with the input collection (CollectionId).

", "SearchFacesResponse$FaceModelVersion": "

Version number of the face detection model associated with the input collection (CollectionId).

", "SearchUsersByImageResponse$FaceModelVersion": "

Version number of the face detection model associated with the input collection CollectionId.

", @@ -3026,7 +3230,7 @@ "refs": { "CopyProjectVersionRequest$Tags": "

The key-value tags to assign to the model version.

", "CreateCollectionRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the collection.

", - "CreateProjectVersionRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the model.

", + "CreateProjectVersionRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the project version.

", "CreateStreamProcessorRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the stream processor.

", "ListTagsForResourceResponse$Tags": "

A list of key-value tags assigned to the resource.

", "TagResourceRequest$Tags": "

The key-value tags to assign to the resource.

" @@ -3061,9 +3265,9 @@ } }, "TestingData": { - "base": "

The dataset used for testing. Optionally, if AutoCreate is set, Amazon Rekognition Custom Labels uses the training dataset to create a test dataset with a temporary split of the training dataset.

", + "base": "

The dataset used for testing. Optionally, if AutoCreate is set, Amazon Rekognition uses the training dataset to create a test dataset with a temporary split of the training dataset.

", "refs": { - "CreateProjectVersionRequest$TestingData": "

Specifies an external manifest that the service uses to test the model. If you specify TestingData you must also specify TrainingData. The project must not have any associated datasets.

", + "CreateProjectVersionRequest$TestingData": "

Specifies an external manifest that the service uses to test the project version. If you specify TestingData you must also specify TrainingData. The project must not have any associated datasets.

", "TestingDataResult$Input": "

The testing dataset that was supplied for training.

", "TestingDataResult$Output": "

The subset of the dataset that was actually tested. Some images (assets) might not be tested due to file formatting and other issues.

" } @@ -3135,13 +3339,13 @@ "TrainingData": { "base": "

The dataset used for training.

", "refs": { - "CreateProjectVersionRequest$TrainingData": "

Specifies an external manifest that the services uses to train the model. If you specify TrainingData you must also specify TestingData. The project must not have any associated datasets.

", - "TrainingDataResult$Input": "

The training assets that you supplied for training.

", - "TrainingDataResult$Output": "

The images (assets) that were actually trained by Amazon Rekognition Custom Labels.

" + "CreateProjectVersionRequest$TrainingData": "

Specifies an external manifest that the services uses to train the project version. If you specify TrainingData you must also specify TestingData. The project must not have any associated datasets.

", + "TrainingDataResult$Input": "

The training data that you supplied.

", + "TrainingDataResult$Output": "

Reference to images (assets) that were actually used during training with trained model predictions.

" } }, "TrainingDataResult": { - "base": "

Sagemaker Groundtruth format manifest files for the input, output and validation datasets that are used and created during testing.

", + "base": "

The data validation manifest created for the training dataset during model training.

", "refs": { "ProjectVersionDescription$TrainingDataResult": "

Contains information about the training results.

" } @@ -3411,21 +3615,28 @@ "base": "

Contains the Amazon S3 bucket location of the validation data for a model training job.

The validation data includes error information for individual JSON Lines in the dataset. For more information, see Debugging a Failed Model Training in the Amazon Rekognition Custom Labels Developer Guide.

You get the ValidationData object for the training dataset (TrainingDataResult) and the test dataset (TestingDataResult) by calling DescribeProjectVersions.

The assets array contains a single Asset object. The GroundTruthManifest field of the Asset object contains the S3 bucket location of the validation data.

", "refs": { "TestingDataResult$Validation": "

The location of the data validation manifest. The data validation manifest is created for the test dataset during model training.

", - "TrainingDataResult$Validation": "

The location of the data validation manifest. The data validation manifest is created for the training dataset during model training.

" + "TrainingDataResult$Validation": "

A manifest that you supplied for training, with validation results for each line.

" + } + }, + "VersionDescription": { + "base": null, + "refs": { + "CreateProjectVersionRequest$VersionDescription": "

A description applied to the project version being created.

", + "ProjectVersionDescription$VersionDescription": "

A user-provided description of the project version.

" } }, "VersionName": { "base": null, "refs": { "CopyProjectVersionRequest$VersionName": "

A name for the version of the model that's copied to the destination project.

", - "CreateProjectVersionRequest$VersionName": "

A name for the version of the model. This value must be unique.

", + "CreateProjectVersionRequest$VersionName": "

A name for the version of the project version. This value must be unique.

", "VersionNames$member": null } }, "VersionNames": { "base": null, "refs": { - "DescribeProjectVersionsRequest$VersionNames": "

A list of model version names that you want to describe. You can add up to 10 model version names to the list. If you don't specify a value, all model descriptions are returned. A version name is part of a model (ProjectVersion) ARN. For example, my-model.2020-01-21T09.10.15 is the version name in the following ARN. arn:aws:rekognition:us-east-1:123456789012:project/getting-started/version/my-model.2020-01-21T09.10.15/1234567890123.

" + "DescribeProjectVersionsRequest$VersionNames": "

A list of model or project version names that you want to describe. You can add up to 10 model or project version names to the list. If you don't specify a value, all project version descriptions are returned. A version name is part of a project version ARN. For example, my-model.2020-01-21T09.10.15 is the version name in the following ARN. arn:aws:rekognition:us-east-1:123456789012:project/getting-started/version/my-model.2020-01-21T09.10.15/1234567890123.

" } }, "Video": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -764,6 +764,57 @@ "title": "To distribute an Amazon Rekognition Custom Labels dataset" } ], + "GetMediaAnalysisJob": [ + { + "input": { + "JobId": "861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537" + }, + "output": { + "CompletionTimestamp": "2023-07-28T08:05:51.958000-07:00", + "CreationTimestamp": "2023-07-28T08:05:51.958000-06:00", + "Input": { + "S3Object": { + "Bucket": "input-bucket", + "Name": "input-manifest.json" + } + }, + "JobId": "861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537", + "JobName": "job-name", + "ManifestSummary": { + "S3Object": { + "Bucket": "output-bucket", + "Name": "output-location/861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537-manifest-summary.json" + } + }, + "OperationsConfig": { + "DetectModerationLabels": { + "MinConfidence": 50, + "ProjectVersion": "arn:aws:rekognition:us-east-1:111122223333:project/my-project/version/1/1690556751958" + } + }, + "OutputConfig": { + "S3Bucket": "output-bucket", + "S3KeyPrefix": "output-location" + }, + "Results": { + "S3Object": { + "Bucket": "output-bucket", + "Name": "output-location/861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537-results.jsonl" + } + }, + "Status": "SUCCEEDED" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Retrieves the results for a given media analysis job.", + "id": "getmediaanalysisjob-1697650068124", + "title": "GetMediaAnalysisJob" + } + ], "IndexFaces": [ { "input": { @@ -1060,6 +1111,61 @@ "title": "To list the faces in a collection" } ], + "ListMediaAnalysisJobs": [ + { + "input": { + "MaxResults": 10 + }, + "output": { + "MediaAnalysisJobs": [ + { + "CompletionTimestamp": "2023-07-28T08:05:51.958000-07:00", + "CreationTimestamp": "2023-07-28T08:05:51.958000-06:00", + "Input": { + "S3Object": { + "Bucket": "input-bucket", + "Name": "input-manifest.json" + } + }, + "JobId": "861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537", + "JobName": "job-name", + "ManifestSummary": { + "S3Object": { + "Bucket": "output-bucket", + "Name": "output-location/861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537-manifest-summary.json" + } + }, + "OperationsConfig": { + "DetectModerationLabels": { + "MinConfidence": 50, + "ProjectVersion": "arn:aws:rekognition:us-east-1:111122223333:project/my-project/version/1/1690556751958" + } + }, + "OutputConfig": { + "S3Bucket": "output-bucket", + "S3KeyPrefix": "output-location" + }, + "Results": { + "S3Object": { + "Bucket": "output-bucket", + "Name": "output-location/861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537-results.jsonl" + } + }, + "Status": "SUCCEEDED" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Returns a list of media analysis jobs.", + "id": "listmediaanalysisjobs-1697650653077", + "title": "ListMediaAnalysisJobs" + } + ], "ListProjectPolicies": [ { "input": { @@ -1366,6 +1472,41 @@ "title": "SearchUsersByImage" } ], + "StartMediaAnalysisJob": [ + { + "input": { + "Input": { + "S3Object": { + "Bucket": "input-bucket", + "Name": "input-manifest.json" + } + }, + "JobName": "job-name", + "OperationsConfig": { + "DetectModerationLabels": { + "MinConfidence": 50, + "ProjectVersion": "arn:aws:rekognition:us-east-1:111122223333:project/my-project/version/1/1690556751958" + } + }, + "OutputConfig": { + "S3Bucket": "output-bucket", + "S3KeyPrefix": "output-location" + } + }, + "output": { + "JobId": "861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "Initiates a new media analysis job.", + "id": "startmediaanalysisjob-1697651090922", + "title": "StartMediaAnalysisJob" + } + ], "StartProjectVersion": [ { "input": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/rekognition/2016-06-27/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/rekognition/2016-06-27/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -76,6 +76,11 @@ "output_token": "NextToken", "result_key": "Faces" }, + "ListMediaAnalysisJobs": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "ListProjectPolicies": { "input_token": "NextToken", "limit_key": "MaxResults", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,766 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-05-13", + "endpointPrefix":"repostspace", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AWS re:Post Private", + "serviceId":"repostspace", + "signatureVersion":"v4", + "signingName":"repostspace", + "uid":"repostspace-2022-05-13" + }, + "operations":{ + "CreateSpace":{ + "name":"CreateSpace", + "http":{ + "method":"POST", + "requestUri":"/spaces", + "responseCode":200 + }, + "input":{"shape":"CreateSpaceInput"}, + "output":{"shape":"CreateSpaceOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteSpace":{ + "name":"DeleteSpace", + "http":{ + "method":"DELETE", + "requestUri":"/spaces/{spaceId}", + "responseCode":200 + }, + "input":{"shape":"DeleteSpaceInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeregisterAdmin":{ + "name":"DeregisterAdmin", + "http":{ + "method":"DELETE", + "requestUri":"/spaces/{spaceId}/admins/{adminId}", + "responseCode":200 + }, + "input":{"shape":"DeregisterAdminInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "GetSpace":{ + "name":"GetSpace", + "http":{ + "method":"GET", + "requestUri":"/spaces/{spaceId}", + "responseCode":200 + }, + "input":{"shape":"GetSpaceInput"}, + "output":{"shape":"GetSpaceOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "ListSpaces":{ + "name":"ListSpaces", + "http":{ + "method":"GET", + "requestUri":"/spaces", + "responseCode":200 + }, + "input":{"shape":"ListSpacesInput"}, + "output":{"shape":"ListSpacesOutput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "RegisterAdmin":{ + "name":"RegisterAdmin", + "http":{ + "method":"POST", + "requestUri":"/spaces/{spaceId}/admins/{adminId}", + "responseCode":200 + }, + "input":{"shape":"RegisterAdminInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "SendInvites":{ + "name":"SendInvites", + "http":{ + "method":"POST", + "requestUri":"/spaces/{spaceId}/invite", + "responseCode":200 + }, + "input":{"shape":"SendInvitesInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateSpace":{ + "name":"UpdateSpace", + "http":{ + "method":"PUT", + "requestUri":"/spaces/{spaceId}", + "responseCode":200 + }, + "input":{"shape":"UpdateSpaceInput"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "AccessorId":{"type":"string"}, + "AccessorIdList":{ + "type":"list", + "member":{"shape":"AccessorId"}, + "max":1000, + "min":0 + }, + "AdminId":{"type":"string"}, + "Arn":{ + "type":"string", + "max":2048, + "min":20 + }, + "ClientId":{"type":"string"}, + "ConfigurationStatus":{ + "type":"string", + "enum":[ + "CONFIGURED", + "UNCONFIGURED" + ] + }, + "ConflictException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "ContentSize":{ + "type":"long", + "box":true + }, + "CreateSpaceInput":{ + "type":"structure", + "required":[ + "name", + "subdomain", + "tier" + ], + "members":{ + "description":{"shape":"SpaceDescription"}, + "name":{"shape":"SpaceName"}, + "roleArn":{"shape":"Arn"}, + "subdomain":{"shape":"SpaceSubdomain"}, + "tags":{"shape":"Tags"}, + "tier":{"shape":"TierLevel"}, + "userKMSKey":{"shape":"KMSKey"} + } + }, + "CreateSpaceOutput":{ + "type":"structure", + "required":["spaceId"], + "members":{ + "spaceId":{"shape":"SpaceId"} + } + }, + "DeleteSpaceInput":{ + "type":"structure", + "required":["spaceId"], + "members":{ + "spaceId":{ + "shape":"SpaceId", + "location":"uri", + "locationName":"spaceId" + } + } + }, + "DeregisterAdminInput":{ + "type":"structure", + "required":[ + "adminId", + "spaceId" + ], + "members":{ + "adminId":{ + "shape":"AdminId", + "location":"uri", + "locationName":"adminId" + }, + "spaceId":{ + "shape":"SpaceId", + "location":"uri", + "locationName":"spaceId" + } + } + }, + "GetSpaceInput":{ + "type":"structure", + "required":["spaceId"], + "members":{ + "spaceId":{ + "shape":"SpaceId", + "location":"uri", + "locationName":"spaceId" + } + } + }, + "GetSpaceOutput":{ + "type":"structure", + "required":[ + "arn", + "clientId", + "configurationStatus", + "createDateTime", + "name", + "randomDomain", + "spaceId", + "status", + "storageLimit", + "tier", + "vanityDomain", + "vanityDomainStatus" + ], + "members":{ + "arn":{"shape":"Arn"}, + "clientId":{"shape":"ClientId"}, + "configurationStatus":{"shape":"ConfigurationStatus"}, + "contentSize":{"shape":"ContentSize"}, + "createDateTime":{"shape":"SyntheticTimestamp_date_time"}, + "customerRoleArn":{"shape":"Arn"}, + "deleteDateTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"SpaceDescription"}, + "groupAdmins":{"shape":"GroupAdmins"}, + "name":{"shape":"SpaceName"}, + "randomDomain":{"shape":"Url"}, + "spaceId":{"shape":"SpaceId"}, + "status":{"shape":"ProvisioningStatus"}, + "storageLimit":{"shape":"StorageLimit"}, + "tier":{"shape":"TierLevel"}, + "userAdmins":{"shape":"UserAdmins"}, + "userCount":{"shape":"UserCount"}, + "userKMSKey":{"shape":"KMSKey"}, + "vanityDomain":{"shape":"Url"}, + "vanityDomainStatus":{"shape":"VanityDomainStatus"} + } + }, + "GroupAdmins":{ + "type":"list", + "member":{"shape":"AdminId"} + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "retryAfterSeconds":{ + "shape":"Integer", + "location":"header", + "locationName":"Retry-After" + } + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "InviteBody":{ + "type":"string", + "max":600, + "min":1, + "sensitive":true + }, + "InviteTitle":{ + "type":"string", + "max":200, + "min":1, + "sensitive":true + }, + "KMSKey":{"type":"string"}, + "ListSpacesInput":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListSpacesLimit", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListSpacesLimit":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListSpacesOutput":{ + "type":"structure", + "required":["spaces"], + "members":{ + "nextToken":{"shape":"String"}, + "spaces":{"shape":"SpacesList"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"Tags"} + } + }, + "ProvisioningStatus":{ + "type":"string", + "max":30, + "min":1 + }, + "RegisterAdminInput":{ + "type":"structure", + "required":[ + "adminId", + "spaceId" + ], + "members":{ + "adminId":{ + "shape":"AdminId", + "location":"uri", + "locationName":"adminId" + }, + "spaceId":{ + "shape":"SpaceId", + "location":"uri", + "locationName":"spaceId" + } + } + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "SendInvitesInput":{ + "type":"structure", + "required":[ + "accessorIds", + "body", + "spaceId", + "title" + ], + "members":{ + "accessorIds":{"shape":"AccessorIdList"}, + "body":{"shape":"InviteBody"}, + "spaceId":{ + "shape":"SpaceId", + "location":"uri", + "locationName":"spaceId" + }, + "title":{"shape":"InviteTitle"} + } + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":[ + "message", + "quotaCode", + "resourceId", + "resourceType", + "serviceCode" + ], + "members":{ + "message":{"shape":"String"}, + "quotaCode":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"}, + "serviceCode":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "SpaceData":{ + "type":"structure", + "required":[ + "arn", + "configurationStatus", + "createDateTime", + "name", + "randomDomain", + "spaceId", + "status", + "storageLimit", + "tier", + "vanityDomain", + "vanityDomainStatus" + ], + "members":{ + "arn":{"shape":"Arn"}, + "configurationStatus":{"shape":"ConfigurationStatus"}, + "contentSize":{"shape":"ContentSize"}, + "createDateTime":{"shape":"SyntheticTimestamp_date_time"}, + "deleteDateTime":{"shape":"SyntheticTimestamp_date_time"}, + "description":{"shape":"SpaceDescription"}, + "name":{"shape":"SpaceName"}, + "randomDomain":{"shape":"Url"}, + "spaceId":{"shape":"SpaceId"}, + "status":{"shape":"ProvisioningStatus"}, + "storageLimit":{"shape":"StorageLimit"}, + "tier":{"shape":"TierLevel"}, + "userCount":{"shape":"UserCount"}, + "userKMSKey":{"shape":"KMSKey"}, + "vanityDomain":{"shape":"Url"}, + "vanityDomainStatus":{"shape":"VanityDomainStatus"} + } + }, + "SpaceDescription":{ + "type":"string", + "max":255, + "min":1, + "sensitive":true + }, + "SpaceId":{"type":"string"}, + "SpaceName":{ + "type":"string", + "max":30, + "min":1, + "sensitive":true + }, + "SpaceSubdomain":{ + "type":"string", + "max":63, + "min":1 + }, + "SpacesList":{ + "type":"list", + "member":{"shape":"SpaceData"} + }, + "StorageLimit":{ + "type":"long", + "box":true + }, + "String":{"type":"string"}, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(?!aws:)[a-zA-Z+-=._:/]+$" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":50, + "min":1 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"Tags"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":1 + }, + "Tags":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "sensitive":true + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "quotaCode":{"shape":"String"}, + "retryAfterSeconds":{ + "shape":"Integer", + "location":"header", + "locationName":"Retry-After" + }, + "serviceCode":{"shape":"String"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "TierLevel":{ + "type":"string", + "enum":[ + "BASIC", + "STANDARD" + ] + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateSpaceInput":{ + "type":"structure", + "required":["spaceId"], + "members":{ + "description":{"shape":"SpaceDescription"}, + "roleArn":{"shape":"Arn"}, + "spaceId":{ + "shape":"SpaceId", + "location":"uri", + "locationName":"spaceId" + }, + "tier":{"shape":"TierLevel"} + } + }, + "Url":{"type":"string"}, + "UserAdmins":{ + "type":"list", + "member":{"shape":"AdminId"} + }, + "UserCount":{ + "type":"integer", + "box":true + }, + "ValidationException":{ + "type":"structure", + "required":[ + "message", + "reason" + ], + "members":{ + "fieldList":{"shape":"ValidationExceptionFieldList"}, + "message":{"shape":"String"}, + "reason":{"shape":"ValidationExceptionReason"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "message", + "name" + ], + "members":{ + "message":{"shape":"String"}, + "name":{"shape":"String"} + } + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "unknownOperation", + "cannotParse", + "fieldValidationFailed", + "other" + ] + }, + "VanityDomainStatus":{ + "type":"string", + "enum":[ + "PENDING", + "APPROVED", + "UNAPPROVED" + ] + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,413 @@ +{ + "version": "2.0", + "service": "

AWS re:Post Private is a private version of AWS re:Post for enterprises with Enterprise Support or Enterprise On-Ramp Support plans. It provides access to knowledge and experts to accelerate cloud adoption and increase developer productivity. With your organization-specific private re:Post, you can build an organization-specific developer community that drives efficiencies at scale and provides access to valuable knowledge resources. Additionally, re:Post Private centralizes trusted AWS technical content and offers private discussion forums to improve how your teams collaborate internally and with AWS to remove technical obstacles, accelerate innovation, and scale more efficiently in the cloud.

", + "operations": { + "CreateSpace": "

Creates an AWS re:Post Private private re:Post.

", + "DeleteSpace": "

Deletes an AWS re:Post Private private re:Post.

", + "DeregisterAdmin": "

Removes the user or group from the list of administrators of the private re:Post.

", + "GetSpace": "

Displays information about the AWS re:Post Private private re:Post.

", + "ListSpaces": "

Returns a list of AWS re:Post Private private re:Posts in the account with some information about each private re:Post.

", + "ListTagsForResource": "

Returns the tags that are associated with the AWS re:Post Private resource specified by the resourceArn. The only resource that can be tagged is a private re:Post.

", + "RegisterAdmin": "

Adds a user or group to the list of administrators of the private re:Post.

", + "SendInvites": "

Sends an invitation email to selected users and groups.

", + "TagResource": "

Associates tags with an AWS re:Post Private resource. Currently, the only resource that can be tagged is the private re:Post. If you specify a new tag key for the resource, the tag is appended to the list of tags that are associated with the resource. If you specify a tag key that’s already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

", + "UntagResource": "

Removes the association of the tag with the AWS re:Post Private resource.

", + "UpdateSpace": "

Modifies an existing AWS re:Post Private private re:Post.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

User does not have sufficient access to perform this action.

", + "refs": { + } + }, + "AccessorId": { + "base": null, + "refs": { + "AccessorIdList$member": null + } + }, + "AccessorIdList": { + "base": null, + "refs": { + "SendInvitesInput$accessorIds": "

The array of identifiers for the users and groups.

" + } + }, + "AdminId": { + "base": null, + "refs": { + "DeregisterAdminInput$adminId": "

The ID of the admin to remove.

", + "GroupAdmins$member": null, + "RegisterAdminInput$adminId": "

The ID of the administrator.

", + "UserAdmins$member": null + } + }, + "Arn": { + "base": null, + "refs": { + "CreateSpaceInput$roleArn": "

The IAM role that grants permissions to the private re:Post to convert unanswered questions into AWS support tickets.

", + "GetSpaceOutput$arn": "

The ARN of the private re:Post.

", + "GetSpaceOutput$customerRoleArn": "

The IAM role that grants permissions to the private re:Post to convert unanswered questions into AWS support tickets.

", + "ListTagsForResourceRequest$resourceArn": "

The ARN of the resource that the tags are associated with.

", + "SpaceData$arn": "

The ARN of the private re:Post.

", + "TagResourceRequest$resourceArn": "

The ARN of the resource that the tag is associated with.

", + "UntagResourceRequest$resourceArn": "

The ARN of the resource.

", + "UpdateSpaceInput$roleArn": "

The IAM role that grants permissions to the private re:Post to convert unanswered questions into AWS support tickets.

" + } + }, + "ClientId": { + "base": null, + "refs": { + "GetSpaceOutput$clientId": "

The Identity Center identifier for the Application Instance.

" + } + }, + "ConfigurationStatus": { + "base": null, + "refs": { + "GetSpaceOutput$configurationStatus": "

The configuration status of the private re:Post.

", + "SpaceData$configurationStatus": "

The configuration status of the private re:Post.

" + } + }, + "ConflictException": { + "base": "

Updating or deleting a resource can cause an inconsistent state.

", + "refs": { + } + }, + "ContentSize": { + "base": null, + "refs": { + "GetSpaceOutput$contentSize": "

The content size of the private re:Post.

", + "SpaceData$contentSize": "

The content size of the private re:Post.

" + } + }, + "CreateSpaceInput": { + "base": null, + "refs": { + } + }, + "CreateSpaceOutput": { + "base": null, + "refs": { + } + }, + "DeleteSpaceInput": { + "base": null, + "refs": { + } + }, + "DeregisterAdminInput": { + "base": null, + "refs": { + } + }, + "GetSpaceInput": { + "base": null, + "refs": { + } + }, + "GetSpaceOutput": { + "base": null, + "refs": { + } + }, + "GroupAdmins": { + "base": null, + "refs": { + "GetSpaceOutput$groupAdmins": "

The list of groups that are administrators of the private re:Post.

" + } + }, + "Integer": { + "base": null, + "refs": { + "InternalServerException$retryAfterSeconds": "

Advice to clients on when the call can be safely retried.

", + "ThrottlingException$retryAfterSeconds": "

Advice to clients on when the call can be safely retried.

" + } + }, + "InternalServerException": { + "base": "

Unexpected error during processing of request.

", + "refs": { + } + }, + "InviteBody": { + "base": null, + "refs": { + "SendInvitesInput$body": "

The body of the invite.

" + } + }, + "InviteTitle": { + "base": null, + "refs": { + "SendInvitesInput$title": "

The title of the invite.

" + } + }, + "KMSKey": { + "base": null, + "refs": { + "CreateSpaceInput$userKMSKey": "

The AWS KMS key ARN that’s used for the AWS KMS encryption. If you don't provide a key, your data is encrypted by default with a key that AWS owns and manages for you.

", + "GetSpaceOutput$userKMSKey": "

The custom AWS KMS key ARN that’s used for the AWS KMS encryption.

", + "SpaceData$userKMSKey": "

The custom AWS KMS key ARN that’s used for the AWS KMS encryption.

" + } + }, + "ListSpacesInput": { + "base": null, + "refs": { + } + }, + "ListSpacesLimit": { + "base": null, + "refs": { + "ListSpacesInput$maxResults": "

The maximum number of private re:Posts to include in the results.

" + } + }, + "ListSpacesOutput": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ProvisioningStatus": { + "base": null, + "refs": { + "GetSpaceOutput$status": "

The creation or deletion status of the private re:Post.

", + "SpaceData$status": "

The creation/deletion status of the private re:Post.

" + } + }, + "RegisterAdminInput": { + "base": null, + "refs": { + } + }, + "ResourceNotFoundException": { + "base": "

Request references a resource which does not exist.

", + "refs": { + } + }, + "SendInvitesInput": { + "base": null, + "refs": { + } + }, + "ServiceQuotaExceededException": { + "base": "

Request would cause a service quota to be exceeded.

", + "refs": { + } + }, + "SpaceData": { + "base": "

A structure that contains some information about a private re:Post in the account.

", + "refs": { + "SpacesList$member": null + } + }, + "SpaceDescription": { + "base": null, + "refs": { + "CreateSpaceInput$description": "

A description for the private re:Post. This is used only to help you identify this private re:Post.

", + "GetSpaceOutput$description": "

The description of the private re:Post.

", + "SpaceData$description": "

The description for the private re:Post. This is used only to help you identify this private re:Post.

", + "UpdateSpaceInput$description": "

A description for the private re:Post. This is used only to help you identify this private re:Post.

" + } + }, + "SpaceId": { + "base": null, + "refs": { + "CreateSpaceOutput$spaceId": "

The unique ID of the private re:Post.

", + "DeleteSpaceInput$spaceId": "

The unique ID of the private re:Post.

", + "DeregisterAdminInput$spaceId": "

The ID of the private re:Post to remove the admin from.

", + "GetSpaceInput$spaceId": "

The ID of the private re:Post.

", + "GetSpaceOutput$spaceId": "

The unique ID of the private re:Post.

", + "RegisterAdminInput$spaceId": "

The ID of the private re:Post.

", + "SendInvitesInput$spaceId": "

The ID of the private re:Post.

", + "SpaceData$spaceId": "

The unique ID of the private re:Post.

", + "UpdateSpaceInput$spaceId": "

The unique ID of this private re:Post.

" + } + }, + "SpaceName": { + "base": null, + "refs": { + "CreateSpaceInput$name": "

The name for the private re:Post. This must be unique in your account.

", + "GetSpaceOutput$name": "

The name of the private re:Post.

", + "SpaceData$name": "

The name for the private re:Post.

" + } + }, + "SpaceSubdomain": { + "base": null, + "refs": { + "CreateSpaceInput$subdomain": "

The subdomain that you use to access your AWS re:Post Private private re:Post. All custom subdomains must be approved by AWS before use. In addition to your custom subdomain, all private re:Posts are issued an AWS generated subdomain for immediate use.

" + } + }, + "SpacesList": { + "base": null, + "refs": { + "ListSpacesOutput$spaces": "

An array of structures that contain some information about the private re:Posts in the account.

" + } + }, + "StorageLimit": { + "base": null, + "refs": { + "GetSpaceOutput$storageLimit": "

The storage limit of the private re:Post.

", + "SpaceData$storageLimit": "

The storage limit of the private re:Post.

" + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "ConflictException$resourceId": "

The ID of the resource.

", + "ConflictException$resourceType": "

The type of the resource.

", + "InternalServerException$message": null, + "ListSpacesInput$nextToken": "

The token for the next set of private re:Posts to return. You receive this token from a previous ListSpaces operation.

", + "ListSpacesOutput$nextToken": "

The token that you use when you request the next set of private re:Posts.

", + "ResourceNotFoundException$message": null, + "ResourceNotFoundException$resourceId": "

The ID of the resource.

", + "ResourceNotFoundException$resourceType": "

The type of the resource.

", + "ServiceQuotaExceededException$message": null, + "ServiceQuotaExceededException$quotaCode": "

The code to identify the quota.

", + "ServiceQuotaExceededException$resourceId": "

The id of the resource.

", + "ServiceQuotaExceededException$resourceType": "

The type of the resource.

", + "ServiceQuotaExceededException$serviceCode": "

The code to identify the service.

", + "ThrottlingException$message": null, + "ThrottlingException$quotaCode": "

The code to identify the quota.

", + "ThrottlingException$serviceCode": "

The code to identify the service.

", + "ValidationException$message": null, + "ValidationExceptionField$message": "

The name of the field.

", + "ValidationExceptionField$name": "

Message describing why the field failed validation.

" + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "GetSpaceOutput$createDateTime": "

The date when the private re:Post was created.

", + "GetSpaceOutput$deleteDateTime": "

The date when the private re:Post was deleted.

", + "SpaceData$createDateTime": "

The date when the private re:Post was created.

", + "SpaceData$deleteDateTime": "

The date when the private re:Post was deleted.

" + } + }, + "TagKey": { + "base": null, + "refs": { + "TagKeyList$member": null, + "Tags$key": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

The key values of the tag.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tags$value": null + } + }, + "Tags": { + "base": null, + "refs": { + "CreateSpaceInput$tags": "

The list of tags associated with the private re:Post.

", + "ListTagsForResourceResponse$tags": "

The list of tags that are associated with the resource.

", + "TagResourceRequest$tags": "

The list of tag keys and values that must be associated with the resource. You can associate tag keys only, tags (key and values) only, or a combination of tag keys and tags.

" + } + }, + "ThrottlingException": { + "base": "

Request was denied due to request throttling.

", + "refs": { + } + }, + "TierLevel": { + "base": null, + "refs": { + "CreateSpaceInput$tier": "

The pricing tier for the private re:Post.

", + "GetSpaceOutput$tier": "

The pricing tier of the private re:Post.

", + "SpaceData$tier": "

The pricing tier of the private re:Post.

", + "UpdateSpaceInput$tier": "

The pricing tier of this private re:Post.

" + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateSpaceInput": { + "base": null, + "refs": { + } + }, + "Url": { + "base": null, + "refs": { + "GetSpaceOutput$randomDomain": "

The AWS generated subdomain of the private re:Post

", + "GetSpaceOutput$vanityDomain": "

The custom subdomain that you use to access your private re:Post. All custom subdomains must be approved by AWS before use.

", + "SpaceData$randomDomain": "

The AWS generated subdomain of the private re:Post.

", + "SpaceData$vanityDomain": "

This custom subdomain that you use to access your private re:Post. All custom subdomains must be approved by AWS before use.

" + } + }, + "UserAdmins": { + "base": null, + "refs": { + "GetSpaceOutput$userAdmins": "

The list of users that are administrators of the private re:Post.

" + } + }, + "UserCount": { + "base": null, + "refs": { + "GetSpaceOutput$userCount": "

The number of users that have onboarded to the private re:Post.

", + "SpaceData$userCount": "

The number of onboarded users to the private re:Post.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

Stores information about a field that’s passed inside a request that resulted in an exception.

", + "refs": { + "ValidationExceptionFieldList$member": null + } + }, + "ValidationExceptionFieldList": { + "base": null, + "refs": { + "ValidationException$fieldList": "

The field that caused the error, if applicable.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason why the request failed validation.

" + } + }, + "VanityDomainStatus": { + "base": null, + "refs": { + "GetSpaceOutput$vanityDomainStatus": "

The approval status of the custom subdomain.

", + "SpaceData$vanityDomainStatus": "

This approval status of the custom subdomain.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://repostspace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://repostspace-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://repostspace.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://repostspace.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://repostspace.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://repostspace.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://repostspace.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://repostspace.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/repostspace/2022-05-13/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/repostspace/2022-05-13/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,10 @@ +{ + "pagination": { + "ListSpaces": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "spaces" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resiliencehub/2020-04-30/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resiliencehub/2020-04-30/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resiliencehub/2020-04-30/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resiliencehub/2020-04-30/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1030,6 +1030,7 @@ "name":{"shape":"String500"}, "prerequisite":{"shape":"String500"}, "recommendationId":{"shape":"Uuid"}, + "recommendationStatus":{"shape":"RecommendationStatus"}, "referenceId":{"shape":"SpecReferenceId"}, "type":{"shape":"AlarmType"} } @@ -1076,6 +1077,8 @@ "permissionModel":{"shape":"PermissionModel"}, "policyArn":{"shape":"Arn"}, "resiliencyScore":{"shape":"Double"}, + "rpoInSecs":{"shape":"IntegerOptional"}, + "rtoInSecs":{"shape":"IntegerOptional"}, "status":{"shape":"AppStatusType"}, "tags":{"shape":"TagMap"} } @@ -1228,8 +1231,11 @@ "creationTime":{"shape":"TimeStamp"}, "description":{"shape":"EntityDescription"}, "driftStatus":{"shape":"AppDriftStatusType"}, + "lastAppComplianceEvaluationTime":{"shape":"TimeStamp"}, "name":{"shape":"EntityName"}, "resiliencyScore":{"shape":"Double"}, + "rpoInSecs":{"shape":"IntegerOptional"}, + "rtoInSecs":{"shape":"IntegerOptional"}, "status":{"shape":"AppStatusType"} } }, @@ -2218,6 +2224,10 @@ } }, "Integer":{"type":"integer"}, + "IntegerOptional":{ + "type":"integer", + "box":true + }, "InternalServerException":{ "type":"structure", "members":{ @@ -2469,6 +2479,11 @@ "location":"querystring", "locationName":"appArn" }, + "fromLastAssessmentTime":{ + "shape":"TimeStamp", + "location":"querystring", + "locationName":"fromLastAssessmentTime" + }, "maxResults":{ "shape":"MaxResults", "location":"querystring", @@ -2483,6 +2498,16 @@ "shape":"NextToken", "location":"querystring", "locationName":"nextToken" + }, + "reverseOrder":{ + "shape":"BooleanOptional", + "location":"querystring", + "locationName":"reverseOrder" + }, + "toLastAssessmentTime":{ + "shape":"TimeStamp", + "location":"querystring", + "locationName":"toLastAssessmentTime" } } }, @@ -2681,6 +2706,7 @@ "terraformSourceName":{"shape":"String255"} } }, + "Long":{"type":"long"}, "LongOptional":{ "type":"long", "box":true @@ -2835,6 +2861,15 @@ "type":"list", "member":{"shape":"RecommendationItem"} }, + "RecommendationStatus":{ + "type":"string", + "enum":[ + "Implemented", + "Inactive", + "NotImplemented", + "Excluded" + ] + }, "RecommendationTemplate":{ "type":"structure", "required":[ @@ -2951,10 +2986,20 @@ "score" ], "members":{ + "componentScore":{"shape":"ScoringComponentResiliencyScores"}, "disruptionScore":{"shape":"DisruptionResiliencyScore"}, "score":{"shape":"Double"} } }, + "ResiliencyScoreType":{ + "type":"string", + "enum":[ + "Compliance", + "Test", + "Alarm", + "Sop" + ] + }, "ResolveAppVersionResourcesRequest":{ "type":"structure", "required":[ @@ -3102,6 +3147,20 @@ "min":0, "pattern":"^((https://([^/]+)\\.s3((-|\\.)[^/]+)?\\.amazonaws\\.com(.cn)?)|(s3://([^/]+)))/\\S{1,2000}$" }, + "ScoringComponentResiliencyScore":{ + "type":"structure", + "members":{ + "excludedCount":{"shape":"Long"}, + "outstandingCount":{"shape":"Long"}, + "possibleScore":{"shape":"Double"}, + "score":{"shape":"Double"} + } + }, + "ScoringComponentResiliencyScores":{ + "type":"map", + "key":{"shape":"ResiliencyScoreType"}, + "value":{"shape":"ScoringComponentResiliencyScore"} + }, "Seconds":{ "type":"integer", "min":0 @@ -3131,6 +3190,7 @@ "name":{"shape":"DocumentName"}, "prerequisite":{"shape":"String500"}, "recommendationId":{"shape":"Uuid"}, + "recommendationStatus":{"shape":"RecommendationStatus"}, "referenceId":{"shape":"SpecReferenceId"}, "serviceType":{"shape":"SopServiceType"} } @@ -3282,6 +3342,7 @@ "name":{"shape":"DocumentName"}, "prerequisite":{"shape":"String500"}, "recommendationId":{"shape":"Uuid"}, + "recommendationStatus":{"shape":"RecommendationStatus"}, "referenceId":{"shape":"SpecReferenceId"}, "risk":{"shape":"TestRisk"}, "type":{"shape":"TestType"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resiliencehub/2020-04-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resiliencehub/2020-04-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resiliencehub/2020-04-30/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resiliencehub/2020-04-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,13 +2,13 @@ "version": "2.0", "service": "

Resilience Hub helps you proactively prepare and protect your Amazon Web Services applications from disruptions. It offers continual resiliency assessment and validation that integrates into your software development lifecycle. This enables you to uncover resiliency weaknesses, ensure recovery time objective (RTO) and recovery point objective (RPO) targets for your applications are met, and resolve issues before they are released into production.

", "operations": { - "AddDraftAppVersionResourceMappings": "

Adds the resource mapping for the draft application version. You can also update an existing resource mapping to a new physical resource.

", + "AddDraftAppVersionResourceMappings": "

Adds the source of resource-maps to the draft version of an application. During assessment, Resilience Hub will use these resource-maps to resolve the latest physical ID for each resource in the application template. For more information about different types of resources suported by Resilience Hub and how to add them in your application, see Step 2: How is your application managed? in the Resilience Hub User Guide.

", "BatchUpdateRecommendationStatus": "

Enables you to include or exclude one or more operational recommendations.

", "CreateApp": "

Creates an Resilience Hub application. An Resilience Hub application is a collection of Amazon Web Services resources structured to prevent and recover Amazon Web Services application disruptions. To describe a Resilience Hub application, you provide an application name, resources from one or more CloudFormation stacks, Resource Groups, Terraform state files, AppRegistry applications, and an appropriate resiliency policy. In addition, you can also add resources that are located on Amazon Elastic Kubernetes Service (Amazon EKS) clusters as optional resources. For more information about the number of resources supported per application, see Service quotas.

After you create an Resilience Hub application, you publish it so that you can run a resiliency assessment on it. You can then use recommendations from the assessment to improve resiliency by running another assessment, comparing results, and then iterating the process until you achieve your goals for recovery time objective (RTO) and recovery point objective (RPO).

", "CreateAppVersionAppComponent": "

Creates a new Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

", "CreateAppVersionResource": "

Adds a resource to the Resilience Hub application and assigns it to the specified Application Components. If you specify a new Application Component, Resilience Hub will automatically create the Application Component.

  • This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • To update application version with new physicalResourceID, you must call ResolveAppVersionResources API.

", "CreateRecommendationTemplate": "

Creates a new recommendation template for the Resilience Hub application.

", - "CreateResiliencyPolicy": "

Creates a resiliency policy for an application.

", + "CreateResiliencyPolicy": "

Creates a resiliency policy for an application.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

", "DeleteApp": "

Deletes an Resilience Hub application. This is a destructive action that can't be undone.

", "DeleteAppAssessment": "

Deletes an Resilience Hub application assessment. This is a destructive action that can't be undone.

", "DeleteAppInputSource": "

Deletes the input source and all of its imported resources from the Resilience Hub application.

", @@ -55,7 +55,7 @@ "UpdateAppVersion": "

Updates the Resilience Hub application version.

This API updates the Resilience Hub application draft version. To use this information for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

", "UpdateAppVersionAppComponent": "

Updates an existing Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

", "UpdateAppVersionResource": "

Updates the resource details in the Resilience Hub application.

  • This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • To update application version with new physicalResourceID, you must call ResolveAppVersionResources API.

", - "UpdateResiliencyPolicy": "

Updates a resiliency policy.

" + "UpdateResiliencyPolicy": "

Updates a resiliency policy.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

" }, "shapes": { "AccessDeniedException": { @@ -252,102 +252,102 @@ "Arn": { "base": null, "refs": { - "AddDraftAppVersionResourceMappingsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AddDraftAppVersionResourceMappingsResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "App$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "App$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AppAssessment$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AppAssessment$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AppAssessmentSummary$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AppAssessmentSummary$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AppInputSource$sourceArn": "

The Amazon Resource Name (ARN) of the input source. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "AppSummary$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", + "AddDraftAppVersionResourceMappingsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AddDraftAppVersionResourceMappingsResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "App$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "App$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AppAssessment$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AppAssessment$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AppAssessmentSummary$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AppAssessmentSummary$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AppInputSource$sourceArn": "

The Amazon Resource Name (ARN) of the input source. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "AppSummary$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", "ArnList$member": null, - "BatchUpdateRecommendationStatusRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "BatchUpdateRecommendationStatusResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "CreateAppRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "CreateAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "CreateAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "CreateAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "CreateAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "CreateRecommendationTemplateRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppAssessmentRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppAssessmentResponse$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppInputSourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppInputSourceRequest$sourceArn": "

The Amazon Resource Name (ARN) of the imported resource you want to remove from the Resilience Hub application. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppInputSourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", + "BatchUpdateRecommendationStatusRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "BatchUpdateRecommendationStatusResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "CreateAppRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "CreateAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "CreateAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "CreateAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "CreateAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "CreateRecommendationTemplateRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppAssessmentRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppAssessmentResponse$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppInputSourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppInputSourceRequest$sourceArn": "

The Amazon Resource Name (ARN) of the imported resource you want to remove from the Resilience Hub application. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppInputSourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", "DeleteRecommendationTemplateRequest$recommendationTemplateArn": "

The Amazon Resource Name (ARN) for a recommendation template.

", "DeleteRecommendationTemplateResponse$recommendationTemplateArn": "

The Amazon Resource Name (ARN) for a recommendation template.

", - "DeleteResiliencyPolicyRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DeleteResiliencyPolicyResponse$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppAssessmentRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionResourcesResolutionStatusRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionResourcesResolutionStatusResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionTemplateRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeAppVersionTemplateResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeDraftAppVersionResourcesImportStatusRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeDraftAppVersionResourcesImportStatusResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "DescribeResiliencyPolicyRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "EksSource$eksClusterArn": "

Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "EksSourceClusterNamespace$eksClusterArn": "

Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "EventSubscription$snsTopicArn": "

Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ImportResourcesToDraftAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ImportResourcesToDraftAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAlarmRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppAssessmentComplianceDriftsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppAssessmentsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppComponentCompliancesRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppComponentRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppInputSourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppVersionAppComponentsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppVersionAppComponentsResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppVersionResourceMappingsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppVersionResourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppVersionsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListAppsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListRecommendationTemplatesRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", + "DeleteResiliencyPolicyRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DeleteResiliencyPolicyResponse$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppAssessmentRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionResourcesResolutionStatusRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionResourcesResolutionStatusResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionTemplateRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeAppVersionTemplateResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeDraftAppVersionResourcesImportStatusRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeDraftAppVersionResourcesImportStatusResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "DescribeResiliencyPolicyRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "EksSource$eksClusterArn": "

Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "EksSourceClusterNamespace$eksClusterArn": "

Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "EventSubscription$snsTopicArn": "

Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:sns:region:account:topic-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ImportResourcesToDraftAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ImportResourcesToDraftAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAlarmRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppAssessmentComplianceDriftsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppAssessmentsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppComponentCompliancesRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppComponentRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppInputSourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppVersionAppComponentsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppVersionAppComponentsResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppVersionResourceMappingsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppVersionResourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppVersionsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListAppsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListRecommendationTemplatesRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", "ListRecommendationTemplatesRequest$recommendationTemplateArn": "

The Amazon Resource Name (ARN) for a recommendation template.

", - "ListSopRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", + "ListSopRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) for a specific resource in your Resilience Hub application.

", - "ListTestRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ListUnsupportedAppVersionResourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "PublishAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "PublishAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "PutDraftAppVersionTemplateRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "PutDraftAppVersionTemplateResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "RecommendationTemplate$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "RecommendationTemplate$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", + "ListTestRecommendationsRequest$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ListUnsupportedAppVersionResourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "PublishAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "PublishAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "PutDraftAppVersionTemplateRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "PutDraftAppVersionTemplateResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "RecommendationTemplate$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "RecommendationTemplate$assessmentArn": "

Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", "RecommendationTemplate$recommendationTemplateArn": "

Amazon Resource Name (ARN) for the recommendation template.

", - "RemoveDraftAppVersionResourceMappingsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "RemoveDraftAppVersionResourceMappingsResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ResiliencyPolicy$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ResolveAppVersionResourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "ResolveAppVersionResourcesResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "StartAppAssessmentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", + "RemoveDraftAppVersionResourceMappingsRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "RemoveDraftAppVersionResourceMappingsResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ResiliencyPolicy$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ResolveAppVersionResourcesRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "ResolveAppVersionResourcesResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "StartAppAssessmentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", "TagResourceRequest$resourceArn": "

Amazon Resource Name (ARN) of the resource.

", "UntagResourceRequest$resourceArn": "

Amazon Resource Name (ARN) of the resource.

", - "UpdateAppRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

", - "UpdateResiliencyPolicyRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

" + "UpdateAppRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppVersionAppComponentRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppVersionAppComponentResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppVersionRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppVersionResourceRequest$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppVersionResourceResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateAppVersionResponse$appArn": "

Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

", + "UpdateResiliencyPolicyRequest$policyArn": "

Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

" } }, "ArnList": { @@ -442,6 +442,7 @@ "BatchUpdateRecommendationStatusSuccessfulEntry$excluded": "

Indicates if the operational recommendation was successfully excluded.

", "DeleteAppRequest$forceDelete": "

A boolean option to force the deletion of an Resilience Hub application.

", "ListAppAssessmentsRequest$reverseOrder": "

The default is to sort by ascending startTime. To sort by descending startTime, set reverseOrder to true.

", + "ListAppsRequest$reverseOrder": "

The application list is sorted based on the values of lastAppComplianceEvaluationTime field. By default, application list is sorted in ascending order. To sort the appliation list in descending order, set this field to True.

", "ListRecommendationTemplatesRequest$reverseOrder": "

The default is to sort by ascending startTime. To sort by descending startTime, set reverseOrder to true.

", "PhysicalResource$excluded": "

Indicates if a resource is included or excluded from the assessment.

", "RecommendationItem$alreadyImplemented": "

Specifies if the recommendation has already been implemented.

", @@ -836,7 +837,9 @@ "AppSummary$resiliencyScore": "

The current resiliency score for the application.

", "Cost$amount": "

The cost amount.

", "DisruptionResiliencyScore$value": null, - "ResiliencyScore$score": "

The outage score for a valid key.

" + "ResiliencyScore$score": "

The outage score for a valid key.

", + "ScoringComponentResiliencyScore$possibleScore": "

Maximum possible score that can be obtained for the scoring component. If the Possible score is 20 points, it indicates the maximum possible score you can achieve for your application when you run a new assessment after implementing all the Resilience Hub recommendations.

", + "ScoringComponentResiliencyScore$score": "

Resiliency score of your application.

" } }, "DriftStatus": { @@ -1066,7 +1069,7 @@ "IamRoleName": { "base": null, "refs": { - "PermissionModel$invokerRoleName": "

Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

You must have iam:passRole permission for this role while creating or updating the application.

" + "PermissionModel$invokerRoleName": "

Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

  • You must have iam:passRole permission for this role while creating or updating the application.

  • Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters.

" } }, "ImportResourcesToDraftAppVersionRequest": { @@ -1085,6 +1088,15 @@ "AppInputSource$resourceCount": "

The number of resources.

" } }, + "IntegerOptional": { + "base": null, + "refs": { + "App$rpoInSecs": "

Recovery Point Objective (RPO) in seconds.

", + "App$rtoInSecs": "

Recovery Time Objective (RTO) in seconds.

", + "AppSummary$rpoInSecs": "

Recovery Point Objective (RPO) in seconds.

", + "AppSummary$rtoInSecs": "

Recovery Time Objective (RTO) in seconds.

" + } + }, "InternalServerException": { "base": "

This exception occurs when there is an internal failure in the Resilience Hub service.

", "refs": { @@ -1281,6 +1293,13 @@ "UpdateAppVersionResourceRequest$logicalResourceId": "

Logical identifier of the resource.

" } }, + "Long": { + "base": null, + "refs": { + "ScoringComponentResiliencyScore$excludedCount": "

Number of recommendations that were excluded from the assessment.

For example, if the Excluded count for Resilience Hub recommended Amazon CloudWatch alarms is 7, it indicates that 7 Amazon CloudWatch alarms are excluded from the assessment.

", + "ScoringComponentResiliencyScore$outstandingCount": "

Number of issues that must be resolved to obtain the maximum possible score for the scoring component. For SOPs, alarms, and FIS experiments, these are the number of recommendations that must be implemented. For compliance, it is the number of Application Components that has breached the resiliency policy.

For example, if the Outstanding count for Resilience Hub recommended Amazon CloudWatch alarms is 5, it indicates that 5 Amazon CloudWatch alarms must be fixed to achieve the maximum possible score.

" + } + }, "LongOptional": { "base": null, "refs": { @@ -1452,6 +1471,14 @@ "TestRecommendation$items": "

The test recommendation items.

" } }, + "RecommendationStatus": { + "base": null, + "refs": { + "AlarmRecommendation$recommendationStatus": "

Status of the recommended Amazon CloudWatch alarm.

", + "SopRecommendation$recommendationStatus": "

Status of the recommended standard operating procedure.

", + "TestRecommendation$recommendationStatus": "

Status of the recommended test.

" + } + }, "RecommendationTemplate": { "base": "

Defines a recommendation template created with the CreateRecommendationTemplate action.

", "refs": { @@ -1510,7 +1537,7 @@ } }, "ResiliencyPolicy": { - "base": "

Defines a resiliency policy.

", + "base": "

Defines a resiliency policy.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

", "refs": { "AppAssessment$policy": "

Resiliency policy of an application.

", "CreateResiliencyPolicyResponse$policy": "

The type of resiliency policy that was created, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

", @@ -1534,6 +1561,12 @@ "AppComponentCompliance$resiliencyScore": "

The current resiliency score for the application.

" } }, + "ResiliencyScoreType": { + "base": null, + "refs": { + "ScoringComponentResiliencyScores$key": null + } + }, "ResolveAppVersionResourcesRequest": { "base": null, "refs": { @@ -1646,6 +1679,18 @@ "TerraformSource$s3StateFileUrl": "

The URL of the Terraform s3 state file you need to import.

" } }, + "ScoringComponentResiliencyScore": { + "base": "

Resiliency score of each scoring component. For more information about scoring component, see Calculating resiliency score.

", + "refs": { + "ScoringComponentResiliencyScores$value": null + } + }, + "ScoringComponentResiliencyScores": { + "base": null, + "refs": { + "ResiliencyScore$componentScore": "

The score generated by Resilience Hub for the scoring component after running an assessment.

For example, if the score is 25 points, it indicates the overall score of your application generated by Resilience Hub after running an assessment.

" + } + }, "Seconds": { "base": null, "refs": { @@ -1653,8 +1698,8 @@ "DisruptionCompliance$achievableRtoInSecs": "

The Recovery Time Objective (RTO) that is achievable, in seconds

", "DisruptionCompliance$currentRpoInSecs": "

The current RPO, in seconds.

", "DisruptionCompliance$currentRtoInSecs": "

The current RTO, in seconds.

", - "FailurePolicy$rpoInSecs": "

The Recovery Point Objective (RPO), in seconds.

", - "FailurePolicy$rtoInSecs": "

The Recovery Time Objective (RTO), in seconds.

", + "FailurePolicy$rpoInSecs": "

Recovery Point Objective (RPO) in seconds.

", + "FailurePolicy$rtoInSecs": "

Recovery Time Objective (RTO) in seconds.

", "RecommendationDisruptionCompliance$expectedRpoInSecs": "

The expected RPO after applying the recommended configuration change.

", "RecommendationDisruptionCompliance$expectedRtoInSecs": "

The expected RTO after applying the recommended configuration change.

" } @@ -1923,22 +1968,25 @@ "TimeStamp": { "base": null, "refs": { - "App$creationTime": "

Timestamp for when the app was created.

", - "App$lastAppComplianceEvaluationTime": "

Timestamp for the most recent compliance evaluation.

", + "App$creationTime": "

Date and time when the app was created.

", + "App$lastAppComplianceEvaluationTime": "

Date and time the most recent compliance evaluation.

", "App$lastDriftEvaluationTime": "

Indicates the last time that a drift was evaluated.

", - "App$lastResiliencyScoreEvaluationTime": "

Timestamp for the most recent resiliency score evaluation.

", + "App$lastResiliencyScoreEvaluationTime": "

Date and time the most recent resiliency score evaluation.

", "AppAssessment$endTime": "

End time for the action.

", "AppAssessment$startTime": "

Starting time for the action.

", "AppAssessmentSummary$endTime": "

End time for the action.

", "AppAssessmentSummary$startTime": "

Starting time for the action.

", - "AppSummary$creationTime": "

The timestamp for when the app was created.

", + "AppSummary$creationTime": "

Date and time when the app was created.

", + "AppSummary$lastAppComplianceEvaluationTime": "

Date and time of the most recent compliance evaluation.

", "AppVersionSummary$creationTime": "

Creation time of the application version.

", - "DescribeDraftAppVersionResourcesImportStatusResponse$statusChangeTime": "

The timestamp for when the status last changed.

", + "DescribeDraftAppVersionResourcesImportStatusResponse$statusChangeTime": "

The time when the status last changed.

", "ListAppVersionsRequest$endTime": "

Upper limit of the time range to filter the application versions.

", "ListAppVersionsRequest$startTime": "

Lower limit of the time range to filter the application versions.

", + "ListAppsRequest$fromLastAssessmentTime": "

Indicates the lower limit of the range that is used to filter applications based on their last assessment times.

", + "ListAppsRequest$toLastAssessmentTime": "

Indicates the upper limit of the range that is used to filter the applications based on their last assessment times.

", "RecommendationTemplate$endTime": "

The end time for the action.

", "RecommendationTemplate$startTime": "

The start time for the action.

", - "ResiliencyPolicy$creationTime": "

The timestamp for when the resiliency policy was created.

" + "ResiliencyPolicy$creationTime": "

Date and time when the resiliency policy was created.

" } }, "UnsupportedResource": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resiliencehub/2020-04-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resiliencehub/2020-04-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resiliencehub/2020-04-30/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resiliencehub/2020-04-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://resiliencehub-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://resiliencehub-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://resiliencehub-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://resiliencehub-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://resiliencehub.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://resiliencehub.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://resiliencehub.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://resiliencehub.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -213,6 +213,9 @@ "DisassociateDefaultView": { "errors": [ { + "shape": "ResourceNotFoundException" + }, + { "shape": "InternalServerException" }, { @@ -233,6 +236,31 @@ "idempotent": true, "name": "DisassociateDefaultView" }, + "GetAccountLevelServiceConfiguration": { + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/GetAccountLevelServiceConfiguration", + "responseCode": 200 + }, + "name": "GetAccountLevelServiceConfiguration", + "output": { + "shape": "GetAccountLevelServiceConfigurationOutput" + } + }, "GetDefaultView": { "errors": [ { @@ -351,6 +379,34 @@ "shape": "ListIndexesOutput" } }, + "ListIndexesForMembers": { + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + } + ], + "http": { + "method": "POST", + "requestUri": "/ListIndexesForMembers", + "responseCode": 200 + }, + "input": { + "shape": "ListIndexesForMembersInput" + }, + "name": "ListIndexesForMembers", + "output": { + "shape": "ListIndexesForMembersOutput" + } + }, "ListSupportedResourceTypes": { "errors": [ { @@ -617,6 +673,13 @@ } }, "shapes": { + "AWSServiceAccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, "AccessDeniedException": { "error": { "httpStatusCode": 403, @@ -630,6 +693,11 @@ }, "type": "structure" }, + "AccountId": { + "max": 2048, + "min": 1, + "type": "string" + }, "AssociateDefaultViewInput": { "members": { "ViewArn": { @@ -760,6 +828,9 @@ "IncludedProperties": { "shape": "IncludedPropertyList" }, + "Scope": { + "shape": "CreateViewInputScopeString" + }, "Tags": { "shape": "TagMap" }, @@ -777,6 +848,11 @@ "min": 1, "type": "string" }, + "CreateViewInputScopeString": { + "max": 2048, + "min": 1, + "type": "string" + }, "CreateViewOutput": { "members": { "View": { @@ -834,6 +910,14 @@ }, "type": "structure" }, + "GetAccountLevelServiceConfigurationOutput": { + "members": { + "OrgConfiguration": { + "shape": "OrgConfiguration" + } + }, + "type": "structure" + }, "GetDefaultViewOutput": { "members": { "ViewArn": { @@ -970,6 +1054,53 @@ }, "type": "structure" }, + "ListIndexesForMembersInput": { + "members": { + "AccountIdList": { + "shape": "ListIndexesForMembersInputAccountIdListList" + }, + "MaxResults": { + "shape": "ListIndexesForMembersInputMaxResultsInteger" + }, + "NextToken": { + "shape": "ListIndexesForMembersInputNextTokenString" + } + }, + "required": [ + "AccountIdList" + ], + "type": "structure" + }, + "ListIndexesForMembersInputAccountIdListList": { + "max": 10, + "member": { + "shape": "AccountId" + }, + "min": 1, + "type": "list" + }, + "ListIndexesForMembersInputMaxResultsInteger": { + "box": true, + "max": 10, + "min": 1, + "type": "integer" + }, + "ListIndexesForMembersInputNextTokenString": { + "max": 2048, + "min": 1, + "type": "string" + }, + "ListIndexesForMembersOutput": { + "members": { + "Indexes": { + "shape": "MemberIndexList" + }, + "NextToken": { + "shape": "String" + } + }, + "type": "structure" + }, "ListIndexesInput": { "members": { "MaxResults": { @@ -1079,7 +1210,7 @@ }, "ListViewsInputMaxResultsInteger": { "box": true, - "max": 20, + "max": 50, "min": 1, "type": "integer" }, @@ -1098,6 +1229,43 @@ "box": true, "type": "long" }, + "MemberIndex": { + "members": { + "AccountId": { + "shape": "String" + }, + "Arn": { + "shape": "String" + }, + "Region": { + "shape": "String" + }, + "Type": { + "shape": "IndexType" + } + }, + "type": "structure" + }, + "MemberIndexList": { + "member": { + "shape": "MemberIndex" + }, + "type": "list" + }, + "OrgConfiguration": { + "members": { + "AWSServiceAccessStatus": { + "shape": "AWSServiceAccessStatus" + }, + "ServiceLinkedRole": { + "shape": "String" + } + }, + "required": [ + "AWSServiceAccessStatus" + ], + "type": "structure" + }, "QueryString": { "max": 1011, "min": 0, @@ -1300,6 +1468,7 @@ "member": { "shape": "String" }, + "sensitive": true, "type": "list" }, "SupportedResourceType": { @@ -1321,6 +1490,7 @@ "key": { "shape": "String" }, + "sensitive": true, "type": "map", "value": { "shape": "String" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,10 +9,12 @@ "DeleteIndex": "

Deletes the specified index and turns off Amazon Web Services Resource Explorer in the specified Amazon Web Services Region. When you delete an index, Resource Explorer stops discovering and indexing resources in that Region. Resource Explorer also deletes all views in that Region. These actions occur as asynchronous background tasks. You can check to see when the actions are complete by using the GetIndex operation and checking the Status response value.

If the index you delete is the aggregator index for the Amazon Web Services account, you must wait 24 hours before you can promote another local index to be the aggregator index for the account. Users can't perform account-wide searches using Resource Explorer until another aggregator index is configured.

", "DeleteView": "

Deletes the specified view.

If the specified view is the default view for its Amazon Web Services Region, then all Search operations in that Region must explicitly specify the view to use until you configure a new default by calling the AssociateDefaultView operation.

", "DisassociateDefaultView": "

After you call this operation, the affected Amazon Web Services Region no longer has a default view. All Search operations in that Region must explicitly specify a view or the operation fails. You can configure a new default by calling the AssociateDefaultView operation.

If an Amazon Web Services Region doesn't have a default view configured, then users must explicitly specify a view with every Search operation performed in that Region.

", + "GetAccountLevelServiceConfiguration": "

Retrieves the status of your account's Amazon Web Services service access, and validates the service linked role required to access the multi-account search feature. Only the management account or a delegated administrator with service access enabled can invoke this API call.

", "GetDefaultView": "

Retrieves the Amazon Resource Name (ARN) of the view that is the default for the Amazon Web Services Region in which you call this operation. You can then call GetView to retrieve the details of that view.

", "GetIndex": "

Retrieves details about the Amazon Web Services Resource Explorer index in the Amazon Web Services Region in which you invoked the operation.

", "GetView": "

Retrieves details of the specified view.

", "ListIndexes": "

Retrieves a list of all of the indexes in Amazon Web Services Regions that are currently collecting resource information for Amazon Web Services Resource Explorer.

", + "ListIndexesForMembers": "

Retrieves a list of a member's indexes in all Amazon Web Services Regions that are currently collecting resource information for Amazon Web Services Resource Explorer. Only the management account or a delegated administrator with service access enabled can invoke this API call.

", "ListSupportedResourceTypes": "

Retrieves a list of all resource types currently supported by Amazon Web Services Resource Explorer.

", "ListTagsForResource": "

Lists the tags that are attached to the specified resource.

", "ListViews": "

Lists the Amazon resource names (ARNs) of the views available in the Amazon Web Services Region in which you call this operation.

Always check the NextToken response parameter for a null value when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more results available. The NextToken response parameter value is null only when there are no more results to display.

", @@ -23,11 +25,23 @@ "UpdateView": "

Modifies some of the details of a view. You can change the filter string and the list of included properties. You can't change the name of the view.

" }, "shapes": { + "AWSServiceAccessStatus": { + "base": null, + "refs": { + "OrgConfiguration$AWSServiceAccessStatus": "

This value displays whether your Amazon Web Services service access is ENABLED or DISABLED.

" + } + }, "AccessDeniedException": { "base": "

The credentials that you used to call this operation don't have the minimum required permissions.

", "refs": { } }, + "AccountId": { + "base": null, + "refs": { + "ListIndexesForMembersInputAccountIdListList$member": null + } + }, "AssociateDefaultViewInput": { "base": null, "refs": { @@ -79,7 +93,7 @@ } }, "ConflictException": { - "base": "

The request failed because either you specified parameters that didn’t match the original request, or you attempted to create a view with a name that already exists in this Amazon Web Services Region.

", + "base": "

If you attempted to create a view, then the request failed because either you specified parameters that didn’t match the original request, or you attempted to create a view with a name that already exists in this Amazon Web Services Region.

If you attempted to create an index, then the request failed because either you specified parameters that didn't match the original request, or an index already exists in the current Amazon Web Services Region.

If you attempted to update an index type to AGGREGATOR, then the request failed because you already have an AGGREGATOR index in a different Amazon Web Services Region.

", "refs": { } }, @@ -104,6 +118,12 @@ "CreateViewInput$ClientToken": "

This value helps ensure idempotency. Resource Explorer uses this value to prevent the accidental creation of duplicate versions. We recommend that you generate a UUID-type value to ensure the uniqueness of your views.

" } }, + "CreateViewInputScopeString": { + "base": null, + "refs": { + "CreateViewInput$Scope": "

The root ARN of the account, an organizational unit (OU), or an organization ARN. If left empty, the default is account.

" + } + }, "CreateViewOutput": { "base": null, "refs": { @@ -141,6 +161,11 @@ "ResourceProperty$Data": "

Details about this property. The content of this field is a JSON object that varies based on the resource type.

" } }, + "GetAccountLevelServiceConfigurationOutput": { + "base": null, + "refs": { + } + }, "GetDefaultViewOutput": { "base": null, "refs": { @@ -212,8 +237,9 @@ "base": null, "refs": { "GetIndexOutput$Type": "

The type of the index in this Region. For information about the aggregator index and how it differs from a local index, see Turning on cross-Region search by creating an aggregator index.

", - "Index$Type": "

The type of index. It can be one of the following values:

  • LOCAL – The index contains information about resources from only the same Amazon Web Services Region.

  • AGGREGATOR – Resource Explorer replicates copies of the indexed information about resources in all other Amazon Web Services Regions to the aggregator index. This lets search results in the Region with the aggregator index to include resources from all Regions in the account where Resource Explorer is turned on.

", + "Index$Type": "

The type of index. It can be one of the following values:

  • LOCAL – The index contains information about resources from only the same Amazon Web Services Region.

  • AGGREGATOR – Resource Explorer replicates copies of the indexed information about resources in all other Amazon Web Services Regions to the aggregator index. This lets search results in the Region with the aggregator index to include resources from all Regions in the account where Resource Explorer is turned on.

", "ListIndexesInput$Type": "

If specified, limits the output to only indexes of the specified Type, either LOCAL or AGGREGATOR.

Use this option to discover the aggregator index for your account.

", + "MemberIndex$Type": "

The type of index. It can be one of the following values:

  • LOCAL – The index contains information about resources from only the same Amazon Web Services Region.

  • AGGREGATOR – Resource Explorer replicates copies of the indexed information about resources in all other Amazon Web Services Regions to the aggregator index. This lets search results in the Region with the aggregator index to include resources from all Regions in the account where Resource Explorer is turned on.

", "UpdateIndexTypeInput$Type": "

The type of the index. To understand the difference between LOCAL and AGGREGATOR, see Turning on cross-Region search in the Amazon Web Services Resource Explorer User Guide.

", "UpdateIndexTypeOutput$Type": "

Specifies the type of the specified index after the operation completes.

" } @@ -223,6 +249,34 @@ "refs": { } }, + "ListIndexesForMembersInput": { + "base": null, + "refs": { + } + }, + "ListIndexesForMembersInputAccountIdListList": { + "base": null, + "refs": { + "ListIndexesForMembersInput$AccountIdList": "

The account IDs will limit the output to only indexes from these accounts.

" + } + }, + "ListIndexesForMembersInputMaxResultsInteger": { + "base": null, + "refs": { + "ListIndexesForMembersInput$MaxResults": "

The maximum number of results that you want included on each page of the response. If you do not include this parameter, it defaults to a value appropriate to the operation. If additional items exist beyond those included in the current response, the NextToken response element is present and has a value (is not null). Include that value as the NextToken request parameter in the next call to the operation to get the next part of the results.

An API operation can return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

" + } + }, + "ListIndexesForMembersInputNextTokenString": { + "base": null, + "refs": { + "ListIndexesForMembersInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from. The pagination tokens expire after 24 hours.

" + } + }, + "ListIndexesForMembersOutput": { + "base": null, + "refs": { + } + }, "ListIndexesInput": { "base": null, "refs": { @@ -237,7 +291,7 @@ "ListIndexesInputNextTokenString": { "base": null, "refs": { - "ListIndexesInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from.

" + "ListIndexesInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from. The pagination tokens expire after 24 hours.

" } }, "ListIndexesInputRegionsList": { @@ -299,6 +353,24 @@ "ResourceCount$TotalResources": "

The number of resources that match the search query. This value can't exceed 1,000. If there are more than 1,000 resources that match the query, then only 1,000 are counted and the Complete field is set to false. We recommend that you refine your query to return a smaller number of results.

" } }, + "MemberIndex": { + "base": "

An index is the data store used by Amazon Web Services Resource Explorer to hold information about your Amazon Web Services resources that the service discovers.

", + "refs": { + "MemberIndexList$member": null + } + }, + "MemberIndexList": { + "base": null, + "refs": { + "ListIndexesForMembersOutput$Indexes": "

A structure that contains the details and status of each index.

" + } + }, + "OrgConfiguration": { + "base": "

This is a structure that contains the status of Amazon Web Services service access, and whether you have a valid service-linked role to enable multi-account search for your organization.

", + "refs": { + "GetAccountLevelServiceConfigurationOutput$OrgConfiguration": "

Details about the organization, and whether configuration is ENABLED or DISABLED.

" + } + }, "QueryString": { "base": null, "refs": { @@ -381,7 +453,7 @@ "SearchInputNextTokenString": { "base": null, "refs": { - "SearchInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from.

" + "SearchInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from. The pagination tokens expire after 24 hours.

" } }, "SearchInputViewArnString": { @@ -398,7 +470,7 @@ "SearchOutputNextTokenString": { "base": null, "refs": { - "SearchOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

" + "SearchOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. The pagination tokens expire after 24 hours.

" } }, "SearchOutputViewArnString": { @@ -421,7 +493,7 @@ "BatchGetViewError$ViewArn": "

The Amazon resource name (ARN) of the view for which Resource Explorer failed to retrieve details.

", "BatchGetViewInputViewArnsList$member": null, "ConflictException$Message": null, - "CreateIndexInput$ClientToken": "

This value helps ensure idempotency. Resource Explorer uses this value to prevent the accidental creation of duplicate versions. We recommend that you generate a UUID-type value to ensure the uniqueness of your views.

", + "CreateIndexInput$ClientToken": "

This value helps ensure idempotency. Resource Explorer uses this value to prevent the accidental creation of duplicate versions. We recommend that you generate a UUID-type value to ensure the uniqueness of your index.

", "CreateIndexOutput$Arn": "

The ARN of the new local index for the Region. You can reference this ARN in IAM permission policies to authorize the following operations: DeleteIndex | GetIndex | UpdateIndexType | CreateView

", "DeleteIndexInput$Arn": "

The Amazon resource name (ARN) of the index that you want to delete.

", "DeleteIndexOutput$Arn": "

The Amazon resource name (ARN) of the index that you successfully started the deletion process.

This operation is asynchronous. To check its status, call the GetIndex operation.

", @@ -431,13 +503,18 @@ "Index$Arn": "

The Amazon resource name (ARN) of the index.

", "Index$Region": "

The Amazon Web Services Region in which the index exists.

", "InternalServerException$Message": null, + "ListIndexesForMembersOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. The pagination tokens expire after 24 hours.

", "ListIndexesInputRegionsList$member": null, - "ListIndexesOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

", - "ListSupportedResourceTypesInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from.

", - "ListSupportedResourceTypesOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

", + "ListIndexesOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. The pagination tokens expire after 24 hours.

", + "ListSupportedResourceTypesInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from. The pagination tokens expire after 24 hours.

", + "ListSupportedResourceTypesOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. The pagination tokens expire after 24 hours.

", "ListTagsForResourceInput$resourceArn": "

The Amazon resource name (ARN) of the view or index that you want to attach tags to.

", - "ListViewsInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from.

", - "ListViewsOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

", + "ListViewsInput$NextToken": "

The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from. The pagination tokens expire after 24 hours.

", + "ListViewsOutput$NextToken": "

If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. The pagination tokens expire after 24 hours.

", + "MemberIndex$AccountId": "

The account ID for the index.

", + "MemberIndex$Arn": "

The Amazon resource name (ARN) of the index.

", + "MemberIndex$Region": "

The Amazon Web Services Region in which the index exists.

", + "OrgConfiguration$ServiceLinkedRole": "

This value shows whether or not you have a valid a service-linked role required to start the multi-account search feature.

", "RegionList$member": null, "Resource$Arn": "

The Amazon resource name (ARN) of the resource.

", "Resource$OwningAccountId": "

The Amazon Web Services account that owns the resource.

", @@ -516,7 +593,7 @@ } }, "ThrottlingException": { - "base": "

The request failed because you exceeded a rate limit for this operation. For more information, see Quotas for Resource Explorer.

", + "base": "

The request failed because you exceeded a rate limit for this operation. For more information, see Quotas for Resource Explorer.

", "refs": { } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -33,7 +33,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -61,217 +60,188 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ + true, { - "ref": "Region" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://resource-explorer-2-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { "conditions": [], "endpoint": { - "url": "https://resource-explorer-2.{Region}.{PartitionResult#dualStackDnsSuffix}", + "url": "https://resource-explorer-2-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", - "rules": [ + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://resource-explorer-2.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ + "fn": "getAttr", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://resource-explorer-2-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "ref": "PartitionResult" }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } + "supportsFIPS" ] }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://resource-explorer-2.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } + true ] } - ] + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://resource-explorer-2-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://resource-explorer-2.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -107,6 +107,12 @@ "UseFIPS": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/resource-explorer-2/2022-07-28/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/resource-explorer-2/2022-07-28/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,6 +6,12 @@ "limit_key": "MaxResults", "result_key": "Indexes" }, + "ListIndexesForMembers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Indexes" + }, "ListSupportedResourceTypes": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2935,6 +2935,10 @@ "Owner":{"shape":"HostedZoneOwner"} } }, + "HostedZoneType":{ + "type":"string", + "enum":["PrivateHostedZone"] + }, "HostedZones":{ "type":"list", "member":{ @@ -3390,6 +3394,11 @@ "shape":"ResourceId", "location":"querystring", "locationName":"delegationsetid" + }, + "HostedZoneType":{ + "shape":"HostedZoneType", + "location":"querystring", + "locationName":"hostedzonetype" } } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,7 +5,7 @@ "ActivateKeySigningKey": "

Activates a key-signing key (KSK) so that it can be used for signing by DNSSEC. This operation changes the KSK status to ACTIVE.

", "AssociateVPCWithHostedZone": "

Associates an Amazon VPC with a private hosted zone.

To perform the association, the VPC and the private hosted zone must already exist. You can't convert a public hosted zone into a private hosted zone.

If you want to associate a VPC that was created by using one Amazon Web Services account with a private hosted zone that was created by using a different account, the Amazon Web Services account that created the private hosted zone must first submit a CreateVPCAssociationAuthorization request. Then the account that created the VPC must submit an AssociateVPCWithHostedZone request.

When granting access, the hosted zone and the Amazon VPC must belong to the same partition. A partition is a group of Amazon Web Services Regions. Each Amazon Web Services account is scoped to one partition.

The following are the supported partitions:

  • aws - Amazon Web Services Regions

  • aws-cn - China Regions

  • aws-us-gov - Amazon Web Services GovCloud (US) Region

For more information, see Access Management in the Amazon Web Services General Reference.

", "ChangeCidrCollection": "

Creates, changes, or deletes CIDR blocks within a collection. Contains authoritative IP information mapping blocks to one or multiple locations.

A change request can update multiple locations in a collection at a time, which is helpful if you want to move one or more CIDR blocks from one location to another in one transaction, without downtime.

Limits

The max number of CIDR blocks included in the request is 1000. As a result, big updates require multiple API calls.

PUT and DELETE_IF_EXISTS

Use ChangeCidrCollection to perform the following actions:

  • PUT: Create a CIDR block within the specified collection.

  • DELETE_IF_EXISTS: Delete an existing CIDR block from the collection.

", - "ChangeResourceRecordSets": "

Creates, changes, or deletes a resource record set, which contains authoritative DNS information for a specified domain name or subdomain name. For example, you can use ChangeResourceRecordSets to create a resource record set that routes traffic for test.example.com to a web server that has an IP address of 192.0.2.44.

Deleting Resource Record Sets

To delete a resource record set, you must specify all the same values that you specified when you created it.

Change Batches and Transactional Changes

The request body must include a document with a ChangeResourceRecordSetsRequest element. The request body contains a list of change items, known as a change batch. Change batches are considered transactional changes. Route 53 validates the changes in the request and then either makes all or none of the changes in the change batch request. This ensures that DNS routing isn't adversely affected by partial changes to the resource record sets in a hosted zone.

For example, suppose a change batch request contains two changes: it deletes the CNAME resource record set for www.example.com and creates an alias resource record set for www.example.com. If validation for both records succeeds, Route 53 deletes the first resource record set and creates the second resource record set in a single operation. If validation for either the DELETE or the CREATE action fails, then the request is canceled, and the original CNAME record continues to exist.

If you try to delete the same resource record set more than once in a single change batch, Route 53 returns an InvalidChangeBatch error.

Traffic Flow

To create resource record sets for complex routing configurations, use either the traffic flow visual editor in the Route 53 console or the API actions for traffic policies and traffic policy instances. Save the configuration as a traffic policy, then associate the traffic policy with one or more domain names (such as example.com) or subdomain names (such as www.example.com), in the same hosted zone or in multiple hosted zones. You can roll back the updates if the new configuration isn't performing as expected. For more information, see Using Traffic Flow to Route DNS Traffic in the Amazon Route 53 Developer Guide.

Create, Delete, and Upsert

Use ChangeResourceRecordsSetsRequest to perform the following actions:

  • CREATE: Creates a resource record set that has the specified values.

  • DELETE: Deletes an existing resource record set that has the specified values.

  • UPSERT: If a resource set exists Route 53 updates it with the values in the request.

Syntaxes for Creating, Updating, and Deleting Resource Record Sets

The syntax for a request depends on the type of resource record set that you want to create, delete, or update, such as weighted, alias, or failover. The XML elements in your request must appear in the order listed in the syntax.

For an example for each type of resource record set, see \"Examples.\"

Don't refer to the syntax in the \"Parameter Syntax\" section, which includes all of the elements for every kind of resource record set that you can create, delete, or update by using ChangeResourceRecordSets.

Change Propagation to Route 53 DNS Servers

When you submit a ChangeResourceRecordSets request, Route 53 propagates your changes to all of the Route 53 authoritative DNS servers managing the hosted zone. While your changes are propagating, GetChange returns a status of PENDING. When propagation is complete, GetChange returns a status of INSYNC. Changes generally propagate to all Route 53 name servers managing the hosted zone within 60 seconds. For more information, see GetChange.

Limits on ChangeResourceRecordSets Requests

For information about the limits on a ChangeResourceRecordSets request, see Limits in the Amazon Route 53 Developer Guide.

", + "ChangeResourceRecordSets": "

Creates, changes, or deletes a resource record set, which contains authoritative DNS information for a specified domain name or subdomain name. For example, you can use ChangeResourceRecordSets to create a resource record set that routes traffic for test.example.com to a web server that has an IP address of 192.0.2.44.

Deleting Resource Record Sets

To delete a resource record set, you must specify all the same values that you specified when you created it.

Change Batches and Transactional Changes

The request body must include a document with a ChangeResourceRecordSetsRequest element. The request body contains a list of change items, known as a change batch. Change batches are considered transactional changes. Route 53 validates the changes in the request and then either makes all or none of the changes in the change batch request. This ensures that DNS routing isn't adversely affected by partial changes to the resource record sets in a hosted zone.

For example, suppose a change batch request contains two changes: it deletes the CNAME resource record set for www.example.com and creates an alias resource record set for www.example.com. If validation for both records succeeds, Route 53 deletes the first resource record set and creates the second resource record set in a single operation. If validation for either the DELETE or the CREATE action fails, then the request is canceled, and the original CNAME record continues to exist.

If you try to delete the same resource record set more than once in a single change batch, Route 53 returns an InvalidChangeBatch error.

Traffic Flow

To create resource record sets for complex routing configurations, use either the traffic flow visual editor in the Route 53 console or the API actions for traffic policies and traffic policy instances. Save the configuration as a traffic policy, then associate the traffic policy with one or more domain names (such as example.com) or subdomain names (such as www.example.com), in the same hosted zone or in multiple hosted zones. You can roll back the updates if the new configuration isn't performing as expected. For more information, see Using Traffic Flow to Route DNS Traffic in the Amazon Route 53 Developer Guide.

Create, Delete, and Upsert

Use ChangeResourceRecordsSetsRequest to perform the following actions:

  • CREATE: Creates a resource record set that has the specified values.

  • DELETE: Deletes an existing resource record set that has the specified values.

  • UPSERT: If a resource set doesn't exist, Route 53 creates it. If a resource set exists Route 53 updates it with the values in the request.

Syntaxes for Creating, Updating, and Deleting Resource Record Sets

The syntax for a request depends on the type of resource record set that you want to create, delete, or update, such as weighted, alias, or failover. The XML elements in your request must appear in the order listed in the syntax.

For an example for each type of resource record set, see \"Examples.\"

Don't refer to the syntax in the \"Parameter Syntax\" section, which includes all of the elements for every kind of resource record set that you can create, delete, or update by using ChangeResourceRecordSets.

Change Propagation to Route 53 DNS Servers

When you submit a ChangeResourceRecordSets request, Route 53 propagates your changes to all of the Route 53 authoritative DNS servers managing the hosted zone. While your changes are propagating, GetChange returns a status of PENDING. When propagation is complete, GetChange returns a status of INSYNC. Changes generally propagate to all Route 53 name servers managing the hosted zone within 60 seconds. For more information, see GetChange.

Limits on ChangeResourceRecordSets Requests

For information about the limits on a ChangeResourceRecordSets request, see Limits in the Amazon Route 53 Developer Guide.

", "ChangeTagsForResource": "

Adds, edits, or deletes tags for a health check or a hosted zone.

For information about using tags for cost allocation, see Using Cost Allocation Tags in the Billing and Cost Management User Guide.

", "CreateCidrCollection": "

Creates a CIDR collection in the current Amazon Web Services account.

", "CreateHealthCheck": "

Creates a new health check.

For information about adding health checks to resource record sets, see HealthCheckId in ChangeResourceRecordSets.

ELB Load Balancers

If you're registering EC2 instances with an Elastic Load Balancing (ELB) load balancer, do not create Amazon Route 53 health checks for the EC2 instances. When you register an EC2 instance with a load balancer, you configure settings for an ELB health check, which performs a similar function to a Route 53 health check.

Private Hosted Zones

You can associate health checks with failover resource record sets in a private hosted zone. Note the following:

  • Route 53 health checkers are outside the VPC. To check the health of an endpoint within a VPC by IP address, you must assign a public IP address to the instance in the VPC.

  • You can configure a health checker to check the health of an external resource that the instance relies on, such as a database server.

  • You can create a CloudWatch metric, associate an alarm with the metric, and then create a health check that is based on the state of the alarm. For example, you might create a CloudWatch metric that checks the status of the Amazon EC2 StatusCheckFailed metric, add an alarm to the metric, and then create a health check that is based on the state of the alarm. For information about creating CloudWatch metrics and alarms by using the CloudWatch console, see the Amazon CloudWatch User Guide.

", @@ -14,7 +14,7 @@ "CreateQueryLoggingConfig": "

Creates a configuration for DNS query logging. After you create a query logging configuration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs log group.

DNS query logs contain information about the queries that Route 53 receives for a specified public hosted zone, such as the following:

  • Route 53 edge location that responded to the DNS query

  • Domain or subdomain that was requested

  • DNS record type, such as A or AAAA

  • DNS response code, such as NoError or ServFail

Log Group and Resource Policy

Before you create a query logging configuration, perform the following operations.

If you create a query logging configuration using the Route 53 console, Route 53 performs these operations automatically.

  1. Create a CloudWatch Logs log group, and make note of the ARN, which you specify when you create a query logging configuration. Note the following:

    • You must create the log group in the us-east-1 region.

    • You must use the same Amazon Web Services account to create the log group and the hosted zone that you want to configure query logging for.

    • When you create log groups for query logging, we recommend that you use a consistent prefix, for example:

      /aws/route53/hosted zone name

      In the next step, you'll create a resource policy, which controls access to one or more log groups and the associated Amazon Web Services resources, such as Route 53 hosted zones. There's a limit on the number of resource policies that you can create, so we recommend that you use a consistent prefix so you can use the same resource policy for all the log groups that you create for query logging.

  2. Create a CloudWatch Logs resource policy, and give it the permissions that Route 53 needs to create log streams and to send query logs to log streams. For the value of Resource, specify the ARN for the log group that you created in the previous step. To use the same resource policy for all the CloudWatch Logs log groups that you created for query logging configurations, replace the hosted zone name with *, for example:

    arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/*

    To avoid the confused deputy problem, a security issue where an entity without a permission for an action can coerce a more-privileged entity to perform it, you can optionally limit the permissions that a service has to a resource in a resource-based policy by supplying the following values:

    • For aws:SourceArn, supply the hosted zone ARN used in creating the query logging configuration. For example, aws:SourceArn: arn:aws:route53:::hostedzone/hosted zone ID.

    • For aws:SourceAccount, supply the account ID for the account that creates the query logging configuration. For example, aws:SourceAccount:111111111111.

    For more information, see The confused deputy problem in the Amazon Web Services IAM User Guide.

    You can't use the CloudWatch console to create or edit a resource policy. You must use the CloudWatch API, one of the Amazon Web Services SDKs, or the CLI.

Log Streams and Edge Locations

When Route 53 finishes creating the configuration for DNS query logging, it does the following:

  • Creates a log stream for an edge location the first time that the edge location responds to DNS queries for the specified hosted zone. That log stream is used to log all queries that Route 53 responds to for that edge location.

  • Begins to send query logs to the applicable log stream.

The name of each log stream is in the following format:

hosted zone ID/edge location code

The edge location code is a three-letter code and an arbitrarily assigned number, for example, DFW3. The three-letter code typically corresponds with the International Air Transport Association airport code for an airport near the edge location. (These abbreviations might change in the future.) For a list of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details page.

Queries That Are Logged

Query logs contain only the queries that DNS resolvers forward to Route 53. If a DNS resolver has already cached the response to a query (such as the IP address for a load balancer for example.com), the resolver will continue to return the cached response. It doesn't forward another query to Route 53 until the TTL for the corresponding resource record set expires. Depending on how many DNS queries are submitted for a resource record set, and depending on the TTL for that resource record set, query logs might contain information about only one query out of every several thousand queries that are submitted to DNS. For more information about how DNS works, see Routing Internet Traffic to Your Website or Web Application in the Amazon Route 53 Developer Guide.

Log File Format

For a list of the values in each query log and the format of each value, see Logging DNS Queries in the Amazon Route 53 Developer Guide.

Pricing

For information about charges for query logs, see Amazon CloudWatch Pricing.

How to Stop Logging

If you want Route 53 to stop sending query logs to CloudWatch Logs, delete the query logging configuration. For more information, see DeleteQueryLoggingConfig.

", "CreateReusableDelegationSet": "

Creates a delegation set (a group of four name servers) that can be reused by multiple hosted zones that were created by the same Amazon Web Services account.

You can also create a reusable delegation set that uses the four name servers that are associated with an existing hosted zone. Specify the hosted zone ID in the CreateReusableDelegationSet request.

You can't associate a reusable delegation set with a private hosted zone.

For information about using a reusable delegation set to configure white label name servers, see Configuring White Label Name Servers.

The process for migrating existing hosted zones to use a reusable delegation set is comparable to the process for configuring white label name servers. You need to perform the following steps:

  1. Create a reusable delegation set.

  2. Recreate hosted zones, and reduce the TTL to 60 seconds or less.

  3. Recreate resource record sets in the new hosted zones.

  4. Change the registrar's name servers to use the name servers for the new hosted zones.

  5. Monitor traffic for the website or application.

  6. Change TTLs back to their original values.

If you want to migrate existing hosted zones to use a reusable delegation set, the existing hosted zones can't use any of the name servers that are assigned to the reusable delegation set. If one or more hosted zones do use one or more name servers that are assigned to the reusable delegation set, you can do one of the following:

  • For small numbers of hosted zones—up to a few hundred—it's relatively easy to create reusable delegation sets until you get one that has four name servers that don't overlap with any of the name servers in your hosted zones.

  • For larger numbers of hosted zones, the easiest solution is to use more than one reusable delegation set.

  • For larger numbers of hosted zones, you can also migrate hosted zones that have overlapping name servers to hosted zones that don't have overlapping name servers, then migrate the hosted zones again to use the reusable delegation set.

", "CreateTrafficPolicy": "

Creates a traffic policy, which you use to create multiple DNS resource record sets for one domain name (such as example.com) or one subdomain name (such as www.example.com).

", - "CreateTrafficPolicyInstance": "

Creates resource record sets in a specified hosted zone based on the settings in a specified traffic policy version. In addition, CreateTrafficPolicyInstance associates the resource record sets with a specified domain name (such as example.com) or subdomain name (such as www.example.com). Amazon Route 53 responds to DNS queries for the domain or subdomain name by using the resource record sets that CreateTrafficPolicyInstance created.

", + "CreateTrafficPolicyInstance": "

Creates resource record sets in a specified hosted zone based on the settings in a specified traffic policy version. In addition, CreateTrafficPolicyInstance associates the resource record sets with a specified domain name (such as example.com) or subdomain name (such as www.example.com). Amazon Route 53 responds to DNS queries for the domain or subdomain name by using the resource record sets that CreateTrafficPolicyInstance created.

After you submit an CreateTrafficPolicyInstance request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. Use GetTrafficPolicyInstance with the id of new traffic policy instance to confirm that the CreateTrafficPolicyInstance request completed successfully. For more information, see the State response element.

", "CreateTrafficPolicyVersion": "

Creates a new version of an existing traffic policy. When you create a new version of a traffic policy, you specify the ID of the traffic policy that you want to update and a JSON-formatted document that describes the new version. You use traffic policies to create multiple DNS resource record sets for one domain name (such as example.com) or one subdomain name (such as www.example.com). You can create a maximum of 1000 versions of a traffic policy. If you reach the limit and need to create another version, you'll need to start a new traffic policy.

", "CreateVPCAssociationAuthorization": "

Authorizes the Amazon Web Services account that created a specified VPC to submit an AssociateVPCWithHostedZone request to associate the VPC with a specified hosted zone that was created by a different account. To submit a CreateVPCAssociationAuthorization request, you must use the account that created the hosted zone. After you authorize the association, use the account that created the VPC to submit an AssociateVPCWithHostedZone request.

If you want to associate multiple VPCs that you created by using one account with a hosted zone that you created by using a different account, you must submit one authorization request for each VPC.

", "DeactivateKeySigningKey": "

Deactivates a key-signing key (KSK) so that it will not be used for signing by DNSSEC. This operation changes the KSK status to INACTIVE.

", @@ -46,7 +46,7 @@ "GetReusableDelegationSet": "

Retrieves information about a specified reusable delegation set, including the four name servers that are assigned to the delegation set.

", "GetReusableDelegationSetLimit": "

Gets the maximum number of hosted zones that you can associate with the specified reusable delegation set.

For the default limit, see Limits in the Amazon Route 53 Developer Guide. To request a higher limit, open a case.

", "GetTrafficPolicy": "

Gets information about a specific traffic policy version.

For information about how of deleting a traffic policy affects the response from GetTrafficPolicy, see DeleteTrafficPolicy.

", - "GetTrafficPolicyInstance": "

Gets information about a specified traffic policy instance.

After you submit a CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. For more information, see the State response element.

In the Route 53 console, traffic policy instances are known as policy records.

", + "GetTrafficPolicyInstance": "

Gets information about a specified traffic policy instance.

Use GetTrafficPolicyInstance with the id of new traffic policy instance to confirm that the CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance request completed successfully. For more information, see the State response element.

In the Route 53 console, traffic policy instances are known as policy records.

", "GetTrafficPolicyInstanceCount": "

Gets the number of traffic policy instances that are associated with the current Amazon Web Services account.

", "ListCidrBlocks": "

Returns a paginated list of location objects and their CIDR blocks.

", "ListCidrCollections": "

Returns a paginated list of CIDR collections in the Amazon Web Services account (metadata only).

", @@ -71,7 +71,7 @@ "UpdateHealthCheck": "

Updates an existing health check. Note that some values can't be updated.

For more information about updating health checks, see Creating, Updating, and Deleting Health Checks in the Amazon Route 53 Developer Guide.

", "UpdateHostedZoneComment": "

Updates the comment for a specified hosted zone.

", "UpdateTrafficPolicyComment": "

Updates the comment for a specified traffic policy version.

", - "UpdateTrafficPolicyInstance": "

Updates the resource record sets in a specified hosted zone that were created based on the settings in a specified traffic policy version.

When you update a traffic policy instance, Amazon Route 53 continues to respond to DNS queries for the root resource record set name (such as example.com) while it replaces one group of resource record sets with another. Route 53 performs the following operations:

  1. Route 53 creates a new group of resource record sets based on the specified traffic policy. This is true regardless of how significant the differences are between the existing resource record sets and the new resource record sets.

  2. When all of the new resource record sets have been created, Route 53 starts to respond to DNS queries for the root resource record set name (such as example.com) by using the new resource record sets.

  3. Route 53 deletes the old group of resource record sets that are associated with the root resource record set name.

" + "UpdateTrafficPolicyInstance": "

After you submit a UpdateTrafficPolicyInstance request, there's a brief delay while Route 53 creates the resource record sets that are specified in the traffic policy definition. Use GetTrafficPolicyInstance with the id of updated traffic policy instance confirm that the UpdateTrafficPolicyInstance request completed successfully. For more information, see the State response element.

Updates the resource record sets in a specified hosted zone that were created based on the settings in a specified traffic policy version.

When you update a traffic policy instance, Amazon Route 53 continues to respond to DNS queries for the root resource record set name (such as example.com) while it replaces one group of resource record sets with another. Route 53 performs the following operations:

  1. Route 53 creates a new group of resource record sets based on the specified traffic policy. This is true regardless of how significant the differences are between the existing resource record sets and the new resource record sets.

  2. When all of the new resource record sets have been created, Route 53 starts to respond to DNS queries for the root resource record set name (such as example.com) by using the new resource record sets.

  3. Route 53 deletes the old group of resource record sets that are associated with the root resource record set name.

" }, "shapes": { "ARN": { @@ -897,9 +897,9 @@ "GeoLocationCountryCode": { "base": null, "refs": { - "GeoLocation$CountryCode": "

For geolocation resource record sets, the two-letter code for a country.

Amazon Route 53 uses the two-letter country codes that are specified in ISO standard 3166-1 alpha-2.

", + "GeoLocation$CountryCode": "

For geolocation resource record sets, the two-letter code for a country.

Amazon Route 53 uses the two-letter country codes that are specified in ISO standard 3166-1 alpha-2.

Route 53 also supports the contry code UA forr Ukraine.

", "GeoLocationDetails$CountryCode": "

The two-letter code for the country.

", - "GetGeoLocationRequest$CountryCode": "

Amazon Route 53 uses the two-letter country codes that are specified in ISO standard 3166-1 alpha-2.

", + "GetGeoLocationRequest$CountryCode": "

Amazon Route 53 uses the two-letter country codes that are specified in ISO standard 3166-1 alpha-2.

Route 53 also supports the contry code UA forr Ukraine.

", "ListGeoLocationsRequest$StartCountryCode": "

The code for the country with which you want to start listing locations that Amazon Route 53 supports for geolocation. If Route 53 has already returned a page or more of results, if IsTruncated is true, and if NextCountryCode from the previous response has a value, enter that value in startcountrycode to return the next page of results.

", "ListGeoLocationsResponse$NextCountryCode": "

If IsTruncated is true, you can make a follow-up request to display more locations. Enter the value of NextCountryCode in the startcountrycode parameter in another ListGeoLocations request.

" } @@ -1167,7 +1167,7 @@ "HealthCheckNonce": { "base": null, "refs": { - "CreateHealthCheckRequest$CallerReference": "

A unique string that identifies the request and that allows you to retry a failed CreateHealthCheck request without the risk of creating two identical health checks:

  • If you send a CreateHealthCheck request with the same CallerReference and settings as a previous request, and if the health check doesn't exist, Amazon Route 53 creates the health check. If the health check does exist, Route 53 returns the settings for the existing health check.

  • If you send a CreateHealthCheck request with the same CallerReference as a deleted health check, regardless of the settings, Route 53 returns a HealthCheckAlreadyExists error.

  • If you send a CreateHealthCheck request with the same CallerReference as an existing health check but with different settings, Route 53 returns a HealthCheckAlreadyExists error.

  • If you send a CreateHealthCheck request with a unique CallerReference but settings identical to an existing health check, Route 53 creates the health check.

", + "CreateHealthCheckRequest$CallerReference": "

A unique string that identifies the request and that allows you to retry a failed CreateHealthCheck request without the risk of creating two identical health checks:

  • If you send a CreateHealthCheck request with the same CallerReference and settings as a previous request, and if the health check doesn't exist, Amazon Route 53 creates the health check. If the health check does exist, Route 53 returns the settings for the existing health check.

  • If you send a CreateHealthCheck request with the same CallerReference as a deleted health check, regardless of the settings, Route 53 returns a HealthCheckAlreadyExists error.

  • If you send a CreateHealthCheck request with the same CallerReference as an existing health check but with different settings, Route 53 returns a HealthCheckAlreadyExists error.

  • If you send a CreateHealthCheck request with a unique CallerReference but settings identical to an existing health check, Route 53 creates the health check.

Route 53 does not store the CallerReference for a deleted health check indefinitely. The CallerReference for a deleted health check will be deleted after a number of days.

", "HealthCheck$CallerReference": "

A unique string that you specified when you created the health check.

" } }, @@ -1319,6 +1319,12 @@ "HostedZoneSummaries$member": null } }, + "HostedZoneType": { + "base": null, + "refs": { + "ListHostedZonesRequest$HostedZoneType": "

(Optional) Specifies if the hosted zone is private.

" + } + }, "HostedZones": { "base": null, "refs": { @@ -1821,7 +1827,7 @@ "refs": { "ListGeoLocationsRequest$MaxItems": "

(Optional) The maximum number of geolocations to be included in the response body for this request. If more than maxitems geolocations remain to be listed, then the value of the IsTruncated element in the response is true.

", "ListGeoLocationsResponse$MaxItems": "

The value that you specified for MaxItems in the request.

", - "ListHealthChecksRequest$MaxItems": "

The maximum number of health checks that you want ListHealthChecks to return in response to the current request. Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a value greater than 100, Route 53 returns only the first 100 health checks.

", + "ListHealthChecksRequest$MaxItems": "

The maximum number of health checks that you want ListHealthChecks to return in response to the current request. Amazon Route 53 returns a maximum of 1000 items. If you set MaxItems to a value greater than 1000, Route 53 returns only the first 1000 health checks.

", "ListHealthChecksResponse$MaxItems": "

The value that you specified for the maxitems parameter in the call to ListHealthChecks that produced the current response.

", "ListHostedZonesByNameRequest$MaxItems": "

The maximum number of hosted zones to be included in the response body for this request. If you have more than maxitems hosted zones, then the value of the IsTruncated element in the response is true, and the values of NextDNSName and NextHostedZoneId specify the first hosted zone in the next group of maxitems hosted zones.

", "ListHostedZonesByNameResponse$MaxItems": "

The value that you specified for the maxitems parameter in the call to ListHostedZonesByName that produced the current response.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,650 +57,717 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "stringEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://route53.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "us-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://route53.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws" + "name" ] }, + "aws" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://route53-fips.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "us-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://route53-fips.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-cn" + "name" ] }, + "aws-cn" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://route53.amazonaws.com.cn", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "cn-northwest-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://route53.amazonaws.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "cn-northwest-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-us-gov" + "name" ] }, + "aws-us-gov" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://route53.us-gov.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "us-gov-west-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://route53.us-gov.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-gov-west-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-us-gov" + "name" ] }, + "aws-us-gov" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://route53.us-gov.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "us-gov-west-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://route53.us-gov.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-gov-west-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-iso" + "name" ] }, + "aws-iso" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://route53.c2s.ic.gov", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "us-iso-east-1" - } - ] + "ref": "UseDualStack" }, - "headers": {} - }, - "type": "endpoint" + false + ] + } + ], + "endpoint": { + "url": "https://route53.c2s.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-iso-east-1" + } + ] }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] + "ref": "PartitionResult" }, - "aws-iso-b" + "name" ] }, + "aws-iso-b" + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://route53.sc2s.sgov.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-isob-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", "argv": [ { - "ref": "UseFIPS" + "ref": "PartitionResult" }, - false + "name" ] }, + "aws-iso-e" + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://route53.cloud.adc-e.uk", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "eu-isoe-west-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", "argv": [ { - "ref": "UseDualStack" + "ref": "PartitionResult" }, - false + "name" ] + }, + "aws-iso-f" + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://route53.csp.hci.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "us-isof-south-1" } - ], - "endpoint": { - "url": "https://route53.sc2s.sgov.gov", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "route53", - "signingRegion": "us-isob-east-1" - } - ] + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, - "headers": {} - }, - "type": "endpoint" + true + ] }, { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://route53-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://route53-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://route53-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://route53-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://route53.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://route53.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://route53.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://route53.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53/2013-04-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53/2013-04-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -525,6 +525,17 @@ "expect": { "error": "Invalid Configuration: Missing Region" } + }, + { + "documentation": "Partition doesn't support DualStack", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -184,6 +184,12 @@ "type":"integer", "min":1 }, + "Owner":{ + "type":"string", + "max":1024, + "min":12, + "pattern":"^\\S+$" + }, "PageToken":{ "type":"string", "max":8096, @@ -212,7 +218,8 @@ "ControlPanelName":{"shape":"ControlPanelName"}, "RoutingControlArn":{"shape":"Arn"}, "RoutingControlName":{"shape":"RoutingControlName"}, - "RoutingControlState":{"shape":"RoutingControlState"} + "RoutingControlState":{"shape":"RoutingControlState"}, + "Owner":{"shape":"Owner"} } }, "RoutingControlName":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,11 +1,11 @@ { "version": "2.0", - "service": "

Welcome to the Routing Control (Recovery Cluster) API Reference Guide for Amazon Route 53 Application Recovery Controller.

With Route 53 ARC, you can use routing control with extreme reliability to recover applications by rerouting traffic across Availability Zones or Amazon Web Services Regions. Routing controls are simple on/off switches hosted on a highly available cluster in Route 53 ARC. A cluster provides a set of five redundant Regional endpoints against which you can run API calls to get or update the state of routing controls. To implement failover, you set one routing control On and another one Off, to reroute traffic from one Availability Zone or Amazon Web Services Region to another.

Be aware that you must specify a Regional endpoint for a cluster when you work with API cluster operations to get or update routing control states in Route 53 ARC. In addition, you must specify the US West (Oregon) Region for Route 53 ARC API calls. For example, use the parameter --region us-west-2 with AWS CLI commands. For more information, see Get and update routing control states using the API in the Amazon Route 53 Application Recovery Controller Developer Guide.

This API guide includes information about the API operations for how to get and update routing control states in Route 53 ARC. To work with routing control in Route 53 ARC, you must first create the required components (clusters, control panels, and routing controls) using the recovery cluster configuration API.

For more information about working with routing control in Route 53 ARC, see the following:

", + "service": "

Welcome to the Routing Control (Recovery Cluster) API Reference Guide for Amazon Route 53 Application Recovery Controller.

With Route 53 ARC, you can use routing control with extreme reliability to recover applications by rerouting traffic across Availability Zones or Amazon Web Services Regions. Routing controls are simple on/off switches hosted on a highly available cluster in Route 53 ARC. A cluster provides a set of five redundant Regional endpoints against which you can run API calls to get or update the state of routing controls. To implement failover, you set one routing control to ON and another one to OFF, to reroute traffic from one Availability Zone or Amazon Web Services Region to another.

Be aware that you must specify a Regional endpoint for a cluster when you work with API cluster operations to get or update routing control states in Route 53 ARC. In addition, you must specify the US West (Oregon) Region for Route 53 ARC API calls. For example, use the parameter --region us-west-2 with AWS CLI commands. For more information, see Get and update routing control states using the API in the Amazon Route 53 Application Recovery Controller Developer Guide.

This API guide includes information about the API operations for how to get and update routing control states in Route 53 ARC. To work with routing control in Route 53 ARC, you must first create the required components (clusters, control panels, and routing controls) using the recovery cluster configuration API.

For more information about working with routing control in Route 53 ARC, see the following:

", "operations": { - "GetRoutingControlState": "

Get the state for a routing control. A routing control is a simple on/off switch that you can use to route traffic to cells. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow.

Before you can create a routing control, you must first create a cluster, and then host the control in a control panel on the cluster. For more information, see Create routing control structures in the Amazon Route 53 Application Recovery Controller Developer Guide. You access one of the endpoints for the cluster to get or update the routing control state to redirect traffic for your application.

You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.

To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see API examples in the Amazon Route 53 Application Recovery Controller Developer Guide.

Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:

", - "ListRoutingControls": "

List routing control names and Amazon Resource Names (ARNs), as well as the routing control state for each routing control, along with the control panel name and control panel ARN for the routing controls. If you specify a control panel ARN, this call lists the routing controls in the control panel. Otherwise, it lists all the routing controls in the cluster.

A routing control is a simple on/off switch in Route 53 ARC that you can use to route traffic to cells. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow.

Before you can create a routing control, you must first create a cluster, and then host the control in a control panel on the cluster. For more information, see Create routing control structures in the Amazon Route 53 Application Recovery Controller Developer Guide. You access one of the endpoints for the cluster to get or update the routing control state to redirect traffic for your application.

You must specify Regional endpoints when you work with API cluster operations to use this API operation to list routing controls in Route 53 ARC.

Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:

", - "UpdateRoutingControlState": "

Set the state of the routing control to reroute traffic. You can set the value to be On or Off. When the state is On, traffic flows to a cell. When the state is Off, traffic does not flow.

With Route 53 ARC, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.

The SafetyRulesToOverride property enables you override one or more safety rules and update routing control states. For more information, see Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery Controller Developer Guide.

You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.

To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see API examples in the Amazon Route 53 Application Recovery Controller Developer Guide.

", - "UpdateRoutingControlStates": "

Set multiple routing control states. You can set the value for each state to be On or Off. When the state is On, traffic flows to a cell. When it's Off, traffic does not flow.

With Route 53 ARC, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.

The SafetyRulesToOverride property enables you override one or more safety rules and update routing control states. For more information, see Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery Controller Developer Guide.

You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.

To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see API examples in the Amazon Route 53 Application Recovery Controller Developer Guide.

" + "GetRoutingControlState": "

Get the state for a routing control. A routing control is a simple on/off switch that you can use to route traffic to cells. When a routing control state is set to ON, traffic flows to a cell. When the state is set to OFF, traffic does not flow.

Before you can create a routing control, you must first create a cluster, and then host the control in a control panel on the cluster. For more information, see Create routing control structures in the Amazon Route 53 Application Recovery Controller Developer Guide. You access one of the endpoints for the cluster to get or update the routing control state to redirect traffic for your application.

You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.

To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see API examples in the Amazon Route 53 Application Recovery Controller Developer Guide.

Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:

", + "ListRoutingControls": "

List routing control names and Amazon Resource Names (ARNs), as well as the routing control state for each routing control, along with the control panel name and control panel ARN for the routing controls. If you specify a control panel ARN, this call lists the routing controls in the control panel. Otherwise, it lists all the routing controls in the cluster.

A routing control is a simple on/off switch in Route 53 ARC that you can use to route traffic to cells. When a routing control state is set to ON, traffic flows to a cell. When the state is set to OFF, traffic does not flow.

Before you can create a routing control, you must first create a cluster, and then host the control in a control panel on the cluster. For more information, see Create routing control structures in the Amazon Route 53 Application Recovery Controller Developer Guide. You access one of the endpoints for the cluster to get or update the routing control state to redirect traffic for your application.

You must specify Regional endpoints when you work with API cluster operations to use this API operation to list routing controls in Route 53 ARC.

Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:

", + "UpdateRoutingControlState": "

Set the state of the routing control to reroute traffic. You can set the value to ON or OFF. When the state is ON, traffic flows to a cell. When the state is OFF, traffic does not flow.

With Route 53 ARC, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.

The SafetyRulesToOverride property enables you override one or more safety rules and update routing control states. For more information, see Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery Controller Developer Guide.

You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.

To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see API examples in the Amazon Route 53 Application Recovery Controller Developer Guide.

", + "UpdateRoutingControlStates": "

Set multiple routing control states. You can set the value for each state to be ON or OFF. When the state is ON, traffic flows to a cell. When it's OFF, traffic does not flow.

With Route 53 ARC, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.

The SafetyRulesToOverride property enables you override one or more safety rules and update routing control states. For more information, see Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery Controller Developer Guide.

You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.

To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see API examples in the Amazon Route 53 Application Recovery Controller Developer Guide.

" }, "shapes": { "AccessDeniedException": { @@ -41,7 +41,7 @@ "ControlPanelName": { "base": null, "refs": { - "RoutingControl$ControlPanelName": "

The name of the control panel where the routing control is located.

" + "RoutingControl$ControlPanelName": "

The name of the control panel where the routing control is located. Only ASCII characters are supported for control panel names.

" } }, "EndpointTemporarilyUnavailableException": { @@ -80,6 +80,12 @@ "ListRoutingControlsRequest$MaxResults": "

The number of routing controls objects that you want to return with this call. The default value is 500.

" } }, + "Owner": { + "base": null, + "refs": { + "RoutingControl$Owner": "

The Amazon Web Services account ID of the routing control owner.

" + } + }, "PageToken": { "base": null, "refs": { @@ -100,7 +106,7 @@ } }, "RoutingControl": { - "base": "

A routing control, which is a simple on/off switch that you can use to route traffic to cells. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow.

", + "base": "

A routing control, which is a simple on/off switch that you can use to route traffic to cells. When a routing control state is set to ON, traffic flows to a cell. When the state is set to OFF, traffic does not flow.

", "refs": { "RoutingControls$member": null } @@ -116,9 +122,9 @@ "base": null, "refs": { "GetRoutingControlStateResponse$RoutingControlState": "

The state of the routing control.

", - "RoutingControl$RoutingControlState": "

The current state of the routing control. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow.

", + "RoutingControl$RoutingControlState": "

The current state of the routing control. When a routing control state is set to ON, traffic flows to a cell. When the state is set to OFF, traffic does not flow.

", "UpdateRoutingControlStateEntry$RoutingControlState": "

The routing control state in a set of routing control state entries.

", - "UpdateRoutingControlStateRequest$RoutingControlState": "

The state of the routing control. You can set the value to be On or Off.

" + "UpdateRoutingControlStateRequest$RoutingControlState": "

The state of the routing control. You can set the value to ON or OFF.

" } }, "RoutingControls": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://route53-recovery-cluster-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://route53-recovery-cluster-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://route53-recovery-cluster.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://route53-recovery-cluster.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-cluster/2019-12-02/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-cluster.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -395,6 +395,28 @@ } ] }, + "GetResourcePolicy": { + "name": "GetResourcePolicy", + "http": { + "method": "GET", + "requestUri": "/resourcePolicy/{ResourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "GetResourcePolicyRequest" + }, + "output": { + "shape": "GetResourcePolicyResponse" + }, + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InternalServerException" + } + ] + }, "ListAssociatedRoute53HealthChecks": { "name": "ListAssociatedRoute53HealthChecks", "http": { @@ -753,6 +775,9 @@ }, "WaitPeriodMs": { "shape": "__integer" + }, + "Owner": { + "shape": "__stringMin12Max12PatternD12" } }, "required": [ @@ -798,6 +823,9 @@ }, "Status": { "shape": "Status" + }, + "Owner": { + "shape": "__stringMin12Max12PatternD12" } } }, @@ -848,6 +876,9 @@ }, "Status": { "shape": "Status" + }, + "Owner": { + "shape": "__stringMin12Max12PatternD12" } } }, @@ -1147,6 +1178,9 @@ }, "WaitPeriodMs": { "shape": "__integer" + }, + "Owner": { + "shape": "__stringMin12Max12PatternD12" } }, "required": [ @@ -1179,6 +1213,27 @@ "Name" ] }, + "GetResourcePolicyRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "shape": "__string", + "location": "uri", + "locationName": "ResourceArn" + } + }, + "required": [ + "ResourceArn" + ] + }, + "GetResourcePolicyResponse": { + "type": "structure", + "members": { + "Policy": { + "shape": "__policy" + } + } + }, "InternalServerException": { "type": "structure", "members": { @@ -1468,6 +1523,9 @@ }, "Status": { "shape": "Status" + }, + "Owner": { + "shape": "__stringMin12Max12PatternD12" } } }, @@ -1760,6 +1818,12 @@ "max": 256, "pattern": "^\\S+$" }, + "__stringMin12Max12PatternD12": { + "type": "string", + "min": 12, + "max": 12, + "pattern": "^\\d{12}$" + }, "__stringMin1Max128PatternAZaZ09": { "type": "string", "min": 1, @@ -1790,6 +1854,12 @@ "max": 8096, "pattern": "[\\S]*" }, + "__policy": { + "type": "string", + "min": 2, + "max": 10240, + "pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u00A1-\\u00FF]+" + }, "__timestampIso8601": { "type": "timestamp", "timestampFormat": "iso8601" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -14,6 +14,7 @@ "DescribeControlPanel": "

Displays details about a control panel.

", "DescribeRoutingControl": "

Displays details about a routing control. A routing control has one of two states: ON and OFF. You can map the routing control state to the state of an Amazon Route 53 health check, which can be used to control routing.

To get or update the routing control state, see the Recovery Cluster (data plane) API actions for Amazon Route 53 Application Recovery Controller.

", "DescribeSafetyRule": "

Returns information about a safety rule.

", + "GetResourcePolicy": "

Get information about the resource policy for a cluster.

", "ListAssociatedRoute53HealthChecks": "

Returns an array of all Amazon Route 53 health checks associated with a specific routing control.

", "ListClusters": "

Returns an array of all the clusters in an account.

", "ListControlPanels": "

Returns an array of control panels in an account or in a cluster.

", @@ -170,6 +171,11 @@ "UpdateSafetyRuleRequest$GatingRuleUpdate": "

The gating rule to update.

" } }, + "GetResourcePolicyResponse": { + "base": "

Returns the current Amazon Resource Access Manager resource policy for a cluster.

", + "refs": { + } + }, "InternalServerException": { "base": "

500 response - InternalServiceError. Temporary service error. Retry the request.

", "refs": { @@ -423,6 +429,16 @@ "__mapOf__stringMin0Max256PatternS$member": null } }, + "__stringMin12Max12PatternD12": { + "base": null, + "refs": { + "AssertionRule$Owner": "

The Amazon Web Services account ID of the assertion rule owner.

", + "Cluster$Owner": "

The Amazon Web Services account ID of the cluster owner.

", + "ControlPanel$Owner": "

The Amazon Web Services account ID of the control panel owner.

", + "GatingRule$Owner": "

The Amazon Web Services account ID of the gating rule owner.

", + "RoutingControl$Owner": "

The Amazon Web Services account ID of the routing control owner.

" + } + }, "__stringMin1Max128PatternAZaZ09": { "base": null, "refs": { @@ -491,6 +507,12 @@ "ListRoutingControlsResponse$NextToken": "

The token that identifies which batch of results you want to see.

", "ListSafetyRulesResponse$NextToken": "

The token that identifies which batch of results you want to see.

" } + }, + "__policy": { + "base": null, + "refs": { + "GetResourcePolicyResponse$Policy": "

The resource policy.

" + } } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,78 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -111,113 +62,161 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://route53-recovery-control-config-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://route53-recovery-control-config-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [], @@ -228,74 +227,70 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://route53-recovery-control-config.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://route53-recovery-control-config.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "stringEquals", @@ -313,8 +308,8 @@ "authSchemes": [ { "name": "sigv4", - "signingRegion": "us-west-2", - "signingName": "route53-recovery-control-config" + "signingName": "route53-recovery-control-config", + "signingRegion": "us-west-2" } ] }, @@ -331,9 +326,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/route53-recovery-control-config/2020-11-02/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -7,9 +7,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-west-2", "name": "sigv4", - "signingName": "route53-recovery-control-config" + "signingName": "route53-recovery-control-config", + "signingRegion": "us-west-2" } ] }, @@ -17,13 +17,279 @@ } }, "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://route53-recovery-control-config.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "aws-global" + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -32,7 +298,6 @@ "params": { "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -42,9 +307,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -54,11 +319,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -148,7 +148,7 @@ "type":"string", "max":100, "min":1, - "pattern":"^([A-Za-z]_?)+$" + "pattern":"^([A-Za-z0-9]_?)+$" }, "ActiveContextParametersMap":{ "type":"map", @@ -532,9 +532,17 @@ "members":{ "nluConfidence":{"shape":"ConfidenceScore"}, "sentimentResponse":{"shape":"SentimentResponse"}, - "intent":{"shape":"Intent"} + "intent":{"shape":"Intent"}, + "interpretationSource":{"shape":"InterpretationSource"} } }, + "InterpretationSource":{ + "type":"string", + "enum":[ + "Bedrock", + "Lex" + ] + }, "Interpretations":{ "type":"list", "member":{"shape":"Interpretation"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -174,7 +174,7 @@ "ConfirmationState": { "base": null, "refs": { - "Intent$confirmationState": "

Contains information about whether fulfillment of the intent has been confirmed.

" + "Intent$confirmationState": "

Indicates whether the intent has been Confirmed, Denied, or None if the confirmation stage has not yet been reached.

" } }, "ConflictException": { @@ -226,7 +226,7 @@ "DialogActionType": { "base": null, "refs": { - "DialogAction$type": "

The next action that the bot should take in its interaction with the user. The possible values are:

  • Close - Indicates that there will not be a response from the user. For example, the statement \"Your order has been placed\" does not require a response.

  • ConfirmIntent - The next action is asking the user if the intent is complete and ready to be fulfilled. This is a yes/no question such as \"Place the order?\"

  • Delegate - The next action is determined by Amazon Lex V2.

  • ElicitIntent - The next action is to elicit an intent from the user.

  • ElicitSlot - The next action is to elicit a slot value from the user.

" + "DialogAction$type": "

The next action that the bot should take in its interaction with the user. The following values are possible:

  • Close – Indicates that there will not be a response from the user. For example, the statement \"Your order has been placed\" does not require a response.

  • ConfirmIntent – The next action is asking the user if the intent is complete and ready to be fulfilled. This is a yes/no question such as \"Place the order?\"

  • Delegate – The next action is determined by Amazon Lex V2.

  • ElicitIntent – The next action is to elicit an intent from the user.

  • ElicitSlot – The next action is to elicit a slot value from the user.

" } }, "DisconnectionEvent": { @@ -306,7 +306,7 @@ "InputMode": { "base": null, "refs": { - "IntentResultEvent$inputMode": "

Indicates whether the input to the operation was text or speech.

" + "IntentResultEvent$inputMode": "

Indicates whether the input to the operation was text, speech, or from a touch-tone keypad.

" } }, "Intent": { @@ -325,7 +325,7 @@ "IntentState": { "base": null, "refs": { - "Intent$state": "

Contains fulfillment information for the intent.

" + "Intent$state": "

Indicates the fulfillment state for the intent. The meanings of each value are as follows:

  • Failed – The bot failed to fulfill the intent.

  • Fulfilled – The bot has completed fulfillment of the intent.

  • FulfillmentInProgress – The bot is in the middle of fulfilling the intent.

  • InProgress – The bot is in the middle of eliciting the slot values that are necessary to fulfill the intent.

  • ReadyForFulfillment – The bot has elicited all the slot values for the intent and is ready to fulfill the intent.

  • Waiting – The bot is waiting for a response from the user (limited to streaming conversations).

" } }, "InternalServerException": { @@ -335,11 +335,17 @@ } }, "Interpretation": { - "base": "

An intent that Amazon Lex V2 determined might satisfy the user's utterance. The intents are ordered by the confidence score.

", + "base": "

An object containing information about an intent that Amazon Lex V2 determined might satisfy the user's utterance. The intents are ordered by the confidence score.

", "refs": { "Interpretations$member": null } }, + "InterpretationSource": { + "base": null, + "refs": { + "Interpretation$interpretationSource": "

Specifies the service that interpreted the input.

" + } + }, "Interpretations": { "base": null, "refs": { @@ -403,11 +409,11 @@ "PutSessionRequest$responseContentType": "

The message that Amazon Lex V2 returns in the response can be either text or speech depending on the value of this parameter.

  • If the value is text/plain; charset=utf-8, Amazon Lex V2 returns text in the response.

", "PutSessionResponse$contentType": "

The type of response. Same as the type specified in the responseContentType field in the request.

", "PutSessionResponse$messages": "

A list of messages that were last sent to the user. The messages are ordered based on how you return the messages from you Lambda function or the order that the messages are defined in the bot.

", - "PutSessionResponse$sessionState": "

Represents the current state of the dialog between the user and the bot.

Use this to determine the progress of the conversation and what the next action may be.

", - "PutSessionResponse$requestAttributes": "

Request-specific information passed between the client application and Amazon Lex V2. These are the same as the requestAttribute parameter in the call to the PutSession operation.

", + "PutSessionResponse$sessionState": "

A base-64-encoded gzipped field that represents the current state of the dialog between the user and the bot. Use this to determine the progress of the conversation and what the next action may be.

", + "PutSessionResponse$requestAttributes": "

A base-64-encoded gzipped field that provides request-specific information passed between the client application and Amazon Lex V2. These are the same as the requestAttribute parameter in the call to the PutSession operation.

", "RecognizeUtteranceRequest$requestContentType": "

Indicates the format for audio input or that the content is text. The header must start with one of the following prefixes:

  • PCM format, audio data must be in little-endian byte order.

    • audio/l16; rate=16000; channels=1

    • audio/x-l16; sample-rate=16000; channel-count=1

    • audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false

  • Opus format

    • audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4

  • Text format

    • text/plain; charset=utf-8

", "RecognizeUtteranceRequest$responseContentType": "

The message that Amazon Lex V2 returns in the response can be either text or speech based on the responseContentType value.

  • If the value is text/plain;charset=utf-8, Amazon Lex V2 returns text in the response.

  • If the value begins with audio/, Amazon Lex V2 returns speech in the response. Amazon Lex V2 uses Amazon Polly to generate the speech using the configuration that you specified in the responseContentType parameter. For example, if you specify audio/mpeg as the value, Amazon Lex V2 returns speech in the MPEG format.

  • If the value is audio/pcm, the speech returned is audio/pcm at 16 KHz in 16-bit, little-endian format.

  • The following are the accepted values:

    • audio/mpeg

    • audio/ogg

    • audio/pcm (16 KHz)

    • audio/* (defaults to mpeg)

    • text/plain; charset=utf-8

", - "RecognizeUtteranceResponse$inputMode": "

Indicates whether the input mode to the operation was text or speech.

", + "RecognizeUtteranceResponse$inputMode": "

Indicates whether the input mode to the operation was text, speech, or from a touch-tone keypad.

", "RecognizeUtteranceResponse$contentType": "

Content type as specified in the responseContentType in the request.

", "RecognizeUtteranceResponse$messages": "

A list of messages that were last sent to the user. The messages are ordered based on the order that you returned the messages from your Lambda function or the order that the messages are defined in the bot.

The messages field is compressed with gzip and then base64 encoded. Before you can use the contents of the field, you must decode and decompress the contents. See the example for a simple function to decode and decompress the contents.

", "RecognizeUtteranceResponse$interpretations": "

A list of intents that Amazon Lex V2 determined might satisfy the user's utterance.

Each interpretation includes the intent, a score that indicates how confident Amazon Lex V2 is that the interpretation is the correct one, and an optional sentiment response that indicates the sentiment expressed in the utterance.

The interpretations field is compressed with gzip and then base64 encoded. Before you can use the contents of the field, you must decode and decompress the contents. See the example for a simple function to decode and decompress the contents.

", @@ -419,8 +425,8 @@ "Slots$key": null, "StringList$member": null, "StringMap$key": null, - "Value$originalValue": "

The text of the utterance from the user that was entered for the slot.

", - "Value$interpretedValue": "

The value that Amazon Lex V2 determines for the slot. The actual value depends on the setting of the value selection strategy for the bot. You can choose to use the value entered by the user, or you can have Amazon Lex V2 choose the first value in the resolvedValues list.

" + "Value$originalValue": "

The part of the user's response to the slot elicitation that Amazon Lex V2 determines is relevant to the slot value.

", + "Value$interpretedValue": "

The value that Amazon Lex V2 determines for the slot, given the user input. The actual value depends on the setting of the value selection strategy for the bot. You can choose to use the value entered by the user, or you can have Amazon Lex V2 choose the first value in the resolvedValues list.

" } }, "ParameterName": { @@ -645,7 +651,7 @@ "StringList": { "base": null, "refs": { - "Value$resolvedValues": "

A list of additional values that have been recognized for the slot.

" + "Value$resolvedValues": "

A list of values that Amazon Lex V2 determines are possible resolutions for the user input. The first value matches the interpretedValue.

" } }, "StringMap": { @@ -662,7 +668,7 @@ "StyleType": { "base": null, "refs": { - "DialogAction$slotElicitationStyle": "

Configures the slot to use spell-by-letter or spell-by-word style. When you use a style on a slot, users can spell out their input to make it clear to your bot.

  • Spell by letter - \"b\" \"o\" \"b\"

  • Spell by word - \"b as in boy\" \"o as in oscar\" \"b as in boy\"

For more information, see Using spelling to enter slot values .

" + "DialogAction$slotElicitationStyle": "

Configures the slot to use spell-by-letter or spell-by-word style. When you use a style on a slot, users can spell out their input to make it clear to your bot.

  • Spell by letter - \"b\" \"o\" \"b\"

  • Spell by word - \"b as in boy\" \"o as in oscar\" \"b as in boy\"

For more information, see Using spelling to enter slot values .

" } }, "Text": { @@ -705,7 +711,7 @@ } }, "Value": { - "base": "

The value of a slot.

", + "base": "

Information about the value provided for a slot and Amazon Lex V2's interpretation.

", "refs": { "Slot$value": "

The current value of the slot.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,78 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -111,113 +62,161 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://runtime-v2-lex-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://runtime-v2-lex-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [], @@ -228,79 +227,88 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://runtime-v2-lex.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://runtime-v2-lex.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://runtime-v2-lex.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://runtime-v2-lex.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.lex.v2/2020-08-07/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,579 +1,403 @@ { "testCases": [ { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.ca-central-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.ca-central-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ca-central-1.api.aws" + "url": "https://runtime-v2-lex.af-south-1.amazonaws.com" } }, "params": { + "Region": "af-south-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ca-central-1" + "UseDualStack": false } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ca-central-1.amazonaws.com" + "url": "https://runtime-v2-lex.ap-northeast-1.amazonaws.com" } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.eu-central-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.eu-central-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.eu-central-1.api.aws" + "url": "https://runtime-v2-lex.ap-northeast-2.amazonaws.com" } }, "params": { + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-central-1" + "UseDualStack": false } }, { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.eu-central-1.amazonaws.com" + "url": "https://runtime-v2-lex.ap-southeast-1.amazonaws.com" } }, "params": { + "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.us-west-2.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.us-west-2.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.us-west-2.api.aws" + "url": "https://runtime-v2-lex.ap-southeast-2.amazonaws.com" } }, "params": { + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-west-2" + "UseDualStack": false } }, { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.us-west-2.amazonaws.com" + "url": "https://runtime-v2-lex.ca-central-1.amazonaws.com" } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.af-south-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "af-south-1" + "UseDualStack": false } }, { - "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.af-south-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "af-south-1" - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.af-south-1.api.aws" + "url": "https://runtime-v2-lex.eu-central-1.amazonaws.com" } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "af-south-1" + "UseDualStack": false } }, { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.af-south-1.amazonaws.com" + "url": "https://runtime-v2-lex.eu-west-1.amazonaws.com" } }, "params": { + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.eu-west-2.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.eu-west-2.amazonaws.com" + "url": "https://runtime-v2-lex.eu-west-2.amazonaws.com" } }, "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-2" + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.eu-west-2.api.aws" + "url": "https://runtime-v2-lex.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.eu-west-2.amazonaws.com" + "url": "https://runtime-v2-lex.us-west-2.amazonaws.com" } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.eu-west-1.api.aws" + "url": "https://runtime-v2-lex-fips.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "eu-west-1" + "UseDualStack": true } }, { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.eu-west-1.amazonaws.com" + "url": "https://runtime-v2-lex-fips.us-east-1.amazonaws.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex.eu-west-1.api.aws" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.eu-west-1.amazonaws.com" + "url": "https://runtime-v2-lex.us-east-1.api.aws" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-northeast-2.api.aws" + "url": "https://runtime-v2-lex-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-northeast-2.amazonaws.com" + "url": "https://runtime-v2-lex-fips.cn-north-1.amazonaws.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ap-northeast-2.api.aws" + "url": "https://runtime-v2-lex.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ap-northeast-2.amazonaws.com" + "url": "https://runtime-v2-lex.cn-north-1.amazonaws.com.cn" } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-northeast-1.api.aws" + "url": "https://runtime-v2-lex-fips.us-gov-east-1.api.aws" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-northeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-northeast-1.amazonaws.com" + "url": "https://runtime-v2-lex-fips.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ap-northeast-1.api.aws" + "url": "https://runtime-v2-lex.us-gov-east-1.api.aws" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-northeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ap-northeast-1.amazonaws.com" + "url": "https://runtime-v2-lex.us-gov-east-1.amazonaws.com" } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-southeast-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-southeast-1.amazonaws.com" + "url": "https://runtime-v2-lex-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://runtime-v2-lex.ap-southeast-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.ap-southeast-1.amazonaws.com" + "url": "https://runtime-v2-lex.us-iso-east-1.c2s.ic.gov" } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-southeast-2.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "ap-southeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.ap-southeast-2.amazonaws.com" + "url": "https://runtime-v2-lex-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex.ap-southeast-2.api.aws" - } - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "Region": "ap-southeast-2" - } - }, - { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://runtime-v2-lex.ap-southeast-2.amazonaws.com" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex-fips.us-east-1.api.aws" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://runtime-v2-lex.us-east-1.api.aws" + "url": "https://runtime-v2-lex.us-isob-east-1.sc2s.sgov.gov" } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://runtime-v2-lex.us-east-1.amazonaws.com" + "url": "https://example.com" } }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1" + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -582,7 +406,6 @@ "params": { "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -592,9 +415,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -604,11 +427,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.sagemaker/2017-05-13/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.sagemaker/2017-05-13/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.sagemaker/2017-05-13/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.sagemaker/2017-05-13/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -91,6 +91,11 @@ "max":1024, "pattern":"\\p{ASCII}*" }, + "InferenceComponentHeader":{ + "type":"string", + "max":63, + "pattern":"^[a-zA-Z0-9]([\\-a-zA-Z0-9]*[a-zA-Z0-9])?$" + }, "InferenceId":{ "type":"string", "max":64, @@ -254,6 +259,11 @@ "shape":"EnableExplanationsHeader", "location":"header", "locationName":"X-Amzn-SageMaker-Enable-Explanations" + }, + "InferenceComponentName":{ + "shape":"InferenceComponentHeader", + "location":"header", + "locationName":"X-Amzn-SageMaker-Inference-Component" } }, "payload":"Body" @@ -323,6 +333,11 @@ "shape":"InferenceId", "location":"header", "locationName":"X-Amzn-SageMaker-Inference-Id" + }, + "InferenceComponentName":{ + "shape":"InferenceComponentHeader", + "location":"header", + "locationName":"X-Amzn-SageMaker-Inference-Component" } }, "payload":"Body" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.sagemaker/2017-05-13/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.sagemaker/2017-05-13/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.sagemaker/2017-05-13/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.sagemaker/2017-05-13/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,7 +4,7 @@ "operations": { "InvokeEndpoint": "

After you deploy a model into production using Amazon SageMaker hosting services, your client applications use this API to get inferences from the model hosted at the specified endpoint.

For an overview of Amazon SageMaker, see How It Works.

Amazon SageMaker strips all POST headers except those supported by the API. Amazon SageMaker might add additional headers. You should not rely on the behavior of headers outside those enumerated in the request syntax.

Calls to InvokeEndpoint are authenticated by using Amazon Web Services Signature Version 4. For information, see Authenticating Requests (Amazon Web Services Signature Version 4) in the Amazon S3 API Reference.

A customer's model containers must respond to requests within 60 seconds. The model itself can have a maximum processing time of 60 seconds before responding to invocations. If your model is going to take 50-60 seconds of processing time, the SDK socket timeout should be set to be 70 seconds.

Endpoints are scoped to an individual account, and are not public. The URL does not contain the account ID, but Amazon SageMaker determines the account ID from the authentication token that is supplied by the caller.

", "InvokeEndpointAsync": "

After you deploy a model into production using Amazon SageMaker hosting services, your client applications use this API to get inferences from the model hosted at the specified endpoint in an asynchronous manner.

Inference requests sent to this API are enqueued for asynchronous processing. The processing of the inference request may or may not complete before you receive a response from this API. The response from this API will not contain the result of the inference request but contain information about where you can locate it.

Amazon SageMaker strips all POST headers except those supported by the API. Amazon SageMaker might add additional headers. You should not rely on the behavior of headers outside those enumerated in the request syntax.

Calls to InvokeEndpointAsync are authenticated by using Amazon Web Services Signature Version 4. For information, see Authenticating Requests (Amazon Web Services Signature Version 4) in the Amazon S3 API Reference.

", - "InvokeEndpointWithResponseStream": "

Invokes a model at the specified endpoint to return the inference response as a stream. The inference stream provides the response payload incrementally as a series of parts. Before you can get an inference stream, you must have access to a model that's deployed using Amazon SageMaker hosting services, and the container for that model must support inference streaming.

For more information that can help you use this API, see the following sections in the Amazon SageMaker Developer Guide:

Amazon SageMaker strips all POST headers except those supported by the API. Amazon SageMaker might add additional headers. You should not rely on the behavior of headers outside those enumerated in the request syntax.

Calls to InvokeEndpointWithResponseStream are authenticated by using Amazon Web Services Signature Version 4. For information, see Authenticating Requests (Amazon Web Services Signature Version 4) in the Amazon S3 API Reference.

" + "InvokeEndpointWithResponseStream": "

Invokes a model at the specified endpoint to return the inference response as a stream. The inference stream provides the response payload incrementally as a series of parts. Before you can get an inference stream, you must have access to a model that's deployed using Amazon SageMaker hosting services, and the container for that model must support inference streaming.

For more information that can help you use this API, see the following sections in the Amazon SageMaker Developer Guide:

Before you can use this operation, your IAM permissions must allow the sagemaker:InvokeEndpoint action. For more information about Amazon SageMaker actions for IAM policies, see Actions, resources, and condition keys for Amazon SageMaker in the IAM Service Authorization Reference.

Amazon SageMaker strips all POST headers except those supported by the API. Amazon SageMaker might add additional headers. You should not rely on the behavior of headers outside those enumerated in the request syntax.

Calls to InvokeEndpointWithResponseStream are authenticated by using Amazon Web Services Signature Version 4. For information, see Authenticating Requests (Amazon Web Services Signature Version 4) in the Amazon S3 API Reference.

" }, "shapes": { "BodyBlob": { @@ -63,6 +63,13 @@ "InvokeEndpointWithResponseStreamOutput$InvokedProductionVariant": "

Identifies the production variant that was invoked.

" } }, + "InferenceComponentHeader": { + "base": null, + "refs": { + "InvokeEndpointInput$InferenceComponentName": "

If the endpoint hosts one or more inference components, this parameter specifies the name of inference component to invoke.

", + "InvokeEndpointWithResponseStreamInput$InferenceComponentName": "

If the endpoint hosts one or more inference components, this parameter specifies the name of inference component to invoke for a streaming response.

" + } + }, "InferenceId": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.sagemaker/2017-05-13/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.sagemaker/2017-05-13/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/runtime.sagemaker/2017-05-13/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/runtime.sagemaker/2017-05-13/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws" ] } ], @@ -252,7 +248,6 @@ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -261,7 +256,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -281,14 +277,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -302,7 +300,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -322,7 +319,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -333,14 +329,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -351,9 +349,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -49,7 +49,10 @@ {"shape":"ObjectNotInActiveTierError"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectCOPY.html", - "alias":"PutObjectCopy" + "alias":"PutObjectCopy", + "staticContextParams":{ + "DisableS3ExpressSessionAuth":{"value":true} + } }, "CreateBucket":{ "name":"CreateBucket", @@ -66,7 +69,8 @@ "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUT.html", "alias":"PutBucket", "staticContextParams":{ - "DisableAccessPoints":{"value":true} + "DisableAccessPoints":{"value":true}, + "UseS3ExpressControlEndpoint":{"value":true} } }, "CreateMultipartUpload":{ @@ -80,6 +84,21 @@ "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadInitiate.html", "alias":"InitiateMultipartUpload" }, + "CreateSession":{ + "name":"CreateSession", + "http":{ + "method":"GET", + "requestUri":"/{Bucket}?session" + }, + "input":{"shape":"CreateSessionRequest"}, + "output":{"shape":"CreateSessionOutput"}, + "errors":[ + {"shape":"NoSuchBucket"} + ], + "staticContextParams":{ + "DisableS3ExpressSessionAuth":{"value":true} + } + }, "DeleteBucket":{ "name":"DeleteBucket", "http":{ @@ -88,7 +107,10 @@ "responseCode":204 }, "input":{"shape":"DeleteBucketRequest"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETE.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETE.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketAnalyticsConfiguration":{ "name":"DeleteBucketAnalyticsConfiguration", @@ -97,7 +119,10 @@ "requestUri":"/{Bucket}?analytics", "responseCode":204 }, - "input":{"shape":"DeleteBucketAnalyticsConfigurationRequest"} + "input":{"shape":"DeleteBucketAnalyticsConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketCors":{ "name":"DeleteBucketCors", @@ -107,7 +132,10 @@ "responseCode":204 }, "input":{"shape":"DeleteBucketCorsRequest"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEcors.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEcors.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketEncryption":{ "name":"DeleteBucketEncryption", @@ -116,7 +144,10 @@ "requestUri":"/{Bucket}?encryption", "responseCode":204 }, - "input":{"shape":"DeleteBucketEncryptionRequest"} + "input":{"shape":"DeleteBucketEncryptionRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketIntelligentTieringConfiguration":{ "name":"DeleteBucketIntelligentTieringConfiguration", @@ -125,7 +156,10 @@ "requestUri":"/{Bucket}?intelligent-tiering", "responseCode":204 }, - "input":{"shape":"DeleteBucketIntelligentTieringConfigurationRequest"} + "input":{"shape":"DeleteBucketIntelligentTieringConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketInventoryConfiguration":{ "name":"DeleteBucketInventoryConfiguration", @@ -134,7 +168,10 @@ "requestUri":"/{Bucket}?inventory", "responseCode":204 }, - "input":{"shape":"DeleteBucketInventoryConfigurationRequest"} + "input":{"shape":"DeleteBucketInventoryConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketLifecycle":{ "name":"DeleteBucketLifecycle", @@ -144,7 +181,10 @@ "responseCode":204 }, "input":{"shape":"DeleteBucketLifecycleRequest"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETElifecycle.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETElifecycle.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketMetricsConfiguration":{ "name":"DeleteBucketMetricsConfiguration", @@ -153,7 +193,10 @@ "requestUri":"/{Bucket}?metrics", "responseCode":204 }, - "input":{"shape":"DeleteBucketMetricsConfigurationRequest"} + "input":{"shape":"DeleteBucketMetricsConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketOwnershipControls":{ "name":"DeleteBucketOwnershipControls", @@ -162,7 +205,10 @@ "requestUri":"/{Bucket}?ownershipControls", "responseCode":204 }, - "input":{"shape":"DeleteBucketOwnershipControlsRequest"} + "input":{"shape":"DeleteBucketOwnershipControlsRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketPolicy":{ "name":"DeleteBucketPolicy", @@ -172,7 +218,10 @@ "responseCode":204 }, "input":{"shape":"DeleteBucketPolicyRequest"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEpolicy.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEpolicy.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketReplication":{ "name":"DeleteBucketReplication", @@ -181,7 +230,10 @@ "requestUri":"/{Bucket}?replication", "responseCode":204 }, - "input":{"shape":"DeleteBucketReplicationRequest"} + "input":{"shape":"DeleteBucketReplicationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketTagging":{ "name":"DeleteBucketTagging", @@ -191,7 +243,10 @@ "responseCode":204 }, "input":{"shape":"DeleteBucketTaggingRequest"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEtagging.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEtagging.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteBucketWebsite":{ "name":"DeleteBucketWebsite", @@ -201,7 +256,10 @@ "responseCode":204 }, "input":{"shape":"DeleteBucketWebsiteRequest"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEwebsite.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEwebsite.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "DeleteObject":{ "name":"DeleteObject", @@ -246,7 +304,10 @@ "requestUri":"/{Bucket}?publicAccessBlock", "responseCode":204 }, - "input":{"shape":"DeletePublicAccessBlockRequest"} + "input":{"shape":"DeletePublicAccessBlockRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketAccelerateConfiguration":{ "name":"GetBucketAccelerateConfiguration", @@ -255,7 +316,10 @@ "requestUri":"/{Bucket}?accelerate" }, "input":{"shape":"GetBucketAccelerateConfigurationRequest"}, - "output":{"shape":"GetBucketAccelerateConfigurationOutput"} + "output":{"shape":"GetBucketAccelerateConfigurationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketAcl":{ "name":"GetBucketAcl", @@ -265,7 +329,10 @@ }, "input":{"shape":"GetBucketAclRequest"}, "output":{"shape":"GetBucketAclOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETacl.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETacl.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketAnalyticsConfiguration":{ "name":"GetBucketAnalyticsConfiguration", @@ -274,7 +341,10 @@ "requestUri":"/{Bucket}?analytics" }, "input":{"shape":"GetBucketAnalyticsConfigurationRequest"}, - "output":{"shape":"GetBucketAnalyticsConfigurationOutput"} + "output":{"shape":"GetBucketAnalyticsConfigurationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketCors":{ "name":"GetBucketCors", @@ -284,7 +354,10 @@ }, "input":{"shape":"GetBucketCorsRequest"}, "output":{"shape":"GetBucketCorsOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETcors.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETcors.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketEncryption":{ "name":"GetBucketEncryption", @@ -293,7 +366,10 @@ "requestUri":"/{Bucket}?encryption" }, "input":{"shape":"GetBucketEncryptionRequest"}, - "output":{"shape":"GetBucketEncryptionOutput"} + "output":{"shape":"GetBucketEncryptionOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketIntelligentTieringConfiguration":{ "name":"GetBucketIntelligentTieringConfiguration", @@ -302,7 +378,10 @@ "requestUri":"/{Bucket}?intelligent-tiering" }, "input":{"shape":"GetBucketIntelligentTieringConfigurationRequest"}, - "output":{"shape":"GetBucketIntelligentTieringConfigurationOutput"} + "output":{"shape":"GetBucketIntelligentTieringConfigurationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketInventoryConfiguration":{ "name":"GetBucketInventoryConfiguration", @@ -311,7 +390,10 @@ "requestUri":"/{Bucket}?inventory" }, "input":{"shape":"GetBucketInventoryConfigurationRequest"}, - "output":{"shape":"GetBucketInventoryConfigurationOutput"} + "output":{"shape":"GetBucketInventoryConfigurationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketLifecycle":{ "name":"GetBucketLifecycle", @@ -322,7 +404,10 @@ "input":{"shape":"GetBucketLifecycleRequest"}, "output":{"shape":"GetBucketLifecycleOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlifecycle.html", - "deprecated":true + "deprecated":true, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketLifecycleConfiguration":{ "name":"GetBucketLifecycleConfiguration", @@ -331,7 +416,10 @@ "requestUri":"/{Bucket}?lifecycle" }, "input":{"shape":"GetBucketLifecycleConfigurationRequest"}, - "output":{"shape":"GetBucketLifecycleConfigurationOutput"} + "output":{"shape":"GetBucketLifecycleConfigurationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketLocation":{ "name":"GetBucketLocation", @@ -341,7 +429,10 @@ }, "input":{"shape":"GetBucketLocationRequest"}, "output":{"shape":"GetBucketLocationOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlocation.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlocation.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketLogging":{ "name":"GetBucketLogging", @@ -351,7 +442,10 @@ }, "input":{"shape":"GetBucketLoggingRequest"}, "output":{"shape":"GetBucketLoggingOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlogging.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlogging.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketMetricsConfiguration":{ "name":"GetBucketMetricsConfiguration", @@ -360,7 +454,10 @@ "requestUri":"/{Bucket}?metrics" }, "input":{"shape":"GetBucketMetricsConfigurationRequest"}, - "output":{"shape":"GetBucketMetricsConfigurationOutput"} + "output":{"shape":"GetBucketMetricsConfigurationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketNotification":{ "name":"GetBucketNotification", @@ -371,7 +468,10 @@ "input":{"shape":"GetBucketNotificationConfigurationRequest"}, "output":{"shape":"NotificationConfigurationDeprecated"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETnotification.html", - "deprecated":true + "deprecated":true, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketNotificationConfiguration":{ "name":"GetBucketNotificationConfiguration", @@ -380,7 +480,10 @@ "requestUri":"/{Bucket}?notification" }, "input":{"shape":"GetBucketNotificationConfigurationRequest"}, - "output":{"shape":"NotificationConfiguration"} + "output":{"shape":"NotificationConfiguration"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketOwnershipControls":{ "name":"GetBucketOwnershipControls", @@ -389,7 +492,10 @@ "requestUri":"/{Bucket}?ownershipControls" }, "input":{"shape":"GetBucketOwnershipControlsRequest"}, - "output":{"shape":"GetBucketOwnershipControlsOutput"} + "output":{"shape":"GetBucketOwnershipControlsOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketPolicy":{ "name":"GetBucketPolicy", @@ -399,7 +505,10 @@ }, "input":{"shape":"GetBucketPolicyRequest"}, "output":{"shape":"GetBucketPolicyOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETpolicy.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETpolicy.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketPolicyStatus":{ "name":"GetBucketPolicyStatus", @@ -408,7 +517,10 @@ "requestUri":"/{Bucket}?policyStatus" }, "input":{"shape":"GetBucketPolicyStatusRequest"}, - "output":{"shape":"GetBucketPolicyStatusOutput"} + "output":{"shape":"GetBucketPolicyStatusOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketReplication":{ "name":"GetBucketReplication", @@ -417,7 +529,10 @@ "requestUri":"/{Bucket}?replication" }, "input":{"shape":"GetBucketReplicationRequest"}, - "output":{"shape":"GetBucketReplicationOutput"} + "output":{"shape":"GetBucketReplicationOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketRequestPayment":{ "name":"GetBucketRequestPayment", @@ -427,7 +542,10 @@ }, "input":{"shape":"GetBucketRequestPaymentRequest"}, "output":{"shape":"GetBucketRequestPaymentOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTrequestPaymentGET.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTrequestPaymentGET.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketTagging":{ "name":"GetBucketTagging", @@ -437,7 +555,10 @@ }, "input":{"shape":"GetBucketTaggingRequest"}, "output":{"shape":"GetBucketTaggingOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETtagging.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETtagging.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketVersioning":{ "name":"GetBucketVersioning", @@ -447,7 +568,10 @@ }, "input":{"shape":"GetBucketVersioningRequest"}, "output":{"shape":"GetBucketVersioningOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETversioningStatus.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETversioningStatus.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetBucketWebsite":{ "name":"GetBucketWebsite", @@ -457,7 +581,10 @@ }, "input":{"shape":"GetBucketWebsiteRequest"}, "output":{"shape":"GetBucketWebsiteOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETwebsite.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETwebsite.html", + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "GetObject":{ "name":"GetObject", @@ -560,7 +687,10 @@ "requestUri":"/{Bucket}?publicAccessBlock" }, "input":{"shape":"GetPublicAccessBlockRequest"}, - "output":{"shape":"GetPublicAccessBlockOutput"} + "output":{"shape":"GetPublicAccessBlockOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "HeadBucket":{ "name":"HeadBucket", @@ -569,6 +699,7 @@ "requestUri":"/{Bucket}" }, "input":{"shape":"HeadBucketRequest"}, + "output":{"shape":"HeadBucketOutput"}, "errors":[ {"shape":"NoSuchBucket"} ], @@ -594,7 +725,10 @@ "requestUri":"/{Bucket}?analytics" }, "input":{"shape":"ListBucketAnalyticsConfigurationsRequest"}, - "output":{"shape":"ListBucketAnalyticsConfigurationsOutput"} + "output":{"shape":"ListBucketAnalyticsConfigurationsOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "ListBucketIntelligentTieringConfigurations":{ "name":"ListBucketIntelligentTieringConfigurations", @@ -603,7 +737,10 @@ "requestUri":"/{Bucket}?intelligent-tiering" }, "input":{"shape":"ListBucketIntelligentTieringConfigurationsRequest"}, - "output":{"shape":"ListBucketIntelligentTieringConfigurationsOutput"} + "output":{"shape":"ListBucketIntelligentTieringConfigurationsOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "ListBucketInventoryConfigurations":{ "name":"ListBucketInventoryConfigurations", @@ -612,7 +749,10 @@ "requestUri":"/{Bucket}?inventory" }, "input":{"shape":"ListBucketInventoryConfigurationsRequest"}, - "output":{"shape":"ListBucketInventoryConfigurationsOutput"} + "output":{"shape":"ListBucketInventoryConfigurationsOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "ListBucketMetricsConfigurations":{ "name":"ListBucketMetricsConfigurations", @@ -633,6 +773,18 @@ "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTServiceGET.html", "alias":"GetService" }, + "ListDirectoryBuckets":{ + "name":"ListDirectoryBuckets", + "http":{ + "method":"GET", + "requestUri":"/" + }, + "input":{"shape":"ListDirectoryBucketsRequest"}, + "output":{"shape":"ListDirectoryBucketsOutput"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } + }, "ListMultipartUploads":{ "name":"ListMultipartUploads", "http":{ @@ -700,6 +852,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":false + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketAcl":{ @@ -713,6 +868,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketAnalyticsConfiguration":{ @@ -721,7 +879,10 @@ "method":"PUT", "requestUri":"/{Bucket}?analytics" }, - "input":{"shape":"PutBucketAnalyticsConfigurationRequest"} + "input":{"shape":"PutBucketAnalyticsConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "PutBucketCors":{ "name":"PutBucketCors", @@ -734,6 +895,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketEncryption":{ @@ -746,6 +910,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketIntelligentTieringConfiguration":{ @@ -754,7 +921,10 @@ "method":"PUT", "requestUri":"/{Bucket}?intelligent-tiering" }, - "input":{"shape":"PutBucketIntelligentTieringConfigurationRequest"} + "input":{"shape":"PutBucketIntelligentTieringConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "PutBucketInventoryConfiguration":{ "name":"PutBucketInventoryConfiguration", @@ -762,7 +932,10 @@ "method":"PUT", "requestUri":"/{Bucket}?inventory" }, - "input":{"shape":"PutBucketInventoryConfigurationRequest"} + "input":{"shape":"PutBucketInventoryConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "PutBucketLifecycle":{ "name":"PutBucketLifecycle", @@ -776,6 +949,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketLifecycleConfiguration":{ @@ -788,6 +964,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketLogging":{ @@ -801,6 +980,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketMetricsConfiguration":{ @@ -809,7 +991,10 @@ "method":"PUT", "requestUri":"/{Bucket}?metrics" }, - "input":{"shape":"PutBucketMetricsConfigurationRequest"} + "input":{"shape":"PutBucketMetricsConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "PutBucketNotification":{ "name":"PutBucketNotification", @@ -823,6 +1008,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketNotificationConfiguration":{ @@ -831,7 +1019,10 @@ "method":"PUT", "requestUri":"/{Bucket}?notification" }, - "input":{"shape":"PutBucketNotificationConfigurationRequest"} + "input":{"shape":"PutBucketNotificationConfigurationRequest"}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "PutBucketOwnershipControls":{ "name":"PutBucketOwnershipControls", @@ -840,7 +1031,10 @@ "requestUri":"/{Bucket}?ownershipControls" }, "input":{"shape":"PutBucketOwnershipControlsRequest"}, - "httpChecksum":{"requestChecksumRequired":true} + "httpChecksum":{"requestChecksumRequired":true}, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} + } }, "PutBucketPolicy":{ "name":"PutBucketPolicy", @@ -853,6 +1047,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketReplication":{ @@ -865,6 +1062,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketRequestPayment":{ @@ -878,6 +1078,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketTagging":{ @@ -891,6 +1094,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketVersioning":{ @@ -904,6 +1110,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutBucketWebsite":{ @@ -917,6 +1126,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "PutObject":{ @@ -1012,6 +1224,9 @@ "httpChecksum":{ "requestAlgorithmMember":"ChecksumAlgorithm", "requestChecksumRequired":true + }, + "staticContextParams":{ + "UseS3ExpressControlEndpoint":{"value":true} } }, "RestoreObject":{ @@ -1067,7 +1282,10 @@ }, "input":{"shape":"UploadPartCopyRequest"}, "output":{"shape":"UploadPartCopyOutput"}, - "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadUploadPartCopy.html" + "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadUploadPartCopy.html", + "staticContextParams":{ + "DisableS3ExpressSessionAuth":{"value":true} + } }, "WriteGetObjectResponse":{ "name":"WriteGetObjectResponse", @@ -1119,6 +1337,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -1164,9 +1383,17 @@ "Owner":{"shape":"OwnerOverride"} } }, + "AccessKeyIdValue":{"type":"string"}, + "AccessPointAlias":{ + "type":"boolean", + "box":true + }, "AccessPointArn":{"type":"string"}, "AccountId":{"type":"string"}, - "AllowQuotedRecordDelimiter":{"type":"boolean"}, + "AllowQuotedRecordDelimiter":{ + "type":"boolean", + "box":true + }, "AllowedHeader":{"type":"string"}, "AllowedHeaders":{ "type":"list", @@ -1272,12 +1499,14 @@ "type":"structure", "members":{ }, + "error":{"httpStatusCode":409}, "exception":true }, "BucketAlreadyOwnedByYou":{ "type":"structure", "members":{ }, + "error":{"httpStatusCode":409}, "exception":true }, "BucketCannedACL":{ @@ -1289,7 +1518,17 @@ "authenticated-read" ] }, - "BucketKeyEnabled":{"type":"boolean"}, + "BucketInfo":{ + "type":"structure", + "members":{ + "DataRedundancy":{"shape":"DataRedundancy"}, + "Type":{"shape":"BucketType"} + } + }, + "BucketKeyEnabled":{ + "type":"boolean", + "box":true + }, "BucketLifecycleConfiguration":{ "type":"structure", "required":["Rules"], @@ -1309,6 +1548,7 @@ "ap-northeast-2", "ap-northeast-3", "ap-south-1", + "ap-south-2", "ap-southeast-1", "ap-southeast-2", "ap-southeast-3", @@ -1319,6 +1559,7 @@ "eu-central-1", "eu-north-1", "eu-south-1", + "eu-south-2", "eu-west-1", "eu-west-2", "eu-west-3", @@ -1328,11 +1569,10 @@ "us-gov-east-1", "us-gov-west-1", "us-west-1", - "us-west-2", - "ap-south-2", - "eu-south-2" + "us-west-2" ] }, + "BucketLocationName":{"type":"string"}, "BucketLoggingStatus":{ "type":"structure", "members":{ @@ -1348,6 +1588,10 @@ ] }, "BucketName":{"type":"string"}, + "BucketType":{ + "type":"string", + "enum":["Directory"] + }, "BucketVersioningStatus":{ "type":"string", "enum":[ @@ -1362,10 +1606,22 @@ "locationName":"Bucket" } }, - "BypassGovernanceRetention":{"type":"boolean"}, - "BytesProcessed":{"type":"long"}, - "BytesReturned":{"type":"long"}, - "BytesScanned":{"type":"long"}, + "BypassGovernanceRetention":{ + "type":"boolean", + "box":true + }, + "BytesProcessed":{ + "type":"long", + "box":true + }, + "BytesReturned":{ + "type":"long", + "box":true + }, + "BytesScanned":{ + "type":"long", + "box":true + }, "CORSConfiguration":{ "type":"structure", "required":["CORSRules"], @@ -1552,6 +1808,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -1653,7 +1910,10 @@ "KeyPrefixEquals":{"shape":"KeyPrefixEquals"} } }, - "ConfirmRemoveSelfBucketAccess":{"type":"boolean"}, + "ConfirmRemoveSelfBucketAccess":{ + "type":"boolean", + "box":true + }, "ContentDisposition":{"type":"string"}, "ContentEncoding":{"type":"string"}, "ContentLanguage":{"type":"string"}, @@ -1981,7 +2241,9 @@ "CreateBucketConfiguration":{ "type":"structure", "members":{ - "LocationConstraint":{"shape":"BucketLocationConstraint"} + "LocationConstraint":{"shape":"BucketLocationConstraint"}, + "Location":{"shape":"LocationInfo"}, + "Bucket":{"shape":"BucketInfo"} } }, "CreateBucketOutput":{ @@ -2183,6 +2445,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -2273,13 +2536,50 @@ } } }, + "CreateSessionOutput":{ + "type":"structure", + "required":["Credentials"], + "members":{ + "Credentials":{ + "shape":"SessionCredentials", + "locationName":"Credentials" + } + } + }, + "CreateSessionRequest":{ + "type":"structure", + "required":["Bucket"], + "members":{ + "SessionMode":{ + "shape":"SessionMode", + "location":"header", + "locationName":"x-amz-create-session-mode" + }, + "Bucket":{ + "shape":"BucketName", + "contextParam":{"name":"Bucket"}, + "location":"uri", + "locationName":"Bucket" + } + } + }, "CreationDate":{"type":"timestamp"}, + "DataRedundancy":{ + "type":"string", + "enum":["SingleAvailabilityZone"] + }, "Date":{ "type":"timestamp", "timestampFormat":"iso8601" }, - "Days":{"type":"integer"}, - "DaysAfterInitiation":{"type":"integer"}, + "Days":{ + "type":"integer", + "box":true + }, + "DaysAfterInitiation":{ + "type":"integer", + "box":true + }, "DefaultRetention":{ "type":"structure", "members":{ @@ -2612,6 +2912,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -2789,10 +3090,18 @@ "Metrics":{"shape":"Metrics"} } }, + "DirectoryBucketToken":{ + "type":"string", + "max":1024, + "min":0 + }, "DisplayName":{"type":"string"}, "ETag":{"type":"string"}, "EmailAddress":{"type":"string"}, - "EnableRequestProgress":{"type":"boolean"}, + "EnableRequestProgress":{ + "type":"boolean", + "box":true + }, "EncodingType":{ "type":"string", "enum":["url"] @@ -2812,7 +3121,10 @@ "ReplicaKmsKeyID":{"shape":"ReplicaKmsKeyID"} } }, - "End":{"type":"long"}, + "End":{ + "type":"long", + "box":true + }, "EndEvent":{ "type":"structure", "members":{ @@ -2906,7 +3218,10 @@ "Disabled" ] }, - "ExpiredObjectDeleteMarker":{"type":"boolean"}, + "ExpiredObjectDeleteMarker":{ + "type":"boolean", + "box":true + }, "Expires":{"type":"timestamp"}, "ExposeHeader":{"type":"string"}, "ExposeHeaders":{ @@ -2919,7 +3234,10 @@ "type":"string", "enum":["SQL"] }, - "FetchOwner":{"type":"boolean"}, + "FetchOwner":{ + "type":"boolean", + "box":true + }, "FieldDelimiter":{"type":"string"}, "FileHeaderInfo":{ "type":"string", @@ -3523,6 +3841,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -3942,6 +4261,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -4022,7 +4342,10 @@ } } }, - "GetObjectResponseStatusCode":{"type":"integer"}, + "GetObjectResponseStatusCode":{ + "type":"integer", + "box":true + }, "GetObjectRetentionOutput":{ "type":"structure", "members":{ @@ -4226,6 +4549,31 @@ "locationName":"Grant" } }, + "HeadBucketOutput":{ + "type":"structure", + "members":{ + "BucketLocationType":{ + "shape":"LocationType", + "location":"header", + "locationName":"x-amz-bucket-location-type" + }, + "BucketLocationName":{ + "shape":"BucketLocationName", + "location":"header", + "locationName":"x-amz-bucket-location-name" + }, + "BucketRegion":{ + "shape":"Region", + "location":"header", + "locationName":"x-amz-bucket-region" + }, + "AccessPointAlias":{ + "shape":"AccessPointAlias", + "location":"header", + "locationName":"x-amz-access-point-alias" + } + } + }, "HeadBucketRequest":{ "type":"structure", "required":["Bucket"], @@ -4453,6 +4801,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -4575,7 +4924,10 @@ "member":{"shape":"IntelligentTieringConfiguration"}, "flattened":true }, - "IntelligentTieringDays":{"type":"integer"}, + "IntelligentTieringDays":{ + "type":"integer", + "box":true + }, "IntelligentTieringFilter":{ "type":"structure", "members":{ @@ -4598,6 +4950,7 @@ "StorageClass":{"shape":"StorageClass"}, "AccessTier":{"shape":"IntelligentTieringAccessTier"} }, + "error":{"httpStatusCode":403}, "exception":true }, "InventoryConfiguration":{ @@ -4722,11 +5075,26 @@ "Frequency":{"shape":"InventoryFrequency"} } }, - "IsEnabled":{"type":"boolean"}, - "IsLatest":{"type":"boolean"}, - "IsPublic":{"type":"boolean"}, - "IsRestoreInProgress":{"type":"boolean"}, - "IsTruncated":{"type":"boolean"}, + "IsEnabled":{ + "type":"boolean", + "box":true + }, + "IsLatest":{ + "type":"boolean", + "box":true + }, + "IsPublic":{ + "type":"boolean", + "box":true + }, + "IsRestoreInProgress":{ + "type":"boolean", + "box":true + }, + "IsTruncated":{ + "type":"boolean", + "box":true + }, "JSONInput":{ "type":"structure", "members":{ @@ -4984,6 +5352,28 @@ "Owner":{"shape":"Owner"} } }, + "ListDirectoryBucketsOutput":{ + "type":"structure", + "members":{ + "Buckets":{"shape":"Buckets"}, + "ContinuationToken":{"shape":"DirectoryBucketToken"} + } + }, + "ListDirectoryBucketsRequest":{ + "type":"structure", + "members":{ + "ContinuationToken":{ + "shape":"DirectoryBucketToken", + "location":"querystring", + "locationName":"continuation-token" + }, + "MaxDirectoryBuckets":{ + "shape":"MaxDirectoryBuckets", + "location":"querystring", + "locationName":"max-directory-buckets" + } + } + }, "ListMultipartUploadsOutput":{ "type":"structure", "members":{ @@ -5041,6 +5431,7 @@ }, "Prefix":{ "shape":"Prefix", + "contextParam":{"name":"Prefix"}, "location":"querystring", "locationName":"prefix" }, @@ -5122,6 +5513,7 @@ }, "Prefix":{ "shape":"Prefix", + "contextParam":{"name":"Prefix"}, "location":"querystring", "locationName":"prefix" }, @@ -5199,6 +5591,7 @@ }, "Prefix":{ "shape":"Prefix", + "contextParam":{"name":"Prefix"}, "location":"querystring", "locationName":"prefix" }, @@ -5268,6 +5661,7 @@ }, "Prefix":{ "shape":"Prefix", + "contextParam":{"name":"Prefix"}, "location":"querystring", "locationName":"prefix" }, @@ -5354,6 +5748,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -5400,7 +5795,19 @@ } }, "Location":{"type":"string"}, + "LocationInfo":{ + "type":"structure", + "members":{ + "Type":{"shape":"LocationType"}, + "Name":{"shape":"LocationNameAsString"} + } + }, + "LocationNameAsString":{"type":"string"}, "LocationPrefix":{"type":"string"}, + "LocationType":{ + "type":"string", + "enum":["AvailabilityZone"] + }, "LoggingEnabled":{ "type":"structure", "required":[ @@ -5410,7 +5817,8 @@ "members":{ "TargetBucket":{"shape":"TargetBucket"}, "TargetGrants":{"shape":"TargetGrants"}, - "TargetPrefix":{"shape":"TargetPrefix"} + "TargetPrefix":{"shape":"TargetPrefix"}, + "TargetObjectKeyFormat":{"shape":"TargetObjectKeyFormat"} } }, "MFA":{"type":"string"}, @@ -5429,7 +5837,16 @@ ] }, "Marker":{"type":"string"}, - "MaxAgeSeconds":{"type":"integer"}, + "MaxAgeSeconds":{ + "type":"integer", + "box":true + }, + "MaxDirectoryBuckets":{ + "type":"integer", + "box":true, + "max":1000, + "min":0 + }, "MaxKeys":{"type":"integer"}, "MaxParts":{"type":"integer"}, "MaxUploads":{"type":"integer"}, @@ -5505,7 +5922,10 @@ "Disabled" ] }, - "Minutes":{"type":"integer"}, + "Minutes":{ + "type":"integer", + "box":true + }, "MissingMeta":{"type":"integer"}, "MultipartUpload":{ "type":"structure", @@ -5527,7 +5947,10 @@ }, "NextKeyMarker":{"type":"string"}, "NextMarker":{"type":"string"}, - "NextPartNumberMarker":{"type":"integer"}, + "NextPartNumberMarker":{ + "type":"integer", + "box":true + }, "NextToken":{"type":"string"}, "NextUploadIdMarker":{"type":"string"}, "NextVersionIdMarker":{"type":"string"}, @@ -5535,18 +5958,21 @@ "type":"structure", "members":{ }, + "error":{"httpStatusCode":404}, "exception":true }, "NoSuchKey":{ "type":"structure", "members":{ }, + "error":{"httpStatusCode":404}, "exception":true }, "NoSuchUpload":{ "type":"structure", "members":{ }, + "error":{"httpStatusCode":404}, "exception":true }, "NoncurrentVersionExpiration":{ @@ -5622,6 +6048,7 @@ "type":"structure", "members":{ }, + "error":{"httpStatusCode":403}, "exception":true }, "ObjectAttributes":{ @@ -5683,7 +6110,10 @@ "type":"string", "enum":["Enabled"] }, - "ObjectLockEnabledForBucket":{"type":"boolean"}, + "ObjectLockEnabledForBucket":{ + "type":"boolean", + "box":true + }, "ObjectLockLegalHold":{ "type":"structure", "members":{ @@ -5733,6 +6163,7 @@ "type":"structure", "members":{ }, + "error":{"httpStatusCode":403}, "exception":true }, "ObjectOwnership":{ @@ -5754,9 +6185,18 @@ "ChecksumSHA256":{"shape":"ChecksumSHA256"} } }, - "ObjectSize":{"type":"long"}, - "ObjectSizeGreaterThanBytes":{"type":"long"}, - "ObjectSizeLessThanBytes":{"type":"long"}, + "ObjectSize":{ + "type":"long", + "box":true + }, + "ObjectSizeGreaterThanBytes":{ + "type":"long", + "box":true + }, + "ObjectSizeLessThanBytes":{ + "type":"long", + "box":true + }, "ObjectStorageClass":{ "type":"string", "enum":[ @@ -5769,7 +6209,8 @@ "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", - "SNOW" + "SNOW", + "EXPRESS_ONEZONE" ] }, "ObjectVersion":{ @@ -5871,12 +6312,29 @@ }, "PartNumber":{"type":"integer"}, "PartNumberMarker":{"type":"integer"}, + "PartitionDateSource":{ + "type":"string", + "enum":[ + "EventTime", + "DeliveryTime" + ] + }, + "PartitionedPrefix":{ + "type":"structure", + "members":{ + "PartitionDateSource":{"shape":"PartitionDateSource"} + }, + "locationName":"PartitionedPrefix" + }, "Parts":{ "type":"list", "member":{"shape":"Part"}, "flattened":true }, - "PartsCount":{"type":"integer"}, + "PartsCount":{ + "type":"integer", + "box":true + }, "PartsList":{ "type":"list", "member":{"shape":"ObjectPart"}, @@ -5910,7 +6368,10 @@ } }, "Prefix":{"type":"string"}, - "Priority":{"type":"integer"}, + "Priority":{ + "type":"integer", + "box":true + }, "Progress":{ "type":"structure", "members":{ @@ -6738,6 +7199,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -7057,6 +7519,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -7347,7 +7810,10 @@ "member":{"shape":"QueueConfiguration"}, "flattened":true }, - "Quiet":{"type":"boolean"}, + "Quiet":{ + "type":"boolean", + "box":true + }, "QuoteCharacter":{"type":"string"}, "QuoteEscapeCharacter":{"type":"string"}, "QuoteFields":{ @@ -7387,6 +7853,11 @@ "Protocol":{"shape":"Protocol"} } }, + "Region":{ + "type":"string", + "max":20, + "min":0 + }, "ReplaceKeyPrefixWith":{"type":"string"}, "ReplaceKeyWith":{"type":"string"}, "ReplicaKmsKeyID":{"type":"string"}, @@ -7476,7 +7947,8 @@ "COMPLETE", "PENDING", "FAILED", - "REPLICA" + "REPLICA", + "COMPLETED" ] }, "ReplicationTime":{ @@ -7842,9 +8314,63 @@ "member":{"shape":"ServerSideEncryptionRule"}, "flattened":true }, - "Setting":{"type":"boolean"}, - "Size":{"type":"long"}, - "SkipValidation":{"type":"boolean"}, + "SessionCredentialValue":{ + "type":"string", + "sensitive":true + }, + "SessionCredentials":{ + "type":"structure", + "required":[ + "AccessKeyId", + "SecretAccessKey", + "SessionToken", + "Expiration" + ], + "members":{ + "AccessKeyId":{ + "shape":"AccessKeyIdValue", + "locationName":"AccessKeyId" + }, + "SecretAccessKey":{ + "shape":"SessionCredentialValue", + "locationName":"SecretAccessKey" + }, + "SessionToken":{ + "shape":"SessionCredentialValue", + "locationName":"SessionToken" + }, + "Expiration":{ + "shape":"SessionExpiration", + "locationName":"Expiration" + } + } + }, + "SessionExpiration":{"type":"timestamp"}, + "SessionMode":{ + "type":"string", + "enum":[ + "ReadOnly", + "ReadWrite" + ] + }, + "Setting":{ + "type":"boolean", + "box":true + }, + "SimplePrefix":{ + "type":"structure", + "members":{ + }, + "locationName":"SimplePrefix" + }, + "Size":{ + "type":"long", + "box":true + }, + "SkipValidation":{ + "type":"boolean", + "box":true + }, "SourceSelectionCriteria":{ "type":"structure", "members":{ @@ -7866,7 +8392,10 @@ "Disabled" ] }, - "Start":{"type":"long"}, + "Start":{ + "type":"long", + "box":true + }, "StartAfter":{"type":"string"}, "Stats":{ "type":"structure", @@ -7898,7 +8427,8 @@ "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", - "SNOW" + "SNOW", + "EXPRESS_ONEZONE" ] }, "StorageClassAnalysis":{ @@ -7934,7 +8464,10 @@ "Value":{"shape":"Value"} } }, - "TagCount":{"type":"integer"}, + "TagCount":{ + "type":"integer", + "box":true + }, "TagSet":{ "type":"list", "member":{ @@ -7972,6 +8505,19 @@ "locationName":"Grant" } }, + "TargetObjectKeyFormat":{ + "type":"structure", + "members":{ + "SimplePrefix":{ + "shape":"SimplePrefix", + "locationName":"SimplePrefix" + }, + "PartitionedPrefix":{ + "shape":"PartitionedPrefix", + "locationName":"PartitionedPrefix" + } + } + }, "TargetPrefix":{"type":"string"}, "Tier":{ "type":"string", @@ -8338,6 +8884,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, @@ -8387,7 +8934,10 @@ } }, "Value":{"type":"string"}, - "VersionCount":{"type":"integer"}, + "VersionCount":{ + "type":"integer", + "box":true + }, "VersionIdMarker":{"type":"string"}, "VersioningConfiguration":{ "type":"structure", @@ -8619,7 +9169,10 @@ }, "payload":"Body" }, - "Years":{"type":"integer"} + "Years":{ + "type":"integer", + "box":true + } }, "clientContextParams":{ "Accelerate":{ @@ -8630,6 +9183,10 @@ "documentation":"Disables this client's usage of Multi-Region Access Points.", "type":"boolean" }, + "DisableS3ExpressSessionAuth":{ + "documentation":"Disables this client's usage of Session Auth for S3Express\n buckets and reverts to using conventional SigV4 for those.", + "type":"boolean" + }, "ForcePathStyle":{ "documentation":"Forces this client to use path-style addressing for buckets.", "type":"boolean" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,110 +2,112 @@ "version": "2.0", "service": "

", "operations": { - "AbortMultipartUpload": "

This action aborts a multipart upload. After a multipart upload is aborted, no additional parts can be uploaded using that upload ID. The storage consumed by any previously uploaded parts will be freed. However, if any part uploads are currently in progress, those part uploads might or might not succeed. As a result, it might be necessary to abort a given multipart upload multiple times in order to completely free all storage consumed by all parts.

To verify that all parts have been removed, so you don't get charged for the part storage, you should call the ListParts action and ensure that the parts list is empty.

For information about permissions required to use the multipart upload, see Multipart Upload and Permissions.

The following operations are related to AbortMultipartUpload:

", - "CompleteMultipartUpload": "

Completes a multipart upload by assembling previously uploaded parts.

You first initiate the multipart upload and then upload all parts using the UploadPart operation. After successfully uploading all relevant parts of an upload, you call this action to complete the upload. Upon receiving this request, Amazon S3 concatenates all the parts in ascending order by part number to create a new object. In the Complete Multipart Upload request, you must provide the parts list. You must ensure that the parts list is complete. This action concatenates the parts that you provide in the list. For each part in the list, you must provide the part number and the ETag value, returned after that part was uploaded.

Processing of a Complete Multipart Upload request could take several minutes to complete. After Amazon S3 begins processing the request, it sends an HTTP response header that specifies a 200 OK response. While processing is in progress, Amazon S3 periodically sends white space characters to keep the connection from timing out. A request could fail after the initial 200 OK response has been sent. This means that a 200 OK response can contain either a success or an error. If you call the S3 API directly, make sure to design your application to parse the contents of the response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and apply error handling per your configuration settings (including automatically retrying the request as appropriate). If the condition persists, the SDKs throws an exception (or, for the SDKs that don't use exceptions, they return the error).

Note that if CompleteMultipartUpload fails, applications should be prepared to retry the failed requests. For more information, see Amazon S3 Error Best Practices.

You cannot use Content-Type: application/x-www-form-urlencoded with Complete Multipart Upload requests. Also, if you do not provide a Content-Type header, CompleteMultipartUpload returns a 200 OK response.

For more information about multipart uploads, see Uploading Objects Using Multipart Upload.

For information about permissions required to use the multipart upload API, see Multipart Upload and Permissions.

CompleteMultipartUpload has the following special errors:

  • Error code: EntityTooSmall

    • Description: Your proposed upload is smaller than the minimum allowed object size. Each part must be at least 5 MB in size, except the last part.

    • 400 Bad Request

  • Error code: InvalidPart

    • Description: One or more of the specified parts could not be found. The part might not have been uploaded, or the specified entity tag might not have matched the part's entity tag.

    • 400 Bad Request

  • Error code: InvalidPartOrder

    • Description: The list of parts was not in ascending order. The parts list must be specified in order by part number.

    • 400 Bad Request

  • Error code: NoSuchUpload

    • Description: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

    • 404 Not Found

The following operations are related to CompleteMultipartUpload:

", - "CopyObject": "

Creates a copy of an object that is already stored in Amazon S3.

You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your object up to 5 GB in size in a single atomic action using this API. However, to copy an object greater than 5 GB, you must use the multipart upload Upload Part - Copy (UploadPartCopy) API. For more information, see Copy Object Using the REST Multipart Upload API.

All copy requests must be authenticated. Additionally, you must have read access to the source object and write access to the destination bucket. For more information, see REST Authentication. Both the Region that you want to copy the object from and the Region that you want to copy the object to must be enabled for your account.

A copy request might return an error when Amazon S3 receives the copy request or while Amazon S3 is copying the files. If the error occurs before the copy action starts, you receive a standard Amazon S3 error. If the error occurs during the copy operation, the error response is embedded in the 200 OK response. This means that a 200 OK response can contain either a success or an error. If you call the S3 API directly, make sure to design your application to parse the contents of the response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and apply error handling per your configuration settings (including automatically retrying the request as appropriate). If the condition persists, the SDKs throws an exception (or, for the SDKs that don't use exceptions, they return the error).

If the copy is successful, you receive a response with information about the copied object.

If the request is an HTTP 1.1 request, the response is chunk encoded. If it were not, it would not contain the content-length, and you would need to read the entire body.

The copy request charge is based on the storage class and Region that you specify for the destination object. The request can also result in a data retrieval charge for the source if the source storage class bills for data retrieval. For pricing information, see Amazon S3 pricing.

Amazon S3 transfer acceleration does not support cross-Region copies. If you request a cross-Region copy using a transfer acceleration endpoint, you get a 400 Bad Request error. For more information, see Transfer Acceleration.

Metadata

When copying an object, you can preserve all metadata (the default) or specify new metadata. However, the access control list (ACL) is not preserved and is set to private for the user making the request. To override the default ACL setting, specify a new ACL when generating a copy request. For more information, see Using ACLs.

To specify whether you want the object metadata copied from the source object or replaced with metadata provided in the request, you can optionally add the x-amz-metadata-directive header. When you grant permissions, you can use the s3:x-amz-metadata-directive condition key to enforce certain metadata behavior when objects are uploaded. For more information, see Specifying Conditions in a Policy in the Amazon S3 User Guide. For a complete list of Amazon S3-specific condition keys, see Actions, Resources, and Condition Keys for Amazon S3.

x-amz-website-redirect-location is unique to each object and must be specified in the request headers to copy the value.

x-amz-copy-source-if Headers

To only copy an object under certain conditions, such as whether the Etag matches or whether the object was modified before or after a specified date, use the following request parameters:

  • x-amz-copy-source-if-match

  • x-amz-copy-source-if-none-match

  • x-amz-copy-source-if-unmodified-since

  • x-amz-copy-source-if-modified-since

If both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are present in the request and evaluate as follows, Amazon S3 returns 200 OK and copies the data:

  • x-amz-copy-source-if-match condition evaluates to true

  • x-amz-copy-source-if-unmodified-since condition evaluates to false

If both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since headers are present in the request and evaluate as follows, Amazon S3 returns the 412 Precondition Failed response code:

  • x-amz-copy-source-if-none-match condition evaluates to false

  • x-amz-copy-source-if-modified-since condition evaluates to true

All headers with the x-amz- prefix, including x-amz-copy-source, must be signed.

Server-side encryption

Amazon S3 automatically encrypts all new objects that are copied to an S3 bucket. When copying an object, if you don't specify encryption information in your copy request, the encryption setting of the target object is set to the default encryption configuration of the destination bucket. By default, all buckets have a base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). If the destination bucket has a default encryption configuration that uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with customer-provided encryption keys (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided key to encrypt the target object copy.

When you perform a CopyObject operation, if you want to use a different type of encryption setting for the target object, you can use other appropriate encryption-related headers to encrypt the target object with a KMS key, an Amazon S3 managed key, or a customer-provided key. With server-side encryption, Amazon S3 encrypts your data as it writes your data to disks in its data centers and decrypts the data when you access it. If the encryption setting in your request is different from the default encryption configuration of the destination bucket, the encryption setting in your request takes precedence. If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary encryption information in your request so that Amazon S3 can decrypt the object for copying. For more information about server-side encryption, see Using Server-Side Encryption.

If a target object uses SSE-KMS, you can enable an S3 Bucket Key for the object. For more information, see Amazon S3 Bucket Keys in the Amazon S3 User Guide.

Access Control List (ACL)-Specific Request Headers

When copying an object, you can optionally use headers to grant ACL-based permissions. By default, all objects are private. Only the owner has full access control. When adding a new object, you can grant permissions to individual Amazon Web Services accounts or to predefined groups that are defined by Amazon S3. These permissions are then added to the ACL on the object. For more information, see Access Control List (ACL) Overview and Managing ACLs Using the REST API.

If the bucket that you're copying objects to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting only accept PUT requests that don't specify an ACL or PUT requests that specify bucket owner full control ACLs, such as the bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed in the XML format.

For more information, see Controlling ownership of objects and disabling ACLs in the Amazon S3 User Guide.

If your bucket uses the bucket owner enforced setting for Object Ownership, all objects written to the bucket by any account will be owned by the bucket owner.

Checksums

When copying an object, if it has a checksum, that checksum will be copied to the new object by default. When you copy the object over, you can optionally specify a different checksum algorithm to use with the x-amz-checksum-algorithm header.

Storage Class Options

You can use the CopyObject action to change the storage class of an object that is already stored in Amazon S3 by using the StorageClass parameter. For more information, see Storage Classes in the Amazon S3 User Guide.

If the source object's storage class is GLACIER or DEEP_ARCHIVE, or the object's storage class is INTELLIGENT_TIERING and it's S3 Intelligent-Tiering access tier is Archive Access or Deep Archive Access, you must restore a copy of this object before you can use it as a source object for the copy operation. For more information, see RestoreObject. For more information, see Copying Objects.

Versioning

By default, x-amz-copy-source header identifies the current version of an object to copy. If the current version is a delete marker, Amazon S3 behaves as if the object was deleted. To copy a different version, use the versionId subresource.

If you enable versioning on the target bucket, Amazon S3 generates a unique version ID for the object being copied. This version ID is different from the version ID of the source object. Amazon S3 returns the version ID of the copied object in the x-amz-version-id response header in the response.

If you do not enable versioning or suspend it on the target bucket, the version ID that Amazon S3 generates is always null.

The following operations are related to CopyObject:

", - "CreateBucket": "

Creates a new S3 bucket. To create a bucket, you must register with Amazon S3 and have a valid Amazon Web Services Access Key ID to authenticate requests. Anonymous requests are never allowed to create buckets. By creating the bucket, you become the bucket owner.

Not every string is an acceptable bucket name. For information about bucket naming restrictions, see Bucket naming rules.

If you want to create an Amazon S3 on Outposts bucket, see Create Bucket.

By default, the bucket is created in the US East (N. Virginia) Region. You can optionally specify a Region in the request body. To constrain the bucket creation to a specific Region, you can use LocationConstraint condition key. You might choose a Region to optimize latency, minimize costs, or address regulatory requirements. For example, if you reside in Europe, you will probably find it advantageous to create buckets in the Europe (Ireland) Region. For more information, see Accessing a bucket.

If you send your create bucket request to the s3.amazonaws.com endpoint, the request goes to the us-east-1 Region. Accordingly, the signature calculations in Signature Version 4 must use us-east-1 as the Region, even if the location constraint in the request specifies another Region where the bucket is to be created. If you create a bucket in a Region other than US East (N. Virginia), your application must be able to handle 307 redirect. For more information, see Virtual hosting of buckets.

Permissions

In addition to s3:CreateBucket, the following permissions are required when your CreateBucket request includes specific headers:

  • Access control lists (ACLs) - If your CreateBucket request specifies access control list (ACL) permissions and the ACL is public-read, public-read-write, authenticated-read, or if you specify access permissions explicitly through any other ACL, both s3:CreateBucket and s3:PutBucketAcl permissions are needed. If the ACL for the CreateBucket request is private or if the request doesn't specify any ACLs, only s3:CreateBucket permission is needed.

  • Object Lock - If ObjectLockEnabledForBucket is set to true in your CreateBucket request, s3:PutBucketObjectLockConfiguration and s3:PutBucketVersioning permissions are required.

  • S3 Object Ownership - If your CreateBucket request includes the x-amz-object-ownership header, then the s3:PutBucketOwnershipControls permission is required. By default, ObjectOwnership is set to BucketOWnerEnforced and ACLs are disabled. We recommend keeping ACLs disabled, except in uncommon use cases where you must control access for each object individually. If you want to change the ObjectOwnership setting, you can use the x-amz-object-ownership header in your CreateBucket request to set the ObjectOwnership setting of your choice. For more information about S3 Object Ownership, see Controlling object ownership in the Amazon S3 User Guide.

  • S3 Block Public Access - If your specific use case requires granting public access to your S3 resources, you can disable Block Public Access. You can create a new bucket with Block Public Access enabled, then separately call the DeletePublicAccessBlock API. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. By default, all Block Public Access settings are enabled for new buckets. To avoid inadvertent exposure of your resources, we recommend keeping the S3 Block Public Access settings enabled. For more information about S3 Block Public Access, see Blocking public access to your Amazon S3 storage in the Amazon S3 User Guide.

If your CreateBucket request sets BucketOwnerEnforced for Amazon S3 Object Ownership and specifies a bucket ACL that provides access to an external Amazon Web Services account, your request fails with a 400 error and returns the InvalidBucketAcLWithObjectOwnership error code. For more information, see Setting Object Ownership on an existing bucket in the Amazon S3 User Guide.

The following operations are related to CreateBucket:

", - "CreateMultipartUpload": "

This action initiates a multipart upload and returns an upload ID. This upload ID is used to associate all of the parts in the specific multipart upload. You specify this upload ID in each of your subsequent upload part requests (see UploadPart). You also include this upload ID in the final request to either complete or abort the multipart upload request.

For more information about multipart uploads, see Multipart Upload Overview.

If you have configured a lifecycle rule to abort incomplete multipart uploads, the upload must complete within the number of days specified in the bucket lifecycle configuration. Otherwise, the incomplete multipart upload becomes eligible for an abort action and Amazon S3 aborts the multipart upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

For information about the permissions required to use the multipart upload API, see Multipart Upload and Permissions.

For request signing, multipart upload is just a series of regular requests. You initiate a multipart upload, send one or more requests to upload parts, and then complete the multipart upload process. You sign each request individually. There is nothing special about signing multipart upload requests. For more information about signing, see Authenticating Requests (Amazon Web Services Signature Version 4).

After you initiate a multipart upload and upload one or more parts, to stop being charged for storing the uploaded parts, you must either complete or abort the multipart upload. Amazon S3 frees up the space used to store the parts and stop charging you for storing them only after you either complete or abort a multipart upload.

Server-side encryption is for data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers and decrypts it when you access it. Amazon S3 automatically encrypts all new objects that are uploaded to an S3 bucket. When doing a multipart upload, if you don't specify encryption information in your request, the encryption setting of the uploaded parts is set to the default encryption configuration of the destination bucket. By default, all buckets have a base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). If the destination bucket has a default encryption configuration that uses server-side encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided key to encrypt the uploaded parts. When you perform a CreateMultipartUpload operation, if you want to use a different type of encryption setting for the uploaded parts, you can request that Amazon S3 encrypts the object with a KMS key, an Amazon S3 managed key, or a customer-provided key. If the encryption setting in your request is different from the default encryption configuration of the destination bucket, the encryption setting in your request takes precedence. If you choose to provide your own encryption key, the request headers you provide in UploadPart and UploadPartCopy requests must match the headers you used in the request to initiate the upload by using CreateMultipartUpload. You can request that Amazon S3 save the uploaded parts encrypted with server-side encryption with an Amazon S3 managed key (SSE-S3), an Key Management Service (KMS) key (SSE-KMS), or a customer-provided encryption key (SSE-C).

To perform a multipart upload with encryption by using an Amazon Web Services KMS key, the requester must have permission to the kms:Decrypt and kms:GenerateDataKey* actions on the key. These permissions are required because Amazon S3 must decrypt and read data from the encrypted file parts before it completes the multipart upload. For more information, see Multipart upload API and permissions and Protecting data using server-side encryption with Amazon Web Services KMS in the Amazon S3 User Guide.

If your Identity and Access Management (IAM) user or role is in the same Amazon Web Services account as the KMS key, then you must have these permissions on the key policy. If your IAM user or role belongs to a different account than the key, then you must have the permissions on both the key policy and your IAM user or role.

For more information, see Protecting Data Using Server-Side Encryption.

Access Permissions

When copying an object, you can optionally specify the accounts or groups that should be granted specific permissions on the new object. There are two ways to grant the permissions using the request headers:

  • Specify a canned ACL with the x-amz-acl request header. For more information, see Canned ACL.

  • Specify access permissions explicitly with the x-amz-grant-read, x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control headers. These parameters map to the set of permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview.

You can use either a canned ACL or specify access permissions explicitly. You cannot do both.

Server-Side- Encryption-Specific Request Headers

Amazon S3 encrypts data by using server-side encryption with an Amazon S3 managed key (SSE-S3) by default. Server-side encryption is for data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers and decrypts it when you access it. You can request that Amazon S3 encrypts data at rest by using server-side encryption with other key options. The option you use depends on whether you want to use KMS keys (SSE-KMS) or provide your own encryption keys (SSE-C).

  • Use KMS keys (SSE-KMS) that include the Amazon Web Services managed key (aws/s3) and KMS customer managed keys stored in Key Management Service (KMS) – If you want Amazon Web Services to manage the keys used to encrypt data, specify the following headers in the request.

    • x-amz-server-side-encryption

    • x-amz-server-side-encryption-aws-kms-key-id

    • x-amz-server-side-encryption-context

    If you specify x-amz-server-side-encryption:aws:kms, but don't provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key (aws/s3 key) in KMS to protect the data.

    All GET and PUT requests for an object protected by KMS fail if you don't make them by using Secure Sockets Layer (SSL), Transport Layer Security (TLS), or Signature Version 4.

    For more information about server-side encryption with KMS keys (SSE-KMS), see Protecting Data Using Server-Side Encryption with KMS keys.

  • Use customer-provided encryption keys (SSE-C) – If you want to manage your own encryption keys, provide all the following headers in the request.

    • x-amz-server-side-encryption-customer-algorithm

    • x-amz-server-side-encryption-customer-key

    • x-amz-server-side-encryption-customer-key-MD5

    For more information about server-side encryption with customer-provided encryption keys (SSE-C), see Protecting data using server-side encryption with customer-provided encryption keys (SSE-C).

Access-Control-List (ACL)-Specific Request Headers

You also can use the following access control–related headers with this operation. By default, all objects are private. Only the owner has full access control. When adding a new object, you can grant permissions to individual Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are then added to the access control list (ACL) on the object. For more information, see Using ACLs. With this operation, you can grant access permissions using one of the following two methods:

  • Specify a canned ACL (x-amz-acl) — Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. For more information, see Canned ACL.

  • Specify access permissions explicitly — To explicitly grant access permissions to specific Amazon Web Services accounts or groups, use the following headers. Each header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview. In the header, you specify a list of grantees who get the specific permission. To grant permissions explicitly, use:

    • x-amz-grant-read

    • x-amz-grant-write

    • x-amz-grant-read-acp

    • x-amz-grant-write-acp

    • x-amz-grant-full-control

    You specify each grantee as a type=value pair, where the type is one of the following:

    • id – if the value specified is the canonical user ID of an Amazon Web Services account

    • uri – if you are granting permissions to a predefined group

    • emailAddress – if the value specified is the email address of an Amazon Web Services account

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      • US East (N. Virginia)

      • US West (N. California)

      • US West (Oregon)

      • Asia Pacific (Singapore)

      • Asia Pacific (Sydney)

      • Asia Pacific (Tokyo)

      • Europe (Ireland)

      • South America (São Paulo)

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

    x-amz-grant-read: id=\"11112222333\", id=\"444455556666\"

The following operations are related to CreateMultipartUpload:

", - "DeleteBucket": "

Deletes the S3 bucket. All objects (including all object versions and delete markers) in the bucket must be deleted before the bucket itself can be deleted.

The following operations are related to DeleteBucket:

", - "DeleteBucketAnalyticsConfiguration": "

Deletes an analytics configuration for the bucket (specified by the analytics configuration ID).

To use this operation, you must have permissions to perform the s3:PutAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis.

The following operations are related to DeleteBucketAnalyticsConfiguration:

", - "DeleteBucketCors": "

Deletes the cors configuration information set for the bucket.

To use this operation, you must have permission to perform the s3:PutBucketCORS action. The bucket owner has this permission by default and can grant this permission to others.

For information about cors, see Enabling Cross-Origin Resource Sharing in the Amazon S3 User Guide.

Related Resources

", - "DeleteBucketEncryption": "

This implementation of the DELETE action resets the default encryption for the bucket as server-side encryption with Amazon S3 managed keys (SSE-S3). For information about the bucket default encryption feature, see Amazon S3 Bucket Default Encryption in the Amazon S3 User Guide.

To use this operation, you must have permissions to perform the s3:PutEncryptionConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to your Amazon S3 Resources in the Amazon S3 User Guide.

The following operations are related to DeleteBucketEncryption:

", - "DeleteBucketIntelligentTieringConfiguration": "

Deletes the S3 Intelligent-Tiering configuration from the specified bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to DeleteBucketIntelligentTieringConfiguration include:

", - "DeleteBucketInventoryConfiguration": "

Deletes an inventory configuration (identified by the inventory ID) from the bucket.

To use this operation, you must have permissions to perform the s3:PutInventoryConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

Operations related to DeleteBucketInventoryConfiguration include:

", - "DeleteBucketLifecycle": "

Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 no longer automatically deletes any objects on the basis of rules contained in the deleted lifecycle configuration.

To use this operation, you must have permission to perform the s3:PutLifecycleConfiguration action. By default, the bucket owner has this permission and the bucket owner can grant this permission to others.

There is usually some time lag before lifecycle configuration deletion is fully propagated to all the Amazon S3 systems.

For more information about the object expiration, see Elements to Describe Lifecycle Actions.

Related actions include:

", - "DeleteBucketMetricsConfiguration": "

Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.

To use this operation, you must have permissions to perform the s3:PutMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to DeleteBucketMetricsConfiguration:

", - "DeleteBucketOwnershipControls": "

Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

For information about Amazon S3 Object Ownership, see Using Object Ownership.

The following operations are related to DeleteBucketOwnershipControls:

", - "DeleteBucketPolicy": "

This implementation of the DELETE action uses the policy subresource to delete the policy of a specified bucket. If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the DeleteBucketPolicy permissions on the specified bucket and belong to the bucket owner's account to use this operation.

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets, the root principal in a bucket owner's Amazon Web Services account can perform the GetBucketPolicy, PutBucketPolicy, and DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the root principal's access. Bucket owner root principals can only be blocked from performing these API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

For more information about bucket policies, see Using Bucket Policies and UserPolicies.

The following operations are related to DeleteBucketPolicy

", - "DeleteBucketReplication": "

Deletes the replication configuration from the bucket.

To use this operation, you must have permissions to perform the s3:PutReplicationConfiguration action. The bucket owner has these permissions by default and can grant it to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

It can take a while for the deletion of a replication configuration to fully propagate.

For information about replication configuration, see Replication in the Amazon S3 User Guide.

The following operations are related to DeleteBucketReplication:

", - "DeleteBucketTagging": "

Deletes the tags from the bucket.

To use this operation, you must have permission to perform the s3:PutBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others.

The following operations are related to DeleteBucketTagging:

", - "DeleteBucketWebsite": "

This action removes the website configuration for a bucket. Amazon S3 returns a 200 OK response upon successfully deleting a website configuration on the specified bucket. You will get a 200 OK response if the website configuration you are trying to delete does not exist on the bucket. Amazon S3 returns a 404 response if the bucket specified in the request does not exist.

This DELETE action requires the S3:DeleteBucketWebsite permission. By default, only the bucket owner can delete the website configuration attached to a bucket. However, bucket owners can grant other users permission to delete the website configuration by writing a bucket policy granting them the S3:DeleteBucketWebsite permission.

For more information about hosting websites, see Hosting Websites on Amazon S3.

The following operations are related to DeleteBucketWebsite:

", - "DeleteObject": "

Removes the null version (if there is one) of an object and inserts a delete marker, which becomes the latest version of the object. If there isn't a null version, Amazon S3 does not remove any objects but will still respond that the command was successful.

To remove a specific version, you must use the version Id subresource. Using this subresource permanently deletes the version. If the object deleted is a delete marker, Amazon S3 sets the response header, x-amz-delete-marker, to true.

If the object you want to delete is in a bucket where the bucket versioning configuration is MFA Delete enabled, you must include the x-amz-mfa request header in the DELETE versionId request. Requests that include x-amz-mfa must use HTTPS.

For more information about MFA Delete, see Using MFA Delete. To see sample requests that use versioning, see Sample Request.

You can delete objects by explicitly calling DELETE Object or configure its lifecycle (PutBucketLifecycle) to enable Amazon S3 to remove them for you. If you want to block users or accounts from removing or deleting objects from your bucket, you must deny them the s3:DeleteObject, s3:DeleteObjectVersion, and s3:PutLifeCycleConfiguration actions.

The following action is related to DeleteObject:

", - "DeleteObjectTagging": "

Removes the entire tag set from the specified object. For more information about managing object tags, see Object Tagging.

To use this operation, you must have permission to perform the s3:DeleteObjectTagging action.

To delete tags of a specific object version, add the versionId query parameter in the request. You will need permission for the s3:DeleteObjectVersionTagging action.

The following operations are related to DeleteObjectTagging:

", - "DeleteObjects": "

This action enables you to delete multiple objects from a bucket using a single HTTP request. If you know the object keys that you want to delete, then this action provides a suitable alternative to sending individual delete requests, reducing per-request overhead.

The request contains a list of up to 1000 keys that you want to delete. In the XML, you provide the object key names, and optionally, version IDs if you want to delete a specific version of the object from a versioning-enabled bucket. For each key, Amazon S3 performs a delete action and returns the result of that delete, success, or failure, in the response. Note that if the object specified in the request is not found, Amazon S3 returns the result as deleted.

The action supports two modes for the response: verbose and quiet. By default, the action uses verbose mode in which the response includes the result of deletion of each key in your request. In quiet mode the response includes only keys where the delete action encountered an error. For a successful deletion, the action does not return any information about the delete in the response body.

When performing this action on an MFA Delete enabled bucket, that attempts to delete any versioned objects, you must include an MFA token. If you do not provide one, the entire request will fail, even if there are non-versioned objects you are trying to delete. If you provide an invalid token, whether there are versioned keys in the request or not, the entire Multi-Object Delete request will fail. For information about MFA Delete, see MFA Delete.

Finally, the Content-MD5 header is required for all Multi-Object Delete requests. Amazon S3 uses the header value to ensure that your request body has not been altered in transit.

The following operations are related to DeleteObjects:

", - "DeletePublicAccessBlock": "

Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to DeletePublicAccessBlock:

", - "GetBucketAccelerateConfiguration": "

This implementation of the GET action uses the accelerate subresource to return the Transfer Acceleration state of a bucket, which is either Enabled or Suspended. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers to and from Amazon S3.

To use this operation, you must have permission to perform the s3:GetAccelerateConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to your Amazon S3 Resources in the Amazon S3 User Guide.

You set the Transfer Acceleration state of an existing bucket to Enabled or Suspended by using the PutBucketAccelerateConfiguration operation.

A GET accelerate request does not return a state value for a bucket that has no transfer acceleration state. A bucket has no Transfer Acceleration state if a state has never been set on the bucket.

For more information about transfer acceleration, see Transfer Acceleration in the Amazon S3 User Guide.

The following operations are related to GetBucketAccelerateConfiguration:

", - "GetBucketAcl": "

This implementation of the GET action uses the acl subresource to return the access control list (ACL) of a bucket. To use GET to return the ACL of the bucket, you must have READ_ACP access to the bucket. If READ_ACP permission is granted to the anonymous user, you can return the ACL of the bucket without using an authorization header.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read ACLs are still supported and return the bucket-owner-full-control ACL with the owner being the account that created the bucket. For more information, see Controlling object ownership and disabling ACLs in the Amazon S3 User Guide.

The following operations are related to GetBucketAcl:

", - "GetBucketAnalyticsConfiguration": "

This implementation of the GET action returns an analytics configuration (identified by the analytics configuration ID) from the bucket.

To use this operation, you must have permissions to perform the s3:GetAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis in the Amazon S3 User Guide.

The following operations are related to GetBucketAnalyticsConfiguration:

", - "GetBucketCors": "

Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the bucket.

To use this operation, you must have permission to perform the s3:GetBucketCORS action. By default, the bucket owner has this permission and can grant it to others.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

For more information about CORS, see Enabling Cross-Origin Resource Sharing.

The following operations are related to GetBucketCors:

", - "GetBucketEncryption": "

Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets have a default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). For information about the bucket default encryption feature, see Amazon S3 Bucket Default Encryption in the Amazon S3 User Guide.

To use this operation, you must have permission to perform the s3:GetEncryptionConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to GetBucketEncryption:

", - "GetBucketIntelligentTieringConfiguration": "

Gets the S3 Intelligent-Tiering configuration from the specified bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to GetBucketIntelligentTieringConfiguration include:

", - "GetBucketInventoryConfiguration": "

Returns an inventory configuration (identified by the inventory configuration ID) from the bucket.

To use this operation, you must have permissions to perform the s3:GetInventoryConfiguration action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

The following operations are related to GetBucketInventoryConfiguration:

", - "GetBucketLifecycle": "

For an updated version of this API, see GetBucketLifecycleConfiguration. If you configured a bucket lifecycle using the filter element, you should see the updated version of this topic. This topic is provided for backward compatibility.

Returns the lifecycle configuration information set on the bucket. For information about lifecycle configuration, see Object Lifecycle Management.

To use this operation, you must have permission to perform the s3:GetLifecycleConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

GetBucketLifecycle has the following special error:

  • Error code: NoSuchLifecycleConfiguration

    • Description: The lifecycle configuration does not exist.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

The following operations are related to GetBucketLifecycle:

", - "GetBucketLifecycleConfiguration": "

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name prefix, one or more object tags, or a combination of both. Accordingly, this section describes the latest API. The response describes the new filter element that you can use to specify a filter to select a subset of objects to which the rule applies. If you are using a previous version of the lifecycle configuration, it still works. For the earlier action, see GetBucketLifecycle.

Returns the lifecycle configuration information set on the bucket. For information about lifecycle configuration, see Object Lifecycle Management.

To use this operation, you must have permission to perform the s3:GetLifecycleConfiguration action. The bucket owner has this permission, by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

GetBucketLifecycleConfiguration has the following special error:

  • Error code: NoSuchLifecycleConfiguration

    • Description: The lifecycle configuration does not exist.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

The following operations are related to GetBucketLifecycleConfiguration:

", - "GetBucketLocation": "

Returns the Region the bucket resides in. You set the bucket's Region using the LocationConstraint request parameter in a CreateBucket request. For more information, see CreateBucket.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

We recommend that you use HeadBucket to return the Region that a bucket resides in. For backward compatibility, Amazon S3 continues to support GetBucketLocation.

The following operations are related to GetBucketLocation:

", - "GetBucketLogging": "

Returns the logging status of a bucket and the permissions users have to view and modify that status.

The following operations are related to GetBucketLogging:

", - "GetBucketMetricsConfiguration": "

Gets a metrics configuration (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.

To use this operation, you must have permissions to perform the s3:GetMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to GetBucketMetricsConfiguration:

", - "GetBucketNotification": "

No longer used, see GetBucketNotificationConfiguration.

", - "GetBucketNotificationConfiguration": "

Returns the notification configuration of a bucket.

If notifications are not enabled on the bucket, the action returns an empty NotificationConfiguration element.

By default, you must be the bucket owner to read the notification configuration of a bucket. However, the bucket owner can use a bucket policy to grant permission to other users to read this configuration with the s3:GetBucketNotification permission.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

For more information about setting and reading the notification configuration on a bucket, see Setting Up Notification of Bucket Events. For more information about bucket policies, see Using Bucket Policies.

The following action is related to GetBucketNotification:

", - "GetBucketOwnershipControls": "

Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying permissions in a policy.

For information about Amazon S3 Object Ownership, see Using Object Ownership.

The following operations are related to GetBucketOwnershipControls:

", - "GetBucketPolicy": "

Returns the policy of a specified bucket. If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the GetBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.

If you don't have GetBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets, the root principal in a bucket owner's Amazon Web Services account can perform the GetBucketPolicy, PutBucketPolicy, and DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the root principal's access. Bucket owner root principals can only be blocked from performing these API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

For more information about bucket policies, see Using Bucket Policies and User Policies.

The following action is related to GetBucketPolicy:

", - "GetBucketPolicyStatus": "

Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to use this operation, you must have the s3:GetBucketPolicyStatus permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

For more information about when Amazon S3 considers a bucket public, see The Meaning of \"Public\".

The following operations are related to GetBucketPolicyStatus:

", - "GetBucketReplication": "

Returns the replication configuration of a bucket.

It can take a while to propagate the put or delete a replication configuration to all Amazon S3 systems. Therefore, a get request soon after put or delete can return a wrong result.

For information about replication configuration, see Replication in the Amazon S3 User Guide.

This action requires permissions for the s3:GetReplicationConfiguration action. For more information about permissions, see Using Bucket Policies and User Policies.

If you include the Filter element in a replication configuration, you must also include the DeleteMarkerReplication and Priority elements. The response also returns those elements.

For information about GetBucketReplication errors, see List of replication-related error codes

The following operations are related to GetBucketReplication:

", - "GetBucketRequestPayment": "

Returns the request payment configuration of a bucket. To use this version of the operation, you must be the bucket owner. For more information, see Requester Pays Buckets.

The following operations are related to GetBucketRequestPayment:

", - "GetBucketTagging": "

Returns the tag set associated with the bucket.

To use this operation, you must have permission to perform the s3:GetBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others.

GetBucketTagging has the following special error:

  • Error code: NoSuchTagSet

    • Description: There is no tag set associated with the bucket.

The following operations are related to GetBucketTagging:

", - "GetBucketVersioning": "

Returns the versioning state of a bucket.

To retrieve the versioning state of a bucket, you must be the bucket owner.

This implementation also returns the MFA Delete status of the versioning state. If the MFA Delete status is enabled, the bucket owner must use an authentication device to change the versioning state of the bucket.

The following operations are related to GetBucketVersioning:

", - "GetBucketWebsite": "

Returns the website configuration for a bucket. To host website on Amazon S3, you can configure a bucket as website by adding a website configuration. For more information about hosting websites, see Hosting Websites on Amazon S3.

This GET action requires the S3:GetBucketWebsite permission. By default, only the bucket owner can read the bucket website configuration. However, bucket owners can allow other users to read the website configuration by writing a bucket policy granting them the S3:GetBucketWebsite permission.

The following operations are related to GetBucketWebsite:

", - "GetObject": "

Retrieves objects from Amazon S3. To use GET, you must have READ access to the object. If you grant READ access to the anonymous user, you can return the object without using an authorization header.

An Amazon S3 bucket has no directory hierarchy such as you would find in a typical computer file system. You can, however, create a logical hierarchy by using object key names that imply a folder structure. For example, instead of naming an object sample.jpg, you can name it photos/2006/February/sample.jpg.

To get an object from such a logical hierarchy, specify the full key name for the object in the GET operation. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg, specify the resource as /photos/2006/February/sample.jpg. For a path-style request example, if you have the object photos/2006/February/sample.jpg in the bucket named examplebucket, specify the resource as /examplebucket/photos/2006/February/sample.jpg. For more information about request types, see HTTP Host Header Bucket Specification.

For more information about returning the ACL of an object, see GetObjectAcl.

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you must first restore a copy using RestoreObject. Otherwise, this action returns an InvalidObjectState error. For information about restoring archived objects, see Restoring Archived Objects.

Encryption request headers, like x-amz-server-side-encryption, should not be sent for GET requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400 Bad Request error.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following headers:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys).

Assuming you have the relevant permission to read object tags, the response also returns the x-amz-tagging-count header that provides the count of number of tags associated with the object. You can use GetObjectTagging to retrieve the tag set associated with an object.

Permissions

You need the relevant read object (or version) permission for this operation. For more information, see Specifying Permissions in a Policy. If the object that you request doesn’t exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code 404 (Not Found) error.

If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP status code 403 (\"access denied\") error.

Versioning

By default, the GET action returns the current version of an object. To return a different version, use the versionId subresource.

  • If you supply a versionId, you need the s3:GetObjectVersion permission to access a specific version of an object. If you request a specific version, you do not need to have the s3:GetObject permission. If you request the current version without a specific version ID, only s3:GetObject permission is required. s3:GetObjectVersion permission won't be required.

  • If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

For more information about versioning, see PutBucketVersioning.

Overriding Response Header Values

There are times when you want to override certain response header values in a GET response. For example, you might override the Content-Disposition response header value in your GET request.

You can override values for a set of response headers using the following query parameters. These response header values are sent only on a successful request, that is, when status code 200 OK is returned. The set of headers you can override using these parameters is a subset of the headers that Amazon S3 accepts when you create an object. The response headers that you can override for the GET response are Content-Type, Content-Language, Expires, Cache-Control, Content-Disposition, and Content-Encoding. To override these header values in the GET response, you use the following request parameters.

You must sign the request, either using an Authorization header or a presigned URL, when using these parameters. They cannot be used with an unsigned (anonymous) request.

  • response-content-type

  • response-content-language

  • response-expires

  • response-cache-control

  • response-content-disposition

  • response-content-encoding

Overriding Response Header Values

If both of the If-Match and If-Unmodified-Since headers are present in the request as follows: If-Match condition evaluates to true, and; If-Unmodified-Since condition evaluates to false; then, S3 returns 200 OK and the data requested.

If both of the If-None-Match and If-Modified-Since headers are present in the request as follows: If-None-Match condition evaluates to false, and; If-Modified-Since condition evaluates to true; then, S3 returns 304 Not Modified response code.

For more information about conditional requests, see RFC 7232.

The following operations are related to GetObject:

", - "GetObjectAcl": "

Returns the access control list (ACL) of an object. To use this operation, you must have s3:GetObjectAcl permissions or READ_ACP access to the object. For more information, see Mapping of ACL permissions and access policy permissions in the Amazon S3 User Guide

This action is not supported by Amazon S3 on Outposts.

By default, GET returns ACL information about the current version of an object. To return ACL information about a different version, use the versionId subresource.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read ACLs are still supported and return the bucket-owner-full-control ACL with the owner being the account that created the bucket. For more information, see Controlling object ownership and disabling ACLs in the Amazon S3 User Guide.

The following operations are related to GetObjectAcl:

", - "GetObjectAttributes": "

Retrieves all the metadata from an object without returning the object itself. This action is useful if you're interested only in an object's metadata. To use GetObjectAttributes, you must have READ access to the object.

GetObjectAttributes combines the functionality of HeadObject and ListParts. All of the data returned with each of those individual calls can be returned with a single call to GetObjectAttributes.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the object, you must use the following headers:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

  • Encryption request headers, such as x-amz-server-side-encryption, should not be sent for GET requests if your object uses server-side encryption with Amazon Web Services KMS keys stored in Amazon Web Services Key Management Service (SSE-KMS) or server-side encryption with Amazon S3 managed keys (SSE-S3). If your object does use these types of keys, you'll get an HTTP 400 Bad Request error.

  • The last modified property in this case is the creation date of the object.

Consider the following when using request headers:

  • If both of the If-Match and If-Unmodified-Since headers are present in the request as follows, then Amazon S3 returns the HTTP status code 200 OK and the data requested:

    • If-Match condition evaluates to true.

    • If-Unmodified-Since condition evaluates to false.

  • If both of the If-None-Match and If-Modified-Since headers are present in the request as follows, then Amazon S3 returns the HTTP status code 304 Not Modified:

    • If-None-Match condition evaluates to false.

    • If-Modified-Since condition evaluates to true.

For more information about conditional requests, see RFC 7232.

Permissions

The permissions that you need to use this operation depend on whether the bucket is versioned. If the bucket is versioned, you need both the s3:GetObjectVersion and s3:GetObjectVersionAttributes permissions for this operation. If the bucket is not versioned, you need the s3:GetObject and s3:GetObjectAttributes permissions. For more information, see Specifying Permissions in a Policy in the Amazon S3 User Guide. If the object that you request does not exist, the error Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

  • If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code 404 Not Found (\"no such key\") error.

  • If you don't have the s3:ListBucket permission, Amazon S3 returns an HTTP status code 403 Forbidden (\"access denied\") error.

The following actions are related to GetObjectAttributes:

", - "GetObjectLegalHold": "

Gets an object's current legal hold status. For more information, see Locking Objects.

This action is not supported by Amazon S3 on Outposts.

The following action is related to GetObjectLegalHold:

", - "GetObjectLockConfiguration": "

Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see Locking Objects.

The following action is related to GetObjectLockConfiguration:

", - "GetObjectRetention": "

Retrieves an object's retention settings. For more information, see Locking Objects.

This action is not supported by Amazon S3 on Outposts.

The following action is related to GetObjectRetention:

", - "GetObjectTagging": "

Returns the tag-set of an object. You send the GET request against the tagging subresource associated with the object.

To use this operation, you must have permission to perform the s3:GetObjectTagging action. By default, the GET action returns information about current version of an object. For a versioned bucket, you can have multiple versions of an object in your bucket. To retrieve tags of any other version, use the versionId query parameter. You also need permission for the s3:GetObjectVersionTagging action.

By default, the bucket owner has this permission and can grant this permission to others.

For information about the Amazon S3 object tagging feature, see Object Tagging.

The following actions are related to GetObjectTagging:

", - "GetObjectTorrent": "

Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're distributing large files.

You can get torrent only for objects that are less than 5 GB in size, and that are not encrypted using server-side encryption with a customer-provided encryption key.

To use GET, you must have READ access to the object.

This action is not supported by Amazon S3 on Outposts.

The following action is related to GetObjectTorrent:

", - "GetPublicAccessBlock": "

Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketPublicAccessBlock permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an object, it checks the PublicAccessBlock configuration for both the bucket (or the bucket that contains the object) and the bucket owner's account. If the PublicAccessBlock settings are different between the bucket and the account, Amazon S3 uses the most restrictive combination of the bucket-level and account-level settings.

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

The following operations are related to GetPublicAccessBlock:

", - "HeadBucket": "

This action is useful to determine if a bucket exists and you have permission to access it. The action returns a 200 OK if the bucket exists and you have permission to access it.

If the bucket does not exist or you do not have permission to access it, the HEAD request returns a generic 400 Bad Request, 403 Forbidden or 404 Not Found code. A message body is not included, so you cannot determine the exception beyond these error codes.

To use this operation, you must have permissions to perform the s3:ListBucket action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

To use this API operation against an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using the Amazon Web Services SDKs, you provide the ARN in place of the bucket name. For more information, see Using access points.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", - "HeadObject": "

The HEAD action retrieves metadata from an object without returning the object itself. This action is useful if you're only interested in an object's metadata. To use HEAD, you must have READ access to the object.

A HEAD request has the same options as a GET action on an object. The response is identical to the GET response except that there is no response body. Because of this, if the HEAD request generates an error, it returns a generic 400 Bad Request, 403 Forbidden or 404 Not Found code. It is not possible to retrieve the exact exception beyond these error codes.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the object, you must use the following headers:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys).

  • Encryption request headers, like x-amz-server-side-encryption, should not be sent for GET requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does use these types of keys, you’ll get an HTTP 400 Bad Request error.

  • The last modified property in this case is the creation date of the object.

Request headers are limited to 8 KB in size. For more information, see Common Request Headers.

Consider the following when using request headers:

  • Consideration 1 – If both of the If-Match and If-Unmodified-Since headers are present in the request as follows:

    • If-Match condition evaluates to true, and;

    • If-Unmodified-Since condition evaluates to false;

    Then Amazon S3 returns 200 OK and the data requested.

  • Consideration 2 – If both of the If-None-Match and If-Modified-Since headers are present in the request as follows:

    • If-None-Match condition evaluates to false, and;

    • If-Modified-Since condition evaluates to true;

    Then Amazon S3 returns the 304 Not Modified response code.

For more information about conditional requests, see RFC 7232.

Permissions

You need the relevant read object (or version) permission for this operation. For more information, see Actions, resources, and condition keys for Amazon S3. If the object you request doesn't exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

  • If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code 404 error.

  • If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP status code 403 error.

The following actions are related to HeadObject:

", - "ListBucketAnalyticsConfigurations": "

Lists the analytics configurations for the bucket. You can have up to 1,000 analytics configurations per bucket.

This action supports list pagination and does not return more than 100 configurations at a time. You should always check the IsTruncated element in the response. If there are no more configurations to list, IsTruncated is set to false. If there are more configurations to list, IsTruncated is set to true, and there will be a value in NextContinuationToken. You use the NextContinuationToken value to continue the pagination of the list by passing the value in continuation-token in the request to GET the next page.

To use this operation, you must have permissions to perform the s3:GetAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis.

The following operations are related to ListBucketAnalyticsConfigurations:

", - "ListBucketIntelligentTieringConfigurations": "

Lists the S3 Intelligent-Tiering configuration from the specified bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to ListBucketIntelligentTieringConfigurations include:

", - "ListBucketInventoryConfigurations": "

Returns a list of inventory configurations for the bucket. You can have up to 1,000 analytics configurations per bucket.

This action supports list pagination and does not return more than 100 configurations at a time. Always check the IsTruncated element in the response. If there are no more configurations to list, IsTruncated is set to false. If there are more configurations to list, IsTruncated is set to true, and there is a value in NextContinuationToken. You use the NextContinuationToken value to continue the pagination of the list by passing the value in continuation-token in the request to GET the next page.

To use this operation, you must have permissions to perform the s3:GetInventoryConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory

The following operations are related to ListBucketInventoryConfigurations:

", - "ListBucketMetricsConfigurations": "

Lists the metrics configurations for the bucket. The metrics configurations are only for the request metrics of the bucket and do not provide information on daily storage metrics. You can have up to 1,000 configurations per bucket.

This action supports list pagination and does not return more than 100 configurations at a time. Always check the IsTruncated element in the response. If there are no more configurations to list, IsTruncated is set to false. If there are more configurations to list, IsTruncated is set to true, and there is a value in NextContinuationToken. You use the NextContinuationToken value to continue the pagination of the list by passing the value in continuation-token in the request to GET the next page.

To use this operation, you must have permissions to perform the s3:GetMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For more information about metrics configurations and CloudWatch request metrics, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to ListBucketMetricsConfigurations:

", - "ListBuckets": "

Returns a list of all buckets owned by the authenticated sender of the request. To use this operation, you must have the s3:ListAllMyBuckets permission.

For information about Amazon S3 buckets, see Creating, configuring, and working with Amazon S3 buckets.

", - "ListMultipartUploads": "

This action lists in-progress multipart uploads. An in-progress multipart upload is a multipart upload that has been initiated using the Initiate Multipart Upload request, but has not yet been completed or aborted.

This action returns at most 1,000 multipart uploads in the response. 1,000 multipart uploads is the maximum number of uploads a response can include, which is also the default value. You can further limit the number of uploads in a response by specifying the max-uploads parameter in the response. If additional multipart uploads satisfy the list criteria, the response will contain an IsTruncated element with the value true. To list the additional multipart uploads, use the key-marker and upload-id-marker request parameters.

In the response, the uploads are sorted by key. If your application has initiated more than one multipart upload using the same object key, then uploads in the response are first sorted by key. Additionally, uploads are sorted in ascending order within each key by the upload initiation time.

For more information on multipart uploads, see Uploading Objects Using Multipart Upload.

For information on permissions required to use the multipart upload API, see Multipart Upload and Permissions.

The following operations are related to ListMultipartUploads:

", - "ListObjectVersions": "

Returns metadata about all versions of the objects in a bucket. You can also use request parameters as selection criteria to return metadata about a subset of all the object versions.

To use this operation, you must have permission to perform the s3:ListBucketVersions action. Be aware of the name difference.

A 200 OK response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately.

To use this operation, you must have READ access to the bucket.

This action is not supported by Amazon S3 on Outposts.

The following operations are related to ListObjectVersions:

", - "ListObjects": "

Returns some or all (up to 1,000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or invalid XML. Be sure to design your application to parse the contents of the response and handle it appropriately.

This action has been revised. We recommend that you use the newer version, ListObjectsV2, when developing applications. For backward compatibility, Amazon S3 continues to support ListObjects.

The following operations are related to ListObjects:

", - "ListObjectsV2": "

Returns some or all (up to 1,000) of the objects in a bucket with each request. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately. Objects are returned sorted in an ascending order of the respective key names in the list. For more information about listing objects, see Listing object keys programmatically in the Amazon S3 User Guide.

To use this operation, you must have READ access to the bucket.

To use this action in an Identity and Access Management (IAM) policy, you must have permission to perform the s3:ListBucket action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

This section describes the latest revision of this action. We recommend that you use this revised API operation for application development. For backward compatibility, Amazon S3 continues to support the prior version of this API operation, ListObjects.

To get a list of your buckets, see ListBuckets.

The following operations are related to ListObjectsV2:

", - "ListParts": "

Lists the parts that have been uploaded for a specific multipart upload. This operation must include the upload ID, which you obtain by sending the initiate multipart upload request (see CreateMultipartUpload). This request returns a maximum of 1,000 uploaded parts. The default number of parts returned is 1,000 parts. You can restrict the number of parts returned by specifying the max-parts request parameter. If your multipart upload consists of more than 1,000 parts, the response returns an IsTruncated field with the value of true, and a NextPartNumberMarker element. In subsequent ListParts requests you can include the part-number-marker query string parameter and set its value to the NextPartNumberMarker field value from the previous response.

If the upload was created using a checksum algorithm, you will need to have permission to the kms:Decrypt action for the request to succeed.

For more information on multipart uploads, see Uploading Objects Using Multipart Upload.

For information on permissions required to use the multipart upload API, see Multipart Upload and Permissions.

The following operations are related to ListParts:

", - "PutBucketAccelerateConfiguration": "

Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers to Amazon S3.

To use this operation, you must have permission to perform the s3:PutAccelerateConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The Transfer Acceleration state of a bucket can be set to one of the following two values:

  • Enabled – Enables accelerated data transfers to the bucket.

  • Suspended – Disables accelerated data transfers to the bucket.

The GetBucketAccelerateConfiguration action returns the transfer acceleration state of a bucket.

After setting the Transfer Acceleration state of a bucket to Enabled, it might take up to thirty minutes before the data transfer rates to the bucket increase.

The name of the bucket used for Transfer Acceleration must be DNS-compliant and must not contain periods (\".\").

For more information about transfer acceleration, see Transfer Acceleration.

The following operations are related to PutBucketAccelerateConfiguration:

", - "PutBucketAcl": "

Sets the permissions on an existing bucket using access control lists (ACL). For more information, see Using ACLs. To set the ACL of a bucket, you must have WRITE_ACP permission.

You can use one of the following two ways to set a bucket's permissions:

  • Specify the ACL in the request body

  • Specify permissions using request headers

You cannot specify access permission using both the body and the request headers.

Depending on your application needs, you may choose to set the ACL on a bucket using either the request body or the headers. For example, if you have an existing application that updates a bucket ACL using the request body, then you can continue to use that approach.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. You must use policies to grant access to your bucket and the objects in it. Requests to set ACLs or update ACLs fail and return the AccessControlListNotSupported error code. Requests to read ACLs are still supported. For more information, see Controlling object ownership in the Amazon S3 User Guide.

Permissions

You can set access permissions by using one of the following methods:

  • Specify a canned ACL with the x-amz-acl request header. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. Specify the canned ACL name as the value of x-amz-acl. If you use this header, you cannot use other access control-specific headers in your request. For more information, see Canned ACL.

  • Specify access permissions explicitly with the x-amz-grant-read, x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control headers. When using these headers, you specify explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the permission. If you use these ACL-specific headers, you cannot use the x-amz-acl header to set a canned ACL. These parameters map to the set of permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview.

    You specify each grantee as a type=value pair, where the type is one of the following:

    • id – if the value specified is the canonical user ID of an Amazon Web Services account

    • uri – if you are granting permissions to a predefined group

    • emailAddress – if the value specified is the email address of an Amazon Web Services account

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      • US East (N. Virginia)

      • US West (N. California)

      • US West (Oregon)

      • Asia Pacific (Singapore)

      • Asia Pacific (Sydney)

      • Asia Pacific (Tokyo)

      • Europe (Ireland)

      • South America (São Paulo)

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    For example, the following x-amz-grant-write header grants create, overwrite, and delete objects permission to LogDelivery group predefined by Amazon S3 and two Amazon Web Services accounts identified by their email addresses.

    x-amz-grant-write: uri=\"http://acs.amazonaws.com/groups/s3/LogDelivery\", id=\"111122223333\", id=\"555566667777\"

You can use either a canned ACL or specify access permissions explicitly. You cannot do both.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request

  • By URI:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

  • By Email address:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AmazonCustomerByEmail\"><EmailAddress><>Grantees@email.com<></EmailAddress>&</Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl request, appears as the CanonicalUser.

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

The following operations are related to PutBucketAcl:

", - "PutBucketAnalyticsConfiguration": "

Sets an analytics configuration for the bucket (specified by the analytics configuration ID). You can have up to 1,000 analytics configurations per bucket.

You can choose to have storage class analysis export analysis reports sent to a comma-separated values (CSV) flat file. See the DataExport request element. Reports are updated daily and are based on the object filters that you configure. When selecting data export, you specify a destination bucket and an optional destination prefix where the file is written. You can export the data to a destination bucket in a different account. However, the destination bucket must be in the same Region as the bucket that you are making the PUT analytics configuration to. For more information, see Amazon S3 Analytics – Storage Class Analysis.

You must create a bucket policy on the destination bucket where the exported file is written to grant permissions to Amazon S3 to write objects to the bucket. For an example policy, see Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.

To use this operation, you must have permissions to perform the s3:PutAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

PutBucketAnalyticsConfiguration has the following special errors:

    • HTTP Error: HTTP 400 Bad Request

    • Code: InvalidArgument

    • Cause: Invalid argument.

    • HTTP Error: HTTP 400 Bad Request

    • Code: TooManyConfigurations

    • Cause: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

    • HTTP Error: HTTP 403 Forbidden

    • Code: AccessDenied

    • Cause: You are not the owner of the specified bucket, or you do not have the s3:PutAnalyticsConfiguration bucket permission to set the configuration on the bucket.

The following operations are related to PutBucketAnalyticsConfiguration:

", - "PutBucketCors": "

Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces it.

To use this operation, you must be allowed to perform the s3:PutBucketCORS action. By default, the bucket owner has this permission and can grant it to others.

You set this configuration on a bucket so that the bucket can service cross-origin requests. For example, you might want to enable a request whose origin is http://www.example.com to access your Amazon S3 bucket at my.example.bucket.com by using the browser's XMLHttpRequest capability.

To enable cross-origin resource sharing (CORS) on a bucket, you add the cors subresource to the bucket. The cors subresource is an XML document in which you configure rules that identify origins and the HTTP methods that can be executed on your bucket. The document is limited to 64 KB in size.

When Amazon S3 receives a cross-origin request (or a pre-flight OPTIONS request) against a bucket, it evaluates the cors configuration on the bucket and uses the first CORSRule rule that matches the incoming browser request to enable a cross-origin request. For a rule to match, the following conditions must be met:

  • The request's Origin header must match AllowedOrigin elements.

  • The request method (for example, GET, PUT, HEAD, and so on) or the Access-Control-Request-Method header in case of a pre-flight OPTIONS request must be one of the AllowedMethod elements.

  • Every header specified in the Access-Control-Request-Headers request header of a pre-flight request must match an AllowedHeader element.

For more information about CORS, go to Enabling Cross-Origin Resource Sharing in the Amazon S3 User Guide.

The following operations are related to PutBucketCors:

", - "PutBucketEncryption": "

This action uses the encryption subresource to configure default encryption and Amazon S3 Bucket Keys for an existing bucket.

By default, all buckets have a default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). You can optionally configure default encryption for a bucket by using server-side encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you specify default encryption by using SSE-KMS, you can also configure Amazon S3 Bucket Keys. If you use PutBucketEncryption to set your default bucket encryption to SSE-KMS, you should verify that your KMS key ID is correct. Amazon S3 does not validate the KMS key ID provided in PutBucketEncryption requests.

This action requires Amazon Web Services Signature Version 4. For more information, see Authenticating Requests (Amazon Web Services Signature Version 4).

To use this operation, you must have permission to perform the s3:PutEncryptionConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

The following operations are related to PutBucketEncryption:

", - "PutBucketIntelligentTieringConfiguration": "

Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can have up to 1,000 S3 Intelligent-Tiering configurations per bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to PutBucketIntelligentTieringConfiguration include:

You only need S3 Intelligent-Tiering enabled on a bucket if you want to automatically move objects stored in the S3 Intelligent-Tiering storage class to the Archive Access or Deep Archive Access tier.

PutBucketIntelligentTieringConfiguration has the following special errors:

HTTP 400 Bad Request Error

Code: InvalidArgument

Cause: Invalid Argument

HTTP 400 Bad Request Error

Code: TooManyConfigurations

Cause: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

HTTP 403 Forbidden Error

Cause: You are not the owner of the specified bucket, or you do not have the s3:PutIntelligentTieringConfiguration bucket permission to set the configuration on the bucket.

", - "PutBucketInventoryConfiguration": "

This implementation of the PUT action adds an inventory configuration (identified by the inventory ID) to the bucket. You can have up to 1,000 inventory configurations per bucket.

Amazon S3 inventory generates inventories of the objects in the bucket on a daily or weekly basis, and the results are published to a flat file. The bucket that is inventoried is called the source bucket, and the bucket where the inventory flat file is stored is called the destination bucket. The destination bucket must be in the same Amazon Web Services Region as the source bucket.

When you configure an inventory for a source bucket, you specify the destination bucket where you want the inventory to be stored, and whether to generate the inventory daily or weekly. You can also configure what object metadata to include and whether to inventory all object versions or only current versions. For more information, see Amazon S3 Inventory in the Amazon S3 User Guide.

You must create a bucket policy on the destination bucket to grant permissions to Amazon S3 to write objects to the bucket in the defined location. For an example policy, see Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.

Permissions

To use this operation, you must have permission to perform the s3:PutInventoryConfiguration action. The bucket owner has this permission by default and can grant this permission to others.

The s3:PutInventoryConfiguration permission allows a user to create an S3 Inventory report that includes all object metadata fields available and to specify the destination bucket to store the inventory. A user with read access to objects in the destination bucket can also access all object metadata fields that are available in the inventory report.

To restrict access to an inventory report, see Restricting access to an Amazon S3 Inventory report in the Amazon S3 User Guide. For more information about the metadata fields available in S3 Inventory, see Amazon S3 Inventory lists in the Amazon S3 User Guide. For more information about permissions, see Permissions related to bucket subresource operations and Identity and access management in Amazon S3 in the Amazon S3 User Guide.

PutBucketInventoryConfiguration has the following special errors:

HTTP 400 Bad Request Error

Code: InvalidArgument

Cause: Invalid Argument

HTTP 400 Bad Request Error

Code: TooManyConfigurations

Cause: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

HTTP 403 Forbidden Error

Cause: You are not the owner of the specified bucket, or you do not have the s3:PutInventoryConfiguration bucket permission to set the configuration on the bucket.

The following operations are related to PutBucketInventoryConfiguration:

", - "PutBucketLifecycle": "

For an updated version of this API, see PutBucketLifecycleConfiguration. This version has been deprecated. Existing lifecycle configurations will work. For new lifecycle configurations, use the updated API.

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. For information about lifecycle configuration, see Object Lifecycle Management in the Amazon S3 User Guide.

By default, all Amazon S3 resources, including buckets, objects, and related subresources (for example, lifecycle configuration and website configuration) are private. Only the resource owner, the Amazon Web Services account that created the resource, can access it. The resource owner can optionally grant access permissions to others by writing an access policy. For this operation, users must get the s3:PutLifecycleConfiguration permission.

You can also explicitly deny permissions. Explicit denial also supersedes any other permissions. If you want to prevent users or accounts from removing or deleting objects from your bucket, you must deny them permissions for the following actions:

  • s3:DeleteObject

  • s3:DeleteObjectVersion

  • s3:PutLifecycleConfiguration

For more information about permissions, see Managing Access Permissions to your Amazon S3 Resources in the Amazon S3 User Guide.

For more examples of transitioning objects to storage classes such as STANDARD_IA or ONEZONE_IA, see Examples of Lifecycle Configuration.

The following operations are related to PutBucketLifecycle:

", - "PutBucketLifecycleConfiguration": "

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. Keep in mind that this will overwrite an existing lifecycle configuration, so if you want to retain any configuration details, they must be included in the new lifecycle configuration. For information about lifecycle configuration, see Managing your storage lifecycle.

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name prefix, one or more object tags, or a combination of both. Accordingly, this section describes the latest API. The previous version of the API supported filtering based only on an object key name prefix, which is supported for backward compatibility. For the related API description, see PutBucketLifecycle.

Rules

You specify the lifecycle configuration in your request body. The lifecycle configuration is specified as XML consisting of one or more rules. An Amazon S3 Lifecycle configuration can have up to 1,000 rules. This limit is not adjustable. Each rule consists of the following:

  • A filter identifying a subset of objects to which the rule applies. The filter can be based on a key name prefix, object tags, or a combination of both.

  • A status indicating whether the rule is in effect.

  • One or more lifecycle transition and expiration actions that you want Amazon S3 to perform on the objects identified by the filter. If the state of your bucket is versioning-enabled or versioning-suspended, you can have many versions of the same object (one current version and zero or more noncurrent versions). Amazon S3 provides predefined actions that you can specify for current and noncurrent object versions.

For more information, see Object Lifecycle Management and Lifecycle Configuration Elements.

Permissions

By default, all Amazon S3 resources are private, including buckets, objects, and related subresources (for example, lifecycle configuration and website configuration). Only the resource owner (that is, the Amazon Web Services account that created it) can access the resource. The resource owner can optionally grant access permissions to others by writing an access policy. For this operation, a user must get the s3:PutLifecycleConfiguration permission.

You can also explicitly deny permissions. An explicit deny also supersedes any other permissions. If you want to block users or accounts from removing or deleting objects from your bucket, you must deny them permissions for the following actions:

  • s3:DeleteObject

  • s3:DeleteObjectVersion

  • s3:PutLifecycleConfiguration

For more information about permissions, see Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to PutBucketLifecycleConfiguration:

", - "PutBucketLogging": "

Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. All logs are saved to buckets in the same Amazon Web Services Region as the source bucket. To set the logging status of a bucket, you must be the bucket owner.

The bucket owner is automatically granted FULL_CONTROL to all logs. You use the Grantee request element to grant access to other people. The Permissions request element specifies the kind of access the grantee has to the logs.

If the target bucket for log delivery uses the bucket owner enforced setting for S3 Object Ownership, you can't use the Grantee request element to grant access to others. Permissions can only be granted using policies. For more information, see Permissions for server access log delivery in the Amazon S3 User Guide.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (by using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request.

  • By Email address:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AmazonCustomerByEmail\"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GETObjectAcl request, appears as the CanonicalUser.

  • By URI:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

To enable logging, you use LoggingEnabled and its children request elements. To disable logging, you use an empty BucketLoggingStatus request element:

<BucketLoggingStatus xmlns=\"http://doc.s3.amazonaws.com/2006-03-01\" />

For more information about server access logging, see Server Access Logging in the Amazon S3 User Guide.

For more information about creating a bucket, see CreateBucket. For more information about returning the logging status of a bucket, see GetBucketLogging.

The following operations are related to PutBucketLogging:

", - "PutBucketMetricsConfiguration": "

Sets a metrics configuration (specified by the metrics configuration ID) for the bucket. You can have up to 1,000 metrics configurations per bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased.

To use this operation, you must have permissions to perform the s3:PutMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to PutBucketMetricsConfiguration:

PutBucketMetricsConfiguration has the following special error:

  • Error code: TooManyConfigurations

    • Description: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

    • HTTP Status Code: HTTP 400 Bad Request

", - "PutBucketNotification": "

No longer used, see the PutBucketNotificationConfiguration operation.

", - "PutBucketNotificationConfiguration": "

Enables notifications of specified events for a bucket. For more information about event notifications, see Configuring Event Notifications.

Using this API, you can replace an existing notification configuration. The configuration is an XML file that defines the event types that you want Amazon S3 to publish and the destination where you want Amazon S3 to publish an event notification when it detects an event of the specified type.

By default, your bucket has no event notifications configured. That is, the notification configuration will be an empty NotificationConfiguration.

<NotificationConfiguration>

</NotificationConfiguration>

This action replaces the existing notification configuration with the configuration you include in the request body.

After Amazon S3 receives this request, it first verifies that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue Service (Amazon SQS) destination exists, and that the bucket owner has permission to publish to it by sending a test notification. In the case of Lambda destinations, Amazon S3 verifies that the Lambda function permissions grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For more information, see Configuring Notifications for Amazon S3 Events.

You can disable notifications by adding the empty NotificationConfiguration element.

For more information about the number of event notification configurations that you can create per bucket, see Amazon S3 service quotas in Amazon Web Services General Reference.

By default, only the bucket owner can configure notifications on a bucket. However, bucket owners can use a bucket policy to grant permission to other users to set this configuration with the required s3:PutBucketNotification permission.

The PUT notification is an atomic operation. For example, suppose your notification configuration includes SNS topic, SQS queue, and Lambda function configurations. When you send a PUT request with this configuration, Amazon S3 sends test messages to your SNS topic. If the message fails, the entire PUT action will fail, and Amazon S3 will not add the configuration to your bucket.

If the configuration in the request body includes only one TopicConfiguration specifying only the s3:ReducedRedundancyLostObject event type, the response will also include the x-amz-sns-test-message-id header containing the message ID of the test notification sent to the topic.

The following action is related to PutBucketNotificationConfiguration:

", - "PutBucketOwnershipControls": "

Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying permissions in a policy.

For information about Amazon S3 Object Ownership, see Using object ownership.

The following operations are related to PutBucketOwnershipControls:

", - "PutBucketPolicy": "

Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the PutBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.

If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets, the root principal in a bucket owner's Amazon Web Services account can perform the GetBucketPolicy, PutBucketPolicy, and DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the root principal's access. Bucket owner root principals can only be blocked from performing these API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

For more information, see Bucket policy examples.

The following operations are related to PutBucketPolicy:

", - "PutBucketReplication": "

Creates a replication configuration or replaces an existing one. For more information, see Replication in the Amazon S3 User Guide.

Specify the replication configuration in the request body. In the replication configuration, you provide the name of the destination bucket or buckets where you want Amazon S3 to replicate objects, the IAM role that Amazon S3 can assume to replicate objects on your behalf, and other relevant information. You can invoke this request for a specific Amazon Web Services Region by using the aws:RequestedRegion condition key.

A replication configuration must include at least one rule, and can contain a maximum of 1,000. Each rule identifies a subset of objects to replicate by filtering the objects in the source bucket. To choose additional subsets of objects to replicate, add a rule for each subset.

To specify a subset of the objects in the source bucket to apply a replication rule to, add the Filter element as a child of the Rule element. You can filter objects based on an object key prefix, one or more object tags, or both. When you add the Filter element in the configuration, you must also add the following elements: DeleteMarkerReplication, Status, and Priority.

If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see Backward Compatibility.

For information about enabling versioning on a bucket, see Using Versioning.

Handling Replication of Encrypted Objects

By default, Amazon S3 doesn't replicate objects that are stored at rest using server-side encryption with KMS keys. To replicate Amazon Web Services KMS-encrypted objects, add the following: SourceSelectionCriteria, SseKmsEncryptedObjects, Status, EncryptionConfiguration, and ReplicaKmsKeyID. For information about replication configuration, see Replicating Objects Created with SSE Using KMS keys.

For information on PutBucketReplication errors, see List of replication-related error codes

Permissions

To create a PutBucketReplication request, you must have s3:PutReplicationConfiguration permissions for the bucket.

By default, a resource owner, in this case the Amazon Web Services account that created the bucket, can perform this operation. The resource owner can also grant others permissions to perform the operation. For more information about permissions, see Specifying Permissions in a Policy and Managing Access Permissions to Your Amazon S3 Resources.

To perform this operation, the user or role performing the action must have the iam:PassRole permission.

The following operations are related to PutBucketReplication:

", - "PutBucketRequestPayment": "

Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person requesting the download will be charged for the download. For more information, see Requester Pays Buckets.

The following operations are related to PutBucketRequestPayment:

", - "PutBucketTagging": "

Sets the tags for a bucket.

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this, sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost of combined resources, organize your billing information according to resources with the same tag key values. For example, you can tag several resources with a specific application name, and then organize your billing information to see the total cost of that application across several services. For more information, see Cost Allocation and Tagging and Using Cost Allocation in Amazon S3 Bucket Tags.

When this operation sets the tags for a bucket, it will overwrite any current tags the bucket already has. You cannot use this operation to add tags to an existing list of tags.

To use this operation, you must have permissions to perform the s3:PutBucketTagging action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

PutBucketTagging has the following special errors. For more Amazon S3 errors see, Error Responses.

  • InvalidTag - The tag provided was not a valid tag. This error can occur if the tag did not pass input validation. For more information, see Using Cost Allocation in Amazon S3 Bucket Tags.

  • MalformedXML - The XML provided does not match the schema.

  • OperationAborted - A conflicting conditional action is currently in progress against this resource. Please try again.

  • InternalError - The service was unable to apply the provided tag to the bucket.

The following operations are related to PutBucketTagging:

", - "PutBucketVersioning": "

Sets the versioning state of an existing bucket.

You can set the versioning state with one of the following values:

Enabled—Enables versioning for the objects in the bucket. All objects added to the bucket receive a unique version ID.

Suspended—Disables versioning for the objects in the bucket. All objects added to the bucket receive the version ID null.

If the versioning state has never been set on a bucket, it has no versioning state; a GetBucketVersioning request does not return a versioning state value.

In order to enable MFA Delete, you must be the bucket owner. If you are the bucket owner and want to enable MFA Delete in the bucket versioning configuration, you must include the x-amz-mfa request header and the Status and the MfaDelete request elements in a request to set the versioning state of the bucket.

If you have an object expiration lifecycle configuration in your non-versioned bucket and you want to maintain the same permanent delete behavior when you enable versioning, you must add a noncurrent expiration policy. The noncurrent expiration lifecycle configuration will manage the deletes of the noncurrent object versions in the version-enabled bucket. (A version-enabled bucket maintains one current and zero or more noncurrent object versions.) For more information, see Lifecycle and Versioning.

The following operations are related to PutBucketVersioning:

", - "PutBucketWebsite": "

Sets the configuration of the website that is specified in the website subresource. To configure a bucket as a website, you can add this subresource on the bucket with website configuration information such as the file name of the index document and any redirect rules. For more information, see Hosting Websites on Amazon S3.

This PUT action requires the S3:PutBucketWebsite permission. By default, only the bucket owner can configure the website attached to a bucket; however, bucket owners can allow other users to set the website configuration by writing a bucket policy that grants them the S3:PutBucketWebsite permission.

To redirect all website requests sent to the bucket's website endpoint, you add a website configuration with the following elements. Because all requests are sent to another website, you don't need to provide index document name for the bucket.

  • WebsiteConfiguration

  • RedirectAllRequestsTo

  • HostName

  • Protocol

If you want granular control over redirects, you can use the following elements to add routing rules that describe conditions for redirecting requests and information about the redirect destination. In this case, the website configuration must provide an index document for the bucket, because some requests might not be redirected.

  • WebsiteConfiguration

  • IndexDocument

  • Suffix

  • ErrorDocument

  • Key

  • RoutingRules

  • RoutingRule

  • Condition

  • HttpErrorCodeReturnedEquals

  • KeyPrefixEquals

  • Redirect

  • Protocol

  • HostName

  • ReplaceKeyPrefixWith

  • ReplaceKeyWith

  • HttpRedirectCode

Amazon S3 has a limitation of 50 routing rules per website configuration. If you require more than 50 routing rules, you can use object redirect. For more information, see Configuring an Object Redirect in the Amazon S3 User Guide.

The maximum request length is limited to 128 KB.

", - "PutObject": "

Adds an object to a bucket. You must have WRITE permissions on a bucket to add an object to it.

Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 added the entire object to the bucket. You cannot use PutObject to only update a single piece of metadata for an existing object. You must put the entire object with updated metadata if you want to update some values.

Amazon S3 is a distributed system. If it receives multiple write requests for the same object simultaneously, it overwrites all but the last object written. To prevent objects from being deleted or overwritten, you can use Amazon S3 Object Lock.

To ensure that data is not corrupted traversing the network, use the Content-MD5 header. When you use this header, Amazon S3 checks the object against the provided MD5 value and, if they do not match, returns an error. Additionally, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5 value.

  • To successfully complete the PutObject request, you must have the s3:PutObject in your IAM permissions.

  • To successfully change the objects acl of your PutObject request, you must have the s3:PutObjectAcl in your IAM permissions.

  • To successfully set the tag-set with your PutObject request, you must have the s3:PutObjectTagging in your IAM permissions.

  • The Content-MD5 header is required for any request to upload an object with a retention period configured using Amazon S3 Object Lock. For more information about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview in the Amazon S3 User Guide.

You have four mutually exclusive options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest by using server-side encryption with other key options. For more information, see Using Server-Side Encryption.

When adding a new object, you can use headers to grant ACL-based permissions to individual Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are then added to the ACL on the object. By default, all objects are private. Only the owner has full access control. For more information, see Access Control List (ACL) Overview and Managing ACLs Using the REST API.

If the bucket that you're uploading objects to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting only accept PUT requests that don't specify an ACL or PUT requests that specify bucket owner full control ACLs, such as the bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed in the XML format. PUT requests that contain other ACLs (for example, custom grants to certain Amazon Web Services accounts) fail and return a 400 error with the error code AccessControlListNotSupported. For more information, see Controlling ownership of objects and disabling ACLs in the Amazon S3 User Guide.

If your bucket uses the bucket owner enforced setting for Object Ownership, all objects written to the bucket by any account will be owned by the bucket owner.

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, see Storage Classes in the Amazon S3 User Guide.

If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID for the object being stored. Amazon S3 returns this ID in the response. When you enable versioning for a bucket, if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all of the objects. For more information about versioning, see Adding Objects to Versioning-Enabled Buckets. For information about returning the versioning state of a bucket, see GetBucketVersioning.

For more information about related Amazon S3 APIs, see the following:

", - "PutObjectAcl": "

Uses the acl subresource to set the access control list (ACL) permissions for a new or existing object in an S3 bucket. You must have WRITE_ACP permission to set the ACL of an object. For more information, see What permissions can I grant? in the Amazon S3 User Guide.

This action is not supported by Amazon S3 on Outposts.

Depending on your application needs, you can choose to set the ACL on an object using either the request body or the headers. For example, if you have an existing application that updates a bucket ACL using the request body, you can continue to use that approach. For more information, see Access Control List (ACL) Overview in the Amazon S3 User Guide.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. You must use policies to grant access to your bucket and the objects in it. Requests to set ACLs or update ACLs fail and return the AccessControlListNotSupported error code. Requests to read ACLs are still supported. For more information, see Controlling object ownership in the Amazon S3 User Guide.

Permissions

You can set access permissions using one of the following methods:

  • Specify a canned ACL with the x-amz-acl request header. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. Specify the canned ACL name as the value of x-amz-acl. If you use this header, you cannot use other access control-specific headers in your request. For more information, see Canned ACL.

  • Specify access permissions explicitly with the x-amz-grant-read, x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control headers. When using these headers, you specify explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the permission. If you use these ACL-specific headers, you cannot use x-amz-acl header to set a canned ACL. These parameters map to the set of permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview.

    You specify each grantee as a type=value pair, where the type is one of the following:

    • id – if the value specified is the canonical user ID of an Amazon Web Services account

    • uri – if you are granting permissions to a predefined group

    • emailAddress – if the value specified is the email address of an Amazon Web Services account

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      • US East (N. Virginia)

      • US West (N. California)

      • US West (Oregon)

      • Asia Pacific (Singapore)

      • Asia Pacific (Sydney)

      • Asia Pacific (Tokyo)

      • Europe (Ireland)

      • South America (São Paulo)

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    For example, the following x-amz-grant-read header grants list objects permission to the two Amazon Web Services accounts identified by their email addresses.

    x-amz-grant-read: emailAddress=\"xyz@amazon.com\", emailAddress=\"abc@amazon.com\"

You can use either a canned ACL or specify access permissions explicitly. You cannot do both.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request.

  • By URI:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

  • By Email address:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AmazonCustomerByEmail\"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl request, appears as the CanonicalUser.

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

Versioning

The ACL of an object is set at the object version level. By default, PUT sets the ACL of the current version of an object. To set the ACL of a different version, use the versionId subresource.

The following operations are related to PutObjectAcl:

", - "PutObjectLegalHold": "

Applies a legal hold configuration to the specified object. For more information, see Locking Objects.

This action is not supported by Amazon S3 on Outposts.

", - "PutObjectLockConfiguration": "

Places an Object Lock configuration on the specified bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see Locking Objects.

  • The DefaultRetention settings require both a mode and a period.

  • The DefaultRetention period can be either Days or Years but you must select one. You cannot specify Days and Years at the same time.

  • You can only enable Object Lock for new buckets. If you want to turn on Object Lock for an existing bucket, contact Amazon Web Services Support.

", - "PutObjectRetention": "

Places an Object Retention configuration on an object. For more information, see Locking Objects. Users or accounts require the s3:PutObjectRetention permission in order to place an Object Retention configuration on objects. Bypassing a Governance Retention configuration requires the s3:BypassGovernanceRetention permission.

This action is not supported by Amazon S3 on Outposts.

", - "PutObjectTagging": "

Sets the supplied tag-set to an object that already exists in a bucket. A tag is a key-value pair. For more information, see Object Tagging.

You can associate tags with an object by sending a PUT request against the tagging subresource that is associated with the object. You can retrieve tags by sending a GET request. For more information, see GetObjectTagging.

For tagging-related restrictions related to characters and encodings, see Tag Restrictions. Note that Amazon S3 limits the maximum number of tags to 10 tags per object.

To use this operation, you must have permission to perform the s3:PutObjectTagging action. By default, the bucket owner has this permission and can grant this permission to others.

To put tags of any other version, use the versionId query parameter. You also need permission for the s3:PutObjectVersionTagging action.

PutObjectTagging has the following special errors. For more Amazon S3 errors see, Error Responses.

  • InvalidTag - The tag provided was not a valid tag. This error can occur if the tag did not pass input validation. For more information, see Object Tagging.

  • MalformedXML - The XML provided does not match the schema.

  • OperationAborted - A conflicting conditional action is currently in progress against this resource. Please try again.

  • InternalError - The service was unable to apply the provided tag to the object.

The following operations are related to PutObjectTagging:

", - "PutPublicAccessBlock": "

Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an object, it checks the PublicAccessBlock configuration for both the bucket (or the bucket that contains the object) and the bucket owner's account. If the PublicAccessBlock configurations are different between the bucket and the account, S3 uses the most restrictive combination of the bucket-level and account-level settings.

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

The following operations are related to PutPublicAccessBlock:

", - "RestoreObject": "

Restores an archived copy of an object back into Amazon S3

This action is not supported by Amazon S3 on Outposts.

This action performs the following types of requests:

  • select - Perform a select query on an archived object

  • restore an archive - Restore an archived object

For more information about the S3 structure in the request body, see the following:

Define the SQL expression for the SELECT type of restoration for your query in the request body's SelectParameters structure. You can use expressions like the following examples.

  • The following expression returns all records from the specified object.

    SELECT * FROM Object

  • Assuming that you are not using any headers for data stored in the object, you can specify columns with positional headers.

    SELECT s._1, s._2 FROM Object s WHERE s._3 > 100

  • If you have headers and you set the fileHeaderInfo in the CSV structure in the request body to USE, you can specify headers in the query. (If you set the fileHeaderInfo field to IGNORE, the first row is skipped for the query.) You cannot mix ordinal positions with header column names.

    SELECT s.Id, s.FirstName, s.SSN FROM S3Object s

When making a select request, you can also do the following:

  • To expedite your queries, specify the Expedited tier. For more information about tiers, see \"Restoring Archives,\" later in this topic.

  • Specify details about the data serialization format of both the input object that is being queried and the serialization of the CSV-encoded query results.

The following are additional important facts about the select feature:

  • The output results are new Amazon S3 objects. Unlike archive retrievals, they are stored until explicitly deleted-manually or through a lifecycle configuration.

  • You can issue more than one select request on the same Amazon S3 object. Amazon S3 doesn't duplicate requests, so avoid issuing duplicate requests.

  • Amazon S3 accepts a select request even if the object has already been restored. A select request doesn’t return error response 409.

Permissions

To use this operation, you must have permissions to perform the s3:RestoreObject action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

Restoring objects

Objects that you archive to the S3 Glacier Flexible Retrieval Flexible Retrieval or S3 Glacier Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, are not accessible in real time. For objects in the S3 Glacier Flexible Retrieval Flexible Retrieval or S3 Glacier Deep Archive storage classes, you must first initiate a restore request, and then wait until a temporary copy of the object is available. If you want a permanent copy of the object, create a copy of it in the Amazon S3 Standard storage class in your S3 bucket. To access an archived object, you must restore the object for the duration (number of days) that you specify. For objects in the Archive Access or Deep Archive Access tiers of S3 Intelligent-Tiering, you must first initiate a restore request, and then wait until the object is moved into the Frequent Access tier.

To restore a specific object version, you can provide a version ID. If you don't provide a version ID, Amazon S3 restores the current version.

When restoring an archived object, you can specify one of the following data access tier options in the Tier element of the request body:

  • Expedited - Expedited retrievals allow you to quickly access your data stored in the S3 Glacier Flexible Retrieval Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier when occasional urgent requests for restoring archives are required. For all but the largest archived objects (250 MB+), data accessed using Expedited retrievals is typically made available within 1–5 minutes. Provisioned capacity ensures that retrieval capacity for Expedited retrievals is available when you need it. Expedited retrievals and provisioned capacity are not available for objects stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier.

  • Standard - Standard retrievals allow you to access any of your archived objects within several hours. This is the default option for retrieval requests that do not specify the retrieval option. Standard retrievals typically finish within 3–5 hours for objects stored in the S3 Glacier Flexible Retrieval Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier. They typically finish within 12 hours for objects stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects stored in S3 Intelligent-Tiering.

  • Bulk - Bulk retrievals free for objects stored in the S3 Glacier Flexible Retrieval and S3 Intelligent-Tiering storage classes, enabling you to retrieve large amounts, even petabytes, of data at no cost. Bulk retrievals typically finish within 5–12 hours for objects stored in the S3 Glacier Flexible Retrieval Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier. Bulk retrievals are also the lowest-cost retrieval option when restoring objects from S3 Glacier Deep Archive. They typically finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier.

For more information about archive retrieval options and provisioned capacity for Expedited data access, see Restoring Archived Objects in the Amazon S3 User Guide.

You can use Amazon S3 restore speed upgrade to change the restore speed to a faster speed while it is in progress. For more information, see Upgrading the speed of an in-progress restore in the Amazon S3 User Guide.

To get the status of object restoration, you can send a HEAD request. Operations return the x-amz-restore header, which provides information about the restoration status, in the response. You can use Amazon S3 event notifications to notify you when a restore is initiated or completed. For more information, see Configuring Amazon S3 Event Notifications in the Amazon S3 User Guide.

After restoring an archived object, you can update the restoration period by reissuing the request with a new period. Amazon S3 updates the restoration period relative to the current time and charges only for the request-there are no data transfer charges. You cannot update the restoration period when Amazon S3 is actively processing your current restore request for the object.

If your bucket has a lifecycle configuration with a rule that includes an expiration action, the object expiration overrides the life span that you specify in a restore request. For example, if you restore an object copy for 10 days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the object in 3 days. For more information about lifecycle configuration, see PutBucketLifecycleConfiguration and Object Lifecycle Management in Amazon S3 User Guide.

Responses

A successful action returns either the 200 OK or 202 Accepted status code.

  • If the object is not previously restored, then Amazon S3 returns 202 Accepted in the response.

  • If the object is previously restored, Amazon S3 returns 200 OK in the response.

  • Special errors:

    • Code: RestoreAlreadyInProgress

    • Cause: Object restore is already in progress. (This error does not apply to SELECT type requests.)

    • HTTP Status Code: 409 Conflict

    • SOAP Fault Code Prefix: Client

    • Code: GlacierExpeditedRetrievalNotAvailable

    • Cause: expedited retrievals are currently not available. Try again later. (Returned if there is insufficient capacity to process the Expedited request. This error applies only to Expedited retrievals and not to S3 Standard or Bulk retrievals.)

    • HTTP Status Code: 503

    • SOAP Fault Code Prefix: N/A

The following operations are related to RestoreObject:

", - "SelectObjectContent": "

This action filters the contents of an Amazon S3 object based on a simple structured query language (SQL) statement. In the request, along with the SQL expression, you must also specify a data serialization format (JSON, CSV, or Apache Parquet) of the object. Amazon S3 uses this format to parse object data into records, and returns only records that match the specified SQL expression. You must also specify the data serialization format for the response.

This action is not supported by Amazon S3 on Outposts.

For more information about Amazon S3 Select, see Selecting Content from Objects and SELECT Command in the Amazon S3 User Guide.

Permissions

You must have s3:GetObject permission for this operation. Amazon S3 Select does not support anonymous access. For more information about permissions, see Specifying Permissions in a Policy in the Amazon S3 User Guide.

Object Data Formats

You can use Amazon S3 Select to query objects that have the following format properties:

  • CSV, JSON, and Parquet - Objects must be in CSV, JSON, or Parquet format.

  • UTF-8 - UTF-8 is the only encoding type Amazon S3 Select supports.

  • GZIP or BZIP2 - CSV and JSON files can be compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not support whole-object compression for Parquet objects.

  • Server-side encryption - Amazon S3 Select supports querying objects that are protected with server-side encryption.

    For objects that are encrypted with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must use the headers that are documented in the GetObject. For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

    For objects that are encrypted with Amazon S3 managed keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side encryption is handled transparently, so you don't need to specify anything. For more information about server-side encryption, including SSE-S3 and SSE-KMS, see Protecting Data Using Server-Side Encryption in the Amazon S3 User Guide.

Working with the Response Body

Given the response size is unknown, Amazon S3 Select streams the response as a series of messages and includes a Transfer-Encoding header with chunked as its value in the response. For more information, see Appendix: SelectObjectContent Response.

GetObject Support

The SelectObjectContent action does not support the following GetObject functionality. For more information, see GetObject.

  • Range: Although you can specify a scan range for an Amazon S3 Select request (see SelectObjectContentRequest - ScanRange in the request parameters), you cannot specify the range of bytes of an object to return.

  • The GLACIER, DEEP_ARCHIVE, and REDUCED_REDUNDANCY storage classes, or the ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS access tiers of the INTELLIGENT_TIERING storage class: You cannot query objects in the GLACIER, DEEP_ARCHIVE, or REDUCED_REDUNDANCY storage classes, nor objects in the ARCHIVE_ACCESS or DEEP_ARCHIVE_ACCESS access tiers of the INTELLIGENT_TIERING storage class. For more information about storage classes, see Using Amazon S3 storage classes in the Amazon S3 User Guide.

Special Errors

For a list of special errors for this operation, see List of SELECT Object Content Error Codes

The following operations are related to SelectObjectContent:

", - "UploadPart": "

Uploads a part in a multipart upload.

In this operation, you provide part data in your request. However, you have an option to specify your existing Amazon S3 object as a data source for the part you are uploading. To upload a part from an existing object, you use the UploadPartCopy operation.

You must initiate a multipart upload (see CreateMultipartUpload) before you can upload any part. In response to your initiate request, Amazon S3 returns an upload ID, a unique identifier, that you must include in your upload part request.

Part numbers can be any number from 1 to 10,000, inclusive. A part number uniquely identifies a part and also defines its position within the object being created. If you upload a new part using the same part number that was used with a previous part, the previously uploaded part is overwritten.

For information about maximum and minimum part sizes and other multipart upload specifications, see Multipart upload limits in the Amazon S3 User Guide.

To ensure that data is not corrupted when traversing the network, specify the Content-MD5 header in the upload part request. Amazon S3 checks the part data against the provided MD5 value. If they do not match, Amazon S3 returns an error.

If the upload request is signed with Signature Version 4, then Amazon Web Services S3 uses the x-amz-content-sha256 header as a checksum instead of Content-MD5. For more information see Authenticating Requests: Using the Authorization Header (Amazon Web Services Signature Version 4).

Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.

For more information on multipart uploads, go to Multipart Upload Overview in the Amazon S3 User Guide .

For information on the permissions required to use the multipart upload API, go to Multipart Upload and Permissions in the Amazon S3 User Guide.

Server-side encryption is for data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers and decrypts it when you access it. You have three mutually exclusive options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS), and Customer-Provided Keys (SSE-C). Amazon S3 encrypts data with server-side encryption using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest using server-side encryption with other key options. The option you use depends on whether you want to use KMS keys (SSE-KMS) or provide your own encryption key (SSE-C). If you choose to provide your own encryption key, the request headers you provide in the request must match the headers you used in the request to initiate the upload by using CreateMultipartUpload. For more information, go to Using Server-Side Encryption in the Amazon S3 User Guide.

Server-side encryption is supported by the S3 Multipart Upload actions. Unless you are using a customer-provided encryption key (SSE-C), you don't need to specify the encryption parameters in each UploadPart request. Instead, you only need to specify the server-side encryption parameters in the initial Initiate Multipart request. For more information, see CreateMultipartUpload.

If you requested server-side encryption using a customer-provided encryption key (SSE-C) in your initiate multipart upload request, you must provide identical encryption information in each part upload using the following headers.

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

UploadPart has the following special errors:

    • Code: NoSuchUpload

    • Cause: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

The following operations are related to UploadPart:

", - "UploadPartCopy": "

Uploads a part by copying data from an existing object as data source. You specify the data source by adding the request header x-amz-copy-source in your request and a byte range by adding the request header x-amz-copy-source-range in your request.

For information about maximum and minimum part sizes and other multipart upload specifications, see Multipart upload limits in the Amazon S3 User Guide.

Instead of using an existing object as part data, you might use the UploadPart action and provide data in your request.

You must initiate a multipart upload before you can upload any part. In response to your initiate request. Amazon S3 returns a unique identifier, the upload ID, that you must include in your upload part request.

For more information about using the UploadPartCopy operation, see the following:

  • For conceptual information about multipart uploads, see Uploading Objects Using Multipart Upload in the Amazon S3 User Guide.

  • For information about permissions required to use the multipart upload API, see Multipart Upload and Permissions in the Amazon S3 User Guide.

  • For information about copying objects using a single atomic action vs. a multipart upload, see Operations on Objects in the Amazon S3 User Guide.

  • For information about using server-side encryption with customer-provided encryption keys with the UploadPartCopy operation, see CopyObject and UploadPart.

Note the following additional considerations about the request headers x-amz-copy-source-if-match, x-amz-copy-source-if-none-match, x-amz-copy-source-if-unmodified-since, and x-amz-copy-source-if-modified-since:

  • Consideration 1 - If both of the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are present in the request as follows:

    x-amz-copy-source-if-match condition evaluates to true, and;

    x-amz-copy-source-if-unmodified-since condition evaluates to false;

    Amazon S3 returns 200 OK and copies the data.

  • Consideration 2 - If both of the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since headers are present in the request as follows:

    x-amz-copy-source-if-none-match condition evaluates to false, and;

    x-amz-copy-source-if-modified-since condition evaluates to true;

    Amazon S3 returns 412 Precondition Failed response code.

Versioning

If your bucket has versioning enabled, you could have multiple versions of the same object. By default, x-amz-copy-source identifies the current version of the object to copy. If the current version is a delete marker and you don't specify a versionId in the x-amz-copy-source, Amazon S3 returns a 404 error, because the object does not exist. If you specify versionId in the x-amz-copy-source and the versionId is a delete marker, Amazon S3 returns an HTTP 400 error, because you are not allowed to specify a delete marker as a version for the x-amz-copy-source.

You can optionally specify a specific version of the source object to copy by adding the versionId subresource as shown in the following example:

x-amz-copy-source: /bucket/object?versionId=version id

Special errors
    • Code: NoSuchUpload

    • Cause: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

    • HTTP Status Code: 404 Not Found

    • Code: InvalidRequest

    • Cause: The specified copy source is not supported as a byte-range copy source.

    • HTTP Status Code: 400 Bad Request

The following operations are related to UploadPartCopy:

", - "WriteGetObjectResponse": "

Passes transformed objects to a GetObject operation when using Object Lambda access points. For information about Object Lambda access points, see Transforming objects with Object Lambda access points in the Amazon S3 User Guide.

This operation supports metadata that can be returned by GetObject, in addition to RequestRoute, RequestToken, StatusCode, ErrorCode, and ErrorMessage. The GetObject response metadata is supported so that the WriteGetObjectResponse caller, typically an Lambda function, can provide the same metadata when it internally invokes GetObject. When WriteGetObjectResponse is called by a customer-owned Lambda function, the metadata returned to the end user GetObject call might differ from what Amazon S3 would normally return.

You can include any number of metadata headers. When including a metadata header, it should be prefaced with x-amz-meta. For example, x-amz-meta-my-custom-header: MyCustomValue. The primary use case for this is to forward GetObject metadata.

Amazon Web Services provides some prebuilt Lambda functions that you can use with S3 Object Lambda to detect and redact personally identifiable information (PII) and decompress S3 objects. These Lambda functions are available in the Amazon Web Services Serverless Application Repository, and can be selected through the Amazon Web Services Management Console when you create your Object Lambda access point.

Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically detects personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.

Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically redacts personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.

Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects stored in S3 in one of six compressed file formats including bzip2, gzip, snappy, zlib, zstandard and ZIP.

For information on how to view and use these functions, see Using Amazon Web Services built Lambda functions in the Amazon S3 User Guide.

" + "AbortMultipartUpload": "

This operation aborts a multipart upload. After a multipart upload is aborted, no additional parts can be uploaded using that upload ID. The storage consumed by any previously uploaded parts will be freed. However, if any part uploads are currently in progress, those part uploads might or might not succeed. As a result, it might be necessary to abort a given multipart upload multiple times in order to completely free all storage consumed by all parts.

To verify that all parts have been removed and prevent getting charged for the part storage, you should call the ListParts API operation and ensure that the parts list is empty.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - For information about permissions required to use the multipart upload, see Multipart Upload and Permissions in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to AbortMultipartUpload:

", + "CompleteMultipartUpload": "

Completes a multipart upload by assembling previously uploaded parts.

You first initiate the multipart upload and then upload all parts using the UploadPart operation or the UploadPartCopy operation. After successfully uploading all relevant parts of an upload, you call this CompleteMultipartUpload operation to complete the upload. Upon receiving this request, Amazon S3 concatenates all the parts in ascending order by part number to create a new object. In the CompleteMultipartUpload request, you must provide the parts list and ensure that the parts list is complete. The CompleteMultipartUpload API operation concatenates the parts that you provide in the list. For each part in the list, you must provide the PartNumber value and the ETag value that are returned after that part was uploaded.

The processing of a CompleteMultipartUpload request could take several minutes to finalize. After Amazon S3 begins processing the request, it sends an HTTP response header that specifies a 200 OK response. While processing is in progress, Amazon S3 periodically sends white space characters to keep the connection from timing out. A request could fail after the initial 200 OK response has been sent. This means that a 200 OK response can contain either a success or an error. The error response might be embedded in the 200 OK response. If you call this API operation directly, make sure to design your application to parse the contents of the response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and apply error handling per your configuration settings (including automatically retrying the request as appropriate). If the condition persists, the SDKs throw an exception (or, for the SDKs that don't use exceptions, they return an error).

Note that if CompleteMultipartUpload fails, applications should be prepared to retry the failed requests. For more information, see Amazon S3 Error Best Practices.

You can't use Content-Type: application/x-www-form-urlencoded for the CompleteMultipartUpload requests. Also, if you don't provide a Content-Type header, CompleteMultipartUpload can still return a 200 OK response.

For more information about multipart uploads, see Uploading Objects Using Multipart Upload in the Amazon S3 User Guide.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - For information about permissions required to use the multipart upload API, see Multipart Upload and Permissions in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Special errors
  • Error Code: EntityTooSmall

    • Description: Your proposed upload is smaller than the minimum allowed object size. Each part must be at least 5 MB in size, except the last part.

    • HTTP Status Code: 400 Bad Request

  • Error Code: InvalidPart

    • Description: One or more of the specified parts could not be found. The part might not have been uploaded, or the specified ETag might not have matched the uploaded part's ETag.

    • HTTP Status Code: 400 Bad Request

  • Error Code: InvalidPartOrder

    • Description: The list of parts was not in ascending order. The parts list must be specified in order by part number.

    • HTTP Status Code: 400 Bad Request

  • Error Code: NoSuchUpload

    • Description: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

    • HTTP Status Code: 404 Not Found

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to CompleteMultipartUpload:

", + "CopyObject": "

Creates a copy of an object that is already stored in Amazon S3.

You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your object up to 5 GB in size in a single atomic action using this API. However, to copy an object greater than 5 GB, you must use the multipart upload Upload Part - Copy (UploadPartCopy) API. For more information, see Copy Object Using the REST Multipart Upload API.

You can copy individual objects between general purpose buckets, between directory buckets, and between general purpose buckets and directory buckets.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Both the Region that you want to copy the object from and the Region that you want to copy the object to must be enabled for your account.

Amazon S3 transfer acceleration does not support cross-Region copies. If you request a cross-Region copy using a transfer acceleration endpoint, you get a 400 Bad Request error. For more information, see Transfer Acceleration.

Authentication and authorization

All CopyObject requests must be authenticated and signed by using IAM credentials (access key ID and secret access key for the IAM identities). All headers with the x-amz- prefix, including x-amz-copy-source, must be signed. For more information, see REST Authentication.

Directory buckets - You must use the IAM credentials to authenticate and authorize your access to the CopyObject API operation, instead of using the temporary security credentials through the CreateSession API operation.

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

Permissions

You must have read access to the source object and write access to the destination bucket.

  • General purpose bucket permissions - You must have permissions in an IAM policy based on the source and destination bucket types in a CopyObject operation.

    • If the source object is in a general purpose bucket, you must have s3:GetObject permission to read the source object that is being copied.

    • If the destination bucket is a general purpose bucket, you must have s3:PubObject permission to write the object copy to the destination bucket.

  • Directory bucket permissions - You must have permissions in a bucket policy or an IAM identity-based policy based on the source and destination bucket types in a CopyObject operation.

    • If the source object that you want to copy is in a directory bucket, you must have the s3express:CreateSession permission in the Action element of a policy to read the object. By default, the session is in the ReadWrite mode. If you want to restrict the access, you can explicitly set the s3express:SessionMode condition key to ReadOnly on the copy source bucket.

    • If the copy destination is a directory bucket, you must have the s3express:CreateSession permission in the Action element of a policy to write the object to the destination. The s3express:SessionMode condition key can't be set to ReadOnly on the copy destination bucket.

    For example policies, see Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone in the Amazon S3 User Guide.

Response and special errors

When the request is an HTTP 1.1 request, the response is chunk encoded. When the request is not an HTTP 1.1 request, the response would not contain the Content-Length. You always need to read the entire response body to check if the copy succeeds. to keep the connection alive while we copy the data.

  • If the copy is successful, you receive a response with information about the copied object.

  • A copy request might return an error when Amazon S3 receives the copy request or while Amazon S3 is copying the files. A 200 OK response can contain either a success or an error.

    • If the error occurs before the copy action starts, you receive a standard Amazon S3 error.

    • If the error occurs during the copy operation, the error response is embedded in the 200 OK response. For example, in a cross-region copy, you may encounter throttling and receive a 200 OK response. For more information, see Resolve the Error 200 response when copying objects to Amazon S3. The 200 OK status code means the copy was accepted, but it doesn't mean the copy is complete. Another example is when you disconnect from Amazon S3 before the copy is complete, Amazon S3 might cancel the copy and you may receive a 200 OK response. You must stay connected to Amazon S3 until the entire response is successfully received and processed.

      If you call this API operation directly, make sure to design your application to parse the content of the response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and apply error handling per your configuration settings (including automatically retrying the request as appropriate). If the condition persists, the SDKs throw an exception (or, for the SDKs that don't use exceptions, they return an error).

Charge

The copy request charge is based on the storage class and Region that you specify for the destination object. The request can also result in a data retrieval charge for the source if the source storage class bills for data retrieval. For pricing information, see Amazon S3 pricing.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to CopyObject:

", + "CreateBucket": "

This action creates an Amazon S3 bucket. To create an Amazon S3 on Outposts bucket, see CreateBucket .

Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and have a valid Amazon Web Services Access Key ID to authenticate requests. Anonymous requests are never allowed to create buckets. By creating the bucket, you become the bucket owner.

There are two types of buckets: general purpose buckets and directory buckets. For more information about these bucket types, see Creating, configuring, and working with Amazon S3 buckets in the Amazon S3 User Guide.

  • General purpose buckets - If you send your CreateBucket request to the s3.amazonaws.com global endpoint, the request goes to the us-east-1 Region. So the signature calculations in Signature Version 4 must use us-east-1 as the Region, even if the location constraint in the request specifies another Region where the bucket is to be created. If you create a bucket in a Region other than US East (N. Virginia), your application must be able to handle 307 redirect. For more information, see Virtual hosting of buckets in the Amazon S3 User Guide.

  • Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - In addition to the s3:CreateBucket permission, the following permissions are required in a policy when your CreateBucket request includes specific headers:

    • Access control lists (ACLs) - In your CreateBucket request, if you specify an access control list (ACL) and set it to public-read, public-read-write, authenticated-read, or if you explicitly specify any other custom ACLs, both s3:CreateBucket and s3:PutBucketAcl permissions are required. In your CreateBucket request, if you set the ACL to private, or if you don't specify any ACLs, only the s3:CreateBucket permission is required.

    • Object Lock - In your CreateBucket request, if you set x-amz-bucket-object-lock-enabled to true, the s3:PutBucketObjectLockConfiguration and s3:PutBucketVersioning permissions are required.

    • S3 Object Ownership - If your CreateBucket request includes the x-amz-object-ownership header, then the s3:PutBucketOwnershipControls permission is required.

      If your CreateBucket request sets BucketOwnerEnforced for Amazon S3 Object Ownership and specifies a bucket ACL that provides access to an external Amazon Web Services account, your request fails with a 400 error and returns the InvalidBucketAcLWithObjectOwnership error code. For more information, see Setting Object Ownership on an existing bucket in the Amazon S3 User Guide.

    • S3 Block Public Access - If your specific use case requires granting public access to your S3 resources, you can disable Block Public Access. Specifically, you can create a new bucket with Block Public Access enabled, then separately call the DeletePublicAccessBlock API. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about S3 Block Public Access, see Blocking public access to your Amazon S3 storage in the Amazon S3 User Guide.

  • Directory bucket permissions - You must have the s3express:CreateBucket permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    The permissions for ACLs, Object Lock, S3 Object Ownership, and S3 Block Public Access are not supported for directory buckets. For directory buckets, all Block Public Access settings are enabled at the bucket level and S3 Object Ownership is set to Bucket owner enforced (ACLs disabled). These settings can't be modified.

    For more information about permissions for creating and working with directory buckets, see Directory buckets in the Amazon S3 User Guide. For more information about supported S3 features for directory buckets, see Features of S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

The following operations are related to CreateBucket:

", + "CreateMultipartUpload": "

This action initiates a multipart upload and returns an upload ID. This upload ID is used to associate all of the parts in the specific multipart upload. You specify this upload ID in each of your subsequent upload part requests (see UploadPart). You also include this upload ID in the final request to either complete or abort the multipart upload request. For more information about multipart uploads, see Multipart Upload Overview in the Amazon S3 User Guide.

After you initiate a multipart upload and upload one or more parts, to stop being charged for storing the uploaded parts, you must either complete or abort the multipart upload. Amazon S3 frees up the space used to store the parts and stops charging you for storing them only after you either complete or abort a multipart upload.

If you have configured a lifecycle rule to abort incomplete multipart uploads, the created multipart upload must be completed within the number of days specified in the bucket lifecycle configuration. Otherwise, the incomplete multipart upload becomes eligible for an abort action and Amazon S3 aborts the multipart upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

  • Directory buckets - S3 Lifecycle is not supported by directory buckets.

  • Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Request signing

For request signing, multipart upload is just a series of regular requests. You initiate a multipart upload, send one or more requests to upload parts, and then complete the multipart upload process. You sign each request individually. There is nothing special about signing multipart upload requests. For more information about signing, see Authenticating Requests (Amazon Web Services Signature Version 4) in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - For information about the permissions required to use the multipart upload API, see Multipart upload and permissions in the Amazon S3 User Guide.

    To perform a multipart upload with encryption by using an Amazon Web Services KMS key, the requester must have permission to the kms:Decrypt and kms:GenerateDataKey* actions on the key. These permissions are required because Amazon S3 must decrypt and read data from the encrypted file parts before it completes the multipart upload. For more information, see Multipart upload API and permissions and Protecting data using server-side encryption with Amazon Web Services KMS in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Encryption
  • General purpose buckets - Server-side encryption is for data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers and decrypts it when you access it. Amazon S3 automatically encrypts all new objects that are uploaded to an S3 bucket. When doing a multipart upload, if you don't specify encryption information in your request, the encryption setting of the uploaded parts is set to the default encryption configuration of the destination bucket. By default, all buckets have a base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). If the destination bucket has a default encryption configuration that uses server-side encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided key to encrypt the uploaded parts. When you perform a CreateMultipartUpload operation, if you want to use a different type of encryption setting for the uploaded parts, you can request that Amazon S3 encrypts the object with a different encryption key (such as an Amazon S3 managed key, a KMS key, or a customer-provided key). When the encryption setting in your request is different from the default encryption configuration of the destination bucket, the encryption setting in your request takes precedence. If you choose to provide your own encryption key, the request headers you provide in UploadPart and UploadPartCopy requests must match the headers you used in the CreateMultipartUpload request.

    • Use KMS keys (SSE-KMS) that include the Amazon Web Services managed key (aws/s3) and KMS customer managed keys stored in Key Management Service (KMS) – If you want Amazon Web Services to manage the keys used to encrypt data, specify the following headers in the request.

      • x-amz-server-side-encryption

      • x-amz-server-side-encryption-aws-kms-key-id

      • x-amz-server-side-encryption-context

      • If you specify x-amz-server-side-encryption:aws:kms, but don't provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key (aws/s3 key) in KMS to protect the data.

      • To perform a multipart upload with encryption by using an Amazon Web Services KMS key, the requester must have permission to the kms:Decrypt and kms:GenerateDataKey* actions on the key. These permissions are required because Amazon S3 must decrypt and read data from the encrypted file parts before it completes the multipart upload. For more information, see Multipart upload API and permissions and Protecting data using server-side encryption with Amazon Web Services KMS in the Amazon S3 User Guide.

      • If your Identity and Access Management (IAM) user or role is in the same Amazon Web Services account as the KMS key, then you must have these permissions on the key policy. If your IAM user or role is in a different account from the key, then you must have the permissions on both the key policy and your IAM user or role.

      • All GET and PUT requests for an object protected by KMS fail if you don't make them by using Secure Sockets Layer (SSL), Transport Layer Security (TLS), or Signature Version 4. For information about configuring any of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the Signature Version in Request Authentication in the Amazon S3 User Guide.

      For more information about server-side encryption with KMS keys (SSE-KMS), see Protecting Data Using Server-Side Encryption with KMS keys in the Amazon S3 User Guide.

    • Use customer-provided encryption keys (SSE-C) – If you want to manage your own encryption keys, provide all the following headers in the request.

      • x-amz-server-side-encryption-customer-algorithm

      • x-amz-server-side-encryption-customer-key

      • x-amz-server-side-encryption-customer-key-MD5

      For more information about server-side encryption with customer-provided encryption keys (SSE-C), see Protecting data using server-side encryption with customer-provided encryption keys (SSE-C) in the Amazon S3 User Guide.

  • Directory buckets -For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to CreateMultipartUpload:

", + "CreateSession": "

Creates a session that establishes temporary security credentials to support fast authentication and authorization for the Zonal endpoint APIs on directory buckets. For more information about Zonal endpoint APIs that include the Availability Zone in the request endpoint, see S3 Express One Zone APIs in the Amazon S3 User Guide.

To make Zonal endpoint API requests on a directory bucket, use the CreateSession API operation. Specifically, you grant s3express:CreateSession permission to a bucket in a bucket policy or an IAM identity-based policy. Then, you use IAM credentials to make the CreateSession API request on the bucket, which returns temporary security credentials that include the access key ID, secret access key, session token, and expiration. These credentials have associated permissions to access the Zonal endpoint APIs. After the session is created, you don’t need to use other policies to grant permissions to each Zonal endpoint API individually. Instead, in your Zonal endpoint API requests, you sign your requests by applying the temporary security credentials of the session to the request headers and following the SigV4 protocol for authentication. You also apply the session token to the x-amz-s3session-token request header for authorization. Temporary security credentials are scoped to the bucket and expire after 5 minutes. After the expiration time, any calls that you make with those credentials will fail. You must use IAM credentials again to make a CreateSession API request that generates a new set of temporary credentials for use. Temporary credentials cannot be extended or refreshed beyond the original specified interval.

If you use Amazon Web Services SDKs, SDKs handle the session token refreshes automatically to avoid service interruptions when a session expires. We recommend that you use the Amazon Web Services SDKs to initiate and manage requests to the CreateSession API. For more information, see Performance guidelines and design patterns in the Amazon S3 User Guide.

  • You must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

  • CopyObject API operation - Unlike other Zonal endpoint APIs, the CopyObject API operation doesn't use the temporary security credentials returned from the CreateSession API operation for authentication and authorization. For information about authentication and authorization of the CopyObject API operation on directory buckets, see CopyObject.

  • HeadBucket API operation - Unlike other Zonal endpoint APIs, the HeadBucket API operation doesn't use the temporary security credentials returned from the CreateSession API operation for authentication and authorization. For information about authentication and authorization of the HeadBucket API operation on directory buckets, see HeadBucket.

Permissions

To obtain temporary security credentials, you must create a bucket policy or an IAM identity-based policy that grants s3express:CreateSession permission to the bucket. In a policy, you can have the s3express:SessionMode condition key to control who can create a ReadWrite or ReadOnly session. For more information about ReadWrite or ReadOnly sessions, see x-amz-create-session-mode . For example policies, see Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone in the Amazon S3 User Guide.

To grant cross-account access to Zonal endpoint APIs, the bucket policy should also grant both accounts the s3express:CreateSession permission.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

", + "DeleteBucket": "

Deletes the S3 bucket. All objects (including all object versions and delete markers) in the bucket must be deleted before the bucket itself can be deleted.

  • Directory buckets - If multipart uploads in a directory bucket are in progress, you can't delete the bucket until all the in-progress multipart uploads are aborted or completed.

  • Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - You must have the s3:DeleteBucket permission on the specified bucket in a policy.

  • Directory bucket permissions - You must have the s3express:DeleteBucket permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

The following operations are related to DeleteBucket:

", + "DeleteBucketAnalyticsConfiguration": "

This operation is not supported by directory buckets.

Deletes an analytics configuration for the bucket (specified by the analytics configuration ID).

To use this operation, you must have permissions to perform the s3:PutAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis.

The following operations are related to DeleteBucketAnalyticsConfiguration:

", + "DeleteBucketCors": "

This operation is not supported by directory buckets.

Deletes the cors configuration information set for the bucket.

To use this operation, you must have permission to perform the s3:PutBucketCORS action. The bucket owner has this permission by default and can grant this permission to others.

For information about cors, see Enabling Cross-Origin Resource Sharing in the Amazon S3 User Guide.

Related Resources

", + "DeleteBucketEncryption": "

This operation is not supported by directory buckets.

This implementation of the DELETE action resets the default encryption for the bucket as server-side encryption with Amazon S3 managed keys (SSE-S3). For information about the bucket default encryption feature, see Amazon S3 Bucket Default Encryption in the Amazon S3 User Guide.

To use this operation, you must have permissions to perform the s3:PutEncryptionConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to your Amazon S3 Resources in the Amazon S3 User Guide.

The following operations are related to DeleteBucketEncryption:

", + "DeleteBucketIntelligentTieringConfiguration": "

This operation is not supported by directory buckets.

Deletes the S3 Intelligent-Tiering configuration from the specified bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to DeleteBucketIntelligentTieringConfiguration include:

", + "DeleteBucketInventoryConfiguration": "

This operation is not supported by directory buckets.

Deletes an inventory configuration (identified by the inventory ID) from the bucket.

To use this operation, you must have permissions to perform the s3:PutInventoryConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

Operations related to DeleteBucketInventoryConfiguration include:

", + "DeleteBucketLifecycle": "

This operation is not supported by directory buckets.

Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 no longer automatically deletes any objects on the basis of rules contained in the deleted lifecycle configuration.

To use this operation, you must have permission to perform the s3:PutLifecycleConfiguration action. By default, the bucket owner has this permission and the bucket owner can grant this permission to others.

There is usually some time lag before lifecycle configuration deletion is fully propagated to all the Amazon S3 systems.

For more information about the object expiration, see Elements to Describe Lifecycle Actions.

Related actions include:

", + "DeleteBucketMetricsConfiguration": "

This operation is not supported by directory buckets.

Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.

To use this operation, you must have permissions to perform the s3:PutMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to DeleteBucketMetricsConfiguration:

", + "DeleteBucketOwnershipControls": "

This operation is not supported by directory buckets.

Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

For information about Amazon S3 Object Ownership, see Using Object Ownership.

The following operations are related to DeleteBucketOwnershipControls:

", + "DeleteBucketPolicy": "

Deletes the policy of a specified bucket.

Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions

If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must both have the DeleteBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets, the root principal in a bucket owner's Amazon Web Services account can perform the GetBucketPolicy, PutBucketPolicy, and DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the root principal's access. Bucket owner root principals can only be blocked from performing these API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

  • General purpose bucket permissions - The s3:DeleteBucketPolicy permission is required in a policy. For more information about general purpose buckets bucket policies, see Using Bucket Policies and User Policies in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation, you must have the s3express:DeleteBucketPolicy permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

The following operations are related to DeleteBucketPolicy

", + "DeleteBucketReplication": "

This operation is not supported by directory buckets.

Deletes the replication configuration from the bucket.

To use this operation, you must have permissions to perform the s3:PutReplicationConfiguration action. The bucket owner has these permissions by default and can grant it to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

It can take a while for the deletion of a replication configuration to fully propagate.

For information about replication configuration, see Replication in the Amazon S3 User Guide.

The following operations are related to DeleteBucketReplication:

", + "DeleteBucketTagging": "

This operation is not supported by directory buckets.

Deletes the tags from the bucket.

To use this operation, you must have permission to perform the s3:PutBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others.

The following operations are related to DeleteBucketTagging:

", + "DeleteBucketWebsite": "

This operation is not supported by directory buckets.

This action removes the website configuration for a bucket. Amazon S3 returns a 200 OK response upon successfully deleting a website configuration on the specified bucket. You will get a 200 OK response if the website configuration you are trying to delete does not exist on the bucket. Amazon S3 returns a 404 response if the bucket specified in the request does not exist.

This DELETE action requires the S3:DeleteBucketWebsite permission. By default, only the bucket owner can delete the website configuration attached to a bucket. However, bucket owners can grant other users permission to delete the website configuration by writing a bucket policy granting them the S3:DeleteBucketWebsite permission.

For more information about hosting websites, see Hosting Websites on Amazon S3.

The following operations are related to DeleteBucketWebsite:

", + "DeleteObject": "

Removes an object from a bucket. The behavior depends on the bucket's versioning state:

  • If versioning is enabled, the operation removes the null version (if there is one) of an object and inserts a delete marker, which becomes the latest version of the object. If there isn't a null version, Amazon S3 does not remove any objects but will still respond that the command was successful.

  • If versioning is suspended or not enabled, the operation permanently deletes the object.

  • Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the versionId query parameter in the request.

  • Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

To remove a specific version, you must use the versionId query parameter. Using this query parameter permanently deletes the version. If the object deleted is a delete marker, Amazon S3 sets the response header x-amz-delete-marker to true.

If the object you want to delete is in a bucket where the bucket versioning configuration is MFA Delete enabled, you must include the x-amz-mfa request header in the DELETE versionId request. Requests that include x-amz-mfa must use HTTPS. For more information about MFA Delete, see Using MFA Delete in the Amazon S3 User Guide. To see sample requests that use versioning, see Sample Request.

Directory buckets - MFA delete is not supported by directory buckets.

You can delete objects by explicitly calling DELETE Object or calling (PutBucketLifecycle) to enable Amazon S3 to remove them for you. If you want to block users or accounts from removing or deleting objects from your bucket, you must deny them the s3:DeleteObject, s3:DeleteObjectVersion, and s3:PutLifeCycleConfiguration actions.

Directory buckets - S3 Lifecycle is not supported by directory buckets.

Permissions
  • General purpose bucket permissions - The following permissions are required in your policies when your DeleteObjects request includes specific headers.

    • s3:DeleteObject - To delete an object from a bucket, you must always have the s3:DeleteObject permission.

    • s3:DeleteObjectVersion - To delete a specific version of an object from a versiong-enabled bucket, you must have the s3:DeleteObjectVersion permission.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following action is related to DeleteObject:

", + "DeleteObjectTagging": "

This operation is not supported by directory buckets.

Removes the entire tag set from the specified object. For more information about managing object tags, see Object Tagging.

To use this operation, you must have permission to perform the s3:DeleteObjectTagging action.

To delete tags of a specific object version, add the versionId query parameter in the request. You will need permission for the s3:DeleteObjectVersionTagging action.

The following operations are related to DeleteObjectTagging:

", + "DeleteObjects": "

This operation enables you to delete multiple objects from a bucket using a single HTTP request. If you know the object keys that you want to delete, then this operation provides a suitable alternative to sending individual delete requests, reducing per-request overhead.

The request can contain a list of up to 1000 keys that you want to delete. In the XML, you provide the object key names, and optionally, version IDs if you want to delete a specific version of the object from a versioning-enabled bucket. For each key, Amazon S3 performs a delete operation and returns the result of that delete, success or failure, in the response. Note that if the object specified in the request is not found, Amazon S3 returns the result as deleted.

  • Directory buckets - S3 Versioning isn't enabled and supported for directory buckets.

  • Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

The operation supports two modes for the response: verbose and quiet. By default, the operation uses verbose mode in which the response includes the result of deletion of each key in your request. In quiet mode the response includes only keys where the delete operation encountered an error. For a successful deletion in a quiet mode, the operation does not return any information about the delete in the response body.

When performing this action on an MFA Delete enabled bucket, that attempts to delete any versioned objects, you must include an MFA token. If you do not provide one, the entire request will fail, even if there are non-versioned objects you are trying to delete. If you provide an invalid token, whether there are versioned keys in the request or not, the entire Multi-Object Delete request will fail. For information about MFA Delete, see MFA Delete in the Amazon S3 User Guide.

Directory buckets - MFA delete is not supported by directory buckets.

Permissions
  • General purpose bucket permissions - The following permissions are required in your policies when your DeleteObjects request includes specific headers.

    • s3:DeleteObject - To delete an object from a bucket, you must always specify the s3:DeleteObject permission.

    • s3:DeleteObjectVersion - To delete a specific version of an object from a versiong-enabled bucket, you must specify the s3:DeleteObjectVersion permission.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Content-MD5 request header
  • General purpose bucket - The Content-MD5 request header is required for all Multi-Object Delete requests. Amazon S3 uses the header value to ensure that your request body has not been altered in transit.

  • Directory bucket - The Content-MD5 request header or a additional checksum request header (including x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-sha1, or x-amz-checksum-sha256) is required for all Multi-Object Delete requests.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to DeleteObjects:

", + "DeletePublicAccessBlock": "

This operation is not supported by directory buckets.

Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to DeletePublicAccessBlock:

", + "GetBucketAccelerateConfiguration": "

This operation is not supported by directory buckets.

This implementation of the GET action uses the accelerate subresource to return the Transfer Acceleration state of a bucket, which is either Enabled or Suspended. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers to and from Amazon S3.

To use this operation, you must have permission to perform the s3:GetAccelerateConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to your Amazon S3 Resources in the Amazon S3 User Guide.

You set the Transfer Acceleration state of an existing bucket to Enabled or Suspended by using the PutBucketAccelerateConfiguration operation.

A GET accelerate request does not return a state value for a bucket that has no transfer acceleration state. A bucket has no Transfer Acceleration state if a state has never been set on the bucket.

For more information about transfer acceleration, see Transfer Acceleration in the Amazon S3 User Guide.

The following operations are related to GetBucketAccelerateConfiguration:

", + "GetBucketAcl": "

This operation is not supported by directory buckets.

This implementation of the GET action uses the acl subresource to return the access control list (ACL) of a bucket. To use GET to return the ACL of the bucket, you must have the READ_ACP access to the bucket. If READ_ACP permission is granted to the anonymous user, you can return the ACL of the bucket without using an authorization header.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read ACLs are still supported and return the bucket-owner-full-control ACL with the owner being the account that created the bucket. For more information, see Controlling object ownership and disabling ACLs in the Amazon S3 User Guide.

The following operations are related to GetBucketAcl:

", + "GetBucketAnalyticsConfiguration": "

This operation is not supported by directory buckets.

This implementation of the GET action returns an analytics configuration (identified by the analytics configuration ID) from the bucket.

To use this operation, you must have permissions to perform the s3:GetAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis in the Amazon S3 User Guide.

The following operations are related to GetBucketAnalyticsConfiguration:

", + "GetBucketCors": "

This operation is not supported by directory buckets.

Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the bucket.

To use this operation, you must have permission to perform the s3:GetBucketCORS action. By default, the bucket owner has this permission and can grant it to others.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

For more information about CORS, see Enabling Cross-Origin Resource Sharing.

The following operations are related to GetBucketCors:

", + "GetBucketEncryption": "

This operation is not supported by directory buckets.

Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets have a default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). For information about the bucket default encryption feature, see Amazon S3 Bucket Default Encryption in the Amazon S3 User Guide.

To use this operation, you must have permission to perform the s3:GetEncryptionConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to GetBucketEncryption:

", + "GetBucketIntelligentTieringConfiguration": "

This operation is not supported by directory buckets.

Gets the S3 Intelligent-Tiering configuration from the specified bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to GetBucketIntelligentTieringConfiguration include:

", + "GetBucketInventoryConfiguration": "

This operation is not supported by directory buckets.

Returns an inventory configuration (identified by the inventory configuration ID) from the bucket.

To use this operation, you must have permissions to perform the s3:GetInventoryConfiguration action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

The following operations are related to GetBucketInventoryConfiguration:

", + "GetBucketLifecycle": "

For an updated version of this API, see GetBucketLifecycleConfiguration. If you configured a bucket lifecycle using the filter element, you should see the updated version of this topic. This topic is provided for backward compatibility.

This operation is not supported by directory buckets.

Returns the lifecycle configuration information set on the bucket. For information about lifecycle configuration, see Object Lifecycle Management.

To use this operation, you must have permission to perform the s3:GetLifecycleConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

GetBucketLifecycle has the following special error:

  • Error code: NoSuchLifecycleConfiguration

    • Description: The lifecycle configuration does not exist.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

The following operations are related to GetBucketLifecycle:

", + "GetBucketLifecycleConfiguration": "

This operation is not supported by directory buckets.

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name prefix, one or more object tags, or a combination of both. Accordingly, this section describes the latest API. The response describes the new filter element that you can use to specify a filter to select a subset of objects to which the rule applies. If you are using a previous version of the lifecycle configuration, it still works. For the earlier action, see GetBucketLifecycle.

Returns the lifecycle configuration information set on the bucket. For information about lifecycle configuration, see Object Lifecycle Management.

To use this operation, you must have permission to perform the s3:GetLifecycleConfiguration action. The bucket owner has this permission, by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

GetBucketLifecycleConfiguration has the following special error:

  • Error code: NoSuchLifecycleConfiguration

    • Description: The lifecycle configuration does not exist.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

The following operations are related to GetBucketLifecycleConfiguration:

", + "GetBucketLocation": "

This operation is not supported by directory buckets.

Returns the Region the bucket resides in. You set the bucket's Region using the LocationConstraint request parameter in a CreateBucket request. For more information, see CreateBucket.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

We recommend that you use HeadBucket to return the Region that a bucket resides in. For backward compatibility, Amazon S3 continues to support GetBucketLocation.

The following operations are related to GetBucketLocation:

", + "GetBucketLogging": "

This operation is not supported by directory buckets.

Returns the logging status of a bucket and the permissions users have to view and modify that status.

The following operations are related to GetBucketLogging:

", + "GetBucketMetricsConfiguration": "

This operation is not supported by directory buckets.

Gets a metrics configuration (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.

To use this operation, you must have permissions to perform the s3:GetMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to GetBucketMetricsConfiguration:

", + "GetBucketNotification": "

This operation is not supported by directory buckets.

No longer used, see GetBucketNotificationConfiguration.

", + "GetBucketNotificationConfiguration": "

This operation is not supported by directory buckets.

Returns the notification configuration of a bucket.

If notifications are not enabled on the bucket, the action returns an empty NotificationConfiguration element.

By default, you must be the bucket owner to read the notification configuration of a bucket. However, the bucket owner can use a bucket policy to grant permission to other users to read this configuration with the s3:GetBucketNotification permission.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

For more information about setting and reading the notification configuration on a bucket, see Setting Up Notification of Bucket Events. For more information about bucket policies, see Using Bucket Policies.

The following action is related to GetBucketNotification:

", + "GetBucketOwnershipControls": "

This operation is not supported by directory buckets.

Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying permissions in a policy.

For information about Amazon S3 Object Ownership, see Using Object Ownership.

The following operations are related to GetBucketOwnershipControls:

", + "GetBucketPolicy": "

Returns the policy of a specified bucket.

Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions

If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must both have the GetBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.

If you don't have GetBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets, the root principal in a bucket owner's Amazon Web Services account can perform the GetBucketPolicy, PutBucketPolicy, and DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the root principal's access. Bucket owner root principals can only be blocked from performing these API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

  • General purpose bucket permissions - The s3:GetBucketPolicy permission is required in a policy. For more information about general purpose buckets bucket policies, see Using Bucket Policies and User Policies in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation, you must have the s3express:GetBucketPolicy permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

Example bucket policies

General purpose buckets example bucket policies - See Bucket policy examples in the Amazon S3 User Guide.

Directory bucket example bucket policies - See Example bucket policies for S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

The following action is related to GetBucketPolicy:

", + "GetBucketPolicyStatus": "

This operation is not supported by directory buckets.

Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to use this operation, you must have the s3:GetBucketPolicyStatus permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

For more information about when Amazon S3 considers a bucket public, see The Meaning of \"Public\".

The following operations are related to GetBucketPolicyStatus:

", + "GetBucketReplication": "

This operation is not supported by directory buckets.

Returns the replication configuration of a bucket.

It can take a while to propagate the put or delete a replication configuration to all Amazon S3 systems. Therefore, a get request soon after put or delete can return a wrong result.

For information about replication configuration, see Replication in the Amazon S3 User Guide.

This action requires permissions for the s3:GetReplicationConfiguration action. For more information about permissions, see Using Bucket Policies and User Policies.

If you include the Filter element in a replication configuration, you must also include the DeleteMarkerReplication and Priority elements. The response also returns those elements.

For information about GetBucketReplication errors, see List of replication-related error codes

The following operations are related to GetBucketReplication:

", + "GetBucketRequestPayment": "

This operation is not supported by directory buckets.

Returns the request payment configuration of a bucket. To use this version of the operation, you must be the bucket owner. For more information, see Requester Pays Buckets.

The following operations are related to GetBucketRequestPayment:

", + "GetBucketTagging": "

This operation is not supported by directory buckets.

Returns the tag set associated with the bucket.

To use this operation, you must have permission to perform the s3:GetBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others.

GetBucketTagging has the following special error:

  • Error code: NoSuchTagSet

    • Description: There is no tag set associated with the bucket.

The following operations are related to GetBucketTagging:

", + "GetBucketVersioning": "

This operation is not supported by directory buckets.

Returns the versioning state of a bucket.

To retrieve the versioning state of a bucket, you must be the bucket owner.

This implementation also returns the MFA Delete status of the versioning state. If the MFA Delete status is enabled, the bucket owner must use an authentication device to change the versioning state of the bucket.

The following operations are related to GetBucketVersioning:

", + "GetBucketWebsite": "

This operation is not supported by directory buckets.

Returns the website configuration for a bucket. To host website on Amazon S3, you can configure a bucket as website by adding a website configuration. For more information about hosting websites, see Hosting Websites on Amazon S3.

This GET action requires the S3:GetBucketWebsite permission. By default, only the bucket owner can read the bucket website configuration. However, bucket owners can allow other users to read the website configuration by writing a bucket policy granting them the S3:GetBucketWebsite permission.

The following operations are related to GetBucketWebsite:

", + "GetObject": "

Retrieves an object from Amazon S3.

In the GetObject request, specify the full key name for the object.

General purpose buckets - Both the virtual-hosted-style requests and the path-style requests are supported. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg, specify the object key name as /photos/2006/February/sample.jpg. For a path-style request example, if you have the object photos/2006/February/sample.jpg in the bucket named examplebucket, specify the object key name as /examplebucket/photos/2006/February/sample.jpg. For more information about request types, see HTTP Host Header Bucket Specification in the Amazon S3 User Guide.

Directory buckets - Only virtual-hosted-style requests are supported. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg in the bucket named examplebucket--use1-az5--x-s3, specify the object key name as /photos/2006/February/sample.jpg. Also, when you make requests to this API operation, your requests are sent to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - You must have the required permissions in a policy. To use GetObject, you must have the READ access to the object (or version). If you grant READ access to the anonymous user, the GetObject operation returns the object without using an authorization header. For more information, see Specifying permissions in a policy in the Amazon S3 User Guide.

    If you include a versionId in your request header, you must have the s3:GetObjectVersion permission to access a specific version of an object. The s3:GetObject permission is not required in this scenario.

    If you request the current version of an object without a specific versionId in the request header, only the s3:GetObject permission is required. The s3:GetObjectVersion permission is not required in this scenario.

    If the object that you request doesn’t exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

    • If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code 404 Not Found error.

    • If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP status code 403 Access Denied error.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Storage classes

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a copy using RestoreObject. Otherwise, this operation returns an InvalidObjectState error. For information about restoring archived objects, see Restoring Archived Objects in the Amazon S3 User Guide.

Directory buckets - For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects. Unsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

Encryption

Encryption request headers, like x-amz-server-side-encryption, should not be sent for the GetObject requests, if your object uses server-side encryption with Amazon S3 managed encryption keys (SSE-S3), server-side encryption with Key Management Service (KMS) keys (SSE-KMS), or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in your GetObject requests for the object that uses these types of keys, you’ll get an HTTP 400 Bad Request error.

Overriding response header values through the request

There are times when you want to override certain response header values of a GetObject response. For example, you might override the Content-Disposition response header value through your GetObject request.

You can override values for a set of response headers. These modified response header values are included only in a successful response, that is, when the HTTP status code 200 OK is returned. The headers you can override using the following query parameters in the request are a subset of the headers that Amazon S3 accepts when you create an object.

The response headers that you can override for the GetObject response are Cache-Control, Content-Disposition, Content-Encoding, Content-Language, Content-Type, and Expires.

To override values for a set of response headers in the GetObject response, you can use the following query parameters in the request.

  • response-cache-control

  • response-content-disposition

  • response-content-encoding

  • response-content-language

  • response-content-type

  • response-expires

When you use these parameters, you must sign the request by using either an Authorization header or a presigned URL. These parameters cannot be used with an unsigned (anonymous) request.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to GetObject:

", + "GetObjectAcl": "

This operation is not supported by directory buckets.

Returns the access control list (ACL) of an object. To use this operation, you must have s3:GetObjectAcl permissions or READ_ACP access to the object. For more information, see Mapping of ACL permissions and access policy permissions in the Amazon S3 User Guide

This functionality is not supported for Amazon S3 on Outposts.

By default, GET returns ACL information about the current version of an object. To return ACL information about a different version, use the versionId subresource.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read ACLs are still supported and return the bucket-owner-full-control ACL with the owner being the account that created the bucket. For more information, see Controlling object ownership and disabling ACLs in the Amazon S3 User Guide.

The following operations are related to GetObjectAcl:

", + "GetObjectAttributes": "

Retrieves all the metadata from an object without returning the object itself. This operation is useful if you're interested only in an object's metadata.

GetObjectAttributes combines the functionality of HeadObject and ListParts. All of the data returned with each of those individual calls can be returned with a single call to GetObjectAttributes.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - To use GetObjectAttributes, you must have READ access to the object. The permissions that you need to use this operation with depend on whether the bucket is versioned. If the bucket is versioned, you need both the s3:GetObjectVersion and s3:GetObjectVersionAttributes permissions for this operation. If the bucket is not versioned, you need the s3:GetObject and s3:GetObjectAttributes permissions. For more information, see Specifying Permissions in a Policy in the Amazon S3 User Guide. If the object that you request does not exist, the error Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

    • If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code 404 Not Found (\"no such key\") error.

    • If you don't have the s3:ListBucket permission, Amazon S3 returns an HTTP status code 403 Forbidden (\"access denied\") error.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Encryption

Encryption request headers, like x-amz-server-side-encryption, should not be sent for HEAD requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). The x-amz-server-side-encryption header is used when you PUT an object to S3 and want to specify the encryption method. If you include this header in a GET request for an object that uses these types of keys, you’ll get an HTTP 400 Bad Request error. It's because the encryption method can't be changed when you retrieve the object.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the object, you must use the following headers to provide the encryption key for the server to be able to retrieve the object's metadata. The headers are:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

Directory bucket permissions - For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

Versioning

Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the versionId query parameter in the request.

Conditional request headers

Consider the following when using request headers:

  • If both of the If-Match and If-Unmodified-Since headers are present in the request as follows, then Amazon S3 returns the HTTP status code 200 OK and the data requested:

    • If-Match condition evaluates to true.

    • If-Unmodified-Since condition evaluates to false.

    For more information about conditional requests, see RFC 7232.

  • If both of the If-None-Match and If-Modified-Since headers are present in the request as follows, then Amazon S3 returns the HTTP status code 304 Not Modified:

    • If-None-Match condition evaluates to false.

    • If-Modified-Since condition evaluates to true.

    For more information about conditional requests, see RFC 7232.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following actions are related to GetObjectAttributes:

", + "GetObjectLegalHold": "

This operation is not supported by directory buckets.

Gets an object's current legal hold status. For more information, see Locking Objects.

This functionality is not supported for Amazon S3 on Outposts.

The following action is related to GetObjectLegalHold:

", + "GetObjectLockConfiguration": "

This operation is not supported by directory buckets.

Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see Locking Objects.

The following action is related to GetObjectLockConfiguration:

", + "GetObjectRetention": "

This operation is not supported by directory buckets.

Retrieves an object's retention settings. For more information, see Locking Objects.

This functionality is not supported for Amazon S3 on Outposts.

The following action is related to GetObjectRetention:

", + "GetObjectTagging": "

This operation is not supported by directory buckets.

Returns the tag-set of an object. You send the GET request against the tagging subresource associated with the object.

To use this operation, you must have permission to perform the s3:GetObjectTagging action. By default, the GET action returns information about current version of an object. For a versioned bucket, you can have multiple versions of an object in your bucket. To retrieve tags of any other version, use the versionId query parameter. You also need permission for the s3:GetObjectVersionTagging action.

By default, the bucket owner has this permission and can grant this permission to others.

For information about the Amazon S3 object tagging feature, see Object Tagging.

The following actions are related to GetObjectTagging:

", + "GetObjectTorrent": "

This operation is not supported by directory buckets.

Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're distributing large files.

You can get torrent only for objects that are less than 5 GB in size, and that are not encrypted using server-side encryption with a customer-provided encryption key.

To use GET, you must have READ access to the object.

This functionality is not supported for Amazon S3 on Outposts.

The following action is related to GetObjectTorrent:

", + "GetPublicAccessBlock": "

This operation is not supported by directory buckets.

Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketPublicAccessBlock permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an object, it checks the PublicAccessBlock configuration for both the bucket (or the bucket that contains the object) and the bucket owner's account. If the PublicAccessBlock settings are different between the bucket and the account, Amazon S3 uses the most restrictive combination of the bucket-level and account-level settings.

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

The following operations are related to GetPublicAccessBlock:

", + "HeadBucket": "

You can use this operation to determine if a bucket exists and if you have permission to access it. The action returns a 200 OK if the bucket exists and you have permission to access it.

If the bucket does not exist or you do not have permission to access it, the HEAD request returns a generic 400 Bad Request, 403 Forbidden or 404 Not Found code. A message body is not included, so you cannot determine the exception beyond these error codes.

Directory buckets - You must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Authentication and authorization

All HeadBucket requests must be authenticated and signed by using IAM credentials (access key ID and secret access key for the IAM identities). All headers with the x-amz- prefix, including x-amz-copy-source, must be signed. For more information, see REST Authentication.

Directory bucket - You must use IAM credentials to authenticate and authorize your access to the HeadBucket API operation, instead of using the temporary security credentials through the CreateSession API operation.

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

Permissions

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

", + "HeadObject": "

The HEAD operation retrieves metadata from an object without returning the object itself. This operation is useful if you're interested only in an object's metadata.

A HEAD request has the same options as a GET operation on an object. The response is identical to the GET response except that there is no response body. Because of this, if the HEAD request generates an error, it returns a generic code, such as 400 Bad Request, 403 Forbidden, 404 Not Found, 405 Method Not Allowed, 412 Precondition Failed, or 304 Not Modified. It's not possible to retrieve the exact exception of these error codes.

Request headers are limited to 8 KB in size. For more information, see Common Request Headers.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions

  • General purpose bucket permissions - To use HEAD, you must have the s3:GetObject permission. You need the relevant read object (or version) permission for this operation. For more information, see Actions, resources, and condition keys for Amazon S3 in the Amazon S3 User Guide.

    If the object you request doesn't exist, the error that Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

    • If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an HTTP status code 404 Not Found error.

    • If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP status code 403 Forbidden error.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Encryption

Encryption request headers, like x-amz-server-side-encryption, should not be sent for HEAD requests if your object uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed encryption keys (SSE-S3). The x-amz-server-side-encryption header is used when you PUT an object to S3 and want to specify the encryption method. If you include this header in a HEAD request for an object that uses these types of keys, you’ll get an HTTP 400 Bad Request error. It's because the encryption method can't be changed when you retrieve the object.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the object, you must use the following headers to provide the encryption key for the server to be able to retrieve the object's metadata. The headers are:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

Directory bucket permissions - For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

Versioning
  • If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

  • If the specified version is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

  • Directory buckets - Delete marker is not supported by directory buckets.

  • Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the versionId query parameter in the request.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following actions are related to HeadObject:

", + "ListBucketAnalyticsConfigurations": "

This operation is not supported by directory buckets.

Lists the analytics configurations for the bucket. You can have up to 1,000 analytics configurations per bucket.

This action supports list pagination and does not return more than 100 configurations at a time. You should always check the IsTruncated element in the response. If there are no more configurations to list, IsTruncated is set to false. If there are more configurations to list, IsTruncated is set to true, and there will be a value in NextContinuationToken. You use the NextContinuationToken value to continue the pagination of the list by passing the value in continuation-token in the request to GET the next page.

To use this operation, you must have permissions to perform the s3:GetAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis.

The following operations are related to ListBucketAnalyticsConfigurations:

", + "ListBucketIntelligentTieringConfigurations": "

This operation is not supported by directory buckets.

Lists the S3 Intelligent-Tiering configuration from the specified bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to ListBucketIntelligentTieringConfigurations include:

", + "ListBucketInventoryConfigurations": "

This operation is not supported by directory buckets.

Returns a list of inventory configurations for the bucket. You can have up to 1,000 analytics configurations per bucket.

This action supports list pagination and does not return more than 100 configurations at a time. Always check the IsTruncated element in the response. If there are no more configurations to list, IsTruncated is set to false. If there are more configurations to list, IsTruncated is set to true, and there is a value in NextContinuationToken. You use the NextContinuationToken value to continue the pagination of the list by passing the value in continuation-token in the request to GET the next page.

To use this operation, you must have permissions to perform the s3:GetInventoryConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory

The following operations are related to ListBucketInventoryConfigurations:

", + "ListBucketMetricsConfigurations": "

This operation is not supported by directory buckets.

Lists the metrics configurations for the bucket. The metrics configurations are only for the request metrics of the bucket and do not provide information on daily storage metrics. You can have up to 1,000 configurations per bucket.

This action supports list pagination and does not return more than 100 configurations at a time. Always check the IsTruncated element in the response. If there are no more configurations to list, IsTruncated is set to false. If there are more configurations to list, IsTruncated is set to true, and there is a value in NextContinuationToken. You use the NextContinuationToken value to continue the pagination of the list by passing the value in continuation-token in the request to GET the next page.

To use this operation, you must have permissions to perform the s3:GetMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For more information about metrics configurations and CloudWatch request metrics, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to ListBucketMetricsConfigurations:

", + "ListBuckets": "

This operation is not supported by directory buckets.

Returns a list of all buckets owned by the authenticated sender of the request. To use this operation, you must have the s3:ListAllMyBuckets permission.

For information about Amazon S3 buckets, see Creating, configuring, and working with Amazon S3 buckets.

", + "ListDirectoryBuckets": "

Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions

You must have the s3express:ListAllMyDirectoryBuckets permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

", + "ListMultipartUploads": "

This operation lists in-progress multipart uploads in a bucket. An in-progress multipart upload is a multipart upload that has been initiated by the CreateMultipartUpload request, but has not yet been completed or aborted.

Directory buckets - If multipart uploads in a directory bucket are in progress, you can't delete the bucket until all the in-progress multipart uploads are aborted or completed.

The ListMultipartUploads operation returns a maximum of 1,000 multipart uploads in the response. The limit of 1,000 multipart uploads is also the default value. You can further limit the number of uploads in a response by specifying the max-uploads request parameter. If there are more than 1,000 multipart uploads that satisfy your ListMultipartUploads request, the response returns an IsTruncated element with the value of true, a NextKeyMarker element, and a NextUploadIdMarker element. To list the remaining multipart uploads, you need to make subsequent ListMultipartUploads requests. In these requests, include two query parameters: key-marker and upload-id-marker. Set the value of key-marker to the NextKeyMarker value from the previous response. Similarly, set the value of upload-id-marker to the NextUploadIdMarker value from the previous response.

Directory buckets - The upload-id-marker element and the NextUploadIdMarker element aren't supported by directory buckets. To list the additional multipart uploads, you only need to set the value of key-marker to the NextKeyMarker value from the previous response.

For more information about multipart uploads, see Uploading Objects Using Multipart Upload in the Amazon S3 User Guide.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - For information about permissions required to use the multipart upload API, see Multipart Upload and Permissions in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Sorting of multipart uploads in response
  • General purpose bucket - In the ListMultipartUploads response, the multipart uploads are sorted based on two criteria:

    • Key-based sorting - Multipart uploads are initially sorted in ascending order based on their object keys.

    • Time-based sorting - For uploads that share the same object key, they are further sorted in ascending order based on the upload initiation time. Among uploads with the same key, the one that was initiated first will appear before the ones that were initiated later.

  • Directory bucket - In the ListMultipartUploads response, the multipart uploads aren't sorted lexicographically based on the object keys.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to ListMultipartUploads:

", + "ListObjectVersions": "

This operation is not supported by directory buckets.

Returns metadata about all versions of the objects in a bucket. You can also use request parameters as selection criteria to return metadata about a subset of all the object versions.

To use this operation, you must have permission to perform the s3:ListBucketVersions action. Be aware of the name difference.

A 200 OK response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately.

To use this operation, you must have READ access to the bucket.

The following operations are related to ListObjectVersions:

", + "ListObjects": "

This operation is not supported by directory buckets.

Returns some or all (up to 1,000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or invalid XML. Be sure to design your application to parse the contents of the response and handle it appropriately.

This action has been revised. We recommend that you use the newer version, ListObjectsV2, when developing applications. For backward compatibility, Amazon S3 continues to support ListObjects.

The following operations are related to ListObjects:

", + "ListObjectsV2": "

Returns some or all (up to 1,000) of the objects in a bucket with each request. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately. For more information about listing objects, see Listing object keys programmatically in the Amazon S3 User Guide. To get a list of your buckets, see ListBuckets.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - To use this operation, you must have READ access to the bucket. You must have permission to perform the s3:ListBucket action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Sorting order of returned objects
  • General purpose bucket - For general purpose buckets, ListObjectsV2 returns objects in lexicographical order based on their key names.

  • Directory bucket - For directory buckets, ListObjectsV2 does not return objects in lexicographical order.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

This section describes the latest revision of this action. We recommend that you use this revised API operation for application development. For backward compatibility, Amazon S3 continues to support the prior version of this API operation, ListObjects.

The following operations are related to ListObjectsV2:

", + "ListParts": "

Lists the parts that have been uploaded for a specific multipart upload.

To use this operation, you must provide the upload ID in the request. You obtain this uploadID by sending the initiate multipart upload request through CreateMultipartUpload.

The ListParts request returns a maximum of 1,000 uploaded parts. The limit of 1,000 parts is also the default value. You can restrict the number of parts in a response by specifying the max-parts request parameter. If your multipart upload consists of more than 1,000 parts, the response returns an IsTruncated field with the value of true, and a NextPartNumberMarker element. To list remaining uploaded parts, in subsequent ListParts requests, include the part-number-marker query string parameter and set its value to the NextPartNumberMarker field value from the previous response.

For more information on multipart uploads, see Uploading Objects Using Multipart Upload in the Amazon S3 User Guide.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - For information about permissions required to use the multipart upload API, see Multipart Upload and Permissions in the Amazon S3 User Guide.

    If the upload was created using server-side encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), you must have permission to the kms:Decrypt action for the ListParts request to succeed.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to ListParts:

", + "PutBucketAccelerateConfiguration": "

This operation is not supported by directory buckets.

Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers to Amazon S3.

To use this operation, you must have permission to perform the s3:PutAccelerateConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

The Transfer Acceleration state of a bucket can be set to one of the following two values:

  • Enabled – Enables accelerated data transfers to the bucket.

  • Suspended – Disables accelerated data transfers to the bucket.

The GetBucketAccelerateConfiguration action returns the transfer acceleration state of a bucket.

After setting the Transfer Acceleration state of a bucket to Enabled, it might take up to thirty minutes before the data transfer rates to the bucket increase.

The name of the bucket used for Transfer Acceleration must be DNS-compliant and must not contain periods (\".\").

For more information about transfer acceleration, see Transfer Acceleration.

The following operations are related to PutBucketAccelerateConfiguration:

", + "PutBucketAcl": "

This operation is not supported by directory buckets.

Sets the permissions on an existing bucket using access control lists (ACL). For more information, see Using ACLs. To set the ACL of a bucket, you must have the WRITE_ACP permission.

You can use one of the following two ways to set a bucket's permissions:

  • Specify the ACL in the request body

  • Specify permissions using request headers

You cannot specify access permission using both the body and the request headers.

Depending on your application needs, you may choose to set the ACL on a bucket using either the request body or the headers. For example, if you have an existing application that updates a bucket ACL using the request body, then you can continue to use that approach.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. You must use policies to grant access to your bucket and the objects in it. Requests to set ACLs or update ACLs fail and return the AccessControlListNotSupported error code. Requests to read ACLs are still supported. For more information, see Controlling object ownership in the Amazon S3 User Guide.

Permissions

You can set access permissions by using one of the following methods:

  • Specify a canned ACL with the x-amz-acl request header. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. Specify the canned ACL name as the value of x-amz-acl. If you use this header, you cannot use other access control-specific headers in your request. For more information, see Canned ACL.

  • Specify access permissions explicitly with the x-amz-grant-read, x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control headers. When using these headers, you specify explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the permission. If you use these ACL-specific headers, you cannot use the x-amz-acl header to set a canned ACL. These parameters map to the set of permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview.

    You specify each grantee as a type=value pair, where the type is one of the following:

    • id – if the value specified is the canonical user ID of an Amazon Web Services account

    • uri – if you are granting permissions to a predefined group

    • emailAddress – if the value specified is the email address of an Amazon Web Services account

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      • US East (N. Virginia)

      • US West (N. California)

      • US West (Oregon)

      • Asia Pacific (Singapore)

      • Asia Pacific (Sydney)

      • Asia Pacific (Tokyo)

      • Europe (Ireland)

      • South America (São Paulo)

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    For example, the following x-amz-grant-write header grants create, overwrite, and delete objects permission to LogDelivery group predefined by Amazon S3 and two Amazon Web Services accounts identified by their email addresses.

    x-amz-grant-write: uri=\"http://acs.amazonaws.com/groups/s3/LogDelivery\", id=\"111122223333\", id=\"555566667777\"

You can use either a canned ACL or specify access permissions explicitly. You cannot do both.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request

  • By URI:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

  • By Email address:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AmazonCustomerByEmail\"><EmailAddress><>Grantees@email.com<></EmailAddress>&</Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl request, appears as the CanonicalUser.

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

The following operations are related to PutBucketAcl:

", + "PutBucketAnalyticsConfiguration": "

This operation is not supported by directory buckets.

Sets an analytics configuration for the bucket (specified by the analytics configuration ID). You can have up to 1,000 analytics configurations per bucket.

You can choose to have storage class analysis export analysis reports sent to a comma-separated values (CSV) flat file. See the DataExport request element. Reports are updated daily and are based on the object filters that you configure. When selecting data export, you specify a destination bucket and an optional destination prefix where the file is written. You can export the data to a destination bucket in a different account. However, the destination bucket must be in the same Region as the bucket that you are making the PUT analytics configuration to. For more information, see Amazon S3 Analytics – Storage Class Analysis.

You must create a bucket policy on the destination bucket where the exported file is written to grant permissions to Amazon S3 to write objects to the bucket. For an example policy, see Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.

To use this operation, you must have permissions to perform the s3:PutAnalyticsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

PutBucketAnalyticsConfiguration has the following special errors:

    • HTTP Error: HTTP 400 Bad Request

    • Code: InvalidArgument

    • Cause: Invalid argument.

    • HTTP Error: HTTP 400 Bad Request

    • Code: TooManyConfigurations

    • Cause: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

    • HTTP Error: HTTP 403 Forbidden

    • Code: AccessDenied

    • Cause: You are not the owner of the specified bucket, or you do not have the s3:PutAnalyticsConfiguration bucket permission to set the configuration on the bucket.

The following operations are related to PutBucketAnalyticsConfiguration:

", + "PutBucketCors": "

This operation is not supported by directory buckets.

Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces it.

To use this operation, you must be allowed to perform the s3:PutBucketCORS action. By default, the bucket owner has this permission and can grant it to others.

You set this configuration on a bucket so that the bucket can service cross-origin requests. For example, you might want to enable a request whose origin is http://www.example.com to access your Amazon S3 bucket at my.example.bucket.com by using the browser's XMLHttpRequest capability.

To enable cross-origin resource sharing (CORS) on a bucket, you add the cors subresource to the bucket. The cors subresource is an XML document in which you configure rules that identify origins and the HTTP methods that can be executed on your bucket. The document is limited to 64 KB in size.

When Amazon S3 receives a cross-origin request (or a pre-flight OPTIONS request) against a bucket, it evaluates the cors configuration on the bucket and uses the first CORSRule rule that matches the incoming browser request to enable a cross-origin request. For a rule to match, the following conditions must be met:

  • The request's Origin header must match AllowedOrigin elements.

  • The request method (for example, GET, PUT, HEAD, and so on) or the Access-Control-Request-Method header in case of a pre-flight OPTIONS request must be one of the AllowedMethod elements.

  • Every header specified in the Access-Control-Request-Headers request header of a pre-flight request must match an AllowedHeader element.

For more information about CORS, go to Enabling Cross-Origin Resource Sharing in the Amazon S3 User Guide.

The following operations are related to PutBucketCors:

", + "PutBucketEncryption": "

This operation is not supported by directory buckets.

This action uses the encryption subresource to configure default encryption and Amazon S3 Bucket Keys for an existing bucket.

By default, all buckets have a default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). You can optionally configure default encryption for a bucket by using server-side encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you specify default encryption by using SSE-KMS, you can also configure Amazon S3 Bucket Keys. If you use PutBucketEncryption to set your default bucket encryption to SSE-KMS, you should verify that your KMS key ID is correct. Amazon S3 does not validate the KMS key ID provided in PutBucketEncryption requests.

This action requires Amazon Web Services Signature Version 4. For more information, see Authenticating Requests (Amazon Web Services Signature Version 4).

To use this operation, you must have permission to perform the s3:PutEncryptionConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

The following operations are related to PutBucketEncryption:

", + "PutBucketIntelligentTieringConfiguration": "

This operation is not supported by directory buckets.

Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can have up to 1,000 S3 Intelligent-Tiering configurations per bucket.

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

Operations related to PutBucketIntelligentTieringConfiguration include:

You only need S3 Intelligent-Tiering enabled on a bucket if you want to automatically move objects stored in the S3 Intelligent-Tiering storage class to the Archive Access or Deep Archive Access tier.

PutBucketIntelligentTieringConfiguration has the following special errors:

HTTP 400 Bad Request Error

Code: InvalidArgument

Cause: Invalid Argument

HTTP 400 Bad Request Error

Code: TooManyConfigurations

Cause: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

HTTP 403 Forbidden Error

Cause: You are not the owner of the specified bucket, or you do not have the s3:PutIntelligentTieringConfiguration bucket permission to set the configuration on the bucket.

", + "PutBucketInventoryConfiguration": "

This operation is not supported by directory buckets.

This implementation of the PUT action adds an inventory configuration (identified by the inventory ID) to the bucket. You can have up to 1,000 inventory configurations per bucket.

Amazon S3 inventory generates inventories of the objects in the bucket on a daily or weekly basis, and the results are published to a flat file. The bucket that is inventoried is called the source bucket, and the bucket where the inventory flat file is stored is called the destination bucket. The destination bucket must be in the same Amazon Web Services Region as the source bucket.

When you configure an inventory for a source bucket, you specify the destination bucket where you want the inventory to be stored, and whether to generate the inventory daily or weekly. You can also configure what object metadata to include and whether to inventory all object versions or only current versions. For more information, see Amazon S3 Inventory in the Amazon S3 User Guide.

You must create a bucket policy on the destination bucket to grant permissions to Amazon S3 to write objects to the bucket in the defined location. For an example policy, see Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.

Permissions

To use this operation, you must have permission to perform the s3:PutInventoryConfiguration action. The bucket owner has this permission by default and can grant this permission to others.

The s3:PutInventoryConfiguration permission allows a user to create an S3 Inventory report that includes all object metadata fields available and to specify the destination bucket to store the inventory. A user with read access to objects in the destination bucket can also access all object metadata fields that are available in the inventory report.

To restrict access to an inventory report, see Restricting access to an Amazon S3 Inventory report in the Amazon S3 User Guide. For more information about the metadata fields available in S3 Inventory, see Amazon S3 Inventory lists in the Amazon S3 User Guide. For more information about permissions, see Permissions related to bucket subresource operations and Identity and access management in Amazon S3 in the Amazon S3 User Guide.

PutBucketInventoryConfiguration has the following special errors:

HTTP 400 Bad Request Error

Code: InvalidArgument

Cause: Invalid Argument

HTTP 400 Bad Request Error

Code: TooManyConfigurations

Cause: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

HTTP 403 Forbidden Error

Cause: You are not the owner of the specified bucket, or you do not have the s3:PutInventoryConfiguration bucket permission to set the configuration on the bucket.

The following operations are related to PutBucketInventoryConfiguration:

", + "PutBucketLifecycle": "

This operation is not supported by directory buckets.

For an updated version of this API, see PutBucketLifecycleConfiguration. This version has been deprecated. Existing lifecycle configurations will work. For new lifecycle configurations, use the updated API.

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. For information about lifecycle configuration, see Object Lifecycle Management in the Amazon S3 User Guide.

By default, all Amazon S3 resources, including buckets, objects, and related subresources (for example, lifecycle configuration and website configuration) are private. Only the resource owner, the Amazon Web Services account that created the resource, can access it. The resource owner can optionally grant access permissions to others by writing an access policy. For this operation, users must get the s3:PutLifecycleConfiguration permission.

You can also explicitly deny permissions. Explicit denial also supersedes any other permissions. If you want to prevent users or accounts from removing or deleting objects from your bucket, you must deny them permissions for the following actions:

  • s3:DeleteObject

  • s3:DeleteObjectVersion

  • s3:PutLifecycleConfiguration

For more information about permissions, see Managing Access Permissions to your Amazon S3 Resources in the Amazon S3 User Guide.

For more examples of transitioning objects to storage classes such as STANDARD_IA or ONEZONE_IA, see Examples of Lifecycle Configuration.

The following operations are related to PutBucketLifecycle:

", + "PutBucketLifecycleConfiguration": "

This operation is not supported by directory buckets.

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. Keep in mind that this will overwrite an existing lifecycle configuration, so if you want to retain any configuration details, they must be included in the new lifecycle configuration. For information about lifecycle configuration, see Managing your storage lifecycle.

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name prefix, one or more object tags, or a combination of both. Accordingly, this section describes the latest API. The previous version of the API supported filtering based only on an object key name prefix, which is supported for backward compatibility. For the related API description, see PutBucketLifecycle.

Rules

You specify the lifecycle configuration in your request body. The lifecycle configuration is specified as XML consisting of one or more rules. An Amazon S3 Lifecycle configuration can have up to 1,000 rules. This limit is not adjustable. Each rule consists of the following:

  • A filter identifying a subset of objects to which the rule applies. The filter can be based on a key name prefix, object tags, or a combination of both.

  • A status indicating whether the rule is in effect.

  • One or more lifecycle transition and expiration actions that you want Amazon S3 to perform on the objects identified by the filter. If the state of your bucket is versioning-enabled or versioning-suspended, you can have many versions of the same object (one current version and zero or more noncurrent versions). Amazon S3 provides predefined actions that you can specify for current and noncurrent object versions.

For more information, see Object Lifecycle Management and Lifecycle Configuration Elements.

Permissions

By default, all Amazon S3 resources are private, including buckets, objects, and related subresources (for example, lifecycle configuration and website configuration). Only the resource owner (that is, the Amazon Web Services account that created it) can access the resource. The resource owner can optionally grant access permissions to others by writing an access policy. For this operation, a user must get the s3:PutLifecycleConfiguration permission.

You can also explicitly deny permissions. An explicit deny also supersedes any other permissions. If you want to block users or accounts from removing or deleting objects from your bucket, you must deny them permissions for the following actions:

  • s3:DeleteObject

  • s3:DeleteObjectVersion

  • s3:PutLifecycleConfiguration

For more information about permissions, see Managing Access Permissions to Your Amazon S3 Resources.

The following operations are related to PutBucketLifecycleConfiguration:

", + "PutBucketLogging": "

This operation is not supported by directory buckets.

Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. All logs are saved to buckets in the same Amazon Web Services Region as the source bucket. To set the logging status of a bucket, you must be the bucket owner.

The bucket owner is automatically granted FULL_CONTROL to all logs. You use the Grantee request element to grant access to other people. The Permissions request element specifies the kind of access the grantee has to the logs.

If the target bucket for log delivery uses the bucket owner enforced setting for S3 Object Ownership, you can't use the Grantee request element to grant access to others. Permissions can only be granted using policies. For more information, see Permissions for server access log delivery in the Amazon S3 User Guide.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (by using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request.

  • By Email address:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AmazonCustomerByEmail\"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GETObjectAcl request, appears as the CanonicalUser.

  • By URI:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

To enable logging, you use LoggingEnabled and its children request elements. To disable logging, you use an empty BucketLoggingStatus request element:

<BucketLoggingStatus xmlns=\"http://doc.s3.amazonaws.com/2006-03-01\" />

For more information about server access logging, see Server Access Logging in the Amazon S3 User Guide.

For more information about creating a bucket, see CreateBucket. For more information about returning the logging status of a bucket, see GetBucketLogging.

The following operations are related to PutBucketLogging:

", + "PutBucketMetricsConfiguration": "

This operation is not supported by directory buckets.

Sets a metrics configuration (specified by the metrics configuration ID) for the bucket. You can have up to 1,000 metrics configurations per bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased.

To use this operation, you must have permissions to perform the s3:PutMetricsConfiguration action. The bucket owner has this permission by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

The following operations are related to PutBucketMetricsConfiguration:

PutBucketMetricsConfiguration has the following special error:

  • Error code: TooManyConfigurations

    • Description: You are attempting to create a new configuration but have already reached the 1,000-configuration limit.

    • HTTP Status Code: HTTP 400 Bad Request

", + "PutBucketNotification": "

This operation is not supported by directory buckets.

No longer used, see the PutBucketNotificationConfiguration operation.

", + "PutBucketNotificationConfiguration": "

This operation is not supported by directory buckets.

Enables notifications of specified events for a bucket. For more information about event notifications, see Configuring Event Notifications.

Using this API, you can replace an existing notification configuration. The configuration is an XML file that defines the event types that you want Amazon S3 to publish and the destination where you want Amazon S3 to publish an event notification when it detects an event of the specified type.

By default, your bucket has no event notifications configured. That is, the notification configuration will be an empty NotificationConfiguration.

<NotificationConfiguration>

</NotificationConfiguration>

This action replaces the existing notification configuration with the configuration you include in the request body.

After Amazon S3 receives this request, it first verifies that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue Service (Amazon SQS) destination exists, and that the bucket owner has permission to publish to it by sending a test notification. In the case of Lambda destinations, Amazon S3 verifies that the Lambda function permissions grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For more information, see Configuring Notifications for Amazon S3 Events.

You can disable notifications by adding the empty NotificationConfiguration element.

For more information about the number of event notification configurations that you can create per bucket, see Amazon S3 service quotas in Amazon Web Services General Reference.

By default, only the bucket owner can configure notifications on a bucket. However, bucket owners can use a bucket policy to grant permission to other users to set this configuration with the required s3:PutBucketNotification permission.

The PUT notification is an atomic operation. For example, suppose your notification configuration includes SNS topic, SQS queue, and Lambda function configurations. When you send a PUT request with this configuration, Amazon S3 sends test messages to your SNS topic. If the message fails, the entire PUT action will fail, and Amazon S3 will not add the configuration to your bucket.

If the configuration in the request body includes only one TopicConfiguration specifying only the s3:ReducedRedundancyLostObject event type, the response will also include the x-amz-sns-test-message-id header containing the message ID of the test notification sent to the topic.

The following action is related to PutBucketNotificationConfiguration:

", + "PutBucketOwnershipControls": "

This operation is not supported by directory buckets.

Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying permissions in a policy.

For information about Amazon S3 Object Ownership, see Using object ownership.

The following operations are related to PutBucketOwnershipControls:

", + "PutBucketPolicy": "

Applies an Amazon S3 bucket policy to an Amazon S3 bucket.

Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions

If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must both have the PutBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.

If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets, the root principal in a bucket owner's Amazon Web Services account can perform the GetBucketPolicy, PutBucketPolicy, and DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the root principal's access. Bucket owner root principals can only be blocked from performing these API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

  • General purpose bucket permissions - The s3:PutBucketPolicy permission is required in a policy. For more information about general purpose buckets bucket policies, see Using Bucket Policies and User Policies in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation, you must have the s3express:PutBucketPolicy permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

Example bucket policies

General purpose buckets example bucket policies - See Bucket policy examples in the Amazon S3 User Guide.

Directory bucket example bucket policies - See Example bucket policies for S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

The following operations are related to PutBucketPolicy:

", + "PutBucketReplication": "

This operation is not supported by directory buckets.

Creates a replication configuration or replaces an existing one. For more information, see Replication in the Amazon S3 User Guide.

Specify the replication configuration in the request body. In the replication configuration, you provide the name of the destination bucket or buckets where you want Amazon S3 to replicate objects, the IAM role that Amazon S3 can assume to replicate objects on your behalf, and other relevant information. You can invoke this request for a specific Amazon Web Services Region by using the aws:RequestedRegion condition key.

A replication configuration must include at least one rule, and can contain a maximum of 1,000. Each rule identifies a subset of objects to replicate by filtering the objects in the source bucket. To choose additional subsets of objects to replicate, add a rule for each subset.

To specify a subset of the objects in the source bucket to apply a replication rule to, add the Filter element as a child of the Rule element. You can filter objects based on an object key prefix, one or more object tags, or both. When you add the Filter element in the configuration, you must also add the following elements: DeleteMarkerReplication, Status, and Priority.

If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see Backward Compatibility.

For information about enabling versioning on a bucket, see Using Versioning.

Handling Replication of Encrypted Objects

By default, Amazon S3 doesn't replicate objects that are stored at rest using server-side encryption with KMS keys. To replicate Amazon Web Services KMS-encrypted objects, add the following: SourceSelectionCriteria, SseKmsEncryptedObjects, Status, EncryptionConfiguration, and ReplicaKmsKeyID. For information about replication configuration, see Replicating Objects Created with SSE Using KMS keys.

For information on PutBucketReplication errors, see List of replication-related error codes

Permissions

To create a PutBucketReplication request, you must have s3:PutReplicationConfiguration permissions for the bucket.

By default, a resource owner, in this case the Amazon Web Services account that created the bucket, can perform this operation. The resource owner can also grant others permissions to perform the operation. For more information about permissions, see Specifying Permissions in a Policy and Managing Access Permissions to Your Amazon S3 Resources.

To perform this operation, the user or role performing the action must have the iam:PassRole permission.

The following operations are related to PutBucketReplication:

", + "PutBucketRequestPayment": "

This operation is not supported by directory buckets.

Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person requesting the download will be charged for the download. For more information, see Requester Pays Buckets.

The following operations are related to PutBucketRequestPayment:

", + "PutBucketTagging": "

This operation is not supported by directory buckets.

Sets the tags for a bucket.

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this, sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost of combined resources, organize your billing information according to resources with the same tag key values. For example, you can tag several resources with a specific application name, and then organize your billing information to see the total cost of that application across several services. For more information, see Cost Allocation and Tagging and Using Cost Allocation in Amazon S3 Bucket Tags.

When this operation sets the tags for a bucket, it will overwrite any current tags the bucket already has. You cannot use this operation to add tags to an existing list of tags.

To use this operation, you must have permissions to perform the s3:PutBucketTagging action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

PutBucketTagging has the following special errors. For more Amazon S3 errors see, Error Responses.

  • InvalidTag - The tag provided was not a valid tag. This error can occur if the tag did not pass input validation. For more information, see Using Cost Allocation in Amazon S3 Bucket Tags.

  • MalformedXML - The XML provided does not match the schema.

  • OperationAborted - A conflicting conditional action is currently in progress against this resource. Please try again.

  • InternalError - The service was unable to apply the provided tag to the bucket.

The following operations are related to PutBucketTagging:

", + "PutBucketVersioning": "

This operation is not supported by directory buckets.

Sets the versioning state of an existing bucket.

You can set the versioning state with one of the following values:

Enabled—Enables versioning for the objects in the bucket. All objects added to the bucket receive a unique version ID.

Suspended—Disables versioning for the objects in the bucket. All objects added to the bucket receive the version ID null.

If the versioning state has never been set on a bucket, it has no versioning state; a GetBucketVersioning request does not return a versioning state value.

In order to enable MFA Delete, you must be the bucket owner. If you are the bucket owner and want to enable MFA Delete in the bucket versioning configuration, you must include the x-amz-mfa request header and the Status and the MfaDelete request elements in a request to set the versioning state of the bucket.

If you have an object expiration lifecycle configuration in your non-versioned bucket and you want to maintain the same permanent delete behavior when you enable versioning, you must add a noncurrent expiration policy. The noncurrent expiration lifecycle configuration will manage the deletes of the noncurrent object versions in the version-enabled bucket. (A version-enabled bucket maintains one current and zero or more noncurrent object versions.) For more information, see Lifecycle and Versioning.

The following operations are related to PutBucketVersioning:

", + "PutBucketWebsite": "

This operation is not supported by directory buckets.

Sets the configuration of the website that is specified in the website subresource. To configure a bucket as a website, you can add this subresource on the bucket with website configuration information such as the file name of the index document and any redirect rules. For more information, see Hosting Websites on Amazon S3.

This PUT action requires the S3:PutBucketWebsite permission. By default, only the bucket owner can configure the website attached to a bucket; however, bucket owners can allow other users to set the website configuration by writing a bucket policy that grants them the S3:PutBucketWebsite permission.

To redirect all website requests sent to the bucket's website endpoint, you add a website configuration with the following elements. Because all requests are sent to another website, you don't need to provide index document name for the bucket.

  • WebsiteConfiguration

  • RedirectAllRequestsTo

  • HostName

  • Protocol

If you want granular control over redirects, you can use the following elements to add routing rules that describe conditions for redirecting requests and information about the redirect destination. In this case, the website configuration must provide an index document for the bucket, because some requests might not be redirected.

  • WebsiteConfiguration

  • IndexDocument

  • Suffix

  • ErrorDocument

  • Key

  • RoutingRules

  • RoutingRule

  • Condition

  • HttpErrorCodeReturnedEquals

  • KeyPrefixEquals

  • Redirect

  • Protocol

  • HostName

  • ReplaceKeyPrefixWith

  • ReplaceKeyWith

  • HttpRedirectCode

Amazon S3 has a limitation of 50 routing rules per website configuration. If you require more than 50 routing rules, you can use object redirect. For more information, see Configuring an Object Redirect in the Amazon S3 User Guide.

The maximum request length is limited to 128 KB.

", + "PutObject": "

Adds an object to a bucket.

  • Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 added the entire object to the bucket. You cannot use PutObject to only update a single piece of metadata for an existing object. You must put the entire object with updated metadata if you want to update some values.

  • If your bucket uses the bucket owner enforced setting for Object Ownership, ACLs are disabled and no longer affect permissions. All objects written to the bucket by any account will be owned by the bucket owner.

  • Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Amazon S3 is a distributed system. If it receives multiple write requests for the same object simultaneously, it overwrites all but the last object written. However, Amazon S3 provides features that can modify this behavior:

  • S3 Object Lock - To prevent objects from being deleted or overwritten, you can use Amazon S3 Object Lock in the Amazon S3 User Guide.

    This functionality is not supported for directory buckets.

  • S3 Versioning - When you enable versioning for a bucket, if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all versions of the objects. For each write request that is made to the same object, Amazon S3 automatically generates a unique version ID of that object being stored in Amazon S3. You can retrieve, replace, or delete any version of the object. For more information about versioning, see Adding Objects to Versioning-Enabled Buckets in the Amazon S3 User Guide. For information about returning the versioning state of a bucket, see GetBucketVersioning.

    This functionality is not supported for directory buckets.

Permissions
  • General purpose bucket permissions - The following permissions are required in your policies when your PutObject request includes specific headers.

    • s3:PutObject - To successfully complete the PutObject request, you must always have the s3:PutObject permission on a bucket to add an object to it.

    • s3:PutObjectAcl - To successfully change the objects ACL of your PutObject request, you must have the s3:PutObjectAcl.

    • s3:PutObjectTagging - To successfully set the tag-set with your PutObject request, you must have the s3:PutObjectTagging.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Data integrity with Content-MD5
  • General purpose bucket - To ensure that data is not corrupted traversing the network, use the Content-MD5 header. When you use this header, Amazon S3 checks the object against the provided MD5 value and, if they do not match, Amazon S3 returns an error. Alternatively, when the object's ETag is its MD5 digest, you can calculate the MD5 while putting the object to Amazon S3 and compare the returned ETag to the calculated MD5 value.

  • Directory bucket - This functionality is not supported for directory buckets.

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

For more information about related Amazon S3 APIs, see the following:

", + "PutObjectAcl": "

This operation is not supported by directory buckets.

Uses the acl subresource to set the access control list (ACL) permissions for a new or existing object in an S3 bucket. You must have the WRITE_ACP permission to set the ACL of an object. For more information, see What permissions can I grant? in the Amazon S3 User Guide.

This functionality is not supported for Amazon S3 on Outposts.

Depending on your application needs, you can choose to set the ACL on an object using either the request body or the headers. For example, if you have an existing application that updates a bucket ACL using the request body, you can continue to use that approach. For more information, see Access Control List (ACL) Overview in the Amazon S3 User Guide.

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. You must use policies to grant access to your bucket and the objects in it. Requests to set ACLs or update ACLs fail and return the AccessControlListNotSupported error code. Requests to read ACLs are still supported. For more information, see Controlling object ownership in the Amazon S3 User Guide.

Permissions

You can set access permissions using one of the following methods:

  • Specify a canned ACL with the x-amz-acl request header. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. Specify the canned ACL name as the value of x-amz-acl. If you use this header, you cannot use other access control-specific headers in your request. For more information, see Canned ACL.

  • Specify access permissions explicitly with the x-amz-grant-read, x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control headers. When using these headers, you specify explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the permission. If you use these ACL-specific headers, you cannot use x-amz-acl header to set a canned ACL. These parameters map to the set of permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview.

    You specify each grantee as a type=value pair, where the type is one of the following:

    • id – if the value specified is the canonical user ID of an Amazon Web Services account

    • uri – if you are granting permissions to a predefined group

    • emailAddress – if the value specified is the email address of an Amazon Web Services account

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      • US East (N. Virginia)

      • US West (N. California)

      • US West (Oregon)

      • Asia Pacific (Singapore)

      • Asia Pacific (Sydney)

      • Asia Pacific (Tokyo)

      • Europe (Ireland)

      • South America (São Paulo)

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    For example, the following x-amz-grant-read header grants list objects permission to the two Amazon Web Services accounts identified by their email addresses.

    x-amz-grant-read: emailAddress=\"xyz@amazon.com\", emailAddress=\"abc@amazon.com\"

You can use either a canned ACL or specify access permissions explicitly. You cannot do both.

Grantee Values

You can specify the person (grantee) to whom you're assigning access rights (using request elements) in the following ways:

  • By the person's ID:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee>

    DisplayName is optional and ignored in the request.

  • By URI:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>

  • By Email address:

    <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AmazonCustomerByEmail\"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl request, appears as the CanonicalUser.

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

Versioning

The ACL of an object is set at the object version level. By default, PUT sets the ACL of the current version of an object. To set the ACL of a different version, use the versionId subresource.

The following operations are related to PutObjectAcl:

", + "PutObjectLegalHold": "

This operation is not supported by directory buckets.

Applies a legal hold configuration to the specified object. For more information, see Locking Objects.

This functionality is not supported for Amazon S3 on Outposts.

", + "PutObjectLockConfiguration": "

This operation is not supported by directory buckets.

Places an Object Lock configuration on the specified bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see Locking Objects.

  • The DefaultRetention settings require both a mode and a period.

  • The DefaultRetention period can be either Days or Years but you must select one. You cannot specify Days and Years at the same time.

  • You can enable Object Lock for new or existing buckets. For more information, see Configuring Object Lock.

", + "PutObjectRetention": "

This operation is not supported by directory buckets.

Places an Object Retention configuration on an object. For more information, see Locking Objects. Users or accounts require the s3:PutObjectRetention permission in order to place an Object Retention configuration on objects. Bypassing a Governance Retention configuration requires the s3:BypassGovernanceRetention permission.

This functionality is not supported for Amazon S3 on Outposts.

", + "PutObjectTagging": "

This operation is not supported by directory buckets.

Sets the supplied tag-set to an object that already exists in a bucket. A tag is a key-value pair. For more information, see Object Tagging.

You can associate tags with an object by sending a PUT request against the tagging subresource that is associated with the object. You can retrieve tags by sending a GET request. For more information, see GetObjectTagging.

For tagging-related restrictions related to characters and encodings, see Tag Restrictions. Note that Amazon S3 limits the maximum number of tags to 10 tags per object.

To use this operation, you must have permission to perform the s3:PutObjectTagging action. By default, the bucket owner has this permission and can grant this permission to others.

To put tags of any other version, use the versionId query parameter. You also need permission for the s3:PutObjectVersionTagging action.

PutObjectTagging has the following special errors. For more Amazon S3 errors see, Error Responses.

  • InvalidTag - The tag provided was not a valid tag. This error can occur if the tag did not pass input validation. For more information, see Object Tagging.

  • MalformedXML - The XML provided does not match the schema.

  • OperationAborted - A conflicting conditional action is currently in progress against this resource. Please try again.

  • InternalError - The service was unable to apply the provided tag to the object.

The following operations are related to PutObjectTagging:

", + "PutPublicAccessBlock": "

This operation is not supported by directory buckets.

Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an object, it checks the PublicAccessBlock configuration for both the bucket (or the bucket that contains the object) and the bucket owner's account. If the PublicAccessBlock configurations are different between the bucket and the account, Amazon S3 uses the most restrictive combination of the bucket-level and account-level settings.

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

The following operations are related to PutPublicAccessBlock:

", + "RestoreObject": "

This operation is not supported by directory buckets.

Restores an archived copy of an object back into Amazon S3

This functionality is not supported for Amazon S3 on Outposts.

This action performs the following types of requests:

  • select - Perform a select query on an archived object

  • restore an archive - Restore an archived object

For more information about the S3 structure in the request body, see the following:

Define the SQL expression for the SELECT type of restoration for your query in the request body's SelectParameters structure. You can use expressions like the following examples.

  • The following expression returns all records from the specified object.

    SELECT * FROM Object

  • Assuming that you are not using any headers for data stored in the object, you can specify columns with positional headers.

    SELECT s._1, s._2 FROM Object s WHERE s._3 > 100

  • If you have headers and you set the fileHeaderInfo in the CSV structure in the request body to USE, you can specify headers in the query. (If you set the fileHeaderInfo field to IGNORE, the first row is skipped for the query.) You cannot mix ordinal positions with header column names.

    SELECT s.Id, s.FirstName, s.SSN FROM S3Object s

When making a select request, you can also do the following:

  • To expedite your queries, specify the Expedited tier. For more information about tiers, see \"Restoring Archives,\" later in this topic.

  • Specify details about the data serialization format of both the input object that is being queried and the serialization of the CSV-encoded query results.

The following are additional important facts about the select feature:

  • The output results are new Amazon S3 objects. Unlike archive retrievals, they are stored until explicitly deleted-manually or through a lifecycle configuration.

  • You can issue more than one select request on the same Amazon S3 object. Amazon S3 doesn't duplicate requests, so avoid issuing duplicate requests.

  • Amazon S3 accepts a select request even if the object has already been restored. A select request doesn’t return error response 409.

Permissions

To use this operation, you must have permissions to perform the s3:RestoreObject action. The bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.

Restoring objects

Objects that you archive to the S3 Glacier Flexible Retrieval Flexible Retrieval or S3 Glacier Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, are not accessible in real time. For objects in the S3 Glacier Flexible Retrieval Flexible Retrieval or S3 Glacier Deep Archive storage classes, you must first initiate a restore request, and then wait until a temporary copy of the object is available. If you want a permanent copy of the object, create a copy of it in the Amazon S3 Standard storage class in your S3 bucket. To access an archived object, you must restore the object for the duration (number of days) that you specify. For objects in the Archive Access or Deep Archive Access tiers of S3 Intelligent-Tiering, you must first initiate a restore request, and then wait until the object is moved into the Frequent Access tier.

To restore a specific object version, you can provide a version ID. If you don't provide a version ID, Amazon S3 restores the current version.

When restoring an archived object, you can specify one of the following data access tier options in the Tier element of the request body:

  • Expedited - Expedited retrievals allow you to quickly access your data stored in the S3 Glacier Flexible Retrieval Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier when occasional urgent requests for restoring archives are required. For all but the largest archived objects (250 MB+), data accessed using Expedited retrievals is typically made available within 1–5 minutes. Provisioned capacity ensures that retrieval capacity for Expedited retrievals is available when you need it. Expedited retrievals and provisioned capacity are not available for objects stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier.

  • Standard - Standard retrievals allow you to access any of your archived objects within several hours. This is the default option for retrieval requests that do not specify the retrieval option. Standard retrievals typically finish within 3–5 hours for objects stored in the S3 Glacier Flexible Retrieval Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier. They typically finish within 12 hours for objects stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects stored in S3 Intelligent-Tiering.

  • Bulk - Bulk retrievals free for objects stored in the S3 Glacier Flexible Retrieval and S3 Intelligent-Tiering storage classes, enabling you to retrieve large amounts, even petabytes, of data at no cost. Bulk retrievals typically finish within 5–12 hours for objects stored in the S3 Glacier Flexible Retrieval Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier. Bulk retrievals are also the lowest-cost retrieval option when restoring objects from S3 Glacier Deep Archive. They typically finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier.

For more information about archive retrieval options and provisioned capacity for Expedited data access, see Restoring Archived Objects in the Amazon S3 User Guide.

You can use Amazon S3 restore speed upgrade to change the restore speed to a faster speed while it is in progress. For more information, see Upgrading the speed of an in-progress restore in the Amazon S3 User Guide.

To get the status of object restoration, you can send a HEAD request. Operations return the x-amz-restore header, which provides information about the restoration status, in the response. You can use Amazon S3 event notifications to notify you when a restore is initiated or completed. For more information, see Configuring Amazon S3 Event Notifications in the Amazon S3 User Guide.

After restoring an archived object, you can update the restoration period by reissuing the request with a new period. Amazon S3 updates the restoration period relative to the current time and charges only for the request-there are no data transfer charges. You cannot update the restoration period when Amazon S3 is actively processing your current restore request for the object.

If your bucket has a lifecycle configuration with a rule that includes an expiration action, the object expiration overrides the life span that you specify in a restore request. For example, if you restore an object copy for 10 days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the object in 3 days. For more information about lifecycle configuration, see PutBucketLifecycleConfiguration and Object Lifecycle Management in Amazon S3 User Guide.

Responses

A successful action returns either the 200 OK or 202 Accepted status code.

  • If the object is not previously restored, then Amazon S3 returns 202 Accepted in the response.

  • If the object is previously restored, Amazon S3 returns 200 OK in the response.

  • Special errors:

    • Code: RestoreAlreadyInProgress

    • Cause: Object restore is already in progress. (This error does not apply to SELECT type requests.)

    • HTTP Status Code: 409 Conflict

    • SOAP Fault Code Prefix: Client

    • Code: GlacierExpeditedRetrievalNotAvailable

    • Cause: expedited retrievals are currently not available. Try again later. (Returned if there is insufficient capacity to process the Expedited request. This error applies only to Expedited retrievals and not to S3 Standard or Bulk retrievals.)

    • HTTP Status Code: 503

    • SOAP Fault Code Prefix: N/A

The following operations are related to RestoreObject:

", + "SelectObjectContent": "

This operation is not supported by directory buckets.

This action filters the contents of an Amazon S3 object based on a simple structured query language (SQL) statement. In the request, along with the SQL expression, you must also specify a data serialization format (JSON, CSV, or Apache Parquet) of the object. Amazon S3 uses this format to parse object data into records, and returns only records that match the specified SQL expression. You must also specify the data serialization format for the response.

This functionality is not supported for Amazon S3 on Outposts.

For more information about Amazon S3 Select, see Selecting Content from Objects and SELECT Command in the Amazon S3 User Guide.

Permissions

You must have the s3:GetObject permission for this operation. Amazon S3 Select does not support anonymous access. For more information about permissions, see Specifying Permissions in a Policy in the Amazon S3 User Guide.

Object Data Formats

You can use Amazon S3 Select to query objects that have the following format properties:

  • CSV, JSON, and Parquet - Objects must be in CSV, JSON, or Parquet format.

  • UTF-8 - UTF-8 is the only encoding type Amazon S3 Select supports.

  • GZIP or BZIP2 - CSV and JSON files can be compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not support whole-object compression for Parquet objects.

  • Server-side encryption - Amazon S3 Select supports querying objects that are protected with server-side encryption.

    For objects that are encrypted with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must use the headers that are documented in the GetObject. For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

    For objects that are encrypted with Amazon S3 managed keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side encryption is handled transparently, so you don't need to specify anything. For more information about server-side encryption, including SSE-S3 and SSE-KMS, see Protecting Data Using Server-Side Encryption in the Amazon S3 User Guide.

Working with the Response Body

Given the response size is unknown, Amazon S3 Select streams the response as a series of messages and includes a Transfer-Encoding header with chunked as its value in the response. For more information, see Appendix: SelectObjectContent Response.

GetObject Support

The SelectObjectContent action does not support the following GetObject functionality. For more information, see GetObject.

  • Range: Although you can specify a scan range for an Amazon S3 Select request (see SelectObjectContentRequest - ScanRange in the request parameters), you cannot specify the range of bytes of an object to return.

  • The GLACIER, DEEP_ARCHIVE, and REDUCED_REDUNDANCY storage classes, or the ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS access tiers of the INTELLIGENT_TIERING storage class: You cannot query objects in the GLACIER, DEEP_ARCHIVE, or REDUCED_REDUNDANCY storage classes, nor objects in the ARCHIVE_ACCESS or DEEP_ARCHIVE_ACCESS access tiers of the INTELLIGENT_TIERING storage class. For more information about storage classes, see Using Amazon S3 storage classes in the Amazon S3 User Guide.

Special Errors

For a list of special errors for this operation, see List of SELECT Object Content Error Codes

The following operations are related to SelectObjectContent:

", + "UploadPart": "

Uploads a part in a multipart upload.

In this operation, you provide new data as a part of an object in your request. However, you have an option to specify your existing Amazon S3 object as a data source for the part you are uploading. To upload a part from an existing object, you use the UploadPartCopy operation.

You must initiate a multipart upload (see CreateMultipartUpload) before you can upload any part. In response to your initiate request, Amazon S3 returns an upload ID, a unique identifier that you must include in your upload part request.

Part numbers can be any number from 1 to 10,000, inclusive. A part number uniquely identifies a part and also defines its position within the object being created. If you upload a new part using the same part number that was used with a previous part, the previously uploaded part is overwritten.

For information about maximum and minimum part sizes and other multipart upload specifications, see Multipart upload limits in the Amazon S3 User Guide.

After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.

For more information on multipart uploads, go to Multipart Upload Overview in the Amazon S3 User Guide .

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Permissions
  • General purpose bucket permissions - For information on the permissions required to use the multipart upload API, see Multipart Upload and Permissions in the Amazon S3 User Guide.

  • Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the CreateSession API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see CreateSession .

Data integrity

General purpose bucket - To ensure that data is not corrupted traversing the network, specify the Content-MD5 header in the upload part request. Amazon S3 checks the part data against the provided MD5 value. If they do not match, Amazon S3 returns an error. If the upload request is signed with Signature Version 4, then Amazon Web Services S3 uses the x-amz-content-sha256 header as a checksum instead of Content-MD5. For more information see Authenticating Requests: Using the Authorization Header (Amazon Web Services Signature Version 4).

Directory buckets - MD5 is not supported by directory buckets. You can use checksum algorithms to check object integrity.

Encryption
  • General purpose bucket - Server-side encryption is for data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers and decrypts it when you access it. You have mutually exclusive options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS), and Customer-Provided Keys (SSE-C). Amazon S3 encrypts data with server-side encryption using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest using server-side encryption with other key options. The option you use depends on whether you want to use KMS keys (SSE-KMS) or provide your own encryption key (SSE-C).

    Server-side encryption is supported by the S3 Multipart Upload operations. Unless you are using a customer-provided encryption key (SSE-C), you don't need to specify the encryption parameters in each UploadPart request. Instead, you only need to specify the server-side encryption parameters in the initial Initiate Multipart request. For more information, see CreateMultipartUpload.

    If you request server-side encryption using a customer-provided encryption key (SSE-C) in your initiate multipart upload request, you must provide identical encryption information in each part upload using the following request headers.

    • x-amz-server-side-encryption-customer-algorithm

    • x-amz-server-side-encryption-customer-key

    • x-amz-server-side-encryption-customer-key-MD5

  • Directory bucket - For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

For more information, see Using Server-Side Encryption in the Amazon S3 User Guide.

Special errors
  • Error Code: NoSuchUpload

    • Description: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to UploadPart:

", + "UploadPartCopy": "

Uploads a part by copying data from an existing object as data source. To specify the data source, you add the request header x-amz-copy-source in your request. To specify a byte range, you add the request header x-amz-copy-source-range in your request.

For information about maximum and minimum part sizes and other multipart upload specifications, see Multipart upload limits in the Amazon S3 User Guide.

Instead of copying data from an existing object as part data, you might use the UploadPart action to upload new data as a part of an object in your request.

You must initiate a multipart upload before you can upload any part. In response to your initiate request, Amazon S3 returns the upload ID, a unique identifier that you must include in your upload part request.

For conceptual information about multipart uploads, see Uploading Objects Using Multipart Upload in the Amazon S3 User Guide. For information about copying objects using a single atomic action vs. a multipart upload, see Operations on Objects in the Amazon S3 User Guide.

Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the Amazon S3 User Guide.

Authentication and authorization

All UploadPartCopy requests must be authenticated and signed by using IAM credentials (access key ID and secret access key for the IAM identities). All headers with the x-amz- prefix, including x-amz-copy-source, must be signed. For more information, see REST Authentication.

Directory buckets - You must use IAM credentials to authenticate and authorize your access to the UploadPartCopy API operation, instead of using the temporary security credentials through the CreateSession API operation.

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

Permissions

You must have READ access to the source object and WRITE access to the destination bucket.

  • General purpose bucket permissions - You must have the permissions in a policy based on the bucket types of your source bucket and destination bucket in an UploadPartCopy operation.

    • If the source object is in a general purpose bucket, you must have the s3:GetObject permission to read the source object that is being copied.

    • If the destination bucket is a general purpose bucket, you must have the s3:PubObject permission to write the object copy to the destination bucket.

    For information about permissions required to use the multipart upload API, see Multipart Upload and Permissions in the Amazon S3 User Guide.

  • Directory bucket permissions - You must have permissions in a bucket policy or an IAM identity-based policy based on the source and destination bucket types in an UploadPartCopy operation.

    • If the source object that you want to copy is in a directory bucket, you must have the s3express:CreateSession permission in the Action element of a policy to read the object . By default, the session is in the ReadWrite mode. If you want to restrict the access, you can explicitly set the s3express:SessionMode condition key to ReadOnly on the copy source bucket.

    • If the copy destination is a directory bucket, you must have the s3express:CreateSession permission in the Action element of a policy to write the object to the destination. The s3express:SessionMode condition key cannot be set to ReadOnly on the copy destination.

    For example policies, see Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone in the Amazon S3 User Guide.

Encryption
  • General purpose buckets - For information about using server-side encryption with customer-provided encryption keys with the UploadPartCopy operation, see CopyObject and UploadPart.

  • Directory buckets - For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

Special errors
  • Error Code: NoSuchUpload

    • Description: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

    • HTTP Status Code: 404 Not Found

  • Error Code: InvalidRequest

    • Description: The specified copy source is not supported as a byte-range copy source.

    • HTTP Status Code: 400 Bad Request

HTTP Host header syntax

Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com.

The following operations are related to UploadPartCopy:

", + "WriteGetObjectResponse": "

This operation is not supported by directory buckets.

Passes transformed objects to a GetObject operation when using Object Lambda access points. For information about Object Lambda access points, see Transforming objects with Object Lambda access points in the Amazon S3 User Guide.

This operation supports metadata that can be returned by GetObject, in addition to RequestRoute, RequestToken, StatusCode, ErrorCode, and ErrorMessage. The GetObject response metadata is supported so that the WriteGetObjectResponse caller, typically an Lambda function, can provide the same metadata when it internally invokes GetObject. When WriteGetObjectResponse is called by a customer-owned Lambda function, the metadata returned to the end user GetObject call might differ from what Amazon S3 would normally return.

You can include any number of metadata headers. When including a metadata header, it should be prefaced with x-amz-meta. For example, x-amz-meta-my-custom-header: MyCustomValue. The primary use case for this is to forward GetObject metadata.

Amazon Web Services provides some prebuilt Lambda functions that you can use with S3 Object Lambda to detect and redact personally identifiable information (PII) and decompress S3 objects. These Lambda functions are available in the Amazon Web Services Serverless Application Repository, and can be selected through the Amazon Web Services Management Console when you create your Object Lambda access point.

Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically detects personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.

Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically redacts personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.

Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects stored in S3 in one of six compressed file formats including bzip2, gzip, snappy, zlib, zstandard and ZIP.

For information on how to view and use these functions, see Using Amazon Web Services built Lambda functions in the Amazon S3 User Guide.

" }, "shapes": { "AbortDate": { "base": null, "refs": { - "CreateMultipartUploadOutput$AbortDate": "

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, the response includes this header. The header indicates when the initiated multipart upload becomes eligible for an abort operation. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

The response also includes the x-amz-abort-rule-id header that provides the ID of the lifecycle configuration rule that defines this action.

", - "ListPartsOutput$AbortDate": "

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

The response will also include the x-amz-abort-rule-id header that will provide the ID of the lifecycle configuration rule that defines this action.

" + "CreateMultipartUploadOutput$AbortDate": "

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, the response includes this header. The header indicates when the initiated multipart upload becomes eligible for an abort operation. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in the Amazon S3 User Guide.

The response also includes the x-amz-abort-rule-id header that provides the ID of the lifecycle configuration rule that defines the abort action.

This functionality is not supported for directory buckets.

", + "ListPartsOutput$AbortDate": "

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

The response will also include the x-amz-abort-rule-id header that will provide the ID of the lifecycle configuration rule that defines this action.

This functionality is not supported for directory buckets.

" } }, "AbortIncompleteMultipartUpload": { @@ -128,8 +130,8 @@ "AbortRuleId": { "base": null, "refs": { - "CreateMultipartUploadOutput$AbortRuleId": "

This header is returned along with the x-amz-abort-date header. It identifies the applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.

", - "ListPartsOutput$AbortRuleId": "

This header is returned along with the x-amz-abort-date header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.

" + "CreateMultipartUploadOutput$AbortRuleId": "

This header is returned along with the x-amz-abort-date header. It identifies the applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.

This functionality is not supported for directory buckets.

", + "ListPartsOutput$AbortRuleId": "

This header is returned along with the x-amz-abort-date header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.

This functionality is not supported for directory buckets.

" } }, "AccelerateConfiguration": { @@ -141,7 +143,7 @@ "AcceptRanges": { "base": null, "refs": { - "GetObjectOutput$AcceptRanges": "

Indicates that a range of bytes was specified.

", + "GetObjectOutput$AcceptRanges": "

Indicates that a range of bytes was specified in the request.

", "HeadObjectOutput$AcceptRanges": "

Indicates that a range of bytes was specified.

", "WriteGetObjectResponseRequest$AcceptRanges": "

Indicates that a range of bytes was specified.

" } @@ -159,6 +161,18 @@ "Destination$AccessControlTranslation": "

Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the Amazon Web Services account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same Amazon Web Services account that owns the source object.

" } }, + "AccessKeyIdValue": { + "base": null, + "refs": { + "SessionCredentials$AccessKeyId": "

A unique identifier that's associated with a secret access key. The access key ID and the secret access key are used together to sign programmatic Amazon Web Services requests cryptographically.

" + } + }, + "AccessPointAlias": { + "base": null, + "refs": { + "HeadBucketOutput$AccessPointAlias": "

Indicates whether the bucket name used in the request is an access point alias.

This functionality is not supported for directory buckets.

" + } + }, "AccessPointArn": { "base": null, "refs": { @@ -169,100 +183,100 @@ "AccountId": { "base": null, "refs": { - "AbortMultipartUploadRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "AbortMultipartUploadRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", "AnalyticsS3BucketDestination$BucketAccountId": "

The account ID that owns the destination S3 bucket. If no account ID is provided, the owner is not validated before exporting data.

Although this value is optional, we strongly recommend that you set it to help prevent problems if the destination bucket ownership changes.

", - "CompleteMultipartUploadRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "CopyObjectRequest$ExpectedBucketOwner": "

The account ID of the expected destination bucket owner. If the destination bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "CopyObjectRequest$ExpectedSourceBucketOwner": "

The account ID of the expected source bucket owner. If the source bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "CreateMultipartUploadRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketAnalyticsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketCorsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketEncryptionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketInventoryConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketLifecycleRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketMetricsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketOwnershipControlsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketPolicyRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketReplicationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteBucketWebsiteRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteObjectTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeleteObjectsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "DeletePublicAccessBlockRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "CompleteMultipartUploadRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "CopyObjectRequest$ExpectedBucketOwner": "

The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "CopyObjectRequest$ExpectedSourceBucketOwner": "

The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "CreateMultipartUploadRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketAnalyticsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketCorsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketEncryptionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketInventoryConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketLifecycleRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketMetricsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketOwnershipControlsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketPolicyRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code 501 Not Implemented.

", + "DeleteBucketReplicationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code 501 Not Implemented.

", + "DeleteBucketTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteBucketWebsiteRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteObjectTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeleteObjectsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "DeletePublicAccessBlockRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", "Destination$Account": "

Destination bucket owner account ID. In a cross-account scenario, if you direct Amazon S3 to change replica ownership to the Amazon Web Services account that owns the destination bucket by specifying the AccessControlTranslation property, this is the account ID of the destination bucket owner. For more information, see Replication Additional Configuration: Changing the Replica Owner in the Amazon S3 User Guide.

", - "GetBucketAccelerateConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketAnalyticsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketCorsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketEncryptionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketInventoryConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketLifecycleConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketLifecycleRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketLocationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketLoggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketMetricsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketNotificationConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketOwnershipControlsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketPolicyRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketPolicyStatusRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketReplicationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketRequestPaymentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketVersioningRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetBucketWebsiteRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectAttributesRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectLegalHoldRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectLockConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectRetentionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetObjectTorrentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "GetPublicAccessBlockRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "HeadBucketRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "HeadObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketAccelerateConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketAnalyticsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketCorsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketEncryptionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketInventoryConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketLifecycleConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketLifecycleRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketLocationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketLoggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketMetricsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketNotificationConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketOwnershipControlsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketPolicyRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code 501 Not Implemented.

", + "GetBucketPolicyStatusRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketReplicationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketRequestPaymentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketVersioningRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetBucketWebsiteRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectAttributesRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectLegalHoldRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectLockConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectRetentionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetObjectTorrentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "GetPublicAccessBlockRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "HeadBucketRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "HeadObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", "InventoryS3BucketDestination$AccountId": "

The account ID that owns the destination S3 bucket. If no account ID is provided, the owner is not validated before exporting data.

Although this value is optional, we strongly recommend that you set it to help prevent problems if the destination bucket ownership changes.

", - "ListBucketAnalyticsConfigurationsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListBucketInventoryConfigurationsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListBucketMetricsConfigurationsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListMultipartUploadsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListObjectVersionsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListObjectsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListObjectsV2Request$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "ListPartsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketAccelerateConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketAnalyticsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketCorsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketEncryptionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketInventoryConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketLifecycleConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketLifecycleRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketLoggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketMetricsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketNotificationConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketNotificationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketOwnershipControlsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketPolicyRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketReplicationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketRequestPaymentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketVersioningRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutBucketWebsiteRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutObjectAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutObjectLegalHoldRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutObjectLockConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutObjectRetentionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutObjectTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "PutPublicAccessBlockRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "RestoreObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "SelectObjectContentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "UploadPartCopyRequest$ExpectedBucketOwner": "

The account ID of the expected destination bucket owner. If the destination bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "UploadPartCopyRequest$ExpectedSourceBucketOwner": "

The account ID of the expected source bucket owner. If the source bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "UploadPartRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

" + "ListBucketAnalyticsConfigurationsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListBucketInventoryConfigurationsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListBucketMetricsConfigurationsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListMultipartUploadsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListObjectVersionsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListObjectsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListObjectsV2Request$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "ListPartsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketAccelerateConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketAnalyticsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketCorsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketEncryptionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketInventoryConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketLifecycleConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketLifecycleRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketLoggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketMetricsConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketNotificationConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketNotificationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketOwnershipControlsRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketPolicyRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code 501 Not Implemented.

", + "PutBucketReplicationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketRequestPaymentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketVersioningRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutBucketWebsiteRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutObjectAclRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutObjectLegalHoldRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutObjectLockConfigurationRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutObjectRetentionRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutObjectTaggingRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "PutPublicAccessBlockRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "RestoreObjectRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "SelectObjectContentRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "UploadPartCopyRequest$ExpectedBucketOwner": "

The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "UploadPartCopyRequest$ExpectedSourceBucketOwner": "

The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "UploadPartRequest$ExpectedBucketOwner": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

" } }, "AllowQuotedRecordDelimiter": { @@ -363,7 +377,7 @@ "ArchiveStatus": { "base": null, "refs": { - "HeadObjectOutput$ArchiveStatus": "

The archive state of the head object.

" + "HeadObjectOutput$ArchiveStatus": "

The archive state of the head object.

This functionality is not supported for directory buckets.

" } }, "Body": { @@ -378,7 +392,7 @@ } }, "Bucket": { - "base": "

In terms of implementation, a Bucket is a resource. An Amazon S3 bucket name is globally unique, and the namespace is shared by all Amazon Web Services accounts.

", + "base": "

In terms of implementation, a Bucket is a resource.

", "refs": { "Buckets$member": null } @@ -403,25 +417,31 @@ "BucketCannedACL": { "base": null, "refs": { - "CreateBucketRequest$ACL": "

The canned ACL to apply to the bucket.

", + "CreateBucketRequest$ACL": "

The canned ACL to apply to the bucket.

This functionality is not supported for directory buckets.

", "PutBucketAclRequest$ACL": "

The canned ACL to apply to the bucket.

" } }, + "BucketInfo": { + "base": "

Specifies the information about the bucket that will be created. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

This functionality is only supported by directory buckets.

", + "refs": { + "CreateBucketConfiguration$Bucket": "

Specifies the information about the bucket that will be created.

This functionality is only supported by directory buckets.

" + } + }, "BucketKeyEnabled": { "base": null, "refs": { - "CompleteMultipartUploadOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "CopyObjectOutput$BucketKeyEnabled": "

Indicates whether the copied object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "CopyObjectRequest$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with a COPY action doesn’t affect bucket-level settings for S3 Bucket Key.

", - "CreateMultipartUploadOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "CreateMultipartUploadRequest$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with an object action doesn’t affect bucket-level settings for S3 Bucket Key.

", - "GetObjectOutput$BucketKeyEnabled": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "HeadObjectOutput$BucketKeyEnabled": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "PutObjectOutput$BucketKeyEnabled": "

Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "PutObjectRequest$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with a PUT action doesn’t affect bucket-level settings for S3 Bucket Key.

", + "CompleteMultipartUploadOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "CopyObjectOutput$BucketKeyEnabled": "

Indicates whether the copied object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "CopyObjectRequest$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). If a target object uses SSE-KMS, you can enable an S3 Bucket Key for the object.

Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS. Specifying this header with a COPY action doesn’t affect bucket-level settings for S3 Bucket Key.

For more information, see Amazon S3 Bucket Keys in the Amazon S3 User Guide.

This functionality is not supported when the destination bucket is a directory bucket.

", + "CreateMultipartUploadOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with an object action doesn’t affect bucket-level settings for S3 Bucket Key.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$BucketKeyEnabled": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$BucketKeyEnabled": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "PutObjectOutput$BucketKeyEnabled": "

Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "PutObjectRequest$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with a PUT action doesn’t affect bucket-level settings for S3 Bucket Key.

This functionality is not supported for directory buckets.

", "ServerSideEncryptionRule$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled.

For more information, see Amazon S3 Bucket Keys in the Amazon S3 User Guide.

", - "UploadPartCopyOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", - "UploadPartOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

", + "UploadPartCopyOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", + "UploadPartOutput$BucketKeyEnabled": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$BucketKeyEnabled": "

Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

" } }, @@ -434,10 +454,16 @@ "BucketLocationConstraint": { "base": null, "refs": { - "CreateBucketConfiguration$LocationConstraint": "

Specifies the Region where the bucket will be created. If you don't specify a Region, the bucket is created in the US East (N. Virginia) Region (us-east-1).

", + "CreateBucketConfiguration$LocationConstraint": "

Specifies the Region where the bucket will be created. You might choose a Region to optimize latency, minimize costs, or address regulatory requirements. For example, if you reside in Europe, you will probably find it advantageous to create buckets in the Europe (Ireland) Region. For more information, see Accessing a bucket in the Amazon S3 User Guide.

If you don't specify a Region, the bucket is created in the US East (N. Virginia) Region (us-east-1) by default.

This functionality is not supported for directory buckets.

", "GetBucketLocationOutput$LocationConstraint": "

Specifies the Region where the bucket resides. For a list of all the Amazon S3 supported location constraints by Region, see Regions and Endpoints. Buckets in Region us-east-1 have a LocationConstraint of null.

" } }, + "BucketLocationName": { + "base": null, + "refs": { + "HeadBucketOutput$BucketLocationName": "

The name of the location where the bucket will be created.

For directory buckets, the AZ ID of the Availability Zone where the bucket is created. An example AZ ID value is usw2-az2.

This functionality is only supported by directory buckets.

" + } + }, "BucketLoggingStatus": { "base": "

Container for logging status information.

", "refs": { @@ -453,15 +479,16 @@ "BucketName": { "base": null, "refs": { - "AbortMultipartUploadRequest$Bucket": "

The bucket name to which the upload was taking place.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "AbortMultipartUploadRequest$Bucket": "

The bucket name to which the upload was taking place.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "AnalyticsS3BucketDestination$Bucket": "

The Amazon Resource Name (ARN) of the bucket to which data is exported.

", "Bucket$Name": "

The name of the bucket.

", - "CompleteMultipartUploadOutput$Bucket": "

The name of the bucket that contains the newly created object. Does not return the access point ARN or access point alias if used.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "CompleteMultipartUploadRequest$Bucket": "

Name of the bucket to which the multipart upload was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "CopyObjectRequest$Bucket": "

The name of the destination bucket.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "CreateBucketRequest$Bucket": "

The name of the bucket to create.

", - "CreateMultipartUploadOutput$Bucket": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "CreateMultipartUploadRequest$Bucket": "

The name of the bucket to which to initiate the upload

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "CompleteMultipartUploadOutput$Bucket": "

The name of the bucket that contains the newly created object. Does not return the access point ARN or access point alias if used.

Access points are not supported by directory buckets.

", + "CompleteMultipartUploadRequest$Bucket": "

Name of the bucket to which the multipart upload was initiated.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "CopyObjectRequest$Bucket": "

The name of the destination bucket.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "CreateBucketRequest$Bucket": "

The name of the bucket to create.

General purpose buckets - For information about bucket naming restrictions, see Bucket naming rules in the Amazon S3 User Guide.

Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide

", + "CreateMultipartUploadOutput$Bucket": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.

Access points are not supported by directory buckets.

", + "CreateMultipartUploadRequest$Bucket": "

The name of the bucket where the multipart upload is initiated and where the object is uploaded.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "CreateSessionRequest$Bucket": "

The name of the bucket that you create a session for.

", "DeleteBucketAnalyticsConfigurationRequest$Bucket": "

The name of the bucket from which an analytics configuration is deleted.

", "DeleteBucketCorsRequest$Bucket": "

Specifies the bucket whose cors configuration is being deleted.

", "DeleteBucketEncryptionRequest$Bucket": "

The name of the bucket containing the server-side encryption configuration to delete.

", @@ -470,63 +497,63 @@ "DeleteBucketLifecycleRequest$Bucket": "

The bucket name of the lifecycle to delete.

", "DeleteBucketMetricsConfigurationRequest$Bucket": "

The name of the bucket containing the metrics configuration to delete.

", "DeleteBucketOwnershipControlsRequest$Bucket": "

The Amazon S3 bucket whose OwnershipControls you want to delete.

", - "DeleteBucketPolicyRequest$Bucket": "

The bucket name.

", + "DeleteBucketPolicyRequest$Bucket": "

The bucket name.

Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide

", "DeleteBucketReplicationRequest$Bucket": "

The bucket name.

", - "DeleteBucketRequest$Bucket": "

Specifies the bucket being deleted.

", + "DeleteBucketRequest$Bucket": "

Specifies the bucket being deleted.

Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide

", "DeleteBucketTaggingRequest$Bucket": "

The bucket that has the tag set to be removed.

", "DeleteBucketWebsiteRequest$Bucket": "

The bucket name for which you want to remove the website configuration.

", - "DeleteObjectRequest$Bucket": "

The bucket name of the bucket containing the object.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "DeleteObjectTaggingRequest$Bucket": "

The bucket name containing the objects from which to remove the tags.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "DeleteObjectsRequest$Bucket": "

The bucket name containing the objects to delete.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "DeleteObjectRequest$Bucket": "

The bucket name of the bucket containing the object.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "DeleteObjectTaggingRequest$Bucket": "

The bucket name containing the objects from which to remove the tags.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "DeleteObjectsRequest$Bucket": "

The bucket name containing the objects to delete.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "DeletePublicAccessBlockRequest$Bucket": "

The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.

", "Destination$Bucket": "

The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to store the results.

", "GetBucketAccelerateConfigurationRequest$Bucket": "

The name of the bucket for which the accelerate configuration is retrieved.

", - "GetBucketAclRequest$Bucket": "

Specifies the S3 bucket whose ACL is being requested.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", + "GetBucketAclRequest$Bucket": "

Specifies the S3 bucket whose ACL is being requested.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", "GetBucketAnalyticsConfigurationRequest$Bucket": "

The name of the bucket from which an analytics configuration is retrieved.

", - "GetBucketCorsRequest$Bucket": "

The bucket name for which to get the cors configuration.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", + "GetBucketCorsRequest$Bucket": "

The bucket name for which to get the cors configuration.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", "GetBucketEncryptionRequest$Bucket": "

The name of the bucket from which the server-side encryption configuration is retrieved.

", "GetBucketIntelligentTieringConfigurationRequest$Bucket": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", "GetBucketInventoryConfigurationRequest$Bucket": "

The name of the bucket containing the inventory configuration to retrieve.

", "GetBucketLifecycleConfigurationRequest$Bucket": "

The name of the bucket for which to get the lifecycle information.

", "GetBucketLifecycleRequest$Bucket": "

The name of the bucket for which to get the lifecycle information.

", - "GetBucketLocationRequest$Bucket": "

The name of the bucket for which to get the location.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", + "GetBucketLocationRequest$Bucket": "

The name of the bucket for which to get the location.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", "GetBucketLoggingRequest$Bucket": "

The bucket name for which to get the logging information.

", "GetBucketMetricsConfigurationRequest$Bucket": "

The name of the bucket containing the metrics configuration to retrieve.

", - "GetBucketNotificationConfigurationRequest$Bucket": "

The name of the bucket for which to get the notification configuration.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", + "GetBucketNotificationConfigurationRequest$Bucket": "

The name of the bucket for which to get the notification configuration.

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", "GetBucketOwnershipControlsRequest$Bucket": "

The name of the Amazon S3 bucket whose OwnershipControls you want to retrieve.

", - "GetBucketPolicyRequest$Bucket": "

The bucket name for which to get the bucket policy.

To use this API operation against an access point, provide the alias of the access point in place of the bucket name.

To use this API operation against an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

", + "GetBucketPolicyRequest$Bucket": "

The bucket name to get the bucket policy for.

Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide

Access points - When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

Object Lambda access points - When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

Access points and Object Lambda access points are not supported by directory buckets.

", "GetBucketPolicyStatusRequest$Bucket": "

The name of the Amazon S3 bucket whose policy status you want to retrieve.

", "GetBucketReplicationRequest$Bucket": "

The bucket name for which to get the replication information.

", "GetBucketRequestPaymentRequest$Bucket": "

The name of the bucket for which to get the payment request configuration

", "GetBucketTaggingRequest$Bucket": "

The name of the bucket for which to get the tagging information.

", "GetBucketVersioningRequest$Bucket": "

The name of the bucket for which to get the versioning information.

", "GetBucketWebsiteRequest$Bucket": "

The bucket name for which to get the website configuration.

", - "GetObjectAclRequest$Bucket": "

The bucket name that contains the object for which to get the ACL information.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "GetObjectAttributesRequest$Bucket": "

The name of the bucket that contains the object.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "GetObjectLegalHoldRequest$Bucket": "

The bucket name containing the object whose legal hold status you want to retrieve.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "GetObjectLockConfigurationRequest$Bucket": "

The bucket whose Object Lock configuration you want to retrieve.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "GetObjectRequest$Bucket": "

The bucket name containing the object.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When using an Object Lambda access point the hostname takes the form AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "GetObjectRetentionRequest$Bucket": "

The bucket name containing the object whose retention settings you want to retrieve.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "GetObjectTaggingRequest$Bucket": "

The bucket name containing the object for which to get the tagging information.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "GetObjectAclRequest$Bucket": "

The bucket name that contains the object for which to get the ACL information.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "GetObjectAttributesRequest$Bucket": "

The name of the bucket that contains the object.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "GetObjectLegalHoldRequest$Bucket": "

The bucket name containing the object whose legal hold status you want to retrieve.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "GetObjectLockConfigurationRequest$Bucket": "

The bucket whose Object Lock configuration you want to retrieve.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "GetObjectRequest$Bucket": "

The bucket name containing the object.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Object Lambda access points - When you use this action with an Object Lambda access point, you must direct requests to the Object Lambda access point hostname. The Object Lambda access point hostname takes the form AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "GetObjectRetentionRequest$Bucket": "

The bucket name containing the object whose retention settings you want to retrieve.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "GetObjectTaggingRequest$Bucket": "

The bucket name containing the object for which to get the tagging information.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "GetObjectTorrentRequest$Bucket": "

The name of the bucket containing the object for which to get the torrent files.

", "GetPublicAccessBlockRequest$Bucket": "

The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want to retrieve.

", - "HeadBucketRequest$Bucket": "

The bucket name.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "HeadObjectRequest$Bucket": "

The name of the bucket containing the object.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "HeadBucketRequest$Bucket": "

The bucket name.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Object Lambda access points - When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, see List of Error Codes.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "HeadObjectRequest$Bucket": "

The name of the bucket that contains the object.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "InventoryS3BucketDestination$Bucket": "

The Amazon Resource Name (ARN) of the bucket where inventory results will be published.

", "ListBucketAnalyticsConfigurationsRequest$Bucket": "

The name of the bucket from which analytics configurations are retrieved.

", "ListBucketIntelligentTieringConfigurationsRequest$Bucket": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", "ListBucketInventoryConfigurationsRequest$Bucket": "

The name of the bucket containing the inventory configurations to retrieve.

", "ListBucketMetricsConfigurationsRequest$Bucket": "

The name of the bucket containing the metrics configurations to retrieve.

", "ListMultipartUploadsOutput$Bucket": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.

", - "ListMultipartUploadsRequest$Bucket": "

The name of the bucket to which the multipart upload was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "ListMultipartUploadsRequest$Bucket": "

The name of the bucket to which the multipart upload was initiated.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "ListObjectVersionsOutput$Name": "

The bucket name.

", "ListObjectVersionsRequest$Bucket": "

The bucket name that contains the objects.

", "ListObjectsOutput$Name": "

The bucket name.

", - "ListObjectsRequest$Bucket": "

The name of the bucket containing the objects.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "ListObjectsV2Output$Name": "

The bucket name.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "ListObjectsV2Request$Bucket": "

Bucket name to list.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "ListObjectsRequest$Bucket": "

The name of the bucket containing the objects.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "ListObjectsV2Output$Name": "

The bucket name.

", + "ListObjectsV2Request$Bucket": "

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "ListPartsOutput$Bucket": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.

", - "ListPartsRequest$Bucket": "

The name of the bucket to which the parts are being uploaded.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "ListPartsRequest$Bucket": "

The name of the bucket to which the parts are being uploaded.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "PutBucketAccelerateConfigurationRequest$Bucket": "

The name of the bucket for which the accelerate configuration is set.

", "PutBucketAclRequest$Bucket": "

The bucket to which to apply the ACL.

", "PutBucketAnalyticsConfigurationRequest$Bucket": "

The name of the bucket to which an analytics configuration is stored.

", @@ -541,24 +568,30 @@ "PutBucketNotificationConfigurationRequest$Bucket": "

The name of the bucket.

", "PutBucketNotificationRequest$Bucket": "

The name of the bucket.

", "PutBucketOwnershipControlsRequest$Bucket": "

The name of the Amazon S3 bucket whose OwnershipControls you want to set.

", - "PutBucketPolicyRequest$Bucket": "

The name of the bucket.

", + "PutBucketPolicyRequest$Bucket": "

The name of the bucket.

Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide

", "PutBucketReplicationRequest$Bucket": "

The name of the bucket

", "PutBucketRequestPaymentRequest$Bucket": "

The bucket name.

", "PutBucketTaggingRequest$Bucket": "

The bucket name.

", "PutBucketVersioningRequest$Bucket": "

The bucket name.

", "PutBucketWebsiteRequest$Bucket": "

The bucket name.

", - "PutObjectAclRequest$Bucket": "

The bucket name that contains the object to which you want to attach the ACL.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "PutObjectLegalHoldRequest$Bucket": "

The bucket name containing the object that you want to place a legal hold on.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "PutObjectAclRequest$Bucket": "

The bucket name that contains the object to which you want to attach the ACL.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "PutObjectLegalHoldRequest$Bucket": "

The bucket name containing the object that you want to place a legal hold on.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", "PutObjectLockConfigurationRequest$Bucket": "

The bucket whose Object Lock configuration you want to create or replace.

", - "PutObjectRequest$Bucket": "

The bucket name to which the PUT action was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "PutObjectRetentionRequest$Bucket": "

The bucket name that contains the object you want to apply this Object Retention configuration to.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "PutObjectTaggingRequest$Bucket": "

The bucket name containing the object.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "PutObjectRequest$Bucket": "

The bucket name to which the PUT action was initiated.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "PutObjectRetentionRequest$Bucket": "

The bucket name that contains the object you want to apply this Object Retention configuration to.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "PutObjectTaggingRequest$Bucket": "

The bucket name containing the object.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "PutPublicAccessBlockRequest$Bucket": "

The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want to set.

", - "RestoreObjectRequest$Bucket": "

The bucket name containing the object to restore.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "RestoreObjectRequest$Bucket": "

The bucket name containing the object to restore.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", "S3Location$BucketName": "

The name of the bucket where the restore results will be placed.

", "SelectObjectContentRequest$Bucket": "

The S3 bucket.

", - "UploadPartCopyRequest$Bucket": "

The bucket name.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "UploadPartRequest$Bucket": "

The name of the bucket to which the multipart upload was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

" + "UploadPartCopyRequest$Bucket": "

The bucket name.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "UploadPartRequest$Bucket": "

The name of the bucket to which the multipart upload was initiated.

Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide.

Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

Access points and Object Lambda access points are not supported by directory buckets.

S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

" + } + }, + "BucketType": { + "base": null, + "refs": { + "BucketInfo$Type": "

The type of bucket.

" } }, "BucketVersioningStatus": { @@ -571,14 +604,15 @@ "Buckets": { "base": null, "refs": { - "ListBucketsOutput$Buckets": "

The list of buckets owned by the requester.

" + "ListBucketsOutput$Buckets": "

The list of buckets owned by the requester.

", + "ListDirectoryBucketsOutput$Buckets": "

The list of buckets owned by the requester.

" } }, "BypassGovernanceRetention": { "base": null, "refs": { - "DeleteObjectRequest$BypassGovernanceRetention": "

Indicates whether S3 Object Lock should bypass Governance-mode restrictions to process this operation. To use this header, you must have the s3:BypassGovernanceRetention permission.

", - "DeleteObjectsRequest$BypassGovernanceRetention": "

Specifies whether you want to delete this object even if it has a Governance-type Object Lock in place. To use this header, you must have the s3:BypassGovernanceRetention permission.

", + "DeleteObjectRequest$BypassGovernanceRetention": "

Indicates whether S3 Object Lock should bypass Governance-mode restrictions to process this operation. To use this header, you must have the s3:BypassGovernanceRetention permission.

This functionality is not supported for directory buckets.

", + "DeleteObjectsRequest$BypassGovernanceRetention": "

Specifies whether you want to delete this object even if it has a Governance-type Object Lock in place. To use this header, you must have the s3:BypassGovernanceRetention permission.

This functionality is not supported for directory buckets.

", "PutObjectRetentionRequest$BypassGovernanceRetention": "

Indicates whether this action should bypass Governance-mode restrictions.

" } }, @@ -637,11 +671,11 @@ "CacheControl": { "base": null, "refs": { - "CopyObjectRequest$CacheControl": "

Specifies caching behavior along the request/reply chain.

", + "CopyObjectRequest$CacheControl": "

Specifies the caching behavior along the request/reply chain.

", "CreateMultipartUploadRequest$CacheControl": "

Specifies caching behavior along the request/reply chain.

", "GetObjectOutput$CacheControl": "

Specifies caching behavior along the request/reply chain.

", "HeadObjectOutput$CacheControl": "

Specifies caching behavior along the request/reply chain.

", - "PutObjectRequest$CacheControl": "

Can be used to specify caching behavior along the request/reply chain. For more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.

", + "PutObjectRequest$CacheControl": "

Can be used to specify caching behavior along the request/reply chain. For more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.

", "WriteGetObjectResponseRequest$CacheControl": "

Specifies caching behavior along the request/reply chain.

" } }, @@ -655,35 +689,35 @@ "base": null, "refs": { "ChecksumAlgorithmList$member": null, - "CopyObjectRequest$ChecksumAlgorithm": "

Indicates the algorithm you want Amazon S3 to use to create the checksum for the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyObjectRequest$ChecksumAlgorithm": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum for the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

When you copy an object, if the source object has a checksum, that checksum value will be copied to the new object by default. If the CopyObject request does not include this x-amz-checksum-algorithm header, the checksum algorithm will be copied from the source object to the destination object (if it's present on the source object). You can optionally specify a different checksum algorithm to use with the x-amz-checksum-algorithm header. Unrecognized or unsupported values will respond with the HTTP status code 400 Bad Request.

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

", "CreateMultipartUploadOutput$ChecksumAlgorithm": "

The algorithm that was used to create a checksum of the object.

", - "CreateMultipartUploadRequest$ChecksumAlgorithm": "

Indicates the algorithm you want Amazon S3 to use to create the checksum for the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "DeleteObjectsRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

This checksum algorithm must be the same for all parts and it match the checksum value supplied in the CreateMultipartUpload request.

", + "CreateMultipartUploadRequest$ChecksumAlgorithm": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum for the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "DeleteObjectsRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

For the x-amz-checksum-algorithm header, replace algorithm with the supported algorithm from the following list:

  • CRC32

  • CRC32C

  • SHA1

  • SHA256

For more information, see Checking object integrity in the Amazon S3 User Guide.

If the individual checksum value you provide through x-amz-checksum-algorithm doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum algorithm that matches the provided value in x-amz-checksum-algorithm .

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", "ListPartsOutput$ChecksumAlgorithm": "

The algorithm that was used to create a checksum of the object.

", "MultipartUpload$ChecksumAlgorithm": "

The algorithm that was used to create a checksum of the object.

", - "PutBucketAccelerateConfigurationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketAclRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketCorsRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketEncryptionRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketLifecycleConfigurationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketLifecycleRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketLoggingRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketNotificationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketPolicyRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketReplicationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketRequestPaymentRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketTaggingRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketVersioningRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutBucketWebsiteRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutObjectAclRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutObjectLegalHoldRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutObjectLockConfigurationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutObjectRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutObjectRetentionRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutObjectTaggingRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "PutPublicAccessBlockRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "RestoreObjectRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", - "UploadPartRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

This checksum algorithm must be the same for all parts and it match the checksum value supplied in the CreateMultipartUpload request.

" + "PutBucketAccelerateConfigurationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketAclRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketCorsRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketEncryptionRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketLifecycleConfigurationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketLifecycleRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketLoggingRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketNotificationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketPolicyRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

For the x-amz-checksum-algorithm header, replace algorithm with the supported algorithm from the following list:

  • CRC32

  • CRC32C

  • SHA1

  • SHA256

For more information, see Checking object integrity in the Amazon S3 User Guide.

If the individual checksum value you provide through x-amz-checksum-algorithm doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum algorithm that matches the provided value in x-amz-checksum-algorithm .

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

", + "PutBucketReplicationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketRequestPaymentRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketTaggingRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketVersioningRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutBucketWebsiteRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutObjectAclRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutObjectLegalHoldRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutObjectLockConfigurationRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutObjectRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

For the x-amz-checksum-algorithm header, replace algorithm with the supported algorithm from the following list:

  • CRC32

  • CRC32C

  • SHA1

  • SHA256

For more information, see Checking object integrity in the Amazon S3 User Guide.

If the individual checksum value you provide through x-amz-checksum-algorithm doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum algorithm that matches the provided value in x-amz-checksum-algorithm .

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

", + "PutObjectRetentionRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutObjectTaggingRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "PutPublicAccessBlockRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "RestoreObjectRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

", + "UploadPartRequest$ChecksumAlgorithm": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more information, see Checking object integrity in the Amazon S3 User Guide.

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm parameter.

This checksum algorithm must be the same for all parts and it match the checksum value supplied in the CreateMultipartUpload request.

" } }, "ChecksumAlgorithmList": { @@ -696,19 +730,19 @@ "ChecksumCRC32": { "base": null, "refs": { - "Checksum$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CompleteMultipartUploadOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "Checksum$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompleteMultipartUploadOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "CompleteMultipartUploadRequest$ChecksumCRC32": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32 checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "CompletedPart$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyObjectResult$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyPartResult$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "GetObjectOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "HeadObjectOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompletedPart$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyObjectResult$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyPartResult$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "GetObjectOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "HeadObjectOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "ObjectPart$ChecksumCRC32": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32 checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", "Part$ChecksumCRC32": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32 checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "PutObjectOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "PutObjectOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "PutObjectRequest$ChecksumCRC32": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32 checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "UploadPartOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "UploadPartOutput$ChecksumCRC32": "

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "UploadPartRequest$ChecksumCRC32": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32 checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", "WriteGetObjectResponseRequest$ChecksumCRC32": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32 checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

" } @@ -716,19 +750,19 @@ "ChecksumCRC32C": { "base": null, "refs": { - "Checksum$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CompleteMultipartUploadOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "Checksum$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompleteMultipartUploadOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "CompleteMultipartUploadRequest$ChecksumCRC32C": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32C checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "CompletedPart$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyObjectResult$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyPartResult$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "GetObjectOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "HeadObjectOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "ObjectPart$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "Part$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "PutObjectOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompletedPart$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyObjectResult$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyPartResult$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "GetObjectOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "HeadObjectOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "ObjectPart$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "Part$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "PutObjectOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "PutObjectRequest$ChecksumCRC32C": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32C checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "UploadPartOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "UploadPartOutput$ChecksumCRC32C": "

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "UploadPartRequest$ChecksumCRC32C": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 32-bit CRC32C checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", "WriteGetObjectResponseRequest$ChecksumCRC32C": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32C checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

" } @@ -743,19 +777,19 @@ "ChecksumSHA1": { "base": null, "refs": { - "Checksum$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CompleteMultipartUploadOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "Checksum$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompleteMultipartUploadOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "CompleteMultipartUploadRequest$ChecksumSHA1": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 160-bit SHA-1 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "CompletedPart$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyObjectResult$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyPartResult$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "GetObjectOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "HeadObjectOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "ObjectPart$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "Part$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "PutObjectOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompletedPart$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyObjectResult$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyPartResult$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "GetObjectOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "HeadObjectOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "ObjectPart$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "Part$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "PutObjectOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "PutObjectRequest$ChecksumSHA1": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 160-bit SHA-1 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "UploadPartOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "UploadPartOutput$ChecksumSHA1": "

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "UploadPartRequest$ChecksumSHA1": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 160-bit SHA-1 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", "WriteGetObjectResponseRequest$ChecksumSHA1": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

" } @@ -763,19 +797,19 @@ "ChecksumSHA256": { "base": null, "refs": { - "Checksum$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CompleteMultipartUploadOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "Checksum$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompleteMultipartUploadOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "CompleteMultipartUploadRequest$ChecksumSHA256": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 256-bit SHA-256 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "CompletedPart$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyObjectResult$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "CopyPartResult$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "GetObjectOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "HeadObjectOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", - "ObjectPart$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CompletedPart$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyObjectResult$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "CopyPartResult$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "GetObjectOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", + "HeadObjectOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "ObjectPart$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "Part$ChecksumSHA256": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 256-bit SHA-256 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "PutObjectOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "PutObjectOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "PutObjectRequest$ChecksumSHA256": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 256-bit SHA-256 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "UploadPartOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", + "UploadPartOutput$ChecksumSHA256": "

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

", "UploadPartRequest$ChecksumSHA256": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the base64-encoded, 256-bit SHA-256 digest of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

", "WriteGetObjectResponseRequest$ChecksumSHA256": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 256-bit SHA-256 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

" } @@ -819,10 +853,10 @@ "CommonPrefixList": { "base": null, "refs": { - "ListMultipartUploadsOutput$CommonPrefixes": "

If you specify a delimiter in the request, then the result returns each distinct key prefix containing the delimiter in a CommonPrefixes element. The distinct key prefixes are returned in the Prefix child element.

", + "ListMultipartUploadsOutput$CommonPrefixes": "

If you specify a delimiter in the request, then the result returns each distinct key prefix containing the delimiter in a CommonPrefixes element. The distinct key prefixes are returned in the Prefix child element.

Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

", "ListObjectVersionsOutput$CommonPrefixes": "

All of the keys rolled up into a common prefix count as a single return when calculating the number of returns.

", "ListObjectsOutput$CommonPrefixes": "

All of the keys (up to 1,000) rolled up in a common prefix count as a single return when calculating the number of returns.

A response can contain CommonPrefixes only if you specify a delimiter.

CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by the delimiter.

CommonPrefixes lists keys that act like subdirectories in the directory specified by Prefix.

For example, if the prefix is notes/ and the delimiter is a slash (/), as in notes/summer/july, the common prefix is notes/summer/. All of the keys that roll up into a common prefix count as a single return when calculating the number of returns.

", - "ListObjectsV2Output$CommonPrefixes": "

All of the keys (up to 1,000) rolled up into a common prefix count as a single return when calculating the number of returns.

A response can contain CommonPrefixes only if you specify a delimiter.

CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by a delimiter.

CommonPrefixes lists keys that act like subdirectories in the directory specified by Prefix.

For example, if the prefix is notes/ and the delimiter is a slash (/) as in notes/summer/july, the common prefix is notes/summer/. All of the keys that roll up into a common prefix count as a single return when calculating the number of returns.

" + "ListObjectsV2Output$CommonPrefixes": "

All of the keys (up to 1,000) that share the same prefix are grouped together. When counting the total numbers of returns by this API operation, this group of keys is considered as one item.

A response can contain CommonPrefixes only if you specify a delimiter.

CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by a delimiter.

CommonPrefixes lists keys that act like subdirectories in the directory specified by Prefix.

For example, if the prefix is notes/ and the delimiter is a slash (/) as in notes/summer/july, the common prefix is notes/summer/. All of the keys that roll up into a common prefix count as a single return when calculating the number of returns.

  • Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

  • Directory buckets - When you query ListObjectsV2 with a delimiter during in-progress multipart uploads, the CommonPrefixes response parameter contains the prefixes that are associated with the in-progress multipart uploads. For more information about multipart uploads, see Multipart Upload Overview in the Amazon S3 User Guide.

" } }, "CompleteMultipartUploadOutput": { @@ -868,13 +902,13 @@ "ConfirmRemoveSelfBucketAccess": { "base": null, "refs": { - "PutBucketPolicyRequest$ConfirmRemoveSelfBucketAccess": "

Set this parameter to true to confirm that you want to remove your permissions to change this bucket policy in the future.

" + "PutBucketPolicyRequest$ConfirmRemoveSelfBucketAccess": "

Set this parameter to true to confirm that you want to remove your permissions to change this bucket policy in the future.

This functionality is not supported for directory buckets.

" } }, "ContentDisposition": { "base": null, "refs": { - "CopyObjectRequest$ContentDisposition": "

Specifies presentational information for the object.

", + "CopyObjectRequest$ContentDisposition": "

Specifies presentational information for the object. Indicates whether an object should be displayed in a web browser or downloaded as a file. It allows specifying the desired filename for the downloaded file.

", "CreateMultipartUploadRequest$ContentDisposition": "

Specifies presentational information for the object.

", "GetObjectOutput$ContentDisposition": "

Specifies presentational information for the object.

", "HeadObjectOutput$ContentDisposition": "

Specifies presentational information for the object.

", @@ -885,10 +919,10 @@ "ContentEncoding": { "base": null, "refs": { - "CopyObjectRequest$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

", - "CreateMultipartUploadRequest$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

", - "GetObjectOutput$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

", - "HeadObjectOutput$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

", + "CopyObjectRequest$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

For directory buckets, only the aws-chunked value is supported in this header field.

", + "CreateMultipartUploadRequest$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

For directory buckets, only the aws-chunked value is supported in this header field.

", + "GetObjectOutput$ContentEncoding": "

Indicates what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

", + "HeadObjectOutput$ContentEncoding": "

Indicates what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

", "PutObjectRequest$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. For more information, see https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding.

", "WriteGetObjectResponseRequest$ContentEncoding": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

" } @@ -897,7 +931,7 @@ "base": null, "refs": { "CopyObjectRequest$ContentLanguage": "

The language the content is in.

", - "CreateMultipartUploadRequest$ContentLanguage": "

The language the content is in.

", + "CreateMultipartUploadRequest$ContentLanguage": "

The language that the content is in.

", "GetObjectOutput$ContentLanguage": "

The language the content is in.

", "HeadObjectOutput$ContentLanguage": "

The language the content is in.

", "PutObjectRequest$ContentLanguage": "

The language the content is in.

", @@ -924,7 +958,7 @@ "PutBucketLoggingRequest$ContentMD5": "

The MD5 hash of the PutBucketLogging request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutBucketNotificationRequest$ContentMD5": "

The MD5 hash of the PutPublicAccessBlock request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutBucketOwnershipControlsRequest$ContentMD5": "

The MD5 hash of the OwnershipControls request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "PutBucketPolicyRequest$ContentMD5": "

The MD5 hash of the request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "PutBucketPolicyRequest$ContentMD5": "

The MD5 hash of the request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

This functionality is not supported for directory buckets.

", "PutBucketReplicationRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see RFC 1864.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutBucketRequestPaymentRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see RFC 1864.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutBucketTaggingRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see RFC 1864.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", @@ -933,11 +967,11 @@ "PutObjectAclRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the data. This header must be used as a message integrity check to verify that the request body was not corrupted in transit. For more information, go to RFC 1864.>

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutObjectLegalHoldRequest$ContentMD5": "

The MD5 hash for the request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutObjectLockConfigurationRequest$ContentMD5": "

The MD5 hash for the request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "PutObjectRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the message (without the headers) according to RFC 1864. This header can be used as a message integrity check to verify that the data is the same data that was originally sent. Although it is optional, we recommend using the Content-MD5 mechanism as an end-to-end integrity check. For more information about REST request authentication, see REST Authentication.

", + "PutObjectRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the message (without the headers) according to RFC 1864. This header can be used as a message integrity check to verify that the data is the same data that was originally sent. Although it is optional, we recommend using the Content-MD5 mechanism as an end-to-end integrity check. For more information about REST request authentication, see REST Authentication.

The Content-MD5 header is required for any request to upload an object with a retention period configured using Amazon S3 Object Lock. For more information about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", "PutObjectRetentionRequest$ContentMD5": "

The MD5 hash for the request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutObjectTaggingRequest$ContentMD5": "

The MD5 hash for the request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", "PutPublicAccessBlockRequest$ContentMD5": "

The MD5 hash of the PutPublicAccessBlock request body.

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "UploadPartRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the part data. This parameter is auto-populated when using the command from the CLI. This parameter is required if object lock parameters are specified.

" + "UploadPartRequest$ContentMD5": "

The base64-encoded 128-bit MD5 digest of the part data. This parameter is auto-populated when using the command from the CLI. This parameter is required if object lock parameters are specified.

This functionality is not supported for directory buckets.

" } }, "ContentRange": { @@ -950,7 +984,7 @@ "ContentType": { "base": null, "refs": { - "CopyObjectRequest$ContentType": "

A standard MIME type describing the format of the object data.

", + "CopyObjectRequest$ContentType": "

A standard MIME type that describes the format of the object data.

", "CreateMultipartUploadRequest$ContentType": "

A standard MIME type describing the format of the object data.

", "GetObjectOutput$ContentType": "

A standard MIME type describing the format of the object data.

", "HeadObjectOutput$ContentType": "

A standard MIME type describing the format of the object data.

", @@ -989,36 +1023,36 @@ "CopySource": { "base": null, "refs": { - "CopyObjectRequest$CopySource": "

Specifies the source object for the copy operation. You specify the value in one of two formats, depending on whether you want to access the source object through an access point:

  • For objects not accessed through an access point, specify the name of the source bucket and the key of the source object, separated by a slash (/). For example, to copy the object reports/january.pdf from the bucket awsexamplebucket, use awsexamplebucket/reports/january.pdf. The value must be URL-encoded.

  • For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    Amazon S3 supports copy operations using access points only when the source and destination buckets are in the same Amazon Web Services Region.

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

To copy a specific version of an object, append ?versionId=<version-id> to the value (for example, awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). If you don't specify a version ID, Amazon S3 copies the latest version of the source object.

", - "UploadPartCopyRequest$CopySource": "

Specifies the source object for the copy operation. You specify the value in one of two formats, depending on whether you want to access the source object through an access point:

  • For objects not accessed through an access point, specify the name of the source bucket and key of the source object, separated by a slash (/). For example, to copy the object reports/january.pdf from the bucket awsexamplebucket, use awsexamplebucket/reports/january.pdf. The value must be URL-encoded.

  • For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    Amazon S3 supports copy operations using access points only when the source and destination buckets are in the same Amazon Web Services Region.

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

To copy a specific version of an object, append ?versionId=<version-id> to the value (for example, awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). If you don't specify a version ID, Amazon S3 copies the latest version of the source object.

" + "CopyObjectRequest$CopySource": "

Specifies the source object for the copy operation. The source object can be up to 5 GB. If the source object is an object that was uploaded by using a multipart upload, the object copy will be a single part object after the source object is copied to the destination bucket.

You specify the value of the copy source in one of two formats, depending on whether you want to access the source object through an access point:

  • For objects not accessed through an access point, specify the name of the source bucket and the key of the source object, separated by a slash (/). For example, to copy the object reports/january.pdf from the general purpose bucket awsexamplebucket, use awsexamplebucket/reports/january.pdf. The value must be URL-encoded. To copy the object reports/january.pdf from the directory bucket awsexamplebucket--use1-az5--x-s3, use awsexamplebucket--use1-az5--x-s3/reports/january.pdf. The value must be URL-encoded.

  • For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    • Amazon S3 supports copy operations using Access points only when the source and destination buckets are in the same Amazon Web Services Region.

    • Access points are not supported by directory buckets.

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

If your source bucket versioning is enabled, the x-amz-copy-source header by default identifies the current version of an object to copy. If the current version is a delete marker, Amazon S3 behaves as if the object was deleted. To copy a different version, use the versionId query parameter. Specifically, append ?versionId=<version-id> to the value (for example, awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). If you don't specify a version ID, Amazon S3 copies the latest version of the source object.

If you enable versioning on the destination bucket, Amazon S3 generates a unique version ID for the copied object. This version ID is different from the version ID of the source object. Amazon S3 returns the version ID of the copied object in the x-amz-version-id response header in the response.

If you do not enable versioning or suspend it on the destination bucket, the version ID that Amazon S3 generates in the x-amz-version-id response header is always null.

Directory buckets - S3 Versioning isn't enabled and supported for directory buckets.

", + "UploadPartCopyRequest$CopySource": "

Specifies the source object for the copy operation. You specify the value in one of two formats, depending on whether you want to access the source object through an access point:

  • For objects not accessed through an access point, specify the name of the source bucket and key of the source object, separated by a slash (/). For example, to copy the object reports/january.pdf from the bucket awsexamplebucket, use awsexamplebucket/reports/january.pdf. The value must be URL-encoded.

  • For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    • Amazon S3 supports copy operations using Access points only when the source and destination buckets are in the same Amazon Web Services Region.

    • Access points are not supported by directory buckets.

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

If your bucket has versioning enabled, you could have multiple versions of the same object. By default, x-amz-copy-source identifies the current version of the source object to copy. To copy a specific version of the source object to copy, append ?versionId=<version-id> to the x-amz-copy-source request header (for example, x-amz-copy-source: /awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893).

If the current version is a delete marker and you don't specify a versionId in the x-amz-copy-source request header, Amazon S3 returns a 404 Not Found error, because the object does not exist. If you specify versionId in the x-amz-copy-source and the versionId is a delete marker, Amazon S3 returns an HTTP 400 Bad Request error, because you are not allowed to specify a delete marker as a version for the x-amz-copy-source.

Directory buckets - S3 Versioning isn't enabled and supported for directory buckets.

" } }, "CopySourceIfMatch": { "base": null, "refs": { - "CopyObjectRequest$CopySourceIfMatch": "

Copies the object if its entity tag (ETag) matches the specified tag.

", - "UploadPartCopyRequest$CopySourceIfMatch": "

Copies the object if its entity tag (ETag) matches the specified tag.

" + "CopyObjectRequest$CopySourceIfMatch": "

Copies the object if its entity tag (ETag) matches the specified tag.

If both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are present in the request and evaluate as follows, Amazon S3 returns 200 OK and copies the data:

  • x-amz-copy-source-if-match condition evaluates to true

  • x-amz-copy-source-if-unmodified-since condition evaluates to false

", + "UploadPartCopyRequest$CopySourceIfMatch": "

Copies the object if its entity tag (ETag) matches the specified tag.

If both of the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are present in the request as follows:

x-amz-copy-source-if-match condition evaluates to true, and;

x-amz-copy-source-if-unmodified-since condition evaluates to false;

Amazon S3 returns 200 OK and copies the data.

" } }, "CopySourceIfModifiedSince": { "base": null, "refs": { - "CopyObjectRequest$CopySourceIfModifiedSince": "

Copies the object if it has been modified since the specified time.

", - "UploadPartCopyRequest$CopySourceIfModifiedSince": "

Copies the object if it has been modified since the specified time.

" + "CopyObjectRequest$CopySourceIfModifiedSince": "

Copies the object if it has been modified since the specified time.

If both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since headers are present in the request and evaluate as follows, Amazon S3 returns the 412 Precondition Failed response code:

  • x-amz-copy-source-if-none-match condition evaluates to false

  • x-amz-copy-source-if-modified-since condition evaluates to true

", + "UploadPartCopyRequest$CopySourceIfModifiedSince": "

Copies the object if it has been modified since the specified time.

If both of the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since headers are present in the request as follows:

x-amz-copy-source-if-none-match condition evaluates to false, and;

x-amz-copy-source-if-modified-since condition evaluates to true;

Amazon S3 returns 412 Precondition Failed response code.

" } }, "CopySourceIfNoneMatch": { "base": null, "refs": { - "CopyObjectRequest$CopySourceIfNoneMatch": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

", - "UploadPartCopyRequest$CopySourceIfNoneMatch": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

" + "CopyObjectRequest$CopySourceIfNoneMatch": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

If both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since headers are present in the request and evaluate as follows, Amazon S3 returns the 412 Precondition Failed response code:

  • x-amz-copy-source-if-none-match condition evaluates to false

  • x-amz-copy-source-if-modified-since condition evaluates to true

", + "UploadPartCopyRequest$CopySourceIfNoneMatch": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

If both of the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since headers are present in the request as follows:

x-amz-copy-source-if-none-match condition evaluates to false, and;

x-amz-copy-source-if-modified-since condition evaluates to true;

Amazon S3 returns 412 Precondition Failed response code.

" } }, "CopySourceIfUnmodifiedSince": { "base": null, "refs": { - "CopyObjectRequest$CopySourceIfUnmodifiedSince": "

Copies the object if it hasn't been modified since the specified time.

", - "UploadPartCopyRequest$CopySourceIfUnmodifiedSince": "

Copies the object if it hasn't been modified since the specified time.

" + "CopyObjectRequest$CopySourceIfUnmodifiedSince": "

Copies the object if it hasn't been modified since the specified time.

If both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are present in the request and evaluate as follows, Amazon S3 returns 200 OK and copies the data:

  • x-amz-copy-source-if-match condition evaluates to true

  • x-amz-copy-source-if-unmodified-since condition evaluates to false

", + "UploadPartCopyRequest$CopySourceIfUnmodifiedSince": "

Copies the object if it hasn't been modified since the specified time.

If both of the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since headers are present in the request as follows:

x-amz-copy-source-if-match condition evaluates to true, and;

x-amz-copy-source-if-unmodified-since condition evaluates to false;

Amazon S3 returns 200 OK and copies the data.

" } }, "CopySourceRange": { @@ -1030,29 +1064,29 @@ "CopySourceSSECustomerAlgorithm": { "base": null, "refs": { - "CopyObjectRequest$CopySourceSSECustomerAlgorithm": "

Specifies the algorithm to use when decrypting the source object (for example, AES256).

", - "UploadPartCopyRequest$CopySourceSSECustomerAlgorithm": "

Specifies the algorithm to use when decrypting the source object (for example, AES256).

" + "CopyObjectRequest$CopySourceSSECustomerAlgorithm": "

Specifies the algorithm to use when decrypting the source object (for example, AES256).

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary encryption information in your request so that Amazon S3 can decrypt the object for copying.

This functionality is not supported when the source object is in a directory bucket.

", + "UploadPartCopyRequest$CopySourceSSECustomerAlgorithm": "

Specifies the algorithm to use when decrypting the source object (for example, AES256).

This functionality is not supported when the source object is in a directory bucket.

" } }, "CopySourceSSECustomerKey": { "base": null, "refs": { - "CopyObjectRequest$CopySourceSSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be one that was used when the source object was created.

", - "UploadPartCopyRequest$CopySourceSSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be one that was used when the source object was created.

" + "CopyObjectRequest$CopySourceSSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be the same one that was used when the source object was created.

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary encryption information in your request so that Amazon S3 can decrypt the object for copying.

This functionality is not supported when the source object is in a directory bucket.

", + "UploadPartCopyRequest$CopySourceSSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be one that was used when the source object was created.

This functionality is not supported when the source object is in a directory bucket.

" } }, "CopySourceSSECustomerKeyMD5": { "base": null, "refs": { - "CopyObjectRequest$CopySourceSSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "UploadPartCopyRequest$CopySourceSSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

" + "CopyObjectRequest$CopySourceSSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary encryption information in your request so that Amazon S3 can decrypt the object for copying.

This functionality is not supported when the source object is in a directory bucket.

", + "UploadPartCopyRequest$CopySourceSSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported when the source object is in a directory bucket.

" } }, "CopySourceVersionId": { "base": null, "refs": { - "CopyObjectOutput$CopySourceVersionId": "

Version of the copied object in the destination bucket.

", - "UploadPartCopyOutput$CopySourceVersionId": "

The version of the source object that was copied, if you have enabled versioning on the source bucket.

" + "CopyObjectOutput$CopySourceVersionId": "

Version ID of the source object that was copied.

This functionality is not supported when the source object is in a directory bucket.

", + "UploadPartCopyOutput$CopySourceVersionId": "

The version of the source object that was copied, if you have enabled versioning on the source bucket.

This functionality is not supported when the source object is in a directory bucket.

" } }, "CreateBucketConfiguration": { @@ -1081,12 +1115,28 @@ "refs": { } }, + "CreateSessionOutput": { + "base": null, + "refs": { + } + }, + "CreateSessionRequest": { + "base": null, + "refs": { + } + }, "CreationDate": { "base": null, "refs": { "Bucket$CreationDate": "

Date the bucket was created. This date can change when making changes to your bucket, such as editing its bucket policy.

" } }, + "DataRedundancy": { + "base": null, + "refs": { + "BucketInfo$DataRedundancy": "

The number of Availability Zone that's used for redundancy for the bucket.

" + } + }, "Date": { "base": null, "refs": { @@ -1192,11 +1242,11 @@ "DeleteMarker": { "base": null, "refs": { - "DeleteObjectOutput$DeleteMarker": "

Indicates whether the specified object version that was permanently deleted was (true) or was not (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not (false) the current version of the object is a delete marker.

", - "DeletedObject$DeleteMarker": "

Indicates whether the specified object version that was permanently deleted was (true) or was not (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not (false) the current version of the object is a delete marker.

", - "GetObjectAttributesOutput$DeleteMarker": "

Specifies whether the object retrieved was (true) or was not (false) a delete marker. If false, this response header does not appear in the response.

", - "GetObjectOutput$DeleteMarker": "

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

", - "HeadObjectOutput$DeleteMarker": "

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

", + "DeleteObjectOutput$DeleteMarker": "

Indicates whether the specified object version that was permanently deleted was (true) or was not (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not (false) the current version of the object is a delete marker.

This functionality is not supported for directory buckets.

", + "DeletedObject$DeleteMarker": "

Indicates whether the specified object version that was permanently deleted was (true) or was not (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not (false) the current version of the object is a delete marker.

This functionality is not supported for directory buckets.

", + "GetObjectAttributesOutput$DeleteMarker": "

Specifies whether the object retrieved was (true) or was not (false) a delete marker. If false, this response header does not appear in the response.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$DeleteMarker": "

Indicates whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

  • If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

  • If the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

", + "HeadObjectOutput$DeleteMarker": "

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$DeleteMarker": "

Specifies whether an object stored in Amazon S3 is (true) or is not (false) a delete marker.

" } }, @@ -1221,7 +1271,7 @@ "DeleteMarkerVersionId": { "base": null, "refs": { - "DeletedObject$DeleteMarkerVersionId": "

The version ID of the delete marker created as a result of the DELETE operation. If you delete a specific object version, the value returned by this header is the version ID of the object version deleted.

" + "DeletedObject$DeleteMarkerVersionId": "

The version ID of the delete marker created as a result of the DELETE operation. If you delete a specific object version, the value returned by this header is the version ID of the object version deleted.

This functionality is not supported for directory buckets.

" } }, "DeleteMarkers": { @@ -1280,14 +1330,14 @@ "Delimiter": { "base": null, "refs": { - "ListMultipartUploadsOutput$Delimiter": "

Contains the delimiter you specified in the request. If you don't specify a delimiter in your request, this element is absent from the response.

", - "ListMultipartUploadsRequest$Delimiter": "

Character you use to group keys.

All keys that contain the same string between the prefix, if specified, and the first occurrence of the delimiter after the prefix are grouped under a single result element, CommonPrefixes. If you don't specify the prefix parameter, then the substring starts at the beginning of the key. The keys that are grouped under CommonPrefixes result element are not returned elsewhere in the response.

", + "ListMultipartUploadsOutput$Delimiter": "

Contains the delimiter you specified in the request. If you don't specify a delimiter in your request, this element is absent from the response.

Directory buckets - For directory buckets, / is the only supported delimiter.

", + "ListMultipartUploadsRequest$Delimiter": "

Character you use to group keys.

All keys that contain the same string between the prefix, if specified, and the first occurrence of the delimiter after the prefix are grouped under a single result element, CommonPrefixes. If you don't specify the prefix parameter, then the substring starts at the beginning of the key. The keys that are grouped under CommonPrefixes result element are not returned elsewhere in the response.

Directory buckets - For directory buckets, / is the only supported delimiter.

", "ListObjectVersionsOutput$Delimiter": "

The delimiter grouping the included keys. A delimiter is a character that you specify to group keys. All keys that contain the same string between the prefix and the first occurrence of the delimiter are grouped under a single result element in CommonPrefixes. These groups are counted as one result against the max-keys limitation. These keys are not returned elsewhere in the response.

", "ListObjectVersionsRequest$Delimiter": "

A delimiter is a character that you specify to group keys. All keys that contain the same string between the prefix and the first occurrence of the delimiter are grouped under a single result element in CommonPrefixes. These groups are counted as one result against the max-keys limitation. These keys are not returned elsewhere in the response.

", "ListObjectsOutput$Delimiter": "

Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the MaxKeys value.

", "ListObjectsRequest$Delimiter": "

A delimiter is a character that you use to group keys.

", - "ListObjectsV2Output$Delimiter": "

Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the MaxKeys value.

", - "ListObjectsV2Request$Delimiter": "

A delimiter is a character that you use to group keys.

" + "ListObjectsV2Output$Delimiter": "

Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the MaxKeys value.

Directory buckets - For directory buckets, / is the only supported delimiter.

", + "ListObjectsV2Request$Delimiter": "

A delimiter is a character that you use to group keys.

  • Directory buckets - For directory buckets, / is the only supported delimiter.

  • Directory buckets - When you query ListObjectsV2 with a delimiter during in-progress multipart uploads, the CommonPrefixes response parameter contains the prefixes that are associated with the in-progress multipart uploads. For more information about multipart uploads, see Multipart Upload Overview in the Amazon S3 User Guide.

" } }, "Description": { @@ -1302,12 +1352,19 @@ "ReplicationRule$Destination": "

A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).

" } }, + "DirectoryBucketToken": { + "base": null, + "refs": { + "ListDirectoryBucketsOutput$ContinuationToken": "

If ContinuationToken was sent with the request, it is included in the response. You can use the returned ContinuationToken for pagination of the list response.

", + "ListDirectoryBucketsRequest$ContinuationToken": "

ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key. You can use this ContinuationToken for pagination of the list results.

" + } + }, "DisplayName": { "base": null, "refs": { "Grantee$DisplayName": "

Screen name of the grantee.

", - "Initiator$DisplayName": "

Name of the Principal.

", - "Owner$DisplayName": "

Container for the display name of the owner. This value is only supported in the following Amazon Web Services Regions:

  • US East (N. Virginia)

  • US West (N. California)

  • US West (Oregon)

  • Asia Pacific (Singapore)

  • Asia Pacific (Sydney)

  • Asia Pacific (Tokyo)

  • Europe (Ireland)

  • South America (São Paulo)

" + "Initiator$DisplayName": "

Name of the Principal.

This functionality is not supported for directory buckets.

", + "Owner$DisplayName": "

Container for the display name of the owner. This value is only supported in the following Amazon Web Services Regions:

  • US East (N. Virginia)

  • US West (N. California)

  • US West (Oregon)

  • Asia Pacific (Singapore)

  • Asia Pacific (Sydney)

  • Asia Pacific (Tokyo)

  • Europe (Ireland)

  • South America (São Paulo)

This functionality is not supported for directory buckets.

" } }, "ETag": { @@ -1320,10 +1377,10 @@ "GetObjectAttributesOutput$ETag": "

An ETag is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

", "GetObjectOutput$ETag": "

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

", "HeadObjectOutput$ETag": "

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

", - "Object$ETag": "

The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object, not its metadata. The ETag may or may not be an MD5 digest of the object data. Whether or not it is depends on how the object was created and how it is encrypted as described below:

  • Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that are an MD5 digest of their object data.

  • Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5 digest of their object data.

  • If an object is created by either the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest, regardless of the method of encryption. If an object is larger than 16 MB, the Amazon Web Services Management Console will upload or copy that object as a Multipart Upload, and therefore the ETag will not be an MD5 digest.

", + "Object$ETag": "

The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object, not its metadata. The ETag may or may not be an MD5 digest of the object data. Whether or not it is depends on how the object was created and how it is encrypted as described below:

  • Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that are an MD5 digest of their object data.

  • Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5 digest of their object data.

  • If an object is created by either the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest, regardless of the method of encryption. If an object is larger than 16 MB, the Amazon Web Services Management Console will upload or copy that object as a Multipart Upload, and therefore the ETag will not be an MD5 digest.

Directory buckets - MD5 is not supported by directory buckets.

", "ObjectVersion$ETag": "

The entity tag is an MD5 hash of that version of the object.

", "Part$ETag": "

Entity tag returned when the part was uploaded.

", - "PutObjectOutput$ETag": "

Entity tag for the uploaded object.

", + "PutObjectOutput$ETag": "

Entity tag for the uploaded object.

General purpose buckets - To ensure that data is not corrupted traversing the network, for objects where the ETag is the MD5 digest of the object, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5 value.

Directory buckets - The ETag for the object in a directory bucket isn't the MD5 digest of the object.

", "UploadPartOutput$ETag": "

Entity tag for the uploaded object.

", "WriteGetObjectResponseRequest$ETag": "

An opaque identifier assigned by a web server to a specific version of a resource found at a URL.

" } @@ -1449,11 +1506,11 @@ "Expiration": { "base": null, "refs": { - "CompleteMultipartUploadOutput$Expiration": "

If the object expiration is configured, this will contain the expiration date (expiry-date) and rule ID (rule-id). The value of rule-id is URL-encoded.

", - "CopyObjectOutput$Expiration": "

If the object expiration is configured, the response includes this header.

", - "GetObjectOutput$Expiration": "

If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

", - "HeadObjectOutput$Expiration": "

If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

", - "PutObjectOutput$Expiration": "

If the expiration is configured for the object (see PutBucketLifecycleConfiguration), the response includes this header. It includes the expiry-date and rule-id key-value pairs that provide information about object expiration. The value of the rule-id is URL-encoded.

", + "CompleteMultipartUploadOutput$Expiration": "

If the object expiration is configured, this will contain the expiration date (expiry-date) and rule ID (rule-id). The value of rule-id is URL-encoded.

This functionality is not supported for directory buckets.

", + "CopyObjectOutput$Expiration": "

If the object expiration is configured, the response includes this header.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$Expiration": "

If the object expiration is configured (see PutBucketLifecycleConfiguration ), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$Expiration": "

If the object expiration is configured (see PutBucketLifecycleConfiguration ), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

This functionality is not supported for directory buckets.

", + "PutObjectOutput$Expiration": "

If the expiration is configured for the object (see PutBucketLifecycleConfiguration) in the Amazon S3 User Guide, the response includes this header. It includes the expiry-date and rule-id key-value pairs that provide information about object expiration. The value of the rule-id is URL-encoded.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$Expiration": "

If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key-value pairs that provide the object expiration information. The value of the rule-id is URL-encoded.

" } }, @@ -1510,7 +1567,7 @@ "FetchOwner": { "base": null, "refs": { - "ListObjectsV2Request$FetchOwner": "

The owner field is not present in ListObjectsV2 by default. If you want to return the owner field with each key in the result, then set the FetchOwner field to true.

" + "ListObjectsV2Request$FetchOwner": "

The owner field is not present in ListObjectsV2 by default. If you want to return the owner field with each key in the result, then set the FetchOwner field to true.

Directory buckets - For directory buckets, the bucket owner is returned as the object owner for all objects.

" } }, "FieldDelimiter": { @@ -1872,40 +1929,40 @@ "GrantFullControl": { "base": null, "refs": { - "CopyObjectRequest$GrantFullControl": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

This action is not supported by Amazon S3 on Outposts.

", - "CreateBucketRequest$GrantFullControl": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

", - "CreateMultipartUploadRequest$GrantFullControl": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

This action is not supported by Amazon S3 on Outposts.

", + "CopyObjectRequest$GrantFullControl": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", + "CreateBucketRequest$GrantFullControl": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$GrantFullControl": "

Specify access permissions explicitly to give the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

By default, all objects are private. Only the owner has full access control. When uploading an object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview in the Amazon S3 User Guide.

You specify each grantee as a type=value pair, where the type is one of the following:

  • id – if the value specified is the canonical user ID of an Amazon Web Services account

  • uri – if you are granting permissions to a predefined group

  • emailAddress – if the value specified is the email address of an Amazon Web Services account

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

x-amz-grant-read: id=\"11112222333\", id=\"444455556666\"

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", "PutBucketAclRequest$GrantFullControl": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

", - "PutObjectAclRequest$GrantFullControl": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

This action is not supported by Amazon S3 on Outposts.

", - "PutObjectRequest$GrantFullControl": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

This action is not supported by Amazon S3 on Outposts.

" + "PutObjectAclRequest$GrantFullControl": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

This functionality is not supported for Amazon S3 on Outposts.

", + "PutObjectRequest$GrantFullControl": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

" } }, "GrantRead": { "base": null, "refs": { - "CopyObjectRequest$GrantRead": "

Allows grantee to read the object data and its metadata.

This action is not supported by Amazon S3 on Outposts.

", - "CreateBucketRequest$GrantRead": "

Allows grantee to list the objects in the bucket.

", - "CreateMultipartUploadRequest$GrantRead": "

Allows grantee to read the object data and its metadata.

This action is not supported by Amazon S3 on Outposts.

", + "CopyObjectRequest$GrantRead": "

Allows grantee to read the object data and its metadata.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", + "CreateBucketRequest$GrantRead": "

Allows grantee to list the objects in the bucket.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$GrantRead": "

Specify access permissions explicitly to allow grantee to read the object data and its metadata.

By default, all objects are private. Only the owner has full access control. When uploading an object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview in the Amazon S3 User Guide.

You specify each grantee as a type=value pair, where the type is one of the following:

  • id – if the value specified is the canonical user ID of an Amazon Web Services account

  • uri – if you are granting permissions to a predefined group

  • emailAddress – if the value specified is the email address of an Amazon Web Services account

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

x-amz-grant-read: id=\"11112222333\", id=\"444455556666\"

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", "PutBucketAclRequest$GrantRead": "

Allows grantee to list the objects in the bucket.

", - "PutObjectAclRequest$GrantRead": "

Allows grantee to list the objects in the bucket.

This action is not supported by Amazon S3 on Outposts.

", - "PutObjectRequest$GrantRead": "

Allows grantee to read the object data and its metadata.

This action is not supported by Amazon S3 on Outposts.

" + "PutObjectAclRequest$GrantRead": "

Allows grantee to list the objects in the bucket.

This functionality is not supported for Amazon S3 on Outposts.

", + "PutObjectRequest$GrantRead": "

Allows grantee to read the object data and its metadata.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

" } }, "GrantReadACP": { "base": null, "refs": { - "CopyObjectRequest$GrantReadACP": "

Allows grantee to read the object ACL.

This action is not supported by Amazon S3 on Outposts.

", - "CreateBucketRequest$GrantReadACP": "

Allows grantee to read the bucket ACL.

", - "CreateMultipartUploadRequest$GrantReadACP": "

Allows grantee to read the object ACL.

This action is not supported by Amazon S3 on Outposts.

", + "CopyObjectRequest$GrantReadACP": "

Allows grantee to read the object ACL.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", + "CreateBucketRequest$GrantReadACP": "

Allows grantee to read the bucket ACL.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$GrantReadACP": "

Specify access permissions explicitly to allows grantee to read the object ACL.

By default, all objects are private. Only the owner has full access control. When uploading an object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview in the Amazon S3 User Guide.

You specify each grantee as a type=value pair, where the type is one of the following:

  • id – if the value specified is the canonical user ID of an Amazon Web Services account

  • uri – if you are granting permissions to a predefined group

  • emailAddress – if the value specified is the email address of an Amazon Web Services account

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

x-amz-grant-read: id=\"11112222333\", id=\"444455556666\"

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", "PutBucketAclRequest$GrantReadACP": "

Allows grantee to read the bucket ACL.

", - "PutObjectAclRequest$GrantReadACP": "

Allows grantee to read the bucket ACL.

This action is not supported by Amazon S3 on Outposts.

", - "PutObjectRequest$GrantReadACP": "

Allows grantee to read the object ACL.

This action is not supported by Amazon S3 on Outposts.

" + "PutObjectAclRequest$GrantReadACP": "

Allows grantee to read the bucket ACL.

This functionality is not supported for Amazon S3 on Outposts.

", + "PutObjectRequest$GrantReadACP": "

Allows grantee to read the object ACL.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

" } }, "GrantWrite": { "base": null, "refs": { - "CreateBucketRequest$GrantWrite": "

Allows grantee to create new objects in the bucket.

For the bucket and object owners of existing objects, also allows deletions and overwrites of those objects.

", + "CreateBucketRequest$GrantWrite": "

Allows grantee to create new objects in the bucket.

For the bucket and object owners of existing objects, also allows deletions and overwrites of those objects.

This functionality is not supported for directory buckets.

", "PutBucketAclRequest$GrantWrite": "

Allows grantee to create new objects in the bucket.

For the bucket and object owners of existing objects, also allows deletions and overwrites of those objects.

", "PutObjectAclRequest$GrantWrite": "

Allows grantee to create new objects in the bucket.

For the bucket and object owners of existing objects, also allows deletions and overwrites of those objects.

" } @@ -1913,12 +1970,12 @@ "GrantWriteACP": { "base": null, "refs": { - "CopyObjectRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable object.

This action is not supported by Amazon S3 on Outposts.

", - "CreateBucketRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable bucket.

", - "CreateMultipartUploadRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable object.

This action is not supported by Amazon S3 on Outposts.

", + "CopyObjectRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable object.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", + "CreateBucketRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable bucket.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$GrantWriteACP": "

Specify access permissions explicitly to allows grantee to allow grantee to write the ACL for the applicable object.

By default, all objects are private. Only the owner has full access control. When uploading an object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see Access Control List (ACL) Overview in the Amazon S3 User Guide.

You specify each grantee as a type=value pair, where the type is one of the following:

  • id – if the value specified is the canonical user ID of an Amazon Web Services account

  • uri – if you are granting permissions to a predefined group

  • emailAddress – if the value specified is the email address of an Amazon Web Services account

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    • US East (N. Virginia)

    • US West (N. California)

    • US West (Oregon)

    • Asia Pacific (Singapore)

    • Asia Pacific (Sydney)

    • Asia Pacific (Tokyo)

    • Europe (Ireland)

    • South America (São Paulo)

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

x-amz-grant-read: id=\"11112222333\", id=\"444455556666\"

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", "PutBucketAclRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable bucket.

", - "PutObjectAclRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable bucket.

This action is not supported by Amazon S3 on Outposts.

", - "PutObjectRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable object.

This action is not supported by Amazon S3 on Outposts.

" + "PutObjectAclRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable bucket.

This functionality is not supported for Amazon S3 on Outposts.

", + "PutObjectRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable object.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

" } }, "Grantee": { @@ -1937,6 +1994,11 @@ "S3Location$AccessControlList": "

A list of grants that control access to the staged results.

" } }, + "HeadBucketOutput": { + "base": null, + "refs": { + } + }, "HeadBucketRequest": { "base": null, "refs": { @@ -1976,7 +2038,7 @@ "refs": { "CORSRule$ID": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

", "Grantee$ID": "

The canonical user ID of the grantee.

", - "Initiator$ID": "

If the principal is an Amazon Web Services account, it provides the Canonical User ID. If the principal is an IAM User, it provides a user ARN value.

", + "Initiator$ID": "

If the principal is an Amazon Web Services account, it provides the Canonical User ID. If the principal is an IAM User, it provides a user ARN value.

Directory buckets - If the principal is an Amazon Web Services account, it provides the Amazon Web Services account ID. If the principal is an IAM User, it provides a user ARN value.

", "LifecycleRule$ID": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

", "Owner$ID": "

Container for the ID of the owner.

", "ReplicationRule$ID": "

A unique identifier for the rule. The maximum value is 255 characters.

", @@ -1986,29 +2048,29 @@ "IfMatch": { "base": null, "refs": { - "GetObjectRequest$IfMatch": "

Return the object only if its entity tag (ETag) is the same as the one specified; otherwise, return a 412 (precondition failed) error.

", - "HeadObjectRequest$IfMatch": "

Return the object only if its entity tag (ETag) is the same as the one specified; otherwise, return a 412 (precondition failed) error.

" + "GetObjectRequest$IfMatch": "

Return the object only if its entity tag (ETag) is the same as the one specified in this header; otherwise, return a 412 Precondition Failed error.

If both of the If-Match and If-Unmodified-Since headers are present in the request as follows: If-Match condition evaluates to true, and; If-Unmodified-Since condition evaluates to false; then, S3 returns 200 OK and the data requested.

For more information about conditional requests, see RFC 7232.

", + "HeadObjectRequest$IfMatch": "

Return the object only if its entity tag (ETag) is the same as the one specified; otherwise, return a 412 (precondition failed) error.

If both of the If-Match and If-Unmodified-Since headers are present in the request as follows:

  • If-Match condition evaluates to true, and;

  • If-Unmodified-Since condition evaluates to false;

Then Amazon S3 returns 200 OK and the data requested.

For more information about conditional requests, see RFC 7232.

" } }, "IfModifiedSince": { "base": null, "refs": { - "GetObjectRequest$IfModifiedSince": "

Return the object only if it has been modified since the specified time; otherwise, return a 304 (not modified) error.

", - "HeadObjectRequest$IfModifiedSince": "

Return the object only if it has been modified since the specified time; otherwise, return a 304 (not modified) error.

" + "GetObjectRequest$IfModifiedSince": "

Return the object only if it has been modified since the specified time; otherwise, return a 304 Not Modified error.

If both of the If-None-Match and If-Modified-Since headers are present in the request as follows: If-None-Match condition evaluates to false, and; If-Modified-Since condition evaluates to true; then, S3 returns 304 Not Modified status code.

For more information about conditional requests, see RFC 7232.

", + "HeadObjectRequest$IfModifiedSince": "

Return the object only if it has been modified since the specified time; otherwise, return a 304 (not modified) error.

If both of the If-None-Match and If-Modified-Since headers are present in the request as follows:

  • If-None-Match condition evaluates to false, and;

  • If-Modified-Since condition evaluates to true;

Then Amazon S3 returns the 304 Not Modified response code.

For more information about conditional requests, see RFC 7232.

" } }, "IfNoneMatch": { "base": null, "refs": { - "GetObjectRequest$IfNoneMatch": "

Return the object only if its entity tag (ETag) is different from the one specified; otherwise, return a 304 (not modified) error.

", - "HeadObjectRequest$IfNoneMatch": "

Return the object only if its entity tag (ETag) is different from the one specified; otherwise, return a 304 (not modified) error.

" + "GetObjectRequest$IfNoneMatch": "

Return the object only if its entity tag (ETag) is different from the one specified in this header; otherwise, return a 304 Not Modified error.

If both of the If-None-Match and If-Modified-Since headers are present in the request as follows: If-None-Match condition evaluates to false, and; If-Modified-Since condition evaluates to true; then, S3 returns 304 Not Modified HTTP status code.

For more information about conditional requests, see RFC 7232.

", + "HeadObjectRequest$IfNoneMatch": "

Return the object only if its entity tag (ETag) is different from the one specified; otherwise, return a 304 (not modified) error.

If both of the If-None-Match and If-Modified-Since headers are present in the request as follows:

  • If-None-Match condition evaluates to false, and;

  • If-Modified-Since condition evaluates to true;

Then Amazon S3 returns the 304 Not Modified response code.

For more information about conditional requests, see RFC 7232.

" } }, "IfUnmodifiedSince": { "base": null, "refs": { - "GetObjectRequest$IfUnmodifiedSince": "

Return the object only if it has not been modified since the specified time; otherwise, return a 412 (precondition failed) error.

", - "HeadObjectRequest$IfUnmodifiedSince": "

Return the object only if it has not been modified since the specified time; otherwise, return a 412 (precondition failed) error.

" + "GetObjectRequest$IfUnmodifiedSince": "

Return the object only if it has not been modified since the specified time; otherwise, return a 412 Precondition Failed error.

If both of the If-Match and If-Unmodified-Since headers are present in the request as follows: If-Match condition evaluates to true, and; If-Unmodified-Since condition evaluates to false; then, S3 returns 200 OK and the data requested.

For more information about conditional requests, see RFC 7232.

", + "HeadObjectRequest$IfUnmodifiedSince": "

Return the object only if it has not been modified since the specified time; otherwise, return a 412 (precondition failed) error.

If both of the If-Match and If-Unmodified-Since headers are present in the request as follows:

  • If-Match condition evaluates to true, and;

  • If-Unmodified-Since condition evaluates to false;

Then Amazon S3 returns 200 OK and the data requested.

For more information about conditional requests, see RFC 7232.

" } }, "IndexDocument": { @@ -2093,7 +2155,7 @@ } }, "InvalidObjectState": { - "base": "

Object is archived and inaccessible until restored.

", + "base": "

Object is archived and inaccessible until restored.

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a copy using RestoreObject. Otherwise, this operation returns an InvalidObjectState error. For information about restoring archived objects, see Restoring Archived Objects in the Amazon S3 User Guide.

", "refs": { } }, @@ -2254,7 +2316,7 @@ "base": null, "refs": { "ListMultipartUploadsOutput$KeyMarker": "

The key at or after which the listing began.

", - "ListMultipartUploadsRequest$KeyMarker": "

Together with upload-id-marker, this parameter specifies the multipart upload after which listing should begin.

If upload-id-marker is not specified, only the keys lexicographically greater than the specified key-marker will be included in the list.

If upload-id-marker is specified, any multipart uploads for a key equal to the key-marker might also be included, provided those multipart uploads have upload IDs lexicographically greater than the specified upload-id-marker.

", + "ListMultipartUploadsRequest$KeyMarker": "

Specifies the multipart upload after which listing should begin.

  • General purpose buckets - For general purpose buckets, key-marker is an object key. Together with upload-id-marker, this parameter specifies the multipart upload after which listing should begin.

    If upload-id-marker is not specified, only the keys lexicographically greater than the specified key-marker will be included in the list.

    If upload-id-marker is specified, any multipart uploads for a key equal to the key-marker might also be included, provided those multipart uploads have upload IDs lexicographically greater than the specified upload-id-marker.

  • Directory buckets - For directory buckets, key-marker is obfuscated and isn't a real object key. The upload-id-marker parameter isn't supported by directory buckets. To list the additional multipart uploads, you only need to set the value of key-marker to the NextKeyMarker value from the previous response.

    In the ListMultipartUploads response, the multipart uploads aren't sorted lexicographically based on the object keys.

", "ListObjectVersionsOutput$KeyMarker": "

Marks the last key returned in a truncated response.

", "ListObjectVersionsRequest$KeyMarker": "

Specifies the key to start with when listing objects in a bucket.

" } @@ -2288,12 +2350,12 @@ "refs": { "CopyObjectResult$LastModified": "

Creation date of the object.

", "CopyPartResult$LastModified": "

Date and time at which the object was uploaded.

", - "DeleteMarkerEntry$LastModified": "

Date and time the object was last modified.

", + "DeleteMarkerEntry$LastModified": "

Date and time when the object was last modified.

", "GetObjectAttributesOutput$LastModified": "

The creation date of the object.

", - "GetObjectOutput$LastModified": "

Creation date of the object.

", - "HeadObjectOutput$LastModified": "

Creation date of the object.

", + "GetObjectOutput$LastModified": "

Date and time when the object was last modified.

General purpose buckets - When you specify a versionId of the object in your request, if the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

", + "HeadObjectOutput$LastModified": "

Date and time when the object was last modified.

", "Object$LastModified": "

Creation date of the object.

", - "ObjectVersion$LastModified": "

Date and time the object was last modified.

", + "ObjectVersion$LastModified": "

Date and time when the object was last modified.

", "Part$LastModified": "

Date and time at which the part was uploaded.

", "WriteGetObjectResponseRequest$LastModified": "

The date and time that the object was last modified.

" } @@ -2381,6 +2443,16 @@ "refs": { } }, + "ListDirectoryBucketsOutput": { + "base": null, + "refs": { + } + }, + "ListDirectoryBucketsRequest": { + "base": null, + "refs": { + } + }, "ListMultipartUploadsOutput": { "base": null, "refs": { @@ -2438,12 +2510,31 @@ "CreateBucketOutput$Location": "

A forward slash followed by the name of the bucket.

" } }, + "LocationInfo": { + "base": "

Specifies the location where the bucket will be created.

For directory buckets, the location type is Availability Zone. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

This functionality is only supported by directory buckets.

", + "refs": { + "CreateBucketConfiguration$Location": "

Specifies the location where the bucket will be created.

For directory buckets, the location type is Availability Zone.

This functionality is only supported by directory buckets.

" + } + }, + "LocationNameAsString": { + "base": null, + "refs": { + "LocationInfo$Name": "

The name of the location where the bucket will be created.

For directory buckets, the AZ ID of the Availability Zone where the bucket will be created. An example AZ ID value is usw2-az2.

" + } + }, "LocationPrefix": { "base": null, "refs": { "S3Location$Prefix": "

The prefix that is prepended to the restore results for this request.

" } }, + "LocationType": { + "base": null, + "refs": { + "HeadBucketOutput$BucketLocationType": "

The type of location where the bucket is created.

This functionality is only supported by directory buckets.

", + "LocationInfo$Type": "

The type of location where the bucket will be created.

" + } + }, "LoggingEnabled": { "base": "

Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a bucket. For more information, see PUT Bucket logging in the Amazon S3 API Reference.

", "refs": { @@ -2454,8 +2545,8 @@ "MFA": { "base": null, "refs": { - "DeleteObjectRequest$MFA": "

The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device. Required to permanently delete a versioned object if versioning is configured with MFA delete enabled.

", - "DeleteObjectsRequest$MFA": "

The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device. Required to permanently delete a versioned object if versioning is configured with MFA delete enabled.

", + "DeleteObjectRequest$MFA": "

The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device. Required to permanently delete a versioned object if versioning is configured with MFA delete enabled.

This functionality is not supported for directory buckets.

", + "DeleteObjectsRequest$MFA": "

The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device. Required to permanently delete a versioned object if versioning is configured with MFA delete enabled.

When performing the DeleteObjects operation on an MFA delete enabled bucket, which attempts to delete the specified versioned objects, you must include an MFA token. If you don't provide an MFA token, the entire request will fail, even if there are non-versioned objects that you are trying to delete. If you provide an invalid token, whether there are versioned object keys in the request or not, the entire Multi-Object Delete request will fail. For information about MFA Delete, see MFA Delete in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", "PutBucketVersioningRequest$MFA": "

The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device.

" } }, @@ -2484,6 +2575,12 @@ "CORSRule$MaxAgeSeconds": "

The time in seconds that your browser is to cache the preflight response for the specified resource.

" } }, + "MaxDirectoryBuckets": { + "base": null, + "refs": { + "ListDirectoryBucketsRequest$MaxDirectoryBuckets": "

Maximum number of buckets to be returned in response. When the number is more than the count of buckets that are owned by an Amazon Web Services account, return all the buckets in response.

" + } + }, "MaxKeys": { "base": null, "refs": { @@ -2531,7 +2628,7 @@ "MetadataDirective": { "base": null, "refs": { - "CopyObjectRequest$MetadataDirective": "

Specifies whether the metadata is copied from the source object or replaced with metadata provided in the request.

" + "CopyObjectRequest$MetadataDirective": "

Specifies whether the metadata is copied from the source object or replaced with metadata that's provided in the request. When copying an object, you can preserve all metadata (the default) or specify new metadata. If this header isn’t specified, COPY is the default behavior.

General purpose bucket - For general purpose buckets, when you grant permissions, you can use the s3:x-amz-metadata-directive condition key to enforce certain metadata behavior when objects are uploaded. For more information, see Amazon S3 condition key examples in the Amazon S3 User Guide.

x-amz-website-redirect-location is unique to each object and is not copied when using the x-amz-metadata-directive header. To copy the value, you must specify x-amz-website-redirect-location in the request header.

" } }, "MetadataEntry": { @@ -2610,8 +2707,8 @@ "MissingMeta": { "base": null, "refs": { - "GetObjectOutput$MissingMeta": "

This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

", - "HeadObjectOutput$MissingMeta": "

This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

", + "GetObjectOutput$MissingMeta": "

This is set to the number of metadata entries not returned in the headers that are prefixed with x-amz-meta-. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$MissingMeta": "

This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$MissingMeta": "

Set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

" } }, @@ -2673,7 +2770,7 @@ "NextUploadIdMarker": { "base": null, "refs": { - "ListMultipartUploadsOutput$NextUploadIdMarker": "

When a list is truncated, this element specifies the value that should be used for the upload-id-marker request parameter in a subsequent request.

" + "ListMultipartUploadsOutput$NextUploadIdMarker": "

When a list is truncated, this element specifies the value that should be used for the upload-id-marker request parameter in a subsequent request.

This functionality is not supported for directory buckets.

" } }, "NextVersionIdMarker": { @@ -2774,10 +2871,10 @@ "ObjectCannedACL": { "base": null, "refs": { - "CopyObjectRequest$ACL": "

The canned ACL to apply to the object.

This action is not supported by Amazon S3 on Outposts.

", - "CreateMultipartUploadRequest$ACL": "

The canned ACL to apply to the object.

This action is not supported by Amazon S3 on Outposts.

", + "CopyObjectRequest$ACL": "

The canned access control list (ACL) to apply to the object.

When you copy an object, the ACL metadata is not preserved and is set to private by default. Only the owner has full access control. To override the default ACL setting, specify a new ACL when you generate a copy request. For more information, see Using ACLs.

If the destination bucket that you're copying objects to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting only accept PUT requests that don't specify an ACL or PUT requests that specify bucket owner full control ACLs, such as the bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed in the XML format. For more information, see Controlling ownership of objects and disabling ACLs in the Amazon S3 User Guide.

  • If your destination bucket uses the bucket owner enforced setting for Object Ownership, all objects written to the bucket by any account will be owned by the bucket owner.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", + "CreateMultipartUploadRequest$ACL": "

The canned ACL to apply to the object. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. For more information, see Canned ACL in the Amazon S3 User Guide.

By default, all objects are private. Only the owner has full access control. When uploading an object, you can grant access permissions to individual Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are then added to the access control list (ACL) on the new object. For more information, see Using ACLs. One way to grant the permissions using the request headers is to specify a canned ACL with the x-amz-acl request header.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", "PutObjectAclRequest$ACL": "

The canned ACL to apply to the object. For more information, see Canned ACL.

", - "PutObjectRequest$ACL": "

The canned ACL to apply to the object. For more information, see Canned ACL.

This action is not supported by Amazon S3 on Outposts.

", + "PutObjectRequest$ACL": "

The canned ACL to apply to the object. For more information, see Canned ACL in the Amazon S3 User Guide.

When adding a new object, you can use headers to grant ACL-based permissions to individual Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are then added to the ACL on the object. By default, all objects are private. Only the owner has full access control. For more information, see Access Control List (ACL) Overview and Managing ACLs Using the REST API in the Amazon S3 User Guide.

If the bucket that you're uploading objects to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting only accept PUT requests that don't specify an ACL or PUT requests that specify bucket owner full control ACLs, such as the bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed in the XML format. PUT requests that contain other ACLs (for example, custom grants to certain Amazon Web Services accounts) fail and return a 400 error with the error code AccessControlListNotSupported. For more information, see Controlling ownership of objects and disabling ACLs in the Amazon S3 User Guide.

  • This functionality is not supported for directory buckets.

  • This functionality is not supported for Amazon S3 on Outposts.

", "S3Location$CannedACL": "

The canned ACL to apply to the restore results.

" } }, @@ -2790,7 +2887,7 @@ "ObjectIdentifierList": { "base": null, "refs": { - "Delete$Objects": "

The object to delete.

" + "Delete$Objects": "

The object to delete.

Directory buckets - For directory buckets, an object that's composed entirely of whitespace characters is not supported by the DeleteObjects API operation. The request will receive a 400 Bad Request error and none of the objects in the request will be deleted.

" } }, "ObjectKey": { @@ -2822,7 +2919,7 @@ "Object$Key": "

The name that you assign to an object. You use the object key to retrieve the object.

", "ObjectIdentifier$Key": "

Key name of the object.

Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.

", "ObjectVersion$Key": "

The object key.

", - "PutObjectAclRequest$Key": "

Key for which the PUT action was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "PutObjectAclRequest$Key": "

Key for which the PUT action was initiated.

", "PutObjectLegalHoldRequest$Key": "

The key name for the object that you want to place a legal hold on.

", "PutObjectRequest$Key": "

Object key for which the PUT action was initiated.

", "PutObjectRetentionRequest$Key": "

The key name for the object that you want to apply this Object Retention configuration to.

", @@ -2857,7 +2954,7 @@ "ObjectLockEnabledForBucket": { "base": null, "refs": { - "CreateBucketRequest$ObjectLockEnabledForBucket": "

Specifies whether you want S3 Object Lock to be enabled for the new bucket.

" + "CreateBucketRequest$ObjectLockEnabledForBucket": "

Specifies whether you want S3 Object Lock to be enabled for the new bucket.

This functionality is not supported for directory buckets.

" } }, "ObjectLockLegalHold": { @@ -2870,34 +2967,34 @@ "ObjectLockLegalHoldStatus": { "base": null, "refs": { - "CopyObjectRequest$ObjectLockLegalHoldStatus": "

Specifies whether you want to apply a legal hold to the copied object.

", - "CreateMultipartUploadRequest$ObjectLockLegalHoldStatus": "

Specifies whether you want to apply a legal hold to the uploaded object.

", - "GetObjectOutput$ObjectLockLegalHoldStatus": "

Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object's legal hold status.

", - "HeadObjectOutput$ObjectLockLegalHoldStatus": "

Specifies whether a legal hold is in effect for this object. This header is only returned if the requester has the s3:GetObjectLegalHold permission. This header is not returned if the specified version of this object has never had a legal hold applied. For more information about S3 Object Lock, see Object Lock.

", + "CopyObjectRequest$ObjectLockLegalHoldStatus": "

Specifies whether you want to apply a legal hold to the object copy.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$ObjectLockLegalHoldStatus": "

Specifies whether you want to apply a legal hold to the uploaded object.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$ObjectLockLegalHoldStatus": "

Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object's legal hold status.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$ObjectLockLegalHoldStatus": "

Specifies whether a legal hold is in effect for this object. This header is only returned if the requester has the s3:GetObjectLegalHold permission. This header is not returned if the specified version of this object has never had a legal hold applied. For more information about S3 Object Lock, see Object Lock.

This functionality is not supported for directory buckets.

", "ObjectLockLegalHold$Status": "

Indicates whether the specified object has a legal hold in place.

", - "PutObjectRequest$ObjectLockLegalHoldStatus": "

Specifies whether a legal hold will be applied to this object. For more information about S3 Object Lock, see Object Lock.

", + "PutObjectRequest$ObjectLockLegalHoldStatus": "

Specifies whether a legal hold will be applied to this object. For more information about S3 Object Lock, see Object Lock in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$ObjectLockLegalHoldStatus": "

Indicates whether an object stored in Amazon S3 has an active legal hold.

" } }, "ObjectLockMode": { "base": null, "refs": { - "CopyObjectRequest$ObjectLockMode": "

The Object Lock mode that you want to apply to the copied object.

", - "CreateMultipartUploadRequest$ObjectLockMode": "

Specifies the Object Lock mode that you want to apply to the uploaded object.

", - "GetObjectOutput$ObjectLockMode": "

The Object Lock mode currently in place for this object.

", - "HeadObjectOutput$ObjectLockMode": "

The Object Lock mode, if any, that's in effect for this object. This header is only returned if the requester has the s3:GetObjectRetention permission. For more information about S3 Object Lock, see Object Lock.

", - "PutObjectRequest$ObjectLockMode": "

The Object Lock mode that you want to apply to this object.

", + "CopyObjectRequest$ObjectLockMode": "

The Object Lock mode that you want to apply to the object copy.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$ObjectLockMode": "

Specifies the Object Lock mode that you want to apply to the uploaded object.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$ObjectLockMode": "

The Object Lock mode that's currently in place for this object.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$ObjectLockMode": "

The Object Lock mode, if any, that's in effect for this object. This header is only returned if the requester has the s3:GetObjectRetention permission. For more information about S3 Object Lock, see Object Lock.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$ObjectLockMode": "

The Object Lock mode that you want to apply to this object.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$ObjectLockMode": "

Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3 Object Lock, see Object Lock.

" } }, "ObjectLockRetainUntilDate": { "base": null, "refs": { - "CopyObjectRequest$ObjectLockRetainUntilDate": "

The date and time when you want the copied object's Object Lock to expire.

", - "CreateMultipartUploadRequest$ObjectLockRetainUntilDate": "

Specifies the date and time when you want the Object Lock to expire.

", - "GetObjectOutput$ObjectLockRetainUntilDate": "

The date and time when this object's Object Lock will expire.

", - "HeadObjectOutput$ObjectLockRetainUntilDate": "

The date and time when the Object Lock retention period expires. This header is only returned if the requester has the s3:GetObjectRetention permission.

", - "PutObjectRequest$ObjectLockRetainUntilDate": "

The date and time when you want this object's Object Lock to expire. Must be formatted as a timestamp parameter.

", + "CopyObjectRequest$ObjectLockRetainUntilDate": "

The date and time when you want the Object Lock of the object copy to expire.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$ObjectLockRetainUntilDate": "

Specifies the date and time when you want the Object Lock to expire.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$ObjectLockRetainUntilDate": "

The date and time when this object's Object Lock will expire.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$ObjectLockRetainUntilDate": "

The date and time when the Object Lock retention period expires. This header is only returned if the requester has the s3:GetObjectRetention permission.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$ObjectLockRetainUntilDate": "

The date and time when you want this object's Object Lock to expire. Must be formatted as a timestamp parameter.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$ObjectLockRetainUntilDate": "

The date and time when Object Lock is configured to expire.

" } }, @@ -2934,7 +3031,7 @@ } }, "ObjectOwnership": { - "base": "

The container element for object ownership for a bucket's ownership controls.

BucketOwnerPreferred - Objects uploaded to the bucket change ownership to the bucket owner if the objects are uploaded with the bucket-owner-full-control canned ACL.

ObjectWriter - The uploading account will own the object if the object is uploaded with the bucket-owner-full-control canned ACL.

BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer affect permissions. The bucket owner automatically owns and has full control over every object in the bucket. The bucket only accepts PUT requests that don't specify an ACL or bucket owner full control ACLs, such as the bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed in the XML format.

", + "base": "

The container element for object ownership for a bucket's ownership controls.

BucketOwnerPreferred - Objects uploaded to the bucket change ownership to the bucket owner if the objects are uploaded with the bucket-owner-full-control canned ACL.

ObjectWriter - The uploading account will own the object if the object is uploaded with the bucket-owner-full-control canned ACL.

BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer affect permissions. The bucket owner automatically owns and has full control over every object in the bucket. The bucket only accepts PUT requests that don't specify an ACL or specify bucket owner full control ACLs (such as the predefined bucket-owner-full-control canned ACL or a custom ACL in XML format that grants the same permissions).

By default, ObjectOwnership is set to BucketOwnerEnforced and ACLs are disabled. We recommend keeping ACLs disabled, except in uncommon use cases where you must control access for each object individually. For more information about S3 Object Ownership, see Controlling ownership of objects and disabling ACLs for your bucket in the Amazon S3 User Guide.

This functionality is not supported for directory buckets. Directory buckets use the bucket owner enforced setting for S3 Object Ownership.

", "refs": { "CreateBucketRequest$ObjectOwnership": null, "OwnershipControlsRule$ObjectOwnership": null @@ -2969,7 +3066,7 @@ "ObjectStorageClass": { "base": null, "refs": { - "Object$StorageClass": "

The class of storage used to store the object.

" + "Object$StorageClass": "

The class of storage used to store the object.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

" } }, "ObjectVersion": { @@ -2981,31 +3078,31 @@ "ObjectVersionId": { "base": null, "refs": { - "CompleteMultipartUploadOutput$VersionId": "

Version ID of the newly created object, in case the bucket has versioning turned on.

", - "CopyObjectOutput$VersionId": "

Version ID of the newly created copy.

", + "CompleteMultipartUploadOutput$VersionId": "

Version ID of the newly created object, in case the bucket has versioning turned on.

This functionality is not supported for directory buckets.

", + "CopyObjectOutput$VersionId": "

Version ID of the newly created copy.

This functionality is not supported for directory buckets.

", "DeleteMarkerEntry$VersionId": "

Version ID of an object.

", - "DeleteObjectOutput$VersionId": "

Returns the version ID of the delete marker created as a result of the DELETE operation.

", - "DeleteObjectRequest$VersionId": "

VersionId used to reference a specific version of the object.

", + "DeleteObjectOutput$VersionId": "

Returns the version ID of the delete marker created as a result of the DELETE operation.

This functionality is not supported for directory buckets.

", + "DeleteObjectRequest$VersionId": "

Version ID used to reference a specific version of the object.

For directory buckets in this API operation, only the null value of the version ID is supported.

", "DeleteObjectTaggingOutput$VersionId": "

The versionId of the object the tag-set was removed from.

", "DeleteObjectTaggingRequest$VersionId": "

The versionId of the object that the tag-set will be removed from.

", - "DeletedObject$VersionId": "

The version ID of the deleted object.

", - "Error$VersionId": "

The version ID of the error.

", - "GetObjectAclRequest$VersionId": "

VersionId used to reference a specific version of the object.

", - "GetObjectAttributesOutput$VersionId": "

The version ID of the object.

", - "GetObjectAttributesRequest$VersionId": "

The version ID used to reference a specific version of the object.

", + "DeletedObject$VersionId": "

The version ID of the deleted object.

This functionality is not supported for directory buckets.

", + "Error$VersionId": "

The version ID of the error.

This functionality is not supported for directory buckets.

", + "GetObjectAclRequest$VersionId": "

Version ID used to reference a specific version of the object.

This functionality is not supported for directory buckets.

", + "GetObjectAttributesOutput$VersionId": "

The version ID of the object.

This functionality is not supported for directory buckets.

", + "GetObjectAttributesRequest$VersionId": "

The version ID used to reference a specific version of the object.

S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the versionId query parameter in the request.

", "GetObjectLegalHoldRequest$VersionId": "

The version ID of the object whose legal hold status you want to retrieve.

", - "GetObjectOutput$VersionId": "

Version of the object.

", - "GetObjectRequest$VersionId": "

VersionId used to reference a specific version of the object.

", + "GetObjectOutput$VersionId": "

Version ID of the object.

This functionality is not supported for directory buckets.

", + "GetObjectRequest$VersionId": "

Version ID used to reference a specific version of the object.

By default, the GetObject operation returns the current version of an object. To return a different version, use the versionId subresource.

  • If you include a versionId in your request header, you must have the s3:GetObjectVersion permission to access a specific version of an object. The s3:GetObject permission is not required in this scenario.

  • If you request the current version of an object without a specific versionId in the request header, only the s3:GetObject permission is required. The s3:GetObjectVersion permission is not required in this scenario.

  • Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the versionId query parameter in the request.

For more information about versioning, see PutBucketVersioning.

", "GetObjectRetentionRequest$VersionId": "

The version ID for the object whose retention settings you want to retrieve.

", "GetObjectTaggingOutput$VersionId": "

The versionId of the object for which you got the tagging information.

", "GetObjectTaggingRequest$VersionId": "

The versionId of the object for which to get the tagging information.

", - "HeadObjectOutput$VersionId": "

Version of the object.

", - "HeadObjectRequest$VersionId": "

VersionId used to reference a specific version of the object.

", - "ObjectIdentifier$VersionId": "

VersionId for the specific version of the object to delete.

", + "HeadObjectOutput$VersionId": "

Version ID of the object.

This functionality is not supported for directory buckets.

", + "HeadObjectRequest$VersionId": "

Version ID used to reference a specific version of the object.

For directory buckets in this API operation, only the null value of the version ID is supported.

", + "ObjectIdentifier$VersionId": "

Version ID for the specific version of the object to delete.

This functionality is not supported for directory buckets.

", "ObjectVersion$VersionId": "

Version ID of an object.

", - "PutObjectAclRequest$VersionId": "

VersionId used to reference a specific version of the object.

", + "PutObjectAclRequest$VersionId": "

Version ID used to reference a specific version of the object.

This functionality is not supported for directory buckets.

", "PutObjectLegalHoldRequest$VersionId": "

The version ID of the object that you want to place a legal hold on.

", - "PutObjectOutput$VersionId": "

Version of the object.

", + "PutObjectOutput$VersionId": "

Version ID of the object.

If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID for the object being stored. Amazon S3 returns this ID in the response. When you enable versioning for a bucket, if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all of the objects. For more information about versioning, see Adding Objects to Versioning-Enabled Buckets in the Amazon S3 User Guide. For information about returning the versioning state of a bucket, see GetBucketVersioning.

This functionality is not supported for directory buckets.

", "PutObjectRetentionRequest$VersionId": "

The version ID for the object that you want to apply this Object Retention configuration to.

", "PutObjectTaggingOutput$VersionId": "

The versionId of the object the tag-set was added to.

", "PutObjectTaggingRequest$VersionId": "

The versionId of the object that the tag-set will be added to.

", @@ -3036,7 +3133,7 @@ "refs": { "ListObjectVersionsRequest$OptionalObjectAttributes": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.

", "ListObjectsRequest$OptionalObjectAttributes": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.

", - "ListObjectsV2Request$OptionalObjectAttributes": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.

" + "ListObjectsV2Request$OptionalObjectAttributes": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.

This functionality is not supported for directory buckets.

" } }, "OutputLocation": { @@ -3060,9 +3157,9 @@ "GetBucketAclOutput$Owner": "

Container for the bucket owner's display name and ID.

", "GetObjectAclOutput$Owner": "

Container for the bucket owner's display name and ID.

", "ListBucketsOutput$Owner": "

The owner of the buckets listed.

", - "ListPartsOutput$Owner": "

Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.

", - "MultipartUpload$Owner": "

Specifies the owner of the object that is part of the multipart upload.

", - "Object$Owner": "

The owner of the object

", + "ListPartsOutput$Owner": "

Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.

Directory buckets - The bucket owner is returned as the object owner for all the parts.

", + "MultipartUpload$Owner": "

Specifies the owner of the object that is part of the multipart upload.

Directory buckets - The bucket owner is returned as the object owner for all the objects.

", + "Object$Owner": "

The owner of the object

Directory buckets - The bucket owner is returned as the object owner.

", "ObjectVersion$Owner": "

Specifies the owner of the object.

" } }, @@ -3106,7 +3203,7 @@ "PartNumber": { "base": null, "refs": { - "CompletedPart$PartNumber": "

Part number that identifies the part. This is a positive integer between 1 and 10,000.

", + "CompletedPart$PartNumber": "

Part number that identifies the part. This is a positive integer between 1 and 10,000.

  • General purpose buckets - In CompleteMultipartUpload, when a additional checksum (including x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-sha1, or x-amz-checksum-sha256) is applied to each part, the PartNumber must start at 1 and the part numbers must be consecutive. Otherwise, Amazon S3 generates an HTTP 400 Bad Request status code and an InvalidPartOrder error code.

  • Directory buckets - In CompleteMultipartUpload, the PartNumber must start at 1 and the part numbers must be consecutive.

", "GetObjectRequest$PartNumber": "

Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively performs a 'ranged' GET request for the part specified. Useful for downloading just a part of an object.

", "HeadObjectRequest$PartNumber": "

Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively performs a 'ranged' HEAD request for the part specified. Useful querying about the size of the part and the number of parts in this object.

", "ObjectPart$PartNumber": "

The part number identifying the part. This value is a positive integer between 1 and 10,000.

", @@ -3124,10 +3221,22 @@ "ListPartsRequest$PartNumberMarker": "

Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.

" } }, + "PartitionDateSource": { + "base": null, + "refs": { + "PartitionedPrefix$PartitionDateSource": "

Specifies the partition date source for the partitioned prefix. PartitionDateSource can be EventTime or DeliveryTime.

" + } + }, + "PartitionedPrefix": { + "base": "

Amazon S3 keys for log objects are partitioned in the following format:

[DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

PartitionedPrefix defaults to EventTime delivery when server access logs are delivered.

", + "refs": { + "TargetObjectKeyFormat$PartitionedPrefix": "

Partitioned S3 key for log objects.

" + } + }, "Parts": { "base": null, "refs": { - "ListPartsOutput$Parts": "

Container for elements related to a particular part. A response can contain zero or more Part elements.

" + "ListPartsOutput$Parts": "

Container for elements related to a particular part. A response can contain zero or more Part elements.

" } }, "PartsCount": { @@ -3142,7 +3251,7 @@ "PartsList": { "base": null, "refs": { - "GetObjectAttributesParts$Parts": "

A container for elements related to a particular part. A response can contain zero or more Parts elements.

" + "GetObjectAttributesParts$Parts": "

A container for elements related to a particular part. A response can contain zero or more Parts elements.

  • General purpose buckets - For GetObjectAttributes, if a additional checksum (including x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-sha1, or x-amz-checksum-sha256) isn't applied to the object specified in the request, the response doesn't return Part.

  • Directory buckets - For GetObjectAttributes, no matter whether a additional checksum is applied to the object specified in the request, the response returns Part.

" } }, "Payer": { @@ -3162,7 +3271,7 @@ "base": null, "refs": { "GetBucketPolicyOutput$Policy": "

The bucket policy as a JSON document.

", - "PutBucketPolicyRequest$Policy": "

The bucket policy as a JSON document.

" + "PutBucketPolicyRequest$Policy": "

The bucket policy as a JSON document.

For directory buckets, the only IAM action supported in the bucket policy is s3express:CreateSession.

" } }, "PolicyStatus": { @@ -3185,14 +3294,14 @@ "LifecycleRule$Prefix": "

Prefix identifying one or more objects to which the rule applies. This is no longer used; use Filter instead.

Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.

", "LifecycleRuleAndOperator$Prefix": "

Prefix identifying one or more objects to which the rule applies.

", "LifecycleRuleFilter$Prefix": "

Prefix identifying one or more objects to which the rule applies.

Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.

", - "ListMultipartUploadsOutput$Prefix": "

When a prefix is provided in the request, this field contains the specified prefix. The result contains only keys starting with the specified prefix.

", - "ListMultipartUploadsRequest$Prefix": "

Lists in-progress uploads only for those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different grouping of keys. (You can think of using prefix to make groups in the same way that you'd use a folder in a file system.)

", + "ListMultipartUploadsOutput$Prefix": "

When a prefix is provided in the request, this field contains the specified prefix. The result contains only keys starting with the specified prefix.

Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

", + "ListMultipartUploadsRequest$Prefix": "

Lists in-progress uploads only for those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different grouping of keys. (You can think of using prefix to make groups in the same way that you'd use a folder in a file system.)

Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

", "ListObjectVersionsOutput$Prefix": "

Selects objects that start with the value supplied by this parameter.

", "ListObjectVersionsRequest$Prefix": "

Use this parameter to select only those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different groupings of keys. (You can think of using prefix to make groups in the same way that you'd use a folder in a file system.) You can use prefix with delimiter to roll up numerous objects into a single result under CommonPrefixes.

", "ListObjectsOutput$Prefix": "

Keys that begin with the indicated prefix.

", "ListObjectsRequest$Prefix": "

Limits the response to keys that begin with the specified prefix.

", - "ListObjectsV2Output$Prefix": "

Keys that begin with the indicated prefix.

", - "ListObjectsV2Request$Prefix": "

Limits the response to keys that begin with the specified prefix.

", + "ListObjectsV2Output$Prefix": "

Keys that begin with the indicated prefix.

Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

", + "ListObjectsV2Request$Prefix": "

Limits the response to keys that begin with the specified prefix.

Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

", "MetricsAndOperator$Prefix": "

The prefix used when evaluating an AND predicate.

", "MetricsFilter$Prefix": "

The prefix used when evaluating a metrics filter.

", "ReplicationRule$Prefix": "

An object key name prefix that identifies the object or objects to which the rule applies. The maximum prefix length is 1,024 characters. To include all objects in a bucket, specify an empty string.

Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.

", @@ -3426,7 +3535,7 @@ "Quiet": { "base": null, "refs": { - "Delete$Quiet": "

Element to enable quiet mode for the request. When you add this element, you must set its value to true.

" + "Delete$Quiet": "

Element to enable quiet mode for the request. When you add this element, you must set its value to true.

" } }, "QuoteCharacter": { @@ -3452,7 +3561,7 @@ "Range": { "base": null, "refs": { - "GetObjectRequest$Range": "

Downloads the specified range bytes of an object. For more information about the HTTP Range header, see https://www.rfc-editor.org/rfc/rfc9110.html#name-range.

Amazon S3 doesn't support retrieving multiple ranges of data per GET request.

", + "GetObjectRequest$Range": "

Downloads the specified byte range of an object. For more information about the HTTP Range header, see https://www.rfc-editor.org/rfc/rfc9110.html#name-range.

Amazon S3 doesn't support retrieving multiple ranges of data per GET request.

", "HeadObjectRequest$Range": "

HeadObject returns only the metadata for an object. If the Range is satisfiable, only the ContentLength is affected in the response. If the Range is not satisfiable, S3 returns a 416 - Requested Range Not Satisfiable error.

" } }, @@ -3483,6 +3592,12 @@ "WebsiteConfiguration$RedirectAllRequestsTo": "

The redirect behavior for every request to this bucket's website endpoint.

If you specify this property, you can't specify any other property.

" } }, + "Region": { + "base": null, + "refs": { + "HeadBucketOutput$BucketRegion": "

The Region that the bucket is located.

This functionality is not supported for directory buckets.

" + } + }, "ReplaceKeyPrefixWith": { "base": null, "refs": { @@ -3553,8 +3668,8 @@ "ReplicationStatus": { "base": null, "refs": { - "GetObjectOutput$ReplicationStatus": "

Amazon S3 can return this if your request involves a bucket that is either a source or destination in a replication rule.

", - "HeadObjectOutput$ReplicationStatus": "

Amazon S3 can return this header if your request involves a bucket that is either a source or a destination in a replication rule.

In replication, you have a source bucket on which you configure replication and destination bucket or buckets where Amazon S3 stores object replicas. When you request an object (GetObject) or object metadata (HeadObject) from these buckets, Amazon S3 will return the x-amz-replication-status header in the response as follows:

  • If requesting an object from the source bucket, Amazon S3 will return the x-amz-replication-status header if the object in your request is eligible for replication.

    For example, suppose that in your replication configuration, you specify object prefix TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs. Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf, are eligible for replication. For any object request with this key name prefix, Amazon S3 will return the x-amz-replication-status header with value PENDING, COMPLETED or FAILED indicating object replication status.

  • If requesting an object from a destination bucket, Amazon S3 will return the x-amz-replication-status header with value REPLICA if the object in your request is a replica that Amazon S3 created and there is no replica modification replication in progress.

  • When replicating objects to multiple destination buckets, the x-amz-replication-status header acts differently. The header of the source object will only return a value of COMPLETED when replication is successful to all destinations. The header will remain at value PENDING until replication has completed for all destinations. If one or more destinations fails replication the header will return FAILED.

For more information, see Replication.

", + "GetObjectOutput$ReplicationStatus": "

Amazon S3 can return this if your request involves a bucket that is either a source or destination in a replication rule.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$ReplicationStatus": "

Amazon S3 can return this header if your request involves a bucket that is either a source or a destination in a replication rule.

In replication, you have a source bucket on which you configure replication and destination bucket or buckets where Amazon S3 stores object replicas. When you request an object (GetObject) or object metadata (HeadObject) from these buckets, Amazon S3 will return the x-amz-replication-status header in the response as follows:

  • If requesting an object from the source bucket, Amazon S3 will return the x-amz-replication-status header if the object in your request is eligible for replication.

    For example, suppose that in your replication configuration, you specify object prefix TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs. Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf, are eligible for replication. For any object request with this key name prefix, Amazon S3 will return the x-amz-replication-status header with value PENDING, COMPLETED or FAILED indicating object replication status.

  • If requesting an object from a destination bucket, Amazon S3 will return the x-amz-replication-status header with value REPLICA if the object in your request is a replica that Amazon S3 created and there is no replica modification replication in progress.

  • When replicating objects to multiple destination buckets, the x-amz-replication-status header acts differently. The header of the source object will only return a value of COMPLETED when replication is successful to all destinations. The header will remain at value PENDING until replication has completed for all destinations. If one or more destinations fails replication the header will return FAILED.

For more information, see Replication.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$ReplicationStatus": "

Indicates if request involves bucket that is either a source or destination in a Replication rule. For more information about S3 Replication, see Replication.

" } }, @@ -3578,7 +3693,7 @@ } }, "RequestCharged": { - "base": "

If present, indicates that the requester was successfully charged for the request.

", + "base": "

If present, indicates that the requester was successfully charged for the request.

This functionality is not supported for directory buckets.

", "refs": { "AbortMultipartUploadOutput$RequestCharged": null, "CompleteMultipartUploadOutput$RequestCharged": null, @@ -3609,7 +3724,7 @@ } }, "RequestPayer": { - "base": "

Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination Amazon S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see Downloading Objects in Requester Pays Buckets in the Amazon S3 User Guide.

", + "base": "

Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see Downloading Objects in Requester Pays Buckets in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", "refs": { "AbortMultipartUploadRequest$RequestPayer": null, "CompleteMultipartUploadRequest$RequestPayer": null, @@ -3629,7 +3744,7 @@ "ListMultipartUploadsRequest$RequestPayer": null, "ListObjectVersionsRequest$RequestPayer": null, "ListObjectsRequest$RequestPayer": "

Confirms that the requester knows that she or he will be charged for the list objects request. Bucket owners need not specify this parameter in their requests.

", - "ListObjectsV2Request$RequestPayer": "

Confirms that the requester knows that she or he will be charged for the list objects request in V2 style. Bucket owners need not specify this parameter in their requests.

", + "ListObjectsV2Request$RequestPayer": "

Confirms that the requester knows that she or he will be charged for the list objects request in V2 style. Bucket owners need not specify this parameter in their requests.

This functionality is not supported for directory buckets.

", "ListPartsRequest$RequestPayer": null, "PutObjectAclRequest$RequestPayer": null, "PutObjectLegalHoldRequest$RequestPayer": null, @@ -3675,7 +3790,7 @@ "ResponseContentDisposition": { "base": null, "refs": { - "GetObjectRequest$ResponseContentDisposition": "

Sets the Content-Disposition header of the response

" + "GetObjectRequest$ResponseContentDisposition": "

Sets the Content-Disposition header of the response.

" } }, "ResponseContentEncoding": { @@ -3705,8 +3820,8 @@ "Restore": { "base": null, "refs": { - "GetObjectOutput$Restore": "

Provides information about object restoration action and expiration time of the restored object copy.

", - "HeadObjectOutput$Restore": "

If the object is an archived object (an object whose storage class is GLACIER), the response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.

If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete the object copy. For example:

x-amz-restore: ongoing-request=\"false\", expiry-date=\"Fri, 21 Dec 2012 00:00:00 GMT\"

If the object restoration is in progress, the header returns the value ongoing-request=\"true\".

For more information about archiving objects, see Transitioning Objects: General Considerations.

", + "GetObjectOutput$Restore": "

Provides information about object restoration action and expiration time of the restored object copy.

This functionality is not supported for directory buckets. Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", + "HeadObjectOutput$Restore": "

If the object is an archived object (an object whose storage class is GLACIER), the response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.

If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete the object copy. For example:

x-amz-restore: ongoing-request=\"false\", expiry-date=\"Fri, 21 Dec 2012 00:00:00 GMT\"

If the object restoration is in progress, the header returns the value ongoing-request=\"true\".

For more information about archiving objects, see Transitioning Objects: General Considerations.

This functionality is not supported for directory buckets. Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", "WriteGetObjectResponseRequest$Restore": "

Provides information about object restoration operation and expiration time of the restored object copy.

" } }, @@ -3745,9 +3860,9 @@ } }, "RestoreStatus": { - "base": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored before they can be retrieved. For more information about these storage classes and how to work with archived objects, see Working with archived objects in the Amazon S3 User Guide.

", + "base": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored before they can be retrieved. For more information about these storage classes and how to work with archived objects, see Working with archived objects in the Amazon S3 User Guide.

This functionality is not supported for directory buckets. Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", "refs": { - "Object$RestoreStatus": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored before they can be retrieved. For more information about these storage classes and how to work with archived objects, see Working with archived objects in the Amazon S3 User Guide.

", + "Object$RestoreStatus": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored before they can be retrieved. For more information about these storage classes and how to work with archived objects, see Working with archived objects in the Amazon S3 User Guide.

This functionality is not supported for directory buckets. Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", "ObjectVersion$RestoreStatus": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored before they can be retrieved. For more information about these storage classes and how to work with archived objects, see Working with archived objects in the Amazon S3 User Guide.

" } }, @@ -3798,64 +3913,64 @@ "SSECustomerAlgorithm": { "base": null, "refs": { - "CompleteMultipartUploadRequest$SSECustomerAlgorithm": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "CopyObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "CopyObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when encrypting the object (for example, AES256).

", - "CreateMultipartUploadOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "CreateMultipartUploadRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when encrypting the object (for example, AES256).

", - "GetObjectAttributesRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

", - "GetObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "GetObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when decrypting the object (for example, AES256).

", - "HeadObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "HeadObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when encrypting the object (for example, AES256).

", - "ListPartsRequest$SSECustomerAlgorithm": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "PutObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "PutObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when encrypting the object (for example, AES256).

", + "CompleteMultipartUploadRequest$SSECustomerAlgorithm": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is required only when the object was created using a checksum algorithm or if your bucket policy requires the use of SSE-C. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "CopyObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "CopyObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

When you perform a CopyObject operation, if you want to use a different type of encryption setting for the target object, you can specify appropriate encryption-related headers to encrypt the target object with an Amazon S3 managed key, a KMS key, or a customer-provided key. If the encryption setting in your request is different from the default encryption configuration of the destination bucket, the encryption setting in your request takes precedence.

This functionality is not supported when the destination bucket is a directory bucket.

", + "CreateMultipartUploadOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

This functionality is not supported for directory buckets.

", + "GetObjectAttributesRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

This functionality is not supported for directory buckets.

", + "GetObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "GetObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when decrypting the object (for example, AES256).

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following headers:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "HeadObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

This functionality is not supported for directory buckets.

", + "ListPartsRequest$SSECustomerAlgorithm": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "PutObjectOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

This functionality is not supported for directory buckets.

", "SelectObjectContentRequest$SSECustomerAlgorithm": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "UploadPartCopyOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "UploadPartCopyRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when encrypting the object (for example, AES256).

", - "UploadPartOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

", - "UploadPartRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use to when encrypting the object (for example, AES256).

", + "UploadPartCopyOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "UploadPartCopyRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

This functionality is not supported when the destination bucket is a directory bucket.

", + "UploadPartOutput$SSECustomerAlgorithm": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

", + "UploadPartRequest$SSECustomerAlgorithm": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$SSECustomerAlgorithm": "

Encryption algorithm used if server-side encryption with a customer-provided encryption key was specified for object stored in Amazon S3.

" } }, "SSECustomerKey": { "base": null, "refs": { - "CompleteMultipartUploadRequest$SSECustomerKey": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "CopyObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

", - "CreateMultipartUploadRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

", - "GetObjectAttributesRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

", - "GetObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 used to encrypt the data. This value is used to decrypt the object when recovering it and must match the one used when storing the data. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

", - "HeadObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

", - "ListPartsRequest$SSECustomerKey": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "PutObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

", + "CompleteMultipartUploadRequest$SSECustomerKey": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "CopyObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded. Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

This functionality is not supported when the destination bucket is a directory bucket.

", + "CreateMultipartUploadRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

This functionality is not supported for directory buckets.

", + "GetObjectAttributesRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

This functionality is not supported for directory buckets.

", + "GetObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key that you originally provided for Amazon S3 to encrypt the data before storing it. This value is used to decrypt the object when recovering it and must match the one used when storing the data. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following headers:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "HeadObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

This functionality is not supported for directory buckets.

", + "ListPartsRequest$SSECustomerKey": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header.

This functionality is not supported for directory buckets.

", "SelectObjectContentRequest$SSECustomerKey": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "UploadPartCopyRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request.

", - "UploadPartRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request.

" + "UploadPartCopyRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request.

This functionality is not supported when the destination bucket is a directory bucket.

", + "UploadPartRequest$SSECustomerKey": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request.

This functionality is not supported for directory buckets.

" } }, "SSECustomerKeyMD5": { "base": null, "refs": { - "CompleteMultipartUploadRequest$SSECustomerKeyMD5": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "CopyObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "CopyObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "CreateMultipartUploadOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "CreateMultipartUploadRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "GetObjectAttributesRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "GetObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "GetObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "HeadObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "HeadObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "ListPartsRequest$SSECustomerKeyMD5": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "PutObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "PutObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", + "CompleteMultipartUploadRequest$SSECustomerKeyMD5": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "CopyObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "CopyObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported when the destination bucket is a directory bucket.

", + "CreateMultipartUploadOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the customer-provided encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported for directory buckets.

", + "GetObjectAttributesRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "GetObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the customer-provided encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

If you encrypt an object by using server-side encryption with customer-provided encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following headers:

  • x-amz-server-side-encryption-customer-algorithm

  • x-amz-server-side-encryption-customer-key

  • x-amz-server-side-encryption-customer-key-MD5

For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "HeadObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported for directory buckets.

", + "ListPartsRequest$SSECustomerKeyMD5": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

", + "PutObjectOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported for directory buckets.

", "SelectObjectContentRequest$SSECustomerKeyMD5": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

", - "UploadPartCopyOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "UploadPartCopyRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", - "UploadPartOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

", - "UploadPartRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

", + "UploadPartCopyOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "UploadPartCopyRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported when the destination bucket is a directory bucket.

", + "UploadPartOutput$SSECustomerKeyMD5": "

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

", + "UploadPartRequest$SSECustomerKeyMD5": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$SSECustomerKeyMD5": "

128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3. For more information, see Protecting data using server-side encryption with customer-provided encryption keys (SSE-C).

" } }, @@ -3868,31 +3983,31 @@ "SSEKMSEncryptionContext": { "base": null, "refs": { - "CopyObjectOutput$SSEKMSEncryptionContext": "

If present, specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

", - "CopyObjectRequest$SSEKMSEncryptionContext": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

", - "CreateMultipartUploadOutput$SSEKMSEncryptionContext": "

If present, specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

", - "CreateMultipartUploadRequest$SSEKMSEncryptionContext": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

", - "PutObjectOutput$SSEKMSEncryptionContext": "

If present, specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject or CopyObject operations on this object.

", - "PutObjectRequest$SSEKMSEncryptionContext": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject or CopyObject operations on this object.

" + "CopyObjectOutput$SSEKMSEncryptionContext": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

This functionality is not supported for directory buckets.

", + "CopyObjectRequest$SSEKMSEncryptionContext": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value must be explicitly added to specify encryption context for CopyObject requests.

This functionality is not supported when the destination bucket is a directory bucket.

", + "CreateMultipartUploadOutput$SSEKMSEncryptionContext": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$SSEKMSEncryptionContext": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

This functionality is not supported for directory buckets.

", + "PutObjectOutput$SSEKMSEncryptionContext": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject or CopyObject operations on this object.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$SSEKMSEncryptionContext": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject or CopyObject operations on this object. This value must be explicitly added during CopyObject operations.

This functionality is not supported for directory buckets.

" } }, "SSEKMSKeyId": { "base": null, "refs": { - "CompleteMultipartUploadOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "CopyObjectOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "CopyObjectRequest$SSEKMSKeyId": "

Specifies the KMS ID (Key ID, Key ARN, or Key Alias) to use for object encryption. All GET and PUT requests for an object protected by KMS will fail if they're not made via SSL or using SigV4. For information about configuring any of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the Signature Version in Request Authentication in the Amazon S3 User Guide.

", - "CreateMultipartUploadOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "CreateMultipartUploadRequest$SSEKMSKeyId": "

Specifies the ID (Key ID, Key ARN, or Key Alias) of the symmetric encryption customer managed key to use for object encryption. All GET and PUT requests for an object protected by KMS will fail if they're not made via SSL or using SigV4. For information about configuring any of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the Signature Version in Request Authentication in the Amazon S3 User Guide.

", + "CompleteMultipartUploadOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "CopyObjectOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "CopyObjectRequest$SSEKMSKeyId": "

Specifies the KMS ID (Key ID, Key ARN, or Key Alias) to use for object encryption. All GET and PUT requests for an object protected by KMS will fail if they're not made via SSL or using SigV4. For information about configuring any of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the Signature Version in Request Authentication in the Amazon S3 User Guide.

This functionality is not supported when the destination bucket is a directory bucket.

", + "CreateMultipartUploadOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$SSEKMSKeyId": "

Specifies the ID (Key ID, Key ARN, or Key Alias) of the symmetric encryption customer managed key to use for object encryption.

This functionality is not supported for directory buckets.

", "Encryption$KMSKeyId": "

If the encryption type is aws:kms, this optional value specifies the ID of the symmetric encryption customer managed key to use for encryption of job results. Amazon S3 only supports symmetric encryption KMS keys. For more information, see Asymmetric keys in KMS in the Amazon Web Services Key Management Service Developer Guide.

", - "GetObjectOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "HeadObjectOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "PutObjectOutput$SSEKMSKeyId": "

If x-amz-server-side-encryption has a valid value of aws:kms or aws:kms:dsse, this header specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "PutObjectRequest$SSEKMSKeyId": "

If x-amz-server-side-encryption has a valid value of aws:kms or aws:kms:dsse, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object. If you specify x-amz-server-side-encryption:aws:kms or x-amz-server-side-encryption:aws:kms:dsse, but do not provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key (aws/s3) to protect the data. If the KMS key does not exist in the same account that's issuing the command, you must use the full ARN and not just the ID.

", + "GetObjectOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "PutObjectOutput$SSEKMSKeyId": "

If x-amz-server-side-encryption has a valid value of aws:kms or aws:kms:dsse, this header indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$SSEKMSKeyId": "

If x-amz-server-side-encryption has a valid value of aws:kms or aws:kms:dsse, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object. If you specify x-amz-server-side-encryption:aws:kms or x-amz-server-side-encryption:aws:kms:dsse, but do not provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key (aws/s3) to protect the data. If the KMS key does not exist in the same account that's issuing the command, you must use the full ARN and not just the ID.

This functionality is not supported for directory buckets.

", "SSEKMS$KeyId": "

Specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key to use for encrypting inventory reports.

", "ServerSideEncryptionByDefault$KMSMasterKeyID": "

Amazon Web Services Key Management Service (KMS) customer Amazon Web Services KMS key ID to use for the default encryption. This parameter is allowed if and only if SSEAlgorithm is set to aws:kms.

You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.

  • Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

  • Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Key Alias: alias/alias-name

If you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log.

If you are using encryption with cross-account or Amazon Web Services service operations you must use a fully qualified KMS key ARN. For more information, see Using encryption for cross-account operations.

Amazon S3 only supports symmetric encryption KMS keys. For more information, see Asymmetric keys in Amazon Web Services KMS in the Amazon Web Services Key Management Service Developer Guide.

", - "UploadPartCopyOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

", - "UploadPartOutput$SSEKMSKeyId": "

If present, specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key was used for the object.

", + "UploadPartCopyOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", + "UploadPartOutput$SSEKMSKeyId": "

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$SSEKMSKeyId": "

If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.

" } }, @@ -3933,19 +4048,19 @@ "ServerSideEncryption": { "base": null, "refs": { - "CompleteMultipartUploadOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

", - "CopyObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

", - "CopyObjectRequest$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

", - "CreateMultipartUploadOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

", - "CreateMultipartUploadRequest$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

", + "CompleteMultipartUploadOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "CopyObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "CopyObjectRequest$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse). Unrecognized or unsupported values won’t write a destination object and will receive a 400 Bad Request response.

Amazon S3 automatically encrypts all new objects that are copied to an S3 bucket. When copying an object, if you don't specify encryption information in your copy request, the encryption setting of the target object is set to the default encryption configuration of the destination bucket. By default, all buckets have a base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). If the destination bucket has a default encryption configuration that uses server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with customer-provided encryption keys (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided key to encrypt the target object copy.

When you perform a CopyObject operation, if you want to use a different type of encryption setting for the target object, you can specify appropriate encryption-related headers to encrypt the target object with an Amazon S3 managed key, a KMS key, or a customer-provided key. If the encryption setting in your request is different from the default encryption configuration of the destination bucket, the encryption setting in your request takes precedence.

With server-side encryption, Amazon S3 encrypts your data as it writes your data to disks in its data centers and decrypts the data when you access it. For more information about server-side encryption, see Using Server-Side Encryption in the Amazon S3 User Guide.

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "CreateMultipartUploadOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "CreateMultipartUploadRequest$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", "Encryption$EncryptionType": "

The server-side encryption algorithm used when storing job results in Amazon S3 (for example, AES256, aws:kms).

", - "GetObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

", - "HeadObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

", - "PutObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

", - "PutObjectRequest$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

", + "GetObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "HeadObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "PutObjectOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "PutObjectRequest$ServerSideEncryption": "

The server-side encryption algorithm that was used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

General purpose buckets - You have four mutually exclusive options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest by using server-side encryption with other key options. For more information, see Using Server-Side Encryption in the Amazon S3 User Guide.

Directory buckets - For directory buckets, only the server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) value is supported.

", "ServerSideEncryptionByDefault$SSEAlgorithm": "

Server-side encryption algorithm to use for the default encryption.

", - "UploadPartCopyOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

", - "UploadPartOutput$ServerSideEncryption": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

", + "UploadPartCopyOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", + "UploadPartOutput$ServerSideEncryption": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

", "WriteGetObjectResponseRequest$ServerSideEncryption": "

The server-side encryption algorithm used when storing requested object in Amazon S3 (for example, AES256, aws:kms).

" } }, @@ -3974,6 +4089,31 @@ "ServerSideEncryptionConfiguration$Rules": "

Container for information about a particular server-side encryption configuration rule.

" } }, + "SessionCredentialValue": { + "base": null, + "refs": { + "SessionCredentials$SecretAccessKey": "

A key that's used with the access key ID to cryptographically sign programmatic Amazon Web Services requests. Signing a request identifies the sender and prevents the request from being altered.

", + "SessionCredentials$SessionToken": "

A part of the temporary security credentials. The session token is used to validate the temporary security credentials.

" + } + }, + "SessionCredentials": { + "base": "

The established temporary security credentials of the session.

Directory buckets - These session credentials are only supported for the authentication and authorization of Zonal endpoint APIs on directory buckets.

", + "refs": { + "CreateSessionOutput$Credentials": "

The established temporary security credentials for the created session..

" + } + }, + "SessionExpiration": { + "base": null, + "refs": { + "SessionCredentials$Expiration": "

Temporary security credentials expire after a specified interval. After temporary credentials expire, any calls that you make with those credentials will fail. So you must generate a new set of temporary credentials. Temporary credentials cannot be extended or refreshed beyond the original specified interval.

" + } + }, + "SessionMode": { + "base": null, + "refs": { + "CreateSessionRequest$SessionMode": "

Specifies the mode of the session that will be created, either ReadWrite or ReadOnly. By default, a ReadWrite session is created. A ReadWrite session is capable of executing all the Zonal endpoint APIs on a directory bucket. A ReadOnly session is constrained to execute the following Zonal endpoint APIs: GetObject, HeadObject, ListObjectsV2, GetObjectAttributes, ListParts, and ListMultipartUploads.

" + } + }, "Setting": { "base": null, "refs": { @@ -3983,6 +4123,12 @@ "PublicAccessBlockConfiguration$RestrictPublicBuckets": "

Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only Amazon Web Service principals and authorized users within this account if the bucket has a public policy.

Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.

" } }, + "SimplePrefix": { + "base": "

To use simple format for S3 keys for log objects, set SimplePrefix to an empty object.

[DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

", + "refs": { + "TargetObjectKeyFormat$SimplePrefix": "

To use the simple format for S3 keys for log objects. To specify SimplePrefix format, set SimplePrefix to {}.

" + } + }, "Size": { "base": null, "refs": { @@ -4025,8 +4171,8 @@ "StartAfter": { "base": null, "refs": { - "ListObjectsV2Output$StartAfter": "

If StartAfter was sent with the request, it is included in the response.

", - "ListObjectsV2Request$StartAfter": "

StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket.

" + "ListObjectsV2Output$StartAfter": "

If StartAfter was sent with the request, it is included in the response.

This functionality is not supported for directory buckets.

", + "ListObjectsV2Request$StartAfter": "

StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket.

This functionality is not supported for directory buckets.

" } }, "Stats": { @@ -4044,16 +4190,16 @@ "StorageClass": { "base": null, "refs": { - "CopyObjectRequest$StorageClass": "

If the x-amz-storage-class header is not used, the copied object will be stored in the STANDARD Storage Class by default. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, see Storage Classes in the Amazon S3 User Guide.

", - "CreateMultipartUploadRequest$StorageClass": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, see Storage Classes in the Amazon S3 User Guide.

", + "CopyObjectRequest$StorageClass": "

If the x-amz-storage-class header is not used, the copied object will be stored in the STANDARD Storage Class by default. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class.

  • Directory buckets - For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects. Unsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

  • Amazon S3 on Outposts - S3 on Outposts only uses the OUTPOSTS Storage Class.

You can use the CopyObject action to change the storage class of an object that is already stored in Amazon S3 by using the x-amz-storage-class header. For more information, see Storage Classes in the Amazon S3 User Guide.

Before using an object as a source object for the copy operation, you must restore a copy of it if it meets any of the following conditions:

  • The storage class of the source object is GLACIER or DEEP_ARCHIVE.

  • The storage class of the source object is INTELLIGENT_TIERING and it's S3 Intelligent-Tiering access tier is Archive Access or Deep Archive Access.

For more information, see RestoreObject and Copying Objects in the Amazon S3 User Guide.

", + "CreateMultipartUploadRequest$StorageClass": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. For more information, see Storage Classes in the Amazon S3 User Guide.

  • For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects.

  • Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.

", "Destination$StorageClass": "

The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By default, Amazon S3 uses the storage class of the source object to create the object replica.

For valid values, see the StorageClass element of the PUT Bucket replication action in the Amazon S3 API Reference.

", - "GetObjectAttributesOutput$StorageClass": "

Provides the storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

", - "GetObjectOutput$StorageClass": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

", - "HeadObjectOutput$StorageClass": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

", + "GetObjectAttributesOutput$StorageClass": "

Provides the storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", + "GetObjectOutput$StorageClass": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", + "HeadObjectOutput$StorageClass": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", "InvalidObjectState$StorageClass": null, - "ListPartsOutput$StorageClass": "

Class of storage (STANDARD or REDUCED_REDUNDANCY) used to store the uploaded object.

", - "MultipartUpload$StorageClass": "

The class of storage used to store the object.

", - "PutObjectRequest$StorageClass": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, see Storage Classes in the Amazon S3 User Guide.

", + "ListPartsOutput$StorageClass": "

The class of storage used to store the uploaded object.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", + "MultipartUpload$StorageClass": "

The class of storage used to store the object.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

", + "PutObjectRequest$StorageClass": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. For more information, see Storage Classes in the Amazon S3 User Guide.

  • For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects.

  • Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.

", "S3Location$StorageClass": "

The class of storage used to store the restore results.

", "WriteGetObjectResponseRequest$StorageClass": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

" } @@ -4096,7 +4242,7 @@ "TagCount": { "base": null, "refs": { - "GetObjectOutput$TagCount": "

The number of tags, if any, on the object.

", + "GetObjectOutput$TagCount": "

The number of tags, if any, on the object, when you have the relevant permission to read object tags.

You can use GetObjectTagging to retrieve the tag set associated with an object.

This functionality is not supported for directory buckets.

", "WriteGetObjectResponseRequest$TagCount": "

The number of tags, if any, on the object.

" } }, @@ -4124,15 +4270,15 @@ "TaggingDirective": { "base": null, "refs": { - "CopyObjectRequest$TaggingDirective": "

Specifies whether the object tag-set are copied from the source object or replaced with tag-set provided in the request.

" + "CopyObjectRequest$TaggingDirective": "

Specifies whether the object tag-set is copied from the source object or replaced with the tag-set that's provided in the request.

The default value is COPY.

Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code. When the destination bucket is a directory bucket, you will receive a 501 Not Implemented response in any of the following situations:

  • When you attempt to COPY the tag-set from an S3 source object that has non-empty tags.

  • When you attempt to REPLACE the tag-set of a source object and set a non-empty value to x-amz-tagging.

  • When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.

Because only the empty tag-set is supported for directory buckets in a CopyObject operation, the following situations are allowed:

  • When you attempt to COPY the tag-set from a directory bucket source object that has no tags to a general purpose bucket. It copies an empty tag-set to the destination object.

  • When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.

  • When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

  • When you attempt to REPLACE the tag-set of a directory bucket source object and don't set the x-amz-tagging value of the directory bucket destination object. This is because the default value of x-amz-tagging is the empty value.

" } }, "TaggingHeader": { "base": null, "refs": { - "CopyObjectRequest$Tagging": "

The tag-set for the object destination object this value must be used in conjunction with the TaggingDirective. The tag-set must be encoded as URL Query parameters.

", - "CreateMultipartUploadRequest$Tagging": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters.

", - "PutObjectRequest$Tagging": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters. (For example, \"Key1=Value1\")

" + "CopyObjectRequest$Tagging": "

The tag-set for the object copy in the destination bucket. This value must be used in conjunction with the x-amz-tagging-directive if you choose REPLACE for the x-amz-tagging-directive. If you choose COPY for the x-amz-tagging-directive, you don't need to set the x-amz-tagging header, because the tag-set will be copied from the source object directly. The tag-set must be encoded as URL Query parameters.

The default value is the empty value.

Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code. When the destination bucket is a directory bucket, you will receive a 501 Not Implemented response in any of the following situations:

  • When you attempt to COPY the tag-set from an S3 source object that has non-empty tags.

  • When you attempt to REPLACE the tag-set of a source object and set a non-empty value to x-amz-tagging.

  • When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.

Because only the empty tag-set is supported for directory buckets in a CopyObject operation, the following situations are allowed:

  • When you attempt to COPY the tag-set from a directory bucket source object that has no tags to a general purpose bucket. It copies an empty tag-set to the destination object.

  • When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.

  • When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

  • When you attempt to REPLACE the tag-set of a directory bucket source object and don't set the x-amz-tagging value of the directory bucket destination object. This is because the default value of x-amz-tagging is the empty value.

", + "CreateMultipartUploadRequest$Tagging": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$Tagging": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters. (For example, \"Key1=Value1\")

This functionality is not supported for directory buckets.

" } }, "TargetBucket": { @@ -4153,6 +4299,12 @@ "LoggingEnabled$TargetGrants": "

Container for granting information.

Buckets that use the bucket owner enforced setting for Object Ownership don't support target grants. For more information, see Permissions for server access log delivery in the Amazon S3 User Guide.

" } }, + "TargetObjectKeyFormat": { + "base": "

Amazon S3 key format for log objects. Only one format, PartitionedPrefix or SimplePrefix, is allowed.

", + "refs": { + "LoggingEnabled$TargetObjectKeyFormat": "

Amazon S3 key format for log objects.

" + } + }, "TargetPrefix": { "base": null, "refs": { @@ -4189,8 +4341,8 @@ "ListBucketInventoryConfigurationsRequest$ContinuationToken": "

The marker used to continue an inventory configuration listing that has been truncated. Use the NextContinuationToken from a previously truncated list response to continue the listing. The continuation token is an opaque value that Amazon S3 understands.

", "ListBucketMetricsConfigurationsOutput$ContinuationToken": "

The marker that is used as a starting point for this metrics configuration list response. This value is present if it was sent in the request.

", "ListBucketMetricsConfigurationsRequest$ContinuationToken": "

The marker that is used to continue a metrics configuration listing that has been truncated. Use the NextContinuationToken from a previously truncated list response to continue the listing. The continuation token is an opaque value that Amazon S3 understands.

", - "ListObjectsV2Output$ContinuationToken": "

If ContinuationToken was sent with the request, it is included in the response.

", - "ListObjectsV2Request$ContinuationToken": "

ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key.

" + "ListObjectsV2Output$ContinuationToken": "

If ContinuationToken was sent with the request, it is included in the response. You can use the returned ContinuationToken for pagination of the list response. You can use this ContinuationToken for pagination of the list results.

", + "ListObjectsV2Request$ContinuationToken": "

ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key. You can use this ContinuationToken for pagination of the list results.

" } }, "TopicArn": { @@ -4253,8 +4405,8 @@ "UploadIdMarker": { "base": null, "refs": { - "ListMultipartUploadsOutput$UploadIdMarker": "

Upload ID after which listing began.

", - "ListMultipartUploadsRequest$UploadIdMarker": "

Together with key-marker, specifies the multipart upload after which listing should begin. If key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads for a key equal to the key-marker might be included in the list only if they have an upload ID lexicographically greater than the specified upload-id-marker.

" + "ListMultipartUploadsOutput$UploadIdMarker": "

Upload ID after which listing began.

This functionality is not supported for directory buckets.

", + "ListMultipartUploadsRequest$UploadIdMarker": "

Together with key-marker, specifies the multipart upload after which listing should begin. If key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads for a key equal to the key-marker might be included in the list only if they have an upload ID lexicographically greater than the specified upload-id-marker.

This functionality is not supported for directory buckets.

" } }, "UploadPartCopyOutput": { @@ -4292,8 +4444,8 @@ "VersionCount": { "base": null, "refs": { - "NoncurrentVersionExpiration$NewerNoncurrentVersions": "

Specifies how many noncurrent versions Amazon S3 will retain. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.

", - "NoncurrentVersionTransition$NewerNoncurrentVersions": "

Specifies how many noncurrent versions Amazon S3 will retain. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.

" + "NoncurrentVersionExpiration$NewerNoncurrentVersions": "

Specifies how many newer noncurrent versions must exist before Amazon S3 can perform the associated action on a given version. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.

", + "NoncurrentVersionTransition$NewerNoncurrentVersions": "

Specifies how many newer noncurrent versions must exist before Amazon S3 can perform the associated action on a given version. If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see Lifecycle configuration elements in the Amazon S3 User Guide.

" } }, "VersionIdMarker": { @@ -4318,11 +4470,11 @@ "WebsiteRedirectLocation": { "base": null, "refs": { - "CopyObjectRequest$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata. This value is unique to each object and is not copied when using the x-amz-metadata-directive header. Instead, you may opt to provide this header in combination with the directive.

", - "CreateMultipartUploadRequest$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

", - "GetObjectOutput$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

", - "HeadObjectOutput$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

", - "PutObjectRequest$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata. For information about object metadata, see Object Key and Metadata.

In the following example, the request header sets the redirect to an object (anotherPage.html) in the same bucket:

x-amz-website-redirect-location: /anotherPage.html

In the following example, the request header sets the object redirect to another website:

x-amz-website-redirect-location: http://www.example.com/

For more information about website hosting in Amazon S3, see Hosting Websites on Amazon S3 and How to Configure Website Page Redirects.

" + "CopyObjectRequest$WebsiteRedirectLocation": "

If the destination bucket is configured as a website, redirects requests for this object copy to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata. This value is unique to each object and is not copied when using the x-amz-metadata-directive header. Instead, you may opt to provide this header in combination with the x-amz-metadata-directive header.

This functionality is not supported for directory buckets.

", + "CreateMultipartUploadRequest$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

This functionality is not supported for directory buckets.

", + "GetObjectOutput$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

This functionality is not supported for directory buckets.

", + "HeadObjectOutput$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

This functionality is not supported for directory buckets.

", + "PutObjectRequest$WebsiteRedirectLocation": "

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata. For information about object metadata, see Object Key and Metadata in the Amazon S3 User Guide.

In the following example, the request header sets the redirect to an object (anotherPage.html) in the same bucket:

x-amz-website-redirect-location: /anotherPage.html

In the following example, the request header sets the object redirect to another website:

x-amz-website-redirect-location: http://www.example.com/

For more information about website hosting in Amazon S3, see Hosting Websites on Amazon S3 and How to Configure Website Page Redirects in the Amazon S3 User Guide.

This functionality is not supported for directory buckets.

" } }, "WriteGetObjectResponseRequest": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -58,6 +58,16 @@ "documentation": "Internal parameter to use object lambda endpoint for an operation (eg: WriteGetObjectResponse)", "type": "Boolean" }, + "Key": { + "required": false, + "documentation": "The S3 Key used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Key.", + "type": "String" + }, + "Prefix": { + "required": false, + "documentation": "The S3 Prefix used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Prefix.", + "type": "String" + }, "DisableAccessPoints": { "required": false, "documentation": "Internal parameter to disable Access Point Buckets", @@ -75,6 +85,16 @@ "required": false, "documentation": "When an Access Point ARN is provided and this flag is enabled, the SDK MUST use the ARN's region when constructing the endpoint instead of the client's configured region.", "type": "Boolean" + }, + "UseS3ExpressControlEndpoint": { + "required": false, + "documentation": "Internal parameter to indicate whether S3Express operation should use control plane, (ex. CreateBucket)", + "type": "Boolean" + }, + "DisableS3ExpressSessionAuth": { + "required": false, + "documentation": "Parameter to indicate whether S3Express session auth should be disabled", + "type": "Boolean" } }, "rules": [ @@ -89,7 +109,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -239,6 +258,944 @@ { "ref": "Bucket" }, + 0, + 6, + true + ], + "assign": "bucketSuffix" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "bucketSuffix" + }, + "--x-s3" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3Express does not support Dual-stack.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3Express does not support S3 Accelerate.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.amazonaws.com/{uri_encoded_bucket}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.amazonaws.com/{uri_encoded_bucket}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 14, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 14, + 16, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized S3Express bucket name format.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 14, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 14, + 16, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized S3Express bucket name format.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.amazonaws.com", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, 49, 50, true @@ -300,7 +1257,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -314,7 +1270,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -328,7 +1283,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -342,7 +1296,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -399,7 +1352,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -419,7 +1373,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -433,7 +1388,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -447,7 +1401,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -504,7 +1457,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -524,21 +1478,24 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Unrecognized hardware type: \"Expected hardware type o or e but got {hardwareType}\"", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -551,7 +1508,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -606,7 +1562,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -620,7 +1575,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -634,7 +1588,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -800,7 +1753,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -820,7 +1772,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -1038,7 +1991,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -1058,7 +2010,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -1276,7 +2229,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -1296,7 +2248,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -1514,7 +2467,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -1534,7 +2486,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -1877,7 +2830,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1925,7 +2877,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2012,7 +2965,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2060,7 +3012,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2398,7 +3351,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2446,7 +3398,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2664,7 +3617,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2712,7 +3664,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2796,16 +3749,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region: region was not a valid DNS name.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2887,7 +3843,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2901,7 +3856,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2915,7 +3869,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -2935,16 +3888,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region: region was not a valid DNS name.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2967,7 +3923,6 @@ "assign": "bucketArn" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2996,7 +3951,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3016,7 +3970,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3030,7 +3983,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3059,7 +4011,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3114,7 +4065,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3161,7 +4111,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3224,7 +4173,6 @@ "assign": "bucketPartition" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3238,7 +4186,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3266,7 +4213,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3286,7 +4232,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3327,7 +4272,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3341,7 +4285,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3425,67 +4368,78 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: bucket ARN is missing a region", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -3499,7 +4453,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3528,7 +4481,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3553,7 +4505,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3567,7 +4518,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3592,7 +4542,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3639,7 +4588,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3702,7 +4650,6 @@ "assign": "bucketPartition" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3716,7 +4663,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3736,7 +4682,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3756,7 +4701,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3776,7 +4720,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3796,7 +4739,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -3810,7 +4752,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4029,57 +4970,68 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -4093,7 +5045,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4167,7 +5118,6 @@ "assign": "mrapPartition" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4195,7 +5145,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -4217,30 +5166,35 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Access Point Name", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -4260,7 +5214,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4340,7 +5293,6 @@ "assign": "outpostId" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4354,7 +5306,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4417,7 +5368,6 @@ "assign": "bucketPartition" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4431,7 +5381,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4459,7 +5408,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4479,7 +5427,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4499,7 +5446,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4514,7 +5460,6 @@ "assign": "outpostType" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4529,7 +5474,6 @@ "assign": "accessPointName" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4543,7 +5487,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4599,81 +5542,94 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Expected an outpost type `accesspoint`, found {outpostType}", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: expected an access point name", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Expected a 4-component resource", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The Outpost Id was not set", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: No ARN type specified", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -4755,7 +5711,6 @@ "assign": "uri_encoded_bucket" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4769,7 +5724,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4783,7 +5737,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -4901,7 +5854,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -4921,7 +5873,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -5112,7 +6065,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -5132,7 +6084,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -5323,7 +6276,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -5343,7 +6295,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -5542,7 +6495,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -5590,7 +6542,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -5785,7 +6738,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -5833,7 +6785,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -5908,18 +6861,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Path-style addressing cannot be used with S3 Accelerate", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -5941,7 +6898,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -5955,7 +6911,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -5969,7 +6924,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -6083,16 +7037,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region: region was not a valid DNS name.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -6110,7 +7067,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -6124,7 +7080,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -6138,7 +7093,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -6256,7 +7210,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -6276,7 +7229,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -6467,7 +7421,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -6487,7 +7440,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -6678,7 +7632,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -6698,7 +7651,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -6897,7 +7851,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -6945,7 +7898,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -7140,7 +8094,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -7188,7 +8141,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -7263,18 +8217,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region: region was not a valid DNS name.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1755,6 +1755,45 @@ } }, { + "documentation": "virtual addressing, aws-global region with Prefix, and Key uses the global endpoint. Prefix and Key parameters should not be used in endpoint evaluation.", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global" + }, + "operationName": "ListObjects", + "operationParams": { + "Bucket": "bucket-name", + "Prefix": "prefix" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Prefix": "prefix", + "Key": "key" + } + }, + { "documentation": "virtual addressing, aws-global region with fips uses the regional fips endpoint", "expect": { "endpoint": { @@ -7680,6 +7719,765 @@ "UseDualStack": false, "Accelerate": false } + }, + { + "documentation": "Data Plane with short AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--use1-az1--x-s3.s3express-use1-az1.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--use1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--use1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--use1-az1--x-s3.s3express-fips-use1-az1.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--use1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--use1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "ap-northeast-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--apne1-az1--x-s3.s3express-apne1-az1.ap-northeast-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "ap-northeast-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--apne1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "ap-northeast-1", + "Bucket": "mybucket--apne1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "ap-northeast-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--apne1-az1--x-s3.s3express-fips-apne1-az1.ap-northeast-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "ap-northeast-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--apne1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "ap-northeast-1", + "Bucket": "mybucket--apne1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Control plane with short AZ bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control.us-east-1.amazonaws.com/mybucket--use1-az1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--use1-az1--x-s3" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--use1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane with short AZ bucket and fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com/mybucket--use1-az1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--use1-az1--x-s3" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--use1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane without bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "ListDirectoryBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane without bucket and fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "ListDirectoryBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "ap-northeast-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--apne1-az1--x-s3.s3express-apne1-az1.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "Bucket": "mybucket--apne1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "ap-northeast-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--apne1-az1--x-s3.s3express-fips-apne1-az1.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "Bucket": "mybucket--apne1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Control Plane host override", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--usw2-az1--x-s3.custom.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Control Plane host override no bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://custom.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Data plane host override non virtual session auth", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://10.0.0.1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Control Plane host override ip", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Data plane host override", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--usw2-az1--x-s3.custom.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "bad format error", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usaz1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--usaz1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "bad format error no session auth", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usaz1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--usaz1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "dual-stack error", + "expect": { + "error": "S3Express does not support Dual-stack." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--use1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--use1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "accelerate error", + "expect": { + "error": "S3Express does not support S3 Accelerate." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--use1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--use1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data plane bucket format error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.bucket--use1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "my.bucket--use1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "host override data plane bucket error session auth", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.bucket--usw2-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "my.bucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "host override data plane bucket error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "params": { + "Region": "us-west-2", + "Bucket": "my.bucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com", + "DisableS3ExpressSessionAuth": true + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -257,8 +257,10 @@ "DeleteObject": [ { "input": { - "Bucket": "ExampleBucket", - "Key": "HappyFace.jpg" + "Bucket": "examplebucket", + "Key": "objectkey.jpg" + }, + "output": { }, "comments": { "input": { @@ -266,16 +268,14 @@ "output": { } }, - "description": "The following example deletes an object from a non-versioned bucket.", - "id": "to-delete-an-object-from-a-non-versioned-bucket-1481588533089", - "title": "To delete an object (from a non-versioned bucket)" + "description": "The following example deletes an object from an S3 bucket.", + "id": "to-delete-an-object-1472850136595", + "title": "To delete an object" }, { "input": { - "Bucket": "examplebucket", - "Key": "objectkey.jpg" - }, - "output": { + "Bucket": "ExampleBucket", + "Key": "HappyFace.jpg" }, "comments": { "input": { @@ -283,19 +283,20 @@ "output": { } }, - "description": "The following example deletes an object from an S3 bucket.", - "id": "to-delete-an-object-1472850136595", - "title": "To delete an object" + "description": "The following example deletes an object from a non-versioned bucket.", + "id": "to-delete-an-object-from-a-non-versioned-bucket-1481588533089", + "title": "To delete an object (from a non-versioned bucket)" } ], "DeleteObjectTagging": [ { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "Key": "HappyFace.jpg", + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "output": { - "VersionId": "null" + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "comments": { "input": { @@ -303,18 +304,17 @@ "output": { } }, - "description": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", - "id": "to-remove-tag-set-from-an-object-1483145342862", - "title": "To remove tag set from an object" + "description": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", + "id": "to-remove-tag-set-from-an-object-version-1483145285913", + "title": "To remove tag set from an object version" }, { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "Key": "HappyFace.jpg" }, "output": { - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "VersionId": "null" }, "comments": { "input": { @@ -322,9 +322,9 @@ "output": { } }, - "description": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", - "id": "to-remove-tag-set-from-an-object-version-1483145285913", - "title": "To remove tag set from an object version" + "description": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", + "id": "to-remove-tag-set-from-an-object-1483145342862", + "title": "To remove tag set from an object" } ], "DeleteObjects": [ @@ -1567,36 +1567,13 @@ "PutObject": [ { "input": { - "Body": "HappyFace.jpg", - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" - }, - "output": { - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk" - }, - "comments": { - "input": { - }, - "output": { - } - }, - "description": "The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.", - "id": "to-upload-an-object-1481760101010", - "title": "To upload an object" - }, - { - "input": { "Body": "filetoupload", "Bucket": "examplebucket", - "Key": "exampleobject", - "ServerSideEncryption": "AES256", - "Tagging": "key1=value1&key2=value2" + "Key": "objectkey" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "ServerSideEncryption": "AES256", - "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt" + "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ" }, "comments": { "input": { @@ -1604,19 +1581,19 @@ "output": { } }, - "description": "The following example uploads an object. The request specifies the optional server-side encryption option. The request also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.", - "id": "to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831", - "title": "To upload an object and specify server-side encryption and object tags" + "description": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", + "id": "to-create-an-object-1483147613675", + "title": "To create an object." }, { "input": { - "Body": "filetoupload", + "Body": "HappyFace.jpg", "Bucket": "examplebucket", - "Key": "objectkey" + "Key": "HappyFace.jpg" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ" + "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk" }, "comments": { "input": { @@ -1624,9 +1601,9 @@ "output": { } }, - "description": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", - "id": "to-create-an-object-1483147613675", - "title": "To create an object." + "description": "The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.", + "id": "to-upload-an-object-1481760101010", + "title": "To upload an object" }, { "input": { @@ -1675,14 +1652,16 @@ }, { "input": { - "ACL": "authenticated-read", - "Body": "filetoupload", + "Body": "HappyFace.jpg", "Bucket": "examplebucket", - "Key": "exampleobject" + "Key": "HappyFace.jpg", + "ServerSideEncryption": "AES256", + "StorageClass": "STANDARD_IA" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr" + "ServerSideEncryption": "AES256", + "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp" }, "comments": { "input": { @@ -1690,22 +1669,22 @@ "output": { } }, - "description": "The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.", - "id": "to-upload-an-object-and-specify-canned-acl-1483397779571", - "title": "To upload an object and specify canned ACL." + "description": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", + "id": "to-upload-an-object-(specify-optional-headers)", + "title": "To upload an object (specify optional headers)" }, { "input": { - "Body": "HappyFace.jpg", + "Body": "filetoupload", "Bucket": "examplebucket", - "Key": "HappyFace.jpg", + "Key": "exampleobject", "ServerSideEncryption": "AES256", - "StorageClass": "STANDARD_IA" + "Tagging": "key1=value1&key2=value2" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", "ServerSideEncryption": "AES256", - "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp" + "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt" }, "comments": { "input": { @@ -1713,9 +1692,30 @@ "output": { } }, - "description": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", - "id": "to-upload-an-object-(specify-optional-headers)", - "title": "To upload an object (specify optional headers)" + "description": "The following example uploads an object. The request specifies the optional server-side encryption option. The request also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.", + "id": "to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831", + "title": "To upload an object and specify server-side encryption and object tags" + }, + { + "input": { + "ACL": "authenticated-read", + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "exampleobject" + }, + "output": { + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "VersionId": "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.", + "id": "to-upload-an-object-and-specify-canned-acl-1483397779571", + "title": "To upload an object and specify canned ACL." } ], "PutObjectAcl": [ @@ -1826,15 +1826,14 @@ "input": { "Bucket": "examplebucket", "CopySource": "/bucketname/sourceobjectkey", - "CopySourceRange": "bytes=1-100000", "Key": "examplelargeobject", - "PartNumber": "2", + "PartNumber": "1", "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" }, "output": { "CopyPartResult": { - "ETag": "\"65d16d19e65a7508a51f043180edcc36\"", - "LastModified": "2016-12-29T21:44:28.000Z" + "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"", + "LastModified": "2016-12-29T21:24:43.000Z" } }, "comments": { @@ -1843,22 +1842,23 @@ "output": { } }, - "description": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", - "id": "to-upload-a-part-by-copying-byte-range-from-an-existing-object-as-data-source-1483048068594", - "title": "To upload a part by copying byte range from an existing object as data source" + "description": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", + "id": "to-upload-a-part-by-copying-data-from-an-existing-object-as-data-source-1483046746348", + "title": "To upload a part by copying data from an existing object as data source" }, { "input": { "Bucket": "examplebucket", "CopySource": "/bucketname/sourceobjectkey", + "CopySourceRange": "bytes=1-100000", "Key": "examplelargeobject", - "PartNumber": "1", + "PartNumber": "2", "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" }, "output": { "CopyPartResult": { - "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"", - "LastModified": "2016-12-29T21:24:43.000Z" + "ETag": "\"65d16d19e65a7508a51f043180edcc36\"", + "LastModified": "2016-12-29T21:44:28.000Z" } }, "comments": { @@ -1867,9 +1867,9 @@ "output": { } }, - "description": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", - "id": "to-upload-a-part-by-copying-data-from-an-existing-object-as-data-source-1483046746348", - "title": "To upload a part by copying data from an existing object as data source" + "description": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", + "id": "to-upload-a-part-by-copying-byte-range-from-an-existing-object-as-data-source-1483048068594", + "title": "To upload a part by copying byte range from an existing object as data source" } ] } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3/2006-03-01/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3/2006-03-01/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,6 +3,12 @@ "ListBuckets": { "result_key": "Buckets" }, + "ListDirectoryBuckets": { + "input_token": "ContinuationToken", + "limit_key": "MaxDirectoryBuckets", + "output_token": "ContinuationToken", + "result_key": "Buckets" + }, "ListMultipartUploads": { "input_token": [ "KeyMarker", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -11,6 +11,85 @@ "uid":"s3control-2018-08-20" }, "operations":{ + "AssociateAccessGrantsIdentityCenter":{ + "name":"AssociateAccessGrantsIdentityCenter", + "http":{ + "method":"POST", + "requestUri":"/v20180820/accessgrantsinstance/identitycenter" + }, + "input":{ + "shape":"AssociateAccessGrantsIdentityCenterRequest", + "locationName":"AssociateAccessGrantsIdentityCenterRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "CreateAccessGrant":{ + "name":"CreateAccessGrant", + "http":{ + "method":"POST", + "requestUri":"/v20180820/accessgrantsinstance/grant" + }, + "input":{ + "shape":"CreateAccessGrantRequest", + "locationName":"CreateAccessGrantRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"CreateAccessGrantResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "CreateAccessGrantsInstance":{ + "name":"CreateAccessGrantsInstance", + "http":{ + "method":"POST", + "requestUri":"/v20180820/accessgrantsinstance" + }, + "input":{ + "shape":"CreateAccessGrantsInstanceRequest", + "locationName":"CreateAccessGrantsInstanceRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"CreateAccessGrantsInstanceResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "CreateAccessGrantsLocation":{ + "name":"CreateAccessGrantsLocation", + "http":{ + "method":"POST", + "requestUri":"/v20180820/accessgrantsinstance/location" + }, + "input":{ + "shape":"CreateAccessGrantsLocationRequest", + "locationName":"CreateAccessGrantsLocationRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"CreateAccessGrantsLocationResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "CreateAccessPoint":{ "name":"CreateAccessPoint", "http":{ @@ -108,6 +187,85 @@ "RequiresAccountId":{"value":true} } }, + "CreateStorageLensGroup":{ + "name":"CreateStorageLensGroup", + "http":{ + "method":"POST", + "requestUri":"/v20180820/storagelensgroup", + "responseCode":204 + }, + "input":{ + "shape":"CreateStorageLensGroupRequest", + "locationName":"CreateStorageLensGroupRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "DeleteAccessGrant":{ + "name":"DeleteAccessGrant", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/accessgrantsinstance/grant/{id}" + }, + "input":{"shape":"DeleteAccessGrantRequest"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "DeleteAccessGrantsInstance":{ + "name":"DeleteAccessGrantsInstance", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/accessgrantsinstance" + }, + "input":{"shape":"DeleteAccessGrantsInstanceRequest"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "DeleteAccessGrantsInstanceResourcePolicy":{ + "name":"DeleteAccessGrantsInstanceResourcePolicy", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/accessgrantsinstance/resourcepolicy" + }, + "input":{"shape":"DeleteAccessGrantsInstanceResourcePolicyRequest"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "DeleteAccessGrantsLocation":{ + "name":"DeleteAccessGrantsLocation", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/accessgrantsinstance/location/{id}" + }, + "input":{"shape":"DeleteAccessGrantsLocationRequest"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "DeleteAccessPoint":{ "name":"DeleteAccessPoint", "http":{ @@ -318,6 +476,21 @@ "RequiresAccountId":{"value":true} } }, + "DeleteStorageLensGroup":{ + "name":"DeleteStorageLensGroup", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/storagelensgroup/{name}", + "responseCode":204 + }, + "input":{"shape":"DeleteStorageLensGroupRequest"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "DescribeJob":{ "name":"DescribeJob", "http":{ @@ -355,6 +528,101 @@ "RequiresAccountId":{"value":true} } }, + "DissociateAccessGrantsIdentityCenter":{ + "name":"DissociateAccessGrantsIdentityCenter", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/accessgrantsinstance/identitycenter" + }, + "input":{"shape":"DissociateAccessGrantsIdentityCenterRequest"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "GetAccessGrant":{ + "name":"GetAccessGrant", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/grant/{id}" + }, + "input":{"shape":"GetAccessGrantRequest"}, + "output":{"shape":"GetAccessGrantResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "GetAccessGrantsInstance":{ + "name":"GetAccessGrantsInstance", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance" + }, + "input":{"shape":"GetAccessGrantsInstanceRequest"}, + "output":{"shape":"GetAccessGrantsInstanceResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "GetAccessGrantsInstanceForPrefix":{ + "name":"GetAccessGrantsInstanceForPrefix", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/prefix" + }, + "input":{"shape":"GetAccessGrantsInstanceForPrefixRequest"}, + "output":{"shape":"GetAccessGrantsInstanceForPrefixResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "GetAccessGrantsInstanceResourcePolicy":{ + "name":"GetAccessGrantsInstanceResourcePolicy", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/resourcepolicy" + }, + "input":{"shape":"GetAccessGrantsInstanceResourcePolicyRequest"}, + "output":{"shape":"GetAccessGrantsInstanceResourcePolicyResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "GetAccessGrantsLocation":{ + "name":"GetAccessGrantsLocation", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/location/{id}" + }, + "input":{"shape":"GetAccessGrantsLocationRequest"}, + "output":{"shape":"GetAccessGrantsLocationResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "GetAccessPoint":{ "name":"GetAccessPoint", "http":{ @@ -550,6 +818,22 @@ "RequiresAccountId":{"value":true} } }, + "GetDataAccess":{ + "name":"GetDataAccess", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/dataaccess" + }, + "input":{"shape":"GetDataAccessRequest"}, + "output":{"shape":"GetDataAccessResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "GetJobTagging":{ "name":"GetJobTagging", "http":{ @@ -682,6 +966,69 @@ "RequiresAccountId":{"value":true} } }, + "GetStorageLensGroup":{ + "name":"GetStorageLensGroup", + "http":{ + "method":"GET", + "requestUri":"/v20180820/storagelensgroup/{name}" + }, + "input":{"shape":"GetStorageLensGroupRequest"}, + "output":{"shape":"GetStorageLensGroupResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "ListAccessGrants":{ + "name":"ListAccessGrants", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/grants" + }, + "input":{"shape":"ListAccessGrantsRequest"}, + "output":{"shape":"ListAccessGrantsResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "ListAccessGrantsInstances":{ + "name":"ListAccessGrantsInstances", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstances" + }, + "input":{"shape":"ListAccessGrantsInstancesRequest"}, + "output":{"shape":"ListAccessGrantsInstancesResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "ListAccessGrantsLocations":{ + "name":"ListAccessGrantsLocations", + "http":{ + "method":"GET", + "requestUri":"/v20180820/accessgrantsinstance/locations" + }, + "input":{"shape":"ListAccessGrantsLocationsRequest"}, + "output":{"shape":"ListAccessGrantsLocationsResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "ListAccessPoints":{ "name":"ListAccessPoints", "http":{ @@ -778,6 +1125,56 @@ "RequiresAccountId":{"value":true} } }, + "ListStorageLensGroups":{ + "name":"ListStorageLensGroups", + "http":{ + "method":"GET", + "requestUri":"/v20180820/storagelensgroup" + }, + "input":{"shape":"ListStorageLensGroupsRequest"}, + "output":{"shape":"ListStorageLensGroupsResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/v20180820/tags/{resourceArn+}" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "PutAccessGrantsInstanceResourcePolicy":{ + "name":"PutAccessGrantsInstanceResourcePolicy", + "http":{ + "method":"PUT", + "requestUri":"/v20180820/accessgrantsinstance/resourcepolicy" + }, + "input":{ + "shape":"PutAccessGrantsInstanceResourcePolicyRequest", + "locationName":"PutAccessGrantsInstanceResourcePolicyRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"PutAccessGrantsInstanceResourcePolicyResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "PutAccessPointConfigurationForObjectLambda":{ "name":"PutAccessPointConfigurationForObjectLambda", "http":{ @@ -1027,6 +1424,62 @@ "RequiresAccountId":{"value":true} } }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/v20180820/tags/{resourceArn+}", + "responseCode":204 + }, + "input":{ + "shape":"TagResourceRequest", + "locationName":"TagResourceRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"TagResourceResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/v20180820/tags/{resourceArn+}", + "responseCode":204 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, + "UpdateAccessGrantsLocation":{ + "name":"UpdateAccessGrantsLocation", + "http":{ + "method":"PUT", + "requestUri":"/v20180820/accessgrantsinstance/location/{id}" + }, + "input":{ + "shape":"UpdateAccessGrantsLocationRequest", + "locationName":"UpdateAccessGrantsLocationRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"UpdateAccessGrantsLocationResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } + }, "UpdateJobPriority":{ "name":"UpdateJobPriority", "http":{ @@ -1069,6 +1522,25 @@ "staticContextParams":{ "RequiresAccountId":{"value":true} } + }, + "UpdateStorageLensGroup":{ + "name":"UpdateStorageLensGroup", + "http":{ + "method":"PUT", + "requestUri":"/v20180820/storagelensgroup/{name}", + "responseCode":204 + }, + "input":{ + "shape":"UpdateStorageLensGroupRequest", + "locationName":"UpdateStorageLensGroupRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "staticContextParams":{ + "RequiresAccountId":{"value":true} + } } }, "shapes":{ @@ -1085,6 +1557,73 @@ "Owner":{"shape":"OwnerOverride"} } }, + "AccessGrantArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/grant/[a-zA-Z0-9\\-]+" + }, + "AccessGrantId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9\\-]+" + }, + "AccessGrantsInstanceArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/[a-zA-Z0-9\\-]+" + }, + "AccessGrantsInstanceId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9\\-]+" + }, + "AccessGrantsInstancesList":{ + "type":"list", + "member":{ + "shape":"ListAccessGrantsInstanceEntry", + "locationName":"AccessGrantsInstance" + } + }, + "AccessGrantsList":{ + "type":"list", + "member":{ + "shape":"ListAccessGrantEntry", + "locationName":"AccessGrant" + } + }, + "AccessGrantsLocationArn":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/location/[a-zA-Z0-9\\-]+" + }, + "AccessGrantsLocationConfiguration":{ + "type":"structure", + "members":{ + "S3SubPrefix":{"shape":"S3Prefix"} + } + }, + "AccessGrantsLocationId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9\\-]+" + }, + "AccessGrantsLocationsList":{ + "type":"list", + "member":{ + "shape":"ListAccessGrantsLocationsEntry", + "locationName":"AccessGrantsLocation" + } + }, + "AccessKeyId":{ + "type":"string", + "sensitive":true + }, "AccessPoint":{ "type":"structure", "required":[ @@ -1127,7 +1666,8 @@ "BucketLevel":{"shape":"BucketLevel"}, "AdvancedCostOptimizationMetrics":{"shape":"AdvancedCostOptimizationMetrics"}, "AdvancedDataProtectionMetrics":{"shape":"AdvancedDataProtectionMetrics"}, - "DetailedStatusCodesMetrics":{"shape":"DetailedStatusCodesMetrics"} + "DetailedStatusCodesMetrics":{"shape":"DetailedStatusCodesMetrics"}, + "StorageLensGroupLevel":{"shape":"StorageLensGroupLevel"} } }, "ActivityMetrics":{ @@ -1153,6 +1693,23 @@ "max":63, "pattern":"^[0-9a-z\\\\-]{63}" }, + "AssociateAccessGrantsIdentityCenterRequest":{ + "type":"structure", + "required":[ + "AccountId", + "IdentityCenterArn" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "IdentityCenterArn":{"shape":"IdentityCenterArn"} + } + }, "AsyncCreationTimestamp":{"type":"timestamp"}, "AsyncErrorDetails":{ "type":"structure", @@ -1310,6 +1867,99 @@ "ConfirmRemoveSelfBucketAccess":{"type":"boolean"}, "ConfirmationRequired":{"type":"boolean"}, "ContinuationToken":{"type":"string"}, + "CreateAccessGrantRequest":{ + "type":"structure", + "required":[ + "AccountId", + "AccessGrantsLocationId", + "Grantee", + "Permission" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationConfiguration":{"shape":"AccessGrantsLocationConfiguration"}, + "Grantee":{"shape":"Grantee"}, + "Permission":{"shape":"Permission"}, + "ApplicationArn":{"shape":"IdentityCenterApplicationArn"}, + "S3PrefixType":{"shape":"S3PrefixType"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateAccessGrantResult":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantId":{"shape":"AccessGrantId"}, + "AccessGrantArn":{"shape":"AccessGrantArn"}, + "Grantee":{"shape":"Grantee"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationConfiguration":{"shape":"AccessGrantsLocationConfiguration"}, + "Permission":{"shape":"Permission"}, + "ApplicationArn":{"shape":"IdentityCenterApplicationArn"}, + "GrantScope":{"shape":"S3Prefix"} + } + }, + "CreateAccessGrantsInstanceRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "IdentityCenterArn":{"shape":"IdentityCenterArn"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateAccessGrantsInstanceResult":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantsInstanceId":{"shape":"AccessGrantsInstanceId"}, + "AccessGrantsInstanceArn":{"shape":"AccessGrantsInstanceArn"}, + "IdentityCenterArn":{"shape":"IdentityCenterArn"} + } + }, + "CreateAccessGrantsLocationRequest":{ + "type":"structure", + "required":[ + "AccountId", + "LocationScope", + "IAMRoleArn" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "LocationScope":{"shape":"S3Prefix"}, + "IAMRoleArn":{"shape":"IAMRoleArn"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateAccessGrantsLocationResult":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationArn":{"shape":"AccessGrantsLocationArn"}, + "LocationScope":{"shape":"S3Prefix"}, + "IAMRoleArn":{"shape":"IAMRoleArn"} + } + }, "CreateAccessPointForObjectLambdaRequest":{ "type":"structure", "required":[ @@ -1537,11 +2187,107 @@ "RequestTokenARN":{"shape":"AsyncRequestTokenARN"} } }, + "CreateStorageLensGroupRequest":{ + "type":"structure", + "required":[ + "AccountId", + "StorageLensGroup" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "StorageLensGroup":{"shape":"StorageLensGroup"}, + "Tags":{"shape":"TagList"} + } + }, "CreationDate":{"type":"timestamp"}, "CreationTimestamp":{"type":"timestamp"}, + "Credentials":{ + "type":"structure", + "members":{ + "AccessKeyId":{"shape":"AccessKeyId"}, + "SecretAccessKey":{"shape":"SecretAccessKey"}, + "SessionToken":{"shape":"SessionToken"}, + "Expiration":{"shape":"Expiration"} + }, + "sensitive":true + }, "Date":{"type":"timestamp"}, "Days":{"type":"integer"}, "DaysAfterInitiation":{"type":"integer"}, + "DeleteAccessGrantRequest":{ + "type":"structure", + "required":[ + "AccountId", + "AccessGrantId" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "AccessGrantId":{ + "shape":"AccessGrantId", + "location":"uri", + "locationName":"id" + } + } + }, + "DeleteAccessGrantsInstanceRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, + "DeleteAccessGrantsInstanceResourcePolicyRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, + "DeleteAccessGrantsLocationRequest":{ + "type":"structure", + "required":[ + "AccountId", + "AccessGrantsLocationId" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "AccessGrantsLocationId":{ + "shape":"AccessGrantsLocationId", + "location":"uri", + "locationName":"id" + } + } + }, "DeleteAccessPointForObjectLambdaRequest":{ "type":"structure", "required":[ @@ -1873,6 +2619,27 @@ "members":{ } }, + "DeleteStorageLensGroupRequest":{ + "type":"structure", + "required":[ + "Name", + "AccountId" + ], + "members":{ + "Name":{ + "shape":"StorageLensGroupName", + "location":"uri", + "locationName":"name" + }, + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, "DescribeJobRequest":{ "type":"structure", "required":[ @@ -1946,6 +2713,25 @@ "IsEnabled":{"shape":"IsEnabled"} } }, + "DissociateAccessGrantsIdentityCenterRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, + "DurationSeconds":{ + "type":"integer", + "box":true, + "max":43200, + "min":900 + }, "EncryptionConfiguration":{ "type":"structure", "members":{ @@ -1992,6 +2778,7 @@ "Disabled" ] }, + "Expiration":{"type":"timestamp"}, "ExpirationStatus":{ "type":"string", "enum":[ @@ -2030,6 +2817,143 @@ "type":"string", "enum":["S3InventoryReport_CSV_20211130"] }, + "GetAccessGrantRequest":{ + "type":"structure", + "required":[ + "AccountId", + "AccessGrantId" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "AccessGrantId":{ + "shape":"AccessGrantId", + "location":"uri", + "locationName":"id" + } + } + }, + "GetAccessGrantResult":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantId":{"shape":"AccessGrantId"}, + "AccessGrantArn":{"shape":"AccessGrantArn"}, + "Grantee":{"shape":"Grantee"}, + "Permission":{"shape":"Permission"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationConfiguration":{"shape":"AccessGrantsLocationConfiguration"}, + "GrantScope":{"shape":"S3Prefix"}, + "ApplicationArn":{"shape":"IdentityCenterApplicationArn"} + } + }, + "GetAccessGrantsInstanceForPrefixRequest":{ + "type":"structure", + "required":[ + "AccountId", + "S3Prefix" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "S3Prefix":{ + "shape":"S3Prefix", + "location":"querystring", + "locationName":"s3prefix" + } + } + }, + "GetAccessGrantsInstanceForPrefixResult":{ + "type":"structure", + "members":{ + "AccessGrantsInstanceArn":{"shape":"AccessGrantsInstanceArn"}, + "AccessGrantsInstanceId":{"shape":"AccessGrantsInstanceId"} + } + }, + "GetAccessGrantsInstanceRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, + "GetAccessGrantsInstanceResourcePolicyRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, + "GetAccessGrantsInstanceResourcePolicyResult":{ + "type":"structure", + "members":{ + "Policy":{"shape":"PolicyDocument"}, + "Organization":{"shape":"Organization"}, + "CreatedAt":{"shape":"CreationTimestamp"} + } + }, + "GetAccessGrantsInstanceResult":{ + "type":"structure", + "members":{ + "AccessGrantsInstanceArn":{"shape":"AccessGrantsInstanceArn"}, + "AccessGrantsInstanceId":{"shape":"AccessGrantsInstanceId"}, + "IdentityCenterArn":{"shape":"IdentityCenterArn"}, + "CreatedAt":{"shape":"CreationTimestamp"} + } + }, + "GetAccessGrantsLocationRequest":{ + "type":"structure", + "required":[ + "AccountId", + "AccessGrantsLocationId" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "AccessGrantsLocationId":{ + "shape":"AccessGrantsLocationId", + "location":"uri", + "locationName":"id" + } + } + }, + "GetAccessGrantsLocationResult":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationArn":{"shape":"AccessGrantsLocationArn"}, + "LocationScope":{"shape":"S3Prefix"}, + "IAMRoleArn":{"shape":"IAMRoleArn"} + } + }, "GetAccessPointConfigurationForObjectLambdaRequest":{ "type":"structure", "required":[ @@ -2409,6 +3333,55 @@ } } }, + "GetDataAccessRequest":{ + "type":"structure", + "required":[ + "AccountId", + "Target", + "Permission" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "Target":{ + "shape":"S3Prefix", + "location":"querystring", + "locationName":"target" + }, + "Permission":{ + "shape":"Permission", + "location":"querystring", + "locationName":"permission" + }, + "DurationSeconds":{ + "shape":"DurationSeconds", + "location":"querystring", + "locationName":"durationSeconds" + }, + "Privilege":{ + "shape":"Privilege", + "location":"querystring", + "locationName":"privilege" + }, + "TargetType":{ + "shape":"S3PrefixType", + "location":"querystring", + "locationName":"targetType" + } + } + }, + "GetDataAccessResult":{ + "type":"structure", + "members":{ + "Credentials":{"shape":"Credentials"}, + "MatchedGrantTarget":{"shape":"S3Prefix"} + } + }, "GetJobTaggingRequest":{ "type":"structure", "required":[ @@ -2620,11 +3593,55 @@ "Tags":{"shape":"StorageLensTags"} } }, + "GetStorageLensGroupRequest":{ + "type":"structure", + "required":[ + "Name", + "AccountId" + ], + "members":{ + "Name":{ + "shape":"StorageLensGroupName", + "location":"uri", + "locationName":"name" + }, + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + } + } + }, + "GetStorageLensGroupResult":{ + "type":"structure", + "members":{ + "StorageLensGroup":{"shape":"StorageLensGroup"} + }, + "payload":"StorageLensGroup" + }, "GrantFullControl":{"type":"string"}, "GrantRead":{"type":"string"}, "GrantReadACP":{"type":"string"}, "GrantWrite":{"type":"string"}, "GrantWriteACP":{"type":"string"}, + "Grantee":{ + "type":"structure", + "members":{ + "GranteeType":{"shape":"GranteeType"}, + "GranteeIdentifier":{"shape":"GranteeIdentifier"} + } + }, + "GranteeIdentifier":{"type":"string"}, + "GranteeType":{ + "type":"string", + "enum":[ + "DIRECTORY_USER", + "DIRECTORY_GROUP", + "IAM" + ] + }, "IAMRoleArn":{ "type":"string", "max":2048, @@ -2639,6 +3656,18 @@ }, "exception":true }, + "IdentityCenterApplicationArn":{ + "type":"string", + "max":1224, + "min":10, + "pattern":"arn:[^:]+:sso:.*$" + }, + "IdentityCenterArn":{ + "type":"string", + "max":1224, + "min":10, + "pattern":"arn:[^:]+:sso::(\\d{12}){0,1}:instance/.*$" + }, "Include":{ "type":"structure", "members":{ @@ -2831,7 +3860,17 @@ }, "CreatedAfter":{"shape":"ObjectCreationTime"}, "CreatedBefore":{"shape":"ObjectCreationTime"}, - "ObjectReplicationStatuses":{"shape":"ReplicationStatusFilterList"} + "ObjectReplicationStatuses":{"shape":"ReplicationStatusFilterList"}, + "KeyNameConstraint":{"shape":"KeyNameConstraint"}, + "ObjectSizeGreaterThanBytes":{ + "shape":"ObjectSizeGreaterThanBytes", + "box":true + }, + "ObjectSizeLessThanBytes":{ + "shape":"ObjectSizeLessThanBytes", + "box":true + }, + "MatchAnyStorageClass":{"shape":"StorageClassList"} } }, "JobManifestLocation":{ @@ -3018,6 +4057,14 @@ "type":"long", "min":0 }, + "KeyNameConstraint":{ + "type":"structure", + "members":{ + "MatchAnyPrefix":{"shape":"NonEmptyMaxLength1024StringList"}, + "MatchAnySuffix":{"shape":"NonEmptyMaxLength1024StringList"}, + "MatchAnySubstring":{"shape":"NonEmptyMaxLength1024StringList"} + } + }, "KmsKeyArnString":{ "type":"string", "max":2000, @@ -3026,7 +4073,9 @@ "LambdaInvokeOperation":{ "type":"structure", "members":{ - "FunctionArn":{"shape":"FunctionArnString"} + "FunctionArn":{"shape":"FunctionArnString"}, + "InvocationSchemaVersion":{"shape":"NonEmptyMaxLength64String"}, + "UserArguments":{"shape":"UserArguments"} } }, "LifecycleConfiguration":{ @@ -3095,6 +4144,159 @@ "locationName":"Rule" } }, + "ListAccessGrantEntry":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantId":{"shape":"AccessGrantId"}, + "AccessGrantArn":{"shape":"AccessGrantArn"}, + "Grantee":{"shape":"Grantee"}, + "Permission":{"shape":"Permission"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationConfiguration":{"shape":"AccessGrantsLocationConfiguration"}, + "GrantScope":{"shape":"S3Prefix"}, + "ApplicationArn":{"shape":"IdentityCenterApplicationArn"} + } + }, + "ListAccessGrantsInstanceEntry":{ + "type":"structure", + "members":{ + "AccessGrantsInstanceId":{"shape":"AccessGrantsInstanceId"}, + "AccessGrantsInstanceArn":{"shape":"AccessGrantsInstanceArn"}, + "CreatedAt":{"shape":"CreationTimestamp"}, + "IdentityCenterArn":{"shape":"IdentityCenterArn"} + } + }, + "ListAccessGrantsInstancesRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "NextToken":{ + "shape":"ContinuationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListAccessGrantsInstancesResult":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"ContinuationToken"}, + "AccessGrantsInstancesList":{"shape":"AccessGrantsInstancesList"} + } + }, + "ListAccessGrantsLocationsEntry":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationArn":{"shape":"AccessGrantsLocationArn"}, + "LocationScope":{"shape":"S3Prefix"}, + "IAMRoleArn":{"shape":"IAMRoleArn"} + } + }, + "ListAccessGrantsLocationsRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "NextToken":{ + "shape":"ContinuationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "LocationScope":{ + "shape":"S3Prefix", + "location":"querystring", + "locationName":"locationscope" + } + } + }, + "ListAccessGrantsLocationsResult":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"ContinuationToken"}, + "AccessGrantsLocationsList":{"shape":"AccessGrantsLocationsList"} + } + }, + "ListAccessGrantsRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "NextToken":{ + "shape":"ContinuationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "GranteeType":{ + "shape":"GranteeType", + "location":"querystring", + "locationName":"granteetype" + }, + "GranteeIdentifier":{ + "shape":"GranteeIdentifier", + "location":"querystring", + "locationName":"granteeidentifier" + }, + "Permission":{ + "shape":"Permission", + "location":"querystring", + "locationName":"permission" + }, + "GrantScope":{ + "shape":"S3Prefix", + "location":"querystring", + "locationName":"grantscope" + }, + "ApplicationArn":{ + "shape":"IdentityCenterApplicationArn", + "location":"querystring", + "locationName":"application_arn" + } + } + }, + "ListAccessGrantsResult":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"ContinuationToken"}, + "AccessGrantsList":{"shape":"AccessGrantsList"} + } + }, "ListAccessPointsForObjectLambdaRequest":{ "type":"structure", "required":["AccountId"], @@ -3302,6 +4504,71 @@ "StorageLensConfigurationList":{"shape":"StorageLensConfigurationList"} } }, + "ListStorageLensGroupEntry":{ + "type":"structure", + "required":[ + "Name", + "StorageLensGroupArn", + "HomeRegion" + ], + "members":{ + "Name":{"shape":"StorageLensGroupName"}, + "StorageLensGroupArn":{"shape":"StorageLensGroupArn"}, + "HomeRegion":{"shape":"S3AWSRegion"} + } + }, + "ListStorageLensGroupsRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "NextToken":{ + "shape":"ContinuationToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListStorageLensGroupsResult":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"ContinuationToken"}, + "StorageLensGroupList":{"shape":"StorageLensGroupList"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":[ + "AccountId", + "ResourceArn" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "ResourceArn":{ + "shape":"S3ResourceArn", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResult":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagList"} + } + }, "Location":{"type":"string"}, "MFA":{"type":"string"}, "MFADelete":{ @@ -3323,6 +4590,41 @@ "max":512, "min":1 }, + "MatchAnyPrefix":{ + "type":"list", + "member":{ + "shape":"Prefix", + "locationName":"Prefix" + } + }, + "MatchAnySuffix":{ + "type":"list", + "member":{ + "shape":"Suffix", + "locationName":"Suffix" + } + }, + "MatchAnyTag":{ + "type":"list", + "member":{ + "shape":"S3Tag", + "locationName":"Tag" + } + }, + "MatchObjectAge":{ + "type":"structure", + "members":{ + "DaysGreaterThan":{"shape":"ObjectAgeValue"}, + "DaysLessThan":{"shape":"ObjectAgeValue"} + } + }, + "MatchObjectSize":{ + "type":"structure", + "members":{ + "BytesGreaterThan":{"shape":"ObjectSizeValue"}, + "BytesLessThan":{"shape":"ObjectSizeValue"} + } + }, "MaxLength1024String":{ "type":"string", "max":1024 @@ -3459,6 +4761,10 @@ "max":1024, "min":1 }, + "NonEmptyMaxLength1024StringList":{ + "type":"list", + "member":{"shape":"NonEmptyMaxLength1024String"} + }, "NonEmptyMaxLength2048String":{ "type":"string", "max":2048, @@ -3506,6 +4812,7 @@ }, "exception":true }, + "ObjectAgeValue":{"type":"integer"}, "ObjectCreationTime":{"type":"timestamp"}, "ObjectLambdaAccessPoint":{ "type":"structure", @@ -3637,6 +4944,7 @@ "ObjectLockEnabledForBucket":{"type":"boolean"}, "ObjectSizeGreaterThanBytes":{"type":"long"}, "ObjectSizeLessThanBytes":{"type":"long"}, + "ObjectSizeValue":{"type":"long"}, "OperationName":{ "type":"string", "enum":[ @@ -3651,6 +4959,12 @@ "S3ReplicateObject" ] }, + "Organization":{ + "type":"string", + "max":34, + "min":12, + "pattern":"^o-[a-z0-9]{10,32}$" + }, "OutputSchemaVersion":{ "type":"string", "enum":["V_1"] @@ -3659,7 +4973,20 @@ "type":"string", "enum":["Destination"] }, + "Permission":{ + "type":"string", + "enum":[ + "READ", + "WRITE", + "READWRITE" + ] + }, "Policy":{"type":"string"}, + "PolicyDocument":{ + "type":"string", + "max":350000, + "min":1 + }, "PolicyStatus":{ "type":"structure", "members":{ @@ -3685,6 +5012,13 @@ } }, "Priority":{"type":"integer"}, + "Privilege":{ + "type":"string", + "enum":[ + "Minimal", + "Default" + ] + }, "ProposedMultiRegionAccessPointPolicy":{ "type":"structure", "members":{ @@ -3713,6 +5047,32 @@ } }, "PublicAccessBlockEnabled":{"type":"boolean"}, + "PutAccessGrantsInstanceResourcePolicyRequest":{ + "type":"structure", + "required":[ + "AccountId", + "Policy" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "Policy":{"shape":"PolicyDocument"}, + "Organization":{"shape":"Organization"} + } + }, + "PutAccessGrantsInstanceResourcePolicyResult":{ + "type":"structure", + "members":{ + "Policy":{"shape":"PolicyDocument"}, + "Organization":{"shape":"Organization"}, + "CreatedAt":{"shape":"CreationTimestamp"} + } + }, "PutAccessPointConfigurationForObjectLambdaRequest":{ "type":"structure", "required":[ @@ -4376,7 +5736,7 @@ "S3CopyObjectOperation":{ "type":"structure", "members":{ - "TargetResource":{"shape":"S3BucketArnString"}, + "TargetResource":{"shape":"S3RegionalOrS3ExpressBucketArnString"}, "CannedAccessControlList":{ "shape":"S3CannedAccessControlList", "box":true @@ -4575,16 +5935,37 @@ "WRITE_ACP" ] }, + "S3Prefix":{ + "type":"string", + "max":2000, + "min":1, + "pattern":"^.+$" + }, + "S3PrefixType":{ + "type":"string", + "enum":["Object"] + }, "S3RegionalBucketArn":{ "type":"string", "max":128, "min":4 }, + "S3RegionalOrS3ExpressBucketArnString":{ + "type":"string", + "max":128, + "min":1, + "pattern":"arn:[^:]+:(s3|s3express):.*" + }, "S3ReplicateObjectOperation":{ "type":"structure", "members":{ } }, + "S3ResourceArn":{ + "type":"string", + "max":1011, + "pattern":"arn:[^:]+:s3:[^:].*" + }, "S3Retention":{ "type":"structure", "members":{ @@ -4691,6 +6072,10 @@ }, "locationName":"SSE-S3" }, + "SecretAccessKey":{ + "type":"string", + "sensitive":true + }, "SelectionCriteria":{ "type":"structure", "members":{ @@ -4699,6 +6084,10 @@ "MinStorageBytesPercentage":{"shape":"MinStorageBytesPercentage"} } }, + "SessionToken":{ + "type":"string", + "sensitive":true + }, "Setting":{"type":"boolean"}, "SourceSelectionCriteria":{ "type":"structure", @@ -4721,6 +6110,10 @@ "Disabled" ] }, + "StorageClassList":{ + "type":"list", + "member":{"shape":"S3StorageClass"} + }, "StorageLensArn":{ "type":"string", "max":1024, @@ -4780,6 +6173,97 @@ } } }, + "StorageLensGroup":{ + "type":"structure", + "required":[ + "Name", + "Filter" + ], + "members":{ + "Name":{"shape":"StorageLensGroupName"}, + "Filter":{"shape":"StorageLensGroupFilter"}, + "StorageLensGroupArn":{"shape":"StorageLensGroupArn"} + } + }, + "StorageLensGroupAndOperator":{ + "type":"structure", + "members":{ + "MatchAnyPrefix":{"shape":"MatchAnyPrefix"}, + "MatchAnySuffix":{"shape":"MatchAnySuffix"}, + "MatchAnyTag":{"shape":"MatchAnyTag"}, + "MatchObjectAge":{"shape":"MatchObjectAge"}, + "MatchObjectSize":{"shape":"MatchObjectSize"} + } + }, + "StorageLensGroupArn":{ + "type":"string", + "max":1024, + "min":4, + "pattern":"arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:storage\\-lens\\-group\\/.*" + }, + "StorageLensGroupFilter":{ + "type":"structure", + "members":{ + "MatchAnyPrefix":{"shape":"MatchAnyPrefix"}, + "MatchAnySuffix":{"shape":"MatchAnySuffix"}, + "MatchAnyTag":{"shape":"MatchAnyTag"}, + "MatchObjectAge":{"shape":"MatchObjectAge"}, + "MatchObjectSize":{"shape":"MatchObjectSize"}, + "And":{"shape":"StorageLensGroupAndOperator"}, + "Or":{"shape":"StorageLensGroupOrOperator"} + } + }, + "StorageLensGroupLevel":{ + "type":"structure", + "members":{ + "SelectionCriteria":{"shape":"StorageLensGroupLevelSelectionCriteria"} + } + }, + "StorageLensGroupLevelExclude":{ + "type":"list", + "member":{ + "shape":"StorageLensGroupArn", + "locationName":"Arn" + } + }, + "StorageLensGroupLevelInclude":{ + "type":"list", + "member":{ + "shape":"StorageLensGroupArn", + "locationName":"Arn" + } + }, + "StorageLensGroupLevelSelectionCriteria":{ + "type":"structure", + "members":{ + "Include":{"shape":"StorageLensGroupLevelInclude"}, + "Exclude":{"shape":"StorageLensGroupLevelExclude"} + } + }, + "StorageLensGroupList":{ + "type":"list", + "member":{ + "shape":"ListStorageLensGroupEntry", + "locationName":"StorageLensGroup" + }, + "flattened":true + }, + "StorageLensGroupName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9\\-\\_]+" + }, + "StorageLensGroupOrOperator":{ + "type":"structure", + "members":{ + "MatchAnyPrefix":{"shape":"MatchAnyPrefix"}, + "MatchAnySuffix":{"shape":"MatchAnySuffix"}, + "MatchAnyTag":{"shape":"MatchAnyTag"}, + "MatchObjectAge":{"shape":"MatchObjectAge"}, + "MatchObjectSize":{"shape":"MatchObjectSize"} + } + }, "StorageLensPrefixLevelDelimiter":{ "type":"string", "max":1 @@ -4841,21 +6325,77 @@ "members":{ } }, + "Suffix":{"type":"string"}, "SuspendedCause":{ "type":"string", "max":1024, "min":1 }, "SuspendedDate":{"type":"timestamp"}, + "Tag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"TagKeyString"}, + "Value":{"shape":"TagValueString"} + } + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKeyString"}, + "max":50, + "min":0 + }, "TagKeyString":{ "type":"string", - "max":1024, + "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, + "TagList":{ + "type":"list", + "member":{ + "shape":"Tag", + "locationName":"Tag" + }, + "max":50, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "AccountId", + "ResourceArn", + "Tags" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "ResourceArn":{ + "shape":"S3ResourceArn", + "location":"uri", + "locationName":"resourceArn" + }, + "Tags":{"shape":"TagList"} + } + }, + "TagResourceResult":{ + "type":"structure", + "members":{ + } + }, "TagValueString":{ "type":"string", - "max":1024, + "max":256, + "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "Tagging":{ @@ -4910,6 +6450,71 @@ "DEEP_ARCHIVE" ] }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "AccountId", + "ResourceArn", + "TagKeys" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "ResourceArn":{ + "shape":"S3ResourceArn", + "location":"uri", + "locationName":"resourceArn" + }, + "TagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResult":{ + "type":"structure", + "members":{ + } + }, + "UpdateAccessGrantsLocationRequest":{ + "type":"structure", + "required":[ + "AccountId", + "AccessGrantsLocationId", + "IAMRoleArn" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "AccessGrantsLocationId":{ + "shape":"AccessGrantsLocationId", + "location":"uri", + "locationName":"id" + }, + "IAMRoleArn":{"shape":"IAMRoleArn"} + } + }, + "UpdateAccessGrantsLocationResult":{ + "type":"structure", + "members":{ + "CreatedAt":{"shape":"CreationTimestamp"}, + "AccessGrantsLocationId":{"shape":"AccessGrantsLocationId"}, + "AccessGrantsLocationArn":{"shape":"AccessGrantsLocationArn"}, + "LocationScope":{"shape":"S3Prefix"}, + "IAMRoleArn":{"shape":"IAMRoleArn"} + } + }, "UpdateJobPriorityRequest":{ "type":"structure", "required":[ @@ -4988,6 +6593,36 @@ "StatusUpdateReason":{"shape":"JobStatusUpdateReason"} } }, + "UpdateStorageLensGroupRequest":{ + "type":"structure", + "required":[ + "Name", + "AccountId", + "StorageLensGroup" + ], + "members":{ + "Name":{ + "shape":"StorageLensGroupName", + "location":"uri", + "locationName":"name" + }, + "AccountId":{ + "shape":"AccountId", + "contextParam":{"name":"AccountId"}, + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "StorageLensGroup":{"shape":"StorageLensGroup"} + } + }, + "UserArguments":{ + "type":"map", + "key":{"shape":"NonEmptyMaxLength64String"}, + "value":{"shape":"MaxLength1024String"}, + "max":10, + "min":1 + }, "VersioningConfiguration":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,70 +2,98 @@ "version": "2.0", "service": "

Amazon Web Services S3 Control provides access to Amazon S3 control plane actions.

", "operations": { - "CreateAccessPoint": "

Creates an access point and associates it with the specified bucket. For more information, see Managing Data Access with Amazon S3 Access Points in the Amazon S3 User Guide.

S3 on Outposts only supports VPC-style access points.

For more information, see Accessing Amazon S3 on Outposts using virtual private cloud (VPC) only access points in the Amazon S3 User Guide.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to CreateAccessPoint:

", - "CreateAccessPointForObjectLambda": "

Creates an Object Lambda Access Point. For more information, see Transforming objects with Object Lambda Access Points in the Amazon S3 User Guide.

The following actions are related to CreateAccessPointForObjectLambda:

", + "AssociateAccessGrantsIdentityCenter": "

Associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance. Use this action if you want to create access grants for users or groups from your corporate identity directory. First, you must add your corporate identity directory to Amazon Web Services IAM Identity Center. Then, you can associate this IAM Identity Center instance with your S3 Access Grants instance.

Permissions

You must have the s3:AssociateAccessGrantsIdentityCenter permission to use this operation.

Additional Permissions

You must also have the following permissions: sso:CreateApplication, sso:PutApplicationGrant, and sso:PutApplicationAuthenticationMethod.

", + "CreateAccessGrant": "

Creates an access grant that gives a grantee access to your S3 data. The grantee can be an IAM user or role or a directory user, or group. Before you can create a grant, you must have an S3 Access Grants instance in the same Region as the S3 data. You can create an S3 Access Grants instance using the CreateAccessGrantsInstance. You must also have registered at least one S3 data location in your S3 Access Grants instance using CreateAccessGrantsLocation.

Permissions

You must have the s3:CreateAccessGrant permission to use this operation.

Additional Permissions

For any directory identity - sso:DescribeInstance and sso:DescribeApplication

For directory users - identitystore:DescribeUser

For directory groups - identitystore:DescribeGroup

", + "CreateAccessGrantsInstance": "

Creates an S3 Access Grants instance, which serves as a logical grouping for access grants. You can create one S3 Access Grants instance per Region per account.

Permissions

You must have the s3:CreateAccessGrantsInstance permission to use this operation.

Additional Permissions

To associate an IAM Identity Center instance with your S3 Access Grants instance, you must also have the sso:DescribeInstance, sso:CreateApplication, sso:PutApplicationGrant, and sso:PutApplicationAuthenticationMethod permissions.

", + "CreateAccessGrantsLocation": "

The S3 data location that you would like to register in your S3 Access Grants instance. Your S3 data must be in the same Region as your S3 Access Grants instance. The location can be one of the following:

  • The default S3 location s3://

  • A bucket - S3://<bucket-name>

  • A bucket and prefix - S3://<bucket-name>/<prefix>

When you register a location, you must include the IAM role that has permission to manage the S3 location that you are registering. Give S3 Access Grants permission to assume this role using a policy. S3 Access Grants assumes this role to manage access to the location and to vend temporary credentials to grantees or client applications.

Permissions

You must have the s3:CreateAccessGrantsLocation permission to use this operation.

Additional Permissions

You must also have the following permission for the specified IAM role: iam:PassRole

", + "CreateAccessPoint": "

This operation is not supported by directory buckets.

Creates an access point and associates it with the specified bucket. For more information, see Managing Data Access with Amazon S3 Access Points in the Amazon S3 User Guide.

S3 on Outposts only supports VPC-style access points.

For more information, see Accessing Amazon S3 on Outposts using virtual private cloud (VPC) only access points in the Amazon S3 User Guide.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to CreateAccessPoint:

", + "CreateAccessPointForObjectLambda": "

This operation is not supported by directory buckets.

Creates an Object Lambda Access Point. For more information, see Transforming objects with Object Lambda Access Points in the Amazon S3 User Guide.

The following actions are related to CreateAccessPointForObjectLambda:

", "CreateBucket": "

This action creates an Amazon S3 on Outposts bucket. To create an S3 bucket, see Create Bucket in the Amazon S3 API Reference.

Creates a new Outposts bucket. By creating the bucket, you become the bucket owner. To create an Outposts bucket, you must have S3 on Outposts. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.

Not every string is an acceptable bucket name. For information on bucket naming restrictions, see Working with Amazon S3 Buckets.

S3 on Outposts buckets support:

  • Tags

  • LifecycleConfigurations for deleting expired objects

For a complete list of restrictions and Amazon S3 feature limitations on S3 on Outposts, see Amazon S3 on Outposts Restrictions and Limitations.

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id in your API request, see the Examples section.

The following actions are related to CreateBucket for Amazon S3 on Outposts:

", - "CreateJob": "

You can use S3 Batch Operations to perform large-scale batch actions on Amazon S3 objects. Batch Operations can run a single action on lists of Amazon S3 objects that you specify. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

This action creates a S3 Batch Operations job.

Related actions include:

", - "CreateMultiRegionAccessPoint": "

Creates a Multi-Region Access Point and associates it with the specified buckets. For more information about creating Multi-Region Access Points, see Creating Multi-Region Access Points in the Amazon S3 User Guide.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

This request is asynchronous, meaning that you might receive a response before the command has completed. When this request provides a response, it provides a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation.

The following actions are related to CreateMultiRegionAccessPoint:

", - "DeleteAccessPoint": "

Deletes the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to DeleteAccessPoint:

", - "DeleteAccessPointForObjectLambda": "

Deletes the specified Object Lambda Access Point.

The following actions are related to DeleteAccessPointForObjectLambda:

", - "DeleteAccessPointPolicy": "

Deletes the access point policy for the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to DeleteAccessPointPolicy:

", - "DeleteAccessPointPolicyForObjectLambda": "

Removes the resource policy for an Object Lambda Access Point.

The following actions are related to DeleteAccessPointPolicyForObjectLambda:

", + "CreateJob": "

This operation creates an S3 Batch Operations job.

You can use S3 Batch Operations to perform large-scale batch actions on Amazon S3 objects. Batch Operations can run a single action on lists of Amazon S3 objects that you specify. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Permissions

For information about permissions required to use the Batch Operations, see Granting permissions for S3 Batch Operations in the Amazon S3 User Guide.

Related actions include:

", + "CreateMultiRegionAccessPoint": "

This operation is not supported by directory buckets.

Creates a Multi-Region Access Point and associates it with the specified buckets. For more information about creating Multi-Region Access Points, see Creating Multi-Region Access Points in the Amazon S3 User Guide.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

This request is asynchronous, meaning that you might receive a response before the command has completed. When this request provides a response, it provides a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation.

The following actions are related to CreateMultiRegionAccessPoint:

", + "CreateStorageLensGroup": "

Creates a new S3 Storage Lens group and associates it with the specified Amazon Web Services account ID. An S3 Storage Lens group is a custom grouping of objects based on prefix, suffix, object tags, object size, object age, or a combination of these filters. For each Storage Lens group that you’ve created, you can also optionally add Amazon Web Services resource tags. For more information about S3 Storage Lens groups, see Working with S3 Storage Lens groups.

To use this operation, you must have the permission to perform the s3:CreateStorageLensGroup action. If you’re trying to create a Storage Lens group with Amazon Web Services resource tags, you must also have permission to perform the s3:TagResource action. For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about Storage Lens groups errors, see List of Amazon S3 Storage Lens error codes.

", + "DeleteAccessGrant": "

Deletes the access grant from the S3 Access Grants instance. You cannot undo an access grant deletion and the grantee will no longer have access to the S3 data.

Permissions

You must have the s3:DeleteAccessGrant permission to use this operation.

", + "DeleteAccessGrantsInstance": "

Deletes your S3 Access Grants instance. You must first delete the access grants and locations before S3 Access Grants can delete the instance. See DeleteAccessGrant and DeleteAccessGrantsLocation. If you have associated an IAM Identity Center instance with your S3 Access Grants instance, you must first dissassociate the Identity Center instance from the S3 Access Grants instance before you can delete the S3 Access Grants instance. See AssociateAccessGrantsIdentityCenter and DissociateAccessGrantsIdentityCenter.

Permissions

You must have the s3:DeleteAccessGrantsInstance permission to use this operation.

", + "DeleteAccessGrantsInstanceResourcePolicy": "

Deletes the resource policy of the S3 Access Grants instance. The resource policy is used to manage cross-account access to your S3 Access Grants instance. By deleting the resource policy, you delete any cross-account permissions to your S3 Access Grants instance.

Permissions

You must have the s3:DeleteAccessGrantsInstanceResourcePolicy permission to use this operation.

", + "DeleteAccessGrantsLocation": "

Deregisters a location from your S3 Access Grants instance. You can only delete a location registration from an S3 Access Grants instance if there are no grants associated with this location. See Delete a grant for information on how to delete grants. You need to have at least one registered location in your S3 Access Grants instance in order to create access grants.

Permissions

You must have the s3:DeleteAccessGrantsLocation permission to use this operation.

", + "DeleteAccessPoint": "

This operation is not supported by directory buckets.

Deletes the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to DeleteAccessPoint:

", + "DeleteAccessPointForObjectLambda": "

This operation is not supported by directory buckets.

Deletes the specified Object Lambda Access Point.

The following actions are related to DeleteAccessPointForObjectLambda:

", + "DeleteAccessPointPolicy": "

This operation is not supported by directory buckets.

Deletes the access point policy for the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to DeleteAccessPointPolicy:

", + "DeleteAccessPointPolicyForObjectLambda": "

This operation is not supported by directory buckets.

Removes the resource policy for an Object Lambda Access Point.

The following actions are related to DeleteAccessPointPolicyForObjectLambda:

", "DeleteBucket": "

This action deletes an Amazon S3 on Outposts bucket. To delete an S3 bucket, see DeleteBucket in the Amazon S3 API Reference.

Deletes the Amazon S3 on Outposts bucket. All objects (including all object versions and delete markers) in the bucket must be deleted before the bucket itself can be deleted. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

Related Resources

", - "DeleteBucketLifecycleConfiguration": "

This action deletes an Amazon S3 on Outposts bucket's lifecycle configuration. To delete an S3 bucket's lifecycle configuration, see DeleteBucketLifecycle in the Amazon S3 API Reference.

Deletes the lifecycle configuration from the specified Outposts bucket. Amazon S3 on Outposts removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 on Outposts no longer automatically deletes any objects on the basis of rules contained in the deleted lifecycle configuration. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.

To use this action, you must have permission to perform the s3-outposts:DeleteLifecycleConfiguration action. By default, the bucket owner has this permission and the Outposts bucket owner can grant this permission to others.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

For more information about object expiration, see Elements to Describe Lifecycle Actions.

Related actions include:

", + "DeleteBucketLifecycleConfiguration": "

This action deletes an Amazon S3 on Outposts bucket's lifecycle configuration. To delete an S3 bucket's lifecycle configuration, see DeleteBucketLifecycle in the Amazon S3 API Reference.

Deletes the lifecycle configuration from the specified Outposts bucket. Amazon S3 on Outposts removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 on Outposts no longer automatically deletes any objects on the basis of rules contained in the deleted lifecycle configuration. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.

To use this operation, you must have permission to perform the s3-outposts:PutLifecycleConfiguration action. By default, the bucket owner has this permission and the Outposts bucket owner can grant this permission to others.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

For more information about object expiration, see Elements to Describe Lifecycle Actions.

Related actions include:

", "DeleteBucketPolicy": "

This action deletes an Amazon S3 on Outposts bucket policy. To delete an S3 bucket policy, see DeleteBucketPolicy in the Amazon S3 API Reference.

This implementation of the DELETE action uses the policy subresource to delete the policy of a specified Amazon S3 on Outposts bucket. If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the s3-outposts:DeleteBucketPolicy permissions on the specified Outposts bucket and belong to the bucket owner's account to use this action. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.

For more information about bucket policies, see Using Bucket Policies and User Policies.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to DeleteBucketPolicy:

", "DeleteBucketReplication": "

This operation deletes an Amazon S3 on Outposts bucket's replication configuration. To delete an S3 bucket's replication configuration, see DeleteBucketReplication in the Amazon S3 API Reference.

Deletes the replication configuration from the specified S3 on Outposts bucket.

To use this operation, you must have permissions to perform the s3-outposts:PutReplicationConfiguration action. The Outposts bucket owner has this permission by default and can grant it to others. For more information about permissions, see Setting up IAM with S3 on Outposts and Managing access to S3 on Outposts buckets in the Amazon S3 User Guide.

It can take a while to propagate PUT or DELETE requests for a replication configuration to all S3 on Outposts systems. Therefore, the replication configuration that's returned by a GET request soon after a PUT or DELETE request might return a more recent result than what's on the Outpost. If an Outpost is offline, the delay in updating the replication configuration on that Outpost can be significant.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

For information about S3 replication on Outposts configuration, see Replicating objects for S3 on Outposts in the Amazon S3 User Guide.

The following operations are related to DeleteBucketReplication:

", "DeleteBucketTagging": "

This action deletes an Amazon S3 on Outposts bucket's tags. To delete an S3 bucket tags, see DeleteBucketTagging in the Amazon S3 API Reference.

Deletes the tags from the Outposts bucket. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.

To use this action, you must have permission to perform the PutBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to DeleteBucketTagging:

", - "DeleteJobTagging": "

Removes the entire tag set from the specified S3 Batch Operations job. To use the DeleteJobTagging operation, you must have permission to perform the s3:DeleteJobTagging action. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.

Related actions include:

", - "DeleteMultiRegionAccessPoint": "

Deletes a Multi-Region Access Point. This action does not delete the buckets associated with the Multi-Region Access Point, only the Multi-Region Access Point itself.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

This request is asynchronous, meaning that you might receive a response before the command has completed. When this request provides a response, it provides a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation.

The following actions are related to DeleteMultiRegionAccessPoint:

", - "DeletePublicAccessBlock": "

Removes the PublicAccessBlock configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.

Related actions include:

", - "DeleteStorageLensConfiguration": "

Deletes the Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:DeleteStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "DeleteStorageLensConfigurationTagging": "

Deletes the Amazon S3 Storage Lens configuration tags. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:DeleteStorageLensConfigurationTagging action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "DescribeJob": "

Retrieves the configuration parameters and status for a Batch Operations job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Related actions include:

", - "DescribeMultiRegionAccessPointOperation": "

Retrieves the status of an asynchronous request to manage a Multi-Region Access Point. For more information about managing Multi-Region Access Points and how asynchronous requests work, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPoint:

", - "GetAccessPoint": "

Returns configuration information about the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to GetAccessPoint:

", - "GetAccessPointConfigurationForObjectLambda": "

Returns configuration for an Object Lambda Access Point.

The following actions are related to GetAccessPointConfigurationForObjectLambda:

", - "GetAccessPointForObjectLambda": "

Returns configuration information about the specified Object Lambda Access Point

The following actions are related to GetAccessPointForObjectLambda:

", - "GetAccessPointPolicy": "

Returns the access point policy associated with the specified access point.

The following actions are related to GetAccessPointPolicy:

", - "GetAccessPointPolicyForObjectLambda": "

Returns the resource policy for an Object Lambda Access Point.

The following actions are related to GetAccessPointPolicyForObjectLambda:

", - "GetAccessPointPolicyStatus": "

Indicates whether the specified access point currently has a policy that allows public access. For more information about public access through access points, see Managing Data Access with Amazon S3 access points in the Amazon S3 User Guide.

", - "GetAccessPointPolicyStatusForObjectLambda": "

Returns the status of the resource policy associated with an Object Lambda Access Point.

", - "GetBucket": "

Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the s3-outposts:GetBucket permissions on the specified Outposts bucket and belong to the Outposts bucket owner's account in order to use this action. Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket.

If you don't have s3-outposts:GetBucket permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied error.

The following actions are related to GetBucket for Amazon S3 on Outposts:

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

", + "DeleteJobTagging": "

Removes the entire tag set from the specified S3 Batch Operations job.

Permissions

To use the DeleteJobTagging operation, you must have permission to perform the s3:DeleteJobTagging action. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.

Related actions include:

", + "DeleteMultiRegionAccessPoint": "

This operation is not supported by directory buckets.

Deletes a Multi-Region Access Point. This action does not delete the buckets associated with the Multi-Region Access Point, only the Multi-Region Access Point itself.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

This request is asynchronous, meaning that you might receive a response before the command has completed. When this request provides a response, it provides a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation.

The following actions are related to DeleteMultiRegionAccessPoint:

", + "DeletePublicAccessBlock": "

This operation is not supported by directory buckets.

Removes the PublicAccessBlock configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.

Related actions include:

", + "DeleteStorageLensConfiguration": "

This operation is not supported by directory buckets.

Deletes the Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:DeleteStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "DeleteStorageLensConfigurationTagging": "

This operation is not supported by directory buckets.

Deletes the Amazon S3 Storage Lens configuration tags. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:DeleteStorageLensConfigurationTagging action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "DeleteStorageLensGroup": "

Deletes an existing S3 Storage Lens group.

To use this operation, you must have the permission to perform the s3:DeleteStorageLensGroup action. For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about Storage Lens groups errors, see List of Amazon S3 Storage Lens error codes.

", + "DescribeJob": "

Retrieves the configuration parameters and status for a Batch Operations job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Permissions

To use the DescribeJob operation, you must have permission to perform the s3:DescribeJob action.

Related actions include:

", + "DescribeMultiRegionAccessPointOperation": "

This operation is not supported by directory buckets.

Retrieves the status of an asynchronous request to manage a Multi-Region Access Point. For more information about managing Multi-Region Access Points and how asynchronous requests work, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPoint:

", + "DissociateAccessGrantsIdentityCenter": "

Dissociates the Amazon Web Services IAM Identity Center instance from the S3 Access Grants instance.

Permissions

You must have the s3:DissociateAccessGrantsIdentityCenter permission to use this operation.

Additional Permissions

You must have the sso:DeleteApplication permission to use this operation.

", + "GetAccessGrant": "

Get the details of an access grant from your S3 Access Grants instance.

Permissions

You must have the s3:GetAccessGrant permission to use this operation.

", + "GetAccessGrantsInstance": "

Retrieves the S3 Access Grants instance for a Region in your account.

Permissions

You must have the s3:GetAccessGrantsInstance permission to use this operation.

", + "GetAccessGrantsInstanceForPrefix": "

Retrieve the S3 Access Grants instance that contains a particular prefix.

Permissions

You must have the s3:GetAccessGrantsInstanceForPrefix permission for the caller account to use this operation.

Additional Permissions

The prefix owner account must grant you the following permissions to their S3 Access Grants instance: s3:GetAccessGrantsInstanceForPrefix.

", + "GetAccessGrantsInstanceResourcePolicy": "

Returns the resource policy of the S3 Access Grants instance.

Permissions

You must have the s3:GetAccessGrantsInstanceResourcePolicy permission to use this operation.

", + "GetAccessGrantsLocation": "

Retrieves the details of a particular location registered in your S3 Access Grants instance.

Permissions

You must have the s3:GetAccessGrantsLocation permission to use this operation.

", + "GetAccessPoint": "

This operation is not supported by directory buckets.

Returns configuration information about the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to GetAccessPoint:

", + "GetAccessPointConfigurationForObjectLambda": "

This operation is not supported by directory buckets.

Returns configuration for an Object Lambda Access Point.

The following actions are related to GetAccessPointConfigurationForObjectLambda:

", + "GetAccessPointForObjectLambda": "

This operation is not supported by directory buckets.

Returns configuration information about the specified Object Lambda Access Point

The following actions are related to GetAccessPointForObjectLambda:

", + "GetAccessPointPolicy": "

This operation is not supported by directory buckets.

Returns the access point policy associated with the specified access point.

The following actions are related to GetAccessPointPolicy:

", + "GetAccessPointPolicyForObjectLambda": "

This operation is not supported by directory buckets.

Returns the resource policy for an Object Lambda Access Point.

The following actions are related to GetAccessPointPolicyForObjectLambda:

", + "GetAccessPointPolicyStatus": "

This operation is not supported by directory buckets.

Indicates whether the specified access point currently has a policy that allows public access. For more information about public access through access points, see Managing Data Access with Amazon S3 access points in the Amazon S3 User Guide.

", + "GetAccessPointPolicyStatusForObjectLambda": "

This operation is not supported by directory buckets.

Returns the status of the resource policy associated with an Object Lambda Access Point.

", + "GetBucket": "

Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the s3-outposts:GetBucket permissions on the specified Outposts bucket and belong to the Outposts bucket owner's account in order to use this action. Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket.

If you don't have s3-outposts:GetBucket permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied error.

The following actions are related to GetBucket for Amazon S3 on Outposts:

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

", "GetBucketLifecycleConfiguration": "

This action gets an Amazon S3 on Outposts bucket's lifecycle configuration. To get an S3 bucket's lifecycle configuration, see GetBucketLifecycleConfiguration in the Amazon S3 API Reference.

Returns the lifecycle configuration information set on the Outposts bucket. For more information, see Using Amazon S3 on Outposts and for information about lifecycle configuration, see Object Lifecycle Management in Amazon S3 User Guide.

To use this action, you must have permission to perform the s3-outposts:GetLifecycleConfiguration action. The Outposts bucket owner has this permission, by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

GetBucketLifecycleConfiguration has the following special error:

  • Error code: NoSuchLifecycleConfiguration

    • Description: The lifecycle configuration does not exist.

    • HTTP Status Code: 404 Not Found

    • SOAP Fault Code Prefix: Client

The following actions are related to GetBucketLifecycleConfiguration:

", "GetBucketPolicy": "

This action gets a bucket policy for an Amazon S3 on Outposts bucket. To get a policy for an S3 bucket, see GetBucketPolicy in the Amazon S3 API Reference.

Returns the policy of a specified Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the GetBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this action.

Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied error.

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.

For more information about bucket policies, see Using Bucket Policies and User Policies.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to GetBucketPolicy:

", "GetBucketReplication": "

This operation gets an Amazon S3 on Outposts bucket's replication configuration. To get an S3 bucket's replication configuration, see GetBucketReplication in the Amazon S3 API Reference.

Returns the replication configuration of an S3 on Outposts bucket. For more information about S3 on Outposts, see Using Amazon S3 on Outposts in the Amazon S3 User Guide. For information about S3 replication on Outposts configuration, see Replicating objects for S3 on Outposts in the Amazon S3 User Guide.

It can take a while to propagate PUT or DELETE requests for a replication configuration to all S3 on Outposts systems. Therefore, the replication configuration that's returned by a GET request soon after a PUT or DELETE request might return a more recent result than what's on the Outpost. If an Outpost is offline, the delay in updating the replication configuration on that Outpost can be significant.

This action requires permissions for the s3-outposts:GetReplicationConfiguration action. The Outposts bucket owner has this permission by default and can grant it to others. For more information about permissions, see Setting up IAM with S3 on Outposts and Managing access to S3 on Outposts bucket in the Amazon S3 User Guide.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

If you include the Filter element in a replication configuration, you must also include the DeleteMarkerReplication, Status, and Priority elements. The response also returns those elements.

For information about S3 on Outposts replication failure reasons, see Replication failure reasons in the Amazon S3 User Guide.

The following operations are related to GetBucketReplication:

", "GetBucketTagging": "

This action gets an Amazon S3 on Outposts bucket's tags. To get an S3 bucket tags, see GetBucketTagging in the Amazon S3 API Reference.

Returns the tag set associated with the Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

To use this action, you must have permission to perform the GetBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others.

GetBucketTagging has the following special error:

  • Error code: NoSuchTagSetError

    • Description: There is no tag set associated with the bucket.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to GetBucketTagging:

", "GetBucketVersioning": "

This operation returns the versioning state for S3 on Outposts buckets only. To return the versioning state for an S3 bucket, see GetBucketVersioning in the Amazon S3 API Reference.

Returns the versioning state for an S3 on Outposts bucket. With S3 Versioning, you can save multiple distinct copies of your objects and recover from unintended user actions and application failures.

If you've never set versioning on your bucket, it has no versioning state. In that case, the GetBucketVersioning request does not return a versioning state value.

For more information about versioning, see Versioning in the Amazon S3 User Guide.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following operations are related to GetBucketVersioning for S3 on Outposts.

", - "GetJobTagging": "

Returns the tags on an S3 Batch Operations job. To use the GetJobTagging operation, you must have permission to perform the s3:GetJobTagging action. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.

Related actions include:

", - "GetMultiRegionAccessPoint": "

Returns configuration information about the specified Multi-Region Access Point.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPoint:

", - "GetMultiRegionAccessPointPolicy": "

Returns the access control policy of the specified Multi-Region Access Point.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPointPolicy:

", - "GetMultiRegionAccessPointPolicyStatus": "

Indicates whether the specified Multi-Region Access Point has an access control policy that allows public access.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPointPolicyStatus:

", - "GetMultiRegionAccessPointRoutes": "

Returns the routing configuration for a Multi-Region Access Point, indicating which Regions are active or passive.

To obtain routing control changes and failover requests, use the Amazon S3 failover control infrastructure endpoints in these five Amazon Web Services Regions:

  • us-east-1

  • us-west-2

  • ap-southeast-2

  • ap-northeast-1

  • eu-west-1

Your Amazon S3 bucket does not need to be in these five Regions.

", - "GetPublicAccessBlock": "

Retrieves the PublicAccessBlock configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.

Related actions include:

", - "GetStorageLensConfiguration": "

Gets the Amazon S3 Storage Lens configuration. For more information, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:GetStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "GetStorageLensConfigurationTagging": "

Gets the tags of Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:GetStorageLensConfigurationTagging action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "ListAccessPoints": "

Returns a list of the access points that are owned by the current account that's associated with the specified bucket. You can retrieve up to 1000 access points per call. If the specified bucket has more than 1,000 access points (or the number specified in maxResults, whichever is less), the response will include a continuation token that you can use to list the additional access points.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to ListAccessPoints:

", - "ListAccessPointsForObjectLambda": "

Returns some or all (up to 1,000) access points associated with the Object Lambda Access Point per call. If there are more access points than what can be returned in one call, the response will include a continuation token that you can use to list the additional access points.

The following actions are related to ListAccessPointsForObjectLambda:

", - "ListJobs": "

Lists current S3 Batch Operations jobs and jobs that have ended within the last 30 days for the Amazon Web Services account making the request. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Related actions include:

", - "ListMultiRegionAccessPoints": "

Returns a list of the Multi-Region Access Points currently associated with the specified Amazon Web Services account. Each call can return up to 100 Multi-Region Access Points, the maximum number of Multi-Region Access Points that can be associated with a single account.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to ListMultiRegionAccessPoint:

", - "ListRegionalBuckets": "

Returns a list of all Outposts buckets in an Outpost that are owned by the authenticated sender of the request. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id in your request, see the Examples section.

", - "ListStorageLensConfigurations": "

Gets a list of Amazon S3 Storage Lens configurations. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:ListStorageLensConfigurations action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "PutAccessPointConfigurationForObjectLambda": "

Replaces configuration for an Object Lambda Access Point.

The following actions are related to PutAccessPointConfigurationForObjectLambda:

", - "PutAccessPointPolicy": "

Associates an access policy with the specified access point. Each access point can have only one policy, so a request made to this API replaces any existing policy associated with the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to PutAccessPointPolicy:

", - "PutAccessPointPolicyForObjectLambda": "

Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see Creating Object Lambda Access Points in the Amazon S3 User Guide.

The following actions are related to PutAccessPointPolicyForObjectLambda:

", + "GetDataAccess": "

Returns a temporary access credential from S3 Access Grants to the grantee or client application. The temporary credential is an Amazon Web Services STS token that grants them access to the S3 data.

Permissions

You must have the s3:GetDataAccess permission to use this operation.

Additional Permissions

The IAM role that S3 Access Grants assumes must have the following permissions specified in the trust policy when registering the location: sts:AssumeRole, for directory users or groups sts:SetContext, and for IAM users or roles sts:SourceIdentity.

", + "GetJobTagging": "

Returns the tags on an S3 Batch Operations job.

Permissions

To use the GetJobTagging operation, you must have permission to perform the s3:GetJobTagging action. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.

Related actions include:

", + "GetMultiRegionAccessPoint": "

This operation is not supported by directory buckets.

Returns configuration information about the specified Multi-Region Access Point.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPoint:

", + "GetMultiRegionAccessPointPolicy": "

This operation is not supported by directory buckets.

Returns the access control policy of the specified Multi-Region Access Point.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPointPolicy:

", + "GetMultiRegionAccessPointPolicyStatus": "

This operation is not supported by directory buckets.

Indicates whether the specified Multi-Region Access Point has an access control policy that allows public access.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to GetMultiRegionAccessPointPolicyStatus:

", + "GetMultiRegionAccessPointRoutes": "

This operation is not supported by directory buckets.

Returns the routing configuration for a Multi-Region Access Point, indicating which Regions are active or passive.

To obtain routing control changes and failover requests, use the Amazon S3 failover control infrastructure endpoints in these five Amazon Web Services Regions:

  • us-east-1

  • us-west-2

  • ap-southeast-2

  • ap-northeast-1

  • eu-west-1

Your Amazon S3 bucket does not need to be in these five Regions.

", + "GetPublicAccessBlock": "

This operation is not supported by directory buckets.

Retrieves the PublicAccessBlock configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.

Related actions include:

", + "GetStorageLensConfiguration": "

This operation is not supported by directory buckets.

Gets the Amazon S3 Storage Lens configuration. For more information, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:GetStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "GetStorageLensConfigurationTagging": "

This operation is not supported by directory buckets.

Gets the tags of Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:GetStorageLensConfigurationTagging action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "GetStorageLensGroup": "

Retrieves the Storage Lens group configuration details.

To use this operation, you must have the permission to perform the s3:GetStorageLensGroup action. For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about Storage Lens groups errors, see List of Amazon S3 Storage Lens error codes.

", + "ListAccessGrants": "

Returns the list of access grants in your S3 Access Grants instance.

Permissions

You must have the s3:ListAccessGrants permission to use this operation.

", + "ListAccessGrantsInstances": "

Returns a list of S3 Access Grants instances. An S3 Access Grants instance serves as a logical grouping for your individual access grants. You can only have one S3 Access Grants instance per Region per account.

Permissions

You must have the s3:ListAccessGrantsInstances permission to use this operation.

", + "ListAccessGrantsLocations": "

Returns a list of the locations registered in your S3 Access Grants instance.

Permissions

You must have the s3:ListAccessGrantsLocations permission to use this operation.

", + "ListAccessPoints": "

This operation is not supported by directory buckets.

Returns a list of the access points that are owned by the current account that's associated with the specified bucket. You can retrieve up to 1000 access points per call. If the specified bucket has more than 1,000 access points (or the number specified in maxResults, whichever is less), the response will include a continuation token that you can use to list the additional access points.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to ListAccessPoints:

", + "ListAccessPointsForObjectLambda": "

This operation is not supported by directory buckets.

Returns some or all (up to 1,000) access points associated with the Object Lambda Access Point per call. If there are more access points than what can be returned in one call, the response will include a continuation token that you can use to list the additional access points.

The following actions are related to ListAccessPointsForObjectLambda:

", + "ListJobs": "

Lists current S3 Batch Operations jobs as well as the jobs that have ended within the last 30 days for the Amazon Web Services account making the request. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Permissions

To use the ListJobs operation, you must have permission to perform the s3:ListJobs action.

Related actions include:

", + "ListMultiRegionAccessPoints": "

This operation is not supported by directory buckets.

Returns a list of the Multi-Region Access Points currently associated with the specified Amazon Web Services account. Each call can return up to 100 Multi-Region Access Points, the maximum number of Multi-Region Access Points that can be associated with a single account.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to ListMultiRegionAccessPoint:

", + "ListRegionalBuckets": "

This operation is not supported by directory buckets.

Returns a list of all Outposts buckets in an Outpost that are owned by the authenticated sender of the request. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id in your request, see the Examples section.

", + "ListStorageLensConfigurations": "

This operation is not supported by directory buckets.

Gets a list of Amazon S3 Storage Lens configurations. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:ListStorageLensConfigurations action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "ListStorageLensGroups": "

Lists all the Storage Lens groups in the specified home Region.

To use this operation, you must have the permission to perform the s3:ListStorageLensGroups action. For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about Storage Lens groups errors, see List of Amazon S3 Storage Lens error codes.

", + "ListTagsForResource": "

This operation allows you to list all the Amazon Web Services resource tags for a specified resource. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources.

Permissions

You must have the s3:ListTagsForResource permission to use this operation.

This operation is only supported for S3 Storage Lens groups and for S3 Access Grants. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant.

For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about S3 Tagging errors, see List of Amazon S3 Tagging error codes.

", + "PutAccessGrantsInstanceResourcePolicy": "

Updates the resource policy of the S3 Access Grants instance.

Permissions

You must have the s3:PutAccessGrantsInstanceResourcePolicy permission to use this operation.

", + "PutAccessPointConfigurationForObjectLambda": "

This operation is not supported by directory buckets.

Replaces configuration for an Object Lambda Access Point.

The following actions are related to PutAccessPointConfigurationForObjectLambda:

", + "PutAccessPointPolicy": "

This operation is not supported by directory buckets.

Associates an access policy with the specified access point. Each access point can have only one policy, so a request made to this API replaces any existing policy associated with the specified access point.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to PutAccessPointPolicy:

", + "PutAccessPointPolicyForObjectLambda": "

This operation is not supported by directory buckets.

Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see Creating Object Lambda Access Points in the Amazon S3 User Guide.

The following actions are related to PutAccessPointPolicyForObjectLambda:

", "PutBucketLifecycleConfiguration": "

This action puts a lifecycle configuration to an Amazon S3 on Outposts bucket. To put a lifecycle configuration to an S3 bucket, see PutBucketLifecycleConfiguration in the Amazon S3 API Reference.

Creates a new lifecycle configuration for the S3 on Outposts bucket or replaces an existing lifecycle configuration. Outposts buckets only support lifecycle configurations that delete/expire objects after a certain period of time and abort incomplete multipart uploads.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to PutBucketLifecycleConfiguration:

", "PutBucketPolicy": "

This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an S3 bucket, see PutBucketPolicy in the Amazon S3 API Reference.

Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the PutBucketPolicy permissions on the specified Outposts bucket and belong to the bucket owner's account in order to use this action.

If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed error.

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.

For more information about bucket policies, see Using Bucket Policies and User Policies.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to PutBucketPolicy:

", "PutBucketReplication": "

This action creates an Amazon S3 on Outposts bucket's replication configuration. To create an S3 bucket's replication configuration, see PutBucketReplication in the Amazon S3 API Reference.

Creates a replication configuration or replaces an existing one. For information about S3 replication on Outposts configuration, see Replicating objects for S3 on Outposts in the Amazon S3 User Guide.

It can take a while to propagate PUT or DELETE requests for a replication configuration to all S3 on Outposts systems. Therefore, the replication configuration that's returned by a GET request soon after a PUT or DELETE request might return a more recent result than what's on the Outpost. If an Outpost is offline, the delay in updating the replication configuration on that Outpost can be significant.

Specify the replication configuration in the request body. In the replication configuration, you provide the following information:

  • The name of the destination bucket or buckets where you want S3 on Outposts to replicate objects

  • The Identity and Access Management (IAM) role that S3 on Outposts can assume to replicate objects on your behalf

  • Other relevant information, such as replication rules

A replication configuration must include at least one rule and can contain a maximum of 100. Each rule identifies a subset of objects to replicate by filtering the objects in the source Outposts bucket. To choose additional subsets of objects to replicate, add a rule for each subset.

To specify a subset of the objects in the source Outposts bucket to apply a replication rule to, add the Filter element as a child of the Rule element. You can filter objects based on an object key prefix, one or more object tags, or both. When you add the Filter element in the configuration, you must also add the following elements: DeleteMarkerReplication, Status, and Priority.

Using PutBucketReplication on Outposts requires that both the source and destination buckets must have versioning enabled. For information about enabling versioning on a bucket, see Managing S3 Versioning for your S3 on Outposts bucket.

For information about S3 on Outposts replication failure reasons, see Replication failure reasons in the Amazon S3 User Guide.

Handling Replication of Encrypted Objects

Outposts buckets are encrypted at all times. All the objects in the source Outposts bucket are encrypted and can be replicated. Also, all the replicas in the destination Outposts bucket are encrypted with the same encryption key as the objects in the source Outposts bucket.

Permissions

To create a PutBucketReplication request, you must have s3-outposts:PutReplicationConfiguration permissions for the bucket. The Outposts bucket owner has this permission by default and can grant it to others. For more information about permissions, see Setting up IAM with S3 on Outposts and Managing access to S3 on Outposts buckets.

To perform this operation, the user or role must also have the iam:CreateRole and iam:PassRole permissions. For more information, see Granting a user permissions to pass a role to an Amazon Web Services service.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following operations are related to PutBucketReplication:

", "PutBucketTagging": "

This action puts tags on an Amazon S3 on Outposts bucket. To put tags on an S3 bucket, see PutBucketTagging in the Amazon S3 API Reference.

Sets the tags for an S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this, sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost of combined resources, organize your billing information according to resources with the same tag key values. For example, you can tag several resources with a specific application name, and then organize your billing information to see the total cost of that application across several services. For more information, see Cost allocation and tagging.

Within a bucket, if you add a tag that has the same key as an existing tag, the new value overwrites the old value. For more information, see Using cost allocation in Amazon S3 bucket tags.

To use this action, you must have permissions to perform the s3-outposts:PutBucketTagging action. The Outposts bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing access permissions to your Amazon S3 resources.

PutBucketTagging has the following special errors:

  • Error code: InvalidTagError

  • Error code: MalformedXMLError

    • Description: The XML provided does not match the schema.

  • Error code: OperationAbortedError

    • Description: A conflicting conditional action is currently in progress against this resource. Try again.

  • Error code: InternalError

    • Description: The service was unable to apply the provided tag to the bucket.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following actions are related to PutBucketTagging:

", "PutBucketVersioning": "

This operation sets the versioning state for S3 on Outposts buckets only. To set the versioning state for an S3 bucket, see PutBucketVersioning in the Amazon S3 API Reference.

Sets the versioning state for an S3 on Outposts bucket. With S3 Versioning, you can save multiple distinct copies of your objects and recover from unintended user actions and application failures.

You can set the versioning state to one of the following:

  • Enabled - Enables versioning for the objects in the bucket. All objects added to the bucket receive a unique version ID.

  • Suspended - Suspends versioning for the objects in the bucket. All objects added to the bucket receive the version ID null.

If you've never set versioning on your bucket, it has no versioning state. In that case, a GetBucketVersioning request does not return a versioning state value.

When you enable S3 Versioning, for each object in your bucket, you have a current version and zero or more noncurrent versions. You can configure your bucket S3 Lifecycle rules to expire noncurrent versions after a specified time period. For more information, see Creating and managing a lifecycle configuration for your S3 on Outposts bucket in the Amazon S3 User Guide.

If you have an object expiration lifecycle configuration in your non-versioned bucket and you want to maintain the same permanent delete behavior when you enable versioning, you must add a noncurrent expiration policy. The noncurrent expiration lifecycle configuration will manage the deletes of the noncurrent object versions in the version-enabled bucket. For more information, see Versioning in the Amazon S3 User Guide.

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

The following operations are related to PutBucketVersioning for S3 on Outposts.

", - "PutJobTagging": "

Sets the supplied tag-set on an S3 Batch Operations job.

A tag is a key-value pair. You can associate S3 Batch Operations tags with any job by sending a PUT request against the tagging subresource that is associated with the job. To modify the existing tag set, you can either replace the existing tag set entirely, or make changes within the existing tag set by retrieving the existing tag set using GetJobTagging, modify that tag set, and use this action to replace the tag set with the one you modified. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.

  • If you send this request with an empty tag set, Amazon S3 deletes the existing tag set on the Batch Operations job. If you use this method, you are charged for a Tier 1 Request (PUT). For more information, see Amazon S3 pricing.

  • For deleting existing tags for your Batch Operations job, a DeleteJobTagging request is preferred because it achieves the same result without incurring charges.

  • A few things to consider about using tags:

    • Amazon S3 limits the maximum number of tags to 50 tags per job.

    • You can associate up to 50 tags with a job as long as they have unique tag keys.

    • A tag key can be up to 128 Unicode characters in length, and tag values can be up to 256 Unicode characters in length.

    • The key and values are case sensitive.

    • For tagging-related restrictions related to characters and encodings, see User-Defined Tag Restrictions in the Billing and Cost Management User Guide.

To use the PutJobTagging operation, you must have permission to perform the s3:PutJobTagging action.

Related actions include:

", - "PutMultiRegionAccessPointPolicy": "

Associates an access control policy with the specified Multi-Region Access Point. Each Multi-Region Access Point can have only one policy, so a request made to this action replaces any existing policy that is associated with the specified Multi-Region Access Point.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to PutMultiRegionAccessPointPolicy:

", - "PutPublicAccessBlock": "

Creates or modifies the PublicAccessBlock configuration for an Amazon Web Services account. For this operation, users must have the s3:PutAccountPublicAccessBlock permission. For more information, see Using Amazon S3 block public access.

Related actions include:

", - "PutStorageLensConfiguration": "

Puts an Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Working with Amazon S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:PutStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "PutStorageLensConfigurationTagging": "

Put or replace tags on an existing Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:PutStorageLensConfigurationTagging action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", - "SubmitMultiRegionAccessPointRoutes": "

Submits an updated route configuration for a Multi-Region Access Point. This API operation updates the routing status for the specified Regions from active to passive, or from passive to active. A value of 0 indicates a passive status, which means that traffic won't be routed to the specified Region. A value of 100 indicates an active status, which means that traffic will be routed to the specified Region. At least one Region must be active at all times.

When the routing configuration is changed, any in-progress operations (uploads, copies, deletes, and so on) to formerly active Regions will continue to run to their final completion state (success or failure). The routing configurations of any Regions that aren’t specified remain unchanged.

Updated routing configurations might not be immediately applied. It can take up to 2 minutes for your changes to take effect.

To submit routing control changes and failover requests, use the Amazon S3 failover control infrastructure endpoints in these five Amazon Web Services Regions:

  • us-east-1

  • us-west-2

  • ap-southeast-2

  • ap-northeast-1

  • eu-west-1

Your Amazon S3 bucket does not need to be in these five Regions.

", - "UpdateJobPriority": "

Updates an existing S3 Batch Operations job's priority. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Related actions include:

", - "UpdateJobStatus": "

Updates the status for the specified job. Use this action to confirm that you want to run a job or to cancel an existing job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Related actions include:

" + "PutJobTagging": "

Sets the supplied tag-set on an S3 Batch Operations job.

A tag is a key-value pair. You can associate S3 Batch Operations tags with any job by sending a PUT request against the tagging subresource that is associated with the job. To modify the existing tag set, you can either replace the existing tag set entirely, or make changes within the existing tag set by retrieving the existing tag set using GetJobTagging, modify that tag set, and use this operation to replace the tag set with the one you modified. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.

  • If you send this request with an empty tag set, Amazon S3 deletes the existing tag set on the Batch Operations job. If you use this method, you are charged for a Tier 1 Request (PUT). For more information, see Amazon S3 pricing.

  • For deleting existing tags for your Batch Operations job, a DeleteJobTagging request is preferred because it achieves the same result without incurring charges.

  • A few things to consider about using tags:

    • Amazon S3 limits the maximum number of tags to 50 tags per job.

    • You can associate up to 50 tags with a job as long as they have unique tag keys.

    • A tag key can be up to 128 Unicode characters in length, and tag values can be up to 256 Unicode characters in length.

    • The key and values are case sensitive.

    • For tagging-related restrictions related to characters and encodings, see User-Defined Tag Restrictions in the Billing and Cost Management User Guide.

Permissions

To use the PutJobTagging operation, you must have permission to perform the s3:PutJobTagging action.

Related actions include:

", + "PutMultiRegionAccessPointPolicy": "

This operation is not supported by directory buckets.

Associates an access control policy with the specified Multi-Region Access Point. Each Multi-Region Access Point can have only one policy, so a request made to this action replaces any existing policy that is associated with the specified Multi-Region Access Point.

This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.

The following actions are related to PutMultiRegionAccessPointPolicy:

", + "PutPublicAccessBlock": "

This operation is not supported by directory buckets.

Creates or modifies the PublicAccessBlock configuration for an Amazon Web Services account. For this operation, users must have the s3:PutAccountPublicAccessBlock permission. For more information, see Using Amazon S3 block public access.

Related actions include:

", + "PutStorageLensConfiguration": "

This operation is not supported by directory buckets.

Puts an Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Working with Amazon S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:PutStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "PutStorageLensConfigurationTagging": "

This operation is not supported by directory buckets.

Put or replace tags on an existing Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.

To use this action, you must have permission to perform the s3:PutStorageLensConfigurationTagging action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.

", + "SubmitMultiRegionAccessPointRoutes": "

This operation is not supported by directory buckets.

Submits an updated route configuration for a Multi-Region Access Point. This API operation updates the routing status for the specified Regions from active to passive, or from passive to active. A value of 0 indicates a passive status, which means that traffic won't be routed to the specified Region. A value of 100 indicates an active status, which means that traffic will be routed to the specified Region. At least one Region must be active at all times.

When the routing configuration is changed, any in-progress operations (uploads, copies, deletes, and so on) to formerly active Regions will continue to run to their final completion state (success or failure). The routing configurations of any Regions that aren’t specified remain unchanged.

Updated routing configurations might not be immediately applied. It can take up to 2 minutes for your changes to take effect.

To submit routing control changes and failover requests, use the Amazon S3 failover control infrastructure endpoints in these five Amazon Web Services Regions:

  • us-east-1

  • us-west-2

  • ap-southeast-2

  • ap-northeast-1

  • eu-west-1

Your Amazon S3 bucket does not need to be in these five Regions.

", + "TagResource": "

Creates a new Amazon Web Services resource tag or updates an existing resource tag. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources. You can add up to 50 Amazon Web Services resource tags for each S3 resource.

This operation is only supported for S3 Storage Lens groups and for S3 Access Grants. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant.

Permissions

You must have the s3:TagResource permission to use this operation.

For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about S3 Tagging errors, see List of Amazon S3 Tagging error codes.

", + "UntagResource": "

This operation removes the specified Amazon Web Services resource tags from an S3 resource. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources.

This operation is only supported for S3 Storage Lens groups and for S3 Access Grants. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant.

Permissions

You must have the s3:UntagResource permission to use this operation.

For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about S3 Tagging errors, see List of Amazon S3 Tagging error codes.

", + "UpdateAccessGrantsLocation": "

Updates the IAM role of a registered location in your S3 Access Grants instance.

Permissions

You must have the s3:UpdateAccessGrantsLocation permission to use this operation.

Additional Permissions

You must also have the following permission: iam:PassRole

", + "UpdateJobPriority": "

Updates an existing S3 Batch Operations job's priority. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Permissions

To use the UpdateJobPriority operation, you must have permission to perform the s3:UpdateJobPriority action.

Related actions include:

", + "UpdateJobStatus": "

Updates the status for the specified job. Use this operation to confirm that you want to run a job or to cancel an existing job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

Permissions

To use the UpdateJobStatus operation, you must have permission to perform the s3:UpdateJobStatus action.

Related actions include:

", + "UpdateStorageLensGroup": "

Updates the existing Storage Lens group.

To use this operation, you must have the permission to perform the s3:UpdateStorageLensGroup action. For more information about the required Storage Lens Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

For information about Storage Lens groups errors, see List of Amazon S3 Storage Lens error codes.

" }, "shapes": { "AbortIncompleteMultipartUpload": { @@ -80,6 +108,100 @@ "Destination$AccessControlTranslation": "

Specify this property only in a cross-account scenario (where the source and destination bucket owners are not the same), and you want to change replica ownership to the Amazon Web Services account that owns the destination bucket. If this property is not specified in the replication configuration, the replicas are owned by same Amazon Web Services account that owns the source object.

This is not supported by Amazon S3 on Outposts buckets.

" } }, + "AccessGrantArn": { + "base": null, + "refs": { + "CreateAccessGrantResult$AccessGrantArn": "

The Amazon Resource Name (ARN) of the access grant.

", + "GetAccessGrantResult$AccessGrantArn": "

The Amazon Resource Name (ARN) of the access grant.

", + "ListAccessGrantEntry$AccessGrantArn": "

The Amazon Resource Name (ARN) of the access grant.

" + } + }, + "AccessGrantId": { + "base": null, + "refs": { + "CreateAccessGrantResult$AccessGrantId": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.

", + "DeleteAccessGrantRequest$AccessGrantId": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.

", + "GetAccessGrantRequest$AccessGrantId": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.

", + "GetAccessGrantResult$AccessGrantId": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.

", + "ListAccessGrantEntry$AccessGrantId": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.

" + } + }, + "AccessGrantsInstanceArn": { + "base": null, + "refs": { + "CreateAccessGrantsInstanceResult$AccessGrantsInstanceArn": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

", + "GetAccessGrantsInstanceForPrefixResult$AccessGrantsInstanceArn": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

", + "GetAccessGrantsInstanceResult$AccessGrantsInstanceArn": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

", + "ListAccessGrantsInstanceEntry$AccessGrantsInstanceArn": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" + } + }, + "AccessGrantsInstanceId": { + "base": null, + "refs": { + "CreateAccessGrantsInstanceResult$AccessGrantsInstanceId": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants instance per Region per account.

", + "GetAccessGrantsInstanceForPrefixResult$AccessGrantsInstanceId": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants instance per Region per account.

", + "GetAccessGrantsInstanceResult$AccessGrantsInstanceId": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants instance per Region per account.

", + "ListAccessGrantsInstanceEntry$AccessGrantsInstanceId": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants instance per Region per account.

" + } + }, + "AccessGrantsInstancesList": { + "base": null, + "refs": { + "ListAccessGrantsInstancesResult$AccessGrantsInstancesList": "

A container for a list of S3 Access Grants instances.

" + } + }, + "AccessGrantsList": { + "base": null, + "refs": { + "ListAccessGrantsResult$AccessGrantsList": "

A container for a list of grants in an S3 Access Grants instance.

" + } + }, + "AccessGrantsLocationArn": { + "base": null, + "refs": { + "CreateAccessGrantsLocationResult$AccessGrantsLocationArn": "

The Amazon Resource Name (ARN) of the location you are registering.

", + "GetAccessGrantsLocationResult$AccessGrantsLocationArn": "

The Amazon Resource Name (ARN) of the registered location.

", + "ListAccessGrantsLocationsEntry$AccessGrantsLocationArn": "

The Amazon Resource Name (ARN) of the registered location.

", + "UpdateAccessGrantsLocationResult$AccessGrantsLocationArn": "

The Amazon Resource Name (ARN) of the registered location that you are updating.

" + } + }, + "AccessGrantsLocationConfiguration": { + "base": "

The configuration options of the S3 Access Grants location. It contains the S3SubPrefix field. The grant scope, the data to which you are granting access, is the result of appending the Subprefix field to the scope of the registered location.

", + "refs": { + "CreateAccessGrantRequest$AccessGrantsLocationConfiguration": "

The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access. It contains the S3SubPrefix field. The grant scope is the result of appending the subprefix to the location scope of the registered location.

", + "CreateAccessGrantResult$AccessGrantsLocationConfiguration": "

The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access.

", + "GetAccessGrantResult$AccessGrantsLocationConfiguration": "

The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access.

", + "ListAccessGrantEntry$AccessGrantsLocationConfiguration": "

The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access.

" + } + }, + "AccessGrantsLocationId": { + "base": null, + "refs": { + "CreateAccessGrantRequest$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

If you are passing the default location, you cannot create an access grant for the entire default location. You must also specify a bucket or a bucket and prefix in the Subprefix field.

", + "CreateAccessGrantResult$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "CreateAccessGrantsLocationResult$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "DeleteAccessGrantsLocationRequest$AccessGrantsLocationId": "

The ID of the registered location that you are deregistering from your S3 Access Grants instance. S3 Access Grants assigned this ID when you registered the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "GetAccessGrantResult$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "GetAccessGrantsLocationRequest$AccessGrantsLocationId": "

The ID of the registered location that you are retrieving. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "GetAccessGrantsLocationResult$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "ListAccessGrantEntry$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "ListAccessGrantsLocationsEntry$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

", + "UpdateAccessGrantsLocationRequest$AccessGrantsLocationId": "

The ID of the registered location that you are updating. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

The ID of the registered location to which you are granting access. S3 Access Grants assigned this ID when you registered the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

If you are passing the default location, you cannot create an access grant for the entire default location. You must also specify a bucket or a bucket and prefix in the Subprefix field.

", + "UpdateAccessGrantsLocationResult$AccessGrantsLocationId": "

The ID of the registered location to which you are granting access. S3 Access Grants assigned this ID when you registered the location. S3 Access Grants assigns the ID default to the default location s3:// and assigns an auto-generated ID to other locations that you register.

" + } + }, + "AccessGrantsLocationsList": { + "base": null, + "refs": { + "ListAccessGrantsLocationsResult$AccessGrantsLocationsList": "

A container for a list of registered locations in an S3 Access Grants instance.

" + } + }, + "AccessKeyId": { + "base": null, + "refs": { + "Credentials$AccessKeyId": "

The unique access key ID of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications.

" + } + }, "AccessPoint": { "base": "

An access point used to access a bucket.

", "refs": { @@ -110,11 +232,20 @@ "base": null, "refs": { "AccessPoint$BucketAccountId": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

", + "AssociateAccessGrantsIdentityCenterRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "CreateAccessGrantRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "CreateAccessGrantsInstanceRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "CreateAccessGrantsLocationRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "CreateAccessPointForObjectLambdaRequest$AccountId": "

The Amazon Web Services account ID for owner of the specified Object Lambda Access Point.

", "CreateAccessPointRequest$AccountId": "

The Amazon Web Services account ID for the account that owns the specified access point.

", "CreateAccessPointRequest$BucketAccountId": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

", "CreateJobRequest$AccountId": "

The Amazon Web Services account ID that creates the job.

", "CreateMultiRegionAccessPointRequest$AccountId": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point. The owner of the Multi-Region Access Point also must own the underlying buckets.

", + "CreateStorageLensGroupRequest$AccountId": "

The Amazon Web Services account ID that the Storage Lens group is created from and associated with.

", + "DeleteAccessGrantRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "DeleteAccessGrantsInstanceRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "DeleteAccessGrantsInstanceResourcePolicyRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "DeleteAccessGrantsLocationRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "DeleteAccessPointForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "DeleteAccessPointPolicyForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "DeleteAccessPointPolicyRequest$AccountId": "

The account ID for the account that owns the specified access point.

", @@ -129,9 +260,16 @@ "DeletePublicAccessBlockRequest$AccountId": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration you want to remove.

", "DeleteStorageLensConfigurationRequest$AccountId": "

The account ID of the requester.

", "DeleteStorageLensConfigurationTaggingRequest$AccountId": "

The account ID of the requester.

", + "DeleteStorageLensGroupRequest$AccountId": "

The Amazon Web Services account ID used to create the Storage Lens group that you're trying to delete.

", "DescribeJobRequest$AccountId": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", "DescribeMultiRegionAccessPointOperationRequest$AccountId": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", "Destination$Account": "

The destination bucket owner's account ID.

", + "DissociateAccessGrantsIdentityCenterRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "GetAccessGrantRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "GetAccessGrantsInstanceForPrefixRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "GetAccessGrantsInstanceRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "GetAccessGrantsInstanceResourcePolicyRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "GetAccessGrantsLocationRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "GetAccessPointConfigurationForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "GetAccessPointForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "GetAccessPointPolicyForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", @@ -146,6 +284,7 @@ "GetBucketRequest$AccountId": "

The Amazon Web Services account ID of the Outposts bucket.

", "GetBucketTaggingRequest$AccountId": "

The Amazon Web Services account ID of the Outposts bucket.

", "GetBucketVersioningRequest$AccountId": "

The Amazon Web Services account ID of the S3 on Outposts bucket.

", + "GetDataAccessRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "GetJobTaggingRequest$AccountId": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", "GetMultiRegionAccessPointPolicyRequest$AccountId": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", "GetMultiRegionAccessPointPolicyStatusRequest$AccountId": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", @@ -154,12 +293,19 @@ "GetPublicAccessBlockRequest$AccountId": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration you want to retrieve.

", "GetStorageLensConfigurationRequest$AccountId": "

The account ID of the requester.

", "GetStorageLensConfigurationTaggingRequest$AccountId": "

The account ID of the requester.

", + "GetStorageLensGroupRequest$AccountId": "

The Amazon Web Services account ID associated with the Storage Lens group that you're trying to retrieve the details for.

", + "ListAccessGrantsInstancesRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "ListAccessGrantsLocationsRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", + "ListAccessGrantsRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "ListAccessPointsForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "ListAccessPointsRequest$AccountId": "

The Amazon Web Services account ID for the account that owns the specified access points.

", "ListJobsRequest$AccountId": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", "ListMultiRegionAccessPointsRequest$AccountId": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", "ListRegionalBucketsRequest$AccountId": "

The Amazon Web Services account ID of the Outposts bucket.

", "ListStorageLensConfigurationsRequest$AccountId": "

The account ID of the requester.

", + "ListStorageLensGroupsRequest$AccountId": "

The Amazon Web Services account ID that owns the Storage Lens groups.

", + "ListTagsForResourceRequest$AccountId": "

The Amazon Web Services account ID of the resource owner.

", + "PutAccessGrantsInstanceResourcePolicyRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "PutAccessPointConfigurationForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "PutAccessPointPolicyForObjectLambdaRequest$AccountId": "

The account ID for the account that owns the specified Object Lambda Access Point.

", "PutAccessPointPolicyRequest$AccountId": "

The Amazon Web Services account ID for owner of the bucket associated with the specified access point.

", @@ -179,12 +325,16 @@ "S3JobManifestGenerator$ExpectedBucketOwner": "

The Amazon Web Services account ID that owns the bucket the generated manifest is written to. If provided the generated manifest bucket's owner Amazon Web Services account ID must match this value, else the job fails.

", "S3ManifestOutputLocation$ExpectedManifestBucketOwner": "

The Account ID that owns the bucket the generated manifest is written to.

", "SubmitMultiRegionAccessPointRoutesRequest$AccountId": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "TagResourceRequest$AccountId": "

The Amazon Web Services account ID that created the S3 resource that you're trying to add tags to or the requester's account ID.

", + "UntagResourceRequest$AccountId": "

The Amazon Web Services account ID that owns the resource that you're trying to remove the tags from.

", + "UpdateAccessGrantsLocationRequest$AccountId": "

The ID of the Amazon Web Services account that is making this request.

", "UpdateJobPriorityRequest$AccountId": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "UpdateJobStatusRequest$AccountId": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

" + "UpdateJobStatusRequest$AccountId": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "UpdateStorageLensGroupRequest$AccountId": "

The Amazon Web Services account ID of the Storage Lens group owner.

" } }, "AccountLevel": { - "base": "

A container for the account-level Amazon S3 Storage Lens configuration.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

", + "base": "

A container element for the account-level Amazon S3 Storage Lens configuration.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

", "refs": { "StorageLensConfiguration$AccountLevel": "

A container for all the account-level configurations of your S3 Storage Lens configuration.

" } @@ -192,21 +342,21 @@ "ActivityMetrics": { "base": "

The container element for Amazon S3 Storage Lens activity metrics. Activity metrics show details about how your storage is requested, such as requests (for example, All requests, Get requests, Put requests), bytes uploaded or downloaded, and errors.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

", "refs": { - "AccountLevel$ActivityMetrics": "

A container for S3 Storage Lens activity metrics.

", + "AccountLevel$ActivityMetrics": "

A container element for S3 Storage Lens activity metrics.

", "BucketLevel$ActivityMetrics": "

A container for the bucket-level activity metrics for S3 Storage Lens.

" } }, "AdvancedCostOptimizationMetrics": { "base": "

The container element for Amazon S3 Storage Lens advanced cost-optimization metrics. Advanced cost-optimization metrics provide insights that you can use to manage and optimize your storage costs, for example, lifecycle rule counts for transitions, expirations, and incomplete multipart uploads.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

", "refs": { - "AccountLevel$AdvancedCostOptimizationMetrics": "

A container for S3 Storage Lens advanced cost-optimization metrics.

", + "AccountLevel$AdvancedCostOptimizationMetrics": "

A container element for S3 Storage Lens advanced cost-optimization metrics.

", "BucketLevel$AdvancedCostOptimizationMetrics": "

A container for bucket-level advanced cost-optimization metrics for S3 Storage Lens.

" } }, "AdvancedDataProtectionMetrics": { "base": "

The container element for Amazon S3 Storage Lens advanced data-protection metrics. Advanced data-protection metrics provide insights that you can use to perform audits and protect your data, for example replication rule counts within and across Regions.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

", "refs": { - "AccountLevel$AdvancedDataProtectionMetrics": "

A container for S3 Storage Lens advanced data-protection metrics.

", + "AccountLevel$AdvancedDataProtectionMetrics": "

A container element for S3 Storage Lens advanced data-protection metrics.

", "BucketLevel$AdvancedDataProtectionMetrics": "

A container for bucket-level advanced data-protection metrics for S3 Storage Lens.

" } }, @@ -218,6 +368,11 @@ "GetAccessPointResult$Alias": "

The name or alias of the access point.

" } }, + "AssociateAccessGrantsIdentityCenterRequest": { + "base": null, + "refs": { + } + }, "AsyncCreationTimestamp": { "base": null, "refs": { @@ -300,10 +455,10 @@ "JobManifestGeneratorFilter$EligibleForReplication": "

Include objects in the generated manifest only if they are eligible for replication according to the Replication configuration on the source bucket.

", "JobReport$Enabled": "

Indicates whether the specified job will generate a job-completion report.

", "ObjectLambdaConfiguration$CloudWatchMetricsEnabled": "

A container for whether the CloudWatch metrics configuration is enabled.

", - "S3CopyObjectOperation$RequesterPays": "

", - "S3CopyObjectOperation$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Amazon Web Services KMS (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with an object action doesn’t affect bucket-level settings for S3 Bucket Key.

", + "S3CopyObjectOperation$RequesterPays": "

This functionality is not supported by directory buckets.

", + "S3CopyObjectOperation$BucketKeyEnabled": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Amazon Web Services KMS (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

Specifying this header with an object action doesn’t affect bucket-level settings for S3 Bucket Key.

This functionality is not supported by directory buckets.

", "S3JobManifestGenerator$EnableManifestOutput": "

Determines whether or not to write the job's generated manifest to a bucket.

", - "S3ObjectMetadata$RequesterCharged": "

", + "S3ObjectMetadata$RequesterCharged": "

This member has been deprecated.

", "S3SetObjectRetentionOperation$BypassGovernanceRetention": "

Indicates if the action should be applied to objects in the Batch Operations job even if they have Object Lock GOVERNANCE type in place.

" } }, @@ -333,7 +488,7 @@ "BucketLevel": { "base": "

A container for the bucket-level configuration for Amazon S3 Storage Lens.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide.

", "refs": { - "AccountLevel$BucketLevel": "

A container for the S3 Storage Lens bucket-level configuration.

" + "AccountLevel$BucketLevel": "

A container element for the S3 Storage Lens bucket-level configuration.

" } }, "BucketLocationConstraint": { @@ -422,8 +577,46 @@ "ContinuationToken": { "base": null, "refs": { + "ListAccessGrantsInstancesRequest$NextToken": "

A pagination token to request the next page of results. Pass this value into a subsequent List Access Grants Instances request in order to retrieve the next page of results.

", + "ListAccessGrantsInstancesResult$NextToken": "

A pagination token to request the next page of results. Pass this value into a subsequent List Access Grants Instances request in order to retrieve the next page of results.

", + "ListAccessGrantsLocationsRequest$NextToken": "

A pagination token to request the next page of results. Pass this value into a subsequent List Access Grants Locations request in order to retrieve the next page of results.

", + "ListAccessGrantsLocationsResult$NextToken": "

A pagination token to request the next page of results. Pass this value into a subsequent List Access Grants Locations request in order to retrieve the next page of results.

", + "ListAccessGrantsRequest$NextToken": "

A pagination token to request the next page of results. Pass this value into a subsequent List Access Grants request in order to retrieve the next page of results.

", + "ListAccessGrantsResult$NextToken": "

A pagination token to request the next page of results. Pass this value into a subsequent List Access Grants request in order to retrieve the next page of results.

", "ListStorageLensConfigurationsRequest$NextToken": "

A pagination token to request the next page of results.

", - "ListStorageLensConfigurationsResult$NextToken": "

If the request produced more than the maximum number of S3 Storage Lens configuration results, you can pass this value into a subsequent request to retrieve the next page of results.

" + "ListStorageLensConfigurationsResult$NextToken": "

If the request produced more than the maximum number of S3 Storage Lens configuration results, you can pass this value into a subsequent request to retrieve the next page of results.

", + "ListStorageLensGroupsRequest$NextToken": "

The token for the next set of results, or null if there are no more results.

", + "ListStorageLensGroupsResult$NextToken": "

If NextToken is returned, there are more Storage Lens groups 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. Keep all other arguments unchanged. Each pagination token expires after 24 hours.

" + } + }, + "CreateAccessGrantRequest": { + "base": null, + "refs": { + } + }, + "CreateAccessGrantResult": { + "base": null, + "refs": { + } + }, + "CreateAccessGrantsInstanceRequest": { + "base": null, + "refs": { + } + }, + "CreateAccessGrantsInstanceResult": { + "base": null, + "refs": { + } + }, + "CreateAccessGrantsLocationRequest": { + "base": null, + "refs": { + } + }, + "CreateAccessGrantsLocationResult": { + "base": null, + "refs": { } }, "CreateAccessPointForObjectLambdaRequest": { @@ -489,6 +682,11 @@ "refs": { } }, + "CreateStorageLensGroupRequest": { + "base": null, + "refs": { + } + }, "CreationDate": { "base": null, "refs": { @@ -501,7 +699,25 @@ "CreationTimestamp": { "base": null, "refs": { - "MultiRegionAccessPointReport$CreatedAt": "

When the Multi-Region Access Point create request was received.

" + "CreateAccessGrantResult$CreatedAt": "

The date and time when you created the access grant.

", + "CreateAccessGrantsInstanceResult$CreatedAt": "

The date and time when you created the S3 Access Grants instance.

", + "CreateAccessGrantsLocationResult$CreatedAt": "

The date and time when you registered the location.

", + "GetAccessGrantResult$CreatedAt": "

The date and time when you created the access grant.

", + "GetAccessGrantsInstanceResourcePolicyResult$CreatedAt": "

The date and time when you created the S3 Access Grants instance resource policy.

", + "GetAccessGrantsInstanceResult$CreatedAt": "

The date and time when you created the S3 Access Grants instance.

", + "GetAccessGrantsLocationResult$CreatedAt": "

The date and time when you registered the location.

", + "ListAccessGrantEntry$CreatedAt": "

The date and time when you created the S3 Access Grants instance.

", + "ListAccessGrantsInstanceEntry$CreatedAt": "

The date and time when you created the S3 Access Grants instance.

", + "ListAccessGrantsLocationsEntry$CreatedAt": "

The date and time when you registered the location.

", + "MultiRegionAccessPointReport$CreatedAt": "

When the Multi-Region Access Point create request was received.

", + "PutAccessGrantsInstanceResourcePolicyResult$CreatedAt": "

The date and time when you created the S3 Access Grants instance resource policy.

", + "UpdateAccessGrantsLocationResult$CreatedAt": "

The date and time when you registered the location.

" + } + }, + "Credentials": { + "base": "

The Amazon Web Services Security Token Service temporary credential that S3 Access Grants vends to grantees and client applications.

", + "refs": { + "GetDataAccessResult$Credentials": "

The temporary credential token that S3 Access Grants vends.

" } }, "Date": { @@ -526,6 +742,26 @@ "AbortIncompleteMultipartUpload$DaysAfterInitiation": "

Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload to the Outposts bucket.

" } }, + "DeleteAccessGrantRequest": { + "base": null, + "refs": { + } + }, + "DeleteAccessGrantsInstanceRequest": { + "base": null, + "refs": { + } + }, + "DeleteAccessGrantsInstanceResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteAccessGrantsLocationRequest": { + "base": null, + "refs": { + } + }, "DeleteAccessPointForObjectLambdaRequest": { "base": null, "refs": { @@ -630,6 +866,11 @@ "refs": { } }, + "DeleteStorageLensGroupRequest": { + "base": null, + "refs": { + } + }, "DescribeJobRequest": { "base": null, "refs": { @@ -659,10 +900,21 @@ "DetailedStatusCodesMetrics": { "base": "

The container element for Amazon S3 Storage Lens detailed status code metrics. Detailed status code metrics generate metrics for HTTP status codes, such as 200 OK, 403 Forbidden, 503 Service Unavailable and others.

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

", "refs": { - "AccountLevel$DetailedStatusCodesMetrics": "

A container for detailed status code metrics.

", + "AccountLevel$DetailedStatusCodesMetrics": "

A container element for detailed status code metrics.

", "BucketLevel$DetailedStatusCodesMetrics": "

A container for bucket-level detailed status code metrics for S3 Storage Lens.

" } }, + "DissociateAccessGrantsIdentityCenterRequest": { + "base": null, + "refs": { + } + }, + "DurationSeconds": { + "base": null, + "refs": { + "GetDataAccessRequest$DurationSeconds": "

The session duration, in seconds, of the temporary access credential that S3 Access Grants vends to the grantee or client application. The default value is 1 hour, but the grantee can specify a range from 900 seconds (15 minutes) up to 43200 seconds (12 hours). If the grantee requests a value higher than this maximum, the operation fails.

" + } + }, "EncryptionConfiguration": { "base": "

Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.

This is not supported by Amazon S3 on Outposts buckets.

", "refs": { @@ -713,6 +965,12 @@ "ExistingObjectReplication$Status": "

Specifies whether Amazon S3 replicates existing source bucket objects.

" } }, + "Expiration": { + "base": null, + "refs": { + "Credentials$Expiration": "

The expiration date and time of the temporary credential that S3 Access Grants vends to grantees and client applications.

" + } + }, "ExpirationStatus": { "base": null, "refs": { @@ -751,6 +1009,56 @@ "S3ManifestOutputLocation$ManifestFormat": "

The format of the generated manifest.

" } }, + "GetAccessGrantRequest": { + "base": null, + "refs": { + } + }, + "GetAccessGrantResult": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsInstanceForPrefixRequest": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsInstanceForPrefixResult": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsInstanceRequest": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsInstanceResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsInstanceResourcePolicyResult": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsInstanceResult": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsLocationRequest": { + "base": null, + "refs": { + } + }, + "GetAccessGrantsLocationResult": { + "base": null, + "refs": { + } + }, "GetAccessPointConfigurationForObjectLambdaRequest": { "base": null, "refs": { @@ -881,6 +1189,16 @@ "refs": { } }, + "GetDataAccessRequest": { + "base": null, + "refs": { + } + }, + "GetDataAccessResult": { + "base": null, + "refs": { + } + }, "GetJobTaggingRequest": { "base": null, "refs": { @@ -961,6 +1279,16 @@ "refs": { } }, + "GetStorageLensGroupRequest": { + "base": null, + "refs": { + } + }, + "GetStorageLensGroupResult": { + "base": null, + "refs": { + } + }, "GrantFullControl": { "base": null, "refs": { @@ -991,11 +1319,40 @@ "CreateBucketRequest$GrantWriteACP": "

Allows grantee to write the ACL for the applicable bucket.

This is not supported by Amazon S3 on Outposts buckets.

" } }, + "Grantee": { + "base": "

The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.

", + "refs": { + "CreateAccessGrantRequest$Grantee": "

The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.

", + "CreateAccessGrantResult$Grantee": "

The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.

", + "GetAccessGrantResult$Grantee": "

The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added a corporate directory to Amazon Web Services IAM Identity Center and associated this Identity Center instance with the S3 Access Grants instance, the grantee can also be a corporate directory user or group.

", + "ListAccessGrantEntry$Grantee": "

The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.

" + } + }, + "GranteeIdentifier": { + "base": null, + "refs": { + "Grantee$GranteeIdentifier": "

The unique identifier of the Grantee. If the grantee type is IAM, the identifier is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee type is a directory user or group, the identifier is 128-bit universally unique identifier (UUID) in the format a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. You can obtain this UUID from your Amazon Web Services IAM Identity Center instance.

", + "ListAccessGrantsRequest$GranteeIdentifier": "

The unique identifer of the Grantee. If the grantee type is IAM, the identifier is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee type is a directory user or group, the identifier is 128-bit universally unique identifier (UUID) in the format a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. You can obtain this UUID from your Amazon Web Services IAM Identity Center instance.

" + } + }, + "GranteeType": { + "base": null, + "refs": { + "Grantee$GranteeType": "

The type of the grantee to which access has been granted. It can be one of the following values:

  • IAM - An IAM user or role.

  • DIRECTORY_USER - Your corporate directory user. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.

  • DIRECTORY_GROUP - Your corporate directory group. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.

", + "ListAccessGrantsRequest$GranteeType": "

The type of the grantee to which access has been granted. It can be one of the following values:

  • IAM - An IAM user or role.

  • DIRECTORY_USER - Your corporate directory user. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.

  • DIRECTORY_GROUP - Your corporate directory group. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.

" + } + }, "IAMRoleArn": { "base": null, "refs": { + "CreateAccessGrantsLocationRequest$IAMRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location.

", + "CreateAccessGrantsLocationResult$IAMRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location.

", "CreateJobRequest$RoleArn": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role that Batch Operations will use to run this job's action on every object in the manifest.

", - "JobDescriptor$RoleArn": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role assigned to run the tasks for this job.

" + "GetAccessGrantsLocationResult$IAMRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location.

", + "JobDescriptor$RoleArn": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role assigned to run the tasks for this job.

", + "ListAccessGrantsLocationsEntry$IAMRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location.

", + "UpdateAccessGrantsLocationRequest$IAMRoleArn": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location.

", + "UpdateAccessGrantsLocationResult$IAMRoleArn": "

The Amazon Resource Name (ARN) of the IAM role of the registered location. S3 Access Grants assumes this role to manage access to the registered location.

" } }, "ID": { @@ -1010,6 +1367,26 @@ "refs": { } }, + "IdentityCenterApplicationArn": { + "base": null, + "refs": { + "CreateAccessGrantRequest$ApplicationArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If an application ARN is included in the request to create an access grant, the grantee can only access the S3 data through this application.

", + "CreateAccessGrantResult$ApplicationArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application.

", + "GetAccessGrantResult$ApplicationArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application.

", + "ListAccessGrantEntry$ApplicationArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application.

", + "ListAccessGrantsRequest$ApplicationArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application.

" + } + }, + "IdentityCenterArn": { + "base": null, + "refs": { + "AssociateAccessGrantsIdentityCenterRequest$IdentityCenterArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center instances and their ARNs.

", + "CreateAccessGrantsInstanceRequest$IdentityCenterArn": "

If you would like to associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, use this field to pass the Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center instances and their ARNs.

", + "CreateAccessGrantsInstanceResult$IdentityCenterArn": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance application; a subresource of the original Identity Center instance passed in the request. S3 Access Grants creates this Identity Center application for this specific S3 Access Grants instance.

", + "GetAccessGrantsInstanceResult$IdentityCenterArn": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, this field returns the Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance application; a subresource of the original Identity Center instance. S3 Access Grants creates this Identity Center application for the specific S3 Access Grants instance.

", + "ListAccessGrantsInstanceEntry$IdentityCenterArn": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance application; a subresource of the original Identity Center instance. S3 Access Grants creates this Identity Center application for the specific S3 Access Grants instance.

" + } + }, "Include": { "base": "

A container for what Amazon S3 Storage Lens configuration includes.

", "refs": { @@ -1156,13 +1533,13 @@ "JobManifestGeneratorFilter": { "base": "

The filter used to describe a set of objects for the job's manifest.

", "refs": { - "S3JobManifestGenerator$Filter": "

Specifies rules the S3JobManifestGenerator should use to use to decide whether an object in the source bucket should or should not be included in the generated job manifest.

" + "S3JobManifestGenerator$Filter": "

Specifies rules the S3JobManifestGenerator should use to decide whether an object in the source bucket should or should not be included in the generated job manifest.

" } }, "JobManifestLocation": { - "base": "

Contains the information required to locate a manifest object.

", + "base": "

Contains the information required to locate a manifest object. Manifests can't be imported from directory buckets. For more information, see Directory buckets.

", "refs": { - "JobManifest$Location": "

Contains the information required to locate the specified job's manifest.

", + "JobManifest$Location": "

Contains the information required to locate the specified job's manifest. Manifests can't be imported from directory buckets. For more information, see Directory buckets.

", "S3GeneratedManifestDescriptor$Location": null } }, @@ -1280,10 +1657,16 @@ "JobProgressSummary$TotalNumberOfTasks": "

" } }, + "KeyNameConstraint": { + "base": "

If provided, the generated manifest includes only source bucket objects whose object keys match the string constraints specified for MatchAnyPrefix, MatchAnySuffix, and MatchAnySubstring.

", + "refs": { + "JobManifestGeneratorFilter$KeyNameConstraint": "

If provided, the generated manifest includes only source bucket objects whose object keys match the string constraints specified for MatchAnyPrefix, MatchAnySuffix, and MatchAnySubstring.

" + } + }, "KmsKeyArnString": { "base": null, "refs": { - "S3CopyObjectOperation$SSEAwsKmsKeyId": "

", + "S3CopyObjectOperation$SSEAwsKmsKeyId": "

This functionality is not supported by directory buckets.

", "SSEKMSEncryption$KeyId": "

Specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key to use for encrypting generated manifest objects.

" } }, @@ -1330,6 +1713,54 @@ "LifecycleConfiguration$Rules": "

A lifecycle rule for individual objects in an Outposts bucket.

" } }, + "ListAccessGrantEntry": { + "base": "

Information about the access grant.

", + "refs": { + "AccessGrantsList$member": null + } + }, + "ListAccessGrantsInstanceEntry": { + "base": "

Information about the S3 Access Grants instance.

", + "refs": { + "AccessGrantsInstancesList$member": null + } + }, + "ListAccessGrantsInstancesRequest": { + "base": null, + "refs": { + } + }, + "ListAccessGrantsInstancesResult": { + "base": null, + "refs": { + } + }, + "ListAccessGrantsLocationsEntry": { + "base": "

A container for information about the registered location.

", + "refs": { + "AccessGrantsLocationsList$member": null + } + }, + "ListAccessGrantsLocationsRequest": { + "base": null, + "refs": { + } + }, + "ListAccessGrantsLocationsResult": { + "base": null, + "refs": { + } + }, + "ListAccessGrantsRequest": { + "base": null, + "refs": { + } + }, + "ListAccessGrantsResult": { + "base": null, + "refs": { + } + }, "ListAccessPointsForObjectLambdaRequest": { "base": null, "refs": { @@ -1396,6 +1827,32 @@ "refs": { } }, + "ListStorageLensGroupEntry": { + "base": "

Each entry contains a Storage Lens group that exists in the specified home Region.

", + "refs": { + "StorageLensGroupList$member": null + } + }, + "ListStorageLensGroupsRequest": { + "base": null, + "refs": { + } + }, + "ListStorageLensGroupsResult": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResult": { + "base": null, + "refs": { + } + }, "Location": { "base": null, "refs": { @@ -1426,6 +1883,46 @@ "S3ManifestOutputLocation$ManifestPrefix": "

Prefix identifying one or more objects to which the manifest applies.

" } }, + "MatchAnyPrefix": { + "base": null, + "refs": { + "StorageLensGroupAndOperator$MatchAnyPrefix": "

Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes are allowed.

", + "StorageLensGroupFilter$MatchAnyPrefix": "

Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes are allowed.

", + "StorageLensGroupOrOperator$MatchAnyPrefix": "

Filters objects that match any of the specified prefixes.

" + } + }, + "MatchAnySuffix": { + "base": null, + "refs": { + "StorageLensGroupAndOperator$MatchAnySuffix": "

Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes are allowed.

", + "StorageLensGroupFilter$MatchAnySuffix": "

Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes are allowed.

", + "StorageLensGroupOrOperator$MatchAnySuffix": "

Filters objects that match any of the specified suffixes.

" + } + }, + "MatchAnyTag": { + "base": null, + "refs": { + "StorageLensGroupAndOperator$MatchAnyTag": "

Contains the list of object tags. At least one object tag must be specified. Up to 10 object tags are allowed.

", + "StorageLensGroupFilter$MatchAnyTag": "

Contains the list of S3 object tags. At least one object tag must be specified. Up to 10 object tags are allowed.

", + "StorageLensGroupOrOperator$MatchAnyTag": "

Filters objects that match any of the specified S3 object tags.

" + } + }, + "MatchObjectAge": { + "base": "

A filter condition that specifies the object age range of included objects in days. Only integers are supported.

", + "refs": { + "StorageLensGroupAndOperator$MatchObjectAge": "

Contains DaysGreaterThan and DaysLessThan to define the object age range (minimum and maximum number of days).

", + "StorageLensGroupFilter$MatchObjectAge": "

Contains DaysGreaterThan and DaysLessThan to define the object age range (minimum and maximum number of days).

", + "StorageLensGroupOrOperator$MatchObjectAge": "

Filters objects that match the specified object age range.

" + } + }, + "MatchObjectSize": { + "base": "

A filter condition that specifies the object size range of included objects in bytes. Only integers are supported.

", + "refs": { + "StorageLensGroupAndOperator$MatchObjectSize": "

Contains BytesGreaterThan and BytesLessThan to define the object size range (minimum and maximum number of Bytes).

", + "StorageLensGroupFilter$MatchObjectSize": "

Contains BytesGreaterThan and BytesLessThan to define the object size range (minimum and maximum number of Bytes).

", + "StorageLensGroupOrOperator$MatchObjectSize": "

Filters objects that match the specified object size range.

" + } + }, "MaxLength1024String": { "base": null, "refs": { @@ -1433,12 +1930,16 @@ "AsyncErrorDetails$Message": "

A generic description of the error condition in English.

", "AsyncErrorDetails$Resource": "

The identifier of the resource associated with the error.

", "AsyncErrorDetails$RequestId": "

The ID of the request associated with the error.

", - "S3UserMetadata$value": null + "S3UserMetadata$value": null, + "UserArguments$value": null } }, "MaxResults": { "base": null, "refs": { + "ListAccessGrantsInstancesRequest$MaxResults": "

The maximum number of access grants that you would like returned in the List Access Grants response. If the results include the pagination token NextToken, make another call using the NextToken to determine if there are more results.

", + "ListAccessGrantsLocationsRequest$MaxResults": "

The maximum number of access grants that you would like returned in the List Access Grants response. If the results include the pagination token NextToken, make another call using the NextToken to determine if there are more results.

", + "ListAccessGrantsRequest$MaxResults": "

The maximum number of access grants that you would like returned in the List Access Grants response. If the results include the pagination token NextToken, make another call using the NextToken to determine if there are more results.

", "ListAccessPointsForObjectLambdaRequest$MaxResults": "

The maximum number of access points that you want to include in the list. The response may contain fewer access points but will never contain more. If there are more than this number of access points, then the response will include a continuation token in the NextToken field that you can use to retrieve the next page of access points.

", "ListAccessPointsRequest$MaxResults": "

The maximum number of access points that you want to include in the list. If the specified bucket has more than this number of access points, then the response will include a continuation token in the NextToken field that you can use to retrieve the next page of access points.

", "ListJobsRequest$MaxResults": "

The maximum number of jobs that Amazon S3 will include in the List Jobs response. If there are more jobs than this number, the response will include a pagination token in the NextToken field to enable you to retrieve the next page of results.

", @@ -1584,6 +2085,7 @@ "ListMultiRegionAccessPointsResult$NextToken": "

If the specified bucket has more Multi-Region Access Points than can be returned in one call to this action, this field contains a continuation token. You can use this token tin subsequent calls to this action to retrieve additional Multi-Region Access Points.

", "ListRegionalBucketsRequest$NextToken": "

", "ListRegionalBucketsResult$NextToken": "

NextToken is sent when isTruncated is true, which means there are more buckets that can be listed. The next list requests to Amazon S3 can be continued with this NextToken. NextToken is obfuscated and is not a real key.

", + "NonEmptyMaxLength1024StringList$member": null, "S3CopyObjectOperation$TargetKeyPrefix": "

Specifies the folder prefix that you want the objects to be copied into. For example, to copy objects into a folder named Folder1 in the destination bucket, set the TargetKeyPrefix property to Folder1.

", "S3Grantee$Identifier": "

", "S3Grantee$DisplayName": "

", @@ -1591,17 +2093,25 @@ "S3ObjectMetadata$ContentDisposition": "

", "S3ObjectMetadata$ContentEncoding": "

", "S3ObjectMetadata$ContentLanguage": "

", - "S3ObjectMetadata$ContentMD5": "

", + "S3ObjectMetadata$ContentMD5": "

This member has been deprecated.

", "S3ObjectMetadata$ContentType": "

", "S3ObjectOwner$ID": "

", "S3ObjectOwner$DisplayName": "

", "S3UserMetadata$key": null } }, + "NonEmptyMaxLength1024StringList": { + "base": null, + "refs": { + "KeyNameConstraint$MatchAnyPrefix": "

If provided, the generated manifest includes objects where the specified string appears at the start of the object key string.

", + "KeyNameConstraint$MatchAnySuffix": "

If provided, the generated manifest includes objects where the specified string appears at the end of the object key string.

", + "KeyNameConstraint$MatchAnySubstring": "

If provided, the generated manifest includes objects where the specified string appears anywhere within the object key string.

" + } + }, "NonEmptyMaxLength2048String": { "base": null, "refs": { - "S3CopyObjectOperation$RedirectLocation": "

Specifies an optional metadata property for website redirects, x-amz-website-redirect-location. Allows webpage redirects if the object is accessed through a website endpoint.

" + "S3CopyObjectOperation$RedirectLocation": "

If the destination bucket is configured as a website, specifies an optional metadata property for website redirects, x-amz-website-redirect-location. Allows webpage redirects if the object copy is accessed through a website endpoint.

This functionality is not supported by directory buckets.

" } }, "NonEmptyMaxLength256String": { @@ -1618,8 +2128,10 @@ "CreateBucketRequest$OutpostId": "

The ID of the Outposts where the bucket is being created.

This ID is required by Amazon S3 on Outposts buckets.

", "CreateJobRequest$ClientRequestToken": "

An idempotency token to ensure that you don't accidentally submit the same request twice. You can use any string up to the maximum length.

", "Endpoints$key": null, + "LambdaInvokeOperation$InvocationSchemaVersion": "

Specifies the schema version for the payload that Batch Operations sends when invoking an Lambda function. Version 1.0 is the default. Version 2.0 is required when you use Batch Operations to invoke Lambda functions that act on directory buckets, or if you need to specify UserArguments. For more information, see Using Lambda with Amazon S3 Batch Operations and Amazon S3 Express One Zone in the Amazon Web Services Storage Blog.

Ensure that your Lambda function code expects InvocationSchemaVersion 2.0 and uses bucket name rather than bucket ARN. If the InvocationSchemaVersion does not match what your Lambda function expects, your function might not work as expected.

Directory buckets - To initiate Amazon Web Services Lambda function to perform custom actions on objects in directory buckets, you must specify 2.0.

", "ListRegionalBucketsRequest$OutpostId": "

The ID of the Outposts resource.

This ID is required by Amazon S3 on Outposts buckets.

", - "RegionalBucket$OutpostId": "

The Outposts ID of the regional bucket.

" + "RegionalBucket$OutpostId": "

The Outposts ID of the regional bucket.

", + "UserArguments$key": null } }, "NoncurrentVersionCount": { @@ -1651,11 +2163,18 @@ "refs": { } }, + "ObjectAgeValue": { + "base": null, + "refs": { + "MatchObjectAge$DaysGreaterThan": "

Specifies the maximum object age in days. Must be a positive whole number, greater than the minimum object age and less than or equal to 2,147,483,647.

", + "MatchObjectAge$DaysLessThan": "

Specifies the minimum object age in days. The value must be a positive whole number, greater than 0 and less than or equal to 2,147,483,647.

" + } + }, "ObjectCreationTime": { "base": null, "refs": { - "JobManifestGeneratorFilter$CreatedAfter": "

If provided, the generated manifest should include only source bucket objects that were created after this time.

", - "JobManifestGeneratorFilter$CreatedBefore": "

If provided, the generated manifest should include only source bucket objects that were created before this time.

" + "JobManifestGeneratorFilter$CreatedAfter": "

If provided, the generated manifest includes only source bucket objects that were created after this time.

", + "JobManifestGeneratorFilter$CreatedBefore": "

If provided, the generated manifest includes only source bucket objects that were created before this time.

" } }, "ObjectLambdaAccessPoint": { @@ -1785,6 +2304,7 @@ "ObjectSizeGreaterThanBytes": { "base": null, "refs": { + "JobManifestGeneratorFilter$ObjectSizeGreaterThanBytes": "

If provided, the generated manifest includes only source bucket objects whose file size is greater than the specified number of bytes.

", "LifecycleRuleAndOperator$ObjectSizeGreaterThan": "

Minimum object size to which the rule applies.

", "LifecycleRuleFilter$ObjectSizeGreaterThan": "

Minimum object size to which the rule applies.

" } @@ -1792,16 +2312,32 @@ "ObjectSizeLessThanBytes": { "base": null, "refs": { + "JobManifestGeneratorFilter$ObjectSizeLessThanBytes": "

If provided, the generated manifest includes only source bucket objects whose file size is less than the specified number of bytes.

", "LifecycleRuleAndOperator$ObjectSizeLessThan": "

Maximum object size to which the rule applies.

", "LifecycleRuleFilter$ObjectSizeLessThan": "

Maximum object size to which the rule applies.

" } }, + "ObjectSizeValue": { + "base": null, + "refs": { + "MatchObjectSize$BytesGreaterThan": "

Specifies the minimum object size in Bytes. The value must be a positive number, greater than 0 and less than 5 TB.

", + "MatchObjectSize$BytesLessThan": "

Specifies the maximum object size in Bytes. The value must be a positive number, greater than the minimum object size and less than 5 TB.

" + } + }, "OperationName": { "base": null, "refs": { "JobListDescriptor$Operation": "

The operation that the specified job is configured to run on every object listed in the manifest.

" } }, + "Organization": { + "base": null, + "refs": { + "GetAccessGrantsInstanceResourcePolicyResult$Organization": "

The Organization of the resource policy of the S3 Access Grants instance.

", + "PutAccessGrantsInstanceResourcePolicyRequest$Organization": "

The Organization of the resource policy of the S3 Access Grants instance.

", + "PutAccessGrantsInstanceResourcePolicyResult$Organization": "

The Organization of the resource policy of the S3 Access Grants instance.

" + } + }, "OutputSchemaVersion": { "base": null, "refs": { @@ -1814,6 +2350,17 @@ "AccessControlTranslation$Owner": "

Specifies the replica ownership.

" } }, + "Permission": { + "base": null, + "refs": { + "CreateAccessGrantRequest$Permission": "

The type of access that you are granting to your S3 data, which can be set to one of the following values:

  • READ – Grant read-only access to the S3 data.

  • WRITE – Grant write-only access to the S3 data.

  • READWRITE – Grant both read and write access to the S3 data.

", + "CreateAccessGrantResult$Permission": "

The type of access that you are granting to your S3 data, which can be set to one of the following values:

  • READ – Grant read-only access to the S3 data.

  • WRITE – Grant write-only access to the S3 data.

  • READWRITE – Grant both read and write access to the S3 data.

", + "GetAccessGrantResult$Permission": "

The type of permission that was granted in the access grant. Can be one of the following values:

  • READ – Grant read-only access to the S3 data.

  • WRITE – Grant write-only access to the S3 data.

  • READWRITE – Grant both read and write access to the S3 data.

", + "GetDataAccessRequest$Permission": "

The type of permission granted to your S3 data, which can be set to one of the following values:

  • READ – Grant read-only access to the S3 data.

  • WRITE – Grant write-only access to the S3 data.

  • READWRITE – Grant both read and write access to the S3 data.

", + "ListAccessGrantEntry$Permission": "

The type of access granted to your S3 data, which can be set to one of the following values:

  • READ – Grant read-only access to the S3 data.

  • WRITE – Grant write-only access to the S3 data.

  • READWRITE – Grant both read and write access to the S3 data.

", + "ListAccessGrantsRequest$Permission": "

The type of permission granted to your S3 data, which can be set to one of the following values:

  • READ – Grant read-only access to the S3 data.

  • WRITE – Grant write-only access to the S3 data.

  • READWRITE – Grant both read and write access to the S3 data.

" + } + }, "Policy": { "base": null, "refs": { @@ -1826,6 +2373,14 @@ "PutMultiRegionAccessPointPolicyInput$Policy": "

The policy details for the PutMultiRegionAccessPoint request.

" } }, + "PolicyDocument": { + "base": null, + "refs": { + "GetAccessGrantsInstanceResourcePolicyResult$Policy": "

The resource policy of the S3 Access Grants instance.

", + "PutAccessGrantsInstanceResourcePolicyRequest$Policy": "

The resource policy of the S3 Access Grants instance that you are updating.

", + "PutAccessGrantsInstanceResourcePolicyResult$Policy": "

The updated resource policy of the S3 Access Grants instance.

" + } + }, "PolicyStatus": { "base": "

Indicates whether this access point policy is public. For more information about how Amazon S3 evaluates policies to determine whether they are public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

", "refs": { @@ -1839,6 +2394,7 @@ "refs": { "LifecycleRuleAndOperator$Prefix": "

Prefix identifying one or more objects to which the rule applies.

", "LifecycleRuleFilter$Prefix": "

Prefix identifying one or more objects to which the rule applies.

When you're using XML requests, you must replace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. For more information, see XML-related object key constraints in the Amazon S3 User Guide.

", + "MatchAnyPrefix$member": null, "ReplicationRule$Prefix": "

An object key name prefix that identifies the object or objects to which the rule applies. The maximum prefix length is 1,024 characters. To include all objects in an Outposts bucket, specify an empty string.

When you're using XML requests, you must replace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. For more information, see XML-related object key constraints in the Amazon S3 User Guide.

", "ReplicationRuleAndOperator$Prefix": "

An object key name prefix that identifies the subset of objects that the rule applies to.

", "ReplicationRuleFilter$Prefix": "

An object key name prefix that identifies the subset of objects that the rule applies to.

When you're using XML requests, you must replace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. For more information, see XML-related object key constraints in the Amazon S3 User Guide.

", @@ -1863,6 +2419,12 @@ "ReplicationRule$Priority": "

The priority indicates which rule has precedence whenever two or more replication rules conflict. S3 on Outposts attempts to replicate objects according to all replication rules. However, if there are two or more rules with the same destination Outposts bucket, then objects will be replicated according to the rule with the highest priority. The higher the number, the higher the priority.

For more information, see Creating replication rules on Outposts in the Amazon S3 User Guide.

" } }, + "Privilege": { + "base": null, + "refs": { + "GetDataAccessRequest$Privilege": "

The scope of the temporary access credential that S3 Access Grants vends to the grantee or client application.

  • Default – The scope of the returned temporary access token is the scope of the grant that is closest to the target scope.

  • Minimal – The scope of the returned temporary access token is the same as the requested target scope as long as the requested scope is the same as or a subset of the grant scope.

" + } + }, "ProposedMultiRegionAccessPointPolicy": { "base": "

The proposed access control policy for the Multi-Region Access Point.

When you update the policy, the update is first listed as the proposed policy. After the update is finished and all Regions have been updated, the proposed policy is listed as the established policy. If both policies have the same version number, the proposed policy is the established policy.

", "refs": { @@ -1888,6 +2450,16 @@ "RegionalBucket$PublicAccessBlockEnabled": "

" } }, + "PutAccessGrantsInstanceResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "PutAccessGrantsInstanceResourcePolicyResult": { + "base": null, + "refs": { + } + }, "PutAccessPointConfigurationForObjectLambdaRequest": { "base": null, "refs": { @@ -2090,13 +2662,13 @@ "ReplicationStatusFilterList": { "base": null, "refs": { - "JobManifestGeneratorFilter$ObjectReplicationStatuses": "

If provided, the generated manifest should include only source bucket objects that have one of the specified Replication statuses.

" + "JobManifestGeneratorFilter$ObjectReplicationStatuses": "

If provided, the generated manifest includes only source bucket objects that have one of the specified Replication statuses.

" } }, "ReplicationStorageClass": { "base": null, "refs": { - "Destination$StorageClass": "

The storage class to use when replicating objects. All objects stored on S3 on Outposts are stored in the OUTPOSTS storage class. S3 on Outposts uses the OUTPOSTS storage class to create the object replicas.

Values other than OUTPOSTS are not supported by Amazon S3 on Outposts.

" + "Destination$StorageClass": "

The storage class to use when replicating objects. All objects stored on S3 on Outposts are stored in the OUTPOSTS storage class. S3 on Outposts uses the OUTPOSTS storage class to create the object replicas.

Values other than OUTPOSTS aren't supported by Amazon S3 on Outposts.

" } }, "ReplicationTime": { @@ -2147,6 +2719,7 @@ "base": null, "refs": { "ListStorageLensConfigurationEntry$HomeRegion": "

A container for the S3 Storage Lens home Region. Your metrics data is stored and retained in your designated S3 Storage Lens home Region.

", + "ListStorageLensGroupEntry$HomeRegion": "

Contains the Amazon Web Services Region where the Storage Lens group was created.

", "Regions$member": null } }, @@ -2174,11 +2747,10 @@ "base": null, "refs": { "Buckets$member": null, - "JobReport$Bucket": "

The Amazon Resource Name (ARN) for the bucket where specified job-completion report will be stored.

", + "JobReport$Bucket": "

The Amazon Resource Name (ARN) for the bucket where specified job-completion report will be stored.

Directory buckets - Directory buckets aren't supported as a location for Batch Operations to store job completion reports.

", "S3BucketDestination$Arn": "

The Amazon Resource Name (ARN) of the bucket. This property is read-only and follows the following format: arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name

", - "S3CopyObjectOperation$TargetResource": "

Specifies the destination bucket Amazon Resource Name (ARN) for the batch copy operation. For example, to copy objects to a bucket named destinationBucket, set the TargetResource property to arn:aws:s3:::destinationBucket.

", - "S3JobManifestGenerator$SourceBucket": "

The source bucket used by the ManifestGenerator.

", - "S3ManifestOutputLocation$Bucket": "

The bucket ARN the generated manifest should be written to.

" + "S3JobManifestGenerator$SourceBucket": "

The source bucket used by the ManifestGenerator.

Directory buckets - Directory buckets aren't supported as the source buckets used by S3JobManifestGenerator to generate the job manifest.

", + "S3ManifestOutputLocation$Bucket": "

The bucket ARN the generated manifest should be written to.

Directory buckets - Directory buckets aren't supported as the buckets to store the generated manifest.

" } }, "S3BucketDestination": { @@ -2191,19 +2763,19 @@ "base": null, "refs": { "S3AccessControlPolicy$CannedAccessControlList": "

", - "S3CopyObjectOperation$CannedAccessControlList": "

" + "S3CopyObjectOperation$CannedAccessControlList": "

This functionality is not supported by directory buckets.

" } }, "S3ChecksumAlgorithm": { "base": null, "refs": { - "S3CopyObjectOperation$ChecksumAlgorithm": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum. For more information, see Checking object integrity in the Amazon S3 User Guide.

" + "S3CopyObjectOperation$ChecksumAlgorithm": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum. For more information, see Checking object integrity in the Amazon S3 User Guide.

" } }, "S3ContentLength": { "base": null, "refs": { - "S3ObjectMetadata$ContentLength": "

" + "S3ObjectMetadata$ContentLength": "

This member has been deprecated.

" } }, "S3CopyObjectOperation": { @@ -2215,7 +2787,7 @@ "S3DeleteObjectTaggingOperation": { "base": "

Contains no configuration parameters because the DELETE Object tagging (DeleteObjectTagging) API operation accepts only the bucket name and key name as parameters, which are defined in the job's manifest.

", "refs": { - "JobOperation$S3DeleteObjectTagging": "

Directs the specified job to execute a DELETE Object tagging call on every object in the manifest.

" + "JobOperation$S3DeleteObjectTagging": "

Directs the specified job to execute a DELETE Object tagging call on every object in the manifest.

This functionality is not supported by directory buckets.

" } }, "S3ExpirationInDays": { @@ -2246,7 +2818,7 @@ "base": null, "refs": { "S3AccessControlList$Grants": "

", - "S3CopyObjectOperation$AccessControlGrants": "

" + "S3CopyObjectOperation$AccessControlGrants": "

This functionality is not supported by directory buckets.

" } }, "S3Grantee": { @@ -2264,7 +2836,7 @@ "S3InitiateRestoreObjectOperation": { "base": "

Contains the configuration parameters for a POST Object restore job. S3 Batch Operations passes every object to the underlying RestoreObject API operation. For more information about the parameters for this operation, see RestoreObject.

", "refs": { - "JobOperation$S3InitiateRestoreObject": "

Directs the specified job to initiate restore requests for every archived object in the manifest.

" + "JobOperation$S3InitiateRestoreObject": "

Directs the specified job to initiate restore requests for every archived object in the manifest.

This functionality is not supported by directory buckets.

" } }, "S3JobManifestGenerator": { @@ -2282,7 +2854,7 @@ "S3ManifestOutputLocation": { "base": "

Location details for where the generated manifest should be written.

", "refs": { - "S3JobManifestGenerator$ManifestOutputLocation": "

Specifies the location the generated manifest will be written to.

" + "S3JobManifestGenerator$ManifestOutputLocation": "

Specifies the location the generated manifest will be written to. Manifests can't be written to directory buckets. For more information, see Directory buckets.

" } }, "S3MetadataDirective": { @@ -2300,14 +2872,14 @@ "S3ObjectLockLegalHoldStatus": { "base": null, "refs": { - "S3CopyObjectOperation$ObjectLockLegalHoldStatus": "

The legal hold status to be applied to all objects in the Batch Operations job.

", + "S3CopyObjectOperation$ObjectLockLegalHoldStatus": "

The legal hold status to be applied to all objects in the Batch Operations job.

This functionality is not supported by directory buckets.

", "S3ObjectLockLegalHold$Status": "

The Object Lock legal hold status to be applied to all objects in the Batch Operations job.

" } }, "S3ObjectLockMode": { "base": null, "refs": { - "S3CopyObjectOperation$ObjectLockMode": "

The retention mode to be applied to all objects in the Batch Operations job.

" + "S3CopyObjectOperation$ObjectLockMode": "

The retention mode to be applied to all objects in the Batch Operations job.

This functionality is not supported by directory buckets.

" } }, "S3ObjectLockRetentionMode": { @@ -2340,6 +2912,32 @@ "S3Grant$Permission": "

" } }, + "S3Prefix": { + "base": null, + "refs": { + "AccessGrantsLocationConfiguration$S3SubPrefix": "

The S3SubPrefix is appended to the location scope creating the grant scope. Use this field to narrow the scope of the grant to a subset of the location scope. This field is required if the location scope is the default location s3:// because you cannot create a grant for all of your S3 data in the Region and must narrow the scope. For example, if the location scope is the default location s3://, the S3SubPrefx can be a <bucket-name>/*, so the full grant scope path would be s3://<bucket-name>/*. Or the S3SubPrefx can be <bucket-name>/<prefix-name>*, so the full grant scope path would be or s3://<bucket-name>/<prefix-name>*.

If the S3SubPrefix includes a prefix, append the wildcard character * after the prefix to indicate that you want to include all object key names in the bucket that start with that prefix.

", + "CreateAccessGrantResult$GrantScope": "

The S3 path of the data to which you are granting access. It is the result of appending the Subprefix to the location scope.

", + "CreateAccessGrantsLocationRequest$LocationScope": "

The S3 path to the location that you are registering. The location scope can be the default S3 location s3://, the S3 path to a bucket s3://<bucket>, or the S3 path to a bucket and prefix s3://<bucket>/<prefix>. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the engineering/ prefix or object key names that start with the marketing/campaigns/ prefix.

", + "CreateAccessGrantsLocationResult$LocationScope": "

The S3 URI path to the location that you are registering. The location scope can be the default S3 location s3://, the S3 path to a bucket, or the S3 path to a bucket and prefix. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the engineering/ prefix or object key names that start with the marketing/campaigns/ prefix.

", + "GetAccessGrantResult$GrantScope": "

The S3 path of the data to which you are granting access. It is the result of appending the Subprefix to the location scope.

", + "GetAccessGrantsInstanceForPrefixRequest$S3Prefix": "

The S3 prefix of the access grants that you would like to retrieve.

", + "GetAccessGrantsLocationResult$LocationScope": "

The S3 URI path to the registered location. The location scope can be the default S3 location s3://, the S3 path to a bucket, or the S3 path to a bucket and prefix. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the engineering/ prefix or object key names that start with the marketing/campaigns/ prefix.

", + "GetDataAccessRequest$Target": "

The S3 URI path of the data to which you are requesting temporary access credentials. If the requesting account has an access grant for this data, S3 Access Grants vends temporary access credentials in the response.

", + "GetDataAccessResult$MatchedGrantTarget": "

The S3 URI path of the data to which you are being granted temporary access credentials.

", + "ListAccessGrantEntry$GrantScope": "

The S3 path of the data to which you are granting access. It is the result of appending the Subprefix to the location scope.

", + "ListAccessGrantsLocationsEntry$LocationScope": "

The S3 path to the location that you are registering. The location scope can be the default S3 location s3://, the S3 path to a bucket s3://<bucket>, or the S3 path to a bucket and prefix s3://<bucket>/<prefix>. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the engineering/ prefix or object key names that start with the marketing/campaigns/ prefix.

", + "ListAccessGrantsLocationsRequest$LocationScope": "

The S3 path to the location that you are registering. The location scope can be the default S3 location s3://, the S3 path to a bucket s3://<bucket>, or the S3 path to a bucket and prefix s3://<bucket>/<prefix>. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the engineering/ prefix or object key names that start with the marketing/campaigns/ prefix.

", + "ListAccessGrantsRequest$GrantScope": "

The S3 path of the data to which you are granting access. It is the result of appending the Subprefix to the location scope.

", + "UpdateAccessGrantsLocationResult$LocationScope": "

The S3 URI path of the location that you are updating. You cannot update the scope of the registered location. The location scope can be the default S3 location s3://, the S3 path to a bucket s3://<bucket>, or the S3 path to a bucket and prefix s3://<bucket>/<prefix>.

" + } + }, + "S3PrefixType": { + "base": null, + "refs": { + "CreateAccessGrantRequest$S3PrefixType": "

The type of S3SubPrefix. The only possible value is Object. Pass this value if the access grant scope is an object. Do not pass this value if the access grant scope is a bucket or a bucket and a prefix.

", + "GetDataAccessRequest$TargetType": "

The type of Target. The only possible value is Object. Pass this value if the target data that you would like to access is a path to an object. Do not pass this value if the target data is a bucket or a bucket and a prefix.

" + } + }, "S3RegionalBucketArn": { "base": null, "refs": { @@ -2347,10 +2945,24 @@ "RegionalBucket$BucketArn": "

The Amazon Resource Name (ARN) for the regional bucket.

" } }, + "S3RegionalOrS3ExpressBucketArnString": { + "base": null, + "refs": { + "S3CopyObjectOperation$TargetResource": "

Specifies the destination bucket Amazon Resource Name (ARN) for the batch copy operation.

  • General purpose buckets - For example, to copy objects to a general purpose bucket named destinationBucket, set the TargetResource property to arn:aws:s3:::destinationBucket.

  • Directory buckets - For example, to copy objects to a directory bucket named destinationBucket in the Availability Zone; identified by the AZ ID usw2-az2, set the TargetResource property to arn:aws:s3express:region:account_id:/bucket/destination_bucket_base_name--usw2-az2--x-s3.

" + } + }, "S3ReplicateObjectOperation": { "base": "

Directs the specified job to invoke ReplicateObject on every object in the job's manifest.

", "refs": { - "JobOperation$S3ReplicateObject": "

Directs the specified job to invoke ReplicateObject on every object in the job's manifest.

" + "JobOperation$S3ReplicateObject": "

Directs the specified job to invoke ReplicateObject on every object in the job's manifest.

This functionality is not supported by directory buckets.

" + } + }, + "S3ResourceArn": { + "base": null, + "refs": { + "ListTagsForResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the S3 resource that you want to list the tags for. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant.

", + "TagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the S3 resource that you're trying to add tags to. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant.

", + "UntagResourceRequest$ResourceArn": "

The Amazon Resource Name (ARN) of the S3 resource that you're trying to remove the tags from.

" } }, "S3Retention": { @@ -2362,23 +2974,23 @@ "S3SSEAlgorithm": { "base": null, "refs": { - "S3ObjectMetadata$SSEAlgorithm": "

" + "S3ObjectMetadata$SSEAlgorithm": "

For directory buckets, only the server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

" } }, "S3SetObjectAclOperation": { "base": "

Contains the configuration parameters for a PUT Object ACL operation. S3 Batch Operations passes every object to the underlying PutObjectAcl API operation. For more information about the parameters for this operation, see PutObjectAcl.

", "refs": { - "JobOperation$S3PutObjectAcl": "

Directs the specified job to run a PutObjectAcl call on every object in the manifest.

" + "JobOperation$S3PutObjectAcl": "

Directs the specified job to run a PutObjectAcl call on every object in the manifest.

This functionality is not supported by directory buckets.

" } }, "S3SetObjectLegalHoldOperation": { - "base": "

Contains the configuration for an S3 Object Lock legal hold operation that an S3 Batch Operations job passes to every object to the underlying PutObjectLegalHold API operation. For more information, see Using S3 Object Lock legal hold with S3 Batch Operations in the Amazon S3 User Guide.

", + "base": "

Contains the configuration for an S3 Object Lock legal hold operation that an S3 Batch Operations job passes to every object to the underlying PutObjectLegalHold API operation. For more information, see Using S3 Object Lock legal hold with S3 Batch Operations in the Amazon S3 User Guide.

This functionality is not supported by directory buckets.

", "refs": { "JobOperation$S3PutObjectLegalHold": null } }, "S3SetObjectRetentionOperation": { - "base": "

Contains the configuration parameters for the Object Lock retention action for an S3 Batch Operations job. Batch Operations passes every object to the underlying PutObjectRetention API operation. For more information, see Using S3 Object Lock retention with S3 Batch Operations in the Amazon S3 User Guide.

", + "base": "

Contains the configuration parameters for the Object Lock retention action for an S3 Batch Operations job. Batch Operations passes every object to the underlying PutObjectRetention API operation. For more information, see Using S3 Object Lock retention with S3 Batch Operations in the Amazon S3 User Guide.

This functionality is not supported by directory buckets.

", "refs": { "JobOperation$S3PutObjectRetention": null } @@ -2386,19 +2998,21 @@ "S3SetObjectTaggingOperation": { "base": "

Contains the configuration parameters for a PUT Object Tagging operation. S3 Batch Operations passes every object to the underlying PutObjectTagging API operation. For more information about the parameters for this operation, see PutObjectTagging.

", "refs": { - "JobOperation$S3PutObjectTagging": "

Directs the specified job to run a PUT Object tagging call on every object in the manifest.

" + "JobOperation$S3PutObjectTagging": "

Directs the specified job to run a PUT Object tagging call on every object in the manifest.

This functionality is not supported by directory buckets.

" } }, "S3StorageClass": { "base": null, "refs": { - "S3CopyObjectOperation$StorageClass": "

" + "S3CopyObjectOperation$StorageClass": "

Specify the storage class for the destination objects in a Copy operation.

Directory buckets - This functionality is not supported by directory buckets.

", + "StorageClassList$member": null } }, "S3Tag": { "base": "

A container for a key-value name pair.

", "refs": { "LifecycleRuleFilter$Tag": null, + "MatchAnyTag$member": null, "ReplicationRuleFilter$Tag": null, "S3TagSet$member": null } @@ -2412,7 +3026,7 @@ "LifecycleRuleAndOperator$Tags": "

All of these tags must exist in the object's tag set in order for the rule to apply.

", "PutJobTaggingRequest$Tags": "

The set of tags to associate with the S3 Batch Operations job.

", "ReplicationRuleAndOperator$Tags": "

An array of tags that contain key and value pairs.

", - "S3CopyObjectOperation$NewObjectTagging": "

", + "S3CopyObjectOperation$NewObjectTagging": "

Specifies a list of tags to add to the destination objects after they are copied. If NewObjectTagging is not specified, the tags of the source objects are copied to destination objects by default.

Directory buckets - Tags aren't supported by directory buckets. If your source objects have tags and your destination bucket is a directory bucket, specify an empty tag set in the NewObjectTagging field to prevent copying the source object tags to the directory bucket.

", "S3SetObjectTaggingOperation$TagSet": "

", "Tagging$TagSet": "

A collection for a set of tags.

" } @@ -2453,12 +3067,24 @@ "GeneratedManifestEncryption$SSES3": "

Specifies the use of SSE-S3 to encrypt generated manifest objects.

" } }, + "SecretAccessKey": { + "base": null, + "refs": { + "Credentials$SecretAccessKey": "

The secret access key of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications.

" + } + }, "SelectionCriteria": { "base": "

", "refs": { "PrefixLevelStorageMetrics$SelectionCriteria": null } }, + "SessionToken": { + "base": null, + "refs": { + "Credentials$SessionToken": "

The Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications.

" + } + }, "Setting": { "base": null, "refs": { @@ -2486,6 +3112,12 @@ "SseKmsEncryptedObjects$Status": "

Specifies whether Amazon S3 replicates objects that are created with server-side encryption by using an KMS key stored in Key Management Service.

" } }, + "StorageClassList": { + "base": null, + "refs": { + "JobManifestGeneratorFilter$MatchAnyStorageClass": "

If provided, the generated manifest includes only source bucket objects that are stored with the specified storage class.

" + } + }, "StorageLensArn": { "base": null, "refs": { @@ -2524,6 +3156,81 @@ "S3BucketDestination$Encryption": "

The container for the type encryption of the metrics exports in this bucket.

" } }, + "StorageLensGroup": { + "base": "

A custom grouping of objects that include filters for prefixes, suffixes, object tags, object size, or object age. You can create an S3 Storage Lens group that includes a single filter or multiple filter conditions. To specify multiple filter conditions, you use AND or OR logical operators.

", + "refs": { + "CreateStorageLensGroupRequest$StorageLensGroup": "

The Storage Lens group configuration.

", + "GetStorageLensGroupResult$StorageLensGroup": "

The name of the Storage Lens group that you're trying to retrieve the configuration details for.

", + "UpdateStorageLensGroupRequest$StorageLensGroup": "

The JSON file that contains the Storage Lens group configuration.

" + } + }, + "StorageLensGroupAndOperator": { + "base": "

A logical operator that allows multiple filter conditions to be joined for more complex comparisons of Storage Lens group data.

", + "refs": { + "StorageLensGroupFilter$And": "

A logical operator that allows multiple filter conditions to be joined for more complex comparisons of Storage Lens group data. Objects must match all of the listed filter conditions that are joined by the And logical operator. Only one of each filter condition is allowed.

" + } + }, + "StorageLensGroupArn": { + "base": null, + "refs": { + "ListStorageLensGroupEntry$StorageLensGroupArn": "

Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is read-only.

", + "StorageLensGroup$StorageLensGroupArn": "

Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is read-only.

", + "StorageLensGroupLevelExclude$member": null, + "StorageLensGroupLevelInclude$member": null + } + }, + "StorageLensGroupFilter": { + "base": "

The filter element sets the criteria for the Storage Lens group data that is displayed. For multiple filter conditions, the AND or OR logical operator is used.

", + "refs": { + "StorageLensGroup$Filter": "

Sets the criteria for the Storage Lens group data that is displayed. For multiple filter conditions, the AND or OR logical operator is used.

" + } + }, + "StorageLensGroupLevel": { + "base": "

Specifies the Storage Lens groups to include in the Storage Lens group aggregation.

", + "refs": { + "AccountLevel$StorageLensGroupLevel": "

A container element for S3 Storage Lens groups metrics.

" + } + }, + "StorageLensGroupLevelExclude": { + "base": null, + "refs": { + "StorageLensGroupLevelSelectionCriteria$Exclude": "

Indicates which Storage Lens group ARNs to exclude from the Storage Lens group aggregation.

" + } + }, + "StorageLensGroupLevelInclude": { + "base": null, + "refs": { + "StorageLensGroupLevelSelectionCriteria$Include": "

Indicates which Storage Lens group ARNs to include in the Storage Lens group aggregation.

" + } + }, + "StorageLensGroupLevelSelectionCriteria": { + "base": "

Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group aggregation. You can only attach Storage Lens groups to your Storage Lens dashboard if they're included in your Storage Lens group aggregation. If this value is left null, then all Storage Lens groups are selected.

", + "refs": { + "StorageLensGroupLevel$SelectionCriteria": "

Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group aggregation. If this value is left null, then all Storage Lens groups are selected.

" + } + }, + "StorageLensGroupList": { + "base": null, + "refs": { + "ListStorageLensGroupsResult$StorageLensGroupList": "

The list of Storage Lens groups that exist in the specified home Region.

" + } + }, + "StorageLensGroupName": { + "base": null, + "refs": { + "DeleteStorageLensGroupRequest$Name": "

The name of the Storage Lens group that you're trying to delete.

", + "GetStorageLensGroupRequest$Name": "

The name of the Storage Lens group that you're trying to retrieve the configuration details for.

", + "ListStorageLensGroupEntry$Name": "

Contains the name of the Storage Lens group that exists in the specified home Region.

", + "StorageLensGroup$Name": "

Contains the name of the Storage Lens group.

", + "UpdateStorageLensGroupRequest$Name": "

The name of the Storage Lens group that you want to update.

" + } + }, + "StorageLensGroupOrOperator": { + "base": "

A container element for specifying Or rule conditions. The rule conditions determine the subset of objects to which the Or rule applies. Objects can match any of the listed filter conditions, which are joined by the Or logical operator. Only one of each filter condition is allowed.

", + "refs": { + "StorageLensGroupFilter$Or": "

A single logical operator that allows multiple filter conditions to be joined. Objects can match any of the listed filter conditions, which are joined by the Or logical operator. Only one of each filter condition is allowed.

" + } + }, "StorageLensPrefixLevelDelimiter": { "base": null, "refs": { @@ -2567,6 +3274,12 @@ "refs": { } }, + "Suffix": { + "base": null, + "refs": { + "MatchAnySuffix$member": null + } + }, "SuspendedCause": { "base": null, "refs": { @@ -2579,18 +3292,54 @@ "JobDescriptor$SuspendedDate": "

The timestamp when this job was suspended, if it has been suspended.

" } }, + "Tag": { + "base": "

An Amazon Web Services resource tag that's associated with your S3 resource. You can add tags to new objects when you upload them, or you can add object tags to existing objects.

This operation is only supported for S3 Storage Lens groups and for S3 Access Grants. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant.

", + "refs": { + "TagList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$TagKeys": "

The array of tag key-value pairs that you're trying to remove from of the S3 resource.

" + } + }, "TagKeyString": { "base": null, "refs": { "S3Tag$Key": "

Key of the tag

", - "StorageLensTag$Key": "

" + "StorageLensTag$Key": "

", + "Tag$Key": "

The key of the key-value pair of a tag added to your Amazon Web Services resource. A tag key can be up to 128 Unicode characters in length and is case-sensitive. System created tags that begin with aws: aren’t supported.

", + "TagKeyList$member": null + } + }, + "TagList": { + "base": null, + "refs": { + "CreateAccessGrantRequest$Tags": "

The Amazon Web Services resource tags that you are adding to the access grant. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources.

", + "CreateAccessGrantsInstanceRequest$Tags": "

The Amazon Web Services resource tags that you are adding to the S3 Access Grants instance. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources.

", + "CreateAccessGrantsLocationRequest$Tags": "

The Amazon Web Services resource tags that you are adding to the S3 Access Grants location. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources.

", + "CreateStorageLensGroupRequest$Tags": "

The Amazon Web Services resource tags that you're adding to your Storage Lens group. This parameter is optional.

", + "ListTagsForResourceResult$Tags": "

The Amazon Web Services resource tags that are associated with the resource.

", + "TagResourceRequest$Tags": "

The Amazon Web Services resource tags that you want to add to the specified S3 resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResult": { + "base": null, + "refs": { } }, "TagValueString": { "base": null, "refs": { "S3Tag$Value": "

Value of the tag

", - "StorageLensTag$Value": "

" + "StorageLensTag$Value": "

", + "Tag$Value": "

The value of the key-value pair of a tag added to your Amazon Web Services resource. A tag value can be up to 256 Unicode characters in length and is case-sensitive.

" } }, "Tagging": { @@ -2604,7 +3353,7 @@ "refs": { "S3CopyObjectOperation$ModifiedSinceConstraint": "

", "S3CopyObjectOperation$UnModifiedSinceConstraint": "

", - "S3CopyObjectOperation$ObjectLockRetainUntilDate": "

The date when the applied object retention configuration expires on all objects in the Batch Operations job.

", + "S3CopyObjectOperation$ObjectLockRetainUntilDate": "

The date when the applied object retention configuration expires on all objects in the Batch Operations job.

This functionality is not supported by directory buckets.

", "S3ObjectMetadata$HttpExpiresDate": "

", "S3Retention$RetainUntilDate": "

The date when the applied Object Lock retention will expire on all objects set by the Batch Operations job.

" } @@ -2644,6 +3393,26 @@ "Transition$StorageClass": "

The storage class to which you want the object to transition.

" } }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResult": { + "base": null, + "refs": { + } + }, + "UpdateAccessGrantsLocationRequest": { + "base": null, + "refs": { + } + }, + "UpdateAccessGrantsLocationResult": { + "base": null, + "refs": { + } + }, "UpdateJobPriorityRequest": { "base": null, "refs": { @@ -2664,6 +3433,17 @@ "refs": { } }, + "UpdateStorageLensGroupRequest": { + "base": null, + "refs": { + } + }, + "UserArguments": { + "base": null, + "refs": { + "LambdaInvokeOperation$UserArguments": "

Key-value pairs that are passed in the payload that Batch Operations sends when invoking an Lambda function. You must specify InvocationSchemaVersion 2.0 for LambdaInvoke operations that include UserArguments. For more information, see Using Lambda with Amazon S3 Batch Operations and Amazon S3 Express One Zone in the Amazon Web Services Storage Blog.

" + } + }, "VersioningConfiguration": { "base": "

Describes the versioning state of an Amazon S3 on Outposts bucket. For more information, see PutBucketVersioning.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -71,7 +71,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -102,7 +101,6 @@ "assign": "url" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -116,7 +114,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -166,9 +163,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -181,7 +180,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -195,7 +193,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -323,7 +320,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -422,16 +418,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region: region was not a valid DNS name.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -453,7 +452,6 @@ "assign": "accessPointArn" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -482,7 +480,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -502,7 +499,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -532,7 +528,6 @@ "assign": "outpostId" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -546,7 +541,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -603,7 +597,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -623,7 +616,6 @@ "assign": "arnPartition" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -651,7 +643,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -671,7 +662,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -696,7 +686,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -716,7 +705,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -759,7 +747,6 @@ "assign": "outpostType" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -774,7 +761,6 @@ "assign": "accessPointName" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -788,7 +774,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -893,83 +878,97 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Expected an outpost type `accesspoint`, found `{outpostType}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: expected an access point name", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Expected a 4-component resource", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointArn#accountId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: missing account ID", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region in ARN: `{accessPointArn#region}` (invalid DNS name)", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The Outpost Id was not set", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: No ARN type specified", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -991,7 +990,6 @@ "assign": "bucketArn" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1020,7 +1018,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1040,7 +1037,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1070,7 +1066,6 @@ "assign": "outpostId" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1084,7 +1079,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1147,7 +1141,6 @@ "assign": "arnPartition" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1161,7 +1154,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1189,7 +1181,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1209,7 +1200,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1234,7 +1224,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1254,7 +1243,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1297,7 +1285,6 @@ "assign": "outpostType" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1312,7 +1299,6 @@ "assign": "bucketName" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1326,7 +1312,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1431,83 +1416,97 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Expected an outpost type `bucket`, found `{outpostType}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: expected a bucket name", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: Expected a 4-component resource", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: missing account ID", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: The Outpost Id was not set", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid ARN: No ARN type specified", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -1521,7 +1520,6 @@ "assign": "partitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1535,7 +1533,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1651,7 +1648,6 @@ "assign": "url" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -1730,7 +1726,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2128,16 +2125,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid region: region was not a valid DNS name.", "type": "error" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3control/2018-08-20/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3control/2018-08-20/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,20 @@ { "pagination": { + "ListAccessGrants": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListAccessGrantsInstances": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListAccessGrantsLocations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListAccessPoints": { "input_token": "NextToken", "output_token": "NextToken", @@ -29,6 +44,10 @@ "ListStorageLensConfigurations": { "input_token": "NextToken", "output_token": "NextToken" + }, + "ListStorageLensGroups": { + "input_token": "NextToken", + "output_token": "NextToken" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -326,6 +326,7 @@ "type":"structure", "members":{ "OutpostArn":{"shape":"OutpostArn"}, + "S3OutpostArn":{"shape":"S3OutpostArn"}, "OutpostId":{"shape":"OutpostId"}, "OwnerId":{"shape":"AwsAccountId"}, "CapacityInBytes":{"shape":"CapacityInBytes"} @@ -359,6 +360,10 @@ "error":{"httpStatusCode":404}, "exception":true }, + "S3OutpostArn":{ + "type":"string", + "pattern":"^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):s3-outposts:[a-z\\-0-9]*:[0-9]{12}:outpost/(op-[a-f0-9]{17}|\\d{12})/s3$" + }, "SecurityGroupId":{ "type":"string", "pattern":"^sg-([0-9a-f]{8}|[0-9a-f]{17})$" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -244,6 +244,12 @@ "refs": { } }, + "S3OutpostArn": { + "base": null, + "refs": { + "Outpost$S3OutpostArn": "

Specifies the unique S3 on Outposts ARN for use with Resource Access Manager (RAM).

" + } + }, "SecurityGroupId": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://s3-outposts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://s3-outposts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://s3-outposts-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://s3-outposts-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://s3-outposts.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://s3-outposts.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://s3-outposts.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3-outposts.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/s3outposts/2017-07-25/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/s3outposts/2017-07-25/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,9 +8,9 @@ } }, "params": { + "Region": "af-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" + "UseDualStack": false } }, { @@ -21,9 +21,9 @@ } }, "params": { + "Region": "ap-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { @@ -47,9 +47,9 @@ } }, "params": { + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { + "Region": "ap-northeast-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-3" + "UseDualStack": false } }, { @@ -73,9 +73,9 @@ } }, "params": { + "Region": "ap-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-1" + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { + "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { @@ -99,9 +99,9 @@ } }, "params": { + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -125,9 +125,9 @@ } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { + "Region": "eu-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { @@ -151,9 +151,9 @@ } }, "params": { + "Region": "eu-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-south-1" + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { @@ -177,9 +177,9 @@ } }, "params": { + "Region": "eu-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { + "Region": "eu-west-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-3" + "UseDualStack": false } }, { @@ -203,9 +203,9 @@ } }, "params": { + "Region": "me-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "me-south-1" + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { + "Region": "sa-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { @@ -229,9 +229,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { + "Region": "us-east-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { @@ -255,9 +255,9 @@ } }, "params": { + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -281,9 +281,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -294,9 +294,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -307,9 +307,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -320,9 +320,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -333,9 +333,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -359,9 +359,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -372,9 +372,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -385,9 +385,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -398,9 +398,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -411,9 +411,20 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -424,9 +435,20 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -437,9 +459,20 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -450,9 +483,20 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -463,9 +507,9 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -476,9 +520,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -501,9 +545,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -513,11 +557,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -142,6 +142,19 @@ {"shape":"ResourceLimitExceeded"} ] }, + "CreateCluster":{ + "name":"CreateCluster", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateClusterRequest"}, + "output":{"shape":"CreateClusterResponse"}, + "errors":[ + {"shape":"ResourceLimitExceeded"}, + {"shape":"ResourceInUse"} + ] + }, "CreateCodeRepository":{ "name":"CreateCodeRepository", "http":{ @@ -376,6 +389,18 @@ {"shape":"ResourceNotFound"} ] }, + "CreateInferenceComponent":{ + "name":"CreateInferenceComponent", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateInferenceComponentInput"}, + "output":{"shape":"CreateInferenceComponentOutput"}, + "errors":[ + {"shape":"ResourceLimitExceeded"} + ] + }, "CreateInferenceExperiment":{ "name":"CreateInferenceExperiment", "http":{ @@ -795,6 +820,19 @@ {"shape":"ResourceNotFound"} ] }, + "DeleteCluster":{ + "name":"DeleteCluster", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteClusterRequest"}, + "output":{"shape":"DeleteClusterResponse"}, + "errors":[ + {"shape":"ResourceNotFound"}, + {"shape":"ConflictException"} + ] + }, "DeleteCodeRepository":{ "name":"DeleteCodeRepository", "http":{ @@ -985,6 +1023,14 @@ {"shape":"ResourceNotFound"} ] }, + "DeleteInferenceComponent":{ + "name":"DeleteInferenceComponent", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteInferenceComponentInput"} + }, "DeleteInferenceExperiment":{ "name":"DeleteInferenceExperiment", "http":{ @@ -1310,6 +1356,30 @@ {"shape":"ResourceNotFound"} ] }, + "DescribeCluster":{ + "name":"DescribeCluster", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeClusterRequest"}, + "output":{"shape":"DescribeClusterResponse"}, + "errors":[ + {"shape":"ResourceNotFound"} + ] + }, + "DescribeClusterNode":{ + "name":"DescribeClusterNode", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeClusterNodeRequest"}, + "output":{"shape":"DescribeClusterNodeResponse"}, + "errors":[ + {"shape":"ResourceNotFound"} + ] + }, "DescribeCodeRepository":{ "name":"DescribeCodeRepository", "http":{ @@ -1553,6 +1623,15 @@ {"shape":"ResourceNotFound"} ] }, + "DescribeInferenceComponent":{ + "name":"DescribeInferenceComponent", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeInferenceComponentInput"}, + "output":{"shape":"DescribeInferenceComponentOutput"} + }, "DescribeInferenceExperiment":{ "name":"DescribeInferenceExperiment", "http":{ @@ -2086,6 +2165,27 @@ {"shape":"ResourceNotFound"} ] }, + "ListClusterNodes":{ + "name":"ListClusterNodes", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListClusterNodesRequest"}, + "output":{"shape":"ListClusterNodesResponse"}, + "errors":[ + {"shape":"ResourceNotFound"} + ] + }, + "ListClusters":{ + "name":"ListClusters", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListClustersRequest"}, + "output":{"shape":"ListClustersResponse"} + }, "ListCodeRepositories":{ "name":"ListCodeRepositories", "http":{ @@ -2287,6 +2387,15 @@ "input":{"shape":"ListImagesRequest"}, "output":{"shape":"ListImagesResponse"} }, + "ListInferenceComponents":{ + "name":"ListInferenceComponents", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListInferenceComponentsInput"}, + "output":{"shape":"ListInferenceComponentsOutput"} + }, "ListInferenceExperiments":{ "name":"ListInferenceExperiments", "http":{ @@ -3036,6 +3145,20 @@ {"shape":"ResourceNotFound"} ] }, + "UpdateCluster":{ + "name":"UpdateCluster", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateClusterRequest"}, + "output":{"shape":"UpdateClusterResponse"}, + "errors":[ + {"shape":"ResourceLimitExceeded"}, + {"shape":"ResourceNotFound"}, + {"shape":"ConflictException"} + ] + }, "UpdateCodeRepository":{ "name":"UpdateCodeRepository", "http":{ @@ -3189,6 +3312,30 @@ {"shape":"ResourceNotFound"} ] }, + "UpdateInferenceComponent":{ + "name":"UpdateInferenceComponent", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateInferenceComponentInput"}, + "output":{"shape":"UpdateInferenceComponentOutput"}, + "errors":[ + {"shape":"ResourceLimitExceeded"} + ] + }, + "UpdateInferenceComponentRuntimeConfig":{ + "name":"UpdateInferenceComponentRuntimeConfig", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateInferenceComponentRuntimeConfigInput"}, + "output":{"shape":"UpdateInferenceComponentRuntimeConfigOutput"}, + "errors":[ + {"shape":"ResourceLimitExceeded"} + ] + }, "UpdateInferenceExperiment":{ "name":"UpdateInferenceExperiment", "http":{ @@ -3405,6 +3552,7 @@ "max":256, "pattern":".*" }, + "AcceptEula":{"type":"boolean"}, "AccountId":{ "type":"string", "pattern":"^\\d+$" @@ -3513,6 +3661,22 @@ "max":15, "min":1 }, + "AdditionalS3DataSource":{ + "type":"structure", + "required":[ + "S3DataType", + "S3Uri" + ], + "members":{ + "S3DataType":{"shape":"AdditionalS3DataSourceDataType"}, + "S3Uri":{"shape":"S3Uri"}, + "CompressionType":{"shape":"CompressionType"} + } + }, + "AdditionalS3DataSourceDataType":{ + "type":"string", + "enum":["S3Object"] + }, "AgentVersion":{ "type":"structure", "required":[ @@ -3567,7 +3731,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:algorithm/.*" + "pattern":"^arn:aws(-cn|-us-gov)?:sagemaker:[a-z0-9\\-]{9,16}:[0-9]{12}:algorithm/[\\S]{1,2048}$" }, "AlgorithmImage":{ "type":"string", @@ -3698,7 +3862,8 @@ "AppName":{"shape":"AppName"}, "Status":{"shape":"AppStatus"}, "CreationTime":{"shape":"CreationTime"}, - "SpaceName":{"shape":"SpaceName"} + "SpaceName":{"shape":"SpaceName"}, + "ResourceSpec":{"shape":"ResourceSpec"} } }, "AppImageConfigArn":{ @@ -3713,7 +3878,8 @@ "AppImageConfigName":{"shape":"AppImageConfigName"}, "CreationTime":{"shape":"Timestamp"}, "LastModifiedTime":{"shape":"Timestamp"}, - "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"} + "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"}, + "JupyterLabAppImageConfig":{"shape":"JupyterLabAppImageConfig"} } }, "AppImageConfigList":{ @@ -3795,7 +3961,10 @@ "ml.g5.48xlarge", "ml.geospatial.interactive", "ml.p4d.24xlarge", - "ml.p4de.24xlarge" + "ml.p4de.24xlarge", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" ] }, "AppList":{ @@ -3852,7 +4021,9 @@ "KernelGateway", "TensorBoard", "RStudioServerPro", - "RSessionGateway" + "RSessionGateway", + "JupyterLab", + "CodeEditor" ] }, "ApprovalDescription":{ @@ -4432,7 +4603,14 @@ "MAPE", "MASE", "WAPE", - "AverageWeightedQuantileLoss" + "AverageWeightedQuantileLoss", + "Rouge1", + "Rouge2", + "RougeL", + "RougeLSum", + "Perplexity", + "ValidationLoss", + "TrainingLoss" ] }, "AutoMLMode":{ @@ -4474,7 +4652,8 @@ "ImageClassificationJobConfig":{"shape":"ImageClassificationJobConfig"}, "TextClassificationJobConfig":{"shape":"TextClassificationJobConfig"}, "TabularJobConfig":{"shape":"TabularJobConfig"}, - "TimeSeriesForecastingJobConfig":{"shape":"TimeSeriesForecastingJobConfig"} + "TimeSeriesForecastingJobConfig":{"shape":"TimeSeriesForecastingJobConfig"}, + "TextGenerationJobConfig":{"shape":"TextGenerationJobConfig"} }, "union":true }, @@ -4484,13 +4663,15 @@ "ImageClassification", "TextClassification", "Tabular", - "TimeSeriesForecasting" + "TimeSeriesForecasting", + "TextGeneration" ] }, "AutoMLProblemTypeResolvedAttributes":{ "type":"structure", "members":{ - "TabularResolvedAttributes":{"shape":"TabularResolvedAttributes"} + "TabularResolvedAttributes":{"shape":"TabularResolvedAttributes"}, + "TextGenerationResolvedAttributes":{"shape":"TextGenerationResolvedAttributes"} }, "union":true }, @@ -4596,6 +4777,12 @@ "type":"string", "min":1 }, + "BaseModelName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9])*" + }, "BatchDataCaptureConfig":{ "type":"structure", "required":["DestinationS3Uri"], @@ -4833,7 +5020,9 @@ "TimeSeriesForecastingSettings":{"shape":"TimeSeriesForecastingSettings"}, "ModelRegisterSettings":{"shape":"ModelRegisterSettings"}, "WorkspaceSettings":{"shape":"WorkspaceSettings"}, - "IdentityProviderOAuthSettings":{"shape":"IdentityProviderOAuthSettings"} + "IdentityProviderOAuthSettings":{"shape":"IdentityProviderOAuthSettings"}, + "KendraSettings":{"shape":"KendraSettings"}, + "DirectDeploySettings":{"shape":"DirectDeploySettings"} } }, "CapacitySize":{ @@ -5269,6 +5458,243 @@ "min":1, "pattern":"^[a-zA-Z0-9-]+$" }, + "ClusterArn":{ + "type":"string", + "max":256, + "pattern":"^arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:cluster/[a-z0-9]{12}$" + }, + "ClusterInstanceCount":{ + "type":"integer", + "min":1 + }, + "ClusterInstanceGroupDetails":{ + "type":"structure", + "members":{ + "CurrentCount":{"shape":"ClusterNonNegativeInstanceCount"}, + "TargetCount":{"shape":"ClusterInstanceCount"}, + "InstanceGroupName":{"shape":"ClusterInstanceGroupName"}, + "InstanceType":{"shape":"ClusterInstanceType"}, + "LifeCycleConfig":{"shape":"ClusterLifeCycleConfig"}, + "ExecutionRole":{"shape":"RoleArn"}, + "ThreadsPerCore":{"shape":"ClusterThreadsPerCore"} + } + }, + "ClusterInstanceGroupDetailsList":{ + "type":"list", + "member":{"shape":"ClusterInstanceGroupDetails"} + }, + "ClusterInstanceGroupName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9])*$" + }, + "ClusterInstanceGroupSpecification":{ + "type":"structure", + "required":[ + "InstanceCount", + "InstanceGroupName", + "InstanceType", + "LifeCycleConfig", + "ExecutionRole" + ], + "members":{ + "InstanceCount":{"shape":"ClusterInstanceCount"}, + "InstanceGroupName":{"shape":"ClusterInstanceGroupName"}, + "InstanceType":{"shape":"ClusterInstanceType"}, + "LifeCycleConfig":{"shape":"ClusterLifeCycleConfig"}, + "ExecutionRole":{"shape":"RoleArn"}, + "ThreadsPerCore":{"shape":"ClusterThreadsPerCore"} + } + }, + "ClusterInstanceGroupSpecifications":{ + "type":"list", + "member":{"shape":"ClusterInstanceGroupSpecification"}, + "max":5, + "min":1 + }, + "ClusterInstanceStatus":{ + "type":"string", + "enum":[ + "Running", + "Failure", + "Pending", + "ShuttingDown", + "SystemUpdating" + ] + }, + "ClusterInstanceStatusDetails":{ + "type":"structure", + "required":["Status"], + "members":{ + "Status":{"shape":"ClusterInstanceStatus"}, + "Message":{"shape":"String"} + } + }, + "ClusterInstanceType":{ + "type":"string", + "enum":[ + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.c5n.large", + "ml.c5n.2xlarge", + "ml.c5n.4xlarge", + "ml.c5n.9xlarge", + "ml.c5n.18xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge" + ] + }, + "ClusterLifeCycleConfig":{ + "type":"structure", + "required":[ + "SourceS3Uri", + "OnCreate" + ], + "members":{ + "SourceS3Uri":{"shape":"S3Uri"}, + "OnCreate":{"shape":"ClusterLifeCycleConfigFileName"} + } + }, + "ClusterLifeCycleConfigFileName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[\\S\\s]+$" + }, + "ClusterName":{ + "type":"string", + "max":63, + "min":1, + "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9])*$" + }, + "ClusterNameOrArn":{ + "type":"string", + "max":256, + "pattern":"^(arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:cluster/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9]){0,62})$" + }, + "ClusterNodeDetails":{ + "type":"structure", + "members":{ + "InstanceGroupName":{"shape":"ClusterInstanceGroupName"}, + "InstanceId":{"shape":"String"}, + "InstanceStatus":{"shape":"ClusterInstanceStatusDetails"}, + "InstanceType":{"shape":"ClusterInstanceType"}, + "LaunchTime":{"shape":"Timestamp"}, + "LifeCycleConfig":{"shape":"ClusterLifeCycleConfig"}, + "ThreadsPerCore":{"shape":"ClusterThreadsPerCore"} + } + }, + "ClusterNodeId":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z][-a-zA-Z0-9]*$" + }, + "ClusterNodeSummaries":{ + "type":"list", + "member":{"shape":"ClusterNodeSummary"} + }, + "ClusterNodeSummary":{ + "type":"structure", + "required":[ + "InstanceGroupName", + "InstanceId", + "InstanceType", + "LaunchTime", + "InstanceStatus" + ], + "members":{ + "InstanceGroupName":{"shape":"ClusterInstanceGroupName"}, + "InstanceId":{"shape":"String"}, + "InstanceType":{"shape":"ClusterInstanceType"}, + "LaunchTime":{"shape":"Timestamp"}, + "InstanceStatus":{"shape":"ClusterInstanceStatusDetails"} + } + }, + "ClusterNonNegativeInstanceCount":{ + "type":"integer", + "min":0 + }, + "ClusterSortBy":{ + "type":"string", + "enum":[ + "CREATION_TIME", + "NAME" + ] + }, + "ClusterStatus":{ + "type":"string", + "enum":[ + "Creating", + "Deleting", + "Failed", + "InService", + "RollingBack", + "SystemUpdating", + "Updating" + ] + }, + "ClusterSummaries":{ + "type":"list", + "member":{"shape":"ClusterSummary"} + }, + "ClusterSummary":{ + "type":"structure", + "required":[ + "ClusterArn", + "ClusterName", + "CreationTime", + "ClusterStatus" + ], + "members":{ + "ClusterArn":{"shape":"ClusterArn"}, + "ClusterName":{"shape":"ClusterName"}, + "CreationTime":{"shape":"Timestamp"}, + "ClusterStatus":{"shape":"ClusterStatus"} + } + }, + "ClusterThreadsPerCore":{ + "type":"integer", + "max":2, + "min":1 + }, + "CodeEditorAppSettings":{ + "type":"structure", + "members":{ + "DefaultResourceSpec":{"shape":"ResourceSpec"}, + "LifecycleConfigArns":{"shape":"LifecycleConfigArns"} + } + }, "CodeRepositories":{ "type":"list", "member":{"shape":"CodeRepository"}, @@ -5285,7 +5711,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:code-repository/.*" + "pattern":"^arn:aws(-cn|-us-gov)?:sagemaker:[a-z0-9\\-]{9,16}:[0-9]{12}:code-repository/[\\S]{1,2048}$" }, "CodeRepositoryContains":{ "type":"string", @@ -5374,6 +5800,13 @@ "min":1, "pattern":"[\\w-]+_[0-9a-zA-Z]+" }, + "CollectionConfig":{ + "type":"structure", + "members":{ + "VectorConfig":{"shape":"VectorConfig"} + }, + "union":true + }, "CollectionConfiguration":{ "type":"structure", "members":{ @@ -5400,6 +5833,14 @@ "max":20, "min":0 }, + "CollectionType":{ + "type":"string", + "enum":[ + "List", + "Set", + "Vector" + ] + }, "CompilationJobArn":{ "type":"string", "max":256, @@ -5508,6 +5949,14 @@ "max":100, "min":1 }, + "ContainerConfig":{ + "type":"structure", + "members":{ + "ContainerArguments":{"shape":"CustomImageContainerArguments"}, + "ContainerEntrypoint":{"shape":"CustomImageContainerEntrypoint"}, + "ContainerEnvironmentVariables":{"shape":"CustomImageContainerEnvironmentVariables"} + } + }, "ContainerDefinition":{ "type":"structure", "members":{ @@ -5712,7 +6161,8 @@ "members":{ "AppImageConfigName":{"shape":"AppImageConfigName"}, "Tags":{"shape":"TagList"}, - "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"} + "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"}, + "JupyterLabAppImageConfig":{"shape":"JupyterLabAppImageConfig"} } }, "CreateAppImageConfigResponse":{ @@ -5822,6 +6272,26 @@ "AutoMLJobArn":{"shape":"AutoMLJobArn"} } }, + "CreateClusterRequest":{ + "type":"structure", + "required":[ + "ClusterName", + "InstanceGroups" + ], + "members":{ + "ClusterName":{"shape":"ClusterName"}, + "InstanceGroups":{"shape":"ClusterInstanceGroupSpecifications"}, + "VpcConfig":{"shape":"VpcConfig"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateClusterResponse":{ + "type":"structure", + "required":["ClusterArn"], + "members":{ + "ClusterArn":{"shape":"ClusterArn"} + } + }, "CreateCodeRepositoryInput":{ "type":"structure", "required":[ @@ -6037,7 +6507,10 @@ "KmsKeyId":{"shape":"KmsKeyId"}, "AsyncInferenceConfig":{"shape":"AsyncInferenceConfig"}, "ExplainerConfig":{"shape":"ExplainerConfig"}, - "ShadowProductionVariants":{"shape":"ProductionVariantList"} + "ShadowProductionVariants":{"shape":"ProductionVariantList"}, + "ExecutionRoleArn":{"shape":"RoleArn"}, + "VpcConfig":{"shape":"VpcConfig"}, + "EnableNetworkIsolation":{"shape":"Boolean"} } }, "CreateEndpointConfigOutput":{ @@ -6249,6 +6722,31 @@ "ImageVersionArn":{"shape":"ImageVersionArn"} } }, + "CreateInferenceComponentInput":{ + "type":"structure", + "required":[ + "InferenceComponentName", + "EndpointName", + "VariantName", + "Specification", + "RuntimeConfig" + ], + "members":{ + "InferenceComponentName":{"shape":"InferenceComponentName"}, + "EndpointName":{"shape":"EndpointName"}, + "VariantName":{"shape":"VariantName"}, + "Specification":{"shape":"InferenceComponentSpecification"}, + "RuntimeConfig":{"shape":"InferenceComponentRuntimeConfig"}, + "Tags":{"shape":"TagList"} + } + }, + "CreateInferenceComponentOutput":{ + "type":"structure", + "required":["InferenceComponentArn"], + "members":{ + "InferenceComponentArn":{"shape":"InferenceComponentArn"} + } + }, "CreateInferenceExperimentRequest":{ "type":"structure", "required":[ @@ -6441,10 +6939,7 @@ }, "CreateModelInput":{ "type":"structure", - "required":[ - "ModelName", - "ExecutionRoleArn" - ], + "required":["ModelName"], "members":{ "ModelName":{"shape":"ModelName"}, "PrimaryContainer":{"shape":"ContainerDefinition"}, @@ -6648,7 +7143,8 @@ "UserProfileName":{"shape":"UserProfileName"}, "SessionExpirationDurationInSeconds":{"shape":"SessionExpirationDurationInSeconds"}, "ExpiresInSeconds":{"shape":"ExpiresInSeconds"}, - "SpaceName":{"shape":"SpaceName"} + "SpaceName":{"shape":"SpaceName"}, + "LandingUri":{"shape":"LandingUri"} } }, "CreatePresignedDomainUrlResponse":{ @@ -6734,7 +7230,10 @@ "DomainId":{"shape":"DomainId"}, "SpaceName":{"shape":"SpaceName"}, "Tags":{"shape":"TagList"}, - "SpaceSettings":{"shape":"SpaceSettings"} + "SpaceSettings":{"shape":"SpaceSettings"}, + "SpaceDisplayName":{"shape":"NonEmptyString64"}, + "OwnershipSettings":{"shape":"OwnershipSettings"}, + "SpaceSharingSettings":{"shape":"SpaceSharingSettings"} } }, "CreateSpaceResponse":{ @@ -6795,7 +7294,8 @@ "ProfilerConfig":{"shape":"ProfilerConfig"}, "ProfilerRuleConfigurations":{"shape":"ProfilerRuleConfigurations"}, "Environment":{"shape":"TrainingEnvironmentMap"}, - "RetryStrategy":{"shape":"RetryStrategy"} + "RetryStrategy":{"shape":"RetryStrategy"}, + "InfraCheckConfig":{"shape":"InfraCheckConfig"} } }, "CreateTrainingJobResponse":{ @@ -6962,6 +7462,30 @@ "max":10, "min":1 }, + "CustomFileSystem":{ + "type":"structure", + "members":{ + "EFSFileSystem":{"shape":"EFSFileSystem"} + }, + "union":true + }, + "CustomFileSystemConfig":{ + "type":"structure", + "members":{ + "EFSFileSystemConfig":{"shape":"EFSFileSystemConfig"} + }, + "union":true + }, + "CustomFileSystemConfigs":{ + "type":"list", + "member":{"shape":"CustomFileSystemConfig"}, + "max":2 + }, + "CustomFileSystems":{ + "type":"list", + "member":{"shape":"CustomFileSystem"}, + "max":1 + }, "CustomImage":{ "type":"structure", "required":[ @@ -6977,11 +7501,38 @@ "AppImageConfigName":{"shape":"AppImageConfigName"} } }, + "CustomImageContainerArguments":{ + "type":"list", + "member":{"shape":"NonEmptyString64"}, + "max":50 + }, + "CustomImageContainerEntrypoint":{ + "type":"list", + "member":{"shape":"NonEmptyString256"}, + "max":1 + }, + "CustomImageContainerEnvironmentVariables":{ + "type":"map", + "key":{"shape":"NonEmptyString256"}, + "value":{"shape":"String256"}, + "max":25 + }, "CustomImages":{ "type":"list", "member":{"shape":"CustomImage"}, "max":200 }, + "CustomPosixUserConfig":{ + "type":"structure", + "required":[ + "Uid", + "Gid" + ], + "members":{ + "Uid":{"shape":"Uid"}, + "Gid":{"shape":"Gid"} + } + }, "CustomerMetadataKey":{ "type":"string", "max":128, @@ -7189,6 +7740,17 @@ "max":20, "min":0 }, + "DefaultEbsStorageSettings":{ + "type":"structure", + "required":[ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "members":{ + "DefaultEbsVolumeSizeInGb":{"shape":"SpaceEbsVolumeSizeInGb"}, + "MaximumEbsVolumeSizeInGb":{"shape":"SpaceEbsVolumeSizeInGb"} + } + }, "DefaultGid":{ "type":"integer", "max":65535, @@ -7203,6 +7765,12 @@ "KernelGatewayAppSettings":{"shape":"KernelGatewayAppSettings"} } }, + "DefaultSpaceStorageSettings":{ + "type":"structure", + "members":{ + "DefaultEbsStorageSettings":{"shape":"DefaultEbsStorageSettings"} + } + }, "DefaultUid":{ "type":"integer", "max":65535, @@ -7281,6 +7849,20 @@ "DestinationArn":{"shape":"AssociationEntityArn"} } }, + "DeleteClusterRequest":{ + "type":"structure", + "required":["ClusterName"], + "members":{ + "ClusterName":{"shape":"ClusterNameOrArn"} + } + }, + "DeleteClusterResponse":{ + "type":"structure", + "required":["ClusterArn"], + "members":{ + "ClusterArn":{"shape":"ClusterArn"} + } + }, "DeleteCodeRepositoryInput":{ "type":"structure", "required":["CodeRepositoryName"], @@ -7447,6 +8029,13 @@ "members":{ } }, + "DeleteInferenceComponentInput":{ + "type":"structure", + "required":["InferenceComponentName"], + "members":{ + "InferenceComponentName":{"shape":"InferenceComponentName"} + } + }, "DeleteInferenceExperimentRequest":{ "type":"structure", "required":["Name"], @@ -7826,7 +8415,8 @@ "AppImageConfigName":{"shape":"AppImageConfigName"}, "CreationTime":{"shape":"Timestamp"}, "LastModifiedTime":{"shape":"Timestamp"}, - "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"} + "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"}, + "JupyterLabAppImageConfig":{"shape":"JupyterLabAppImageConfig"} } }, "DescribeAppRequest":{ @@ -7973,6 +8563,48 @@ "AutoMLProblemTypeConfigName":{"shape":"AutoMLProblemTypeConfigName"} } }, + "DescribeClusterNodeRequest":{ + "type":"structure", + "required":[ + "ClusterName", + "NodeId" + ], + "members":{ + "ClusterName":{"shape":"ClusterNameOrArn"}, + "NodeId":{"shape":"ClusterNodeId"} + } + }, + "DescribeClusterNodeResponse":{ + "type":"structure", + "required":["NodeDetails"], + "members":{ + "NodeDetails":{"shape":"ClusterNodeDetails"} + } + }, + "DescribeClusterRequest":{ + "type":"structure", + "required":["ClusterName"], + "members":{ + "ClusterName":{"shape":"ClusterNameOrArn"} + } + }, + "DescribeClusterResponse":{ + "type":"structure", + "required":[ + "ClusterArn", + "ClusterStatus", + "InstanceGroups" + ], + "members":{ + "ClusterArn":{"shape":"ClusterArn"}, + "ClusterName":{"shape":"ClusterName"}, + "ClusterStatus":{"shape":"ClusterStatus"}, + "CreationTime":{"shape":"Timestamp"}, + "FailureMessage":{"shape":"String"}, + "InstanceGroups":{"shape":"ClusterInstanceGroupDetailsList"}, + "VpcConfig":{"shape":"VpcConfig"} + } + }, "DescribeCodeRepositoryInput":{ "type":"structure", "required":["CodeRepositoryName"], @@ -8170,6 +8802,7 @@ "DomainName":{"shape":"DomainName"}, "HomeEfsFileSystemId":{"shape":"ResourceId"}, "SingleSignOnManagedApplicationInstanceId":{"shape":"String256"}, + "SingleSignOnApplicationArn":{"shape":"SingleSignOnApplicationArn"}, "Status":{"shape":"DomainStatus"}, "CreationTime":{"shape":"CreationTime"}, "LastModifiedTime":{"shape":"LastModifiedTime"}, @@ -8280,7 +8913,10 @@ "CreationTime":{"shape":"Timestamp"}, "AsyncInferenceConfig":{"shape":"AsyncInferenceConfig"}, "ExplainerConfig":{"shape":"ExplainerConfig"}, - "ShadowProductionVariants":{"shape":"ProductionVariantList"} + "ShadowProductionVariants":{"shape":"ProductionVariantList"}, + "ExecutionRoleArn":{"shape":"RoleArn"}, + "VpcConfig":{"shape":"VpcConfig"}, + "EnableNetworkIsolation":{"shape":"Boolean"} } }, "DescribeEndpointInput":{ @@ -8629,6 +9265,37 @@ "ReleaseNotes":{"shape":"ReleaseNotes"} } }, + "DescribeInferenceComponentInput":{ + "type":"structure", + "required":["InferenceComponentName"], + "members":{ + "InferenceComponentName":{"shape":"InferenceComponentName"} + } + }, + "DescribeInferenceComponentOutput":{ + "type":"structure", + "required":[ + "InferenceComponentName", + "InferenceComponentArn", + "EndpointName", + "EndpointArn", + "CreationTime", + "LastModifiedTime" + ], + "members":{ + "InferenceComponentName":{"shape":"InferenceComponentName"}, + "InferenceComponentArn":{"shape":"InferenceComponentArn"}, + "EndpointName":{"shape":"EndpointName"}, + "EndpointArn":{"shape":"EndpointArn"}, + "VariantName":{"shape":"VariantName"}, + "FailureReason":{"shape":"FailureReason"}, + "Specification":{"shape":"InferenceComponentSpecificationSummary"}, + "RuntimeConfig":{"shape":"InferenceComponentRuntimeConfigSummary"}, + "CreationTime":{"shape":"Timestamp"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "InferenceComponentStatus":{"shape":"InferenceComponentStatus"} + } + }, "DescribeInferenceExperimentRequest":{ "type":"structure", "required":["Name"], @@ -8906,7 +9573,6 @@ "type":"structure", "required":[ "ModelName", - "ExecutionRoleArn", "CreationTime", "ModelArn" ], @@ -9266,7 +9932,11 @@ "LastModifiedTime":{"shape":"LastModifiedTime"}, "CreationTime":{"shape":"CreationTime"}, "FailureReason":{"shape":"FailureReason"}, - "SpaceSettings":{"shape":"SpaceSettings"} + "SpaceSettings":{"shape":"SpaceSettings"}, + "Url":{"shape":"String1024"}, + "SpaceDisplayName":{"shape":"NonEmptyString64"}, + "OwnershipSettings":{"shape":"OwnershipSettings"}, + "SpaceSharingSettings":{"shape":"SpaceSharingSettings"} } }, "DescribeStudioLifecycleConfigRequest":{ @@ -9362,7 +10032,8 @@ "ProfilingStatus":{"shape":"ProfilingStatus"}, "RetryStrategy":{"shape":"RetryStrategy"}, "Environment":{"shape":"TrainingEnvironmentMap"}, - "WarmPoolStatus":{"shape":"WarmPoolStatus"} + "WarmPoolStatus":{"shape":"WarmPoolStatus"}, + "InfraCheckConfig":{"shape":"InfraCheckConfig"} } }, "DescribeTransformJobRequest":{ @@ -9613,7 +10284,7 @@ "type":"string", "max":40, "min":1, - "pattern":"[\\S\\s]+" + "pattern":"^[-a-zA-Z0-9_.,;:! ]*$" }, "DeviceFleetArn":{ "type":"string", @@ -9623,7 +10294,7 @@ "type":"string", "max":800, "min":1, - "pattern":"[\\S\\s]+" + "pattern":"^[-a-zA-Z0-9_.,;:! ]*$" }, "DeviceFleetSummaries":{ "type":"list", @@ -9707,6 +10378,17 @@ "type":"list", "member":{"shape":"Device"} }, + "Dimension":{ + "type":"integer", + "max":8192, + "min":1 + }, + "DirectDeploySettings":{ + "type":"structure", + "members":{ + "Status":{"shape":"FeatureStatus"} + } + }, "DirectInternetAccess":{ "type":"string", "enum":[ @@ -9884,6 +10566,21 @@ "ScalingPolicies":{"shape":"ScalingPolicies"} } }, + "EFSFileSystem":{ + "type":"structure", + "required":["FileSystemId"], + "members":{ + "FileSystemId":{"shape":"FileSystemId"} + } + }, + "EFSFileSystemConfig":{ + "type":"structure", + "required":["FileSystemId"], + "members":{ + "FileSystemId":{"shape":"FileSystemId"}, + "FileSystemPath":{"shape":"FileSystemPath"} + } + }, "EMRStepMetadata":{ "type":"structure", "members":{ @@ -9893,6 +10590,13 @@ "LogFilePath":{"shape":"String1024"} } }, + "EbsStorageSettings":{ + "type":"structure", + "required":["EbsVolumeSizeInGb"], + "members":{ + "EbsVolumeSizeInGb":{"shape":"SpaceEbsVolumeSizeInGb"} + } + }, "Edge":{ "type":"structure", "members":{ @@ -10117,6 +10821,7 @@ "pattern":"\\d+" }, "EnableCapture":{"type":"boolean"}, + "EnableInfraCheck":{"type":"boolean"}, "EnableIotRoleAlias":{"type":"boolean"}, "EnableSagemakerServicecatalogPortfolioInput":{ "type":"structure", @@ -10541,7 +11246,9 @@ "type":"structure", "members":{ "FeatureName":{"shape":"FeatureName"}, - "FeatureType":{"shape":"FeatureType"} + "FeatureType":{"shape":"FeatureType"}, + "CollectionType":{"shape":"CollectionType"}, + "CollectionConfig":{"shape":"CollectionConfig"} } }, "FeatureDefinitions":{ @@ -10766,7 +11473,13 @@ "FileSystemId":{ "type":"string", "min":11, - "pattern":".*" + "pattern":"^(fs-[0-9a-f]{8,})$" + }, + "FileSystemPath":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^\\/\\S*$" }, "FileSystemType":{ "type":"string", @@ -11098,6 +11811,11 @@ "PropertyNameSuggestions":{"shape":"PropertyNameSuggestionList"} } }, + "Gid":{ + "type":"long", + "max":4000000, + "min":1001 + }, "GitConfig":{ "type":"structure", "required":["RepositoryUrl"], @@ -11115,7 +11833,9 @@ }, "GitConfigUrl":{ "type":"string", - "pattern":"^https://([^/]+)/?(.*)$" + "max":1024, + "min":11, + "pattern":"^https://([^/]+)/?.{3,1016}$" }, "Group":{ "type":"string", @@ -11987,6 +12707,12 @@ "Version":{"shape":"ImageVersionNumber"} } }, + "ImageVersionAlias":{ + "type":"string", + "max":128, + "min":1, + "pattern":"(^\\d+$)|(^\\d+.\\d+$)|(^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$)" + }, "ImageVersionArn":{ "type":"string", "max":256, @@ -12063,6 +12789,135 @@ "HubContentArn":{"shape":"HubContentArn"} } }, + "InferenceComponentArn":{ + "type":"string", + "max":2048, + "min":20 + }, + "InferenceComponentComputeResourceRequirements":{ + "type":"structure", + "required":["MinMemoryRequiredInMb"], + "members":{ + "NumberOfCpuCoresRequired":{"shape":"NumberOfCpuCores"}, + "NumberOfAcceleratorDevicesRequired":{"shape":"NumberOfAcceleratorDevices"}, + "MinMemoryRequiredInMb":{"shape":"MemoryInMb"}, + "MaxMemoryRequiredInMb":{"shape":"MemoryInMb"} + } + }, + "InferenceComponentContainerSpecification":{ + "type":"structure", + "members":{ + "Image":{"shape":"ContainerImage"}, + "ArtifactUrl":{"shape":"Url"}, + "Environment":{"shape":"EnvironmentMap"} + } + }, + "InferenceComponentContainerSpecificationSummary":{ + "type":"structure", + "members":{ + "DeployedImage":{"shape":"DeployedImage"}, + "ArtifactUrl":{"shape":"Url"}, + "Environment":{"shape":"EnvironmentMap"} + } + }, + "InferenceComponentCopyCount":{ + "type":"integer", + "min":0 + }, + "InferenceComponentName":{ + "type":"string", + "max":63, + "pattern":"^[a-zA-Z0-9]([\\-a-zA-Z0-9]*[a-zA-Z0-9])?$" + }, + "InferenceComponentNameContains":{ + "type":"string", + "max":63, + "pattern":"[a-zA-Z0-9-]+" + }, + "InferenceComponentRuntimeConfig":{ + "type":"structure", + "required":["CopyCount"], + "members":{ + "CopyCount":{"shape":"InferenceComponentCopyCount"} + } + }, + "InferenceComponentRuntimeConfigSummary":{ + "type":"structure", + "members":{ + "DesiredCopyCount":{"shape":"InferenceComponentCopyCount"}, + "CurrentCopyCount":{"shape":"InferenceComponentCopyCount"} + } + }, + "InferenceComponentSortKey":{ + "type":"string", + "enum":[ + "Name", + "CreationTime", + "Status" + ] + }, + "InferenceComponentSpecification":{ + "type":"structure", + "required":["ComputeResourceRequirements"], + "members":{ + "ModelName":{"shape":"ModelName"}, + "Container":{"shape":"InferenceComponentContainerSpecification"}, + "StartupParameters":{"shape":"InferenceComponentStartupParameters"}, + "ComputeResourceRequirements":{"shape":"InferenceComponentComputeResourceRequirements"} + } + }, + "InferenceComponentSpecificationSummary":{ + "type":"structure", + "members":{ + "ModelName":{"shape":"ModelName"}, + "Container":{"shape":"InferenceComponentContainerSpecificationSummary"}, + "StartupParameters":{"shape":"InferenceComponentStartupParameters"}, + "ComputeResourceRequirements":{"shape":"InferenceComponentComputeResourceRequirements"} + } + }, + "InferenceComponentStartupParameters":{ + "type":"structure", + "members":{ + "ModelDataDownloadTimeoutInSeconds":{"shape":"ProductionVariantModelDataDownloadTimeoutInSeconds"}, + "ContainerStartupHealthCheckTimeoutInSeconds":{"shape":"ProductionVariantContainerStartupHealthCheckTimeoutInSeconds"} + } + }, + "InferenceComponentStatus":{ + "type":"string", + "enum":[ + "InService", + "Creating", + "Updating", + "Failed", + "Deleting" + ] + }, + "InferenceComponentSummary":{ + "type":"structure", + "required":[ + "CreationTime", + "InferenceComponentArn", + "InferenceComponentName", + "EndpointArn", + "EndpointName", + "VariantName", + "LastModifiedTime" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "InferenceComponentArn":{"shape":"InferenceComponentArn"}, + "InferenceComponentName":{"shape":"InferenceComponentName"}, + "EndpointArn":{"shape":"EndpointArn"}, + "EndpointName":{"shape":"EndpointName"}, + "VariantName":{"shape":"VariantName"}, + "InferenceComponentStatus":{"shape":"InferenceComponentStatus"}, + "LastModifiedTime":{"shape":"Timestamp"} + } + }, + "InferenceComponentSummaryList":{ + "type":"list", + "member":{"shape":"InferenceComponentSummary"} + }, "InferenceExecutionConfig":{ "type":"structure", "required":["Mode"], @@ -12253,11 +13108,7 @@ }, "InferenceSpecification":{ "type":"structure", - "required":[ - "Containers", - "SupportedContentTypes", - "SupportedResponseMIMETypes" - ], + "required":["Containers"], "members":{ "Containers":{"shape":"ModelPackageContainerDefinitionList"}, "SupportedTransformInstanceTypes":{"shape":"TransformInstanceTypes"}, @@ -12272,6 +13123,12 @@ "min":1, "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}$" }, + "InfraCheckConfig":{ + "type":"structure", + "members":{ + "EnableInfraCheck":{"shape":"EnableInfraCheck"} + } + }, "InitialInstanceCount":{ "type":"integer", "min":1 @@ -12532,6 +13389,21 @@ "max":63, "min":0 }, + "JupyterLabAppImageConfig":{ + "type":"structure", + "members":{ + "ContainerConfig":{"shape":"ContainerConfig"} + } + }, + "JupyterLabAppSettings":{ + "type":"structure", + "members":{ + "DefaultResourceSpec":{"shape":"ResourceSpec"}, + "CustomImages":{"shape":"CustomImages"}, + "LifecycleConfigArns":{"shape":"LifecycleConfigArns"}, + "CodeRepositories":{"shape":"CodeRepositories"} + } + }, "JupyterServerAppSettings":{ "type":"structure", "members":{ @@ -12545,6 +13417,12 @@ "max":3600, "min":0 }, + "KendraSettings":{ + "type":"structure", + "members":{ + "Status":{"shape":"FeatureStatus"} + } + }, "KernelDisplayName":{ "type":"string", "max":1024 @@ -12787,6 +13665,10 @@ "OutputParameters":{"shape":"OutputParameterList"} } }, + "LandingUri":{ + "type":"string", + "max":1023 + }, "LastModifiedTime":{"type":"timestamp"}, "LastUpdateStatus":{ "type":"structure", @@ -13039,6 +13921,54 @@ "NextToken":{"shape":"NextToken"} } }, + "ListClusterNodesRequest":{ + "type":"structure", + "required":["ClusterName"], + "members":{ + "ClusterName":{"shape":"ClusterNameOrArn"}, + "CreationTimeAfter":{"shape":"Timestamp"}, + "CreationTimeBefore":{"shape":"Timestamp"}, + "InstanceGroupNameContains":{"shape":"ClusterInstanceGroupName"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextToken"}, + "SortBy":{"shape":"ClusterSortBy"}, + "SortOrder":{"shape":"SortOrder"} + } + }, + "ListClusterNodesResponse":{ + "type":"structure", + "required":[ + "NextToken", + "ClusterNodeSummaries" + ], + "members":{ + "NextToken":{"shape":"NextToken"}, + "ClusterNodeSummaries":{"shape":"ClusterNodeSummaries"} + } + }, + "ListClustersRequest":{ + "type":"structure", + "members":{ + "CreationTimeAfter":{"shape":"Timestamp"}, + "CreationTimeBefore":{"shape":"Timestamp"}, + "MaxResults":{"shape":"MaxResults"}, + "NameContains":{"shape":"NameContains"}, + "NextToken":{"shape":"NextToken"}, + "SortBy":{"shape":"ClusterSortBy"}, + "SortOrder":{"shape":"SortOrder"} + } + }, + "ListClustersResponse":{ + "type":"structure", + "required":[ + "NextToken", + "ClusterSummaries" + ], + "members":{ + "NextToken":{"shape":"NextToken"}, + "ClusterSummaries":{"shape":"ClusterSummaries"} + } + }, "ListCodeRepositoriesInput":{ "type":"structure", "members":{ @@ -13551,6 +14481,31 @@ "NextToken":{"shape":"NextToken"} } }, + "ListInferenceComponentsInput":{ + "type":"structure", + "members":{ + "SortBy":{"shape":"InferenceComponentSortKey"}, + "SortOrder":{"shape":"OrderKey"}, + "NextToken":{"shape":"PaginationToken"}, + "MaxResults":{"shape":"MaxResults"}, + "NameContains":{"shape":"InferenceComponentNameContains"}, + "CreationTimeBefore":{"shape":"Timestamp"}, + "CreationTimeAfter":{"shape":"Timestamp"}, + "LastModifiedTimeBefore":{"shape":"Timestamp"}, + "LastModifiedTimeAfter":{"shape":"Timestamp"}, + "StatusEquals":{"shape":"InferenceComponentStatus"}, + "EndpointNameEquals":{"shape":"EndpointName"}, + "VariantNameEquals":{"shape":"VariantName"} + } + }, + "ListInferenceComponentsOutput":{ + "type":"structure", + "required":["InferenceComponents"], + "members":{ + "InferenceComponents":{"shape":"InferenceComponentSummaryList"}, + "NextToken":{"shape":"PaginationToken"} + } + }, "ListInferenceExperimentsRequest":{ "type":"structure", "members":{ @@ -14484,6 +15439,21 @@ "min":1, "pattern":"^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$" }, + "ManagedInstanceScalingMaxInstanceCount":{ + "type":"integer", + "min":1 + }, + "ManagedInstanceScalingMinInstanceCount":{ + "type":"integer", + "min":1 + }, + "ManagedInstanceScalingStatus":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "MaxAutoMLJobRuntimeInSeconds":{ "type":"integer", "min":1 @@ -14539,6 +15509,11 @@ "type":"integer", "min":0 }, + "MaxPendingTimeInSeconds":{ + "type":"integer", + "max":2419200, + "min":7200 + }, "MaxPercentageOfInputDatasetLabeled":{ "type":"integer", "max":100, @@ -14589,6 +15564,10 @@ "max":10, "min":1 }, + "MemoryInMb":{ + "type":"integer", + "min":128 + }, "MetadataProperties":{ "type":"structure", "members":{ @@ -14705,6 +15684,13 @@ "DeploymentRecommendation":{"shape":"DeploymentRecommendation"} } }, + "ModelAccessConfig":{ + "type":"structure", + "required":["AcceptEula"], + "members":{ + "AcceptEula":{"shape":"AcceptEula"} + } + }, "ModelApprovalStatus":{ "type":"string", "enum":[ @@ -15040,7 +16026,8 @@ "MonitoringScheduleConfig":{"shape":"MonitoringScheduleConfig"}, "EndpointName":{"shape":"EndpointName"}, "MonitoringAlertSummaries":{"shape":"MonitoringAlertSummaryList"}, - "LastMonitoringExecutionSummary":{"shape":"MonitoringExecutionSummary"} + "LastMonitoringExecutionSummary":{"shape":"MonitoringExecutionSummary"}, + "BatchTransformInput":{"shape":"BatchTransformInput"} } }, "ModelDashboardMonitoringSchedules":{ @@ -15253,7 +16240,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:model-package/.*" + "pattern":"^arn:aws(-cn|-us-gov)?:sagemaker:[a-z0-9\\-]{9,16}:[0-9]{12}:model-package/[\\S]{1,2048}$" }, "ModelPackageArnList":{ "type":"list", @@ -15274,7 +16261,8 @@ "ModelInput":{"shape":"ModelInput"}, "Framework":{"shape":"String"}, "FrameworkVersion":{"shape":"ModelPackageFrameworkVersion"}, - "NearestModelName":{"shape":"String"} + "NearestModelName":{"shape":"String"}, + "AdditionalS3DataSource":{"shape":"AdditionalS3DataSource"} } }, "ModelPackageContainerDefinitionList":{ @@ -15305,7 +16293,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:model-package-group/.*" + "pattern":"^arn:aws(-cn|-us-gov)?:sagemaker:[a-z0-9\\-]{9,16}:[0-9]{12}:model-package-group/[\\S]{1,2048}$" }, "ModelPackageGroupSortBy":{ "type":"string", @@ -15394,7 +16382,6 @@ "ModelPackageSummary":{ "type":"structure", "required":[ - "ModelPackageName", "ModelPackageArn", "CreationTime", "ModelPackageStatus" @@ -15829,7 +16816,7 @@ "type":"string", "max":63, "min":1, - "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9])*$" + "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}$" }, "MonitoringJobDefinitionSortKey":{ "type":"string", @@ -16114,6 +17101,16 @@ "max":8192, "pattern":".*" }, + "NonEmptyString256":{ + "type":"string", + "max":256, + "pattern":"^(?!\\s*$).+" + }, + "NonEmptyString64":{ + "type":"string", + "max":64, + "pattern":"^(?!\\s*$).+" + }, "NotebookInstanceAcceleratorType":{ "type":"string", "enum":[ @@ -16279,6 +17276,14 @@ "type":"string", "pattern":"arn:aws[a-z\\-]*:sns:[a-z0-9\\-]*:[0-9]{12}:[a-zA-Z0-9_.-]*" }, + "NumberOfAcceleratorDevices":{ + "type":"float", + "min":1 + }, + "NumberOfCpuCores":{ + "type":"float", + "min":0.25 + }, "NumberOfHumanWorkersPerDataObject":{ "type":"integer", "max":9, @@ -16386,7 +17391,8 @@ "members":{ "SecurityConfig":{"shape":"OnlineStoreSecurityConfig"}, "EnableOnlineStore":{"shape":"Boolean"}, - "TtlDuration":{"shape":"TtlDuration"} + "TtlDuration":{"shape":"TtlDuration"}, + "StorageType":{"shape":"StorageType"} } }, "OnlineStoreConfigUpdate":{ @@ -16474,6 +17480,19 @@ "max":50, "min":0 }, + "OwnershipSettings":{ + "type":"structure", + "required":["OwnerUserProfileName"], + "members":{ + "OwnerUserProfileName":{"shape":"UserProfileName"} + } + }, + "OwnershipSettingsSummary":{ + "type":"structure", + "members":{ + "OwnerUserProfileName":{"shape":"UserProfileName"} + } + }, "PaginationToken":{ "type":"string", "max":8192, @@ -16597,7 +17616,9 @@ "AcceleratorType":{"shape":"ProductionVariantAcceleratorType"}, "VariantStatus":{"shape":"ProductionVariantStatusList"}, "CurrentServerlessConfig":{"shape":"ProductionVariantServerlessConfig"}, - "DesiredServerlessConfig":{"shape":"ProductionVariantServerlessConfig"} + "DesiredServerlessConfig":{"shape":"ProductionVariantServerlessConfig"}, + "ManagedInstanceScaling":{"shape":"ProductionVariantManagedInstanceScaling"}, + "RoutingConfig":{"shape":"ProductionVariantRoutingConfig"} } }, "PendingProductionVariantSummaryList":{ @@ -16801,7 +17822,7 @@ "type":"string", "max":256, "min":1, - "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,255}$" + "pattern":"^[A-Za-z0-9\\-_]*$" }, "PipelineStatus":{ "type":"string", @@ -17171,10 +18192,7 @@ }, "ProductionVariant":{ "type":"structure", - "required":[ - "VariantName", - "ModelName" - ], + "required":["VariantName"], "members":{ "VariantName":{"shape":"VariantName"}, "ModelName":{"shape":"ModelName"}, @@ -17187,7 +18205,9 @@ "VolumeSizeInGB":{"shape":"ProductionVariantVolumeSizeInGB"}, "ModelDataDownloadTimeoutInSeconds":{"shape":"ProductionVariantModelDataDownloadTimeoutInSeconds"}, "ContainerStartupHealthCheckTimeoutInSeconds":{"shape":"ProductionVariantContainerStartupHealthCheckTimeoutInSeconds"}, - "EnableSSMAccess":{"shape":"ProductionVariantSSMAccess"} + "EnableSSMAccess":{"shape":"ProductionVariantSSMAccess"}, + "ManagedInstanceScaling":{"shape":"ProductionVariantManagedInstanceScaling"}, + "RoutingConfig":{"shape":"ProductionVariantRoutingConfig"} } }, "ProductionVariantAcceleratorType":{ @@ -17363,7 +18383,8 @@ "ml.inf2.xlarge", "ml.inf2.8xlarge", "ml.inf2.24xlarge", - "ml.inf2.48xlarge" + "ml.inf2.48xlarge", + "ml.p5.48xlarge" ] }, "ProductionVariantList":{ @@ -17372,11 +18393,26 @@ "max":10, "min":1 }, + "ProductionVariantManagedInstanceScaling":{ + "type":"structure", + "members":{ + "Status":{"shape":"ManagedInstanceScalingStatus"}, + "MinInstanceCount":{"shape":"ManagedInstanceScalingMinInstanceCount"}, + "MaxInstanceCount":{"shape":"ManagedInstanceScalingMaxInstanceCount"} + } + }, "ProductionVariantModelDataDownloadTimeoutInSeconds":{ "type":"integer", "max":3600, "min":60 }, + "ProductionVariantRoutingConfig":{ + "type":"structure", + "required":["RoutingStrategy"], + "members":{ + "RoutingStrategy":{"shape":"RoutingStrategy"} + } + }, "ProductionVariantSSMAccess":{"type":"boolean"}, "ProductionVariantServerlessConfig":{ "type":"structure", @@ -17424,7 +18460,9 @@ "DesiredInstanceCount":{"shape":"TaskCount"}, "VariantStatus":{"shape":"ProductionVariantStatusList"}, "CurrentServerlessConfig":{"shape":"ProductionVariantServerlessConfig"}, - "DesiredServerlessConfig":{"shape":"ProductionVariantServerlessConfig"} + "DesiredServerlessConfig":{"shape":"ProductionVariantServerlessConfig"}, + "ManagedInstanceScaling":{"shape":"ProductionVariantManagedInstanceScaling"}, + "RoutingConfig":{"shape":"ProductionVariantRoutingConfig"} } }, "ProductionVariantSummaryList":{ @@ -17535,7 +18573,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:project:.*" + "pattern":"^arn:aws(-cn|-us-gov)?:sagemaker:[a-z0-9\\-]{9,16}:[0-9]{12}:project/[\\S]{1,2048}$" }, "ProjectEntityName":{ "type":"string", @@ -18343,6 +19381,7 @@ "members":{ "SageMakerImageArn":{"shape":"ImageArn"}, "SageMakerImageVersionArn":{"shape":"ImageVersionArn"}, + "SageMakerImageVersionAlias":{"shape":"ImageVersionAlias"}, "InstanceType":{"shape":"AppInstanceType"}, "LifecycleConfigArn":{"shape":"StudioLifecycleConfigArn"} } @@ -18443,6 +19482,13 @@ "Disabled" ] }, + "RoutingStrategy":{ + "type":"string", + "enum":[ + "LEAST_OUTSTANDING_REQUESTS", + "RANDOM" + ] + }, "RuleConfigurationName":{ "type":"string", "max":256, @@ -18506,7 +19552,8 @@ "members":{ "S3Uri":{"shape":"S3ModelUri"}, "S3DataType":{"shape":"S3ModelDataType"}, - "CompressionType":{"shape":"ModelCompressionType"} + "CompressionType":{"shape":"ModelCompressionType"}, + "ModelAccessConfig":{"shape":"ModelAccessConfig"} } }, "S3ModelDataType":{ @@ -18755,10 +19802,7 @@ }, "SelectiveExecutionConfig":{ "type":"structure", - "required":[ - "SourcePipelineExecutionArn", - "SelectedSteps" - ], + "required":["SelectedSteps"], "members":{ "SourcePipelineExecutionArn":{"shape":"PipelineExecutionArn"}, "SelectedSteps":{"shape":"SelectedStepList"} @@ -18892,6 +19936,13 @@ "S3KmsKeyId":{"shape":"KmsKeyId"} } }, + "SharingType":{ + "type":"string", + "enum":[ + "Private", + "Shared" + ] + }, "ShuffleConfig":{ "type":"structure", "required":["Seed"], @@ -18899,6 +19950,10 @@ "Seed":{"shape":"Seed"} } }, + "SingleSignOnApplicationArn":{ + "type":"string", + "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::[0-9]+:application\\/[a-zA-Z0-9-_.]+\\/apl-[a-zA-Z0-9]+$" + }, "SingleSignOnUserIdentifier":{ "type":"string", "pattern":"UserName" @@ -19050,6 +20105,12 @@ "max":256, "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:space/.*" }, + "SpaceCodeEditorAppSettings":{ + "type":"structure", + "members":{ + "DefaultResourceSpec":{"shape":"ResourceSpec"} + } + }, "SpaceDetails":{ "type":"structure", "members":{ @@ -19057,7 +20118,23 @@ "SpaceName":{"shape":"SpaceName"}, "Status":{"shape":"SpaceStatus"}, "CreationTime":{"shape":"CreationTime"}, - "LastModifiedTime":{"shape":"LastModifiedTime"} + "LastModifiedTime":{"shape":"LastModifiedTime"}, + "SpaceDisplayName":{"shape":"NonEmptyString64"}, + "SpaceSettingsSummary":{"shape":"SpaceSettingsSummary"}, + "SpaceSharingSettingsSummary":{"shape":"SpaceSharingSettingsSummary"}, + "OwnershipSettingsSummary":{"shape":"OwnershipSettingsSummary"} + } + }, + "SpaceEbsVolumeSizeInGb":{ + "type":"integer", + "max":16384, + "min":5 + }, + "SpaceJupyterLabAppSettings":{ + "type":"structure", + "members":{ + "DefaultResourceSpec":{"shape":"ResourceSpec"}, + "CodeRepositories":{"shape":"CodeRepositories"} } }, "SpaceList":{ @@ -19073,7 +20150,32 @@ "type":"structure", "members":{ "JupyterServerAppSettings":{"shape":"JupyterServerAppSettings"}, - "KernelGatewayAppSettings":{"shape":"KernelGatewayAppSettings"} + "KernelGatewayAppSettings":{"shape":"KernelGatewayAppSettings"}, + "JupyterLabAppSettings":{"shape":"SpaceJupyterLabAppSettings"}, + "CodeEditorAppSettings":{"shape":"SpaceCodeEditorAppSettings"}, + "SpaceStorageSettings":{"shape":"SpaceStorageSettings"}, + "AppType":{"shape":"AppType"}, + "CustomFileSystems":{"shape":"CustomFileSystems"} + } + }, + "SpaceSettingsSummary":{ + "type":"structure", + "members":{ + "AppType":{"shape":"AppType"}, + "SpaceStorageSettings":{"shape":"SpaceStorageSettings"} + } + }, + "SpaceSharingSettings":{ + "type":"structure", + "required":["SharingType"], + "members":{ + "SharingType":{"shape":"SharingType"} + } + }, + "SpaceSharingSettingsSummary":{ + "type":"structure", + "members":{ + "SharingType":{"shape":"SharingType"} } }, "SpaceSortKey":{ @@ -19095,6 +20197,12 @@ "Delete_Failed" ] }, + "SpaceStorageSettings":{ + "type":"structure", + "members":{ + "EbsStorageSettings":{"shape":"EbsStorageSettings"} + } + }, "SpawnRate":{ "type":"integer", "min":0 @@ -19370,9 +20478,17 @@ "type":"structure", "members":{ "MaxRuntimeInSeconds":{"shape":"MaxRuntimeInSeconds"}, - "MaxWaitTimeInSeconds":{"shape":"MaxWaitTimeInSeconds"} + "MaxWaitTimeInSeconds":{"shape":"MaxWaitTimeInSeconds"}, + "MaxPendingTimeInSeconds":{"shape":"MaxPendingTimeInSeconds"} } }, + "StorageType":{ + "type":"string", + "enum":[ + "Standard", + "InMemory" + ] + }, "String":{"type":"string"}, "String1024":{ "type":"string", @@ -19421,7 +20537,9 @@ "type":"string", "enum":[ "JupyterServer", - "KernelGateway" + "KernelGateway", + "JupyterLab", + "CodeEditor" ] }, "StudioLifecycleConfigArn":{ @@ -19462,6 +20580,13 @@ "type":"list", "member":{"shape":"StudioLifecycleConfigDetails"} }, + "StudioWebPortal":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "SubnetId":{ "type":"string", "max":32, @@ -19751,6 +20876,37 @@ "TargetLabelColumn":{"shape":"TargetLabelColumn"} } }, + "TextGenerationHyperParameterKey":{ + "type":"string", + "max":32, + "pattern":"^[a-zA-Z0-9._-]+$" + }, + "TextGenerationHyperParameterValue":{ + "type":"string", + "max":16, + "pattern":"^[a-zA-Z0-9._-]+$" + }, + "TextGenerationHyperParameters":{ + "type":"map", + "key":{"shape":"TextGenerationHyperParameterKey"}, + "value":{"shape":"TextGenerationHyperParameterValue"}, + "max":30, + "min":0 + }, + "TextGenerationJobConfig":{ + "type":"structure", + "members":{ + "CompletionCriteria":{"shape":"AutoMLJobCompletionCriteria"}, + "BaseModelName":{"shape":"BaseModelName"}, + "TextGenerationHyperParameters":{"shape":"TextGenerationHyperParameters"} + } + }, + "TextGenerationResolvedAttributes":{ + "type":"structure", + "members":{ + "BaseModelName":{"shape":"BaseModelName"} + } + }, "ThingName":{ "type":"string", "max":128, @@ -19862,7 +21018,7 @@ "TrainingContainerEntrypoint":{ "type":"list", "member":{"shape":"TrainingContainerEntrypointString"}, - "max":10, + "max":100, "min":1 }, "TrainingContainerEntrypointString":{ @@ -19879,7 +21035,7 @@ "type":"map", "key":{"shape":"TrainingEnvironmentKey"}, "value":{"shape":"TrainingEnvironmentValue"}, - "max":48 + "max":100 }, "TrainingEnvironmentValue":{ "type":"string", @@ -20141,7 +21297,8 @@ "SupportsDistributedTraining":{"shape":"Boolean"}, "MetricDefinitions":{"shape":"MetricDefinitionList"}, "TrainingChannels":{"shape":"ChannelSpecifications"}, - "SupportedTuningJobObjectiveMetrics":{"shape":"HyperParameterTuningJobObjectives"} + "SupportedTuningJobObjectiveMetrics":{"shape":"HyperParameterTuningJobObjectives"}, + "AdditionalS3DataSource":{"shape":"AdditionalS3DataSource"} } }, "TrainingTimeInSeconds":{ @@ -20645,6 +21802,11 @@ "ContentSha256":{"shape":"TemplateContentSha256"} } }, + "Uid":{ + "type":"long", + "max":4000000, + "min":10000 + }, "UpdateActionRequest":{ "type":"structure", "required":["ActionName"], @@ -20667,7 +21829,8 @@ "required":["AppImageConfigName"], "members":{ "AppImageConfigName":{"shape":"AppImageConfigName"}, - "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"} + "KernelGatewayImageConfig":{"shape":"KernelGatewayImageConfig"}, + "JupyterLabAppImageConfig":{"shape":"JupyterLabAppImageConfig"} } }, "UpdateAppImageConfigResponse":{ @@ -20692,6 +21855,24 @@ "ArtifactArn":{"shape":"ArtifactArn"} } }, + "UpdateClusterRequest":{ + "type":"structure", + "required":[ + "ClusterName", + "InstanceGroups" + ], + "members":{ + "ClusterName":{"shape":"ClusterNameOrArn"}, + "InstanceGroups":{"shape":"ClusterInstanceGroupSpecifications"} + } + }, + "UpdateClusterResponse":{ + "type":"structure", + "required":["ClusterArn"], + "members":{ + "ClusterArn":{"shape":"ClusterArn"} + } + }, "UpdateCodeRepositoryInput":{ "type":"structure", "required":["CodeRepositoryName"], @@ -20756,7 +21937,9 @@ "DefaultUserSettings":{"shape":"UserSettings"}, "DomainSettingsForUpdate":{"shape":"DomainSettingsForUpdate"}, "DefaultSpaceSettings":{"shape":"DefaultSpaceSettings"}, - "AppSecurityGroupManagement":{"shape":"AppSecurityGroupManagement"} + "AppSecurityGroupManagement":{"shape":"AppSecurityGroupManagement"}, + "SubnetIds":{"shape":"Subnets"}, + "AppNetworkAccessType":{"shape":"AppNetworkAccessType"} } }, "UpdateDomainResponse":{ @@ -20908,6 +22091,40 @@ "ImageVersionArn":{"shape":"ImageVersionArn"} } }, + "UpdateInferenceComponentInput":{ + "type":"structure", + "required":["InferenceComponentName"], + "members":{ + "InferenceComponentName":{"shape":"InferenceComponentName"}, + "Specification":{"shape":"InferenceComponentSpecification"}, + "RuntimeConfig":{"shape":"InferenceComponentRuntimeConfig"} + } + }, + "UpdateInferenceComponentOutput":{ + "type":"structure", + "required":["InferenceComponentArn"], + "members":{ + "InferenceComponentArn":{"shape":"InferenceComponentArn"} + } + }, + "UpdateInferenceComponentRuntimeConfigInput":{ + "type":"structure", + "required":[ + "InferenceComponentName", + "DesiredRuntimeConfig" + ], + "members":{ + "InferenceComponentName":{"shape":"InferenceComponentName"}, + "DesiredRuntimeConfig":{"shape":"InferenceComponentRuntimeConfig"} + } + }, + "UpdateInferenceComponentRuntimeConfigOutput":{ + "type":"structure", + "required":["InferenceComponentArn"], + "members":{ + "InferenceComponentArn":{"shape":"InferenceComponentArn"} + } + }, "UpdateInferenceExperimentRequest":{ "type":"structure", "required":["Name"], @@ -21103,7 +22320,8 @@ "members":{ "DomainId":{"shape":"DomainId"}, "SpaceName":{"shape":"SpaceName"}, - "SpaceSettings":{"shape":"SpaceSettings"} + "SpaceSettings":{"shape":"SpaceSettings"}, + "SpaceDisplayName":{"shape":"NonEmptyString64"} } }, "UpdateSpaceResponse":{ @@ -21286,7 +22504,14 @@ "TensorBoardAppSettings":{"shape":"TensorBoardAppSettings"}, "RStudioServerProAppSettings":{"shape":"RStudioServerProAppSettings"}, "RSessionAppSettings":{"shape":"RSessionAppSettings"}, - "CanvasAppSettings":{"shape":"CanvasAppSettings"} + "CanvasAppSettings":{"shape":"CanvasAppSettings"}, + "JupyterLabAppSettings":{"shape":"JupyterLabAppSettings"}, + "CodeEditorAppSettings":{"shape":"CodeEditorAppSettings"}, + "SpaceStorageSettings":{"shape":"DefaultSpaceStorageSettings"}, + "DefaultLandingUri":{"shape":"LandingUri"}, + "StudioWebPortal":{"shape":"StudioWebPortal"}, + "CustomPosixUserConfig":{"shape":"CustomPosixUserConfig"}, + "CustomFileSystemConfigs":{"shape":"CustomFileSystemConfigs"} } }, "UsersPerStep":{ @@ -21352,6 +22577,13 @@ "type":"float", "min":0 }, + "VectorConfig":{ + "type":"structure", + "required":["Dimension"], + "members":{ + "Dimension":{"shape":"Dimension"} + } + }, "VendorGuidance":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,35 +3,37 @@ "service": "

Provides APIs for creating and managing SageMaker resources.

Other Resources:

", "operations": { "AddAssociation": "

Creates an association between the source and the destination. A source can be associated with multiple destinations, and a destination can be associated with multiple sources. An association is a lineage tracking entity. For more information, see Amazon SageMaker ML Lineage Tracking.

", - "AddTags": "

Adds or overwrites one or more tags for the specified SageMaker resource. You can add tags to notebook instances, training jobs, hyperparameter tuning jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, and endpoints.

Each tag consists of a key and an optional value. Tag keys must be unique per resource. For more information about tags, see For more information, see Amazon Web Services Tagging Strategies.

Tags that you add to a hyperparameter tuning job by calling this API are also added to any training jobs that the hyperparameter tuning job launches after you call this API, but not to training jobs that the hyperparameter tuning job launched before you called this API. To make sure that the tags associated with a hyperparameter tuning job are also added to all training jobs that the hyperparameter tuning job launches, add the tags when you first create the tuning job by specifying them in the Tags parameter of CreateHyperParameterTuningJob

Tags that you add to a SageMaker Studio Domain or User Profile by calling this API are also added to any Apps that the Domain or User Profile launches after you call this API, but not to Apps that the Domain or User Profile launched before you called this API. To make sure that the tags associated with a Domain or User Profile are also added to all Apps that the Domain or User Profile launches, add the tags when you first create the Domain or User Profile by specifying them in the Tags parameter of CreateDomain or CreateUserProfile.

", + "AddTags": "

Adds or overwrites one or more tags for the specified SageMaker resource. You can add tags to notebook instances, training jobs, hyperparameter tuning jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, and endpoints.

Each tag consists of a key and an optional value. Tag keys must be unique per resource. For more information about tags, see For more information, see Amazon Web Services Tagging Strategies.

Tags that you add to a hyperparameter tuning job by calling this API are also added to any training jobs that the hyperparameter tuning job launches after you call this API, but not to training jobs that the hyperparameter tuning job launched before you called this API. To make sure that the tags associated with a hyperparameter tuning job are also added to all training jobs that the hyperparameter tuning job launches, add the tags when you first create the tuning job by specifying them in the Tags parameter of CreateHyperParameterTuningJob

Tags that you add to a SageMaker Domain or User Profile by calling this API are also added to any Apps that the Domain or User Profile launches after you call this API, but not to Apps that the Domain or User Profile launched before you called this API. To make sure that the tags associated with a Domain or User Profile are also added to all Apps that the Domain or User Profile launches, add the tags when you first create the Domain or User Profile by specifying them in the Tags parameter of CreateDomain or CreateUserProfile.

", "AssociateTrialComponent": "

Associates a trial component with a trial. A trial component can be associated with multiple trials. To disassociate a trial component from a trial, call the DisassociateTrialComponent API.

", "BatchDescribeModelPackage": "

This action batch describes a list of versioned model packages

", "CreateAction": "

Creates an action. An action is a lineage tracking entity that represents an action or activity. For example, a model deployment or an HPO job. Generally, an action involves at least one input or output artifact. For more information, see Amazon SageMaker ML Lineage Tracking.

", "CreateAlgorithm": "

Create a machine learning algorithm that you can use in SageMaker and list in the Amazon Web Services Marketplace.

", - "CreateApp": "

Creates a running app for the specified UserProfile. This operation is automatically invoked by Amazon SageMaker Studio upon access to the associated Domain, and when new kernel configurations are selected by the user. A user may have multiple Apps active simultaneously.

", + "CreateApp": "

Creates a running app for the specified UserProfile. This operation is automatically invoked by Amazon SageMaker upon access to the associated Domain, and when new kernel configurations are selected by the user. A user may have multiple Apps active simultaneously.

", "CreateAppImageConfig": "

Creates a configuration for running a SageMaker image as a KernelGateway app. The configuration specifies the Amazon Elastic File System (EFS) storage volume on the image, and a list of the kernels in the image.

", "CreateArtifact": "

Creates an artifact. An artifact is a lineage tracking entity that represents a URI addressable object or data. Some examples are the S3 URI of a dataset and the ECR registry path of an image. For more information, see Amazon SageMaker ML Lineage Tracking.

", - "CreateAutoMLJob": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.

We recommend using the new versions CreateAutoMLJobV2 and DescribeAutoMLJobV2, which offer backward compatibility.

CreateAutoMLJobV2 can manage tabular problem types identical to those of its previous version CreateAutoMLJob, as well as non-tabular problem types such as image or text classification.

Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

You can find the best-performing model after you run an AutoML job by calling DescribeAutoMLJobV2 (recommended) or DescribeAutoMLJob.

", - "CreateAutoMLJobV2": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job V2.

CreateAutoMLJobV2 and DescribeAutoMLJobV2 are new versions of CreateAutoMLJob and DescribeAutoMLJob which offer backward compatibility.

CreateAutoMLJobV2 can manage tabular problem types identical to those of its previous version CreateAutoMLJob, as well as non-tabular problem types such as image or text classification.

Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

For the list of available problem types supported by CreateAutoMLJobV2, see AutoMLProblemTypeConfig.

You can find the best-performing model after you run an AutoML job V2 by calling DescribeAutoMLJobV2.

", + "CreateAutoMLJob": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.

We recommend using the new versions CreateAutoMLJobV2 and DescribeAutoMLJobV2, which offer backward compatibility.

CreateAutoMLJobV2 can manage tabular problem types identical to those of its previous version CreateAutoMLJob, as well as time-series forecasting, non-tabular problem types such as image or text classification, and text generation (LLMs fine-tuning).

Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

You can find the best-performing model after you run an AutoML job by calling DescribeAutoMLJobV2 (recommended) or DescribeAutoMLJob.

", + "CreateAutoMLJobV2": "

Creates an Autopilot job also referred to as Autopilot experiment or AutoML job V2.

CreateAutoMLJobV2 and DescribeAutoMLJobV2 are new versions of CreateAutoMLJob and DescribeAutoMLJob which offer backward compatibility.

CreateAutoMLJobV2 can manage tabular problem types identical to those of its previous version CreateAutoMLJob, as well as time-series forecasting, non-tabular problem types such as image or text classification, and text generation (LLMs fine-tuning).

Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 in Migrate a CreateAutoMLJob to CreateAutoMLJobV2.

For the list of available problem types supported by CreateAutoMLJobV2, see AutoMLProblemTypeConfig.

You can find the best-performing model after you run an AutoML job V2 by calling DescribeAutoMLJobV2.

", + "CreateCluster": "

Creates a SageMaker HyperPod cluster. SageMaker HyperPod is a capability of SageMaker for creating and managing persistent clusters for developing large machine learning models, such as large language models (LLMs) and diffusion models. To learn more, see Amazon SageMaker HyperPod in the Amazon SageMaker Developer Guide.

", "CreateCodeRepository": "

Creates a Git repository as a resource in your SageMaker account. You can associate the repository with notebook instances so that you can use Git source control for the notebooks you create. The Git repository is a resource in your SageMaker account, so it can be associated with more than one notebook instance, and it persists independently from the lifecycle of any notebook instances it is associated with.

The repository can be hosted either in Amazon Web Services CodeCommit or in any other Git repository.

", "CreateCompilationJob": "

Starts a model compilation job. After the model has been compiled, Amazon SageMaker saves the resulting model artifacts to an Amazon Simple Storage Service (Amazon S3) bucket that you specify.

If you choose to host your model using Amazon SageMaker hosting services, you can use the resulting model artifacts as part of the model. You can also use the artifacts with Amazon Web Services IoT Greengrass. In that case, deploy them as an ML resource.

In the request body, you provide the following:

  • A name for the compilation job

  • Information about the input model artifacts

  • The output location for the compiled model and the device (target) that the model runs on

  • The Amazon Resource Name (ARN) of the IAM role that Amazon SageMaker assumes to perform the model compilation job.

You can also provide a Tag to track the model compilation job's resource use and costs. The response body contains the CompilationJobArn for the compiled job.

To stop a model compilation job, use StopCompilationJob. To get information about a particular model compilation job, use DescribeCompilationJob. To get information about multiple model compilation jobs, use ListCompilationJobs.

", "CreateContext": "

Creates a context. A context is a lineage tracking entity that represents a logical grouping of other tracking or experiment entities. Some examples are an endpoint and a model package. For more information, see Amazon SageMaker ML Lineage Tracking.

", "CreateDataQualityJobDefinition": "

Creates a definition for a job that monitors data quality and drift. For information about model monitor, see Amazon SageMaker Model Monitor.

", "CreateDeviceFleet": "

Creates a device fleet.

", - "CreateDomain": "

Creates a Domain used by Amazon SageMaker Studio. A domain consists of an associated Amazon Elastic File System (EFS) volume, a list of authorized users, and a variety of security, application, policy, and Amazon Virtual Private Cloud (VPC) configurations. Users within a domain can share notebook files and other artifacts with each other.

EFS storage

When a domain is created, an EFS volume is created for use by all of the users within the domain. Each user receives a private home directory within the EFS volume for notebooks, Git repositories, and data files.

SageMaker uses the Amazon Web Services Key Management Service (Amazon Web Services KMS) to encrypt the EFS volume attached to the domain with an Amazon Web Services managed key by default. For more control, you can specify a customer managed key. For more information, see Protect Data at Rest Using Encryption.

VPC configuration

All SageMaker Studio traffic between the domain and the EFS volume is through the specified VPC and subnets. For other Studio traffic, you can specify the AppNetworkAccessType parameter. AppNetworkAccessType corresponds to the network access type that you choose when you onboard to Studio. The following options are available:

  • PublicInternetOnly - Non-EFS traffic goes through a VPC managed by Amazon SageMaker, which allows internet access. This is the default value.

  • VpcOnly - All Studio traffic is through the specified VPC and subnets. Internet access is disabled by default. To allow internet access, you must specify a NAT gateway.

    When internet access is disabled, you won't be able to run a Studio notebook or to train or host models unless your VPC has an interface endpoint to the SageMaker API and runtime or a NAT gateway and your security groups allow outbound connections.

NFS traffic over TCP on port 2049 needs to be allowed in both inbound and outbound rules in order to launch a SageMaker Studio app successfully.

For more information, see Connect SageMaker Studio Notebooks to Resources in a VPC.

", + "CreateDomain": "

Creates a Domain. A domain consists of an associated Amazon Elastic File System (EFS) volume, a list of authorized users, and a variety of security, application, policy, and Amazon Virtual Private Cloud (VPC) configurations. Users within a domain can share notebook files and other artifacts with each other.

EFS storage

When a domain is created, an EFS volume is created for use by all of the users within the domain. Each user receives a private home directory within the EFS volume for notebooks, Git repositories, and data files.

SageMaker uses the Amazon Web Services Key Management Service (Amazon Web Services KMS) to encrypt the EFS volume attached to the domain with an Amazon Web Services managed key by default. For more control, you can specify a customer managed key. For more information, see Protect Data at Rest Using Encryption.

VPC configuration

All traffic between the domain and the EFS volume is through the specified VPC and subnets. For other traffic, you can specify the AppNetworkAccessType parameter. AppNetworkAccessType corresponds to the network access type that you choose when you onboard to the domain. The following options are available:

  • PublicInternetOnly - Non-EFS traffic goes through a VPC managed by Amazon SageMaker, which allows internet access. This is the default value.

  • VpcOnly - All traffic is through the specified VPC and subnets. Internet access is disabled by default. To allow internet access, you must specify a NAT gateway.

    When internet access is disabled, you won't be able to run a Amazon SageMaker Studio notebook or to train or host models unless your VPC has an interface endpoint to the SageMaker API and runtime or a NAT gateway and your security groups allow outbound connections.

NFS traffic over TCP on port 2049 needs to be allowed in both inbound and outbound rules in order to launch a Amazon SageMaker Studio app successfully.

For more information, see Connect Amazon SageMaker Studio Notebooks to Resources in a VPC.

", "CreateEdgeDeploymentPlan": "

Creates an edge deployment plan, consisting of multiple stages. Each stage may have a different deployment configuration and devices.

", "CreateEdgeDeploymentStage": "

Creates a new stage in an existing edge deployment plan.

", "CreateEdgePackagingJob": "

Starts a SageMaker Edge Manager model packaging job. Edge Manager will use the model artifacts from the Amazon Simple Storage Service bucket that you specify. After the model has been packaged, Amazon SageMaker saves the resulting artifacts to an S3 bucket that you specify.

", "CreateEndpoint": "

Creates an endpoint using the endpoint configuration specified in the request. SageMaker uses the endpoint to provision resources and deploy models. You create the endpoint configuration with the CreateEndpointConfig API.

Use this API to deploy models using SageMaker hosting services.

You must not delete an EndpointConfig that is in use by an endpoint that is live or while the UpdateEndpoint or CreateEndpoint operations are being performed on the endpoint. To update an endpoint, you must create a new EndpointConfig.

The endpoint name must be unique within an Amazon Web Services Region in your Amazon Web Services account.

When it receives the request, SageMaker creates the endpoint, launches the resources (ML compute instances), and deploys the model(s) on them.

When you call CreateEndpoint, a load call is made to DynamoDB to verify that your endpoint configuration exists. When you read data from a DynamoDB table supporting Eventually Consistent Reads , the response might not reflect the results of a recently completed write operation. The response might include some stale data. If the dependent entities are not yet in DynamoDB, this causes a validation error. If you repeat your read request after a short time, the response should return the latest data. So retry logic is recommended to handle these possible issues. We also recommend that customers call DescribeEndpointConfig before calling CreateEndpoint to minimize the potential impact of a DynamoDB eventually consistent read.

When SageMaker receives the request, it sets the endpoint status to Creating. After it creates the endpoint, it sets the status to InService. SageMaker can then process incoming requests for inferences. To check the status of an endpoint, use the DescribeEndpoint API.

If any of the models hosted at this endpoint get model data from an Amazon S3 location, SageMaker uses Amazon Web Services Security Token Service to download model artifacts from the S3 path you provided. Amazon Web Services STS is activated in your Amazon Web Services account by default. If you previously deactivated Amazon Web Services STS for a region, you need to reactivate Amazon Web Services STS for that region. For more information, see Activating and Deactivating Amazon Web Services STS in an Amazon Web Services Region in the Amazon Web Services Identity and Access Management User Guide.

To add the IAM role policies for using this API operation, go to the IAM console, and choose Roles in the left navigation pane. Search the IAM role that you want to grant access to use the CreateEndpoint and CreateEndpointConfig API operations, add the following policies to the role.

  • Option 1: For a full SageMaker access, search and attach the AmazonSageMakerFullAccess policy.

  • Option 2: For granting a limited access to an IAM role, paste the following Action elements manually into the JSON file of the IAM role:

    \"Action\": [\"sagemaker:CreateEndpoint\", \"sagemaker:CreateEndpointConfig\"]

    \"Resource\": [

    \"arn:aws:sagemaker:region:account-id:endpoint/endpointName\"

    \"arn:aws:sagemaker:region:account-id:endpoint-config/endpointConfigName\"

    ]

    For more information, see SageMaker API Permissions: Actions, Permissions, and Resources Reference.

", "CreateEndpointConfig": "

Creates an endpoint configuration that SageMaker hosting services uses to deploy models. In the configuration, you identify one or more models, created using the CreateModel API, to deploy and the resources that you want SageMaker to provision. Then you call the CreateEndpoint API.

Use this API if you want to use SageMaker hosting services to deploy models into production.

In the request, you define a ProductionVariant, for each model that you want to deploy. Each ProductionVariant parameter also describes the resources that you want SageMaker to provision. This includes the number and type of ML compute instances to deploy.

If you are hosting multiple models, you also assign a VariantWeight to specify how much traffic you want to allocate to each model. For example, suppose that you want to host two models, A and B, and you assign traffic weight 2 for model A and 1 for model B. SageMaker distributes two-thirds of the traffic to Model A, and one-third to model B.

When you call CreateEndpoint, a load call is made to DynamoDB to verify that your endpoint configuration exists. When you read data from a DynamoDB table supporting Eventually Consistent Reads , the response might not reflect the results of a recently completed write operation. The response might include some stale data. If the dependent entities are not yet in DynamoDB, this causes a validation error. If you repeat your read request after a short time, the response should return the latest data. So retry logic is recommended to handle these possible issues. We also recommend that customers call DescribeEndpointConfig before calling CreateEndpoint to minimize the potential impact of a DynamoDB eventually consistent read.

", "CreateExperiment": "

Creates a SageMaker experiment. An experiment is a collection of trials that are observed, compared and evaluated as a group. A trial is a set of steps, called trial components, that produce a machine learning model.

In the Studio UI, trials are referred to as run groups and trial components are referred to as runs.

The goal of an experiment is to determine the components that produce the best model. Multiple trials are performed, each one isolating and measuring the impact of a change to one or more inputs, while keeping the remaining inputs constant.

When you use SageMaker Studio or the SageMaker Python SDK, all experiments, trials, and trial components are automatically tracked, logged, and indexed. When you use the Amazon Web Services SDK for Python (Boto), you must use the logging APIs provided by the SDK.

You can add tags to experiments, trials, trial components and then use the Search API to search for the tags.

To add a description to an experiment, specify the optional Description parameter. To add a description later, or to change the description, call the UpdateExperiment API.

To get a list of all your experiments, call the ListExperiments API. To view an experiment's properties, call the DescribeExperiment API. To get a list of all the trials associated with an experiment, call the ListTrials API. To create a trial call the CreateTrial API.

", - "CreateFeatureGroup": "

Create a new FeatureGroup. A FeatureGroup is a group of Features defined in the FeatureStore to describe a Record.

The FeatureGroup defines the schema and features contained in the FeatureGroup. A FeatureGroup definition is composed of a list of Features, a RecordIdentifierFeatureName, an EventTimeFeatureName and configurations for its OnlineStore and OfflineStore. Check Amazon Web Services service quotas to see the FeatureGroups quota for your Amazon Web Services account.

You must include at least one of OnlineStoreConfig and OfflineStoreConfig to create a FeatureGroup.

", + "CreateFeatureGroup": "

Create a new FeatureGroup. A FeatureGroup is a group of Features defined in the FeatureStore to describe a Record.

The FeatureGroup defines the schema and features contained in the FeatureGroup. A FeatureGroup definition is composed of a list of Features, a RecordIdentifierFeatureName, an EventTimeFeatureName and configurations for its OnlineStore and OfflineStore. Check Amazon Web Services service quotas to see the FeatureGroups quota for your Amazon Web Services account.

Note that it can take approximately 10-15 minutes to provision an OnlineStore FeatureGroup with the InMemory StorageType.

You must include at least one of OnlineStoreConfig and OfflineStoreConfig to create a FeatureGroup.

", "CreateFlowDefinition": "

Creates a flow definition.

", "CreateHub": "

Create a hub.

Hub APIs are only callable through SageMaker Studio.

", "CreateHumanTaskUi": "

Defines the settings you will use for the human review workflow user interface. Reviewers will see a three-panel interface with an instruction area, the item to review, and an input area.

", "CreateHyperParameterTuningJob": "

Starts a hyperparameter tuning job. A hyperparameter tuning job finds the best version of a model by running many training jobs on your dataset using the algorithm you choose and values for hyperparameters within ranges that you specify. It then chooses the hyperparameter values that result in a model that performs the best, as measured by an objective metric that you choose.

A hyperparameter tuning job automatically creates Amazon SageMaker experiments, trials, and trial components for each training job that it runs. You can view these entities in Amazon SageMaker Studio. For more information, see View Experiments, Trials, and Trial Components.

Do not include any security-sensitive information including account access IDs, secrets or tokens in any hyperparameter field. If the use of security-sensitive credentials are detected, SageMaker will reject your training job request and return an exception error.

", "CreateImage": "

Creates a custom SageMaker image. A SageMaker image is a set of image versions. Each image version represents a container image stored in Amazon Elastic Container Registry (ECR). For more information, see Bring your own SageMaker image.

", "CreateImageVersion": "

Creates a version of the SageMaker image specified by ImageName. The version represents the Amazon Elastic Container Registry (ECR) container image specified by BaseImage.

", + "CreateInferenceComponent": "

Creates an inference component, which is a SageMaker hosting object that you can use to deploy a model to an endpoint. In the inference component settings, you specify the model, the endpoint, and how the model utilizes the resources that the endpoint hosts. You can optimize resource utilization by tailoring how the required CPU cores, accelerators, and memory are allocated. You can deploy multiple inference components to an endpoint, where each inference component contains one model and the resource utilization needs for that individual model. After you deploy an inference component, you can directly invoke the associated model when you use the InvokeEndpoint API action.

", "CreateInferenceExperiment": "

Creates an inference experiment using the configurations specified in the request.

Use this API to setup and schedule an experiment to compare model variants on a Amazon SageMaker inference endpoint. For more information about inference experiments, see Shadow tests.

Amazon SageMaker begins your experiment at the scheduled time and routes traffic to your endpoint's model variants based on your specified configuration.

While the experiment is in progress or after it has concluded, you can view metrics that compare your model variants. For more information, see View, monitor, and edit shadow tests.

", "CreateInferenceRecommendationsJob": "

Starts a recommendation job. You can create either an instance recommendation or load test job.

", "CreateLabelingJob": "

Creates a job that uses workers to label the data objects in your input dataset. You can use the labeled data to train machine learning models.

You can select your workforce from one of three providers:

  • A private workforce that you create. It can include employees, contractors, and outside experts. Use a private workforce when want the data to stay within your organization or when a specific set of skills is required.

  • One or more vendors that you select from the Amazon Web Services Marketplace. Vendors provide expertise in specific areas.

  • The Amazon Mechanical Turk workforce. This is the largest workforce, but it should only be used for public data or data that has been stripped of any personally identifiable information.

You can also use automated data labeling to reduce the number of data objects that need to be labeled by a human. Automated data labeling uses active learning to determine if a data object can be labeled by machine or if it needs to be sent to a human worker. For more information, see Using Automated Data Labeling.

The data objects to be labeled are contained in an Amazon S3 bucket. You create a manifest file that describes the location of each object. For more information, see Using Input and Output Data.

The output can be used as the manifest file for another labeling job or as training data for your machine learning models.

You can use this operation to create a static labeling job or a streaming labeling job. A static labeling job stops if all data objects in the input manifest file identified in ManifestS3Uri have been labeled. A streaming labeling job runs perpetually until it is manually stopped, or remains idle for 10 days. You can send new data objects to an active (InProgress) streaming labeling job in real time. To learn how to create a static labeling job, see Create a Labeling Job (API) in the Amazon SageMaker Developer Guide. To learn how to create a streaming labeling job, see Create a Streaming Labeling Job.

", @@ -47,17 +49,17 @@ "CreateNotebookInstance": "

Creates an SageMaker notebook instance. A notebook instance is a machine learning (ML) compute instance running on a Jupyter notebook.

In a CreateNotebookInstance request, specify the type of ML compute instance that you want to run. SageMaker launches the instance, installs common libraries that you can use to explore datasets for model training, and attaches an ML storage volume to the notebook instance.

SageMaker also provides a set of example notebooks. Each notebook demonstrates how to use SageMaker with a specific algorithm or with a machine learning framework.

After receiving the request, SageMaker does the following:

  1. Creates a network interface in the SageMaker VPC.

  2. (Option) If you specified SubnetId, SageMaker creates a network interface in your own VPC, which is inferred from the subnet ID that you provide in the input. When creating this network interface, SageMaker attaches the security group that you specified in the request to the network interface that it creates in your VPC.

  3. Launches an EC2 instance of the type specified in the request in the SageMaker VPC. If you specified SubnetId of your VPC, SageMaker specifies both network interfaces when launching this instance. This enables inbound traffic from your own VPC to the notebook instance, assuming that the security groups allow it.

After creating the notebook instance, SageMaker returns its Amazon Resource Name (ARN). You can't change the name of a notebook instance after you create it.

After SageMaker creates the notebook instance, you can connect to the Jupyter server and work in Jupyter notebooks. For example, you can write code to explore a dataset that you can use for model training, train a model, host models by creating SageMaker endpoints, and validate hosted models.

For more information, see How It Works.

", "CreateNotebookInstanceLifecycleConfig": "

Creates a lifecycle configuration that you can associate with a notebook instance. A lifecycle configuration is a collection of shell scripts that run when you create or start a notebook instance.

Each lifecycle configuration script has a limit of 16384 characters.

The value of the $PATH environment variable that is available to both scripts is /sbin:bin:/usr/sbin:/usr/bin.

View CloudWatch Logs for notebook instance lifecycle configurations in log group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook].

Lifecycle configuration scripts cannot run for longer than 5 minutes. If a script runs for longer than 5 minutes, it fails and the notebook instance is not created or started.

For information about notebook instance lifestyle configurations, see Step 2.1: (Optional) Customize a Notebook Instance.

", "CreatePipeline": "

Creates a pipeline using a JSON pipeline definition.

", - "CreatePresignedDomainUrl": "

Creates a URL for a specified UserProfile in a Domain. When accessed in a web browser, the user will be automatically signed in to Amazon SageMaker Studio, and granted access to all of the Apps and files associated with the Domain's Amazon Elastic File System (EFS) volume. This operation can only be called when the authentication mode equals IAM.

The IAM role or user passed to this API defines the permissions to access the app. Once the presigned URL is created, no additional permission is required to access this URL. IAM authorization policies for this API are also enforced for every HTTP request and WebSocket frame that attempts to connect to the app.

You can restrict access to this API and to the URL that it returns to a list of IP addresses, Amazon VPCs or Amazon VPC Endpoints that you specify. For more information, see Connect to SageMaker Studio Through an Interface VPC Endpoint .

The URL that you get from a call to CreatePresignedDomainUrl has a default timeout of 5 minutes. You can configure this value using ExpiresInSeconds. If you try to use the URL after the timeout limit expires, you are directed to the Amazon Web Services console sign-in page.

", + "CreatePresignedDomainUrl": "

Creates a URL for a specified UserProfile in a Domain. When accessed in a web browser, the user will be automatically signed in to the domain, and granted access to all of the Apps and files associated with the Domain's Amazon Elastic File System (EFS) volume. This operation can only be called when the authentication mode equals IAM.

The IAM role or user passed to this API defines the permissions to access the app. Once the presigned URL is created, no additional permission is required to access this URL. IAM authorization policies for this API are also enforced for every HTTP request and WebSocket frame that attempts to connect to the app.

You can restrict access to this API and to the URL that it returns to a list of IP addresses, Amazon VPCs or Amazon VPC Endpoints that you specify. For more information, see Connect to Amazon SageMaker Studio Through an Interface VPC Endpoint .

The URL that you get from a call to CreatePresignedDomainUrl has a default timeout of 5 minutes. You can configure this value using ExpiresInSeconds. If you try to use the URL after the timeout limit expires, you are directed to the Amazon Web Services console sign-in page.

", "CreatePresignedNotebookInstanceUrl": "

Returns a URL that you can use to connect to the Jupyter server from a notebook instance. In the SageMaker console, when you choose Open next to a notebook instance, SageMaker opens a new tab showing the Jupyter server home page from the notebook instance. The console uses this API to get the URL and show the page.

The IAM role or user used to call this API defines the permissions to access the notebook instance. Once the presigned URL is created, no additional permission is required to access this URL. IAM authorization policies for this API are also enforced for every HTTP request and WebSocket frame that attempts to connect to the notebook instance.

You can restrict access to this API and to the URL that it returns to a list of IP addresses that you specify. Use the NotIpAddress condition operator and the aws:SourceIP condition context key to specify the list of IP addresses that you want to have access to the notebook instance. For more information, see Limit Access to a Notebook Instance by IP Address.

The URL that you get from a call to CreatePresignedNotebookInstanceUrl is valid only for 5 minutes. If you try to use the URL after the 5-minute limit expires, you are directed to the Amazon Web Services console sign-in page.

", "CreateProcessingJob": "

Creates a processing job.

", "CreateProject": "

Creates a machine learning (ML) project that can contain one or more templates that set up an ML pipeline from training to deploying an approved model.

", "CreateSpace": "

Creates a space used for real time collaboration in a Domain.

", - "CreateStudioLifecycleConfig": "

Creates a new Studio Lifecycle Configuration.

", + "CreateStudioLifecycleConfig": "

Creates a new Amazon SageMaker Studio Lifecycle Configuration.

", "CreateTrainingJob": "

Starts a model training job. After training completes, SageMaker saves the resulting model artifacts to an Amazon S3 location that you specify.

If you choose to host your model using SageMaker hosting services, you can use the resulting model artifacts as part of the model. You can also use the artifacts in a machine learning service other than SageMaker, provided that you know how to use them for inference.

In the request body, you provide the following:

  • AlgorithmSpecification - Identifies the training algorithm to use.

  • HyperParameters - Specify these algorithm-specific parameters to enable the estimation of model parameters during training. Hyperparameters can be tuned to optimize this learning process. For a list of hyperparameters for each training algorithm provided by SageMaker, see Algorithms.

    Do not include any security-sensitive information including account access IDs, secrets or tokens in any hyperparameter field. If the use of security-sensitive credentials are detected, SageMaker will reject your training job request and return an exception error.

  • InputDataConfig - Describes the input required by the training job and the Amazon S3, EFS, or FSx location where it is stored.

  • OutputDataConfig - Identifies the Amazon S3 bucket where you want SageMaker to save the results of model training.

  • ResourceConfig - Identifies the resources, ML compute instances, and ML storage volumes to deploy for model training. In distributed training, you specify more than one instance.

  • EnableManagedSpotTraining - Optimize the cost of training machine learning models by up to 80% by using Amazon EC2 Spot instances. For more information, see Managed Spot Training.

  • RoleArn - The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during model training. You must grant this role the necessary permissions so that SageMaker can successfully complete model training.

  • StoppingCondition - To help cap training costs, use MaxRuntimeInSeconds to set a time limit for training. Use MaxWaitTimeInSeconds to specify how long a managed spot training job has to complete.

  • Environment - The environment variables to set in the Docker container.

  • RetryStrategy - The number of times to retry the job when the job fails due to an InternalServerError.

For more information about SageMaker, see How It Works.

", "CreateTransformJob": "

Starts a transform job. A transform job uses a trained model to get inferences on a dataset and saves these results to an Amazon S3 location that you specify.

To perform batch transformations, you create a transform job and use the data that you have readily available.

In the request body, you provide the following:

  • TransformJobName - Identifies the transform job. The name must be unique within an Amazon Web Services Region in an Amazon Web Services account.

  • ModelName - Identifies the model to use. ModelName must be the name of an existing Amazon SageMaker model in the same Amazon Web Services Region and Amazon Web Services account. For information on creating a model, see CreateModel.

  • TransformInput - Describes the dataset to be transformed and the Amazon S3 location where it is stored.

  • TransformOutput - Identifies the Amazon S3 location where you want Amazon SageMaker to save the results from the transform job.

  • TransformResources - Identifies the ML compute instances for the transform job.

For more information about how batch transformation works, see Batch Transform.

", "CreateTrial": "

Creates an SageMaker trial. A trial is a set of steps called trial components that produce a machine learning model. A trial is part of a single SageMaker experiment.

When you use SageMaker Studio or the SageMaker Python SDK, all experiments, trials, and trial components are automatically tracked, logged, and indexed. When you use the Amazon Web Services SDK for Python (Boto), you must use the logging APIs provided by the SDK.

You can add tags to a trial and then use the Search API to search for the tags.

To get a list of all your trials, call the ListTrials API. To view a trial's properties, call the DescribeTrial API. To create a trial component, call the CreateTrialComponent API.

", "CreateTrialComponent": "

Creates a trial component, which is a stage of a machine learning trial. A trial is composed of one or more trial components. A trial component can be used in multiple trials.

Trial components include pre-processing jobs, training jobs, and batch transform jobs.

When you use SageMaker Studio or the SageMaker Python SDK, all experiments, trials, and trial components are automatically tracked, logged, and indexed. When you use the Amazon Web Services SDK for Python (Boto), you must use the logging APIs provided by the SDK.

You can add tags to a trial component and then use the Search API to search for the tags.

", - "CreateUserProfile": "

Creates a user profile. A user profile represents a single user within a domain, and is the main way to reference a \"person\" for the purposes of sharing, reporting, and other user-oriented features. This entity is created when a user onboards to Amazon SageMaker Studio. If an administrator invites a person by email or imports them from IAM Identity Center, a user profile is automatically created. A user profile is the primary holder of settings for an individual user and has a reference to the user's private Amazon Elastic File System (EFS) home directory.

", + "CreateUserProfile": "

Creates a user profile. A user profile represents a single user within a domain, and is the main way to reference a \"person\" for the purposes of sharing, reporting, and other user-oriented features. This entity is created when a user onboards to a domain. If an administrator invites a person by email or imports them from IAM Identity Center, a user profile is automatically created. A user profile is the primary holder of settings for an individual user and has a reference to the user's private Amazon Elastic File System (EFS) home directory.

", "CreateWorkforce": "

Use this operation to create a workforce. This operation will return an error if a workforce already exists in the Amazon Web Services Region that you specify. You can only create one workforce in each Amazon Web Services Region per Amazon Web Services account.

If you want to create a new workforce in an Amazon Web Services Region where a workforce already exists, use the DeleteWorkforce API operation to delete the existing workforce and then use CreateWorkforce to create a new workforce.

To create a private workforce using Amazon Cognito, you must specify a Cognito user pool in CognitoConfig. You can also create an Amazon Cognito workforce using the Amazon SageMaker console. For more information, see Create a Private Workforce (Amazon Cognito).

To create a private workforce using your own OIDC Identity Provider (IdP), specify your IdP configuration in OidcConfig. Your OIDC IdP must support groups because groups are used by Ground Truth and Amazon A2I to create work teams. For more information, see Create a Private Workforce (OIDC IdP).

", "CreateWorkteam": "

Creates a new work team for labeling your data. A work team is defined by one or more Amazon Cognito user pools. You must first create the user pools before you can create a work team.

You cannot create more than 25 work teams in an account and region.

", "DeleteAction": "

Deletes an action.

", @@ -66,6 +68,7 @@ "DeleteAppImageConfig": "

Deletes an AppImageConfig.

", "DeleteArtifact": "

Deletes an artifact. Either ArtifactArn or Source must be specified.

", "DeleteAssociation": "

Deletes an association.

", + "DeleteCluster": "

Delete a SageMaker HyperPod cluster.

", "DeleteCodeRepository": "

Deletes the specified Git repository from your account.

", "DeleteContext": "

Deletes an context.

", "DeleteDataQualityJobDefinition": "

Deletes a data quality monitoring job definition.

", @@ -76,13 +79,14 @@ "DeleteEndpoint": "

Deletes an endpoint. SageMaker frees up all of the resources that were deployed when the endpoint was created.

SageMaker retires any custom KMS key grants associated with the endpoint, meaning you don't need to use the RevokeGrant API call.

When you delete your endpoint, SageMaker asynchronously deletes associated endpoint resources such as KMS key grants. You might still see these resources in your account for a few minutes after deleting your endpoint. Do not delete or revoke the permissions for your ExecutionRoleArn , otherwise SageMaker cannot delete these resources.

", "DeleteEndpointConfig": "

Deletes an endpoint configuration. The DeleteEndpointConfig API deletes only the specified configuration. It does not delete endpoints created using the configuration.

You must not delete an EndpointConfig in use by an endpoint that is live or while the UpdateEndpoint or CreateEndpoint operations are being performed on the endpoint. If you delete the EndpointConfig of an endpoint that is active or being created or updated you may lose visibility into the instance type the endpoint is using. The endpoint must be deleted in order to stop incurring charges.

", "DeleteExperiment": "

Deletes an SageMaker experiment. All trials associated with the experiment must be deleted first. Use the ListTrials API to get a list of the trials associated with the experiment.

", - "DeleteFeatureGroup": "

Delete the FeatureGroup and any data that was written to the OnlineStore of the FeatureGroup. Data cannot be accessed from the OnlineStore immediately after DeleteFeatureGroup is called.

Data written into the OfflineStore will not be deleted. The Amazon Web Services Glue database and tables that are automatically created for your OfflineStore are not deleted.

", + "DeleteFeatureGroup": "

Delete the FeatureGroup and any data that was written to the OnlineStore of the FeatureGroup. Data cannot be accessed from the OnlineStore immediately after DeleteFeatureGroup is called.

Data written into the OfflineStore will not be deleted. The Amazon Web Services Glue database and tables that are automatically created for your OfflineStore are not deleted.

Note that it can take approximately 10-15 minutes to delete an OnlineStore FeatureGroup with the InMemory StorageType.

", "DeleteFlowDefinition": "

Deletes the specified flow definition.

", "DeleteHub": "

Delete a hub.

Hub APIs are only callable through SageMaker Studio.

", "DeleteHubContent": "

Delete the contents of a hub.

Hub APIs are only callable through SageMaker Studio.

", "DeleteHumanTaskUi": "

Use this operation to delete a human task user interface (worker task template).

To see a list of human task user interfaces (work task templates) in your account, use ListHumanTaskUis. When you delete a worker task template, it no longer appears when you call ListHumanTaskUis.

", "DeleteImage": "

Deletes a SageMaker image and all versions of the image. The container images aren't deleted.

", "DeleteImageVersion": "

Deletes a version of a SageMaker image. The container image the version represents isn't deleted.

", + "DeleteInferenceComponent": "

Deletes an inference component.

", "DeleteInferenceExperiment": "

Deletes an inference experiment.

This operation does not delete your endpoint, variants, or any underlying resources. This operation only deletes the metadata of your experiment.

", "DeleteModel": "

Deletes a model. The DeleteModel API deletes only the model entry that was created in SageMaker when you called the CreateModel API. It does not delete model artifacts, inference code, or the IAM role that you specified when creating the model.

", "DeleteModelBiasJobDefinition": "

Deletes an Amazon SageMaker model bias job definition.

", @@ -98,8 +102,8 @@ "DeletePipeline": "

Deletes a pipeline if there are no running instances of the pipeline. To delete a pipeline, you must stop all running instances of the pipeline using the StopPipelineExecution API. When you delete a pipeline, all instances of the pipeline are deleted.

", "DeleteProject": "

Delete the specified project.

", "DeleteSpace": "

Used to delete a space.

", - "DeleteStudioLifecycleConfig": "

Deletes the Studio Lifecycle Configuration. In order to delete the Lifecycle Configuration, there must be no running apps using the Lifecycle Configuration. You must also remove the Lifecycle Configuration from UserSettings in all Domains and UserProfiles.

", - "DeleteTags": "

Deletes the specified tags from an SageMaker resource.

To list a resource's tags, use the ListTags API.

When you call this API to delete tags from a hyperparameter tuning job, the deleted tags are not removed from training jobs that the hyperparameter tuning job launched before you called this API.

When you call this API to delete tags from a SageMaker Studio Domain or User Profile, the deleted tags are not removed from Apps that the SageMaker Studio Domain or User Profile launched before you called this API.

", + "DeleteStudioLifecycleConfig": "

Deletes the Amazon SageMaker Studio Lifecycle Configuration. In order to delete the Lifecycle Configuration, there must be no running apps using the Lifecycle Configuration. You must also remove the Lifecycle Configuration from UserSettings in all Domains and UserProfiles.

", + "DeleteTags": "

Deletes the specified tags from an SageMaker resource.

To list a resource's tags, use the ListTags API.

When you call this API to delete tags from a hyperparameter tuning job, the deleted tags are not removed from training jobs that the hyperparameter tuning job launched before you called this API.

When you call this API to delete tags from a SageMaker Domain or User Profile, the deleted tags are not removed from Apps that the SageMaker Domain or User Profile launched before you called this API.

", "DeleteTrial": "

Deletes the specified trial. All trial components that make up the trial must be deleted first. Use the DescribeTrialComponent API to get the list of trial components.

", "DeleteTrialComponent": "

Deletes the specified trial component. A trial component must be disassociated from all trials before the trial component can be deleted. To disassociate a trial component from a trial, call the DisassociateTrialComponent API.

", "DeleteUserProfile": "

Deletes a user profile. When a user profile is deleted, the user loses access to their EFS volume, including data, notebooks, and other artifacts.

", @@ -113,6 +117,8 @@ "DescribeArtifact": "

Describes an artifact.

", "DescribeAutoMLJob": "

Returns information about an AutoML job created by calling CreateAutoMLJob.

AutoML jobs created by calling CreateAutoMLJobV2 cannot be described by DescribeAutoMLJob.

", "DescribeAutoMLJobV2": "

Returns information about an AutoML job created by calling CreateAutoMLJobV2 or CreateAutoMLJob.

", + "DescribeCluster": "

Retrieves information of a SageMaker HyperPod cluster.

", + "DescribeClusterNode": "

Retrieves information of an instance (also called a node interchangeably) of a SageMaker HyperPod cluster.

", "DescribeCodeRepository": "

Gets details about the specified Git repository.

", "DescribeCompilationJob": "

Returns information about a model compilation job.

To create a model compilation job, use CreateCompilationJob. To get information about multiple model compilation jobs, use ListCompilationJobs.

", "DescribeContext": "

Describes a context.

", @@ -134,6 +140,7 @@ "DescribeHyperParameterTuningJob": "

Returns a description of a hyperparameter tuning job, depending on the fields selected. These fields can include the name, Amazon Resource Name (ARN), job status of your tuning job and more.

", "DescribeImage": "

Describes a SageMaker image.

", "DescribeImageVersion": "

Describes a version of a SageMaker image.

", + "DescribeInferenceComponent": "

Returns information about an inference component.

", "DescribeInferenceExperiment": "

Returns details about an inference experiment.

", "DescribeInferenceRecommendationsJob": "

Provides the results of the Inference Recommender job. One or more recommendation jobs are returned.

", "DescribeLabelingJob": "

Gets information about a labeling job.

", @@ -155,7 +162,7 @@ "DescribeProcessingJob": "

Returns a description of a processing job.

", "DescribeProject": "

Describes the details of a project.

", "DescribeSpace": "

Describes the space.

", - "DescribeStudioLifecycleConfig": "

Describes the Studio Lifecycle Configuration.

", + "DescribeStudioLifecycleConfig": "

Describes the Amazon SageMaker Studio Lifecycle Configuration.

", "DescribeSubscribedWorkteam": "

Gets information about a work team provided by a vendor. It returns details about the subscription with a vendor in the Amazon Web Services Marketplace.

", "DescribeTrainingJob": "

Returns information about a training job.

Some of the attributes below only appear if the training job successfully starts. If the training job fails, TrainingJobStatus is Failed and, depending on the FailureReason, attributes like TrainingStartTime, TrainingTimeInSeconds, TrainingEndTime, and BillableTimeInSeconds may not be present in the response.

", "DescribeTransformJob": "

Returns information about a transform job.

", @@ -183,6 +190,8 @@ "ListAssociations": "

Lists the associations in your account and their properties.

", "ListAutoMLJobs": "

Request a list of jobs.

", "ListCandidatesForAutoMLJob": "

List the candidates created for the job.

", + "ListClusterNodes": "

Retrieves the list of instances (also called nodes interchangeably) in a SageMaker HyperPod cluster.

", + "ListClusters": "

Retrieves the list of SageMaker HyperPod clusters.

", "ListCodeRepositories": "

Gets a list of the Git repositories in your account.

", "ListCompilationJobs": "

Lists model compilation jobs that satisfy various filters.

To create a model compilation job, use CreateCompilationJob. To get information about a particular model compilation job you have created, use DescribeCompilationJob.

", "ListContexts": "

Lists the contexts in your account and their properties.

", @@ -204,6 +213,7 @@ "ListHyperParameterTuningJobs": "

Gets a list of HyperParameterTuningJobSummary objects that describe the hyperparameter tuning jobs launched in your account.

", "ListImageVersions": "

Lists the versions of a specified image and their properties. The list can be filtered by creation time or modified time.

", "ListImages": "

Lists the images in your account and their properties. The list can be filtered by creation time or modified time, and whether the image name contains a specified string.

", + "ListInferenceComponents": "

Lists the inference components in your account and their properties.

", "ListInferenceExperiments": "

Returns the list of all inference experiments.

", "ListInferenceRecommendationsJobSteps": "

Returns a list of the subtasks for an Inference Recommender job.

The supported subtasks are benchmarks, which evaluate the performance of your model on different instance types.

", "ListInferenceRecommendationsJobs": "

Lists recommendation jobs that satisfy various filters.

", @@ -235,7 +245,7 @@ "ListResourceCatalogs": "

Lists Amazon SageMaker Catalogs based on given filters and orders. The maximum number of ResourceCatalogs viewable is 1000.

", "ListSpaces": "

Lists spaces.

", "ListStageDevices": "

Lists devices allocated to the stage, containing detailed device information and deployment status.

", - "ListStudioLifecycleConfigs": "

Lists the Studio Lifecycle Configurations in your Amazon Web Services Account.

", + "ListStudioLifecycleConfigs": "

Lists the Amazon SageMaker Studio Lifecycle Configurations in your Amazon Web Services Account.

", "ListSubscribedWorkteams": "

Gets a list of the work teams that you are subscribed to in the Amazon Web Services Marketplace. The list may be empty if no work team satisfies the filter specified in the NameContains parameter.

", "ListTags": "

Returns the tags for the specified SageMaker resource.

", "ListTrainingJobs": "

Lists training jobs.

When StatusEquals and MaxResults are set at the same time, the MaxResults number of training jobs are first retrieved ignoring the StatusEquals parameter and then they are filtered by the StatusEquals parameter, which is returned as a response.

For example, if ListTrainingJobs is invoked with the following parameters:

{ ... MaxResults: 100, StatusEquals: InProgress ... }

First, 100 trainings jobs with any status, including those other than InProgress, are selected (sorted according to the creation time, from the most current to the oldest). Next, those with a status of InProgress are returned.

You can quickly test the API using the following Amazon Web Services CLI code.

aws sagemaker list-training-jobs --max-results 100 --status-equals InProgress

", @@ -276,6 +286,7 @@ "UpdateAction": "

Updates an action.

", "UpdateAppImageConfig": "

Updates the properties of an AppImageConfig.

", "UpdateArtifact": "

Updates an artifact.

", + "UpdateCluster": "

Update a SageMaker HyperPod cluster.

", "UpdateCodeRepository": "

Updates the specified Git repository with the specified values.

", "UpdateContext": "

Updates a context.

", "UpdateDeviceFleet": "

Updates a fleet of devices.

", @@ -289,6 +300,8 @@ "UpdateHub": "

Update a hub.

Hub APIs are only callable through SageMaker Studio.

", "UpdateImage": "

Updates the properties of a SageMaker image. To change the image's tags, use the AddTags and DeleteTags APIs.

", "UpdateImageVersion": "

Updates the properties of a SageMaker image version.

", + "UpdateInferenceComponent": "

Updates an inference component.

", + "UpdateInferenceComponentRuntimeConfig": "

Runtime settings for a model that is deployed with an inference component.

", "UpdateInferenceExperiment": "

Updates an inference experiment that you created. The status of the inference experiment has to be either Created, Running. For more information on the status of an inference experiment, see DescribeInferenceExperiment.

", "UpdateModelCard": "

Update an Amazon SageMaker Model Card.

You cannot update both model card content and model card status in a single call.

", "UpdateModelPackage": "

Updates a versioned model.

", @@ -314,6 +327,12 @@ "TransformOutput$Accept": "

The MIME type used to specify the output data. Amazon SageMaker uses the MIME type with each http call to transfer data from the transform job.

" } }, + "AcceptEula": { + "base": null, + "refs": { + "ModelAccessConfig$AcceptEula": "

Specifies agreement to the model end-user license agreement (EULA). The AcceptEula value must be explicitly defined as True in order to accept the EULA that this model requires. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.

" + } + }, "AccountId": { "base": null, "refs": { @@ -403,6 +422,19 @@ "UpdateModelPackageInput$AdditionalInferenceSpecificationsToAdd": "

An array of additional Inference Specification objects to be added to the existing array additional Inference Specification. Total number of additional Inference Specifications can not exceed 15. Each additional Inference Specification specifies artifacts based on this model package that can be used on inference endpoints. Generally used with SageMaker Neo to store the compiled artifacts.

" } }, + "AdditionalS3DataSource": { + "base": "

A data source used for training or inference that is in addition to the input dataset or model data.

", + "refs": { + "ModelPackageContainerDefinition$AdditionalS3DataSource": "

The additional data source that is used during inference in the Docker container for your model package.

", + "TrainingSpecification$AdditionalS3DataSource": "

The additional data source used during the training job.

" + } + }, + "AdditionalS3DataSourceDataType": { + "base": null, + "refs": { + "AdditionalS3DataSource$S3DataType": "

The data type of the additional data source that you specify for use in inference or training.

" + } + }, "AgentVersion": { "base": "

Edge Manager agent version.

", "refs": { @@ -624,8 +656,9 @@ "AppNetworkAccessType": { "base": null, "refs": { - "CreateDomainRequest$AppNetworkAccessType": "

Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.

  • PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon SageMaker, which allows direct internet access

  • VpcOnly - All Studio traffic is through the specified VPC and subnets

", - "DescribeDomainResponse$AppNetworkAccessType": "

Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.

  • PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon SageMaker, which allows direct internet access

  • VpcOnly - All Studio traffic is through the specified VPC and subnets

" + "CreateDomainRequest$AppNetworkAccessType": "

Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.

  • PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon SageMaker, which allows direct internet access

  • VpcOnly - All traffic is through the specified VPC and subnets

", + "DescribeDomainResponse$AppNetworkAccessType": "

Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.

  • PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon SageMaker, which allows direct internet access

  • VpcOnly - All traffic is through the specified VPC and subnets

", + "UpdateDomainRequest$AppNetworkAccessType": "

Specifies the VPC used for non-EFS traffic.

  • PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon SageMaker, which allows direct internet access.

  • VpcOnly - All Studio traffic is through the specified VPC and subnets.

This configuration can only be modified if there are no apps in the InService, Pending, or Deleting state. The configuration cannot be updated if DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is already set or DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided as part of the same request.

" } }, "AppSecurityGroupManagement": { @@ -664,7 +697,9 @@ "CreateAppRequest$AppType": "

The type of app.

", "DeleteAppRequest$AppType": "

The type of app.

", "DescribeAppRequest$AppType": "

The type of app.

", - "DescribeAppResponse$AppType": "

The type of app.

" + "DescribeAppResponse$AppType": "

The type of app.

", + "SpaceSettings$AppType": "

The type of app created within the space.

", + "SpaceSettingsSummary$AppType": "

The type of app created within the space.

" } }, "ApprovalDescription": { @@ -1063,6 +1098,7 @@ "ResolvedAttributes$CompletionCriteria": null, "TabularJobConfig$CompletionCriteria": null, "TextClassificationJobConfig$CompletionCriteria": "

How long a job is allowed to run, or how many candidates a job is allowed to generate.

", + "TextGenerationJobConfig$CompletionCriteria": "

How long a fine-tuning job is allowed to run. For TextGenerationJobConfig problem types, the MaxRuntimePerTrainingJobInSeconds attribute of AutoMLJobCompletionCriteria defaults to 72h (259200s).

", "TimeSeriesForecastingJobConfig$CompletionCriteria": null } }, @@ -1076,7 +1112,7 @@ "AutoMLJobInputDataConfig": { "base": null, "refs": { - "CreateAutoMLJobV2Request$AutoMLJobInputDataConfig": "

An array of channel objects describing the input data and their location. Each channel is a named input source. Similar to the InputDataConfig attribute in the CreateAutoMLJob input parameters. The supported formats depend on the problem type:

  • For tabular problem types: S3Prefix, ManifestFile.

  • For image classification: S3Prefix, ManifestFile, AugmentedManifestFile.

  • For text classification: S3Prefix.

  • For time-series forecasting: S3Prefix.

", + "CreateAutoMLJobV2Request$AutoMLJobInputDataConfig": "

An array of channel objects describing the input data and their location. Each channel is a named input source. Similar to the InputDataConfig attribute in the CreateAutoMLJob input parameters. The supported formats depend on the problem type:

  • For tabular problem types: S3Prefix, ManifestFile.

  • For image classification: S3Prefix, ManifestFile, AugmentedManifestFile.

  • For text classification: S3Prefix.

  • For time-series forecasting: S3Prefix.

  • For text generation (LLMs fine-tuning): S3Prefix.

", "DescribeAutoMLJobV2Response$AutoMLJobInputDataConfig": "

Returns an array of channel objects describing the input data and their location.

" } }, @@ -1095,11 +1131,11 @@ } }, "AutoMLJobObjective": { - "base": "

Specifies a metric to minimize or maximize as the objective of a job.

", + "base": "

Specifies a metric to minimize or maximize as the objective of an AutoML job.

", "refs": { "AutoMLResolvedAttributes$AutoMLJobObjective": null, "CreateAutoMLJobRequest$AutoMLJobObjective": "

Specifies a metric to minimize or maximize as the objective of a job. If not specified, the default objective metric depends on the problem type. See AutoMLJobObjective for the default values.

", - "CreateAutoMLJobV2Request$AutoMLJobObjective": "

Specifies a metric to minimize or maximize as the objective of a job. If not specified, the default objective metric depends on the problem type. For the list of default values per problem type, see AutoMLJobObjective.

For tabular problem types, you must either provide both the AutoMLJobObjective and indicate the type of supervised learning problem in AutoMLProblemTypeConfig (TabularJobConfig.ProblemType), or none at all.

", + "CreateAutoMLJobV2Request$AutoMLJobObjective": "

Specifies a metric to minimize or maximize as the objective of a job. If not specified, the default objective metric depends on the problem type. For the list of default values per problem type, see AutoMLJobObjective.

  • For tabular problem types: You must either provide both the AutoMLJobObjective and indicate the type of supervised learning problem in AutoMLProblemTypeConfig (TabularJobConfig.ProblemType), or none at all.

  • For text generation problem types (LLMs fine-tuning): Fine-tuning language models in Autopilot does not require setting the AutoMLJobObjective field. Autopilot fine-tunes LLMs without requiring multiple candidates to be trained and evaluated. Instead, using your dataset, Autopilot directly fine-tunes your target model to enhance a default objective metric, the cross-entropy loss. After fine-tuning a language model, you can evaluate the quality of its generated text using different metrics. For a list of the available metrics, see Metrics for fine-tuning LLMs in Autopilot.

", "DescribeAutoMLJobResponse$AutoMLJobObjective": "

Returns the job's objective.

", "DescribeAutoMLJobV2Response$AutoMLJobObjective": "

Returns the job's objective.

", "ResolvedAttributes$AutoMLJobObjective": null @@ -1156,7 +1192,7 @@ "AutoMLMetricEnum": { "base": null, "refs": { - "AutoMLJobObjective$MetricName": "

The name of the objective metric used to measure the predictive quality of a machine learning system. During training, the model's parameters are updated iteratively to optimize its performance based on the feedback provided by the objective metric when evaluating the model on the validation dataset.

For the list of all available metrics supported by Autopilot, see Autopilot metrics.

If you do not specify a metric explicitly, the default behavior is to automatically use:

  • For tabular problem types:

    • Regression: MSE.

    • Binary classification: F1.

    • Multiclass classification: Accuracy.

  • For image or text classification problem types: Accuracy

  • For time-series forecasting problem types: AverageWeightedQuantileLoss

", + "AutoMLJobObjective$MetricName": "

The name of the objective metric used to measure the predictive quality of a machine learning system. During training, the model's parameters are updated iteratively to optimize its performance based on the feedback provided by the objective metric when evaluating the model on the validation dataset.

The list of available metrics supported by Autopilot and the default metric applied when you do not specify a metric name explicitly depend on the problem type.

  • For tabular problem types:

    • List of available metrics:

      • Regression: InferenceLatency, MAE, MSE, R2, RMSE

      • Binary classification: Accuracy, AUC, BalancedAccuracy, F1, InferenceLatency, LogLoss, Precision, Recall

      • Multiclass classification: Accuracy, BalancedAccuracy, F1macro, InferenceLatency, LogLoss, PrecisionMacro, RecallMacro

      For a description of each metric, see Autopilot metrics for classification and regression.

    • Default objective metrics:

      • Regression: MSE.

      • Binary classification: F1.

      • Multiclass classification: Accuracy.

  • For image or text classification problem types:

  • For time-series forecasting problem types:

  • For text generation problem types (LLMs fine-tuning): Fine-tuning language models in Autopilot does not require setting the AutoMLJobObjective field. Autopilot fine-tunes LLMs without requiring multiple candidates to be trained and evaluated. Instead, using your dataset, Autopilot directly fine-tunes your target model to enhance a default objective metric, the cross-entropy loss. After fine-tuning a language model, you can evaluate the quality of its generated text using different metrics. For a list of the available metrics, see Metrics for fine-tuning LLMs in Autopilot.

", "FinalAutoMLJobObjectiveMetric$MetricName": "

The name of the metric with the best result. For a description of the possible objective metrics, see AutoMLJobObjective$MetricName.

", "FinalAutoMLJobObjectiveMetric$StandardMetricName": "

The name of the standard metric. For a description of the standard metrics, see Autopilot candidate metrics.

", "MetricDatum$MetricName": "

The name of the metric.

" @@ -1218,7 +1254,7 @@ } }, "AutoMLProblemTypeResolvedAttributes": { - "base": "

The resolved attributes specific to the problem type of an AutoML job V2.

", + "base": "

Stores resolved attributes specific to the problem type of an AutoML job V2.

", "refs": { "AutoMLResolvedAttributes$AutoMLProblemTypeResolvedAttributes": "

Defines the resolved attributes specific to a problem type.

" } @@ -1311,6 +1347,13 @@ "CandidateArtifactLocations$BacktestResults": "

The Amazon S3 prefix to the accuracy metrics and the inference results observed over the testing window. Available only for the time-series forecasting problem type.

" } }, + "BaseModelName": { + "base": null, + "refs": { + "TextGenerationJobConfig$BaseModelName": "

The name of the base model to fine-tune. Autopilot supports fine-tuning a variety of large language models. For information on the list of supported models, see Text generation models supporting fine-tuning in Autopilot. If no BaseModelName is provided, the default model used is Falcon7BInstruct.

", + "TextGenerationResolvedAttributes$BaseModelName": "

The name of the base model to fine-tune.

" + } + }, "BatchDataCaptureConfig": { "base": "

Configuration to control how SageMaker captures inference data for batch transform jobs.

", "refs": { @@ -1361,6 +1404,7 @@ "refs": { "DataQualityJobInput$BatchTransformInput": "

Input object for the batch transform job.

", "ModelBiasJobInput$BatchTransformInput": "

Input object for the batch transform job.

", + "ModelDashboardMonitoringSchedule$BatchTransformInput": null, "ModelExplainabilityJobInput$BatchTransformInput": "

Input object for the batch transform job.

", "ModelQualityJobInput$BatchTransformInput": "

Input object for the batch transform job.

", "MonitoringInput$BatchTransformInput": "

Input object for the batch transform job.

" @@ -1406,10 +1450,12 @@ "ChannelSpecification$IsRequired": "

Indicates whether the channel is required by the algorithm.

", "ClarifyCheckStepMetadata$SkipCheck": "

This flag indicates if the drift check against the previous baseline will be skipped or not. If it is set to False, the previous baseline of the configured check type must be available.

", "ClarifyCheckStepMetadata$RegisterNewBaseline": "

This flag indicates if a newly calculated baseline can be accessed through step properties BaselineUsedForDriftCheckConstraints and BaselineUsedForDriftCheckStatistics. If it is set to False, the previous baseline of the configured check type must also be available. These can be accessed through the BaselineUsedForDriftCheckConstraints property.

", + "CreateEndpointConfigInput$EnableNetworkIsolation": "

Sets whether all model containers deployed to the endpoint are isolated. If they are, no inbound or outbound network calls can be made to or from the model containers.

", "CreateModelInput$EnableNetworkIsolation": "

Isolates the model container. No inbound or outbound network calls can be made to or from the model container.

", "CreateTrainingJobRequest$EnableNetworkIsolation": "

Isolates the training container. No inbound or outbound network calls can be made, except for calls between peers within a training cluster for distributed training. If you enable network isolation for training jobs that are configured to use a VPC, SageMaker downloads and uploads customer data and model artifacts through the specified VPC, but the training container does not have network access.

", "CreateTrainingJobRequest$EnableInterContainerTrafficEncryption": "

To encrypt all communications between ML compute instances in distributed training, choose True. Encryption provides greater security for distributed training, but training might take longer. How long it takes depends on the amount of communication between compute instances, especially if you use a deep learning algorithm in distributed training. For more information, see Protect Communications Between ML Compute Instances in a Distributed Training Job.

", "CreateTrainingJobRequest$EnableManagedSpotTraining": "

To train models using managed spot training, choose True. Managed spot training provides a fully managed and scalable infrastructure for training machine learning models. this option is useful when training jobs can be interrupted and when there is flexibility when the training job is run.

The complete and intermediate results of jobs are stored in an Amazon S3 bucket, and can be used as a starting point to train models incrementally. Amazon SageMaker provides metrics and logs in CloudWatch. They can be used to see when managed spot training jobs are running, interrupted, resumed, or completed.

", + "DescribeEndpointConfigOutput$EnableNetworkIsolation": "

Indicates whether all model containers deployed to the endpoint are isolated. If they are, no inbound or outbound network calls can be made to or from the model containers.

", "DescribeModelOutput$EnableNetworkIsolation": "

If True, no inbound or outbound network calls can be made to or from the model container.

", "DescribeTrainingJobResponse$EnableNetworkIsolation": "

If you want to allow inbound or outbound network calls, except for calls between peers within a training cluster for distributed training, choose True. If you enable network isolation for training jobs that are configured to use a VPC, SageMaker downloads and uploads customer data and model artifacts through the specified VPC, but the training container does not have network access.

", "DescribeTrainingJobResponse$EnableInterContainerTrafficEncryption": "

To encrypt all communications between ML compute instances in distributed training, choose True. Encryption provides greater security for distributed training, but training might take longer. How long it takes depends on the amount of communication between compute instances, especially if you use a deep learning algorithms in distributed training.

", @@ -1423,7 +1469,7 @@ "Model$EnableNetworkIsolation": "

Isolates the model container. No inbound or outbound network calls can be made to or from the model container.

", "ModelDashboardIndicatorAction$Enabled": "

Indicates whether the alert action is turned on.

", "MonitoringCsvDatasetFormat$Header": "

Indicates if the CSV data has a header.

", - "MonitoringJsonDatasetFormat$Line": "

Indicates if the file should be read as a json object per line.

", + "MonitoringJsonDatasetFormat$Line": "

Indicates if the file should be read as a JSON object per line.

", "MonitoringNetworkConfig$EnableInterContainerTrafficEncryption": "

Whether to encrypt all communications between the instances used for the monitoring jobs. Choose True to encrypt communications. Encryption provides greater security for distributed jobs, but the processing might take longer.

", "MonitoringNetworkConfig$EnableNetworkIsolation": "

Whether to allow inbound and outbound network calls to and from the containers used for the monitoring job.

", "NetworkConfig$EnableInterContainerTrafficEncryption": "

Whether to encrypt all communications between distributed processing jobs. Choose True to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.

", @@ -1575,7 +1621,7 @@ } }, "CaptureContentTypeHeader": { - "base": "

Configuration specifying how to treat different headers. If no headers are specified SageMaker will by default base64 encode when capturing the data.

", + "base": "

Configuration specifying how to treat different headers. If no headers are specified Amazon SageMaker will by default base64 encode when capturing the data.

", "refs": { "DataCaptureConfig$CaptureContentTypeHeader": "

Configuration specifying how to treat different headers. If no headers are specified SageMaker will by default base64 encode when capturing the data.

", "InferenceExperimentDataStorageConfig$ContentType": null @@ -1894,10 +1940,188 @@ "CreateModelPackageInput$ClientToken": "

A unique token that guarantees that the call to this API is idempotent.

" } }, + "ClusterArn": { + "base": null, + "refs": { + "ClusterSummary$ClusterArn": "

The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster.

", + "CreateClusterResponse$ClusterArn": "

The Amazon Resource Name (ARN) of the cluster.

", + "DeleteClusterResponse$ClusterArn": "

The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster to delete.

", + "DescribeClusterResponse$ClusterArn": "

The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster.

", + "UpdateClusterResponse$ClusterArn": "

The Amazon Resource Name (ARN) of the updated SageMaker HyperPod cluster.

" + } + }, + "ClusterInstanceCount": { + "base": null, + "refs": { + "ClusterInstanceGroupDetails$TargetCount": "

The number of instances you specified to add to the instance group of a SageMaker HyperPod cluster.

", + "ClusterInstanceGroupSpecification$InstanceCount": "

Specifies the number of instances to add to the instance group of a SageMaker HyperPod cluster.

" + } + }, + "ClusterInstanceGroupDetails": { + "base": "

Details of an instance group in a SageMaker HyperPod cluster.

", + "refs": { + "ClusterInstanceGroupDetailsList$member": null + } + }, + "ClusterInstanceGroupDetailsList": { + "base": null, + "refs": { + "DescribeClusterResponse$InstanceGroups": "

The instance groups of the SageMaker HyperPod cluster.

" + } + }, + "ClusterInstanceGroupName": { + "base": null, + "refs": { + "ClusterInstanceGroupDetails$InstanceGroupName": "

The name of the instance group of a SageMaker HyperPod cluster.

", + "ClusterInstanceGroupSpecification$InstanceGroupName": "

Specifies the name of the instance group.

", + "ClusterNodeDetails$InstanceGroupName": "

The instance group name in which the instance is.

", + "ClusterNodeSummary$InstanceGroupName": "

The name of the instance group in which the instance is.

", + "ListClusterNodesRequest$InstanceGroupNameContains": "

A filter that returns the instance groups whose name contain a specified string.

" + } + }, + "ClusterInstanceGroupSpecification": { + "base": "

The specifications of an instance group that you need to define.

", + "refs": { + "ClusterInstanceGroupSpecifications$member": null + } + }, + "ClusterInstanceGroupSpecifications": { + "base": null, + "refs": { + "CreateClusterRequest$InstanceGroups": "

The instance groups to be created in the SageMaker HyperPod cluster.

", + "UpdateClusterRequest$InstanceGroups": "

Specify the instance groups to update.

" + } + }, + "ClusterInstanceStatus": { + "base": null, + "refs": { + "ClusterInstanceStatusDetails$Status": "

The status of an instance in a SageMaker HyperPod cluster.

" + } + }, + "ClusterInstanceStatusDetails": { + "base": "

Details of an instance in a SageMaker HyperPod cluster.

", + "refs": { + "ClusterNodeDetails$InstanceStatus": "

The status of the instance.

", + "ClusterNodeSummary$InstanceStatus": "

The status of the instance.

" + } + }, + "ClusterInstanceType": { + "base": null, + "refs": { + "ClusterInstanceGroupDetails$InstanceType": "

The instance type of the instance group of a SageMaker HyperPod cluster.

", + "ClusterInstanceGroupSpecification$InstanceType": "

Specifies the instance type of the instance group.

", + "ClusterNodeDetails$InstanceType": "

The type of the instance.

", + "ClusterNodeSummary$InstanceType": "

The type of the instance.

" + } + }, + "ClusterLifeCycleConfig": { + "base": "

The LifeCycle configuration for a SageMaker HyperPod cluster.

", + "refs": { + "ClusterInstanceGroupDetails$LifeCycleConfig": "

Details of LifeCycle configuration for the instance group.

", + "ClusterInstanceGroupSpecification$LifeCycleConfig": "

Specifies the LifeCycle configuration for the instance group.

", + "ClusterNodeDetails$LifeCycleConfig": "

The LifeCycle configuration applied to the instance.

" + } + }, + "ClusterLifeCycleConfigFileName": { + "base": null, + "refs": { + "ClusterLifeCycleConfig$OnCreate": "

The directory of the LifeCycle script under SourceS3Uri. This LifeCycle script runs during cluster creation.

" + } + }, + "ClusterName": { + "base": null, + "refs": { + "ClusterSummary$ClusterName": "

The name of the SageMaker HyperPod cluster.

", + "CreateClusterRequest$ClusterName": "

The name for the new SageMaker HyperPod cluster.

", + "DescribeClusterResponse$ClusterName": "

The name of the SageMaker HyperPod cluster.

" + } + }, + "ClusterNameOrArn": { + "base": null, + "refs": { + "DeleteClusterRequest$ClusterName": "

The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster to delete.

", + "DescribeClusterNodeRequest$ClusterName": "

The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster in which the instance is.

", + "DescribeClusterRequest$ClusterName": "

The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster.

", + "ListClusterNodesRequest$ClusterName": "

The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod cluster in which you want to retrieve the list of nodes.

", + "UpdateClusterRequest$ClusterName": "

Specify the name of the SageMaker HyperPod cluster you want to update.

" + } + }, + "ClusterNodeDetails": { + "base": "

Details of an instance (also called a node interchangeably) in a SageMaker HyperPod cluster.

", + "refs": { + "DescribeClusterNodeResponse$NodeDetails": "

The details of the instance.

" + } + }, + "ClusterNodeId": { + "base": null, + "refs": { + "DescribeClusterNodeRequest$NodeId": "

The ID of the instance.

" + } + }, + "ClusterNodeSummaries": { + "base": null, + "refs": { + "ListClusterNodesResponse$ClusterNodeSummaries": "

The summaries of listed instances in a SageMaker HyperPod cluster

" + } + }, + "ClusterNodeSummary": { + "base": "

Lists a summary of the properties of an instance (also called a node interchangeably) of a SageMaker HyperPod cluster.

", + "refs": { + "ClusterNodeSummaries$member": null + } + }, + "ClusterNonNegativeInstanceCount": { + "base": null, + "refs": { + "ClusterInstanceGroupDetails$CurrentCount": "

The number of instances that are currently in the instance group of a SageMaker HyperPod cluster.

" + } + }, + "ClusterSortBy": { + "base": null, + "refs": { + "ListClusterNodesRequest$SortBy": "

The field by which to sort results. The default value is CREATION_TIME.

", + "ListClustersRequest$SortBy": "

The field by which to sort results. The default value is CREATION_TIME.

" + } + }, + "ClusterStatus": { + "base": null, + "refs": { + "ClusterSummary$ClusterStatus": "

The status of the SageMaker HyperPod cluster.

", + "DescribeClusterResponse$ClusterStatus": "

The status of the SageMaker HyperPod cluster.

" + } + }, + "ClusterSummaries": { + "base": null, + "refs": { + "ListClustersResponse$ClusterSummaries": "

The summaries of listed SageMaker HyperPod clusters.

" + } + }, + "ClusterSummary": { + "base": "

Lists a summary of the properties of a SageMaker HyperPod cluster.

", + "refs": { + "ClusterSummaries$member": null + } + }, + "ClusterThreadsPerCore": { + "base": null, + "refs": { + "ClusterInstanceGroupDetails$ThreadsPerCore": "

The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading. For more information, see the reference table of CPU cores and threads per CPU core per instance type in the Amazon Elastic Compute Cloud User Guide.

", + "ClusterInstanceGroupSpecification$ThreadsPerCore": "

Specifies the value for Threads per core. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading. For instance types that doesn't support multithreading, specify 1. For more information, see the reference table of CPU cores and threads per CPU core per instance type in the Amazon Elastic Compute Cloud User Guide.

", + "ClusterNodeDetails$ThreadsPerCore": "

The number of threads per CPU core you specified under CreateCluster.

" + } + }, + "CodeEditorAppSettings": { + "base": "

The Code Editor application settings.

For more information about Code Editor, see Get started with Code Editor in Amazon SageMaker.

", + "refs": { + "UserSettings$CodeEditorAppSettings": "

The Code Editor application settings.

" + } + }, "CodeRepositories": { "base": null, "refs": { - "JupyterServerAppSettings$CodeRepositories": "

A list of Git repositories that SageMaker automatically displays to users for cloning in the JupyterServer application.

" + "JupyterLabAppSettings$CodeRepositories": "

A list of Git repositories that SageMaker automatically displays to users for cloning in the JupyterLab application.

", + "JupyterServerAppSettings$CodeRepositories": "

A list of Git repositories that SageMaker automatically displays to users for cloning in the JupyterServer application.

", + "SpaceJupyterLabAppSettings$CodeRepositories": "

A list of Git repositories that SageMaker automatically displays to users for cloning in the JupyterLab application.

" } }, "CodeRepository": { @@ -1988,6 +2212,12 @@ "CognitoMemberDefinition$UserPool": "

An identifier for a user pool. The user pool must be in the same region as the service that you are calling.

" } }, + "CollectionConfig": { + "base": "

Configuration for your collection.

", + "refs": { + "FeatureDefinition$CollectionConfig": "

Configuration for your collection.

" + } + }, "CollectionConfiguration": { "base": "

Configuration information for the Amazon SageMaker Debugger output tensor collections.

", "refs": { @@ -2012,6 +2242,12 @@ "CollectionConfiguration$CollectionParameters": "

Parameter values for the tensor collection. The allowed parameters are \"name\", \"include_regex\", \"reduction_config\", \"save_config\", \"tensor_names\", and \"save_histogram\".

" } }, + "CollectionType": { + "base": null, + "refs": { + "FeatureDefinition$CollectionType": "

A grouping of elements where each element within the collection must have the same feature type (String, Integral, or Fractional).

  • List: An ordered collection of elements.

  • Set: An unordered collection of unique elements.

  • Vector: A specialized list that represents a fixed-size array of elements. The vector dimension is determined by you. Must have elements with fractional feature types.

" + } + }, "CompilationJobArn": { "base": null, "refs": { @@ -2055,6 +2291,7 @@ "CompressionType": { "base": null, "refs": { + "AdditionalS3DataSource$CompressionType": "

The type of compression used for an additional data source used in inference or training. Specify None if your additional data source is not compressed.

", "AutoMLChannel$CompressionType": "

You can use Gzip or None. The default value is None.

", "AutoMLJobChannel$CompressionType": "

The allowed compression types depend on the input format and problem type. We allow the compression type Gzip for S3Prefix inputs on tabular data only. For all other inputs, the compression type should be None. If no compression type is provided, we default to None.

", "Channel$CompressionType": "

If training data is compressed, the compression type. The default value is None. CompressionType is used only in Pipe input mode. In File mode, leave this field unset or set it to None.

", @@ -2116,6 +2353,12 @@ "AppSpecification$ContainerArguments": "

The arguments for a container used to run a processing job.

" } }, + "ContainerConfig": { + "base": "

The configuration used to run the application image container.

", + "refs": { + "JupyterLabAppImageConfig$ContainerConfig": null + } + }, "ContainerDefinition": { "base": "

Describes the container, as part of model definition.

", "refs": { @@ -2162,6 +2405,7 @@ "ContainerDefinition$Image": "

The path where inference code is stored. This can be either in Amazon EC2 Container Registry or in a Docker registry that is accessible from the same VPC that you configure for your endpoint. If you are using your own custom algorithm instead of an algorithm provided by SageMaker, the inference code must meet SageMaker requirements. SageMaker supports both registry/repository[:tag] and registry/repository[@digest] image path formats. For more information, see Using Your Own Algorithms with Amazon SageMaker.

The model artifacts in an Amazon S3 bucket and the Docker image for inference container in Amazon EC2 Container Registry must be in the same region as the model or endpoint you are creating.

", "DeployedImage$SpecifiedImage": "

The image path you specified when you created the model.

", "DeployedImage$ResolvedImage": "

The specific digest path of the image hosted in this ProductionVariant.

", + "InferenceComponentContainerSpecification$Image": "

The Amazon Elastic Container Registry (Amazon ECR) path where the Docker image for the model is stored.

", "ModelPackageContainerDefinition$Image": "

The Amazon EC2 Container Registry (Amazon ECR) path where inference code is stored.

If you are using your own custom algorithm instead of an algorithm provided by SageMaker, the inference code must meet SageMaker requirements. SageMaker supports both registry/repository[:tag] and registry/repository[@digest] image path formats. For more information, see Using Your Own Algorithms with Amazon SageMaker.

", "TrainingSpecification$TrainingImage": "

The Amazon ECR registry path of the Docker image that contains the training algorithm.

" } @@ -2201,7 +2445,7 @@ "base": null, "refs": { "AutoMLChannel$ContentType": "

The content type of the data from the input source. You can use text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

", - "AutoMLJobChannel$ContentType": "

The content type of the data from the input source. The following are the allowed content types for different problems:

  • For tabular problem types: text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

  • For image classification: image/png, image/jpeg, or image/*. The default value is image/*.

  • For text classification: text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

  • For time-series forecasting: text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

", + "AutoMLJobChannel$ContentType": "

The content type of the data from the input source. The following are the allowed content types for different problems:

  • For tabular problem types: text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

  • For image classification: image/png, image/jpeg, or image/*. The default value is image/*.

  • For text classification: text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

  • For time-series forecasting: text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

  • For text generation (LLMs fine-tuning): text/csv;header=present or x-application/vnd.amazon+parquet. The default value is text/csv;header=present.

", "Channel$ContentType": "

The MIME type of the data.

", "ContentTypes$member": null, "FileSource$ContentType": "

The type of content stored in the file source.

", @@ -2274,7 +2518,7 @@ "CountryCode": { "base": null, "refs": { - "HolidayConfigAttributes$CountryCode": "

The country code for the holiday calendar.

For the list of public holiday calendars supported by AutoML job V2, see Country Codes. Use the country code corresponding to the country of your choice.

" + "HolidayConfigAttributes$CountryCode": "

The country code for the holiday calendar.

For the list of public holiday calendars supported by AutoML job V2, see Country Codes. Use the country code corresponding to the country of your choice.

" } }, "CreateActionRequest": { @@ -2347,6 +2591,16 @@ "refs": { } }, + "CreateClusterRequest": { + "base": null, + "refs": { + } + }, + "CreateClusterResponse": { + "base": null, + "refs": { + } + }, "CreateCodeRepositoryInput": { "base": null, "refs": { @@ -2522,6 +2776,16 @@ "refs": { } }, + "CreateInferenceComponentInput": { + "base": null, + "refs": { + } + }, + "CreateInferenceComponentOutput": { + "base": null, + "refs": { + } + }, "CreateInferenceExperimentRequest": { "base": null, "refs": { @@ -2871,7 +3135,31 @@ "CsvContentTypes": { "base": null, "refs": { - "CaptureContentTypeHeader$CsvContentTypes": "

The list of all content type headers that SageMaker will treat as CSV and capture accordingly.

" + "CaptureContentTypeHeader$CsvContentTypes": "

The list of all content type headers that Amazon SageMaker will treat as CSV and capture accordingly.

" + } + }, + "CustomFileSystem": { + "base": "

A file system, created by you, that you assign to a user profile or space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio.

", + "refs": { + "CustomFileSystems$member": null + } + }, + "CustomFileSystemConfig": { + "base": "

The settings for assigning a custom file system to a user profile or space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio.

", + "refs": { + "CustomFileSystemConfigs$member": null + } + }, + "CustomFileSystemConfigs": { + "base": null, + "refs": { + "UserSettings$CustomFileSystemConfigs": "

The settings for assigning a custom file system to a user profile. Permitted users can access this file system in Amazon SageMaker Studio.

" + } + }, + "CustomFileSystems": { + "base": null, + "refs": { + "SpaceSettings$CustomFileSystems": "

A file system, created by you, that you assign to a space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio.

" } }, "CustomImage": { @@ -2880,13 +3168,38 @@ "CustomImages$member": null } }, + "CustomImageContainerArguments": { + "base": null, + "refs": { + "ContainerConfig$ContainerArguments": "

The arguments for the container when you're running the application.

" + } + }, + "CustomImageContainerEntrypoint": { + "base": null, + "refs": { + "ContainerConfig$ContainerEntrypoint": "

The entrypoint used to run the application in the container.

" + } + }, + "CustomImageContainerEnvironmentVariables": { + "base": null, + "refs": { + "ContainerConfig$ContainerEnvironmentVariables": "

The environment variables to set in the container

" + } + }, "CustomImages": { "base": null, "refs": { + "JupyterLabAppSettings$CustomImages": "

A list of custom SageMaker images that are configured to run as a JupyterLab app.

", "KernelGatewayAppSettings$CustomImages": "

A list of custom SageMaker images that are configured to run as a KernelGateway app.

", "RSessionAppSettings$CustomImages": "

A list of custom SageMaker images that are configured to run as a RSession app.

" } }, + "CustomPosixUserConfig": { + "base": "

Details about the POSIX identity that is used for file system operations.

", + "refs": { + "UserSettings$CustomPosixUserConfig": "

Details about the POSIX identity that is used for file system operations.

" + } + }, "CustomerMetadataKey": { "base": null, "refs": { @@ -3049,6 +3362,12 @@ "TrainingJob$DebugRuleEvaluationStatuses": "

Information about the evaluation status of the rules for the training job.

" } }, + "DefaultEbsStorageSettings": { + "base": "

A collection of default EBS storage settings that applies to private spaces created within a domain or user profile.

", + "refs": { + "DefaultSpaceStorageSettings$DefaultEbsStorageSettings": "

The default EBS storage settings for a private space.

" + } + }, "DefaultGid": { "base": null, "refs": { @@ -3063,6 +3382,12 @@ "UpdateDomainRequest$DefaultSpaceSettings": "

The default settings used to create a space within the Domain.

" } }, + "DefaultSpaceStorageSettings": { + "base": "

The default storage settings for a private space.

", + "refs": { + "UserSettings$SpaceStorageSettings": "

The storage settings for a private space.

" + } + }, "DefaultUid": { "base": null, "refs": { @@ -3114,6 +3439,16 @@ "refs": { } }, + "DeleteClusterRequest": { + "base": null, + "refs": { + } + }, + "DeleteClusterResponse": { + "base": null, + "refs": { + } + }, "DeleteCodeRepositoryInput": { "base": null, "refs": { @@ -3229,6 +3564,11 @@ "refs": { } }, + "DeleteInferenceComponentInput": { + "base": null, + "refs": { + } + }, "DeleteInferenceExperimentRequest": { "base": null, "refs": { @@ -3389,7 +3729,8 @@ "DeployedImage": { "base": "

Gets the Amazon EC2 Container Registry path of the docker image of the model that is hosted in this ProductionVariant.

If you used the registry/repository[:tag] form to specify the image path of the primary container when you created the model hosted in this ProductionVariant, the path resolves to a path of the form registry/repository[@digest]. A digest is a hash value that identifies a specific version of an image. For information about Amazon ECR paths, see Pulling an Image in the Amazon ECR User Guide.

", "refs": { - "DeployedImages$member": null + "DeployedImages$member": null, + "InferenceComponentContainerSpecificationSummary$DeployedImage": null } }, "DeployedImages": { @@ -3526,6 +3867,26 @@ "refs": { } }, + "DescribeClusterNodeRequest": { + "base": null, + "refs": { + } + }, + "DescribeClusterNodeResponse": { + "base": null, + "refs": { + } + }, + "DescribeClusterRequest": { + "base": null, + "refs": { + } + }, + "DescribeClusterResponse": { + "base": null, + "refs": { + } + }, "DescribeCodeRepositoryInput": { "base": null, "refs": { @@ -3736,6 +4097,16 @@ "refs": { } }, + "DescribeInferenceComponentInput": { + "base": null, + "refs": { + } + }, + "DescribeInferenceComponentOutput": { + "base": null, + "refs": { + } + }, "DescribeInferenceExperimentRequest": { "base": null, "refs": { @@ -4204,6 +4575,18 @@ "UpdateDevicesRequest$Devices": "

List of devices to register with Edge Manager agent.

" } }, + "Dimension": { + "base": null, + "refs": { + "VectorConfig$Dimension": "

The number of elements in your vector.

" + } + }, + "DirectDeploySettings": { + "base": "

The model deployment settings for the SageMaker Canvas application.

In order to enable model deployment for Canvas, the SageMaker Domain's or user profile's Amazon Web Services IAM execution role must have the AmazonSageMakerCanvasDirectDeployAccess policy attached. You can also turn on model deployment permissions through the SageMaker Domain's or user profile's settings in the SageMaker console.

", + "refs": { + "CanvasAppSettings$DirectDeploySettings": "

The model deployment settings for the SageMaker Canvas application.

" + } + }, "DirectInternetAccess": { "base": null, "refs": { @@ -4432,12 +4815,30 @@ "GetScalingConfigurationRecommendationResponse$DynamicScalingConfiguration": "

An object with the recommended values for you to specify when creating an autoscaling policy.

" } }, + "EFSFileSystem": { + "base": "

A file system, created by you in Amazon EFS, that you assign to a user profile or space for an Amazon SageMaker Domain. Permitted users can access this file system in Amazon SageMaker Studio.

", + "refs": { + "CustomFileSystem$EFSFileSystem": "

A custom file system in Amazon EFS.

" + } + }, + "EFSFileSystemConfig": { + "base": "

The settings for assigning a custom Amazon EFS file system to a user profile or space for an Amazon SageMaker Domain.

", + "refs": { + "CustomFileSystemConfig$EFSFileSystemConfig": "

The settings for a custom Amazon EFS file system.

" + } + }, "EMRStepMetadata": { "base": "

The configurations and outcomes of an Amazon EMR step execution.

", "refs": { "PipelineExecutionStepMetadata$EMR": "

The configurations and outcomes of an Amazon EMR step execution.

" } }, + "EbsStorageSettings": { + "base": "

A collection of EBS storage settings that applies to private spaces.

", + "refs": { + "SpaceStorageSettings$EbsStorageSettings": "

A collection of EBS storage settings for a private space.

" + } + }, "Edge": { "base": "

A directed edge connecting two lineage entities.

", "refs": { @@ -4624,6 +5025,12 @@ "DataCaptureConfigSummary$EnableCapture": "

Whether data capture is enabled or disabled.

" } }, + "EnableInfraCheck": { + "base": null, + "refs": { + "InfraCheckConfig$EnableInfraCheck": "

Enables an infrastructure health check.

" + } + }, "EnableIotRoleAlias": { "base": null, "refs": { @@ -4652,8 +5059,10 @@ "refs": { "CreateEndpointOutput$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", "DescribeEndpointOutput$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", + "DescribeInferenceComponentOutput$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint that hosts the inference component.

", "Endpoint$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", "EndpointSummary$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", + "InferenceComponentSummary$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint that hosts the inference component.

", "ModelDashboardEndpoint$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", "UpdateEndpointOutput$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", "UpdateEndpointWeightsAndCapacitiesOutput$EndpointArn": "

The Amazon Resource Name (ARN) of the updated endpoint.

" @@ -4746,10 +5155,12 @@ "base": null, "refs": { "CreateEndpointInput$EndpointName": "

The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web Services account. The name is case-insensitive in CreateEndpoint, but the case is preserved and must be matched in InvokeEndpoint.

", + "CreateInferenceComponentInput$EndpointName": "

The name of an existing endpoint where you host the inference component.

", "CreateInferenceExperimentRequest$EndpointName": "

The name of the Amazon SageMaker endpoint on which you want to run the inference experiment.

", "DeleteEndpointInput$EndpointName": "

The name of the endpoint that you want to delete.

", "DescribeEndpointInput$EndpointName": "

The name of the endpoint.

", "DescribeEndpointOutput$EndpointName": "

Name of the endpoint.

", + "DescribeInferenceComponentOutput$EndpointName": "

The name of the endpoint that hosts the inference component.

", "DescribeMonitoringScheduleResponse$EndpointName": "

The name of the endpoint for the monitoring job.

", "Endpoint$EndpointName": "

The name of the endpoint.

", "EndpointInfo$EndpointName": "

The name of a customer's endpoint.

", @@ -4758,7 +5169,9 @@ "EndpointSummary$EndpointName": "

The name of the endpoint.

", "GetScalingConfigurationRecommendationRequest$EndpointName": "

The name of an endpoint benchmarked during a previously completed inference recommendation job. This name should come from one of the recommendations returned by the job specified in the InferenceRecommendationsJobName field.

Specify either this field or the RecommendationId field.

", "GetScalingConfigurationRecommendationResponse$EndpointName": "

The name of an endpoint benchmarked during a previously completed Inference Recommender job.

", + "InferenceComponentSummary$EndpointName": "

The name of the endpoint that hosts the inference component.

", "ListDataQualityJobDefinitionsRequest$EndpointName": "

A filter that lists the data quality job definitions associated with the specified endpoint.

", + "ListInferenceComponentsInput$EndpointNameEquals": "

An endpoint name to filter the listed inference components. The response includes only those inference components that are hosted at the specified endpoint.

", "ListModelBiasJobDefinitionsRequest$EndpointName": "

Name of the endpoint to monitor for model bias.

", "ListModelExplainabilityJobDefinitionsRequest$EndpointName": "

Name of the endpoint to monitor for model explainability.

", "ListModelQualityJobDefinitionsRequest$EndpointName": "

A filter that returns only model quality monitoring job definitions that are associated with the specified endpoint.

", @@ -4985,6 +5398,8 @@ "refs": { "AutoMLContainerDefinition$Environment": "

The environment variables to set in the container. For more information, see ContainerDefinition.

", "ContainerDefinition$Environment": "

The environment variables to set in the Docker container. Each key and value in the Environment string to string map can have length of up to 1024. We support up to 16 entries in the map.

", + "InferenceComponentContainerSpecification$Environment": "

The environment variables to set in the Docker container. Each key and value in the Environment string-to-string map can have length of up to 1024. We support up to 16 entries in the map.

", + "InferenceComponentContainerSpecificationSummary$Environment": "

The environment variables to set in the Docker container.

", "ModelPackageContainerDefinition$Environment": "

The environment variables to set in the Docker container. Each key and value in the Environment string to string map can have length of up to 1024. We support up to 16 entries in the map.

", "RealTimeInferenceRecommendation$Environment": "

The recommended environment variables to set in the model container for Real-Time Inference.

" } @@ -5258,6 +5673,7 @@ "DescribeHyperParameterTuningJobResponse$FailureReason": "

If the tuning job failed, the reason it failed.

", "DescribeImageResponse$FailureReason": "

When a create, update, or delete operation fails, the reason for the failure.

", "DescribeImageVersionResponse$FailureReason": "

When a create or delete operation fails, the reason for the failure.

", + "DescribeInferenceComponentOutput$FailureReason": "

If the inference component status is Failed, the reason for the failure.

", "DescribeInferenceRecommendationsJobResponse$FailureReason": "

If the job fails, provides information why the job failed.

", "DescribeLabelingJobResponse$FailureReason": "

If the job failed, the reason that it failed.

", "DescribeModelCardExportJobResponse$FailureReason": "

The failure reason if the model export job fails.

", @@ -5471,7 +5887,9 @@ "FeatureStatus": { "base": null, "refs": { + "DirectDeploySettings$Status": "

Describes whether model deployment permissions are enabled or disabled in the Canvas application.

", "IdentityProviderOAuthSetting$Status": "

Describes whether OAuth for a data source is enabled or disabled in the Canvas application.

", + "KendraSettings$Status": "

Describes whether the document querying feature is enabled or disabled in the Canvas application.

", "ModelRegisterSettings$Status": "

Describes whether the integration to the model registry is enabled or disabled in the Canvas application.

", "TimeSeriesForecastingSettings$Status": "

Describes whether time series forecasting is enabled or disabled in the Canvas application.

" } @@ -5512,9 +5930,17 @@ "FileSystemId": { "base": null, "refs": { + "EFSFileSystem$FileSystemId": "

The ID of your Amazon EFS file system.

", + "EFSFileSystemConfig$FileSystemId": "

The ID of your Amazon EFS file system.

", "FileSystemDataSource$FileSystemId": "

The file system id.

" } }, + "FileSystemPath": { + "base": null, + "refs": { + "EFSFileSystemConfig$FileSystemPath": "

The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below.

" + } + }, "FileSystemType": { "base": null, "refs": { @@ -5788,6 +6214,12 @@ "refs": { } }, + "Gid": { + "base": null, + "refs": { + "CustomPosixUserConfig$Gid": "

The POSIX group ID.

" + } + }, "GitConfig": { "base": "

Specifies configuration details for a Git repository in your Amazon Web Services account.

", "refs": { @@ -5835,7 +6267,7 @@ "HolidayConfig": { "base": null, "refs": { - "TimeSeriesForecastingJobConfig$HolidayConfig": "

The collection of holidays featurization attributes used to incorporate national holiday information into your forecasting model.

" + "TimeSeriesForecastingJobConfig$HolidayConfig": "

The collection of holiday featurization attributes used to incorporate national holiday information into your forecasting model.

" } }, "HolidayConfigAttributes": { @@ -6306,7 +6738,7 @@ } }, "HyperParameterTuningJobObjective": { - "base": "

Defines the objective metric for a hyperparameter tuning job. Hyperparameter tuning uses the value of this metric to evaluate the training jobs it launches, and returns the training job that results in either the highest or lowest value for this metric, depending on the value you specify for the Type parameter.

", + "base": "

Defines the objective metric for a hyperparameter tuning job. Hyperparameter tuning uses the value of this metric to evaluate the training jobs it launches, and returns the training job that results in either the highest or lowest value for this metric, depending on the value you specify for the Type parameter. If you want to define a custom objective metric, see Define metrics and environment variables.

", "refs": { "HyperParameterTrainingJobDefinition$TuningObjective": null, "HyperParameterTuningJobConfig$HyperParameterTuningJobObjective": "

The HyperParameterTuningJobObjective specifies the objective metric used to evaluate the performance of training jobs launched by this tuning job.

", @@ -6453,7 +6885,7 @@ } }, "IdentityProviderOAuthSetting": { - "base": "

The Amazon SageMaker Canvas app setting where you configure OAuth for connecting to an external data source, such as Snowflake.

", + "base": "

The Amazon SageMaker Canvas application setting where you configure OAuth for connecting to an external data source, such as Snowflake.

", "refs": { "IdentityProviderOAuthSettings$member": null } @@ -6490,7 +6922,7 @@ } }, "ImageClassificationJobConfig": { - "base": "

Stores the configuration information for the image classification problem of an AutoML job V2.

", + "base": "

The collection of settings used by an AutoML job V2 for the image classification problem type.

", "refs": { "AutoMLProblemTypeConfig$ImageClassificationJobConfig": "

Settings used to configure an AutoML job V2 for the image classification problem type.

" } @@ -6604,6 +7036,12 @@ "ImageVersions$member": null } }, + "ImageVersionAlias": { + "base": null, + "refs": { + "ResourceSpec$SageMakerImageVersionAlias": "

The SageMakerImageVersionAlias.

" + } + }, "ImageVersionArn": { "base": null, "refs": { @@ -6667,6 +7105,121 @@ "refs": { } }, + "InferenceComponentArn": { + "base": null, + "refs": { + "CreateInferenceComponentOutput$InferenceComponentArn": "

The Amazon Resource Name (ARN) of the inference component.

", + "DescribeInferenceComponentOutput$InferenceComponentArn": "

The Amazon Resource Name (ARN) of the inference component.

", + "InferenceComponentSummary$InferenceComponentArn": "

The Amazon Resource Name (ARN) of the inference component.

", + "UpdateInferenceComponentOutput$InferenceComponentArn": "

The Amazon Resource Name (ARN) of the inference component.

", + "UpdateInferenceComponentRuntimeConfigOutput$InferenceComponentArn": "

The Amazon Resource Name (ARN) of the inference component.

" + } + }, + "InferenceComponentComputeResourceRequirements": { + "base": "

Defines the compute resources to allocate to run a model that you assign to an inference component. These resources include CPU cores, accelerators, and memory.

", + "refs": { + "InferenceComponentSpecification$ComputeResourceRequirements": "

The compute resources allocated to run the model assigned to the inference component.

", + "InferenceComponentSpecificationSummary$ComputeResourceRequirements": "

The compute resources allocated to run the model assigned to the inference component.

" + } + }, + "InferenceComponentContainerSpecification": { + "base": "

Defines a container that provides the runtime environment for a model that you deploy with an inference component.

", + "refs": { + "InferenceComponentSpecification$Container": "

Defines a container that provides the runtime environment for a model that you deploy with an inference component.

" + } + }, + "InferenceComponentContainerSpecificationSummary": { + "base": "

Details about the resources that are deployed with this inference component.

", + "refs": { + "InferenceComponentSpecificationSummary$Container": "

Details about the container that provides the runtime environment for the model that is deployed with the inference component.

" + } + }, + "InferenceComponentCopyCount": { + "base": null, + "refs": { + "InferenceComponentRuntimeConfig$CopyCount": "

The number of runtime copies of the model container to deploy with the inference component. Each copy can serve inference requests.

", + "InferenceComponentRuntimeConfigSummary$DesiredCopyCount": "

The number of runtime copies of the model container that you requested to deploy with the inference component.

", + "InferenceComponentRuntimeConfigSummary$CurrentCopyCount": "

The number of runtime copies of the model container that are currently deployed.

" + } + }, + "InferenceComponentName": { + "base": null, + "refs": { + "CreateInferenceComponentInput$InferenceComponentName": "

A unique name to assign to the inference component.

", + "DeleteInferenceComponentInput$InferenceComponentName": "

The name of the inference component to delete.

", + "DescribeInferenceComponentInput$InferenceComponentName": "

The name of the inference component.

", + "DescribeInferenceComponentOutput$InferenceComponentName": "

The name of the inference component.

", + "InferenceComponentSummary$InferenceComponentName": "

The name of the inference component.

", + "UpdateInferenceComponentInput$InferenceComponentName": "

The name of the inference component.

", + "UpdateInferenceComponentRuntimeConfigInput$InferenceComponentName": "

The name of the inference component to update.

" + } + }, + "InferenceComponentNameContains": { + "base": null, + "refs": { + "ListInferenceComponentsInput$NameContains": "

Filters the results to only those inference components with a name that contains the specified string.

" + } + }, + "InferenceComponentRuntimeConfig": { + "base": "

Runtime settings for a model that is deployed with an inference component.

", + "refs": { + "CreateInferenceComponentInput$RuntimeConfig": "

Runtime settings for a model that is deployed with an inference component.

", + "UpdateInferenceComponentInput$RuntimeConfig": "

Runtime settings for a model that is deployed with an inference component.

", + "UpdateInferenceComponentRuntimeConfigInput$DesiredRuntimeConfig": "

Runtime settings for a model that is deployed with an inference component.

" + } + }, + "InferenceComponentRuntimeConfigSummary": { + "base": "

Details about the runtime settings for the model that is deployed with the inference component.

", + "refs": { + "DescribeInferenceComponentOutput$RuntimeConfig": "

Details about the runtime settings for the model that is deployed with the inference component.

" + } + }, + "InferenceComponentSortKey": { + "base": null, + "refs": { + "ListInferenceComponentsInput$SortBy": "

The field by which to sort the inference components in the response. The default is CreationTime.

" + } + }, + "InferenceComponentSpecification": { + "base": "

Details about the resources to deploy with this inference component, including the model, container, and compute resources.

", + "refs": { + "CreateInferenceComponentInput$Specification": "

Details about the resources to deploy with this inference component, including the model, container, and compute resources.

", + "UpdateInferenceComponentInput$Specification": "

Details about the resources to deploy with this inference component, including the model, container, and compute resources.

" + } + }, + "InferenceComponentSpecificationSummary": { + "base": "

Details about the resources that are deployed with this inference component.

", + "refs": { + "DescribeInferenceComponentOutput$Specification": "

Details about the resources that are deployed with this inference component.

" + } + }, + "InferenceComponentStartupParameters": { + "base": "

Settings that take effect while the model container starts up.

", + "refs": { + "InferenceComponentSpecification$StartupParameters": "

Settings that take effect while the model container starts up.

", + "InferenceComponentSpecificationSummary$StartupParameters": "

Settings that take effect while the model container starts up.

" + } + }, + "InferenceComponentStatus": { + "base": null, + "refs": { + "DescribeInferenceComponentOutput$InferenceComponentStatus": "

The status of the inference component.

", + "InferenceComponentSummary$InferenceComponentStatus": "

The status of the inference component.

", + "ListInferenceComponentsInput$StatusEquals": "

Filters the results to only those inference components with the specified status.

" + } + }, + "InferenceComponentSummary": { + "base": "

A summary of the properties of an inference component.

", + "refs": { + "InferenceComponentSummaryList$member": null + } + }, + "InferenceComponentSummaryList": { + "base": null, + "refs": { + "ListInferenceComponentsOutput$InferenceComponents": "

A list of inference components and their properties that matches any of the filters you specified in the request.

" + } + }, "InferenceExecutionConfig": { "base": "

Specifies details about how containers in a multi-container endpoint are run.

", "refs": { @@ -6842,6 +7395,13 @@ "ModelConfiguration$InferenceSpecificationName": "

The inference specification name in the model package version.

" } }, + "InfraCheckConfig": { + "base": "

Configuration information for the infrastructure health check of a training job. A SageMaker-provided health check tests the health of instance hardware and cluster network connectivity.

", + "refs": { + "CreateTrainingJobRequest$InfraCheckConfig": "

Contains information about the infrastructure health check configuration for the training job.

", + "DescribeTrainingJobResponse$InfraCheckConfig": "

Contains information about the infrastructure health check configuration for the training job.

" + } + }, "InitialInstanceCount": { "base": null, "refs": { @@ -7086,6 +7646,21 @@ "DataProcessing$OutputFilter": "

A JSONPath expression used to select a portion of the joined dataset to save in the output file for a batch transform job. If you want SageMaker to store the entire input dataset in the output file, leave the default value, $. If you specify indexes that aren't within the dimension size of the joined dataset, you get an error.

Examples: \"$\", \"$[0,5:]\", \"$['id','SageMakerOutput']\"

" } }, + "JupyterLabAppImageConfig": { + "base": "

The configuration for the file system and kernels in a SageMaker image running as a JupyterLab app.

", + "refs": { + "AppImageConfigDetails$JupyterLabAppImageConfig": "

The configuration for the file system and the runtime, such as the environment variables and entry point.

", + "CreateAppImageConfigRequest$JupyterLabAppImageConfig": "

The JupyterLabAppImageConfig. You can only specify one image kernel in the AppImageConfig API. This kernel is shown to users before the image starts. After the image runs, all kernels are visible in JupyterLab.

", + "DescribeAppImageConfigResponse$JupyterLabAppImageConfig": "

The configuration of the JupyterLab app.

", + "UpdateAppImageConfigRequest$JupyterLabAppImageConfig": "

The JupyterLab app running on the image.

" + } + }, + "JupyterLabAppSettings": { + "base": "

The settings for the JupyterLab application.

", + "refs": { + "UserSettings$JupyterLabAppSettings": "

The settings for the JupyterLab application.

" + } + }, "JupyterServerAppSettings": { "base": "

The JupyterServer app settings.

", "refs": { @@ -7101,6 +7676,12 @@ "ResourceConfigForUpdate$KeepAlivePeriodInSeconds": "

The KeepAlivePeriodInSeconds value specified in the ResourceConfig to update.

" } }, + "KendraSettings": { + "base": "

The Amazon SageMaker Canvas application setting where you configure document querying.

", + "refs": { + "CanvasAppSettings$KendraSettings": "

The settings for document querying.

" + } + }, "KernelDisplayName": { "base": null, "refs": { @@ -7162,7 +7743,7 @@ "CreateEndpointConfigInput$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.

The KmsKeyId can be any of the following formats:

  • Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

  • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Alias name: alias/ExampleAlias

  • Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias

The KMS key policy must grant permission to the IAM role that you specify in your CreateEndpoint, UpdateEndpoint requests. For more information, refer to the Amazon Web Services Key Management Service section Using Key Policies in Amazon Web Services KMS

Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are encrypted using a hardware module on the instance. You can't request a KmsKeyId when using an instance type with local storage. If any of the models that you specify in the ProductionVariants parameter use nitro-based instances with local storage, do not specify a value for the KmsKeyId parameter. If you specify a value for KmsKeyId when using any nitro-based instances with local storage, the call to CreateEndpointConfig fails.

For a list of instance types that support local instance storage, see Instance Store Volumes.

For more information about local instance storage encryption, see SSD Instance Store Volumes.

", "CreateInferenceExperimentRequest$KmsKey": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint. The KmsKey can be any of the following formats:

  • KMS key ID

    \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS key

    \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

  • KMS key Alias

    \"alias/ExampleAlias\"

  • Amazon Resource Name (ARN) of a KMS key Alias

    \"arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias\"

If you use a KMS key ID or an alias of your KMS key, the Amazon SageMaker execution role must include permissions to call kms:Encrypt. If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon S3 for your role's account. Amazon SageMaker uses server-side encryption with KMS managed keys for OutputDataConfig. If you use a bucket policy with an s3:PutObject permission that only allows objects with server-side encryption, set the condition key of s3:x-amz-server-side-encryption to \"aws:kms\". For more information, see KMS managed Encryption Keys in the Amazon Simple Storage Service Developer Guide.

The KMS key policy must grant permission to the IAM role that you specify in your CreateEndpoint and UpdateEndpoint requests. For more information, see Using Key Policies in Amazon Web Services KMS in the Amazon Web Services Key Management Service Developer Guide.

", "CreateNotebookInstanceInput$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to your notebook instance. The KMS key you provide must be enabled. For information, see Enabling and Disabling Keys in the Amazon Web Services Key Management Service Developer Guide.

", - "DataCaptureConfig$KmsKeyId": "

The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt the captured data at rest using Amazon S3 server-side encryption.

The KmsKeyId can be any of the following formats:

  • Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

  • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Alias name: alias/ExampleAlias

  • Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias

", + "DataCaptureConfig$KmsKeyId": "

The Amazon Resource Name (ARN) of an Key Management Service key that SageMaker uses to encrypt the captured data at rest using Amazon S3 server-side encryption.

The KmsKeyId can be any of the following formats:

  • Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

  • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Alias name: alias/ExampleAlias

  • Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias

", "DataCaptureConfigSummary$KmsKeyId": "

The KMS key being used to encrypt the data in Amazon S3.

", "DescribeDomainResponse$HomeEfsFileSystemKmsKeyId": "

Use KmsKeyId.

", "DescribeDomainResponse$KmsKeyId": "

The Amazon Web Services KMS customer managed key used to encrypt the EFS volume attached to the domain.

", @@ -7177,8 +7758,8 @@ "LabelingJobOutputConfig$KmsKeyId": "

The Amazon Web Services Key Management Service ID of the key used to encrypt the output data, if any.

If you provide your own KMS key ID, you must add the required permissions to your KMS key described in Encrypt Output Data and Storage Volume with Amazon Web Services KMS.

If you don't provide a KMS key ID, Amazon SageMaker uses the default Amazon Web Services KMS key for Amazon S3 for your role's account to encrypt your output data.

If you use a bucket policy with an s3:PutObject permission that only allows objects with server-side encryption, set the condition key of s3:x-amz-server-side-encryption to \"aws:kms\". For more information, see KMS-Managed Encryption Keys in the Amazon Simple Storage Service Developer Guide.

", "LabelingJobResourceConfig$VolumeKmsKeyId": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the training and inference jobs used for automated data labeling.

You can only specify a VolumeKmsKeyId when you create a labeling job with automated data labeling enabled using the API operation CreateLabelingJob. You cannot specify an Amazon Web Services KMS key to encrypt the storage volume used for automated data labeling model training and inference when you create a labeling job using the console. To learn more, see Output Data and Storage Volume Encryption.

The VolumeKmsKeyId can be any of the following formats:

  • KMS Key ID

    \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • Amazon Resource Name (ARN) of a KMS Key

    \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

", "ModelCardSecurityConfig$KmsKeyId": "

A Key Management Service key ID to use for encrypting a model card.

", - "MonitoringClusterConfig$VolumeKmsKeyId": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the model monitoring job.

", - "MonitoringOutputConfig$KmsKeyId": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt the model artifacts at rest using Amazon S3 server-side encryption.

", + "MonitoringClusterConfig$VolumeKmsKeyId": "

The Key Management Service (KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the model monitoring job.

", + "MonitoringOutputConfig$KmsKeyId": "

The Key Management Service (KMS) key that Amazon SageMaker uses to encrypt the model artifacts at rest using Amazon S3 server-side encryption.

", "OnlineStoreSecurityConfig$KmsKeyId": "

The Amazon Web Services Key Management Service (KMS) key ARN that SageMaker Feature Store uses to encrypt the Amazon S3 objects at rest using Amazon S3 server-side encryption.

The caller (either user or IAM role) of CreateFeatureGroup must have below permissions to the OnlineStore KmsKeyId:

  • \"kms:Encrypt\"

  • \"kms:Decrypt\"

  • \"kms:DescribeKey\"

  • \"kms:CreateGrant\"

  • \"kms:RetireGrant\"

  • \"kms:ReEncryptFrom\"

  • \"kms:ReEncryptTo\"

  • \"kms:GenerateDataKey\"

  • \"kms:ListAliases\"

  • \"kms:ListGrants\"

  • \"kms:RevokeGrant\"

The caller (either user or IAM role) to all DataPlane operations (PutRecord, GetRecord, DeleteRecord) must have the following permissions to the KmsKeyId:

  • \"kms:Decrypt\"

", "OutputConfig$KmsKeyId": "

The Amazon Web Services Key Management Service key (Amazon Web Services KMS) that Amazon SageMaker uses to encrypt your output models with Amazon S3 server-side encryption after compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon S3 for your role's account. For more information, see KMS-Managed Encryption Keys in the Amazon Simple Storage Service Developer Guide.

The KmsKeyId can be any of the following formats:

  • Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

  • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Alias name: alias/ExampleAlias

  • Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias

", "OutputDataConfig$KmsKeyId": "

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that SageMaker uses to encrypt the model artifacts at rest using Amazon S3 server-side encryption. The KmsKeyId can be any of the following formats:

  • // KMS Key ID

    \"1234abcd-12ab-34cd-56ef-1234567890ab\"

  • // Amazon Resource Name (ARN) of a KMS Key

    \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

  • // KMS Key Alias

    \"alias/ExampleAlias\"

  • // Amazon Resource Name (ARN) of a KMS Key Alias

    \"arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias\"

If you use a KMS key ID or an alias of your KMS key, the SageMaker execution role must include permissions to call kms:Encrypt. If you don't provide a KMS key ID, SageMaker uses the default KMS key for Amazon S3 for your role's account. SageMaker uses server-side encryption with KMS-managed keys for OutputDataConfig. If you use a bucket policy with an s3:PutObject permission that only allows objects with server-side encryption, set the condition key of s3:x-amz-server-side-encryption to \"aws:kms\". For more information, see KMS-Managed Encryption Keys in the Amazon Simple Storage Service Developer Guide.

The KMS key policy must grant permission to the IAM role that you specify in your CreateTrainingJob, CreateTransformJob, or CreateHyperParameterTuningJob requests. For more information, see Using Key Policies in Amazon Web Services KMS in the Amazon Web Services Key Management Service Developer Guide.

", @@ -7371,6 +7952,13 @@ "PipelineExecutionStepMetadata$Lambda": "

The Amazon Resource Name (ARN) of the Lambda function that was run by this step execution and a list of output parameters.

" } }, + "LandingUri": { + "base": null, + "refs": { + "CreatePresignedDomainUrlRequest$LandingUri": "

The landing page that the user is directed to when accessing the presigned URL. Using this value, users can access Studio or Studio Classic, even if it is not the default experience for the domain. The supported values are:

  • studio::relative/path: Directs users to the relative path in Studio.

  • app:JupyterServer:relative/path: Directs users to the relative path in the Studio Classic application.

  • app:JupyterLab:relative/path: Directs users to the relative path in the JupyterLab application.

  • app:RStudioServerPro:relative/path: Directs users to the relative path in the RStudio application.

  • app:Canvas:relative/path: Directs users to the relative path in the Canvas application.

", + "UserSettings$DefaultLandingUri": "

The default experience that the user is directed to when accessing the domain. The supported values are:

  • studio::: Indicates that Studio is the default experience. This value can only be passed if StudioWebPortal is set to ENABLED.

  • app:JupyterServer:: Indicates that Studio Classic is the default experience.

" + } + }, "LastModifiedTime": { "base": null, "refs": { @@ -7420,6 +8008,8 @@ "LifecycleConfigArns": { "base": null, "refs": { + "CodeEditorAppSettings$LifecycleConfigArns": "

The Amazon Resource Name (ARN) of the Code Editor application lifecycle configuration.

", + "JupyterLabAppSettings$LifecycleConfigArns": "

The Amazon Resource Name (ARN) of the lifecycle configurations attached to the user profile or domain. To remove a lifecycle config, you must set LifecycleConfigArns to an empty list.

", "JupyterServerAppSettings$LifecycleConfigArns": "

The Amazon Resource Name (ARN) of the Lifecycle Configurations attached to the JupyterServerApp. If you use this parameter, the DefaultResourceSpec parameter is also required.

To remove a Lifecycle Config, you must set LifecycleConfigArns to an empty list.

", "KernelGatewayAppSettings$LifecycleConfigArns": "

The Amazon Resource Name (ARN) of the Lifecycle Configurations attached to the the user profile or domain.

To remove a Lifecycle Config, you must set LifecycleConfigArns to an empty list.

" } @@ -7566,6 +8156,26 @@ "refs": { } }, + "ListClusterNodesRequest": { + "base": null, + "refs": { + } + }, + "ListClusterNodesResponse": { + "base": null, + "refs": { + } + }, + "ListClustersRequest": { + "base": null, + "refs": { + } + }, + "ListClustersResponse": { + "base": null, + "refs": { + } + }, "ListCodeRepositoriesInput": { "base": null, "refs": { @@ -7800,6 +8410,16 @@ "refs": { } }, + "ListInferenceComponentsInput": { + "base": null, + "refs": { + } + }, + "ListInferenceComponentsOutput": { + "base": null, + "refs": { + } + }, "ListInferenceExperimentsRequest": { "base": null, "refs": { @@ -8296,6 +8916,24 @@ "UpdateImageVersionRequest$MLFramework": "

The machine learning framework vended in the image version.

" } }, + "ManagedInstanceScalingMaxInstanceCount": { + "base": null, + "refs": { + "ProductionVariantManagedInstanceScaling$MaxInstanceCount": "

The maximum number of instances that the endpoint can provision when it scales up to accommodate an increase in traffic.

" + } + }, + "ManagedInstanceScalingMinInstanceCount": { + "base": null, + "refs": { + "ProductionVariantManagedInstanceScaling$MinInstanceCount": "

The minimum number of instances that the endpoint must retain when it scales down to accommodate a decrease in traffic.

" + } + }, + "ManagedInstanceScalingStatus": { + "base": null, + "refs": { + "ProductionVariantManagedInstanceScaling$Status": "

Indicates whether managed instance scaling is enabled.

" + } + }, "MaxAutoMLJobRuntimeInSeconds": { "base": null, "refs": { @@ -8305,7 +8943,7 @@ "MaxCandidates": { "base": null, "refs": { - "AutoMLJobCompletionCriteria$MaxCandidates": "

The maximum number of times a training job is allowed to run.

For text and image classification, as well as time-series forecasting problem types, the supported value is 1. For tabular problem types, the maximum value is 750.

" + "AutoMLJobCompletionCriteria$MaxCandidates": "

The maximum number of times a training job is allowed to run.

For text and image classification, time-series forecasting, as well as text generation (LLMs fine-tuning) problem types, the supported value is 1. For tabular problem types, the maximum value is 750.

" } }, "MaxConcurrentInvocationsPerInstance": { @@ -8380,6 +9018,12 @@ "TransformJobDefinition$MaxPayloadInMB": "

The maximum payload size allowed, in MB. A payload is the data portion of a record (without metadata).

" } }, + "MaxPendingTimeInSeconds": { + "base": "Maximum job scheduler pending time in seconds.", + "refs": { + "StoppingCondition$MaxPendingTimeInSeconds": "

The maximum length of time, in seconds, that a training or compilation job can be pending before it is stopped.

" + } + }, "MaxPercentageOfInputDatasetLabeled": { "base": null, "refs": { @@ -8396,6 +9040,8 @@ "ListAppsRequest$MaxResults": "

The total number of items to return in the response. If the total number of items available is more than the value specified, a NextToken is provided in the response. To resume pagination, provide the NextToken value in the as part of a subsequent call. The default value is 10.

", "ListArtifactsRequest$MaxResults": "

The maximum number of artifacts to return in the response. The default value is 10.

", "ListAssociationsRequest$MaxResults": "

The maximum number of associations to return in the response. The default value is 10.

", + "ListClusterNodesRequest$MaxResults": "

The maximum number of nodes to return in the response.

", + "ListClustersRequest$MaxResults": "

Set the maximum number of SageMaker HyperPod clusters to list.

", "ListCodeRepositoriesInput$MaxResults": "

The maximum number of Git repositories to return in the response.

", "ListCompilationJobsRequest$MaxResults": "

The maximum number of model compilation jobs to return in the response.

", "ListContextsRequest$MaxResults": "

The maximum number of contexts to return in the response. The default value is 10.

", @@ -8412,6 +9058,7 @@ "ListHyperParameterTuningJobsRequest$MaxResults": "

The maximum number of tuning jobs to return. The default value is 10.

", "ListImageVersionsRequest$MaxResults": "

The maximum number of versions to return in the response. The default value is 10.

", "ListImagesRequest$MaxResults": "

The maximum number of images to return in the response. The default value is 10.

", + "ListInferenceComponentsInput$MaxResults": "

The maximum number of inference components to return in the response. This value defaults to 10.

", "ListInferenceExperimentsRequest$MaxResults": "

The maximum number of results to select.

", "ListInferenceRecommendationsJobStepsRequest$MaxResults": "

The maximum number of results to return.

", "ListInferenceRecommendationsJobsRequest$MaxResults": "

The maximum number of recommendations to return in the response.

", @@ -8464,7 +9111,7 @@ "MaxRuntimePerTrainingJobInSeconds": { "base": null, "refs": { - "AutoMLJobCompletionCriteria$MaxRuntimePerTrainingJobInSeconds": "

The maximum time, in seconds, that each training job executed inside hyperparameter tuning is allowed to run as part of a hyperparameter tuning job. For more information, see the StoppingCondition used by the CreateHyperParameterTuningJob action.

For job V2s (jobs created by calling CreateAutoMLJobV2), this field controls the runtime of the job candidate.

" + "AutoMLJobCompletionCriteria$MaxRuntimePerTrainingJobInSeconds": "

The maximum time, in seconds, that each training job executed inside hyperparameter tuning is allowed to run as part of a hyperparameter tuning job. For more information, see the StoppingCondition used by the CreateHyperParameterTuningJob action.

For job V2s (jobs created by calling CreateAutoMLJobV2), this field controls the runtime of the job candidate.

For TextGenerationJobConfig problem types, the maximum time defaults to 72 hours (259200 seconds).

" } }, "MaxWaitTimeInSeconds": { @@ -8506,6 +9153,13 @@ "Workteam$MemberDefinitions": "

A list of MemberDefinition objects that contains objects that identify the workers that make up the work team.

Workforces can be created using Amazon Cognito or your own OIDC Identity Provider (IdP). For private workforces created using Amazon Cognito use CognitoMemberDefinition. For workforces created using your own OIDC identity provider (IdP) use OidcMemberDefinition.

" } }, + "MemoryInMb": { + "base": null, + "refs": { + "InferenceComponentComputeResourceRequirements$MinMemoryRequiredInMb": "

The minimum MB of memory to allocate to run a model that you assign to an inference component.

", + "InferenceComponentComputeResourceRequirements$MaxMemoryRequiredInMb": "

The maximum MB of memory to allocate to run a model that you assign to an inference component.

" + } + }, "MetadataProperties": { "base": "

Metadata properties of the tracking entity, trial, or trial component.

", "refs": { @@ -8632,6 +9286,12 @@ "ModelDashboardModel$Model": "

A model displayed in the Model Dashboard.

" } }, + "ModelAccessConfig": { + "base": "

The access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the ModelAccessConfig. For more information, see End-user license agreements.

", + "refs": { + "S3ModelDataSource$ModelAccessConfig": "

Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the ModelAccessConfig. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.

" + } + }, "ModelApprovalStatus": { "base": null, "refs": { @@ -9060,6 +9720,8 @@ "DescribeModelInput$ModelName": "

The name of the model.

", "DescribeModelOutput$ModelName": "

Name of the SageMaker model.

", "DescribeTransformJobResponse$ModelName": "

The name of the model used in the transform job.

", + "InferenceComponentSpecification$ModelName": "

The name of an existing SageMaker model object in your account that you want to deploy with the inference component.

", + "InferenceComponentSpecificationSummary$ModelName": "

The name of the SageMaker model object that is deployed with the inference component.

", "InferenceRecommendationsJob$ModelName": "

The name of the created model.

", "ListInferenceRecommendationsJobsRequest$ModelNameEquals": "

A filter that returns only jobs that were created for this model.

", "Model$ModelName": "

The name of the model.

", @@ -9279,7 +9941,7 @@ } }, "ModelQualityJobInput": { - "base": "

The input for the model quality monitoring job. Currently endponts are supported for input for model quality monitoring jobs.

", + "base": "

The input for the model quality monitoring job. Currently endpoints are supported for input for model quality monitoring jobs.

", "refs": { "CreateModelQualityJobDefinitionRequest$ModelQualityJobInput": "

A list of the inputs that are monitored. Currently endpoints are supported.

", "DescribeModelQualityJobDefinitionResponse$ModelQualityJobInput": "

Inputs for the model quality job.

" @@ -9505,7 +10167,7 @@ "MonitoringExecutionSortKey": { "base": null, "refs": { - "ListMonitoringExecutionsRequest$SortBy": "

Whether to sort results by Status, CreationTime, ScheduledTime field. The default is CreationTime.

" + "ListMonitoringExecutionsRequest$SortBy": "

Whether to sort the results by the Status, CreationTime, or ScheduledTime field. The default is CreationTime.

" } }, "MonitoringExecutionSummary": { @@ -9655,7 +10317,7 @@ "DescribeModelBiasJobDefinitionResponse$ModelBiasJobOutputConfig": null, "DescribeModelExplainabilityJobDefinitionResponse$ModelExplainabilityJobOutputConfig": null, "DescribeModelQualityJobDefinitionResponse$ModelQualityJobOutputConfig": null, - "MonitoringJobDefinition$MonitoringOutputConfig": "

The array of outputs from the monitoring job to be uploaded to Amazon Simple Storage Service (Amazon S3).

" + "MonitoringJobDefinition$MonitoringOutputConfig": "

The array of outputs from the monitoring job to be uploaded to Amazon S3.

" } }, "MonitoringOutputs": { @@ -9763,7 +10425,7 @@ "MonitoringScheduleSortKey": { "base": null, "refs": { - "ListMonitoringSchedulesRequest$SortBy": "

Whether to sort results by Status, CreationTime, ScheduledTime field. The default is CreationTime.

" + "ListMonitoringSchedulesRequest$SortBy": "

Whether to sort the results by the Status, CreationTime, or ScheduledTime field. The default is CreationTime.

" } }, "MonitoringScheduleSummary": { @@ -9837,6 +10499,7 @@ "base": null, "refs": { "ListAlgorithmsInput$NameContains": "

A string in the algorithm name. This filter returns only algorithms whose name contains the specified string.

", + "ListClustersRequest$NameContains": "

Set the maximum number of instances to print in the list.

", "ListCompilationJobsRequest$NameContains": "

A filter that returns the model compilation jobs whose name contains a specified string.

", "ListDataQualityJobDefinitionsRequest$NameContains": "

A string in the data quality monitoring job definition name. This filter returns only data quality monitoring job definitions whose name contains the specified string.

", "ListDeviceFleetsRequest$NameContains": "

Filter for fleets containing this name in their fleet device name.

", @@ -9945,6 +10608,10 @@ "ListAutoMLJobsResponse$NextToken": "

If the previous response was truncated, you receive this token. Use it in your next request to receive the next set of results.

", "ListCandidatesForAutoMLJobRequest$NextToken": "

If the previous response was truncated, you receive this token. Use it in your next request to receive the next set of results.

", "ListCandidatesForAutoMLJobResponse$NextToken": "

If the previous response was truncated, you receive this token. Use it in your next request to receive the next set of results.

", + "ListClusterNodesRequest$NextToken": "

If the result of the previous ListClusterNodes request was truncated, the response includes a NextToken. To retrieve the next set of cluster nodes, use the token in the next request.

", + "ListClusterNodesResponse$NextToken": "

The next token specified for listing instances in a SageMaker HyperPod cluster.

", + "ListClustersRequest$NextToken": "

Set the next token to retrieve the list of SageMaker HyperPod clusters.

", + "ListClustersResponse$NextToken": "

If the result of the previous ListClusters request was truncated, the response includes a NextToken. To retrieve the next set of clusters, use the token in the next request.

", "ListCodeRepositoriesInput$NextToken": "

If the result of a ListCodeRepositoriesOutput request was truncated, the response includes a NextToken. To get the next set of Git repositories, use the token in the next request.

", "ListCodeRepositoriesOutput$NextToken": "

If the result of a ListCodeRepositoriesOutput request was truncated, the response includes a NextToken. To get the next set of Git repositories, use the token in the next request.

", "ListCompilationJobsRequest$NextToken": "

If the result of the previous ListCompilationJobs request was truncated, the response includes a NextToken. To retrieve the next set of model compilation jobs, use the token in the next request.

", @@ -9996,7 +10663,7 @@ "ListLineageGroupsRequest$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of algorithms, use it in the subsequent request.

", "ListLineageGroupsResponse$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of algorithms, use it in the subsequent request.

", "ListModelBiasJobDefinitionsRequest$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", - "ListModelBiasJobDefinitionsResponse$NextToken": "

If the response is truncated, Amazon SageMaker returns this token. To retrieve the next set of jobs, use it in the subsequent request.

", + "ListModelBiasJobDefinitionsResponse$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", "ListModelCardExportJobsRequest$NextToken": "

If the response to a previous ListModelCardExportJobs request was truncated, the response includes a NextToken. To retrieve the next set of model card export jobs, use the token in the next request.

", "ListModelCardExportJobsResponse$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of model card export jobs, use it in the subsequent request.

", "ListModelCardVersionsRequest$NextToken": "

If the response to a previous ListModelCardVersions request was truncated, the response includes a NextToken. To retrieve the next set of model card versions, use the token in the next request.

", @@ -10004,7 +10671,7 @@ "ListModelCardsRequest$NextToken": "

If the response to a previous ListModelCards request was truncated, the response includes a NextToken. To retrieve the next set of model cards, use the token in the next request.

", "ListModelCardsResponse$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of model cards, use it in the subsequent request.

", "ListModelExplainabilityJobDefinitionsRequest$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", - "ListModelExplainabilityJobDefinitionsResponse$NextToken": "

If the response is truncated, Amazon SageMaker returns this token. To retrieve the next set of jobs, use it in the subsequent request.

", + "ListModelExplainabilityJobDefinitionsResponse$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", "ListModelMetadataRequest$NextToken": "

If the response to a previous ListModelMetadataResponse request was truncated, the response includes a NextToken. To retrieve the next set of model metadata, use the token in the next request.

", "ListModelMetadataResponse$NextToken": "

A token for getting the next set of recommendations, if there are any.

", "ListModelPackageGroupsInput$NextToken": "

If the result of the previous ListModelPackageGroups request was truncated, the response includes a NextToken. To retrieve the next set of model groups, use the token in the next request.

", @@ -10018,9 +10685,9 @@ "ListMonitoringAlertsRequest$NextToken": "

If the result of the previous ListMonitoringAlerts request was truncated, the response includes a NextToken. To retrieve the next set of alerts in the history, use the token in the next request.

", "ListMonitoringAlertsResponse$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of alerts, use it in the subsequent request.

", "ListMonitoringExecutionsRequest$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", - "ListMonitoringExecutionsResponse$NextToken": "

If the response is truncated, Amazon SageMaker returns this token. To retrieve the next set of jobs, use it in the subsequent reques

", + "ListMonitoringExecutionsResponse$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", "ListMonitoringSchedulesRequest$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", - "ListMonitoringSchedulesResponse$NextToken": "

If the response is truncated, Amazon SageMaker returns this token. To retrieve the next set of jobs, use it in the subsequent request.

", + "ListMonitoringSchedulesResponse$NextToken": "

The token returned if the response is truncated. To retrieve the next set of job executions, use it in the next request.

", "ListNotebookInstanceLifecycleConfigsInput$NextToken": "

If the result of a ListNotebookInstanceLifecycleConfigs request was truncated, the response includes a NextToken. To get the next set of lifecycle configurations, use the token in the next request.

", "ListNotebookInstanceLifecycleConfigsOutput$NextToken": "

If the response is truncated, SageMaker returns this token. To get the next set of lifecycle configurations, use it in the next request.

", "ListNotebookInstancesInput$NextToken": "

If the previous call to the ListNotebookInstances is truncated, the response includes a NextToken. You can use this token in your subsequent ListNotebookInstances request to fetch the next set of notebook instances.

You might specify a filter or a sort order in your request. When response is truncated, you must use the same values for the filer and sort order in the next request.

", @@ -10069,6 +10736,23 @@ "SearchResponse$NextToken": "

If the result of the previous Search request was truncated, the response includes a NextToken. To retrieve the next set of results, use the token in the next request.

" } }, + "NonEmptyString256": { + "base": null, + "refs": { + "CustomImageContainerEntrypoint$member": null, + "CustomImageContainerEnvironmentVariables$key": null + } + }, + "NonEmptyString64": { + "base": null, + "refs": { + "CreateSpaceRequest$SpaceDisplayName": "

The name of the space that appears in the SageMaker Studio UI.

", + "CustomImageContainerArguments$member": null, + "DescribeSpaceResponse$SpaceDisplayName": "

The name of the space that appears in the Amazon SageMaker Studio UI.

", + "SpaceDetails$SpaceDisplayName": "

The name of the space that appears in the Studio UI.

", + "UpdateSpaceRequest$SpaceDisplayName": "

The name of the space that appears in the Amazon SageMaker Studio UI.

" + } + }, "NotebookInstanceAcceleratorType": { "base": null, "refs": { @@ -10256,6 +10940,18 @@ "NotificationConfiguration$NotificationTopicArn": "

The ARN for the Amazon SNS topic to which notifications should be published.

" } }, + "NumberOfAcceleratorDevices": { + "base": null, + "refs": { + "InferenceComponentComputeResourceRequirements$NumberOfAcceleratorDevicesRequired": "

The number of accelerators to allocate to run a model that you assign to an inference component. Accelerators include GPUs and Amazon Web Services Inferentia.

" + } + }, + "NumberOfCpuCores": { + "base": null, + "refs": { + "InferenceComponentComputeResourceRequirements$NumberOfCpuCoresRequired": "

The number of CPU cores to allocate to run a model that you assign to an inference component.

" + } + }, "NumberOfHumanWorkersPerDataObject": { "base": null, "refs": { @@ -10412,6 +11108,7 @@ "refs": { "ListEndpointConfigsInput$SortOrder": "

The sort order for results. The default is Descending.

", "ListEndpointsInput$SortOrder": "

The sort order for results. The default is Descending.

", + "ListInferenceComponentsInput$SortOrder": "

The sort order for results. The default is Descending.

", "ListModelsInput$SortOrder": "

The sort order for results. The default is Descending.

" } }, @@ -10452,6 +11149,19 @@ "SendPipelineExecutionStepSuccessRequest$OutputParameters": "

A list of the output parameters of the callback step.

" } }, + "OwnershipSettings": { + "base": "

The collection of ownership settings for a space.

", + "refs": { + "CreateSpaceRequest$OwnershipSettings": "

A collection of ownership settings.

", + "DescribeSpaceResponse$OwnershipSettings": "

The collection of ownership settings for a space.

" + } + }, + "OwnershipSettingsSummary": { + "base": "

Specifies summary information about the ownership settings.

", + "refs": { + "SpaceDetails$OwnershipSettingsSummary": "

Specifies summary information about the ownership settings.

" + } + }, "PaginationToken": { "base": null, "refs": { @@ -10459,6 +11169,8 @@ "ListEndpointConfigsOutput$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of endpoint configurations, use it in the subsequent request

", "ListEndpointsInput$NextToken": "

If the result of a ListEndpoints request was truncated, the response includes a NextToken. To retrieve the next set of endpoints, use the token in the next request.

", "ListEndpointsOutput$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of training jobs, use it in the subsequent request.

", + "ListInferenceComponentsInput$NextToken": "

A token that you use to get the next set of results following a truncated response. If the response to the previous request was truncated, that response provides the value for this token.

", + "ListInferenceComponentsOutput$NextToken": "

The token to use in a subsequent request to get the next set of results following a truncated response.

", "ListModelsInput$NextToken": "

If the response to a previous ListModels request was truncated, the response includes a NextToken. To retrieve the next set of models, use the token in the next request.

", "ListModelsOutput$NextToken": "

If the response is truncated, SageMaker returns this token. To retrieve the next set of models, use it in the subsequent request.

" } @@ -10673,7 +11385,7 @@ "PipelineExecutionSummary$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", "RetryPipelineExecutionRequest$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", "RetryPipelineExecutionResponse$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", - "SelectiveExecutionConfig$SourcePipelineExecutionArn": "

The ARN from a reference execution of the current pipeline. Used to copy input collaterals needed for the selected steps to run. The execution status of the pipeline can be either Failed or Success.

", + "SelectiveExecutionConfig$SourcePipelineExecutionArn": "

The ARN from a reference execution of the current pipeline. Used to copy input collaterals needed for the selected steps to run. The execution status of the pipeline can be either Failed or Success.

This field is required if the steps you specify for SelectedSteps depend on output collaterals from any non-specified pipeline steps. For more information, see Selective Execution for Pipeline Steps.

", "SelectiveExecutionResult$SourcePipelineExecutionArn": "

The ARN from an execution of the current pipeline.

", "SendPipelineExecutionStepFailureResponse$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", "SendPipelineExecutionStepSuccessResponse$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", @@ -11030,7 +11742,7 @@ "base": null, "refs": { "BatchTransformInput$S3DataDistributionType": "

Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defaults to FullyReplicated

", - "EndpointInput$S3DataDistributionType": "

Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defaults to FullyReplicated

", + "EndpointInput$S3DataDistributionType": "

Whether input data distributed in Amazon S3 is fully replicated or sharded by an Amazon S3 key. Defaults to FullyReplicated

", "ProcessingS3Input$S3DataDistributionType": "

Whether to distribute the data from Amazon S3 to all processing instances with FullyReplicated, or whether the data from Amazon S3 is shared by Amazon S3 key, downloading one shard of data to each processing instance.

" } }, @@ -11119,6 +11831,7 @@ "ProductionVariantContainerStartupHealthCheckTimeoutInSeconds": { "base": null, "refs": { + "InferenceComponentStartupParameters$ContainerStartupHealthCheckTimeoutInSeconds": "

The timeout value, in seconds, for your inference container to pass health check by Amazon S3 Hosting. For more information about health check, see How Your Container Should Respond to Health Check (Ping) Requests.

", "ProductionVariant$ContainerStartupHealthCheckTimeoutInSeconds": "

The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see How Your Container Should Respond to Health Check (Ping) Requests.

" } }, @@ -11148,12 +11861,29 @@ "DescribeEndpointConfigOutput$ShadowProductionVariants": "

An array of ProductionVariant objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.

" } }, + "ProductionVariantManagedInstanceScaling": { + "base": "

Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.

", + "refs": { + "PendingProductionVariantSummary$ManagedInstanceScaling": "

Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.

", + "ProductionVariant$ManagedInstanceScaling": "

Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.

", + "ProductionVariantSummary$ManagedInstanceScaling": "

Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.

" + } + }, "ProductionVariantModelDataDownloadTimeoutInSeconds": { "base": null, "refs": { + "InferenceComponentStartupParameters$ModelDataDownloadTimeoutInSeconds": "

The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this inference component.

", "ProductionVariant$ModelDataDownloadTimeoutInSeconds": "

The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this production variant.

" } }, + "ProductionVariantRoutingConfig": { + "base": "

Settings that control how the endpoint routes incoming traffic to the instances that the endpoint hosts.

", + "refs": { + "PendingProductionVariantSummary$RoutingConfig": "

Settings that control how the endpoint routes incoming traffic to the instances that the endpoint hosts.

", + "ProductionVariant$RoutingConfig": "

Settings that control how the endpoint routes incoming traffic to the instances that the endpoint hosts.

", + "ProductionVariantSummary$RoutingConfig": "

Settings that control how the endpoint routes incoming traffic to the instances that the endpoint hosts.

" + } + }, "ProductionVariantSSMAccess": { "base": null, "refs": { @@ -11987,13 +12717,18 @@ "ResourceSpec": { "base": "

Specifies the ARN's of a SageMaker image and SageMaker image version, and the instance type that the version runs on.

", "refs": { + "AppDetails$ResourceSpec": null, + "CodeEditorAppSettings$DefaultResourceSpec": null, "CreateAppRequest$ResourceSpec": "

The instance type and the Amazon Resource Name (ARN) of the SageMaker image created on the instance.

The value of InstanceType passed as part of the ResourceSpec in the CreateApp call overrides the value passed as part of the ResourceSpec configured for the user profile or the domain. If InstanceType is not specified in any of those three ResourceSpec values for a KernelGateway app, the CreateApp call fails with a request validation error.

", "DescribeAppResponse$ResourceSpec": "

The instance type and the Amazon Resource Name (ARN) of the SageMaker image created on the instance.

", + "JupyterLabAppSettings$DefaultResourceSpec": null, "JupyterServerAppSettings$DefaultResourceSpec": "

The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterServer app. If you use the LifecycleConfigArns parameter, then this parameter is also required.

", "KernelGatewayAppSettings$DefaultResourceSpec": "

The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app.

The Amazon SageMaker Studio UI does not use the default instance type value set here. The default instance type set here is used when Apps are created using the Amazon Web Services Command Line Interface or Amazon Web Services CloudFormation and the instance type parameter value is not passed.

", "RSessionAppSettings$DefaultResourceSpec": null, "RStudioServerProDomainSettings$DefaultResourceSpec": null, "RStudioServerProDomainSettingsForUpdate$DefaultResourceSpec": null, + "SpaceCodeEditorAppSettings$DefaultResourceSpec": null, + "SpaceJupyterLabAppSettings$DefaultResourceSpec": null, "TensorBoardAppSettings$DefaultResourceSpec": "

The default instance type and the Amazon Resource Name (ARN) of the SageMaker image created on the instance.

" } }, @@ -12052,12 +12787,15 @@ "base": null, "refs": { "AlgorithmValidationSpecification$ValidationRole": "

The IAM roles that SageMaker uses to run the training jobs.

", + "ClusterInstanceGroupDetails$ExecutionRole": "

The execution role for the instance group to assume.

", + "ClusterInstanceGroupSpecification$ExecutionRole": "

Specifies an IAM execution role to be assumed by the instance group.

", "CreateAutoMLJobRequest$RoleArn": "

The ARN of the role that is used to access the data.

", "CreateAutoMLJobV2Request$RoleArn": "

The ARN of the role that is used to access the data.

", "CreateCompilationJobRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to perform tasks on your behalf.

During model compilation, Amazon SageMaker needs your permission to:

  • Read input data from an S3 bucket

  • Write model artifacts to an S3 bucket

  • Write logs to Amazon CloudWatch Logs

  • Publish metrics to Amazon CloudWatch

You grant permissions for all of these tasks to an IAM role. To pass this role to Amazon SageMaker, the caller of this API must have the iam:PassRole permission. For more information, see Amazon SageMaker Roles.

", "CreateDataQualityJobDefinitionRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.

", "CreateDeviceFleetRequest$RoleArn": "

The Amazon Resource Name (ARN) that has access to Amazon Web Services Internet of Things (IoT).

", "CreateEdgePackagingJobRequest$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to download and upload the model, and to contact SageMaker Neo.

", + "CreateEndpointConfigInput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform actions on your behalf. For more information, see SageMaker Roles.

To be able to pass this role to Amazon SageMaker, the caller of this action must have the iam:PassRole permission.

", "CreateFeatureGroupRequest$RoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

", "CreateFlowDefinitionRequest$RoleArn": "

The Amazon Resource Name (ARN) of the role needed to call other services on your behalf. For example, arn:aws:iam::1234567890:role/service-role/AmazonSageMaker-ExecutionRole-20180111T151298.

", "CreateImageRequest$RoleArn": "

The ARN of an IAM role that enables Amazon SageMaker to perform tasks on your behalf.

", @@ -12079,14 +12817,15 @@ "DescribeDataQualityJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.

", "DescribeDeviceFleetResponse$RoleArn": "

The Amazon Resource Name (ARN) that has access to Amazon Web Services Internet of Things (IoT).

", "DescribeEdgePackagingJobResponse$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker to download and upload the model, and to contact Neo.

", + "DescribeEndpointConfigOutput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that you assigned to the endpoint configuration.

", "DescribeFeatureGroupResponse$RoleArn": "

The Amazon Resource Name (ARN) of the IAM execution role used to persist data into the OfflineStore if an OfflineStoreConfig is provided.

", "DescribeFlowDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) execution role for the flow definition.

", "DescribeImageResponse$RoleArn": "

The ARN of the IAM role that enables Amazon SageMaker to perform tasks on your behalf.

", "DescribeInferenceExperimentResponse$RoleArn": "

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images, and manage Amazon SageMaker Inference endpoints for model deployment.

", "DescribeInferenceRecommendationsJobResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role you provided when you initiated the job.

", "DescribeLabelingJobResponse$RoleArn": "

The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during data labeling.

", - "DescribeModelBiasJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that has read permission to the input data location and write permission to the output data location in Amazon S3.

", - "DescribeModelExplainabilityJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that has read permission to the input data location and write permission to the output data location in Amazon S3.

", + "DescribeModelBiasJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that has read permission to the input data location and write permission to the output data location in Amazon S3.

", + "DescribeModelExplainabilityJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that has read permission to the input data location and write permission to the output data location in Amazon S3.

", "DescribeModelOutput$ExecutionRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that you specified for the model.

", "DescribeModelQualityJobDefinitionResponse$RoleArn": "

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.

", "DescribeNotebookInstanceOutput$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role associated with the instance.

", @@ -12131,6 +12870,12 @@ "UpdateNotebookInstanceInput$RootAccess": "

Whether root access is enabled or disabled for users of the notebook instance. The default value is Enabled.

If you set this to Disabled, users don't have root access on the notebook instance, but lifecycle configuration scripts still run with root permissions.

" } }, + "RoutingStrategy": { + "base": null, + "refs": { + "ProductionVariantRoutingConfig$RoutingStrategy": "

Sets how the endpoint routes incoming traffic:

  • LEAST_OUTSTANDING_REQUESTS: The endpoint routes requests to the specific instances that have more capacity to process them.

  • RANDOM: The endpoint routes each request to a randomly chosen instance.

" + } + }, "RuleConfigurationName": { "base": null, "refs": { @@ -12206,15 +12951,17 @@ "S3Uri": { "base": null, "refs": { + "AdditionalS3DataSource$S3Uri": "

The uniform resource identifier (URI) used to identify an additional data source used in inference or training.

", "AthenaDatasetDefinition$OutputS3Uri": "

The location in Amazon S3 where Athena query results are stored.

", "AutoMLCandidateGenerationConfig$FeatureSpecificationS3Uri": "

A URL to the Amazon S3 data source containing selected features from the input data source to run an Autopilot job. You can input FeatureAttributeNames (optional) in JSON format as shown below:

{ \"FeatureAttributeNames\":[\"col1\", \"col2\", ...] }.

You can also specify the data type of the feature (optional) in the format shown below:

{ \"FeatureDataTypes\":{\"col1\":\"numeric\", \"col2\":\"categorical\" ... } }

These column keys may not include the target column.

In ensembling mode, Autopilot only supports the following data types: numeric, categorical, text, and datetime. In HPO mode, Autopilot can support numeric, categorical, text, datetime, and sequence.

If only FeatureDataTypes is provided, the column keys (col1, col2,..) should be a subset of the column names in the input data.

If both FeatureDataTypes and FeatureAttributeNames are provided, then the column keys should be a subset of the column names provided in FeatureAttributeNames.

The key name FeatureAttributeNames is fixed. The values listed in [\"col1\", \"col2\", ...] are case sensitive and should be a list of strings containing unique values that are a subset of the column names in the input data. The list of columns provided must not include the target column.

", "AutoMLOutputDataConfig$S3OutputPath": "

The Amazon S3 output path. Must be 128 characters or less.

", "AutoMLS3DataSource$S3Uri": "

The URL to the Amazon S3 data source. The Uri refers to the Amazon S3 prefix or ManifestFile depending on the data type.

", "BatchDataCaptureConfig$DestinationS3Uri": "

The Amazon S3 location being used to capture the data.

", "CheckpointConfig$S3Uri": "

Identifies the S3 path where you want SageMaker to store checkpoints. For example, s3://bucket-name/key-name-prefix.

", + "ClusterLifeCycleConfig$SourceS3Uri": "

An Amazon S3 bucket path where your LifeCycle scripts are stored.

", "CreateLabelingJobRequest$LabelCategoryConfigS3Uri": "

The S3 URI of the file, referred to as a label category configuration file, that defines the categories used to label the data objects.

For 3D point cloud and video frame task types, you can add label category attributes and frame attributes to your label category configuration file. To learn how, see Create a Labeling Category Configuration File for 3D Point Cloud Labeling Jobs.

For named entity recognition jobs, in addition to \"labels\", you must provide worker instructions in the label category configuration file using the \"instructions\" parameter: \"instructions\": {\"shortInstruction\":\"<h1>Add header</h1><p>Add Instructions</p>\", \"fullInstruction\":\"<p>Add additional instructions.</p>\"}. For details and an example, see Create a Named Entity Recognition Labeling Job (API) .

For all other built-in task types and custom tasks, your label category configuration file must be a JSON file in the following format. Identify the labels you want to use by replacing label_1, label_2,...,label_n with your label categories.

{

\"document-version\": \"2018-11-28\",

\"labels\": [{\"label\": \"label_1\"},{\"label\": \"label_2\"},...{\"label\": \"label_n\"}]

}

Note the following about the label category configuration file:

  • For image classification and text classification (single and multi-label) you must specify at least two label categories. For all other task types, the minimum number of label categories required is one.

  • Each label category must be unique, you cannot specify duplicate label categories.

  • If you create a 3D point cloud or video frame adjustment or verification labeling job, you must include auditLabelAttributeName in the label category configuration. Use this parameter to enter the LabelAttributeName of the labeling job you want to adjust or verify annotations of.

", "CreateModelPackageInput$SamplePayloadUrl": "

The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that are all equally used in the load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint call.

", - "DataQualityAppSpecification$RecordPreprocessorSourceUri": "

An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flatted json so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.

", + "DataQualityAppSpecification$RecordPreprocessorSourceUri": "

An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flattened JSON so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.

", "DataQualityAppSpecification$PostAnalyticsProcessorSourceUri": "

An Amazon S3 URI to a script that is called after analysis has been performed. Applicable only for the built-in (first party) containers.

", "DebugHookConfig$S3OutputPath": "

Path to Amazon S3 storage location for metrics and tensors.

", "DebugRuleConfiguration$S3OutputPath": "

Path to Amazon S3 storage location for rules.

", @@ -12233,10 +12980,10 @@ "ModelBiasAppSpecification$ConfigUri": "

JSON formatted S3 file that defines bias parameters. For more information on this JSON configuration file, see Configure bias parameters.

", "ModelCardExportArtifacts$S3ExportArtifacts": "

The Amazon S3 URI of the exported model artifacts.

", "ModelCardExportOutputConfig$S3OutputPath": "

The Amazon S3 output path to export your model card PDF.

", - "ModelExplainabilityAppSpecification$ConfigUri": "

JSON formatted S3 file that defines explainability parameters. For more information on this JSON configuration file, see Configure model explainability parameters.

", - "ModelQualityAppSpecification$RecordPreprocessorSourceUri": "

An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flatted json so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.

", + "ModelExplainabilityAppSpecification$ConfigUri": "

JSON formatted Amazon S3 file that defines explainability parameters. For more information on this JSON configuration file, see Configure model explainability parameters.

", + "ModelQualityAppSpecification$RecordPreprocessorSourceUri": "

An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flattened JSON so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.

", "ModelQualityAppSpecification$PostAnalyticsProcessorSourceUri": "

An Amazon S3 URI to a script that is called after analysis has been performed. Applicable only for the built-in (first party) containers.

", - "MonitoringAppSpecification$RecordPreprocessorSourceUri": "

An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flatted json so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.

", + "MonitoringAppSpecification$RecordPreprocessorSourceUri": "

An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flattened JSON so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.

", "MonitoringAppSpecification$PostAnalyticsProcessorSourceUri": "

An Amazon S3 URI to a script that is called after analysis has been performed. Applicable only for the built-in (first party) containers.

", "MonitoringConstraintsResource$S3Uri": "

The Amazon S3 URI for the constraints resource.

", "MonitoringStatisticsResource$S3Uri": "

The Amazon S3 URI for the statistics resource.

", @@ -12335,7 +13082,7 @@ "ScheduleExpression": { "base": null, "refs": { - "ScheduleConfig$ScheduleExpression": "

A cron expression that describes details about the monitoring schedule.

The supported cron expressions are:

  • If you want to set the job to start every hour, use the following:

    Hourly: cron(0 * ? * * *)

  • If you want to start the job daily:

    cron(0 [00-23] ? * * *)

For example, the following are valid cron expressions:

  • Daily at noon UTC: cron(0 12 ? * * *)

  • Daily at midnight UTC: cron(0 0 ? * * *)

To support running every 6, 12 hours, the following are also supported:

cron(0 [00-23]/[01-24] ? * * *)

For example, the following are valid cron expressions:

  • Every 12 hours, starting at 5pm UTC: cron(0 17/12 ? * * *)

  • Every two hours starting at midnight: cron(0 0/2 ? * * *)

  • Even though the cron expression is set to start at 5PM UTC, note that there could be a delay of 0-20 minutes from the actual requested time to run the execution.

  • We recommend that if you would like a daily schedule, you do not provide this parameter. Amazon SageMaker will pick a time for running every day.

You can also specify the keyword NOW to run the monitoring job immediately, one time, without recurring.

" + "ScheduleConfig$ScheduleExpression": "

A cron expression that describes details about the monitoring schedule.

The supported cron expressions are:

  • If you want to set the job to start every hour, use the following:

    Hourly: cron(0 * ? * * *)

  • If you want to start the job daily:

    cron(0 [00-23] ? * * *)

  • If you want to run the job one time, immediately, use the following keyword:

    NOW

For example, the following are valid cron expressions:

  • Daily at noon UTC: cron(0 12 ? * * *)

  • Daily at midnight UTC: cron(0 0 ? * * *)

To support running every 6, 12 hours, the following are also supported:

cron(0 [00-23]/[01-24] ? * * *)

For example, the following are valid cron expressions:

  • Every 12 hours, starting at 5pm UTC: cron(0 17/12 ? * * *)

  • Every two hours starting at midnight: cron(0 0/2 ? * * *)

  • Even though the cron expression is set to start at 5PM UTC, note that there could be a delay of 0-20 minutes from the actual requested time to run the execution.

  • We recommend that if you would like a daily schedule, you do not provide this parameter. Amazon SageMaker will pick a time for running every day.

You can also specify the keyword NOW to run the monitoring job immediately, one time, without recurring.

" } }, "ScheduleStatus": { @@ -12433,7 +13180,7 @@ "CreateNotebookInstanceInput$SecurityGroupIds": "

The VPC security group IDs, in the form sg-xxxxxxxx. The security groups must be for the same VPC as specified in the subnet.

", "DefaultSpaceSettings$SecurityGroups": "

The security group IDs for the Amazon Virtual Private Cloud that the space uses for communication.

", "DescribeNotebookInstanceOutput$SecurityGroups": "

The IDs of the VPC security groups.

", - "UserSettings$SecurityGroups": "

The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.

Optional when the CreateDomain.AppNetworkAccessType parameter is set to PublicInternetOnly.

Required when the CreateDomain.AppNetworkAccessType parameter is set to VpcOnly, unless specified as part of the DefaultUserSettings for the domain.

Amazon SageMaker adds a security group to allow NFS traffic from SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown.

" + "UserSettings$SecurityGroups": "

The security groups for the Amazon Virtual Private Cloud (VPC) that the domain uses for communication.

Optional when the CreateDomain.AppNetworkAccessType parameter is set to PublicInternetOnly.

Required when the CreateDomain.AppNetworkAccessType parameter is set to VpcOnly, unless specified as part of the DefaultUserSettings for the domain.

Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker Studio. Therefore, the number of security groups that you can specify is one less than the maximum number shown.

" } }, "Seed": { @@ -12567,9 +13314,16 @@ } }, "SharingSettings": { - "base": "

Specifies options for sharing SageMaker Studio notebooks. These settings are specified as part of DefaultUserSettings when the CreateDomain API is called, and as part of UserSettings when the CreateUserProfile API is called. When SharingSettings is not specified, notebook sharing isn't allowed.

", + "base": "

Specifies options for sharing Amazon SageMaker Studio notebooks. These settings are specified as part of DefaultUserSettings when the CreateDomain API is called, and as part of UserSettings when the CreateUserProfile API is called. When SharingSettings is not specified, notebook sharing isn't allowed.

", + "refs": { + "UserSettings$SharingSettings": "

Specifies options for sharing Amazon SageMaker Studio notebooks.

" + } + }, + "SharingType": { + "base": null, "refs": { - "UserSettings$SharingSettings": "

Specifies options for sharing SageMaker Studio notebooks.

" + "SpaceSharingSettings$SharingType": "

Specifies the sharing type of the space.

", + "SpaceSharingSettingsSummary$SharingType": "

Specifies the sharing type of the space.

" } }, "ShuffleConfig": { @@ -12578,6 +13332,12 @@ "Channel$ShuffleConfig": "

A configuration for a shuffle option for input data in a channel. If you use S3Prefix for S3DataType, this shuffles the results of the S3 key prefix matches. If you use ManifestFile, the order of the S3 object references in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling order is determined using the Seed value.

For Pipe input mode, shuffling is done at the start of every epoch. With large datasets this ensures that the order of the training data is different for each epoch, it helps reduce bias and possible overfitting. In a multi-node training job when ShuffleConfig is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled across nodes so that the content sent to a particular node on the first epoch might be sent to a different node on the second epoch.

" } }, + "SingleSignOnApplicationArn": { + "base": null, + "refs": { + "DescribeDomainResponse$SingleSignOnApplicationArn": "

The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after September 19, 2023.

" + } + }, "SingleSignOnUserIdentifier": { "base": null, "refs": { @@ -12662,9 +13422,11 @@ "ListAppsRequest$SortOrder": "

The sort order for the results. The default is Ascending.

", "ListArtifactsRequest$SortOrder": "

The sort order. The default value is Descending.

", "ListAssociationsRequest$SortOrder": "

The sort order. The default value is Descending.

", + "ListClusterNodesRequest$SortOrder": "

The sort order for results. The default value is Ascending.

", + "ListClustersRequest$SortOrder": "

The sort order for results. The default value is Ascending.

", "ListCompilationJobsRequest$SortOrder": "

The sort order for results. The default is Ascending.

", "ListContextsRequest$SortOrder": "

The sort order. The default value is Descending.

", - "ListDataQualityJobDefinitionsRequest$SortOrder": "

The sort order for results. The default is Descending.

", + "ListDataQualityJobDefinitionsRequest$SortOrder": "

Whether to sort the results in Ascending or Descending order. The default is Descending.

", "ListDeviceFleetsRequest$SortOrder": "

What direction to sort in.

", "ListEdgeDeploymentPlansRequest$SortOrder": "

The direction of the sorting (ascending or descending).

", "ListEdgePackagingJobsRequest$SortOrder": "

What direction to sort by.

", @@ -12684,7 +13446,7 @@ "ListModelExplainabilityJobDefinitionsRequest$SortOrder": "

Whether to sort the results in Ascending or Descending order. The default is Descending.

", "ListModelPackageGroupsInput$SortOrder": "

The sort order for results. The default is Ascending.

", "ListModelPackagesInput$SortOrder": "

The sort order for the results. The default is Ascending.

", - "ListModelQualityJobDefinitionsRequest$SortOrder": "

The sort order for results. The default is Descending.

", + "ListModelQualityJobDefinitionsRequest$SortOrder": "

Whether to sort the results in Ascending or Descending order. The default is Descending.

", "ListMonitoringAlertHistoryRequest$SortOrder": "

The sort order, whether Ascending or Descending, of the alert history. The default is Descending.

", "ListMonitoringExecutionsRequest$SortOrder": "

Whether to sort the results in Ascending or Descending order. The default is Descending.

", "ListMonitoringSchedulesRequest$SortOrder": "

Whether to sort the results in Ascending or Descending order. The default is Descending.

", @@ -12780,12 +13542,32 @@ "UpdateSpaceResponse$SpaceArn": "

The space's Amazon Resource Name (ARN).

" } }, + "SpaceCodeEditorAppSettings": { + "base": "

The application settings for a Code Editor space.

", + "refs": { + "SpaceSettings$CodeEditorAppSettings": "

The Code Editor application settings.

" + } + }, "SpaceDetails": { "base": "

The space's details.

", "refs": { "SpaceList$member": null } }, + "SpaceEbsVolumeSizeInGb": { + "base": null, + "refs": { + "DefaultEbsStorageSettings$DefaultEbsVolumeSizeInGb": "

The default size of the EBS storage volume for a private space.

", + "DefaultEbsStorageSettings$MaximumEbsVolumeSizeInGb": "

The maximum size of the EBS storage volume for a private space.

", + "EbsStorageSettings$EbsVolumeSizeInGb": "

The size of an EBS storage volume for a private space.

" + } + }, + "SpaceJupyterLabAppSettings": { + "base": "

The settings for the JupyterLab application within a space.

", + "refs": { + "SpaceSettings$JupyterLabAppSettings": "

The settings for the JupyterLab application.

" + } + }, "SpaceList": { "base": null, "refs": { @@ -12819,6 +13601,25 @@ "UpdateSpaceRequest$SpaceSettings": "

A collection of space settings.

" } }, + "SpaceSettingsSummary": { + "base": "

Specifies summary information about the space settings.

", + "refs": { + "SpaceDetails$SpaceSettingsSummary": "

Specifies summary information about the space settings.

" + } + }, + "SpaceSharingSettings": { + "base": "

A collection of space sharing settings.

", + "refs": { + "CreateSpaceRequest$SpaceSharingSettings": "

A collection of space sharing settings.

", + "DescribeSpaceResponse$SpaceSharingSettings": "

The collection of space sharing settings for a space.

" + } + }, + "SpaceSharingSettingsSummary": { + "base": "

Specifies summary information about the space sharing settings.

", + "refs": { + "SpaceDetails$SpaceSharingSettingsSummary": "

Specifies summary information about the space sharing settings.

" + } + }, "SpaceSortKey": { "base": null, "refs": { @@ -12832,6 +13633,13 @@ "SpaceDetails$Status": "

The status.

" } }, + "SpaceStorageSettings": { + "base": "

The storage settings for a private space.

", + "refs": { + "SpaceSettings$SpaceStorageSettings": "

The storage settings for a private space.

", + "SpaceSettingsSummary$SpaceStorageSettings": "

The storage settings for a private space.

" + } + }, "SpawnRate": { "base": null, "refs": { @@ -13026,6 +13834,12 @@ "TrainingJobDefinition$StoppingCondition": "

Specifies a limit to how long a model training job can run. It also specifies how long a managed Spot training job has to complete. When the job reaches the time limit, SageMaker ends the training job. Use this API to cap model training costs.

To stop a job, SageMaker sends the algorithm the SIGTERM signal, which delays job termination for 120 seconds. Algorithms can use this 120-second window to save the model artifacts.

" } }, + "StorageType": { + "base": null, + "refs": { + "OnlineStoreConfig$StorageType": "

Option for different tiers of low latency storage for real-time data retrieval.

  • Standard: A managed low latency data store for feature groups.

  • InMemory: A managed data store for feature groups that supports very low latency retrieval.

" + } + }, "String": { "base": null, "refs": { @@ -13035,10 +13849,14 @@ "BatchTransformInput$FeaturesAttribute": "

The attributes of the input data that are the input features.

", "BatchTransformInput$InferenceAttribute": "

The attribute of the input data that represents the ground truth label.

", "BatchTransformInput$ProbabilityAttribute": "

In a classification problem, the attribute that represents the class probability.

", + "ClusterInstanceStatusDetails$Message": "

The message from an instance in a SageMaker HyperPod cluster.

", + "ClusterNodeDetails$InstanceId": "

The ID of the instance.

", + "ClusterNodeSummary$InstanceId": "

The ID of the instance.

", "CreateModelPackageInput$Domain": "

The machine learning domain of your model package and its components. Common machine learning domains include computer vision and natural language processing.

", "CreateModelPackageInput$Task": "

The machine learning task your model package accomplishes. Common machine learning tasks include object detection and image classification. The following tasks are supported by Inference Recommender: \"IMAGE_CLASSIFICATION\" | \"OBJECT_DETECTION\" | \"TEXT_GENERATION\" |\"IMAGE_SEGMENTATION\" | \"FILL_MASK\" | \"CLASSIFICATION\" | \"REGRESSION\" | \"OTHER\".

Specify \"OTHER\" if none of the tasks listed fit your use case.

", "CustomizedMetricSpecification$MetricName": "

The name of the customized metric.

", "CustomizedMetricSpecification$Namespace": "

The namespace of the customized metric.

", + "DescribeClusterResponse$FailureMessage": "

The failure message of the SageMaker HyperPod cluster.

", "DescribeEdgePackagingJobResponse$EdgePackagingJobStatusMessage": "

Returns a message describing the job status and error messages.

", "DescribeEdgePackagingJobResponse$ModelSignature": "

The signature document of files in the model artifact.

", "DescribeModelPackageOutput$Domain": "

The machine learning domain of the model package you specified. Common machine learning domains include computer vision and natural language processing.

", @@ -13118,6 +13936,7 @@ "ClarifyCheckStepMetadata$ViolationReport": "

The Amazon S3 URI of the violation report if violations are detected.

", "CreateDomainResponse$Url": "

The URL to the created domain.

", "DescribeDomainResponse$Url": "

The domain's URL.

", + "DescribeSpaceResponse$Url": "

Returns the URL of the space. If the space is created with Amazon Web Services IAM Identity Center (Successor to Amazon Web Services Single Sign-On) authentication, users can navigate to the URL after appending the respective redirect parameter for the application type to be federated through Amazon Web Services IAM Identity Center.

The following application types are supported:

  • Studio Classic: &redirect=JupyterServer

  • JupyterLab: &redirect=JupyterLab

", "DomainDetails$Url": "

The domain's URL.

", "EMRStepMetadata$LogFilePath": "

The path to the log file where the cluster step's failure root cause is recorded.

", "OutputParameter$Value": "

The value of the output parameter.

", @@ -13173,6 +13992,7 @@ "CreateArtifactRequest$ArtifactType": "

The artifact type.

", "CreateContextRequest$ContextType": "

The context type.

", "CreateUserProfileRequest$SingleSignOnUserValue": "

The username of the associated Amazon Web Services Single Sign-On User for this UserProfile. If the Domain's AuthMode is IAM Identity Center, this field is required, and must match a valid username of a user in your directory. If the Domain's AuthMode is not IAM Identity Center, this field cannot be specified.

", + "CustomImageContainerEnvironmentVariables$value": null, "DescribeActionResponse$ActionType": "

The type of the action.

", "DescribeArtifactResponse$ArtifactType": "

The type of the artifact.

", "DescribeContextResponse$ContextType": "

The type of the context.

", @@ -13261,12 +14081,12 @@ "StudioLifecycleConfigContent": { "base": null, "refs": { - "CreateStudioLifecycleConfigRequest$StudioLifecycleConfigContent": "

The content of your Studio Lifecycle Configuration script. This content must be base64 encoded.

", - "DescribeStudioLifecycleConfigResponse$StudioLifecycleConfigContent": "

The content of your Studio Lifecycle Configuration script.

" + "CreateStudioLifecycleConfigRequest$StudioLifecycleConfigContent": "

The content of your Amazon SageMaker Studio Lifecycle Configuration script. This content must be base64 encoded.

", + "DescribeStudioLifecycleConfigResponse$StudioLifecycleConfigContent": "

The content of your Amazon SageMaker Studio Lifecycle Configuration script.

" } }, "StudioLifecycleConfigDetails": { - "base": "

Details of the Studio Lifecycle Configuration.

", + "base": "

Details of the Amazon SageMaker Studio Lifecycle Configuration.

", "refs": { "StudioLifecycleConfigsList$member": null } @@ -13274,12 +14094,12 @@ "StudioLifecycleConfigName": { "base": null, "refs": { - "CreateStudioLifecycleConfigRequest$StudioLifecycleConfigName": "

The name of the Studio Lifecycle Configuration to create.

", - "DeleteStudioLifecycleConfigRequest$StudioLifecycleConfigName": "

The name of the Studio Lifecycle Configuration to delete.

", - "DescribeStudioLifecycleConfigRequest$StudioLifecycleConfigName": "

The name of the Studio Lifecycle Configuration to describe.

", - "DescribeStudioLifecycleConfigResponse$StudioLifecycleConfigName": "

The name of the Studio Lifecycle Configuration that is described.

", + "CreateStudioLifecycleConfigRequest$StudioLifecycleConfigName": "

The name of the Amazon SageMaker Studio Lifecycle Configuration to create.

", + "DeleteStudioLifecycleConfigRequest$StudioLifecycleConfigName": "

The name of the Amazon SageMaker Studio Lifecycle Configuration to delete.

", + "DescribeStudioLifecycleConfigRequest$StudioLifecycleConfigName": "

The name of the Amazon SageMaker Studio Lifecycle Configuration to describe.

", + "DescribeStudioLifecycleConfigResponse$StudioLifecycleConfigName": "

The name of the Amazon SageMaker Studio Lifecycle Configuration that is described.

", "ListStudioLifecycleConfigsRequest$NameContains": "

A string in the Lifecycle Configuration name. This filter returns only Lifecycle Configurations whose name contains the specified string.

", - "StudioLifecycleConfigDetails$StudioLifecycleConfigName": "

The name of the Studio Lifecycle Configuration.

" + "StudioLifecycleConfigDetails$StudioLifecycleConfigName": "

The name of the Amazon SageMaker Studio Lifecycle Configuration.

" } }, "StudioLifecycleConfigSortKey": { @@ -13294,6 +14114,12 @@ "ListStudioLifecycleConfigsResponse$StudioLifecycleConfigs": "

A list of Lifecycle Configurations and their properties.

" } }, + "StudioWebPortal": { + "base": null, + "refs": { + "UserSettings$StudioWebPortal": "

Whether the user can access Studio. If this value is set to DISABLED, the user cannot access Studio, even if that is the default experience for the domain.

" + } + }, "SubnetId": { "base": null, "refs": { @@ -13305,8 +14131,9 @@ "Subnets": { "base": null, "refs": { - "CreateDomainRequest$SubnetIds": "

The VPC subnets that Studio uses for communication.

", - "DescribeDomainResponse$SubnetIds": "

The VPC subnets that Studio uses for communication.

", + "CreateDomainRequest$SubnetIds": "

The VPC subnets that the domain uses for communication.

", + "DescribeDomainResponse$SubnetIds": "

The VPC subnets that the domain uses for communication.

", + "UpdateDomainRequest$SubnetIds": "

The VPC subnets that Studio uses for communication.

If removing subnets, ensure there are no apps in the InService, Pending, or Deleting state.

", "VpcConfig$Subnets": "

The ID of the subnets in the VPC to which you want to connect your training job or model. For information about the availability of specific instance types, see Supported Instance Types and Availability Zones.

" } }, @@ -13348,15 +14175,15 @@ } }, "TabularJobConfig": { - "base": "

The collection of settings used by an AutoML job V2 for the TABULAR problem type.

", + "base": "

The collection of settings used by an AutoML job V2 for the tabular problem type.

", "refs": { - "AutoMLProblemTypeConfig$TabularJobConfig": "

Settings used to configure an AutoML job V2 for a tabular problem type (regression, classification).

" + "AutoMLProblemTypeConfig$TabularJobConfig": "

Settings used to configure an AutoML job V2 for the tabular problem type (regression, classification).

" } }, "TabularResolvedAttributes": { - "base": "

The resolved attributes specific to the TABULAR problem type.

", + "base": "

The resolved attributes specific to the tabular problem type.

", "refs": { - "AutoMLProblemTypeResolvedAttributes$TabularResolvedAttributes": "

Defines the resolved attributes for the TABULAR problem type.

" + "AutoMLProblemTypeResolvedAttributes$TabularResolvedAttributes": "

The resolved attributes for the tabular problem type.

" } }, "Tag": { @@ -13390,10 +14217,11 @@ "CreateArtifactRequest$Tags": "

A list of tags to apply to the artifact.

", "CreateAutoMLJobRequest$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web ServicesResources. Tag keys must be unique per resource.

", "CreateAutoMLJobV2Request$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, such as by purpose, owner, or environment. For more information, see Tagging Amazon Web ServicesResources. Tag keys must be unique per resource.

", + "CreateClusterRequest$Tags": "

Custom tags for managing the SageMaker HyperPod cluster as an Amazon Web Services resource. You can add tags to your cluster in the same way you add them in other Amazon Web Services services that support tagging. To learn more about tagging Amazon Web Services resources in general, see Tagging Amazon Web Services Resources User Guide.

", "CreateCodeRepositoryInput$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources.

", "CreateCompilationJobRequest$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources.

", "CreateContextRequest$Tags": "

A list of tags to apply to the context.

", - "CreateDataQualityJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", + "CreateDataQualityJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", "CreateDeviceFleetRequest$Tags": "

Creates tags for the specified fleet.

", "CreateDomainRequest$Tags": "

Tags to associated with the Domain. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search API.

Tags that you specify for the Domain are also added to all Apps that the Domain launches.

", "CreateEdgeDeploymentPlanRequest$Tags": "

List of tags with which to tag the edge deployment plan.

", @@ -13407,16 +14235,17 @@ "CreateHumanTaskUiRequest$Tags": "

An array of key-value pairs that contain metadata to help you categorize and organize a human review workflow user interface. Each tag consists of a key and a value, both of which you define.

", "CreateHyperParameterTuningJobRequest$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources.

Tags that you specify for the tuning job are also added to all training jobs that the tuning job launches.

", "CreateImageRequest$Tags": "

A list of tags to apply to the image.

", + "CreateInferenceComponentInput$Tags": "

A list of key-value pairs associated with the model. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference.

", "CreateInferenceExperimentRequest$Tags": "

Array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging your Amazon Web Services Resources.

", "CreateInferenceRecommendationsJobRequest$Tags": "

The metadata that you apply to Amazon Web Services resources to help you categorize and organize them. Each tag consists of a key and a value, both of which you define. For more information, see Tagging Amazon Web Services Resources in the Amazon Web Services General Reference.

", "CreateLabelingJobRequest$Tags": "

An array of key/value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", - "CreateModelBiasJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", + "CreateModelBiasJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", "CreateModelCardRequest$Tags": "

Key-value pairs used to manage metadata for model cards.

", - "CreateModelExplainabilityJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", + "CreateModelExplainabilityJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", "CreateModelInput$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources.

", "CreateModelPackageGroupInput$Tags": "

A list of key value pairs associated with the model group. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference Guide.

", "CreateModelPackageInput$Tags": "

A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference Guide.

If you supply ModelPackageGroupName, your model package belongs to the model group you specify and uses the tags associated with the model group. In this case, you cannot supply a tag argument.

", - "CreateModelQualityJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", + "CreateModelQualityJobDefinitionRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", "CreateMonitoringScheduleRequest$Tags": "

(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

", "CreateNotebookInstanceInput$Tags": "

An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources.

", "CreatePipelineRequest$Tags": "

A list of tags to apply to the created pipeline.

", @@ -13619,11 +14448,41 @@ } }, "TextClassificationJobConfig": { - "base": "

Stores the configuration information for the text classification problem of an AutoML job V2.

", + "base": "

The collection of settings used by an AutoML job V2 for the text classification problem type.

", "refs": { "AutoMLProblemTypeConfig$TextClassificationJobConfig": "

Settings used to configure an AutoML job V2 for the text classification problem type.

" } }, + "TextGenerationHyperParameterKey": { + "base": null, + "refs": { + "TextGenerationHyperParameters$key": null + } + }, + "TextGenerationHyperParameterValue": { + "base": null, + "refs": { + "TextGenerationHyperParameters$value": null + } + }, + "TextGenerationHyperParameters": { + "base": null, + "refs": { + "TextGenerationJobConfig$TextGenerationHyperParameters": "

The hyperparameters used to configure and optimize the learning process of the base model. You can set any combination of the following hyperparameters for all base models. For more information on each supported hyperparameter, see Optimize the learning process of your text generation models with hyperparameters.

  • \"epochCount\": The number of times the model goes through the entire training dataset. Its value should be a string containing an integer value within the range of \"1\" to \"10\".

  • \"batchSize\": The number of data samples used in each iteration of training. Its value should be a string containing an integer value within the range of \"1\" to \"64\".

  • \"learningRate\": The step size at which a model's parameters are updated during training. Its value should be a string containing a floating-point value within the range of \"0\" to \"1\".

  • \"learningRateWarmupSteps\": The number of training steps during which the learning rate gradually increases before reaching its target or maximum value. Its value should be a string containing an integer value within the range of \"0\" to \"250\".

Here is an example where all four hyperparameters are configured.

{ \"epochCount\":\"5\", \"learningRate\":\"0.5\", \"batchSize\": \"32\", \"learningRateWarmupSteps\": \"10\" }

" + } + }, + "TextGenerationJobConfig": { + "base": "

The collection of settings used by an AutoML job V2 for the text generation problem type.

The text generation models that support fine-tuning in Autopilot are currently accessible exclusively in regions supported by Canvas. Refer to the documentation of Canvas for the full list of its supported Regions.

", + "refs": { + "AutoMLProblemTypeConfig$TextGenerationJobConfig": "

Settings used to configure an AutoML job V2 for the text generation (LLMs fine-tuning) problem type.

The text generation models that support fine-tuning in Autopilot are currently accessible exclusively in regions supported by Canvas. Refer to the documentation of Canvas for the full list of its supported Regions.

" + } + }, + "TextGenerationResolvedAttributes": { + "base": "

The resolved attributes specific to the text generation problem type.

", + "refs": { + "AutoMLProblemTypeResolvedAttributes$TextGenerationResolvedAttributes": "

The resolved attributes for the text generation problem type.

" + } + }, "ThingName": { "base": null, "refs": { @@ -13641,13 +14500,13 @@ "TimeSeriesForecastingJobConfig": { "base": "

The collection of settings used by an AutoML job V2 for the time-series forecasting problem type.

", "refs": { - "AutoMLProblemTypeConfig$TimeSeriesForecastingJobConfig": "

Settings used to configure an AutoML job V2 for a time-series forecasting problem type.

" + "AutoMLProblemTypeConfig$TimeSeriesForecastingJobConfig": "

Settings used to configure an AutoML job V2 for the time-series forecasting problem type.

" } }, "TimeSeriesForecastingSettings": { "base": "

Time series forecast settings for the SageMaker Canvas application.

", "refs": { - "CanvasAppSettings$TimeSeriesForecastingSettings": "

Time series forecast settings for the Canvas application.

" + "CanvasAppSettings$TimeSeriesForecastingSettings": "

Time series forecast settings for the SageMaker Canvas application.

" } }, "TimeSeriesTransformations": { @@ -13672,6 +14531,9 @@ "AutoMLJobSummary$CreationTime": "

When the AutoML job was created.

", "AutoMLJobSummary$EndTime": "

The end time of an AutoML job.

", "AutoMLJobSummary$LastModifiedTime": "

When the AutoML job was last modified.

", + "ClusterNodeDetails$LaunchTime": "

The time when the instance is launched.

", + "ClusterNodeSummary$LaunchTime": "

The time when the instance is launched.

", + "ClusterSummary$CreationTime": "

The time when the SageMaker HyperPod cluster is created.

", "CompilationJobSummary$CompilationStartTime": "

The time when the model compilation job started.

", "CompilationJobSummary$CompilationEndTime": "

The time when the model compilation job completed.

", "ContextSummary$CreationTime": "

When the context was created.

", @@ -13694,6 +14556,7 @@ "DescribeAutoMLJobV2Response$CreationTime": "

Returns the creation time of the AutoML job V2.

", "DescribeAutoMLJobV2Response$EndTime": "

Returns the end time of the AutoML job V2.

", "DescribeAutoMLJobV2Response$LastModifiedTime": "

Returns the job's last modified time.

", + "DescribeClusterResponse$CreationTime": "

The time when the SageMaker Cluster is created.

", "DescribeCompilationJobResponse$CompilationStartTime": "

The time when the model compilation job started the CompilationJob instances.

You are billed for the time between this timestamp and the timestamp in the CompilationEndTime field. In Amazon CloudWatch Logs, the start time might be later than this time. That's because it takes time to download the compilation job, which depends on the size of the compilation job container.

", "DescribeCompilationJobResponse$CompilationEndTime": "

The time when the model compilation job on a compilation job instance ended. For a successful or stopped job, this is when the job's model artifacts have finished uploading. For a failed job, this is when Amazon SageMaker detected that the job failed.

", "DescribeContextResponse$CreationTime": "

When the context was created.

", @@ -13724,6 +14587,8 @@ "DescribeImageResponse$LastModifiedTime": "

When the image was last modified.

", "DescribeImageVersionResponse$CreationTime": "

When the version was created.

", "DescribeImageVersionResponse$LastModifiedTime": "

When the version was last modified.

", + "DescribeInferenceComponentOutput$CreationTime": "

The time when the inference component was created.

", + "DescribeInferenceComponentOutput$LastModifiedTime": "

The time when the inference component was last updated.

", "DescribeInferenceExperimentResponse$CreationTime": "

The timestamp at which you created the inference experiment.

", "DescribeInferenceExperimentResponse$CompletionTime": "

The timestamp at which the inference experiment was completed.

", "DescribeInferenceExperimentResponse$LastModifiedTime": "

The timestamp at which you last modified the inference experiment.

", @@ -13755,8 +14620,8 @@ "DescribeProcessingJobResponse$CreationTime": "

The time at which the processing job was created.

", "DescribeProjectOutput$CreationTime": "

The time when the project was created.

", "DescribeProjectOutput$LastModifiedTime": "

The timestamp when project was last modified.

", - "DescribeStudioLifecycleConfigResponse$CreationTime": "

The creation time of the Studio Lifecycle Configuration.

", - "DescribeStudioLifecycleConfigResponse$LastModifiedTime": "

This value is equivalent to CreationTime because Studio Lifecycle Configurations are immutable.

", + "DescribeStudioLifecycleConfigResponse$CreationTime": "

The creation time of the Amazon SageMaker Studio Lifecycle Configuration.

", + "DescribeStudioLifecycleConfigResponse$LastModifiedTime": "

This value is equivalent to CreationTime because Amazon SageMaker Studio Lifecycle Configurations are immutable.

", "DescribeTrainingJobResponse$CreationTime": "

A timestamp that indicates when the training job was created.

", "DescribeTrainingJobResponse$TrainingStartTime": "

Indicates the time when the training job starts on training instances. You are billed for the time interval between this time and the value of TrainingEndTime. The start time in CloudWatch Logs might be later than this time. The difference is due to the time it takes to download the training data and to the size of the training container.

", "DescribeTrainingJobResponse$TrainingEndTime": "

Indicates the time when the training job ends on training instances. You are billed for the time interval between the value of TrainingStartTime and this time. For successful jobs and stopped jobs, this is the time after model artifacts are uploaded. For failed jobs, this is the time when SageMaker detects a job failure.

", @@ -13812,6 +14677,8 @@ "Image$LastModifiedTime": "

When the image was last modified.

", "ImageVersion$CreationTime": "

When the version was created.

", "ImageVersion$LastModifiedTime": "

When the version was last modified.

", + "InferenceComponentSummary$CreationTime": "

The time when the inference component was created.

", + "InferenceComponentSummary$LastModifiedTime": "

The time when the inference component was last updated.

", "InferenceExperimentSchedule$StartTime": "

The timestamp at which the inference experiment started or will start.

", "InferenceExperimentSchedule$EndTime": "

The timestamp at which the inference experiment ended or will end.

", "InferenceExperimentSummary$CreationTime": "

The timestamp at which the inference experiment was created.

", @@ -13837,6 +14704,10 @@ "ListAutoMLJobsRequest$CreationTimeBefore": "

Request a list of jobs, using a filter for time.

", "ListAutoMLJobsRequest$LastModifiedTimeAfter": "

Request a list of jobs, using a filter for time.

", "ListAutoMLJobsRequest$LastModifiedTimeBefore": "

Request a list of jobs, using a filter for time.

", + "ListClusterNodesRequest$CreationTimeAfter": "

A filter that returns nodes in a SageMaker HyperPod cluster created after the specified time. Timestamps are formatted according to the ISO 8601 standard.

Acceptable formats include:

  • YYYY-MM-DDThh:mm:ss.sssTZD (UTC), for example, 2014-10-01T20:30:00.000Z

  • YYYY-MM-DDThh:mm:ss.sssTZD (with offset), for example, 2014-10-01T12:30:00.000-08:00

  • YYYY-MM-DD, for example, 2014-10-01

  • Unix time in seconds, for example, 1412195400. This is also referred to as Unix Epoch time and represents the number of seconds since midnight, January 1, 1970 UTC.

For more information about the timestamp format, see Timestamp in the Amazon Web Services Command Line Interface User Guide.

", + "ListClusterNodesRequest$CreationTimeBefore": "

A filter that returns nodes in a SageMaker HyperPod cluster created before the specified time. The acceptable formats are the same as the timestamp formats for CreationTimeAfter. For more information about the timestamp format, see Timestamp in the Amazon Web Services Command Line Interface User Guide.

", + "ListClustersRequest$CreationTimeAfter": "

Set a start time for the time range during which you want to list SageMaker HyperPod clusters. Timestamps are formatted according to the ISO 8601 standard.

Acceptable formats include:

  • YYYY-MM-DDThh:mm:ss.sssTZD (UTC), for example, 2014-10-01T20:30:00.000Z

  • YYYY-MM-DDThh:mm:ss.sssTZD (with offset), for example, 2014-10-01T12:30:00.000-08:00

  • YYYY-MM-DD, for example, 2014-10-01

  • Unix time in seconds, for example, 1412195400. This is also referred to as Unix Epoch time and represents the number of seconds since midnight, January 1, 1970 UTC.

For more information about the timestamp format, see Timestamp in the Amazon Web Services Command Line Interface User Guide.

", + "ListClustersRequest$CreationTimeBefore": "

Set an end time for the time range during which you want to list SageMaker HyperPod clusters. A filter that returns nodes in a SageMaker HyperPod cluster created before the specified time. The acceptable formats are the same as the timestamp formats for CreationTimeAfter. For more information about the timestamp format, see Timestamp in the Amazon Web Services Command Line Interface User Guide.

", "ListCodeRepositoriesInput$LastModifiedTimeAfter": "

A filter that returns only Git repositories that were last modified after the specified time.

", "ListCodeRepositoriesInput$LastModifiedTimeBefore": "

A filter that returns only Git repositories that were last modified before the specified time.

", "ListContextsRequest$CreatedAfter": "

A filter that returns only contexts created on or after the specified time.

", @@ -13888,6 +14759,10 @@ "ListImagesRequest$CreationTimeBefore": "

A filter that returns only images created on or before the specified time.

", "ListImagesRequest$LastModifiedTimeAfter": "

A filter that returns only images modified on or after the specified time.

", "ListImagesRequest$LastModifiedTimeBefore": "

A filter that returns only images modified on or before the specified time.

", + "ListInferenceComponentsInput$CreationTimeBefore": "

Filters the results to only those inference components that were created before the specified time.

", + "ListInferenceComponentsInput$CreationTimeAfter": "

Filters the results to only those inference components that were created after the specified time.

", + "ListInferenceComponentsInput$LastModifiedTimeBefore": "

Filters the results to only those inference components that were updated before the specified time.

", + "ListInferenceComponentsInput$LastModifiedTimeAfter": "

Filters the results to only those inference components that were updated after the specified time.

", "ListInferenceExperimentsRequest$CreationTimeAfter": "

Selects inference experiments which were created after this timestamp.

", "ListInferenceExperimentsRequest$CreationTimeBefore": "

Selects inference experiments which were created before this timestamp.

", "ListInferenceExperimentsRequest$LastModifiedTimeAfter": "

Selects inference experiments which were last modified after this timestamp.

", @@ -14014,8 +14889,8 @@ "ResourceCatalog$CreationTime": "

The time the ResourceCatalog was created.

", "SecondaryStatusTransition$StartTime": "

A timestamp that shows when the training job transitioned to the current secondary status state.

", "SecondaryStatusTransition$EndTime": "

A timestamp that shows when the training job transitioned out of this secondary status state into another secondary status state or when the training job has ended.

", - "StudioLifecycleConfigDetails$CreationTime": "

The creation time of the Studio Lifecycle Configuration.

", - "StudioLifecycleConfigDetails$LastModifiedTime": "

This value is equivalent to CreationTime because Studio Lifecycle Configurations are immutable.

", + "StudioLifecycleConfigDetails$CreationTime": "

The creation time of the Amazon SageMaker Studio Lifecycle Configuration.

", + "StudioLifecycleConfigDetails$LastModifiedTime": "

This value is equivalent to CreationTime because Amazon SageMaker Studio Lifecycle Configurations are immutable.

", "TrainingJob$CreationTime": "

A timestamp that indicates when the training job was created.

", "TrainingJob$TrainingStartTime": "

Indicates the time when the training job starts on training instances. You are billed for the time interval between this time and the value of TrainingEndTime. The start time in CloudWatch Logs might be later than this time. The difference is due to the time it takes to download the training data and to the size of the training container.

", "TrainingJob$TrainingEndTime": "

Indicates the time when the training job ends on training instances. You are billed for the time interval between the value of TrainingStartTime and this time. For successful jobs and stopped jobs, this is the time after model artifacts are uploaded. For failed jobs, this is the time when SageMaker detects a job failure.

", @@ -14717,6 +15592,12 @@ "DescribeHumanTaskUiResponse$UiTemplate": null } }, + "Uid": { + "base": null, + "refs": { + "CustomPosixUserConfig$Uid": "

The POSIX user ID.

" + } + }, "UpdateActionRequest": { "base": null, "refs": { @@ -14747,6 +15628,16 @@ "refs": { } }, + "UpdateClusterRequest": { + "base": null, + "refs": { + } + }, + "UpdateClusterResponse": { + "base": null, + "refs": { + } + }, "UpdateCodeRepositoryInput": { "base": null, "refs": { @@ -14862,6 +15753,26 @@ "refs": { } }, + "UpdateInferenceComponentInput": { + "base": null, + "refs": { + } + }, + "UpdateInferenceComponentOutput": { + "base": null, + "refs": { + } + }, + "UpdateInferenceComponentRuntimeConfigInput": { + "base": null, + "refs": { + } + }, + "UpdateInferenceComponentRuntimeConfigOutput": { + "base": null, + "refs": { + } + }, "UpdateInferenceExperimentRequest": { "base": null, "refs": { @@ -15038,6 +15949,8 @@ "AutoMLContainerDefinition$ModelDataUrl": "

The location of the model artifacts. For more information, see ContainerDefinition.

", "ClarifyShapBaselineConfig$ShapBaselineUri": "

The uniform resource identifier (URI) of the S3 bucket where the SHAP baseline file is stored. The format of the SHAP baseline file should be the same format as the format of the training dataset. For example, if the training dataset is in CSV format, and each record in the training dataset has four features, and all features are numerical, then the baseline file should also have this same format. Each record should contain only the features. If you are using a virtual private cloud (VPC), the ShapBaselineUri should be accessible to the VPC. For more information about setting up endpoints with Amazon Virtual Private Cloud, see Give SageMaker access to Resources in your Amazon Virtual Private Cloud.

", "ContainerDefinition$ModelDataUrl": "

The S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix). The S3 path is required for SageMaker built-in algorithms, but not if you use your own algorithms. For more information on built-in algorithms, see Common Parameters.

The model artifacts must be in an S3 bucket that is in the same region as the model or endpoint you are creating.

If you provide a value for this parameter, SageMaker uses Amazon Web Services Security Token Service to download model artifacts from the S3 path you provide. Amazon Web Services STS is activated in your Amazon Web Services account by default. If you previously deactivated Amazon Web Services STS for a region, you need to reactivate Amazon Web Services STS for that region. For more information, see Activating and Deactivating Amazon Web Services STS in an Amazon Web Services Region in the Amazon Web Services Identity and Access Management User Guide.

If you use a built-in algorithm to create a model, SageMaker requires that you provide a S3 path to the model artifacts in ModelDataUrl.

", + "InferenceComponentContainerSpecification$ArtifactUrl": "

The Amazon S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix).

", + "InferenceComponentContainerSpecificationSummary$ArtifactUrl": "

The Amazon S3 path where the model artifacts are stored.

", "ModelPackageContainerDefinition$ModelDataUrl": "

The Amazon S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix).

The model artifacts must be in an S3 bucket that is in the same region as the model package.

", "SourceAlgorithm$ModelDataUrl": "

The Amazon S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix).

The model artifacts must be in an S3 bucket that is in the same Amazon Web Services region as the algorithm.

" } @@ -15130,6 +16043,8 @@ "DescribeUserProfileResponse$UserProfileName": "

The user profile name.

", "ListAppsRequest$UserProfileNameEquals": "

A parameter to search by user profile name. If SpaceNameEquals is set, then this value cannot be set.

", "ListUserProfilesRequest$UserProfileNameContains": "

A parameter by which to filter the results.

", + "OwnershipSettings$OwnerUserProfileName": "

The user profile who is the owner of the private space.

", + "OwnershipSettingsSummary$OwnerUserProfileName": "

The user profile who is the owner of the private space.

", "UpdateUserProfileRequest$UserProfileName": "

The user profile name.

", "UserProfileDetails$UserProfileName": "

The user profile name.

" } @@ -15148,7 +16063,7 @@ } }, "UserSettings": { - "base": "

A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called.

SecurityGroups is aggregated when specified in both calls. For all other settings in UserSettings, the values specified in CreateUserProfile take precedence over those specified in CreateDomain.

", + "base": "

A collection of settings that apply to users in a domain. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called.

SecurityGroups is aggregated when specified in both calls. For all other settings in UserSettings, the values specified in CreateUserProfile take precedence over those specified in CreateDomain.

", "refs": { "CreateDomainRequest$DefaultUserSettings": "

The default settings to use to create a user profile when UserSettings isn't specified in the call to the CreateUserProfile API.

SecurityGroups is aggregated when specified in both calls. For all other settings in UserSettings, the values specified in CreateUserProfile take precedence over those specified in CreateDomain.

", "CreateUserProfileRequest$UserSettings": "

A collection of settings.

", @@ -15187,7 +16102,11 @@ "VariantName": { "base": null, "refs": { + "CreateInferenceComponentInput$VariantName": "

The name of an existing production variant where you host the inference component.

", + "DescribeInferenceComponentOutput$VariantName": "

The name of the production variant that hosts the inference component.

", "DesiredWeightAndCapacity$VariantName": "

The name of the variant to update.

", + "InferenceComponentSummary$VariantName": "

The name of the production variant that hosts the inference component.

", + "ListInferenceComponentsInput$VariantNameEquals": "

A production variant name to filter the listed inference components. The response includes only those inference components that are hosted at the specified variant.

", "PendingProductionVariantSummary$VariantName": "

The name of the variant.

", "ProductionVariant$VariantName": "

The name of the production variant.

", "ProductionVariantSummary$VariantName": "

The name of the variant.

" @@ -15234,6 +16153,12 @@ "ProductionVariantSummary$DesiredWeight": "

The requested weight, as specified in the UpdateEndpointWeightsAndCapacities request.

" } }, + "VectorConfig": { + "base": "

Configuration for your vector collection type.

", + "refs": { + "CollectionConfig$VectorConfig": "

Configuration for your vector collection type.

  • Dimension: The number of elements in your vector.

" + } + }, "VendorGuidance": { "base": null, "refs": { @@ -15276,11 +16201,15 @@ } }, "VpcConfig": { - "base": "

Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual Private Cloud and Protect Training Jobs by Using an Amazon Virtual Private Cloud.

", + "base": "

Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, hosted models, and compute resources have access to. You can control access to and from your resources by configuring a VPC. For more information, see Give SageMaker Access to Resources in your Amazon VPC.

", "refs": { "AutoMLSecurityConfig$VpcConfig": "

The VPC configuration.

", + "CreateClusterRequest$VpcConfig": null, + "CreateEndpointConfigInput$VpcConfig": null, "CreateModelInput$VpcConfig": "

A VpcConfig object that specifies the VPC that you want your model to connect to. Control access to and from your model container by configuring the VPC. VpcConfig is used in hosting services and in batch transform. For more information, see Protect Endpoints by Using an Amazon Virtual Private Cloud and Protect Data in Batch Transform Jobs by Using an Amazon Virtual Private Cloud.

", "CreateTrainingJobRequest$VpcConfig": "

A VpcConfig object that specifies the VPC that you want your training job to connect to. Control access to and from your training container by configuring the VPC. For more information, see Protect Training Jobs by Using an Amazon Virtual Private Cloud.

", + "DescribeClusterResponse$VpcConfig": null, + "DescribeEndpointConfigOutput$VpcConfig": null, "DescribeModelOutput$VpcConfig": "

A VpcConfig object that specifies the VPC that this model has access to. For more information, see Protect Endpoints by Using an Amazon Virtual Private Cloud

", "DescribeTrainingJobResponse$VpcConfig": "

A VpcConfig object that specifies the VPC that this training job has access to. For more information, see Protect Training Jobs by Using an Amazon Virtual Private Cloud.

", "HyperParameterTrainingJobDefinition$VpcConfig": "

The VpcConfig object that specifies the VPC that you want the training jobs that this hyperparameter tuning job launches to connect to. Control access to and from your training container by configuring the VPC. For more information, see Protect Training Jobs by Using an Amazon Virtual Private Cloud.

", @@ -15294,14 +16223,14 @@ "VpcId": { "base": null, "refs": { - "CreateDomainRequest$VpcId": "

The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.

", - "DescribeDomainResponse$VpcId": "

The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.

" + "CreateDomainRequest$VpcId": "

The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for communication.

", + "DescribeDomainResponse$VpcId": "

The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for communication.

" } }, "VpcSecurityGroupIds": { "base": null, "refs": { - "VpcConfig$SecurityGroupIds": "

The VPC security group IDs, in the form sg-xxxxxxxx. Specify the security groups for the VPC that is specified in the Subnets field.

" + "VpcConfig$SecurityGroupIds": "

The VPC security group IDs, in the form sg-xxxxxxxx. Specify the security groups for the VPC that is specified in the Subnets field.

" } }, "WaitIntervalInSeconds": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws" ] } ], @@ -252,7 +248,6 @@ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -261,7 +256,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -281,14 +277,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -302,7 +300,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -322,7 +319,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -333,14 +329,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -351,9 +349,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker/2017-07-24/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker/2017-07-24/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -54,6 +54,18 @@ "limit_key": "MaxResults", "result_key": "Candidates" }, + "ListClusterNodes": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ClusterNodeSummaries" + }, + "ListClusters": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ClusterSummaries" + }, "ListCodeRepositories": { "input_token": "NextToken", "output_token": "NextToken", @@ -162,6 +174,12 @@ "limit_key": "MaxResults", "result_key": "Images" }, + "ListInferenceComponents": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "InferenceComponents" + }, "ListInferenceExperiments": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -229,13 +229,11 @@ }, "FeatureValue":{ "type":"structure", - "required":[ - "FeatureName", - "ValueAsString" - ], + "required":["FeatureName"], "members":{ "FeatureName":{"shape":"FeatureName"}, - "ValueAsString":{"shape":"ValueAsString"} + "ValueAsString":{"shape":"ValueAsString"}, + "ValueAsStringList":{"shape":"ValueAsStringList"} } }, "GetRecordRequest":{ @@ -390,6 +388,12 @@ "type":"string", "max":358400, "pattern":".*" + }, + "ValueAsStringList":{ + "type":"list", + "member":{"shape":"ValueAsString"}, + "max":358400, + "min":0 } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -221,9 +221,16 @@ "BatchGetRecordResultDetail$RecordIdentifierValueAsString": "

The value of the record identifier in string format.

", "DeleteRecordRequest$RecordIdentifierValueAsString": "

The value for the RecordIdentifier that uniquely identifies the record, in string format.

", "DeleteRecordRequest$EventTime": "

Timestamp indicating when the deletion event occurred. EventTime can be used to query data at a certain point in time.

", - "FeatureValue$ValueAsString": "

The value associated with a feature, in string format. Note that features types can be String, Integral, or Fractional. This value represents all three types as a string.

", + "FeatureValue$ValueAsString": "

The value in string format associated with a feature. Used when your CollectionType is None. Note that features types can be String, Integral, or Fractional. This value represents all three types as a string.

", "GetRecordRequest$RecordIdentifierValueAsString": "

The value that corresponds to RecordIdentifier type and uniquely identifies the record in the FeatureGroup.

", - "RecordIdentifiers$member": null + "RecordIdentifiers$member": null, + "ValueAsStringList$member": null + } + }, + "ValueAsStringList": { + "base": null, + "refs": { + "FeatureValue$ValueAsStringList": "

The list of values in string format associated with a feature. Used when your CollectionType is a List, Set, or Vector. Note that features types can be String, Integral, or Fractional. These values represents all three types as a string.

" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sagemaker-featurestore-runtime/2020-07-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://featurestore-runtime.sagemaker-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://featurestore-runtime.sagemaker-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://featurestore-runtime.sagemaker-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://featurestore-runtime.sagemaker-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://featurestore-runtime.sagemaker.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://featurestore-runtime.sagemaker.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://featurestore-runtime.sagemaker.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://featurestore-runtime.sagemaker.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,23 @@ "uid":"secretsmanager-2017-10-17" }, "operations":{ + "BatchGetSecretValue":{ + "name":"BatchGetSecretValue", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchGetSecretValueRequest"}, + "output":{"shape":"BatchGetSecretValueResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterException"}, + {"shape":"InvalidRequestException"}, + {"shape":"DecryptionFailure"}, + {"shape":"InternalServiceError"}, + {"shape":"InvalidNextTokenException"} + ] + }, "CancelRotateSecret":{ "name":"CancelRotateSecret", "http":{ @@ -362,6 +379,18 @@ } }, "shapes":{ + "APIErrorListType":{ + "type":"list", + "member":{"shape":"APIErrorType"} + }, + "APIErrorType":{ + "type":"structure", + "members":{ + "SecretId":{"shape":"SecretIdType"}, + "ErrorCode":{"shape":"ErrorCode"}, + "Message":{"shape":"ErrorMessage"} + } + }, "AddReplicaRegionListType":{ "type":"list", "member":{"shape":"ReplicaRegionType"}, @@ -372,6 +401,26 @@ "max":1000, "min":1 }, + "BatchGetSecretValueRequest":{ + "type":"structure", + "members":{ + "SecretIdList":{"shape":"SecretIdListType"}, + "Filters":{"shape":"FiltersListType"}, + "MaxResults":{ + "shape":"MaxResultsBatchType", + "box":true + }, + "NextToken":{"shape":"NextTokenType"} + } + }, + "BatchGetSecretValueResponse":{ + "type":"structure", + "members":{ + "SecretValues":{"shape":"SecretValuesType"}, + "NextToken":{"shape":"NextTokenType"}, + "Errors":{"shape":"APIErrorListType"} + } + }, "BooleanType":{"type":"boolean"}, "CancelRotateSecretRequest":{ "type":"structure", @@ -535,6 +584,7 @@ }, "exception":true }, + "ErrorCode":{"type":"string"}, "ErrorMessage":{"type":"string"}, "ExcludeCharactersType":{ "type":"string", @@ -763,6 +813,12 @@ }, "exception":true }, + "MaxResultsBatchType":{ + "type":"integer", + "box":true, + "max":20, + "min":1 + }, "MaxResultsType":{ "type":"integer", "max":100, @@ -1020,6 +1076,12 @@ "min":1, "sensitive":true }, + "SecretIdListType":{ + "type":"list", + "member":{"shape":"SecretIdType"}, + "max":20, + "min":1 + }, "SecretIdType":{ "type":"string", "max":2048, @@ -1077,6 +1139,25 @@ "min":1, "sensitive":true }, + "SecretValueEntry":{ + "type":"structure", + "members":{ + "ARN":{"shape":"SecretARNType"}, + "Name":{"shape":"SecretNameType"}, + "VersionId":{"shape":"SecretVersionIdType"}, + "SecretBinary":{"shape":"SecretBinaryType"}, + "SecretString":{"shape":"SecretStringType"}, + "VersionStages":{"shape":"SecretVersionStagesType"}, + "CreatedDate":{ + "shape":"CreatedDateType", + "box":true + } + } + }, + "SecretValuesType":{ + "type":"list", + "member":{"shape":"SecretValueEntry"} + }, "SecretVersionIdType":{ "type":"string", "max":64, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,6 +2,7 @@ "version": "2.0", "service": "Amazon Web Services Secrets Manager

Amazon Web Services Secrets Manager provides a service to enable you to store, manage, and retrieve, secrets.

This guide provides descriptions of the Secrets Manager API. For more information about using this service, see the Amazon Web Services Secrets Manager User Guide.

API Version

This version of the Secrets Manager API Reference documents the Secrets Manager API version 2017-10-17.

For a list of endpoints, see Amazon Web Services Secrets Manager endpoints.

Support and Feedback for Amazon Web Services Secrets Manager

We welcome your feedback. Send your comments to awssecretsmanager-feedback@amazon.com, or post your feedback and questions in the Amazon Web Services Secrets Manager Discussion Forum. For more information about the Amazon Web Services Discussion Forums, see Forums Help.

Logging API Requests

Amazon Web Services Secrets Manager supports Amazon Web Services CloudTrail, a service that records Amazon Web Services API calls for your Amazon Web Services account and delivers log files to an Amazon S3 bucket. By using information that's collected by Amazon Web Services CloudTrail, you can determine the requests successfully made to Secrets Manager, who made the request, when it was made, and so on. For more about Amazon Web Services Secrets Manager and support for Amazon Web Services CloudTrail, see Logging Amazon Web Services Secrets Manager Events with Amazon Web Services CloudTrail in the Amazon Web Services Secrets Manager User Guide. To learn more about CloudTrail, including enabling it and find your log files, see the Amazon Web Services CloudTrail User Guide.

", "operations": { + "BatchGetSecretValue": "

Retrieves the contents of the encrypted fields SecretString or SecretBinary for up to 20 secrets. To retrieve a single secret, call GetSecretValue.

To choose which secrets to retrieve, you can specify a list of secrets by name or ARN, or you can use filters. If Secrets Manager encounters errors such as AccessDeniedException while attempting to retrieve any of the secrets, you can see the errors in Errors in the response.

Secrets Manager generates CloudTrail GetSecretValue log entries for each secret you request when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:BatchGetSecretValue, and you must have secretsmanager:GetSecretValue for each secret. If you use filters, you must also have secretsmanager:ListSecrets. If the secrets are encrypted using customer-managed keys instead of the Amazon Web Services managed key aws/secretsmanager, then you also need kms:Decrypt permissions for the keys. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "CancelRotateSecret": "

Turns off automatic rotation, and if a rotation is currently in progress, cancels the rotation.

If you cancel a rotation in progress, it can leave the VersionStage labels in an unexpected state. You might need to remove the staging label AWSPENDING from the partially created version. You also need to determine whether to roll back to the previous version of the secret by moving the staging label AWSCURRENT to the version that has AWSPENDING. To determine which version has a specific staging label, call ListSecretVersionIds. Then use UpdateSecretVersionStage to change staging labels. For more information, see How rotation works.

To turn on automatic rotation again, call RotateSecret.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:CancelRotateSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "CreateSecret": "

Creates a new secret. A secret can be a password, a set of credentials such as a user name and password, an OAuth token, or other secret information that you store in an encrypted form in Secrets Manager. The secret also includes the connection information to access a database or other service, which Secrets Manager doesn't encrypt. A secret in Secrets Manager consists of both the protected secret data and the important information needed to manage the secret.

For secrets that use managed rotation, you need to create the secret through the managing service. For more information, see Secrets Manager secrets managed by other Amazon Web Services services.

For information about creating a secret in the console, see Create a secret.

To create a secret, you can provide the secret value to be encrypted in either the SecretString parameter or the SecretBinary parameter, but not both. If you include SecretString or SecretBinary then Secrets Manager creates an initial secret version and automatically attaches the staging label AWSCURRENT to it.

For database credentials you want to rotate, for Secrets Manager to be able to rotate the secret, you must make sure the JSON you store in the SecretString matches the JSON structure of a database secret.

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 KMS key.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters except SecretBinary or SecretString because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:CreateSecret. If you include tags in the secret, you also need secretsmanager:TagResource. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

To encrypt the secret with a KMS key other than aws/secretsmanager, you need kms:GenerateDataKey and kms:Decrypt permission to the key.

", "DeleteResourcePolicy": "

Deletes the resource-based permission policy attached to the secret. To attach a policy to a secret, use PutResourcePolicy.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:DeleteResourcePolicy. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", @@ -9,9 +10,9 @@ "DescribeSecret": "

Retrieves the details of a secret. It does not include the encrypted secret value. Secrets Manager only returns fields that have a value in the response.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:DescribeSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "GetRandomPassword": "

Generates a random password. We recommend that you specify the maximum length and include every character type that the system you are generating a password for can support.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetRandomPassword. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "GetResourcePolicy": "

Retrieves the JSON text of the resource-based policy document attached to the secret. For more information about permissions policies attached to a secret, see Permissions policies attached to a secret.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetResourcePolicy. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", - "GetSecretValue": "

Retrieves the contents of the encrypted fields SecretString or SecretBinary from the specified version of a secret, whichever contains content.

We recommend that you cache your secret values by using client-side caching. Caching secrets improves speed and reduces your costs. For more information, see Cache secrets for your applications.

To retrieve the previous version of a secret, use VersionStage and specify AWSPREVIOUS. To revert to the previous version of a secret, call UpdateSecretVersionStage.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetSecretValue. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key aws/secretsmanager, then you also need kms:Decrypt permissions for that key. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", + "GetSecretValue": "

Retrieves the contents of the encrypted fields SecretString or SecretBinary from the specified version of a secret, whichever contains content.

To retrieve the values for a group of secrets, call BatchGetSecretValue.

We recommend that you cache your secret values by using client-side caching. Caching secrets improves speed and reduces your costs. For more information, see Cache secrets for your applications.

To retrieve the previous version of a secret, use VersionStage and specify AWSPREVIOUS. To revert to the previous version of a secret, call UpdateSecretVersionStage.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetSecretValue. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key aws/secretsmanager, then you also need kms:Decrypt permissions for that key. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "ListSecretVersionIds": "

Lists the versions of a secret. Secrets Manager uses staging labels to indicate the different versions of a secret. For more information, see Secrets Manager concepts: Versions.

To list the secrets in the account, use ListSecrets.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:ListSecretVersionIds. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", - "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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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 retrieve the values for the secrets, call BatchGetSecretValue or GetSecretValue.

For information about finding secrets in the console, see Find secrets in Secrets Manager.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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 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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters except SecretBinary or SecretString because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:RemoveRegionsFromReplication. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", @@ -19,13 +20,25 @@ "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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:RestoreSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "RotateSecret": "

Configures and starts the asynchronous process of rotating the secret. For information about rotation, see Rotate secrets in the Secrets Manager User Guide. If you include the configuration parameters, the operation sets the values for the secret and then immediately starts a rotation. If you don't include the configuration parameters, the operation starts a rotation with the values already stored in the secret.

When rotation is successful, the AWSPENDING staging label might be attached to the same version as the AWSCURRENT version, or it might not be attached to any version. If the AWSPENDING staging label is present but not attached to the same version as AWSCURRENT, then any later invocation of RotateSecret assumes that a previous rotation request is still in progress and returns an error. When rotation is unsuccessful, the AWSPENDING staging label might be attached to an empty secret version. For more information, see Troubleshoot rotation in the Secrets Manager User Guide.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:RotateSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager. You also need lambda:InvokeFunction permissions on the rotation function. For more information, see Permissions for rotation.

", "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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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:

  • Maximum number of tags per secret: 50

  • Maximum key length: 127 Unicode characters in UTF-8

  • Maximum value length: 255 Unicode characters in UTF-8

  • Tag keys and values are case sensitive.

  • Do not use the aws: prefix in your tag names or values because Amazon Web Services reserves it for Amazon Web Services use. You can't edit or delete tag names or values with this prefix. Tags with this prefix do not count against your tags per secret limit.

  • If you use your tagging schema across multiple services and resources, other services might have restrictions on allowed characters. Generally allowed characters: letters, spaces, and numbers representable in UTF-8, plus the following special characters: + - = . _ : / @.

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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:TagResource. 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.

For tag quotas and naming restrictions, see Service quotas for Tagging in the Amazon Web Services General Reference guide.

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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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.

To change a secret so that it is managed by another service, you need to recreate the secret in that service. See Secrets Manager secrets managed by other Amazon Web Services services.

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 moves the staging label AWSCURRENT to the new version. Then it attaches the label AWSPREVIOUS to the version that AWSCURRENT was removed from.

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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters except SecretBinary or SecretString because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

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, kms:Encrypt, and kms:Decrypt permissions on the key. If you change the KMS key and you don't have kms:Encrypt permission to the new key, Secrets Manager does not re-ecrypt existing secret versions with the new 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.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager: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:

  • Sends a call to Zelkova, an automated reasoning engine, to ensure your resource policy does not allow broad access to your secret, for example policies that use a wildcard for the principal.

  • Checks for correct syntax in a policy.

  • Verifies the policy does not lock out a caller.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:ValidateResourcePolicy and secretsmanager:PutResourcePolicy. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

" }, "shapes": { + "APIErrorListType": { + "base": null, + "refs": { + "BatchGetSecretValueResponse$Errors": "

A list of errors Secrets Manager encountered while attempting to retrieve individual secrets.

" + } + }, + "APIErrorType": { + "base": "

The error Secrets Manager encountered while retrieving an individual secret as part of BatchGetSecretValue.

", + "refs": { + "APIErrorListType$member": null + } + }, "AddReplicaRegionListType": { "base": null, "refs": { @@ -39,6 +52,16 @@ "RotationRulesType$AutomaticallyAfterDays": "

The number of days between rotations of the secret. You can use this value to check that your secret meets your compliance guidelines for how often secrets must be rotated. If you use this field to set the rotation schedule, Secrets Manager calculates the next rotation date based on the previous rotation. Manually updating the secret value by calling PutSecretValue or UpdateSecret is considered a valid rotation.

In DescribeSecret and ListSecrets, this value is calculated from the rotation schedule after every successful rotation. In RotateSecret, you can set the rotation schedule in RotationRules with AutomaticallyAfterDays or ScheduleExpression, but not both. To set a rotation schedule in hours, use ScheduleExpression.

" } }, + "BatchGetSecretValueRequest": { + "base": null, + "refs": { + } + }, + "BatchGetSecretValueResponse": { + "base": null, + "refs": { + } + }, "BooleanType": { "base": null, "refs": { @@ -65,10 +88,10 @@ "ClientRequestTokenType": { "base": null, "refs": { - "CreateSecretRequest$ClientRequestToken": "

If you include SecretString or SecretBinary, then Secrets Manager creates an initial version for the secret, and this parameter specifies the unique identifier for the new version.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request. If you don't use the SDK and instead generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken yourself for the new version and include the value in the request.

This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.

  • If the ClientRequestToken value isn't already associated with a version of the secret then a new version of the secret is created.

  • If a version with this value already exists and the version SecretString and SecretBinary values are the same as those in the request, then the request is ignored.

  • If a version with this value already exists and that version's SecretString and SecretBinary values are different from those in the request, then the request fails because you cannot modify an existing version. Instead, use PutSecretValue to create a new version.

This value becomes the VersionId of the new version.

", - "PutSecretValueRequest$ClientRequestToken": "

A unique identifier for the new version of the secret.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty because they generate a random UUID for you. If you don't use the SDK and instead generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken yourself for new versions and include that value in the request.

This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during the Lambda rotation function processing. We recommend that you generate a UUID-type value to ensure uniqueness within the specified secret.

  • If the ClientRequestToken value isn't already associated with a version of the secret then a new version of the secret is created.

  • If a version with this value already exists and that version's SecretString or SecretBinary values are the same as those in the request then the request is ignored. The operation is idempotent.

  • If a version with this value already exists and the version of the SecretString and SecretBinary values are different from those in the request, then the request fails because you can't modify a secret version. You can only create new versions to store new secret values.

This value becomes the VersionId of the new version.

", - "RotateSecretRequest$ClientRequestToken": "

A unique identifier for the new version of the secret that helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during rotation. This value becomes the VersionId of the new version.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDK to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes that in the request for this parameter. If you don't use the SDK and instead generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken yourself for new versions and include that value in the request.

You only need to specify this value if you implement your own retry logic and you want to ensure that Secrets Manager doesn't attempt to create a secret version twice. We recommend that you generate a UUID-type value to ensure uniqueness within the specified secret.

", - "UpdateSecretRequest$ClientRequestToken": "

If you include SecretString or SecretBinary, then Secrets Manager creates a new version for the secret, and this parameter specifies the unique identifier for the new version.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request. If you don't use the SDK and instead generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken yourself for the new version and include the value in the request.

This value becomes the VersionId of the new version.

" + "CreateSecretRequest$ClientRequestToken": "

If you include SecretString or SecretBinary, then Secrets Manager creates an initial version for the secret, and this parameter specifies the unique identifier for the new version.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request.

If you generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken and include it in the request.

This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.

  • If the ClientRequestToken value isn't already associated with a version of the secret then a new version of the secret is created.

  • If a version with this value already exists and the version SecretString and SecretBinary values are the same as those in the request, then the request is ignored.

  • If a version with this value already exists and that version's SecretString and SecretBinary values are different from those in the request, then the request fails because you cannot modify an existing version. Instead, use PutSecretValue to create a new version.

This value becomes the VersionId of the new version.

", + "PutSecretValueRequest$ClientRequestToken": "

A unique identifier for the new version of the secret.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request.

If you generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken and include it in the request.

This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.

  • If the ClientRequestToken value isn't already associated with a version of the secret then a new version of the secret is created.

  • If a version with this value already exists and that version's SecretString or SecretBinary values are the same as those in the request then the request is ignored. The operation is idempotent.

  • If a version with this value already exists and the version of the SecretString and SecretBinary values are different from those in the request, then the request fails because you can't modify a secret version. You can only create new versions to store new secret values.

This value becomes the VersionId of the new version.

", + "RotateSecretRequest$ClientRequestToken": "

A unique identifier for the new version of the secret. You only need to specify this value if you implement your own retry logic and you want to ensure that Secrets Manager doesn't attempt to create a secret version twice.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request.

If you generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken and include it in the request.

This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.

", + "UpdateSecretRequest$ClientRequestToken": "

If you include SecretString or SecretBinary, then Secrets Manager creates a new version for the secret, and this parameter specifies the unique identifier for the new version.

If you use the Amazon Web Services CLI or one of the Amazon Web Services SDKs to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes it as the value for this parameter in the request.

If you generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken and include it in the request.

This value helps ensure idempotency. Secrets Manager uses this value to prevent the accidental creation of duplicate versions if there are failures and retries during a rotation. We recommend that you generate a UUID-type value to ensure uniqueness of your versions within the specified secret.

" } }, "CreateSecretRequest": { @@ -85,6 +108,7 @@ "base": null, "refs": { "GetSecretValueResponse$CreatedDate": "

The date and time that this version of the secret was created. If you don't specify which version in VersionId or VersionStage, then Secrets Manager uses the AWSCURRENT version.

", + "SecretValueEntry$CreatedDate": "

The date the secret was created.

", "SecretVersionsListEntry$CreatedDate": "

The date and time this version of the secret was created.

" } }, @@ -156,9 +180,16 @@ "refs": { } }, + "ErrorCode": { + "base": null, + "refs": { + "APIErrorType$ErrorCode": "

The error Secrets Manager encountered while retrieving an individual secret as part of BatchGetSecretValue, for example ResourceNotFoundException,InvalidParameterException, InvalidRequestException, DecryptionFailure, or AccessDeniedException.

" + } + }, "ErrorMessage": { "base": null, "refs": { + "APIErrorType$Message": "

A message describing the error.

", "DecryptionFailure$Message": null, "EncryptionFailure$Message": null, "InternalServiceError$Message": null, @@ -231,6 +262,7 @@ "FiltersListType": { "base": null, "refs": { + "BatchGetSecretValueRequest$Filters": "

The filters to choose which secrets to retrieve. You must include Filters or SecretIdList, but not both.

", "ListSecretsRequest$Filters": "

The filters to apply to the list of secrets.

" } }, @@ -361,6 +393,12 @@ "refs": { } }, + "MaxResultsBatchType": { + "base": null, + "refs": { + "BatchGetSecretValueRequest$MaxResults": "

The number of results to include in the response.

If there are more results available, in the response, Secrets Manager includes NextToken. To get the next results, call BatchGetSecretValue again with the value from NextToken.

" + } + }, "MaxResultsType": { "base": null, "refs": { @@ -388,6 +426,8 @@ "NextTokenType": { "base": null, "refs": { + "BatchGetSecretValueRequest$NextToken": "

A token that indicates where the output should continue from, if a previous call did not show all results. To get the next results, call BatchGetSecretValue again with this value.

", + "BatchGetSecretValueResponse$NextToken": "

Secrets Manager includes this value if there's more output available than what is included in the current response. This can occur even when the response includes no values at all, such as when you ask for a filtered view of a long list. To get the next results, call BatchGetSecretValue again with this value.

", "ListSecretVersionIdsRequest$NextToken": "

A token that indicates where the output should continue from, if a previous call did not show all results. To get the next results, call ListSecretVersionIds again with this value.

", "ListSecretVersionIdsResponse$NextToken": "

Secrets Manager includes this value if there's more output available than what is included in the current response. This can occur even when the response includes no values at all, such as when you ask for a filtered view of a long list. To get the next results, call ListSecretVersionIds again with this value.

", "ListSecretsRequest$NextToken": "

A token that indicates where the output should continue from, if a previous call did not show all results. To get the next results, call ListSecrets again with this value.

", @@ -597,6 +637,7 @@ "RestoreSecretResponse$ARN": "

The ARN of the secret that was restored.

", "RotateSecretResponse$ARN": "

The ARN of the secret.

", "SecretListEntry$ARN": "

The Amazon Resource Name (ARN) of the secret.

", + "SecretValueEntry$ARN": "

The Amazon Resource Name (ARN) of the secret.

", "StopReplicationToReplicaResponse$ARN": "

The ARN of the promoted secret. The ARN is the same as the original primary secret except the Region is changed.

", "UpdateSecretResponse$ARN": "

The ARN of the secret that was updated.

", "UpdateSecretVersionStageResponse$ARN": "

The ARN of the secret that was updated.

" @@ -608,12 +649,20 @@ "CreateSecretRequest$SecretBinary": "

The binary data to encrypt and store in the new version of the secret. We recommend that you store your binary data in a file and then pass the contents of the file as a parameter.

Either SecretString or SecretBinary must have a value, but not both.

This parameter is not available in the Secrets Manager console.

", "GetSecretValueResponse$SecretBinary": "

The decrypted secret value, if the secret value was originally provided as binary data in the form of a byte array. The response parameter represents the binary data as a base64-encoded string.

If the secret was created by using the Secrets Manager console, or if the secret value was originally provided as a string, then this field is omitted. The secret value appears in SecretString instead.

", "PutSecretValueRequest$SecretBinary": "

The binary data to encrypt and store in the new version of the secret. To use this parameter in the command-line tools, we recommend that you store your binary data in a file and then pass the contents of the file as a parameter.

You must include SecretBinary or SecretString, but not both.

You can't access this value from the Secrets Manager console.

", + "SecretValueEntry$SecretBinary": "

The decrypted secret value, if the secret value was originally provided as binary data in the form of a byte array. The parameter represents the binary data as a base64-encoded string.

", "UpdateSecretRequest$SecretBinary": "

The binary data to encrypt and store in the new version of the secret. We recommend that you store your binary data in a file and then pass the contents of the file as a parameter.

Either SecretBinary or SecretString must have a value, but not both.

You can't access this parameter in the Secrets Manager console.

" } }, + "SecretIdListType": { + "base": null, + "refs": { + "BatchGetSecretValueRequest$SecretIdList": "

The ARN or names of the secrets to retrieve. You must include Filters or SecretIdList, but not both.

" + } + }, "SecretIdType": { "base": null, "refs": { + "APIErrorType$SecretId": "

The ARN or name of the secret.

", "CancelRotateSecretRequest$SecretId": "

The ARN or name of the secret.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", "DeleteResourcePolicyRequest$SecretId": "

The ARN or name of the secret to delete the attached resource-based policy for.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", "DeleteSecretRequest$SecretId": "

The ARN or name of the secret to delete.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", @@ -627,6 +676,7 @@ "ReplicateSecretToRegionsRequest$SecretId": "

The ARN or name of the secret to replicate.

", "RestoreSecretRequest$SecretId": "

The ARN or name of the secret to restore.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", "RotateSecretRequest$SecretId": "

The ARN or name of the secret to rotate.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", + "SecretIdListType$member": null, "StopReplicationToReplicaRequest$SecretId": "

The ARN of the primary secret.

", "TagResourceRequest$SecretId": "

The identifier for the secret to attach tags to. You can specify either the Amazon Resource Name (ARN) or the friendly name of the secret.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", "UntagResourceRequest$SecretId": "

The ARN or name of the secret.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

", @@ -659,7 +709,8 @@ "PutSecretValueResponse$Name": "

The name of the secret.

", "RestoreSecretResponse$Name": "

The name of the secret that was restored.

", "RotateSecretResponse$Name": "

The name of the secret.

", - "SecretListEntry$Name": "

The friendly name of the secret. You can use forward slashes in the name to represent a path hierarchy. For example, /prod/databases/dbserver1 could represent the secret for a server named dbserver1 in the folder databases in the folder prod.

", + "SecretListEntry$Name": "

The friendly name of the secret.

", + "SecretValueEntry$Name": "

The friendly name of the secret.

", "UpdateSecretResponse$Name": "

The name of the secret that was updated.

", "UpdateSecretVersionStageResponse$Name": "

The name of the secret that was updated.

" } @@ -670,9 +721,22 @@ "CreateSecretRequest$SecretString": "

The text data to encrypt and store in this new version of the secret. We recommend you use a JSON structure of key/value pairs for your secret value.

Either SecretString or SecretBinary must have a value, but not both.

If you create a secret by using the Secrets Manager console then Secrets Manager puts the protected secret text in only the SecretString parameter. The Secrets Manager console stores the information as a JSON structure of key/value pairs that a Lambda rotation function can parse.

", "GetSecretValueResponse$SecretString": "

The decrypted secret value, if the secret value was originally provided as a string or through the Secrets Manager console.

If this secret was created by using the console, then Secrets Manager stores the information as a JSON structure of key/value pairs.

", "PutSecretValueRequest$SecretString": "

The text to encrypt and store in the new version of the secret.

You must include SecretBinary or SecretString, but not both.

We recommend you create the secret string as JSON key/value pairs, as shown in the example.

", + "SecretValueEntry$SecretString": "

The decrypted secret value, if the secret value was originally provided as a string or through the Secrets Manager console.

", "UpdateSecretRequest$SecretString": "

The text data to encrypt and store in the new version of the secret. We recommend you use a JSON structure of key/value pairs for your secret value.

Either SecretBinary or SecretString must have a value, but not both.

" } }, + "SecretValueEntry": { + "base": "

A structure that contains the secret value and other details for a secret.

", + "refs": { + "SecretValuesType$member": null + } + }, + "SecretValuesType": { + "base": null, + "refs": { + "BatchGetSecretValueResponse$SecretValues": "

A list of secret values.

" + } + }, "SecretVersionIdType": { "base": null, "refs": { @@ -682,6 +746,7 @@ "GetSecretValueResponse$VersionId": "

The unique identifier of this version of the secret.

", "PutSecretValueResponse$VersionId": "

The unique identifier of the version of the secret.

", "RotateSecretResponse$VersionId": "

The ID of the new version of the secret.

", + "SecretValueEntry$VersionId": "

The unique version identifier of this version of the secret.

", "SecretVersionsListEntry$VersionId": "

The unique version identifier of this version of the secret.

", "SecretVersionsToStagesMapType$key": null, "UpdateSecretResponse$VersionId": "

If Secrets Manager created a new version of the secret during this operation, then VersionId contains the unique identifier of the new version.

", @@ -703,6 +768,7 @@ "GetSecretValueResponse$VersionStages": "

A list of all of the staging labels currently attached to this version of the secret.

", "PutSecretValueRequest$VersionStages": "

A list of staging labels to attach to this version of the secret. Secrets Manager uses staging labels to track versions of a secret through the rotation process.

If you specify a staging label that's already associated with a different version of the same secret, then Secrets Manager removes the label from the other version and attaches it to this version. If you specify AWSCURRENT, and it is already attached to another version, then Secrets Manager also moves the staging label AWSPREVIOUS to the version that AWSCURRENT was removed from.

If you don't include VersionStages, then Secrets Manager automatically moves the staging label AWSCURRENT to this version.

", "PutSecretValueResponse$VersionStages": "

The list of staging labels that are currently attached to this version of the secret. Secrets Manager uses staging labels to track a version as it progresses through the secret rotation process.

", + "SecretValueEntry$VersionStages": "

A list of all of the staging labels currently attached to this version of the secret.

", "SecretVersionsListEntry$VersionStages": "

An array of staging labels that are currently associated with this version of the secret.

", "SecretVersionsToStagesMapType$value": null } @@ -776,7 +842,7 @@ "TagListType": { "base": null, "refs": { - "CreateSecretRequest$Tags": "

A list of tags to attach to the secret. Each tag is a key and value pair of strings in a JSON text string, for example:

[{\"Key\":\"CostCenter\",\"Value\":\"12345\"},{\"Key\":\"environment\",\"Value\":\"production\"}]

Secrets Manager tag key names are case sensitive. A tag with the key \"ABC\" is a different tag from one with key \"abc\".

If you check tags in permissions policies as part of your security strategy, then adding or removing a tag can change permissions. If the completion of this operation would result in you losing your permissions for this secret, then Secrets Manager blocks the operation and returns an Access Denied error. For more information, see Control access to secrets using tags and Limit access to identities with tags that match secrets' tags.

For information about how to format a JSON parameter for the various command line tool environments, see Using JSON for Parameters. If your command-line tool or SDK requires quotation marks around the parameter, you should use single quotes to avoid confusion with the double quotes required in the JSON text.

The following restrictions apply to tags:

  • Maximum number of tags per secret: 50

  • Maximum key length: 127 Unicode characters in UTF-8

  • Maximum value length: 255 Unicode characters in UTF-8

  • Tag keys and values are case sensitive.

  • Do not use the aws: prefix in your tag names or values because Amazon Web Services reserves it for Amazon Web Services use. You can't edit or delete tag names or values with this prefix. Tags with this prefix do not count against your tags per secret limit.

  • If you use your tagging schema across multiple services and resources, other services might have restrictions on allowed characters. Generally allowed characters: letters, spaces, and numbers representable in UTF-8, plus the following special characters: + - = . _ : / @.

", + "CreateSecretRequest$Tags": "

A list of tags to attach to the secret. Each tag is a key and value pair of strings in a JSON text string, for example:

[{\"Key\":\"CostCenter\",\"Value\":\"12345\"},{\"Key\":\"environment\",\"Value\":\"production\"}]

Secrets Manager tag key names are case sensitive. A tag with the key \"ABC\" is a different tag from one with key \"abc\".

If you check tags in permissions policies as part of your security strategy, then adding or removing a tag can change permissions. If the completion of this operation would result in you losing your permissions for this secret, then Secrets Manager blocks the operation and returns an Access Denied error. For more information, see Control access to secrets using tags and Limit access to identities with tags that match secrets' tags.

For information about how to format a JSON parameter for the various command line tool environments, see Using JSON for Parameters. If your command-line tool or SDK requires quotation marks around the parameter, you should use single quotes to avoid confusion with the double quotes required in the JSON text.

For tag quotas and naming restrictions, see Service quotas for Tagging in the Amazon Web Services General Reference guide.

", "DescribeSecretResponse$Tags": "

The list of tags attached to the secret. To add tags to a secret, use TagResource. To remove tags, use UntagResource.

", "SecretListEntry$Tags": "

The list of user-defined tags associated with the secret. To add tags to a secret, use TagResource . To remove tags, use UntagResource .

", "TagResourceRequest$Tags": "

The tags to attach to the secret as a JSON text string argument. Each element in the list consists of a Key and a Value.

For storing multiple values, we recommend that you use a JSON text string argument and specify key/value pairs. For more information, see Specifying parameter values for the Amazon Web Services CLI in the Amazon Web Services CLI User Guide.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://secretsmanager-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://secretsmanager-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://secretsmanager-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://secretsmanager-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://secretsmanager.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://secretsmanager.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://secretsmanager.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://secretsmanager.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/secretsmanager/2017-10-17/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/secretsmanager/2017-10-17/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,10 @@ { "pagination": { + "BatchGetSecretValue": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListSecretVersionIds": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -74,7 +74,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "BatchEnableStandards":{ @@ -89,7 +90,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "BatchGetAutomationRules":{ @@ -109,6 +111,23 @@ {"shape":"ResourceNotFoundException"} ] }, + "BatchGetConfigurationPolicyAssociations":{ + "name":"BatchGetConfigurationPolicyAssociations", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/batchget" + }, + "input":{"shape":"BatchGetConfigurationPolicyAssociationsRequest"}, + "output":{"shape":"BatchGetConfigurationPolicyAssociationsResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, "BatchGetSecurityControls":{ "name":"BatchGetSecurityControls", "http":{ @@ -197,7 +216,8 @@ {"shape":"InternalException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidAccessException"}, - {"shape":"InvalidInputException"} + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"} ] }, "CreateActionTarget":{ @@ -232,6 +252,23 @@ {"shape":"LimitExceededException"} ] }, + "CreateConfigurationPolicy":{ + "name":"CreateConfigurationPolicy", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicy/create" + }, + "input":{"shape":"CreateConfigurationPolicyRequest"}, + "output":{"shape":"CreateConfigurationPolicyResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceConflictException"} + ] + }, "CreateFindingAggregator":{ "name":"CreateFindingAggregator", "http":{ @@ -277,7 +314,8 @@ {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidAccessException"}, - {"shape":"ResourceConflictException"} + {"shape":"ResourceConflictException"}, + {"shape":"AccessDeniedException"} ] }, "DeclineInvitations":{ @@ -310,6 +348,24 @@ {"shape":"ResourceNotFoundException"} ] }, + "DeleteConfigurationPolicy":{ + "name":"DeleteConfigurationPolicy", + "http":{ + "method":"DELETE", + "requestUri":"/configurationPolicy/{Identifier}" + }, + "input":{"shape":"DeleteConfigurationPolicyRequest"}, + "output":{"shape":"DeleteConfigurationPolicyResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceConflictException"} + ] + }, "DeleteFindingAggregator":{ "name":"DeleteFindingAggregator", "http":{ @@ -493,7 +549,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "DisableSecurityHub":{ @@ -508,7 +565,8 @@ {"shape":"InternalException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidAccessException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] }, "DisassociateFromAdministratorAccount":{ @@ -558,7 +616,8 @@ {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, {"shape":"LimitExceededException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] }, "EnableImportFindingsForProduct":{ @@ -589,7 +648,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "EnableSecurityHub":{ @@ -624,6 +684,40 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetConfigurationPolicy":{ + "name":"GetConfigurationPolicy", + "http":{ + "method":"GET", + "requestUri":"/configurationPolicy/get/{Identifier}" + }, + "input":{"shape":"GetConfigurationPolicyRequest"}, + "output":{"shape":"GetConfigurationPolicyResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetConfigurationPolicyAssociation":{ + "name":"GetConfigurationPolicyAssociation", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/get" + }, + "input":{"shape":"GetConfigurationPolicyAssociationRequest"}, + "output":{"shape":"GetConfigurationPolicyAssociationResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetEnabledStandards":{ "name":"GetEnabledStandards", "http":{ @@ -767,6 +861,22 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetSecurityControlDefinition":{ + "name":"GetSecurityControlDefinition", + "http":{ + "method":"GET", + "requestUri":"/securityControl/definition" + }, + "input":{"shape":"GetSecurityControlDefinitionRequest"}, + "output":{"shape":"GetSecurityControlDefinitionResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidInputException"}, + {"shape":"InvalidAccessException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "InviteMembers":{ "name":"InviteMembers", "http":{ @@ -799,6 +909,39 @@ {"shape":"LimitExceededException"} ] }, + "ListConfigurationPolicies":{ + "name":"ListConfigurationPolicies", + "http":{ + "method":"GET", + "requestUri":"/configurationPolicy/list" + }, + "input":{"shape":"ListConfigurationPoliciesRequest"}, + "output":{"shape":"ListConfigurationPoliciesResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListConfigurationPolicyAssociations":{ + "name":"ListConfigurationPolicyAssociations", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/list" + }, + "input":{"shape":"ListConfigurationPolicyAssociationsRequest"}, + "output":{"shape":"ListConfigurationPolicyAssociationsResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListEnabledProductsForImport":{ "name":"ListEnabledProductsForImport", "http":{ @@ -918,6 +1061,40 @@ {"shape":"ResourceNotFoundException"} ] }, + "StartConfigurationPolicyAssociation":{ + "name":"StartConfigurationPolicyAssociation", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/associate" + }, + "input":{"shape":"StartConfigurationPolicyAssociationRequest"}, + "output":{"shape":"StartConfigurationPolicyAssociationResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "StartConfigurationPolicyDisassociation":{ + "name":"StartConfigurationPolicyDisassociation", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/disassociate" + }, + "input":{"shape":"StartConfigurationPolicyDisassociationRequest"}, + "output":{"shape":"StartConfigurationPolicyDisassociationResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -962,6 +1139,24 @@ {"shape":"ResourceNotFoundException"} ] }, + "UpdateConfigurationPolicy":{ + "name":"UpdateConfigurationPolicy", + "http":{ + "method":"PATCH", + "requestUri":"/configurationPolicy/{Identifier}" + }, + "input":{"shape":"UpdateConfigurationPolicyRequest"}, + "output":{"shape":"UpdateConfigurationPolicyResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceConflictException"} + ] + }, "UpdateFindingAggregator":{ "name":"UpdateFindingAggregator", "http":{ @@ -1023,7 +1218,28 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceConflictException"} + ] + }, + "UpdateSecurityControl":{ + "name":"UpdateSecurityControl", + "http":{ + "method":"PATCH", + "requestUri":"/securityControl/update" + }, + "input":{"shape":"UpdateSecurityControlRequest"}, + "output":{"shape":"UpdateSecurityControlResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidInputException"}, + {"shape":"InvalidAccessException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceInUseException"}, + {"shape":"AccessDeniedException"} ] }, "UpdateSecurityHubConfiguration":{ @@ -1039,7 +1255,8 @@ {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, {"shape":"LimitExceededException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] }, "UpdateStandardsControl":{ @@ -1054,7 +1271,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] } }, @@ -1214,6 +1432,10 @@ "max":10, "min":1 }, + "AlphaNumericNonEmptyString":{ + "type":"string", + "pattern":"^[-_ a-zA-Z0-9]+$" + }, "ArnList":{ "type":"list", "member":{"shape":"NonEmptyString"} @@ -1228,6 +1450,14 @@ "type":"list", "member":{"shape":"AssociatedStandard"} }, + "AssociationFilters":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "AssociationType":{"shape":"AssociationType"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"} + } + }, "AssociationSetDetails":{ "type":"structure", "members":{ @@ -1257,6 +1487,13 @@ "DISABLED" ] }, + "AssociationType":{ + "type":"string", + "enum":[ + "INHERITED", + "APPLIED" + ] + }, "AutoEnableStandards":{ "type":"string", "enum":[ @@ -1352,7 +1589,10 @@ "NoteText":{"shape":"StringFilterList"}, "NoteUpdatedAt":{"shape":"DateFilterList"}, "NoteUpdatedBy":{"shape":"StringFilterList"}, - "UserDefinedFields":{"shape":"MapFilterList"} + "UserDefinedFields":{"shape":"MapFilterList"}, + "ResourceApplicationArn":{"shape":"StringFilterList"}, + "ResourceApplicationName":{"shape":"StringFilterList"}, + "AwsAccountName":{"shape":"StringFilterList"} } }, "AutomationRulesMetadata":{ @@ -2396,6 +2636,75 @@ "AllowHeaders":{"shape":"NonEmptyStringList"} } }, + "AwsDmsEndpointDetails":{ + "type":"structure", + "members":{ + "CertificateArn":{"shape":"NonEmptyString"}, + "DatabaseName":{"shape":"NonEmptyString"}, + "EndpointArn":{"shape":"NonEmptyString"}, + "EndpointIdentifier":{"shape":"NonEmptyString"}, + "EndpointType":{"shape":"NonEmptyString"}, + "EngineName":{"shape":"NonEmptyString"}, + "ExternalId":{"shape":"NonEmptyString"}, + "ExtraConnectionAttributes":{"shape":"NonEmptyString"}, + "KmsKeyId":{"shape":"NonEmptyString"}, + "Port":{"shape":"Integer"}, + "ServerName":{"shape":"NonEmptyString"}, + "SslMode":{"shape":"NonEmptyString"}, + "Username":{"shape":"NonEmptyString"} + } + }, + "AwsDmsReplicationInstanceDetails":{ + "type":"structure", + "members":{ + "AllocatedStorage":{"shape":"Integer"}, + "AutoMinorVersionUpgrade":{"shape":"Boolean"}, + "AvailabilityZone":{"shape":"NonEmptyString"}, + "EngineVersion":{"shape":"NonEmptyString"}, + "KmsKeyId":{"shape":"NonEmptyString"}, + "MultiAZ":{"shape":"Boolean"}, + "PreferredMaintenanceWindow":{"shape":"NonEmptyString"}, + "PubliclyAccessible":{"shape":"Boolean"}, + "ReplicationInstanceClass":{"shape":"NonEmptyString"}, + "ReplicationInstanceIdentifier":{"shape":"NonEmptyString"}, + "ReplicationSubnetGroup":{"shape":"AwsDmsReplicationInstanceReplicationSubnetGroupDetails"}, + "VpcSecurityGroups":{"shape":"AwsDmsReplicationInstanceVpcSecurityGroupsList"} + } + }, + "AwsDmsReplicationInstanceReplicationSubnetGroupDetails":{ + "type":"structure", + "members":{ + "ReplicationSubnetGroupIdentifier":{"shape":"NonEmptyString"} + } + }, + "AwsDmsReplicationInstanceVpcSecurityGroupsDetails":{ + "type":"structure", + "members":{ + "VpcSecurityGroupId":{"shape":"NonEmptyString"} + } + }, + "AwsDmsReplicationInstanceVpcSecurityGroupsList":{ + "type":"list", + "member":{"shape":"AwsDmsReplicationInstanceVpcSecurityGroupsDetails"} + }, + "AwsDmsReplicationTaskDetails":{ + "type":"structure", + "members":{ + "CdcStartPosition":{"shape":"NonEmptyString"}, + "CdcStartTime":{"shape":"NonEmptyString"}, + "CdcStopPosition":{"shape":"NonEmptyString"}, + "MigrationType":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "ResourceIdentifier":{"shape":"NonEmptyString"}, + "ReplicationInstanceArn":{"shape":"NonEmptyString"}, + "ReplicationTaskIdentifier":{"shape":"NonEmptyString"}, + "ReplicationTaskSettings":{"shape":"NonEmptyString"}, + "SourceEndpointArn":{"shape":"NonEmptyString"}, + "TableMappings":{"shape":"NonEmptyString"}, + "TargetEndpointArn":{"shape":"NonEmptyString"}, + "TaskData":{"shape":"NonEmptyString"} + } + }, "AwsDynamoDbTableAttributeDefinition":{ "type":"structure", "members":{ @@ -3859,7 +4168,8 @@ "ProxyConfiguration":{"shape":"AwsEcsTaskDefinitionProxyConfigurationDetails"}, "RequiresCompatibilities":{"shape":"NonEmptyStringList"}, "TaskRoleArn":{"shape":"NonEmptyString"}, - "Volumes":{"shape":"AwsEcsTaskDefinitionVolumesList"} + "Volumes":{"shape":"AwsEcsTaskDefinitionVolumesList"}, + "Status":{"shape":"NonEmptyString"} } }, "AwsEcsTaskDefinitionInferenceAcceleratorsDetails":{ @@ -4393,6 +4703,71 @@ "RegistryName":{"shape":"NonEmptyString"} } }, + "AwsEventsEndpointDetails":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "EndpointId":{"shape":"NonEmptyString"}, + "EndpointUrl":{"shape":"NonEmptyString"}, + "EventBuses":{"shape":"AwsEventsEndpointEventBusesList"}, + "Name":{"shape":"NonEmptyString"}, + "ReplicationConfig":{"shape":"AwsEventsEndpointReplicationConfigDetails"}, + "RoleArn":{"shape":"NonEmptyString"}, + "RoutingConfig":{"shape":"AwsEventsEndpointRoutingConfigDetails"}, + "State":{"shape":"NonEmptyString"}, + "StateReason":{"shape":"NonEmptyString"} + } + }, + "AwsEventsEndpointEventBusesDetails":{ + "type":"structure", + "members":{ + "EventBusArn":{"shape":"NonEmptyString"} + } + }, + "AwsEventsEndpointEventBusesList":{ + "type":"list", + "member":{"shape":"AwsEventsEndpointEventBusesDetails"} + }, + "AwsEventsEndpointReplicationConfigDetails":{ + "type":"structure", + "members":{ + "State":{"shape":"NonEmptyString"} + } + }, + "AwsEventsEndpointRoutingConfigDetails":{ + "type":"structure", + "members":{ + "FailoverConfig":{"shape":"AwsEventsEndpointRoutingConfigFailoverConfigDetails"} + } + }, + "AwsEventsEndpointRoutingConfigFailoverConfigDetails":{ + "type":"structure", + "members":{ + "Primary":{"shape":"AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails"}, + "Secondary":{"shape":"AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails"} + } + }, + "AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails":{ + "type":"structure", + "members":{ + "HealthCheck":{"shape":"NonEmptyString"} + } + }, + "AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails":{ + "type":"structure", + "members":{ + "Route":{"shape":"NonEmptyString"} + } + }, + "AwsEventsEventbusDetails":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Policy":{"shape":"NonEmptyString"} + } + }, "AwsGuardDutyDetectorDataSourcesCloudTrailDetails":{ "type":"structure", "members":{ @@ -4810,6 +5185,82 @@ "type":"list", "member":{"shape":"AwsMountPoint"} }, + "AwsMskClusterClusterInfoClientAuthenticationDetails":{ + "type":"structure", + "members":{ + "Sasl":{"shape":"AwsMskClusterClusterInfoClientAuthenticationSaslDetails"}, + "Unauthenticated":{"shape":"AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails"}, + "Tls":{"shape":"AwsMskClusterClusterInfoClientAuthenticationTlsDetails"} + } + }, + "AwsMskClusterClusterInfoClientAuthenticationSaslDetails":{ + "type":"structure", + "members":{ + "Iam":{"shape":"AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails"}, + "Scram":{"shape":"AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails"} + } + }, + "AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"} + } + }, + "AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"} + } + }, + "AwsMskClusterClusterInfoClientAuthenticationTlsDetails":{ + "type":"structure", + "members":{ + "CertificateAuthorityArnList":{"shape":"StringList"}, + "Enabled":{"shape":"Boolean"} + } + }, + "AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"} + } + }, + "AwsMskClusterClusterInfoDetails":{ + "type":"structure", + "members":{ + "EncryptionInfo":{"shape":"AwsMskClusterClusterInfoEncryptionInfoDetails"}, + "CurrentVersion":{"shape":"NonEmptyString"}, + "NumberOfBrokerNodes":{"shape":"Integer"}, + "ClusterName":{"shape":"NonEmptyString"}, + "ClientAuthentication":{"shape":"AwsMskClusterClusterInfoClientAuthenticationDetails"} + } + }, + "AwsMskClusterClusterInfoEncryptionInfoDetails":{ + "type":"structure", + "members":{ + "EncryptionInTransit":{"shape":"AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails"}, + "EncryptionAtRest":{"shape":"AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails"} + } + }, + "AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails":{ + "type":"structure", + "members":{ + "DataVolumeKMSKeyId":{"shape":"NonEmptyString"} + } + }, + "AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails":{ + "type":"structure", + "members":{ + "InCluster":{"shape":"Boolean"}, + "ClientBroker":{"shape":"NonEmptyString"} + } + }, + "AwsMskClusterDetails":{ + "type":"structure", + "members":{ + "ClusterInfo":{"shape":"AwsMskClusterClusterInfoDetails"} + } + }, "AwsNetworkFirewallFirewallDetails":{ "type":"structure", "members":{ @@ -5022,7 +5473,8 @@ "DbClusterOptionGroupMemberships":{"shape":"AwsRdsDbClusterOptionGroupMemberships"}, "DbClusterIdentifier":{"shape":"NonEmptyString"}, "DbClusterMembers":{"shape":"AwsRdsDbClusterMembers"}, - "IamDatabaseAuthenticationEnabled":{"shape":"Boolean"} + "IamDatabaseAuthenticationEnabled":{"shape":"Boolean"}, + "AutoMinorVersionUpgrade":{"shape":"Boolean"} } }, "AwsRdsDbClusterMember":{ @@ -5581,6 +6033,50 @@ "type":"list", "member":{"shape":"AwsRedshiftClusterVpcSecurityGroup"} }, + "AwsRoute53HostedZoneConfigDetails":{ + "type":"structure", + "members":{ + "Comment":{"shape":"NonEmptyString"} + } + }, + "AwsRoute53HostedZoneDetails":{ + "type":"structure", + "members":{ + "HostedZone":{"shape":"AwsRoute53HostedZoneObjectDetails"}, + "Vpcs":{"shape":"AwsRoute53HostedZoneVpcsList"}, + "NameServers":{"shape":"AwsRoute53HostedZoneNameServersList"}, + "QueryLoggingConfig":{"shape":"AwsRoute53QueryLoggingConfigDetails"} + } + }, + "AwsRoute53HostedZoneNameServersList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, + "AwsRoute53HostedZoneObjectDetails":{ + "type":"structure", + "members":{ + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Config":{"shape":"AwsRoute53HostedZoneConfigDetails"} + } + }, + "AwsRoute53HostedZoneVpcDetails":{ + "type":"structure", + "members":{ + "Id":{"shape":"NonEmptyString"}, + "Region":{"shape":"NonEmptyString"} + } + }, + "AwsRoute53HostedZoneVpcsList":{ + "type":"list", + "member":{"shape":"AwsRoute53HostedZoneVpcDetails"} + }, + "AwsRoute53QueryLoggingConfigDetails":{ + "type":"structure", + "members":{ + "CloudWatchLogsLogGroupArn":{"shape":"CloudWatchLogsLogGroupArnConfigDetails"} + } + }, "AwsS3AccountPublicAccessBlockDetails":{ "type":"structure", "members":{ @@ -5976,7 +6472,9 @@ "Action":{"shape":"Action"}, "FindingProviderFields":{"shape":"FindingProviderFields"}, "Sample":{"shape":"Boolean"}, - "GeneratorDetails":{"shape":"GeneratorDetails"} + "GeneratorDetails":{"shape":"GeneratorDetails"}, + "ProcessedAt":{"shape":"NonEmptyString"}, + "AwsAccountName":{"shape":"NonEmptyString"} } }, "AwsSecurityFindingFilters":{ @@ -6094,7 +6592,14 @@ "FindingProviderFieldsTypes":{"shape":"StringFilterList"}, "Sample":{"shape":"BooleanFilterList"}, "ComplianceSecurityControlId":{"shape":"StringFilterList"}, - "ComplianceAssociatedStandardsId":{"shape":"StringFilterList"} + "ComplianceAssociatedStandardsId":{"shape":"StringFilterList"}, + "VulnerabilitiesExploitAvailable":{"shape":"StringFilterList"}, + "VulnerabilitiesFixAvailable":{"shape":"StringFilterList"}, + "ComplianceSecurityControlParametersName":{"shape":"StringFilterList"}, + "ComplianceSecurityControlParametersValue":{"shape":"StringFilterList"}, + "AwsAccountName":{"shape":"StringFilterList"}, + "ResourceApplicationName":{"shape":"StringFilterList"}, + "ResourceApplicationArn":{"shape":"StringFilterList"} } }, "AwsSecurityFindingIdentifier":{ @@ -6623,6 +7128,20 @@ "UnprocessedAutomationRules":{"shape":"UnprocessedAutomationRulesList"} } }, + "BatchGetConfigurationPolicyAssociationsRequest":{ + "type":"structure", + "required":["ConfigurationPolicyAssociationIdentifiers"], + "members":{ + "ConfigurationPolicyAssociationIdentifiers":{"shape":"ConfigurationPolicyAssociationsList"} + } + }, + "BatchGetConfigurationPolicyAssociationsResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyAssociations":{"shape":"ConfigurationPolicyAssociationList"}, + "UnprocessedConfigurationPolicyAssociations":{"shape":"UnprocessedConfigurationPolicyAssociationList"} + } + }, "BatchGetSecurityControlsRequest":{ "type":"structure", "required":["SecurityControlIds"], @@ -6750,6 +7269,12 @@ } }, "Boolean":{"type":"boolean"}, + "BooleanConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"Boolean"} + } + }, "BooleanFilter":{ "type":"structure", "members":{ @@ -6813,6 +7338,14 @@ "Reason":{"shape":"NonEmptyString"} } }, + "CloudWatchLogsLogGroupArnConfigDetails":{ + "type":"structure", + "members":{ + "CloudWatchLogsLogGroupArn":{"shape":"NonEmptyString"}, + "HostedZoneId":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"} + } + }, "CodeVulnerabilitiesFilePath":{ "type":"structure", "members":{ @@ -6829,7 +7362,8 @@ "RelatedRequirements":{"shape":"RelatedRequirementsList"}, "StatusReasons":{"shape":"StatusReasonsList"}, "SecurityControlId":{"shape":"NonEmptyString"}, - "AssociatedStandards":{"shape":"AssociatedStandardsList"} + "AssociatedStandards":{"shape":"AssociatedStandardsList"}, + "SecurityControlParameters":{"shape":"SecurityControlParametersList"} } }, "ComplianceStatus":{ @@ -6841,6 +7375,73 @@ "NOT_AVAILABLE" ] }, + "ConfigurationOptions":{ + "type":"structure", + "members":{ + "Integer":{"shape":"IntegerConfigurationOptions"}, + "IntegerList":{"shape":"IntegerListConfigurationOptions"}, + "Double":{"shape":"DoubleConfigurationOptions"}, + "String":{"shape":"StringConfigurationOptions"}, + "StringList":{"shape":"StringListConfigurationOptions"}, + "Boolean":{"shape":"BooleanConfigurationOptions"}, + "Enum":{"shape":"EnumConfigurationOptions"}, + "EnumList":{"shape":"EnumListConfigurationOptions"} + }, + "union":true + }, + "ConfigurationPolicyAssociation":{ + "type":"structure", + "members":{ + "Target":{"shape":"Target"} + } + }, + "ConfigurationPolicyAssociationList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicyAssociationSummary"} + }, + "ConfigurationPolicyAssociationStatus":{ + "type":"string", + "enum":[ + "PENDING", + "SUCCESS", + "FAILED" + ] + }, + "ConfigurationPolicyAssociationSummary":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "TargetId":{"shape":"NonEmptyString"}, + "TargetType":{"shape":"TargetType"}, + "AssociationType":{"shape":"AssociationType"}, + "UpdatedAt":{"shape":"Timestamp"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"}, + "AssociationStatusMessage":{"shape":"NonEmptyString"} + } + }, + "ConfigurationPolicyAssociationSummaryList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicyAssociationSummary"} + }, + "ConfigurationPolicyAssociationsList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicyAssociation"} + }, + "ConfigurationPolicySummary":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "ServiceEnabled":{"shape":"Boolean"} + } + }, + "ConfigurationPolicySummaryList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicySummary"} + }, "ContainerDetails":{ "type":"structure", "members":{ @@ -6920,6 +7521,31 @@ "RuleArn":{"shape":"NonEmptyString"} } }, + "CreateConfigurationPolicyRequest":{ + "type":"structure", + "required":[ + "Name", + "ConfigurationPolicy" + ], + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "ConfigurationPolicy":{"shape":"Policy"}, + "Tags":{"shape":"TagMap"} + } + }, + "CreateConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "CreatedAt":{"shape":"Timestamp"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, "CreateFindingAggregatorRequest":{ "type":"structure", "required":["RegionLinkingMode"], @@ -6995,6 +7621,10 @@ "TotalCount":{"shape":"Long"} } }, + "CustomizableProperties":{ + "type":"list", + "member":{"shape":"SecurityControlProperty"} + }, "Cvss":{ "type":"structure", "members":{ @@ -7070,6 +7700,22 @@ "ActionTargetArn":{"shape":"NonEmptyString"} } }, + "DeleteConfigurationPolicyRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"Identifier" + } + } + }, + "DeleteConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteFindingAggregatorRequest":{ "type":"structure", "required":["FindingAggregatorArn"], @@ -7175,7 +7821,8 @@ "members":{ "AutoEnable":{"shape":"Boolean"}, "MemberAccountLimitReached":{"shape":"Boolean"}, - "AutoEnableStandards":{"shape":"AutoEnableStandards"} + "AutoEnableStandards":{"shape":"AutoEnableStandards"}, + "OrganizationConfiguration":{"shape":"OrganizationConfiguration"} } }, "DescribeProductsRequest":{ @@ -7294,6 +7941,10 @@ "members":{ } }, + "DisabledSecurityControlIdentifierList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, "DisassociateFromAdministratorAccountRequest":{ "type":"structure", "members":{ @@ -7335,6 +7986,14 @@ } }, "Double":{"type":"double"}, + "DoubleConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"Double"}, + "Min":{"shape":"Double"}, + "Max":{"shape":"Double"} + } + }, "EnableImportFindingsForProductRequest":{ "type":"structure", "required":["ProductArn"], @@ -7373,6 +8032,29 @@ "members":{ } }, + "EnabledSecurityControlIdentifierList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, + "EnabledStandardIdentifierList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, + "EnumConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"NonEmptyString"}, + "AllowedValues":{"shape":"StringList"} + } + }, + "EnumListConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"StringList"}, + "MaxItems":{"shape":"Integer"}, + "AllowedValues":{"shape":"StringList"} + } + }, "FieldMap":{ "type":"map", "key":{"shape":"NonEmptyString"}, @@ -7527,6 +8209,48 @@ "Administrator":{"shape":"Invitation"} } }, + "GetConfigurationPolicyAssociationRequest":{ + "type":"structure", + "required":["Target"], + "members":{ + "Target":{"shape":"Target"} + } + }, + "GetConfigurationPolicyAssociationResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "TargetId":{"shape":"NonEmptyString"}, + "TargetType":{"shape":"TargetType"}, + "AssociationType":{"shape":"AssociationType"}, + "UpdatedAt":{"shape":"Timestamp"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"}, + "AssociationStatusMessage":{"shape":"NonEmptyString"} + } + }, + "GetConfigurationPolicyRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"Identifier" + } + } + }, + "GetConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "CreatedAt":{"shape":"Timestamp"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, "GetEnabledStandardsRequest":{ "type":"structure", "members":{ @@ -7667,6 +8391,24 @@ "UnprocessedAccounts":{"shape":"ResultList"} } }, + "GetSecurityControlDefinitionRequest":{ + "type":"structure", + "required":["SecurityControlId"], + "members":{ + "SecurityControlId":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"SecurityControlId" + } + } + }, + "GetSecurityControlDefinitionResponse":{ + "type":"structure", + "required":["SecurityControlDefinition"], + "members":{ + "SecurityControlDefinition":{"shape":"SecurityControlDefinition"} + } + }, "IcmpTypeCode":{ "type":"structure", "members":{ @@ -7739,10 +8481,27 @@ } }, "Integer":{"type":"integer"}, + "IntegerConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"Integer"}, + "Min":{"shape":"Integer"}, + "Max":{"shape":"Integer"} + } + }, "IntegerList":{ "type":"list", "member":{"shape":"Integer"} }, + "IntegerListConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"IntegerList"}, + "Min":{"shape":"Integer"}, + "Max":{"shape":"Integer"}, + "MaxItems":{"shape":"Integer"} + } + }, "IntegrationType":{ "type":"string", "enum":[ @@ -7880,6 +8639,43 @@ "NextToken":{"shape":"NextToken"} } }, + "ListConfigurationPoliciesRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListConfigurationPoliciesResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicySummaries":{"shape":"ConfigurationPolicySummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ListConfigurationPolicyAssociationsRequest":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"NextToken"}, + "MaxResults":{"shape":"MaxResults"}, + "Filters":{"shape":"AssociationFilters"} + } + }, + "ListConfigurationPolicyAssociationsResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyAssociationSummaries":{"shape":"ConfigurationPolicyAssociationSummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListEnabledProductsForImportRequest":{ "type":"structure", "members":{ @@ -8266,7 +9062,9 @@ "members":{ "Gte":{"shape":"Double"}, "Lte":{"shape":"Double"}, - "Eq":{"shape":"Double"} + "Eq":{"shape":"Double"}, + "Gt":{"shape":"Double"}, + "Lt":{"shape":"Double"} } }, "NumberFilterList":{ @@ -8283,6 +9081,29 @@ "Cells":{"shape":"Cells"} } }, + "OrganizationConfiguration":{ + "type":"structure", + "members":{ + "ConfigurationType":{"shape":"OrganizationConfigurationConfigurationType"}, + "Status":{"shape":"OrganizationConfigurationStatus"}, + "StatusMessage":{"shape":"NonEmptyString"} + } + }, + "OrganizationConfigurationConfigurationType":{ + "type":"string", + "enum":[ + "CENTRAL", + "LOCAL" + ] + }, + "OrganizationConfigurationStatus":{ + "type":"string", + "enum":[ + "PENDING", + "ENABLED", + "FAILED" + ] + }, "Page":{ "type":"structure", "members":{ @@ -8295,6 +9116,56 @@ "type":"list", "member":{"shape":"Page"} }, + "ParameterConfiguration":{ + "type":"structure", + "required":["ValueType"], + "members":{ + "ValueType":{"shape":"ParameterValueType"}, + "Value":{"shape":"ParameterValue"} + } + }, + "ParameterDefinition":{ + "type":"structure", + "required":[ + "Description", + "ConfigurationOptions" + ], + "members":{ + "Description":{"shape":"NonEmptyString"}, + "ConfigurationOptions":{"shape":"ConfigurationOptions"} + } + }, + "ParameterDefinitions":{ + "type":"map", + "key":{"shape":"NonEmptyString"}, + "value":{"shape":"ParameterDefinition"} + }, + "ParameterValue":{ + "type":"structure", + "members":{ + "Integer":{"shape":"Integer"}, + "IntegerList":{"shape":"IntegerList"}, + "Double":{"shape":"Double"}, + "String":{"shape":"NonEmptyString"}, + "StringList":{"shape":"StringList"}, + "Boolean":{"shape":"Boolean"}, + "Enum":{"shape":"NonEmptyString"}, + "EnumList":{"shape":"StringList"} + }, + "union":true + }, + "ParameterValueType":{ + "type":"string", + "enum":[ + "DEFAULT", + "CUSTOM" + ] + }, + "Parameters":{ + "type":"map", + "key":{"shape":"NonEmptyString"}, + "value":{"shape":"ParameterConfiguration"} + }, "Partition":{ "type":"string", "enum":[ @@ -8320,6 +9191,13 @@ "Operation":{"shape":"NonEmptyString"} } }, + "Policy":{ + "type":"structure", + "members":{ + "SecurityHub":{"shape":"SecurityHubPolicy"} + }, + "union":true + }, "PortProbeAction":{ "type":"structure", "members":{ @@ -8489,7 +9367,9 @@ "ResourceRole":{"shape":"NonEmptyString"}, "Tags":{"shape":"FieldMap"}, "DataClassification":{"shape":"DataClassificationDetails"}, - "Details":{"shape":"ResourceDetails"} + "Details":{"shape":"ResourceDetails"}, + "ApplicationName":{"shape":"NonEmptyString"}, + "ApplicationArn":{"shape":"NonEmptyString"} } }, "ResourceArn":{ @@ -8597,9 +9477,25 @@ "AwsEventSchemasRegistry":{"shape":"AwsEventSchemasRegistryDetails"}, "AwsGuardDutyDetector":{"shape":"AwsGuardDutyDetectorDetails"}, "AwsStepFunctionStateMachine":{"shape":"AwsStepFunctionStateMachineDetails"}, - "AwsAthenaWorkGroup":{"shape":"AwsAthenaWorkGroupDetails"} + "AwsAthenaWorkGroup":{"shape":"AwsAthenaWorkGroupDetails"}, + "AwsEventsEventbus":{"shape":"AwsEventsEventbusDetails"}, + "AwsDmsEndpoint":{"shape":"AwsDmsEndpointDetails"}, + "AwsEventsEndpoint":{"shape":"AwsEventsEndpointDetails"}, + "AwsDmsReplicationTask":{"shape":"AwsDmsReplicationTaskDetails"}, + "AwsDmsReplicationInstance":{"shape":"AwsDmsReplicationInstanceDetails"}, + "AwsRoute53HostedZone":{"shape":"AwsRoute53HostedZoneDetails"}, + "AwsMskCluster":{"shape":"AwsMskClusterDetails"} } }, + "ResourceInUseException":{ + "type":"structure", + "members":{ + "Message":{"shape":"NonEmptyString"}, + "Code":{"shape":"NonEmptyString"} + }, + "error":{"httpStatusCode":400}, + "exception":true + }, "ResourceList":{ "type":"list", "member":{"shape":"Resource"} @@ -8864,9 +9760,23 @@ "Description":{"shape":"NonEmptyString"}, "RemediationUrl":{"shape":"NonEmptyString"}, "SeverityRating":{"shape":"SeverityRating"}, - "SecurityControlStatus":{"shape":"ControlStatus"} + "SecurityControlStatus":{"shape":"ControlStatus"}, + "UpdateStatus":{"shape":"UpdateStatus"}, + "Parameters":{"shape":"Parameters"}, + "LastUpdateReason":{"shape":"AlphaNumericNonEmptyString"} } }, + "SecurityControlCustomParameter":{ + "type":"structure", + "members":{ + "SecurityControlId":{"shape":"NonEmptyString"}, + "Parameters":{"shape":"Parameters"} + } + }, + "SecurityControlCustomParametersList":{ + "type":"list", + "member":{"shape":"SecurityControlCustomParameter"} + }, "SecurityControlDefinition":{ "type":"structure", "required":[ @@ -8883,21 +9793,54 @@ "Description":{"shape":"NonEmptyString"}, "RemediationUrl":{"shape":"NonEmptyString"}, "SeverityRating":{"shape":"SeverityRating"}, - "CurrentRegionAvailability":{"shape":"RegionAvailabilityStatus"} + "CurrentRegionAvailability":{"shape":"RegionAvailabilityStatus"}, + "CustomizableProperties":{"shape":"CustomizableProperties"}, + "ParameterDefinitions":{"shape":"ParameterDefinitions"} } }, "SecurityControlDefinitions":{ "type":"list", "member":{"shape":"SecurityControlDefinition"} }, + "SecurityControlParameter":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Value":{"shape":"TypeList"} + } + }, + "SecurityControlParametersList":{ + "type":"list", + "member":{"shape":"SecurityControlParameter"} + }, + "SecurityControlProperty":{ + "type":"string", + "enum":["Parameters"] + }, "SecurityControls":{ "type":"list", "member":{"shape":"SecurityControl"} }, + "SecurityControlsConfiguration":{ + "type":"structure", + "members":{ + "EnabledSecurityControlIdentifiers":{"shape":"EnabledSecurityControlIdentifierList"}, + "DisabledSecurityControlIdentifiers":{"shape":"DisabledSecurityControlIdentifierList"}, + "SecurityControlCustomParameters":{"shape":"SecurityControlCustomParametersList"} + } + }, "SecurityGroups":{ "type":"list", "member":{"shape":"NonEmptyString"} }, + "SecurityHubPolicy":{ + "type":"structure", + "members":{ + "ServiceEnabled":{"shape":"Boolean"}, + "EnabledStandardIdentifiers":{"shape":"EnabledStandardIdentifierList"}, + "SecurityControlsConfiguration":{"shape":"SecurityControlsConfiguration"} + } + }, "SensitiveDataDetections":{ "type":"structure", "members":{ @@ -9185,6 +10128,42 @@ "type":"list", "member":{"shape":"StandardsSubscription"} }, + "StartConfigurationPolicyAssociationRequest":{ + "type":"structure", + "required":[ + "ConfigurationPolicyIdentifier", + "Target" + ], + "members":{ + "ConfigurationPolicyIdentifier":{"shape":"NonEmptyString"}, + "Target":{"shape":"Target"} + } + }, + "StartConfigurationPolicyAssociationResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "TargetId":{"shape":"NonEmptyString"}, + "TargetType":{"shape":"TargetType"}, + "AssociationType":{"shape":"AssociationType"}, + "UpdatedAt":{"shape":"Timestamp"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"}, + "AssociationStatusMessage":{"shape":"NonEmptyString"} + } + }, + "StartConfigurationPolicyDisassociationRequest":{ + "type":"structure", + "required":["ConfigurationPolicyIdentifier"], + "members":{ + "Target":{"shape":"Target"}, + "ConfigurationPolicyIdentifier":{"shape":"NonEmptyString"} + } + }, + "StartConfigurationPolicyDisassociationResponse":{ + "type":"structure", + "members":{ + } + }, "StatelessCustomActionDefinition":{ "type":"structure", "members":{ @@ -9226,6 +10205,14 @@ "type":"list", "member":{"shape":"StatusReason"} }, + "StringConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"NonEmptyString"}, + "Re2Expression":{"shape":"NonEmptyString"}, + "ExpressionDescription":{"shape":"NonEmptyString"} + } + }, "StringFilter":{ "type":"structure", "members":{ @@ -9252,6 +10239,15 @@ "type":"list", "member":{"shape":"NonEmptyString"} }, + "StringListConfigurationOptions":{ + "type":"structure", + "members":{ + "DefaultValue":{"shape":"StringList"}, + "Re2Expression":{"shape":"NonEmptyString"}, + "MaxItems":{"shape":"Integer"}, + "ExpressionDescription":{"shape":"NonEmptyString"} + } + }, "TagKey":{ "type":"string", "max":128, @@ -9295,6 +10291,22 @@ "type":"string", "max":256 }, + "Target":{ + "type":"structure", + "members":{ + "AccountId":{"shape":"NonEmptyString"}, + "OrganizationalUnitId":{"shape":"NonEmptyString"}, + "RootId":{"shape":"NonEmptyString"} + }, + "union":true + }, + "TargetType":{ + "type":"string", + "enum":[ + "ACCOUNT", + "ORGANIZATIONAL_UNIT" + ] + }, "Threat":{ "type":"structure", "members":{ @@ -9370,6 +10382,18 @@ "type":"list", "member":{"shape":"UnprocessedAutomationRule"} }, + "UnprocessedConfigurationPolicyAssociation":{ + "type":"structure", + "members":{ + "ConfigurationPolicyAssociationIdentifiers":{"shape":"ConfigurationPolicyAssociation"}, + "ErrorCode":{"shape":"NonEmptyString"}, + "ErrorReason":{"shape":"NonEmptyString"} + } + }, + "UnprocessedConfigurationPolicyAssociationList":{ + "type":"list", + "member":{"shape":"UnprocessedConfigurationPolicyAssociation"} + }, "UnprocessedErrorCode":{ "type":"string", "enum":[ @@ -9489,6 +10513,33 @@ "max":100, "min":1 }, + "UpdateConfigurationPolicyRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"Identifier" + }, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedReason":{"shape":"NonEmptyString"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, + "UpdateConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "CreatedAt":{"shape":"Timestamp"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, "UpdateFindingAggregatorRequest":{ "type":"structure", "required":[ @@ -9548,7 +10599,8 @@ "required":["AutoEnable"], "members":{ "AutoEnable":{"shape":"Boolean"}, - "AutoEnableStandards":{"shape":"AutoEnableStandards"} + "AutoEnableStandards":{"shape":"AutoEnableStandards"}, + "OrganizationConfiguration":{"shape":"OrganizationConfiguration"} } }, "UpdateOrganizationConfigurationResponse":{ @@ -9556,6 +10608,23 @@ "members":{ } }, + "UpdateSecurityControlRequest":{ + "type":"structure", + "required":[ + "SecurityControlId", + "Parameters" + ], + "members":{ + "SecurityControlId":{"shape":"NonEmptyString"}, + "Parameters":{"shape":"Parameters"}, + "LastUpdateReason":{"shape":"AlphaNumericNonEmptyString"} + } + }, + "UpdateSecurityControlResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateSecurityHubConfigurationRequest":{ "type":"structure", "members":{ @@ -9586,6 +10655,13 @@ "members":{ } }, + "UpdateStatus":{ + "type":"string", + "enum":[ + "READY", + "UPDATING" + ] + }, "VerificationState":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,6 +8,7 @@ "BatchDisableStandards": "

Disables the standards specified by the provided StandardsSubscriptionArns.

For more information, see Security Standards section of the Security Hub User Guide.

", "BatchEnableStandards": "

Enables the standards specified by the provided StandardsArn. To obtain the ARN for a standard, use the DescribeStandards operation.

For more information, see the Security Standards section of the Security Hub User Guide.

", "BatchGetAutomationRules": "

Retrieves a list of details for automation rules based on rule Amazon Resource Names (ARNs).

", + "BatchGetConfigurationPolicyAssociations": "

Returns associations between an Security Hub configuration and a batch of target accounts, organizational units, or the root. Only the Security Hub delegated administrator can invoke this operation from the home Region. A configuration can refer to a configuration policy or to a self-managed configuration.

", "BatchGetSecurityControls": "

Provides details about a batch of security controls for the current Amazon Web Services account and Amazon Web Services Region.

", "BatchGetStandardsControlAssociations": "

For a batch of security controls and standards, identifies whether each control is currently enabled or disabled in a standard.

", "BatchImportFindings": "

Imports security findings generated by a finding provider into Security Hub. This action is requested by the finding provider to import its findings into Security Hub.

BatchImportFindings must be called by one of the following:

  • The Amazon Web Services account that is associated with a finding if you are using the default product ARN or are a partner sending findings from within a customer's Amazon Web Services account. In these cases, the identifier of the account that you are calling BatchImportFindings from needs to be the same as the AwsAccountId attribute for the finding.

  • An Amazon Web Services account that Security Hub has allow-listed for an official partner integration. In this case, you can call BatchImportFindings from the allow-listed account and send findings from different customer accounts in the same batch.

The maximum allowed size for a finding is 240 Kb. An error is returned for any finding larger than 240 Kb.

After a finding is created, BatchImportFindings cannot be used to update the following finding fields and objects, which Security Hub customers use to manage their investigation workflow.

  • Note

  • UserDefinedFields

  • VerificationState

  • Workflow

Finding providers also should not use BatchImportFindings to update the following attributes.

  • Confidence

  • Criticality

  • RelatedFindings

  • Severity

  • Types

Instead, finding providers use FindingProviderFields to provide values for these attributes.

", @@ -16,18 +17,20 @@ "BatchUpdateStandardsControlAssociations": "

For a batch of security controls and standards, this operation updates the enablement status of a control in a standard.

", "CreateActionTarget": "

Creates a custom action target in Security Hub.

You can use custom actions on findings and insights in Security Hub to trigger target actions in Amazon CloudWatch Events.

", "CreateAutomationRule": "

Creates an automation rule based on input parameters.

", + "CreateConfigurationPolicy": "

Creates a configuration policy with the defined configuration. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "CreateFindingAggregator": "

Used to enable finding aggregation. Must be called from the aggregation Region.

For more details about cross-Region replication, see Configuring finding aggregation in the Security Hub User Guide.

", "CreateInsight": "

Creates a custom insight in Security Hub. An insight is a consolidation of findings that relate to a security issue that requires attention or remediation.

To group the related findings in the insight, use the GroupByAttribute.

", "CreateMembers": "

Creates a member association in Security Hub between the specified accounts and the account used to make the request, which is the administrator account. If you are integrated with Organizations, then the administrator account is designated by the organization management account.

CreateMembers is always used to add accounts that are not organization members.

For accounts that are managed using Organizations, CreateMembers is only used in the following cases:

  • Security Hub is not configured to automatically add new organization accounts.

  • The account was disassociated or deleted in Security Hub.

This action can only be used by an account that has Security Hub enabled. To enable Security Hub, you can use the EnableSecurityHub operation.

For accounts that are not organization members, you create the account association and then send an invitation to the member account. To send the invitation, you use the InviteMembers operation. If the account owner accepts the invitation, the account becomes a member account in Security Hub.

Accounts that are managed using Organizations do not receive an invitation. They automatically become a member account in Security Hub.

  • If the organization account does not have Security Hub enabled, then Security Hub and the default standards are automatically enabled. Note that Security Hub cannot be enabled automatically for the organization management account. The organization management account must enable Security Hub before the administrator account enables it as a member account.

  • For organization accounts that already have Security Hub enabled, Security Hub does not make any other changes to those accounts. It does not change their enabled standards or controls.

A permissions policy is added that permits the administrator account to view the findings generated in the member account.

To remove the association between the administrator and member accounts, use the DisassociateFromMasterAccount or DisassociateMembers operation.

", "DeclineInvitations": "

Declines invitations to become a member account.

A prospective member account uses this operation to decline an invitation to become a member.

This operation is only called by member accounts that aren't part of an organization. Organization accounts don't receive invitations.

", "DeleteActionTarget": "

Deletes a custom action target from Security Hub.

Deleting a custom action target does not affect any findings or insights that were already sent to Amazon CloudWatch Events using the custom action.

", + "DeleteConfigurationPolicy": "

Deletes a configuration policy. Only the Security Hub delegated administrator can invoke this operation from the home Region. For the deletion to succeed, you must first disassociate a configuration policy from target accounts, organizational units, or the root by invoking the StartConfigurationPolicyDisassociation operation.

", "DeleteFindingAggregator": "

Deletes a finding aggregator. When you delete the finding aggregator, you stop finding aggregation.

When you stop finding aggregation, findings that were already aggregated to the aggregation Region are still visible from the aggregation Region. New findings and finding updates are not aggregated.

", "DeleteInsight": "

Deletes the insight specified by the InsightArn.

", "DeleteInvitations": "

Deletes invitations received by the Amazon Web Services account to become a member account.

A Security Hub administrator account can use this operation to delete invitations sent to one or more member accounts.

This operation is only used to delete invitations that are sent to member accounts that aren't part of an organization. Organization accounts don't receive invitations.

", "DeleteMembers": "

Deletes the specified member accounts from Security Hub.

You can invoke this API only to delete accounts that became members through invitation. You can't invoke this API to delete accounts that belong to an Organizations organization.

", "DescribeActionTargets": "

Returns a list of the custom action targets in Security Hub in your account.

", "DescribeHub": "

Returns details about the Hub resource in your account, including the HubArn and the time when you enabled Security Hub.

", - "DescribeOrganizationConfiguration": "

Returns information about the Organizations configuration for Security Hub. Can only be called from a Security Hub administrator account.

", + "DescribeOrganizationConfiguration": "

Returns information about the way your organization is configured in Security Hub. Only the Security Hub administrator account can invoke this operation.

", "DescribeProducts": "

Returns information about product integrations in Security Hub.

You can optionally provide an integration ARN. If you provide an integration ARN, then the results only include that integration.

If you do not provide an integration ARN, then the results include all of the available product integrations.

", "DescribeStandards": "

Returns a list of the available standards in Security Hub.

For each standard, the results include the standard ARN, the name, and a description.

", "DescribeStandardsControls": "

Returns a list of security standards controls.

For each control, the results include information about whether it is currently enabled, the severity, and a link to remediation information.

", @@ -41,6 +44,8 @@ "EnableOrganizationAdminAccount": "

Designates the Security Hub administrator account for an organization. Can only be called by the organization management account.

", "EnableSecurityHub": "

Enables Security Hub for your account in the current Region or the Region you specify in the request.

When you enable Security Hub, you grant to Security Hub the permissions necessary to gather findings from other services that are integrated with Security Hub.

When you use the EnableSecurityHub operation to enable Security Hub, you also automatically enable the following standards:

  • Center for Internet Security (CIS) Amazon Web Services Foundations Benchmark v1.2.0

  • Amazon Web Services Foundational Security Best Practices

Other standards are not automatically enabled.

To opt out of automatically enabled standards, set EnableDefaultStandards to false.

After you enable Security Hub, to enable a standard, use the BatchEnableStandards operation. To disable a standard, use the BatchDisableStandards operation.

To learn more, see the setup information in the Security Hub User Guide.

", "GetAdministratorAccount": "

Provides the details for the Security Hub administrator account for the current member account.

Can be used by both member accounts that are managed using Organizations and accounts that were invited manually.

", + "GetConfigurationPolicy": "

Provides information about a configuration policy. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", + "GetConfigurationPolicyAssociation": "

Returns the association between a configuration and a target account, organizational unit, or the root. The configuration can be a configuration policy or self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "GetEnabledStandards": "

Returns a list of the standards that are currently enabled.

", "GetFindingAggregator": "

Returns the current finding aggregation configuration.

", "GetFindingHistory": "

Returns history for a Security Hub finding in the last 90 days. The history includes changes made to any fields in the Amazon Web Services Security Finding Format (ASFF).

", @@ -50,8 +55,11 @@ "GetInvitationsCount": "

Returns the count of all Security Hub membership invitations that were sent to the current member account, not including the currently accepted invitation.

", "GetMasterAccount": "

This method is deprecated. Instead, use GetAdministratorAccount.

The Security Hub console continues to use GetMasterAccount. It will eventually change to use GetAdministratorAccount. Any IAM policies that specifically control access to this function must continue to use GetMasterAccount. You should also add GetAdministratorAccount to your policies to ensure that the correct permissions are in place after the console begins to use GetAdministratorAccount.

Provides the details for the Security Hub administrator account for the current member account.

Can be used by both member accounts that are managed using Organizations and accounts that were invited manually.

", "GetMembers": "

Returns the details for the Security Hub member accounts for the specified account IDs.

An administrator account can be either the delegated Security Hub administrator account for an organization or an administrator account that enabled Security Hub manually.

The results include both member accounts that are managed using Organizations and accounts that were invited manually.

", + "GetSecurityControlDefinition": "

Retrieves the definition of a security control. The definition includes the control title, description, Region availability, parameter definitions, and other details.

", "InviteMembers": "

Invites other Amazon Web Services accounts to become member accounts for the Security Hub administrator account that the invitation is sent from.

This operation is only used to invite accounts that do not belong to an organization. Organization accounts do not receive invitations.

Before you can use this action to invite a member, you must first use the CreateMembers action to create the member account in Security Hub.

When the account owner enables Security Hub and accepts the invitation to become a member account, the administrator account can view the findings generated from the member account.

", "ListAutomationRules": "

A list of automation rules and their metadata for the calling account.

", + "ListConfigurationPolicies": "

Lists the configuration policies that the Security Hub delegated administrator has created for your organization. Only the delegated administrator can invoke this operation from the home Region.

", + "ListConfigurationPolicyAssociations": "

Provides information about the associations for your configuration policies and self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "ListEnabledProductsForImport": "

Lists all findings-generating solutions (products) that you are subscribed to receive findings from in Security Hub.

", "ListFindingAggregators": "

If finding aggregation is enabled, then ListFindingAggregators returns the ARN of the finding aggregator. You can run this operation from any Region.

", "ListInvitations": "

Lists all Security Hub membership invitations that were sent to the current Amazon Web Services account.

This operation is only used by accounts that are managed by invitation. Accounts that are managed using the integration with Organizations do not receive invitations.

", @@ -60,13 +68,17 @@ "ListSecurityControlDefinitions": "

Lists all of the security controls that apply to a specified standard.

", "ListStandardsControlAssociations": "

Specifies whether a control is currently enabled or disabled in each enabled standard in the calling account.

", "ListTagsForResource": "

Returns a list of tags associated with a resource.

", + "StartConfigurationPolicyAssociation": "

Associates a target account, organizational unit, or the root with a specified configuration. The target can be associated with a configuration policy or self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", + "StartConfigurationPolicyDisassociation": "

Disassociates a target account, organizational unit, or the root from a specified configuration. When you disassociate a configuration from its target, the target inherits the configuration of the closest parent. If there’s no configuration to inherit, the target retains its settings but becomes a self-managed account. A target can be disassociated from a configuration policy or self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "TagResource": "

Adds one or more tags to a resource.

", "UntagResource": "

Removes one or more tags from a resource.

", "UpdateActionTarget": "

Updates the name and description of a custom action target in Security Hub.

", + "UpdateConfigurationPolicy": "

Updates a configuration policy. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "UpdateFindingAggregator": "

Updates the finding aggregation configuration. Used to update the Region linking mode and the list of included or excluded Regions. You cannot use UpdateFindingAggregator to change the aggregation Region.

You must run UpdateFindingAggregator from the current aggregation Region.

", "UpdateFindings": "

UpdateFindings is deprecated. Instead of UpdateFindings, use BatchUpdateFindings.

Updates the Note and RecordState of the Security Hub-aggregated findings that the filter attributes specify. Any member account that can view the finding also sees the update to the finding.

", "UpdateInsight": "

Updates the Security Hub insight identified by the specified insight ARN.

", - "UpdateOrganizationConfiguration": "

Used to update the configuration related to Organizations. Can only be called from a Security Hub administrator account.

", + "UpdateOrganizationConfiguration": "

Updates the configuration of your organization in Security Hub. Only the Security Hub administrator account can invoke this operation.

", + "UpdateSecurityControl": "

Updates the properties of a security control.

", "UpdateSecurityHubConfiguration": "

Updates configuration options for Security Hub.

", "UpdateStandardsControl": "

Used to control whether an individual security standard control is enabled or disabled.

" }, @@ -217,6 +229,13 @@ "ListOrganizationAdminAccountsRequest$MaxResults": "

The maximum number of items to return in the response.

" } }, + "AlphaNumericNonEmptyString": { + "base": null, + "refs": { + "SecurityControl$LastUpdateReason": "

The most recent reason for updating the customizable properties of a security control. This differs from the UpdateReason field of the BatchUpdateStandardsControlAssociations API, which tracks the reason for updating the enablement status of a control. This field accepts alphanumeric characters in addition to white spaces, dashes, and underscores.

", + "UpdateSecurityControlRequest$LastUpdateReason": "

The most recent reason for updating the properties of the security control. This field accepts alphanumeric characters in addition to white spaces, dashes, and underscores.

" + } + }, "ArnList": { "base": null, "refs": { @@ -236,6 +255,12 @@ "Compliance$AssociatedStandards": "

The enabled security standards in which a security control is currently enabled.

" } }, + "AssociationFilters": { + "base": "

Options for filtering the ListConfigurationPolicyAssociations response. You can filter by the Amazon Resource Name (ARN) or universally unique identifier (UUID) of a configuration policy, AssociationType, or AssociationStatus.

", + "refs": { + "ListConfigurationPolicyAssociationsRequest$Filters": "

Options for filtering the ListConfigurationPolicyAssociations response. You can filter by the Amazon Resource Name (ARN) or universally unique identifier (UUID) of a configuration, AssociationType, or AssociationStatus.

" + } + }, "AssociationSetDetails": { "base": "

The associations between a route table and one or more subnets or a gateway.

", "refs": { @@ -262,11 +287,20 @@ "StandardsControlAssociationUpdate$AssociationStatus": "

The desired enablement status of the control in the standard.

" } }, + "AssociationType": { + "base": null, + "refs": { + "AssociationFilters$AssociationType": "

Indicates whether the association between a target and a configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

", + "ConfigurationPolicyAssociationSummary$AssociationType": "

Indicates whether the association between the specified target and the configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

", + "GetConfigurationPolicyAssociationResponse$AssociationType": "

Indicates whether the association between the specified target and the configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

", + "StartConfigurationPolicyAssociationResponse$AssociationType": "

Indicates whether the association between the specified target and the configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

" + } + }, "AutoEnableStandards": { "base": null, "refs": { - "DescribeOrganizationConfigurationResponse$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards for new member accounts in the organization.

The default value of this parameter is equal to DEFAULT.

If equal to DEFAULT, then Security Hub default standards are automatically enabled for new member accounts. If equal to NONE, then default standards are not automatically enabled for new member accounts.

", - "UpdateOrganizationConfigurationRequest$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards for new member accounts in the organization.

By default, this parameter is equal to DEFAULT, and new member accounts are automatically enabled with default Security Hub standards.

To opt out of enabling default standards for new member accounts, set this parameter equal to NONE.

" + "DescribeOrganizationConfigurationResponse$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards in new member accounts when they join the organization.

If equal to DEFAULT, then Security Hub default standards are automatically enabled for new member accounts. If equal to NONE, then default standards are not automatically enabled for new member accounts. The default value of this parameter is equal to DEFAULT.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to NONE and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which specific security standards are enabled and associate the policy with new organization accounts.

", + "UpdateOrganizationConfigurationRequest$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards in new member accounts when they join the organization.

The default value of this parameter is equal to DEFAULT.

If equal to DEFAULT, then Security Hub default standards are automatically enabled for new member accounts. If equal to NONE, then default standards are not automatically enabled for new member accounts.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to NONE and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which specific security standards are enabled and associate the policy with new organization accounts.

" } }, "AutomationRulesAction": { @@ -882,7 +916,7 @@ } }, "AwsCloudFrontDistributionOriginItem": { - "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.

", + "base": "

A complex type that describes the Amazon S3 bucket, HTTP server (for example, a web server), Elemental MediaStore, or other server from which CloudFront gets your files.

", "refs": { "AwsCloudFrontDistributionOriginItemList$member": null } @@ -1020,6 +1054,42 @@ "AwsApiGatewayV2ApiDetails$CorsConfiguration": "

A cross-origin resource sharing (CORS) configuration. Supported only for HTTP APIs.

" } }, + "AwsDmsEndpointDetails": { + "base": "

Provides details about an Database Migration Service (DMS) endpoint. An endpoint provides connection, data store type, and location information about your data store.

", + "refs": { + "ResourceDetails$AwsDmsEndpoint": "

Provides details about an Database Migration Service (DMS) endpoint. An endpoint provides connection, data store type, and location information about your data store.

" + } + }, + "AwsDmsReplicationInstanceDetails": { + "base": "

Provides details about an Database Migration Service (DMS) replication instance. DMS uses a replication instance to connect to your source data store, read the source data, and format the data for consumption by the target data store.

", + "refs": { + "ResourceDetails$AwsDmsReplicationInstance": "

Provides details about an DMS replication instance. DMS uses a replication instance to connect to your source data store, read the source data, and format the data for consumption by the target data store.

" + } + }, + "AwsDmsReplicationInstanceReplicationSubnetGroupDetails": { + "base": "

Provides details about the replication subnet group.

", + "refs": { + "AwsDmsReplicationInstanceDetails$ReplicationSubnetGroup": "

The subnet group for the replication instance.

" + } + }, + "AwsDmsReplicationInstanceVpcSecurityGroupsDetails": { + "base": "

Provides details about the virtual private cloud (VPC) security group that’s associated with the replication instance.

", + "refs": { + "AwsDmsReplicationInstanceVpcSecurityGroupsList$member": null + } + }, + "AwsDmsReplicationInstanceVpcSecurityGroupsList": { + "base": null, + "refs": { + "AwsDmsReplicationInstanceDetails$VpcSecurityGroups": "

The virtual private cloud (VPC) security group for the replication instance.

" + } + }, + "AwsDmsReplicationTaskDetails": { + "base": "

Provides details about an Database Migration Service (DMS) replication task. A replication task moves a set of data from the source endpoint to the target endpoint.

", + "refs": { + "ResourceDetails$AwsDmsReplicationTask": "

Provides details about an DMS replication task. A replication task moves a set of data from the source endpoint to the target endpoint.

" + } + }, "AwsDynamoDbTableAttributeDefinition": { "base": "

Contains a definition of an attribute for the table.

", "refs": { @@ -2530,6 +2600,60 @@ "ResourceDetails$AwsEventSchemasRegistry": "

A schema defines the structure of events that are sent to Amazon EventBridge. Schema registries are containers for schemas. They collect and organize schemas so that your schemas are in logical groups.

" } }, + "AwsEventsEndpointDetails": { + "base": "

Provides details about an Amazon EventBridge global endpoint. The endpoint can improve your application’s availability by making it Regional-fault tolerant.

", + "refs": { + "ResourceDetails$AwsEventsEndpoint": "

Provides details about an Amazon EventBridge global endpoint. The endpoint can improve your application’s availability by making it Regional-fault tolerant.

" + } + }, + "AwsEventsEndpointEventBusesDetails": { + "base": "

Provides details about the Amazon EventBridge event buses that the endpoint is associated with.

", + "refs": { + "AwsEventsEndpointEventBusesList$member": null + } + }, + "AwsEventsEndpointEventBusesList": { + "base": null, + "refs": { + "AwsEventsEndpointDetails$EventBuses": "

The event buses being used by the endpoint.

" + } + }, + "AwsEventsEndpointReplicationConfigDetails": { + "base": "

Indicates whether replication is enabled or disabled for the endpoint. If enabled, the endpoint can replicate all events to a secondary Amazon Web Services Region.

", + "refs": { + "AwsEventsEndpointDetails$ReplicationConfig": "

Whether event replication was enabled or disabled for this endpoint. The default state is ENABLED, which means you must supply a RoleArn. If you don't have a RoleArn or you don't want event replication enabled, set the state to DISABLED.

" + } + }, + "AwsEventsEndpointRoutingConfigDetails": { + "base": "

Provides details about the routing configuration of the endpoint.

", + "refs": { + "AwsEventsEndpointDetails$RoutingConfig": "

The routing configuration of the endpoint.

" + } + }, + "AwsEventsEndpointRoutingConfigFailoverConfigDetails": { + "base": "

The failover configuration for an endpoint. This includes what triggers failover and what happens when it's triggered.

", + "refs": { + "AwsEventsEndpointRoutingConfigDetails$FailoverConfig": "

The failover configuration for an endpoint. This includes what triggers failover and what happens when it's triggered.

" + } + }, + "AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails": { + "base": "

Provides details about the primary Amazon Web Services Region of the endpoint.

", + "refs": { + "AwsEventsEndpointRoutingConfigFailoverConfigDetails$Primary": "

The main Region of the endpoint.

" + } + }, + "AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails": { + "base": "

The Amazon Web Services Region that events are routed to when failover is triggered or event replication is enabled.

", + "refs": { + "AwsEventsEndpointRoutingConfigFailoverConfigDetails$Secondary": "

The Region that events are routed to when failover is triggered or event replication is enabled.

" + } + }, + "AwsEventsEventbusDetails": { + "base": "

Provides details about Amazon EventBridge event bus. An event bus is a router that receives events and delivers them to zero or more destinations, or targets. This can be a custom event bus which you can use to receive events from your custom applications and services, or it can be a partner event bus which can be matched to a partner event source.

", + "refs": { + "ResourceDetails$AwsEventsEventbus": "

Provides details about Amazon EventBridge event bus for an endpoint. An event bus is a router that receives events and delivers them to zero or more destinations, or targets.

" + } + }, "AwsGuardDutyDetectorDataSourcesCloudTrailDetails": { "base": "

An object that contains information on the status of CloudTrail as a data source for the detector.

", "refs": { @@ -2858,6 +2982,72 @@ "AwsEcsContainerDetails$MountPoints": "

The mount points for data volumes in your container.

" } }, + "AwsMskClusterClusterInfoClientAuthenticationDetails": { + "base": "

Provides details about different modes of client authentication.

", + "refs": { + "AwsMskClusterClusterInfoDetails$ClientAuthentication": "

Provides information for different modes of client authentication.

" + } + }, + "AwsMskClusterClusterInfoClientAuthenticationSaslDetails": { + "base": "

Provides details for client authentication using SASL.

", + "refs": { + "AwsMskClusterClusterInfoClientAuthenticationDetails$Sasl": "

Provides details for client authentication using SASL.

" + } + }, + "AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails": { + "base": "

Details for SASL/IAM client authentication.

", + "refs": { + "AwsMskClusterClusterInfoClientAuthenticationSaslDetails$Iam": "

Provides details for SASL client authentication using IAM.

" + } + }, + "AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails": { + "base": "

Details for SASL/SCRAM client authentication.

", + "refs": { + "AwsMskClusterClusterInfoClientAuthenticationSaslDetails$Scram": "

Details for SASL client authentication using SCRAM.

" + } + }, + "AwsMskClusterClusterInfoClientAuthenticationTlsDetails": { + "base": "

Provides details for client authentication using TLS.

", + "refs": { + "AwsMskClusterClusterInfoClientAuthenticationDetails$Tls": "

Provides details for client authentication using TLS.

" + } + }, + "AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails": { + "base": "

Provides details for allowing no client authentication.

", + "refs": { + "AwsMskClusterClusterInfoClientAuthenticationDetails$Unauthenticated": "

Provides details for allowing no client authentication.

" + } + }, + "AwsMskClusterClusterInfoDetails": { + "base": "

Provide details about an Amazon MSK cluster.

", + "refs": { + "AwsMskClusterDetails$ClusterInfo": "

Provides information about a cluster.

" + } + }, + "AwsMskClusterClusterInfoEncryptionInfoDetails": { + "base": "

Includes encryption-related information, such as the KMS key used for encrypting data at rest and whether you want MSK to encrypt your data in transit.

", + "refs": { + "AwsMskClusterClusterInfoDetails$EncryptionInfo": "

Includes encryption-related information, such as the KMS key used for encrypting data at rest and whether you want Amazon MSK to encrypt your data in transit.

" + } + }, + "AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails": { + "base": "

The data-volume encryption details. You can't update encryption at rest settings for existing clusters.

", + "refs": { + "AwsMskClusterClusterInfoEncryptionInfoDetails$EncryptionAtRest": "

The data-volume encryption details. You can't update encryption at rest settings for existing clusters.

" + } + }, + "AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails": { + "base": "

The settings for encrypting data in transit.

", + "refs": { + "AwsMskClusterClusterInfoEncryptionInfoDetails$EncryptionInTransit": "

The settings for encrypting data in transit.

" + } + }, + "AwsMskClusterDetails": { + "base": "

Provides details about an Amazon Managed Streaming for Apache Kafka (Amazon MSK) cluster.

", + "refs": { + "ResourceDetails$AwsMskCluster": "

Provides details about an Amazon Managed Streaming for Apache Kafka (Amazon MSK) cluster.

" + } + }, "AwsNetworkFirewallFirewallDetails": { "base": "

Details about an Network Firewall firewall.

", "refs": { @@ -3339,6 +3529,48 @@ "AwsRedshiftClusterDetails$VpcSecurityGroups": "

The list of VPC security groups that the cluster belongs to, if the cluster is in a VPC.

" } }, + "AwsRoute53HostedZoneConfigDetails": { + "base": "

An object that contains an optional comment about your Amazon Route 53 hosted zone.

", + "refs": { + "AwsRoute53HostedZoneObjectDetails$Config": "

An object that includes the Comment element.

" + } + }, + "AwsRoute53HostedZoneDetails": { + "base": "

Provides details about a specified Amazon Route 53 hosted zone, including the four name servers assigned to the hosted zone. A hosted zone represents a collection of records that can be managed together, belonging to a single parent domain name.

", + "refs": { + "ResourceDetails$AwsRoute53HostedZone": "

Provides details about an Amazon Route 53 hosted zone, including the four name servers assigned to the hosted zone. A hosted zone represents a collection of records that can be managed together, belonging to a single parent domain name.

" + } + }, + "AwsRoute53HostedZoneNameServersList": { + "base": null, + "refs": { + "AwsRoute53HostedZoneDetails$NameServers": "

An object that contains a list of the authoritative name servers for a hosted zone or for a reusable delegation set.

" + } + }, + "AwsRoute53HostedZoneObjectDetails": { + "base": "

An object that contains information about an Amazon Route 53 hosted zone.

", + "refs": { + "AwsRoute53HostedZoneDetails$HostedZone": "

An object that contains information about the specified hosted zone.

" + } + }, + "AwsRoute53HostedZoneVpcDetails": { + "base": "

For private hosted zones, this is a complex type that contains information about an Amazon VPC.

", + "refs": { + "AwsRoute53HostedZoneVpcsList$member": null + } + }, + "AwsRoute53HostedZoneVpcsList": { + "base": null, + "refs": { + "AwsRoute53HostedZoneDetails$Vpcs": "

An object that contains information about the Amazon Virtual Private Clouds (Amazon VPCs) that are associated with the specified hosted zone.

" + } + }, + "AwsRoute53QueryLoggingConfigDetails": { + "base": "

Provides details about a specified Amazon Route 53 configuration for DNS query logging.

", + "refs": { + "AwsRoute53HostedZoneDetails$QueryLoggingConfig": "

An array that contains one QueryLoggingConfig element for each DNS query logging configuration that is associated with the current Amazon Web Services account.

" + } + }, "AwsS3AccountPublicAccessBlockDetails": { "base": "

provides information about the Amazon S3 Public Access Block configuration for accounts.

", "refs": { @@ -3618,7 +3850,7 @@ } }, "AwsSecurityFindingFilters": { - "base": "

A collection of attributes that are applied to all active Security Hub-aggregated findings and that result in a subset of findings that are included in this insight.

You can filter by up to 10 finding attributes. For each attribute, you can provide up to 20 filter values.

", + "base": "

A collection of filters that are applied to all active findings aggregated by Security Hub.

You can filter by up to ten finding attributes. For each attribute, you can provide up to 20 filter values.

", "refs": { "CreateInsightRequest$Filters": "

One or more attributes used to filter the findings included in the insight. The insight only includes findings that match the criteria defined in the filters.

", "GetFindingsRequest$Filters": "

The finding attributes used to define a condition to filter the returned findings.

You can filter by up to 10 finding attributes. For each attribute, you can provide up to 20 filter values.

Note that in the available filter fields, WorkflowState is deprecated. To search for a finding based on its workflow status, use WorkflowStatus.

", @@ -4051,6 +4283,16 @@ "refs": { } }, + "BatchGetConfigurationPolicyAssociationsRequest": { + "base": null, + "refs": { + } + }, + "BatchGetConfigurationPolicyAssociationsResponse": { + "base": null, + "refs": { + } + }, "BatchGetSecurityControlsRequest": { "base": null, "refs": { @@ -4184,6 +4426,9 @@ "AwsCodeBuildProjectLogsConfigS3LogsDetails$EncryptionDisabled": "

Whether to disable encryption of the S3 build log output.

", "AwsCodeBuildProjectSource$InsecureSsl": "

Whether to ignore SSL warnings while connecting to the project source code.

", "AwsCorsConfiguration$AllowCredentials": "

Indicates whether the CORS request includes credentials.

", + "AwsDmsReplicationInstanceDetails$AutoMinorVersionUpgrade": "

Indicates whether minor engine upgrades are applied automatically to the replication instance during the maintenance window.

", + "AwsDmsReplicationInstanceDetails$MultiAZ": "

Specifies whether the replication instance is deployed across multiple Availability Zones (AZs). You can't set the AvailabilityZone parameter if the MultiAZ parameter is set to true.

", + "AwsDmsReplicationInstanceDetails$PubliclyAccessible": "

Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address. The default value is true.

", "AwsDynamoDbTableGlobalSecondaryIndex$Backfilling": "

Whether the index is currently backfilling.

", "AwsDynamoDbTableRestoreSummary$RestoreInProgress": "

Whether a restore is currently in progress.

", "AwsDynamoDbTableStreamSpecification$StreamEnabled": "

Indicates whether DynamoDB Streams is enabled on the table.

", @@ -4249,6 +4494,11 @@ "AwsIamPolicyDetails$IsAttachable": "

Whether the policy can be attached to a user, group, or role.

", "AwsIamPolicyVersion$IsDefaultVersion": "

Whether the version is the default version.

", "AwsKmsKeyDetails$KeyRotationStatus": "

Whether the key has key rotation enabled.

", + "AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails$Enabled": "

Indicates whether SASL/IAM authentication is enabled or not.

", + "AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails$Enabled": "

Indicates whether SASL/SCRAM authentication is enabled or not.

", + "AwsMskClusterClusterInfoClientAuthenticationTlsDetails$Enabled": "

Indicates whether TLS authentication is enabled or not.

", + "AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails$Enabled": "

Indicates whether unauthenticated is allowed or not.

", + "AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails$InCluster": "

When set to true, it indicates that data communication among the broker nodes of the cluster is encrypted. When set to false, the communication happens in plain text. The default value is true.

", "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.

", @@ -4272,6 +4522,7 @@ "AwsRdsDbClusterDetails$CopyTagsToSnapshot": "

Whether tags are copied from the DB cluster to snapshots of the DB cluster.

", "AwsRdsDbClusterDetails$CrossAccountClone": "

Whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.

", "AwsRdsDbClusterDetails$IamDatabaseAuthenticationEnabled": "

Whether the mapping of IAM accounts to database accounts is enabled.

", + "AwsRdsDbClusterDetails$AutoMinorVersionUpgrade": "

Indicates if minor version upgrades are automatically applied to the cluster.

", "AwsRdsDbClusterMember$IsClusterWriter": "

Whether the cluster member is the primary instance for the DB cluster.

", "AwsRdsDbClusterSnapshotDetails$StorageEncrypted": "

Whether the DB cluster is encrypted.

", "AwsRdsDbClusterSnapshotDetails$IamDatabaseAuthenticationEnabled": "

Whether mapping of IAM accounts to database accounts is enabled.

", @@ -4315,28 +4566,38 @@ "AwsWafv2VisibilityConfigDetails$CloudWatchMetricsEnabled": "

A boolean indicating whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see WAF metrics and dimensions in the WAF Developer Guide.

", "AwsWafv2VisibilityConfigDetails$SampledRequestsEnabled": "

A boolean indicating whether WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the WAF console.

", "AwsWafv2WebAclDetails$ManagedbyFirewallManager": "

Indicates whether this web ACL is managed by Firewall Manager.

", + "BooleanConfigurationOptions$DefaultValue": "

The Security Hub default value for a boolean parameter.

", "BooleanFilter$Value": "

The value of the boolean.

", "ClassificationResult$AdditionalOccurrences": "

Indicates whether there are additional occurrences of sensitive data that are not included in the finding. This occurs when the number of occurrences exceeds the maximum that can be included.

", + "ConfigurationPolicySummary$ServiceEnabled": "

Indicates whether the service that the configuration policy applies to is enabled in the policy.

", "ContainerDetails$Privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).

", "CreateAutomationRuleRequest$IsTerminal": "

Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.

", "DescribeHubResponse$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

If set to true, then new controls for enabled standards are enabled automatically. If set to false, then new controls are not enabled.

", - "DescribeOrganizationConfigurationResponse$AutoEnable": "

Whether to automatically enable Security Hub for new accounts in the organization.

If set to true, then Security Hub is enabled for new accounts. If set to false, then new accounts are not added automatically.

", + "DescribeOrganizationConfigurationResponse$AutoEnable": "

Whether to automatically enable Security Hub in new member accounts when they join the organization.

If set to true, then Security Hub is automatically enabled in new accounts. If set to false, then Security Hub isn't enabled in new accounts automatically. The default value is false.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to false and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which Security Hub is enabled and associate the policy with new organization accounts.

", "DescribeOrganizationConfigurationResponse$MemberAccountLimitReached": "

Whether the maximum number of allowed member accounts are already associated with the Security Hub administrator account.

", "DnsRequestAction$Blocked": "

Indicates whether the DNS request was blocked.

", "EnableSecurityHubRequest$EnableDefaultStandards": "

Whether to enable the security standards that Security Hub has designated as automatically enabled. If you do not provide a value for EnableDefaultStandards, it is set to true. To not enable the automatically enabled standards, set EnableDefaultStandards to false.

", "FindingHistoryRecord$FindingCreated": "

Identifies whether the event marks the creation of a new finding. A value of True means that the finding is newly created. A value of False means that the finding isn’t newly created.

", "ListMembersRequest$OnlyAssociated": "

Specifies which member accounts to include in the response based on their relationship status with the administrator account. The default value is TRUE.

If OnlyAssociated is set to TRUE, the response includes member accounts whose relationship status with the administrator account is set to ENABLED.

If OnlyAssociated is set to FALSE, the response includes all existing member accounts.

", "NetworkConnectionAction$Blocked": "

Indicates whether the network connection attempt was blocked.

", + "ParameterValue$Boolean": "

A control parameter that is a boolean.

", "PortProbeAction$Blocked": "

Indicates whether the port probe was blocked.

", + "SecurityHubPolicy$ServiceEnabled": "

Indicates whether Security Hub is enabled in the policy.

", "Standard$EnabledByDefault": "

Whether the standard is enabled by default. When Security Hub is enabled from the console, if a standard is enabled by default, the check box for that standard is selected by default.

When Security Hub is enabled using the EnableSecurityHub API operation, the standard is enabled by default unless EnableDefaultStandards is set to false.

", "UpdateAutomationRulesRequestItem$IsTerminal": "

Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.

", - "UpdateOrganizationConfigurationRequest$AutoEnable": "

Whether to automatically enable Security Hub for new accounts in the organization.

By default, this is false, and new accounts are not added automatically.

To automatically enable Security Hub for new accounts, set this to true.

", + "UpdateOrganizationConfigurationRequest$AutoEnable": "

Whether to automatically enable Security Hub in new member accounts when they join the organization.

If set to true, then Security Hub is automatically enabled in new accounts. If set to false, then Security Hub isn't enabled in new accounts automatically. The default value is false.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to false and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which Security Hub is enabled and associate the policy with new organization accounts.

", "UpdateSecurityHubConfigurationRequest$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

By default, this is set to true, and new controls are enabled automatically. To not automatically enable new controls, set this to false.

", "VpcInfoPeeringOptionsDetails$AllowDnsResolutionFromRemoteVpc": "

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

", "VpcInfoPeeringOptionsDetails$AllowEgressFromLocalClassicLinkToRemoteVpc": "

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.

", "VpcInfoPeeringOptionsDetails$AllowEgressFromLocalVpcToRemoteClassicLink": "

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.

" } }, + "BooleanConfigurationOptions": { + "base": "

The options for customizing a security control parameter with a boolean. For a boolean parameter, the options are true and false.

", + "refs": { + "ConfigurationOptions$Boolean": "

The options for customizing a security control parameter that is a boolean. For a boolean parameter, the options are true and false.

" + } + }, "BooleanFilter": { "base": "

Boolean filter for querying findings.

", "refs": { @@ -4397,6 +4658,12 @@ "ClassificationResult$Status": "

The current status of the sensitive data detection.

" } }, + "CloudWatchLogsLogGroupArnConfigDetails": { + "base": "

The Amazon Resource Name (ARN) and other details of the Amazon CloudWatch Logs log group that Amazon Route 53 is publishing logs to.

", + "refs": { + "AwsRoute53QueryLoggingConfigDetails$CloudWatchLogsLogGroupArn": "

The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log group that Route 53 is publishing logs to.

" + } + }, "CodeVulnerabilitiesFilePath": { "base": "

Provides details about where a code vulnerability is located in your Lambda function.

", "refs": { @@ -4415,6 +4682,65 @@ "Compliance$Status": "

The result of a standards check.

The valid values for Status are as follows.

    • PASSED - Standards check passed for all evaluated resources.

    • WARNING - Some information is missing or this check is not supported for your configuration.

    • FAILED - Standards check failed for at least one evaluated resource.

    • NOT_AVAILABLE - Check could not be performed due to a service outage, API error, or because the result of the Config evaluation was NOT_APPLICABLE. If the Config evaluation result was NOT_APPLICABLE, then after 3 days, Security Hub automatically archives the finding.

" } }, + "ConfigurationOptions": { + "base": "

The options for customizing a security control parameter.

", + "refs": { + "ParameterDefinition$ConfigurationOptions": "

The options for customizing a control parameter. Customization options vary based on the data type of the parameter.

" + } + }, + "ConfigurationPolicyAssociation": { + "base": "

Provides details about the association between an Security Hub configuration and a target account, organizational unit, or the root. An association can exist between a target and a configuration policy, or between a target and self-managed behavior.

", + "refs": { + "ConfigurationPolicyAssociationsList$member": null, + "UnprocessedConfigurationPolicyAssociation$ConfigurationPolicyAssociationIdentifiers": "

Configuration policy association identifiers that were specified in a BatchGetConfigurationPolicyAssociations request but couldn’t be processed due to an error.

" + } + }, + "ConfigurationPolicyAssociationList": { + "base": null, + "refs": { + "BatchGetConfigurationPolicyAssociationsResponse$ConfigurationPolicyAssociations": "

Describes associations for the target accounts, OUs, or the root.

" + } + }, + "ConfigurationPolicyAssociationStatus": { + "base": null, + "refs": { + "AssociationFilters$AssociationStatus": "

The current status of the association between a target and a configuration policy.

", + "ConfigurationPolicyAssociationSummary$AssociationStatus": "

The current status of the association between the specified target and the configuration.

", + "GetConfigurationPolicyAssociationResponse$AssociationStatus": "

The current status of the association between the specified target and the configuration.

", + "StartConfigurationPolicyAssociationResponse$AssociationStatus": "

The current status of the association between the specified target and the configuration.

" + } + }, + "ConfigurationPolicyAssociationSummary": { + "base": "

An object that contains the details of a configuration policy association that’s returned in a ListConfigurationPolicyAssociations request.

", + "refs": { + "ConfigurationPolicyAssociationList$member": null, + "ConfigurationPolicyAssociationSummaryList$member": null + } + }, + "ConfigurationPolicyAssociationSummaryList": { + "base": null, + "refs": { + "ListConfigurationPolicyAssociationsResponse$ConfigurationPolicyAssociationSummaries": "

An object that contains the details of each configuration policy association that’s returned in a ListConfigurationPolicyAssociations request.

" + } + }, + "ConfigurationPolicyAssociationsList": { + "base": null, + "refs": { + "BatchGetConfigurationPolicyAssociationsRequest$ConfigurationPolicyAssociationIdentifiers": "

Specifies one or more target account IDs, organizational unit (OU) IDs, or the root ID to retrieve associations for.

" + } + }, + "ConfigurationPolicySummary": { + "base": "

An object that contains the details of an Security Hub configuration policy that’s returned in a ListConfigurationPolicies request.

", + "refs": { + "ConfigurationPolicySummaryList$member": null + } + }, + "ConfigurationPolicySummaryList": { + "base": null, + "refs": { + "ListConfigurationPoliciesResponse$ConfigurationPolicySummaries": "

Provides metadata for each of your configuration policies.

" + } + }, "ContainerDetails": { "base": "

Container details related to a finding.

", "refs": { @@ -4463,6 +4789,16 @@ "refs": { } }, + "CreateConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "CreateConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "CreateFindingAggregatorRequest": { "base": null, "refs": { @@ -4518,6 +4854,12 @@ "ClassificationResult$CustomDataIdentifiers": "

Provides details about sensitive data that was identified based on customer-defined configuration.

" } }, + "CustomizableProperties": { + "base": null, + "refs": { + "SecurityControlDefinition$CustomizableProperties": "

Security control properties that you can customize. Currently, only parameter customization is supported for select controls. An empty array is returned for controls that don’t support custom properties.

" + } + }, "Cvss": { "base": "

CVSS scores from the advisory related to the vulnerability.

", "refs": { @@ -4595,6 +4937,16 @@ "refs": { } }, + "DeleteConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "DeleteFindingAggregatorRequest": { "base": null, "refs": { @@ -4725,6 +5077,12 @@ "refs": { } }, + "DisabledSecurityControlIdentifierList": { + "base": null, + "refs": { + "SecurityControlsConfiguration$DisabledSecurityControlIdentifiers": "

A list of security controls that are disabled in the configuration policy. Security Hub enables all other controls (including newly released controls) other than the listed controls.

" + } + }, "DisassociateFromAdministratorAccountRequest": { "base": null, "refs": { @@ -4775,16 +5133,28 @@ "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, and date and time should be separated by T. 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.

", + "DoubleConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is a double.

", + "DoubleConfigurationOptions$Min": "

The minimum valid value for a control parameter that is a double.

", + "DoubleConfigurationOptions$Max": "

The maximum valid value for a control parameter that is a double.

", "GeoLocation$Lon": "

The longitude of the location.

", "GeoLocation$Lat": "

The latitude of the location.

", "NumberFilter$Gte": "

The greater-than-equal condition to be applied to a single field when querying for findings.

", "NumberFilter$Lte": "

The less-than-equal condition to be applied to a single field when querying for findings.

", "NumberFilter$Eq": "

The equal-to condition to be applied to a single field when querying for findings.

", - "Severity$Product": "

Deprecated. This attribute is being deprecated. Instead of providing Product, provide Original.

The native severity as defined by the Amazon Web Services service or integrated partner product that generated the finding.

", + "NumberFilter$Gt": "

The greater-than condition to be applied to a single field when querying for findings.

", + "NumberFilter$Lt": "

The less-than condition to be applied to a single field when querying for findings.

", + "ParameterValue$Double": "

A control parameter that is a double.

", + "Severity$Product": "

Deprecated. This attribute isn't included in findings. Instead of providing Product, provide Original.

The native severity as defined by the Amazon Web Services service or integrated partner product that generated the finding.

", "SeverityUpdate$Product": "

The native severity as defined by the Amazon Web Services service or integrated partner product that generated the finding.

", "Vulnerability$EpssScore": "

The Exploit Prediction Scoring System (EPSS) score for a finding.

" } }, + "DoubleConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is a double.

", + "refs": { + "ConfigurationOptions$Double": "

The options for customizing a security control parameter that is a double.

" + } + }, "EnableImportFindingsForProductRequest": { "base": null, "refs": { @@ -4815,6 +5185,30 @@ "refs": { } }, + "EnabledSecurityControlIdentifierList": { + "base": null, + "refs": { + "SecurityControlsConfiguration$EnabledSecurityControlIdentifiers": "

A list of security controls that are enabled in the configuration policy. Security Hub disables all other controls (including newly released controls) other than the listed controls.

" + } + }, + "EnabledStandardIdentifierList": { + "base": null, + "refs": { + "SecurityHubPolicy$EnabledStandardIdentifiers": "

A list that defines which security standards are enabled in the configuration policy.

" + } + }, + "EnumConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is an enum.

", + "refs": { + "ConfigurationOptions$Enum": "

The options for customizing a security control parameter that is an enum.

" + } + }, + "EnumListConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is a list of enums.

", + "refs": { + "ConfigurationOptions$EnumList": "

The options for customizing a security control parameter that is a list of enums.

" + } + }, "FieldMap": { "base": null, "refs": { @@ -4975,6 +5369,26 @@ "refs": { } }, + "GetConfigurationPolicyAssociationRequest": { + "base": null, + "refs": { + } + }, + "GetConfigurationPolicyAssociationResponse": { + "base": null, + "refs": { + } + }, + "GetConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "GetConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "GetEnabledStandardsRequest": { "base": null, "refs": { @@ -5065,6 +5479,16 @@ "refs": { } }, + "GetSecurityControlDefinitionRequest": { + "base": null, + "refs": { + } + }, + "GetSecurityControlDefinitionResponse": { + "base": null, + "refs": { + } + }, "IcmpTypeCode": { "base": "

An Internet Control Message Protocol (ICMP) type and code.

", "refs": { @@ -5143,6 +5567,8 @@ "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.

", + "AwsDmsEndpointDetails$Port": "

The port used to access the endpoint.

", + "AwsDmsReplicationInstanceDetails$AllocatedStorage": "

The amount of storage (in gigabytes) that is allocated for the replication instance.

", "AwsDynamoDbTableDetails$ItemCount": "

The number of items in the table.

", "AwsDynamoDbTableGlobalSecondaryIndex$ItemCount": "

The number of items in the index.

", "AwsDynamoDbTableProvisionedThroughput$NumberOfDecreasesToday": "

The number of times during the current UTC calendar day that the provisioned throughput was decreased.

", @@ -5246,6 +5672,7 @@ "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.

", + "AwsMskClusterClusterInfoDetails$NumberOfBrokerNodes": "

The number of broker nodes in the cluster.

", "AwsNetworkFirewallRuleGroupDetails$Capacity": "

The maximum number of operating resources that this rule group can use.

", "AwsOpenSearchServiceDomainClusterConfigDetails$InstanceCount": "

The number of data nodes to use in the OpenSearch domain.

", "AwsOpenSearchServiceDomainClusterConfigDetails$WarmCount": "

The number of UltraWarm instances.

", @@ -5318,15 +5745,23 @@ "CodeVulnerabilitiesFilePath$EndLine": "

The line number of the last line of code in which the vulnerability is located.

", "CodeVulnerabilitiesFilePath$StartLine": "

The line number of the first line of code in which the vulnerability is located.

", "DateRange$Value": "

A date range value for the date filter.

", + "EnumListConfigurationOptions$MaxItems": "

The maximum number of list items that an enum list control parameter can accept.

", "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.

", "InsightResultValue$Count": "

The number of findings returned for each GroupByAttributeValue.

", + "IntegerConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is an integer.

", + "IntegerConfigurationOptions$Min": "

The minimum valid value for a control parameter that is an integer.

", + "IntegerConfigurationOptions$Max": "

The maximum valid value for a control parameter that is an integer.

", "IntegerList$member": null, + "IntegerListConfigurationOptions$Min": "

The minimum valid value for a control parameter that is a list of integers.

", + "IntegerListConfigurationOptions$Max": "

The maximum valid value for a control parameter that is a list of integers.

", + "IntegerListConfigurationOptions$MaxItems": "

The maximum number of list items that an interger list control parameter can accept.

", "IpOrganizationDetails$Asn": "

The Autonomous System Number (ASN) of the internet provider

", "Network$SourcePort": "

The source port of network-related information about a finding.

", "Network$DestinationPort": "

The destination port of network-related information about a finding.

", + "ParameterValue$Integer": "

A control parameter that is an integer.

", "PatchSummary$InstalledCount": "

The number of patches from the compliance standard that were installed successfully.

", "PatchSummary$MissingCount": "

The number of patches that are part of the compliance standard but are not installed. The count includes patches that failed to install.

", "PatchSummary$FailedCount": "

The number of patches from the compliance standard that failed to install.

", @@ -5345,16 +5780,31 @@ "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.

  • INFORMATIONAL - 0

  • LOW - 1

  • MEDIUM - 40

  • HIGH - 70

  • CRITICAL - 90

", + "Severity$Normalized": "

Deprecated. The normalized severity of a finding. Instead of providing Normalized, provide Label.

If you provide Label and do not provide Normalized, then Normalized is set automatically as follows.

  • INFORMATIONAL - 0

  • LOW - 1

  • MEDIUM - 40

  • HIGH - 70

  • CRITICAL - 90

", + "StringListConfigurationOptions$MaxItems": "

The maximum number of list items that a string list control parameter can accept.

", "Threat$ItemCount": "

This total number of items in which the threat has been detected.

", "UnprocessedAutomationRule$ErrorCode": "

The error code associated with the unprocessed automation rule.

" } }, + "IntegerConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is an integer.

", + "refs": { + "ConfigurationOptions$Integer": "

The options for customizing a security control parameter that is an integer.

" + } + }, "IntegerList": { "base": null, "refs": { "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase1DhGroupNumbers": "

The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.

", - "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase2DhGroupNumbers": "

The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.

" + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase2DhGroupNumbers": "

The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.

", + "IntegerListConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is a list of integers.

", + "ParameterValue$IntegerList": "

A control parameter that is a list of integers.

" + } + }, + "IntegerListConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is a list of integers.

", + "refs": { + "ConfigurationOptions$IntegerList": "

The options for customizing a security control parameter that is a list of integers.

" } }, "IntegrationType": { @@ -5471,6 +5921,26 @@ "refs": { } }, + "ListConfigurationPoliciesRequest": { + "base": null, + "refs": { + } + }, + "ListConfigurationPoliciesResponse": { + "base": null, + "refs": { + } + }, + "ListConfigurationPolicyAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListConfigurationPolicyAssociationsResponse": { + "base": null, + "refs": { + } + }, "ListEnabledProductsForImportRequest": { "base": null, "refs": { @@ -5655,6 +6125,8 @@ "GetFindingsRequest$MaxResults": "

The maximum number of findings to return.

", "GetInsightsRequest$MaxResults": "

The maximum number of items to return in the response.

", "ListAutomationRulesRequest$MaxResults": "

The maximum number of rules to return in the response. This currently ranges from 1 to 100.

", + "ListConfigurationPoliciesRequest$MaxResults": "

The maximum number of results that's returned by ListConfigurationPolicies in each page of the response. When this parameter is used, ListConfigurationPolicies returns the specified number of results in a single page and a NextToken response element. You can see the remaining results of the initial request by sending another ListConfigurationPolicies request with the returned NextToken value. A valid range for MaxResults is between 1 and 100.

", + "ListConfigurationPolicyAssociationsRequest$MaxResults": "

The maximum number of results that's returned by ListConfigurationPolicies in each page of the response. When this parameter is used, ListConfigurationPolicyAssociations returns the specified number of results in a single page and a NextToken response element. You can see the remaining results of the initial request by sending another ListConfigurationPolicyAssociations request with the returned NextToken value. A valid range for MaxResults is between 1 and 100.

", "ListEnabledProductsForImportRequest$MaxResults": "

The maximum number of items to return in the response.

", "ListFindingAggregatorsRequest$MaxResults": "

The maximum number of results to return. This operation currently only returns a single result.

", "ListSecurityControlDefinitionsRequest$MaxResults": "

An optional parameter that limits the total results of the API response to the specified number. If this parameter isn't provided in the request, the results include the first 25 security controls that apply to the specified standard. The results also include a NextToken parameter that you can use in a subsequent API call to get the next 25 controls. This repeats until all controls for the standard are returned.

", @@ -5740,6 +6212,10 @@ "GetInsightsResponse$NextToken": "

The pagination token to use to request the next page of results.

", "ListAutomationRulesRequest$NextToken": "

A token to specify where to start paginating the response. This is the NextToken from a previously truncated response. On your first call to the ListAutomationRules API, set the value of this parameter to NULL.

", "ListAutomationRulesResponse$NextToken": "

A pagination token for the response.

", + "ListConfigurationPoliciesRequest$NextToken": "

The NextToken value that's returned from a previous paginated ListConfigurationPolicies request where MaxResults was used but the results exceeded the value of that parameter. Pagination continues from the MaxResults was used but the results exceeded the value of that parameter. Pagination continues from the end of the previous response that returned the NextToken value. This value is null when there are no more results to return.

", + "ListConfigurationPoliciesResponse$NextToken": "

The NextToken value to include in the next ListConfigurationPolicies request. When the results of a ListConfigurationPolicies request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListConfigurationPolicyAssociationsRequest$NextToken": "

The NextToken value that's returned from a previous paginated ListConfigurationPolicyAssociations request where MaxResults was used but the results exceeded the value of that parameter. Pagination continues from the end of the previous response that returned the NextToken value. This value is null when there are no more results to return.

", + "ListConfigurationPolicyAssociationsResponse$NextToken": "

The NextToken value to include in the next ListConfigurationPolicyAssociations request. When the results of a ListConfigurationPolicyAssociations request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", "ListEnabledProductsForImportRequest$NextToken": "

The token that is required for pagination. On your first call to the ListEnabledProductsForImport operation, set the value of this parameter to NULL.

For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.

", "ListEnabledProductsForImportResponse$NextToken": "

The pagination token to use to request the next page of results.

", "ListFindingAggregatorsRequest$NextToken": "

The token returned with the previous set of results. Identifies the next set of results to return.

", @@ -5778,6 +6254,7 @@ "AdminAccount$AccountId": "

The Amazon Web Services account identifier of the Security Hub administrator account.

", "ArnList$member": null, "AssociatedStandard$StandardsId": "

The unique identifier of a standard in which a control is enabled. This field consists of the resource portion of the Amazon Resource Name (ARN) returned for a standard in the DescribeStandards API response.

", + "AssociationFilters$ConfigurationPolicyId": "

The ARN or UUID of the configuration policy.

", "AssociationSetDetails$GatewayId": "

The ID of the internet gateway or virtual private gateway.

", "AssociationSetDetails$RouteTableAssociationId": "

The ID of the association.

", "AssociationSetDetails$RouteTableId": "

The ID of the route table.

", @@ -6069,6 +6546,39 @@ "AwsCodeBuildProjectSource$Type": "

The type of repository that contains the source code to be built. Valid values are:

  • BITBUCKET - The source code is in a Bitbucket repository.

  • CODECOMMIT - The source code is in an CodeCommit repository.

  • CODEPIPELINE - The source code settings are specified in the source action of a pipeline in CodePipeline.

  • GITHUB - The source code is in a GitHub repository.

  • GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise repository.

  • NO_SOURCE - The project does not have input source code.

  • S3 - The source code is in an S3 input bucket.

", "AwsCodeBuildProjectSource$Location": "

Information about the location of the source code to be built.

Valid values include:

  • For source code settings that are specified in the source action of a pipeline in CodePipeline, location should not be specified. If it is specified, CodePipeline ignores it. This is because CodePipeline uses the settings in a pipeline's source action instead of this value.

  • For source code in an CodeCommit repository, the HTTPS clone URL to the repository that contains the source code and the build spec file (for example, https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name ).

  • For source code in an S3 input bucket, one of the following.

    • The path to the ZIP file that contains the source code (for example, bucket-name/path/to/object-name.zip).

    • The path to the folder that contains the source code (for example, bucket-name/path/to/source-code/folder/).

  • For source code in a GitHub repository, the HTTPS clone URL to the repository that contains the source and the build spec file.

  • For source code in a Bitbucket repository, the HTTPS clone URL to the repository that contains the source and the build spec file.

", "AwsCodeBuildProjectVpcConfig$VpcId": "

The ID of the VPC.

", + "AwsDmsEndpointDetails$CertificateArn": "

The Amazon Resource Name (ARN) for the SSL certificate that encrypts connections between the DMS endpoint and the replication instance.

", + "AwsDmsEndpointDetails$DatabaseName": "

The name of the endpoint database.

", + "AwsDmsEndpointDetails$EndpointArn": "

The Amazon Resource Name (ARN) of the endpoint.

", + "AwsDmsEndpointDetails$EndpointIdentifier": "

The database endpoint identifier.

", + "AwsDmsEndpointDetails$EndpointType": "

The type of endpoint. Valid values are source and target.

", + "AwsDmsEndpointDetails$EngineName": "

The type of engine for the endpoint, depending on the EndpointType value.

", + "AwsDmsEndpointDetails$ExternalId": "

A value that can be used for cross-account validation.

", + "AwsDmsEndpointDetails$ExtraConnectionAttributes": "

Additional attributes associated with the connection.

", + "AwsDmsEndpointDetails$KmsKeyId": "

An DMS key identifier that is used to encrypt the connection parameters for the endpoint. If you don't specify a value for the KmsKeyId parameter, then DMS uses your default encryption key. KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.

", + "AwsDmsEndpointDetails$ServerName": "

The name of the server where the endpoint database resides.

", + "AwsDmsEndpointDetails$SslMode": "

The SSL mode used to connect to the endpoint. The default is none.

", + "AwsDmsEndpointDetails$Username": "

The user name to be used to log in to the endpoint database.

", + "AwsDmsReplicationInstanceDetails$AvailabilityZone": "

The Availability Zone that the replication instance is created in. The default value is a random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region, such as us-east-1d.

", + "AwsDmsReplicationInstanceDetails$EngineVersion": "

The engine version number of the replication instance. If an engine version number is not specified when a replication instance is created, the default is the latest engine version available.

", + "AwsDmsReplicationInstanceDetails$KmsKeyId": "

An KMS key identifier that is used to encrypt the data on the replication instance. If you don't specify a value for the KmsKeyId parameter, DMS uses your default encryption key. KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.

", + "AwsDmsReplicationInstanceDetails$PreferredMaintenanceWindow": "

The maintenance window times for the replication instance. Upgrades to the replication instance are performed during this time.

", + "AwsDmsReplicationInstanceDetails$ReplicationInstanceClass": "

The compute and memory capacity of the replication instance as defined for the specified replication instance class.

", + "AwsDmsReplicationInstanceDetails$ReplicationInstanceIdentifier": "

The replication instance identifier.

", + "AwsDmsReplicationInstanceReplicationSubnetGroupDetails$ReplicationSubnetGroupIdentifier": "

The identifier of the replication subnet group.

", + "AwsDmsReplicationInstanceVpcSecurityGroupsDetails$VpcSecurityGroupId": "

The identifier of the VPC security group that’s associated with the replication instance.

", + "AwsDmsReplicationTaskDetails$CdcStartPosition": "

Indicates when you want a change data capture (CDC) operation to start. CCdcStartPosition or CCdcStartTime specifies when you want a CDC operation to start. Only a value for one of these fields is included.

", + "AwsDmsReplicationTaskDetails$CdcStartTime": "

Indicates the start time for a CDC operation. CdcStartPosition or CCdcStartTime specifies when you want a CDC operation to start. Only a value for one of these fields is included.

", + "AwsDmsReplicationTaskDetails$CdcStopPosition": "

Indicates when you want a CDC operation to stop. The value can be either server time or commit time.

", + "AwsDmsReplicationTaskDetails$MigrationType": "

The migration type.

", + "AwsDmsReplicationTaskDetails$Id": "

The identifier of the replication task.

", + "AwsDmsReplicationTaskDetails$ResourceIdentifier": "

A display name for the resource identifier at the end of the EndpointArn response parameter. If you don't specify a ResourceIdentifier value, DMS generates a default identifier value for the end of EndpointArn.

", + "AwsDmsReplicationTaskDetails$ReplicationInstanceArn": "

The Amazon Resource Name (ARN) of a replication instance.

", + "AwsDmsReplicationTaskDetails$ReplicationTaskIdentifier": "

The user-defined replication task identifier or name.

", + "AwsDmsReplicationTaskDetails$ReplicationTaskSettings": "

The settings for the replication task.

", + "AwsDmsReplicationTaskDetails$SourceEndpointArn": "

The ARN of the source endpoint.

", + "AwsDmsReplicationTaskDetails$TableMappings": "

The table mappings for the replication task, in JSON format.

", + "AwsDmsReplicationTaskDetails$TargetEndpointArn": "

The ARN of the target endpoint.

", + "AwsDmsReplicationTaskDetails$TaskData": "

Supplemental information that the task requires to migrate the data for certain source and target endpoints.

", "AwsDynamoDbTableAttributeDefinition$AttributeName": "

The name of the attribute.

", "AwsDynamoDbTableAttributeDefinition$AttributeType": "

The type of the attribute.

", "AwsDynamoDbTableBillingModeSummary$BillingMode": "

The method used to charge for read and write throughput and to manage capacity.

", @@ -6369,6 +6879,7 @@ "AwsEcsTaskDefinitionDetails$NetworkMode": "

The Docker networking mode to use for the containers in the task. Valid values are as follows:

  • awsvpc

  • bridge

  • host

  • none

", "AwsEcsTaskDefinitionDetails$PidMode": "

The process namespace to use for the containers in the task. Valid values are host or task.

", "AwsEcsTaskDefinitionDetails$TaskRoleArn": "

The short name or ARN of the IAM role that grants containers in the task permission to call Amazon Web Services API operations on your behalf.

", + "AwsEcsTaskDefinitionDetails$Status": "

The status of the task definition.

", "AwsEcsTaskDefinitionInferenceAcceleratorsDetails$DeviceName": "

The Elastic Inference accelerator device name.

", "AwsEcsTaskDefinitionInferenceAcceleratorsDetails$DeviceType": "

The Elastic Inference accelerator type to use.

", "AwsEcsTaskDefinitionPlacementConstraintsDetails$Expression": "

A cluster query language expression to apply to the constraint.

", @@ -6483,6 +6994,21 @@ "AwsEventSchemasRegistryDetails$Description": "

A description of the registry to be created.

", "AwsEventSchemasRegistryDetails$RegistryArn": "

The Amazon Resource Name (ARN) of the registry.

", "AwsEventSchemasRegistryDetails$RegistryName": "

The name of the schema registry.

", + "AwsEventsEndpointDetails$Arn": "

The Amazon Resource Name (ARN) of the endpoint.

", + "AwsEventsEndpointDetails$Description": "

A description of the endpoint.

", + "AwsEventsEndpointDetails$EndpointId": "

The URL subdomain of the endpoint. For example, if EndpointUrl is https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

", + "AwsEventsEndpointDetails$EndpointUrl": "

The URL of the endpoint.

", + "AwsEventsEndpointDetails$Name": "

The name of the endpoint.

", + "AwsEventsEndpointDetails$RoleArn": "

The ARN of the role used by event replication for the endpoint.

", + "AwsEventsEndpointDetails$State": "

The current state of the endpoint.

", + "AwsEventsEndpointDetails$StateReason": "

The reason the endpoint is in its current state.

", + "AwsEventsEndpointEventBusesDetails$EventBusArn": "

The Amazon Resource Name (ARN) of the event bus that the endpoint is associated with.

", + "AwsEventsEndpointReplicationConfigDetails$State": "

The state of event replication.

", + "AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails$HealthCheck": "

The Amazon Resource Name (ARN) of the health check used by the endpoint to determine whether failover is triggered.

", + "AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails$Route": "

Defines the secondary Region.

", + "AwsEventsEventbusDetails$Arn": "

The Amazon Resource Name (ARN) of the account permitted to write events to the current account.

", + "AwsEventsEventbusDetails$Name": "

The name of the event bus.

", + "AwsEventsEventbusDetails$Policy": "

The policy that enables the external account to send events to your account.

", "AwsGuardDutyDetectorDataSourcesCloudTrailDetails$Status": "

Specifies whether CloudTrail is activated as a data source for the detector.

", "AwsGuardDutyDetectorDataSourcesDnsLogsDetails$Status": "

Describes whether DNS logs is enabled as a data source for the detector.

", "AwsGuardDutyDetectorDataSourcesFlowLogsDetails$Status": "

Describes whether VPC Flow Logs are activated as a data source for the detector.

", @@ -6581,6 +7107,10 @@ "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, and date and time should be separated by T. 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.

", + "AwsMskClusterClusterInfoDetails$CurrentVersion": "

The current version of the MSK cluster.

", + "AwsMskClusterClusterInfoDetails$ClusterName": "

The name of the cluster.

", + "AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails$DataVolumeKMSKeyId": "

The Amazon Resource Name (ARN) of the KMS key for encrypting data at rest. If you don't specify a KMS key, MSK creates one for you and uses it.

", + "AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails$ClientBroker": "

Indicates the encryption setting for data in transit between clients and brokers.

", "AwsNetworkFirewallFirewallDetails$Description": "

A description of the firewall.

", "AwsNetworkFirewallFirewallDetails$FirewallArn": "

The ARN of the firewall.

", "AwsNetworkFirewallFirewallDetails$FirewallId": "

The identifier of the firewall.

", @@ -6817,6 +7347,12 @@ "AwsRedshiftClusterRestoreStatus$Status": "

The status of the restore action.

Valid values: starting | restoring | completed | failed

", "AwsRedshiftClusterVpcSecurityGroup$Status": "

The status of the VPC security group.

", "AwsRedshiftClusterVpcSecurityGroup$VpcSecurityGroupId": "

The identifier of the VPC security group.

", + "AwsRoute53HostedZoneConfigDetails$Comment": "

Any comments that you include about the hosted zone.

", + "AwsRoute53HostedZoneNameServersList$member": null, + "AwsRoute53HostedZoneObjectDetails$Id": "

The ID that Route 53 assigns to the hosted zone when you create it.

", + "AwsRoute53HostedZoneObjectDetails$Name": "

The name of the domain. For public hosted zones, this is the name that you have registered with your DNS registrar.

", + "AwsRoute53HostedZoneVpcDetails$Id": "

The identifier of an Amazon VPC.

", + "AwsRoute53HostedZoneVpcDetails$Region": "

The Amazon Web Services Region that an Amazon VPC was created in.

", "AwsS3BucketBucketLifecycleConfigurationRulesDetails$ExpirationDate": "

The date when objects are moved or deleted.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z.

", "AwsS3BucketBucketLifecycleConfigurationRulesDetails$ID": "

The unique identifier of the rule.

", "AwsS3BucketBucketLifecycleConfigurationRulesDetails$Prefix": "

A prefix that identifies one or more objects that the rule applies to.

", @@ -6900,6 +7436,8 @@ "AwsSecurityFinding$Title": "

A finding's title.

In this release, Title is a required property.

", "AwsSecurityFinding$Description": "

A finding's description.

In this release, Description is a required property.

", "AwsSecurityFinding$SourceUrl": "

A URL that links to a page about the current finding in the security findings provider's solution.

", + "AwsSecurityFinding$ProcessedAt": "

An ISO8601-formatted timestamp that indicates when Security Hub received a finding and begins to process it.

A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

", + "AwsSecurityFinding$AwsAccountName": "

The name of the Amazon Web Services account from which a finding was generated.

", "AwsSecurityFindingIdentifier$Id": "

The identifier of the finding that was specified by the finding provider.

", "AwsSecurityFindingIdentifier$ProductArn": "

The ARN generated by Security Hub that uniquely identifies a product that generates findings. This can be the ARN for a third-party product that is integrated with Security Hub, or the ARN for a custom integration.

", "AwsSnsTopicDetails$KmsMasterKeyId": "

The ID of an Amazon Web Services managed key for Amazon SNS or a customer managed key.

", @@ -7008,9 +7546,19 @@ "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.

", + "CloudWatchLogsLogGroupArnConfigDetails$CloudWatchLogsLogGroupArn": "

The ARN of the CloudWatch Logs log group that Route 53 is publishing logs to.

", + "CloudWatchLogsLogGroupArnConfigDetails$HostedZoneId": "

The ID of the hosted zone that CloudWatch Logs is logging queries for.

", + "CloudWatchLogsLogGroupArnConfigDetails$Id": "

The ID for a DNS query logging configuration.

", "CodeVulnerabilitiesFilePath$FileName": "

The name of the file in which the code vulnerability is located.

", "CodeVulnerabilitiesFilePath$FilePath": "

The file path to the code in which the vulnerability is located.

", "Compliance$SecurityControlId": "

The unique identifier of a control across standards. Values for this field typically consist of an Amazon Web Service and a number, such as APIGateway.5.

", + "ConfigurationPolicyAssociationSummary$ConfigurationPolicyId": "

The universally unique identifier (UUID) of the configuration policy.

", + "ConfigurationPolicyAssociationSummary$TargetId": "

The identifier of the target account, organizational unit, or the root.

", + "ConfigurationPolicyAssociationSummary$AssociationStatusMessage": "

The explanation for a FAILED value for AssociationStatus.

", + "ConfigurationPolicySummary$Arn": "

The Amazon Resource Name (ARN) of the configuration policy.

", + "ConfigurationPolicySummary$Id": "

The universally unique identifier (UUID) of the configuration policy.

", + "ConfigurationPolicySummary$Name": "

The name of the configuration policy.

", + "ConfigurationPolicySummary$Description": "

The description of the configuration policy.

", "ContainerDetails$ContainerRuntime": "

The runtime of the container.

", "ContainerDetails$Name": "

The name of the container related to a finding.

", "ContainerDetails$ImageId": "

The identifier of the container image related to a finding.

", @@ -7025,6 +7573,12 @@ "CreateAutomationRuleRequest$RuleName": "

The name of the rule.

", "CreateAutomationRuleRequest$Description": "

A description of the rule.

", "CreateAutomationRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the automation rule that you created.

", + "CreateConfigurationPolicyRequest$Name": "

The name of the configuration policy.

", + "CreateConfigurationPolicyRequest$Description": "

The description of the configuration policy.

", + "CreateConfigurationPolicyResponse$Arn": "

The Amazon Resource Name (ARN) of the configuration policy.

", + "CreateConfigurationPolicyResponse$Id": "

The universally unique identifier (UUID) of the configuration policy.

", + "CreateConfigurationPolicyResponse$Name": "

The name of the configuration policy.

", + "CreateConfigurationPolicyResponse$Description": "

The description of the configuration policy.

", "CreateFindingAggregatorRequest$RegionLinkingMode": "

Indicates whether to aggregate findings from all of the available Regions in the current partition. Also determines whether to automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.

The selected option also determines how to use the Regions provided in the Regions list.

The options are as follows:

  • ALL_REGIONS - Indicates to aggregate findings from all of the Regions where Security Hub is enabled. When you choose this option, Security Hub also automatically aggregates findings from new Regions as Security Hub supports them and you opt into them.

  • ALL_REGIONS_EXCEPT_SPECIFIED - Indicates to aggregate findings from all of the Regions where Security Hub is enabled, except for the Regions listed in the Regions parameter. When you choose this option, Security Hub also automatically aggregates findings from new Regions as Security Hub supports them and you opt into them.

  • SPECIFIED_REGIONS - Indicates to aggregate findings only from the Regions listed in the Regions parameter. Security Hub does not automatically aggregate findings from new Regions.

", "CreateFindingAggregatorResponse$FindingAggregatorArn": "

The ARN of the finding aggregator. You use the finding aggregator ARN to retrieve details for, update, and stop finding aggregation.

", "CreateFindingAggregatorResponse$FindingAggregationRegion": "

The aggregation Region.

", @@ -7042,6 +7596,7 @@ "DateFilter$End": "

A timestamp that provides the end date for the date filter.

A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

", "DeleteActionTargetRequest$ActionTargetArn": "

The Amazon Resource Name (ARN) of the custom action target to delete.

", "DeleteActionTargetResponse$ActionTargetArn": "

The ARN of the custom action target that was deleted.

", + "DeleteConfigurationPolicyRequest$Identifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", "DeleteFindingAggregatorRequest$FindingAggregatorArn": "

The ARN of the finding aggregator to delete. To obtain the ARN, use ListFindingAggregators.

", "DeleteInsightRequest$InsightArn": "

The ARN of the insight to delete.

", "DeleteInsightResponse$InsightArn": "

The ARN of the insight that was deleted.

", @@ -7052,11 +7607,15 @@ "DescribeStandardsControlsRequest$StandardsSubscriptionArn": "

The ARN of a resource that represents your subscription to a supported standard. To get the subscription ARNs of the standards you have enabled, use the GetEnabledStandards operation.

", "DisableImportFindingsForProductRequest$ProductSubscriptionArn": "

The ARN of the integrated product to disable the integration for.

", "DisableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services account identifier of the Security Hub administrator account.

", + "DisabledSecurityControlIdentifierList$member": null, "DnsRequestAction$Domain": "

The DNS domain that is associated with the DNS request.

", "DnsRequestAction$Protocol": "

The protocol that was used for the DNS request.

", "EnableImportFindingsForProductRequest$ProductArn": "

The ARN of the product to enable the integration for.

", "EnableImportFindingsForProductResponse$ProductSubscriptionArn": "

The ARN of your subscription to the product to enable integrations for.

", "EnableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services account identifier of the account to designate as the Security Hub administrator account.

", + "EnabledSecurityControlIdentifierList$member": null, + "EnabledStandardIdentifierList$member": null, + "EnumConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is an enum.

", "FieldMap$key": null, "FieldMap$value": null, "FilePaths$FilePath": "

Path to the infected or suspicious file on the resource it was detected on.

", @@ -7074,11 +7633,20 @@ "FirewallPolicyStatelessRuleGroupReferencesDetails$ResourceArn": "

The ARN of the stateless rule group.

", "GeneratorDetails$Name": "

The name of the detector used to identify the code vulnerability.

", "GeneratorDetails$Description": "

The description of the detector used to identify the code vulnerability.

", + "GetConfigurationPolicyAssociationResponse$ConfigurationPolicyId": "

The universally unique identifier (UUID) of a configuration policy. For self-managed behavior, the value is SELF_MANAGED_SECURITY_HUB.

", + "GetConfigurationPolicyAssociationResponse$TargetId": "

The target account ID, organizational unit ID, or the root ID for which the association is retrieved.

", + "GetConfigurationPolicyAssociationResponse$AssociationStatusMessage": "

The explanation for a FAILED value for AssociationStatus.

", + "GetConfigurationPolicyRequest$Identifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", + "GetConfigurationPolicyResponse$Arn": "

The ARN of the configuration policy.

", + "GetConfigurationPolicyResponse$Id": "

The UUID of the configuration policy.

", + "GetConfigurationPolicyResponse$Name": "

The name of the configuration policy.

", + "GetConfigurationPolicyResponse$Description": "

The description of the configuration policy.

", "GetFindingAggregatorRequest$FindingAggregatorArn": "

The ARN of the finding aggregator to return details for. To obtain the ARN, use ListFindingAggregators.

", "GetFindingAggregatorResponse$FindingAggregatorArn": "

The ARN of the finding aggregator.

", "GetFindingAggregatorResponse$FindingAggregationRegion": "

The aggregation Region.

", "GetFindingAggregatorResponse$RegionLinkingMode": "

Indicates whether to link all Regions, all Regions except for a list of excluded Regions, or a list of included Regions.

", "GetInsightResultsRequest$InsightArn": "

The ARN of the insight for which to return results.

", + "GetSecurityControlDefinitionRequest$SecurityControlId": "

The ID of the security control to retrieve the definition for. This field doesn’t accept an Amazon Resource Name (ARN).

", "ImportFindingsError$Id": "

The identifier of the finding that could not be updated.

", "ImportFindingsError$ErrorCode": "

The code of the error returned by the BatchImportFindings operation.

", "ImportFindingsError$ErrorMessage": "

The message of the error returned by the BatchImportFindings operation.

", @@ -7139,6 +7707,12 @@ "Note$UpdatedAt": "

The timestamp of when the note was updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z.

", "NoteUpdate$Text": "

The updated note text.

", "NoteUpdate$UpdatedBy": "

The principal that updated the note.

", + "OrganizationConfiguration$StatusMessage": "

Provides an explanation if the value of Status is equal to FAILED when ConfigurationType is equal to CENTRAL.

", + "ParameterDefinition$Description": "

Description of a control parameter.

", + "ParameterDefinitions$key": null, + "ParameterValue$String": "

A control parameter that is a string.

", + "ParameterValue$Enum": "

A control parameter that is an enum.

", + "Parameters$key": null, "PatchSummary$Id": "

The identifier of the compliance standard that was used to determine the patch compliance status.

", "PatchSummary$OperationStartTime": "

Indicates when the operation started.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z.

", "PatchSummary$OperationEndTime": "

Indicates when the operation completed.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z.

", @@ -7167,8 +7741,12 @@ "Resource$Id": "

The canonical identifier for the given resource type.

", "Resource$Region": "

The canonical Amazon Web Services external Region name where this resource is located.

", "Resource$ResourceRole": "

Identifies the role of the resource in the finding. A resource is either the actor or target of the finding activity,

", + "Resource$ApplicationName": "

The name of the application that is related to a finding.

", + "Resource$ApplicationArn": "

The Amazon Resource Name (ARN) of the application that is related to a finding.

", "ResourceConflictException$Message": null, "ResourceConflictException$Code": null, + "ResourceInUseException$Message": null, + "ResourceInUseException$Code": null, "ResourceNotFoundException$Message": null, "ResourceNotFoundException$Code": null, "Result$ProcessingResult": "

The reason that the account was not processed.

", @@ -7207,10 +7785,12 @@ "SecurityControl$Title": "

The title of a security control.

", "SecurityControl$Description": "

The description of a security control across standards. This typically summarizes how Security Hub evaluates the control and the conditions under which it produces a failed finding. This parameter doesn't reference a specific standard.

", "SecurityControl$RemediationUrl": "

A link to Security Hub documentation that explains how to remediate a failed finding for a security control.

", + "SecurityControlCustomParameter$SecurityControlId": "

The ID of the security control.

", "SecurityControlDefinition$SecurityControlId": "

The unique identifier of a security control across standards. Values for this field typically consist of an Amazon Web Service name and a number (for example, APIGateway.3). This parameter differs from SecurityControlArn, which is a unique Amazon Resource Name (ARN) assigned to a control. The ARN references the security control ID (for example, arn:aws:securityhub:eu-central-1:123456789012:security-control/APIGateway.3).

", "SecurityControlDefinition$Title": "

The title of a security control.

", "SecurityControlDefinition$Description": "

The description of a security control across standards. This typically summarizes how Security Hub evaluates the control and the conditions under which it produces a failed finding. This parameter doesn't reference a specific standard.

", "SecurityControlDefinition$RemediationUrl": "

A link to Security Hub documentation that explains how to remediate a failed finding for a security control.

", + "SecurityControlParameter$Name": "

The name of a

", "SecurityGroups$member": null, "SensitiveDataDetections$Type": "

The type of sensitive data that was detected. For example, the type might indicate that the data is an email address.

", "SensitiveDataResult$Category": "

The category of sensitive data that was detected. For example, the category can indicate that the sensitive data involved credentials, financial information, or personal information.

", @@ -7248,7 +7828,7 @@ "StandardsControlAssociationSummary$StandardsArn": "

The Amazon Resource Name (ARN) of a standard.

", "StandardsControlAssociationSummary$SecurityControlId": "

A unique standard-agnostic identifier for a control. Values for this field typically consist of an Amazon Web Service and a number, such as APIGateway.5. This field doesn't reference a specific standard.

", "StandardsControlAssociationSummary$SecurityControlArn": "

The ARN of a control, such as arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1. This parameter doesn't mention a specific standard.

", - "StandardsControlAssociationSummary$UpdatedReason": "

The reason for updating the control's enablement status in a specified standard.

", + "StandardsControlAssociationSummary$UpdatedReason": "

The reason for updating a control's enablement status in a specified standard.

", "StandardsControlAssociationSummary$StandardsControlTitle": "

The title of a control.

", "StandardsControlAssociationSummary$StandardsControlDescription": "

The description of a control. This typically summarizes how Security Hub evaluates the control and the conditions under which it produces a failed finding. The parameter may reference a specific standard.

", "StandardsControlAssociationUpdate$StandardsArn": "

The Amazon Resource Name (ARN) of the standard in which you want to update the control's enablement status.

", @@ -7262,11 +7842,24 @@ "StandardsSubscription$StandardsArn": "

The ARN of a standard.

", "StandardsSubscriptionArns$member": null, "StandardsSubscriptionRequest$StandardsArn": "

The ARN of the standard that you want to enable. To view the list of available standards and their ARNs, use the DescribeStandards operation.

", + "StartConfigurationPolicyAssociationRequest$ConfigurationPolicyIdentifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", + "StartConfigurationPolicyAssociationResponse$ConfigurationPolicyId": "

The UUID of the configuration policy.

", + "StartConfigurationPolicyAssociationResponse$TargetId": "

The identifier of the target account, organizational unit, or the organization root with which the configuration is associated.

", + "StartConfigurationPolicyAssociationResponse$AssociationStatusMessage": "

An explanation for a FAILED value for AssociationStatus.

", + "StartConfigurationPolicyDisassociationRequest$ConfigurationPolicyIdentifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", "StatelessCustomPublishMetricActionDimension$Value": "

The value to use for the custom metric dimension.

", "StatusReason$ReasonCode": "

A code that represents a reason for the control status. For the list of status reason codes and their meanings, see Standards-related information in the ASFF in the Security Hub User Guide.

", "StatusReason$Description": "

The corresponding description for the status reason code.

", + "StringConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is a string.

", + "StringConfigurationOptions$Re2Expression": "

An RE2 regular expression that Security Hub uses to validate a user-provided control parameter string.

", + "StringConfigurationOptions$ExpressionDescription": "

The description of the RE2 regular expression.

", "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 value, there's no match.

", "StringList$member": null, + "StringListConfigurationOptions$Re2Expression": "

An RE2 regular expression that Security Hub uses to validate a user-provided list of strings for a control parameter.

", + "StringListConfigurationOptions$ExpressionDescription": "

The description of the RE2 regular expression.

", + "Target$AccountId": "

The Amazon Web Services account ID of the target account.

", + "Target$OrganizationalUnitId": "

The organizational unit ID of the target organizational unit.

", + "Target$RootId": "

The ID of the organization root.

", "Threat$Name": "

The name of the threat.

", "Threat$Severity": "

The severity of the threat.

", "ThreatIntelIndicator$Value": "

The value of a threat intelligence indicator.

", @@ -7276,6 +7869,8 @@ "TypeList$member": null, "UnprocessedAutomationRule$RuleArn": "

The Amazon Resource Name (ARN) for the unprocessed automation rule.

", "UnprocessedAutomationRule$ErrorMessage": "

An error message describing why a request didn't process a specific rule.

", + "UnprocessedConfigurationPolicyAssociation$ErrorCode": "

An HTTP status code that identifies why the configuration policy association failed.

", + "UnprocessedConfigurationPolicyAssociation$ErrorReason": "

A string that identifies why the configuration policy association failed.

", "UnprocessedSecurityControl$SecurityControlId": "

The control (identified with SecurityControlId, SecurityControlArn, or a mix of both parameters) for which a response couldn't be returned.

", "UnprocessedSecurityControl$ErrorReason": "

The reason why the security control was unprocessed.

", "UnprocessedStandardsControlAssociation$ErrorReason": "

The reason why the standard and control association was unprocessed.

", @@ -7286,6 +7881,14 @@ "UpdateAutomationRulesRequestItem$RuleArn": "

The Amazon Resource Name (ARN) for the rule.

", "UpdateAutomationRulesRequestItem$Description": "

A description of the rule.

", "UpdateAutomationRulesRequestItem$RuleName": "

The name of the rule.

", + "UpdateConfigurationPolicyRequest$Identifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", + "UpdateConfigurationPolicyRequest$Name": "

The name of the configuration policy.

", + "UpdateConfigurationPolicyRequest$Description": "

The description of the configuration policy.

", + "UpdateConfigurationPolicyRequest$UpdatedReason": "

The reason for updating the configuration policy.

", + "UpdateConfigurationPolicyResponse$Arn": "

The ARN of the configuration policy.

", + "UpdateConfigurationPolicyResponse$Id": "

The UUID of the configuration policy.

", + "UpdateConfigurationPolicyResponse$Name": "

The name of the configuration policy.

", + "UpdateConfigurationPolicyResponse$Description": "

The description of the configuration policy.

", "UpdateFindingAggregatorRequest$FindingAggregatorArn": "

The ARN of the finding aggregator. To obtain the ARN, use ListFindingAggregators.

", "UpdateFindingAggregatorRequest$RegionLinkingMode": "

Indicates whether to aggregate findings from all of the available Regions in the current partition. Also determines whether to automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.

The selected option also determines how to use the Regions provided in the Regions list.

The options are as follows:

  • ALL_REGIONS - Indicates to aggregate findings from all of the Regions where Security Hub is enabled. When you choose this option, Security Hub also automatically aggregates findings from new Regions as Security Hub supports them and you opt into them.

  • ALL_REGIONS_EXCEPT_SPECIFIED - Indicates to aggregate findings from all of the Regions where Security Hub is enabled, except for the Regions listed in the Regions parameter. When you choose this option, Security Hub also automatically aggregates findings from new Regions as Security Hub supports them and you opt into them.

  • SPECIFIED_REGIONS - Indicates to aggregate findings only from the Regions listed in the Regions parameter. Security Hub does not automatically aggregate findings from new Regions.

", "UpdateFindingAggregatorResponse$FindingAggregatorArn": "

The ARN of the finding aggregator.

", @@ -7294,6 +7897,7 @@ "UpdateInsightRequest$InsightArn": "

The ARN of the insight that you want to update.

", "UpdateInsightRequest$Name": "

The updated name for the insight.

", "UpdateInsightRequest$GroupByAttribute": "

The updated GroupBy attribute that defines this insight.

", + "UpdateSecurityControlRequest$SecurityControlId": "

The Amazon Resource Name (ARN) or ID of the control to update.

", "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.

", @@ -7442,6 +8046,25 @@ "SensitiveDataDetections$Occurrences": "

Details about the sensitive data that was detected.

" } }, + "OrganizationConfiguration": { + "base": "

Provides information about the way an organization is configured in Security Hub.

", + "refs": { + "DescribeOrganizationConfigurationResponse$OrganizationConfiguration": null, + "UpdateOrganizationConfigurationRequest$OrganizationConfiguration": null + } + }, + "OrganizationConfigurationConfigurationType": { + "base": null, + "refs": { + "OrganizationConfiguration$ConfigurationType": "

Indicates whether the organization uses local or central configuration.

If you use local configuration, the Security Hub delegated administrator can set AutoEnable to true and AutoEnableStandards to DEFAULT. This automatically enables Security Hub and default security standards in new organization accounts. These new account settings must be set separately in each Amazon Web Services Region, and settings may be different in each Region.

If you use central configuration, the delegated administrator can create configuration policies. Configuration policies can be used to configure Security Hub, security standards, and security controls in multiple accounts and Regions. If you want new organization accounts to use a specific configuration, you can create a configuration policy and associate it with the root or specific organizational units (OUs). New accounts will inherit the policy from the root or their assigned OU.

" + } + }, + "OrganizationConfigurationStatus": { + "base": null, + "refs": { + "OrganizationConfiguration$Status": "

Describes whether central configuration could be enabled as the ConfigurationType for the organization. If your ConfigurationType is local configuration, then the value of Status is always ENABLED.

" + } + }, "Page": { "base": "

An occurrence of sensitive data in an Adobe Portable Document Format (PDF) file.

", "refs": { @@ -7454,6 +8077,44 @@ "Occurrences$Pages": "

Occurrences of sensitive data in an Adobe Portable Document Format (PDF) file.

" } }, + "ParameterConfiguration": { + "base": "

An object that provides the current value of a security control parameter and identifies whether it has been customized.

", + "refs": { + "Parameters$value": null + } + }, + "ParameterDefinition": { + "base": "

An object that describes a security control parameter and the options for customizing it.

", + "refs": { + "ParameterDefinitions$value": null + } + }, + "ParameterDefinitions": { + "base": null, + "refs": { + "SecurityControlDefinition$ParameterDefinitions": "

An object that provides a security control parameter name, description, and the options for customizing it. This object is excluded for a control that doesn't support custom parameters.

" + } + }, + "ParameterValue": { + "base": "

An object that includes the data type of a security control parameter and its current value.

", + "refs": { + "ParameterConfiguration$Value": "

The current value of a control parameter.

" + } + }, + "ParameterValueType": { + "base": null, + "refs": { + "ParameterConfiguration$ValueType": "

Identifies whether a control parameter uses a custom user-defined value or the Security Hub default value.

" + } + }, + "Parameters": { + "base": null, + "refs": { + "SecurityControl$Parameters": "

An object that identifies the name of a control parameter, its current value, and whether it has been customized.

", + "SecurityControlCustomParameter$Parameters": "

An object that specifies parameter values for a control in a configuration policy.

", + "UpdateSecurityControlRequest$Parameters": "

An object that specifies which security control parameters to update.

" + } + }, "Partition": { "base": null, "refs": { @@ -7466,6 +8127,16 @@ "AwsSecurityFinding$PatchSummary": "

Provides an overview of the patch compliance status for an instance against a selected compliance standard.

" } }, + "Policy": { + "base": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "refs": { + "CreateConfigurationPolicyRequest$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "CreateConfigurationPolicyResponse$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the request included a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If the request included a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "GetConfigurationPolicyResponse$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the policy includes a list of security controls that are enabled, Security Hub disables all other controls (including newly released controls). If the policy includes a list of security controls that are disabled, Security Hub enables all other controls (including newly released controls).

", + "UpdateConfigurationPolicyRequest$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

When updating a configuration policy, provide a complete list of standards that you want to enable and a complete list of controls that you want to enable or disable. The updated configuration replaces the current configuration.

", + "UpdateConfigurationPolicyResponse$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the request included a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If the request included a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

" + } + }, "PortProbeAction": { "base": "

Provided if ActionType is PORT_PROBE. It provides details about the attempted port probe that was detected.

", "refs": { @@ -7652,6 +8323,11 @@ "Resource$Details": "

Additional details about the resource related to a finding.

" } }, + "ResourceInUseException": { + "base": "

The request was rejected because it conflicts with the resource's availability. For example, you tried to update a security control that's currently in the UPDATING state.

", + "refs": { + } + }, "ResourceList": { "base": null, "refs": { @@ -7896,9 +8572,22 @@ "SecurityControls$member": null } }, + "SecurityControlCustomParameter": { + "base": "

A list of security controls and control parameter values that are included in a configuration policy.

", + "refs": { + "SecurityControlCustomParametersList$member": null + } + }, + "SecurityControlCustomParametersList": { + "base": null, + "refs": { + "SecurityControlsConfiguration$SecurityControlCustomParameters": "

A list of security controls and control parameter values that are included in a configuration policy.

" + } + }, "SecurityControlDefinition": { "base": "

Provides metadata for a security control, including its unique standard-agnostic identifier, title, description, severity, availability in Amazon Web Services Regions, and a link to remediation steps.

", "refs": { + "GetSecurityControlDefinitionResponse$SecurityControlDefinition": null, "SecurityControlDefinitions$member": null } }, @@ -7908,18 +8597,48 @@ "ListSecurityControlDefinitionsResponse$SecurityControlDefinitions": "

An array of controls that apply to the specified standard.

" } }, + "SecurityControlParameter": { + "base": "

A parameter that a security control accepts.

", + "refs": { + "SecurityControlParametersList$member": null + } + }, + "SecurityControlParametersList": { + "base": null, + "refs": { + "Compliance$SecurityControlParameters": "

An object that includes security control parameter names and values.

" + } + }, + "SecurityControlProperty": { + "base": null, + "refs": { + "CustomizableProperties$member": null + } + }, "SecurityControls": { "base": null, "refs": { "BatchGetSecurityControlsResponse$SecurityControls": "

An array that returns the identifier, Amazon Resource Name (ARN), and other details about a security control. The same information is returned whether the request includes SecurityControlId or SecurityControlArn.

" } }, + "SecurityControlsConfiguration": { + "base": "

An object that defines which security controls are enabled in an Security Hub configuration policy. The enablement status of a control is aligned across all of the enabled standards in an account.

", + "refs": { + "SecurityHubPolicy$SecurityControlsConfiguration": "

An object that defines which security controls are enabled in the configuration policy. The enablement status of a control is aligned across all of the enabled standards in an account.

" + } + }, "SecurityGroups": { "base": null, "refs": { "AwsElbv2LoadBalancerDetails$SecurityGroups": "

The IDs of the security groups for the load balancer.

" } }, + "SecurityHubPolicy": { + "base": "

An object that defines how Security Hub is configured. The configuration policy includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "refs": { + "Policy$SecurityHub": "

The Amazon Web Service that the configuration policy applies to.

" + } + }, "SensitiveDataDetections": { "base": "

The list of detected instances of sensitive data.

", "refs": { @@ -8148,6 +8867,26 @@ "GetEnabledStandardsResponse$StandardsSubscriptions": "

The list of StandardsSubscriptions objects that include information about the enabled standards.

" } }, + "StartConfigurationPolicyAssociationRequest": { + "base": null, + "refs": { + } + }, + "StartConfigurationPolicyAssociationResponse": { + "base": null, + "refs": { + } + }, + "StartConfigurationPolicyDisassociationRequest": { + "base": null, + "refs": { + } + }, + "StartConfigurationPolicyDisassociationResponse": { + "base": null, + "refs": { + } + }, "StatelessCustomActionDefinition": { "base": "

The definition of a custom action that can be used for stateless packet handling.

", "refs": { @@ -8191,6 +8930,12 @@ "Compliance$StatusReasons": "

For findings generated from controls, a list of reasons behind the value of Status. For the list of status reason codes and their meanings, see Standards-related information in the ASFF in the Security Hub User Guide.

" } }, + "StringConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is a string.

", + "refs": { + "ConfigurationOptions$String": "

The options for customizing a security control parameter that is a string data type.

" + } + }, "StringFilter": { "base": "

A string filter for filtering Security Hub findings.

", "refs": { @@ -8207,7 +8952,7 @@ "base": null, "refs": { "AutomationRulesFindingFilters$ProductArn": "

The Amazon Resource Name (ARN) for a third-party product that generated a finding in Security Hub.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", - "AutomationRulesFindingFilters$AwsAccountId": "

The Amazon Web Services account ID in which a finding was generated.

Array Members: Minimum number of 1 item. Maximum number of 100 items.

", + "AutomationRulesFindingFilters$AwsAccountId": "

The Amazon Web Services account ID in which a finding was generated.

Array Members: Minimum number of 1 item. Maximum number of 100 items.

", "AutomationRulesFindingFilters$Id": "

The product-specific identifier for a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AutomationRulesFindingFilters$GeneratorId": "

The identifier for the solution-specific component that generated a finding.

Array Members: Minimum number of 1 item. Maximum number of 100 items.

", "AutomationRulesFindingFilters$Type": "

One or more finding types in the format of namespace/category/classifier that classify a finding. For a list of namespaces, classifiers, and categories, see Types taxonomy for ASFF in the Security Hub User Guide.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", @@ -8231,8 +8976,11 @@ "AutomationRulesFindingFilters$RelatedFindingsId": "

The product-generated identifier for a related finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AutomationRulesFindingFilters$NoteText": "

The text of a user-defined note that's added to a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AutomationRulesFindingFilters$NoteUpdatedBy": "

The principal that created a note.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", + "AutomationRulesFindingFilters$ResourceApplicationArn": "

The Amazon Resource Name (ARN) of the application that is related to a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", + "AutomationRulesFindingFilters$ResourceApplicationName": "

The name of the application that is related to a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", + "AutomationRulesFindingFilters$AwsAccountName": "

The name of the Amazon Web Services account in which a finding was generated.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AwsSecurityFindingFilters$ProductArn": "

The ARN generated by Security Hub that uniquely identifies a third-party company (security findings provider) after this provider's product (solution that generates findings) is registered with Security Hub.

", - "AwsSecurityFindingFilters$AwsAccountId": "

The Amazon Web Services account ID that a finding is generated in.

", + "AwsSecurityFindingFilters$AwsAccountId": "

The Amazon Web Services account ID in which a finding is generated.

", "AwsSecurityFindingFilters$Id": "

The security findings provider-specific identifier for a finding.

", "AwsSecurityFindingFilters$GeneratorId": "

The identifier for the solution-specific component (a discrete unit of logic) that generated a finding. In various security findings providers' solutions, this generator can be called a rule, a check, a detector, a plugin, etc.

", "AwsSecurityFindingFilters$Region": "

The Region from which the finding was generated.

", @@ -8294,7 +9042,14 @@ "AwsSecurityFindingFilters$FindingProviderFieldsSeverityOriginal": "

The finding provider's original value for the severity.

", "AwsSecurityFindingFilters$FindingProviderFieldsTypes": "

One or more finding types that the finding provider assigned to the finding. Uses the format of namespace/category/classifier that classify a finding.

Valid namespace values are: Software and Configuration Checks | TTPs | Effects | Unusual Behaviors | Sensitive Data Identifications

", "AwsSecurityFindingFilters$ComplianceSecurityControlId": "

The unique identifier of a control across standards. Values for this field typically consist of an Amazon Web Service and a number, such as APIGateway.5.

", - "AwsSecurityFindingFilters$ComplianceAssociatedStandardsId": "

The unique identifier of a standard in which a control is enabled. This field consists of the resource portion of the Amazon Resource Name (ARN) returned for a standard in the DescribeStandards API response.

" + "AwsSecurityFindingFilters$ComplianceAssociatedStandardsId": "

The unique identifier of a standard in which a control is enabled. This field consists of the resource portion of the Amazon Resource Name (ARN) returned for a standard in the DescribeStandards API response.

", + "AwsSecurityFindingFilters$VulnerabilitiesExploitAvailable": "

Indicates whether a software vulnerability in your environment has a known exploit. You can filter findings by this field only if you use Security Hub and Amazon Inspector.

", + "AwsSecurityFindingFilters$VulnerabilitiesFixAvailable": "

Indicates whether a vulnerability is fixed in a newer version of the affected software packages. You can filter findings by this field only if you use Security Hub and Amazon Inspector.

", + "AwsSecurityFindingFilters$ComplianceSecurityControlParametersName": "

The name of a security control parameter.

", + "AwsSecurityFindingFilters$ComplianceSecurityControlParametersValue": "

The current value of a security control parameter.

", + "AwsSecurityFindingFilters$AwsAccountName": "

The name of the Amazon Web Services account in which a finding is generated.

", + "AwsSecurityFindingFilters$ResourceApplicationName": "

The name of the application that is related to a finding.

", + "AwsSecurityFindingFilters$ResourceApplicationArn": "

The ARN of the application that is related to a finding.

" } }, "StringList": { @@ -8317,6 +9072,7 @@ "AwsElbLoadBalancerListenerDescription$PolicyNames": "

The policies enabled for the listener.

", "AwsElbLoadBalancerPolicies$OtherPolicies": "

The policies other than the stickiness policies.

", "AwsIamUserDetails$GroupList": "

A list of IAM groups that the user belongs to.

", + "AwsMskClusterClusterInfoClientAuthenticationTlsDetails$CertificateAuthorityArnList": "

List of Amazon Web Services Private CA Amazon Resource Names (ARNs). Amazon Web Services Private CA enables creation of private certificate authority (CA) hierarchies, including root and subordinate CAs, without the investment and maintenance costs of operating an on-premises CA.

", "AwsRdsDbClusterDetails$AvailabilityZones": "

A list of Availability Zones (AZs) where instances in the DB cluster can be created.

", "AwsRdsDbClusterDetails$CustomEndpoints": "

A list of custom endpoints for the DB cluster.

", "AwsRdsDbClusterDetails$ReadReplicaIdentifiers": "

The identifiers of the read replicas that are associated with this DB cluster.

", @@ -8332,14 +9088,26 @@ "BatchGetSecurityControlsRequest$SecurityControlIds": "

A list of security controls (identified with SecurityControlId, SecurityControlArn, or a mix of both parameters). The security control ID or Amazon Resource Name (ARN) is the same across standards.

", "CreateFindingAggregatorRequest$Regions": "

If RegionLinkingMode is ALL_REGIONS_EXCEPT_SPECIFIED, then this is a space-separated list of Regions that do not aggregate findings to the aggregation Region.

If RegionLinkingMode is SPECIFIED_REGIONS, then this is a space-separated list of Regions that do aggregate findings to the aggregation Region.

", "CreateFindingAggregatorResponse$Regions": "

The list of excluded Regions or included Regions.

", + "EnumConfigurationOptions$AllowedValues": "

The valid values for a control parameter that is an enum.

", + "EnumListConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is a list of enums.

", + "EnumListConfigurationOptions$AllowedValues": "

The valid values for a control parameter that is a list of enums.

", "GetFindingAggregatorResponse$Regions": "

The list of excluded Regions or included Regions.

", "NetworkPathComponentDetails$Address": "

The IP addresses of the destination.

", + "ParameterValue$StringList": "

A control parameter that is a list of strings.

", + "ParameterValue$EnumList": "

A control parameter that is a list of enums.

", + "StringListConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is a list of strings.

", "UpdateFindingAggregatorRequest$Regions": "

If RegionLinkingMode is ALL_REGIONS_EXCEPT_SPECIFIED, then this is a space-separated list of Regions that do not aggregate findings to the aggregation Region.

If RegionLinkingMode is SPECIFIED_REGIONS, then this is a space-separated list of Regions that do aggregate findings to the aggregation Region.

", "UpdateFindingAggregatorResponse$Regions": "

The list of excluded Regions or included Regions.

", "Vulnerability$RelatedVulnerabilities": "

List of vulnerabilities that are related to this vulnerability.

", "Vulnerability$ReferenceUrls": "

A list of URLs that provide additional information about the vulnerability.

" } }, + "StringListConfigurationOptions": { + "base": "

The options for customizing a security control parameter that is a list of strings.

", + "refs": { + "ConfigurationOptions$StringList": "

The options for customizing a security control parameter that is a list of strings.

" + } + }, "TagKey": { "base": null, "refs": { @@ -8356,7 +9124,8 @@ "TagMap": { "base": null, "refs": { - "CreateAutomationRuleRequest$Tags": "

User-defined tags that help you label the purpose of a rule.

", + "CreateAutomationRuleRequest$Tags": "

User-defined tags associated with an automation rule.

", + "CreateConfigurationPolicyRequest$Tags": "

User-defined tags associated with a configuration policy. For more information, see Tagging Security Hub resources in the Security Hub user guide.

", "EnableSecurityHubRequest$Tags": "

The tags to add to the hub resource when you enable Security Hub.

", "ListTagsForResourceResponse$Tags": "

The tags associated with a resource.

", "TagResourceRequest$Tags": "

The tags to add to the resource. You can add up to 50 tags at a time. The tag keys can be no longer than 128 characters. The tag values can be no longer than 256 characters.

" @@ -8378,6 +9147,23 @@ "TagMap$value": null } }, + "Target": { + "base": "

The target account, organizational unit, or the root that is associated with an Security Hub configuration. The configuration can be a configuration policy or self-managed behavior.

", + "refs": { + "ConfigurationPolicyAssociation$Target": "

The target account, organizational unit, or the root.

", + "GetConfigurationPolicyAssociationRequest$Target": "

The target account ID, organizational unit ID, or the root ID to retrieve the association for.

", + "StartConfigurationPolicyAssociationRequest$Target": "

The identifier of the target account, organizational unit, or the root to associate with the specified configuration.

", + "StartConfigurationPolicyDisassociationRequest$Target": "

The identifier of the target account, organizational unit, or the root to disassociate from the specified configuration.

" + } + }, + "TargetType": { + "base": null, + "refs": { + "ConfigurationPolicyAssociationSummary$TargetType": "

Specifies whether the target is an Amazon Web Services account, organizational unit, or the root.

", + "GetConfigurationPolicyAssociationResponse$TargetType": "

Specifies whether the target is an Amazon Web Services account, organizational unit, or the organization root.

", + "StartConfigurationPolicyAssociationResponse$TargetType": "

Indicates whether the target is an Amazon Web Services account, organizational unit, or the organization root.

" + } + }, "Threat": { "base": "

Provides information about the threat detected in a security finding and the file paths that were affected by the threat.

", "refs": { @@ -8421,7 +9207,14 @@ "AutomationRulesConfig$UpdatedAt": "

A timestamp that indicates when the rule was most recently updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AutomationRulesMetadata$CreatedAt": "

A timestamp that indicates when the rule was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AutomationRulesMetadata$UpdatedAt": "

A timestamp that indicates when the rule was most recently updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", + "ConfigurationPolicyAssociationSummary$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.

", + "ConfigurationPolicySummary$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "CreateConfigurationPolicyResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "CreateConfigurationPolicyResponse$CreatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was created.

", "FindingHistoryRecord$UpdateTime": "

An ISO 8601-formatted timestamp that indicates when Security Hub processed the updated finding record.

A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

", + "GetConfigurationPolicyAssociationResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.

", + "GetConfigurationPolicyResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "GetConfigurationPolicyResponse$CreatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was created.

", "GetFindingHistoryRequest$StartTime": "

An ISO 8601-formatted timestamp that indicates the start time of the requested finding history. A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

If you provide values for both StartTime and EndTime, Security Hub returns finding history for the specified time period. If you provide a value for StartTime but not for EndTime, Security Hub returns finding history from the StartTime to the time at which the API is called. If you provide a value for EndTime but not for StartTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the EndTime. If you provide neither StartTime nor EndTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the time at which the API is called. In all of these scenarios, the response is limited to 100 results, and the maximum time period is limited to 90 days.

", "GetFindingHistoryRequest$EndTime": "

An ISO 8601-formatted timestamp that indicates the end time of the requested finding history. A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

If you provide values for both StartTime and EndTime, Security Hub returns finding history for the specified time period. If you provide a value for StartTime but not for EndTime, Security Hub returns finding history from the StartTime to the time at which the API is called. If you provide a value for EndTime but not for StartTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the EndTime. If you provide neither StartTime nor EndTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the time at which the API is called. In all of these scenarios, the response is limited to 100 results, and the maximum time period is limited to 90 days.

", "Invitation$InvitedAt": "

The timestamp of when the invitation was sent.

", @@ -8429,7 +9222,10 @@ "Member$UpdatedAt": "

The timestamp for the date and time when the member account was updated.

", "StandardsControl$ControlStatusUpdatedAt": "

The date and time that the status of the security standard control was most recently updated.

", "StandardsControlAssociationDetail$UpdatedAt": "

The time at which the enablement status of the control in the specified standard was last updated.

", - "StandardsControlAssociationSummary$UpdatedAt": "

The last time that a control's enablement status in a specified standard was updated.

" + "StandardsControlAssociationSummary$UpdatedAt": "

The last time that a control's enablement status in a specified standard was updated.

", + "StartConfigurationPolicyAssociationResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.

", + "UpdateConfigurationPolicyResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "UpdateConfigurationPolicyResponse$CreatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was created.

" } }, "TypeList": { @@ -8440,6 +9236,7 @@ "BatchUpdateFindingsRequest$Types": "

One or more finding types in the format of namespace/category/classifier that classify a finding.

Valid namespace values are as follows.

  • Software and Configuration Checks

  • TTPs

  • Effects

  • Unusual Behaviors

  • Sensitive Data Identifications

", "FindingProviderFields$Types": "

One or more finding types in the format of namespace/category/classifier that classify a finding.

Valid namespace values are: Software and Configuration Checks | TTPs | Effects | Unusual Behaviors | Sensitive Data Identifications

", "GeneratorDetails$Labels": "

An array of tags used to identify the detector associated with the finding.

", + "SecurityControlParameter$Value": "

The current value of a control parameter.

", "VulnerabilityCodeVulnerabilities$Cwes": "

The Common Weakness Enumeration (CWE) item associated with the detected code vulnerability.

" } }, @@ -8457,6 +9254,18 @@ "BatchUpdateAutomationRulesResponse$UnprocessedAutomationRules": "

A list of objects containing RuleArn, ErrorCode, and ErrorMessage. This parameter tells you which automation rules the request didn't update and why.

" } }, + "UnprocessedConfigurationPolicyAssociation": { + "base": "

An array of configuration policy associations, one for each configuration policy association identifier, that was specified in a BatchGetConfigurationPolicyAssociations request but couldn’t be processed due to an error.

", + "refs": { + "UnprocessedConfigurationPolicyAssociationList$member": null + } + }, + "UnprocessedConfigurationPolicyAssociationList": { + "base": null, + "refs": { + "BatchGetConfigurationPolicyAssociationsResponse$UnprocessedConfigurationPolicyAssociations": "

An array of configuration policy associations, one for each configuration policy association identifier, that was specified in the request but couldn’t be processed due to an error.

" + } + }, "UnprocessedErrorCode": { "base": null, "refs": { @@ -8533,6 +9342,16 @@ "BatchUpdateAutomationRulesRequest$UpdateAutomationRulesRequestItems": "

An array of ARNs for the rules that are to be updated. Optionally, you can also include RuleStatus and RuleOrder.

" } }, + "UpdateConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "UpdateConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "UpdateFindingAggregatorRequest": { "base": null, "refs": { @@ -8573,6 +9392,16 @@ "refs": { } }, + "UpdateSecurityControlRequest": { + "base": null, + "refs": { + } + }, + "UpdateSecurityControlResponse": { + "base": null, + "refs": { + } + }, "UpdateSecurityHubConfigurationRequest": { "base": null, "refs": { @@ -8593,6 +9422,12 @@ "refs": { } }, + "UpdateStatus": { + "base": null, + "refs": { + "SecurityControl$UpdateStatus": "

Identifies whether customizable properties of a security control are reflected in Security Hub findings. A status of READY indicates findings include the current parameter values. A status of UPDATING indicates that all findings may not include the current parameter values.

" + } + }, "VerificationState": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -208,6 +208,57 @@ "title": "To update one ore more automation rules" } ], + "BatchGetConfigurationPolicyAssociations": [ + { + "input": { + "ConfigurationPolicyAssociationIdentifiers": [ + { + "Target": { + "AccountId": "111122223333" + } + }, + { + "Target": { + "RootId": "r-f6g7h8i9j0example" + } + } + ] + }, + "output": { + "ConfigurationPolicyAssociations": [ + { + "AssociationStatus": "SUCCESS", + "AssociationStatusMessage": "This field is only populated for a failed association", + "AssociationType": "INHERITED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "111122223333", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + } + ], + "UnprocessedConfigurationPolicyAssociations": [ + { + "ConfigurationPolicyAssociationIdentifiers": { + "Target": { + "RootId": "r-f6g7h8i9j0example" + } + }, + "ErrorCode": "400", + "ErrorReason": "You do not have sufficient access to perform this action." + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides details about configuration associations for a batch of target accounts, organizational units, or the root.", + "id": "to-get-configuration-associations-for-a-batch-of-targets-1695178953302", + "title": "To get configuration associations for a batch of targets" + } + ], "BatchGetSecurityControls": [ { "input": { @@ -220,21 +271,41 @@ "SecurityControls": [ { "Description": "This AWS control checks whether ACM Certificates in your account are marked for expiration within a specified time period. Certificates provided by ACM are automatically renewed. ACM does not automatically renew certificates that you import.", + "LastUpdateReason": "Stayed with default value", + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 30 + }, + "ValueType": "DEFAULT" + } + }, "RemediationUrl": "https://docs.aws.amazon.com/console/securityhub/ACM.1/remediation", "SecurityControlArn": "arn:aws:securityhub:us-west-2:123456789012:security-control/ACM.1", "SecurityControlId": "ACM.1", "SecurityControlStatus": "ENABLED", "SeverityRating": "MEDIUM", - "Title": "Imported and ACM-issued certificates should be renewed after a specified time period" + "Title": "Imported and ACM-issued certificates should be renewed after a specified time period", + "UpdateStatus": "UPDATING" }, { "Description": "This control checks whether all stages of Amazon API Gateway REST and WebSocket APIs have logging enabled. The control fails if logging is not enabled for all methods of a stage or if loggingLevel is neither ERROR nor INFO.", + "LastUpdateReason": "Updated control parameters to comply with internal requirements", + "Parameters": { + "loggingLevel": { + "Value": { + "Enum": "ERROR" + }, + "ValueType": "CUSTOM" + } + }, "RemediationUrl": "https://docs.aws.amazon.com/console/securityhub/APIGateway.1/remediation", "SecurityControlArn": "arn:aws:securityhub:us-west-2:123456789012:security-control/APIGateway.1", "SecurityControlId": "APIGateway.1", "SecurityControlStatus": "ENABLED", "SeverityRating": "MEDIUM", - "Title": "API Gateway REST and WebSocket API execution logging should be enabled" + "Title": "API Gateway REST and WebSocket API execution logging should be enabled", + "UpdateStatus": "UPDATING" } ] }, @@ -587,6 +658,85 @@ "title": "To create an automation rule" } ], + "CreateConfigurationPolicy": [ + { + "input": { + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 14 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "Description": "Configuration policy for testing FSBP and CIS", + "Name": "TestConfigurationPolicy" + }, + "output": { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 14 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "CreatedAt": "2023-01-11T06:17:17.154Z", + "Description": "Configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation creates a configuration policy in Security Hub.", + "id": "to-create-a-configuration-policy-1695172470099", + "title": "To create a configuration policy" + } + ], "CreateFindingAggregator": [ { "input": { @@ -721,6 +871,22 @@ "title": "To delete a custom action target" } ], + "DeleteConfigurationPolicy": [ + { + "input": { + "Identifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation deletes the specified configuration policy.", + "id": "to-delete-a-configuration-policy-1695174614062", + "title": "To delete a configuration policy" + } + ], "DeleteFindingAggregator": [ { "input": { @@ -857,9 +1023,13 @@ "input": { }, "output": { - "AutoEnable": true, - "AutoEnableStandards": "DEFAULT", - "MemberAccountLimitReached": true + "AutoEnable": false, + "AutoEnableStandards": "NONE", + "MemberAccountLimitReached": false, + "OrganizationConfiguration": { + "ConfigurationType": "CENTRAL", + "Status": "ENABLED" + } }, "comments": { "input": { @@ -867,9 +1037,9 @@ "output": { } }, - "description": "The following example returns details about the way in which AWS Organizations is configured for a Security Hub account that belongs to an organization. Only a Security Hub administrator account can call this operation.", - "id": "to-get-information-about-organizations-configuration-1676059786304", - "title": "To get information about Organizations configuration" + "description": "This operation provides information about the way your organization is configured in Security Hub. Only a Security Hub administrator account can invoke this operation.", + "id": "to-get-information-about-organization-configuration-1676059786304", + "title": "To get information about organization configuration" } ], "DescribeProducts": [ @@ -1158,6 +1328,84 @@ "title": "To get details about the Security Hub administrator account" } ], + "GetConfigurationPolicy": [ + { + "input": { + "Identifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + }, + "output": { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 14 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "CreatedAt": "2023-01-11T06:17:17.154Z", + "Description": "Configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides details about the specified configuration policy.", + "id": "to-get-details-about-a-configuration-policy-1695173701103", + "title": "To get details about a configuration policy" + } + ], + "GetConfigurationPolicyAssociation": [ + { + "input": { + "Target": { + "AccountId": "111122223333" + } + }, + "output": { + "AssociationStatus": "FAILED", + "AssociationStatusMessage": "Configuration Policy a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 couldn’t be applied to account 111122223333 in us-east-1 Region. Retry your request.", + "AssociationType": "INHERITED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "111122223333", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides details about configuration associations for a specific target account, organizational unit, or the root.", + "id": "to-get-details-about-a-configuration-association-1695177816371", + "title": "To get details about a configuration association" + } + ], "GetEnabledStandards": [ { "input": { @@ -1502,6 +1750,44 @@ "title": "To get member account details" } ], + "GetSecurityControlDefinition": [ + { + "input": { + "SecurityControlId": "EC2.4" + }, + "output": { + "SecurityControlDefinition": { + "CurrentRegionAvailability": "AVAILABLE", + "Description": "This control checks whether an Amazon EC2 instance has been stopped for longer than the allowed number of days. The control fails if an EC2 instance is stopped for longer than the maximum allowed time period. Unless you provide a custom parameter value for the maximum allowed time period, Security Hub uses a default value of 30 days.", + "ParameterDefinitions": { + "AllowedDays": { + "ConfigurationOptions": { + "Integer": { + "DefaultValue": 30, + "Max": 365, + "Min": 1 + } + }, + "Description": "Number of days the EC2 instance is allowed to be in a stopped state before generating a failed finding" + } + }, + "RemediationUrl": "https://docs.aws.amazon.com/console/securityhub/EC2.4/remediation", + "SecurityControlId": "EC2.4", + "SeverityRating": "MEDIUM", + "Title": "Stopped Amazon EC2 instances should be removed after a specified time period" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "The following example retrieves definition details for the specified security control.", + "id": "to-get-the-definition-of-a-security-control-1699283789356", + "title": "To get the definition of a security control." + } + ], "InviteMembers": [ { "input": { @@ -1568,6 +1854,69 @@ "title": "To list automation rules" } ], + "ListConfigurationPolicies": [ + { + "input": { + "MaxResults": 1, + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf" + }, + "output": { + "ConfigurationPolicySummaries": [ + { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Description": "Configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "ServiceEnabled": true, + "UpdatedAt": "2023-01-11T06:17:17.154Z" + } + ], + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOfvw3o2JqjI86QDxef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides a list of your configuration policies, including metadata for each policy.", + "id": "to-view-a-list-of-configuration-policies-1695173268602", + "title": "To view a list of configuration policies" + } + ], + "ListConfigurationPolicyAssociations": [ + { + "input": { + "Filters": { + "AssociationType": "APPLIED" + }, + "MaxResults": 1, + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf" + }, + "output": { + "ConfigurationPolicyAssociationSummaries": [ + { + "AssociationStatus": "PENDING", + "AssociationType": "APPLIED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "123456789012", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + } + ], + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOfvw3o2JqjI86QDxef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation lists all of the associations between targets and configuration policies or self-managed behavior. Targets can include accounts, organizational units, or the root.", + "id": "to-list-configuration-associations-1695177309791", + "title": "To list configuration associations" + } + ], "ListEnabledProductsForImport": [ { "output": { @@ -1700,6 +2049,9 @@ "SecurityControlDefinitions": [ { "CurrentRegionAvailability": "AVAILABLE", + "CustomizableProperties": [ + "Parameters" + ], "Description": "This AWS control checks whether ACM Certificates in your account are marked for expiration within a specified time period. Certificates provided by ACM are automatically renewed. ACM does not automatically renew certificates that you import.", "RemediationUrl": "https://docs.aws.amazon.com/console/securityhub/ACM.1/remediation", "SecurityControlId": "ACM.1", @@ -1708,6 +2060,9 @@ }, { "CurrentRegionAvailability": "AVAILABLE", + "CustomizableProperties": [ + "Parameters" + ], "Description": "This control checks whether all stages of Amazon API Gateway REST and WebSocket APIs have logging enabled. The control fails if logging is not enabled for all methods of a stage or if loggingLevel is neither ERROR nor INFO.", "RemediationUrl": "https://docs.aws.amazon.com/console/securityhub/APIGateway.1/remediation", "SecurityControlId": "APIGateway.1", @@ -1806,6 +2161,53 @@ "title": "To get a list of tags for a resource" } ], + "StartConfigurationPolicyAssociation": [ + { + "input": { + "ConfigurationPolicyIdentifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Target": { + "AccountId": "111122223333" + } + }, + "output": { + "AssociationStatus": "SUCCESS", + "AssociationStatusMessage": "This field is populated only if the association fails", + "AssociationType": "APPLIED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "111122223333", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation associates a configuration policy or self-managed behavior with the target account, organizational unit, or the root.", + "id": "to-associate-a-configuration-with-a-target-1695176455638", + "title": "To associate a configuration with a target" + } + ], + "StartConfigurationPolicyDisassociation": [ + { + "input": { + "ConfigurationPolicyIdentifier": "SELF_MANAGED_SECURITY_HUB", + "Target": { + "RootId": "r-f6g7h8i9j0example" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation disassociates a configuration policy or self-managed behavior from the target account, organizational unit, or the root.", + "id": "to-disassociate-a-configuration-from-a-target-1695177176748", + "title": "To disassociate a configuration from a target" + } + ], "TagResource": [ { "input": { @@ -1863,6 +2265,89 @@ "title": "To update the name and description of a custom action target" } ], + "UpdateConfigurationPolicy": [ + { + "input": { + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1", + "CloudWatch.2" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 21 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "Description": "Updated configuration policy for testing FSBP and CIS", + "Identifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedReason": "Enabling ACM.2" + }, + "output": { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1", + "CloudWatch.2" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 21 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "CreatedAt": "2023-01-11T06:17:17.154Z", + "Description": "Updated configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedAt": "2023-01-12T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation updates the specified configuration policy.", + "id": "to-update-a-configuration-policy-1695174120555", + "title": "To update a configuration policy" + } + ], "UpdateFindingAggregator": [ { "input": { @@ -1927,7 +2412,11 @@ "UpdateOrganizationConfiguration": [ { "input": { - "AutoEnable": true + "AutoEnable": false, + "AutoEnableStandards": "NONE", + "OrganizationConfiguration": { + "ConfigurationType": "CENTRAL" + } }, "comments": { "input": { @@ -1935,11 +2424,38 @@ "output": { } }, - "description": "The following example updates the configuration for an organization so that Security Hub is automatically activated for new member accounts. Only the Security Hub administrator account can call this operation.", + "description": "This operation updates the way your organization is configured in Security Hub. Only a Security Hub administrator account can invoke this operation.", "id": "to-update-organization-configuration-1678911630846", "title": "To update organization configuration" } ], + "UpdateSecurityControl": [ + { + "input": { + "LastUpdateReason": "Comply with internal requirements", + "Parameters": { + "maxCredentialUsageAge": { + "Value": { + "Integer": 15 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + }, + "output": { + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "The following example updates the specified security control. Specifically, this example updates control parameters.", + "id": "to-update-security-control-properties-1699282942434", + "title": "To update security control properties" + } + ], "UpdateSecurityHubConfiguration": [ { "input": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/securityhub/2018-10-26/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/securityhub/2018-10-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -48,6 +48,18 @@ "limit_key": "MaxResults", "result_key": "Insights" }, + "ListConfigurationPolicies": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ConfigurationPolicySummaries" + }, + "ListConfigurationPolicyAssociations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ConfigurationPolicyAssociationSummaries" + }, "ListEnabledProductsForImport": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog/2015-12-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog/2015-12-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog/2015-12-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog/2015-12-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3119,7 +3119,8 @@ "CLOUD_FORMATION_TEMPLATE", "MARKETPLACE", "TERRAFORM_OPEN_SOURCE", - "TERRAFORM_CLOUD" + "TERRAFORM_CLOUD", + "EXTERNAL" ], "max":8191 }, @@ -3542,7 +3543,8 @@ "MARKETPLACE_AMI", "MARKETPLACE_CAR", "TERRAFORM_OPEN_SOURCE", - "TERRAFORM_CLOUD" + "TERRAFORM_CLOUD", + "EXTERNAL" ] }, "ProvisioningArtifactView":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog/2015-12-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog/2015-12-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog/2015-12-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog/2015-12-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,7 +4,7 @@ "operations": { "AcceptPortfolioShare": "

Accepts an offer to share the specified portfolio.

", "AssociateBudgetWithResource": "

Associates the specified budget with the specified resource.

", - "AssociatePrincipalWithPortfolio": "

Associates the specified principal ARN with the specified portfolio.

If you share the portfolio with principal name sharing enabled, the PrincipalARN association is included in the share.

The PortfolioID, PrincipalARN, and PrincipalType parameters are required.

You can associate a maximum of 10 Principals with a portfolio using PrincipalType as IAM_PATTERN

When you associate a principal with portfolio, a potential privilege escalation path may occur when that portfolio is then shared with other accounts. For a user in a recipient account who is not an Service Catalog Admin, but still has the ability to create Principals (Users/Groups/Roles), that user could create a role that matches a principal name association for the portfolio. Although this user may not know which principal names are associated through Service Catalog, they may be able to guess the user. If this potential escalation path is a concern, then Service Catalog recommends using PrincipalType as IAM. With this configuration, the PrincipalARN must already exist in the recipient account before it can be associated.

", + "AssociatePrincipalWithPortfolio": "

Associates the specified principal ARN with the specified portfolio.

If you share the portfolio with principal name sharing enabled, the PrincipalARN association is included in the share.

The PortfolioID, PrincipalARN, and PrincipalType parameters are required.

You can associate a maximum of 10 Principals with a portfolio using PrincipalType as IAM_PATTERN.

When you associate a principal with portfolio, a potential privilege escalation path may occur when that portfolio is then shared with other accounts. For a user in a recipient account who is not an Service Catalog Admin, but still has the ability to create Principals (Users/Groups/Roles), that user could create a role that matches a principal name association for the portfolio. Although this user may not know which principal names are associated through Service Catalog, they may be able to guess the user. If this potential escalation path is a concern, then Service Catalog recommends using PrincipalType as IAM. With this configuration, the PrincipalARN must already exist in the recipient account before it can be associated.

", "AssociateProductWithPortfolio": "

Associates the specified product with the specified portfolio.

A delegated admin is authorized to invoke this command.

", "AssociateServiceActionWithProvisioningArtifact": "

Associates a self-service action with a provisioning artifact.

", "AssociateTagOptionWithResource": "

Associate the specified TagOption with the specified portfolio or product.

", @@ -2229,9 +2229,9 @@ "ProvisionedProductType": { "base": null, "refs": { - "ProvisionedProductAttribute$Type": "

The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET.

", - "ProvisionedProductDetail$Type": "

The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET.

", - "RecordDetail$ProvisionedProductType": "

The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, TERRAFORM_OPEN_SOURCE, and TERRAFORM_CLOUD.

" + "ProvisionedProductAttribute$Type": "

The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, TERRAFORM_OPEN_SOURCE, TERRAFORM_CLOUD, and EXTERNAL.

", + "ProvisionedProductDetail$Type": "

The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, TERRAFORM_OPEN_SOURCE, TERRAFORM_CLOUD, and EXTERNAL.

", + "RecordDetail$ProvisionedProductType": "

The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, TERRAFORM_OPEN_SOURCE, TERRAFORM_CLOUD, and EXTERNAL.

" } }, "ProvisionedProductViewFilterBy": { @@ -2416,8 +2416,8 @@ "ProvisioningArtifactType": { "base": null, "refs": { - "ProvisioningArtifactDetail$Type": "

The type of provisioning artifact.

CLOUD_FORMATION_TEMPLATE - CloudFormation template

", - "ProvisioningArtifactProperties$Type": "

The type of provisioning artifact.

  • CLOUD_FORMATION_TEMPLATE - CloudFormation template

  • TERRAFORM_OPEN_SOURCE - Terraform open source configuration file

" + "ProvisioningArtifactDetail$Type": "

The type of provisioning artifact.

  • CLOUD_FORMATION_TEMPLATE - CloudFormation template

  • TERRAFORM_OPEN_SOURCE - Terraform Open Source configuration file

  • TERRAFORM_CLOUD - Terraform Cloud configuration file

  • EXTERNAL - External configuration file

", + "ProvisioningArtifactProperties$Type": "

The type of provisioning artifact.

  • CLOUD_FORMATION_TEMPLATE - CloudFormation template

  • TERRAFORM_OPEN_SOURCE - Terraform Open Source configuration file

  • TERRAFORM_CLOUD - Terraform Cloud configuration file

  • EXTERNAL - External configuration file

" } }, "ProvisioningArtifactView": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog/2015-12-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog/2015-12-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog/2015-12-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog/2015-12-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -384,7 +384,8 @@ "description":{"shape":"Description"}, "creationTime":{"shape":"Timestamp"}, "lastUpdateTime":{"shape":"Timestamp"}, - "tags":{"shape":"Tags"} + "tags":{"shape":"Tags"}, + "applicationTag":{"shape":"ApplicationTagDefinition"} } }, "ApplicationArn":{ @@ -418,6 +419,28 @@ "lastUpdateTime":{"shape":"Timestamp"} } }, + "ApplicationTagDefinition":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + }, + "ApplicationTagResult":{ + "type":"structure", + "members":{ + "applicationTagStatus":{"shape":"ApplicationTagStatus"}, + "errorMessage":{"shape":"String"}, + "resources":{"shape":"ResourcesList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ApplicationTagStatus":{ + "type":"string", + "enum":[ + "IN_PROGRESS", + "SUCCESS", + "FAILURE" + ] + }, "Arn":{ "type":"string", "max":1600, @@ -472,20 +495,29 @@ "shape":"ResourceSpecifier", "location":"uri", "locationName":"resource" - } + }, + "options":{"shape":"Options"} } }, "AssociateResourceResponse":{ "type":"structure", "members":{ "applicationArn":{"shape":"ApplicationArn"}, - "resourceArn":{"shape":"Arn"} + "resourceArn":{"shape":"Arn"}, + "options":{"shape":"Options"} } }, "AssociationCount":{ "type":"integer", "min":0 }, + "AssociationOption":{ + "type":"string", + "enum":[ + "APPLY_APPLICATION_TAG", + "SKIP_APPLICATION_TAG" + ] + }, "AttributeGroup":{ "type":"structure", "members":{ @@ -507,11 +539,7 @@ "members":{ "id":{"shape":"AttributeGroupId"}, "arn":{"shape":"AttributeGroupArn"}, - "name":{ - "shape":"Name", - "deprecated":true, - "deprecatedMessage":"This field is deprecated. We recommend not using the field when using ListAttributeGroupsForApplication." - }, + "name":{"shape":"Name"}, "createdBy":{"shape":"CreatedBy"} } }, @@ -741,9 +769,16 @@ "lastUpdateTime":{"shape":"Timestamp"}, "associatedResourceCount":{"shape":"AssociationCount"}, "tags":{"shape":"Tags"}, - "integrations":{"shape":"Integrations"} + "integrations":{"shape":"Integrations"}, + "applicationTag":{"shape":"ApplicationTagDefinition"} } }, + "GetAssociatedResourceFilter":{ + "type":"list", + "member":{"shape":"ResourceItemStatus"}, + "max":4, + "min":1 + }, "GetAssociatedResourceRequest":{ "type":"structure", "required":[ @@ -766,13 +801,31 @@ "shape":"ResourceSpecifier", "location":"uri", "locationName":"resource" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "resourceTagStatus":{ + "shape":"GetAssociatedResourceFilter", + "location":"querystring", + "locationName":"resourceTagStatus" + }, + "maxResults":{ + "shape":"MaxResults", + "box":true, + "location":"querystring", + "locationName":"maxResults" } } }, "GetAssociatedResourceResponse":{ "type":"structure", "members":{ - "resource":{"shape":"Resource"} + "resource":{"shape":"Resource"}, + "options":{"shape":"Options"}, + "applicationTagResult":{"shape":"ApplicationTagResult"} } }, "GetAttributeGroupRequest":{ @@ -809,7 +862,8 @@ "Integrations":{ "type":"structure", "members":{ - "resourceGroup":{"shape":"ResourceGroup"} + "resourceGroup":{"shape":"ResourceGroup"}, + "applicationTagResourceGroup":{"shape":"ResourceGroup"} } }, "InternalServerException":{ @@ -988,6 +1042,10 @@ "min":1, "pattern":"[A-Za-z0-9+/=]+" }, + "Options":{ + "type":"list", + "member":{"shape":"AssociationOption"} + }, "PutConfigurationRequest":{ "type":"structure", "required":["configuration"], @@ -999,7 +1057,7 @@ "type":"structure", "members":{ "name":{"shape":"ResourceSpecifier"}, - "arn":{"shape":"StackArn"}, + "arn":{"shape":"Arn"}, "associationTime":{"shape":"Timestamp"}, "integrations":{"shape":"ResourceIntegrations"} } @@ -1035,7 +1093,8 @@ "name":{"shape":"ResourceSpecifier"}, "arn":{"shape":"Arn"}, "resourceType":{"shape":"ResourceType"}, - "resourceDetails":{"shape":"ResourceDetails"} + "resourceDetails":{"shape":"ResourceDetails"}, + "options":{"shape":"Options"} } }, "ResourceIntegrations":{ @@ -1044,6 +1103,19 @@ "resourceGroup":{"shape":"ResourceGroup"} } }, + "ResourceItemStatus":{ + "type":"string", + "enum":[ + "SUCCESS", + "FAILED", + "IN_PROGRESS", + "SKIPPED" + ] + }, + "ResourceItemType":{ + "type":"string", + "pattern":"AWS::[a-zA-Z0-9]+::\\w+" + }, "ResourceNotFoundException":{ "type":"structure", "members":{ @@ -1069,6 +1141,24 @@ "type":"list", "member":{"shape":"ResourceInfo"} }, + "ResourcesList":{ + "type":"list", + "member":{"shape":"ResourcesListItem"} + }, + "ResourcesListItem":{ + "type":"structure", + "members":{ + "resourceArn":{"shape":"Arn"}, + "errorMessage":{"shape":"ResourcesListItemErrorMessage"}, + "status":{"shape":"String"}, + "resourceType":{"shape":"ResourceItemType"} + } + }, + "ResourcesListItemErrorMessage":{ + "type":"string", + "max":1024, + "min":1 + }, "ServiceQuotaExceededException":{ "type":"structure", "members":{ @@ -1077,10 +1167,6 @@ "error":{"httpStatusCode":402}, "exception":true }, - "StackArn":{ - "type":"string", - "pattern":"arn:aws[-a-z]*:cloudformation:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:stack/[a-zA-Z][-A-Za-z0-9]{0,127}/[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}" - }, "String":{"type":"string"}, "SyncAction":{ "type":"string", @@ -1120,7 +1206,7 @@ "type":"string", "max":128, "min":1, - "pattern":"[a-zA-Z+-=._:/]+" + "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@]*)$" }, "TagKeyConfig":{ "type":"string", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -3,13 +3,13 @@ "service": "

Amazon Web Services Service Catalog AppRegistry enables organizations to understand the application context of their Amazon Web Services resources. AppRegistry provides a repository of your applications, their resources, and the application metadata that you use within your enterprise.

", "operations": { "AssociateAttributeGroup": "

Associates an attribute group with an application to augment the application's metadata with the group's attributes. This feature enables applications to be described with user-defined details that are machine-readable, such as third-party integrations.

", - "AssociateResource": "

Associates a resource with an application. The resource can be specified by its ARN or name. The application can be specified by ARN, ID, or name.

", + "AssociateResource": "

Associates a resource with an application. The resource can be specified by its ARN or name. The application can be specified by ARN, ID, or name.

Minimum permissions

You must have the following permissions to associate a resource using the OPTIONS parameter set to APPLY_APPLICATION_TAG.

  • tag:GetResources

  • tag:TagResources

You must also have these additional permissions if you don't use the AWSServiceCatalogAppRegistryFullAccess policy. For more information, see AWSServiceCatalogAppRegistryFullAccess in the AppRegistry Administrator Guide.

  • resource-groups:AssociateResource

  • cloudformation:UpdateStack

  • cloudformation:DescribeStacks

In addition, you must have the tagging permission defined by the Amazon Web Services service that creates the resource. For more information, see TagResources in the Resource Groups Tagging API Reference.

", "CreateApplication": "

Creates a new application that is the top-level node in a hierarchy of related cloud resource abstractions.

", "CreateAttributeGroup": "

Creates a new attribute group as a container for user-defined attributes. This feature enables users to have full control over their cloud application's metadata in a rich machine-readable format to facilitate integration with automated workflows and third-party tools.

", "DeleteApplication": "

Deletes an application that is specified either by its application ID, name, or ARN. All associated attribute groups and resources must be disassociated from it before deleting an application.

", "DeleteAttributeGroup": "

Deletes an attribute group, specified either by its attribute group ID, name, or ARN.

", "DisassociateAttributeGroup": "

Disassociates an attribute group from an application to remove the extra attributes contained in the attribute group from the application's metadata. This operation reverts AssociateAttributeGroup.

", - "DisassociateResource": "

Disassociates a resource from application. Both the resource and the application can be specified either by ID or name.

", + "DisassociateResource": "

Disassociates a resource from application. Both the resource and the application can be specified either by ID or name.

Minimum permissions

You must have the following permissions to remove a resource that's been associated with an application using the APPLY_APPLICATION_TAG option for AssociateResource.

  • tag:GetResources

  • tag:UntagResources

You must also have the following permissions if you don't use the AWSServiceCatalogAppRegistryFullAccess policy. For more information, see AWSServiceCatalogAppRegistryFullAccess in the AppRegistry Administrator Guide.

  • resource-groups:DisassociateResource

  • cloudformation:UpdateStack

  • cloudformation:DescribeStacks

In addition, you must have the tagging permission defined by the Amazon Web Services service that creates the resource. For more information, see UntagResources in the Resource Groups Tagging API Reference.

", "GetApplication": "

Retrieves metadata information about one of your applications. The application can be specified by its ARN, ID, or name (which is unique within one account in one region at a given point in time). Specify by ARN or ID in automated workflows if you want to make sure that the exact same application is returned or a ResourceNotFoundException is thrown, avoiding the ABA addressing problem.

", "GetAssociatedResource": "

Gets the resource associated with the application.

", "GetAttributeGroup": "

Retrieves an attribute group by its ARN, ID, or name. The attribute group can be specified by its ARN, ID, or name.

", @@ -92,14 +92,35 @@ "DeleteApplicationResponse$application": "

Information about the deleted application.

" } }, + "ApplicationTagDefinition": { + "base": null, + "refs": { + "Application$applicationTag": "

A key-value pair that identifies an associated resource.

", + "GetApplicationResponse$applicationTag": "

A key-value pair that identifies an associated resource.

" + } + }, + "ApplicationTagResult": { + "base": "

The result of the application tag that's applied to a resource.

", + "refs": { + "GetAssociatedResourceResponse$applicationTagResult": "

The result of the application that's tag applied to a resource.

" + } + }, + "ApplicationTagStatus": { + "base": null, + "refs": { + "ApplicationTagResult$applicationTagStatus": "

The application tag is in the process of being applied to a resource, was successfully applied to a resource, or failed to apply to a resource.

" + } + }, "Arn": { "base": null, "refs": { "AssociateResourceResponse$resourceArn": "

The Amazon resource name (ARN) that specifies the resource.

", "DisassociateResourceResponse$resourceArn": "

The Amazon resource name (ARN) that specifies the resource.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon resource name (ARN) that specifies the resource.

", + "Resource$arn": "

The Amazon resource name (ARN) of the resource.

", "ResourceGroup$arn": "

The Amazon resource name (ARN) of the resource group.

", "ResourceInfo$arn": "

The Amazon resource name (ARN) that specifies the resource across services.

", + "ResourcesListItem$resourceArn": "

The Amazon resource name (ARN) of the resource.

", "SyncResourceResponse$resourceArn": "

The Amazon resource name (ARN) that specifies the resource.

", "TagResourceRequest$resourceArn": "

The Amazon resource name (ARN) that specifies the resource.

", "UntagResourceRequest$resourceArn": "

The Amazon resource name (ARN) that specifies the resource.

" @@ -131,6 +152,12 @@ "GetApplicationResponse$associatedResourceCount": "

The number of top-level resources that were registered as part of this application.

" } }, + "AssociationOption": { + "base": null, + "refs": { + "Options$member": null + } + }, "AttributeGroup": { "base": "

Represents a Amazon Web Services Service Catalog AppRegistry attribute group that is rich metadata which describes an application and its components.

", "refs": { @@ -313,6 +340,12 @@ "refs": { } }, + "GetAssociatedResourceFilter": { + "base": null, + "refs": { + "GetAssociatedResourceRequest$resourceTagStatus": "

States whether an application tag is applied, not applied, in the process of being applied, or skipped.

" + } + }, "GetAssociatedResourceRequest": { "base": null, "refs": { @@ -412,6 +445,7 @@ "MaxResults": { "base": null, "refs": { + "GetAssociatedResourceRequest$maxResults": "

The maximum number of results to return. If the parameter is omitted, it defaults to 25. The value is optional.

", "ListApplicationsRequest$maxResults": "

The upper bound of the number of results to return (cannot exceed 25). If this parameter is omitted, it defaults to 25. This value is optional.

", "ListAssociatedAttributeGroupsRequest$maxResults": "

The upper bound of the number of results to return (cannot exceed 25). If this parameter is omitted, it defaults to 25. This value is optional.

", "ListAssociatedResourcesRequest$maxResults": "

The upper bound of the number of results to return (cannot exceed 25). If this parameter is omitted, it defaults to 25. This value is optional.

", @@ -438,6 +472,8 @@ "NextToken": { "base": null, "refs": { + "ApplicationTagResult$nextToken": "

A unique pagination token for each page of results. Make the call again with the returned token to retrieve the next page of results.

", + "GetAssociatedResourceRequest$nextToken": "

A unique pagination token for each page of results. Make the call again with the returned token to retrieve the next page of results.

", "ListApplicationsRequest$nextToken": "

The token to use to get the next page of results after a previous API call.

", "ListApplicationsResponse$nextToken": "

The token to use to get the next page of results after a previous API call.

", "ListAssociatedAttributeGroupsRequest$nextToken": "

The token to use to get the next page of results after a previous API call.

", @@ -450,6 +486,15 @@ "ListAttributeGroupsResponse$nextToken": "

The token to use to get the next page of results after a previous API call.

" } }, + "Options": { + "base": null, + "refs": { + "AssociateResourceRequest$options": "

Determines whether an application tag is applied or skipped.

", + "AssociateResourceResponse$options": "

Determines whether an application tag is applied or skipped.

", + "GetAssociatedResourceResponse$options": "

Determines whether an application tag is applied or skipped.

", + "ResourceInfo$options": "

Determines whether an application tag is applied or skipped.

" + } + }, "PutConfigurationRequest": { "base": null, "refs": { @@ -471,6 +516,7 @@ "base": "

The information about the resource group integration.

", "refs": { "Integrations$resourceGroup": "

The information about the resource group integration.

", + "Integrations$applicationTagResourceGroup": null, "ResourceIntegrations$resourceGroup": "

The information about the integration of Resource Groups.

" } }, @@ -492,6 +538,18 @@ "Resource$integrations": "

The service integration information about the resource.

" } }, + "ResourceItemStatus": { + "base": null, + "refs": { + "GetAssociatedResourceFilter$member": null + } + }, + "ResourceItemType": { + "base": null, + "refs": { + "ResourcesListItem$resourceType": "

Provides information about the AppRegistry resource type.

" + } + }, "ResourceNotFoundException": { "base": "

The specified resource does not exist.

", "refs": { @@ -524,24 +582,38 @@ "ListAssociatedResourcesResponse$resources": "

Information about the resources.

" } }, - "ServiceQuotaExceededException": { - "base": "

The maximum number of resources per account has been reached.

", + "ResourcesList": { + "base": null, + "refs": { + "ApplicationTagResult$resources": "

The resources associated with an application

" + } + }, + "ResourcesListItem": { + "base": "

The resource in a list of resources.

", "refs": { + "ResourcesList$member": null } }, - "StackArn": { + "ResourcesListItemErrorMessage": { "base": null, "refs": { - "Resource$arn": "

The Amazon resource name (ARN) of the resource.

" + "ResourcesListItem$errorMessage": "

The message returned if the call fails.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

The maximum number of resources per account has been reached.

", + "refs": { } }, "String": { "base": null, "refs": { + "ApplicationTagResult$errorMessage": "

The message returned if the call fails.

", "ConflictException$message": null, "InternalServerException$message": null, "ResourceGroup$errorMessage": "

The error message that generates when the propagation process for the resource group fails.

", "ResourceNotFoundException$message": null, + "ResourcesListItem$status": "

The status of the list item.

", "ServiceQuotaExceededException$message": null, "ThrottlingException$message": "

A message associated with the Throttling exception.

", "ThrottlingException$serviceCode": "

The originating service code.

", @@ -567,6 +639,7 @@ "TagKey": { "base": null, "refs": { + "ApplicationTagDefinition$key": null, "TagKeys$member": null, "Tags$key": null } @@ -602,6 +675,7 @@ "TagValue": { "base": null, "refs": { + "ApplicationTagDefinition$value": null, "ResourceDetails$tagValue": "

The value of the tag.

", "Tags$value": null } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://servicecatalog-appregistry-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://servicecatalog-appregistry-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://servicecatalog-appregistry.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://servicecatalog-appregistry-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://servicecatalog-appregistry.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://servicecatalog-appregistry-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://servicecatalog-appregistry.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://servicecatalog-appregistry.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://servicecatalog-appregistry.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://servicecatalog-appregistry.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/servicecatalog-appregistry/2020-06-24/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,9 +8,9 @@ } }, "params": { + "Region": "af-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "af-south-1" + "UseDualStack": false } }, { @@ -21,9 +21,9 @@ } }, "params": { + "Region": "ap-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { @@ -47,9 +47,9 @@ } }, "params": { + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { + "Region": "ap-northeast-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-3" + "UseDualStack": false } }, { @@ -73,9 +73,9 @@ } }, "params": { + "Region": "ap-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-1" + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { + "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { @@ -99,9 +99,9 @@ } }, "params": { + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { + "Region": "ap-southeast-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-3" + "UseDualStack": false } }, { @@ -125,9 +125,9 @@ } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { + "Region": "ca-central-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -151,9 +151,9 @@ } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { + "Region": "eu-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { @@ -177,9 +177,9 @@ } }, "params": { + "Region": "eu-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-south-1" + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { @@ -203,9 +203,9 @@ } }, "params": { + "Region": "eu-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { + "Region": "eu-west-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-3" + "UseDualStack": false } }, { @@ -229,9 +229,9 @@ } }, "params": { + "Region": "me-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "me-south-1" + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { + "Region": "sa-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { @@ -255,9 +255,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -281,9 +281,9 @@ } }, "params": { + "Region": "us-east-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { @@ -294,9 +294,9 @@ } }, "params": { + "Region": "us-east-2", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { @@ -307,9 +307,9 @@ } }, "params": { + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { @@ -320,9 +320,9 @@ } }, "params": { + "Region": "us-west-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { @@ -333,9 +333,9 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -359,9 +359,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -372,9 +372,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -385,9 +385,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -398,9 +398,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -411,9 +411,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -424,9 +424,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -437,9 +437,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -450,9 +450,9 @@ } }, "params": { + "Region": "us-gov-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { @@ -463,9 +463,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -476,9 +476,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -489,9 +489,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -500,9 +500,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -513,9 +513,9 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -524,9 +524,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -537,9 +537,9 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -548,9 +548,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -561,9 +561,9 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -572,9 +572,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -585,9 +585,9 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -598,9 +598,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -623,9 +623,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -635,9 +635,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sesv2/2019-09-27/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sesv2/2019-09-27/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sesv2/2019-09-27/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sesv2/2019-09-27/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1372,6 +1372,7 @@ "min":1, "sensitive":true }, + "AdminEmail":{"type":"string"}, "AlreadyExistsException":{ "type":"structure", "members":{ @@ -2906,7 +2907,8 @@ "Policies":{"shape":"PolicyMap"}, "Tags":{"shape":"TagList"}, "ConfigurationSetName":{"shape":"ConfigurationSetName"}, - "VerificationStatus":{"shape":"VerificationStatus"} + "VerificationStatus":{"shape":"VerificationStatus"}, + "VerificationInfo":{"shape":"VerificationInfo"} } }, "GetEmailTemplateRequest":{ @@ -3829,6 +3831,7 @@ "min":1 }, "PoolName":{"type":"string"}, + "PrimaryNameServer":{"type":"string"}, "PrivateKey":{ "type":"string", "max":20480, @@ -4291,6 +4294,14 @@ "type":"string", "pattern":"^s3:\\/\\/([^\\/]+)\\/(.*?([^\\/]+)\\/?)$" }, + "SOARecord":{ + "type":"structure", + "members":{ + "PrimaryNameServer":{"shape":"PrimaryNameServer"}, + "AdminEmail":{"shape":"AdminEmail"}, + "SerialNumber":{"shape":"SerialNumber"} + } + }, "ScalingMode":{ "type":"string", "enum":[ @@ -4392,6 +4403,7 @@ }, "SendingPoolName":{"type":"string"}, "SentLast24Hours":{"type":"double"}, + "SerialNumber":{"type":"long"}, "SnsDestination":{ "type":"structure", "required":["TopicArn"], @@ -4811,6 +4823,25 @@ "GuardianOptions":{"shape":"GuardianOptions"} } }, + "VerificationError":{ + "type":"string", + "enum":[ + "SERVICE_ERROR", + "DNS_SERVER_ERROR", + "HOST_NOT_FOUND", + "TYPE_NOT_FOUND", + "INVALID_VALUE" + ] + }, + "VerificationInfo":{ + "type":"structure", + "members":{ + "LastCheckedTimestamp":{"shape":"Timestamp"}, + "LastSuccessTimestamp":{"shape":"Timestamp"}, + "ErrorType":{"shape":"VerificationError"}, + "SOARecord":{"shape":"SOARecord"} + } + }, "VerificationStatus":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sesv2/2019-09-27/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sesv2/2019-09-27/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sesv2/2019-09-27/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sesv2/2019-09-27/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -120,6 +120,12 @@ "PutAccountDetailsRequest$AdditionalContactEmailAddresses": "

Additional email addresses that you would like to be notified regarding Amazon SES matters.

" } }, + "AdminEmail": { + "base": null, + "refs": { + "SOARecord$AdminEmail": "

Administrative contact email from the SOA record.

" + } + }, "AlreadyExistsException": { "base": "

The resource specified in your request already exists.

", "refs": { @@ -1992,7 +1998,7 @@ "ListDeliverabilityTestReportsRequest$PageSize": "

The number of results to show in a single call to ListDeliverabilityTestReports. If the number of results is larger than the number you specified in this parameter, then the response includes a NextToken element, which you can use to obtain additional results.

The value you specify has to be at least 0, and can be no more than 1000.

", "ListDomainDeliverabilityCampaignsRequest$PageSize": "

The maximum number of results to include in response to a single call to the ListDomainDeliverabilityCampaigns operation. If the number of results is larger than the number that you specify in this parameter, the response includes a NextToken element, which you can use to obtain additional results.

", "ListEmailIdentitiesRequest$PageSize": "

The number of results to show in a single call to ListEmailIdentities. If the number of results is larger than the number you specified in this parameter, then the response includes a NextToken element, which you can use to obtain additional results.

The value you specify has to be at least 0, and can be no more than 1000.

", - "ListEmailTemplatesRequest$PageSize": "

The number of results to show in a single call to ListEmailTemplates. If the number of results is larger than the number you specified in this parameter, then the response includes a NextToken element, which you can use to obtain additional results.

The value you specify has to be at least 1, and can be no more than 10.

", + "ListEmailTemplatesRequest$PageSize": "

The number of results to show in a single call to ListEmailTemplates. If the number of results is larger than the number you specified in this parameter, then the response includes a NextToken element, which you can use to obtain additional results.

The value you specify has to be at least 1, and can be no more than 100.

", "ListExportJobsRequest$PageSize": "

Maximum number of export jobs to return at once. Use this parameter to paginate results. If additional export jobs exist beyond the specified limit, the NextToken element is sent in the response. Use the NextToken value in subsequent calls to ListExportJobs to retrieve additional export jobs.

", "ListImportJobsRequest$PageSize": "

Maximum number of import jobs to return at once. Use this parameter to paginate results. If additional import jobs exist beyond the specified limit, the NextToken element is sent in the response. Use the NextToken value in subsequent requests to retrieve additional addresses.

", "ListRecommendationsRequest$PageSize": "

The number of results to show in a single call to ListRecommendations. If the number of results is larger than the number you specified in this parameter, then the response includes a NextToken element, which you can use to obtain additional results.

The value you specify has to be at least 1, and can be no more than 100.

", @@ -2275,6 +2281,12 @@ "PutDedicatedIpPoolScalingAttributesRequest$PoolName": "

The name of the dedicated IP pool.

" } }, + "PrimaryNameServer": { + "base": null, + "refs": { + "SOARecord$PrimaryNameServer": "

Primary name server specified in the SOA record.

" + } + }, "PrivateKey": { "base": null, "refs": { @@ -2522,13 +2534,13 @@ "RawMessage": { "base": "

Represents the raw content of an email message.

", "refs": { - "EmailContent$Raw": "

The raw email message. The message has to meet the following criteria:

  • The message has to contain a header and a body, separated by one blank line.

  • All of the required header fields must be present in the message.

  • Each part of a multipart MIME message must be formatted properly.

  • If you include attachments, they must be in a file format that the Amazon SES API v2 supports.

  • The entire message must be Base64 encoded.

  • If any of the MIME parts in your message contain content that is outside of the 7-bit ASCII character range, you should encode that content to ensure that recipients' email clients render the message properly.

  • The length of any single line of text in the message can't exceed 1,000 characters. This restriction is defined in RFC 5321.

" + "EmailContent$Raw": "

The raw email message. The message has to meet the following criteria:

  • The message has to contain a header and a body, separated by one blank line.

  • All of the required header fields must be present in the message.

  • Each part of a multipart MIME message must be formatted properly.

  • If you include attachments, they must be in a file format that the Amazon SES API v2 supports.

  • The raw data of the message needs to base64-encoded if you are accessing Amazon SES directly through the HTTPS interface. If you are accessing Amazon SES using an Amazon Web Services SDK, the SDK takes care of the base 64-encoding for you.

  • If any of the MIME parts in your message contain content that is outside of the 7-bit ASCII character range, you should encode that content to ensure that recipients' email clients render the message properly.

  • The length of any single line of text in the message can't exceed 1,000 characters. This restriction is defined in RFC 5321.

" } }, "RawMessageData": { "base": "

The raw email message. The message has to meet the following criteria:

  • The message has to contain a header and a body, separated by one blank line.

  • All of the required header fields must be present in the message.

  • Each part of a multipart MIME message must be formatted properly.

  • Attachments must be in a file format that the Amazon SES API v2 supports.

  • The entire message must be Base64 encoded.

  • If any of the MIME parts in your message contain content that is outside of the 7-bit ASCII character range, you should encode that content to ensure that recipients' email clients render the message properly.

  • The length of any single line of text in the message can't exceed 1,000 characters. This restriction is defined in RFC 5321.

", "refs": { - "RawMessage$Data": "

The raw email message. The message has to meet the following criteria:

  • The message has to contain a header and a body, separated by one blank line.

  • All of the required header fields must be present in the message.

  • Each part of a multipart MIME message must be formatted properly.

  • Attachments must be in a file format that the Amazon SES supports.

  • The entire message must be Base64 encoded.

  • If any of the MIME parts in your message contain content that is outside of the 7-bit ASCII character range, you should encode that content to ensure that recipients' email clients render the message properly.

  • The length of any single line of text in the message can't exceed 1,000 characters. This restriction is defined in RFC 5321.

" + "RawMessage$Data": "

The raw email message. The message has to meet the following criteria:

  • The message has to contain a header and a body, separated by one blank line.

  • All of the required header fields must be present in the message.

  • Each part of a multipart MIME message must be formatted properly.

  • Attachments must be in a file format that the Amazon SES supports.

  • The raw data of the message needs to base64-encoded if you are accessing Amazon SES directly through the HTTPS interface. If you are accessing Amazon SES using an Amazon Web Services SDK, the SDK takes care of the base 64-encoding for you.

  • If any of the MIME parts in your message contain content that is outside of the 7-bit ASCII character range, you should encode that content to ensure that recipients' email clients render the message properly.

  • The length of any single line of text in the message can't exceed 1,000 characters. This restriction is defined in RFC 5321.

" } }, "RblName": { @@ -2632,6 +2644,12 @@ "ImportDataSource$S3Url": "

An Amazon S3 URL in the format s3://<bucket_name>/<object>.

" } }, + "SOARecord": { + "base": "

An object that contains information about the start of authority (SOA) record associated with the identity.

", + "refs": { + "VerificationInfo$SOARecord": "

An object that contains information about the start of authority (SOA) record associated with the identity.

" + } + }, "ScalingMode": { "base": null, "refs": { @@ -2706,6 +2724,12 @@ "SendQuota$SentLast24Hours": "

The number of emails sent from your Amazon SES account in the current Amazon Web Services Region over the past 24 hours.

" } }, + "SerialNumber": { + "base": null, + "refs": { + "SOARecord$SerialNumber": "

Serial number from the SOA record.

" + } + }, "SnsDestination": { "base": "

An object that defines an Amazon SNS destination for email events. You can use Amazon SNS to send notification when certain email events occur.

", "refs": { @@ -2922,7 +2946,9 @@ "Recommendation$LastUpdatedTimestamp": "

The last time the recommendation was updated.

", "SuppressedDestination$LastUpdateTime": "

The date and time when the suppressed destination was last updated, shown in Unix time format.

", "SuppressedDestinationSummary$LastUpdateTime": "

The date and time when the suppressed destination was last updated, shown in Unix time format.

", - "TimestampList$member": null + "TimestampList$member": null, + "VerificationInfo$LastCheckedTimestamp": "

The last time a verification attempt was made for this identity.

", + "VerificationInfo$LastSuccessTimestamp": "

The last time a successful verification was made for this identity.

" } }, "TimestampList": { @@ -3103,6 +3129,18 @@ "PutConfigurationSetVdmOptionsRequest$VdmOptions": "

The VDM options to apply to the configuration set.

" } }, + "VerificationError": { + "base": null, + "refs": { + "VerificationInfo$ErrorType": "

Provides the reason for the failure describing why Amazon SES was not able to successfully verify the identity. Below are the possible values:

  • INVALID_VALUE – Amazon SES was able to find the record, but the value contained within the record was invalid. Ensure you have published the correct values for the record.

  • TYPE_NOT_FOUND – The queried hostname exists but does not have the requested type of DNS record. Ensure that you have published the correct type of DNS record.

  • HOST_NOT_FOUND – The queried hostname does not exist or was not reachable at the time of the request. Ensure that you have published the required DNS record(s).

  • SERVICE_ERROR – A temporary issue is preventing Amazon SES from determining the verification status of the domain.

  • DNS_SERVER_ERROR – The DNS server encountered an issue and was unable to complete the request.

" + } + }, + "VerificationInfo": { + "base": "

An object that contains additional information about the verification status for the identity.

", + "refs": { + "GetEmailIdentityResponse$VerificationInfo": "

An object that contains additional information about the verification status for the identity.

" + } + }, "VerificationStatus": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/signer/2017-08-25/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/signer/2017-08-25/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/signer/2017-08-25/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/signer/2017-08-25/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

AWS Signer is a fully managed code signing service to help you ensure the trust and integrity of your code.

AWS Signer supports the following applications:

With code signing for AWS Lambda, you can sign AWS Lambda deployment packages. Integrated support is provided for Amazon S3, Amazon CloudWatch, and AWS CloudTrail. In order to sign code, you create a signing profile and then use Signer to sign Lambda zip files in S3.

With code signing for IoT, you can sign code for any IoT device that is supported by AWS. IoT code signing is available for Amazon FreeRTOS and AWS IoT Device Management, and is integrated with AWS Certificate Manager (ACM). In order to sign code, you import a third-party code signing certificate using ACM, and use that to sign updates in Amazon FreeRTOS and AWS IoT Device Management.

With code signing for containers …(TBD)

For more information about AWS Signer, see the AWS Signer Developer Guide.

", + "service": "

AWS Signer is a fully managed code-signing service to help you ensure the trust and integrity of your code.

Signer supports the following applications:

With code signing for AWS Lambda, you can sign AWS Lambda deployment packages. Integrated support is provided for Amazon S3, Amazon CloudWatch, and AWS CloudTrail. In order to sign code, you create a signing profile and then use Signer to sign Lambda zip files in S3.

With code signing for IoT, you can sign code for any IoT device that is supported by AWS. IoT code signing is available for Amazon FreeRTOS and AWS IoT Device Management, and is integrated with AWS Certificate Manager (ACM). In order to sign code, you import a third-party code-signing certificate using ACM, and use that to sign updates in Amazon FreeRTOS and AWS IoT Device Management.

With Signer and the Notation CLI from the Notary
 Project, you can sign container images stored in a container registry such as Amazon Elastic Container Registry (ECR). The signatures are stored in the registry alongside the images, where they are available for verifying image authenticity and integrity.

For more information about Signer, see the AWS Signer Developer Guide.

", "operations": { "AddProfilePermission": "

Adds cross-account permissions to a signing profile.

", "CancelSigningProfile": "

Changes the state of an ACTIVE signing profile to CANCELED. A canceled profile is still viewable with the ListSigningProfiles operation, but it cannot perform new signing jobs, and is deleted two years after cancelation.

", @@ -9,16 +9,16 @@ "GetSigningPlatform": "

Returns information on a specific signing platform.

", "GetSigningProfile": "

Returns information on a specific signing profile.

", "ListProfilePermissions": "

Lists the cross-account permissions associated with a signing profile.

", - "ListSigningJobs": "

Lists all your signing jobs. You can use the maxResults parameter to limit the number of signing jobs that are returned in the response. If additional jobs remain to be listed, code signing returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that code signing returns in the nextToken parameter until all of your signing jobs have been returned.

", - "ListSigningPlatforms": "

Lists all signing platforms available in code signing that match the request parameters. If additional jobs remain to be listed, code signing returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that code signing returns in the nextToken parameter until all of your signing jobs have been returned.

", - "ListSigningProfiles": "

Lists all available signing profiles in your AWS account. Returns only profiles with an ACTIVE status unless the includeCanceled request field is set to true. If additional jobs remain to be listed, code signing returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that code signing returns in the nextToken parameter until all of your signing jobs have been returned.

", + "ListSigningJobs": "

Lists all your signing jobs. You can use the maxResults parameter to limit the number of signing jobs that are returned in the response. If additional jobs remain to be listed, AWS Signer returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that Signer returns in the nextToken parameter until all of your signing jobs have been returned.

", + "ListSigningPlatforms": "

Lists all signing platforms available in AWS Signer that match the request parameters. If additional jobs remain to be listed, Signer returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that Signer returns in the nextToken parameter until all of your signing jobs have been returned.

", + "ListSigningProfiles": "

Lists all available signing profiles in your AWS account. Returns only profiles with an ACTIVE status unless the includeCanceled request field is set to true. If additional jobs remain to be listed, AWS Signer returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that Signer returns in the nextToken parameter until all of your signing jobs have been returned.

", "ListTagsForResource": "

Returns a list of the tags associated with a signing profile resource.

", - "PutSigningProfile": "

Creates a signing profile. A signing profile is a code signing template that can be used to carry out a pre-defined signing job.

", + "PutSigningProfile": "

Creates a signing profile. A signing profile is a code-signing template that can be used to carry out a pre-defined signing job.

", "RemoveProfilePermission": "

Removes cross-account permissions from a signing profile.

", "RevokeSignature": "

Changes the state of a signing job to REVOKED. This indicates that the signature is no longer valid.

", "RevokeSigningProfile": "

Changes the state of a signing profile to REVOKED. This indicates that signatures generated using the signing profile after an effective start date are no longer valid.

", "SignPayload": "

Signs a binary payload and returns a signature envelope.

", - "StartSigningJob": "

Initiates a signing job to be performed on the code provided. Signing jobs are viewable by the ListSigningJobs operation for two years after they are performed. Note the following requirements:

  • You must create an Amazon S3 source bucket. For more information, see Creating a Bucket in the Amazon S3 Getting Started Guide.

  • Your S3 source bucket must be version enabled.

  • You must create an S3 destination bucket. Code signing uses your S3 destination bucket to write your signed code.

  • You specify the name of the source and destination buckets when calling the StartSigningJob operation.

  • You must also specify a request token that identifies your request to code signing.

You can call the DescribeSigningJob and the ListSigningJobs actions after you call StartSigningJob.

For a Java example that shows how to use this action, see StartSigningJob.

", + "StartSigningJob": "

Initiates a signing job to be performed on the code provided. Signing jobs are viewable by the ListSigningJobs operation for two years after they are performed. Note the following requirements:

  • You must create an Amazon S3 source bucket. For more information, see Creating a Bucket in the Amazon S3 Getting Started Guide.

  • Your S3 source bucket must be version enabled.

  • You must create an S3 destination bucket. AWS Signer uses your S3 destination bucket to write your signed code.

  • You specify the name of the source and destination buckets when calling the StartSigningJob operation.

  • You must also specify a request token that identifies your request to Signer.

You can call the DescribeSigningJob and the ListSigningJobs actions after you call StartSigningJob.

For a Java example that shows how to use this action, see StartSigningJob.

", "TagResource": "

Adds one or more tags to a signing profile. Tags are labels that you can use to identify and organize your AWS resources. Each tag consists of a key and an optional value. To specify the signing profile, use its Amazon Resource Name (ARN). To specify the tag, use a key-value pair.

", "UntagResource": "

Removes one or more tags from a signing profile. To remove the tags, specify a list of tag keys.

" }, @@ -92,7 +92,7 @@ "base": null, "refs": { "GetSigningPlatformResponse$category": "

The category type of the target signing platform.

", - "SigningPlatform$category": "

The category of a code signing platform.

" + "SigningPlatform$category": "

The category of a signing platform.

" } }, "CertificateArn": { @@ -104,7 +104,7 @@ "CertificateHashes": { "base": null, "refs": { - "GetRevocationStatusRequest$certificateHashes": "

A list of composite signed hashes that identify certificates.

A certificate identifier consists of a subject certificate TBS hash (signed by the parent CA) combined with a parent CA TBS hash (signed by the parent CA’s CA). Root certificates are defined as their own CA.

" + "GetRevocationStatusRequest$certificateHashes": "

A list of composite signed hashes that identify certificates.

A certificate identifier consists of a subject certificate TBS hash (signed by the parent CA) combined with a parent CA TBS hash (signed by the parent CA’s CA). Root certificates are defined as their own CA.

The following example shows how to calculate a hash for this parameter using OpenSSL commands:

openssl asn1parse -in childCert.pem -strparse 4 -out childCert.tbs

openssl sha384 < childCert.tbs -binary > childCertTbsHash

openssl asn1parse -in parentCert.pem -strparse 4 -out parentCert.tbs

openssl sha384 < parentCert.tbs -binary > parentCertTbsHash xxd -p childCertTbsHash > certificateHash.hex xxd -p parentCertTbsHash >> certificateHash.hex

cat certificateHash.hex | tr -d '\\n'

" } }, "ClientRequestToken": { @@ -147,21 +147,21 @@ "EncryptionAlgorithm": { "base": null, "refs": { - "EncryptionAlgorithmOptions$defaultValue": "

The default encryption algorithm that is used by a code signing job.

", + "EncryptionAlgorithmOptions$defaultValue": "

The default encryption algorithm that is used by a code-signing job.

", "EncryptionAlgorithms$member": null, - "SigningConfigurationOverrides$encryptionAlgorithm": "

A specified override of the default encryption algorithm that is used in a code signing job.

" + "SigningConfigurationOverrides$encryptionAlgorithm": "

A specified override of the default encryption algorithm that is used in a code-signing job.

" } }, "EncryptionAlgorithmOptions": { - "base": "

The encryption algorithm options that are available to a code signing job.

", + "base": "

The encryption algorithm options that are available to a code-signing job.

", "refs": { - "SigningConfiguration$encryptionAlgorithmOptions": "

The encryption algorithm options that are available for a code signing job.

" + "SigningConfiguration$encryptionAlgorithmOptions": "

The encryption algorithm options that are available for a code-signing job.

" } }, "EncryptionAlgorithms": { "base": null, "refs": { - "EncryptionAlgorithmOptions$allowedValues": "

The set of accepted encryption algorithms that are allowed in a code signing job.

" + "EncryptionAlgorithmOptions$allowedValues": "

The set of accepted encryption algorithms that are allowed in a code-signing job.

" } }, "ErrorCode": { @@ -227,35 +227,35 @@ "HashAlgorithm": { "base": null, "refs": { - "HashAlgorithmOptions$defaultValue": "

The default hash algorithm that is used in a code signing job.

", + "HashAlgorithmOptions$defaultValue": "

The default hash algorithm that is used in a code-signing job.

", "HashAlgorithms$member": null, - "SigningConfigurationOverrides$hashAlgorithm": "

A specified override of the default hash algorithm that is used in a code signing job.

" + "SigningConfigurationOverrides$hashAlgorithm": "

A specified override of the default hash algorithm that is used in a code-signing job.

" } }, "HashAlgorithmOptions": { - "base": "

The hash algorithms that are available to a code signing job.

", + "base": "

The hash algorithms that are available to a code-signing job.

", "refs": { - "SigningConfiguration$hashAlgorithmOptions": "

The hash algorithm options that are available for a code signing job.

" + "SigningConfiguration$hashAlgorithmOptions": "

The hash algorithm options that are available for a code-signing job.

" } }, "HashAlgorithms": { "base": null, "refs": { - "HashAlgorithmOptions$allowedValues": "

The set of accepted hash algorithms allowed in a code signing job.

" + "HashAlgorithmOptions$allowedValues": "

The set of accepted hash algorithms allowed in a code-signing job.

" } }, "ImageFormat": { "base": null, "refs": { "ImageFormats$member": null, - "SigningImageFormat$defaultFormat": "

The default format of a code signing image.

", + "SigningImageFormat$defaultFormat": "

The default format of a signing image.

", "SigningPlatformOverrides$signingImageFormat": "

A signed image is a JSON object. When overriding the default signing platform configuration, a customer can select either of two signing formats, JSONEmbedded or JSONDetached. (A third format value, JSON, is reserved for future use.) With JSONEmbedded, the signing image has the payload embedded in it. With JSONDetached, the payload is not be embedded in the signing image.

" } }, "ImageFormats": { "base": null, "refs": { - "SigningImageFormat$supportedFormats": "

The supported formats of a code signing image.

" + "SigningImageFormat$supportedFormats": "

The supported formats of a signing image.

" } }, "Integer": { @@ -349,13 +349,13 @@ "base": null, "refs": { "GetSigningPlatformResponse$maxSizeInMB": "

The maximum size (in MB) of the payload that can be signed by the target platform.

", - "SigningPlatform$maxSizeInMB": "

The maximum size (in MB) of code that can be signed by a code signing platform.

" + "SigningPlatform$maxSizeInMB": "

The maximum size (in MB) of code that can be signed by a signing platform.

" } }, "Metadata": { "base": null, "refs": { - "SignPayloadResponse$metadata": "

Information including the signing profile ARN and the signing job ID. Clients use metadata to signature records, for example, as annotations added to the signature manifest inside an OCI registry.

" + "SignPayloadResponse$metadata": "

Information including the signing profile ARN and the signing job ID.

" } }, "NextToken": { @@ -414,7 +414,7 @@ "Prefix": { "base": null, "refs": { - "S3Destination$prefix": "

An Amazon S3 prefix that you can use to limit responses to those that begin with the specified prefix.

" + "S3Destination$prefix": "

An S3 prefix that you can use to limit responses to those that begin with the specified prefix.

" } }, "ProfileName": { @@ -500,23 +500,23 @@ "RevokedEntities": { "base": null, "refs": { - "GetRevocationStatusResponse$revokedEntities": "

A list of revoked entities (including one or more of the signing profile ARN, signing job ID, and certificate hash) supplied as input to the API.

" + "GetRevocationStatusResponse$revokedEntities": "

A list of revoked entities (including zero or more of the signing profile ARN, signing job ARN, and certificate hashes) supplied as input to the API.

" } }, "S3Destination": { - "base": "

The name and prefix of the S3 bucket where code signing saves your signed objects.

", + "base": "

The name and prefix of the Amazon S3 bucket where AWS Signer saves your signed objects.

", "refs": { "Destination$s3": "

The S3Destination object.

" } }, "S3SignedObject": { - "base": "

The S3 bucket name and key where code signing saved your signed code image.

", + "base": "

The Amazon S3 bucket name and key where Signer saved your signed code image.

", "refs": { "SignedObject$s3": "

The S3SignedObject.

" } }, "S3Source": { - "base": "

Information about the S3 bucket where you saved your unsigned code.

", + "base": "

Information about the Amazon S3 bucket where you saved your unsigned code.

", "refs": { "Source$s3": "

The S3Source object.

" } @@ -547,15 +547,15 @@ "SignedObject": { "base": "

Points to an S3SignedObject object that contains information about your signed code image.

", "refs": { - "DescribeSigningJobResponse$signedObject": "

Name of the S3 bucket where the signed code image is saved by code signing.

", + "DescribeSigningJobResponse$signedObject": "

Name of the S3 bucket where the signed code image is saved by AWS Signer.

", "SigningJob$signedObject": "

A SignedObject structure that contains information about a signing job's signed code image.

" } }, "SigningConfiguration": { - "base": "

The configuration of a code signing operation.

", + "base": "

The configuration of a signing operation.

", "refs": { "GetSigningPlatformResponse$signingConfiguration": "

A list of configurations applied to the target platform at signing.

", - "SigningPlatform$signingConfiguration": "

The configuration of a code signing platform. This includes the designated hash algorithm and encryption algorithm of a signing platform.

" + "SigningPlatform$signingConfiguration": "

The configuration of a signing platform. This includes the designated hash algorithm and encryption algorithm of a signing platform.

" } }, "SigningConfigurationOverrides": { @@ -565,7 +565,7 @@ } }, "SigningImageFormat": { - "base": "

The image format of a code signing platform or profile.

", + "base": "

The image format of a AWS Signer platform or profile.

", "refs": { "GetSigningPlatformResponse$signingImageFormat": "

The format of the target platform's signing image.

", "SigningPlatform$signingImageFormat": null @@ -617,17 +617,17 @@ "DescribeSigningJobResponse$signingParameters": "

Map of user-assigned key-value pairs used during signing. These values contain any information that you specified for use in your signing job.

", "GetSigningProfileResponse$signingParameters": "

A map of key-value pairs for signing operations that is attached to the target signing profile.

", "PutSigningProfileRequest$signingParameters": "

Map of key-value pairs for signing. These can include any information that you want to use during signing.

", - "SigningProfile$signingParameters": "

The parameters that are available for use by a code signing user.

" + "SigningProfile$signingParameters": "

The parameters that are available for use by a Signer user.

" } }, "SigningPlatform": { - "base": "

Contains information about the signing configurations and parameters that are used to perform a code signing job.

", + "base": "

Contains information about the signing configurations and parameters that are used to perform a code-signing job.

", "refs": { "SigningPlatforms$member": null } }, "SigningPlatformOverrides": { - "base": "

Any overrides that are applied to the signing configuration of a code signing platform.

", + "base": "

Any overrides that are applied to the signing configuration of a signing platform.

", "refs": { "DescribeSigningJobResponse$overrides": "

A list of any overrides that were applied to the signing operation.

", "GetSigningProfileResponse$overrides": "

A list of overrides applied by the target signing profile for signing operations.

", @@ -641,7 +641,7 @@ } }, "SigningProfile": { - "base": "

Contains information about the ACM certificates and code signing configuration parameters that can be used by a given code signing user.

", + "base": "

Contains information about the ACM certificates and signing configuration parameters that can be used by a given code signing user.

", "refs": { "SigningProfiles$member": null } @@ -656,7 +656,7 @@ "base": null, "refs": { "GetSigningProfileResponse$status": "

The status of the target signing profile.

", - "SigningProfile$status": "

The status of a code signing profile.

", + "SigningProfile$status": "

The status of a signing profile.

", "Statuses$member": null } }, @@ -734,13 +734,13 @@ "RemoveProfilePermissionRequest$statementId": "

A unique identifier for the cross-account permissions statement.

", "RemoveProfilePermissionResponse$revisionId": "

An identifier for the current revision of the profile permissions.

", "RevokedEntities$member": null, - "SignPayloadRequest$payloadFormat": "

Payload content type

", + "SignPayloadRequest$payloadFormat": "

Payload content type. The single valid type is application/vnd.cncf.notary.payload.v1+json.

", "SigningJobRevocationRecord$reason": "

A caller-supplied reason for revocation.

", "SigningJobRevocationRecord$revokedBy": "

The identity of the revoker.

", - "SigningPlatform$platformId": "

The ID of a code signing platform.

", - "SigningPlatform$displayName": "

The display name of a code signing platform.

", - "SigningPlatform$partner": "

Any partner entities linked to a code signing platform.

", - "SigningPlatform$target": "

The types of targets that can be signed by a code signing platform.

", + "SigningPlatform$platformId": "

The ID of a signing platform.

", + "SigningPlatform$displayName": "

The display name of a signing platform.

", + "SigningPlatform$partner": "

Any partner entities linked to a signing platform.

", + "SigningPlatform$target": "

The types of targets that can be signed by a signing platform.

", "SigningProfileRevocationRecord$revokedBy": "

The identity of the revoker.

", "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) for the signing profile.

", "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) for the signing profile.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/signer/2017-08-25/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/signer/2017-08-25/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/signer/2017-08-25/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/signer/2017-08-25/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://signer-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://signer-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://signer-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://signer-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://signer.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://signer.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://signer.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://signer.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -61,7 +61,8 @@ {"shape":"NotFoundException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, - {"shape":"FilterPolicyLimitExceededException"} + {"shape":"FilterPolicyLimitExceededException"}, + {"shape":"ReplayLimitExceededException"} ] }, "CreatePlatformApplication":{ @@ -197,6 +198,7 @@ "input":{"shape":"DeleteTopicInput"}, "errors":[ {"shape":"InvalidParameterException"}, + {"shape":"InvalidStateException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"}, @@ -660,6 +662,7 @@ "errors":[ {"shape":"InvalidParameterException"}, {"shape":"FilterPolicyLimitExceededException"}, + {"shape":"ReplayLimitExceededException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} @@ -694,6 +697,7 @@ "errors":[ {"shape":"SubscriptionLimitExceededException"}, {"shape":"FilterPolicyLimitExceededException"}, + {"shape":"ReplayLimitExceededException"}, {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, @@ -1198,6 +1202,18 @@ }, "exception":true }, + "InvalidStateException":{ + "type":"structure", + "members":{ + "message":{"shape":"string"} + }, + "error":{ + "code":"InvalidState", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "Iso2CountryCode":{ "type":"string", "max":2, @@ -1656,6 +1672,18 @@ "Label":{"shape":"label"} } }, + "ReplayLimitExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"string"} + }, + "error":{ + "code":"ReplayLimitExceeded", + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, "ResourceNotFoundException":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -39,7 +39,7 @@ "SetSMSAttributes": "

Use this request to set the default settings for sending SMS messages and receiving daily SMS usage reports.

You can override some of these settings for a single message when you use the Publish action with the MessageAttributes.entry.N parameter. For more information, see Publishing to a mobile phone in the Amazon SNS Developer Guide.

To use this operation, you must grant the Amazon SNS service principal (sns.amazonaws.com) permission to perform the s3:ListBucket action.

", "SetSubscriptionAttributes": "

Allows a subscription owner to set an attribute of the subscription to a new value.

", "SetTopicAttributes": "

Allows a topic owner to set an attribute of the topic to a new value.

To remove the ability to change topic permissions, you must deny permissions to the AddPermission, RemovePermission, and SetTopicAttributes actions in your IAM policy.

", - "Subscribe": "

Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same Amazon Web Services account, the endpoint owner must run the ConfirmSubscription action to confirm the subscription.

You call the ConfirmSubscription action with the token from the subscription response. Confirmation tokens are valid for three days.

This action is throttled at 100 transactions per second (TPS).

", + "Subscribe": "

Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same Amazon Web Services account, the endpoint owner must run the ConfirmSubscription action to confirm the subscription.

You call the ConfirmSubscription action with the token from the subscription response. Confirmation tokens are valid for two days.

This action is throttled at 100 transactions per second (TPS).

", "TagResource": "

Add tags to the specified Amazon SNS topic. For an overview, see Amazon SNS Tags in the Amazon SNS Developer Guide.

When you use topic tags, keep the following guidelines in mind:

  • Adding more than 50 tags to a topic isn't recommended.

  • Tags don't have any semantic meaning. Amazon SNS interprets tags as character strings.

  • Tags are case-sensitive.

  • A new tag with a key identical to that of an existing tag overwrites the existing tag.

  • Tagging actions are limited to 10 TPS per Amazon Web Services account, per Amazon Web Services Region. If your application requires a higher throughput, file a technical support request.

", "Unsubscribe": "

Deletes a subscription. If the subscription requires authentication for deletion, only the owner of the subscription or the topic's owner can unsubscribe, and an Amazon Web Services signature is required. If the Unsubscribe call does not require authentication and the requester is not the subscription owner, a final cancellation message is delivered to the endpoint, so that the endpoint owner can easily resubscribe to the topic if the Unsubscribe request was unintended.

Amazon SQS queue subscriptions require authentication for deletion. Only the owner of the subscription, or the owner of the topic can unsubscribe using the required Amazon Web Services signature.

This action is throttled at 100 transactions per second (TPS).

", "UntagResource": "

Remove tags from the specified Amazon SNS topic. For an overview, see Amazon SNS Tags in the Amazon SNS Developer Guide.

", @@ -310,6 +310,11 @@ "refs": { } }, + "InvalidStateException": { + "base": "

Indicates that the specified state is not a valid state for an event source.

", + "refs": { + } + }, "Iso2CountryCode": { "base": "The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. For example, GB or US.", "refs": { @@ -322,12 +327,12 @@ } }, "KMSDisabledException": { - "base": "

The request was rejected because the specified customer master key (CMK) isn't enabled.

", + "base": "

The request was rejected because the specified Amazon Web Services KMS key isn't enabled.

", "refs": { } }, "KMSInvalidStateException": { - "base": "

The request was rejected because the state of the specified resource isn't valid for this request. For more information, see How Key State Affects Use of a Customer Master Key in the Key Management Service Developer Guide.

", + "base": "

The request was rejected because the state of the specified resource isn't valid for this request. For more information, see Key states of Amazon Web Services KMS keys in the Key Management Service Developer Guide.

", "refs": { } }, @@ -638,6 +643,11 @@ "refs": { } }, + "ReplayLimitExceededException": { + "base": "

Indicates that the request parameter has exceeded the maximum number of concurrent message replays.

", + "refs": { + } + }, "ResourceNotFoundException": { "base": "

Can’t perform the action on the specified resource. Make sure that the resource exists.

", "refs": { @@ -768,7 +778,7 @@ "base": null, "refs": { "GetSubscriptionAttributesResponse$Attributes": "

A map of the subscription's attributes. Attributes in this map include the following:

  • ConfirmationWasAuthenticatedtrue if the subscription confirmation request was authenticated.

  • DeliveryPolicy – The JSON serialization of the subscription's delivery policy.

  • EffectiveDeliveryPolicy – The JSON serialization of the effective delivery policy that takes into account the topic delivery policy and account system defaults.

  • FilterPolicy – The filter policy JSON that is assigned to the subscription. For more information, see Amazon SNS Message Filtering in the Amazon SNS Developer Guide.

  • FilterPolicyScope – This attribute lets you choose the filtering scope by using one of the following string value types:

    • MessageAttributes (default) – The filter is applied on the message attributes.

    • MessageBody – The filter is applied on the message body.

  • Owner – The Amazon Web Services account ID of the subscription's owner.

  • PendingConfirmationtrue if the subscription hasn't been confirmed. To confirm a pending subscription, call the ConfirmSubscription action with a confirmation token.

  • RawMessageDeliverytrue if raw message delivery is enabled for the subscription. Raw messages are free of JSON formatting and can be sent to HTTP/S and Amazon SQS endpoints.

  • RedrivePolicy – When specified, sends undeliverable messages to the specified Amazon SQS dead-letter queue. Messages that can't be delivered due to client errors (for example, when the subscribed endpoint is unreachable) or server errors (for example, when the service that powers the subscribed endpoint becomes unavailable) are held in the dead-letter queue for further analysis or reprocessing.

  • SubscriptionArn – The subscription's ARN.

  • TopicArn – The topic ARN that the subscription is associated with.

The following attribute applies only to Amazon Kinesis Data Firehose delivery stream subscriptions:

  • SubscriptionRoleArn – The ARN of the IAM role that has the following:

    • Permission to write to the Kinesis Data Firehose delivery stream

    • Amazon SNS listed as a trusted entity

    Specifying a valid ARN for this attribute is required for Kinesis Data Firehose delivery stream subscriptions. For more information, see Fanout to Kinesis Data Firehose delivery streams in the Amazon SNS Developer Guide.

", - "SubscribeInput$Attributes": "

A map of attributes with their corresponding values.

The following lists the names, descriptions, and values of the special request parameters that the Subscribe action uses:

  • DeliveryPolicy – The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.

  • FilterPolicy – The simple JSON object that lets your subscriber receive only a subset of messages, rather than receiving every message published to the topic.

  • FilterPolicyScope – This attribute lets you choose the filtering scope by using one of the following string value types:

    • MessageAttributes (default) – The filter is applied on the message attributes.

    • MessageBody – The filter is applied on the message body.

  • RawMessageDelivery – When set to true, enables raw message delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need for the endpoints to process JSON formatting, which is otherwise created for Amazon SNS metadata.

  • RedrivePolicy – When specified, sends undeliverable messages to the specified Amazon SQS dead-letter queue. Messages that can't be delivered due to client errors (for example, when the subscribed endpoint is unreachable) or server errors (for example, when the service that powers the subscribed endpoint becomes unavailable) are held in the dead-letter queue for further analysis or reprocessing.

The following attribute applies only to Amazon Kinesis Data Firehose delivery stream subscriptions:

  • SubscriptionRoleArn – The ARN of the IAM role that has the following:

    • Permission to write to the Kinesis Data Firehose delivery stream

    • Amazon SNS listed as a trusted entity

    Specifying a valid ARN for this attribute is required for Kinesis Data Firehose delivery stream subscriptions. For more information, see Fanout to Kinesis Data Firehose delivery streams in the Amazon SNS Developer Guide.

" + "SubscribeInput$Attributes": "

A map of attributes with their corresponding values.

The following lists the names, descriptions, and values of the special request parameters that the Subscribe action uses:

  • DeliveryPolicy – The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.

  • FilterPolicy – The simple JSON object that lets your subscriber receive only a subset of messages, rather than receiving every message published to the topic.

  • FilterPolicyScope – This attribute lets you choose the filtering scope by using one of the following string value types:

    • MessageAttributes (default) – The filter is applied on the message attributes.

    • MessageBody – The filter is applied on the message body.

  • RawMessageDelivery – When set to true, enables raw message delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need for the endpoints to process JSON formatting, which is otherwise created for Amazon SNS metadata.

  • RedrivePolicy – When specified, sends undeliverable messages to the specified Amazon SQS dead-letter queue. Messages that can't be delivered due to client errors (for example, when the subscribed endpoint is unreachable) or server errors (for example, when the service that powers the subscribed endpoint becomes unavailable) are held in the dead-letter queue for further analysis or reprocessing.

The following attribute applies only to Amazon Kinesis Data Firehose delivery stream subscriptions:

  • SubscriptionRoleArn – The ARN of the IAM role that has the following:

    • Permission to write to the Kinesis Data Firehose delivery stream

    • Amazon SNS listed as a trusted entity

    Specifying a valid ARN for this attribute is required for Kinesis Data Firehose delivery stream subscriptions. For more information, see Fanout to Kinesis Data Firehose delivery streams in the Amazon SNS Developer Guide.

The following attributes apply only to FIFO topics:

  • ReplayPolicy – Adds or updates an inline policy document for a subscription to replay messages stored in the specified Amazon SNS topic.

  • ReplayStatus – Retrieves the status of the subscription message replay, which can be one of the following:

    • Completed – The replay has successfully redelivered all messages, and is now delivering newly published messages. If an ending point was specified in the ReplayPolicy then the subscription will no longer receive newly published messages.

    • In progress – The replay is currently replaying the selected messages.

    • Failed – The replay was unable to complete.

    • Pending – The default state while the replay initiates.

" } }, "SubscriptionLimitExceededException": { @@ -861,7 +871,7 @@ "TopicAttributesMap": { "base": null, "refs": { - "CreateTopicInput$Attributes": "

A map of attributes with their corresponding values.

The following lists the names, descriptions, and values of the special request parameters that the CreateTopic action uses:

  • DeliveryPolicy – The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.

  • DisplayName – The display name to use for a topic with SMS subscriptions.

  • FifoTopic – Set to true to create a FIFO topic.

  • Policy – The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic.

  • SignatureVersion – The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS. By default, SignatureVersion is set to 1.

  • TracingConfig – Tracing mode of an Amazon SNS topic. By default TracingConfig is set to PassThrough, and the topic passes through the tracing header it receives from an Amazon SNS publisher to its subscriptions. If set to Active, Amazon SNS will vend X-Ray segment data to topic owner account if the sampled flag in the tracing header is true. This is only supported on standard topics.

The following attribute applies only to server-side encryption:

  • KmsMasterKeyId – The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.

The following attributes apply only to FIFO topics:

  • FifoTopic – When this is set to true, a FIFO topic is created.

  • ContentBasedDeduplication – Enables content-based deduplication for FIFO topics.

    • By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.

    • When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).

      (Optional) To override the generated value, you can specify a value for the MessageDeduplicationId parameter for the Publish action.

", + "CreateTopicInput$Attributes": "

A map of attributes with their corresponding values.

The following lists the names, descriptions, and values of the special request parameters that the CreateTopic action uses:

  • DeliveryPolicy – The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.

  • DisplayName – The display name to use for a topic with SMS subscriptions.

  • FifoTopic – Set to true to create a FIFO topic.

  • Policy – The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic.

  • SignatureVersion – The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS. By default, SignatureVersion is set to 1.

  • TracingConfig – Tracing mode of an Amazon SNS topic. By default TracingConfig is set to PassThrough, and the topic passes through the tracing header it receives from an Amazon SNS publisher to its subscriptions. If set to Active, Amazon SNS will vend X-Ray segment data to topic owner account if the sampled flag in the tracing header is true. This is only supported on standard topics.

The following attribute applies only to server-side encryption:

  • KmsMasterKeyId – The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.

The following attributes apply only to FIFO topics:

  • ArchivePolicy – Adds or updates an inline policy document to archive messages stored in the specified Amazon SNS topic.

  • BeginningArchiveTime – The earliest starting point at which a message in the topic’s archive can be replayed from. This point in time is based on the configured message retention period set by the topic’s message archiving policy.

  • ContentBasedDeduplication – Enables content-based deduplication for FIFO topics.

    • By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.

    • When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).

      (Optional) To override the generated value, you can specify a value for the MessageDeduplicationId parameter for the Publish action.

", "GetTopicAttributesResponse$Attributes": "

A map of the topic's attributes. Attributes in this map include the following:

  • DeliveryPolicy – The JSON serialization of the topic's delivery policy.

  • DisplayName – The human-readable name used in the From field for notifications to email and email-json endpoints.

  • EffectiveDeliveryPolicy – The JSON serialization of the effective delivery policy, taking system defaults into account.

  • Owner – The Amazon Web Services account ID of the topic's owner.

  • Policy – The JSON serialization of the topic's access control policy.

  • SignatureVersion – The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.

    • By default, SignatureVersion is set to 1. The signature is a Base64-encoded SHA1withRSA signature.

    • When you set SignatureVersion to 2. Amazon SNS uses a Base64-encoded SHA256withRSA signature.

      If the API response does not include the SignatureVersion attribute, it means that the SignatureVersion for the topic has value 1.

  • SubscriptionsConfirmed – The number of confirmed subscriptions for the topic.

  • SubscriptionsDeleted – The number of deleted subscriptions for the topic.

  • SubscriptionsPending – The number of subscriptions pending confirmation for the topic.

  • TopicArn – The topic's ARN.

  • TracingConfig – Tracing mode of an Amazon SNS topic. By default TracingConfig is set to PassThrough, and the topic passes through the tracing header it receives from an Amazon SNS publisher to its subscriptions. If set to Active, Amazon SNS will vend X-Ray segment data to topic owner account if the sampled flag in the tracing header is true. This is only supported on standard topics.

The following attribute applies only to server-side-encryption:

  • KmsMasterKeyId - The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.

The following attributes apply only to FIFO topics:

  • FifoTopic – When this is set to true, a FIFO topic is created.

  • ContentBasedDeduplication – Enables content-based deduplication for FIFO topics.

    • By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.

    • When you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).

      (Optional) To override the generated value, you can specify a value for the MessageDeduplicationId parameter for the Publish action.

" } }, @@ -1041,6 +1051,7 @@ "InvalidParameterException$message": null, "InvalidParameterValueException$message": "

The parameter of an entry in a request doesn't abide by the specification.

", "InvalidSecurityException$message": null, + "InvalidStateException$message": null, "KMSAccessDeniedException$message": null, "KMSDisabledException$message": null, "KMSInvalidStateException$message": null, @@ -1053,6 +1064,7 @@ "NotFoundException$message": null, "OptedOutException$message": null, "PlatformApplicationDisabledException$message": "

Message for platform application disabled.

", + "ReplayLimitExceededException$message": null, "ResourceNotFoundException$message": null, "StaleTagException$message": null, "SubscriptionLimitExceededException$message": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,331 +57,296 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://sns-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://sns-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "Region" + }, + "us-gov-east-1" ] } ], - "type": "tree", - "rules": [ + "endpoint": { + "url": "https://sns.us-gov-east-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-east-1" - ] - } - ], - "endpoint": { - "url": "https://sns.us-gov-east-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-west-1" - ] - } - ], - "endpoint": { - "url": "https://sns.us-gov-west-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, - { - "conditions": [], - "endpoint": { - "url": "https://sns-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "us-gov-west-1" ] } - ] + ], + "endpoint": { + "url": "https://sns.us-gov-west-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://sns-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://sns.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://sns.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://sns.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://sns.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sns/2010-03-31/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sns/2010-03-31/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,8 +9,8 @@ }, "params": { "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -22,8 +22,8 @@ }, "params": { "Region": "ap-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -35,8 +35,8 @@ }, "params": { "Region": "ap-northeast-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -48,8 +48,8 @@ }, "params": { "Region": "ap-northeast-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -61,8 +61,8 @@ }, "params": { "Region": "ap-northeast-3", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -74,8 +74,8 @@ }, "params": { "Region": "ap-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -87,8 +87,8 @@ }, "params": { "Region": "ap-southeast-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -100,8 +100,8 @@ }, "params": { "Region": "ap-southeast-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -113,8 +113,8 @@ }, "params": { "Region": "ap-southeast-3", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -126,8 +126,8 @@ }, "params": { "Region": "ca-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -139,8 +139,8 @@ }, "params": { "Region": "eu-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -152,8 +152,8 @@ }, "params": { "Region": "eu-north-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -165,8 +165,8 @@ }, "params": { "Region": "eu-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -178,8 +178,8 @@ }, "params": { "Region": "eu-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -191,8 +191,8 @@ }, "params": { "Region": "eu-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -204,8 +204,8 @@ }, "params": { "Region": "eu-west-3", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -217,8 +217,8 @@ }, "params": { "Region": "me-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -230,8 +230,8 @@ }, "params": { "Region": "sa-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -243,8 +243,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -256,8 +256,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -269,8 +269,8 @@ }, "params": { "Region": "us-east-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -282,8 +282,8 @@ }, "params": { "Region": "us-east-2", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -295,8 +295,8 @@ }, "params": { "Region": "us-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -308,8 +308,8 @@ }, "params": { "Region": "us-west-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -321,8 +321,8 @@ }, "params": { "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -334,8 +334,8 @@ }, "params": { "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -347,8 +347,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -360,8 +360,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -373,8 +373,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -386,8 +386,8 @@ }, "params": { "Region": "cn-northwest-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -399,8 +399,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -412,8 +412,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -425,8 +425,8 @@ }, "params": { "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -438,8 +438,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -451,8 +451,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -464,8 +464,8 @@ }, "params": { "Region": "us-gov-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -477,8 +477,8 @@ }, "params": { "Region": "us-gov-west-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -490,8 +490,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -503,8 +503,8 @@ }, "params": { "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -516,8 +516,8 @@ }, "params": { "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -529,8 +529,19 @@ }, "params": { "Region": "us-iso-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -542,8 +553,19 @@ }, "params": { "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -555,8 +577,19 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { @@ -568,8 +601,19 @@ }, "params": { "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { @@ -581,8 +625,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -594,8 +638,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -606,8 +650,8 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": false, "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -618,10 +662,16 @@ }, "params": { "Region": "us-east-1", - "UseDualStack": true, "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,14 +2,17 @@ "version":"2.0", "metadata":{ "apiVersion":"2012-11-05", + "awsQueryCompatible":{ + }, "endpointPrefix":"sqs", - "protocol":"query", + "jsonVersion":"1.0", + "protocol":"json", "serviceAbbreviation":"Amazon SQS", "serviceFullName":"Amazon Simple Queue Service", "serviceId":"SQS", "signatureVersion":"v4", - "uid":"sqs-2012-11-05", - "xmlNamespace":"http://queue.amazonaws.com/doc/2012-11-05/" + "targetPrefix":"AmazonSQS", + "uid":"sqs-2012-11-05" }, "operations":{ "AddPermission":{ @@ -20,7 +23,12 @@ }, "input":{"shape":"AddPermissionRequest"}, "errors":[ - {"shape":"OverLimit"} + {"shape":"OverLimit"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"}, + {"shape":"UnsupportedOperation"} ] }, "CancelMessageMoveTask":{ @@ -30,12 +38,12 @@ "requestUri":"/" }, "input":{"shape":"CancelMessageMoveTaskRequest"}, - "output":{ - "shape":"CancelMessageMoveTaskResult", - "resultWrapper":"CancelMessageMoveTaskResult" - }, + "output":{"shape":"CancelMessageMoveTaskResult"}, "errors":[ {"shape":"ResourceNotFoundException"}, + {"shape":"RequestThrottled"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"}, {"shape":"UnsupportedOperation"} ] }, @@ -48,7 +56,12 @@ "input":{"shape":"ChangeMessageVisibilityRequest"}, "errors":[ {"shape":"MessageNotInflight"}, - {"shape":"ReceiptHandleIsInvalid"} + {"shape":"ReceiptHandleIsInvalid"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"} ] }, "ChangeMessageVisibilityBatch":{ @@ -58,15 +71,17 @@ "requestUri":"/" }, "input":{"shape":"ChangeMessageVisibilityBatchRequest"}, - "output":{ - "shape":"ChangeMessageVisibilityBatchResult", - "resultWrapper":"ChangeMessageVisibilityBatchResult" - }, + "output":{"shape":"ChangeMessageVisibilityBatchResult"}, "errors":[ {"shape":"TooManyEntriesInBatchRequest"}, {"shape":"EmptyBatchRequest"}, {"shape":"BatchEntryIdsNotDistinct"}, - {"shape":"InvalidBatchEntryId"} + {"shape":"InvalidBatchEntryId"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"} ] }, "CreateQueue":{ @@ -76,13 +91,16 @@ "requestUri":"/" }, "input":{"shape":"CreateQueueRequest"}, - "output":{ - "shape":"CreateQueueResult", - "resultWrapper":"CreateQueueResult" - }, + "output":{"shape":"CreateQueueResult"}, "errors":[ {"shape":"QueueDeletedRecently"}, - {"shape":"QueueNameExists"} + {"shape":"QueueNameExists"}, + {"shape":"RequestThrottled"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidAttributeName"}, + {"shape":"InvalidAttributeValue"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidSecurity"} ] }, "DeleteMessage":{ @@ -94,7 +112,12 @@ "input":{"shape":"DeleteMessageRequest"}, "errors":[ {"shape":"InvalidIdFormat"}, - {"shape":"ReceiptHandleIsInvalid"} + {"shape":"ReceiptHandleIsInvalid"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidSecurity"}, + {"shape":"InvalidAddress"} ] }, "DeleteMessageBatch":{ @@ -104,15 +127,17 @@ "requestUri":"/" }, "input":{"shape":"DeleteMessageBatchRequest"}, - "output":{ - "shape":"DeleteMessageBatchResult", - "resultWrapper":"DeleteMessageBatchResult" - }, + "output":{"shape":"DeleteMessageBatchResult"}, "errors":[ {"shape":"TooManyEntriesInBatchRequest"}, {"shape":"EmptyBatchRequest"}, {"shape":"BatchEntryIdsNotDistinct"}, - {"shape":"InvalidBatchEntryId"} + {"shape":"InvalidBatchEntryId"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"} ] }, "DeleteQueue":{ @@ -121,7 +146,14 @@ "method":"POST", "requestUri":"/" }, - "input":{"shape":"DeleteQueueRequest"} + "input":{"shape":"DeleteQueueRequest"}, + "errors":[ + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidAddress"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidSecurity"} + ] }, "GetQueueAttributes":{ "name":"GetQueueAttributes", @@ -130,12 +162,14 @@ "requestUri":"/" }, "input":{"shape":"GetQueueAttributesRequest"}, - "output":{ - "shape":"GetQueueAttributesResult", - "resultWrapper":"GetQueueAttributesResult" - }, + "output":{"shape":"GetQueueAttributesResult"}, "errors":[ - {"shape":"InvalidAttributeName"} + {"shape":"InvalidAttributeName"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidSecurity"}, + {"shape":"InvalidAddress"} ] }, "GetQueueUrl":{ @@ -145,12 +179,13 @@ "requestUri":"/" }, "input":{"shape":"GetQueueUrlRequest"}, - "output":{ - "shape":"GetQueueUrlResult", - "resultWrapper":"GetQueueUrlResult" - }, + "output":{"shape":"GetQueueUrlResult"}, "errors":[ - {"shape":"QueueDoesNotExist"} + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"}, + {"shape":"UnsupportedOperation"} ] }, "ListDeadLetterSourceQueues":{ @@ -160,12 +195,13 @@ "requestUri":"/" }, "input":{"shape":"ListDeadLetterSourceQueuesRequest"}, - "output":{ - "shape":"ListDeadLetterSourceQueuesResult", - "resultWrapper":"ListDeadLetterSourceQueuesResult" - }, + "output":{"shape":"ListDeadLetterSourceQueuesResult"}, "errors":[ - {"shape":"QueueDoesNotExist"} + {"shape":"QueueDoesNotExist"}, + {"shape":"RequestThrottled"}, + {"shape":"InvalidSecurity"}, + {"shape":"InvalidAddress"}, + {"shape":"UnsupportedOperation"} ] }, "ListMessageMoveTasks":{ @@ -175,12 +211,12 @@ "requestUri":"/" }, "input":{"shape":"ListMessageMoveTasksRequest"}, - "output":{ - "shape":"ListMessageMoveTasksResult", - "resultWrapper":"ListMessageMoveTasksResult" - }, + "output":{"shape":"ListMessageMoveTasksResult"}, "errors":[ {"shape":"ResourceNotFoundException"}, + {"shape":"RequestThrottled"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"}, {"shape":"UnsupportedOperation"} ] }, @@ -191,10 +227,14 @@ "requestUri":"/" }, "input":{"shape":"ListQueueTagsRequest"}, - "output":{ - "shape":"ListQueueTagsResult", - "resultWrapper":"ListQueueTagsResult" - } + "output":{"shape":"ListQueueTagsResult"}, + "errors":[ + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"} + ] }, "ListQueues":{ "name":"ListQueues", @@ -203,10 +243,13 @@ "requestUri":"/" }, "input":{"shape":"ListQueuesRequest"}, - "output":{ - "shape":"ListQueuesResult", - "resultWrapper":"ListQueuesResult" - } + "output":{"shape":"ListQueuesResult"}, + "errors":[ + {"shape":"RequestThrottled"}, + {"shape":"InvalidSecurity"}, + {"shape":"InvalidAddress"}, + {"shape":"UnsupportedOperation"} + ] }, "PurgeQueue":{ "name":"PurgeQueue", @@ -217,7 +260,11 @@ "input":{"shape":"PurgeQueueRequest"}, "errors":[ {"shape":"QueueDoesNotExist"}, - {"shape":"PurgeQueueInProgress"} + {"shape":"PurgeQueueInProgress"}, + {"shape":"RequestThrottled"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"}, + {"shape":"UnsupportedOperation"} ] }, "ReceiveMessage":{ @@ -227,12 +274,21 @@ "requestUri":"/" }, "input":{"shape":"ReceiveMessageRequest"}, - "output":{ - "shape":"ReceiveMessageResult", - "resultWrapper":"ReceiveMessageResult" - }, + "output":{"shape":"ReceiveMessageResult"}, "errors":[ - {"shape":"OverLimit"} + {"shape":"UnsupportedOperation"}, + {"shape":"OverLimit"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidSecurity"}, + {"shape":"KmsDisabled"}, + {"shape":"KmsInvalidState"}, + {"shape":"KmsNotFound"}, + {"shape":"KmsOptInRequired"}, + {"shape":"KmsThrottled"}, + {"shape":"KmsAccessDenied"}, + {"shape":"KmsInvalidKeyUsage"}, + {"shape":"InvalidAddress"} ] }, "RemovePermission":{ @@ -241,7 +297,14 @@ "method":"POST", "requestUri":"/" }, - "input":{"shape":"RemovePermissionRequest"} + "input":{"shape":"RemovePermissionRequest"}, + "errors":[ + {"shape":"InvalidAddress"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidSecurity"}, + {"shape":"UnsupportedOperation"} + ] }, "SendMessage":{ "name":"SendMessage", @@ -250,13 +313,21 @@ "requestUri":"/" }, "input":{"shape":"SendMessageRequest"}, - "output":{ - "shape":"SendMessageResult", - "resultWrapper":"SendMessageResult" - }, + "output":{"shape":"SendMessageResult"}, "errors":[ {"shape":"InvalidMessageContents"}, - {"shape":"UnsupportedOperation"} + {"shape":"UnsupportedOperation"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidSecurity"}, + {"shape":"KmsDisabled"}, + {"shape":"KmsInvalidState"}, + {"shape":"KmsNotFound"}, + {"shape":"KmsOptInRequired"}, + {"shape":"KmsThrottled"}, + {"shape":"KmsAccessDenied"}, + {"shape":"KmsInvalidKeyUsage"}, + {"shape":"InvalidAddress"} ] }, "SendMessageBatch":{ @@ -266,17 +337,25 @@ "requestUri":"/" }, "input":{"shape":"SendMessageBatchRequest"}, - "output":{ - "shape":"SendMessageBatchResult", - "resultWrapper":"SendMessageBatchResult" - }, + "output":{"shape":"SendMessageBatchResult"}, "errors":[ {"shape":"TooManyEntriesInBatchRequest"}, {"shape":"EmptyBatchRequest"}, {"shape":"BatchEntryIdsNotDistinct"}, {"shape":"BatchRequestTooLong"}, {"shape":"InvalidBatchEntryId"}, - {"shape":"UnsupportedOperation"} + {"shape":"UnsupportedOperation"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidSecurity"}, + {"shape":"KmsDisabled"}, + {"shape":"KmsInvalidState"}, + {"shape":"KmsNotFound"}, + {"shape":"KmsOptInRequired"}, + {"shape":"KmsThrottled"}, + {"shape":"KmsAccessDenied"}, + {"shape":"KmsInvalidKeyUsage"}, + {"shape":"InvalidAddress"} ] }, "SetQueueAttributes":{ @@ -287,7 +366,14 @@ }, "input":{"shape":"SetQueueAttributesRequest"}, "errors":[ - {"shape":"InvalidAttributeName"} + {"shape":"InvalidAttributeName"}, + {"shape":"InvalidAttributeValue"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"UnsupportedOperation"}, + {"shape":"OverLimit"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"} ] }, "StartMessageMoveTask":{ @@ -297,12 +383,12 @@ "requestUri":"/" }, "input":{"shape":"StartMessageMoveTaskRequest"}, - "output":{ - "shape":"StartMessageMoveTaskResult", - "resultWrapper":"StartMessageMoveTaskResult" - }, + "output":{"shape":"StartMessageMoveTaskResult"}, "errors":[ {"shape":"ResourceNotFoundException"}, + {"shape":"RequestThrottled"}, + {"shape":"InvalidAddress"}, + {"shape":"InvalidSecurity"}, {"shape":"UnsupportedOperation"} ] }, @@ -312,7 +398,14 @@ "method":"POST", "requestUri":"/" }, - "input":{"shape":"TagQueueRequest"} + "input":{"shape":"TagQueueRequest"}, + "errors":[ + {"shape":"InvalidAddress"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidSecurity"}, + {"shape":"UnsupportedOperation"} + ] }, "UntagQueue":{ "name":"UntagQueue", @@ -320,24 +413,25 @@ "method":"POST", "requestUri":"/" }, - "input":{"shape":"UntagQueueRequest"} + "input":{"shape":"UntagQueueRequest"}, + "errors":[ + {"shape":"InvalidAddress"}, + {"shape":"RequestThrottled"}, + {"shape":"QueueDoesNotExist"}, + {"shape":"InvalidSecurity"}, + {"shape":"UnsupportedOperation"} + ] } }, "shapes":{ "AWSAccountIdList":{ "type":"list", - "member":{ - "shape":"String", - "locationName":"AWSAccountId" - }, + "member":{"shape":"String"}, "flattened":true }, "ActionNameList":{ "type":"list", - "member":{ - "shape":"String", - "locationName":"ActionName" - }, + "member":{"shape":"String"}, "flattened":true }, "AddPermissionRequest":{ @@ -357,31 +451,20 @@ }, "AttributeNameList":{ "type":"list", - "member":{ - "shape":"QueueAttributeName", - "locationName":"AttributeName" - }, + "member":{"shape":"QueueAttributeName"}, "flattened":true }, "BatchEntryIdsNotDistinct":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.BatchEntryIdsNotDistinct", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, "BatchRequestTooLong":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.BatchRequestTooLong", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, @@ -401,19 +484,13 @@ }, "BatchResultErrorEntryList":{ "type":"list", - "member":{ - "shape":"BatchResultErrorEntry", - "locationName":"BatchResultErrorEntry" - }, + "member":{"shape":"BatchResultErrorEntry"}, "flattened":true }, "Binary":{"type":"blob"}, "BinaryList":{ "type":"list", - "member":{ - "shape":"Binary", - "locationName":"BinaryListValue" - } + "member":{"shape":"Binary"} }, "Boolean":{"type":"boolean"}, "BoxedInteger":{ @@ -453,15 +530,12 @@ "members":{ "Id":{"shape":"String"}, "ReceiptHandle":{"shape":"String"}, - "VisibilityTimeout":{"shape":"Integer"} + "VisibilityTimeout":{"shape":"NullableInteger"} } }, "ChangeMessageVisibilityBatchRequestEntryList":{ "type":"list", - "member":{ - "shape":"ChangeMessageVisibilityBatchRequestEntry", - "locationName":"ChangeMessageVisibilityBatchRequestEntry" - }, + "member":{"shape":"ChangeMessageVisibilityBatchRequestEntry"}, "flattened":true }, "ChangeMessageVisibilityBatchResult":{ @@ -484,10 +558,7 @@ }, "ChangeMessageVisibilityBatchResultEntryList":{ "type":"list", - "member":{ - "shape":"ChangeMessageVisibilityBatchResultEntry", - "locationName":"ChangeMessageVisibilityBatchResultEntry" - }, + "member":{"shape":"ChangeMessageVisibilityBatchResultEntry"}, "flattened":true }, "ChangeMessageVisibilityRequest":{ @@ -500,7 +571,7 @@ "members":{ "QueueUrl":{"shape":"String"}, "ReceiptHandle":{"shape":"String"}, - "VisibilityTimeout":{"shape":"Integer"} + "VisibilityTimeout":{"shape":"NullableInteger"} } }, "CreateQueueRequest":{ @@ -508,14 +579,8 @@ "required":["QueueName"], "members":{ "QueueName":{"shape":"String"}, - "Attributes":{ - "shape":"QueueAttributeMap", - "locationName":"Attribute" - }, - "tags":{ - "shape":"TagMap", - "locationName":"Tag" - } + "Attributes":{"shape":"QueueAttributeMap"}, + "tags":{"shape":"TagMap"} } }, "CreateQueueResult":{ @@ -548,10 +613,7 @@ }, "DeleteMessageBatchRequestEntryList":{ "type":"list", - "member":{ - "shape":"DeleteMessageBatchRequestEntry", - "locationName":"DeleteMessageBatchRequestEntry" - }, + "member":{"shape":"DeleteMessageBatchRequestEntry"}, "flattened":true }, "DeleteMessageBatchResult":{ @@ -574,10 +636,7 @@ }, "DeleteMessageBatchResultEntryList":{ "type":"list", - "member":{ - "shape":"DeleteMessageBatchResultEntry", - "locationName":"DeleteMessageBatchResultEntry" - }, + "member":{"shape":"DeleteMessageBatchResultEntry"}, "flattened":true }, "DeleteMessageRequest":{ @@ -601,14 +660,11 @@ "EmptyBatchRequest":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.EmptyBatchRequest", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, + "ExceptionMessage":{"type":"string"}, "GetQueueAttributesRequest":{ "type":"structure", "required":["QueueUrl"], @@ -620,10 +676,7 @@ "GetQueueAttributesResult":{ "type":"structure", "members":{ - "Attributes":{ - "shape":"QueueAttributeMap", - "locationName":"Attribute" - } + "Attributes":{"shape":"QueueAttributeMap"} } }, "GetQueueUrlRequest":{ @@ -640,21 +693,31 @@ "QueueUrl":{"shape":"String"} } }, - "Integer":{"type":"integer"}, + "InvalidAddress":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, "InvalidAttributeName":{ "type":"structure", "members":{ + "message":{"shape":"ExceptionMessage"} }, "exception":true }, - "InvalidBatchEntryId":{ + "InvalidAttributeValue":{ "type":"structure", "members":{ + "message":{"shape":"ExceptionMessage"} }, - "error":{ - "code":"AWS.SimpleQueueService.InvalidBatchEntryId", - "httpStatusCode":400, - "senderFault":true + "exception":true + }, + "InvalidBatchEntryId":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} }, "exception":true }, @@ -662,11 +725,70 @@ "type":"structure", "members":{ }, + "deprecated":true, + "deprecatedMessage":"exception has been included in ReceiptHandleIsInvalid", "exception":true }, "InvalidMessageContents":{ "type":"structure", "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "InvalidSecurity":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsAccessDenied":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsDisabled":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsInvalidKeyUsage":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsInvalidState":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsNotFound":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsOptInRequired":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "exception":true + }, + "KmsThrottled":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} }, "exception":true }, @@ -692,13 +814,16 @@ "required":["SourceArn"], "members":{ "SourceArn":{"shape":"String"}, - "MaxResults":{"shape":"Integer"} + "MaxResults":{"shape":"NullableInteger"} } }, "ListMessageMoveTasksResult":{ "type":"structure", "members":{ - "Results":{"shape":"ListMessageMoveTasksResultEntryList"} + "Results":{ + "shape":"ListMessageMoveTasksResultEntryList", + "flattened":true + } } }, "ListMessageMoveTasksResultEntry":{ @@ -708,19 +833,16 @@ "Status":{"shape":"String"}, "SourceArn":{"shape":"String"}, "DestinationArn":{"shape":"String"}, - "MaxNumberOfMessagesPerSecond":{"shape":"Integer"}, + "MaxNumberOfMessagesPerSecond":{"shape":"NullableInteger"}, "ApproximateNumberOfMessagesMoved":{"shape":"Long"}, - "ApproximateNumberOfMessagesToMove":{"shape":"Long"}, + "ApproximateNumberOfMessagesToMove":{"shape":"NullableLong"}, "FailureReason":{"shape":"String"}, "StartedTimestamp":{"shape":"Long"} } }, "ListMessageMoveTasksResultEntryList":{ "type":"list", - "member":{ - "shape":"ListMessageMoveTasksResultEntry", - "locationName":"ListMessageMoveTasksResultEntry" - }, + "member":{"shape":"ListMessageMoveTasksResultEntry"}, "flattened":true }, "ListQueueTagsRequest":{ @@ -733,10 +855,7 @@ "ListQueueTagsResult":{ "type":"structure", "members":{ - "Tags":{ - "shape":"TagMap", - "locationName":"Tag" - } + "Tags":{"shape":"TagMap"} } }, "ListQueuesRequest":{ @@ -762,24 +881,15 @@ "ReceiptHandle":{"shape":"String"}, "MD5OfBody":{"shape":"String"}, "Body":{"shape":"String"}, - "Attributes":{ - "shape":"MessageSystemAttributeMap", - "locationName":"Attribute" - }, + "Attributes":{"shape":"MessageSystemAttributeMap"}, "MD5OfMessageAttributes":{"shape":"String"}, - "MessageAttributes":{ - "shape":"MessageBodyAttributeMap", - "locationName":"MessageAttribute" - } + "MessageAttributes":{"shape":"MessageBodyAttributeMap"} } }, "MessageAttributeName":{"type":"string"}, "MessageAttributeNameList":{ "type":"list", - "member":{ - "shape":"MessageAttributeName", - "locationName":"MessageAttributeName" - }, + "member":{"shape":"MessageAttributeName"}, "flattened":true }, "MessageAttributeValue":{ @@ -790,72 +900,43 @@ "BinaryValue":{"shape":"Binary"}, "StringListValues":{ "shape":"StringList", - "flattened":true, - "locationName":"StringListValue" + "flattened":true }, "BinaryListValues":{ "shape":"BinaryList", - "flattened":true, - "locationName":"BinaryListValue" + "flattened":true }, "DataType":{"shape":"String"} } }, "MessageBodyAttributeMap":{ "type":"map", - "key":{ - "shape":"String", - "locationName":"Name" - }, - "value":{ - "shape":"MessageAttributeValue", - "locationName":"Value" - }, + "key":{"shape":"String"}, + "value":{"shape":"MessageAttributeValue"}, "flattened":true }, "MessageBodySystemAttributeMap":{ "type":"map", - "key":{ - "shape":"MessageSystemAttributeNameForSends", - "locationName":"Name" - }, - "value":{ - "shape":"MessageSystemAttributeValue", - "locationName":"Value" - }, + "key":{"shape":"MessageSystemAttributeNameForSends"}, + "value":{"shape":"MessageSystemAttributeValue"}, "flattened":true }, "MessageList":{ "type":"list", - "member":{ - "shape":"Message", - "locationName":"Message" - }, + "member":{"shape":"Message"}, "flattened":true }, "MessageNotInflight":{ "type":"structure", "members":{ }, - "error":{ - "code":"AWS.SimpleQueueService.MessageNotInflight", - "httpStatusCode":400, - "senderFault":true - }, "exception":true }, "MessageSystemAttributeMap":{ "type":"map", - "key":{ - "shape":"MessageSystemAttributeName", - "locationName":"Name" - }, - "value":{ - "shape":"String", - "locationName":"Value" - }, - "flattened":true, - "locationName":"Attribute" + "key":{"shape":"MessageSystemAttributeName"}, + "value":{"shape":"String"}, + "flattened":true }, "MessageSystemAttributeName":{ "type":"string", @@ -883,36 +964,28 @@ "BinaryValue":{"shape":"Binary"}, "StringListValues":{ "shape":"StringList", - "flattened":true, - "locationName":"StringListValue" + "flattened":true }, "BinaryListValues":{ "shape":"BinaryList", - "flattened":true, - "locationName":"BinaryListValue" + "flattened":true }, "DataType":{"shape":"String"} } }, + "NullableInteger":{"type":"integer"}, + "NullableLong":{"type":"long"}, "OverLimit":{ "type":"structure", "members":{ - }, - "error":{ - "code":"OverLimit", - "httpStatusCode":403, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, "PurgeQueueInProgress":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.PurgeQueueInProgress", - "httpStatusCode":403, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, @@ -925,16 +998,9 @@ }, "QueueAttributeMap":{ "type":"map", - "key":{ - "shape":"QueueAttributeName", - "locationName":"Name" - }, - "value":{ - "shape":"String", - "locationName":"Value" - }, - "flattened":true, - "locationName":"Attribute" + "key":{"shape":"QueueAttributeName"}, + "value":{"shape":"String"}, + "flattened":true }, "QueueAttributeName":{ "type":"string", @@ -966,47 +1032,33 @@ "QueueDeletedRecently":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.QueueDeletedRecently", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, "QueueDoesNotExist":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.NonExistentQueue", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, "QueueNameExists":{ "type":"structure", "members":{ - }, - "error":{ - "code":"QueueAlreadyExists", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, "QueueUrlList":{ "type":"list", - "member":{ - "shape":"String", - "locationName":"QueueUrl" - }, + "member":{"shape":"String"}, "flattened":true }, "ReceiptHandleIsInvalid":{ "type":"structure", "members":{ + "message":{"shape":"ExceptionMessage"} }, "exception":true }, @@ -1017,9 +1069,9 @@ "QueueUrl":{"shape":"String"}, "AttributeNames":{"shape":"AttributeNameList"}, "MessageAttributeNames":{"shape":"MessageAttributeNameList"}, - "MaxNumberOfMessages":{"shape":"Integer"}, - "VisibilityTimeout":{"shape":"Integer"}, - "WaitTimeSeconds":{"shape":"Integer"}, + "MaxNumberOfMessages":{"shape":"NullableInteger"}, + "VisibilityTimeout":{"shape":"NullableInteger"}, + "WaitTimeSeconds":{"shape":"NullableInteger"}, "ReceiveRequestAttemptId":{"shape":"String"} } }, @@ -1040,14 +1092,17 @@ "Label":{"shape":"String"} } }, - "ResourceNotFoundException":{ + "RequestThrottled":{ "type":"structure", "members":{ + "message":{"shape":"ExceptionMessage"} }, - "error":{ - "code":"ResourceNotFoundException", - "httpStatusCode":404, - "senderFault":true + "exception":true + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} }, "exception":true }, @@ -1071,25 +1126,16 @@ "members":{ "Id":{"shape":"String"}, "MessageBody":{"shape":"String"}, - "DelaySeconds":{"shape":"Integer"}, - "MessageAttributes":{ - "shape":"MessageBodyAttributeMap", - "locationName":"MessageAttribute" - }, - "MessageSystemAttributes":{ - "shape":"MessageBodySystemAttributeMap", - "locationName":"MessageSystemAttribute" - }, + "DelaySeconds":{"shape":"NullableInteger"}, + "MessageAttributes":{"shape":"MessageBodyAttributeMap"}, + "MessageSystemAttributes":{"shape":"MessageBodySystemAttributeMap"}, "MessageDeduplicationId":{"shape":"String"}, "MessageGroupId":{"shape":"String"} } }, "SendMessageBatchRequestEntryList":{ "type":"list", - "member":{ - "shape":"SendMessageBatchRequestEntry", - "locationName":"SendMessageBatchRequestEntry" - }, + "member":{"shape":"SendMessageBatchRequestEntry"}, "flattened":true }, "SendMessageBatchResult":{ @@ -1121,10 +1167,7 @@ }, "SendMessageBatchResultEntryList":{ "type":"list", - "member":{ - "shape":"SendMessageBatchResultEntry", - "locationName":"SendMessageBatchResultEntry" - }, + "member":{"shape":"SendMessageBatchResultEntry"}, "flattened":true }, "SendMessageRequest":{ @@ -1136,15 +1179,9 @@ "members":{ "QueueUrl":{"shape":"String"}, "MessageBody":{"shape":"String"}, - "DelaySeconds":{"shape":"Integer"}, - "MessageAttributes":{ - "shape":"MessageBodyAttributeMap", - "locationName":"MessageAttribute" - }, - "MessageSystemAttributes":{ - "shape":"MessageBodySystemAttributeMap", - "locationName":"MessageSystemAttribute" - }, + "DelaySeconds":{"shape":"NullableInteger"}, + "MessageAttributes":{"shape":"MessageBodyAttributeMap"}, + "MessageSystemAttributes":{"shape":"MessageBodySystemAttributeMap"}, "MessageDeduplicationId":{"shape":"String"}, "MessageGroupId":{"shape":"String"} } @@ -1167,10 +1204,7 @@ ], "members":{ "QueueUrl":{"shape":"String"}, - "Attributes":{ - "shape":"QueueAttributeMap", - "locationName":"Attribute" - } + "Attributes":{"shape":"QueueAttributeMap"} } }, "StartMessageMoveTaskRequest":{ @@ -1179,7 +1213,7 @@ "members":{ "SourceArn":{"shape":"String"}, "DestinationArn":{"shape":"String"}, - "MaxNumberOfMessagesPerSecond":{"shape":"Integer"} + "MaxNumberOfMessagesPerSecond":{"shape":"NullableInteger"} } }, "StartMessageMoveTaskResult":{ @@ -1191,32 +1225,19 @@ "String":{"type":"string"}, "StringList":{ "type":"list", - "member":{ - "shape":"String", - "locationName":"StringListValue" - } + "member":{"shape":"String"} }, "TagKey":{"type":"string"}, "TagKeyList":{ "type":"list", - "member":{ - "shape":"TagKey", - "locationName":"TagKey" - }, + "member":{"shape":"TagKey"}, "flattened":true }, "TagMap":{ "type":"map", - "key":{ - "shape":"TagKey", - "locationName":"Key" - }, - "value":{ - "shape":"TagValue", - "locationName":"Value" - }, - "flattened":true, - "locationName":"Tag" + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "flattened":true }, "TagQueueRequest":{ "type":"structure", @@ -1234,22 +1255,14 @@ "TooManyEntriesInBatchRequest":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.TooManyEntriesInBatchRequest", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, "UnsupportedOperation":{ "type":"structure", "members":{ - }, - "error":{ - "code":"AWS.SimpleQueueService.UnsupportedOperation", - "httpStatusCode":400, - "senderFault":true + "message":{"shape":"ExceptionMessage"} }, "exception":true }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -211,6 +211,37 @@ "refs": { } }, + "ExceptionMessage": { + "base": null, + "refs": { + "BatchEntryIdsNotDistinct$message": null, + "BatchRequestTooLong$message": null, + "EmptyBatchRequest$message": null, + "InvalidAddress$message": null, + "InvalidAttributeName$message": null, + "InvalidAttributeValue$message": null, + "InvalidBatchEntryId$message": null, + "InvalidMessageContents$message": null, + "InvalidSecurity$message": null, + "KmsAccessDenied$message": null, + "KmsDisabled$message": null, + "KmsInvalidKeyUsage$message": null, + "KmsInvalidState$message": null, + "KmsNotFound$message": null, + "KmsOptInRequired$message": null, + "KmsThrottled$message": null, + "OverLimit$message": null, + "PurgeQueueInProgress$message": null, + "QueueDeletedRecently$message": null, + "QueueDoesNotExist$message": null, + "QueueNameExists$message": null, + "ReceiptHandleIsInvalid$message": null, + "RequestThrottled$message": null, + "ResourceNotFoundException$message": null, + "TooManyEntriesInBatchRequest$message": null, + "UnsupportedOperation$message": null + } + }, "GetQueueAttributesRequest": { "base": "

", "refs": { @@ -231,19 +262,9 @@ "refs": { } }, - "Integer": { - "base": null, + "InvalidAddress": { + "base": "

The accountId is invalid.

", "refs": { - "ChangeMessageVisibilityBatchRequestEntry$VisibilityTimeout": "

The new value (in seconds) for the message's visibility timeout.

", - "ChangeMessageVisibilityRequest$VisibilityTimeout": "

The new value for the message's visibility timeout (in seconds). Values range: 0 to 43200. Maximum: 12 hours.

", - "ListMessageMoveTasksRequest$MaxResults": "

The maximum number of results to include in the response. The default is 1, which provides the most recent message movement task. The upper limit is 10.

", - "ListMessageMoveTasksResultEntry$MaxNumberOfMessagesPerSecond": "

The number of messages to be moved per second (the message movement rate), if it has been specified in the StartMessageMoveTask request. If a MaxNumberOfMessagesPerSecond has not been specified in the StartMessageMoveTask request, this field value will be NULL.

", - "ReceiveMessageRequest$MaxNumberOfMessages": "

The maximum number of messages to return. Amazon SQS never returns more messages than this value (however, fewer messages might be returned). Valid values: 1 to 10. Default: 1.

", - "ReceiveMessageRequest$VisibilityTimeout": "

The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request.

", - "ReceiveMessageRequest$WaitTimeSeconds": "

The duration (in seconds) for which the call waits for a message to arrive in the queue before returning. If a message is available, the call returns sooner than WaitTimeSeconds. If no messages are available and the wait time expires, the call returns successfully with an empty list of messages.

To avoid HTTP errors, ensure that the HTTP response timeout for ReceiveMessage requests is longer than the WaitTimeSeconds parameter. For example, with the Java SDK, you can set HTTP transport settings using the NettyNioAsyncHttpClient for asynchronous clients, or the ApacheHttpClient for synchronous clients.

", - "SendMessageBatchRequestEntry$DelaySeconds": "

The length of time, in seconds, for which a specific message is delayed. Valid values: 0 to 900. Maximum: 15 minutes. Messages with a positive DelaySeconds value become available for processing after the delay period is finished. If you don't specify a value, the default value for the queue is applied.

When you set FifoQueue, you can't set DelaySeconds per message. You can set this parameter only on a queue level.

", - "SendMessageRequest$DelaySeconds": "

The length of time, in seconds, for which to delay a specific message. Valid values: 0 to 900. Maximum: 15 minutes. Messages with a positive DelaySeconds value become available for processing after the delay period is finished. If you don't specify a value, the default value for the queue applies.

When you set FifoQueue, you can't set DelaySeconds per message. You can set this parameter only on a queue level.

", - "StartMessageMoveTaskRequest$MaxNumberOfMessagesPerSecond": "

The number of messages to be moved per second (the message movement rate). You can use this field to define a fixed message movement rate. The maximum value for messages per second is 500. If this field is left blank, the system will optimize the rate based on the queue message backlog size, which may vary throughout the duration of the message movement task.

" } }, "InvalidAttributeName": { @@ -251,6 +272,11 @@ "refs": { } }, + "InvalidAttributeValue": { + "base": "

A queue attribute value is invalid.

", + "refs": { + } + }, "InvalidBatchEntryId": { "base": "

The Id of a batch entry in a batch request doesn't abide by the specification.

", "refs": { @@ -266,6 +292,46 @@ "refs": { } }, + "InvalidSecurity": { + "base": "

When the request to a queue is not HTTPS and SigV4.

", + "refs": { + } + }, + "KmsAccessDenied": { + "base": "

The caller doesn't have the required KMS access.

", + "refs": { + } + }, + "KmsDisabled": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "KmsInvalidKeyUsage": { + "base": "

The request was rejected for one of the following reasons:

  • The KeyUsage value of the KMS key is incompatible with the API operation.

  • The encryption algorithm or signing algorithm specified for the operation is incompatible with the type of key material in the KMS key (KeySpec).

", + "refs": { + } + }, + "KmsInvalidState": { + "base": "

The request was rejected because the state of the specified resource is not valid for this request.

", + "refs": { + } + }, + "KmsNotFound": { + "base": "

The request was rejected because the specified entity or resource could not be found.

", + "refs": { + } + }, + "KmsOptInRequired": { + "base": "

The request was rejected because the specified key policy isn't syntactically or semantically correct.

", + "refs": { + } + }, + "KmsThrottled": { + "base": "

Amazon Web Services KMS throttles requests for the following conditions.

", + "refs": { + } + }, "ListDeadLetterSourceQueuesRequest": { "base": "

", "refs": { @@ -323,7 +389,6 @@ "refs": { "CancelMessageMoveTaskResult$ApproximateNumberOfMessagesMoved": "

The approximate number of messages already moved to the destination queue.

", "ListMessageMoveTasksResultEntry$ApproximateNumberOfMessagesMoved": "

The approximate number of messages already moved to the destination queue.

", - "ListMessageMoveTasksResultEntry$ApproximateNumberOfMessagesToMove": "

The number of messages to be moved from the source queue. This number is obtained at the time of starting the message movement task.

", "ListMessageMoveTasksResultEntry$StartedTimestamp": "

The timestamp of starting the message movement task.

" } }, @@ -401,6 +466,27 @@ "MessageBodySystemAttributeMap$value": null } }, + "NullableInteger": { + "base": null, + "refs": { + "ChangeMessageVisibilityBatchRequestEntry$VisibilityTimeout": "

The new value (in seconds) for the message's visibility timeout.

", + "ChangeMessageVisibilityRequest$VisibilityTimeout": "

The new value for the message's visibility timeout (in seconds). Values range: 0 to 43200. Maximum: 12 hours.

", + "ListMessageMoveTasksRequest$MaxResults": "

The maximum number of results to include in the response. The default is 1, which provides the most recent message movement task. The upper limit is 10.

", + "ListMessageMoveTasksResultEntry$MaxNumberOfMessagesPerSecond": "

The number of messages to be moved per second (the message movement rate), if it has been specified in the StartMessageMoveTask request. If a MaxNumberOfMessagesPerSecond has not been specified in the StartMessageMoveTask request, this field value will be NULL.

", + "ReceiveMessageRequest$MaxNumberOfMessages": "

The maximum number of messages to return. Amazon SQS never returns more messages than this value (however, fewer messages might be returned). Valid values: 1 to 10. Default: 1.

", + "ReceiveMessageRequest$VisibilityTimeout": "

The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request.

", + "ReceiveMessageRequest$WaitTimeSeconds": "

The duration (in seconds) for which the call waits for a message to arrive in the queue before returning. If a message is available, the call returns sooner than WaitTimeSeconds. If no messages are available and the wait time expires, the call returns successfully with an empty list of messages.

To avoid HTTP errors, ensure that the HTTP response timeout for ReceiveMessage requests is longer than the WaitTimeSeconds parameter. For example, with the Java SDK, you can set HTTP transport settings using the NettyNioAsyncHttpClient for asynchronous clients, or the ApacheHttpClient for synchronous clients.

", + "SendMessageBatchRequestEntry$DelaySeconds": "

The length of time, in seconds, for which a specific message is delayed. Valid values: 0 to 900. Maximum: 15 minutes. Messages with a positive DelaySeconds value become available for processing after the delay period is finished. If you don't specify a value, the default value for the queue is applied.

When you set FifoQueue, you can't set DelaySeconds per message. You can set this parameter only on a queue level.

", + "SendMessageRequest$DelaySeconds": "

The length of time, in seconds, for which to delay a specific message. Valid values: 0 to 900. Maximum: 15 minutes. Messages with a positive DelaySeconds value become available for processing after the delay period is finished. If you don't specify a value, the default value for the queue applies.

When you set FifoQueue, you can't set DelaySeconds per message. You can set this parameter only on a queue level.

", + "StartMessageMoveTaskRequest$MaxNumberOfMessagesPerSecond": "

The number of messages to be moved per second (the message movement rate). You can use this field to define a fixed message movement rate. The maximum value for messages per second is 500. If this field is left blank, the system will optimize the rate based on the queue message backlog size, which may vary throughout the duration of the message movement task.

" + } + }, + "NullableLong": { + "base": null, + "refs": { + "ListMessageMoveTasksResultEntry$ApproximateNumberOfMessagesToMove": "

The number of messages to be moved from the source queue. This number is obtained at the time of starting the message movement task.

" + } + }, "OverLimit": { "base": "

The specified action violates a limit. For example, ReceiveMessage returns this error if the maximum number of in flight messages is reached and AddPermission returns this error if the maximum number of permissions for the queue is reached.

", "refs": { @@ -473,6 +559,11 @@ "refs": { } }, + "RequestThrottled": { + "base": "

The request was denied due to request throttling.

  • The rate of requests per second exceeds the Amazon Web Services KMS request quota for an account and Region.

  • A burst or sustained high rate of requests to change the state of the same KMS key. This condition is often known as a \"hot key.\"

  • Requests for operations on KMS keys in a Amazon Web Services CloudHSM key store might be throttled at a lower-than-expected rate when the Amazon Web Services CloudHSM cluster associated with the Amazon Web Services CloudHSM key store is processing numerous commands, including those unrelated to the Amazon Web Services CloudHSM key store.

", + "refs": { + } + }, "ResourceNotFoundException": { "base": "

One or more specified resources don't exist.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://sqs-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://sqs-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://sqs.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://sqs-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://sqs.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://sqs-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://sqs.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://sqs.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://sqs.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://sqs.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sqs/2012-11-05/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sqs/2012-11-05/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,15 +2,15 @@ "pagination": { "ListDeadLetterSourceQueues": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "queueUrls" }, "ListQueues": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "QueueUrls" } } -} \ No newline at end of file +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm/2014-11-06/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm/2014-11-06/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm/2014-11-06/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm/2014-11-06/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -42,7 +42,8 @@ {"shape":"OpsItemNotFoundException"}, {"shape":"OpsItemLimitExceededException"}, {"shape":"OpsItemInvalidParameterException"}, - {"shape":"OpsItemRelatedItemAlreadyExistsException"} + {"shape":"OpsItemRelatedItemAlreadyExistsException"}, + {"shape":"OpsItemConflictException"} ] }, "CancelCommand":{ @@ -299,6 +300,19 @@ {"shape":"InternalServerError"} ] }, + "DeleteOpsItem":{ + "name":"DeleteOpsItem", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteOpsItemRequest"}, + "output":{"shape":"DeleteOpsItemResponse"}, + "errors":[ + {"shape":"InternalServerError"}, + {"shape":"OpsItemInvalidParameterException"} + ] + }, "DeleteOpsMetadata":{ "name":"DeleteOpsMetadata", "http":{ @@ -883,7 +897,8 @@ {"shape":"InternalServerError"}, {"shape":"OpsItemRelatedItemAssociationNotFoundException"}, {"shape":"OpsItemNotFoundException"}, - {"shape":"OpsItemInvalidParameterException"} + {"shape":"OpsItemInvalidParameterException"}, + {"shape":"OpsItemConflictException"} ] }, "GetAutomationExecution":{ @@ -1983,7 +1998,8 @@ {"shape":"OpsItemAlreadyExistsException"}, {"shape":"OpsItemLimitExceededException"}, {"shape":"OpsItemInvalidParameterException"}, - {"shape":"OpsItemAccessDeniedException"} + {"shape":"OpsItemAccessDeniedException"}, + {"shape":"OpsItemConflictException"} ] }, "UpdateOpsMetadata":{ @@ -2723,7 +2739,8 @@ "Runbooks":{"shape":"Runbooks"}, "OpsItemId":{"shape":"String"}, "AssociationId":{"shape":"String"}, - "ChangeRequestName":{"shape":"ChangeRequestName"} + "ChangeRequestName":{"shape":"ChangeRequestName"}, + "Variables":{"shape":"AutomationParameterMap"} } }, "AutomationExecutionFilter":{ @@ -2849,7 +2866,8 @@ "ChangeCalendarOverrideApproved", "ChangeCalendarOverrideRejected", "CompletedWithSuccess", - "CompletedWithFailure" + "CompletedWithFailure", + "Exited" ] }, "AutomationParameterKey":{ @@ -3374,8 +3392,8 @@ "ConnectionStatus":{ "type":"string", "enum":[ - "Connected", - "NotConnected" + "connected", + "notconnected" ] }, "ContentLength":{"type":"long"}, @@ -3738,6 +3756,18 @@ "WindowId":{"shape":"MaintenanceWindowId"} } }, + "DeleteOpsItemRequest":{ + "type":"structure", + "required":["OpsItemId"], + "members":{ + "OpsItemId":{"shape":"OpsItemId"} + } + }, + "DeleteOpsItemResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteOpsMetadataRequest":{ "type":"structure", "required":["OpsMetadataArn"], @@ -7724,6 +7754,13 @@ "min":1, "pattern":"^(?!\\s*$).+" }, + "OpsItemConflictException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "exception":true + }, "OpsItemDataKey":{ "type":"string", "max":128, @@ -8494,6 +8531,19 @@ "max":50, "min":1 }, + "ParentStepDetails":{ + "type":"structure", + "members":{ + "StepExecutionId":{"shape":"String"}, + "StepName":{"shape":"String"}, + "Action":{"shape":"AutomationActionName"}, + "Iteration":{ + "shape":"Integer", + "box":true + }, + "IteratorValue":{"shape":"String"} + } + }, "Patch":{ "type":"structure", "members":{ @@ -9521,7 +9571,6 @@ "type":"string", "enum":[ "ManagedInstance", - "Document", "EC2Instance" ] }, @@ -10101,7 +10150,8 @@ "shape":"TargetLocation", "box":true }, - "TriggeredAlarms":{"shape":"AlarmStateInformationList"} + "TriggeredAlarms":{"shape":"AlarmStateInformationList"}, + "ParentStepDetails":{"shape":"ParentStepDetails"} } }, "StepExecutionFilter":{ @@ -10123,7 +10173,10 @@ "StepExecutionStatus", "StepExecutionId", "StepName", - "Action" + "Action", + "ParentStepExecutionId", + "ParentStepIteration", + "ParentStepIteratorValue" ] }, "StepExecutionFilterList":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm/2014-11-06/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm/2014-11-06/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm/2014-11-06/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm/2014-11-06/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Web Services Systems Manager is the operations hub for your Amazon Web Services applications and resources and a secure end-to-end management solution for hybrid cloud environments that enables safe and secure operations at scale.

This reference is intended to be used with the Amazon Web Services Systems Manager User Guide. To get started, see Setting up Amazon Web Services Systems Manager.

Related resources

", + "service": "

Amazon Web Services Systems Manager is the operations hub for your Amazon Web Services applications and resources and a secure end-to-end management solution for hybrid cloud environments that enables safe and secure operations at scale.

This reference is intended to be used with the Amazon Web Services Systems Manager User Guide. To get started, see Setting up Amazon Web Services Systems Manager.

Related resources

", "operations": { "AddTagsToResource": "

Adds or overwrites one or more tags for the specified resource. Tags are metadata that you can assign to your automations, documents, managed nodes, maintenance windows, Parameter Store parameters, and patch baselines. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define. For example, you could define a set of tags for your account's managed nodes that helps you track each node's owner and stack level. For example:

  • Key=Owner,Value=DbAdmin

  • Key=Owner,Value=SysAdmin

  • Key=Owner,Value=Dev

  • Key=Stack,Value=Production

  • Key=Stack,Value=Pre-Production

  • Key=Stack,Value=Test

Most resources can have a maximum of 50 tags. Automations can have a maximum of 5 tags.

We recommend that you devise a set of tag keys that meets your needs for each resource type. Using a consistent set of tag keys makes it easier for you to manage your resources. You can search and filter the resources based on the tags you add. Tags don't have any semantic meaning to and are interpreted strictly as a string of characters.

For more information about using tags with Amazon Elastic Compute Cloud (Amazon EC2) instances, see Tagging your Amazon EC2 resources in the Amazon EC2 User Guide.

", "AssociateOpsItemRelatedItem": "

Associates a related item to a Systems Manager OpsCenter OpsItem. For example, you can associate an Incident Manager incident or analysis with an OpsItem. Incident Manager and OpsCenter are capabilities of Amazon Web Services Systems Manager.

", @@ -20,6 +20,7 @@ "DeleteDocument": "

Deletes the Amazon Web Services Systems Manager document (SSM document) and all managed node associations to the document.

Before you delete the document, we recommend that you use DeleteAssociation to disassociate all managed nodes that are associated with the document.

", "DeleteInventory": "

Delete a custom inventory type or the data associated with a custom Inventory type. Deleting a custom inventory type is also referred to as deleting a custom inventory schema.

", "DeleteMaintenanceWindow": "

Deletes a maintenance window.

", + "DeleteOpsItem": "

Delete an OpsItem. You must have permission in Identity and Access Management (IAM) to delete an OpsItem.

Note the following important information about this operation.

  • Deleting an OpsItem is irreversible. You can't restore a deleted OpsItem.

  • This operation uses an eventual consistency model, which means the system can take a few minutes to complete this operation. If you delete an OpsItem and immediately call, for example, GetOpsItem, the deleted OpsItem might still appear in the response.

  • This operation is idempotent. The system doesn't throw an exception if you repeatedly call this operation for the same OpsItem. If the first call is successful, all additional calls return the same successful response as the first call.

  • This operation doesn't support cross-account calls. A delegated administrator or management account can't delete OpsItems in other accounts, even if OpsCenter has been set up for cross-account administration. For more information about cross-account administration, see Setting up OpsCenter to centrally manage OpsItems across accounts in the Systems Manager User Guide.

", "DeleteOpsMetadata": "

Delete OpsMetadata related to an application.

", "DeleteParameter": "

Delete a parameter from the system. After deleting a parameter, wait for at least 30 seconds to create a parameter with the same name.

", "DeleteParameters": "

Delete a list of parameters. After deleting a parameter, wait for at least 30 seconds to create a parameter with the same name.

", @@ -735,6 +736,7 @@ "AutomationActionName": { "base": null, "refs": { + "ParentStepDetails$Action": "

The name of the automation action.

", "StepExecution$Action": "

The action this step performs. The action determines the behavior of the step.

" } }, @@ -849,6 +851,7 @@ "refs": { "AutomationExecution$Parameters": "

The key-value map of execution parameters, which were supplied when calling StartAutomationExecution.

", "AutomationExecution$Outputs": "

The list of execution outputs as defined in the Automation runbook.

", + "AutomationExecution$Variables": "

Variables defined for the automation.

", "AutomationExecutionMetadata$Outputs": "

The list of execution outputs as defined in the Automation runbook.

", "FailureDetails$Details": "

Detailed information about the Automation step failure.

", "MaintenanceWindowAutomationParameters$Parameters": "

The parameters for the AUTOMATION task.

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure. For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.

TaskParameters has been deprecated. To specify parameters to pass to a task when it runs, instead use the Parameters option in the TaskInvocationParameters structure. For information about how Systems Manager handles these options for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.

For AUTOMATION task types, Amazon Web Services Systems Manager ignores any values specified for these parameters.

", @@ -1725,6 +1728,16 @@ "refs": { } }, + "DeleteOpsItemRequest": { + "base": null, + "refs": { + } + }, + "DeleteOpsItemResponse": { + "base": null, + "refs": { + } + }, "DeleteOpsMetadataRequest": { "base": null, "refs": { @@ -3323,6 +3336,7 @@ "DescribePatchGroupStateResult$InstancesWithNotApplicablePatches": "

The number of managed nodes with patches that aren't applicable.

", "DescribePatchGroupStateResult$InstancesWithUnreportedNotApplicablePatches": "

The number of managed nodes with NotApplicable patches beyond the supported limit, which aren't reported by name to Inventory. Inventory is a capability of Amazon Web Services Systems Manager.

", "OpsItemLimitExceededException$Limit": null, + "ParentStepDetails$Iteration": "

The current repetition of the loop represented by an integer.

", "ProgressCounters$TotalSteps": "

The total number of steps run in all specified Amazon Web Services Regions and Amazon Web Services accounts for the current Automation execution.

", "ProgressCounters$SuccessSteps": "

The total number of steps that successfully completed in all specified Amazon Web Services Regions and Amazon Web Services accounts for the current Automation execution.

", "ProgressCounters$FailedSteps": "

The total number of steps that failed to run in all specified Amazon Web Services Regions and Amazon Web Services accounts for the current Automation execution.

", @@ -5174,6 +5188,11 @@ "UpdateOpsItemRequest$Category": "

Specify a new category for an OpsItem.

" } }, + "OpsItemConflictException": { + "base": "

The specified OpsItem is in the process of being deleted.

", + "refs": { + } + }, "OpsItemDataKey": { "base": null, "refs": { @@ -5201,9 +5220,9 @@ "OpsItemDescription": { "base": null, "refs": { - "CreateOpsItemRequest$Description": "

Information about the OpsItem.

", + "CreateOpsItemRequest$Description": "

User-defined text that contains information about the OpsItem, in Markdown format.

Provide enough information so that users viewing this OpsItem for the first time understand the issue.

", "OpsItem$Description": "

The OpsItem description.

", - "UpdateOpsItemRequest$Description": "

Update the information about the OpsItem. Provide enough information so that users reading this OpsItem for the first time understand the issue.

" + "UpdateOpsItemRequest$Description": "

User-defined text that contains information about the OpsItem, in Markdown format.

" } }, "OpsItemEventFilter": { @@ -5300,6 +5319,7 @@ "base": null, "refs": { "AssociateOpsItemRelatedItemRequest$OpsItemId": "

The ID of the OpsItem to which you want to associate a resource as a related item.

", + "DeleteOpsItemRequest$OpsItemId": "

The ID of the OpsItem that you want to delete.

", "DisassociateOpsItemRelatedItemRequest$OpsItemId": "

The ID of the OpsItem for which you want to delete an association between the OpsItem and a related item.

", "GetOpsItemRequest$OpsItemId": "

The ID of the OpsItem that you want to get.

", "ListOpsItemRelatedItemsRequest$OpsItemId": "

The ID of the OpsItem for which you want to list all related-item resources.

", @@ -5527,9 +5547,9 @@ "OpsItemType": { "base": null, "refs": { - "CreateOpsItemRequest$OpsItemType": "

The type of OpsItem to create. Systems Manager supports the following types of OpsItems:

  • /aws/issue

    This type of OpsItem is used for default OpsItems created by OpsCenter.

  • /aws/changerequest

    This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.

  • /aws/insights

    This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.

", - "OpsItem$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

  • /aws/issue

    This type of OpsItem is used for default OpsItems created by OpsCenter.

  • /aws/changerequest

    This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.

  • /aws/insights

    This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.

", - "OpsItemSummary$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

  • /aws/issue

    This type of OpsItem is used for default OpsItems created by OpsCenter.

  • /aws/changerequest

    This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.

  • /aws/insights

    This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.

" + "CreateOpsItemRequest$OpsItemType": "

The type of OpsItem to create. Systems Manager supports the following types of OpsItems:

  • /aws/issue

    This type of OpsItem is used for default OpsItems created by OpsCenter.

  • /aws/changerequest

    This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.

  • /aws/insight

    This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.

", + "OpsItem$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

  • /aws/issue

    This type of OpsItem is used for default OpsItems created by OpsCenter.

  • /aws/changerequest

    This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.

  • /aws/insight

    This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.

", + "OpsItemSummary$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

  • /aws/issue

    This type of OpsItem is used for default OpsItems created by OpsCenter.

  • /aws/changerequest

    This type of OpsItem is used by Change Manager for reviewing and approving or rejecting change requests.

  • /aws/insight

    This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate OpsItems.

" } }, "OpsMetadata": { @@ -5968,6 +5988,12 @@ "ParametersFilter$Values": "

The filter values.

" } }, + "ParentStepDetails": { + "base": "

A detailed status of the parent step.

", + "refs": { + "StepExecution$ParentStepDetails": "

Information about the parent step.

" + } + }, "Patch": { "base": "

Represents metadata about a patch.

", "refs": { @@ -6328,7 +6354,7 @@ "base": null, "refs": { "DescribeAvailablePatchesRequest$Filters": "

Each element in the array is a structure containing a key-value pair.

Windows Server

Supported keys for Windows Server managed node patches include the following:

  • PATCH_SET

    Sample values: OS | APPLICATION

  • PRODUCT

    Sample values: WindowsServer2012 | Office 2010 | MicrosoftDefenderAntivirus

  • PRODUCT_FAMILY

    Sample values: Windows | Office

  • MSRC_SEVERITY

    Sample values: ServicePacks | Important | Moderate

  • CLASSIFICATION

    Sample values: ServicePacks | SecurityUpdates | DefinitionUpdates

  • PATCH_ID

    Sample values: KB123456 | KB4516046

Linux

When specifying filters for Linux patches, you must specify a key-pair for PRODUCT. For example, using the Command Line Interface (CLI), the following command fails:

aws ssm describe-available-patches --filters Key=CVE_ID,Values=CVE-2018-3615

However, the following command succeeds:

aws ssm describe-available-patches --filters Key=PRODUCT,Values=AmazonLinux2018.03 Key=CVE_ID,Values=CVE-2018-3615

Supported keys for Linux managed node patches include the following:

  • PRODUCT

    Sample values: AmazonLinux2018.03 | AmazonLinux2.0

  • NAME

    Sample values: kernel-headers | samba-python | php

  • SEVERITY

    Sample values: Critical | Important | Medium | Low

  • EPOCH

    Sample values: 0 | 1

  • VERSION

    Sample values: 78.6.1 | 4.10.16

  • RELEASE

    Sample values: 9.56.amzn1 | 1.amzn2

  • ARCH

    Sample values: i686 | x86_64

  • REPOSITORY

    Sample values: Core | Updates

  • ADVISORY_ID

    Sample values: ALAS-2018-1058 | ALAS2-2021-1594

  • CVE_ID

    Sample values: CVE-2018-3615 | CVE-2020-1472

  • BUGZILLA_ID

    Sample values: 1463241

", - "DescribeInstancePatchesRequest$Filters": "

Each element in the array is a structure containing a key-value pair.

Supported keys for DescribeInstancePatchesinclude the following:

  • Classification

    Sample values: Security | SecurityUpdates

  • KBId

    Sample values: KB4480056 | java-1.7.0-openjdk.x86_64

  • Severity

    Sample values: Important | Medium | Low

  • State

    Sample values: Installed | InstalledOther | InstalledPendingReboot

", + "DescribeInstancePatchesRequest$Filters": "

Each element in the array is a structure containing a key-value pair.

Supported keys for DescribeInstancePatchesinclude the following:

  • Classification

    Sample values: Security | SecurityUpdates

  • KBId

    Sample values: KB4480056 | java-1.7.0-openjdk.x86_64

  • Severity

    Sample values: Important | Medium | Low

  • State

    Sample values: Installed | InstalledOther | InstalledPendingReboot

    For lists of all State values, see Understanding patch compliance state values in the Amazon Web Services Systems Manager User Guide.

", "DescribeMaintenanceWindowScheduleRequest$Filters": "

Filters used to limit the range of results. For example, you can limit maintenance window executions to only those scheduled before or after a certain date and time.

", "DescribePatchBaselinesRequest$Filters": "

Each element in the array is a structure containing a key-value pair.

Supported keys for DescribePatchBaselines include the following:

  • NAME_PREFIX

    Sample values: AWS- | My-

  • OWNER

    Sample values: AWS | Self

  • OPERATING_SYSTEM

    Sample values: AMAZON_LINUX | SUSE | WINDOWS

", "DescribePatchGroupsRequest$Filters": "

Each element in the array is a structure containing a key-value pair.

Supported keys for DescribePatchGroups include the following:

  • NAME_PREFIX

    Sample values: AWS- | My-.

  • OPERATING_SYSTEM

    Sample values: AMAZON_LINUX | SUSE | WINDOWS

" @@ -7276,7 +7302,7 @@ "base": null, "refs": { "ServiceSetting$SettingValue": "

The value of the service setting.

", - "UpdateServiceSettingRequest$SettingValue": "

The new value to specify for the service setting. The following list specifies the available values for each setting.

  • /ssm/managed-instance/default-ec2-instance-management-role: The name of an IAM role

  • /ssm/automation/customer-script-log-destination: CloudWatch

  • /ssm/automation/customer-script-log-group-name: The name of an Amazon CloudWatch Logs log group

  • /ssm/documents/console/public-sharing-permission: Enable or Disable

  • /ssm/managed-instance/activation-tier: standard or advanced

  • /ssm/opsinsights/opscenter: Enabled or Disabled

  • /ssm/parameter-store/default-parameter-tier: Standard, Advanced, Intelligent-Tiering

  • /ssm/parameter-store/high-throughput-enabled: true or false

" + "UpdateServiceSettingRequest$SettingValue": "

The new value to specify for the service setting. The following list specifies the available values for each setting.

  • For /ssm/managed-instance/default-ec2-instance-management-role, enter the name of an IAM role.

  • For /ssm/automation/customer-script-log-destination, enter CloudWatch.

  • For /ssm/automation/customer-script-log-group-name, enter the name of an Amazon CloudWatch Logs log group.

  • For /ssm/documents/console/public-sharing-permission, enter Enable or Disable.

  • For /ssm/managed-instance/activation-tier, enter standard or advanced.

  • For /ssm/opsinsights/opscenter, enter Enabled or Disabled.

  • For /ssm/parameter-store/default-parameter-tier, enter Standard, Advanced, or Intelligent-Tiering

  • For /ssm/parameter-store/high-throughput-enabled, enter true or false.

" } }, "Session": { @@ -7570,7 +7596,7 @@ "StepExecutionFilterKey": { "base": null, "refs": { - "StepExecutionFilter$Key": "

One or more keys to limit the results. Valid filter keys include the following: StepName, Action, StepExecutionId, StepExecutionStatus, StartTimeBefore, StartTimeAfter.

" + "StepExecutionFilter$Key": "

One or more keys to limit the results.

" } }, "StepExecutionFilterList": { @@ -7731,6 +7757,7 @@ "OpsItemAccessDeniedException$Message": null, "OpsItemAlreadyExistsException$Message": null, "OpsItemAlreadyExistsException$OpsItemId": null, + "OpsItemConflictException$Message": null, "OpsItemEventSummary$OpsItemId": "

The ID of the OpsItem.

", "OpsItemEventSummary$EventId": "

The ID of the OpsItem event.

", "OpsItemEventSummary$Source": "

The source of the OpsItem event.

", @@ -7769,6 +7796,9 @@ "ParameterPatternMismatchException$message": "

The parameter name isn't valid.

", "ParameterVersionLabelLimitExceeded$message": null, "ParameterVersionNotFound$message": null, + "ParentStepDetails$StepExecutionId": "

The unique ID of a step execution.

", + "ParentStepDetails$StepName": "

The name of the step.

", + "ParentStepDetails$IteratorValue": "

The current value of the specified iterator in the loop.

", "PoliciesLimitExceededException$message": null, "RelatedOpsItem$OpsItemId": "

The ID of an OpsItem related to the current OpsItem.

", "ResourceDataSyncConflictException$Message": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,318 +57,283 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://ssm-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://ssm-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://ssm.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://ssm-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws-us-gov" ] } - ] + ], + "endpoint": { + "url": "https://ssm.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://ssm-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://ssm.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://ssm.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://ssm.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://ssm.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,23 @@ "uid":"ssm-incidents-2018-05-10" }, "operations":{ + "BatchGetIncidentFindings":{ + "name":"BatchGetIncidentFindings", + "http":{ + "method":"POST", + "requestUri":"/batchGetIncidentFindings", + "responseCode":200 + }, + "input":{"shape":"BatchGetIncidentFindingsInput"}, + "output":{"shape":"BatchGetIncidentFindingsOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "CreateReplicationSet":{ "name":"CreateReplicationSet", "http":{ @@ -239,6 +256,23 @@ {"shape":"InternalServerException"} ] }, + "ListIncidentFindings":{ + "name":"ListIncidentFindings", + "http":{ + "method":"POST", + "requestUri":"/listIncidentFindings", + "responseCode":200 + }, + "input":{"shape":"ListIncidentFindingsInput"}, + "output":{"shape":"ListIncidentFindingsOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "ListIncidentRecords":{ "name":"ListIncidentRecords", "http":{ @@ -583,6 +617,45 @@ "max":100, "min":0 }, + "BatchGetIncidentFindingsError":{ + "type":"structure", + "required":[ + "code", + "findingId", + "message" + ], + "members":{ + "code":{"shape":"String"}, + "findingId":{"shape":"FindingId"}, + "message":{"shape":"String"} + } + }, + "BatchGetIncidentFindingsErrorList":{ + "type":"list", + "member":{"shape":"BatchGetIncidentFindingsError"} + }, + "BatchGetIncidentFindingsInput":{ + "type":"structure", + "required":[ + "findingIds", + "incidentRecordArn" + ], + "members":{ + "findingIds":{"shape":"FindingIdList"}, + "incidentRecordArn":{"shape":"Arn"} + } + }, + "BatchGetIncidentFindingsOutput":{ + "type":"structure", + "required":[ + "errors", + "findings" + ], + "members":{ + "errors":{"shape":"BatchGetIncidentFindingsErrorList"}, + "findings":{"shape":"FindingList"} + } + }, "Boolean":{ "type":"boolean", "box":true @@ -606,6 +679,37 @@ "max":128, "min":0 }, + "CloudFormationStackUpdate":{ + "type":"structure", + "required":[ + "stackArn", + "startTime" + ], + "members":{ + "endTime":{"shape":"Timestamp"}, + "stackArn":{"shape":"Arn"}, + "startTime":{"shape":"Timestamp"} + } + }, + "CodeDeployDeployment":{ + "type":"structure", + "required":[ + "deploymentGroupArn", + "deploymentId", + "startTime" + ], + "members":{ + "deploymentGroupArn":{"shape":"Arn"}, + "deploymentId":{"shape":"CodeDeployDeploymentDeploymentIdString"}, + "endTime":{"shape":"Timestamp"}, + "startTime":{"shape":"Timestamp"} + } + }, + "CodeDeployDeploymentDeploymentIdString":{ + "type":"string", + "max":128, + "min":0 + }, "Condition":{ "type":"structure", "members":{ @@ -888,6 +992,60 @@ "max":5, "min":0 }, + "Finding":{ + "type":"structure", + "required":[ + "creationTime", + "id", + "lastModifiedTime" + ], + "members":{ + "creationTime":{"shape":"Timestamp"}, + "details":{"shape":"FindingDetails"}, + "id":{"shape":"FindingId"}, + "lastModifiedTime":{"shape":"Timestamp"} + } + }, + "FindingDetails":{ + "type":"structure", + "members":{ + "cloudFormationStackUpdate":{"shape":"CloudFormationStackUpdate"}, + "codeDeployDeployment":{"shape":"CodeDeployDeployment"} + }, + "union":true + }, + "FindingId":{ + "type":"string", + "max":128, + "min":0 + }, + "FindingIdList":{ + "type":"list", + "member":{"shape":"FindingId"}, + "max":20, + "min":0 + }, + "FindingList":{ + "type":"list", + "member":{"shape":"Finding"} + }, + "FindingSummary":{ + "type":"structure", + "required":[ + "id", + "lastModifiedTime" + ], + "members":{ + "id":{"shape":"FindingId"}, + "lastModifiedTime":{"shape":"Timestamp"} + } + }, + "FindingSummaryList":{ + "type":"list", + "member":{"shape":"FindingSummary"}, + "max":100, + "min":0 + }, "GeneratedId":{ "type":"string", "max":200, @@ -1186,6 +1344,29 @@ }, "union":true }, + "ListIncidentFindingsInput":{ + "type":"structure", + "required":["incidentRecordArn"], + "members":{ + "incidentRecordArn":{"shape":"Arn"}, + "maxResults":{"shape":"ListIncidentFindingsInputMaxResultsInteger"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListIncidentFindingsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":20, + "min":1 + }, + "ListIncidentFindingsOutput":{ + "type":"structure", + "required":["findings"], + "members":{ + "findings":{"shape":"FindingSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListIncidentRecordsInput":{ "type":"structure", "members":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,6 +2,7 @@ "version": "2.0", "service": "

Systems Manager Incident Manager is an incident management console designed to help users mitigate and recover from incidents affecting their Amazon Web Services-hosted applications. An incident is any unplanned interruption or reduction in quality of services.

Incident Manager increases incident resolution by notifying responders of impact, highlighting relevant troubleshooting data, and providing collaboration tools to get services back up and running. To achieve the primary goal of reducing the time-to-resolution of critical incidents, Incident Manager automates response plans and enables responder team escalation.

", "operations": { + "BatchGetIncidentFindings": "

Retrieves details about all specified findings for an incident, including descriptive details about each finding. A finding represents a recent application environment change made by an CodeDeploy deployment or an CloudFormation stack creation or update that can be investigated as a potential cause of the incident.

", "CreateReplicationSet": "

A replication set replicates and encrypts your data to the provided Regions with the provided KMS key.

", "CreateResponsePlan": "

Creates a response plan that automates the initial response to incidents. A response plan engages contacts, starts chat channel collaboration, and initiates runbooks at the beginning of an incident.

", "CreateTimelineEvent": "

Creates a custom timeline event on the incident details page of an incident record. Incident Manager automatically creates timeline events that mark key moments during an incident. You can create custom timeline events to mark important events that Incident Manager can detect automatically.

", @@ -15,11 +16,12 @@ "GetResourcePolicies": "

Retrieves the resource policies attached to the specified response plan.

", "GetResponsePlan": "

Retrieves the details of the specified response plan.

", "GetTimelineEvent": "

Retrieves a timeline event based on its ID and incident record.

", + "ListIncidentFindings": "

Retrieves a list of the IDs of findings, plus their last modified times, that have been identified for a specified incident. A finding represents a recent application environment change made by an CloudFormation stack creation or update or an CodeDeploy deployment that can be investigated as a potential cause of the incident.

", "ListIncidentRecords": "

Lists all incident records in your account. Use this command to retrieve the Amazon Resource Name (ARN) of the incident record you want to update.

", "ListRelatedItems": "

List all related items for an incident record.

", "ListReplicationSets": "

Lists details about the replication set configured in your account.

", "ListResponsePlans": "

Lists all response plans in your account.

", - "ListTagsForResource": "

Lists the tags that are attached to the specified response plan.

", + "ListTagsForResource": "

Lists the tags that are attached to the specified response plan or incident.

", "ListTimelineEvents": "

Lists timeline events for the specified incident record.

", "PutResourcePolicy": "

Adds a resource policy to the specified response plan. The resource policy is used to share the response plan using Resource Access Manager (RAM). For more information about cross-account sharing, see Cross-Region and cross-account incident management.

", "StartIncident": "

Used to start an incident from CloudWatch alarms, EventBridge events, or manually.

", @@ -62,6 +64,9 @@ "base": null, "refs": { "AutomationExecution$ssmExecutionArn": "

The Amazon Resource Name (ARN) of the automation process.

", + "BatchGetIncidentFindingsInput$incidentRecordArn": "

The Amazon Resource Name (ARN) of the incident for which you want to view finding details.

", + "CloudFormationStackUpdate$stackArn": "

The Amazon Resource Name (ARN) of the CloudFormation stack involved in the update.

", + "CodeDeployDeployment$deploymentGroupArn": "

The Amazon Resource Name (ARN) of the CodeDeploy deployment group associated with the deployment.

", "CreateReplicationSetOutput$arn": "

The Amazon Resource Name (ARN) of the replication set.

", "CreateResponsePlanOutput$arn": "

The Amazon Resource Name (ARN) of the response plan.

", "CreateTimelineEventInput$incidentRecordArn": "

The Amazon Resource Name (ARN) of the incident record that the action adds the incident to.

", @@ -85,6 +90,7 @@ "IncidentRecordSource$resourceArn": "

The resource that caused the incident to be created.

", "IncidentRecordSummary$arn": "

The Amazon Resource Name (ARN) of the incident.

", "ItemValue$arn": "

The Amazon Resource Name (ARN) of the related item, if the related item is an Amazon resource.

", + "ListIncidentFindingsInput$incidentRecordArn": "

The Amazon Resource Name (ARN) of the incident for which you want to view associated findings.

", "ListRelatedItemsInput$incidentRecordArn": "

The Amazon Resource Name (ARN) of the incident record containing the listed related items.

", "ListTimelineEventsInput$incidentRecordArn": "

The Amazon Resource Name (ARN) of the incident that includes the timeline event.

", "NotificationTargetItem$snsTopicArn": "

The Amazon Resource Name (ARN) of the SNS topic.

", @@ -124,6 +130,28 @@ "IncidentRecord$automationExecutions": "

The runbook, or automation document, that's run at the beginning of the incident.

" } }, + "BatchGetIncidentFindingsError": { + "base": "

Details about an error returned for a BatchGetIncidentFindings operation.

", + "refs": { + "BatchGetIncidentFindingsErrorList$member": null + } + }, + "BatchGetIncidentFindingsErrorList": { + "base": null, + "refs": { + "BatchGetIncidentFindingsOutput$errors": "

A list of errors encountered during the operation.

" + } + }, + "BatchGetIncidentFindingsInput": { + "base": null, + "refs": { + } + }, + "BatchGetIncidentFindingsOutput": { + "base": null, + "refs": { + } + }, "Boolean": { "base": null, "refs": { @@ -163,6 +191,24 @@ "UpdateTimelineEventInput$clientToken": "

A token that ensures that a client calls the operation only once with the specified details.

" } }, + "CloudFormationStackUpdate": { + "base": "

Information about an CloudFormation stack creation or update that occurred around the time of an incident and could be a potential cause of the incident.

", + "refs": { + "FindingDetails$cloudFormationStackUpdate": "

Information about the CloudFormation stack creation or update associated with the finding.

" + } + }, + "CodeDeployDeployment": { + "base": "

Information about a CodeDeploy deployment that occurred around the time of an incident and could be a possible cause of the incident.

", + "refs": { + "FindingDetails$codeDeployDeployment": "

Information about the CodeDeploy deployment associated with the finding.

" + } + }, + "CodeDeployDeploymentDeploymentIdString": { + "base": null, + "refs": { + "CodeDeployDeployment$deploymentId": "

The ID of the CodeDeploy deployment.

" + } + }, "Condition": { "base": "

A conditional statement with which to compare a value, after a timestamp, before a timestamp, or equal to a string or integer. If multiple conditions are specified, the conditionals become an ANDed statement. If multiple values are specified for a conditional, the values are ORd.

", "refs": { @@ -208,7 +254,7 @@ "base": null, "refs": { "IncidentRecord$dedupeString": "

The string Incident Manager uses to prevent duplicate incidents from being created by the same incident in the same account.

", - "IncidentTemplate$dedupeString": "

Used to stop Incident Manager from creating multiple incident records for the same incident.

", + "IncidentTemplate$dedupeString": "

The string Incident Manager uses to prevent the same root cause from creating multiple incidents in the same account.

A deduplication string is a term or phrase the system uses to check for duplicate incidents. If you specify a deduplication string, Incident Manager searches for open incidents that contain the same string in the dedupeString field when it creates the incident. If a duplicate is detected, Incident Manager deduplicates the newer incident into the existing incident.

By default, Incident Manager automatically deduplicates multiple incidents created by the same Amazon CloudWatch alarm or Amazon EventBridge event. You don't have to enter your own deduplication string to prevent duplication for these resource types.

", "UpdateResponsePlanInput$incidentTemplateDedupeString": "

The string Incident Manager uses to prevent duplicate incidents from being created by the same incident in the same account.

" } }, @@ -363,7 +409,52 @@ "base": null, "refs": { "ListIncidentRecordsInput$filters": "

Filters the list of incident records you want to search through. You can filter on the following keys:

  • creationTime

  • impact

  • status

  • createdBy

Note the following when when you use Filters:

  • If you don't specify a Filter, the response includes all incident records.

  • If you specify more than one filter in a single request, the response returns incident records that match all filters.

  • If you specify a filter with more than one value, the response returns incident records that match any of the values provided.

", - "ListTimelineEventsInput$filters": "

Filters the timeline events based on the provided conditional values. You can filter timeline events with the following keys:

  • eventTime

  • eventType

Note the following when deciding how to use Filters:

  • If you don't specify a Filter, the response includes all timeline events.

  • If you specify more than one filter in a single request, the response returns timeline events that match all filters.

  • If you specify a filter with more than one value, the response returns timeline events that match any of the values provided.

" + "ListTimelineEventsInput$filters": "

Filters the timeline events based on the provided conditional values. You can filter timeline events with the following keys:

  • eventReference

  • eventTime

  • eventType

Note the following when deciding how to use Filters:

  • If you don't specify a Filter, the response includes all timeline events.

  • If you specify more than one filter in a single request, the response returns timeline events that match all filters.

  • If you specify a filter with more than one value, the response returns timeline events that match any of the values provided.

" + } + }, + "Finding": { + "base": "

Information about a specific CodeDeploy deployment or CloudFormation stack creation or update that occurred around the time of a reported incident. These activities can be investigated as a potential cause of the incident.

", + "refs": { + "FindingList$member": null + } + }, + "FindingDetails": { + "base": "

Extended textual information about the finding.

", + "refs": { + "Finding$details": "

Details about the finding.

" + } + }, + "FindingId": { + "base": null, + "refs": { + "BatchGetIncidentFindingsError$findingId": "

The ID of a specified finding for which an error was returned for a BatchGetIncidentFindings operation.

", + "Finding$id": "

The ID assigned to the finding.

", + "FindingIdList$member": null, + "FindingSummary$id": "

The ID of the finding.

" + } + }, + "FindingIdList": { + "base": null, + "refs": { + "BatchGetIncidentFindingsInput$findingIds": "

A list of IDs of findings for which you want to view details.

" + } + }, + "FindingList": { + "base": null, + "refs": { + "BatchGetIncidentFindingsOutput$findings": "

Information about the requested findings.

" + } + }, + "FindingSummary": { + "base": "

Identifying information about the finding.

", + "refs": { + "FindingSummaryList$member": null + } + }, + "FindingSummaryList": { + "base": null, + "refs": { + "ListIncidentFindingsOutput$findings": "

A list of findings that represent deployments that might be the potential cause of the incident.

" } }, "GeneratedId": { @@ -426,12 +517,12 @@ "Impact": { "base": null, "refs": { - "IncidentRecord$impact": "

The impact of the incident on customers and applications.

", + "IncidentRecord$impact": "

The impact of the incident on customers and applications.

Supported impact codes

  • 1 - Critical

  • 2 - High

  • 3 - Medium

  • 4 - Low

  • 5 - No Impact

", "IncidentRecordSummary$impact": "

Defines the impact to customers and applications.

", - "IncidentTemplate$impact": "

The impact of the incident on your customers and applications.

", - "StartIncidentInput$impact": "

Defines the impact to the customers. Providing an impact overwrites the impact provided by a response plan.

Possible impacts:

  • 1 - Critical impact, this typically relates to full application failure that impacts many to all customers.

  • 2 - High impact, partial application failure with impact to many customers.

  • 3 - Medium impact, the application is providing reduced service to customers.

  • 4 - Low impact, customer might aren't impacted by the problem yet.

  • 5 - No impact, customers aren't currently impacted but urgent action is needed to avoid impact.

", - "UpdateIncidentRecordInput$impact": "

Defines the impact of the incident to customers and applications. If you provide an impact for an incident, it overwrites the impact provided by the response plan.

Possible impacts:

  • 1 - Critical impact, full application failure that impacts many to all customers.

  • 2 - High impact, partial application failure with impact to many customers.

  • 3 - Medium impact, the application is providing reduced service to customers.

  • 4 - Low impact, customer aren't impacted by the problem yet.

  • 5 - No impact, customers aren't currently impacted but urgent action is needed to avoid impact.

", - "UpdateResponsePlanInput$incidentTemplateImpact": "

Defines the impact to the customers. Providing an impact overwrites the impact provided by a response plan.

Possible impacts:

  • 5 - Severe impact

  • 4 - High impact

  • 3 - Medium impact

  • 2 - Low impact

  • 1 - No impact

" + "IncidentTemplate$impact": "

The impact of the incident on your customers and applications.

Supported impact codes

  • 1 - Critical

  • 2 - High

  • 3 - Medium

  • 4 - Low

  • 5 - No Impact

", + "StartIncidentInput$impact": "

Defines the impact to the customers. Providing an impact overwrites the impact provided by a response plan.

Supported impact codes

  • 1 - Critical

  • 2 - High

  • 3 - Medium

  • 4 - Low

  • 5 - No Impact

", + "UpdateIncidentRecordInput$impact": "

Defines the impact of the incident to customers and applications. If you provide an impact for an incident, it overwrites the impact provided by the response plan.

Supported impact codes

  • 1 - Critical

  • 2 - High

  • 3 - Medium

  • 4 - Low

  • 5 - No Impact

", + "UpdateResponsePlanInput$incidentTemplateImpact": "

Defines the impact to the customers. Providing an impact overwrites the impact provided by a response plan.

Supported impact codes

  • 1 - Critical

  • 2 - High

  • 3 - Medium

  • 4 - Low

  • 5 - No Impact

" } }, "IncidentRecord": { @@ -551,6 +642,22 @@ "ItemIdentifier$value": "

Details about the related item.

" } }, + "ListIncidentFindingsInput": { + "base": null, + "refs": { + } + }, + "ListIncidentFindingsInputMaxResultsInteger": { + "base": null, + "refs": { + "ListIncidentFindingsInput$maxResults": "

The maximum number of findings to retrieve per call.

" + } + }, + "ListIncidentFindingsOutput": { + "base": null, + "refs": { + } + }, "ListIncidentRecordsInput": { "base": null, "refs": { @@ -631,18 +738,20 @@ "NextToken": { "base": null, "refs": { - "GetResourcePoliciesInput$nextToken": "

The pagination token to continue to the next page of results.

", - "GetResourcePoliciesOutput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListIncidentRecordsInput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListIncidentRecordsOutput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListRelatedItemsInput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListRelatedItemsOutput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListReplicationSetsInput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListReplicationSetsOutput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListResponsePlansInput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListResponsePlansOutput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListTimelineEventsInput$nextToken": "

The pagination token to continue to the next page of results.

", - "ListTimelineEventsOutput$nextToken": "

The pagination token to continue to the next page of results.

" + "GetResourcePoliciesInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "GetResourcePoliciesOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

", + "ListIncidentFindingsInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "ListIncidentFindingsOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

", + "ListIncidentRecordsInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "ListIncidentRecordsOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

", + "ListRelatedItemsInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "ListRelatedItemsOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

", + "ListReplicationSetsInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "ListReplicationSetsOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

", + "ListResponsePlansInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "ListResponsePlansOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

", + "ListTimelineEventsInput$nextToken": "

The pagination token for the next set of items to return. (You received this token from a previous call.)

", + "ListTimelineEventsOutput$nextToken": "

The pagination token to use when requesting the next set of items. If there are no additional items to return, the string is null.

" } }, "NotificationTargetItem": { @@ -987,8 +1096,10 @@ "String": { "base": null, "refs": { + "BatchGetIncidentFindingsError$code": "

The code associated with an error that was returned for a BatchGetIncidentFindings operation.

", + "BatchGetIncidentFindingsError$message": "

The description for an error that was returned for a BatchGetIncidentFindings operation.

", "ConflictException$resourceIdentifier": "

The identifier of the requested resource

", - "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the response plan.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the response plan or incident.

", "RegionInfo$statusMessage": "

Information displayed about the status of the Amazon Web Services Region.

", "ResourceNotFoundException$resourceIdentifier": "

The identifier for the requested resource

", "ResourcePolicy$ramResourceShareRegion": "

The Amazon Web Services Region that policy allows resources to be used in.

", @@ -1031,7 +1142,7 @@ "CreateReplicationSetInput$tags": "

A list of tags to add to the replication set.

", "CreateResponsePlanInput$tags": "

A list of tags that you are adding to the response plan.

", "IncidentTemplate$incidentTags": "

Tags to assign to the template. When the StartIncident API action is called, Incident Manager assigns the tags specified in the template to the incident.

", - "ListTagsForResourceResponse$tags": "

A list of tags for the response plan.

", + "ListTagsForResourceResponse$tags": "

A list of tags for the response plan or incident.

", "TagResourceRequest$tags": "

A list of tags to add to the response plan.

" } }, @@ -1078,33 +1189,40 @@ "TimelineEventType": { "base": null, "refs": { - "CreateTimelineEventInput$eventType": "

The type of event. You can create timeline events of type Custom Event.

", - "EventSummary$eventType": "

The type of event. The timeline event must be Custom Event.

", - "TimelineEvent$eventType": "

The type of event that occurred. Currently Incident Manager supports only the Custom Event type.

", - "UpdateTimelineEventInput$eventType": "

The type of event. You can update events of type Custom Event.

" + "CreateTimelineEventInput$eventType": "

The type of event. You can create timeline events of type Custom Event and Note.

To make a Note-type event appear on the Incident notes panel in the console, specify eventType as Noteand enter the Amazon Resource Name (ARN) of the incident as the value for eventReference.

", + "EventSummary$eventType": "

The type of event. The timeline event must be Custom Event or Note.

", + "TimelineEvent$eventType": "

The type of event that occurred. Currently Incident Manager supports only the Custom Event and Note types.

", + "UpdateTimelineEventInput$eventType": "

The type of event. You can update events of type Custom Event and Note.

" } }, "Timestamp": { "base": null, "refs": { + "CloudFormationStackUpdate$endTime": "

The timestamp for when the CloudFormation stack creation or update ended. Not reported for deployments that are still in progress.

", + "CloudFormationStackUpdate$startTime": "

The timestamp for when the CloudFormation stack creation or update began.

", + "CodeDeployDeployment$endTime": "

The timestamp for when the CodeDeploy deployment ended. Not reported for deployments that are still in progress.

", + "CodeDeployDeployment$startTime": "

The timestamp for when the CodeDeploy deployment began.

", "Condition$after": "

After the specified timestamp.

", "Condition$before": "

Before the specified timestamp

", "ConflictException$retryAfter": "

If present in the output, the operation can be retried after this time

", - "CreateTimelineEventInput$eventTime": "

The time that the event occurred.

", - "EventSummary$eventTime": "

The time that the event occurred.

", - "EventSummary$eventUpdatedTime": "

The time that the timeline event was last updated.

", - "IncidentRecord$creationTime": "

The time that Incident Manager created the incident record.

", - "IncidentRecord$lastModifiedTime": "

The time at which the incident was most recently modified.

", - "IncidentRecord$resolvedTime": "

The time at which the incident was resolved. This appears as a timeline event.

", - "IncidentRecordSummary$creationTime": "

The time the incident was created.

", - "IncidentRecordSummary$resolvedTime": "

The time the incident was resolved.

", - "RegionInfo$statusUpdateDateTime": "

The most recent date and time that Incident Manager updated the Amazon Web Services Region's status.

", + "CreateTimelineEventInput$eventTime": "

The timestamp for when the event occurred.

", + "EventSummary$eventTime": "

The timestamp for when the event occurred.

", + "EventSummary$eventUpdatedTime": "

The timestamp for when the timeline event was last updated.

", + "Finding$creationTime": "

The timestamp for when a finding was created.

", + "Finding$lastModifiedTime": "

The timestamp for when the finding was most recently updated with additional information.

", + "FindingSummary$lastModifiedTime": "

The timestamp for when the finding was last updated.

", + "IncidentRecord$creationTime": "

The timestamp for when Incident Manager created the incident record.

", + "IncidentRecord$lastModifiedTime": "

The timestamp for when the incident was most recently modified.

", + "IncidentRecord$resolvedTime": "

The timestamp for when the incident was resolved. This appears as a timeline event.

", + "IncidentRecordSummary$creationTime": "

The timestamp for when the incident was created.

", + "IncidentRecordSummary$resolvedTime": "

The timestamp for when the incident was resolved.

", + "RegionInfo$statusUpdateDateTime": "

The timestamp for when Incident Manager updated the status of the Amazon Web Services Region.

", "ReplicationSet$createdTime": "

When the replication set was created.

", "ReplicationSet$lastModifiedTime": "

When the replication set was last updated.

", - "TimelineEvent$eventTime": "

The time that the event occurred.

", - "TimelineEvent$eventUpdatedTime": "

The time that the timeline event was last updated.

", - "TriggerDetails$timestamp": "

The time that the incident was detected.

", - "UpdateTimelineEventInput$eventTime": "

The time that the event occurred.

" + "TimelineEvent$eventTime": "

The timestamp for when the event occurred.

", + "TimelineEvent$eventUpdatedTime": "

The timestamp for when the timeline event was last updated.

", + "TriggerDetails$timestamp": "

The timestamp for when the incident was detected.

", + "UpdateTimelineEventInput$eventTime": "

The timestamp for when the event occurred.

" } }, "TriggerDetails": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://ssm-incidents-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://ssm-incidents-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://ssm-incidents-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://ssm-incidents-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://ssm-incidents.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://ssm-incidents.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://ssm-incidents.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://ssm-incidents.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -8,9 +8,9 @@ } }, "params": { + "Region": "ap-northeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { @@ -21,9 +21,9 @@ } }, "params": { + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { + "Region": "ap-south-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-south-1" + "UseDualStack": false } }, { @@ -47,9 +47,9 @@ } }, "params": { + "Region": "ap-southeast-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { @@ -73,9 +73,9 @@ } }, "params": { + "Region": "ca-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { + "Region": "eu-central-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -99,9 +99,9 @@ } }, "params": { + "Region": "eu-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-north-1" + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { + "Region": "eu-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { @@ -125,9 +125,9 @@ } }, "params": { + "Region": "eu-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { + "Region": "eu-west-3", "UseFIPS": false, - "UseDualStack": false, - "Region": "eu-west-3" + "UseDualStack": false } }, { @@ -151,9 +151,9 @@ } }, "params": { + "Region": "sa-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -177,9 +177,9 @@ } }, "params": { + "Region": "us-east-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-east-2" + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-1" + "UseDualStack": false } }, { @@ -203,9 +203,9 @@ } }, "params": { + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-west-2" + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -229,9 +229,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -255,9 +255,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -268,9 +268,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -281,9 +281,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -294,9 +294,9 @@ } }, "params": { + "Region": "cn-north-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -307,9 +307,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -320,9 +320,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -333,9 +333,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -346,9 +346,9 @@ } }, "params": { + "Region": "us-gov-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -357,9 +357,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -370,9 +370,9 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -381,9 +381,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -394,9 +394,9 @@ } }, "params": { + "Region": "us-iso-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -405,9 +405,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -418,9 +418,9 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": true, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -429,9 +429,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -442,9 +442,9 @@ } }, "params": { + "Region": "us-isob-east-1", "UseFIPS": false, - "UseDualStack": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -455,9 +455,9 @@ } }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -480,9 +480,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, @@ -492,9 +492,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, - "Region": "us-east-1", "Endpoint": "https://example.com" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-incidents/2018-05-10/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-incidents/2018-05-10/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,6 +6,12 @@ "limit_key": "maxResults", "result_key": "resourcePolicies" }, + "ListIncidentFindings": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "findings" + }, "ListIncidentRecords": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -38,6 +38,7 @@ "input":{"shape":"DeregisterApplicationInput"}, "output":{"shape":"DeregisterApplicationOutput"}, "errors":[ + {"shape":"UnauthorizedException"}, {"shape":"ValidationException"}, {"shape":"InternalServerException"} ] @@ -66,6 +67,7 @@ "input":{"shape":"GetComponentInput"}, "output":{"shape":"GetComponentOutput"}, "errors":[ + {"shape":"UnauthorizedException"}, {"shape":"ValidationException"}, {"shape":"InternalServerException"} ] @@ -138,6 +140,7 @@ "input":{"shape":"ListComponentsInput"}, "output":{"shape":"ListComponentsOutput"}, "errors":[ + {"shape":"UnauthorizedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, {"shape":"InternalServerException"} @@ -212,6 +215,7 @@ "input":{"shape":"RegisterApplicationInput"}, "output":{"shape":"RegisterApplicationOutput"}, "errors":[ + {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, {"shape":"ConflictException"}, {"shape":"InternalServerException"} @@ -227,6 +231,7 @@ "input":{"shape":"StartApplicationRefreshInput"}, "output":{"shape":"StartApplicationRefreshOutput"}, "errors":[ + {"shape":"UnauthorizedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, {"shape":"ConflictException"}, @@ -274,6 +279,7 @@ "input":{"shape":"UpdateApplicationSettingsInput"}, "output":{"shape":"UpdateApplicationSettingsOutput"}, "errors":[ + {"shape":"UnauthorizedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, {"shape":"ConflictException"}, @@ -282,6 +288,15 @@ } }, "shapes":{ + "AllocationType":{ + "type":"string", + "enum":[ + "VPC_SUBNET", + "ELASTIC_IP", + "OVERLAY", + "UNKNOWN" + ] + }, "AppRegistryArn":{ "type":"string", "pattern":"arn:aws:servicecatalog:[a-z0-9:\\/-]+" @@ -317,7 +332,7 @@ "type":"list", "member":{"shape":"ApplicationCredential"}, "max":20, - "min":1 + "min":0 }, "ApplicationDiscoveryStatus":{ "type":"string", @@ -350,6 +365,7 @@ "type":"structure", "members":{ "Id":{"shape":"ApplicationId"}, + "DiscoveryStatus":{"shape":"ApplicationDiscoveryStatus"}, "Type":{"shape":"ApplicationType"}, "Arn":{"shape":"SsmSapArn"}, "Tags":{"shape":"TagMap"} @@ -361,7 +377,10 @@ }, "ApplicationType":{ "type":"string", - "enum":["HANA"] + "enum":[ + "HANA", + "SAP_ABAP" + ] }, "Arn":{ "type":"string", @@ -372,6 +391,7 @@ "members":{ "Hostname":{"shape":"String"}, "Ec2InstanceId":{"shape":"String"}, + "IpAddresses":{"shape":"IpAddressList"}, "OsVersion":{"shape":"String"} } }, @@ -408,12 +428,15 @@ "type":"structure", "members":{ "ComponentId":{"shape":"ComponentId"}, + "Sid":{"shape":"SID"}, + "SystemNumber":{"shape":"SAPInstanceNumber"}, "ParentComponent":{"shape":"ComponentId"}, "ChildComponents":{"shape":"ComponentIdList"}, "ApplicationId":{"shape":"ApplicationId"}, "ComponentType":{"shape":"ComponentType"}, "Status":{"shape":"ComponentStatus"}, "SapHostname":{"shape":"String"}, + "SapFeature":{"shape":"String"}, "SapKernelVersion":{"shape":"String"}, "HdbVersion":{"shape":"String"}, "Resilience":{"shape":"Resilience"}, @@ -429,6 +452,7 @@ "deprecated":true, "deprecatedMessage":"This shape is no longer used. Please use AssociatedHost." }, + "DatabaseConnection":{"shape":"DatabaseConnection"}, "LastUpdated":{"shape":"Timestamp"}, "Arn":{"shape":"SsmSapArn"} } @@ -471,7 +495,13 @@ "type":"string", "enum":[ "HANA", - "HANA_NODE" + "HANA_NODE", + "ABAP", + "ASCS", + "DIALOG", + "WEBDISP", + "WD", + "ERS" ] }, "ConflictException":{ @@ -505,6 +535,21 @@ "LastUpdated":{"shape":"Timestamp"} } }, + "DatabaseConnection":{ + "type":"structure", + "members":{ + "DatabaseConnectionMethod":{"shape":"DatabaseConnectionMethod"}, + "DatabaseArn":{"shape":"SsmSapArn"}, + "ConnectionIp":{"shape":"String"} + } + }, + "DatabaseConnectionMethod":{ + "type":"string", + "enum":[ + "DIRECT", + "OVERLAY" + ] + }, "DatabaseId":{ "type":"string", "pattern":".*[\\w\\d]+" @@ -738,14 +783,24 @@ "exception":true, "fault":true }, + "IpAddressList":{ + "type":"list", + "member":{"shape":"IpAddressMember"} + }, + "IpAddressMember":{ + "type":"structure", + "members":{ + "IpAddress":{"shape":"String"}, + "Primary":{"shape":"Boolean"}, + "AllocationType":{"shape":"AllocationType"} + } + }, "ListApplicationsInput":{ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"}, - "MaxResults":{ - "shape":"MaxResults", - "box":true - } + "MaxResults":{"shape":"MaxResults"}, + "Filters":{"shape":"FilterList"} } }, "ListApplicationsOutput":{ @@ -760,10 +815,7 @@ "members":{ "ApplicationId":{"shape":"ApplicationId"}, "NextToken":{"shape":"NextToken"}, - "MaxResults":{ - "shape":"MaxResults", - "box":true - } + "MaxResults":{"shape":"MaxResults"} } }, "ListComponentsOutput":{ @@ -779,10 +831,7 @@ "ApplicationId":{"shape":"ApplicationId"}, "ComponentId":{"shape":"ComponentId"}, "NextToken":{"shape":"NextToken"}, - "MaxResults":{ - "shape":"MaxResults", - "box":true - } + "MaxResults":{"shape":"MaxResults"} } }, "ListDatabasesOutput":{ @@ -797,10 +846,7 @@ "required":["ApplicationId"], "members":{ "ApplicationId":{"shape":"ApplicationId"}, - "MaxResults":{ - "shape":"MaxResults", - "box":true - }, + "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"NextToken"}, "Filters":{"shape":"FilterList"} } @@ -831,6 +877,7 @@ }, "MaxResults":{ "type":"integer", + "box":true, "max":50, "min":1 }, @@ -918,8 +965,7 @@ "required":[ "ApplicationId", "ApplicationType", - "Instances", - "Credentials" + "Instances" ], "members":{ "ApplicationId":{"shape":"ApplicationId"}, @@ -928,7 +974,8 @@ "SapInstanceNumber":{"shape":"SAPInstanceNumber"}, "Sid":{"shape":"SID"}, "Tags":{"shape":"TagMap"}, - "Credentials":{"shape":"ApplicationCredentialList"} + "Credentials":{"shape":"ApplicationCredentialList"}, + "DatabaseArn":{"shape":"SsmSapArn"} } }, "RegisterApplicationOutput":{ @@ -954,7 +1001,8 @@ "HsrTier":{"shape":"String"}, "HsrReplicationMode":{"shape":"ReplicationMode"}, "HsrOperationMode":{"shape":"OperationMode"}, - "ClusterStatus":{"shape":"ClusterStatus"} + "ClusterStatus":{"shape":"ClusterStatus"}, + "EnqueueReplication":{"shape":"Boolean"} } }, "ResourceId":{ @@ -1049,6 +1097,17 @@ "min":1 }, "Timestamp":{"type":"timestamp"}, + "UnauthorizedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":401, + "senderFault":true + }, + "exception":true + }, "UntagResourceRequest":{ "type":"structure", "required":[ @@ -1080,7 +1139,8 @@ "ApplicationId":{"shape":"ApplicationId"}, "CredentialsToAddOrUpdate":{"shape":"ApplicationCredentialList"}, "CredentialsToRemove":{"shape":"ApplicationCredentialList"}, - "Backint":{"shape":"BackintConfig"} + "Backint":{"shape":"BackintConfig"}, + "DatabaseArn":{"shape":"SsmSapArn"} } }, "UpdateApplicationSettingsOutput":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -22,6 +22,12 @@ "UpdateApplicationSettings": "

Updates the settings of an application registered with AWS Systems Manager for SAP.

" }, "shapes": { + "AllocationType": { + "base": null, + "refs": { + "IpAddressMember$AllocationType": "

The type of allocation for the IP address.

" + } + }, "AppRegistryArn": { "base": null, "refs": { @@ -54,7 +60,8 @@ "ApplicationDiscoveryStatus": { "base": null, "refs": { - "Application$DiscoveryStatus": "

The latest discovery result for the application.

" + "Application$DiscoveryStatus": "

The latest discovery result for the application.

", + "ApplicationSummary$DiscoveryStatus": "

The status of the latest discovery.

" } }, "ApplicationId": { @@ -136,7 +143,9 @@ "Boolean": { "base": null, "refs": { - "BackintConfig$EnsureNoBackupInProcess": "

" + "BackintConfig$EnsureNoBackupInProcess": "

", + "IpAddressMember$Primary": "

The primary IP address.

", + "Resilience$EnqueueReplication": "

Indicates if or not enqueue replication is enabled for the ASCS component.

" } }, "ClusterStatus": { @@ -175,7 +184,7 @@ "ComponentStatus": { "base": null, "refs": { - "Component$Status": "

The status of the component.

" + "Component$Status": "

The status of the component.

  • ACTIVATED - this status has been deprecated.

  • STARTING - the component is in the process of being started.

  • STOPPED - the component is not running.

  • STOPPING - the component is in the process of being stopped.

  • RUNNING - the component is running.

  • RUNNING_WITH_ERROR - one or more child component(s) of the parent component is not running. Call GetComponent to review the status of each child component.

  • UNDEFINED - AWS Systems Manager for SAP cannot provide the component status based on the discovered information. Verify your SAP application.

" } }, "ComponentSummary": { @@ -214,6 +223,18 @@ "GetDatabaseOutput$Database": "

The SAP HANA database of an application registered with AWS Systems Manager for SAP.

" } }, + "DatabaseConnection": { + "base": "

The connection specifications for the database.

", + "refs": { + "Component$DatabaseConnection": "

The connection specifications for the database of the component.

" + } + }, + "DatabaseConnectionMethod": { + "base": null, + "refs": { + "DatabaseConnection$DatabaseConnectionMethod": "

The method of connection.

" + } + }, "DatabaseId": { "base": null, "refs": { @@ -289,6 +310,7 @@ "FilterList": { "base": null, "refs": { + "ListApplicationsInput$Filters": "

The filter of name, value, and operator.

", "ListOperationsInput$Filters": "

The filters of an operation.

" } }, @@ -401,6 +423,18 @@ "refs": { } }, + "IpAddressList": { + "base": null, + "refs": { + "AssociatedHost$IpAddresses": "

The IP addresses of the associated host.

" + } + }, + "IpAddressMember": { + "base": "

Provides information of the IP address.

", + "refs": { + "IpAddressList$member": null + } + }, "ListApplicationsInput": { "base": null, "refs": { @@ -586,12 +620,14 @@ "SAPInstanceNumber": { "base": null, "refs": { + "Component$SystemNumber": "

The SAP system number of the application component.

", "RegisterApplicationInput$SapInstanceNumber": "

The SAP instance number of the application.

" } }, "SID": { "base": null, "refs": { + "Component$Sid": "

The SAP System Identifier of the application component.

", "RegisterApplicationInput$Sid": "

The System ID of the application.

" } }, @@ -609,12 +645,15 @@ "Component$Arn": "

The Amazon Resource Name (ARN) of the component.

", "ComponentSummary$Arn": "

The Amazon Resource Name (ARN) of the component summary.

", "Database$Arn": "

The Amazon Resource Name (ARN) of the database.

", + "DatabaseConnection$DatabaseArn": "

The Amazon Resource Name of the connected SAP HANA database.

", "DatabaseSummary$Arn": "

The Amazon Resource Name (ARN) of the database.

", "GetApplicationInput$ApplicationArn": "

The Amazon Resource Name (ARN) of the application.

", "GetDatabaseInput$DatabaseArn": "

The Amazon Resource Name (ARN) of the database.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", + "RegisterApplicationInput$DatabaseArn": "

The Amazon Resource Name of the SAP HANA database.

", "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", - "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

" + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", + "UpdateApplicationSettingsInput$DatabaseArn": "

The Amazon Resource Name of the SAP HANA database that replaces the current SAP HANA connection with the SAP_ABAP application.

" } }, "StartApplicationRefreshInput": { @@ -635,12 +674,14 @@ "AssociatedHost$Ec2InstanceId": "

The ID of the Amazon EC2 instance.

", "AssociatedHost$OsVersion": "

The version of the operating system.

", "Component$SapHostname": "

The hostname of the component.

", + "Component$SapFeature": "

The SAP feature of the component.

", "Component$SapKernelVersion": "

The kernel version of the component.

", "Component$HdbVersion": "

The SAP HANA version of the component.

", "Component$PrimaryHost": "

The primary host of the component.

", "ConflictException$Message": null, "Database$DatabaseName": "

The name of the database.

", "Database$PrimaryHost": "

The primary host of the database.

", + "DatabaseConnection$ConnectionIp": "

The IP address for connection.

", "DeleteResourcePermissionOutput$Policy": "

The policy that removes permissions on the target database.

", "GetResourcePermissionOutput$Policy": "

", "Host$HostName": "

The name of the Dedicated Host.

", @@ -649,12 +690,14 @@ "Host$InstanceId": "

The instance ID of the instance on the Dedicated Host.

", "Host$OsVersion": "

The version of the operating system.

", "InternalServerException$Message": null, + "IpAddressMember$IpAddress": "

The IP address.

", "Operation$StatusMessage": "

The status message of the operation.

", "OperationProperties$key": null, "OperationProperties$value": null, "PutResourcePermissionOutput$Policy": "

", "Resilience$HsrTier": "

The tier of the component.

", "ResourceNotFoundException$Message": null, + "UnauthorizedException$Message": null, "UpdateApplicationSettingsOutput$Message": "

The update message.

", "ValidationException$Message": null } @@ -713,6 +756,11 @@ "Operation$LastUpdatedTime": "

The time at which the operation was last updated.

" } }, + "UnauthorizedException": { + "base": "

The request is not authorized.

", + "refs": { + } + }, "UntagResourceRequest": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,53 +1,53 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://ssm-sap-fips.us-gov-east-1.api.aws" + "url": "https://ssm-sap-fips.us-east-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ssm-sap-fips.us-gov-east-1.amazonaws.com" + "url": "https://ssm-sap-fips.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://ssm-sap.us-gov-east-1.api.aws" + "url": "https://ssm-sap.us-east-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ssm-sap.us-gov-east-1.amazonaws.com" + "url": "https://ssm-sap.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false } @@ -105,101 +105,101 @@ } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://ssm-sap-fips.us-gov-east-1.api.aws" + } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ssm-sap-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://ssm-sap-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://ssm-sap.us-gov-east-1.api.aws" + } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ssm-sap.us-iso-east-1.c2s.ic.gov" + "url": "https://ssm-sap.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://ssm-sap-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ssm-sap-fips.us-east-1.amazonaws.com" + "url": "https://ssm-sap-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://ssm-sap.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ssm-sap.us-east-1.amazonaws.com" + "url": "https://ssm-sap.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": false } @@ -253,7 +253,7 @@ } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" @@ -267,6 +267,19 @@ } }, { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { "documentation": "For custom endpoint with fips enabled and dualstack disabled", "expect": { "error": "Invalid Configuration: FIPS and custom endpoint are not supported" @@ -289,6 +302,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso/2019-06-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso/2019-06-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso/2019-06-10/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso/2019-06-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,339 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://portal.sso.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso/2019-06-10/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso/2019-06-10/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso/2019-06-10/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso/2019-06-10/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,561 @@ +{ + "testCases": [ + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://portal.sso.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,793 +1,2801 @@ { - "version":"2.0", - "metadata":{ - "apiVersion":"2020-07-20", - "endpointPrefix":"sso", - "jsonVersion":"1.1", - "protocol":"json", - "serviceAbbreviation":"SSO Admin", - "serviceFullName":"AWS Single Sign-On Admin", - "serviceId":"SSO Admin", - "signatureVersion":"v4", - "signingName":"sso", - "targetPrefix":"SWBExternalService", - "uid":"sso-admin-2020-07-20" + "metadata": { + "apiVersion": "2020-07-20", + "endpointPrefix": "sso", + "jsonVersion": "1.1", + "protocol": "json", + "serviceAbbreviation": "SSO Admin", + "serviceFullName": "AWS Single Sign-On Admin", + "serviceId": "SSO Admin", + "signatureVersion": "v4", + "signingName": "sso", + "targetPrefix": "SWBExternalService", + "uid": "sso-admin-2020-07-20" }, - "operations":{ - "AttachCustomerManagedPolicyReferenceToPermissionSet":{ - "name":"AttachCustomerManagedPolicyReferenceToPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"AttachCustomerManagedPolicyReferenceToPermissionSetRequest"}, - "output":{"shape":"AttachCustomerManagedPolicyReferenceToPermissionSetResponse"}, - "errors":[ - {"shape":"ServiceQuotaExceededException"}, - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "AttachManagedPolicyToPermissionSet":{ - "name":"AttachManagedPolicyToPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"AttachManagedPolicyToPermissionSetRequest"}, - "output":{"shape":"AttachManagedPolicyToPermissionSetResponse"}, - "errors":[ - {"shape":"ServiceQuotaExceededException"}, - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "CreateAccountAssignment":{ - "name":"CreateAccountAssignment", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"CreateAccountAssignmentRequest"}, - "output":{"shape":"CreateAccountAssignmentResponse"}, - "errors":[ - {"shape":"ServiceQuotaExceededException"}, - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "CreateInstanceAccessControlAttributeConfiguration":{ - "name":"CreateInstanceAccessControlAttributeConfiguration", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"CreateInstanceAccessControlAttributeConfigurationRequest"}, - "output":{"shape":"CreateInstanceAccessControlAttributeConfigurationResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "CreatePermissionSet":{ - "name":"CreatePermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"CreatePermissionSetRequest"}, - "output":{"shape":"CreatePermissionSetResponse"}, - "errors":[ - {"shape":"ServiceQuotaExceededException"}, - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "DeleteAccountAssignment":{ - "name":"DeleteAccountAssignment", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DeleteAccountAssignmentRequest"}, - "output":{"shape":"DeleteAccountAssignmentResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "DeleteInlinePolicyFromPermissionSet":{ - "name":"DeleteInlinePolicyFromPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DeleteInlinePolicyFromPermissionSetRequest"}, - "output":{"shape":"DeleteInlinePolicyFromPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "DeleteInstanceAccessControlAttributeConfiguration":{ - "name":"DeleteInstanceAccessControlAttributeConfiguration", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DeleteInstanceAccessControlAttributeConfigurationRequest"}, - "output":{"shape":"DeleteInstanceAccessControlAttributeConfigurationResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "DeletePermissionSet":{ - "name":"DeletePermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DeletePermissionSetRequest"}, - "output":{"shape":"DeletePermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "DeletePermissionsBoundaryFromPermissionSet":{ - "name":"DeletePermissionsBoundaryFromPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DeletePermissionsBoundaryFromPermissionSetRequest"}, - "output":{"shape":"DeletePermissionsBoundaryFromPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "DescribeAccountAssignmentCreationStatus":{ - "name":"DescribeAccountAssignmentCreationStatus", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DescribeAccountAssignmentCreationStatusRequest"}, - "output":{"shape":"DescribeAccountAssignmentCreationStatusResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "DescribeAccountAssignmentDeletionStatus":{ - "name":"DescribeAccountAssignmentDeletionStatus", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DescribeAccountAssignmentDeletionStatusRequest"}, - "output":{"shape":"DescribeAccountAssignmentDeletionStatusResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "DescribeInstanceAccessControlAttributeConfiguration":{ - "name":"DescribeInstanceAccessControlAttributeConfiguration", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DescribeInstanceAccessControlAttributeConfigurationRequest"}, - "output":{"shape":"DescribeInstanceAccessControlAttributeConfigurationResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "DescribePermissionSet":{ - "name":"DescribePermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DescribePermissionSetRequest"}, - "output":{"shape":"DescribePermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "DescribePermissionSetProvisioningStatus":{ - "name":"DescribePermissionSetProvisioningStatus", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DescribePermissionSetProvisioningStatusRequest"}, - "output":{"shape":"DescribePermissionSetProvisioningStatusResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "DetachCustomerManagedPolicyReferenceFromPermissionSet":{ - "name":"DetachCustomerManagedPolicyReferenceFromPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DetachCustomerManagedPolicyReferenceFromPermissionSetRequest"}, - "output":{"shape":"DetachCustomerManagedPolicyReferenceFromPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "DetachManagedPolicyFromPermissionSet":{ - "name":"DetachManagedPolicyFromPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"DetachManagedPolicyFromPermissionSetRequest"}, - "output":{"shape":"DetachManagedPolicyFromPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "GetInlinePolicyForPermissionSet":{ - "name":"GetInlinePolicyForPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"GetInlinePolicyForPermissionSetRequest"}, - "output":{"shape":"GetInlinePolicyForPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "GetPermissionsBoundaryForPermissionSet":{ - "name":"GetPermissionsBoundaryForPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"GetPermissionsBoundaryForPermissionSetRequest"}, - "output":{"shape":"GetPermissionsBoundaryForPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListAccountAssignmentCreationStatus":{ - "name":"ListAccountAssignmentCreationStatus", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListAccountAssignmentCreationStatusRequest"}, - "output":{"shape":"ListAccountAssignmentCreationStatusResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListAccountAssignmentDeletionStatus":{ - "name":"ListAccountAssignmentDeletionStatus", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListAccountAssignmentDeletionStatusRequest"}, - "output":{"shape":"ListAccountAssignmentDeletionStatusResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListAccountAssignments":{ - "name":"ListAccountAssignments", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListAccountAssignmentsRequest"}, - "output":{"shape":"ListAccountAssignmentsResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListAccountsForProvisionedPermissionSet":{ - "name":"ListAccountsForProvisionedPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListAccountsForProvisionedPermissionSetRequest"}, - "output":{"shape":"ListAccountsForProvisionedPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListCustomerManagedPolicyReferencesInPermissionSet":{ - "name":"ListCustomerManagedPolicyReferencesInPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListCustomerManagedPolicyReferencesInPermissionSetRequest"}, - "output":{"shape":"ListCustomerManagedPolicyReferencesInPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListInstances":{ - "name":"ListInstances", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListInstancesRequest"}, - "output":{"shape":"ListInstancesResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListManagedPoliciesInPermissionSet":{ - "name":"ListManagedPoliciesInPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListManagedPoliciesInPermissionSetRequest"}, - "output":{"shape":"ListManagedPoliciesInPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListPermissionSetProvisioningStatus":{ - "name":"ListPermissionSetProvisioningStatus", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListPermissionSetProvisioningStatusRequest"}, - "output":{"shape":"ListPermissionSetProvisioningStatusResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListPermissionSets":{ - "name":"ListPermissionSets", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListPermissionSetsRequest"}, - "output":{"shape":"ListPermissionSetsResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListPermissionSetsProvisionedToAccount":{ - "name":"ListPermissionSetsProvisionedToAccount", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListPermissionSetsProvisionedToAccountRequest"}, - "output":{"shape":"ListPermissionSetsProvisionedToAccountResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ListTagsForResource":{ - "name":"ListTagsForResource", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ListTagsForResourceRequest"}, - "output":{"shape":"ListTagsForResourceResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"} - ] - }, - "ProvisionPermissionSet":{ - "name":"ProvisionPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"ProvisionPermissionSetRequest"}, - "output":{"shape":"ProvisionPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "PutInlinePolicyToPermissionSet":{ - "name":"PutInlinePolicyToPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"PutInlinePolicyToPermissionSetRequest"}, - "output":{"shape":"PutInlinePolicyToPermissionSetResponse"}, - "errors":[ - {"shape":"ServiceQuotaExceededException"}, - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "PutPermissionsBoundaryToPermissionSet":{ - "name":"PutPermissionsBoundaryToPermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"PutPermissionsBoundaryToPermissionSetRequest"}, - "output":{"shape":"PutPermissionsBoundaryToPermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "TagResource":{ - "name":"TagResource", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"TagResourceRequest"}, - "output":{"shape":"TagResourceResponse"}, - "errors":[ - {"shape":"ServiceQuotaExceededException"}, - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "UntagResource":{ - "name":"UntagResource", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"UntagResourceRequest"}, - "output":{"shape":"UntagResourceResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "UpdateInstanceAccessControlAttributeConfiguration":{ - "name":"UpdateInstanceAccessControlAttributeConfiguration", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"UpdateInstanceAccessControlAttributeConfigurationRequest"}, - "output":{"shape":"UpdateInstanceAccessControlAttributeConfigurationResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] - }, - "UpdatePermissionSet":{ - "name":"UpdatePermissionSet", - "http":{ - "method":"POST", - "requestUri":"/" - }, - "input":{"shape":"UpdatePermissionSetRequest"}, - "output":{"shape":"UpdatePermissionSetResponse"}, - "errors":[ - {"shape":"ThrottlingException"}, - {"shape":"InternalServerException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"AccessDeniedException"}, - {"shape":"ValidationException"}, - {"shape":"ConflictException"} - ] + "operations": { + "AttachCustomerManagedPolicyReferenceToPermissionSet": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "AttachCustomerManagedPolicyReferenceToPermissionSetRequest" + }, + "name": "AttachCustomerManagedPolicyReferenceToPermissionSet", + "output": { + "shape": "AttachCustomerManagedPolicyReferenceToPermissionSetResponse" + } + }, + "AttachManagedPolicyToPermissionSet": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "AttachManagedPolicyToPermissionSetRequest" + }, + "name": "AttachManagedPolicyToPermissionSet", + "output": { + "shape": "AttachManagedPolicyToPermissionSetResponse" + } + }, + "CreateAccountAssignment": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateAccountAssignmentRequest" + }, + "name": "CreateAccountAssignment", + "output": { + "shape": "CreateAccountAssignmentResponse" + } + }, + "CreateApplication": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateApplicationRequest" + }, + "name": "CreateApplication", + "output": { + "shape": "CreateApplicationResponse" + } + }, + "CreateApplicationAssignment": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateApplicationAssignmentRequest" + }, + "name": "CreateApplicationAssignment", + "output": { + "shape": "CreateApplicationAssignmentResponse" + } + }, + "CreateInstance": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateInstanceRequest" + }, + "name": "CreateInstance", + "output": { + "shape": "CreateInstanceResponse" + } + }, + "CreateInstanceAccessControlAttributeConfiguration": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateInstanceAccessControlAttributeConfigurationRequest" + }, + "name": "CreateInstanceAccessControlAttributeConfiguration", + "output": { + "shape": "CreateInstanceAccessControlAttributeConfigurationResponse" + } + }, + "CreatePermissionSet": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreatePermissionSetRequest" + }, + "name": "CreatePermissionSet", + "output": { + "shape": "CreatePermissionSetResponse" + } + }, + "CreateTrustedTokenIssuer": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "CreateTrustedTokenIssuerRequest" + }, + "name": "CreateTrustedTokenIssuer", + "output": { + "shape": "CreateTrustedTokenIssuerResponse" + } + }, + "DeleteAccountAssignment": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteAccountAssignmentRequest" + }, + "name": "DeleteAccountAssignment", + "output": { + "shape": "DeleteAccountAssignmentResponse" + } + }, + "DeleteApplication": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteApplicationRequest" + }, + "name": "DeleteApplication", + "output": { + "shape": "DeleteApplicationResponse" + } + }, + "DeleteApplicationAccessScope": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "DeleteApplicationAccessScopeRequest" + }, + "name": "DeleteApplicationAccessScope" + }, + "DeleteApplicationAssignment": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "DeleteApplicationAssignmentRequest" + }, + "name": "DeleteApplicationAssignment", + "output": { + "shape": "DeleteApplicationAssignmentResponse" + } + }, + "DeleteApplicationAuthenticationMethod": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "DeleteApplicationAuthenticationMethodRequest" + }, + "name": "DeleteApplicationAuthenticationMethod" + }, + "DeleteApplicationGrant": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "DeleteApplicationGrantRequest" + }, + "name": "DeleteApplicationGrant" + }, + "DeleteInlinePolicyFromPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteInlinePolicyFromPermissionSetRequest" + }, + "name": "DeleteInlinePolicyFromPermissionSet", + "output": { + "shape": "DeleteInlinePolicyFromPermissionSetResponse" + } + }, + "DeleteInstance": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteInstanceRequest" + }, + "name": "DeleteInstance", + "output": { + "shape": "DeleteInstanceResponse" + } + }, + "DeleteInstanceAccessControlAttributeConfiguration": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteInstanceAccessControlAttributeConfigurationRequest" + }, + "name": "DeleteInstanceAccessControlAttributeConfiguration", + "output": { + "shape": "DeleteInstanceAccessControlAttributeConfigurationResponse" + } + }, + "DeletePermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeletePermissionSetRequest" + }, + "name": "DeletePermissionSet", + "output": { + "shape": "DeletePermissionSetResponse" + } + }, + "DeletePermissionsBoundaryFromPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeletePermissionsBoundaryFromPermissionSetRequest" + }, + "name": "DeletePermissionsBoundaryFromPermissionSet", + "output": { + "shape": "DeletePermissionsBoundaryFromPermissionSetResponse" + } + }, + "DeleteTrustedTokenIssuer": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DeleteTrustedTokenIssuerRequest" + }, + "name": "DeleteTrustedTokenIssuer", + "output": { + "shape": "DeleteTrustedTokenIssuerResponse" + } + }, + "DescribeAccountAssignmentCreationStatus": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeAccountAssignmentCreationStatusRequest" + }, + "name": "DescribeAccountAssignmentCreationStatus", + "output": { + "shape": "DescribeAccountAssignmentCreationStatusResponse" + } + }, + "DescribeAccountAssignmentDeletionStatus": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeAccountAssignmentDeletionStatusRequest" + }, + "name": "DescribeAccountAssignmentDeletionStatus", + "output": { + "shape": "DescribeAccountAssignmentDeletionStatusResponse" + } + }, + "DescribeApplication": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeApplicationRequest" + }, + "name": "DescribeApplication", + "output": { + "shape": "DescribeApplicationResponse" + } + }, + "DescribeApplicationAssignment": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeApplicationAssignmentRequest" + }, + "name": "DescribeApplicationAssignment", + "output": { + "shape": "DescribeApplicationAssignmentResponse" + } + }, + "DescribeApplicationProvider": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeApplicationProviderRequest" + }, + "name": "DescribeApplicationProvider", + "output": { + "shape": "DescribeApplicationProviderResponse" + } + }, + "DescribeInstance": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeInstanceRequest" + }, + "name": "DescribeInstance", + "output": { + "shape": "DescribeInstanceResponse" + } + }, + "DescribeInstanceAccessControlAttributeConfiguration": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeInstanceAccessControlAttributeConfigurationRequest" + }, + "name": "DescribeInstanceAccessControlAttributeConfiguration", + "output": { + "shape": "DescribeInstanceAccessControlAttributeConfigurationResponse" + } + }, + "DescribePermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribePermissionSetRequest" + }, + "name": "DescribePermissionSet", + "output": { + "shape": "DescribePermissionSetResponse" + } + }, + "DescribePermissionSetProvisioningStatus": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribePermissionSetProvisioningStatusRequest" + }, + "name": "DescribePermissionSetProvisioningStatus", + "output": { + "shape": "DescribePermissionSetProvisioningStatusResponse" + } + }, + "DescribeTrustedTokenIssuer": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DescribeTrustedTokenIssuerRequest" + }, + "name": "DescribeTrustedTokenIssuer", + "output": { + "shape": "DescribeTrustedTokenIssuerResponse" + } + }, + "DetachCustomerManagedPolicyReferenceFromPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DetachCustomerManagedPolicyReferenceFromPermissionSetRequest" + }, + "name": "DetachCustomerManagedPolicyReferenceFromPermissionSet", + "output": { + "shape": "DetachCustomerManagedPolicyReferenceFromPermissionSetResponse" + } + }, + "DetachManagedPolicyFromPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "DetachManagedPolicyFromPermissionSetRequest" + }, + "name": "DetachManagedPolicyFromPermissionSet", + "output": { + "shape": "DetachManagedPolicyFromPermissionSetResponse" + } + }, + "GetApplicationAccessScope": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetApplicationAccessScopeRequest" + }, + "name": "GetApplicationAccessScope", + "output": { + "shape": "GetApplicationAccessScopeResponse" + } + }, + "GetApplicationAssignmentConfiguration": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetApplicationAssignmentConfigurationRequest" + }, + "name": "GetApplicationAssignmentConfiguration", + "output": { + "shape": "GetApplicationAssignmentConfigurationResponse" + } + }, + "GetApplicationAuthenticationMethod": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetApplicationAuthenticationMethodRequest" + }, + "name": "GetApplicationAuthenticationMethod", + "output": { + "shape": "GetApplicationAuthenticationMethodResponse" + } + }, + "GetApplicationGrant": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetApplicationGrantRequest" + }, + "name": "GetApplicationGrant", + "output": { + "shape": "GetApplicationGrantResponse" + } + }, + "GetInlinePolicyForPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetInlinePolicyForPermissionSetRequest" + }, + "name": "GetInlinePolicyForPermissionSet", + "output": { + "shape": "GetInlinePolicyForPermissionSetResponse" + } + }, + "GetPermissionsBoundaryForPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "GetPermissionsBoundaryForPermissionSetRequest" + }, + "name": "GetPermissionsBoundaryForPermissionSet", + "output": { + "shape": "GetPermissionsBoundaryForPermissionSetResponse" + } + }, + "ListAccountAssignmentCreationStatus": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListAccountAssignmentCreationStatusRequest" + }, + "name": "ListAccountAssignmentCreationStatus", + "output": { + "shape": "ListAccountAssignmentCreationStatusResponse" + } + }, + "ListAccountAssignmentDeletionStatus": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListAccountAssignmentDeletionStatusRequest" + }, + "name": "ListAccountAssignmentDeletionStatus", + "output": { + "shape": "ListAccountAssignmentDeletionStatusResponse" + } + }, + "ListAccountAssignments": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListAccountAssignmentsRequest" + }, + "name": "ListAccountAssignments", + "output": { + "shape": "ListAccountAssignmentsResponse" + } + }, + "ListAccountAssignmentsForPrincipal": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListAccountAssignmentsForPrincipalRequest" + }, + "name": "ListAccountAssignmentsForPrincipal", + "output": { + "shape": "ListAccountAssignmentsForPrincipalResponse" + } + }, + "ListAccountsForProvisionedPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListAccountsForProvisionedPermissionSetRequest" + }, + "name": "ListAccountsForProvisionedPermissionSet", + "output": { + "shape": "ListAccountsForProvisionedPermissionSetResponse" + } + }, + "ListApplicationAccessScopes": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationAccessScopesRequest" + }, + "name": "ListApplicationAccessScopes", + "output": { + "shape": "ListApplicationAccessScopesResponse" + } + }, + "ListApplicationAssignments": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationAssignmentsRequest" + }, + "name": "ListApplicationAssignments", + "output": { + "shape": "ListApplicationAssignmentsResponse" + } + }, + "ListApplicationAssignmentsForPrincipal": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationAssignmentsForPrincipalRequest" + }, + "name": "ListApplicationAssignmentsForPrincipal", + "output": { + "shape": "ListApplicationAssignmentsForPrincipalResponse" + } + }, + "ListApplicationAuthenticationMethods": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationAuthenticationMethodsRequest" + }, + "name": "ListApplicationAuthenticationMethods", + "output": { + "shape": "ListApplicationAuthenticationMethodsResponse" + } + }, + "ListApplicationGrants": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationGrantsRequest" + }, + "name": "ListApplicationGrants", + "output": { + "shape": "ListApplicationGrantsResponse" + } + }, + "ListApplicationProviders": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationProvidersRequest" + }, + "name": "ListApplicationProviders", + "output": { + "shape": "ListApplicationProvidersResponse" + } + }, + "ListApplications": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListApplicationsRequest" + }, + "name": "ListApplications", + "output": { + "shape": "ListApplicationsResponse" + } + }, + "ListCustomerManagedPolicyReferencesInPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListCustomerManagedPolicyReferencesInPermissionSetRequest" + }, + "name": "ListCustomerManagedPolicyReferencesInPermissionSet", + "output": { + "shape": "ListCustomerManagedPolicyReferencesInPermissionSetResponse" + } + }, + "ListInstances": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListInstancesRequest" + }, + "name": "ListInstances", + "output": { + "shape": "ListInstancesResponse" + } + }, + "ListManagedPoliciesInPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListManagedPoliciesInPermissionSetRequest" + }, + "name": "ListManagedPoliciesInPermissionSet", + "output": { + "shape": "ListManagedPoliciesInPermissionSetResponse" + } + }, + "ListPermissionSetProvisioningStatus": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListPermissionSetProvisioningStatusRequest" + }, + "name": "ListPermissionSetProvisioningStatus", + "output": { + "shape": "ListPermissionSetProvisioningStatusResponse" + } + }, + "ListPermissionSets": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListPermissionSetsRequest" + }, + "name": "ListPermissionSets", + "output": { + "shape": "ListPermissionSetsResponse" + } + }, + "ListPermissionSetsProvisionedToAccount": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListPermissionSetsProvisionedToAccountRequest" + }, + "name": "ListPermissionSetsProvisionedToAccount", + "output": { + "shape": "ListPermissionSetsProvisionedToAccountResponse" + } + }, + "ListTagsForResource": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListTagsForResourceRequest" + }, + "name": "ListTagsForResource", + "output": { + "shape": "ListTagsForResourceResponse" + } + }, + "ListTrustedTokenIssuers": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ListTrustedTokenIssuersRequest" + }, + "name": "ListTrustedTokenIssuers", + "output": { + "shape": "ListTrustedTokenIssuersResponse" + } + }, + "ProvisionPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "ProvisionPermissionSetRequest" + }, + "name": "ProvisionPermissionSet", + "output": { + "shape": "ProvisionPermissionSetResponse" + } + }, + "PutApplicationAccessScope": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "PutApplicationAccessScopeRequest" + }, + "name": "PutApplicationAccessScope" + }, + "PutApplicationAssignmentConfiguration": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "PutApplicationAssignmentConfigurationRequest" + }, + "name": "PutApplicationAssignmentConfiguration", + "output": { + "shape": "PutApplicationAssignmentConfigurationResponse" + } + }, + "PutApplicationAuthenticationMethod": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "PutApplicationAuthenticationMethodRequest" + }, + "name": "PutApplicationAuthenticationMethod" + }, + "PutApplicationGrant": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "idempotent": true, + "input": { + "shape": "PutApplicationGrantRequest" + }, + "name": "PutApplicationGrant" + }, + "PutInlinePolicyToPermissionSet": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "PutInlinePolicyToPermissionSetRequest" + }, + "name": "PutInlinePolicyToPermissionSet", + "output": { + "shape": "PutInlinePolicyToPermissionSetResponse" + } + }, + "PutPermissionsBoundaryToPermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "PutPermissionsBoundaryToPermissionSetRequest" + }, + "name": "PutPermissionsBoundaryToPermissionSet", + "output": { + "shape": "PutPermissionsBoundaryToPermissionSetResponse" + } + }, + "TagResource": { + "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "TagResourceRequest" + }, + "name": "TagResource", + "output": { + "shape": "TagResourceResponse" + } + }, + "UntagResource": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UntagResourceRequest" + }, + "name": "UntagResource", + "output": { + "shape": "UntagResourceResponse" + } + }, + "UpdateApplication": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateApplicationRequest" + }, + "name": "UpdateApplication", + "output": { + "shape": "UpdateApplicationResponse" + } + }, + "UpdateInstance": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateInstanceRequest" + }, + "name": "UpdateInstance", + "output": { + "shape": "UpdateInstanceResponse" + } + }, + "UpdateInstanceAccessControlAttributeConfiguration": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateInstanceAccessControlAttributeConfigurationRequest" + }, + "name": "UpdateInstanceAccessControlAttributeConfiguration", + "output": { + "shape": "UpdateInstanceAccessControlAttributeConfigurationResponse" + } + }, + "UpdatePermissionSet": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdatePermissionSetRequest" + }, + "name": "UpdatePermissionSet", + "output": { + "shape": "UpdatePermissionSetResponse" + } + }, + "UpdateTrustedTokenIssuer": { + "errors": [ + { + "shape": "ThrottlingException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + } + ], + "http": { + "method": "POST", + "requestUri": "/" + }, + "input": { + "shape": "UpdateTrustedTokenIssuerRequest" + }, + "name": "UpdateTrustedTokenIssuer", + "output": { + "shape": "UpdateTrustedTokenIssuerResponse" + } } }, - "shapes":{ - "AccessControlAttribute":{ - "type":"structure", - "required":[ + "shapes": { + "AccessControlAttribute": { + "members": { + "Key": { + "shape": "AccessControlAttributeKey" + }, + "Value": { + "shape": "AccessControlAttributeValue" + } + }, + "required": [ "Key", "Value" ], - "members":{ - "Key":{"shape":"AccessControlAttributeKey"}, - "Value":{"shape":"AccessControlAttributeValue"} - } - }, - "AccessControlAttributeKey":{ - "type":"string", - "max":128, - "min":1, - "pattern":"^[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@]+$" - }, - "AccessControlAttributeList":{ - "type":"list", - "member":{"shape":"AccessControlAttribute"}, - "max":50, - "min":0 - }, - "AccessControlAttributeValue":{ - "type":"structure", - "required":["Source"], - "members":{ - "Source":{"shape":"AccessControlAttributeValueSourceList"} - } - }, - "AccessControlAttributeValueSource":{ - "type":"string", - "max":256, - "min":0, - "pattern":"^[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@\\[\\]\\{\\}\\$\\\\\"]*$" - }, - "AccessControlAttributeValueSourceList":{ - "type":"list", - "member":{"shape":"AccessControlAttributeValueSource"}, - "max":1, - "min":1 - }, - "AccessDeniedException":{ - "type":"structure", - "members":{ - "Message":{"shape":"AccessDeniedExceptionMessage"} - }, - "exception":true - }, - "AccessDeniedExceptionMessage":{"type":"string"}, - "AccountAssignment":{ - "type":"structure", - "members":{ - "AccountId":{"shape":"AccountId"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "PrincipalId":{"shape":"PrincipalId"}, - "PrincipalType":{"shape":"PrincipalType"} - } - }, - "AccountAssignmentList":{ - "type":"list", - "member":{"shape":"AccountAssignment"} - }, - "AccountAssignmentOperationStatus":{ - "type":"structure", - "members":{ - "CreatedDate":{"shape":"Date"}, - "FailureReason":{"shape":"Reason"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "PrincipalId":{"shape":"PrincipalId"}, - "PrincipalType":{"shape":"PrincipalType"}, - "RequestId":{"shape":"UUId"}, - "Status":{"shape":"StatusValues"}, - "TargetId":{"shape":"TargetId"}, - "TargetType":{"shape":"TargetType"} - } - }, - "AccountAssignmentOperationStatusList":{ - "type":"list", - "member":{"shape":"AccountAssignmentOperationStatusMetadata"} - }, - "AccountAssignmentOperationStatusMetadata":{ - "type":"structure", - "members":{ - "CreatedDate":{"shape":"Date"}, - "RequestId":{"shape":"UUId"}, - "Status":{"shape":"StatusValues"} - } - }, - "AccountId":{ - "type":"string", - "max":12, - "min":12, - "pattern":"^\\d{12}$" - }, - "AccountList":{ - "type":"list", - "member":{"shape":"AccountId"} - }, - "AttachCustomerManagedPolicyReferenceToPermissionSetRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "AccessControlAttributeKey": { + "max": 128, + "min": 1, + "pattern": "^[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@]+$", + "type": "string" + }, + "AccessControlAttributeList": { + "max": 50, + "member": { + "shape": "AccessControlAttribute" + }, + "min": 0, + "type": "list" + }, + "AccessControlAttributeValue": { + "members": { + "Source": { + "shape": "AccessControlAttributeValueSourceList" + } + }, + "required": [ + "Source" + ], + "type": "structure" + }, + "AccessControlAttributeValueSource": { + "max": 256, + "min": 0, + "pattern": "^[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@\\[\\]\\{\\}\\$\\\\\"]*$", + "type": "string" + }, + "AccessControlAttributeValueSourceList": { + "max": 1, + "member": { + "shape": "AccessControlAttributeValueSource" + }, + "min": 1, + "type": "list" + }, + "AccessDeniedException": { + "exception": true, + "members": { + "Message": { + "shape": "AccessDeniedExceptionMessage" + } + }, + "type": "structure" + }, + "AccessDeniedExceptionMessage": { + "type": "string" + }, + "AccountAssignment": { + "members": { + "AccountId": { + "shape": "AccountId" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "type": "structure" + }, + "AccountAssignmentForPrincipal": { + "members": { + "AccountId": { + "shape": "AccountId" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "type": "structure" + }, + "AccountAssignmentList": { + "member": { + "shape": "AccountAssignment" + }, + "type": "list" + }, + "AccountAssignmentListForPrincipal": { + "member": { + "shape": "AccountAssignmentForPrincipal" + }, + "type": "list" + }, + "AccountAssignmentOperationStatus": { + "members": { + "CreatedDate": { + "shape": "Date" + }, + "FailureReason": { + "shape": "Reason" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + }, + "RequestId": { + "shape": "UUId" + }, + "Status": { + "shape": "StatusValues" + }, + "TargetId": { + "shape": "TargetId" + }, + "TargetType": { + "shape": "TargetType" + } + }, + "type": "structure" + }, + "AccountAssignmentOperationStatusList": { + "member": { + "shape": "AccountAssignmentOperationStatusMetadata" + }, + "type": "list" + }, + "AccountAssignmentOperationStatusMetadata": { + "members": { + "CreatedDate": { + "shape": "Date" + }, + "RequestId": { + "shape": "UUId" + }, + "Status": { + "shape": "StatusValues" + } + }, + "type": "structure" + }, + "AccountId": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "AccountList": { + "member": { + "shape": "AccountId" + }, + "type": "list" + }, + "Application": { + "members": { + "ApplicationAccount": { + "shape": "AccountId" + }, + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "ApplicationProviderArn": { + "shape": "ApplicationProviderArn" + }, + "CreatedDate": { + "shape": "Date" + }, + "Description": { + "shape": "Description" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "NameType" + }, + "PortalOptions": { + "shape": "PortalOptions" + }, + "Status": { + "shape": "ApplicationStatus" + } + }, + "type": "structure" + }, + "ApplicationArn": { + "max": 1224, + "min": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::\\d{12}:application/(sso)?ins-[a-zA-Z0-9-.]{16}/apl-[a-zA-Z0-9]{16}$", + "type": "string" + }, + "ApplicationAssignment": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "structure" + }, + "ApplicationAssignmentForPrincipal": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "type": "structure" + }, + "ApplicationAssignmentListForPrincipal": { + "member": { + "shape": "ApplicationAssignmentForPrincipal" + }, + "type": "list" + }, + "ApplicationAssignmentsList": { + "member": { + "shape": "ApplicationAssignment" + }, + "type": "list" + }, + "ApplicationList": { + "max": 50, + "member": { + "shape": "Application" + }, + "min": 0, + "type": "list" + }, + "ApplicationProvider": { + "members": { + "ApplicationProviderArn": { + "shape": "ApplicationProviderArn" + }, + "DisplayData": { + "shape": "DisplayData" + }, + "FederationProtocol": { + "shape": "FederationProtocol" + }, + "ResourceServerConfig": { + "shape": "ResourceServerConfig" + } + }, + "required": [ + "ApplicationProviderArn" + ], + "type": "structure" + }, + "ApplicationProviderArn": { + "max": 1224, + "min": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::aws:applicationProvider/[a-zA-Z0-9-/]+$", + "type": "string" + }, + "ApplicationProviderList": { + "member": { + "shape": "ApplicationProvider" + }, + "type": "list" + }, + "ApplicationStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "ApplicationUrl": { + "max": 512, + "min": 1, + "pattern": "^http(s)?:\\/\\/[-a-zA-Z0-9+\u0026@#\\/%?=~_|!:,.;]*[-a-zA-Z0-9+\u0026bb@#\\/%?=~_|]$", + "type": "string" + }, + "ApplicationVisibility": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "AssignmentRequired": { + "box": true, + "type": "boolean" + }, + "AttachCustomerManagedPolicyReferenceToPermissionSetRequest": { + "members": { + "CustomerManagedPolicyReference": { + "shape": "CustomerManagedPolicyReference" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "CustomerManagedPolicyReference", "InstanceArn", "PermissionSetArn" ], - "members":{ - "CustomerManagedPolicyReference":{"shape":"CustomerManagedPolicyReference"}, - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "AttachCustomerManagedPolicyReferenceToPermissionSetResponse":{ - "type":"structure", - "members":{ - } - }, - "AttachManagedPolicyToPermissionSetRequest":{ - "type":"structure", - "required":[ + "AttachCustomerManagedPolicyReferenceToPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "AttachManagedPolicyToPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "ManagedPolicyArn": { + "shape": "ManagedPolicyArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "ManagedPolicyArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "ManagedPolicyArn":{"shape":"ManagedPolicyArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } - }, - "AttachManagedPolicyToPermissionSetResponse":{ - "type":"structure", - "members":{ - } + "type": "structure" }, - "AttachedManagedPolicy":{ - "type":"structure", - "members":{ - "Arn":{"shape":"ManagedPolicyArn"}, - "Name":{"shape":"Name"} - } - }, - "AttachedManagedPolicyList":{ - "type":"list", - "member":{"shape":"AttachedManagedPolicy"} + "AttachManagedPolicyToPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "AttachedManagedPolicy": { + "members": { + "Arn": { + "shape": "ManagedPolicyArn" + }, + "Name": { + "shape": "Name" + } + }, + "type": "structure" + }, + "AttachedManagedPolicyList": { + "member": { + "shape": "AttachedManagedPolicy" + }, + "type": "list" + }, + "AuthenticationMethod": { + "members": {}, + "type": "structure", + "union": true + }, + "AuthenticationMethodItem": { + "members": { + "AuthenticationMethod": { + "shape": "AuthenticationMethod" + }, + "AuthenticationMethodType": { + "shape": "AuthenticationMethodType" + } + }, + "type": "structure" + }, + "AuthenticationMethodType": { + "enum": [ + "IAM" + ], + "type": "string" }, - "ConflictException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ConflictExceptionMessage"} + "AuthenticationMethods": { + "member": { + "shape": "AuthenticationMethodItem" + }, + "type": "list" + }, + "AuthorizationCodeGrant": { + "members": { + "RedirectUris": { + "shape": "RedirectUris" + } + }, + "type": "structure" + }, + "AuthorizedTokenIssuer": { + "members": { + "AuthorizedAudiences": { + "shape": "TokenIssuerAudiences" + }, + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + } + }, + "type": "structure" + }, + "AuthorizedTokenIssuers": { + "max": 10, + "member": { + "shape": "AuthorizedTokenIssuer" + }, + "min": 1, + "type": "list" + }, + "ClaimAttributePath": { + "max": 255, + "min": 1, + "pattern": "^\\p{L}+(?:(\\.|\\_)\\p{L}+){0,2}$", + "type": "string" + }, + "ClientToken": { + "max": 64, + "min": 1, + "pattern": "^[!-~]+$", + "type": "string" + }, + "ConflictException": { + "exception": true, + "members": { + "Message": { + "shape": "ConflictExceptionMessage" + } + }, + "type": "structure" + }, + "ConflictExceptionMessage": { + "type": "string" + }, + "CreateAccountAssignmentRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + }, + "TargetId": { + "shape": "TargetId" + }, + "TargetType": { + "shape": "TargetType" + } }, - "exception":true - }, - "ConflictExceptionMessage":{"type":"string"}, - "CreateAccountAssignmentRequest":{ - "type":"structure", - "required":[ + "required": [ "InstanceArn", "PermissionSetArn", "PrincipalId", @@ -795,74 +2803,242 @@ "TargetId", "TargetType" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "PrincipalId":{"shape":"PrincipalId"}, - "PrincipalType":{"shape":"PrincipalType"}, - "TargetId":{"shape":"TargetId"}, - "TargetType":{"shape":"TargetType"} - } - }, - "CreateAccountAssignmentResponse":{ - "type":"structure", - "members":{ - "AccountAssignmentCreationStatus":{"shape":"AccountAssignmentOperationStatus"} - } - }, - "CreateInstanceAccessControlAttributeConfigurationRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "CreateAccountAssignmentResponse": { + "members": { + "AccountAssignmentCreationStatus": { + "shape": "AccountAssignmentOperationStatus" + } + }, + "type": "structure" + }, + "CreateApplicationAssignmentRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "structure" + }, + "CreateApplicationAssignmentResponse": { + "members": {}, + "type": "structure" + }, + "CreateApplicationRequest": { + "members": { + "ApplicationProviderArn": { + "shape": "ApplicationProviderArn" + }, + "ClientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "Description": { + "shape": "Description" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "NameType" + }, + "PortalOptions": { + "shape": "PortalOptions" + }, + "Status": { + "shape": "ApplicationStatus" + }, + "Tags": { + "shape": "TagList" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "structure" + }, + "CreateApplicationResponse": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + } + }, + "type": "structure" + }, + "CreateInstanceAccessControlAttributeConfigurationRequest": { + "members": { + "InstanceAccessControlAttributeConfiguration": { + "shape": "InstanceAccessControlAttributeConfiguration" + }, + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ "InstanceAccessControlAttributeConfiguration", "InstanceArn" ], - "members":{ - "InstanceAccessControlAttributeConfiguration":{"shape":"InstanceAccessControlAttributeConfiguration"}, - "InstanceArn":{"shape":"InstanceArn"} - } + "type": "structure" }, - "CreateInstanceAccessControlAttributeConfigurationResponse":{ - "type":"structure", - "members":{ - } + "CreateInstanceAccessControlAttributeConfigurationResponse": { + "members": {}, + "type": "structure" + }, + "CreateInstanceRequest": { + "members": { + "ClientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "Name": { + "shape": "NameType" + }, + "Tags": { + "shape": "TagList" + } + }, + "type": "structure" + }, + "CreateInstanceResponse": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "type": "structure" + }, + "CreatePermissionSetRequest": { + "members": { + "Description": { + "shape": "PermissionSetDescription" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "PermissionSetName" + }, + "RelayState": { + "shape": "RelayState" + }, + "SessionDuration": { + "shape": "Duration" + }, + "Tags": { + "shape": "TagList" + } + }, + "required": [ + "InstanceArn", + "Name" + ], + "type": "structure" }, - "CreatePermissionSetRequest":{ - "type":"structure", - "required":[ + "CreatePermissionSetResponse": { + "members": { + "PermissionSet": { + "shape": "PermissionSet" + } + }, + "type": "structure" + }, + "CreateTrustedTokenIssuerRequest": { + "members": { + "ClientToken": { + "idempotencyToken": true, + "shape": "ClientToken" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "TrustedTokenIssuerName" + }, + "Tags": { + "shape": "TagList" + }, + "TrustedTokenIssuerConfiguration": { + "shape": "TrustedTokenIssuerConfiguration" + }, + "TrustedTokenIssuerType": { + "shape": "TrustedTokenIssuerType" + } + }, + "required": [ "InstanceArn", + "Name", + "TrustedTokenIssuerConfiguration", + "TrustedTokenIssuerType" + ], + "type": "structure" + }, + "CreateTrustedTokenIssuerResponse": { + "members": { + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + } + }, + "type": "structure" + }, + "CustomerManagedPolicyReference": { + "members": { + "Name": { + "shape": "ManagedPolicyName" + }, + "Path": { + "shape": "ManagedPolicyPath" + } + }, + "required": [ "Name" ], - "members":{ - "Description":{"shape":"PermissionSetDescription"}, - "InstanceArn":{"shape":"InstanceArn"}, - "Name":{"shape":"PermissionSetName"}, - "RelayState":{"shape":"RelayState"}, - "SessionDuration":{"shape":"Duration"}, - "Tags":{"shape":"TagList"} - } - }, - "CreatePermissionSetResponse":{ - "type":"structure", - "members":{ - "PermissionSet":{"shape":"PermissionSet"} - } - }, - "CustomerManagedPolicyReference":{ - "type":"structure", - "required":["Name"], - "members":{ - "Name":{"shape":"ManagedPolicyName"}, - "Path":{"shape":"ManagedPolicyPath"} - } - }, - "CustomerManagedPolicyReferenceList":{ - "type":"list", - "member":{"shape":"CustomerManagedPolicyReference"} - }, - "Date":{"type":"timestamp"}, - "DeleteAccountAssignmentRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "CustomerManagedPolicyReferenceList": { + "member": { + "shape": "CustomerManagedPolicyReference" + }, + "type": "list" + }, + "Date": { + "type": "timestamp" + }, + "DeleteAccountAssignmentRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + }, + "TargetId": { + "shape": "TargetId" + }, + "TargetType": { + "shape": "TargetType" + } + }, + "required": [ "InstanceArn", "PermissionSetArn", "PrincipalId", @@ -870,862 +3046,2386 @@ "TargetId", "TargetType" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "PrincipalId":{"shape":"PrincipalId"}, - "PrincipalType":{"shape":"PrincipalType"}, - "TargetId":{"shape":"TargetId"}, - "TargetType":{"shape":"TargetType"} - } - }, - "DeleteAccountAssignmentResponse":{ - "type":"structure", - "members":{ - "AccountAssignmentDeletionStatus":{"shape":"AccountAssignmentOperationStatus"} - } - }, - "DeleteInlinePolicyFromPermissionSetRequest":{ - "type":"structure", - "required":[ - "InstanceArn", - "PermissionSetArn" + "type": "structure" + }, + "DeleteAccountAssignmentResponse": { + "members": { + "AccountAssignmentDeletionStatus": { + "shape": "AccountAssignmentOperationStatus" + } + }, + "type": "structure" + }, + "DeleteApplicationAccessScopeRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "Scope": { + "shape": "Scope" + } + }, + "required": [ + "ApplicationArn", + "Scope" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "DeleteInlinePolicyFromPermissionSetResponse":{ - "type":"structure", - "members":{ - } + "DeleteApplicationAssignmentRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "structure" }, - "DeleteInstanceAccessControlAttributeConfigurationRequest":{ - "type":"structure", - "required":["InstanceArn"], - "members":{ - "InstanceArn":{"shape":"InstanceArn"} - } + "DeleteApplicationAssignmentResponse": { + "members": {}, + "type": "structure" + }, + "DeleteApplicationAuthenticationMethodRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "AuthenticationMethodType": { + "shape": "AuthenticationMethodType" + } + }, + "required": [ + "ApplicationArn", + "AuthenticationMethodType" + ], + "type": "structure" }, - "DeleteInstanceAccessControlAttributeConfigurationResponse":{ - "type":"structure", - "members":{ - } + "DeleteApplicationGrantRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "GrantType": { + "shape": "GrantType" + } + }, + "required": [ + "ApplicationArn", + "GrantType" + ], + "type": "structure" + }, + "DeleteApplicationRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" }, - "DeletePermissionSetRequest":{ - "type":"structure", - "required":[ + "DeleteApplicationResponse": { + "members": {}, + "type": "structure" + }, + "DeleteInlinePolicyFromPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "DeletePermissionSetResponse":{ - "type":"structure", - "members":{ - } + "DeleteInlinePolicyFromPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "DeleteInstanceAccessControlAttributeConfigurationRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "DeleteInstanceAccessControlAttributeConfigurationResponse": { + "members": {}, + "type": "structure" + }, + "DeleteInstanceRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" }, - "DeletePermissionsBoundaryFromPermissionSetRequest":{ - "type":"structure", - "required":[ + "DeleteInstanceResponse": { + "members": {}, + "type": "structure" + }, + "DeletePermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "DeletePermissionsBoundaryFromPermissionSetResponse":{ - "type":"structure", - "members":{ - } + "DeletePermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "DeletePermissionsBoundaryFromPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn" + ], + "type": "structure" + }, + "DeletePermissionsBoundaryFromPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "DeleteTrustedTokenIssuerRequest": { + "members": { + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + } + }, + "required": [ + "TrustedTokenIssuerArn" + ], + "type": "structure" }, - "DescribeAccountAssignmentCreationStatusRequest":{ - "type":"structure", - "required":[ + "DeleteTrustedTokenIssuerResponse": { + "members": {}, + "type": "structure" + }, + "DescribeAccountAssignmentCreationStatusRequest": { + "members": { + "AccountAssignmentCreationRequestId": { + "shape": "UUId" + }, + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ "AccountAssignmentCreationRequestId", "InstanceArn" ], - "members":{ - "AccountAssignmentCreationRequestId":{"shape":"UUId"}, - "InstanceArn":{"shape":"InstanceArn"} - } - }, - "DescribeAccountAssignmentCreationStatusResponse":{ - "type":"structure", - "members":{ - "AccountAssignmentCreationStatus":{"shape":"AccountAssignmentOperationStatus"} - } + "type": "structure" }, - "DescribeAccountAssignmentDeletionStatusRequest":{ - "type":"structure", - "required":[ + "DescribeAccountAssignmentCreationStatusResponse": { + "members": { + "AccountAssignmentCreationStatus": { + "shape": "AccountAssignmentOperationStatus" + } + }, + "type": "structure" + }, + "DescribeAccountAssignmentDeletionStatusRequest": { + "members": { + "AccountAssignmentDeletionRequestId": { + "shape": "UUId" + }, + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ "AccountAssignmentDeletionRequestId", "InstanceArn" ], - "members":{ - "AccountAssignmentDeletionRequestId":{"shape":"UUId"}, - "InstanceArn":{"shape":"InstanceArn"} - } + "type": "structure" }, - "DescribeAccountAssignmentDeletionStatusResponse":{ - "type":"structure", - "members":{ - "AccountAssignmentDeletionStatus":{"shape":"AccountAssignmentOperationStatus"} - } + "DescribeAccountAssignmentDeletionStatusResponse": { + "members": { + "AccountAssignmentDeletionStatus": { + "shape": "AccountAssignmentOperationStatus" + } + }, + "type": "structure" + }, + "DescribeApplicationAssignmentRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "structure" }, - "DescribeInstanceAccessControlAttributeConfigurationRequest":{ - "type":"structure", - "required":["InstanceArn"], - "members":{ - "InstanceArn":{"shape":"InstanceArn"} - } + "DescribeApplicationAssignmentResponse": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "type": "structure" + }, + "DescribeApplicationProviderRequest": { + "members": { + "ApplicationProviderArn": { + "shape": "ApplicationProviderArn" + } + }, + "required": [ + "ApplicationProviderArn" + ], + "type": "structure" }, - "DescribeInstanceAccessControlAttributeConfigurationResponse":{ - "type":"structure", - "members":{ - "InstanceAccessControlAttributeConfiguration":{"shape":"InstanceAccessControlAttributeConfiguration"}, - "Status":{"shape":"InstanceAccessControlAttributeConfigurationStatus"}, - "StatusReason":{"shape":"InstanceAccessControlAttributeConfigurationStatusReason"} - } + "DescribeApplicationProviderResponse": { + "members": { + "ApplicationProviderArn": { + "shape": "ApplicationProviderArn" + }, + "DisplayData": { + "shape": "DisplayData" + }, + "FederationProtocol": { + "shape": "FederationProtocol" + }, + "ResourceServerConfig": { + "shape": "ResourceServerConfig" + } + }, + "required": [ + "ApplicationProviderArn" + ], + "type": "structure" + }, + "DescribeApplicationRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" + }, + "DescribeApplicationResponse": { + "members": { + "ApplicationAccount": { + "shape": "AccountId" + }, + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "ApplicationProviderArn": { + "shape": "ApplicationProviderArn" + }, + "CreatedDate": { + "shape": "Date" + }, + "Description": { + "shape": "Description" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "NameType" + }, + "PortalOptions": { + "shape": "PortalOptions" + }, + "Status": { + "shape": "ApplicationStatus" + } + }, + "type": "structure" + }, + "DescribeInstanceAccessControlAttributeConfigurationRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" }, - "DescribePermissionSetProvisioningStatusRequest":{ - "type":"structure", - "required":[ + "DescribeInstanceAccessControlAttributeConfigurationResponse": { + "members": { + "InstanceAccessControlAttributeConfiguration": { + "shape": "InstanceAccessControlAttributeConfiguration" + }, + "Status": { + "shape": "InstanceAccessControlAttributeConfigurationStatus" + }, + "StatusReason": { + "shape": "InstanceAccessControlAttributeConfigurationStatusReason" + } + }, + "type": "structure" + }, + "DescribeInstanceRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "DescribeInstanceResponse": { + "members": { + "CreatedDate": { + "shape": "Date" + }, + "IdentityStoreId": { + "shape": "Id" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "NameType" + }, + "OwnerAccountId": { + "shape": "AccountId" + }, + "Status": { + "shape": "InstanceStatus" + } + }, + "type": "structure" + }, + "DescribePermissionSetProvisioningStatusRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "ProvisionPermissionSetRequestId": { + "shape": "UUId" + } + }, + "required": [ "InstanceArn", "ProvisionPermissionSetRequestId" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "ProvisionPermissionSetRequestId":{"shape":"UUId"} - } + "type": "structure" }, - "DescribePermissionSetProvisioningStatusResponse":{ - "type":"structure", - "members":{ - "PermissionSetProvisioningStatus":{"shape":"PermissionSetProvisioningStatus"} - } - }, - "DescribePermissionSetRequest":{ - "type":"structure", - "required":[ + "DescribePermissionSetProvisioningStatusResponse": { + "members": { + "PermissionSetProvisioningStatus": { + "shape": "PermissionSetProvisioningStatus" + } + }, + "type": "structure" + }, + "DescribePermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "DescribePermissionSetResponse":{ - "type":"structure", - "members":{ - "PermissionSet":{"shape":"PermissionSet"} - } + "DescribePermissionSetResponse": { + "members": { + "PermissionSet": { + "shape": "PermissionSet" + } + }, + "type": "structure" + }, + "DescribeTrustedTokenIssuerRequest": { + "members": { + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + } + }, + "required": [ + "TrustedTokenIssuerArn" + ], + "type": "structure" }, - "DetachCustomerManagedPolicyReferenceFromPermissionSetRequest":{ - "type":"structure", - "required":[ + "DescribeTrustedTokenIssuerResponse": { + "members": { + "Name": { + "shape": "TrustedTokenIssuerName" + }, + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + }, + "TrustedTokenIssuerConfiguration": { + "shape": "TrustedTokenIssuerConfiguration" + }, + "TrustedTokenIssuerType": { + "shape": "TrustedTokenIssuerType" + } + }, + "type": "structure" + }, + "Description": { + "max": 128, + "min": 1, + "type": "string" + }, + "DetachCustomerManagedPolicyReferenceFromPermissionSetRequest": { + "members": { + "CustomerManagedPolicyReference": { + "shape": "CustomerManagedPolicyReference" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "CustomerManagedPolicyReference", "InstanceArn", "PermissionSetArn" ], - "members":{ - "CustomerManagedPolicyReference":{"shape":"CustomerManagedPolicyReference"}, - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "DetachCustomerManagedPolicyReferenceFromPermissionSetResponse":{ - "type":"structure", - "members":{ - } - }, - "DetachManagedPolicyFromPermissionSetRequest":{ - "type":"structure", - "required":[ + "DetachCustomerManagedPolicyReferenceFromPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "DetachManagedPolicyFromPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "ManagedPolicyArn": { + "shape": "ManagedPolicyArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "ManagedPolicyArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "ManagedPolicyArn":{"shape":"ManagedPolicyArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } - }, - "DetachManagedPolicyFromPermissionSetResponse":{ - "type":"structure", - "members":{ - } - }, - "Duration":{ - "type":"string", - "max":100, - "min":1, - "pattern":"^(-?)P(?=\\d|T\\d)(?:(\\d+)Y)?(?:(\\d+)M)?(?:(\\d+)([DW]))?(?:T(?:(\\d+)H)?(?:(\\d+)M)?(?:(\\d+(?:\\.\\d+)?)S)?)?$" - }, - "GetInlinePolicyForPermissionSetRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "DetachManagedPolicyFromPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "DisplayData": { + "members": { + "Description": { + "shape": "Description" + }, + "DisplayName": { + "shape": "Name" + }, + "IconUrl": { + "shape": "IconUrl" + } + }, + "type": "structure" + }, + "Duration": { + "max": 100, + "min": 1, + "pattern": "^(-?)P(?=\\d|T\\d)(?:(\\d+)Y)?(?:(\\d+)M)?(?:(\\d+)([DW]))?(?:T(?:(\\d+)H)?(?:(\\d+)M)?(?:(\\d+(?:\\.\\d+)?)S)?)?$", + "type": "string" + }, + "FederationProtocol": { + "enum": [ + "SAML", + "OAUTH" + ], + "type": "string" + }, + "GetApplicationAccessScopeRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "Scope": { + "shape": "Scope" + } + }, + "required": [ + "ApplicationArn", + "Scope" + ], + "type": "structure" + }, + "GetApplicationAccessScopeResponse": { + "members": { + "AuthorizedTargets": { + "shape": "ScopeTargets" + }, + "Scope": { + "shape": "Scope" + } + }, + "required": [ + "Scope" + ], + "type": "structure" + }, + "GetApplicationAssignmentConfigurationRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" + }, + "GetApplicationAssignmentConfigurationResponse": { + "members": { + "AssignmentRequired": { + "shape": "AssignmentRequired" + } + }, + "required": [ + "AssignmentRequired" + ], + "type": "structure" + }, + "GetApplicationAuthenticationMethodRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "AuthenticationMethodType": { + "shape": "AuthenticationMethodType" + } + }, + "required": [ + "ApplicationArn", + "AuthenticationMethodType" + ], + "type": "structure" + }, + "GetApplicationAuthenticationMethodResponse": { + "members": { + "AuthenticationMethod": { + "shape": "AuthenticationMethod" + } + }, + "type": "structure" + }, + "GetApplicationGrantRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "GrantType": { + "shape": "GrantType" + } + }, + "required": [ + "ApplicationArn", + "GrantType" + ], + "type": "structure" + }, + "GetApplicationGrantResponse": { + "members": { + "Grant": { + "shape": "Grant" + } + }, + "required": [ + "Grant" + ], + "type": "structure" + }, + "GetInlinePolicyForPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "GetInlinePolicyForPermissionSetResponse":{ - "type":"structure", - "members":{ - "InlinePolicy":{"shape":"PermissionSetPolicyDocument"} - } - }, - "GetPermissionsBoundaryForPermissionSetRequest":{ - "type":"structure", - "required":[ + "GetInlinePolicyForPermissionSetResponse": { + "members": { + "InlinePolicy": { + "shape": "PermissionSetPolicyDocument" + } + }, + "type": "structure" + }, + "GetPermissionsBoundaryForPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "GetPermissionsBoundaryForPermissionSetResponse":{ - "type":"structure", - "members":{ - "PermissionsBoundary":{"shape":"PermissionsBoundary"} - } + "GetPermissionsBoundaryForPermissionSetResponse": { + "members": { + "PermissionsBoundary": { + "shape": "PermissionsBoundary" + } + }, + "type": "structure" + }, + "Grant": { + "members": { + "AuthorizationCode": { + "shape": "AuthorizationCodeGrant" + }, + "JwtBearer": { + "shape": "JwtBearerGrant" + }, + "RefreshToken": { + "shape": "RefreshTokenGrant" + }, + "TokenExchange": { + "shape": "TokenExchangeGrant" + } + }, + "type": "structure", + "union": true + }, + "GrantItem": { + "members": { + "Grant": { + "shape": "Grant" + }, + "GrantType": { + "shape": "GrantType" + } + }, + "required": [ + "Grant", + "GrantType" + ], + "type": "structure" }, - "Id":{ - "type":"string", - "max":64, - "min":1, - "pattern":"^[a-zA-Z0-9-]*$" + "GrantType": { + "enum": [ + "authorization_code", + "refresh_token", + "urn:ietf:params:oauth:grant-type:jwt-bearer", + "urn:ietf:params:oauth:grant-type:token-exchange" + ], + "type": "string" }, - "InstanceAccessControlAttributeConfiguration":{ - "type":"structure", - "required":["AccessControlAttributes"], - "members":{ - "AccessControlAttributes":{"shape":"AccessControlAttributeList"} - } + "Grants": { + "member": { + "shape": "GrantItem" + }, + "type": "list" + }, + "IconUrl": { + "max": 768, + "min": 1, + "pattern": "^(http|https):\\/\\/.*$", + "type": "string" + }, + "Id": { + "max": 64, + "min": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceAccessControlAttributeConfiguration": { + "members": { + "AccessControlAttributes": { + "shape": "AccessControlAttributeList" + } + }, + "required": [ + "AccessControlAttributes" + ], + "type": "structure" }, - "InstanceAccessControlAttributeConfigurationStatus":{ - "type":"string", - "enum":[ + "InstanceAccessControlAttributeConfigurationStatus": { + "enum": [ "ENABLED", "CREATION_IN_PROGRESS", "CREATION_FAILED" - ] + ], + "type": "string" + }, + "InstanceAccessControlAttributeConfigurationStatusReason": { + "type": "string" + }, + "InstanceArn": { + "max": 1224, + "min": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "InstanceList": { + "max": 10, + "member": { + "shape": "InstanceMetadata" + }, + "min": 0, + "type": "list" + }, + "InstanceMetadata": { + "members": { + "CreatedDate": { + "shape": "Date" + }, + "IdentityStoreId": { + "shape": "Id" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "NameType" + }, + "OwnerAccountId": { + "shape": "AccountId" + }, + "Status": { + "shape": "InstanceStatus" + } + }, + "type": "structure" + }, + "InstanceStatus": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "InternalFailureMessage": { + "type": "string" + }, + "InternalServerException": { + "exception": true, + "fault": true, + "members": { + "Message": { + "shape": "InternalFailureMessage" + } + }, + "type": "structure" + }, + "JMESPath": { + "max": 255, + "min": 1, + "pattern": "^\\p{L}+(?:\\.\\p{L}+){0,2}$", + "type": "string" + }, + "JwksRetrievalOption": { + "enum": [ + "OPEN_ID_DISCOVERY" + ], + "type": "string" + }, + "JwtBearerGrant": { + "members": { + "AuthorizedTokenIssuers": { + "shape": "AuthorizedTokenIssuers" + } + }, + "type": "structure" + }, + "ListAccountAssignmentCreationStatusRequest": { + "members": { + "Filter": { + "shape": "OperationStatusFilter" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "ListAccountAssignmentCreationStatusResponse": { + "members": { + "AccountAssignmentsCreationStatus": { + "shape": "AccountAssignmentOperationStatusList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListAccountAssignmentDeletionStatusRequest": { + "members": { + "Filter": { + "shape": "OperationStatusFilter" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "ListAccountAssignmentDeletionStatusResponse": { + "members": { + "AccountAssignmentsDeletionStatus": { + "shape": "AccountAssignmentOperationStatusList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListAccountAssignmentsFilter": { + "members": { + "AccountId": { + "shape": "AccountId" + } + }, + "type": "structure" + }, + "ListAccountAssignmentsForPrincipalRequest": { + "members": { + "Filter": { + "shape": "ListAccountAssignmentsFilter" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "required": [ + "InstanceArn", + "PrincipalId", + "PrincipalType" + ], + "type": "structure" }, - "InstanceAccessControlAttributeConfigurationStatusReason":{"type":"string"}, - "InstanceArn":{ - "type":"string", - "max":1224, - "min":10, - "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$" - }, - "InstanceList":{ - "type":"list", - "member":{"shape":"InstanceMetadata"} - }, - "InstanceMetadata":{ - "type":"structure", - "members":{ - "IdentityStoreId":{"shape":"Id"}, - "InstanceArn":{"shape":"InstanceArn"} - } - }, - "InternalFailureMessage":{"type":"string"}, - "InternalServerException":{ - "type":"structure", - "members":{ - "Message":{"shape":"InternalFailureMessage"} - }, - "exception":true, - "fault":true - }, - "ListAccountAssignmentCreationStatusRequest":{ - "type":"structure", - "required":["InstanceArn"], - "members":{ - "Filter":{"shape":"OperationStatusFilter"}, - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"} - } - }, - "ListAccountAssignmentCreationStatusResponse":{ - "type":"structure", - "members":{ - "AccountAssignmentsCreationStatus":{"shape":"AccountAssignmentOperationStatusList"}, - "NextToken":{"shape":"Token"} - } - }, - "ListAccountAssignmentDeletionStatusRequest":{ - "type":"structure", - "required":["InstanceArn"], - "members":{ - "Filter":{"shape":"OperationStatusFilter"}, - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"} - } - }, - "ListAccountAssignmentDeletionStatusResponse":{ - "type":"structure", - "members":{ - "AccountAssignmentsDeletionStatus":{"shape":"AccountAssignmentOperationStatusList"}, - "NextToken":{"shape":"Token"} - } - }, - "ListAccountAssignmentsRequest":{ - "type":"structure", - "required":[ + "ListAccountAssignmentsForPrincipalResponse": { + "members": { + "AccountAssignments": { + "shape": "AccountAssignmentListForPrincipal" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListAccountAssignmentsRequest": { + "members": { + "AccountId": { + "shape": "TargetId" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "AccountId", "InstanceArn", "PermissionSetArn" ], - "members":{ - "AccountId":{"shape":"TargetId"}, - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } - }, - "ListAccountAssignmentsResponse":{ - "type":"structure", - "members":{ - "AccountAssignments":{"shape":"AccountAssignmentList"}, - "NextToken":{"shape":"Token"} - } - }, - "ListAccountsForProvisionedPermissionSetRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "ListAccountAssignmentsResponse": { + "members": { + "AccountAssignments": { + "shape": "AccountAssignmentList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListAccountsForProvisionedPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "ProvisioningStatus": { + "shape": "ProvisioningStatus" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "ProvisioningStatus":{"shape":"ProvisioningStatus"} - } - }, - "ListAccountsForProvisionedPermissionSetResponse":{ - "type":"structure", - "members":{ - "AccountIds":{"shape":"AccountList"}, - "NextToken":{"shape":"Token"} - } - }, - "ListCustomerManagedPolicyReferencesInPermissionSetRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "ListAccountsForProvisionedPermissionSetResponse": { + "members": { + "AccountIds": { + "shape": "AccountList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListApplicationAccessScopesRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "MaxResults": { + "shape": "ListApplicationAccessScopesRequestMaxResultsInteger" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" + }, + "ListApplicationAccessScopesRequestMaxResultsInteger": { + "box": true, + "max": 10, + "min": 1, + "type": "integer" + }, + "ListApplicationAccessScopesResponse": { + "members": { + "NextToken": { + "shape": "Token" + }, + "Scopes": { + "shape": "Scopes" + } + }, + "required": [ + "Scopes" + ], + "type": "structure" + }, + "ListApplicationAssignmentsFilter": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + } + }, + "type": "structure" + }, + "ListApplicationAssignmentsForPrincipalRequest": { + "members": { + "Filter": { + "shape": "ListApplicationAssignmentsFilter" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "PrincipalId": { + "shape": "PrincipalId" + }, + "PrincipalType": { + "shape": "PrincipalType" + } + }, + "required": [ "InstanceArn", - "PermissionSetArn" + "PrincipalId", + "PrincipalType" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } + "type": "structure" }, - "ListCustomerManagedPolicyReferencesInPermissionSetResponse":{ - "type":"structure", - "members":{ - "CustomerManagedPolicyReferences":{"shape":"CustomerManagedPolicyReferenceList"}, - "NextToken":{"shape":"Token"} - } + "ListApplicationAssignmentsForPrincipalResponse": { + "members": { + "ApplicationAssignments": { + "shape": "ApplicationAssignmentListForPrincipal" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListApplicationAssignmentsRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" }, - "ListInstancesRequest":{ - "type":"structure", - "members":{ - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"} - } + "ListApplicationAssignmentsResponse": { + "members": { + "ApplicationAssignments": { + "shape": "ApplicationAssignmentsList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListApplicationAuthenticationMethodsRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" }, - "ListInstancesResponse":{ - "type":"structure", - "members":{ - "Instances":{"shape":"InstanceList"}, - "NextToken":{"shape":"Token"} - } + "ListApplicationAuthenticationMethodsResponse": { + "members": { + "AuthenticationMethods": { + "shape": "AuthenticationMethods" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListApplicationGrantsRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" }, - "ListManagedPoliciesInPermissionSetRequest":{ - "type":"structure", - "required":[ + "ListApplicationGrantsResponse": { + "members": { + "Grants": { + "shape": "Grants" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "Grants" + ], + "type": "structure" + }, + "ListApplicationProvidersRequest": { + "members": { + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListApplicationProvidersResponse": { + "members": { + "ApplicationProviders": { + "shape": "ApplicationProviderList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListApplicationsFilter": { + "members": { + "ApplicationAccount": { + "shape": "AccountId" + }, + "ApplicationProvider": { + "shape": "ApplicationProviderArn" + } + }, + "type": "structure" + }, + "ListApplicationsRequest": { + "members": { + "Filter": { + "shape": "ListApplicationsFilter" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "ListApplicationsResponse": { + "members": { + "Applications": { + "shape": "ApplicationList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListCustomerManagedPolicyReferencesInPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn" + ], + "type": "structure" + }, + "ListCustomerManagedPolicyReferencesInPermissionSetResponse": { + "members": { + "CustomerManagedPolicyReferences": { + "shape": "CustomerManagedPolicyReferenceList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListInstancesRequest": { + "members": { + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListInstancesResponse": { + "members": { + "Instances": { + "shape": "InstanceList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListManagedPoliciesInPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } - }, - "ListManagedPoliciesInPermissionSetResponse":{ - "type":"structure", - "members":{ - "AttachedManagedPolicies":{"shape":"AttachedManagedPolicyList"}, - "NextToken":{"shape":"Token"} - } - }, - "ListPermissionSetProvisioningStatusRequest":{ - "type":"structure", - "required":["InstanceArn"], - "members":{ - "Filter":{"shape":"OperationStatusFilter"}, - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"} - } - }, - "ListPermissionSetProvisioningStatusResponse":{ - "type":"structure", - "members":{ - "NextToken":{"shape":"Token"}, - "PermissionSetsProvisioningStatus":{"shape":"PermissionSetProvisioningStatusList"} - } - }, - "ListPermissionSetsProvisionedToAccountRequest":{ - "type":"structure", - "required":[ + "type": "structure" + }, + "ListManagedPoliciesInPermissionSetResponse": { + "members": { + "AttachedManagedPolicies": { + "shape": "AttachedManagedPolicyList" + }, + "NextToken": { + "shape": "Token" + } + }, + "type": "structure" + }, + "ListPermissionSetProvisioningStatusRequest": { + "members": { + "Filter": { + "shape": "OperationStatusFilter" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "ListPermissionSetProvisioningStatusResponse": { + "members": { + "NextToken": { + "shape": "Token" + }, + "PermissionSetsProvisioningStatus": { + "shape": "PermissionSetProvisioningStatusList" + } + }, + "type": "structure" + }, + "ListPermissionSetsProvisionedToAccountRequest": { + "members": { + "AccountId": { + "shape": "AccountId" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + }, + "ProvisioningStatus": { + "shape": "ProvisioningStatus" + } + }, + "required": [ "AccountId", "InstanceArn" ], - "members":{ - "AccountId":{"shape":"AccountId"}, - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"}, - "ProvisioningStatus":{"shape":"ProvisioningStatus"} - } - }, - "ListPermissionSetsProvisionedToAccountResponse":{ - "type":"structure", - "members":{ - "NextToken":{"shape":"Token"}, - "PermissionSets":{"shape":"PermissionSetList"} - } - }, - "ListPermissionSetsRequest":{ - "type":"structure", - "required":["InstanceArn"], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "MaxResults":{"shape":"MaxResults"}, - "NextToken":{"shape":"Token"} - } - }, - "ListPermissionSetsResponse":{ - "type":"structure", - "members":{ - "NextToken":{"shape":"Token"}, - "PermissionSets":{"shape":"PermissionSetList"} - } - }, - "ListTagsForResourceRequest":{ - "type":"structure", - "required":[ - "InstanceArn", + "type": "structure" + }, + "ListPermissionSetsProvisionedToAccountResponse": { + "members": { + "NextToken": { + "shape": "Token" + }, + "PermissionSets": { + "shape": "PermissionSetList" + } + }, + "type": "structure" + }, + "ListPermissionSetsRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "ListPermissionSetsResponse": { + "members": { + "NextToken": { + "shape": "Token" + }, + "PermissionSets": { + "shape": "PermissionSetList" + } + }, + "type": "structure" + }, + "ListTagsForResourceRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "NextToken": { + "shape": "Token" + }, + "ResourceArn": { + "shape": "TaggableResourceArn" + } + }, + "required": [ "ResourceArn" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "NextToken":{"shape":"Token"}, - "ResourceArn":{"shape":"TaggableResourceArn"} - } - }, - "ListTagsForResourceResponse":{ - "type":"structure", - "members":{ - "NextToken":{"shape":"Token"}, - "Tags":{"shape":"TagList"} - } - }, - "ManagedPolicyArn":{ - "type":"string", - "max":2048, - "min":20, - "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):iam::aws:policy/[\\p{L}\\p{M}\\p{Z}\\p{S}\\p{N}\\p{P}]+$" - }, - "ManagedPolicyName":{ - "type":"string", - "max":128, - "min":1, - "pattern":"^[\\w+=,.@-]+$" - }, - "ManagedPolicyPath":{ - "type":"string", - "max":512, - "min":1, - "pattern":"^((/[A-Za-z0-9\\.,\\+@=_-]+)*)/$" - }, - "MaxResults":{ - "type":"integer", - "box":true, - "max":100, - "min":1 - }, - "Name":{ - "type":"string", - "max":100, - "min":1 - }, - "OperationStatusFilter":{ - "type":"structure", - "members":{ - "Status":{"shape":"StatusValues"} - } - }, - "PermissionSet":{ - "type":"structure", - "members":{ - "CreatedDate":{"shape":"Date"}, - "Description":{"shape":"PermissionSetDescription"}, - "Name":{"shape":"PermissionSetName"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "RelayState":{"shape":"RelayState"}, - "SessionDuration":{"shape":"Duration"} - } - }, - "PermissionSetArn":{ - "type":"string", - "max":1224, - "min":10, - "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::permissionSet/(sso)?ins-[a-zA-Z0-9-.]{16}/ps-[a-zA-Z0-9-./]{16}$" - }, - "PermissionSetDescription":{ - "type":"string", - "max":700, - "min":1, - "pattern":"^[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u00A1-\\u00FF]*$" - }, - "PermissionSetList":{ - "type":"list", - "member":{"shape":"PermissionSetArn"} - }, - "PermissionSetName":{ - "type":"string", - "max":32, - "min":1, - "pattern":"^[\\w+=,.@-]+$" - }, - "PermissionSetPolicyDocument":{ - "type":"string", - "max":32768, - "min":1, - "pattern":"^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+$" - }, - "PermissionSetProvisioningStatus":{ - "type":"structure", - "members":{ - "AccountId":{"shape":"AccountId"}, - "CreatedDate":{"shape":"Date"}, - "FailureReason":{"shape":"Reason"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "RequestId":{"shape":"UUId"}, - "Status":{"shape":"StatusValues"} - } - }, - "PermissionSetProvisioningStatusList":{ - "type":"list", - "member":{"shape":"PermissionSetProvisioningStatusMetadata"} - }, - "PermissionSetProvisioningStatusMetadata":{ - "type":"structure", - "members":{ - "CreatedDate":{"shape":"Date"}, - "RequestId":{"shape":"UUId"}, - "Status":{"shape":"StatusValues"} - } - }, - "PermissionsBoundary":{ - "type":"structure", - "members":{ - "CustomerManagedPolicyReference":{"shape":"CustomerManagedPolicyReference"}, - "ManagedPolicyArn":{"shape":"ManagedPolicyArn"} - } - }, - "PrincipalId":{ - "type":"string", - "max":47, - "min":1, - "pattern":"^([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$" - }, - "PrincipalType":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "ListTagsForResourceResponse": { + "members": { + "NextToken": { + "shape": "Token" + }, + "Tags": { + "shape": "TagList" + } + }, + "type": "structure" + }, + "ListTrustedTokenIssuersRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "MaxResults": { + "shape": "MaxResults" + }, + "NextToken": { + "shape": "Token" + } + }, + "required": [ + "InstanceArn" + ], + "type": "structure" + }, + "ListTrustedTokenIssuersResponse": { + "members": { + "NextToken": { + "shape": "Token" + }, + "TrustedTokenIssuers": { + "shape": "TrustedTokenIssuerList" + } + }, + "type": "structure" + }, + "ManagedPolicyArn": { + "max": 2048, + "min": 20, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):iam::aws:policy/[\\p{L}\\p{M}\\p{Z}\\p{S}\\p{N}\\p{P}]+$", + "type": "string" + }, + "ManagedPolicyName": { + "max": 128, + "min": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "ManagedPolicyPath": { + "max": 512, + "min": 1, + "pattern": "^((/[A-Za-z0-9\\.,\\+@=_-]+)*)/$", + "type": "string" + }, + "MaxResults": { + "box": true, + "max": 100, + "min": 1, + "type": "integer" + }, + "Name": { + "max": 100, + "min": 1, + "type": "string" + }, + "NameType": { + "max": 255, + "min": 0, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OidcJwtConfiguration": { + "members": { + "ClaimAttributePath": { + "shape": "ClaimAttributePath" + }, + "IdentityStoreAttributePath": { + "shape": "JMESPath" + }, + "IssuerUrl": { + "shape": "TrustedTokenIssuerUrl" + }, + "JwksRetrievalOption": { + "shape": "JwksRetrievalOption" + } + }, + "required": [ + "ClaimAttributePath", + "IdentityStoreAttributePath", + "IssuerUrl", + "JwksRetrievalOption" + ], + "type": "structure" + }, + "OidcJwtUpdateConfiguration": { + "members": { + "ClaimAttributePath": { + "shape": "ClaimAttributePath" + }, + "IdentityStoreAttributePath": { + "shape": "JMESPath" + }, + "JwksRetrievalOption": { + "shape": "JwksRetrievalOption" + } + }, + "type": "structure" + }, + "OperationStatusFilter": { + "members": { + "Status": { + "shape": "StatusValues" + } + }, + "type": "structure" + }, + "PermissionSet": { + "members": { + "CreatedDate": { + "shape": "Date" + }, + "Description": { + "shape": "PermissionSetDescription" + }, + "Name": { + "shape": "PermissionSetName" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "RelayState": { + "shape": "RelayState" + }, + "SessionDuration": { + "shape": "Duration" + } + }, + "type": "structure" + }, + "PermissionSetArn": { + "max": 1224, + "min": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::permissionSet/(sso)?ins-[a-zA-Z0-9-.]{16}/ps-[a-zA-Z0-9-./]{16}$", + "type": "string" + }, + "PermissionSetDescription": { + "max": 700, + "min": 1, + "pattern": "^[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u00A1-\\u00FF]*$", + "type": "string" + }, + "PermissionSetList": { + "member": { + "shape": "PermissionSetArn" + }, + "type": "list" + }, + "PermissionSetName": { + "max": 32, + "min": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "PermissionSetPolicyDocument": { + "max": 32768, + "min": 1, + "pattern": "^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+$", + "type": "string" + }, + "PermissionSetProvisioningStatus": { + "members": { + "AccountId": { + "shape": "AccountId" + }, + "CreatedDate": { + "shape": "Date" + }, + "FailureReason": { + "shape": "Reason" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "RequestId": { + "shape": "UUId" + }, + "Status": { + "shape": "StatusValues" + } + }, + "type": "structure" + }, + "PermissionSetProvisioningStatusList": { + "member": { + "shape": "PermissionSetProvisioningStatusMetadata" + }, + "type": "list" + }, + "PermissionSetProvisioningStatusMetadata": { + "members": { + "CreatedDate": { + "shape": "Date" + }, + "RequestId": { + "shape": "UUId" + }, + "Status": { + "shape": "StatusValues" + } + }, + "type": "structure" + }, + "PermissionsBoundary": { + "members": { + "CustomerManagedPolicyReference": { + "shape": "CustomerManagedPolicyReference" + }, + "ManagedPolicyArn": { + "shape": "ManagedPolicyArn" + } + }, + "type": "structure" + }, + "PortalOptions": { + "members": { + "SignInOptions": { + "shape": "SignInOptions" + }, + "Visibility": { + "shape": "ApplicationVisibility" + } + }, + "type": "structure" + }, + "PrincipalId": { + "max": 47, + "min": 1, + "pattern": "^([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$", + "type": "string" + }, + "PrincipalType": { + "enum": [ "USER", "GROUP" - ] + ], + "type": "string" }, - "ProvisionPermissionSetRequest":{ - "type":"structure", - "required":[ + "ProvisionPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "TargetId": { + "shape": "TargetId" + }, + "TargetType": { + "shape": "ProvisionTargetType" + } + }, + "required": [ "InstanceArn", "PermissionSetArn", "TargetType" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "TargetId":{"shape":"TargetId"}, - "TargetType":{"shape":"ProvisionTargetType"} - } - }, - "ProvisionPermissionSetResponse":{ - "type":"structure", - "members":{ - "PermissionSetProvisioningStatus":{"shape":"PermissionSetProvisioningStatus"} - } - }, - "ProvisionTargetType":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "ProvisionPermissionSetResponse": { + "members": { + "PermissionSetProvisioningStatus": { + "shape": "PermissionSetProvisioningStatus" + } + }, + "type": "structure" + }, + "ProvisionTargetType": { + "enum": [ "AWS_ACCOUNT", "ALL_PROVISIONED_ACCOUNTS" - ] + ], + "type": "string" }, - "ProvisioningStatus":{ - "type":"string", - "enum":[ + "ProvisioningStatus": { + "enum": [ "LATEST_PERMISSION_SET_PROVISIONED", "LATEST_PERMISSION_SET_NOT_PROVISIONED" - ] + ], + "type": "string" + }, + "PutApplicationAccessScopeRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "AuthorizedTargets": { + "shape": "ScopeTargets" + }, + "Scope": { + "shape": "Scope" + } + }, + "required": [ + "ApplicationArn", + "Scope" + ], + "type": "structure" + }, + "PutApplicationAssignmentConfigurationRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "AssignmentRequired": { + "shape": "AssignmentRequired" + } + }, + "required": [ + "ApplicationArn", + "AssignmentRequired" + ], + "type": "structure" + }, + "PutApplicationAssignmentConfigurationResponse": { + "members": {}, + "type": "structure" + }, + "PutApplicationAuthenticationMethodRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "AuthenticationMethod": { + "shape": "AuthenticationMethod" + }, + "AuthenticationMethodType": { + "shape": "AuthenticationMethodType" + } + }, + "required": [ + "ApplicationArn", + "AuthenticationMethod", + "AuthenticationMethodType" + ], + "type": "structure" }, - "PutInlinePolicyToPermissionSetRequest":{ - "type":"structure", - "required":[ + "PutApplicationGrantRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "Grant": { + "shape": "Grant" + }, + "GrantType": { + "shape": "GrantType" + } + }, + "required": [ + "ApplicationArn", + "Grant", + "GrantType" + ], + "type": "structure" + }, + "PutInlinePolicyToPermissionSetRequest": { + "members": { + "InlinePolicy": { + "shape": "PermissionSetPolicyDocument" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + } + }, + "required": [ "InlinePolicy", "InstanceArn", "PermissionSetArn" ], - "members":{ - "InlinePolicy":{"shape":"PermissionSetPolicyDocument"}, - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"} - } - }, - "PutInlinePolicyToPermissionSetResponse":{ - "type":"structure", - "members":{ - } + "type": "structure" }, - "PutPermissionsBoundaryToPermissionSetRequest":{ - "type":"structure", - "required":[ + "PutInlinePolicyToPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "PutPermissionsBoundaryToPermissionSetRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "PermissionsBoundary": { + "shape": "PermissionsBoundary" + } + }, + "required": [ "InstanceArn", "PermissionSetArn", "PermissionsBoundary" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "PermissionsBoundary":{"shape":"PermissionsBoundary"} - } - }, - "PutPermissionsBoundaryToPermissionSetResponse":{ - "type":"structure", - "members":{ - } - }, - "Reason":{ - "type":"string", - "pattern":"^[\\p{L}\\p{M}\\p{Z}\\p{S}\\p{N}\\p{P}]*$" - }, - "RelayState":{ - "type":"string", - "max":240, - "min":1, - "pattern":"^[a-zA-Z0-9&$@#\\\\\\/%?=~\\-_'\"|!:,.;*+\\[\\]\\ \\(\\)\\{\\}]+$" - }, - "ResourceNotFoundException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ResourceNotFoundMessage"} - }, - "exception":true - }, - "ResourceNotFoundMessage":{"type":"string"}, - "ServiceQuotaExceededException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ServiceQuotaExceededMessage"} - }, - "exception":true - }, - "ServiceQuotaExceededMessage":{"type":"string"}, - "StatusValues":{ - "type":"string", - "enum":[ + "type": "structure" + }, + "PutPermissionsBoundaryToPermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "Reason": { + "pattern": "^[\\p{L}\\p{M}\\p{Z}\\p{S}\\p{N}\\p{P}]*$", + "type": "string" + }, + "RedirectUris": { + "max": 10, + "member": { + "shape": "URI" + }, + "min": 1, + "type": "list" + }, + "RefreshTokenGrant": { + "members": {}, + "type": "structure" + }, + "RelayState": { + "max": 240, + "min": 1, + "pattern": "^[a-zA-Z0-9\u0026$@#\\\\\\/%?=~\\-_'\"|!:,.;*+\\[\\]\\ \\(\\)\\{\\}]+$", + "type": "string" + }, + "ResourceNotFoundException": { + "exception": true, + "members": { + "Message": { + "shape": "ResourceNotFoundMessage" + } + }, + "type": "structure" + }, + "ResourceNotFoundMessage": { + "type": "string" + }, + "ResourceServerConfig": { + "members": { + "Scopes": { + "shape": "ResourceServerScopes" + } + }, + "type": "structure" + }, + "ResourceServerScope": { + "max": 80, + "min": 1, + "pattern": "^[^:=\\-\\.\\s][0-9a-zA-Z_:\\-\\.]+$", + "type": "string" + }, + "ResourceServerScopeDetails": { + "members": { + "DetailedTitle": { + "shape": "Description" + }, + "LongDescription": { + "shape": "Description" + } + }, + "type": "structure" + }, + "ResourceServerScopes": { + "key": { + "shape": "ResourceServerScope" + }, + "type": "map", + "value": { + "shape": "ResourceServerScopeDetails" + } + }, + "Scope": { + "pattern": "^([A-Za-z0-9_]{1,50})(:[A-Za-z0-9_]{1,50}){0,1}(:[A-Za-z0-9_]{1,50}){0,1}$", + "type": "string" + }, + "ScopeDetails": { + "members": { + "AuthorizedTargets": { + "shape": "ScopeTargets" + }, + "Scope": { + "shape": "Scope" + } + }, + "required": [ + "Scope" + ], + "type": "structure" + }, + "ScopeTarget": { + "max": 100, + "min": 1, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::(\\d{12}:application/(sso)?ins-[a-zA-Z0-9-.]{16}/apl-[a-zA-Z0-9]{16}|:instance/(sso)?ins-[a-zA-Z0-9-.]{16})$", + "type": "string" + }, + "ScopeTargets": { + "max": 10, + "member": { + "shape": "ScopeTarget" + }, + "min": 1, + "type": "list" + }, + "Scopes": { + "max": 10, + "member": { + "shape": "ScopeDetails" + }, + "min": 0, + "type": "list" + }, + "ServiceQuotaExceededException": { + "exception": true, + "members": { + "Message": { + "shape": "ServiceQuotaExceededMessage" + } + }, + "type": "structure" + }, + "ServiceQuotaExceededMessage": { + "type": "string" + }, + "SignInOptions": { + "members": { + "ApplicationUrl": { + "shape": "ApplicationUrl" + }, + "Origin": { + "shape": "SignInOrigin" + } + }, + "required": [ + "Origin" + ], + "type": "structure" + }, + "SignInOrigin": { + "enum": [ + "IDENTITY_CENTER", + "APPLICATION" + ], + "type": "string" + }, + "StatusValues": { + "enum": [ "IN_PROGRESS", "FAILED", "SUCCEEDED" - ] + ], + "type": "string" }, - "Tag":{ - "type":"structure", - "required":[ + "Tag": { + "members": { + "Key": { + "shape": "TagKey" + }, + "Value": { + "shape": "TagValue" + } + }, + "required": [ "Key", "Value" ], - "members":{ - "Key":{"shape":"TagKey"}, - "Value":{"shape":"TagValue"} - } - }, - "TagKey":{ - "type":"string", - "max":128, - "min":1, - "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" - }, - "TagKeyList":{ - "type":"list", - "member":{"shape":"TagKey"}, - "max":50, - "min":1 - }, - "TagList":{ - "type":"list", - "member":{"shape":"Tag"}, - "max":50, - "min":0 - }, - "TagResourceRequest":{ - "type":"structure", - "required":[ - "InstanceArn", + "type": "structure" + }, + "TagKey": { + "max": 128, + "min": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "TagKeyList": { + "max": 75, + "member": { + "shape": "TagKey" + }, + "min": 1, + "type": "list" + }, + "TagList": { + "max": 75, + "member": { + "shape": "Tag" + }, + "min": 0, + "type": "list" + }, + "TagResourceRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "ResourceArn": { + "shape": "TaggableResourceArn" + }, + "Tags": { + "shape": "TagList" + } + }, + "required": [ "ResourceArn", "Tags" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "ResourceArn":{"shape":"TaggableResourceArn"}, - "Tags":{"shape":"TagList"} - } - }, - "TagResourceResponse":{ - "type":"structure", - "members":{ - } - }, - "TagValue":{ - "type":"string", - "max":256, - "min":0, - "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" - }, - "TaggableResourceArn":{ - "type":"string", - "max":2048, - "min":10, - "pattern":"^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::permissionSet/(sso)?ins-[a-zA-Z0-9-.]{16}/ps-[a-zA-Z0-9-./]{16}$" - }, - "TargetId":{ - "type":"string", - "max":12, - "min":12, - "pattern":"^\\d{12}$" - }, - "TargetType":{ - "type":"string", - "enum":["AWS_ACCOUNT"] - }, - "ThrottlingException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ThrottlingExceptionMessage"} - }, - "exception":true - }, - "ThrottlingExceptionMessage":{"type":"string"}, - "Token":{ - "type":"string", - "max":2048, - "min":0, - "pattern":"^[-a-zA-Z0-9+=/_]*$" - }, - "UUId":{ - "type":"string", - "max":36, - "min":36, - "pattern":"^\\b[0-9a-f]{8}\\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\\b[0-9a-f]{12}\\b$" - }, - "UntagResourceRequest":{ - "type":"structure", - "required":[ - "InstanceArn", + "type": "structure" + }, + "TagResourceResponse": { + "members": {}, + "type": "structure" + }, + "TagValue": { + "max": 256, + "min": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "TaggableResourceArn": { + "max": 2048, + "min": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::((:instance/(sso)?ins-[a-zA-Z0-9-.]{16})|(:permissionSet/(sso)?ins-[a-zA-Z0-9-.]{16}/ps-[a-zA-Z0-9-./]{16})|(\\d{12}:application/(sso)?ins-[a-zA-Z0-9-.]{16}/apl-[a-zA-Z0-9]{16})|(\\d{12}:trustedTokenIssuer/(sso)?ins-[a-zA-Z0-9-.]{16}/tti-[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}))$", + "type": "string" + }, + "TargetId": { + "max": 12, + "min": 12, + "pattern": "^\\d{12}$", + "type": "string" + }, + "TargetType": { + "enum": [ + "AWS_ACCOUNT" + ], + "type": "string" + }, + "ThrottlingException": { + "exception": true, + "members": { + "Message": { + "shape": "ThrottlingExceptionMessage" + } + }, + "type": "structure" + }, + "ThrottlingExceptionMessage": { + "type": "string" + }, + "Token": { + "max": 2048, + "min": 0, + "pattern": "^[-a-zA-Z0-9+=/_]*$", + "type": "string" + }, + "TokenExchangeGrant": { + "members": {}, + "type": "structure" + }, + "TokenIssuerAudience": { + "max": 512, + "min": 1, + "type": "string" + }, + "TokenIssuerAudiences": { + "max": 10, + "member": { + "shape": "TokenIssuerAudience" + }, + "min": 1, + "type": "list" + }, + "TrustedTokenIssuerArn": { + "max": 1224, + "min": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::\\d{12}:trustedTokenIssuer/(sso)?ins-[a-zA-Z0-9-.]{16}/tti-[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$", + "type": "string" + }, + "TrustedTokenIssuerConfiguration": { + "members": { + "OidcJwtConfiguration": { + "shape": "OidcJwtConfiguration" + } + }, + "type": "structure", + "union": true + }, + "TrustedTokenIssuerList": { + "member": { + "shape": "TrustedTokenIssuerMetadata" + }, + "type": "list" + }, + "TrustedTokenIssuerMetadata": { + "members": { + "Name": { + "shape": "TrustedTokenIssuerName" + }, + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + }, + "TrustedTokenIssuerType": { + "shape": "TrustedTokenIssuerType" + } + }, + "type": "structure" + }, + "TrustedTokenIssuerName": { + "max": 255, + "min": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "TrustedTokenIssuerType": { + "enum": [ + "OIDC_JWT" + ], + "type": "string" + }, + "TrustedTokenIssuerUpdateConfiguration": { + "members": { + "OidcJwtConfiguration": { + "shape": "OidcJwtUpdateConfiguration" + } + }, + "type": "structure", + "union": true + }, + "TrustedTokenIssuerUrl": { + "max": 512, + "min": 1, + "pattern": "^https?:\\/\\/[-a-zA-Z0-9+\u0026@\\/%=~_|!:,.;]*[-a-zA-Z0-9+\u0026@\\/%=~_|]$", + "type": "string" + }, + "URI": { + "type": "string" + }, + "UUId": { + "max": 36, + "min": 36, + "pattern": "^\\b[0-9a-f]{8}\\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\\b[0-9a-f]{12}\\b$", + "type": "string" + }, + "UntagResourceRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "ResourceArn": { + "shape": "TaggableResourceArn" + }, + "TagKeys": { + "shape": "TagKeyList" + } + }, + "required": [ "ResourceArn", "TagKeys" ], - "members":{ - "InstanceArn":{"shape":"InstanceArn"}, - "ResourceArn":{"shape":"TaggableResourceArn"}, - "TagKeys":{"shape":"TagKeyList"} - } + "type": "structure" }, - "UntagResourceResponse":{ - "type":"structure", - "members":{ - } + "UntagResourceResponse": { + "members": {}, + "type": "structure" + }, + "UpdateApplicationPortalOptions": { + "members": { + "SignInOptions": { + "shape": "SignInOptions" + } + }, + "type": "structure" + }, + "UpdateApplicationRequest": { + "members": { + "ApplicationArn": { + "shape": "ApplicationArn" + }, + "Description": { + "shape": "Description" + }, + "Name": { + "shape": "NameType" + }, + "PortalOptions": { + "shape": "UpdateApplicationPortalOptions" + }, + "Status": { + "shape": "ApplicationStatus" + } + }, + "required": [ + "ApplicationArn" + ], + "type": "structure" }, - "UpdateInstanceAccessControlAttributeConfigurationRequest":{ - "type":"structure", - "required":[ + "UpdateApplicationResponse": { + "members": {}, + "type": "structure" + }, + "UpdateInstanceAccessControlAttributeConfigurationRequest": { + "members": { + "InstanceAccessControlAttributeConfiguration": { + "shape": "InstanceAccessControlAttributeConfiguration" + }, + "InstanceArn": { + "shape": "InstanceArn" + } + }, + "required": [ "InstanceAccessControlAttributeConfiguration", "InstanceArn" ], - "members":{ - "InstanceAccessControlAttributeConfiguration":{"shape":"InstanceAccessControlAttributeConfiguration"}, - "InstanceArn":{"shape":"InstanceArn"} - } + "type": "structure" }, - "UpdateInstanceAccessControlAttributeConfigurationResponse":{ - "type":"structure", - "members":{ - } + "UpdateInstanceAccessControlAttributeConfigurationResponse": { + "members": {}, + "type": "structure" + }, + "UpdateInstanceRequest": { + "members": { + "InstanceArn": { + "shape": "InstanceArn" + }, + "Name": { + "shape": "NameType" + } + }, + "required": [ + "InstanceArn", + "Name" + ], + "type": "structure" }, - "UpdatePermissionSetRequest":{ - "type":"structure", - "required":[ + "UpdateInstanceResponse": { + "members": {}, + "type": "structure" + }, + "UpdatePermissionSetRequest": { + "members": { + "Description": { + "shape": "PermissionSetDescription" + }, + "InstanceArn": { + "shape": "InstanceArn" + }, + "PermissionSetArn": { + "shape": "PermissionSetArn" + }, + "RelayState": { + "shape": "RelayState" + }, + "SessionDuration": { + "shape": "Duration" + } + }, + "required": [ "InstanceArn", "PermissionSetArn" ], - "members":{ - "Description":{"shape":"PermissionSetDescription"}, - "InstanceArn":{"shape":"InstanceArn"}, - "PermissionSetArn":{"shape":"PermissionSetArn"}, - "RelayState":{"shape":"RelayState"}, - "SessionDuration":{"shape":"Duration"} - } + "type": "structure" }, - "UpdatePermissionSetResponse":{ - "type":"structure", - "members":{ - } + "UpdatePermissionSetResponse": { + "members": {}, + "type": "structure" + }, + "UpdateTrustedTokenIssuerRequest": { + "members": { + "Name": { + "shape": "TrustedTokenIssuerName" + }, + "TrustedTokenIssuerArn": { + "shape": "TrustedTokenIssuerArn" + }, + "TrustedTokenIssuerConfiguration": { + "shape": "TrustedTokenIssuerUpdateConfiguration" + } + }, + "required": [ + "TrustedTokenIssuerArn" + ], + "type": "structure" }, - "ValidationException":{ - "type":"structure", - "members":{ - "Message":{"shape":"ValidationExceptionMessage"} + "UpdateTrustedTokenIssuerResponse": { + "members": {}, + "type": "structure" + }, + "ValidationException": { + "exception": true, + "members": { + "Message": { + "shape": "ValidationExceptionMessage" + } }, - "exception":true + "type": "structure" }, - "ValidationExceptionMessage":{"type":"string"} - } -} + "ValidationExceptionMessage": { + "type": "string" + } + }, + "version": "2.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,40 +5,76 @@ "AttachCustomerManagedPolicyReferenceToPermissionSet": "

Attaches the specified customer managed policy to the specified PermissionSet.

", "AttachManagedPolicyToPermissionSet": "

Attaches an Amazon Web Services managed policy ARN to a permission set.

If the permission set is already referenced by one or more account assignments, you will need to call ProvisionPermissionSet after this operation. Calling ProvisionPermissionSet applies the corresponding IAM policy updates to all assigned accounts.

", "CreateAccountAssignment": "

Assigns access to a principal for a specified Amazon Web Services account using a specified permission set.

The term principal here refers to a user or group that is defined in IAM Identity Center.

As part of a successful CreateAccountAssignment call, the specified permission set will automatically be provisioned to the account in the form of an IAM policy. That policy is attached to the IAM role created in IAM Identity Center. If the permission set is subsequently updated, the corresponding IAM policies attached to roles in your accounts will not be updated automatically. In this case, you must call ProvisionPermissionSet to make these updates.

After a successful response, call DescribeAccountAssignmentCreationStatus to describe the status of an assignment creation request.

", + "CreateApplication": "

Creates an application in IAM Identity Center for the given application provider.

", + "CreateApplicationAssignment": "

Grant application access to a user or group.

", + "CreateInstance": "

Creates an instance of IAM Identity Center for a standalone Amazon Web Services account that is not managed by Organizations or a member Amazon Web Services account in an organization. You can create only one instance per account and across all Amazon Web Services Regions.

The CreateInstance request is rejected if the following apply:

  • The instance is created within the organization management account.

  • An instance already exists in the same account.

", "CreateInstanceAccessControlAttributeConfiguration": "

Enables the attributes-based access control (ABAC) feature for the specified IAM Identity Center instance. You can also specify new attributes to add to your ABAC configuration during the enabling process. For more information about ABAC, see Attribute-Based Access Control in the IAM Identity Center User Guide.

After a successful response, call DescribeInstanceAccessControlAttributeConfiguration to validate that InstanceAccessControlAttributeConfiguration was created.

", "CreatePermissionSet": "

Creates a permission set within a specified IAM Identity Center instance.

To grant users and groups access to Amazon Web Services account resources, use CreateAccountAssignment .

", + "CreateTrustedTokenIssuer": "

Creates a connection to a trusted token issuer in an instance of IAM Identity Center. A trusted token issuer enables trusted identity propagation to be used with applications that authenticate outside of Amazon Web Services.

This trusted token issuer describes an external identity provider (IdP) that can generate claims or assertions in the form of access tokens for a user. Applications enabled for IAM Identity Center can use these tokens for authentication.

", "DeleteAccountAssignment": "

Deletes a principal's access from a specified Amazon Web Services account using a specified permission set.

After a successful response, call DescribeAccountAssignmentDeletionStatus to describe the status of an assignment deletion request.

", + "DeleteApplication": "

Deletes the association with the application. The connected service resource still exists.

", + "DeleteApplicationAccessScope": "

Deletes an IAM Identity Center access scope from an application.

", + "DeleteApplicationAssignment": "

Revoke application access to an application by deleting application assignments for a user or group.

", + "DeleteApplicationAuthenticationMethod": "

Deletes an authentication method from an application.

", + "DeleteApplicationGrant": "

Deletes a grant from an application.

", "DeleteInlinePolicyFromPermissionSet": "

Deletes the inline policy from a specified permission set.

", + "DeleteInstance": "

Deletes the instance of IAM Identity Center. Only the account that owns the instance can call this API. Neither the delegated administrator nor member account can delete the organization instance, but those roles can delete their own instance.

", "DeleteInstanceAccessControlAttributeConfiguration": "

Disables the attributes-based access control (ABAC) feature for the specified IAM Identity Center instance and deletes all of the attribute mappings that have been configured. Once deleted, any attributes that are received from an identity source and any custom attributes you have previously configured will not be passed. For more information about ABAC, see Attribute-Based Access Control in the IAM Identity Center User Guide.

", "DeletePermissionSet": "

Deletes the specified permission set.

", "DeletePermissionsBoundaryFromPermissionSet": "

Deletes the permissions boundary from a specified PermissionSet.

", + "DeleteTrustedTokenIssuer": "

Deletes a trusted token issuer configuration from an instance of IAM Identity Center.

Deleting this trusted token issuer configuration will cause users to lose access to any applications that are configured to use the trusted token issuer.

", "DescribeAccountAssignmentCreationStatus": "

Describes the status of the assignment creation request.

", "DescribeAccountAssignmentDeletionStatus": "

Describes the status of the assignment deletion request.

", + "DescribeApplication": "

Retrieves the details of an application associated with an instance of IAM Identity Center.

", + "DescribeApplicationAssignment": "

Retrieves a direct assignment of a user or group to an application. If the user doesn’t have a direct assignment to the application, the user may still have access to the application through a group. Therefore, don’t use this API to test access to an application for a user. Instead use ListApplicationAssignmentsForPrincipal.

", + "DescribeApplicationProvider": "

Retrieves details about a provider that can be used to connect an Amazon Web Services managed application or customer managed application to IAM Identity Center.

", + "DescribeInstance": "

Returns the details of an instance of IAM Identity Center. The status can be one of the following:

  • CREATE_IN_PROGRESS - The instance is in the process of being created. When the instance is ready for use, DescribeInstance returns the status of ACTIVE. While the instance is in the CREATE_IN_PROGRESS state, you can call only DescribeInstance and DeleteInstance operations.

  • DELETE_IN_PROGRESS - The instance is being deleted. Returns AccessDeniedException after the delete operation completes.

  • ACTIVE - The instance is active.

", "DescribeInstanceAccessControlAttributeConfiguration": "

Returns the list of IAM Identity Center identity store attributes that have been configured to work with attributes-based access control (ABAC) for the specified IAM Identity Center instance. This will not return attributes configured and sent by an external identity provider. For more information about ABAC, see Attribute-Based Access Control in the IAM Identity Center User Guide.

", "DescribePermissionSet": "

Gets the details of the permission set.

", "DescribePermissionSetProvisioningStatus": "

Describes the status for the given permission set provisioning request.

", + "DescribeTrustedTokenIssuer": "

Retrieves details about a trusted token issuer configuration stored in an instance of IAM Identity Center. Details include the name of the trusted token issuer, the issuer URL, and the path of the source attribute and the destination attribute for a trusted token issuer configuration.

", "DetachCustomerManagedPolicyReferenceFromPermissionSet": "

Detaches the specified customer managed policy from the specified PermissionSet.

", "DetachManagedPolicyFromPermissionSet": "

Detaches the attached Amazon Web Services managed policy ARN from the specified permission set.

", + "GetApplicationAccessScope": "

Retrieves the authorized targets for an IAM Identity Center access scope for an application.

", + "GetApplicationAssignmentConfiguration": "

Retrieves the configuration of PutApplicationAssignmentConfiguration.

", + "GetApplicationAuthenticationMethod": "

Retrieves details about an authentication method used by an application.

", + "GetApplicationGrant": "

Retrieves details about an application grant.

", "GetInlinePolicyForPermissionSet": "

Obtains the inline policy assigned to the permission set.

", "GetPermissionsBoundaryForPermissionSet": "

Obtains the permissions boundary for a specified PermissionSet.

", "ListAccountAssignmentCreationStatus": "

Lists the status of the Amazon Web Services account assignment creation requests for a specified IAM Identity Center instance.

", "ListAccountAssignmentDeletionStatus": "

Lists the status of the Amazon Web Services account assignment deletion requests for a specified IAM Identity Center instance.

", "ListAccountAssignments": "

Lists the assignee of the specified Amazon Web Services account with the specified permission set.

", + "ListAccountAssignmentsForPrincipal": "

Retrieves a list of the IAM Identity Center associated Amazon Web Services accounts that the principal has access to.

", "ListAccountsForProvisionedPermissionSet": "

Lists all the Amazon Web Services accounts where the specified permission set is provisioned.

", + "ListApplicationAccessScopes": "

Lists the access scopes and authorized targets associated with an application.

", + "ListApplicationAssignments": "

Lists Amazon Web Services account users that are assigned to an application.

", + "ListApplicationAssignmentsForPrincipal": "

Lists the applications to which a specified principal is assigned.

", + "ListApplicationAuthenticationMethods": "

Lists all of the authentication methods supported by the specified application.

", + "ListApplicationGrants": "

List the grants associated with an application.

", + "ListApplicationProviders": "

Lists the application providers configured in the IAM Identity Center identity store.

", + "ListApplications": "

Lists all applications associated with the instance of IAM Identity Center. When listing applications for an instance in the management account, member accounts must use the applicationAccount parameter to filter the list to only applications created from that account.

", "ListCustomerManagedPolicyReferencesInPermissionSet": "

Lists all customer managed policies attached to a specified PermissionSet.

", - "ListInstances": "

Lists the IAM Identity Center instances that the caller has access to.

", + "ListInstances": "

Lists the details of the organization and account instances of IAM Identity Center that were created in or visible to the account calling this API.

", "ListManagedPoliciesInPermissionSet": "

Lists the Amazon Web Services managed policy that is attached to a specified permission set.

", "ListPermissionSetProvisioningStatus": "

Lists the status of the permission set provisioning requests for a specified IAM Identity Center instance.

", "ListPermissionSets": "

Lists the PermissionSets in an IAM Identity Center instance.

", "ListPermissionSetsProvisionedToAccount": "

Lists all the permission sets that are provisioned to a specified Amazon Web Services account.

", "ListTagsForResource": "

Lists the tags that are attached to a specified resource.

", + "ListTrustedTokenIssuers": "

Lists all the trusted token issuers configured in an instance of IAM Identity Center.

", "ProvisionPermissionSet": "

The process by which a specified permission set is provisioned to the specified target.

", + "PutApplicationAccessScope": "

Adds or updates the list of authorized targets for an IAM Identity Center access scope for an application.

", + "PutApplicationAssignmentConfiguration": "

Configure how users gain access to an application. If AssignmentsRequired is true (default value), users don’t have access to the application unless an assignment is created using the CreateApplicationAssignment API. If false, all users have access to the application. If an assignment is created using CreateApplicationAssignment., the user retains access if AssignmentsRequired is set to true.

", + "PutApplicationAuthenticationMethod": "

Adds or updates an authentication method for an application.

", + "PutApplicationGrant": "

Adds a grant to an application.

", "PutInlinePolicyToPermissionSet": "

Attaches an inline policy to a permission set.

If the permission set is already referenced by one or more account assignments, you will need to call ProvisionPermissionSet after this action to apply the corresponding IAM policy updates to all assigned accounts.

", "PutPermissionsBoundaryToPermissionSet": "

Attaches an Amazon Web Services managed or customer managed policy to the specified PermissionSet as a permissions boundary.

", "TagResource": "

Associates a set of tags with a specified resource.

", "UntagResource": "

Disassociates a set of tags from a specified resource.

", + "UpdateApplication": "

Updates application properties.

", + "UpdateInstance": "

Update the details for the instance of IAM Identity Center that is owned by the Amazon Web Services account.

", "UpdateInstanceAccessControlAttributeConfiguration": "

Updates the IAM Identity Center identity store attributes that you can use with the IAM Identity Center instance for attributes-based access control (ABAC). When using an external identity provider as an identity source, you can pass attributes through the SAML assertion as an alternative to configuring attributes from the IAM Identity Center identity store. If a SAML assertion passes any of these attributes, IAM Identity Center replaces the attribute value with the value from the IAM Identity Center identity store. For more information about ABAC, see Attribute-Based Access Control in the IAM Identity Center User Guide.

", - "UpdatePermissionSet": "

Updates an existing permission set.

" + "UpdatePermissionSet": "

Updates an existing permission set.

", + "UpdateTrustedTokenIssuer": "

Updates the name of the trusted token issuer, or the path of a source attribute or destination attribute for a trusted token issuer configuration.

Updating this trusted token issuer configuration might cause users to lose access to any applications that are configured to use the trusted token issuer.

" }, "shapes": { "AccessControlAttribute": { @@ -94,12 +130,24 @@ "AccountAssignmentList$member": null } }, + "AccountAssignmentForPrincipal": { + "base": "

A structure that describes an assignment of an Amazon Web Services account to a principal and the permissions that principal has in the account.

", + "refs": { + "AccountAssignmentListForPrincipal$member": null + } + }, "AccountAssignmentList": { "base": null, "refs": { "ListAccountAssignmentsResponse$AccountAssignments": "

The list of assignments that match the input Amazon Web Services account and permission set.

" } }, + "AccountAssignmentListForPrincipal": { + "base": null, + "refs": { + "ListAccountAssignmentsForPrincipalResponse$AccountAssignments": "

An array list of the account assignments for the principal.

" + } + }, "AccountAssignmentOperationStatus": { "base": "

The status of the creation or deletion operation of an assignment that a principal needs to access an account.

", "refs": { @@ -126,7 +174,14 @@ "base": null, "refs": { "AccountAssignment$AccountId": "

The identifier of the Amazon Web Services account.

", + "AccountAssignmentForPrincipal$AccountId": "

The account ID number of the Amazon Web Services account.

", "AccountList$member": null, + "Application$ApplicationAccount": "

The Amazon Web Services account ID number of the application.

", + "DescribeApplicationResponse$ApplicationAccount": "

The account ID.

", + "DescribeInstanceResponse$OwnerAccountId": "

The identifier of the Amazon Web Services account for which the instance was created.

", + "InstanceMetadata$OwnerAccountId": "

The Amazon Web Services account ID number of the owner of the Identity Center instance.

", + "ListAccountAssignmentsFilter$AccountId": "

The ID number of an Amazon Web Services account that filters the results in the response.

", + "ListApplicationsFilter$ApplicationAccount": "

An Amazon Web Services account ID number that filters the results in the response.

", "ListPermissionSetsProvisionedToAccountRequest$AccountId": "

The identifier of the Amazon Web Services account from which to list the assignments.

", "PermissionSetProvisioningStatus$AccountId": "

The identifier of the Amazon Web Services account from which to list the assignments.

" } @@ -137,6 +192,133 @@ "ListAccountsForProvisionedPermissionSetResponse$AccountIds": "

The list of Amazon Web Services AccountIds.

" } }, + "ActorPolicyDocument": { + "base": null, + "refs": { + "IamAuthenticationMethod$ActorPolicy": "

An IAM policy document in JSON.

" + } + }, + "Application": { + "base": "

A structure that describes an application that uses IAM Identity Center for access management.

", + "refs": { + "ApplicationList$member": null + } + }, + "ApplicationArn": { + "base": null, + "refs": { + "Application$ApplicationArn": "

The ARN of the application.

", + "ApplicationAssignment$ApplicationArn": "

The ARN of the application that has principals assigned.

", + "ApplicationAssignmentForPrincipal$ApplicationArn": "

The ARN of the application to which the specified principal is assigned.

", + "CreateApplicationAssignmentRequest$ApplicationArn": "

The ARN of the application provider under which the operation will run.

", + "CreateApplicationResponse$ApplicationArn": "

Specifies the ARN of the application.

", + "DeleteApplicationAccessScopeRequest$ApplicationArn": "

Specifies the ARN of the application with the access scope to delete.

", + "DeleteApplicationAssignmentRequest$ApplicationArn": "

Specifies the ARN of the application.

", + "DeleteApplicationAuthenticationMethodRequest$ApplicationArn": "

Specifies the ARN of the application with the authentication method to delete.

", + "DeleteApplicationGrantRequest$ApplicationArn": "

Specifies the ARN of the application with the grant to delete.

", + "DeleteApplicationRequest$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "DescribeApplicationAssignmentRequest$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "DescribeApplicationAssignmentResponse$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "DescribeApplicationRequest$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "DescribeApplicationResponse$ApplicationArn": "

Specifies the ARN of the application.

", + "GetApplicationAccessScopeRequest$ApplicationArn": "

Specifies the ARN of the application with the access scope that you want to retrieve.

", + "GetApplicationAssignmentConfigurationRequest$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "GetApplicationAuthenticationMethodRequest$ApplicationArn": "

Specifies the ARN of the application.

", + "GetApplicationGrantRequest$ApplicationArn": "

Specifies the ARN of the application that contains the grant.

", + "ListApplicationAccessScopesRequest$ApplicationArn": "

Specifies the ARN of the application.

", + "ListApplicationAssignmentsFilter$ApplicationArn": "

The ARN of an application.

", + "ListApplicationAssignmentsRequest$ApplicationArn": "

Specifies the ARN of the application.

", + "ListApplicationAuthenticationMethodsRequest$ApplicationArn": "

Specifies the ARN of the application with the authentication methods you want to list.

", + "ListApplicationGrantsRequest$ApplicationArn": "

Specifies the ARN of the application whose grants you want to list.

", + "PutApplicationAccessScopeRequest$ApplicationArn": "

Specifies the ARN of the application with the access scope with the targets to add or update.

", + "PutApplicationAssignmentConfigurationRequest$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "PutApplicationAuthenticationMethodRequest$ApplicationArn": "

Specifies the ARN of the application with the authentication method to add or update.

", + "PutApplicationGrantRequest$ApplicationArn": "

Specifies the ARN of the application to update.

", + "UpdateApplicationRequest$ApplicationArn": "

Specifies the ARN of the application. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

" + } + }, + "ApplicationAssignment": { + "base": "

A structure that describes an assignment of a principal to an application.

", + "refs": { + "ApplicationAssignmentsList$member": null + } + }, + "ApplicationAssignmentForPrincipal": { + "base": "

A structure that describes an application to which a principal is assigned.

", + "refs": { + "ApplicationAssignmentListForPrincipal$member": null + } + }, + "ApplicationAssignmentListForPrincipal": { + "base": null, + "refs": { + "ListApplicationAssignmentsForPrincipalResponse$ApplicationAssignments": "

An array list of the application assignments for the specified principal.

" + } + }, + "ApplicationAssignmentsList": { + "base": null, + "refs": { + "ListApplicationAssignmentsResponse$ApplicationAssignments": "

The list of users assigned to an application.

" + } + }, + "ApplicationList": { + "base": null, + "refs": { + "ListApplicationsResponse$Applications": "

Retrieves all applications associated with the instance.

" + } + }, + "ApplicationProvider": { + "base": "

A structure that describes a provider that can be used to connect an Amazon Web Services managed application or customer managed application to IAM Identity Center.

", + "refs": { + "ApplicationProviderList$member": null + } + }, + "ApplicationProviderArn": { + "base": null, + "refs": { + "Application$ApplicationProviderArn": "

The ARN of the application provider for this application.

", + "ApplicationProvider$ApplicationProviderArn": "

The ARN of the application provider.

", + "CreateApplicationRequest$ApplicationProviderArn": "

The ARN of the application provider under which the operation will run.

", + "DescribeApplicationProviderRequest$ApplicationProviderArn": "

Specifies the ARN of the application provider for which you want details.

", + "DescribeApplicationProviderResponse$ApplicationProviderArn": "

The ARN of the application provider.

", + "DescribeApplicationResponse$ApplicationProviderArn": "

The ARN of the application provider under which the operation will run.

", + "ListApplicationsFilter$ApplicationProvider": "

The ARN of an application provider that can filter the results in the response.

" + } + }, + "ApplicationProviderList": { + "base": null, + "refs": { + "ListApplicationProvidersResponse$ApplicationProviders": "

An array list of structures that describe application providers.

" + } + }, + "ApplicationStatus": { + "base": null, + "refs": { + "Application$Status": "

The current status of the application in this instance of IAM Identity Center.

", + "CreateApplicationRequest$Status": "

Specifies whether the application is enabled or disabled.

", + "DescribeApplicationResponse$Status": "

Specifies whether the application is enabled or disabled.

", + "UpdateApplicationRequest$Status": "

Specifies whether the application is enabled or disabled.

" + } + }, + "ApplicationUrl": { + "base": null, + "refs": { + "SignInOptions$ApplicationUrl": "

The URL that accepts authentication requests for an application. This is a required parameter if the Origin parameter is APPLICATION.

" + } + }, + "ApplicationVisibility": { + "base": null, + "refs": { + "PortalOptions$Visibility": "

Indicates whether this application is visible in the access portal.

" + } + }, + "AssignmentRequired": { + "base": null, + "refs": { + "GetApplicationAssignmentConfigurationResponse$AssignmentRequired": "

If AssignmentsRequired is true (default value), users don’t have access to the application unless an assignment is created using the CreateApplicationAssignment API. If false, all users have access to the application.

", + "PutApplicationAssignmentConfigurationRequest$AssignmentRequired": "

If AssignmentsRequired is true (default value), users don’t have access to the application unless an assignment is created using the CreateApplicationAssignment API. If false, all users have access to the application.

" + } + }, "AttachCustomerManagedPolicyReferenceToPermissionSetRequest": { "base": null, "refs": { @@ -169,6 +351,68 @@ "ListManagedPoliciesInPermissionSetResponse$AttachedManagedPolicies": "

An array of the AttachedManagedPolicy data type object.

" } }, + "AuthenticationMethod": { + "base": "

A structure that describes an authentication method that can be used by an application.

", + "refs": { + "AuthenticationMethodItem$AuthenticationMethod": "

A structure that describes an authentication method. The contents of this structure is determined by the AuthenticationMethodType.

", + "GetApplicationAuthenticationMethodResponse$AuthenticationMethod": "

A structure that contains details about the requested authentication method.

", + "PutApplicationAuthenticationMethodRequest$AuthenticationMethod": "

Specifies a structure that describes the authentication method to add or update. The structure type you provide is determined by the AuthenticationMethodType parameter.

" + } + }, + "AuthenticationMethodItem": { + "base": "

A structure that describes an authentication method and its type.

", + "refs": { + "AuthenticationMethods$member": null + } + }, + "AuthenticationMethodType": { + "base": null, + "refs": { + "AuthenticationMethodItem$AuthenticationMethodType": "

The type of authentication that is used by this method.

", + "DeleteApplicationAuthenticationMethodRequest$AuthenticationMethodType": "

Specifies the authentication method type to delete from the application.

", + "GetApplicationAuthenticationMethodRequest$AuthenticationMethodType": "

Specifies the type of authentication method for which you want details.

", + "PutApplicationAuthenticationMethodRequest$AuthenticationMethodType": "

Specifies the type of the authentication method that you want to add or update.

" + } + }, + "AuthenticationMethods": { + "base": null, + "refs": { + "ListApplicationAuthenticationMethodsResponse$AuthenticationMethods": "

An array list of authentication methods for the specified application.

" + } + }, + "AuthorizationCodeGrant": { + "base": "

A structure that defines configuration settings for an application that supports the OAuth 2.0 Authorization Code Grant.

", + "refs": { + "Grant$AuthorizationCode": "

Configuration options for the authorization_code grant type.

" + } + }, + "AuthorizedTokenIssuer": { + "base": "

A structure that describes a trusted token issuer and associates it with a set of authorized audiences.

", + "refs": { + "AuthorizedTokenIssuers$member": null + } + }, + "AuthorizedTokenIssuers": { + "base": null, + "refs": { + "JwtBearerGrant$AuthorizedTokenIssuers": "

A list of allowed token issuers trusted by the Identity Center instances for this application.

" + } + }, + "ClaimAttributePath": { + "base": null, + "refs": { + "OidcJwtConfiguration$ClaimAttributePath": "

The path of the source attribute in the JWT from the trusted token issuer. The attribute mapped by this JMESPath expression is compared against the attribute mapped by IdentityStoreAttributePath when a trusted token issuer token is exchanged for an IAM Identity Center token.

", + "OidcJwtUpdateConfiguration$ClaimAttributePath": "

The path of the source attribute in the JWT from the trusted token issuer. The attribute mapped by this JMESPath expression is compared against the attribute mapped by IdentityStoreAttributePath when a trusted token issuer token is exchanged for an IAM Identity Center token.

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "CreateApplicationRequest$ClientToken": "

Specifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

", + "CreateInstanceRequest$ClientToken": "

Specifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

", + "CreateTrustedTokenIssuerRequest$ClientToken": "

Specifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value..

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

" + } + }, "ConflictException": { "base": "

Occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.

", "refs": { @@ -190,6 +434,26 @@ "refs": { } }, + "CreateApplicationAssignmentRequest": { + "base": null, + "refs": { + } + }, + "CreateApplicationAssignmentResponse": { + "base": null, + "refs": { + } + }, + "CreateApplicationRequest": { + "base": null, + "refs": { + } + }, + "CreateApplicationResponse": { + "base": null, + "refs": { + } + }, "CreateInstanceAccessControlAttributeConfigurationRequest": { "base": null, "refs": { @@ -200,6 +464,16 @@ "refs": { } }, + "CreateInstanceRequest": { + "base": null, + "refs": { + } + }, + "CreateInstanceResponse": { + "base": null, + "refs": { + } + }, "CreatePermissionSetRequest": { "base": null, "refs": { @@ -210,6 +484,16 @@ "refs": { } }, + "CreateTrustedTokenIssuerRequest": { + "base": null, + "refs": { + } + }, + "CreateTrustedTokenIssuerResponse": { + "base": null, + "refs": { + } + }, "CustomerManagedPolicyReference": { "base": "

Specifies the name and path of a customer managed policy. You must have an IAM policy that matches the name and path in each Amazon Web Services account where you want to deploy your permission set.

", "refs": { @@ -230,6 +514,10 @@ "refs": { "AccountAssignmentOperationStatus$CreatedDate": "

The date that the permission set was created.

", "AccountAssignmentOperationStatusMetadata$CreatedDate": "

The date that the permission set was created.

", + "Application$CreatedDate": "

The date and time when the application was originally created.

", + "DescribeApplicationResponse$CreatedDate": "

The date the application was created.

", + "DescribeInstanceResponse$CreatedDate": "

The date the instance was created.

", + "InstanceMetadata$CreatedDate": "

The date and time that the Identity Center instance was created.

", "PermissionSet$CreatedDate": "

The date that the permission set was created.

", "PermissionSetProvisioningStatus$CreatedDate": "

The date that the permission set was created.

", "PermissionSetProvisioningStatusMetadata$CreatedDate": "

The date that the permission set was created.

" @@ -245,6 +533,41 @@ "refs": { } }, + "DeleteApplicationAccessScopeRequest": { + "base": null, + "refs": { + } + }, + "DeleteApplicationAssignmentRequest": { + "base": null, + "refs": { + } + }, + "DeleteApplicationAssignmentResponse": { + "base": null, + "refs": { + } + }, + "DeleteApplicationAuthenticationMethodRequest": { + "base": null, + "refs": { + } + }, + "DeleteApplicationGrantRequest": { + "base": null, + "refs": { + } + }, + "DeleteApplicationRequest": { + "base": null, + "refs": { + } + }, + "DeleteApplicationResponse": { + "base": null, + "refs": { + } + }, "DeleteInlinePolicyFromPermissionSetRequest": { "base": null, "refs": { @@ -265,6 +588,16 @@ "refs": { } }, + "DeleteInstanceRequest": { + "base": null, + "refs": { + } + }, + "DeleteInstanceResponse": { + "base": null, + "refs": { + } + }, "DeletePermissionSetRequest": { "base": null, "refs": { @@ -285,6 +618,16 @@ "refs": { } }, + "DeleteTrustedTokenIssuerRequest": { + "base": null, + "refs": { + } + }, + "DeleteTrustedTokenIssuerResponse": { + "base": null, + "refs": { + } + }, "DescribeAccountAssignmentCreationStatusRequest": { "base": null, "refs": { @@ -305,6 +648,36 @@ "refs": { } }, + "DescribeApplicationAssignmentRequest": { + "base": null, + "refs": { + } + }, + "DescribeApplicationAssignmentResponse": { + "base": null, + "refs": { + } + }, + "DescribeApplicationProviderRequest": { + "base": null, + "refs": { + } + }, + "DescribeApplicationProviderResponse": { + "base": null, + "refs": { + } + }, + "DescribeApplicationRequest": { + "base": null, + "refs": { + } + }, + "DescribeApplicationResponse": { + "base": null, + "refs": { + } + }, "DescribeInstanceAccessControlAttributeConfigurationRequest": { "base": null, "refs": { @@ -315,6 +688,16 @@ "refs": { } }, + "DescribeInstanceRequest": { + "base": null, + "refs": { + } + }, + "DescribeInstanceResponse": { + "base": null, + "refs": { + } + }, "DescribePermissionSetProvisioningStatusRequest": { "base": null, "refs": { @@ -335,6 +718,28 @@ "refs": { } }, + "DescribeTrustedTokenIssuerRequest": { + "base": null, + "refs": { + } + }, + "DescribeTrustedTokenIssuerResponse": { + "base": null, + "refs": { + } + }, + "Description": { + "base": null, + "refs": { + "Application$Description": "

The description of the application.

", + "CreateApplicationRequest$Description": "

The description of the .

", + "DescribeApplicationResponse$Description": "

The description of the .

", + "DisplayData$Description": "

The description of the application provider that appears in the portal.

", + "ResourceServerScopeDetails$DetailedTitle": "

The title of an access scope for a resource server.

", + "ResourceServerScopeDetails$LongDescription": "

The description of an access scope for a resource server.

", + "UpdateApplicationRequest$Description": "

The description of the .

" + } + }, "DetachCustomerManagedPolicyReferenceFromPermissionSetRequest": { "base": null, "refs": { @@ -355,6 +760,13 @@ "refs": { } }, + "DisplayData": { + "base": "

A structure that describes how the portal represents an application provider.

", + "refs": { + "ApplicationProvider$DisplayData": "

A structure that describes how IAM Identity Center represents the application provider in the portal.

", + "DescribeApplicationProviderResponse$DisplayData": "

A structure with details about the display data for the application provider.

" + } + }, "Duration": { "base": null, "refs": { @@ -363,6 +775,53 @@ "UpdatePermissionSetRequest$SessionDuration": "

The length of time that the application user sessions are valid for in the ISO-8601 standard.

" } }, + "FederationProtocol": { + "base": null, + "refs": { + "ApplicationProvider$FederationProtocol": "

The protocol that the application provider uses to perform federation.

", + "DescribeApplicationProviderResponse$FederationProtocol": "

The protocol used to federate to the application provider.

" + } + }, + "GetApplicationAccessScopeRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationAccessScopeResponse": { + "base": null, + "refs": { + } + }, + "GetApplicationAssignmentConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationAssignmentConfigurationResponse": { + "base": null, + "refs": { + } + }, + "GetApplicationAuthenticationMethodRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationAuthenticationMethodResponse": { + "base": null, + "refs": { + } + }, + "GetApplicationGrantRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationGrantResponse": { + "base": null, + "refs": { + } + }, "GetInlinePolicyForPermissionSetRequest": { "base": null, "refs": { @@ -383,10 +842,52 @@ "refs": { } }, + "Grant": { + "base": "

The Grant union represents the set of possible configuration options for the selected grant type. Exactly one member of the union must be specified, and must match the grant type selected.

", + "refs": { + "GetApplicationGrantResponse$Grant": "

A structure that describes the requested grant.

", + "GrantItem$Grant": "

The configuration structure for the selected grant.

", + "PutApplicationGrantRequest$Grant": "

Specifies a structure that describes the grant to update.

" + } + }, + "GrantItem": { + "base": "

A structure that defines a single grant and its configuration.

", + "refs": { + "Grants$member": null + } + }, + "GrantType": { + "base": null, + "refs": { + "DeleteApplicationGrantRequest$GrantType": "

Specifies the type of grant to delete from the application.

", + "GetApplicationGrantRequest$GrantType": "

Specifies the type of grant.

", + "GrantItem$GrantType": "

The type of the selected grant.

", + "PutApplicationGrantRequest$GrantType": "

Specifies the type of grant to update.

" + } + }, + "Grants": { + "base": null, + "refs": { + "ListApplicationGrantsResponse$Grants": "

An array list of structures that describe the requested grants.

" + } + }, + "IamAuthenticationMethod": { + "base": "

A structure that describes details for authentication that uses IAM.

", + "refs": { + "AuthenticationMethod$Iam": "

A structure that describes details for IAM authentication.

" + } + }, + "IconUrl": { + "base": null, + "refs": { + "DisplayData$IconUrl": "

A URL that points to an icon that represents the application provider.

" + } + }, "Id": { "base": null, "refs": { - "InstanceMetadata$IdentityStoreId": "

The identifier of the identity store that is connected to the IAM Identity Center instance.

" + "DescribeInstanceResponse$IdentityStoreId": "

The identifier of the identity store that is connected to the instance of IAM Identity Center.

", + "InstanceMetadata$IdentityStoreId": "

The identifier of the identity store that is connected to the Identity Center instance.

" } }, "InstanceAccessControlAttributeConfiguration": { @@ -412,42 +913,55 @@ "InstanceArn": { "base": null, "refs": { + "Application$InstanceArn": "

The ARN of the instance of IAM Identity Center that is configured with this application.

", "AttachCustomerManagedPolicyReferenceToPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", "AttachManagedPolicyToPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "CreateAccountAssignmentRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "CreateApplicationRequest$InstanceArn": "

The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "CreateInstanceAccessControlAttributeConfigurationRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", + "CreateInstanceResponse$InstanceArn": "

The ARN of the instance of IAM Identity Center under which the operation will run.

For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "CreatePermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "CreateTrustedTokenIssuerRequest$InstanceArn": "

Specifies the ARN of the instance of IAM Identity Center to contain the new trusted token issuer configuration.

", "DeleteAccountAssignmentRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DeleteInlinePolicyFromPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DeleteInstanceAccessControlAttributeConfigurationRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", + "DeleteInstanceRequest$InstanceArn": "

The ARN of the instance of IAM Identity Center under which the operation will run.

", "DeletePermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DeletePermissionsBoundaryFromPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", "DescribeAccountAssignmentCreationStatusRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DescribeAccountAssignmentDeletionStatusRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "DescribeApplicationResponse$InstanceArn": "

The ARN of the IAM Identity Center application under which the operation will run. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DescribeInstanceAccessControlAttributeConfigurationRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", + "DescribeInstanceRequest$InstanceArn": "

The ARN of the instance of IAM Identity Center under which the operation will run.

", + "DescribeInstanceResponse$InstanceArn": "

The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DescribePermissionSetProvisioningStatusRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DescribePermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "DetachCustomerManagedPolicyReferenceFromPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", "DetachManagedPolicyFromPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "GetInlinePolicyForPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "GetPermissionsBoundaryForPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", - "InstanceMetadata$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "InstanceMetadata$InstanceArn": "

The ARN of the Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListAccountAssignmentCreationStatusRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListAccountAssignmentDeletionStatusRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "ListAccountAssignmentsForPrincipalRequest$InstanceArn": "

Specifies the ARN of the instance of IAM Identity Center that contains the principal.

", "ListAccountAssignmentsRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListAccountsForProvisionedPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "ListApplicationAssignmentsForPrincipalRequest$InstanceArn": "

Specifies the instance of IAM Identity Center that contains principal and applications.

", + "ListApplicationsRequest$InstanceArn": "

The ARN of the IAM Identity Center application under which the operation will run. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListCustomerManagedPolicyReferencesInPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", "ListManagedPoliciesInPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListPermissionSetProvisioningStatusRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListPermissionSetsProvisionedToAccountRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListPermissionSetsRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "ListTagsForResourceRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "ListTrustedTokenIssuersRequest$InstanceArn": "

Specifies the ARN of the instance of IAM Identity Center with the trusted token issuer configurations that you want to list.

", "ProvisionPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "PutInlinePolicyToPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "PutPermissionsBoundaryToPermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", "TagResourceRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "UntagResourceRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "UpdateInstanceAccessControlAttributeConfigurationRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed.

", + "UpdateInstanceRequest$InstanceArn": "

The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "UpdatePermissionSetRequest$InstanceArn": "

The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

" } }, @@ -463,6 +977,13 @@ "InstanceList$member": null } }, + "InstanceStatus": { + "base": null, + "refs": { + "DescribeInstanceResponse$Status": "

The status of the instance.

", + "InstanceMetadata$Status": "

The current status of this Identity Center instance.

" + } + }, "InternalFailureMessage": { "base": null, "refs": { @@ -474,6 +995,26 @@ "refs": { } }, + "JMESPath": { + "base": null, + "refs": { + "OidcJwtConfiguration$IdentityStoreAttributePath": "

The path of the destination attribute in a JWT from IAM Identity Center. The attribute mapped by this JMESPath expression is compared against the attribute mapped by ClaimAttributePath when a trusted token issuer token is exchanged for an IAM Identity Center token.

", + "OidcJwtUpdateConfiguration$IdentityStoreAttributePath": "

The path of the destination attribute in a JWT from IAM Identity Center. The attribute mapped by this JMESPath expression is compared against the attribute mapped by ClaimAttributePath when a trusted token issuer token is exchanged for an IAM Identity Center token.

" + } + }, + "JwksRetrievalOption": { + "base": null, + "refs": { + "OidcJwtConfiguration$JwksRetrievalOption": "

The method that the trusted token issuer can use to retrieve the JSON Web Key Set used to verify a JWT.

", + "OidcJwtUpdateConfiguration$JwksRetrievalOption": "

The method that the trusted token issuer can use to retrieve the JSON Web Key Set used to verify a JWT.

" + } + }, + "JwtBearerGrant": { + "base": "

A structure that defines configuration settings for an application that supports the JWT Bearer Token Authorization Grant.

", + "refs": { + "Grant$JwtBearer": "

Configuration options for the urn:ietf:params:oauth:grant-type:jwt-bearer grant type.

" + } + }, "ListAccountAssignmentCreationStatusRequest": { "base": null, "refs": { @@ -494,6 +1035,22 @@ "refs": { } }, + "ListAccountAssignmentsFilter": { + "base": "

A structure that describes a filter for account assignments.

", + "refs": { + "ListAccountAssignmentsForPrincipalRequest$Filter": "

Specifies an Amazon Web Services account ID number. Results are filtered to only those that match this ID number.

" + } + }, + "ListAccountAssignmentsForPrincipalRequest": { + "base": null, + "refs": { + } + }, + "ListAccountAssignmentsForPrincipalResponse": { + "base": null, + "refs": { + } + }, "ListAccountAssignmentsRequest": { "base": null, "refs": { @@ -514,6 +1071,94 @@ "refs": { } }, + "ListApplicationAccessScopesRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationAccessScopesRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListApplicationAccessScopesRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

" + } + }, + "ListApplicationAccessScopesResponse": { + "base": null, + "refs": { + } + }, + "ListApplicationAssignmentsFilter": { + "base": "

A structure that describes a filter for application assignments.

", + "refs": { + "ListApplicationAssignmentsForPrincipalRequest$Filter": "

Filters the output to include only assignments associated with the application that has the specified ARN.

" + } + }, + "ListApplicationAssignmentsForPrincipalRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationAssignmentsForPrincipalResponse": { + "base": null, + "refs": { + } + }, + "ListApplicationAssignmentsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationAssignmentsResponse": { + "base": null, + "refs": { + } + }, + "ListApplicationAuthenticationMethodsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationAuthenticationMethodsResponse": { + "base": null, + "refs": { + } + }, + "ListApplicationGrantsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationGrantsResponse": { + "base": null, + "refs": { + } + }, + "ListApplicationProvidersRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationProvidersResponse": { + "base": null, + "refs": { + } + }, + "ListApplicationsFilter": { + "base": "

A structure that describes a filter for applications.

", + "refs": { + "ListApplicationsRequest$Filter": "

Filters response results.

" + } + }, + "ListApplicationsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationsResponse": { + "base": null, + "refs": { + } + }, "ListCustomerManagedPolicyReferencesInPermissionSetRequest": { "base": null, "refs": { @@ -584,6 +1229,16 @@ "refs": { } }, + "ListTrustedTokenIssuersRequest": { + "base": null, + "refs": { + } + }, + "ListTrustedTokenIssuersResponse": { + "base": null, + "refs": { + } + }, "ManagedPolicyArn": { "base": null, "refs": { @@ -610,24 +1265,56 @@ "refs": { "ListAccountAssignmentCreationStatusRequest$MaxResults": "

The maximum number of results to display for the assignment.

", "ListAccountAssignmentDeletionStatusRequest$MaxResults": "

The maximum number of results to display for the assignment.

", + "ListAccountAssignmentsForPrincipalRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

", "ListAccountAssignmentsRequest$MaxResults": "

The maximum number of results to display for the assignment.

", "ListAccountsForProvisionedPermissionSetRequest$MaxResults": "

The maximum number of results to display for the PermissionSet.

", + "ListApplicationAssignmentsForPrincipalRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

", + "ListApplicationAssignmentsRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

", + "ListApplicationProvidersRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

", + "ListApplicationsRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

", "ListCustomerManagedPolicyReferencesInPermissionSetRequest$MaxResults": "

The maximum number of results to display for the list call.

", "ListInstancesRequest$MaxResults": "

The maximum number of results to display for the instance.

", "ListManagedPoliciesInPermissionSetRequest$MaxResults": "

The maximum number of results to display for the PermissionSet.

", "ListPermissionSetProvisioningStatusRequest$MaxResults": "

The maximum number of results to display for the assignment.

", "ListPermissionSetsProvisionedToAccountRequest$MaxResults": "

The maximum number of results to display for the assignment.

", - "ListPermissionSetsRequest$MaxResults": "

The maximum number of results to display for the assignment.

" + "ListPermissionSetsRequest$MaxResults": "

The maximum number of results to display for the assignment.

", + "ListTrustedTokenIssuersRequest$MaxResults": "

Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

" } }, "Name": { "base": null, "refs": { - "AttachedManagedPolicy$Name": "

The name of the Amazon Web Services managed policy.

" + "AttachedManagedPolicy$Name": "

The name of the Amazon Web Services managed policy.

", + "DisplayData$DisplayName": "

The name of the application provider that appears in the portal.

" + } + }, + "NameType": { + "base": null, + "refs": { + "Application$Name": "

The name of the application.

", + "CreateApplicationRequest$Name": "

The name of the .

", + "CreateInstanceRequest$Name": "

The name of the instance of IAM Identity Center.

", + "DescribeApplicationResponse$Name": "

The application name.

", + "DescribeInstanceResponse$Name": "

Specifies the instance name.

", + "InstanceMetadata$Name": "

The name of the Identity Center instance.

", + "UpdateApplicationRequest$Name": "

Specifies the updated name for the application.

", + "UpdateInstanceRequest$Name": "

Updates the instance name.

" + } + }, + "OidcJwtConfiguration": { + "base": "

A structure that describes configuration settings for a trusted token issuer that supports OpenID Connect (OIDC) and JSON Web Tokens (JWTs).

", + "refs": { + "TrustedTokenIssuerConfiguration$OidcJwtConfiguration": "

A structure that describes the settings for a trusted token issuer that works with OpenID Connect (OIDC) by using JSON Web Tokens (JWT).

" + } + }, + "OidcJwtUpdateConfiguration": { + "base": "

A structure that describes updated configuration settings for a trusted token issuer that supports OpenID Connect (OIDC) and JSON Web Tokens (JWTs).

", + "refs": { + "TrustedTokenIssuerUpdateConfiguration$OidcJwtConfiguration": "

A structure that describes an updated configuration for a trusted token issuer that uses OpenID Connect (OIDC) with JSON web tokens (JWT).

" } }, "OperationStatusFilter": { - "base": "

Filters he operation status list based on the passed attribute value.

", + "base": "

Filters the operation status list based on the passed attribute value.

", "refs": { "ListAccountAssignmentCreationStatusRequest$Filter": "

Filters results based on the passed attribute value.

", "ListAccountAssignmentDeletionStatusRequest$Filter": "

Filters results based on the passed attribute value.

", @@ -645,6 +1332,7 @@ "base": null, "refs": { "AccountAssignment$PermissionSetArn": "

The ARN of the permission set. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", + "AccountAssignmentForPrincipal$PermissionSetArn": "

The ARN of the IAM Identity Center permission set assigned to this principal for this Amazon Web Services account.

", "AccountAssignmentOperationStatus$PermissionSetArn": "

The ARN of the permission set. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", "AttachCustomerManagedPolicyReferenceToPermissionSetRequest$PermissionSetArn": "

The ARN of the PermissionSet.

", "AttachManagedPolicyToPermissionSetRequest$PermissionSetArn": "

The ARN of the PermissionSet that the managed policy should be attached to.

", @@ -726,22 +1414,48 @@ "PutPermissionsBoundaryToPermissionSetRequest$PermissionsBoundary": "

The permissions boundary that you want to attach to a PermissionSet.

" } }, + "PortalOptions": { + "base": "

A structure that describes the options for the access portal associated with an application.

", + "refs": { + "Application$PortalOptions": "

A structure that describes the options for the access portal associated with this application.

", + "CreateApplicationRequest$PortalOptions": "

A structure that describes the options for the portal associated with an application.

", + "DescribeApplicationResponse$PortalOptions": "

A structure that describes the options for the portal associated with an application.

" + } + }, "PrincipalId": { "base": null, "refs": { "AccountAssignment$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "AccountAssignmentForPrincipal$PrincipalId": "

The ID of the principal.

", "AccountAssignmentOperationStatus$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "ApplicationAssignment$PrincipalId": "

The unique identifier of the principal assigned to the application.

", + "ApplicationAssignmentForPrincipal$PrincipalId": "

The unique identifier of the principal assigned to the application.

", "CreateAccountAssignmentRequest$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", - "DeleteAccountAssignmentRequest$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

" + "CreateApplicationAssignmentRequest$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "DeleteAccountAssignmentRequest$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "DeleteApplicationAssignmentRequest$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "DescribeApplicationAssignmentRequest$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "DescribeApplicationAssignmentResponse$PrincipalId": "

An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the IAM Identity Center Identity Store API Reference.

", + "ListAccountAssignmentsForPrincipalRequest$PrincipalId": "

Specifies the principal for which you want to retrieve the list of account assignments.

", + "ListApplicationAssignmentsForPrincipalRequest$PrincipalId": "

Specifies the unique identifier of the principal for which you want to retrieve its assignments.

" } }, "PrincipalType": { "base": null, "refs": { "AccountAssignment$PrincipalType": "

The entity type for which the assignment will be created.

", + "AccountAssignmentForPrincipal$PrincipalType": "

The type of the principal.

", "AccountAssignmentOperationStatus$PrincipalType": "

The entity type for which the assignment will be created.

", + "ApplicationAssignment$PrincipalType": "

The type of the principal assigned to the application.

", + "ApplicationAssignmentForPrincipal$PrincipalType": "

The type of the principal assigned to the application.

", "CreateAccountAssignmentRequest$PrincipalType": "

The entity type for which the assignment will be created.

", - "DeleteAccountAssignmentRequest$PrincipalType": "

The entity type for which the assignment will be deleted.

" + "CreateApplicationAssignmentRequest$PrincipalType": "

The entity type for which the assignment will be created.

", + "DeleteAccountAssignmentRequest$PrincipalType": "

The entity type for which the assignment will be deleted.

", + "DeleteApplicationAssignmentRequest$PrincipalType": "

The entity type for which the assignment will be deleted.

", + "DescribeApplicationAssignmentRequest$PrincipalType": "

The entity type for which the assignment will be created.

", + "DescribeApplicationAssignmentResponse$PrincipalType": "

The entity type for which the assignment will be created.

", + "ListAccountAssignmentsForPrincipalRequest$PrincipalType": "

Specifies the type of the principal.

", + "ListApplicationAssignmentsForPrincipalRequest$PrincipalType": "

Specifies the type of the principal for which you want to retrieve its assignments.

" } }, "ProvisionPermissionSetRequest": { @@ -767,6 +1481,31 @@ "ListPermissionSetsProvisionedToAccountRequest$ProvisioningStatus": "

The status object for the permission set provisioning operation.

" } }, + "PutApplicationAccessScopeRequest": { + "base": null, + "refs": { + } + }, + "PutApplicationAssignmentConfigurationRequest": { + "base": null, + "refs": { + } + }, + "PutApplicationAssignmentConfigurationResponse": { + "base": null, + "refs": { + } + }, + "PutApplicationAuthenticationMethodRequest": { + "base": null, + "refs": { + } + }, + "PutApplicationGrantRequest": { + "base": null, + "refs": { + } + }, "PutInlinePolicyToPermissionSetRequest": { "base": null, "refs": { @@ -794,6 +1533,18 @@ "PermissionSetProvisioningStatus$FailureReason": "

The message that contains an error or exception in case of an operation failure.

" } }, + "RedirectUris": { + "base": null, + "refs": { + "AuthorizationCodeGrant$RedirectUris": "

A list of URIs that are valid locations to redirect a user's browser after the user is authorized.

" + } + }, + "RefreshTokenGrant": { + "base": "

A structure that defines configuration settings for an application that supports the OAuth 2.0 Refresh Token Grant.

", + "refs": { + "Grant$RefreshToken": "

Configuration options for the refresh_token grant type.

" + } + }, "RelayState": { "base": null, "refs": { @@ -813,6 +1564,67 @@ "ResourceNotFoundException$Message": null } }, + "ResourceServerConfig": { + "base": "

A structure that describes the configuration of a resource server.

", + "refs": { + "ApplicationProvider$ResourceServerConfig": "

A structure that describes the application provider's resource server.

", + "DescribeApplicationProviderResponse$ResourceServerConfig": "

A structure with details about the receiving application.

" + } + }, + "ResourceServerScope": { + "base": null, + "refs": { + "ResourceServerScopes$key": null + } + }, + "ResourceServerScopeDetails": { + "base": "

A structure that describes details for an IAM Identity Center access scope that is associated with a resource server.

", + "refs": { + "ResourceServerScopes$value": null + } + }, + "ResourceServerScopes": { + "base": null, + "refs": { + "ResourceServerConfig$Scopes": "

A list of the IAM Identity Center access scopes that are associated with this resource server.

" + } + }, + "Scope": { + "base": null, + "refs": { + "DeleteApplicationAccessScopeRequest$Scope": "

Specifies the name of the access scope to remove from the application.

", + "GetApplicationAccessScopeRequest$Scope": "

Specifies the name of the access scope for which you want the authorized targets.

", + "GetApplicationAccessScopeResponse$Scope": "

The name of the access scope that can be used with the authorized targets.

", + "PutApplicationAccessScopeRequest$Scope": "

Specifies the name of the access scope to be associated with the specified targets.

", + "ScopeDetails$Scope": "

The name of the access scope.

" + } + }, + "ScopeDetails": { + "base": "

A structure that describes an IAM Identity Center access scope and its authorized targets.

", + "refs": { + "Scopes$member": null + } + }, + "ScopeTarget": { + "base": null, + "refs": { + "ScopeTargets$member": null + } + }, + "ScopeTargets": { + "base": null, + "refs": { + "GetApplicationAccessScopeResponse$AuthorizedTargets": "

An array of authorized targets associated with this access scope.

", + "PutApplicationAccessScopeRequest$AuthorizedTargets": "

Specifies an array list of ARNs that represent the authorized targets for this access scope.

", + "ScopeDetails$AuthorizedTargets": "

An array list of ARNs of applications.

" + } + }, + "Scopes": { + "base": null, + "refs": { + "ListApplicationAccessScopesResponse$Scopes": "

An array list of access scopes and their authorized targets that are associated with the application.

" + } + }, "ServiceQuotaExceededException": { "base": "

Indicates that the principal has crossed the permitted number of resources that can be created.

", "refs": { @@ -824,6 +1636,19 @@ "ServiceQuotaExceededException$Message": null } }, + "SignInOptions": { + "base": "

A structure that describes the sign-in options for an application portal.

", + "refs": { + "PortalOptions$SignInOptions": "

A structure that describes the sign-in options for the access portal.

", + "UpdateApplicationPortalOptions$SignInOptions": null + } + }, + "SignInOrigin": { + "base": null, + "refs": { + "SignInOptions$Origin": "

This determines how IAM Identity Center navigates the user to the target application. It can be one of the following values:

  • APPLICATION: IAM Identity Center redirects the customer to the configured ApplicationUrl.

  • IDENTITY_CENTER: IAM Identity Center uses SAML identity-provider initiated authentication to sign the customer directly into a SAML-based application.

" + } + }, "StatusValues": { "base": null, "refs": { @@ -856,7 +1681,10 @@ "TagList": { "base": null, "refs": { + "CreateApplicationRequest$Tags": "

Specifies tags to be attached to the application.

", + "CreateInstanceRequest$Tags": "

Specifies tags to be attached to the instance of IAM Identity Center.

", "CreatePermissionSetRequest$Tags": "

The tags to attach to the new PermissionSet.

", + "CreateTrustedTokenIssuerRequest$Tags": "

Specifies tags to be attached to the new trusted token issuer configuration.

", "ListTagsForResourceResponse$Tags": "

A set of key-value pairs that are used to manage the resource.

", "TagResourceRequest$Tags": "

A set of key-value pairs that are used to manage the resource.

" } @@ -921,10 +1749,26 @@ "ListAccountAssignmentCreationStatusResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListAccountAssignmentDeletionStatusRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListAccountAssignmentDeletionStatusResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", + "ListAccountAssignmentsForPrincipalRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListAccountAssignmentsForPrincipalResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", "ListAccountAssignmentsRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListAccountAssignmentsResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListAccountsForProvisionedPermissionSetRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListAccountsForProvisionedPermissionSetResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", + "ListApplicationAccessScopesRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationAccessScopesResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", + "ListApplicationAssignmentsForPrincipalRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationAssignmentsForPrincipalResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", + "ListApplicationAssignmentsRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationAssignmentsResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", + "ListApplicationAuthenticationMethodsRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationAuthenticationMethodsResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", + "ListApplicationGrantsRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationGrantsResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", + "ListApplicationProvidersRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationProvidersResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", + "ListApplicationsRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListApplicationsResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", "ListCustomerManagedPolicyReferencesInPermissionSetRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListCustomerManagedPolicyReferencesInPermissionSetResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListInstancesRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", @@ -938,7 +1782,93 @@ "ListPermissionSetsRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListPermissionSetsResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", "ListTagsForResourceRequest$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", - "ListTagsForResourceResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

" + "ListTagsForResourceResponse$NextToken": "

The pagination token for the list API. Initially the value is null. Use the output of previous API calls to make subsequent calls.

", + "ListTrustedTokenIssuersRequest$NextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", + "ListTrustedTokenIssuersResponse$NextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

" + } + }, + "TokenExchangeGrant": { + "base": "

A structure that defines configuration settings for an application that supports the OAuth 2.0 Token Exchange Grant.

", + "refs": { + "Grant$TokenExchange": "

Configuration options for the urn:ietf:params:oauth:grant-type:token-exchange grant type.

" + } + }, + "TokenIssuerAudience": { + "base": null, + "refs": { + "TokenIssuerAudiences$member": null + } + }, + "TokenIssuerAudiences": { + "base": null, + "refs": { + "AuthorizedTokenIssuer$AuthorizedAudiences": "

An array list of authorized audiences, or applications, that can consume the tokens generated by the associated trusted token issuer.

" + } + }, + "TrustedTokenIssuerArn": { + "base": null, + "refs": { + "AuthorizedTokenIssuer$TrustedTokenIssuerArn": "

The ARN of the trusted token issuer.

", + "CreateTrustedTokenIssuerResponse$TrustedTokenIssuerArn": "

The ARN of the new trusted token issuer configuration.

", + "DeleteTrustedTokenIssuerRequest$TrustedTokenIssuerArn": "

Specifies the ARN of the trusted token issuer configuration to delete.

", + "DescribeTrustedTokenIssuerRequest$TrustedTokenIssuerArn": "

Specifies the ARN of the trusted token issuer configuration that you want details about.

", + "DescribeTrustedTokenIssuerResponse$TrustedTokenIssuerArn": "

The ARN of the trusted token issuer configuration.

", + "TrustedTokenIssuerMetadata$TrustedTokenIssuerArn": "

The ARN of the trusted token issuer configuration in the instance of IAM Identity Center.

", + "UpdateTrustedTokenIssuerRequest$TrustedTokenIssuerArn": "

Specifies the ARN of the trusted token issuer configuration that you want to update.

" + } + }, + "TrustedTokenIssuerConfiguration": { + "base": "

A structure that describes the configuration of a trusted token issuer. The structure and available settings are determined by the type of the trusted token issuer.

", + "refs": { + "CreateTrustedTokenIssuerRequest$TrustedTokenIssuerConfiguration": "

Specifies settings that apply to the new trusted token issuer configuration. The settings that are available depend on what TrustedTokenIssuerType you specify.

", + "DescribeTrustedTokenIssuerResponse$TrustedTokenIssuerConfiguration": "

A structure the describes the settings that apply of this trusted token issuer.

" + } + }, + "TrustedTokenIssuerList": { + "base": null, + "refs": { + "ListTrustedTokenIssuersResponse$TrustedTokenIssuers": "

An array list of the trusted token issuer configurations.

" + } + }, + "TrustedTokenIssuerMetadata": { + "base": "

A structure that describes a trusted token issuer.

", + "refs": { + "TrustedTokenIssuerList$member": null + } + }, + "TrustedTokenIssuerName": { + "base": null, + "refs": { + "CreateTrustedTokenIssuerRequest$Name": "

Specifies the name of the new trusted token issuer configuration.

", + "DescribeTrustedTokenIssuerResponse$Name": "

The name of the trusted token issuer configuration.

", + "TrustedTokenIssuerMetadata$Name": "

The name of the trusted token issuer configuration in the instance of IAM Identity Center.

", + "UpdateTrustedTokenIssuerRequest$Name": "

Specifies the updated name to be applied to the trusted token issuer configuration.

" + } + }, + "TrustedTokenIssuerType": { + "base": null, + "refs": { + "CreateTrustedTokenIssuerRequest$TrustedTokenIssuerType": "

Specifies the type of the new trusted token issuer.

", + "DescribeTrustedTokenIssuerResponse$TrustedTokenIssuerType": "

The type of the trusted token issuer.

", + "TrustedTokenIssuerMetadata$TrustedTokenIssuerType": "

The type of trusted token issuer.

" + } + }, + "TrustedTokenIssuerUpdateConfiguration": { + "base": "

A structure that contains details to be updated for a trusted token issuer configuration. The structure and settings that you can include depend on the type of the trusted token issuer being updated.

", + "refs": { + "UpdateTrustedTokenIssuerRequest$TrustedTokenIssuerConfiguration": "

Specifies a structure with settings to apply to the specified trusted token issuer. The settings that you can provide are determined by the type of the trusted token issuer that you are updating.

" + } + }, + "TrustedTokenIssuerUrl": { + "base": null, + "refs": { + "OidcJwtConfiguration$IssuerUrl": "

The URL that IAM Identity Center uses for OpenID Discovery. OpenID Discovery is used to obtain the information required to verify the tokens that the trusted token issuer generates.

" + } + }, + "URI": { + "base": null, + "refs": { + "RedirectUris$member": null } }, "UUId": { @@ -963,6 +1893,22 @@ "refs": { } }, + "UpdateApplicationPortalOptions": { + "base": "

A structure that describes the options for the access portal associated with an application that can be updated.

", + "refs": { + "UpdateApplicationRequest$PortalOptions": "

A structure that describes the options for the portal associated with an application.

" + } + }, + "UpdateApplicationRequest": { + "base": null, + "refs": { + } + }, + "UpdateApplicationResponse": { + "base": null, + "refs": { + } + }, "UpdateInstanceAccessControlAttributeConfigurationRequest": { "base": null, "refs": { @@ -973,6 +1919,16 @@ "refs": { } }, + "UpdateInstanceRequest": { + "base": null, + "refs": { + } + }, + "UpdateInstanceResponse": { + "base": null, + "refs": { + } + }, "UpdatePermissionSetRequest": { "base": null, "refs": { @@ -982,6 +1938,16 @@ "base": null, "refs": { } + }, + "UpdateTrustedTokenIssuerRequest": { + "base": null, + "refs": { + } + }, + "UpdateTrustedTokenIssuerResponse": { + "base": null, + "refs": { + } }, "ValidationException": { "base": "

The request failed because it contains a syntax error.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-admin/2020-07-20/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-admin/2020-07-20/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -18,12 +18,58 @@ "limit_key": "MaxResults", "result_key": "AccountAssignments" }, + "ListAccountAssignmentsForPrincipal": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "AccountAssignments" + }, "ListAccountsForProvisionedPermissionSet": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "AccountIds" }, + "ListApplicationAccessScopes": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Scopes" + }, + "ListApplicationAssignments": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ApplicationAssignments" + }, + "ListApplicationAssignmentsForPrincipal": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ApplicationAssignments" + }, + "ListApplicationAuthenticationMethods": { + "input_token": "NextToken", + "output_token": "NextToken", + "result_key": "AuthenticationMethods" + }, + "ListApplicationGrants": { + "input_token": "NextToken", + "output_token": "NextToken", + "result_key": "Grants" + }, + "ListApplicationProviders": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ApplicationProviders" + }, + "ListApplications": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Applications" + }, "ListCustomerManagedPolicyReferencesInPermissionSet": { "input_token": "NextToken", "output_token": "NextToken", @@ -64,6 +110,12 @@ "input_token": "NextToken", "output_token": "NextToken", "result_key": "Tags" + }, + "ListTrustedTokenIssuers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "TrustedTokenIssuers" } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,7 +9,7 @@ "serviceFullName":"AWS SSO OIDC", "serviceId":"SSO OIDC", "signatureVersion":"v4", - "signingName":"awsssooidc", + "signingName":"sso-oauth", "uid":"sso-oidc-2019-06-10" }, "operations":{ @@ -36,6 +36,29 @@ ], "authtype":"none" }, + "CreateTokenWithIAM":{ + "name":"CreateTokenWithIAM", + "http":{ + "method":"POST", + "requestUri":"/token?aws_iam=t" + }, + "input":{"shape":"CreateTokenWithIAMRequest"}, + "output":{"shape":"CreateTokenWithIAMResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidClientException"}, + {"shape":"InvalidGrantException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"UnsupportedGrantTypeException"}, + {"shape":"InvalidScopeException"}, + {"shape":"AuthorizationPendingException"}, + {"shape":"SlowDownException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ExpiredTokenException"}, + {"shape":"InternalServerException"}, + {"shape":"InvalidRequestRegionException"} + ] + }, "RegisterClient":{ "name":"RegisterClient", "http":{ @@ -80,7 +103,14 @@ "error":{"httpStatusCode":400}, "exception":true }, - "AccessToken":{"type":"string"}, + "AccessToken":{ + "type":"string", + "sensitive":true + }, + "Assertion":{ + "type":"string", + "sensitive":true + }, "AuthCode":{"type":"string"}, "AuthorizationPendingException":{ "type":"structure", @@ -93,7 +123,10 @@ }, "ClientId":{"type":"string"}, "ClientName":{"type":"string"}, - "ClientSecret":{"type":"string"}, + "ClientSecret":{ + "type":"string", + "sensitive":true + }, "ClientType":{"type":"string"}, "CreateTokenRequest":{ "type":"structure", @@ -123,6 +156,37 @@ "idToken":{"shape":"IdToken"} } }, + "CreateTokenWithIAMRequest":{ + "type":"structure", + "required":[ + "clientId", + "grantType" + ], + "members":{ + "clientId":{"shape":"ClientId"}, + "grantType":{"shape":"GrantType"}, + "code":{"shape":"AuthCode"}, + "refreshToken":{"shape":"RefreshToken"}, + "assertion":{"shape":"Assertion"}, + "scope":{"shape":"Scopes"}, + "redirectUri":{"shape":"URI"}, + "subjectToken":{"shape":"SubjectToken"}, + "subjectTokenType":{"shape":"TokenTypeURI"}, + "requestedTokenType":{"shape":"TokenTypeURI"} + } + }, + "CreateTokenWithIAMResponse":{ + "type":"structure", + "members":{ + "accessToken":{"shape":"AccessToken"}, + "tokenType":{"shape":"TokenType"}, + "expiresIn":{"shape":"ExpirationInSeconds"}, + "refreshToken":{"shape":"RefreshToken"}, + "idToken":{"shape":"IdToken"}, + "issuedTokenType":{"shape":"TokenTypeURI"}, + "scope":{"shape":"Scopes"} + } + }, "DeviceCode":{"type":"string"}, "Error":{"type":"string"}, "ErrorDescription":{"type":"string"}, @@ -137,7 +201,10 @@ "exception":true }, "GrantType":{"type":"string"}, - "IdToken":{"type":"string"}, + "IdToken":{ + "type":"string", + "sensitive":true + }, "InternalServerException":{ "type":"structure", "members":{ @@ -185,6 +252,17 @@ "error":{"httpStatusCode":400}, "exception":true }, + "InvalidRequestRegionException":{ + "type":"structure", + "members":{ + "error":{"shape":"Error"}, + "error_description":{"shape":"ErrorDescription"}, + "endpoint":{"shape":"Location"}, + "region":{"shape":"Region"} + }, + "error":{"httpStatusCode":400}, + "exception":true + }, "InvalidScopeException":{ "type":"structure", "members":{ @@ -194,8 +272,13 @@ "error":{"httpStatusCode":400}, "exception":true }, + "Location":{"type":"string"}, "LongTimeStampType":{"type":"long"}, - "RefreshToken":{"type":"string"}, + "RefreshToken":{ + "type":"string", + "sensitive":true + }, + "Region":{"type":"string"}, "RegisterClientRequest":{ "type":"structure", "required":[ @@ -257,7 +340,12 @@ "interval":{"shape":"IntervalInSeconds"} } }, + "SubjectToken":{ + "type":"string", + "sensitive":true + }, "TokenType":{"type":"string"}, + "TokenTypeURI":{"type":"string"}, "URI":{"type":"string"}, "UnauthorizedClientException":{ "type":"structure", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,8 +1,9 @@ { "version": "2.0", - "service": "

AWS IAM Identity Center (successor to AWS Single Sign-On) OpenID Connect (OIDC) is a web service that enables a client (such as AWS CLI or a native application) to register with IAM Identity Center. The service also enables the client to fetch the user’s access token upon successful authentication and authorization with IAM Identity Center.

Although AWS Single Sign-On was renamed, the sso and identitystore API namespaces will continue to retain their original name for backward compatibility purposes. For more information, see IAM Identity Center rename.

Considerations for Using This Guide

Before you begin using this guide, we recommend that you first review the following important information about how the IAM Identity Center OIDC service works.

  • The IAM Identity Center OIDC service currently implements only the portions of the OAuth 2.0 Device Authorization Grant standard (https://tools.ietf.org/html/rfc8628) that are necessary to enable single sign-on authentication with the AWS CLI. Support for other OIDC flows frequently needed for native applications, such as Authorization Code Flow (+ PKCE), will be addressed in future releases.

  • The service emits only OIDC access tokens, such that obtaining a new token (For example, token refresh) requires explicit user re-authentication.

  • The access tokens provided by this service grant access to all AWS account entitlements assigned to an IAM Identity Center user, not just a particular application.

  • The documentation in this guide does not describe the mechanism to convert the access token into AWS Auth (“sigv4”) credentials for use with IAM-protected AWS service endpoints. For more information, see GetRoleCredentials in the IAM Identity Center Portal API Reference Guide.

For general information about IAM Identity Center, see What is IAM Identity Center? in the IAM Identity Center User Guide.

", + "service": "

IAM Identity Center OpenID Connect (OIDC) is a web service that enables a client (such as CLI or a native application) to register with IAM Identity Center. The service also enables the client to fetch the user’s access token upon successful authentication and authorization with IAM Identity Center.

IAM Identity Center uses the sso and identitystore API namespaces.

Considerations for Using This Guide

Before you begin using this guide, we recommend that you first review the following important information about how the IAM Identity Center OIDC service works.

  • The IAM Identity Center OIDC service currently implements only the portions of the OAuth 2.0 Device Authorization Grant standard (https://tools.ietf.org/html/rfc8628) that are necessary to enable single sign-on authentication with the CLI.

  • With older versions of the CLI, the service only emits OIDC access tokens, so to obtain a new token, users must explicitly re-authenticate. To access the OIDC flow that supports token refresh and doesn’t require re-authentication, update to the latest CLI version (1.27.10 for CLI V1 and 2.9.0 for CLI V2) with support for OIDC token refresh and configurable IAM Identity Center session durations. For more information, see Configure Amazon Web Services access portal session duration .

  • The access tokens provided by this service grant access to all Amazon Web Services account entitlements assigned to an IAM Identity Center user, not just a particular application.

  • The documentation in this guide does not describe the mechanism to convert the access token into Amazon Web Services Auth (“sigv4”) credentials for use with IAM-protected Amazon Web Services service endpoints. For more information, see GetRoleCredentials in the IAM Identity Center Portal API Reference Guide.

For general information about IAM Identity Center, see What is IAM Identity Center? in the IAM Identity Center User Guide.

", "operations": { - "CreateToken": "

Creates and returns an access token for the authorized client. The access token issued will be used to fetch short-term credentials for the assigned roles in the AWS account.

", + "CreateToken": "

Creates and returns access and refresh tokens for clients that are authenticated using client secrets. The access token can be used to fetch short-term credentials for the assigned AWS accounts or to access application APIs using bearer authentication.

", + "CreateTokenWithIAM": "

Creates and returns access and refresh tokens for clients and applications that are authenticated using IAM entities. The access token can be used to fetch short-term credentials for the assigned AWS accounts or to access application APIs using bearer authentication.

", "RegisterClient": "

Registers a client with IAM Identity Center. This allows clients to initiate device authorization. The output should be persisted for reuse through many authentication requests.

", "StartDeviceAuthorization": "

Initiates device authorization by requesting a pair of verification codes from the authorization service.

" }, @@ -15,13 +16,21 @@ "AccessToken": { "base": null, "refs": { - "CreateTokenResponse$accessToken": "

An opaque token to access IAM Identity Center resources assigned to a user.

" + "CreateTokenResponse$accessToken": "

A bearer token to access AWS accounts and applications assigned to a user.

", + "CreateTokenWithIAMResponse$accessToken": "

A bearer token to access AWS accounts and applications assigned to a user.

" + } + }, + "Assertion": { + "base": null, + "refs": { + "CreateTokenWithIAMRequest$assertion": "

Used only when calling this API for the JWT Bearer grant type. This value specifies the JSON Web Token (JWT) issued by a trusted token issuer. To authorize a trusted token issuer, configure the JWT Bearer GrantOptions for the application.

" } }, "AuthCode": { "base": null, "refs": { - "CreateTokenRequest$code": "

The authorization code received from the authorization service. This parameter is required to perform an authorization grant request to get access to a token.

" + "CreateTokenRequest$code": "

Used only when calling this API for the Authorization Code grant type. The short-term code is used to identify this authorization request. This grant type is currently unsupported for the CreateToken API.

", + "CreateTokenWithIAMRequest$code": "

Used only when calling this API for the Authorization Code grant type. This short-term code is used to identify this authorization request. The code is obtained through a redirect from IAM Identity Center to a redirect URI persisted in the Authorization Code GrantOptions for the application.

" } }, "AuthorizationPendingException": { @@ -32,7 +41,8 @@ "ClientId": { "base": null, "refs": { - "CreateTokenRequest$clientId": "

The unique identifier string for each client. This value should come from the persisted result of the RegisterClient API.

", + "CreateTokenRequest$clientId": "

The unique identifier string for the client or application. This value comes from the result of the RegisterClient API.

", + "CreateTokenWithIAMRequest$clientId": "

The unique identifier string for the client or application. This value is an application ARN that has OAuth grants configured.

", "RegisterClientResponse$clientId": "

The unique identifier string for each client. This client uses this identifier to get authenticated by the service in subsequent calls.

", "StartDeviceAuthorizationRequest$clientId": "

The unique identifier string for the client that is registered with IAM Identity Center. This value should come from the persisted result of the RegisterClient API operation.

" } @@ -67,51 +77,64 @@ "refs": { } }, + "CreateTokenWithIAMRequest": { + "base": null, + "refs": { + } + }, + "CreateTokenWithIAMResponse": { + "base": null, + "refs": { + } + }, "DeviceCode": { "base": null, "refs": { - "CreateTokenRequest$deviceCode": "

Used only when calling this API for the device code grant type. This short-term code is used to identify this authentication attempt. This should come from an in-memory reference to the result of the StartDeviceAuthorization API.

", + "CreateTokenRequest$deviceCode": "

Used only when calling this API for the Device Code grant type. This short-term code is used to identify this authorization request. This comes from the result of the StartDeviceAuthorization API.

", "StartDeviceAuthorizationResponse$deviceCode": "

The short-lived code that is used by the device when polling for a session token.

" } }, "Error": { "base": null, "refs": { - "AccessDeniedException$error": null, - "AuthorizationPendingException$error": null, - "ExpiredTokenException$error": null, - "InternalServerException$error": null, - "InvalidClientException$error": null, - "InvalidClientMetadataException$error": null, - "InvalidGrantException$error": null, - "InvalidRequestException$error": null, - "InvalidScopeException$error": null, - "SlowDownException$error": null, - "UnauthorizedClientException$error": null, - "UnsupportedGrantTypeException$error": null + "AccessDeniedException$error": "

Single error code. For this exception the value will be access_denied.

", + "AuthorizationPendingException$error": "

Single error code. For this exception the value will be authorization_pending.

", + "ExpiredTokenException$error": "

Single error code. For this exception the value will be expired_token.

", + "InternalServerException$error": "

Single error code. For this exception the value will be server_error.

", + "InvalidClientException$error": "

Single error code. For this exception the value will be invalid_client.

", + "InvalidClientMetadataException$error": "

Single error code. For this exception the value will be invalid_client_metadata.

", + "InvalidGrantException$error": "

Single error code. For this exception the value will be invalid_grant.

", + "InvalidRequestException$error": "

Single error code. For this exception the value will be invalid_request.

", + "InvalidRequestRegionException$error": "

Single error code. For this exception the value will be invalid_request.

", + "InvalidScopeException$error": "

Single error code. For this exception the value will be invalid_scope.

", + "SlowDownException$error": "

Single error code. For this exception the value will be slow_down.

", + "UnauthorizedClientException$error": "

Single error code. For this exception the value will be unauthorized_client.

", + "UnsupportedGrantTypeException$error": "

Single error code. For this exception the value will be unsupported_grant_type.

" } }, "ErrorDescription": { "base": null, "refs": { - "AccessDeniedException$error_description": null, - "AuthorizationPendingException$error_description": null, - "ExpiredTokenException$error_description": null, - "InternalServerException$error_description": null, - "InvalidClientException$error_description": null, - "InvalidClientMetadataException$error_description": null, - "InvalidGrantException$error_description": null, - "InvalidRequestException$error_description": null, - "InvalidScopeException$error_description": null, - "SlowDownException$error_description": null, - "UnauthorizedClientException$error_description": null, - "UnsupportedGrantTypeException$error_description": null + "AccessDeniedException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "AuthorizationPendingException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "ExpiredTokenException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InternalServerException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InvalidClientException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InvalidClientMetadataException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InvalidGrantException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InvalidRequestException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InvalidRequestRegionException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "InvalidScopeException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "SlowDownException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "UnauthorizedClientException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

", + "UnsupportedGrantTypeException$error_description": "

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred.

" } }, "ExpirationInSeconds": { "base": null, "refs": { "CreateTokenResponse$expiresIn": "

Indicates the time in seconds when an access token will expire.

", + "CreateTokenWithIAMResponse$expiresIn": "

Indicates the time in seconds when an access token will expire.

", "StartDeviceAuthorizationResponse$expiresIn": "

Indicates the number of seconds in which the verification code will become invalid.

" } }, @@ -123,13 +146,15 @@ "GrantType": { "base": null, "refs": { - "CreateTokenRequest$grantType": "

Supports grant types for the authorization code, refresh token, and device code request. For device code requests, specify the following value:

urn:ietf:params:oauth:grant-type:device_code

For information about how to obtain the device code, see the StartDeviceAuthorization topic.

" + "CreateTokenRequest$grantType": "

Supports the following OAuth grant types: Device Code and Refresh Token. Specify either of the following values, depending on the grant type that you want:

* Device Code - urn:ietf:params:oauth:grant-type:device_code

* Refresh Token - refresh_token

For information about how to obtain the device code, see the StartDeviceAuthorization topic.

", + "CreateTokenWithIAMRequest$grantType": "

Supports the following OAuth grant types: Authorization Code, Refresh Token, JWT Bearer, and Token Exchange. Specify one of the following values, depending on the grant type that you want:

* Authorization Code - authorization_code

* Refresh Token - refresh_token

* JWT Bearer - urn:ietf:params:oauth:grant-type:jwt-bearer

* Token Exchange - urn:ietf:params:oauth:grant-type:token-exchange

" } }, "IdToken": { "base": null, "refs": { - "CreateTokenResponse$idToken": "

Currently, idToken is not yet implemented and is not supported. For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

The identifier of the user that associated with the access token, if present.

" + "CreateTokenResponse$idToken": "

The idToken is not implemented or supported. For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

A JSON Web Token (JWT) that identifies who is associated with the issued access token.

", + "CreateTokenWithIAMResponse$idToken": "

A JSON Web Token (JWT) that identifies the user associated with the issued access token.

" } }, "InternalServerException": { @@ -163,11 +188,22 @@ "refs": { } }, + "InvalidRequestRegionException": { + "base": "

Indicates that a token provided as input to the request was issued by and is only usable by calling IAM Identity Center endpoints in another region.

", + "refs": { + } + }, "InvalidScopeException": { "base": "

Indicates that the scope provided in the request is invalid.

", "refs": { } }, + "Location": { + "base": null, + "refs": { + "InvalidRequestRegionException$endpoint": "

Indicates the IAM Identity Center endpoint which the requester may call with this token.

" + } + }, "LongTimeStampType": { "base": null, "refs": { @@ -178,8 +214,16 @@ "RefreshToken": { "base": null, "refs": { - "CreateTokenRequest$refreshToken": "

Currently, refreshToken is not yet implemented and is not supported. For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

The token used to obtain an access token in the event that the access token is invalid or expired.

", - "CreateTokenResponse$refreshToken": "

Currently, refreshToken is not yet implemented and is not supported. For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

A token that, if present, can be used to refresh a previously issued access token that might have expired.

" + "CreateTokenRequest$refreshToken": "

Used only when calling this API for the Refresh Token grant type. This token is used to refresh short-term tokens, such as the access token, that might expire.

For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

", + "CreateTokenResponse$refreshToken": "

A token that, if present, can be used to refresh a previously issued access token that might have expired.

For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

", + "CreateTokenWithIAMRequest$refreshToken": "

Used only when calling this API for the Refresh Token grant type. This token is used to refresh short-term tokens, such as the access token, that might expire.

For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

", + "CreateTokenWithIAMResponse$refreshToken": "

A token that, if present, can be used to refresh a previously issued access token that might have expired.

For more information about the features and limitations of the current IAM Identity Center OIDC implementation, see Considerations for Using this Guide in the IAM Identity Center OIDC API Reference.

" + } + }, + "Region": { + "base": null, + "refs": { + "InvalidRequestRegionException$region": "

Indicates the region which the requester may call with this token.

" } }, "RegisterClientRequest": { @@ -201,7 +245,9 @@ "Scopes": { "base": null, "refs": { - "CreateTokenRequest$scope": "

The list of scopes that is defined by the client. Upon authorization, this list is used to restrict permissions when granting an access token.

", + "CreateTokenRequest$scope": "

The list of scopes for which authorization is requested. The access token that is issued is limited to the scopes that are granted. If this value is not specified, IAM Identity Center authorizes all scopes that are configured for the client during the call to RegisterClient.

", + "CreateTokenWithIAMRequest$scope": "

The list of scopes for which authorization is requested. The access token that is issued is limited to the scopes that are granted. If the value is not specified, IAM Identity Center authorizes all scopes configured for the application, including the following default scopes: openid, aws, sts:identity_context.

", + "CreateTokenWithIAMResponse$scope": "

The list of scopes for which authorization is granted. The access token that is issued is limited to the scopes that are granted.

", "RegisterClientRequest$scopes": "

The list of scopes that are defined by the client. Upon authorization, this list is used to restrict permissions when granting an access token.

" } }, @@ -220,19 +266,35 @@ "refs": { } }, + "SubjectToken": { + "base": null, + "refs": { + "CreateTokenWithIAMRequest$subjectToken": "

Used only when calling this API for the Token Exchange grant type. This value specifies the subject of the exchange. The value of the subject token must be an access token issued by IAM Identity Center to a different client or application. The access token must have authorized scopes that indicate the requested application as a target audience.

" + } + }, "TokenType": { "base": null, "refs": { - "CreateTokenResponse$tokenType": "

Used to notify the client that the returned token is an access token. The supported type is BearerToken.

" + "CreateTokenResponse$tokenType": "

Used to notify the client that the returned token is an access token. The supported token type is Bearer.

", + "CreateTokenWithIAMResponse$tokenType": "

Used to notify the requester that the returned token is an access token. The supported token type is Bearer.

" + } + }, + "TokenTypeURI": { + "base": null, + "refs": { + "CreateTokenWithIAMRequest$subjectTokenType": "

Used only when calling this API for the Token Exchange grant type. This value specifies the type of token that is passed as the subject of the exchange. The following value is supported:

* Access Token - urn:ietf:params:oauth:token-type:access_token

", + "CreateTokenWithIAMRequest$requestedTokenType": "

Used only when calling this API for the Token Exchange grant type. This value specifies the type of token that the requester can receive. The following values are supported:

* Access Token - urn:ietf:params:oauth:token-type:access_token

* Refresh Token - urn:ietf:params:oauth:token-type:refresh_token

", + "CreateTokenWithIAMResponse$issuedTokenType": "

Indicates the type of tokens that are issued by IAM Identity Center. The following values are supported:

* Access Token - urn:ietf:params:oauth:token-type:access_token

* Refresh Token - urn:ietf:params:oauth:token-type:refresh_token

" } }, "URI": { "base": null, "refs": { - "CreateTokenRequest$redirectUri": "

The location of the application that will receive the authorization code. Users authorize the service to send the request to this location.

", - "RegisterClientResponse$authorizationEndpoint": "

The endpoint where the client can request authorization.

", - "RegisterClientResponse$tokenEndpoint": "

The endpoint where the client can get an access token.

", - "StartDeviceAuthorizationRequest$startUrl": "

The URL for the AWS access portal. For more information, see Using the AWS access portal in the IAM Identity Center User Guide.

", + "CreateTokenRequest$redirectUri": "

Used only when calling this API for the Authorization Code grant type. This value specifies the location of the client or application that has registered to receive the authorization code.

", + "CreateTokenWithIAMRequest$redirectUri": "

Used only when calling this API for the Authorization Code grant type. This value specifies the location of the client or application that has registered to receive the authorization code.

", + "RegisterClientResponse$authorizationEndpoint": "

An endpoint that the client can use to request authorization.

", + "RegisterClientResponse$tokenEndpoint": "

An endpoint that the client can use to create tokens.

", + "StartDeviceAuthorizationRequest$startUrl": "

The URL for the Amazon Web Services access portal. For more information, see Using the Amazon Web Services access portal in the IAM Identity Center User Guide.

", "StartDeviceAuthorizationResponse$verificationUri": "

The URI of the verification page that takes the userCode to authorize the device.

", "StartDeviceAuthorizationResponse$verificationUriComplete": "

An alternate URL that the client can use to automatically launch a browser. This process skips the manual step in which the user visits the verification page and enters their code.

" } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,18 +212,17 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -236,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -256,14 +252,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -277,7 +275,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -326,9 +324,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sso-oidc/2019-06-10/examples-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sso-oidc/2019-06-10/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,233 @@ { "version": "1.0", "examples": { + "CreateToken": [ + { + "input": { + "clientId": "_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID", + "clientSecret": "VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0", + "deviceCode": "yJraWQiOiJrZXktMTU2Njk2ODA4OCIsImFsZyI6IkhTMzIn0EXAMPLEDEVICECODE", + "grantType": "urn:ietf:params:oauth:grant-type:device-code" + }, + "output": { + "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", + "expiresIn": 1579729529, + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "tokenType": "Bearer" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "create-token-for-device-code", + "title": "Call OAuth/OIDC /token endpoint for Device Code grant with Secret authentication" + }, + { + "input": { + "clientId": "_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID", + "clientSecret": "VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0", + "grantType": "refresh_token", + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "scope": [ + "codewhisperer:completions" + ] + }, + "output": { + "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", + "expiresIn": 1579729529, + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "tokenType": "Bearer" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "create-token-for-refresh-token", + "title": "Call OAuth/OIDC /token endpoint for Refresh Token grant with Secret authentication" + } + ], + "CreateTokenWithIAM": [ + { + "input": { + "clientId": "arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222", + "code": "yJraWQiOiJrZXktMTU2Njk2ODA4OCIsImFsZyI6IkhTMzg0In0EXAMPLEAUTHCODE", + "grantType": "authorization_code", + "redirectUri": "https://mywebapp.example/redirect", + "scope": [ + "openid", + "aws", + "sts:identity_context" + ] + }, + "output": { + "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", + "expiresIn": 1579729529, + "idToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0", + "issuedTokenType": "urn:ietf:params:oauth:token-type:refresh_token", + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "scope": [ + "openid", + "aws", + "sts:identity_context" + ], + "tokenType": "Bearer" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "create-token-with-iam-for-auth-code", + "title": "Call OAuth/OIDC /token endpoint for Authorization Code grant with IAM authentication" + }, + { + "input": { + "clientId": "arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222", + "grantType": "refresh_token", + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN" + }, + "output": { + "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", + "expiresIn": 1579729529, + "issuedTokenType": "urn:ietf:params:oauth:token-type:refresh_token", + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "scope": [ + "openid", + "aws", + "sts:identity_context" + ], + "tokenType": "Bearer" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "create-token-with-iam-for-refresh-token", + "title": "Call OAuth/OIDC /token endpoint for Refresh Token grant with IAM authentication" + }, + { + "input": { + "assertion": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IjFMVE16YWtpaGlSbGFfOHoyQkVKVlhlV01xbyJ9.eyJ2ZXIiOiIyLjAiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vOTEyMjA0MGQtNmM2Ny00YzViLWIxMTItMzZhMzA0YjY2ZGFkL3YyLjAiLCJzdWIiOiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFJa3pxRlZyU2FTYUZIeTc4MmJidGFRIiwiYXVkIjoiNmNiMDQwMTgtYTNmNS00NmE3LWI5OTUtOTQwYzc4ZjVhZWYzIiwiZXhwIjoxNTM2MzYxNDExLCJpYXQiOjE1MzYyNzQ3MTEsIm5iZiI6MTUzNjI3NDcxMSwibmFtZSI6IkFiZSBMaW5jb2xuIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiQWJlTGlAbWljcm9zb2Z0LmNvbSIsIm9pZCI6IjAwMDAwMDAwLTAwMDAtMDAwMC02NmYzLTMzMzJlY2E3ZWE4MSIsInRpZCI6IjkxMjIwNDBkLTZjNjctNGM1Yi1iMTEyLTM2YTMwNGI2NmRhZCIsIm5vbmNlIjoiMTIzNTIzIiwiYWlvIjoiRGYyVVZYTDFpeCFsTUNXTVNPSkJjRmF0emNHZnZGR2hqS3Y4cTVnMHg3MzJkUjVNQjVCaXN2R1FPN1lXQnlqZDhpUURMcSFlR2JJRGFreXA1bW5PcmNkcUhlWVNubHRlcFFtUnA2QUlaOGpZIn0.1AFWW-Ck5nROwSlltm7GzZvDwUkqvhSQpm55TQsmVo9Y59cLhRXpvB8n-55HCr9Z6G_31_UbeUkoz612I2j_Sm9FFShSDDjoaLQr54CreGIJvjtmS3EkK9a7SJBbcpL1MpUtlfygow39tFjY7EVNW9plWUvRrTgVk7lYLprvfzw-CIqw3gHC-T7IK_m_xkr08INERBtaecwhTeN4chPC4W3jdmw_lIxzC48YoQ0dB1L9-ImX98Egypfrlbm0IBL5spFzL6JDZIRRJOu8vecJvj1mq-IUhGt0MacxX8jdxYLP-KUu2d9MbNKpCKJuZ7p8gwTL5B7NlUdh_dmSviPWrw", + "clientId": "arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222", + "grantType": "urn:ietf:params:oauth:grant-type:jwt-bearer" + }, + "output": { + "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", + "expiresIn": 1579729529, + "idToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0", + "issuedTokenType": "urn:ietf:params:oauth:token-type:refresh_token", + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "scope": [ + "openid", + "aws", + "sts:identity_context" + ], + "tokenType": "Bearer" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "create-token-with-iam-for-jwt-bearer", + "title": "Call OAuth/OIDC /token endpoint for JWT Bearer grant with IAM authentication" + }, + { + "input": { + "clientId": "arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222", + "grantType": "urn:ietf:params:oauth:grant-type:token-exchange", + "requestedTokenType": "urn:ietf:params:oauth:token-type:access_token", + "subjectToken": "aoak-Hig8TUDPNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZDIFFERENTACCESSTOKEN", + "subjectTokenType": "urn:ietf:params:oauth:token-type:access_token" + }, + "output": { + "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", + "expiresIn": 1579729529, + "idToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.5SYiW1kMsuUr7nna-l5tlakM0GNbMHvIM2_n0QD23jM", + "issuedTokenType": "urn:ietf:params:oauth:token-type:access_token", + "scope": [ + "openid", + "aws", + "sts:identity_context" + ], + "tokenType": "Bearer" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "create-token-with-iam-for-token-exchange", + "title": "Call OAuth/OIDC /token endpoint for Token Exchange grant with IAM authentication" + } + ], + "RegisterClient": [ + { + "input": { + "clientName": "My IDE Plugin", + "clientType": "public", + "scopes": [ + "sso:account:access", + "codewhisperer:completions" + ] + }, + "output": { + "clientId": "_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID", + "clientIdIssuedAt": 1579725929, + "clientSecret": "VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0", + "clientSecretExpiresAt": 1587584729 + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "register-client", + "title": "Call OAuth/OIDC /register-client endpoint" + } + ], + "StartDeviceAuthorization": [ + { + "input": { + "clientId": "_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID", + "clientSecret": "VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0", + "startUrl": "https://identitycenter.amazonaws.com/ssoins-111111111111" + }, + "output": { + "deviceCode": "yJraWQiOiJrZXktMTU2Njk2ODA4OCIsImFsZyI6IkhTMzIn0EXAMPLEDEVICECODE", + "expiresIn": 1579729529, + "interval": 1, + "userCode": "makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE", + "verificationUri": "https://device.sso.us-west-2.amazonaws.com", + "verificationUriComplete": "https://device.sso.us-west-2.amazonaws.com?user_code=makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "", + "id": "start-device-authorization", + "title": "Call OAuth/OIDC /start-device-authorization endpoint" + } + ] } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/states/2016-11-23/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/states/2016-11-23/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/states/2016-11-23/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/states/2016-11-23/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -347,6 +347,22 @@ ], "idempotent":true }, + "RedriveExecution":{ + "name":"RedriveExecution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RedriveExecutionInput"}, + "output":{"shape":"RedriveExecutionOutput"}, + "errors":[ + {"shape":"ExecutionDoesNotExist"}, + {"shape":"ExecutionNotRedrivable"}, + {"shape":"ExecutionLimitExceeded"}, + {"shape":"InvalidArn"} + ], + "idempotent":true + }, "SendTaskFailure":{ "name":"SendTaskFailure", "http":{ @@ -456,6 +472,22 @@ {"shape":"TooManyTags"} ] }, + "TestState":{ + "name":"TestState", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TestStateInput"}, + "output":{"shape":"TestStateOutput"}, + "errors":[ + {"shape":"InvalidArn"}, + {"shape":"InvalidDefinition"}, + {"shape":"InvalidExecutionInput"}, + {"shape":"ValidationException"} + ], + "endpoint":{"hostPrefix":"sync-"} + }, "UntagResource":{ "name":"UntagResource", "http":{ @@ -517,7 +549,8 @@ {"shape":"ValidationException"}, {"shape":"InvalidArn"}, {"shape":"ResourceNotFound"}, - {"shape":"ConflictException"} + {"shape":"ConflictException"}, + {"shape":"StateMachineDeleting"} ] } }, @@ -642,6 +675,12 @@ "min":1, "pattern":"^(?=.*[a-zA-Z_\\-\\.])[a-zA-Z0-9_\\-\\.]+$" }, + "ClientToken":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[!-~]+" + }, "CloudWatchEventsExecutionDataDetails":{ "type":"structure", "members":{ @@ -845,7 +884,11 @@ "error":{"shape":"SensitiveError"}, "cause":{"shape":"SensitiveCause"}, "stateMachineVersionArn":{"shape":"Arn"}, - "stateMachineAliasArn":{"shape":"Arn"} + "stateMachineAliasArn":{"shape":"Arn"}, + "redriveCount":{"shape":"RedriveCount"}, + "redriveDate":{"shape":"Timestamp"}, + "redriveStatus":{"shape":"ExecutionRedriveStatus"}, + "redriveStatusReason":{"shape":"SensitiveData"} } }, "DescribeMapRunInput":{ @@ -878,7 +921,9 @@ "toleratedFailurePercentage":{"shape":"ToleratedFailurePercentage"}, "toleratedFailureCount":{"shape":"ToleratedFailureCount"}, "itemCounts":{"shape":"MapRunItemCounts"}, - "executionCounts":{"shape":"MapRunExecutionCounts"} + "executionCounts":{"shape":"MapRunExecutionCounts"}, + "redriveCount":{"shape":"RedriveCount"}, + "redriveDate":{"shape":"Timestamp"} } }, "DescribeStateMachineAliasInput":{ @@ -1024,7 +1069,40 @@ "box":true }, "stateMachineVersionArn":{"shape":"Arn"}, - "stateMachineAliasArn":{"shape":"Arn"} + "stateMachineAliasArn":{"shape":"Arn"}, + "redriveCount":{ + "shape":"RedriveCount", + "box":true + }, + "redriveDate":{"shape":"Timestamp"} + } + }, + "ExecutionNotRedrivable":{ + "type":"structure", + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "ExecutionRedriveFilter":{ + "type":"string", + "enum":[ + "REDRIVEN", + "NOT_REDRIVEN" + ] + }, + "ExecutionRedriveStatus":{ + "type":"string", + "enum":[ + "REDRIVABLE", + "NOT_REDRIVABLE", + "REDRIVABLE_BY_MAP_RUN" + ] + }, + "ExecutionRedrivenEventDetails":{ + "type":"structure", + "members":{ + "redriveCount":{"shape":"RedriveCount"} } }, "ExecutionStartedEventDetails":{ @@ -1044,7 +1122,8 @@ "SUCCEEDED", "FAILED", "TIMED_OUT", - "ABORTED" + "ABORTED", + "PENDING_REDRIVE" ] }, "ExecutionSucceededEventDetails":{ @@ -1095,6 +1174,12 @@ "nextToken":{"shape":"PageToken"} } }, + "HTTPBody":{"type":"string"}, + "HTTPHeaders":{"type":"string"}, + "HTTPMethod":{"type":"string"}, + "HTTPProtocol":{"type":"string"}, + "HTTPStatusCode":{"type":"string"}, + "HTTPStatusMessage":{"type":"string"}, "HistoryEvent":{ "type":"structure", "required":[ @@ -1126,6 +1211,7 @@ "executionSucceededEventDetails":{"shape":"ExecutionSucceededEventDetails"}, "executionAbortedEventDetails":{"shape":"ExecutionAbortedEventDetails"}, "executionTimedOutEventDetails":{"shape":"ExecutionTimedOutEventDetails"}, + "executionRedrivenEventDetails":{"shape":"ExecutionRedrivenEventDetails"}, "mapStateStartedEventDetails":{"shape":"MapStateStartedEventDetails"}, "mapIterationStartedEventDetails":{"shape":"MapIterationEventDetails"}, "mapIterationSucceededEventDetails":{"shape":"MapIterationEventDetails"}, @@ -1140,7 +1226,8 @@ "stateEnteredEventDetails":{"shape":"StateEnteredEventDetails"}, "stateExitedEventDetails":{"shape":"StateExitedEventDetails"}, "mapRunStartedEventDetails":{"shape":"MapRunStartedEventDetails"}, - "mapRunFailedEventDetails":{"shape":"MapRunFailedEventDetails"} + "mapRunFailedEventDetails":{"shape":"MapRunFailedEventDetails"}, + "mapRunRedrivenEventDetails":{"shape":"MapRunRedrivenEventDetails"} } }, "HistoryEventExecutionDataDetails":{ @@ -1214,7 +1301,9 @@ "MapRunAborted", "MapRunFailed", "MapRunStarted", - "MapRunSucceeded" + "MapRunSucceeded", + "ExecutionRedriven", + "MapRunRedriven" ] }, "Identity":{ @@ -1226,6 +1315,48 @@ "type":"boolean", "box":true }, + "InspectionData":{ + "type":"structure", + "members":{ + "input":{"shape":"SensitiveData"}, + "afterInputPath":{"shape":"SensitiveData"}, + "afterParameters":{"shape":"SensitiveData"}, + "result":{"shape":"SensitiveData"}, + "afterResultSelector":{"shape":"SensitiveData"}, + "afterResultPath":{"shape":"SensitiveData"}, + "request":{"shape":"InspectionDataRequest"}, + "response":{"shape":"InspectionDataResponse"} + }, + "sensitive":true + }, + "InspectionDataRequest":{ + "type":"structure", + "members":{ + "protocol":{"shape":"HTTPProtocol"}, + "method":{"shape":"HTTPMethod"}, + "url":{"shape":"URL"}, + "headers":{"shape":"HTTPHeaders"}, + "body":{"shape":"HTTPBody"} + } + }, + "InspectionDataResponse":{ + "type":"structure", + "members":{ + "protocol":{"shape":"HTTPProtocol"}, + "statusCode":{"shape":"HTTPStatusCode"}, + "statusMessage":{"shape":"HTTPStatusMessage"}, + "headers":{"shape":"HTTPHeaders"}, + "body":{"shape":"HTTPBody"} + } + }, + "InspectionLevel":{ + "type":"string", + "enum":[ + "INFO", + "DEBUG", + "TRACE" + ] + }, "InvalidArn":{ "type":"structure", "members":{ @@ -1353,7 +1484,8 @@ "statusFilter":{"shape":"ExecutionStatus"}, "maxResults":{"shape":"PageSize"}, "nextToken":{"shape":"ListExecutionsPageToken"}, - "mapRunArn":{"shape":"LongArn"} + "mapRunArn":{"shape":"LongArn"}, + "redriveFilter":{"shape":"ExecutionRedriveFilter"} } }, "ListExecutionsOutput":{ @@ -1480,6 +1612,7 @@ "max":2000, "min":1 }, + "LongObject":{"type":"long"}, "MapIterationEventDetails":{ "type":"structure", "members":{ @@ -1507,7 +1640,9 @@ "timedOut":{"shape":"UnsignedLong"}, "aborted":{"shape":"UnsignedLong"}, "total":{"shape":"UnsignedLong"}, - "resultsWritten":{"shape":"UnsignedLong"} + "resultsWritten":{"shape":"UnsignedLong"}, + "failuresNotRedrivable":{"shape":"LongObject"}, + "pendingRedrive":{"shape":"LongObject"} } }, "MapRunFailedEventDetails":{ @@ -1537,7 +1672,9 @@ "timedOut":{"shape":"UnsignedLong"}, "aborted":{"shape":"UnsignedLong"}, "total":{"shape":"UnsignedLong"}, - "resultsWritten":{"shape":"UnsignedLong"} + "resultsWritten":{"shape":"UnsignedLong"}, + "failuresNotRedrivable":{"shape":"LongObject"}, + "pendingRedrive":{"shape":"LongObject"} } }, "MapRunLabel":{"type":"string"}, @@ -1561,6 +1698,13 @@ "stopDate":{"shape":"Timestamp"} } }, + "MapRunRedrivenEventDetails":{ + "type":"structure", + "members":{ + "mapRunArn":{"shape":"LongArn"}, + "redriveCount":{"shape":"RedriveCount"} + } + }, "MapRunStartedEventDetails":{ "type":"structure", "members":{ @@ -1629,6 +1773,28 @@ "stateMachineVersionArn":{"shape":"Arn"} } }, + "RedriveCount":{ + "type":"integer", + "box":true + }, + "RedriveExecutionInput":{ + "type":"structure", + "required":["executionArn"], + "members":{ + "executionArn":{"shape":"Arn"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "RedriveExecutionOutput":{ + "type":"structure", + "required":["redriveDate"], + "members":{ + "redriveDate":{"shape":"Timestamp"} + } + }, "ResourceNotFound":{ "type":"structure", "members":{ @@ -1637,6 +1803,7 @@ }, "exception":true }, + "RevealSecrets":{"type":"boolean"}, "ReverseOrder":{"type":"boolean"}, "RevisionId":{"type":"string"}, "RoutingConfigurationList":{ @@ -1899,6 +2066,11 @@ "creationDate":{"shape":"Timestamp"} } }, + "StateName":{ + "type":"string", + "max":80, + "min":1 + }, "StopExecutionInput":{ "type":"structure", "required":["executionArn"], @@ -2102,6 +2274,40 @@ "max":1024, "min":1 }, + "TestExecutionStatus":{ + "type":"string", + "enum":[ + "SUCCEEDED", + "FAILED", + "RETRIABLE", + "CAUGHT_ERROR" + ] + }, + "TestStateInput":{ + "type":"structure", + "required":[ + "definition", + "roleArn" + ], + "members":{ + "definition":{"shape":"Definition"}, + "roleArn":{"shape":"Arn"}, + "input":{"shape":"SensitiveData"}, + "inspectionLevel":{"shape":"InspectionLevel"}, + "revealSecrets":{"shape":"RevealSecrets"} + } + }, + "TestStateOutput":{ + "type":"structure", + "members":{ + "output":{"shape":"SensitiveData"}, + "error":{"shape":"SensitiveError"}, + "cause":{"shape":"SensitiveCause"}, + "inspectionData":{"shape":"InspectionData"}, + "nextState":{"shape":"StateName"}, + "status":{"shape":"TestExecutionStatus"} + } + }, "TimeoutInSeconds":{"type":"long"}, "Timestamp":{"type":"timestamp"}, "ToleratedFailureCount":{ @@ -2133,6 +2339,7 @@ "enabled":{"shape":"Enabled"} } }, + "URL":{"type":"string"}, "UnsignedInteger":{ "type":"integer", "min":0 diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/states/2016-11-23/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/states/2016-11-23/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/states/2016-11-23/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/states/2016-11-23/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,37 +1,39 @@ { "version": "2.0", - "service": "Step Functions

Step Functions is a service that lets you coordinate the components of distributed applications and microservices using visual workflows.

You can use Step Functions to build applications from individual components, each of which performs a discrete function, or task, allowing you to scale and change applications quickly. Step Functions provides a console that helps visualize the components of your application as a series of steps. Step Functions automatically triggers and tracks each step, and retries steps when there are errors, so your application executes predictably and in the right order every time. Step Functions logs the state of each step, so you can quickly diagnose and debug any issues.

Step Functions manages operations and underlying infrastructure to ensure your application is available at any scale. You can run tasks on Amazon Web Services, your own servers, or any system that has access to Amazon Web Services. You can access and use Step Functions using the console, the Amazon Web Services SDKs, or an HTTP API. For more information about Step Functions, see the Step Functions Developer Guide .

", + "service": "Step Functions

Step Functions is a service that lets you coordinate the components of distributed applications and microservices using visual workflows.

You can use Step Functions to build applications from individual components, each of which performs a discrete function, or task, allowing you to scale and change applications quickly. Step Functions provides a console that helps visualize the components of your application as a series of steps. Step Functions automatically triggers and tracks each step, and retries steps when there are errors, so your application executes predictably and in the right order every time. Step Functions logs the state of each step, so you can quickly diagnose and debug any issues.

Step Functions manages operations and underlying infrastructure to ensure your application is available at any scale. You can run tasks on Amazon Web Services, your own servers, or any system that has access to Amazon Web Services. You can access and use Step Functions using the console, the Amazon Web Services SDKs, or an HTTP API. For more information about Step Functions, see the Step Functions Developer Guide .

If you use the Step Functions API actions using Amazon Web Services SDK integrations, make sure the API actions are in camel case and parameter names are in Pascal case. For example, you could use Step Functions API action startSyncExecution and specify its parameter as StateMachineArn.

", "operations": { "CreateActivity": "

Creates an activity. An activity is a task that you write in any programming language and host on any machine that has access to Step Functions. Activities must poll Step Functions using the GetActivityTask API action and respond using SendTask* API actions. This function lets Step Functions know the existence of your activity and returns an identifier for use in a state machine and when polling from the activity.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

CreateActivity is an idempotent API. Subsequent requests won’t create a duplicate resource if it was already created. CreateActivity's idempotency check is based on the activity name. If a following request has different tags values, Step Functions will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

", "CreateStateMachine": "

Creates a state machine. A state machine consists of a collection of states that can do work (Task states), determine to which states to transition next (Choice states), stop an execution with an error (Fail states), and so on. State machines are specified using a JSON-based, structured language. For more information, see Amazon States Language in the Step Functions User Guide.

If you set the publish parameter of this API action to true, it publishes version 1 as the first revision of the state machine.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

CreateStateMachine is an idempotent API. Subsequent requests won’t create a duplicate resource if it was already created. CreateStateMachine's idempotency check is based on the state machine name, definition, type, LoggingConfiguration, and TracingConfiguration. The check is also based on the publish and versionDescription parameters. If a following request has a different roleArn or tags, Step Functions will ignore these differences and treat it as an idempotent request of the previous. In this case, roleArn and tags will not be updated, even if they are different.

", "CreateStateMachineAlias": "

Creates an alias for a state machine that points to one or two versions of the same state machine. You can set your application to call StartExecution with an alias and update the version the alias uses without changing the client's code.

You can also map an alias to split StartExecution requests between two versions of a state machine. To do this, add a second RoutingConfig object in the routingConfiguration parameter. You must also specify the percentage of execution run requests each version should receive in both RoutingConfig objects. Step Functions randomly chooses which version runs a given execution based on the percentage you specify.

To create an alias that points to a single version, specify a single RoutingConfig object with a weight set to 100.

You can create up to 100 aliases for each state machine. You must delete unused aliases using the DeleteStateMachineAlias API action.

CreateStateMachineAlias is an idempotent API. Step Functions bases the idempotency check on the stateMachineArn, description, name, and routingConfiguration parameters. Requests that contain the same values for these parameters return a successful idempotent response without creating a duplicate resource.

Related operations:

", "DeleteActivity": "

Deletes an activity.

", - "DeleteStateMachine": "

Deletes a state machine. This is an asynchronous operation: It sets the state machine's status to DELETING and begins the deletion process.

A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.

The following are some examples of qualified and unqualified state machine ARNs:

  • The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel in a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel

    If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException.

  • The following unqualified state machine ARN refers to a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine

This API action also deletes all versions and aliases associated with a state machine.

For EXPRESS state machines, the deletion happens eventually (usually in less than a minute). Running executions may emit logs after DeleteStateMachine API is called.

", + "DeleteStateMachine": "

Deletes a state machine. This is an asynchronous operation. It sets the state machine's status to DELETING and begins the deletion process. A state machine is deleted only when all its executions are completed. On the next state transition, the state machine's executions are terminated.

A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.

The following are some examples of qualified and unqualified state machine ARNs:

  • The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel in a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel

    If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException.

  • The following unqualified state machine ARN refers to a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine

This API action also deletes all versions and aliases associated with a state machine.

For EXPRESS state machines, the deletion happens eventually (usually in less than a minute). Running executions may emit logs after DeleteStateMachine API is called.

", "DeleteStateMachineAlias": "

Deletes a state machine alias.

After you delete a state machine alias, you can't use it to start executions. When you delete a state machine alias, Step Functions doesn't delete the state machine versions that alias references.

Related operations:

", "DeleteStateMachineVersion": "

Deletes a state machine version. After you delete a version, you can't call StartExecution using that version's ARN or use the version with a state machine alias.

Deleting a state machine version won't terminate its in-progress executions.

You can't delete a state machine version currently referenced by one or more aliases. Before you delete a version, you must either delete the aliases or update them to point to another state machine version.

Related operations:

", "DescribeActivity": "

Describes an activity.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

", - "DescribeExecution": "

Provides information about a state machine execution, such as the state machine associated with the execution, the execution input and output, and relevant execution metadata. Use this API action to return the Map Run Amazon Resource Name (ARN) if the execution was dispatched by a Map Run.

If you specify a version or alias ARN when you call the StartExecution API action, DescribeExecution returns that ARN.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

Executions of an EXPRESS state machinearen't supported by DescribeExecution unless a Map Run dispatched them.

", - "DescribeMapRun": "

Provides information about a Map Run's configuration, progress, and results. For more information, see Examining Map Run in the Step Functions Developer Guide.

", + "DescribeExecution": "

Provides information about a state machine execution, such as the state machine associated with the execution, the execution input and output, and relevant execution metadata. If you've redriven an execution, you can use this API action to return information about the redrives of that execution. In addition, you can use this API action to return the Map Run Amazon Resource Name (ARN) if the execution was dispatched by a Map Run.

If you specify a version or alias ARN when you call the StartExecution API action, DescribeExecution returns that ARN.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

Executions of an EXPRESS state machine aren't supported by DescribeExecution unless a Map Run dispatched them.

", + "DescribeMapRun": "

Provides information about a Map Run's configuration, progress, and results. If you've redriven a Map Run, this API action also returns information about the redrives of that Map Run. For more information, see Examining Map Run in the Step Functions Developer Guide.

", "DescribeStateMachine": "

Provides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration.

A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.

The following are some examples of qualified and unqualified state machine ARNs:

  • The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel in a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel

    If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException.

  • The following qualified state machine ARN refers to an alias named PROD.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine:PROD>

    If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.

  • The following unqualified state machine ARN refers to a state machine named myStateMachine.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>

This API action returns the details for a state machine version if the stateMachineArn you specify is a state machine version ARN.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

", "DescribeStateMachineAlias": "

Returns details about a state machine alias.

Related operations:

", "DescribeStateMachineForExecution": "

Provides information about a state machine's definition, its execution role ARN, and configuration. If a Map Run dispatched the execution, this action returns the Map Run Amazon Resource Name (ARN) in the response. The state machine returned is the state machine associated with the Map Run.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

This API action is not supported by EXPRESS state machines.

", "GetActivityTask": "

Used by workers to retrieve a task (with the specified activity ARN) which has been scheduled for execution by a running state machine. This initiates a long poll, where the service holds the HTTP connection open and responds as soon as a task becomes available (i.e. an execution of a task of this type is needed.) The maximum time the service holds on to the request before responding is 60 seconds. If no task is available within 60 seconds, the poll returns a taskToken with a null string.

This API action isn't logged in CloudTrail.

Workers should set their client side socket timeout to at least 65 seconds (5 seconds higher than the maximum time the service may hold the poll request).

Polling with GetActivityTask can cause latency in some implementations. See Avoid Latency When Polling for Activity Tasks in the Step Functions Developer Guide.

", "GetExecutionHistory": "

Returns the history of the specified execution as a list of events. By default, the results are returned in ascending order of the timeStamp of the events. Use the reverseOrder parameter to get the latest events first.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

This API action is not supported by EXPRESS state machines.

", "ListActivities": "

Lists the existing activities.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

", - "ListExecutions": "

Lists all executions of a state machine or a Map Run. You can list all executions related to a state machine by specifying a state machine Amazon Resource Name (ARN), or those related to a Map Run by specifying a Map Run ARN.

You can also provide a state machine alias ARN or version ARN to list the executions associated with a specific alias or version.

Results are sorted by time, with the most recent execution first.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

This API action is not supported by EXPRESS state machines.

", + "ListExecutions": "

Lists all executions of a state machine or a Map Run. You can list all executions related to a state machine by specifying a state machine Amazon Resource Name (ARN), or those related to a Map Run by specifying a Map Run ARN. Using this API action, you can also list all redriven executions.

You can also provide a state machine alias ARN or version ARN to list the executions associated with a specific alias or version.

Results are sorted by time, with the most recent execution first.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

This API action is not supported by EXPRESS state machines.

", "ListMapRuns": "

Lists all Map Runs that were started by a given state machine execution. Use this API action to obtain Map Run ARNs, and then call DescribeMapRun to obtain more information, if needed.

", "ListStateMachineAliases": "

Lists aliases for a specified state machine ARN. Results are sorted by time, with the most recently created aliases listed first.

To list aliases that reference a state machine version, you can specify the version ARN in the stateMachineArn parameter.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

Related operations:

", "ListStateMachineVersions": "

Lists versions for the specified state machine Amazon Resource Name (ARN).

The results are sorted in descending order of the version creation time.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

Related operations:

", "ListStateMachines": "

Lists the existing state machines.

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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

", "ListTagsForResource": "

List tags for a given resource.

Tags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @.

", "PublishStateMachineVersion": "

Creates a version from the current revision of a state machine. Use versions to create immutable snapshots of your state machine. You can start executions from versions either directly or with an alias. To create an alias, use CreateStateMachineAlias.

You can publish up to 1000 versions for each state machine. You must manually delete unused versions using the DeleteStateMachineVersion API action.

PublishStateMachineVersion is an idempotent API. It doesn't create a duplicate state machine version if it already exists for the current revision. Step Functions bases PublishStateMachineVersion's idempotency check on the stateMachineArn, name, and revisionId parameters. Requests with the same parameters return a successful idempotent response. If you don't specify a revisionId, Step Functions checks for a previously published version of the state machine's current revision.

Related operations:

", - "SendTaskFailure": "

Used by activity workers and task states using the callback pattern to report that the task identified by the taskToken failed.

", - "SendTaskHeartbeat": "

Used by activity workers and task states using the callback pattern to report to Step Functions that the task represented by the specified taskToken is still making progress. This action resets the Heartbeat clock. The Heartbeat threshold is specified in the state machine's Amazon States Language definition (HeartbeatSeconds). This action does not in itself create an event in the execution history. However, if the task times out, the execution history contains an ActivityTimedOut entry for activities, or a TaskTimedOut entry for for tasks using the job run or callback pattern.

The Timeout of a task, defined in the state machine's Amazon States Language definition, is its maximum allowed duration, regardless of the number of SendTaskHeartbeat requests received. Use HeartbeatSeconds to configure the timeout interval for heartbeats.

", - "SendTaskSuccess": "

Used by activity workers and task states using the callback pattern to report that the task identified by the taskToken completed successfully.

", + "RedriveExecution": "

Restarts unsuccessful executions of Standard workflows that didn't complete successfully in the last 14 days. These include failed, aborted, or timed out executions. When you redrive an execution, it continues the failed execution from the unsuccessful step and uses the same input. Step Functions preserves the results and execution history of the successful steps, and doesn't rerun these steps when you redrive an execution. Redriven executions use the same state machine definition and execution ARN as the original execution attempt.

For workflows that include an Inline Map or Parallel state, RedriveExecution API action reschedules and redrives only the iterations and branches that failed or aborted.

To redrive a workflow that includes a Distributed Map state whose Map Run failed, you must redrive the parent workflow. The parent workflow redrives all the unsuccessful states, including a failed Map Run. If a Map Run was not started in the original execution attempt, the redriven parent workflow starts the Map Run.

This API action is not supported by EXPRESS state machines.

However, you can restart the unsuccessful executions of Express child workflows in a Distributed Map by redriving its Map Run. When you redrive a Map Run, the Express child workflows are rerun using the StartExecution API action. For more information, see Redriving Map Runs.

You can redrive executions if your original execution meets the following conditions:

  • The execution status isn't SUCCEEDED.

  • Your workflow execution has not exceeded the redrivable period of 14 days. Redrivable period refers to the time during which you can redrive a given execution. This period starts from the day a state machine completes its execution.

  • The workflow execution has not exceeded the maximum open time of one year. For more information about state machine quotas, see Quotas related to state machine executions.

  • The execution event history count is less than 24,999. Redriven executions append their event history to the existing event history. Make sure your workflow execution contains less than 24,999 events to accommodate the ExecutionRedriven history event and at least one other history event.

", + "SendTaskFailure": "

Used by activity workers, Task states using the callback pattern, and optionally Task states using the job run pattern to report that the task identified by the taskToken failed.

", + "SendTaskHeartbeat": "

Used by activity workers and Task states using the callback pattern, and optionally Task states using the job run pattern to report to Step Functions that the task represented by the specified taskToken is still making progress. This action resets the Heartbeat clock. The Heartbeat threshold is specified in the state machine's Amazon States Language definition (HeartbeatSeconds). This action does not in itself create an event in the execution history. However, if the task times out, the execution history contains an ActivityTimedOut entry for activities, or a TaskTimedOut entry for tasks using the job run or callback pattern.

The Timeout of a task, defined in the state machine's Amazon States Language definition, is its maximum allowed duration, regardless of the number of SendTaskHeartbeat requests received. Use HeartbeatSeconds to configure the timeout interval for heartbeats.

", + "SendTaskSuccess": "

Used by activity workers, Task states using the callback pattern, and optionally Task states using the job run pattern to report that the task identified by the taskToken completed successfully.

", "StartExecution": "

Starts a state machine execution.

A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.

The following are some examples of qualified and unqualified state machine ARNs:

  • The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel in a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel

    If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException.

  • The following qualified state machine ARN refers to an alias named PROD.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine:PROD>

    If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.

  • The following unqualified state machine ARN refers to a state machine named myStateMachine.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>

If you start an execution with an unqualified state machine ARN, Step Functions uses the latest revision of the state machine for the execution.

To start executions of a state machine version, call StartExecution and provide the version ARN or the ARN of an alias that points to the version.

StartExecution is idempotent for STANDARD workflows. For a STANDARD workflow, if you call StartExecution with the same name and input as a running execution, the call succeeds and return the same response as the original request. If the execution is closed or if the input is different, it returns a 400 ExecutionAlreadyExists error. You can reuse names after 90 days.

StartExecution isn't idempotent for EXPRESS workflows.

", "StartSyncExecution": "

Starts a Synchronous Express state machine execution. StartSyncExecution is not available for STANDARD workflows.

StartSyncExecution will return a 200 OK response, even if your execution fails, because the status code in the API response doesn't reflect function errors. Error codes are reserved for errors that prevent your execution from running, such as permissions errors, limit errors, or issues with your state machine code and configuration.

This API action isn't logged in CloudTrail.

", "StopExecution": "

Stops an execution.

This API action is not supported by EXPRESS state machines.

", "TagResource": "

Add a tag to a Step Functions resource.

An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide, and Controlling Access Using IAM Tags.

Tags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @.

", + "TestState": "

Accepts the definition of a single state and executes it. You can test a state without creating a state machine or updating an existing state machine. Using this API, you can test the following:

You can call this API on only one state at a time. The states that you can test include the following:

The TestState API assumes an IAM role which must contain the required IAM permissions for the resources your state is accessing. For information about the permissions a state might need, see IAM permissions to test a state.

The TestState API can run for up to five minutes. If the execution of a state exceeds this duration, it fails with the States.Timeout error.

TestState doesn't support Activity tasks, .sync or .waitForTaskToken service integration patterns, Parallel, or Map states.

", "UntagResource": "

Remove a tag from a Step Functions resource

", "UpdateMapRun": "

Updates an in-progress Map Run's configuration to include changes to the settings that control maximum concurrency and Map Run failure.

", "UpdateStateMachine": "

Updates an existing state machine by modifying its definition, roleArn, or loggingConfiguration. Running executions will continue to use the previous definition and roleArn. You must include at least one of definition or roleArn or you will receive a MissingRequiredParameter error.

A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel refers to a Distributed Map state with a label mapStateLabel in the state machine named stateMachineName.

A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.

The following are some examples of qualified and unqualified state machine ARNs:

  • The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel in a state machine named myStateMachine.

    arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel

    If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException.

  • The following qualified state machine ARN refers to an alias named PROD.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine:PROD>

    If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.

  • The following unqualified state machine ARN refers to a state machine named myStateMachine.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>

After you update your state machine, you can set the publish parameter to true in the same action to publish a new version. This way, you can opt-in to strict versioning of your state machine.

Step Functions assigns monotonically increasing integers for state machine versions, starting at version number 1.

All StartExecution calls within a few seconds use the updated definition and roleArn. Executions started immediately after you call UpdateStateMachine may use the previous state machine definition and roleArn.

", @@ -158,6 +160,7 @@ "MapRunListItem$stateMachineArn": "

The Amazon Resource Name (ARN) of the executed state machine.

", "PublishStateMachineVersionInput$stateMachineArn": "

The Amazon Resource Name (ARN) of the state machine.

", "PublishStateMachineVersionOutput$stateMachineVersionArn": "

The Amazon Resource Name (ARN) (ARN) that identifies the state machine version.

", + "RedriveExecutionInput$executionArn": "

The Amazon Resource Name (ARN) of the execution to be redriven.

", "ResourceNotFound$resourceName": null, "RoutingConfigurationListItem$stateMachineVersionArn": "

The Amazon Resource Name (ARN) that identifies one or two state machine versions defined in the routing configuration.

If you specify the ARN of a second version, it must belong to the same state machine as the first version.

", "StartExecutionInput$stateMachineArn": "

The Amazon Resource Name (ARN) of the state machine to execute.

The stateMachineArn parameter accepts one of the following inputs:

  • An unqualified state machine ARN – Refers to a state machine ARN that isn't qualified with a version or alias ARN. The following is an example of an unqualified state machine ARN.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>

    Step Functions doesn't associate state machine executions that you start with an unqualified ARN with a version. This is true even if that version uses the same revision that the execution used.

  • A state machine version ARN – Refers to a version ARN, which is a combination of state machine ARN and the version number separated by a colon (:). The following is an example of the ARN for version 10.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>:10

    Step Functions doesn't associate executions that you start with a version ARN with any aliases that point to that version.

  • A state machine alias ARN – Refers to an alias ARN, which is a combination of state machine ARN and the alias name separated by a colon (:). The following is an example of the ARN for an alias named PROD.

    arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine:PROD>

    Step Functions associates executions that you start with an alias ARN with that alias and the state machine version used for that execution.

", @@ -168,6 +171,7 @@ "StateMachineListItem$stateMachineArn": "

The Amazon Resource Name (ARN) that identifies the state machine.

", "StopExecutionInput$executionArn": "

The Amazon Resource Name (ARN) of the execution to stop.

", "TagResourceInput$resourceArn": "

The Amazon Resource Name (ARN) for the Step Functions state machine or activity.

", + "TestStateInput$roleArn": "

The Amazon Resource Name (ARN) of the execution role with the required IAM permissions for the state.

", "TooManyTags$resourceName": null, "UntagResourceInput$resourceArn": "

The Amazon Resource Name (ARN) for the Step Functions state machine or activity.

", "UpdateStateMachineAliasInput$stateMachineAliasArn": "

The Amazon Resource Name (ARN) of the state machine alias.

", @@ -200,6 +204,12 @@ "CreateStateMachineAliasInput$name": "

The name of the state machine alias.

To avoid conflict with version ARNs, don't use an integer in the name of the alias.

" } }, + "ClientToken": { + "base": null, + "refs": { + "RedriveExecutionInput$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don’t specify a client token, the Amazon Web Services SDK automatically generates a client token and uses it for the request to ensure idempotency. The API will return idempotent responses for the last 10 client tokens used to successfully redrive the execution. These client tokens are valid for up to 15 minutes after they are first used.

" + } + }, "CloudWatchEventsExecutionDataDetails": { "base": "

Provides details about execution input or output.

", "refs": { @@ -262,6 +272,7 @@ "CreateStateMachineInput$definition": "

The Amazon States Language definition of the state machine. See Amazon States Language.

", "DescribeStateMachineForExecutionOutput$definition": "

The Amazon States Language definition of the state machine. See Amazon States Language.

", "DescribeStateMachineOutput$definition": "

The Amazon States Language definition of the state machine. See Amazon States Language.

", + "TestStateInput$definition": "

The Amazon States Language (ASL) definition of the state.

", "UpdateStateMachineInput$definition": "

The Amazon States Language definition of the state machine. See Amazon States Language.

" } }, @@ -381,6 +392,7 @@ "ExecutionAlreadyExists$message": null, "ExecutionDoesNotExist$message": null, "ExecutionLimitExceeded$message": null, + "ExecutionNotRedrivable$message": null, "InvalidArn$message": null, "InvalidDefinition$message": null, "InvalidExecutionInput$message": null, @@ -449,6 +461,29 @@ "ExecutionList$member": null } }, + "ExecutionNotRedrivable": { + "base": "

The execution Amazon Resource Name (ARN) that you specified for executionArn cannot be redriven.

", + "refs": { + } + }, + "ExecutionRedriveFilter": { + "base": null, + "refs": { + "ListExecutionsInput$redriveFilter": "

Sets a filter to list executions based on whether or not they have been redriven.

For a Distributed Map, redriveFilter sets a filter to list child workflow executions based on whether or not they have been redriven.

If you do not provide a redriveFilter, Step Functions returns a list of both redriven and non-redriven executions.

If you provide a state machine ARN in redriveFilter, the API returns a validation exception.

" + } + }, + "ExecutionRedriveStatus": { + "base": null, + "refs": { + "DescribeExecutionOutput$redriveStatus": "

Indicates whether or not an execution can be redriven at a given point in time.

  • For executions of type STANDARD, redriveStatus is NOT_REDRIVABLE if calling the RedriveExecution API action would return the ExecutionNotRedrivable error.

  • For a Distributed Map that includes child workflows of type STANDARD, redriveStatus indicates whether or not the Map Run can redrive child workflow executions.

  • For a Distributed Map that includes child workflows of type EXPRESS, redriveStatus indicates whether or not the Map Run can redrive child workflow executions.

    You can redrive failed or timed out EXPRESS workflows only if they're a part of a Map Run. When you redrive the Map Run, these workflows are restarted using the StartExecution API action.

" + } + }, + "ExecutionRedrivenEventDetails": { + "base": "

Contains details about a redriven execution.

", + "refs": { + "HistoryEvent$executionRedrivenEventDetails": "

Contains details about the redrive attempt of an execution.

" + } + }, "ExecutionStartedEventDetails": { "base": "

Contains details about the start of the execution.

", "refs": { @@ -495,6 +530,45 @@ "refs": { } }, + "HTTPBody": { + "base": null, + "refs": { + "InspectionDataRequest$body": "

The request body for the HTTP request.

", + "InspectionDataResponse$body": "

The HTTP response returned.

" + } + }, + "HTTPHeaders": { + "base": null, + "refs": { + "InspectionDataRequest$headers": "

The request headers associated with the HTTP request.

", + "InspectionDataResponse$headers": "

The response headers associated with the HTTP response.

" + } + }, + "HTTPMethod": { + "base": null, + "refs": { + "InspectionDataRequest$method": "

The HTTP method used for the HTTP request.

" + } + }, + "HTTPProtocol": { + "base": null, + "refs": { + "InspectionDataRequest$protocol": "

The protocol used to make the HTTP request.

", + "InspectionDataResponse$protocol": "

The protocol used to return the HTTP response.

" + } + }, + "HTTPStatusCode": { + "base": null, + "refs": { + "InspectionDataResponse$statusCode": "

The HTTP response status code for the HTTP response.

" + } + }, + "HTTPStatusMessage": { + "base": null, + "refs": { + "InspectionDataResponse$statusMessage": "

The message associated with the HTTP status code.

" + } + }, "HistoryEvent": { "base": "

Contains details about the events of an execution.

", "refs": { @@ -546,6 +620,30 @@ "GetExecutionHistoryInput$includeExecutionData": "

You can select whether execution data (input or output of a history event) is returned. The default is true.

" } }, + "InspectionData": { + "base": "

Contains additional details about the state's execution, including its input and output data processing flow, and HTTP request and response information.

", + "refs": { + "TestStateOutput$inspectionData": "

Returns additional details about the state's execution, including its input and output data processing flow, and HTTP request and response information. The inspectionLevel request parameter specifies which details are returned.

" + } + }, + "InspectionDataRequest": { + "base": "

Contains additional details about the state's execution, including its input and output data processing flow, and HTTP request information.

", + "refs": { + "InspectionData$request": "

The raw HTTP request that is sent when you test an HTTP Task.

" + } + }, + "InspectionDataResponse": { + "base": "

Contains additional details about the state's execution, including its input and output data processing flow, and HTTP response information. The inspectionLevel request parameter specifies which details are returned.

", + "refs": { + "InspectionData$response": "

The raw HTTP response that is returned when you test an HTTP Task.

" + } + }, + "InspectionLevel": { + "base": null, + "refs": { + "TestStateInput$inspectionLevel": "

Determines the values to return when a state is tested. You can specify one of the following types:

  • INFO: Shows the final state output. By default, Step Functions sets inspectionLevel to INFO if you don't specify a level.

  • DEBUG: Shows the final state output along with the input and output data processing result.

  • TRACE: Shows the HTTP request and response for an HTTP Task. This level also shows the final state output along with the input and output data processing result.

Each of these levels also provide information about the status of the state execution and the next state to transition to.

" + } + }, "InvalidArn": { "base": "

The provided Amazon Resource Name (ARN) is not valid.

", "refs": { @@ -737,6 +835,7 @@ "ExecutionListItem$mapRunArn": "

The Amazon Resource Name (ARN) of a Map Run. This field is returned only if mapRunArn was specified in the ListExecutions API action. If stateMachineArn was specified in ListExecutions, the mapRunArn isn't returned.

", "ListExecutionsInput$mapRunArn": "

The Amazon Resource Name (ARN) of the Map Run that started the child workflow executions. If the mapRunArn field is specified, a list of all of the child workflow executions started by a Map Run is returned. For more information, see Examining Map Run in the Step Functions Developer Guide.

You can specify either a mapRunArn or a stateMachineArn, but not both.

", "MapRunListItem$mapRunArn": "

The Amazon Resource Name (ARN) of the Map Run.

", + "MapRunRedrivenEventDetails$mapRunArn": "

The Amazon Resource Name (ARN) of a Map Run that was redriven.

", "MapRunStartedEventDetails$mapRunArn": "

The Amazon Resource Name (ARN) of a Map Run that was started.

", "StateMachineAliasListItem$stateMachineAliasArn": "

The Amazon Resource Name (ARN) that identifies a state machine alias. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, stateMachineARN:PROD.

", "StateMachineVersionListItem$stateMachineVersionArn": "

The Amazon Resource Name (ARN) that identifies a state machine version. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1.

", @@ -744,6 +843,15 @@ "UpdateMapRunInput$mapRunArn": "

The Amazon Resource Name (ARN) of a Map Run.

" } }, + "LongObject": { + "base": null, + "refs": { + "MapRunExecutionCounts$failuresNotRedrivable": "

The number of FAILED, ABORTED, or TIMED_OUT child workflow executions that cannot be redriven because their execution status is terminal. For example, child workflows with an execution status of FAILED, ABORTED, or TIMED_OUT and a redriveStatus of NOT_REDRIVABLE.

", + "MapRunExecutionCounts$pendingRedrive": "

The number of unsuccessful child workflow executions currently waiting to be redriven. The status of these child workflow executions could be FAILED, ABORTED, or TIMED_OUT in the original execution attempt or a previous redrive attempt.

", + "MapRunItemCounts$failuresNotRedrivable": "

The number of FAILED, ABORTED, or TIMED_OUT items in child workflow executions that cannot be redriven because the execution status of those child workflows is terminal. For example, child workflows with an execution status of FAILED, ABORTED, or TIMED_OUT and a redriveStatus of NOT_REDRIVABLE.

", + "MapRunItemCounts$pendingRedrive": "

The number of unsuccessful items in child workflow executions currently waiting to be redriven.

" + } + }, "MapIterationEventDetails": { "base": "

Contains details about an iteration of a Map state.

", "refs": { @@ -790,6 +898,12 @@ "MapRunList$member": null } }, + "MapRunRedrivenEventDetails": { + "base": "

Contains details about a Map Run that was redriven.

", + "refs": { + "HistoryEvent$mapRunRedrivenEventDetails": "

Contains details about the redrive attempt of a Map Run.

" + } + }, "MapRunStartedEventDetails": { "base": "

Contains details about a Map Run that was started during a state machine execution.

", "refs": { @@ -834,7 +948,7 @@ "ExecutionListItem$name": "

The name of the execution.

A name must not contain:

  • white space

  • brackets < > { } [ ]

  • wildcard characters ? *

  • special characters \" # % \\ ^ | ~ ` $ & , ; : /

  • control characters (U+0000-001F, U+007F-009F)

To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

", "GetActivityTaskInput$workerName": "

You can provide an arbitrary name in order to identify the worker that the task is assigned to. This name is used when it is logged in the execution history.

", "MapIterationEventDetails$name": "

The name of the iteration’s parent Map state.

", - "StartExecutionInput$name": "

Optional name of the execution. This name must be unique for your Amazon Web Services account, Region, and state machine for 90 days. For more information, see Limits Related to State Machine Executions in the Step Functions Developer Guide.

A name must not contain:

  • white space

  • brackets < > { } [ ]

  • wildcard characters ? *

  • special characters \" # % \\ ^ | ~ ` $ & , ; : /

  • control characters (U+0000-001F, U+007F-009F)

To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

", + "StartExecutionInput$name": "

Optional name of the execution. This name must be unique for your Amazon Web Services account, Region, and state machine for 90 days. For more information, see Limits Related to State Machine Executions in the Step Functions Developer Guide.

If you don't provide a name for the execution, Step Functions automatically generates a universally unique identifier (UUID) as the execution name.

A name must not contain:

  • white space

  • brackets < > { } [ ]

  • wildcard characters ? *

  • special characters \" # % \\ ^ | ~ ` $ & , ; : /

  • control characters (U+0000-001F, U+007F-009F)

To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

", "StartSyncExecutionInput$name": "

The name of the execution.

", "StartSyncExecutionOutput$name": "

The name of the execution.

", "StateEnteredEventDetails$name": "

The name of the state.

", @@ -905,11 +1019,37 @@ "refs": { } }, + "RedriveCount": { + "base": null, + "refs": { + "DescribeExecutionOutput$redriveCount": "

The number of times you've redriven an execution. If you have not yet redriven an execution, the redriveCount is 0. This count is only updated if you successfully redrive an execution.

", + "DescribeMapRunOutput$redriveCount": "

The number of times you've redriven a Map Run. If you have not yet redriven a Map Run, the redriveCount is 0. This count is only updated if you successfully redrive a Map Run.

", + "ExecutionListItem$redriveCount": "

The number of times you've redriven an execution. If you have not yet redriven an execution, the redriveCount is 0. This count is only updated when you successfully redrive an execution.

", + "ExecutionRedrivenEventDetails$redriveCount": "

The number of times you've redriven an execution. If you have not yet redriven an execution, the redriveCount is 0. This count is not updated for redrives that failed to start or are pending to be redriven.

", + "MapRunRedrivenEventDetails$redriveCount": "

The number of times the Map Run has been redriven at this point in the execution's history including this event. The redrive count for a redriven Map Run is always greater than 0.

" + } + }, + "RedriveExecutionInput": { + "base": null, + "refs": { + } + }, + "RedriveExecutionOutput": { + "base": null, + "refs": { + } + }, "ResourceNotFound": { "base": "

Could not find the referenced resource.

", "refs": { } }, + "RevealSecrets": { + "base": null, + "refs": { + "TestStateInput$revealSecrets": "

Specifies whether or not to include secret information in the test result. For HTTP Tasks, a secret includes the data that an EventBridge connection adds to modify the HTTP request headers, query parameters, and body. Step Functions doesn't omit any information included in the state definition or the HTTP response.

If you set revealSecrets to true, you must make sure that the IAM user that calls the TestState API has permission for the states:RevealSecrets action. For an example of IAM policy that sets the states:RevealSecrets permission, see IAM permissions to test a state. Without this permission, Step Functions throws an access denied error.

By default, revealSecrets is set to false.

" + } + }, "ReverseOrder": { "base": null, "refs": { @@ -990,7 +1130,8 @@ "TaskFailedEventDetails$cause": "

A more detailed explanation of the cause of the failure.

", "TaskStartFailedEventDetails$cause": "

A more detailed explanation of the cause of the failure.

", "TaskSubmitFailedEventDetails$cause": "

A more detailed explanation of the cause of the failure.

", - "TaskTimedOutEventDetails$cause": "

A more detailed explanation of the cause of the failure.

" + "TaskTimedOutEventDetails$cause": "

A more detailed explanation of the cause of the failure.

", + "TestStateOutput$cause": "

A detailed explanation of the cause for the error when the execution of a state fails.

" } }, "SensitiveData": { @@ -1000,8 +1141,15 @@ "ActivitySucceededEventDetails$output": "

The JSON data output by the activity task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "DescribeExecutionOutput$input": "

The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "DescribeExecutionOutput$output": "

The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

This field is set only if the execution succeeds. If the execution fails, this field is null.

", + "DescribeExecutionOutput$redriveStatusReason": "

When redriveStatus is NOT_REDRIVABLE, redriveStatusReason specifies the reason why an execution cannot be redriven.

  • For executions of type STANDARD, or for a Distributed Map that includes child workflows of type STANDARD, redriveStatusReason can include one of the following reasons:

    • State machine is in DELETING status.

    • Execution is RUNNING and cannot be redriven.

    • Execution is SUCCEEDED and cannot be redriven.

    • Execution was started before the launch of RedriveExecution.

    • Execution history event limit exceeded.

    • Execution has exceeded the max execution time.

    • Execution redrivable period exceeded.

  • For a Distributed Map that includes child workflows of type EXPRESS, redriveStatusReason is only returned if the child workflows are not redrivable. This happens when the child workflow executions have completed successfully.

", "ExecutionStartedEventDetails$input": "

The JSON data input to the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "ExecutionSucceededEventDetails$output": "

The JSON data output by the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", + "InspectionData$input": "

The raw state input.

", + "InspectionData$afterInputPath": "

The input after Step Functions applies the InputPath filter.

", + "InspectionData$afterParameters": "

The effective input after Step Functions applies the Parameters filter.

", + "InspectionData$result": "

The state's raw result.

", + "InspectionData$afterResultSelector": "

The effective result after Step Functions applies the ResultSelector filter.

", + "InspectionData$afterResultPath": "

The effective result combined with the raw state input after Step Functions applies the ResultPath filter.

", "LambdaFunctionScheduledEventDetails$input": "

The JSON data input to the Lambda function. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "LambdaFunctionSucceededEventDetails$output": "

The JSON data output by the Lambda function. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "SendTaskSuccessInput$output": "

The JSON output of the task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", @@ -1012,7 +1160,9 @@ "StateEnteredEventDetails$input": "

The string that contains the JSON input data for the state. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "StateExitedEventDetails$output": "

The JSON output data of the state. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", "TaskSubmittedEventDetails$output": "

The response from a resource when a task has started. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", - "TaskSucceededEventDetails$output": "

The full JSON response from a resource when a task has succeeded. This response becomes the output of the related task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

" + "TaskSucceededEventDetails$output": "

The full JSON response from a resource when a task has succeeded. This response becomes the output of the related task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

", + "TestStateInput$input": "

A string that contains the JSON input data for the state.

", + "TestStateOutput$output": "

The JSON output data of the state. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

" } }, "SensitiveDataJobInput": { @@ -1042,7 +1192,8 @@ "TaskFailedEventDetails$error": "

The error code of the failure.

", "TaskStartFailedEventDetails$error": "

The error code of the failure.

", "TaskSubmitFailedEventDetails$error": "

The error code of the failure.

", - "TaskTimedOutEventDetails$error": "

The error code of the failure.

" + "TaskTimedOutEventDetails$error": "

The error code of the failure.

", + "TestStateOutput$error": "

The error returned when the execution of a state fails.

" } }, "ServiceQuotaExceededException": { @@ -1157,6 +1308,12 @@ "StateMachineVersionList$member": null } }, + "StateName": { + "base": null, + "refs": { + "TestStateOutput$nextState": "

The name of the next state to transition to. If you haven't defined a next state in your definition or if the execution of the state fails, this field doesn't contain a value.

" + } + }, "StopExecutionInput": { "base": null, "refs": { @@ -1225,7 +1382,7 @@ } }, "TaskDoesNotExist": { - "base": null, + "base": "

The activity does not exist.

", "refs": { } }, @@ -1272,7 +1429,7 @@ } }, "TaskTimedOut": { - "base": null, + "base": "

The task token has either expired or the task associated with the token has already been closed.

", "refs": { } }, @@ -1291,6 +1448,22 @@ "SendTaskSuccessInput$taskToken": "

The token that represents this task. Task tokens are generated by Step Functions when tasks are assigned to a worker, or in the context object when a workflow enters a task state. See GetActivityTaskOutput$taskToken.

" } }, + "TestExecutionStatus": { + "base": null, + "refs": { + "TestStateOutput$status": "

The execution status of the state.

" + } + }, + "TestStateInput": { + "base": null, + "refs": { + } + }, + "TestStateOutput": { + "base": null, + "refs": { + } + }, "TimeoutInSeconds": { "base": null, "refs": { @@ -1311,18 +1484,22 @@ "DescribeActivityOutput$creationDate": "

The date the activity is created.

", "DescribeExecutionOutput$startDate": "

The date the execution is started.

", "DescribeExecutionOutput$stopDate": "

If the execution ended, the date the execution stopped.

", + "DescribeExecutionOutput$redriveDate": "

The date the execution was last redriven. If you have not yet redriven an execution, the redriveDate is null.

The redriveDate is unavailable if you redrive a Map Run that starts child workflow executions of type EXPRESS.

", "DescribeMapRunOutput$startDate": "

The date when the Map Run was started.

", "DescribeMapRunOutput$stopDate": "

The date when the Map Run was stopped.

", + "DescribeMapRunOutput$redriveDate": "

The date a Map Run was last redriven. If you have not yet redriven a Map Run, the redriveDate is null.

", "DescribeStateMachineAliasOutput$creationDate": "

The date the state machine alias was created.

", "DescribeStateMachineAliasOutput$updateDate": "

The date the state machine alias was last updated.

For a newly created state machine, this is the same as the creation date.

", "DescribeStateMachineForExecutionOutput$updateDate": "

The date and time the state machine associated with an execution was updated. For a newly created state machine, this is the creation date.

", "DescribeStateMachineOutput$creationDate": "

The date the state machine is created.

For a state machine version, creationDate is the date the version was created.

", "ExecutionListItem$startDate": "

The date the execution started.

", "ExecutionListItem$stopDate": "

If the execution already ended, the date the execution stopped.

", + "ExecutionListItem$redriveDate": "

The date the execution was last redriven.

", "HistoryEvent$timestamp": "

The date and time the event occurred.

", "MapRunListItem$startDate": "

The date on which the Map Run started.

", "MapRunListItem$stopDate": "

The date on which the Map Run stopped.

", "PublishStateMachineVersionOutput$creationDate": "

The date the version was created.

", + "RedriveExecutionOutput$redriveDate": "

The date the execution was last redriven.

", "StartExecutionOutput$startDate": "

The date the execution is started.

", "StartSyncExecutionOutput$startDate": "

The date the execution is started.

", "StartSyncExecutionOutput$stopDate": "

If the execution has already ended, the date the execution stopped.

", @@ -1371,6 +1548,12 @@ "UpdateStateMachineInput$tracingConfiguration": "

Selects whether X-Ray tracing is enabled.

" } }, + "URL": { + "base": null, + "refs": { + "InspectionDataRequest$url": "

The API endpoint used for the HTTP request.

" + } + }, "UnsignedInteger": { "base": null, "refs": { @@ -1463,7 +1646,7 @@ "VersionWeight": { "base": null, "refs": { - "RoutingConfigurationListItem$weight": "

The percentage of traffic you want to route to the second state machine version. The sum of the weights in the routing configuration must be equal to 100.

" + "RoutingConfigurationListItem$weight": "

The percentage of traffic you want to route to a state machine version. The sum of the weights in the routing configuration must be equal to 100.

" } }, "includedDetails": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/states/2016-11-23/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/states/2016-11-23/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/states/2016-11-23/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/states/2016-11-23/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,312 +57,277 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-west-1" - ] - } - ], - "endpoint": { - "url": "https://states.us-gov-west-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, - { - "conditions": [], - "endpoint": { - "url": "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "us-gov-west-1" ] } - ] + ], + "endpoint": { + "url": "https://states.us-gov-west-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://states.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://states.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2106,7 +2106,8 @@ "DeprecationDate":{"shape":"DeprecationDate"}, "GatewayCapacity":{"shape":"GatewayCapacity"}, "SupportedGatewayCapacities":{"shape":"SupportedGatewayCapacities"}, - "HostEnvironmentId":{"shape":"HostEnvironmentId"} + "HostEnvironmentId":{"shape":"HostEnvironmentId"}, + "SoftwareVersion":{"shape":"SoftwareVersion"} } }, "DescribeMaintenanceStartTimeInput":{ @@ -2809,7 +2810,7 @@ "type":"string", "max":2048, "min":7, - "pattern":"(^arn:(aws|aws-cn|aws-us-gov):kms:([a-zA-Z0-9-]+):([0-9]+):(key|alias)/(\\S+)$)|(^alias/(\\S+)$)" + "pattern":"(^arn:(aws(|-cn|-us-gov|-iso[A-Za-z0-9_-]*)):kms:([a-zA-Z0-9-]+):([0-9]+):(key|alias)/(\\S+)$)|(^alias/(\\S+)$)" }, "LastSoftwareUpdate":{ "type":"string", @@ -3058,7 +3059,8 @@ "Ipv4Address":{"shape":"string"}, "MacAddress":{"shape":"string"}, "Ipv6Address":{"shape":"string"} - } + }, + "sensitive":true }, "NetworkInterfaceId":{ "type":"string", @@ -3286,7 +3288,7 @@ "type":"string", "max":2048, "min":20, - "pattern":"^arn:(aws|aws-cn|aws-us-gov):iam::([0-9]+):role/(\\S+)$" + "pattern":"^arn:(aws(|-cn|-us-gov|-iso[A-Za-z0-9_-]*)):iam::([0-9]+):role/(\\S+)$" }, "SMBFileShareInfo":{ "type":"structure", @@ -3416,6 +3418,7 @@ "max":25, "min":1 }, + "SoftwareVersion":{"type":"string"}, "Squash":{ "type":"string", "max":15, @@ -3538,7 +3541,7 @@ "type":"string", "max":500, "min":50, - "pattern":"^arn:(aws|aws-cn|aws-us-gov):storagegateway:[a-z\\-0-9]+:[0-9]+:tape\\/[0-9A-Z]{5,16}$" + "pattern":"arn:(aws(|-cn|-us-gov|-iso[A-Za-z0-9_-]*)):storagegateway:[a-z\\-0-9]+:[0-9]+:tape\\/[0-9A-Z]{5,16}$" }, "TapeARNs":{ "type":"list", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -38,7 +38,7 @@ "DescribeCachediSCSIVolumes": "

Returns a description of the gateway volumes specified in the request. This operation is only supported in the cached volume gateway types.

The list of gateway volumes in the request must be from one gateway. In the response, Storage Gateway returns volume information sorted by volume Amazon Resource Name (ARN).

", "DescribeChapCredentials": "

Returns an array of Challenge-Handshake Authentication Protocol (CHAP) credentials information for a specified iSCSI target, one for each target-initiator pair. This operation is supported in the volume and tape gateway types.

", "DescribeFileSystemAssociations": "

Gets the file system association information. This operation is only supported for FSx File Gateways.

", - "DescribeGatewayInformation": "

Returns metadata about a gateway such as its name, network interfaces, configured time zone, and the state (whether the gateway is running or not). To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

", + "DescribeGatewayInformation": "

Returns metadata about a gateway such as its name, network interfaces, time zone, status, and software version. To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

", "DescribeMaintenanceStartTime": "

Returns your gateway's weekly maintenance start time including the day and time of the week. Note that values are in terms of the gateway's time zone.

", "DescribeNFSFileShares": "

Gets a description for one or more Network File System (NFS) file shares from an S3 File Gateway. This operation is only supported for S3 File Gateways.

", "DescribeSMBFileShares": "

Gets a description for one or more Server Message Block (SMB) file shares from a S3 File Gateway. This operation is only supported for S3 File Gateways.

", @@ -54,9 +54,9 @@ "DetachVolume": "

Disconnects a volume from an iSCSI connection and then detaches the volume from the specified gateway. Detaching and attaching a volume enables you to recover your data from one gateway to a different gateway without creating a snapshot. It also makes it easier to move your volumes from an on-premises gateway to a gateway hosted on an Amazon EC2 instance. This operation is only supported in the volume gateway type.

", "DisableGateway": "

Disables a tape gateway when the gateway is no longer functioning. For example, if your gateway VM is damaged, you can disable the gateway so you can recover virtual tapes.

Use this operation for a tape gateway that is not reachable or not functioning. This operation is only supported in the tape gateway type.

After a gateway is disabled, it cannot be enabled.

", "DisassociateFileSystem": "

Disassociates an Amazon FSx file system from the specified gateway. After the disassociation process finishes, the gateway can no longer access the Amazon FSx file system. This operation is only supported in the FSx File Gateway type.

", - "JoinDomain": "

Adds a file gateway to an Active Directory domain. This operation is only supported for file gateways that support the SMB file protocol.

", + "JoinDomain": "

Adds a file gateway to an Active Directory domain. This operation is only supported for file gateways that support the SMB file protocol.

Joining a domain creates an Active Directory computer account in the default organizational unit, using the gateway's Gateway ID as the account name (for example, SGW-1234ADE). If your Active Directory environment requires that you pre-stage accounts to facilitate the join domain process, you will need to create this account ahead of time.

To create the gateway's computer account in an organizational unit other than the default, you must specify the organizational unit when joining the domain.

", "ListAutomaticTapeCreationPolicies": "

Lists the automatic tape creation policies for a gateway. If there are no automatic tape creation policies for the gateway, it returns an empty list.

This operation is only supported for tape gateways.

", - "ListFileShares": "

Gets a list of the file shares for a specific S3 File Gateway, or the list of file shares that belong to the calling user account. This operation is only supported for S3 File Gateways.

", + "ListFileShares": "

Gets a list of the file shares for a specific S3 File Gateway, or the list of file shares that belong to the calling Amazon Web Services account. This operation is only supported for S3 File Gateways.

", "ListFileSystemAssociations": "

Gets a list of FileSystemAssociationSummary objects. Each object contains a summary of a file system association. This operation is only supported for FSx File Gateways.

", "ListGateways": "

Lists gateways owned by an Amazon Web Services account in an Amazon Web Services Region specified in the request. The returned list is ordered by gateway Amazon Resource Name (ARN).

By default, the operation returns a maximum of 100 gateways. This operation supports pagination that allows you to optionally reduce the number of gateways returned in a response.

If you have more gateways than are returned in a response (that is, the response returns only a truncated list of your gateways), the response contains a marker that you can specify in your next request to fetch the next page of gateways.

", "ListLocalDisks": "

Returns a list of the gateway's local disks. To specify which gateway to describe, you use the Amazon Resource Name (ARN) of the gateway in the body of the request.

The request returns a list of all disks, specifying which are configured as working storage, cache storage, or stored volume or not configured at all. The response includes a DiskStatus field. This field can have a value of present (the disk is available to use), missing (the disk is no longer connected to the gateway), or mismatch (the disk node is occupied by a disk that has incorrect metadata or the disk content is corrupted).

", @@ -66,8 +66,8 @@ "ListVolumeInitiators": "

Lists iSCSI initiators that are connected to a volume. You can use this operation to determine whether a volume is being used or not. This operation is only supported in the cached volume and stored volume gateway types.

", "ListVolumeRecoveryPoints": "

Lists the recovery points for a specified gateway. This operation is only supported in the cached volume gateway type.

Each cache volume has one recovery point. A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot or clone a new cached volume from a source volume. To create a snapshot from a volume recovery point use the CreateSnapshotFromVolumeRecoveryPoint operation.

", "ListVolumes": "

Lists the iSCSI stored volumes of a gateway. Results are sorted by volume ARN. The response includes only the volume ARNs. If you want additional volume information, use the DescribeStorediSCSIVolumes or the DescribeCachediSCSIVolumes API.

The operation supports pagination. By default, the operation returns a maximum of up to 100 volumes. You can optionally specify the Limit field in the body to limit the number of volumes in the response. If the number of volumes returned in the response is truncated, the response includes a Marker field. You can use this Marker value in your subsequent request to retrieve the next set of volumes. This operation is only supported in the cached volume and stored volume gateway types.

", - "NotifyWhenUploaded": "

Sends you notification through CloudWatch Events when all files written to your file share have been uploaded to S3. Amazon S3.

Storage Gateway can send a notification through Amazon CloudWatch Events when all files written to your file share up to that point in time have been uploaded to Amazon S3. These files include files written to the file share up to the time that you make a request for notification. When the upload is done, Storage Gateway sends you notification through an Amazon CloudWatch Event. You can configure CloudWatch Events to send the notification through event targets such as Amazon SNS or Lambda function. This operation is only supported for S3 File Gateways.

For more information, see Getting file upload notification in the Storage Gateway User Guide.

", - "RefreshCache": "

Refreshes the cached inventory of objects for the specified file share. This operation finds objects in the Amazon S3 bucket that were added, removed, or replaced since the gateway last listed the bucket's contents and cached the results. This operation does not import files into the S3 File Gateway cache storage. It only updates the cached inventory to reflect changes in the inventory of the objects in the S3 bucket. This operation is only supported in the S3 File Gateway types.

You can subscribe to be notified through an Amazon CloudWatch event when your RefreshCache operation completes. For more information, see Getting notified about file operations in the Storage Gateway User Guide. This operation is Only supported for S3 File Gateways.

When this API is called, it only initiates the refresh operation. When the API call completes and returns a success code, it doesn't necessarily mean that the file refresh has completed. You should use the refresh-complete notification to determine that the operation has completed before you check for new files on the gateway file share. You can subscribe to be notified through a CloudWatch event when your RefreshCache operation completes.

Throttle limit: This API is asynchronous, so the gateway will accept no more than two refreshes at any time. We recommend using the refresh-complete CloudWatch event notification before issuing additional requests. For more information, see Getting notified about file operations in the Storage Gateway User Guide.

  • Wait at least 60 seconds between consecutive RefreshCache API requests.

  • RefreshCache does not evict cache entries if invoked consecutively within 60 seconds of a previous RefreshCache request.

  • If you invoke the RefreshCache API when two requests are already being processed, any new request will cause an InvalidGatewayRequestException error because too many requests were sent to the server.

The S3 bucket name does not need to be included when entering the list of folders in the FolderList parameter.

For more information, see Getting notified about file operations in the Storage Gateway User Guide.

", + "NotifyWhenUploaded": "

Sends you notification through CloudWatch Events when all files written to your file share have been uploaded to S3. Amazon S3.

Storage Gateway can send a notification through Amazon CloudWatch Events when all files written to your file share up to that point in time have been uploaded to Amazon S3. These files include files written to the file share up to the time that you make a request for notification. When the upload is done, Storage Gateway sends you notification through an Amazon CloudWatch Event. You can configure CloudWatch Events to send the notification through event targets such as Amazon SNS or Lambda function. This operation is only supported for S3 File Gateways.

For more information, see Getting file upload notification in the Amazon S3 File Gateway User Guide.

", + "RefreshCache": "

Refreshes the cached inventory of objects for the specified file share. This operation finds objects in the Amazon S3 bucket that were added, removed, or replaced since the gateway last listed the bucket's contents and cached the results. This operation does not import files into the S3 File Gateway cache storage. It only updates the cached inventory to reflect changes in the inventory of the objects in the S3 bucket. This operation is only supported in the S3 File Gateway types.

You can subscribe to be notified through an Amazon CloudWatch event when your RefreshCache operation completes. For more information, see Getting notified about file operations in the Storage Gateway User Guide. This operation is Only supported for S3 File Gateways.

When this API is called, it only initiates the refresh operation. When the API call completes and returns a success code, it doesn't necessarily mean that the file refresh has completed. You should use the refresh-complete notification to determine that the operation has completed before you check for new files on the gateway file share. You can subscribe to be notified through a CloudWatch event when your RefreshCache operation completes.

Throttle limit: This API is asynchronous, so the gateway will accept no more than two refreshes at any time. We recommend using the refresh-complete CloudWatch event notification before issuing additional requests. For more information, see Getting notified about file operations in the Storage Gateway User Guide.

  • Wait at least 60 seconds between consecutive RefreshCache API requests.

  • If you invoke the RefreshCache API when two requests are already being processed, any new request will cause an InvalidGatewayRequestException error because too many requests were sent to the server.

The S3 bucket name does not need to be included when entering the list of folders in the FolderList parameter.

For more information, see Getting notified about file operations in the Storage Gateway User Guide.

", "RemoveTagsFromResource": "

Removes one or more tags from the specified resource. This operation is supported in storage gateways of all types.

", "ResetCache": "

Resets all cache disks that have encountered an error and makes the disks available for reconfiguration as cache storage. If your cache disk encounters an error, the gateway prevents read and write operations on virtual tapes in the gateway. For example, an error can occur when a disk is corrupted or removed from the gateway. When a cache is reset, the gateway loses its cache storage. At this point, you can reconfigure the disks as cache disks. This operation is only supported in the cached volume and tape types.

If the cache disk you are resetting contains data that has not been uploaded to Amazon S3 yet, that data can be lost. After you reset cache disks, there will be no configured cache disks left in the gateway, so you must configure at least one new cache disk for your gateway to function properly.

", "RetrieveTapeArchive": "

Retrieves an archived virtual tape from the virtual tape shelf (VTS) to a tape gateway. Virtual tapes archived in the VTS are not associated with any gateway. However after a tape is retrieved, it is associated with a gateway, even though it is also listed in the VTS, that is, archive. This operation is only supported in the tape gateway type.

Once a tape is successfully retrieved to a gateway, it cannot be retrieved again to another gateway. You must archive the tape again before you can retrieve it to another gateway. This operation is only supported in the tape gateway type.

", @@ -79,7 +79,7 @@ "StartGateway": "

Starts a gateway that you previously shut down (see ShutdownGateway). After the gateway starts, you can then make other API calls, your applications can read from or write to the gateway's storage volumes and you will be able to take snapshot backups.

When you make a request, you will get a 200 OK success response immediately. However, it might take some time for the gateway to be ready. You should call DescribeGatewayInformation and check the status before making any additional API calls. For more information, see ActivateGateway.

To specify which gateway to start, use the Amazon Resource Name (ARN) of the gateway in your request.

", "UpdateAutomaticTapeCreationPolicy": "

Updates the automatic tape creation policy of a gateway. Use this to update the policy with a new set of automatic tape creation rules. This is only supported for tape gateways.

By default, there is no automatic tape creation policy.

A gateway can have only one automatic tape creation policy.

", "UpdateBandwidthRateLimit": "

Updates the bandwidth rate limits of a gateway. You can update both the upload and download bandwidth rate limit or specify only one of the two. If you don't set a bandwidth rate limit, the existing rate limit remains. This operation is supported only for the stored volume, cached volume, and tape gateway types. To update bandwidth rate limits for S3 file gateways, use UpdateBandwidthRateLimitSchedule.

By default, a gateway's bandwidth rate limits are not set. If you don't set any limit, the gateway does not have any limitations on its bandwidth usage and could potentially use the maximum available bandwidth.

To specify which gateway to update, use the Amazon Resource Name (ARN) of the gateway in your request.

", - "UpdateBandwidthRateLimitSchedule": "

Updates the bandwidth rate limit schedule for a specified gateway. By default, gateways do not have bandwidth rate limit schedules, which means no bandwidth rate limiting is in effect. Use this to initiate or update a gateway's bandwidth rate limit schedule. This operation is supported only for volume, tape and S3 file gateways. FSx file gateways do not support bandwidth rate limits.

", + "UpdateBandwidthRateLimitSchedule": "

Updates the bandwidth rate limit schedule for a specified gateway. By default, gateways do not have bandwidth rate limit schedules, which means no bandwidth rate limiting is in effect. Use this to initiate or update a gateway's bandwidth rate limit schedule. This operation is supported for volume, tape, and S3 file gateways. S3 file gateways support bandwidth rate limits for upload only. FSx file gateways do not support bandwidth rate limits.

", "UpdateChapCredentials": "

Updates the Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target. By default, a gateway does not have CHAP enabled; however, for added security, you might use it. This operation is supported in the volume and tape gateway types.

When you update CHAP credentials, all existing connections on the target are closed and initiators must reconnect with the new credentials.

", "UpdateFileSystemAssociation": "

Updates a file system association. This operation is only supported in the FSx File Gateways.

", "UpdateGatewayInformation": "

Updates a gateway's metadata, which includes the gateway's name and time zone. To specify which gateway to update, use the Amazon Resource Name (ARN) of the gateway in your request.

For gateways activated after September 2, 2015, the gateway's ARN contains the gateway ID rather than the gateway name. However, changing the name of the gateway has no effect on the gateway's ARN.

", @@ -269,7 +269,7 @@ "BandwidthUploadRateLimit": { "base": null, "refs": { - "BandwidthRateLimitInterval$AverageUploadRateLimitInBitsPerSec": "

The average upload rate limit component of the bandwidth rate limit interval, in bits per second. This field does not appear in the response if the upload rate limit is not set.

", + "BandwidthRateLimitInterval$AverageUploadRateLimitInBitsPerSec": "

The average upload rate limit component of the bandwidth rate limit interval, in bits per second. This field does not appear in the response if the upload rate limit is not set.

For Tape Gateway and Volume Gateway, the minimum value is 51200.

For S3 File Gateway and FSx File Gateway, the minimum value is 104857600.

", "DescribeBandwidthRateLimitOutput$AverageUploadRateLimitInBitsPerSec": "

The average upload bandwidth rate limit in bits per second. This field does not appear in the response if the upload rate limit is not set.

", "UpdateBandwidthRateLimitInput$AverageUploadRateLimitInBitsPerSec": "

The average upload bandwidth rate limit in bits per second.

" } @@ -2039,6 +2039,12 @@ "DescribeGatewayInformationOutput$SoftwareUpdatesEndDate": "

Date after which this gateway will not receive software updates for new features.

" } }, + "SoftwareVersion": { + "base": null, + "refs": { + "DescribeGatewayInformationOutput$SoftwareVersion": "

The version number of the software running on the gateway appliance.

" + } + }, "Squash": { "base": "

The user mapped to anonymous user. Valid options are the following:

  • RootSquash: Only root is mapped to anonymous user.

  • NoSquash: No one is mapped to anonymous user.

  • AllSquash: Everyone is mapped to anonymous user.

", "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://storagegateway-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://storagegateway-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://storagegateway.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://storagegateway.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/storagegateway/2013-06-30/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/storagegateway/2013-06-30/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,678 @@ +{ + "testCases": [ + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://storagegateway.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -155,7 +155,7 @@ "RoleArn":{"shape":"arnType"}, "RoleSessionName":{"shape":"roleSessionNameType"}, "PolicyArns":{"shape":"policyDescriptorListType"}, - "Policy":{"shape":"sessionPolicyDocumentType"}, + "Policy":{"shape":"unrestrictedSessionPolicyDocumentType"}, "DurationSeconds":{"shape":"roleDurationSecondsType"}, "Tags":{"shape":"tagListType"}, "TransitiveTagKeys":{"shape":"tagKeyListType"}, @@ -611,6 +611,11 @@ "pattern":"[\\d]*" }, "tokenType":{"type":"string"}, + "unrestrictedSessionPolicyDocumentType":{ + "type":"string", + "min":1, + "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" + }, "urlType":{ "type":"string", "max":2048, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -178,7 +178,7 @@ } }, "ProvidedContext": { - "base": "

Reserved for future use.

", + "base": "

Contains information about the provided context. This includes the signed and encrypted trusted context assertion and the context provider ARN from which the trusted context assertion was generated.

", "refs": { "ProvidedContextsListType$member": null } @@ -186,7 +186,7 @@ "ProvidedContextsListType": { "base": null, "refs": { - "AssumeRoleRequest$ProvidedContexts": "

Reserved for future use.

" + "AssumeRoleRequest$ProvidedContexts": "

A list of previously acquired trusted context assertions in the format of a JSON array. The trusted context assertion is signed and encrypted by Amazon Web Services STS.

The following is an example of a ProvidedContext value that includes a single trusted context assertion and the ARN of the context provider from which the trusted context assertion was generated.

[{\"ProviderArn\":\"arn:aws:iam::aws:contextProvider/IdentityCenter\",\"ContextAssertion\":\"trusted-context-assertion\"}]

" } }, "RegionDisabledException": { @@ -249,7 +249,7 @@ "FederatedUser$Arn": "

The ARN that specifies the federated user that is associated with the credentials. For more information about ARNs and how to use them in policies, see IAM Identifiers in the IAM User Guide.

", "GetCallerIdentityResponse$Arn": "

The Amazon Web Services ARN associated with the calling entity.

", "PolicyDescriptorType$arn": "

The Amazon Resource Name (ARN) of the IAM managed policy to use as a session policy for the role. For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces in the Amazon Web Services General Reference.

", - "ProvidedContext$ProviderArn": "

Reserved for future use.

" + "ProvidedContext$ProviderArn": "

The context provider ARN from which the trusted context assertion was generated.

" } }, "assumedRoleIdType": { @@ -267,7 +267,7 @@ "contextAssertionType": { "base": null, "refs": { - "ProvidedContext$ContextAssertion": "

Reserved for future use.

" + "ProvidedContext$ContextAssertion": "

The signed and encrypted trusted context assertion generated by the context provider. The trusted context assertion is signed and encrypted by Amazon Web Services STS.

" } }, "dateType": { @@ -398,7 +398,6 @@ "sessionPolicyDocumentType": { "base": null, "refs": { - "AssumeRoleRequest$Policy": "

An IAM policy in JSON format that you want to use as an inline session policy.

This parameter is optional. Passing policies to this operation returns new temporary credentials. The resulting session's permissions are the intersection of the role's identity-based policy and the session policies. You can use the role's temporary credentials in subsequent Amazon Web Services API calls to access resources in the account that owns the role. You cannot use session policies to grant more permissions than those allowed by the identity-based policy of the role that is being assumed. For more information, see Session Policies in the IAM User Guide.

The plaintext that you use for both inline and managed session policies can't exceed 2,048 characters. The JSON policy characters can be any ASCII character from the space character to the end of the valid character list (\\u0020 through \\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs, and session tags into a packed binary format that has a separate limit. Your request can fail for this limit even if your plaintext meets the other requirements. The PackedPolicySize response element indicates by percentage how close the policies and tags for your request are to the upper size limit.

", "AssumeRoleWithSAMLRequest$Policy": "

An IAM policy in JSON format that you want to use as an inline session policy.

This parameter is optional. Passing policies to this operation returns new temporary credentials. The resulting session's permissions are the intersection of the role's identity-based policy and the session policies. You can use the role's temporary credentials in subsequent Amazon Web Services API calls to access resources in the account that owns the role. You cannot use session policies to grant more permissions than those allowed by the identity-based policy of the role that is being assumed. For more information, see Session Policies in the IAM User Guide.

The plaintext that you use for both inline and managed session policies can't exceed 2,048 characters. The JSON policy characters can be any ASCII character from the space character to the end of the valid character list (\\u0020 through \\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs, and session tags into a packed binary format that has a separate limit. Your request can fail for this limit even if your plaintext meets the other requirements. The PackedPolicySize response element indicates by percentage how close the policies and tags for your request are to the upper size limit.

", "AssumeRoleWithWebIdentityRequest$Policy": "

An IAM policy in JSON format that you want to use as an inline session policy.

This parameter is optional. Passing policies to this operation returns new temporary credentials. The resulting session's permissions are the intersection of the role's identity-based policy and the session policies. You can use the role's temporary credentials in subsequent Amazon Web Services API calls to access resources in the account that owns the role. You cannot use session policies to grant more permissions than those allowed by the identity-based policy of the role that is being assumed. For more information, see Session Policies in the IAM User Guide.

The plaintext that you use for both inline and managed session policies can't exceed 2,048 characters. The JSON policy characters can be any ASCII character from the space character to the end of the valid character list (\\u0020 through \\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs, and session tags into a packed binary format that has a separate limit. Your request can fail for this limit even if your plaintext meets the other requirements. The PackedPolicySize response element indicates by percentage how close the policies and tags for your request are to the upper size limit.

", "GetFederationTokenRequest$Policy": "

An IAM policy in JSON format that you want to use as an inline session policy.

You must pass an inline or managed session policy to this operation. You can pass a single JSON policy document to use as an inline session policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as managed session policies.

This parameter is optional. However, if you do not pass any session policies, then the resulting federated user session has no permissions.

When you pass session policies, the session permissions are the intersection of the IAM user policies and the session policies that you pass. This gives you a way to further restrict the permissions for a federated user. You cannot use session policies to grant more permissions than those that are defined in the permissions policy of the IAM user. For more information, see Session Policies in the IAM User Guide.

The resulting credentials can be used to access a resource that has a resource-based policy. If that policy specifically references the federated user session in the Principal element of the policy, the session has the permissions allowed by the policy. These permissions are granted in addition to the permissions that are granted by the session policies.

The plaintext that you use for both inline and managed session policies can't exceed 2,048 characters. The JSON policy characters can be any ASCII character from the space character to the end of the valid character list (\\u0020 through \\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs, and session tags into a packed binary format that has a separate limit. Your request can fail for this limit even if your plaintext meets the other requirements. The PackedPolicySize response element indicates by percentage how close the policies and tags for your request are to the upper size limit.

" @@ -452,6 +451,12 @@ "Credentials$SessionToken": "

The token that users must pass to the service API to use the temporary credentials.

" } }, + "unrestrictedSessionPolicyDocumentType": { + "base": null, + "refs": { + "AssumeRoleRequest$Policy": "

An IAM policy in JSON format that you want to use as an inline session policy.

This parameter is optional. Passing policies to this operation returns new temporary credentials. The resulting session's permissions are the intersection of the role's identity-based policy and the session policies. You can use the role's temporary credentials in subsequent Amazon Web Services API calls to access resources in the account that owns the role. You cannot use session policies to grant more permissions than those allowed by the identity-based policy of the role that is being assumed. For more information, see Session Policies in the IAM User Guide.

The plaintext that you use for both inline and managed session policies can't exceed 2,048 characters. The JSON policy characters can be any ASCII character from the space character to the end of the valid character list (\\u0020 through \\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs, and session tags into a packed binary format that has a separate limit. Your request can fail for this limit even if your plaintext meets the other requirements. The PackedPolicySize response element indicates by percentage how close the policies and tags for your request are to the upper size limit.

" + } + }, "urlType": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -547,7 +546,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -560,7 +560,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -578,345 +577,310 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://sts.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "PartitionResult" }, - { - "conditions": [], - "endpoint": { - "url": "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseDualStack" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "name" ] - } + }, + "aws-us-gov" ] } ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "endpoint": { + "url": "https://sts.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", - "rules": [ + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "aws-global" + "supportsDualStack" ] } - ], - "endpoint": { - "url": "https://sts.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "sts", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "rules": [ { "conditions": [], "endpoint": { - "url": "https://sts.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" ] } - ] + ], + "endpoint": { + "url": "https://sts.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "sts", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://sts.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/sts/2011-06-15/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/sts/2011-06-15/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -702,8 +702,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -721,10 +721,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "ap-northeast-1", "UseFIPS": false, - "Region": "ap-northeast-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -734,8 +734,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -753,10 +753,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "ap-south-1", "UseFIPS": false, - "Region": "ap-south-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -766,8 +766,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -785,10 +785,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "ap-southeast-1", "UseFIPS": false, - "Region": "ap-southeast-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -798,8 +798,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -817,10 +817,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "ap-southeast-2", "UseFIPS": false, - "Region": "ap-southeast-2" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -830,8 +830,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -849,10 +849,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "aws-global", "UseFIPS": false, - "Region": "aws-global" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -862,8 +862,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -881,10 +881,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "ca-central-1", "UseFIPS": false, - "Region": "ca-central-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -894,8 +894,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -913,10 +913,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "eu-central-1", "UseFIPS": false, - "Region": "eu-central-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -926,8 +926,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -945,10 +945,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "eu-north-1", "UseFIPS": false, - "Region": "eu-north-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -958,8 +958,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -977,10 +977,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "eu-west-1", "UseFIPS": false, - "Region": "eu-west-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -990,8 +990,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1009,10 +1009,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "eu-west-2", "UseFIPS": false, - "Region": "eu-west-2" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1022,8 +1022,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1041,10 +1041,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "eu-west-3", "UseFIPS": false, - "Region": "eu-west-3" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1054,8 +1054,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1073,10 +1073,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "sa-east-1", "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1086,8 +1086,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1105,10 +1105,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1118,8 +1118,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1137,10 +1137,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "us-east-2", "UseFIPS": false, - "Region": "us-east-2" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1150,8 +1150,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1169,10 +1169,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "us-west-1", "UseFIPS": false, - "Region": "us-west-1" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1182,8 +1182,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-1" } ] @@ -1201,10 +1201,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "us-west-2", "UseFIPS": false, - "Region": "us-west-2" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1214,8 +1214,8 @@ "properties": { "authSchemes": [ { - "signingName": "sts", "name": "sigv4", + "signingName": "sts", "signingRegion": "us-east-3" } ] @@ -1233,10 +1233,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, + "Region": "us-east-3", "UseFIPS": false, - "Region": "us-east-3" + "UseDualStack": false, + "UseGlobalEndpoint": true } }, { @@ -1257,10 +1257,10 @@ } ], "params": { - "UseGlobalEndpoint": true, - "UseDualStack": false, - "UseFIPS": false, "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false, + "UseGlobalEndpoint": true, "Endpoint": "https://example.com" } }, @@ -1272,10 +1272,10 @@ } }, "params": { - "Endpoint": "https://example.com", - "UseGlobalEndpoint": false, + "UseFIPS": false, "UseDualStack": false, - "UseFIPS": false + "UseGlobalEndpoint": false, + "Endpoint": "https://example.com" } } ], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -73,6 +73,93 @@ {"shape":"ThrottlingException"} ] }, + "CreateAdapter":{ + "name":"CreateAdapter", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateAdapterRequest"}, + "output":{"shape":"CreateAdapterResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"IdempotentParameterMismatchException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateAdapterVersion":{ + "name":"CreateAdapterVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateAdapterVersionRequest"}, + "output":{"shape":"CreateAdapterVersionResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"InvalidS3ObjectException"}, + {"shape":"InvalidKMSKeyException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"IdempotentParameterMismatchException"}, + {"shape":"ThrottlingException"}, + {"shape":"LimitExceededException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"} + ], + "idempotent":true + }, + "DeleteAdapter":{ + "name":"DeleteAdapter", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteAdapterRequest"}, + "output":{"shape":"DeleteAdapterResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteAdapterVersion":{ + "name":"DeleteAdapterVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteAdapterVersionRequest"}, + "output":{"shape":"DeleteAdapterVersionResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "DetectDocumentText":{ "name":"DetectDocumentText", "http":{ @@ -93,6 +180,42 @@ {"shape":"ThrottlingException"} ] }, + "GetAdapter":{ + "name":"GetAdapter", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetAdapterRequest"}, + "output":{"shape":"GetAdapterResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAdapterVersion":{ + "name":"GetAdapterVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetAdapterVersionRequest"}, + "output":{"shape":"GetAdapterVersionResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "GetDocumentAnalysis":{ "name":"GetDocumentAnalysis", "http":{ @@ -188,6 +311,59 @@ {"shape":"InvalidKMSKeyException"} ] }, + "ListAdapterVersions":{ + "name":"ListAdapterVersions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListAdapterVersionsRequest"}, + "output":{"shape":"ListAdapterVersionsResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListAdapters":{ + "name":"ListAdapters", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListAdaptersRequest"}, + "output":{"shape":"ListAdaptersResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, "StartDocumentAnalysis":{ "name":"StartDocumentAnalysis", "http":{ @@ -279,6 +455,62 @@ {"shape":"ThrottlingException"}, {"shape":"LimitExceededException"} ] + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, + "UpdateAdapter":{ + "name":"UpdateAdapter", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateAdapterRequest"}, + "output":{"shape":"UpdateAdapterResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InternalServerError"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] } }, "shapes":{ @@ -288,6 +520,131 @@ }, "exception":true }, + "Adapter":{ + "type":"structure", + "required":[ + "AdapterId", + "Version" + ], + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "Pages":{"shape":"AdapterPages"}, + "Version":{"shape":"AdapterVersion"} + } + }, + "AdapterDescription":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9\\s!\"\\#\\$%'&\\(\\)\\*\\+\\,\\-\\./:;=\\?@\\[\\\\\\]\\^_`\\{\\|\\}~><]+$" + }, + "AdapterId":{ + "type":"string", + "max":1011, + "min":12 + }, + "AdapterList":{ + "type":"list", + "member":{"shape":"AdapterOverview"} + }, + "AdapterName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[a-zA-Z0-9-_]+" + }, + "AdapterOverview":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterName":{"shape":"AdapterName"}, + "CreationTime":{"shape":"DateTime"}, + "FeatureTypes":{"shape":"FeatureTypes"} + } + }, + "AdapterPage":{ + "type":"string", + "max":9, + "min":1, + "pattern":"^[0-9\\*\\-]+$" + }, + "AdapterPages":{ + "type":"list", + "member":{"shape":"AdapterPage"}, + "min":1 + }, + "AdapterVersion":{ + "type":"string", + "max":128, + "min":1 + }, + "AdapterVersionDatasetConfig":{ + "type":"structure", + "members":{ + "ManifestS3Object":{"shape":"S3Object"} + } + }, + "AdapterVersionEvaluationMetric":{ + "type":"structure", + "members":{ + "Baseline":{"shape":"EvaluationMetric"}, + "AdapterVersion":{"shape":"EvaluationMetric"}, + "FeatureType":{"shape":"FeatureType"} + } + }, + "AdapterVersionEvaluationMetrics":{ + "type":"list", + "member":{"shape":"AdapterVersionEvaluationMetric"} + }, + "AdapterVersionList":{ + "type":"list", + "member":{"shape":"AdapterVersionOverview"} + }, + "AdapterVersionOverview":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterVersion":{"shape":"AdapterVersion"}, + "CreationTime":{"shape":"DateTime"}, + "FeatureTypes":{"shape":"FeatureTypes"}, + "Status":{"shape":"AdapterVersionStatus"}, + "StatusMessage":{"shape":"AdapterVersionStatusMessage"} + } + }, + "AdapterVersionStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "AT_RISK", + "DEPRECATED", + "CREATION_ERROR", + "CREATION_IN_PROGRESS" + ] + }, + "AdapterVersionStatusMessage":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[a-zA-Z0-9\\s!\"\\#\\$%'&\\(\\)\\*\\+\\,\\-\\./:;=\\?@\\[\\\\\\]\\^_`\\{\\|\\}~><]+$" + }, + "Adapters":{ + "type":"list", + "member":{"shape":"Adapter"}, + "max":100, + "min":1 + }, + "AdaptersConfig":{ + "type":"structure", + "required":["Adapters"], + "members":{ + "Adapters":{"shape":"Adapters"} + } + }, + "AmazonResourceName":{ + "type":"string", + "max":1011, + "min":1 + }, "AnalyzeDocumentRequest":{ "type":"structure", "required":[ @@ -298,7 +655,8 @@ "Document":{"shape":"Document"}, "FeatureTypes":{"shape":"FeatureTypes"}, "HumanLoopConfig":{"shape":"HumanLoopConfig"}, - "QueriesConfig":{"shape":"QueriesConfig"} + "QueriesConfig":{"shape":"QueriesConfig"}, + "AdaptersConfig":{"shape":"AdaptersConfig"} } }, "AnalyzeDocumentResponse":{ @@ -348,6 +706,13 @@ "AnalyzeIDModelVersion":{"shape":"String"} } }, + "AutoUpdate":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "BadDocumentException":{ "type":"structure", "members":{ @@ -394,7 +759,17 @@ "QUERY_RESULT", "SIGNATURE", "TABLE_TITLE", - "TABLE_FOOTER" + "TABLE_FOOTER", + "LAYOUT_TEXT", + "LAYOUT_TITLE", + "LAYOUT_HEADER", + "LAYOUT_FOOTER", + "LAYOUT_SECTION_HEADER", + "LAYOUT_PAGE_NUMBER", + "LAYOUT_LIST", + "LAYOUT_FIGURE", + "LAYOUT_TABLE", + "LAYOUT_KEY_VALUE" ] }, "BoundingBox":{ @@ -412,6 +787,12 @@ "min":1, "pattern":"^[a-zA-Z0-9-_]+$" }, + "ConflictException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "ContentClassifier":{ "type":"string", "enum":[ @@ -424,6 +805,85 @@ "member":{"shape":"ContentClassifier"}, "max":256 }, + "CreateAdapterRequest":{ + "type":"structure", + "required":[ + "AdapterName", + "FeatureTypes" + ], + "members":{ + "AdapterName":{"shape":"AdapterName"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "Description":{"shape":"AdapterDescription"}, + "FeatureTypes":{"shape":"FeatureTypes"}, + "AutoUpdate":{"shape":"AutoUpdate"}, + "Tags":{"shape":"TagMap"} + } + }, + "CreateAdapterResponse":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"} + } + }, + "CreateAdapterVersionRequest":{ + "type":"structure", + "required":[ + "AdapterId", + "DatasetConfig", + "OutputConfig" + ], + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "DatasetConfig":{"shape":"AdapterVersionDatasetConfig"}, + "KMSKeyId":{"shape":"KMSKeyId"}, + "OutputConfig":{"shape":"OutputConfig"}, + "Tags":{"shape":"TagMap"} + } + }, + "CreateAdapterVersionResponse":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterVersion":{"shape":"AdapterVersion"} + } + }, + "DateTime":{"type":"timestamp"}, + "DeleteAdapterRequest":{ + "type":"structure", + "required":["AdapterId"], + "members":{ + "AdapterId":{"shape":"AdapterId"} + } + }, + "DeleteAdapterResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteAdapterVersionRequest":{ + "type":"structure", + "required":[ + "AdapterId", + "AdapterVersion" + ], + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterVersion":{"shape":"AdapterVersion"} + } + }, + "DeleteAdapterVersionResponse":{ + "type":"structure", + "members":{ + } + }, "DetectDocumentTextRequest":{ "type":"structure", "required":["Document"], @@ -512,6 +972,14 @@ "member":{"shape":"EntityType"} }, "ErrorCode":{"type":"string"}, + "EvaluationMetric":{ + "type":"structure", + "members":{ + "F1Score":{"shape":"Float"}, + "Precision":{"shape":"Float"}, + "Recall":{"shape":"Float"} + } + }, "ExpenseCurrency":{ "type":"structure", "members":{ @@ -591,7 +1059,8 @@ "TABLES", "FORMS", "QUERIES", - "SIGNATURES" + "SIGNATURES", + "LAYOUT" ] }, "FeatureTypes":{ @@ -610,6 +1079,52 @@ "Polygon":{"shape":"Polygon"} } }, + "GetAdapterRequest":{ + "type":"structure", + "required":["AdapterId"], + "members":{ + "AdapterId":{"shape":"AdapterId"} + } + }, + "GetAdapterResponse":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterName":{"shape":"AdapterName"}, + "CreationTime":{"shape":"DateTime"}, + "Description":{"shape":"AdapterDescription"}, + "FeatureTypes":{"shape":"FeatureTypes"}, + "AutoUpdate":{"shape":"AutoUpdate"}, + "Tags":{"shape":"TagMap"} + } + }, + "GetAdapterVersionRequest":{ + "type":"structure", + "required":[ + "AdapterId", + "AdapterVersion" + ], + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterVersion":{"shape":"AdapterVersion"} + } + }, + "GetAdapterVersionResponse":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterVersion":{"shape":"AdapterVersion"}, + "CreationTime":{"shape":"DateTime"}, + "FeatureTypes":{"shape":"FeatureTypes"}, + "Status":{"shape":"AdapterVersionStatus"}, + "StatusMessage":{"shape":"AdapterVersionStatusMessage"}, + "DatasetConfig":{"shape":"AdapterVersionDatasetConfig"}, + "KMSKeyId":{"shape":"KMSKeyId"}, + "OutputConfig":{"shape":"OutputConfig"}, + "EvaluationMetrics":{"shape":"AdapterVersionEvaluationMetrics"}, + "Tags":{"shape":"TagMap"} + } + }, "GetDocumentAnalysisRequest":{ "type":"structure", "required":["JobId"], @@ -944,6 +1459,52 @@ "type":"list", "member":{"shape":"LineItemFields"} }, + "ListAdapterVersionsRequest":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AfterCreationTime":{"shape":"DateTime"}, + "BeforeCreationTime":{"shape":"DateTime"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "ListAdapterVersionsResponse":{ + "type":"structure", + "members":{ + "AdapterVersions":{"shape":"AdapterVersionList"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "ListAdaptersRequest":{ + "type":"structure", + "members":{ + "AfterCreationTime":{"shape":"DateTime"}, + "BeforeCreationTime":{"shape":"DateTime"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "ListAdaptersResponse":{ + "type":"structure", + "members":{ + "Adapters":{"shape":"AdapterList"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagMap"} + } + }, "MaxResults":{ "type":"integer", "min":1 @@ -999,7 +1560,7 @@ }, "PaginationToken":{ "type":"string", - "max":255, + "max":1024, "min":1, "pattern":".*\\S.*" }, @@ -1099,6 +1660,12 @@ "TABLE_FOOTER" ] }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "RoleArn":{ "type":"string", "max":2048, @@ -1144,6 +1711,12 @@ "NOT_SELECTED" ] }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "SignatureDetection":{ "type":"structure", "members":{ @@ -1180,7 +1753,8 @@ "NotificationChannel":{"shape":"NotificationChannel"}, "OutputConfig":{"shape":"OutputConfig"}, "KMSKeyId":{"shape":"KMSKeyId"}, - "QueriesConfig":{"shape":"QueriesConfig"} + "QueriesConfig":{"shape":"QueriesConfig"}, + "AdaptersConfig":{"shape":"AdaptersConfig"} } }, "StartDocumentAnalysisResponse":{ @@ -1249,6 +1823,47 @@ "type":"list", "member":{"shape":"String"} }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(?!aws:)[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*$" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "Tags" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "Tags":{"shape":"TagMap"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0, + "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" + }, "TextType":{ "type":"string", "enum":[ @@ -1285,6 +1900,49 @@ "type":"structure", "members":{ }, + "exception":true + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "TagKeys" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateAdapterRequest":{ + "type":"structure", + "required":["AdapterId"], + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "Description":{"shape":"AdapterDescription"}, + "AdapterName":{"shape":"AdapterName"}, + "AutoUpdate":{"shape":"AutoUpdate"} + } + }, + "UpdateAdapterResponse":{ + "type":"structure", + "members":{ + "AdapterId":{"shape":"AdapterId"}, + "AdapterName":{"shape":"AdapterName"}, + "CreationTime":{"shape":"DateTime"}, + "Description":{"shape":"AdapterDescription"}, + "FeatureTypes":{"shape":"FeatureTypes"}, + "AutoUpdate":{"shape":"AutoUpdate"} + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + }, "exception":true }, "ValueType":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -5,16 +5,28 @@ "AnalyzeDocument": "

Analyzes an input document for relationships between detected items.

The types of information returned are as follows:

  • Form data (key-value pairs). The related information is returned in two Block objects, each of type KEY_VALUE_SET: a KEY Block object and a VALUE Block object. For example, Name: Ana Silva Carolina contains a key and value. Name: is the key. Ana Silva Carolina is the value.

  • Table and table cell data. A TABLE Block object contains information about a detected table. A CELL Block object is returned for each cell in a table.

  • Lines and words of text. A LINE Block object contains one or more WORD Block objects. All lines and words that are detected in the document are returned (including text that doesn't have a relationship with the value of FeatureTypes).

  • Signatures. A SIGNATURE Block object contains the location information of a signature in a document. If used in conjunction with forms or tables, a signature can be given a Key-Value pairing or be detected in the cell of a table.

  • Query. A QUERY Block object contains the query text, alias and link to the associated Query results block object.

  • Query Result. A QUERY_RESULT Block object contains the answer to the query and an ID that connects it to the query asked. This Block also contains a confidence score.

Selection elements such as check boxes and option buttons (radio buttons) can be detected in form data and in tables. A SELECTION_ELEMENT Block object contains information about a selection element, including the selection status.

You can choose which type of analysis to perform by specifying the FeatureTypes list.

The output is returned in a list of Block objects.

AnalyzeDocument is a synchronous operation. To analyze documents asynchronously, use StartDocumentAnalysis.

For more information, see Document Text Analysis.

", "AnalyzeExpense": "

AnalyzeExpense synchronously analyzes an input document for financially related relationships between text.

Information is returned as ExpenseDocuments and seperated as follows:

  • LineItemGroups- A data set containing LineItems which store information about the lines of text, such as an item purchased and its price on a receipt.

  • SummaryFields- Contains all other information a receipt, such as header information or the vendors name.

", "AnalyzeID": "

Analyzes identity documents for relevant information. This information is extracted and returned as IdentityDocumentFields, which records both the normalized field and value of the extracted text. Unlike other Amazon Textract operations, AnalyzeID doesn't return any Geometry data.

", + "CreateAdapter": "

Creates an adapter, which can be fine-tuned for enhanced performance on user provided documents. Takes an AdapterName and FeatureType. Currently the only supported feature type is QUERIES. You can also provide a Description, Tags, and a ClientRequestToken. You can choose whether or not the adapter should be AutoUpdated with the AutoUpdate argument. By default, AutoUpdate is set to DISABLED.

", + "CreateAdapterVersion": "

Creates a new version of an adapter. Operates on a provided AdapterId and a specified dataset provided via the DatasetConfig argument. Requires that you specify an Amazon S3 bucket with the OutputConfig argument. You can provide an optional KMSKeyId, an optional ClientRequestToken, and optional tags.

", + "DeleteAdapter": "

Deletes an Amazon Textract adapter. Takes an AdapterId and deletes the adapter specified by the ID.

", + "DeleteAdapterVersion": "

Deletes an Amazon Textract adapter version. Requires that you specify both an AdapterId and a AdapterVersion. Deletes the adapter version specified by the AdapterId and the AdapterVersion.

", "DetectDocumentText": "

Detects text in the input document. Amazon Textract can detect lines of text and the words that make up a line of text. The input document must be in one of the following image formats: JPEG, PNG, PDF, or TIFF. DetectDocumentText returns the detected text in an array of Block objects.

Each document page has as an associated Block of type PAGE. Each PAGE Block object is the parent of LINE Block objects that represent the lines of detected text on a page. A LINE Block object is a parent for each word that makes up the line. Words are represented by Block objects of type WORD.

DetectDocumentText is a synchronous operation. To analyze documents asynchronously, use StartDocumentTextDetection.

For more information, see Document Text Detection.

", + "GetAdapter": "

Gets configuration information for an adapter specified by an AdapterId, returning information on AdapterName, Description, CreationTime, AutoUpdate status, and FeatureTypes.

", + "GetAdapterVersion": "

Gets configuration information for the specified adapter version, including: AdapterId, AdapterVersion, FeatureTypes, Status, StatusMessage, DatasetConfig, KMSKeyId, OutputConfig, Tags and EvaluationMetrics.

", "GetDocumentAnalysis": "

Gets the results for an Amazon Textract asynchronous operation that analyzes text in a document.

You start asynchronous text analysis by calling StartDocumentAnalysis, which returns a job identifier (JobId). When the text analysis operation finishes, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that's registered in the initial call to StartDocumentAnalysis. To get the results of the text-detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetDocumentAnalysis, and pass the job identifier (JobId) from the initial call to StartDocumentAnalysis.

GetDocumentAnalysis returns an array of Block objects. The following types of information are returned:

  • Form data (key-value pairs). The related information is returned in two Block objects, each of type KEY_VALUE_SET: a KEY Block object and a VALUE Block object. For example, Name: Ana Silva Carolina contains a key and value. Name: is the key. Ana Silva Carolina is the value.

  • Table and table cell data. A TABLE Block object contains information about a detected table. A CELL Block object is returned for each cell in a table.

  • Lines and words of text. A LINE Block object contains one or more WORD Block objects. All lines and words that are detected in the document are returned (including text that doesn't have a relationship with the value of the StartDocumentAnalysis FeatureTypes input parameter).

  • Query. A QUERY Block object contains the query text, alias and link to the associated Query results block object.

  • Query Results. A QUERY_RESULT Block object contains the answer to the query and an ID that connects it to the query asked. This Block also contains a confidence score.

While processing a document with queries, look out for INVALID_REQUEST_PARAMETERS output. This indicates that either the per page query limit has been exceeded or that the operation is trying to query a page in the document which doesn’t exist.

Selection elements such as check boxes and option buttons (radio buttons) can be detected in form data and in tables. A SELECTION_ELEMENT Block object contains information about a selection element, including the selection status.

Use the MaxResults parameter to limit the number of blocks that are returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetDocumentAnalysis, and populate the NextToken request parameter with the token value that's returned from the previous call to GetDocumentAnalysis.

For more information, see Document Text Analysis.

", "GetDocumentTextDetection": "

Gets the results for an Amazon Textract asynchronous operation that detects text in a document. Amazon Textract can detect lines of text and the words that make up a line of text.

You start asynchronous text detection by calling StartDocumentTextDetection, which returns a job identifier (JobId). When the text detection operation finishes, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that's registered in the initial call to StartDocumentTextDetection. To get the results of the text-detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetDocumentTextDetection, and pass the job identifier (JobId) from the initial call to StartDocumentTextDetection.

GetDocumentTextDetection returns an array of Block objects.

Each document page has as an associated Block of type PAGE. Each PAGE Block object is the parent of LINE Block objects that represent the lines of detected text on a page. A LINE Block object is a parent for each word that makes up the line. Words are represented by Block objects of type WORD.

Use the MaxResults parameter to limit the number of blocks that are returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetDocumentTextDetection, and populate the NextToken request parameter with the token value that's returned from the previous call to GetDocumentTextDetection.

For more information, see Document Text Detection.

", "GetExpenseAnalysis": "

Gets the results for an Amazon Textract asynchronous operation that analyzes invoices and receipts. Amazon Textract finds contact information, items purchased, and vendor name, from input invoices and receipts.

You start asynchronous invoice/receipt analysis by calling StartExpenseAnalysis, which returns a job identifier (JobId). Upon completion of the invoice/receipt analysis, Amazon Textract publishes the completion status to the Amazon Simple Notification Service (Amazon SNS) topic. This topic must be registered in the initial call to StartExpenseAnalysis. To get the results of the invoice/receipt analysis operation, first ensure that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetExpenseAnalysis, and pass the job identifier (JobId) from the initial call to StartExpenseAnalysis.

Use the MaxResults parameter to limit the number of blocks that are returned. If there are more results than specified in MaxResults, the value of NextToken in the operation response contains a pagination token for getting the next set of results. To get the next page of results, call GetExpenseAnalysis, and populate the NextToken request parameter with the token value that's returned from the previous call to GetExpenseAnalysis.

For more information, see Analyzing Invoices and Receipts.

", "GetLendingAnalysis": "

Gets the results for an Amazon Textract asynchronous operation that analyzes text in a lending document.

You start asynchronous text analysis by calling StartLendingAnalysis, which returns a job identifier (JobId). When the text analysis operation finishes, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that's registered in the initial call to StartLendingAnalysis.

To get the results of the text analysis operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetLendingAnalysis, and pass the job identifier (JobId) from the initial call to StartLendingAnalysis.

", "GetLendingAnalysisSummary": "

Gets summarized results for the StartLendingAnalysis operation, which analyzes text in a lending document. The returned summary consists of information about documents grouped together by a common document type. Information like detected signatures, page numbers, and split documents is returned with respect to the type of grouped document.

You start asynchronous text analysis by calling StartLendingAnalysis, which returns a job identifier (JobId). When the text analysis operation finishes, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that's registered in the initial call to StartLendingAnalysis.

To get the results of the text analysis operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetLendingAnalysisSummary, and pass the job identifier (JobId) from the initial call to StartLendingAnalysis.

", + "ListAdapterVersions": "

List all version of an adapter that meet the specified filtration criteria.

", + "ListAdapters": "

Lists all adapters that match the specified filtration criteria.

", + "ListTagsForResource": "

Lists all tags for an Amazon Textract resource.

", "StartDocumentAnalysis": "

Starts the asynchronous analysis of an input document for relationships between detected items such as key-value pairs, tables, and selection elements.

StartDocumentAnalysis can analyze text in documents that are in JPEG, PNG, TIFF, and PDF format. The documents are stored in an Amazon S3 bucket. Use DocumentLocation to specify the bucket name and file name of the document.

StartDocumentAnalysis returns a job identifier (JobId) that you use to get the results of the operation. When text analysis is finished, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that you specify in NotificationChannel. To get the results of the text analysis operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetDocumentAnalysis, and pass the job identifier (JobId) from the initial call to StartDocumentAnalysis.

For more information, see Document Text Analysis.

", "StartDocumentTextDetection": "

Starts the asynchronous detection of text in a document. Amazon Textract can detect lines of text and the words that make up a line of text.

StartDocumentTextDetection can analyze text in documents that are in JPEG, PNG, TIFF, and PDF format. The documents are stored in an Amazon S3 bucket. Use DocumentLocation to specify the bucket name and file name of the document.

StartTextDetection returns a job identifier (JobId) that you use to get the results of the operation. When text detection is finished, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that you specify in NotificationChannel. To get the results of the text detection operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetDocumentTextDetection, and pass the job identifier (JobId) from the initial call to StartDocumentTextDetection.

For more information, see Document Text Detection.

", "StartExpenseAnalysis": "

Starts the asynchronous analysis of invoices or receipts for data like contact information, items purchased, and vendor names.

StartExpenseAnalysis can analyze text in documents that are in JPEG, PNG, and PDF format. The documents must be stored in an Amazon S3 bucket. Use the DocumentLocation parameter to specify the name of your S3 bucket and the name of the document in that bucket.

StartExpenseAnalysis returns a job identifier (JobId) that you will provide to GetExpenseAnalysis to retrieve the results of the operation. When the analysis of the input invoices/receipts is finished, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that you provide to the NotificationChannel. To obtain the results of the invoice and receipt analysis operation, ensure that the status value published to the Amazon SNS topic is SUCCEEDED. If so, call GetExpenseAnalysis, and pass the job identifier (JobId) that was returned by your call to StartExpenseAnalysis.

For more information, see Analyzing Invoices and Receipts.

", - "StartLendingAnalysis": "

Starts the classification and analysis of an input document. StartLendingAnalysis initiates the classification and analysis of a packet of lending documents. StartLendingAnalysis operates on a document file located in an Amazon S3 bucket.

StartLendingAnalysis can analyze text in documents that are in one of the following formats: JPEG, PNG, TIFF, PDF. Use DocumentLocation to specify the bucket name and the file name of the document.

StartLendingAnalysis returns a job identifier (JobId) that you use to get the results of the operation. When the text analysis is finished, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that you specify in NotificationChannel. To get the results of the text analysis operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If the status is SUCCEEDED you can call either GetLendingAnalysis or GetLendingAnalysisSummary and provide the JobId to obtain the results of the analysis.

If using OutputConfig to specify an Amazon S3 bucket, the output will be contained within the specified prefix in a directory labeled with the job-id. In the directory there are 3 sub-directories:

  • detailedResponse (contains the GetLendingAnalysis response)

  • summaryResponse (for the GetLendingAnalysisSummary response)

  • splitDocuments (documents split across logical boundaries)

" + "StartLendingAnalysis": "

Starts the classification and analysis of an input document. StartLendingAnalysis initiates the classification and analysis of a packet of lending documents. StartLendingAnalysis operates on a document file located in an Amazon S3 bucket.

StartLendingAnalysis can analyze text in documents that are in one of the following formats: JPEG, PNG, TIFF, PDF. Use DocumentLocation to specify the bucket name and the file name of the document.

StartLendingAnalysis returns a job identifier (JobId) that you use to get the results of the operation. When the text analysis is finished, Amazon Textract publishes a completion status to the Amazon Simple Notification Service (Amazon SNS) topic that you specify in NotificationChannel. To get the results of the text analysis operation, first check that the status value published to the Amazon SNS topic is SUCCEEDED. If the status is SUCCEEDED you can call either GetLendingAnalysis or GetLendingAnalysisSummary and provide the JobId to obtain the results of the analysis.

If using OutputConfig to specify an Amazon S3 bucket, the output will be contained within the specified prefix in a directory labeled with the job-id. In the directory there are 3 sub-directories:

  • detailedResponse (contains the GetLendingAnalysis response)

  • summaryResponse (for the GetLendingAnalysisSummary response)

  • splitDocuments (documents split across logical boundaries)

", + "TagResource": "

Adds one or more tags to the specified resource.

", + "UntagResource": "

Removes any tags with the specified keys from the specified resource.

", + "UpdateAdapter": "

Update the configuration for an adapter. FeatureTypes configurations cannot be updated. At least one new parameter must be specified as an argument.

" }, "shapes": { "AccessDeniedException": { @@ -22,6 +34,152 @@ "refs": { } }, + "Adapter": { + "base": "

An adapter selected for use when analyzing documents. Contains an adapter ID and a version number. Contains information on pages selected for analysis when analyzing documents asychronously.

", + "refs": { + "Adapters$member": null + } + }, + "AdapterDescription": { + "base": null, + "refs": { + "CreateAdapterRequest$Description": "

The description to be assigned to the adapter being created.

", + "GetAdapterResponse$Description": "

The description for the requested adapter.

", + "UpdateAdapterRequest$Description": "

The new description to be applied to the adapter.

", + "UpdateAdapterResponse$Description": "

A string containing the description of the adapter that has been updated.

" + } + }, + "AdapterId": { + "base": null, + "refs": { + "Adapter$AdapterId": "

A unique identifier for the adapter resource.

", + "AdapterOverview$AdapterId": "

A unique identifier for the adapter resource.

", + "AdapterVersionOverview$AdapterId": "

A unique identifier for the adapter associated with a given adapter version.

", + "CreateAdapterResponse$AdapterId": "

A string containing the unique ID for the adapter that has been created.

", + "CreateAdapterVersionRequest$AdapterId": "

A string containing a unique ID for the adapter that will receive a new version.

", + "CreateAdapterVersionResponse$AdapterId": "

A string containing the unique ID for the adapter that has received a new version.

", + "DeleteAdapterRequest$AdapterId": "

A string containing a unique ID for the adapter to be deleted.

", + "DeleteAdapterVersionRequest$AdapterId": "

A string containing a unique ID for the adapter version that will be deleted.

", + "GetAdapterRequest$AdapterId": "

A string containing a unique ID for the adapter.

", + "GetAdapterResponse$AdapterId": "

A string identifying the adapter that information has been retrieved for.

", + "GetAdapterVersionRequest$AdapterId": "

A string specifying a unique ID for the adapter version you want to retrieve information for.

", + "GetAdapterVersionResponse$AdapterId": "

A string containing a unique ID for the adapter version being retrieved.

", + "ListAdapterVersionsRequest$AdapterId": "

A string containing a unique ID for the adapter to match for when listing adapter versions.

", + "UpdateAdapterRequest$AdapterId": "

A string containing a unique ID for the adapter that will be updated.

", + "UpdateAdapterResponse$AdapterId": "

A string containing a unique ID for the adapter that has been updated.

" + } + }, + "AdapterList": { + "base": null, + "refs": { + "ListAdaptersResponse$Adapters": "

A list of adapters that matches the filtering criteria specified when calling ListAdapters.

" + } + }, + "AdapterName": { + "base": null, + "refs": { + "AdapterOverview$AdapterName": "

A string naming the adapter resource.

", + "CreateAdapterRequest$AdapterName": "

The name to be assigned to the adapter being created.

", + "GetAdapterResponse$AdapterName": "

The name of the requested adapter.

", + "UpdateAdapterRequest$AdapterName": "

The new name to be applied to the adapter.

", + "UpdateAdapterResponse$AdapterName": "

A string containing the name of the adapter that has been updated.

" + } + }, + "AdapterOverview": { + "base": "

Contains information on the adapter, including the adapter ID, Name, Creation time, and feature types.

", + "refs": { + "AdapterList$member": null + } + }, + "AdapterPage": { + "base": null, + "refs": { + "AdapterPages$member": null + } + }, + "AdapterPages": { + "base": null, + "refs": { + "Adapter$Pages": "

Pages is a parameter that the user inputs to specify which pages to apply an adapter to. The following is a list of rules for using this parameter.

  • If a page is not specified, it is set to [\"1\"] by default.

  • The following characters are allowed in the parameter's string: 0 1 2 3 4 5 6 7 8 9 - *. No whitespace is allowed.

  • When using * to indicate all pages, it must be the only element in the list.

  • You can use page intervals, such as [\"1-3\", \"1-1\", \"4-*\"]. Where * indicates last page of document.

  • Specified pages must be greater than 0 and less than or equal to the number of pages in the document.

" + } + }, + "AdapterVersion": { + "base": null, + "refs": { + "Adapter$Version": "

A string that identifies the version of the adapter.

", + "AdapterVersionOverview$AdapterVersion": "

An identified for a given adapter version.

", + "CreateAdapterVersionResponse$AdapterVersion": "

A string describing the new version of the adapter.

", + "DeleteAdapterVersionRequest$AdapterVersion": "

Specifies the adapter version to be deleted.

", + "GetAdapterVersionRequest$AdapterVersion": "

A string specifying the adapter version you want to retrieve information for.

", + "GetAdapterVersionResponse$AdapterVersion": "

A string containing the adapter version that has been retrieved.

" + } + }, + "AdapterVersionDatasetConfig": { + "base": "

The dataset configuration options for a given version of an adapter. Can include an Amazon S3 bucket if specified.

", + "refs": { + "CreateAdapterVersionRequest$DatasetConfig": "

Specifies a dataset used to train a new adapter version. Takes a ManifestS3Object as the value.

", + "GetAdapterVersionResponse$DatasetConfig": "

Specifies a dataset used to train a new adapter version. Takes a ManifestS3Objec as the value.

" + } + }, + "AdapterVersionEvaluationMetric": { + "base": "

Contains information on the metrics used to evalute the peformance of a given adapter version. Includes data for baseline model performance and individual adapter version perfromance.

", + "refs": { + "AdapterVersionEvaluationMetrics$member": null + } + }, + "AdapterVersionEvaluationMetrics": { + "base": null, + "refs": { + "GetAdapterVersionResponse$EvaluationMetrics": "

The evaluation metrics (F1 score, Precision, and Recall) for the requested version, grouped by baseline metrics and adapter version.

" + } + }, + "AdapterVersionList": { + "base": null, + "refs": { + "ListAdapterVersionsResponse$AdapterVersions": "

Adapter versions that match the filtering criteria specified when calling ListAdapters.

" + } + }, + "AdapterVersionOverview": { + "base": "

Summary info for an adapter version. Contains information on the AdapterId, AdapterVersion, CreationTime, FeatureTypes, and Status.

", + "refs": { + "AdapterVersionList$member": null + } + }, + "AdapterVersionStatus": { + "base": null, + "refs": { + "AdapterVersionOverview$Status": "

Contains information on the status of a given adapter version.

", + "GetAdapterVersionResponse$Status": "

The status of the adapter version that has been requested.

" + } + }, + "AdapterVersionStatusMessage": { + "base": null, + "refs": { + "AdapterVersionOverview$StatusMessage": "

A message explaining the status of a given adapter vesion.

", + "GetAdapterVersionResponse$StatusMessage": "

A message that describes the status of the requested adapter version.

" + } + }, + "Adapters": { + "base": null, + "refs": { + "AdaptersConfig$Adapters": "

A list of adapters to be used when analyzing the specified document.

" + } + }, + "AdaptersConfig": { + "base": "

Contains information about adapters used when analyzing a document, with each adapter specified using an AdapterId and version

", + "refs": { + "AnalyzeDocumentRequest$AdaptersConfig": "

Specifies the adapter to be used when analyzing a document.

", + "StartDocumentAnalysisRequest$AdaptersConfig": "

Specifies the adapter to be used when analyzing a document.

" + } + }, + "AmazonResourceName": { + "base": null, + "refs": { + "ListTagsForResourceRequest$ResourceARN": "

The Amazon Resource Name (ARN) that specifies the resource to list tags for.

", + "TagResourceRequest$ResourceARN": "

The Amazon Resource Name (ARN) that specifies the resource to be tagged.

", + "UntagResourceRequest$ResourceARN": "

The Amazon Resource Name (ARN) that specifies the resource to be untagged.

" + } + }, "AnalyzeDocumentRequest": { "base": null, "refs": { @@ -59,6 +217,15 @@ "refs": { } }, + "AutoUpdate": { + "base": null, + "refs": { + "CreateAdapterRequest$AutoUpdate": "

Controls whether or not the adapter should automatically update.

", + "GetAdapterResponse$AutoUpdate": "

Binary value indicating if the adapter is being automatically updated or not.

", + "UpdateAdapterRequest$AutoUpdate": "

The new auto-update status to be applied to the adapter.

", + "UpdateAdapterResponse$AutoUpdate": "

The auto-update status of the adapter that has been updated.

" + } + }, "BadDocumentException": { "base": "

Amazon Textract isn't able to read the document. For more information on the document limits in Amazon Textract, see limits.

", "refs": { @@ -84,7 +251,7 @@ "BlockType": { "base": null, "refs": { - "Block$BlockType": "

The type of text item that's recognized. In operations for text detection, the following types are returned:

  • PAGE - Contains a list of the LINE Block objects that are detected on a document page.

  • WORD - A word detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.

  • LINE - A string of tab-delimited, contiguous words that are detected on a document page.

In text analysis operations, the following types are returned:

  • PAGE - Contains a list of child Block objects that are detected on a document page.

  • KEY_VALUE_SET - Stores the KEY and VALUE Block objects for linked text that's detected on a document page. Use the EntityType field to determine if a KEY_VALUE_SET object is a KEY Block object or a VALUE Block object.

  • WORD - A word that's detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.

  • LINE - A string of tab-delimited, contiguous words that are detected on a document page.

  • TABLE - A table that's detected on a document page. A table is grid-based information with two or more rows or columns, with a cell span of one row and one column each.

  • TABLE_TITLE - The title of a table. A title is typically a line of text above or below a table, or embedded as the first row of a table.

  • TABLE_FOOTER - The footer associated with a table. A footer is typically a line or lines of text below a table or embedded as the last row of a table.

  • CELL - A cell within a detected table. The cell is the parent of the block that contains the text in the cell.

  • MERGED_CELL - A cell in a table whose content spans more than one row or column. The Relationships array for this cell contain data from individual cells.

  • SELECTION_ELEMENT - A selection element such as an option button (radio button) or a check box that's detected on a document page. Use the value of SelectionStatus to determine the status of the selection element.

  • SIGNATURE - The location and confidene score of a signature detected on a document page. Can be returned as part of a Key-Value pair or a detected cell.

  • QUERY - A question asked during the call of AnalyzeDocument. Contains an alias and an ID that attaches it to its answer.

  • QUERY_RESULT - A response to a question asked during the call of analyze document. Comes with an alias and ID for ease of locating in a response. Also contains location and confidence score.

" + "Block$BlockType": "

The type of text item that's recognized. In operations for text detection, the following types are returned:

  • PAGE - Contains a list of the LINE Block objects that are detected on a document page.

  • WORD - A word detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.

  • LINE - A string of tab-delimited, contiguous words that are detected on a document page.

In text analysis operations, the following types are returned:

  • PAGE - Contains a list of child Block objects that are detected on a document page.

  • KEY_VALUE_SET - Stores the KEY and VALUE Block objects for linked text that's detected on a document page. Use the EntityType field to determine if a KEY_VALUE_SET object is a KEY Block object or a VALUE Block object.

  • WORD - A word that's detected on a document page. A word is one or more ISO basic Latin script characters that aren't separated by spaces.

  • LINE - A string of tab-delimited, contiguous words that are detected on a document page.

  • TABLE - A table that's detected on a document page. A table is grid-based information with two or more rows or columns, with a cell span of one row and one column each.

  • TABLE_TITLE - The title of a table. A title is typically a line of text above or below a table, or embedded as the first row of a table.

  • TABLE_FOOTER - The footer associated with a table. A footer is typically a line or lines of text below a table or embedded as the last row of a table.

  • CELL - A cell within a detected table. The cell is the parent of the block that contains the text in the cell.

  • MERGED_CELL - A cell in a table whose content spans more than one row or column. The Relationships array for this cell contain data from individual cells.

  • SELECTION_ELEMENT - A selection element such as an option button (radio button) or a check box that's detected on a document page. Use the value of SelectionStatus to determine the status of the selection element.

  • SIGNATURE - The location and confidence score of a signature detected on a document page. Can be returned as part of a Key-Value pair or a detected cell.

  • QUERY - A question asked during the call of AnalyzeDocument. Contains an alias and an ID that attaches it to its answer.

  • QUERY_RESULT - A response to a question asked during the call of analyze document. Comes with an alias and ID for ease of locating in a response. Also contains location and confidence score.

The following BlockTypes are only returned for Amazon Textract Layout.

  • LAYOUT_TITLE - The main title of the document.

  • LAYOUT_HEADER - Text located in the top margin of the document.

  • LAYOUT_FOOTER - Text located in the bottom margin of the document.

  • LAYOUT_SECTION_HEADER - The titles of sections within a document.

  • LAYOUT_PAGE_NUMBER - The page number of the documents.

  • LAYOUT_LIST - Any information grouped together in list form.

  • LAYOUT_FIGURE - Indicates the location of an image in a document.

  • LAYOUT_TABLE - Indicates the location of a table in the document.

  • LAYOUT_KEY_VALUE - Indicates the location of form key-values in a document.

  • LAYOUT_TEXT - Text that is present typically as a part of paragraphs in documents.

" } }, "BoundingBox": { @@ -96,12 +263,19 @@ "ClientRequestToken": { "base": null, "refs": { + "CreateAdapterRequest$ClientRequestToken": "

Idempotent token is used to recognize the request. If the same token is used with multiple CreateAdapter requests, the same session is returned. This token is employed to avoid unintentionally creating the same session multiple times.

", + "CreateAdapterVersionRequest$ClientRequestToken": "

Idempotent token is used to recognize the request. If the same token is used with multiple CreateAdapterVersion requests, the same session is returned. This token is employed to avoid unintentionally creating the same session multiple times.

", "StartDocumentAnalysisRequest$ClientRequestToken": "

The idempotent token that you use to identify the start request. If you use the same token with multiple StartDocumentAnalysis requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidentally started more than once. For more information, see Calling Amazon Textract Asynchronous Operations.

", "StartDocumentTextDetectionRequest$ClientRequestToken": "

The idempotent token that's used to identify the start request. If you use the same token with multiple StartDocumentTextDetection requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidentally started more than once. For more information, see Calling Amazon Textract Asynchronous Operations.

", "StartExpenseAnalysisRequest$ClientRequestToken": "

The idempotent token that's used to identify the start request. If you use the same token with multiple StartDocumentTextDetection requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidentally started more than once. For more information, see Calling Amazon Textract Asynchronous Operations

", "StartLendingAnalysisRequest$ClientRequestToken": "

The idempotent token that you use to identify the start request. If you use the same token with multiple StartLendingAnalysis requests, the same JobId is returned. Use ClientRequestToken to prevent the same job from being accidentally started more than once. For more information, see Calling Amazon Textract Asynchronous Operations.

" } }, + "ConflictException": { + "base": "

Updating or deleting a resource can cause an inconsistent state.

", + "refs": { + } + }, "ContentClassifier": { "base": null, "refs": { @@ -114,6 +288,60 @@ "HumanLoopDataAttributes$ContentClassifiers": "

Sets whether the input image is free of personally identifiable information or adult content.

" } }, + "CreateAdapterRequest": { + "base": null, + "refs": { + } + }, + "CreateAdapterResponse": { + "base": null, + "refs": { + } + }, + "CreateAdapterVersionRequest": { + "base": null, + "refs": { + } + }, + "CreateAdapterVersionResponse": { + "base": null, + "refs": { + } + }, + "DateTime": { + "base": null, + "refs": { + "AdapterOverview$CreationTime": "

The date and time that the adapter was created.

", + "AdapterVersionOverview$CreationTime": "

The date and time that a given adapter version was created.

", + "GetAdapterResponse$CreationTime": "

The date and time the requested adapter was created at.

", + "GetAdapterVersionResponse$CreationTime": "

The time that the adapter version was created.

", + "ListAdapterVersionsRequest$AfterCreationTime": "

Specifies the lower bound for the ListAdapterVersions operation. Ensures ListAdapterVersions returns only adapter versions created after the specified creation time.

", + "ListAdapterVersionsRequest$BeforeCreationTime": "

Specifies the upper bound for the ListAdapterVersions operation. Ensures ListAdapterVersions returns only adapter versions created after the specified creation time.

", + "ListAdaptersRequest$AfterCreationTime": "

Specifies the lower bound for the ListAdapters operation. Ensures ListAdapters returns only adapters created after the specified creation time.

", + "ListAdaptersRequest$BeforeCreationTime": "

Specifies the upper bound for the ListAdapters operation. Ensures ListAdapters returns only adapters created before the specified creation time.

", + "UpdateAdapterResponse$CreationTime": "

An object specifying the creation time of the the adapter that has been updated.

" + } + }, + "DeleteAdapterRequest": { + "base": null, + "refs": { + } + }, + "DeleteAdapterResponse": { + "base": null, + "refs": { + } + }, + "DeleteAdapterVersionRequest": { + "base": null, + "refs": { + } + }, + "DeleteAdapterVersionResponse": { + "base": null, + "refs": { + } + }, "DetectDocumentTextRequest": { "base": null, "refs": { @@ -209,6 +437,13 @@ "Warning$ErrorCode": "

The error code for the warning.

" } }, + "EvaluationMetric": { + "base": "

The evaluation metrics (F1 score, Precision, and Recall) for an adapter version.

", + "refs": { + "AdapterVersionEvaluationMetric$Baseline": "

The F1 score, precision, and recall metrics for the baseline model.

", + "AdapterVersionEvaluationMetric$AdapterVersion": "

The F1 score, precision, and recall metrics for the baseline model.

" + } + }, "ExpenseCurrency": { "base": "

Returns the kind of currency detected.

", "refs": { @@ -282,14 +517,21 @@ "FeatureType": { "base": null, "refs": { + "AdapterVersionEvaluationMetric$FeatureType": "

Indicates the feature type being analyzed by a given adapter version.

", "FeatureTypes$member": null } }, "FeatureTypes": { "base": null, "refs": { - "AnalyzeDocumentRequest$FeatureTypes": "

A list of the types of analysis to perform. Add TABLES to the list to return information about the tables that are detected in the input document. Add FORMS to return detected form data. Add SIGNATURES to return the locations of detected signatures. To perform both forms and table analysis, add TABLES and FORMS to FeatureTypes. To detect signatures within form data and table data, add SIGNATURES to either TABLES or FORMS. All lines and words detected in the document are included in the response (including text that isn't related to the value of FeatureTypes).

", - "StartDocumentAnalysisRequest$FeatureTypes": "

A list of the types of analysis to perform. Add TABLES to the list to return information about the tables that are detected in the input document. Add FORMS to return detected form data. To perform both types of analysis, add TABLES and FORMS to FeatureTypes. All lines and words detected in the document are included in the response (including text that isn't related to the value of FeatureTypes).

" + "AdapterOverview$FeatureTypes": "

The feature types that the adapter is operating on.

", + "AdapterVersionOverview$FeatureTypes": "

The feature types that the adapter version is operating on.

", + "AnalyzeDocumentRequest$FeatureTypes": "

A list of the types of analysis to perform. Add TABLES to the list to return information about the tables that are detected in the input document. Add FORMS to return detected form data. Add SIGNATURES to return the locations of detected signatures. Add LAYOUT to the list to return information about the layout of the document. All lines and words detected in the document are included in the response (including text that isn't related to the value of FeatureTypes).

", + "CreateAdapterRequest$FeatureTypes": "

The type of feature that the adapter is being trained on. Currrenly, supported feature types are: QUERIES

", + "GetAdapterResponse$FeatureTypes": "

List of the targeted feature types for the requested adapter.

", + "GetAdapterVersionResponse$FeatureTypes": "

List of the targeted feature types for the requested adapter version.

", + "StartDocumentAnalysisRequest$FeatureTypes": "

A list of the types of analysis to perform. Add TABLES to the list to return information about the tables that are detected in the input document. Add FORMS to return detected form data. To perform both types of analysis, add TABLES and FORMS to FeatureTypes. All lines and words detected in the document are included in the response (including text that isn't related to the value of FeatureTypes).

", + "UpdateAdapterResponse$FeatureTypes": "

List of the targeted feature types for the updated adapter.

" } }, "Float": { @@ -299,6 +541,9 @@ "BoundingBox$Height": "

The height of the bounding box as a ratio of the overall document page height.

", "BoundingBox$Left": "

The left coordinate of the bounding box as a ratio of overall document page width.

", "BoundingBox$Top": "

The top coordinate of the bounding box as a ratio of overall document page height.

", + "EvaluationMetric$F1Score": "

The F1 score for an adapter version.

", + "EvaluationMetric$Precision": "

The Precision score for an adapter version.

", + "EvaluationMetric$Recall": "

The Recall score for an adapter version.

", "Point$X": "

The value of the X coordinate for a point on a Polygon.

", "Point$Y": "

The value of the Y coordinate for a point on a Polygon.

" } @@ -318,6 +563,26 @@ "SignatureDetection$Geometry": null } }, + "GetAdapterRequest": { + "base": null, + "refs": { + } + }, + "GetAdapterResponse": { + "base": null, + "refs": { + } + }, + "GetAdapterVersionRequest": { + "base": null, + "refs": { + } + }, + "GetAdapterVersionResponse": { + "base": null, + "refs": { + } + }, "GetDocumentAnalysisRequest": { "base": null, "refs": { @@ -524,6 +789,8 @@ "KMSKeyId": { "base": null, "refs": { + "CreateAdapterVersionRequest$KMSKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). Used to encrypt your documents.

", + "GetAdapterVersionResponse$KMSKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). Used to encrypt your documents.

", "StartDocumentAnalysisRequest$KMSKeyId": "

The KMS key used to encrypt the inference results. This can be in either Key ID or Key Alias format. When a KMS key is provided, the KMS key will be used for server-side encryption of the objects in the customer bucket. When this parameter is not enabled, the result will be encrypted server side,using SSE-S3.

", "StartDocumentTextDetectionRequest$KMSKeyId": "

The KMS key used to encrypt the inference results. This can be in either Key ID or Key Alias format. When a KMS key is provided, the KMS key will be used for server-side encryption of the objects in the customer bucket. When this parameter is not enabled, the result will be encrypted server side,using SSE-S3.

", "StartExpenseAnalysisRequest$KMSKeyId": "

The KMS key used to encrypt the inference results. This can be in either Key ID or Key Alias format. When a KMS key is provided, the KMS key will be used for server-side encryption of the objects in the customer bucket. When this parameter is not enabled, the result will be encrypted server side,using SSE-S3.

", @@ -608,13 +875,45 @@ "LineItemGroup$LineItems": "

The breakdown of information on a particular line of a table.

" } }, + "ListAdapterVersionsRequest": { + "base": null, + "refs": { + } + }, + "ListAdapterVersionsResponse": { + "base": null, + "refs": { + } + }, + "ListAdaptersRequest": { + "base": null, + "refs": { + } + }, + "ListAdaptersResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, "MaxResults": { "base": null, "refs": { "GetDocumentAnalysisRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value that you can specify is 1,000. If you specify a value greater than 1,000, a maximum of 1,000 results is returned. The default value is 1,000.

", "GetDocumentTextDetectionRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value you can specify is 1,000. If you specify a value greater than 1,000, a maximum of 1,000 results is returned. The default value is 1,000.

", "GetExpenseAnalysisRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value you can specify is 20. If you specify a value greater than 20, a maximum of 20 results is returned. The default value is 20.

", - "GetLendingAnalysisRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value that you can specify is 30. If you specify a value greater than 30, a maximum of 30 results is returned. The default value is 30.

" + "GetLendingAnalysisRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value that you can specify is 30. If you specify a value greater than 30, a maximum of 30 results is returned. The default value is 30.

", + "ListAdapterVersionsRequest$MaxResults": "

The maximum number of results to return when listing adapter versions.

", + "ListAdaptersRequest$MaxResults": "

The maximum number of results to return when listing adapters.

" } }, "NonEmptyString": { @@ -645,6 +944,8 @@ "OutputConfig": { "base": "

Sets whether or not your output will go to a user created bucket. Used to set the name of the bucket, and the prefix on the output file.

OutputConfig is an optional parameter which lets you adjust where your output will be placed. By default, Amazon Textract will store the results internally and can only be accessed by the Get API operations. With OutputConfig enabled, you can set the name of the bucket the output will be sent to the file prefix of the results where you can download your results. Additionally, you can set the KMSKeyID parameter to a customer master key (CMK) to encrypt your output. Without this parameter set Amazon Textract will encrypt server-side using the AWS managed CMK for Amazon S3.

Decryption of Customer Content is necessary for processing of the documents by Amazon Textract. If your account is opted out under an AI services opt out policy then all unencrypted Customer Content is immediately and permanently deleted after the Customer Content has been processed by the service. No copy of of the output is retained by Amazon Textract. For information about how to opt out, see Managing AI services opt-out policy.

For more information on data privacy, see the Data Privacy FAQ.

", "refs": { + "CreateAdapterVersionRequest$OutputConfig": null, + "GetAdapterVersionResponse$OutputConfig": null, "StartDocumentAnalysisRequest$OutputConfig": "

Sets if the output will go to a customer defined bucket. By default, Amazon Textract will save the results internally to be accessed by the GetDocumentAnalysis operation.

", "StartDocumentTextDetectionRequest$OutputConfig": "

Sets if the output will go to a customer defined bucket. By default Amazon Textract will save the results internally to be accessed with the GetDocumentTextDetection operation.

", "StartExpenseAnalysisRequest$OutputConfig": "

Sets if the output will go to a customer defined bucket. By default, Amazon Textract will save the results internally to be accessed by the GetExpenseAnalysis operation.

", @@ -679,7 +980,11 @@ "GetExpenseAnalysisRequest$NextToken": "

If the previous response was incomplete (because there are more blocks to retrieve), Amazon Textract returns a pagination token in the response. You can use this pagination token to retrieve the next set of blocks.

", "GetExpenseAnalysisResponse$NextToken": "

If the response is truncated, Amazon Textract returns this token. You can use this token in the subsequent request to retrieve the next set of text-detection results.

", "GetLendingAnalysisRequest$NextToken": "

If the previous response was incomplete, Amazon Textract returns a pagination token in the response. You can use this pagination token to retrieve the next set of lending results.

", - "GetLendingAnalysisResponse$NextToken": "

If the response is truncated, Amazon Textract returns this token. You can use this token in the subsequent request to retrieve the next set of lending results.

" + "GetLendingAnalysisResponse$NextToken": "

If the response is truncated, Amazon Textract returns this token. You can use this token in the subsequent request to retrieve the next set of lending results.

", + "ListAdapterVersionsRequest$NextToken": "

Identifies the next page of results to return when listing adapter versions.

", + "ListAdapterVersionsResponse$NextToken": "

Identifies the next page of results to return when listing adapter versions.

", + "ListAdaptersRequest$NextToken": "

Identifies the next page of results to return when listing adapters.

", + "ListAdaptersResponse$NextToken": "

Identifies the next page of results to return when listing adapters.

" } }, "Percent": { @@ -782,6 +1087,11 @@ "Relationship$Type": "

The type of relationship between the blocks in the IDs array and the current block. The following list describes the relationship types that can be returned.

  • VALUE - A list that contains the ID of the VALUE block that's associated with the KEY of a key-value pair.

  • CHILD - A list of IDs that identify blocks found within the current block object. For example, WORD blocks have a CHILD relationship to the LINE block type.

  • MERGED_CELL - A list of IDs that identify each of the MERGED_CELL block types in a table.

  • ANSWER - A list that contains the ID of the QUERY_RESULT block that’s associated with the corresponding QUERY block.

  • TABLE - A list of IDs that identify associated TABLE block types.

  • TABLE_TITLE - A list that contains the ID for the TABLE_TITLE block type in a table.

  • TABLE_FOOTER - A list of IDs that identify the TABLE_FOOTER block types in a table.

" } }, + "ResourceNotFoundException": { + "base": "

Returned when an operation tried to access a nonexistent resource.

", + "refs": { + } + }, "RoleArn": { "base": null, "refs": { @@ -798,6 +1108,7 @@ "S3Object": { "base": "

The S3 bucket name and file name that identifies the document.

The AWS Region for the S3 bucket that contains the document must match the Region that you use for Amazon Textract operations.

For Amazon Textract to process a file in an S3 bucket, the user must have permission to access the S3 bucket and file.

", "refs": { + "AdapterVersionDatasetConfig$ManifestS3Object": null, "Document$S3Object": "

Identifies an S3 object as the document source. The maximum size of a document that's stored in an S3 bucket is 5 MB.

", "DocumentLocation$S3Object": "

The Amazon S3 bucket that contains the input document.

" } @@ -828,6 +1139,11 @@ "LendingDetection$SelectionStatus": "

The selection status of a selection element, such as an option button or check box.

" } }, + "ServiceQuotaExceededException": { + "base": "

Returned when a request cannot be completed as it would exceed a maximum service quota.

", + "refs": { + } + }, "SignatureDetection": { "base": "

Information regarding a detected signature on a page.

", "refs": { @@ -934,6 +1250,46 @@ "ExpenseGroupProperty$Types": "

Informs you on whether the expense group is a name or an address.

" } }, + "TagKey": { + "base": null, + "refs": { + "TagKeyList$member": null, + "TagMap$key": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$TagKeys": "

Specifies the tags to be removed from the resource specified by the ResourceARN.

" + } + }, + "TagMap": { + "base": null, + "refs": { + "CreateAdapterRequest$Tags": "

A list of tags to be added to the adapter.

", + "CreateAdapterVersionRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the adapter version.

", + "GetAdapterResponse$Tags": "

A set of tags (key-value pairs) associated with the adapter that has been retrieved.

", + "GetAdapterVersionResponse$Tags": "

A set of tags (key-value pairs) that are associated with the adapter version.

", + "ListTagsForResourceResponse$Tags": "

A set of tags (key-value pairs) that are part of the requested resource.

", + "TagResourceRequest$Tags": "

A set of tags (key-value pairs) that you want to assign to the resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "TagMap$value": null + } + }, "TextType": { "base": null, "refs": { @@ -952,7 +1308,7 @@ "Block$ColumnIndex": "

The column in which a table cell appears. The first column position is 1. ColumnIndex isn't returned by DetectDocumentText and GetDocumentTextDetection.

", "Block$RowSpan": "

The number of rows that a table cell spans. RowSpan isn't returned by DetectDocumentText and GetDocumentTextDetection.

", "Block$ColumnSpan": "

The number of columns that a table cell spans. ColumnSpan isn't returned by DetectDocumentText and GetDocumentTextDetection.

", - "Block$Page": "

The page on which a block was detected. Page is returned by synchronous and asynchronous operations. Page values greater than 1 are only returned for multipage documents that are in PDF or TIFF format. A scanned image (JPEG/PNG) provided to an asynchronous operation, even if it contains multiple document pages, is considered a single-page document. This means that for scanned images the value of Page is always 1. Synchronous operations will also return a Page value of 1 because every input document is considered to be a single-page document.

", + "Block$Page": "

The page on which a block was detected. Page is returned by synchronous and asynchronous operations. Page values greater than 1 are only returned for multipage documents that are in PDF or TIFF format. A scanned image (JPEG/PNG) provided to an asynchronous operation, even if it contains multiple document pages, is considered a single-page document. This means that for scanned images the value of Page is always 1.

", "DetectedSignature$Page": "

The page a detected signature was found on.

", "DocumentMetadata$Pages": "

The number of pages that are detected in the document.

", "ExpenseDocument$ExpenseIndex": "

Denotes which invoice or receipt in the document the information is coming from. First document will be 1, the second 2, and so on.

", @@ -989,6 +1345,31 @@ "refs": { } }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateAdapterRequest": { + "base": null, + "refs": { + } + }, + "UpdateAdapterResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

Indicates that a request was not valid. Check request for proper formatting.

", + "refs": { + } + }, "ValueType": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://textract-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://textract-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://textract-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://textract-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://textract.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://textract.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://textract.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://textract.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -391,6 +391,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -404,6 +415,17 @@ } }, { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -417,6 +439,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { @@ -430,6 +463,17 @@ } }, { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { @@ -492,6 +536,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/textract/2018-06-27/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/textract/2018-06-27/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,4 +1,16 @@ { "pagination": { + "ListAdapterVersions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "AdapterVersions" + }, + "ListAdapters": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Adapters" + } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -130,6 +130,19 @@ {"shape":"InternalFailureException"} ] }, + "DeleteMedicalScribeJob":{ + "name":"DeleteMedicalScribeJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteMedicalScribeJobRequest"}, + "errors":[ + {"shape":"LimitExceededException"}, + {"shape":"BadRequestException"}, + {"shape":"InternalFailureException"} + ] + }, "DeleteMedicalTranscriptionJob":{ "name":"DeleteMedicalTranscriptionJob", "http":{ @@ -243,6 +256,21 @@ {"shape":"NotFoundException"} ] }, + "GetMedicalScribeJob":{ + "name":"GetMedicalScribeJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetMedicalScribeJobRequest"}, + "output":{"shape":"GetMedicalScribeJobResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"}, + {"shape":"NotFoundException"} + ] + }, "GetMedicalTranscriptionJob":{ "name":"GetMedicalTranscriptionJob", "http":{ @@ -360,6 +388,20 @@ {"shape":"InternalFailureException"} ] }, + "ListMedicalScribeJobs":{ + "name":"ListMedicalScribeJobs", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListMedicalScribeJobsRequest"}, + "output":{"shape":"ListMedicalScribeJobsResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"} + ] + }, "ListMedicalTranscriptionJobs":{ "name":"ListMedicalTranscriptionJobs", "http":{ @@ -460,6 +502,21 @@ {"shape":"ConflictException"} ] }, + "StartMedicalScribeJob":{ + "name":"StartMedicalScribeJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartMedicalScribeJobRequest"}, + "output":{"shape":"StartMedicalScribeJobResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"}, + {"shape":"ConflictException"} + ] + }, "StartMedicalTranscriptionJob":{ "name":"StartMedicalTranscriptionJob", "http":{ @@ -658,7 +715,8 @@ "LanguageModelName":{"shape":"ModelName"}, "ContentRedaction":{"shape":"ContentRedaction"}, "LanguageOptions":{"shape":"LanguageOptions"}, - "LanguageIdSettings":{"shape":"LanguageIdSettingsMap"} + "LanguageIdSettings":{"shape":"LanguageIdSettingsMap"}, + "Summarization":{"shape":"Summarization"} } }, "CallAnalyticsJobStatus":{ @@ -897,6 +955,13 @@ "ModelName":{"shape":"ModelName"} } }, + "DeleteMedicalScribeJobRequest":{ + "type":"structure", + "required":["MedicalScribeJobName"], + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"} + } + }, "DeleteMedicalTranscriptionJobRequest":{ "type":"structure", "required":["MedicalTranscriptionJobName"], @@ -973,6 +1038,19 @@ "CallAnalyticsJob":{"shape":"CallAnalyticsJob"} } }, + "GetMedicalScribeJobRequest":{ + "type":"structure", + "required":["MedicalScribeJobName"], + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"} + } + }, + "GetMedicalScribeJobResponse":{ + "type":"structure", + "members":{ + "MedicalScribeJob":{"shape":"MedicalScribeJob"} + } + }, "GetMedicalTranscriptionJobRequest":{ "type":"structure", "required":["MedicalTranscriptionJobName"], @@ -1150,7 +1228,71 @@ "en-ZA", "en-NZ", "vi-VN", - "sv-SE" + "sv-SE", + "ab-GE", + "ast-ES", + "az-AZ", + "ba-RU", + "be-BY", + "bg-BG", + "bn-IN", + "bs-BA", + "ca-ES", + "ckb-IQ", + "ckb-IR", + "cs-CZ", + "cy-WL", + "el-GR", + "et-ET", + "eu-ES", + "fi-FI", + "gl-ES", + "gu-IN", + "ha-NG", + "hr-HR", + "hu-HU", + "hy-AM", + "is-IS", + "ka-GE", + "kab-DZ", + "kk-KZ", + "kn-IN", + "ky-KG", + "lg-IN", + "lt-LT", + "lv-LV", + "mhr-RU", + "mi-NZ", + "mk-MK", + "ml-IN", + "mn-MN", + "mr-IN", + "mt-MT", + "no-NO", + "or-IN", + "pa-IN", + "pl-PL", + "ps-AF", + "ro-RO", + "rw-RW", + "si-LK", + "sk-SK", + "sl-SI", + "so-SO", + "sr-RS", + "su-ID", + "sw-BI", + "sw-KE", + "sw-RW", + "sw-TZ", + "sw-UG", + "tl-PH", + "tt-RU", + "ug-CN", + "uk-UA", + "uz-UZ", + "wo-SN", + "zu-ZA" ] }, "LanguageCodeItem":{ @@ -1252,6 +1394,23 @@ "Models":{"shape":"Models"} } }, + "ListMedicalScribeJobsRequest":{ + "type":"structure", + "members":{ + "Status":{"shape":"MedicalScribeJobStatus"}, + "JobNameContains":{"shape":"TranscriptionJobName"}, + "NextToken":{"shape":"NextToken"}, + "MaxResults":{"shape":"MaxResults"} + } + }, + "ListMedicalScribeJobsResponse":{ + "type":"structure", + "members":{ + "Status":{"shape":"MedicalScribeJobStatus"}, + "NextToken":{"shape":"NextToken"}, + "MedicalScribeJobSummaries":{"shape":"MedicalScribeJobSummaries"} + } + }, "ListMedicalTranscriptionJobsRequest":{ "type":"structure", "members":{ @@ -1380,7 +1539,8 @@ "flac", "ogg", "amr", - "webm" + "webm", + "m4a" ] }, "MediaSampleRateHertz":{ @@ -1397,6 +1557,104 @@ "max":48000, "min":16000 }, + "MedicalScribeChannelDefinition":{ + "type":"structure", + "required":[ + "ChannelId", + "ParticipantRole" + ], + "members":{ + "ChannelId":{"shape":"MedicalScribeChannelId"}, + "ParticipantRole":{"shape":"MedicalScribeParticipantRole"} + } + }, + "MedicalScribeChannelDefinitions":{ + "type":"list", + "member":{"shape":"MedicalScribeChannelDefinition"}, + "max":2, + "min":2 + }, + "MedicalScribeChannelId":{ + "type":"integer", + "max":1, + "min":0 + }, + "MedicalScribeJob":{ + "type":"structure", + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"}, + "MedicalScribeJobStatus":{"shape":"MedicalScribeJobStatus"}, + "LanguageCode":{"shape":"MedicalScribeLanguageCode"}, + "Media":{"shape":"Media"}, + "MedicalScribeOutput":{"shape":"MedicalScribeOutput"}, + "StartTime":{"shape":"DateTime"}, + "CreationTime":{"shape":"DateTime"}, + "CompletionTime":{"shape":"DateTime"}, + "FailureReason":{"shape":"FailureReason"}, + "Settings":{"shape":"MedicalScribeSettings"}, + "DataAccessRoleArn":{"shape":"DataAccessRoleArn"}, + "ChannelDefinitions":{"shape":"MedicalScribeChannelDefinitions"}, + "Tags":{"shape":"TagList"} + } + }, + "MedicalScribeJobStatus":{ + "type":"string", + "enum":[ + "QUEUED", + "IN_PROGRESS", + "FAILED", + "COMPLETED" + ] + }, + "MedicalScribeJobSummaries":{ + "type":"list", + "member":{"shape":"MedicalScribeJobSummary"} + }, + "MedicalScribeJobSummary":{ + "type":"structure", + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"}, + "CreationTime":{"shape":"DateTime"}, + "StartTime":{"shape":"DateTime"}, + "CompletionTime":{"shape":"DateTime"}, + "LanguageCode":{"shape":"MedicalScribeLanguageCode"}, + "MedicalScribeJobStatus":{"shape":"MedicalScribeJobStatus"}, + "FailureReason":{"shape":"FailureReason"} + } + }, + "MedicalScribeLanguageCode":{ + "type":"string", + "enum":["en-US"] + }, + "MedicalScribeOutput":{ + "type":"structure", + "required":[ + "TranscriptFileUri", + "ClinicalDocumentUri" + ], + "members":{ + "TranscriptFileUri":{"shape":"Uri"}, + "ClinicalDocumentUri":{"shape":"Uri"} + } + }, + "MedicalScribeParticipantRole":{ + "type":"string", + "enum":[ + "PATIENT", + "CLINICIAN" + ] + }, + "MedicalScribeSettings":{ + "type":"structure", + "members":{ + "ShowSpeakerLabels":{"shape":"Boolean"}, + "MaxSpeakerLabels":{"shape":"MaxSpeakers"}, + "ChannelIdentification":{"shape":"Boolean"}, + "VocabularyName":{"shape":"VocabularyName"}, + "VocabularyFilterName":{"shape":"VocabularyFilterName"}, + "VocabularyFilterMethod":{"shape":"VocabularyFilterMethod"} + } + }, "MedicalTranscript":{ "type":"structure", "members":{ @@ -1670,6 +1928,33 @@ "CallAnalyticsJob":{"shape":"CallAnalyticsJob"} } }, + "StartMedicalScribeJobRequest":{ + "type":"structure", + "required":[ + "MedicalScribeJobName", + "Media", + "OutputBucketName", + "DataAccessRoleArn", + "Settings" + ], + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"}, + "Media":{"shape":"Media"}, + "OutputBucketName":{"shape":"OutputBucketName"}, + "OutputEncryptionKMSKeyId":{"shape":"KMSKeyId"}, + "KMSEncryptionContext":{"shape":"KMSEncryptionContextMap"}, + "DataAccessRoleArn":{"shape":"DataAccessRoleArn"}, + "Settings":{"shape":"MedicalScribeSettings"}, + "ChannelDefinitions":{"shape":"MedicalScribeChannelDefinitions"}, + "Tags":{"shape":"TagList"} + } + }, + "StartMedicalScribeJobResponse":{ + "type":"structure", + "members":{ + "MedicalScribeJob":{"shape":"MedicalScribeJob"} + } + }, "StartMedicalTranscriptionJobRequest":{ "type":"structure", "required":[ @@ -1779,6 +2064,13 @@ "OutputStartIndex":{"shape":"SubtitleOutputStartIndex"} } }, + "Summarization":{ + "type":"structure", + "required":["GenerateAbstractiveSummary"], + "members":{ + "GenerateAbstractiveSummary":{"shape":"Boolean"} + } + }, "Tag":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -10,6 +10,7 @@ "DeleteCallAnalyticsCategory": "

Deletes a Call Analytics category. To use this operation, specify the name of the category you want to delete using CategoryName. Category names are case sensitive.

", "DeleteCallAnalyticsJob": "

Deletes a Call Analytics job. To use this operation, specify the name of the job you want to delete using CallAnalyticsJobName. Job names are case sensitive.

", "DeleteLanguageModel": "

Deletes a custom language model. To use this operation, specify the name of the language model you want to delete using ModelName. custom language model names are case sensitive.

", + "DeleteMedicalScribeJob": "

Deletes a Medical Scribe job. To use this operation, specify the name of the job you want to delete using MedicalScribeJobName. Job names are case sensitive.

", "DeleteMedicalTranscriptionJob": "

Deletes a medical transcription job. To use this operation, specify the name of the job you want to delete using MedicalTranscriptionJobName. Job names are case sensitive.

", "DeleteMedicalVocabulary": "

Deletes a custom medical vocabulary. To use this operation, specify the name of the custom vocabulary you want to delete using VocabularyName. Custom vocabulary names are case sensitive.

", "DeleteTranscriptionJob": "

Deletes a transcription job. To use this operation, specify the name of the job you want to delete using TranscriptionJobName. Job names are case sensitive.

", @@ -18,6 +19,7 @@ "DescribeLanguageModel": "

Provides information about the specified custom language model.

This operation also shows if the base language model that you used to create your custom language model has been updated. If Amazon Transcribe has updated the base model, you can create a new custom language model using the updated base model.

If you tried to create a new custom language model and the request wasn't successful, you can use DescribeLanguageModel to help identify the reason for this failure.

", "GetCallAnalyticsCategory": "

Provides information about the specified Call Analytics category.

To get a list of your Call Analytics categories, use the operation.

", "GetCallAnalyticsJob": "

Provides information about the specified Call Analytics job.

To view the job's status, refer to CallAnalyticsJobStatus. If the status is COMPLETED, the job is finished. You can find your completed transcript at the URI specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

If you enabled personally identifiable information (PII) redaction, the redacted transcript appears at the location specified in RedactedTranscriptFileUri.

If you chose to redact the audio in your media file, you can find your redacted media file at the location specified in RedactedMediaFileUri.

To get a list of your Call Analytics jobs, use the operation.

", + "GetMedicalScribeJob": "

Provides information about the specified Medical Scribe job.

To view the status of the specified medical transcription job, check the MedicalScribeJobStatus field. If the status is COMPLETED, the job is finished. You can find the results at the location specified in MedicalScribeOutput. If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

To get a list of your Medical Scribe jobs, use the operation.

", "GetMedicalTranscriptionJob": "

Provides information about the specified medical transcription job.

To view the status of the specified medical transcription job, check the TranscriptionJobStatus field. If the status is COMPLETED, the job is finished. You can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

To get a list of your medical transcription jobs, use the operation.

", "GetMedicalVocabulary": "

Provides information about the specified custom medical vocabulary.

To view the status of the specified custom medical vocabulary, check the VocabularyState field. If the status is READY, your custom vocabulary is available to use. If the status is FAILED, FailureReason provides details on why your vocabulary failed.

To get a list of your custom medical vocabularies, use the operation.

", "GetTranscriptionJob": "

Provides information about the specified transcription job.

To view the status of the specified transcription job, check the TranscriptionJobStatus field. If the status is COMPLETED, the job is finished. You can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

If you enabled content redaction, the redacted transcript can be found at the location specified in RedactedTranscriptFileUri.

To get a list of your transcription jobs, use the operation.

", @@ -26,6 +28,7 @@ "ListCallAnalyticsCategories": "

Provides a list of Call Analytics categories, including all rules that make up each category.

To get detailed information about a specific Call Analytics category, use the operation.

", "ListCallAnalyticsJobs": "

Provides a list of Call Analytics jobs that match the specified criteria. If no criteria are specified, all Call Analytics jobs are returned.

To get detailed information about a specific Call Analytics job, use the operation.

", "ListLanguageModels": "

Provides a list of custom language models that match the specified criteria. If no criteria are specified, all custom language models are returned.

To get detailed information about a specific custom language model, use the operation.

", + "ListMedicalScribeJobs": "

Provides a list of Medical Scribe jobs that match the specified criteria. If no criteria are specified, all Medical Scribe jobs are returned.

To get detailed information about a specific Medical Scribe job, use the operation.

", "ListMedicalTranscriptionJobs": "

Provides a list of medical transcription jobs that match the specified criteria. If no criteria are specified, all medical transcription jobs are returned.

To get detailed information about a specific medical transcription job, use the operation.

", "ListMedicalVocabularies": "

Provides a list of custom medical vocabularies that match the specified criteria. If no criteria are specified, all custom medical vocabularies are returned.

To get detailed information about a specific custom medical vocabulary, use the operation.

", "ListTagsForResource": "

Lists all tags associated with the specified transcription job, vocabulary, model, or resource.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", @@ -33,8 +36,9 @@ "ListVocabularies": "

Provides a list of custom vocabularies that match the specified criteria. If no criteria are specified, all custom vocabularies are returned.

To get detailed information about a specific custom vocabulary, use the operation.

", "ListVocabularyFilters": "

Provides a list of custom vocabulary filters that match the specified criteria. If no criteria are specified, all custom vocabularies are returned.

To get detailed information about a specific custom vocabulary filter, use the operation.

", "StartCallAnalyticsJob": "

Transcribes the audio from a customer service call and applies any additional Request Parameters you choose to include in your request.

In addition to many standard transcription features, Call Analytics provides you with call characteristics, call summarization, speaker sentiment, and optional redaction of your text transcript and your audio file. You can also apply custom categories to flag specified conditions. To learn more about these features and insights, refer to Analyzing call center audio with Call Analytics.

If you want to apply categories to your Call Analytics job, you must create them before submitting your job request. Categories cannot be retroactively applied to a job. To create a new category, use the operation. To learn more about Call Analytics categories, see Creating categories for post-call transcriptions and Creating categories for real-time transcriptions.

To make a StartCallAnalyticsJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

Note that job queuing is enabled by default for Call Analytics jobs.

You must include the following parameters in your StartCallAnalyticsJob request:

  • region: The Amazon Web Services Region where you are making your request. For a list of Amazon Web Services Regions supported with Amazon Transcribe, refer to Amazon Transcribe endpoints and quotas.

  • CallAnalyticsJobName: A custom name that you create for your transcription job that's unique within your Amazon Web Services account.

  • DataAccessRoleArn: The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files.

  • Media (MediaFileUri or RedactedMediaFileUri): The Amazon S3 location of your media file.

With Call Analytics, you can redact the audio contained in your media file by including RedactedMediaFileUri, instead of MediaFileUri, to specify the location of your input audio. If you choose to redact your audio, you can find your redacted media at the location specified in the RedactedMediaFileUri field of your response.

", - "StartMedicalTranscriptionJob": "

Transcribes the audio from a medical dictation or conversation and applies any additional Request Parameters you choose to include in your request.

In addition to many standard transcription features, Amazon Transcribe Medical provides you with a robust medical vocabulary and, optionally, content identification, which adds flags to personal health information (PHI). To learn more about these features, refer to How Amazon Transcribe Medical works.

To make a StartMedicalTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the S3 location of the file using the Media parameter.

You must include the following parameters in your StartMedicalTranscriptionJob request:

  • region: The Amazon Web Services Region where you are making your request. For a list of Amazon Web Services Regions supported with Amazon Transcribe, refer to Amazon Transcribe endpoints and quotas.

  • MedicalTranscriptionJobName: A custom name you create for your transcription job that is unique within your Amazon Web Services account.

  • Media (MediaFileUri): The Amazon S3 location of your media file.

  • LanguageCode: This must be en-US.

  • OutputBucketName: The Amazon S3 bucket where you want your transcript stored. If you want your output stored in a sub-folder of this bucket, you must also include OutputKey.

  • Specialty: This must be PRIMARYCARE.

  • Type: Choose whether your audio is a conversation or a dictation.

", - "StartTranscriptionJob": "

Transcribes the audio from a media file and applies any additional Request Parameters you choose to include in your request.

To make a StartTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartTranscriptionJob request:

  • region: The Amazon Web Services Region where you are making your request. For a list of Amazon Web Services Regions supported with Amazon Transcribe, refer to Amazon Transcribe endpoints and quotas.

  • TranscriptionJobName: A custom name you create for your transcription job that is unique within your Amazon Web Services account.

  • Media (MediaFileUri): The Amazon S3 location of your media file.

  • One of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages: If you know the language of your media file, specify it using the LanguageCode parameter; you can find all valid language codes in the Supported languages table. If you don't know the languages spoken in your media, use either IdentifyLanguage or IdentifyMultipleLanguages and let Amazon Transcribe identify the languages for you.

", + "StartMedicalScribeJob": "

Transcribes patient-clinician conversations and generates clinical notes.

Amazon Web Services HealthScribe automatically provides rich conversation transcripts, identifies speaker roles, classifies dialogues, extracts medical terms, and generates preliminary clinical notes. To learn more about these features, refer to Amazon Web Services HealthScribe.

To make a StartMedicalScribeJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartMedicalTranscriptionJob request:

  • DataAccessRoleArn: The ARN of an IAM role with the these minimum permissions: read permission on input file Amazon S3 bucket specified in Media, write permission on the Amazon S3 bucket specified in OutputBucketName, and full permissions on the KMS key specified in OutputEncryptionKMSKeyId (if set). The role should also allow transcribe.amazonaws.com to assume it.

  • Media (MediaFileUri): The Amazon S3 location of your media file.

  • MedicalScribeJobName: A custom name you create for your MedicalScribe job that is unique within your Amazon Web Services account.

  • OutputBucketName: The Amazon S3 bucket where you want your output files stored.

  • Settings: A MedicalScribeSettings obect that must set exactly one of ShowSpeakerLabels or ChannelIdentification to true. If ShowSpeakerLabels is true, MaxSpeakerLabels must also be set.

  • ChannelDefinitions: A MedicalScribeChannelDefinitions array should be set if and only if the ChannelIdentification value of Settings is set to true.

", + "StartMedicalTranscriptionJob": "

Transcribes the audio from a medical dictation or conversation and applies any additional Request Parameters you choose to include in your request.

In addition to many standard transcription features, Amazon Transcribe Medical provides you with a robust medical vocabulary and, optionally, content identification, which adds flags to personal health information (PHI). To learn more about these features, refer to How Amazon Transcribe Medical works.

To make a StartMedicalTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartMedicalTranscriptionJob request:

  • region: The Amazon Web Services Region where you are making your request. For a list of Amazon Web Services Regions supported with Amazon Transcribe, refer to Amazon Transcribe endpoints and quotas.

  • MedicalTranscriptionJobName: A custom name you create for your transcription job that is unique within your Amazon Web Services account.

  • Media (MediaFileUri): The Amazon S3 location of your media file.

  • LanguageCode: This must be en-US.

  • OutputBucketName: The Amazon S3 bucket where you want your transcript stored. If you want your output stored in a sub-folder of this bucket, you must also include OutputKey.

  • Specialty: This must be PRIMARYCARE.

  • Type: Choose whether your audio is a conversation or a dictation.

", + "StartTranscriptionJob": "

Transcribes the audio from a media file and applies any additional Request Parameters you choose to include in your request.

To make a StartTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartTranscriptionJob request:

  • region: The Amazon Web Services Region where you are making your request. For a list of Amazon Web Services Regions supported with Amazon Transcribe, refer to Amazon Transcribe endpoints and quotas.

  • TranscriptionJobName: A custom name you create for your transcription job that is unique within your Amazon Web Services account.

  • Media (MediaFileUri): The Amazon S3 location of your media file.

  • One of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages: If you know the language of your media file, specify it using the LanguageCode parameter; you can find all valid language codes in the Supported languages table. If you do not know the languages spoken in your media, use either IdentifyLanguage or IdentifyMultipleLanguages and let Amazon Transcribe identify the languages for you.

", "TagResource": "

Adds one or more custom tags, each in the form of a key:value pair, to the specified resource.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "UntagResource": "

Removes the specified tags from the specified Amazon Transcribe resource.

If you include UntagResource in your request, you must also include ResourceArn and TagKeys.

", "UpdateCallAnalyticsCategory": "

Updates the specified Call Analytics category with new rules. Note that the UpdateCallAnalyticsCategory operation overwrites all existing rules contained in the specified category. You cannot append additional rules onto an existing category.

To create a new category, see .

", @@ -71,16 +75,19 @@ "InterruptionFilter$Negate": "

Set to TRUE to flag speech that does not contain interruptions. Set to FALSE to flag speech that contains interruptions.

", "JobExecutionSettings$AllowDeferredExecution": "

Makes it possible to enable job queuing when your concurrent request limit is exceeded. When AllowDeferredExecution is set to true, transcription job requests are placed in a queue until the number of jobs falls below the concurrent request limit. If AllowDeferredExecution is set to false and the number of transcription job requests exceed the concurrent request limit, you get a LimitExceededException error.

If you include AllowDeferredExecution in your request, you must also include DataAccessRoleArn.

", "LanguageModel$UpgradeAvailability": "

Shows if a more current base model is available for use with the specified custom language model.

If false, your custom language model is using the most up-to-date base model.

If true, there is a newer base model available than the one your language model is using.

Note that to update a base model, you must recreate the custom language model using the new base model. Base model upgrades for existing custom language models are not supported.

", - "MedicalTranscriptionSetting$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

You can't include ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Partitioning speakers (diarization).

", - "MedicalTranscriptionSetting$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript does not separate the speech by channel.

You can't include both ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Transcribing multi-channel audio.

", + "MedicalScribeSettings$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your Medical Scribe output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

For more information, see Partitioning speakers (diarization).

", + "MedicalScribeSettings$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

For more information, see Transcribing multi-channel audio.

", + "MedicalTranscriptionSetting$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

For more information, see Partitioning speakers (diarization).

", + "MedicalTranscriptionSetting$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript does not separate the speech by channel.

For more information, see Transcribing multi-channel audio.

", "MedicalTranscriptionSetting$ShowAlternatives": "

To include alternative transcriptions within your transcription output, include ShowAlternatives in your transcription request.

If you include ShowAlternatives, you must also include MaxAlternatives, which is the maximum number of alternative transcriptions you want Amazon Transcribe Medical to generate.

For more information, see Alternative transcriptions.

", "NonTalkTimeFilter$Negate": "

Set to TRUE to flag periods of speech. Set to FALSE to flag periods of silence

", "SentimentFilter$Negate": "

Set to TRUE to flag the sentiments that you didn't include in your request. Set to FALSE to flag the sentiments that you specified in your request.

", - "Settings$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

You can't include both ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Partitioning speakers (diarization).

", - "Settings$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

You can't include both ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Transcribing multi-channel audio.

", + "Settings$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

For more information, see Partitioning speakers (diarization).

", + "Settings$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

For more information, see Transcribing multi-channel audio.

", "Settings$ShowAlternatives": "

To include alternative transcriptions within your transcription output, include ShowAlternatives in your transcription request.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript does not separate the speech by channel.

If you include ShowAlternatives, you must also include MaxAlternatives, which is the maximum number of alternative transcriptions you want Amazon Transcribe to generate.

For more information, see Alternative transcriptions.

", "StartTranscriptionJobRequest$IdentifyLanguage": "

Enables automatic language identification in your transcription job request. Use this parameter if your media file contains only one language. If your media contains multiple languages, use IdentifyMultipleLanguages instead.

If you include IdentifyLanguage, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your media file. Including LanguageOptions restricts IdentifyLanguage to only the language options that you specify, which can improve transcription accuracy.

If you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter to your automatic language identification request, include LanguageIdSettings with the relevant sub-parameters (VocabularyName, LanguageModelName, and VocabularyFilterName). If you include LanguageIdSettings, also include LanguageOptions.

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", "StartTranscriptionJobRequest$IdentifyMultipleLanguages": "

Enables automatic multi-language identification in your transcription job request. Use this parameter if your media file contains more than one language. If your media contains only one language, use IdentifyLanguage instead.

If you include IdentifyMultipleLanguages, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your media file. Including LanguageOptions restricts IdentifyLanguage to only the language options that you specify, which can improve transcription accuracy.

If you want to apply a custom vocabulary or a custom vocabulary filter to your automatic language identification request, include LanguageIdSettings with the relevant sub-parameters (VocabularyName and VocabularyFilterName). If you include LanguageIdSettings, also include LanguageOptions.

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", + "Summarization$GenerateAbstractiveSummary": "

Enables Generative call summarization in your Call Analytics request

Generative call summarization provides a summary of the transcript including important components discussed in the conversation.

For more information, see Enabling generative call summarization.

", "TranscriptFilter$Negate": "

Set to TRUE to flag the absence of the phrase that you specified in your request. Set to FALSE to flag the presence of the phrase that you specified in your request.

", "TranscriptionJob$IdentifyLanguage": "

Indicates whether automatic language identification was enabled (TRUE) for the specified transcription job.

", "TranscriptionJob$IdentifyMultipleLanguages": "

Indicates whether automatic multi-language identification was enabled (TRUE) for the specified transcription job.

", @@ -93,7 +100,7 @@ "refs": { "CreateLanguageModelRequest$LanguageCode": "

The language code that represents the language of your model. Each custom language model must contain terms in only one language, and the language you select for your custom language model must match the language of your training and tuning data.

For a list of supported languages and their associated language codes, refer to the Supported languages table. Note that US English (en-US) is the only language supported with Amazon Transcribe Medical.

A custom language model can only be used to transcribe files in the same language as the model. For example, if you create a custom language model using US English (en-US), you can only apply this model to files that contain English audio.

", "CreateLanguageModelResponse$LanguageCode": "

The language code you selected for your custom language model.

", - "LanguageModel$LanguageCode": "

The language code used to create your custom language model. Each custom language model must contain terms in only one language, and the language you select for your custom language model must match the language of your training and tuning data.

For a list of supported languages and their associated language codes, refer to the Supported languages table. Note that U.S. English (en-US) is the only language supported with Amazon Transcribe Medical.

" + "LanguageModel$LanguageCode": "

The language code used to create your custom language model. Each custom language model must contain terms in only one language, and the language you select for your custom language model must match the language of your training and tuning data.

For a list of supported languages and their associated language codes, refer to the Supported languages table. Note that US English (en-US) is the only language supported with Amazon Transcribe Medical.

" } }, "CallAnalyticsJob": { @@ -126,7 +133,7 @@ "refs": { "CallAnalyticsJob$CallAnalyticsJobStatus": "

Provides the status of the specified Call Analytics job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.

", "CallAnalyticsJobSummary$CallAnalyticsJobStatus": "

Provides the status of your Call Analytics job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.

", - "ListCallAnalyticsJobsRequest$Status": "

Returns only Call Analytics jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you don't include Status, all Call Analytics jobs are returned.

", + "ListCallAnalyticsJobsRequest$Status": "

Returns only Call Analytics jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all Call Analytics jobs are returned.

", "ListCallAnalyticsJobsResponse$Status": "

Lists all Call Analytics jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

" } }, @@ -192,10 +199,10 @@ } }, "ContentRedaction": { - "base": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType.

", + "base": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact.

", "refs": { "CallAnalyticsJobSettings$ContentRedaction": null, - "StartTranscriptionJobRequest$ContentRedaction": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType.

", + "StartTranscriptionJobRequest$ContentRedaction": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.

", "TranscriptionJob$ContentRedaction": "

Indicates whether redaction was enabled in your transcript.

", "TranscriptionJobSummary$ContentRedaction": "

The content redaction settings of the transcription job.

" } @@ -258,7 +265,9 @@ "CreateVocabularyRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files (in this case, your custom vocabulary). If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "InputDataConfig$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "JobExecutionSettings$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin. For more information, see IAM ARNs.

Note that if you include DataAccessRoleArn in your request, you must also include AllowDeferredExecution.

", + "MedicalScribeJob$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files, write to the output bucket, and use your KMS key if supplied. If the role that you specify doesn’t have the appropriate permissions your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "StartCallAnalyticsJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", + "StartMedicalScribeJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files, write to the output bucket, and use your KMS key if supplied. If the role that you specify doesn’t have the appropriate permissions your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "UpdateVocabularyFilterRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files (in this case, your custom vocabulary filter). If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "UpdateVocabularyRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files (in this case, your custom vocabulary). If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

" } @@ -282,6 +291,12 @@ "GetVocabularyResponse$LastModifiedTime": "

The date and time the specified custom vocabulary was last modified.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents 12:32 PM UTC-7 on May 4, 2022.

", "LanguageModel$CreateTime": "

The date and time the specified custom language model was created.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents 12:32 PM UTC-7 on May 4, 2022.

", "LanguageModel$LastModifiedTime": "

The date and time the specified custom language model was last modified.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJob$StartTime": "

The date and time your Medical Scribe job began processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJob$CreationTime": "

The date and time the specified Medical Scribe job request was made.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJob$CompletionTime": "

The date and time the specified Medical Scribe job finished processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJobSummary$CreationTime": "

The date and time the specified Medical Scribe job request was made.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJobSummary$StartTime": "

The date and time your Medical Scribe job began processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJobSummary$CompletionTime": "

The date and time the specified Medical Scribe job finished processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished processing at 12:32 PM UTC-7 on May 4, 2022.

", "MedicalTranscriptionJob$StartTime": "

The date and time the specified medical transcription job began processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", "MedicalTranscriptionJob$CreationTime": "

The date and time the specified medical transcription job request was made.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", "MedicalTranscriptionJob$CompletionTime": "

The date and time the specified medical transcription job finished processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:33:13.922000-07:00 represents a transcription job that started processing at 12:33 PM UTC-7 on May 4, 2022.

", @@ -326,6 +341,11 @@ "refs": { } }, + "DeleteMedicalScribeJobRequest": { + "base": null, + "refs": { + } + }, "DeleteMedicalTranscriptionJobRequest": { "base": null, "refs": { @@ -371,16 +391,18 @@ "base": null, "refs": { "BadRequestException$Message": null, - "CallAnalyticsJob$FailureReason": "

If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job request failed.

The FailureReason field contains one of the following values:

  • Unsupported media format.

    The media format specified in MediaFormat isn't valid. Refer to MediaFormat for a list of supported formats.

  • The media format provided does not match the detected media format.

    The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.

  • Invalid sample rate for audio file.

    The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 8,000 and 48,000 hertz.

  • The sample rate provided does not match the detected sample rate.

    The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.

  • Invalid file size: file size too large.

    The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Guidelines and quotas.

  • Invalid number of channels: number of channels too large.

    Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Guidelines and quotas.

", + "CallAnalyticsJob$FailureReason": "

If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job request failed.

The FailureReason field contains one of the following values:

  • Unsupported media format.

    The media format specified in MediaFormat isn't valid. Refer to refer to the MediaFormat parameter for a list of supported formats.

  • The media format provided does not match the detected media format.

    The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.

  • Invalid sample rate for audio file.

    The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 8,000 and 48,000 hertz.

  • The sample rate provided does not match the detected sample rate.

    The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.

  • Invalid file size: file size too large.

    The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Service quotas.

  • Invalid number of channels: number of channels too large.

    Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Service quotas.

", "CallAnalyticsJobSummary$FailureReason": "

If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job failed. See also: Common Errors.

", "CreateMedicalVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the medical transcription job request failed. See also: Common Errors.

", "CreateVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the custom vocabulary request failed. See also: Common Errors.

", "GetMedicalVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the custom medical vocabulary request failed. See also: Common Errors.

", "GetVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the custom vocabulary request failed. See also: Common Errors.

", "LanguageModel$FailureReason": "

If ModelStatus is FAILED, FailureReason contains information about why the custom language model request failed. See also: Common Errors.

", - "MedicalTranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

  • Unsupported media format.

    The media format specified in MediaFormat isn't valid. Refer to MediaFormat for a list of supported formats.

  • The media format provided does not match the detected media format.

    The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.

  • Invalid sample rate for audio file.

    The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 16,000 and 48,000 hertz.

  • The sample rate provided does not match the detected sample rate.

    The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.

  • Invalid file size: file size too large.

    The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Guidelines and quotas.

  • Invalid number of channels: number of channels too large.

    Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Guidelines and quotas.

", + "MedicalScribeJob$FailureReason": "

If MedicalScribeJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

", + "MedicalScribeJobSummary$FailureReason": "

If MedicalScribeJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

", + "MedicalTranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

  • Unsupported media format.

    The media format specified in MediaFormat isn't valid. Refer to refer to the MediaFormat parameter for a list of supported formats.

  • The media format provided does not match the detected media format.

    The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.

  • Invalid sample rate for audio file.

    The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 16,000 and 48,000 hertz.

  • The sample rate provided does not match the detected sample rate.

    The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.

  • Invalid file size: file size too large.

    The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Service quotas.

  • Invalid number of channels: number of channels too large.

    Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Service quotas.

", "MedicalTranscriptionJobSummary$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

", - "TranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

  • Unsupported media format.

    The media format specified in MediaFormat isn't valid. Refer to MediaFormat for a list of supported formats.

  • The media format provided does not match the detected media format.

    The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.

  • Invalid sample rate for audio file.

    The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 8,000 and 48,000 hertz.

  • The sample rate provided does not match the detected sample rate.

    The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.

  • Invalid file size: file size too large.

    The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Guidelines and quotas.

  • Invalid number of channels: number of channels too large.

    Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Guidelines and quotas.

", + "TranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

  • Unsupported media format.

    The media format specified in MediaFormat isn't valid. Refer to refer to the MediaFormat parameter for a list of supported formats.

  • The media format provided does not match the detected media format.

    The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.

  • Invalid sample rate for audio file.

    The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 8,000 and 48,000 hertz.

  • The sample rate provided does not match the detected sample rate.

    The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.

  • Invalid file size: file size too large.

    The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Service quotas.

  • Invalid number of channels: number of channels too large.

    Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Service quotas.

", "TranscriptionJobSummary$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

" } }, @@ -404,6 +426,16 @@ "refs": { } }, + "GetMedicalScribeJobRequest": { + "base": null, + "refs": { + } + }, + "GetMedicalScribeJobResponse": { + "base": null, + "refs": { + } + }, "GetMedicalTranscriptionJobRequest": { "base": null, "refs": { @@ -499,6 +531,7 @@ "KMSEncryptionContextMap": { "base": null, "refs": { + "StartMedicalScribeJobRequest$KMSEncryptionContext": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS.

", "StartMedicalTranscriptionJobRequest$KMSEncryptionContext": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS.

", "StartTranscriptionJobRequest$KMSEncryptionContext": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS.

" } @@ -506,15 +539,16 @@ "KMSKeyId": { "base": null, "refs": { - "StartCallAnalyticsJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your Call Analytics output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you don't specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", - "StartMedicalTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your medical transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you don't specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", - "StartTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you don't specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

" + "StartCallAnalyticsJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your Call Analytics output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", + "StartMedicalScribeJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your Medical Scribe output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

Note that the role specified in the DataAccessRoleArn request parameter must have permission to use the specified KMS key.

", + "StartMedicalTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your medical transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", + "StartTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

" } }, "LanguageCode": { "base": null, "refs": { - "CallAnalyticsJob$LanguageCode": "

The language code used to create your Call Analytics job. For a list of supported languages and their associated language codes, refer to the Supported languages table.

If you don't know the language spoken in your media file, you can omit this field and let Amazon Transcribe automatically identify the language of your media. To improve the accuracy of language identification, you can include several language codes and Amazon Transcribe chooses the closest match for your transcription.

", + "CallAnalyticsJob$LanguageCode": "

The language code used to create your Call Analytics job. For a list of supported languages and their associated language codes, refer to the Supported languages table.

If you do not know the language spoken in your media file, you can omit this field and let Amazon Transcribe automatically identify the language of your media. To improve the accuracy of language identification, you can include several language codes and Amazon Transcribe chooses the closest match for your transcription.

", "CallAnalyticsJobSummary$LanguageCode": "

The language code used to create your Call Analytics transcription.

", "CreateMedicalVocabularyRequest$LanguageCode": "

The language code that represents the language of the entries in your custom vocabulary. US English (en-US) is the only language supported with Amazon Transcribe Medical.

", "CreateMedicalVocabularyResponse$LanguageCode": "

The language code you selected for your custom medical vocabulary. US English (en-US) is the only language supported with Amazon Transcribe Medical.

", @@ -620,6 +654,16 @@ "refs": { } }, + "ListMedicalScribeJobsRequest": { + "base": null, + "refs": { + } + }, + "ListMedicalScribeJobsResponse": { + "base": null, + "refs": { + } + }, "ListMedicalTranscriptionJobsRequest": { "base": null, "refs": { @@ -690,29 +734,33 @@ "MaxResults": { "base": null, "refs": { - "ListCallAnalyticsCategoriesRequest$MaxResults": "

The maximum number of Call Analytics categories to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListCallAnalyticsJobsRequest$MaxResults": "

The maximum number of Call Analytics jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListLanguageModelsRequest$MaxResults": "

The maximum number of custom language models to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListMedicalTranscriptionJobsRequest$MaxResults": "

The maximum number of medical transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListMedicalVocabulariesRequest$MaxResults": "

The maximum number of custom medical vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListTranscriptionJobsRequest$MaxResults": "

The maximum number of transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListVocabulariesRequest$MaxResults": "

The maximum number of custom vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListVocabularyFiltersRequest$MaxResults": "

The maximum number of custom vocabulary filters to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

" + "ListCallAnalyticsCategoriesRequest$MaxResults": "

The maximum number of Call Analytics categories to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListCallAnalyticsJobsRequest$MaxResults": "

The maximum number of Call Analytics jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListLanguageModelsRequest$MaxResults": "

The maximum number of custom language models to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListMedicalScribeJobsRequest$MaxResults": "

The maximum number of Medical Scribe jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListMedicalTranscriptionJobsRequest$MaxResults": "

The maximum number of medical transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListMedicalVocabulariesRequest$MaxResults": "

The maximum number of custom medical vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListTranscriptionJobsRequest$MaxResults": "

The maximum number of transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListVocabulariesRequest$MaxResults": "

The maximum number of custom vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListVocabularyFiltersRequest$MaxResults": "

The maximum number of custom vocabulary filters to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

" } }, "MaxSpeakers": { "base": null, "refs": { + "MedicalScribeSettings$MaxSpeakerLabels": "

Specify the maximum number of speakers you want to partition in your media.

Note that if your media contains more speakers than the specified number, multiple speakers are treated as a single speaker.

If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels field to true.

", "MedicalTranscriptionSetting$MaxSpeakerLabels": "

Specify the maximum number of speakers you want to partition in your media.

Note that if your media contains more speakers than the specified number, multiple speakers are treated as a single speaker.

If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels field to true.

", "Settings$MaxSpeakerLabels": "

Specify the maximum number of speakers you want to partition in your media.

Note that if your media contains more speakers than the specified number, multiple speakers are treated as a single speaker.

If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels field to true.

" } }, "Media": { - "base": "

Describes the Amazon S3 location of the media file you want to use in your request.

For information on supported media formats, refer to the MediaFormat parameter or the Media formats section in the Amazon S3 Developer Guide.

", + "base": "

Describes the Amazon S3 location of the media file you want to use in your request.

For information on supported media formats, refer to the MediaFormat parameter or the Media formats section in the Amazon S3 Developer Guide.

", "refs": { "CallAnalyticsJob$Media": "

Provides the Amazon S3 location of the media file you used in your Call Analytics request.

", + "MedicalScribeJob$Media": null, "MedicalTranscriptionJob$Media": null, "StartCallAnalyticsJobRequest$Media": "

Describes the Amazon S3 location of the media file you want to use in your Call Analytics request.

", + "StartMedicalScribeJobRequest$Media": null, "StartMedicalTranscriptionJobRequest$Media": null, "StartTranscriptionJobRequest$Media": "

Describes the Amazon S3 location of the media file you want to use in your request.

", "TranscriptionJob$Media": "

Provides the Amazon S3 location of the media file you used in your request.

" @@ -732,7 +780,7 @@ "base": null, "refs": { "CallAnalyticsJob$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

", - "StartTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you don't specify the media sample rate, Amazon Transcribe determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe. If there's a mismatch between the value that you specify and the value detected, your job fails. In most cases, you can omit MediaSampleRateHertz and let Amazon Transcribe determine the sample rate.

", + "StartTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you do not specify the media sample rate, Amazon Transcribe determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe. If there's a mismatch between the value that you specify and the value detected, your job fails. In most cases, you can omit MediaSampleRateHertz and let Amazon Transcribe determine the sample rate.

", "TranscriptionJob$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

" } }, @@ -748,7 +796,80 @@ "base": null, "refs": { "MedicalTranscriptionJob$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

", - "StartMedicalTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you don't specify the media sample rate, Amazon Transcribe Medical determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe Medical; if there's a mismatch between the value that you specify and the value detected, your job fails. Therefore, in most cases, it's advised to omit MediaSampleRateHertz and let Amazon Transcribe Medical determine the sample rate.

" + "StartMedicalTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you do not specify the media sample rate, Amazon Transcribe Medical determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe Medical; if there's a mismatch between the value that you specify and the value detected, your job fails. Therefore, in most cases, it's advised to omit MediaSampleRateHertz and let Amazon Transcribe Medical determine the sample rate.

" + } + }, + "MedicalScribeChannelDefinition": { + "base": "

Indicates which speaker is on which channel. The options are CLINICIAN and PATIENT

", + "refs": { + "MedicalScribeChannelDefinitions$member": null + } + }, + "MedicalScribeChannelDefinitions": { + "base": null, + "refs": { + "MedicalScribeJob$ChannelDefinitions": "

Makes it possible to specify which speaker is on which channel. For example, if the clinician is the first participant to speak, you would set ChannelId of the first ChannelDefinition in the list to 0 (to indicate the first channel) and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). Then you would set the ChannelId of the second ChannelDefinition in the list to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to indicate that it's the patient speaking).

", + "StartMedicalScribeJobRequest$ChannelDefinitions": "

Makes it possible to specify which speaker is on which channel. For example, if the clinician is the first participant to speak, you would set ChannelId of the first ChannelDefinition in the list to 0 (to indicate the first channel) and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). Then you would set the ChannelId of the second ChannelDefinition in the list to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to indicate that it's the patient speaking).

" + } + }, + "MedicalScribeChannelId": { + "base": null, + "refs": { + "MedicalScribeChannelDefinition$ChannelId": "

Specify the audio channel you want to define.

" + } + }, + "MedicalScribeJob": { + "base": "

Provides detailed information about a Medical Scribe job.

To view the status of the specified Medical Scribe job, check the MedicalScribeJobStatus field. If the status is COMPLETED, the job is finished and you can find the results at the locations specified in MedicalScribeOutput. If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

", + "refs": { + "GetMedicalScribeJobResponse$MedicalScribeJob": "

Provides detailed information about the specified Medical Scribe job, including job status and, if applicable, failure reason

", + "StartMedicalScribeJobResponse$MedicalScribeJob": "

Provides detailed information about the current Medical Scribe job, including job status and, if applicable, failure reason.

" + } + }, + "MedicalScribeJobStatus": { + "base": null, + "refs": { + "ListMedicalScribeJobsRequest$Status": "

Returns only Medical Scribe jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all Medical Scribe jobs are returned.

", + "ListMedicalScribeJobsResponse$Status": "

Lists all Medical Scribe jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

", + "MedicalScribeJob$MedicalScribeJobStatus": "

Provides the status of the specified Medical Scribe job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in MedicalScribeOutput If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

", + "MedicalScribeJobSummary$MedicalScribeJobStatus": "

Provides the status of the specified Medical Scribe job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in MedicalScribeOutput If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

" + } + }, + "MedicalScribeJobSummaries": { + "base": null, + "refs": { + "ListMedicalScribeJobsResponse$MedicalScribeJobSummaries": "

Provides a summary of information about each result.

" + } + }, + "MedicalScribeJobSummary": { + "base": "

Provides detailed information about a specific Medical Scribe job.

", + "refs": { + "MedicalScribeJobSummaries$member": null + } + }, + "MedicalScribeLanguageCode": { + "base": null, + "refs": { + "MedicalScribeJob$LanguageCode": "

The language code used to create your Medical Scribe job. US English (en-US) is the only supported language for Medical Scribe jobs.

", + "MedicalScribeJobSummary$LanguageCode": "

The language code used to create your Medical Scribe job. US English (en-US) is the only supported language for Medical Scribe jobs.

" + } + }, + "MedicalScribeOutput": { + "base": "

The location of the output of your Medical Scribe job. ClinicalDocumentUri holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds the Amazon S3 URI for the Transcript.

", + "refs": { + "MedicalScribeJob$MedicalScribeOutput": "

The location of the output of your Medical Scribe job. ClinicalDocumentUri holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds the Amazon S3 URI for the Transcript.

" + } + }, + "MedicalScribeParticipantRole": { + "base": null, + "refs": { + "MedicalScribeChannelDefinition$ParticipantRole": "

Specify the participant that you want to flag. The options are CLINICIAN and PATIENT

" + } + }, + "MedicalScribeSettings": { + "base": "

Makes it possible to control how your Medical Scribe job is processed using a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions are not set. One and only one of ChannelIdentification and ShowSpeakerLabels must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName is set.

", + "refs": { + "MedicalScribeJob$Settings": "

Makes it possible to control how your Medical Scribe job is processed using a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions are not set. One and only one of ChannelIdentification and ShowSpeakerLabels must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName is set.

", + "StartMedicalScribeJobRequest$Settings": "

Makes it possible to control how your Medical Scribe job is processed using a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions are not set. One and only one of ChannelIdentification and ShowSpeakerLabels must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName is set.

" } }, "MedicalTranscript": { @@ -786,15 +907,15 @@ "ModelName": { "base": null, "refs": { - "CallAnalyticsJobSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", + "CallAnalyticsJobSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", "CreateLanguageModelRequest$ModelName": "

A unique name, chosen by you, for your custom language model.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new custom language model with the same name as an existing custom language model, you get a ConflictException error.

", "CreateLanguageModelResponse$ModelName": "

The name of your custom language model.

", "DeleteLanguageModelRequest$ModelName": "

The name of the custom language model you want to delete. Model names are case sensitive.

", "DescribeLanguageModelRequest$ModelName": "

The name of the custom language model you want information about. Model names are case sensitive.

", - "LanguageIdSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", + "LanguageIdSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", "LanguageModel$ModelName": "

A unique name, chosen by you, for your custom language model.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account.

", "ListLanguageModelsRequest$NameContains": "

Returns only the custom language models that contain the specified string. The search is not case sensitive.

", - "ModelSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

" + "ModelSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

" } }, "ModelSettings": { @@ -810,7 +931,7 @@ "refs": { "CreateLanguageModelResponse$ModelStatus": "

The status of your custom language model. When the status displays as COMPLETED, your model is ready to use.

", "LanguageModel$ModelStatus": "

The status of the specified custom language model. When the status displays as COMPLETED the model is ready for use.

", - "ListLanguageModelsRequest$StatusEquals": "

Returns only custom language models with the specified status. Language models are ordered by creation date, with the newest model first. If you don't include StatusEquals, all custom language models are returned.

" + "ListLanguageModelsRequest$StatusEquals": "

Returns only custom language models with the specified status. Language models are ordered by creation date, with the newest model first. If you do not include StatusEquals, all custom language models are returned.

" } }, "Models": { @@ -828,6 +949,8 @@ "ListCallAnalyticsJobsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListLanguageModelsRequest$NextToken": "

If your ListLanguageModels request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListLanguageModelsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", + "ListMedicalScribeJobsRequest$NextToken": "

If your ListMedicalScribeJobs request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", + "ListMedicalScribeJobsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListMedicalTranscriptionJobsRequest$NextToken": "

If your ListMedicalTranscriptionJobs request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListMedicalTranscriptionJobsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListMedicalVocabulariesRequest$NextToken": "

If your ListMedicalVocabularies request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", @@ -862,8 +985,9 @@ "OutputBucketName": { "base": null, "refs": { + "StartMedicalScribeJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your Medical Scribe output stored. Do not include the S3:// prefix of the specified bucket.

Note that the role specified in the DataAccessRoleArn request parameter must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

", "StartMedicalTranscriptionJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your medical transcription output stored. Do not include the S3:// prefix of the specified bucket.

If you want your output to go to a sub-folder of this bucket, specify it using the OutputKey parameter; OutputBucketName only accepts the name of a bucket.

For example, if you want your output stored in S3://DOC-EXAMPLE-BUCKET, set OutputBucketName to DOC-EXAMPLE-BUCKET. However, if you want your output stored in S3://DOC-EXAMPLE-BUCKET/test-files/, set OutputBucketName to DOC-EXAMPLE-BUCKET and OutputKey to test-files/.

Note that Amazon Transcribe must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

", - "StartTranscriptionJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your transcription output stored. Do not include the S3:// prefix of the specified bucket.

If you want your output to go to a sub-folder of this bucket, specify it using the OutputKey parameter; OutputBucketName only accepts the name of a bucket.

For example, if you want your output stored in S3://DOC-EXAMPLE-BUCKET, set OutputBucketName to DOC-EXAMPLE-BUCKET. However, if you want your output stored in S3://DOC-EXAMPLE-BUCKET/test-files/, set OutputBucketName to DOC-EXAMPLE-BUCKET and OutputKey to test-files/.

Note that Amazon Transcribe must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

If you don't specify OutputBucketName, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

" + "StartTranscriptionJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your transcription output stored. Do not include the S3:// prefix of the specified bucket.

If you want your output to go to a sub-folder of this bucket, specify it using the OutputKey parameter; OutputBucketName only accepts the name of a bucket.

For example, if you want your output stored in S3://DOC-EXAMPLE-BUCKET, set OutputBucketName to DOC-EXAMPLE-BUCKET. However, if you want your output stored in S3://DOC-EXAMPLE-BUCKET/test-files/, set OutputBucketName to DOC-EXAMPLE-BUCKET and OutputKey to test-files/.

Note that Amazon Transcribe must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

If you do not specify OutputBucketName, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

" } }, "OutputKey": { @@ -920,7 +1044,7 @@ "PiiEntityTypes": { "base": null, "refs": { - "ContentRedaction$PiiEntityTypes": "

Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL.

" + "ContentRedaction$PiiEntityTypes": "

Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. If you do not include PiiEntityTypes in your request, all PII is redacted.

" } }, "RedactionOutput": { @@ -932,7 +1056,7 @@ "RedactionType": { "base": null, "refs": { - "ContentRedaction$RedactionType": "

Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact.

" + "ContentRedaction$RedactionType": "

Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.

" } }, "RelativeTimeRange": { @@ -1001,6 +1125,16 @@ "refs": { } }, + "StartMedicalScribeJobRequest": { + "base": null, + "refs": { + } + }, + "StartMedicalScribeJobResponse": { + "base": null, + "refs": { + } + }, "StartMedicalTranscriptionJobRequest": { "base": null, "refs": { @@ -1074,6 +1208,12 @@ "TranscriptionJob$Subtitles": "

Indicates whether subtitles were generated with your transcription.

" } }, + "Summarization": { + "base": "

Contains GenerateAbstractiveSummary, which is a required parameter if you want to enable Generative call summarization in your Call Analytics request.

", + "refs": { + "CallAnalyticsJobSettings$Summarization": "

Contains GenerateAbstractiveSummary, which is a required parameter if you want to enable Generative call summarization in your Call Analytics request.

" + } + }, "Tag": { "base": "

Adds metadata, in the form of a key:value pair, to the specified resource.

For example, you could add the tag Department:Sales to a resource to indicate that it pertains to your organization's sales department. You can also use tags for tag-based access control.

To learn more about tagging, see Tagging resources.

", "refs": { @@ -1101,7 +1241,9 @@ "CreateVocabularyFilterRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new custom vocabulary filter at the time you create this new vocabulary filter.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "CreateVocabularyRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new custom vocabulary at the time you create this new custom vocabulary.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "ListTagsForResourceResponse$Tags": "

Lists all tags associated with the given transcription job, vocabulary, model, or resource.

", + "MedicalScribeJob$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to the Medica Scribe job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "MedicalTranscriptionJob$Tags": "

The tags, each in the form of a key:value pair, assigned to the specified medical transcription job.

", + "StartMedicalScribeJobRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to the Medica Scribe job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "StartMedicalTranscriptionJobRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new medical transcription job at the time you start this new job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "StartTranscriptionJobRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new transcription job at the time you start this new job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "TagResourceRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to the specified resource.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", @@ -1199,14 +1341,20 @@ "TranscriptionJobName": { "base": null, "refs": { + "DeleteMedicalScribeJobRequest$MedicalScribeJobName": "

The name of the Medical Scribe job you want to delete. Job names are case sensitive.

", "DeleteMedicalTranscriptionJobRequest$MedicalTranscriptionJobName": "

The name of the medical transcription job you want to delete. Job names are case sensitive.

", "DeleteTranscriptionJobRequest$TranscriptionJobName": "

The name of the transcription job you want to delete. Job names are case sensitive.

", + "GetMedicalScribeJobRequest$MedicalScribeJobName": "

The name of the Medical Scribe job you want information about. Job names are case sensitive.

", "GetMedicalTranscriptionJobRequest$MedicalTranscriptionJobName": "

The name of the medical transcription job you want information about. Job names are case sensitive.

", "GetTranscriptionJobRequest$TranscriptionJobName": "

The name of the transcription job you want information about. Job names are case sensitive.

", + "ListMedicalScribeJobsRequest$JobNameContains": "

Returns only the Medical Scribe jobs that contain the specified string. The search is not case sensitive.

", "ListMedicalTranscriptionJobsRequest$JobNameContains": "

Returns only the medical transcription jobs that contain the specified string. The search is not case sensitive.

", "ListTranscriptionJobsRequest$JobNameContains": "

Returns only the transcription jobs that contain the specified string. The search is not case sensitive.

", + "MedicalScribeJob$MedicalScribeJobName": "

The name of the Medical Scribe job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", + "MedicalScribeJobSummary$MedicalScribeJobName": "

The name of the Medical Scribe job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", "MedicalTranscriptionJob$MedicalTranscriptionJobName": "

The name of the medical transcription job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", "MedicalTranscriptionJobSummary$MedicalTranscriptionJobName": "

The name of the medical transcription job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", + "StartMedicalScribeJobRequest$MedicalScribeJobName": "

A unique name, chosen by you, for your Medical Scribe job.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.

", "StartMedicalTranscriptionJobRequest$MedicalTranscriptionJobName": "

A unique name, chosen by you, for your medical transcription job. The name that you specify is also used as the default name of your transcription output file. If you want to specify a different name for your transcription output, use the OutputKey parameter.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.

", "StartTranscriptionJobRequest$TranscriptionJobName": "

A unique name, chosen by you, for your transcription job. The name that you specify is also used as the default name of your transcription output file. If you want to specify a different name for your transcription output, use the OutputKey parameter.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.

", "TranscriptionJob$TranscriptionJobName": "

The name of the transcription job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", @@ -1216,9 +1364,9 @@ "TranscriptionJobStatus": { "base": null, "refs": { - "ListMedicalTranscriptionJobsRequest$Status": "

Returns only medical transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you don't include Status, all medical transcription jobs are returned.

", + "ListMedicalTranscriptionJobsRequest$Status": "

Returns only medical transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all medical transcription jobs are returned.

", "ListMedicalTranscriptionJobsResponse$Status": "

Lists all medical transcription jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

", - "ListTranscriptionJobsRequest$Status": "

Returns only transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you don't include Status, all transcription jobs are returned.

", + "ListTranscriptionJobsRequest$Status": "

Returns only transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all transcription jobs are returned.

", "ListTranscriptionJobsResponse$Status": "

Lists all transcription jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

", "MedicalTranscriptionJob$TranscriptionJobStatus": "

Provides the status of the specified medical transcription job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

", "MedicalTranscriptionJobSummary$TranscriptionJobStatus": "

Provides the status of your medical transcription job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

", @@ -1302,15 +1450,17 @@ "CreateMedicalVocabularyRequest$VocabularyFileUri": "

The Amazon S3 location (URI) of the text file that contains your custom medical vocabulary. The URI must be in the same Amazon Web Services Region as the resource you're calling.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-vocab-file.txt

", "CreateVocabularyFilterRequest$VocabularyFilterFileUri": "

The Amazon S3 location of the text file that contains your custom vocabulary filter terms. The URI must be located in the same Amazon Web Services Region as the resource you're calling.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-vocab-filter-file.txt

Note that if you include VocabularyFilterFileUri in your request, you cannot use Words; you must choose one or the other.

", "CreateVocabularyRequest$VocabularyFileUri": "

The Amazon S3 location of the text file that contains your custom vocabulary. The URI must be located in the same Amazon Web Services Region as the resource you're calling.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-vocab-file.txt

Note that if you include VocabularyFileUri in your request, you cannot use the Phrases flag; you must choose one or the other.

", - "GetMedicalVocabularyResponse$DownloadUri": "

The S3 location where the specified custom medical vocabulary is stored; use this URI to view or download the custom vocabulary.

", + "GetMedicalVocabularyResponse$DownloadUri": "

The Amazon S3 location where the specified custom medical vocabulary is stored; use this URI to view or download the custom vocabulary.

", "GetVocabularyFilterResponse$DownloadUri": "

The Amazon S3 location where the custom vocabulary filter is stored; use this URI to view or download the custom vocabulary filter.

", - "GetVocabularyResponse$DownloadUri": "

The S3 location where the custom vocabulary is stored; use this URI to view or download the custom vocabulary.

", + "GetVocabularyResponse$DownloadUri": "

The Amazon S3 location where the custom vocabulary is stored; use this URI to view or download the custom vocabulary.

", "InputDataConfig$S3Uri": "

The Amazon S3 location (URI) of the text files you want to use to train your custom language model.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

", "InputDataConfig$TuningDataS3Uri": "

The Amazon S3 location (URI) of the text files you want to use to tune your custom language model.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

", "Media$MediaFileUri": "

The Amazon S3 location of the media file you want to transcribe. For example:

  • s3://DOC-EXAMPLE-BUCKET/my-media-file.flac

  • s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac

Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.

", "Media$RedactedMediaFileUri": "

The Amazon S3 location of the media file you want to redact. For example:

  • s3://DOC-EXAMPLE-BUCKET/my-media-file.flac

  • s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac

Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.

RedactedMediaFileUri produces a redacted audio file in addition to a redacted transcript. It is only supported for Call Analytics (StartCallAnalyticsJob) transcription requests.

", + "MedicalScribeOutput$TranscriptFileUri": "

Holds the Amazon S3 URI for the Transcript.

", + "MedicalScribeOutput$ClinicalDocumentUri": "

Holds the Amazon S3 URI for the Clinical Document.

", "MedicalTranscript$TranscriptFileUri": "

The Amazon S3 location of your transcript. You can use this URI to access or download your transcript.

Note that this is the Amazon S3 location you specified in your request using the OutputBucketName parameter.

", - "StartCallAnalyticsJobRequest$OutputLocation": "

The Amazon S3 location where you want your Call Analytics transcription output stored. You can use any of the following formats to specify the output location:

  1. s3://DOC-EXAMPLE-BUCKET

  2. s3://DOC-EXAMPLE-BUCKET/my-output-folder/

  3. s3://DOC-EXAMPLE-BUCKET/my-output-folder/my-call-analytics-job.json

Unless you specify a file name (option 3), the name of your output file has a default value that matches the name you specified for your transcription job using the CallAnalyticsJobName parameter.

You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId parameter. If you don't specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption.

If you don't specify OutputLocation, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

", + "StartCallAnalyticsJobRequest$OutputLocation": "

The Amazon S3 location where you want your Call Analytics transcription output stored. You can use any of the following formats to specify the output location:

  1. s3://DOC-EXAMPLE-BUCKET

  2. s3://DOC-EXAMPLE-BUCKET/my-output-folder/

  3. s3://DOC-EXAMPLE-BUCKET/my-output-folder/my-call-analytics-job.json

Unless you specify a file name (option 3), the name of your output file has a default value that matches the name you specified for your transcription job using the CallAnalyticsJobName parameter.

You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId parameter. If you do not specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption.

If you do not specify OutputLocation, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

", "SubtitleFileUris$member": null, "Transcript$TranscriptFileUri": "

The Amazon S3 location of your transcript. You can use this URI to access or download your transcript.

If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.

If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and TranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.

Temporary URIs for service-managed Amazon S3 buckets are only valid for 15 minutes. If you get an AccesDenied error, you can get a new temporary URI by running a GetTranscriptionJob or ListTranscriptionJob request.

", "Transcript$RedactedTranscriptFileUri": "

The Amazon S3 location of your redacted transcript. You can use this URI to access or download your transcript.

If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.

If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and RedactedTranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.

Temporary URIs for service-managed Amazon S3 buckets are only valid for 15 minutes. If you get an AccesDenied error, you can get a new temporary URI by running a GetTranscriptionJob or ListTranscriptionJob request.

", @@ -1336,6 +1486,7 @@ "base": null, "refs": { "CallAnalyticsJobSettings$VocabularyFilterMethod": "

Specify how you want your custom vocabulary filter applied to your transcript.

To replace words with ***, choose mask.

To delete words, choose remove.

To flag words without changing them, choose tag.

", + "MedicalScribeSettings$VocabularyFilterMethod": "

Specify how you want your custom vocabulary filter applied to your transcript.

To replace words with ***, choose mask.

To delete words, choose remove.

To flag words without changing them, choose tag.

", "Settings$VocabularyFilterMethod": "

Specify how you want your custom vocabulary filter applied to your transcript.

To replace words with ***, choose mask.

To delete words, choose remove.

To flag words without changing them, choose tag.

" } }, @@ -1348,8 +1499,9 @@ "DeleteVocabularyFilterRequest$VocabularyFilterName": "

The name of the custom vocabulary filter you want to delete. Custom vocabulary filter names are case sensitive.

", "GetVocabularyFilterRequest$VocabularyFilterName": "

The name of the custom vocabulary filter you want information about. Custom vocabulary filter names are case sensitive.

", "GetVocabularyFilterResponse$VocabularyFilterName": "

The name of the custom vocabulary filter you requested information about.

", - "LanguageIdSettings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.

The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages don't match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", + "LanguageIdSettings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.

The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", "ListVocabularyFiltersRequest$NameContains": "

Returns only the custom vocabulary filters that contain the specified string. The search is not case sensitive.

", + "MedicalScribeSettings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to include in your Medical Scribe request. Custom vocabulary filter names are case sensitive.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", "Settings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to use in your transcription job request. This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", "UpdateVocabularyFilterRequest$VocabularyFilterName": "

The name of the custom vocabulary filter you want to update. Custom vocabulary filter names are case sensitive.

", "UpdateVocabularyFilterResponse$VocabularyFilterName": "

The name of the updated custom vocabulary filter.

", @@ -1382,10 +1534,11 @@ "GetMedicalVocabularyResponse$VocabularyName": "

The name of the custom medical vocabulary you requested information about.

", "GetVocabularyRequest$VocabularyName": "

The name of the custom vocabulary you want information about. Custom vocabulary names are case sensitive.

", "GetVocabularyResponse$VocabularyName": "

The name of the custom vocabulary you requested information about.

", - "LanguageIdSettings$VocabularyName": "

The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages don't match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.

", + "LanguageIdSettings$VocabularyName": "

The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.

", "ListMedicalVocabulariesRequest$NameContains": "

Returns only the custom medical vocabularies that contain the specified string. The search is not case sensitive.

", "ListVocabulariesRequest$NameContains": "

Returns only the custom vocabularies that contain the specified string. The search is not case sensitive.

", - "MedicalTranscriptionSetting$VocabularyName": "

The name of the custom vocabulary you want to use when processing your medical transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages don't match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch. US English (en-US) is the only valid language for Amazon Transcribe Medical.

", + "MedicalScribeSettings$VocabularyName": "

The name of the custom vocabulary you want to include in your Medical Scribe request. Custom vocabulary names are case sensitive.

", + "MedicalTranscriptionSetting$VocabularyName": "

The name of the custom vocabulary you want to use when processing your medical transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch. US English (en-US) is the only valid language for Amazon Transcribe Medical.

", "Settings$VocabularyName": "

The name of the custom vocabulary you want to use in your transcription job request. This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account.

", "UpdateMedicalVocabularyRequest$VocabularyName": "

The name of the custom medical vocabulary you want to update. Custom medical vocabulary names are case sensitive.

", "UpdateMedicalVocabularyResponse$VocabularyName": "

The name of the updated custom medical vocabulary.

", @@ -1401,9 +1554,9 @@ "CreateVocabularyResponse$VocabularyState": "

The processing state of your custom vocabulary. If the state is READY, you can use the custom vocabulary in a StartTranscriptionJob request.

", "GetMedicalVocabularyResponse$VocabularyState": "

The processing state of your custom medical vocabulary. If the state is READY, you can use the custom vocabulary in a StartMedicalTranscriptionJob request.

", "GetVocabularyResponse$VocabularyState": "

The processing state of your custom vocabulary. If the state is READY, you can use the custom vocabulary in a StartTranscriptionJob request.

", - "ListMedicalVocabulariesRequest$StateEquals": "

Returns only custom medical vocabularies with the specified state. Custom vocabularies are ordered by creation date, with the newest vocabulary first. If you don't include StateEquals, all custom medical vocabularies are returned.

", + "ListMedicalVocabulariesRequest$StateEquals": "

Returns only custom medical vocabularies with the specified state. Custom vocabularies are ordered by creation date, with the newest vocabulary first. If you do not include StateEquals, all custom medical vocabularies are returned.

", "ListMedicalVocabulariesResponse$Status": "

Lists all custom medical vocabularies that have the status specified in your request. Custom vocabularies are ordered by creation date, with the newest vocabulary first.

", - "ListVocabulariesRequest$StateEquals": "

Returns only custom vocabularies with the specified state. Vocabularies are ordered by creation date, with the newest vocabulary first. If you don't include StateEquals, all custom medical vocabularies are returned.

", + "ListVocabulariesRequest$StateEquals": "

Returns only custom vocabularies with the specified state. Vocabularies are ordered by creation date, with the newest vocabulary first. If you do not include StateEquals, all custom medical vocabularies are returned.

", "ListVocabulariesResponse$Status": "

Lists all custom vocabularies that have the status specified in your request. Vocabularies are ordered by creation date, with the newest vocabulary first.

", "UpdateMedicalVocabularyResponse$VocabularyState": "

The processing state of your custom medical vocabulary. If the state is READY, you can use the custom vocabulary in a StartMedicalTranscriptionJob request.

", "UpdateVocabularyResponse$VocabularyState": "

The processing state of your custom vocabulary. If the state is READY, you can use the custom vocabulary in a StartTranscriptionJob request.

", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,381 +57,346 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://transcribe-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://transcribe-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://fips.transcribe.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://fips.transcribe.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" }, - { - "conditions": [], - "endpoint": { - "url": "https://transcribe-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "aws" ] } - ] + ], + "endpoint": { + "url": "https://fips.transcribe.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "name" ] - } + }, + "aws-us-gov" ] } ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://transcribe.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "endpoint": { + "url": "https://fips.transcribe.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "cn-north-1" - ] - } - ], "endpoint": { - "url": "https://cn.transcribe.cn-north-1.amazonaws.com.cn", + "url": "https://transcribe-fips.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" }, + true + ] + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "cn-northwest-1" + "supportsDualStack" ] } - ], - "endpoint": { - "url": "https://cn.transcribe.cn-northwest-1.amazonaws.com.cn", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "rules": [ { "conditions": [], "endpoint": { - "url": "https://transcribe.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://transcribe.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "cn-north-1" ] } - ] + ], + "endpoint": { + "url": "https://cn.transcribe.cn-north-1.amazonaws.com.cn", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "cn-northwest-1" + ] + } + ], + "endpoint": { + "url": "https://cn.transcribe.cn-northwest-1.amazonaws.com.cn", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://transcribe.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe/2017-10-26/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe/2017-10-26/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -15,6 +15,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListMedicalScribeJobs": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListMedicalTranscriptionJobs": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -936,6 +936,11 @@ "location":"header", "locationName":"x-amzn-transcribe-preferred-language" }, + "IdentifyMultipleLanguages":{ + "shape":"Boolean", + "location":"header", + "locationName":"x-amzn-transcribe-identify-multiple-languages" + }, "VocabularyNames":{ "shape":"VocabularyNames", "location":"header", @@ -1053,6 +1058,11 @@ "location":"header", "locationName":"x-amzn-transcribe-preferred-language" }, + "IdentifyMultipleLanguages":{ + "shape":"Boolean", + "location":"header", + "locationName":"x-amzn-transcribe-identify-multiple-languages" + }, "VocabularyNames":{ "shape":"VocabularyNames", "location":"header", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,7 +4,7 @@ "operations": { "StartCallAnalyticsStreamTranscription": "

Starts a bidirectional HTTP/2 or WebSocket stream where audio is streamed to Amazon Transcribe and the transcription results are streamed to your application. Use this operation for Call Analytics transcriptions.

The following parameters are required:

  • language-code

  • media-encoding

  • sample-rate

For more information on streaming with Amazon Transcribe, see Transcribing streaming audio.

", "StartMedicalStreamTranscription": "

Starts a bidirectional HTTP/2 or WebSocket stream where audio is streamed to Amazon Transcribe Medical and the transcription results are streamed to your application.

The following parameters are required:

  • language-code

  • media-encoding

  • sample-rate

For more information on streaming with Amazon Transcribe Medical, see Transcribing streaming audio.

", - "StartStreamTranscription": "

Starts a bidirectional HTTP/2 or WebSocket stream where audio is streamed to Amazon Transcribe and the transcription results are streamed to your application.

The following parameters are required:

  • language-code or identify-language

  • media-encoding

  • sample-rate

For more information on streaming with Amazon Transcribe, see Transcribing streaming audio.

" + "StartStreamTranscription": "

Starts a bidirectional HTTP/2 or WebSocket stream where audio is streamed to Amazon Transcribe and the transcription results are streamed to your application.

The following parameters are required:

  • language-code or identify-language or identify-multiple-language

  • media-encoding

  • sample-rate

For more information on streaming with Amazon Transcribe, see Transcribing streaming audio.

" }, "shapes": { "Alternative": { @@ -63,11 +63,13 @@ "StartStreamTranscriptionRequest$ShowSpeakerLabel": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

For more information, see Partitioning speakers (diarization).

", "StartStreamTranscriptionRequest$EnableChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript is not separated by channel.

For more information, see Transcribing multi-channel audio.

", "StartStreamTranscriptionRequest$EnablePartialResultsStabilization": "

Enables partial result stabilization for your transcription. Partial result stabilization can reduce latency in your output, but may impact accuracy. For more information, see Partial-result stabilization.

", - "StartStreamTranscriptionRequest$IdentifyLanguage": "

Enables automatic language identification for your transcription.

If you include IdentifyLanguage, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your audio stream. Including language options can improve transcription accuracy.

You can also include a preferred language using PreferredLanguage. Adding a preferred language can help Amazon Transcribe identify the language faster than if you omit this parameter.

If you have multi-channel audio that contains different languages on each channel, and you've enabled channel identification, automatic language identification identifies the dominant language on each audio channel.

Note that you must include either LanguageCode or IdentifyLanguage in your request. If you include both parameters, your request fails.

Streaming language identification can't be combined with custom language models or redaction.

", + "StartStreamTranscriptionRequest$IdentifyLanguage": "

Enables automatic language identification for your transcription.

If you include IdentifyLanguage, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your audio stream. Including language options can improve transcription accuracy.

You can also include a preferred language using PreferredLanguage. Adding a preferred language can help Amazon Transcribe identify the language faster than if you omit this parameter.

If you have multi-channel audio that contains different languages on each channel, and you've enabled channel identification, automatic language identification identifies the dominant language on each audio channel.

Note that you must include either LanguageCode or IdentifyLanguage or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

Streaming language identification can't be combined with custom language models or redaction.

", + "StartStreamTranscriptionRequest$IdentifyMultipleLanguages": "

Enables automatic multi-language identification in your transcription job request. Use this parameter if your stream contains more than one language. If your stream contains only one language, use IdentifyLanguage instead.

If you include IdentifyMultipleLanguages, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your stream. Including LanguageOptions restricts IdentifyMultipleLanguages to only the language options that you specify, which can improve transcription accuracy.

If you want to apply a custom vocabulary or a custom vocabulary filter to your automatic multiple language identification request, include VocabularyNames or VocabularyFilterNames.

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", "StartStreamTranscriptionResponse$ShowSpeakerLabel": "

Shows whether speaker partitioning was enabled for your transcription.

", "StartStreamTranscriptionResponse$EnableChannelIdentification": "

Shows whether channel identification was enabled for your transcription.

", "StartStreamTranscriptionResponse$EnablePartialResultsStabilization": "

Shows whether partial results stabilization was enabled for your transcription.

", "StartStreamTranscriptionResponse$IdentifyLanguage": "

Shows whether automatic language identification was enabled for your transcription.

", + "StartStreamTranscriptionResponse$IdentifyMultipleLanguages": "

Shows whether automatic multi-language identification was enabled for your transcription.

", "UtteranceEvent$IsPartial": "

Indicates whether the segment in the UtteranceEvent is complete (FALSE) or partial (TRUE).

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -32,87 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -120,190 +62,162 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { "ref": "UseDualStack" }, true ] } ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://transcribestreaming-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "ref": "Region" } ] - }, + } + ], + "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ { - "ref": "UseFIPS" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "transcribestreaming-ca-central-1" + "supportsFIPS" ] } - ], - "endpoint": { - "url": "https://transcribestreaming-fips.ca-central-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ] }, { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "transcribestreaming-us-east-1" + "supportsDualStack" ] } - ], - "endpoint": { - "url": "https://transcribestreaming-fips.us-east-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "transcribestreaming-us-east-2" - ] - } - ], + "conditions": [], "endpoint": { - "url": "https://transcribestreaming-fips.us-east-2.amazonaws.com", + "url": "https://transcribestreaming-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "transcribestreaming-us-west-2" + "supportsFIPS" ] - } - ], - "endpoint": { - "url": "https://transcribestreaming-fips.us-west-2.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + }, + true + ] + } + ], + "rules": [ { "conditions": [], "endpoint": { @@ -313,79 +227,88 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://transcribestreaming.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { "conditions": [], - "endpoint": { - "url": "https://transcribestreaming.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://transcribestreaming.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://transcribestreaming.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transcribe-streaming/2017-10-26/endpoint-tests-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transcribe-streaming/2017-10-26/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,94 +1,42 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-gov-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.us-gov-east-1.api.aws" + "url": "https://transcribestreaming.ap-northeast-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "ap-northeast-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.us-gov-east-1.amazonaws.com" + "url": "https://transcribestreaming.ap-northeast-2.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "ap-northeast-2", "UseFIPS": false, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.ca-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.ca-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ca-central-1" + "UseDualStack": false } }, { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.ca-central-1.api.aws" + "url": "https://transcribestreaming.ap-southeast-2.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "ap-southeast-2", "UseFIPS": false, - "Region": "ca-central-1" + "UseDualStack": false } }, { @@ -99,48 +47,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "ca-central-1", "UseFIPS": false, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.eu-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.eu-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.eu-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { @@ -151,100 +60,22 @@ } }, "params": { - "UseDualStack": false, + "Region": "eu-central-1", "UseFIPS": false, - "Region": "eu-central-1" + "UseDualStack": false } }, { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.us-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.us-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.eu-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.eu-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.eu-west-2.api.aws" + "url": "https://transcribestreaming.eu-west-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "eu-west-1", "UseFIPS": false, - "Region": "eu-west-2" + "UseDualStack": false } }, { @@ -255,217 +86,126 @@ } }, "params": { - "UseDualStack": false, + "Region": "eu-west-2", "UseFIPS": false, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.eu-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.eu-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.eu-west-1.api.aws" + "url": "https://transcribestreaming.sa-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "sa-east-1", "UseFIPS": false, - "Region": "eu-west-1" + "UseDualStack": false } }, { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.eu-west-1.amazonaws.com" + "url": "https://transcribestreaming.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.ap-northeast-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.ap-northeast-2.api.aws" + "url": "https://transcribestreaming.us-east-2.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-2", "UseFIPS": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.ap-northeast-2.amazonaws.com" + "url": "https://transcribestreaming.us-west-2.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-west-2", "UseFIPS": false, - "Region": "ap-northeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://transcribestreaming-fips.ap-northeast-1.api.aws" + "url": "https://transcribestreaming-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": true, - "Region": "ap-northeast-1" + "UseDualStack": true } }, { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming-fips.ap-northeast-1.amazonaws.com" + "url": "https://transcribestreaming-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.ap-northeast-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "ap-northeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.ap-northeast-1.amazonaws.com" + "url": "https://transcribestreaming.us-east-1.api.aws" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.sa-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "sa-east-1" - } - }, - { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.sa-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "sa-east-1" + "UseDualStack": true } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.sa-east-1.api.aws" + "url": "https://transcribestreaming.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.sa-east-1.amazonaws.com" + "url": "https://transcribestreaming.cn-northwest-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-northwest-1", "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { @@ -476,9 +216,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -489,9 +229,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -502,61 +242,22 @@ } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.cn-north-1.amazonaws.com.cn" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "cn-north-1" - } - }, - { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-gov-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-gov-west-1" - } - }, - { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-gov-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-gov-west-1" - } - }, - { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.us-gov-west-1.api.aws" + "url": "https://transcribestreaming.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { @@ -567,61 +268,61 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-gov-west-1", "UseFIPS": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://transcribestreaming-fips.ap-southeast-2.api.aws" + "url": "https://transcribestreaming-fips.us-gov-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "ap-southeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming-fips.ap-southeast-2.amazonaws.com" + "url": "https://transcribestreaming-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.ap-southeast-2.api.aws" + "url": "https://transcribestreaming.us-gov-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "ap-southeast-2" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.ap-southeast-2.amazonaws.com" + "url": "https://transcribestreaming.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { @@ -630,9 +331,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -643,9 +344,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -654,191 +355,83 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://transcribestreaming.us-iso-east-1.c2s.ic.gov" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-iso-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.us-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.us-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-east-1" - } - }, - { - "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.us-east-2.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-east-2" + "UseDualStack": true } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming-fips.us-east-2.amazonaws.com" + "url": "https://transcribestreaming-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-east-2" + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://transcribestreaming.us-east-2.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-east-2" + "UseDualStack": true } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.us-east-2.amazonaws.com" + "url": "https://transcribestreaming.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-east-2" - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.cn-northwest-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "cn-northwest-1" - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming-fips.cn-northwest-1.amazonaws.com.cn" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "cn-northwest-1" + "UseDualStack": false } }, { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://transcribestreaming.cn-northwest-1.api.amazonwebservices.com.cn" + "url": "https://example.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": false, - "Region": "cn-northwest-1" - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://transcribestreaming.cn-northwest-1.amazonaws.com.cn" - } - }, - "params": { "UseDualStack": false, - "UseFIPS": false, - "Region": "cn-northwest-1" + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -848,9 +441,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -860,11 +453,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -23,11 +23,11 @@ "input":{"shape":"CreateAccessRequest"}, "output":{"shape":"CreateAccessResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "CreateAgreement":{ @@ -39,12 +39,12 @@ "input":{"shape":"CreateAgreementRequest"}, "output":{"shape":"CreateAgreementResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "CreateConnector":{ @@ -56,12 +56,12 @@ "input":{"shape":"CreateConnectorRequest"}, "output":{"shape":"CreateConnectorResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "CreateProfile":{ @@ -73,11 +73,11 @@ "input":{"shape":"CreateProfileRequest"}, "output":{"shape":"CreateProfileResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "CreateServer":{ @@ -89,13 +89,13 @@ "input":{"shape":"CreateServerRequest"}, "output":{"shape":"CreateServerResponse"}, "errors":[ - {"shape":"AccessDeniedException"}, - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, {"shape":"ResourceExistsException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"AccessDeniedException"} ] }, "CreateUser":{ @@ -107,11 +107,11 @@ "input":{"shape":"CreateUserRequest"}, "output":{"shape":"CreateUserResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "CreateWorkflow":{ @@ -123,12 +123,12 @@ "input":{"shape":"CreateWorkflowRequest"}, "output":{"shape":"CreateWorkflowResponse"}, "errors":[ - {"shape":"AccessDeniedException"}, - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, {"shape":"ResourceExistsException"}, - {"shape":"ThrottlingException"} + {"shape":"AccessDeniedException"} ] }, "DeleteAccess":{ @@ -139,10 +139,10 @@ }, "input":{"shape":"DeleteAccessRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteAgreement":{ @@ -153,10 +153,10 @@ }, "input":{"shape":"DeleteAgreementRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteCertificate":{ @@ -167,10 +167,10 @@ }, "input":{"shape":"DeleteCertificateRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteConnector":{ @@ -181,10 +181,10 @@ }, "input":{"shape":"DeleteConnectorRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteHostKey":{ @@ -195,11 +195,11 @@ }, "input":{"shape":"DeleteHostKeyRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteProfile":{ @@ -210,10 +210,10 @@ }, "input":{"shape":"DeleteProfileRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteServer":{ @@ -224,11 +224,11 @@ }, "input":{"shape":"DeleteServerRequest"}, "errors":[ - {"shape":"AccessDeniedException"}, - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"AccessDeniedException"} ] }, "DeleteSshPublicKey":{ @@ -239,11 +239,11 @@ }, "input":{"shape":"DeleteSshPublicKeyRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteUser":{ @@ -254,10 +254,10 @@ }, "input":{"shape":"DeleteUserRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DeleteWorkflow":{ @@ -268,11 +268,11 @@ }, "input":{"shape":"DeleteWorkflowRequest"}, "errors":[ - {"shape":"AccessDeniedException"}, - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"AccessDeniedException"} ] }, "DescribeAccess":{ @@ -284,10 +284,10 @@ "input":{"shape":"DescribeAccessRequest"}, "output":{"shape":"DescribeAccessResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeAgreement":{ @@ -299,10 +299,10 @@ "input":{"shape":"DescribeAgreementRequest"}, "output":{"shape":"DescribeAgreementResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeCertificate":{ @@ -314,10 +314,10 @@ "input":{"shape":"DescribeCertificateRequest"}, "output":{"shape":"DescribeCertificateResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeConnector":{ @@ -329,10 +329,10 @@ "input":{"shape":"DescribeConnectorRequest"}, "output":{"shape":"DescribeConnectorResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeExecution":{ @@ -344,10 +344,10 @@ "input":{"shape":"DescribeExecutionRequest"}, "output":{"shape":"DescribeExecutionResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeHostKey":{ @@ -359,10 +359,10 @@ "input":{"shape":"DescribeHostKeyRequest"}, "output":{"shape":"DescribeHostKeyResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeProfile":{ @@ -374,10 +374,10 @@ "input":{"shape":"DescribeProfileRequest"}, "output":{"shape":"DescribeProfileResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeSecurityPolicy":{ @@ -389,10 +389,10 @@ "input":{"shape":"DescribeSecurityPolicyRequest"}, "output":{"shape":"DescribeSecurityPolicyResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeServer":{ @@ -404,10 +404,10 @@ "input":{"shape":"DescribeServerRequest"}, "output":{"shape":"DescribeServerResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeUser":{ @@ -419,10 +419,10 @@ "input":{"shape":"DescribeUserRequest"}, "output":{"shape":"DescribeUserResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "DescribeWorkflow":{ @@ -434,10 +434,10 @@ "input":{"shape":"DescribeWorkflowRequest"}, "output":{"shape":"DescribeWorkflowResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "ImportCertificate":{ @@ -449,10 +449,10 @@ "input":{"shape":"ImportCertificateRequest"}, "output":{"shape":"ImportCertificateResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "ImportHostKey":{ @@ -464,12 +464,12 @@ "input":{"shape":"ImportHostKeyRequest"}, "output":{"shape":"ImportHostKeyResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "ImportSshPublicKey":{ @@ -481,12 +481,12 @@ "input":{"shape":"ImportSshPublicKeyRequest"}, "output":{"shape":"ImportSshPublicKeyResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "ListAccesses":{ @@ -498,11 +498,11 @@ "input":{"shape":"ListAccessesRequest"}, "output":{"shape":"ListAccessesResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListAgreements":{ @@ -514,11 +514,11 @@ "input":{"shape":"ListAgreementsRequest"}, "output":{"shape":"ListAgreementsResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListCertificates":{ @@ -530,11 +530,11 @@ "input":{"shape":"ListCertificatesRequest"}, "output":{"shape":"ListCertificatesResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListConnectors":{ @@ -546,11 +546,11 @@ "input":{"shape":"ListConnectorsRequest"}, "output":{"shape":"ListConnectorsResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListExecutions":{ @@ -562,11 +562,11 @@ "input":{"shape":"ListExecutionsRequest"}, "output":{"shape":"ListExecutionsResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListHostKeys":{ @@ -578,11 +578,11 @@ "input":{"shape":"ListHostKeysRequest"}, "output":{"shape":"ListHostKeysResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListProfiles":{ @@ -594,11 +594,11 @@ "input":{"shape":"ListProfilesRequest"}, "output":{"shape":"ListProfilesResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListSecurityPolicies":{ @@ -610,10 +610,10 @@ "input":{"shape":"ListSecurityPoliciesRequest"}, "output":{"shape":"ListSecurityPoliciesResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, - {"shape":"InvalidRequestException"} + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListServers":{ @@ -625,10 +625,10 @@ "input":{"shape":"ListServersRequest"}, "output":{"shape":"ListServersResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, - {"shape":"InvalidRequestException"} + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListTagsForResource":{ @@ -640,10 +640,10 @@ "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, - {"shape":"InvalidRequestException"} + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListUsers":{ @@ -655,11 +655,11 @@ "input":{"shape":"ListUsersRequest"}, "output":{"shape":"ListUsersResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "ListWorkflows":{ @@ -671,10 +671,10 @@ "input":{"shape":"ListWorkflowsRequest"}, "output":{"shape":"ListWorkflowsResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidRequestException"}, {"shape":"InternalServiceError"}, - {"shape":"InvalidNextTokenException"}, - {"shape":"InvalidRequestException"} + {"shape":"ServiceUnavailableException"}, + {"shape":"InvalidNextTokenException"} ] }, "SendWorkflowStepState":{ @@ -686,12 +686,12 @@ "input":{"shape":"SendWorkflowStepStateRequest"}, "output":{"shape":"SendWorkflowStepStateResponse"}, "errors":[ - {"shape":"AccessDeniedException"}, - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"AccessDeniedException"} ] }, "StartFileTransfer":{ @@ -703,11 +703,11 @@ "input":{"shape":"StartFileTransferRequest"}, "output":{"shape":"StartFileTransferResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "StartServer":{ @@ -718,11 +718,11 @@ }, "input":{"shape":"StartServerRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "StopServer":{ @@ -733,11 +733,11 @@ }, "input":{"shape":"StopServerRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "TagResource":{ @@ -748,10 +748,10 @@ }, "input":{"shape":"TagResourceRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "TestConnection":{ @@ -763,10 +763,10 @@ "input":{"shape":"TestConnectionRequest"}, "output":{"shape":"TestConnectionResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "TestIdentityProvider":{ @@ -778,10 +778,10 @@ "input":{"shape":"TestIdentityProviderRequest"}, "output":{"shape":"TestIdentityProviderResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "UntagResource":{ @@ -792,10 +792,10 @@ }, "input":{"shape":"UntagResourceRequest"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "UpdateAccess":{ @@ -807,12 +807,12 @@ "input":{"shape":"UpdateAccessRequest"}, "output":{"shape":"UpdateAccessResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "UpdateAgreement":{ @@ -824,12 +824,12 @@ "input":{"shape":"UpdateAgreementRequest"}, "output":{"shape":"UpdateAgreementResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "UpdateCertificate":{ @@ -841,11 +841,11 @@ "input":{"shape":"UpdateCertificateRequest"}, "output":{"shape":"UpdateCertificateResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "UpdateConnector":{ @@ -857,12 +857,12 @@ "input":{"shape":"UpdateConnectorRequest"}, "output":{"shape":"UpdateConnectorResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, - {"shape":"ResourceExistsException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ResourceExistsException"} ] }, "UpdateHostKey":{ @@ -874,11 +874,11 @@ "input":{"shape":"UpdateHostKeyRequest"}, "output":{"shape":"UpdateHostKeyResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "UpdateProfile":{ @@ -890,11 +890,11 @@ "input":{"shape":"UpdateProfileRequest"}, "output":{"shape":"UpdateProfileResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] }, "UpdateServer":{ @@ -906,14 +906,14 @@ "input":{"shape":"UpdateServerRequest"}, "output":{"shape":"UpdateServerResponse"}, "errors":[ - {"shape":"AccessDeniedException"}, - {"shape":"ServiceUnavailableException"}, {"shape":"ConflictException"}, - {"shape":"InternalServiceError"}, + {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"}, {"shape":"ResourceExistsException"}, - {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"AccessDeniedException"} ] }, "UpdateUser":{ @@ -925,11 +925,11 @@ "input":{"shape":"UpdateUserRequest"}, "output":{"shape":"UpdateUserResponse"}, "errors":[ - {"shape":"ServiceUnavailableException"}, - {"shape":"InternalServiceError"}, - {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ThrottlingException"} + {"shape":"InvalidRequestException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceError"}, + {"shape":"ServiceUnavailableException"} ] } }, @@ -939,8 +939,7 @@ "members":{ "Message":{"shape":"ServiceErrorMessage"} }, - "exception":true, - "synthetic":true + "exception":true }, "AddressAllocationId":{"type":"string"}, "AddressAllocationIds":{ @@ -951,7 +950,7 @@ "type":"string", "max":19, "min":19, - "pattern":"^a-([0-9a-f]{17})$" + "pattern":"a-([0-9a-f]{17})" }, "AgreementStatusType":{ "type":"string", @@ -964,7 +963,7 @@ "type":"string", "max":1600, "min":20, - "pattern":"arn:.*" + "pattern":"arn:\\S+" }, "As2ConnectorConfig":{ "type":"structure", @@ -989,7 +988,7 @@ "type":"string", "max":128, "min":1, - "pattern":"^[\\p{Print}\\s]*" + "pattern":"[\\p{Print}\\s]*" }, "As2Transport":{ "type":"string", @@ -1012,31 +1011,32 @@ "type":"string", "max":48, "min":0, - "pattern":"^[\\p{XDigit}{2}:?]*" + "pattern":"[\\p{XDigit}{2}:?]*" }, "Certificate":{ "type":"string", - "max":1600 + "max":1600, + "min":0 }, "CertificateBodyType":{ "type":"string", "max":16384, "min":1, - "pattern":"^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*", + "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*", "sensitive":true }, "CertificateChainType":{ "type":"string", "max":2097152, "min":1, - "pattern":"^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*", + "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*", "sensitive":true }, "CertificateId":{ "type":"string", "max":22, "min":22, - "pattern":"^cert-([0-9a-f]{17})$" + "pattern":"cert-([0-9a-f]{17})" }, "CertificateIds":{ "type":"list", @@ -1083,7 +1083,7 @@ "type":"string", "max":19, "min":19, - "pattern":"^c-([0-9a-f]{17})$" + "pattern":"c-([0-9a-f]{17})" }, "CopyStepDetails":{ "type":"structure", @@ -1202,7 +1202,7 @@ "HostKey":{"shape":"HostKey"}, "IdentityProviderDetails":{"shape":"IdentityProviderDetails"}, "IdentityProviderType":{"shape":"IdentityProviderType"}, - "LoggingRole":{"shape":"Role"}, + "LoggingRole":{"shape":"NullableRole"}, "PostAuthenticationLoginBanner":{"shape":"PostAuthenticationLoginBanner"}, "PreAuthenticationLoginBanner":{"shape":"PreAuthenticationLoginBanner"}, "Protocols":{"shape":"Protocols"}, @@ -1210,7 +1210,8 @@ "SecurityPolicyName":{"shape":"SecurityPolicyName"}, "Tags":{"shape":"Tags"}, "WorkflowDetails":{"shape":"WorkflowDetails"}, - "StructuredLogDestinations":{"shape":"StructuredLogDestinations"} + "StructuredLogDestinations":{"shape":"StructuredLogDestinations"}, + "S3StorageOptions":{"shape":"S3StorageOptions"} } }, "CreateServerResponse":{ @@ -1287,10 +1288,12 @@ "CustomStepTarget":{ "type":"string", "max":170, - "pattern":"arn:[a-z-]+:lambda:.*$" + "min":0, + "pattern":"arn:[a-z-]+:lambda:.*" }, "CustomStepTimeoutSeconds":{ "type":"integer", + "box":true, "max":1800, "min":1 }, @@ -1719,7 +1722,7 @@ "HostKeyFingerprint":{"shape":"HostKeyFingerprint"}, "IdentityProviderDetails":{"shape":"IdentityProviderDetails"}, "IdentityProviderType":{"shape":"IdentityProviderType"}, - "LoggingRole":{"shape":"Role"}, + "LoggingRole":{"shape":"NullableRole"}, "PostAuthenticationLoginBanner":{"shape":"PostAuthenticationLoginBanner"}, "PreAuthenticationLoginBanner":{"shape":"PreAuthenticationLoginBanner"}, "Protocols":{"shape":"Protocols"}, @@ -1729,7 +1732,8 @@ "Tags":{"shape":"Tags"}, "UserCount":{"shape":"UserCount"}, "WorkflowDetails":{"shape":"WorkflowDetails"}, - "StructuredLogDestinations":{"shape":"StructuredLogDestinations"} + "StructuredLogDestinations":{"shape":"StructuredLogDestinations"}, + "S3StorageOptions":{"shape":"S3StorageOptions"} } }, "DescribedUser":{ @@ -1764,13 +1768,20 @@ "type":"string", "max":200, "min":1, - "pattern":"^[\\p{Graph}]+" + "pattern":"[\\p{Graph}]+" }, "DirectoryId":{ "type":"string", "max":12, "min":12, - "pattern":"^d-[0-9a-f]{10}$" + "pattern":"d-[0-9a-f]{10}" + }, + "DirectoryListingOptimization":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] }, "Domain":{ "type":"string", @@ -1789,13 +1800,14 @@ "EfsFileSystemId":{ "type":"string", "max":128, - "pattern":"^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:(access-point/fsap|file-system/fs)-[0-9a-f]{8,40}|fs(ap)?-[0-9a-f]{8,40})$" + "min":0, + "pattern":"(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:(access-point/fsap|file-system/fs)-[0-9a-f]{8,40}|fs(ap)?-[0-9a-f]{8,40})" }, "EfsPath":{ "type":"string", "max":65536, "min":1, - "pattern":"^[^\\x00]+$" + "pattern":"[^\\x00]+" }, "EncryptionAlg":{ "type":"string", @@ -1857,7 +1869,7 @@ "type":"string", "max":36, "min":36, - "pattern":"^[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}$" + "pattern":"[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}" }, "ExecutionResults":{ "type":"structure", @@ -1893,7 +1905,7 @@ "type":"string", "max":256, "min":1, - "pattern":"^S-1-[\\d-]+$" + "pattern":"S-1-[\\d-]+" }, "FileLocation":{ "type":"structure", @@ -1906,7 +1918,7 @@ "type":"string", "max":1024, "min":1, - "pattern":"^(.)+" + "pattern":"(.)+" }, "FilePaths":{ "type":"list", @@ -1914,17 +1926,21 @@ "max":10, "min":1 }, - "Fips":{"type":"boolean"}, + "Fips":{ + "type":"boolean", + "box":true + }, "Function":{ "type":"string", "max":170, "min":1, - "pattern":"^arn:[a-z-]+:lambda:.*$" + "pattern":"arn:[a-z-]+:lambda:.*" }, "HomeDirectory":{ "type":"string", "max":1024, - "pattern":"^$|/.*" + "min":0, + "pattern":"(|/.*)" }, "HomeDirectoryMapEntry":{ "type":"structure", @@ -1934,13 +1950,14 @@ ], "members":{ "Entry":{"shape":"MapEntry"}, - "Target":{"shape":"MapTarget"} + "Target":{"shape":"MapTarget"}, + "Type":{"shape":"MapType"} } }, "HomeDirectoryMappings":{ "type":"list", "member":{"shape":"HomeDirectoryMapEntry"}, - "max":50, + "max":50000, "min":1 }, "HomeDirectoryType":{ @@ -1953,20 +1970,21 @@ "HostKey":{ "type":"string", "max":4096, + "min":0, "sensitive":true }, "HostKeyDescription":{ "type":"string", "max":200, "min":0, - "pattern":"^[\\p{Print}]*$" + "pattern":"[\\p{Print}]*" }, "HostKeyFingerprint":{"type":"string"}, "HostKeyId":{ "type":"string", "max":25, "min":25, - "pattern":"^hostkey-[0-9a-f]{17}$" + "pattern":"hostkey-[0-9a-f]{17}" }, "HostKeyType":{"type":"string"}, "IdentityProviderDetails":{ @@ -2465,15 +2483,25 @@ "MapEntry":{ "type":"string", "max":1024, - "pattern":"^/.*" + "min":0, + "pattern":"/.*" }, "MapTarget":{ "type":"string", "max":1024, - "pattern":"^/.*" + "min":0, + "pattern":"/.*" + }, + "MapType":{ + "type":"string", + "enum":[ + "FILE", + "DIRECTORY" + ] }, "MaxResults":{ "type":"integer", + "box":true, "max":1000, "min":1 }, @@ -2500,7 +2528,7 @@ "type":"string", "max":1024, "min":1, - "pattern":"^[\\p{Print}\\p{Blank}]+" + "pattern":"[\\p{Print}\\p{Blank}]+" }, "NextToken":{ "type":"string", @@ -2510,17 +2538,20 @@ "NullableRole":{ "type":"string", "max":2048, - "pattern":"^$|arn:.*role/.*" + "min":0, + "pattern":"(|arn:.*role/\\S+)" }, "OnPartialUploadWorkflowDetails":{ "type":"list", "member":{"shape":"WorkflowDetail"}, - "max":1 + "max":1, + "min":0 }, "OnUploadWorkflowDetails":{ "type":"list", "member":{"shape":"WorkflowDetail"}, - "max":1 + "max":1, + "min":0 }, "OverwriteExisting":{ "type":"string", @@ -2531,14 +2562,17 @@ }, "PassiveIp":{ "type":"string", - "max":15 + "max":15, + "min":0 }, "Policy":{ "type":"string", - "max":2048 + "max":2048, + "min":0 }, "PosixId":{ "type":"long", + "box":true, "max":4294967295, "min":0 }, @@ -2556,26 +2590,28 @@ }, "PostAuthenticationLoginBanner":{ "type":"string", - "max":512, + "max":4096, + "min":0, "pattern":"[\\x09-\\x0D\\x20-\\x7E]*" }, "PreAuthenticationLoginBanner":{ "type":"string", - "max":512, + "max":4096, + "min":0, "pattern":"[\\x09-\\x0D\\x20-\\x7E]*" }, "PrivateKeyType":{ "type":"string", "max":16384, "min":1, - "pattern":"^[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*", + "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*", "sensitive":true }, "ProfileId":{ "type":"string", "max":19, "min":19, - "pattern":"^p-([0-9a-f]{17})$" + "pattern":"p-([0-9a-f]{17})" }, "ProfileType":{ "type":"string", @@ -2644,19 +2680,19 @@ "type":"string", "max":2048, "min":20, - "pattern":"arn:.*role/.*" + "pattern":"arn:.*role/\\S+" }, "S3Bucket":{ "type":"string", "max":63, "min":3, - "pattern":"^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" + "pattern":"[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]" }, "S3Etag":{ "type":"string", "max":65536, "min":1, - "pattern":"^.+$" + "pattern":".+" }, "S3FileLocation":{ "type":"structure", @@ -2677,8 +2713,15 @@ "S3Key":{ "type":"string", "max":1024, + "min":0, "pattern":"[\\P{M}\\p{M}]*" }, + "S3StorageOptions":{ + "type":"structure", + "members":{ + "DirectoryListingOptimization":{"shape":"DirectoryListingOptimization"} + } + }, "S3Tag":{ "type":"structure", "required":[ @@ -2694,12 +2737,13 @@ "type":"string", "max":128, "min":1, - "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" + "pattern":"([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)" }, "S3TagValue":{ "type":"string", "max":256, - "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" + "min":0, + "pattern":"([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)" }, "S3Tags":{ "type":"list", @@ -2711,7 +2755,7 @@ "type":"string", "max":1024, "min":1, - "pattern":"^.+$" + "pattern":".+" }, "SecondaryGids":{ "type":"list", @@ -2728,7 +2772,7 @@ "type":"string", "max":20, "min":11, - "pattern":"^sg-[0-9a-f]{8,17}$" + "pattern":"sg-[0-9a-f]{8,17}" }, "SecurityGroupIds":{ "type":"list", @@ -2737,6 +2781,7 @@ "SecurityPolicyName":{ "type":"string", "max":100, + "min":0, "pattern":"TransferSecurityPolicy-.+" }, "SecurityPolicyNames":{ @@ -2745,7 +2790,8 @@ }, "SecurityPolicyOption":{ "type":"string", - "max":50 + "max":50, + "min":0 }, "SecurityPolicyOptions":{ "type":"list", @@ -2775,7 +2821,7 @@ "type":"string", "max":19, "min":19, - "pattern":"^s-([0-9a-f]{17})$" + "pattern":"s-([0-9a-f]{17})" }, "ServiceErrorMessage":{"type":"string"}, "ServiceMetadata":{ @@ -2791,14 +2837,13 @@ "Message":{"shape":"ServiceErrorMessage"} }, "exception":true, - "fault":true, - "synthetic":true + "fault":true }, "SessionId":{ "type":"string", "max":32, "min":3, - "pattern":"^[\\w-]*$" + "pattern":"[\\w-]*" }, "SetStatOption":{ "type":"string", @@ -2847,12 +2892,14 @@ "SourceFileLocation":{ "type":"string", "max":256, - "pattern":"^\\$\\{(\\w+.)+\\w+\\}$" + "min":0, + "pattern":"\\$\\{(\\w+.)+\\w+\\}" }, "SourceIp":{ "type":"string", "max":32, - "pattern":"^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}$" + "min":0, + "pattern":"\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}" }, "SshPublicKey":{ "type":"structure", @@ -2869,19 +2916,24 @@ }, "SshPublicKeyBody":{ "type":"string", - "max":2048 + "max":2048, + "min":0 + }, + "SshPublicKeyCount":{ + "type":"integer", + "box":true }, - "SshPublicKeyCount":{"type":"integer"}, "SshPublicKeyId":{ "type":"string", "max":21, "min":21, - "pattern":"^key-[0-9a-f]{17}$" + "pattern":"key-[0-9a-f]{17}" }, "SshPublicKeys":{ "type":"list", "member":{"shape":"SshPublicKey"}, - "max":5 + "max":5, + "min":0 }, "StartFileTransferRequest":{ "type":"structure", @@ -2923,7 +2975,8 @@ "StatusCode":{"type":"integer"}, "StepResultOutputsJson":{ "type":"string", - "max":65536 + "max":65536, + "min":0 }, "StopServerRequest":{ "type":"structure", @@ -2956,7 +3009,8 @@ }, "TagKey":{ "type":"string", - "max":128 + "max":128, + "min":0 }, "TagKeys":{ "type":"list", @@ -2985,7 +3039,8 @@ }, "TagValue":{ "type":"string", - "max":256 + "max":256, + "min":0 }, "Tags":{ "type":"list", @@ -3054,7 +3109,7 @@ "type":"string", "max":512, "min":1, - "pattern":"^[0-9a-zA-Z./-]+$" + "pattern":"[0-9a-zA-Z./-]+" }, "UntagResourceRequest":{ "type":"structure", @@ -3211,7 +3266,8 @@ "SecurityPolicyName":{"shape":"SecurityPolicyName"}, "ServerId":{"shape":"ServerId"}, "WorkflowDetails":{"shape":"WorkflowDetails"}, - "StructuredLogDestinations":{"shape":"StructuredLogDestinations"} + "StructuredLogDestinations":{"shape":"StructuredLogDestinations"}, + "S3StorageOptions":{"shape":"S3StorageOptions"} } }, "UpdateServerResponse":{ @@ -3251,9 +3307,13 @@ }, "Url":{ "type":"string", - "max":255 + "max":255, + "min":0 + }, + "UserCount":{ + "type":"integer", + "box":true }, - "UserCount":{"type":"integer"}, "UserDetails":{ "type":"structure", "required":[ @@ -3270,24 +3330,26 @@ "type":"string", "max":100, "min":3, - "pattern":"^[\\w][\\w@.-]{2,99}$" + "pattern":"[\\w][\\w@.-]{2,99}" }, "UserPassword":{ "type":"string", "max":1024, + "min":0, "sensitive":true }, "VpcEndpointId":{ "type":"string", "max":22, "min":22, - "pattern":"^vpce-[0-9a-f]{17}$" + "pattern":"vpce-[0-9a-f]{17}" }, "VpcId":{"type":"string"}, "WorkflowDescription":{ "type":"string", "max":256, - "pattern":"^[\\w- ]*$" + "min":0, + "pattern":"[\\w- ]*" }, "WorkflowDetail":{ "type":"structure", @@ -3311,7 +3373,7 @@ "type":"string", "max":19, "min":19, - "pattern":"^w-([a-z0-9]{17})$" + "pattern":"w-([a-z0-9]{17})" }, "WorkflowStep":{ "type":"structure", @@ -3327,7 +3389,8 @@ "WorkflowStepName":{ "type":"string", "max":30, - "pattern":"^[\\w-]*$" + "min":0, + "pattern":"[\\w-]*" }, "WorkflowStepType":{ "type":"string", @@ -3342,7 +3405,8 @@ "WorkflowSteps":{ "type":"list", "member":{"shape":"WorkflowStep"}, - "max":8 + "max":8, + "min":0 } } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -50,7 +50,7 @@ "StartServer": "

Changes the state of a file transfer protocol-enabled server from OFFLINE to ONLINE. It has no impact on a server that is already ONLINE. An ONLINE server can accept and process file transfer jobs.

The state of STARTING indicates that the server is in an intermediate state, either not fully able to respond, or not fully online. The values of START_FAILED can indicate an error condition.

No response is returned from this call.

", "StopServer": "

Changes the state of a file transfer protocol-enabled server from ONLINE to OFFLINE. An OFFLINE server cannot accept and process file transfer jobs. Information tied to your server, such as server and user properties, are not affected by stopping your server.

Stopping the server does not reduce or impact your file transfer protocol endpoint billing; you must delete the server to stop being billed.

The state of STOPPING indicates that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of STOP_FAILED can indicate an error condition.

No response is returned from this call.

", "TagResource": "

Attaches a key-value pair to a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities.

There is no response returned from this call.

", - "TestConnection": "

Tests whether your SFTP connector is set up successfully. We highly recommend that you call this operation to test your ability to transfer files between a Transfer Family server and a trading partner's SFTP server.

", + "TestConnection": "

Tests whether your SFTP connector is set up successfully. We highly recommend that you call this operation to test your ability to transfer files between local Amazon Web Services storage and a trading partner's SFTP server.

", "TestIdentityProvider": "

If the IdentityProviderType of a file transfer protocol-enabled server is AWS_DIRECTORY_SERVICE or API_Gateway, tests whether your identity provider is set up successfully. We highly recommend that you call this operation to test your authentication method as soon as you create your server. By doing so, you can troubleshoot issues with the identity provider integration to ensure that your users can successfully use the service.

The ServerId and UserName parameters are required. The ServerProtocol, SourceIp, and UserPassword are all optional.

Note the following:

  • You cannot use TestIdentityProvider if the IdentityProviderType of your server is SERVICE_MANAGED.

  • TestIdentityProvider does not work with keys: it only accepts passwords.

  • TestIdentityProvider can test the password operation for a custom Identity Provider that handles keys and passwords.

  • If you provide any incorrect values for any parameters, the Response field is empty.

  • If you provide a server ID for a server that uses service-managed users, you get an error:

    An error occurred (InvalidRequestException) when calling the TestIdentityProvider operation: s-server-ID not configured for external auth

  • If you enter a Server ID for the --server-id parameter that does not identify an actual Transfer server, you receive the following error:

    An error occurred (ResourceNotFoundException) when calling the TestIdentityProvider operation: Unknown server.

    It is possible your sever is in a different region. You can specify a region by adding the following: --region region-code, such as --region us-east-2 to specify a server in US East (Ohio).

", "UntagResource": "

Detaches a key-value pair from a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities.

No response is returned from this call.

", "UpdateAccess": "

Allows you to update parameters for the access specified in the ServerID and ExternalID parameters.

", @@ -644,6 +644,12 @@ "IdentityProviderDetails$DirectoryId": "

The identifier of the Directory Service directory that you want to stop sharing.

" } }, + "DirectoryListingOptimization": { + "base": "

Indicates whether optimization to directory listing on S3 servers is used. Disabled by default for compatibility.

", + "refs": { + "S3StorageOptions$DirectoryListingOptimization": "

Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

By default, home directory mappings have a TYPE of DIRECTORY. If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

" + } + }, "Domain": { "base": null, "refs": { @@ -803,17 +809,17 @@ "HomeDirectory": { "base": null, "refs": { - "CreateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "CreateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", "CreateAgreementRequest$BaseDirectory": "

The landing directory (folder) for files transferred by using the AS2 protocol.

A BaseDirectory example is /DOC-EXAMPLE-BUCKET/home/mydirectory.

", - "CreateUserRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", - "DescribedAccess$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "CreateUserRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", + "DescribedAccess$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", "DescribedAgreement$BaseDirectory": "

The landing directory (folder) for files that are transferred by using the AS2 protocol.

", - "DescribedUser$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", - "ListedAccess$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", - "ListedUser$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", - "UpdateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "DescribedUser$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", + "ListedAccess$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", + "ListedUser$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", + "UpdateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

", "UpdateAgreementRequest$BaseDirectory": "

To change the landing directory (folder) for files that are transferred, provide the bucket folder that you want to use; for example, /DOC-EXAMPLE-BUCKET/home/mydirectory .

", - "UpdateUserRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

" + "UpdateUserRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH.

" } }, "HomeDirectoryMapEntry": { @@ -836,14 +842,14 @@ "HomeDirectoryType": { "base": null, "refs": { - "CreateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "CreateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "DescribedAccess$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "DescribedUser$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "ListedAccess$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "ListedUser$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "UpdateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

", - "UpdateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

" + "CreateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "CreateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "DescribedAccess$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "DescribedUser$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "ListedAccess$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "ListedUser$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "UpdateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

", + "UpdateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or Amazon EFS path as is in their file transfer protocol clients. If you set it to LOGICAL, you need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS paths visible to your users.

If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings parameter. If, on the other hand, HomeDirectoryType is PATH, you provide an absolute path using the HomeDirectory parameter. You cannot have both HomeDirectory and HomeDirectoryMappings in your template.

" } }, "HostKey": { @@ -944,7 +950,7 @@ } }, "InternalServiceError": { - "base": "

This exception is thrown when an error occurs in the Amazon Web ServicesTransfer Family service.

", + "base": "

This exception is thrown when an error occurs in the Transfer Family service.

", "refs": { } }, @@ -1219,7 +1225,13 @@ "MapTarget": { "base": null, "refs": { - "HomeDirectoryMapEntry$Target": "

Represents the map target that is used in a HomeDirectorymapEntry.

" + "HomeDirectoryMapEntry$Target": "

Represents the map target that is used in a HomeDirectoryMapEntry.

" + } + }, + "MapType": { + "base": null, + "refs": { + "HomeDirectoryMapEntry$Type": "

Specifies the type of mapping. Set the type to FILE if you want the mapping to point to a file, or DIRECTORY for the directory to point to a directory.

By default, home directory mappings have a Type of DIRECTORY when you create a Transfer Family server. You would need to explicitly set Type to FILE if you want a mapping to have a file target.

" } }, "MaxResults": { @@ -1260,7 +1272,7 @@ "InvalidRequestException$Message": null, "ResourceExistsException$Message": null, "ResourceNotFoundException$Message": null, - "TestConnectionResponse$StatusMessage": "

Returns Connection succeeded if the test is successful. Or, returns a descriptive error message if the test fails. The following list provides the details for some error messages and troubleshooting steps for each.

  • Unable to access secrets manager: Verify that your secret name aligns with the one in Transfer Role permissions.

  • Unknown Host/Connection failed: Verify the server URL in the connector configuration , and verify that the login credentials work successfully outside of the connector.

  • Private key not found: Verify that the secret exists and is formatted correctly.

  • Invalid trusted host keys: Verify that the trusted host key in the connector configuration matches the ssh-keyscan output.

", + "TestConnectionResponse$StatusMessage": "

Returns Connection succeeded if the test is successful. Or, returns a descriptive error message if the test fails. The following list provides troubleshooting details, depending on the error message that you receive.

  • Verify that your secret name aligns with the one in Transfer Role permissions.

  • Verify the server URL in the connector configuration , and verify that the login credentials work successfully outside of the connector.

  • Verify that the secret exists and is formatted correctly.

  • Verify that the trusted host key in the connector configuration matches the ssh-keyscan output.

", "TestIdentityProviderResponse$Message": "

A message that indicates whether the test was successful or not.

If an empty string is returned, the most likely cause is that the authentication failed due to an incorrect username or password.

" } }, @@ -1293,7 +1305,7 @@ "ListServersResponse$NextToken": "

When you can get additional results from the ListServers operation, a NextToken parameter is returned in the output. In a following command, you can pass in the NextToken parameter to continue listing additional servers.

", "ListTagsForResourceRequest$NextToken": "

When you request additional results from the ListTagsForResource operation, a NextToken parameter is returned in the input. You can then pass in a subsequent command to the NextToken parameter to continue listing additional tags.

", "ListTagsForResourceResponse$NextToken": "

When you can get additional results from the ListTagsForResource call, a NextToken parameter is returned in the output. You can then pass in a subsequent command to the NextToken parameter to continue listing additional tags.

", - "ListUsersRequest$NextToken": "

When you can get additional results from the ListUsers call, a NextToken parameter is returned in the output. You can then pass in a subsequent command to the NextToken parameter to continue listing additional users.

", + "ListUsersRequest$NextToken": "

If there are additional results from the ListUsers call, a NextToken parameter is returned in the output. You can then pass the NextToken to a subsequent ListUsers command, to continue listing additional users.

", "ListUsersResponse$NextToken": "

When you can get additional results from the ListUsers call, a NextToken parameter is returned in the output. You can then pass in a subsequent command to the NextToken parameter to continue listing additional users.

", "ListWorkflowsRequest$NextToken": "

ListWorkflows returns the NextToken parameter in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional workflows.

", "ListWorkflowsResponse$NextToken": "

ListWorkflows returns the NextToken parameter in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional workflows.

" @@ -1302,6 +1314,8 @@ "NullableRole": { "base": null, "refs": { + "CreateServerRequest$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.

", + "DescribedServer$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.

", "UpdateServerRequest$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.

" } }, @@ -1445,7 +1459,7 @@ } }, "ResourceExistsException": { - "base": "

The requested resource does not exist.

", + "base": "

The requested resource does not exist, or exists in a region other than the one specified for the command.

", "refs": { } }, @@ -1480,14 +1494,12 @@ "CreateAgreementRequest$AccessRole": "

Connectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.

For AS2 connectors

With AS2, you can send files by calling StartFileTransfer and specifying the file paths in the request parameter, SendFilePaths. We use the file’s parent directory (for example, for --send-file-paths /bucket/dir/file.txt, parent directory is /bucket/dir/) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the AccessRole needs to provide read and write access to the parent directory of the file location used in the StartFileTransfer request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with StartFileTransfer.

If you are using Basic authentication for your AS2 connector, the access role requires the secretsmanager:GetSecretValue permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs the kms:Decrypt permission for that key.

For SFTP connectors

Make sure that the access role provides read and write access to the parent directory of the file location that's used in the StartFileTransfer request. Additionally, make sure that the role provides secretsmanager:GetSecretValue permission to Secrets Manager.

", "CreateConnectorRequest$AccessRole": "

Connectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.

For AS2 connectors

With AS2, you can send files by calling StartFileTransfer and specifying the file paths in the request parameter, SendFilePaths. We use the file’s parent directory (for example, for --send-file-paths /bucket/dir/file.txt, parent directory is /bucket/dir/) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the AccessRole needs to provide read and write access to the parent directory of the file location used in the StartFileTransfer request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with StartFileTransfer.

If you are using Basic authentication for your AS2 connector, the access role requires the secretsmanager:GetSecretValue permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs the kms:Decrypt permission for that key.

For SFTP connectors

Make sure that the access role provides read and write access to the parent directory of the file location that's used in the StartFileTransfer request. Additionally, make sure that the role provides secretsmanager:GetSecretValue permission to Secrets Manager.

", "CreateConnectorRequest$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a connector to turn on CloudWatch logging for Amazon S3 events. When set, you can view connector activity in your CloudWatch logs.

", - "CreateServerRequest$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.

", "CreateUserRequest$Role": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "DescribedAccess$Role": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "DescribedAgreement$AccessRole": "

Connectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.

For AS2 connectors

With AS2, you can send files by calling StartFileTransfer and specifying the file paths in the request parameter, SendFilePaths. We use the file’s parent directory (for example, for --send-file-paths /bucket/dir/file.txt, parent directory is /bucket/dir/) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the AccessRole needs to provide read and write access to the parent directory of the file location used in the StartFileTransfer request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with StartFileTransfer.

If you are using Basic authentication for your AS2 connector, the access role requires the secretsmanager:GetSecretValue permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs the kms:Decrypt permission for that key.

For SFTP connectors

Make sure that the access role provides read and write access to the parent directory of the file location that's used in the StartFileTransfer request. Additionally, make sure that the role provides secretsmanager:GetSecretValue permission to Secrets Manager.

", "DescribedConnector$AccessRole": "

Connectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.

For AS2 connectors

With AS2, you can send files by calling StartFileTransfer and specifying the file paths in the request parameter, SendFilePaths. We use the file’s parent directory (for example, for --send-file-paths /bucket/dir/file.txt, parent directory is /bucket/dir/) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the AccessRole needs to provide read and write access to the parent directory of the file location used in the StartFileTransfer request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with StartFileTransfer.

If you are using Basic authentication for your AS2 connector, the access role requires the secretsmanager:GetSecretValue permission for the secret. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also needs the kms:Decrypt permission for that key.

For SFTP connectors

Make sure that the access role provides read and write access to the parent directory of the file location that's used in the StartFileTransfer request. Additionally, make sure that the role provides secretsmanager:GetSecretValue permission to Secrets Manager.

", "DescribedConnector$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a connector to turn on CloudWatch logging for Amazon S3 events. When set, you can view connector activity in your CloudWatch logs.

", "DescribedExecution$ExecutionRole": "

The IAM role associated with the execution.

", - "DescribedServer$LoggingRole": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch logs.

", "DescribedUser$Role": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "IdentityProviderDetails$InvocationRole": "

This parameter is only applicable if your IdentityProviderType is API_GATEWAY. Provides the type of InvocationRole used to authenticate the user account.

", "ListedAccess$Role": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that controls your users' access to your Amazon S3 bucket or Amazon EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or Amazon EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", @@ -1534,6 +1546,14 @@ "S3InputFileLocation$Key": "

The name assigned to the file when it was created in Amazon S3. You use the object key to retrieve the object.

" } }, + "S3StorageOptions": { + "base": "

The Amazon S3 storage options that are configured for your server.

", + "refs": { + "CreateServerRequest$S3StorageOptions": "

Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

By default, home directory mappings have a TYPE of DIRECTORY. If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

", + "DescribedServer$S3StorageOptions": "

Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

By default, home directory mappings have a TYPE of DIRECTORY. If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

", + "UpdateServerRequest$S3StorageOptions": "

Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.

By default, home directory mappings have a TYPE of DIRECTORY. If you enable this option, you would then need to explicitly set the HomeDirectoryMapEntry Type to FILE if you want a mapping to have a file target.

" + } + }, "S3Tag": { "base": "

Specifies the key-value pair that are assigned to a file during the execution of a Tagging step.

", "refs": { @@ -1573,7 +1593,7 @@ "SecretId": { "base": null, "refs": { - "SftpConnectorConfig$UserSecretId": "

The identifier for the secret (in Amazon Web Services Secrets Manager) that contains the SFTP user's private key, password, or both. The identifier can be either the Amazon Resource Name (ARN) or the name of the secret.

" + "SftpConnectorConfig$UserSecretId": "

The identifier for the secret (in Amazon Web Services Secrets Manager) that contains the SFTP user's private key, password, or both. The identifier must be the Amazon Resource Name (ARN) of the secret.

" } }, "SecurityGroupId": { @@ -1736,7 +1756,7 @@ "SftpConnectorTrustedHostKeyList": { "base": null, "refs": { - "SftpConnectorConfig$TrustedHostKeys": "

The public portion of the host key, or keys, that are used to authenticate the user to the external server to which you are connecting. You can use the ssh-keyscan command against the SFTP server to retrieve the necessary key.

The three standard SSH public key format elements are <key type>, <body base64>, and an optional <comment>, with spaces between each element.

For the trusted host key, Transfer Family accepts RSA and ECDSA keys.

  • For RSA keys, the key type is ssh-rsa.

  • For ECDSA keys, the key type is either ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521, depending on the size of the key you generated.

" + "SftpConnectorConfig$TrustedHostKeys": "

The public portion of the host key, or keys, that are used to identify the external server to which you are connecting. You can use the ssh-keyscan command against the SFTP server to retrieve the necessary key.

The three standard SSH public key format elements are <key type>, <body base64>, and an optional <comment>, with spaces between each element. Specify only the <key type> and <body base64>: do not enter the <comment> portion of the key.

For the trusted host key, Transfer Family accepts RSA and ECDSA keys.

  • For RSA keys, the <key type> string is ssh-rsa.

  • For ECDSA keys, the <key type> string is either ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521, depending on the size of the key you generated.

" } }, "SigningAlg": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,81 +2,69 @@ "pagination": { "ListAccesses": { "input_token": "NextToken", - "limit_key": "MaxResults", - "non_aggregate_keys": [ - "ServerId" - ], "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Accesses" }, "ListAgreements": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Agreements" }, "ListCertificates": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Certificates" }, "ListConnectors": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Connectors" }, "ListExecutions": { "input_token": "NextToken", - "limit_key": "MaxResults", - "non_aggregate_keys": [ - "WorkflowId" - ], "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Executions" }, "ListProfiles": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Profiles" }, "ListSecurityPolicies": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "SecurityPolicyNames" }, "ListServers": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Servers" }, "ListTagsForResource": { "input_token": "NextToken", - "limit_key": "MaxResults", - "non_aggregate_keys": [ - "Arn" - ], "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Tags" }, "ListUsers": { "input_token": "NextToken", - "limit_key": "MaxResults", - "non_aggregate_keys": [ - "ServerId" - ], "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Users" }, "ListWorkflows": { "input_token": "NextToken", - "limit_key": "MaxResults", "output_token": "NextToken", + "limit_key": "MaxResults", "result_key": "Workflows" } } -} \ No newline at end of file +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/waiters-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/waiters-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/transfer/2018-11-05/waiters-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/transfer/2018-11-05/waiters-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,45 +1,37 @@ { - "version": 2, - "waiters": { - "ServerOffline": { - "acceptors": [ - { - "argument": "Server.State", - "expected": "OFFLINE", - "matcher": "path", - "state": "success" - }, - { - "argument": "Server.State", - "expected": "STOP_FAILED", - "matcher": "path", - "state": "failure" - } - ], - "delay": 30, - "maxAttempts": 120, - "operation": "DescribeServer", - "type": "api" + "version" : 2, + "waiters" : { + "ServerOffline" : { + "delay" : 30, + "maxAttempts" : 120, + "operation" : "DescribeServer", + "acceptors" : [ { + "matcher" : "path", + "argument" : "Server.State", + "state" : "success", + "expected" : "OFFLINE" + }, { + "matcher" : "path", + "argument" : "Server.State", + "state" : "failure", + "expected" : "STOP_FAILED" + } ] }, - "ServerOnline": { - "acceptors": [ - { - "argument": "Server.State", - "expected": "ONLINE", - "matcher": "path", - "state": "success" - }, - { - "argument": "Server.State", - "expected": "START_FAILED", - "matcher": "path", - "state": "failure" - } - ], - "delay": 30, - "maxAttempts": 120, - "operation": "DescribeServer", - "type": "api" + "ServerOnline" : { + "delay" : 30, + "maxAttempts" : 120, + "operation" : "DescribeServer", + "acceptors" : [ { + "matcher" : "path", + "argument" : "Server.State", + "state" : "success", + "expected" : "ONLINE" + }, { + "matcher" : "path", + "argument" : "Server.State", + "state" : "failure", + "expected" : "START_FAILED" + } ] } } -} +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/translate/2017-07-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/translate/2017-07-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/translate/2017-07-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/translate/2017-07-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -331,6 +331,10 @@ "min":1, "pattern":"[\\P{M}\\p{M}]{1,10000}" }, + "Brevity":{ + "type":"string", + "enum":["ON"] + }, "ClientTokenString":{ "type":"string", "max":64, @@ -767,10 +771,6 @@ }, "ParallelDataConfig":{ "type":"structure", - "required":[ - "S3Uri", - "Format" - ], "members":{ "S3Uri":{"shape":"S3Uri"}, "Format":{"shape":"ParallelDataFormat"} @@ -1187,7 +1187,8 @@ "type":"structure", "members":{ "Formality":{"shape":"Formality"}, - "Profanity":{"shape":"Profanity"} + "Profanity":{"shape":"Profanity"}, + "Brevity":{"shape":"Brevity"} } }, "UnboundedLengthString":{"type":"string"}, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/translate/2017-07-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/translate/2017-07-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/translate/2017-07-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/translate/2017-07-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -17,7 +17,7 @@ "StartTextTranslationJob": "

Starts an asynchronous batch translation job. Use batch translation jobs to translate large volumes of text across multiple documents at once. For batch translation, you can input documents with different source languages (specify auto as the source language). You can specify one or more target languages. Batch translation translates each input document into each of the target languages. For more information, see Asynchronous batch processing.

Batch translation jobs can be described with the DescribeTextTranslationJob operation, listed with the ListTextTranslationJobs operation, and stopped with the StopTextTranslationJob operation.

", "StopTextTranslationJob": "

Stops an asynchronous batch translation job that is in progress.

If the job's state is IN_PROGRESS, the job will be marked for termination and put into the STOP_REQUESTED state. If the job completes before it can be stopped, it is put into the COMPLETED state. Otherwise, the job is put into the STOPPED state.

Asynchronous batch translation jobs are started with the StartTextTranslationJob operation. You can use the DescribeTextTranslationJob or ListTextTranslationJobs operations to get a batch translation job's JobId.

", "TagResource": "

Associates a specific tag with a resource. A tag is a key-value pair that adds as a metadata to a resource. For more information, see Tagging your resources.

", - "TranslateDocument": "

Translates the input document from the source language to the target language. This synchronous operation supports plain text or HTML for the input document. TranslateDocument supports translations from English to any supported language, and from any supported language to English. Therefore, specify either the source language code or the target language code as “en” (English).

TranslateDocument does not support language auto-detection.

If you set the Formality parameter, the request will fail if the target language does not support formality. For a list of target languages that support formality, see Setting formality.

", + "TranslateDocument": "

Translates the input document from the source language to the target language. This synchronous operation supports text, HTML, or Word documents as the input document. TranslateDocument supports translations from English to any supported language, and from any supported language to English. Therefore, specify either the source language code or the target language code as “en” (English).

If you set the Formality parameter, the request will fail if the target language does not support formality. For a list of target languages that support formality, see Setting formality.

", "TranslateText": "

Translates input text from the source language to the target language. For a list of available languages and language codes, see Supported languages.

", "UntagResource": "

Removes a specific tag associated with an Amazon Translate resource. For more information, see Tagging your resources.

", "UpdateParallelData": "

Updates a previously created parallel data resource by importing a new input file from Amazon S3.

" @@ -42,6 +42,12 @@ "TranslateTextRequest$Text": "

The text to translate. The text string can be a maximum of 10,000 bytes long. Depending on your character set, this may be fewer than 10,000 characters.

" } }, + "Brevity": { + "base": null, + "refs": { + "TranslationSettings$Brevity": "

When you turn on brevity, Amazon Translate reduces the length of the translation output for most translations (when compared with the same translation with brevity turned off). By default, brevity is turned off.

If you turn on brevity for a translation request with an unsupported language pair, the translation proceeds with the brevity setting turned off.

For the language pairs that brevity supports, see Using brevity in the Amazon Translate Developer Guide.

" + } + }, "ClientTokenString": { "base": null, "refs": { @@ -168,7 +174,7 @@ "Formality": { "base": null, "refs": { - "TranslationSettings$Formality": "

You can optionally specify the desired level of formality for translations to supported target languages. The formality setting controls the level of formal language usage (also known as register) in the translation output. You can set the value to informal or formal. If you don't specify a value for formality, or if the target language doesn't support formality, the translation will ignore the formality setting.

If you specify multiple target languages for the job, translate ignores the formality setting for any unsupported target language.

For a list of target languages that support formality, see Supported languages in the Amazon Translate Developer Guide.

" + "TranslationSettings$Formality": "

You can specify the desired level of formality for translations to supported target languages. The formality setting controls the level of formal language usage (also known as register) in the translation output. You can set the value to informal or formal. If you don't specify a value for formality, or if the target language doesn't support formality, the translation will ignore the formality setting.

If you specify multiple target languages for the job, translate ignores the formality setting for any unsupported target language.

For a list of target languages that support formality, see Supported languages in the Amazon Translate Developer Guide.

" } }, "GetParallelDataRequest": { @@ -296,7 +302,7 @@ "TargetLanguageCodeStringList$member": null, "TerminologyProperties$SourceLanguageCode": "

The language code for the source text of the translation request for which the custom terminology is being used.

", "TextTranslationJobProperties$SourceLanguageCode": "

The language code of the language of the source text. The language must be a language supported by Amazon Translate.

", - "TranslateDocumentRequest$SourceLanguageCode": "

The language code for the language of the source text. Do not use auto, because TranslateDocument does not support language auto-detection. For a list of supported language codes, see Supported languages.

", + "TranslateDocumentRequest$SourceLanguageCode": "

The language code for the language of the source text. For a list of supported language codes, see Supported languages.

To have Amazon Translate determine the source language of your text, you can specify auto in the SourceLanguageCode field. If you specify auto, Amazon Translate will call Amazon Comprehend to determine the source language.

If you specify auto, you must send the TranslateDocument request in a region that supports Amazon Comprehend. Otherwise, the request returns an error indicating that autodetect is not supported.

", "TranslateDocumentRequest$TargetLanguageCode": "

The language code requested for the translated document. For a list of supported language codes, see Supported languages.

", "TranslateDocumentResponse$SourceLanguageCode": "

The language code of the source document.

", "TranslateDocumentResponse$TargetLanguageCode": "

The language code of the translated document.

", @@ -482,7 +488,7 @@ "Profanity": { "base": null, "refs": { - "TranslationSettings$Profanity": "

Enable the profanity setting if you want Amazon Translate to mask profane words and phrases in your translation output.

To mask profane words and phrases, Amazon Translate replaces them with the grawlix string “?$#@$“. This 5-character sequence is used for each profane word or phrase, regardless of the length or number of words.

Amazon Translate doesn't detect profanity in all of its supported languages. For languages that don't support profanity detection, see Unsupported languages in the Amazon Translate Developer Guide.

If you specify multiple target languages for the job, all the target languages must support profanity masking. If any of the target languages don't support profanity masking, the translation job won't mask profanity for any target language.

" + "TranslationSettings$Profanity": "

You can enable the profanity setting if you want to mask profane words and phrases in your translation output.

To mask profane words and phrases, Amazon Translate replaces them with the grawlix string “?$#@$“. This 5-character sequence is used for each profane word or phrase, regardless of the length or number of words.

Amazon Translate doesn't detect profanity in all of its supported languages. For languages that don't support profanity detection, see Unsupported languages in the Amazon Translate Developer Guide.

If you specify multiple target languages for the job, all the target languages must support profanity masking. If any of the target languages don't support profanity masking, the translation job won't mask profanity for any target language.

" } }, "ResourceArn": { @@ -787,13 +793,13 @@ } }, "TranslationSettings": { - "base": "

Settings to configure your translation output, including the option to set the formality level of the output text and the option to mask profane words and phrases.

", + "base": "

Settings to configure your translation output. You can configure the following options:

  • Brevity: reduces the length of the translation output for most translations. Available for TranslateText only.

  • Formality: sets the formality level of the translation output.

  • Profanity: masks profane words and phrases in the translation output.

", "refs": { - "StartTextTranslationJobRequest$Settings": "

Settings to configure your translation output, including the option to set the formality level of the output text and the option to mask profane words and phrases.

", + "StartTextTranslationJobRequest$Settings": "

Settings to configure your translation output. You can configure the following options:

  • Brevity: not supported.

  • Formality: sets the formality level of the output text.

  • Profanity: masks profane words and phrases in your translation output.

", "TextTranslationJobProperties$Settings": "

Settings that modify the translation output.

", - "TranslateDocumentRequest$Settings": null, + "TranslateDocumentRequest$Settings": "

Settings to configure your translation output. You can configure the following options:

  • Brevity: not supported.

  • Formality: sets the formality level of the output text.

  • Profanity: masks profane words and phrases in your translation output.

", "TranslateDocumentResponse$AppliedSettings": null, - "TranslateTextRequest$Settings": "

Settings to configure your translation output, including the option to set the formality level of the output text and the option to mask profane words and phrases.

", + "TranslateTextRequest$Settings": "

Settings to configure your translation output. You can configure the following options:

  • Brevity: reduces the length of the translated output for most translations.

  • Formality: sets the formality level of the output text.

  • Profanity: masks profane words and phrases in your translation output.

", "TranslateTextResponse$AppliedSettings": "

Optional settings that modify the translation output.

" } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/translate/2017-07-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/translate/2017-07-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/translate/2017-07-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/translate/2017-07-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://translate-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://translate-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://translate-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://translate-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://translate.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://translate.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://translate.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://translate.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1168 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-09-15", + "endpointPrefix":"trustedadvisor", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"TrustedAdvisor Public API", + "serviceId":"TrustedAdvisor", + "signatureVersion":"v4", + "signingName":"trustedadvisor", + "uid":"trustedadvisor-2022-09-15" + }, + "operations":{ + "GetOrganizationRecommendation":{ + "name":"GetOrganizationRecommendation", + "http":{ + "method":"GET", + "requestUri":"/v1/organization-recommendations/{organizationRecommendationIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetOrganizationRecommendationRequest"}, + "output":{"shape":"GetOrganizationRecommendationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetRecommendation":{ + "name":"GetRecommendation", + "http":{ + "method":"GET", + "requestUri":"/v1/recommendations/{recommendationIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetRecommendationRequest"}, + "output":{"shape":"GetRecommendationResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListChecks":{ + "name":"ListChecks", + "http":{ + "method":"GET", + "requestUri":"/v1/checks", + "responseCode":200 + }, + "input":{"shape":"ListChecksRequest"}, + "output":{"shape":"ListChecksResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListOrganizationRecommendationAccounts":{ + "name":"ListOrganizationRecommendationAccounts", + "http":{ + "method":"GET", + "requestUri":"/v1/organization-recommendations/{organizationRecommendationIdentifier}/accounts", + "responseCode":200 + }, + "input":{"shape":"ListOrganizationRecommendationAccountsRequest"}, + "output":{"shape":"ListOrganizationRecommendationAccountsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListOrganizationRecommendationResources":{ + "name":"ListOrganizationRecommendationResources", + "http":{ + "method":"GET", + "requestUri":"/v1/organization-recommendations/{organizationRecommendationIdentifier}/resources", + "responseCode":200 + }, + "input":{"shape":"ListOrganizationRecommendationResourcesRequest"}, + "output":{"shape":"ListOrganizationRecommendationResourcesResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListOrganizationRecommendations":{ + "name":"ListOrganizationRecommendations", + "http":{ + "method":"GET", + "requestUri":"/v1/organization-recommendations", + "responseCode":200 + }, + "input":{"shape":"ListOrganizationRecommendationsRequest"}, + "output":{"shape":"ListOrganizationRecommendationsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListRecommendationResources":{ + "name":"ListRecommendationResources", + "http":{ + "method":"GET", + "requestUri":"/v1/recommendations/{recommendationIdentifier}/resources", + "responseCode":200 + }, + "input":{"shape":"ListRecommendationResourcesRequest"}, + "output":{"shape":"ListRecommendationResourcesResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListRecommendations":{ + "name":"ListRecommendations", + "http":{ + "method":"GET", + "requestUri":"/v1/recommendations", + "responseCode":200 + }, + "input":{"shape":"ListRecommendationsRequest"}, + "output":{"shape":"ListRecommendationsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateOrganizationRecommendationLifecycle":{ + "name":"UpdateOrganizationRecommendationLifecycle", + "http":{ + "method":"PUT", + "requestUri":"/v1/organization-recommendations/{organizationRecommendationIdentifier}/lifecycle", + "responseCode":200 + }, + "input":{"shape":"UpdateOrganizationRecommendationLifecycleRequest"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "UpdateRecommendationLifecycle":{ + "name":"UpdateRecommendationLifecycle", + "http":{ + "method":"PUT", + "requestUri":"/v1/recommendations/{recommendationIdentifier}/lifecycle", + "responseCode":200 + }, + "input":{"shape":"UpdateRecommendationLifecycleRequest"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "AccountId":{ + "type":"string", + "max":12, + "min":12, + "pattern":"^\\d+$" + }, + "AccountRecommendationArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor::\\d{12}:recommendation\\/[\\w-]+$" + }, + "AccountRecommendationIdentifier":{ + "type":"string", + "max":200, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor::\\d{12}:recommendation\\/[\\w-]+$" + }, + "AccountRecommendationLifecycleSummary":{ + "type":"structure", + "members":{ + "accountId":{"shape":"AccountId"}, + "accountRecommendationArn":{"shape":"AccountRecommendationArn"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "lifecycleStage":{"shape":"RecommendationLifecycleStage"}, + "updateReason":{"shape":"RecommendationUpdateReason"}, + "updateReasonCode":{"shape":"UpdateRecommendationLifecycleStageReasonCode"}, + "updatedOnBehalfOf":{"shape":"String"}, + "updatedOnBehalfOfJobTitle":{"shape":"String"} + } + }, + "AccountRecommendationLifecycleSummaryList":{ + "type":"list", + "member":{"shape":"AccountRecommendationLifecycleSummary"} + }, + "CheckArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor:::check\\/[\\w-]+$" + }, + "CheckIdentifier":{ + "type":"string", + "max":64, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor:::check\\/[\\w-]+$" + }, + "CheckSummary":{ + "type":"structure", + "required":[ + "arn", + "awsServices", + "description", + "id", + "metadata", + "name", + "pillars", + "source" + ], + "members":{ + "arn":{"shape":"CheckArn"}, + "awsServices":{"shape":"RecommendationAwsServiceList"}, + "description":{"shape":"String"}, + "id":{"shape":"String"}, + "metadata":{"shape":"StringMap"}, + "name":{"shape":"String"}, + "pillars":{"shape":"RecommendationPillarList"}, + "source":{"shape":"RecommendationSource"} + } + }, + "CheckSummaryList":{ + "type":"list", + "member":{"shape":"CheckSummary"} + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "Double":{ + "type":"double", + "box":true + }, + "GetOrganizationRecommendationRequest":{ + "type":"structure", + "required":["organizationRecommendationIdentifier"], + "members":{ + "organizationRecommendationIdentifier":{ + "shape":"OrganizationRecommendationIdentifier", + "location":"uri", + "locationName":"organizationRecommendationIdentifier" + } + } + }, + "GetOrganizationRecommendationResponse":{ + "type":"structure", + "members":{ + "organizationRecommendation":{"shape":"OrganizationRecommendation"} + } + }, + "GetRecommendationRequest":{ + "type":"structure", + "required":["recommendationIdentifier"], + "members":{ + "recommendationIdentifier":{ + "shape":"AccountRecommendationIdentifier", + "location":"uri", + "locationName":"recommendationIdentifier" + } + } + }, + "GetRecommendationResponse":{ + "type":"structure", + "members":{ + "recommendation":{"shape":"Recommendation"} + } + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListChecksRequest":{ + "type":"structure", + "members":{ + "awsService":{ + "shape":"RecommendationAwsService", + "location":"querystring", + "locationName":"awsService" + }, + "language":{ + "shape":"RecommendationLanguage", + "location":"querystring", + "locationName":"language" + }, + "maxResults":{ + "shape":"ListChecksRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"ListChecksRequestNextTokenString", + "location":"querystring", + "locationName":"nextToken" + }, + "pillar":{ + "shape":"RecommendationPillar", + "location":"querystring", + "locationName":"pillar" + }, + "source":{ + "shape":"RecommendationSource", + "location":"querystring", + "locationName":"source" + } + } + }, + "ListChecksRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":200, + "min":1 + }, + "ListChecksRequestNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListChecksResponse":{ + "type":"structure", + "required":["checkSummaries"], + "members":{ + "checkSummaries":{"shape":"CheckSummaryList"}, + "nextToken":{"shape":"ListChecksResponseNextTokenString"} + } + }, + "ListChecksResponseNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListOrganizationRecommendationAccountsRequest":{ + "type":"structure", + "required":["organizationRecommendationIdentifier"], + "members":{ + "affectedAccountId":{ + "shape":"AccountId", + "location":"querystring", + "locationName":"affectedAccountId" + }, + "maxResults":{ + "shape":"ListOrganizationRecommendationAccountsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"ListOrganizationRecommendationAccountsRequestNextTokenString", + "location":"querystring", + "locationName":"nextToken" + }, + "organizationRecommendationIdentifier":{ + "shape":"OrganizationRecommendationIdentifier", + "location":"uri", + "locationName":"organizationRecommendationIdentifier" + } + } + }, + "ListOrganizationRecommendationAccountsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":200, + "min":1 + }, + "ListOrganizationRecommendationAccountsRequestNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListOrganizationRecommendationAccountsResponse":{ + "type":"structure", + "required":["accountRecommendationLifecycleSummaries"], + "members":{ + "accountRecommendationLifecycleSummaries":{"shape":"AccountRecommendationLifecycleSummaryList"}, + "nextToken":{"shape":"ListOrganizationRecommendationAccountsResponseNextTokenString"} + } + }, + "ListOrganizationRecommendationAccountsResponseNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListOrganizationRecommendationResourcesRequest":{ + "type":"structure", + "required":["organizationRecommendationIdentifier"], + "members":{ + "affectedAccountId":{ + "shape":"AccountId", + "location":"querystring", + "locationName":"affectedAccountId" + }, + "maxResults":{ + "shape":"ListOrganizationRecommendationResourcesRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"ListOrganizationRecommendationResourcesRequestNextTokenString", + "location":"querystring", + "locationName":"nextToken" + }, + "organizationRecommendationIdentifier":{ + "shape":"OrganizationRecommendationIdentifier", + "location":"uri", + "locationName":"organizationRecommendationIdentifier" + }, + "regionCode":{ + "shape":"String", + "location":"querystring", + "locationName":"regionCode" + }, + "status":{ + "shape":"ResourceStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListOrganizationRecommendationResourcesRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":200, + "min":1 + }, + "ListOrganizationRecommendationResourcesRequestNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListOrganizationRecommendationResourcesResponse":{ + "type":"structure", + "required":["organizationRecommendationResourceSummaries"], + "members":{ + "nextToken":{"shape":"ListOrganizationRecommendationResourcesResponseNextTokenString"}, + "organizationRecommendationResourceSummaries":{"shape":"OrganizationRecommendationResourceSummaryList"} + } + }, + "ListOrganizationRecommendationResourcesResponseNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListOrganizationRecommendationsRequest":{ + "type":"structure", + "members":{ + "afterLastUpdatedAt":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"afterLastUpdatedAt" + }, + "awsService":{ + "shape":"RecommendationAwsService", + "location":"querystring", + "locationName":"awsService" + }, + "beforeLastUpdatedAt":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"beforeLastUpdatedAt" + }, + "checkIdentifier":{ + "shape":"CheckIdentifier", + "location":"querystring", + "locationName":"checkIdentifier" + }, + "maxResults":{ + "shape":"ListOrganizationRecommendationsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"ListOrganizationRecommendationsRequestNextTokenString", + "location":"querystring", + "locationName":"nextToken" + }, + "pillar":{ + "shape":"RecommendationPillar", + "location":"querystring", + "locationName":"pillar" + }, + "source":{ + "shape":"RecommendationSource", + "location":"querystring", + "locationName":"source" + }, + "status":{ + "shape":"RecommendationStatus", + "location":"querystring", + "locationName":"status" + }, + "type":{ + "shape":"RecommendationType", + "location":"querystring", + "locationName":"type" + } + } + }, + "ListOrganizationRecommendationsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":200, + "min":1 + }, + "ListOrganizationRecommendationsRequestNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListOrganizationRecommendationsResponse":{ + "type":"structure", + "required":["organizationRecommendationSummaries"], + "members":{ + "nextToken":{"shape":"ListOrganizationRecommendationsResponseNextTokenString"}, + "organizationRecommendationSummaries":{"shape":"OrganizationRecommendationSummaryList"} + } + }, + "ListOrganizationRecommendationsResponseNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListRecommendationResourcesRequest":{ + "type":"structure", + "required":["recommendationIdentifier"], + "members":{ + "maxResults":{ + "shape":"ListRecommendationResourcesRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"ListRecommendationResourcesRequestNextTokenString", + "location":"querystring", + "locationName":"nextToken" + }, + "recommendationIdentifier":{ + "shape":"AccountRecommendationIdentifier", + "location":"uri", + "locationName":"recommendationIdentifier" + }, + "regionCode":{ + "shape":"String", + "location":"querystring", + "locationName":"regionCode" + }, + "status":{ + "shape":"ResourceStatus", + "location":"querystring", + "locationName":"status" + } + } + }, + "ListRecommendationResourcesRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":200, + "min":1 + }, + "ListRecommendationResourcesRequestNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListRecommendationResourcesResponse":{ + "type":"structure", + "required":["recommendationResourceSummaries"], + "members":{ + "nextToken":{"shape":"ListRecommendationResourcesResponseNextTokenString"}, + "recommendationResourceSummaries":{"shape":"RecommendationResourceSummaryList"} + } + }, + "ListRecommendationResourcesResponseNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListRecommendationsRequest":{ + "type":"structure", + "members":{ + "afterLastUpdatedAt":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"afterLastUpdatedAt" + }, + "awsService":{ + "shape":"RecommendationAwsService", + "location":"querystring", + "locationName":"awsService" + }, + "beforeLastUpdatedAt":{ + "shape":"Timestamp", + "location":"querystring", + "locationName":"beforeLastUpdatedAt" + }, + "checkIdentifier":{ + "shape":"CheckIdentifier", + "location":"querystring", + "locationName":"checkIdentifier" + }, + "maxResults":{ + "shape":"ListRecommendationsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"ListRecommendationsRequestNextTokenString", + "location":"querystring", + "locationName":"nextToken" + }, + "pillar":{ + "shape":"RecommendationPillar", + "location":"querystring", + "locationName":"pillar" + }, + "source":{ + "shape":"RecommendationSource", + "location":"querystring", + "locationName":"source" + }, + "status":{ + "shape":"RecommendationStatus", + "location":"querystring", + "locationName":"status" + }, + "type":{ + "shape":"RecommendationType", + "location":"querystring", + "locationName":"type" + } + } + }, + "ListRecommendationsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":200, + "min":1 + }, + "ListRecommendationsRequestNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "ListRecommendationsResponse":{ + "type":"structure", + "required":["recommendationSummaries"], + "members":{ + "nextToken":{"shape":"ListRecommendationsResponseNextTokenString"}, + "recommendationSummaries":{"shape":"RecommendationSummaryList"} + } + }, + "ListRecommendationsResponseNextTokenString":{ + "type":"string", + "max":10000, + "min":4 + }, + "Long":{ + "type":"long", + "box":true + }, + "OrganizationRecommendation":{ + "type":"structure", + "required":[ + "arn", + "description", + "id", + "name", + "pillars", + "resourcesAggregates", + "source", + "status", + "type" + ], + "members":{ + "arn":{"shape":"OrganizationRecommendationArn"}, + "awsServices":{"shape":"RecommendationAwsServiceList"}, + "checkArn":{"shape":"String"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"String"}, + "id":{"shape":"String"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "lifecycleStage":{"shape":"RecommendationLifecycleStage"}, + "name":{"shape":"String"}, + "pillarSpecificAggregates":{"shape":"RecommendationPillarSpecificAggregates"}, + "pillars":{"shape":"RecommendationPillarList"}, + "resolvedAt":{"shape":"SyntheticTimestamp_date_time"}, + "resourcesAggregates":{"shape":"RecommendationResourcesAggregates"}, + "source":{"shape":"RecommendationSource"}, + "status":{"shape":"RecommendationStatus"}, + "type":{"shape":"RecommendationType"}, + "updateReason":{"shape":"RecommendationUpdateReason"}, + "updateReasonCode":{"shape":"UpdateRecommendationLifecycleStageReasonCode"}, + "updatedOnBehalfOf":{"shape":"String"}, + "updatedOnBehalfOfJobTitle":{"shape":"String"} + } + }, + "OrganizationRecommendationArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor:::organization-recommendation\\/[\\w-]+$" + }, + "OrganizationRecommendationIdentifier":{ + "type":"string", + "max":200, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor:::organization-recommendation\\/[\\w-]+$" + }, + "OrganizationRecommendationResourceSummary":{ + "type":"structure", + "required":[ + "arn", + "awsResourceId", + "id", + "lastUpdatedAt", + "metadata", + "recommendationArn", + "regionCode", + "status" + ], + "members":{ + "accountId":{"shape":"AccountId"}, + "arn":{"shape":"RecommendationResourceArn"}, + "awsResourceId":{"shape":"String"}, + "id":{"shape":"String"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "metadata":{"shape":"StringMap"}, + "recommendationArn":{"shape":"OrganizationRecommendationArn"}, + "regionCode":{"shape":"RecommendationRegionCode"}, + "status":{"shape":"ResourceStatus"} + } + }, + "OrganizationRecommendationResourceSummaryList":{ + "type":"list", + "member":{"shape":"OrganizationRecommendationResourceSummary"} + }, + "OrganizationRecommendationSummary":{ + "type":"structure", + "required":[ + "arn", + "id", + "name", + "pillars", + "resourcesAggregates", + "source", + "status", + "type" + ], + "members":{ + "arn":{"shape":"OrganizationRecommendationArn"}, + "awsServices":{"shape":"RecommendationAwsServiceList"}, + "checkArn":{"shape":"String"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "id":{"shape":"String"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "lifecycleStage":{"shape":"RecommendationLifecycleStage"}, + "name":{"shape":"String"}, + "pillarSpecificAggregates":{"shape":"RecommendationPillarSpecificAggregates"}, + "pillars":{"shape":"RecommendationPillarList"}, + "resourcesAggregates":{"shape":"RecommendationResourcesAggregates"}, + "source":{"shape":"RecommendationSource"}, + "status":{"shape":"RecommendationStatus"}, + "type":{"shape":"RecommendationType"} + } + }, + "OrganizationRecommendationSummaryList":{ + "type":"list", + "member":{"shape":"OrganizationRecommendationSummary"} + }, + "Recommendation":{ + "type":"structure", + "required":[ + "arn", + "description", + "id", + "name", + "pillars", + "resourcesAggregates", + "source", + "status", + "type" + ], + "members":{ + "arn":{"shape":"AccountRecommendationArn"}, + "awsServices":{"shape":"RecommendationAwsServiceList"}, + "checkArn":{"shape":"String"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "createdBy":{"shape":"String"}, + "description":{"shape":"String"}, + "id":{"shape":"String"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "lifecycleStage":{"shape":"RecommendationLifecycleStage"}, + "name":{"shape":"String"}, + "pillarSpecificAggregates":{"shape":"RecommendationPillarSpecificAggregates"}, + "pillars":{"shape":"RecommendationPillarList"}, + "resolvedAt":{"shape":"SyntheticTimestamp_date_time"}, + "resourcesAggregates":{"shape":"RecommendationResourcesAggregates"}, + "source":{"shape":"RecommendationSource"}, + "status":{"shape":"RecommendationStatus"}, + "type":{"shape":"RecommendationType"}, + "updateReason":{"shape":"RecommendationUpdateReason"}, + "updateReasonCode":{"shape":"UpdateRecommendationLifecycleStageReasonCode"}, + "updatedOnBehalfOf":{"shape":"String"}, + "updatedOnBehalfOfJobTitle":{"shape":"String"} + } + }, + "RecommendationAwsService":{ + "type":"string", + "max":30, + "min":2 + }, + "RecommendationAwsServiceList":{ + "type":"list", + "member":{"shape":"RecommendationAwsService"} + }, + "RecommendationCostOptimizingAggregates":{ + "type":"structure", + "required":[ + "estimatedMonthlySavings", + "estimatedPercentMonthlySavings" + ], + "members":{ + "estimatedMonthlySavings":{"shape":"Double"}, + "estimatedPercentMonthlySavings":{"shape":"Double"} + } + }, + "RecommendationLanguage":{ + "type":"string", + "enum":[ + "en", + "ja", + "zh", + "fr", + "de", + "ko", + "zh_TW", + "it", + "es", + "pt_BR", + "id" + ] + }, + "RecommendationLifecycleStage":{ + "type":"string", + "enum":[ + "in_progress", + "pending_response", + "dismissed", + "resolved" + ] + }, + "RecommendationPillar":{ + "type":"string", + "enum":[ + "cost_optimizing", + "performance", + "security", + "service_limits", + "fault_tolerance", + "operational_excellence" + ] + }, + "RecommendationPillarList":{ + "type":"list", + "member":{"shape":"RecommendationPillar"} + }, + "RecommendationPillarSpecificAggregates":{ + "type":"structure", + "members":{ + "costOptimizing":{"shape":"RecommendationCostOptimizingAggregates"} + } + }, + "RecommendationRegionCode":{ + "type":"string", + "max":20, + "min":9 + }, + "RecommendationResourceArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[\\w-]+:trustedadvisor::\\d{12}:recommendation-resource\\/[\\w-]+\\/[\\w-]+$" + }, + "RecommendationResourceSummary":{ + "type":"structure", + "required":[ + "arn", + "awsResourceId", + "id", + "lastUpdatedAt", + "metadata", + "recommendationArn", + "regionCode", + "status" + ], + "members":{ + "arn":{"shape":"RecommendationResourceArn"}, + "awsResourceId":{"shape":"String"}, + "id":{"shape":"String"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "metadata":{"shape":"StringMap"}, + "recommendationArn":{"shape":"AccountRecommendationArn"}, + "regionCode":{"shape":"RecommendationRegionCode"}, + "status":{"shape":"ResourceStatus"} + } + }, + "RecommendationResourceSummaryList":{ + "type":"list", + "member":{"shape":"RecommendationResourceSummary"} + }, + "RecommendationResourcesAggregates":{ + "type":"structure", + "required":[ + "errorCount", + "okCount", + "warningCount" + ], + "members":{ + "errorCount":{"shape":"Long"}, + "okCount":{"shape":"Long"}, + "warningCount":{"shape":"Long"} + } + }, + "RecommendationSource":{ + "type":"string", + "enum":[ + "aws_config", + "compute_optimizer", + "cost_explorer", + "lse", + "manual", + "pse", + "rds", + "resilience", + "resilience_hub", + "security_hub", + "stir", + "ta_check", + "well_architected" + ] + }, + "RecommendationStatus":{ + "type":"string", + "enum":[ + "ok", + "warning", + "error" + ] + }, + "RecommendationSummary":{ + "type":"structure", + "required":[ + "arn", + "id", + "name", + "pillars", + "resourcesAggregates", + "source", + "status", + "type" + ], + "members":{ + "arn":{"shape":"AccountRecommendationArn"}, + "awsServices":{"shape":"RecommendationAwsServiceList"}, + "checkArn":{"shape":"String"}, + "createdAt":{"shape":"SyntheticTimestamp_date_time"}, + "id":{"shape":"String"}, + "lastUpdatedAt":{"shape":"SyntheticTimestamp_date_time"}, + "lifecycleStage":{"shape":"RecommendationLifecycleStage"}, + "name":{"shape":"String"}, + "pillarSpecificAggregates":{"shape":"RecommendationPillarSpecificAggregates"}, + "pillars":{"shape":"RecommendationPillarList"}, + "resourcesAggregates":{"shape":"RecommendationResourcesAggregates"}, + "source":{"shape":"RecommendationSource"}, + "status":{"shape":"RecommendationStatus"}, + "type":{"shape":"RecommendationType"} + } + }, + "RecommendationSummaryList":{ + "type":"list", + "member":{"shape":"RecommendationSummary"} + }, + "RecommendationType":{ + "type":"string", + "enum":[ + "standard", + "priority" + ] + }, + "RecommendationUpdateReason":{ + "type":"string", + "max":4096, + "min":10, + "pattern":"^[\\s\\S]*$", + "sensitive":true + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResourceStatus":{ + "type":"string", + "enum":[ + "ok", + "warning", + "error" + ] + }, + "String":{"type":"string"}, + "StringMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "Timestamp":{"type":"timestamp"}, + "UpdateOrganizationRecommendationLifecycleRequest":{ + "type":"structure", + "required":[ + "lifecycleStage", + "organizationRecommendationIdentifier" + ], + "members":{ + "lifecycleStage":{"shape":"UpdateRecommendationLifecycleStage"}, + "organizationRecommendationIdentifier":{ + "shape":"OrganizationRecommendationIdentifier", + "location":"uri", + "locationName":"organizationRecommendationIdentifier" + }, + "updateReason":{"shape":"RecommendationUpdateReason"}, + "updateReasonCode":{"shape":"UpdateRecommendationLifecycleStageReasonCode"} + } + }, + "UpdateRecommendationLifecycleRequest":{ + "type":"structure", + "required":[ + "lifecycleStage", + "recommendationIdentifier" + ], + "members":{ + "lifecycleStage":{"shape":"UpdateRecommendationLifecycleStage"}, + "recommendationIdentifier":{ + "shape":"AccountRecommendationIdentifier", + "location":"uri", + "locationName":"recommendationIdentifier" + }, + "updateReason":{"shape":"RecommendationUpdateReason"}, + "updateReasonCode":{"shape":"UpdateRecommendationLifecycleStageReasonCode"} + } + }, + "UpdateRecommendationLifecycleStage":{ + "type":"string", + "enum":[ + "pending_response", + "in_progress", + "dismissed", + "resolved" + ] + }, + "UpdateRecommendationLifecycleStageReasonCode":{ + "type":"string", + "enum":[ + "non_critical_account", + "temporary_account", + "valid_business_case", + "other_methods_available", + "low_priority", + "not_applicable", + "other" + ] + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,643 @@ +{ + "version": "2.0", + "service": "

TrustedAdvisor Public API

", + "operations": { + "GetOrganizationRecommendation": "

Get a specific recommendation within an AWS Organizations organization. This API supports only prioritized recommendations.

", + "GetRecommendation": "

Get a specific Recommendation

", + "ListChecks": "

List a filterable set of Checks

", + "ListOrganizationRecommendationAccounts": "

Lists the accounts that own the resources for an organization aggregate recommendation. This API only supports prioritized recommendations.

", + "ListOrganizationRecommendationResources": "

List Resources of a Recommendation within an Organization. This API only supports prioritized recommendations.

", + "ListOrganizationRecommendations": "

List a filterable set of Recommendations within an Organization. This API only supports prioritized recommendations.

", + "ListRecommendationResources": "

List Resources of a Recommendation

", + "ListRecommendations": "

List a filterable set of Recommendations

", + "UpdateOrganizationRecommendationLifecycle": "

Update the lifecyle of a Recommendation within an Organization. This API only supports prioritized recommendations.

", + "UpdateRecommendationLifecycle": "

Update the lifecyle of a Recommendation. This API only supports prioritized recommendations.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

Exception that access has been denied due to insufficient access

", + "refs": { + } + }, + "AccountId": { + "base": null, + "refs": { + "AccountRecommendationLifecycleSummary$accountId": "

The AWS account ID

", + "ListOrganizationRecommendationAccountsRequest$affectedAccountId": "

An account affected by this organization recommendation

", + "ListOrganizationRecommendationResourcesRequest$affectedAccountId": "

An account affected by this organization recommendation

", + "OrganizationRecommendationResourceSummary$accountId": "

The AWS account ID

" + } + }, + "AccountRecommendationArn": { + "base": null, + "refs": { + "AccountRecommendationLifecycleSummary$accountRecommendationArn": "

The Recommendation ARN

", + "Recommendation$arn": "

The ARN of the Recommendation

", + "RecommendationResourceSummary$recommendationArn": "

The Recommendation ARN

", + "RecommendationSummary$arn": "

The ARN of the Recommendation

" + } + }, + "AccountRecommendationIdentifier": { + "base": null, + "refs": { + "GetRecommendationRequest$recommendationIdentifier": "

The Recommendation identifier

", + "ListRecommendationResourcesRequest$recommendationIdentifier": "

The Recommendation identifier

", + "UpdateRecommendationLifecycleRequest$recommendationIdentifier": "

The Recommendation identifier for AWS Trusted Advisor Priority recommendations

" + } + }, + "AccountRecommendationLifecycleSummary": { + "base": "

Summary of an AccountRecommendationLifecycle for an Organization Recommendation

", + "refs": { + "AccountRecommendationLifecycleSummaryList$member": null + } + }, + "AccountRecommendationLifecycleSummaryList": { + "base": null, + "refs": { + "ListOrganizationRecommendationAccountsResponse$accountRecommendationLifecycleSummaries": "

The account recommendations lifecycles that are applicable to the Recommendation

" + } + }, + "CheckArn": { + "base": null, + "refs": { + "CheckSummary$arn": "

The ARN of the AWS Trusted Advisor Check

" + } + }, + "CheckIdentifier": { + "base": null, + "refs": { + "ListOrganizationRecommendationsRequest$checkIdentifier": "

The check identifier of the Recommendation

", + "ListRecommendationsRequest$checkIdentifier": "

The check identifier of the Recommendation

" + } + }, + "CheckSummary": { + "base": "

A summary of an AWS Trusted Advisor Check

", + "refs": { + "CheckSummaryList$member": null + } + }, + "CheckSummaryList": { + "base": null, + "refs": { + "ListChecksResponse$checkSummaries": "

The list of Checks

" + } + }, + "ConflictException": { + "base": "

Exception that the request was denied due to conflictions in state

", + "refs": { + } + }, + "Double": { + "base": null, + "refs": { + "RecommendationCostOptimizingAggregates$estimatedMonthlySavings": "

The estimated monthly savings

", + "RecommendationCostOptimizingAggregates$estimatedPercentMonthlySavings": "

The estimated percently monthly savings

" + } + }, + "GetOrganizationRecommendationRequest": { + "base": null, + "refs": { + } + }, + "GetOrganizationRecommendationResponse": { + "base": null, + "refs": { + } + }, + "GetRecommendationRequest": { + "base": null, + "refs": { + } + }, + "GetRecommendationResponse": { + "base": null, + "refs": { + } + }, + "InternalServerException": { + "base": "

Exception to notify that an unexpected internal error occurred during processing of the request

", + "refs": { + } + }, + "ListChecksRequest": { + "base": null, + "refs": { + } + }, + "ListChecksRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListChecksRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "ListChecksRequestNextTokenString": { + "base": null, + "refs": { + "ListChecksRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListChecksResponse": { + "base": null, + "refs": { + } + }, + "ListChecksResponseNextTokenString": { + "base": null, + "refs": { + "ListChecksResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListOrganizationRecommendationAccountsRequest": { + "base": null, + "refs": { + } + }, + "ListOrganizationRecommendationAccountsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListOrganizationRecommendationAccountsRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "ListOrganizationRecommendationAccountsRequestNextTokenString": { + "base": null, + "refs": { + "ListOrganizationRecommendationAccountsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListOrganizationRecommendationAccountsResponse": { + "base": null, + "refs": { + } + }, + "ListOrganizationRecommendationAccountsResponseNextTokenString": { + "base": null, + "refs": { + "ListOrganizationRecommendationAccountsResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListOrganizationRecommendationResourcesRequest": { + "base": null, + "refs": { + } + }, + "ListOrganizationRecommendationResourcesRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListOrganizationRecommendationResourcesRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "ListOrganizationRecommendationResourcesRequestNextTokenString": { + "base": null, + "refs": { + "ListOrganizationRecommendationResourcesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListOrganizationRecommendationResourcesResponse": { + "base": null, + "refs": { + } + }, + "ListOrganizationRecommendationResourcesResponseNextTokenString": { + "base": null, + "refs": { + "ListOrganizationRecommendationResourcesResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListOrganizationRecommendationsRequest": { + "base": null, + "refs": { + } + }, + "ListOrganizationRecommendationsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListOrganizationRecommendationsRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "ListOrganizationRecommendationsRequestNextTokenString": { + "base": null, + "refs": { + "ListOrganizationRecommendationsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListOrganizationRecommendationsResponse": { + "base": null, + "refs": { + } + }, + "ListOrganizationRecommendationsResponseNextTokenString": { + "base": null, + "refs": { + "ListOrganizationRecommendationsResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListRecommendationResourcesRequest": { + "base": null, + "refs": { + } + }, + "ListRecommendationResourcesRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListRecommendationResourcesRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "ListRecommendationResourcesRequestNextTokenString": { + "base": null, + "refs": { + "ListRecommendationResourcesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListRecommendationResourcesResponse": { + "base": null, + "refs": { + } + }, + "ListRecommendationResourcesResponseNextTokenString": { + "base": null, + "refs": { + "ListRecommendationResourcesResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListRecommendationsRequest": { + "base": null, + "refs": { + } + }, + "ListRecommendationsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListRecommendationsRequest$maxResults": "

The maximum number of results to return per page.

" + } + }, + "ListRecommendationsRequestNextTokenString": { + "base": null, + "refs": { + "ListRecommendationsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "ListRecommendationsResponse": { + "base": null, + "refs": { + } + }, + "ListRecommendationsResponseNextTokenString": { + "base": null, + "refs": { + "ListRecommendationsResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

" + } + }, + "Long": { + "base": null, + "refs": { + "RecommendationResourcesAggregates$errorCount": "

The number of AWS resources that were flagged to have errors according to the Trusted Advisor check

", + "RecommendationResourcesAggregates$okCount": "

The number of AWS resources that were flagged to be OK according to the Trusted Advisor check

", + "RecommendationResourcesAggregates$warningCount": "

The number of AWS resources that were flagged to have warning according to the Trusted Advisor check

" + } + }, + "OrganizationRecommendation": { + "base": "

A Recommendation for accounts within an Organization

", + "refs": { + "GetOrganizationRecommendationResponse$organizationRecommendation": "

The Recommendation

" + } + }, + "OrganizationRecommendationArn": { + "base": null, + "refs": { + "OrganizationRecommendation$arn": "

The ARN of the Recommendation

", + "OrganizationRecommendationResourceSummary$recommendationArn": "

The Recommendation ARN

", + "OrganizationRecommendationSummary$arn": "

The ARN of the Recommendation

" + } + }, + "OrganizationRecommendationIdentifier": { + "base": null, + "refs": { + "GetOrganizationRecommendationRequest$organizationRecommendationIdentifier": "

The Recommendation identifier

", + "ListOrganizationRecommendationAccountsRequest$organizationRecommendationIdentifier": "

The Recommendation identifier

", + "ListOrganizationRecommendationResourcesRequest$organizationRecommendationIdentifier": "

The AWS Organization organization's Recommendation identifier

", + "UpdateOrganizationRecommendationLifecycleRequest$organizationRecommendationIdentifier": "

The Recommendation identifier for AWS Trusted Advisor Priority recommendations

" + } + }, + "OrganizationRecommendationResourceSummary": { + "base": "

Organization Recommendation Resource Summary

", + "refs": { + "OrganizationRecommendationResourceSummaryList$member": null + } + }, + "OrganizationRecommendationResourceSummaryList": { + "base": null, + "refs": { + "ListOrganizationRecommendationResourcesResponse$organizationRecommendationResourceSummaries": "

A list of Recommendation Resources

" + } + }, + "OrganizationRecommendationSummary": { + "base": "

Summary of recommendation for accounts within an Organization

", + "refs": { + "OrganizationRecommendationSummaryList$member": null + } + }, + "OrganizationRecommendationSummaryList": { + "base": null, + "refs": { + "ListOrganizationRecommendationsResponse$organizationRecommendationSummaries": "

The list of Recommendations

" + } + }, + "Recommendation": { + "base": "

A Recommendation for an Account

", + "refs": { + "GetRecommendationResponse$recommendation": "

The Recommendation

" + } + }, + "RecommendationAwsService": { + "base": null, + "refs": { + "ListChecksRequest$awsService": "

The aws service associated with the check

", + "ListOrganizationRecommendationsRequest$awsService": "

The aws service associated with the Recommendation

", + "ListRecommendationsRequest$awsService": "

The aws service associated with the Recommendation

", + "RecommendationAwsServiceList$member": null + } + }, + "RecommendationAwsServiceList": { + "base": null, + "refs": { + "CheckSummary$awsServices": "

The AWS Services that the Check applies to

", + "OrganizationRecommendation$awsServices": "

The AWS Services that the Recommendation applies to

", + "OrganizationRecommendationSummary$awsServices": "

The AWS Services that the Recommendation applies to

", + "Recommendation$awsServices": "

The AWS Services that the Recommendation applies to

", + "RecommendationSummary$awsServices": "

The AWS Services that the Recommendation applies to

" + } + }, + "RecommendationCostOptimizingAggregates": { + "base": "

Cost optimizing aggregates for a Recommendation

", + "refs": { + "RecommendationPillarSpecificAggregates$costOptimizing": "

Cost optimizing aggregates

" + } + }, + "RecommendationLanguage": { + "base": null, + "refs": { + "ListChecksRequest$language": "

The ISO 639-1 code for the language that you want your checks to appear in.

" + } + }, + "RecommendationLifecycleStage": { + "base": null, + "refs": { + "AccountRecommendationLifecycleSummary$lifecycleStage": "

The lifecycle stage from AWS Trusted Advisor Priority

", + "OrganizationRecommendation$lifecycleStage": "

The lifecycle stage from AWS Trusted Advisor Priority

", + "OrganizationRecommendationSummary$lifecycleStage": "

The lifecycle stage from AWS Trusted Advisor Priority

", + "Recommendation$lifecycleStage": "

The lifecycle stage from AWS Trusted Advisor Priority

", + "RecommendationSummary$lifecycleStage": "

The lifecycle stage from AWS Trusted Advisor Priority

" + } + }, + "RecommendationPillar": { + "base": null, + "refs": { + "ListChecksRequest$pillar": "

The pillar of the check

", + "ListOrganizationRecommendationsRequest$pillar": "

The pillar of the Recommendation

", + "ListRecommendationsRequest$pillar": "

The pillar of the Recommendation

", + "RecommendationPillarList$member": null + } + }, + "RecommendationPillarList": { + "base": null, + "refs": { + "CheckSummary$pillars": "

The Recommendation pillars that the AWS Trusted Advisor Check falls under

", + "OrganizationRecommendation$pillars": "

The Pillars that the Recommendation is optimizing

", + "OrganizationRecommendationSummary$pillars": "

The Pillars that the Recommendation is optimizing

", + "Recommendation$pillars": "

The Pillars that the Recommendation is optimizing

", + "RecommendationSummary$pillars": "

The Pillars that the Recommendation is optimizing

" + } + }, + "RecommendationPillarSpecificAggregates": { + "base": "

Recommendation pillar aggregates

", + "refs": { + "OrganizationRecommendation$pillarSpecificAggregates": "

The pillar aggregations for cost savings

", + "OrganizationRecommendationSummary$pillarSpecificAggregates": "

The pillar aggregations for cost savings

", + "Recommendation$pillarSpecificAggregates": "

The pillar aggregations for cost savings

", + "RecommendationSummary$pillarSpecificAggregates": "

The pillar aggregations for cost savings

" + } + }, + "RecommendationRegionCode": { + "base": null, + "refs": { + "OrganizationRecommendationResourceSummary$regionCode": "

The AWS Region code that the Recommendation Resource is in

", + "RecommendationResourceSummary$regionCode": "

The AWS Region code that the Recommendation Resource is in

" + } + }, + "RecommendationResourceArn": { + "base": null, + "refs": { + "OrganizationRecommendationResourceSummary$arn": "

The ARN of the Recommendation Resource

", + "RecommendationResourceSummary$arn": "

The ARN of the Recommendation Resource

" + } + }, + "RecommendationResourceSummary": { + "base": "

Summary of a Recommendation Resource

", + "refs": { + "RecommendationResourceSummaryList$member": null + } + }, + "RecommendationResourceSummaryList": { + "base": null, + "refs": { + "ListRecommendationResourcesResponse$recommendationResourceSummaries": "

A list of Recommendation Resources

" + } + }, + "RecommendationResourcesAggregates": { + "base": "

Aggregation of Recommendation Resources

", + "refs": { + "OrganizationRecommendation$resourcesAggregates": "

An aggregation of all resources

", + "OrganizationRecommendationSummary$resourcesAggregates": "

An aggregation of all resources

", + "Recommendation$resourcesAggregates": "

An aggregation of all resources

", + "RecommendationSummary$resourcesAggregates": "

An aggregation of all resources

" + } + }, + "RecommendationSource": { + "base": null, + "refs": { + "CheckSummary$source": "

The source of the Recommendation

", + "ListChecksRequest$source": "

The source of the check

", + "ListOrganizationRecommendationsRequest$source": "

The source of the Recommendation

", + "ListRecommendationsRequest$source": "

The source of the Recommendation

", + "OrganizationRecommendation$source": "

The source of the Recommendation

", + "OrganizationRecommendationSummary$source": "

The source of the Recommendation

", + "Recommendation$source": "

The source of the Recommendation

", + "RecommendationSummary$source": "

The source of the Recommendation

" + } + }, + "RecommendationStatus": { + "base": null, + "refs": { + "ListOrganizationRecommendationsRequest$status": "

The status of the Recommendation

", + "ListRecommendationsRequest$status": "

The status of the Recommendation

", + "OrganizationRecommendation$status": "

The status of the Recommendation

", + "OrganizationRecommendationSummary$status": "

The status of the Recommendation

", + "Recommendation$status": "

The status of the Recommendation

", + "RecommendationSummary$status": "

The status of the Recommendation

" + } + }, + "RecommendationSummary": { + "base": "

Summary of Recommendation for an Account

", + "refs": { + "RecommendationSummaryList$member": null + } + }, + "RecommendationSummaryList": { + "base": null, + "refs": { + "ListRecommendationsResponse$recommendationSummaries": "

The list of Recommendations

" + } + }, + "RecommendationType": { + "base": null, + "refs": { + "ListOrganizationRecommendationsRequest$type": "

The type of the Recommendation

", + "ListRecommendationsRequest$type": "

The type of the Recommendation

", + "OrganizationRecommendation$type": "

Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority

", + "OrganizationRecommendationSummary$type": "

Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority

", + "Recommendation$type": "

Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority

", + "RecommendationSummary$type": "

Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority

" + } + }, + "RecommendationUpdateReason": { + "base": null, + "refs": { + "AccountRecommendationLifecycleSummary$updateReason": "

Reason for the lifecycle stage change

", + "OrganizationRecommendation$updateReason": "

Reason for the lifecycle stage change

", + "Recommendation$updateReason": "

Reason for the lifecycle stage change

", + "UpdateOrganizationRecommendationLifecycleRequest$updateReason": "

Reason for the lifecycle stage change

", + "UpdateRecommendationLifecycleRequest$updateReason": "

Reason for the lifecycle stage change

" + } + }, + "ResourceNotFoundException": { + "base": "

Exception that the requested resource has not been found

", + "refs": { + } + }, + "ResourceStatus": { + "base": null, + "refs": { + "ListOrganizationRecommendationResourcesRequest$status": "

The status of the resource

", + "ListRecommendationResourcesRequest$status": "

The status of the resource

", + "OrganizationRecommendationResourceSummary$status": "

The current status of the Recommendation Resource

", + "RecommendationResourceSummary$status": "

The current status of the Recommendation Resource

" + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "AccountRecommendationLifecycleSummary$updatedOnBehalfOf": "

The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority

", + "AccountRecommendationLifecycleSummary$updatedOnBehalfOfJobTitle": "

The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority

", + "CheckSummary$description": "

A description of what the AWS Trusted Advisor Check is monitoring

", + "CheckSummary$id": "

The unique identifier of the AWS Trusted Advisor Check

", + "CheckSummary$name": "

The name of the AWS Trusted Advisor Check

", + "ConflictException$message": null, + "InternalServerException$message": null, + "ListOrganizationRecommendationResourcesRequest$regionCode": "

The AWS Region code of the resource

", + "ListRecommendationResourcesRequest$regionCode": "

The AWS Region code of the resource

", + "OrganizationRecommendation$checkArn": "

The AWS Trusted Advisor Check ARN that relates to the Recommendation

", + "OrganizationRecommendation$createdBy": "

The creator, if created by AWS Trusted Advisor Priority

", + "OrganizationRecommendation$description": "

A description for AWS Trusted Advisor recommendations

", + "OrganizationRecommendation$id": "

The ID which identifies where the Recommendation was produced

", + "OrganizationRecommendation$name": "

The name of the AWS Trusted Advisor Recommendation

", + "OrganizationRecommendation$updatedOnBehalfOf": "

The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority

", + "OrganizationRecommendation$updatedOnBehalfOfJobTitle": "

The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority

", + "OrganizationRecommendationResourceSummary$awsResourceId": "

The AWS resource identifier

", + "OrganizationRecommendationResourceSummary$id": "

The ID of the Recommendation Resource

", + "OrganizationRecommendationSummary$checkArn": "

The AWS Trusted Advisor Check ARN that relates to the Recommendation

", + "OrganizationRecommendationSummary$id": "

The ID which identifies where the Recommendation was produced

", + "OrganizationRecommendationSummary$name": "

The name of the AWS Trusted Advisor Recommendation

", + "Recommendation$checkArn": "

The AWS Trusted Advisor Check ARN that relates to the Recommendation

", + "Recommendation$createdBy": "

The creator, if created by AWS Trusted Advisor Priority

", + "Recommendation$description": "

A description for AWS Trusted Advisor recommendations

", + "Recommendation$id": "

The ID which identifies where the Recommendation was produced

", + "Recommendation$name": "

The name of the AWS Trusted Advisor Recommendation

", + "Recommendation$updatedOnBehalfOf": "

The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority

", + "Recommendation$updatedOnBehalfOfJobTitle": "

The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority

", + "RecommendationResourceSummary$awsResourceId": "

The AWS resource identifier

", + "RecommendationResourceSummary$id": "

The ID of the Recommendation Resource

", + "RecommendationSummary$checkArn": "

The AWS Trusted Advisor Check ARN that relates to the Recommendation

", + "RecommendationSummary$id": "

The ID which identifies where the Recommendation was produced

", + "RecommendationSummary$name": "

The name of the AWS Trusted Advisor Recommendation

", + "ResourceNotFoundException$message": null, + "StringMap$key": null, + "StringMap$value": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "StringMap": { + "base": null, + "refs": { + "CheckSummary$metadata": "

The column headings for the metadata returned in the resource

", + "OrganizationRecommendationResourceSummary$metadata": "

Metadata associated with the Recommendation Resource

", + "RecommendationResourceSummary$metadata": "

Metadata associated with the Recommendation Resource

" + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "AccountRecommendationLifecycleSummary$lastUpdatedAt": "

When the Recommendation was last updated

", + "OrganizationRecommendation$createdAt": "

When the Recommendation was created, if created by AWS Trusted Advisor Priority

", + "OrganizationRecommendation$lastUpdatedAt": "

When the Recommendation was last updated

", + "OrganizationRecommendation$resolvedAt": "

When the Recommendation was resolved

", + "OrganizationRecommendationResourceSummary$lastUpdatedAt": "

When the Recommendation Resource was last updated

", + "OrganizationRecommendationSummary$createdAt": "

When the Recommendation was created, if created by AWS Trusted Advisor Priority

", + "OrganizationRecommendationSummary$lastUpdatedAt": "

When the Recommendation was last updated

", + "Recommendation$createdAt": "

When the Recommendation was created, if created by AWS Trusted Advisor Priority

", + "Recommendation$lastUpdatedAt": "

When the Recommendation was last updated

", + "Recommendation$resolvedAt": "

When the Recommendation was resolved

", + "RecommendationResourceSummary$lastUpdatedAt": "

When the Recommendation Resource was last updated

", + "RecommendationSummary$createdAt": "

When the Recommendation was created, if created by AWS Trusted Advisor Priority

", + "RecommendationSummary$lastUpdatedAt": "

When the Recommendation was last updated

" + } + }, + "ThrottlingException": { + "base": "

Exception to notify that requests are being throttled

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "ListOrganizationRecommendationsRequest$afterLastUpdatedAt": "

After the last update of the Recommendation

", + "ListOrganizationRecommendationsRequest$beforeLastUpdatedAt": "

Before the last update of the Recommendation

", + "ListRecommendationsRequest$afterLastUpdatedAt": "

After the last update of the Recommendation

", + "ListRecommendationsRequest$beforeLastUpdatedAt": "

Before the last update of the Recommendation

" + } + }, + "UpdateOrganizationRecommendationLifecycleRequest": { + "base": null, + "refs": { + } + }, + "UpdateRecommendationLifecycleRequest": { + "base": null, + "refs": { + } + }, + "UpdateRecommendationLifecycleStage": { + "base": null, + "refs": { + "UpdateOrganizationRecommendationLifecycleRequest$lifecycleStage": "

The new lifecycle stage

", + "UpdateRecommendationLifecycleRequest$lifecycleStage": "

The new lifecycle stage

" + } + }, + "UpdateRecommendationLifecycleStageReasonCode": { + "base": null, + "refs": { + "AccountRecommendationLifecycleSummary$updateReasonCode": "

Reason code for the lifecycle state change

", + "OrganizationRecommendation$updateReasonCode": "

Reason code for the lifecycle state change

", + "Recommendation$updateReasonCode": "

Reason code for the lifecycle state change

", + "UpdateOrganizationRecommendationLifecycleRequest$updateReasonCode": "

Reason code for the lifecycle state change

", + "UpdateRecommendationLifecycleRequest$updateReasonCode": "

Reason code for the lifecycle state change

" + } + }, + "ValidationException": { + "base": "

Exception that the request failed to satisfy service constraints

", + "refs": { + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://trustedadvisor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://trustedadvisor-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://trustedadvisor.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://trustedadvisor.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://trustedadvisor.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/trustedadvisor/2022-09-15/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/trustedadvisor/2022-09-15/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,40 @@ +{ + "pagination": { + "ListChecks": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "checkSummaries" + }, + "ListOrganizationRecommendationAccounts": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "accountRecommendationLifecycleSummaries" + }, + "ListOrganizationRecommendationResources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "organizationRecommendationResourceSummaries" + }, + "ListOrganizationRecommendations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "organizationRecommendationSummaries" + }, + "ListRecommendationResources": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "recommendationResourceSummaries" + }, + "ListRecommendations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "recommendationSummaries" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/verifiedpermissions/2021-12-01/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/verifiedpermissions/2021-12-01/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/verifiedpermissions/2021-12-01/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/verifiedpermissions/2021-12-01/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,22 @@ "uid":"verifiedpermissions-2021-12-01" }, "operations":{ + "BatchIsAuthorized":{ + "name":"BatchIsAuthorized", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchIsAuthorizedInput"}, + "output":{"shape":"BatchIsAuthorizedOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, "CreateIdentitySource":{ "name":"CreateIdentitySource", "http":{ @@ -24,6 +40,7 @@ "errors":[ {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, @@ -42,6 +59,7 @@ "errors":[ {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, @@ -60,6 +78,7 @@ "errors":[ {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, {"shape":"InternalServerException"} @@ -77,6 +96,7 @@ "errors":[ {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, @@ -468,6 +488,58 @@ }, "union":true }, + "BatchIsAuthorizedInput":{ + "type":"structure", + "required":[ + "policyStoreId", + "requests" + ], + "members":{ + "policyStoreId":{"shape":"PolicyStoreId"}, + "entities":{"shape":"EntitiesDefinition"}, + "requests":{"shape":"BatchIsAuthorizedInputList"} + } + }, + "BatchIsAuthorizedInputItem":{ + "type":"structure", + "members":{ + "principal":{"shape":"EntityIdentifier"}, + "action":{"shape":"ActionIdentifier"}, + "resource":{"shape":"EntityIdentifier"}, + "context":{"shape":"ContextDefinition"} + } + }, + "BatchIsAuthorizedInputList":{ + "type":"list", + "member":{"shape":"BatchIsAuthorizedInputItem"}, + "min":1 + }, + "BatchIsAuthorizedOutput":{ + "type":"structure", + "required":["results"], + "members":{ + "results":{"shape":"BatchIsAuthorizedOutputList"} + } + }, + "BatchIsAuthorizedOutputItem":{ + "type":"structure", + "required":[ + "request", + "decision", + "determiningPolicies", + "errors" + ], + "members":{ + "request":{"shape":"BatchIsAuthorizedInputItem"}, + "decision":{"shape":"Decision"}, + "determiningPolicies":{"shape":"DeterminingPolicyList"}, + "errors":{"shape":"EvaluationErrorList"} + } + }, + "BatchIsAuthorizedOutputList":{ + "type":"list", + "member":{"shape":"BatchIsAuthorizedOutputItem"} + }, "Boolean":{ "type":"boolean", "box":true @@ -602,7 +674,8 @@ "shape":"IdempotencyToken", "idempotencyToken":true }, - "validationSettings":{"shape":"ValidationSettings"} + "validationSettings":{"shape":"ValidationSettings"}, + "description":{"shape":"PolicyStoreDescription"} } }, "CreatePolicyStoreOutput":{ @@ -888,7 +961,8 @@ "arn":{"shape":"ResourceArn"}, "validationSettings":{"shape":"ValidationSettings"}, "createdDate":{"shape":"TimestampFormat"}, - "lastUpdatedDate":{"shape":"TimestampFormat"} + "lastUpdatedDate":{"shape":"TimestampFormat"}, + "description":{"shape":"PolicyStoreDescription"} } }, "GetPolicyTemplateInput":{ @@ -939,7 +1013,8 @@ "policyStoreId":{"shape":"PolicyStoreId"}, "schema":{"shape":"SchemaJson"}, "createdDate":{"shape":"TimestampFormat"}, - "lastUpdatedDate":{"shape":"TimestampFormat"} + "lastUpdatedDate":{"shape":"TimestampFormat"}, + "namespaces":{"shape":"NamespaceList"} } }, "IdempotencyToken":{ @@ -1250,6 +1325,12 @@ "min":1, "sensitive":true }, + "PolicyStoreDescription":{ + "type":"string", + "max":150, + "min":0, + "sensitive":true + }, "PolicyStoreId":{ "type":"string", "max":200, @@ -1266,7 +1347,9 @@ "members":{ "policyStoreId":{"shape":"PolicyStoreId"}, "arn":{"shape":"ResourceArn"}, - "createdDate":{"shape":"TimestampFormat"} + "createdDate":{"shape":"TimestampFormat"}, + "lastUpdatedDate":{"shape":"TimestampFormat"}, + "description":{"shape":"PolicyStoreDescription"} } }, "PolicyStoreList":{ @@ -1404,7 +1487,7 @@ }, "SchemaJson":{ "type":"string", - "max":10000, + "max":100000, "min":1, "sensitive":true }, @@ -1600,7 +1683,8 @@ ], "members":{ "policyStoreId":{"shape":"PolicyStoreId"}, - "validationSettings":{"shape":"ValidationSettings"} + "validationSettings":{"shape":"ValidationSettings"}, + "description":{"shape":"PolicyStoreDescription"} } }, "UpdatePolicyStoreOutput":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/verifiedpermissions/2021-12-01/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/verifiedpermissions/2021-12-01/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/verifiedpermissions/2021-12-01/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/verifiedpermissions/2021-12-01/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,9 +2,10 @@ "version": "2.0", "service": "

Amazon Verified Permissions is a permissions management service from Amazon Web Services. You can use Verified Permissions to manage permissions for your application, and authorize user access based on those permissions. Using Verified Permissions, application developers can grant access based on information about the users, resources, and requested actions. You can also evaluate additional information like group membership, attributes of the resources, and session context, such as time of request and IP addresses. Verified Permissions manages these permissions by letting you create and store authorization policies for your applications, such as consumer-facing web sites and enterprise business systems.

Verified Permissions uses Cedar as the policy language to express your permission requirements. Cedar supports both role-based access control (RBAC) and attribute-based access control (ABAC) authorization models.

For more information about configuring, administering, and using Amazon Verified Permissions in your applications, see the Amazon Verified Permissions User Guide.

For more information about the Cedar policy language, see the Cedar Policy Language Guide.

When you write Cedar policies that reference principals, resources and actions, you can define the unique identifiers used for each of those elements. We strongly recommend that you follow these best practices:

  • Use values like universally unique identifiers (UUIDs) for all principal and resource identifiers.

    For example, if user jane leaves the company, and you later let someone else use the name jane, then that new user automatically gets access to everything granted by policies that still reference User::\"jane\". Cedar can’t distinguish between the new user and the old. This applies to both principal and resource identifiers. Always use identifiers that are guaranteed unique and never reused to ensure that you don’t unintentionally grant access because of the presence of an old identifier in a policy.

    Where you use a UUID for an entity, we recommend that you follow it with the // comment specifier and the ‘friendly’ name of your entity. This helps to make your policies easier to understand. For example: principal == User::\"a1b2c3d4-e5f6-a1b2-c3d4-EXAMPLE11111\", // alice

  • Do not include personally identifying, confidential, or sensitive information as part of the unique identifier for your principals or resources. These identifiers are included in log entries shared in CloudTrail trails.

Several operations return structures that appear similar, but have different purposes. As new functionality is added to the product, the structure used in a parameter of one operation might need to change in a way that wouldn't make sense for the same parameter in a different operation. To help you understand the purpose of each, the following naming convention is used for the structures:

  • Parameter type structures that end in Detail are used in Get operations.

  • Parameter type structures that end in Item are used in List operations.

  • Parameter type structures that use neither suffix are used in the mutating (create and update) operations.

", "operations": { + "BatchIsAuthorized": "

Makes a series of decisions about multiple authorization requests for one principal or resource. Each request contains the equivalent content of an IsAuthorized request: principal, action, resource, and context. Either the principal or the resource parameter must be identical across all requests. For example, Verified Permissions won't evaluate a pair of requests where bob views photo1 and alice views photo2. Authorization of bob to view photo1 and photo2, or bob and alice to view photo1, are valid batches.

The request is evaluated against all policies in the specified policy store that match the entities that you declare. The result of the decisions is a series of Allow or Deny responses, along with the IDs of the policies that produced each decision.

The entities of a BatchIsAuthorized API request can contain up to 100 principals and up to 100 resources. The requests of a BatchIsAuthorized API request can contain up to 30 requests.

The BatchIsAuthorized operation doesn't have its own IAM permission. To authorize this operation for Amazon Web Services principals, include the permission verifiedpermissions:IsAuthorized in their IAM policies.

", "CreateIdentitySource": "

Creates a reference to an Amazon Cognito user pool as an external identity provider (IdP).

After you create an identity source, you can use the identities provided by the IdP as proxies for the principal in authorization queries that use the IsAuthorizedWithToken operation. These identities take the form of tokens that contain claims about the user, such as IDs, attributes and group memberships. Amazon Cognito provides both identity tokens and access tokens, and Verified Permissions can use either or both. Any combination of identity and access tokens results in the same Cedar principal. Verified Permissions automatically translates the information about the identities into the standard Cedar attributes that can be evaluated by your policies. Because the Amazon Cognito identity and access tokens can contain different information, the tokens you choose to use determine which principal attributes are available to access when evaluating Cedar policies.

If you delete a Amazon Cognito user pool or user, tokens from that deleted pool or that deleted user continue to be usable until they expire.

To reference a user from this identity source in your Cedar policies, use the following syntax.

IdentityType::\"<CognitoUserPoolIdentifier>|<CognitoClientId>

Where IdentityType is the string that you provide to the PrincipalEntityType parameter for this operation. The CognitoUserPoolId and CognitoClientId are defined by the Amazon Cognito user pool.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", "CreatePolicy": "

Creates a Cedar policy and saves it in the specified policy store. You can create either a static policy or a policy linked to a policy template.

  • To create a static policy, provide the Cedar policy text in the StaticPolicy section of the PolicyDefinition.

  • To create a policy that is dynamically linked to a policy template, specify the policy template ID and the principal and resource to associate with this policy in the templateLinked section of the PolicyDefinition. If the policy template is ever updated, any policies linked to the policy template automatically use the updated template.

Creating a policy causes it to be validated against the schema in the policy store. If the policy doesn't pass validation, the operation fails and the policy isn't stored.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", - "CreatePolicyStore": "

Creates a policy store. A policy store is a container for policy resources.

Although Cedar supports multiple namespaces, Verified Permissions currently supports only one namespace per policy store.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", + "CreatePolicyStore": "

Creates a policy store. A policy store is a container for policy resources.

Although Cedar supports multiple namespaces, Verified Permissions currently supports only one namespace per policy store.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", "CreatePolicyTemplate": "

Creates a policy template. A template can use placeholders for the principal and resource. A template must be instantiated into a policy by associating it with specific principals and resources to use for the placeholders. That instantiated policy can then be considered in authorization decisions. The instantiated policy works identically to any other policy, except that it is dynamically linked to the template. If the template changes, then any policies that are linked to that template are immediately updated as well.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", "DeleteIdentitySource": "

Deletes an identity source that references an identity provider (IdP) such as Amazon Cognito. After you delete the identity source, you can no longer use tokens for identities from that identity source to represent principals in authorization queries made using IsAuthorizedWithToken. operations.

", "DeletePolicy": "

Deletes the specified policy from the policy store.

This operation is idempotent; if you specify a policy that doesn't exist, the request response returns a successful HTTP 200 status code.

", @@ -25,7 +26,7 @@ "UpdateIdentitySource": "

Updates the specified identity source to use a new identity provider (IdP) source, or to change the mapping of identities from the IdP to a different principal entity type.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", "UpdatePolicy": "

Modifies a Cedar static policy in the specified policy store. You can change only certain elements of the UpdatePolicyDefinition parameter. You can directly update only static policies. To change a template-linked policy, you must update the template instead, using UpdatePolicyTemplate.

  • If policy validation is enabled in the policy store, then updating a static policy causes Verified Permissions to validate the policy against the schema in the policy store. If the updated static policy doesn't pass validation, the operation fails and the update isn't stored.

  • When you edit a static policy, You can change only certain elements of a static policy:

    • The action referenced by the policy.

    • A condition clause, such as when and unless.

    You can't change these elements of a static policy:

    • Changing a policy from a static policy to a template-linked policy.

    • Changing the effect of a static policy from permit or forbid.

    • The principal referenced by a static policy.

    • The resource referenced by a static policy.

  • To update a template-linked policy, you must update the template instead.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", "UpdatePolicyStore": "

Modifies the validation setting for a policy store.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

", - "UpdatePolicyTemplate": "

Updates the specified policy template. You can update only the description and the some elements of the policyBody.

Changes you make to the policy template content are immediately reflected in authorization decisions that involve all template-linked policies instantiated from this template.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

" + "UpdatePolicyTemplate": "

Updates the specified policy template. You can update only the description and the some elements of the policyBody.

Changes you make to the policy template content are immediately (within the constraints of eventual consistency) reflected in authorization decisions that involve all template-linked policies instantiated from this template.

Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

" }, "shapes": { "AccessDeniedException": { @@ -40,8 +41,9 @@ } }, "ActionIdentifier": { - "base": "

Contains information about an action for a request for which an authorization decision is made.

This data type is used as an request parameter to the IsAuthorized and IsAuthorizedWithToken operations.

Example: { \"actionId\": \"<action name>\", \"actionType\": \"Action\" }

", + "base": "

Contains information about an action for a request for which an authorization decision is made.

This data type is used as a request parameter to the IsAuthorized, BatchIsAuthorized, and IsAuthorizedWithToken operations.

Example: { \"actionId\": \"<action name>\", \"actionType\": \"Action\" }

", "refs": { + "BatchIsAuthorizedInputItem$action": "

Specifies the requested action to be authorized. For example, is the principal authorized to perform this action on the resource?

", "IsAuthorizedInput$action": "

Specifies the requested action to be authorized. For example, is the principal authorized to perform this action on the resource?

", "IsAuthorizedWithTokenInput$action": "

Specifies the requested action to be authorized. Is the specified principal authorized to perform this action on the specified resource.

" } @@ -53,7 +55,7 @@ } }, "AttributeValue": { - "base": "

The value of an attribute.

Contains information about the runtime context for a request for which an authorization decision is made.

This data type is used as a member of the ContextDefinition structure which is uses as a request parameter for the IsAuthorized and IsAuthorizedWithToken operations.

", + "base": "

The value of an attribute.

Contains information about the runtime context for a request for which an authorization decision is made.

This data type is used as a member of the ContextDefinition structure which is uses as a request parameter for the IsAuthorized, BatchIsAuthorized, and IsAuthorizedWithToken operations.

", "refs": { "ContextMap$value": null, "EntityAttributes$value": null, @@ -61,6 +63,41 @@ "SetAttribute$member": null } }, + "BatchIsAuthorizedInput": { + "base": null, + "refs": { + } + }, + "BatchIsAuthorizedInputItem": { + "base": "

An authorization request that you include in a BatchIsAuthorized API request.

", + "refs": { + "BatchIsAuthorizedInputList$member": null, + "BatchIsAuthorizedOutputItem$request": "

The authorization request that initiated the decision.

" + } + }, + "BatchIsAuthorizedInputList": { + "base": null, + "refs": { + "BatchIsAuthorizedInput$requests": "

An array of up to 30 requests that you want Verified Permissions to evaluate.

" + } + }, + "BatchIsAuthorizedOutput": { + "base": null, + "refs": { + } + }, + "BatchIsAuthorizedOutputItem": { + "base": "

The decision, based on policy evaluation, from an individual authorization request in a BatchIsAuthorized API request.

", + "refs": { + "BatchIsAuthorizedOutputList$member": null + } + }, + "BatchIsAuthorizedOutputList": { + "base": null, + "refs": { + "BatchIsAuthorizedOutput$results": "

A series of Allow or Deny decisions for each request, and the policies that produced them.

" + } + }, "Boolean": { "base": null, "refs": { @@ -70,7 +107,7 @@ "BooleanAttribute": { "base": null, "refs": { - "AttributeValue$boolean": "

An attribute value of Boolean type.

Example: {\"boolean\": true}

" + "AttributeValue$boolean": "

An attribute value of Boolean type.

Example: {\"boolean\": true}

" } }, "ClientId": { @@ -106,8 +143,9 @@ } }, "ContextDefinition": { - "base": "

Contains additional details about the context of the request. Verified Permissions evaluates this information in an authorization request as part of the when and unless clauses in a policy.

This data type is used as a request parameter for the IsAuthorized and IsAuthorizedWithToken operations.

Example: \"context\":{\"Context\":{\"<KeyName1>\":{\"boolean\":true},\"<KeyName2>\":{\"long\":1234}}}

", + "base": "

Contains additional details about the context of the request. Verified Permissions evaluates this information in an authorization request as part of the when and unless clauses in a policy.

This data type is used as a request parameter for the IsAuthorized, BatchIsAuthorized, and IsAuthorizedWithToken operations.

Example: \"context\":{\"contextMap\":{\"<KeyName1>\":{\"boolean\":true},\"<KeyName2>\":{\"long\":1234}}}

", "refs": { + "BatchIsAuthorizedInputItem$context": "

Specifies additional context that can be used to make more granular authorization decisions.

", "IsAuthorizedInput$context": "

Specifies additional context that can be used to make more granular authorization decisions.

", "IsAuthorizedWithTokenInput$context": "

Specifies additional context that can be used to make more granular authorization decisions.

" } @@ -115,7 +153,7 @@ "ContextMap": { "base": null, "refs": { - "ContextDefinition$contextMap": "

An list of attributes that are needed to successfully evaluate an authorization request. Each attribute in this array must include a map of a data type and its value.

Example: \"Context\":{\"<KeyName1>\":{\"boolean\":true},\"<KeyName2>\":{\"long\":1234}}

" + "ContextDefinition$contextMap": "

An list of attributes that are needed to successfully evaluate an authorization request. Each attribute in this array must include a map of a data type and its value.

Example: \"contextMap\":{\"<KeyName1>\":{\"boolean\":true},\"<KeyName2>\":{\"long\":1234}}

" } }, "CreateIdentitySourceInput": { @@ -161,6 +199,7 @@ "Decision": { "base": null, "refs": { + "BatchIsAuthorizedOutputItem$decision": "

An authorization decision that indicates if the authorization request should be allowed or denied.

", "IsAuthorizedOutput$decision": "

An authorization decision that indicates if the authorization request should be allowed or denied.

", "IsAuthorizedWithTokenOutput$decision": "

An authorization decision that indicates if the authorization request should be allowed or denied.

" } @@ -206,7 +245,7 @@ } }, "DeterminingPolicyItem": { - "base": "

Contains information about one of the policies that determined an authorization decision.

This data type is used as an element in a response parameter for the IsAuthorized and IsAuthorizedWithToken operations.

Example: \"determiningPolicies\":[{\"policyId\":\"SPEXAMPLEabcdefg111111\"}]

", + "base": "

Contains information about one of the policies that determined an authorization decision.

This data type is used as an element in a response parameter for the IsAuthorized, BatchIsAuthorized, and IsAuthorizedWithToken operations.

Example: \"determiningPolicies\":[{\"policyId\":\"SPEXAMPLEabcdefg111111\"}]

", "refs": { "DeterminingPolicyList$member": null } @@ -214,6 +253,7 @@ "DeterminingPolicyList": { "base": null, "refs": { + "BatchIsAuthorizedOutputItem$determiningPolicies": "

The list of determining policies used to make the authorization decision. For example, if there are two matching policies, where one is a forbid and the other is a permit, then the forbid policy will be the determining policy. In the case of multiple matching permit policies then there would be multiple determining policies. In the case that no policies match, and hence the response is DENY, there would be no determining policies.

", "IsAuthorizedOutput$determiningPolicies": "

The list of determining policies used to make the authorization decision. For example, if there are two matching policies, where one is a forbid and the other is a permit, then the forbid policy will be the determining policy. In the case of multiple matching permit policies then there would be multiple determining policies. In the case that no policies match, and hence the response is DENY, there would be no determining policies.

", "IsAuthorizedWithTokenOutput$determiningPolicies": "

The list of determining policies used to make the authorization decision. For example, if there are multiple matching policies, where at least one is a forbid policy, then because forbid always overrides permit the forbid policies are the determining policies. If all matching policies are permit policies, then those policies are the determining policies. When no policies match and the response is the default DENY, there are no determining policies.

" } @@ -228,6 +268,7 @@ "EntitiesDefinition": { "base": "

Contains the list of entities to be considered during an authorization request. This includes all principals, resources, and actions required to successfully evaluate the request.

This data type is used as a field in the response parameter for the IsAuthorized and IsAuthorizedWithToken operations.

", "refs": { + "BatchIsAuthorizedInput$entities": "

Specifies the list of resources and principals and their associated attributes that Verified Permissions can examine when evaluating the policies.

You can include only principal and resource entities in this parameter; you can't include actions. You must specify actions in the schema.

", "IsAuthorizedInput$entities": "

Specifies the list of resources and principals and their associated attributes that Verified Permissions can examine when evaluating the policies.

You can include only principal and resource entities in this parameter; you can't include actions. You must specify actions in the schema.

", "IsAuthorizedWithTokenInput$entities": "

Specifies the list of resources and their associated attributes that Verified Permissions can examine when evaluating the policies.

You can include only resource and action entities in this parameter; you can't include principals.

  • The IsAuthorizedWithToken operation takes principal attributes from only the identityToken or accessToken passed to the operation.

  • For action entities, you can include only their Identifier and EntityType.

" } @@ -248,6 +289,8 @@ "base": "

Contains the identifier of an entity, including its ID and type.

This data type is used as a request parameter for IsAuthorized operation, and as a response parameter for the CreatePolicy, GetPolicy, and UpdatePolicy operations.

Example: {\"entityId\":\"string\",\"entityType\":\"string\"}

", "refs": { "AttributeValue$entityIdentifier": "

An attribute value of type EntityIdentifier.

Example: \"entityIdentifier\": { \"entityId\": \"<id>\", \"entityType\": \"<entity type>\"}

", + "BatchIsAuthorizedInputItem$principal": "

Specifies the principal for which the authorization decision is to be made.

", + "BatchIsAuthorizedInputItem$resource": "

Specifies the resource for which the authorization decision is to be made.

", "CreatePolicyOutput$principal": "

The principal specified in the new policy's scope. This response element isn't present when principal isn't specified in the policy content.

", "CreatePolicyOutput$resource": "

The resource specified in the new policy's scope. This response element isn't present when the resource isn't specified in the policy content.

", "EntityItem$identifier": "

The identifier of the entity.

", @@ -296,7 +339,7 @@ } }, "EvaluationErrorItem": { - "base": "

Contains a description of an evaluation error.

This data type is used as a request parameter in the IsAuthorized and IsAuthorizedWithToken operations.

", + "base": "

Contains a description of an evaluation error.

This data type is a response parameter of the IsAuthorized, BatchIsAuthorized, and IsAuthorizedWithToken operations.

", "refs": { "EvaluationErrorList$member": null } @@ -304,6 +347,7 @@ "EvaluationErrorList": { "base": null, "refs": { + "BatchIsAuthorizedOutputItem$errors": "

Errors that occurred while making an authorization decision, for example, a policy references an Entity or entity Attribute that does not exist in the slice.

", "IsAuthorizedOutput$errors": "

Errors that occurred while making an authorization decision, for example, a policy references an Entity or entity Attribute that does not exist in the slice.

", "IsAuthorizedWithTokenOutput$errors": "

Errors that occurred while making an authorization decision. For example, a policy references an entity or entity attribute that does not exist in the slice.

" } @@ -489,7 +533,7 @@ "LongAttribute": { "base": null, "refs": { - "AttributeValue$long": "

An attribute value of Long type.

Example: {\"long\": 0}

" + "AttributeValue$long": "

An attribute value of Long type.

Example: {\"long\": 0}

" } }, "MaxResults": { @@ -509,6 +553,7 @@ "NamespaceList": { "base": null, "refs": { + "GetSchemaOutput$namespaces": "

The namespaces of the entities referenced by this schema.

", "PutSchemaOutput$namespaces": "

Identifies the namespaces of the entities referenced by this schema.

" } }, @@ -598,9 +643,19 @@ "UpdateStaticPolicyDefinition$statement": "

Specifies the Cedar policy language text to be added to or replaced on the static policy.

You can change only the following elements from the original content:

  • The action referenced by the policy.

  • Any conditional clauses, such as when or unless clauses.

You can't change the following elements:

  • Changing from StaticPolicy to TemplateLinkedPolicy.

  • The effect (permit or forbid) of the policy.

  • The principal referenced by the policy.

  • The resource referenced by the policy.

" } }, + "PolicyStoreDescription": { + "base": null, + "refs": { + "CreatePolicyStoreInput$description": "

Descriptive text that you can provide to help with identification of the current policy store.

", + "GetPolicyStoreOutput$description": "

Descriptive text that you can provide to help with identification of the current policy store.

", + "PolicyStoreItem$description": "

Descriptive text that you can provide to help with identification of the current policy store.

", + "UpdatePolicyStoreInput$description": "

Descriptive text that you can provide to help with identification of the current policy store.

" + } + }, "PolicyStoreId": { "base": null, "refs": { + "BatchIsAuthorizedInput$policyStoreId": "

Specifies the ID of the policy store. Policies in this policy store will be used to make the authorization decisions for the input.

", "CreateIdentitySourceInput$policyStoreId": "

Specifies the ID of the policy store in which you want to store this identity source. Only policies and requests made using this policy store can reference identities from the identity provider configured in the new identity source.

", "CreateIdentitySourceOutput$policyStoreId": "

The ID of the policy store that contains the identity source.

", "CreatePolicyInput$policyStoreId": "

Specifies the PolicyStoreId of the policy store you want to store the policy in.

", @@ -725,7 +780,7 @@ "RecordAttribute": { "base": null, "refs": { - "AttributeValue$record": "

An attribute value of Record type.

Example: {\"record\": { \"keyName\": {} } }

" + "AttributeValue$record": "

An attribute value of Record type.

Example: {\"record\": { \"keyName\": {} } }

" } }, "ResourceArn": { @@ -783,7 +838,7 @@ "SetAttribute": { "base": null, "refs": { - "AttributeValue$set": "

An attribute value of Set type.

Example: {\"set\": [ {} ] }

" + "AttributeValue$set": "

An attribute value of Set type.

Example: {\"set\": [ {} ] }

" } }, "StaticPolicyDefinition": { @@ -841,7 +896,7 @@ "StringAttribute": { "base": null, "refs": { - "AttributeValue$string": "

An attribute value of String type.

Example: {\"string\": \"abc\"}

" + "AttributeValue$string": "

An attribute value of String type.

Example: {\"string\": \"abc\"}

" } }, "TemplateLinkedPolicyDefinition": { @@ -893,6 +948,7 @@ "PolicyItem$createdDate": "

The date and time the policy was created.

", "PolicyItem$lastUpdatedDate": "

The date and time the policy was most recently updated.

", "PolicyStoreItem$createdDate": "

The date and time the policy was created.

", + "PolicyStoreItem$lastUpdatedDate": "

The date and time the policy store was most recently updated.

", "PolicyTemplateItem$createdDate": "

The date and time that the policy template was created.

", "PolicyTemplateItem$lastUpdatedDate": "

The date and time that the policy template was most recently updated.

", "PutSchemaOutput$createdDate": "

The date and time that the schema was originally created.

", @@ -988,7 +1044,7 @@ } }, "ValidationException": { - "base": "

The request failed because one or more input parameters don't satisfy their constraint requirements. The output is provided as a list of fields and a reason for each field that isn't valid.

The possible reasons include the following:

  • UnrecognizedEntityType

    The policy includes an entity type that isn't found in the schema.

  • UnrecognizedActionId

    The policy includes an action id that isn't found in the schema.

  • InvalidActionApplication

    The policy includes an action that, according to the schema, doesn't support the specified principal and resource.

  • UnexpectedType

    The policy included an operand that isn't a valid type for the specified operation.

  • IncompatibleTypes

    The types of elements included in a set, or the types of expressions used in an if...then...else clause aren't compatible in this context.

  • MissingAttribute

    The policy attempts to access a record or entity attribute that isn't specified in the schema. Test for the existence of the attribute first before attempting to access its value. For more information, see the has (presence of attribute test) operator in the Cedar Policy Language Guide.

  • UnsafeOptionalAttributeAccess

    The policy attempts to access a record or entity attribute that is optional and isn't guaranteed to be present. Test for the existence of the attribute first before attempting to access its value. For more information, see the has (presence of attribute test) operator in the Cedar Policy Language Guide.

  • ImpossiblePolicy

    Cedar has determined that a policy condition always evaluates to false. If the policy is always false, it can never apply to any query, and so it can never affect an authorization decision.

  • WrongNumberArguments

    The policy references an extension type with the wrong number of arguments.

  • FunctionArgumentValidationError

    Cedar couldn't parse the argument passed to an extension type. For example, a string that is to be parsed as an IPv4 address can contain only digits and the period character.

", + "base": "

The request failed because one or more input parameters don't satisfy their constraint requirements. The output is provided as a list of fields and a reason for each field that isn't valid.

The possible reasons include the following:

  • UnrecognizedEntityType

    The policy includes an entity type that isn't found in the schema.

  • UnrecognizedActionId

    The policy includes an action id that isn't found in the schema.

  • InvalidActionApplication

    The policy includes an action that, according to the schema, doesn't support the specified principal and resource.

  • UnexpectedType

    The policy included an operand that isn't a valid type for the specified operation.

  • IncompatibleTypes

    The types of elements included in a set, or the types of expressions used in an if...then...else clause aren't compatible in this context.

  • MissingAttribute

    The policy attempts to access a record or entity attribute that isn't specified in the schema. Test for the existence of the attribute first before attempting to access its value. For more information, see the has (presence of attribute test) operator in the Cedar Policy Language Guide.

  • UnsafeOptionalAttributeAccess

    The policy attempts to access a record or entity attribute that is optional and isn't guaranteed to be present. Test for the existence of the attribute first before attempting to access its value. For more information, see the has (presence of attribute test) operator in the Cedar Policy Language Guide.

  • ImpossiblePolicy

    Cedar has determined that a policy condition always evaluates to false. If the policy is always false, it can never apply to any query, and so it can never affect an authorization decision.

  • WrongNumberArguments

    The policy references an extension type with the wrong number of arguments.

  • FunctionArgumentValidationError

    Cedar couldn't parse the argument passed to an extension type. For example, a string that is to be parsed as an IPv4 address can contain only digits and the period character.

", "refs": { } }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/verifiedpermissions/2021-12-01/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/verifiedpermissions/2021-12-01/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/verifiedpermissions/2021-12-01/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/verifiedpermissions/2021-12-01/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -59,7 +58,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -87,13 +85,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -106,7 +105,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -120,7 +118,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -143,7 +140,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -178,11 +174,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -193,16 +187,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -216,14 +213,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -232,15 +227,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -251,16 +245,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -274,7 +271,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -294,11 +290,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -309,20 +303,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -333,18 +329,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wafv2/2019-07-29/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wafv2/2019-07-29/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wafv2/2019-07-29/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wafv2/2019-07-29/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1904,7 +1904,8 @@ "JsonBody":{"shape":"JsonBody"}, "Headers":{"shape":"Headers"}, "Cookies":{"shape":"Cookies"}, - "HeaderOrder":{"shape":"HeaderOrder"} + "HeaderOrder":{"shape":"HeaderOrder"}, + "JA3Fingerprint":{"shape":"JA3Fingerprint"} } }, "FieldToMatchData":{ @@ -2386,6 +2387,13 @@ "TARGETED" ] }, + "JA3Fingerprint":{ + "type":"structure", + "required":["FallbackBehavior"], + "members":{ + "FallbackBehavior":{"shape":"FallbackBehavior"} + } + }, "JsonBody":{ "type":"structure", "required":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wafv2/2019-07-29/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wafv2/2019-07-29/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wafv2/2019-07-29/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wafv2/2019-07-29/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -2,13 +2,13 @@ "version": "2.0", "service": "WAF

This is the latest version of the WAF API, released in November, 2019. The names of the entities that you use to access this API, like endpoints and namespaces, all have the versioning information added, like \"V2\" or \"v2\", to distinguish from the prior version. We recommend migrating your resources to this version, because it has a number of significant improvements.

If you used WAF prior to this release, you can't use this WAFV2 API to access any WAF resources that you created before. You can access your old rules, web ACLs, and other WAF resources only through the WAF Classic APIs. The WAF Classic APIs have retained the prior names, endpoints, and namespaces.

For information, including how to migrate your WAF resources to this version, see the WAF Developer Guide.

WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to an Amazon CloudFront distribution, Amazon API Gateway REST API, Application Load Balancer, AppSync GraphQL API, Amazon Cognito user pool, App Runner service, or Amazon Web Services Verified Access instance. WAF also lets you control access to your content, to protect the Amazon Web Services resource that WAF is monitoring. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, the protected resource responds to requests with either the requested content, an HTTP 403 status code (Forbidden), or with a custom response.

This API guide is for developers who need detailed information about WAF API actions, data types, and errors. For detailed information about WAF features and guidance for configuring and using WAF, see the WAF Developer Guide.

You can make calls using the endpoints listed in WAF endpoints and quotas.

  • For regional applications, you can use any of the endpoints in the list. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

  • For Amazon CloudFront applications, you must use the API endpoint listed for US East (N. Virginia): us-east-1.

Alternatively, you can use one of the Amazon Web Services SDKs to access an API that's tailored to the programming language or platform that you're using. For more information, see Amazon Web Services SDKs.

We currently provide two versions of the WAF API: this API and the prior versions, the classic WAF APIs. This new API provides the same functionality as the older versions, with the following major improvements:

  • You use one API for both global and regional applications. Where you need to distinguish the scope, you specify a Scope parameter and set it to CLOUDFRONT or REGIONAL.

  • You can define a web ACL or rule group with a single call, and update it with a single call. You define all rule specifications in JSON format, and pass them to your rule group or web ACL calls.

  • The limits WAF places on the use of rules more closely reflects the cost of running each type of rule. Rule groups include capacity settings, so you know the maximum cost of a rule group when you use it.

", "operations": { - "AssociateWebACL": "

Associates a web ACL with a regional application resource, to protect the resource. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

For Amazon CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To associate a web ACL, in the CloudFront call UpdateDistribution, set the web ACL ID to the Amazon Resource Name (ARN) of the web ACL. For information, see UpdateDistribution in the Amazon CloudFront Developer Guide.

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

", + "AssociateWebACL": "

Associates a web ACL with a regional application resource, to protect the resource. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

For Amazon CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To associate a web ACL, in the CloudFront call UpdateDistribution, set the web ACL ID to the Amazon Resource Name (ARN) of the web ACL. For information, see UpdateDistribution in the Amazon CloudFront Developer Guide.

Required permissions for customer-managed IAM policies

This call requires permissions that are specific to the protected resource type. For details, see Permissions for AssociateWebACL in the WAF Developer Guide.

Temporary inconsistencies during updates

When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes.

The following are examples of the temporary inconsistencies that you might notice during change propagation:

  • After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable.

  • After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.

  • After you change a rule action setting, you might see the old action in some places and the new action in others.

  • After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.

", "CheckCapacity": "

Returns the web ACL capacity unit (WCU) requirements for a specified scope and set of rules. You can use this to check the capacity requirements for the rules you want to use in a RuleGroup or WebACL.

WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. For more information, see WAF web ACL capacity units (WCU) in the WAF Developer Guide.

", "CreateAPIKey": "

Creates an API key that contains a set of token domains.

API keys are required for the integration of the CAPTCHA API in your JavaScript client applications. The API lets you customize the placement and characteristics of the CAPTCHA puzzle for your end users. For more information about the CAPTCHA JavaScript integration, see WAF client application integration in the WAF Developer Guide.

You can use a single key for up to 5 domains. After you generate a key, you can copy it for use in your JavaScript integration.

", "CreateIPSet": "

Creates an IPSet, which you use to identify web requests that originate from specific IP addresses or ranges of IP addresses. For example, if you're receiving a lot of requests from a ranges of IP addresses, you can configure WAF to block them using an IPSet that lists those IP addresses.

", "CreateRegexPatternSet": "

Creates a RegexPatternSet, which you reference in a RegexPatternSetReferenceStatement, to have WAF inspect a web request component for the specified patterns.

", "CreateRuleGroup": "

Creates a RuleGroup per the specifications provided.

A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.

", - "CreateWebACL": "

Creates a WebACL per the specifications provided.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", + "CreateWebACL": "

Creates a WebACL per the specifications provided.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", "DeleteFirewallManagerRuleGroups": "

Deletes all rule groups that are managed by Firewall Manager for the specified web ACL.

You can only use this if ManagedByFirewallManager is false in the specified WebACL.

", "DeleteIPSet": "

Deletes the specified IPSet.

", "DeleteLoggingConfiguration": "

Deletes the LoggingConfiguration from the specified web ACL.

", @@ -19,7 +19,7 @@ "DescribeAllManagedProducts": "

Provides high-level information for the Amazon Web Services Managed Rules rule groups and Amazon Web Services Marketplace managed rule groups.

", "DescribeManagedProductsByVendor": "

Provides high-level information for the managed rule groups owned by a specific vendor.

", "DescribeManagedRuleGroup": "

Provides high-level information for a managed rule group, including descriptions of the rules.

", - "DisassociateWebACL": "

Disassociates the specified regional application resource from any existing web ACL association. A resource can have at most one web ACL association. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

For Amazon CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To disassociate a web ACL, provide an empty web ACL ID in the CloudFront call UpdateDistribution. For information, see UpdateDistribution in the Amazon CloudFront API Reference.

", + "DisassociateWebACL": "

Disassociates the specified regional application resource from any existing web ACL association. A resource can have at most one web ACL association. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

For Amazon CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To disassociate a web ACL, provide an empty web ACL ID in the CloudFront call UpdateDistribution. For information, see UpdateDistribution in the Amazon CloudFront API Reference.

Required permissions for customer-managed IAM policies

This call requires permissions that are specific to the protected resource type. For details, see Permissions for DisassociateWebACL in the WAF Developer Guide.

", "GenerateMobileSdkReleaseUrl": "

Generates a presigned download URL for the specified release of the mobile SDK.

The mobile SDK is not generally available. Customers who have access to the mobile SDK can use it to establish and manage WAF tokens for use in HTTP(S) requests from a mobile device to WAF. For more information, see WAF client application integration in the WAF Developer Guide.

", "GetDecryptedAPIKey": "

Returns your API key in decrypted form. Use this to check the token domains that you have defined for the key.

API keys are required for the integration of the CAPTCHA API in your JavaScript client applications. The API lets you customize the placement and characteristics of the CAPTCHA puzzle for your end users. For more information about the CAPTCHA JavaScript integration, see WAF client application integration in the WAF Developer Guide.

", "GetIPSet": "

Retrieves the specified IPSet.

", @@ -32,7 +32,7 @@ "GetRuleGroup": "

Retrieves the specified RuleGroup.

", "GetSampledRequests": "

Gets detailed information about a specified number of requests--a sample--that WAF randomly selects from among the first 5,000 requests that your Amazon Web Services resource received during a time range that you choose. You can specify a sample size of up to 500 requests, and you can specify any time range in the previous three hours.

GetSampledRequests returns a time range, which is usually the time range that you specified. However, if your resource (such as a CloudFront distribution) received 5,000 requests before the specified time range elapsed, GetSampledRequests returns an updated time range. This new time range indicates the actual period during which WAF selected the requests in the sample.

", "GetWebACL": "

Retrieves the specified WebACL.

", - "GetWebACLForResource": "

Retrieves the WebACL for the specified resource.

", + "GetWebACLForResource": "

Retrieves the WebACL for the specified resource.

This call uses GetWebACL, to verify that your account has permission to access the retrieved web ACL. If you get an error that indicates that your account isn't authorized to perform wafv2:GetWebACL on the resource, that error won't be included in your CloudTrail event history.

For Amazon CloudFront, don't use this call. Instead, call the CloudFront action GetDistributionConfig. For information, see GetDistributionConfig in the Amazon CloudFront API Reference.

Required permissions for customer-managed IAM policies

This call requires permissions that are specific to the protected resource type. For details, see Permissions for GetWebACLForResource in the WAF Developer Guide.

", "ListAPIKeys": "

Retrieves a list of the API keys that you've defined for the specified scope.

API keys are required for the integration of the CAPTCHA API in your JavaScript client applications. The API lets you customize the placement and characteristics of the CAPTCHA puzzle for your end users. For more information about the CAPTCHA JavaScript integration, see WAF client application integration in the WAF Developer Guide.

", "ListAvailableManagedRuleGroupVersions": "

Returns a list of the available versions for the specified managed rule group.

", "ListAvailableManagedRuleGroups": "

Retrieves an array of managed rule groups that are available for you to use. This list includes all Amazon Web Services Managed Rules rule groups and all of the Amazon Web Services Marketplace managed rule groups that you're subscribed to.

", @@ -41,7 +41,7 @@ "ListManagedRuleSets": "

Retrieves the managed rule sets that you own.

This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Amazon Web Services Marketplace sellers.

Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.

", "ListMobileSdkReleases": "

Retrieves a list of the available releases for the mobile SDK and the specified device platform.

The mobile SDK is not generally available. Customers who have access to the mobile SDK can use it to establish and manage WAF tokens for use in HTTP(S) requests from a mobile device to WAF. For more information, see WAF client application integration in the WAF Developer Guide.

", "ListRegexPatternSets": "

Retrieves an array of RegexPatternSetSummary objects for the regex pattern sets that you manage.

", - "ListResourcesForWebACL": "

Retrieves an array of the Amazon Resource Names (ARNs) for the regional resources that are associated with the specified web ACL. If you want the list of Amazon CloudFront resources, use the CloudFront call ListDistributionsByWebACLId.

", + "ListResourcesForWebACL": "

Retrieves an array of the Amazon Resource Names (ARNs) for the regional resources that are associated with the specified web ACL.

For Amazon CloudFront, don't use this call. Instead, use the CloudFront call ListDistributionsByWebACLId. For information, see ListDistributionsByWebACLId in the Amazon CloudFront API Reference.

Required permissions for customer-managed IAM policies

This call requires permissions that are specific to the protected resource type. For details, see Permissions for ListResourcesForWebACL in the WAF Developer Guide.

", "ListRuleGroups": "

Retrieves an array of RuleGroupSummary objects for the rule groups that you manage.

", "ListTagsForResource": "

Retrieves the TagInfoForResource for the specified resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to \"customer\" and the value to the customer name or ID. You can specify one or more tags to add to each Amazon Web Services resource, up to 50 tags for a resource.

You can tag the Amazon Web Services resources that you manage through WAF: web ACLs, rule groups, IP sets, and regex pattern sets. You can't manage or view tags through the WAF console.

", "ListWebACLs": "

Retrieves an array of WebACLSummary objects for the web ACLs that you manage.

", @@ -50,11 +50,11 @@ "PutPermissionPolicy": "

Attaches an IAM policy to the specified resource. Use this to share a rule group across accounts.

You must be the owner of the rule group to perform this operation.

This action is subject to the following restrictions:

  • You can attach only one policy with each PutPermissionPolicy request.

  • The ARN in the request must be a valid WAF RuleGroup ARN and the rule group must exist in the same Region.

  • The user making the request must be the owner of the rule group.

", "TagResource": "

Associates tags with the specified Amazon Web Services resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to \"customer\" and the value to the customer name or ID. You can specify one or more tags to add to each Amazon Web Services resource, up to 50 tags for a resource.

You can tag the Amazon Web Services resources that you manage through WAF: web ACLs, rule groups, IP sets, and regex pattern sets. You can't manage or view tags through the WAF console.

", "UntagResource": "

Disassociates tags from an Amazon Web Services resource. Tags are key:value pairs that you can associate with Amazon Web Services resources. For example, the tag key might be \"customer\" and the tag value might be \"companyA.\" You can specify one or more tags to add to each container. You can add up to 50 tags to each Amazon Web Services resource.

", - "UpdateIPSet": "

Updates the specified IPSet.

This operation completely replaces the mutable specifications that you already have for the IP set with the ones that you provide to this call.

To modify an IP set, do the following:

  1. Retrieve it by calling GetIPSet

  2. Update its settings as needed

  3. Provide the complete IP set specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

", + "UpdateIPSet": "

Updates the specified IPSet.

This operation completely replaces the mutable specifications that you already have for the IP set with the ones that you provide to this call.

To modify an IP set, do the following:

  1. Retrieve it by calling GetIPSet

  2. Update its settings as needed

  3. Provide the complete IP set specification to this call

Temporary inconsistencies during updates

When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes.

The following are examples of the temporary inconsistencies that you might notice during change propagation:

  • After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable.

  • After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.

  • After you change a rule action setting, you might see the old action in some places and the new action in others.

  • After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.

", "UpdateManagedRuleSetVersionExpiryDate": "

Updates the expiration information for your managed rule set. Use this to initiate the expiration of a managed rule group version. After you initiate expiration for a version, WAF excludes it from the response to ListAvailableManagedRuleGroupVersions for the managed rule group.

This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Amazon Web Services Marketplace sellers.

Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.

", - "UpdateRegexPatternSet": "

Updates the specified RegexPatternSet.

This operation completely replaces the mutable specifications that you already have for the regex pattern set with the ones that you provide to this call.

To modify a regex pattern set, do the following:

  1. Retrieve it by calling GetRegexPatternSet

  2. Update its settings as needed

  3. Provide the complete regex pattern set specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

", - "UpdateRuleGroup": "

Updates the specified RuleGroup.

This operation completely replaces the mutable specifications that you already have for the rule group with the ones that you provide to this call.

To modify a rule group, do the following:

  1. Retrieve it by calling GetRuleGroup

  2. Update its settings as needed

  3. Provide the complete rule group specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.

", - "UpdateWebACL": "

Updates the specified WebACL. While updating a web ACL, WAF provides continuous coverage to the resources that you have associated with the web ACL.

This operation completely replaces the mutable specifications that you already have for the web ACL with the ones that you provide to this call.

To modify a web ACL, do the following:

  1. Retrieve it by calling GetWebACL

  2. Update its settings as needed

  3. Provide the complete web ACL specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

" + "UpdateRegexPatternSet": "

Updates the specified RegexPatternSet.

This operation completely replaces the mutable specifications that you already have for the regex pattern set with the ones that you provide to this call.

To modify a regex pattern set, do the following:

  1. Retrieve it by calling GetRegexPatternSet

  2. Update its settings as needed

  3. Provide the complete regex pattern set specification to this call

Temporary inconsistencies during updates

When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes.

The following are examples of the temporary inconsistencies that you might notice during change propagation:

  • After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable.

  • After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.

  • After you change a rule action setting, you might see the old action in some places and the new action in others.

  • After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.

", + "UpdateRuleGroup": "

Updates the specified RuleGroup.

This operation completely replaces the mutable specifications that you already have for the rule group with the ones that you provide to this call.

To modify a rule group, do the following:

  1. Retrieve it by calling GetRuleGroup

  2. Update its settings as needed

  3. Provide the complete rule group specification to this call

A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.

Temporary inconsistencies during updates

When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes.

The following are examples of the temporary inconsistencies that you might notice during change propagation:

  • After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable.

  • After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.

  • After you change a rule action setting, you might see the old action in some places and the new action in others.

  • After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.

", + "UpdateWebACL": "

Updates the specified WebACL. While updating a web ACL, WAF provides continuous coverage to the resources that you have associated with the web ACL.

This operation completely replaces the mutable specifications that you already have for the web ACL with the ones that you provide to this call.

To modify a web ACL, do the following:

  1. Retrieve it by calling GetWebACL

  2. Update its settings as needed

  3. Provide the complete web ACL specification to this call

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

Temporary inconsistencies during updates

When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes.

The following are examples of the temporary inconsistencies that you might notice during change propagation:

  • After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable.

  • After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.

  • After you change a rule action setting, you might see the old action in some places and the new action in others.

  • After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.

" }, "shapes": { "APIKey": { @@ -412,7 +412,7 @@ "CreationPathString": { "base": null, "refs": { - "AWSManagedRulesACFPRuleSet$CreationPath": "

The path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.

For example, for the URL https://example.com/web/signup, you would provide the path /web/signup.

" + "AWSManagedRulesACFPRuleSet$CreationPath": "

The path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.

For example, for the URL https://example.com/web/newaccount, you would provide the path /web/newaccount. Account creation page paths that start with the path that you provide are considered a match. For example /web/newaccount matches the account creation paths /web/newaccount, /web/newaccount/, /web/newaccountPage, and /web/newaccount/thisPage, but doesn't match the path /home/web/newaccount or /website/newaccount.

" } }, "CustomHTTPHeader": { @@ -437,7 +437,7 @@ "base": null, "refs": { "CustomRequestHandling$InsertHeaders": "

The HTTP headers to insert into the request. Duplicate header names are not allowed.

For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

", - "CustomResponse$ResponseHeaders": "

The HTTP headers to use in the response. Duplicate header names are not allowed.

For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

" + "CustomResponse$ResponseHeaders": "

The HTTP headers to use in the response. You can specify any header name except for content-type. Duplicate header names are not allowed.

For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

" } }, "CustomRequestHandling": { @@ -775,7 +775,8 @@ "base": null, "refs": { "ForwardedIPConfig$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.

If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.

You can specify the following fallback behaviors:

  • MATCH - Treat the web request as matching the rule statement. WAF applies the rule action to the request.

  • NO_MATCH - Treat the web request as not matching the rule statement.

", - "IPSetForwardedIPConfig$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.

If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.

You can specify the following fallback behaviors:

  • MATCH - Treat the web request as matching the rule statement. WAF applies the rule action to the request.

  • NO_MATCH - Treat the web request as not matching the rule statement.

" + "IPSetForwardedIPConfig$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.

If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.

You can specify the following fallback behaviors:

  • MATCH - Treat the web request as matching the rule statement. WAF applies the rule action to the request.

  • NO_MATCH - Treat the web request as not matching the rule statement.

", + "JA3Fingerprint$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a JA3 fingerprint.

You can specify the following fallback behaviors:

  • MATCH - Treat the web request as matching the rule statement. WAF applies the rule action to the request.

  • NO_MATCH - Treat the web request as not matching the rule statement.

" } }, "FieldIdentifier": { @@ -1097,10 +1098,10 @@ "IPAddresses": { "base": null, "refs": { - "CreateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

  • To configure WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

  • To configure WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

  • To configure WAF to allow, block, or count requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To configure WAF to allow, block, or count requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

  • Empty array: \"Addresses\": []

  • Array with one address: \"Addresses\": [\"192.0.2.44/32\"]

  • Array with three addresses: \"Addresses\": [\"192.0.2.44/32\", \"192.0.2.0/24\", \"192.0.0.0/16\"]

  • INVALID specification: \"Addresses\": [\"\"] INVALID

", - "IPSet$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

  • To configure WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

  • To configure WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

  • To configure WAF to allow, block, or count requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To configure WAF to allow, block, or count requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

  • Empty array: \"Addresses\": []

  • Array with one address: \"Addresses\": [\"192.0.2.44/32\"]

  • Array with three addresses: \"Addresses\": [\"192.0.2.44/32\", \"192.0.2.0/24\", \"192.0.0.0/16\"]

  • INVALID specification: \"Addresses\": [\"\"] INVALID

", + "CreateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

  • For requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

  • For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

  • For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

  • Empty array: \"Addresses\": []

  • Array with one address: \"Addresses\": [\"192.0.2.44/32\"]

  • Array with three addresses: \"Addresses\": [\"192.0.2.44/32\", \"192.0.2.0/24\", \"192.0.0.0/16\"]

  • INVALID specification: \"Addresses\": [\"\"] INVALID

", + "IPSet$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

  • For requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

  • For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

  • For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

  • Empty array: \"Addresses\": []

  • Array with one address: \"Addresses\": [\"192.0.2.44/32\"]

  • Array with three addresses: \"Addresses\": [\"192.0.2.44/32\", \"192.0.2.0/24\", \"192.0.0.0/16\"]

  • INVALID specification: \"Addresses\": [\"\"] INVALID

", "RateBasedStatementManagedKeysIPSet$Addresses": "

The IP addresses that are currently blocked.

", - "UpdateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

  • To configure WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

  • To configure WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

  • To configure WAF to allow, block, or count requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To configure WAF to allow, block, or count requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

  • Empty array: \"Addresses\": []

  • Array with one address: \"Addresses\": [\"192.0.2.44/32\"]

  • Array with three addresses: \"Addresses\": [\"192.0.2.44/32\", \"192.0.2.0/24\", \"192.0.0.0/16\"]

  • INVALID specification: \"Addresses\": [\"\"] INVALID

" + "UpdateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

  • For requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

  • For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

  • For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

  • Empty array: \"Addresses\": []

  • Array with one address: \"Addresses\": [\"192.0.2.44/32\"]

  • Array with three addresses: \"Addresses\": [\"192.0.2.44/32\", \"192.0.2.0/24\", \"192.0.0.0/16\"]

  • INVALID specification: \"Addresses\": [\"\"] INVALID

" } }, "IPSet": { @@ -1153,6 +1154,12 @@ "AWSManagedRulesBotControlRuleSet$InspectionLevel": "

The inspection level to use for the Bot Control rule group. The common level is the least expensive. The targeted level includes all common level rules and adds rules with more advanced inspection criteria. For details, see WAF Bot Control rule group in the WAF Developer Guide.

" } }, + "JA3Fingerprint": { + "base": "

Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.

You can use this choice only with a string match ByteMatchStatement with the PositionalConstraint set to EXACTLY.

You can obtain the JA3 fingerprint for client requests from the web ACL logs. If WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the WAF Developer Guide.

Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.

", + "refs": { + "FieldToMatch$JA3Fingerprint": "

Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.

You can use this choice only with a string match ByteMatchStatement with the PositionalConstraint set to EXACTLY.

You can obtain the JA3 fingerprint for client requests from the web ACL logs. If WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the WAF Developer Guide.

Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.

" + } + }, "JsonBody": { "base": "

Inspect the body of the web request as JSON. The body immediately follows the request headers.

This is used to indicate the web request component to inspect, in the FieldToMatch specification.

Use the specifications in this object to indicate which parts of the JSON body to inspect using the rule's inspection criteria. WAF inspects only the parts of the JSON that result from the matches that you indicate.

Example JSON: \"JsonBody\": { \"MatchPattern\": { \"All\": {} }, \"MatchScope\": \"ALL\" }

", "refs": { @@ -1168,7 +1175,7 @@ "JsonMatchScope": { "base": null, "refs": { - "JsonBody$MatchScope": "

The parts of the JSON to match against using the MatchPattern. If you specify All, WAF matches against keys and values.

" + "JsonBody$MatchScope": "

The parts of the JSON to match against using the MatchPattern. If you specify ALL, WAF matches against keys and values.

All does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logical AND statement to combine two match rules, one that inspects the keys and another that inspects the values.

" } }, "JsonPointerPath": { @@ -1472,10 +1479,10 @@ } }, "ManagedRuleGroupStatement": { - "base": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. It can only be referenced as a top-level statement within a rule.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

", + "base": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. You cannot use a managed rule group inside another rule group. You can only reference a managed rule group as a top-level statement within a rule that you define in a web ACL.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

", "refs": { "FirewallManagerStatement$ManagedRuleGroupStatement": "

A statement used by Firewall Manager to run the rules that are defined in a managed rule group. This is managed by Firewall Manager for an Firewall Manager WAF policy.

", - "Statement$ManagedRuleGroupStatement": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. It can only be referenced as a top-level statement within a rule.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

" + "Statement$ManagedRuleGroupStatement": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. You cannot use a managed rule group inside another rule group. You can only reference a managed rule group as a top-level statement within a rule that you define in a web ACL.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

" } }, "ManagedRuleGroupSummaries": { @@ -1529,8 +1536,8 @@ "MapMatchScope": { "base": null, "refs": { - "Cookies$MatchScope": "

The parts of the cookies to inspect with the rule inspection criteria. If you specify All, WAF inspects both keys and values.

", - "Headers$MatchScope": "

The parts of the headers to match with the rule inspection criteria. If you specify All, WAF inspects both keys and values.

" + "Cookies$MatchScope": "

The parts of the cookies to inspect with the rule inspection criteria. If you specify ALL, WAF inspects both keys and values.

All does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logical AND statement to combine two match rules, one that inspects the keys and another that inspects the values.

", + "Headers$MatchScope": "

The parts of the headers to match with the rule inspection criteria. If you specify ALL, WAF inspects both keys and values.

All does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logical AND statement to combine two match rules, one that inspects the keys and another that inspects the values.

" } }, "Method": { @@ -1914,7 +1921,7 @@ "RegistrationPagePathString": { "base": null, "refs": { - "AWSManagedRulesACFPRuleSet$RegistrationPagePath": "

The path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users.

This page must accept GET text/html requests.

For example, for the URL https://example.com/web/register, you would provide the path /web/register.

" + "AWSManagedRulesACFPRuleSet$RegistrationPagePath": "

The path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users.

This page must accept GET text/html requests.

For example, for the URL https://example.com/web/registration, you would provide the path /web/registration. Registration page paths that start with the path that you provide are considered a match. For example /web/registration matches the registration paths /web/registration, /web/registration/, /web/registrationPage, and /web/registration/thisPage, but doesn't match the path /home/web/registration or /website/registration.

" } }, "RegularExpressionList": { @@ -2133,7 +2140,7 @@ } }, "Rule": { - "base": "

A single rule, which you can use in a WebACL or RuleGroup to identify web requests that you want to allow, block, or count. Each rule includes one top-level Statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "base": "

A single rule, which you can use in a WebACL or RuleGroup to identify web requests that you want to manage in some way. Each rule includes one top-level Statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", "refs": { "Rules$member": null } @@ -2166,10 +2173,10 @@ } }, "RuleGroupReferenceStatement": { - "base": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You can only use a rule group reference statement at the top level inside a web ACL.

", + "base": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You cannot use a rule group reference statement inside another rule group. You can only reference a rule group as a top-level statement within a rule that you define in a web ACL.

", "refs": { "FirewallManagerStatement$RuleGroupReferenceStatement": "

A statement used by Firewall Manager to run the rules that are defined in a rule group. This is managed by Firewall Manager for an Firewall Manager WAF policy.

", - "Statement$RuleGroupReferenceStatement": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You can only use a rule group reference statement at the top level inside a web ACL.

" + "Statement$RuleGroupReferenceStatement": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You cannot use a rule group reference statement inside another rule group. You can only reference a rule group as a top-level statement within a rule that you define in a web ACL.

" } }, "RuleGroupSummaries": { @@ -2208,12 +2215,12 @@ "base": null, "refs": { "CheckCapacityRequest$Rules": "

An array of Rule that you're configuring to use in a rule group or web ACL.

", - "CreateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "CreateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "RuleGroup$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "UpdateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "UpdateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "WebACL$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

" + "CreateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "CreateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "RuleGroup$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "UpdateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "UpdateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "WebACL$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

" } }, "SampleWeight": { @@ -2278,7 +2285,7 @@ "SearchString": { "base": null, "refs": { - "ByteMatchStatement$SearchString": "

A string value that you want WAF to search for. WAF searches only in the part of web requests that you designate for inspection in FieldToMatch. The maximum length of the value is 200 bytes.

Valid values depend on the component that you specify for inspection in FieldToMatch:

  • Method: The HTTP method that you want WAF to search for. This indicates the type of operation specified in the request.

  • UriPath: The value that you want WAF to search for in the URI path, for example, /images/daily-ad.jpg.

  • HeaderOrder: The comma-separated list of header names to match for. WAF creates a string that contains the ordered list of header names, from the headers in the web request, and then matches against that string.

If SearchString includes alphabetic characters A-Z and a-z, note that the value is case sensitive.

If you're using the WAF API

Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 200 bytes.

For example, suppose the value of Type is HEADER and the value of Data is User-Agent. If you want to search the User-Agent header for the value BadBot, you base64-encode BadBot using MIME base64-encoding and include the resulting value, QmFkQm90, in the value of SearchString.

If you're using the CLI or one of the Amazon Web Services SDKs

The value that you want WAF to search for. The SDK automatically base64 encodes the value.

" + "ByteMatchStatement$SearchString": "

A string value that you want WAF to search for. WAF searches only in the part of web requests that you designate for inspection in FieldToMatch. The maximum length of the value is 200 bytes.

Valid values depend on the component that you specify for inspection in FieldToMatch:

  • Method: The HTTP method that you want WAF to search for. This indicates the type of operation specified in the request.

  • UriPath: The value that you want WAF to search for in the URI path, for example, /images/daily-ad.jpg.

  • JA3Fingerprint: Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. You can use this choice only with a string match ByteMatchStatement with the PositionalConstraint set to EXACTLY.

    You can obtain the JA3 fingerprint for client requests from the web ACL logs. If WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the WAF Developer Guide.

  • HeaderOrder: The list of header names to match for. WAF creates a string that contains the ordered list of header names, from the headers in the web request, and then matches against that string.

If SearchString includes alphabetic characters A-Z and a-z, note that the value is case sensitive.

If you're using the WAF API

Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 200 bytes.

For example, suppose the value of Type is HEADER and the value of Data is User-Agent. If you want to search the User-Agent header for the value BadBot, you base64-encode BadBot using MIME base64-encoding and include the resulting value, QmFkQm90, in the value of SearchString.

If you're using the CLI or one of the Amazon Web Services SDKs

The value that you want WAF to search for. The SDK automatically base64 encodes the value.

" } }, "SensitivityLevel": { @@ -2356,7 +2363,7 @@ "String": { "base": null, "refs": { - "AWSManagedRulesATPRuleSet$LoginPath": "

The path of the login endpoint for your application. For example, for the URL https://example.com/web/login, you would provide the path /web/login.

The rule group inspects only HTTP POST requests to your specified login endpoint.

" + "AWSManagedRulesATPRuleSet$LoginPath": "

The path of the login endpoint for your application. For example, for the URL https://example.com/web/login, you would provide the path /web/login. Login paths that start with the path that you provide are considered a match. For example /web/login matches the login paths /web/login, /web/login/, /web/loginPage, and /web/login/thisPage, but doesn't match the login path /home/web/login or /website/login.

The rule group inspects only HTTP POST requests to your specified login endpoint.

" } }, "SuccessCode": { @@ -2441,23 +2448,23 @@ "TextTransformationType": { "base": null, "refs": { - "TextTransformation$Type": "

You can specify the following transformation types:

BASE64_DECODE - Decode a Base64-encoded string.

BASE64_DECODE_EXT - Decode a Base64-encoded string, but use a forgiving implementation that ignores characters that aren't valid.

CMD_LINE - Command-line transformations. These are helpful in reducing effectiveness of attackers who inject an operating system command-line command and use unusual formatting to disguise some or all of the command.

  • Delete the following characters: \\ \" ' ^

  • Delete spaces before the following characters: / (

  • Replace the following characters with a space: , ;

  • Replace multiple spaces with one space

  • Convert uppercase letters (A-Z) to lowercase (a-z)

COMPRESS_WHITE_SPACE - Replace these characters with a space character (decimal 32):

  • \\f, formfeed, decimal 12

  • \\t, tab, decimal 9

  • \\n, newline, decimal 10

  • \\r, carriage return, decimal 13

  • \\v, vertical tab, decimal 11

  • Non-breaking space, decimal 160

COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.

CSS_DECODE - Decode characters that were encoded using CSS 2.x escape rules syndata.html#characters. This function uses up to two bytes in the decoding process, so it can help to uncover ASCII characters that were encoded using CSS encoding that wouldn’t typically be encoded. It's also useful in countering evasion, which is a combination of a backslash and non-hexadecimal characters. For example, ja\\vascript for javascript.

ESCAPE_SEQ_DECODE - Decode the following ANSI C escape sequences: \\a, \\b, \\f, \\n, \\r, \\t, \\v, \\\\, \\?, \\', \\\", \\xHH (hexadecimal), \\0OOO (octal). Encodings that aren't valid remain in the output.

HEX_DECODE - Decode a string of hexadecimal characters into a binary.

HTML_ENTITY_DECODE - Replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs these operations:

  • Replaces (ampersand)quot; with \"

  • Replaces (ampersand)nbsp; with a non-breaking space, decimal 160

  • Replaces (ampersand)lt; with a \"less than\" symbol

  • Replaces (ampersand)gt; with >

  • Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters

  • Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters

JS_DECODE - Decode JavaScript escape sequences. If a \\ u HHHH code is in the full-width ASCII code range of FF01-FF5E, then the higher byte is used to detect and adjust the lower byte. If not, only the lower byte is used and the higher byte is zeroed, causing a possible loss of information.

LOWERCASE - Convert uppercase letters (A-Z) to lowercase (a-z).

MD5 - Calculate an MD5 hash from the data in the input. The computed hash is in a raw binary form.

NONE - Specify NONE if you don't want any text transformations.

NORMALIZE_PATH - Remove multiple slashes, directory self-references, and directory back-references that are not at the beginning of the input from an input string.

NORMALIZE_PATH_WIN - This is the same as NORMALIZE_PATH, but first converts backslash characters to forward slashes.

REMOVE_NULLS - Remove all NULL bytes from the input.

REPLACE_COMMENTS - Replace each occurrence of a C-style comment (/* ... */) with a single space. Multiple consecutive occurrences are not compressed. Unterminated comments are also replaced with a space (ASCII 0x20). However, a standalone termination of a comment (*/) is not acted upon.

REPLACE_NULLS - Replace NULL bytes in the input with space characters (ASCII 0x20).

SQL_HEX_DECODE - Decode SQL hex data. Example (0x414243) will be decoded to (ABC).

URL_DECODE - Decode a URL-encoded value.

URL_DECODE_UNI - Like URL_DECODE, but with support for Microsoft-specific %u encoding. If the code is in the full-width ASCII code range of FF01-FF5E, the higher byte is used to detect and adjust the lower byte. Otherwise, only the lower byte is used and the higher byte is zeroed.

UTF8_TO_UNICODE - Convert all UTF-8 character sequences to Unicode. This helps input normalization, and minimizing false-positives and false-negatives for non-English languages.

" + "TextTransformation$Type": "

For detailed descriptions of each of the transformation types, see Text transformations in the WAF Developer Guide.

" } }, "TextTransformations": { "base": null, "refs": { - "ByteMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitCookie$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitHeader$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitQueryArgument$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitQueryString$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitUriPath$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RegexMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RegexPatternSetReferenceStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "SizeConstraintStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "SqliMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "XssMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

" + "ByteMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitCookie$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitHeader$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitQueryArgument$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitQueryString$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitUriPath$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RegexMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RegexPatternSetReferenceStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "SizeConstraintStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "SqliMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "XssMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

" } }, "TimeWindow": { @@ -2747,7 +2754,7 @@ } }, "WebACL": { - "base": "

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", + "base": "

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", "refs": { "GetWebACLForResourceResponse$WebACL": "

The web ACL that is associated with the resource. If there is no associated resource, WAF returns a null web ACL.

", "GetWebACLResponse$WebACL": "

The web ACL specification. You can modify the settings in this web ACL and use it to update this web ACL or create a new one.

" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wafv2/2019-07-29/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wafv2/2019-07-29/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wafv2/2019-07-29/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wafv2/2019-07-29/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -134,6 +134,42 @@ {"shape":"ThrottlingException"} ] }, + "CreateReviewTemplate":{ + "name":"CreateReviewTemplate", + "http":{ + "method":"POST", + "requestUri":"/reviewTemplates" + }, + "input":{"shape":"CreateReviewTemplateInput"}, + "output":{"shape":"CreateReviewTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "CreateTemplateShare":{ + "name":"CreateTemplateShare", + "http":{ + "method":"POST", + "requestUri":"/templates/shares/{TemplateArn}" + }, + "input":{"shape":"CreateTemplateShareInput"}, + "output":{"shape":"CreateTemplateShareOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "CreateWorkload":{ "name":"CreateWorkload", "http":{ @@ -234,6 +270,38 @@ {"shape":"ThrottlingException"} ] }, + "DeleteReviewTemplate":{ + "name":"DeleteReviewTemplate", + "http":{ + "method":"DELETE", + "requestUri":"/reviewTemplates/{TemplateArn}" + }, + "input":{"shape":"DeleteReviewTemplateInput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "DeleteTemplateShare":{ + "name":"DeleteTemplateShare", + "http":{ + "method":"DELETE", + "requestUri":"/templates/shares/{TemplateArn}/{ShareId}" + }, + "input":{"shape":"DeleteTemplateShareInput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "DeleteWorkload":{ "name":"DeleteWorkload", "http":{ @@ -458,6 +526,54 @@ {"shape":"ThrottlingException"} ] }, + "GetReviewTemplate":{ + "name":"GetReviewTemplate", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}" + }, + "input":{"shape":"GetReviewTemplateInput"}, + "output":{"shape":"GetReviewTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetReviewTemplateAnswer":{ + "name":"GetReviewTemplateAnswer", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}" + }, + "input":{"shape":"GetReviewTemplateAnswerInput"}, + "output":{"shape":"GetReviewTemplateAnswerOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetReviewTemplateLensReview":{ + "name":"GetReviewTemplateLensReview", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}" + }, + "input":{"shape":"GetReviewTemplateLensReviewInput"}, + "output":{"shape":"GetReviewTemplateLensReviewOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "GetWorkload":{ "name":"GetWorkload", "http":{ @@ -680,6 +796,37 @@ {"shape":"ThrottlingException"} ] }, + "ListReviewTemplateAnswers":{ + "name":"ListReviewTemplateAnswers", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers" + }, + "input":{"shape":"ListReviewTemplateAnswersInput"}, + "output":{"shape":"ListReviewTemplateAnswersOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListReviewTemplates":{ + "name":"ListReviewTemplates", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates" + }, + "input":{"shape":"ListReviewTemplatesInput"}, + "output":{"shape":"ListReviewTemplatesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "ListShareInvitations":{ "name":"ListShareInvitations", "http":{ @@ -708,6 +855,22 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListTemplateShares":{ + "name":"ListTemplateShares", + "http":{ + "method":"GET", + "requestUri":"/templates/shares/{TemplateArn}" + }, + "input":{"shape":"ListTemplateSharesInput"}, + "output":{"shape":"ListTemplateSharesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "ListWorkloadShares":{ "name":"ListWorkloadShares", "http":{ @@ -831,6 +994,57 @@ {"shape":"ThrottlingException"} ] }, + "UpdateReviewTemplate":{ + "name":"UpdateReviewTemplate", + "http":{ + "method":"PATCH", + "requestUri":"/reviewTemplates/{TemplateArn}" + }, + "input":{"shape":"UpdateReviewTemplateInput"}, + "output":{"shape":"UpdateReviewTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateReviewTemplateAnswer":{ + "name":"UpdateReviewTemplateAnswer", + "http":{ + "method":"PATCH", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}" + }, + "input":{"shape":"UpdateReviewTemplateAnswerInput"}, + "output":{"shape":"UpdateReviewTemplateAnswerOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateReviewTemplateLensReview":{ + "name":"UpdateReviewTemplateLensReview", + "http":{ + "method":"PATCH", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}" + }, + "input":{"shape":"UpdateReviewTemplateLensReviewInput"}, + "output":{"shape":"UpdateReviewTemplateLensReviewOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "UpdateShareInvitation":{ "name":"UpdateShareInvitation", "http":{ @@ -913,6 +1127,22 @@ {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"} ] + }, + "UpgradeReviewTemplateLensReview":{ + "name":"UpgradeReviewTemplateLensReview", + "http":{ + "method":"PUT", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/upgrade" + }, + "input":{"shape":"UpgradeReviewTemplateLensReviewInput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] } }, "shapes":{ @@ -1421,6 +1651,59 @@ "ProfileArn":{"shape":"ProfileArn"} } }, + "CreateReviewTemplateInput":{ + "type":"structure", + "required":[ + "TemplateName", + "Description", + "Lenses", + "ClientRequestToken" + ], + "members":{ + "TemplateName":{"shape":"TemplateName"}, + "Description":{"shape":"TemplateDescription"}, + "Lenses":{"shape":"ReviewTemplateLenses"}, + "Notes":{"shape":"Notes"}, + "Tags":{"shape":"TagMap"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + } + } + }, + "CreateReviewTemplateOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"} + } + }, + "CreateTemplateShareInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "SharedWith", + "ClientRequestToken" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "SharedWith":{"shape":"SharedWith"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + } + } + }, + "CreateTemplateShareOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "ShareId":{"shape":"ShareId"} + } + }, "CreateWorkloadInput":{ "type":"structure", "required":[ @@ -1451,7 +1734,8 @@ "Tags":{"shape":"TagMap"}, "DiscoveryConfig":{"shape":"WorkloadDiscoveryConfig"}, "Applications":{"shape":"WorkloadApplications"}, - "ProfileArns":{"shape":"WorkloadProfileArns"} + "ProfileArns":{"shape":"WorkloadProfileArns"}, + "ReviewTemplateArns":{"shape":"ReviewTemplateArns"} } }, "CreateWorkloadOutput":{ @@ -1595,6 +1879,52 @@ } } }, + "DeleteReviewTemplateInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "ClientRequestToken" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"ClientRequestToken" + } + } + }, + "DeleteTemplateShareInput":{ + "type":"structure", + "required":[ + "ShareId", + "TemplateArn", + "ClientRequestToken" + ], + "members":{ + "ShareId":{ + "shape":"ShareId", + "location":"uri", + "locationName":"ShareId" + }, + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"ClientRequestToken" + } + } + }, "DeleteWorkloadInput":{ "type":"structure", "required":[ @@ -1977,6 +2307,82 @@ "ProfileTemplate":{"shape":"ProfileTemplate"} } }, + "GetReviewTemplateAnswerInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias", + "QuestionId" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "QuestionId":{ + "shape":"QuestionId", + "location":"uri", + "locationName":"QuestionId" + } + } + }, + "GetReviewTemplateAnswerOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensAlias":{"shape":"LensAlias"}, + "Answer":{"shape":"ReviewTemplateAnswer"} + } + }, + "GetReviewTemplateInput":{ + "type":"structure", + "required":["TemplateArn"], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + } + } + }, + "GetReviewTemplateLensReviewInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + } + } + }, + "GetReviewTemplateLensReviewOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensReview":{"shape":"ReviewTemplateLensReview"} + } + }, + "GetReviewTemplateOutput":{ + "type":"structure", + "members":{ + "ReviewTemplate":{"shape":"ReviewTemplate"} + } + }, "GetWorkloadInput":{ "type":"structure", "required":["WorkloadId"], @@ -2228,7 +2634,9 @@ "LensAlias":{"shape":"LensAlias"}, "LensArn":{"shape":"LensArn"}, "CurrentLensVersion":{"shape":"LensVersion"}, - "LatestLensVersion":{"shape":"LensVersion"} + "LatestLensVersion":{"shape":"LensVersion"}, + "ResourceArn":{"shape":"ResourceArn"}, + "ResourceName":{"shape":"WorkloadName"} } }, "LensVersion":{ @@ -2556,7 +2964,8 @@ "members":{ "WorkloadId":{"shape":"WorkloadId"}, "NextToken":{"shape":"NextToken"}, - "MaxResults":{"shape":"ListNotificationsMaxResults"} + "MaxResults":{"shape":"ListNotificationsMaxResults"}, + "ResourceArn":{"shape":"ResourceArn"} } }, "ListNotificationsMaxResults":{ @@ -2673,6 +3082,76 @@ "NextToken":{"shape":"NextToken"} } }, + "ListReviewTemplateAnswersInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "PillarId":{ + "shape":"PillarId", + "location":"querystring", + "locationName":"PillarId" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListReviewTemplateAnswersMaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListReviewTemplateAnswersMaxResults":{ + "type":"integer", + "max":50, + "min":1 + }, + "ListReviewTemplateAnswersOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensAlias":{"shape":"LensAlias"}, + "AnswerSummaries":{"shape":"ReviewTemplateAnswerSummaries"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ListReviewTemplatesInput":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListReviewTemplatesOutput":{ + "type":"structure", + "members":{ + "ReviewTemplates":{"shape":"ReviewTemplates"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListShareInvitationsInput":{ "type":"structure", "members":{ @@ -2705,6 +3184,11 @@ "shape":"ProfileNamePrefix", "location":"querystring", "locationName":"ProfileNamePrefix" + }, + "TemplateNamePrefix":{ + "shape":"TemplateNamePrefix", + "location":"querystring", + "locationName":"TemplateNamePrefix" } } }, @@ -2737,6 +3221,50 @@ "Tags":{"shape":"TagMap"} } }, + "ListTemplateSharesInput":{ + "type":"structure", + "required":["TemplateArn"], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "SharedWithPrefix":{ + "shape":"SharedWithPrefix", + "location":"querystring", + "locationName":"SharedWithPrefix" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListTemplateSharesMaxResults", + "location":"querystring", + "locationName":"MaxResults" + }, + "Status":{ + "shape":"ShareStatus", + "location":"querystring", + "locationName":"Status" + } + } + }, + "ListTemplateSharesMaxResults":{ + "type":"integer", + "max":50, + "min":1 + }, + "ListTemplateSharesOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "TemplateShareSummaries":{"shape":"TemplateShareSummaries"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListWorkloadSharesInput":{ "type":"structure", "required":["WorkloadId"], @@ -3119,6 +3647,18 @@ "min":1, "pattern":"^[A-Za-z0-9-]+$" }, + "Question":{ + "type":"string", + "enum":[ + "UNANSWERED", + "ANSWERED" + ] + }, + "QuestionCounts":{ + "type":"map", + "key":{"shape":"Question"}, + "value":{"shape":"Count"} + }, "QuestionDescription":{ "type":"string", "max":1024, @@ -3180,6 +3720,12 @@ "JSON" ] }, + "ResourceArn":{ + "type":"string", + "max":250, + "min":50, + "pattern":"arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}" + }, "ResourceNotFoundException":{ "type":"structure", "required":[ @@ -3195,6 +3741,133 @@ "error":{"httpStatusCode":404}, "exception":true }, + "ReviewTemplate":{ + "type":"structure", + "members":{ + "Description":{"shape":"TemplateDescription"}, + "Lenses":{"shape":"ReviewTemplateLenses"}, + "Notes":{"shape":"Notes"}, + "QuestionCounts":{"shape":"QuestionCounts"}, + "Owner":{"shape":"AwsAccountId"}, + "UpdatedAt":{"shape":"Timestamp"}, + "TemplateArn":{"shape":"TemplateArn"}, + "TemplateName":{"shape":"TemplateName"}, + "Tags":{"shape":"TagMap"}, + "UpdateStatus":{"shape":"ReviewTemplateUpdateStatus"}, + "ShareInvitationId":{"shape":"ShareInvitationId"} + } + }, + "ReviewTemplateAnswer":{ + "type":"structure", + "members":{ + "QuestionId":{"shape":"QuestionId"}, + "PillarId":{"shape":"PillarId"}, + "QuestionTitle":{"shape":"QuestionTitle"}, + "QuestionDescription":{"shape":"QuestionDescription"}, + "ImprovementPlanUrl":{"shape":"ImprovementPlanUrl"}, + "HelpfulResourceUrl":{"shape":"HelpfulResourceUrl"}, + "HelpfulResourceDisplayText":{"shape":"DisplayText"}, + "Choices":{"shape":"Choices"}, + "SelectedChoices":{"shape":"SelectedChoices"}, + "ChoiceAnswers":{"shape":"ChoiceAnswers"}, + "IsApplicable":{"shape":"IsApplicable"}, + "AnswerStatus":{"shape":"ReviewTemplateAnswerStatus"}, + "Notes":{"shape":"Notes"}, + "Reason":{"shape":"AnswerReason"} + } + }, + "ReviewTemplateAnswerStatus":{ + "type":"string", + "enum":[ + "UNANSWERED", + "ANSWERED" + ] + }, + "ReviewTemplateAnswerSummaries":{ + "type":"list", + "member":{"shape":"ReviewTemplateAnswerSummary"} + }, + "ReviewTemplateAnswerSummary":{ + "type":"structure", + "members":{ + "QuestionId":{"shape":"QuestionId"}, + "PillarId":{"shape":"PillarId"}, + "QuestionTitle":{"shape":"QuestionTitle"}, + "Choices":{"shape":"Choices"}, + "SelectedChoices":{"shape":"SelectedChoices"}, + "ChoiceAnswerSummaries":{"shape":"ChoiceAnswerSummaries"}, + "IsApplicable":{"shape":"IsApplicable"}, + "AnswerStatus":{"shape":"ReviewTemplateAnswerStatus"}, + "Reason":{"shape":"AnswerReason"}, + "QuestionType":{"shape":"QuestionType"} + } + }, + "ReviewTemplateArns":{ + "type":"list", + "member":{"shape":"TemplateArn"}, + "max":1 + }, + "ReviewTemplateLensAliases":{ + "type":"list", + "member":{"shape":"LensAlias"}, + "max":10, + "min":1 + }, + "ReviewTemplateLensReview":{ + "type":"structure", + "members":{ + "LensAlias":{"shape":"LensAlias"}, + "LensArn":{"shape":"LensArn"}, + "LensVersion":{"shape":"LensVersion"}, + "LensName":{"shape":"LensName"}, + "LensStatus":{"shape":"LensStatus"}, + "PillarReviewSummaries":{"shape":"ReviewTemplatePillarReviewSummaries"}, + "UpdatedAt":{"shape":"Timestamp"}, + "Notes":{"shape":"Notes"}, + "QuestionCounts":{"shape":"QuestionCounts"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ReviewTemplateLenses":{ + "type":"list", + "member":{"shape":"LensAlias"} + }, + "ReviewTemplatePillarReviewSummaries":{ + "type":"list", + "member":{"shape":"ReviewTemplatePillarReviewSummary"} + }, + "ReviewTemplatePillarReviewSummary":{ + "type":"structure", + "members":{ + "PillarId":{"shape":"PillarId"}, + "PillarName":{"shape":"PillarName"}, + "Notes":{"shape":"Notes"}, + "QuestionCounts":{"shape":"QuestionCounts"} + } + }, + "ReviewTemplateSummary":{ + "type":"structure", + "members":{ + "Description":{"shape":"TemplateDescription"}, + "Lenses":{"shape":"ReviewTemplateLenses"}, + "Owner":{"shape":"AwsAccountId"}, + "UpdatedAt":{"shape":"Timestamp"}, + "TemplateArn":{"shape":"TemplateArn"}, + "TemplateName":{"shape":"TemplateName"}, + "UpdateStatus":{"shape":"ReviewTemplateUpdateStatus"} + } + }, + "ReviewTemplateUpdateStatus":{ + "type":"string", + "enum":[ + "CURRENT", + "LENS_NOT_CURRENT" + ] + }, + "ReviewTemplates":{ + "type":"list", + "member":{"shape":"ReviewTemplateSummary"} + }, "Risk":{ "type":"string", "enum":[ @@ -3252,7 +3925,8 @@ "WorkloadId":{"shape":"WorkloadId"}, "LensAlias":{"shape":"LensAlias"}, "LensArn":{"shape":"LensArn"}, - "ProfileArn":{"shape":"ProfileArn"} + "ProfileArn":{"shape":"ProfileArn"}, + "TemplateArn":{"shape":"TemplateArn"} } }, "ShareInvitationAction":{ @@ -3283,7 +3957,9 @@ "LensName":{"shape":"LensName"}, "LensArn":{"shape":"LensArn"}, "ProfileName":{"shape":"ProfileName"}, - "ProfileArn":{"shape":"ProfileArn"} + "ProfileArn":{"shape":"ProfileArn"}, + "TemplateName":{"shape":"TemplateName"}, + "TemplateArn":{"shape":"TemplateArn"} } }, "ShareResourceType":{ @@ -3291,7 +3967,8 @@ "enum":[ "WORKLOAD", "LENS", - "PROFILE" + "PROFILE", + "TEMPLATE" ] }, "ShareStatus":{ @@ -3364,10 +4041,46 @@ "max":256, "min":0 }, + "TemplateArn":{ + "type":"string", + "max":250, + "min":50, + "pattern":"arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}" + }, + "TemplateDescription":{ + "type":"string", + "max":250, + "min":3, + "pattern":"^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + }, + "TemplateName":{ + "type":"string", + "max":100, + "min":3, + "pattern":"^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + }, + "TemplateNamePrefix":{ + "type":"string", + "max":100, + "pattern":"^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + }, "TemplateQuestions":{ "type":"list", "member":{"shape":"ProfileTemplateQuestion"} }, + "TemplateShareSummaries":{ + "type":"list", + "member":{"shape":"TemplateShareSummary"} + }, + "TemplateShareSummary":{ + "type":"structure", + "members":{ + "ShareId":{"shape":"ShareId"}, + "SharedWith":{"shape":"SharedWith"}, + "Status":{"shape":"ShareStatus"}, + "StatusMessage":{"shape":"StatusMessage"} + } + }, "ThrottlingException":{ "type":"structure", "required":["Message"], @@ -3504,6 +4217,94 @@ "Profile":{"shape":"Profile"} } }, + "UpdateReviewTemplateAnswerInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias", + "QuestionId" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "QuestionId":{ + "shape":"QuestionId", + "location":"uri", + "locationName":"QuestionId" + }, + "SelectedChoices":{"shape":"SelectedChoices"}, + "ChoiceUpdates":{"shape":"ChoiceUpdates"}, + "Notes":{"shape":"Notes"}, + "IsApplicable":{"shape":"IsApplicable"}, + "Reason":{"shape":"AnswerReason"} + } + }, + "UpdateReviewTemplateAnswerOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensAlias":{"shape":"LensAlias"}, + "Answer":{"shape":"ReviewTemplateAnswer"} + } + }, + "UpdateReviewTemplateInput":{ + "type":"structure", + "required":["TemplateArn"], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "TemplateName":{"shape":"TemplateName"}, + "Description":{"shape":"TemplateDescription"}, + "Notes":{"shape":"Notes"}, + "LensesToAssociate":{"shape":"ReviewTemplateLensAliases"}, + "LensesToDisassociate":{"shape":"ReviewTemplateLensAliases"} + } + }, + "UpdateReviewTemplateLensReviewInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "LensNotes":{"shape":"Notes"}, + "PillarNotes":{"shape":"PillarNotes"} + } + }, + "UpdateReviewTemplateLensReviewOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensReview":{"shape":"ReviewTemplateLensReview"} + } + }, + "UpdateReviewTemplateOutput":{ + "type":"structure", + "members":{ + "ReviewTemplate":{"shape":"ReviewTemplate"} + } + }, "UpdateShareInvitationInput":{ "type":"structure", "required":[ @@ -3632,6 +4433,26 @@ } } }, + "UpgradeReviewTemplateLensReviewInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "ClientRequestToken":{"shape":"ClientRequestToken"} + } + }, "Urls":{ "type":"list", "member":{"shape":"ChoiceContent"} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -9,12 +9,16 @@ "CreateMilestone": "

Create a milestone for an existing workload.

", "CreateProfile": "

Create a profile.

", "CreateProfileShare": "

Create a profile share.

", - "CreateWorkload": "

Create a new workload.

The owner of a workload can share the workload with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the Well-Architected Tool User Guide.

Either AwsRegions, NonAwsRegions, or both must be specified when creating a workload.

You also must specify ReviewOwner, even though the parameter is listed as not being required in the following section.

", + "CreateReviewTemplate": "

Create a review template.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your review templates. If your review template or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", + "CreateTemplateShare": "

Create a review template share.

The owner of a review template can share it with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region.

Shared access to a review template is not removed until the review template share invitation is deleted.

If you share a review template with an organization or OU, all accounts in the organization or OU are granted access to the review template.

Disclaimer

By sharing your review template with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your review template available to those other accounts.

", + "CreateWorkload": "

Create a new workload.

The owner of a workload can share the workload with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the Well-Architected Tool User Guide.

Either AwsRegions, NonAwsRegions, or both must be specified when creating a workload.

You also must specify ReviewOwner, even though the parameter is listed as not being required in the following section.

When creating a workload using a review template, you must have the following IAM permissions:

  • wellarchitected:GetReviewTemplate

  • wellarchitected:GetReviewTemplateAnswer

  • wellarchitected:ListReviewTemplateAnswers

  • wellarchitected:GetReviewTemplateLensReview

", "CreateWorkloadShare": "

Create a workload share.

The owner of a workload can share it with other Amazon Web Services accounts and users in the same Amazon Web Services Region. Shared access to a workload is not removed until the workload invitation is deleted.

If you share a workload with an organization or OU, all accounts in the organization or OU are granted access to the workload.

For more information, see Sharing a workload in the Well-Architected Tool User Guide.

", "DeleteLens": "

Delete an existing lens.

Only the owner of a lens can delete it. After the lens is deleted, Amazon Web Services accounts and users that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", "DeleteLensShare": "

Delete a lens share.

After the lens share is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", "DeleteProfile": "

Delete a profile.

Disclaimer

By sharing your profile with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your profile available to those other accounts. Those other accounts may continue to access and use your shared profile even if you delete the profile from your own Amazon Web Services account or terminate your Amazon Web Services account.

", "DeleteProfileShare": "

Delete a profile share.

", + "DeleteReviewTemplate": "

Delete a review template.

Only the owner of a review template can delete it.

After the review template is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the review template with will no longer be able to apply it to new workloads.

", + "DeleteTemplateShare": "

Delete a review template share.

After the review template share is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the review template with will no longer be able to apply it to new workloads.

", "DeleteWorkload": "

Delete an existing workload.

", "DeleteWorkloadShare": "

Delete a workload share.

", "DisassociateLenses": "

Disassociate a lens from a workload.

Up to 10 lenses can be disassociated from a workload in a single API operation.

The Amazon Web Services Well-Architected Framework lens (wellarchitected) cannot be removed from a workload.

", @@ -29,6 +33,9 @@ "GetMilestone": "

Get a milestone for an existing workload.

", "GetProfile": "

Get profile information.

", "GetProfileTemplate": "

Get profile template.

", + "GetReviewTemplate": "

Get review template.

", + "GetReviewTemplateAnswer": "

Get review template answer.

", + "GetReviewTemplateLensReview": "

Get a lens review associated with a review template.

", "GetWorkload": "

Get an existing workload.

", "ImportLens": "

Import a new custom lens or update an existing custom lens.

To update an existing custom lens, specify its ARN as the LensAlias. If no ARN is specified, a new custom lens is created.

The new or updated lens will have a status of DRAFT. The lens cannot be applied to workloads or shared with other Amazon Web Services accounts until it's published with CreateLensVersion.

Lenses are defined in JSON. For more information, see JSON format specification in the Well-Architected Tool User Guide.

A custom lens cannot exceed 500 KB in size.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your custom lenses. If your custom lens or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", "ListAnswers": "

List of answers for a particular workload and lens.

", @@ -43,21 +50,28 @@ "ListProfileNotifications": "

List profile notifications.

", "ListProfileShares": "

List profile shares.

", "ListProfiles": "

List profiles.

", - "ListShareInvitations": "

List the workload invitations.

", - "ListTagsForResource": "

List the tags for a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a profile ARN.

", + "ListReviewTemplateAnswers": "

List the answers of a review template.

", + "ListReviewTemplates": "

List review templates.

", + "ListShareInvitations": "

List the share invitations.

WorkloadNamePrefix, LensNamePrefix, ProfileNamePrefix, and TemplateNamePrefix are mutually exclusive. Use the parameter that matches your ShareResourceType.

", + "ListTagsForResource": "

List the tags for a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

", + "ListTemplateShares": "

List review template shares.

", "ListWorkloadShares": "

List the workload shares associated with the workload.

", "ListWorkloads": "

Paginated list of workloads.

", - "TagResource": "

Adds one or more tags to the specified resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a profile ARN.

", - "UntagResource": "

Deletes specified tags from a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a profile ARN.

To specify multiple tags, use separate tagKeys parameters, for example:

DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2

", + "TagResource": "

Adds one or more tags to the specified resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

", + "UntagResource": "

Deletes specified tags from a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

To specify multiple tags, use separate tagKeys parameters, for example:

DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2

", "UpdateAnswer": "

Update the answer to a specific question in a workload review.

", "UpdateGlobalSettings": "

Updates whether the Amazon Web Services account is opted into organization sharing and discovery integration features.

", "UpdateLensReview": "

Update lens review for a particular workload.

", "UpdateProfile": "

Update a profile.

", + "UpdateReviewTemplate": "

Update a review template.

", + "UpdateReviewTemplateAnswer": "

Update a review template answer.

", + "UpdateReviewTemplateLensReview": "

Update a lens review associated with a review template.

", "UpdateShareInvitation": "

Update a workload or custom lens share invitation.

This API operation can be called independently of any resource. Previous documentation implied that a workload ARN must be specified.

", "UpdateWorkload": "

Update an existing workload.

", "UpdateWorkloadShare": "

Update a workload share.

", "UpgradeLensReview": "

Upgrade lens review for a particular workload.

", - "UpgradeProfileVersion": "

Upgrade a profile.

" + "UpgradeProfileVersion": "

Upgrade a profile.

", + "UpgradeReviewTemplateLensReview": "

Upgrade the lens review of a review template.

" }, "shapes": { "AccessDeniedException": { @@ -101,7 +115,10 @@ "refs": { "Answer$Reason": "

The reason why the question is not applicable to your workload.

", "AnswerSummary$Reason": "

The reason why a choice is non-applicable to a question in your workload.

", - "UpdateAnswerInput$Reason": "

The reason why a question is not applicable to your workload.

" + "ReviewTemplateAnswer$Reason": "

The reason why the question is not applicable to your review template.

", + "ReviewTemplateAnswerSummary$Reason": "

The reason why a choice is not-applicable to a question in the review template.

", + "UpdateAnswerInput$Reason": "

The reason why a question is not applicable to your workload.

", + "UpdateReviewTemplateAnswerInput$Reason": "

The update reason.

" } }, "AnswerSummaries": { @@ -139,6 +156,8 @@ "LensSummary$Owner": null, "Profile$Owner": null, "ProfileSummary$Owner": null, + "ReviewTemplate$Owner": null, + "ReviewTemplateSummary$Owner": null, "ShareInvitationSummary$SharedBy": null, "Workload$Owner": null, "WorkloadAccountIds$member": null, @@ -258,7 +277,8 @@ "ChoiceAnswerSummaries": { "base": null, "refs": { - "AnswerSummary$ChoiceAnswerSummaries": "

A list of selected choices to a question in your workload.

" + "AnswerSummary$ChoiceAnswerSummaries": "

A list of selected choices to a question in your workload.

", + "ReviewTemplateAnswerSummary$ChoiceAnswerSummaries": "

A list of selected choices to a question in the review template.

" } }, "ChoiceAnswerSummary": { @@ -270,7 +290,8 @@ "ChoiceAnswers": { "base": null, "refs": { - "Answer$ChoiceAnswers": "

A list of selected choices to a question in your workload.

" + "Answer$ChoiceAnswers": "

A list of selected choices to a question in your workload.

", + "ReviewTemplateAnswer$ChoiceAnswers": "

A list of selected choices to a question in your review template.

" } }, "ChoiceContent": { @@ -374,14 +395,17 @@ "ChoiceUpdates": { "base": null, "refs": { - "UpdateAnswerInput$ChoiceUpdates": "

A list of choices to update on a question in your workload. The String key corresponds to the choice ID to be updated.

" + "UpdateAnswerInput$ChoiceUpdates": "

A list of choices to update on a question in your workload. The String key corresponds to the choice ID to be updated.

", + "UpdateReviewTemplateAnswerInput$ChoiceUpdates": "

A list of choices to be updated.

" } }, "Choices": { "base": "

List of choices available for a question.

", "refs": { "Answer$Choices": null, - "AnswerSummary$Choices": null + "AnswerSummary$Choices": null, + "ReviewTemplateAnswer$Choices": null, + "ReviewTemplateAnswerSummary$Choices": null } }, "ClientRequestToken": { @@ -392,17 +416,22 @@ "CreateMilestoneInput$ClientRequestToken": null, "CreateProfileInput$ClientRequestToken": null, "CreateProfileShareInput$ClientRequestToken": null, + "CreateReviewTemplateInput$ClientRequestToken": null, + "CreateTemplateShareInput$ClientRequestToken": null, "CreateWorkloadInput$ClientRequestToken": null, "CreateWorkloadShareInput$ClientRequestToken": null, "DeleteLensInput$ClientRequestToken": null, "DeleteLensShareInput$ClientRequestToken": null, "DeleteProfileInput$ClientRequestToken": null, "DeleteProfileShareInput$ClientRequestToken": null, + "DeleteReviewTemplateInput$ClientRequestToken": null, + "DeleteTemplateShareInput$ClientRequestToken": null, "DeleteWorkloadInput$ClientRequestToken": null, "DeleteWorkloadShareInput$ClientRequestToken": null, "ImportLensInput$ClientRequestToken": null, "UpgradeLensReviewInput$ClientRequestToken": null, - "UpgradeProfileVersionInput$ClientRequestToken": null + "UpgradeProfileVersionInput$ClientRequestToken": null, + "UpgradeReviewTemplateLensReviewInput$ClientRequestToken": null } }, "ConflictException": { @@ -425,6 +454,7 @@ "Count": { "base": "

A non-negative integer that denotes how many.

", "refs": { + "QuestionCounts$value": null, "RiskCounts$value": null } }, @@ -478,6 +508,26 @@ "refs": { } }, + "CreateReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "CreateReviewTemplateOutput": { + "base": null, + "refs": { + } + }, + "CreateTemplateShareInput": { + "base": null, + "refs": { + } + }, + "CreateTemplateShareOutput": { + "base": null, + "refs": { + } + }, "CreateWorkloadInput": { "base": "

Input for workload creation.

", "refs": { @@ -524,6 +574,16 @@ "refs": { } }, + "DeleteReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "DeleteTemplateShareInput": { + "base": null, + "refs": { + } + }, "DeleteWorkloadInput": { "base": "

Input for workload deletion.

", "refs": { @@ -561,7 +621,8 @@ "base": null, "refs": { "Answer$HelpfulResourceDisplayText": "

The helpful resource text to be displayed for a custom lens.

This field does not apply to Amazon Web Services official lenses.

", - "ChoiceImprovementPlan$DisplayText": "

The display text for the improvement plan.

" + "ChoiceImprovementPlan$DisplayText": "

The display text for the improvement plan.

", + "ReviewTemplateAnswer$HelpfulResourceDisplayText": "

The helpful resource text to be displayed for a custom lens.

This field does not apply to Amazon Web Services official lenses.

" } }, "ExceptionMessage": { @@ -705,6 +766,36 @@ "refs": { } }, + "GetReviewTemplateAnswerInput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateAnswerOutput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateLensReviewInput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateLensReviewOutput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateOutput": { + "base": null, + "refs": { + } + }, "GetWorkloadInput": { "base": "

Input to get a workload.

", "refs": { @@ -718,7 +809,8 @@ "HelpfulResourceUrl": { "base": "

The helpful resource URL.

For Amazon Web Services official lenses, this is the helpful resource URL for a question or choice.

For custom lenses, this is the helpful resource URL for a question and is only provided if HelpfulResourceDisplayText was specified for the question.

", "refs": { - "Answer$HelpfulResourceUrl": null + "Answer$HelpfulResourceUrl": null, + "ReviewTemplateAnswer$HelpfulResourceUrl": null } }, "ImportLensInput": { @@ -742,7 +834,8 @@ "refs": { "Answer$ImprovementPlanUrl": null, "ChoiceImprovementPlan$ImprovementPlanUrl": null, - "ImprovementSummary$ImprovementPlanUrl": null + "ImprovementSummary$ImprovementPlanUrl": null, + "ReviewTemplateAnswer$ImprovementPlanUrl": null } }, "ImprovementSummaries": { @@ -773,7 +866,10 @@ "refs": { "Answer$IsApplicable": null, "AnswerSummary$IsApplicable": null, - "UpdateAnswerInput$IsApplicable": null + "ReviewTemplateAnswer$IsApplicable": null, + "ReviewTemplateAnswerSummary$IsApplicable": null, + "UpdateAnswerInput$IsApplicable": null, + "UpdateReviewTemplateAnswerInput$IsApplicable": null } }, "IsMajorVersion": { @@ -810,6 +906,9 @@ "GetLensReviewReportInput$LensAlias": null, "GetLensVersionDifferenceInput$LensAlias": null, "GetLensVersionDifferenceOutput$LensAlias": null, + "GetReviewTemplateAnswerInput$LensAlias": null, + "GetReviewTemplateAnswerOutput$LensAlias": null, + "GetReviewTemplateLensReviewInput$LensAlias": null, "ImportLensInput$LensAlias": null, "LensAliases$member": null, "LensReview$LensAlias": null, @@ -822,11 +921,20 @@ "ListLensReviewImprovementsInput$LensAlias": null, "ListLensReviewImprovementsOutput$LensAlias": null, "ListLensSharesInput$LensAlias": null, + "ListReviewTemplateAnswersInput$LensAlias": null, + "ListReviewTemplateAnswersOutput$LensAlias": null, + "ReviewTemplateLensAliases$member": null, + "ReviewTemplateLensReview$LensAlias": null, + "ReviewTemplateLenses$member": null, "ShareInvitation$LensAlias": null, "UpdateAnswerInput$LensAlias": null, "UpdateAnswerOutput$LensAlias": null, "UpdateLensReviewInput$LensAlias": null, + "UpdateReviewTemplateAnswerInput$LensAlias": null, + "UpdateReviewTemplateAnswerOutput$LensAlias": null, + "UpdateReviewTemplateLensReviewInput$LensAlias": null, "UpgradeLensReviewInput$LensAlias": null, + "UpgradeReviewTemplateLensReviewInput$LensAlias": null, "WorkloadLenses$member": null } }, @@ -857,6 +965,7 @@ "ListCheckDetailsInput$LensArn": "

Well-Architected Lens ARN.

", "ListCheckSummariesInput$LensArn": "

Well-Architected Lens ARN.

", "ListLensReviewImprovementsOutput$LensArn": "

The ARN for the lens.

", + "ReviewTemplateLensReview$LensArn": "

The lens ARN.

", "ShareInvitation$LensArn": "

The ARN for the lens.

", "ShareInvitationSummary$LensArn": "

The ARN for the lens.

", "UpdateAnswerOutput$LensArn": "

The ARN for the lens.

" @@ -896,6 +1005,7 @@ "LensReviewSummary$LensName": null, "LensSummary$LensName": null, "ListLensesInput$LensName": null, + "ReviewTemplateLensReview$LensName": null, "ShareInvitationSummary$LensName": null } }, @@ -953,7 +1063,8 @@ "refs": { "LensReview$LensStatus": "

The status of the lens.

", "LensReviewSummary$LensStatus": "

The status of the lens.

", - "LensSummary$LensStatus": "

The status of the lens.

" + "LensSummary$LensStatus": "

The status of the lens.

", + "ReviewTemplateLensReview$LensStatus": "

The status of the lens.

" } }, "LensStatusType": { @@ -1005,7 +1116,8 @@ "LensReviewSummary$LensVersion": "

The version of the lens.

", "LensSummary$LensVersion": "

The version of the lens.

", "LensUpgradeSummary$CurrentLensVersion": "

The current version of the lens.

", - "LensUpgradeSummary$LatestLensVersion": "

The latest version of the lens.

" + "LensUpgradeSummary$LatestLensVersion": "

The latest version of the lens.

", + "ReviewTemplateLensReview$LensVersion": "

The version of the lens.

" } }, "LensesAppliedCount": { @@ -1158,6 +1270,32 @@ "refs": { } }, + "ListReviewTemplateAnswersInput": { + "base": null, + "refs": { + } + }, + "ListReviewTemplateAnswersMaxResults": { + "base": null, + "refs": { + "ListReviewTemplateAnswersInput$MaxResults": "

The maximum number of results to return for this request.

" + } + }, + "ListReviewTemplateAnswersOutput": { + "base": null, + "refs": { + } + }, + "ListReviewTemplatesInput": { + "base": null, + "refs": { + } + }, + "ListReviewTemplatesOutput": { + "base": null, + "refs": { + } + }, "ListShareInvitationsInput": { "base": "

Input for List Share Invitations

", "refs": { @@ -1184,6 +1322,22 @@ "refs": { } }, + "ListTemplateSharesInput": { + "base": null, + "refs": { + } + }, + "ListTemplateSharesMaxResults": { + "base": null, + "refs": { + "ListTemplateSharesInput$MaxResults": "

The maximum number of results to return for this request.

" + } + }, + "ListTemplateSharesOutput": { + "base": null, + "refs": { + } + }, "ListWorkloadSharesInput": { "base": "

Input for List Workload Share

", "refs": { @@ -1226,7 +1380,8 @@ "ListLensesInput$MaxResults": null, "ListMilestonesInput$MaxResults": null, "ListProfileNotificationsInput$MaxResults": null, - "ListProfilesInput$MaxResults": null + "ListProfilesInput$MaxResults": null, + "ListReviewTemplatesInput$MaxResults": null } }, "MaxSelectedProfileChoices": { @@ -1328,24 +1483,39 @@ "ListProfileSharesOutput$NextToken": null, "ListProfilesInput$NextToken": null, "ListProfilesOutput$NextToken": null, + "ListReviewTemplateAnswersInput$NextToken": null, + "ListReviewTemplateAnswersOutput$NextToken": null, + "ListReviewTemplatesInput$NextToken": null, + "ListReviewTemplatesOutput$NextToken": null, "ListShareInvitationsInput$NextToken": null, "ListShareInvitationsOutput$NextToken": null, + "ListTemplateSharesInput$NextToken": null, + "ListTemplateSharesOutput$NextToken": null, "ListWorkloadSharesInput$NextToken": null, "ListWorkloadSharesOutput$NextToken": null, "ListWorkloadsInput$NextToken": null, - "ListWorkloadsOutput$NextToken": null + "ListWorkloadsOutput$NextToken": null, + "ReviewTemplateLensReview$NextToken": null } }, "Notes": { - "base": "

The notes associated with the workload.

", + "base": "

The notes associated with the workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

", "refs": { "Answer$Notes": null, + "CreateReviewTemplateInput$Notes": null, "CreateWorkloadInput$Notes": null, "LensReview$Notes": null, "PillarNotes$value": null, "PillarReviewSummary$Notes": null, + "ReviewTemplate$Notes": null, + "ReviewTemplateAnswer$Notes": null, + "ReviewTemplateLensReview$Notes": null, + "ReviewTemplatePillarReviewSummary$Notes": null, "UpdateAnswerInput$Notes": null, "UpdateLensReviewInput$LensNotes": null, + "UpdateReviewTemplateAnswerInput$Notes": null, + "UpdateReviewTemplateInput$Notes": null, + "UpdateReviewTemplateLensReviewInput$LensNotes": null, "UpdateWorkloadInput$Notes": null, "Workload$Notes": null } @@ -1408,10 +1578,14 @@ "ListCheckDetailsInput$PillarId": null, "ListCheckSummariesInput$PillarId": null, "ListLensReviewImprovementsInput$PillarId": null, + "ListReviewTemplateAnswersInput$PillarId": null, "PillarDifference$PillarId": null, "PillarMetric$PillarId": null, "PillarNotes$key": null, "PillarReviewSummary$PillarId": null, + "ReviewTemplateAnswer$PillarId": null, + "ReviewTemplateAnswerSummary$PillarId": null, + "ReviewTemplatePillarReviewSummary$PillarId": null, "WorkloadPillarPriorities$member": null } }, @@ -1431,13 +1605,15 @@ "base": "

The name of the pillar.

", "refs": { "PillarDifference$PillarName": null, - "PillarReviewSummary$PillarName": null + "PillarReviewSummary$PillarName": null, + "ReviewTemplatePillarReviewSummary$PillarName": null } }, "PillarNotes": { - "base": "

List of pillar notes of a lens review in a workload.

", + "base": "

List of pillar notes of a lens review in a workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

", "refs": { - "UpdateLensReviewInput$PillarNotes": null + "UpdateLensReviewInput$PillarNotes": null, + "UpdateReviewTemplateLensReviewInput$PillarNotes": null } }, "PillarReviewSummaries": { @@ -1517,8 +1693,8 @@ "ProfileNamePrefix": { "base": null, "refs": { - "ListProfilesInput$ProfileNamePrefix": "

Prefix for profile name.

", - "ListShareInvitationsInput$ProfileNamePrefix": "

Profile name prefix.

" + "ListProfilesInput$ProfileNamePrefix": "

An optional string added to the beginning of each profile name returned in the results.

", + "ListShareInvitationsInput$ProfileNamePrefix": "

An optional string added to the beginning of each profile name returned in the results.

" } }, "ProfileNotificationSummaries": { @@ -1636,12 +1812,27 @@ "WorkloadProfile$ProfileVersion": "

The profile version.

" } }, + "Question": { + "base": null, + "refs": { + "QuestionCounts$key": null + } + }, + "QuestionCounts": { + "base": null, + "refs": { + "ReviewTemplate$QuestionCounts": "

A count of how many total questions are answered and unanswered in the review template.

", + "ReviewTemplateLensReview$QuestionCounts": "

A count of how many questions are answered and unanswered in the lens review.

", + "ReviewTemplatePillarReviewSummary$QuestionCounts": "

A count of how many questions are answered and unanswered in the requested pillar of the lens review.

" + } + }, "QuestionDescription": { "base": "

The description of the question.

", "refs": { "Answer$QuestionDescription": null, "ProfileQuestion$QuestionDescription": null, - "ProfileTemplateQuestion$QuestionDescription": null + "ProfileTemplateQuestion$QuestionDescription": null, + "ReviewTemplateAnswer$QuestionDescription": null } }, "QuestionDifference": { @@ -1664,6 +1855,7 @@ "CheckDetail$QuestionId": null, "CheckSummary$QuestionId": null, "GetAnswerInput$QuestionId": null, + "GetReviewTemplateAnswerInput$QuestionId": null, "ImprovementSummary$QuestionId": null, "ListCheckDetailsInput$QuestionId": null, "ListCheckSummariesInput$QuestionId": null, @@ -1672,7 +1864,10 @@ "ProfileTemplateQuestion$QuestionId": null, "QuestionDifference$QuestionId": null, "QuestionMetric$QuestionId": null, - "UpdateAnswerInput$QuestionId": null + "ReviewTemplateAnswer$QuestionId": null, + "ReviewTemplateAnswerSummary$QuestionId": null, + "UpdateAnswerInput$QuestionId": null, + "UpdateReviewTemplateAnswerInput$QuestionId": null } }, "QuestionMetric": { @@ -1702,13 +1897,16 @@ "ImprovementSummary$QuestionTitle": null, "ProfileQuestion$QuestionTitle": null, "ProfileTemplateQuestion$QuestionTitle": null, - "QuestionDifference$QuestionTitle": null + "QuestionDifference$QuestionTitle": null, + "ReviewTemplateAnswer$QuestionTitle": null, + "ReviewTemplateAnswerSummary$QuestionTitle": null } }, "QuestionType": { "base": null, "refs": { - "AnswerSummary$QuestionType": "

The type of the question.

" + "AnswerSummary$QuestionType": "

The type of the question.

", + "ReviewTemplateAnswerSummary$QuestionType": "

The type of question.

" } }, "QuotaCode": { @@ -1724,11 +1922,110 @@ "GetConsolidatedReportInput$Format": "

The format of the consolidated report.

For PDF, Base64String is returned. For JSON, Metrics is returned.

" } }, + "ResourceArn": { + "base": null, + "refs": { + "LensUpgradeSummary$ResourceArn": "

ResourceArn of the lens being upgraded

", + "ListNotificationsInput$ResourceArn": "

The ARN for the related resource for the notification.

Only one of WorkloadID or ResourceARN should be specified.

" + } + }, "ResourceNotFoundException": { "base": "

The requested resource was not found.

", "refs": { } }, + "ReviewTemplate": { + "base": "

A review template.

", + "refs": { + "GetReviewTemplateOutput$ReviewTemplate": "

The review template.

", + "UpdateReviewTemplateOutput$ReviewTemplate": "

A review template.

" + } + }, + "ReviewTemplateAnswer": { + "base": "

An answer of the question.

", + "refs": { + "GetReviewTemplateAnswerOutput$Answer": "

An answer of the question.

", + "UpdateReviewTemplateAnswerOutput$Answer": "

An answer of the question.

" + } + }, + "ReviewTemplateAnswerStatus": { + "base": null, + "refs": { + "ReviewTemplateAnswer$AnswerStatus": "

The status of whether or not this question has been answered.

", + "ReviewTemplateAnswerSummary$AnswerStatus": "

The status of whether or not this question has been answered.

" + } + }, + "ReviewTemplateAnswerSummaries": { + "base": null, + "refs": { + "ListReviewTemplateAnswersOutput$AnswerSummaries": "

List of answer summaries of a lens review in a review template.

" + } + }, + "ReviewTemplateAnswerSummary": { + "base": "

The summary of review template answers.

", + "refs": { + "ReviewTemplateAnswerSummaries$member": null + } + }, + "ReviewTemplateArns": { + "base": null, + "refs": { + "CreateWorkloadInput$ReviewTemplateArns": "

The list of review template ARNs to associate with the workload.

" + } + }, + "ReviewTemplateLensAliases": { + "base": null, + "refs": { + "UpdateReviewTemplateInput$LensesToAssociate": "

A list of lens aliases or ARNs to apply to the review template.

", + "UpdateReviewTemplateInput$LensesToDisassociate": "

A list of lens aliases or ARNs to unapply to the review template. The wellarchitected lens cannot be unapplied.

" + } + }, + "ReviewTemplateLensReview": { + "base": "

The lens review of a review template.

", + "refs": { + "GetReviewTemplateLensReviewOutput$LensReview": "

A lens review of a question.

", + "UpdateReviewTemplateLensReviewOutput$LensReview": "

A lens review of a question.

" + } + }, + "ReviewTemplateLenses": { + "base": null, + "refs": { + "CreateReviewTemplateInput$Lenses": "

Lenses applied to the review template.

", + "ReviewTemplate$Lenses": "

The lenses applied to the review template.

", + "ReviewTemplateSummary$Lenses": "

Lenses associated with the review template.

" + } + }, + "ReviewTemplatePillarReviewSummaries": { + "base": null, + "refs": { + "ReviewTemplateLensReview$PillarReviewSummaries": "

Pillar review summaries of a lens review.

" + } + }, + "ReviewTemplatePillarReviewSummary": { + "base": "

Summary of a review template.

", + "refs": { + "ReviewTemplatePillarReviewSummaries$member": null + } + }, + "ReviewTemplateSummary": { + "base": "

Summary of a review template.

", + "refs": { + "ReviewTemplates$member": null + } + }, + "ReviewTemplateUpdateStatus": { + "base": null, + "refs": { + "ReviewTemplate$UpdateStatus": "

The latest status of a review template.

", + "ReviewTemplateSummary$UpdateStatus": "

The latest status of a review template.

" + } + }, + "ReviewTemplates": { + "base": null, + "refs": { + "ListReviewTemplatesOutput$ReviewTemplates": "

List of review templates.

" + } + }, "Risk": { "base": "

The risk for a given workload, lens review, pillar, or question.

", "refs": { @@ -1768,7 +2065,10 @@ "refs": { "Answer$SelectedChoices": null, "AnswerSummary$SelectedChoices": null, - "UpdateAnswerInput$SelectedChoices": null + "ReviewTemplateAnswer$SelectedChoices": null, + "ReviewTemplateAnswerSummary$SelectedChoices": null, + "UpdateAnswerInput$SelectedChoices": null, + "UpdateReviewTemplateAnswerInput$SelectedChoices": null } }, "SelectedProfileChoiceIds": { @@ -1794,12 +2094,15 @@ "refs": { "CreateLensShareOutput$ShareId": null, "CreateProfileShareOutput$ShareId": null, + "CreateTemplateShareOutput$ShareId": null, "CreateWorkloadShareOutput$ShareId": null, "DeleteLensShareInput$ShareId": null, "DeleteProfileShareInput$ShareId": null, + "DeleteTemplateShareInput$ShareId": null, "DeleteWorkloadShareInput$ShareId": null, "LensShareSummary$ShareId": null, "ProfileShareSummary$ShareId": null, + "TemplateShareSummary$ShareId": null, "UpdateWorkloadShareInput$ShareId": null, "WorkloadShare$ShareId": null, "WorkloadShareSummary$ShareId": null @@ -1822,6 +2125,7 @@ "refs": { "Lens$ShareInvitationId": "

The ID assigned to the share invitation.

", "Profile$ShareInvitationId": "

The ID assigned to the share invitation.

", + "ReviewTemplate$ShareInvitationId": "

The ID assigned to the template share invitation.

", "ShareInvitation$ShareInvitationId": "

The ID assigned to the share invitation.

", "ShareInvitationSummary$ShareInvitationId": "

The ID assigned to the share invitation.

", "UpdateShareInvitationInput$ShareInvitationId": "

The ID assigned to the share invitation.

", @@ -1854,21 +2158,25 @@ "LensShareSummary$Status": null, "ListLensSharesInput$Status": null, "ListProfileSharesInput$Status": null, + "ListTemplateSharesInput$Status": null, "ListWorkloadSharesInput$Status": null, "ProfileShareSummary$Status": null, + "TemplateShareSummary$Status": null, "WorkloadShare$Status": null, "WorkloadShareSummary$Status": null } }, "SharedWith": { - "base": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the workload, lens, or profile is shared.

", + "base": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload, lens, profile, or review template is shared.

", "refs": { "CreateLensShareInput$SharedWith": null, "CreateProfileShareInput$SharedWith": null, + "CreateTemplateShareInput$SharedWith": null, "CreateWorkloadShareInput$SharedWith": null, "LensShareSummary$SharedWith": null, "ProfileShareSummary$SharedWith": null, "ShareInvitationSummary$SharedWith": null, + "TemplateShareSummary$SharedWith": null, "WorkloadShare$SharedWith": null, "WorkloadShareSummary$SharedWith": null } @@ -1876,9 +2184,10 @@ "SharedWithPrefix": { "base": null, "refs": { - "ListLensSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the lens is shared.

", - "ListProfileSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the profile is shared.

", - "ListWorkloadSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the workload is shared.

" + "ListLensSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the lens is shared.

", + "ListProfileSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", + "ListTemplateSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", + "ListWorkloadSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload is shared.

" } }, "StatusMessage": { @@ -1886,6 +2195,7 @@ "refs": { "LensShareSummary$StatusMessage": "

Optional message to compliment the Status field.

", "ProfileShareSummary$StatusMessage": "

Profile share invitation status message.

", + "TemplateShareSummary$StatusMessage": "

Review template share invitation status message.

", "WorkloadShareSummary$StatusMessage": "

Optional message to compliment the Status field.

" } }, @@ -1906,11 +2216,13 @@ "base": null, "refs": { "CreateProfileInput$Tags": "

The tags assigned to the profile.

", + "CreateReviewTemplateInput$Tags": "

The tags assigned to the review template.

", "CreateWorkloadInput$Tags": "

The tags to be associated with the workload.

", "ImportLensInput$Tags": "

Tags to associate to a lens.

", "Lens$Tags": "

The tags assigned to the lens.

", "ListTagsForResourceOutput$Tags": "

The tags for the resource.

", "Profile$Tags": "

The tags assigned to the profile.

", + "ReviewTemplate$Tags": "

The tags assigned to the review template.

", "TagResourceInput$Tags": "

The tags for the resource.

", "Workload$Tags": "

The tags associated with the workload.

" } @@ -1931,12 +2243,79 @@ "TagMap$value": null } }, + "TemplateArn": { + "base": null, + "refs": { + "CreateReviewTemplateOutput$TemplateArn": "

The review template ARN.

", + "CreateTemplateShareInput$TemplateArn": "

The review template ARN.

", + "CreateTemplateShareOutput$TemplateArn": "

The review template ARN.

", + "DeleteReviewTemplateInput$TemplateArn": "

The review template ARN.

", + "DeleteTemplateShareInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateAnswerInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateAnswerOutput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateLensReviewInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateLensReviewOutput$TemplateArn": "

The review template ARN.

", + "ListReviewTemplateAnswersInput$TemplateArn": "

The ARN of the review template.

", + "ListReviewTemplateAnswersOutput$TemplateArn": "

The ARN of the review template.

", + "ListTemplateSharesInput$TemplateArn": "

The review template ARN.

", + "ListTemplateSharesOutput$TemplateArn": "

The review template ARN.

", + "ReviewTemplate$TemplateArn": "

The review template ARN.

", + "ReviewTemplateArns$member": null, + "ReviewTemplateSummary$TemplateArn": "

The review template ARN.

", + "ShareInvitation$TemplateArn": "

The review template ARN.

", + "ShareInvitationSummary$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateAnswerInput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateAnswerOutput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateInput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateLensReviewInput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateLensReviewOutput$TemplateArn": "

The review template ARN.

", + "UpgradeReviewTemplateLensReviewInput$TemplateArn": "

The ARN of the review template.

" + } + }, + "TemplateDescription": { + "base": null, + "refs": { + "CreateReviewTemplateInput$Description": "

The review template description.

", + "ReviewTemplate$Description": "

The review template description.

", + "ReviewTemplateSummary$Description": "

Description of the review template.

", + "UpdateReviewTemplateInput$Description": "

The review template description.

" + } + }, + "TemplateName": { + "base": null, + "refs": { + "CreateReviewTemplateInput$TemplateName": "

Name of the review template.

", + "ReviewTemplate$TemplateName": "

The name of the review template.

", + "ReviewTemplateSummary$TemplateName": "

The name of the review template.

", + "ShareInvitationSummary$TemplateName": "

The name of the review template.

", + "UpdateReviewTemplateInput$TemplateName": "

The review template name.

" + } + }, + "TemplateNamePrefix": { + "base": null, + "refs": { + "ListShareInvitationsInput$TemplateNamePrefix": "

An optional string added to the beginning of each review template name returned in the results.

" + } + }, "TemplateQuestions": { "base": null, "refs": { "ProfileTemplate$TemplateQuestions": "

Profile template questions.

" } }, + "TemplateShareSummaries": { + "base": null, + "refs": { + "ListTemplateSharesOutput$TemplateShareSummaries": "

A review template share summary return object.

" + } + }, + "TemplateShareSummary": { + "base": "

Summary of a review template share.

", + "refs": { + "TemplateShareSummaries$member": null + } + }, "ThrottlingException": { "base": "

Request was denied due to request throttling.

", "refs": { @@ -1960,6 +2339,9 @@ "ProfileSummary$UpdatedAt": null, "ProfileTemplate$CreatedAt": null, "ProfileTemplate$UpdatedAt": null, + "ReviewTemplate$UpdatedAt": null, + "ReviewTemplateLensReview$UpdatedAt": null, + "ReviewTemplateSummary$UpdatedAt": null, "Workload$UpdatedAt": null, "Workload$ReviewRestrictionDate": null, "WorkloadSummary$UpdatedAt": null @@ -2016,6 +2398,36 @@ "refs": { } }, + "UpdateReviewTemplateAnswerInput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateAnswerOutput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateLensReviewInput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateLensReviewOutput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateOutput": { + "base": null, + "refs": { + } + }, "UpdateShareInvitationInput": { "base": "

Input for Update Share Invitation

", "refs": { @@ -2056,6 +2468,11 @@ "refs": { } }, + "UpgradeReviewTemplateLensReviewInput": { + "base": null, + "refs": { + } + }, "Urls": { "base": null, "refs": { @@ -2254,7 +2671,7 @@ } }, "WorkloadLenses": { - "base": "

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

", + "base": "

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

If a review template that specifies lenses is applied to the workload, those lenses are applied to the workload in addition to these lenses.

", "refs": { "CreateWorkloadInput$Lenses": null, "Workload$Lenses": null, @@ -2267,6 +2684,7 @@ "ConsolidatedReportMetric$WorkloadName": null, "CreateWorkloadInput$WorkloadName": null, "LensUpgradeSummary$WorkloadName": null, + "LensUpgradeSummary$ResourceName": null, "ProfileNotificationSummary$WorkloadName": null, "ShareInvitationSummary$WorkloadName": null, "UpdateWorkloadInput$WorkloadName": null, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://wellarchitected.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://wellarchitected.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://wellarchitected.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://wellarchitected.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wellarchitected/2020-03-31/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wellarchitected/2020-03-31/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -65,10 +65,25 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListReviewTemplateAnswers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListReviewTemplates": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListShareInvitations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults" + }, + "ListTemplateShares": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" }, "ListWorkloadShares": { "input_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -82,6 +82,24 @@ ], "idempotent":true }, + "CreateQuickResponse":{ + "name":"CreateQuickResponse", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses", + "responseCode":200 + }, + "input":{"shape":"CreateQuickResponseRequest"}, + "output":{"shape":"CreateQuickResponseResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "CreateSession":{ "name":"CreateSession", "http":{ @@ -146,6 +164,23 @@ ], "idempotent":true }, + "DeleteImportJob":{ + "name":"DeleteImportJob", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + "responseCode":204 + }, + "input":{"shape":"DeleteImportJobRequest"}, + "output":{"shape":"DeleteImportJobResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "DeleteKnowledgeBase":{ "name":"DeleteKnowledgeBase", "http":{ @@ -163,6 +198,22 @@ ], "idempotent":true }, + "DeleteQuickResponse":{ + "name":"DeleteQuickResponse", + "http":{ + "method":"DELETE", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + "responseCode":204 + }, + "input":{"shape":"DeleteQuickResponseRequest"}, + "output":{"shape":"DeleteQuickResponseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "GetAssistant":{ "name":"GetAssistant", "http":{ @@ -223,6 +274,21 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetImportJob":{ + "name":"GetImportJob", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + "responseCode":200 + }, + "input":{"shape":"GetImportJobRequest"}, + "output":{"shape":"GetImportJobResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "GetKnowledgeBase":{ "name":"GetKnowledgeBase", "http":{ @@ -238,6 +304,21 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetQuickResponse":{ + "name":"GetQuickResponse", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + "responseCode":200 + }, + "input":{"shape":"GetQuickResponseRequest"}, + "output":{"shape":"GetQuickResponseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "GetRecommendations":{ "name":"GetRecommendations", "http":{ @@ -312,6 +393,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListImportJobs":{ + "name":"ListImportJobs", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs", + "responseCode":200 + }, + "input":{"shape":"ListImportJobsRequest"}, + "output":{"shape":"ListImportJobsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListKnowledgeBases":{ "name":"ListKnowledgeBases", "http":{ @@ -326,6 +421,21 @@ {"shape":"AccessDeniedException"} ] }, + "ListQuickResponses":{ + "name":"ListQuickResponses", + "http":{ + "method":"GET", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses", + "responseCode":200 + }, + "input":{"shape":"ListQuickResponsesRequest"}, + "output":{"shape":"ListQuickResponsesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ @@ -365,6 +475,7 @@ "input":{"shape":"QueryAssistantRequest"}, "output":{"shape":"QueryAssistantResponse"}, "errors":[ + {"shape":"RequestTimeoutException"}, {"shape":"ValidationException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"} @@ -400,6 +511,22 @@ {"shape":"ResourceNotFoundException"} ] }, + "SearchQuickResponses":{ + "name":"SearchQuickResponses", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/search/quickResponses", + "responseCode":200 + }, + "input":{"shape":"SearchQuickResponsesRequest"}, + "output":{"shape":"SearchQuickResponsesResponse"}, + "errors":[ + {"shape":"RequestTimeoutException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "SearchSessions":{ "name":"SearchSessions", "http":{ @@ -430,6 +557,24 @@ {"shape":"ResourceNotFoundException"} ] }, + "StartImportJob":{ + "name":"StartImportJob", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/importJobs", + "responseCode":200 + }, + "input":{"shape":"StartImportJobRequest"}, + "output":{"shape":"StartImportJobResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "TagResource":{ "name":"TagResource", "http":{ @@ -489,6 +634,23 @@ {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"} ] + }, + "UpdateQuickResponse":{ + "name":"UpdateQuickResponse", + "http":{ + "method":"POST", + "requestUri":"/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + "responseCode":200 + }, + "input":{"shape":"UpdateQuickResponseRequest"}, + "output":{"shape":"UpdateQuickResponseResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ResourceNotFoundException"} + ] } }, "shapes":{ @@ -648,11 +810,28 @@ "type":"boolean", "box":true }, + "Channel":{ + "type":"string", + "max":10, + "min":1, + "sensitive":true + }, + "Channels":{ + "type":"list", + "member":{"shape":"Channel"} + }, "ClientToken":{ "type":"string", "max":4096, "min":1 }, + "Configuration":{ + "type":"structure", + "members":{ + "connectConfiguration":{"shape":"ConnectConfiguration"} + }, + "union":true + }, "ConflictException":{ "type":"structure", "members":{ @@ -664,6 +843,25 @@ }, "exception":true }, + "ConnectConfiguration":{ + "type":"structure", + "members":{ + "instanceId":{"shape":"NonEmptyString"} + } + }, + "ContactAttributeKey":{"type":"string"}, + "ContactAttributeKeys":{ + "type":"list", + "member":{"shape":"ContactAttributeKey"}, + "sensitive":true + }, + "ContactAttributeValue":{"type":"string"}, + "ContactAttributes":{ + "type":"map", + "key":{"shape":"ContactAttributeKey"}, + "value":{"shape":"ContactAttributeValue"}, + "sensitive":true + }, "ContentData":{ "type":"structure", "required":[ @@ -764,7 +962,7 @@ }, "ContentType":{ "type":"string", - "pattern":"^(text/(plain|html))|(application/(pdf|vnd\\.openxmlformats-officedocument\\.wordprocessingml\\.document))|(application/x\\.wisdom-json;source=(salesforce|servicenow|zendesk))$" + "pattern":"^(text/(plain|html|csv))|(application/(pdf|vnd\\.openxmlformats-officedocument\\.wordprocessingml\\.document))|(application/x\\.wisdom-json;source=(salesforce|servicenow|zendesk))$" }, "CreateAssistantAssociationRequest":{ "type":"structure", @@ -875,6 +1073,41 @@ "knowledgeBase":{"shape":"KnowledgeBaseData"} } }, + "CreateQuickResponseRequest":{ + "type":"structure", + "required":[ + "content", + "knowledgeBaseId", + "name" + ], + "members":{ + "channels":{"shape":"Channels"}, + "clientToken":{ + "shape":"NonEmptyString", + "idempotencyToken":true + }, + "content":{"shape":"QuickResponseDataProvider"}, + "contentType":{"shape":"QuickResponseType"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "language":{"shape":"LanguageCode"}, + "name":{"shape":"QuickResponseName"}, + "shortcutKey":{"shape":"ShortCutKey"}, + "tags":{"shape":"Tags"} + } + }, + "CreateQuickResponseResponse":{ + "type":"structure", + "members":{ + "quickResponse":{"shape":"QuickResponseData"} + } + }, "CreateSessionRequest":{ "type":"structure", "required":[ @@ -966,6 +1199,30 @@ "members":{ } }, + "DeleteImportJobRequest":{ + "type":"structure", + "required":[ + "importJobId", + "knowledgeBaseId" + ], + "members":{ + "importJobId":{ + "shape":"Uuid", + "location":"uri", + "locationName":"importJobId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "DeleteImportJobResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteKnowledgeBaseRequest":{ "type":"structure", "required":["knowledgeBaseId"], @@ -982,6 +1239,30 @@ "members":{ } }, + "DeleteQuickResponseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "quickResponseId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "quickResponseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"quickResponseId" + } + } + }, + "DeleteQuickResponseResponse":{ + "type":"structure", + "members":{ + } + }, "Description":{ "type":"string", "max":255, @@ -1004,6 +1285,21 @@ "text":{"shape":"SensitiveString"} } }, + "ExternalSource":{ + "type":"string", + "enum":["AMAZON_CONNECT"] + }, + "ExternalSourceConfiguration":{ + "type":"structure", + "required":[ + "configuration", + "source" + ], + "members":{ + "configuration":{"shape":"Configuration"}, + "source":{"shape":"ExternalSource"} + } + }, "Filter":{ "type":"structure", "required":[ @@ -1127,6 +1423,31 @@ "contentSummary":{"shape":"ContentSummary"} } }, + "GetImportJobRequest":{ + "type":"structure", + "required":[ + "importJobId", + "knowledgeBaseId" + ], + "members":{ + "importJobId":{ + "shape":"Uuid", + "location":"uri", + "locationName":"importJobId" + }, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + } + } + }, + "GetImportJobResponse":{ + "type":"structure", + "members":{ + "importJob":{"shape":"ImportJobData"} + } + }, "GetKnowledgeBaseRequest":{ "type":"structure", "required":["knowledgeBaseId"], @@ -1144,6 +1465,31 @@ "knowledgeBase":{"shape":"KnowledgeBaseData"} } }, + "GetQuickResponseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "quickResponseId" + ], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "quickResponseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"quickResponseId" + } + } + }, + "GetQuickResponseResponse":{ + "type":"structure", + "members":{ + "quickResponse":{"shape":"QuickResponseData"} + } + }, "GetRecommendationsRequest":{ "type":"structure", "required":[ @@ -1206,6 +1552,29 @@ "session":{"shape":"SessionData"} } }, + "GroupingConfiguration":{ + "type":"structure", + "members":{ + "criteria":{"shape":"GroupingCriteria"}, + "values":{"shape":"GroupingValues"} + } + }, + "GroupingCriteria":{ + "type":"string", + "max":100, + "min":1, + "sensitive":true + }, + "GroupingValue":{ + "type":"string", + "max":2048, + "min":1, + "sensitive":true + }, + "GroupingValues":{ + "type":"list", + "member":{"shape":"GroupingValue"} + }, "Headers":{ "type":"map", "key":{"shape":"NonEmptyString"}, @@ -1223,6 +1592,80 @@ "type":"list", "member":{"shape":"Highlight"} }, + "ImportJobData":{ + "type":"structure", + "required":[ + "createdTime", + "importJobId", + "importJobType", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "status", + "uploadId", + "url", + "urlExpiry" + ], + "members":{ + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}, + "failedRecordReport":{"shape":"Url"}, + "importJobId":{"shape":"Uuid"}, + "importJobType":{"shape":"ImportJobType"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "metadata":{"shape":"ContentMetadata"}, + "status":{"shape":"ImportJobStatus"}, + "uploadId":{"shape":"UploadId"}, + "url":{"shape":"Url"}, + "urlExpiry":{"shape":"SyntheticTimestamp_epoch_seconds"} + } + }, + "ImportJobList":{ + "type":"list", + "member":{"shape":"ImportJobSummary"} + }, + "ImportJobStatus":{ + "type":"string", + "enum":[ + "START_IN_PROGRESS", + "FAILED", + "COMPLETE", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED" + ] + }, + "ImportJobSummary":{ + "type":"structure", + "required":[ + "createdTime", + "importJobId", + "importJobType", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "status", + "uploadId" + ], + "members":{ + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}, + "importJobId":{"shape":"Uuid"}, + "importJobType":{"shape":"ImportJobType"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "metadata":{"shape":"ContentMetadata"}, + "status":{"shape":"ImportJobStatus"}, + "uploadId":{"shape":"UploadId"} + } + }, + "ImportJobType":{ + "type":"string", + "enum":["QUICK_RESPONSES"] + }, "KnowledgeBaseAssociationData":{ "type":"structure", "members":{ @@ -1294,9 +1737,15 @@ "type":"string", "enum":[ "EXTERNAL", - "CUSTOM" + "CUSTOM", + "QUICK_RESPONSES" ] }, + "LanguageCode":{ + "type":"string", + "max":5, + "min":2 + }, "ListAssistantAssociationsRequest":{ "type":"structure", "required":["assistantId"], @@ -1378,6 +1827,35 @@ "nextToken":{"shape":"NextToken"} } }, + "ListImportJobsRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListImportJobsResponse":{ + "type":"structure", + "required":["importJobSummaries"], + "members":{ + "importJobSummaries":{"shape":"ImportJobList"}, + "nextToken":{"shape":"NonEmptyString"} + } + }, "ListKnowledgeBasesRequest":{ "type":"structure", "members":{ @@ -1401,6 +1879,35 @@ "nextToken":{"shape":"NonEmptyString"} } }, + "ListQuickResponsesRequest":{ + "type":"structure", + "required":["knowledgeBaseId"], + "members":{ + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListQuickResponsesResponse":{ + "type":"structure", + "required":["quickResponseSummaries"], + "members":{ + "nextToken":{"shape":"NonEmptyString"}, + "quickResponseSummaries":{"shape":"QuickResponseSummaryList"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -1486,6 +1993,13 @@ "max":100, "min":1 }, + "Order":{ + "type":"string", + "enum":[ + "ASC", + "DESC" + ] + }, "PreconditionFailedException":{ "type":"structure", "members":{ @@ -1497,6 +2011,14 @@ }, "exception":true }, + "Priority":{ + "type":"string", + "enum":[ + "HIGH", + "MEDIUM", + "LOW" + ] + }, "QueryAssistantRequest":{ "type":"structure", "required":[ @@ -1536,6 +2058,262 @@ "type":"string", "sensitive":true }, + "QuickResponseContent":{ + "type":"string", + "max":1024, + "min":1, + "sensitive":true + }, + "QuickResponseContentProvider":{ + "type":"structure", + "members":{ + "content":{"shape":"QuickResponseContent"} + }, + "union":true + }, + "QuickResponseContents":{ + "type":"structure", + "members":{ + "markdown":{"shape":"QuickResponseContentProvider"}, + "plainText":{"shape":"QuickResponseContentProvider"} + } + }, + "QuickResponseData":{ + "type":"structure", + "required":[ + "contentType", + "createdTime", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "name", + "quickResponseArn", + "quickResponseId", + "status" + ], + "members":{ + "channels":{"shape":"Channels"}, + "contentType":{"shape":"QuickResponseType"}, + "contents":{"shape":"QuickResponseContents"}, + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "language":{"shape":"LanguageCode"}, + "lastModifiedBy":{"shape":"GenericArn"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseArn":{"shape":"Arn"}, + "quickResponseId":{"shape":"Uuid"}, + "shortcutKey":{"shape":"ShortCutKey"}, + "status":{"shape":"QuickResponseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "QuickResponseDataProvider":{ + "type":"structure", + "members":{ + "content":{"shape":"QuickResponseContent"} + }, + "union":true + }, + "QuickResponseDescription":{ + "type":"string", + "max":255, + "min":1 + }, + "QuickResponseFilterField":{ + "type":"structure", + "required":[ + "name", + "operator" + ], + "members":{ + "includeNoExistence":{"shape":"Boolean"}, + "name":{"shape":"NonEmptyString"}, + "operator":{"shape":"QuickResponseFilterOperator"}, + "values":{"shape":"QuickResponseFilterValueList"} + } + }, + "QuickResponseFilterFieldList":{ + "type":"list", + "member":{"shape":"QuickResponseFilterField"}, + "max":10, + "min":0 + }, + "QuickResponseFilterOperator":{ + "type":"string", + "enum":[ + "EQUALS", + "PREFIX" + ] + }, + "QuickResponseFilterValue":{ + "type":"string", + "max":2048, + "min":1 + }, + "QuickResponseFilterValueList":{ + "type":"list", + "member":{"shape":"QuickResponseFilterValue"}, + "max":5, + "min":1 + }, + "QuickResponseName":{ + "type":"string", + "max":40, + "min":1 + }, + "QuickResponseOrderField":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"NonEmptyString"}, + "order":{"shape":"Order"} + } + }, + "QuickResponseQueryField":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "allowFuzziness":{"shape":"Boolean"}, + "name":{"shape":"NonEmptyString"}, + "operator":{"shape":"QuickResponseQueryOperator"}, + "priority":{"shape":"Priority"}, + "values":{"shape":"QuickResponseQueryValueList"} + } + }, + "QuickResponseQueryFieldList":{ + "type":"list", + "member":{"shape":"QuickResponseQueryField"}, + "max":4, + "min":0 + }, + "QuickResponseQueryOperator":{ + "type":"string", + "enum":[ + "CONTAINS", + "CONTAINS_AND_PREFIX" + ] + }, + "QuickResponseQueryValue":{ + "type":"string", + "max":1024, + "min":1 + }, + "QuickResponseQueryValueList":{ + "type":"list", + "member":{"shape":"QuickResponseQueryValue"}, + "max":5, + "min":1 + }, + "QuickResponseSearchExpression":{ + "type":"structure", + "members":{ + "filters":{"shape":"QuickResponseFilterFieldList"}, + "orderOnField":{"shape":"QuickResponseOrderField"}, + "queries":{"shape":"QuickResponseQueryFieldList"} + } + }, + "QuickResponseSearchResultData":{ + "type":"structure", + "required":[ + "contentType", + "contents", + "createdTime", + "isActive", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "name", + "quickResponseArn", + "quickResponseId", + "status" + ], + "members":{ + "attributesInterpolated":{"shape":"ContactAttributeKeys"}, + "attributesNotInterpolated":{"shape":"ContactAttributeKeys"}, + "channels":{"shape":"Channels"}, + "contentType":{"shape":"QuickResponseType"}, + "contents":{"shape":"QuickResponseContents"}, + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "language":{"shape":"LanguageCode"}, + "lastModifiedBy":{"shape":"GenericArn"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseArn":{"shape":"Arn"}, + "quickResponseId":{"shape":"Uuid"}, + "shortcutKey":{"shape":"ShortCutKey"}, + "status":{"shape":"QuickResponseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "QuickResponseSearchResultsList":{ + "type":"list", + "member":{"shape":"QuickResponseSearchResultData"} + }, + "QuickResponseStatus":{ + "type":"string", + "enum":[ + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "CREATED", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED", + "UPDATE_IN_PROGRESS", + "UPDATE_FAILED" + ] + }, + "QuickResponseSummary":{ + "type":"structure", + "required":[ + "contentType", + "createdTime", + "knowledgeBaseArn", + "knowledgeBaseId", + "lastModifiedTime", + "name", + "quickResponseArn", + "quickResponseId", + "status" + ], + "members":{ + "channels":{"shape":"Channels"}, + "contentType":{"shape":"QuickResponseType"}, + "createdTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "description":{"shape":"QuickResponseDescription"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseArn":{"shape":"Arn"}, + "knowledgeBaseId":{"shape":"Uuid"}, + "lastModifiedBy":{"shape":"GenericArn"}, + "lastModifiedTime":{"shape":"SyntheticTimestamp_epoch_seconds"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseArn":{"shape":"Arn"}, + "quickResponseId":{"shape":"Uuid"}, + "status":{"shape":"QuickResponseStatus"}, + "tags":{"shape":"Tags"} + } + }, + "QuickResponseSummaryList":{ + "type":"list", + "member":{"shape":"QuickResponseSummary"} + }, + "QuickResponseType":{ + "type":"string", + "pattern":"^(application/x\\.quickresponse;format=(plain|markdown))$" + }, "RecommendationData":{ "type":"structure", "required":[ @@ -1552,7 +2330,9 @@ }, "RecommendationIdList":{ "type":"list", - "member":{"shape":"String"} + "member":{"shape":"String"}, + "max":25, + "min":0 }, "RecommendationList":{ "type":"list", @@ -1636,6 +2416,18 @@ "templateUri":{"shape":"Uri"} } }, + "RequestTimeoutException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":408, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":false} + }, "ResourceNotFoundException":{ "type":"structure", "members":{ @@ -1700,6 +2492,40 @@ "filters":{"shape":"FilterList"} } }, + "SearchQuickResponsesRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "searchExpression" + ], + "members":{ + "attributes":{"shape":"ContactAttributes"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NonEmptyString", + "location":"querystring", + "locationName":"nextToken" + }, + "searchExpression":{"shape":"QuickResponseSearchExpression"} + } + }, + "SearchQuickResponsesResponse":{ + "type":"structure", + "required":["results"], + "members":{ + "nextToken":{"shape":"NonEmptyString"}, + "results":{"shape":"QuickResponseSearchResultsList"} + } + }, "SearchSessionsRequest":{ "type":"structure", "required":[ @@ -1795,6 +2621,11 @@ "sessionId":{"shape":"Uuid"} } }, + "ShortCutKey":{ + "type":"string", + "max":10, + "min":1 + }, "SourceConfiguration":{ "type":"structure", "members":{ @@ -1814,7 +2645,8 @@ "shape":"UuidOrArn", "location":"uri", "locationName":"knowledgeBaseId" - } + }, + "presignedUrlTimeToLive":{"shape":"TimeToLive"} } }, "StartContentUploadResponse":{ @@ -1832,6 +2664,35 @@ "urlExpiry":{"shape":"SyntheticTimestamp_epoch_seconds"} } }, + "StartImportJobRequest":{ + "type":"structure", + "required":[ + "importJobType", + "knowledgeBaseId", + "uploadId" + ], + "members":{ + "clientToken":{ + "shape":"NonEmptyString", + "idempotencyToken":true + }, + "externalSourceConfiguration":{"shape":"ExternalSourceConfiguration"}, + "importJobType":{"shape":"ImportJobType"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "metadata":{"shape":"ContentMetadata"}, + "uploadId":{"shape":"UploadId"} + } + }, + "StartImportJobResponse":{ + "type":"structure", + "members":{ + "importJob":{"shape":"ImportJobData"} + } + }, "String":{"type":"string"}, "SyntheticTimestamp_epoch_seconds":{ "type":"timestamp", @@ -1879,6 +2740,12 @@ "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"} }, + "TimeToLive":{ + "type":"integer", + "box":true, + "max":60, + "min":1 + }, "TooManyTagsException":{ "type":"structure", "members":{ @@ -1967,6 +2834,43 @@ "knowledgeBase":{"shape":"KnowledgeBaseData"} } }, + "UpdateQuickResponseRequest":{ + "type":"structure", + "required":[ + "knowledgeBaseId", + "quickResponseId" + ], + "members":{ + "channels":{"shape":"Channels"}, + "content":{"shape":"QuickResponseDataProvider"}, + "contentType":{"shape":"QuickResponseType"}, + "description":{"shape":"QuickResponseDescription"}, + "groupingConfiguration":{"shape":"GroupingConfiguration"}, + "isActive":{"shape":"Boolean"}, + "knowledgeBaseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"knowledgeBaseId" + }, + "language":{"shape":"LanguageCode"}, + "name":{"shape":"QuickResponseName"}, + "quickResponseId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"quickResponseId" + }, + "removeDescription":{"shape":"Boolean"}, + "removeGroupingConfiguration":{"shape":"Boolean"}, + "removeShortcutKey":{"shape":"Boolean"}, + "shortcutKey":{"shape":"ShortCutKey"} + } + }, + "UpdateQuickResponseResponse":{ + "type":"structure", + "members":{ + "quickResponse":{"shape":"QuickResponseData"} + } + }, "UploadId":{ "type":"string", "max":1200, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -6,33 +6,43 @@ "CreateAssistantAssociation": "

Creates an association between an Amazon Connect Wisdom assistant and another resource. Currently, the only supported association is with a knowledge base. An assistant can have only a single association.

", "CreateContent": "

Creates Wisdom content. Before to calling this API, use StartContentUpload to upload an asset.

", "CreateKnowledgeBase": "

Creates a knowledge base.

When using this API, you cannot reuse Amazon AppIntegrations DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. If you do, you'll get an InvalidRequestException error.

For example, you're programmatically managing your external knowledge base, and you want to add or remove one of the fields that is being ingested from Salesforce. Do the following:

  1. Call DeleteKnowledgeBase.

  2. Call DeleteDataIntegration.

  3. Call CreateDataIntegration to recreate the DataIntegration or a create different one.

  4. Call CreateKnowledgeBase.

", + "CreateQuickResponse": "

Creates a Wisdom quick response.

", "CreateSession": "

Creates a session. A session is a contextual container used for generating recommendations. Amazon Connect creates a new Wisdom session for each contact on which Wisdom is enabled.

", "DeleteAssistant": "

Deletes an assistant.

", "DeleteAssistantAssociation": "

Deletes an assistant association.

", "DeleteContent": "

Deletes the content.

", + "DeleteImportJob": "

Deletes the quick response import job.

", "DeleteKnowledgeBase": "

Deletes the knowledge base.

When you use this API to delete an external knowledge base such as Salesforce or ServiceNow, you must also delete the Amazon AppIntegrations DataIntegration. This is because you can't reuse the DataIntegration after it's been associated with an external knowledge base. However, you can delete and recreate it. See DeleteDataIntegration and CreateDataIntegration in the Amazon AppIntegrations API Reference.

", + "DeleteQuickResponse": "

Deletes a quick response.

", "GetAssistant": "

Retrieves information about an assistant.

", "GetAssistantAssociation": "

Retrieves information about an assistant association.

", "GetContent": "

Retrieves content, including a pre-signed URL to download the content.

", "GetContentSummary": "

Retrieves summary information about the content.

", + "GetImportJob": "

Retrieves the started import job.

", "GetKnowledgeBase": "

Retrieves information about the knowledge base.

", + "GetQuickResponse": "

Retrieves the quick response.

", "GetRecommendations": "

Retrieves recommendations for the specified session. To avoid retrieving the same recommendations in subsequent calls, use NotifyRecommendationsReceived. This API supports long-polling behavior with the waitTimeSeconds parameter. Short poll is the default behavior and only returns recommendations already available. To perform a manual query against an assistant, use QueryAssistant.

", "GetSession": "

Retrieves information for a specified session.

", "ListAssistantAssociations": "

Lists information about assistant associations.

", "ListAssistants": "

Lists information about assistants.

", "ListContents": "

Lists the content.

", + "ListImportJobs": "

Lists information about import jobs.

", "ListKnowledgeBases": "

Lists the knowledge bases.

", + "ListQuickResponses": "

Lists information about quick response.

", "ListTagsForResource": "

Lists the tags for the specified resource.

", "NotifyRecommendationsReceived": "

Removes the specified recommendations from the specified assistant's queue of newly available recommendations. You can use this API in conjunction with GetRecommendations and a waitTimeSeconds input for long-polling behavior and avoiding duplicate recommendations.

", "QueryAssistant": "

Performs a manual search against the specified assistant. To retrieve recommendations for an assistant, use GetRecommendations.

", "RemoveKnowledgeBaseTemplateUri": "

Removes a URI template from a knowledge base.

", "SearchContent": "

Searches for content in a specified knowledge base. Can be used to get a specific content resource by its name.

", + "SearchQuickResponses": "

Searches existing Wisdom quick responses in a Wisdom knowledge base.

", "SearchSessions": "

Searches for sessions.

", "StartContentUpload": "

Get a URL to upload content to a knowledge base. To upload content, first make a PUT request to the returned URL with your file, making sure to include the required headers. Then use CreateContent to finalize the content creation process or UpdateContent to modify an existing resource. You can only upload content to a knowledge base of type CUSTOM.

", + "StartImportJob": "

Start an asynchronous job to import Wisdom resources from an uploaded source file. Before calling this API, use StartContentUpload to upload an asset that contains the resource data.

  • For importing Wisdom quick responses, you need to upload a csv file including the quick responses. For information about how to format the csv file for importing quick responses, see Import quick responses.

", "TagResource": "

Adds the specified tags to the specified resource.

", "UntagResource": "

Removes the specified tags from the specified resource.

", "UpdateContent": "

Updates information about the content.

", - "UpdateKnowledgeBaseTemplateUri": "

Updates the template URI of a knowledge base. This is only supported for knowledge bases of type EXTERNAL. Include a single variable in ${variable} format; this interpolated by Wisdom using ingested content. For example, if you ingest a Salesforce article, it has an Id value, and you can set the template URI to https://myInstanceName.lightning.force.com/lightning/r/Knowledge__kav/*${Id}*/view.

" + "UpdateKnowledgeBaseTemplateUri": "

Updates the template URI of a knowledge base. This is only supported for knowledge bases of type EXTERNAL. Include a single variable in ${variable} format; this interpolated by Wisdom using ingested content. For example, if you ingest a Salesforce article, it has an Id value, and you can set the template URI to https://myInstanceName.lightning.force.com/lightning/r/Knowledge__kav/*${Id}*/view.

", + "UpdateQuickResponse": "

Updates an existing Wisdom quick response.

" }, "shapes": { "AccessDeniedException": { @@ -61,10 +71,18 @@ "ContentReference$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", "ContentSummary$contentArn": "

The Amazon Resource Name (ARN) of the content.

", "ContentSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ImportJobData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "ImportJobSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", "KnowledgeBaseAssociationData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", "KnowledgeBaseData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", "KnowledgeBaseSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", + "QuickResponseData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "QuickResponseData$quickResponseArn": "

The Amazon Resource Name (ARN) of the quick response.

", + "QuickResponseSearchResultData$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "QuickResponseSearchResultData$quickResponseArn": "

The Amazon Resource Name (ARN) of the quick response.

", + "QuickResponseSummary$knowledgeBaseArn": "

The Amazon Resource Name (ARN) of the knowledge base.

", + "QuickResponseSummary$quickResponseArn": "

The Amazon Resource Name (ARN) of the quick response.

", "SessionData$sessionArn": "

The Amazon Resource Name (ARN) of the session.

", "SessionSummary$assistantArn": "

The Amazon Resource Name (ARN) of the Wisdom assistant.

", "SessionSummary$sessionArn": "

The Amazon Resource Name (ARN) of the session.

", @@ -156,7 +174,33 @@ "Boolean": { "base": null, "refs": { - "UpdateContentRequest$removeOverrideLinkOutUri": "

Unset the existing overrideLinkOutUri if it exists.

" + "CreateQuickResponseRequest$isActive": "

Whether the quick response is active.

", + "QuickResponseData$isActive": "

Whether the quick response is active.

", + "QuickResponseFilterField$includeNoExistence": "

Whether to treat null value as a match for the attribute field.

", + "QuickResponseQueryField$allowFuzziness": "

Whether the query expects only exact matches on the attribute field values. The results of the query will only include exact matches if this parameter is set to false.

", + "QuickResponseSearchResultData$isActive": "

Whether the quick response is active.

", + "QuickResponseSummary$isActive": "

Whether the quick response is active.

", + "UpdateContentRequest$removeOverrideLinkOutUri": "

Unset the existing overrideLinkOutUri if it exists.

", + "UpdateQuickResponseRequest$isActive": "

Whether the quick response is active.

", + "UpdateQuickResponseRequest$removeDescription": "

Whether to remove the description from the quick response.

", + "UpdateQuickResponseRequest$removeGroupingConfiguration": "

Whether to remove the grouping configuration of the quick response.

", + "UpdateQuickResponseRequest$removeShortcutKey": "

Whether to remove the shortcut key of the quick response.

" + } + }, + "Channel": { + "base": null, + "refs": { + "Channels$member": null + } + }, + "Channels": { + "base": null, + "refs": { + "CreateQuickResponseRequest$channels": "

The Amazon Connect channels this quick response applies to.

", + "QuickResponseData$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

", + "QuickResponseSearchResultData$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

", + "QuickResponseSummary$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

", + "UpdateQuickResponseRequest$channels": "

The Amazon Connect contact channels this quick response applies to. The supported contact channel types include Chat.

" } }, "ClientToken": { @@ -167,11 +211,49 @@ "CreateSessionRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

" } }, + "Configuration": { + "base": "

The configuration information of the external data source.

", + "refs": { + "ExternalSourceConfiguration$configuration": "

The configuration information of the external data source.

" + } + }, "ConflictException": { "base": "

The request could not be processed because of conflict in the current state of the resource. For example, if you're using a Create API (such as CreateAssistant) that accepts name, a conflicting resource (usually with the same name) is being created or mutated.

", "refs": { } }, + "ConnectConfiguration": { + "base": "

The configuration information of the Amazon Connect data source.

", + "refs": { + "Configuration$connectConfiguration": "

The configuration information of the Amazon Connect data source.

" + } + }, + "ContactAttributeKey": { + "base": null, + "refs": { + "ContactAttributeKeys$member": null, + "ContactAttributes$key": null + } + }, + "ContactAttributeKeys": { + "base": null, + "refs": { + "QuickResponseSearchResultData$attributesInterpolated": "

The user defined contact attributes that are resolved when the search result is returned.

", + "QuickResponseSearchResultData$attributesNotInterpolated": "

The user defined contact attributes that are not resolved when the search result is returned.

" + } + }, + "ContactAttributeValue": { + "base": null, + "refs": { + "ContactAttributes$value": null + } + }, + "ContactAttributes": { + "base": null, + "refs": { + "SearchQuickResponsesRequest$attributes": "

The user-defined Amazon Connect contact attributes to be resolved when search results are returned.

" + } + }, "ContentData": { "base": "

Information about the content.

", "refs": { @@ -186,6 +268,9 @@ "ContentData$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Wisdom, you can store an external version identifier as metadata to utilize for determining drift.

", "ContentSummary$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Wisdom, you can store an external version identifier as metadata to utilize for determining drift.

", "CreateContentRequest$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Wisdom, you can store an external version identifier as metadata to utilize for determining drift.

", + "ImportJobData$metadata": "

The metadata fields of the imported Wisdom resources.

", + "ImportJobSummary$metadata": "

The metadata fields of the imported Wisdom resources.

", + "StartImportJobRequest$metadata": "

The metadata fields of the imported Wisdom resources.

", "UpdateContentRequest$metadata": "

A key/value map to store attributes without affecting tagging or recommendations. For example, when synchronizing data between an external system and Wisdom, you can store an external version identifier as metadata to utilize for determining drift.

" } }, @@ -273,6 +358,16 @@ "refs": { } }, + "CreateQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "CreateQuickResponseResponse": { + "base": null, + "refs": { + } + }, "CreateSessionRequest": { "base": null, "refs": { @@ -313,6 +408,16 @@ "refs": { } }, + "DeleteImportJobRequest": { + "base": null, + "refs": { + } + }, + "DeleteImportJobResponse": { + "base": null, + "refs": { + } + }, "DeleteKnowledgeBaseRequest": { "base": null, "refs": { @@ -323,6 +428,16 @@ "refs": { } }, + "DeleteQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "DeleteQuickResponseResponse": { + "base": null, + "refs": { + } + }, "Description": { "base": null, "refs": { @@ -350,6 +465,20 @@ "Document$title": "

The title of the document.

" } }, + "ExternalSource": { + "base": null, + "refs": { + "ExternalSourceConfiguration$source": "

The type of the external data source.

" + } + }, + "ExternalSourceConfiguration": { + "base": "

The configuration information of the external data source.

", + "refs": { + "ImportJobData$externalSourceConfiguration": null, + "ImportJobSummary$externalSourceConfiguration": "

The configuration information of the external source that the resource data are imported from.

", + "StartImportJobRequest$externalSourceConfiguration": "

The configuration information of the external source that the resource data are imported from.

" + } + }, "Filter": { "base": "

A search filter.

", "refs": { @@ -377,8 +506,11 @@ "GenericArn": { "base": null, "refs": { - "AppIntegrationsConfiguration$appIntegrationArn": "

The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.

  • For Salesforce, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted as source fields.

  • For ServiceNow, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least number, short_description, sys_mod_count, workflow_state, and active as source fields.

  • For Zendesk, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least id, title, updated_at, and draft as source fields.

  • For SharePoint, your AppIntegrations DataIntegration must have a FileConfiguration, including only file extensions that are among docx, pdf, html, htm, and txt.

", + "AppIntegrationsConfiguration$appIntegrationArn": "

The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.

  • For Salesforce, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted as source fields.

  • For ServiceNow, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least number, short_description, sys_mod_count, workflow_state, and active as source fields.

  • For Zendesk, your AppIntegrations DataIntegration must have an ObjectConfiguration if objectFields is not provided, including at least id, title, updated_at, and draft as source fields.

  • For SharePoint, your AppIntegrations DataIntegration must have a FileConfiguration, including only file extensions that are among docx, pdf, html, htm, and txt.

  • For Amazon S3, the ObjectConfiguration and FileConfiguration of your AppIntegrations DataIntegration must be null. The SourceURI of your DataIntegration must use the following format: s3://your_s3_bucket_name.

    The bucket policy of the corresponding S3 bucket must allow the Amazon Web Services principal app-integrations.amazonaws.com to perform s3:ListBucket, s3:GetObject, and s3:GetBucketLocation against the bucket.

", "AssistantIntegrationConfiguration$topicIntegrationArn": "

The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for streaming chat messages.

", + "QuickResponseData$lastModifiedBy": "

The Amazon Resource Name (ARN) of the user who last updated the quick response data.

", + "QuickResponseSearchResultData$lastModifiedBy": "

The Amazon Resource Name (ARN) of the user who last updated the quick response search result data.

", + "QuickResponseSummary$lastModifiedBy": "

The Amazon Resource Name (ARN) of the user who last updated the quick response data.

", "SessionIntegrationConfiguration$topicIntegrationArn": "

The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for streaming chat messages.

" } }, @@ -422,6 +554,16 @@ "refs": { } }, + "GetImportJobRequest": { + "base": null, + "refs": { + } + }, + "GetImportJobResponse": { + "base": null, + "refs": { + } + }, "GetKnowledgeBaseRequest": { "base": null, "refs": { @@ -432,6 +574,16 @@ "refs": { } }, + "GetQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "GetQuickResponseResponse": { + "base": null, + "refs": { + } + }, "GetRecommendationsRequest": { "base": null, "refs": { @@ -452,6 +604,33 @@ "refs": { } }, + "GroupingConfiguration": { + "base": "

The configuration information of the grouping of Wisdom users.

", + "refs": { + "CreateQuickResponseRequest$groupingConfiguration": "

The configuration information of the user groups that the quick response is accessible to.

", + "QuickResponseData$groupingConfiguration": "

The configuration information of the user groups that the quick response is accessible to.

", + "QuickResponseSearchResultData$groupingConfiguration": "

The configuration information of the user groups that the quick response is accessible to.

", + "UpdateQuickResponseRequest$groupingConfiguration": "

The updated grouping configuration of the quick response.

" + } + }, + "GroupingCriteria": { + "base": null, + "refs": { + "GroupingConfiguration$criteria": "

The criteria used for grouping Wisdom users.

The following is the list of supported criteria values.

" + } + }, + "GroupingValue": { + "base": null, + "refs": { + "GroupingValues$member": null + } + }, + "GroupingValues": { + "base": null, + "refs": { + "GroupingConfiguration$values": "

The list of values that define different groups of Wisdom users.

" + } + }, "Headers": { "base": null, "refs": { @@ -477,6 +656,40 @@ "DocumentText$highlights": "

Highlights in the document text.

" } }, + "ImportJobData": { + "base": "

Summary information about the import job.

", + "refs": { + "GetImportJobResponse$importJob": "

The import job.

", + "StartImportJobResponse$importJob": "

The import job.

" + } + }, + "ImportJobList": { + "base": null, + "refs": { + "ListImportJobsResponse$importJobSummaries": "

Summary information about the import jobs.

" + } + }, + "ImportJobStatus": { + "base": null, + "refs": { + "ImportJobData$status": "

The status of the import job.

", + "ImportJobSummary$status": "

The status of the import job.

" + } + }, + "ImportJobSummary": { + "base": "

Summary information about the import job.

", + "refs": { + "ImportJobList$member": null + } + }, + "ImportJobType": { + "base": null, + "refs": { + "ImportJobData$importJobType": "

The type of the import job.

", + "ImportJobSummary$importJobType": "

The type of import job.

", + "StartImportJobRequest$importJobType": "

The type of the import job.

  • For importing quick response resource, set the value to QUICK_RESPONSES.

" + } + }, "KnowledgeBaseAssociationData": { "base": "

Association information about the knowledge base.

", "refs": { @@ -518,6 +731,15 @@ "KnowledgeBaseSummary$knowledgeBaseType": "

The type of knowledge base.

" } }, + "LanguageCode": { + "base": null, + "refs": { + "CreateQuickResponseRequest$language": "

The language code value for the language in which the quick response is written. The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, ja_JP, ko_KR, pt_BR, zh_CN, zh_TW

", + "QuickResponseData$language": "

The language code value for the language in which the quick response is written.

", + "QuickResponseSearchResultData$language": "

The language code value for the language in which the quick response is written.

", + "UpdateQuickResponseRequest$language": "

The language code value for the language in which the quick response is written. The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, ja_JP, ko_KR, pt_BR, zh_CN, zh_TW

" + } + }, "ListAssistantAssociationsRequest": { "base": null, "refs": { @@ -548,6 +770,16 @@ "refs": { } }, + "ListImportJobsRequest": { + "base": null, + "refs": { + } + }, + "ListImportJobsResponse": { + "base": null, + "refs": { + } + }, "ListKnowledgeBasesRequest": { "base": null, "refs": { @@ -558,6 +790,16 @@ "refs": { } }, + "ListQuickResponsesRequest": { + "base": null, + "refs": { + } + }, + "ListQuickResponsesResponse": { + "base": null, + "refs": { + } + }, "ListTagsForResourceRequest": { "base": null, "refs": { @@ -575,9 +817,12 @@ "ListAssistantAssociationsRequest$maxResults": "

The maximum number of results to return per page.

", "ListAssistantsRequest$maxResults": "

The maximum number of results to return per page.

", "ListContentsRequest$maxResults": "

The maximum number of results to return per page.

", + "ListImportJobsRequest$maxResults": "

The maximum number of results to return per page.

", "ListKnowledgeBasesRequest$maxResults": "

The maximum number of results to return per page.

", + "ListQuickResponsesRequest$maxResults": "

The maximum number of results to return per page.

", "QueryAssistantRequest$maxResults": "

The maximum number of results to return per page.

", "SearchContentRequest$maxResults": "

The maximum number of results to return per page.

", + "SearchQuickResponsesRequest$maxResults": "

The maximum number of results to return per page.

", "SearchSessionsRequest$maxResults": "

The maximum number of results to return per page.

" } }, @@ -617,19 +862,31 @@ "NonEmptyString": { "base": null, "refs": { + "ConnectConfiguration$instanceId": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", "ContentData$revisionId": "

The identifier of the content revision.

", "ContentMetadata$key": null, "ContentMetadata$value": null, "ContentSummary$revisionId": "

The identifier of the revision of the content.

", "CreateContentRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateKnowledgeBaseRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", + "CreateQuickResponseRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "Filter$value": "

The desired field value on which to filter.

", "Headers$key": null, "Headers$value": null, + "ListImportJobsRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListImportJobsResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListKnowledgeBasesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListKnowledgeBasesResponse$nextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListQuickResponsesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListQuickResponsesResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ObjectFieldsList$member": null, - "ServerSideEncryptionConfiguration$kmsKeyId": "

The KMS key. For information about valid ID values, see Key identifiers (KeyId).

", + "QuickResponseFilterField$name": "

The name of the attribute field to filter the quick responses by.

", + "QuickResponseOrderField$name": "

The name of the attribute to order the quick response query results by.

", + "QuickResponseQueryField$name": "

The name of the attribute to query the quick responses by.

", + "SearchQuickResponsesRequest$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "SearchQuickResponsesResponse$nextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ServerSideEncryptionConfiguration$kmsKeyId": "

The customer managed key used for encryption. For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance. For information about valid ID values, see Key identifiers (KeyId).

", + "StartImportJobRequest$clientToken": "

The tags used to organize, track, or control access for this resource.

", "UpdateContentRequest$revisionId": "

The revisionId of the content resource to update, taken from an earlier call to GetContent, GetContentSummary, SearchContent, or ListContents. If included, this argument acts as an optimistic lock to ensure content was not modified since it was last read. If it has been modified, this API throws a PreconditionFailedException.

" } }, @@ -667,11 +924,23 @@ "AppIntegrationsConfiguration$objectFields": "

The fields from the source that are made available to your agents in Wisdom. Optional if ObjectConfiguration is included in the provided DataIntegration.

  • For Salesforce, you must include at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, and IsDeleted.

  • For ServiceNow, you must include at least number, short_description, sys_mod_count, workflow_state, and active.

  • For Zendesk, you must include at least id, title, updated_at, and draft.

Make sure to include additional fields. These fields are indexed and used to source recommendations.

" } }, + "Order": { + "base": null, + "refs": { + "QuickResponseOrderField$order": "

The order at which the quick responses are sorted by.

" + } + }, "PreconditionFailedException": { "base": "

The provided revisionId does not match, indicating the content has been modified since it was last read.

", "refs": { } }, + "Priority": { + "base": null, + "refs": { + "QuickResponseQueryField$priority": "

The importance of the attribute field when calculating query result relevancy scores. The value set for this parameter affects the ordering of search results.

" + } + }, "QueryAssistantRequest": { "base": null, "refs": { @@ -701,6 +970,176 @@ "QueryRecommendationTriggerData$text": "

The text associated with the recommendation trigger.

" } }, + "QuickResponseContent": { + "base": null, + "refs": { + "QuickResponseContentProvider$content": "

The content of the quick response.

", + "QuickResponseDataProvider$content": "

The content of the quick response.

" + } + }, + "QuickResponseContentProvider": { + "base": "

The container quick response content.

", + "refs": { + "QuickResponseContents$markdown": null, + "QuickResponseContents$plainText": null + } + }, + "QuickResponseContents": { + "base": "

The content of the quick response stored in different media types.

", + "refs": { + "QuickResponseData$contents": "

The contents of the quick response.

", + "QuickResponseSearchResultData$contents": "

The contents of the quick response.

" + } + }, + "QuickResponseData": { + "base": "

Information about the quick response.

", + "refs": { + "CreateQuickResponseResponse$quickResponse": "

The quick response.

", + "GetQuickResponseResponse$quickResponse": "

The quick response.

", + "UpdateQuickResponseResponse$quickResponse": "

The quick response.

" + } + }, + "QuickResponseDataProvider": { + "base": "

The container of quick response data.

", + "refs": { + "CreateQuickResponseRequest$content": "

The content of the quick response.

", + "UpdateQuickResponseRequest$content": "

The updated content of the quick response.

" + } + }, + "QuickResponseDescription": { + "base": null, + "refs": { + "CreateQuickResponseRequest$description": "

The description of the quick response.

", + "QuickResponseData$description": "

The description of the quick response.

", + "QuickResponseSearchResultData$description": "

The description of the quick response.

", + "QuickResponseSummary$description": "

The description of the quick response.

", + "UpdateQuickResponseRequest$description": "

The updated description of the quick response.

" + } + }, + "QuickResponseFilterField": { + "base": "

The quick response fields to filter the quick response query results by.

The following is the list of supported field names.

  • name

  • description

  • shortcutKey

  • isActive

  • channels

  • language

  • contentType

  • createdTime

  • lastModifiedTime

  • lastModifiedBy

  • groupingConfiguration.criteria

  • groupingConfiguration.values

", + "refs": { + "QuickResponseFilterFieldList$member": null + } + }, + "QuickResponseFilterFieldList": { + "base": null, + "refs": { + "QuickResponseSearchExpression$filters": "

The configuration of filtering rules applied to quick response query results.

" + } + }, + "QuickResponseFilterOperator": { + "base": null, + "refs": { + "QuickResponseFilterField$operator": "

The operator to use for filtering.

" + } + }, + "QuickResponseFilterValue": { + "base": null, + "refs": { + "QuickResponseFilterValueList$member": null + } + }, + "QuickResponseFilterValueList": { + "base": null, + "refs": { + "QuickResponseFilterField$values": "

The values of attribute field to filter the quick response by.

" + } + }, + "QuickResponseName": { + "base": null, + "refs": { + "CreateQuickResponseRequest$name": "

The name of the quick response.

", + "QuickResponseData$name": "

The name of the quick response.

", + "QuickResponseSearchResultData$name": "

The name of the quick response.

", + "QuickResponseSummary$name": "

The name of the quick response.

", + "UpdateQuickResponseRequest$name": "

The name of the quick response.

" + } + }, + "QuickResponseOrderField": { + "base": "

The quick response fields to order the quick response query results by.

The following is the list of supported field names.

  • name

  • description

  • shortcutKey

  • isActive

  • channels

  • language

  • contentType

  • createdTime

  • lastModifiedTime

  • lastModifiedBy

  • groupingConfiguration.criteria

  • groupingConfiguration.values

", + "refs": { + "QuickResponseSearchExpression$orderOnField": "

The quick response attribute fields on which the query results are ordered.

" + } + }, + "QuickResponseQueryField": { + "base": "

The quick response fields to query quick responses by.

The following is the list of supported field names.

  • content

  • name

  • description

  • shortcutKey

", + "refs": { + "QuickResponseQueryFieldList$member": null + } + }, + "QuickResponseQueryFieldList": { + "base": null, + "refs": { + "QuickResponseSearchExpression$queries": "

The quick response query expressions.

" + } + }, + "QuickResponseQueryOperator": { + "base": null, + "refs": { + "QuickResponseQueryField$operator": "

The operator to use for matching attribute field values in the query.

" + } + }, + "QuickResponseQueryValue": { + "base": null, + "refs": { + "QuickResponseQueryValueList$member": null + } + }, + "QuickResponseQueryValueList": { + "base": null, + "refs": { + "QuickResponseQueryField$values": "

The values of the attribute to query the quick responses by.

" + } + }, + "QuickResponseSearchExpression": { + "base": "

Information about the import job.

", + "refs": { + "SearchQuickResponsesRequest$searchExpression": "

The search expression for querying the quick response.

" + } + }, + "QuickResponseSearchResultData": { + "base": "

The result of quick response search.

", + "refs": { + "QuickResponseSearchResultsList$member": null + } + }, + "QuickResponseSearchResultsList": { + "base": null, + "refs": { + "SearchQuickResponsesResponse$results": "

The results of the quick response search.

" + } + }, + "QuickResponseStatus": { + "base": null, + "refs": { + "QuickResponseData$status": "

The status of the quick response data.

", + "QuickResponseSearchResultData$status": "

The resource status of the quick response.

", + "QuickResponseSummary$status": "

The resource status of the quick response.

" + } + }, + "QuickResponseSummary": { + "base": "

The summary information about the quick response.

", + "refs": { + "QuickResponseSummaryList$member": null + } + }, + "QuickResponseSummaryList": { + "base": null, + "refs": { + "ListQuickResponsesResponse$quickResponseSummaries": "

Summary information about the quick responses.

" + } + }, + "QuickResponseType": { + "base": null, + "refs": { + "CreateQuickResponseRequest$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for a quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for a quick response written in richtext.

", + "QuickResponseData$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

", + "QuickResponseSearchResultData$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

", + "QuickResponseSummary$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

", + "UpdateQuickResponseRequest$contentType": "

The media type of the quick response content.

  • Use application/x.quickresponse;format=plain for quick response written in plain text.

  • Use application/x.quickresponse;format=markdown for quick response written in richtext.

" + } + }, "RecommendationData": { "base": "

Information about the recommendation.

", "refs": { @@ -788,6 +1227,11 @@ "KnowledgeBaseSummary$renderingConfiguration": "

Information about how to render the content.

" } }, + "RequestTimeoutException": { + "base": "

The request reached the service more than 15 minutes after the date stamp on the request or more than 15 minutes after the request expiration date (such as for pre-signed URLs), or the date stamp on the request is more than 15 minutes in the future.

", + "refs": { + } + }, "ResourceNotFoundException": { "base": "

The specified resource does not exist.

", "refs": { @@ -816,6 +1260,16 @@ "SearchSessionsRequest$searchExpression": "

The search expression to filter results.

" } }, + "SearchQuickResponsesRequest": { + "base": null, + "refs": { + } + }, + "SearchQuickResponsesResponse": { + "base": null, + "refs": { + } + }, "SearchSessionsRequest": { "base": null, "refs": { @@ -833,14 +1287,14 @@ } }, "ServerSideEncryptionConfiguration": { - "base": "

The KMS key used for encryption.

", + "base": "

The configuration information for the customer managed key used for encryption.

", "refs": { - "AssistantData$serverSideEncryptionConfiguration": "

The KMS key used for encryption.

", - "AssistantSummary$serverSideEncryptionConfiguration": "

The KMS key used for encryption.

", - "CreateAssistantRequest$serverSideEncryptionConfiguration": "

The KMS key used for encryption.

", - "CreateKnowledgeBaseRequest$serverSideEncryptionConfiguration": "

The KMS key used for encryption.

", - "KnowledgeBaseData$serverSideEncryptionConfiguration": "

The KMS key used for encryption.

", - "KnowledgeBaseSummary$serverSideEncryptionConfiguration": "

The KMS key used for encryption.

" + "AssistantData$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the key to invoke Wisdom. To use Wisdom with chat, the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions to the connect.amazonaws.com service principal.

For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance.

", + "AssistantSummary$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the key to invoke Wisdom. To use Wisdom with chat, the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions to the connect.amazonaws.com service principal.

For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance.

", + "CreateAssistantRequest$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

The customer managed key must have a policy that allows kms:CreateGrant, kms:DescribeKey, and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the key to invoke Wisdom. To use Wisdom with chat, the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions to the connect.amazonaws.com service principal.

For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance.

", + "CreateKnowledgeBaseRequest$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the key to invoke Wisdom.

For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance.

", + "KnowledgeBaseData$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the key to invoke Wisdom.

For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance.

", + "KnowledgeBaseSummary$serverSideEncryptionConfiguration": "

The configuration information for the customer managed key used for encryption.

This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the key to invoke Wisdom.

For more information about setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom for your instance.

" } }, "ServiceQuotaExceededException": { @@ -873,6 +1327,15 @@ "SessionSummaries$member": null } }, + "ShortCutKey": { + "base": null, + "refs": { + "CreateQuickResponseRequest$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

", + "QuickResponseData$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

", + "QuickResponseSearchResultData$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

", + "UpdateQuickResponseRequest$shortcutKey": "

The shortcut key of the quick response. The value should be unique across the knowledge base.

" + } + }, "SourceConfiguration": { "base": "

Configuration information about the external data source.

", "refs": { @@ -891,6 +1354,16 @@ "refs": { } }, + "StartImportJobRequest": { + "base": null, + "refs": { + } + }, + "StartImportJobResponse": { + "base": null, + "refs": { + } + }, "String": { "base": null, "refs": { @@ -900,6 +1373,7 @@ "PreconditionFailedException$message": null, "RecommendationData$recommendationId": "

The identifier of the recommendation.

", "RecommendationIdList$member": null, + "RequestTimeoutException$message": null, "ResourceNotFoundException$message": null, "ResourceNotFoundException$resourceName": "

The specified resource name.

", "ServiceQuotaExceededException$message": null, @@ -912,7 +1386,18 @@ "base": null, "refs": { "ContentData$urlExpiry": "

The expiration time of the URL as an epoch timestamp.

", + "ImportJobData$createdTime": "

The timestamp when the import job was created.

", + "ImportJobData$lastModifiedTime": "

The timestamp when the import job data was last modified.

", + "ImportJobData$urlExpiry": "

The expiration time of the URL as an epoch timestamp.

", + "ImportJobSummary$createdTime": "

The timestamp when the import job was created.

", + "ImportJobSummary$lastModifiedTime": "

The timestamp when the import job was last modified.

", "KnowledgeBaseData$lastContentModificationTime": "

An epoch timestamp indicating the most recent content modification inside the knowledge base. If no content exists in a knowledge base, this value is unset.

", + "QuickResponseData$createdTime": "

The timestamp when the quick response was created.

", + "QuickResponseData$lastModifiedTime": "

The timestamp when the quick response data was last modified.

", + "QuickResponseSearchResultData$createdTime": "

The timestamp when the quick response was created.

", + "QuickResponseSearchResultData$lastModifiedTime": "

The timestamp when the quick response search result data was last modified.

", + "QuickResponseSummary$createdTime": "

The timestamp when the quick response was created.

", + "QuickResponseSummary$lastModifiedTime": "

The timestamp when the quick response summary was last modified.

", "StartContentUploadResponse$urlExpiry": "

The expiration time of the URL as an epoch timestamp.

" } }, @@ -958,14 +1443,24 @@ "CreateAssistantRequest$tags": "

The tags used to organize, track, or control access for this resource.

", "CreateContentRequest$tags": "

The tags used to organize, track, or control access for this resource.

", "CreateKnowledgeBaseRequest$tags": "

The tags used to organize, track, or control access for this resource.

", + "CreateQuickResponseRequest$tags": "

The tags used to organize, track, or control access for this resource.

", "CreateSessionRequest$tags": "

The tags used to organize, track, or control access for this resource.

", "KnowledgeBaseData$tags": "

The tags used to organize, track, or control access for this resource.

", "KnowledgeBaseSummary$tags": "

The tags used to organize, track, or control access for this resource.

", "ListTagsForResourceResponse$tags": "

The tags used to organize, track, or control access for this resource.

", + "QuickResponseData$tags": "

The tags used to organize, track, or control access for this resource.

", + "QuickResponseSearchResultData$tags": "

The tags used to organize, track, or control access for this resource.

", + "QuickResponseSummary$tags": "

The tags used to organize, track, or control access for this resource.

", "SessionData$tags": "

The tags used to organize, track, or control access for this resource.

", "TagResourceRequest$tags": "

The tags used to organize, track, or control access for this resource.

" } }, + "TimeToLive": { + "base": "

Expiration time in minutes

", + "refs": { + "StartContentUploadRequest$presignedUrlTimeToLive": "

The expected expiration time of the generated presigned URL, specified in minutes.

" + } + }, "TooManyTagsException": { "base": "

Amazon Connect Wisdom throws this exception if you have too many tags in your tag set.

", "refs": { @@ -1001,11 +1496,24 @@ "refs": { } }, + "UpdateQuickResponseRequest": { + "base": null, + "refs": { + } + }, + "UpdateQuickResponseResponse": { + "base": null, + "refs": { + } + }, "UploadId": { "base": null, "refs": { "CreateContentRequest$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", + "ImportJobData$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", + "ImportJobSummary$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", "StartContentUploadResponse$uploadId": "

The identifier of the upload.

", + "StartImportJobRequest$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

", "UpdateContentRequest$uploadId": "

A pointer to the uploaded asset. This value is returned by StartContentUpload.

" } }, @@ -1023,6 +1531,8 @@ "base": null, "refs": { "ContentData$url": "

The URL of the content.

", + "ImportJobData$failedRecordReport": "

The link to donwload the information of resource data that failed to be imported.

", + "ImportJobData$url": "

The download link to the resource file that is uploaded to the import job.

", "StartContentUploadResponse$url": "

The URL of the upload.

" } }, @@ -1031,20 +1541,32 @@ "refs": { "AssistantAssociationData$assistantAssociationId": "

The identifier of the assistant association.

", "AssistantAssociationData$assistantId": "

The identifier of the Wisdom assistant.

", - "AssistantAssociationInputData$knowledgeBaseId": "

The identifier of the knowledge base.

", + "AssistantAssociationInputData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", "AssistantAssociationSummary$assistantAssociationId": "

The identifier of the assistant association.

", "AssistantAssociationSummary$assistantId": "

The identifier of the Wisdom assistant.

", "AssistantData$assistantId": "

The identifier of the Wisdom assistant.

", "AssistantSummary$assistantId": "

The identifier of the Wisdom assistant.

", "ContentData$contentId": "

The identifier of the content.

", - "ContentData$knowledgeBaseId": "

The identifier of the knowledge base.

", + "ContentData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", "ContentReference$contentId": "

The identifier of the content.

", - "ContentReference$knowledgeBaseId": "

The identifier of the knowledge base.

", + "ContentReference$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", "ContentSummary$contentId": "

The identifier of the content.

", - "ContentSummary$knowledgeBaseId": "

The identifier of the knowledge base.

", - "KnowledgeBaseAssociationData$knowledgeBaseId": "

The identifier of the knowledge base.

", - "KnowledgeBaseData$knowledgeBaseId": "

The identifier of the knowledge base.

", - "KnowledgeBaseSummary$knowledgeBaseId": "

The identifier of the knowledge base.

", + "ContentSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "DeleteImportJobRequest$importJobId": "

The identifier of the import job to be deleted.

", + "GetImportJobRequest$importJobId": "

The identifier of the import job to retrieve.

", + "ImportJobData$importJobId": "

The identifier of the import job.

", + "ImportJobData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "ImportJobSummary$importJobId": "

The identifier of the import job.

", + "ImportJobSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "KnowledgeBaseAssociationData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "KnowledgeBaseData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "KnowledgeBaseSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "QuickResponseData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "QuickResponseData$quickResponseId": "

The identifier of the quick response.

", + "QuickResponseSearchResultData$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "QuickResponseSearchResultData$quickResponseId": "

The identifier of the quick response.

", + "QuickResponseSummary$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "QuickResponseSummary$quickResponseId": "

The identifier of the quick response.

", "RecommendationTrigger$id": "

The identifier of the recommendation trigger.

", "ResultData$resultId": "

The identifier of the result data.

", "SessionData$sessionId": "

The identifier of the session.

", @@ -1056,38 +1578,51 @@ "base": null, "refs": { "CreateAssistantAssociationRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "CreateContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "CreateContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "CreateQuickResponseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "CreateSessionRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "DeleteAssistantAssociationRequest$assistantAssociationId": "

The identifier of the assistant association. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "DeleteAssistantAssociationRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "DeleteAssistantRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "DeleteContentRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "DeleteContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteImportJobRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", "DeleteKnowledgeBaseRequest$knowledgeBaseId": "

The knowledge base to delete content from. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "DeleteQuickResponseRequest$knowledgeBaseId": "

The knowledge base from which the quick response is deleted. The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

", + "DeleteQuickResponseRequest$quickResponseId": "

The identifier of the quick response to delete.

", "GetAssistantAssociationRequest$assistantAssociationId": "

The identifier of the assistant association. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetAssistantAssociationRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetAssistantRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetContentRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "GetContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetContentSummaryRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "GetContentSummaryRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "GetKnowledgeBaseRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetContentSummaryRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetImportJobRequest$knowledgeBaseId": "

The identifier of the knowledge base that the import job belongs to.

", + "GetKnowledgeBaseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "GetQuickResponseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should be a QUICK_RESPONSES type knowledge base.

", + "GetQuickResponseRequest$quickResponseId": "

The identifier of the quick response.

", "GetRecommendationsRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetRecommendationsRequest$sessionId": "

The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetSessionRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "GetSessionRequest$sessionId": "

The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "ListAssistantAssociationsRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "ListContentsRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListContentsRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListImportJobsRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "ListQuickResponsesRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "NotifyRecommendationsReceivedRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "NotifyRecommendationsReceivedRequest$sessionId": "

The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "QueryAssistantRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "RemoveKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "SearchContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "RemoveKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "SearchContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "SearchQuickResponsesRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should be a QUICK_RESPONSES type knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", "SearchSessionsRequest$assistantId": "

The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "StartContentUploadRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "StartContentUploadRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "StartImportJobRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

  • For importing Wisdom quick responses, this should be a QUICK_RESPONSES type knowledge base.

", "UpdateContentRequest$contentId": "

The identifier of the content. Can be either the ID or the ARN. URLs cannot contain the ARN.

", - "UpdateContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN

", - "UpdateKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "

The identifier of the knowledge base. Can be either the ID or the ARN. URLs cannot contain the ARN.

" + "UpdateContentRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN

", + "UpdateKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "UpdateQuickResponseRequest$knowledgeBaseId": "

The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.

", + "UpdateQuickResponseRequest$quickResponseId": "

The identifier of the quick response.

" } }, "ValidationException": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://wisdom-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://wisdom-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://wisdom-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://wisdom-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://wisdom.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], "endpoint": { - "url": "https://wisdom.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://wisdom.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://wisdom.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/wisdom/2020-10-19/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/wisdom/2020-10-19/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -18,12 +18,24 @@ "limit_key": "maxResults", "result_key": "contentSummaries" }, + "ListImportJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "importJobSummaries" + }, "ListKnowledgeBases": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "knowledgeBaseSummaries" }, + "ListQuickResponses": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "quickResponseSummaries" + }, "QueryAssistant": { "input_token": "nextToken", "output_token": "nextToken", @@ -36,6 +48,12 @@ "limit_key": "maxResults", "result_key": "contentSummaries" }, + "SearchQuickResponses": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "results" + }, "SearchSessions": { "input_token": "nextToken", "output_token": "nextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -46,6 +46,27 @@ {"shape":"OperationNotSupportedException"} ] }, + "AssociateWorkspaceApplication":{ + "name":"AssociateWorkspaceApplication", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AssociateWorkspaceApplicationRequest"}, + "output":{"shape":"AssociateWorkspaceApplicationResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ResourceInUseException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ComputeNotCompatibleException"}, + {"shape":"OperatingSystemNotCompatibleException"}, + {"shape":"ApplicationNotSupportedException"}, + {"shape":"IncompatibleApplicationsException"} + ] + }, "AuthorizeIpRules":{ "name":"AuthorizeIpRules", "http":{ @@ -327,6 +348,23 @@ {"shape":"AccessDeniedException"} ] }, + "DeployWorkspaceApplications":{ + "name":"DeployWorkspaceApplications", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeployWorkspaceApplicationsRequest"}, + "output":{"shape":"DeployWorkspaceApplicationsResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceInUseException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"IncompatibleApplicationsException"} + ] + }, "DeregisterWorkspaceDirectory":{ "name":"DeregisterWorkspaceDirectory", "http":{ @@ -367,6 +405,51 @@ {"shape":"AccessDeniedException"} ] }, + "DescribeApplicationAssociations":{ + "name":"DescribeApplicationAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeApplicationAssociationsRequest"}, + "output":{"shape":"DescribeApplicationAssociationsResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "DescribeApplications":{ + "name":"DescribeApplications", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeApplicationsRequest"}, + "output":{"shape":"DescribeApplicationsResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "DescribeBundleAssociations":{ + "name":"DescribeBundleAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeBundleAssociationsRequest"}, + "output":{"shape":"DescribeBundleAssociationsResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "DescribeClientBranding":{ "name":"DescribeClientBranding", "http":{ @@ -438,6 +521,21 @@ {"shape":"OperationNotSupportedException"} ] }, + "DescribeImageAssociations":{ + "name":"DescribeImageAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeImageAssociationsRequest"}, + "output":{"shape":"DescribeImageAssociationsResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "DescribeIpGroups":{ "name":"DescribeIpGroups", "http":{ @@ -463,6 +561,21 @@ {"shape":"ResourceNotFoundException"} ] }, + "DescribeWorkspaceAssociations":{ + "name":"DescribeWorkspaceAssociations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeWorkspaceAssociationsRequest"}, + "output":{"shape":"DescribeWorkspaceAssociationsResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "DescribeWorkspaceBundles":{ "name":"DescribeWorkspaceBundles", "http":{ @@ -583,6 +696,22 @@ {"shape":"AccessDeniedException"} ] }, + "DisassociateWorkspaceApplication":{ + "name":"DisassociateWorkspaceApplication", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisassociateWorkspaceApplicationRequest"}, + "output":{"shape":"DisassociateWorkspaceApplicationResult"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"}, + {"shape":"ResourceInUseException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ImportClientBranding":{ "name":"ImportClientBranding", "http":{ @@ -1021,12 +1150,46 @@ "Microsoft_Office_2019" ] }, + "ApplicationAssociatedResourceType":{ + "type":"string", + "enum":[ + "WORKSPACE", + "BUNDLE", + "IMAGE" + ] + }, + "ApplicationAssociatedResourceTypeList":{ + "type":"list", + "member":{"shape":"ApplicationAssociatedResourceType"} + }, "ApplicationList":{ "type":"list", "member":{"shape":"Application"}, "max":5, "min":1 }, + "ApplicationNotSupportedException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, + "ApplicationResourceAssociation":{ + "type":"structure", + "members":{ + "ApplicationId":{"shape":"WorkSpaceApplicationId"}, + "AssociatedResourceId":{"shape":"NonEmptyString"}, + "AssociatedResourceType":{"shape":"ApplicationAssociatedResourceType"}, + "Created":{"shape":"Timestamp"}, + "LastUpdatedTime":{"shape":"Timestamp"}, + "State":{"shape":"AssociationState"}, + "StateReason":{"shape":"AssociationStateReason"} + } + }, + "ApplicationResourceAssociationList":{ + "type":"list", + "member":{"shape":"ApplicationResourceAssociation"} + }, "AssociateConnectionAliasRequest":{ "type":"structure", "required":[ @@ -1060,6 +1223,54 @@ "members":{ } }, + "AssociateWorkspaceApplicationRequest":{ + "type":"structure", + "required":[ + "WorkspaceId", + "ApplicationId" + ], + "members":{ + "WorkspaceId":{"shape":"WorkspaceId"}, + "ApplicationId":{"shape":"WorkSpaceApplicationId"} + } + }, + "AssociateWorkspaceApplicationResult":{ + "type":"structure", + "members":{ + "Association":{"shape":"WorkspaceResourceAssociation"} + } + }, + "AssociationErrorCode":{ + "type":"string", + "enum":[ + "ValidationError.InsufficientDiskSpace", + "ValidationError.InsufficientMemory", + "ValidationError.UnsupportedOperatingSystem", + "DeploymentError.InternalServerError", + "DeploymentError.WorkspaceUnreachable" + ] + }, + "AssociationState":{ + "type":"string", + "enum":[ + "PENDING_INSTALL", + "PENDING_INSTALL_DEPLOYMENT", + "PENDING_UNINSTALL", + "PENDING_UNINSTALL_DEPLOYMENT", + "INSTALLING", + "UNINSTALLING", + "ERROR", + "COMPLETED", + "REMOVED" + ] + }, + "AssociationStateReason":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"AssociationErrorCode"}, + "ErrorMessage":{"shape":"String2048"} + } + }, "AssociationStatus":{ "type":"string", "enum":[ @@ -1091,6 +1302,14 @@ "pattern":"^\\d{12}$" }, "BooleanObject":{"type":"boolean"}, + "BundleAssociatedResourceType":{ + "type":"string", + "enum":["APPLICATION"] + }, + "BundleAssociatedResourceTypeList":{ + "type":"list", + "member":{"shape":"BundleAssociatedResourceType"} + }, "BundleId":{ "type":"string", "pattern":"^wsb-[0-9a-z]{8,63}$" @@ -1106,6 +1325,22 @@ "member":{"shape":"WorkspaceBundle"} }, "BundleOwner":{"type":"string"}, + "BundleResourceAssociation":{ + "type":"structure", + "members":{ + "AssociatedResourceId":{"shape":"NonEmptyString"}, + "AssociatedResourceType":{"shape":"BundleAssociatedResourceType"}, + "BundleId":{"shape":"BundleId"}, + "Created":{"shape":"Timestamp"}, + "LastUpdatedTime":{"shape":"Timestamp"}, + "State":{"shape":"AssociationState"}, + "StateReason":{"shape":"AssociationStateReason"} + } + }, + "BundleResourceAssociationList":{ + "type":"list", + "member":{"shape":"BundleResourceAssociation"} + }, "BundleType":{ "type":"string", "enum":[ @@ -1206,6 +1441,16 @@ "GRAPHICSPRO_G4DN" ] }, + "ComputeList":{ + "type":"list", + "member":{"shape":"Compute"} + }, + "ComputeNotCompatibleException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "ComputeType":{ "type":"structure", "members":{ @@ -1504,6 +1749,20 @@ "PendingRequests":{"shape":"WorkspaceList"} } }, + "DataReplication":{ + "type":"string", + "enum":[ + "NO_REPLICATION", + "PRIMARY_AS_SOURCE" + ] + }, + "DataReplicationSettings":{ + "type":"structure", + "members":{ + "DataReplication":{"shape":"DataReplication"}, + "RecoverySnapshotTime":{"shape":"Timestamp"} + } + }, "DedicatedTenancyCidrRangeList":{ "type":"list", "member":{"shape":"DedicatedTenancyManagementCidrRange"} @@ -1682,6 +1941,20 @@ "members":{ } }, + "DeployWorkspaceApplicationsRequest":{ + "type":"structure", + "required":["WorkspaceId"], + "members":{ + "WorkspaceId":{"shape":"WorkspaceId"}, + "Force":{"shape":"BooleanObject"} + } + }, + "DeployWorkspaceApplicationsResult":{ + "type":"structure", + "members":{ + "Deployment":{"shape":"WorkSpaceApplicationDeployment"} + } + }, "DeregisterWorkspaceDirectoryRequest":{ "type":"structure", "required":["DirectoryId"], @@ -1719,6 +1992,62 @@ "DedicatedTenancyManagementCidrRange":{"shape":"DedicatedTenancyManagementCidrRange"} } }, + "DescribeApplicationAssociationsRequest":{ + "type":"structure", + "required":[ + "ApplicationId", + "AssociatedResourceTypes" + ], + "members":{ + "MaxResults":{"shape":"Limit"}, + "NextToken":{"shape":"PaginationToken"}, + "ApplicationId":{"shape":"WorkSpaceApplicationId"}, + "AssociatedResourceTypes":{"shape":"ApplicationAssociatedResourceTypeList"} + } + }, + "DescribeApplicationAssociationsResult":{ + "type":"structure", + "members":{ + "Associations":{"shape":"ApplicationResourceAssociationList"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "DescribeApplicationsRequest":{ + "type":"structure", + "members":{ + "ApplicationIds":{"shape":"WorkSpaceApplicationIdList"}, + "ComputeTypeNames":{"shape":"ComputeList"}, + "LicenseType":{"shape":"WorkSpaceApplicationLicenseType"}, + "OperatingSystemNames":{"shape":"OperatingSystemNameList"}, + "Owner":{"shape":"WorkSpaceApplicationOwner"}, + "MaxResults":{"shape":"Limit"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "DescribeApplicationsResult":{ + "type":"structure", + "members":{ + "Applications":{"shape":"WorkSpaceApplicationList"}, + "NextToken":{"shape":"PaginationToken"} + } + }, + "DescribeBundleAssociationsRequest":{ + "type":"structure", + "required":[ + "BundleId", + "AssociatedResourceTypes" + ], + "members":{ + "BundleId":{"shape":"BundleId"}, + "AssociatedResourceTypes":{"shape":"BundleAssociatedResourceTypeList"} + } + }, + "DescribeBundleAssociationsResult":{ + "type":"structure", + "members":{ + "Associations":{"shape":"BundleResourceAssociationList"} + } + }, "DescribeClientBrandingRequest":{ "type":"structure", "required":["ResourceId"], @@ -1799,6 +2128,23 @@ "NextToken":{"shape":"PaginationToken"} } }, + "DescribeImageAssociationsRequest":{ + "type":"structure", + "required":[ + "ImageId", + "AssociatedResourceTypes" + ], + "members":{ + "ImageId":{"shape":"WorkspaceImageId"}, + "AssociatedResourceTypes":{"shape":"ImageAssociatedResourceTypeList"} + } + }, + "DescribeImageAssociationsResult":{ + "type":"structure", + "members":{ + "Associations":{"shape":"ImageResourceAssociationList"} + } + }, "DescribeIpGroupsRequest":{ "type":"structure", "members":{ @@ -1827,6 +2173,23 @@ "TagList":{"shape":"TagList"} } }, + "DescribeWorkspaceAssociationsRequest":{ + "type":"structure", + "required":[ + "WorkspaceId", + "AssociatedResourceTypes" + ], + "members":{ + "WorkspaceId":{"shape":"WorkspaceId"}, + "AssociatedResourceTypes":{"shape":"WorkSpaceAssociatedResourceTypeList"} + } + }, + "DescribeWorkspaceAssociationsResult":{ + "type":"structure", + "members":{ + "Associations":{"shape":"WorkspaceResourceAssociationList"} + } + }, "DescribeWorkspaceBundlesRequest":{ "type":"structure", "members":{ @@ -1982,6 +2345,23 @@ "members":{ } }, + "DisassociateWorkspaceApplicationRequest":{ + "type":"structure", + "required":[ + "WorkspaceId", + "ApplicationId" + ], + "members":{ + "WorkspaceId":{"shape":"WorkspaceId"}, + "ApplicationId":{"shape":"WorkSpaceApplicationId"} + } + }, + "DisassociateWorkspaceApplicationResult":{ + "type":"structure", + "members":{ + "Association":{"shape":"WorkspaceResourceAssociation"} + } + }, "DnsIpAddresses":{ "type":"list", "member":{"shape":"IpAddress"} @@ -2056,6 +2436,14 @@ "ErrorMessage":{"shape":"Description"} } }, + "ImageAssociatedResourceType":{ + "type":"string", + "enum":["APPLICATION"] + }, + "ImageAssociatedResourceTypeList":{ + "type":"list", + "member":{"shape":"ImageAssociatedResourceType"} + }, "ImagePermission":{ "type":"structure", "members":{ @@ -2066,6 +2454,22 @@ "type":"list", "member":{"shape":"ImagePermission"} }, + "ImageResourceAssociation":{ + "type":"structure", + "members":{ + "AssociatedResourceId":{"shape":"NonEmptyString"}, + "AssociatedResourceType":{"shape":"ImageAssociatedResourceType"}, + "Created":{"shape":"Timestamp"}, + "LastUpdatedTime":{"shape":"Timestamp"}, + "ImageId":{"shape":"WorkspaceImageId"}, + "State":{"shape":"AssociationState"}, + "StateReason":{"shape":"AssociationStateReason"} + } + }, + "ImageResourceAssociationList":{ + "type":"list", + "member":{"shape":"ImageResourceAssociation"} + }, "ImageType":{ "type":"string", "enum":[ @@ -2120,6 +2524,12 @@ "ImageId":{"shape":"WorkspaceImageId"} } }, + "IncompatibleApplicationsException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "InvalidParameterValuesException":{ "type":"structure", "members":{ @@ -2393,13 +2803,11 @@ }, "ModifyWorkspacePropertiesRequest":{ "type":"structure", - "required":[ - "WorkspaceId", - "WorkspaceProperties" - ], + "required":["WorkspaceId"], "members":{ "WorkspaceId":{"shape":"WorkspaceId"}, - "WorkspaceProperties":{"shape":"WorkspaceProperties"} + "WorkspaceProperties":{"shape":"WorkspaceProperties"}, + "DataReplication":{"shape":"DataReplication"} } }, "ModifyWorkspacePropertiesResult":{ @@ -2433,6 +2841,32 @@ "Type":{"shape":"OperatingSystemType"} } }, + "OperatingSystemName":{ + "type":"string", + "enum":[ + "AMAZON_LINUX_2", + "UBUNTU_18_04", + "UBUNTU_20_04", + "UBUNTU_22_04", + "UNKNOWN", + "WINDOWS_10", + "WINDOWS_11", + "WINDOWS_7", + "WINDOWS_SERVER_2016", + "WINDOWS_SERVER_2019", + "WINDOWS_SERVER_2022" + ] + }, + "OperatingSystemNameList":{ + "type":"list", + "member":{"shape":"OperatingSystemName"} + }, + "OperatingSystemNotCompatibleException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "OperatingSystemType":{ "type":"string", "enum":[ @@ -2614,6 +3048,14 @@ "max":25, "min":1 }, + "ResourceInUseException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "ResourceId":{"shape":"NonEmptyString"} + }, + "exception":true + }, "ResourceLimitExceededException":{ "type":"structure", "members":{ @@ -2739,7 +3181,8 @@ "PrimaryWorkspaceId":{"shape":"WorkspaceId"}, "VolumeEncryptionKey":{"shape":"VolumeEncryptionKey"}, "DirectoryId":{"shape":"DirectoryId"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "DataReplication":{"shape":"DataReplication"} } }, "StandbyWorkspaceRelationshipType":{ @@ -2753,6 +3196,18 @@ "type":"list", "member":{"shape":"StandbyWorkspace"} }, + "StandbyWorkspacesProperties":{ + "type":"structure", + "members":{ + "StandbyWorkspaceId":{"shape":"WorkspaceId"}, + "DataReplication":{"shape":"DataReplication"}, + "RecoverySnapshotTime":{"shape":"Timestamp"} + } + }, + "StandbyWorkspacesPropertiesList":{ + "type":"list", + "member":{"shape":"StandbyWorkspacesProperties"} + }, "StartRequest":{ "type":"structure", "members":{ @@ -2803,6 +3258,11 @@ "FailedRequests":{"shape":"FailedStopWorkspaceRequests"} } }, + "String2048":{ + "type":"string", + "max":2048, + "min":0 + }, "SubnetId":{ "type":"string", "max":24, @@ -3000,6 +3460,68 @@ }, "UserVolumeSizeGib":{"type":"integer"}, "VolumeEncryptionKey":{"type":"string"}, + "WorkSpaceApplication":{ + "type":"structure", + "members":{ + "ApplicationId":{"shape":"WorkSpaceApplicationId"}, + "Created":{"shape":"Timestamp"}, + "Description":{"shape":"String2048"}, + "LicenseType":{"shape":"WorkSpaceApplicationLicenseType"}, + "Name":{"shape":"NonEmptyString"}, + "Owner":{"shape":"WorkSpaceApplicationOwner"}, + "State":{"shape":"WorkSpaceApplicationState"}, + "SupportedComputeTypeNames":{"shape":"ComputeList"}, + "SupportedOperatingSystemNames":{"shape":"OperatingSystemNameList"} + } + }, + "WorkSpaceApplicationDeployment":{ + "type":"structure", + "members":{ + "Associations":{"shape":"WorkspaceResourceAssociationList"} + } + }, + "WorkSpaceApplicationId":{ + "type":"string", + "pattern":"^wsa-[0-9a-z]{8,63}$" + }, + "WorkSpaceApplicationIdList":{ + "type":"list", + "member":{"shape":"WorkSpaceApplicationId"}, + "max":25, + "min":1 + }, + "WorkSpaceApplicationLicenseType":{ + "type":"string", + "enum":[ + "LICENSED", + "UNLICENSED" + ] + }, + "WorkSpaceApplicationList":{ + "type":"list", + "member":{"shape":"WorkSpaceApplication"} + }, + "WorkSpaceApplicationOwner":{ + "type":"string", + "pattern":"^\\d{12}|AMAZON$" + }, + "WorkSpaceApplicationState":{ + "type":"string", + "enum":[ + "PENDING", + "ERROR", + "AVAILABLE", + "UNINSTALL_ONLY" + ] + }, + "WorkSpaceAssociatedResourceType":{ + "type":"string", + "enum":["APPLICATION"] + }, + "WorkSpaceAssociatedResourceTypeList":{ + "type":"list", + "member":{"shape":"WorkSpaceAssociatedResourceType"} + }, "Workspace":{ "type":"structure", "members":{ @@ -3018,7 +3540,9 @@ "RootVolumeEncryptionEnabled":{"shape":"BooleanObject"}, "WorkspaceProperties":{"shape":"WorkspaceProperties"}, "ModificationStates":{"shape":"ModificationStateList"}, - "RelatedWorkspaces":{"shape":"RelatedWorkspaces"} + "RelatedWorkspaces":{"shape":"RelatedWorkspaces"}, + "DataReplicationSettings":{"shape":"DataReplicationSettings"}, + "StandbyWorkspacesProperties":{"shape":"StandbyWorkspacesPropertiesList"} } }, "WorkspaceAccessProperties":{ @@ -3260,7 +3784,8 @@ "RootVolumeSizeGib":{"shape":"RootVolumeSizeGib"}, "UserVolumeSizeGib":{"shape":"UserVolumeSizeGib"}, "ComputeTypeName":{"shape":"Compute"}, - "Protocols":{"shape":"ProtocolList"} + "Protocols":{"shape":"ProtocolList"}, + "OperatingSystemName":{"shape":"OperatingSystemName"} } }, "WorkspaceRequest":{ @@ -3287,6 +3812,22 @@ "max":25, "min":1 }, + "WorkspaceResourceAssociation":{ + "type":"structure", + "members":{ + "AssociatedResourceId":{"shape":"NonEmptyString"}, + "AssociatedResourceType":{"shape":"WorkSpaceAssociatedResourceType"}, + "Created":{"shape":"Timestamp"}, + "LastUpdatedTime":{"shape":"Timestamp"}, + "State":{"shape":"AssociationState"}, + "StateReason":{"shape":"AssociationStateReason"}, + "WorkspaceId":{"shape":"WorkspaceId"} + } + }, + "WorkspaceResourceAssociationList":{ + "type":"list", + "member":{"shape":"WorkspaceResourceAssociation"} + }, "WorkspaceState":{ "type":"string", "enum":[ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -4,6 +4,7 @@ "operations": { "AssociateConnectionAlias": "

Associates the specified connection alias with the specified directory to enable cross-Region redirection. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

Before performing this operation, call DescribeConnectionAliases to make sure that the current state of the connection alias is CREATED.

", "AssociateIpGroups": "

Associates the specified IP access control group with the specified directory.

", + "AssociateWorkspaceApplication": "

Associates the specified application to the specified WorkSpace.

", "AuthorizeIpRules": "

Adds one or more rules to the specified IP access control group.

This action gives users permission to access their WorkSpaces from the CIDR address ranges specified in the rules.

", "CopyWorkspaceImage": "

Copies the specified image from the specified Region to the current Region. For more information about copying images, see Copy a Custom WorkSpaces Image.

In the China (Ningxia) Region, you can copy images only within the same Region.

In Amazon Web Services GovCloud (US), to copy images to and from other Regions, contact Amazon Web Services Support.

Before copying a shared image, be sure to verify that it has been shared from the correct Amazon Web Services account. To determine if an image has been shared and to see the ID of the Amazon Web Services account that owns an image, use the DescribeWorkSpaceImages and DescribeWorkspaceImagePermissions API operations.

", "CreateConnectClientAddIn": "

Creates a client-add-in for Amazon Connect within a directory. You can create only one Amazon Connect client add-in within a directory.

This client add-in allows WorkSpaces users to seamlessly connect to Amazon Connect.

", @@ -14,7 +15,7 @@ "CreateUpdatedWorkspaceImage": "

Creates a new updated WorkSpace image based on the specified source image. The new updated WorkSpace image has the latest drivers and other updates required by the Amazon WorkSpaces components.

To determine which WorkSpace images need to be updated with the latest Amazon WorkSpaces requirements, use DescribeWorkspaceImages.

  • Only Windows 10, Windows Server 2016, and Windows Server 2019 WorkSpace images can be programmatically updated at this time.

  • Microsoft Windows updates and other application updates are not included in the update process.

  • The source WorkSpace image is not deleted. You can delete the source image after you've verified your new updated image and created a new bundle.

", "CreateWorkspaceBundle": "

Creates the specified WorkSpace bundle. For more information about creating WorkSpace bundles, see Create a Custom WorkSpaces Image and Bundle.

", "CreateWorkspaceImage": "

Creates a new WorkSpace image from an existing WorkSpace.

", - "CreateWorkspaces": "

Creates one or more WorkSpaces.

This operation is asynchronous and returns before the WorkSpaces are created.

The MANUAL running mode value is only supported by Amazon WorkSpaces Core. Contact your account team to be allow-listed to use this value. For more information, see Amazon WorkSpaces Core.

", + "CreateWorkspaces": "

Creates one or more WorkSpaces.

This operation is asynchronous and returns before the WorkSpaces are created.

  • The MANUAL running mode value is only supported by Amazon WorkSpaces Core. Contact your account team to be allow-listed to use this value. For more information, see Amazon WorkSpaces Core.

  • You don't need to specify the PCOIP protocol for Linux bundles because WSP is the default protocol for those bundles.

", "DeleteClientBranding": "

Deletes customized client branding. Client branding allows you to customize your WorkSpace's client login portal. You can tailor your login portal company logo, the support email address, support link, link to reset password, and a custom message for users trying to sign in.

After you delete your customized client branding, your login portal reverts to the default client branding.

", "DeleteConnectClientAddIn": "

Deletes a client-add-in for Amazon Connect that is configured within a directory.

", "DeleteConnectionAlias": "

Deletes the specified connection alias. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

If you will no longer be using a fully qualified domain name (FQDN) as the registration code for your WorkSpaces users, you must take certain precautions to prevent potential security issues. For more information, see Security Considerations if You Stop Using Cross-Region Redirection.

To delete a connection alias that has been shared, the shared account must first disassociate the connection alias from any directories it has been associated with. Then you must unshare the connection alias from the account it has been shared with. You can delete a connection alias only after it is no longer shared with any accounts or associated with any directories.

", @@ -22,16 +23,22 @@ "DeleteTags": "

Deletes the specified tags from the specified WorkSpaces resource.

", "DeleteWorkspaceBundle": "

Deletes the specified WorkSpace bundle. For more information about deleting WorkSpace bundles, see Delete a Custom WorkSpaces Bundle or Image.

", "DeleteWorkspaceImage": "

Deletes the specified image from your account. To delete an image, you must first delete any bundles that are associated with the image and unshare the image if it is shared with other accounts.

", + "DeployWorkspaceApplications": "

Deploys associated applications to the specified WorkSpace

", "DeregisterWorkspaceDirectory": "

Deregisters the specified directory. This operation is asynchronous and returns before the WorkSpace directory is deregistered. If any WorkSpaces are registered to this directory, you must remove them before you can deregister the directory.

Simple AD and AD Connector are made available to you free of charge to use with WorkSpaces. If there are no WorkSpaces being used with your Simple AD or AD Connector directory for 30 consecutive days, this directory will be automatically deregistered for use with Amazon WorkSpaces, and you will be charged for this directory as per the Directory Service pricing terms.

To delete empty directories, see Delete the Directory for Your WorkSpaces. If you delete your Simple AD or AD Connector directory, you can always create a new one when you want to start using WorkSpaces again.

", "DescribeAccount": "

Retrieves a list that describes the configuration of Bring Your Own License (BYOL) for the specified account.

", "DescribeAccountModifications": "

Retrieves a list that describes modifications to the configuration of Bring Your Own License (BYOL) for the specified account.

", + "DescribeApplicationAssociations": "

Describes the associations between the application and the specified associated resources.

", + "DescribeApplications": "

Describes the specified applications by filtering based on their compute types, license availability, operating systems, and owners.

", + "DescribeBundleAssociations": "

Describes the associations between the applications and the specified bundle.

", "DescribeClientBranding": "

Describes the specified client branding. Client branding allows you to customize the log in page of various device types for your users. You can add your company logo, the support email address, support link, link to reset password, and a custom message for users trying to sign in.

Only device types that have branding information configured will be shown in the response.

", "DescribeClientProperties": "

Retrieves a list that describes one or more specified Amazon WorkSpaces clients.

", "DescribeConnectClientAddIns": "

Retrieves a list of Amazon Connect client add-ins that have been created.

", "DescribeConnectionAliasPermissions": "

Describes the permissions that the owner of a connection alias has granted to another Amazon Web Services account for the specified connection alias. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

", "DescribeConnectionAliases": "

Retrieves a list that describes the connection aliases used for cross-Region redirection. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

", + "DescribeImageAssociations": "

Describes the associations between the applications and the specified image.

", "DescribeIpGroups": "

Describes one or more of your IP access control groups.

", "DescribeTags": "

Describes the specified tags for the specified WorkSpaces resource.

", + "DescribeWorkspaceAssociations": "

Describes the associations betweens applications and the specified WorkSpace.

", "DescribeWorkspaceBundles": "

Retrieves a list that describes the available WorkSpace bundles.

You can filter the results using either bundle ID or owner, but not both.

", "DescribeWorkspaceDirectories": "

Describes the available directories that are registered with Amazon WorkSpaces.

", "DescribeWorkspaceImagePermissions": "

Describes the permissions that the owner of an image has granted to other Amazon Web Services accounts for an image.

", @@ -41,6 +48,7 @@ "DescribeWorkspacesConnectionStatus": "

Describes the connection status of the specified WorkSpaces.

", "DisassociateConnectionAlias": "

Disassociates a connection alias from a directory. Disassociating a connection alias disables cross-Region redirection between two directories in different Regions. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

Before performing this operation, call DescribeConnectionAliases to make sure that the current state of the connection alias is CREATED.

", "DisassociateIpGroups": "

Disassociates the specified IP access control group from the specified directory.

", + "DisassociateWorkspaceApplication": "

Disassociates the specified application from a WorkSpace.

", "ImportClientBranding": "

Imports client branding. Client branding allows you to customize your WorkSpace's client login portal. You can tailor your login portal company logo, the support email address, support link, link to reset password, and a custom message for users trying to sign in.

After you import client branding, the default branding experience for the specified platform type is replaced with the imported experience

  • You must specify at least one platform type when importing client branding.

  • You can import up to 6 MB of data with each request. If your request exceeds this limit, you can import client branding for different platform types using separate requests.

  • In each platform type, the SupportEmail and SupportLink parameters are mutually exclusive. You can specify only one parameter for each platform type, but not both.

  • Imported data can take up to a minute to appear in the WorkSpaces client.

", "ImportWorkspaceImage": "

Imports the specified Windows 10 or 11 Bring Your Own License (BYOL) image into Amazon WorkSpaces. The image must be an already licensed Amazon EC2 image that is in your Amazon Web Services account, and you must own the image. For more information about creating BYOL images, see Bring Your Own Windows Desktop Licenses.

", "ListAvailableManagementCidrRanges": "

Retrieves a list of IP address ranges, specified as IPv4 CIDR blocks, that you can use for the network management interface when you enable Bring Your Own License (BYOL).

This operation can be run only by Amazon Web Services accounts that are enabled for BYOL. If your account isn't enabled for BYOL, you'll receive an AccessDeniedException error.

The management network interface is connected to a secure Amazon WorkSpaces management network. It is used for interactive streaming of the WorkSpace desktop to Amazon WorkSpaces clients, and to allow Amazon WorkSpaces to manage the WorkSpace.

", @@ -142,12 +150,42 @@ "ApplicationList$member": null } }, + "ApplicationAssociatedResourceType": { + "base": null, + "refs": { + "ApplicationAssociatedResourceTypeList$member": null, + "ApplicationResourceAssociation$AssociatedResourceType": "

The resource type of the associated resource.

" + } + }, + "ApplicationAssociatedResourceTypeList": { + "base": null, + "refs": { + "DescribeApplicationAssociationsRequest$AssociatedResourceTypes": "

The resource type of the associated resources.

" + } + }, "ApplicationList": { "base": null, "refs": { "ImportWorkspaceImageRequest$Applications": "

If specified, the version of Microsoft Office to subscribe to. Valid only for Windows 10 and 11 BYOL images. For more information about subscribing to Office for BYOL images, see Bring Your Own Windows Desktop Licenses.

  • Although this parameter is an array, only one item is allowed at this time.

  • Windows 11 only supports Microsoft_Office_2019.

" } }, + "ApplicationNotSupportedException": { + "base": "

The specified application is not supported.

", + "refs": { + } + }, + "ApplicationResourceAssociation": { + "base": "

Describes the association between an application and an application resource.

", + "refs": { + "ApplicationResourceAssociationList$member": null + } + }, + "ApplicationResourceAssociationList": { + "base": null, + "refs": { + "DescribeApplicationAssociationsResult$Associations": "

List of associations and information about them.

" + } + }, "AssociateConnectionAliasRequest": { "base": null, "refs": { @@ -168,6 +206,40 @@ "refs": { } }, + "AssociateWorkspaceApplicationRequest": { + "base": null, + "refs": { + } + }, + "AssociateWorkspaceApplicationResult": { + "base": null, + "refs": { + } + }, + "AssociationErrorCode": { + "base": null, + "refs": { + "AssociationStateReason$ErrorCode": "

The error code of the association deployment failure.

" + } + }, + "AssociationState": { + "base": null, + "refs": { + "ApplicationResourceAssociation$State": "

The status of the application resource association.

", + "BundleResourceAssociation$State": "

The status of the bundle resource association.

", + "ImageResourceAssociation$State": "

The status of the image resource association.

", + "WorkspaceResourceAssociation$State": "

The status of the WorkSpace resource association.

" + } + }, + "AssociationStateReason": { + "base": "

Indicates the reason that the association deployment failed, including the error code and error message.

", + "refs": { + "ApplicationResourceAssociation$StateReason": "

The reason the association deployment failed.

", + "BundleResourceAssociation$StateReason": "

The reason the association deployment failed.

", + "ImageResourceAssociation$StateReason": "

The reason the association deployment failed.

", + "WorkspaceResourceAssociation$StateReason": "

The reason the association deployment failed.

" + } + }, "AssociationStatus": { "base": null, "refs": { @@ -204,6 +276,7 @@ "DefaultWorkspaceCreationProperties$EnableInternetAccess": "

Specifies whether to automatically assign an Elastic public IP address to WorkSpaces in this directory by default. If enabled, the Elastic public IP address allows outbound internet access from your WorkSpaces when you’re using an internet gateway in the Amazon VPC in which your WorkSpaces are located. If you're using a Network Address Translation (NAT) gateway for outbound internet access from your VPC, or if your WorkSpaces are in public subnets and you manually assign them Elastic IP addresses, you should disable this setting. This setting applies to new WorkSpaces that you launch or to existing WorkSpaces that you rebuild. For more information, see Configure a VPC for Amazon WorkSpaces.

", "DefaultWorkspaceCreationProperties$UserEnabledAsLocalAdministrator": "

Specifies whether WorkSpace users are local administrators on their WorkSpaces.

", "DefaultWorkspaceCreationProperties$EnableMaintenanceMode": "

Specifies whether maintenance mode is enabled for WorkSpaces. For more information, see WorkSpace Maintenance.

", + "DeployWorkspaceApplicationsRequest$Force": "

Indicates whether the force flag is applied for the specified WorkSpace. When the force flag is enabled, it allows previously failed deployments to be retried.

", "RegisterWorkspaceDirectoryRequest$EnableWorkDocs": "

Indicates whether Amazon WorkDocs is enabled or disabled. If you have enabled this parameter and WorkDocs is not available in the Region, you will receive an OperationNotSupportedException error. Set EnableWorkDocs to disabled, and try again.

", "RegisterWorkspaceDirectoryRequest$EnableSelfService": "

Indicates whether self-service capabilities are enabled or disabled.

", "UpdateResult$UpdateAvailable": "

Indicates whether updated drivers or other components are available for the specified WorkSpace image.

", @@ -218,11 +291,26 @@ "WorkspaceRequest$RootVolumeEncryptionEnabled": "

Indicates whether the data stored on the root volume is encrypted.

" } }, + "BundleAssociatedResourceType": { + "base": null, + "refs": { + "BundleAssociatedResourceTypeList$member": null, + "BundleResourceAssociation$AssociatedResourceType": "

The resource type of the associated resources.

" + } + }, + "BundleAssociatedResourceTypeList": { + "base": null, + "refs": { + "DescribeBundleAssociationsRequest$AssociatedResourceTypes": "

The resource types of the associated resource.

" + } + }, "BundleId": { "base": null, "refs": { "BundleIdList$member": null, + "BundleResourceAssociation$BundleId": "

The identifier of the bundle.

", "DeleteWorkspaceBundleRequest$BundleId": "

The identifier of the bundle.

", + "DescribeBundleAssociationsRequest$BundleId": "

The identifier of the bundle.

", "DescribeWorkspacesRequest$BundleId": "

The identifier of the bundle. All WorkSpaces that are created from this bundle are retrieved. You cannot combine this parameter with any other filter.

", "MigrateWorkspaceRequest$BundleId": "

The identifier of the target bundle type to migrate the WorkSpace to.

", "UpdateWorkspaceBundleRequest$BundleId": "

The identifier of the bundle.

", @@ -250,6 +338,18 @@ "WorkspaceBundle$Owner": "

The owner of the bundle. This is the account identifier of the owner, or AMAZON if the bundle is provided by Amazon Web Services.

" } }, + "BundleResourceAssociation": { + "base": "

Describes the association between an application and a bundle resource.

", + "refs": { + "BundleResourceAssociationList$member": null + } + }, + "BundleResourceAssociationList": { + "base": null, + "refs": { + "DescribeBundleAssociationsResult$Associations": "

List of information about the specified associations.

" + } + }, "BundleType": { "base": null, "refs": { @@ -347,10 +447,23 @@ "Compute": { "base": null, "refs": { + "ComputeList$member": null, "ComputeType$Name": "

The compute type.

", "WorkspaceProperties$ComputeTypeName": "

The compute type. For more information, see Amazon WorkSpaces Bundles.

" } }, + "ComputeList": { + "base": null, + "refs": { + "DescribeApplicationsRequest$ComputeTypeNames": "

The compute types supported by the applications.

", + "WorkSpaceApplication$SupportedComputeTypeNames": "

The supported compute types of the WorkSpace application.

" + } + }, + "ComputeNotCompatibleException": { + "base": "

The compute type of the WorkSpace is not compatible with the application.

", + "refs": { + } + }, "ComputeType": { "base": "

Describes the compute type of the bundle.

", "refs": { @@ -559,6 +672,21 @@ "refs": { } }, + "DataReplication": { + "base": null, + "refs": { + "DataReplicationSettings$DataReplication": "

Indicates whether data replication is enabled, and if enabled, the type of data replication.

", + "ModifyWorkspacePropertiesRequest$DataReplication": "

Indicates the data replication status.

", + "StandbyWorkspace$DataReplication": "

Indicates whether data replication is enabled, and if enabled, the type of data replication.

", + "StandbyWorkspacesProperties$DataReplication": "

Indicates whether data replication is enabled, and if enabled, the type of data replication.

" + } + }, + "DataReplicationSettings": { + "base": "

Describes the data replication settings.

", + "refs": { + "Workspace$DataReplicationSettings": "

Indicates the settings of the data replication.

" + } + }, "DedicatedTenancyCidrRangeList": { "base": null, "refs": { @@ -731,6 +859,16 @@ "refs": { } }, + "DeployWorkspaceApplicationsRequest": { + "base": null, + "refs": { + } + }, + "DeployWorkspaceApplicationsResult": { + "base": null, + "refs": { + } + }, "DeregisterWorkspaceDirectoryRequest": { "base": null, "refs": { @@ -761,6 +899,36 @@ "refs": { } }, + "DescribeApplicationAssociationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeApplicationAssociationsResult": { + "base": null, + "refs": { + } + }, + "DescribeApplicationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeApplicationsResult": { + "base": null, + "refs": { + } + }, + "DescribeBundleAssociationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeBundleAssociationsResult": { + "base": null, + "refs": { + } + }, "DescribeClientBrandingRequest": { "base": null, "refs": { @@ -811,6 +979,16 @@ "refs": { } }, + "DescribeImageAssociationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeImageAssociationsResult": { + "base": null, + "refs": { + } + }, "DescribeIpGroupsRequest": { "base": null, "refs": { @@ -831,6 +1009,16 @@ "refs": { } }, + "DescribeWorkspaceAssociationsRequest": { + "base": null, + "refs": { + } + }, + "DescribeWorkspaceAssociationsResult": { + "base": null, + "refs": { + } + }, "DescribeWorkspaceBundlesRequest": { "base": null, "refs": { @@ -981,6 +1169,16 @@ "refs": { } }, + "DisassociateWorkspaceApplicationRequest": { + "base": null, + "refs": { + } + }, + "DisassociateWorkspaceApplicationResult": { + "base": null, + "refs": { + } + }, "DnsIpAddresses": { "base": null, "refs": { @@ -994,7 +1192,7 @@ } }, "ErrorDetails": { - "base": "

Provides in-depth details about the error. These details include the possible causes of the errors and troubleshooting information.

", + "base": "

Describes in-depth details about the error. These details include the possible causes of the error and troubleshooting information.

", "refs": { "ErrorDetailsList$member": null } @@ -1002,7 +1200,7 @@ "ErrorDetailsList": { "base": null, "refs": { - "WorkspaceImage$ErrorDetails": "

The details of the error returned for the image.

" + "WorkspaceImage$ErrorDetails": "

Additional details of the error returned for the image, including the possible causes of the errors and troubleshooting information.

" } }, "ErrorType": { @@ -1029,6 +1227,7 @@ "ResourceAlreadyExistsException$message": null, "ResourceAssociatedException$message": null, "ResourceCreationFailedException$message": null, + "ResourceInUseException$message": null, "ResourceLimitExceededException$message": "

The exception error message.

", "ResourceNotFoundException$message": "

The resource could not be found.

", "ResourceUnavailableException$message": "

The exception error message.

", @@ -1101,6 +1300,19 @@ "FailedTerminateWorkspaceRequests$member": null } }, + "ImageAssociatedResourceType": { + "base": null, + "refs": { + "ImageAssociatedResourceTypeList$member": null, + "ImageResourceAssociation$AssociatedResourceType": "

The resource type of the associated resources.

" + } + }, + "ImageAssociatedResourceTypeList": { + "base": null, + "refs": { + "DescribeImageAssociationsRequest$AssociatedResourceTypes": "

The resource types of the associated resource.

" + } + }, "ImagePermission": { "base": "

Describes the Amazon Web Services accounts that have been granted permission to use a shared image. For more information about sharing images, see Share or Unshare a Custom WorkSpaces Image.

", "refs": { @@ -1113,6 +1325,18 @@ "DescribeWorkspaceImagePermissionsResult$ImagePermissions": "

The identifiers of the Amazon Web Services accounts that the image has been shared with.

" } }, + "ImageResourceAssociation": { + "base": "

Describes the association between an application and an image resource.

", + "refs": { + "ImageResourceAssociationList$member": null + } + }, + "ImageResourceAssociationList": { + "base": null, + "refs": { + "DescribeImageAssociationsResult$Associations": "

List of information about the specified associations.

" + } + }, "ImageType": { "base": null, "refs": { @@ -1139,6 +1363,11 @@ "refs": { } }, + "IncompatibleApplicationsException": { + "base": "

The specified application is not compatible with the resource.

", + "refs": { + } + }, "InvalidParameterValuesException": { "base": "

One or more parameter values are not valid.

", "refs": { @@ -1259,6 +1488,8 @@ "Limit": { "base": null, "refs": { + "DescribeApplicationAssociationsRequest$MaxResults": "

The maximum number of associations to return.

", + "DescribeApplicationsRequest$MaxResults": "

The maximum number of applications to return.

", "DescribeConnectClientAddInsRequest$MaxResults": "

The maximum number of items to return.

", "DescribeConnectionAliasPermissionsRequest$MaxResults": "

The maximum number of results to return.

", "DescribeConnectionAliasesRequest$Limit": "

The maximum number of connection aliases to return.

", @@ -1433,22 +1664,28 @@ "NonEmptyString": { "base": null, "refs": { + "ApplicationResourceAssociation$AssociatedResourceId": "

The identifier of the associated resource.

", "AssociateConnectionAliasRequest$ResourceId": "

The identifier of the directory to associate the connection alias with.

", + "BundleResourceAssociation$AssociatedResourceId": "

The identifier of the associated resource.

", "ClientPropertiesResult$ResourceId": "

The resource identifier, in the form of a directory ID.

", "ConnectionAliasAssociation$ResourceId": "

The identifier of the directory associated with a connection alias.

", "CreateTagsRequest$ResourceId": "

The identifier of the WorkSpaces resource. The supported resource types are WorkSpaces, registered directories, images, custom bundles, IP access control groups, and connection aliases.

", "DeleteTagsRequest$ResourceId": "

The identifier of the WorkSpaces resource. The supported resource types are WorkSpaces, registered directories, images, custom bundles, IP access control groups, and connection aliases.

", "DescribeConnectionAliasesRequest$ResourceId": "

The identifier of the directory associated with the connection alias.

", "DescribeTagsRequest$ResourceId": "

The identifier of the WorkSpaces resource. The supported resource types are WorkSpaces, registered directories, images, custom bundles, IP access control groups, and connection aliases.

", + "ImageResourceAssociation$AssociatedResourceId": "

The identifier of the associated resource.

", "ModifyClientPropertiesRequest$ResourceId": "

The resource identifiers, in the form of directory IDs.

", "ResourceIdList$member": null, + "ResourceInUseException$ResourceId": "

The ID of the resource that is in use.

", "ResourceNotFoundException$ResourceId": "

The ID of the resource that could not be found.

", "ResourceUnavailableException$ResourceId": "

The identifier of the resource that is not available.

", "RootStorage$Capacity": "

The size of the root volume.

", "SamlProperties$RelayStateParameterName": "

The relay state parameter name supported by the SAML 2.0 identity provider (IdP). When the end user is redirected to the user access URL from the WorkSpaces client application, this relay state parameter name is appended as a query parameter to the URL along with the relay state endpoint to return the user to the client application session.

To use SAML 2.0 authentication with WorkSpaces, the IdP must support IdP-initiated deep linking for the relay state URL. Consult your IdP documentation for more information.

", "TagKeyList$member": null, "UserStorage$Capacity": "

The size of the user volume.

", - "WorkspaceBundle$Name": "

The name of the bundle.

" + "WorkSpaceApplication$Name": "

The name of the WorkSpace application.

", + "WorkspaceBundle$Name": "

The name of the bundle.

", + "WorkspaceResourceAssociation$AssociatedResourceId": "

The identifier of the associated resource.

" } }, "OperatingSystem": { @@ -1458,6 +1695,25 @@ "WorkspaceImage$OperatingSystem": "

The operating system that the image is running.

" } }, + "OperatingSystemName": { + "base": null, + "refs": { + "OperatingSystemNameList$member": null, + "WorkspaceProperties$OperatingSystemName": "

The name of the operating system.

" + } + }, + "OperatingSystemNameList": { + "base": null, + "refs": { + "DescribeApplicationsRequest$OperatingSystemNames": "

The operating systems supported by the applications.

", + "WorkSpaceApplication$SupportedOperatingSystemNames": "

The supported operating systems of the WorkSpace application.

" + } + }, + "OperatingSystemNotCompatibleException": { + "base": "

The operating system of the WorkSpace is not compatible with the application.

", + "refs": { + } + }, "OperatingSystemType": { "base": null, "refs": { @@ -1479,6 +1735,10 @@ "refs": { "DescribeAccountModificationsRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", "DescribeAccountModificationsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "DescribeApplicationAssociationsRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", + "DescribeApplicationAssociationsResult$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", + "DescribeApplicationsRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", + "DescribeApplicationsResult$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", "DescribeConnectClientAddInsRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", "DescribeConnectClientAddInsResult$NextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeConnectionAliasPermissionsRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", @@ -1639,6 +1899,11 @@ "DescribeClientPropertiesRequest$ResourceIds": "

The resource identifier, in the form of directory IDs.

" } }, + "ResourceInUseException": { + "base": "

The specified resource is currently in use.

", + "refs": { + } + }, "ResourceLimitExceededException": { "base": "

Your resource limits have been exceeded.

", "refs": { @@ -1765,6 +2030,18 @@ "CreateStandbyWorkspacesRequest$StandbyWorkspaces": "

Information about the standby WorkSpace to be created.

" } }, + "StandbyWorkspacesProperties": { + "base": "

Describes the properties of the related standby WorkSpaces.

", + "refs": { + "StandbyWorkspacesPropertiesList$member": null + } + }, + "StandbyWorkspacesPropertiesList": { + "base": null, + "refs": { + "Workspace$StandbyWorkspacesProperties": "

The properties of the standby WorkSpace

" + } + }, "StartRequest": { "base": "

Information used to start a WorkSpace.

", "refs": { @@ -1809,6 +2086,13 @@ "refs": { } }, + "String2048": { + "base": null, + "refs": { + "AssociationStateReason$ErrorMessage": "

The error message of the association deployment failure.

", + "WorkSpaceApplication$Description": "

The description of the WorkSpace application.

" + } + }, "SubnetId": { "base": null, "refs": { @@ -1903,13 +2187,24 @@ "base": null, "refs": { "AccountModification$StartTime": "

The timestamp when the modification of the BYOL configuration was started.

", + "ApplicationResourceAssociation$Created": "

The time the association was created.

", + "ApplicationResourceAssociation$LastUpdatedTime": "

The time the association status was last updated.

", + "BundleResourceAssociation$Created": "

The time the association is created.

", + "BundleResourceAssociation$LastUpdatedTime": "

The time the association status was last updated.

", "CreateWorkspaceImageResult$Created": "

The date when the image was created.

", + "DataReplicationSettings$RecoverySnapshotTime": "

The date and time at which the last successful snapshot was taken of the primary WorkSpace used for replicating data.

", + "ImageResourceAssociation$Created": "

The time the association is created.

", + "ImageResourceAssociation$LastUpdatedTime": "

The time the association status was last updated.

", "Snapshot$SnapshotTime": "

The time when the snapshot was created.

", + "StandbyWorkspacesProperties$RecoverySnapshotTime": "

The date and time at which the last successful snapshot was taken of the primary WorkSpace used for replicating data.

", + "WorkSpaceApplication$Created": "

The time the application is created.

", "WorkspaceBundle$LastUpdatedTime": "

The last time that the bundle was updated.

", "WorkspaceBundle$CreationTime": "

The time when the bundle was created.

", "WorkspaceConnectionStatus$ConnectionStateCheckTimestamp": "

The timestamp of the connection status check.

", "WorkspaceConnectionStatus$LastKnownUserConnectionTimestamp": "

The timestamp of the last known user connection.

", - "WorkspaceImage$Created": "

The date when the image was created. If the image has been shared, the Amazon Web Services account that the image has been shared with sees the original creation date of the image.

" + "WorkspaceImage$Created": "

The date when the image was created. If the image has been shared, the Amazon Web Services account that the image has been shared with sees the original creation date of the image.

", + "WorkspaceResourceAssociation$Created": "

The time the association is created.

", + "WorkspaceResourceAssociation$LastUpdatedTime": "

The time the association status was last updated.

" } }, "UnsupportedNetworkConfigurationException": { @@ -2015,6 +2310,74 @@ "WorkspaceRequest$VolumeEncryptionKey": "

The ARN of the symmetric KMS key used to encrypt data stored on your WorkSpace. Amazon WorkSpaces does not support asymmetric KMS keys.

" } }, + "WorkSpaceApplication": { + "base": "

Describes the WorkSpace application.

", + "refs": { + "WorkSpaceApplicationList$member": null + } + }, + "WorkSpaceApplicationDeployment": { + "base": "

Describes the WorkSpace application deployment.

", + "refs": { + "DeployWorkspaceApplicationsResult$Deployment": "

The list of deployed associations and information about them.

" + } + }, + "WorkSpaceApplicationId": { + "base": null, + "refs": { + "ApplicationResourceAssociation$ApplicationId": "

The identifier of the application.

", + "AssociateWorkspaceApplicationRequest$ApplicationId": "

The identifier of the application.

", + "DescribeApplicationAssociationsRequest$ApplicationId": "

The identifier of the specified application.

", + "DisassociateWorkspaceApplicationRequest$ApplicationId": "

The identifier of the application.

", + "WorkSpaceApplication$ApplicationId": "

The identifier of the application.

", + "WorkSpaceApplicationIdList$member": null + } + }, + "WorkSpaceApplicationIdList": { + "base": null, + "refs": { + "DescribeApplicationsRequest$ApplicationIds": "

The identifiers of one or more applications.

" + } + }, + "WorkSpaceApplicationLicenseType": { + "base": null, + "refs": { + "DescribeApplicationsRequest$LicenseType": "

The license availability for the applications.

", + "WorkSpaceApplication$LicenseType": "

The license availability for the applications.

" + } + }, + "WorkSpaceApplicationList": { + "base": null, + "refs": { + "DescribeApplicationsResult$Applications": "

List of information about the specified applications.

" + } + }, + "WorkSpaceApplicationOwner": { + "base": null, + "refs": { + "DescribeApplicationsRequest$Owner": "

The owner of the applications.

", + "WorkSpaceApplication$Owner": "

The owner of the WorkSpace application.

" + } + }, + "WorkSpaceApplicationState": { + "base": null, + "refs": { + "WorkSpaceApplication$State": "

The status of WorkSpace application.

" + } + }, + "WorkSpaceAssociatedResourceType": { + "base": null, + "refs": { + "WorkSpaceAssociatedResourceTypeList$member": null, + "WorkspaceResourceAssociation$AssociatedResourceType": "

The resource types of the associated resource.

" + } + }, + "WorkSpaceAssociatedResourceTypeList": { + "base": null, + "refs": { + "DescribeWorkspaceAssociationsRequest$AssociatedResourceTypes": "

The resource types of the associated resources.

" + } + }, "Workspace": { "base": "

Describes a WorkSpace.

", "refs": { @@ -2100,8 +2463,12 @@ "WorkspaceId": { "base": null, "refs": { + "AssociateWorkspaceApplicationRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "CreateWorkspaceImageRequest$WorkspaceId": "

The identifier of the source WorkSpace

", + "DeployWorkspaceApplicationsRequest$WorkspaceId": "

The identifier of the WorkSpace.

", + "DescribeWorkspaceAssociationsRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "DescribeWorkspaceSnapshotsRequest$WorkspaceId": "

The identifier of the WorkSpace.

", + "DisassociateWorkspaceApplicationRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "FailedWorkspaceChangeRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "MigrateWorkspaceRequest$SourceWorkspaceId": "

The identifier of the WorkSpace to migrate from.

", "MigrateWorkspaceResult$SourceWorkspaceId": "

The original identifier of the WorkSpace that is being migrated.

", @@ -2114,12 +2481,14 @@ "RelatedWorkspaceProperties$WorkspaceId": "

The identifier of the related WorkSpace.

", "RestoreWorkspaceRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "StandbyWorkspace$PrimaryWorkspaceId": "

The identifier of the standby WorkSpace.

", + "StandbyWorkspacesProperties$StandbyWorkspaceId": "

The identifier of the standby WorkSpace

", "StartRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "StopRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "TerminateRequest$WorkspaceId": "

The identifier of the WorkSpace.

", "Workspace$WorkspaceId": "

The identifier of the WorkSpace.

", "WorkspaceConnectionStatus$WorkspaceId": "

The identifier of the WorkSpace.

", - "WorkspaceIdList$member": null + "WorkspaceIdList$member": null, + "WorkspaceResourceAssociation$WorkspaceId": "

The identifier of the WorkSpace.

" } }, "WorkspaceIdList": { @@ -2168,8 +2537,10 @@ "CreateWorkspaceBundleRequest$ImageId": "

The identifier of the image that is used to create the bundle.

", "CreateWorkspaceImageResult$ImageId": "

The identifier of the new WorkSpace image.

", "DeleteWorkspaceImageRequest$ImageId": "

The identifier of the image.

", + "DescribeImageAssociationsRequest$ImageId": "

The identifier of the image.

", "DescribeWorkspaceImagePermissionsRequest$ImageId": "

The identifier of the image.

", "DescribeWorkspaceImagePermissionsResult$ImageId": "

The identifier of the image.

", + "ImageResourceAssociation$ImageId": "

The identifier of the image.

", "ImportWorkspaceImageResult$ImageId": "

The identifier of the WorkSpace image.

", "UpdateWorkspaceBundleRequest$ImageId": "

The identifier of the image.

", "UpdateWorkspaceImagePermissionRequest$ImageId": "

The identifier of the image.

", @@ -2249,6 +2620,21 @@ "CreateWorkspacesRequest$Workspaces": "

The WorkSpaces to create. You can specify up to 25 WorkSpaces.

" } }, + "WorkspaceResourceAssociation": { + "base": "

Describes the association between an application and a WorkSpace resource.

", + "refs": { + "AssociateWorkspaceApplicationResult$Association": "

Information about the association between the specified WorkSpace and the specified application.

", + "DisassociateWorkspaceApplicationResult$Association": "

Information about the targeted association.

", + "WorkspaceResourceAssociationList$member": null + } + }, + "WorkspaceResourceAssociationList": { + "base": null, + "refs": { + "DescribeWorkspaceAssociationsResult$Associations": "

List of information about the specified associations.

", + "WorkSpaceApplicationDeployment$Associations": "

The associations between the applications and the associated resources.

" + } + }, "WorkspaceState": { "base": null, "refs": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/endpoint-rule-set-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces/2015-04-08/paginators-1.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces/2015-04-08/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -1,5 +1,15 @@ { "pagination": { + "DescribeApplicationAssociations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, + "DescribeApplications": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "DescribeWorkspaceBundles": { "input_token": "NextToken", "output_token": "NextToken", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/api-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1140 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-08-22", + "endpointPrefix":"thinclient", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"Amazon WorkSpaces Thin Client", + "serviceId":"WorkSpaces Thin Client", + "signatureVersion":"v4", + "signingName":"thinclient", + "uid":"workspaces-thin-client-2023-08-22" + }, + "operations":{ + "CreateEnvironment":{ + "name":"CreateEnvironment", + "http":{ + "method":"POST", + "requestUri":"/environments", + "responseCode":201 + }, + "input":{"shape":"CreateEnvironmentRequest"}, + "output":{"shape":"CreateEnvironmentResponse"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "DeleteDevice":{ + "name":"DeleteDevice", + "http":{ + "method":"DELETE", + "requestUri":"/devices/{id}", + "responseCode":204 + }, + "input":{"shape":"DeleteDeviceRequest"}, + "output":{"shape":"DeleteDeviceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + }, + "DeleteEnvironment":{ + "name":"DeleteEnvironment", + "http":{ + "method":"DELETE", + "requestUri":"/environments/{id}", + "responseCode":204 + }, + "input":{"shape":"DeleteEnvironmentRequest"}, + "output":{"shape":"DeleteEnvironmentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + }, + "DeregisterDevice":{ + "name":"DeregisterDevice", + "http":{ + "method":"POST", + "requestUri":"/deregister-device/{id}", + "responseCode":202 + }, + "input":{"shape":"DeregisterDeviceRequest"}, + "output":{"shape":"DeregisterDeviceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + }, + "GetDevice":{ + "name":"GetDevice", + "http":{ + "method":"GET", + "requestUri":"/devices/{id}", + "responseCode":200 + }, + "input":{"shape":"GetDeviceRequest"}, + "output":{"shape":"GetDeviceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "GetEnvironment":{ + "name":"GetEnvironment", + "http":{ + "method":"GET", + "requestUri":"/environments/{id}", + "responseCode":200 + }, + "input":{"shape":"GetEnvironmentRequest"}, + "output":{"shape":"GetEnvironmentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "GetSoftwareSet":{ + "name":"GetSoftwareSet", + "http":{ + "method":"GET", + "requestUri":"/softwaresets/{id}", + "responseCode":200 + }, + "input":{"shape":"GetSoftwareSetRequest"}, + "output":{"shape":"GetSoftwareSetResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "ListDevices":{ + "name":"ListDevices", + "http":{ + "method":"GET", + "requestUri":"/devices", + "responseCode":200 + }, + "input":{"shape":"ListDevicesRequest"}, + "output":{"shape":"ListDevicesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "ListEnvironments":{ + "name":"ListEnvironments", + "http":{ + "method":"GET", + "requestUri":"/environments", + "responseCode":200 + }, + "input":{"shape":"ListEnvironmentsRequest"}, + "output":{"shape":"ListEnvironmentsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "ListSoftwareSets":{ + "name":"ListSoftwareSets", + "http":{ + "method":"GET", + "requestUri":"/softwaresets", + "responseCode":200 + }, + "input":{"shape":"ListSoftwareSetsRequest"}, + "output":{"shape":"ListSoftwareSetsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"} + ], + "endpoint":{"hostPrefix":"api."} + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServiceException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + }, + "UpdateDevice":{ + "name":"UpdateDevice", + "http":{ + "method":"PATCH", + "requestUri":"/devices/{id}", + "responseCode":200 + }, + "input":{"shape":"UpdateDeviceRequest"}, + "output":{"shape":"UpdateDeviceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + }, + "UpdateEnvironment":{ + "name":"UpdateEnvironment", + "http":{ + "method":"PATCH", + "requestUri":"/environments/{id}", + "responseCode":200 + }, + "input":{"shape":"UpdateEnvironmentRequest"}, + "output":{"shape":"UpdateEnvironmentResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + }, + "UpdateSoftwareSet":{ + "name":"UpdateSoftwareSet", + "http":{ + "method":"PATCH", + "requestUri":"/softwaresets/{id}", + "responseCode":204 + }, + "input":{"shape":"UpdateSoftwareSetRequest"}, + "output":{"shape":"UpdateSoftwareSetResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ], + "endpoint":{"hostPrefix":"api."}, + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ActivationCode":{ + "type":"string", + "pattern":"[a-z]{2}[a-z0-9]{6}" + }, + "ApplyTimeOf":{ + "type":"string", + "enum":[ + "UTC", + "DEVICE" + ] + }, + "Arn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[0-9]{0,12}:[a-zA-Z0-9\\-\\/\\._]+" + }, + "ClientToken":{ + "type":"string", + "max":512, + "min":1 + }, + "ConflictException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "resourceId":{"shape":"ResourceId"}, + "resourceType":{"shape":"ResourceType"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CreateEnvironmentRequest":{ + "type":"structure", + "required":["desktopArn"], + "members":{ + "name":{"shape":"EnvironmentName"}, + "desktopArn":{"shape":"Arn"}, + "desktopEndpoint":{"shape":"DesktopEndpoint"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "maintenanceWindow":{"shape":"MaintenanceWindow"}, + "softwareSetUpdateMode":{"shape":"SoftwareSetUpdateMode"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetId"}, + "kmsKeyArn":{"shape":"KmsKeyArn"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "tags":{"shape":"TagsMap"} + } + }, + "CreateEnvironmentResponse":{ + "type":"structure", + "members":{ + "environment":{"shape":"EnvironmentSummary"} + } + }, + "DayOfWeek":{ + "type":"string", + "enum":[ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ] + }, + "DayOfWeekList":{ + "type":"list", + "member":{"shape":"DayOfWeek"}, + "max":7, + "min":1 + }, + "DeleteDeviceRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"DeviceId", + "location":"uri", + "locationName":"id" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + } + } + }, + "DeleteDeviceResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteEnvironmentRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"id" + }, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"clientToken" + } + } + }, + "DeleteEnvironmentResponse":{ + "type":"structure", + "members":{ + } + }, + "DeregisterDeviceRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"DeviceId", + "location":"uri", + "locationName":"id" + }, + "targetDeviceStatus":{"shape":"TargetDeviceStatus"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "DeregisterDeviceResponse":{ + "type":"structure", + "members":{ + } + }, + "DesktopEndpoint":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"(https:\\/\\/)[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,32}(:[0-9]{1,5})?(\\/.*)?", + "sensitive":true + }, + "DesktopType":{ + "type":"string", + "enum":[ + "workspaces", + "appstream", + "workspaces-web" + ] + }, + "Device":{ + "type":"structure", + "members":{ + "id":{"shape":"DeviceId"}, + "serialNumber":{"shape":"String"}, + "name":{"shape":"DeviceName"}, + "model":{"shape":"String"}, + "environmentId":{"shape":"EnvironmentId"}, + "status":{"shape":"DeviceStatus"}, + "currentSoftwareSetId":{"shape":"SoftwareSetId"}, + "currentSoftwareSetVersion":{"shape":"String"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetId"}, + "pendingSoftwareSetId":{"shape":"SoftwareSetId"}, + "pendingSoftwareSetVersion":{"shape":"String"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "softwareSetComplianceStatus":{"shape":"DeviceSoftwareSetComplianceStatus"}, + "softwareSetUpdateStatus":{"shape":"SoftwareSetUpdateStatus"}, + "lastConnectedAt":{"shape":"Timestamp"}, + "lastPostureAt":{"shape":"Timestamp"}, + "createdAt":{"shape":"Timestamp"}, + "updatedAt":{"shape":"Timestamp"}, + "arn":{"shape":"Arn"}, + "kmsKeyArn":{"shape":"KmsKeyArn"}, + "tags":{"shape":"EmbeddedTag"} + } + }, + "DeviceId":{ + "type":"string", + "pattern":"[a-zA-Z0-9]{24}" + }, + "DeviceList":{ + "type":"list", + "member":{"shape":"DeviceSummary"} + }, + "DeviceName":{ + "type":"string", + "pattern":"[0-9\\p{IsAlphabetic}+:,.@'\" -]{1,64}", + "sensitive":true + }, + "DeviceSoftwareSetComplianceStatus":{ + "type":"string", + "enum":[ + "NONE", + "COMPLIANT", + "NOT_COMPLIANT" + ] + }, + "DeviceStatus":{ + "type":"string", + "enum":[ + "REGISTERED", + "DEREGISTERING", + "DEREGISTERED", + "ARCHIVED" + ] + }, + "DeviceSummary":{ + "type":"structure", + "members":{ + "id":{"shape":"DeviceId"}, + "serialNumber":{"shape":"String"}, + "name":{"shape":"DeviceName"}, + "model":{"shape":"String"}, + "environmentId":{"shape":"EnvironmentId"}, + "status":{"shape":"DeviceStatus"}, + "currentSoftwareSetId":{"shape":"SoftwareSetId"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetId"}, + "pendingSoftwareSetId":{"shape":"SoftwareSetId"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "lastConnectedAt":{"shape":"Timestamp"}, + "lastPostureAt":{"shape":"Timestamp"}, + "createdAt":{"shape":"Timestamp"}, + "updatedAt":{"shape":"Timestamp"}, + "arn":{"shape":"Arn"}, + "tags":{"shape":"EmbeddedTag"} + } + }, + "EmbeddedTag":{ + "type":"structure", + "members":{ + "resourceArn":{"shape":"String"}, + "internalId":{"shape":"String"} + }, + "sensitive":true + }, + "Environment":{ + "type":"structure", + "members":{ + "id":{"shape":"EnvironmentId"}, + "name":{"shape":"EnvironmentName"}, + "desktopArn":{"shape":"Arn"}, + "desktopEndpoint":{"shape":"DesktopEndpoint"}, + "desktopType":{"shape":"DesktopType"}, + "activationCode":{"shape":"ActivationCode"}, + "registeredDevicesCount":{"shape":"Integer"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "maintenanceWindow":{"shape":"MaintenanceWindow"}, + "softwareSetUpdateMode":{"shape":"SoftwareSetUpdateMode"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetId"}, + "pendingSoftwareSetId":{"shape":"SoftwareSetId"}, + "pendingSoftwareSetVersion":{"shape":"String"}, + "softwareSetComplianceStatus":{"shape":"EnvironmentSoftwareSetComplianceStatus"}, + "createdAt":{"shape":"Timestamp"}, + "updatedAt":{"shape":"Timestamp"}, + "arn":{"shape":"Arn"}, + "kmsKeyArn":{"shape":"KmsKeyArn"}, + "tags":{"shape":"EmbeddedTag"} + } + }, + "EnvironmentId":{ + "type":"string", + "pattern":"[a-z0-9]{9}" + }, + "EnvironmentList":{ + "type":"list", + "member":{"shape":"EnvironmentSummary"} + }, + "EnvironmentName":{ + "type":"string", + "pattern":"[0-9\\p{IsAlphabetic}+:,.@'\" -][0-9\\p{IsAlphabetic}+=:,.@'\" -]{0,63}", + "sensitive":true + }, + "EnvironmentSoftwareSetComplianceStatus":{ + "type":"string", + "enum":[ + "NO_REGISTERED_DEVICES", + "COMPLIANT", + "NOT_COMPLIANT" + ] + }, + "EnvironmentSummary":{ + "type":"structure", + "members":{ + "id":{"shape":"EnvironmentId"}, + "name":{"shape":"EnvironmentName"}, + "desktopArn":{"shape":"Arn"}, + "desktopEndpoint":{"shape":"DesktopEndpoint"}, + "desktopType":{"shape":"DesktopType"}, + "activationCode":{"shape":"ActivationCode"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "maintenanceWindow":{"shape":"MaintenanceWindow"}, + "softwareSetUpdateMode":{"shape":"SoftwareSetUpdateMode"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetId"}, + "pendingSoftwareSetId":{"shape":"SoftwareSetId"}, + "createdAt":{"shape":"Timestamp"}, + "updatedAt":{"shape":"Timestamp"}, + "arn":{"shape":"Arn"}, + "tags":{"shape":"EmbeddedTag"} + } + }, + "ExceptionMessage":{"type":"string"}, + "FieldName":{"type":"string"}, + "GetDeviceRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"DeviceId", + "location":"uri", + "locationName":"id" + } + } + }, + "GetDeviceResponse":{ + "type":"structure", + "members":{ + "device":{"shape":"Device"} + } + }, + "GetEnvironmentRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"id" + } + } + }, + "GetEnvironmentResponse":{ + "type":"structure", + "members":{ + "environment":{"shape":"Environment"} + } + }, + "GetSoftwareSetRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"SoftwareSetId", + "location":"uri", + "locationName":"id" + } + } + }, + "GetSoftwareSetResponse":{ + "type":"structure", + "members":{ + "softwareSet":{"shape":"SoftwareSet"} + } + }, + "Hour":{ + "type":"integer", + "box":true, + "max":23, + "min":0 + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "retryAfterSeconds":{ + "shape":"RetryAfterSeconds", + "location":"header", + "locationName":"Retry-After" + } + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "InternalServiceException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "retryAfterSeconds":{ + "shape":"RetryAfterSeconds", + "location":"header", + "locationName":"Retry-After" + } + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "KmsKeyArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[0-9]{0,12}:key\\/[a-zA-Z0-9-]+" + }, + "ListDevicesRequest":{ + "type":"structure", + "members":{ + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListDevicesResponse":{ + "type":"structure", + "members":{ + "devices":{"shape":"DeviceList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListEnvironmentsRequest":{ + "type":"structure", + "members":{ + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListEnvironmentsResponse":{ + "type":"structure", + "members":{ + "environments":{"shape":"EnvironmentList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListSoftwareSetsRequest":{ + "type":"structure", + "members":{ + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListSoftwareSetsResponse":{ + "type":"structure", + "members":{ + "softwareSets":{"shape":"SoftwareSetList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"TagsMap"} + } + }, + "MaintenanceWindow":{ + "type":"structure", + "members":{ + "type":{"shape":"MaintenanceWindowType"}, + "startTimeHour":{"shape":"Hour"}, + "startTimeMinute":{"shape":"Minute"}, + "endTimeHour":{"shape":"Hour"}, + "endTimeMinute":{"shape":"Minute"}, + "daysOfTheWeek":{"shape":"DayOfWeekList"}, + "applyTimeOf":{"shape":"ApplyTimeOf"} + } + }, + "MaintenanceWindowType":{ + "type":"string", + "enum":[ + "SYSTEM", + "CUSTOM" + ] + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "Minute":{ + "type":"integer", + "box":true, + "max":59, + "min":0 + }, + "PaginationToken":{ + "type":"string", + "max":2048, + "min":0, + "pattern":"\\S*" + }, + "QuotaCode":{"type":"string"}, + "ResourceId":{"type":"string"}, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "resourceId":{"shape":"ResourceId"}, + "resourceType":{"shape":"ResourceType"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResourceType":{"type":"string"}, + "RetryAfterSeconds":{ + "type":"integer", + "box":true + }, + "ServiceCode":{"type":"string"}, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "resourceId":{"shape":"ResourceId"}, + "resourceType":{"shape":"ResourceType"}, + "serviceCode":{"shape":"ServiceCode"}, + "quotaCode":{"shape":"QuotaCode"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "Software":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "version":{"shape":"String"} + } + }, + "SoftwareList":{ + "type":"list", + "member":{"shape":"Software"} + }, + "SoftwareSet":{ + "type":"structure", + "members":{ + "id":{"shape":"SoftwareSetId"}, + "version":{"shape":"String"}, + "releasedAt":{"shape":"Timestamp"}, + "supportedUntil":{"shape":"Timestamp"}, + "validationStatus":{"shape":"SoftwareSetValidationStatus"}, + "software":{"shape":"SoftwareList"}, + "arn":{"shape":"Arn"} + } + }, + "SoftwareSetId":{ + "type":"string", + "pattern":"[0-9]{1,9}" + }, + "SoftwareSetIdOrEmptyString":{ + "type":"string", + "pattern":"[0-9]{0,9}" + }, + "SoftwareSetList":{ + "type":"list", + "member":{"shape":"SoftwareSetSummary"} + }, + "SoftwareSetSummary":{ + "type":"structure", + "members":{ + "id":{"shape":"SoftwareSetId"}, + "version":{"shape":"String"}, + "releasedAt":{"shape":"Timestamp"}, + "supportedUntil":{"shape":"Timestamp"}, + "validationStatus":{"shape":"SoftwareSetValidationStatus"}, + "arn":{"shape":"Arn"} + } + }, + "SoftwareSetUpdateMode":{ + "type":"string", + "enum":[ + "USE_LATEST", + "USE_DESIRED" + ] + }, + "SoftwareSetUpdateSchedule":{ + "type":"string", + "enum":[ + "USE_MAINTENANCE_WINDOW", + "APPLY_IMMEDIATELY" + ] + }, + "SoftwareSetUpdateStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "IN_PROGRESS", + "UP_TO_DATE" + ] + }, + "SoftwareSetValidationStatus":{ + "type":"string", + "enum":[ + "VALIDATED", + "NOT_VALIDATED" + ] + }, + "String":{"type":"string"}, + "TagKeys":{ + "type":"list", + "member":{"shape":"String"}, + "sensitive":true + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"TagsMap"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagsMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"}, + "sensitive":true + }, + "TargetDeviceStatus":{ + "type":"string", + "enum":[ + "DEREGISTERED", + "ARCHIVED" + ] + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "serviceCode":{"shape":"ServiceCode"}, + "quotaCode":{"shape":"QuotaCode"}, + "retryAfterSeconds":{ + "shape":"RetryAfterSeconds", + "location":"header", + "locationName":"Retry-After" + } + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "Timestamp":{"type":"timestamp"}, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeys", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateDeviceRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"DeviceId", + "location":"uri", + "locationName":"id" + }, + "name":{"shape":"DeviceName"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetId"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "kmsKeyArn":{"shape":"KmsKeyArn"} + } + }, + "UpdateDeviceResponse":{ + "type":"structure", + "members":{ + "device":{"shape":"DeviceSummary"} + } + }, + "UpdateEnvironmentRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"EnvironmentId", + "location":"uri", + "locationName":"id" + }, + "name":{"shape":"EnvironmentName"}, + "desktopArn":{"shape":"Arn"}, + "desktopEndpoint":{"shape":"DesktopEndpoint"}, + "softwareSetUpdateSchedule":{"shape":"SoftwareSetUpdateSchedule"}, + "maintenanceWindow":{"shape":"MaintenanceWindow"}, + "softwareSetUpdateMode":{"shape":"SoftwareSetUpdateMode"}, + "desiredSoftwareSetId":{"shape":"SoftwareSetIdOrEmptyString"} + } + }, + "UpdateEnvironmentResponse":{ + "type":"structure", + "members":{ + "environment":{"shape":"EnvironmentSummary"} + } + }, + "UpdateSoftwareSetRequest":{ + "type":"structure", + "required":[ + "id", + "validationStatus" + ], + "members":{ + "id":{ + "shape":"SoftwareSetId", + "location":"uri", + "locationName":"id" + }, + "validationStatus":{"shape":"SoftwareSetValidationStatus"} + } + }, + "UpdateSoftwareSetResponse":{ + "type":"structure", + "members":{ + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "message":{"shape":"ExceptionMessage"}, + "reason":{"shape":"ValidationExceptionReason"}, + "fieldList":{"shape":"ValidationExceptionFieldList"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "name", + "message" + ], + "members":{ + "name":{"shape":"FieldName"}, + "message":{"shape":"ExceptionMessage"} + } + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "unknownOperation", + "cannotParse", + "fieldValidationFailed", + "other" + ] + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/docs-2.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,692 @@ +{ + "version": "2.0", + "service": "

Amazon WorkSpaces Thin Client is a affordable device built to work with Amazon Web Services End User Computing (EUC) virtual desktops to provide users with a complete cloud desktop solution. WorkSpaces Thin Client is a compact device designed to connect up to two monitors and USB devices like a keyboard, mouse, headset, and webcam. To maximize endpoint security, WorkSpaces Thin Client devices do not allow local data storage or installation of unapproved applications. The WorkSpaces Thin Client device ships preloaded with device management software.

You can use these APIs to complete WorkSpaces Thin Client tasks, such as creating environments or viewing devices. For more information about WorkSpaces Thin Client, including the required permissions to use the service, see the Amazon WorkSpaces Thin Client Administrator Guide. For more information about using the Command Line Interface (CLI) to manage your WorkSpaces Thin Client resources, see the WorkSpaces Thin Client section of the CLI Reference.

", + "operations": { + "CreateEnvironment": "

Creates an environment for your thin client devices.

", + "DeleteDevice": "

Deletes a thin client device.

", + "DeleteEnvironment": "

Deletes an environment.

", + "DeregisterDevice": "

Deregisters a thin client device.

", + "GetDevice": "

Returns information for a thin client device.

", + "GetEnvironment": "

Returns information for an environment.

", + "GetSoftwareSet": "

Returns information for a software set.

", + "ListDevices": "

Returns a list of thin client devices.

", + "ListEnvironments": "

Returns a list of environments.

", + "ListSoftwareSets": "

Returns a list of software sets.

", + "ListTagsForResource": "

Returns a list of tags for a resource.

", + "TagResource": "

Assigns one or more tags (key-value pairs) to the specified resource.

", + "UntagResource": "

Removes a tag or tags from a resource.

", + "UpdateDevice": "

Updates a thin client device.

", + "UpdateEnvironment": "

Updates an environment.

", + "UpdateSoftwareSet": "

Updates a software set.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "ActivationCode": { + "base": null, + "refs": { + "Environment$activationCode": "

The activation code to register a device to the environment.

", + "EnvironmentSummary$activationCode": "

The activation code to register a device to the environment.

" + } + }, + "ApplyTimeOf": { + "base": null, + "refs": { + "MaintenanceWindow$applyTimeOf": "

The option to set the maintenance window during the device local time or Universal Coordinated Time (UTC).

" + } + }, + "Arn": { + "base": null, + "refs": { + "CreateEnvironmentRequest$desktopArn": "

The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Web, or AppStream 2.0.

", + "Device$arn": "

The Amazon Resource Name (ARN) of the device.

", + "DeviceSummary$arn": "

The Amazon Resource Name (ARN) of the device.

", + "Environment$desktopArn": "

The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Web, or AppStream 2.0.

", + "Environment$arn": "

The Amazon Resource Name (ARN) of the environment.

", + "EnvironmentSummary$desktopArn": "

The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Web, or AppStream 2.0.

", + "EnvironmentSummary$arn": "

The Amazon Resource Name (ARN) of the environment.

", + "SoftwareSet$arn": "

The Amazon Resource Name (ARN) of the software set.

", + "SoftwareSetSummary$arn": "

The Amazon Resource Name (ARN) of the software set.

", + "UpdateEnvironmentRequest$desktopArn": "

The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Web, or AppStream 2.0.

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "CreateEnvironmentRequest$clientToken": "

Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

", + "DeleteDeviceRequest$clientToken": "

Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

", + "DeleteEnvironmentRequest$clientToken": "

Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

", + "DeregisterDeviceRequest$clientToken": "

Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

" + } + }, + "ConflictException": { + "base": "

The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request.

", + "refs": { + } + }, + "CreateEnvironmentRequest": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentResponse": { + "base": null, + "refs": { + } + }, + "DayOfWeek": { + "base": null, + "refs": { + "DayOfWeekList$member": null + } + }, + "DayOfWeekList": { + "base": null, + "refs": { + "MaintenanceWindow$daysOfTheWeek": "

The days of the week during which the maintenance window is open.

" + } + }, + "DeleteDeviceRequest": { + "base": null, + "refs": { + } + }, + "DeleteDeviceResponse": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentRequest": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentResponse": { + "base": null, + "refs": { + } + }, + "DeregisterDeviceRequest": { + "base": null, + "refs": { + } + }, + "DeregisterDeviceResponse": { + "base": null, + "refs": { + } + }, + "DesktopEndpoint": { + "base": null, + "refs": { + "CreateEnvironmentRequest$desktopEndpoint": "

The URL for the identity provider login (only for environments that use AppStream 2.0).

", + "Environment$desktopEndpoint": "

The URL for the identity provider login (only for environments that use AppStream 2.0).

", + "EnvironmentSummary$desktopEndpoint": "

The URL for the identity provider login (only for environments that use AppStream 2.0).

", + "UpdateEnvironmentRequest$desktopEndpoint": "

The URL for the identity provider login (only for environments that use AppStream 2.0).

" + } + }, + "DesktopType": { + "base": null, + "refs": { + "Environment$desktopType": "

The type of streaming desktop for the environment.

", + "EnvironmentSummary$desktopType": "

The type of streaming desktop for the environment.

" + } + }, + "Device": { + "base": "

Describes a thin client device.

", + "refs": { + "GetDeviceResponse$device": "

Describes an device.

" + } + }, + "DeviceId": { + "base": null, + "refs": { + "DeleteDeviceRequest$id": "

The ID of the device to delete.

", + "DeregisterDeviceRequest$id": "

The ID of the device to deregister.

", + "Device$id": "

The ID of the device.

", + "DeviceSummary$id": "

The ID of the device.

", + "GetDeviceRequest$id": "

The ID of the device for which to return information.

", + "UpdateDeviceRequest$id": "

The ID of the device to update.

" + } + }, + "DeviceList": { + "base": null, + "refs": { + "ListDevicesResponse$devices": "

Describes devices.

" + } + }, + "DeviceName": { + "base": null, + "refs": { + "Device$name": "

The name of the device.

", + "DeviceSummary$name": "

The name of the device.

", + "UpdateDeviceRequest$name": "

The name of the device to update.

" + } + }, + "DeviceSoftwareSetComplianceStatus": { + "base": null, + "refs": { + "Device$softwareSetComplianceStatus": "

Describes if the software currently installed on the device is a supported version.

" + } + }, + "DeviceStatus": { + "base": null, + "refs": { + "Device$status": "

The status of the device.

", + "DeviceSummary$status": "

The status of the device.

" + } + }, + "DeviceSummary": { + "base": "

Describes a thin client device.

", + "refs": { + "DeviceList$member": null, + "UpdateDeviceResponse$device": "

Describes a device.

" + } + }, + "EmbeddedTag": { + "base": "

The resource and internal ID of a resource to tag.

", + "refs": { + "Device$tags": "

The tag keys and optional values for the resource.

", + "DeviceSummary$tags": "

The tag keys and optional values for the resource.

", + "Environment$tags": "

The tag keys and optional values for the resource.

", + "EnvironmentSummary$tags": "

The tag keys and optional values for the resource.

" + } + }, + "Environment": { + "base": "

Describes an environment.

", + "refs": { + "GetEnvironmentResponse$environment": "

Describes an environment.

" + } + }, + "EnvironmentId": { + "base": null, + "refs": { + "DeleteEnvironmentRequest$id": "

The ID of the environment to delete.

", + "Device$environmentId": "

The ID of the environment the device is associated with.

", + "DeviceSummary$environmentId": "

The ID of the environment the device is associated with.

", + "Environment$id": "

The ID of the environment.

", + "EnvironmentSummary$id": "

The ID of the environment.

", + "GetEnvironmentRequest$id": "

The ID of the environment for which to return information.

", + "UpdateEnvironmentRequest$id": "

The ID of the environment to update.

" + } + }, + "EnvironmentList": { + "base": null, + "refs": { + "ListEnvironmentsResponse$environments": "

Describes environments.

" + } + }, + "EnvironmentName": { + "base": null, + "refs": { + "CreateEnvironmentRequest$name": "

The name for the environment.

", + "Environment$name": "

The name of the environment.

", + "EnvironmentSummary$name": "

The name of the environment.

", + "UpdateEnvironmentRequest$name": "

The name of the environment to update.

" + } + }, + "EnvironmentSoftwareSetComplianceStatus": { + "base": null, + "refs": { + "Environment$softwareSetComplianceStatus": "

Describes if the software currently installed on all devices in the environment is a supported version.

" + } + }, + "EnvironmentSummary": { + "base": "

Describes an environment.

", + "refs": { + "CreateEnvironmentResponse$environment": "

Describes an environment.

", + "EnvironmentList$member": null, + "UpdateEnvironmentResponse$environment": "

Describes an environment.

" + } + }, + "ExceptionMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "InternalServiceException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null, + "ValidationExceptionField$message": "

A message that describes the reason for the exception.

" + } + }, + "FieldName": { + "base": null, + "refs": { + "ValidationExceptionField$name": "

The name of the exception.

" + } + }, + "GetDeviceRequest": { + "base": null, + "refs": { + } + }, + "GetDeviceResponse": { + "base": null, + "refs": { + } + }, + "GetEnvironmentRequest": { + "base": null, + "refs": { + } + }, + "GetEnvironmentResponse": { + "base": null, + "refs": { + } + }, + "GetSoftwareSetRequest": { + "base": null, + "refs": { + } + }, + "GetSoftwareSetResponse": { + "base": null, + "refs": { + } + }, + "Hour": { + "base": null, + "refs": { + "MaintenanceWindow$startTimeHour": "

The hour for the maintenance window start (00-23).

", + "MaintenanceWindow$endTimeHour": "

The hour for the maintenance window end (00-23).

" + } + }, + "Integer": { + "base": null, + "refs": { + "Environment$registeredDevicesCount": "

The number of devices registered to the environment.

" + } + }, + "InternalServerException": { + "base": "

The server encountered an internal error and is unable to complete the request.

", + "refs": { + } + }, + "InternalServiceException": { + "base": "

Request processing failed due to some unknown error, exception, or failure.

", + "refs": { + } + }, + "KmsKeyArn": { + "base": null, + "refs": { + "CreateEnvironmentRequest$kmsKeyArn": "

The Amazon Resource Name (ARN) of the Key Management Service key to use to encrypt the environment.

", + "Device$kmsKeyArn": "

The Amazon Resource Name (ARN) of the Key Management Service key used to encrypt the device.

", + "Environment$kmsKeyArn": "

The Amazon Resource Name (ARN) of the Key Management Service key used to encrypt the environment.

", + "UpdateDeviceRequest$kmsKeyArn": "

The Amazon Resource Name (ARN) of the Key Management Service key to use for the update.

" + } + }, + "ListDevicesRequest": { + "base": null, + "refs": { + } + }, + "ListDevicesResponse": { + "base": null, + "refs": { + } + }, + "ListEnvironmentsRequest": { + "base": null, + "refs": { + } + }, + "ListEnvironmentsResponse": { + "base": null, + "refs": { + } + }, + "ListSoftwareSetsRequest": { + "base": null, + "refs": { + } + }, + "ListSoftwareSetsResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "MaintenanceWindow": { + "base": "

Describes the maintenance window for a thin client device.

", + "refs": { + "CreateEnvironmentRequest$maintenanceWindow": "

A specification for a time window to apply software updates.

", + "Environment$maintenanceWindow": "

A specification for a time window to apply software updates.

", + "EnvironmentSummary$maintenanceWindow": "

A specification for a time window to apply software updates.

", + "UpdateEnvironmentRequest$maintenanceWindow": "

A specification for a time window to apply software updates.

" + } + }, + "MaintenanceWindowType": { + "base": null, + "refs": { + "MaintenanceWindow$type": "

An option to select the default or custom maintenance window.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListDevicesRequest$maxResults": "

The maximum number of results that are returned per call. You can use nextToken to obtain further pages of results.

This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.

", + "ListEnvironmentsRequest$maxResults": "

The maximum number of results that are returned per call. You can use nextToken to obtain further pages of results.

This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.

", + "ListSoftwareSetsRequest$maxResults": "

The maximum number of results that are returned per call. You can use nextToken to obtain further pages of results.

This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.

" + } + }, + "Minute": { + "base": null, + "refs": { + "MaintenanceWindow$startTimeMinute": "

The minutes past the hour for the maintenance window start (00-59).

", + "MaintenanceWindow$endTimeMinute": "

The minutes for the maintenance window end (00-59).

" + } + }, + "PaginationToken": { + "base": null, + "refs": { + "ListDevicesRequest$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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListDevicesResponse$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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListEnvironmentsRequest$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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListEnvironmentsResponse$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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListSoftwareSetsRequest$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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListSoftwareSetsResponse$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. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

" + } + }, + "QuotaCode": { + "base": null, + "refs": { + "ServiceQuotaExceededException$quotaCode": "

The code for the quota in Service Quotas.

", + "ThrottlingException$quotaCode": "

The code for the quota in Service Quotas.

" + } + }, + "ResourceId": { + "base": null, + "refs": { + "ConflictException$resourceId": "

The ID of the resource associated with the request.

", + "ResourceNotFoundException$resourceId": "

The ID of the resource associated with the request.

", + "ServiceQuotaExceededException$resourceId": "

The ID of the resource that exceeds the service quota.

" + } + }, + "ResourceNotFoundException": { + "base": "

The resource specified in the request was not found.

", + "refs": { + } + }, + "ResourceType": { + "base": null, + "refs": { + "ConflictException$resourceType": "

The type of the resource associated with the request.

", + "ResourceNotFoundException$resourceType": "

The type of the resource associated with the request.

", + "ServiceQuotaExceededException$resourceType": "

The type of the resource that exceeds the service quota.

" + } + }, + "RetryAfterSeconds": { + "base": null, + "refs": { + "InternalServerException$retryAfterSeconds": "

The number of seconds to wait before retrying the next request.

", + "InternalServiceException$retryAfterSeconds": "

The number of seconds to wait before retrying the next request.

", + "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying the next request.

" + } + }, + "ServiceCode": { + "base": null, + "refs": { + "ServiceQuotaExceededException$serviceCode": "

The code for the service in Service Quotas.

", + "ThrottlingException$serviceCode": "

The code for the service in Service Quotas.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

Your request exceeds a service quota.

", + "refs": { + } + }, + "Software": { + "base": "

Describes software.

", + "refs": { + "SoftwareList$member": null + } + }, + "SoftwareList": { + "base": null, + "refs": { + "SoftwareSet$software": "

A list of the software components in the software set.

" + } + }, + "SoftwareSet": { + "base": "

Describes a software set.

", + "refs": { + "GetSoftwareSetResponse$softwareSet": "

Describes a software set.

" + } + }, + "SoftwareSetId": { + "base": null, + "refs": { + "CreateEnvironmentRequest$desiredSoftwareSetId": "

The ID of the software set to apply.

", + "Device$currentSoftwareSetId": "

The ID of the software set currently installed on the device.

", + "Device$desiredSoftwareSetId": "

The ID of the software set which the device has been set to.

", + "Device$pendingSoftwareSetId": "

The ID of the software set that is pending to be installed on the device.

", + "DeviceSummary$currentSoftwareSetId": "

The ID of the software set currently installed on the device.

", + "DeviceSummary$desiredSoftwareSetId": "

The ID of the software set which the device has been set to.

", + "DeviceSummary$pendingSoftwareSetId": "

The ID of the software set that is pending to be installed on the device.

", + "Environment$desiredSoftwareSetId": "

The ID of the software set to apply.

", + "Environment$pendingSoftwareSetId": "

The ID of the software set that is pending to be installed.

", + "EnvironmentSummary$desiredSoftwareSetId": "

The ID of the software set to apply.

", + "EnvironmentSummary$pendingSoftwareSetId": "

The ID of the software set that is pending to be installed.

", + "GetSoftwareSetRequest$id": "

The ID of the software set for which to return information.

", + "SoftwareSet$id": "

The ID of the software set.

", + "SoftwareSetSummary$id": "

The ID of the software set.

", + "UpdateDeviceRequest$desiredSoftwareSetId": "

The ID of the software set to apply.

", + "UpdateSoftwareSetRequest$id": "

The ID of the software set to update.

" + } + }, + "SoftwareSetIdOrEmptyString": { + "base": null, + "refs": { + "UpdateEnvironmentRequest$desiredSoftwareSetId": "

The ID of the software set to apply.

" + } + }, + "SoftwareSetList": { + "base": null, + "refs": { + "ListSoftwareSetsResponse$softwareSets": "

Describes software sets.

" + } + }, + "SoftwareSetSummary": { + "base": "

Describes a software set.

", + "refs": { + "SoftwareSetList$member": null + } + }, + "SoftwareSetUpdateMode": { + "base": null, + "refs": { + "CreateEnvironmentRequest$softwareSetUpdateMode": "

An option to define which software updates to apply.

", + "Environment$softwareSetUpdateMode": "

An option to define which software updates to apply.

", + "EnvironmentSummary$softwareSetUpdateMode": "

An option to define which software updates to apply.

", + "UpdateEnvironmentRequest$softwareSetUpdateMode": "

An option to define which software updates to apply.

" + } + }, + "SoftwareSetUpdateSchedule": { + "base": null, + "refs": { + "CreateEnvironmentRequest$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

", + "Device$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

", + "DeviceSummary$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

", + "Environment$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

", + "EnvironmentSummary$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

", + "UpdateDeviceRequest$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

", + "UpdateEnvironmentRequest$softwareSetUpdateSchedule": "

An option to define if software updates should be applied within a maintenance window.

" + } + }, + "SoftwareSetUpdateStatus": { + "base": null, + "refs": { + "Device$softwareSetUpdateStatus": "

Describes if the device has a supported version of software installed.

" + } + }, + "SoftwareSetValidationStatus": { + "base": null, + "refs": { + "SoftwareSet$validationStatus": "

An option to define if the software set has been validated.

", + "SoftwareSetSummary$validationStatus": "

An option to define if the software set has been validated.

", + "UpdateSoftwareSetRequest$validationStatus": "

An option to define if the software set has been validated.

" + } + }, + "String": { + "base": null, + "refs": { + "Device$serialNumber": "

The hardware serial number of the device.

", + "Device$model": "

The model number of the device.

", + "Device$currentSoftwareSetVersion": "

The version of the software set currently installed on the device.

", + "Device$pendingSoftwareSetVersion": "

The version of the software set that is pending to be installed on the device.

", + "DeviceSummary$serialNumber": "

The hardware serial number of the device.

", + "DeviceSummary$model": "

The model number of the device.

", + "EmbeddedTag$resourceArn": "

The Amazon Resource Name (ARN) of a resource to tag.

", + "EmbeddedTag$internalId": "

The internal ID of a resource to tag.

", + "Environment$pendingSoftwareSetVersion": "

The version of the software set that is pending to be installed.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource for which you want to retrieve tags.

", + "Software$name": "

The name of the software component.

", + "Software$version": "

The version of the software component.

", + "SoftwareSet$version": "

The version of the software set.

", + "SoftwareSetSummary$version": "

The version of the software set.

", + "TagKeys$member": null, + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you want to tag.

", + "TagsMap$key": null, + "TagsMap$value": null, + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that you want to untag.

" + } + }, + "TagKeys": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

The keys of the key-value pairs for the tag or tags you want to remove from the specified resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagsMap": { + "base": null, + "refs": { + "CreateEnvironmentRequest$tags": "

A map of the key-value pairs of the tag or tags to assign to the resource.

", + "ListTagsForResourceResponse$tags": "

A map of the key-value pairs for the tag or tags assigned to the specified resource.

", + "TagResourceRequest$tags": "

A map of the key-value pairs of the tag or tags to assign to the resource.

" + } + }, + "TargetDeviceStatus": { + "base": null, + "refs": { + "DeregisterDeviceRequest$targetDeviceStatus": "

The desired new status for the device.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "Device$lastConnectedAt": "

The timestamp of the most recent session on the device.

", + "Device$lastPostureAt": "

The timestamp of the most recent check-in of the device.

", + "Device$createdAt": "

The timestamp of when the device was created.

", + "Device$updatedAt": "

The timestamp of when the device was updated.

", + "DeviceSummary$lastConnectedAt": "

The timestamp of the most recent session on the device.

", + "DeviceSummary$lastPostureAt": "

The timestamp of the most recent check-in of the device.

", + "DeviceSummary$createdAt": "

The timestamp of when the device was created.

", + "DeviceSummary$updatedAt": "

The timestamp of when the device was updated.

", + "Environment$createdAt": "

The timestamp of when the environment was created.

", + "Environment$updatedAt": "

The timestamp of when the device was updated.

", + "EnvironmentSummary$createdAt": "

The timestamp of when the environment was created.

", + "EnvironmentSummary$updatedAt": "

The timestamp of when the device was updated.

", + "SoftwareSet$releasedAt": "

The timestamp of when the software set was released.

", + "SoftwareSet$supportedUntil": "

The timestamp of the end of support for the software set.

", + "SoftwareSetSummary$releasedAt": "

The timestamp of when the software set was released.

", + "SoftwareSetSummary$supportedUntil": "

The timestamp of the end of support for the software set.

" + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateDeviceRequest": { + "base": null, + "refs": { + } + }, + "UpdateDeviceResponse": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentRequest": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentResponse": { + "base": null, + "refs": { + } + }, + "UpdateSoftwareSetRequest": { + "base": null, + "refs": { + } + }, + "UpdateSoftwareSetResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the specified constraints.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

Describes a validation exception.

", + "refs": { + "ValidationExceptionFieldList$member": null + } + }, + "ValidationExceptionFieldList": { + "base": null, + "refs": { + "ValidationException$fieldList": "

A list of fields that didn't validate.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason for the exception.

" + } + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-rule-set-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-rule-set-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-rule-set-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-rule-set-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://thinclient-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://thinclient-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://thinclient.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://thinclient.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-tests-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-tests-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-tests-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/endpoint-tests-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://thinclient.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://thinclient.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://thinclient.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://thinclient.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/examples-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/examples-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/examples-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/examples-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/paginators-1.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/paginators-1.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/workspaces-thin-client/2023-08-22/paginators-1.json 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/workspaces-thin-client/2023-08-22/paginators-1.json 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,22 @@ +{ + "pagination": { + "ListDevices": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "devices" + }, + "ListEnvironments": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "environments" + }, + "ListSoftwareSets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "softwareSets" + } + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/xray/2016-04-12/api-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/xray/2016-04-12/api-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/xray/2016-04-12/api-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/xray/2016-04-12/api-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1743,7 +1743,8 @@ "type":"string", "enum":[ "TraceId", - "Event" + "Event", + "Service" ] }, "TimeSeriesServiceStatistics":{ diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/apis/xray/2016-04-12/docs-2.json golang-github-aws-aws-sdk-go-1.48.14/models/apis/xray/2016-04-12/docs-2.json --- golang-github-aws-aws-sdk-go-1.45.14/models/apis/xray/2016-04-12/docs-2.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/apis/xray/2016-04-12/docs-2.json 2023-12-06 19:28:18.000000000 +0000 @@ -1406,7 +1406,7 @@ "TimeRangeType": { "base": null, "refs": { - "GetTraceSummariesRequest$TimeRangeType": "

A parameter to indicate whether to query trace summaries by TraceId or Event time.

" + "GetTraceSummariesRequest$TimeRangeType": "

A parameter to indicate whether to query trace summaries by TraceId, Event (trace update time), or Service (segment end time).

" } }, "TimeSeriesServiceStatistics": { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/models/endpoints/endpoints.json golang-github-aws-aws-sdk-go-1.48.14/models/endpoints/endpoints.json --- golang-github-aws-aws-sdk-go-1.45.14/models/endpoints/endpoints.json 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/models/endpoints/endpoints.json 2023-12-06 19:28:18.000000000 +0000 @@ -405,6 +405,11 @@ } } }, + "agreement-marketplace" : { + "endpoints" : { + "us-east-1" : { } + } + }, "airflow" : { "endpoints" : { "ap-northeast-1" : { }, @@ -515,7 +520,19 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "api.detective-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "api.detective-fips.ca-central-1.amazonaws.com" + }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-south-1" : { }, @@ -1050,11 +1067,18 @@ "endpoints" : { "af-south-1" : { }, "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-4" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, + "eu-north-1" : { }, "eu-west-1" : { }, + "eu-west-3" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, "us-west-2" : { } @@ -1430,11 +1454,59 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "appflow-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "appflow-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "appflow-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "appflow-fips.us-west-2.amazonaws.com" + }, "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "appflow-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "appflow-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "appflow-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "appflow-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "application-autoscaling" : { @@ -1712,10 +1784,13 @@ "apprunner" : { "endpoints" : { "ap-northeast-1" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "eu-central-1" : { }, "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -2150,7 +2225,12 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "autoscaling-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -2159,14 +2239,69 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "autoscaling-fips.ca-central-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "autoscaling-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "autoscaling-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "autoscaling-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "autoscaling-fips.us-west-2.amazonaws.com" + }, "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "autoscaling-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "autoscaling-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "autoscaling-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "autoscaling-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "autoscaling-plans" : { @@ -2372,6 +2507,99 @@ } } }, + "bedrock" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-southeast-1" : { }, + "bedrock-ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "hostname" : "bedrock.ap-northeast-1.amazonaws.com" + }, + "bedrock-ap-southeast-1" : { + "credentialScope" : { + "region" : "ap-southeast-1" + }, + "hostname" : "bedrock.ap-southeast-1.amazonaws.com" + }, + "bedrock-eu-central-1" : { + "credentialScope" : { + "region" : "eu-central-1" + }, + "hostname" : "bedrock.eu-central-1.amazonaws.com" + }, + "bedrock-fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "bedrock-fips.us-east-1.amazonaws.com" + }, + "bedrock-fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "bedrock-fips.us-west-2.amazonaws.com" + }, + "bedrock-runtime-ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "hostname" : "bedrock-runtime.ap-northeast-1.amazonaws.com" + }, + "bedrock-runtime-ap-southeast-1" : { + "credentialScope" : { + "region" : "ap-southeast-1" + }, + "hostname" : "bedrock-runtime.ap-southeast-1.amazonaws.com" + }, + "bedrock-runtime-eu-central-1" : { + "credentialScope" : { + "region" : "eu-central-1" + }, + "hostname" : "bedrock-runtime.eu-central-1.amazonaws.com" + }, + "bedrock-runtime-fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "bedrock-runtime-fips.us-east-1.amazonaws.com" + }, + "bedrock-runtime-fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "bedrock-runtime-fips.us-west-2.amazonaws.com" + }, + "bedrock-runtime-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "bedrock-runtime.us-east-1.amazonaws.com" + }, + "bedrock-runtime-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "bedrock-runtime.us-west-2.amazonaws.com" + }, + "bedrock-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "bedrock.us-east-1.amazonaws.com" + }, + "bedrock-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "bedrock.us-west-2.amazonaws.com" + }, + "eu-central-1" : { }, + "us-east-1" : { }, + "us-west-2" : { } + } + }, "billingconductor" : { "endpoints" : { "aws-global" : { @@ -3207,9 +3435,13 @@ "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "codepipeline-fips.ca-central-1.amazonaws.com", @@ -3220,6 +3452,7 @@ "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -3258,6 +3491,8 @@ "deprecated" : true, "hostname" : "codepipeline-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -3645,6 +3880,12 @@ }, "hostname" : "compute-optimizer.ap-south-1.amazonaws.com" }, + "ap-south-2" : { + "credentialScope" : { + "region" : "ap-south-2" + }, + "hostname" : "compute-optimizer.ap-south-2.amazonaws.com" + }, "ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" @@ -3657,6 +3898,18 @@ }, "hostname" : "compute-optimizer.ap-southeast-2.amazonaws.com" }, + "ap-southeast-3" : { + "credentialScope" : { + "region" : "ap-southeast-3" + }, + "hostname" : "compute-optimizer.ap-southeast-3.amazonaws.com" + }, + "ap-southeast-4" : { + "credentialScope" : { + "region" : "ap-southeast-4" + }, + "hostname" : "compute-optimizer.ap-southeast-4.amazonaws.com" + }, "ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -3669,6 +3922,12 @@ }, "hostname" : "compute-optimizer.eu-central-1.amazonaws.com" }, + "eu-central-2" : { + "credentialScope" : { + "region" : "eu-central-2" + }, + "hostname" : "compute-optimizer.eu-central-2.amazonaws.com" + }, "eu-north-1" : { "credentialScope" : { "region" : "eu-north-1" @@ -3681,6 +3940,12 @@ }, "hostname" : "compute-optimizer.eu-south-1.amazonaws.com" }, + "eu-south-2" : { + "credentialScope" : { + "region" : "eu-south-2" + }, + "hostname" : "compute-optimizer.eu-south-2.amazonaws.com" + }, "eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" @@ -3699,6 +3964,18 @@ }, "hostname" : "compute-optimizer.eu-west-3.amazonaws.com" }, + "il-central-1" : { + "credentialScope" : { + "region" : "il-central-1" + }, + "hostname" : "compute-optimizer.il-central-1.amazonaws.com" + }, + "me-central-1" : { + "credentialScope" : { + "region" : "me-central-1" + }, + "hostname" : "compute-optimizer.me-central-1.amazonaws.com" + }, "me-south-1" : { "credentialScope" : { "region" : "me-south-1" @@ -3915,6 +4192,7 @@ "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "controltower-fips.ca-central-1.amazonaws.com", @@ -3994,6 +4272,16 @@ } } }, + "cost-optimization-hub" : { + "endpoints" : { + "us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "cost-optimization-hub.us-east-1.amazonaws.com" + } + } + }, "cur" : { "endpoints" : { "us-east-1" : { } @@ -4458,6 +4746,118 @@ } } }, + "datazone" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "af-south-1" : { + "hostname" : "datazone.af-south-1.api.aws" + }, + "ap-east-1" : { + "hostname" : "datazone.ap-east-1.api.aws" + }, + "ap-northeast-1" : { + "hostname" : "datazone.ap-northeast-1.api.aws" + }, + "ap-northeast-2" : { + "hostname" : "datazone.ap-northeast-2.api.aws" + }, + "ap-northeast-3" : { + "hostname" : "datazone.ap-northeast-3.api.aws" + }, + "ap-south-1" : { + "hostname" : "datazone.ap-south-1.api.aws" + }, + "ap-south-2" : { + "hostname" : "datazone.ap-south-2.api.aws" + }, + "ap-southeast-1" : { + "hostname" : "datazone.ap-southeast-1.api.aws" + }, + "ap-southeast-2" : { + "hostname" : "datazone.ap-southeast-2.api.aws" + }, + "ap-southeast-3" : { + "hostname" : "datazone.ap-southeast-3.api.aws" + }, + "ap-southeast-4" : { + "hostname" : "datazone.ap-southeast-4.api.aws" + }, + "ca-central-1" : { + "hostname" : "datazone.ca-central-1.api.aws", + "variants" : [ { + "hostname" : "datazone-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-central-1" : { + "hostname" : "datazone.eu-central-1.api.aws" + }, + "eu-central-2" : { + "hostname" : "datazone.eu-central-2.api.aws" + }, + "eu-north-1" : { + "hostname" : "datazone.eu-north-1.api.aws" + }, + "eu-south-1" : { + "hostname" : "datazone.eu-south-1.api.aws" + }, + "eu-south-2" : { + "hostname" : "datazone.eu-south-2.api.aws" + }, + "eu-west-1" : { + "hostname" : "datazone.eu-west-1.api.aws" + }, + "eu-west-2" : { + "hostname" : "datazone.eu-west-2.api.aws" + }, + "eu-west-3" : { + "hostname" : "datazone.eu-west-3.api.aws" + }, + "il-central-1" : { + "hostname" : "datazone.il-central-1.api.aws" + }, + "me-central-1" : { + "hostname" : "datazone.me-central-1.api.aws" + }, + "me-south-1" : { + "hostname" : "datazone.me-south-1.api.aws" + }, + "sa-east-1" : { + "hostname" : "datazone.sa-east-1.api.aws" + }, + "us-east-1" : { + "hostname" : "datazone.us-east-1.api.aws", + "variants" : [ { + "hostname" : "datazone-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "hostname" : "datazone.us-east-2.api.aws", + "variants" : [ { + "hostname" : "datazone-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "hostname" : "datazone.us-west-1.api.aws" + }, + "us-west-2" : { + "hostname" : "datazone.us-west-2.api.aws", + "variants" : [ { + "hostname" : "datazone-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "dax" : { "endpoints" : { "ap-northeast-1" : { }, @@ -6180,6 +6580,9 @@ "variants" : [ { "hostname" : "elasticmapreduce-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticmapreduce.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { @@ -6218,13 +6621,25 @@ "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "email-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-south-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "email-fips.ca-central-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -6232,6 +6647,20 @@ "deprecated" : true, "hostname" : "email-fips.us-east-1.amazonaws.com" }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "email-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "email-fips.us-west-1.amazonaws.com" + }, "fips-us-west-2" : { "credentialScope" : { "region" : "us-west-2" @@ -6248,8 +6677,18 @@ "tags" : [ "fips" ] } ] }, - "us-east-2" : { }, - "us-west-1" : { }, + "us-east-2" : { + "variants" : [ { + "hostname" : "email-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "email-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "us-west-2" : { "variants" : [ { "hostname" : "email-fips.us-west-2.amazonaws.com", @@ -6264,9 +6703,11 @@ "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "emr-containers-fips.ca-central-1.amazonaws.com", @@ -6314,6 +6755,7 @@ "deprecated" : true, "hostname" : "emr-containers-fips.us-west-2.amazonaws.com" }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -6344,12 +6786,15 @@ }, "emr-serverless" : { "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" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "emr-serverless-fips.ca-central-1.amazonaws.com", @@ -6358,6 +6803,7 @@ }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -6766,8 +7212,13 @@ }, "finspace" : { "endpoints" : { + "ap-northeast-1" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, "ca-central-1" : { }, + "eu-central-1" : { }, "eu-west-1" : { }, + "eu-west-2" : { }, "us-east-1" : { }, "us-east-2" : { }, "us-west-2" : { } @@ -7437,12 +7888,6 @@ "us-west-2" : { } } }, - "gamesparks" : { - "endpoints" : { - "ap-northeast-1" : { }, - "us-east-1" : { } - } - }, "geo" : { "endpoints" : { "ap-northeast-1" : { }, @@ -8174,14 +8619,18 @@ }, "inspector2" : { "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" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, "eu-west-1" : { }, @@ -8803,8 +9252,29 @@ }, "iottwinmaker" : { "endpoints" : { + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "api-ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "hostname" : "api.iottwinmaker.ap-northeast-1.amazonaws.com" + }, + "api-ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "hostname" : "api.iottwinmaker.ap-northeast-2.amazonaws.com" + }, + "api-ap-south-1" : { + "credentialScope" : { + "region" : "ap-south-1" + }, + "hostname" : "api.iottwinmaker.ap-south-1.amazonaws.com" + }, "api-ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" @@ -8841,6 +9311,24 @@ }, "hostname" : "api.iottwinmaker.us-west-2.amazonaws.com" }, + "data-ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "hostname" : "data.iottwinmaker.ap-northeast-1.amazonaws.com" + }, + "data-ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "hostname" : "data.iottwinmaker.ap-northeast-2.amazonaws.com" + }, + "data-ap-south-1" : { + "credentialScope" : { + "region" : "ap-south-1" + }, + "hostname" : "data.iottwinmaker.ap-south-1.amazonaws.com" + }, "data-ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" @@ -10073,13 +10561,17 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -10112,6 +10604,7 @@ "hostname" : "license-manager-fips.us-west-2.amazonaws.com" }, "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -10228,13 +10721,17 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -10267,6 +10764,7 @@ "hostname" : "license-manager-user-subscriptions-fips.us-west-2.amazonaws.com" }, "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -10484,36 +10982,6 @@ "us-east-1" : { } } }, - "macie" : { - "endpoints" : { - "fips-us-east-1" : { - "credentialScope" : { - "region" : "us-east-1" - }, - "deprecated" : true, - "hostname" : "macie-fips.us-east-1.amazonaws.com" - }, - "fips-us-west-2" : { - "credentialScope" : { - "region" : "us-west-2" - }, - "deprecated" : true, - "hostname" : "macie-fips.us-west-2.amazonaws.com" - }, - "us-east-1" : { - "variants" : [ { - "hostname" : "macie-fips.us-east-1.amazonaws.com", - "tags" : [ "fips" ] - } ] - }, - "us-west-2" : { - "variants" : [ { - "hostname" : "macie-fips.us-west-2.amazonaws.com", - "tags" : [ "fips" ] - } ] - } - } - }, "macie2" : { "endpoints" : { "af-south-1" : { }, @@ -10804,6 +11272,7 @@ "endpoints" : { "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, @@ -10824,6 +11293,7 @@ "endpoints" : { "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, @@ -10844,6 +11314,7 @@ "endpoints" : { "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, @@ -10875,8 +11346,14 @@ }, "meetings-chime" : { "endpoints" : { + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, + "eu-west-2" : { }, "il-central-1" : { }, "us-east-1" : { "variants" : [ { @@ -11544,6 +12021,7 @@ "deprecated" : true, "hostname" : "network-firewall-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, @@ -11711,6 +12189,12 @@ }, "hostname" : "oidc.eu-central-1.amazonaws.com" }, + "eu-central-2" : { + "credentialScope" : { + "region" : "eu-central-2" + }, + "hostname" : "oidc.eu-central-2.amazonaws.com" + }, "eu-north-1" : { "credentialScope" : { "region" : "eu-north-1" @@ -11825,6 +12309,12 @@ "deprecated" : true, "hostname" : "omics-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { + "credentialScope" : { + "region" : "il-central-1" + }, + "hostname" : "omics.il-central-1.amazonaws.com" + }, "us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -11905,8 +12395,11 @@ "osis" : { "endpoints" : { "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, @@ -12344,6 +12837,12 @@ }, "hostname" : "portal.sso.eu-central-1.amazonaws.com" }, + "eu-central-2" : { + "credentialScope" : { + "region" : "eu-central-2" + }, + "hostname" : "portal.sso.eu-central-2.amazonaws.com" + }, "eu-north-1" : { "credentialScope" : { "region" : "eu-north-1" @@ -12494,6 +12993,102 @@ "us-west-2" : { } } }, + "qbusiness" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "af-south-1" : { + "hostname" : "qbusiness.af-south-1.api.aws" + }, + "ap-east-1" : { + "hostname" : "qbusiness.ap-east-1.api.aws" + }, + "ap-northeast-1" : { + "hostname" : "qbusiness.ap-northeast-1.api.aws" + }, + "ap-northeast-2" : { + "hostname" : "qbusiness.ap-northeast-2.api.aws" + }, + "ap-northeast-3" : { + "hostname" : "qbusiness.ap-northeast-3.api.aws" + }, + "ap-south-1" : { + "hostname" : "qbusiness.ap-south-1.api.aws" + }, + "ap-south-2" : { + "hostname" : "qbusiness.ap-south-2.api.aws" + }, + "ap-southeast-1" : { + "hostname" : "qbusiness.ap-southeast-1.api.aws" + }, + "ap-southeast-2" : { + "hostname" : "qbusiness.ap-southeast-2.api.aws" + }, + "ap-southeast-3" : { + "hostname" : "qbusiness.ap-southeast-3.api.aws" + }, + "ap-southeast-4" : { + "hostname" : "qbusiness.ap-southeast-4.api.aws" + }, + "ca-central-1" : { + "hostname" : "qbusiness.ca-central-1.api.aws" + }, + "eu-central-1" : { + "hostname" : "qbusiness.eu-central-1.api.aws" + }, + "eu-central-2" : { + "hostname" : "qbusiness.eu-central-2.api.aws" + }, + "eu-north-1" : { + "hostname" : "qbusiness.eu-north-1.api.aws" + }, + "eu-south-1" : { + "hostname" : "qbusiness.eu-south-1.api.aws" + }, + "eu-south-2" : { + "hostname" : "qbusiness.eu-south-2.api.aws" + }, + "eu-west-1" : { + "hostname" : "qbusiness.eu-west-1.api.aws" + }, + "eu-west-2" : { + "hostname" : "qbusiness.eu-west-2.api.aws" + }, + "eu-west-3" : { + "hostname" : "qbusiness.eu-west-3.api.aws" + }, + "il-central-1" : { + "hostname" : "qbusiness.il-central-1.api.aws" + }, + "me-central-1" : { + "hostname" : "qbusiness.me-central-1.api.aws" + }, + "me-south-1" : { + "hostname" : "qbusiness.me-south-1.api.aws" + }, + "sa-east-1" : { + "hostname" : "qbusiness.sa-east-1.api.aws" + }, + "us-east-1" : { + "hostname" : "qbusiness.us-east-1.api.aws" + }, + "us-east-2" : { + "hostname" : "qbusiness.us-east-2.api.aws" + }, + "us-west-1" : { + "hostname" : "qbusiness.us-west-1.api.aws" + }, + "us-west-2" : { + "hostname" : "qbusiness.us-west-2.api.aws" + } + } + }, "qldb" : { "endpoints" : { "ap-northeast-1" : { }, @@ -13312,6 +13907,12 @@ } ] }, "endpoints" : { + "af-south-1" : { + "hostname" : "resource-explorer-2.af-south-1.api.aws" + }, + "ap-east-1" : { + "hostname" : "resource-explorer-2.ap-east-1.api.aws" + }, "ap-northeast-1" : { "hostname" : "resource-explorer-2.ap-northeast-1.api.aws" }, @@ -13333,6 +13934,9 @@ "ap-southeast-2" : { "hostname" : "resource-explorer-2.ap-southeast-2.api.aws" }, + "ap-southeast-3" : { + "hostname" : "resource-explorer-2.ap-southeast-3.api.aws" + }, "ap-southeast-4" : { "hostname" : "resource-explorer-2.ap-southeast-4.api.aws" }, @@ -13348,6 +13952,9 @@ "eu-north-1" : { "hostname" : "resource-explorer-2.eu-north-1.api.aws" }, + "eu-south-1" : { + "hostname" : "resource-explorer-2.eu-south-1.api.aws" + }, "eu-west-1" : { "hostname" : "resource-explorer-2.eu-west-1.api.aws" }, @@ -13360,6 +13967,12 @@ "il-central-1" : { "hostname" : "resource-explorer-2.il-central-1.api.aws" }, + "me-central-1" : { + "hostname" : "resource-explorer-2.me-central-1.api.aws" + }, + "me-south-1" : { + "hostname" : "resource-explorer-2.me-south-1.api.aws" + }, "sa-east-1" : { "hostname" : "resource-explorer-2.sa-east-1.api.aws" }, @@ -14616,12 +15229,16 @@ "endpoints" : { "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-west-1" : { }, "eu-west-2" : { }, + "eu-west-3" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -14832,6 +15449,7 @@ "deprecated" : true, "hostname" : "servicecatalog-appregistry-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, @@ -15255,6 +15873,30 @@ "deprecated" : true, "hostname" : "signer-fips.us-west-2.amazonaws.com" }, + "fips-verification-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "verification.signer-fips.us-east-1.amazonaws.com" + }, + "fips-verification-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "verification.signer-fips.us-east-2.amazonaws.com" + }, + "fips-verification-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "hostname" : "verification.signer-fips.us-west-1.amazonaws.com" + }, + "fips-verification-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "verification.signer-fips.us-west-2.amazonaws.com" + }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -15280,6 +15922,126 @@ "hostname" : "signer-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] } ] + }, + "verification-af-south-1" : { + "credentialScope" : { + "region" : "af-south-1" + }, + "hostname" : "verification.signer.af-south-1.amazonaws.com" + }, + "verification-ap-east-1" : { + "credentialScope" : { + "region" : "ap-east-1" + }, + "hostname" : "verification.signer.ap-east-1.amazonaws.com" + }, + "verification-ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "hostname" : "verification.signer.ap-northeast-1.amazonaws.com" + }, + "verification-ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "hostname" : "verification.signer.ap-northeast-2.amazonaws.com" + }, + "verification-ap-south-1" : { + "credentialScope" : { + "region" : "ap-south-1" + }, + "hostname" : "verification.signer.ap-south-1.amazonaws.com" + }, + "verification-ap-southeast-1" : { + "credentialScope" : { + "region" : "ap-southeast-1" + }, + "hostname" : "verification.signer.ap-southeast-1.amazonaws.com" + }, + "verification-ap-southeast-2" : { + "credentialScope" : { + "region" : "ap-southeast-2" + }, + "hostname" : "verification.signer.ap-southeast-2.amazonaws.com" + }, + "verification-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "hostname" : "verification.signer.ca-central-1.amazonaws.com" + }, + "verification-eu-central-1" : { + "credentialScope" : { + "region" : "eu-central-1" + }, + "hostname" : "verification.signer.eu-central-1.amazonaws.com" + }, + "verification-eu-north-1" : { + "credentialScope" : { + "region" : "eu-north-1" + }, + "hostname" : "verification.signer.eu-north-1.amazonaws.com" + }, + "verification-eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "hostname" : "verification.signer.eu-south-1.amazonaws.com" + }, + "verification-eu-west-1" : { + "credentialScope" : { + "region" : "eu-west-1" + }, + "hostname" : "verification.signer.eu-west-1.amazonaws.com" + }, + "verification-eu-west-2" : { + "credentialScope" : { + "region" : "eu-west-2" + }, + "hostname" : "verification.signer.eu-west-2.amazonaws.com" + }, + "verification-eu-west-3" : { + "credentialScope" : { + "region" : "eu-west-3" + }, + "hostname" : "verification.signer.eu-west-3.amazonaws.com" + }, + "verification-me-south-1" : { + "credentialScope" : { + "region" : "me-south-1" + }, + "hostname" : "verification.signer.me-south-1.amazonaws.com" + }, + "verification-sa-east-1" : { + "credentialScope" : { + "region" : "sa-east-1" + }, + "hostname" : "verification.signer.sa-east-1.amazonaws.com" + }, + "verification-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "verification.signer.us-east-1.amazonaws.com" + }, + "verification-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "verification.signer.us-east-2.amazonaws.com" + }, + "verification-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "hostname" : "verification.signer.us-west-1.amazonaws.com" + }, + "verification-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "verification.signer.us-west-2.amazonaws.com" } } }, @@ -16693,11 +17455,27 @@ } } }, + "thinclient" : { + "endpoints" : { + "ap-south-1" : { }, + "ca-central-1" : { }, + "eu-central-1" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "us-east-1" : { }, + "us-west-2" : { } + } + }, "tnb" : { "endpoints" : { + "ap-northeast-2" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-3" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-west-2" : { } } @@ -17065,6 +17843,7 @@ "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-southeast-1" : { }, + "ap-southeast-2" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "voice-chime-fips.ca-central-1.amazonaws.com", @@ -18294,6 +19073,7 @@ "deprecated" : true, "hostname" : "workspaces-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -18482,6 +19262,16 @@ } } }, + "api.pricing" : { + "defaults" : { + "credentialScope" : { + "service" : "pricing" + } + }, + "endpoints" : { + "cn-northwest-1" : { } + } + }, "api.sagemaker" : { "endpoints" : { "cn-north-1" : { }, @@ -18769,6 +19559,24 @@ "cn-northwest-1" : { } } }, + "datazone" : { + "defaults" : { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "variants" : [ { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "cn-north-1" : { + "hostname" : "datazone.cn-north-1.api.amazonwebservices.com.cn" + }, + "cn-northwest-1" : { + "hostname" : "datazone.cn-northwest-1.api.amazonwebservices.com.cn" + } + } + }, "dax" : { "endpoints" : { "cn-north-1" : { }, @@ -18904,8 +19712,18 @@ "protocols" : [ "https" ] }, "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "elasticmapreduce.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "elasticmapreduce.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "emr-containers" : { @@ -19248,6 +20066,22 @@ "cn-northwest-1" : { } } }, + "oidc" : { + "endpoints" : { + "cn-north-1" : { + "credentialScope" : { + "region" : "cn-north-1" + }, + "hostname" : "oidc.cn-north-1.amazonaws.com.cn" + }, + "cn-northwest-1" : { + "credentialScope" : { + "region" : "cn-northwest-1" + }, + "hostname" : "oidc.cn-northwest-1.amazonaws.com.cn" + } + } + }, "organizations" : { "endpoints" : { "aws-cn-global" : { @@ -19276,6 +20110,40 @@ "cn-northwest-1" : { } } }, + "portal.sso" : { + "endpoints" : { + "cn-north-1" : { + "credentialScope" : { + "region" : "cn-north-1" + }, + "hostname" : "portal.sso.cn-north-1.amazonaws.com.cn" + }, + "cn-northwest-1" : { + "credentialScope" : { + "region" : "cn-northwest-1" + }, + "hostname" : "portal.sso.cn-northwest-1.amazonaws.com.cn" + } + } + }, + "qbusiness" : { + "defaults" : { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "variants" : [ { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "cn-north-1" : { + "hostname" : "qbusiness.cn-north-1.api.amazonwebservices.com.cn" + }, + "cn-northwest-1" : { + "hostname" : "qbusiness.cn-northwest-1.api.amazonwebservices.com.cn" + } + } + }, "ram" : { "endpoints" : { "cn-north-1" : { }, @@ -19300,6 +20168,11 @@ "cn-northwest-1" : { } } }, + "redshift-serverless" : { + "endpoints" : { + "cn-north-1" : { } + } + }, "resource-explorer-2" : { "defaults" : { "dnsSuffix" : "api.amazonwebservices.com.cn", @@ -19499,7 +20372,19 @@ "signer" : { "endpoints" : { "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-northwest-1" : { }, + "verification-cn-north-1" : { + "credentialScope" : { + "region" : "cn-north-1" + }, + "hostname" : "verification.signer.cn-north-1.amazonaws.com.cn" + }, + "verification-cn-northwest-1" : { + "credentialScope" : { + "region" : "cn-northwest-1" + }, + "hostname" : "verification.signer.cn-northwest-1.amazonaws.com.cn" + } } }, "sms" : { @@ -19570,8 +20455,18 @@ }, "states" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "states.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "states.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "storagegateway" : { @@ -20101,8 +20996,32 @@ }, "appconfigdata" : { "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "appconfigdata.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "appconfigdata.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "appconfigdata.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "appconfigdata.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "application-autoscaling" : { @@ -20197,6 +21116,12 @@ } } }, + "arc-zonal-shift" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "athena" : { "endpoints" : { "fips-us-gov-east-1" : { @@ -20624,6 +21549,11 @@ } } }, + "codestar-connections" : { + "endpoints" : { + "us-gov-east-1" : { } + } + }, "cognito-identity" : { "endpoints" : { "fips-us-gov-west-1" : { @@ -20919,6 +21849,24 @@ } } }, + "datazone" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "us-gov-east-1" : { + "hostname" : "datazone.us-gov-east-1.api.aws" + }, + "us-gov-west-1" : { + "hostname" : "datazone.us-gov-west-1.api.aws" + } + } + }, "directconnect" : { "endpoints" : { "us-gov-east-1" : { @@ -21028,6 +21976,36 @@ } } }, + "drs" : { + "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "drs-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "drs-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "drs-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "drs-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "ds" : { "endpoints" : { "fips-us-gov-east-1" : { @@ -21359,6 +22337,9 @@ "variants" : [ { "hostname" : "elasticmapreduce.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticmapreduce.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { @@ -21366,6 +22347,9 @@ "variants" : [ { "hostname" : "elasticmapreduce.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticmapreduce.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -21661,12 +22645,24 @@ "variants" : [ { "hostname" : "glue-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "glue-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "glue.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "glue-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "glue-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "glue.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -22277,12 +23273,24 @@ "variants" : [ { "hostname" : "lakeformation-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "lakeformation-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -22389,6 +23397,26 @@ } } }, + "m2" : { + "endpoints" : { + "fips-us-gov-east-1" : { + "deprecated" : true + }, + "fips-us-gov-west-1" : { + "deprecated" : true + }, + "us-gov-east-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + } + } + }, "managedblockchain" : { "endpoints" : { "us-gov-west-1" : { } @@ -22800,6 +23828,24 @@ } } }, + "qbusiness" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "us-gov-east-1" : { + "hostname" : "qbusiness.us-gov-east-1.api.aws" + }, + "us-gov-west-1" : { + "hostname" : "qbusiness.us-gov-west-1.api.aws" + } + } + }, "quicksight" : { "endpoints" : { "api" : { }, @@ -22974,6 +24020,36 @@ } } }, + "resiliencehub" : { + "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "resiliencehub-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "resiliencehub-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "resiliencehub-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "resiliencehub-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "resource-explorer-2" : { "defaults" : { "dnsSuffix" : "api.aws", @@ -23033,6 +24109,12 @@ "us-gov-west-1" : { } } }, + "rolesanywhere" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "route53" : { "endpoints" : { "aws-us-gov-global" : { @@ -23504,8 +24586,32 @@ }, "simspaceweaver" : { "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "simspaceweaver.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "simspaceweaver.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "simspaceweaver.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "simspaceweaver.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "sms" : { @@ -23669,12 +24775,34 @@ "credentialScope" : { "region" : "us-gov-east-1" }, + "hostname" : "sso.us-gov-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "sso.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-east-1-fips" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, "hostname" : "sso.us-gov-east-1.amazonaws.com" }, "us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" }, + "hostname" : "sso.us-gov-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "sso.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1-fips" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, "hostname" : "sso.us-gov-west-1.amazonaws.com" } } @@ -24316,6 +25444,23 @@ "us-iso-east-1" : { } } }, + "datasync" : { + "endpoints" : { + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "datasync-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "datasync-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } + } + }, "directconnect" : { "endpoints" : { "us-iso-east-1" : { }, @@ -24397,7 +25542,8 @@ }, "ebs" : { "endpoints" : { - "us-iso-east-1" : { } + "us-iso-east-1" : { }, + "us-iso-west-1" : { } } }, "ec2" : { @@ -24669,14 +25815,96 @@ }, "rds" : { "endpoints" : { - "us-iso-east-1" : { }, - "us-iso-west-1" : { } + "rds-fips.us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "rds-fips.us-iso-east-1.c2s.ic.gov" + }, + "rds-fips.us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "rds-fips.us-iso-west-1.c2s.ic.gov" + }, + "rds.us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "variants" : [ { + "hostname" : "rds-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "rds.us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "variants" : [ { + "hostname" : "rds-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "rds-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-east-1-fips" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "rds-fips.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "rds-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1-fips" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "rds-fips.us-iso-west-1.c2s.ic.gov" + } } }, "redshift" : { "endpoints" : { - "us-iso-east-1" : { }, - "us-iso-west-1" : { } + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "redshift-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "redshift-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "redshift-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "redshift-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "resource-groups" : { @@ -24864,6 +26092,11 @@ } } }, + "api.sagemaker" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, "appconfig" : { "endpoints" : { "us-isob-east-1" : { } @@ -24890,6 +26123,11 @@ "us-isob-east-1" : { } } }, + "cloudcontrolapi" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, "cloudformation" : { "endpoints" : { "us-isob-east-1" : { } @@ -25170,12 +26408,53 @@ }, "rds" : { "endpoints" : { - "us-isob-east-1" : { } + "rds-fips.us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "rds-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "rds.us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "variants" : [ { + "hostname" : "rds-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "rds-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "rds-fips.us-isob-east-1.sc2s.sgov.gov" + } } }, "redshift" : { "endpoints" : { - "us-isob-east-1" : { } + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "redshift-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "redshift-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } } }, "resource-groups" : { @@ -25199,6 +26478,11 @@ "endpoints" : { "us-isob-east-1" : { } } + }, + "runtime.sagemaker" : { + "endpoints" : { + "us-isob-east-1" : { } + } }, "s3" : { "defaults" : { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/private/model/cli/gen-api/main.go golang-github-aws-aws-sdk-go-1.48.14/private/model/cli/gen-api/main.go --- golang-github-aws-aws-sdk-go-1.45.14/private/model/cli/gen-api/main.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/private/model/cli/gen-api/main.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,20 +4,21 @@ // Command aws-gen-gocli parses a JSON description of an AWS API and generates a // Go file containing a client for the API. // -// aws-gen-gocli apis/s3/2006-03-03/api-2.json +// aws-gen-gocli apis/s3/2006-03-03/api-2.json package main import ( "flag" "fmt" - "github.com/aws/aws-sdk-go/private/model/api" - "github.com/aws/aws-sdk-go/private/util" "io/ioutil" "os" "path/filepath" "runtime/debug" "strings" "sync" + + "github.com/aws/aws-sdk-go/private/model/api" + "github.com/aws/aws-sdk-go/private/util" ) func usage() { @@ -43,7 +44,8 @@ // -path alternative service path to write generated files to for each service. // // Env: -// SERVICES comma separated list of services to generate. +// +// SERVICES comma separated list of services to generate. func main() { var svcPath, svcImportPath string flag.StringVar(&svcPath, "path", "service", @@ -162,7 +164,7 @@ defer func() { if r := recover(); r != nil { fmt.Fprintf(os.Stderr, "Error generating %s\n%s\n%s\n", - pkgDir, r, string(debug.Stack())) + pkgDir, r, string(debug.Stack())) os.Exit(1) } }() @@ -180,7 +182,10 @@ Must(writeExamplesFile(g)) if g.API.HasEventStream { - Must(writeAPIEventStreamTestFile(g)) + // has stream APIs with host prefix, which our tests break on, skip codegen for now + if g.API.PackageName() != "cloudwatchlogs" { + Must(writeAPIEventStreamTestFile(g)) + } } if g.API.PackageName() == "s3" { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/accessanalyzeriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/accessanalyzeriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/accessanalyzeriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/accessanalyzeriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -68,6 +68,14 @@ CancelPolicyGenerationWithContext(aws.Context, *accessanalyzer.CancelPolicyGenerationInput, ...request.Option) (*accessanalyzer.CancelPolicyGenerationOutput, error) CancelPolicyGenerationRequest(*accessanalyzer.CancelPolicyGenerationInput) (*request.Request, *accessanalyzer.CancelPolicyGenerationOutput) + CheckAccessNotGranted(*accessanalyzer.CheckAccessNotGrantedInput) (*accessanalyzer.CheckAccessNotGrantedOutput, error) + CheckAccessNotGrantedWithContext(aws.Context, *accessanalyzer.CheckAccessNotGrantedInput, ...request.Option) (*accessanalyzer.CheckAccessNotGrantedOutput, error) + CheckAccessNotGrantedRequest(*accessanalyzer.CheckAccessNotGrantedInput) (*request.Request, *accessanalyzer.CheckAccessNotGrantedOutput) + + CheckNoNewAccess(*accessanalyzer.CheckNoNewAccessInput) (*accessanalyzer.CheckNoNewAccessOutput, error) + CheckNoNewAccessWithContext(aws.Context, *accessanalyzer.CheckNoNewAccessInput, ...request.Option) (*accessanalyzer.CheckNoNewAccessOutput, error) + CheckNoNewAccessRequest(*accessanalyzer.CheckNoNewAccessInput) (*request.Request, *accessanalyzer.CheckNoNewAccessOutput) + CreateAccessPreview(*accessanalyzer.CreateAccessPreviewInput) (*accessanalyzer.CreateAccessPreviewOutput, error) CreateAccessPreviewWithContext(aws.Context, *accessanalyzer.CreateAccessPreviewInput, ...request.Option) (*accessanalyzer.CreateAccessPreviewOutput, error) CreateAccessPreviewRequest(*accessanalyzer.CreateAccessPreviewInput) (*request.Request, *accessanalyzer.CreateAccessPreviewOutput) @@ -108,6 +116,13 @@ GetFindingWithContext(aws.Context, *accessanalyzer.GetFindingInput, ...request.Option) (*accessanalyzer.GetFindingOutput, error) GetFindingRequest(*accessanalyzer.GetFindingInput) (*request.Request, *accessanalyzer.GetFindingOutput) + GetFindingV2(*accessanalyzer.GetFindingV2Input) (*accessanalyzer.GetFindingV2Output, error) + GetFindingV2WithContext(aws.Context, *accessanalyzer.GetFindingV2Input, ...request.Option) (*accessanalyzer.GetFindingV2Output, error) + GetFindingV2Request(*accessanalyzer.GetFindingV2Input) (*request.Request, *accessanalyzer.GetFindingV2Output) + + GetFindingV2Pages(*accessanalyzer.GetFindingV2Input, func(*accessanalyzer.GetFindingV2Output, bool) bool) error + GetFindingV2PagesWithContext(aws.Context, *accessanalyzer.GetFindingV2Input, func(*accessanalyzer.GetFindingV2Output, bool) bool, ...request.Option) error + GetGeneratedPolicy(*accessanalyzer.GetGeneratedPolicyInput) (*accessanalyzer.GetGeneratedPolicyOutput, error) GetGeneratedPolicyWithContext(aws.Context, *accessanalyzer.GetGeneratedPolicyInput, ...request.Option) (*accessanalyzer.GetGeneratedPolicyOutput, error) GetGeneratedPolicyRequest(*accessanalyzer.GetGeneratedPolicyInput) (*request.Request, *accessanalyzer.GetGeneratedPolicyOutput) @@ -154,6 +169,13 @@ ListFindingsPages(*accessanalyzer.ListFindingsInput, func(*accessanalyzer.ListFindingsOutput, bool) bool) error ListFindingsPagesWithContext(aws.Context, *accessanalyzer.ListFindingsInput, func(*accessanalyzer.ListFindingsOutput, bool) bool, ...request.Option) error + ListFindingsV2(*accessanalyzer.ListFindingsV2Input) (*accessanalyzer.ListFindingsV2Output, error) + ListFindingsV2WithContext(aws.Context, *accessanalyzer.ListFindingsV2Input, ...request.Option) (*accessanalyzer.ListFindingsV2Output, error) + ListFindingsV2Request(*accessanalyzer.ListFindingsV2Input) (*request.Request, *accessanalyzer.ListFindingsV2Output) + + ListFindingsV2Pages(*accessanalyzer.ListFindingsV2Input, func(*accessanalyzer.ListFindingsV2Output, bool) bool) error + ListFindingsV2PagesWithContext(aws.Context, *accessanalyzer.ListFindingsV2Input, func(*accessanalyzer.ListFindingsV2Output, bool) bool, ...request.Option) error + ListPolicyGenerations(*accessanalyzer.ListPolicyGenerationsInput) (*accessanalyzer.ListPolicyGenerationsOutput, error) ListPolicyGenerationsWithContext(aws.Context, *accessanalyzer.ListPolicyGenerationsInput, ...request.Option) (*accessanalyzer.ListPolicyGenerationsOutput, error) ListPolicyGenerationsRequest(*accessanalyzer.ListPolicyGenerationsInput) (*request.Request, *accessanalyzer.ListPolicyGenerationsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/api.go golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -195,6 +195,201 @@ return out, req.Send() } +const opCheckAccessNotGranted = "CheckAccessNotGranted" + +// CheckAccessNotGrantedRequest generates a "aws/request.Request" representing the +// client's request for the CheckAccessNotGranted 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 CheckAccessNotGranted for more information on using the CheckAccessNotGranted +// 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 CheckAccessNotGrantedRequest method. +// req, resp := client.CheckAccessNotGrantedRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/CheckAccessNotGranted +func (c *AccessAnalyzer) CheckAccessNotGrantedRequest(input *CheckAccessNotGrantedInput) (req *request.Request, output *CheckAccessNotGrantedOutput) { + op := &request.Operation{ + Name: opCheckAccessNotGranted, + HTTPMethod: "POST", + HTTPPath: "/policy/check-access-not-granted", + } + + if input == nil { + input = &CheckAccessNotGrantedInput{} + } + + output = &CheckAccessNotGrantedOutput{} + req = c.newRequest(op, input, output) + return +} + +// CheckAccessNotGranted API operation for Access Analyzer. +// +// Checks whether the specified access isn't allowed by a 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 Access Analyzer's +// API operation CheckAccessNotGranted for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Validation exception error. +// +// - InternalServerException +// Internal server error. +// +// - InvalidParameterException +// The specified parameter is invalid. +// +// - UnprocessableEntityException +// The specified entity could not be processed. +// +// - ThrottlingException +// Throttling limit exceeded error. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/CheckAccessNotGranted +func (c *AccessAnalyzer) CheckAccessNotGranted(input *CheckAccessNotGrantedInput) (*CheckAccessNotGrantedOutput, error) { + req, out := c.CheckAccessNotGrantedRequest(input) + return out, req.Send() +} + +// CheckAccessNotGrantedWithContext is the same as CheckAccessNotGranted with the addition of +// the ability to pass a context and additional request options. +// +// See CheckAccessNotGranted 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 *AccessAnalyzer) CheckAccessNotGrantedWithContext(ctx aws.Context, input *CheckAccessNotGrantedInput, opts ...request.Option) (*CheckAccessNotGrantedOutput, error) { + req, out := c.CheckAccessNotGrantedRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCheckNoNewAccess = "CheckNoNewAccess" + +// CheckNoNewAccessRequest generates a "aws/request.Request" representing the +// client's request for the CheckNoNewAccess 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 CheckNoNewAccess for more information on using the CheckNoNewAccess +// 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 CheckNoNewAccessRequest method. +// req, resp := client.CheckNoNewAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/CheckNoNewAccess +func (c *AccessAnalyzer) CheckNoNewAccessRequest(input *CheckNoNewAccessInput) (req *request.Request, output *CheckNoNewAccessOutput) { + op := &request.Operation{ + Name: opCheckNoNewAccess, + HTTPMethod: "POST", + HTTPPath: "/policy/check-no-new-access", + } + + if input == nil { + input = &CheckNoNewAccessInput{} + } + + output = &CheckNoNewAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// CheckNoNewAccess API operation for Access Analyzer. +// +// Checks whether new access is allowed for an updated policy when compared +// to the existing policy. +// +// You can find examples for reference policies and learn how to set up and +// run a custom policy check for new access in the IAM Access Analyzer custom +// policy checks samples (https://github.com/aws-samples/iam-access-analyzer-custom-policy-check-samples) +// repository on GitHub. The reference policies in this repository are meant +// to be passed to the existingPolicyDocument request parameter. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Access Analyzer's +// API operation CheckNoNewAccess for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Validation exception error. +// +// - InternalServerException +// Internal server error. +// +// - InvalidParameterException +// The specified parameter is invalid. +// +// - UnprocessableEntityException +// The specified entity could not be processed. +// +// - ThrottlingException +// Throttling limit exceeded error. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/CheckNoNewAccess +func (c *AccessAnalyzer) CheckNoNewAccess(input *CheckNoNewAccessInput) (*CheckNoNewAccessOutput, error) { + req, out := c.CheckNoNewAccessRequest(input) + return out, req.Send() +} + +// CheckNoNewAccessWithContext is the same as CheckNoNewAccess with the addition of +// the ability to pass a context and additional request options. +// +// See CheckNoNewAccess 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 *AccessAnalyzer) CheckNoNewAccessWithContext(ctx aws.Context, input *CheckNoNewAccessInput, opts ...request.Option) (*CheckNoNewAccessOutput, error) { + req, out := c.CheckNoNewAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateAccessPreview = "CreateAccessPreview" // CreateAccessPreviewRequest generates a "aws/request.Request" representing the @@ -1137,6 +1332,154 @@ return out, req.Send() } +const opGetFindingV2 = "GetFindingV2" + +// GetFindingV2Request generates a "aws/request.Request" representing the +// client's request for the GetFindingV2 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 GetFindingV2 for more information on using the GetFindingV2 +// 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 GetFindingV2Request method. +// req, resp := client.GetFindingV2Request(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/GetFindingV2 +func (c *AccessAnalyzer) GetFindingV2Request(input *GetFindingV2Input) (req *request.Request, output *GetFindingV2Output) { + op := &request.Operation{ + Name: opGetFindingV2, + HTTPMethod: "GET", + HTTPPath: "/findingv2/{id}", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetFindingV2Input{} + } + + output = &GetFindingV2Output{} + req = c.newRequest(op, input, output) + return +} + +// GetFindingV2 API operation for Access Analyzer. +// +// Retrieves information about the specified finding. +// +// 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 Access Analyzer's +// API operation GetFindingV2 for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource could not be found. +// +// - ValidationException +// Validation exception error. +// +// - InternalServerException +// Internal server error. +// +// - ThrottlingException +// Throttling limit exceeded error. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/GetFindingV2 +func (c *AccessAnalyzer) GetFindingV2(input *GetFindingV2Input) (*GetFindingV2Output, error) { + req, out := c.GetFindingV2Request(input) + return out, req.Send() +} + +// GetFindingV2WithContext is the same as GetFindingV2 with the addition of +// the ability to pass a context and additional request options. +// +// See GetFindingV2 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 *AccessAnalyzer) GetFindingV2WithContext(ctx aws.Context, input *GetFindingV2Input, opts ...request.Option) (*GetFindingV2Output, error) { + req, out := c.GetFindingV2Request(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetFindingV2Pages iterates over the pages of a GetFindingV2 operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetFindingV2 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 GetFindingV2 operation. +// pageNum := 0 +// err := client.GetFindingV2Pages(params, +// func(page *accessanalyzer.GetFindingV2Output, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AccessAnalyzer) GetFindingV2Pages(input *GetFindingV2Input, fn func(*GetFindingV2Output, bool) bool) error { + return c.GetFindingV2PagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetFindingV2PagesWithContext same as GetFindingV2Pages 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 *AccessAnalyzer) GetFindingV2PagesWithContext(ctx aws.Context, input *GetFindingV2Input, fn func(*GetFindingV2Output, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetFindingV2Input + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetFindingV2Request(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetFindingV2Output), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opGetGeneratedPolicy = "GetGeneratedPolicy" // GetGeneratedPolicyRequest generates a "aws/request.Request" representing the @@ -2116,6 +2459,158 @@ return p.Err() } +const opListFindingsV2 = "ListFindingsV2" + +// ListFindingsV2Request generates a "aws/request.Request" representing the +// client's request for the ListFindingsV2 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 ListFindingsV2 for more information on using the ListFindingsV2 +// 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 ListFindingsV2Request method. +// req, resp := client.ListFindingsV2Request(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/ListFindingsV2 +func (c *AccessAnalyzer) ListFindingsV2Request(input *ListFindingsV2Input) (req *request.Request, output *ListFindingsV2Output) { + op := &request.Operation{ + Name: opListFindingsV2, + HTTPMethod: "POST", + HTTPPath: "/findingv2", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListFindingsV2Input{} + } + + output = &ListFindingsV2Output{} + req = c.newRequest(op, input, output) + return +} + +// ListFindingsV2 API operation for Access Analyzer. +// +// Retrieves a list of findings generated by the specified analyzer. +// +// To learn about filter keys that you can use to retrieve a list of findings, +// see IAM Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) +// in the IAM User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Access Analyzer's +// API operation ListFindingsV2 for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource could not be found. +// +// - ValidationException +// Validation exception error. +// +// - InternalServerException +// Internal server error. +// +// - ThrottlingException +// Throttling limit exceeded error. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/ListFindingsV2 +func (c *AccessAnalyzer) ListFindingsV2(input *ListFindingsV2Input) (*ListFindingsV2Output, error) { + req, out := c.ListFindingsV2Request(input) + return out, req.Send() +} + +// ListFindingsV2WithContext is the same as ListFindingsV2 with the addition of +// the ability to pass a context and additional request options. +// +// See ListFindingsV2 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 *AccessAnalyzer) ListFindingsV2WithContext(ctx aws.Context, input *ListFindingsV2Input, opts ...request.Option) (*ListFindingsV2Output, error) { + req, out := c.ListFindingsV2Request(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListFindingsV2Pages iterates over the pages of a ListFindingsV2 operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListFindingsV2 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 ListFindingsV2 operation. +// pageNum := 0 +// err := client.ListFindingsV2Pages(params, +// func(page *accessanalyzer.ListFindingsV2Output, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AccessAnalyzer) ListFindingsV2Pages(input *ListFindingsV2Input, fn func(*ListFindingsV2Output, bool) bool) error { + return c.ListFindingsV2PagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListFindingsV2PagesWithContext same as ListFindingsV2Pages 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 *AccessAnalyzer) ListFindingsV2PagesWithContext(ctx aws.Context, input *ListFindingsV2Input, fn func(*ListFindingsV2Output, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListFindingsV2Input + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListFindingsV2Request(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListFindingsV2Output), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListPolicyGenerations = "ListPolicyGenerations" // ListPolicyGenerationsRequest generates a "aws/request.Request" representing the @@ -3054,6 +3549,54 @@ return p.Err() } +// Contains information about actions that define permissions to check against +// a policy. +type Access struct { + _ struct{} `type:"structure"` + + // A list of actions for the access permissions. + // + // Actions is a required field + Actions []*string `locationName:"actions" 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 Access) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Access) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Access) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Access"} + if s.Actions == nil { + invalidParams.Add(request.NewErrParamRequired("Actions")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActions sets the Actions field's value. +func (s *Access) SetActions(v []*string) *Access { + s.Actions = v + return s +} + // You do not have sufficient access to perform this action. type AccessDeniedException struct { _ struct{} `type:"structure"` @@ -3773,6 +4316,41 @@ return s } +// Contains information about the configuration of an unused access analyzer +// for an Amazon Web Services organization or account. +type AnalyzerConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies the configuration of an unused access analyzer for an Amazon Web + // Services organization or account. External access analyzers do not support + // any configuration. + UnusedAccess *UnusedAccessConfiguration `locationName:"unusedAccess" 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 AnalyzerConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyzerConfiguration) GoString() string { + return s.String() +} + +// SetUnusedAccess sets the UnusedAccess field's value. +func (s *AnalyzerConfiguration) SetUnusedAccess(v *UnusedAccessConfiguration) *AnalyzerConfiguration { + s.UnusedAccess = v + return s +} + // Contains information about the analyzer. type AnalyzerSummary struct { _ struct{} `type:"structure"` @@ -3782,6 +4360,9 @@ // Arn is a required field Arn *string `locationName:"arn" type:"string" required:"true"` + // Specifies whether the analyzer is an external access or unused access analyzer. + Configuration *AnalyzerConfiguration `locationName:"configuration" type:"structure"` + // A timestamp for the time at which the analyzer was created. // // CreatedAt is a required field @@ -3849,6 +4430,12 @@ return s } +// SetConfiguration sets the Configuration field's value. +func (s *AnalyzerSummary) SetConfiguration(v *AnalyzerConfiguration) *AnalyzerSummary { + s.Configuration = v + return s +} + // SetCreatedAt sets the CreatedAt field's value. func (s *AnalyzerSummary) SetCreatedAt(v time.Time) *AnalyzerSummary { s.CreatedAt = &v @@ -4132,6 +4719,294 @@ return s.String() } +type CheckAccessNotGrantedInput struct { + _ struct{} `type:"structure"` + + // An access object containing the permissions that shouldn't be granted by + // the specified policy. + // + // Access is a required field + Access []*Access `locationName:"access" type:"list" required:"true"` + + // The JSON policy document to use as the content for the policy. + // + // PolicyDocument is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CheckAccessNotGrantedInput's + // String and GoString methods. + // + // PolicyDocument is a required field + PolicyDocument *string `locationName:"policyDocument" type:"string" required:"true" sensitive:"true"` + + // The type of policy. Identity policies grant permissions to IAM principals. + // Identity policies include managed and inline policies for IAM roles, users, + // and groups. + // + // Resource policies grant permissions on Amazon Web Services resources. Resource + // policies include trust policies for IAM roles and bucket policies for Amazon + // S3 buckets. You can provide a generic input such as identity policy or resource + // policy or a specific input such as managed policy or Amazon S3 bucket policy. + // + // PolicyType is a required field + PolicyType *string `locationName:"policyType" type:"string" required:"true" enum:"AccessCheckPolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckAccessNotGrantedInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckAccessNotGrantedInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CheckAccessNotGrantedInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CheckAccessNotGrantedInput"} + if s.Access == nil { + invalidParams.Add(request.NewErrParamRequired("Access")) + } + if s.PolicyDocument == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) + } + if s.PolicyType == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyType")) + } + if s.Access != nil { + for i, v := range s.Access { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Access", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccess sets the Access field's value. +func (s *CheckAccessNotGrantedInput) SetAccess(v []*Access) *CheckAccessNotGrantedInput { + s.Access = v + return s +} + +// SetPolicyDocument sets the PolicyDocument field's value. +func (s *CheckAccessNotGrantedInput) SetPolicyDocument(v string) *CheckAccessNotGrantedInput { + s.PolicyDocument = &v + return s +} + +// SetPolicyType sets the PolicyType field's value. +func (s *CheckAccessNotGrantedInput) SetPolicyType(v string) *CheckAccessNotGrantedInput { + s.PolicyType = &v + return s +} + +type CheckAccessNotGrantedOutput struct { + _ struct{} `type:"structure"` + + // The message indicating whether the specified access is allowed. + Message *string `locationName:"message" type:"string"` + + // A description of the reasoning of the result. + Reasons []*ReasonSummary `locationName:"reasons" type:"list"` + + // The result of the check for whether the access is allowed. If the result + // is PASS, the specified policy doesn't allow any of the specified permissions + // in the access object. If the result is FAIL, the specified policy might allow + // some or all of the permissions in the access object. + Result *string `locationName:"result" type:"string" enum:"CheckAccessNotGrantedResult"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckAccessNotGrantedOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckAccessNotGrantedOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *CheckAccessNotGrantedOutput) SetMessage(v string) *CheckAccessNotGrantedOutput { + s.Message = &v + return s +} + +// SetReasons sets the Reasons field's value. +func (s *CheckAccessNotGrantedOutput) SetReasons(v []*ReasonSummary) *CheckAccessNotGrantedOutput { + s.Reasons = v + return s +} + +// SetResult sets the Result field's value. +func (s *CheckAccessNotGrantedOutput) SetResult(v string) *CheckAccessNotGrantedOutput { + s.Result = &v + return s +} + +type CheckNoNewAccessInput struct { + _ struct{} `type:"structure"` + + // The JSON policy document to use as the content for the existing policy. + // + // ExistingPolicyDocument is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CheckNoNewAccessInput's + // String and GoString methods. + // + // ExistingPolicyDocument is a required field + ExistingPolicyDocument *string `locationName:"existingPolicyDocument" type:"string" required:"true" sensitive:"true"` + + // The JSON policy document to use as the content for the updated policy. + // + // NewPolicyDocument is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CheckNoNewAccessInput's + // String and GoString methods. + // + // NewPolicyDocument is a required field + NewPolicyDocument *string `locationName:"newPolicyDocument" type:"string" required:"true" sensitive:"true"` + + // The type of policy to compare. Identity policies grant permissions to IAM + // principals. Identity policies include managed and inline policies for IAM + // roles, users, and groups. + // + // Resource policies grant permissions on Amazon Web Services resources. Resource + // policies include trust policies for IAM roles and bucket policies for Amazon + // S3 buckets. You can provide a generic input such as identity policy or resource + // policy or a specific input such as managed policy or Amazon S3 bucket policy. + // + // PolicyType is a required field + PolicyType *string `locationName:"policyType" type:"string" required:"true" enum:"AccessCheckPolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckNoNewAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckNoNewAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CheckNoNewAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CheckNoNewAccessInput"} + if s.ExistingPolicyDocument == nil { + invalidParams.Add(request.NewErrParamRequired("ExistingPolicyDocument")) + } + if s.NewPolicyDocument == nil { + invalidParams.Add(request.NewErrParamRequired("NewPolicyDocument")) + } + if s.PolicyType == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExistingPolicyDocument sets the ExistingPolicyDocument field's value. +func (s *CheckNoNewAccessInput) SetExistingPolicyDocument(v string) *CheckNoNewAccessInput { + s.ExistingPolicyDocument = &v + return s +} + +// SetNewPolicyDocument sets the NewPolicyDocument field's value. +func (s *CheckNoNewAccessInput) SetNewPolicyDocument(v string) *CheckNoNewAccessInput { + s.NewPolicyDocument = &v + return s +} + +// SetPolicyType sets the PolicyType field's value. +func (s *CheckNoNewAccessInput) SetPolicyType(v string) *CheckNoNewAccessInput { + s.PolicyType = &v + return s +} + +type CheckNoNewAccessOutput struct { + _ struct{} `type:"structure"` + + // The message indicating whether the updated policy allows new access. + Message *string `locationName:"message" type:"string"` + + // A description of the reasoning of the result. + Reasons []*ReasonSummary `locationName:"reasons" type:"list"` + + // The result of the check for new access. If the result is PASS, no new access + // is allowed by the updated policy. If the result is FAIL, the updated policy + // might allow new access. + Result *string `locationName:"result" type:"string" enum:"CheckNoNewAccessResult"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckNoNewAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckNoNewAccessOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *CheckNoNewAccessOutput) SetMessage(v string) *CheckNoNewAccessOutput { + s.Message = &v + return s +} + +// SetReasons sets the Reasons field's value. +func (s *CheckNoNewAccessOutput) SetReasons(v []*ReasonSummary) *CheckNoNewAccessOutput { + s.Reasons = v + return s +} + +// SetResult sets the Result field's value. +func (s *CheckNoNewAccessOutput) SetResult(v string) *CheckNoNewAccessOutput { + s.Result = &v + return s +} + // Contains information about CloudTrail access. type CloudTrailDetails struct { _ struct{} `type:"structure"` @@ -4320,9 +5195,12 @@ // The access control configuration is for an Amazon RDS DB snapshot. RdsDbSnapshot *RdsDbSnapshotConfiguration `locationName:"rdsDbSnapshot" type:"structure"` - // The access control configuration is for an Amazon S3 Bucket. + // The access control configuration is for an Amazon S3 bucket. S3Bucket *S3BucketConfiguration `locationName:"s3Bucket" type:"structure"` + // The access control configuration is for an Amazon S3 directory bucket. + S3ExpressDirectoryBucket *S3ExpressDirectoryBucketConfiguration `locationName:"s3ExpressDirectoryBucket" type:"structure"` + // The access control configuration is for a Secrets Manager secret. SecretsManagerSecret *SecretsManagerSecretConfiguration `locationName:"secretsManagerSecret" type:"structure"` @@ -4419,6 +5297,12 @@ return s } +// SetS3ExpressDirectoryBucket sets the S3ExpressDirectoryBucket field's value. +func (s *Configuration) SetS3ExpressDirectoryBucket(v *S3ExpressDirectoryBucketConfiguration) *Configuration { + s.S3ExpressDirectoryBucket = v + return s +} + // SetSecretsManagerSecret sets the SecretsManagerSecret field's value. func (s *Configuration) SetSecretsManagerSecret(v *SecretsManagerSecretConfiguration) *Configuration { s.SecretsManagerSecret = v @@ -4644,12 +5528,18 @@ // A client token. ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // The tags to apply to the analyzer. + // Specifies the configuration of the analyzer. If the analyzer is an unused + // access analyzer, the specified scope of unused access is used for the configuration. + // If the analyzer is an external access analyzer, this field is not used. + Configuration *AnalyzerConfiguration `locationName:"configuration" type:"structure"` + + // An array of key-value pairs to apply to the analyzer. Tags map[string]*string `locationName:"tags" type:"map"` - // The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - // supported. You can create only one analyzer per account per Region. You can - // create up to 5 analyzers per organization per Region. + // The type of analyzer to create. Only ACCOUNT, ORGANIZATION, ACCOUNT_UNUSED_ACCESS, + // and ORGANIZTAION_UNUSED_ACCESS analyzers are supported. You can create only + // one analyzer per account per Region. You can create up to 5 analyzers per + // organization per Region. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"Type"` @@ -4720,6 +5610,12 @@ return s } +// SetConfiguration sets the Configuration field's value. +func (s *CreateAnalyzerInput) SetConfiguration(v *AnalyzerConfiguration) *CreateAnalyzerInput { + s.Configuration = v + return s +} + // SetTags sets the Tags field's value. func (s *CreateAnalyzerInput) SetTags(v map[string]*string) *CreateAnalyzerInput { s.Tags = v @@ -5326,6 +6222,80 @@ return s } +// Contains information about an external access finding. +type ExternalAccessDetails struct { + _ struct{} `type:"structure"` + + // The action in the analyzed policy statement that an external principal has + // permission to use. + Action []*string `locationName:"action" type:"list"` + + // The condition in the analyzed policy statement that resulted in an external + // access finding. + // + // Condition is a required field + Condition map[string]*string `locationName:"condition" type:"map" required:"true"` + + // Specifies whether the external access finding is public. + IsPublic *bool `locationName:"isPublic" type:"boolean"` + + // The external principal that has access to a resource within the zone of trust. + Principal map[string]*string `locationName:"principal" type:"map"` + + // The sources of the external access finding. This indicates how the access + // that generated the finding is granted. It is populated for Amazon S3 bucket + // findings. + Sources []*FindingSource `locationName:"sources" 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 ExternalAccessDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalAccessDetails) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *ExternalAccessDetails) SetAction(v []*string) *ExternalAccessDetails { + s.Action = v + return s +} + +// SetCondition sets the Condition field's value. +func (s *ExternalAccessDetails) SetCondition(v map[string]*string) *ExternalAccessDetails { + s.Condition = v + return s +} + +// SetIsPublic sets the IsPublic field's value. +func (s *ExternalAccessDetails) SetIsPublic(v bool) *ExternalAccessDetails { + s.IsPublic = &v + return s +} + +// SetPrincipal sets the Principal field's value. +func (s *ExternalAccessDetails) SetPrincipal(v map[string]*string) *ExternalAccessDetails { + s.Principal = v + return s +} + +// SetSources sets the Sources field's value. +func (s *ExternalAccessDetails) SetSources(v []*FindingSource) *ExternalAccessDetails { + s.Sources = v + return s +} + // Contains information about a finding. type Finding struct { _ struct{} `type:"structure"` @@ -5361,7 +6331,7 @@ // to the resource. IsPublic *bool `locationName:"isPublic" type:"boolean"` - // The external principal that access to a resource within the zone of trust. + // The external principal that has access to a resource within the zone of trust. Principal map[string]*string `locationName:"principal" type:"map"` // The resource that an external principal has access to. @@ -5494,6 +6464,79 @@ return s } +// Contains information about an external access or unused access finding. Only +// one parameter can be used in a FindingDetails object. +type FindingDetails struct { + _ struct{} `type:"structure"` + + // The details for an external access analyzer finding. + ExternalAccessDetails *ExternalAccessDetails `locationName:"externalAccessDetails" type:"structure"` + + // The details for an unused access analyzer finding with an unused IAM role + // finding type. + UnusedIamRoleDetails *UnusedIamRoleDetails `locationName:"unusedIamRoleDetails" type:"structure"` + + // The details for an unused access analyzer finding with an unused IAM user + // access key finding type. + UnusedIamUserAccessKeyDetails *UnusedIamUserAccessKeyDetails `locationName:"unusedIamUserAccessKeyDetails" type:"structure"` + + // The details for an unused access analyzer finding with an unused IAM user + // password finding type. + UnusedIamUserPasswordDetails *UnusedIamUserPasswordDetails `locationName:"unusedIamUserPasswordDetails" type:"structure"` + + // The details for an unused access analyzer finding with an unused permission + // finding type. + UnusedPermissionDetails *UnusedPermissionDetails `locationName:"unusedPermissionDetails" 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 FindingDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FindingDetails) GoString() string { + return s.String() +} + +// SetExternalAccessDetails sets the ExternalAccessDetails field's value. +func (s *FindingDetails) SetExternalAccessDetails(v *ExternalAccessDetails) *FindingDetails { + s.ExternalAccessDetails = v + return s +} + +// SetUnusedIamRoleDetails sets the UnusedIamRoleDetails field's value. +func (s *FindingDetails) SetUnusedIamRoleDetails(v *UnusedIamRoleDetails) *FindingDetails { + s.UnusedIamRoleDetails = v + return s +} + +// SetUnusedIamUserAccessKeyDetails sets the UnusedIamUserAccessKeyDetails field's value. +func (s *FindingDetails) SetUnusedIamUserAccessKeyDetails(v *UnusedIamUserAccessKeyDetails) *FindingDetails { + s.UnusedIamUserAccessKeyDetails = v + return s +} + +// SetUnusedIamUserPasswordDetails sets the UnusedIamUserPasswordDetails field's value. +func (s *FindingDetails) SetUnusedIamUserPasswordDetails(v *UnusedIamUserPasswordDetails) *FindingDetails { + s.UnusedIamUserPasswordDetails = v + return s +} + +// SetUnusedPermissionDetails sets the UnusedPermissionDetails field's value. +func (s *FindingDetails) SetUnusedPermissionDetails(v *UnusedPermissionDetails) *FindingDetails { + s.UnusedPermissionDetails = v + return s +} + // The source of the finding. This indicates how the access that generated the // finding is granted. It is populated for Amazon S3 bucket findings. type FindingSource struct { @@ -5751,6 +6794,134 @@ return s } +// Contains information about a finding. +type FindingSummaryV2 struct { + _ struct{} `type:"structure"` + + // The time at which the resource-based policy or IAM entity that generated + // the finding was analyzed. + // + // AnalyzedAt is a required field + AnalyzedAt *time.Time `locationName:"analyzedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The time at which the finding was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The error that resulted in an Error finding. + Error *string `locationName:"error" type:"string"` + + // The type of the external access or unused access finding. + FindingType *string `locationName:"findingType" type:"string" enum:"FindingType"` + + // The ID of the finding. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The resource that the external principal has access to. + Resource *string `locationName:"resource" type:"string"` + + // The Amazon Web Services account ID that owns the resource. + // + // ResourceOwnerAccount is a required field + ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` + + // The type of the resource that the external principal has access to. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` + + // The status of the finding. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"FindingStatus"` + + // The time at which the finding was most recently updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 FindingSummaryV2) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FindingSummaryV2) GoString() string { + return s.String() +} + +// SetAnalyzedAt sets the AnalyzedAt field's value. +func (s *FindingSummaryV2) SetAnalyzedAt(v time.Time) *FindingSummaryV2 { + s.AnalyzedAt = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *FindingSummaryV2) SetCreatedAt(v time.Time) *FindingSummaryV2 { + s.CreatedAt = &v + return s +} + +// SetError sets the Error field's value. +func (s *FindingSummaryV2) SetError(v string) *FindingSummaryV2 { + s.Error = &v + return s +} + +// SetFindingType sets the FindingType field's value. +func (s *FindingSummaryV2) SetFindingType(v string) *FindingSummaryV2 { + s.FindingType = &v + return s +} + +// SetId sets the Id field's value. +func (s *FindingSummaryV2) SetId(v string) *FindingSummaryV2 { + s.Id = &v + return s +} + +// SetResource sets the Resource field's value. +func (s *FindingSummaryV2) SetResource(v string) *FindingSummaryV2 { + s.Resource = &v + return s +} + +// SetResourceOwnerAccount sets the ResourceOwnerAccount field's value. +func (s *FindingSummaryV2) SetResourceOwnerAccount(v string) *FindingSummaryV2 { + s.ResourceOwnerAccount = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *FindingSummaryV2) SetResourceType(v string) *FindingSummaryV2 { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *FindingSummaryV2) SetStatus(v string) *FindingSummaryV2 { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *FindingSummaryV2) SetUpdatedAt(v time.Time) *FindingSummaryV2 { + s.UpdatedAt = &v + return s +} + // Contains the text for the generated policy. type GeneratedPolicy struct { _ struct{} `type:"structure"` @@ -6361,6 +7532,238 @@ return s } +type GetFindingV2Input struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the analyzer (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources) + // that generated the finding. + // + // AnalyzerArn is a required field + AnalyzerArn *string `location:"querystring" locationName:"analyzerArn" type:"string" required:"true"` + + // The ID of the finding to retrieve. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The maximum number of results to return in the response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // A token used for pagination of results returned. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFindingV2Input) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFindingV2Input) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetFindingV2Input) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetFindingV2Input"} + if s.AnalyzerArn == nil { + invalidParams.Add(request.NewErrParamRequired("AnalyzerArn")) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnalyzerArn sets the AnalyzerArn field's value. +func (s *GetFindingV2Input) SetAnalyzerArn(v string) *GetFindingV2Input { + s.AnalyzerArn = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetFindingV2Input) SetId(v string) *GetFindingV2Input { + s.Id = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetFindingV2Input) SetMaxResults(v int64) *GetFindingV2Input { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetFindingV2Input) SetNextToken(v string) *GetFindingV2Input { + s.NextToken = &v + return s +} + +type GetFindingV2Output struct { + _ struct{} `type:"structure"` + + // The time at which the resource-based policy or IAM entity that generated + // the finding was analyzed. + // + // AnalyzedAt is a required field + AnalyzedAt *time.Time `locationName:"analyzedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The time at which the finding was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // An error. + Error *string `locationName:"error" type:"string"` + + // A localized message that explains the finding and provides guidance on how + // to address it. + // + // FindingDetails is a required field + FindingDetails []*FindingDetails `locationName:"findingDetails" type:"list" required:"true"` + + // The type of the finding. For external access analyzers, the type is ExternalAccess. + // For unused access analyzers, the type can be UnusedIAMRole, UnusedIAMUserAccessKey, + // UnusedIAMUserPassword, or UnusedPermission. + FindingType *string `locationName:"findingType" type:"string" enum:"FindingType"` + + // The ID of the finding to retrieve. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // A token used for pagination of results returned. + NextToken *string `locationName:"nextToken" type:"string"` + + // The resource that generated the finding. + Resource *string `locationName:"resource" type:"string"` + + // Tye Amazon Web Services account ID that owns the resource. + // + // ResourceOwnerAccount is a required field + ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` + + // The type of the resource identified in the finding. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` + + // The status of the finding. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"FindingStatus"` + + // The time at which the finding was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 GetFindingV2Output) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFindingV2Output) GoString() string { + return s.String() +} + +// SetAnalyzedAt sets the AnalyzedAt field's value. +func (s *GetFindingV2Output) SetAnalyzedAt(v time.Time) *GetFindingV2Output { + s.AnalyzedAt = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetFindingV2Output) SetCreatedAt(v time.Time) *GetFindingV2Output { + s.CreatedAt = &v + return s +} + +// SetError sets the Error field's value. +func (s *GetFindingV2Output) SetError(v string) *GetFindingV2Output { + s.Error = &v + return s +} + +// SetFindingDetails sets the FindingDetails field's value. +func (s *GetFindingV2Output) SetFindingDetails(v []*FindingDetails) *GetFindingV2Output { + s.FindingDetails = v + return s +} + +// SetFindingType sets the FindingType field's value. +func (s *GetFindingV2Output) SetFindingType(v string) *GetFindingV2Output { + s.FindingType = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetFindingV2Output) SetId(v string) *GetFindingV2Output { + s.Id = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetFindingV2Output) SetNextToken(v string) *GetFindingV2Output { + s.NextToken = &v + return s +} + +// SetResource sets the Resource field's value. +func (s *GetFindingV2Output) SetResource(v string) *GetFindingV2Output { + s.Resource = &v + return s +} + +// SetResourceOwnerAccount sets the ResourceOwnerAccount field's value. +func (s *GetFindingV2Output) SetResourceOwnerAccount(v string) *GetFindingV2Output { + s.ResourceOwnerAccount = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *GetFindingV2Output) SetResourceType(v string) *GetFindingV2Output { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetFindingV2Output) SetStatus(v string) *GetFindingV2Output { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetFindingV2Output) SetUpdatedAt(v time.Time) *GetFindingV2Output { + s.UpdatedAt = &v + return s +} + type GetGeneratedPolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6690,6 +8093,70 @@ return s.String() } +// The specified parameter is invalid. +type InvalidParameterException 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 InvalidParameterException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidParameterException) GoString() string { + return s.String() +} + +func newErrorInvalidParameterException(v protocol.ResponseMetadata) error { + return &InvalidParameterException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidParameterException) Code() string { + return "InvalidParameterException" +} + +// Message returns the exception's message. +func (s *InvalidParameterException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidParameterException) OrigErr() error { + return nil +} + +func (s *InvalidParameterException) 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 *InvalidParameterException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidParameterException) RequestID() string { + return s.RespMetadata.RequestID +} + // Contains details about the policy generation request. type JobDetails struct { _ struct{} `type:"structure"` @@ -7749,6 +9216,142 @@ return s } +type ListFindingsV2Input struct { + _ struct{} `type:"structure"` + + // The ARN of the analyzer (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources) + // to retrieve findings from. + // + // AnalyzerArn is a required field + AnalyzerArn *string `locationName:"analyzerArn" type:"string" required:"true"` + + // A filter to match for the findings to return. + Filter map[string]*Criterion `locationName:"filter" type:"map"` + + // The maximum number of results to return in the response. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // A token used for pagination of results returned. + NextToken *string `locationName:"nextToken" type:"string"` + + // The criteria used to sort. + Sort *SortCriteria `locationName:"sort" 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 ListFindingsV2Input) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFindingsV2Input) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFindingsV2Input) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFindingsV2Input"} + if s.AnalyzerArn == nil { + invalidParams.Add(request.NewErrParamRequired("AnalyzerArn")) + } + if s.Filter != nil { + for i, v := range s.Filter { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filter", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnalyzerArn sets the AnalyzerArn field's value. +func (s *ListFindingsV2Input) SetAnalyzerArn(v string) *ListFindingsV2Input { + s.AnalyzerArn = &v + return s +} + +// SetFilter sets the Filter field's value. +func (s *ListFindingsV2Input) SetFilter(v map[string]*Criterion) *ListFindingsV2Input { + s.Filter = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListFindingsV2Input) SetMaxResults(v int64) *ListFindingsV2Input { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFindingsV2Input) SetNextToken(v string) *ListFindingsV2Input { + s.NextToken = &v + return s +} + +// SetSort sets the Sort field's value. +func (s *ListFindingsV2Input) SetSort(v *SortCriteria) *ListFindingsV2Input { + s.Sort = v + return s +} + +type ListFindingsV2Output struct { + _ struct{} `type:"structure"` + + // A list of findings retrieved from the analyzer that match the filter criteria + // specified, if any. + // + // Findings is a required field + Findings []*FindingSummaryV2 `locationName:"findings" type:"list" required:"true"` + + // A token used for pagination of results returned. + 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 ListFindingsV2Output) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFindingsV2Output) GoString() string { + return s.String() +} + +// SetFindings sets the Findings field's value. +func (s *ListFindingsV2Output) SetFindings(v []*FindingSummaryV2) *ListFindingsV2Output { + s.Findings = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFindingsV2Output) SetNextToken(v string) *ListFindingsV2Output { + s.NextToken = &v + return s +} + type ListPolicyGenerationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -8496,6 +10099,57 @@ return s } +// Contains information about the reasoning why a check for access passed or +// failed. +type ReasonSummary struct { + _ struct{} `type:"structure"` + + // A description of the reasoning of a result of checking for access. + Description *string `locationName:"description" type:"string"` + + // The identifier for the reason statement. + StatementId *string `locationName:"statementId" type:"string"` + + // The index number of the reason statement. + StatementIndex *int64 `locationName:"statementIndex" 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 ReasonSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReasonSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *ReasonSummary) SetDescription(v string) *ReasonSummary { + s.Description = &v + return s +} + +// SetStatementId sets the StatementId field's value. +func (s *ReasonSummary) SetStatementId(v string) *ReasonSummary { + s.StatementId = &v + return s +} + +// SetStatementIndex sets the StatementIndex field's value. +func (s *ReasonSummary) SetStatementIndex(v int64) *ReasonSummary { + s.StatementIndex = &v + return s +} + // The specified resource could not be found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -8825,6 +10479,48 @@ return s } +// Proposed access control configuration for an Amazon S3 directory bucket. +// You can propose a configuration for a new Amazon S3 directory bucket or an +// existing Amazon S3 directory bucket that you own by specifying the Amazon +// S3 bucket policy. If the configuration is for an existing Amazon S3 directory +// bucket and you do not specify the Amazon S3 bucket policy, the access preview +// uses the existing policy attached to the directory bucket. If the access +// preview is for a new resource and you do not specify the Amazon S3 bucket +// policy, the access preview assumes an directory bucket without a policy. +// To propose deletion of an existing bucket policy, you can specify an empty +// string. For more information about bucket policy limits, see Example bucket +// policies (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html). +type S3ExpressDirectoryBucketConfiguration struct { + _ struct{} `type:"structure"` + + // The proposed bucket policy for the Amazon S3 directory bucket. + BucketPolicy *string `locationName:"bucketPolicy" 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 S3ExpressDirectoryBucketConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3ExpressDirectoryBucketConfiguration) GoString() string { + return s.String() +} + +// SetBucketPolicy sets the BucketPolicy field's value. +func (s *S3ExpressDirectoryBucketConfiguration) SetBucketPolicy(v string) *S3ExpressDirectoryBucketConfiguration { + s.BucketPolicy = &v + return s +} + // The PublicAccessBlock configuration to apply to this Amazon S3 bucket. If // the proposed configuration is for an existing Amazon S3 bucket and the configuration // is not specified, the access preview uses the existing setting. If the proposed @@ -9766,6 +11462,70 @@ return s } +// The specified entity could not be processed. +type UnprocessableEntityException 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 UnprocessableEntityException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnprocessableEntityException) GoString() string { + return s.String() +} + +func newErrorUnprocessableEntityException(v protocol.ResponseMetadata) error { + return &UnprocessableEntityException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnprocessableEntityException) Code() string { + return "UnprocessableEntityException" +} + +// Message returns the exception's message. +func (s *UnprocessableEntityException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnprocessableEntityException) OrigErr() error { + return nil +} + +func (s *UnprocessableEntityException) 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 *UnprocessableEntityException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnprocessableEntityException) RequestID() string { + return s.RespMetadata.RequestID +} + // Removes a tag from the specified resource. type UntagResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9853,6 +11613,260 @@ return s.String() } +// Contains information about an unused access analyzer. +type UnusedAccessConfiguration struct { + _ struct{} `type:"structure"` + + // The specified access age in days for which to generate findings for unused + // access. For example, if you specify 90 days, the analyzer will generate findings + // for IAM entities within the accounts of the selected organization for any + // access that hasn't been used in 90 or more days since the analyzer's last + // scan. You can choose a value between 1 and 180 days. + UnusedAccessAge *int64 `locationName:"unusedAccessAge" 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 UnusedAccessConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedAccessConfiguration) GoString() string { + return s.String() +} + +// SetUnusedAccessAge sets the UnusedAccessAge field's value. +func (s *UnusedAccessConfiguration) SetUnusedAccessAge(v int64) *UnusedAccessConfiguration { + s.UnusedAccessAge = &v + return s +} + +// Contains information about an unused access finding for an action. IAM Access +// Analyzer charges for unused access analysis based on the number of IAM roles +// and users analyzed per month. For more details on pricing, see IAM Access +// Analyzer pricing (https://aws.amazon.com/iam/access-analyzer/pricing). +type UnusedAction struct { + _ struct{} `type:"structure"` + + // The action for which the unused access finding was generated. + // + // Action is a required field + Action *string `locationName:"action" type:"string" required:"true"` + + // The time at which the action was last accessed. + LastAccessed *time.Time `locationName:"lastAccessed" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedAction) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *UnusedAction) SetAction(v string) *UnusedAction { + s.Action = &v + return s +} + +// SetLastAccessed sets the LastAccessed field's value. +func (s *UnusedAction) SetLastAccessed(v time.Time) *UnusedAction { + s.LastAccessed = &v + return s +} + +// Contains information about an unused access finding for an IAM role. IAM +// Access Analyzer charges for unused access analysis based on the number of +// IAM roles and users analyzed per month. For more details on pricing, see +// IAM Access Analyzer pricing (https://aws.amazon.com/iam/access-analyzer/pricing). +type UnusedIamRoleDetails struct { + _ struct{} `type:"structure"` + + // The time at which the role was last accessed. + LastAccessed *time.Time `locationName:"lastAccessed" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedIamRoleDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedIamRoleDetails) GoString() string { + return s.String() +} + +// SetLastAccessed sets the LastAccessed field's value. +func (s *UnusedIamRoleDetails) SetLastAccessed(v time.Time) *UnusedIamRoleDetails { + s.LastAccessed = &v + return s +} + +// Contains information about an unused access finding for an IAM user access +// key. IAM Access Analyzer charges for unused access analysis based on the +// number of IAM roles and users analyzed per month. For more details on pricing, +// see IAM Access Analyzer pricing (https://aws.amazon.com/iam/access-analyzer/pricing). +type UnusedIamUserAccessKeyDetails struct { + _ struct{} `type:"structure"` + + // The ID of the access key for which the unused access finding was generated. + // + // AccessKeyId is a required field + AccessKeyId *string `locationName:"accessKeyId" type:"string" required:"true"` + + // The time at which the access key was last accessed. + LastAccessed *time.Time `locationName:"lastAccessed" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedIamUserAccessKeyDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedIamUserAccessKeyDetails) GoString() string { + return s.String() +} + +// SetAccessKeyId sets the AccessKeyId field's value. +func (s *UnusedIamUserAccessKeyDetails) SetAccessKeyId(v string) *UnusedIamUserAccessKeyDetails { + s.AccessKeyId = &v + return s +} + +// SetLastAccessed sets the LastAccessed field's value. +func (s *UnusedIamUserAccessKeyDetails) SetLastAccessed(v time.Time) *UnusedIamUserAccessKeyDetails { + s.LastAccessed = &v + return s +} + +// Contains information about an unused access finding for an IAM user password. +// IAM Access Analyzer charges for unused access analysis based on the number +// of IAM roles and users analyzed per month. For more details on pricing, see +// IAM Access Analyzer pricing (https://aws.amazon.com/iam/access-analyzer/pricing). +type UnusedIamUserPasswordDetails struct { + _ struct{} `type:"structure"` + + // The time at which the password was last accessed. + LastAccessed *time.Time `locationName:"lastAccessed" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedIamUserPasswordDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedIamUserPasswordDetails) GoString() string { + return s.String() +} + +// SetLastAccessed sets the LastAccessed field's value. +func (s *UnusedIamUserPasswordDetails) SetLastAccessed(v time.Time) *UnusedIamUserPasswordDetails { + s.LastAccessed = &v + return s +} + +// Contains information about an unused access finding for a permission. IAM +// Access Analyzer charges for unused access analysis based on the number of +// IAM roles and users analyzed per month. For more details on pricing, see +// IAM Access Analyzer pricing (https://aws.amazon.com/iam/access-analyzer/pricing). +type UnusedPermissionDetails struct { + _ struct{} `type:"structure"` + + // A list of unused actions for which the unused access finding was generated. + Actions []*UnusedAction `locationName:"actions" type:"list"` + + // The time at which the permission last accessed. + LastAccessed *time.Time `locationName:"lastAccessed" type:"timestamp" timestampFormat:"iso8601"` + + // The namespace of the Amazon Web Services service that contains the unused + // actions. + // + // ServiceNamespace is a required field + ServiceNamespace *string `locationName:"serviceNamespace" 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 UnusedPermissionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnusedPermissionDetails) GoString() string { + return s.String() +} + +// SetActions sets the Actions field's value. +func (s *UnusedPermissionDetails) SetActions(v []*UnusedAction) *UnusedPermissionDetails { + s.Actions = v + return s +} + +// SetLastAccessed sets the LastAccessed field's value. +func (s *UnusedPermissionDetails) SetLastAccessed(v time.Time) *UnusedPermissionDetails { + s.LastAccessed = &v + return s +} + +// SetServiceNamespace sets the ServiceNamespace field's value. +func (s *UnusedPermissionDetails) SetServiceNamespace(v string) *UnusedPermissionDetails { + s.ServiceNamespace = &v + return s +} + // Updates the specified archive rule. type UpdateArchiveRuleInput struct { _ struct{} `type:"structure"` @@ -10200,15 +12214,16 @@ // The type of policy to validate. Identity policies grant permissions to IAM // principals. Identity policies include managed and inline policies for IAM - // roles, users, and groups. They also include service-control policies (SCPs) - // that are attached to an Amazon Web Services organization, organizational - // unit (OU), or an account. + // roles, users, and groups. // // Resource policies grant permissions on Amazon Web Services resources. Resource // policies include trust policies for IAM roles and bucket policies for Amazon // S3 buckets. You can provide a generic input such as identity policy or resource // policy or a specific input such as managed policy or Amazon S3 bucket policy. // + // Service control policies (SCPs) are a type of organization policy attached + // to an Amazon Web Services organization, organizational unit (OU), or an account. + // // PolicyType is a required field PolicyType *string `locationName:"policyType" type:"string" required:"true" enum:"PolicyType"` @@ -10506,6 +12521,22 @@ } const ( + // AccessCheckPolicyTypeIdentityPolicy is a AccessCheckPolicyType enum value + AccessCheckPolicyTypeIdentityPolicy = "IDENTITY_POLICY" + + // AccessCheckPolicyTypeResourcePolicy is a AccessCheckPolicyType enum value + AccessCheckPolicyTypeResourcePolicy = "RESOURCE_POLICY" +) + +// AccessCheckPolicyType_Values returns all elements of the AccessCheckPolicyType enum +func AccessCheckPolicyType_Values() []string { + return []string{ + AccessCheckPolicyTypeIdentityPolicy, + AccessCheckPolicyTypeResourcePolicy, + } +} + +const ( // AccessPreviewStatusCompleted is a AccessPreviewStatus enum value AccessPreviewStatusCompleted = "COMPLETED" @@ -10594,6 +12625,38 @@ } const ( + // CheckAccessNotGrantedResultPass is a CheckAccessNotGrantedResult enum value + CheckAccessNotGrantedResultPass = "PASS" + + // CheckAccessNotGrantedResultFail is a CheckAccessNotGrantedResult enum value + CheckAccessNotGrantedResultFail = "FAIL" +) + +// CheckAccessNotGrantedResult_Values returns all elements of the CheckAccessNotGrantedResult enum +func CheckAccessNotGrantedResult_Values() []string { + return []string{ + CheckAccessNotGrantedResultPass, + CheckAccessNotGrantedResultFail, + } +} + +const ( + // CheckNoNewAccessResultPass is a CheckNoNewAccessResult enum value + CheckNoNewAccessResultPass = "PASS" + + // CheckNoNewAccessResultFail is a CheckNoNewAccessResult enum value + CheckNoNewAccessResultFail = "FAIL" +) + +// CheckNoNewAccessResult_Values returns all elements of the CheckNoNewAccessResult enum +func CheckNoNewAccessResult_Values() []string { + return []string{ + CheckNoNewAccessResultPass, + CheckNoNewAccessResultFail, + } +} + +const ( // FindingChangeTypeChanged is a FindingChangeType enum value FindingChangeTypeChanged = "CHANGED" @@ -10674,6 +12737,34 @@ } const ( + // FindingTypeExternalAccess is a FindingType enum value + FindingTypeExternalAccess = "ExternalAccess" + + // FindingTypeUnusedIamrole is a FindingType enum value + FindingTypeUnusedIamrole = "UnusedIAMRole" + + // FindingTypeUnusedIamuserAccessKey is a FindingType enum value + FindingTypeUnusedIamuserAccessKey = "UnusedIAMUserAccessKey" + + // FindingTypeUnusedIamuserPassword is a FindingType enum value + FindingTypeUnusedIamuserPassword = "UnusedIAMUserPassword" + + // FindingTypeUnusedPermission is a FindingType enum value + FindingTypeUnusedPermission = "UnusedPermission" +) + +// FindingType_Values returns all elements of the FindingType enum +func FindingType_Values() []string { + return []string{ + FindingTypeExternalAccess, + FindingTypeUnusedIamrole, + FindingTypeUnusedIamuserAccessKey, + FindingTypeUnusedIamuserPassword, + FindingTypeUnusedPermission, + } +} + +const ( // JobErrorCodeAuthorizationError is a JobErrorCode enum value JobErrorCodeAuthorizationError = "AUTHORIZATION_ERROR" @@ -10932,6 +13023,9 @@ // ResourceTypeAwsSnsTopic is a ResourceType enum value ResourceTypeAwsSnsTopic = "AWS::SNS::Topic" + + // ResourceTypeAwsS3expressDirectoryBucket is a ResourceType enum value + ResourceTypeAwsS3expressDirectoryBucket = "AWS::S3Express::DirectoryBucket" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -10950,6 +13044,7 @@ ResourceTypeAwsRdsDbsnapshot, ResourceTypeAwsRdsDbclusterSnapshot, ResourceTypeAwsSnsTopic, + ResourceTypeAwsS3expressDirectoryBucket, } } @@ -10959,6 +13054,12 @@ // TypeOrganization is a Type enum value TypeOrganization = "ORGANIZATION" + + // TypeAccountUnusedAccess is a Type enum value + TypeAccountUnusedAccess = "ACCOUNT_UNUSED_ACCESS" + + // TypeOrganizationUnusedAccess is a Type enum value + TypeOrganizationUnusedAccess = "ORGANIZATION_UNUSED_ACCESS" ) // Type_Values returns all elements of the Type enum @@ -10966,6 +13067,8 @@ return []string{ TypeAccount, TypeOrganization, + TypeAccountUnusedAccess, + TypeOrganizationUnusedAccess, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,20 +3,35 @@ // Package accessanalyzer provides the client and types for making API // requests to Access Analyzer. // -// Identity and Access Management Access Analyzer helps identify potential resource-access -// risks by enabling you to identify any policies that grant access to an external -// principal. It does this by using logic-based reasoning to analyze resource-based -// policies in your Amazon Web Services environment. An external principal can -// be another Amazon Web Services account, a root user, an IAM user or role, -// a federated user, an Amazon Web Services service, or an anonymous user. You -// can also use IAM Access Analyzer to preview and validate public and cross-account -// access to your resources before deploying permissions changes. This guide -// describes the Identity and Access Management Access Analyzer operations that -// you can call programmatically. For general information about IAM Access Analyzer, -// see Identity and Access Management Access Analyzer (https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) -// in the IAM User Guide. +// Identity and Access Management Access Analyzer helps you to set, verify, +// and refine your IAM policies by providing a suite of capabilities. Its features +// include findings for external and unused access, basic and custom policy +// checks for validating policies, and policy generation to generate fine-grained +// policies. To start using IAM Access Analyzer to identify external or unused +// access, you first need to create an analyzer. +// +// External access analyzers help identify potential risks of accessing resources +// by enabling you to identify any resource policies that grant access to an +// external principal. It does this by using logic-based reasoning to analyze +// resource-based policies in your Amazon Web Services environment. An external +// principal can be another Amazon Web Services account, a root user, an IAM +// user or role, a federated user, an Amazon Web Services service, or an anonymous +// user. You can also use IAM Access Analyzer to preview public and cross-account +// access to your resources before deploying permissions changes. +// +// Unused access analyzers help identify potential identity access risks by +// enabling you to identify unused IAM roles, unused access keys, unused console +// passwords, and IAM principals with unused service and action-level permissions. // -// To start using IAM Access Analyzer, you first need to create an analyzer. +// Beyond findings, IAM Access Analyzer provides basic and custom policy checks +// to validate IAM policies before deploying permissions changes. You can use +// policy generation to refine permissions by attaching a policy generated using +// access activity logged in CloudTrail logs. +// +// This guide describes the IAM Access Analyzer operations that you can call +// programmatically. For general information about IAM Access Analyzer, see +// Identity and Access Management Access Analyzer (https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) +// in the IAM User Guide. // // See https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/accessanalyzer/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/accessanalyzer/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,6 +26,12 @@ // Internal server error. ErrCodeInternalServerException = "InternalServerException" + // ErrCodeInvalidParameterException for service response error code + // "InvalidParameterException". + // + // The specified parameter is invalid. + ErrCodeInvalidParameterException = "InvalidParameterException" + // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // @@ -44,6 +50,12 @@ // Throttling limit exceeded error. ErrCodeThrottlingException = "ThrottlingException" + // ErrCodeUnprocessableEntityException for service response error code + // "UnprocessableEntityException". + // + // The specified entity could not be processed. + ErrCodeUnprocessableEntityException = "UnprocessableEntityException" + // ErrCodeValidationException for service response error code // "ValidationException". // @@ -55,8 +67,10 @@ "AccessDeniedException": newErrorAccessDeniedException, "ConflictException": newErrorConflictException, "InternalServerException": newErrorInternalServerException, + "InvalidParameterException": newErrorInvalidParameterException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, "ThrottlingException": newErrorThrottlingException, + "UnprocessableEntityException": newErrorUnprocessableEntityException, "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/amplify/amplifyiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/amplify/amplifyiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/amplify/amplifyiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/amplify/amplifyiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -144,6 +144,9 @@ ListAppsWithContext(aws.Context, *amplify.ListAppsInput, ...request.Option) (*amplify.ListAppsOutput, error) ListAppsRequest(*amplify.ListAppsInput) (*request.Request, *amplify.ListAppsOutput) + ListAppsPages(*amplify.ListAppsInput, func(*amplify.ListAppsOutput, bool) bool) error + ListAppsPagesWithContext(aws.Context, *amplify.ListAppsInput, func(*amplify.ListAppsOutput, bool) bool, ...request.Option) error + ListArtifacts(*amplify.ListArtifactsInput) (*amplify.ListArtifactsOutput, error) ListArtifactsWithContext(aws.Context, *amplify.ListArtifactsInput, ...request.Option) (*amplify.ListArtifactsOutput, error) ListArtifactsRequest(*amplify.ListArtifactsInput) (*request.Request, *amplify.ListArtifactsOutput) @@ -156,14 +159,23 @@ ListBranchesWithContext(aws.Context, *amplify.ListBranchesInput, ...request.Option) (*amplify.ListBranchesOutput, error) ListBranchesRequest(*amplify.ListBranchesInput) (*request.Request, *amplify.ListBranchesOutput) + ListBranchesPages(*amplify.ListBranchesInput, func(*amplify.ListBranchesOutput, bool) bool) error + ListBranchesPagesWithContext(aws.Context, *amplify.ListBranchesInput, func(*amplify.ListBranchesOutput, bool) bool, ...request.Option) error + ListDomainAssociations(*amplify.ListDomainAssociationsInput) (*amplify.ListDomainAssociationsOutput, error) ListDomainAssociationsWithContext(aws.Context, *amplify.ListDomainAssociationsInput, ...request.Option) (*amplify.ListDomainAssociationsOutput, error) ListDomainAssociationsRequest(*amplify.ListDomainAssociationsInput) (*request.Request, *amplify.ListDomainAssociationsOutput) + ListDomainAssociationsPages(*amplify.ListDomainAssociationsInput, func(*amplify.ListDomainAssociationsOutput, bool) bool) error + ListDomainAssociationsPagesWithContext(aws.Context, *amplify.ListDomainAssociationsInput, func(*amplify.ListDomainAssociationsOutput, bool) bool, ...request.Option) error + ListJobs(*amplify.ListJobsInput) (*amplify.ListJobsOutput, error) ListJobsWithContext(aws.Context, *amplify.ListJobsInput, ...request.Option) (*amplify.ListJobsOutput, error) ListJobsRequest(*amplify.ListJobsInput) (*request.Request, *amplify.ListJobsOutput) + ListJobsPages(*amplify.ListJobsInput, func(*amplify.ListJobsOutput, bool) bool) error + ListJobsPagesWithContext(aws.Context, *amplify.ListJobsInput, func(*amplify.ListJobsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*amplify.ListTagsForResourceInput) (*amplify.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *amplify.ListTagsForResourceInput, ...request.Option) (*amplify.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*amplify.ListTagsForResourceInput) (*request.Request, *amplify.ListTagsForResourceOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/amplify/api.go golang-github-aws-aws-sdk-go-1.48.14/service/amplify/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/amplify/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/amplify/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -335,6 +335,10 @@ // Creates a deployment for a manually deployed Amplify app. Manually deployed // apps are not connected to a repository. // +// The maximum duration between the CreateDeployment call and the StartDeployment +// call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment +// call and the associated Job will fail. +// // 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. @@ -1245,7 +1249,7 @@ // GetApp API operation for AWS Amplify. // -// Returns an existing Amplify app by appID. +// Returns an existing Amplify app specified by an app ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1857,6 +1861,12 @@ Name: opListApps, HTTPMethod: "GET", HTTPPath: "/apps", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -1912,6 +1922,57 @@ return out, req.Send() } +// ListAppsPages iterates over the pages of a ListApps operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApps 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 ListApps operation. +// pageNum := 0 +// err := client.ListAppsPages(params, +// func(page *amplify.ListAppsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Amplify) ListAppsPages(input *ListAppsInput, fn func(*ListAppsOutput, bool) bool) error { + return c.ListAppsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAppsPagesWithContext same as ListAppsPages 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 *Amplify) ListAppsPagesWithContext(ctx aws.Context, input *ListAppsInput, fn func(*ListAppsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAppsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAppsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAppsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListArtifacts = "ListArtifacts" // ListArtifactsRequest generates a "aws/request.Request" representing the @@ -2115,6 +2176,12 @@ Name: opListBranches, HTTPMethod: "GET", HTTPPath: "/apps/{appId}/branches", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -2170,6 +2237,57 @@ return out, req.Send() } +// ListBranchesPages iterates over the pages of a ListBranches operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListBranches 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 ListBranches operation. +// pageNum := 0 +// err := client.ListBranchesPages(params, +// func(page *amplify.ListBranchesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Amplify) ListBranchesPages(input *ListBranchesInput, fn func(*ListBranchesOutput, bool) bool) error { + return c.ListBranchesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListBranchesPagesWithContext same as ListBranchesPages 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 *Amplify) ListBranchesPagesWithContext(ctx aws.Context, input *ListBranchesInput, fn func(*ListBranchesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListBranchesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListBranchesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListBranchesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDomainAssociations = "ListDomainAssociations" // ListDomainAssociationsRequest generates a "aws/request.Request" representing the @@ -2200,6 +2318,12 @@ Name: opListDomainAssociations, HTTPMethod: "GET", HTTPPath: "/apps/{appId}/domains", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -2255,6 +2379,57 @@ return out, req.Send() } +// ListDomainAssociationsPages iterates over the pages of a ListDomainAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDomainAssociations 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 ListDomainAssociations operation. +// pageNum := 0 +// err := client.ListDomainAssociationsPages(params, +// func(page *amplify.ListDomainAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Amplify) ListDomainAssociationsPages(input *ListDomainAssociationsInput, fn func(*ListDomainAssociationsOutput, bool) bool) error { + return c.ListDomainAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDomainAssociationsPagesWithContext same as ListDomainAssociationsPages 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 *Amplify) ListDomainAssociationsPagesWithContext(ctx aws.Context, input *ListDomainAssociationsInput, fn func(*ListDomainAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDomainAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDomainAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDomainAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListJobs = "ListJobs" // ListJobsRequest generates a "aws/request.Request" representing the @@ -2285,6 +2460,12 @@ Name: opListJobs, HTTPMethod: "GET", HTTPPath: "/apps/{appId}/branches/{branchName}/jobs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -2343,6 +2524,57 @@ return out, req.Send() } +// ListJobsPages iterates over the pages of a ListJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListJobs 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 ListJobs operation. +// pageNum := 0 +// err := client.ListJobsPages(params, +// func(page *amplify.ListJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Amplify) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error { + return c.ListJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListJobsPagesWithContext same as ListJobsPages 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 *Amplify) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -2562,6 +2794,10 @@ // Starts a deployment for a manually deployed app. Manually deployed apps are // not connected to a repository. // +// The maximum duration between the CreateDeployment call and the StartDeployment +// call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment +// call and the associated Job will fail. +// // 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. @@ -3395,12 +3631,16 @@ // EnableBranchAutoBuild is a required field EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean" required:"true"` - // Automatically disconnect a branch in the Amplify Console when you delete + // Automatically disconnect a branch in the Amplify console when you delete // a branch from your Git repository. EnableBranchAutoDeletion *bool `locationName:"enableBranchAutoDeletion" type:"boolean"` // The environment variables for the Amplify app. // + // For a list of the environment variables that are accessible to Amplify by + // default, see Amplify Environment variables (https://docs.aws.amazon.com/amplify/latest/userguide/amplify-console-environment-variables.html) + // in the Amplify Hosting User Guide. + // // EnvironmentVariables is a required field EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map" required:"true"` @@ -3794,6 +4034,51 @@ return s } +// Describes the backend properties associated with an Amplify Branch. +type Backend struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the CloudFormation stack. + StackArn *string `locationName:"stackArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Backend) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Backend) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Backend) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Backend"} + if s.StackArn != nil && len(*s.StackArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("StackArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStackArn sets the StackArn field's value. +func (s *Backend) SetStackArn(v string) *Backend { + s.StackArn = &v + return s +} + // Describes the backend environment for an Amplify app. type BackendEnvironment struct { _ struct{} `type:"structure"` @@ -3958,6 +4243,9 @@ // A list of custom resources that are linked to this branch. AssociatedResources []*string `locationName:"associatedResources" type:"list"` + // Describes the backend properties associated with an Amplify Branch. + Backend *Backend `locationName:"backend" type:"structure"` + // The Amazon Resource Name (ARN) for a backend environment that is part of // an Amplify app. BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" type:"string"` @@ -4112,6 +4400,12 @@ return s } +// SetBackend sets the Backend field's value. +func (s *Branch) SetBackend(v *Backend) *Branch { + s.Backend = v + return s +} + // SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value. func (s *Branch) SetBackendEnvironmentArn(v string) *Branch { s.BackendEnvironmentArn = &v @@ -4278,7 +4572,7 @@ // Existing Amplify apps deployed from a GitHub repository using OAuth continue // to work with CI/CD. However, we strongly recommend that you migrate these // apps to use the GitHub App. For more information, see Migrating an existing - // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/UserGuide/setting-up-GitHub-access.html#migrating-to-github-app-auth) + // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/userguide/setting-up-GitHub-access.html#migrating-to-github-app-auth) // in the Amplify User Guide . // // AccessToken is a sensitive parameter and its value will be @@ -4313,7 +4607,7 @@ // The custom rewrite and redirect rules for an Amplify app. CustomRules []*CustomRule `locationName:"customRules" type:"list"` - // The description for an Amplify app. + // The description of the Amplify app. Description *string `locationName:"description" type:"string"` // Enables automated branch creation for an Amplify app. @@ -4326,18 +4620,22 @@ // Enables the auto building of branches for an Amplify app. EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean"` - // Automatically disconnects a branch in the Amplify Console when you delete + // Automatically disconnects a branch in the Amplify console when you delete // a branch from your Git repository. EnableBranchAutoDeletion *bool `locationName:"enableBranchAutoDeletion" type:"boolean"` // The environment variables map for an Amplify app. + // + // For a list of the environment variables that are accessible to Amplify by + // default, see Amplify Environment variables (https://docs.aws.amazon.com/amplify/latest/userguide/amplify-console-environment-variables.html) + // in the Amplify Hosting User Guide. EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"` // The AWS Identity and Access Management (IAM) service role for an Amplify // app. IamServiceRoleArn *string `locationName:"iamServiceRoleArn" type:"string"` - // The name for an Amplify app. + // The name of the Amplify app. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` @@ -4355,7 +4653,7 @@ // Existing Amplify apps deployed from a GitHub repository using OAuth continue // to work with CI/CD. However, we strongly recommend that you migrate these // apps to use the GitHub App. For more information, see Migrating an existing - // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/UserGuide/setting-up-GitHub-access.html#migrating-to-github-app-auth) + // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/userguide/setting-up-GitHub-access.html#migrating-to-github-app-auth) // in the Amplify User Guide . // // OauthToken is a sensitive parameter and its value will be @@ -4369,7 +4667,7 @@ // only, set the platform type to WEB_DYNAMIC. Platform *string `locationName:"platform" type:"string" enum:"Platform"` - // The repository for an Amplify app. + // The Git repository for the Amplify app. Repository *string `locationName:"repository" type:"string"` // The tag for an Amplify app. @@ -4713,6 +5011,10 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` + // The backend for a Branch of an Amplify app. Use for a backend created from + // an CloudFormation stack. + Backend *Backend `locationName:"backend" type:"structure"` + // The Amazon Resource Name (ARN) for a backend environment that is part of // an Amplify app. BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" type:"string"` @@ -4817,6 +5119,11 @@ if s.BuildSpec != nil && len(*s.BuildSpec) < 1 { invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1)) } + if s.Backend != nil { + if err := s.Backend.Validate(); err != nil { + invalidParams.AddNested("Backend", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -4830,6 +5137,12 @@ return s } +// SetBackend sets the Backend field's value. +func (s *CreateBranchInput) SetBackend(v *Backend) *CreateBranchInput { + s.Backend = v + return s +} + // SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value. func (s *CreateBranchInput) SetBackendEnvironmentArn(v string) *CreateBranchInput { s.BackendEnvironmentArn = &v @@ -4976,7 +5289,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for the branch, for the job. + // The name of the branch to use for the job. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -5667,7 +5980,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for the branch. + // The name of the branch. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -5869,7 +6182,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for the branch, for the job. + // The name of the branch to use for the job. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -6649,7 +6962,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for the branch. + // The name of the branch. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -6851,7 +7164,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The branch name for the job. + // The name of the branch to use for the job. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -7937,7 +8250,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for a branch. + // The name of the branch to use for the request. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -8453,7 +8766,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for the branch, for the job. + // The name of the branch to use for the job. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -8574,7 +8887,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The branch name for the job. + // The name of the branch to use for the job. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -8592,13 +8905,15 @@ // is RETRY. JobId *string `locationName:"jobId" type:"string"` - // A descriptive reason for starting this job. + // A descriptive reason for starting the job. JobReason *string `locationName:"jobReason" type:"string"` // Describes the type for the job. The job type RELEASE starts a new job with // the latest change from the specified branch. This value is available only - // for apps that are connected to a repository. The job type RETRY retries an - // existing job. If the job type value is RETRY, the jobId is also required. + // for apps that are connected to a repository. + // + // The job type RETRY retries an existing job. If the job type value is RETRY, + // the jobId is also required. // // JobType is a required field JobType *string `locationName:"jobType" type:"string" required:"true" enum:"JobType"` @@ -8868,7 +9183,7 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` - // The name for the branch, for the job. + // The name of the branch to use for the stop job request. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -9354,7 +9669,7 @@ // Existing Amplify apps deployed from a GitHub repository using OAuth continue // to work with CI/CD. However, we strongly recommend that you migrate these // apps to use the GitHub App. For more information, see Migrating an existing - // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/UserGuide/setting-up-GitHub-access.html#migrating-to-github-app-auth) + // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/userguide/setting-up-GitHub-access.html#migrating-to-github-app-auth) // in the Amplify User Guide . // // AccessToken is a sensitive parameter and its value will be @@ -9406,7 +9721,7 @@ // Enables branch auto-building for an Amplify app. EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean"` - // Automatically disconnects a branch in the Amplify Console when you delete + // Automatically disconnects a branch in the Amplify console when you delete // a branch from your Git repository. EnableBranchAutoDeletion *bool `locationName:"enableBranchAutoDeletion" type:"boolean"` @@ -9434,7 +9749,7 @@ // Existing Amplify apps deployed from a GitHub repository using OAuth continue // to work with CI/CD. However, we strongly recommend that you migrate these // apps to use the GitHub App. For more information, see Migrating an existing - // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/UserGuide/setting-up-GitHub-access.html#migrating-to-github-app-auth) + // OAuth app to the Amplify GitHub App (https://docs.aws.amazon.com/amplify/latest/userguide/setting-up-GitHub-access.html#migrating-to-github-app-auth) // in the Amplify User Guide . // // OauthToken is a sensitive parameter and its value will be @@ -9448,7 +9763,7 @@ // only, set the platform type to WEB_DYNAMIC. Platform *string `locationName:"platform" type:"string" enum:"Platform"` - // The name of the repository for an Amplify app + // The name of the Git repository for an Amplify app. Repository *string `locationName:"repository" type:"string"` } @@ -9667,6 +9982,10 @@ // AppId is a required field AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"` + // The backend for a Branch of an Amplify app. Use for a backend created from + // an CloudFormation stack. + Backend *Backend `locationName:"backend" type:"structure"` + // The Amazon Resource Name (ARN) for a backend environment that is part of // an Amplify app. BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" type:"string"` @@ -9679,7 +9998,7 @@ // String and GoString methods. BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string" sensitive:"true"` - // The name for the branch. + // The name of the branch. // // BranchName is a required field BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"` @@ -9768,6 +10087,11 @@ if s.BuildSpec != nil && len(*s.BuildSpec) < 1 { invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1)) } + if s.Backend != nil { + if err := s.Backend.Validate(); err != nil { + invalidParams.AddNested("Backend", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -9781,6 +10105,12 @@ return s } +// SetBackend sets the Backend field's value. +func (s *UpdateBranchInput) SetBackend(v *Backend) *UpdateBranchInput { + s.Backend = v + return s +} + // SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value. func (s *UpdateBranchInput) SetBackendEnvironmentArn(v string) *UpdateBranchInput { s.BackendEnvironmentArn = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/amplify/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/amplify/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/amplify/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/amplify/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,9 +4,9 @@ // requests to AWS Amplify. // // Amplify enables developers to develop and deploy cloud-powered mobile and -// web apps. The Amplify Console provides a continuous delivery and hosting -// service for web applications. For more information, see the Amplify Console -// User Guide (https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html). +// web apps. Amplify Hosting provides a continuous delivery and hosting service +// for web applications. For more information, see the Amplify Hosting User +// Guide (https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html). // The Amplify Framework is a comprehensive set of SDKs, libraries, tools, and // documentation for client app development. For more information, see the Amplify // Framework. (https://docs.amplify.aws/) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/amplifyuibuilder/api.go golang-github-aws-aws-sdk-go-1.48.14/service/amplifyuibuilder/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/amplifyuibuilder/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/amplifyuibuilder/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -584,7 +584,9 @@ // ExchangeCodeForToken API operation for AWS Amplify UI Builder. // -// Exchanges an access code for a token. +// This is for internal use. +// +// Amplify uses this action to exchange an access code for a token. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2150,7 +2152,10 @@ // RefreshToken API operation for AWS Amplify UI Builder. // -// Refreshes a previously issued access token that might have expired. +// This is for internal use. +// +// Amplify uses this action to refresh a previously issued access token that +// might have expired. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2758,6 +2763,66 @@ return s } +// Dependency package that may be required for the project code to run. +type CodegenDependency struct { + _ struct{} `type:"structure"` + + // Determines if the dependency package is using Semantic versioning. If set + // to true, it indicates that the dependency package uses Semantic versioning. + IsSemVer *bool `locationName:"isSemVer" type:"boolean"` + + // Name of the dependency package. + Name *string `locationName:"name" type:"string"` + + // Indicates the reason to include the dependency package in your project code. + Reason *string `locationName:"reason" type:"string"` + + // Indicates the version of the supported dependency package. + SupportedVersion *string `locationName:"supportedVersion" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodegenDependency) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodegenDependency) GoString() string { + return s.String() +} + +// SetIsSemVer sets the IsSemVer field's value. +func (s *CodegenDependency) SetIsSemVer(v bool) *CodegenDependency { + s.IsSemVer = &v + return s +} + +// SetName sets the Name field's value. +func (s *CodegenDependency) SetName(v string) *CodegenDependency { + s.Name = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *CodegenDependency) SetReason(v string) *CodegenDependency { + s.Reason = &v + return s +} + +// SetSupportedVersion sets the SupportedVersion field's value. +func (s *CodegenDependency) SetSupportedVersion(v string) *CodegenDependency { + s.SupportedVersion = &v + return s +} + // Describes the feature flags that you can specify for a code generation job. type CodegenFeatureFlags struct { _ struct{} `type:"structure"` @@ -3243,6 +3308,10 @@ // The time that the code generation job was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + // Lists the dependency packages that may be required for the project code to + // run. + Dependencies []*CodegenDependency `locationName:"dependencies" type:"list"` + // The name of the backend environment associated with the code generation job. // // EnvironmentName is a required field @@ -3318,6 +3387,12 @@ return s } +// SetDependencies sets the Dependencies field's value. +func (s *CodegenJob) SetDependencies(v []*CodegenDependency) *CodegenJob { + s.Dependencies = v + return s +} + // SetEnvironmentName sets the EnvironmentName field's value. func (s *CodegenJob) SetEnvironmentName(v string) *CodegenJob { s.EnvironmentName = &v @@ -9536,6 +9611,10 @@ // The API configuration for the code generation job. ApiConfiguration *ApiConfiguration `locationName:"apiConfiguration" type:"structure"` + // Lists the dependency packages that may be required for the project code to + // run. + Dependencies map[string]*string `locationName:"dependencies" type:"map"` + // Specifies whether the code generation job should render inline source maps. InlineSourceMap *bool `locationName:"inlineSourceMap" type:"boolean"` @@ -9592,6 +9671,12 @@ return s } +// SetDependencies sets the Dependencies field's value. +func (s *ReactStartCodegenJobData) SetDependencies(v map[string]*string) *ReactStartCodegenJobData { + s.Dependencies = v + return s +} + // SetInlineSourceMap sets the InlineSourceMap field's value. func (s *ReactStartCodegenJobData) SetInlineSourceMap(v bool) *ReactStartCodegenJobData { s.InlineSourceMap = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appconfig/api.go golang-github-aws-aws-sdk-go-1.48.14/service/appconfig/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appconfig/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appconfig/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -5098,6 +5098,14 @@ // A description of the configuration profile. Description *string `type:"string"` + // The identifier for an Key Management Service key to encrypt new configuration + // data versions in the AppConfig hosted configuration store. This attribute + // is only used for hosted configuration types. The identifier can be an KMS + // key ID, alias, or the Amazon Resource Name (ARN) of the key ID or alias. + // To encrypt data managed in other configuration stores, see the documentation + // for how to specify an KMS key for that particular service. + KmsKeyIdentifier *string `min:"1" type:"string"` + // A URI to locate the configuration. You can specify the following: // // * For the AppConfig hosted configuration store and for feature flags, @@ -5182,6 +5190,9 @@ if s.ApplicationId != nil && len(*s.ApplicationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 1)) } + if s.KmsKeyIdentifier != nil && len(*s.KmsKeyIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyIdentifier", 1)) + } if s.LocationUri == nil { invalidParams.Add(request.NewErrParamRequired("LocationUri")) } @@ -5226,6 +5237,12 @@ return s } +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *CreateConfigurationProfileInput) SetKmsKeyIdentifier(v string) *CreateConfigurationProfileInput { + s.KmsKeyIdentifier = &v + return s +} + // SetLocationUri sets the LocationUri field's value. func (s *CreateConfigurationProfileInput) SetLocationUri(v string) *CreateConfigurationProfileInput { s.LocationUri = &v @@ -5274,6 +5291,17 @@ // The configuration profile ID. Id *string `type:"string"` + // The Amazon Resource Name of the Key Management Service key to encrypt new + // configuration data versions in the AppConfig hosted configuration store. + // This attribute is only used for hosted configuration types. To encrypt data + // managed in other configuration stores, see the documentation for how to specify + // an KMS key for that particular service. + KmsKeyArn *string `min:"20" type:"string"` + + // The Key Management Service key identifier (key ID, key alias, or key ARN) + // provided when the resource was created or updated. + KmsKeyIdentifier *string `min:"1" type:"string"` + // The URI location of the configuration. LocationUri *string `min:"1" type:"string"` @@ -5335,6 +5363,18 @@ return s } +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *CreateConfigurationProfileOutput) SetKmsKeyArn(v string) *CreateConfigurationProfileOutput { + s.KmsKeyArn = &v + return s +} + +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *CreateConfigurationProfileOutput) SetKmsKeyIdentifier(v string) *CreateConfigurationProfileOutput { + s.KmsKeyIdentifier = &v + return s +} + // SetLocationUri sets the LocationUri field's value. func (s *CreateConfigurationProfileOutput) SetLocationUri(v string) *CreateConfigurationProfileOutput { s.LocationUri = &v @@ -5997,7 +6037,7 @@ // Extension versions use the same name. // // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + Name *string `type:"string" required:"true"` // The parameters accepted by the extension. You specify parameter values when // you associate the extension to an AppConfig resource by using the CreateExtensionAssociation @@ -6042,9 +6082,6 @@ if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) - } if s.Parameters != nil && len(s.Parameters) < 1 { invalidParams.Add(request.NewErrParamMinLen("Parameters", 1)) } @@ -6340,6 +6377,11 @@ // A description of the configuration. Description *string `location:"header" locationName:"Description" type:"string"` + // The Amazon Resource Name of the Key Management Service key that was used + // to encrypt this specific version of the configuration data in the AppConfig + // hosted configuration store. + KmsKeyArn *string `location:"header" locationName:"KmsKeyArn" min:"20" type:"string"` + // A user-defined label for an AppConfig hosted configuration version. VersionLabel *string `location:"header" locationName:"VersionLabel" min:"1" type:"string"` @@ -6395,6 +6437,12 @@ return s } +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *CreateHostedConfigurationVersionOutput) SetKmsKeyArn(v string) *CreateHostedConfigurationVersionOutput { + s.KmsKeyArn = &v + return s +} + // SetVersionLabel sets the VersionLabel field's value. func (s *CreateHostedConfigurationVersionOutput) SetVersionLabel(v string) *CreateHostedConfigurationVersionOutput { s.VersionLabel = &v @@ -7861,6 +7909,17 @@ // The configuration profile ID. Id *string `type:"string"` + // The Amazon Resource Name of the Key Management Service key to encrypt new + // configuration data versions in the AppConfig hosted configuration store. + // This attribute is only used for hosted configuration types. To encrypt data + // managed in other configuration stores, see the documentation for how to specify + // an KMS key for that particular service. + KmsKeyArn *string `min:"20" type:"string"` + + // The Key Management Service key identifier (key ID, key alias, or key ARN) + // provided when the resource was created or updated. + KmsKeyIdentifier *string `min:"1" type:"string"` + // The URI location of the configuration. LocationUri *string `min:"1" type:"string"` @@ -7922,6 +7981,18 @@ return s } +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *GetConfigurationProfileOutput) SetKmsKeyArn(v string) *GetConfigurationProfileOutput { + s.KmsKeyArn = &v + return s +} + +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *GetConfigurationProfileOutput) SetKmsKeyIdentifier(v string) *GetConfigurationProfileOutput { + s.KmsKeyIdentifier = &v + return s +} + // SetLocationUri sets the LocationUri field's value. func (s *GetConfigurationProfileOutput) SetLocationUri(v string) *GetConfigurationProfileOutput { s.LocationUri = &v @@ -8095,8 +8166,8 @@ // Store. KmsKeyArn *string `min:"20" type:"string"` - // The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this - // ID to encrypt the configuration data using a customer managed key. + // The Key Management Service key identifier (key ID, key alias, or key ARN) + // provided when the resource was created or updated. KmsKeyIdentifier *string `min:"1" type:"string"` // The percentage of targets for which the deployment is available. @@ -8926,6 +8997,11 @@ // A description of the configuration. Description *string `location:"header" locationName:"Description" type:"string"` + // The Amazon Resource Name of the Key Management Service key that was used + // to encrypt this specific version of the configuration data in the AppConfig + // hosted configuration store. + KmsKeyArn *string `location:"header" locationName:"KmsKeyArn" min:"20" type:"string"` + // A user-defined label for an AppConfig hosted configuration version. VersionLabel *string `location:"header" locationName:"VersionLabel" min:"1" type:"string"` @@ -8981,6 +9057,12 @@ return s } +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *GetHostedConfigurationVersionOutput) SetKmsKeyArn(v string) *GetHostedConfigurationVersionOutput { + s.KmsKeyArn = &v + return s +} + // SetVersionLabel sets the VersionLabel field's value. func (s *GetHostedConfigurationVersionOutput) SetVersionLabel(v string) *GetHostedConfigurationVersionOutput { s.VersionLabel = &v @@ -9010,6 +9092,11 @@ // A description of the configuration. Description *string `type:"string"` + // The Amazon Resource Name of the Key Management Service key that was used + // to encrypt this specific version of the configuration data in the AppConfig + // hosted configuration store. + KmsKeyArn *string `min:"20" type:"string"` + // A user-defined label for an AppConfig hosted configuration version. VersionLabel *string `min:"1" type:"string"` @@ -9059,6 +9146,12 @@ return s } +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *HostedConfigurationVersionSummary) SetKmsKeyArn(v string) *HostedConfigurationVersionSummary { + s.KmsKeyArn = &v + return s +} + // SetVersionLabel sets the VersionLabel field's value. func (s *HostedConfigurationVersionSummary) SetVersionLabel(v string) *HostedConfigurationVersionSummary { s.VersionLabel = &v @@ -10794,8 +10887,8 @@ // Store. KmsKeyArn *string `min:"20" type:"string"` - // The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this - // ID to encrypt the configuration data using a customer managed key. + // The Key Management Service key identifier (key ID, key alias, or key ARN) + // provided when the resource was created or updated. KmsKeyIdentifier *string `min:"1" type:"string"` // The percentage of targets for which the deployment is available. @@ -11104,8 +11197,8 @@ // Store. KmsKeyArn *string `min:"20" type:"string"` - // The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this - // ID to encrypt the configuration data using a customer managed key. + // The Key Management Service key identifier (key ID, key alias, or key ARN) + // provided when the resource was created or updated. KmsKeyIdentifier *string `min:"1" type:"string"` // The percentage of targets for which the deployment is available. @@ -11578,6 +11671,14 @@ // A description of the configuration profile. Description *string `type:"string"` + // The identifier for a Key Management Service key to encrypt new configuration + // data versions in the AppConfig hosted configuration store. This attribute + // is only used for hosted configuration types. The identifier can be an KMS + // key ID, alias, or the Amazon Resource Name (ARN) of the key ID or alias. + // To encrypt data managed in other configuration stores, see the documentation + // for how to specify an KMS key for that particular service. + KmsKeyIdentifier *string `type:"string"` + // The name of the configuration profile. Name *string `min:"1" type:"string"` @@ -11663,6 +11764,12 @@ return s } +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *UpdateConfigurationProfileInput) SetKmsKeyIdentifier(v string) *UpdateConfigurationProfileInput { + s.KmsKeyIdentifier = &v + return s +} + // SetName sets the Name field's value. func (s *UpdateConfigurationProfileInput) SetName(v string) *UpdateConfigurationProfileInput { s.Name = &v @@ -11693,6 +11800,17 @@ // The configuration profile ID. Id *string `type:"string"` + // The Amazon Resource Name of the Key Management Service key to encrypt new + // configuration data versions in the AppConfig hosted configuration store. + // This attribute is only used for hosted configuration types. To encrypt data + // managed in other configuration stores, see the documentation for how to specify + // an KMS key for that particular service. + KmsKeyArn *string `min:"20" type:"string"` + + // The Key Management Service key identifier (key ID, key alias, or key ARN) + // provided when the resource was created or updated. + KmsKeyIdentifier *string `min:"1" type:"string"` + // The URI location of the configuration. LocationUri *string `min:"1" type:"string"` @@ -11754,6 +11872,18 @@ return s } +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *UpdateConfigurationProfileOutput) SetKmsKeyArn(v string) *UpdateConfigurationProfileOutput { + s.KmsKeyArn = &v + return s +} + +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *UpdateConfigurationProfileOutput) SetKmsKeyIdentifier(v string) *UpdateConfigurationProfileOutput { + s.KmsKeyIdentifier = &v + return s +} + // SetLocationUri sets the LocationUri field's value. func (s *UpdateConfigurationProfileOutput) SetLocationUri(v string) *UpdateConfigurationProfileOutput { s.LocationUri = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appintegrationsservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/appintegrationsservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appintegrationsservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appintegrationsservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,6 +4,7 @@ import ( "fmt" + "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" @@ -12,6 +13,102 @@ "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateApplication = "CreateApplication" + +// CreateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the CreateApplication 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 CreateApplication for more information on using the CreateApplication +// 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 CreateApplicationRequest method. +// req, resp := client.CreateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateApplication +func (c *AppIntegrationsService) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { + op := &request.Operation{ + Name: opCreateApplication, + HTTPMethod: "POST", + HTTPPath: "/applications", + } + + if input == nil { + input = &CreateApplicationInput{} + } + + output = &CreateApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateApplication API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Creates and persists an Application 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 Amazon AppIntegrations Service's +// API operation CreateApplication for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ResourceQuotaExceededException +// The allowed quota for the resource has been exceeded. +// +// - DuplicateResourceException +// A resource with the specified name already exists. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateApplication +func (c *AppIntegrationsService) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + return out, req.Send() +} + +// CreateApplicationWithContext is the same as CreateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See CreateApplication 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 *AppIntegrationsService) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateDataIntegration = "CreateDataIntegration" // CreateDataIntegrationRequest generates a "aws/request.Request" representing the @@ -399,6 +496,99 @@ return out, req.Send() } +const opGetApplication = "GetApplication" + +// GetApplicationRequest generates a "aws/request.Request" representing the +// client's request for the GetApplication 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 GetApplication for more information on using the GetApplication +// 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 GetApplicationRequest method. +// req, resp := client.GetApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetApplication +func (c *AppIntegrationsService) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { + op := &request.Operation{ + Name: opGetApplication, + HTTPMethod: "GET", + HTTPPath: "/applications/{Arn}", + } + + if input == nil { + input = &GetApplicationInput{} + } + + output = &GetApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplication API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Get an Application 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 Amazon AppIntegrations Service's +// API operation GetApplication for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetApplication +func (c *AppIntegrationsService) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + return out, req.Send() +} + +// GetApplicationWithContext is the same as GetApplication with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplication 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 *AppIntegrationsService) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDataIntegration = "GetDataIntegration" // GetDataIntegrationRequest generates a "aws/request.Request" representing the @@ -586,6 +776,153 @@ return out, req.Send() } +const opListApplications = "ListApplications" + +// ListApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplications 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 ListApplications for more information on using the ListApplications +// 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 ListApplicationsRequest method. +// req, resp := client.ListApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListApplications +func (c *AppIntegrationsService) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { + op := &request.Operation{ + Name: opListApplications, + HTTPMethod: "GET", + HTTPPath: "/applications", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationsInput{} + } + + output = &ListApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplications API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Lists applications in the account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon AppIntegrations Service's +// API operation ListApplications for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListApplications +func (c *AppIntegrationsService) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + return out, req.Send() +} + +// ListApplicationsWithContext is the same as ListApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplications 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 *AppIntegrationsService) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationsPages iterates over the pages of a ListApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplications 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 ListApplications operation. +// pageNum := 0 +// err := client.ListApplicationsPages(params, +// func(page *appintegrationsservice.ListApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error { + return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationsPagesWithContext same as ListApplicationsPages 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 *AppIntegrationsService) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDataIntegrationAssociations = "ListDataIntegrationAssociations" // ListDataIntegrationAssociationsRequest generates a "aws/request.Request" representing the @@ -616,6 +953,12 @@ Name: opListDataIntegrationAssociations, HTTPMethod: "GET", HTTPPath: "/dataIntegrations/{Identifier}/associations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -682,6 +1025,57 @@ return out, req.Send() } +// ListDataIntegrationAssociationsPages iterates over the pages of a ListDataIntegrationAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataIntegrationAssociations 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 ListDataIntegrationAssociations operation. +// pageNum := 0 +// err := client.ListDataIntegrationAssociationsPages(params, +// func(page *appintegrationsservice.ListDataIntegrationAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListDataIntegrationAssociationsPages(input *ListDataIntegrationAssociationsInput, fn func(*ListDataIntegrationAssociationsOutput, bool) bool) error { + return c.ListDataIntegrationAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataIntegrationAssociationsPagesWithContext same as ListDataIntegrationAssociationsPages 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 *AppIntegrationsService) ListDataIntegrationAssociationsPagesWithContext(ctx aws.Context, input *ListDataIntegrationAssociationsInput, fn func(*ListDataIntegrationAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataIntegrationAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataIntegrationAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataIntegrationAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDataIntegrations = "ListDataIntegrations" // ListDataIntegrationsRequest generates a "aws/request.Request" representing the @@ -712,6 +1106,12 @@ Name: opListDataIntegrations, HTTPMethod: "GET", HTTPPath: "/dataIntegrations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -775,6 +1175,57 @@ return out, req.Send() } +// ListDataIntegrationsPages iterates over the pages of a ListDataIntegrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataIntegrations 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 ListDataIntegrations operation. +// pageNum := 0 +// err := client.ListDataIntegrationsPages(params, +// func(page *appintegrationsservice.ListDataIntegrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListDataIntegrationsPages(input *ListDataIntegrationsInput, fn func(*ListDataIntegrationsOutput, bool) bool) error { + return c.ListDataIntegrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataIntegrationsPagesWithContext same as ListDataIntegrationsPages 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 *AppIntegrationsService) ListDataIntegrationsPagesWithContext(ctx aws.Context, input *ListDataIntegrationsInput, fn func(*ListDataIntegrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataIntegrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataIntegrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataIntegrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEventIntegrationAssociations = "ListEventIntegrationAssociations" // ListEventIntegrationAssociationsRequest generates a "aws/request.Request" representing the @@ -805,6 +1256,12 @@ Name: opListEventIntegrationAssociations, HTTPMethod: "GET", HTTPPath: "/eventIntegrations/{Name}/associations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -866,6 +1323,57 @@ return out, req.Send() } +// ListEventIntegrationAssociationsPages iterates over the pages of a ListEventIntegrationAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEventIntegrationAssociations 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 ListEventIntegrationAssociations operation. +// pageNum := 0 +// err := client.ListEventIntegrationAssociationsPages(params, +// func(page *appintegrationsservice.ListEventIntegrationAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListEventIntegrationAssociationsPages(input *ListEventIntegrationAssociationsInput, fn func(*ListEventIntegrationAssociationsOutput, bool) bool) error { + return c.ListEventIntegrationAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEventIntegrationAssociationsPagesWithContext same as ListEventIntegrationAssociationsPages 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 *AppIntegrationsService) ListEventIntegrationAssociationsPagesWithContext(ctx aws.Context, input *ListEventIntegrationAssociationsInput, fn func(*ListEventIntegrationAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEventIntegrationAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEventIntegrationAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEventIntegrationAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEventIntegrations = "ListEventIntegrations" // ListEventIntegrationsRequest generates a "aws/request.Request" representing the @@ -896,6 +1404,12 @@ Name: opListEventIntegrations, HTTPMethod: "GET", HTTPPath: "/eventIntegrations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -954,6 +1468,57 @@ return out, req.Send() } +// ListEventIntegrationsPages iterates over the pages of a ListEventIntegrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEventIntegrations 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 ListEventIntegrations operation. +// pageNum := 0 +// err := client.ListEventIntegrationsPages(params, +// func(page *appintegrationsservice.ListEventIntegrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListEventIntegrationsPages(input *ListEventIntegrationsInput, fn func(*ListEventIntegrationsOutput, bool) bool) error { + return c.ListEventIntegrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEventIntegrationsPagesWithContext same as ListEventIntegrationsPages 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 *AppIntegrationsService) ListEventIntegrationsPagesWithContext(ctx aws.Context, input *ListEventIntegrationsInput, fn func(*ListEventIntegrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEventIntegrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEventIntegrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEventIntegrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -1220,6 +1785,100 @@ return out, req.Send() } +const opUpdateApplication = "UpdateApplication" + +// UpdateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateApplication 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 UpdateApplication for more information on using the UpdateApplication +// 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 UpdateApplicationRequest method. +// req, resp := client.UpdateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateApplication +func (c *AppIntegrationsService) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { + op := &request.Operation{ + Name: opUpdateApplication, + HTTPMethod: "PATCH", + HTTPPath: "/applications/{Arn}", + } + + if input == nil { + input = &UpdateApplicationInput{} + } + + output = &UpdateApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateApplication API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Updates and persists an Application 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 Amazon AppIntegrations Service's +// API operation UpdateApplication for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateApplication +func (c *AppIntegrationsService) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + return out, req.Send() +} + +// UpdateApplicationWithContext is the same as UpdateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateApplication 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 *AppIntegrationsService) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateDataIntegration = "UpdateDataIntegration" // UpdateDataIntegrationRequest generates a "aws/request.Request" representing the @@ -1473,6 +2132,333 @@ return s.RespMetadata.RequestID } +// The configuration for where the application should be loaded from. +type ApplicationSourceConfig struct { + _ struct{} `type:"structure"` + + // The external URL source for the application. + ExternalUrlConfig *ExternalUrlConfig `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 ApplicationSourceConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSourceConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ApplicationSourceConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ApplicationSourceConfig"} + if s.ExternalUrlConfig != nil { + if err := s.ExternalUrlConfig.Validate(); err != nil { + invalidParams.AddNested("ExternalUrlConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExternalUrlConfig sets the ExternalUrlConfig field's value. +func (s *ApplicationSourceConfig) SetExternalUrlConfig(v *ExternalUrlConfig) *ApplicationSourceConfig { + s.ExternalUrlConfig = v + return s +} + +// Summary information about the Application. +type ApplicationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + Arn *string `min:"1" type:"string"` + + // The time when the application was created. + CreatedTime *time.Time `type:"timestamp"` + + // A unique identifier for the Application. + Id *string `type:"string"` + + // The time when the application was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + + // The name of the application. + Name *string `min:"1" type:"string"` + + // The namespace of the application. + Namespace *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ApplicationSummary) SetArn(v string) *ApplicationSummary { + s.Arn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ApplicationSummary) SetCreatedTime(v time.Time) *ApplicationSummary { + s.CreatedTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *ApplicationSummary) SetId(v string) *ApplicationSummary { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ApplicationSummary) SetLastModifiedTime(v time.Time) *ApplicationSummary { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *ApplicationSummary) SetName(v string) *ApplicationSummary { + s.Name = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *ApplicationSummary) SetNamespace(v string) *ApplicationSummary { + s.Namespace = &v + return s +} + +type CreateApplicationInput struct { + _ struct{} `type:"structure"` + + // The configuration for where the application should be loaded from. + // + // ApplicationSourceConfig is a required field + ApplicationSourceConfig *ApplicationSourceConfig `type:"structure" required:"true"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // The name of the application. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The namespace of the application. + // + // Namespace is a required field + Namespace *string `min:"1" type:"string" required:"true"` + + // The events that the application publishes. + Publications []*Publication `type:"list"` + + // The events that the application subscribes. + Subscriptions []*Subscription `type:"list"` + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} + if s.ApplicationSourceConfig == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationSourceConfig")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ApplicationSourceConfig != nil { + if err := s.ApplicationSourceConfig.Validate(); err != nil { + invalidParams.AddNested("ApplicationSourceConfig", err.(request.ErrInvalidParams)) + } + } + if s.Publications != nil { + for i, v := range s.Publications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Publications", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Subscriptions != nil { + for i, v := range s.Subscriptions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Subscriptions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationSourceConfig sets the ApplicationSourceConfig field's value. +func (s *CreateApplicationInput) SetApplicationSourceConfig(v *ApplicationSourceConfig) *CreateApplicationInput { + s.ApplicationSourceConfig = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateApplicationInput) SetClientToken(v string) *CreateApplicationInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput { + s.Name = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *CreateApplicationInput) SetNamespace(v string) *CreateApplicationInput { + s.Namespace = &v + return s +} + +// SetPublications sets the Publications field's value. +func (s *CreateApplicationInput) SetPublications(v []*Publication) *CreateApplicationInput { + s.Publications = v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *CreateApplicationInput) SetSubscriptions(v []*Subscription) *CreateApplicationInput { + s.Subscriptions = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateApplicationInput) SetTags(v map[string]*string) *CreateApplicationInput { + s.Tags = v + return s +} + +type CreateApplicationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + Arn *string `min:"1" type:"string"` + + // A unique identifier for the Application. + Id *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 CreateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateApplicationOutput) SetArn(v string) *CreateApplicationOutput { + s.Arn = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateApplicationOutput) SetId(v string) *CreateApplicationOutput { + s.Id = &v + return s +} + type CreateDataIntegrationInput struct { _ struct{} `type:"structure"` @@ -1502,9 +2488,7 @@ ObjectConfiguration map[string]map[string][]*string `type:"map"` // The name of the data and how often it should be pulled from the source. - // - // ScheduleConfig is a required field - ScheduleConfig *ScheduleConfiguration `type:"structure" required:"true"` + ScheduleConfig *ScheduleConfiguration `type:"structure"` // The URI of the data source. // @@ -1555,9 +2539,6 @@ if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.ScheduleConfig == nil { - invalidParams.Add(request.NewErrParamRequired("ScheduleConfig")) - } if s.SourceURI == nil { invalidParams.Add(request.NewErrParamRequired("SourceURI")) } @@ -2431,6 +3412,68 @@ return s } +// The external URL source for the application. +type ExternalUrlConfig struct { + _ struct{} `type:"structure"` + + // The URL to access the application. + // + // AccessUrl is a required field + AccessUrl *string `min:"1" type:"string" required:"true"` + + // Additional URLs to allow list if different than the access URL. + ApprovedOrigins []*string `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 ExternalUrlConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalUrlConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExternalUrlConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExternalUrlConfig"} + if s.AccessUrl == nil { + invalidParams.Add(request.NewErrParamRequired("AccessUrl")) + } + if s.AccessUrl != nil && len(*s.AccessUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessUrl", 1)) + } + if s.ApprovedOrigins != nil && len(s.ApprovedOrigins) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApprovedOrigins", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessUrl sets the AccessUrl field's value. +func (s *ExternalUrlConfig) SetAccessUrl(v string) *ExternalUrlConfig { + s.AccessUrl = &v + return s +} + +// SetApprovedOrigins sets the ApprovedOrigins field's value. +func (s *ExternalUrlConfig) SetApprovedOrigins(v []*string) *ExternalUrlConfig { + s.ApprovedOrigins = v + return s +} + // The configuration for what files should be pulled from the source. type FileConfiguration struct { _ struct{} `type:"structure"` @@ -2490,6 +3533,177 @@ return s } +type GetApplicationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the Application. + // + // Arn is a required field + Arn *string `location:"uri" locationName:"Arn" 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 GetApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *GetApplicationInput) SetArn(v string) *GetApplicationInput { + s.Arn = &v + return s +} + +type GetApplicationOutput struct { + _ struct{} `type:"structure"` + + // The configuration for where the application should be loaded from. + ApplicationSourceConfig *ApplicationSourceConfig `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + Arn *string `min:"1" type:"string"` + + // The created time of the Application. + CreatedTime *time.Time `type:"timestamp"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // A unique identifier for the Application. + Id *string `type:"string"` + + // The last modified time of the Application. + LastModifiedTime *time.Time `type:"timestamp"` + + // The name of the application. + Name *string `min:"1" type:"string"` + + // The namespace of the application. + Namespace *string `min:"1" type:"string"` + + // The events that the application publishes. + Publications []*Publication `type:"list"` + + // The events that the application subscribes. + Subscriptions []*Subscription `type:"list"` + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationOutput) GoString() string { + return s.String() +} + +// SetApplicationSourceConfig sets the ApplicationSourceConfig field's value. +func (s *GetApplicationOutput) SetApplicationSourceConfig(v *ApplicationSourceConfig) *GetApplicationOutput { + s.ApplicationSourceConfig = v + return s +} + +// SetArn sets the Arn field's value. +func (s *GetApplicationOutput) SetArn(v string) *GetApplicationOutput { + s.Arn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *GetApplicationOutput) SetCreatedTime(v time.Time) *GetApplicationOutput { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetApplicationOutput) SetDescription(v string) *GetApplicationOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetApplicationOutput) SetId(v string) *GetApplicationOutput { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *GetApplicationOutput) SetLastModifiedTime(v time.Time) *GetApplicationOutput { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetApplicationOutput) SetName(v string) *GetApplicationOutput { + s.Name = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *GetApplicationOutput) SetNamespace(v string) *GetApplicationOutput { + s.Namespace = &v + return s +} + +// SetPublications sets the Publications field's value. +func (s *GetApplicationOutput) SetPublications(v []*Publication) *GetApplicationOutput { + s.Publications = v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *GetApplicationOutput) SetSubscriptions(v []*Subscription) *GetApplicationOutput { + s.Subscriptions = v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetApplicationOutput) SetTags(v map[string]*string) *GetApplicationOutput { + s.Tags = v + return s +} + type GetDataIntegrationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -2906,6 +4120,103 @@ return s.RespMetadata.RequestID } +type ListApplicationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput { + s.NextToken = &v + return s +} + +type ListApplicationsOutput struct { + _ struct{} `type:"structure"` + + // The Applications associated with this account. + Applications []*ApplicationSummary `min:"1" type:"list"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) GoString() string { + return s.String() +} + +// SetApplications sets the Applications field's value. +func (s *ListApplicationsOutput) SetApplications(v []*ApplicationSummary) *ListApplicationsOutput { + s.Applications = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput { + s.NextToken = &v + return s +} + type ListDataIntegrationAssociationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3408,6 +4719,85 @@ return s } +// The configuration of an event that the application publishes. +type Publication struct { + _ struct{} `type:"structure"` + + // The description of the publication. + Description *string `min:"1" type:"string"` + + // The name of the publication. + // + // Event is a required field + Event *string `min:"1" type:"string" required:"true"` + + // The JSON schema of the publication event. + // + // Schema is a required field + Schema *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Publication) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Publication) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Publication) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Publication"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Event == nil { + invalidParams.Add(request.NewErrParamRequired("Event")) + } + if s.Event != nil && len(*s.Event) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Event", 1)) + } + if s.Schema == nil { + invalidParams.Add(request.NewErrParamRequired("Schema")) + } + if s.Schema != nil && len(*s.Schema) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Schema", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *Publication) SetDescription(v string) *Publication { + s.Description = &v + return s +} + +// SetEvent sets the Event field's value. +func (s *Publication) SetEvent(v string) *Publication { + s.Event = &v + return s +} + +// SetSchema sets the Schema field's value. +func (s *Publication) SetSchema(v string) *Publication { + s.Schema = &v + return s +} + // The specified resource was not found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -3611,6 +5001,68 @@ return s } +// The configuration of an event that the application subscribes. +type Subscription struct { + _ struct{} `type:"structure"` + + // The description of the subscription. + Description *string `min:"1" type:"string"` + + // The name of the subscription. + // + // Event is a required field + Event *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Subscription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Subscription) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Subscription) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Subscription"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Event == nil { + invalidParams.Add(request.NewErrParamRequired("Event")) + } + if s.Event != nil && len(*s.Event) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Event", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *Subscription) SetDescription(v string) *Subscription { + s.Description = &v + return s +} + +// SetEvent sets the Event field's value. +func (s *Subscription) SetEvent(v string) *Subscription { + s.Event = &v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -3852,6 +5304,153 @@ return s.String() } +type UpdateApplicationInput struct { + _ struct{} `type:"structure"` + + // The configuration for where the application should be loaded from. + ApplicationSourceConfig *ApplicationSourceConfig `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + // + // Arn is a required field + Arn *string `location:"uri" locationName:"Arn" min:"1" type:"string" required:"true"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // The name of the application. + Name *string `min:"1" type:"string"` + + // The events that the application publishes. + Publications []*Publication `type:"list"` + + // The events that the application subscribes. + Subscriptions []*Subscription `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 UpdateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ApplicationSourceConfig != nil { + if err := s.ApplicationSourceConfig.Validate(); err != nil { + invalidParams.AddNested("ApplicationSourceConfig", err.(request.ErrInvalidParams)) + } + } + if s.Publications != nil { + for i, v := range s.Publications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Publications", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Subscriptions != nil { + for i, v := range s.Subscriptions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Subscriptions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationSourceConfig sets the ApplicationSourceConfig field's value. +func (s *UpdateApplicationInput) SetApplicationSourceConfig(v *ApplicationSourceConfig) *UpdateApplicationInput { + s.ApplicationSourceConfig = v + return s +} + +// SetArn sets the Arn field's value. +func (s *UpdateApplicationInput) SetArn(v string) *UpdateApplicationInput { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateApplicationInput) SetName(v string) *UpdateApplicationInput { + s.Name = &v + return s +} + +// SetPublications sets the Publications field's value. +func (s *UpdateApplicationInput) SetPublications(v []*Publication) *UpdateApplicationInput { + s.Publications = v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *UpdateApplicationInput) SetSubscriptions(v []*Subscription) *UpdateApplicationInput { + s.Subscriptions = v + return s +} + +type UpdateApplicationOutput 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 UpdateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationOutput) GoString() string { + return s.String() +} + type UpdateDataIntegrationInput struct { _ struct{} `type:"structure"` @@ -3950,7 +5549,7 @@ type UpdateEventIntegrationInput struct { _ struct{} `type:"structure"` - // The description of the event inegration. + // The description of the event integration. Description *string `min:"1" type:"string"` // The name of the event integration. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appintegrationsservice/appintegrationsserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/appintegrationsservice/appintegrationsserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appintegrationsservice/appintegrationsserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appintegrationsservice/appintegrationsserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // Amazon AppIntegrations Service. // func myFunc(svc appintegrationsserviceiface.AppIntegrationsServiceAPI) bool { -// // Make svc.CreateDataIntegration request +// // Make svc.CreateApplication request // } // // func main() { @@ -42,7 +42,7 @@ // type mockAppIntegrationsServiceClient struct { // appintegrationsserviceiface.AppIntegrationsServiceAPI // } -// func (m *mockAppIntegrationsServiceClient) CreateDataIntegration(input *appintegrationsservice.CreateDataIntegrationInput) (*appintegrationsservice.CreateDataIntegrationOutput, error) { +// func (m *mockAppIntegrationsServiceClient) CreateApplication(input *appintegrationsservice.CreateApplicationInput) (*appintegrationsservice.CreateApplicationOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type AppIntegrationsServiceAPI interface { + CreateApplication(*appintegrationsservice.CreateApplicationInput) (*appintegrationsservice.CreateApplicationOutput, error) + CreateApplicationWithContext(aws.Context, *appintegrationsservice.CreateApplicationInput, ...request.Option) (*appintegrationsservice.CreateApplicationOutput, error) + CreateApplicationRequest(*appintegrationsservice.CreateApplicationInput) (*request.Request, *appintegrationsservice.CreateApplicationOutput) + CreateDataIntegration(*appintegrationsservice.CreateDataIntegrationInput) (*appintegrationsservice.CreateDataIntegrationOutput, error) CreateDataIntegrationWithContext(aws.Context, *appintegrationsservice.CreateDataIntegrationInput, ...request.Option) (*appintegrationsservice.CreateDataIntegrationOutput, error) CreateDataIntegrationRequest(*appintegrationsservice.CreateDataIntegrationInput) (*request.Request, *appintegrationsservice.CreateDataIntegrationOutput) @@ -76,6 +80,10 @@ DeleteEventIntegrationWithContext(aws.Context, *appintegrationsservice.DeleteEventIntegrationInput, ...request.Option) (*appintegrationsservice.DeleteEventIntegrationOutput, error) DeleteEventIntegrationRequest(*appintegrationsservice.DeleteEventIntegrationInput) (*request.Request, *appintegrationsservice.DeleteEventIntegrationOutput) + GetApplication(*appintegrationsservice.GetApplicationInput) (*appintegrationsservice.GetApplicationOutput, error) + GetApplicationWithContext(aws.Context, *appintegrationsservice.GetApplicationInput, ...request.Option) (*appintegrationsservice.GetApplicationOutput, error) + GetApplicationRequest(*appintegrationsservice.GetApplicationInput) (*request.Request, *appintegrationsservice.GetApplicationOutput) + GetDataIntegration(*appintegrationsservice.GetDataIntegrationInput) (*appintegrationsservice.GetDataIntegrationOutput, error) GetDataIntegrationWithContext(aws.Context, *appintegrationsservice.GetDataIntegrationInput, ...request.Option) (*appintegrationsservice.GetDataIntegrationOutput, error) GetDataIntegrationRequest(*appintegrationsservice.GetDataIntegrationInput) (*request.Request, *appintegrationsservice.GetDataIntegrationOutput) @@ -84,22 +92,41 @@ GetEventIntegrationWithContext(aws.Context, *appintegrationsservice.GetEventIntegrationInput, ...request.Option) (*appintegrationsservice.GetEventIntegrationOutput, error) GetEventIntegrationRequest(*appintegrationsservice.GetEventIntegrationInput) (*request.Request, *appintegrationsservice.GetEventIntegrationOutput) + ListApplications(*appintegrationsservice.ListApplicationsInput) (*appintegrationsservice.ListApplicationsOutput, error) + ListApplicationsWithContext(aws.Context, *appintegrationsservice.ListApplicationsInput, ...request.Option) (*appintegrationsservice.ListApplicationsOutput, error) + ListApplicationsRequest(*appintegrationsservice.ListApplicationsInput) (*request.Request, *appintegrationsservice.ListApplicationsOutput) + + ListApplicationsPages(*appintegrationsservice.ListApplicationsInput, func(*appintegrationsservice.ListApplicationsOutput, bool) bool) error + ListApplicationsPagesWithContext(aws.Context, *appintegrationsservice.ListApplicationsInput, func(*appintegrationsservice.ListApplicationsOutput, bool) bool, ...request.Option) error + ListDataIntegrationAssociations(*appintegrationsservice.ListDataIntegrationAssociationsInput) (*appintegrationsservice.ListDataIntegrationAssociationsOutput, error) ListDataIntegrationAssociationsWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationAssociationsInput, ...request.Option) (*appintegrationsservice.ListDataIntegrationAssociationsOutput, error) ListDataIntegrationAssociationsRequest(*appintegrationsservice.ListDataIntegrationAssociationsInput) (*request.Request, *appintegrationsservice.ListDataIntegrationAssociationsOutput) + ListDataIntegrationAssociationsPages(*appintegrationsservice.ListDataIntegrationAssociationsInput, func(*appintegrationsservice.ListDataIntegrationAssociationsOutput, bool) bool) error + ListDataIntegrationAssociationsPagesWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationAssociationsInput, func(*appintegrationsservice.ListDataIntegrationAssociationsOutput, bool) bool, ...request.Option) error + ListDataIntegrations(*appintegrationsservice.ListDataIntegrationsInput) (*appintegrationsservice.ListDataIntegrationsOutput, error) ListDataIntegrationsWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationsInput, ...request.Option) (*appintegrationsservice.ListDataIntegrationsOutput, error) ListDataIntegrationsRequest(*appintegrationsservice.ListDataIntegrationsInput) (*request.Request, *appintegrationsservice.ListDataIntegrationsOutput) + ListDataIntegrationsPages(*appintegrationsservice.ListDataIntegrationsInput, func(*appintegrationsservice.ListDataIntegrationsOutput, bool) bool) error + ListDataIntegrationsPagesWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationsInput, func(*appintegrationsservice.ListDataIntegrationsOutput, bool) bool, ...request.Option) error + ListEventIntegrationAssociations(*appintegrationsservice.ListEventIntegrationAssociationsInput) (*appintegrationsservice.ListEventIntegrationAssociationsOutput, error) ListEventIntegrationAssociationsWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationAssociationsInput, ...request.Option) (*appintegrationsservice.ListEventIntegrationAssociationsOutput, error) ListEventIntegrationAssociationsRequest(*appintegrationsservice.ListEventIntegrationAssociationsInput) (*request.Request, *appintegrationsservice.ListEventIntegrationAssociationsOutput) + ListEventIntegrationAssociationsPages(*appintegrationsservice.ListEventIntegrationAssociationsInput, func(*appintegrationsservice.ListEventIntegrationAssociationsOutput, bool) bool) error + ListEventIntegrationAssociationsPagesWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationAssociationsInput, func(*appintegrationsservice.ListEventIntegrationAssociationsOutput, bool) bool, ...request.Option) error + ListEventIntegrations(*appintegrationsservice.ListEventIntegrationsInput) (*appintegrationsservice.ListEventIntegrationsOutput, error) ListEventIntegrationsWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationsInput, ...request.Option) (*appintegrationsservice.ListEventIntegrationsOutput, error) ListEventIntegrationsRequest(*appintegrationsservice.ListEventIntegrationsInput) (*request.Request, *appintegrationsservice.ListEventIntegrationsOutput) + ListEventIntegrationsPages(*appintegrationsservice.ListEventIntegrationsInput, func(*appintegrationsservice.ListEventIntegrationsOutput, bool) bool) error + ListEventIntegrationsPagesWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationsInput, func(*appintegrationsservice.ListEventIntegrationsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*appintegrationsservice.ListTagsForResourceInput) (*appintegrationsservice.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *appintegrationsservice.ListTagsForResourceInput, ...request.Option) (*appintegrationsservice.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*appintegrationsservice.ListTagsForResourceInput) (*request.Request, *appintegrationsservice.ListTagsForResourceOutput) @@ -112,6 +139,10 @@ UntagResourceWithContext(aws.Context, *appintegrationsservice.UntagResourceInput, ...request.Option) (*appintegrationsservice.UntagResourceOutput, error) UntagResourceRequest(*appintegrationsservice.UntagResourceInput) (*request.Request, *appintegrationsservice.UntagResourceOutput) + UpdateApplication(*appintegrationsservice.UpdateApplicationInput) (*appintegrationsservice.UpdateApplicationOutput, error) + UpdateApplicationWithContext(aws.Context, *appintegrationsservice.UpdateApplicationInput, ...request.Option) (*appintegrationsservice.UpdateApplicationOutput, error) + UpdateApplicationRequest(*appintegrationsservice.UpdateApplicationInput) (*request.Request, *appintegrationsservice.UpdateApplicationOutput) + UpdateDataIntegration(*appintegrationsservice.UpdateDataIntegrationInput) (*appintegrationsservice.UpdateDataIntegrationOutput, error) UpdateDataIntegrationWithContext(aws.Context, *appintegrationsservice.UpdateDataIntegrationInput, ...request.Option) (*appintegrationsservice.UpdateDataIntegrationOutput, error) UpdateDataIntegrationRequest(*appintegrationsservice.UpdateDataIntegrationInput) (*request.Request, *appintegrationsservice.UpdateDataIntegrationOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appintegrationsservice/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/appintegrationsservice/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appintegrationsservice/examples_test.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appintegrationsservice/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,178 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package appintegrationsservice_test + +import ( + "fmt" + "strings" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/session" + "github.com/aws/aws-sdk-go/service/appintegrationsservice" +) + +var _ time.Duration +var _ strings.Reader +var _ aws.Config + +func parseTime(layout, value string) *time.Time { + t, err := time.Parse(layout, value) + if err != nil { + panic(err) + } + return &t +} + +// To create an application +// The following creates an application named My Application with access url https://example.com. +func ExampleAppIntegrationsService_CreateApplication_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.CreateApplicationInput{ + ApplicationSourceConfig: &appintegrationsservice.ApplicationSourceConfig{ + ExternalUrlConfig: &appintegrationsservice.ExternalUrlConfig{ + AccessUrl: aws.String("https://example.com"), + }, + }, + Description: aws.String("My first application."), + Name: aws.String("My Application"), + Namespace: aws.String("myapplication"), + } + + result, err := svc.CreateApplication(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeResourceQuotaExceededException: + fmt.Println(appintegrationsservice.ErrCodeResourceQuotaExceededException, aerr.Error()) + case appintegrationsservice.ErrCodeDuplicateResourceException: + fmt.Println(appintegrationsservice.ErrCodeDuplicateResourceException, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To get an application +// The following retrives an application. +func ExampleAppIntegrationsService_GetApplication_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.GetApplicationInput{ + Arn: aws.String("arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e"), + } + + result, err := svc.GetApplication(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeResourceNotFoundException: + fmt.Println(appintegrationsservice.ErrCodeResourceNotFoundException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To list applications in the account +// The following lists application summary in the account. +func ExampleAppIntegrationsService_ListApplications_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.ListApplicationsInput{ + MaxResults: aws.Int64(1), + } + + result, err := svc.ListApplications(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To update an application +// The following updates an existing application named with a new name. +func ExampleAppIntegrationsService_UpdateApplication_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.UpdateApplicationInput{ + Arn: aws.String("arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e"), + Name: aws.String("My New Application Name"), + } + + result, err := svc.UpdateApplication(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeResourceNotFoundException: + fmt.Println(appintegrationsservice.ErrCodeResourceNotFoundException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/applicationautoscaling/api.go golang-github-aws-aws-sdk-go-1.48.14/service/applicationautoscaling/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/applicationautoscaling/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/applicationautoscaling/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,8 +64,8 @@ // not delete the CloudWatch alarm associated with the scaling policy, even // if it no longer has an associated action. // -// For more information, see Delete a step scaling policy (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html#delete-step-scaling-policy) -// and Delete a target tracking scaling policy (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html#delete-target-tracking-policy) +// For more information, see Delete a step scaling policy (https://docs.aws.amazon.com/autoscaling/application/userguide/create-step-scaling-policy-cli.html#delete-step-scaling-policy) +// and Delete a target tracking scaling policy (https://docs.aws.amazon.com/autoscaling/application/userguide/create-target-tracking-policy-cli.html#delete-target-tracking-policy) // in the Application Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1912,6 +1912,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -1982,6 +1985,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -2146,6 +2152,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -2216,6 +2225,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -2385,6 +2397,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -2455,6 +2470,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -2618,6 +2636,9 @@ // // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. + // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. ResourceIds []*string `type:"list"` // The scalable dimension associated with the scalable target. This string consists @@ -2687,6 +2708,9 @@ // // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. + // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The namespace of the Amazon Web Services service that provides the resource. @@ -2878,6 +2902,9 @@ // // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. + // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. ResourceId *string `min:"1" type:"string"` // The scalable dimension. This string consists of the service namespace, resource @@ -2947,6 +2974,9 @@ // // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. + // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The namespace of the Amazon Web Services service that provides the resource. @@ -3143,6 +3173,9 @@ // // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. + // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. ResourceId *string `min:"1" type:"string"` // The scalable dimension. This string consists of the service namespace, resource @@ -3212,6 +3245,9 @@ // // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. + // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The namespace of the Amazon Web Services service that provides the resource. @@ -3405,6 +3441,9 @@ // // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. + // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. ResourceId *string `min:"1" type:"string"` // The scalable dimension. This string consists of the service namespace, resource @@ -3474,6 +3513,9 @@ // // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. + // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The names of the scheduled actions to describe. @@ -4154,7 +4196,7 @@ // Only the Amazon Web Services that you're using send metrics to Amazon CloudWatch. // To determine whether a desired metric already exists by looking up its namespace // and dimension using the CloudWatch metrics dashboard in the console, follow -// the procedure in Building dashboards with CloudWatch (https://docs.aws.amazon.com/autoscaling/application/userguide/monitoring-cloudwatch.html) +// the procedure in Monitor your resources using CloudWatch (https://docs.aws.amazon.com/autoscaling/application/userguide/monitoring-cloudwatch.html) // in the Application Auto Scaling User Guide. type PredefinedMetricSpecification struct { _ struct{} `type:"structure"` @@ -4255,7 +4297,7 @@ // // The following policy types are supported: // - // TargetTrackingScaling—Not supported for Amazon EMR + // TargetTrackingScaling—Not supported for Amazon EMR. // // StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon // Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune. @@ -4323,6 +4365,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -4393,6 +4438,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -4621,6 +4669,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -4691,6 +4742,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -4990,6 +5044,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -5069,6 +5126,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -5380,6 +5440,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -5456,6 +5519,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -5686,6 +5752,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -5756,6 +5825,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -5966,6 +6038,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -6036,6 +6111,9 @@ // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. + // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` @@ -6200,6 +6278,9 @@ // * SageMaker Serverless endpoint - The resource type is variant and the // unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // + // * SageMaker inference component - The resource type is inference-component + // and the unique identifier is the resource ID. Example: inference-component/my-inference-component. + // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` @@ -6269,6 +6350,9 @@ // // * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned concurrency // for a SageMaker Serverless endpoint. + // + // * sagemaker:inference-component:DesiredCopyCount - The number of copies + // across an endpoint for a SageMaker inference component. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The new minimum and maximum capacity. You can set both values or just one. @@ -6536,7 +6620,7 @@ // The amount of time, in seconds, to wait for a previous scaling activity to // take effect. If not specified, the default value is 300. For more information, - // see Cooldown period (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html#step-scaling-cooldown) + // see Cooldown period (https://docs.aws.amazon.com/autoscaling/application/userguide/step-scaling-policy-overview.html#step-scaling-cooldown) // in the Application Auto Scaling User Guide. Cooldown *int64 `type:"integer"` @@ -7182,13 +7266,13 @@ // The amount of time, in seconds, after a scale-in activity completes before // another scale-in activity can start. For more information and for default - // values, see Define cooldown periods (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html#target-tracking-cooldown) + // values, see Define cooldown periods (https://docs.aws.amazon.com/autoscaling/application/userguide/target-tracking-scaling-policy-overview.html#target-tracking-cooldown) // in the Application Auto Scaling User Guide. ScaleInCooldown *int64 `type:"integer"` // The amount of time, in seconds, to wait for a previous scale-out activity // to take effect. For more information and for default values, see Define cooldown - // periods (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html#target-tracking-cooldown) + // periods (https://docs.aws.amazon.com/autoscaling/application/userguide/target-tracking-scaling-policy-overview.html#target-tracking-cooldown) // in the Application Auto Scaling User Guide. ScaleOutCooldown *int64 `type:"integer"` @@ -7644,6 +7728,9 @@ // MetricTypeElastiCacheDatabaseCapacityUsageCountedForEvictPercentage is a MetricType enum value MetricTypeElastiCacheDatabaseCapacityUsageCountedForEvictPercentage = "ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage" + + // MetricTypeSageMakerInferenceComponentInvocationsPerCopy is a MetricType enum value + MetricTypeSageMakerInferenceComponentInvocationsPerCopy = "SageMakerInferenceComponentInvocationsPerCopy" ) // MetricType_Values returns all elements of the MetricType enum @@ -7672,6 +7759,7 @@ MetricTypeNeptuneReaderAverageCpuutilization, MetricTypeSageMakerVariantProvisionedConcurrencyUtilization, MetricTypeElastiCacheDatabaseCapacityUsageCountedForEvictPercentage, + MetricTypeSageMakerInferenceComponentInvocationsPerCopy, } } @@ -7754,6 +7842,9 @@ // ScalableDimensionSagemakerVariantDesiredProvisionedConcurrency is a ScalableDimension enum value ScalableDimensionSagemakerVariantDesiredProvisionedConcurrency = "sagemaker:variant:DesiredProvisionedConcurrency" + + // ScalableDimensionSagemakerInferenceComponentDesiredCopyCount is a ScalableDimension enum value + ScalableDimensionSagemakerInferenceComponentDesiredCopyCount = "sagemaker:inference-component:DesiredCopyCount" ) // ScalableDimension_Values returns all elements of the ScalableDimension enum @@ -7780,6 +7871,7 @@ ScalableDimensionElasticacheReplicationGroupReplicas, ScalableDimensionNeptuneClusterReadReplicaCount, ScalableDimensionSagemakerVariantDesiredProvisionedConcurrency, + ScalableDimensionSagemakerInferenceComponentDesiredCopyCount, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/applicationautoscaling/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/applicationautoscaling/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/applicationautoscaling/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/applicationautoscaling/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -32,6 +32,8 @@ // // - Amazon SageMaker Serverless endpoint provisioned concurrency // +// - Amazon SageMaker inference components +// // - Spot Fleets (Amazon EC2) // // - Custom resources provided by your own applications or services diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/applicationdiscoveryservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/applicationdiscoveryservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/applicationdiscoveryservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/applicationdiscoveryservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -107,6 +107,98 @@ return out, req.Send() } +const opBatchDeleteAgents = "BatchDeleteAgents" + +// BatchDeleteAgentsRequest generates a "aws/request.Request" representing the +// client's request for the BatchDeleteAgents 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 BatchDeleteAgents for more information on using the BatchDeleteAgents +// 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 BatchDeleteAgentsRequest method. +// req, resp := client.BatchDeleteAgentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01/BatchDeleteAgents +func (c *ApplicationDiscoveryService) BatchDeleteAgentsRequest(input *BatchDeleteAgentsInput) (req *request.Request, output *BatchDeleteAgentsOutput) { + op := &request.Operation{ + Name: opBatchDeleteAgents, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchDeleteAgentsInput{} + } + + output = &BatchDeleteAgentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchDeleteAgents API operation for AWS Application Discovery Service. +// +// Deletes one or more agents or collectors as specified by ID. Deleting an +// agent or collector does not delete the previously discovered data. To delete +// the data collected, use StartBatchDeleteConfigurationTask. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Application Discovery Service's +// API operation BatchDeleteAgents for usage and error information. +// +// Returned Error Types: +// +// - AuthorizationErrorException +// The user does not have permission to perform the action. Check the IAM policy +// associated with this user. +// +// - InvalidParameterException +// One or more parameters are not valid. Verify the parameters and try again. +// +// - InvalidParameterValueException +// The value of one or more parameters are either invalid or out of range. Verify +// the parameter values and try again. +// +// - ServerInternalErrorException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01/BatchDeleteAgents +func (c *ApplicationDiscoveryService) BatchDeleteAgents(input *BatchDeleteAgentsInput) (*BatchDeleteAgentsOutput, error) { + req, out := c.BatchDeleteAgentsRequest(input) + return out, req.Send() +} + +// BatchDeleteAgentsWithContext is the same as BatchDeleteAgents with the addition of +// the ability to pass a context and additional request options. +// +// See BatchDeleteAgents 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 *ApplicationDiscoveryService) BatchDeleteAgentsWithContext(ctx aws.Context, input *BatchDeleteAgentsInput, opts ...request.Option) (*BatchDeleteAgentsOutput, error) { + req, out := c.BatchDeleteAgentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchDeleteImportData = "BatchDeleteImportData" // BatchDeleteImportDataRequest generates a "aws/request.Request" representing the @@ -627,6 +719,12 @@ Name: opDescribeAgents, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -692,6 +790,148 @@ return out, req.Send() } +// DescribeAgentsPages iterates over the pages of a DescribeAgents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeAgents 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 DescribeAgents operation. +// pageNum := 0 +// err := client.DescribeAgentsPages(params, +// func(page *applicationdiscoveryservice.DescribeAgentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ApplicationDiscoveryService) DescribeAgentsPages(input *DescribeAgentsInput, fn func(*DescribeAgentsOutput, bool) bool) error { + return c.DescribeAgentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeAgentsPagesWithContext same as DescribeAgentsPages 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 *ApplicationDiscoveryService) DescribeAgentsPagesWithContext(ctx aws.Context, input *DescribeAgentsInput, fn func(*DescribeAgentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeAgentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeAgentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeAgentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeBatchDeleteConfigurationTask = "DescribeBatchDeleteConfigurationTask" + +// DescribeBatchDeleteConfigurationTaskRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBatchDeleteConfigurationTask 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 DescribeBatchDeleteConfigurationTask for more information on using the DescribeBatchDeleteConfigurationTask +// 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 DescribeBatchDeleteConfigurationTaskRequest method. +// req, resp := client.DescribeBatchDeleteConfigurationTaskRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01/DescribeBatchDeleteConfigurationTask +func (c *ApplicationDiscoveryService) DescribeBatchDeleteConfigurationTaskRequest(input *DescribeBatchDeleteConfigurationTaskInput) (req *request.Request, output *DescribeBatchDeleteConfigurationTaskOutput) { + op := &request.Operation{ + Name: opDescribeBatchDeleteConfigurationTask, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeBatchDeleteConfigurationTaskInput{} + } + + output = &DescribeBatchDeleteConfigurationTaskOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeBatchDeleteConfigurationTask API operation for AWS Application Discovery Service. +// +// Takes a unique deletion task identifier as input and returns metadata about +// a configuration deletion task. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Application Discovery Service's +// API operation DescribeBatchDeleteConfigurationTask for usage and error information. +// +// Returned Error Types: +// +// - AuthorizationErrorException +// The user does not have permission to perform the action. Check the IAM policy +// associated with this user. +// +// - InvalidParameterValueException +// The value of one or more parameters are either invalid or out of range. Verify +// the parameter values and try again. +// +// - ServerInternalErrorException +// The server experienced an internal error. Try again. +// +// - HomeRegionNotSetException +// The home Region is not set. Set the home Region to continue. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01/DescribeBatchDeleteConfigurationTask +func (c *ApplicationDiscoveryService) DescribeBatchDeleteConfigurationTask(input *DescribeBatchDeleteConfigurationTaskInput) (*DescribeBatchDeleteConfigurationTaskOutput, error) { + req, out := c.DescribeBatchDeleteConfigurationTaskRequest(input) + return out, req.Send() +} + +// DescribeBatchDeleteConfigurationTaskWithContext is the same as DescribeBatchDeleteConfigurationTask with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeBatchDeleteConfigurationTask 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 *ApplicationDiscoveryService) DescribeBatchDeleteConfigurationTaskWithContext(ctx aws.Context, input *DescribeBatchDeleteConfigurationTaskInput, opts ...request.Option) (*DescribeBatchDeleteConfigurationTaskOutput, error) { + req, out := c.DescribeBatchDeleteConfigurationTaskRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeConfigurations = "DescribeConfigurations" // DescribeConfigurationsRequest generates a "aws/request.Request" representing the @@ -998,6 +1238,12 @@ Name: opDescribeExportConfigurations, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -1070,6 +1316,61 @@ return out, req.Send() } +// DescribeExportConfigurationsPages iterates over the pages of a DescribeExportConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeExportConfigurations 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 DescribeExportConfigurations operation. +// pageNum := 0 +// err := client.DescribeExportConfigurationsPages(params, +// func(page *applicationdiscoveryservice.DescribeExportConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +// Deprecated: DescribeExportConfigurationsPages has been deprecated +func (c *ApplicationDiscoveryService) DescribeExportConfigurationsPages(input *DescribeExportConfigurationsInput, fn func(*DescribeExportConfigurationsOutput, bool) bool) error { + return c.DescribeExportConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeExportConfigurationsPagesWithContext same as DescribeExportConfigurationsPages 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. +// +// Deprecated: DescribeExportConfigurationsPagesWithContext has been deprecated +func (c *ApplicationDiscoveryService) DescribeExportConfigurationsPagesWithContext(ctx aws.Context, input *DescribeExportConfigurationsInput, fn func(*DescribeExportConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeExportConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeExportConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeExportConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeExportTasks = "DescribeExportTasks" // DescribeExportTasksRequest generates a "aws/request.Request" representing the @@ -1100,6 +1401,12 @@ Name: opDescribeExportTasks, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -1164,6 +1471,57 @@ return out, req.Send() } +// DescribeExportTasksPages iterates over the pages of a DescribeExportTasks operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeExportTasks 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 DescribeExportTasks operation. +// pageNum := 0 +// err := client.DescribeExportTasksPages(params, +// func(page *applicationdiscoveryservice.DescribeExportTasksOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ApplicationDiscoveryService) DescribeExportTasksPages(input *DescribeExportTasksInput, fn func(*DescribeExportTasksOutput, bool) bool) error { + return c.DescribeExportTasksPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeExportTasksPagesWithContext same as DescribeExportTasksPages 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 *ApplicationDiscoveryService) DescribeExportTasksPagesWithContext(ctx aws.Context, input *DescribeExportTasksInput, fn func(*DescribeExportTasksOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeExportTasksInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeExportTasksRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeExportTasksOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeImportTasks = "DescribeImportTasks" // DescribeImportTasksRequest generates a "aws/request.Request" representing the @@ -1345,6 +1703,12 @@ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -1424,6 +1788,57 @@ return out, req.Send() } +// DescribeTagsPages iterates over the pages of a DescribeTags operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeTags 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 DescribeTags operation. +// pageNum := 0 +// err := client.DescribeTagsPages(params, +// func(page *applicationdiscoveryservice.DescribeTagsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ApplicationDiscoveryService) DescribeTagsPages(input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool) error { + return c.DescribeTagsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeTagsPagesWithContext same as DescribeTagsPages 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 *ApplicationDiscoveryService) DescribeTagsPagesWithContext(ctx aws.Context, input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeTagsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTagsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeTagsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDisassociateConfigurationItemsFromApplication = "DisassociateConfigurationItemsFromApplication" // DisassociateConfigurationItemsFromApplicationRequest generates a "aws/request.Request" representing the @@ -1755,6 +2170,12 @@ Name: opListConfigurations, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { @@ -1824,6 +2245,57 @@ return out, req.Send() } +// ListConfigurationsPages iterates over the pages of a ListConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfigurations 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 ListConfigurations operation. +// pageNum := 0 +// err := client.ListConfigurationsPages(params, +// func(page *applicationdiscoveryservice.ListConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ApplicationDiscoveryService) ListConfigurationsPages(input *ListConfigurationsInput, fn func(*ListConfigurationsOutput, bool) bool) error { + return c.ListConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfigurationsPagesWithContext same as ListConfigurationsPages 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 *ApplicationDiscoveryService) ListConfigurationsPagesWithContext(ctx aws.Context, input *ListConfigurationsInput, fn func(*ListConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListServerNeighbors = "ListServerNeighbors" // ListServerNeighborsRequest generates a "aws/request.Request" representing the @@ -1918,6 +2390,103 @@ return out, req.Send() } +const opStartBatchDeleteConfigurationTask = "StartBatchDeleteConfigurationTask" + +// StartBatchDeleteConfigurationTaskRequest generates a "aws/request.Request" representing the +// client's request for the StartBatchDeleteConfigurationTask 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 StartBatchDeleteConfigurationTask for more information on using the StartBatchDeleteConfigurationTask +// 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 StartBatchDeleteConfigurationTaskRequest method. +// req, resp := client.StartBatchDeleteConfigurationTaskRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01/StartBatchDeleteConfigurationTask +func (c *ApplicationDiscoveryService) StartBatchDeleteConfigurationTaskRequest(input *StartBatchDeleteConfigurationTaskInput) (req *request.Request, output *StartBatchDeleteConfigurationTaskOutput) { + op := &request.Operation{ + Name: opStartBatchDeleteConfigurationTask, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartBatchDeleteConfigurationTaskInput{} + } + + output = &StartBatchDeleteConfigurationTaskOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartBatchDeleteConfigurationTask API operation for AWS Application Discovery Service. +// +// Takes a list of configurationId as input and starts an asynchronous deletion +// task to remove the configurationItems. Returns a unique deletion task 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 AWS Application Discovery Service's +// API operation StartBatchDeleteConfigurationTask for usage and error information. +// +// Returned Error Types: +// +// - LimitExceededException +// The limit of 200 configuration IDs per request has been exceeded. +// +// - AuthorizationErrorException +// The user does not have permission to perform the action. Check the IAM policy +// associated with this user. +// +// - ServerInternalErrorException +// The server experienced an internal error. Try again. +// +// - HomeRegionNotSetException +// The home Region is not set. Set the home Region to continue. +// +// - OperationNotPermittedException +// This operation is not permitted. +// +// - InvalidParameterValueException +// The value of one or more parameters are either invalid or out of range. Verify +// the parameter values and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01/StartBatchDeleteConfigurationTask +func (c *ApplicationDiscoveryService) StartBatchDeleteConfigurationTask(input *StartBatchDeleteConfigurationTaskInput) (*StartBatchDeleteConfigurationTaskOutput, error) { + req, out := c.StartBatchDeleteConfigurationTaskRequest(input) + return out, req.Send() +} + +// StartBatchDeleteConfigurationTaskWithContext is the same as StartBatchDeleteConfigurationTask with the addition of +// the ability to pass a context and additional request options. +// +// See StartBatchDeleteConfigurationTask 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 *ApplicationDiscoveryService) StartBatchDeleteConfigurationTaskWithContext(ctx aws.Context, input *StartBatchDeleteConfigurationTaskInput, opts ...request.Option) (*StartBatchDeleteConfigurationTaskOutput, error) { + req, out := c.StartBatchDeleteConfigurationTaskRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartContinuousExport = "StartContinuousExport" // StartContinuousExportRequest generates a "aws/request.Request" representing the @@ -1973,6 +2542,7 @@ // Returned Error Types: // // - ConflictErrorException +// Conflict error. // // - AuthorizationErrorException // The user does not have permission to perform the action. Check the IAM policy @@ -3020,6 +3590,265 @@ return s.RespMetadata.RequestID } +// An object representing the agent or data collector that failed to delete, +// each containing agentId, errorMessage, and errorCode. +type BatchDeleteAgentError struct { + _ struct{} `type:"structure"` + + // The ID of the agent or data collector to delete. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" min:"10" type:"string" required:"true"` + + // The type of error that occurred for the delete failed agent. Valid status + // are: AGENT_IN_USE | NOT_FOUND | INTERNAL_SERVER_ERROR. + // + // ErrorCode is a required field + ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"DeleteAgentErrorCode"` + + // The description of the error that occurred for the delete failed agent. + // + // ErrorMessage is a required field + ErrorMessage *string `locationName:"errorMessage" 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 BatchDeleteAgentError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteAgentError) GoString() string { + return s.String() +} + +// SetAgentId sets the AgentId field's value. +func (s *BatchDeleteAgentError) SetAgentId(v string) *BatchDeleteAgentError { + s.AgentId = &v + return s +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *BatchDeleteAgentError) SetErrorCode(v string) *BatchDeleteAgentError { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *BatchDeleteAgentError) SetErrorMessage(v string) *BatchDeleteAgentError { + s.ErrorMessage = &v + return s +} + +type BatchDeleteAgentsInput struct { + _ struct{} `type:"structure"` + + // The list of agents to delete. + // + // DeleteAgents is a required field + DeleteAgents []*DeleteAgent `locationName:"deleteAgents" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteAgentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteAgentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchDeleteAgentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchDeleteAgentsInput"} + if s.DeleteAgents == nil { + invalidParams.Add(request.NewErrParamRequired("DeleteAgents")) + } + if s.DeleteAgents != nil && len(s.DeleteAgents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeleteAgents", 1)) + } + if s.DeleteAgents != nil { + for i, v := range s.DeleteAgents { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DeleteAgents", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeleteAgents sets the DeleteAgents field's value. +func (s *BatchDeleteAgentsInput) SetDeleteAgents(v []*DeleteAgent) *BatchDeleteAgentsInput { + s.DeleteAgents = v + return s +} + +type BatchDeleteAgentsOutput struct { + _ struct{} `type:"structure"` + + // A list of agent IDs that failed to delete during the deletion task, each + // paired with an error message. + Errors []*BatchDeleteAgentError `locationName:"errors" 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 BatchDeleteAgentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteAgentsOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *BatchDeleteAgentsOutput) SetErrors(v []*BatchDeleteAgentError) *BatchDeleteAgentsOutput { + s.Errors = v + return s +} + +// A metadata object that represents the deletion task being executed. +type BatchDeleteConfigurationTask struct { + _ struct{} `type:"structure"` + + // The type of configuration item to delete. Supported types are: SERVER. + ConfigurationType *string `locationName:"configurationType" type:"string" enum:"DeletionConfigurationItemType"` + + // The list of configuration IDs that were successfully deleted by the deletion + // task. + DeletedConfigurations []*string `locationName:"deletedConfigurations" type:"list"` + + // A list of configuration IDs that produced warnings regarding their deletion, + // paired with a warning message. + DeletionWarnings []*DeletionWarning `locationName:"deletionWarnings" type:"list"` + + // An epoch seconds timestamp (UTC) of when the deletion task was completed + // or failed. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // A list of configuration IDs that failed to delete during the deletion task, + // each paired with an error message. + FailedConfigurations []*FailedConfiguration `locationName:"failedConfigurations" type:"list"` + + // The list of configuration IDs that were originally requested to be deleted + // by the deletion task. + RequestedConfigurations []*string `locationName:"requestedConfigurations" type:"list"` + + // An epoch seconds timestamp (UTC) of when the deletion task was started. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The current execution status of the deletion task. Valid status are: INITIALIZING + // | VALIDATING | DELETING | COMPLETED | FAILED. + Status *string `locationName:"status" type:"string" enum:"BatchDeleteConfigurationTaskStatus"` + + // The deletion task's unique identifier. + TaskId *string `locationName:"taskId" 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 BatchDeleteConfigurationTask) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteConfigurationTask) GoString() string { + return s.String() +} + +// SetConfigurationType sets the ConfigurationType field's value. +func (s *BatchDeleteConfigurationTask) SetConfigurationType(v string) *BatchDeleteConfigurationTask { + s.ConfigurationType = &v + return s +} + +// SetDeletedConfigurations sets the DeletedConfigurations field's value. +func (s *BatchDeleteConfigurationTask) SetDeletedConfigurations(v []*string) *BatchDeleteConfigurationTask { + s.DeletedConfigurations = v + return s +} + +// SetDeletionWarnings sets the DeletionWarnings field's value. +func (s *BatchDeleteConfigurationTask) SetDeletionWarnings(v []*DeletionWarning) *BatchDeleteConfigurationTask { + s.DeletionWarnings = v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *BatchDeleteConfigurationTask) SetEndTime(v time.Time) *BatchDeleteConfigurationTask { + s.EndTime = &v + return s +} + +// SetFailedConfigurations sets the FailedConfigurations field's value. +func (s *BatchDeleteConfigurationTask) SetFailedConfigurations(v []*FailedConfiguration) *BatchDeleteConfigurationTask { + s.FailedConfigurations = v + return s +} + +// SetRequestedConfigurations sets the RequestedConfigurations field's value. +func (s *BatchDeleteConfigurationTask) SetRequestedConfigurations(v []*string) *BatchDeleteConfigurationTask { + s.RequestedConfigurations = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *BatchDeleteConfigurationTask) SetStartTime(v time.Time) *BatchDeleteConfigurationTask { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *BatchDeleteConfigurationTask) SetStatus(v string) *BatchDeleteConfigurationTask { + s.Status = &v + return s +} + +// SetTaskId sets the TaskId field's value. +func (s *BatchDeleteConfigurationTask) SetTaskId(v string) *BatchDeleteConfigurationTask { + s.TaskId = &v + return s +} + // Error messages returned for each import task that you deleted as a response // for this command. type BatchDeleteImportDataError struct { @@ -3074,6 +3903,9 @@ type BatchDeleteImportDataInput struct { _ struct{} `type:"structure"` + // Set to true to remove the deleted import task from DescribeImportTasks. + DeleteHistory *bool `locationName:"deleteHistory" type:"boolean"` + // The IDs for the import tasks that you want to delete. // // ImportTaskIds is a required field @@ -3114,6 +3946,12 @@ return nil } +// SetDeleteHistory sets the DeleteHistory field's value. +func (s *BatchDeleteImportDataInput) SetDeleteHistory(v bool) *BatchDeleteImportDataInput { + s.DeleteHistory = &v + return s +} + // SetImportTaskIds sets the ImportTaskIds field's value. func (s *BatchDeleteImportDataInput) SetImportTaskIds(v []*string) *BatchDeleteImportDataInput { s.ImportTaskIds = v @@ -3224,6 +4062,7 @@ return s } +// Conflict error. type ConflictErrorException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -4042,6 +4881,70 @@ return s } +// An object representing the agent or data collector to be deleted along with +// the optional configurations for error handling. +type DeleteAgent struct { + _ struct{} `type:"structure"` + + // The ID of the agent or data collector to delete. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" min:"10" type:"string" required:"true"` + + // Optional flag used to force delete an agent or data collector. It is needed + // to delete any agent in HEALTHY/UNHEALTHY/RUNNING status. Note that deleting + // an agent that is actively reporting health causes it to be re-registered + // with a different agent ID after data collector re-connects with Amazon Web + // Services. + Force *bool `locationName:"force" 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 DeleteAgent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgent) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAgent) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAgent"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgent) SetAgentId(v string) *DeleteAgent { + s.AgentId = &v + return s +} + +// SetForce sets the Force field's value. +func (s *DeleteAgent) SetForce(v bool) *DeleteAgent { + s.Force = &v + return s +} + type DeleteApplicationsInput struct { _ struct{} `type:"structure"` @@ -4200,6 +5103,56 @@ return s.String() } +// A configuration ID paired with a warning message. +type DeletionWarning struct { + _ struct{} `type:"structure"` + + // The unique identifier of the configuration that produced a warning. + ConfigurationId *string `locationName:"configurationId" type:"string"` + + // The integer warning code associated with the warning message. + WarningCode *int64 `locationName:"warningCode" type:"integer"` + + // A descriptive message of the warning the associated configuration ID produced. + WarningText *string `locationName:"warningText" 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 DeletionWarning) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletionWarning) GoString() string { + return s.String() +} + +// SetConfigurationId sets the ConfigurationId field's value. +func (s *DeletionWarning) SetConfigurationId(v string) *DeletionWarning { + s.ConfigurationId = &v + return s +} + +// SetWarningCode sets the WarningCode field's value. +func (s *DeletionWarning) SetWarningCode(v int64) *DeletionWarning { + s.WarningCode = &v + return s +} + +// SetWarningText sets the WarningText field's value. +func (s *DeletionWarning) SetWarningText(v string) *DeletionWarning { + s.WarningText = &v + return s +} + type DescribeAgentsInput struct { _ struct{} `type:"structure"` @@ -4334,6 +5287,84 @@ return s } +type DescribeBatchDeleteConfigurationTaskInput struct { + _ struct{} `type:"structure"` + + // The ID of the task to delete. + // + // TaskId is a required field + TaskId *string `locationName:"taskId" 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 DescribeBatchDeleteConfigurationTaskInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBatchDeleteConfigurationTaskInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeBatchDeleteConfigurationTaskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBatchDeleteConfigurationTaskInput"} + if s.TaskId == nil { + invalidParams.Add(request.NewErrParamRequired("TaskId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTaskId sets the TaskId field's value. +func (s *DescribeBatchDeleteConfigurationTaskInput) SetTaskId(v string) *DescribeBatchDeleteConfigurationTaskInput { + s.TaskId = &v + return s +} + +type DescribeBatchDeleteConfigurationTaskOutput struct { + _ struct{} `type:"structure"` + + // The BatchDeleteConfigurationTask that represents the deletion task being + // executed. + Task *BatchDeleteConfigurationTask `locationName:"task" 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 DescribeBatchDeleteConfigurationTaskOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBatchDeleteConfigurationTaskOutput) GoString() string { + return s.String() +} + +// SetTask sets the Task field's value. +func (s *DescribeBatchDeleteConfigurationTaskOutput) SetTask(v *BatchDeleteConfigurationTask) *DescribeBatchDeleteConfigurationTaskOutput { + s.Task = v + return s +} + type DescribeConfigurationsInput struct { _ struct{} `type:"structure"` @@ -5450,6 +6481,57 @@ return s } +// A configuration ID paired with an error message. +type FailedConfiguration struct { + _ struct{} `type:"structure"` + + // The unique identifier of the configuration the failed to delete. + ConfigurationId *string `locationName:"configurationId" type:"string"` + + // A descriptive message indicating why the associated configuration failed + // to delete. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // The integer error code associated with the error message. + ErrorStatusCode *int64 `locationName:"errorStatusCode" 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 FailedConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailedConfiguration) GoString() string { + return s.String() +} + +// SetConfigurationId sets the ConfigurationId field's value. +func (s *FailedConfiguration) SetConfigurationId(v string) *FailedConfiguration { + s.ConfigurationId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *FailedConfiguration) SetErrorMessage(v string) *FailedConfiguration { + s.ErrorMessage = &v + return s +} + +// SetErrorStatusCode sets the ErrorStatusCode field's value. +func (s *FailedConfiguration) SetErrorStatusCode(v int64) *FailedConfiguration { + s.ErrorStatusCode = &v + return s +} + // A filter that can use conditional operators. // // For more information about filters, see Querying Discovered Configuration @@ -6072,6 +7154,70 @@ return s.RespMetadata.RequestID } +// The limit of 200 configuration IDs per request has been exceeded. +type LimitExceededException 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 LimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LimitExceededException) GoString() string { + return s.String() +} + +func newErrorLimitExceededException(v protocol.ResponseMetadata) error { + return &LimitExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *LimitExceededException) Code() string { + return "LimitExceededException" +} + +// Message returns the exception's message. +func (s *LimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *LimitExceededException) OrigErr() error { + return nil +} + +func (s *LimitExceededException) 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 *LimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *LimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + type ListConfigurationsInput struct { _ struct{} `type:"structure"` @@ -6838,6 +7984,97 @@ return s.RespMetadata.RequestID } +type StartBatchDeleteConfigurationTaskInput struct { + _ struct{} `type:"structure"` + + // The list of configuration IDs that will be deleted by the task. + // + // ConfigurationIds is a required field + ConfigurationIds []*string `locationName:"configurationIds" type:"list" required:"true"` + + // The type of configuration item to delete. Supported types are: SERVER. + // + // ConfigurationType is a required field + ConfigurationType *string `locationName:"configurationType" type:"string" required:"true" enum:"DeletionConfigurationItemType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartBatchDeleteConfigurationTaskInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartBatchDeleteConfigurationTaskInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartBatchDeleteConfigurationTaskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartBatchDeleteConfigurationTaskInput"} + if s.ConfigurationIds == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationIds")) + } + if s.ConfigurationType == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationIds sets the ConfigurationIds field's value. +func (s *StartBatchDeleteConfigurationTaskInput) SetConfigurationIds(v []*string) *StartBatchDeleteConfigurationTaskInput { + s.ConfigurationIds = v + return s +} + +// SetConfigurationType sets the ConfigurationType field's value. +func (s *StartBatchDeleteConfigurationTaskInput) SetConfigurationType(v string) *StartBatchDeleteConfigurationTaskInput { + s.ConfigurationType = &v + return s +} + +type StartBatchDeleteConfigurationTaskOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier associated with the newly started deletion task. + TaskId *string `locationName:"taskId" 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 StartBatchDeleteConfigurationTaskOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartBatchDeleteConfigurationTaskOutput) GoString() string { + return s.String() +} + +// SetTaskId sets the TaskId field's value. +func (s *StartBatchDeleteConfigurationTaskOutput) SetTaskId(v string) *StartBatchDeleteConfigurationTaskOutput { + s.TaskId = &v + return s +} + type StartContinuousExportInput struct { _ struct{} `type:"structure"` } @@ -7725,6 +8962,34 @@ } const ( + // BatchDeleteConfigurationTaskStatusInitializing is a BatchDeleteConfigurationTaskStatus enum value + BatchDeleteConfigurationTaskStatusInitializing = "INITIALIZING" + + // BatchDeleteConfigurationTaskStatusValidating is a BatchDeleteConfigurationTaskStatus enum value + BatchDeleteConfigurationTaskStatusValidating = "VALIDATING" + + // BatchDeleteConfigurationTaskStatusDeleting is a BatchDeleteConfigurationTaskStatus enum value + BatchDeleteConfigurationTaskStatusDeleting = "DELETING" + + // BatchDeleteConfigurationTaskStatusCompleted is a BatchDeleteConfigurationTaskStatus enum value + BatchDeleteConfigurationTaskStatusCompleted = "COMPLETED" + + // BatchDeleteConfigurationTaskStatusFailed is a BatchDeleteConfigurationTaskStatus enum value + BatchDeleteConfigurationTaskStatusFailed = "FAILED" +) + +// BatchDeleteConfigurationTaskStatus_Values returns all elements of the BatchDeleteConfigurationTaskStatus enum +func BatchDeleteConfigurationTaskStatus_Values() []string { + return []string{ + BatchDeleteConfigurationTaskStatusInitializing, + BatchDeleteConfigurationTaskStatusValidating, + BatchDeleteConfigurationTaskStatusDeleting, + BatchDeleteConfigurationTaskStatusCompleted, + BatchDeleteConfigurationTaskStatusFailed, + } +} + +const ( // BatchDeleteImportDataErrorCodeNotFound is a BatchDeleteImportDataErrorCode enum value BatchDeleteImportDataErrorCodeNotFound = "NOT_FOUND" @@ -7816,6 +9081,38 @@ } } +const ( + // DeleteAgentErrorCodeNotFound is a DeleteAgentErrorCode enum value + DeleteAgentErrorCodeNotFound = "NOT_FOUND" + + // DeleteAgentErrorCodeInternalServerError is a DeleteAgentErrorCode enum value + DeleteAgentErrorCodeInternalServerError = "INTERNAL_SERVER_ERROR" + + // DeleteAgentErrorCodeAgentInUse is a DeleteAgentErrorCode enum value + DeleteAgentErrorCodeAgentInUse = "AGENT_IN_USE" +) + +// DeleteAgentErrorCode_Values returns all elements of the DeleteAgentErrorCode enum +func DeleteAgentErrorCode_Values() []string { + return []string{ + DeleteAgentErrorCodeNotFound, + DeleteAgentErrorCodeInternalServerError, + DeleteAgentErrorCodeAgentInUse, + } +} + +const ( + // DeletionConfigurationItemTypeServer is a DeletionConfigurationItemType enum value + DeletionConfigurationItemTypeServer = "SERVER" +) + +// DeletionConfigurationItemType_Values returns all elements of the DeletionConfigurationItemType enum +func DeletionConfigurationItemType_Values() []string { + return []string{ + DeletionConfigurationItemTypeServer, + } +} + const ( // ExportDataFormatCsv is a ExportDataFormat enum value ExportDataFormatCsv = "CSV" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/applicationdiscoveryservice/applicationdiscoveryserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/applicationdiscoveryservice/applicationdiscoveryserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/applicationdiscoveryservice/applicationdiscoveryserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/applicationdiscoveryservice/applicationdiscoveryserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ AssociateConfigurationItemsToApplicationWithContext(aws.Context, *applicationdiscoveryservice.AssociateConfigurationItemsToApplicationInput, ...request.Option) (*applicationdiscoveryservice.AssociateConfigurationItemsToApplicationOutput, error) AssociateConfigurationItemsToApplicationRequest(*applicationdiscoveryservice.AssociateConfigurationItemsToApplicationInput) (*request.Request, *applicationdiscoveryservice.AssociateConfigurationItemsToApplicationOutput) + BatchDeleteAgents(*applicationdiscoveryservice.BatchDeleteAgentsInput) (*applicationdiscoveryservice.BatchDeleteAgentsOutput, error) + BatchDeleteAgentsWithContext(aws.Context, *applicationdiscoveryservice.BatchDeleteAgentsInput, ...request.Option) (*applicationdiscoveryservice.BatchDeleteAgentsOutput, error) + BatchDeleteAgentsRequest(*applicationdiscoveryservice.BatchDeleteAgentsInput) (*request.Request, *applicationdiscoveryservice.BatchDeleteAgentsOutput) + BatchDeleteImportData(*applicationdiscoveryservice.BatchDeleteImportDataInput) (*applicationdiscoveryservice.BatchDeleteImportDataOutput, error) BatchDeleteImportDataWithContext(aws.Context, *applicationdiscoveryservice.BatchDeleteImportDataInput, ...request.Option) (*applicationdiscoveryservice.BatchDeleteImportDataOutput, error) BatchDeleteImportDataRequest(*applicationdiscoveryservice.BatchDeleteImportDataInput) (*request.Request, *applicationdiscoveryservice.BatchDeleteImportDataOutput) @@ -88,6 +92,13 @@ DescribeAgentsWithContext(aws.Context, *applicationdiscoveryservice.DescribeAgentsInput, ...request.Option) (*applicationdiscoveryservice.DescribeAgentsOutput, error) DescribeAgentsRequest(*applicationdiscoveryservice.DescribeAgentsInput) (*request.Request, *applicationdiscoveryservice.DescribeAgentsOutput) + DescribeAgentsPages(*applicationdiscoveryservice.DescribeAgentsInput, func(*applicationdiscoveryservice.DescribeAgentsOutput, bool) bool) error + DescribeAgentsPagesWithContext(aws.Context, *applicationdiscoveryservice.DescribeAgentsInput, func(*applicationdiscoveryservice.DescribeAgentsOutput, bool) bool, ...request.Option) error + + DescribeBatchDeleteConfigurationTask(*applicationdiscoveryservice.DescribeBatchDeleteConfigurationTaskInput) (*applicationdiscoveryservice.DescribeBatchDeleteConfigurationTaskOutput, error) + DescribeBatchDeleteConfigurationTaskWithContext(aws.Context, *applicationdiscoveryservice.DescribeBatchDeleteConfigurationTaskInput, ...request.Option) (*applicationdiscoveryservice.DescribeBatchDeleteConfigurationTaskOutput, error) + DescribeBatchDeleteConfigurationTaskRequest(*applicationdiscoveryservice.DescribeBatchDeleteConfigurationTaskInput) (*request.Request, *applicationdiscoveryservice.DescribeBatchDeleteConfigurationTaskOutput) + DescribeConfigurations(*applicationdiscoveryservice.DescribeConfigurationsInput) (*applicationdiscoveryservice.DescribeConfigurationsOutput, error) DescribeConfigurationsWithContext(aws.Context, *applicationdiscoveryservice.DescribeConfigurationsInput, ...request.Option) (*applicationdiscoveryservice.DescribeConfigurationsOutput, error) DescribeConfigurationsRequest(*applicationdiscoveryservice.DescribeConfigurationsInput) (*request.Request, *applicationdiscoveryservice.DescribeConfigurationsOutput) @@ -103,10 +114,16 @@ DescribeExportConfigurationsWithContext(aws.Context, *applicationdiscoveryservice.DescribeExportConfigurationsInput, ...request.Option) (*applicationdiscoveryservice.DescribeExportConfigurationsOutput, error) DescribeExportConfigurationsRequest(*applicationdiscoveryservice.DescribeExportConfigurationsInput) (*request.Request, *applicationdiscoveryservice.DescribeExportConfigurationsOutput) + DescribeExportConfigurationsPages(*applicationdiscoveryservice.DescribeExportConfigurationsInput, func(*applicationdiscoveryservice.DescribeExportConfigurationsOutput, bool) bool) error + DescribeExportConfigurationsPagesWithContext(aws.Context, *applicationdiscoveryservice.DescribeExportConfigurationsInput, func(*applicationdiscoveryservice.DescribeExportConfigurationsOutput, bool) bool, ...request.Option) error + DescribeExportTasks(*applicationdiscoveryservice.DescribeExportTasksInput) (*applicationdiscoveryservice.DescribeExportTasksOutput, error) DescribeExportTasksWithContext(aws.Context, *applicationdiscoveryservice.DescribeExportTasksInput, ...request.Option) (*applicationdiscoveryservice.DescribeExportTasksOutput, error) DescribeExportTasksRequest(*applicationdiscoveryservice.DescribeExportTasksInput) (*request.Request, *applicationdiscoveryservice.DescribeExportTasksOutput) + DescribeExportTasksPages(*applicationdiscoveryservice.DescribeExportTasksInput, func(*applicationdiscoveryservice.DescribeExportTasksOutput, bool) bool) error + DescribeExportTasksPagesWithContext(aws.Context, *applicationdiscoveryservice.DescribeExportTasksInput, func(*applicationdiscoveryservice.DescribeExportTasksOutput, bool) bool, ...request.Option) error + DescribeImportTasks(*applicationdiscoveryservice.DescribeImportTasksInput) (*applicationdiscoveryservice.DescribeImportTasksOutput, error) DescribeImportTasksWithContext(aws.Context, *applicationdiscoveryservice.DescribeImportTasksInput, ...request.Option) (*applicationdiscoveryservice.DescribeImportTasksOutput, error) DescribeImportTasksRequest(*applicationdiscoveryservice.DescribeImportTasksInput) (*request.Request, *applicationdiscoveryservice.DescribeImportTasksOutput) @@ -118,6 +135,9 @@ DescribeTagsWithContext(aws.Context, *applicationdiscoveryservice.DescribeTagsInput, ...request.Option) (*applicationdiscoveryservice.DescribeTagsOutput, error) DescribeTagsRequest(*applicationdiscoveryservice.DescribeTagsInput) (*request.Request, *applicationdiscoveryservice.DescribeTagsOutput) + DescribeTagsPages(*applicationdiscoveryservice.DescribeTagsInput, func(*applicationdiscoveryservice.DescribeTagsOutput, bool) bool) error + DescribeTagsPagesWithContext(aws.Context, *applicationdiscoveryservice.DescribeTagsInput, func(*applicationdiscoveryservice.DescribeTagsOutput, bool) bool, ...request.Option) error + DisassociateConfigurationItemsFromApplication(*applicationdiscoveryservice.DisassociateConfigurationItemsFromApplicationInput) (*applicationdiscoveryservice.DisassociateConfigurationItemsFromApplicationOutput, error) DisassociateConfigurationItemsFromApplicationWithContext(aws.Context, *applicationdiscoveryservice.DisassociateConfigurationItemsFromApplicationInput, ...request.Option) (*applicationdiscoveryservice.DisassociateConfigurationItemsFromApplicationOutput, error) DisassociateConfigurationItemsFromApplicationRequest(*applicationdiscoveryservice.DisassociateConfigurationItemsFromApplicationInput) (*request.Request, *applicationdiscoveryservice.DisassociateConfigurationItemsFromApplicationOutput) @@ -134,10 +154,17 @@ ListConfigurationsWithContext(aws.Context, *applicationdiscoveryservice.ListConfigurationsInput, ...request.Option) (*applicationdiscoveryservice.ListConfigurationsOutput, error) ListConfigurationsRequest(*applicationdiscoveryservice.ListConfigurationsInput) (*request.Request, *applicationdiscoveryservice.ListConfigurationsOutput) + ListConfigurationsPages(*applicationdiscoveryservice.ListConfigurationsInput, func(*applicationdiscoveryservice.ListConfigurationsOutput, bool) bool) error + ListConfigurationsPagesWithContext(aws.Context, *applicationdiscoveryservice.ListConfigurationsInput, func(*applicationdiscoveryservice.ListConfigurationsOutput, bool) bool, ...request.Option) error + ListServerNeighbors(*applicationdiscoveryservice.ListServerNeighborsInput) (*applicationdiscoveryservice.ListServerNeighborsOutput, error) ListServerNeighborsWithContext(aws.Context, *applicationdiscoveryservice.ListServerNeighborsInput, ...request.Option) (*applicationdiscoveryservice.ListServerNeighborsOutput, error) ListServerNeighborsRequest(*applicationdiscoveryservice.ListServerNeighborsInput) (*request.Request, *applicationdiscoveryservice.ListServerNeighborsOutput) + StartBatchDeleteConfigurationTask(*applicationdiscoveryservice.StartBatchDeleteConfigurationTaskInput) (*applicationdiscoveryservice.StartBatchDeleteConfigurationTaskOutput, error) + StartBatchDeleteConfigurationTaskWithContext(aws.Context, *applicationdiscoveryservice.StartBatchDeleteConfigurationTaskInput, ...request.Option) (*applicationdiscoveryservice.StartBatchDeleteConfigurationTaskOutput, error) + StartBatchDeleteConfigurationTaskRequest(*applicationdiscoveryservice.StartBatchDeleteConfigurationTaskInput) (*request.Request, *applicationdiscoveryservice.StartBatchDeleteConfigurationTaskOutput) + StartContinuousExport(*applicationdiscoveryservice.StartContinuousExportInput) (*applicationdiscoveryservice.StartContinuousExportOutput, error) StartContinuousExportWithContext(aws.Context, *applicationdiscoveryservice.StartContinuousExportInput, ...request.Option) (*applicationdiscoveryservice.StartContinuousExportOutput, error) StartContinuousExportRequest(*applicationdiscoveryservice.StartContinuousExportInput) (*request.Request, *applicationdiscoveryservice.StartContinuousExportOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/applicationdiscoveryservice/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/applicationdiscoveryservice/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/applicationdiscoveryservice/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/applicationdiscoveryservice/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -17,6 +17,8 @@ // ErrCodeConflictErrorException for service response error code // "ConflictErrorException". + // + // Conflict error. ErrCodeConflictErrorException = "ConflictErrorException" // ErrCodeHomeRegionNotSetException for service response error code @@ -38,6 +40,12 @@ // the parameter values and try again. ErrCodeInvalidParameterValueException = "InvalidParameterValueException" + // ErrCodeLimitExceededException for service response error code + // "LimitExceededException". + // + // The limit of 200 configuration IDs per request has been exceeded. + ErrCodeLimitExceededException = "LimitExceededException" + // ErrCodeOperationNotPermittedException for service response error code // "OperationNotPermittedException". // @@ -74,6 +82,7 @@ "HomeRegionNotSetException": newErrorHomeRegionNotSetException, "InvalidParameterException": newErrorInvalidParameterException, "InvalidParameterValueException": newErrorInvalidParameterValueException, + "LimitExceededException": newErrorLimitExceededException, "OperationNotPermittedException": newErrorOperationNotPermittedException, "ResourceInUseException": newErrorResourceInUseException, "ResourceNotFoundException": newErrorResourceNotFoundException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/applicationinsights/api.go golang-github-aws-aws-sdk-go-1.48.14/service/applicationinsights/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/applicationinsights/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/applicationinsights/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2995,6 +2995,9 @@ // - InternalServerException // The server encountered an internal error and is unable to complete the request. // +// - ResourceInUseException +// The resource is already created or in use. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateComponentConfiguration func (c *ApplicationInsights) UpdateComponentConfiguration(input *UpdateComponentConfigurationInput) (*UpdateComponentConfigurationOutput, error) { req, out := c.UpdateComponentConfigurationRequest(input) @@ -3563,6 +3566,10 @@ // The AWS account ID for the owner of the application. AccountId *string `min:"12" type:"string"` + // If set to true, the managed policies for SSM and CW will be attached to the + // instance roles if they are missing. + AttachMissingPermission *bool `type:"boolean"` + // Indicates whether auto-configuration is turned on for this application. AutoConfigEnabled *bool `type:"boolean"` @@ -3621,6 +3628,12 @@ return s } +// SetAttachMissingPermission sets the AttachMissingPermission field's value. +func (s *ApplicationInfo) SetAttachMissingPermission(v bool) *ApplicationInfo { + s.AttachMissingPermission = &v + return s +} + // SetAutoConfigEnabled sets the AutoConfigEnabled field's value. func (s *ApplicationInfo) SetAutoConfigEnabled(v bool) *ApplicationInfo { s.AutoConfigEnabled = &v @@ -3835,6 +3848,10 @@ type CreateApplicationInput struct { _ struct{} `type:"structure"` + // If set to true, the managed policies for SSM and CW will be attached to the + // instance roles if they are missing. + AttachMissingPermission *bool `type:"boolean"` + // Indicates whether Application Insights automatically configures unmonitored // resources in the resource group. AutoConfigEnabled *bool `type:"boolean"` @@ -3913,6 +3930,12 @@ return nil } +// SetAttachMissingPermission sets the AttachMissingPermission field's value. +func (s *CreateApplicationInput) SetAttachMissingPermission(v bool) *CreateApplicationInput { + s.AttachMissingPermission = &v + return s +} + // SetAutoConfigEnabled sets the AutoConfigEnabled field's value. func (s *CreateApplicationInput) SetAutoConfigEnabled(v bool) *CreateApplicationInput { s.AutoConfigEnabled = &v @@ -4761,6 +4784,9 @@ // // Tier is a required field Tier *string `min:"1" type:"string" required:"true" enum:"Tier"` + + // The name of the workload. + WorkloadName *string `min:"1" type:"string"` } // String returns the string representation. @@ -4802,6 +4828,9 @@ if s.Tier != nil && len(*s.Tier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tier", 1)) } + if s.WorkloadName != nil && len(*s.WorkloadName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -4833,6 +4862,12 @@ return s } +// SetWorkloadName sets the WorkloadName field's value. +func (s *DescribeComponentConfigurationRecommendationInput) SetWorkloadName(v string) *DescribeComponentConfigurationRecommendationInput { + s.WorkloadName = &v + return s +} + type DescribeComponentConfigurationRecommendationOutput struct { _ struct{} `type:"structure"` @@ -8064,6 +8099,10 @@ type UpdateApplicationInput struct { _ struct{} `type:"structure"` + // If set to true, the managed policies for SSM and CW will be attached to the + // instance roles if they are missing. + AttachMissingPermission *bool `type:"boolean"` + // Turns auto-configuration on or off. AutoConfigEnabled *bool `type:"boolean"` @@ -8125,6 +8164,12 @@ return nil } +// SetAttachMissingPermission sets the AttachMissingPermission field's value. +func (s *UpdateApplicationInput) SetAttachMissingPermission(v bool) *UpdateApplicationInput { + s.AttachMissingPermission = &v + return s +} + // SetAutoConfigEnabled sets the AutoConfigEnabled field's value. func (s *UpdateApplicationInput) SetAutoConfigEnabled(v bool) *UpdateApplicationInput { s.AutoConfigEnabled = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appmesh/api.go golang-github-aws-aws-sdk-go-1.48.14/service/appmesh/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appmesh/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appmesh/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -8001,8 +8001,8 @@ // as Amazon CloudWatch Logs. You can also specify a path in the Envoy container's // file system to write the files to disk. // - //

The Envoy process must have write permissions to the path that - // you specify here. Otherwise, Envoy fails to bootstrap properly.

+ // The Envoy process must have write permissions to the path that you specify + // here. Otherwise, Envoy fails to bootstrap properly. // // Path is a required field Path *string `locationName:"path" min:"1" type:"string" required:"true"` @@ -8806,7 +8806,7 @@ // The gateway route metadata to be matched on. Metadata []*GrpcGatewayRouteMetadata `locationName:"metadata" min:"1" type:"list"` - // The port number to match from the request. + // The gateway route port to be matched on. Port *int64 `locationName:"port" min:"1" type:"integer"` // The fully qualified domain name for the service to match from the request. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appregistry/api.go golang-github-aws-aws-sdk-go-1.48.14/service/appregistry/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appregistry/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appregistry/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -154,6 +154,31 @@ // Associates a resource with an application. The resource can be specified // by its ARN or name. The application can be specified by ARN, ID, or name. // +// # Minimum permissions +// +// You must have the following permissions to associate a resource using the +// OPTIONS parameter set to APPLY_APPLICATION_TAG. +// +// - tag:GetResources +// +// - tag:TagResources +// +// You must also have these additional permissions if you don't use the AWSServiceCatalogAppRegistryFullAccess +// policy. For more information, see AWSServiceCatalogAppRegistryFullAccess +// (https://docs.aws.amazon.com/servicecatalog/latest/arguide/full.html) in +// the AppRegistry Administrator Guide. +// +// - resource-groups:AssociateResource +// +// - cloudformation:UpdateStack +// +// - cloudformation:DescribeStacks +// +// In addition, you must have the tagging permission defined by the Amazon Web +// Services service that creates the resource. For more information, see TagResources +// (https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/API_TagResources.html) +// in the Resource Groups Tagging API Reference. +// // 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. @@ -695,6 +720,32 @@ // Disassociates a resource from application. Both the resource and the application // can be specified either by ID or name. // +// # Minimum permissions +// +// You must have the following permissions to remove a resource that's been +// associated with an application using the APPLY_APPLICATION_TAG option for +// AssociateResource (https://docs.aws.amazon.com/servicecatalog/latest/dg/API_app-registry_AssociateResource.html). +// +// - tag:GetResources +// +// - tag:UntagResources +// +// You must also have the following permissions if you don't use the AWSServiceCatalogAppRegistryFullAccess +// policy. For more information, see AWSServiceCatalogAppRegistryFullAccess +// (https://docs.aws.amazon.com/servicecatalog/latest/arguide/full.html) in +// the AppRegistry Administrator Guide. +// +// - resource-groups:DisassociateResource +// +// - cloudformation:UpdateStack +// +// - cloudformation:DescribeStacks +// +// In addition, you must have the tagging permission defined by the Amazon Web +// Services service that creates the resource. For more information, see UntagResources +// (https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/API_UntTagResources.html) +// in the Resource Groups Tagging API Reference. +// // 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. @@ -2462,6 +2513,9 @@ type Application struct { _ struct{} `type:"structure"` + // A key-value pair that identifies an associated resource. + ApplicationTag map[string]*string `locationName:"applicationTag" type:"map"` + // The Amazon resource name (ARN) that specifies the application across services. Arn *string `locationName:"arn" type:"string"` @@ -2504,6 +2558,12 @@ return s.String() } +// SetApplicationTag sets the ApplicationTag field's value. +func (s *Application) SetApplicationTag(v map[string]*string) *Application { + s.ApplicationTag = v + return s +} + // SetArn sets the Arn field's value. func (s *Application) SetArn(v string) *Application { s.Arn = &v @@ -2625,6 +2685,67 @@ return s } +// The result of the application tag that's applied to a resource. +type ApplicationTagResult struct { + _ struct{} `type:"structure"` + + // The application tag is in the process of being applied to a resource, was + // successfully applied to a resource, or failed to apply to a resource. + ApplicationTagStatus *string `locationName:"applicationTagStatus" type:"string" enum:"ApplicationTagStatus"` + + // The message returned if the call fails. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // A unique pagination token for each page of results. Make the call again with + // the returned token to retrieve the next page of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The resources associated with an application + Resources []*ResourcesListItem `locationName:"resources" 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 ApplicationTagResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationTagResult) GoString() string { + return s.String() +} + +// SetApplicationTagStatus sets the ApplicationTagStatus field's value. +func (s *ApplicationTagResult) SetApplicationTagStatus(v string) *ApplicationTagResult { + s.ApplicationTagStatus = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ApplicationTagResult) SetErrorMessage(v string) *ApplicationTagResult { + s.ErrorMessage = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ApplicationTagResult) SetNextToken(v string) *ApplicationTagResult { + s.NextToken = &v + return s +} + +// SetResources sets the Resources field's value. +func (s *ApplicationTagResult) SetResources(v []*ResourcesListItem) *ApplicationTagResult { + s.Resources = v + return s +} + type AssociateAttributeGroupInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -2735,13 +2856,16 @@ } type AssociateResourceInput struct { - _ struct{} `type:"structure" nopayload:"true"` + _ struct{} `type:"structure"` // The name, ID, or ARN of the application. // // Application is a required field Application *string `location:"uri" locationName:"application" min:"1" type:"string" required:"true"` + // Determines whether an application tag is applied or skipped. + Options []*string `locationName:"options" type:"list" enum:"AssociationOption"` + // The name or ID of the resource of which the application will be associated. // // Resource is a required field @@ -2805,6 +2929,12 @@ return s } +// SetOptions sets the Options field's value. +func (s *AssociateResourceInput) SetOptions(v []*string) *AssociateResourceInput { + s.Options = v + return s +} + // SetResource sets the Resource field's value. func (s *AssociateResourceInput) SetResource(v string) *AssociateResourceInput { s.Resource = &v @@ -2824,6 +2954,9 @@ // attributes. ApplicationArn *string `locationName:"applicationArn" type:"string"` + // Determines whether an application tag is applied or skipped. + Options []*string `locationName:"options" type:"list" enum:"AssociationOption"` + // The Amazon resource name (ARN) that specifies the resource. ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"` } @@ -2852,6 +2985,12 @@ return s } +// SetOptions sets the Options field's value. +func (s *AssociateResourceOutput) SetOptions(v []*string) *AssociateResourceOutput { + s.Options = v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *AssociateResourceOutput) SetResourceArn(v string) *AssociateResourceOutput { s.ResourceArn = &v @@ -2966,9 +3105,7 @@ // using ListAttributeGroupsForApplication. // // The name of the attribute group. - // - // Deprecated: This field is deprecated. We recommend not using the field when using ListAttributeGroupsForApplication. - Name *string `locationName:"name" min:"1" deprecated:"true" type:"string"` + Name *string `locationName:"name" min:"1" type:"string"` } // String returns the string representation. @@ -3857,6 +3994,9 @@ type GetApplicationOutput struct { _ struct{} `type:"structure"` + // A key-value pair that identifies an associated resource. + ApplicationTag map[string]*string `locationName:"applicationTag" type:"map"` + // The Amazon resource name (ARN) that specifies the application across services. Arn *string `locationName:"arn" type:"string"` @@ -3906,6 +4046,12 @@ return s.String() } +// SetApplicationTag sets the ApplicationTag field's value. +func (s *GetApplicationOutput) SetApplicationTag(v map[string]*string) *GetApplicationOutput { + s.ApplicationTag = v + return s +} + // SetArn sets the Arn field's value. func (s *GetApplicationOutput) SetArn(v string) *GetApplicationOutput { s.Arn = &v @@ -3968,11 +4114,23 @@ // Application is a required field Application *string `location:"uri" locationName:"application" min:"1" type:"string" required:"true"` + // The maximum number of results to return. If the parameter is omitted, it + // defaults to 25. The value is optional. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // A unique pagination token for each page of results. Make the call again with + // the returned token to retrieve the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + // The name or ID of the resource associated with the application. // // Resource is a required field Resource *string `location:"uri" locationName:"resource" min:"1" type:"string" required:"true"` + // States whether an application tag is applied, not applied, in the process + // of being applied, or skipped. + ResourceTagStatus []*string `location:"querystring" locationName:"resourceTagStatus" min:"1" type:"list" enum:"ResourceItemStatus"` + // The type of resource associated with the application. // // ResourceType is a required field @@ -4006,12 +4164,21 @@ if s.Application != nil && len(*s.Application) < 1 { invalidParams.Add(request.NewErrParamMinLen("Application", 1)) } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } if s.Resource == nil { invalidParams.Add(request.NewErrParamRequired("Resource")) } if s.Resource != nil && len(*s.Resource) < 1 { invalidParams.Add(request.NewErrParamMinLen("Resource", 1)) } + if s.ResourceTagStatus != nil && len(s.ResourceTagStatus) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceTagStatus", 1)) + } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } @@ -4031,12 +4198,30 @@ return s } +// SetMaxResults sets the MaxResults field's value. +func (s *GetAssociatedResourceInput) SetMaxResults(v int64) *GetAssociatedResourceInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetAssociatedResourceInput) SetNextToken(v string) *GetAssociatedResourceInput { + s.NextToken = &v + return s +} + // SetResource sets the Resource field's value. func (s *GetAssociatedResourceInput) SetResource(v string) *GetAssociatedResourceInput { s.Resource = &v return s } +// SetResourceTagStatus sets the ResourceTagStatus field's value. +func (s *GetAssociatedResourceInput) SetResourceTagStatus(v []*string) *GetAssociatedResourceInput { + s.ResourceTagStatus = v + return s +} + // SetResourceType sets the ResourceType field's value. func (s *GetAssociatedResourceInput) SetResourceType(v string) *GetAssociatedResourceInput { s.ResourceType = &v @@ -4046,6 +4231,12 @@ type GetAssociatedResourceOutput struct { _ struct{} `type:"structure"` + // The result of the application that's tag applied to a resource. + ApplicationTagResult *ApplicationTagResult `locationName:"applicationTagResult" type:"structure"` + + // Determines whether an application tag is applied or skipped. + Options []*string `locationName:"options" type:"list" enum:"AssociationOption"` + // The resource associated with the application. Resource *Resource `locationName:"resource" type:"structure"` } @@ -4068,6 +4259,18 @@ return s.String() } +// SetApplicationTagResult sets the ApplicationTagResult field's value. +func (s *GetAssociatedResourceOutput) SetApplicationTagResult(v *ApplicationTagResult) *GetAssociatedResourceOutput { + s.ApplicationTagResult = v + return s +} + +// SetOptions sets the Options field's value. +func (s *GetAssociatedResourceOutput) SetOptions(v []*string) *GetAssociatedResourceOutput { + s.Options = v + return s +} + // SetResource sets the Resource field's value. func (s *GetAssociatedResourceOutput) SetResource(v *Resource) *GetAssociatedResourceOutput { s.Resource = v @@ -4289,6 +4492,9 @@ _ struct{} `type:"structure"` // The information about the resource group integration. + ApplicationTagResourceGroup *ResourceGroup `locationName:"applicationTagResourceGroup" type:"structure"` + + // The information about the resource group integration. ResourceGroup *ResourceGroup `locationName:"resourceGroup" type:"structure"` } @@ -4310,6 +4516,12 @@ return s.String() } +// SetApplicationTagResourceGroup sets the ApplicationTagResourceGroup field's value. +func (s *Integrations) SetApplicationTagResourceGroup(v *ResourceGroup) *Integrations { + s.ApplicationTagResourceGroup = v + return s +} + // SetResourceGroup sets the ResourceGroup field's value. func (s *Integrations) SetResourceGroup(v *ResourceGroup) *Integrations { s.ResourceGroup = v @@ -5069,7 +5281,7 @@ _ struct{} `type:"structure"` // The Amazon resource name (ARN) of the resource. - Arn *string `locationName:"arn" type:"string"` + Arn *string `locationName:"arn" min:"1" type:"string"` // The time the resource was associated with the application. AssociationTime *time.Time `locationName:"associationTime" type:"timestamp" timestampFormat:"iso8601"` @@ -5228,6 +5440,9 @@ // The name of the resource. Name *string `locationName:"name" min:"1" type:"string"` + // Determines whether an application tag is applied or skipped. + Options []*string `locationName:"options" type:"list" enum:"AssociationOption"` + // The details related to the resource. ResourceDetails *ResourceDetails `locationName:"resourceDetails" type:"structure"` @@ -5265,6 +5480,12 @@ return s } +// SetOptions sets the Options field's value. +func (s *ResourceInfo) SetOptions(v []*string) *ResourceInfo { + s.Options = v + return s +} + // SetResourceDetails sets the ResourceDetails field's value. func (s *ResourceInfo) SetResourceDetails(v *ResourceDetails) *ResourceInfo { s.ResourceDetails = v @@ -5373,6 +5594,65 @@ return s.RespMetadata.RequestID } +// The resource in a list of resources. +type ResourcesListItem struct { + _ struct{} `type:"structure"` + + // The message returned if the call fails. + ErrorMessage *string `locationName:"errorMessage" min:"1" type:"string"` + + // The Amazon resource name (ARN) of the resource. + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"` + + // Provides information about the AppRegistry resource type. + ResourceType *string `locationName:"resourceType" type:"string"` + + // The status of the list item. + Status *string `locationName:"status" 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 ResourcesListItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourcesListItem) GoString() string { + return s.String() +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ResourcesListItem) SetErrorMessage(v string) *ResourcesListItem { + s.ErrorMessage = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ResourcesListItem) SetResourceArn(v string) *ResourcesListItem { + s.ResourceArn = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ResourcesListItem) SetResourceType(v string) *ResourcesListItem { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ResourcesListItem) SetStatus(v string) *ResourcesListItem { + s.Status = &v + return s +} + // The maximum number of resources per account has been reached. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -6115,6 +6395,42 @@ } const ( + // ApplicationTagStatusInProgress is a ApplicationTagStatus enum value + ApplicationTagStatusInProgress = "IN_PROGRESS" + + // ApplicationTagStatusSuccess is a ApplicationTagStatus enum value + ApplicationTagStatusSuccess = "SUCCESS" + + // ApplicationTagStatusFailure is a ApplicationTagStatus enum value + ApplicationTagStatusFailure = "FAILURE" +) + +// ApplicationTagStatus_Values returns all elements of the ApplicationTagStatus enum +func ApplicationTagStatus_Values() []string { + return []string{ + ApplicationTagStatusInProgress, + ApplicationTagStatusSuccess, + ApplicationTagStatusFailure, + } +} + +const ( + // AssociationOptionApplyApplicationTag is a AssociationOption enum value + AssociationOptionApplyApplicationTag = "APPLY_APPLICATION_TAG" + + // AssociationOptionSkipApplicationTag is a AssociationOption enum value + AssociationOptionSkipApplicationTag = "SKIP_APPLICATION_TAG" +) + +// AssociationOption_Values returns all elements of the AssociationOption enum +func AssociationOption_Values() []string { + return []string{ + AssociationOptionApplyApplicationTag, + AssociationOptionSkipApplicationTag, + } +} + +const ( // ResourceGroupStateCreating is a ResourceGroupState enum value ResourceGroupStateCreating = "CREATING" @@ -6146,6 +6462,30 @@ } } +const ( + // ResourceItemStatusSuccess is a ResourceItemStatus enum value + ResourceItemStatusSuccess = "SUCCESS" + + // ResourceItemStatusFailed is a ResourceItemStatus enum value + ResourceItemStatusFailed = "FAILED" + + // ResourceItemStatusInProgress is a ResourceItemStatus enum value + ResourceItemStatusInProgress = "IN_PROGRESS" + + // ResourceItemStatusSkipped is a ResourceItemStatus enum value + ResourceItemStatusSkipped = "SKIPPED" +) + +// ResourceItemStatus_Values returns all elements of the ResourceItemStatus enum +func ResourceItemStatus_Values() []string { + return []string{ + ResourceItemStatusSuccess, + ResourceItemStatusFailed, + ResourceItemStatusInProgress, + ResourceItemStatusSkipped, + } +} + const ( // ResourceTypeCfnStack is a ResourceType enum value ResourceTypeCfnStack = "CFN_STACK" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/apprunner/api.go golang-github-aws-aws-sdk-go-1.48.14/service/apprunner/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/apprunner/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/apprunner/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4675,6 +4675,11 @@ // // SourceCodeVersion is a required field SourceCodeVersion *SourceCodeVersion `type:"structure" required:"true"` + + // The path of the directory that stores source code and configuration files. + // The build and start commands also execute from here. The path is absolute + // from root and, if not specified, defaults to the repository root. + SourceDirectory *string `min:"1" type:"string"` } // String returns the string representation. @@ -4704,6 +4709,9 @@ if s.SourceCodeVersion == nil { invalidParams.Add(request.NewErrParamRequired("SourceCodeVersion")) } + if s.SourceDirectory != nil && len(*s.SourceDirectory) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceDirectory", 1)) + } if s.CodeConfiguration != nil { if err := s.CodeConfiguration.Validate(); err != nil { invalidParams.AddNested("CodeConfiguration", err.(request.ErrInvalidParams)) @@ -4739,6 +4747,12 @@ return s } +// SetSourceDirectory sets the SourceDirectory field's value. +func (s *CodeRepository) SetSourceDirectory(v string) *CodeRepository { + s.SourceDirectory = &v + return s +} + // Describes an App Runner connection resource. type Connection struct { _ struct{} `type:"structure"` @@ -4885,7 +4899,7 @@ // 1 of this name. When you use the same name in subsequent calls, App Runner // creates incremental revisions of the configuration. // - // Prior to the release of Managing auto scaling (https://docs.aws.amazon.com/apprunner/latest/relnotes/release-yyyy-mm-dd-asc-improvements.html), + // Prior to the release of Auto scale configuration enhancements (https://docs.aws.amazon.com/apprunner/latest/relnotes/release-2023-09-22-auto-scale-config.html), // the name DefaultConfiguration was reserved. // // This restriction is no longer in place. You can now manage DefaultConfiguration @@ -8994,6 +9008,18 @@ // Network configuration settings for inbound message traffic. IngressConfiguration *IngressConfiguration `type:"structure"` + + // App Runner provides you with the option to choose between Internet Protocol + // version 4 (IPv4) and dual-stack (IPv4 and IPv6) for your incoming public + // network configuration. This is an optional parameter. If you do not specify + // an IpAddressType, it defaults to select IPv4. + // + // Currently, App Runner supports dual-stack for only Public endpoint. Only + // IPv4 is supported for Private endpoint. If you update a service that's using + // dual-stack Public endpoint to a Private endpoint, your App Runner service + // will default to support only IPv4 for Private endpoint and fail to receive + // traffic originating from IPv6 endpoint. + IpAddressType *string `type:"string" enum:"IpAddressType"` } // String returns the string representation. @@ -9041,6 +9067,12 @@ return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *NetworkConfiguration) SetIpAddressType(v string) *NetworkConfiguration { + s.IpAddressType = &v + return s +} + // Describes an App Runner observability configuration resource. Multiple revisions // of a configuration have the same ObservabilityConfigurationName and different // ObservabilityConfigurationRevision values. @@ -11416,6 +11448,22 @@ } } +const ( + // IpAddressTypeIpv4 is a IpAddressType enum value + IpAddressTypeIpv4 = "IPV4" + + // IpAddressTypeDualStack is a IpAddressType enum value + IpAddressTypeDualStack = "DUAL_STACK" +) + +// IpAddressType_Values returns all elements of the IpAddressType enum +func IpAddressType_Values() []string { + return []string{ + IpAddressTypeIpv4, + IpAddressTypeDualStack, + } +} + const ( // ObservabilityConfigurationStatusActive is a ObservabilityConfigurationStatus enum value ObservabilityConfigurationStatusActive = "ACTIVE" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appstream/api.go golang-github-aws-aws-sdk-go-1.48.14/service/appstream/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appstream/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appstream/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -8321,9 +8321,15 @@ _ struct{} `type:"structure"` // The desired number of streaming instances. + DesiredInstances *int64 `type:"integer"` + + // The desired number of user sessions for a multi-session fleet. This is not + // allowed for single-session fleets. // - // DesiredInstances is a required field - DesiredInstances *int64 `type:"integer" required:"true"` + // When you create a fleet, you must set either the DesiredSessions or DesiredInstances + // attribute, based on the type of fleet you create. You can’t define both + // attributes or leave both attributes blank. + DesiredSessions *int64 `type:"integer"` } // String returns the string representation. @@ -8344,37 +8350,58 @@ return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ComputeCapacity) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ComputeCapacity"} - if s.DesiredInstances == nil { - invalidParams.Add(request.NewErrParamRequired("DesiredInstances")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - // SetDesiredInstances sets the DesiredInstances field's value. func (s *ComputeCapacity) SetDesiredInstances(v int64) *ComputeCapacity { s.DesiredInstances = &v return s } +// SetDesiredSessions sets the DesiredSessions field's value. +func (s *ComputeCapacity) SetDesiredSessions(v int64) *ComputeCapacity { + s.DesiredSessions = &v + return s +} + // Describes the capacity status for a fleet. type ComputeCapacityStatus struct { _ struct{} `type:"structure"` + // The number of user sessions currently being used for streaming sessions. + // This only applies to multi-session fleets. + ActiveUserSessions *int64 `type:"integer"` + + // The total number of session slots that are available for streaming or are + // currently streaming. + // + // ActualUserSessionCapacity = AvailableUserSessionCapacity + ActiveUserSessions + // + // This only applies to multi-session fleets. + ActualUserSessions *int64 `type:"integer"` + // The number of currently available instances that can be used to stream sessions. Available *int64 `type:"integer"` + // The number of idle session slots currently available for user sessions. + // + // AvailableUserSessionCapacity = ActualUserSessionCapacity - ActiveUserSessions + // + // This only applies to multi-session fleets. + AvailableUserSessions *int64 `type:"integer"` + // The desired number of streaming instances. // // Desired is a required field Desired *int64 `type:"integer" required:"true"` + // The total number of sessions slots that are either running or pending. This + // represents the total number of concurrent streaming sessions your fleet can + // support in a steady state. + // + // DesiredUserSessionCapacity = ActualUserSessionCapacity + PendingUserSessionCapacity + // + // This only applies to multi-session fleets. + DesiredUserSessions *int64 `type:"integer"` + // The number of instances in use for streaming. InUse *int64 `type:"integer"` @@ -8400,18 +8427,42 @@ return s.String() } +// SetActiveUserSessions sets the ActiveUserSessions field's value. +func (s *ComputeCapacityStatus) SetActiveUserSessions(v int64) *ComputeCapacityStatus { + s.ActiveUserSessions = &v + return s +} + +// SetActualUserSessions sets the ActualUserSessions field's value. +func (s *ComputeCapacityStatus) SetActualUserSessions(v int64) *ComputeCapacityStatus { + s.ActualUserSessions = &v + return s +} + // SetAvailable sets the Available field's value. func (s *ComputeCapacityStatus) SetAvailable(v int64) *ComputeCapacityStatus { s.Available = &v return s } +// SetAvailableUserSessions sets the AvailableUserSessions field's value. +func (s *ComputeCapacityStatus) SetAvailableUserSessions(v int64) *ComputeCapacityStatus { + s.AvailableUserSessions = &v + return s +} + // SetDesired sets the Desired field's value. func (s *ComputeCapacityStatus) SetDesired(v int64) *ComputeCapacityStatus { s.Desired = &v return s } +// SetDesiredUserSessions sets the DesiredUserSessions field's value. +func (s *ComputeCapacityStatus) SetDesiredUserSessions(v int64) *ComputeCapacityStatus { + s.DesiredUserSessions = &v + return s +} + // SetInUse sets the InUse field's value. func (s *ComputeCapacityStatus) SetInUse(v int64) *ComputeCapacityStatus { s.InUse = &v @@ -9753,13 +9804,17 @@ // Elastic fleets, and not allowed for other fleet types. MaxConcurrentSessions *int64 `type:"integer"` + // The maximum number of user sessions on an instance. This only applies to + // multi-session fleets. + MaxSessionsPerInstance *int64 `type:"integer"` + // The maximum amount of time that a streaming session can remain active, in // seconds. If users are still connected to a streaming instance five minutes // before this limit is reached, they are prompted to save any open documents // before being disconnected. After this time elapses, the instance is terminated // and replaced by a new instance. // - // Specify a value between 600 and 360000. + // Specify a value between 600 and 432000. MaxUserDurationInSeconds *int64 `type:"integer"` // A unique name for the fleet. @@ -9842,11 +9897,6 @@ if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } - if s.ComputeCapacity != nil { - if err := s.ComputeCapacity.Validate(); err != nil { - invalidParams.AddNested("ComputeCapacity", err.(request.ErrInvalidParams)) - } - } if s.SessionScriptS3Location != nil { if err := s.SessionScriptS3Location.Validate(); err != nil { invalidParams.AddNested("SessionScriptS3Location", err.(request.ErrInvalidParams)) @@ -9937,6 +9987,12 @@ return s } +// SetMaxSessionsPerInstance sets the MaxSessionsPerInstance field's value. +func (s *CreateFleetInput) SetMaxSessionsPerInstance(v int64) *CreateFleetInput { + s.MaxSessionsPerInstance = &v + return s +} + // SetMaxUserDurationInSeconds sets the MaxUserDurationInSeconds field's value. func (s *CreateFleetInput) SetMaxUserDurationInSeconds(v int64) *CreateFleetInput { s.MaxUserDurationInSeconds = &v @@ -13267,7 +13323,10 @@ // The name of the fleet. This value is case-sensitive. // // FleetName is a required field - FleetName *string `min:"1" type:"string" required:"true"` + FleetName *string `type:"string" required:"true"` + + // The identifier for the instance hosting the session. + InstanceId *string `min:"1" type:"string"` // The size of each page of results. The default value is 20 and the maximum // value is 50. @@ -13280,7 +13339,7 @@ // The name of the stack. This value is case-sensitive. // // StackName is a required field - StackName *string `min:"1" type:"string" required:"true"` + StackName *string `type:"string" required:"true"` // The user identifier (ID). If you specify a user ID, you must also specify // the authentication type. @@ -13311,8 +13370,8 @@ if s.FleetName == nil { invalidParams.Add(request.NewErrParamRequired("FleetName")) } - if s.FleetName != nil && len(*s.FleetName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FleetName", 1)) + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) @@ -13320,9 +13379,6 @@ if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } - if s.StackName != nil && len(*s.StackName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) - } if s.UserId != nil && len(*s.UserId) < 2 { invalidParams.Add(request.NewErrParamMinLen("UserId", 2)) } @@ -13345,6 +13401,12 @@ return s } +// SetInstanceId sets the InstanceId field's value. +func (s *DescribeSessionsInput) SetInstanceId(v string) *DescribeSessionsInput { + s.InstanceId = &v + return s +} + // SetLimit sets the Limit field's value. func (s *DescribeSessionsInput) SetLimit(v int64) *DescribeSessionsInput { s.Limit = &v @@ -15139,6 +15201,10 @@ // The maximum number of concurrent sessions for the fleet. MaxConcurrentSessions *int64 `type:"integer"` + // The maximum number of user sessions on an instance. This only applies to + // multi-session fleets. + MaxSessionsPerInstance *int64 `type:"integer"` + // The maximum amount of time that a streaming session can remain active, in // seconds. If users are still connected to a streaming instance five minutes // before this limit is reached, they are prompted to save any open documents @@ -15294,6 +15360,12 @@ return s } +// SetMaxSessionsPerInstance sets the MaxSessionsPerInstance field's value. +func (s *Fleet) SetMaxSessionsPerInstance(v int64) *Fleet { + s.MaxSessionsPerInstance = &v + return s +} + // SetMaxUserDurationInSeconds sets the MaxUserDurationInSeconds field's value. func (s *Fleet) SetMaxUserDurationInSeconds(v int64) *Fleet { s.MaxUserDurationInSeconds = &v @@ -17486,6 +17558,9 @@ // Id is a required field Id *string `min:"1" type:"string" required:"true"` + // The identifier for the instance hosting the session. + InstanceId *string `min:"1" type:"string"` + // The time when the streaming session is set to expire. This time is based // on the MaxUserDurationinSeconds value, which determines the maximum length // of time that a streaming session can run. A streaming session might end earlier @@ -17559,6 +17634,12 @@ return s } +// SetInstanceId sets the InstanceId field's value. +func (s *Session) SetInstanceId(v string) *Session { + s.InstanceId = &v + return s +} + // SetMaxExpirationTime sets the MaxExpirationTime field's value. func (s *Session) SetMaxExpirationTime(v time.Time) *Session { s.MaxExpirationTime = &v @@ -19368,6 +19449,10 @@ // The maximum number of concurrent sessions for a fleet. MaxConcurrentSessions *int64 `type:"integer"` + // The maximum number of user sessions on an instance. This only applies to + // multi-session fleets. + MaxSessionsPerInstance *int64 `type:"integer"` + // The maximum amount of time that a streaming session can remain active, in // seconds. If users are still connected to a streaming instance five minutes // before this limit is reached, they are prompted to save any open documents @@ -19378,7 +19463,7 @@ MaxUserDurationInSeconds *int64 `type:"integer"` // A unique name for the fleet. - Name *string `min:"1" type:"string"` + Name *string `type:"string"` // The platform of the fleet. WINDOWS_SERVER_2019 and AMAZON_LINUX2 are supported // for Elastic fleets. @@ -19434,14 +19519,6 @@ if s.InstanceType != nil && len(*s.InstanceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) - } - if s.ComputeCapacity != nil { - if err := s.ComputeCapacity.Validate(); err != nil { - invalidParams.AddNested("ComputeCapacity", err.(request.ErrInvalidParams)) - } - } if s.SessionScriptS3Location != nil { if err := s.SessionScriptS3Location.Validate(); err != nil { invalidParams.AddNested("SessionScriptS3Location", err.(request.ErrInvalidParams)) @@ -19538,6 +19615,12 @@ return s } +// SetMaxSessionsPerInstance sets the MaxSessionsPerInstance field's value. +func (s *UpdateFleetInput) SetMaxSessionsPerInstance(v int64) *UpdateFleetInput { + s.MaxSessionsPerInstance = &v + return s +} + // SetMaxUserDurationInSeconds sets the MaxUserDurationInSeconds field's value. func (s *UpdateFleetInput) SetMaxUserDurationInSeconds(v int64) *UpdateFleetInput { s.MaxUserDurationInSeconds = &v @@ -20620,6 +20703,9 @@ // FleetAttributeSessionScriptS3Location is a FleetAttribute enum value FleetAttributeSessionScriptS3Location = "SESSION_SCRIPT_S3_LOCATION" + + // FleetAttributeMaxSessionsPerInstance is a FleetAttribute enum value + FleetAttributeMaxSessionsPerInstance = "MAX_SESSIONS_PER_INSTANCE" ) // FleetAttribute_Values returns all elements of the FleetAttribute enum @@ -20631,6 +20717,7 @@ FleetAttributeIamRoleArn, FleetAttributeUsbDeviceFilterStrings, FleetAttributeSessionScriptS3Location, + FleetAttributeMaxSessionsPerInstance, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appsync/api.go golang-github-aws-aws-sdk-go-1.48.14/service/appsync/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appsync/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appsync/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2655,6 +2655,95 @@ return out, req.Send() } +const opGetDataSourceIntrospection = "GetDataSourceIntrospection" + +// GetDataSourceIntrospectionRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSourceIntrospection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetDataSourceIntrospection for more information on using the GetDataSourceIntrospection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetDataSourceIntrospectionRequest method. +// req, resp := client.GetDataSourceIntrospectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSourceIntrospection +func (c *AppSync) GetDataSourceIntrospectionRequest(input *GetDataSourceIntrospectionInput) (req *request.Request, output *GetDataSourceIntrospectionOutput) { + op := &request.Operation{ + Name: opGetDataSourceIntrospection, + HTTPMethod: "GET", + HTTPPath: "/v1/datasources/introspections/{introspectionId}", + } + + if input == nil { + input = &GetDataSourceIntrospectionInput{} + } + + output = &GetDataSourceIntrospectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSourceIntrospection API operation for AWS AppSync. +// +// Retrieves the record of an existing introspection. If the retrieval is successful, +// the result of the instrospection will also be returned. If the retrieval +// fails the operation, an error message will be returned instead. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS AppSync's +// API operation GetDataSourceIntrospection for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The request is not well formed. For example, a value is invalid or a required +// field is missing. Check the field values, and then try again. +// +// - NotFoundException +// The resource specified in the request was not found. Check the resource, +// and then try again. +// +// - InternalFailureException +// An internal AppSync error occurred. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSourceIntrospection +func (c *AppSync) GetDataSourceIntrospection(input *GetDataSourceIntrospectionInput) (*GetDataSourceIntrospectionOutput, error) { + req, out := c.GetDataSourceIntrospectionRequest(input) + return out, req.Send() +} + +// GetDataSourceIntrospectionWithContext is the same as GetDataSourceIntrospection with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSourceIntrospection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *AppSync) GetDataSourceIntrospectionWithContext(ctx aws.Context, input *GetDataSourceIntrospectionInput, opts ...request.Option) (*GetDataSourceIntrospectionOutput, error) { + req, out := c.GetDataSourceIntrospectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDomainName = "GetDomainName" // GetDomainNameRequest generates a "aws/request.Request" representing the @@ -4376,6 +4465,97 @@ return out, req.Send() } +const opStartDataSourceIntrospection = "StartDataSourceIntrospection" + +// StartDataSourceIntrospectionRequest generates a "aws/request.Request" representing the +// client's request for the StartDataSourceIntrospection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartDataSourceIntrospection for more information on using the StartDataSourceIntrospection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartDataSourceIntrospectionRequest method. +// req, resp := client.StartDataSourceIntrospectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartDataSourceIntrospection +func (c *AppSync) StartDataSourceIntrospectionRequest(input *StartDataSourceIntrospectionInput) (req *request.Request, output *StartDataSourceIntrospectionOutput) { + op := &request.Operation{ + Name: opStartDataSourceIntrospection, + HTTPMethod: "POST", + HTTPPath: "/v1/datasources/introspections", + } + + if input == nil { + input = &StartDataSourceIntrospectionInput{} + } + + output = &StartDataSourceIntrospectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDataSourceIntrospection API operation for AWS AppSync. +// +// Creates a new introspection. Returns the introspectionId of the new introspection +// after its creation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS AppSync's +// API operation StartDataSourceIntrospection for usage and error information. +// +// Returned Error Types: +// +// - NotFoundException +// The resource specified in the request was not found. Check the resource, +// and then try again. +// +// - UnauthorizedException +// You aren't authorized to perform this operation. +// +// - InternalFailureException +// An internal AppSync error occurred. Try your request again. +// +// - BadRequestException +// The request is not well formed. For example, a value is invalid or a required +// field is missing. Check the field values, and then try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartDataSourceIntrospection +func (c *AppSync) StartDataSourceIntrospection(input *StartDataSourceIntrospectionInput) (*StartDataSourceIntrospectionOutput, error) { + req, out := c.StartDataSourceIntrospectionRequest(input) + return out, req.Send() +} + +// StartDataSourceIntrospectionWithContext is the same as StartDataSourceIntrospection with the addition of +// the ability to pass a context and additional request options. +// +// See StartDataSourceIntrospection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *AppSync) StartDataSourceIntrospectionWithContext(ctx aws.Context, input *StartDataSourceIntrospectionInput, opts ...request.Option) (*StartDataSourceIntrospectionOutput, error) { + req, out := c.StartDataSourceIntrospectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartSchemaCreation = "StartSchemaCreation" // StartSchemaCreationRequest generates a "aws/request.Request" representing the @@ -8733,6 +8913,288 @@ return s } +// Contains the introspected data that was retrieved from the data source. +type DataSourceIntrospectionModel struct { + _ struct{} `type:"structure"` + + // The DataSourceIntrospectionModelField object data. + Fields []*DataSourceIntrospectionModelField `locationName:"fields" type:"list"` + + // The array of DataSourceIntrospectionModelIndex objects. + Indexes []*DataSourceIntrospectionModelIndex `locationName:"indexes" type:"list"` + + // The name of the model. For example, this could be the name of a single table + // in a database. + Name *string `locationName:"name" type:"string"` + + // The primary key stored as a DataSourceIntrospectionModelIndex object. + PrimaryKey *DataSourceIntrospectionModelIndex `locationName:"primaryKey" type:"structure"` + + // Contains the output of the SDL that was generated from the introspected types. + // This is controlled by the includeModelsSDL parameter of the GetDataSourceIntrospection + // operation. + Sdl *string `locationName:"sdl" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModel) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModel) GoString() string { + return s.String() +} + +// SetFields sets the Fields field's value. +func (s *DataSourceIntrospectionModel) SetFields(v []*DataSourceIntrospectionModelField) *DataSourceIntrospectionModel { + s.Fields = v + return s +} + +// SetIndexes sets the Indexes field's value. +func (s *DataSourceIntrospectionModel) SetIndexes(v []*DataSourceIntrospectionModelIndex) *DataSourceIntrospectionModel { + s.Indexes = v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModel) SetName(v string) *DataSourceIntrospectionModel { + s.Name = &v + return s +} + +// SetPrimaryKey sets the PrimaryKey field's value. +func (s *DataSourceIntrospectionModel) SetPrimaryKey(v *DataSourceIntrospectionModelIndex) *DataSourceIntrospectionModel { + s.PrimaryKey = v + return s +} + +// SetSdl sets the Sdl field's value. +func (s *DataSourceIntrospectionModel) SetSdl(v string) *DataSourceIntrospectionModel { + s.Sdl = &v + return s +} + +// Represents the fields that were retrieved from the introspected data. +type DataSourceIntrospectionModelField struct { + _ struct{} `type:"structure"` + + // The length value of the introspected field. + Length *int64 `locationName:"length" type:"long"` + + // The name of the field that was retrieved from the introspected data. + Name *string `locationName:"name" type:"string"` + + // The DataSourceIntrospectionModelFieldType object data. + Type *DataSourceIntrospectionModelFieldType `locationName:"type" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModelField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModelField) GoString() string { + return s.String() +} + +// SetLength sets the Length field's value. +func (s *DataSourceIntrospectionModelField) SetLength(v int64) *DataSourceIntrospectionModelField { + s.Length = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModelField) SetName(v string) *DataSourceIntrospectionModelField { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceIntrospectionModelField) SetType(v *DataSourceIntrospectionModelFieldType) *DataSourceIntrospectionModelField { + s.Type = v + return s +} + +// Represents the type data for each field retrieved from the introspection. +type DataSourceIntrospectionModelFieldType struct { + _ struct{} `type:"structure"` + + // Specifies the classification of data. For example, this could be set to values + // like Scalar or NonNull to indicate a fundamental property of the field. + // + // Valid values include: + // + // * Scalar: Indicates the value is a primitive type (scalar). + // + // * NonNull: Indicates the field cannot be null. + // + // * List: Indicates the field contains a list. + Kind *string `locationName:"kind" type:"string"` + + // The name of the data type that represents the field. For example, String + // is a valid name value. + Name *string `locationName:"name" type:"string"` + + // The DataSourceIntrospectionModelFieldType object data. The type is only present + // if DataSourceIntrospectionModelFieldType.kind is set to NonNull or List. + // + // The type typically contains its own kind and name fields to represent the + // actual type data. For instance, type could contain a kind value of Scalar + // with a name value of String. The values Scalar and String will be collectively + // stored in the values field. + Type *DataSourceIntrospectionModelFieldType `locationName:"type" type:"structure"` + + // The values of the type field. This field represents the AppSync data type + // equivalent of the introspected field. + Values []*string `locationName:"values" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModelFieldType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModelFieldType) GoString() string { + return s.String() +} + +// SetKind sets the Kind field's value. +func (s *DataSourceIntrospectionModelFieldType) SetKind(v string) *DataSourceIntrospectionModelFieldType { + s.Kind = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModelFieldType) SetName(v string) *DataSourceIntrospectionModelFieldType { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceIntrospectionModelFieldType) SetType(v *DataSourceIntrospectionModelFieldType) *DataSourceIntrospectionModelFieldType { + s.Type = v + return s +} + +// SetValues sets the Values field's value. +func (s *DataSourceIntrospectionModelFieldType) SetValues(v []*string) *DataSourceIntrospectionModelFieldType { + s.Values = v + return s +} + +// The index that was retrieved from the introspected data. +type DataSourceIntrospectionModelIndex struct { + _ struct{} `type:"structure"` + + // The fields of the index. + Fields []*string `locationName:"fields" type:"list"` + + // The name of the index. + Name *string `locationName:"name" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModelIndex) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionModelIndex) GoString() string { + return s.String() +} + +// SetFields sets the Fields field's value. +func (s *DataSourceIntrospectionModelIndex) SetFields(v []*string) *DataSourceIntrospectionModelIndex { + s.Fields = v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModelIndex) SetName(v string) *DataSourceIntrospectionModelIndex { + s.Name = &v + return s +} + +// Represents the output of a DataSourceIntrospectionResult. This is the populated +// result of a GetDataSourceIntrospection operation. +type DataSourceIntrospectionResult struct { + _ struct{} `type:"structure"` + + // The array of DataSourceIntrospectionModel objects. + Models []*DataSourceIntrospectionModel `locationName:"models" type:"list"` + + // Determines the number of types to be returned in a single response before + // paginating. This value is typically taken from nextToken value from the previous + // response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceIntrospectionResult) GoString() string { + return s.String() +} + +// SetModels sets the Models field's value. +func (s *DataSourceIntrospectionResult) SetModels(v []*DataSourceIntrospectionModel) *DataSourceIntrospectionResult { + s.Models = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DataSourceIntrospectionResult) SetNextToken(v string) *DataSourceIntrospectionResult { + s.NextToken = &v + return s +} + // Represents the input of a DeleteApiCache operation. type DeleteApiCacheInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10782,6 +11244,157 @@ return s } +type GetDataSourceIntrospectionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A boolean flag that determines whether SDL should be generated for introspected + // types or not. If set to true, each model will contain an sdl property that + // contains the SDL for that type. The SDL only contains the type data and no + // additional metadata or directives. + IncludeModelsSDL *bool `location:"querystring" locationName:"includeModelsSDL" type:"boolean"` + + // The introspection ID. Each introspection contains a unique ID that can be + // used to reference the instrospection record. + // + // IntrospectionId is a required field + IntrospectionId *string `location:"uri" locationName:"introspectionId" type:"string" required:"true"` + + // The maximum number of introspected types that will be returned in a single + // response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // Determines the number of types to be returned in a single response before + // paginating. This value is typically taken from nextToken value from the previous + // response. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceIntrospectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceIntrospectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceIntrospectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceIntrospectionInput"} + if s.IntrospectionId == nil { + invalidParams.Add(request.NewErrParamRequired("IntrospectionId")) + } + if s.IntrospectionId != nil && len(*s.IntrospectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntrospectionId", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeModelsSDL sets the IncludeModelsSDL field's value. +func (s *GetDataSourceIntrospectionInput) SetIncludeModelsSDL(v bool) *GetDataSourceIntrospectionInput { + s.IncludeModelsSDL = &v + return s +} + +// SetIntrospectionId sets the IntrospectionId field's value. +func (s *GetDataSourceIntrospectionInput) SetIntrospectionId(v string) *GetDataSourceIntrospectionInput { + s.IntrospectionId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetDataSourceIntrospectionInput) SetMaxResults(v int64) *GetDataSourceIntrospectionInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetDataSourceIntrospectionInput) SetNextToken(v string) *GetDataSourceIntrospectionInput { + s.NextToken = &v + return s +} + +type GetDataSourceIntrospectionOutput struct { + _ struct{} `type:"structure"` + + // The introspection ID. Each introspection contains a unique ID that can be + // used to reference the instrospection record. + IntrospectionId *string `locationName:"introspectionId" type:"string"` + + // The DataSourceIntrospectionResult object data. + IntrospectionResult *DataSourceIntrospectionResult `locationName:"introspectionResult" type:"structure"` + + // The status of the introspection during retrieval. By default, when a new + // instrospection is being retrieved, the status will be set to PROCESSING. + // Once the operation has been completed, the status will change to SUCCESS + // or FAILED depending on how the data was parsed. A FAILED operation will return + // an error and its details as an introspectionStatusDetail. + IntrospectionStatus *string `locationName:"introspectionStatus" type:"string" enum:"DataSourceIntrospectionStatus"` + + // The error detail field. When a FAILED introspectionStatus is returned, the + // introspectionStatusDetail will also return the exact error that was generated + // during the operation. + IntrospectionStatusDetail *string `locationName:"introspectionStatusDetail" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceIntrospectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceIntrospectionOutput) GoString() string { + return s.String() +} + +// SetIntrospectionId sets the IntrospectionId field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionId(v string) *GetDataSourceIntrospectionOutput { + s.IntrospectionId = &v + return s +} + +// SetIntrospectionResult sets the IntrospectionResult field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionResult(v *DataSourceIntrospectionResult) *GetDataSourceIntrospectionOutput { + s.IntrospectionResult = v + return s +} + +// SetIntrospectionStatus sets the IntrospectionStatus field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionStatus(v string) *GetDataSourceIntrospectionOutput { + s.IntrospectionStatus = &v + return s +} + +// SetIntrospectionStatusDetail sets the IntrospectionStatusDetail field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionStatusDetail(v string) *GetDataSourceIntrospectionOutput { + s.IntrospectionStatusDetail = &v + return s +} + type GetDataSourceOutput struct { _ struct{} `type:"structure"` @@ -13791,6 +14404,94 @@ return s } +// Contains the metadata required to introspect the RDS cluster. +type RdsDataApiConfig struct { + _ struct{} `type:"structure"` + + // The name of the database in the cluster. + // + // DatabaseName is a required field + DatabaseName *string `locationName:"databaseName" min:"1" type:"string" required:"true"` + + // The resource ARN of the RDS cluster. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // The secret's ARN that was obtained from Secrets Manager. A secret consists + // of secret information, the secret value, plus metadata about the secret. + // A secret value can be a string or binary. It typically includes the ARN, + // secret name and description, policies, tags, encryption key from the Key + // Management Service, and key rotation data. + // + // SecretArn is a required field + SecretArn *string `locationName:"secretArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RdsDataApiConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RdsDataApiConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RdsDataApiConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RdsDataApiConfig"} + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.SecretArn == nil { + invalidParams.Add(request.NewErrParamRequired("SecretArn")) + } + if s.SecretArn != nil && len(*s.SecretArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("SecretArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *RdsDataApiConfig) SetDatabaseName(v string) *RdsDataApiConfig { + s.DatabaseName = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *RdsDataApiConfig) SetResourceArn(v string) *RdsDataApiConfig { + s.ResourceArn = &v + return s +} + +// SetSecretArn sets the SecretArn field's value. +func (s *RdsDataApiConfig) SetSecretArn(v string) *RdsDataApiConfig { + s.SecretArn = &v + return s +} + // The Amazon Relational Database Service (Amazon RDS) HTTP endpoint configuration. type RdsHttpEndpointConfig struct { _ struct{} `type:"structure"` @@ -14315,6 +15016,108 @@ return s } +type StartDataSourceIntrospectionInput struct { + _ struct{} `type:"structure"` + + // The rdsDataApiConfig object data. + RdsDataApiConfig *RdsDataApiConfig `locationName:"rdsDataApiConfig" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceIntrospectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceIntrospectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDataSourceIntrospectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDataSourceIntrospectionInput"} + if s.RdsDataApiConfig != nil { + if err := s.RdsDataApiConfig.Validate(); err != nil { + invalidParams.AddNested("RdsDataApiConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRdsDataApiConfig sets the RdsDataApiConfig field's value. +func (s *StartDataSourceIntrospectionInput) SetRdsDataApiConfig(v *RdsDataApiConfig) *StartDataSourceIntrospectionInput { + s.RdsDataApiConfig = v + return s +} + +type StartDataSourceIntrospectionOutput struct { + _ struct{} `type:"structure"` + + // The introspection ID. Each introspection contains a unique ID that can be + // used to reference the instrospection record. + IntrospectionId *string `locationName:"introspectionId" type:"string"` + + // The status of the introspection during creation. By default, when a new instrospection + // has been created, the status will be set to PROCESSING. Once the operation + // has been completed, the status will change to SUCCESS or FAILED depending + // on how the data was parsed. A FAILED operation will return an error and its + // details as an introspectionStatusDetail. + IntrospectionStatus *string `locationName:"introspectionStatus" type:"string" enum:"DataSourceIntrospectionStatus"` + + // The error detail field. When a FAILED introspectionStatus is returned, the + // introspectionStatusDetail will also return the exact error that was generated + // during the operation. + IntrospectionStatusDetail *string `locationName:"introspectionStatusDetail" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceIntrospectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceIntrospectionOutput) GoString() string { + return s.String() +} + +// SetIntrospectionId sets the IntrospectionId field's value. +func (s *StartDataSourceIntrospectionOutput) SetIntrospectionId(v string) *StartDataSourceIntrospectionOutput { + s.IntrospectionId = &v + return s +} + +// SetIntrospectionStatus sets the IntrospectionStatus field's value. +func (s *StartDataSourceIntrospectionOutput) SetIntrospectionStatus(v string) *StartDataSourceIntrospectionOutput { + s.IntrospectionStatus = &v + return s +} + +// SetIntrospectionStatusDetail sets the IntrospectionStatusDetail field's value. +func (s *StartDataSourceIntrospectionOutput) SetIntrospectionStatusDetail(v string) *StartDataSourceIntrospectionOutput { + s.IntrospectionStatusDetail = &v + return s +} + type StartSchemaCreationInput struct { _ struct{} `type:"structure"` @@ -16717,6 +17520,26 @@ } } +const ( + // DataSourceIntrospectionStatusProcessing is a DataSourceIntrospectionStatus enum value + DataSourceIntrospectionStatusProcessing = "PROCESSING" + + // DataSourceIntrospectionStatusFailed is a DataSourceIntrospectionStatus enum value + DataSourceIntrospectionStatusFailed = "FAILED" + + // DataSourceIntrospectionStatusSuccess is a DataSourceIntrospectionStatus enum value + DataSourceIntrospectionStatusSuccess = "SUCCESS" +) + +// DataSourceIntrospectionStatus_Values returns all elements of the DataSourceIntrospectionStatus enum +func DataSourceIntrospectionStatus_Values() []string { + return []string{ + DataSourceIntrospectionStatusProcessing, + DataSourceIntrospectionStatusFailed, + DataSourceIntrospectionStatusSuccess, + } +} + const ( // DataSourceTypeAwsLambda is a DataSourceType enum value DataSourceTypeAwsLambda = "AWS_LAMBDA" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/appsync/appsynciface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/appsync/appsynciface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/appsync/appsynciface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/appsync/appsynciface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -172,6 +172,10 @@ GetDataSourceWithContext(aws.Context, *appsync.GetDataSourceInput, ...request.Option) (*appsync.GetDataSourceOutput, error) GetDataSourceRequest(*appsync.GetDataSourceInput) (*request.Request, *appsync.GetDataSourceOutput) + GetDataSourceIntrospection(*appsync.GetDataSourceIntrospectionInput) (*appsync.GetDataSourceIntrospectionOutput, error) + GetDataSourceIntrospectionWithContext(aws.Context, *appsync.GetDataSourceIntrospectionInput, ...request.Option) (*appsync.GetDataSourceIntrospectionOutput, error) + GetDataSourceIntrospectionRequest(*appsync.GetDataSourceIntrospectionInput) (*request.Request, *appsync.GetDataSourceIntrospectionOutput) + GetDomainName(*appsync.GetDomainNameInput) (*appsync.GetDomainNameOutput, error) GetDomainNameWithContext(aws.Context, *appsync.GetDomainNameInput, ...request.Option) (*appsync.GetDomainNameOutput, error) GetDomainNameRequest(*appsync.GetDomainNameInput) (*request.Request, *appsync.GetDomainNameOutput) @@ -248,6 +252,10 @@ ListTypesByAssociationWithContext(aws.Context, *appsync.ListTypesByAssociationInput, ...request.Option) (*appsync.ListTypesByAssociationOutput, error) ListTypesByAssociationRequest(*appsync.ListTypesByAssociationInput) (*request.Request, *appsync.ListTypesByAssociationOutput) + StartDataSourceIntrospection(*appsync.StartDataSourceIntrospectionInput) (*appsync.StartDataSourceIntrospectionOutput, error) + StartDataSourceIntrospectionWithContext(aws.Context, *appsync.StartDataSourceIntrospectionInput, ...request.Option) (*appsync.StartDataSourceIntrospectionOutput, error) + StartDataSourceIntrospectionRequest(*appsync.StartDataSourceIntrospectionInput) (*request.Request, *appsync.StartDataSourceIntrospectionOutput) + StartSchemaCreation(*appsync.StartSchemaCreationInput) (*appsync.StartSchemaCreationOutput, error) StartSchemaCreationWithContext(aws.Context, *appsync.StartSchemaCreationInput, ...request.Option) (*appsync.StartSchemaCreationOutput, error) StartSchemaCreationRequest(*appsync.StartSchemaCreationInput) (*request.Request, *appsync.StartSchemaCreationOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/api.go golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -55,8 +55,12 @@ // CancelZonalShift API operation for AWS ARC - Zonal Shift. // -// Cancel a zonal shift in Amazon Route 53 Application Recovery Controller that -// you've started for a resource in your AWS account in an AWS Region. +// Cancel a zonal shift in Amazon Route 53 Application Recovery Controller. +// To cancel the zonal shift, specify the zonal shift ID. +// +// A zonal shift can be one that you've started for a resource in your Amazon +// Web Services account in an Amazon Web Services Region, or it can be a zonal +// shift started by a practice run with zonal autoshift. // // 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 @@ -81,7 +85,8 @@ // The request was denied due to request throttling. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // - AccessDeniedException // You do not have sufficient access to perform this action. @@ -108,6 +113,210 @@ return out, req.Send() } +const opCreatePracticeRunConfiguration = "CreatePracticeRunConfiguration" + +// CreatePracticeRunConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreatePracticeRunConfiguration 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 CreatePracticeRunConfiguration for more information on using the CreatePracticeRunConfiguration +// 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 CreatePracticeRunConfigurationRequest method. +// req, resp := client.CreatePracticeRunConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/CreatePracticeRunConfiguration +func (c *ARCZonalShift) CreatePracticeRunConfigurationRequest(input *CreatePracticeRunConfigurationInput) (req *request.Request, output *CreatePracticeRunConfigurationOutput) { + op := &request.Operation{ + Name: opCreatePracticeRunConfiguration, + HTTPMethod: "POST", + HTTPPath: "/configuration", + } + + if input == nil { + input = &CreatePracticeRunConfigurationInput{} + } + + output = &CreatePracticeRunConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePracticeRunConfiguration API operation for AWS ARC - Zonal Shift. +// +// A practice run configuration for zonal autoshift is required when you enable +// zonal autoshift. A practice run configuration includes specifications for +// blocked dates and blocked time windows, and for Amazon CloudWatch alarms +// that you create to use with practice runs. The alarms that you specify are +// an outcome alarm, to monitor application health during practice runs and, +// optionally, a blocking alarm, to block practice runs from starting. +// +// For more information, see Considerations when you configure zonal autoshift +// (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.considerations.html) +// in the Amazon Route 53 Application Recovery Controller Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS ARC - Zonal Shift's +// API operation CreatePracticeRunConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// There was an internal server error. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ResourceNotFoundException +// The input requested a resource that was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/CreatePracticeRunConfiguration +func (c *ARCZonalShift) CreatePracticeRunConfiguration(input *CreatePracticeRunConfigurationInput) (*CreatePracticeRunConfigurationOutput, error) { + req, out := c.CreatePracticeRunConfigurationRequest(input) + return out, req.Send() +} + +// CreatePracticeRunConfigurationWithContext is the same as CreatePracticeRunConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePracticeRunConfiguration 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 *ARCZonalShift) CreatePracticeRunConfigurationWithContext(ctx aws.Context, input *CreatePracticeRunConfigurationInput, opts ...request.Option) (*CreatePracticeRunConfigurationOutput, error) { + req, out := c.CreatePracticeRunConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeletePracticeRunConfiguration = "DeletePracticeRunConfiguration" + +// DeletePracticeRunConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeletePracticeRunConfiguration 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 DeletePracticeRunConfiguration for more information on using the DeletePracticeRunConfiguration +// 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 DeletePracticeRunConfigurationRequest method. +// req, resp := client.DeletePracticeRunConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/DeletePracticeRunConfiguration +func (c *ARCZonalShift) DeletePracticeRunConfigurationRequest(input *DeletePracticeRunConfigurationInput) (req *request.Request, output *DeletePracticeRunConfigurationOutput) { + op := &request.Operation{ + Name: opDeletePracticeRunConfiguration, + HTTPMethod: "DELETE", + HTTPPath: "/configuration/{resourceIdentifier}", + } + + if input == nil { + input = &DeletePracticeRunConfigurationInput{} + } + + output = &DeletePracticeRunConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeletePracticeRunConfiguration API operation for AWS ARC - Zonal Shift. +// +// Deletes the practice run configuration for a resource. Before you can delete +// a practice run configuration for a resource., you must disable zonal autoshift +// for the resource. Practice runs must be configured for zonal autoshift to +// be enabled. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS ARC - Zonal Shift's +// API operation DeletePracticeRunConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// There was an internal server error. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ResourceNotFoundException +// The input requested a resource that was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/DeletePracticeRunConfiguration +func (c *ARCZonalShift) DeletePracticeRunConfiguration(input *DeletePracticeRunConfigurationInput) (*DeletePracticeRunConfigurationOutput, error) { + req, out := c.DeletePracticeRunConfigurationRequest(input) + return out, req.Send() +} + +// DeletePracticeRunConfigurationWithContext is the same as DeletePracticeRunConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeletePracticeRunConfiguration 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 *ARCZonalShift) DeletePracticeRunConfigurationWithContext(ctx aws.Context, input *DeletePracticeRunConfigurationInput, opts ...request.Option) (*DeletePracticeRunConfigurationOutput, error) { + req, out := c.DeletePracticeRunConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetManagedResource = "GetManagedResource" // GetManagedResourceRequest generates a "aws/request.Request" representing the @@ -152,12 +361,14 @@ // GetManagedResource API operation for AWS ARC - Zonal Shift. // // Get information about a resource that's been registered for zonal shifts -// with Amazon Route 53 Application Recovery Controller in this AWS Region. -// Resources that are registered for zonal shifts are managed resources in Route -// 53 ARC. -// -// At this time, you can only start a zonal shift for Network Load Balancers -// and Application Load Balancers with cross-zone load balancing turned off. +// with Amazon Route 53 Application Recovery Controller in this Amazon Web Services +// Region. Resources that are registered for zonal shifts are managed resources +// in Route 53 ARC. You can start zonal shifts and configure zonal autoshift +// for managed resources. +// +// At this time, you can only start a zonal shift or configure zonal autoshift +// for Network Load Balancers and Application Load Balancers with cross-zone +// load balancing turned off. // // 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 @@ -178,7 +389,8 @@ // The request was denied due to request throttling. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // - AccessDeniedException // You do not have sufficient access to perform this action. @@ -205,6 +417,152 @@ return out, req.Send() } +const opListAutoshifts = "ListAutoshifts" + +// ListAutoshiftsRequest generates a "aws/request.Request" representing the +// client's request for the ListAutoshifts 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 ListAutoshifts for more information on using the ListAutoshifts +// 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 ListAutoshiftsRequest method. +// req, resp := client.ListAutoshiftsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/ListAutoshifts +func (c *ARCZonalShift) ListAutoshiftsRequest(input *ListAutoshiftsInput) (req *request.Request, output *ListAutoshiftsOutput) { + op := &request.Operation{ + Name: opListAutoshifts, + HTTPMethod: "GET", + HTTPPath: "/autoshifts", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAutoshiftsInput{} + } + + output = &ListAutoshiftsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAutoshifts API operation for AWS ARC - Zonal Shift. +// +// Returns the active autoshifts for a specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS ARC - Zonal Shift's +// API operation ListAutoshifts for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// There was an internal server error. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/ListAutoshifts +func (c *ARCZonalShift) ListAutoshifts(input *ListAutoshiftsInput) (*ListAutoshiftsOutput, error) { + req, out := c.ListAutoshiftsRequest(input) + return out, req.Send() +} + +// ListAutoshiftsWithContext is the same as ListAutoshifts with the addition of +// the ability to pass a context and additional request options. +// +// See ListAutoshifts 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 *ARCZonalShift) ListAutoshiftsWithContext(ctx aws.Context, input *ListAutoshiftsInput, opts ...request.Option) (*ListAutoshiftsOutput, error) { + req, out := c.ListAutoshiftsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAutoshiftsPages iterates over the pages of a ListAutoshifts operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAutoshifts 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 ListAutoshifts operation. +// pageNum := 0 +// err := client.ListAutoshiftsPages(params, +// func(page *arczonalshift.ListAutoshiftsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ARCZonalShift) ListAutoshiftsPages(input *ListAutoshiftsInput, fn func(*ListAutoshiftsOutput, bool) bool) error { + return c.ListAutoshiftsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAutoshiftsPagesWithContext same as ListAutoshiftsPages 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 *ARCZonalShift) ListAutoshiftsPagesWithContext(ctx aws.Context, input *ListAutoshiftsInput, fn func(*ListAutoshiftsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAutoshiftsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAutoshiftsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAutoshiftsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListManagedResources = "ListManagedResources" // ListManagedResourcesRequest generates a "aws/request.Request" representing the @@ -254,11 +612,12 @@ // ListManagedResources API operation for AWS ARC - Zonal Shift. // -// Lists all the resources in your AWS account in this AWS Region that are managed -// for zonal shifts in Amazon Route 53 Application Recovery Controller, and -// information about them. The information includes their Amazon Resource Names -// (ARNs), the Availability Zones the resources are deployed in, and the resource -// name. +// Lists all the resources in your Amazon Web Services account in this Amazon +// Web Services Region that are managed for zonal shifts in Amazon Route 53 +// Application Recovery Controller, and information about them. The information +// includes the zonal autoshift status for the resource, as well as the Amazon +// Resource Name (ARN), the Availability Zones that each resource is deployed +// in, and the resource 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 @@ -276,7 +635,8 @@ // The request was denied due to request throttling. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // - AccessDeniedException // You do not have sufficient access to perform this action. @@ -403,8 +763,14 @@ // ListZonalShifts API operation for AWS ARC - Zonal Shift. // -// Lists all the active zonal shifts in Amazon Route 53 Application Recovery -// Controller in your AWS account in this AWS Region. +// Lists all active and completed zonal shifts in Amazon Route 53 Application +// Recovery Controller in your Amazon Web Services account in this Amazon Web +// Services Region. ListZonalShifts returns customer-started zonal shifts, as +// well as practice run zonal shifts that Route 53 ARC started on your behalf +// for zonal autoshift. +// +// The ListZonalShifts operation does not list autoshifts. For more information +// about listing autoshifts, see ">ListAutoshifts (https://docs.aws.amazon.com/arc-zonal-shift/latest/api/API_ListAutoshifts.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 @@ -422,7 +788,8 @@ // The request was denied due to request throttling. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // - AccessDeniedException // You do not have sufficient access to perform this action. @@ -544,11 +911,12 @@ // StartZonalShift API operation for AWS ARC - Zonal Shift. // // You start a zonal shift to temporarily move load balancer traffic away from -// an Availability Zone in a AWS Region, to help your application recover immediately, -// for example, from a developer's bad code deployment or from an AWS infrastructure -// failure in a single Availability Zone. You can start a zonal shift in Route -// 53 ARC only for managed resources in your account in an AWS Region. Resources -// are automatically registered with Route 53 ARC by AWS services. +// an Availability Zone in an Amazon Web Services Region, to help your application +// recover immediately, for example, from a developer's bad code deployment +// or from an Amazon Web Services infrastructure failure in a single Availability +// Zone. You can start a zonal shift in Route 53 ARC only for managed resources +// in your Amazon Web Services account in an Amazon Web Services Region. Resources +// are automatically registered with Route 53 ARC by Amazon Web Services services. // // At this time, you can only start a zonal shift for Network Load Balancers // and Application Load Balancers with cross-zone load balancing turned off. @@ -584,7 +952,8 @@ // The request was denied due to request throttling. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // - AccessDeniedException // You do not have sufficient access to perform this action. @@ -611,6 +980,204 @@ return out, req.Send() } +const opUpdatePracticeRunConfiguration = "UpdatePracticeRunConfiguration" + +// UpdatePracticeRunConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePracticeRunConfiguration 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 UpdatePracticeRunConfiguration for more information on using the UpdatePracticeRunConfiguration +// 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 UpdatePracticeRunConfigurationRequest method. +// req, resp := client.UpdatePracticeRunConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/UpdatePracticeRunConfiguration +func (c *ARCZonalShift) UpdatePracticeRunConfigurationRequest(input *UpdatePracticeRunConfigurationInput) (req *request.Request, output *UpdatePracticeRunConfigurationOutput) { + op := &request.Operation{ + Name: opUpdatePracticeRunConfiguration, + HTTPMethod: "PATCH", + HTTPPath: "/configuration/{resourceIdentifier}", + } + + if input == nil { + input = &UpdatePracticeRunConfigurationInput{} + } + + output = &UpdatePracticeRunConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePracticeRunConfiguration API operation for AWS ARC - Zonal Shift. +// +// Update a practice run configuration to change one or more of the following: +// add, change, or remove the blocking alarm; change the outcome alarm; or add, +// change, or remove blocking dates or time windows. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS ARC - Zonal Shift's +// API operation UpdatePracticeRunConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// There was an internal server error. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ResourceNotFoundException +// The input requested a resource that was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/UpdatePracticeRunConfiguration +func (c *ARCZonalShift) UpdatePracticeRunConfiguration(input *UpdatePracticeRunConfigurationInput) (*UpdatePracticeRunConfigurationOutput, error) { + req, out := c.UpdatePracticeRunConfigurationRequest(input) + return out, req.Send() +} + +// UpdatePracticeRunConfigurationWithContext is the same as UpdatePracticeRunConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePracticeRunConfiguration 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 *ARCZonalShift) UpdatePracticeRunConfigurationWithContext(ctx aws.Context, input *UpdatePracticeRunConfigurationInput, opts ...request.Option) (*UpdatePracticeRunConfigurationOutput, error) { + req, out := c.UpdatePracticeRunConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateZonalAutoshiftConfiguration = "UpdateZonalAutoshiftConfiguration" + +// UpdateZonalAutoshiftConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateZonalAutoshiftConfiguration 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 UpdateZonalAutoshiftConfiguration for more information on using the UpdateZonalAutoshiftConfiguration +// 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 UpdateZonalAutoshiftConfigurationRequest method. +// req, resp := client.UpdateZonalAutoshiftConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/UpdateZonalAutoshiftConfiguration +func (c *ARCZonalShift) UpdateZonalAutoshiftConfigurationRequest(input *UpdateZonalAutoshiftConfigurationInput) (req *request.Request, output *UpdateZonalAutoshiftConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateZonalAutoshiftConfiguration, + HTTPMethod: "PUT", + HTTPPath: "/managedresources/{resourceIdentifier}", + } + + if input == nil { + input = &UpdateZonalAutoshiftConfigurationInput{} + } + + output = &UpdateZonalAutoshiftConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateZonalAutoshiftConfiguration API operation for AWS ARC - Zonal Shift. +// +// You can update the zonal autoshift status for a resource, to enable or disable +// zonal autoshift. When zonal autoshift is ENABLED, Amazon Web Services shifts +// away resource traffic from an Availability Zone, on your behalf, when Amazon +// Web Services determines that there's an issue in the Availability Zone that +// could potentially affect customers. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS ARC - Zonal Shift's +// API operation UpdateZonalAutoshiftConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// There was an internal server error. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ResourceNotFoundException +// The input requested a resource that was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/UpdateZonalAutoshiftConfiguration +func (c *ARCZonalShift) UpdateZonalAutoshiftConfiguration(input *UpdateZonalAutoshiftConfigurationInput) (*UpdateZonalAutoshiftConfigurationOutput, error) { + req, out := c.UpdateZonalAutoshiftConfigurationRequest(input) + return out, req.Send() +} + +// UpdateZonalAutoshiftConfigurationWithContext is the same as UpdateZonalAutoshiftConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateZonalAutoshiftConfiguration 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 *ARCZonalShift) UpdateZonalAutoshiftConfigurationWithContext(ctx aws.Context, input *UpdateZonalAutoshiftConfigurationInput, opts ...request.Option) (*UpdateZonalAutoshiftConfigurationOutput, error) { + req, out := c.UpdateZonalAutoshiftConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateZonalShift = "UpdateZonalShift" // UpdateZonalShiftRequest generates a "aws/request.Request" representing the @@ -655,8 +1222,8 @@ // UpdateZonalShift API operation for AWS ARC - Zonal Shift. // // Update an active zonal shift in Amazon Route 53 Application Recovery Controller -// in your AWS account. You can update a zonal shift to set a new expiration, -// or edit or replace the comment for the zonal shift. +// in your Amazon Web Services account. You can update a zonal shift to set +// a new expiration, or edit or replace the comment for the zonal shift. // // 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 @@ -681,7 +1248,8 @@ // The request was denied due to request throttling. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // - AccessDeniedException // You do not have sufficient access to perform this action. @@ -772,6 +1340,169 @@ return s.RespMetadata.RequestID } +// A complex structure that lists an autoshift that is currently active for +// a managed resource and information about the autoshift. +// +// For more information, see How zonal autoshift and practice runs work (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.how-it-works.html) +// in the Amazon Route 53 Application Recovery Controller Developer Guide. +type AutoshiftInResource struct { + _ struct{} `type:"structure"` + + // The appliedStatus field specifies which application traffic shift is in effect + // for a resource when there is more than one traffic shift active. There can + // be more than one application traffic shift in progress at the same time - + // that is, practice run zonal shifts, customer-started zonal shifts, or an + // autoshift. The appliedStatus field for an autoshift for a resource can have + // one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that + // is currently in effect for the resource has an applied status set to APPLIED. + // + // The overall principle for precedence is that zonal shifts that you start + // as a customer take precedence autoshifts, which take precedence over practice + // runs. That is, customer-started zonal shifts > autoshifts > practice run + // zonal shifts. + // + // For more information, see How zonal autoshift and practice runs work (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.how-it-works.html) + // in the Amazon Route 53 Application Recovery Controller Developer Guide. + // + // AppliedStatus is a required field + AppliedStatus *string `locationName:"appliedStatus" type:"string" required:"true" enum:"AutoshiftAppliedStatus"` + + // The Availability Zone that traffic is shifted away from for a resource, when + // Amazon Web Services starts an autoshift. Until the autoshift ends, traffic + // for the resource is instead directed to other Availability Zones in the Amazon + // Web Services Region. An autoshift can end for a resource, for example, when + // Amazon Web Services ends the autoshift for the Availability Zone or when + // you disable zonal autoshift for the resource. + // + // AwayFrom is a required field + AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` + + // The time (UTC) when the autoshift started. + // + // StartTime is a required field + StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoshiftInResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoshiftInResource) GoString() string { + return s.String() +} + +// SetAppliedStatus sets the AppliedStatus field's value. +func (s *AutoshiftInResource) SetAppliedStatus(v string) *AutoshiftInResource { + s.AppliedStatus = &v + return s +} + +// SetAwayFrom sets the AwayFrom field's value. +func (s *AutoshiftInResource) SetAwayFrom(v string) *AutoshiftInResource { + s.AwayFrom = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *AutoshiftInResource) SetStartTime(v time.Time) *AutoshiftInResource { + s.StartTime = &v + return s +} + +// Information about an autoshift. Amazon Web Services starts an autoshift to +// temporarily move traffic for a resource away from an Availability Zone in +// an Amazon Web Services Region when Amazon Web Services determines that there's +// an issue in the Availability Zone that could potentially affect customers. +// You can configure zonal autoshift in Route 53 ARC for managed resources in +// your Amazon Web Services account in a Region. Supported Amazon Web Services +// resources are automatically registered with Route 53 ARC. +// +// Autoshifts are temporary. When the Availability Zone recovers, Amazon Web +// Services ends the autoshift, and traffic for the resource is no longer directed +// to the other Availability Zones in the Region. +// +// You can stop an autoshift for a resource by disabling zonal autoshift. +type AutoshiftSummary struct { + _ struct{} `type:"structure"` + + // The Availability Zone that traffic is shifted away from for a resource when + // Amazon Web Services starts an autoshift. Until the autoshift ends, traffic + // for the resource is instead directed to other Availability Zones in the Amazon + // Web Services Region. An autoshift can end for a resource, for example, when + // Amazon Web Services ends the autoshift for the Availability Zone or when + // you disable zonal autoshift for the resource. + // + // AwayFrom is a required field + AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` + + // The time (in UTC) when the autoshift ended. + // + // EndTime is a required field + EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"` + + // The time (in UTC) when the autoshift started. + // + // StartTime is a required field + StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` + + // The status for an autoshift. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AutoshiftExecutionStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoshiftSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoshiftSummary) GoString() string { + return s.String() +} + +// SetAwayFrom sets the AwayFrom field's value. +func (s *AutoshiftSummary) SetAwayFrom(v string) *AutoshiftSummary { + s.AwayFrom = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *AutoshiftSummary) SetEndTime(v time.Time) *AutoshiftSummary { + s.EndTime = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *AutoshiftSummary) SetStartTime(v time.Time) *AutoshiftSummary { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AutoshiftSummary) SetStatus(v string) *AutoshiftSummary { + s.Status = &v + return s +} + type CancelZonalShiftInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -827,7 +1558,7 @@ // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in - // the AWS Region. + // the Amazon Web Services Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` @@ -839,30 +1570,31 @@ // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` - // The expiry time (expiration time) for the zonal shift. A zonal shift is temporary - // and must be set to expire when you start the zonal shift. You can initially - // set a zonal shift to expire in a maximum of three days (72 hours). However, - // you can update a zonal shift to set a new expiration at any time. + // The expiry time (expiration time) for a customer-started zonal shift. A zonal + // shift is temporary and must be set to expire when you start the zonal shift. + // You can initially set a zonal shift to expire in a maximum of three days + // (72 hours). However, you can update a zonal shift to set a new expiration + // at any time. // // When you start a zonal shift, you specify how long you want it to be active, // which Route 53 ARC converts to an expiry time (expiration time). You can - // cancel a zonal shift, for example, if you're ready to restore traffic to - // the Availability Zone. Or you can update the zonal shift to specify another - // length of time to expire in. + // cancel a zonal shift when you're ready to restore traffic to the Availability + // Zone, or just wait for it to expire. Or you can update the zonal shift to + // specify another length of time to expire in. // // ExpiryTime is a required field ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp" required:"true"` - // The identifier for the resource to include in a zonal shift. The identifier + // The identifier for the resource to shift away traffic for. The identifier // is the Amazon Resource Name (ARN) for the resource. // - // At this time, you can only start a zonal shift for Network Load Balancers - // and Application Load Balancers with cross-zone load balancing turned off. + // At this time, supported resources are Network Load Balancers and Application + // Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` - // The time (UTC) when the zonal shift is started. + // The time (UTC) when the zonal shift starts. // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` @@ -871,7 +1603,7 @@ // // The Status for a zonal shift can have one of the following values: // - // * ACTIVE: The zonal shift is started and active. + // * ACTIVE: The zonal shift has been started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // @@ -1019,14 +1751,423 @@ return s.RespMetadata.RequestID } +// A control condition is an alarm that you specify for a practice run. When +// you configure practice runs with zonal autoshift for a resource, you specify +// Amazon CloudWatch alarms, which you create in CloudWatch to use with the +// practice run. The alarms that you specify are an outcome alarm, to monitor +// application health during practice runs and, optionally, a blocking alarm, +// to block practice runs from starting. +// +// Control condition alarms do not apply for autoshifts. +// +// For more information, see Considerations when you configure zonal autoshift +// (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.considerations.html) +// in the Amazon Route 53 Application Recovery Controller Developer Guide. +type ControlCondition struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the Amazon CloudWatch alarm that you specify + // as a control condition for a practice run. + // + // AlarmIdentifier is a required field + AlarmIdentifier *string `locationName:"alarmIdentifier" min:"8" type:"string" required:"true"` + + // The type of alarm specified for a practice run. The only valid value is CLOUDWATCH. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"ControlConditionType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ControlCondition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ControlCondition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ControlCondition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ControlCondition"} + if s.AlarmIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("AlarmIdentifier")) + } + if s.AlarmIdentifier != nil && len(*s.AlarmIdentifier) < 8 { + invalidParams.Add(request.NewErrParamMinLen("AlarmIdentifier", 8)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAlarmIdentifier sets the AlarmIdentifier field's value. +func (s *ControlCondition) SetAlarmIdentifier(v string) *ControlCondition { + s.AlarmIdentifier = &v + return s +} + +// SetType sets the Type field's value. +func (s *ControlCondition) SetType(v string) *ControlCondition { + s.Type = &v + return s +} + +type CreatePracticeRunConfigurationInput struct { + _ struct{} `type:"structure"` + + // Optionally, you can block Route 53 ARC from starting practice runs for a + // resource on specific calendar dates. + // + // The format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify + // dates, that dates and times for practice runs are in UTC. Separate multiple + // blocked dates with spaces. + // + // For example, if you have an application update scheduled to launch on May + // 1, 2024, and you don't want practice runs to shift traffic away at that time, + // you could set a blocked date for 2024-05-01. + BlockedDates []*string `locationName:"blockedDates" type:"list"` + + // Optionally, you can block Route 53 ARC from starting practice runs for specific + // windows of days and times. + // + // The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when + // you specify dates, that dates and times for practice runs are in UTC. Also, + // be aware of potential time adjustments that might be required for daylight + // saving time differences. Separate multiple blocked windows with spaces. + // + // For example, say you run business report summaries three days a week. For + // this scenario, you might set the following recurring days and times as blocked + // windows, for example: MON-20:30-21:30 WED-20:30-21:30 FRI-20:30-21:30. + BlockedWindows []*string `locationName:"blockedWindows" type:"list"` + + // An Amazon CloudWatch alarm that you can specify for zonal autoshift practice + // runs. This alarm blocks Route 53 ARC from starting practice run zonal shifts, + // and ends a practice run that's in progress, when the alarm is in an ALARM + // state. + BlockingAlarms []*ControlCondition `locationName:"blockingAlarms" min:"1" type:"list"` + + // The outcome alarm for practice runs is a required Amazon CloudWatch alarm + // that you specify that ends a practice run when the alarm is in an ALARM state. + // + // Configure the alarm to monitor the health of your application when traffic + // is shifted away from an Availability Zone during each weekly practice run. + // You should configure the alarm to go into an ALARM state if your application + // is impacted by the zonal shift, and you want to stop the zonal shift, to + // let traffic for the resource return to the Availability Zone. + // + // OutcomeAlarms is a required field + OutcomeAlarms []*ControlCondition `locationName:"outcomeAlarms" min:"1" type:"list" required:"true"` + + // The identifier of the resource to shift away traffic for when a practice + // run starts a zonal shift. The identifier is the Amazon Resource Name (ARN) + // for the resource. + // + // At this time, supported resources are Network Load Balancers and Application + // Load Balancers with cross-zone load balancing turned off. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" 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 CreatePracticeRunConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePracticeRunConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePracticeRunConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePracticeRunConfigurationInput"} + if s.BlockingAlarms != nil && len(s.BlockingAlarms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BlockingAlarms", 1)) + } + if s.OutcomeAlarms == nil { + invalidParams.Add(request.NewErrParamRequired("OutcomeAlarms")) + } + if s.OutcomeAlarms != nil && len(s.OutcomeAlarms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutcomeAlarms", 1)) + } + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 8)) + } + if s.BlockingAlarms != nil { + for i, v := range s.BlockingAlarms { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BlockingAlarms", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OutcomeAlarms != nil { + for i, v := range s.OutcomeAlarms { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutcomeAlarms", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBlockedDates sets the BlockedDates field's value. +func (s *CreatePracticeRunConfigurationInput) SetBlockedDates(v []*string) *CreatePracticeRunConfigurationInput { + s.BlockedDates = v + return s +} + +// SetBlockedWindows sets the BlockedWindows field's value. +func (s *CreatePracticeRunConfigurationInput) SetBlockedWindows(v []*string) *CreatePracticeRunConfigurationInput { + s.BlockedWindows = v + return s +} + +// SetBlockingAlarms sets the BlockingAlarms field's value. +func (s *CreatePracticeRunConfigurationInput) SetBlockingAlarms(v []*ControlCondition) *CreatePracticeRunConfigurationInput { + s.BlockingAlarms = v + return s +} + +// SetOutcomeAlarms sets the OutcomeAlarms field's value. +func (s *CreatePracticeRunConfigurationInput) SetOutcomeAlarms(v []*ControlCondition) *CreatePracticeRunConfigurationInput { + s.OutcomeAlarms = v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *CreatePracticeRunConfigurationInput) SetResourceIdentifier(v string) *CreatePracticeRunConfigurationInput { + s.ResourceIdentifier = &v + return s +} + +type CreatePracticeRunConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that you configured the practice + // run for. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"8" type:"string" required:"true"` + + // The name of the resource that you configured the practice run for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A practice run configuration for a resource. Configurations include the outcome + // alarm that you specify for practice runs, and, optionally, a blocking alarm + // and blocking dates and windows. + // + // PracticeRunConfiguration is a required field + PracticeRunConfiguration *PracticeRunConfiguration `locationName:"practiceRunConfiguration" type:"structure" required:"true"` + + // The status for zonal autoshift for a resource. When you specify the autoshift + // status as ENABLED, Amazon Web Services shifts traffic away from shifts away + // application resource traffic from an Availability Zone, on your behalf, when + // Amazon Web Services determines that there's an issue in the Availability + // Zone that could potentially affect customers. + // + // When you enable zonal autoshift, you must also configure practice runs for + // the resource. + // + // ZonalAutoshiftStatus is a required field + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" required:"true" enum:"ZonalAutoshiftStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePracticeRunConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePracticeRunConfigurationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreatePracticeRunConfigurationOutput) SetArn(v string) *CreatePracticeRunConfigurationOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreatePracticeRunConfigurationOutput) SetName(v string) *CreatePracticeRunConfigurationOutput { + s.Name = &v + return s +} + +// SetPracticeRunConfiguration sets the PracticeRunConfiguration field's value. +func (s *CreatePracticeRunConfigurationOutput) SetPracticeRunConfiguration(v *PracticeRunConfiguration) *CreatePracticeRunConfigurationOutput { + s.PracticeRunConfiguration = v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *CreatePracticeRunConfigurationOutput) SetZonalAutoshiftStatus(v string) *CreatePracticeRunConfigurationOutput { + s.ZonalAutoshiftStatus = &v + return s +} + +type DeletePracticeRunConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier for the resource that you want to delete the practice run + // configuration for. The identifier is the Amazon Resource Name (ARN) for the + // resource. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"resourceIdentifier" min:"8" 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 DeletePracticeRunConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePracticeRunConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeletePracticeRunConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeletePracticeRunConfigurationInput"} + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 8)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *DeletePracticeRunConfigurationInput) SetResourceIdentifier(v string) *DeletePracticeRunConfigurationInput { + s.ResourceIdentifier = &v + return s +} + +type DeletePracticeRunConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that you deleted the practice + // run for. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"8" type:"string" required:"true"` + + // The name of the resource that you deleted the practice run for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The status of zonal autoshift for the resource. + // + // ZonalAutoshiftStatus is a required field + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" required:"true" enum:"ZonalAutoshiftStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePracticeRunConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePracticeRunConfigurationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeletePracticeRunConfigurationOutput) SetArn(v string) *DeletePracticeRunConfigurationOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeletePracticeRunConfigurationOutput) SetName(v string) *DeletePracticeRunConfigurationOutput { + s.Name = &v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *DeletePracticeRunConfigurationOutput) SetZonalAutoshiftStatus(v string) *DeletePracticeRunConfigurationOutput { + s.ZonalAutoshiftStatus = &v + return s +} + type GetManagedResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The identifier for the resource to include in a zonal shift. The identifier + // The identifier for the resource to shift away traffic for. The identifier // is the Amazon Resource Name (ARN) for the resource. // - // At this time, you can only start a zonal shift for Network Load Balancers - // and Application Load Balancers with cross-zone load balancing turned off. + // At this time, supported resources are Network Load Balancers and Application + // Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `location:"uri" locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` @@ -1085,9 +2226,22 @@ // The Amazon Resource Name (ARN) for the resource. Arn *string `locationName:"arn" min:"8" type:"string"` + // An array of the autoshifts that are active for the resource. + Autoshifts []*AutoshiftInResource `locationName:"autoshifts" type:"list"` + // The name of the resource. Name *string `locationName:"name" min:"1" type:"string"` + // The practice run configuration for zonal autoshift that's associated with + // the resource. + PracticeRunConfiguration *PracticeRunConfiguration `locationName:"practiceRunConfiguration" type:"structure"` + + // The status for zonal autoshift for a resource. When the autoshift status + // is ENABLED, Amazon Web Services shifts traffic for a resource away from an + // Availability Zone, on your behalf, when Amazon Web Services determines that + // there's an issue in the Availability Zone that could potentially affect customers. + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" enum:"ZonalAutoshiftStatus"` + // The zonal shifts that are currently active for a resource. // // ZonalShifts is a required field @@ -1124,12 +2278,30 @@ return s } +// SetAutoshifts sets the Autoshifts field's value. +func (s *GetManagedResourceOutput) SetAutoshifts(v []*AutoshiftInResource) *GetManagedResourceOutput { + s.Autoshifts = v + return s +} + // SetName sets the Name field's value. func (s *GetManagedResourceOutput) SetName(v string) *GetManagedResourceOutput { s.Name = &v return s } +// SetPracticeRunConfiguration sets the PracticeRunConfiguration field's value. +func (s *GetManagedResourceOutput) SetPracticeRunConfiguration(v *PracticeRunConfiguration) *GetManagedResourceOutput { + s.PracticeRunConfiguration = v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *GetManagedResourceOutput) SetZonalAutoshiftStatus(v string) *GetManagedResourceOutput { + s.ZonalAutoshiftStatus = &v + return s +} + // SetZonalShifts sets the ZonalShifts field's value. func (s *GetManagedResourceOutput) SetZonalShifts(v []*ZonalShiftInResource) *GetManagedResourceOutput { s.ZonalShifts = v @@ -1200,6 +2372,116 @@ return s.RespMetadata.RequestID } +type ListAutoshiftsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The number of objects that you want to return with this call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The status of the autoshift. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"AutoshiftExecutionStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAutoshiftsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAutoshiftsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAutoshiftsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAutoshiftsInput"} + 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 *ListAutoshiftsInput) SetMaxResults(v int64) *ListAutoshiftsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAutoshiftsInput) SetNextToken(v string) *ListAutoshiftsInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListAutoshiftsInput) SetStatus(v string) *ListAutoshiftsInput { + s.Status = &v + return s +} + +type ListAutoshiftsOutput struct { + _ struct{} `type:"structure"` + + // The items in the response list. + Items []*AutoshiftSummary `locationName:"items" type:"list"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + 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 ListAutoshiftsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAutoshiftsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListAutoshiftsOutput) SetItems(v []*AutoshiftSummary) *ListAutoshiftsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAutoshiftsOutput) SetNextToken(v string) *ListAutoshiftsOutput { + s.NextToken = &v + return s +} + type ListManagedResourcesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -1316,11 +2598,15 @@ // of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // The identifier for the resource that you want to list zonal shifts for. The + // identifier is the Amazon Resource Name (ARN) for the resource. + ResourceIdentifier *string `location:"querystring" locationName:"resourceIdentifier" min:"8" type:"string"` + // A status for a zonal shift. // // The Status for a zonal shift can have one of the following values: // - // * ACTIVE: The zonal shift is started and active. + // * ACTIVE: The zonal shift has been started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // @@ -1352,6 +2638,9 @@ if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 8)) + } if invalidParams.Len() > 0 { return invalidParams @@ -1371,6 +2660,12 @@ return s } +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *ListZonalShiftsInput) SetResourceIdentifier(v string) *ListZonalShiftsInput { + s.ResourceIdentifier = &v + return s +} + // SetStatus sets the Status field's value. func (s *ListZonalShiftsInput) SetStatus(v string) *ListZonalShiftsInput { s.Status = &v @@ -1421,21 +2716,31 @@ return s } -// A complex structure for a managed resource in an account. +// A complex structure for a managed resource in an Amazon Web Services account +// with information about zonal shifts and autoshifts. // -// A managed resource is a Network Load Balancer or Application Load Balancer -// that has been registered with Route 53 ARC by Elastic Load Balancing. You -// can start a zonal shift in Route 53 ARC for a managed resource to temporarily -// move traffic for the resource away from an Availability Zone in an AWS Region. +// A managed resource is a load balancer that has been registered with Route +// 53 ARC by Elastic Load Balancing. You can start a zonal shift in Route 53 +// ARC for a managed resource to temporarily move traffic for the resource away +// from an Availability Zone in an Amazon Web Services Region. You can also +// configure zonal autoshift for a managed resource. // -// At this time, you can only start a zonal shift for Network Load Balancers -// and Application Load Balancers with cross-zone load balancing turned off. +// At this time, managed resources are Network Load Balancers and Application +// Load Balancers with cross-zone load balancing turned off. type ManagedResourceSummary struct { _ struct{} `type:"structure"` + // A collection of key-value pairs that indicate whether resources are active + // in Availability Zones or not. The key name is the Availability Zone where + // the resource is deployed. The value is 1 or 0. + AppliedWeights map[string]*float64 `locationName:"appliedWeights" type:"map"` + // The Amazon Resource Name (ARN) for the managed resource. Arn *string `locationName:"arn" min:"8" type:"string"` + // An array of the autoshifts that have been completed for a resource. + Autoshifts []*AutoshiftInResource `locationName:"autoshifts" type:"list"` + // The Availability Zones that a resource is deployed in. // // AvailabilityZones is a required field @@ -1443,6 +2748,23 @@ // The name of the managed resource. Name *string `locationName:"name" min:"1" type:"string"` + + // This status tracks whether a practice run configuration exists for a resource. + // When you configure a practice run for a resource so that a practice run configuration + // exists, Route 53 ARC sets this value to ENABLED. If a you have not configured + // a practice run for the resource, or delete a practice run configuration, + // Route 53 ARC sets the value to DISABLED. + // + // Route 53 ARC updates this status; you can't set a practice run status to + // ENABLED or DISABLED. + PracticeRunStatus *string `locationName:"practiceRunStatus" type:"string" enum:"ZonalAutoshiftStatus"` + + // The status of autoshift for a resource. When you configure zonal autoshift + // for a resource, you can set the value of the status to ENABLED or DISABLED. + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" enum:"ZonalAutoshiftStatus"` + + // An array of the zonal shifts for a resource. + ZonalShifts []*ZonalShiftInResource `locationName:"zonalShifts" type:"list"` } // String returns the string representation. @@ -1463,12 +2785,24 @@ return s.String() } +// SetAppliedWeights sets the AppliedWeights field's value. +func (s *ManagedResourceSummary) SetAppliedWeights(v map[string]*float64) *ManagedResourceSummary { + s.AppliedWeights = v + return s +} + // SetArn sets the Arn field's value. func (s *ManagedResourceSummary) SetArn(v string) *ManagedResourceSummary { s.Arn = &v return s } +// SetAutoshifts sets the Autoshifts field's value. +func (s *ManagedResourceSummary) SetAutoshifts(v []*AutoshiftInResource) *ManagedResourceSummary { + s.Autoshifts = v + return s +} + // SetAvailabilityZones sets the AvailabilityZones field's value. func (s *ManagedResourceSummary) SetAvailabilityZones(v []*string) *ManagedResourceSummary { s.AvailabilityZones = v @@ -1481,6 +2815,100 @@ return s } +// SetPracticeRunStatus sets the PracticeRunStatus field's value. +func (s *ManagedResourceSummary) SetPracticeRunStatus(v string) *ManagedResourceSummary { + s.PracticeRunStatus = &v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *ManagedResourceSummary) SetZonalAutoshiftStatus(v string) *ManagedResourceSummary { + s.ZonalAutoshiftStatus = &v + return s +} + +// SetZonalShifts sets the ZonalShifts field's value. +func (s *ManagedResourceSummary) SetZonalShifts(v []*ZonalShiftInResource) *ManagedResourceSummary { + s.ZonalShifts = v + return s +} + +// A practice run configuration for a resource includes the Amazon CloudWatch +// alarms that you've specified for a practice run, as well as any blocked dates +// or blocked windows for the practice run. +// +// You can update or delete a practice run configuration. Before you delete +// a practice run configuration, you must disable zonal autoshift for the resource. +// A practice run configuration is required when zonal autoshift is enabled. +type PracticeRunConfiguration struct { + _ struct{} `type:"structure"` + + // An array of one or more dates that you can specify when Amazon Web Services + // does not start practice runs for a resource. + // + // Specify blocked dates, in UTC, in the format YYYY-MM-DD, separated by spaces. + BlockedDates []*string `locationName:"blockedDates" type:"list"` + + // An array of one or more windows of days and times that you can block Route + // 53 ARC from starting practice runs for a resource. + // + // Specify the blocked windows in UTC, using the format DAY:HH:MM-DAY:HH:MM, + // separated by spaces. For example, MON:18:30-MON:19:30 TUE:18:30-TUE:19:30. + BlockedWindows []*string `locationName:"blockedWindows" type:"list"` + + // The blocking alarm for practice runs is an optional alarm that you can specify + // that blocks practice runs when the alarm is in an ALARM state. + BlockingAlarms []*ControlCondition `locationName:"blockingAlarms" min:"1" type:"list"` + + // The outcome alarm for practice runs is an alarm that you specify that ends + // a practice run when the alarm is in an ALARM state. + // + // OutcomeAlarms is a required field + OutcomeAlarms []*ControlCondition `locationName:"outcomeAlarms" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PracticeRunConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PracticeRunConfiguration) GoString() string { + return s.String() +} + +// SetBlockedDates sets the BlockedDates field's value. +func (s *PracticeRunConfiguration) SetBlockedDates(v []*string) *PracticeRunConfiguration { + s.BlockedDates = v + return s +} + +// SetBlockedWindows sets the BlockedWindows field's value. +func (s *PracticeRunConfiguration) SetBlockedWindows(v []*string) *PracticeRunConfiguration { + s.BlockedWindows = v + return s +} + +// SetBlockingAlarms sets the BlockingAlarms field's value. +func (s *PracticeRunConfiguration) SetBlockingAlarms(v []*ControlCondition) *PracticeRunConfiguration { + s.BlockingAlarms = v + return s +} + +// SetOutcomeAlarms sets the OutcomeAlarms field's value. +func (s *PracticeRunConfiguration) SetOutcomeAlarms(v []*ControlCondition) *PracticeRunConfiguration { + s.OutcomeAlarms = v + return s +} + // The input requested a resource that was not found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -1551,7 +2979,7 @@ // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in - // the AWS Region. + // the Amazon Web Services Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` @@ -1576,20 +3004,21 @@ // To set a length of time for a zonal shift to be active, specify a whole number, // and then one of the following, with no space: // - //
  • A lowercase letter m: To specify that the value is - // in minutes.

  • A lowercase letter h: To specify - // that the value is in hours.

For example: 20h - // means the zonal shift expires in 20 hours. 120m means the - // zonal shift expires in 120 minutes (2 hours).

+ // * A lowercase letter m: To specify that the value is in minutes. + // + // * A lowercase letter h: To specify that the value is in hours. + // + // For example: 20h means the zonal shift expires in 20 hours. 120m means the + // zonal shift expires in 120 minutes (2 hours). // // ExpiresIn is a required field ExpiresIn *string `locationName:"expiresIn" min:"2" type:"string" required:"true"` - // The identifier for the resource to include in a zonal shift. The identifier + // The identifier for the resource to shift away traffic for. The identifier // is the Amazon Resource Name (ARN) for the resource. // - // At this time, you can only start a zonal shift for Network Load Balancers - // and Application Load Balancers with cross-zone load balancing turned off. + // At this time, supported resources are Network Load Balancers and Application + // Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` @@ -1671,7 +3100,7 @@ // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in - // the AWS Region. + // the Amazon Web Services Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` @@ -1683,30 +3112,31 @@ // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` - // The expiry time (expiration time) for the zonal shift. A zonal shift is temporary - // and must be set to expire when you start the zonal shift. You can initially - // set a zonal shift to expire in a maximum of three days (72 hours). However, - // you can update a zonal shift to set a new expiration at any time. + // The expiry time (expiration time) for a customer-started zonal shift. A zonal + // shift is temporary and must be set to expire when you start the zonal shift. + // You can initially set a zonal shift to expire in a maximum of three days + // (72 hours). However, you can update a zonal shift to set a new expiration + // at any time. // // When you start a zonal shift, you specify how long you want it to be active, // which Route 53 ARC converts to an expiry time (expiration time). You can - // cancel a zonal shift, for example, if you're ready to restore traffic to - // the Availability Zone. Or you can update the zonal shift to specify another - // length of time to expire in. + // cancel a zonal shift when you're ready to restore traffic to the Availability + // Zone, or just wait for it to expire. Or you can update the zonal shift to + // specify another length of time to expire in. // // ExpiryTime is a required field ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp" required:"true"` - // The identifier for the resource to include in a zonal shift. The identifier + // The identifier for the resource to shift away traffic for. The identifier // is the Amazon Resource Name (ARN) for the resource. // - // At this time, you can only start a zonal shift for Network Load Balancers - // and Application Load Balancers with cross-zone load balancing turned off. + // At this time, supported resources are Network Load Balancers and Application + // Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` - // The time (UTC) when the zonal shift is started. + // The time (UTC) when the zonal shift starts. // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` @@ -1715,7 +3145,7 @@ // // The Status for a zonal shift can have one of the following values: // - // * ACTIVE: The zonal shift is started and active. + // * ACTIVE: The zonal shift has been started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // @@ -1854,6 +3284,320 @@ return s.RespMetadata.RequestID } +type UpdatePracticeRunConfigurationInput struct { + _ struct{} `type:"structure"` + + // Add, change, or remove blocked dates for a practice run in zonal autoshift. + // + // Optionally, you can block practice runs for specific calendar dates. The + // format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify dates, + // that dates and times for practice runs are in UTC. Separate multiple blocked + // dates with spaces. + // + // For example, if you have an application update scheduled to launch on May + // 1, 2024, and you don't want practice runs to shift traffic away at that time, + // you could set a blocked date for 2024-05-01. + BlockedDates []*string `locationName:"blockedDates" type:"list"` + + // Add, change, or remove windows of days and times for when you can, optionally, + // block Route 53 ARC from starting a practice run for a resource. + // + // The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when + // you specify dates, that dates and times for practice runs are in UTC. Also, + // be aware of potential time adjustments that might be required for daylight + // saving time differences. Separate multiple blocked windows with spaces. + // + // For example, say you run business report summaries three days a week. For + // this scenario, you might set the following recurring days and times as blocked + // windows, for example: MON-20:30-21:30 WED-20:30-21:30 FRI-20:30-21:30. + BlockedWindows []*string `locationName:"blockedWindows" type:"list"` + + // Add, change, or remove the Amazon CloudWatch alarm that you optionally specify + // as the blocking alarm for practice runs. + BlockingAlarms []*ControlCondition `locationName:"blockingAlarms" min:"1" type:"list"` + + // Specify a new the Amazon CloudWatch alarm as the outcome alarm for practice + // runs. + OutcomeAlarms []*ControlCondition `locationName:"outcomeAlarms" min:"1" type:"list"` + + // The identifier for the resource that you want to update the practice run + // configuration for. The identifier is the Amazon Resource Name (ARN) for the + // resource. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"resourceIdentifier" min:"8" 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 UpdatePracticeRunConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePracticeRunConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePracticeRunConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePracticeRunConfigurationInput"} + if s.BlockingAlarms != nil && len(s.BlockingAlarms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BlockingAlarms", 1)) + } + if s.OutcomeAlarms != nil && len(s.OutcomeAlarms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutcomeAlarms", 1)) + } + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 8)) + } + if s.BlockingAlarms != nil { + for i, v := range s.BlockingAlarms { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BlockingAlarms", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OutcomeAlarms != nil { + for i, v := range s.OutcomeAlarms { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutcomeAlarms", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBlockedDates sets the BlockedDates field's value. +func (s *UpdatePracticeRunConfigurationInput) SetBlockedDates(v []*string) *UpdatePracticeRunConfigurationInput { + s.BlockedDates = v + return s +} + +// SetBlockedWindows sets the BlockedWindows field's value. +func (s *UpdatePracticeRunConfigurationInput) SetBlockedWindows(v []*string) *UpdatePracticeRunConfigurationInput { + s.BlockedWindows = v + return s +} + +// SetBlockingAlarms sets the BlockingAlarms field's value. +func (s *UpdatePracticeRunConfigurationInput) SetBlockingAlarms(v []*ControlCondition) *UpdatePracticeRunConfigurationInput { + s.BlockingAlarms = v + return s +} + +// SetOutcomeAlarms sets the OutcomeAlarms field's value. +func (s *UpdatePracticeRunConfigurationInput) SetOutcomeAlarms(v []*ControlCondition) *UpdatePracticeRunConfigurationInput { + s.OutcomeAlarms = v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *UpdatePracticeRunConfigurationInput) SetResourceIdentifier(v string) *UpdatePracticeRunConfigurationInput { + s.ResourceIdentifier = &v + return s +} + +type UpdatePracticeRunConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that you updated the practice + // run for. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"8" type:"string" required:"true"` + + // The name of the resource that you updated the practice run for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The practice run configuration that was updated. + // + // PracticeRunConfiguration is a required field + PracticeRunConfiguration *PracticeRunConfiguration `locationName:"practiceRunConfiguration" type:"structure" required:"true"` + + // The zonal autoshift status for the resource that you updated the practice + // run for. + // + // ZonalAutoshiftStatus is a required field + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" required:"true" enum:"ZonalAutoshiftStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePracticeRunConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePracticeRunConfigurationOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdatePracticeRunConfigurationOutput) SetArn(v string) *UpdatePracticeRunConfigurationOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdatePracticeRunConfigurationOutput) SetName(v string) *UpdatePracticeRunConfigurationOutput { + s.Name = &v + return s +} + +// SetPracticeRunConfiguration sets the PracticeRunConfiguration field's value. +func (s *UpdatePracticeRunConfigurationOutput) SetPracticeRunConfiguration(v *PracticeRunConfiguration) *UpdatePracticeRunConfigurationOutput { + s.PracticeRunConfiguration = v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *UpdatePracticeRunConfigurationOutput) SetZonalAutoshiftStatus(v string) *UpdatePracticeRunConfigurationOutput { + s.ZonalAutoshiftStatus = &v + return s +} + +type UpdateZonalAutoshiftConfigurationInput struct { + _ struct{} `type:"structure"` + + // The identifier for the resource that you want to update the zonal autoshift + // configuration for. The identifier is the Amazon Resource Name (ARN) for the + // resource. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` + + // The zonal autoshift status for the resource that you want to update the zonal + // autoshift configuration for. + // + // ZonalAutoshiftStatus is a required field + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" required:"true" enum:"ZonalAutoshiftStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateZonalAutoshiftConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateZonalAutoshiftConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateZonalAutoshiftConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateZonalAutoshiftConfigurationInput"} + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 8)) + } + if s.ZonalAutoshiftStatus == nil { + invalidParams.Add(request.NewErrParamRequired("ZonalAutoshiftStatus")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *UpdateZonalAutoshiftConfigurationInput) SetResourceIdentifier(v string) *UpdateZonalAutoshiftConfigurationInput { + s.ResourceIdentifier = &v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *UpdateZonalAutoshiftConfigurationInput) SetZonalAutoshiftStatus(v string) *UpdateZonalAutoshiftConfigurationInput { + s.ZonalAutoshiftStatus = &v + return s +} + +type UpdateZonalAutoshiftConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The identifier for the resource that you updated the zonal autoshift configuration + // for. The identifier is the Amazon Resource Name (ARN) for the resource. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` + + // The zonal autoshift status for the resource that you updated the zonal autoshift + // configuration for. + // + // ZonalAutoshiftStatus is a required field + ZonalAutoshiftStatus *string `locationName:"zonalAutoshiftStatus" type:"string" required:"true" enum:"ZonalAutoshiftStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateZonalAutoshiftConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateZonalAutoshiftConfigurationOutput) GoString() string { + return s.String() +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *UpdateZonalAutoshiftConfigurationOutput) SetResourceIdentifier(v string) *UpdateZonalAutoshiftConfigurationOutput { + s.ResourceIdentifier = &v + return s +} + +// SetZonalAutoshiftStatus sets the ZonalAutoshiftStatus field's value. +func (s *UpdateZonalAutoshiftConfigurationOutput) SetZonalAutoshiftStatus(v string) *UpdateZonalAutoshiftConfigurationOutput { + s.ZonalAutoshiftStatus = &v + return s +} + type UpdateZonalShiftInput struct { _ struct{} `type:"structure"` @@ -1950,7 +3694,7 @@ // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in - // the AWS Region. + // the Amazon Web Services Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` @@ -1962,30 +3706,31 @@ // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` - // The expiry time (expiration time) for the zonal shift. A zonal shift is temporary - // and must be set to expire when you start the zonal shift. You can initially - // set a zonal shift to expire in a maximum of three days (72 hours). However, - // you can update a zonal shift to set a new expiration at any time. + // The expiry time (expiration time) for a customer-started zonal shift. A zonal + // shift is temporary and must be set to expire when you start the zonal shift. + // You can initially set a zonal shift to expire in a maximum of three days + // (72 hours). However, you can update a zonal shift to set a new expiration + // at any time. // // When you start a zonal shift, you specify how long you want it to be active, // which Route 53 ARC converts to an expiry time (expiration time). You can - // cancel a zonal shift, for example, if you're ready to restore traffic to - // the Availability Zone. Or you can update the zonal shift to specify another - // length of time to expire in. + // cancel a zonal shift when you're ready to restore traffic to the Availability + // Zone, or just wait for it to expire. Or you can update the zonal shift to + // specify another length of time to expire in. // // ExpiryTime is a required field ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp" required:"true"` - // The identifier for the resource to include in a zonal shift. The identifier + // The identifier for the resource to shift away traffic for. The identifier // is the Amazon Resource Name (ARN) for the resource. // - // At this time, you can only start a zonal shift for Network Load Balancers - // and Application Load Balancers with cross-zone load balancing turned off. + // At this time, supported resources are Network Load Balancers and Application + // Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` - // The time (UTC) when the zonal shift is started. + // The time (UTC) when the zonal shift starts. // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` @@ -1994,7 +3739,7 @@ // // The Status for a zonal shift can have one of the following values: // - // * ACTIVE: The zonal shift is started and active. + // * ACTIVE: The zonal shift has been started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // @@ -2069,7 +3814,8 @@ return s } -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2143,8 +3889,21 @@ type ZonalShiftInResource struct { _ struct{} `type:"structure"` - // An appliedStatus for a zonal shift for a resource can have one of two values: - // APPLIED or NOT_APPLIED. + // The appliedStatus field specifies which application traffic shift is in effect + // for a resource when there is more than one traffic shift active. There can + // be more than one application traffic shift in progress at the same time - + // that is, practice run zonal shifts, customer-started zonal shifts, or an + // autoshift. The appliedStatus field for an autoshift for a resource can have + // one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that + // is currently in effect for the resource has an applied status set to APPLIED. + // + // The overall principle for precedence is that zonal shifts that you start + // as a customer take precedence autoshifts, which take precedence over practice + // runs. That is, customer-started zonal shifts > autoshifts > practice run + // zonal shifts. + // + // For more information, see How zonal autoshift and practice runs work (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.how-it-works.html) + // in the Amazon Route 53 Application Recovery Controller Developer Guide. // // AppliedStatus is a required field AppliedStatus *string `locationName:"appliedStatus" type:"string" required:"true" enum:"AppliedStatus"` @@ -2152,7 +3911,7 @@ // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in - // the AWS Region. + // the Amazon Web Services Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` @@ -2164,20 +3923,44 @@ // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` - // The expiry time (expiration time) for the zonal shift. A zonal shift is temporary - // and must be set to expire when you start the zonal shift. You can initially - // set a zonal shift to expire in a maximum of three days (72 hours). However, - // you can update a zonal shift to set a new expiration at any time. + // The expiry time (expiration time) for a customer-started zonal shift. A zonal + // shift is temporary and must be set to expire when you start the zonal shift. + // You can initially set a zonal shift to expire in a maximum of three days + // (72 hours). However, you can update a zonal shift to set a new expiration + // at any time. // // When you start a zonal shift, you specify how long you want it to be active, // which Route 53 ARC converts to an expiry time (expiration time). You can - // cancel a zonal shift, for example, if you're ready to restore traffic to - // the Availability Zone. Or you can update the zonal shift to specify another - // length of time to expire in. + // cancel a zonal shift when you're ready to restore traffic to the Availability + // Zone, or just wait for it to expire. Or you can update the zonal shift to + // specify another length of time to expire in. // // ExpiryTime is a required field ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp" required:"true"` + // The outcome, or end state, returned for a practice run. The following values + // can be returned: + // + // * PENDING: Outcome value when a practice run is in progress. + // + // * SUCCEEDED: Outcome value when the outcome alarm specified for the practice + // run configuration does not go into an ALARM state during the practice + // run, and the practice run was not interrupted before it completed the + // expected 30 minute zonal shift. + // + // * INTERRUPTED: Outcome value when the practice run was stopped before + // the expected 30 minute zonal shift duration, or there was another problem + // with the practice run that created an inconclusive outcome. + // + // * FAILED: Outcome value when the outcome alarm specified for the practice + // run configuration goes into an ALARM state during the practice run, and + // the practice run was not interrupted before it completed. + // + // For more information about practice run outcomes, see Considerations when + // you configure zonal autoshift (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.configure.html) + // in the Amazon Route 53 Application Recovery Controller Developer Guide. + PracticeRunOutcome *string `locationName:"practiceRunOutcome" type:"string" enum:"PracticeRunOutcome"` + // The identifier for the resource to include in a zonal shift. The identifier // is the Amazon Resource Name (ARN) for the resource. // @@ -2187,7 +3970,7 @@ // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` - // The time (UTC) when the zonal shift is started. + // The time (UTC) when the zonal shift starts. // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` @@ -2240,6 +4023,12 @@ return s } +// SetPracticeRunOutcome sets the PracticeRunOutcome field's value. +func (s *ZonalShiftInResource) SetPracticeRunOutcome(v string) *ZonalShiftInResource { + s.PracticeRunOutcome = &v + return s +} + // SetResourceIdentifier sets the ResourceIdentifier field's value. func (s *ZonalShiftInResource) SetResourceIdentifier(v string) *ZonalShiftInResource { s.ResourceIdentifier = &v @@ -2258,29 +4047,21 @@ return s } -// You start a zonal shift to temporarily move load balancer traffic away from -// an Availability Zone in a AWS Region. A zonal shift helps your application -// recover immediately, for example, from a developer's bad code deployment -// or from an AWS infrastructure failure in a single Availability Zone. You -// can start a zonal shift in Route 53 ARC only for managed resources in your -// account in an AWS Region. Supported AWS resources are automatically registered -// with Route 53 ARC. -// -// Zonal shifts are temporary. A zonal shift can be active for up to three days -// (72 hours). -// -// When you start a zonal shift, you specify how long you want it to be active, -// which Amazon Route 53 Application Recovery Controller converts to an expiry -// time (expiration time). You can cancel a zonal shift, for example, if you're -// ready to restore traffic to the Availability Zone. Or you can extend the -// zonal shift by updating the expiration so the zonal shift is active longer. +// Lists information about zonal shifts in Amazon Route 53 Application Recovery +// Controller, including zonal shifts that you start yourself and zonal shifts +// that Route 53 ARC starts on your behalf for practice runs with zonal autoshift. +// +// Zonal shifts are temporary, including customer-started zonal shifts and the +// zonal autoshift practice run zonal shifts that Route 53 ARC starts weekly, +// on your behalf. A zonal shift that a customer starts can be active for up +// to three days (72 hours). A practice run zonal shift has a 30 minute duration. type ZonalShiftSummary struct { _ struct{} `type:"structure"` // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in - // the AWS Region. + // the Amazon Web Services Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` @@ -2292,20 +4073,43 @@ // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` - // The expiry time (expiration time) for the zonal shift. A zonal shift is temporary - // and must be set to expire when you start the zonal shift. You can initially - // set a zonal shift to expire in a maximum of three days (72 hours). However, - // you can update a zonal shift to set a new expiration at any time. + // The expiry time (expiration time) for a customer-started zonal shift. A zonal + // shift is temporary and must be set to expire when you start the zonal shift. + // You can initially set a zonal shift to expire in a maximum of three days + // (72 hours). However, you can update a zonal shift to set a new expiration + // at any time. // // When you start a zonal shift, you specify how long you want it to be active, // which Route 53 ARC converts to an expiry time (expiration time). You can - // cancel a zonal shift, for example, if you're ready to restore traffic to - // the Availability Zone. Or you can update the zonal shift to specify another - // length of time to expire in. + // cancel a zonal shift when you're ready to restore traffic to the Availability + // Zone, or just wait for it to expire. Or you can update the zonal shift to + // specify another length of time to expire in. // // ExpiryTime is a required field ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp" required:"true"` + // The outcome, or end state, of a practice run. The following values can be + // returned: + // + // * PENDING: Outcome value when the practice run is in progress. + // + // * SUCCEEDED: Outcome value when the outcome alarm specified for the practice + // run configuration does not go into an ALARM state during the practice + // run, and the practice run was not interrupted before it completed. + // + // * INTERRUPTED: Outcome value when the practice run did not run for the + // expected 30 minutes or there was another problem with the practice run + // that created an inconclusive outcome. + // + // * FAILED: Outcome value when the outcome alarm specified for the practice + // run configuration goes into an ALARM state during the practice run, and + // the practice run was not interrupted before it completed. + // + // For more information about practice run outcomes, see Considerations when + // you configure zonal autoshift (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-autoshift.configure.html) + // in the Amazon Route 53 Application Recovery Controller Developer Guide. + PracticeRunOutcome *string `locationName:"practiceRunOutcome" type:"string" enum:"PracticeRunOutcome"` + // The identifier for the resource to include in a zonal shift. The identifier // is the Amazon Resource Name (ARN) for the resource. // @@ -2315,7 +4119,7 @@ // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` - // The time (UTC) when the zonal shift is started. + // The time (UTC) when the zonal shift starts. // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` @@ -2324,7 +4128,7 @@ // // The Status for a zonal shift can have one of the following values: // - // * ACTIVE: The zonal shift is started and active. + // * ACTIVE: The zonal shift has been started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // @@ -2375,6 +4179,12 @@ return s } +// SetPracticeRunOutcome sets the PracticeRunOutcome field's value. +func (s *ZonalShiftSummary) SetPracticeRunOutcome(v string) *ZonalShiftSummary { + s.PracticeRunOutcome = &v + return s +} + // SetResourceIdentifier sets the ResourceIdentifier field's value. func (s *ZonalShiftSummary) SetResourceIdentifier(v string) *ZonalShiftSummary { s.ResourceIdentifier = &v @@ -2416,6 +4226,38 @@ } const ( + // AutoshiftAppliedStatusApplied is a AutoshiftAppliedStatus enum value + AutoshiftAppliedStatusApplied = "APPLIED" + + // AutoshiftAppliedStatusNotApplied is a AutoshiftAppliedStatus enum value + AutoshiftAppliedStatusNotApplied = "NOT_APPLIED" +) + +// AutoshiftAppliedStatus_Values returns all elements of the AutoshiftAppliedStatus enum +func AutoshiftAppliedStatus_Values() []string { + return []string{ + AutoshiftAppliedStatusApplied, + AutoshiftAppliedStatusNotApplied, + } +} + +const ( + // AutoshiftExecutionStatusActive is a AutoshiftExecutionStatus enum value + AutoshiftExecutionStatusActive = "ACTIVE" + + // AutoshiftExecutionStatusCompleted is a AutoshiftExecutionStatus enum value + AutoshiftExecutionStatusCompleted = "COMPLETED" +) + +// AutoshiftExecutionStatus_Values returns all elements of the AutoshiftExecutionStatus enum +func AutoshiftExecutionStatus_Values() []string { + return []string{ + AutoshiftExecutionStatusActive, + AutoshiftExecutionStatusCompleted, + } +} + +const ( // ConflictExceptionReasonZonalShiftAlreadyExists is a ConflictExceptionReason enum value ConflictExceptionReasonZonalShiftAlreadyExists = "ZonalShiftAlreadyExists" @@ -2424,6 +4266,15 @@ // ConflictExceptionReasonSimultaneousZonalShiftsConflict is a ConflictExceptionReason enum value ConflictExceptionReasonSimultaneousZonalShiftsConflict = "SimultaneousZonalShiftsConflict" + + // ConflictExceptionReasonPracticeConfigurationAlreadyExists is a ConflictExceptionReason enum value + ConflictExceptionReasonPracticeConfigurationAlreadyExists = "PracticeConfigurationAlreadyExists" + + // ConflictExceptionReasonAutoShiftEnabled is a ConflictExceptionReason enum value + ConflictExceptionReasonAutoShiftEnabled = "AutoShiftEnabled" + + // ConflictExceptionReasonPracticeConfigurationDoesNotExist is a ConflictExceptionReason enum value + ConflictExceptionReasonPracticeConfigurationDoesNotExist = "PracticeConfigurationDoesNotExist" ) // ConflictExceptionReason_Values returns all elements of the ConflictExceptionReason enum @@ -2432,6 +4283,45 @@ ConflictExceptionReasonZonalShiftAlreadyExists, ConflictExceptionReasonZonalShiftStatusNotActive, ConflictExceptionReasonSimultaneousZonalShiftsConflict, + ConflictExceptionReasonPracticeConfigurationAlreadyExists, + ConflictExceptionReasonAutoShiftEnabled, + ConflictExceptionReasonPracticeConfigurationDoesNotExist, + } +} + +const ( + // ControlConditionTypeCloudwatch is a ControlConditionType enum value + ControlConditionTypeCloudwatch = "CLOUDWATCH" +) + +// ControlConditionType_Values returns all elements of the ControlConditionType enum +func ControlConditionType_Values() []string { + return []string{ + ControlConditionTypeCloudwatch, + } +} + +const ( + // PracticeRunOutcomeFailed is a PracticeRunOutcome enum value + PracticeRunOutcomeFailed = "FAILED" + + // PracticeRunOutcomeInterrupted is a PracticeRunOutcome enum value + PracticeRunOutcomeInterrupted = "INTERRUPTED" + + // PracticeRunOutcomePending is a PracticeRunOutcome enum value + PracticeRunOutcomePending = "PENDING" + + // PracticeRunOutcomeSucceeded is a PracticeRunOutcome enum value + PracticeRunOutcomeSucceeded = "SUCCEEDED" +) + +// PracticeRunOutcome_Values returns all elements of the PracticeRunOutcome enum +func PracticeRunOutcome_Values() []string { + return []string{ + PracticeRunOutcomeFailed, + PracticeRunOutcomeInterrupted, + PracticeRunOutcomePending, + PracticeRunOutcomeSucceeded, } } @@ -2456,6 +4346,15 @@ // ValidationExceptionReasonUnsupportedAz is a ValidationExceptionReason enum value ValidationExceptionReasonUnsupportedAz = "UnsupportedAz" + + // ValidationExceptionReasonInvalidAlarmCondition is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidAlarmCondition = "InvalidAlarmCondition" + + // ValidationExceptionReasonInvalidConditionType is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidConditionType = "InvalidConditionType" + + // ValidationExceptionReasonInvalidPracticeBlocker is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidPracticeBlocker = "InvalidPracticeBlocker" ) // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum @@ -2468,6 +4367,25 @@ ValidationExceptionReasonInvalidResourceIdentifier, ValidationExceptionReasonInvalidAz, ValidationExceptionReasonUnsupportedAz, + ValidationExceptionReasonInvalidAlarmCondition, + ValidationExceptionReasonInvalidConditionType, + ValidationExceptionReasonInvalidPracticeBlocker, + } +} + +const ( + // ZonalAutoshiftStatusEnabled is a ZonalAutoshiftStatus enum value + ZonalAutoshiftStatusEnabled = "ENABLED" + + // ZonalAutoshiftStatusDisabled is a ZonalAutoshiftStatus enum value + ZonalAutoshiftStatusDisabled = "DISABLED" +) + +// ZonalAutoshiftStatus_Values returns all elements of the ZonalAutoshiftStatus enum +func ZonalAutoshiftStatus_Values() []string { + return []string{ + ZonalAutoshiftStatusEnabled, + ZonalAutoshiftStatusDisabled, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/arczonalshiftiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/arczonalshiftiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/arczonalshiftiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/arczonalshiftiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,10 +64,25 @@ CancelZonalShiftWithContext(aws.Context, *arczonalshift.CancelZonalShiftInput, ...request.Option) (*arczonalshift.CancelZonalShiftOutput, error) CancelZonalShiftRequest(*arczonalshift.CancelZonalShiftInput) (*request.Request, *arczonalshift.CancelZonalShiftOutput) + CreatePracticeRunConfiguration(*arczonalshift.CreatePracticeRunConfigurationInput) (*arczonalshift.CreatePracticeRunConfigurationOutput, error) + CreatePracticeRunConfigurationWithContext(aws.Context, *arczonalshift.CreatePracticeRunConfigurationInput, ...request.Option) (*arczonalshift.CreatePracticeRunConfigurationOutput, error) + CreatePracticeRunConfigurationRequest(*arczonalshift.CreatePracticeRunConfigurationInput) (*request.Request, *arczonalshift.CreatePracticeRunConfigurationOutput) + + DeletePracticeRunConfiguration(*arczonalshift.DeletePracticeRunConfigurationInput) (*arczonalshift.DeletePracticeRunConfigurationOutput, error) + DeletePracticeRunConfigurationWithContext(aws.Context, *arczonalshift.DeletePracticeRunConfigurationInput, ...request.Option) (*arczonalshift.DeletePracticeRunConfigurationOutput, error) + DeletePracticeRunConfigurationRequest(*arczonalshift.DeletePracticeRunConfigurationInput) (*request.Request, *arczonalshift.DeletePracticeRunConfigurationOutput) + GetManagedResource(*arczonalshift.GetManagedResourceInput) (*arczonalshift.GetManagedResourceOutput, error) GetManagedResourceWithContext(aws.Context, *arczonalshift.GetManagedResourceInput, ...request.Option) (*arczonalshift.GetManagedResourceOutput, error) GetManagedResourceRequest(*arczonalshift.GetManagedResourceInput) (*request.Request, *arczonalshift.GetManagedResourceOutput) + ListAutoshifts(*arczonalshift.ListAutoshiftsInput) (*arczonalshift.ListAutoshiftsOutput, error) + ListAutoshiftsWithContext(aws.Context, *arczonalshift.ListAutoshiftsInput, ...request.Option) (*arczonalshift.ListAutoshiftsOutput, error) + ListAutoshiftsRequest(*arczonalshift.ListAutoshiftsInput) (*request.Request, *arczonalshift.ListAutoshiftsOutput) + + ListAutoshiftsPages(*arczonalshift.ListAutoshiftsInput, func(*arczonalshift.ListAutoshiftsOutput, bool) bool) error + ListAutoshiftsPagesWithContext(aws.Context, *arczonalshift.ListAutoshiftsInput, func(*arczonalshift.ListAutoshiftsOutput, bool) bool, ...request.Option) error + ListManagedResources(*arczonalshift.ListManagedResourcesInput) (*arczonalshift.ListManagedResourcesOutput, error) ListManagedResourcesWithContext(aws.Context, *arczonalshift.ListManagedResourcesInput, ...request.Option) (*arczonalshift.ListManagedResourcesOutput, error) ListManagedResourcesRequest(*arczonalshift.ListManagedResourcesInput) (*request.Request, *arczonalshift.ListManagedResourcesOutput) @@ -86,6 +101,14 @@ StartZonalShiftWithContext(aws.Context, *arczonalshift.StartZonalShiftInput, ...request.Option) (*arczonalshift.StartZonalShiftOutput, error) StartZonalShiftRequest(*arczonalshift.StartZonalShiftInput) (*request.Request, *arczonalshift.StartZonalShiftOutput) + UpdatePracticeRunConfiguration(*arczonalshift.UpdatePracticeRunConfigurationInput) (*arczonalshift.UpdatePracticeRunConfigurationOutput, error) + UpdatePracticeRunConfigurationWithContext(aws.Context, *arczonalshift.UpdatePracticeRunConfigurationInput, ...request.Option) (*arczonalshift.UpdatePracticeRunConfigurationOutput, error) + UpdatePracticeRunConfigurationRequest(*arczonalshift.UpdatePracticeRunConfigurationInput) (*request.Request, *arczonalshift.UpdatePracticeRunConfigurationOutput) + + UpdateZonalAutoshiftConfiguration(*arczonalshift.UpdateZonalAutoshiftConfigurationInput) (*arczonalshift.UpdateZonalAutoshiftConfigurationOutput, error) + UpdateZonalAutoshiftConfigurationWithContext(aws.Context, *arczonalshift.UpdateZonalAutoshiftConfigurationInput, ...request.Option) (*arczonalshift.UpdateZonalAutoshiftConfigurationOutput, error) + UpdateZonalAutoshiftConfigurationRequest(*arczonalshift.UpdateZonalAutoshiftConfigurationInput) (*request.Request, *arczonalshift.UpdateZonalAutoshiftConfigurationOutput) + UpdateZonalShift(*arczonalshift.UpdateZonalShiftInput) (*arczonalshift.UpdateZonalShiftOutput, error) UpdateZonalShiftWithContext(aws.Context, *arczonalshift.UpdateZonalShiftInput, ...request.Option) (*arczonalshift.UpdateZonalShiftOutput, error) UpdateZonalShiftRequest(*arczonalshift.UpdateZonalShiftInput) (*request.Request, *arczonalshift.UpdateZonalShiftOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,34 +3,38 @@ // Package arczonalshift provides the client and types for making API // requests to AWS ARC - Zonal Shift. // -// This is the API Reference Guide for the zonal shift feature of Amazon Route -// 53 Application Recovery Controller. This guide is for developers who need -// detailed information about zonal shift API actions, data types, and errors. -// -// Zonal shift is in preview release for Amazon Route 53 Application Recovery -// Controller and is subject to change. -// -// Zonal shift in Route 53 ARC enables you to move traffic for a load balancer -// resource away from an Availability Zone. Starting a zonal shift helps your -// application recover immediately, for example, from a developer's bad code -// deployment or from an AWS infrastructure failure in a single Availability -// Zone, reducing the impact and time lost from an issue in one zone. -// -// Supported AWS resources are automatically registered with Route 53 ARC. Resources -// that are registered for zonal shifts in Route 53 ARC are managed resources -// in Route 53 ARC. You can start a zonal shift for any managed resource in -// your account in a Region. At this time, you can only start a zonal shift -// for Network Load Balancers and Application Load Balancers with cross-zone -// load balancing turned off. -// -// Zonal shifts are temporary. You must specify an expiration when you start -// a zonal shift, of up to three days initially. If you want to still keep traffic -// away from an Availability Zone, you can update the zonal shift and set a -// new expiration. You can also cancel a zonal shift, before it expires, for -// example, if you're ready to restore traffic to the Availability Zone. +// Welcome to the Zonal Shift API Reference Guide for Amazon Route 53 Application +// Recovery Controller (Route 53 ARC). // -// For more information about using zonal shift, see the Amazon Route 53 Application -// Recovery Controller Developer Guide (https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html). +// You can start a zonal shift to move traffic for a load balancer resource +// away from an Availability Zone to help your application recover quickly from +// an impairment in an Availability Zone. For example, you can recover your +// application from a developer's bad code deployment or from an Amazon Web +// Services infrastructure failure in a single Availability Zone. +// +// You can also configure zonal autoshift for a load balancer resource. Zonal +// autoshift is a capability in Route 53 ARC where Amazon Web Services shifts +// away application resource traffic from an Availability Zone, on your behalf, +// to help reduce your time to recovery during events. Amazon Web Services shifts +// away traffic for resources that are enabled for zonal autoshift whenever +// Amazon Web Services determines that there's an issue in the Availability +// Zone that could potentially affect customers. +// +// To ensure that zonal autoshift is safe for your application, you must also +// configure practice runs when you enable zonal autoshift for a resource. Practice +// runs start weekly zonal shifts for a resource, to shift traffic for the resource +// out of an Availability Zone. Practice runs make sure, on a regular basis, +// that you have enough capacity in all the Availability Zones in an Amazon +// Web Services Region for your application to continue to operate normally +// when traffic for a resource is shifted away from one Availability Zone. +// +// You must prescale resource capacity in all Availability Zones in the Region +// where your application is deployed, before you configure practice runs or +// enable zonal autoshift for a resource. You should not rely on scaling on +// demand when an autoshift or practice run starts. +// +// For more information about using zonal shift and zonal autoshift, see the +// Amazon Route 53 Application Recovery Controller Developer Guide (https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html). // // See https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/arczonalshift/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/arczonalshift/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -42,7 +42,8 @@ // ErrCodeValidationException for service response error code // "ValidationException". // - // The input fails to satisfy the constraints specified by an AWS service. + // The input fails to satisfy the constraints specified by an Amazon Web Services + // service. ErrCodeValidationException = "ValidationException" ) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/athena/api.go golang-github-aws-aws-sdk-go-1.48.14/service/athena/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/athena/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/athena/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -589,10 +589,6 @@ // Creates a named query in the specified workgroup. Requires that you have // access to the workgroup. // -// For code samples using the Amazon Web Services SDK for Java, see Examples -// and Code Samples (http://docs.aws.amazon.com/athena/latest/ug/code-samples.html) -// in the Amazon Athena User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1202,10 +1198,6 @@ // Deletes the named query if you have access to the workgroup in which the // query was saved. // -// For code samples using the Amazon Web Services SDK for Java, see Examples -// and Code Samples (http://docs.aws.amazon.com/athena/latest/ug/code-samples.html) -// in the Amazon Athena User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -4297,10 +4289,6 @@ // workgroup. Requires that you have access to the specified workgroup. If a // workgroup is not specified, lists the saved queries for the primary workgroup. // -// For code samples using the Amazon Web Services SDK for Java, see Examples -// and Code Samples (http://docs.aws.amazon.com/athena/latest/ug/code-samples.html) -// in the Amazon Athena User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -4758,13 +4746,9 @@ // ListQueryExecutions API operation for Amazon Athena. // // Provides a list of available query execution IDs for the queries in the specified -// workgroup. If a workgroup is not specified, returns a list of query execution -// IDs for the primary workgroup. Requires you to have access to the workgroup -// in which the queries ran. -// -// For code samples using the Amazon Web Services SDK for Java, see Examples -// and Code Samples (http://docs.aws.amazon.com/athena/latest/ug/code-samples.html) -// in the Amazon Athena User Guide. +// workgroup. Athena keeps a query history for 45 days. If a workgroup is not +// specified, returns a list of query execution IDs for the primary workgroup. +// Requires you to have access to the workgroup in which the queries ran. // // 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 @@ -5568,6 +5552,11 @@ // Submits calculations for execution within a session. You can supply the code // to run as an inline code block within the request. // +// The request syntax requires the StartCalculationExecutionRequest$CodeBlock +// parameter or the CalculationConfiguration$CodeBlock parameter, but not both. +// Because CalculationConfiguration$CodeBlock is deprecated, use the StartCalculationExecutionRequest$CodeBlock +// parameter instead. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5937,10 +5926,6 @@ // Stops a query execution. Requires you to have access to the workgroup in // which the query ran. // -// For code samples using the Amazon Web Services SDK for Java, see Examples -// and Code Samples (http://docs.aws.amazon.com/athena/latest/ug/code-samples.html) -// in the Amazon Athena User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -7957,7 +7942,7 @@ // Name is a required field Name *string `type:"string" required:"true"` - // Indicates the column's nullable status. + // Unsupported constraint. This value always shows as UNKNOWN. Nullable *string `type:"string" enum:"ColumnNullable"` // For DECIMAL data types, specifies the total number of digits, up to 38. For @@ -8197,11 +8182,7 @@ // is the account ID of the Amazon Web Services account to which the Glue // Data Catalog belongs. catalog-id=catalog_id The GLUE data catalog type // also applies to the default AwsDataCatalog that already exists in your - // account, of which you can have only one and cannot modify. Queries that - // specify a Glue Data Catalog other than the default AwsDataCatalog must - // be run on Athena engine version 2. In Regions where Athena engine version - // 2 is not available, creating new Glue data catalogs results in an INVALID_INPUT - // error. + // account, of which you can have only one and cannot modify. Parameters map[string]*string `type:"map"` // A list of comma separated tags to add to the data catalog that is created. @@ -8920,12 +8901,14 @@ return s.String() } -// Specifies the KMS key that is used to encrypt the user's data stores in Athena. -// This setting does not apply to Athena SQL workgroups. +// Specifies the customer managed KMS key that is used to encrypt the user's +// data stores in Athena. When an Amazon Web Services managed key is used, this +// value is null. This setting does not apply to Athena SQL workgroups. type CustomerContentEncryptionConfiguration struct { _ struct{} `type:"structure"` - // The KMS key that is used to encrypt the user's data stores in Athena. + // The customer managed KMS key that is used to encrypt the user's data stores + // in Athena. // // KmsKey is a required field KmsKey *string `min:"1" type:"string" required:"true"` @@ -9007,9 +8990,7 @@ // is the account ID of the Amazon Web Services account to which the Glue // catalog belongs. catalog-id=catalog_id The GLUE data catalog type also // applies to the default AwsDataCatalog that already exists in your account, - // of which you can have only one and cannot modify. Queries that specify - // a Glue Data Catalog other than the default AwsDataCatalog must be run - // on Athena engine version 2. + // of which you can have only one and cannot modify. Parameters map[string]*string `type:"map"` // The type of data catalog to create: LAMBDA for a federated catalog, HIVE @@ -10567,6 +10548,9 @@ // // Name is a required field Name *string `min:"1" type:"string" required:"true"` + + // The name of the workgroup. Required if making an IAM Identity Center request. + WorkGroup *string `type:"string"` } // String returns the string representation. @@ -10609,6 +10593,12 @@ return s } +// SetWorkGroup sets the WorkGroup field's value. +func (s *GetDataCatalogInput) SetWorkGroup(v string) *GetDataCatalogInput { + s.WorkGroup = &v + return s +} + type GetDataCatalogOutput struct { _ struct{} `type:"structure"` @@ -10652,6 +10642,10 @@ // // DatabaseName is a required field DatabaseName *string `min:"1" type:"string" required:"true"` + + // The name of the workgroup for which the metadata is being fetched. Required + // if requesting an IAM Identity Center enabled Glue Data Catalog. + WorkGroup *string `type:"string"` } // String returns the string representation. @@ -10706,6 +10700,12 @@ return s } +// SetWorkGroup sets the WorkGroup field's value. +func (s *GetDatabaseInput) SetWorkGroup(v string) *GetDatabaseInput { + s.WorkGroup = &v + return s +} + type GetDatabaseOutput struct { _ struct{} `type:"structure"` @@ -11539,6 +11539,10 @@ // // TableName is a required field TableName *string `min:"1" type:"string" required:"true"` + + // The name of the workgroup for which the metadata is being fetched. Required + // if requesting an IAM Identity Center enabled Glue Data Catalog. + WorkGroup *string `type:"string"` } // String returns the string representation. @@ -11605,6 +11609,12 @@ return s } +// SetWorkGroup sets the WorkGroup field's value. +func (s *GetTableMetadataInput) SetWorkGroup(v string) *GetTableMetadataInput { + s.WorkGroup = &v + return s +} + type GetTableMetadataOutput struct { _ struct{} `type:"structure"` @@ -11713,6 +11723,47 @@ return s } +// Specifies whether the workgroup is IAM Identity Center supported. +type IdentityCenterConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies whether the workgroup is IAM Identity Center supported. + EnableIdentityCenter *bool `type:"boolean"` + + // The IAM Identity Center instance ARN that the workgroup associates to. + IdentityCenterInstanceArn *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 IdentityCenterConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdentityCenterConfiguration) GoString() string { + return s.String() +} + +// SetEnableIdentityCenter sets the EnableIdentityCenter field's value. +func (s *IdentityCenterConfiguration) SetEnableIdentityCenter(v bool) *IdentityCenterConfiguration { + s.EnableIdentityCenter = &v + return s +} + +// SetIdentityCenterInstanceArn sets the IdentityCenterInstanceArn field's value. +func (s *IdentityCenterConfiguration) SetIdentityCenterInstanceArn(v string) *IdentityCenterConfiguration { + s.IdentityCenterInstanceArn = &v + return s +} + type ImportNotebookInput struct { _ struct{} `type:"structure"` @@ -12347,6 +12398,9 @@ // pages, pass in the NextToken from the response object of the previous page // call. NextToken *string `min:"1" type:"string"` + + // The name of the workgroup. Required if making an IAM Identity Center request. + WorkGroup *string `type:"string"` } // String returns the string representation. @@ -12395,6 +12449,12 @@ return s } +// SetWorkGroup sets the WorkGroup field's value. +func (s *ListDataCatalogsInput) SetWorkGroup(v string) *ListDataCatalogsInput { + s.WorkGroup = &v + return s +} + type ListDataCatalogsOutput struct { _ struct{} `type:"structure"` @@ -12454,6 +12514,10 @@ // pages, pass in the NextToken from the response object of the previous page // call. NextToken *string `min:"1" type:"string"` + + // The name of the workgroup for which the metadata is being fetched. Required + // if requesting an IAM Identity Center enabled Glue Data Catalog. + WorkGroup *string `type:"string"` } // String returns the string representation. @@ -12514,6 +12578,12 @@ return s } +// SetWorkGroup sets the WorkGroup field's value. +func (s *ListDatabasesInput) SetWorkGroup(v string) *ListDatabasesInput { + s.WorkGroup = &v + return s +} + type ListDatabasesOutput struct { _ struct{} `type:"structure"` @@ -13552,6 +13622,10 @@ // pages, pass in the NextToken from the response object of the previous page // call. NextToken *string `min:"1" type:"string"` + + // The name of the workgroup for which the metadata is being fetched. Required + // if requesting an IAM Identity Center enabled Glue Data Catalog. + WorkGroup *string `type:"string"` } // String returns the string representation. @@ -13630,6 +13704,12 @@ return s } +// SetWorkGroup sets the WorkGroup field's value. +func (s *ListTableMetadataInput) SetWorkGroup(v string) *ListTableMetadataInput { + s.WorkGroup = &v + return s +} + type ListTableMetadataOutput struct { _ struct{} `type:"structure"` @@ -14378,6 +14458,9 @@ // The unique identifier for each query execution. QueryExecutionId *string `min:"1" type:"string"` + // Specifies whether Amazon S3 access grants are enabled for query results. + QueryResultsS3AccessGrantsConfiguration *QueryResultsS3AccessGrantsConfiguration `type:"structure"` + // The location in Amazon S3 where query and calculation results are stored // and the encryption option, if any, used for query results. These are known // as "client-side settings". If workgroup settings override client-side settings, @@ -14458,6 +14541,12 @@ return s } +// SetQueryResultsS3AccessGrantsConfiguration sets the QueryResultsS3AccessGrantsConfiguration field's value. +func (s *QueryExecution) SetQueryResultsS3AccessGrantsConfiguration(v *QueryResultsS3AccessGrantsConfiguration) *QueryExecution { + s.QueryResultsS3AccessGrantsConfiguration = v + return s +} + // SetResultConfiguration sets the ResultConfiguration field's value. func (s *QueryExecution) SetResultConfiguration(v *ResultConfiguration) *QueryExecution { s.ResultConfiguration = v @@ -14594,6 +14683,10 @@ // the query. ResultReuseInformation *ResultReuseInformation `type:"structure"` + // The number of milliseconds that Athena took to preprocess the query before + // submitting the query to the query engine. + ServicePreProcessingTimeInMillis *int64 `type:"long"` + // The number of milliseconds that Athena took to finalize and publish the query // results after the query engine finished running the query. ServiceProcessingTimeInMillis *int64 `type:"long"` @@ -14656,6 +14749,12 @@ return s } +// SetServicePreProcessingTimeInMillis sets the ServicePreProcessingTimeInMillis field's value. +func (s *QueryExecutionStatistics) SetServicePreProcessingTimeInMillis(v int64) *QueryExecutionStatistics { + s.ServicePreProcessingTimeInMillis = &v + return s +} + // SetServiceProcessingTimeInMillis sets the ServiceProcessingTimeInMillis field's value. func (s *QueryExecutionStatistics) SetServiceProcessingTimeInMillis(v int64) *QueryExecutionStatistics { s.ServiceProcessingTimeInMillis = &v @@ -14746,6 +14845,78 @@ return s } +// Specifies whether Amazon S3 access grants are enabled for query results. +type QueryResultsS3AccessGrantsConfiguration struct { + _ struct{} `type:"structure"` + + // The authentication type used for Amazon S3 access grants. Currently, only + // DIRECTORY_IDENTITY is supported. + // + // AuthenticationType is a required field + AuthenticationType *string `type:"string" required:"true" enum:"AuthenticationType"` + + // When enabled, appends the user ID as an Amazon S3 path prefix to the query + // result output location. + CreateUserLevelPrefix *bool `type:"boolean"` + + // Specifies whether Amazon S3 access grants are enabled for query results. + // + // EnableS3AccessGrants is a required field + EnableS3AccessGrants *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryResultsS3AccessGrantsConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryResultsS3AccessGrantsConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QueryResultsS3AccessGrantsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QueryResultsS3AccessGrantsConfiguration"} + if s.AuthenticationType == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationType")) + } + if s.EnableS3AccessGrants == nil { + invalidParams.Add(request.NewErrParamRequired("EnableS3AccessGrants")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthenticationType sets the AuthenticationType field's value. +func (s *QueryResultsS3AccessGrantsConfiguration) SetAuthenticationType(v string) *QueryResultsS3AccessGrantsConfiguration { + s.AuthenticationType = &v + return s +} + +// SetCreateUserLevelPrefix sets the CreateUserLevelPrefix field's value. +func (s *QueryResultsS3AccessGrantsConfiguration) SetCreateUserLevelPrefix(v bool) *QueryResultsS3AccessGrantsConfiguration { + s.CreateUserLevelPrefix = &v + return s +} + +// SetEnableS3AccessGrants sets the EnableS3AccessGrants field's value. +func (s *QueryResultsS3AccessGrantsConfiguration) SetEnableS3AccessGrants(v bool) *QueryResultsS3AccessGrantsConfiguration { + s.EnableS3AccessGrants = &v + return s +} + // The query execution timeline, statistics on input and output rows and bytes, // and the different query stages that form the query execution plan. type QueryRuntimeStatistics struct { @@ -14880,6 +15051,10 @@ // add the query back to the queue. QueryQueueTimeInMillis *int64 `type:"long"` + // The number of milliseconds that Athena spends on preprocessing before it + // submits the query to the engine. + ServicePreProcessingTimeInMillis *int64 `type:"long"` + // The number of milliseconds that Athena took to finalize and publish the query // results after the query engine finished running the query. ServiceProcessingTimeInMillis *int64 `type:"long"` @@ -14924,6 +15099,12 @@ return s } +// SetServicePreProcessingTimeInMillis sets the ServicePreProcessingTimeInMillis field's value. +func (s *QueryRuntimeStatisticsTimeline) SetServicePreProcessingTimeInMillis(v int64) *QueryRuntimeStatisticsTimeline { + s.ServicePreProcessingTimeInMillis = &v + return s +} + // SetServiceProcessingTimeInMillis sets the ServiceProcessingTimeInMillis field's value. func (s *QueryRuntimeStatisticsTimeline) SetServiceProcessingTimeInMillis(v int64) *QueryRuntimeStatisticsTimeline { s.ServiceProcessingTimeInMillis = &v @@ -15767,7 +15948,9 @@ // encryption option used (for example, SSE_KMS or CSE_KMS) and key information. EncryptionConfiguration *EncryptionConfiguration `type:"structure"` - // The ARN of the execution role used for the session. + // The ARN of the execution role used to access user resources for Spark sessions + // and Identity Center enabled workgroups. This property applies only to Spark + // enabled workgroups and Identity Center enabled workgroups. ExecutionRole *string `min:"20" type:"string"` // The idle timeout in seconds for the session. @@ -16034,7 +16217,8 @@ // Services CLI, you must provide this token or the action will fail. ClientRequestToken *string `min:"32" type:"string"` - // A string that contains the code of the calculation. + // A string that contains the code of the calculation. Use this parameter instead + // of CalculationConfiguration$CodeBlock, which is deprecated. CodeBlock *string `type:"string"` // A description of the calculation. @@ -16178,7 +16362,10 @@ // A unique case-sensitive string used to ensure the request to create the query // is idempotent (executes only once). If another StartQueryExecution request // is received, the same response is returned and another query is not created. - // If a parameter has changed, for example, the QueryString, an error is returned. + // An error is returned if a parameter, such as QueryString, has changed. A + // call to StartQueryExecution that uses a previous client request token returns + // the same QueryExecutionId even if the requester doesn't have permission on + // the tables specified in QueryString. // // This token is listed as not required because Amazon Web Services SDKs (for // example the Amazon Web Services SDK for Java) auto-generate the token for @@ -18154,6 +18341,10 @@ // The workgroup description. Description *string `type:"string"` + // The ARN of the IAM Identity Center enabled application associated with the + // workgroup. + IdentityCenterApplicationArn *string `type:"string"` + // The workgroup name. // // Name is a required field @@ -18199,6 +18390,12 @@ return s } +// SetIdentityCenterApplicationArn sets the IdentityCenterApplicationArn field's value. +func (s *WorkGroup) SetIdentityCenterApplicationArn(v string) *WorkGroup { + s.IdentityCenterApplicationArn = &v + return s +} + // SetName sets the Name field's value. func (s *WorkGroup) SetName(v string) *WorkGroup { s.Name = &v @@ -18253,12 +18450,20 @@ // regardless of this setting. EngineVersion *EngineVersion `type:"structure"` - // Role used in a session for accessing the user's resources. + // The ARN of the execution role used to access user resources for Spark sessions + // and Identity Center enabled workgroups. This property applies only to Spark + // enabled workgroups and Identity Center enabled workgroups. ExecutionRole *string `min:"20" type:"string"` + // Specifies whether the workgroup is IAM Identity Center supported. + IdentityCenterConfiguration *IdentityCenterConfiguration `type:"structure"` + // Indicates that the Amazon CloudWatch metrics are enabled for the workgroup. PublishCloudWatchMetricsEnabled *bool `type:"boolean"` + // Specifies whether Amazon S3 access grants are enabled for query results. + QueryResultsS3AccessGrantsConfiguration *QueryResultsS3AccessGrantsConfiguration `type:"structure"` + // If set to true, allows members assigned to a workgroup to reference Amazon // S3 Requester Pays buckets in queries. If set to false, workgroup members // cannot query data from Requester Pays buckets, and queries that retrieve @@ -18319,6 +18524,11 @@ invalidParams.AddNested("EngineVersion", err.(request.ErrInvalidParams)) } } + if s.QueryResultsS3AccessGrantsConfiguration != nil { + if err := s.QueryResultsS3AccessGrantsConfiguration.Validate(); err != nil { + invalidParams.AddNested("QueryResultsS3AccessGrantsConfiguration", err.(request.ErrInvalidParams)) + } + } if s.ResultConfiguration != nil { if err := s.ResultConfiguration.Validate(); err != nil { invalidParams.AddNested("ResultConfiguration", err.(request.ErrInvalidParams)) @@ -18373,12 +18583,24 @@ return s } +// SetIdentityCenterConfiguration sets the IdentityCenterConfiguration field's value. +func (s *WorkGroupConfiguration) SetIdentityCenterConfiguration(v *IdentityCenterConfiguration) *WorkGroupConfiguration { + s.IdentityCenterConfiguration = v + return s +} + // SetPublishCloudWatchMetricsEnabled sets the PublishCloudWatchMetricsEnabled field's value. func (s *WorkGroupConfiguration) SetPublishCloudWatchMetricsEnabled(v bool) *WorkGroupConfiguration { s.PublishCloudWatchMetricsEnabled = &v return s } +// SetQueryResultsS3AccessGrantsConfiguration sets the QueryResultsS3AccessGrantsConfiguration field's value. +func (s *WorkGroupConfiguration) SetQueryResultsS3AccessGrantsConfiguration(v *QueryResultsS3AccessGrantsConfiguration) *WorkGroupConfiguration { + s.QueryResultsS3AccessGrantsConfiguration = v + return s +} + // SetRequesterPaysEnabled sets the RequesterPaysEnabled field's value. func (s *WorkGroupConfiguration) SetRequesterPaysEnabled(v bool) *WorkGroupConfiguration { s.RequesterPaysEnabled = &v @@ -18407,8 +18629,9 @@ // is allowed to scan. BytesScannedCutoffPerQuery *int64 `min:"1e+07" type:"long"` - // Specifies the KMS key that is used to encrypt the user's data stores in Athena. - // This setting does not apply to Athena SQL workgroups. + // Specifies the customer managed KMS key that is used to encrypt the user's + // data stores in Athena. When an Amazon Web Services managed key is used, this + // value is null. This setting does not apply to Athena SQL workgroups. CustomerContentEncryptionConfiguration *CustomerContentEncryptionConfiguration `type:"structure"` // Enforces a minimal level of encryption for the workgroup for query and calculation @@ -18432,12 +18655,17 @@ // workgroup run on the preview engine regardless of this setting. EngineVersion *EngineVersion `type:"structure"` - // Contains the ARN of the execution role for the workgroup + // The ARN of the execution role used to access user resources for Spark sessions + // and Identity Center enabled workgroups. This property applies only to Spark + // enabled workgroups and Identity Center enabled workgroups. ExecutionRole *string `min:"20" type:"string"` // Indicates whether this workgroup enables publishing metrics to Amazon CloudWatch. PublishCloudWatchMetricsEnabled *bool `type:"boolean"` + // Specifies whether Amazon S3 access grants are enabled for query results. + QueryResultsS3AccessGrantsConfiguration *QueryResultsS3AccessGrantsConfiguration `type:"structure"` + // Indicates that the data usage control limit per query is removed. WorkGroupConfiguration$BytesScannedCutoffPerQuery RemoveBytesScannedCutoffPerQuery *bool `type:"boolean"` @@ -18500,6 +18728,11 @@ invalidParams.AddNested("EngineVersion", err.(request.ErrInvalidParams)) } } + if s.QueryResultsS3AccessGrantsConfiguration != nil { + if err := s.QueryResultsS3AccessGrantsConfiguration.Validate(); err != nil { + invalidParams.AddNested("QueryResultsS3AccessGrantsConfiguration", err.(request.ErrInvalidParams)) + } + } if s.ResultConfigurationUpdates != nil { if err := s.ResultConfigurationUpdates.Validate(); err != nil { invalidParams.AddNested("ResultConfigurationUpdates", err.(request.ErrInvalidParams)) @@ -18560,6 +18793,12 @@ return s } +// SetQueryResultsS3AccessGrantsConfiguration sets the QueryResultsS3AccessGrantsConfiguration field's value. +func (s *WorkGroupConfigurationUpdates) SetQueryResultsS3AccessGrantsConfiguration(v *QueryResultsS3AccessGrantsConfiguration) *WorkGroupConfigurationUpdates { + s.QueryResultsS3AccessGrantsConfiguration = v + return s +} + // SetRemoveBytesScannedCutoffPerQuery sets the RemoveBytesScannedCutoffPerQuery field's value. func (s *WorkGroupConfigurationUpdates) SetRemoveBytesScannedCutoffPerQuery(v bool) *WorkGroupConfigurationUpdates { s.RemoveBytesScannedCutoffPerQuery = &v @@ -18600,6 +18839,10 @@ // of this setting. EngineVersion *EngineVersion `type:"structure"` + // The ARN of the IAM Identity Center enabled application associated with the + // workgroup. + IdentityCenterApplicationArn *string `type:"string"` + // The name of the workgroup. Name *string `type:"string"` @@ -18643,6 +18886,12 @@ return s } +// SetIdentityCenterApplicationArn sets the IdentityCenterApplicationArn field's value. +func (s *WorkGroupSummary) SetIdentityCenterApplicationArn(v string) *WorkGroupSummary { + s.IdentityCenterApplicationArn = &v + return s +} + // SetName sets the Name field's value. func (s *WorkGroupSummary) SetName(v string) *WorkGroupSummary { s.Name = &v @@ -18656,6 +18905,18 @@ } const ( + // AuthenticationTypeDirectoryIdentity is a AuthenticationType enum value + AuthenticationTypeDirectoryIdentity = "DIRECTORY_IDENTITY" +) + +// AuthenticationType_Values returns all elements of the AuthenticationType enum +func AuthenticationType_Values() []string { + return []string{ + AuthenticationTypeDirectoryIdentity, + } +} + +const ( // CalculationExecutionStateCreating is a CalculationExecutionState enum value CalculationExecutionStateCreating = "CREATING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/athena/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/athena/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/athena/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/athena/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -17,10 +17,6 @@ // support the API. For more information and to download the driver, see Accessing // Amazon Athena with JDBC (https://docs.aws.amazon.com/athena/latest/ug/connect-with-jdbc.html). // -// For code samples using the Amazon Web Services SDK for Java, see Examples -// and Code Samples (https://docs.aws.amazon.com/athena/latest/ug/code-samples.html) -// in the Amazon Athena User Guide. -// // See https://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18 for more information on this service. // // See athena package documentation for more information. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/auditmanager/api.go golang-github-aws-aws-sdk-go-1.48.14/service/auditmanager/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/auditmanager/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/auditmanager/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -16295,7 +16295,7 @@ // AwsAccounts is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by Scope's // String and GoString methods. - AwsAccounts []*AWSAccount `locationName:"awsAccounts" type:"list" sensitive:"true"` + AwsAccounts []*AWSAccount `locationName:"awsAccounts" min:"1" type:"list" sensitive:"true"` // The Amazon Web Services services that are included in the scope of the assessment. AwsServices []*AWSService `locationName:"awsServices" type:"list"` @@ -16322,6 +16322,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *Scope) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Scope"} + if s.AwsAccounts != nil && len(s.AwsAccounts) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccounts", 1)) + } if s.AwsAccounts != nil { for i, v := range s.AwsAccounts { if v == nil { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/autoscaling/api.go golang-github-aws-aws-sdk-go-1.48.14/service/autoscaling/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/autoscaling/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/autoscaling/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2411,6 +2411,12 @@ Name: opDescribeInstanceRefreshes, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, } if input == nil { @@ -2477,6 +2483,57 @@ return out, req.Send() } +// DescribeInstanceRefreshesPages iterates over the pages of a DescribeInstanceRefreshes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeInstanceRefreshes 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 DescribeInstanceRefreshes operation. +// pageNum := 0 +// err := client.DescribeInstanceRefreshesPages(params, +// func(page *autoscaling.DescribeInstanceRefreshesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AutoScaling) DescribeInstanceRefreshesPages(input *DescribeInstanceRefreshesInput, fn func(*DescribeInstanceRefreshesOutput, bool) bool) error { + return c.DescribeInstanceRefreshesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeInstanceRefreshesPagesWithContext same as DescribeInstanceRefreshesPages 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 *AutoScaling) DescribeInstanceRefreshesPagesWithContext(ctx aws.Context, input *DescribeInstanceRefreshesInput, fn func(*DescribeInstanceRefreshesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeInstanceRefreshesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeInstanceRefreshesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeInstanceRefreshesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeLaunchConfigurations = "DescribeLaunchConfigurations" // DescribeLaunchConfigurationsRequest generates a "aws/request.Request" representing the @@ -2812,6 +2869,12 @@ Name: opDescribeLoadBalancerTargetGroups, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, } if input == nil { @@ -2899,6 +2962,57 @@ return out, req.Send() } +// DescribeLoadBalancerTargetGroupsPages iterates over the pages of a DescribeLoadBalancerTargetGroups operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeLoadBalancerTargetGroups 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 DescribeLoadBalancerTargetGroups operation. +// pageNum := 0 +// err := client.DescribeLoadBalancerTargetGroupsPages(params, +// func(page *autoscaling.DescribeLoadBalancerTargetGroupsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AutoScaling) DescribeLoadBalancerTargetGroupsPages(input *DescribeLoadBalancerTargetGroupsInput, fn func(*DescribeLoadBalancerTargetGroupsOutput, bool) bool) error { + return c.DescribeLoadBalancerTargetGroupsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeLoadBalancerTargetGroupsPagesWithContext same as DescribeLoadBalancerTargetGroupsPages 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 *AutoScaling) DescribeLoadBalancerTargetGroupsPagesWithContext(ctx aws.Context, input *DescribeLoadBalancerTargetGroupsInput, fn func(*DescribeLoadBalancerTargetGroupsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeLoadBalancerTargetGroupsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeLoadBalancerTargetGroupsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeLoadBalancerTargetGroupsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeLoadBalancers = "DescribeLoadBalancers" // DescribeLoadBalancersRequest generates a "aws/request.Request" representing the @@ -2929,6 +3043,12 @@ Name: opDescribeLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, } if input == nil { @@ -3016,6 +3136,57 @@ return out, req.Send() } +// DescribeLoadBalancersPages iterates over the pages of a DescribeLoadBalancers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeLoadBalancers 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 DescribeLoadBalancers operation. +// pageNum := 0 +// err := client.DescribeLoadBalancersPages(params, +// func(page *autoscaling.DescribeLoadBalancersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AutoScaling) DescribeLoadBalancersPages(input *DescribeLoadBalancersInput, fn func(*DescribeLoadBalancersOutput, bool) bool) error { + return c.DescribeLoadBalancersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeLoadBalancersPagesWithContext same as DescribeLoadBalancersPages 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 *AutoScaling) DescribeLoadBalancersPagesWithContext(ctx aws.Context, input *DescribeLoadBalancersInput, fn func(*DescribeLoadBalancersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeLoadBalancersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeLoadBalancersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeLoadBalancersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeMetricCollectionTypes = "DescribeMetricCollectionTypes" // DescribeMetricCollectionTypesRequest generates a "aws/request.Request" representing the @@ -6341,10 +6512,7 @@ // StartInstanceRefresh API operation for Auto Scaling. // -// Starts an instance refresh. During an instance refresh, Amazon EC2 Auto Scaling -// performs a rolling update of instances in an Auto Scaling group. Instances -// are terminated first and then replaced, which temporarily reduces the capacity -// available within your Auto Scaling group. +// Starts an instance refresh. // // This operation is part of the instance refresh feature (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-refresh.html) // in Amazon EC2 Auto Scaling, which helps you update instances in your Auto @@ -8131,6 +8299,11 @@ // in the Amazon EC2 Auto Scaling User Guide. InstanceId *string `min:"1" type:"string"` + // An instance maintenance policy. For more information, see Set instance maintenance + // policy (https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) + // in the Amazon EC2 Auto Scaling User Guide. + InstanceMaintenancePolicy *InstanceMaintenancePolicy `type:"structure"` + // The name of the launch configuration to use to launch instances. // // Conditional: You must specify either a launch template (LaunchTemplate or @@ -8309,6 +8482,11 @@ if s.VPCZoneIdentifier != nil && len(*s.VPCZoneIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("VPCZoneIdentifier", 1)) } + if s.InstanceMaintenancePolicy != nil { + if err := s.InstanceMaintenancePolicy.Validate(); err != nil { + invalidParams.AddNested("InstanceMaintenancePolicy", err.(request.ErrInvalidParams)) + } + } if s.LaunchTemplate != nil { if err := s.LaunchTemplate.Validate(); err != nil { invalidParams.AddNested("LaunchTemplate", err.(request.ErrInvalidParams)) @@ -8422,6 +8600,12 @@ return s } +// SetInstanceMaintenancePolicy sets the InstanceMaintenancePolicy field's value. +func (s *CreateAutoScalingGroupInput) SetInstanceMaintenancePolicy(v *InstanceMaintenancePolicy) *CreateAutoScalingGroupInput { + s.InstanceMaintenancePolicy = v + return s +} + // SetLaunchConfigurationName sets the LaunchConfigurationName field's value. func (s *CreateAutoScalingGroupInput) SetLaunchConfigurationName(v string) *CreateAutoScalingGroupInput { s.LaunchConfigurationName = &v @@ -13434,6 +13618,9 @@ // HealthCheckType is a required field HealthCheckType *string `min:"1" type:"string" required:"true"` + // An instance maintenance policy. + InstanceMaintenancePolicy *InstanceMaintenancePolicy `type:"structure"` + // The EC2 instances associated with the group. Instances []*Instance `type:"list"` @@ -13603,6 +13790,12 @@ return s } +// SetInstanceMaintenancePolicy sets the InstanceMaintenancePolicy field's value. +func (s *Group) SetInstanceMaintenancePolicy(v *InstanceMaintenancePolicy) *Group { + s.InstanceMaintenancePolicy = v + return s +} + // SetInstances sets the Instances field's value. func (s *Group) SetInstances(v []*Instance) *Group { s.Instances = v @@ -13993,6 +14186,78 @@ return s } +// Describes an instance maintenance policy. +// +// For more information, see Set instance maintenance policy (https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) +// in the Amazon EC2 Auto Scaling User Guide. +type InstanceMaintenancePolicy struct { + _ struct{} `type:"structure"` + + // Specifies the upper threshold as a percentage of the desired capacity of + // the Auto Scaling group. It represents the maximum percentage of the group + // that can be in service and healthy, or pending, to support your workload + // when replacing instances. Value range is 100 to 200. After it's set, a value + // of -1 will clear the previously set value. + // + // Both MinHealthyPercentage and MaxHealthyPercentage must be specified, and + // the difference between them cannot be greater than 100. A large range increases + // the number of instances that can be replaced at the same time. + MaxHealthyPercentage *int64 `type:"integer"` + + // Specifies the lower threshold as a percentage of the desired capacity of + // the Auto Scaling group. It represents the minimum percentage of the group + // to keep in service, healthy, and ready to use to support your workload when + // replacing instances. Value range is 0 to 100. After it's set, a value of + // -1 will clear the previously set value. + MinHealthyPercentage *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 InstanceMaintenancePolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceMaintenancePolicy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InstanceMaintenancePolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InstanceMaintenancePolicy"} + if s.MaxHealthyPercentage != nil && *s.MaxHealthyPercentage < -1 { + invalidParams.Add(request.NewErrParamMinValue("MaxHealthyPercentage", -1)) + } + if s.MinHealthyPercentage != nil && *s.MinHealthyPercentage < -1 { + invalidParams.Add(request.NewErrParamMinValue("MinHealthyPercentage", -1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxHealthyPercentage sets the MaxHealthyPercentage field's value. +func (s *InstanceMaintenancePolicy) SetMaxHealthyPercentage(v int64) *InstanceMaintenancePolicy { + s.MaxHealthyPercentage = &v + return s +} + +// SetMinHealthyPercentage sets the MinHealthyPercentage field's value. +func (s *InstanceMaintenancePolicy) SetMinHealthyPercentage(v int64) *InstanceMaintenancePolicy { + s.MinHealthyPercentage = &v + return s +} + // The metadata options for the instances. For more information, see Configuring // the Instance Metadata Options (https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-config.html#launch-configurations-imds) // in the Amazon EC2 Auto Scaling User Guide. @@ -18829,14 +19094,26 @@ // in all cases), or the HealthCheckGracePeriod property otherwise. InstanceWarmup *int64 `type:"integer"` - // The amount of capacity in the Auto Scaling group that must pass your group's - // health checks to allow the operation to continue. The value is expressed - // as a percentage of the desired capacity of the Auto Scaling group (rounded - // up to the nearest integer). The default is 90. - // - // Setting the minimum healthy percentage to 100 percent limits the rate of - // replacement to one instance at a time. In contrast, setting it to 0 percent - // has the effect of replacing all instances at the same time. + // Specifies the maximum percentage of the group that can be in service and + // healthy, or pending, to support your workload when replacing instances. The + // value is expressed as a percentage of the desired capacity of the Auto Scaling + // group. Value range is 100 to 200. + // + // If you specify MaxHealthyPercentage, you must also specify MinHealthyPercentage, + // and the difference between them cannot be greater than 100. A larger range + // increases the number of instances that can be replaced at the same time. + // + // If you do not specify this property, the default is 100 percent, or the percentage + // set in the instance maintenance policy for the Auto Scaling group, if defined. + MaxHealthyPercentage *int64 `min:"100" type:"integer"` + + // Specifies the minimum percentage of the group to keep in service, healthy, + // and ready to use to support your workload to allow the operation to continue. + // The value is expressed as a percentage of the desired capacity of the Auto + // Scaling group. Value range is 0 to 100. + // + // If you do not specify this property, the default is 90 percent, or the percentage + // set in the instance maintenance policy for the Auto Scaling group, if defined. MinHealthyPercentage *int64 `type:"integer"` // Choose the behavior that you want Amazon EC2 Auto Scaling to use if instances @@ -18910,6 +19187,19 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *RefreshPreferences) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RefreshPreferences"} + if s.MaxHealthyPercentage != nil && *s.MaxHealthyPercentage < 100 { + invalidParams.Add(request.NewErrParamMinValue("MaxHealthyPercentage", 100)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetAlarmSpecification sets the AlarmSpecification field's value. func (s *RefreshPreferences) SetAlarmSpecification(v *AlarmSpecification) *RefreshPreferences { s.AlarmSpecification = v @@ -18940,6 +19230,12 @@ return s } +// SetMaxHealthyPercentage sets the MaxHealthyPercentage field's value. +func (s *RefreshPreferences) SetMaxHealthyPercentage(v int64) *RefreshPreferences { + s.MaxHealthyPercentage = &v + return s +} + // SetMinHealthyPercentage sets the MinHealthyPercentage field's value. func (s *RefreshPreferences) SetMinHealthyPercentage(v int64) *RefreshPreferences { s.MinHealthyPercentage = &v @@ -19999,10 +20295,11 @@ DesiredConfiguration *DesiredConfiguration `type:"structure"` // Sets your preferences for the instance refresh so that it performs as expected - // when you start it. Includes the instance warmup time, the minimum healthy - // percentage, and the behaviors that you want Amazon EC2 Auto Scaling to use - // if instances that are in Standby state or protected from scale in are found. - // You can also choose to enable additional features, such as the following: + // when you start it. Includes the instance warmup time, the minimum and maximum + // healthy percentages, and the behaviors that you want Amazon EC2 Auto Scaling + // to use if instances that are in Standby state or protected from scale in + // are found. You can also choose to enable additional features, such as the + // following: // // * Auto rollback // @@ -20049,6 +20346,11 @@ invalidParams.AddNested("DesiredConfiguration", err.(request.ErrInvalidParams)) } } + if s.Preferences != nil { + if err := s.Preferences.Validate(); err != nil { + invalidParams.AddNested("Preferences", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -21155,6 +21457,11 @@ // Only specify EC2 if you must clear a value that was previously set. HealthCheckType *string `min:"1" type:"string"` + // An instance maintenance policy. For more information, see Set instance maintenance + // policy (https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) + // in the Amazon EC2 Auto Scaling User Guide. + InstanceMaintenancePolicy *InstanceMaintenancePolicy `type:"structure"` + // The name of the launch configuration. If you specify LaunchConfigurationName // in your update request, you can't specify LaunchTemplate or MixedInstancesPolicy. LaunchConfigurationName *string `min:"1" type:"string"` @@ -21272,6 +21579,11 @@ if s.VPCZoneIdentifier != nil && len(*s.VPCZoneIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("VPCZoneIdentifier", 1)) } + if s.InstanceMaintenancePolicy != nil { + if err := s.InstanceMaintenancePolicy.Validate(); err != nil { + invalidParams.AddNested("InstanceMaintenancePolicy", err.(request.ErrInvalidParams)) + } + } if s.LaunchTemplate != nil { if err := s.LaunchTemplate.Validate(); err != nil { invalidParams.AddNested("LaunchTemplate", err.(request.ErrInvalidParams)) @@ -21349,6 +21661,12 @@ return s } +// SetInstanceMaintenancePolicy sets the InstanceMaintenancePolicy field's value. +func (s *UpdateAutoScalingGroupInput) SetInstanceMaintenancePolicy(v *InstanceMaintenancePolicy) *UpdateAutoScalingGroupInput { + s.InstanceMaintenancePolicy = v + return s +} + // SetLaunchConfigurationName sets the LaunchConfigurationName field's value. func (s *UpdateAutoScalingGroupInput) SetLaunchConfigurationName(v string) *UpdateAutoScalingGroupInput { s.LaunchConfigurationName = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/autoscaling/autoscalingiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/autoscaling/autoscalingiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/autoscaling/autoscalingiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/autoscaling/autoscalingiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -166,6 +166,9 @@ DescribeInstanceRefreshesWithContext(aws.Context, *autoscaling.DescribeInstanceRefreshesInput, ...request.Option) (*autoscaling.DescribeInstanceRefreshesOutput, error) DescribeInstanceRefreshesRequest(*autoscaling.DescribeInstanceRefreshesInput) (*request.Request, *autoscaling.DescribeInstanceRefreshesOutput) + DescribeInstanceRefreshesPages(*autoscaling.DescribeInstanceRefreshesInput, func(*autoscaling.DescribeInstanceRefreshesOutput, bool) bool) error + DescribeInstanceRefreshesPagesWithContext(aws.Context, *autoscaling.DescribeInstanceRefreshesInput, func(*autoscaling.DescribeInstanceRefreshesOutput, bool) bool, ...request.Option) error + DescribeLaunchConfigurations(*autoscaling.DescribeLaunchConfigurationsInput) (*autoscaling.DescribeLaunchConfigurationsOutput, error) DescribeLaunchConfigurationsWithContext(aws.Context, *autoscaling.DescribeLaunchConfigurationsInput, ...request.Option) (*autoscaling.DescribeLaunchConfigurationsOutput, error) DescribeLaunchConfigurationsRequest(*autoscaling.DescribeLaunchConfigurationsInput) (*request.Request, *autoscaling.DescribeLaunchConfigurationsOutput) @@ -185,10 +188,16 @@ DescribeLoadBalancerTargetGroupsWithContext(aws.Context, *autoscaling.DescribeLoadBalancerTargetGroupsInput, ...request.Option) (*autoscaling.DescribeLoadBalancerTargetGroupsOutput, error) DescribeLoadBalancerTargetGroupsRequest(*autoscaling.DescribeLoadBalancerTargetGroupsInput) (*request.Request, *autoscaling.DescribeLoadBalancerTargetGroupsOutput) + DescribeLoadBalancerTargetGroupsPages(*autoscaling.DescribeLoadBalancerTargetGroupsInput, func(*autoscaling.DescribeLoadBalancerTargetGroupsOutput, bool) bool) error + DescribeLoadBalancerTargetGroupsPagesWithContext(aws.Context, *autoscaling.DescribeLoadBalancerTargetGroupsInput, func(*autoscaling.DescribeLoadBalancerTargetGroupsOutput, bool) bool, ...request.Option) error + DescribeLoadBalancers(*autoscaling.DescribeLoadBalancersInput) (*autoscaling.DescribeLoadBalancersOutput, error) DescribeLoadBalancersWithContext(aws.Context, *autoscaling.DescribeLoadBalancersInput, ...request.Option) (*autoscaling.DescribeLoadBalancersOutput, error) DescribeLoadBalancersRequest(*autoscaling.DescribeLoadBalancersInput) (*request.Request, *autoscaling.DescribeLoadBalancersOutput) + DescribeLoadBalancersPages(*autoscaling.DescribeLoadBalancersInput, func(*autoscaling.DescribeLoadBalancersOutput, bool) bool) error + DescribeLoadBalancersPagesWithContext(aws.Context, *autoscaling.DescribeLoadBalancersInput, func(*autoscaling.DescribeLoadBalancersOutput, bool) bool, ...request.Option) error + DescribeMetricCollectionTypes(*autoscaling.DescribeMetricCollectionTypesInput) (*autoscaling.DescribeMetricCollectionTypesOutput, error) DescribeMetricCollectionTypesWithContext(aws.Context, *autoscaling.DescribeMetricCollectionTypesInput, ...request.Option) (*autoscaling.DescribeMetricCollectionTypesOutput, error) DescribeMetricCollectionTypesRequest(*autoscaling.DescribeMetricCollectionTypesInput) (*request.Request, *autoscaling.DescribeMetricCollectionTypesOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/autoscaling/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/autoscaling/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/autoscaling/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/autoscaling/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -389,6 +389,7 @@ input := &autoscaling.CreateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-asg"), DesiredCapacity: aws.Int64(4), + DesiredCapacityType: aws.String("units"), MaxSize: aws.Int64(100), MinSize: aws.Int64(0), MixedInstancesPolicy: &autoscaling.MixedInstancesPolicy{ @@ -2060,6 +2061,7 @@ }, AutoRollback: aws.Bool(true), InstanceWarmup: aws.Int64(200), + MaxHealthyPercentage: aws.Int64(120), MinHealthyPercentage: aws.Int64(90), }, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/api.go golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,8416 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi + +import ( + "fmt" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +const opCreateCapability = "CreateCapability" + +// CreateCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the CreateCapability operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateCapability for more information on using the CreateCapability +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateCapabilityRequest method. +// req, resp := client.CreateCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateCapability +func (c *B2bi) CreateCapabilityRequest(input *CreateCapabilityInput) (req *request.Request, output *CreateCapabilityOutput) { + op := &request.Operation{ + Name: opCreateCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateCapabilityInput{} + } + + output = &CreateCapabilityOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCapability API operation for AWS B2B Data Interchange. +// +// Instantiates a capability based on the specified parameters. Capabilities +// contain the information necessary to process incoming EDI (electronic data +// interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreateCapability for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateCapability +func (c *B2bi) CreateCapability(input *CreateCapabilityInput) (*CreateCapabilityOutput, error) { + req, out := c.CreateCapabilityRequest(input) + return out, req.Send() +} + +// CreateCapabilityWithContext is the same as CreateCapability with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCapability for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) CreateCapabilityWithContext(ctx aws.Context, input *CreateCapabilityInput, opts ...request.Option) (*CreateCapabilityOutput, error) { + req, out := c.CreateCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreatePartnership = "CreatePartnership" + +// CreatePartnershipRequest generates a "aws/request.Request" representing the +// client's request for the CreatePartnership operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreatePartnership for more information on using the CreatePartnership +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreatePartnershipRequest method. +// req, resp := client.CreatePartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreatePartnership +func (c *B2bi) CreatePartnershipRequest(input *CreatePartnershipInput) (req *request.Request, output *CreatePartnershipOutput) { + op := &request.Operation{ + Name: opCreatePartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreatePartnershipInput{} + } + + output = &CreatePartnershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePartnership API operation for AWS B2B Data Interchange. +// +// Creates a partnership between a customer and a trading partner, based on +// the supplied parameters. Partnerships link trading partners with your profile +// and a specific transformer, so that the EDI (electronic data interchange) +// documents that they upload to Amazon S3 can be processed according to their +// specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreatePartnership for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreatePartnership +func (c *B2bi) CreatePartnership(input *CreatePartnershipInput) (*CreatePartnershipOutput, error) { + req, out := c.CreatePartnershipRequest(input) + return out, req.Send() +} + +// CreatePartnershipWithContext is the same as CreatePartnership with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePartnership for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) CreatePartnershipWithContext(ctx aws.Context, input *CreatePartnershipInput, opts ...request.Option) (*CreatePartnershipOutput, error) { + req, out := c.CreatePartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateProfile = "CreateProfile" + +// CreateProfileRequest generates a "aws/request.Request" representing the +// client's request for the CreateProfile operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateProfile for more information on using the CreateProfile +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateProfileRequest method. +// req, resp := client.CreateProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateProfile +func (c *B2bi) CreateProfileRequest(input *CreateProfileInput) (req *request.Request, output *CreateProfileOutput) { + op := &request.Operation{ + Name: opCreateProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateProfileInput{} + } + + output = &CreateProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateProfile API operation for AWS B2B Data Interchange. +// +// Creates a customer profile. You can have up to five customer profiles, each +// representing a distinct private network. Profiles contain basic information +// about you and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreateProfile for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateProfile +func (c *B2bi) CreateProfile(input *CreateProfileInput) (*CreateProfileOutput, error) { + req, out := c.CreateProfileRequest(input) + return out, req.Send() +} + +// CreateProfileWithContext is the same as CreateProfile with the addition of +// the ability to pass a context and additional request options. +// +// See CreateProfile for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) CreateProfileWithContext(ctx aws.Context, input *CreateProfileInput, opts ...request.Option) (*CreateProfileOutput, error) { + req, out := c.CreateProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateTransformer = "CreateTransformer" + +// CreateTransformerRequest generates a "aws/request.Request" representing the +// client's request for the CreateTransformer operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateTransformer for more information on using the CreateTransformer +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateTransformerRequest method. +// req, resp := client.CreateTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateTransformer +func (c *B2bi) CreateTransformerRequest(input *CreateTransformerInput) (req *request.Request, output *CreateTransformerOutput) { + op := &request.Operation{ + Name: opCreateTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateTransformerInput{} + } + + output = &CreateTransformerOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTransformer API operation for AWS B2B Data Interchange. +// +// Creates a transformer. Transformers describe how to process the incoming +// EDI (electronic data interchange) documents, and extract the necessary information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreateTransformer for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateTransformer +func (c *B2bi) CreateTransformer(input *CreateTransformerInput) (*CreateTransformerOutput, error) { + req, out := c.CreateTransformerRequest(input) + return out, req.Send() +} + +// CreateTransformerWithContext is the same as CreateTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTransformer for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) CreateTransformerWithContext(ctx aws.Context, input *CreateTransformerInput, opts ...request.Option) (*CreateTransformerOutput, error) { + req, out := c.CreateTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteCapability = "DeleteCapability" + +// DeleteCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCapability operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteCapability for more information on using the DeleteCapability +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteCapabilityRequest method. +// req, resp := client.DeleteCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteCapability +func (c *B2bi) DeleteCapabilityRequest(input *DeleteCapabilityInput) (req *request.Request, output *DeleteCapabilityOutput) { + op := &request.Operation{ + Name: opDeleteCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteCapabilityInput{} + } + + output = &DeleteCapabilityOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteCapability API operation for AWS B2B Data Interchange. +// +// Deletes the specified capability. Capabilities contain the information necessary +// to process incoming EDI (electronic data interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeleteCapability for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteCapability +func (c *B2bi) DeleteCapability(input *DeleteCapabilityInput) (*DeleteCapabilityOutput, error) { + req, out := c.DeleteCapabilityRequest(input) + return out, req.Send() +} + +// DeleteCapabilityWithContext is the same as DeleteCapability with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCapability for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) DeleteCapabilityWithContext(ctx aws.Context, input *DeleteCapabilityInput, opts ...request.Option) (*DeleteCapabilityOutput, error) { + req, out := c.DeleteCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeletePartnership = "DeletePartnership" + +// DeletePartnershipRequest generates a "aws/request.Request" representing the +// client's request for the DeletePartnership operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeletePartnership for more information on using the DeletePartnership +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeletePartnershipRequest method. +// req, resp := client.DeletePartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeletePartnership +func (c *B2bi) DeletePartnershipRequest(input *DeletePartnershipInput) (req *request.Request, output *DeletePartnershipOutput) { + op := &request.Operation{ + Name: opDeletePartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeletePartnershipInput{} + } + + output = &DeletePartnershipOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeletePartnership API operation for AWS B2B Data Interchange. +// +// Deletes the specified partnership. Partnerships link trading partners with +// your profile and a specific transformer, so that the EDI (electronic data +// interchange) documents that they upload to Amazon S3 can be processed according +// to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeletePartnership for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeletePartnership +func (c *B2bi) DeletePartnership(input *DeletePartnershipInput) (*DeletePartnershipOutput, error) { + req, out := c.DeletePartnershipRequest(input) + return out, req.Send() +} + +// DeletePartnershipWithContext is the same as DeletePartnership with the addition of +// the ability to pass a context and additional request options. +// +// See DeletePartnership for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) DeletePartnershipWithContext(ctx aws.Context, input *DeletePartnershipInput, opts ...request.Option) (*DeletePartnershipOutput, error) { + req, out := c.DeletePartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteProfile = "DeleteProfile" + +// DeleteProfileRequest generates a "aws/request.Request" representing the +// client's request for the DeleteProfile operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteProfile for more information on using the DeleteProfile +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteProfileRequest method. +// req, resp := client.DeleteProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteProfile +func (c *B2bi) DeleteProfileRequest(input *DeleteProfileInput) (req *request.Request, output *DeleteProfileOutput) { + op := &request.Operation{ + Name: opDeleteProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteProfileInput{} + } + + output = &DeleteProfileOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteProfile API operation for AWS B2B Data Interchange. +// +// Deletes the specified profile. Profiles contain basic information about you +// and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeleteProfile for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteProfile +func (c *B2bi) DeleteProfile(input *DeleteProfileInput) (*DeleteProfileOutput, error) { + req, out := c.DeleteProfileRequest(input) + return out, req.Send() +} + +// DeleteProfileWithContext is the same as DeleteProfile with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteProfile for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) DeleteProfileWithContext(ctx aws.Context, input *DeleteProfileInput, opts ...request.Option) (*DeleteProfileOutput, error) { + req, out := c.DeleteProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteTransformer = "DeleteTransformer" + +// DeleteTransformerRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTransformer operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteTransformer for more information on using the DeleteTransformer +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteTransformerRequest method. +// req, resp := client.DeleteTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteTransformer +func (c *B2bi) DeleteTransformerRequest(input *DeleteTransformerInput) (req *request.Request, output *DeleteTransformerOutput) { + op := &request.Operation{ + Name: opDeleteTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteTransformerInput{} + } + + output = &DeleteTransformerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTransformer API operation for AWS B2B Data Interchange. +// +// Deletes the specified transformer. Transformers describe how to process the +// incoming EDI (electronic data interchange) documents, and extract the necessary +// information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeleteTransformer for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteTransformer +func (c *B2bi) DeleteTransformer(input *DeleteTransformerInput) (*DeleteTransformerOutput, error) { + req, out := c.DeleteTransformerRequest(input) + return out, req.Send() +} + +// DeleteTransformerWithContext is the same as DeleteTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTransformer for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) DeleteTransformerWithContext(ctx aws.Context, input *DeleteTransformerInput, opts ...request.Option) (*DeleteTransformerOutput, error) { + req, out := c.DeleteTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCapability = "GetCapability" + +// GetCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the GetCapability operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetCapability for more information on using the GetCapability +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetCapabilityRequest method. +// req, resp := client.GetCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetCapability +func (c *B2bi) GetCapabilityRequest(input *GetCapabilityInput) (req *request.Request, output *GetCapabilityOutput) { + op := &request.Operation{ + Name: opGetCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetCapabilityInput{} + } + + output = &GetCapabilityOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCapability API operation for AWS B2B Data Interchange. +// +// Retrieves the details for the specified capability. Capabilities contain +// the information necessary to process incoming EDI (electronic data interchange) +// documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetCapability for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetCapability +func (c *B2bi) GetCapability(input *GetCapabilityInput) (*GetCapabilityOutput, error) { + req, out := c.GetCapabilityRequest(input) + return out, req.Send() +} + +// GetCapabilityWithContext is the same as GetCapability with the addition of +// the ability to pass a context and additional request options. +// +// See GetCapability for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) GetCapabilityWithContext(ctx aws.Context, input *GetCapabilityInput, opts ...request.Option) (*GetCapabilityOutput, error) { + req, out := c.GetCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetPartnership = "GetPartnership" + +// GetPartnershipRequest generates a "aws/request.Request" representing the +// client's request for the GetPartnership operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetPartnership for more information on using the GetPartnership +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetPartnershipRequest method. +// req, resp := client.GetPartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetPartnership +func (c *B2bi) GetPartnershipRequest(input *GetPartnershipInput) (req *request.Request, output *GetPartnershipOutput) { + op := &request.Operation{ + Name: opGetPartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetPartnershipInput{} + } + + output = &GetPartnershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPartnership API operation for AWS B2B Data Interchange. +// +// Retrieves the details for a partnership, based on the partner and profile +// IDs specified. Partnerships link trading partners with your profile and a +// specific transformer, so that the EDI (electronic data interchange) documents +// that they upload to Amazon S3 can be processed according to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetPartnership for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetPartnership +func (c *B2bi) GetPartnership(input *GetPartnershipInput) (*GetPartnershipOutput, error) { + req, out := c.GetPartnershipRequest(input) + return out, req.Send() +} + +// GetPartnershipWithContext is the same as GetPartnership with the addition of +// the ability to pass a context and additional request options. +// +// See GetPartnership for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) GetPartnershipWithContext(ctx aws.Context, input *GetPartnershipInput, opts ...request.Option) (*GetPartnershipOutput, error) { + req, out := c.GetPartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetProfile = "GetProfile" + +// GetProfileRequest generates a "aws/request.Request" representing the +// client's request for the GetProfile operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetProfile for more information on using the GetProfile +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetProfileRequest method. +// req, resp := client.GetProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetProfile +func (c *B2bi) GetProfileRequest(input *GetProfileInput) (req *request.Request, output *GetProfileOutput) { + op := &request.Operation{ + Name: opGetProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetProfileInput{} + } + + output = &GetProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetProfile API operation for AWS B2B Data Interchange. +// +// Retrieves the details for the profile specified by the profile ID. Profiles +// contain basic information about you and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetProfile for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetProfile +func (c *B2bi) GetProfile(input *GetProfileInput) (*GetProfileOutput, error) { + req, out := c.GetProfileRequest(input) + return out, req.Send() +} + +// GetProfileWithContext is the same as GetProfile with the addition of +// the ability to pass a context and additional request options. +// +// See GetProfile for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) GetProfileWithContext(ctx aws.Context, input *GetProfileInput, opts ...request.Option) (*GetProfileOutput, error) { + req, out := c.GetProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTransformer = "GetTransformer" + +// GetTransformerRequest generates a "aws/request.Request" representing the +// client's request for the GetTransformer operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetTransformer for more information on using the GetTransformer +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetTransformerRequest method. +// req, resp := client.GetTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformer +func (c *B2bi) GetTransformerRequest(input *GetTransformerInput) (req *request.Request, output *GetTransformerOutput) { + op := &request.Operation{ + Name: opGetTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTransformerInput{} + } + + output = &GetTransformerOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTransformer API operation for AWS B2B Data Interchange. +// +// Retrieves the details for the transformer specified by the transformer ID. +// Transformers describe how to process the incoming EDI (electronic data interchange) +// documents, and extract the necessary information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetTransformer for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformer +func (c *B2bi) GetTransformer(input *GetTransformerInput) (*GetTransformerOutput, error) { + req, out := c.GetTransformerRequest(input) + return out, req.Send() +} + +// GetTransformerWithContext is the same as GetTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See GetTransformer for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) GetTransformerWithContext(ctx aws.Context, input *GetTransformerInput, opts ...request.Option) (*GetTransformerOutput, error) { + req, out := c.GetTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTransformerJob = "GetTransformerJob" + +// GetTransformerJobRequest generates a "aws/request.Request" representing the +// client's request for the GetTransformerJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetTransformerJob for more information on using the GetTransformerJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetTransformerJobRequest method. +// req, resp := client.GetTransformerJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformerJob +func (c *B2bi) GetTransformerJobRequest(input *GetTransformerJobInput) (req *request.Request, output *GetTransformerJobOutput) { + op := &request.Operation{ + Name: opGetTransformerJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTransformerJobInput{} + } + + output = &GetTransformerJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTransformerJob API operation for AWS B2B Data Interchange. +// +// Returns the details of the transformer run, based on the Transformer job +// ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetTransformerJob for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformerJob +func (c *B2bi) GetTransformerJob(input *GetTransformerJobInput) (*GetTransformerJobOutput, error) { + req, out := c.GetTransformerJobRequest(input) + return out, req.Send() +} + +// GetTransformerJobWithContext is the same as GetTransformerJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetTransformerJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) GetTransformerJobWithContext(ctx aws.Context, input *GetTransformerJobInput, opts ...request.Option) (*GetTransformerJobOutput, error) { + req, out := c.GetTransformerJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListCapabilities = "ListCapabilities" + +// ListCapabilitiesRequest generates a "aws/request.Request" representing the +// client's request for the ListCapabilities operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListCapabilities for more information on using the ListCapabilities +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListCapabilitiesRequest method. +// req, resp := client.ListCapabilitiesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListCapabilities +func (c *B2bi) ListCapabilitiesRequest(input *ListCapabilitiesInput) (req *request.Request, output *ListCapabilitiesOutput) { + op := &request.Operation{ + Name: opListCapabilities, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCapabilitiesInput{} + } + + output = &ListCapabilitiesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCapabilities API operation for AWS B2B Data Interchange. +// +// Lists the capabilities associated with your Amazon Web Services account for +// your current or specified region. Capabilities contain the information necessary +// to process incoming EDI (electronic data interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListCapabilities for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListCapabilities +func (c *B2bi) ListCapabilities(input *ListCapabilitiesInput) (*ListCapabilitiesOutput, error) { + req, out := c.ListCapabilitiesRequest(input) + return out, req.Send() +} + +// ListCapabilitiesWithContext is the same as ListCapabilities with the addition of +// the ability to pass a context and additional request options. +// +// See ListCapabilities for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListCapabilitiesWithContext(ctx aws.Context, input *ListCapabilitiesInput, opts ...request.Option) (*ListCapabilitiesOutput, error) { + req, out := c.ListCapabilitiesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCapabilitiesPages iterates over the pages of a ListCapabilities operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCapabilities method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListCapabilities operation. +// pageNum := 0 +// err := client.ListCapabilitiesPages(params, +// func(page *b2bi.ListCapabilitiesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListCapabilitiesPages(input *ListCapabilitiesInput, fn func(*ListCapabilitiesOutput, bool) bool) error { + return c.ListCapabilitiesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCapabilitiesPagesWithContext same as ListCapabilitiesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListCapabilitiesPagesWithContext(ctx aws.Context, input *ListCapabilitiesInput, fn func(*ListCapabilitiesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCapabilitiesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCapabilitiesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCapabilitiesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListPartnerships = "ListPartnerships" + +// ListPartnershipsRequest generates a "aws/request.Request" representing the +// client's request for the ListPartnerships operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListPartnerships for more information on using the ListPartnerships +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListPartnershipsRequest method. +// req, resp := client.ListPartnershipsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListPartnerships +func (c *B2bi) ListPartnershipsRequest(input *ListPartnershipsInput) (req *request.Request, output *ListPartnershipsOutput) { + op := &request.Operation{ + Name: opListPartnerships, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPartnershipsInput{} + } + + output = &ListPartnershipsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPartnerships API operation for AWS B2B Data Interchange. +// +// Lists the partnerships associated with your Amazon Web Services account for +// your current or specified region. Partnerships link trading partners with +// your profile and a specific transformer, so that the EDI (electronic data +// interchange) documents that they upload to Amazon S3 can be processed according +// to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListPartnerships for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListPartnerships +func (c *B2bi) ListPartnerships(input *ListPartnershipsInput) (*ListPartnershipsOutput, error) { + req, out := c.ListPartnershipsRequest(input) + return out, req.Send() +} + +// ListPartnershipsWithContext is the same as ListPartnerships with the addition of +// the ability to pass a context and additional request options. +// +// See ListPartnerships for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListPartnershipsWithContext(ctx aws.Context, input *ListPartnershipsInput, opts ...request.Option) (*ListPartnershipsOutput, error) { + req, out := c.ListPartnershipsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPartnershipsPages iterates over the pages of a ListPartnerships operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPartnerships method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListPartnerships operation. +// pageNum := 0 +// err := client.ListPartnershipsPages(params, +// func(page *b2bi.ListPartnershipsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListPartnershipsPages(input *ListPartnershipsInput, fn func(*ListPartnershipsOutput, bool) bool) error { + return c.ListPartnershipsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPartnershipsPagesWithContext same as ListPartnershipsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListPartnershipsPagesWithContext(ctx aws.Context, input *ListPartnershipsInput, fn func(*ListPartnershipsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPartnershipsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPartnershipsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPartnershipsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProfiles = "ListProfiles" + +// ListProfilesRequest generates a "aws/request.Request" representing the +// client's request for the ListProfiles operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListProfiles for more information on using the ListProfiles +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListProfilesRequest method. +// req, resp := client.ListProfilesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListProfiles +func (c *B2bi) ListProfilesRequest(input *ListProfilesInput) (req *request.Request, output *ListProfilesOutput) { + op := &request.Operation{ + Name: opListProfiles, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListProfilesInput{} + } + + output = &ListProfilesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListProfiles API operation for AWS B2B Data Interchange. +// +// Lists the profiles associated with your Amazon Web Services account for your +// current or specified region. Profiles contain basic information about you +// and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListProfiles for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListProfiles +func (c *B2bi) ListProfiles(input *ListProfilesInput) (*ListProfilesOutput, error) { + req, out := c.ListProfilesRequest(input) + return out, req.Send() +} + +// ListProfilesWithContext is the same as ListProfiles with the addition of +// the ability to pass a context and additional request options. +// +// See ListProfiles for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListProfilesWithContext(ctx aws.Context, input *ListProfilesInput, opts ...request.Option) (*ListProfilesOutput, error) { + req, out := c.ListProfilesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListProfilesPages iterates over the pages of a ListProfiles operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProfiles method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListProfiles operation. +// pageNum := 0 +// err := client.ListProfilesPages(params, +// func(page *b2bi.ListProfilesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListProfilesPages(input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool) error { + return c.ListProfilesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListProfilesPagesWithContext same as ListProfilesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListProfilesPagesWithContext(ctx aws.Context, input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProfilesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProfilesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProfilesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTagsForResource +func (c *B2bi) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS B2B Data Interchange. +// +// Lists all of the tags associated with the Amazon Resource Name (ARN) that +// you specify. The resource can be a capability, partnership, profile, or transformer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTagsForResource +func (c *B2bi) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListTransformers = "ListTransformers" + +// ListTransformersRequest generates a "aws/request.Request" representing the +// client's request for the ListTransformers operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTransformers for more information on using the ListTransformers +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTransformersRequest method. +// req, resp := client.ListTransformersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTransformers +func (c *B2bi) ListTransformersRequest(input *ListTransformersInput) (req *request.Request, output *ListTransformersOutput) { + op := &request.Operation{ + Name: opListTransformers, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTransformersInput{} + } + + output = &ListTransformersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTransformers API operation for AWS B2B Data Interchange. +// +// Lists the available transformers. Transformers describe how to process the +// incoming EDI (electronic data interchange) documents, and extract the necessary +// information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListTransformers for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTransformers +func (c *B2bi) ListTransformers(input *ListTransformersInput) (*ListTransformersOutput, error) { + req, out := c.ListTransformersRequest(input) + return out, req.Send() +} + +// ListTransformersWithContext is the same as ListTransformers with the addition of +// the ability to pass a context and additional request options. +// +// See ListTransformers for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListTransformersWithContext(ctx aws.Context, input *ListTransformersInput, opts ...request.Option) (*ListTransformersOutput, error) { + req, out := c.ListTransformersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTransformersPages iterates over the pages of a ListTransformers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTransformers method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTransformers operation. +// pageNum := 0 +// err := client.ListTransformersPages(params, +// func(page *b2bi.ListTransformersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListTransformersPages(input *ListTransformersInput, fn func(*ListTransformersOutput, bool) bool) error { + return c.ListTransformersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTransformersPagesWithContext same as ListTransformersPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListTransformersPagesWithContext(ctx aws.Context, input *ListTransformersInput, fn func(*ListTransformersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTransformersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTransformersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTransformersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opStartTransformerJob = "StartTransformerJob" + +// StartTransformerJobRequest generates a "aws/request.Request" representing the +// client's request for the StartTransformerJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartTransformerJob for more information on using the StartTransformerJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartTransformerJobRequest method. +// req, resp := client.StartTransformerJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/StartTransformerJob +func (c *B2bi) StartTransformerJobRequest(input *StartTransformerJobInput) (req *request.Request, output *StartTransformerJobOutput) { + op := &request.Operation{ + Name: opStartTransformerJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartTransformerJobInput{} + } + + output = &StartTransformerJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartTransformerJob API operation for AWS B2B Data Interchange. +// +// Runs a job, using a transformer, to parse input EDI (electronic data interchange) +// file into the output structures used by Amazon Web Services B2BI Data Interchange. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation StartTransformerJob for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/StartTransformerJob +func (c *B2bi) StartTransformerJob(input *StartTransformerJobInput) (*StartTransformerJobOutput, error) { + req, out := c.StartTransformerJobRequest(input) + return out, req.Send() +} + +// StartTransformerJobWithContext is the same as StartTransformerJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartTransformerJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) StartTransformerJobWithContext(ctx aws.Context, input *StartTransformerJobInput, opts ...request.Option) (*StartTransformerJobOutput, error) { + req, out := c.StartTransformerJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TagResource +func (c *B2bi) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS B2B Data Interchange. +// +// Attaches a key-value pair to a resource, as identified by its Amazon Resource +// Name (ARN). Resources are capability, partnership, profile, transformers +// and other entities. +// +// There is no response returned from this call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TagResource +func (c *B2bi) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTestMapping = "TestMapping" + +// TestMappingRequest generates a "aws/request.Request" representing the +// client's request for the TestMapping operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TestMapping for more information on using the TestMapping +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TestMappingRequest method. +// req, resp := client.TestMappingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestMapping +func (c *B2bi) TestMappingRequest(input *TestMappingInput) (req *request.Request, output *TestMappingOutput) { + op := &request.Operation{ + Name: opTestMapping, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TestMappingInput{} + } + + output = &TestMappingOutput{} + req = c.newRequest(op, input, output) + return +} + +// TestMapping API operation for AWS B2B Data Interchange. +// +// Maps the input file according to the provided template file. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation TestMapping for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestMapping +func (c *B2bi) TestMapping(input *TestMappingInput) (*TestMappingOutput, error) { + req, out := c.TestMappingRequest(input) + return out, req.Send() +} + +// TestMappingWithContext is the same as TestMapping with the addition of +// the ability to pass a context and additional request options. +// +// See TestMapping for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) TestMappingWithContext(ctx aws.Context, input *TestMappingInput, opts ...request.Option) (*TestMappingOutput, error) { + req, out := c.TestMappingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTestParsing = "TestParsing" + +// TestParsingRequest generates a "aws/request.Request" representing the +// client's request for the TestParsing operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TestParsing for more information on using the TestParsing +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TestParsingRequest method. +// req, resp := client.TestParsingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestParsing +func (c *B2bi) TestParsingRequest(input *TestParsingInput) (req *request.Request, output *TestParsingOutput) { + op := &request.Operation{ + Name: opTestParsing, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TestParsingInput{} + } + + output = &TestParsingOutput{} + req = c.newRequest(op, input, output) + return +} + +// TestParsing API operation for AWS B2B Data Interchange. +// +// Parses the input EDI (electronic data interchange) file. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation TestParsing for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestParsing +func (c *B2bi) TestParsing(input *TestParsingInput) (*TestParsingOutput, error) { + req, out := c.TestParsingRequest(input) + return out, req.Send() +} + +// TestParsingWithContext is the same as TestParsing with the addition of +// the ability to pass a context and additional request options. +// +// See TestParsing for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) TestParsingWithContext(ctx aws.Context, input *TestParsingInput, opts ...request.Option) (*TestParsingOutput, error) { + req, out := c.TestParsingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UntagResource +func (c *B2bi) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS B2B Data Interchange. +// +// Detaches a key-value pair from the specified resource, as identified by its +// Amazon Resource Name (ARN). Resources are capability, partnership, profile, +// transformers and other entities. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UntagResource +func (c *B2bi) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateCapability = "UpdateCapability" + +// UpdateCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the UpdateCapability operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateCapability for more information on using the UpdateCapability +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateCapabilityRequest method. +// req, resp := client.UpdateCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateCapability +func (c *B2bi) UpdateCapabilityRequest(input *UpdateCapabilityInput) (req *request.Request, output *UpdateCapabilityOutput) { + op := &request.Operation{ + Name: opUpdateCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateCapabilityInput{} + } + + output = &UpdateCapabilityOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateCapability API operation for AWS B2B Data Interchange. +// +// Updates some of the parameters for a capability, based on the specified parameters. +// Capabilities contain the information necessary to process incoming EDI (electronic +// data interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdateCapability for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateCapability +func (c *B2bi) UpdateCapability(input *UpdateCapabilityInput) (*UpdateCapabilityOutput, error) { + req, out := c.UpdateCapabilityRequest(input) + return out, req.Send() +} + +// UpdateCapabilityWithContext is the same as UpdateCapability with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateCapability for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) UpdateCapabilityWithContext(ctx aws.Context, input *UpdateCapabilityInput, opts ...request.Option) (*UpdateCapabilityOutput, error) { + req, out := c.UpdateCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdatePartnership = "UpdatePartnership" + +// UpdatePartnershipRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePartnership operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdatePartnership for more information on using the UpdatePartnership +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdatePartnershipRequest method. +// req, resp := client.UpdatePartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdatePartnership +func (c *B2bi) UpdatePartnershipRequest(input *UpdatePartnershipInput) (req *request.Request, output *UpdatePartnershipOutput) { + op := &request.Operation{ + Name: opUpdatePartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdatePartnershipInput{} + } + + output = &UpdatePartnershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePartnership API operation for AWS B2B Data Interchange. +// +// Updates some of the parameters for a partnership between a customer and trading +// partner. Partnerships link trading partners with your profile and a specific +// transformer, so that the EDI (electronic data interchange) documents that +// they upload to Amazon S3 can be processed according to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdatePartnership for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdatePartnership +func (c *B2bi) UpdatePartnership(input *UpdatePartnershipInput) (*UpdatePartnershipOutput, error) { + req, out := c.UpdatePartnershipRequest(input) + return out, req.Send() +} + +// UpdatePartnershipWithContext is the same as UpdatePartnership with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePartnership for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) UpdatePartnershipWithContext(ctx aws.Context, input *UpdatePartnershipInput, opts ...request.Option) (*UpdatePartnershipOutput, error) { + req, out := c.UpdatePartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateProfile = "UpdateProfile" + +// UpdateProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateProfile operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateProfile for more information on using the UpdateProfile +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateProfileRequest method. +// req, resp := client.UpdateProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateProfile +func (c *B2bi) UpdateProfileRequest(input *UpdateProfileInput) (req *request.Request, output *UpdateProfileOutput) { + op := &request.Operation{ + Name: opUpdateProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateProfileInput{} + } + + output = &UpdateProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateProfile API operation for AWS B2B Data Interchange. +// +// Updates the specified parameters for a profile. Profiles contain basic information +// about you and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdateProfile for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateProfile +func (c *B2bi) UpdateProfile(input *UpdateProfileInput) (*UpdateProfileOutput, error) { + req, out := c.UpdateProfileRequest(input) + return out, req.Send() +} + +// UpdateProfileWithContext is the same as UpdateProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateProfile for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) UpdateProfileWithContext(ctx aws.Context, input *UpdateProfileInput, opts ...request.Option) (*UpdateProfileOutput, error) { + req, out := c.UpdateProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateTransformer = "UpdateTransformer" + +// UpdateTransformerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTransformer operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateTransformer for more information on using the UpdateTransformer +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateTransformerRequest method. +// req, resp := client.UpdateTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateTransformer +func (c *B2bi) UpdateTransformerRequest(input *UpdateTransformerInput) (req *request.Request, output *UpdateTransformerOutput) { + op := &request.Operation{ + Name: opUpdateTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateTransformerInput{} + } + + output = &UpdateTransformerOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTransformer API operation for AWS B2B Data Interchange. +// +// Updates the specified parameters for a transformer. Transformers describe +// how to process the incoming EDI (electronic data interchange) documents, +// and extract the necessary information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdateTransformer for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateTransformer +func (c *B2bi) UpdateTransformer(input *UpdateTransformerInput) (*UpdateTransformerOutput, error) { + req, out := c.UpdateTransformerRequest(input) + return out, req.Send() +} + +// UpdateTransformerWithContext is the same as UpdateTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTransformer for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) UpdateTransformerWithContext(ctx aws.Context, input *UpdateTransformerInput, opts ...request.Option) (*UpdateTransformerOutput, error) { + req, out := c.UpdateTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A capability object. Currently, only EDI (electronic data interchange) capabilities +// are supported. Capabilities contain the information necessary to process +// incoming EDI (electronic data interchange) documents. +type CapabilityConfiguration struct { + _ struct{} `type:"structure"` + + // An EDI (electronic data interchange) configuration object. + Edi *EdiConfiguration `locationName:"edi" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CapabilityConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CapabilityConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CapabilityConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CapabilityConfiguration"} + if s.Edi != nil { + if err := s.Edi.Validate(); err != nil { + invalidParams.AddNested("Edi", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEdi sets the Edi field's value. +func (s *CapabilityConfiguration) SetEdi(v *EdiConfiguration) *CapabilityConfiguration { + s.Edi = v + return s +} + +// Returns the capability summary details. Capabilities contain the information +// necessary to process incoming EDI (electronic data interchange) documents. +type CapabilitySummary struct { + _ struct{} `type:"structure"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // capability was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The display name of the capability. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CapabilitySummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CapabilitySummary) GoString() string { + return s.String() +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *CapabilitySummary) SetCapabilityId(v string) *CapabilitySummary { + s.CapabilityId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CapabilitySummary) SetCreatedAt(v time.Time) *CapabilitySummary { + s.CreatedAt = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *CapabilitySummary) SetModifiedAt(v time.Time) *CapabilitySummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *CapabilitySummary) SetName(v string) *CapabilitySummary { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *CapabilitySummary) SetType(v string) *CapabilitySummary { + s.Type = &v + return s +} + +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateCapabilityInput struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Specifies one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Specifies the name of the capability, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" type:"list"` + + // Specifies the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCapabilityInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCapabilityInput"} + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.InstructionsDocuments != nil { + for i, v := range s.InstructionsDocuments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstructionsDocuments", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateCapabilityInput) SetClientToken(v string) *CreateCapabilityInput { + s.ClientToken = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateCapabilityInput) SetConfiguration(v *CapabilityConfiguration) *CreateCapabilityInput { + s.Configuration = v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *CreateCapabilityInput) SetInstructionsDocuments(v []*S3Location) *CreateCapabilityInput { + s.InstructionsDocuments = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCapabilityInput) SetName(v string) *CreateCapabilityInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateCapabilityInput) SetTags(v []*Tag) *CreateCapabilityInput { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateCapabilityInput) SetType(v string) *CreateCapabilityInput { + s.Type = &v + return s +} + +type CreateCapabilityOutput struct { + _ struct{} `type:"structure"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // CapabilityArn is a required field + CapabilityArn *string `locationName:"capabilityArn" min:"1" type:"string" required:"true"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Returns the name of the capability used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCapabilityOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCapabilityOutput) GoString() string { + return s.String() +} + +// SetCapabilityArn sets the CapabilityArn field's value. +func (s *CreateCapabilityOutput) SetCapabilityArn(v string) *CreateCapabilityOutput { + s.CapabilityArn = &v + return s +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *CreateCapabilityOutput) SetCapabilityId(v string) *CreateCapabilityOutput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateCapabilityOutput) SetConfiguration(v *CapabilityConfiguration) *CreateCapabilityOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateCapabilityOutput) SetCreatedAt(v time.Time) *CreateCapabilityOutput { + s.CreatedAt = &v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *CreateCapabilityOutput) SetInstructionsDocuments(v []*S3Location) *CreateCapabilityOutput { + s.InstructionsDocuments = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCapabilityOutput) SetName(v string) *CreateCapabilityOutput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *CreateCapabilityOutput) SetType(v string) *CreateCapabilityOutput { + s.Type = &v + return s +} + +type CreatePartnershipInput struct { + _ struct{} `type:"structure"` + + // Specifies a list of the capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipInput's + // String and GoString methods. + // + // Email is a required field + Email *string `locationName:"email" min:"5" type:"string" required:"true" sensitive:"true"` + + // Specifies a descriptive name for the partnership. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipInput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Specifies the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePartnershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePartnershipInput"} + if s.Email == nil { + invalidParams.Add(request.NewErrParamRequired("Email")) + } + if s.Email != nil && len(*s.Email) < 5 { + invalidParams.Add(request.NewErrParamMinLen("Email", 5)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Phone != nil && len(*s.Phone) < 7 { + invalidParams.Add(request.NewErrParamMinLen("Phone", 7)) + } + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilities sets the Capabilities field's value. +func (s *CreatePartnershipInput) SetCapabilities(v []*string) *CreatePartnershipInput { + s.Capabilities = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreatePartnershipInput) SetClientToken(v string) *CreatePartnershipInput { + s.ClientToken = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreatePartnershipInput) SetEmail(v string) *CreatePartnershipInput { + s.Email = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreatePartnershipInput) SetName(v string) *CreatePartnershipInput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreatePartnershipInput) SetPhone(v string) *CreatePartnershipInput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *CreatePartnershipInput) SetProfileId(v string) *CreatePartnershipInput { + s.ProfileId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreatePartnershipInput) SetTags(v []*Tag) *CreatePartnershipInput { + s.Tags = v + return s +} + +type CreatePartnershipOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp for creation date and time of the partnership. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns a descriptive name for the partnership. + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // PartnershipArn is a required field + PartnershipArn *string `locationName:"partnershipArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipOutput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a trading partner. + TradingPartnerId *string `locationName:"tradingPartnerId" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePartnershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePartnershipOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *CreatePartnershipOutput) SetCapabilities(v []*string) *CreatePartnershipOutput { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreatePartnershipOutput) SetCreatedAt(v time.Time) *CreatePartnershipOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreatePartnershipOutput) SetEmail(v string) *CreatePartnershipOutput { + s.Email = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreatePartnershipOutput) SetName(v string) *CreatePartnershipOutput { + s.Name = &v + return s +} + +// SetPartnershipArn sets the PartnershipArn field's value. +func (s *CreatePartnershipOutput) SetPartnershipArn(v string) *CreatePartnershipOutput { + s.PartnershipArn = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *CreatePartnershipOutput) SetPartnershipId(v string) *CreatePartnershipOutput { + s.PartnershipId = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreatePartnershipOutput) SetPhone(v string) *CreatePartnershipOutput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *CreatePartnershipOutput) SetProfileId(v string) *CreatePartnershipOutput { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *CreatePartnershipOutput) SetTradingPartnerId(v string) *CreatePartnershipOutput { + s.TradingPartnerId = &v + return s +} + +type CreateProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileInput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Specifies whether or not logging is enabled for this profile. + // + // Logging is a required field + Logging *string `locationName:"logging" type:"string" required:"true" enum:"Logging"` + + // Specifies the name of the profile. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileInput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProfileInput"} + if s.BusinessName == nil { + invalidParams.Add(request.NewErrParamRequired("BusinessName")) + } + if s.BusinessName != nil && len(*s.BusinessName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BusinessName", 1)) + } + if s.Email != nil && len(*s.Email) < 5 { + invalidParams.Add(request.NewErrParamMinLen("Email", 5)) + } + if s.Logging == nil { + invalidParams.Add(request.NewErrParamRequired("Logging")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Phone == nil { + invalidParams.Add(request.NewErrParamRequired("Phone")) + } + if s.Phone != nil && len(*s.Phone) < 7 { + invalidParams.Add(request.NewErrParamMinLen("Phone", 7)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBusinessName sets the BusinessName field's value. +func (s *CreateProfileInput) SetBusinessName(v string) *CreateProfileInput { + s.BusinessName = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateProfileInput) SetClientToken(v string) *CreateProfileInput { + s.ClientToken = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreateProfileInput) SetEmail(v string) *CreateProfileInput { + s.Email = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *CreateProfileInput) SetLogging(v string) *CreateProfileInput { + s.Logging = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateProfileInput) SetName(v string) *CreateProfileInput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreateProfileInput) SetPhone(v string) *CreateProfileInput { + s.Phone = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateProfileInput) SetTags(v []*Tag) *CreateProfileInput { + s.Tags = v + return s +} + +type CreateProfileOutput struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns a timestamp representing the time the profile was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Returns whether or not logging is turned on for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns the name of the profile, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileOutput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Returns an Amazon Resource Name (ARN) for the profile. + // + // ProfileArn is a required field + ProfileArn *string `locationName:"profileArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileOutput) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *CreateProfileOutput) SetBusinessName(v string) *CreateProfileOutput { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateProfileOutput) SetCreatedAt(v time.Time) *CreateProfileOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreateProfileOutput) SetEmail(v string) *CreateProfileOutput { + s.Email = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *CreateProfileOutput) SetLogGroupName(v string) *CreateProfileOutput { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *CreateProfileOutput) SetLogging(v string) *CreateProfileOutput { + s.Logging = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateProfileOutput) SetName(v string) *CreateProfileOutput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreateProfileOutput) SetPhone(v string) *CreateProfileOutput { + s.Phone = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *CreateProfileOutput) SetProfileArn(v string) *CreateProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *CreateProfileOutput) SetProfileId(v string) *CreateProfileOutput { + s.ProfileId = &v + return s +} + +type CreateTransformerInput struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Specifies the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Specifies the name of the transformer, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies a sample EDI document that is used by a transformer as a guide + // for processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTransformerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTransformerInput"} + if s.EdiType == nil { + invalidParams.Add(request.NewErrParamRequired("EdiType")) + } + if s.FileFormat == nil { + invalidParams.Add(request.NewErrParamRequired("FileFormat")) + } + if s.MappingTemplate == nil { + invalidParams.Add(request.NewErrParamRequired("MappingTemplate")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTransformerInput) SetClientToken(v string) *CreateTransformerInput { + s.ClientToken = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *CreateTransformerInput) SetEdiType(v *EdiType) *CreateTransformerInput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *CreateTransformerInput) SetFileFormat(v string) *CreateTransformerInput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *CreateTransformerInput) SetMappingTemplate(v string) *CreateTransformerInput { + s.MappingTemplate = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTransformerInput) SetName(v string) *CreateTransformerInput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *CreateTransformerInput) SetSampleDocument(v string) *CreateTransformerInput { + s.SampleDocument = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTransformerInput) SetTags(v []*Tag) *CreateTransformerInput { + s.Tags = v + return s +} + +type CreateTransformerOutput struct { + _ struct{} `type:"structure"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns the name of the transformer, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // TransformerArn is a required field + TransformerArn *string `locationName:"transformerArn" min:"1" type:"string" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTransformerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTransformerOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateTransformerOutput) SetCreatedAt(v time.Time) *CreateTransformerOutput { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *CreateTransformerOutput) SetEdiType(v *EdiType) *CreateTransformerOutput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *CreateTransformerOutput) SetFileFormat(v string) *CreateTransformerOutput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *CreateTransformerOutput) SetMappingTemplate(v string) *CreateTransformerOutput { + s.MappingTemplate = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTransformerOutput) SetName(v string) *CreateTransformerOutput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *CreateTransformerOutput) SetSampleDocument(v string) *CreateTransformerOutput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateTransformerOutput) SetStatus(v string) *CreateTransformerOutput { + s.Status = &v + return s +} + +// SetTransformerArn sets the TransformerArn field's value. +func (s *CreateTransformerOutput) SetTransformerArn(v string) *CreateTransformerOutput { + s.TransformerArn = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *CreateTransformerOutput) SetTransformerId(v string) *CreateTransformerOutput { + s.TransformerId = &v + return s +} + +type DeleteCapabilityInput struct { + _ struct{} `type:"structure"` + + // Specifies a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCapabilityInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCapabilityInput"} + if s.CapabilityId == nil { + invalidParams.Add(request.NewErrParamRequired("CapabilityId")) + } + if s.CapabilityId != nil && len(*s.CapabilityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CapabilityId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *DeleteCapabilityInput) SetCapabilityId(v string) *DeleteCapabilityInput { + s.CapabilityId = &v + return s +} + +type DeleteCapabilityOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCapabilityOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCapabilityOutput) GoString() string { + return s.String() +} + +type DeletePartnershipInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePartnershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeletePartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeletePartnershipInput"} + if s.PartnershipId == nil { + invalidParams.Add(request.NewErrParamRequired("PartnershipId")) + } + if s.PartnershipId != nil && len(*s.PartnershipId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PartnershipId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *DeletePartnershipInput) SetPartnershipId(v string) *DeletePartnershipInput { + s.PartnershipId = &v + return s +} + +type DeletePartnershipOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePartnershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePartnershipOutput) GoString() string { + return s.String() +} + +type DeleteProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProfileInput"} + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProfileId sets the ProfileId field's value. +func (s *DeleteProfileInput) SetProfileId(v string) *DeleteProfileInput { + s.ProfileId = &v + return s +} + +type DeleteProfileOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileOutput) GoString() string { + return s.String() +} + +type DeleteTransformerInput struct { + _ struct{} `type:"structure"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTransformerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTransformerInput"} + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTransformerId sets the TransformerId field's value. +func (s *DeleteTransformerInput) SetTransformerId(v string) *DeleteTransformerInput { + s.TransformerId = &v + return s +} + +type DeleteTransformerOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTransformerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTransformerOutput) GoString() string { + return s.String() +} + +// Specifies the details for the EDI (electronic data interchange) transformation. +type EdiConfiguration struct { + _ struct{} `type:"structure"` + + // Contains the Amazon S3 bucket and prefix for the location of the input file, + // which is contained in an S3Location object. + // + // InputLocation is a required field + InputLocation *S3Location `locationName:"inputLocation" type:"structure" required:"true"` + + // Contains the Amazon S3 bucket and prefix for the location of the output file, + // which is contained in an S3Location object. + // + // OutputLocation is a required field + OutputLocation *S3Location `locationName:"outputLocation" type:"structure" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *EdiType `locationName:"type" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EdiConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EdiConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EdiConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EdiConfiguration"} + if s.InputLocation == nil { + invalidParams.Add(request.NewErrParamRequired("InputLocation")) + } + if s.OutputLocation == nil { + invalidParams.Add(request.NewErrParamRequired("OutputLocation")) + } + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.InputLocation != nil { + if err := s.InputLocation.Validate(); err != nil { + invalidParams.AddNested("InputLocation", err.(request.ErrInvalidParams)) + } + } + if s.OutputLocation != nil { + if err := s.OutputLocation.Validate(); err != nil { + invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInputLocation sets the InputLocation field's value. +func (s *EdiConfiguration) SetInputLocation(v *S3Location) *EdiConfiguration { + s.InputLocation = v + return s +} + +// SetOutputLocation sets the OutputLocation field's value. +func (s *EdiConfiguration) SetOutputLocation(v *S3Location) *EdiConfiguration { + s.OutputLocation = v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *EdiConfiguration) SetTransformerId(v string) *EdiConfiguration { + s.TransformerId = &v + return s +} + +// SetType sets the Type field's value. +func (s *EdiConfiguration) SetType(v *EdiType) *EdiConfiguration { + s.Type = v + return s +} + +// Specifies the details for the EDI standard that is being used for the transformer. +// Currently, only X12 is supported. X12 is a set of standards and corresponding +// messages that define specific business documents. +type EdiType struct { + _ struct{} `type:"structure"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + X12Details *X12Details `locationName:"x12Details" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EdiType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EdiType) GoString() string { + return s.String() +} + +// SetX12Details sets the X12Details field's value. +func (s *EdiType) SetX12Details(v *X12Details) *EdiType { + s.X12Details = v + return s +} + +type GetCapabilityInput struct { + _ struct{} `type:"structure"` + + // Specifies a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCapabilityInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCapabilityInput"} + if s.CapabilityId == nil { + invalidParams.Add(request.NewErrParamRequired("CapabilityId")) + } + if s.CapabilityId != nil && len(*s.CapabilityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CapabilityId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *GetCapabilityInput) SetCapabilityId(v string) *GetCapabilityInput { + s.CapabilityId = &v + return s +} + +type GetCapabilityOutput struct { + _ struct{} `type:"structure"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // CapabilityArn is a required field + CapabilityArn *string `locationName:"capabilityArn" min:"1" type:"string" required:"true"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Returns a timestamp for last time the capability was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the capability, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCapabilityOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCapabilityOutput) GoString() string { + return s.String() +} + +// SetCapabilityArn sets the CapabilityArn field's value. +func (s *GetCapabilityOutput) SetCapabilityArn(v string) *GetCapabilityOutput { + s.CapabilityArn = &v + return s +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *GetCapabilityOutput) SetCapabilityId(v string) *GetCapabilityOutput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *GetCapabilityOutput) SetConfiguration(v *CapabilityConfiguration) *GetCapabilityOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetCapabilityOutput) SetCreatedAt(v time.Time) *GetCapabilityOutput { + s.CreatedAt = &v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *GetCapabilityOutput) SetInstructionsDocuments(v []*S3Location) *GetCapabilityOutput { + s.InstructionsDocuments = v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetCapabilityOutput) SetModifiedAt(v time.Time) *GetCapabilityOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetCapabilityOutput) SetName(v string) *GetCapabilityOutput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetCapabilityOutput) SetType(v string) *GetCapabilityOutput { + s.Type = &v + return s +} + +type GetPartnershipInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPartnershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetPartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetPartnershipInput"} + if s.PartnershipId == nil { + invalidParams.Add(request.NewErrParamRequired("PartnershipId")) + } + if s.PartnershipId != nil && len(*s.PartnershipId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PartnershipId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *GetPartnershipInput) SetPartnershipId(v string) *GetPartnershipInput { + s.PartnershipId = &v + return s +} + +type GetPartnershipOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp for creation date and time of the partnership. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetPartnershipOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the display name of the partnership + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // PartnershipArn is a required field + PartnershipArn *string `locationName:"partnershipArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetPartnershipOutput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique identifier for the partner for this partnership. + TradingPartnerId *string `locationName:"tradingPartnerId" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPartnershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPartnershipOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *GetPartnershipOutput) SetCapabilities(v []*string) *GetPartnershipOutput { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetPartnershipOutput) SetCreatedAt(v time.Time) *GetPartnershipOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *GetPartnershipOutput) SetEmail(v string) *GetPartnershipOutput { + s.Email = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetPartnershipOutput) SetModifiedAt(v time.Time) *GetPartnershipOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetPartnershipOutput) SetName(v string) *GetPartnershipOutput { + s.Name = &v + return s +} + +// SetPartnershipArn sets the PartnershipArn field's value. +func (s *GetPartnershipOutput) SetPartnershipArn(v string) *GetPartnershipOutput { + s.PartnershipArn = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *GetPartnershipOutput) SetPartnershipId(v string) *GetPartnershipOutput { + s.PartnershipId = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *GetPartnershipOutput) SetPhone(v string) *GetPartnershipOutput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *GetPartnershipOutput) SetProfileId(v string) *GetPartnershipOutput { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *GetPartnershipOutput) SetTradingPartnerId(v string) *GetPartnershipOutput { + s.TradingPartnerId = &v + return s +} + +type GetProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetProfileInput"} + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProfileId sets the ProfileId field's value. +func (s *GetProfileInput) SetProfileId(v string) *GetProfileInput { + s.ProfileId = &v + return s +} + +type GetProfileOutput struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProfileOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Returns whether or not logging is enabled for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns a timestamp for last time the profile was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the profile, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProfileOutput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // ProfileArn is a required field + ProfileArn *string `locationName:"profileArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileOutput) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *GetProfileOutput) SetBusinessName(v string) *GetProfileOutput { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetProfileOutput) SetCreatedAt(v time.Time) *GetProfileOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *GetProfileOutput) SetEmail(v string) *GetProfileOutput { + s.Email = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *GetProfileOutput) SetLogGroupName(v string) *GetProfileOutput { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *GetProfileOutput) SetLogging(v string) *GetProfileOutput { + s.Logging = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetProfileOutput) SetModifiedAt(v time.Time) *GetProfileOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetProfileOutput) SetName(v string) *GetProfileOutput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *GetProfileOutput) SetPhone(v string) *GetProfileOutput { + s.Phone = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *GetProfileOutput) SetProfileArn(v string) *GetProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *GetProfileOutput) SetProfileId(v string) *GetProfileOutput { + s.ProfileId = &v + return s +} + +type GetTransformerInput struct { + _ struct{} `type:"structure"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTransformerInput"} + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTransformerId sets the TransformerId field's value. +func (s *GetTransformerInput) SetTransformerId(v string) *GetTransformerInput { + s.TransformerId = &v + return s +} + +type GetTransformerJobInput struct { + _ struct{} `type:"structure"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` + + // Specifies the unique, system-generated identifier for a transformer run. + // + // TransformerJobId is a required field + TransformerJobId *string `locationName:"transformerJobId" min:"25" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTransformerJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTransformerJobInput"} + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + if s.TransformerJobId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerJobId")) + } + if s.TransformerJobId != nil && len(*s.TransformerJobId) < 25 { + invalidParams.Add(request.NewErrParamMinLen("TransformerJobId", 25)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTransformerId sets the TransformerId field's value. +func (s *GetTransformerJobInput) SetTransformerId(v string) *GetTransformerJobInput { + s.TransformerId = &v + return s +} + +// SetTransformerJobId sets the TransformerJobId field's value. +func (s *GetTransformerJobInput) SetTransformerJobId(v string) *GetTransformerJobInput { + s.TransformerJobId = &v + return s +} + +type GetTransformerJobOutput struct { + _ struct{} `type:"structure"` + + // Returns an optional error message, which gets populated when the job is not + // run successfully. + Message *string `locationName:"message" type:"string"` + + // Returns the location for the output files. If the caller specified a directory + // for the output, then this contains the full path to the output file, including + // the file name generated by the service. + OutputFiles []*S3Location `locationName:"outputFiles" type:"list"` + + // Returns the current state of the transformer job, either running, succeeded, + // or failed. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerJobOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *GetTransformerJobOutput) SetMessage(v string) *GetTransformerJobOutput { + s.Message = &v + return s +} + +// SetOutputFiles sets the OutputFiles field's value. +func (s *GetTransformerJobOutput) SetOutputFiles(v []*S3Location) *GetTransformerJobOutput { + s.OutputFiles = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetTransformerJobOutput) SetStatus(v string) *GetTransformerJobOutput { + s.Status = &v + return s +} + +type GetTransformerOutput struct { + _ struct{} `type:"structure"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns a timestamp for last time the transformer was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the transformer, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // TransformerArn is a required field + TransformerArn *string `locationName:"transformerArn" min:"1" type:"string" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTransformerOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetTransformerOutput) SetCreatedAt(v time.Time) *GetTransformerOutput { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *GetTransformerOutput) SetEdiType(v *EdiType) *GetTransformerOutput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *GetTransformerOutput) SetFileFormat(v string) *GetTransformerOutput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *GetTransformerOutput) SetMappingTemplate(v string) *GetTransformerOutput { + s.MappingTemplate = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetTransformerOutput) SetModifiedAt(v time.Time) *GetTransformerOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetTransformerOutput) SetName(v string) *GetTransformerOutput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *GetTransformerOutput) SetSampleDocument(v string) *GetTransformerOutput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetTransformerOutput) SetStatus(v string) *GetTransformerOutput { + s.Status = &v + return s +} + +// SetTransformerArn sets the TransformerArn field's value. +func (s *GetTransformerOutput) SetTransformerArn(v string) *GetTransformerOutput { + s.TransformerArn = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *GetTransformerOutput) SetTransformerId(v string) *GetTransformerOutput { + s.TransformerId = &v + return s +} + +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` + + // The server attempts to retry a failed command. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListCapabilitiesInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of capabilities to return. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCapabilitiesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCapabilitiesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCapabilitiesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCapabilitiesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCapabilitiesInput) SetMaxResults(v int64) *ListCapabilitiesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCapabilitiesInput) SetNextToken(v string) *ListCapabilitiesInput { + s.NextToken = &v + return s +} + +type ListCapabilitiesOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + // + // Capabilities is a required field + Capabilities []*CapabilitySummary `locationName:"capabilities" type:"list" required:"true"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCapabilitiesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCapabilitiesOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *ListCapabilitiesOutput) SetCapabilities(v []*CapabilitySummary) *ListCapabilitiesOutput { + s.Capabilities = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCapabilitiesOutput) SetNextToken(v string) *ListCapabilitiesOutput { + s.NextToken = &v + return s +} + +type ListPartnershipsInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of capabilities to return. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Specifies the unique, system-generated identifier for the profile connected + // to this partnership. + ProfileId *string `locationName:"profileId" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPartnershipsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPartnershipsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPartnershipsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPartnershipsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPartnershipsInput) SetMaxResults(v int64) *ListPartnershipsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPartnershipsInput) SetNextToken(v string) *ListPartnershipsInput { + s.NextToken = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *ListPartnershipsInput) SetProfileId(v string) *ListPartnershipsInput { + s.ProfileId = &v + return s +} + +type ListPartnershipsOutput struct { + _ struct{} `type:"structure"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Specifies a list of your partnerships. + // + // Partnerships is a required field + Partnerships []*PartnershipSummary `locationName:"partnerships" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPartnershipsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPartnershipsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPartnershipsOutput) SetNextToken(v string) *ListPartnershipsOutput { + s.NextToken = &v + return s +} + +// SetPartnerships sets the Partnerships field's value. +func (s *ListPartnershipsOutput) SetPartnerships(v []*PartnershipSummary) *ListPartnershipsOutput { + s.Partnerships = v + return s +} + +type ListProfilesInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of profiles to return. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProfilesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProfilesInput) SetMaxResults(v int64) *ListProfilesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProfilesInput) SetNextToken(v string) *ListProfilesInput { + s.NextToken = &v + return s +} + +type ListProfilesOutput struct { + _ struct{} `type:"structure"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Returns an array of ProfileSummary objects. + // + // Profiles is a required field + Profiles []*ProfileSummary `locationName:"profiles" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProfilesOutput) SetNextToken(v string) *ListProfilesOutput { + s.NextToken = &v + return s +} + +// SetProfiles sets the Profiles field's value. +func (s *ListProfilesOutput) SetProfiles(v []*ProfileSummary) *ListProfilesOutput { + s.Profiles = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // Requests the tags associated with a particular Amazon Resource Name (ARN). + // An ARN is an identifier for a specific Amazon Web Services resource, such + // as a capability, partnership, profile, or transformer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // Returns the key-value pairs assigned to ARNs that you can use to group and + // search for resources by type. You can attach this metadata to resources (capabilities, + // partnerships, and so on) for any purpose. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListTransformersInput struct { + _ struct{} `type:"structure"` + + // Specifies the number of items to return for the API response. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTransformersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTransformersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTransformersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTransformersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTransformersInput) SetMaxResults(v int64) *ListTransformersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTransformersInput) SetNextToken(v string) *ListTransformersInput { + s.NextToken = &v + return s +} + +type ListTransformersOutput struct { + _ struct{} `type:"structure"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Returns an array of one or more transformer objects. + // + // For each transformer, a TransformerSummary object is returned. The TransformerSummary + // contains all the details for a specific transformer. + // + // Transformers is a required field + Transformers []*TransformerSummary `locationName:"transformers" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTransformersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTransformersOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTransformersOutput) SetNextToken(v string) *ListTransformersOutput { + s.NextToken = &v + return s +} + +// SetTransformers sets the Transformers field's value. +func (s *ListTransformersOutput) SetTransformers(v []*TransformerSummary) *ListTransformersOutput { + s.Transformers = v + return s +} + +// A structure that contains the details for a partnership. Partnerships link +// trading partners with your profile and a specific transformer, so that the +// EDI (electronic data interchange) documents that they upload to Amazon S3 +// can be processed according to their specifications. +type PartnershipSummary struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp for creation date and time of the partnership. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the partnership. + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a trading partner. + TradingPartnerId *string `locationName:"tradingPartnerId" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PartnershipSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PartnershipSummary) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *PartnershipSummary) SetCapabilities(v []*string) *PartnershipSummary { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *PartnershipSummary) SetCreatedAt(v time.Time) *PartnershipSummary { + s.CreatedAt = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *PartnershipSummary) SetModifiedAt(v time.Time) *PartnershipSummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *PartnershipSummary) SetName(v string) *PartnershipSummary { + s.Name = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *PartnershipSummary) SetPartnershipId(v string) *PartnershipSummary { + s.PartnershipId = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *PartnershipSummary) SetProfileId(v string) *PartnershipSummary { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *PartnershipSummary) SetTradingPartnerId(v string) *PartnershipSummary { + s.TradingPartnerId = &v + return s +} + +// Contains the details for a profile. Profiles contain basic information about +// you and your business. +type ProfileSummary struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns the timestamp for creation date and time of the profile. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Specifies whether or not logging is enabled for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns the timestamp that identifies the most recent date and time that + // the profile was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the display name for profile. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProfileSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProfileSummary) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *ProfileSummary) SetBusinessName(v string) *ProfileSummary { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ProfileSummary) SetCreatedAt(v time.Time) *ProfileSummary { + s.CreatedAt = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *ProfileSummary) SetLogGroupName(v string) *ProfileSummary { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *ProfileSummary) SetLogging(v string) *ProfileSummary { + s.Logging = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *ProfileSummary) SetModifiedAt(v time.Time) *ProfileSummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ProfileSummary) SetName(v string) *ProfileSummary { + s.Name = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *ProfileSummary) SetProfileId(v string) *ProfileSummary { + s.ProfileId = &v + return s +} + +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Specifies the details for the Amazon S3 file location that is being used +// with Amazon Web Services B2BI Data Interchange. File locations in Amazon +// S3 are identified using a combination of the bucket and key. +type S3Location struct { + _ struct{} `type:"structure"` + + // Specifies the name of the Amazon S3 bucket. + BucketName *string `locationName:"bucketName" min:"3" type:"string"` + + // Specifies the Amazon S3 key for the file location. + Key *string `locationName:"key" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Location) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Location) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Location) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Location"} + if s.BucketName != nil && len(*s.BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketName sets the BucketName field's value. +func (s *S3Location) SetBucketName(v string) *S3Location { + s.BucketName = &v + return s +} + +// SetKey sets the Key field's value. +func (s *S3Location) SetKey(v string) *S3Location { + s.Key = &v + return s +} + +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` + + // The quota that was exceeded, which caused the exception. + // + // QuotaCode is a required field + QuotaCode *string `locationName:"quotaCode" type:"string" required:"true"` + + // The ID for the resource that exceeded the quota, which caused the exception. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The resource type (profile, partnership, transformer, or capability) that + // exceeded the quota, which caused the exception. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` + + // The code responsible for exceeding the quota, which caused the exception. + // + // ServiceCode is a required field + ServiceCode *string `locationName:"serviceCode" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type StartTransformerJobInput struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the location of the input file for the transformation. The location + // consists of an Amazon S3 bucket and prefix. + // + // InputFile is a required field + InputFile *S3Location `locationName:"inputFile" type:"structure" required:"true"` + + // Specifies the location of the output file for the transformation. The location + // consists of an Amazon S3 bucket and prefix. + // + // OutputLocation is a required field + OutputLocation *S3Location `locationName:"outputLocation" type:"structure" required:"true"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartTransformerJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartTransformerJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartTransformerJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartTransformerJobInput"} + if s.InputFile == nil { + invalidParams.Add(request.NewErrParamRequired("InputFile")) + } + if s.OutputLocation == nil { + invalidParams.Add(request.NewErrParamRequired("OutputLocation")) + } + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + if s.InputFile != nil { + if err := s.InputFile.Validate(); err != nil { + invalidParams.AddNested("InputFile", err.(request.ErrInvalidParams)) + } + } + if s.OutputLocation != nil { + if err := s.OutputLocation.Validate(); err != nil { + invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartTransformerJobInput) SetClientToken(v string) *StartTransformerJobInput { + s.ClientToken = &v + return s +} + +// SetInputFile sets the InputFile field's value. +func (s *StartTransformerJobInput) SetInputFile(v *S3Location) *StartTransformerJobInput { + s.InputFile = v + return s +} + +// SetOutputLocation sets the OutputLocation field's value. +func (s *StartTransformerJobInput) SetOutputLocation(v *S3Location) *StartTransformerJobInput { + s.OutputLocation = v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *StartTransformerJobInput) SetTransformerId(v string) *StartTransformerJobInput { + s.TransformerId = &v + return s +} + +type StartTransformerJobOutput struct { + _ struct{} `type:"structure"` + + // Returns the unique, system-generated identifier for a transformer run. + // + // TransformerJobId is a required field + TransformerJobId *string `locationName:"transformerJobId" min:"25" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartTransformerJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartTransformerJobOutput) GoString() string { + return s.String() +} + +// SetTransformerJobId sets the TransformerJobId field's value. +func (s *StartTransformerJobOutput) SetTransformerJobId(v string) *StartTransformerJobOutput { + s.TransformerJobId = &v + return s +} + +// Creates a key-value pair for a specific resource. Tags are metadata that +// you can use to search for and group a resource for various purposes. You +// can apply tags to capabilities, partnerships, profiles and transformers. +// A tag key can take more than one value. For example, to group capabilities +// for accounting purposes, you might create a tag called Group and assign the +// values Research and Accounting to that group. +type Tag struct { + _ struct{} `type:"structure"` + + // Specifies the name assigned to the tag that you create. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // Contains one or more values that you assigned to the key name that you create. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // Specifies an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +type TestMappingInput struct { + _ struct{} `type:"structure"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Specify the EDI (electronic data interchange) file that is used as input + // for the transform. + // + // InputFileContent is a required field + InputFileContent *string `locationName:"inputFileContent" type:"string" required:"true"` + + // Specifies the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestMappingInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestMappingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TestMappingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TestMappingInput"} + if s.FileFormat == nil { + invalidParams.Add(request.NewErrParamRequired("FileFormat")) + } + if s.InputFileContent == nil { + invalidParams.Add(request.NewErrParamRequired("InputFileContent")) + } + if s.MappingTemplate == nil { + invalidParams.Add(request.NewErrParamRequired("MappingTemplate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileFormat sets the FileFormat field's value. +func (s *TestMappingInput) SetFileFormat(v string) *TestMappingInput { + s.FileFormat = &v + return s +} + +// SetInputFileContent sets the InputFileContent field's value. +func (s *TestMappingInput) SetInputFileContent(v string) *TestMappingInput { + s.InputFileContent = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *TestMappingInput) SetMappingTemplate(v string) *TestMappingInput { + s.MappingTemplate = &v + return s +} + +type TestMappingOutput struct { + _ struct{} `type:"structure"` + + // Returns a string for the mapping that can be used to identify the mapping. + // Similar to a fingerprint + // + // MappedFileContent is a required field + MappedFileContent *string `locationName:"mappedFileContent" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestMappingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestMappingOutput) GoString() string { + return s.String() +} + +// SetMappedFileContent sets the MappedFileContent field's value. +func (s *TestMappingOutput) SetMappedFileContent(v string) *TestMappingOutput { + s.MappedFileContent = &v + return s +} + +type TestParsingInput struct { + _ struct{} `type:"structure"` + + // Specifies the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Specifies an S3Location object, which contains the Amazon S3 bucket and prefix + // for the location of the input file. + // + // InputFile is a required field + InputFile *S3Location `locationName:"inputFile" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestParsingInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestParsingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TestParsingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TestParsingInput"} + if s.EdiType == nil { + invalidParams.Add(request.NewErrParamRequired("EdiType")) + } + if s.FileFormat == nil { + invalidParams.Add(request.NewErrParamRequired("FileFormat")) + } + if s.InputFile == nil { + invalidParams.Add(request.NewErrParamRequired("InputFile")) + } + if s.InputFile != nil { + if err := s.InputFile.Validate(); err != nil { + invalidParams.AddNested("InputFile", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEdiType sets the EdiType field's value. +func (s *TestParsingInput) SetEdiType(v *EdiType) *TestParsingInput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *TestParsingInput) SetFileFormat(v string) *TestParsingInput { + s.FileFormat = &v + return s +} + +// SetInputFile sets the InputFile field's value. +func (s *TestParsingInput) SetInputFile(v *S3Location) *TestParsingInput { + s.InputFile = v + return s +} + +type TestParsingOutput struct { + _ struct{} `type:"structure"` + + // Returns the contents of the input file being tested, parsed according to + // the specified EDI (electronic data interchange) type. + // + // ParsedFileContent is a required field + ParsedFileContent *string `locationName:"parsedFileContent" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestParsingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestParsingOutput) GoString() string { + return s.String() +} + +// SetParsedFileContent sets the ParsedFileContent field's value. +func (s *TestParsingOutput) SetParsedFileContent(v string) *TestParsingOutput { + s.ParsedFileContent = &v + return s +} + +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` + + // The server attempts to retry a command that was throttled. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Contains the details for a transformer object. Transformers describe how +// to process the incoming EDI (electronic data interchange) documents, and +// extract the necessary information. +type TransformerSummary struct { + _ struct{} `type:"structure"` + + // Returns a timestamp indicating when the transformer was created. For example, + // 2023-07-20T19:58:44.624Z. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns a timestamp representing the date and time for the most recent change + // for the transformer object. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the descriptive name for the transformer. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TransformerSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TransformerSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *TransformerSummary) SetCreatedAt(v time.Time) *TransformerSummary { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *TransformerSummary) SetEdiType(v *EdiType) *TransformerSummary { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *TransformerSummary) SetFileFormat(v string) *TransformerSummary { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *TransformerSummary) SetMappingTemplate(v string) *TransformerSummary { + s.MappingTemplate = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *TransformerSummary) SetModifiedAt(v time.Time) *TransformerSummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *TransformerSummary) SetName(v string) *TransformerSummary { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *TransformerSummary) SetSampleDocument(v string) *TransformerSummary { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *TransformerSummary) SetStatus(v string) *TransformerSummary { + s.Status = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *TransformerSummary) SetTransformerId(v string) *TransformerSummary { + s.TransformerId = &v + return s +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // Specifies an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateCapabilityInput struct { + _ struct{} `type:"structure"` + + // Specifies a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Specifies a structure that contains the details for a capability. + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure"` + + // Specifies one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Specifies a new name for the capability, to replace the existing name. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCapabilityInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateCapabilityInput"} + if s.CapabilityId == nil { + invalidParams.Add(request.NewErrParamRequired("CapabilityId")) + } + if s.CapabilityId != nil && len(*s.CapabilityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CapabilityId", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.InstructionsDocuments != nil { + for i, v := range s.InstructionsDocuments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstructionsDocuments", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *UpdateCapabilityInput) SetCapabilityId(v string) *UpdateCapabilityInput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateCapabilityInput) SetConfiguration(v *CapabilityConfiguration) *UpdateCapabilityInput { + s.Configuration = v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *UpdateCapabilityInput) SetInstructionsDocuments(v []*S3Location) *UpdateCapabilityInput { + s.InstructionsDocuments = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCapabilityInput) SetName(v string) *UpdateCapabilityInput { + s.Name = &v + return s +} + +type UpdateCapabilityOutput struct { + _ struct{} `type:"structure"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // CapabilityArn is a required field + CapabilityArn *string `locationName:"capabilityArn" min:"1" type:"string" required:"true"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Returns a timestamp for last time the capability was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the capability, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCapabilityOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCapabilityOutput) GoString() string { + return s.String() +} + +// SetCapabilityArn sets the CapabilityArn field's value. +func (s *UpdateCapabilityOutput) SetCapabilityArn(v string) *UpdateCapabilityOutput { + s.CapabilityArn = &v + return s +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *UpdateCapabilityOutput) SetCapabilityId(v string) *UpdateCapabilityOutput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateCapabilityOutput) SetConfiguration(v *CapabilityConfiguration) *UpdateCapabilityOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateCapabilityOutput) SetCreatedAt(v time.Time) *UpdateCapabilityOutput { + s.CreatedAt = &v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *UpdateCapabilityOutput) SetInstructionsDocuments(v []*S3Location) *UpdateCapabilityOutput { + s.InstructionsDocuments = v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdateCapabilityOutput) SetModifiedAt(v time.Time) *UpdateCapabilityOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCapabilityOutput) SetName(v string) *UpdateCapabilityOutput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateCapabilityOutput) SetType(v string) *UpdateCapabilityOutput { + s.Type = &v + return s +} + +type UpdatePartnershipInput struct { + _ struct{} `type:"structure"` + + // List of the capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // The name of the partnership, used to identify it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Specifies the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePartnershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePartnershipInput"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.PartnershipId == nil { + invalidParams.Add(request.NewErrParamRequired("PartnershipId")) + } + if s.PartnershipId != nil && len(*s.PartnershipId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PartnershipId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilities sets the Capabilities field's value. +func (s *UpdatePartnershipInput) SetCapabilities(v []*string) *UpdatePartnershipInput { + s.Capabilities = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdatePartnershipInput) SetName(v string) *UpdatePartnershipInput { + s.Name = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *UpdatePartnershipInput) SetPartnershipId(v string) *UpdatePartnershipInput { + s.PartnershipId = &v + return s +} + +type UpdatePartnershipOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdatePartnershipOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the partnership, used to identify it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // PartnershipArn is a required field + PartnershipArn *string `locationName:"partnershipArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdatePartnershipOutput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a trading partner. + TradingPartnerId *string `locationName:"tradingPartnerId" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePartnershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePartnershipOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *UpdatePartnershipOutput) SetCapabilities(v []*string) *UpdatePartnershipOutput { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdatePartnershipOutput) SetCreatedAt(v time.Time) *UpdatePartnershipOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *UpdatePartnershipOutput) SetEmail(v string) *UpdatePartnershipOutput { + s.Email = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdatePartnershipOutput) SetModifiedAt(v time.Time) *UpdatePartnershipOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdatePartnershipOutput) SetName(v string) *UpdatePartnershipOutput { + s.Name = &v + return s +} + +// SetPartnershipArn sets the PartnershipArn field's value. +func (s *UpdatePartnershipOutput) SetPartnershipArn(v string) *UpdatePartnershipOutput { + s.PartnershipArn = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *UpdatePartnershipOutput) SetPartnershipId(v string) *UpdatePartnershipOutput { + s.PartnershipId = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *UpdatePartnershipOutput) SetPhone(v string) *UpdatePartnershipOutput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *UpdatePartnershipOutput) SetProfileId(v string) *UpdatePartnershipOutput { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *UpdatePartnershipOutput) SetTradingPartnerId(v string) *UpdatePartnershipOutput { + s.TradingPartnerId = &v + return s +} + +type UpdateProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the name for the business associated with this profile. + BusinessName *string `locationName:"businessName" min:"1" type:"string"` + + // Specifies the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileInput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // The name of the profile, used to identify it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Specifies the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileInput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Specifies the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateProfileInput"} + if s.BusinessName != nil && len(*s.BusinessName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BusinessName", 1)) + } + if s.Email != nil && len(*s.Email) < 5 { + invalidParams.Add(request.NewErrParamMinLen("Email", 5)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Phone != nil && len(*s.Phone) < 7 { + invalidParams.Add(request.NewErrParamMinLen("Phone", 7)) + } + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBusinessName sets the BusinessName field's value. +func (s *UpdateProfileInput) SetBusinessName(v string) *UpdateProfileInput { + s.BusinessName = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *UpdateProfileInput) SetEmail(v string) *UpdateProfileInput { + s.Email = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateProfileInput) SetName(v string) *UpdateProfileInput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *UpdateProfileInput) SetPhone(v string) *UpdateProfileInput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *UpdateProfileInput) SetProfileId(v string) *UpdateProfileInput { + s.ProfileId = &v + return s +} + +type UpdateProfileOutput struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns a timestamp for creation date and time of the profile. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Specifies whether or not logging is enabled for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns a timestamp for last time the profile was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the profile. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileOutput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Returns an Amazon Resource Name (ARN) for the profile. + // + // ProfileArn is a required field + ProfileArn *string `locationName:"profileArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProfileOutput) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *UpdateProfileOutput) SetBusinessName(v string) *UpdateProfileOutput { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateProfileOutput) SetCreatedAt(v time.Time) *UpdateProfileOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *UpdateProfileOutput) SetEmail(v string) *UpdateProfileOutput { + s.Email = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *UpdateProfileOutput) SetLogGroupName(v string) *UpdateProfileOutput { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *UpdateProfileOutput) SetLogging(v string) *UpdateProfileOutput { + s.Logging = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdateProfileOutput) SetModifiedAt(v time.Time) *UpdateProfileOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateProfileOutput) SetName(v string) *UpdateProfileOutput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *UpdateProfileOutput) SetPhone(v string) *UpdateProfileOutput { + s.Phone = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *UpdateProfileOutput) SetProfileArn(v string) *UpdateProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *UpdateProfileOutput) SetProfileId(v string) *UpdateProfileOutput { + s.ProfileId = &v + return s +} + +type UpdateTransformerInput struct { + _ struct{} `type:"structure"` + + // Specifies the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + EdiType *EdiType `locationName:"ediType" type:"structure"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + FileFormat *string `locationName:"fileFormat" type:"string" enum:"FileFormat"` + + // Specifies the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + MappingTemplate *string `locationName:"mappingTemplate" type:"string"` + + // Specify a new name for the transformer, if you want to update it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Specifies a sample EDI document that is used by a transformer as a guide + // for processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Specifies the transformer's status. You can update the state of the transformer, + // from active to inactive, or inactive to active. + Status *string `locationName:"status" type:"string" enum:"TransformerStatus"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTransformerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTransformerInput"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEdiType sets the EdiType field's value. +func (s *UpdateTransformerInput) SetEdiType(v *EdiType) *UpdateTransformerInput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *UpdateTransformerInput) SetFileFormat(v string) *UpdateTransformerInput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *UpdateTransformerInput) SetMappingTemplate(v string) *UpdateTransformerInput { + s.MappingTemplate = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateTransformerInput) SetName(v string) *UpdateTransformerInput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *UpdateTransformerInput) SetSampleDocument(v string) *UpdateTransformerInput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateTransformerInput) SetStatus(v string) *UpdateTransformerInput { + s.Status = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *UpdateTransformerInput) SetTransformerId(v string) *UpdateTransformerInput { + s.TransformerId = &v + return s +} + +type UpdateTransformerOutput struct { + _ struct{} `type:"structure"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns a timestamp for last time the transformer was modified. + // + // ModifiedAt is a required field + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the name of the transformer. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // TransformerArn is a required field + TransformerArn *string `locationName:"transformerArn" min:"1" type:"string" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTransformerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTransformerOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateTransformerOutput) SetCreatedAt(v time.Time) *UpdateTransformerOutput { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *UpdateTransformerOutput) SetEdiType(v *EdiType) *UpdateTransformerOutput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *UpdateTransformerOutput) SetFileFormat(v string) *UpdateTransformerOutput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *UpdateTransformerOutput) SetMappingTemplate(v string) *UpdateTransformerOutput { + s.MappingTemplate = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdateTransformerOutput) SetModifiedAt(v time.Time) *UpdateTransformerOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateTransformerOutput) SetName(v string) *UpdateTransformerOutput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *UpdateTransformerOutput) SetSampleDocument(v string) *UpdateTransformerOutput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateTransformerOutput) SetStatus(v string) *UpdateTransformerOutput { + s.Status = &v + return s +} + +// SetTransformerArn sets the TransformerArn field's value. +func (s *UpdateTransformerOutput) SetTransformerArn(v string) *UpdateTransformerOutput { + s.TransformerArn = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *UpdateTransformerOutput) SetTransformerId(v string) *UpdateTransformerOutput { + s.TransformerId = &v + return s +} + +// Occurs when a B2BI object cannot be validated against a request from another +// object. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A structure that contains the X12 transaction set and version. The X12 structure +// is used when the system transforms an EDI (electronic data interchange) file. +type X12Details struct { + _ struct{} `type:"structure"` + + // Returns an enumerated type where each value identifies an X12 transaction + // set. Transaction sets are maintained by the X12 Accredited Standards Committee. + TransactionSet *string `locationName:"transactionSet" type:"string" enum:"X12TransactionSet"` + + // Returns the version to use for the specified X12 transaction set. Supported + // versions are 4010, 4030, and 5010. + Version *string `locationName:"version" type:"string" enum:"X12Version"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s X12Details) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s X12Details) GoString() string { + return s.String() +} + +// SetTransactionSet sets the TransactionSet field's value. +func (s *X12Details) SetTransactionSet(v string) *X12Details { + s.TransactionSet = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *X12Details) SetVersion(v string) *X12Details { + s.Version = &v + return s +} + +const ( + // CapabilityTypeEdi is a CapabilityType enum value + CapabilityTypeEdi = "edi" +) + +// CapabilityType_Values returns all elements of the CapabilityType enum +func CapabilityType_Values() []string { + return []string{ + CapabilityTypeEdi, + } +} + +const ( + // FileFormatXml is a FileFormat enum value + FileFormatXml = "XML" + + // FileFormatJson is a FileFormat enum value + FileFormatJson = "JSON" +) + +// FileFormat_Values returns all elements of the FileFormat enum +func FileFormat_Values() []string { + return []string{ + FileFormatXml, + FileFormatJson, + } +} + +const ( + // LoggingEnabled is a Logging enum value + LoggingEnabled = "ENABLED" + + // LoggingDisabled is a Logging enum value + LoggingDisabled = "DISABLED" +) + +// Logging_Values returns all elements of the Logging enum +func Logging_Values() []string { + return []string{ + LoggingEnabled, + LoggingDisabled, + } +} + +const ( + // TransformerJobStatusRunning is a TransformerJobStatus enum value + TransformerJobStatusRunning = "running" + + // TransformerJobStatusSucceeded is a TransformerJobStatus enum value + TransformerJobStatusSucceeded = "succeeded" + + // TransformerJobStatusFailed is a TransformerJobStatus enum value + TransformerJobStatusFailed = "failed" +) + +// TransformerJobStatus_Values returns all elements of the TransformerJobStatus enum +func TransformerJobStatus_Values() []string { + return []string{ + TransformerJobStatusRunning, + TransformerJobStatusSucceeded, + TransformerJobStatusFailed, + } +} + +const ( + // TransformerStatusActive is a TransformerStatus enum value + TransformerStatusActive = "active" + + // TransformerStatusInactive is a TransformerStatus enum value + TransformerStatusInactive = "inactive" +) + +// TransformerStatus_Values returns all elements of the TransformerStatus enum +func TransformerStatus_Values() []string { + return []string{ + TransformerStatusActive, + TransformerStatusInactive, + } +} + +const ( + // X12TransactionSetX12110 is a X12TransactionSet enum value + X12TransactionSetX12110 = "X12_110" + + // X12TransactionSetX12180 is a X12TransactionSet enum value + X12TransactionSetX12180 = "X12_180" + + // X12TransactionSetX12204 is a X12TransactionSet enum value + X12TransactionSetX12204 = "X12_204" + + // X12TransactionSetX12210 is a X12TransactionSet enum value + X12TransactionSetX12210 = "X12_210" + + // X12TransactionSetX12214 is a X12TransactionSet enum value + X12TransactionSetX12214 = "X12_214" + + // X12TransactionSetX12215 is a X12TransactionSet enum value + X12TransactionSetX12215 = "X12_215" + + // X12TransactionSetX12310 is a X12TransactionSet enum value + X12TransactionSetX12310 = "X12_310" + + // X12TransactionSetX12315 is a X12TransactionSet enum value + X12TransactionSetX12315 = "X12_315" + + // X12TransactionSetX12322 is a X12TransactionSet enum value + X12TransactionSetX12322 = "X12_322" + + // X12TransactionSetX12404 is a X12TransactionSet enum value + X12TransactionSetX12404 = "X12_404" + + // X12TransactionSetX12410 is a X12TransactionSet enum value + X12TransactionSetX12410 = "X12_410" + + // X12TransactionSetX12820 is a X12TransactionSet enum value + X12TransactionSetX12820 = "X12_820" + + // X12TransactionSetX12824 is a X12TransactionSet enum value + X12TransactionSetX12824 = "X12_824" + + // X12TransactionSetX12830 is a X12TransactionSet enum value + X12TransactionSetX12830 = "X12_830" + + // X12TransactionSetX12846 is a X12TransactionSet enum value + X12TransactionSetX12846 = "X12_846" + + // X12TransactionSetX12850 is a X12TransactionSet enum value + X12TransactionSetX12850 = "X12_850" + + // X12TransactionSetX12852 is a X12TransactionSet enum value + X12TransactionSetX12852 = "X12_852" + + // X12TransactionSetX12855 is a X12TransactionSet enum value + X12TransactionSetX12855 = "X12_855" + + // X12TransactionSetX12856 is a X12TransactionSet enum value + X12TransactionSetX12856 = "X12_856" + + // X12TransactionSetX12860 is a X12TransactionSet enum value + X12TransactionSetX12860 = "X12_860" + + // X12TransactionSetX12861 is a X12TransactionSet enum value + X12TransactionSetX12861 = "X12_861" + + // X12TransactionSetX12864 is a X12TransactionSet enum value + X12TransactionSetX12864 = "X12_864" + + // X12TransactionSetX12940 is a X12TransactionSet enum value + X12TransactionSetX12940 = "X12_940" + + // X12TransactionSetX12990 is a X12TransactionSet enum value + X12TransactionSetX12990 = "X12_990" + + // X12TransactionSetX12997 is a X12TransactionSet enum value + X12TransactionSetX12997 = "X12_997" +) + +// X12TransactionSet_Values returns all elements of the X12TransactionSet enum +func X12TransactionSet_Values() []string { + return []string{ + X12TransactionSetX12110, + X12TransactionSetX12180, + X12TransactionSetX12204, + X12TransactionSetX12210, + X12TransactionSetX12214, + X12TransactionSetX12215, + X12TransactionSetX12310, + X12TransactionSetX12315, + X12TransactionSetX12322, + X12TransactionSetX12404, + X12TransactionSetX12410, + X12TransactionSetX12820, + X12TransactionSetX12824, + X12TransactionSetX12830, + X12TransactionSetX12846, + X12TransactionSetX12850, + X12TransactionSetX12852, + X12TransactionSetX12855, + X12TransactionSetX12856, + X12TransactionSetX12860, + X12TransactionSetX12861, + X12TransactionSetX12864, + X12TransactionSetX12940, + X12TransactionSetX12990, + X12TransactionSetX12997, + } +} + +const ( + // X12VersionVersion4010 is a X12Version enum value + X12VersionVersion4010 = "VERSION_4010" + + // X12VersionVersion4030 is a X12Version enum value + X12VersionVersion4030 = "VERSION_4030" + + // X12VersionVersion5010 is a X12Version enum value + X12VersionVersion5010 = "VERSION_5010" +) + +// X12Version_Values returns all elements of the X12Version enum +func X12Version_Values() []string { + return []string{ + X12VersionVersion4010, + X12VersionVersion4030, + X12VersionVersion5010, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/b2biiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/b2biiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/b2biiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/b2biiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,184 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package b2biiface provides an interface to enable mocking the AWS B2B Data Interchange service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package b2biiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/b2bi" +) + +// B2biAPI provides an interface to enable mocking the +// b2bi.B2bi service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS B2B Data Interchange. +// func myFunc(svc b2biiface.B2biAPI) bool { +// // Make svc.CreateCapability request +// } +// +// func main() { +// sess := session.New() +// svc := b2bi.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockB2biClient struct { +// b2biiface.B2biAPI +// } +// func (m *mockB2biClient) CreateCapability(input *b2bi.CreateCapabilityInput) (*b2bi.CreateCapabilityOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockB2biClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type B2biAPI interface { + CreateCapability(*b2bi.CreateCapabilityInput) (*b2bi.CreateCapabilityOutput, error) + CreateCapabilityWithContext(aws.Context, *b2bi.CreateCapabilityInput, ...request.Option) (*b2bi.CreateCapabilityOutput, error) + CreateCapabilityRequest(*b2bi.CreateCapabilityInput) (*request.Request, *b2bi.CreateCapabilityOutput) + + CreatePartnership(*b2bi.CreatePartnershipInput) (*b2bi.CreatePartnershipOutput, error) + CreatePartnershipWithContext(aws.Context, *b2bi.CreatePartnershipInput, ...request.Option) (*b2bi.CreatePartnershipOutput, error) + CreatePartnershipRequest(*b2bi.CreatePartnershipInput) (*request.Request, *b2bi.CreatePartnershipOutput) + + CreateProfile(*b2bi.CreateProfileInput) (*b2bi.CreateProfileOutput, error) + CreateProfileWithContext(aws.Context, *b2bi.CreateProfileInput, ...request.Option) (*b2bi.CreateProfileOutput, error) + CreateProfileRequest(*b2bi.CreateProfileInput) (*request.Request, *b2bi.CreateProfileOutput) + + CreateTransformer(*b2bi.CreateTransformerInput) (*b2bi.CreateTransformerOutput, error) + CreateTransformerWithContext(aws.Context, *b2bi.CreateTransformerInput, ...request.Option) (*b2bi.CreateTransformerOutput, error) + CreateTransformerRequest(*b2bi.CreateTransformerInput) (*request.Request, *b2bi.CreateTransformerOutput) + + DeleteCapability(*b2bi.DeleteCapabilityInput) (*b2bi.DeleteCapabilityOutput, error) + DeleteCapabilityWithContext(aws.Context, *b2bi.DeleteCapabilityInput, ...request.Option) (*b2bi.DeleteCapabilityOutput, error) + DeleteCapabilityRequest(*b2bi.DeleteCapabilityInput) (*request.Request, *b2bi.DeleteCapabilityOutput) + + DeletePartnership(*b2bi.DeletePartnershipInput) (*b2bi.DeletePartnershipOutput, error) + DeletePartnershipWithContext(aws.Context, *b2bi.DeletePartnershipInput, ...request.Option) (*b2bi.DeletePartnershipOutput, error) + DeletePartnershipRequest(*b2bi.DeletePartnershipInput) (*request.Request, *b2bi.DeletePartnershipOutput) + + DeleteProfile(*b2bi.DeleteProfileInput) (*b2bi.DeleteProfileOutput, error) + DeleteProfileWithContext(aws.Context, *b2bi.DeleteProfileInput, ...request.Option) (*b2bi.DeleteProfileOutput, error) + DeleteProfileRequest(*b2bi.DeleteProfileInput) (*request.Request, *b2bi.DeleteProfileOutput) + + DeleteTransformer(*b2bi.DeleteTransformerInput) (*b2bi.DeleteTransformerOutput, error) + DeleteTransformerWithContext(aws.Context, *b2bi.DeleteTransformerInput, ...request.Option) (*b2bi.DeleteTransformerOutput, error) + DeleteTransformerRequest(*b2bi.DeleteTransformerInput) (*request.Request, *b2bi.DeleteTransformerOutput) + + GetCapability(*b2bi.GetCapabilityInput) (*b2bi.GetCapabilityOutput, error) + GetCapabilityWithContext(aws.Context, *b2bi.GetCapabilityInput, ...request.Option) (*b2bi.GetCapabilityOutput, error) + GetCapabilityRequest(*b2bi.GetCapabilityInput) (*request.Request, *b2bi.GetCapabilityOutput) + + GetPartnership(*b2bi.GetPartnershipInput) (*b2bi.GetPartnershipOutput, error) + GetPartnershipWithContext(aws.Context, *b2bi.GetPartnershipInput, ...request.Option) (*b2bi.GetPartnershipOutput, error) + GetPartnershipRequest(*b2bi.GetPartnershipInput) (*request.Request, *b2bi.GetPartnershipOutput) + + GetProfile(*b2bi.GetProfileInput) (*b2bi.GetProfileOutput, error) + GetProfileWithContext(aws.Context, *b2bi.GetProfileInput, ...request.Option) (*b2bi.GetProfileOutput, error) + GetProfileRequest(*b2bi.GetProfileInput) (*request.Request, *b2bi.GetProfileOutput) + + GetTransformer(*b2bi.GetTransformerInput) (*b2bi.GetTransformerOutput, error) + GetTransformerWithContext(aws.Context, *b2bi.GetTransformerInput, ...request.Option) (*b2bi.GetTransformerOutput, error) + GetTransformerRequest(*b2bi.GetTransformerInput) (*request.Request, *b2bi.GetTransformerOutput) + + GetTransformerJob(*b2bi.GetTransformerJobInput) (*b2bi.GetTransformerJobOutput, error) + GetTransformerJobWithContext(aws.Context, *b2bi.GetTransformerJobInput, ...request.Option) (*b2bi.GetTransformerJobOutput, error) + GetTransformerJobRequest(*b2bi.GetTransformerJobInput) (*request.Request, *b2bi.GetTransformerJobOutput) + + ListCapabilities(*b2bi.ListCapabilitiesInput) (*b2bi.ListCapabilitiesOutput, error) + ListCapabilitiesWithContext(aws.Context, *b2bi.ListCapabilitiesInput, ...request.Option) (*b2bi.ListCapabilitiesOutput, error) + ListCapabilitiesRequest(*b2bi.ListCapabilitiesInput) (*request.Request, *b2bi.ListCapabilitiesOutput) + + ListCapabilitiesPages(*b2bi.ListCapabilitiesInput, func(*b2bi.ListCapabilitiesOutput, bool) bool) error + ListCapabilitiesPagesWithContext(aws.Context, *b2bi.ListCapabilitiesInput, func(*b2bi.ListCapabilitiesOutput, bool) bool, ...request.Option) error + + ListPartnerships(*b2bi.ListPartnershipsInput) (*b2bi.ListPartnershipsOutput, error) + ListPartnershipsWithContext(aws.Context, *b2bi.ListPartnershipsInput, ...request.Option) (*b2bi.ListPartnershipsOutput, error) + ListPartnershipsRequest(*b2bi.ListPartnershipsInput) (*request.Request, *b2bi.ListPartnershipsOutput) + + ListPartnershipsPages(*b2bi.ListPartnershipsInput, func(*b2bi.ListPartnershipsOutput, bool) bool) error + ListPartnershipsPagesWithContext(aws.Context, *b2bi.ListPartnershipsInput, func(*b2bi.ListPartnershipsOutput, bool) bool, ...request.Option) error + + ListProfiles(*b2bi.ListProfilesInput) (*b2bi.ListProfilesOutput, error) + ListProfilesWithContext(aws.Context, *b2bi.ListProfilesInput, ...request.Option) (*b2bi.ListProfilesOutput, error) + ListProfilesRequest(*b2bi.ListProfilesInput) (*request.Request, *b2bi.ListProfilesOutput) + + ListProfilesPages(*b2bi.ListProfilesInput, func(*b2bi.ListProfilesOutput, bool) bool) error + ListProfilesPagesWithContext(aws.Context, *b2bi.ListProfilesInput, func(*b2bi.ListProfilesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*b2bi.ListTagsForResourceInput) (*b2bi.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *b2bi.ListTagsForResourceInput, ...request.Option) (*b2bi.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*b2bi.ListTagsForResourceInput) (*request.Request, *b2bi.ListTagsForResourceOutput) + + ListTransformers(*b2bi.ListTransformersInput) (*b2bi.ListTransformersOutput, error) + ListTransformersWithContext(aws.Context, *b2bi.ListTransformersInput, ...request.Option) (*b2bi.ListTransformersOutput, error) + ListTransformersRequest(*b2bi.ListTransformersInput) (*request.Request, *b2bi.ListTransformersOutput) + + ListTransformersPages(*b2bi.ListTransformersInput, func(*b2bi.ListTransformersOutput, bool) bool) error + ListTransformersPagesWithContext(aws.Context, *b2bi.ListTransformersInput, func(*b2bi.ListTransformersOutput, bool) bool, ...request.Option) error + + StartTransformerJob(*b2bi.StartTransformerJobInput) (*b2bi.StartTransformerJobOutput, error) + StartTransformerJobWithContext(aws.Context, *b2bi.StartTransformerJobInput, ...request.Option) (*b2bi.StartTransformerJobOutput, error) + StartTransformerJobRequest(*b2bi.StartTransformerJobInput) (*request.Request, *b2bi.StartTransformerJobOutput) + + TagResource(*b2bi.TagResourceInput) (*b2bi.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *b2bi.TagResourceInput, ...request.Option) (*b2bi.TagResourceOutput, error) + TagResourceRequest(*b2bi.TagResourceInput) (*request.Request, *b2bi.TagResourceOutput) + + TestMapping(*b2bi.TestMappingInput) (*b2bi.TestMappingOutput, error) + TestMappingWithContext(aws.Context, *b2bi.TestMappingInput, ...request.Option) (*b2bi.TestMappingOutput, error) + TestMappingRequest(*b2bi.TestMappingInput) (*request.Request, *b2bi.TestMappingOutput) + + TestParsing(*b2bi.TestParsingInput) (*b2bi.TestParsingOutput, error) + TestParsingWithContext(aws.Context, *b2bi.TestParsingInput, ...request.Option) (*b2bi.TestParsingOutput, error) + TestParsingRequest(*b2bi.TestParsingInput) (*request.Request, *b2bi.TestParsingOutput) + + UntagResource(*b2bi.UntagResourceInput) (*b2bi.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *b2bi.UntagResourceInput, ...request.Option) (*b2bi.UntagResourceOutput, error) + UntagResourceRequest(*b2bi.UntagResourceInput) (*request.Request, *b2bi.UntagResourceOutput) + + UpdateCapability(*b2bi.UpdateCapabilityInput) (*b2bi.UpdateCapabilityOutput, error) + UpdateCapabilityWithContext(aws.Context, *b2bi.UpdateCapabilityInput, ...request.Option) (*b2bi.UpdateCapabilityOutput, error) + UpdateCapabilityRequest(*b2bi.UpdateCapabilityInput) (*request.Request, *b2bi.UpdateCapabilityOutput) + + UpdatePartnership(*b2bi.UpdatePartnershipInput) (*b2bi.UpdatePartnershipOutput, error) + UpdatePartnershipWithContext(aws.Context, *b2bi.UpdatePartnershipInput, ...request.Option) (*b2bi.UpdatePartnershipOutput, error) + UpdatePartnershipRequest(*b2bi.UpdatePartnershipInput) (*request.Request, *b2bi.UpdatePartnershipOutput) + + UpdateProfile(*b2bi.UpdateProfileInput) (*b2bi.UpdateProfileOutput, error) + UpdateProfileWithContext(aws.Context, *b2bi.UpdateProfileInput, ...request.Option) (*b2bi.UpdateProfileOutput, error) + UpdateProfileRequest(*b2bi.UpdateProfileInput) (*request.Request, *b2bi.UpdateProfileOutput) + + UpdateTransformer(*b2bi.UpdateTransformerInput) (*b2bi.UpdateTransformerOutput, error) + UpdateTransformerWithContext(aws.Context, *b2bi.UpdateTransformerInput, ...request.Option) (*b2bi.UpdateTransformerOutput, error) + UpdateTransformerRequest(*b2bi.UpdateTransformerInput) (*request.Request, *b2bi.UpdateTransformerOutput) +} + +var _ B2biAPI = (*b2bi.B2bi)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,42 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package b2bi provides the client and types for making API +// requests to AWS B2B Data Interchange. +// +// This is the Amazon Web Services B2B Data Interchange API Reference. It provides +// descriptions, API request parameters, and the XML response for each of the +// B2BI API actions. +// +// B2BI enables automated exchange of EDI (electronic data interchange) based +// business-critical transactions at cloud scale, with elasticity and pay-as-you-go +// pricing. Businesses use EDI documents to exchange transactional data with +// trading partners, such as suppliers and end customers, using standardized +// formats such as X12. +// +// Rather than actually running a command, you can use the --generate-cli-skeleton +// parameter with any API call to generate and display a parameter template. +// You can then use the generated template to customize and use as input on +// a later command. For details, see Generate and use a parameter skeleton file +// (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-skeleton.html#cli-usage-skeleton-generate). +// +// See https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23 for more information on this service. +// +// See b2bi package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/b2bi/ +// +// # Using the Client +// +// To contact AWS B2B Data Interchange with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS B2B Data Interchange client B2bi for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/b2bi/#New +package b2bi diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,70 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // A conflict exception is thrown when you attempt to delete a resource (such + // as a profile or a capability) that is being used by other resources. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // This exception is thrown when an error occurs in the Amazon Web Services + // B2B Data Interchange service. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Occurs when the requested resource does not exist, or cannot be found. In + // some cases, the resource exists in a region other than the region specified + // in the API call. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Occurs when the calling command attempts to exceed one of the service quotas, + // for example trying to create a capability when you already have the maximum + // number of capabilities allowed. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to throttling: the data speed and rendering may + // be limited depending on various parameters and conditions. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Occurs when a B2BI object cannot be validated against a request from another + // object. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/examples_test.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1173 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi_test + +import ( + "fmt" + "strings" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/session" + "github.com/aws/aws-sdk-go/service/b2bi" +) + +var _ time.Duration +var _ strings.Reader +var _ aws.Config + +func parseTime(layout, value string) *time.Time { + t, err := time.Parse(layout, value) + if err != nil { + panic(err) + } + return &t +} + +// Sample CreateCapability call +// + +func ExampleB2bi_CreateCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreateCapabilityInput{ + ClientToken: aws.String("foo"), + Configuration: &b2bi.CapabilityConfiguration{ + Edi: &b2bi.EdiConfiguration{ + InputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("input/"), + }, + OutputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("output/"), + }, + TransformerId: aws.String("tr-9a893cf536df4658b"), + Type: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + }, + }, + InstructionsDocuments: []*b2bi.S3Location{ + { + BucketName: aws.String("test-bucket"), + Key: aws.String("instructiondoc.txt"), + }, + }, + Name: aws.String("b2biexample"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("capabilityKey1"), + Value: aws.String("capabilityValue1"), + }, + }, + Type: aws.String("edi"), + } + + result, err := svc.CreateCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample CreatePartnership call +// + +func ExampleB2bi_CreatePartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreatePartnershipInput{ + Capabilities: []*string{ + aws.String("ca-963a8121e4fc4e348"), + }, + ClientToken: aws.String("foo"), + Email: aws.String("john@example.com"), + Name: aws.String("b2bipartner"), + Phone: aws.String("5555555555"), + ProfileId: aws.String("p-60fbc37c87f04fce9"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey1"), + Value: aws.String("sampleValue1"), + }, + }, + } + + result, err := svc.CreatePartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample CreateProfile call +// + +func ExampleB2bi_CreateProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreateProfileInput{ + BusinessName: aws.String("John's Shipping"), + ClientToken: aws.String("foo"), + Email: aws.String("john@example.com"), + Logging: aws.String("ENABLED"), + Name: aws.String("Shipping Profile"), + Phone: aws.String("5555555555"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey"), + Value: aws.String("sampleValue"), + }, + }, + } + + result, err := svc.CreateProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample CreateTransformer call +// + +func ExampleB2bi_CreateTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreateTransformerInput{ + ClientToken: aws.String("foo"), + EdiType: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + FileFormat: aws.String("JSON"), + MappingTemplate: aws.String("{}"), + Name: aws.String("transformJSON"), + SampleDocument: aws.String("s3://test-bucket/sampleDoc.txt"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey"), + Value: aws.String("sampleValue"), + }, + }, + } + + result, err := svc.CreateTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeleteCapabilty call +// + +func ExampleB2bi_DeleteCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeleteCapabilityInput{ + CapabilityId: aws.String("ca-963a8121e4fc4e348"), + } + + result, err := svc.DeleteCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeletePartnership call +// + +func ExampleB2bi_DeletePartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeletePartnershipInput{ + PartnershipId: aws.String("ps-219fa02f5b4242af8"), + } + + result, err := svc.DeletePartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeleteProfile call +// + +func ExampleB2bi_DeleteProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeleteProfileInput{ + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.DeleteProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeleteTransformer call +// + +func ExampleB2bi_DeleteTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeleteTransformerInput{ + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.DeleteTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetCapabilty call +// + +func ExampleB2bi_GetCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetCapabilityInput{ + CapabilityId: aws.String("ca-963a8121e4fc4e348"), + } + + result, err := svc.GetCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetPartnership call +// + +func ExampleB2bi_GetPartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetPartnershipInput{ + PartnershipId: aws.String("ps-219fa02f5b4242af8"), + } + + result, err := svc.GetPartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetProfile call +// + +func ExampleB2bi_GetProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetProfileInput{ + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.GetProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetTransformer call +// + +func ExampleB2bi_GetTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetTransformerInput{ + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.GetTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetTransformerJob call +// + +func ExampleB2bi_GetTransformerJob_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetTransformerJobInput{ + TransformerId: aws.String("tr-974c129999f84d8c9"), + TransformerJobId: aws.String("tj-vpYxfV7yQOqjMSYllEslLw"), + } + + result, err := svc.GetTransformerJob(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListCapabilities call +// + +func ExampleB2bi_ListCapabilities_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListCapabilitiesInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + } + + result, err := svc.ListCapabilities(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListPartnerships call +// + +func ExampleB2bi_ListPartnerships_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListPartnershipsInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.ListPartnerships(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListProfiles call +// + +func ExampleB2bi_ListProfiles_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListProfilesInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + } + + result, err := svc.ListProfiles(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListTagsForResources call +// + +func ExampleB2bi_ListTagsForResource_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListTagsForResourceInput{ + ResourceARN: aws.String("arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9"), + } + + result, err := svc.ListTagsForResource(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListTransformers call +// + +func ExampleB2bi_ListTransformers_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListTransformersInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + } + + result, err := svc.ListTransformers(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample StartTransformerJob call +// + +func ExampleB2bi_StartTransformerJob_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.StartTransformerJobInput{ + ClientToken: aws.String("foo"), + InputFile: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("input/inputFile.txt"), + }, + OutputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("output/"), + }, + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.StartTransformerJob(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample TagResource call +// + +func ExampleB2bi_TagResource_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.TagResourceInput{ + ResourceARN: aws.String("arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey"), + Value: aws.String("SampleValue"), + }, + }, + } + + result, err := svc.TagResource(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample TestMapping call +// + +func ExampleB2bi_TestMapping_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.TestMappingInput{ + FileFormat: aws.String("JSON"), + InputFileContent: aws.String("Sample file content"), + MappingTemplate: aws.String("$"), + } + + result, err := svc.TestMapping(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample TestParsing call +// + +func ExampleB2bi_TestParsing_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.TestParsingInput{ + EdiType: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + FileFormat: aws.String("JSON"), + InputFile: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("sampleFile.txt"), + }, + } + + result, err := svc.TestParsing(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UntagResource call +// + +func ExampleB2bi_UntagResource_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UntagResourceInput{ + ResourceARN: aws.String("arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9"), + TagKeys: []*string{ + aws.String("sampleKey"), + }, + } + + result, err := svc.UntagResource(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdateCapability call +// + +func ExampleB2bi_UpdateCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdateCapabilityInput{ + CapabilityId: aws.String("ca-963a8121e4fc4e348"), + Configuration: &b2bi.CapabilityConfiguration{ + Edi: &b2bi.EdiConfiguration{ + InputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("input/"), + }, + OutputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("output/"), + }, + TransformerId: aws.String("tr-9a893cf536df4658b"), + Type: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + }, + }, + InstructionsDocuments: []*b2bi.S3Location{ + { + BucketName: aws.String("test-bucket"), + Key: aws.String("instructiondoc.txt"), + }, + }, + Name: aws.String("b2biexample"), + } + + result, err := svc.UpdateCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdatePartnership call +// + +func ExampleB2bi_UpdatePartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdatePartnershipInput{ + Capabilities: []*string{ + aws.String("ca-963a8121e4fc4e348"), + }, + Name: aws.String("b2bipartner"), + PartnershipId: aws.String("ps-219fa02f5b4242af8"), + } + + result, err := svc.UpdatePartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdateProfile call +// + +func ExampleB2bi_UpdateProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdateProfileInput{ + BusinessName: aws.String("John's Shipping"), + Email: aws.String("john@example.com"), + Name: aws.String("Shipping Profile"), + Phone: aws.String("5555555555"), + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.UpdateProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdateTransformer call +// + +func ExampleB2bi_UpdateTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdateTransformerInput{ + EdiType: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + FileFormat: aws.String("JSON"), + MappingTemplate: aws.String("{}"), + Name: aws.String("transformJSON"), + SampleDocument: aws.String("s3://test-bucket/sampleDoc.txt"), + Status: aws.String("inactive"), + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.UpdateTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/service.go golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/b2bi/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/b2bi/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +// B2bi provides the API operation methods for making requests to +// AWS B2B Data Interchange. See this package's package overview docs +// for details on the service. +// +// B2bi methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type B2bi struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "b2bi" // Name of service. + EndpointsID = ServiceName // ID to lookup a service endpoint with. + ServiceID = "b2bi" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the B2bi client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// +// mySession := session.Must(session.NewSession()) +// +// // Create a B2bi client from just a session. +// svc := b2bi.New(mySession) +// +// // Create a B2bi client with additional configuration +// svc := b2bi.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *B2bi { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "b2bi" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName, resolvedRegion string) *B2bi { + svc := &B2bi{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2022-06-23", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "B2BI", + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(jsonrpc.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a B2bi operation and runs any +// custom request initialization. +func (c *B2bi) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/backup/api.go golang-github-aws-aws-sdk-go-1.48.14/service/backup/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/backup/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/backup/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -790,6 +790,221 @@ return out, req.Send() } +const opCreateRestoreTestingPlan = "CreateRestoreTestingPlan" + +// CreateRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the CreateRestoreTestingPlan operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateRestoreTestingPlan for more information on using the CreateRestoreTestingPlan +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateRestoreTestingPlanRequest method. +// req, resp := client.CreateRestoreTestingPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingPlan +func (c *Backup) CreateRestoreTestingPlanRequest(input *CreateRestoreTestingPlanInput) (req *request.Request, output *CreateRestoreTestingPlanOutput) { + op := &request.Operation{ + Name: opCreateRestoreTestingPlan, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans", + } + + if input == nil { + input = &CreateRestoreTestingPlanInput{} + } + + output = &CreateRestoreTestingPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRestoreTestingPlan API operation for AWS Backup. +// +// This is the first of two steps to create a restore testing plan; once this +// request is successful, finish the procedure with request CreateRestoreTestingSelection. +// +// You must include the parameter RestoreTestingPlan. You may optionally include +// CreatorRequestId and Tags. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation CreateRestoreTestingPlan for usage and error information. +// +// Returned Error Types: +// +// - AlreadyExistsException +// The required resource already exists. +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingPlan +func (c *Backup) CreateRestoreTestingPlan(input *CreateRestoreTestingPlanInput) (*CreateRestoreTestingPlanOutput, error) { + req, out := c.CreateRestoreTestingPlanRequest(input) + return out, req.Send() +} + +// CreateRestoreTestingPlanWithContext is the same as CreateRestoreTestingPlan with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRestoreTestingPlan for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) CreateRestoreTestingPlanWithContext(ctx aws.Context, input *CreateRestoreTestingPlanInput, opts ...request.Option) (*CreateRestoreTestingPlanOutput, error) { + req, out := c.CreateRestoreTestingPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateRestoreTestingSelection = "CreateRestoreTestingSelection" + +// CreateRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the CreateRestoreTestingSelection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateRestoreTestingSelection for more information on using the CreateRestoreTestingSelection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateRestoreTestingSelectionRequest method. +// req, resp := client.CreateRestoreTestingSelectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingSelection +func (c *Backup) CreateRestoreTestingSelectionRequest(input *CreateRestoreTestingSelectionInput) (req *request.Request, output *CreateRestoreTestingSelectionOutput) { + op := &request.Operation{ + Name: opCreateRestoreTestingSelection, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections", + } + + if input == nil { + input = &CreateRestoreTestingSelectionInput{} + } + + output = &CreateRestoreTestingSelectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRestoreTestingSelection API operation for AWS Backup. +// +// This request can be sent after CreateRestoreTestingPlan request returns successfully. +// This is the second part of creating a resource testing plan, and it must +// be completed sequentially. +// +// This consists of RestoreTestingSelectionName, ProtectedResourceType, and +// one of the following: +// +// - ProtectedResourceArns +// +// - ProtectedResourceConditions +// +// Each protected resource type can have one single value. +// +// A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns +// along with ProtectedResourceConditions. Alternatively, you can include up +// to 30 specific protected resource ARNs in ProtectedResourceArns. +// +// Cannot select by both protected resource types AND specific ARNs. Request +// will fail if both are included. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation CreateRestoreTestingSelection for usage and error information. +// +// Returned Error Types: +// +// - AlreadyExistsException +// The required resource already exists. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingSelection +func (c *Backup) CreateRestoreTestingSelection(input *CreateRestoreTestingSelectionInput) (*CreateRestoreTestingSelectionOutput, error) { + req, out := c.CreateRestoreTestingSelectionRequest(input) + return out, req.Send() +} + +// CreateRestoreTestingSelectionWithContext is the same as CreateRestoreTestingSelection with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRestoreTestingSelection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) CreateRestoreTestingSelectionWithContext(ctx aws.Context, input *CreateRestoreTestingSelectionInput, opts ...request.Option) (*CreateRestoreTestingSelectionOutput, error) { + req, out := c.CreateRestoreTestingSelectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteBackupPlan = "DeleteBackupPlan" // DeleteBackupPlanRequest generates a "aws/request.Request" representing the @@ -1652,6 +1867,179 @@ return out, req.Send() } +const opDeleteRestoreTestingPlan = "DeleteRestoreTestingPlan" + +// DeleteRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRestoreTestingPlan operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteRestoreTestingPlan for more information on using the DeleteRestoreTestingPlan +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteRestoreTestingPlanRequest method. +// req, resp := client.DeleteRestoreTestingPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingPlan +func (c *Backup) DeleteRestoreTestingPlanRequest(input *DeleteRestoreTestingPlanInput) (req *request.Request, output *DeleteRestoreTestingPlanOutput) { + op := &request.Operation{ + Name: opDeleteRestoreTestingPlan, + HTTPMethod: "DELETE", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}", + } + + if input == nil { + input = &DeleteRestoreTestingPlanInput{} + } + + output = &DeleteRestoreTestingPlanOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteRestoreTestingPlan API operation for AWS Backup. +// +// This request deletes the specified restore testing plan. +// +// Deletion can only successfully occur if all associated restore testing selections +// are deleted first. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation DeleteRestoreTestingPlan for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingPlan +func (c *Backup) DeleteRestoreTestingPlan(input *DeleteRestoreTestingPlanInput) (*DeleteRestoreTestingPlanOutput, error) { + req, out := c.DeleteRestoreTestingPlanRequest(input) + return out, req.Send() +} + +// DeleteRestoreTestingPlanWithContext is the same as DeleteRestoreTestingPlan with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRestoreTestingPlan for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) DeleteRestoreTestingPlanWithContext(ctx aws.Context, input *DeleteRestoreTestingPlanInput, opts ...request.Option) (*DeleteRestoreTestingPlanOutput, error) { + req, out := c.DeleteRestoreTestingPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteRestoreTestingSelection = "DeleteRestoreTestingSelection" + +// DeleteRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRestoreTestingSelection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteRestoreTestingSelection for more information on using the DeleteRestoreTestingSelection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteRestoreTestingSelectionRequest method. +// req, resp := client.DeleteRestoreTestingSelectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingSelection +func (c *Backup) DeleteRestoreTestingSelectionRequest(input *DeleteRestoreTestingSelectionInput) (req *request.Request, output *DeleteRestoreTestingSelectionOutput) { + op := &request.Operation{ + Name: opDeleteRestoreTestingSelection, + HTTPMethod: "DELETE", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + } + + if input == nil { + input = &DeleteRestoreTestingSelectionInput{} + } + + output = &DeleteRestoreTestingSelectionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteRestoreTestingSelection API operation for AWS Backup. +// +// Input the Restore Testing Plan name and Restore Testing Selection name. +// +// All testing selections associated with a restore testing plan must be deleted +// before the restore testing plan can be deleted. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation DeleteRestoreTestingSelection for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingSelection +func (c *Backup) DeleteRestoreTestingSelection(input *DeleteRestoreTestingSelectionInput) (*DeleteRestoreTestingSelectionOutput, error) { + req, out := c.DeleteRestoreTestingSelectionRequest(input) + return out, req.Send() +} + +// DeleteRestoreTestingSelectionWithContext is the same as DeleteRestoreTestingSelection with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRestoreTestingSelection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) DeleteRestoreTestingSelectionWithContext(ctx aws.Context, input *DeleteRestoreTestingSelectionInput, opts ...request.Option) (*DeleteRestoreTestingSelectionOutput, error) { + req, out := c.DeleteRestoreTestingSelectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeBackupJob = "DescribeBackupJob" // DescribeBackupJobRequest generates a "aws/request.Request" representing the @@ -3639,6 +4027,353 @@ return out, req.Send() } +const opGetRestoreJobMetadata = "GetRestoreJobMetadata" + +// GetRestoreJobMetadataRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreJobMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetRestoreJobMetadata for more information on using the GetRestoreJobMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetRestoreJobMetadataRequest method. +// req, resp := client.GetRestoreJobMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreJobMetadata +func (c *Backup) GetRestoreJobMetadataRequest(input *GetRestoreJobMetadataInput) (req *request.Request, output *GetRestoreJobMetadataOutput) { + op := &request.Operation{ + Name: opGetRestoreJobMetadata, + HTTPMethod: "GET", + HTTPPath: "/restore-jobs/{restoreJobId}/metadata", + } + + if input == nil { + input = &GetRestoreJobMetadataInput{} + } + + output = &GetRestoreJobMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRestoreJobMetadata API operation for AWS Backup. +// +// This request returns the metadata for the specified restore job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation GetRestoreJobMetadata for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreJobMetadata +func (c *Backup) GetRestoreJobMetadata(input *GetRestoreJobMetadataInput) (*GetRestoreJobMetadataOutput, error) { + req, out := c.GetRestoreJobMetadataRequest(input) + return out, req.Send() +} + +// GetRestoreJobMetadataWithContext is the same as GetRestoreJobMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See GetRestoreJobMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) GetRestoreJobMetadataWithContext(ctx aws.Context, input *GetRestoreJobMetadataInput, opts ...request.Option) (*GetRestoreJobMetadataOutput, error) { + req, out := c.GetRestoreJobMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRestoreTestingInferredMetadata = "GetRestoreTestingInferredMetadata" + +// GetRestoreTestingInferredMetadataRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreTestingInferredMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetRestoreTestingInferredMetadata for more information on using the GetRestoreTestingInferredMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetRestoreTestingInferredMetadataRequest method. +// req, resp := client.GetRestoreTestingInferredMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingInferredMetadata +func (c *Backup) GetRestoreTestingInferredMetadataRequest(input *GetRestoreTestingInferredMetadataInput) (req *request.Request, output *GetRestoreTestingInferredMetadataOutput) { + op := &request.Operation{ + Name: opGetRestoreTestingInferredMetadata, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/inferred-metadata", + } + + if input == nil { + input = &GetRestoreTestingInferredMetadataInput{} + } + + output = &GetRestoreTestingInferredMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRestoreTestingInferredMetadata API operation for AWS Backup. +// +// This request returns the minimal required set of metadata needed to start +// a restore job with secure default settings. BackupVaultName and RecoveryPointArn +// are required parameters. BackupVaultAccountId is an optional parameter. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation GetRestoreTestingInferredMetadata for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingInferredMetadata +func (c *Backup) GetRestoreTestingInferredMetadata(input *GetRestoreTestingInferredMetadataInput) (*GetRestoreTestingInferredMetadataOutput, error) { + req, out := c.GetRestoreTestingInferredMetadataRequest(input) + return out, req.Send() +} + +// GetRestoreTestingInferredMetadataWithContext is the same as GetRestoreTestingInferredMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See GetRestoreTestingInferredMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) GetRestoreTestingInferredMetadataWithContext(ctx aws.Context, input *GetRestoreTestingInferredMetadataInput, opts ...request.Option) (*GetRestoreTestingInferredMetadataOutput, error) { + req, out := c.GetRestoreTestingInferredMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRestoreTestingPlan = "GetRestoreTestingPlan" + +// GetRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreTestingPlan operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetRestoreTestingPlan for more information on using the GetRestoreTestingPlan +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetRestoreTestingPlanRequest method. +// req, resp := client.GetRestoreTestingPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingPlan +func (c *Backup) GetRestoreTestingPlanRequest(input *GetRestoreTestingPlanInput) (req *request.Request, output *GetRestoreTestingPlanOutput) { + op := &request.Operation{ + Name: opGetRestoreTestingPlan, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}", + } + + if input == nil { + input = &GetRestoreTestingPlanInput{} + } + + output = &GetRestoreTestingPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRestoreTestingPlan API operation for AWS Backup. +// +// Returns RestoreTestingPlan details for the specified RestoreTestingPlanName. +// The details are the body of a restore testing plan in JSON format, in addition +// to plan metadata. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation GetRestoreTestingPlan for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingPlan +func (c *Backup) GetRestoreTestingPlan(input *GetRestoreTestingPlanInput) (*GetRestoreTestingPlanOutput, error) { + req, out := c.GetRestoreTestingPlanRequest(input) + return out, req.Send() +} + +// GetRestoreTestingPlanWithContext is the same as GetRestoreTestingPlan with the addition of +// the ability to pass a context and additional request options. +// +// See GetRestoreTestingPlan for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) GetRestoreTestingPlanWithContext(ctx aws.Context, input *GetRestoreTestingPlanInput, opts ...request.Option) (*GetRestoreTestingPlanOutput, error) { + req, out := c.GetRestoreTestingPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRestoreTestingSelection = "GetRestoreTestingSelection" + +// GetRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreTestingSelection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetRestoreTestingSelection for more information on using the GetRestoreTestingSelection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetRestoreTestingSelectionRequest method. +// req, resp := client.GetRestoreTestingSelectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingSelection +func (c *Backup) GetRestoreTestingSelectionRequest(input *GetRestoreTestingSelectionInput) (req *request.Request, output *GetRestoreTestingSelectionOutput) { + op := &request.Operation{ + Name: opGetRestoreTestingSelection, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + } + + if input == nil { + input = &GetRestoreTestingSelectionInput{} + } + + output = &GetRestoreTestingSelectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRestoreTestingSelection API operation for AWS Backup. +// +// Returns RestoreTestingSelection, which displays resources and elements of +// the restore testing plan. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation GetRestoreTestingSelection for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingSelection +func (c *Backup) GetRestoreTestingSelection(input *GetRestoreTestingSelectionInput) (*GetRestoreTestingSelectionOutput, error) { + req, out := c.GetRestoreTestingSelectionRequest(input) + return out, req.Send() +} + +// GetRestoreTestingSelectionWithContext is the same as GetRestoreTestingSelection with the addition of +// the ability to pass a context and additional request options. +// +// See GetRestoreTestingSelection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) GetRestoreTestingSelectionWithContext(ctx aws.Context, input *GetRestoreTestingSelectionInput, opts ...request.Option) (*GetRestoreTestingSelectionOutput, error) { + req, out := c.GetRestoreTestingSelectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetSupportedResourceTypes = "GetSupportedResourceTypes" // GetSupportedResourceTypesRequest generates a "aws/request.Request" representing the @@ -3717,6 +4452,151 @@ return out, req.Send() } +const opListBackupJobSummaries = "ListBackupJobSummaries" + +// ListBackupJobSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupJobSummaries operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListBackupJobSummaries for more information on using the ListBackupJobSummaries +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListBackupJobSummariesRequest method. +// req, resp := client.ListBackupJobSummariesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobSummaries +func (c *Backup) ListBackupJobSummariesRequest(input *ListBackupJobSummariesInput) (req *request.Request, output *ListBackupJobSummariesOutput) { + op := &request.Operation{ + Name: opListBackupJobSummaries, + HTTPMethod: "GET", + HTTPPath: "/audit/backup-job-summaries", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListBackupJobSummariesInput{} + } + + output = &ListBackupJobSummariesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListBackupJobSummaries API operation for AWS Backup. +// +// This is a request for a summary of backup jobs created or running within +// the most recent 30 days. You can include parameters AccountID, State, ResourceType, +// MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results. +// +// This request returns a summary that contains Region, Account, State, ResourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation ListBackupJobSummaries for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobSummaries +func (c *Backup) ListBackupJobSummaries(input *ListBackupJobSummariesInput) (*ListBackupJobSummariesOutput, error) { + req, out := c.ListBackupJobSummariesRequest(input) + return out, req.Send() +} + +// ListBackupJobSummariesWithContext is the same as ListBackupJobSummaries with the addition of +// the ability to pass a context and additional request options. +// +// See ListBackupJobSummaries for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListBackupJobSummariesWithContext(ctx aws.Context, input *ListBackupJobSummariesInput, opts ...request.Option) (*ListBackupJobSummariesOutput, error) { + req, out := c.ListBackupJobSummariesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListBackupJobSummariesPages iterates over the pages of a ListBackupJobSummaries operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListBackupJobSummaries method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListBackupJobSummaries operation. +// pageNum := 0 +// err := client.ListBackupJobSummariesPages(params, +// func(page *backup.ListBackupJobSummariesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListBackupJobSummariesPages(input *ListBackupJobSummariesInput, fn func(*ListBackupJobSummariesOutput, bool) bool) error { + return c.ListBackupJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListBackupJobSummariesPagesWithContext same as ListBackupJobSummariesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListBackupJobSummariesPagesWithContext(ctx aws.Context, input *ListBackupJobSummariesInput, fn func(*ListBackupJobSummariesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListBackupJobSummariesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListBackupJobSummariesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListBackupJobSummariesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListBackupJobs = "ListBackupJobs" // ListBackupJobsRequest generates a "aws/request.Request" representing the @@ -4597,6 +5477,151 @@ return p.Err() } +const opListCopyJobSummaries = "ListCopyJobSummaries" + +// ListCopyJobSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListCopyJobSummaries operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListCopyJobSummaries for more information on using the ListCopyJobSummaries +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListCopyJobSummariesRequest method. +// req, resp := client.ListCopyJobSummariesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobSummaries +func (c *Backup) ListCopyJobSummariesRequest(input *ListCopyJobSummariesInput) (req *request.Request, output *ListCopyJobSummariesOutput) { + op := &request.Operation{ + Name: opListCopyJobSummaries, + HTTPMethod: "GET", + HTTPPath: "/audit/copy-job-summaries", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCopyJobSummariesInput{} + } + + output = &ListCopyJobSummariesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCopyJobSummaries API operation for AWS Backup. +// +// This request obtains a list of copy jobs created or running within the the +// most recent 30 days. You can include parameters AccountID, State, ResourceType, +// MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results. +// +// This request returns a summary that contains Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation ListCopyJobSummaries for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobSummaries +func (c *Backup) ListCopyJobSummaries(input *ListCopyJobSummariesInput) (*ListCopyJobSummariesOutput, error) { + req, out := c.ListCopyJobSummariesRequest(input) + return out, req.Send() +} + +// ListCopyJobSummariesWithContext is the same as ListCopyJobSummaries with the addition of +// the ability to pass a context and additional request options. +// +// See ListCopyJobSummaries for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListCopyJobSummariesWithContext(ctx aws.Context, input *ListCopyJobSummariesInput, opts ...request.Option) (*ListCopyJobSummariesOutput, error) { + req, out := c.ListCopyJobSummariesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCopyJobSummariesPages iterates over the pages of a ListCopyJobSummaries operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCopyJobSummaries method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListCopyJobSummaries operation. +// pageNum := 0 +// err := client.ListCopyJobSummariesPages(params, +// func(page *backup.ListCopyJobSummariesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListCopyJobSummariesPages(input *ListCopyJobSummariesInput, fn func(*ListCopyJobSummariesOutput, bool) bool) error { + return c.ListCopyJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCopyJobSummariesPagesWithContext same as ListCopyJobSummariesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListCopyJobSummariesPagesWithContext(ctx aws.Context, input *ListCopyJobSummariesInput, fn func(*ListCopyJobSummariesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCopyJobSummariesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCopyJobSummariesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCopyJobSummariesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListCopyJobs = "ListCopyJobs" // ListCopyJobsRequest generates a "aws/request.Request" representing the @@ -6028,6 +7053,151 @@ return p.Err() } +const opListRestoreJobSummaries = "ListRestoreJobSummaries" + +// ListRestoreJobSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreJobSummaries operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListRestoreJobSummaries for more information on using the ListRestoreJobSummaries +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListRestoreJobSummariesRequest method. +// req, resp := client.ListRestoreJobSummariesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobSummaries +func (c *Backup) ListRestoreJobSummariesRequest(input *ListRestoreJobSummariesInput) (req *request.Request, output *ListRestoreJobSummariesOutput) { + op := &request.Operation{ + Name: opListRestoreJobSummaries, + HTTPMethod: "GET", + HTTPPath: "/audit/restore-job-summaries", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRestoreJobSummariesInput{} + } + + output = &ListRestoreJobSummariesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRestoreJobSummaries API operation for AWS Backup. +// +// This request obtains a summary of restore jobs created or running within +// the the most recent 30 days. You can include parameters AccountID, State, +// ResourceType, AggregationPeriod, MaxResults, or NextToken to filter results. +// +// This request returns a summary that contains Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation ListRestoreJobSummaries for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobSummaries +func (c *Backup) ListRestoreJobSummaries(input *ListRestoreJobSummariesInput) (*ListRestoreJobSummariesOutput, error) { + req, out := c.ListRestoreJobSummariesRequest(input) + return out, req.Send() +} + +// ListRestoreJobSummariesWithContext is the same as ListRestoreJobSummaries with the addition of +// the ability to pass a context and additional request options. +// +// See ListRestoreJobSummaries for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreJobSummariesWithContext(ctx aws.Context, input *ListRestoreJobSummariesInput, opts ...request.Option) (*ListRestoreJobSummariesOutput, error) { + req, out := c.ListRestoreJobSummariesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRestoreJobSummariesPages iterates over the pages of a ListRestoreJobSummaries operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreJobSummaries method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListRestoreJobSummaries operation. +// pageNum := 0 +// err := client.ListRestoreJobSummariesPages(params, +// func(page *backup.ListRestoreJobSummariesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreJobSummariesPages(input *ListRestoreJobSummariesInput, fn func(*ListRestoreJobSummariesOutput, bool) bool) error { + return c.ListRestoreJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRestoreJobSummariesPagesWithContext same as ListRestoreJobSummariesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreJobSummariesPagesWithContext(ctx aws.Context, input *ListRestoreJobSummariesInput, fn func(*ListRestoreJobSummariesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreJobSummariesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreJobSummariesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreJobSummariesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListRestoreJobs = "ListRestoreJobs" // ListRestoreJobsRequest generates a "aws/request.Request" representing the @@ -6175,6 +7345,439 @@ return p.Err() } +const opListRestoreJobsByProtectedResource = "ListRestoreJobsByProtectedResource" + +// ListRestoreJobsByProtectedResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreJobsByProtectedResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListRestoreJobsByProtectedResource for more information on using the ListRestoreJobsByProtectedResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListRestoreJobsByProtectedResourceRequest method. +// req, resp := client.ListRestoreJobsByProtectedResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsByProtectedResource +func (c *Backup) ListRestoreJobsByProtectedResourceRequest(input *ListRestoreJobsByProtectedResourceInput) (req *request.Request, output *ListRestoreJobsByProtectedResourceOutput) { + op := &request.Operation{ + Name: opListRestoreJobsByProtectedResource, + HTTPMethod: "GET", + HTTPPath: "/resources/{resourceArn}/restore-jobs/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRestoreJobsByProtectedResourceInput{} + } + + output = &ListRestoreJobsByProtectedResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRestoreJobsByProtectedResource API operation for AWS Backup. +// +// This returns restore jobs that contain the specified protected resource. +// +// You must include ResourceArn. You can optionally include NextToken, ByStatus, +// MaxResults, ByRecoveryPointCreationDateAfter , and ByRecoveryPointCreationDateBefore. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation ListRestoreJobsByProtectedResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsByProtectedResource +func (c *Backup) ListRestoreJobsByProtectedResource(input *ListRestoreJobsByProtectedResourceInput) (*ListRestoreJobsByProtectedResourceOutput, error) { + req, out := c.ListRestoreJobsByProtectedResourceRequest(input) + return out, req.Send() +} + +// ListRestoreJobsByProtectedResourceWithContext is the same as ListRestoreJobsByProtectedResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListRestoreJobsByProtectedResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreJobsByProtectedResourceWithContext(ctx aws.Context, input *ListRestoreJobsByProtectedResourceInput, opts ...request.Option) (*ListRestoreJobsByProtectedResourceOutput, error) { + req, out := c.ListRestoreJobsByProtectedResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRestoreJobsByProtectedResourcePages iterates over the pages of a ListRestoreJobsByProtectedResource operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreJobsByProtectedResource 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 ListRestoreJobsByProtectedResource operation. +// pageNum := 0 +// err := client.ListRestoreJobsByProtectedResourcePages(params, +// func(page *backup.ListRestoreJobsByProtectedResourceOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreJobsByProtectedResourcePages(input *ListRestoreJobsByProtectedResourceInput, fn func(*ListRestoreJobsByProtectedResourceOutput, bool) bool) error { + return c.ListRestoreJobsByProtectedResourcePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRestoreJobsByProtectedResourcePagesWithContext same as ListRestoreJobsByProtectedResourcePages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreJobsByProtectedResourcePagesWithContext(ctx aws.Context, input *ListRestoreJobsByProtectedResourceInput, fn func(*ListRestoreJobsByProtectedResourceOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreJobsByProtectedResourceInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreJobsByProtectedResourceRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreJobsByProtectedResourceOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreTestingPlans = "ListRestoreTestingPlans" + +// ListRestoreTestingPlansRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreTestingPlans operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListRestoreTestingPlans for more information on using the ListRestoreTestingPlans +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListRestoreTestingPlansRequest method. +// req, resp := client.ListRestoreTestingPlansRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingPlans +func (c *Backup) ListRestoreTestingPlansRequest(input *ListRestoreTestingPlansInput) (req *request.Request, output *ListRestoreTestingPlansOutput) { + op := &request.Operation{ + Name: opListRestoreTestingPlans, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/plans", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRestoreTestingPlansInput{} + } + + output = &ListRestoreTestingPlansOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRestoreTestingPlans API operation for AWS Backup. +// +// Returns a list of restore testing plans. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation ListRestoreTestingPlans for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingPlans +func (c *Backup) ListRestoreTestingPlans(input *ListRestoreTestingPlansInput) (*ListRestoreTestingPlansOutput, error) { + req, out := c.ListRestoreTestingPlansRequest(input) + return out, req.Send() +} + +// ListRestoreTestingPlansWithContext is the same as ListRestoreTestingPlans with the addition of +// the ability to pass a context and additional request options. +// +// See ListRestoreTestingPlans for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreTestingPlansWithContext(ctx aws.Context, input *ListRestoreTestingPlansInput, opts ...request.Option) (*ListRestoreTestingPlansOutput, error) { + req, out := c.ListRestoreTestingPlansRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRestoreTestingPlansPages iterates over the pages of a ListRestoreTestingPlans operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreTestingPlans method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListRestoreTestingPlans operation. +// pageNum := 0 +// err := client.ListRestoreTestingPlansPages(params, +// func(page *backup.ListRestoreTestingPlansOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreTestingPlansPages(input *ListRestoreTestingPlansInput, fn func(*ListRestoreTestingPlansOutput, bool) bool) error { + return c.ListRestoreTestingPlansPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRestoreTestingPlansPagesWithContext same as ListRestoreTestingPlansPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreTestingPlansPagesWithContext(ctx aws.Context, input *ListRestoreTestingPlansInput, fn func(*ListRestoreTestingPlansOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreTestingPlansInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreTestingPlansRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreTestingPlansOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreTestingSelections = "ListRestoreTestingSelections" + +// ListRestoreTestingSelectionsRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreTestingSelections operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListRestoreTestingSelections for more information on using the ListRestoreTestingSelections +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListRestoreTestingSelectionsRequest method. +// req, resp := client.ListRestoreTestingSelectionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingSelections +func (c *Backup) ListRestoreTestingSelectionsRequest(input *ListRestoreTestingSelectionsInput) (req *request.Request, output *ListRestoreTestingSelectionsOutput) { + op := &request.Operation{ + Name: opListRestoreTestingSelections, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRestoreTestingSelectionsInput{} + } + + output = &ListRestoreTestingSelectionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRestoreTestingSelections API operation for AWS Backup. +// +// Returns a list of restore testing selections. Can be filtered by MaxResults +// and RestoreTestingPlanName. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation ListRestoreTestingSelections for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingSelections +func (c *Backup) ListRestoreTestingSelections(input *ListRestoreTestingSelectionsInput) (*ListRestoreTestingSelectionsOutput, error) { + req, out := c.ListRestoreTestingSelectionsRequest(input) + return out, req.Send() +} + +// ListRestoreTestingSelectionsWithContext is the same as ListRestoreTestingSelections with the addition of +// the ability to pass a context and additional request options. +// +// See ListRestoreTestingSelections for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreTestingSelectionsWithContext(ctx aws.Context, input *ListRestoreTestingSelectionsInput, opts ...request.Option) (*ListRestoreTestingSelectionsOutput, error) { + req, out := c.ListRestoreTestingSelectionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRestoreTestingSelectionsPages iterates over the pages of a ListRestoreTestingSelections operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreTestingSelections method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListRestoreTestingSelections operation. +// pageNum := 0 +// err := client.ListRestoreTestingSelectionsPages(params, +// func(page *backup.ListRestoreTestingSelectionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreTestingSelectionsPages(input *ListRestoreTestingSelectionsInput, fn func(*ListRestoreTestingSelectionsOutput, bool) bool) error { + return c.ListRestoreTestingSelectionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRestoreTestingSelectionsPagesWithContext same as ListRestoreTestingSelectionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) ListRestoreTestingSelectionsPagesWithContext(ctx aws.Context, input *ListRestoreTestingSelectionsInput, fn func(*ListRestoreTestingSelectionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreTestingSelectionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreTestingSelectionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreTestingSelectionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTags = "ListTags" // ListTagsRequest generates a "aws/request.Request" representing the @@ -6613,6 +8216,102 @@ return out, req.Send() } +const opPutRestoreValidationResult = "PutRestoreValidationResult" + +// PutRestoreValidationResultRequest generates a "aws/request.Request" representing the +// client's request for the PutRestoreValidationResult operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See PutRestoreValidationResult for more information on using the PutRestoreValidationResult +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the PutRestoreValidationResultRequest method. +// req, resp := client.PutRestoreValidationResultRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutRestoreValidationResult +func (c *Backup) PutRestoreValidationResultRequest(input *PutRestoreValidationResultInput) (req *request.Request, output *PutRestoreValidationResultOutput) { + op := &request.Operation{ + Name: opPutRestoreValidationResult, + HTTPMethod: "PUT", + HTTPPath: "/restore-jobs/{restoreJobId}/validations", + } + + if input == nil { + input = &PutRestoreValidationResultInput{} + } + + output = &PutRestoreValidationResultOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutRestoreValidationResult API operation for AWS Backup. +// +// This request allows you to send your independent self-run restore test validation +// results. RestoreJobId and ValidationStatus are required. Optionally, you +// can input a ValidationStatusMessage. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation PutRestoreValidationResult for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutRestoreValidationResult +func (c *Backup) PutRestoreValidationResult(input *PutRestoreValidationResultInput) (*PutRestoreValidationResultOutput, error) { + req, out := c.PutRestoreValidationResultRequest(input) + return out, req.Send() +} + +// PutRestoreValidationResultWithContext is the same as PutRestoreValidationResult with the addition of +// the ability to pass a context and additional request options. +// +// See PutRestoreValidationResult for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) PutRestoreValidationResultWithContext(ctx aws.Context, input *PutRestoreValidationResultInput, opts ...request.Option) (*PutRestoreValidationResultOutput, error) { + req, out := c.PutRestoreValidationResultRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartBackupJob = "StartBackupJob" // StartBackupJobRequest generates a "aws/request.Request" representing the @@ -7714,12 +9413,10 @@ // UpdateRegionSettings API operation for AWS Backup. // -// Updates the current service opt-in settings for the Region. If service-opt-in -// is enabled for a service, Backup tries to protect that service's resources -// in this Region, when the resource is included in an on-demand backup or scheduled -// backup plan. Otherwise, Backup does not try to protect that service's resources -// in this Region. Use the DescribeRegionSettings API to determine the resource -// types that are supported. +// Updates the current service opt-in settings for the Region. +// +// Use the DescribeRegionSettings API to determine the resource types that are +// supported. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7856,6 +9553,210 @@ return out, req.Send() } +const opUpdateRestoreTestingPlan = "UpdateRestoreTestingPlan" + +// UpdateRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRestoreTestingPlan operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateRestoreTestingPlan for more information on using the UpdateRestoreTestingPlan +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateRestoreTestingPlanRequest method. +// req, resp := client.UpdateRestoreTestingPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingPlan +func (c *Backup) UpdateRestoreTestingPlanRequest(input *UpdateRestoreTestingPlanInput) (req *request.Request, output *UpdateRestoreTestingPlanOutput) { + op := &request.Operation{ + Name: opUpdateRestoreTestingPlan, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}", + } + + if input == nil { + input = &UpdateRestoreTestingPlanInput{} + } + + output = &UpdateRestoreTestingPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRestoreTestingPlan API operation for AWS Backup. +// +// This request will send changes to your specified restore testing plan. RestoreTestingPlanName +// cannot be updated after it is created. +// +// RecoveryPointSelection can contain: +// +// - Algorithm +// +// - ExcludeVaults +// +// - IncludeVaults +// +// - RecoveryPointTypes +// +// - SelectionWindowDays +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateRestoreTestingPlan for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingPlan +func (c *Backup) UpdateRestoreTestingPlan(input *UpdateRestoreTestingPlanInput) (*UpdateRestoreTestingPlanOutput, error) { + req, out := c.UpdateRestoreTestingPlanRequest(input) + return out, req.Send() +} + +// UpdateRestoreTestingPlanWithContext is the same as UpdateRestoreTestingPlan with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRestoreTestingPlan for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) UpdateRestoreTestingPlanWithContext(ctx aws.Context, input *UpdateRestoreTestingPlanInput, opts ...request.Option) (*UpdateRestoreTestingPlanOutput, error) { + req, out := c.UpdateRestoreTestingPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRestoreTestingSelection = "UpdateRestoreTestingSelection" + +// UpdateRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRestoreTestingSelection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateRestoreTestingSelection for more information on using the UpdateRestoreTestingSelection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateRestoreTestingSelectionRequest method. +// req, resp := client.UpdateRestoreTestingSelectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingSelection +func (c *Backup) UpdateRestoreTestingSelectionRequest(input *UpdateRestoreTestingSelectionInput) (req *request.Request, output *UpdateRestoreTestingSelectionOutput) { + op := &request.Operation{ + Name: opUpdateRestoreTestingSelection, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + } + + if input == nil { + input = &UpdateRestoreTestingSelectionInput{} + } + + output = &UpdateRestoreTestingSelectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRestoreTestingSelection API operation for AWS Backup. +// +// Most elements except the RestoreTestingSelectionName can be updated with +// this request. +// +// RestoreTestingSelection can use either protected resource ARNs or conditions, +// but not both. That is, if your selection has ProtectedResourceArns, requesting +// an update with the parameter ProtectedResourceConditions will be unsuccessful. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateRestoreTestingSelection for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingSelection +func (c *Backup) UpdateRestoreTestingSelection(input *UpdateRestoreTestingSelectionInput) (*UpdateRestoreTestingSelectionOutput, error) { + req, out := c.UpdateRestoreTestingSelectionRequest(input) + return out, req.Send() +} + +// UpdateRestoreTestingSelectionWithContext is the same as UpdateRestoreTestingSelection with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRestoreTestingSelection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) UpdateRestoreTestingSelectionWithContext(ctx aws.Context, input *UpdateRestoreTestingSelectionInput, opts ...request.Option) (*UpdateRestoreTestingSelectionOutput, error) { + req, out := c.UpdateRestoreTestingSelectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // A list of backup options for each resource type. type AdvancedBackupSetting struct { _ struct{} `type:"structure"` @@ -7992,6 +9893,122 @@ return s.RespMetadata.RequestID } +// This is a summary of jobs created or running within the most recent 30 days. +// +// The returned summary may contain the following: Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +type BackupJobSummary struct { + _ struct{} `type:"structure"` + + // The account ID that owns the jobs within the summary. + AccountId *string `type:"string"` + + // The value as a number of jobs in a job summary. + Count *int64 `type:"integer"` + + // The value of time in number format of a job end time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + EndTime *time.Time `type:"timestamp"` + + // This parameter is the job count for the specified message category. + // + // Example strings include AccessDenied, Success, and InvalidParameters. See + // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `type:"string"` + + // The Amazon Web Services Regions within the job summary. + Region *string `type:"string"` + + // This value is the job count for the specified resource type. The request + // GetSupportedResourceTypes returns strings for supported resource types. + ResourceType *string `type:"string"` + + // The value of time in number format of a job start time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + StartTime *time.Time `type:"timestamp"` + + // This value is job count for jobs with the specified state. + State *string `type:"string" enum:"BackupJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BackupJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BackupJobSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *BackupJobSummary) SetAccountId(v string) *BackupJobSummary { + s.AccountId = &v + return s +} + +// SetCount sets the Count field's value. +func (s *BackupJobSummary) SetCount(v int64) *BackupJobSummary { + s.Count = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *BackupJobSummary) SetEndTime(v time.Time) *BackupJobSummary { + s.EndTime = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *BackupJobSummary) SetMessageCategory(v string) *BackupJobSummary { + s.MessageCategory = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *BackupJobSummary) SetRegion(v string) *BackupJobSummary { + s.Region = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *BackupJobSummary) SetResourceType(v string) *BackupJobSummary { + s.ResourceType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *BackupJobSummary) SetStartTime(v time.Time) *BackupJobSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *BackupJobSummary) SetState(v string) *BackupJobSummary { + s.State = &v + return s +} + // Contains DeleteAt and MoveToColdStorageAt timestamps, which are used to specify // a lifecycle for a recovery point. // @@ -8648,6 +10665,18 @@ // This is a boolean value indicating this is a parent (composite) copy job. IsParent *bool `type:"boolean"` + // This parameter is the job count for the specified message category. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and InvalidParameters. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum + MessageCategory *string `type:"string"` + // This is the number of child (nested) copy jobs. NumberOfChildJobs *int64 `type:"long"` @@ -8773,6 +10802,12 @@ return s } +// SetMessageCategory sets the MessageCategory field's value. +func (s *CopyJob) SetMessageCategory(v string) *CopyJob { + s.MessageCategory = &v + return s +} + // SetNumberOfChildJobs sets the NumberOfChildJobs field's value. func (s *CopyJob) SetNumberOfChildJobs(v int64) *CopyJob { s.NumberOfChildJobs = &v @@ -8827,6 +10862,123 @@ return s } +// This is a summary of copy jobs created or running within the most recent +// 30 days. +// +// The returned summary may contain the following: Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +type CopyJobSummary struct { + _ struct{} `type:"structure"` + + // The account ID that owns the jobs within the summary. + AccountId *string `type:"string"` + + // The value as a number of jobs in a job summary. + Count *int64 `type:"integer"` + + // The value of time in number format of a job end time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + EndTime *time.Time `type:"timestamp"` + + // This parameter is the job count for the specified message category. + // + // Example strings include AccessDenied, Success, and InvalidParameters. See + // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `type:"string"` + + // This is the Amazon Web Services Regions within the job summary. + Region *string `type:"string"` + + // This value is the job count for the specified resource type. The request + // GetSupportedResourceTypes returns strings for supported resource types + ResourceType *string `type:"string"` + + // The value of time in number format of a job start time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + StartTime *time.Time `type:"timestamp"` + + // This value is job count for jobs with the specified state. + State *string `type:"string" enum:"CopyJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyJobSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *CopyJobSummary) SetAccountId(v string) *CopyJobSummary { + s.AccountId = &v + return s +} + +// SetCount sets the Count field's value. +func (s *CopyJobSummary) SetCount(v int64) *CopyJobSummary { + s.Count = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *CopyJobSummary) SetEndTime(v time.Time) *CopyJobSummary { + s.EndTime = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *CopyJobSummary) SetMessageCategory(v string) *CopyJobSummary { + s.MessageCategory = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *CopyJobSummary) SetRegion(v string) *CopyJobSummary { + s.Region = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *CopyJobSummary) SetResourceType(v string) *CopyJobSummary { + s.ResourceType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CopyJobSummary) SetStartTime(v time.Time) *CopyJobSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *CopyJobSummary) SetState(v string) *CopyJobSummary { + s.State = &v + return s +} + type CreateBackupPlanInput struct { _ struct{} `type:"structure"` @@ -9616,6 +11768,9 @@ BackupVaultTags map[string]*string `type:"map" sensitive:"true"` // This is the ID of the creation request. + // + // This parameter is optional. If used, this parameter must contain 1 to 50 + // alphanumeric or '-_.' characters. CreatorRequestId *string `type:"string"` // This is the setting that specifies the maximum retention period that the @@ -9963,6 +12118,314 @@ return s } +type CreateRestoreTestingPlanInput struct { + _ struct{} `type:"structure"` + + // This is a unique string that identifies the request and allows failed requests + // to be retriedwithout the risk of running the operation twice. This parameter + // is optional. If used, this parameter must contain 1 to 50 alphanumeric or + // '-_.' characters. + CreatorRequestId *string `type:"string"` + + // A restore testing plan must contain a unique RestoreTestingPlanName string + // you create and must contain a ScheduleExpression cron. You may optionally + // include a StartWindowHours integer and a CreatorRequestId string. + // + // The RestoreTestingPlanName is a unique string that is the name of the restore + // testing plan. This cannot be changed after creation, and it must consist + // of only alphanumeric characters and underscores. + // + // RestoreTestingPlan is a required field + RestoreTestingPlan *RestoreTestingPlanForCreate `type:"structure" required:"true"` + + // Optional tags to include. A tag is a key-value pair you can use to manage, + // filter, and search for your resources. Allowed characters include UTF-8 letters,numbers, + // spaces, and the following characters: + - = . _ : /. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateRestoreTestingPlanInput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingPlanInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRestoreTestingPlanInput"} + if s.RestoreTestingPlan == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlan")) + } + if s.RestoreTestingPlan != nil { + if err := s.RestoreTestingPlan.Validate(); err != nil { + invalidParams.AddNested("RestoreTestingPlan", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateRestoreTestingPlanInput) SetCreatorRequestId(v string) *CreateRestoreTestingPlanInput { + s.CreatorRequestId = &v + return s +} + +// SetRestoreTestingPlan sets the RestoreTestingPlan field's value. +func (s *CreateRestoreTestingPlanInput) SetRestoreTestingPlan(v *RestoreTestingPlanForCreate) *CreateRestoreTestingPlanInput { + s.RestoreTestingPlan = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRestoreTestingPlanInput) SetTags(v map[string]*string) *CreateRestoreTestingPlanInput { + s.Tags = v + return s +} + +type CreateRestoreTestingPlanOutput struct { + _ struct{} `type:"structure"` + + // The date and time a restore testing plan was created, in Unix format and + // Coordinated Universal Time (UTC). The value of CreationTime is accurate to + // milliseconds. For example, the value 1516925490.087 represents Friday, January + // 26, 2018 12:11:30.087AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies the created restore + // testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // This unique string is the name of the restore testing plan. + // + // The name cannot be changed after creation. The name consists of only alphanumeric + // characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingPlanOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingPlanOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CreateRestoreTestingPlanOutput) SetCreationTime(v time.Time) *CreateRestoreTestingPlanOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *CreateRestoreTestingPlanOutput) SetRestoreTestingPlanArn(v string) *CreateRestoreTestingPlanOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *CreateRestoreTestingPlanOutput) SetRestoreTestingPlanName(v string) *CreateRestoreTestingPlanOutput { + s.RestoreTestingPlanName = &v + return s +} + +type CreateRestoreTestingSelectionInput struct { + _ struct{} `type:"structure"` + + // This is an optional unique string that identifies the request and allows + // failed requests to be retried without the risk of running the operation twice. + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` + + // Input the restore testing plan name that was returned from the related CreateRestoreTestingPlan + // request. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // This consists of RestoreTestingSelectionName, ProtectedResourceType, and + // one of the following: + // + // * ProtectedResourceArns + // + // * ProtectedResourceConditions + // + // Each protected resource type can have one single value. + // + // A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns + // along with ProtectedResourceConditions. Alternatively, you can include up + // to 30 specific protected resource ARNs in ProtectedResourceArns. + // + // RestoreTestingSelection is a required field + RestoreTestingSelection *RestoreTestingSelectionForCreate `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingSelectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelection == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelection")) + } + if s.RestoreTestingSelection != nil { + if err := s.RestoreTestingSelection.Validate(); err != nil { + invalidParams.AddNested("RestoreTestingSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateRestoreTestingSelectionInput) SetCreatorRequestId(v string) *CreateRestoreTestingSelectionInput { + s.CreatorRequestId = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *CreateRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *CreateRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelection sets the RestoreTestingSelection field's value. +func (s *CreateRestoreTestingSelectionInput) SetRestoreTestingSelection(v *RestoreTestingSelectionForCreate) *CreateRestoreTestingSelectionInput { + s.RestoreTestingSelection = v + return s +} + +type CreateRestoreTestingSelectionOutput struct { + _ struct{} `type:"structure"` + + // This is the time the resource testing selection was created successfully. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // This is the ARN of the restore testing plan with which the restore testing + // selection is associated. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // Unique string that is the name of the restore testing plan. + // + // The name cannot be changed after creation. The name consists of only alphanumeric + // characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the unique name of the restore testing selection that belongs to + // the related restore testing plan. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingSelectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingSelectionOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CreateRestoreTestingSelectionOutput) SetCreationTime(v time.Time) *CreateRestoreTestingSelectionOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *CreateRestoreTestingSelectionOutput) SetRestoreTestingPlanArn(v string) *CreateRestoreTestingSelectionOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *CreateRestoreTestingSelectionOutput) SetRestoreTestingPlanName(v string) *CreateRestoreTestingSelectionOutput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *CreateRestoreTestingSelectionOutput) SetRestoreTestingSelectionName(v string) *CreateRestoreTestingSelectionOutput { + s.RestoreTestingSelectionName = &v + return s +} + // This is a resource filter containing FromDate: DateTime and ToDate: DateTime. // Both values are required. Future DateTime values are not permitted. // @@ -10764,6 +13227,166 @@ return s.String() } +type DeleteRestoreTestingPlanInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Required unique name of the restore testing plan you wish to delete. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRestoreTestingPlanInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRestoreTestingPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRestoreTestingPlanInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *DeleteRestoreTestingPlanInput) SetRestoreTestingPlanName(v string) *DeleteRestoreTestingPlanInput { + s.RestoreTestingPlanName = &v + return s +} + +type DeleteRestoreTestingPlanOutput 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 DeleteRestoreTestingPlanOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRestoreTestingPlanOutput) GoString() string { + return s.String() +} + +type DeleteRestoreTestingSelectionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Required unique name of the restore testing plan that contains the restore + // testing selection you wish to delete. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // Required unique name of the restore testing selection you wish to delete. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `location:"uri" locationName:"RestoreTestingSelectionName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRestoreTestingSelectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRestoreTestingSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.RestoreTestingSelectionName != nil && len(*s.RestoreTestingSelectionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingSelectionName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *DeleteRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *DeleteRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *DeleteRestoreTestingSelectionInput) SetRestoreTestingSelectionName(v string) *DeleteRestoreTestingSelectionInput { + s.RestoreTestingSelectionName = &v + return s +} + +type DeleteRestoreTestingSelectionOutput 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 DeleteRestoreTestingSelectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRestoreTestingSelectionOutput) GoString() string { + return s.String() +} + // A dependent Amazon Web Services service or resource returned an error to // the Backup service, and the action cannot be completed. type DependencyFailureException struct { @@ -10950,10 +13573,20 @@ // example, arn:aws:iam::123456789012:role/S3Access. IamRoleArn *string `type:"string"` + // This is the date a backup job was initiated. + InitiationDate *time.Time `type:"timestamp"` + // This returns the boolean value that a backup job is a parent (composite) // job. IsParent *bool `type:"boolean"` + // This is the job count for the specified message category. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. + // View Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted MessageCategory strings. + MessageCategory *string `type:"string"` + // This returns the number of child (nested) backup jobs. NumberOfChildJobs *int64 `type:"long"` @@ -11098,12 +13731,24 @@ return s } +// SetInitiationDate sets the InitiationDate field's value. +func (s *DescribeBackupJobOutput) SetInitiationDate(v time.Time) *DescribeBackupJobOutput { + s.InitiationDate = &v + return s +} + // SetIsParent sets the IsParent field's value. func (s *DescribeBackupJobOutput) SetIsParent(v bool) *DescribeBackupJobOutput { s.IsParent = &v return s } +// SetMessageCategory sets the MessageCategory field's value. +func (s *DescribeBackupJobOutput) SetMessageCategory(v string) *DescribeBackupJobOutput { + s.MessageCategory = &v + return s +} + // SetNumberOfChildJobs sets the NumberOfChildJobs field's value. func (s *DescribeBackupJobOutput) SetNumberOfChildJobs(v int64) *DescribeBackupJobOutput { s.NumberOfChildJobs = &v @@ -11245,7 +13890,9 @@ CreationDate *time.Time `type:"timestamp"` // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. + // be retried without the risk of running the operation twice. This parameter + // is optional. If used, this parameter must contain 1 to 50 alphanumeric or + // '-_.' characters. CreatorRequestId *string `type:"string"` // The server-side encryption key that is used to protect your backups; for @@ -11757,6 +14404,22 @@ // January 26, 2018 12:11:30.087 AM. LastBackupTime *time.Time `type:"timestamp"` + // This is the ARN (Amazon Resource Name) of the backup vault that contains + // the most recent backup recovery point. + LastBackupVaultArn *string `type:"string"` + + // This is the ARN (Amazon Resource Name) of the most recent recovery point. + LastRecoveryPointArn *string `type:"string"` + + // This is the time in minutes the most recent restore job took to complete. + LatestRestoreExecutionTimeMinutes *int64 `type:"long"` + + // This is the creation date of the most recent restore job. + LatestRestoreJobCreationDate *time.Time `type:"timestamp"` + + // This is the date the most recent recovery point was created. + LatestRestoreRecoveryPointCreationDate *time.Time `type:"timestamp"` + // An ARN that uniquely identifies a resource. The format of the ARN depends // on the resource type. ResourceArn *string `type:"string"` @@ -11794,6 +14457,36 @@ return s } +// SetLastBackupVaultArn sets the LastBackupVaultArn field's value. +func (s *DescribeProtectedResourceOutput) SetLastBackupVaultArn(v string) *DescribeProtectedResourceOutput { + s.LastBackupVaultArn = &v + return s +} + +// SetLastRecoveryPointArn sets the LastRecoveryPointArn field's value. +func (s *DescribeProtectedResourceOutput) SetLastRecoveryPointArn(v string) *DescribeProtectedResourceOutput { + s.LastRecoveryPointArn = &v + return s +} + +// SetLatestRestoreExecutionTimeMinutes sets the LatestRestoreExecutionTimeMinutes field's value. +func (s *DescribeProtectedResourceOutput) SetLatestRestoreExecutionTimeMinutes(v int64) *DescribeProtectedResourceOutput { + s.LatestRestoreExecutionTimeMinutes = &v + return s +} + +// SetLatestRestoreJobCreationDate sets the LatestRestoreJobCreationDate field's value. +func (s *DescribeProtectedResourceOutput) SetLatestRestoreJobCreationDate(v time.Time) *DescribeProtectedResourceOutput { + s.LatestRestoreJobCreationDate = &v + return s +} + +// SetLatestRestoreRecoveryPointCreationDate sets the LatestRestoreRecoveryPointCreationDate field's value. +func (s *DescribeProtectedResourceOutput) SetLatestRestoreRecoveryPointCreationDate(v time.Time) *DescribeProtectedResourceOutput { + s.LatestRestoreRecoveryPointCreationDate = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *DescribeProtectedResourceOutput) SetResourceArn(v string) *DescribeProtectedResourceOutput { s.ResourceArn = &v @@ -12034,6 +14727,9 @@ // Specifies the storage class of the recovery point. Valid values are WARM // or COLD. StorageClass *string `type:"string" enum:"StorageClass"` + + // This is the type of vault in which the described recovery point is stored. + VaultType *string `type:"string" enum:"VaultType"` } // String returns the string representation. @@ -12192,6 +14888,12 @@ return s } +// SetVaultType sets the VaultType field's value. +func (s *DescribeRecoveryPointOutput) SetVaultType(v string) *DescribeRecoveryPointOutput { + s.VaultType = &v + return s +} + type DescribeRegionSettingsInput struct { _ struct{} `type:"structure" nopayload:"true"` } @@ -12494,6 +15196,9 @@ // Friday, January 26, 2018 12:11:30.087 AM. CompletionDate *time.Time `type:"timestamp"` + // Contains identifying information about the creation of a restore job. + CreatedBy *RestoreJobCreator `type:"structure"` + // An Amazon Resource Name (ARN) that uniquely identifies a resource whose recovery // point is being restored. The format of the ARN depends on the resource type // of the backed-up resource. @@ -12505,6 +15210,13 @@ // 12:11:30.087 AM. CreationDate *time.Time `type:"timestamp"` + // This notes the status of the data generated by the restore test. The status + // may be Deleting, Failed, or Successful. + DeletionStatus *string `type:"string" enum:"RestoreDeletionStatus"` + + // This describes the restore job deletion status. + DeletionStatusMessage *string `type:"string"` + // The amount of time in minutes that a job restoring a recovery point is expected // to take. ExpectedCompletionTimeMinutes *int64 `type:"long"` @@ -12520,6 +15232,10 @@ // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. RecoveryPointArn *string `type:"string"` + // This is the creation date of the recovery point made by the specifed restore + // job. + RecoveryPointCreationDate *time.Time `type:"timestamp"` + // Returns metadata associated with a restore job listed by resource type. ResourceType *string `type:"string"` @@ -12532,6 +15248,12 @@ // A message showing the status of a job to restore a recovery point. StatusMessage *string `type:"string"` + + // This is the status of validation run on the indicated restore job. + ValidationStatus *string `type:"string" enum:"RestoreValidationStatus"` + + // This describes the status of validation run on the indicated restore job. + ValidationStatusMessage *string `type:"string"` } // String returns the string representation. @@ -12570,6 +15292,12 @@ return s } +// SetCreatedBy sets the CreatedBy field's value. +func (s *DescribeRestoreJobOutput) SetCreatedBy(v *RestoreJobCreator) *DescribeRestoreJobOutput { + s.CreatedBy = v + return s +} + // SetCreatedResourceArn sets the CreatedResourceArn field's value. func (s *DescribeRestoreJobOutput) SetCreatedResourceArn(v string) *DescribeRestoreJobOutput { s.CreatedResourceArn = &v @@ -12582,6 +15310,18 @@ return s } +// SetDeletionStatus sets the DeletionStatus field's value. +func (s *DescribeRestoreJobOutput) SetDeletionStatus(v string) *DescribeRestoreJobOutput { + s.DeletionStatus = &v + return s +} + +// SetDeletionStatusMessage sets the DeletionStatusMessage field's value. +func (s *DescribeRestoreJobOutput) SetDeletionStatusMessage(v string) *DescribeRestoreJobOutput { + s.DeletionStatusMessage = &v + return s +} + // SetExpectedCompletionTimeMinutes sets the ExpectedCompletionTimeMinutes field's value. func (s *DescribeRestoreJobOutput) SetExpectedCompletionTimeMinutes(v int64) *DescribeRestoreJobOutput { s.ExpectedCompletionTimeMinutes = &v @@ -12606,6 +15346,12 @@ return s } +// SetRecoveryPointCreationDate sets the RecoveryPointCreationDate field's value. +func (s *DescribeRestoreJobOutput) SetRecoveryPointCreationDate(v time.Time) *DescribeRestoreJobOutput { + s.RecoveryPointCreationDate = &v + return s +} + // SetResourceType sets the ResourceType field's value. func (s *DescribeRestoreJobOutput) SetResourceType(v string) *DescribeRestoreJobOutput { s.ResourceType = &v @@ -12630,6 +15376,18 @@ return s } +// SetValidationStatus sets the ValidationStatus field's value. +func (s *DescribeRestoreJobOutput) SetValidationStatus(v string) *DescribeRestoreJobOutput { + s.ValidationStatus = &v + return s +} + +// SetValidationStatusMessage sets the ValidationStatusMessage field's value. +func (s *DescribeRestoreJobOutput) SetValidationStatusMessage(v string) *DescribeRestoreJobOutput { + s.ValidationStatusMessage = &v + return s +} + type DisassociateRecoveryPointFromParentInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -14004,6 +16762,9 @@ // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. RecoveryPointArn *string `type:"string"` + // This is the resource type associated with the recovery point. + ResourceType *string `type:"string"` + // The set of metadata key-value pairs that describe the original configuration // of the backed-up resource. These values vary depending on the service that // is being restored. @@ -14044,12 +16805,398 @@ return s } +// SetResourceType sets the ResourceType field's value. +func (s *GetRecoveryPointRestoreMetadataOutput) SetResourceType(v string) *GetRecoveryPointRestoreMetadataOutput { + s.ResourceType = &v + return s +} + // SetRestoreMetadata sets the RestoreMetadata field's value. func (s *GetRecoveryPointRestoreMetadataOutput) SetRestoreMetadata(v map[string]*string) *GetRecoveryPointRestoreMetadataOutput { s.RestoreMetadata = v return s } +type GetRestoreJobMetadataInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // This is a unique identifier of a restore job within Backup. + // + // RestoreJobId is a required field + RestoreJobId *string `location:"uri" locationName:"restoreJobId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreJobMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreJobMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRestoreJobMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreJobMetadataInput"} + if s.RestoreJobId == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreJobId")) + } + if s.RestoreJobId != nil && len(*s.RestoreJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreJobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *GetRestoreJobMetadataInput) SetRestoreJobId(v string) *GetRestoreJobMetadataInput { + s.RestoreJobId = &v + return s +} + +type GetRestoreJobMetadataOutput struct { + _ struct{} `type:"structure"` + + // This contains the metadata of the specified backup job. + // + // Metadata is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetRestoreJobMetadataOutput's + // String and GoString methods. + Metadata map[string]*string `type:"map" sensitive:"true"` + + // This is a unique identifier of a restore job within Backup. + RestoreJobId *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 GetRestoreJobMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreJobMetadataOutput) GoString() string { + return s.String() +} + +// SetMetadata sets the Metadata field's value. +func (s *GetRestoreJobMetadataOutput) SetMetadata(v map[string]*string) *GetRestoreJobMetadataOutput { + s.Metadata = v + return s +} + +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *GetRestoreJobMetadataOutput) SetRestoreJobId(v string) *GetRestoreJobMetadataOutput { + s.RestoreJobId = &v + return s +} + +type GetRestoreTestingInferredMetadataInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // This is the account ID of the specified backup vault. + BackupVaultAccountId *string `location:"querystring" locationName:"BackupVaultAccountId" type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web ServicesRegion where they are created. They consist of letters, + // numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"querystring" locationName:"BackupVaultName" type:"string" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"querystring" locationName:"RecoveryPointArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingInferredMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingInferredMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRestoreTestingInferredMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreTestingInferredMetadataInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *GetRestoreTestingInferredMetadataInput) SetBackupVaultAccountId(v string) *GetRestoreTestingInferredMetadataInput { + s.BackupVaultAccountId = &v + return s +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetRestoreTestingInferredMetadataInput) SetBackupVaultName(v string) *GetRestoreTestingInferredMetadataInput { + s.BackupVaultName = &v + return s +} + +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *GetRestoreTestingInferredMetadataInput) SetRecoveryPointArn(v string) *GetRestoreTestingInferredMetadataInput { + s.RecoveryPointArn = &v + return s +} + +type GetRestoreTestingInferredMetadataOutput struct { + _ struct{} `type:"structure"` + + // This is a string map of the metadata inferred from the request. + // + // InferredMetadata is a required field + InferredMetadata map[string]*string `type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingInferredMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingInferredMetadataOutput) GoString() string { + return s.String() +} + +// SetInferredMetadata sets the InferredMetadata field's value. +func (s *GetRestoreTestingInferredMetadataOutput) SetInferredMetadata(v map[string]*string) *GetRestoreTestingInferredMetadataOutput { + s.InferredMetadata = v + return s +} + +type GetRestoreTestingPlanInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Required unique name of the restore testing plan. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingPlanInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreTestingPlanInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *GetRestoreTestingPlanInput) SetRestoreTestingPlanName(v string) *GetRestoreTestingPlanInput { + s.RestoreTestingPlanName = &v + return s +} + +type GetRestoreTestingPlanOutput struct { + _ struct{} `type:"structure"` + + // Specifies the body of a restore testing plan. Includes RestoreTestingPlanName. + // + // RestoreTestingPlan is a required field + RestoreTestingPlan *RestoreTestingPlanForGet `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingPlanOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingPlanOutput) GoString() string { + return s.String() +} + +// SetRestoreTestingPlan sets the RestoreTestingPlan field's value. +func (s *GetRestoreTestingPlanOutput) SetRestoreTestingPlan(v *RestoreTestingPlanForGet) *GetRestoreTestingPlanOutput { + s.RestoreTestingPlan = v + return s +} + +type GetRestoreTestingSelectionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Required unique name of the restore testing plan. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // Required unique name of the restore testing selection. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `location:"uri" locationName:"RestoreTestingSelectionName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingSelectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.RestoreTestingSelectionName != nil && len(*s.RestoreTestingSelectionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingSelectionName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *GetRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *GetRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *GetRestoreTestingSelectionInput) SetRestoreTestingSelectionName(v string) *GetRestoreTestingSelectionInput { + s.RestoreTestingSelectionName = &v + return s +} + +type GetRestoreTestingSelectionOutput struct { + _ struct{} `type:"structure"` + + // Unique name of the restore testing selection. + // + // RestoreTestingSelection is a required field + RestoreTestingSelection *RestoreTestingSelectionForGet `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 GetRestoreTestingSelectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRestoreTestingSelectionOutput) GoString() string { + return s.String() +} + +// SetRestoreTestingSelection sets the RestoreTestingSelection field's value. +func (s *GetRestoreTestingSelectionOutput) SetRestoreTestingSelection(v *RestoreTestingSelectionForGet) *GetRestoreTestingSelectionOutput { + s.RestoreTestingSelection = v + return s +} + type GetSupportedResourceTypesInput struct { _ struct{} `type:"structure" nopayload:"true"` } @@ -14404,9 +17551,24 @@ // Role names without those strings lack permissions to perform backup jobs. IamRoleArn *string `type:"string"` + // This is the date on which the backup job was initiated. + InitiationDate *time.Time `type:"timestamp"` + // This is a boolean value indicating this is a parent (composite) backup job. IsParent *bool `type:"boolean"` + // This parameter is the job count for the specified message category. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `type:"string"` + // This uniquely identifies a request to Backup to back up a resource. The return // will be the parent (composite) job ID. ParentJobId *string `type:"string"` @@ -14544,12 +17706,24 @@ return s } +// SetInitiationDate sets the InitiationDate field's value. +func (s *Job) SetInitiationDate(v time.Time) *Job { + s.InitiationDate = &v + return s +} + // SetIsParent sets the IsParent field's value. func (s *Job) SetIsParent(v bool) *Job { s.IsParent = &v return s } +// SetMessageCategory sets the MessageCategory field's value. +func (s *Job) SetMessageCategory(v string) *Job { + s.MessageCategory = &v + return s +} + // SetParentJobId sets the ParentJobId field's value. func (s *Job) SetParentJobId(v string) *Job { s.ParentJobId = &v @@ -14604,6 +17778,77 @@ return s } +// Pair of two related strings. Allowed characters are letters, white space, +// and numbers that can be represented in UTF-8 and the following characters: +// + - = . _ : / +type KeyValue struct { + _ struct{} `type:"structure"` + + // The tag key (String). The key can't start with aws:. + // + // Length Constraints: Minimum length of 1. Maximum length of 128. + // + // Pattern: ^(?![aA]{1}[wW]{1}[sS]{1}:)([\p{L}\p{Z}\p{N}_.:/=+\-@]+)$ + // + // Key is a required field + Key *string `type:"string" required:"true"` + + // The value of the key. + // + // Length Constraints: Maximum length of 256. + // + // Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValue) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KeyValue) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KeyValue"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + 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 *KeyValue) SetKey(v string) *KeyValue { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *KeyValue) SetValue(v string) *KeyValue { + s.Value = &v + return s +} + // A legal hold is an administrative tool that helps prevent backups from being // deleted while under a hold. While the hold is in place, backups under a hold // cannot be deleted and lifecycle policies that would alter the backup status @@ -14721,6 +17966,11 @@ // Specifies the number of days after creation that a recovery point is moved // to cold storage. MoveToColdStorageAfterDays *int64 `type:"long"` + + // Optional Boolean. If this is true, this setting will instruct your backup + // plan to transition supported resources to archive (cold) storage tier in + // accordance with your lifecycle settings. + OptInToArchiveForSupportedResources *bool `type:"boolean"` } // String returns the string representation. @@ -14753,6 +18003,12 @@ return s } +// SetOptInToArchiveForSupportedResources sets the OptInToArchiveForSupportedResources field's value. +func (s *Lifecycle) SetOptInToArchiveForSupportedResources(v bool) *Lifecycle { + s.OptInToArchiveForSupportedResources = &v + return s +} + // A limit in the request has been exceeded; for example, a maximum number of // items allowed in a request. type LimitExceededException struct { @@ -14824,6 +18080,208 @@ return s.RespMetadata.RequestID } +type ListBackupJobSummariesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Returns the job count for the specified account. + // + // If the request is sent from a member account or an account not part of Amazon + // Web Services Organizations, jobs within requestor's account will be returned. + // + // Root, admin, and delegated administrator accounts can use the value ANY to + // return job counts from every account in the organization. + // + // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated + // organization, then returns the sum. + AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` + + // This is the period that sets the boundaries for returned results. + // + // Acceptable values include + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` + + // This parameter sets the maximum number of items to be returned. + // + // The value is an integer. Range of accepted values is from 1 to 500. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // This parameter returns the job count for the specified message category. + // + // Example accepted strings include AccessDenied, Success, and InvalidParameters. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `location:"querystring" locationName:"MessageCategory" type:"string"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes + // to obtain strings for supported resource types. + // + // The the value ANY returns count of all resource types. + // + // AGGREGATE_ALL aggregates job counts for all resource types and returns the + // sum. + // + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + + // This parameter returns the job count for jobs with the specified state. + // + // The the value ANY returns count of all states. + // + // AGGREGATE_ALL aggregates job counts for all states and returns the sum. + State *string `location:"querystring" locationName:"State" type:"string" enum:"BackupJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListBackupJobSummariesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListBackupJobSummariesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupJobSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupJobSummariesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListBackupJobSummariesInput) SetAccountId(v string) *ListBackupJobSummariesInput { + s.AccountId = &v + return s +} + +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListBackupJobSummariesInput) SetAggregationPeriod(v string) *ListBackupJobSummariesInput { + s.AggregationPeriod = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupJobSummariesInput) SetMaxResults(v int64) *ListBackupJobSummariesInput { + s.MaxResults = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *ListBackupJobSummariesInput) SetMessageCategory(v string) *ListBackupJobSummariesInput { + s.MessageCategory = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListBackupJobSummariesInput) SetNextToken(v string) *ListBackupJobSummariesInput { + s.NextToken = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ListBackupJobSummariesInput) SetResourceType(v string) *ListBackupJobSummariesInput { + s.ResourceType = &v + return s +} + +// SetState sets the State field's value. +func (s *ListBackupJobSummariesInput) SetState(v string) *ListBackupJobSummariesInput { + s.State = &v + return s +} + +type ListBackupJobSummariesOutput struct { + _ struct{} `type:"structure"` + + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `type:"string"` + + // This request returns a summary that contains Region, Account, State, ResourceType, + // MessageCategory, StartTime, EndTime, and Count of included jobs. + BackupJobSummaries []*BackupJobSummary `type:"list"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListBackupJobSummariesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListBackupJobSummariesOutput) GoString() string { + return s.String() +} + +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListBackupJobSummariesOutput) SetAggregationPeriod(v string) *ListBackupJobSummariesOutput { + s.AggregationPeriod = &v + return s +} + +// SetBackupJobSummaries sets the BackupJobSummaries field's value. +func (s *ListBackupJobSummariesOutput) SetBackupJobSummaries(v []*BackupJobSummary) *ListBackupJobSummariesOutput { + s.BackupJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListBackupJobSummariesOutput) SetNextToken(v string) *ListBackupJobSummariesOutput { + s.NextToken = &v + return s +} + type ListBackupJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -14854,6 +18312,19 @@ // Returns only backup jobs that were created before the specified date. ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` + // This is an optional parameter that can be used to filter out jobs with a + // MessageCategory which matches the value you input. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and InvalidParameters. + // + // View Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // + // The wildcard () returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + ByMessageCategory *string `location:"querystring" locationName:"messageCategory" type:"string"` + // This is a filter to list child (nested) jobs based on parent job ID. ByParentJobId *string `location:"querystring" locationName:"parentJobId" type:"string"` @@ -14865,6 +18336,8 @@ // // * Aurora for Amazon Aurora // + // * CloudFormation for CloudFormation + // // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) // // * DynamoDB for Amazon DynamoDB @@ -14879,12 +18352,18 @@ // // * Neptune for Amazon Neptune // + // * Redshift for Amazon Redshift + // // * RDS for Amazon Relational Database Service // + // * SAP HANA on Amazon EC2 for SAP HANA databases + // // * Storage Gateway for Storage Gateway // // * S3 for Amazon S3 // + // * Timestream for Amazon Timestream + // // * VirtualMachine for virtual machines ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` @@ -14895,7 +18374,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -14968,6 +18447,12 @@ return s } +// SetByMessageCategory sets the ByMessageCategory field's value. +func (s *ListBackupJobsInput) SetByMessageCategory(v string) *ListBackupJobsInput { + s.ByMessageCategory = &v + return s +} + // SetByParentJobId sets the ByParentJobId field's value. func (s *ListBackupJobsInput) SetByParentJobId(v string) *ListBackupJobsInput { s.ByParentJobId = &v @@ -15012,7 +18497,7 @@ BackupJobs []*Job `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15055,7 +18540,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15111,7 +18596,7 @@ BackupPlanTemplatesList []*PlanTemplatesListMember `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15159,7 +18644,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15227,7 +18712,7 @@ BackupPlanVersionsList []*PlansListMember `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15274,7 +18759,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15337,7 +18822,7 @@ BackupPlansList []*PlansListMember `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15385,7 +18870,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15454,7 +18939,7 @@ BackupSelectionsList []*SelectionsListMember `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15503,7 +18988,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15574,7 +19059,7 @@ BackupVaultList []*VaultListMember `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15610,6 +19095,206 @@ return s } +type ListCopyJobSummariesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Returns the job count for the specified account. + // + // If the request is sent from a member account or an account not part of Amazon + // Web Services Organizations, jobs within requestor's account will be returned. + // + // Root, admin, and delegated administrator accounts can use the value ANY to + // return job counts from every account in the organization. + // + // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated + // organization, then returns the sum. + AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` + + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` + + // This parameter sets the maximum number of items to be returned. + // + // The value is an integer. Range of accepted values is from 1 to 500. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // This parameter returns the job count for the specified message category. + // + // Example accepted strings include AccessDenied, Success, and InvalidParameters. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `location:"querystring" locationName:"MessageCategory" type:"string"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes + // to obtain strings for supported resource types. + // + // The the value ANY returns count of all resource types. + // + // AGGREGATE_ALL aggregates job counts for all resource types and returns the + // sum. + // + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + + // This parameter returns the job count for jobs with the specified state. + // + // The the value ANY returns count of all states. + // + // AGGREGATE_ALL aggregates job counts for all states and returns the sum. + State *string `location:"querystring" locationName:"State" type:"string" enum:"CopyJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCopyJobSummariesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCopyJobSummariesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCopyJobSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCopyJobSummariesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListCopyJobSummariesInput) SetAccountId(v string) *ListCopyJobSummariesInput { + s.AccountId = &v + return s +} + +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListCopyJobSummariesInput) SetAggregationPeriod(v string) *ListCopyJobSummariesInput { + s.AggregationPeriod = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCopyJobSummariesInput) SetMaxResults(v int64) *ListCopyJobSummariesInput { + s.MaxResults = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *ListCopyJobSummariesInput) SetMessageCategory(v string) *ListCopyJobSummariesInput { + s.MessageCategory = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCopyJobSummariesInput) SetNextToken(v string) *ListCopyJobSummariesInput { + s.NextToken = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ListCopyJobSummariesInput) SetResourceType(v string) *ListCopyJobSummariesInput { + s.ResourceType = &v + return s +} + +// SetState sets the State field's value. +func (s *ListCopyJobSummariesInput) SetState(v string) *ListCopyJobSummariesInput { + s.State = &v + return s +} + +type ListCopyJobSummariesOutput struct { + _ struct{} `type:"structure"` + + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `type:"string"` + + // This return shows a summary that contains Region, Account, State, ResourceType, + // MessageCategory, StartTime, EndTime, and Count of included jobs. + CopyJobSummaries []*CopyJobSummary `type:"list"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCopyJobSummariesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCopyJobSummariesOutput) GoString() string { + return s.String() +} + +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListCopyJobSummariesOutput) SetAggregationPeriod(v string) *ListCopyJobSummariesOutput { + s.AggregationPeriod = &v + return s +} + +// SetCopyJobSummaries sets the CopyJobSummaries field's value. +func (s *ListCopyJobSummariesOutput) SetCopyJobSummaries(v []*CopyJobSummary) *ListCopyJobSummariesOutput { + s.CopyJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCopyJobSummariesOutput) SetNextToken(v string) *ListCopyJobSummariesOutput { + s.NextToken = &v + return s +} + type ListCopyJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -15635,6 +19320,20 @@ // to copy from; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. ByDestinationVaultArn *string `location:"querystring" locationName:"destinationVaultArn" type:"string"` + // This is an optional parameter that can be used to filter out jobs with a + // MessageCategory which matches the value you input. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. + // + // View Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + ByMessageCategory *string `location:"querystring" locationName:"messageCategory" type:"string"` + // This is a filter to list child (nested) jobs based on parent job ID. ByParentJobId *string `location:"querystring" locationName:"parentJobId" type:"string"` @@ -15646,6 +19345,8 @@ // // * Aurora for Amazon Aurora // + // * CloudFormation for CloudFormation + // // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) // // * DynamoDB for Amazon DynamoDB @@ -15660,12 +19361,18 @@ // // * Neptune for Amazon Neptune // + // * Redshift for Amazon Redshift + // // * RDS for Amazon Relational Database Service // + // * SAP HANA on Amazon EC2 for SAP HANA databases + // // * Storage Gateway for Storage Gateway // // * S3 for Amazon S3 // + // * Timestream for Amazon Timestream + // // * VirtualMachine for virtual machines ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` @@ -15676,7 +19383,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15749,6 +19456,12 @@ return s } +// SetByMessageCategory sets the ByMessageCategory field's value. +func (s *ListCopyJobsInput) SetByMessageCategory(v string) *ListCopyJobsInput { + s.ByMessageCategory = &v + return s +} + // SetByParentJobId sets the ByParentJobId field's value. func (s *ListCopyJobsInput) SetByParentJobId(v string) *ListCopyJobsInput { s.ByParentJobId = &v @@ -15793,7 +19506,7 @@ CopyJobs []*CopyJob `type:"list"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -15934,7 +19647,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken + // if a request is made to return MaxResults number of resources, NextToken // allows you to return more items in your list starting at the location pointed // to by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15990,7 +19703,7 @@ LegalHolds []*LegalHold `type:"list"` // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken + // if a request is made to return MaxResults number of resources, NextToken // allows you to return more items in your list starting at the location pointed // to by the next token. NextToken *string `type:"string"` @@ -16043,7 +19756,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -16114,7 +19827,7 @@ _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -16160,7 +19873,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -16213,7 +19926,7 @@ _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -16288,14 +20001,46 @@ // Name (ARN). ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` - // Returns only recovery points that match the specified resource type. + // Returns only recovery points that match the specified resource type(s): + // + // * Aurora for Amazon Aurora + // + // * CloudFormation for CloudFormation + // + // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSx for Amazon FSx + // + // * Neptune for Amazon Neptune + // + // * Redshift for Amazon Redshift + // + // * RDS for Amazon Relational Database Service + // + // * SAP HANA on Amazon EC2 for SAP HANA databases + // + // * Storage Gateway for Storage Gateway + // + // * S3 for Amazon S3 + // + // * Timestream for Amazon Timestream + // + // * VirtualMachine for virtual machines ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` // The maximum number of items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -16402,7 +20147,7 @@ _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -16454,7 +20199,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // This is the next item following a partial list of returned resources. For - // example, if a request is made to return maxResults number of resources, NextToken + // example, if a request is made to return MaxResults number of resources, NextToken // allows you to return more items in your list starting at the location pointed // to by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -16564,7 +20309,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -16635,7 +20380,7 @@ _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -16917,6 +20662,337 @@ return s } +type ListRestoreJobSummariesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Returns the job count for the specified account. + // + // If the request is sent from a member account or an account not part of Amazon + // Web Services Organizations, jobs within requestor's account will be returned. + // + // Root, admin, and delegated administrator accounts can use the value ANY to + // return job counts from every account in the organization. + // + // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated + // organization, then returns the sum. + AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` + + // This is the period that sets the boundaries for returned results. + // + // Acceptable values include + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` + + // This parameter sets the maximum number of items to be returned. + // + // The value is an integer. Range of accepted values is from 1 to 500. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes + // to obtain strings for supported resource types. + // + // The the value ANY returns count of all resource types. + // + // AGGREGATE_ALL aggregates job counts for all resource types and returns the + // sum. + // + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + + // This parameter returns the job count for jobs with the specified state. + // + // The the value ANY returns count of all states. + // + // AGGREGATE_ALL aggregates job counts for all states and returns the sum. + State *string `location:"querystring" locationName:"State" type:"string" enum:"RestoreJobState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobSummariesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobSummariesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRestoreJobSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobSummariesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListRestoreJobSummariesInput) SetAccountId(v string) *ListRestoreJobSummariesInput { + s.AccountId = &v + return s +} + +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListRestoreJobSummariesInput) SetAggregationPeriod(v string) *ListRestoreJobSummariesInput { + s.AggregationPeriod = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRestoreJobSummariesInput) SetMaxResults(v int64) *ListRestoreJobSummariesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreJobSummariesInput) SetNextToken(v string) *ListRestoreJobSummariesInput { + s.NextToken = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ListRestoreJobSummariesInput) SetResourceType(v string) *ListRestoreJobSummariesInput { + s.ResourceType = &v + return s +} + +// SetState sets the State field's value. +func (s *ListRestoreJobSummariesInput) SetState(v string) *ListRestoreJobSummariesInput { + s.State = &v + return s +} + +type ListRestoreJobSummariesOutput struct { + _ struct{} `type:"structure"` + + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `type:"string"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `type:"string"` + + // This return contains a summary that contains Region, Account, State, ResourceType, + // MessageCategory, StartTime, EndTime, and Count of included jobs. + RestoreJobSummaries []*RestoreJobSummary `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobSummariesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobSummariesOutput) GoString() string { + return s.String() +} + +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListRestoreJobSummariesOutput) SetAggregationPeriod(v string) *ListRestoreJobSummariesOutput { + s.AggregationPeriod = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreJobSummariesOutput) SetNextToken(v string) *ListRestoreJobSummariesOutput { + s.NextToken = &v + return s +} + +// SetRestoreJobSummaries sets the RestoreJobSummaries field's value. +func (s *ListRestoreJobSummariesOutput) SetRestoreJobSummaries(v []*RestoreJobSummary) *ListRestoreJobSummariesOutput { + s.RestoreJobSummaries = v + return s +} + +type ListRestoreJobsByProtectedResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Returns only restore jobs of recovery points that were created after the + // specified date. + ByRecoveryPointCreationDateAfter *time.Time `location:"querystring" locationName:"recoveryPointCreationDateAfter" type:"timestamp"` + + // Returns only restore jobs of recovery points that were created before the + // specified date. + ByRecoveryPointCreationDateBefore *time.Time `location:"querystring" locationName:"recoveryPointCreationDateBefore" type:"timestamp"` + + // Returns only restore jobs associated with the specified job status. + ByStatus *string `location:"querystring" locationName:"status" type:"string" enum:"RestoreJobStatus"` + + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request ismade to return MaxResults number of items, NextToken allows you + // to return more items in your list starting at the location pointed to by + // the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // Returns only restore jobs that match the specified resource Amazon Resource + // Name (ARN). + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobsByProtectedResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobsByProtectedResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRestoreJobsByProtectedResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobsByProtectedResourceInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetByRecoveryPointCreationDateAfter sets the ByRecoveryPointCreationDateAfter field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetByRecoveryPointCreationDateAfter(v time.Time) *ListRestoreJobsByProtectedResourceInput { + s.ByRecoveryPointCreationDateAfter = &v + return s +} + +// SetByRecoveryPointCreationDateBefore sets the ByRecoveryPointCreationDateBefore field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetByRecoveryPointCreationDateBefore(v time.Time) *ListRestoreJobsByProtectedResourceInput { + s.ByRecoveryPointCreationDateBefore = &v + return s +} + +// SetByStatus sets the ByStatus field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetByStatus(v string) *ListRestoreJobsByProtectedResourceInput { + s.ByStatus = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetMaxResults(v int64) *ListRestoreJobsByProtectedResourceInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetNextToken(v string) *ListRestoreJobsByProtectedResourceInput { + s.NextToken = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetResourceArn(v string) *ListRestoreJobsByProtectedResourceInput { + s.ResourceArn = &v + return s +} + +type ListRestoreJobsByProtectedResourceOutput struct { + _ struct{} `type:"structure"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // youto return more items in your list starting at the location pointed to + // by the next token + NextToken *string `type:"string"` + + // An array of objects that contain detailed information about jobs to restore + // saved resources.> + RestoreJobs []*RestoreJobsListMember `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobsByProtectedResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreJobsByProtectedResourceOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreJobsByProtectedResourceOutput) SetNextToken(v string) *ListRestoreJobsByProtectedResourceOutput { + s.NextToken = &v + return s +} + +// SetRestoreJobs sets the RestoreJobs field's value. +func (s *ListRestoreJobsByProtectedResourceOutput) SetRestoreJobs(v []*RestoreJobsListMember) *ListRestoreJobsByProtectedResourceOutput { + s.RestoreJobs = v + return s +} + type ListRestoreJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -16938,6 +21014,45 @@ // Returns only restore jobs that were created before the specified date. ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` + // Include this parameter to return only restore jobs for the specified resources: + // + // * Aurora for Amazon Aurora + // + // * CloudFormation for CloudFormation + // + // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSx for Amazon FSx + // + // * Neptune for Amazon Neptune + // + // * Redshift for Amazon Redshift + // + // * RDS for Amazon Relational Database Service + // + // * SAP HANA on Amazon EC2 for SAP HANA databases + // + // * Storage Gateway for Storage Gateway + // + // * S3 for Amazon S3 + // + // * Timestream for Amazon Timestream + // + // * VirtualMachine for virtual machines + ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` + + // This returns only restore testing jobs that match the specified resource + // Amazon Resource Name (ARN). + ByRestoreTestingPlanArn *string `location:"querystring" locationName:"restoreTestingPlanArn" type:"string"` + // Returns only restore jobs associated with the specified job status. ByStatus *string `location:"querystring" locationName:"status" type:"string" enum:"RestoreJobStatus"` @@ -16945,7 +21060,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -17012,6 +21127,18 @@ return s } +// SetByResourceType sets the ByResourceType field's value. +func (s *ListRestoreJobsInput) SetByResourceType(v string) *ListRestoreJobsInput { + s.ByResourceType = &v + return s +} + +// SetByRestoreTestingPlanArn sets the ByRestoreTestingPlanArn field's value. +func (s *ListRestoreJobsInput) SetByRestoreTestingPlanArn(v string) *ListRestoreJobsInput { + s.ByRestoreTestingPlanArn = &v + return s +} + // SetByStatus sets the ByStatus field's value. func (s *ListRestoreJobsInput) SetByStatus(v string) *ListRestoreJobsInput { s.ByStatus = &v @@ -17034,7 +21161,7 @@ _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -17074,6 +21201,227 @@ return s } +type ListRestoreTestingPlansInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the nexttoken. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingPlansInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingPlansInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRestoreTestingPlansInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreTestingPlansInput"} + 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 *ListRestoreTestingPlansInput) SetMaxResults(v int64) *ListRestoreTestingPlansInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreTestingPlansInput) SetNextToken(v string) *ListRestoreTestingPlansInput { + s.NextToken = &v + return s +} + +type ListRestoreTestingPlansOutput struct { + _ struct{} `type:"structure"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the nexttoken. + NextToken *string `type:"string"` + + // This is a returned list of restore testing plans. + // + // RestoreTestingPlans is a required field + RestoreTestingPlans []*RestoreTestingPlanForList `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingPlansOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingPlansOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreTestingPlansOutput) SetNextToken(v string) *ListRestoreTestingPlansOutput { + s.NextToken = &v + return s +} + +// SetRestoreTestingPlans sets the RestoreTestingPlans field's value. +func (s *ListRestoreTestingPlansOutput) SetRestoreTestingPlans(v []*RestoreTestingPlanForList) *ListRestoreTestingPlansOutput { + s.RestoreTestingPlans = v + return s +} + +type ListRestoreTestingSelectionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the nexttoken. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns restore testing selections by the specified restore testing plan + // name. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingSelectionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingSelectionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRestoreTestingSelectionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreTestingSelectionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRestoreTestingSelectionsInput) SetMaxResults(v int64) *ListRestoreTestingSelectionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreTestingSelectionsInput) SetNextToken(v string) *ListRestoreTestingSelectionsInput { + s.NextToken = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *ListRestoreTestingSelectionsInput) SetRestoreTestingPlanName(v string) *ListRestoreTestingSelectionsInput { + s.RestoreTestingPlanName = &v + return s +} + +type ListRestoreTestingSelectionsOutput struct { + _ struct{} `type:"structure"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the nexttoken. + NextToken *string `type:"string"` + + // The returned restore testing selections associated with the restore testing + // plan. + // + // RestoreTestingSelections is a required field + RestoreTestingSelections []*RestoreTestingSelectionForList `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingSelectionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRestoreTestingSelectionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreTestingSelectionsOutput) SetNextToken(v string) *ListRestoreTestingSelectionsOutput { + s.NextToken = &v + return s +} + +// SetRestoreTestingSelections sets the RestoreTestingSelections field's value. +func (s *ListRestoreTestingSelectionsOutput) SetRestoreTestingSelections(v []*RestoreTestingSelectionForList) *ListRestoreTestingSelectionsOutput { + s.RestoreTestingSelections = v + return s +} + type ListTagsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -17081,7 +21429,7 @@ MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -17153,7 +21501,7 @@ _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` @@ -17581,6 +21929,13 @@ // 12:11:30.087 AM. LastBackupTime *time.Time `type:"timestamp"` + // This is the ARN (Amazon Resource Name) of the backup vault that contains + // the most recent backup recovery point. + LastBackupVaultArn *string `type:"string"` + + // This is the ARN (Amazon Resource Name) of the most recent recovery point. + LastRecoveryPointArn *string `type:"string"` + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format // of the ARN depends on the resource type. ResourceArn *string `type:"string"` @@ -17620,6 +21975,18 @@ return s } +// SetLastBackupVaultArn sets the LastBackupVaultArn field's value. +func (s *ProtectedResource) SetLastBackupVaultArn(v string) *ProtectedResource { + s.LastBackupVaultArn = &v + return s +} + +// SetLastRecoveryPointArn sets the LastRecoveryPointArn field's value. +func (s *ProtectedResource) SetLastRecoveryPointArn(v string) *ProtectedResource { + s.LastRecoveryPointArn = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *ProtectedResource) SetResourceArn(v string) *ProtectedResource { s.ResourceArn = &v @@ -17638,6 +22005,83 @@ return s } +// A list of conditions that you define for resources in your restore testing +// plan using tags. +// +// For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", "Value": +// "true" },. Condition operators are case sensitive. +type ProtectedResourceConditions struct { + _ struct{} `type:"structure"` + + // Filters the values of your tagged resources for only those resources that + // you tagged with the same value. Also called "exact matching." + StringEquals []*KeyValue `type:"list"` + + // Filters the values of your tagged resources for only those resources that + // you tagged that do not have the same value. Also called "negated matching." + StringNotEquals []*KeyValue `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProtectedResourceConditions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProtectedResourceConditions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProtectedResourceConditions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProtectedResourceConditions"} + if s.StringEquals != nil { + for i, v := range s.StringEquals { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StringEquals", i), err.(request.ErrInvalidParams)) + } + } + } + if s.StringNotEquals != nil { + for i, v := range s.StringNotEquals { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StringNotEquals", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStringEquals sets the StringEquals field's value. +func (s *ProtectedResourceConditions) SetStringEquals(v []*KeyValue) *ProtectedResourceConditions { + s.StringEquals = v + return s +} + +// SetStringNotEquals sets the StringNotEquals field's value. +func (s *ProtectedResourceConditions) SetStringNotEquals(v []*KeyValue) *ProtectedResourceConditions { + s.StringNotEquals = v + return s +} + type PutBackupVaultAccessPolicyInput struct { _ struct{} `type:"structure"` @@ -17987,6 +22431,101 @@ return s.String() } +type PutRestoreValidationResultInput struct { + _ struct{} `type:"structure"` + + // This is a unique identifier of a restore job within Backup. + // + // RestoreJobId is a required field + RestoreJobId *string `location:"uri" locationName:"restoreJobId" type:"string" required:"true"` + + // This is the status of your restore validation. + // + // ValidationStatus is a required field + ValidationStatus *string `type:"string" required:"true" enum:"RestoreValidationStatus"` + + // This is an optional message string you can input to describe the validation + // status for the restore test validation. + ValidationStatusMessage *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRestoreValidationResultInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRestoreValidationResultInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutRestoreValidationResultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutRestoreValidationResultInput"} + if s.RestoreJobId == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreJobId")) + } + if s.RestoreJobId != nil && len(*s.RestoreJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreJobId", 1)) + } + if s.ValidationStatus == nil { + invalidParams.Add(request.NewErrParamRequired("ValidationStatus")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *PutRestoreValidationResultInput) SetRestoreJobId(v string) *PutRestoreValidationResultInput { + s.RestoreJobId = &v + return s +} + +// SetValidationStatus sets the ValidationStatus field's value. +func (s *PutRestoreValidationResultInput) SetValidationStatus(v string) *PutRestoreValidationResultInput { + s.ValidationStatus = &v + return s +} + +// SetValidationStatusMessage sets the ValidationStatusMessage field's value. +func (s *PutRestoreValidationResultInput) SetValidationStatusMessage(v string) *PutRestoreValidationResultInput { + s.ValidationStatusMessage = &v + return s +} + +type PutRestoreValidationResultOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRestoreValidationResultOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRestoreValidationResultOutput) GoString() string { + return s.String() +} + // Contains detailed information about the recovery points stored in a backup // vault. type RecoveryPointByBackupVault struct { @@ -18100,6 +22639,9 @@ // A message explaining the reason of the recovery point deletion failure. StatusMessage *string `type:"string"` + + // This is the type of vault in which the described recovery point is stored. + VaultType *string `type:"string" enum:"VaultType"` } // String returns the string representation. @@ -18252,6 +22794,12 @@ return s } +// SetVaultType sets the VaultType field's value. +func (s *RecoveryPointByBackupVault) SetVaultType(v string) *RecoveryPointByBackupVault { + s.VaultType = &v + return s +} + // Contains detailed information about a saved recovery point. type RecoveryPointByResource struct { _ struct{} `type:"structure"` @@ -19099,6 +23647,139 @@ return s.RespMetadata.RequestID } +// Contains information about the restore testing plan that Backup used to initiate +// the restore job. +type RestoreJobCreator struct { + _ struct{} `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies a restore testing + // plan. + RestoreTestingPlanArn *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreJobCreator) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreJobCreator) GoString() string { + return s.String() +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *RestoreJobCreator) SetRestoreTestingPlanArn(v string) *RestoreJobCreator { + s.RestoreTestingPlanArn = &v + return s +} + +// This is a summary of restore jobs created or running within the most recent +// 30 days. +// +// The returned summary may contain the following: Region, Account, State, ResourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +type RestoreJobSummary struct { + _ struct{} `type:"structure"` + + // The account ID that owns the jobs within the summary. + AccountId *string `type:"string"` + + // The value as a number of jobs in a job summary. + Count *int64 `type:"integer"` + + // The value of time in number format of a job end time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + EndTime *time.Time `type:"timestamp"` + + // The Amazon Web Services Regions within the job summary. + Region *string `type:"string"` + + // This value is the job count for the specified resource type. The request + // GetSupportedResourceTypes returns strings for supported resource types. + ResourceType *string `type:"string"` + + // The value of time in number format of a job start time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + StartTime *time.Time `type:"timestamp"` + + // This value is job count for jobs with the specified state. + State *string `type:"string" enum:"RestoreJobState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreJobSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *RestoreJobSummary) SetAccountId(v string) *RestoreJobSummary { + s.AccountId = &v + return s +} + +// SetCount sets the Count field's value. +func (s *RestoreJobSummary) SetCount(v int64) *RestoreJobSummary { + s.Count = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *RestoreJobSummary) SetEndTime(v time.Time) *RestoreJobSummary { + s.EndTime = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *RestoreJobSummary) SetRegion(v string) *RestoreJobSummary { + s.Region = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *RestoreJobSummary) SetResourceType(v string) *RestoreJobSummary { + s.ResourceType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *RestoreJobSummary) SetStartTime(v time.Time) *RestoreJobSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *RestoreJobSummary) SetState(v string) *RestoreJobSummary { + s.State = &v + return s +} + // Contains metadata about a restore job. type RestoreJobsListMember struct { _ struct{} `type:"structure"` @@ -19115,6 +23796,9 @@ // Friday, January 26, 2018 12:11:30.087 AM. CompletionDate *time.Time `type:"timestamp"` + // Contains identifying information about the creation of a restore job. + CreatedBy *RestoreJobCreator `type:"structure"` + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format // of the ARN depends on the resource type. CreatedResourceArn *string `type:"string"` @@ -19125,6 +23809,13 @@ // 12:11:30.087 AM. CreationDate *time.Time `type:"timestamp"` + // This notes the status of the data generated by the restore test. The status + // may be Deleting, Failed, or Successful. + DeletionStatus *string `type:"string" enum:"RestoreDeletionStatus"` + + // This describes the restore job deletion status. + DeletionStatusMessage *string `type:"string"` + // The amount of time in minutes that a job restoring a recovery point is expected // to take. ExpectedCompletionTimeMinutes *int64 `type:"long"` @@ -19140,6 +23831,9 @@ // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. RecoveryPointArn *string `type:"string"` + // The date on which a recovery point was created. + RecoveryPointCreationDate *time.Time `type:"timestamp"` + // The resource type of the listed restore jobs; for example, an Amazon Elastic // Block Store (Amazon EBS) volume or an Amazon Relational Database Service // (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, @@ -19156,6 +23850,12 @@ // A detailed message explaining the status of the job to restore a recovery // point. StatusMessage *string `type:"string"` + + // This is the status of validation run on the indicated restore job. + ValidationStatus *string `type:"string" enum:"RestoreValidationStatus"` + + // This describes the status of validation run on the indicated restore job. + ValidationStatusMessage *string `type:"string"` } // String returns the string representation. @@ -19194,6 +23894,12 @@ return s } +// SetCreatedBy sets the CreatedBy field's value. +func (s *RestoreJobsListMember) SetCreatedBy(v *RestoreJobCreator) *RestoreJobsListMember { + s.CreatedBy = v + return s +} + // SetCreatedResourceArn sets the CreatedResourceArn field's value. func (s *RestoreJobsListMember) SetCreatedResourceArn(v string) *RestoreJobsListMember { s.CreatedResourceArn = &v @@ -19206,6 +23912,18 @@ return s } +// SetDeletionStatus sets the DeletionStatus field's value. +func (s *RestoreJobsListMember) SetDeletionStatus(v string) *RestoreJobsListMember { + s.DeletionStatus = &v + return s +} + +// SetDeletionStatusMessage sets the DeletionStatusMessage field's value. +func (s *RestoreJobsListMember) SetDeletionStatusMessage(v string) *RestoreJobsListMember { + s.DeletionStatusMessage = &v + return s +} + // SetExpectedCompletionTimeMinutes sets the ExpectedCompletionTimeMinutes field's value. func (s *RestoreJobsListMember) SetExpectedCompletionTimeMinutes(v int64) *RestoreJobsListMember { s.ExpectedCompletionTimeMinutes = &v @@ -19230,6 +23948,12 @@ return s } +// SetRecoveryPointCreationDate sets the RecoveryPointCreationDate field's value. +func (s *RestoreJobsListMember) SetRecoveryPointCreationDate(v time.Time) *RestoreJobsListMember { + s.RecoveryPointCreationDate = &v + return s +} + // SetResourceType sets the ResourceType field's value. func (s *RestoreJobsListMember) SetResourceType(v string) *RestoreJobsListMember { s.ResourceType = &v @@ -19254,6 +23978,1046 @@ return s } +// SetValidationStatus sets the ValidationStatus field's value. +func (s *RestoreJobsListMember) SetValidationStatus(v string) *RestoreJobsListMember { + s.ValidationStatus = &v + return s +} + +// SetValidationStatusMessage sets the ValidationStatusMessage field's value. +func (s *RestoreJobsListMember) SetValidationStatusMessage(v string) *RestoreJobsListMember { + s.ValidationStatusMessage = &v + return s +} + +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForCreate struct { + _ struct{} `type:"structure"` + + // Required: Algorithm; Required: Recovery point types; IncludeVaults (one or + // more). Optional: SelectionWindowDays ('30' if not specified); ExcludeVaults + // (list of selectors), defaults to empty list if not listed. + // + // RecoveryPointSelection is a required field + RecoveryPointSelection *RestoreTestingRecoveryPointSelection `type:"structure" required:"true"` + + // The RestoreTestingPlanName is a unique string that is the name of the restore + // testing plan. This cannot be changed after creation, and it must consist + // of only alphanumeric characters and underscores. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // A CRON expression in specified timezone when a restore testing plan is executed. + // + // ScheduleExpression is a required field + ScheduleExpression *string `type:"string" required:"true"` + + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` + + // Defaults to 24 hours. + // + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForCreate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForCreate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreTestingPlanForCreate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTestingPlanForCreate"} + if s.RecoveryPointSelection == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointSelection")) + } + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.ScheduleExpression == nil { + invalidParams.Add(request.NewErrParamRequired("ScheduleExpression")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *RestoreTestingPlanForCreate) SetRecoveryPointSelection(v *RestoreTestingRecoveryPointSelection) *RestoreTestingPlanForCreate { + s.RecoveryPointSelection = v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingPlanForCreate) SetRestoreTestingPlanName(v string) *RestoreTestingPlanForCreate { + s.RestoreTestingPlanName = &v + return s +} + +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForCreate) SetScheduleExpression(v string) *RestoreTestingPlanForCreate { + s.ScheduleExpression = &v + return s +} + +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForCreate) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForCreate { + s.ScheduleExpressionTimezone = &v + return s +} + +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForCreate) SetStartWindowHours(v int64) *RestoreTestingPlanForCreate { + s.StartWindowHours = &v + return s +} + +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForGet struct { + _ struct{} `type:"structure"` + + // The date and time that a restore testing plan was created, in Unix format + // and Coordinated Universal Time (UTC). The value of CreationTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // This identifies the request and allows failed requests to be retried without + // the risk of running the operation twice. If the request includes a CreatorRequestId + // that matches an existing backup plan, that plan is returned. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` + + // The last time a restore test was run with the specified restore testing plan. + // A date and time, in Unix format and Coordinated Universal Time (UTC). The + // value of LastExecutionDate is accurate to milliseconds. For example, the + // value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM. + LastExecutionTime *time.Time `type:"timestamp"` + + // The date and time that the restore testing plan was updated. This update + // is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + LastUpdateTime *time.Time `type:"timestamp"` + + // The specified criteria to assign a set of resources, such as recovery point + // types or backup vaults. + // + // RecoveryPointSelection is a required field + RecoveryPointSelection *RestoreTestingRecoveryPointSelection `type:"structure" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies a restore testing + // plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // This is the restore testing plan name. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // A CRON expression in specified timezone when a restore testing plan is executed. + // + // ScheduleExpression is a required field + ScheduleExpression *string `type:"string" required:"true"` + + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` + + // Defaults to 24 hours. + // + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForGet) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForGet) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingPlanForGet) SetCreationTime(v time.Time) *RestoreTestingPlanForGet { + s.CreationTime = &v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *RestoreTestingPlanForGet) SetCreatorRequestId(v string) *RestoreTestingPlanForGet { + s.CreatorRequestId = &v + return s +} + +// SetLastExecutionTime sets the LastExecutionTime field's value. +func (s *RestoreTestingPlanForGet) SetLastExecutionTime(v time.Time) *RestoreTestingPlanForGet { + s.LastExecutionTime = &v + return s +} + +// SetLastUpdateTime sets the LastUpdateTime field's value. +func (s *RestoreTestingPlanForGet) SetLastUpdateTime(v time.Time) *RestoreTestingPlanForGet { + s.LastUpdateTime = &v + return s +} + +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *RestoreTestingPlanForGet) SetRecoveryPointSelection(v *RestoreTestingRecoveryPointSelection) *RestoreTestingPlanForGet { + s.RecoveryPointSelection = v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *RestoreTestingPlanForGet) SetRestoreTestingPlanArn(v string) *RestoreTestingPlanForGet { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingPlanForGet) SetRestoreTestingPlanName(v string) *RestoreTestingPlanForGet { + s.RestoreTestingPlanName = &v + return s +} + +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForGet) SetScheduleExpression(v string) *RestoreTestingPlanForGet { + s.ScheduleExpression = &v + return s +} + +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForGet) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForGet { + s.ScheduleExpressionTimezone = &v + return s +} + +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForGet) SetStartWindowHours(v int64) *RestoreTestingPlanForGet { + s.StartWindowHours = &v + return s +} + +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForList struct { + _ struct{} `type:"structure"` + + // The date and time that a restore testing plan was created, in Unix format + // and Coordinated Universal Time (UTC). The value of CreationTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // The last time a restore test was run with the specified restore testing plan. + // A date and time, in Unix format and Coordinated Universal Time (UTC). The + // value of LastExecutionDate is accurate to milliseconds. For example, the + // value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM. + LastExecutionTime *time.Time `type:"timestamp"` + + // The date and time that the restore testing plan was updated. This update + // is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + LastUpdateTime *time.Time `type:"timestamp"` + + // An Amazon Resource Name (ARN) that uniquely identifiesa restore testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // This is the restore testing plan name. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // A CRON expression in specified timezone when a restore testing plan is executed. + // + // ScheduleExpression is a required field + ScheduleExpression *string `type:"string" required:"true"` + + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` + + // Defaults to 24 hours. + // + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForList) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForList) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingPlanForList) SetCreationTime(v time.Time) *RestoreTestingPlanForList { + s.CreationTime = &v + return s +} + +// SetLastExecutionTime sets the LastExecutionTime field's value. +func (s *RestoreTestingPlanForList) SetLastExecutionTime(v time.Time) *RestoreTestingPlanForList { + s.LastExecutionTime = &v + return s +} + +// SetLastUpdateTime sets the LastUpdateTime field's value. +func (s *RestoreTestingPlanForList) SetLastUpdateTime(v time.Time) *RestoreTestingPlanForList { + s.LastUpdateTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *RestoreTestingPlanForList) SetRestoreTestingPlanArn(v string) *RestoreTestingPlanForList { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingPlanForList) SetRestoreTestingPlanName(v string) *RestoreTestingPlanForList { + s.RestoreTestingPlanName = &v + return s +} + +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForList) SetScheduleExpression(v string) *RestoreTestingPlanForList { + s.ScheduleExpression = &v + return s +} + +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForList) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForList { + s.ScheduleExpressionTimezone = &v + return s +} + +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForList) SetStartWindowHours(v int64) *RestoreTestingPlanForList { + s.StartWindowHours = &v + return s +} + +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForUpdate struct { + _ struct{} `type:"structure"` + + // Required: Algorithm; RecoveryPointTypes; IncludeVaults (one or more). + // + // Optional: SelectionWindowDays ('30' if not specified); ExcludeVaults (defaults + // to empty list if not listed). + RecoveryPointSelection *RestoreTestingRecoveryPointSelection `type:"structure"` + + // A CRON expression in specified timezone when a restore testing plan is executed. + ScheduleExpression *string `type:"string"` + + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` + + // Defaults to 24 hours. + // + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingPlanForUpdate) GoString() string { + return s.String() +} + +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *RestoreTestingPlanForUpdate) SetRecoveryPointSelection(v *RestoreTestingRecoveryPointSelection) *RestoreTestingPlanForUpdate { + s.RecoveryPointSelection = v + return s +} + +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForUpdate) SetScheduleExpression(v string) *RestoreTestingPlanForUpdate { + s.ScheduleExpression = &v + return s +} + +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForUpdate) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForUpdate { + s.ScheduleExpressionTimezone = &v + return s +} + +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForUpdate) SetStartWindowHours(v int64) *RestoreTestingPlanForUpdate { + s.StartWindowHours = &v + return s +} + +// Required: Algorithm; Required: Recovery point types; IncludeVaults(one or +// more). Optional: SelectionWindowDays ('30' if not specified);ExcludeVaults +// (list of selectors), defaults to empty list if not listed. +type RestoreTestingRecoveryPointSelection struct { + _ struct{} `type:"structure"` + + // Acceptable values include "LATEST_WITHIN_WINDOW" or "RANDOM_WITHIN_WINDOW" + Algorithm *string `type:"string" enum:"RestoreTestingRecoveryPointSelectionAlgorithm"` + + // Accepted values include specific ARNs or list of selectors. Defaults to empty + // list if not listed. + ExcludeVaults []*string `type:"list"` + + // Accepted values include wildcard ["*"] or by specific ARNs or ARN wilcard + // replacement ["arn:aws:backup:us-west-2:123456789012:backup-vault:asdf", ...] + // ["arn:aws:backup:*:*:backup-vault:asdf-*", ...] + IncludeVaults []*string `type:"list"` + + // These are the types of recovery points. + RecoveryPointTypes []*string `type:"list" enum:"RestoreTestingRecoveryPointType"` + + // Accepted values are integers from 1 to 365. + SelectionWindowDays *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingRecoveryPointSelection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingRecoveryPointSelection) GoString() string { + return s.String() +} + +// SetAlgorithm sets the Algorithm field's value. +func (s *RestoreTestingRecoveryPointSelection) SetAlgorithm(v string) *RestoreTestingRecoveryPointSelection { + s.Algorithm = &v + return s +} + +// SetExcludeVaults sets the ExcludeVaults field's value. +func (s *RestoreTestingRecoveryPointSelection) SetExcludeVaults(v []*string) *RestoreTestingRecoveryPointSelection { + s.ExcludeVaults = v + return s +} + +// SetIncludeVaults sets the IncludeVaults field's value. +func (s *RestoreTestingRecoveryPointSelection) SetIncludeVaults(v []*string) *RestoreTestingRecoveryPointSelection { + s.IncludeVaults = v + return s +} + +// SetRecoveryPointTypes sets the RecoveryPointTypes field's value. +func (s *RestoreTestingRecoveryPointSelection) SetRecoveryPointTypes(v []*string) *RestoreTestingRecoveryPointSelection { + s.RecoveryPointTypes = v + return s +} + +// SetSelectionWindowDays sets the SelectionWindowDays field's value. +func (s *RestoreTestingRecoveryPointSelection) SetSelectionWindowDays(v int64) *RestoreTestingRecoveryPointSelection { + s.SelectionWindowDays = &v + return s +} + +// This contains metadata about a specific restore testing selection. +// +// ProtectedResourceType is required, such as Amazon EBS or Amazon EC2. +// +// This consists of RestoreTestingSelectionName, ProtectedResourceType, and +// one of the following: +// +// - ProtectedResourceArns +// +// - ProtectedResourceConditions +// +// Each protected resource type can have one single value. +// +// A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns +// along with ProtectedResourceConditions. Alternatively, you can include up +// to 30 specific protected resource ARNs in ProtectedResourceArns. +// +// ProtectedResourceConditions examples include as StringEquals and StringNotEquals. +type RestoreTestingSelectionForCreate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example: arn:aws:iam::123456789012:role/S3Access. + // + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` + + // Each protected resource can be filtered by its specific ARNs, such as ProtectedResourceArns: + // ["arn:aws:...", "arn:aws:..."] or by a wildcard: ProtectedResourceArns: ["*"], + // but not both. + ProtectedResourceArns []*string `type:"list"` + + // If you have included the wildcard in ProtectedResourceArns, you can include + // resource conditions, such as ProtectedResourceConditions: { StringEquals: + // [{ key: "XXXX", value: "YYYY" }]. + ProtectedResourceConditions *ProtectedResourceConditions `type:"structure"` + + // The type of Amazon Web Services resource included in a restore testing selection; + // for example, an Amazon EBS volume or an Amazon RDS database. + // + // Supported resource types accepted include: + // + // * Aurora for Amazon Aurora + // + // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSx for Amazon FSx + // + // * Neptune for Amazon Neptune + // + // * RDS for Amazon Relational Database Service + // + // * S3 for Amazon S3 + // + // ProtectedResourceType is a required field + ProtectedResourceType *string `type:"string" required:"true"` + + // You can override certain restore metadata keys by including the parameter + // RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values + // are not case sensitive. + // + // See the complete list of restore testing inferred metadata (https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html). + // + // RestoreMetadataOverrides is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RestoreTestingSelectionForCreate's + // String and GoString methods. + RestoreMetadataOverrides map[string]*string `type:"map" sensitive:"true"` + + // This is the unique name of the restore testing selection that belongs to + // the related restore testing plan. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` + + // This is amount of hours (1 to 168) available to run a validation script on + // the data. The data will be deleted upon the completion of the validation + // script or the end of the specified retention period, whichever comes first. + ValidationWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForCreate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForCreate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreTestingSelectionForCreate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTestingSelectionForCreate"} + if s.IamRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) + } + if s.ProtectedResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ProtectedResourceType")) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.ProtectedResourceConditions != nil { + if err := s.ProtectedResourceConditions.Validate(); err != nil { + invalidParams.AddNested("ProtectedResourceConditions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForCreate) SetIamRoleArn(v string) *RestoreTestingSelectionForCreate { + s.IamRoleArn = &v + return s +} + +// SetProtectedResourceArns sets the ProtectedResourceArns field's value. +func (s *RestoreTestingSelectionForCreate) SetProtectedResourceArns(v []*string) *RestoreTestingSelectionForCreate { + s.ProtectedResourceArns = v + return s +} + +// SetProtectedResourceConditions sets the ProtectedResourceConditions field's value. +func (s *RestoreTestingSelectionForCreate) SetProtectedResourceConditions(v *ProtectedResourceConditions) *RestoreTestingSelectionForCreate { + s.ProtectedResourceConditions = v + return s +} + +// SetProtectedResourceType sets the ProtectedResourceType field's value. +func (s *RestoreTestingSelectionForCreate) SetProtectedResourceType(v string) *RestoreTestingSelectionForCreate { + s.ProtectedResourceType = &v + return s +} + +// SetRestoreMetadataOverrides sets the RestoreMetadataOverrides field's value. +func (s *RestoreTestingSelectionForCreate) SetRestoreMetadataOverrides(v map[string]*string) *RestoreTestingSelectionForCreate { + s.RestoreMetadataOverrides = v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *RestoreTestingSelectionForCreate) SetRestoreTestingSelectionName(v string) *RestoreTestingSelectionForCreate { + s.RestoreTestingSelectionName = &v + return s +} + +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForCreate) SetValidationWindowHours(v int64) *RestoreTestingSelectionForCreate { + s.ValidationWindowHours = &v + return s +} + +// This contains metadata about a restore testing selection. +type RestoreTestingSelectionForGet struct { + _ struct{} `type:"structure"` + + // The date and time that a restore testing selection was created, in Unix format + // and Coordinated Universal Time (UTC). The value of CreationTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 201812:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // This identifies the request and allows failed requests to be retried without + // the risk of running the operation twice. If the request includes a CreatorRequestId + // that matches an existing backup plan, that plan is returned. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example:arn:aws:iam::123456789012:role/S3Access. + // + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` + + // You can include specific ARNs, such as ProtectedResourceArns: ["arn:aws:...", + // "arn:aws:..."] or you can include a wildcard: ProtectedResourceArns: ["*"], + // but not both. + ProtectedResourceArns []*string `type:"list"` + + // In a resource testing selection, this parameter filters by specific conditions + // such as StringEquals or StringNotEquals. + ProtectedResourceConditions *ProtectedResourceConditions `type:"structure"` + + // The type of Amazon Web Services resource included in a resource testing selection; + // for example, an Amazon EBS volume or an Amazon RDS database. + // + // ProtectedResourceType is a required field + ProtectedResourceType *string `type:"string" required:"true"` + + // You can override certain restore metadata keys by including the parameter + // RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values + // are not case sensitive. + // + // See the complete list of restore testing inferred metadata (https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html). + // + // RestoreMetadataOverrides is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RestoreTestingSelectionForGet's + // String and GoString methods. + RestoreMetadataOverrides map[string]*string `type:"map" sensitive:"true"` + + // The RestoreTestingPlanName is a unique string that is the name of the restore + // testing plan. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the unique name of the restore testing selection that belongs to + // the related restore testing plan. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` + + // This is amount of hours (1 to 168) available to run a validation script on + // the data. The data will be deleted upon the completion of the validation + // script or the end of the specified retention period, whichever comes first. + ValidationWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForGet) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForGet) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingSelectionForGet) SetCreationTime(v time.Time) *RestoreTestingSelectionForGet { + s.CreationTime = &v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *RestoreTestingSelectionForGet) SetCreatorRequestId(v string) *RestoreTestingSelectionForGet { + s.CreatorRequestId = &v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForGet) SetIamRoleArn(v string) *RestoreTestingSelectionForGet { + s.IamRoleArn = &v + return s +} + +// SetProtectedResourceArns sets the ProtectedResourceArns field's value. +func (s *RestoreTestingSelectionForGet) SetProtectedResourceArns(v []*string) *RestoreTestingSelectionForGet { + s.ProtectedResourceArns = v + return s +} + +// SetProtectedResourceConditions sets the ProtectedResourceConditions field's value. +func (s *RestoreTestingSelectionForGet) SetProtectedResourceConditions(v *ProtectedResourceConditions) *RestoreTestingSelectionForGet { + s.ProtectedResourceConditions = v + return s +} + +// SetProtectedResourceType sets the ProtectedResourceType field's value. +func (s *RestoreTestingSelectionForGet) SetProtectedResourceType(v string) *RestoreTestingSelectionForGet { + s.ProtectedResourceType = &v + return s +} + +// SetRestoreMetadataOverrides sets the RestoreMetadataOverrides field's value. +func (s *RestoreTestingSelectionForGet) SetRestoreMetadataOverrides(v map[string]*string) *RestoreTestingSelectionForGet { + s.RestoreMetadataOverrides = v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingSelectionForGet) SetRestoreTestingPlanName(v string) *RestoreTestingSelectionForGet { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *RestoreTestingSelectionForGet) SetRestoreTestingSelectionName(v string) *RestoreTestingSelectionForGet { + s.RestoreTestingSelectionName = &v + return s +} + +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForGet) SetValidationWindowHours(v int64) *RestoreTestingSelectionForGet { + s.ValidationWindowHours = &v + return s +} + +// This contains metadata about a restore testing selection. +type RestoreTestingSelectionForList struct { + _ struct{} `type:"structure"` + + // This is the date and time that a restore testing selection was created, in + // Unix format and Coordinated Universal Time (UTC). The value of CreationTime + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26,2018 12:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example: arn:aws:iam::123456789012:role/S3Access. + // + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` + + // The type of Amazon Web Services resource included in a restore testing selection; + // for example, an Amazon EBS volume or an Amazon RDS database. + // + // ProtectedResourceType is a required field + ProtectedResourceType *string `type:"string" required:"true"` + + // Unique string that is the name of the restore testing plan. + // + // The name cannot be changed after creation. The name must consist of only + // alphanumeric characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // Unique name of a restore testing selection. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` + + // This value represents the time, in hours, data is retained after a restore + // test so that optional validation can be completed. + // + // Accepted value is an integer between 0 and 168 (the hourly equivalent of + // seven days). + ValidationWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForList) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForList) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingSelectionForList) SetCreationTime(v time.Time) *RestoreTestingSelectionForList { + s.CreationTime = &v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForList) SetIamRoleArn(v string) *RestoreTestingSelectionForList { + s.IamRoleArn = &v + return s +} + +// SetProtectedResourceType sets the ProtectedResourceType field's value. +func (s *RestoreTestingSelectionForList) SetProtectedResourceType(v string) *RestoreTestingSelectionForList { + s.ProtectedResourceType = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingSelectionForList) SetRestoreTestingPlanName(v string) *RestoreTestingSelectionForList { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *RestoreTestingSelectionForList) SetRestoreTestingSelectionName(v string) *RestoreTestingSelectionForList { + s.RestoreTestingSelectionName = &v + return s +} + +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForList) SetValidationWindowHours(v int64) *RestoreTestingSelectionForList { + s.ValidationWindowHours = &v + return s +} + +// This contains metadata about a restore testing selection. +type RestoreTestingSelectionForUpdate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example: arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // You can include a list of specific ARNs, such as ProtectedResourceArns: ["arn:aws:...", + // "arn:aws:..."] or you can include a wildcard: ProtectedResourceArns: ["*"], + // but not both. + ProtectedResourceArns []*string `type:"list"` + + // A list of conditions that you define for resources in your restore testing + // plan using tags. + // + // For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", "Value": + // "true" },. Condition operators are case sensitive. + ProtectedResourceConditions *ProtectedResourceConditions `type:"structure"` + + // You can override certain restore metadata keys by including the parameter + // RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values + // are not case sensitive. + // + // See the complete list of restore testing inferred metadata (https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html). + // + // RestoreMetadataOverrides is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RestoreTestingSelectionForUpdate's + // String and GoString methods. + RestoreMetadataOverrides map[string]*string `type:"map" sensitive:"true"` + + // This value represents the time, in hours, data is retained after a restore + // test so that optional validation can be completed. + // + // Accepted value is an integer between 0 and 168 (the hourly equivalent of + // seven days). + ValidationWindowHours *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTestingSelectionForUpdate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreTestingSelectionForUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTestingSelectionForUpdate"} + if s.ProtectedResourceConditions != nil { + if err := s.ProtectedResourceConditions.Validate(); err != nil { + invalidParams.AddNested("ProtectedResourceConditions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForUpdate) SetIamRoleArn(v string) *RestoreTestingSelectionForUpdate { + s.IamRoleArn = &v + return s +} + +// SetProtectedResourceArns sets the ProtectedResourceArns field's value. +func (s *RestoreTestingSelectionForUpdate) SetProtectedResourceArns(v []*string) *RestoreTestingSelectionForUpdate { + s.ProtectedResourceArns = v + return s +} + +// SetProtectedResourceConditions sets the ProtectedResourceConditions field's value. +func (s *RestoreTestingSelectionForUpdate) SetProtectedResourceConditions(v *ProtectedResourceConditions) *RestoreTestingSelectionForUpdate { + s.ProtectedResourceConditions = v + return s +} + +// SetRestoreMetadataOverrides sets the RestoreMetadataOverrides field's value. +func (s *RestoreTestingSelectionForUpdate) SetRestoreMetadataOverrides(v map[string]*string) *RestoreTestingSelectionForUpdate { + s.RestoreMetadataOverrides = v + return s +} + +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForUpdate) SetValidationWindowHours(v int64) *RestoreTestingSelectionForUpdate { + s.ValidationWindowHours = &v + return s +} + // Specifies a scheduled task used to back up a selection of resources. type Rule struct { _ struct{} `type:"structure"` @@ -19616,8 +25380,8 @@ _ struct{} `type:"structure"` // A list of conditions that you define to assign resources to your backup plans - // using tags. For example, "StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", - // "ConditionValue": "true" },. Condition operators are case sensitive. + // using tags. For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", + // "Value": "true" },. Condition operators are case sensitive. // // Conditions differs from ListOfTags as follows: // @@ -19635,8 +25399,8 @@ IamRoleArn *string `type:"string" required:"true"` // A list of conditions that you define to assign resources to your backup plans - // using tags. For example, "StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", - // "ConditionValue": "true" },. Condition operators are case sensitive. + // using tags. For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", + // "Value": "true" },. Condition operators are case sensitive. // // ListOfTags differs from Conditions as follows: // @@ -21385,6 +27149,14 @@ ResourceTypeManagementPreference map[string]*bool `type:"map"` // Updates the list of services along with the opt-in preferences for the Region. + // + // If resource assignments are only based on tags, then service opt-in settings + // are applied. If a resource type is explicitly assigned to a backup plan, + // such as Amazon S3, Amazon EC2, or Amazon RDS, it will be included in the + // backup even if the opt-in is not enabled for that particular service. If + // both a resource type and tags are specified in a resource assignment, the + // resource type specified in the backup plan takes priority over the tag condition. + // Service opt-in settings are disregarded in this situation. ResourceTypeOptInPreference map[string]*bool `type:"map"` } @@ -21602,6 +27374,304 @@ return s } +type UpdateRestoreTestingPlanInput struct { + _ struct{} `type:"structure"` + + // Specifies the body of a restore testing plan. + // + // RestoreTestingPlan is a required field + RestoreTestingPlan *RestoreTestingPlanForUpdate `type:"structure" required:"true"` + + // This is the restore testing plan name you wish to update. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingPlanInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRestoreTestingPlanInput"} + if s.RestoreTestingPlan == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlan")) + } + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlan sets the RestoreTestingPlan field's value. +func (s *UpdateRestoreTestingPlanInput) SetRestoreTestingPlan(v *RestoreTestingPlanForUpdate) *UpdateRestoreTestingPlanInput { + s.RestoreTestingPlan = v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingPlanInput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingPlanInput { + s.RestoreTestingPlanName = &v + return s +} + +type UpdateRestoreTestingPlanOutput struct { + _ struct{} `type:"structure"` + + // This is the time the resource testing plan was created. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // Unique ARN (Amazon Resource Name) of the restore testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // The name cannot be changed after creation. The name consists of only alphanumeric + // characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the time the update completed for the restore testing plan. + // + // UpdateTime is a required field + UpdateTime *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingPlanOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingPlanOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *UpdateRestoreTestingPlanOutput) SetCreationTime(v time.Time) *UpdateRestoreTestingPlanOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *UpdateRestoreTestingPlanOutput) SetRestoreTestingPlanArn(v string) *UpdateRestoreTestingPlanOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingPlanOutput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingPlanOutput { + s.RestoreTestingPlanName = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *UpdateRestoreTestingPlanOutput) SetUpdateTime(v time.Time) *UpdateRestoreTestingPlanOutput { + s.UpdateTime = &v + return s +} + +type UpdateRestoreTestingSelectionInput struct { + _ struct{} `type:"structure"` + + // The restore testing plan name is required to update the indicated testing + // plan. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // To update your restore testing selection, you can use either protected resource + // ARNs or conditions, but not both. That is, if your selection has ProtectedResourceArns, + // requesting an update with the parameter ProtectedResourceConditions will + // be unsuccessful. + // + // RestoreTestingSelection is a required field + RestoreTestingSelection *RestoreTestingSelectionForUpdate `type:"structure" required:"true"` + + // This is the required restore testing selection name of the restore testing + // selection you wish to update. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `location:"uri" locationName:"RestoreTestingSelectionName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingSelectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelection == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelection")) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.RestoreTestingSelectionName != nil && len(*s.RestoreTestingSelectionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingSelectionName", 1)) + } + if s.RestoreTestingSelection != nil { + if err := s.RestoreTestingSelection.Validate(); err != nil { + invalidParams.AddNested("RestoreTestingSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelection sets the RestoreTestingSelection field's value. +func (s *UpdateRestoreTestingSelectionInput) SetRestoreTestingSelection(v *RestoreTestingSelectionForUpdate) *UpdateRestoreTestingSelectionInput { + s.RestoreTestingSelection = v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *UpdateRestoreTestingSelectionInput) SetRestoreTestingSelectionName(v string) *UpdateRestoreTestingSelectionInput { + s.RestoreTestingSelectionName = &v + return s +} + +type UpdateRestoreTestingSelectionOutput struct { + _ struct{} `type:"structure"` + + // This is the time the resource testing selection was updated successfully. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // Unique string that is the name of the restore testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // This is the restore testing plan with which the updated restore testing selection + // is associated. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the returned restore testing selection name. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` + + // This is the time the update completed for the restore testing selection. + // + // UpdateTime is a required field + UpdateTime *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingSelectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingSelectionOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetCreationTime(v time.Time) *UpdateRestoreTestingSelectionOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetRestoreTestingPlanArn(v string) *UpdateRestoreTestingSelectionOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingSelectionOutput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetRestoreTestingSelectionName(v string) *UpdateRestoreTestingSelectionOutput { + s.RestoreTestingSelectionName = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetUpdateTime(v time.Time) *UpdateRestoreTestingSelectionOutput { + s.UpdateTime = &v + return s +} + // Contains metadata about a backup vault. type VaultListMember struct { _ struct{} `type:"structure"` @@ -21764,6 +27834,78 @@ } const ( + // AggregationPeriodOneDay is a AggregationPeriod enum value + AggregationPeriodOneDay = "ONE_DAY" + + // AggregationPeriodSevenDays is a AggregationPeriod enum value + AggregationPeriodSevenDays = "SEVEN_DAYS" + + // AggregationPeriodFourteenDays is a AggregationPeriod enum value + AggregationPeriodFourteenDays = "FOURTEEN_DAYS" +) + +// AggregationPeriod_Values returns all elements of the AggregationPeriod enum +func AggregationPeriod_Values() []string { + return []string{ + AggregationPeriodOneDay, + AggregationPeriodSevenDays, + AggregationPeriodFourteenDays, + } +} + +const ( + // BackupJobStatusCreated is a BackupJobStatus enum value + BackupJobStatusCreated = "CREATED" + + // BackupJobStatusPending is a BackupJobStatus enum value + BackupJobStatusPending = "PENDING" + + // BackupJobStatusRunning is a BackupJobStatus enum value + BackupJobStatusRunning = "RUNNING" + + // BackupJobStatusAborting is a BackupJobStatus enum value + BackupJobStatusAborting = "ABORTING" + + // BackupJobStatusAborted is a BackupJobStatus enum value + BackupJobStatusAborted = "ABORTED" + + // BackupJobStatusCompleted is a BackupJobStatus enum value + BackupJobStatusCompleted = "COMPLETED" + + // BackupJobStatusFailed is a BackupJobStatus enum value + BackupJobStatusFailed = "FAILED" + + // BackupJobStatusExpired is a BackupJobStatus enum value + BackupJobStatusExpired = "EXPIRED" + + // BackupJobStatusPartial is a BackupJobStatus enum value + BackupJobStatusPartial = "PARTIAL" + + // BackupJobStatusAggregateAll is a BackupJobStatus enum value + BackupJobStatusAggregateAll = "AGGREGATE_ALL" + + // BackupJobStatusAny is a BackupJobStatus enum value + BackupJobStatusAny = "ANY" +) + +// BackupJobStatus_Values returns all elements of the BackupJobStatus enum +func BackupJobStatus_Values() []string { + return []string{ + BackupJobStatusCreated, + BackupJobStatusPending, + BackupJobStatusRunning, + BackupJobStatusAborting, + BackupJobStatusAborted, + BackupJobStatusCompleted, + BackupJobStatusFailed, + BackupJobStatusExpired, + BackupJobStatusPartial, + BackupJobStatusAggregateAll, + BackupJobStatusAny, + } +} + +const ( // ConditionTypeStringequals is a ConditionType enum value ConditionTypeStringequals = "STRINGEQUALS" ) @@ -21804,6 +27946,58 @@ } const ( + // CopyJobStatusCreated is a CopyJobStatus enum value + CopyJobStatusCreated = "CREATED" + + // CopyJobStatusRunning is a CopyJobStatus enum value + CopyJobStatusRunning = "RUNNING" + + // CopyJobStatusAborting is a CopyJobStatus enum value + CopyJobStatusAborting = "ABORTING" + + // CopyJobStatusAborted is a CopyJobStatus enum value + CopyJobStatusAborted = "ABORTED" + + // CopyJobStatusCompleting is a CopyJobStatus enum value + CopyJobStatusCompleting = "COMPLETING" + + // CopyJobStatusCompleted is a CopyJobStatus enum value + CopyJobStatusCompleted = "COMPLETED" + + // CopyJobStatusFailing is a CopyJobStatus enum value + CopyJobStatusFailing = "FAILING" + + // CopyJobStatusFailed is a CopyJobStatus enum value + CopyJobStatusFailed = "FAILED" + + // CopyJobStatusPartial is a CopyJobStatus enum value + CopyJobStatusPartial = "PARTIAL" + + // CopyJobStatusAggregateAll is a CopyJobStatus enum value + CopyJobStatusAggregateAll = "AGGREGATE_ALL" + + // CopyJobStatusAny is a CopyJobStatus enum value + CopyJobStatusAny = "ANY" +) + +// CopyJobStatus_Values returns all elements of the CopyJobStatus enum +func CopyJobStatus_Values() []string { + return []string{ + CopyJobStatusCreated, + CopyJobStatusRunning, + CopyJobStatusAborting, + CopyJobStatusAborted, + CopyJobStatusCompleting, + CopyJobStatusCompleted, + CopyJobStatusFailing, + CopyJobStatusFailed, + CopyJobStatusPartial, + CopyJobStatusAggregateAll, + CopyJobStatusAny, + } +} + +const ( // JobStateCreated is a JobState enum value JobStateCreated = "CREATED" @@ -21896,6 +28090,66 @@ } const ( + // RestoreDeletionStatusDeleting is a RestoreDeletionStatus enum value + RestoreDeletionStatusDeleting = "DELETING" + + // RestoreDeletionStatusFailed is a RestoreDeletionStatus enum value + RestoreDeletionStatusFailed = "FAILED" + + // RestoreDeletionStatusSuccessful is a RestoreDeletionStatus enum value + RestoreDeletionStatusSuccessful = "SUCCESSFUL" +) + +// RestoreDeletionStatus_Values returns all elements of the RestoreDeletionStatus enum +func RestoreDeletionStatus_Values() []string { + return []string{ + RestoreDeletionStatusDeleting, + RestoreDeletionStatusFailed, + RestoreDeletionStatusSuccessful, + } +} + +const ( + // RestoreJobStateCreated is a RestoreJobState enum value + RestoreJobStateCreated = "CREATED" + + // RestoreJobStatePending is a RestoreJobState enum value + RestoreJobStatePending = "PENDING" + + // RestoreJobStateRunning is a RestoreJobState enum value + RestoreJobStateRunning = "RUNNING" + + // RestoreJobStateAborted is a RestoreJobState enum value + RestoreJobStateAborted = "ABORTED" + + // RestoreJobStateCompleted is a RestoreJobState enum value + RestoreJobStateCompleted = "COMPLETED" + + // RestoreJobStateFailed is a RestoreJobState enum value + RestoreJobStateFailed = "FAILED" + + // RestoreJobStateAggregateAll is a RestoreJobState enum value + RestoreJobStateAggregateAll = "AGGREGATE_ALL" + + // RestoreJobStateAny is a RestoreJobState enum value + RestoreJobStateAny = "ANY" +) + +// RestoreJobState_Values returns all elements of the RestoreJobState enum +func RestoreJobState_Values() []string { + return []string{ + RestoreJobStateCreated, + RestoreJobStatePending, + RestoreJobStateRunning, + RestoreJobStateAborted, + RestoreJobStateCompleted, + RestoreJobStateFailed, + RestoreJobStateAggregateAll, + RestoreJobStateAny, + } +} + +const ( // RestoreJobStatusPending is a RestoreJobStatus enum value RestoreJobStatusPending = "PENDING" @@ -21923,6 +28177,62 @@ } } +const ( + // RestoreTestingRecoveryPointSelectionAlgorithmLatestWithinWindow is a RestoreTestingRecoveryPointSelectionAlgorithm enum value + RestoreTestingRecoveryPointSelectionAlgorithmLatestWithinWindow = "LATEST_WITHIN_WINDOW" + + // RestoreTestingRecoveryPointSelectionAlgorithmRandomWithinWindow is a RestoreTestingRecoveryPointSelectionAlgorithm enum value + RestoreTestingRecoveryPointSelectionAlgorithmRandomWithinWindow = "RANDOM_WITHIN_WINDOW" +) + +// RestoreTestingRecoveryPointSelectionAlgorithm_Values returns all elements of the RestoreTestingRecoveryPointSelectionAlgorithm enum +func RestoreTestingRecoveryPointSelectionAlgorithm_Values() []string { + return []string{ + RestoreTestingRecoveryPointSelectionAlgorithmLatestWithinWindow, + RestoreTestingRecoveryPointSelectionAlgorithmRandomWithinWindow, + } +} + +const ( + // RestoreTestingRecoveryPointTypeContinuous is a RestoreTestingRecoveryPointType enum value + RestoreTestingRecoveryPointTypeContinuous = "CONTINUOUS" + + // RestoreTestingRecoveryPointTypeSnapshot is a RestoreTestingRecoveryPointType enum value + RestoreTestingRecoveryPointTypeSnapshot = "SNAPSHOT" +) + +// RestoreTestingRecoveryPointType_Values returns all elements of the RestoreTestingRecoveryPointType enum +func RestoreTestingRecoveryPointType_Values() []string { + return []string{ + RestoreTestingRecoveryPointTypeContinuous, + RestoreTestingRecoveryPointTypeSnapshot, + } +} + +const ( + // RestoreValidationStatusFailed is a RestoreValidationStatus enum value + RestoreValidationStatusFailed = "FAILED" + + // RestoreValidationStatusSuccessful is a RestoreValidationStatus enum value + RestoreValidationStatusSuccessful = "SUCCESSFUL" + + // RestoreValidationStatusTimedOut is a RestoreValidationStatus enum value + RestoreValidationStatusTimedOut = "TIMED_OUT" + + // RestoreValidationStatusValidating is a RestoreValidationStatus enum value + RestoreValidationStatusValidating = "VALIDATING" +) + +// RestoreValidationStatus_Values returns all elements of the RestoreValidationStatus enum +func RestoreValidationStatus_Values() []string { + return []string{ + RestoreValidationStatusFailed, + RestoreValidationStatusSuccessful, + RestoreValidationStatusTimedOut, + RestoreValidationStatusValidating, + } +} + const ( // StorageClassWarm is a StorageClass enum value StorageClassWarm = "WARM" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/backup/backupiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/backup/backupiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/backup/backupiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/backup/backupiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -92,6 +92,14 @@ CreateReportPlanWithContext(aws.Context, *backup.CreateReportPlanInput, ...request.Option) (*backup.CreateReportPlanOutput, error) CreateReportPlanRequest(*backup.CreateReportPlanInput) (*request.Request, *backup.CreateReportPlanOutput) + CreateRestoreTestingPlan(*backup.CreateRestoreTestingPlanInput) (*backup.CreateRestoreTestingPlanOutput, error) + CreateRestoreTestingPlanWithContext(aws.Context, *backup.CreateRestoreTestingPlanInput, ...request.Option) (*backup.CreateRestoreTestingPlanOutput, error) + CreateRestoreTestingPlanRequest(*backup.CreateRestoreTestingPlanInput) (*request.Request, *backup.CreateRestoreTestingPlanOutput) + + CreateRestoreTestingSelection(*backup.CreateRestoreTestingSelectionInput) (*backup.CreateRestoreTestingSelectionOutput, error) + CreateRestoreTestingSelectionWithContext(aws.Context, *backup.CreateRestoreTestingSelectionInput, ...request.Option) (*backup.CreateRestoreTestingSelectionOutput, error) + CreateRestoreTestingSelectionRequest(*backup.CreateRestoreTestingSelectionInput) (*request.Request, *backup.CreateRestoreTestingSelectionOutput) + DeleteBackupPlan(*backup.DeleteBackupPlanInput) (*backup.DeleteBackupPlanOutput, error) DeleteBackupPlanWithContext(aws.Context, *backup.DeleteBackupPlanInput, ...request.Option) (*backup.DeleteBackupPlanOutput, error) DeleteBackupPlanRequest(*backup.DeleteBackupPlanInput) (*request.Request, *backup.DeleteBackupPlanOutput) @@ -128,6 +136,14 @@ DeleteReportPlanWithContext(aws.Context, *backup.DeleteReportPlanInput, ...request.Option) (*backup.DeleteReportPlanOutput, error) DeleteReportPlanRequest(*backup.DeleteReportPlanInput) (*request.Request, *backup.DeleteReportPlanOutput) + DeleteRestoreTestingPlan(*backup.DeleteRestoreTestingPlanInput) (*backup.DeleteRestoreTestingPlanOutput, error) + DeleteRestoreTestingPlanWithContext(aws.Context, *backup.DeleteRestoreTestingPlanInput, ...request.Option) (*backup.DeleteRestoreTestingPlanOutput, error) + DeleteRestoreTestingPlanRequest(*backup.DeleteRestoreTestingPlanInput) (*request.Request, *backup.DeleteRestoreTestingPlanOutput) + + DeleteRestoreTestingSelection(*backup.DeleteRestoreTestingSelectionInput) (*backup.DeleteRestoreTestingSelectionOutput, error) + DeleteRestoreTestingSelectionWithContext(aws.Context, *backup.DeleteRestoreTestingSelectionInput, ...request.Option) (*backup.DeleteRestoreTestingSelectionOutput, error) + DeleteRestoreTestingSelectionRequest(*backup.DeleteRestoreTestingSelectionInput) (*request.Request, *backup.DeleteRestoreTestingSelectionOutput) + DescribeBackupJob(*backup.DescribeBackupJobInput) (*backup.DescribeBackupJobOutput, error) DescribeBackupJobWithContext(aws.Context, *backup.DescribeBackupJobInput, ...request.Option) (*backup.DescribeBackupJobOutput, error) DescribeBackupJobRequest(*backup.DescribeBackupJobInput) (*request.Request, *backup.DescribeBackupJobOutput) @@ -216,10 +232,33 @@ GetRecoveryPointRestoreMetadataWithContext(aws.Context, *backup.GetRecoveryPointRestoreMetadataInput, ...request.Option) (*backup.GetRecoveryPointRestoreMetadataOutput, error) GetRecoveryPointRestoreMetadataRequest(*backup.GetRecoveryPointRestoreMetadataInput) (*request.Request, *backup.GetRecoveryPointRestoreMetadataOutput) + GetRestoreJobMetadata(*backup.GetRestoreJobMetadataInput) (*backup.GetRestoreJobMetadataOutput, error) + GetRestoreJobMetadataWithContext(aws.Context, *backup.GetRestoreJobMetadataInput, ...request.Option) (*backup.GetRestoreJobMetadataOutput, error) + GetRestoreJobMetadataRequest(*backup.GetRestoreJobMetadataInput) (*request.Request, *backup.GetRestoreJobMetadataOutput) + + GetRestoreTestingInferredMetadata(*backup.GetRestoreTestingInferredMetadataInput) (*backup.GetRestoreTestingInferredMetadataOutput, error) + GetRestoreTestingInferredMetadataWithContext(aws.Context, *backup.GetRestoreTestingInferredMetadataInput, ...request.Option) (*backup.GetRestoreTestingInferredMetadataOutput, error) + GetRestoreTestingInferredMetadataRequest(*backup.GetRestoreTestingInferredMetadataInput) (*request.Request, *backup.GetRestoreTestingInferredMetadataOutput) + + GetRestoreTestingPlan(*backup.GetRestoreTestingPlanInput) (*backup.GetRestoreTestingPlanOutput, error) + GetRestoreTestingPlanWithContext(aws.Context, *backup.GetRestoreTestingPlanInput, ...request.Option) (*backup.GetRestoreTestingPlanOutput, error) + GetRestoreTestingPlanRequest(*backup.GetRestoreTestingPlanInput) (*request.Request, *backup.GetRestoreTestingPlanOutput) + + GetRestoreTestingSelection(*backup.GetRestoreTestingSelectionInput) (*backup.GetRestoreTestingSelectionOutput, error) + GetRestoreTestingSelectionWithContext(aws.Context, *backup.GetRestoreTestingSelectionInput, ...request.Option) (*backup.GetRestoreTestingSelectionOutput, error) + GetRestoreTestingSelectionRequest(*backup.GetRestoreTestingSelectionInput) (*request.Request, *backup.GetRestoreTestingSelectionOutput) + GetSupportedResourceTypes(*backup.GetSupportedResourceTypesInput) (*backup.GetSupportedResourceTypesOutput, error) GetSupportedResourceTypesWithContext(aws.Context, *backup.GetSupportedResourceTypesInput, ...request.Option) (*backup.GetSupportedResourceTypesOutput, error) GetSupportedResourceTypesRequest(*backup.GetSupportedResourceTypesInput) (*request.Request, *backup.GetSupportedResourceTypesOutput) + ListBackupJobSummaries(*backup.ListBackupJobSummariesInput) (*backup.ListBackupJobSummariesOutput, error) + ListBackupJobSummariesWithContext(aws.Context, *backup.ListBackupJobSummariesInput, ...request.Option) (*backup.ListBackupJobSummariesOutput, error) + ListBackupJobSummariesRequest(*backup.ListBackupJobSummariesInput) (*request.Request, *backup.ListBackupJobSummariesOutput) + + ListBackupJobSummariesPages(*backup.ListBackupJobSummariesInput, func(*backup.ListBackupJobSummariesOutput, bool) bool) error + ListBackupJobSummariesPagesWithContext(aws.Context, *backup.ListBackupJobSummariesInput, func(*backup.ListBackupJobSummariesOutput, bool) bool, ...request.Option) error + ListBackupJobs(*backup.ListBackupJobsInput) (*backup.ListBackupJobsOutput, error) ListBackupJobsWithContext(aws.Context, *backup.ListBackupJobsInput, ...request.Option) (*backup.ListBackupJobsOutput, error) ListBackupJobsRequest(*backup.ListBackupJobsInput) (*request.Request, *backup.ListBackupJobsOutput) @@ -262,6 +301,13 @@ ListBackupVaultsPages(*backup.ListBackupVaultsInput, func(*backup.ListBackupVaultsOutput, bool) bool) error ListBackupVaultsPagesWithContext(aws.Context, *backup.ListBackupVaultsInput, func(*backup.ListBackupVaultsOutput, bool) bool, ...request.Option) error + ListCopyJobSummaries(*backup.ListCopyJobSummariesInput) (*backup.ListCopyJobSummariesOutput, error) + ListCopyJobSummariesWithContext(aws.Context, *backup.ListCopyJobSummariesInput, ...request.Option) (*backup.ListCopyJobSummariesOutput, error) + ListCopyJobSummariesRequest(*backup.ListCopyJobSummariesInput) (*request.Request, *backup.ListCopyJobSummariesOutput) + + ListCopyJobSummariesPages(*backup.ListCopyJobSummariesInput, func(*backup.ListCopyJobSummariesOutput, bool) bool) error + ListCopyJobSummariesPagesWithContext(aws.Context, *backup.ListCopyJobSummariesInput, func(*backup.ListCopyJobSummariesOutput, bool) bool, ...request.Option) error + ListCopyJobs(*backup.ListCopyJobsInput) (*backup.ListCopyJobsOutput, error) ListCopyJobsWithContext(aws.Context, *backup.ListCopyJobsInput, ...request.Option) (*backup.ListCopyJobsOutput, error) ListCopyJobsRequest(*backup.ListCopyJobsInput) (*request.Request, *backup.ListCopyJobsOutput) @@ -332,6 +378,13 @@ ListReportPlansPages(*backup.ListReportPlansInput, func(*backup.ListReportPlansOutput, bool) bool) error ListReportPlansPagesWithContext(aws.Context, *backup.ListReportPlansInput, func(*backup.ListReportPlansOutput, bool) bool, ...request.Option) error + ListRestoreJobSummaries(*backup.ListRestoreJobSummariesInput) (*backup.ListRestoreJobSummariesOutput, error) + ListRestoreJobSummariesWithContext(aws.Context, *backup.ListRestoreJobSummariesInput, ...request.Option) (*backup.ListRestoreJobSummariesOutput, error) + ListRestoreJobSummariesRequest(*backup.ListRestoreJobSummariesInput) (*request.Request, *backup.ListRestoreJobSummariesOutput) + + ListRestoreJobSummariesPages(*backup.ListRestoreJobSummariesInput, func(*backup.ListRestoreJobSummariesOutput, bool) bool) error + ListRestoreJobSummariesPagesWithContext(aws.Context, *backup.ListRestoreJobSummariesInput, func(*backup.ListRestoreJobSummariesOutput, bool) bool, ...request.Option) error + ListRestoreJobs(*backup.ListRestoreJobsInput) (*backup.ListRestoreJobsOutput, error) ListRestoreJobsWithContext(aws.Context, *backup.ListRestoreJobsInput, ...request.Option) (*backup.ListRestoreJobsOutput, error) ListRestoreJobsRequest(*backup.ListRestoreJobsInput) (*request.Request, *backup.ListRestoreJobsOutput) @@ -339,6 +392,27 @@ ListRestoreJobsPages(*backup.ListRestoreJobsInput, func(*backup.ListRestoreJobsOutput, bool) bool) error ListRestoreJobsPagesWithContext(aws.Context, *backup.ListRestoreJobsInput, func(*backup.ListRestoreJobsOutput, bool) bool, ...request.Option) error + ListRestoreJobsByProtectedResource(*backup.ListRestoreJobsByProtectedResourceInput) (*backup.ListRestoreJobsByProtectedResourceOutput, error) + ListRestoreJobsByProtectedResourceWithContext(aws.Context, *backup.ListRestoreJobsByProtectedResourceInput, ...request.Option) (*backup.ListRestoreJobsByProtectedResourceOutput, error) + ListRestoreJobsByProtectedResourceRequest(*backup.ListRestoreJobsByProtectedResourceInput) (*request.Request, *backup.ListRestoreJobsByProtectedResourceOutput) + + ListRestoreJobsByProtectedResourcePages(*backup.ListRestoreJobsByProtectedResourceInput, func(*backup.ListRestoreJobsByProtectedResourceOutput, bool) bool) error + ListRestoreJobsByProtectedResourcePagesWithContext(aws.Context, *backup.ListRestoreJobsByProtectedResourceInput, func(*backup.ListRestoreJobsByProtectedResourceOutput, bool) bool, ...request.Option) error + + ListRestoreTestingPlans(*backup.ListRestoreTestingPlansInput) (*backup.ListRestoreTestingPlansOutput, error) + ListRestoreTestingPlansWithContext(aws.Context, *backup.ListRestoreTestingPlansInput, ...request.Option) (*backup.ListRestoreTestingPlansOutput, error) + ListRestoreTestingPlansRequest(*backup.ListRestoreTestingPlansInput) (*request.Request, *backup.ListRestoreTestingPlansOutput) + + ListRestoreTestingPlansPages(*backup.ListRestoreTestingPlansInput, func(*backup.ListRestoreTestingPlansOutput, bool) bool) error + ListRestoreTestingPlansPagesWithContext(aws.Context, *backup.ListRestoreTestingPlansInput, func(*backup.ListRestoreTestingPlansOutput, bool) bool, ...request.Option) error + + ListRestoreTestingSelections(*backup.ListRestoreTestingSelectionsInput) (*backup.ListRestoreTestingSelectionsOutput, error) + ListRestoreTestingSelectionsWithContext(aws.Context, *backup.ListRestoreTestingSelectionsInput, ...request.Option) (*backup.ListRestoreTestingSelectionsOutput, error) + ListRestoreTestingSelectionsRequest(*backup.ListRestoreTestingSelectionsInput) (*request.Request, *backup.ListRestoreTestingSelectionsOutput) + + ListRestoreTestingSelectionsPages(*backup.ListRestoreTestingSelectionsInput, func(*backup.ListRestoreTestingSelectionsOutput, bool) bool) error + ListRestoreTestingSelectionsPagesWithContext(aws.Context, *backup.ListRestoreTestingSelectionsInput, func(*backup.ListRestoreTestingSelectionsOutput, bool) bool, ...request.Option) error + ListTags(*backup.ListTagsInput) (*backup.ListTagsOutput, error) ListTagsWithContext(aws.Context, *backup.ListTagsInput, ...request.Option) (*backup.ListTagsOutput, error) ListTagsRequest(*backup.ListTagsInput) (*request.Request, *backup.ListTagsOutput) @@ -358,6 +432,10 @@ PutBackupVaultNotificationsWithContext(aws.Context, *backup.PutBackupVaultNotificationsInput, ...request.Option) (*backup.PutBackupVaultNotificationsOutput, error) PutBackupVaultNotificationsRequest(*backup.PutBackupVaultNotificationsInput) (*request.Request, *backup.PutBackupVaultNotificationsOutput) + PutRestoreValidationResult(*backup.PutRestoreValidationResultInput) (*backup.PutRestoreValidationResultOutput, error) + PutRestoreValidationResultWithContext(aws.Context, *backup.PutRestoreValidationResultInput, ...request.Option) (*backup.PutRestoreValidationResultOutput, error) + PutRestoreValidationResultRequest(*backup.PutRestoreValidationResultInput) (*request.Request, *backup.PutRestoreValidationResultOutput) + StartBackupJob(*backup.StartBackupJobInput) (*backup.StartBackupJobOutput, error) StartBackupJobWithContext(aws.Context, *backup.StartBackupJobInput, ...request.Option) (*backup.StartBackupJobOutput, error) StartBackupJobRequest(*backup.StartBackupJobInput) (*request.Request, *backup.StartBackupJobOutput) @@ -409,6 +487,14 @@ UpdateReportPlan(*backup.UpdateReportPlanInput) (*backup.UpdateReportPlanOutput, error) UpdateReportPlanWithContext(aws.Context, *backup.UpdateReportPlanInput, ...request.Option) (*backup.UpdateReportPlanOutput, error) UpdateReportPlanRequest(*backup.UpdateReportPlanInput) (*request.Request, *backup.UpdateReportPlanOutput) + + UpdateRestoreTestingPlan(*backup.UpdateRestoreTestingPlanInput) (*backup.UpdateRestoreTestingPlanOutput, error) + UpdateRestoreTestingPlanWithContext(aws.Context, *backup.UpdateRestoreTestingPlanInput, ...request.Option) (*backup.UpdateRestoreTestingPlanOutput, error) + UpdateRestoreTestingPlanRequest(*backup.UpdateRestoreTestingPlanInput) (*request.Request, *backup.UpdateRestoreTestingPlanOutput) + + UpdateRestoreTestingSelection(*backup.UpdateRestoreTestingSelectionInput) (*backup.UpdateRestoreTestingSelectionOutput, error) + UpdateRestoreTestingSelectionWithContext(aws.Context, *backup.UpdateRestoreTestingSelectionInput, ...request.Option) (*backup.UpdateRestoreTestingSelectionOutput, error) + UpdateRestoreTestingSelectionRequest(*backup.UpdateRestoreTestingSelectionInput) (*request.Request, *backup.UpdateRestoreTestingSelectionOutput) } var _ BackupAPI = (*backup.Backup)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/api.go golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,3990 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bcmdataexports + +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 opCreateExport = "CreateExport" + +// CreateExportRequest generates a "aws/request.Request" representing the +// client's request for the CreateExport 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 CreateExport for more information on using the CreateExport +// 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 CreateExportRequest method. +// req, resp := client.CreateExportRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/CreateExport +func (c *BCMDataExports) CreateExportRequest(input *CreateExportInput) (req *request.Request, output *CreateExportOutput) { + op := &request.Operation{ + Name: opCreateExport, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateExportInput{} + } + + output = &CreateExportOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateExport API operation for AWS Billing and Cost Management Data Exports. +// +// Creates a data export and specifies the data query, the delivery preference, +// and any optional resource tags. +// +// A DataQuery consists of both a QueryStatement and TableConfigurations. +// +// The QueryStatement is an SQL statement. Data Exports only supports a limited +// subset of the SQL syntax. For more information on the SQL syntax that is +// supported, see Data query (https://docs.aws.amazon.com/cur/latest/userguide/de-data-query.html). +// To view the available tables and columns, see the Data Exports table dictionary +// (https://docs.aws.amazon.com/cur/latest/userguide/de-table-dictionary.html). +// +// The TableConfigurations is a collection of specified TableProperties for +// the table being queried in the QueryStatement. TableProperties are additional +// configurations you can provide to change the data and schema of a table. +// Each table can have different TableProperties. However, tables are not required +// to have any TableProperties. Each table property has a default value that +// it assumes if not specified. For more information on table configurations, +// see Data query (https://docs.aws.amazon.com/cur/latest/userguide/de-data-query.html). +// To view the table properties available for each table, see the Data Exports +// table dictionary (https://docs.aws.amazon.com/cur/latest/userguide/de-table-dictionary.html) +// or use the ListTables API to get a response of all tables and their available +// properties. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation CreateExport for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// You've reached the limit on the number of resources you can create, or exceeded +// the size of an individual resource. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/CreateExport +func (c *BCMDataExports) CreateExport(input *CreateExportInput) (*CreateExportOutput, error) { + req, out := c.CreateExportRequest(input) + return out, req.Send() +} + +// CreateExportWithContext is the same as CreateExport with the addition of +// the ability to pass a context and additional request options. +// +// See CreateExport 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 *BCMDataExports) CreateExportWithContext(ctx aws.Context, input *CreateExportInput, opts ...request.Option) (*CreateExportOutput, error) { + req, out := c.CreateExportRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteExport = "DeleteExport" + +// DeleteExportRequest generates a "aws/request.Request" representing the +// client's request for the DeleteExport 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 DeleteExport for more information on using the DeleteExport +// 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 DeleteExportRequest method. +// req, resp := client.DeleteExportRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/DeleteExport +func (c *BCMDataExports) DeleteExportRequest(input *DeleteExportInput) (req *request.Request, output *DeleteExportOutput) { + op := &request.Operation{ + Name: opDeleteExport, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteExportInput{} + } + + output = &DeleteExportOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteExport API operation for AWS Billing and Cost Management Data Exports. +// +// Deletes an existing data export. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation DeleteExport for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/DeleteExport +func (c *BCMDataExports) DeleteExport(input *DeleteExportInput) (*DeleteExportOutput, error) { + req, out := c.DeleteExportRequest(input) + return out, req.Send() +} + +// DeleteExportWithContext is the same as DeleteExport with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteExport 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 *BCMDataExports) DeleteExportWithContext(ctx aws.Context, input *DeleteExportInput, opts ...request.Option) (*DeleteExportOutput, error) { + req, out := c.DeleteExportRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetExecution = "GetExecution" + +// GetExecutionRequest generates a "aws/request.Request" representing the +// client's request for the GetExecution 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 GetExecution for more information on using the GetExecution +// 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 GetExecutionRequest method. +// req, resp := client.GetExecutionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/GetExecution +func (c *BCMDataExports) GetExecutionRequest(input *GetExecutionInput) (req *request.Request, output *GetExecutionOutput) { + op := &request.Operation{ + Name: opGetExecution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetExecutionInput{} + } + + output = &GetExecutionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetExecution API operation for AWS Billing and Cost Management Data Exports. +// +// Exports data based on the source data update. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation GetExecution for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/GetExecution +func (c *BCMDataExports) GetExecution(input *GetExecutionInput) (*GetExecutionOutput, error) { + req, out := c.GetExecutionRequest(input) + return out, req.Send() +} + +// GetExecutionWithContext is the same as GetExecution with the addition of +// the ability to pass a context and additional request options. +// +// See GetExecution 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 *BCMDataExports) GetExecutionWithContext(ctx aws.Context, input *GetExecutionInput, opts ...request.Option) (*GetExecutionOutput, error) { + req, out := c.GetExecutionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetExport = "GetExport" + +// GetExportRequest generates a "aws/request.Request" representing the +// client's request for the GetExport 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 GetExport for more information on using the GetExport +// 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 GetExportRequest method. +// req, resp := client.GetExportRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/GetExport +func (c *BCMDataExports) GetExportRequest(input *GetExportInput) (req *request.Request, output *GetExportOutput) { + op := &request.Operation{ + Name: opGetExport, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetExportInput{} + } + + output = &GetExportOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetExport API operation for AWS Billing and Cost Management Data Exports. +// +// Views the definition of an existing data export. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation GetExport for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/GetExport +func (c *BCMDataExports) GetExport(input *GetExportInput) (*GetExportOutput, error) { + req, out := c.GetExportRequest(input) + return out, req.Send() +} + +// GetExportWithContext is the same as GetExport with the addition of +// the ability to pass a context and additional request options. +// +// See GetExport 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 *BCMDataExports) GetExportWithContext(ctx aws.Context, input *GetExportInput, opts ...request.Option) (*GetExportOutput, error) { + req, out := c.GetExportRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTable = "GetTable" + +// GetTableRequest generates a "aws/request.Request" representing the +// client's request for the GetTable 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 GetTable for more information on using the GetTable +// 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 GetTableRequest method. +// req, resp := client.GetTableRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/GetTable +func (c *BCMDataExports) GetTableRequest(input *GetTableInput) (req *request.Request, output *GetTableOutput) { + op := &request.Operation{ + Name: opGetTable, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTableInput{} + } + + output = &GetTableOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTable API operation for AWS Billing and Cost Management Data Exports. +// +// Returns the metadata for the specified table and table properties. This includes +// the list of columns in the table schema, their data types, and column descriptions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation GetTable for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/GetTable +func (c *BCMDataExports) GetTable(input *GetTableInput) (*GetTableOutput, error) { + req, out := c.GetTableRequest(input) + return out, req.Send() +} + +// GetTableWithContext is the same as GetTable with the addition of +// the ability to pass a context and additional request options. +// +// See GetTable 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 *BCMDataExports) GetTableWithContext(ctx aws.Context, input *GetTableInput, opts ...request.Option) (*GetTableOutput, error) { + req, out := c.GetTableRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListExecutions = "ListExecutions" + +// ListExecutionsRequest generates a "aws/request.Request" representing the +// client's request for the ListExecutions 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 ListExecutions for more information on using the ListExecutions +// 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 ListExecutionsRequest method. +// req, resp := client.ListExecutionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListExecutions +func (c *BCMDataExports) ListExecutionsRequest(input *ListExecutionsInput) (req *request.Request, output *ListExecutionsOutput) { + op := &request.Operation{ + Name: opListExecutions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListExecutionsInput{} + } + + output = &ListExecutionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExecutions API operation for AWS Billing and Cost Management Data Exports. +// +// Lists the historical executions for the export. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation ListExecutions for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListExecutions +func (c *BCMDataExports) ListExecutions(input *ListExecutionsInput) (*ListExecutionsOutput, error) { + req, out := c.ListExecutionsRequest(input) + return out, req.Send() +} + +// ListExecutionsWithContext is the same as ListExecutions with the addition of +// the ability to pass a context and additional request options. +// +// See ListExecutions 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 *BCMDataExports) ListExecutionsWithContext(ctx aws.Context, input *ListExecutionsInput, opts ...request.Option) (*ListExecutionsOutput, error) { + req, out := c.ListExecutionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListExecutionsPages iterates over the pages of a ListExecutions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListExecutions 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 ListExecutions operation. +// pageNum := 0 +// err := client.ListExecutionsPages(params, +// func(page *bcmdataexports.ListExecutionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BCMDataExports) ListExecutionsPages(input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool) error { + return c.ListExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListExecutionsPagesWithContext same as ListExecutionsPages 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 *BCMDataExports) ListExecutionsPagesWithContext(ctx aws.Context, input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListExecutionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListExecutionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListExecutionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListExports = "ListExports" + +// ListExportsRequest generates a "aws/request.Request" representing the +// client's request for the ListExports 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 ListExports for more information on using the ListExports +// 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 ListExportsRequest method. +// req, resp := client.ListExportsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListExports +func (c *BCMDataExports) ListExportsRequest(input *ListExportsInput) (req *request.Request, output *ListExportsOutput) { + op := &request.Operation{ + Name: opListExports, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListExportsInput{} + } + + output = &ListExportsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExports API operation for AWS Billing and Cost Management Data Exports. +// +// Lists all data export definitions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation ListExports for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListExports +func (c *BCMDataExports) ListExports(input *ListExportsInput) (*ListExportsOutput, error) { + req, out := c.ListExportsRequest(input) + return out, req.Send() +} + +// ListExportsWithContext is the same as ListExports with the addition of +// the ability to pass a context and additional request options. +// +// See ListExports 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 *BCMDataExports) ListExportsWithContext(ctx aws.Context, input *ListExportsInput, opts ...request.Option) (*ListExportsOutput, error) { + req, out := c.ListExportsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListExportsPages iterates over the pages of a ListExports operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListExports 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 ListExports operation. +// pageNum := 0 +// err := client.ListExportsPages(params, +// func(page *bcmdataexports.ListExportsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BCMDataExports) ListExportsPages(input *ListExportsInput, fn func(*ListExportsOutput, bool) bool) error { + return c.ListExportsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListExportsPagesWithContext same as ListExportsPages 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 *BCMDataExports) ListExportsPagesWithContext(ctx aws.Context, input *ListExportsInput, fn func(*ListExportsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListExportsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListExportsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListExportsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTables = "ListTables" + +// ListTablesRequest generates a "aws/request.Request" representing the +// client's request for the ListTables 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 ListTables for more information on using the ListTables +// 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 ListTablesRequest method. +// req, resp := client.ListTablesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListTables +func (c *BCMDataExports) ListTablesRequest(input *ListTablesInput) (req *request.Request, output *ListTablesOutput) { + op := &request.Operation{ + Name: opListTables, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTablesInput{} + } + + output = &ListTablesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTables API operation for AWS Billing and Cost Management Data Exports. +// +// Lists all available tables in data exports. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation ListTables for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListTables +func (c *BCMDataExports) ListTables(input *ListTablesInput) (*ListTablesOutput, error) { + req, out := c.ListTablesRequest(input) + return out, req.Send() +} + +// ListTablesWithContext is the same as ListTables with the addition of +// the ability to pass a context and additional request options. +// +// See ListTables 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 *BCMDataExports) ListTablesWithContext(ctx aws.Context, input *ListTablesInput, opts ...request.Option) (*ListTablesOutput, error) { + req, out := c.ListTablesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTablesPages iterates over the pages of a ListTables operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTables 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 ListTables operation. +// pageNum := 0 +// err := client.ListTablesPages(params, +// func(page *bcmdataexports.ListTablesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BCMDataExports) ListTablesPages(input *ListTablesInput, fn func(*ListTablesOutput, bool) bool) error { + return c.ListTablesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTablesPagesWithContext same as ListTablesPages 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 *BCMDataExports) ListTablesPagesWithContext(ctx aws.Context, input *ListTablesInput, fn func(*ListTablesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTablesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTablesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTablesOutput), !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/bcm-data-exports-2023-11-26/ListTagsForResource +func (c *BCMDataExports) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Billing and Cost Management Data Exports. +// +// List tags associated with an existing data export. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/ListTagsForResource +func (c *BCMDataExports) 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 *BCMDataExports) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/TagResource +func (c *BCMDataExports) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Billing and Cost Management Data Exports. +// +// Adds tags for an existing data export definition. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/TagResource +func (c *BCMDataExports) 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 *BCMDataExports) 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/bcm-data-exports-2023-11-26/UntagResource +func (c *BCMDataExports) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Billing and Cost Management Data Exports. +// +// Deletes tags associated with an existing data export definition. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/UntagResource +func (c *BCMDataExports) 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 *BCMDataExports) 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 opUpdateExport = "UpdateExport" + +// UpdateExportRequest generates a "aws/request.Request" representing the +// client's request for the UpdateExport 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 UpdateExport for more information on using the UpdateExport +// 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 UpdateExportRequest method. +// req, resp := client.UpdateExportRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/UpdateExport +func (c *BCMDataExports) UpdateExportRequest(input *UpdateExportInput) (req *request.Request, output *UpdateExportOutput) { + op := &request.Operation{ + Name: opUpdateExport, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateExportInput{} + } + + output = &UpdateExportOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateExport API operation for AWS Billing and Cost Management Data Exports. +// +// Updates an existing data export by overwriting all export parameters. All +// export parameters must be provided in the UpdateExport request. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Billing and Cost Management Data Exports's +// API operation UpdateExport for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26/UpdateExport +func (c *BCMDataExports) UpdateExport(input *UpdateExportInput) (*UpdateExportOutput, error) { + req, out := c.UpdateExportRequest(input) + return out, req.Send() +} + +// UpdateExportWithContext is the same as UpdateExport with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateExport 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 *BCMDataExports) UpdateExportWithContext(ctx aws.Context, input *UpdateExportInput, opts ...request.Option) (*UpdateExportOutput, error) { + req, out := c.UpdateExportRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Includes basic information for a data column such as its description, name, +// and type. +type Column struct { + _ struct{} `type:"structure"` + + // The description for a column. + Description *string `type:"string"` + + // The column name. + Name *string `type:"string"` + + // The kind of data a column stores. + 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 Column) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Column) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *Column) SetDescription(v string) *Column { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *Column) SetName(v string) *Column { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *Column) SetType(v string) *Column { + s.Type = &v + return s +} + +type CreateExportInput struct { + _ struct{} `type:"structure"` + + // The details of the export, including data query, name, description, and destination + // configuration. + // + // Export is a required field + Export *Export `type:"structure" required:"true"` + + // An optional list of tags to associate with the specified export. Each tag + // consists of a key and a value, and each key must be unique for the resource. + ResourceTags []*ResourceTag `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 CreateExportInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateExportInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateExportInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateExportInput"} + if s.Export == nil { + invalidParams.Add(request.NewErrParamRequired("Export")) + } + if s.Export != nil { + if err := s.Export.Validate(); err != nil { + invalidParams.AddNested("Export", err.(request.ErrInvalidParams)) + } + } + if s.ResourceTags != nil { + for i, v := range s.ResourceTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceTags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExport sets the Export field's value. +func (s *CreateExportInput) SetExport(v *Export) *CreateExportInput { + s.Export = v + return s +} + +// SetResourceTags sets the ResourceTags field's value. +func (s *CreateExportInput) SetResourceTags(v []*ResourceTag) *CreateExportInput { + s.ResourceTags = v + return s +} + +type CreateExportOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + ExportArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateExportOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateExportOutput) GoString() string { + return s.String() +} + +// SetExportArn sets the ExportArn field's value. +func (s *CreateExportOutput) SetExportArn(v string) *CreateExportOutput { + s.ExportArn = &v + return s +} + +// The SQL query of column selections and row filters from the data table you +// want. +type DataQuery struct { + _ struct{} `type:"structure"` + + // The query statement. + // + // QueryStatement is a required field + QueryStatement *string `min:"1" type:"string" required:"true"` + + // The table configuration. + TableConfigurations map[string]map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataQuery) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataQuery) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataQuery) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataQuery"} + if s.QueryStatement == nil { + invalidParams.Add(request.NewErrParamRequired("QueryStatement")) + } + if s.QueryStatement != nil && len(*s.QueryStatement) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QueryStatement", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetQueryStatement sets the QueryStatement field's value. +func (s *DataQuery) SetQueryStatement(v string) *DataQuery { + s.QueryStatement = &v + return s +} + +// SetTableConfigurations sets the TableConfigurations field's value. +func (s *DataQuery) SetTableConfigurations(v map[string]map[string]*string) *DataQuery { + s.TableConfigurations = v + return s +} + +type DeleteExportInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + // + // ExportArn is a required field + ExportArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteExportInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteExportInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteExportInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteExportInput"} + if s.ExportArn == nil { + invalidParams.Add(request.NewErrParamRequired("ExportArn")) + } + if s.ExportArn != nil && len(*s.ExportArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExportArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExportArn sets the ExportArn field's value. +func (s *DeleteExportInput) SetExportArn(v string) *DeleteExportInput { + s.ExportArn = &v + return s +} + +type DeleteExportOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + ExportArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteExportOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteExportOutput) GoString() string { + return s.String() +} + +// SetExportArn sets the ExportArn field's value. +func (s *DeleteExportOutput) SetExportArn(v string) *DeleteExportOutput { + s.ExportArn = &v + return s +} + +// The destinations used for data exports. +type DestinationConfigurations struct { + _ struct{} `type:"structure"` + + // An object that describes the destination of the data exports file. + // + // S3Destination is a required field + S3Destination *S3Destination `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 DestinationConfigurations) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationConfigurations) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DestinationConfigurations) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DestinationConfigurations"} + if s.S3Destination == nil { + invalidParams.Add(request.NewErrParamRequired("S3Destination")) + } + if s.S3Destination != nil { + if err := s.S3Destination.Validate(); err != nil { + invalidParams.AddNested("S3Destination", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Destination sets the S3Destination field's value. +func (s *DestinationConfigurations) SetS3Destination(v *S3Destination) *DestinationConfigurations { + s.S3Destination = v + return s +} + +// The reference for the data export update. +type ExecutionReference struct { + _ struct{} `type:"structure"` + + // The ID for this specific execution. + // + // ExecutionId is a required field + ExecutionId *string `type:"string" required:"true"` + + // The status of this specific execution. + // + // ExecutionStatus is a required field + ExecutionStatus *ExecutionStatus `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 ExecutionReference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecutionReference) GoString() string { + return s.String() +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *ExecutionReference) SetExecutionId(v string) *ExecutionReference { + s.ExecutionId = &v + return s +} + +// SetExecutionStatus sets the ExecutionStatus field's value. +func (s *ExecutionReference) SetExecutionStatus(v *ExecutionStatus) *ExecutionReference { + s.ExecutionStatus = v + return s +} + +// The status of the execution. +type ExecutionStatus struct { + _ struct{} `type:"structure"` + + // The time when the execution was completed. + CompletedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The time when the execution was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The time when the execution was last updated. + LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The code for the status of the execution. + StatusCode *string `type:"string" enum:"ExecutionStatusCode"` + + // The reason for the failed status. + StatusReason *string `type:"string" enum:"ExecutionStatusReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecutionStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecutionStatus) GoString() string { + return s.String() +} + +// SetCompletedAt sets the CompletedAt field's value. +func (s *ExecutionStatus) SetCompletedAt(v time.Time) *ExecutionStatus { + s.CompletedAt = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ExecutionStatus) SetCreatedAt(v time.Time) *ExecutionStatus { + s.CreatedAt = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *ExecutionStatus) SetLastUpdatedAt(v time.Time) *ExecutionStatus { + s.LastUpdatedAt = &v + return s +} + +// SetStatusCode sets the StatusCode field's value. +func (s *ExecutionStatus) SetStatusCode(v string) *ExecutionStatus { + s.StatusCode = &v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *ExecutionStatus) SetStatusReason(v string) *ExecutionStatus { + s.StatusReason = &v + return s +} + +// The details that are available for an export. +type Export struct { + _ struct{} `type:"structure"` + + // The data query for this specific data export. + // + // DataQuery is a required field + DataQuery *DataQuery `type:"structure" required:"true"` + + // The description for this specific data export. + Description *string `type:"string"` + + // The destination configuration for this specific data export. + // + // DestinationConfigurations is a required field + DestinationConfigurations *DestinationConfigurations `type:"structure" required:"true"` + + // The Amazon Resource Name (ARN) for this export. + ExportArn *string `min:"20" type:"string"` + + // The name of this specific data export. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The cadence for Amazon Web Services to update the export in your S3 bucket. + // + // RefreshCadence is a required field + RefreshCadence *RefreshCadence `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 Export) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Export) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Export) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Export"} + if s.DataQuery == nil { + invalidParams.Add(request.NewErrParamRequired("DataQuery")) + } + if s.DestinationConfigurations == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationConfigurations")) + } + if s.ExportArn != nil && len(*s.ExportArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExportArn", 20)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.RefreshCadence == nil { + invalidParams.Add(request.NewErrParamRequired("RefreshCadence")) + } + if s.DataQuery != nil { + if err := s.DataQuery.Validate(); err != nil { + invalidParams.AddNested("DataQuery", err.(request.ErrInvalidParams)) + } + } + if s.DestinationConfigurations != nil { + if err := s.DestinationConfigurations.Validate(); err != nil { + invalidParams.AddNested("DestinationConfigurations", err.(request.ErrInvalidParams)) + } + } + if s.RefreshCadence != nil { + if err := s.RefreshCadence.Validate(); err != nil { + invalidParams.AddNested("RefreshCadence", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataQuery sets the DataQuery field's value. +func (s *Export) SetDataQuery(v *DataQuery) *Export { + s.DataQuery = v + return s +} + +// SetDescription sets the Description field's value. +func (s *Export) SetDescription(v string) *Export { + s.Description = &v + return s +} + +// SetDestinationConfigurations sets the DestinationConfigurations field's value. +func (s *Export) SetDestinationConfigurations(v *DestinationConfigurations) *Export { + s.DestinationConfigurations = v + return s +} + +// SetExportArn sets the ExportArn field's value. +func (s *Export) SetExportArn(v string) *Export { + s.ExportArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *Export) SetName(v string) *Export { + s.Name = &v + return s +} + +// SetRefreshCadence sets the RefreshCadence field's value. +func (s *Export) SetRefreshCadence(v *RefreshCadence) *Export { + s.RefreshCadence = v + return s +} + +// The reference details for a given export. +type ExportReference struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + // + // ExportArn is a required field + ExportArn *string `min:"20" type:"string" required:"true"` + + // The name of this specific data export. + // + // ExportName is a required field + ExportName *string `min:"1" type:"string" required:"true"` + + // The status of this specific data export. + // + // ExportStatus is a required field + ExportStatus *ExportStatus `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 ExportReference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportReference) GoString() string { + return s.String() +} + +// SetExportArn sets the ExportArn field's value. +func (s *ExportReference) SetExportArn(v string) *ExportReference { + s.ExportArn = &v + return s +} + +// SetExportName sets the ExportName field's value. +func (s *ExportReference) SetExportName(v string) *ExportReference { + s.ExportName = &v + return s +} + +// SetExportStatus sets the ExportStatus field's value. +func (s *ExportReference) SetExportStatus(v *ExportStatus) *ExportReference { + s.ExportStatus = v + return s +} + +// The status of the data export. +type ExportStatus struct { + _ struct{} `type:"structure"` + + // The timestamp of when the export was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The timestamp of when the export was last generated. + LastRefreshedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The timestamp of when the export was updated. + LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The status code for the request. + StatusCode *string `type:"string" enum:"ExportStatusCode"` + + // The description for the status code. + StatusReason *string `type:"string" enum:"ExecutionStatusReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportStatus) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ExportStatus) SetCreatedAt(v time.Time) *ExportStatus { + s.CreatedAt = &v + return s +} + +// SetLastRefreshedAt sets the LastRefreshedAt field's value. +func (s *ExportStatus) SetLastRefreshedAt(v time.Time) *ExportStatus { + s.LastRefreshedAt = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *ExportStatus) SetLastUpdatedAt(v time.Time) *ExportStatus { + s.LastUpdatedAt = &v + return s +} + +// SetStatusCode sets the StatusCode field's value. +func (s *ExportStatus) SetStatusCode(v string) *ExportStatus { + s.StatusCode = &v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *ExportStatus) SetStatusReason(v string) *ExportStatus { + s.StatusReason = &v + return s +} + +type GetExecutionInput struct { + _ struct{} `type:"structure"` + + // The ID for this specific execution. + // + // ExecutionId is a required field + ExecutionId *string `type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Export object that generated this specific + // execution. + // + // ExportArn is a required field + ExportArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExecutionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExecutionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetExecutionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExecutionInput"} + if s.ExecutionId == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionId")) + } + if s.ExportArn == nil { + invalidParams.Add(request.NewErrParamRequired("ExportArn")) + } + if s.ExportArn != nil && len(*s.ExportArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExportArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *GetExecutionInput) SetExecutionId(v string) *GetExecutionInput { + s.ExecutionId = &v + return s +} + +// SetExportArn sets the ExportArn field's value. +func (s *GetExecutionInput) SetExportArn(v string) *GetExecutionInput { + s.ExportArn = &v + return s +} + +type GetExecutionOutput struct { + _ struct{} `type:"structure"` + + // The ID for this specific execution. + ExecutionId *string `type:"string"` + + // The status of this specific execution. + ExecutionStatus *ExecutionStatus `type:"structure"` + + // The export data for this specific execution. This export data is a snapshot + // from when the execution was generated. The data could be different from the + // current export data if the export was updated since the execution was generated. + Export *Export `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 GetExecutionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExecutionOutput) GoString() string { + return s.String() +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *GetExecutionOutput) SetExecutionId(v string) *GetExecutionOutput { + s.ExecutionId = &v + return s +} + +// SetExecutionStatus sets the ExecutionStatus field's value. +func (s *GetExecutionOutput) SetExecutionStatus(v *ExecutionStatus) *GetExecutionOutput { + s.ExecutionStatus = v + return s +} + +// SetExport sets the Export field's value. +func (s *GetExecutionOutput) SetExport(v *Export) *GetExecutionOutput { + s.Export = v + return s +} + +type GetExportInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + // + // ExportArn is a required field + ExportArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExportInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExportInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetExportInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExportInput"} + if s.ExportArn == nil { + invalidParams.Add(request.NewErrParamRequired("ExportArn")) + } + if s.ExportArn != nil && len(*s.ExportArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExportArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExportArn sets the ExportArn field's value. +func (s *GetExportInput) SetExportArn(v string) *GetExportInput { + s.ExportArn = &v + return s +} + +type GetExportOutput struct { + _ struct{} `type:"structure"` + + // The data for this specific export. + Export *Export `type:"structure"` + + // The status of this specific export. + ExportStatus *ExportStatus `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 GetExportOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExportOutput) GoString() string { + return s.String() +} + +// SetExport sets the Export field's value. +func (s *GetExportOutput) SetExport(v *Export) *GetExportOutput { + s.Export = v + return s +} + +// SetExportStatus sets the ExportStatus field's value. +func (s *GetExportOutput) SetExportStatus(v *ExportStatus) *GetExportOutput { + s.ExportStatus = v + return s +} + +type GetTableInput struct { + _ struct{} `type:"structure"` + + // The name of the table. + // + // TableName is a required field + TableName *string `type:"string" required:"true"` + + // TableProperties are additional configurations you can provide to change the + // data and schema of a table. Each table can have different TableProperties. + // Tables are not required to have any TableProperties. Each table property + // has a default value that it assumes if not specified. + TableProperties map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTableInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTableInput"} + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTableName sets the TableName field's value. +func (s *GetTableInput) SetTableName(v string) *GetTableInput { + s.TableName = &v + return s +} + +// SetTableProperties sets the TableProperties field's value. +func (s *GetTableInput) SetTableProperties(v map[string]*string) *GetTableInput { + s.TableProperties = v + return s +} + +type GetTableOutput struct { + _ struct{} `type:"structure"` + + // The table description. + Description *string `type:"string"` + + // The schema of the table. + Schema []*Column `type:"list"` + + // The name of the table. + TableName *string `type:"string"` + + // TableProperties are additional configurations you can provide to change the + // data and schema of a table. Each table can have different TableProperties. + // Tables are not required to have any TableProperties. Each table property + // has a default value that it assumes if not specified. + TableProperties map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *GetTableOutput) SetDescription(v string) *GetTableOutput { + s.Description = &v + return s +} + +// SetSchema sets the Schema field's value. +func (s *GetTableOutput) SetSchema(v []*Column) *GetTableOutput { + s.Schema = v + return s +} + +// SetTableName sets the TableName field's value. +func (s *GetTableOutput) SetTableName(v string) *GetTableOutput { + s.TableName = &v + return s +} + +// SetTableProperties sets the TableProperties field's value. +func (s *GetTableOutput) SetTableProperties(v map[string]*string) *GetTableOutput { + s.TableProperties = v + return s +} + +// An error on the server occurred during the processing of your request. Try +// again later. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListExecutionsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + // + // ExportArn is a required field + ExportArn *string `min:"20" type:"string" required:"true"` + + // The maximum number of objects that are returned for the request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExecutionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExecutionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExecutionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExecutionsInput"} + if s.ExportArn == nil { + invalidParams.Add(request.NewErrParamRequired("ExportArn")) + } + if s.ExportArn != nil && len(*s.ExportArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExportArn", 20)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExportArn sets the ExportArn field's value. +func (s *ListExecutionsInput) SetExportArn(v string) *ListExecutionsInput { + s.ExportArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListExecutionsInput) SetMaxResults(v int64) *ListExecutionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExecutionsInput) SetNextToken(v string) *ListExecutionsInput { + s.NextToken = &v + return s +} + +type ListExecutionsOutput struct { + _ struct{} `type:"structure"` + + // The list of executions. + Executions []*ExecutionReference `type:"list"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExecutionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExecutionsOutput) GoString() string { + return s.String() +} + +// SetExecutions sets the Executions field's value. +func (s *ListExecutionsOutput) SetExecutions(v []*ExecutionReference) *ListExecutionsOutput { + s.Executions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExecutionsOutput) SetNextToken(v string) *ListExecutionsOutput { + s.NextToken = &v + return s +} + +type ListExportsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of objects that are returned for the request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExportsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExportsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExportsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExportsInput"} + 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 *ListExportsInput) SetMaxResults(v int64) *ListExportsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExportsInput) SetNextToken(v string) *ListExportsInput { + s.NextToken = &v + return s +} + +type ListExportsOutput struct { + _ struct{} `type:"structure"` + + // The details of the exports, including name and export status. + Exports []*ExportReference `type:"list"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExportsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExportsOutput) GoString() string { + return s.String() +} + +// SetExports sets the Exports field's value. +func (s *ListExportsOutput) SetExports(v []*ExportReference) *ListExportsOutput { + s.Exports = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExportsOutput) SetNextToken(v string) *ListExportsOutput { + s.NextToken = &v + return s +} + +type ListTablesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of objects that are returned for the request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTablesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTablesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTablesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTablesInput"} + 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 *ListTablesInput) SetMaxResults(v int64) *ListTablesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTablesInput) SetNextToken(v string) *ListTablesInput { + s.NextToken = &v + return s +} + +type ListTablesOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` + + // The list of tables. + Tables []*Table `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 ListTablesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTablesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTablesOutput) SetNextToken(v string) *ListTablesOutput { + s.NextToken = &v + return s +} + +// SetTables sets the Tables field's value. +func (s *ListTablesOutput) SetTables(v []*Table) *ListTablesOutput { + s.Tables = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The maximum number of objects that are returned for the request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` + + // The unique identifier for the resource. + // + // ResourceArn is a required field + ResourceArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { + s.NextToken = &v + return s +} + +// 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"` + + // The token to retrieve the next set of results. + NextToken *string `type:"string"` + + // An optional list of tags to associate with the specified export. Each tag + // consists of a key and a value, and each key must be unique for the resource. + ResourceTags []*ResourceTag `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() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { + s.NextToken = &v + return s +} + +// SetResourceTags sets the ResourceTags field's value. +func (s *ListTagsForResourceOutput) SetResourceTags(v []*ResourceTag) *ListTagsForResourceOutput { + s.ResourceTags = v + return s +} + +// The cadence for Amazon Web Services to update the data export in your S3 +// bucket. +type RefreshCadence struct { + _ struct{} `type:"structure"` + + // The frequency that data exports are updated. The export refreshes each time + // the source data updates, up to three times daily. + // + // Frequency is a required field + Frequency *string `type:"string" required:"true" enum:"FrequencyOption"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RefreshCadence) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RefreshCadence) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RefreshCadence) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RefreshCadence"} + if s.Frequency == nil { + invalidParams.Add(request.NewErrParamRequired("Frequency")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFrequency sets the Frequency field's value. +func (s *RefreshCadence) SetFrequency(v string) *RefreshCadence { + s.Frequency = &v + return s +} + +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The identifier of the resource that was not found. + // + // ResourceId is a required field + ResourceId *string `type:"string" required:"true"` + + // The type of the resource that was not found. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 tag structure that contains a tag key and value. +type ResourceTag struct { + _ struct{} `type:"structure"` + + // The key that's associated with the tag. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value that's associated with the tag. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceTag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceTag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResourceTag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResourceTag"} + 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 *ResourceTag) SetKey(v string) *ResourceTag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *ResourceTag) SetValue(v string) *ResourceTag { + s.Value = &v + return s +} + +// Describes the destination Amazon Simple Storage Service (Amazon S3) bucket +// name and object keys of a data exports file. +type S3Destination struct { + _ struct{} `type:"structure"` + + // The name of the Amazon S3 bucket used as the destination of a data export + // file. + // + // S3Bucket is a required field + S3Bucket *string `type:"string" required:"true"` + + // The output configuration for the data export. + // + // S3OutputConfigurations is a required field + S3OutputConfigurations *S3OutputConfigurations `type:"structure" required:"true"` + + // The S3 path prefix you want prepended to the name of your data export. + // + // S3Prefix is a required field + S3Prefix *string `type:"string" required:"true"` + + // The S3 bucket Region. + // + // S3Region is a required field + S3Region *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Destination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Destination) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Destination) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Destination"} + if s.S3Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("S3Bucket")) + } + if s.S3OutputConfigurations == nil { + invalidParams.Add(request.NewErrParamRequired("S3OutputConfigurations")) + } + if s.S3Prefix == nil { + invalidParams.Add(request.NewErrParamRequired("S3Prefix")) + } + if s.S3Region == nil { + invalidParams.Add(request.NewErrParamRequired("S3Region")) + } + if s.S3OutputConfigurations != nil { + if err := s.S3OutputConfigurations.Validate(); err != nil { + invalidParams.AddNested("S3OutputConfigurations", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Bucket sets the S3Bucket field's value. +func (s *S3Destination) SetS3Bucket(v string) *S3Destination { + s.S3Bucket = &v + return s +} + +// SetS3OutputConfigurations sets the S3OutputConfigurations field's value. +func (s *S3Destination) SetS3OutputConfigurations(v *S3OutputConfigurations) *S3Destination { + s.S3OutputConfigurations = v + return s +} + +// SetS3Prefix sets the S3Prefix field's value. +func (s *S3Destination) SetS3Prefix(v string) *S3Destination { + s.S3Prefix = &v + return s +} + +// SetS3Region sets the S3Region field's value. +func (s *S3Destination) SetS3Region(v string) *S3Destination { + s.S3Region = &v + return s +} + +// The compression type, file format, and overwrite preference for the data +// export. +type S3OutputConfigurations struct { + _ struct{} `type:"structure"` + + // The compression type for the data export. + // + // Compression is a required field + Compression *string `type:"string" required:"true" enum:"CompressionOption"` + + // The file format for the data export. + // + // Format is a required field + Format *string `type:"string" required:"true" enum:"FormatOption"` + + // The output type for the data export. + // + // OutputType is a required field + OutputType *string `type:"string" required:"true" enum:"S3OutputType"` + + // The rule to follow when generating a version of the data export file. You + // have the choice to overwrite the previous version or to be delivered in addition + // to the previous versions. Overwriting exports can save on Amazon S3 storage + // costs. Creating new export versions allows you to track the changes in cost + // and usage data over time. + // + // Overwrite is a required field + Overwrite *string `type:"string" required:"true" enum:"OverwriteOption"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3OutputConfigurations) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3OutputConfigurations) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3OutputConfigurations) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3OutputConfigurations"} + if s.Compression == nil { + invalidParams.Add(request.NewErrParamRequired("Compression")) + } + if s.Format == nil { + invalidParams.Add(request.NewErrParamRequired("Format")) + } + if s.OutputType == nil { + invalidParams.Add(request.NewErrParamRequired("OutputType")) + } + if s.Overwrite == nil { + invalidParams.Add(request.NewErrParamRequired("Overwrite")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCompression sets the Compression field's value. +func (s *S3OutputConfigurations) SetCompression(v string) *S3OutputConfigurations { + s.Compression = &v + return s +} + +// SetFormat sets the Format field's value. +func (s *S3OutputConfigurations) SetFormat(v string) *S3OutputConfigurations { + s.Format = &v + return s +} + +// SetOutputType sets the OutputType field's value. +func (s *S3OutputConfigurations) SetOutputType(v string) *S3OutputConfigurations { + s.OutputType = &v + return s +} + +// SetOverwrite sets the Overwrite field's value. +func (s *S3OutputConfigurations) SetOverwrite(v string) *S3OutputConfigurations { + s.Overwrite = &v + return s +} + +// You've reached the limit on the number of resources you can create, or exceeded +// the size of an individual resource. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The quota code that was exceeded. + // + // QuotaCode is a required field + QuotaCode *string `type:"string" required:"true"` + + // The identifier of the resource that exceeded quota. + ResourceId *string `type:"string"` + + // The type of the resource that exceeded quota. + ResourceType *string `type:"string"` + + // The service code that exceeded quota. It will always be “AWSBillingAndCostManagementDataExports”. + // + // ServiceCode is a required field + ServiceCode *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The details for the data export table. +type Table struct { + _ struct{} `type:"structure"` + + // The description for the table. + Description *string `type:"string"` + + // The name of the table. + TableName *string `type:"string"` + + // The properties for the table. + TableProperties []*TablePropertyDescription `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 Table) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Table) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *Table) SetDescription(v string) *Table { + s.Description = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *Table) SetTableName(v string) *Table { + s.TableName = &v + return s +} + +// SetTableProperties sets the TableProperties field's value. +func (s *Table) SetTableProperties(v []*TablePropertyDescription) *Table { + s.TableProperties = v + return s +} + +// The properties for the data export table. +type TablePropertyDescription struct { + _ struct{} `type:"structure"` + + // The default value for the table. + DefaultValue *string `type:"string"` + + // The description for the table. + Description *string `type:"string"` + + // The name of the table. + Name *string `type:"string"` + + // The valid values for the table. + ValidValues []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TablePropertyDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TablePropertyDescription) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *TablePropertyDescription) SetDefaultValue(v string) *TablePropertyDescription { + s.DefaultValue = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *TablePropertyDescription) SetDescription(v string) *TablePropertyDescription { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *TablePropertyDescription) SetName(v string) *TablePropertyDescription { + s.Name = &v + return s +} + +// SetValidValues sets the ValidValues field's value. +func (s *TablePropertyDescription) SetValidValues(v []*string) *TablePropertyDescription { + s.ValidValues = v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the resource. + // + // ResourceArn is a required field + ResourceArn *string `min:"20" type:"string" required:"true"` + + // The tags to associate with the resource. Each tag consists of a key and a + // value, and each key must be unique for the resource. + // + // ResourceTags is a required field + ResourceTags []*ResourceTag `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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.ResourceTags == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceTags")) + } + if s.ResourceTags != nil { + for i, v := range s.ResourceTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceTags", 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 +} + +// SetResourceTags sets the ResourceTags field's value. +func (s *TagResourceInput) SetResourceTags(v []*ResourceTag) *TagResourceInput { + s.ResourceTags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The quota code that exceeded the throttling limit. + QuotaCode *string `type:"string"` + + // The service code that exceeded the throttling limit. It will always be “AWSBillingAndCostManagementDataExports”. + ServiceCode *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 ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the resource. + // + // ResourceArn is a required field + ResourceArn *string `min:"20" type:"string" required:"true"` + + // The tag keys that are associated with the resource ARN. + // + // ResourceTagKeys is a required field + ResourceTagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.ResourceTagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceTagKeys")) + } + + 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 +} + +// SetResourceTagKeys sets the ResourceTagKeys field's value. +func (s *UntagResourceInput) SetResourceTagKeys(v []*string) *UntagResourceInput { + s.ResourceTagKeys = 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 UpdateExportInput struct { + _ struct{} `type:"structure"` + + // The name and query details for the export. + // + // Export is a required field + Export *Export `type:"structure" required:"true"` + + // The Amazon Resource Name (ARN) for this export. + // + // ExportArn is a required field + ExportArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExportInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExportInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateExportInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateExportInput"} + if s.Export == nil { + invalidParams.Add(request.NewErrParamRequired("Export")) + } + if s.ExportArn == nil { + invalidParams.Add(request.NewErrParamRequired("ExportArn")) + } + if s.ExportArn != nil && len(*s.ExportArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExportArn", 20)) + } + if s.Export != nil { + if err := s.Export.Validate(); err != nil { + invalidParams.AddNested("Export", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExport sets the Export field's value. +func (s *UpdateExportInput) SetExport(v *Export) *UpdateExportInput { + s.Export = v + return s +} + +// SetExportArn sets the ExportArn field's value. +func (s *UpdateExportInput) SetExportArn(v string) *UpdateExportInput { + s.ExportArn = &v + return s +} + +type UpdateExportOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for this export. + ExportArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExportOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExportOutput) GoString() string { + return s.String() +} + +// SetExportArn sets the ExportArn field's value. +func (s *UpdateExportOutput) SetExportArn(v string) *UpdateExportOutput { + s.ExportArn = &v + return s +} + +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The list of fields that are invalid. + Fields []*ValidationExceptionField `type:"list"` + + Message_ *string `locationName:"Message" type:"string"` + + // The reason for the validation exception. + Reason *string `type:"string" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input failed to meet the constraints specified by the Amazon Web Services +// service in a specified field. +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // A message with the reason for the validation exception error. + // + // Message is a required field + Message *string `type:"string" required:"true"` + + // The field name where the invalid entry was detected. + // + // Name is a required field + Name *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +const ( + // CompressionOptionGzip is a CompressionOption enum value + CompressionOptionGzip = "GZIP" + + // CompressionOptionParquet is a CompressionOption enum value + CompressionOptionParquet = "PARQUET" +) + +// CompressionOption_Values returns all elements of the CompressionOption enum +func CompressionOption_Values() []string { + return []string{ + CompressionOptionGzip, + CompressionOptionParquet, + } +} + +const ( + // ExecutionStatusCodeInitiationInProcess is a ExecutionStatusCode enum value + ExecutionStatusCodeInitiationInProcess = "INITIATION_IN_PROCESS" + + // ExecutionStatusCodeQueryQueued is a ExecutionStatusCode enum value + ExecutionStatusCodeQueryQueued = "QUERY_QUEUED" + + // ExecutionStatusCodeQueryInProcess is a ExecutionStatusCode enum value + ExecutionStatusCodeQueryInProcess = "QUERY_IN_PROCESS" + + // ExecutionStatusCodeQueryFailure is a ExecutionStatusCode enum value + ExecutionStatusCodeQueryFailure = "QUERY_FAILURE" + + // ExecutionStatusCodeDeliveryInProcess is a ExecutionStatusCode enum value + ExecutionStatusCodeDeliveryInProcess = "DELIVERY_IN_PROCESS" + + // ExecutionStatusCodeDeliverySuccess is a ExecutionStatusCode enum value + ExecutionStatusCodeDeliverySuccess = "DELIVERY_SUCCESS" + + // ExecutionStatusCodeDeliveryFailure is a ExecutionStatusCode enum value + ExecutionStatusCodeDeliveryFailure = "DELIVERY_FAILURE" +) + +// ExecutionStatusCode_Values returns all elements of the ExecutionStatusCode enum +func ExecutionStatusCode_Values() []string { + return []string{ + ExecutionStatusCodeInitiationInProcess, + ExecutionStatusCodeQueryQueued, + ExecutionStatusCodeQueryInProcess, + ExecutionStatusCodeQueryFailure, + ExecutionStatusCodeDeliveryInProcess, + ExecutionStatusCodeDeliverySuccess, + ExecutionStatusCodeDeliveryFailure, + } +} + +const ( + // ExecutionStatusReasonInsufficientPermission is a ExecutionStatusReason enum value + ExecutionStatusReasonInsufficientPermission = "INSUFFICIENT_PERMISSION" + + // ExecutionStatusReasonBillOwnerChanged is a ExecutionStatusReason enum value + ExecutionStatusReasonBillOwnerChanged = "BILL_OWNER_CHANGED" + + // ExecutionStatusReasonInternalFailure is a ExecutionStatusReason enum value + ExecutionStatusReasonInternalFailure = "INTERNAL_FAILURE" +) + +// ExecutionStatusReason_Values returns all elements of the ExecutionStatusReason enum +func ExecutionStatusReason_Values() []string { + return []string{ + ExecutionStatusReasonInsufficientPermission, + ExecutionStatusReasonBillOwnerChanged, + ExecutionStatusReasonInternalFailure, + } +} + +const ( + // ExportStatusCodeHealthy is a ExportStatusCode enum value + ExportStatusCodeHealthy = "HEALTHY" + + // ExportStatusCodeUnhealthy is a ExportStatusCode enum value + ExportStatusCodeUnhealthy = "UNHEALTHY" +) + +// ExportStatusCode_Values returns all elements of the ExportStatusCode enum +func ExportStatusCode_Values() []string { + return []string{ + ExportStatusCodeHealthy, + ExportStatusCodeUnhealthy, + } +} + +const ( + // FormatOptionTextOrCsv is a FormatOption enum value + FormatOptionTextOrCsv = "TEXT_OR_CSV" + + // FormatOptionParquet is a FormatOption enum value + FormatOptionParquet = "PARQUET" +) + +// FormatOption_Values returns all elements of the FormatOption enum +func FormatOption_Values() []string { + return []string{ + FormatOptionTextOrCsv, + FormatOptionParquet, + } +} + +const ( + // FrequencyOptionSynchronous is a FrequencyOption enum value + FrequencyOptionSynchronous = "SYNCHRONOUS" +) + +// FrequencyOption_Values returns all elements of the FrequencyOption enum +func FrequencyOption_Values() []string { + return []string{ + FrequencyOptionSynchronous, + } +} + +const ( + // OverwriteOptionCreateNewReport is a OverwriteOption enum value + OverwriteOptionCreateNewReport = "CREATE_NEW_REPORT" + + // OverwriteOptionOverwriteReport is a OverwriteOption enum value + OverwriteOptionOverwriteReport = "OVERWRITE_REPORT" +) + +// OverwriteOption_Values returns all elements of the OverwriteOption enum +func OverwriteOption_Values() []string { + return []string{ + OverwriteOptionCreateNewReport, + OverwriteOptionOverwriteReport, + } +} + +const ( + // S3OutputTypeCustom is a S3OutputType enum value + S3OutputTypeCustom = "CUSTOM" +) + +// S3OutputType_Values returns all elements of the S3OutputType enum +func S3OutputType_Values() []string { + return []string{ + S3OutputTypeCustom, + } +} + +const ( + // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownOperation = "unknownOperation" + + // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value + ValidationExceptionReasonCannotParse = "cannotParse" + + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "fieldValidationFailed" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "other" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonUnknownOperation, + ValidationExceptionReasonCannotParse, + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonOther, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/bcmdataexportsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/bcmdataexportsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/bcmdataexportsiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/bcmdataexportsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,121 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bcmdataexportsiface provides an interface to enable mocking the AWS Billing and Cost Management Data Exports 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 bcmdataexportsiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/bcmdataexports" +) + +// BCMDataExportsAPI provides an interface to enable mocking the +// bcmdataexports.BCMDataExports service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Billing and Cost Management Data Exports. +// func myFunc(svc bcmdataexportsiface.BCMDataExportsAPI) bool { +// // Make svc.CreateExport request +// } +// +// func main() { +// sess := session.New() +// svc := bcmdataexports.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockBCMDataExportsClient struct { +// bcmdataexportsiface.BCMDataExportsAPI +// } +// func (m *mockBCMDataExportsClient) CreateExport(input *bcmdataexports.CreateExportInput) (*bcmdataexports.CreateExportOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockBCMDataExportsClient{} +// +// 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 BCMDataExportsAPI interface { + CreateExport(*bcmdataexports.CreateExportInput) (*bcmdataexports.CreateExportOutput, error) + CreateExportWithContext(aws.Context, *bcmdataexports.CreateExportInput, ...request.Option) (*bcmdataexports.CreateExportOutput, error) + CreateExportRequest(*bcmdataexports.CreateExportInput) (*request.Request, *bcmdataexports.CreateExportOutput) + + DeleteExport(*bcmdataexports.DeleteExportInput) (*bcmdataexports.DeleteExportOutput, error) + DeleteExportWithContext(aws.Context, *bcmdataexports.DeleteExportInput, ...request.Option) (*bcmdataexports.DeleteExportOutput, error) + DeleteExportRequest(*bcmdataexports.DeleteExportInput) (*request.Request, *bcmdataexports.DeleteExportOutput) + + GetExecution(*bcmdataexports.GetExecutionInput) (*bcmdataexports.GetExecutionOutput, error) + GetExecutionWithContext(aws.Context, *bcmdataexports.GetExecutionInput, ...request.Option) (*bcmdataexports.GetExecutionOutput, error) + GetExecutionRequest(*bcmdataexports.GetExecutionInput) (*request.Request, *bcmdataexports.GetExecutionOutput) + + GetExport(*bcmdataexports.GetExportInput) (*bcmdataexports.GetExportOutput, error) + GetExportWithContext(aws.Context, *bcmdataexports.GetExportInput, ...request.Option) (*bcmdataexports.GetExportOutput, error) + GetExportRequest(*bcmdataexports.GetExportInput) (*request.Request, *bcmdataexports.GetExportOutput) + + GetTable(*bcmdataexports.GetTableInput) (*bcmdataexports.GetTableOutput, error) + GetTableWithContext(aws.Context, *bcmdataexports.GetTableInput, ...request.Option) (*bcmdataexports.GetTableOutput, error) + GetTableRequest(*bcmdataexports.GetTableInput) (*request.Request, *bcmdataexports.GetTableOutput) + + ListExecutions(*bcmdataexports.ListExecutionsInput) (*bcmdataexports.ListExecutionsOutput, error) + ListExecutionsWithContext(aws.Context, *bcmdataexports.ListExecutionsInput, ...request.Option) (*bcmdataexports.ListExecutionsOutput, error) + ListExecutionsRequest(*bcmdataexports.ListExecutionsInput) (*request.Request, *bcmdataexports.ListExecutionsOutput) + + ListExecutionsPages(*bcmdataexports.ListExecutionsInput, func(*bcmdataexports.ListExecutionsOutput, bool) bool) error + ListExecutionsPagesWithContext(aws.Context, *bcmdataexports.ListExecutionsInput, func(*bcmdataexports.ListExecutionsOutput, bool) bool, ...request.Option) error + + ListExports(*bcmdataexports.ListExportsInput) (*bcmdataexports.ListExportsOutput, error) + ListExportsWithContext(aws.Context, *bcmdataexports.ListExportsInput, ...request.Option) (*bcmdataexports.ListExportsOutput, error) + ListExportsRequest(*bcmdataexports.ListExportsInput) (*request.Request, *bcmdataexports.ListExportsOutput) + + ListExportsPages(*bcmdataexports.ListExportsInput, func(*bcmdataexports.ListExportsOutput, bool) bool) error + ListExportsPagesWithContext(aws.Context, *bcmdataexports.ListExportsInput, func(*bcmdataexports.ListExportsOutput, bool) bool, ...request.Option) error + + ListTables(*bcmdataexports.ListTablesInput) (*bcmdataexports.ListTablesOutput, error) + ListTablesWithContext(aws.Context, *bcmdataexports.ListTablesInput, ...request.Option) (*bcmdataexports.ListTablesOutput, error) + ListTablesRequest(*bcmdataexports.ListTablesInput) (*request.Request, *bcmdataexports.ListTablesOutput) + + ListTablesPages(*bcmdataexports.ListTablesInput, func(*bcmdataexports.ListTablesOutput, bool) bool) error + ListTablesPagesWithContext(aws.Context, *bcmdataexports.ListTablesInput, func(*bcmdataexports.ListTablesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*bcmdataexports.ListTagsForResourceInput) (*bcmdataexports.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *bcmdataexports.ListTagsForResourceInput, ...request.Option) (*bcmdataexports.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*bcmdataexports.ListTagsForResourceInput) (*request.Request, *bcmdataexports.ListTagsForResourceOutput) + + TagResource(*bcmdataexports.TagResourceInput) (*bcmdataexports.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *bcmdataexports.TagResourceInput, ...request.Option) (*bcmdataexports.TagResourceOutput, error) + TagResourceRequest(*bcmdataexports.TagResourceInput) (*request.Request, *bcmdataexports.TagResourceOutput) + + UntagResource(*bcmdataexports.UntagResourceInput) (*bcmdataexports.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *bcmdataexports.UntagResourceInput, ...request.Option) (*bcmdataexports.UntagResourceOutput, error) + UntagResourceRequest(*bcmdataexports.UntagResourceInput) (*request.Request, *bcmdataexports.UntagResourceOutput) + + UpdateExport(*bcmdataexports.UpdateExportInput) (*bcmdataexports.UpdateExportOutput, error) + UpdateExportWithContext(aws.Context, *bcmdataexports.UpdateExportInput, ...request.Option) (*bcmdataexports.UpdateExportOutput, error) + UpdateExportRequest(*bcmdataexports.UpdateExportInput) (*request.Request, *bcmdataexports.UpdateExportOutput) +} + +var _ BCMDataExportsAPI = (*bcmdataexports.BCMDataExports)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,34 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bcmdataexports provides the client and types for making API +// requests to AWS Billing and Cost Management Data Exports. +// +// You can use the Data Exports API to create customized exports from multiple +// Amazon Web Services cost management and billing datasets, such as cost and +// usage data and cost optimization recommendations. +// +// The Data Exports API provides the following endpoint: +// +// - https://bcm-data-exports.us-east-1.api.aws +// +// See https://docs.aws.amazon.com/goto/WebAPI/bcm-data-exports-2023-11-26 for more information on this service. +// +// See bcmdataexports package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bcmdataexports/ +// +// # Using the Client +// +// To contact AWS Billing and Cost Management Data Exports with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Billing and Cost Management Data Exports client BCMDataExports for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bcmdataexports/#New +package bcmdataexports diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,51 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bcmdataexports + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An error on the server occurred during the processing of your request. Try + // again later. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified Amazon Resource Name (ARN) in the request doesn't exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // You've reached the limit on the number of resources you can create, or exceeded + // the size of an individual resource. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an Amazon Web Services + // service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/service.go golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bcmdataexports/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bcmdataexports/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bcmdataexports + +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" +) + +// BCMDataExports provides the API operation methods for making requests to +// AWS Billing and Cost Management Data Exports. See this package's package overview docs +// for details on the service. +// +// BCMDataExports methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type BCMDataExports 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 = "BCM Data Exports" // Name of service. + EndpointsID = "bcm-data-exports" // ID to lookup a service endpoint with. + ServiceID = "BCM Data Exports" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the BCMDataExports 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 BCMDataExports client from just a session. +// svc := bcmdataexports.New(mySession) +// +// // Create a BCMDataExports client with additional configuration +// svc := bcmdataexports.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *BCMDataExports { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "bcm-data-exports" + } + 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) *BCMDataExports { + svc := &BCMDataExports{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-11-26", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.1", + TargetPrefix: "AWSBillingAndCostManagementDataExports", + }, + 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 BCMDataExports operation and runs any +// custom request initialization. +func (c *BCMDataExports) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/api.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,6633 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrock + +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/restjson" +) + +const opCreateModelCustomizationJob = "CreateModelCustomizationJob" + +// CreateModelCustomizationJobRequest generates a "aws/request.Request" representing the +// client's request for the CreateModelCustomizationJob 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 CreateModelCustomizationJob for more information on using the CreateModelCustomizationJob +// 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 CreateModelCustomizationJobRequest method. +// req, resp := client.CreateModelCustomizationJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/CreateModelCustomizationJob +func (c *Bedrock) CreateModelCustomizationJobRequest(input *CreateModelCustomizationJobInput) (req *request.Request, output *CreateModelCustomizationJobOutput) { + op := &request.Operation{ + Name: opCreateModelCustomizationJob, + HTTPMethod: "POST", + HTTPPath: "/model-customization-jobs", + } + + if input == nil { + input = &CreateModelCustomizationJobInput{} + } + + output = &CreateModelCustomizationJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateModelCustomizationJob API operation for Amazon Bedrock. +// +// Creates a fine-tuning job to customize a base model. +// +// You specify the base foundation model and the location of the training data. +// After the model-customization job completes successfully, your custom model +// resource will be ready to use. Training data contains input and output text +// for each record in a JSONL format. Optionally, you can specify validation +// data in the same format as the training data. Amazon Bedrock returns validation +// loss metrics and output generations after the job completes. +// +// Model-customization jobs are asynchronous and the completion time depends +// on the base model and the training/validation data size. To monitor a job, +// use the GetModelCustomizationJob operation to retrieve the job status. +// +// For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation CreateModelCustomizationJob for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - ConflictException +// Error occurred because of a conflict while performing an operation. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - TooManyTagsException +// The request contains more tags than can be associated with a resource (50 +// tags per resource). The maximum number of tags includes both existing tags +// and those included in your current request. +// +// - ServiceQuotaExceededException +// The number of requests exceeds the service quota. Resubmit your request later. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/CreateModelCustomizationJob +func (c *Bedrock) CreateModelCustomizationJob(input *CreateModelCustomizationJobInput) (*CreateModelCustomizationJobOutput, error) { + req, out := c.CreateModelCustomizationJobRequest(input) + return out, req.Send() +} + +// CreateModelCustomizationJobWithContext is the same as CreateModelCustomizationJob with the addition of +// the ability to pass a context and additional request options. +// +// See CreateModelCustomizationJob 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 *Bedrock) CreateModelCustomizationJobWithContext(ctx aws.Context, input *CreateModelCustomizationJobInput, opts ...request.Option) (*CreateModelCustomizationJobOutput, error) { + req, out := c.CreateModelCustomizationJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateProvisionedModelThroughput = "CreateProvisionedModelThroughput" + +// CreateProvisionedModelThroughputRequest generates a "aws/request.Request" representing the +// client's request for the CreateProvisionedModelThroughput 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 CreateProvisionedModelThroughput for more information on using the CreateProvisionedModelThroughput +// 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 CreateProvisionedModelThroughputRequest method. +// req, resp := client.CreateProvisionedModelThroughputRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/CreateProvisionedModelThroughput +func (c *Bedrock) CreateProvisionedModelThroughputRequest(input *CreateProvisionedModelThroughputInput) (req *request.Request, output *CreateProvisionedModelThroughputOutput) { + op := &request.Operation{ + Name: opCreateProvisionedModelThroughput, + HTTPMethod: "POST", + HTTPPath: "/provisioned-model-throughput", + } + + if input == nil { + input = &CreateProvisionedModelThroughputInput{} + } + + output = &CreateProvisionedModelThroughputOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateProvisionedModelThroughput API operation for Amazon Bedrock. +// +// Creates a provisioned throughput with dedicated capacity for a foundation +// model or a fine-tuned model. +// +// For more information, see Provisioned throughput (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation CreateProvisionedModelThroughput for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - TooManyTagsException +// The request contains more tags than can be associated with a resource (50 +// tags per resource). The maximum number of tags includes both existing tags +// and those included in your current request. +// +// - ServiceQuotaExceededException +// The number of requests exceeds the service quota. Resubmit your request later. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/CreateProvisionedModelThroughput +func (c *Bedrock) CreateProvisionedModelThroughput(input *CreateProvisionedModelThroughputInput) (*CreateProvisionedModelThroughputOutput, error) { + req, out := c.CreateProvisionedModelThroughputRequest(input) + return out, req.Send() +} + +// CreateProvisionedModelThroughputWithContext is the same as CreateProvisionedModelThroughput with the addition of +// the ability to pass a context and additional request options. +// +// See CreateProvisionedModelThroughput 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 *Bedrock) CreateProvisionedModelThroughputWithContext(ctx aws.Context, input *CreateProvisionedModelThroughputInput, opts ...request.Option) (*CreateProvisionedModelThroughputOutput, error) { + req, out := c.CreateProvisionedModelThroughputRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteCustomModel = "DeleteCustomModel" + +// DeleteCustomModelRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCustomModel 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 DeleteCustomModel for more information on using the DeleteCustomModel +// 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 DeleteCustomModelRequest method. +// req, resp := client.DeleteCustomModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/DeleteCustomModel +func (c *Bedrock) DeleteCustomModelRequest(input *DeleteCustomModelInput) (req *request.Request, output *DeleteCustomModelOutput) { + op := &request.Operation{ + Name: opDeleteCustomModel, + HTTPMethod: "DELETE", + HTTPPath: "/custom-models/{modelIdentifier}", + } + + if input == nil { + input = &DeleteCustomModelInput{} + } + + output = &DeleteCustomModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteCustomModel API operation for Amazon Bedrock. +// +// Deletes a custom model that you created earlier. For more information, see +// Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation DeleteCustomModel for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - ConflictException +// Error occurred because of a conflict while performing an operation. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/DeleteCustomModel +func (c *Bedrock) DeleteCustomModel(input *DeleteCustomModelInput) (*DeleteCustomModelOutput, error) { + req, out := c.DeleteCustomModelRequest(input) + return out, req.Send() +} + +// DeleteCustomModelWithContext is the same as DeleteCustomModel with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCustomModel 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 *Bedrock) DeleteCustomModelWithContext(ctx aws.Context, input *DeleteCustomModelInput, opts ...request.Option) (*DeleteCustomModelOutput, error) { + req, out := c.DeleteCustomModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteModelInvocationLoggingConfiguration = "DeleteModelInvocationLoggingConfiguration" + +// DeleteModelInvocationLoggingConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteModelInvocationLoggingConfiguration 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 DeleteModelInvocationLoggingConfiguration for more information on using the DeleteModelInvocationLoggingConfiguration +// 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 DeleteModelInvocationLoggingConfigurationRequest method. +// req, resp := client.DeleteModelInvocationLoggingConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/DeleteModelInvocationLoggingConfiguration +func (c *Bedrock) DeleteModelInvocationLoggingConfigurationRequest(input *DeleteModelInvocationLoggingConfigurationInput) (req *request.Request, output *DeleteModelInvocationLoggingConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteModelInvocationLoggingConfiguration, + HTTPMethod: "DELETE", + HTTPPath: "/logging/modelinvocations", + } + + if input == nil { + input = &DeleteModelInvocationLoggingConfigurationInput{} + } + + output = &DeleteModelInvocationLoggingConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteModelInvocationLoggingConfiguration API operation for Amazon Bedrock. +// +// Delete the invocation logging. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation DeleteModelInvocationLoggingConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/DeleteModelInvocationLoggingConfiguration +func (c *Bedrock) DeleteModelInvocationLoggingConfiguration(input *DeleteModelInvocationLoggingConfigurationInput) (*DeleteModelInvocationLoggingConfigurationOutput, error) { + req, out := c.DeleteModelInvocationLoggingConfigurationRequest(input) + return out, req.Send() +} + +// DeleteModelInvocationLoggingConfigurationWithContext is the same as DeleteModelInvocationLoggingConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteModelInvocationLoggingConfiguration 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 *Bedrock) DeleteModelInvocationLoggingConfigurationWithContext(ctx aws.Context, input *DeleteModelInvocationLoggingConfigurationInput, opts ...request.Option) (*DeleteModelInvocationLoggingConfigurationOutput, error) { + req, out := c.DeleteModelInvocationLoggingConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteProvisionedModelThroughput = "DeleteProvisionedModelThroughput" + +// DeleteProvisionedModelThroughputRequest generates a "aws/request.Request" representing the +// client's request for the DeleteProvisionedModelThroughput 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 DeleteProvisionedModelThroughput for more information on using the DeleteProvisionedModelThroughput +// 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 DeleteProvisionedModelThroughputRequest method. +// req, resp := client.DeleteProvisionedModelThroughputRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/DeleteProvisionedModelThroughput +func (c *Bedrock) DeleteProvisionedModelThroughputRequest(input *DeleteProvisionedModelThroughputInput) (req *request.Request, output *DeleteProvisionedModelThroughputOutput) { + op := &request.Operation{ + Name: opDeleteProvisionedModelThroughput, + HTTPMethod: "DELETE", + HTTPPath: "/provisioned-model-throughput/{provisionedModelId}", + } + + if input == nil { + input = &DeleteProvisionedModelThroughputInput{} + } + + output = &DeleteProvisionedModelThroughputOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteProvisionedModelThroughput API operation for Amazon Bedrock. +// +// Deletes a provisioned throughput. For more information, see Provisioned throughput +// (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation DeleteProvisionedModelThroughput for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - ConflictException +// Error occurred because of a conflict while performing an operation. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/DeleteProvisionedModelThroughput +func (c *Bedrock) DeleteProvisionedModelThroughput(input *DeleteProvisionedModelThroughputInput) (*DeleteProvisionedModelThroughputOutput, error) { + req, out := c.DeleteProvisionedModelThroughputRequest(input) + return out, req.Send() +} + +// DeleteProvisionedModelThroughputWithContext is the same as DeleteProvisionedModelThroughput with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteProvisionedModelThroughput 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 *Bedrock) DeleteProvisionedModelThroughputWithContext(ctx aws.Context, input *DeleteProvisionedModelThroughputInput, opts ...request.Option) (*DeleteProvisionedModelThroughputOutput, error) { + req, out := c.DeleteProvisionedModelThroughputRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCustomModel = "GetCustomModel" + +// GetCustomModelRequest generates a "aws/request.Request" representing the +// client's request for the GetCustomModel 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 GetCustomModel for more information on using the GetCustomModel +// 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 GetCustomModelRequest method. +// req, resp := client.GetCustomModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetCustomModel +func (c *Bedrock) GetCustomModelRequest(input *GetCustomModelInput) (req *request.Request, output *GetCustomModelOutput) { + op := &request.Operation{ + Name: opGetCustomModel, + HTTPMethod: "GET", + HTTPPath: "/custom-models/{modelIdentifier}", + } + + if input == nil { + input = &GetCustomModelInput{} + } + + output = &GetCustomModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCustomModel API operation for Amazon Bedrock. +// +// Get the properties associated with a Amazon Bedrock custom model that you +// have created.For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation GetCustomModel for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetCustomModel +func (c *Bedrock) GetCustomModel(input *GetCustomModelInput) (*GetCustomModelOutput, error) { + req, out := c.GetCustomModelRequest(input) + return out, req.Send() +} + +// GetCustomModelWithContext is the same as GetCustomModel with the addition of +// the ability to pass a context and additional request options. +// +// See GetCustomModel 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 *Bedrock) GetCustomModelWithContext(ctx aws.Context, input *GetCustomModelInput, opts ...request.Option) (*GetCustomModelOutput, error) { + req, out := c.GetCustomModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetFoundationModel = "GetFoundationModel" + +// GetFoundationModelRequest generates a "aws/request.Request" representing the +// client's request for the GetFoundationModel 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 GetFoundationModel for more information on using the GetFoundationModel +// 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 GetFoundationModelRequest method. +// req, resp := client.GetFoundationModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetFoundationModel +func (c *Bedrock) GetFoundationModelRequest(input *GetFoundationModelInput) (req *request.Request, output *GetFoundationModelOutput) { + op := &request.Operation{ + Name: opGetFoundationModel, + HTTPMethod: "GET", + HTTPPath: "/foundation-models/{modelIdentifier}", + } + + if input == nil { + input = &GetFoundationModelInput{} + } + + output = &GetFoundationModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetFoundationModel API operation for Amazon Bedrock. +// +// Get details about a Amazon Bedrock foundation model. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation GetFoundationModel for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetFoundationModel +func (c *Bedrock) GetFoundationModel(input *GetFoundationModelInput) (*GetFoundationModelOutput, error) { + req, out := c.GetFoundationModelRequest(input) + return out, req.Send() +} + +// GetFoundationModelWithContext is the same as GetFoundationModel with the addition of +// the ability to pass a context and additional request options. +// +// See GetFoundationModel 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 *Bedrock) GetFoundationModelWithContext(ctx aws.Context, input *GetFoundationModelInput, opts ...request.Option) (*GetFoundationModelOutput, error) { + req, out := c.GetFoundationModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetModelCustomizationJob = "GetModelCustomizationJob" + +// GetModelCustomizationJobRequest generates a "aws/request.Request" representing the +// client's request for the GetModelCustomizationJob 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 GetModelCustomizationJob for more information on using the GetModelCustomizationJob +// 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 GetModelCustomizationJobRequest method. +// req, resp := client.GetModelCustomizationJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetModelCustomizationJob +func (c *Bedrock) GetModelCustomizationJobRequest(input *GetModelCustomizationJobInput) (req *request.Request, output *GetModelCustomizationJobOutput) { + op := &request.Operation{ + Name: opGetModelCustomizationJob, + HTTPMethod: "GET", + HTTPPath: "/model-customization-jobs/{jobIdentifier}", + } + + if input == nil { + input = &GetModelCustomizationJobInput{} + } + + output = &GetModelCustomizationJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetModelCustomizationJob API operation for Amazon Bedrock. +// +// Retrieves the properties associated with a model-customization job, including +// the status of the job. For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation GetModelCustomizationJob for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetModelCustomizationJob +func (c *Bedrock) GetModelCustomizationJob(input *GetModelCustomizationJobInput) (*GetModelCustomizationJobOutput, error) { + req, out := c.GetModelCustomizationJobRequest(input) + return out, req.Send() +} + +// GetModelCustomizationJobWithContext is the same as GetModelCustomizationJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetModelCustomizationJob 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 *Bedrock) GetModelCustomizationJobWithContext(ctx aws.Context, input *GetModelCustomizationJobInput, opts ...request.Option) (*GetModelCustomizationJobOutput, error) { + req, out := c.GetModelCustomizationJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetModelInvocationLoggingConfiguration = "GetModelInvocationLoggingConfiguration" + +// GetModelInvocationLoggingConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetModelInvocationLoggingConfiguration 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 GetModelInvocationLoggingConfiguration for more information on using the GetModelInvocationLoggingConfiguration +// 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 GetModelInvocationLoggingConfigurationRequest method. +// req, resp := client.GetModelInvocationLoggingConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetModelInvocationLoggingConfiguration +func (c *Bedrock) GetModelInvocationLoggingConfigurationRequest(input *GetModelInvocationLoggingConfigurationInput) (req *request.Request, output *GetModelInvocationLoggingConfigurationOutput) { + op := &request.Operation{ + Name: opGetModelInvocationLoggingConfiguration, + HTTPMethod: "GET", + HTTPPath: "/logging/modelinvocations", + } + + if input == nil { + input = &GetModelInvocationLoggingConfigurationInput{} + } + + output = &GetModelInvocationLoggingConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetModelInvocationLoggingConfiguration API operation for Amazon Bedrock. +// +// Get the current configuration values for model invocation logging. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation GetModelInvocationLoggingConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetModelInvocationLoggingConfiguration +func (c *Bedrock) GetModelInvocationLoggingConfiguration(input *GetModelInvocationLoggingConfigurationInput) (*GetModelInvocationLoggingConfigurationOutput, error) { + req, out := c.GetModelInvocationLoggingConfigurationRequest(input) + return out, req.Send() +} + +// GetModelInvocationLoggingConfigurationWithContext is the same as GetModelInvocationLoggingConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetModelInvocationLoggingConfiguration 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 *Bedrock) GetModelInvocationLoggingConfigurationWithContext(ctx aws.Context, input *GetModelInvocationLoggingConfigurationInput, opts ...request.Option) (*GetModelInvocationLoggingConfigurationOutput, error) { + req, out := c.GetModelInvocationLoggingConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetProvisionedModelThroughput = "GetProvisionedModelThroughput" + +// GetProvisionedModelThroughputRequest generates a "aws/request.Request" representing the +// client's request for the GetProvisionedModelThroughput 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 GetProvisionedModelThroughput for more information on using the GetProvisionedModelThroughput +// 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 GetProvisionedModelThroughputRequest method. +// req, resp := client.GetProvisionedModelThroughputRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetProvisionedModelThroughput +func (c *Bedrock) GetProvisionedModelThroughputRequest(input *GetProvisionedModelThroughputInput) (req *request.Request, output *GetProvisionedModelThroughputOutput) { + op := &request.Operation{ + Name: opGetProvisionedModelThroughput, + HTTPMethod: "GET", + HTTPPath: "/provisioned-model-throughput/{provisionedModelId}", + } + + if input == nil { + input = &GetProvisionedModelThroughputInput{} + } + + output = &GetProvisionedModelThroughputOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetProvisionedModelThroughput API operation for Amazon Bedrock. +// +// Get details for a provisioned throughput. For more information, see Provisioned +// throughput (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation GetProvisionedModelThroughput for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetProvisionedModelThroughput +func (c *Bedrock) GetProvisionedModelThroughput(input *GetProvisionedModelThroughputInput) (*GetProvisionedModelThroughputOutput, error) { + req, out := c.GetProvisionedModelThroughputRequest(input) + return out, req.Send() +} + +// GetProvisionedModelThroughputWithContext is the same as GetProvisionedModelThroughput with the addition of +// the ability to pass a context and additional request options. +// +// See GetProvisionedModelThroughput 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 *Bedrock) GetProvisionedModelThroughputWithContext(ctx aws.Context, input *GetProvisionedModelThroughputInput, opts ...request.Option) (*GetProvisionedModelThroughputOutput, error) { + req, out := c.GetProvisionedModelThroughputRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListCustomModels = "ListCustomModels" + +// ListCustomModelsRequest generates a "aws/request.Request" representing the +// client's request for the ListCustomModels 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 ListCustomModels for more information on using the ListCustomModels +// 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 ListCustomModelsRequest method. +// req, resp := client.ListCustomModelsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListCustomModels +func (c *Bedrock) ListCustomModelsRequest(input *ListCustomModelsInput) (req *request.Request, output *ListCustomModelsOutput) { + op := &request.Operation{ + Name: opListCustomModels, + HTTPMethod: "GET", + HTTPPath: "/custom-models", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCustomModelsInput{} + } + + output = &ListCustomModelsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCustomModels API operation for Amazon Bedrock. +// +// Returns a list of the custom models that you have created with the CreateModelCustomizationJob +// operation. +// +// For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation ListCustomModels for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListCustomModels +func (c *Bedrock) ListCustomModels(input *ListCustomModelsInput) (*ListCustomModelsOutput, error) { + req, out := c.ListCustomModelsRequest(input) + return out, req.Send() +} + +// ListCustomModelsWithContext is the same as ListCustomModels with the addition of +// the ability to pass a context and additional request options. +// +// See ListCustomModels 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 *Bedrock) ListCustomModelsWithContext(ctx aws.Context, input *ListCustomModelsInput, opts ...request.Option) (*ListCustomModelsOutput, error) { + req, out := c.ListCustomModelsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCustomModelsPages iterates over the pages of a ListCustomModels operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCustomModels 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 ListCustomModels operation. +// pageNum := 0 +// err := client.ListCustomModelsPages(params, +// func(page *bedrock.ListCustomModelsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Bedrock) ListCustomModelsPages(input *ListCustomModelsInput, fn func(*ListCustomModelsOutput, bool) bool) error { + return c.ListCustomModelsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCustomModelsPagesWithContext same as ListCustomModelsPages 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 *Bedrock) ListCustomModelsPagesWithContext(ctx aws.Context, input *ListCustomModelsInput, fn func(*ListCustomModelsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCustomModelsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCustomModelsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCustomModelsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListFoundationModels = "ListFoundationModels" + +// ListFoundationModelsRequest generates a "aws/request.Request" representing the +// client's request for the ListFoundationModels 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 ListFoundationModels for more information on using the ListFoundationModels +// 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 ListFoundationModelsRequest method. +// req, resp := client.ListFoundationModelsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListFoundationModels +func (c *Bedrock) ListFoundationModelsRequest(input *ListFoundationModelsInput) (req *request.Request, output *ListFoundationModelsOutput) { + op := &request.Operation{ + Name: opListFoundationModels, + HTTPMethod: "GET", + HTTPPath: "/foundation-models", + } + + if input == nil { + input = &ListFoundationModelsInput{} + } + + output = &ListFoundationModelsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListFoundationModels API operation for Amazon Bedrock. +// +// List of Amazon Bedrock foundation models that you can use. For more information, +// see Foundation models (https://docs.aws.amazon.com/bedrock/latest/userguide/foundation-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation ListFoundationModels for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListFoundationModels +func (c *Bedrock) ListFoundationModels(input *ListFoundationModelsInput) (*ListFoundationModelsOutput, error) { + req, out := c.ListFoundationModelsRequest(input) + return out, req.Send() +} + +// ListFoundationModelsWithContext is the same as ListFoundationModels with the addition of +// the ability to pass a context and additional request options. +// +// See ListFoundationModels 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 *Bedrock) ListFoundationModelsWithContext(ctx aws.Context, input *ListFoundationModelsInput, opts ...request.Option) (*ListFoundationModelsOutput, error) { + req, out := c.ListFoundationModelsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListModelCustomizationJobs = "ListModelCustomizationJobs" + +// ListModelCustomizationJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListModelCustomizationJobs 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 ListModelCustomizationJobs for more information on using the ListModelCustomizationJobs +// 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 ListModelCustomizationJobsRequest method. +// req, resp := client.ListModelCustomizationJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListModelCustomizationJobs +func (c *Bedrock) ListModelCustomizationJobsRequest(input *ListModelCustomizationJobsInput) (req *request.Request, output *ListModelCustomizationJobsOutput) { + op := &request.Operation{ + Name: opListModelCustomizationJobs, + HTTPMethod: "GET", + HTTPPath: "/model-customization-jobs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListModelCustomizationJobsInput{} + } + + output = &ListModelCustomizationJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListModelCustomizationJobs API operation for Amazon Bedrock. +// +// Returns a list of model customization jobs that you have submitted. You can +// filter the jobs to return based on one or more criteria. +// +// For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation ListModelCustomizationJobs for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListModelCustomizationJobs +func (c *Bedrock) ListModelCustomizationJobs(input *ListModelCustomizationJobsInput) (*ListModelCustomizationJobsOutput, error) { + req, out := c.ListModelCustomizationJobsRequest(input) + return out, req.Send() +} + +// ListModelCustomizationJobsWithContext is the same as ListModelCustomizationJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListModelCustomizationJobs 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 *Bedrock) ListModelCustomizationJobsWithContext(ctx aws.Context, input *ListModelCustomizationJobsInput, opts ...request.Option) (*ListModelCustomizationJobsOutput, error) { + req, out := c.ListModelCustomizationJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListModelCustomizationJobsPages iterates over the pages of a ListModelCustomizationJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListModelCustomizationJobs 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 ListModelCustomizationJobs operation. +// pageNum := 0 +// err := client.ListModelCustomizationJobsPages(params, +// func(page *bedrock.ListModelCustomizationJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Bedrock) ListModelCustomizationJobsPages(input *ListModelCustomizationJobsInput, fn func(*ListModelCustomizationJobsOutput, bool) bool) error { + return c.ListModelCustomizationJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListModelCustomizationJobsPagesWithContext same as ListModelCustomizationJobsPages 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 *Bedrock) ListModelCustomizationJobsPagesWithContext(ctx aws.Context, input *ListModelCustomizationJobsInput, fn func(*ListModelCustomizationJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListModelCustomizationJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListModelCustomizationJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListModelCustomizationJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProvisionedModelThroughputs = "ListProvisionedModelThroughputs" + +// ListProvisionedModelThroughputsRequest generates a "aws/request.Request" representing the +// client's request for the ListProvisionedModelThroughputs 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 ListProvisionedModelThroughputs for more information on using the ListProvisionedModelThroughputs +// 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 ListProvisionedModelThroughputsRequest method. +// req, resp := client.ListProvisionedModelThroughputsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListProvisionedModelThroughputs +func (c *Bedrock) ListProvisionedModelThroughputsRequest(input *ListProvisionedModelThroughputsInput) (req *request.Request, output *ListProvisionedModelThroughputsOutput) { + op := &request.Operation{ + Name: opListProvisionedModelThroughputs, + HTTPMethod: "GET", + HTTPPath: "/provisioned-model-throughputs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListProvisionedModelThroughputsInput{} + } + + output = &ListProvisionedModelThroughputsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListProvisionedModelThroughputs API operation for Amazon Bedrock. +// +// List the provisioned capacities. For more information, see Provisioned throughput +// (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation ListProvisionedModelThroughputs for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListProvisionedModelThroughputs +func (c *Bedrock) ListProvisionedModelThroughputs(input *ListProvisionedModelThroughputsInput) (*ListProvisionedModelThroughputsOutput, error) { + req, out := c.ListProvisionedModelThroughputsRequest(input) + return out, req.Send() +} + +// ListProvisionedModelThroughputsWithContext is the same as ListProvisionedModelThroughputs with the addition of +// the ability to pass a context and additional request options. +// +// See ListProvisionedModelThroughputs 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 *Bedrock) ListProvisionedModelThroughputsWithContext(ctx aws.Context, input *ListProvisionedModelThroughputsInput, opts ...request.Option) (*ListProvisionedModelThroughputsOutput, error) { + req, out := c.ListProvisionedModelThroughputsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListProvisionedModelThroughputsPages iterates over the pages of a ListProvisionedModelThroughputs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProvisionedModelThroughputs 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 ListProvisionedModelThroughputs operation. +// pageNum := 0 +// err := client.ListProvisionedModelThroughputsPages(params, +// func(page *bedrock.ListProvisionedModelThroughputsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Bedrock) ListProvisionedModelThroughputsPages(input *ListProvisionedModelThroughputsInput, fn func(*ListProvisionedModelThroughputsOutput, bool) bool) error { + return c.ListProvisionedModelThroughputsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListProvisionedModelThroughputsPagesWithContext same as ListProvisionedModelThroughputsPages 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 *Bedrock) ListProvisionedModelThroughputsPagesWithContext(ctx aws.Context, input *ListProvisionedModelThroughputsInput, fn func(*ListProvisionedModelThroughputsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProvisionedModelThroughputsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProvisionedModelThroughputsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProvisionedModelThroughputsOutput), !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/bedrock-2023-04-20/ListTagsForResource +func (c *Bedrock) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/listTagsForResource", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon Bedrock. +// +// List the tags associated with the specified resource. +// +// For more information, see Tagging resources (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListTagsForResource +func (c *Bedrock) 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 *Bedrock) 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 opPutModelInvocationLoggingConfiguration = "PutModelInvocationLoggingConfiguration" + +// PutModelInvocationLoggingConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the PutModelInvocationLoggingConfiguration 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 PutModelInvocationLoggingConfiguration for more information on using the PutModelInvocationLoggingConfiguration +// 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 PutModelInvocationLoggingConfigurationRequest method. +// req, resp := client.PutModelInvocationLoggingConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/PutModelInvocationLoggingConfiguration +func (c *Bedrock) PutModelInvocationLoggingConfigurationRequest(input *PutModelInvocationLoggingConfigurationInput) (req *request.Request, output *PutModelInvocationLoggingConfigurationOutput) { + op := &request.Operation{ + Name: opPutModelInvocationLoggingConfiguration, + HTTPMethod: "PUT", + HTTPPath: "/logging/modelinvocations", + } + + if input == nil { + input = &PutModelInvocationLoggingConfigurationInput{} + } + + output = &PutModelInvocationLoggingConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutModelInvocationLoggingConfiguration API operation for Amazon Bedrock. +// +// Set the configuration values for model invocation logging. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation PutModelInvocationLoggingConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/PutModelInvocationLoggingConfiguration +func (c *Bedrock) PutModelInvocationLoggingConfiguration(input *PutModelInvocationLoggingConfigurationInput) (*PutModelInvocationLoggingConfigurationOutput, error) { + req, out := c.PutModelInvocationLoggingConfigurationRequest(input) + return out, req.Send() +} + +// PutModelInvocationLoggingConfigurationWithContext is the same as PutModelInvocationLoggingConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See PutModelInvocationLoggingConfiguration 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 *Bedrock) PutModelInvocationLoggingConfigurationWithContext(ctx aws.Context, input *PutModelInvocationLoggingConfigurationInput, opts ...request.Option) (*PutModelInvocationLoggingConfigurationOutput, error) { + req, out := c.PutModelInvocationLoggingConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopModelCustomizationJob = "StopModelCustomizationJob" + +// StopModelCustomizationJobRequest generates a "aws/request.Request" representing the +// client's request for the StopModelCustomizationJob 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 StopModelCustomizationJob for more information on using the StopModelCustomizationJob +// 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 StopModelCustomizationJobRequest method. +// req, resp := client.StopModelCustomizationJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/StopModelCustomizationJob +func (c *Bedrock) StopModelCustomizationJobRequest(input *StopModelCustomizationJobInput) (req *request.Request, output *StopModelCustomizationJobOutput) { + op := &request.Operation{ + Name: opStopModelCustomizationJob, + HTTPMethod: "POST", + HTTPPath: "/model-customization-jobs/{jobIdentifier}/stop", + } + + if input == nil { + input = &StopModelCustomizationJobInput{} + } + + output = &StopModelCustomizationJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StopModelCustomizationJob API operation for Amazon Bedrock. +// +// Stops an active model customization job. For more information, see Custom +// models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation StopModelCustomizationJob for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - ConflictException +// Error occurred because of a conflict while performing an operation. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/StopModelCustomizationJob +func (c *Bedrock) StopModelCustomizationJob(input *StopModelCustomizationJobInput) (*StopModelCustomizationJobOutput, error) { + req, out := c.StopModelCustomizationJobRequest(input) + return out, req.Send() +} + +// StopModelCustomizationJobWithContext is the same as StopModelCustomizationJob with the addition of +// the ability to pass a context and additional request options. +// +// See StopModelCustomizationJob 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 *Bedrock) StopModelCustomizationJobWithContext(ctx aws.Context, input *StopModelCustomizationJobInput, opts ...request.Option) (*StopModelCustomizationJobOutput, error) { + req, out := c.StopModelCustomizationJobRequest(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/bedrock-2023-04-20/TagResource +func (c *Bedrock) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tagResource", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Amazon Bedrock. +// +// Associate tags with a resource. For more information, see Tagging resources +// (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - TooManyTagsException +// The request contains more tags than can be associated with a resource (50 +// tags per resource). The maximum number of tags includes both existing tags +// and those included in your current request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/TagResource +func (c *Bedrock) 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 *Bedrock) 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/bedrock-2023-04-20/UntagResource +func (c *Bedrock) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/untagResource", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon Bedrock. +// +// Remove one or more tags from a resource. For more information, see Tagging +// resources (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/UntagResource +func (c *Bedrock) 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 *Bedrock) 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 opUpdateProvisionedModelThroughput = "UpdateProvisionedModelThroughput" + +// UpdateProvisionedModelThroughputRequest generates a "aws/request.Request" representing the +// client's request for the UpdateProvisionedModelThroughput 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 UpdateProvisionedModelThroughput for more information on using the UpdateProvisionedModelThroughput +// 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 UpdateProvisionedModelThroughputRequest method. +// req, resp := client.UpdateProvisionedModelThroughputRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/UpdateProvisionedModelThroughput +func (c *Bedrock) UpdateProvisionedModelThroughputRequest(input *UpdateProvisionedModelThroughputInput) (req *request.Request, output *UpdateProvisionedModelThroughputOutput) { + op := &request.Operation{ + Name: opUpdateProvisionedModelThroughput, + HTTPMethod: "PATCH", + HTTPPath: "/provisioned-model-throughput/{provisionedModelId}", + } + + if input == nil { + input = &UpdateProvisionedModelThroughputInput{} + } + + output = &UpdateProvisionedModelThroughputOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateProvisionedModelThroughput API operation for Amazon Bedrock. +// +// Update a provisioned throughput. For more information, see Provisioned throughput +// (https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html) +// in the Bedrock User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock's +// API operation UpdateProvisionedModelThroughput for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/UpdateProvisionedModelThroughput +func (c *Bedrock) UpdateProvisionedModelThroughput(input *UpdateProvisionedModelThroughputInput) (*UpdateProvisionedModelThroughputOutput, error) { + req, out := c.UpdateProvisionedModelThroughputRequest(input) + return out, req.Send() +} + +// UpdateProvisionedModelThroughputWithContext is the same as UpdateProvisionedModelThroughput with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateProvisionedModelThroughput 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 *Bedrock) UpdateProvisionedModelThroughputWithContext(ctx aws.Context, input *UpdateProvisionedModelThroughputInput, opts ...request.Option) (*UpdateProvisionedModelThroughputOutput, error) { + req, out := c.UpdateProvisionedModelThroughputRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// The request is denied because of missing access permissions. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// CloudWatch logging configuration. +type CloudWatchConfig struct { + _ struct{} `type:"structure"` + + // S3 configuration for delivering a large amount of data. + LargeDataDeliveryS3Config *S3Config `locationName:"largeDataDeliveryS3Config" type:"structure"` + + // The log group name. + // + // LogGroupName is a required field + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` + + // The role ARN. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" 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 CloudWatchConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudWatchConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CloudWatchConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CloudWatchConfig"} + if s.LogGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("LogGroupName")) + } + if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.LargeDataDeliveryS3Config != nil { + if err := s.LargeDataDeliveryS3Config.Validate(); err != nil { + invalidParams.AddNested("LargeDataDeliveryS3Config", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLargeDataDeliveryS3Config sets the LargeDataDeliveryS3Config field's value. +func (s *CloudWatchConfig) SetLargeDataDeliveryS3Config(v *S3Config) *CloudWatchConfig { + s.LargeDataDeliveryS3Config = v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *CloudWatchConfig) SetLogGroupName(v string) *CloudWatchConfig { + s.LogGroupName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CloudWatchConfig) SetRoleArn(v string) *CloudWatchConfig { + s.RoleArn = &v + return s +} + +// Error occurred because of a conflict while performing an operation. +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 CreateModelCustomizationJobInput struct { + _ struct{} `type:"structure"` + + // Name of the base model. + // + // BaseModelIdentifier is a required field + BaseModelIdentifier *string `locationName:"baseModelIdentifier" min:"1" type:"string" required:"true"` + + // Unique token value that you can provide. The GetModelCustomizationJob response + // includes the same token value. + ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + + // The custom model is encrypted at rest using this key. + CustomModelKmsKeyId *string `locationName:"customModelKmsKeyId" min:"1" type:"string"` + + // Enter a name for the custom model. + // + // CustomModelName is a required field + CustomModelName *string `locationName:"customModelName" min:"1" type:"string" required:"true"` + + // Assign tags to the custom model. + CustomModelTags []*Tag `locationName:"customModelTags" type:"list"` + + // The customization type. + CustomizationType *string `locationName:"customizationType" type:"string" enum:"CustomizationType"` + + // Parameters related to tuning the model. + // + // HyperParameters is a required field + HyperParameters map[string]*string `locationName:"hyperParameters" type:"map" required:"true"` + + // Enter a unique name for the fine-tuning job. + // + // JobName is a required field + JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"` + + // Assign tags to the job. + JobTags []*Tag `locationName:"jobTags" type:"list"` + + // S3 location for the output data. + // + // OutputDataConfig is a required field + OutputDataConfig *OutputDataConfig `locationName:"outputDataConfig" type:"structure" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role that Amazon Bedrock can assume + // to perform tasks on your behalf. For example, during model training, Amazon + // Bedrock needs your permission to read input data from an S3 bucket, write + // model artifacts to an S3 bucket. To pass this role to Amazon Bedrock, the + // caller of this API must have the iam:PassRole permission. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // Information about the training dataset. + // + // TrainingDataConfig is a required field + TrainingDataConfig *TrainingDataConfig `locationName:"trainingDataConfig" type:"structure" required:"true"` + + // Information about the validation dataset. + ValidationDataConfig *ValidationDataConfig `locationName:"validationDataConfig" type:"structure"` + + // VPC configuration (optional). Configuration parameters for the private Virtual + // Private Cloud (VPC) that contains the resources you are using for this job. + VpcConfig *VpcConfig `locationName:"vpcConfig" 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 CreateModelCustomizationJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateModelCustomizationJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateModelCustomizationJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateModelCustomizationJobInput"} + if s.BaseModelIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("BaseModelIdentifier")) + } + if s.BaseModelIdentifier != nil && len(*s.BaseModelIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaseModelIdentifier", 1)) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.CustomModelKmsKeyId != nil && len(*s.CustomModelKmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomModelKmsKeyId", 1)) + } + if s.CustomModelName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomModelName")) + } + if s.CustomModelName != nil && len(*s.CustomModelName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomModelName", 1)) + } + if s.HyperParameters == nil { + invalidParams.Add(request.NewErrParamRequired("HyperParameters")) + } + if s.JobName == nil { + invalidParams.Add(request.NewErrParamRequired("JobName")) + } + if s.JobName != nil && len(*s.JobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobName", 1)) + } + if s.OutputDataConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputDataConfig")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.TrainingDataConfig == nil { + invalidParams.Add(request.NewErrParamRequired("TrainingDataConfig")) + } + if s.CustomModelTags != nil { + for i, v := range s.CustomModelTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomModelTags", i), err.(request.ErrInvalidParams)) + } + } + } + if s.JobTags != nil { + for i, v := range s.JobTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "JobTags", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OutputDataConfig != nil { + if err := s.OutputDataConfig.Validate(); err != nil { + invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams)) + } + } + if s.TrainingDataConfig != nil { + if err := s.TrainingDataConfig.Validate(); err != nil { + invalidParams.AddNested("TrainingDataConfig", err.(request.ErrInvalidParams)) + } + } + if s.ValidationDataConfig != nil { + if err := s.ValidationDataConfig.Validate(); err != nil { + invalidParams.AddNested("ValidationDataConfig", err.(request.ErrInvalidParams)) + } + } + if s.VpcConfig != nil { + if err := s.VpcConfig.Validate(); err != nil { + invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaseModelIdentifier sets the BaseModelIdentifier field's value. +func (s *CreateModelCustomizationJobInput) SetBaseModelIdentifier(v string) *CreateModelCustomizationJobInput { + s.BaseModelIdentifier = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateModelCustomizationJobInput) SetClientRequestToken(v string) *CreateModelCustomizationJobInput { + s.ClientRequestToken = &v + return s +} + +// SetCustomModelKmsKeyId sets the CustomModelKmsKeyId field's value. +func (s *CreateModelCustomizationJobInput) SetCustomModelKmsKeyId(v string) *CreateModelCustomizationJobInput { + s.CustomModelKmsKeyId = &v + return s +} + +// SetCustomModelName sets the CustomModelName field's value. +func (s *CreateModelCustomizationJobInput) SetCustomModelName(v string) *CreateModelCustomizationJobInput { + s.CustomModelName = &v + return s +} + +// SetCustomModelTags sets the CustomModelTags field's value. +func (s *CreateModelCustomizationJobInput) SetCustomModelTags(v []*Tag) *CreateModelCustomizationJobInput { + s.CustomModelTags = v + return s +} + +// SetCustomizationType sets the CustomizationType field's value. +func (s *CreateModelCustomizationJobInput) SetCustomizationType(v string) *CreateModelCustomizationJobInput { + s.CustomizationType = &v + return s +} + +// SetHyperParameters sets the HyperParameters field's value. +func (s *CreateModelCustomizationJobInput) SetHyperParameters(v map[string]*string) *CreateModelCustomizationJobInput { + s.HyperParameters = v + return s +} + +// SetJobName sets the JobName field's value. +func (s *CreateModelCustomizationJobInput) SetJobName(v string) *CreateModelCustomizationJobInput { + s.JobName = &v + return s +} + +// SetJobTags sets the JobTags field's value. +func (s *CreateModelCustomizationJobInput) SetJobTags(v []*Tag) *CreateModelCustomizationJobInput { + s.JobTags = v + return s +} + +// SetOutputDataConfig sets the OutputDataConfig field's value. +func (s *CreateModelCustomizationJobInput) SetOutputDataConfig(v *OutputDataConfig) *CreateModelCustomizationJobInput { + s.OutputDataConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateModelCustomizationJobInput) SetRoleArn(v string) *CreateModelCustomizationJobInput { + s.RoleArn = &v + return s +} + +// SetTrainingDataConfig sets the TrainingDataConfig field's value. +func (s *CreateModelCustomizationJobInput) SetTrainingDataConfig(v *TrainingDataConfig) *CreateModelCustomizationJobInput { + s.TrainingDataConfig = v + return s +} + +// SetValidationDataConfig sets the ValidationDataConfig field's value. +func (s *CreateModelCustomizationJobInput) SetValidationDataConfig(v *ValidationDataConfig) *CreateModelCustomizationJobInput { + s.ValidationDataConfig = v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *CreateModelCustomizationJobInput) SetVpcConfig(v *VpcConfig) *CreateModelCustomizationJobInput { + s.VpcConfig = v + return s +} + +type CreateModelCustomizationJobOutput struct { + _ struct{} `type:"structure"` + + // ARN of the fine tuning job + // + // JobArn is a required field + JobArn *string `locationName:"jobArn" 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 CreateModelCustomizationJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateModelCustomizationJobOutput) GoString() string { + return s.String() +} + +// SetJobArn sets the JobArn field's value. +func (s *CreateModelCustomizationJobOutput) SetJobArn(v string) *CreateModelCustomizationJobOutput { + s.JobArn = &v + return s +} + +type CreateProvisionedModelThroughputInput struct { + _ struct{} `type:"structure"` + + // Unique token value that you can provide. If this token matches a previous + // request, Amazon Bedrock ignores the request, but does not return an error. + ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + + // Commitment duration requested for the provisioned throughput. + CommitmentDuration *string `locationName:"commitmentDuration" type:"string" enum:"CommitmentDuration"` + + // Name or ARN of the model to associate with this provisioned throughput. + // + // ModelId is a required field + ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"` + + // Number of model units to allocate. + // + // ModelUnits is a required field + ModelUnits *int64 `locationName:"modelUnits" min:"1" type:"integer" required:"true"` + + // Unique name for this provisioned throughput. + // + // ProvisionedModelName is a required field + ProvisionedModelName *string `locationName:"provisionedModelName" min:"1" type:"string" required:"true"` + + // Tags to associate with this provisioned throughput. + 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 CreateProvisionedModelThroughputInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProvisionedModelThroughputInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProvisionedModelThroughputInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProvisionedModelThroughputInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ModelId == nil { + invalidParams.Add(request.NewErrParamRequired("ModelId")) + } + if s.ModelId != nil && len(*s.ModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelId", 1)) + } + if s.ModelUnits == nil { + invalidParams.Add(request.NewErrParamRequired("ModelUnits")) + } + if s.ModelUnits != nil && *s.ModelUnits < 1 { + invalidParams.Add(request.NewErrParamMinValue("ModelUnits", 1)) + } + if s.ProvisionedModelName == nil { + invalidParams.Add(request.NewErrParamRequired("ProvisionedModelName")) + } + if s.ProvisionedModelName != nil && len(*s.ProvisionedModelName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProvisionedModelName", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateProvisionedModelThroughputInput) SetClientRequestToken(v string) *CreateProvisionedModelThroughputInput { + s.ClientRequestToken = &v + return s +} + +// SetCommitmentDuration sets the CommitmentDuration field's value. +func (s *CreateProvisionedModelThroughputInput) SetCommitmentDuration(v string) *CreateProvisionedModelThroughputInput { + s.CommitmentDuration = &v + return s +} + +// SetModelId sets the ModelId field's value. +func (s *CreateProvisionedModelThroughputInput) SetModelId(v string) *CreateProvisionedModelThroughputInput { + s.ModelId = &v + return s +} + +// SetModelUnits sets the ModelUnits field's value. +func (s *CreateProvisionedModelThroughputInput) SetModelUnits(v int64) *CreateProvisionedModelThroughputInput { + s.ModelUnits = &v + return s +} + +// SetProvisionedModelName sets the ProvisionedModelName field's value. +func (s *CreateProvisionedModelThroughputInput) SetProvisionedModelName(v string) *CreateProvisionedModelThroughputInput { + s.ProvisionedModelName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateProvisionedModelThroughputInput) SetTags(v []*Tag) *CreateProvisionedModelThroughputInput { + s.Tags = v + return s +} + +type CreateProvisionedModelThroughputOutput struct { + _ struct{} `type:"structure"` + + // The ARN for this provisioned throughput. + // + // ProvisionedModelArn is a required field + ProvisionedModelArn *string `locationName:"provisionedModelArn" 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 CreateProvisionedModelThroughputOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProvisionedModelThroughputOutput) GoString() string { + return s.String() +} + +// SetProvisionedModelArn sets the ProvisionedModelArn field's value. +func (s *CreateProvisionedModelThroughputOutput) SetProvisionedModelArn(v string) *CreateProvisionedModelThroughputOutput { + s.ProvisionedModelArn = &v + return s +} + +// Summary information for a custom model. +type CustomModelSummary struct { + _ struct{} `type:"structure"` + + // The base model ARN. + // + // BaseModelArn is a required field + BaseModelArn *string `locationName:"baseModelArn" min:"20" type:"string" required:"true"` + + // The base model name. + // + // BaseModelName is a required field + BaseModelName *string `locationName:"baseModelName" min:"1" type:"string" required:"true"` + + // Creation time of the model. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Specifies whether to carry out continued pre-training of a model or whether + // to fine-tune it. For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html). + CustomizationType *string `locationName:"customizationType" type:"string" enum:"CustomizationType"` + + // The ARN of the custom model. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" min:"20" type:"string" required:"true"` + + // The name of the custom model. + // + // ModelName is a required field + ModelName *string `locationName:"modelName" 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 CustomModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomModelSummary) GoString() string { + return s.String() +} + +// SetBaseModelArn sets the BaseModelArn field's value. +func (s *CustomModelSummary) SetBaseModelArn(v string) *CustomModelSummary { + s.BaseModelArn = &v + return s +} + +// SetBaseModelName sets the BaseModelName field's value. +func (s *CustomModelSummary) SetBaseModelName(v string) *CustomModelSummary { + s.BaseModelName = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CustomModelSummary) SetCreationTime(v time.Time) *CustomModelSummary { + s.CreationTime = &v + return s +} + +// SetCustomizationType sets the CustomizationType field's value. +func (s *CustomModelSummary) SetCustomizationType(v string) *CustomModelSummary { + s.CustomizationType = &v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *CustomModelSummary) SetModelArn(v string) *CustomModelSummary { + s.ModelArn = &v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *CustomModelSummary) SetModelName(v string) *CustomModelSummary { + s.ModelName = &v + return s +} + +type DeleteCustomModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Name of the model to delete. + // + // ModelIdentifier is a required field + ModelIdentifier *string `location:"uri" locationName:"modelIdentifier" 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 DeleteCustomModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCustomModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteCustomModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCustomModelInput"} + if s.ModelIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ModelIdentifier")) + } + if s.ModelIdentifier != nil && len(*s.ModelIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetModelIdentifier sets the ModelIdentifier field's value. +func (s *DeleteCustomModelInput) SetModelIdentifier(v string) *DeleteCustomModelInput { + s.ModelIdentifier = &v + return s +} + +type DeleteCustomModelOutput 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 DeleteCustomModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCustomModelOutput) GoString() string { + return s.String() +} + +type DeleteModelInvocationLoggingConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"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 DeleteModelInvocationLoggingConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteModelInvocationLoggingConfigurationInput) GoString() string { + return s.String() +} + +type DeleteModelInvocationLoggingConfigurationOutput 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 DeleteModelInvocationLoggingConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteModelInvocationLoggingConfigurationOutput) GoString() string { + return s.String() +} + +type DeleteProvisionedModelThroughputInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN or name of the provisioned throughput. + // + // ProvisionedModelId is a required field + ProvisionedModelId *string `location:"uri" locationName:"provisionedModelId" 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 DeleteProvisionedModelThroughputInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProvisionedModelThroughputInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProvisionedModelThroughputInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProvisionedModelThroughputInput"} + if s.ProvisionedModelId == nil { + invalidParams.Add(request.NewErrParamRequired("ProvisionedModelId")) + } + if s.ProvisionedModelId != nil && len(*s.ProvisionedModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProvisionedModelId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProvisionedModelId sets the ProvisionedModelId field's value. +func (s *DeleteProvisionedModelThroughputInput) SetProvisionedModelId(v string) *DeleteProvisionedModelThroughputInput { + s.ProvisionedModelId = &v + return s +} + +type DeleteProvisionedModelThroughputOutput 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 DeleteProvisionedModelThroughputOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProvisionedModelThroughputOutput) GoString() string { + return s.String() +} + +// Information about a foundation model. +type FoundationModelDetails struct { + _ struct{} `type:"structure"` + + // The customization that the model supports. + CustomizationsSupported []*string `locationName:"customizationsSupported" type:"list" enum:"ModelCustomization"` + + // The inference types that the model supports. + InferenceTypesSupported []*string `locationName:"inferenceTypesSupported" type:"list" enum:"InferenceType"` + + // The input modalities that the model supports. + InputModalities []*string `locationName:"inputModalities" type:"list" enum:"ModelModality"` + + // The model ARN. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" type:"string" required:"true"` + + // The model identifier. + // + // ModelId is a required field + ModelId *string `locationName:"modelId" type:"string" required:"true"` + + // Contains details about whether a model version is available or deprecated + ModelLifecycle *FoundationModelLifecycle `locationName:"modelLifecycle" type:"structure"` + + // The model name. + ModelName *string `locationName:"modelName" min:"1" type:"string"` + + // The output modalities that the model supports. + OutputModalities []*string `locationName:"outputModalities" type:"list" enum:"ModelModality"` + + // he model's provider name. + ProviderName *string `locationName:"providerName" min:"1" type:"string"` + + // Indicates whether the model supports streaming. + ResponseStreamingSupported *bool `locationName:"responseStreamingSupported" 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 FoundationModelDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FoundationModelDetails) GoString() string { + return s.String() +} + +// SetCustomizationsSupported sets the CustomizationsSupported field's value. +func (s *FoundationModelDetails) SetCustomizationsSupported(v []*string) *FoundationModelDetails { + s.CustomizationsSupported = v + return s +} + +// SetInferenceTypesSupported sets the InferenceTypesSupported field's value. +func (s *FoundationModelDetails) SetInferenceTypesSupported(v []*string) *FoundationModelDetails { + s.InferenceTypesSupported = v + return s +} + +// SetInputModalities sets the InputModalities field's value. +func (s *FoundationModelDetails) SetInputModalities(v []*string) *FoundationModelDetails { + s.InputModalities = v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *FoundationModelDetails) SetModelArn(v string) *FoundationModelDetails { + s.ModelArn = &v + return s +} + +// SetModelId sets the ModelId field's value. +func (s *FoundationModelDetails) SetModelId(v string) *FoundationModelDetails { + s.ModelId = &v + return s +} + +// SetModelLifecycle sets the ModelLifecycle field's value. +func (s *FoundationModelDetails) SetModelLifecycle(v *FoundationModelLifecycle) *FoundationModelDetails { + s.ModelLifecycle = v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *FoundationModelDetails) SetModelName(v string) *FoundationModelDetails { + s.ModelName = &v + return s +} + +// SetOutputModalities sets the OutputModalities field's value. +func (s *FoundationModelDetails) SetOutputModalities(v []*string) *FoundationModelDetails { + s.OutputModalities = v + return s +} + +// SetProviderName sets the ProviderName field's value. +func (s *FoundationModelDetails) SetProviderName(v string) *FoundationModelDetails { + s.ProviderName = &v + return s +} + +// SetResponseStreamingSupported sets the ResponseStreamingSupported field's value. +func (s *FoundationModelDetails) SetResponseStreamingSupported(v bool) *FoundationModelDetails { + s.ResponseStreamingSupported = &v + return s +} + +// Details about whether a model version is available or deprecated. +type FoundationModelLifecycle struct { + _ struct{} `type:"structure"` + + // Specifies whether a model version is available (ACTIVE) or deprecated (LEGACY. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"FoundationModelLifecycleStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FoundationModelLifecycle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FoundationModelLifecycle) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *FoundationModelLifecycle) SetStatus(v string) *FoundationModelLifecycle { + s.Status = &v + return s +} + +// Summary information for a foundation model. +type FoundationModelSummary struct { + _ struct{} `type:"structure"` + + // Whether the model supports fine-tuning or continual pre-training. + CustomizationsSupported []*string `locationName:"customizationsSupported" type:"list" enum:"ModelCustomization"` + + // The inference types that the model supports. + InferenceTypesSupported []*string `locationName:"inferenceTypesSupported" type:"list" enum:"InferenceType"` + + // The input modalities that the model supports. + InputModalities []*string `locationName:"inputModalities" type:"list" enum:"ModelModality"` + + // The ARN of the foundation model. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" type:"string" required:"true"` + + // The model Id of the foundation model. + // + // ModelId is a required field + ModelId *string `locationName:"modelId" type:"string" required:"true"` + + // Contains details about whether a model version is available or deprecated. + ModelLifecycle *FoundationModelLifecycle `locationName:"modelLifecycle" type:"structure"` + + // The name of the model. + ModelName *string `locationName:"modelName" min:"1" type:"string"` + + // The output modalities that the model supports. + OutputModalities []*string `locationName:"outputModalities" type:"list" enum:"ModelModality"` + + // The model's provider name. + ProviderName *string `locationName:"providerName" min:"1" type:"string"` + + // Indicates whether the model supports streaming. + ResponseStreamingSupported *bool `locationName:"responseStreamingSupported" 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 FoundationModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FoundationModelSummary) GoString() string { + return s.String() +} + +// SetCustomizationsSupported sets the CustomizationsSupported field's value. +func (s *FoundationModelSummary) SetCustomizationsSupported(v []*string) *FoundationModelSummary { + s.CustomizationsSupported = v + return s +} + +// SetInferenceTypesSupported sets the InferenceTypesSupported field's value. +func (s *FoundationModelSummary) SetInferenceTypesSupported(v []*string) *FoundationModelSummary { + s.InferenceTypesSupported = v + return s +} + +// SetInputModalities sets the InputModalities field's value. +func (s *FoundationModelSummary) SetInputModalities(v []*string) *FoundationModelSummary { + s.InputModalities = v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *FoundationModelSummary) SetModelArn(v string) *FoundationModelSummary { + s.ModelArn = &v + return s +} + +// SetModelId sets the ModelId field's value. +func (s *FoundationModelSummary) SetModelId(v string) *FoundationModelSummary { + s.ModelId = &v + return s +} + +// SetModelLifecycle sets the ModelLifecycle field's value. +func (s *FoundationModelSummary) SetModelLifecycle(v *FoundationModelLifecycle) *FoundationModelSummary { + s.ModelLifecycle = v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *FoundationModelSummary) SetModelName(v string) *FoundationModelSummary { + s.ModelName = &v + return s +} + +// SetOutputModalities sets the OutputModalities field's value. +func (s *FoundationModelSummary) SetOutputModalities(v []*string) *FoundationModelSummary { + s.OutputModalities = v + return s +} + +// SetProviderName sets the ProviderName field's value. +func (s *FoundationModelSummary) SetProviderName(v string) *FoundationModelSummary { + s.ProviderName = &v + return s +} + +// SetResponseStreamingSupported sets the ResponseStreamingSupported field's value. +func (s *FoundationModelSummary) SetResponseStreamingSupported(v bool) *FoundationModelSummary { + s.ResponseStreamingSupported = &v + return s +} + +type GetCustomModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Name or ARN of the custom model. + // + // ModelIdentifier is a required field + ModelIdentifier *string `location:"uri" locationName:"modelIdentifier" 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 GetCustomModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCustomModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCustomModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCustomModelInput"} + if s.ModelIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ModelIdentifier")) + } + if s.ModelIdentifier != nil && len(*s.ModelIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetModelIdentifier sets the ModelIdentifier field's value. +func (s *GetCustomModelInput) SetModelIdentifier(v string) *GetCustomModelInput { + s.ModelIdentifier = &v + return s +} + +type GetCustomModelOutput struct { + _ struct{} `type:"structure"` + + // ARN of the base model. + // + // BaseModelArn is a required field + BaseModelArn *string `locationName:"baseModelArn" min:"20" type:"string" required:"true"` + + // Creation time of the model. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The type of model customization. + CustomizationType *string `locationName:"customizationType" type:"string" enum:"CustomizationType"` + + // Hyperparameter values associated with this model. + HyperParameters map[string]*string `locationName:"hyperParameters" type:"map"` + + // Job ARN associated with this model. + // + // JobArn is a required field + JobArn *string `locationName:"jobArn" type:"string" required:"true"` + + // Job name associated with this model. + JobName *string `locationName:"jobName" min:"1" type:"string"` + + // ARN associated with this model. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" min:"20" type:"string" required:"true"` + + // The custom model is encrypted at rest using this key. + ModelKmsKeyArn *string `locationName:"modelKmsKeyArn" min:"1" type:"string"` + + // Model name associated with this model. + // + // ModelName is a required field + ModelName *string `locationName:"modelName" min:"1" type:"string" required:"true"` + + // Output data configuration associated with this custom model. + // + // OutputDataConfig is a required field + OutputDataConfig *OutputDataConfig `locationName:"outputDataConfig" type:"structure" required:"true"` + + // Information about the training dataset. + // + // TrainingDataConfig is a required field + TrainingDataConfig *TrainingDataConfig `locationName:"trainingDataConfig" type:"structure" required:"true"` + + // The training metrics from the job creation. + TrainingMetrics *TrainingMetrics `locationName:"trainingMetrics" type:"structure"` + + // Array of up to 10 validators. + ValidationDataConfig *ValidationDataConfig `locationName:"validationDataConfig" type:"structure"` + + // The validation metrics from the job creation. + ValidationMetrics []*ValidatorMetric `locationName:"validationMetrics" 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 GetCustomModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCustomModelOutput) GoString() string { + return s.String() +} + +// SetBaseModelArn sets the BaseModelArn field's value. +func (s *GetCustomModelOutput) SetBaseModelArn(v string) *GetCustomModelOutput { + s.BaseModelArn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetCustomModelOutput) SetCreationTime(v time.Time) *GetCustomModelOutput { + s.CreationTime = &v + return s +} + +// SetCustomizationType sets the CustomizationType field's value. +func (s *GetCustomModelOutput) SetCustomizationType(v string) *GetCustomModelOutput { + s.CustomizationType = &v + return s +} + +// SetHyperParameters sets the HyperParameters field's value. +func (s *GetCustomModelOutput) SetHyperParameters(v map[string]*string) *GetCustomModelOutput { + s.HyperParameters = v + return s +} + +// SetJobArn sets the JobArn field's value. +func (s *GetCustomModelOutput) SetJobArn(v string) *GetCustomModelOutput { + s.JobArn = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *GetCustomModelOutput) SetJobName(v string) *GetCustomModelOutput { + s.JobName = &v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *GetCustomModelOutput) SetModelArn(v string) *GetCustomModelOutput { + s.ModelArn = &v + return s +} + +// SetModelKmsKeyArn sets the ModelKmsKeyArn field's value. +func (s *GetCustomModelOutput) SetModelKmsKeyArn(v string) *GetCustomModelOutput { + s.ModelKmsKeyArn = &v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *GetCustomModelOutput) SetModelName(v string) *GetCustomModelOutput { + s.ModelName = &v + return s +} + +// SetOutputDataConfig sets the OutputDataConfig field's value. +func (s *GetCustomModelOutput) SetOutputDataConfig(v *OutputDataConfig) *GetCustomModelOutput { + s.OutputDataConfig = v + return s +} + +// SetTrainingDataConfig sets the TrainingDataConfig field's value. +func (s *GetCustomModelOutput) SetTrainingDataConfig(v *TrainingDataConfig) *GetCustomModelOutput { + s.TrainingDataConfig = v + return s +} + +// SetTrainingMetrics sets the TrainingMetrics field's value. +func (s *GetCustomModelOutput) SetTrainingMetrics(v *TrainingMetrics) *GetCustomModelOutput { + s.TrainingMetrics = v + return s +} + +// SetValidationDataConfig sets the ValidationDataConfig field's value. +func (s *GetCustomModelOutput) SetValidationDataConfig(v *ValidationDataConfig) *GetCustomModelOutput { + s.ValidationDataConfig = v + return s +} + +// SetValidationMetrics sets the ValidationMetrics field's value. +func (s *GetCustomModelOutput) SetValidationMetrics(v []*ValidatorMetric) *GetCustomModelOutput { + s.ValidationMetrics = v + return s +} + +type GetFoundationModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The model identifier. + // + // ModelIdentifier is a required field + ModelIdentifier *string `location:"uri" locationName:"modelIdentifier" 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 GetFoundationModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFoundationModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetFoundationModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetFoundationModelInput"} + if s.ModelIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ModelIdentifier")) + } + if s.ModelIdentifier != nil && len(*s.ModelIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetModelIdentifier sets the ModelIdentifier field's value. +func (s *GetFoundationModelInput) SetModelIdentifier(v string) *GetFoundationModelInput { + s.ModelIdentifier = &v + return s +} + +type GetFoundationModelOutput struct { + _ struct{} `type:"structure"` + + // Information about the foundation model. + ModelDetails *FoundationModelDetails `locationName:"modelDetails" 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 GetFoundationModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFoundationModelOutput) GoString() string { + return s.String() +} + +// SetModelDetails sets the ModelDetails field's value. +func (s *GetFoundationModelOutput) SetModelDetails(v *FoundationModelDetails) *GetFoundationModelOutput { + s.ModelDetails = v + return s +} + +type GetModelCustomizationJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Identifier for the customization job. + // + // JobIdentifier is a required field + JobIdentifier *string `location:"uri" locationName:"jobIdentifier" 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 GetModelCustomizationJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelCustomizationJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetModelCustomizationJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetModelCustomizationJobInput"} + if s.JobIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("JobIdentifier")) + } + if s.JobIdentifier != nil && len(*s.JobIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobIdentifier sets the JobIdentifier field's value. +func (s *GetModelCustomizationJobInput) SetJobIdentifier(v string) *GetModelCustomizationJobInput { + s.JobIdentifier = &v + return s +} + +type GetModelCustomizationJobOutput struct { + _ struct{} `type:"structure"` + + // ARN of the base model. + // + // BaseModelArn is a required field + BaseModelArn *string `locationName:"baseModelArn" type:"string" required:"true"` + + // The token that you specified in the CreateCustomizationJob request. + ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"` + + // Time that the resource was created. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The type of model customization. + CustomizationType *string `locationName:"customizationType" type:"string" enum:"CustomizationType"` + + // Time that the resource transitioned to terminal state. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // Information about why the job failed. + FailureMessage *string `locationName:"failureMessage" type:"string"` + + // The hyperparameter values for the job. For information about hyperparameters + // for specific models, see Guidelines for model customization (https://docs.aws.amazon.com/bedrock/latest/userguide/model-customization-guidelines.html). + // + // HyperParameters is a required field + HyperParameters map[string]*string `locationName:"hyperParameters" type:"map" required:"true"` + + // The ARN of the customization job. + // + // JobArn is a required field + JobArn *string `locationName:"jobArn" type:"string" required:"true"` + + // The name of the customization job. + // + // JobName is a required field + JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"` + + // Time that the resource was last modified. + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"iso8601"` + + // Output data configuration + // + // OutputDataConfig is a required field + OutputDataConfig *OutputDataConfig `locationName:"outputDataConfig" type:"structure" required:"true"` + + // The ARN of the output model. + OutputModelArn *string `locationName:"outputModelArn" min:"20" type:"string"` + + // The custom model is encrypted at rest using this key. + OutputModelKmsKeyArn *string `locationName:"outputModelKmsKeyArn" min:"1" type:"string"` + + // The name of the output model. + // + // OutputModelName is a required field + OutputModelName *string `locationName:"outputModelName" min:"1" type:"string" required:"true"` + + // The ARN of the IAM role. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The status of the job. A successful job transitions from in-progress to completed + // when the output model is ready to use. If the job failed, the failure message + // contains information about why the job failed. + Status *string `locationName:"status" type:"string" enum:"ModelCustomizationJobStatus"` + + // S3 Location of the training data. + // + // TrainingDataConfig is a required field + TrainingDataConfig *TrainingDataConfig `locationName:"trainingDataConfig" type:"structure" required:"true"` + + // Metrics associated with the custom job. + TrainingMetrics *TrainingMetrics `locationName:"trainingMetrics" type:"structure"` + + // Array of up to 10 validators. + // + // ValidationDataConfig is a required field + ValidationDataConfig *ValidationDataConfig `locationName:"validationDataConfig" type:"structure" required:"true"` + + // The loss metric for each validator that you provided in the createjob request. + ValidationMetrics []*ValidatorMetric `locationName:"validationMetrics" type:"list"` + + // VPC configuration for the custom model job. + VpcConfig *VpcConfig `locationName:"vpcConfig" 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 GetModelCustomizationJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelCustomizationJobOutput) GoString() string { + return s.String() +} + +// SetBaseModelArn sets the BaseModelArn field's value. +func (s *GetModelCustomizationJobOutput) SetBaseModelArn(v string) *GetModelCustomizationJobOutput { + s.BaseModelArn = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *GetModelCustomizationJobOutput) SetClientRequestToken(v string) *GetModelCustomizationJobOutput { + s.ClientRequestToken = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetModelCustomizationJobOutput) SetCreationTime(v time.Time) *GetModelCustomizationJobOutput { + s.CreationTime = &v + return s +} + +// SetCustomizationType sets the CustomizationType field's value. +func (s *GetModelCustomizationJobOutput) SetCustomizationType(v string) *GetModelCustomizationJobOutput { + s.CustomizationType = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *GetModelCustomizationJobOutput) SetEndTime(v time.Time) *GetModelCustomizationJobOutput { + s.EndTime = &v + return s +} + +// SetFailureMessage sets the FailureMessage field's value. +func (s *GetModelCustomizationJobOutput) SetFailureMessage(v string) *GetModelCustomizationJobOutput { + s.FailureMessage = &v + return s +} + +// SetHyperParameters sets the HyperParameters field's value. +func (s *GetModelCustomizationJobOutput) SetHyperParameters(v map[string]*string) *GetModelCustomizationJobOutput { + s.HyperParameters = v + return s +} + +// SetJobArn sets the JobArn field's value. +func (s *GetModelCustomizationJobOutput) SetJobArn(v string) *GetModelCustomizationJobOutput { + s.JobArn = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *GetModelCustomizationJobOutput) SetJobName(v string) *GetModelCustomizationJobOutput { + s.JobName = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *GetModelCustomizationJobOutput) SetLastModifiedTime(v time.Time) *GetModelCustomizationJobOutput { + s.LastModifiedTime = &v + return s +} + +// SetOutputDataConfig sets the OutputDataConfig field's value. +func (s *GetModelCustomizationJobOutput) SetOutputDataConfig(v *OutputDataConfig) *GetModelCustomizationJobOutput { + s.OutputDataConfig = v + return s +} + +// SetOutputModelArn sets the OutputModelArn field's value. +func (s *GetModelCustomizationJobOutput) SetOutputModelArn(v string) *GetModelCustomizationJobOutput { + s.OutputModelArn = &v + return s +} + +// SetOutputModelKmsKeyArn sets the OutputModelKmsKeyArn field's value. +func (s *GetModelCustomizationJobOutput) SetOutputModelKmsKeyArn(v string) *GetModelCustomizationJobOutput { + s.OutputModelKmsKeyArn = &v + return s +} + +// SetOutputModelName sets the OutputModelName field's value. +func (s *GetModelCustomizationJobOutput) SetOutputModelName(v string) *GetModelCustomizationJobOutput { + s.OutputModelName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *GetModelCustomizationJobOutput) SetRoleArn(v string) *GetModelCustomizationJobOutput { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetModelCustomizationJobOutput) SetStatus(v string) *GetModelCustomizationJobOutput { + s.Status = &v + return s +} + +// SetTrainingDataConfig sets the TrainingDataConfig field's value. +func (s *GetModelCustomizationJobOutput) SetTrainingDataConfig(v *TrainingDataConfig) *GetModelCustomizationJobOutput { + s.TrainingDataConfig = v + return s +} + +// SetTrainingMetrics sets the TrainingMetrics field's value. +func (s *GetModelCustomizationJobOutput) SetTrainingMetrics(v *TrainingMetrics) *GetModelCustomizationJobOutput { + s.TrainingMetrics = v + return s +} + +// SetValidationDataConfig sets the ValidationDataConfig field's value. +func (s *GetModelCustomizationJobOutput) SetValidationDataConfig(v *ValidationDataConfig) *GetModelCustomizationJobOutput { + s.ValidationDataConfig = v + return s +} + +// SetValidationMetrics sets the ValidationMetrics field's value. +func (s *GetModelCustomizationJobOutput) SetValidationMetrics(v []*ValidatorMetric) *GetModelCustomizationJobOutput { + s.ValidationMetrics = v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *GetModelCustomizationJobOutput) SetVpcConfig(v *VpcConfig) *GetModelCustomizationJobOutput { + s.VpcConfig = v + return s +} + +type GetModelInvocationLoggingConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"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 GetModelInvocationLoggingConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelInvocationLoggingConfigurationInput) GoString() string { + return s.String() +} + +type GetModelInvocationLoggingConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The current configuration values. + LoggingConfig *LoggingConfig `locationName:"loggingConfig" 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 GetModelInvocationLoggingConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelInvocationLoggingConfigurationOutput) GoString() string { + return s.String() +} + +// SetLoggingConfig sets the LoggingConfig field's value. +func (s *GetModelInvocationLoggingConfigurationOutput) SetLoggingConfig(v *LoggingConfig) *GetModelInvocationLoggingConfigurationOutput { + s.LoggingConfig = v + return s +} + +type GetProvisionedModelThroughputInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN or name of the provisioned throughput. + // + // ProvisionedModelId is a required field + ProvisionedModelId *string `location:"uri" locationName:"provisionedModelId" 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 GetProvisionedModelThroughputInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProvisionedModelThroughputInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetProvisionedModelThroughputInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetProvisionedModelThroughputInput"} + if s.ProvisionedModelId == nil { + invalidParams.Add(request.NewErrParamRequired("ProvisionedModelId")) + } + if s.ProvisionedModelId != nil && len(*s.ProvisionedModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProvisionedModelId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProvisionedModelId sets the ProvisionedModelId field's value. +func (s *GetProvisionedModelThroughputInput) SetProvisionedModelId(v string) *GetProvisionedModelThroughputInput { + s.ProvisionedModelId = &v + return s +} + +type GetProvisionedModelThroughputOutput struct { + _ struct{} `type:"structure"` + + // Commitment duration of the provisioned throughput. + CommitmentDuration *string `locationName:"commitmentDuration" type:"string" enum:"CommitmentDuration"` + + // Commitment expiration time for the provisioned throughput. + CommitmentExpirationTime *time.Time `locationName:"commitmentExpirationTime" type:"timestamp" timestampFormat:"iso8601"` + + // The timestamp of the creation time for this provisioned throughput. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The ARN of the new model to asssociate with this provisioned throughput. + // + // DesiredModelArn is a required field + DesiredModelArn *string `locationName:"desiredModelArn" min:"20" type:"string" required:"true"` + + // The desired number of model units that was requested to be available for + // this provisioned throughput. + // + // DesiredModelUnits is a required field + DesiredModelUnits *int64 `locationName:"desiredModelUnits" min:"1" type:"integer" required:"true"` + + // Failure message for any issues that the create operation encounters. + FailureMessage *string `locationName:"failureMessage" type:"string"` + + // ARN of the foundation model. + // + // FoundationModelArn is a required field + FoundationModelArn *string `locationName:"foundationModelArn" type:"string" required:"true"` + + // The timestamp of the last modified time of this provisioned throughput. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The ARN or name of the model associated with this provisioned throughput. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" min:"20" type:"string" required:"true"` + + // The current number of model units requested to be available for this provisioned + // throughput. + // + // ModelUnits is a required field + ModelUnits *int64 `locationName:"modelUnits" min:"1" type:"integer" required:"true"` + + // The ARN of the provisioned throughput. + // + // ProvisionedModelArn is a required field + ProvisionedModelArn *string `locationName:"provisionedModelArn" type:"string" required:"true"` + + // The name of the provisioned throughput. + // + // ProvisionedModelName is a required field + ProvisionedModelName *string `locationName:"provisionedModelName" min:"1" type:"string" required:"true"` + + // Status of the provisioned throughput. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ProvisionedModelStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProvisionedModelThroughputOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProvisionedModelThroughputOutput) GoString() string { + return s.String() +} + +// SetCommitmentDuration sets the CommitmentDuration field's value. +func (s *GetProvisionedModelThroughputOutput) SetCommitmentDuration(v string) *GetProvisionedModelThroughputOutput { + s.CommitmentDuration = &v + return s +} + +// SetCommitmentExpirationTime sets the CommitmentExpirationTime field's value. +func (s *GetProvisionedModelThroughputOutput) SetCommitmentExpirationTime(v time.Time) *GetProvisionedModelThroughputOutput { + s.CommitmentExpirationTime = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetProvisionedModelThroughputOutput) SetCreationTime(v time.Time) *GetProvisionedModelThroughputOutput { + s.CreationTime = &v + return s +} + +// SetDesiredModelArn sets the DesiredModelArn field's value. +func (s *GetProvisionedModelThroughputOutput) SetDesiredModelArn(v string) *GetProvisionedModelThroughputOutput { + s.DesiredModelArn = &v + return s +} + +// SetDesiredModelUnits sets the DesiredModelUnits field's value. +func (s *GetProvisionedModelThroughputOutput) SetDesiredModelUnits(v int64) *GetProvisionedModelThroughputOutput { + s.DesiredModelUnits = &v + return s +} + +// SetFailureMessage sets the FailureMessage field's value. +func (s *GetProvisionedModelThroughputOutput) SetFailureMessage(v string) *GetProvisionedModelThroughputOutput { + s.FailureMessage = &v + return s +} + +// SetFoundationModelArn sets the FoundationModelArn field's value. +func (s *GetProvisionedModelThroughputOutput) SetFoundationModelArn(v string) *GetProvisionedModelThroughputOutput { + s.FoundationModelArn = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *GetProvisionedModelThroughputOutput) SetLastModifiedTime(v time.Time) *GetProvisionedModelThroughputOutput { + s.LastModifiedTime = &v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *GetProvisionedModelThroughputOutput) SetModelArn(v string) *GetProvisionedModelThroughputOutput { + s.ModelArn = &v + return s +} + +// SetModelUnits sets the ModelUnits field's value. +func (s *GetProvisionedModelThroughputOutput) SetModelUnits(v int64) *GetProvisionedModelThroughputOutput { + s.ModelUnits = &v + return s +} + +// SetProvisionedModelArn sets the ProvisionedModelArn field's value. +func (s *GetProvisionedModelThroughputOutput) SetProvisionedModelArn(v string) *GetProvisionedModelThroughputOutput { + s.ProvisionedModelArn = &v + return s +} + +// SetProvisionedModelName sets the ProvisionedModelName field's value. +func (s *GetProvisionedModelThroughputOutput) SetProvisionedModelName(v string) *GetProvisionedModelThroughputOutput { + s.ProvisionedModelName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetProvisionedModelThroughputOutput) SetStatus(v string) *GetProvisionedModelThroughputOutput { + s.Status = &v + return s +} + +// An internal server error occurred. Retry your request. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListCustomModelsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Return custom models only if the base model ARN matches this parameter. + BaseModelArnEquals *string `location:"querystring" locationName:"baseModelArnEquals" min:"20" type:"string"` + + // Return custom models created after the specified time. + CreationTimeAfter *time.Time `location:"querystring" locationName:"creationTimeAfter" type:"timestamp" timestampFormat:"iso8601"` + + // Return custom models created before the specified time. + CreationTimeBefore *time.Time `location:"querystring" locationName:"creationTimeBefore" type:"timestamp" timestampFormat:"iso8601"` + + // Return custom models only if the foundation model ARN matches this parameter. + FoundationModelArnEquals *string `location:"querystring" locationName:"foundationModelArnEquals" type:"string"` + + // Maximum number of results to return in the response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Return custom models only if the job name contains these characters. + NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` + + // Continuation token from the previous response, for Amazon Bedrock to list + // the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The field to sort by in the returned list of models. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortModelsBy"` + + // The sort order of the results. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomModelsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomModelsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCustomModelsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCustomModelsInput"} + if s.BaseModelArnEquals != nil && len(*s.BaseModelArnEquals) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BaseModelArnEquals", 20)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NameContains != nil && len(*s.NameContains) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaseModelArnEquals sets the BaseModelArnEquals field's value. +func (s *ListCustomModelsInput) SetBaseModelArnEquals(v string) *ListCustomModelsInput { + s.BaseModelArnEquals = &v + return s +} + +// SetCreationTimeAfter sets the CreationTimeAfter field's value. +func (s *ListCustomModelsInput) SetCreationTimeAfter(v time.Time) *ListCustomModelsInput { + s.CreationTimeAfter = &v + return s +} + +// SetCreationTimeBefore sets the CreationTimeBefore field's value. +func (s *ListCustomModelsInput) SetCreationTimeBefore(v time.Time) *ListCustomModelsInput { + s.CreationTimeBefore = &v + return s +} + +// SetFoundationModelArnEquals sets the FoundationModelArnEquals field's value. +func (s *ListCustomModelsInput) SetFoundationModelArnEquals(v string) *ListCustomModelsInput { + s.FoundationModelArnEquals = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCustomModelsInput) SetMaxResults(v int64) *ListCustomModelsInput { + s.MaxResults = &v + return s +} + +// SetNameContains sets the NameContains field's value. +func (s *ListCustomModelsInput) SetNameContains(v string) *ListCustomModelsInput { + s.NameContains = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCustomModelsInput) SetNextToken(v string) *ListCustomModelsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListCustomModelsInput) SetSortBy(v string) *ListCustomModelsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListCustomModelsInput) SetSortOrder(v string) *ListCustomModelsInput { + s.SortOrder = &v + return s +} + +type ListCustomModelsOutput struct { + _ struct{} `type:"structure"` + + // Model summaries. + ModelSummaries []*CustomModelSummary `locationName:"modelSummaries" type:"list"` + + // Continuation token for the next request to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomModelsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomModelsOutput) GoString() string { + return s.String() +} + +// SetModelSummaries sets the ModelSummaries field's value. +func (s *ListCustomModelsOutput) SetModelSummaries(v []*CustomModelSummary) *ListCustomModelsOutput { + s.ModelSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCustomModelsOutput) SetNextToken(v string) *ListCustomModelsOutput { + s.NextToken = &v + return s +} + +type ListFoundationModelsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // List by customization type. + ByCustomizationType *string `location:"querystring" locationName:"byCustomizationType" type:"string" enum:"ModelCustomization"` + + // List by inference type. + ByInferenceType *string `location:"querystring" locationName:"byInferenceType" type:"string" enum:"InferenceType"` + + // List by output modality type. + ByOutputModality *string `location:"querystring" locationName:"byOutputModality" type:"string" enum:"ModelModality"` + + // A Amazon Bedrock model provider. + ByProvider *string `location:"querystring" locationName:"byProvider" 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 ListFoundationModelsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFoundationModelsInput) GoString() string { + return s.String() +} + +// SetByCustomizationType sets the ByCustomizationType field's value. +func (s *ListFoundationModelsInput) SetByCustomizationType(v string) *ListFoundationModelsInput { + s.ByCustomizationType = &v + return s +} + +// SetByInferenceType sets the ByInferenceType field's value. +func (s *ListFoundationModelsInput) SetByInferenceType(v string) *ListFoundationModelsInput { + s.ByInferenceType = &v + return s +} + +// SetByOutputModality sets the ByOutputModality field's value. +func (s *ListFoundationModelsInput) SetByOutputModality(v string) *ListFoundationModelsInput { + s.ByOutputModality = &v + return s +} + +// SetByProvider sets the ByProvider field's value. +func (s *ListFoundationModelsInput) SetByProvider(v string) *ListFoundationModelsInput { + s.ByProvider = &v + return s +} + +type ListFoundationModelsOutput struct { + _ struct{} `type:"structure"` + + // A list of Amazon Bedrock foundation models. + ModelSummaries []*FoundationModelSummary `locationName:"modelSummaries" 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 ListFoundationModelsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFoundationModelsOutput) GoString() string { + return s.String() +} + +// SetModelSummaries sets the ModelSummaries field's value. +func (s *ListFoundationModelsOutput) SetModelSummaries(v []*FoundationModelSummary) *ListFoundationModelsOutput { + s.ModelSummaries = v + return s +} + +type ListModelCustomizationJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Return customization jobs created after the specified time. + CreationTimeAfter *time.Time `location:"querystring" locationName:"creationTimeAfter" type:"timestamp" timestampFormat:"iso8601"` + + // Return customization jobs created before the specified time. + CreationTimeBefore *time.Time `location:"querystring" locationName:"creationTimeBefore" type:"timestamp" timestampFormat:"iso8601"` + + // Maximum number of results to return in the response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Return customization jobs only if the job name contains these characters. + NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` + + // Continuation token from the previous response, for Amazon Bedrock to list + // the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The field to sort by in the returned list of jobs. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortJobsBy"` + + // The sort order of the results. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` + + // Return customization jobs with the specified status. + StatusEquals *string `location:"querystring" locationName:"statusEquals" type:"string" enum:"FineTuningJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelCustomizationJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelCustomizationJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListModelCustomizationJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListModelCustomizationJobsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NameContains != nil && len(*s.NameContains) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreationTimeAfter sets the CreationTimeAfter field's value. +func (s *ListModelCustomizationJobsInput) SetCreationTimeAfter(v time.Time) *ListModelCustomizationJobsInput { + s.CreationTimeAfter = &v + return s +} + +// SetCreationTimeBefore sets the CreationTimeBefore field's value. +func (s *ListModelCustomizationJobsInput) SetCreationTimeBefore(v time.Time) *ListModelCustomizationJobsInput { + s.CreationTimeBefore = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListModelCustomizationJobsInput) SetMaxResults(v int64) *ListModelCustomizationJobsInput { + s.MaxResults = &v + return s +} + +// SetNameContains sets the NameContains field's value. +func (s *ListModelCustomizationJobsInput) SetNameContains(v string) *ListModelCustomizationJobsInput { + s.NameContains = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListModelCustomizationJobsInput) SetNextToken(v string) *ListModelCustomizationJobsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListModelCustomizationJobsInput) SetSortBy(v string) *ListModelCustomizationJobsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListModelCustomizationJobsInput) SetSortOrder(v string) *ListModelCustomizationJobsInput { + s.SortOrder = &v + return s +} + +// SetStatusEquals sets the StatusEquals field's value. +func (s *ListModelCustomizationJobsInput) SetStatusEquals(v string) *ListModelCustomizationJobsInput { + s.StatusEquals = &v + return s +} + +type ListModelCustomizationJobsOutput struct { + _ struct{} `type:"structure"` + + // Job summaries. + ModelCustomizationJobSummaries []*ModelCustomizationJobSummary `locationName:"modelCustomizationJobSummaries" type:"list"` + + // Page continuation token to use in the next request. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelCustomizationJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelCustomizationJobsOutput) GoString() string { + return s.String() +} + +// SetModelCustomizationJobSummaries sets the ModelCustomizationJobSummaries field's value. +func (s *ListModelCustomizationJobsOutput) SetModelCustomizationJobSummaries(v []*ModelCustomizationJobSummary) *ListModelCustomizationJobsOutput { + s.ModelCustomizationJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListModelCustomizationJobsOutput) SetNextToken(v string) *ListModelCustomizationJobsOutput { + s.NextToken = &v + return s +} + +type ListProvisionedModelThroughputsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Return provisioned capacities created after the specified time. + CreationTimeAfter *time.Time `location:"querystring" locationName:"creationTimeAfter" type:"timestamp" timestampFormat:"iso8601"` + + // Return provisioned capacities created before the specified time. + CreationTimeBefore *time.Time `location:"querystring" locationName:"creationTimeBefore" type:"timestamp" timestampFormat:"iso8601"` + + // THe maximum number of results to return in the response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Return the list of provisioned capacities where their model ARN is equal + // to this parameter. + ModelArnEquals *string `location:"querystring" locationName:"modelArnEquals" min:"20" type:"string"` + + // Return the list of provisioned capacities if their name contains these characters. + NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` + + // Continuation token from the previous response, for Amazon Bedrock to list + // the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The field to sort by in the returned list of provisioned capacities. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortByProvisionedModels"` + + // The sort order of the results. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` + + // Return the list of provisioned capacities that match the specified status. + StatusEquals *string `location:"querystring" locationName:"statusEquals" type:"string" enum:"ProvisionedModelStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProvisionedModelThroughputsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProvisionedModelThroughputsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProvisionedModelThroughputsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProvisionedModelThroughputsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ModelArnEquals != nil && len(*s.ModelArnEquals) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ModelArnEquals", 20)) + } + if s.NameContains != nil && len(*s.NameContains) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreationTimeAfter sets the CreationTimeAfter field's value. +func (s *ListProvisionedModelThroughputsInput) SetCreationTimeAfter(v time.Time) *ListProvisionedModelThroughputsInput { + s.CreationTimeAfter = &v + return s +} + +// SetCreationTimeBefore sets the CreationTimeBefore field's value. +func (s *ListProvisionedModelThroughputsInput) SetCreationTimeBefore(v time.Time) *ListProvisionedModelThroughputsInput { + s.CreationTimeBefore = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProvisionedModelThroughputsInput) SetMaxResults(v int64) *ListProvisionedModelThroughputsInput { + s.MaxResults = &v + return s +} + +// SetModelArnEquals sets the ModelArnEquals field's value. +func (s *ListProvisionedModelThroughputsInput) SetModelArnEquals(v string) *ListProvisionedModelThroughputsInput { + s.ModelArnEquals = &v + return s +} + +// SetNameContains sets the NameContains field's value. +func (s *ListProvisionedModelThroughputsInput) SetNameContains(v string) *ListProvisionedModelThroughputsInput { + s.NameContains = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProvisionedModelThroughputsInput) SetNextToken(v string) *ListProvisionedModelThroughputsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListProvisionedModelThroughputsInput) SetSortBy(v string) *ListProvisionedModelThroughputsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListProvisionedModelThroughputsInput) SetSortOrder(v string) *ListProvisionedModelThroughputsInput { + s.SortOrder = &v + return s +} + +// SetStatusEquals sets the StatusEquals field's value. +func (s *ListProvisionedModelThroughputsInput) SetStatusEquals(v string) *ListProvisionedModelThroughputsInput { + s.StatusEquals = &v + return s +} + +type ListProvisionedModelThroughputsOutput struct { + _ struct{} `type:"structure"` + + // Continuation token for the next request to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // List of summaries, one for each provisioned throughput in the response. + ProvisionedModelSummaries []*ProvisionedModelSummary `locationName:"provisionedModelSummaries" 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 ListProvisionedModelThroughputsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProvisionedModelThroughputsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProvisionedModelThroughputsOutput) SetNextToken(v string) *ListProvisionedModelThroughputsOutput { + s.NextToken = &v + return s +} + +// SetProvisionedModelSummaries sets the ProvisionedModelSummaries field's value. +func (s *ListProvisionedModelThroughputsOutput) SetProvisionedModelSummaries(v []*ProvisionedModelSummary) *ListProvisionedModelThroughputsOutput { + s.ProvisionedModelSummaries = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource. + // + // ResourceARN is a required field + ResourceARN *string `locationName:"resourceARN" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 20)) + } + + 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"` + + // An array of the tags associated with this 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 +} + +// Configuration fields for invokation logging. +type LoggingConfig struct { + _ struct{} `type:"structure"` + + // CloudWatch logging configuration. + CloudWatchConfig *CloudWatchConfig `locationName:"cloudWatchConfig" type:"structure"` + + // Set to include embeddings data in the log delivery. + EmbeddingDataDeliveryEnabled *bool `locationName:"embeddingDataDeliveryEnabled" type:"boolean"` + + // Set to include image data in the log delivery. + ImageDataDeliveryEnabled *bool `locationName:"imageDataDeliveryEnabled" type:"boolean"` + + // S3 configuration for storing log data. + S3Config *S3Config `locationName:"s3Config" type:"structure"` + + // Set to include text data in the log delivery. + TextDataDeliveryEnabled *bool `locationName:"textDataDeliveryEnabled" 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 LoggingConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LoggingConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LoggingConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"} + if s.CloudWatchConfig != nil { + if err := s.CloudWatchConfig.Validate(); err != nil { + invalidParams.AddNested("CloudWatchConfig", err.(request.ErrInvalidParams)) + } + } + if s.S3Config != nil { + if err := s.S3Config.Validate(); err != nil { + invalidParams.AddNested("S3Config", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCloudWatchConfig sets the CloudWatchConfig field's value. +func (s *LoggingConfig) SetCloudWatchConfig(v *CloudWatchConfig) *LoggingConfig { + s.CloudWatchConfig = v + return s +} + +// SetEmbeddingDataDeliveryEnabled sets the EmbeddingDataDeliveryEnabled field's value. +func (s *LoggingConfig) SetEmbeddingDataDeliveryEnabled(v bool) *LoggingConfig { + s.EmbeddingDataDeliveryEnabled = &v + return s +} + +// SetImageDataDeliveryEnabled sets the ImageDataDeliveryEnabled field's value. +func (s *LoggingConfig) SetImageDataDeliveryEnabled(v bool) *LoggingConfig { + s.ImageDataDeliveryEnabled = &v + return s +} + +// SetS3Config sets the S3Config field's value. +func (s *LoggingConfig) SetS3Config(v *S3Config) *LoggingConfig { + s.S3Config = v + return s +} + +// SetTextDataDeliveryEnabled sets the TextDataDeliveryEnabled field's value. +func (s *LoggingConfig) SetTextDataDeliveryEnabled(v bool) *LoggingConfig { + s.TextDataDeliveryEnabled = &v + return s +} + +// Information about one customization job +type ModelCustomizationJobSummary struct { + _ struct{} `type:"structure"` + + // ARN of the base model. + // + // BaseModelArn is a required field + BaseModelArn *string `locationName:"baseModelArn" min:"20" type:"string" required:"true"` + + // Creation time of the custom model. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // ARN of the custom model. + CustomModelArn *string `locationName:"customModelArn" min:"20" type:"string"` + + // Name of the custom model. + CustomModelName *string `locationName:"customModelName" min:"1" type:"string"` + + // Specifies whether to carry out continued pre-training of a model or whether + // to fine-tune it. For more information, see Custom models (https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html). + CustomizationType *string `locationName:"customizationType" type:"string" enum:"CustomizationType"` + + // Time that the customization job ended. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // ARN of the customization job. + // + // JobArn is a required field + JobArn *string `locationName:"jobArn" type:"string" required:"true"` + + // Name of the customization job. + // + // JobName is a required field + JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"` + + // Time that the customization job was last modified. + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"iso8601"` + + // Status of the customization job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ModelCustomizationJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelCustomizationJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelCustomizationJobSummary) GoString() string { + return s.String() +} + +// SetBaseModelArn sets the BaseModelArn field's value. +func (s *ModelCustomizationJobSummary) SetBaseModelArn(v string) *ModelCustomizationJobSummary { + s.BaseModelArn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *ModelCustomizationJobSummary) SetCreationTime(v time.Time) *ModelCustomizationJobSummary { + s.CreationTime = &v + return s +} + +// SetCustomModelArn sets the CustomModelArn field's value. +func (s *ModelCustomizationJobSummary) SetCustomModelArn(v string) *ModelCustomizationJobSummary { + s.CustomModelArn = &v + return s +} + +// SetCustomModelName sets the CustomModelName field's value. +func (s *ModelCustomizationJobSummary) SetCustomModelName(v string) *ModelCustomizationJobSummary { + s.CustomModelName = &v + return s +} + +// SetCustomizationType sets the CustomizationType field's value. +func (s *ModelCustomizationJobSummary) SetCustomizationType(v string) *ModelCustomizationJobSummary { + s.CustomizationType = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *ModelCustomizationJobSummary) SetEndTime(v time.Time) *ModelCustomizationJobSummary { + s.EndTime = &v + return s +} + +// SetJobArn sets the JobArn field's value. +func (s *ModelCustomizationJobSummary) SetJobArn(v string) *ModelCustomizationJobSummary { + s.JobArn = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *ModelCustomizationJobSummary) SetJobName(v string) *ModelCustomizationJobSummary { + s.JobName = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ModelCustomizationJobSummary) SetLastModifiedTime(v time.Time) *ModelCustomizationJobSummary { + s.LastModifiedTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ModelCustomizationJobSummary) SetStatus(v string) *ModelCustomizationJobSummary { + s.Status = &v + return s +} + +// S3 Location of the output data. +type OutputDataConfig struct { + _ struct{} `type:"structure"` + + // The S3 URI where the output data is stored. + // + // S3Uri is a required field + S3Uri *string `locationName:"s3Uri" 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 OutputDataConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OutputDataConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OutputDataConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OutputDataConfig"} + if s.S3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("S3Uri")) + } + if s.S3Uri != nil && len(*s.S3Uri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3Uri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Uri sets the S3Uri field's value. +func (s *OutputDataConfig) SetS3Uri(v string) *OutputDataConfig { + s.S3Uri = &v + return s +} + +// Set of fields associated with a provisioned throughput. +type ProvisionedModelSummary struct { + _ struct{} `type:"structure"` + + // Commitment duration for the provisioned throughput. + CommitmentDuration *string `locationName:"commitmentDuration" type:"string" enum:"CommitmentDuration"` + + // Commitment expiration time for the provisioned throughput. + CommitmentExpirationTime *time.Time `locationName:"commitmentExpirationTime" type:"timestamp" timestampFormat:"iso8601"` + + // The time that this provisioned throughput was created. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Desired model ARN. + // + // DesiredModelArn is a required field + DesiredModelArn *string `locationName:"desiredModelArn" min:"20" type:"string" required:"true"` + + // Desired model units. + // + // DesiredModelUnits is a required field + DesiredModelUnits *int64 `locationName:"desiredModelUnits" min:"1" type:"integer" required:"true"` + + // Foundation model ARN. + // + // FoundationModelArn is a required field + FoundationModelArn *string `locationName:"foundationModelArn" type:"string" required:"true"` + + // The time that this provisioned throughput was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The ARN of the model associated with this provisioned throughput. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" min:"20" type:"string" required:"true"` + + // The number of model units allocated. + // + // ModelUnits is a required field + ModelUnits *int64 `locationName:"modelUnits" min:"1" type:"integer" required:"true"` + + // The ARN of the provisioned throughput. + // + // ProvisionedModelArn is a required field + ProvisionedModelArn *string `locationName:"provisionedModelArn" type:"string" required:"true"` + + // The name of the provisioned throughput. + // + // ProvisionedModelName is a required field + ProvisionedModelName *string `locationName:"provisionedModelName" min:"1" type:"string" required:"true"` + + // Status of the provisioned throughput. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ProvisionedModelStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProvisionedModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProvisionedModelSummary) GoString() string { + return s.String() +} + +// SetCommitmentDuration sets the CommitmentDuration field's value. +func (s *ProvisionedModelSummary) SetCommitmentDuration(v string) *ProvisionedModelSummary { + s.CommitmentDuration = &v + return s +} + +// SetCommitmentExpirationTime sets the CommitmentExpirationTime field's value. +func (s *ProvisionedModelSummary) SetCommitmentExpirationTime(v time.Time) *ProvisionedModelSummary { + s.CommitmentExpirationTime = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *ProvisionedModelSummary) SetCreationTime(v time.Time) *ProvisionedModelSummary { + s.CreationTime = &v + return s +} + +// SetDesiredModelArn sets the DesiredModelArn field's value. +func (s *ProvisionedModelSummary) SetDesiredModelArn(v string) *ProvisionedModelSummary { + s.DesiredModelArn = &v + return s +} + +// SetDesiredModelUnits sets the DesiredModelUnits field's value. +func (s *ProvisionedModelSummary) SetDesiredModelUnits(v int64) *ProvisionedModelSummary { + s.DesiredModelUnits = &v + return s +} + +// SetFoundationModelArn sets the FoundationModelArn field's value. +func (s *ProvisionedModelSummary) SetFoundationModelArn(v string) *ProvisionedModelSummary { + s.FoundationModelArn = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ProvisionedModelSummary) SetLastModifiedTime(v time.Time) *ProvisionedModelSummary { + s.LastModifiedTime = &v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *ProvisionedModelSummary) SetModelArn(v string) *ProvisionedModelSummary { + s.ModelArn = &v + return s +} + +// SetModelUnits sets the ModelUnits field's value. +func (s *ProvisionedModelSummary) SetModelUnits(v int64) *ProvisionedModelSummary { + s.ModelUnits = &v + return s +} + +// SetProvisionedModelArn sets the ProvisionedModelArn field's value. +func (s *ProvisionedModelSummary) SetProvisionedModelArn(v string) *ProvisionedModelSummary { + s.ProvisionedModelArn = &v + return s +} + +// SetProvisionedModelName sets the ProvisionedModelName field's value. +func (s *ProvisionedModelSummary) SetProvisionedModelName(v string) *ProvisionedModelSummary { + s.ProvisionedModelName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ProvisionedModelSummary) SetStatus(v string) *ProvisionedModelSummary { + s.Status = &v + return s +} + +type PutModelInvocationLoggingConfigurationInput struct { + _ struct{} `type:"structure"` + + // The logging configuration values to set. + // + // LoggingConfig is a required field + LoggingConfig *LoggingConfig `locationName:"loggingConfig" 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 PutModelInvocationLoggingConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutModelInvocationLoggingConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutModelInvocationLoggingConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutModelInvocationLoggingConfigurationInput"} + if s.LoggingConfig == nil { + invalidParams.Add(request.NewErrParamRequired("LoggingConfig")) + } + if s.LoggingConfig != nil { + if err := s.LoggingConfig.Validate(); err != nil { + invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLoggingConfig sets the LoggingConfig field's value. +func (s *PutModelInvocationLoggingConfigurationInput) SetLoggingConfig(v *LoggingConfig) *PutModelInvocationLoggingConfigurationInput { + s.LoggingConfig = v + return s +} + +type PutModelInvocationLoggingConfigurationOutput 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 PutModelInvocationLoggingConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutModelInvocationLoggingConfigurationOutput) GoString() string { + return s.String() +} + +// The specified resource ARN was not found. Check the ARN and try your request +// again. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// S3 configuration for storing log data. +type S3Config struct { + _ struct{} `type:"structure"` + + // S3 bucket name. + // + // BucketName is a required field + BucketName *string `locationName:"bucketName" min:"3" type:"string" required:"true"` + + // S3 prefix. + KeyPrefix *string `locationName:"keyPrefix" 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 S3Config) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Config) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Config) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Config"} + if s.BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("BucketName")) + } + if s.BucketName != nil && len(*s.BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketName sets the BucketName field's value. +func (s *S3Config) SetBucketName(v string) *S3Config { + s.BucketName = &v + return s +} + +// SetKeyPrefix sets the KeyPrefix field's value. +func (s *S3Config) SetKeyPrefix(v string) *S3Config { + s.KeyPrefix = &v + return s +} + +// The number of requests exceeds the service quota. Resubmit your request later. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type StopModelCustomizationJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Job identifier of the job to stop. + // + // JobIdentifier is a required field + JobIdentifier *string `location:"uri" locationName:"jobIdentifier" 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 StopModelCustomizationJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopModelCustomizationJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopModelCustomizationJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopModelCustomizationJobInput"} + if s.JobIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("JobIdentifier")) + } + if s.JobIdentifier != nil && len(*s.JobIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobIdentifier sets the JobIdentifier field's value. +func (s *StopModelCustomizationJobInput) SetJobIdentifier(v string) *StopModelCustomizationJobInput { + s.JobIdentifier = &v + return s +} + +type StopModelCustomizationJobOutput 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 StopModelCustomizationJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopModelCustomizationJobOutput) GoString() string { + return s.String() +} + +// Definition of the key/value pair for a tag. +type Tag struct { + _ struct{} `type:"structure"` + + // Key for the tag. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + // Value for 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 ARN of the resource to tag. + // + // ResourceARN is a required field + ResourceARN *string `locationName:"resourceARN" min:"20" type:"string" required:"true"` + + // Tags to associate with 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 20)) + } + 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 number of requests exceeds the limit. Resubmit your request later. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request contains more tags than can be associated with a resource (50 +// tags per resource). The maximum number of tags includes both existing tags +// and those included in your current request. +type TooManyTagsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The name of the resource with too many tags. + ResourceName *string `locationName:"resourceName" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 +} + +// S3 Location of the training data. +type TrainingDataConfig struct { + _ struct{} `type:"structure"` + + // The S3 URI where the training data is stored. + // + // S3Uri is a required field + S3Uri *string `locationName:"s3Uri" 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 TrainingDataConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrainingDataConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrainingDataConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrainingDataConfig"} + if s.S3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("S3Uri")) + } + if s.S3Uri != nil && len(*s.S3Uri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3Uri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Uri sets the S3Uri field's value. +func (s *TrainingDataConfig) SetS3Uri(v string) *TrainingDataConfig { + s.S3Uri = &v + return s +} + +// Metrics associated with the custom job. +type TrainingMetrics struct { + _ struct{} `type:"structure"` + + // Loss metric associated with the custom job. + TrainingLoss *float64 `locationName:"trainingLoss" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrainingMetrics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrainingMetrics) GoString() string { + return s.String() +} + +// SetTrainingLoss sets the TrainingLoss field's value. +func (s *TrainingMetrics) SetTrainingLoss(v float64) *TrainingMetrics { + s.TrainingLoss = &v + return s +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource to untag. + // + // ResourceARN is a required field + ResourceARN *string `locationName:"resourceARN" min:"20" type:"string" required:"true"` + + // Tag keys of the 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 20)) + } + 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 UpdateProvisionedModelThroughputInput struct { + _ struct{} `type:"structure"` + + // The ARN of the new model to associate with this provisioned throughput. + DesiredModelId *string `locationName:"desiredModelId" min:"1" type:"string"` + + // The new name for this provisioned throughput. + DesiredProvisionedModelName *string `locationName:"desiredProvisionedModelName" min:"1" type:"string"` + + // The ARN or name of the provisioned throughput to update. + // + // ProvisionedModelId is a required field + ProvisionedModelId *string `location:"uri" locationName:"provisionedModelId" 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 UpdateProvisionedModelThroughputInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProvisionedModelThroughputInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateProvisionedModelThroughputInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateProvisionedModelThroughputInput"} + if s.DesiredModelId != nil && len(*s.DesiredModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DesiredModelId", 1)) + } + if s.DesiredProvisionedModelName != nil && len(*s.DesiredProvisionedModelName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DesiredProvisionedModelName", 1)) + } + if s.ProvisionedModelId == nil { + invalidParams.Add(request.NewErrParamRequired("ProvisionedModelId")) + } + if s.ProvisionedModelId != nil && len(*s.ProvisionedModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProvisionedModelId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDesiredModelId sets the DesiredModelId field's value. +func (s *UpdateProvisionedModelThroughputInput) SetDesiredModelId(v string) *UpdateProvisionedModelThroughputInput { + s.DesiredModelId = &v + return s +} + +// SetDesiredProvisionedModelName sets the DesiredProvisionedModelName field's value. +func (s *UpdateProvisionedModelThroughputInput) SetDesiredProvisionedModelName(v string) *UpdateProvisionedModelThroughputInput { + s.DesiredProvisionedModelName = &v + return s +} + +// SetProvisionedModelId sets the ProvisionedModelId field's value. +func (s *UpdateProvisionedModelThroughputInput) SetProvisionedModelId(v string) *UpdateProvisionedModelThroughputInput { + s.ProvisionedModelId = &v + return s +} + +type UpdateProvisionedModelThroughputOutput 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 UpdateProvisionedModelThroughputOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProvisionedModelThroughputOutput) GoString() string { + return s.String() +} + +// Array of up to 10 validators. +type ValidationDataConfig struct { + _ struct{} `type:"structure"` + + // Information about the validators. + // + // Validators is a required field + Validators []*Validator `locationName:"validators" 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 ValidationDataConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationDataConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ValidationDataConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ValidationDataConfig"} + if s.Validators == nil { + invalidParams.Add(request.NewErrParamRequired("Validators")) + } + if s.Validators != nil { + for i, v := range s.Validators { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Validators", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValidators sets the Validators field's value. +func (s *ValidationDataConfig) SetValidators(v []*Validator) *ValidationDataConfig { + s.Validators = v + return s +} + +// Input validation failed. Check your request parameters and retry the request. +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 +} + +// Information about a validator. +type Validator struct { + _ struct{} `type:"structure"` + + // The S3 URI where the validation data is stored. + // + // S3Uri is a required field + S3Uri *string `locationName:"s3Uri" 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 Validator) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Validator) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Validator) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Validator"} + if s.S3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("S3Uri")) + } + if s.S3Uri != nil && len(*s.S3Uri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3Uri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Uri sets the S3Uri field's value. +func (s *Validator) SetS3Uri(v string) *Validator { + s.S3Uri = &v + return s +} + +// The metric for the validator. +type ValidatorMetric struct { + _ struct{} `type:"structure"` + + // The validation loss associated with this validator. + ValidationLoss *float64 `locationName:"validationLoss" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidatorMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidatorMetric) GoString() string { + return s.String() +} + +// SetValidationLoss sets the ValidationLoss field's value. +func (s *ValidatorMetric) SetValidationLoss(v float64) *ValidatorMetric { + s.ValidationLoss = &v + return s +} + +// VPC configuration. +type VpcConfig struct { + _ struct{} `type:"structure"` + + // VPC configuration security group Ids. + // + // SecurityGroupIds is a required field + SecurityGroupIds []*string `locationName:"securityGroupIds" min:"1" type:"list" required:"true"` + + // VPC configuration subnets. + // + // SubnetIds is a required field + SubnetIds []*string `locationName:"subnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VpcConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VpcConfig"} + if s.SecurityGroupIds == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds")) + } + if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1)) + } + if s.SubnetIds == nil { + invalidParams.Add(request.NewErrParamRequired("SubnetIds")) + } + if s.SubnetIds != nil && len(s.SubnetIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SubnetIds", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *VpcConfig) SetSubnetIds(v []*string) *VpcConfig { + s.SubnetIds = v + return s +} + +const ( + // CommitmentDurationOneMonth is a CommitmentDuration enum value + CommitmentDurationOneMonth = "OneMonth" + + // CommitmentDurationSixMonths is a CommitmentDuration enum value + CommitmentDurationSixMonths = "SixMonths" +) + +// CommitmentDuration_Values returns all elements of the CommitmentDuration enum +func CommitmentDuration_Values() []string { + return []string{ + CommitmentDurationOneMonth, + CommitmentDurationSixMonths, + } +} + +const ( + // CustomizationTypeFineTuning is a CustomizationType enum value + CustomizationTypeFineTuning = "FINE_TUNING" + + // CustomizationTypeContinuedPreTraining is a CustomizationType enum value + CustomizationTypeContinuedPreTraining = "CONTINUED_PRE_TRAINING" +) + +// CustomizationType_Values returns all elements of the CustomizationType enum +func CustomizationType_Values() []string { + return []string{ + CustomizationTypeFineTuning, + CustomizationTypeContinuedPreTraining, + } +} + +const ( + // FineTuningJobStatusInProgress is a FineTuningJobStatus enum value + FineTuningJobStatusInProgress = "InProgress" + + // FineTuningJobStatusCompleted is a FineTuningJobStatus enum value + FineTuningJobStatusCompleted = "Completed" + + // FineTuningJobStatusFailed is a FineTuningJobStatus enum value + FineTuningJobStatusFailed = "Failed" + + // FineTuningJobStatusStopping is a FineTuningJobStatus enum value + FineTuningJobStatusStopping = "Stopping" + + // FineTuningJobStatusStopped is a FineTuningJobStatus enum value + FineTuningJobStatusStopped = "Stopped" +) + +// FineTuningJobStatus_Values returns all elements of the FineTuningJobStatus enum +func FineTuningJobStatus_Values() []string { + return []string{ + FineTuningJobStatusInProgress, + FineTuningJobStatusCompleted, + FineTuningJobStatusFailed, + FineTuningJobStatusStopping, + FineTuningJobStatusStopped, + } +} + +const ( + // FoundationModelLifecycleStatusActive is a FoundationModelLifecycleStatus enum value + FoundationModelLifecycleStatusActive = "ACTIVE" + + // FoundationModelLifecycleStatusLegacy is a FoundationModelLifecycleStatus enum value + FoundationModelLifecycleStatusLegacy = "LEGACY" +) + +// FoundationModelLifecycleStatus_Values returns all elements of the FoundationModelLifecycleStatus enum +func FoundationModelLifecycleStatus_Values() []string { + return []string{ + FoundationModelLifecycleStatusActive, + FoundationModelLifecycleStatusLegacy, + } +} + +const ( + // InferenceTypeOnDemand is a InferenceType enum value + InferenceTypeOnDemand = "ON_DEMAND" + + // InferenceTypeProvisioned is a InferenceType enum value + InferenceTypeProvisioned = "PROVISIONED" +) + +// InferenceType_Values returns all elements of the InferenceType enum +func InferenceType_Values() []string { + return []string{ + InferenceTypeOnDemand, + InferenceTypeProvisioned, + } +} + +const ( + // ModelCustomizationFineTuning is a ModelCustomization enum value + ModelCustomizationFineTuning = "FINE_TUNING" + + // ModelCustomizationContinuedPreTraining is a ModelCustomization enum value + ModelCustomizationContinuedPreTraining = "CONTINUED_PRE_TRAINING" +) + +// ModelCustomization_Values returns all elements of the ModelCustomization enum +func ModelCustomization_Values() []string { + return []string{ + ModelCustomizationFineTuning, + ModelCustomizationContinuedPreTraining, + } +} + +const ( + // ModelCustomizationJobStatusInProgress is a ModelCustomizationJobStatus enum value + ModelCustomizationJobStatusInProgress = "InProgress" + + // ModelCustomizationJobStatusCompleted is a ModelCustomizationJobStatus enum value + ModelCustomizationJobStatusCompleted = "Completed" + + // ModelCustomizationJobStatusFailed is a ModelCustomizationJobStatus enum value + ModelCustomizationJobStatusFailed = "Failed" + + // ModelCustomizationJobStatusStopping is a ModelCustomizationJobStatus enum value + ModelCustomizationJobStatusStopping = "Stopping" + + // ModelCustomizationJobStatusStopped is a ModelCustomizationJobStatus enum value + ModelCustomizationJobStatusStopped = "Stopped" +) + +// ModelCustomizationJobStatus_Values returns all elements of the ModelCustomizationJobStatus enum +func ModelCustomizationJobStatus_Values() []string { + return []string{ + ModelCustomizationJobStatusInProgress, + ModelCustomizationJobStatusCompleted, + ModelCustomizationJobStatusFailed, + ModelCustomizationJobStatusStopping, + ModelCustomizationJobStatusStopped, + } +} + +const ( + // ModelModalityText is a ModelModality enum value + ModelModalityText = "TEXT" + + // ModelModalityImage is a ModelModality enum value + ModelModalityImage = "IMAGE" + + // ModelModalityEmbedding is a ModelModality enum value + ModelModalityEmbedding = "EMBEDDING" +) + +// ModelModality_Values returns all elements of the ModelModality enum +func ModelModality_Values() []string { + return []string{ + ModelModalityText, + ModelModalityImage, + ModelModalityEmbedding, + } +} + +const ( + // ProvisionedModelStatusCreating is a ProvisionedModelStatus enum value + ProvisionedModelStatusCreating = "Creating" + + // ProvisionedModelStatusInService is a ProvisionedModelStatus enum value + ProvisionedModelStatusInService = "InService" + + // ProvisionedModelStatusUpdating is a ProvisionedModelStatus enum value + ProvisionedModelStatusUpdating = "Updating" + + // ProvisionedModelStatusFailed is a ProvisionedModelStatus enum value + ProvisionedModelStatusFailed = "Failed" +) + +// ProvisionedModelStatus_Values returns all elements of the ProvisionedModelStatus enum +func ProvisionedModelStatus_Values() []string { + return []string{ + ProvisionedModelStatusCreating, + ProvisionedModelStatusInService, + ProvisionedModelStatusUpdating, + ProvisionedModelStatusFailed, + } +} + +const ( + // SortByProvisionedModelsCreationTime is a SortByProvisionedModels enum value + SortByProvisionedModelsCreationTime = "CreationTime" +) + +// SortByProvisionedModels_Values returns all elements of the SortByProvisionedModels enum +func SortByProvisionedModels_Values() []string { + return []string{ + SortByProvisionedModelsCreationTime, + } +} + +const ( + // SortJobsByCreationTime is a SortJobsBy enum value + SortJobsByCreationTime = "CreationTime" +) + +// SortJobsBy_Values returns all elements of the SortJobsBy enum +func SortJobsBy_Values() []string { + return []string{ + SortJobsByCreationTime, + } +} + +const ( + // SortModelsByCreationTime is a SortModelsBy enum value + SortModelsByCreationTime = "CreationTime" +) + +// SortModelsBy_Values returns all elements of the SortModelsBy enum +func SortModelsBy_Values() []string { + return []string{ + SortModelsByCreationTime, + } +} + +const ( + // SortOrderAscending is a SortOrder enum value + SortOrderAscending = "Ascending" + + // SortOrderDescending is a SortOrder enum value + SortOrderDescending = "Descending" +) + +// SortOrder_Values returns all elements of the SortOrder enum +func SortOrder_Values() []string { + return []string{ + SortOrderAscending, + SortOrderDescending, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/bedrockiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/bedrockiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/bedrockiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/bedrockiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,153 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockiface provides an interface to enable mocking the Amazon Bedrock 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 bedrockiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/bedrock" +) + +// BedrockAPI provides an interface to enable mocking the +// bedrock.Bedrock 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 +// // Amazon Bedrock. +// func myFunc(svc bedrockiface.BedrockAPI) bool { +// // Make svc.CreateModelCustomizationJob request +// } +// +// func main() { +// sess := session.New() +// svc := bedrock.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockBedrockClient struct { +// bedrockiface.BedrockAPI +// } +// func (m *mockBedrockClient) CreateModelCustomizationJob(input *bedrock.CreateModelCustomizationJobInput) (*bedrock.CreateModelCustomizationJobOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockBedrockClient{} +// +// 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 BedrockAPI interface { + CreateModelCustomizationJob(*bedrock.CreateModelCustomizationJobInput) (*bedrock.CreateModelCustomizationJobOutput, error) + CreateModelCustomizationJobWithContext(aws.Context, *bedrock.CreateModelCustomizationJobInput, ...request.Option) (*bedrock.CreateModelCustomizationJobOutput, error) + CreateModelCustomizationJobRequest(*bedrock.CreateModelCustomizationJobInput) (*request.Request, *bedrock.CreateModelCustomizationJobOutput) + + CreateProvisionedModelThroughput(*bedrock.CreateProvisionedModelThroughputInput) (*bedrock.CreateProvisionedModelThroughputOutput, error) + CreateProvisionedModelThroughputWithContext(aws.Context, *bedrock.CreateProvisionedModelThroughputInput, ...request.Option) (*bedrock.CreateProvisionedModelThroughputOutput, error) + CreateProvisionedModelThroughputRequest(*bedrock.CreateProvisionedModelThroughputInput) (*request.Request, *bedrock.CreateProvisionedModelThroughputOutput) + + DeleteCustomModel(*bedrock.DeleteCustomModelInput) (*bedrock.DeleteCustomModelOutput, error) + DeleteCustomModelWithContext(aws.Context, *bedrock.DeleteCustomModelInput, ...request.Option) (*bedrock.DeleteCustomModelOutput, error) + DeleteCustomModelRequest(*bedrock.DeleteCustomModelInput) (*request.Request, *bedrock.DeleteCustomModelOutput) + + DeleteModelInvocationLoggingConfiguration(*bedrock.DeleteModelInvocationLoggingConfigurationInput) (*bedrock.DeleteModelInvocationLoggingConfigurationOutput, error) + DeleteModelInvocationLoggingConfigurationWithContext(aws.Context, *bedrock.DeleteModelInvocationLoggingConfigurationInput, ...request.Option) (*bedrock.DeleteModelInvocationLoggingConfigurationOutput, error) + DeleteModelInvocationLoggingConfigurationRequest(*bedrock.DeleteModelInvocationLoggingConfigurationInput) (*request.Request, *bedrock.DeleteModelInvocationLoggingConfigurationOutput) + + DeleteProvisionedModelThroughput(*bedrock.DeleteProvisionedModelThroughputInput) (*bedrock.DeleteProvisionedModelThroughputOutput, error) + DeleteProvisionedModelThroughputWithContext(aws.Context, *bedrock.DeleteProvisionedModelThroughputInput, ...request.Option) (*bedrock.DeleteProvisionedModelThroughputOutput, error) + DeleteProvisionedModelThroughputRequest(*bedrock.DeleteProvisionedModelThroughputInput) (*request.Request, *bedrock.DeleteProvisionedModelThroughputOutput) + + GetCustomModel(*bedrock.GetCustomModelInput) (*bedrock.GetCustomModelOutput, error) + GetCustomModelWithContext(aws.Context, *bedrock.GetCustomModelInput, ...request.Option) (*bedrock.GetCustomModelOutput, error) + GetCustomModelRequest(*bedrock.GetCustomModelInput) (*request.Request, *bedrock.GetCustomModelOutput) + + GetFoundationModel(*bedrock.GetFoundationModelInput) (*bedrock.GetFoundationModelOutput, error) + GetFoundationModelWithContext(aws.Context, *bedrock.GetFoundationModelInput, ...request.Option) (*bedrock.GetFoundationModelOutput, error) + GetFoundationModelRequest(*bedrock.GetFoundationModelInput) (*request.Request, *bedrock.GetFoundationModelOutput) + + GetModelCustomizationJob(*bedrock.GetModelCustomizationJobInput) (*bedrock.GetModelCustomizationJobOutput, error) + GetModelCustomizationJobWithContext(aws.Context, *bedrock.GetModelCustomizationJobInput, ...request.Option) (*bedrock.GetModelCustomizationJobOutput, error) + GetModelCustomizationJobRequest(*bedrock.GetModelCustomizationJobInput) (*request.Request, *bedrock.GetModelCustomizationJobOutput) + + GetModelInvocationLoggingConfiguration(*bedrock.GetModelInvocationLoggingConfigurationInput) (*bedrock.GetModelInvocationLoggingConfigurationOutput, error) + GetModelInvocationLoggingConfigurationWithContext(aws.Context, *bedrock.GetModelInvocationLoggingConfigurationInput, ...request.Option) (*bedrock.GetModelInvocationLoggingConfigurationOutput, error) + GetModelInvocationLoggingConfigurationRequest(*bedrock.GetModelInvocationLoggingConfigurationInput) (*request.Request, *bedrock.GetModelInvocationLoggingConfigurationOutput) + + GetProvisionedModelThroughput(*bedrock.GetProvisionedModelThroughputInput) (*bedrock.GetProvisionedModelThroughputOutput, error) + GetProvisionedModelThroughputWithContext(aws.Context, *bedrock.GetProvisionedModelThroughputInput, ...request.Option) (*bedrock.GetProvisionedModelThroughputOutput, error) + GetProvisionedModelThroughputRequest(*bedrock.GetProvisionedModelThroughputInput) (*request.Request, *bedrock.GetProvisionedModelThroughputOutput) + + ListCustomModels(*bedrock.ListCustomModelsInput) (*bedrock.ListCustomModelsOutput, error) + ListCustomModelsWithContext(aws.Context, *bedrock.ListCustomModelsInput, ...request.Option) (*bedrock.ListCustomModelsOutput, error) + ListCustomModelsRequest(*bedrock.ListCustomModelsInput) (*request.Request, *bedrock.ListCustomModelsOutput) + + ListCustomModelsPages(*bedrock.ListCustomModelsInput, func(*bedrock.ListCustomModelsOutput, bool) bool) error + ListCustomModelsPagesWithContext(aws.Context, *bedrock.ListCustomModelsInput, func(*bedrock.ListCustomModelsOutput, bool) bool, ...request.Option) error + + ListFoundationModels(*bedrock.ListFoundationModelsInput) (*bedrock.ListFoundationModelsOutput, error) + ListFoundationModelsWithContext(aws.Context, *bedrock.ListFoundationModelsInput, ...request.Option) (*bedrock.ListFoundationModelsOutput, error) + ListFoundationModelsRequest(*bedrock.ListFoundationModelsInput) (*request.Request, *bedrock.ListFoundationModelsOutput) + + ListModelCustomizationJobs(*bedrock.ListModelCustomizationJobsInput) (*bedrock.ListModelCustomizationJobsOutput, error) + ListModelCustomizationJobsWithContext(aws.Context, *bedrock.ListModelCustomizationJobsInput, ...request.Option) (*bedrock.ListModelCustomizationJobsOutput, error) + ListModelCustomizationJobsRequest(*bedrock.ListModelCustomizationJobsInput) (*request.Request, *bedrock.ListModelCustomizationJobsOutput) + + ListModelCustomizationJobsPages(*bedrock.ListModelCustomizationJobsInput, func(*bedrock.ListModelCustomizationJobsOutput, bool) bool) error + ListModelCustomizationJobsPagesWithContext(aws.Context, *bedrock.ListModelCustomizationJobsInput, func(*bedrock.ListModelCustomizationJobsOutput, bool) bool, ...request.Option) error + + ListProvisionedModelThroughputs(*bedrock.ListProvisionedModelThroughputsInput) (*bedrock.ListProvisionedModelThroughputsOutput, error) + ListProvisionedModelThroughputsWithContext(aws.Context, *bedrock.ListProvisionedModelThroughputsInput, ...request.Option) (*bedrock.ListProvisionedModelThroughputsOutput, error) + ListProvisionedModelThroughputsRequest(*bedrock.ListProvisionedModelThroughputsInput) (*request.Request, *bedrock.ListProvisionedModelThroughputsOutput) + + ListProvisionedModelThroughputsPages(*bedrock.ListProvisionedModelThroughputsInput, func(*bedrock.ListProvisionedModelThroughputsOutput, bool) bool) error + ListProvisionedModelThroughputsPagesWithContext(aws.Context, *bedrock.ListProvisionedModelThroughputsInput, func(*bedrock.ListProvisionedModelThroughputsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*bedrock.ListTagsForResourceInput) (*bedrock.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *bedrock.ListTagsForResourceInput, ...request.Option) (*bedrock.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*bedrock.ListTagsForResourceInput) (*request.Request, *bedrock.ListTagsForResourceOutput) + + PutModelInvocationLoggingConfiguration(*bedrock.PutModelInvocationLoggingConfigurationInput) (*bedrock.PutModelInvocationLoggingConfigurationOutput, error) + PutModelInvocationLoggingConfigurationWithContext(aws.Context, *bedrock.PutModelInvocationLoggingConfigurationInput, ...request.Option) (*bedrock.PutModelInvocationLoggingConfigurationOutput, error) + PutModelInvocationLoggingConfigurationRequest(*bedrock.PutModelInvocationLoggingConfigurationInput) (*request.Request, *bedrock.PutModelInvocationLoggingConfigurationOutput) + + StopModelCustomizationJob(*bedrock.StopModelCustomizationJobInput) (*bedrock.StopModelCustomizationJobOutput, error) + StopModelCustomizationJobWithContext(aws.Context, *bedrock.StopModelCustomizationJobInput, ...request.Option) (*bedrock.StopModelCustomizationJobOutput, error) + StopModelCustomizationJobRequest(*bedrock.StopModelCustomizationJobInput) (*request.Request, *bedrock.StopModelCustomizationJobOutput) + + TagResource(*bedrock.TagResourceInput) (*bedrock.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *bedrock.TagResourceInput, ...request.Option) (*bedrock.TagResourceOutput, error) + TagResourceRequest(*bedrock.TagResourceInput) (*request.Request, *bedrock.TagResourceOutput) + + UntagResource(*bedrock.UntagResourceInput) (*bedrock.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *bedrock.UntagResourceInput, ...request.Option) (*bedrock.UntagResourceOutput, error) + UntagResourceRequest(*bedrock.UntagResourceInput) (*request.Request, *bedrock.UntagResourceOutput) + + UpdateProvisionedModelThroughput(*bedrock.UpdateProvisionedModelThroughputInput) (*bedrock.UpdateProvisionedModelThroughputOutput, error) + UpdateProvisionedModelThroughputWithContext(aws.Context, *bedrock.UpdateProvisionedModelThroughputInput, ...request.Option) (*bedrock.UpdateProvisionedModelThroughputOutput, error) + UpdateProvisionedModelThroughputRequest(*bedrock.UpdateProvisionedModelThroughputInput) (*request.Request, *bedrock.UpdateProvisionedModelThroughputOutput) +} + +var _ BedrockAPI = (*bedrock.Bedrock)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,28 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrock provides the client and types for making API +// requests to Amazon Bedrock. +// +// Describes the API operations for creating and managing Amazon Bedrock models. +// +// See https://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20 for more information on this service. +// +// See bedrock package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrock/ +// +// # Using the Client +// +// To contact Amazon Bedrock 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 Amazon Bedrock client Bedrock for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrock/#New +package bedrock diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,72 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrock + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // The request is denied because of missing access permissions. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Error occurred because of a conflict while performing an operation. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An internal server error occurred. Retry your request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified resource ARN was not found. Check the ARN and try your request + // again. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The number of requests exceeds the service quota. Resubmit your request later. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The number of requests exceeds the limit. Resubmit your request later. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeTooManyTagsException for service response error code + // "TooManyTagsException". + // + // The request contains more tags than can be associated with a resource (50 + // tags per resource). The maximum number of tags includes both existing tags + // and those included in your current request. + ErrCodeTooManyTagsException = "TooManyTagsException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Input validation failed. Check your request parameters and retry the request. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "TooManyTagsException": newErrorTooManyTagsException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/service.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrock/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrock/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrock + +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/restjson" +) + +// Bedrock provides the API operation methods for making requests to +// Amazon Bedrock. See this package's package overview docs +// for details on the service. +// +// Bedrock methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type Bedrock 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 = "Bedrock" // Name of service. + EndpointsID = "bedrock" // ID to lookup a service endpoint with. + ServiceID = "Bedrock" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the Bedrock 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 Bedrock client from just a session. +// svc := bedrock.New(mySession) +// +// // Create a Bedrock client with additional configuration +// svc := bedrock.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *Bedrock { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "bedrock" + } + 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) *Bedrock { + svc := &Bedrock{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-04-20", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a Bedrock operation and runs any +// custom request initialization. +func (c *Bedrock) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/api.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,13786 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockagent + +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/restjson" +) + +const opAssociateAgentKnowledgeBase = "AssociateAgentKnowledgeBase" + +// AssociateAgentKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the AssociateAgentKnowledgeBase 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 AssociateAgentKnowledgeBase for more information on using the AssociateAgentKnowledgeBase +// 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 AssociateAgentKnowledgeBaseRequest method. +// req, resp := client.AssociateAgentKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/AssociateAgentKnowledgeBase +func (c *BedrockAgent) AssociateAgentKnowledgeBaseRequest(input *AssociateAgentKnowledgeBaseInput) (req *request.Request, output *AssociateAgentKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opAssociateAgentKnowledgeBase, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/", + } + + if input == nil { + input = &AssociateAgentKnowledgeBaseInput{} + } + + output = &AssociateAgentKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// AssociateAgentKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Associate a Knowledge Base to an existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation AssociateAgentKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/AssociateAgentKnowledgeBase +func (c *BedrockAgent) AssociateAgentKnowledgeBase(input *AssociateAgentKnowledgeBaseInput) (*AssociateAgentKnowledgeBaseOutput, error) { + req, out := c.AssociateAgentKnowledgeBaseRequest(input) + return out, req.Send() +} + +// AssociateAgentKnowledgeBaseWithContext is the same as AssociateAgentKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateAgentKnowledgeBase 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 *BedrockAgent) AssociateAgentKnowledgeBaseWithContext(ctx aws.Context, input *AssociateAgentKnowledgeBaseInput, opts ...request.Option) (*AssociateAgentKnowledgeBaseOutput, error) { + req, out := c.AssociateAgentKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAgent = "CreateAgent" + +// CreateAgentRequest generates a "aws/request.Request" representing the +// client's request for the CreateAgent 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 CreateAgent for more information on using the CreateAgent +// 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 CreateAgentRequest method. +// req, resp := client.CreateAgentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgent +func (c *BedrockAgent) CreateAgentRequest(input *CreateAgentInput) (req *request.Request, output *CreateAgentOutput) { + op := &request.Operation{ + Name: opCreateAgent, + HTTPMethod: "PUT", + HTTPPath: "/agents/", + } + + if input == nil { + input = &CreateAgentInput{} + } + + output = &CreateAgentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAgent API operation for Agents for Amazon Bedrock. +// +// # Creates an Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation CreateAgent for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgent +func (c *BedrockAgent) CreateAgent(input *CreateAgentInput) (*CreateAgentOutput, error) { + req, out := c.CreateAgentRequest(input) + return out, req.Send() +} + +// CreateAgentWithContext is the same as CreateAgent with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAgent 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 *BedrockAgent) CreateAgentWithContext(ctx aws.Context, input *CreateAgentInput, opts ...request.Option) (*CreateAgentOutput, error) { + req, out := c.CreateAgentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAgentActionGroup = "CreateAgentActionGroup" + +// CreateAgentActionGroupRequest generates a "aws/request.Request" representing the +// client's request for the CreateAgentActionGroup 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 CreateAgentActionGroup for more information on using the CreateAgentActionGroup +// 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 CreateAgentActionGroupRequest method. +// req, resp := client.CreateAgentActionGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgentActionGroup +func (c *BedrockAgent) CreateAgentActionGroupRequest(input *CreateAgentActionGroupInput) (req *request.Request, output *CreateAgentActionGroupOutput) { + op := &request.Operation{ + Name: opCreateAgentActionGroup, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/", + } + + if input == nil { + input = &CreateAgentActionGroupInput{} + } + + output = &CreateAgentActionGroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAgentActionGroup API operation for Agents for Amazon Bedrock. +// +// # Creates an Action Group for existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation CreateAgentActionGroup for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgentActionGroup +func (c *BedrockAgent) CreateAgentActionGroup(input *CreateAgentActionGroupInput) (*CreateAgentActionGroupOutput, error) { + req, out := c.CreateAgentActionGroupRequest(input) + return out, req.Send() +} + +// CreateAgentActionGroupWithContext is the same as CreateAgentActionGroup with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAgentActionGroup 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 *BedrockAgent) CreateAgentActionGroupWithContext(ctx aws.Context, input *CreateAgentActionGroupInput, opts ...request.Option) (*CreateAgentActionGroupOutput, error) { + req, out := c.CreateAgentActionGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAgentAlias = "CreateAgentAlias" + +// CreateAgentAliasRequest generates a "aws/request.Request" representing the +// client's request for the CreateAgentAlias 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 CreateAgentAlias for more information on using the CreateAgentAlias +// 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 CreateAgentAliasRequest method. +// req, resp := client.CreateAgentAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgentAlias +func (c *BedrockAgent) CreateAgentAliasRequest(input *CreateAgentAliasInput) (req *request.Request, output *CreateAgentAliasOutput) { + op := &request.Operation{ + Name: opCreateAgentAlias, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/agentaliases/", + } + + if input == nil { + input = &CreateAgentAliasInput{} + } + + output = &CreateAgentAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAgentAlias API operation for Agents for Amazon Bedrock. +// +// # Creates an Alias for an existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation CreateAgentAlias for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgentAlias +func (c *BedrockAgent) CreateAgentAlias(input *CreateAgentAliasInput) (*CreateAgentAliasOutput, error) { + req, out := c.CreateAgentAliasRequest(input) + return out, req.Send() +} + +// CreateAgentAliasWithContext is the same as CreateAgentAlias with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAgentAlias 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 *BedrockAgent) CreateAgentAliasWithContext(ctx aws.Context, input *CreateAgentAliasInput, opts ...request.Option) (*CreateAgentAliasOutput, error) { + req, out := c.CreateAgentAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateDataSource = "CreateDataSource" + +// CreateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the CreateDataSource 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 CreateDataSource for more information on using the CreateDataSource +// 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 CreateDataSourceRequest method. +// req, resp := client.CreateDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateDataSource +func (c *BedrockAgent) CreateDataSourceRequest(input *CreateDataSourceInput) (req *request.Request, output *CreateDataSourceOutput) { + op := &request.Operation{ + Name: opCreateDataSource, + HTTPMethod: "PUT", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/", + } + + if input == nil { + input = &CreateDataSourceInput{} + } + + output = &CreateDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDataSource API operation for Agents for Amazon Bedrock. +// +// # Create a new data source +// +// 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 Agents for Amazon Bedrock's +// API operation CreateDataSource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateDataSource +func (c *BedrockAgent) CreateDataSource(input *CreateDataSourceInput) (*CreateDataSourceOutput, error) { + req, out := c.CreateDataSourceRequest(input) + return out, req.Send() +} + +// CreateDataSourceWithContext is the same as CreateDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDataSource 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 *BedrockAgent) CreateDataSourceWithContext(ctx aws.Context, input *CreateDataSourceInput, opts ...request.Option) (*CreateDataSourceOutput, error) { + req, out := c.CreateDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateKnowledgeBase = "CreateKnowledgeBase" + +// CreateKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the CreateKnowledgeBase 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 CreateKnowledgeBase for more information on using the CreateKnowledgeBase +// 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 CreateKnowledgeBaseRequest method. +// req, resp := client.CreateKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateKnowledgeBase +func (c *BedrockAgent) CreateKnowledgeBaseRequest(input *CreateKnowledgeBaseInput) (req *request.Request, output *CreateKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opCreateKnowledgeBase, + HTTPMethod: "PUT", + HTTPPath: "/knowledgebases/", + } + + if input == nil { + input = &CreateKnowledgeBaseInput{} + } + + output = &CreateKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Create a new knowledge base +// +// 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 Agents for Amazon Bedrock's +// API operation CreateKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateKnowledgeBase +func (c *BedrockAgent) CreateKnowledgeBase(input *CreateKnowledgeBaseInput) (*CreateKnowledgeBaseOutput, error) { + req, out := c.CreateKnowledgeBaseRequest(input) + return out, req.Send() +} + +// CreateKnowledgeBaseWithContext is the same as CreateKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See CreateKnowledgeBase 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 *BedrockAgent) CreateKnowledgeBaseWithContext(ctx aws.Context, input *CreateKnowledgeBaseInput, opts ...request.Option) (*CreateKnowledgeBaseOutput, error) { + req, out := c.CreateKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAgent = "DeleteAgent" + +// DeleteAgentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAgent 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 DeleteAgent for more information on using the DeleteAgent +// 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 DeleteAgentRequest method. +// req, resp := client.DeleteAgentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgent +func (c *BedrockAgent) DeleteAgentRequest(input *DeleteAgentInput) (req *request.Request, output *DeleteAgentOutput) { + op := &request.Operation{ + Name: opDeleteAgent, + HTTPMethod: "DELETE", + HTTPPath: "/agents/{agentId}/", + } + + if input == nil { + input = &DeleteAgentInput{} + } + + output = &DeleteAgentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteAgent API operation for Agents for Amazon Bedrock. +// +// # Deletes an Agent for existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation DeleteAgent for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgent +func (c *BedrockAgent) DeleteAgent(input *DeleteAgentInput) (*DeleteAgentOutput, error) { + req, out := c.DeleteAgentRequest(input) + return out, req.Send() +} + +// DeleteAgentWithContext is the same as DeleteAgent with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAgent 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 *BedrockAgent) DeleteAgentWithContext(ctx aws.Context, input *DeleteAgentInput, opts ...request.Option) (*DeleteAgentOutput, error) { + req, out := c.DeleteAgentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAgentActionGroup = "DeleteAgentActionGroup" + +// DeleteAgentActionGroupRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAgentActionGroup 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 DeleteAgentActionGroup for more information on using the DeleteAgentActionGroup +// 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 DeleteAgentActionGroupRequest method. +// req, resp := client.DeleteAgentActionGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgentActionGroup +func (c *BedrockAgent) DeleteAgentActionGroupRequest(input *DeleteAgentActionGroupInput) (req *request.Request, output *DeleteAgentActionGroupOutput) { + op := &request.Operation{ + Name: opDeleteAgentActionGroup, + HTTPMethod: "DELETE", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/", + } + + if input == nil { + input = &DeleteAgentActionGroupInput{} + } + + output = &DeleteAgentActionGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAgentActionGroup API operation for Agents for Amazon Bedrock. +// +// Deletes an Action Group for existing Amazon Bedrock Agent. +// +// 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 Agents for Amazon Bedrock's +// API operation DeleteAgentActionGroup for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgentActionGroup +func (c *BedrockAgent) DeleteAgentActionGroup(input *DeleteAgentActionGroupInput) (*DeleteAgentActionGroupOutput, error) { + req, out := c.DeleteAgentActionGroupRequest(input) + return out, req.Send() +} + +// DeleteAgentActionGroupWithContext is the same as DeleteAgentActionGroup with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAgentActionGroup 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 *BedrockAgent) DeleteAgentActionGroupWithContext(ctx aws.Context, input *DeleteAgentActionGroupInput, opts ...request.Option) (*DeleteAgentActionGroupOutput, error) { + req, out := c.DeleteAgentActionGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAgentAlias = "DeleteAgentAlias" + +// DeleteAgentAliasRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAgentAlias 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 DeleteAgentAlias for more information on using the DeleteAgentAlias +// 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 DeleteAgentAliasRequest method. +// req, resp := client.DeleteAgentAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgentAlias +func (c *BedrockAgent) DeleteAgentAliasRequest(input *DeleteAgentAliasInput) (req *request.Request, output *DeleteAgentAliasOutput) { + op := &request.Operation{ + Name: opDeleteAgentAlias, + HTTPMethod: "DELETE", + HTTPPath: "/agents/{agentId}/agentaliases/{agentAliasId}/", + } + + if input == nil { + input = &DeleteAgentAliasInput{} + } + + output = &DeleteAgentAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteAgentAlias API operation for Agents for Amazon Bedrock. +// +// # Deletes an Alias for a Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation DeleteAgentAlias for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgentAlias +func (c *BedrockAgent) DeleteAgentAlias(input *DeleteAgentAliasInput) (*DeleteAgentAliasOutput, error) { + req, out := c.DeleteAgentAliasRequest(input) + return out, req.Send() +} + +// DeleteAgentAliasWithContext is the same as DeleteAgentAlias with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAgentAlias 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 *BedrockAgent) DeleteAgentAliasWithContext(ctx aws.Context, input *DeleteAgentAliasInput, opts ...request.Option) (*DeleteAgentAliasOutput, error) { + req, out := c.DeleteAgentAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAgentVersion = "DeleteAgentVersion" + +// DeleteAgentVersionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAgentVersion 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 DeleteAgentVersion for more information on using the DeleteAgentVersion +// 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 DeleteAgentVersionRequest method. +// req, resp := client.DeleteAgentVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgentVersion +func (c *BedrockAgent) DeleteAgentVersionRequest(input *DeleteAgentVersionInput) (req *request.Request, output *DeleteAgentVersionOutput) { + op := &request.Operation{ + Name: opDeleteAgentVersion, + HTTPMethod: "DELETE", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/", + } + + if input == nil { + input = &DeleteAgentVersionInput{} + } + + output = &DeleteAgentVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteAgentVersion API operation for Agents for Amazon Bedrock. +// +// # Deletes an Agent version for existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation DeleteAgentVersion for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteAgentVersion +func (c *BedrockAgent) DeleteAgentVersion(input *DeleteAgentVersionInput) (*DeleteAgentVersionOutput, error) { + req, out := c.DeleteAgentVersionRequest(input) + return out, req.Send() +} + +// DeleteAgentVersionWithContext is the same as DeleteAgentVersion with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAgentVersion 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 *BedrockAgent) DeleteAgentVersionWithContext(ctx aws.Context, input *DeleteAgentVersionInput, opts ...request.Option) (*DeleteAgentVersionOutput, error) { + req, out := c.DeleteAgentVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDataSource = "DeleteDataSource" + +// DeleteDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDataSource 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 DeleteDataSource for more information on using the DeleteDataSource +// 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 DeleteDataSourceRequest method. +// req, resp := client.DeleteDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteDataSource +func (c *BedrockAgent) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) { + op := &request.Operation{ + Name: opDeleteDataSource, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}", + } + + if input == nil { + input = &DeleteDataSourceInput{} + } + + output = &DeleteDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDataSource API operation for Agents for Amazon Bedrock. +// +// # Delete an existing data source +// +// 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 Agents for Amazon Bedrock's +// API operation DeleteDataSource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteDataSource +func (c *BedrockAgent) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + return out, req.Send() +} + +// DeleteDataSourceWithContext is the same as DeleteDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDataSource 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 *BedrockAgent) DeleteDataSourceWithContext(ctx aws.Context, input *DeleteDataSourceInput, opts ...request.Option) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteKnowledgeBase = "DeleteKnowledgeBase" + +// DeleteKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the DeleteKnowledgeBase 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 DeleteKnowledgeBase for more information on using the DeleteKnowledgeBase +// 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 DeleteKnowledgeBaseRequest method. +// req, resp := client.DeleteKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteKnowledgeBase +func (c *BedrockAgent) DeleteKnowledgeBaseRequest(input *DeleteKnowledgeBaseInput) (req *request.Request, output *DeleteKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opDeleteKnowledgeBase, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgebases/{knowledgeBaseId}", + } + + if input == nil { + input = &DeleteKnowledgeBaseInput{} + } + + output = &DeleteKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Delete an existing knowledge base +// +// 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 Agents for Amazon Bedrock's +// API operation DeleteKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteKnowledgeBase +func (c *BedrockAgent) DeleteKnowledgeBase(input *DeleteKnowledgeBaseInput) (*DeleteKnowledgeBaseOutput, error) { + req, out := c.DeleteKnowledgeBaseRequest(input) + return out, req.Send() +} + +// DeleteKnowledgeBaseWithContext is the same as DeleteKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteKnowledgeBase 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 *BedrockAgent) DeleteKnowledgeBaseWithContext(ctx aws.Context, input *DeleteKnowledgeBaseInput, opts ...request.Option) (*DeleteKnowledgeBaseOutput, error) { + req, out := c.DeleteKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDisassociateAgentKnowledgeBase = "DisassociateAgentKnowledgeBase" + +// DisassociateAgentKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateAgentKnowledgeBase 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 DisassociateAgentKnowledgeBase for more information on using the DisassociateAgentKnowledgeBase +// 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 DisassociateAgentKnowledgeBaseRequest method. +// req, resp := client.DisassociateAgentKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DisassociateAgentKnowledgeBase +func (c *BedrockAgent) DisassociateAgentKnowledgeBaseRequest(input *DisassociateAgentKnowledgeBaseInput) (req *request.Request, output *DisassociateAgentKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opDisassociateAgentKnowledgeBase, + HTTPMethod: "DELETE", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/", + } + + if input == nil { + input = &DisassociateAgentKnowledgeBaseInput{} + } + + output = &DisassociateAgentKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DisassociateAgentKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Disassociate an existing Knowledge Base from an Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation DisassociateAgentKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DisassociateAgentKnowledgeBase +func (c *BedrockAgent) DisassociateAgentKnowledgeBase(input *DisassociateAgentKnowledgeBaseInput) (*DisassociateAgentKnowledgeBaseOutput, error) { + req, out := c.DisassociateAgentKnowledgeBaseRequest(input) + return out, req.Send() +} + +// DisassociateAgentKnowledgeBaseWithContext is the same as DisassociateAgentKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateAgentKnowledgeBase 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 *BedrockAgent) DisassociateAgentKnowledgeBaseWithContext(ctx aws.Context, input *DisassociateAgentKnowledgeBaseInput, opts ...request.Option) (*DisassociateAgentKnowledgeBaseOutput, error) { + req, out := c.DisassociateAgentKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAgent = "GetAgent" + +// GetAgentRequest generates a "aws/request.Request" representing the +// client's request for the GetAgent 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 GetAgent for more information on using the GetAgent +// 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 GetAgentRequest method. +// req, resp := client.GetAgentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgent +func (c *BedrockAgent) GetAgentRequest(input *GetAgentInput) (req *request.Request, output *GetAgentOutput) { + op := &request.Operation{ + Name: opGetAgent, + HTTPMethod: "GET", + HTTPPath: "/agents/{agentId}/", + } + + if input == nil { + input = &GetAgentInput{} + } + + output = &GetAgentOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAgent API operation for Agents for Amazon Bedrock. +// +// # Gets an Agent for existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation GetAgent for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgent +func (c *BedrockAgent) GetAgent(input *GetAgentInput) (*GetAgentOutput, error) { + req, out := c.GetAgentRequest(input) + return out, req.Send() +} + +// GetAgentWithContext is the same as GetAgent with the addition of +// the ability to pass a context and additional request options. +// +// See GetAgent 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 *BedrockAgent) GetAgentWithContext(ctx aws.Context, input *GetAgentInput, opts ...request.Option) (*GetAgentOutput, error) { + req, out := c.GetAgentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAgentActionGroup = "GetAgentActionGroup" + +// GetAgentActionGroupRequest generates a "aws/request.Request" representing the +// client's request for the GetAgentActionGroup 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 GetAgentActionGroup for more information on using the GetAgentActionGroup +// 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 GetAgentActionGroupRequest method. +// req, resp := client.GetAgentActionGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentActionGroup +func (c *BedrockAgent) GetAgentActionGroupRequest(input *GetAgentActionGroupInput) (req *request.Request, output *GetAgentActionGroupOutput) { + op := &request.Operation{ + Name: opGetAgentActionGroup, + HTTPMethod: "GET", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/", + } + + if input == nil { + input = &GetAgentActionGroupInput{} + } + + output = &GetAgentActionGroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAgentActionGroup API operation for Agents for Amazon Bedrock. +// +// # Gets an Action Group for existing Amazon Bedrock Agent Version +// +// 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 Agents for Amazon Bedrock's +// API operation GetAgentActionGroup for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentActionGroup +func (c *BedrockAgent) GetAgentActionGroup(input *GetAgentActionGroupInput) (*GetAgentActionGroupOutput, error) { + req, out := c.GetAgentActionGroupRequest(input) + return out, req.Send() +} + +// GetAgentActionGroupWithContext is the same as GetAgentActionGroup with the addition of +// the ability to pass a context and additional request options. +// +// See GetAgentActionGroup 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 *BedrockAgent) GetAgentActionGroupWithContext(ctx aws.Context, input *GetAgentActionGroupInput, opts ...request.Option) (*GetAgentActionGroupOutput, error) { + req, out := c.GetAgentActionGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAgentAlias = "GetAgentAlias" + +// GetAgentAliasRequest generates a "aws/request.Request" representing the +// client's request for the GetAgentAlias 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 GetAgentAlias for more information on using the GetAgentAlias +// 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 GetAgentAliasRequest method. +// req, resp := client.GetAgentAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentAlias +func (c *BedrockAgent) GetAgentAliasRequest(input *GetAgentAliasInput) (req *request.Request, output *GetAgentAliasOutput) { + op := &request.Operation{ + Name: opGetAgentAlias, + HTTPMethod: "GET", + HTTPPath: "/agents/{agentId}/agentaliases/{agentAliasId}/", + } + + if input == nil { + input = &GetAgentAliasInput{} + } + + output = &GetAgentAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAgentAlias API operation for Agents for Amazon Bedrock. +// +// # Describes an Alias for a Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation GetAgentAlias for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentAlias +func (c *BedrockAgent) GetAgentAlias(input *GetAgentAliasInput) (*GetAgentAliasOutput, error) { + req, out := c.GetAgentAliasRequest(input) + return out, req.Send() +} + +// GetAgentAliasWithContext is the same as GetAgentAlias with the addition of +// the ability to pass a context and additional request options. +// +// See GetAgentAlias 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 *BedrockAgent) GetAgentAliasWithContext(ctx aws.Context, input *GetAgentAliasInput, opts ...request.Option) (*GetAgentAliasOutput, error) { + req, out := c.GetAgentAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAgentKnowledgeBase = "GetAgentKnowledgeBase" + +// GetAgentKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the GetAgentKnowledgeBase 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 GetAgentKnowledgeBase for more information on using the GetAgentKnowledgeBase +// 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 GetAgentKnowledgeBaseRequest method. +// req, resp := client.GetAgentKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentKnowledgeBase +func (c *BedrockAgent) GetAgentKnowledgeBaseRequest(input *GetAgentKnowledgeBaseInput) (req *request.Request, output *GetAgentKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opGetAgentKnowledgeBase, + HTTPMethod: "GET", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/", + } + + if input == nil { + input = &GetAgentKnowledgeBaseInput{} + } + + output = &GetAgentKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAgentKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Gets a knowledge base associated to an existing Amazon Bedrock Agent Version +// +// 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 Agents for Amazon Bedrock's +// API operation GetAgentKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentKnowledgeBase +func (c *BedrockAgent) GetAgentKnowledgeBase(input *GetAgentKnowledgeBaseInput) (*GetAgentKnowledgeBaseOutput, error) { + req, out := c.GetAgentKnowledgeBaseRequest(input) + return out, req.Send() +} + +// GetAgentKnowledgeBaseWithContext is the same as GetAgentKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See GetAgentKnowledgeBase 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 *BedrockAgent) GetAgentKnowledgeBaseWithContext(ctx aws.Context, input *GetAgentKnowledgeBaseInput, opts ...request.Option) (*GetAgentKnowledgeBaseOutput, error) { + req, out := c.GetAgentKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAgentVersion = "GetAgentVersion" + +// GetAgentVersionRequest generates a "aws/request.Request" representing the +// client's request for the GetAgentVersion 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 GetAgentVersion for more information on using the GetAgentVersion +// 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 GetAgentVersionRequest method. +// req, resp := client.GetAgentVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentVersion +func (c *BedrockAgent) GetAgentVersionRequest(input *GetAgentVersionInput) (req *request.Request, output *GetAgentVersionOutput) { + op := &request.Operation{ + Name: opGetAgentVersion, + HTTPMethod: "GET", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/", + } + + if input == nil { + input = &GetAgentVersionInput{} + } + + output = &GetAgentVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAgentVersion API operation for Agents for Amazon Bedrock. +// +// # Gets an Agent version for existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation GetAgentVersion for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentVersion +func (c *BedrockAgent) GetAgentVersion(input *GetAgentVersionInput) (*GetAgentVersionOutput, error) { + req, out := c.GetAgentVersionRequest(input) + return out, req.Send() +} + +// GetAgentVersionWithContext is the same as GetAgentVersion with the addition of +// the ability to pass a context and additional request options. +// +// See GetAgentVersion 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 *BedrockAgent) GetAgentVersionWithContext(ctx aws.Context, input *GetAgentVersionInput, opts ...request.Option) (*GetAgentVersionOutput, error) { + req, out := c.GetAgentVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDataSource = "GetDataSource" + +// GetDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSource 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 GetDataSource for more information on using the GetDataSource +// 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 GetDataSourceRequest method. +// req, resp := client.GetDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetDataSource +func (c *BedrockAgent) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) { + op := &request.Operation{ + Name: opGetDataSource, + HTTPMethod: "GET", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}", + } + + if input == nil { + input = &GetDataSourceInput{} + } + + output = &GetDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSource API operation for Agents for Amazon Bedrock. +// +// # Get an existing data source +// +// 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 Agents for Amazon Bedrock's +// API operation GetDataSource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetDataSource +func (c *BedrockAgent) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + return out, req.Send() +} + +// GetDataSourceWithContext is the same as GetDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSource 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 *BedrockAgent) GetDataSourceWithContext(ctx aws.Context, input *GetDataSourceInput, opts ...request.Option) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetIngestionJob = "GetIngestionJob" + +// GetIngestionJobRequest generates a "aws/request.Request" representing the +// client's request for the GetIngestionJob 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 GetIngestionJob for more information on using the GetIngestionJob +// 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 GetIngestionJobRequest method. +// req, resp := client.GetIngestionJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetIngestionJob +func (c *BedrockAgent) GetIngestionJobRequest(input *GetIngestionJobInput) (req *request.Request, output *GetIngestionJobOutput) { + op := &request.Operation{ + Name: opGetIngestionJob, + HTTPMethod: "GET", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/{ingestionJobId}", + } + + if input == nil { + input = &GetIngestionJobInput{} + } + + output = &GetIngestionJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetIngestionJob API operation for Agents for Amazon Bedrock. +// +// # Get an ingestion job +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Agents for Amazon Bedrock's +// API operation GetIngestionJob for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetIngestionJob +func (c *BedrockAgent) GetIngestionJob(input *GetIngestionJobInput) (*GetIngestionJobOutput, error) { + req, out := c.GetIngestionJobRequest(input) + return out, req.Send() +} + +// GetIngestionJobWithContext is the same as GetIngestionJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetIngestionJob 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 *BedrockAgent) GetIngestionJobWithContext(ctx aws.Context, input *GetIngestionJobInput, opts ...request.Option) (*GetIngestionJobOutput, error) { + req, out := c.GetIngestionJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetKnowledgeBase = "GetKnowledgeBase" + +// GetKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the GetKnowledgeBase 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 GetKnowledgeBase for more information on using the GetKnowledgeBase +// 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 GetKnowledgeBaseRequest method. +// req, resp := client.GetKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetKnowledgeBase +func (c *BedrockAgent) GetKnowledgeBaseRequest(input *GetKnowledgeBaseInput) (req *request.Request, output *GetKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opGetKnowledgeBase, + HTTPMethod: "GET", + HTTPPath: "/knowledgebases/{knowledgeBaseId}", + } + + if input == nil { + input = &GetKnowledgeBaseInput{} + } + + output = &GetKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Get an existing knowledge base +// +// 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 Agents for Amazon Bedrock's +// API operation GetKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetKnowledgeBase +func (c *BedrockAgent) GetKnowledgeBase(input *GetKnowledgeBaseInput) (*GetKnowledgeBaseOutput, error) { + req, out := c.GetKnowledgeBaseRequest(input) + return out, req.Send() +} + +// GetKnowledgeBaseWithContext is the same as GetKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See GetKnowledgeBase 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 *BedrockAgent) GetKnowledgeBaseWithContext(ctx aws.Context, input *GetKnowledgeBaseInput, opts ...request.Option) (*GetKnowledgeBaseOutput, error) { + req, out := c.GetKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListAgentActionGroups = "ListAgentActionGroups" + +// ListAgentActionGroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListAgentActionGroups 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 ListAgentActionGroups for more information on using the ListAgentActionGroups +// 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 ListAgentActionGroupsRequest method. +// req, resp := client.ListAgentActionGroupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentActionGroups +func (c *BedrockAgent) ListAgentActionGroupsRequest(input *ListAgentActionGroupsInput) (req *request.Request, output *ListAgentActionGroupsOutput) { + op := &request.Operation{ + Name: opListAgentActionGroups, + HTTPMethod: "POST", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAgentActionGroupsInput{} + } + + output = &ListAgentActionGroupsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAgentActionGroups API operation for Agents for Amazon Bedrock. +// +// # Lists an Action Group for existing Amazon Bedrock Agent Version +// +// 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 Agents for Amazon Bedrock's +// API operation ListAgentActionGroups for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentActionGroups +func (c *BedrockAgent) ListAgentActionGroups(input *ListAgentActionGroupsInput) (*ListAgentActionGroupsOutput, error) { + req, out := c.ListAgentActionGroupsRequest(input) + return out, req.Send() +} + +// ListAgentActionGroupsWithContext is the same as ListAgentActionGroups with the addition of +// the ability to pass a context and additional request options. +// +// See ListAgentActionGroups 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 *BedrockAgent) ListAgentActionGroupsWithContext(ctx aws.Context, input *ListAgentActionGroupsInput, opts ...request.Option) (*ListAgentActionGroupsOutput, error) { + req, out := c.ListAgentActionGroupsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAgentActionGroupsPages iterates over the pages of a ListAgentActionGroups operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAgentActionGroups 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 ListAgentActionGroups operation. +// pageNum := 0 +// err := client.ListAgentActionGroupsPages(params, +// func(page *bedrockagent.ListAgentActionGroupsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListAgentActionGroupsPages(input *ListAgentActionGroupsInput, fn func(*ListAgentActionGroupsOutput, bool) bool) error { + return c.ListAgentActionGroupsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAgentActionGroupsPagesWithContext same as ListAgentActionGroupsPages 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 *BedrockAgent) ListAgentActionGroupsPagesWithContext(ctx aws.Context, input *ListAgentActionGroupsInput, fn func(*ListAgentActionGroupsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAgentActionGroupsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAgentActionGroupsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAgentActionGroupsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAgentAliases = "ListAgentAliases" + +// ListAgentAliasesRequest generates a "aws/request.Request" representing the +// client's request for the ListAgentAliases 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 ListAgentAliases for more information on using the ListAgentAliases +// 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 ListAgentAliasesRequest method. +// req, resp := client.ListAgentAliasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentAliases +func (c *BedrockAgent) ListAgentAliasesRequest(input *ListAgentAliasesInput) (req *request.Request, output *ListAgentAliasesOutput) { + op := &request.Operation{ + Name: opListAgentAliases, + HTTPMethod: "POST", + HTTPPath: "/agents/{agentId}/agentaliases/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAgentAliasesInput{} + } + + output = &ListAgentAliasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAgentAliases API operation for Agents for Amazon Bedrock. +// +// # Lists all the Aliases for an Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation ListAgentAliases for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentAliases +func (c *BedrockAgent) ListAgentAliases(input *ListAgentAliasesInput) (*ListAgentAliasesOutput, error) { + req, out := c.ListAgentAliasesRequest(input) + return out, req.Send() +} + +// ListAgentAliasesWithContext is the same as ListAgentAliases with the addition of +// the ability to pass a context and additional request options. +// +// See ListAgentAliases 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 *BedrockAgent) ListAgentAliasesWithContext(ctx aws.Context, input *ListAgentAliasesInput, opts ...request.Option) (*ListAgentAliasesOutput, error) { + req, out := c.ListAgentAliasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAgentAliasesPages iterates over the pages of a ListAgentAliases operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAgentAliases 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 ListAgentAliases operation. +// pageNum := 0 +// err := client.ListAgentAliasesPages(params, +// func(page *bedrockagent.ListAgentAliasesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListAgentAliasesPages(input *ListAgentAliasesInput, fn func(*ListAgentAliasesOutput, bool) bool) error { + return c.ListAgentAliasesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAgentAliasesPagesWithContext same as ListAgentAliasesPages 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 *BedrockAgent) ListAgentAliasesPagesWithContext(ctx aws.Context, input *ListAgentAliasesInput, fn func(*ListAgentAliasesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAgentAliasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAgentAliasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAgentAliasesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAgentKnowledgeBases = "ListAgentKnowledgeBases" + +// ListAgentKnowledgeBasesRequest generates a "aws/request.Request" representing the +// client's request for the ListAgentKnowledgeBases 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 ListAgentKnowledgeBases for more information on using the ListAgentKnowledgeBases +// 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 ListAgentKnowledgeBasesRequest method. +// req, resp := client.ListAgentKnowledgeBasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentKnowledgeBases +func (c *BedrockAgent) ListAgentKnowledgeBasesRequest(input *ListAgentKnowledgeBasesInput) (req *request.Request, output *ListAgentKnowledgeBasesOutput) { + op := &request.Operation{ + Name: opListAgentKnowledgeBases, + HTTPMethod: "POST", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAgentKnowledgeBasesInput{} + } + + output = &ListAgentKnowledgeBasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAgentKnowledgeBases API operation for Agents for Amazon Bedrock. +// +// # List of Knowledge Bases associated to an existing Amazon Bedrock Agent Version +// +// 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 Agents for Amazon Bedrock's +// API operation ListAgentKnowledgeBases for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentKnowledgeBases +func (c *BedrockAgent) ListAgentKnowledgeBases(input *ListAgentKnowledgeBasesInput) (*ListAgentKnowledgeBasesOutput, error) { + req, out := c.ListAgentKnowledgeBasesRequest(input) + return out, req.Send() +} + +// ListAgentKnowledgeBasesWithContext is the same as ListAgentKnowledgeBases with the addition of +// the ability to pass a context and additional request options. +// +// See ListAgentKnowledgeBases 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 *BedrockAgent) ListAgentKnowledgeBasesWithContext(ctx aws.Context, input *ListAgentKnowledgeBasesInput, opts ...request.Option) (*ListAgentKnowledgeBasesOutput, error) { + req, out := c.ListAgentKnowledgeBasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAgentKnowledgeBasesPages iterates over the pages of a ListAgentKnowledgeBases operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAgentKnowledgeBases 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 ListAgentKnowledgeBases operation. +// pageNum := 0 +// err := client.ListAgentKnowledgeBasesPages(params, +// func(page *bedrockagent.ListAgentKnowledgeBasesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListAgentKnowledgeBasesPages(input *ListAgentKnowledgeBasesInput, fn func(*ListAgentKnowledgeBasesOutput, bool) bool) error { + return c.ListAgentKnowledgeBasesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAgentKnowledgeBasesPagesWithContext same as ListAgentKnowledgeBasesPages 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 *BedrockAgent) ListAgentKnowledgeBasesPagesWithContext(ctx aws.Context, input *ListAgentKnowledgeBasesInput, fn func(*ListAgentKnowledgeBasesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAgentKnowledgeBasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAgentKnowledgeBasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAgentKnowledgeBasesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAgentVersions = "ListAgentVersions" + +// ListAgentVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListAgentVersions 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 ListAgentVersions for more information on using the ListAgentVersions +// 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 ListAgentVersionsRequest method. +// req, resp := client.ListAgentVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentVersions +func (c *BedrockAgent) ListAgentVersionsRequest(input *ListAgentVersionsInput) (req *request.Request, output *ListAgentVersionsOutput) { + op := &request.Operation{ + Name: opListAgentVersions, + HTTPMethod: "POST", + HTTPPath: "/agents/{agentId}/agentversions/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAgentVersionsInput{} + } + + output = &ListAgentVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAgentVersions API operation for Agents for Amazon Bedrock. +// +// # Lists Agent Versions +// +// 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 Agents for Amazon Bedrock's +// API operation ListAgentVersions for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgentVersions +func (c *BedrockAgent) ListAgentVersions(input *ListAgentVersionsInput) (*ListAgentVersionsOutput, error) { + req, out := c.ListAgentVersionsRequest(input) + return out, req.Send() +} + +// ListAgentVersionsWithContext is the same as ListAgentVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListAgentVersions 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 *BedrockAgent) ListAgentVersionsWithContext(ctx aws.Context, input *ListAgentVersionsInput, opts ...request.Option) (*ListAgentVersionsOutput, error) { + req, out := c.ListAgentVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAgentVersionsPages iterates over the pages of a ListAgentVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAgentVersions 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 ListAgentVersions operation. +// pageNum := 0 +// err := client.ListAgentVersionsPages(params, +// func(page *bedrockagent.ListAgentVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListAgentVersionsPages(input *ListAgentVersionsInput, fn func(*ListAgentVersionsOutput, bool) bool) error { + return c.ListAgentVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAgentVersionsPagesWithContext same as ListAgentVersionsPages 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 *BedrockAgent) ListAgentVersionsPagesWithContext(ctx aws.Context, input *ListAgentVersionsInput, fn func(*ListAgentVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAgentVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAgentVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAgentVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAgents = "ListAgents" + +// ListAgentsRequest generates a "aws/request.Request" representing the +// client's request for the ListAgents 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 ListAgents for more information on using the ListAgents +// 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 ListAgentsRequest method. +// req, resp := client.ListAgentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgents +func (c *BedrockAgent) ListAgentsRequest(input *ListAgentsInput) (req *request.Request, output *ListAgentsOutput) { + op := &request.Operation{ + Name: opListAgents, + HTTPMethod: "POST", + HTTPPath: "/agents/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAgentsInput{} + } + + output = &ListAgentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAgents API operation for Agents for Amazon Bedrock. +// +// # Lists Agents +// +// 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 Agents for Amazon Bedrock's +// API operation ListAgents for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgents +func (c *BedrockAgent) ListAgents(input *ListAgentsInput) (*ListAgentsOutput, error) { + req, out := c.ListAgentsRequest(input) + return out, req.Send() +} + +// ListAgentsWithContext is the same as ListAgents with the addition of +// the ability to pass a context and additional request options. +// +// See ListAgents 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 *BedrockAgent) ListAgentsWithContext(ctx aws.Context, input *ListAgentsInput, opts ...request.Option) (*ListAgentsOutput, error) { + req, out := c.ListAgentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAgentsPages iterates over the pages of a ListAgents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAgents 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 ListAgents operation. +// pageNum := 0 +// err := client.ListAgentsPages(params, +// func(page *bedrockagent.ListAgentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListAgentsPages(input *ListAgentsInput, fn func(*ListAgentsOutput, bool) bool) error { + return c.ListAgentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAgentsPagesWithContext same as ListAgentsPages 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 *BedrockAgent) ListAgentsPagesWithContext(ctx aws.Context, input *ListAgentsInput, fn func(*ListAgentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAgentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAgentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAgentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSources = "ListDataSources" + +// ListDataSourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSources 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 ListDataSources for more information on using the ListDataSources +// 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 ListDataSourcesRequest method. +// req, resp := client.ListDataSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListDataSources +func (c *BedrockAgent) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { + op := &request.Operation{ + Name: opListDataSources, + HTTPMethod: "POST", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDataSourcesInput{} + } + + output = &ListDataSourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSources API operation for Agents for Amazon Bedrock. +// +// # List data sources +// +// 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 Agents for Amazon Bedrock's +// API operation ListDataSources for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListDataSources +func (c *BedrockAgent) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + return out, req.Send() +} + +// ListDataSourcesWithContext is the same as ListDataSources with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSources 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 *BedrockAgent) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDataSourcesPages iterates over the pages of a ListDataSources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSources 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 ListDataSources operation. +// pageNum := 0 +// err := client.ListDataSourcesPages(params, +// func(page *bedrockagent.ListDataSourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListDataSourcesPages(input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool) error { + return c.ListDataSourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourcesPagesWithContext same as ListDataSourcesPages 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 *BedrockAgent) ListDataSourcesPagesWithContext(ctx aws.Context, input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListIngestionJobs = "ListIngestionJobs" + +// ListIngestionJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListIngestionJobs 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 ListIngestionJobs for more information on using the ListIngestionJobs +// 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 ListIngestionJobsRequest method. +// req, resp := client.ListIngestionJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListIngestionJobs +func (c *BedrockAgent) ListIngestionJobsRequest(input *ListIngestionJobsInput) (req *request.Request, output *ListIngestionJobsOutput) { + op := &request.Operation{ + Name: opListIngestionJobs, + HTTPMethod: "POST", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIngestionJobsInput{} + } + + output = &ListIngestionJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIngestionJobs API operation for Agents for Amazon Bedrock. +// +// # List ingestion jobs +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Agents for Amazon Bedrock's +// API operation ListIngestionJobs for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListIngestionJobs +func (c *BedrockAgent) ListIngestionJobs(input *ListIngestionJobsInput) (*ListIngestionJobsOutput, error) { + req, out := c.ListIngestionJobsRequest(input) + return out, req.Send() +} + +// ListIngestionJobsWithContext is the same as ListIngestionJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListIngestionJobs 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 *BedrockAgent) ListIngestionJobsWithContext(ctx aws.Context, input *ListIngestionJobsInput, opts ...request.Option) (*ListIngestionJobsOutput, error) { + req, out := c.ListIngestionJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIngestionJobsPages iterates over the pages of a ListIngestionJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIngestionJobs 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 ListIngestionJobs operation. +// pageNum := 0 +// err := client.ListIngestionJobsPages(params, +// func(page *bedrockagent.ListIngestionJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListIngestionJobsPages(input *ListIngestionJobsInput, fn func(*ListIngestionJobsOutput, bool) bool) error { + return c.ListIngestionJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIngestionJobsPagesWithContext same as ListIngestionJobsPages 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 *BedrockAgent) ListIngestionJobsPagesWithContext(ctx aws.Context, input *ListIngestionJobsInput, fn func(*ListIngestionJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListIngestionJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListIngestionJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListIngestionJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListKnowledgeBases = "ListKnowledgeBases" + +// ListKnowledgeBasesRequest generates a "aws/request.Request" representing the +// client's request for the ListKnowledgeBases 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 ListKnowledgeBases for more information on using the ListKnowledgeBases +// 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 ListKnowledgeBasesRequest method. +// req, resp := client.ListKnowledgeBasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListKnowledgeBases +func (c *BedrockAgent) ListKnowledgeBasesRequest(input *ListKnowledgeBasesInput) (req *request.Request, output *ListKnowledgeBasesOutput) { + op := &request.Operation{ + Name: opListKnowledgeBases, + HTTPMethod: "POST", + HTTPPath: "/knowledgebases/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListKnowledgeBasesInput{} + } + + output = &ListKnowledgeBasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListKnowledgeBases API operation for Agents for Amazon Bedrock. +// +// # List Knowledge Bases +// +// 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 Agents for Amazon Bedrock's +// API operation ListKnowledgeBases for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListKnowledgeBases +func (c *BedrockAgent) ListKnowledgeBases(input *ListKnowledgeBasesInput) (*ListKnowledgeBasesOutput, error) { + req, out := c.ListKnowledgeBasesRequest(input) + return out, req.Send() +} + +// ListKnowledgeBasesWithContext is the same as ListKnowledgeBases with the addition of +// the ability to pass a context and additional request options. +// +// See ListKnowledgeBases 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 *BedrockAgent) ListKnowledgeBasesWithContext(ctx aws.Context, input *ListKnowledgeBasesInput, opts ...request.Option) (*ListKnowledgeBasesOutput, error) { + req, out := c.ListKnowledgeBasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListKnowledgeBasesPages iterates over the pages of a ListKnowledgeBases operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListKnowledgeBases 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 ListKnowledgeBases operation. +// pageNum := 0 +// err := client.ListKnowledgeBasesPages(params, +// func(page *bedrockagent.ListKnowledgeBasesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgent) ListKnowledgeBasesPages(input *ListKnowledgeBasesInput, fn func(*ListKnowledgeBasesOutput, bool) bool) error { + return c.ListKnowledgeBasesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListKnowledgeBasesPagesWithContext same as ListKnowledgeBasesPages 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 *BedrockAgent) ListKnowledgeBasesPagesWithContext(ctx aws.Context, input *ListKnowledgeBasesInput, fn func(*ListKnowledgeBasesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListKnowledgeBasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListKnowledgeBasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListKnowledgeBasesOutput), !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/bedrock-agent-2023-06-05/ListTagsForResource +func (c *BedrockAgent) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Agents for Amazon Bedrock. +// +// # List tags for 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 Agents for Amazon Bedrock's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListTagsForResource +func (c *BedrockAgent) 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 *BedrockAgent) 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 opPrepareAgent = "PrepareAgent" + +// PrepareAgentRequest generates a "aws/request.Request" representing the +// client's request for the PrepareAgent 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 PrepareAgent for more information on using the PrepareAgent +// 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 PrepareAgentRequest method. +// req, resp := client.PrepareAgentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PrepareAgent +func (c *BedrockAgent) PrepareAgentRequest(input *PrepareAgentInput) (req *request.Request, output *PrepareAgentOutput) { + op := &request.Operation{ + Name: opPrepareAgent, + HTTPMethod: "POST", + HTTPPath: "/agents/{agentId}/", + } + + if input == nil { + input = &PrepareAgentInput{} + } + + output = &PrepareAgentOutput{} + req = c.newRequest(op, input, output) + return +} + +// PrepareAgent API operation for Agents for Amazon Bedrock. +// +// # Prepares an existing Amazon Bedrock Agent to receive runtime requests +// +// 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 Agents for Amazon Bedrock's +// API operation PrepareAgent for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PrepareAgent +func (c *BedrockAgent) PrepareAgent(input *PrepareAgentInput) (*PrepareAgentOutput, error) { + req, out := c.PrepareAgentRequest(input) + return out, req.Send() +} + +// PrepareAgentWithContext is the same as PrepareAgent with the addition of +// the ability to pass a context and additional request options. +// +// See PrepareAgent 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 *BedrockAgent) PrepareAgentWithContext(ctx aws.Context, input *PrepareAgentInput, opts ...request.Option) (*PrepareAgentOutput, error) { + req, out := c.PrepareAgentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartIngestionJob = "StartIngestionJob" + +// StartIngestionJobRequest generates a "aws/request.Request" representing the +// client's request for the StartIngestionJob 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 StartIngestionJob for more information on using the StartIngestionJob +// 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 StartIngestionJobRequest method. +// req, resp := client.StartIngestionJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/StartIngestionJob +func (c *BedrockAgent) StartIngestionJobRequest(input *StartIngestionJobInput) (req *request.Request, output *StartIngestionJobOutput) { + op := &request.Operation{ + Name: opStartIngestionJob, + HTTPMethod: "PUT", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}/ingestionjobs/", + } + + if input == nil { + input = &StartIngestionJobInput{} + } + + output = &StartIngestionJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartIngestionJob API operation for Agents for Amazon Bedrock. +// +// # Start a new ingestion job +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Agents for Amazon Bedrock's +// API operation StartIngestionJob for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/StartIngestionJob +func (c *BedrockAgent) StartIngestionJob(input *StartIngestionJobInput) (*StartIngestionJobOutput, error) { + req, out := c.StartIngestionJobRequest(input) + return out, req.Send() +} + +// StartIngestionJobWithContext is the same as StartIngestionJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartIngestionJob 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 *BedrockAgent) StartIngestionJobWithContext(ctx aws.Context, input *StartIngestionJobInput, opts ...request.Option) (*StartIngestionJobOutput, error) { + req, out := c.StartIngestionJobRequest(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/bedrock-agent-2023-06-05/TagResource +func (c *BedrockAgent) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Agents for Amazon Bedrock. +// +// # Tag 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 Agents for Amazon Bedrock's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/TagResource +func (c *BedrockAgent) 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 *BedrockAgent) 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/bedrock-agent-2023-06-05/UntagResource +func (c *BedrockAgent) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Agents for Amazon Bedrock. +// +// # Untag 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 Agents for Amazon Bedrock's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UntagResource +func (c *BedrockAgent) 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 *BedrockAgent) 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 opUpdateAgent = "UpdateAgent" + +// UpdateAgentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAgent 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 UpdateAgent for more information on using the UpdateAgent +// 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 UpdateAgentRequest method. +// req, resp := client.UpdateAgentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgent +func (c *BedrockAgent) UpdateAgentRequest(input *UpdateAgentInput) (req *request.Request, output *UpdateAgentOutput) { + op := &request.Operation{ + Name: opUpdateAgent, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/", + } + + if input == nil { + input = &UpdateAgentInput{} + } + + output = &UpdateAgentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAgent API operation for Agents for Amazon Bedrock. +// +// # Updates an existing Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation UpdateAgent for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgent +func (c *BedrockAgent) UpdateAgent(input *UpdateAgentInput) (*UpdateAgentOutput, error) { + req, out := c.UpdateAgentRequest(input) + return out, req.Send() +} + +// UpdateAgentWithContext is the same as UpdateAgent with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAgent 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 *BedrockAgent) UpdateAgentWithContext(ctx aws.Context, input *UpdateAgentInput, opts ...request.Option) (*UpdateAgentOutput, error) { + req, out := c.UpdateAgentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAgentActionGroup = "UpdateAgentActionGroup" + +// UpdateAgentActionGroupRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAgentActionGroup 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 UpdateAgentActionGroup for more information on using the UpdateAgentActionGroup +// 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 UpdateAgentActionGroupRequest method. +// req, resp := client.UpdateAgentActionGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentActionGroup +func (c *BedrockAgent) UpdateAgentActionGroupRequest(input *UpdateAgentActionGroupInput) (req *request.Request, output *UpdateAgentActionGroupOutput) { + op := &request.Operation{ + Name: opUpdateAgentActionGroup, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/actiongroups/{actionGroupId}/", + } + + if input == nil { + input = &UpdateAgentActionGroupInput{} + } + + output = &UpdateAgentActionGroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAgentActionGroup API operation for Agents for Amazon Bedrock. +// +// # Updates an existing Action Group for Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation UpdateAgentActionGroup for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentActionGroup +func (c *BedrockAgent) UpdateAgentActionGroup(input *UpdateAgentActionGroupInput) (*UpdateAgentActionGroupOutput, error) { + req, out := c.UpdateAgentActionGroupRequest(input) + return out, req.Send() +} + +// UpdateAgentActionGroupWithContext is the same as UpdateAgentActionGroup with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAgentActionGroup 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 *BedrockAgent) UpdateAgentActionGroupWithContext(ctx aws.Context, input *UpdateAgentActionGroupInput, opts ...request.Option) (*UpdateAgentActionGroupOutput, error) { + req, out := c.UpdateAgentActionGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAgentAlias = "UpdateAgentAlias" + +// UpdateAgentAliasRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAgentAlias 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 UpdateAgentAlias for more information on using the UpdateAgentAlias +// 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 UpdateAgentAliasRequest method. +// req, resp := client.UpdateAgentAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentAlias +func (c *BedrockAgent) UpdateAgentAliasRequest(input *UpdateAgentAliasInput) (req *request.Request, output *UpdateAgentAliasOutput) { + op := &request.Operation{ + Name: opUpdateAgentAlias, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/agentaliases/{agentAliasId}/", + } + + if input == nil { + input = &UpdateAgentAliasInput{} + } + + output = &UpdateAgentAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAgentAlias API operation for Agents for Amazon Bedrock. +// +// # Updates an existing Alias for an Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation UpdateAgentAlias for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentAlias +func (c *BedrockAgent) UpdateAgentAlias(input *UpdateAgentAliasInput) (*UpdateAgentAliasOutput, error) { + req, out := c.UpdateAgentAliasRequest(input) + return out, req.Send() +} + +// UpdateAgentAliasWithContext is the same as UpdateAgentAlias with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAgentAlias 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 *BedrockAgent) UpdateAgentAliasWithContext(ctx aws.Context, input *UpdateAgentAliasInput, opts ...request.Option) (*UpdateAgentAliasOutput, error) { + req, out := c.UpdateAgentAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAgentKnowledgeBase = "UpdateAgentKnowledgeBase" + +// UpdateAgentKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAgentKnowledgeBase 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 UpdateAgentKnowledgeBase for more information on using the UpdateAgentKnowledgeBase +// 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 UpdateAgentKnowledgeBaseRequest method. +// req, resp := client.UpdateAgentKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentKnowledgeBase +func (c *BedrockAgent) UpdateAgentKnowledgeBaseRequest(input *UpdateAgentKnowledgeBaseInput) (req *request.Request, output *UpdateAgentKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opUpdateAgentKnowledgeBase, + HTTPMethod: "PUT", + HTTPPath: "/agents/{agentId}/agentversions/{agentVersion}/knowledgebases/{knowledgeBaseId}/", + } + + if input == nil { + input = &UpdateAgentKnowledgeBaseInput{} + } + + output = &UpdateAgentKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAgentKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Updates an existing Knowledge Base associated to an Amazon Bedrock Agent +// +// 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 Agents for Amazon Bedrock's +// API operation UpdateAgentKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentKnowledgeBase +func (c *BedrockAgent) UpdateAgentKnowledgeBase(input *UpdateAgentKnowledgeBaseInput) (*UpdateAgentKnowledgeBaseOutput, error) { + req, out := c.UpdateAgentKnowledgeBaseRequest(input) + return out, req.Send() +} + +// UpdateAgentKnowledgeBaseWithContext is the same as UpdateAgentKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAgentKnowledgeBase 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 *BedrockAgent) UpdateAgentKnowledgeBaseWithContext(ctx aws.Context, input *UpdateAgentKnowledgeBaseInput, opts ...request.Option) (*UpdateAgentKnowledgeBaseOutput, error) { + req, out := c.UpdateAgentKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDataSource = "UpdateDataSource" + +// UpdateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSource 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 UpdateDataSource for more information on using the UpdateDataSource +// 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 UpdateDataSourceRequest method. +// req, resp := client.UpdateDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateDataSource +func (c *BedrockAgent) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { + op := &request.Operation{ + Name: opUpdateDataSource, + HTTPMethod: "PUT", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/datasources/{dataSourceId}", + } + + if input == nil { + input = &UpdateDataSourceInput{} + } + + output = &UpdateDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDataSource API operation for Agents for Amazon Bedrock. +// +// # Update an existing data source +// +// 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 Agents for Amazon Bedrock's +// API operation UpdateDataSource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateDataSource +func (c *BedrockAgent) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + return out, req.Send() +} + +// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDataSource 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 *BedrockAgent) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateKnowledgeBase = "UpdateKnowledgeBase" + +// UpdateKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the UpdateKnowledgeBase 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 UpdateKnowledgeBase for more information on using the UpdateKnowledgeBase +// 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 UpdateKnowledgeBaseRequest method. +// req, resp := client.UpdateKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateKnowledgeBase +func (c *BedrockAgent) UpdateKnowledgeBaseRequest(input *UpdateKnowledgeBaseInput) (req *request.Request, output *UpdateKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opUpdateKnowledgeBase, + HTTPMethod: "PUT", + HTTPPath: "/knowledgebases/{knowledgeBaseId}", + } + + if input == nil { + input = &UpdateKnowledgeBaseInput{} + } + + output = &UpdateKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateKnowledgeBase API operation for Agents for Amazon Bedrock. +// +// # Update an existing knowledge base +// +// 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 Agents for Amazon Bedrock's +// API operation UpdateKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateKnowledgeBase +func (c *BedrockAgent) UpdateKnowledgeBase(input *UpdateKnowledgeBaseInput) (*UpdateKnowledgeBaseOutput, error) { + req, out := c.UpdateKnowledgeBaseRequest(input) + return out, req.Send() +} + +// UpdateKnowledgeBaseWithContext is the same as UpdateKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateKnowledgeBase 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 *BedrockAgent) UpdateKnowledgeBaseWithContext(ctx aws.Context, input *UpdateKnowledgeBaseInput, opts ...request.Option) (*UpdateKnowledgeBaseOutput, error) { + req, out := c.UpdateKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Contains information about the API Schema for the Action Group +type APISchema struct { + _ struct{} `type:"structure"` + + // String OpenAPI Payload + // + // Payload is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by APISchema's + // String and GoString methods. + Payload *string `locationName:"payload" type:"string" sensitive:"true"` + + // The identifier for the S3 resource. + S3 *S3Identifier `locationName:"s3" 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 APISchema) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s APISchema) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *APISchema) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "APISchema"} + if s.S3 != nil { + if err := s.S3.Validate(); err != nil { + invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPayload sets the Payload field's value. +func (s *APISchema) SetPayload(v string) *APISchema { + s.Payload = &v + return s +} + +// SetS3 sets the S3 field's value. +func (s *APISchema) SetS3(v *S3Identifier) *APISchema { + s.S3 = v + return s +} + +// This exception is thrown when a request is denied per access permissions +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Type of Executors for an Action Group +type ActionGroupExecutor struct { + _ struct{} `type:"structure"` + + // ARN of a Lambda. + Lambda *string `locationName:"lambda" 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 ActionGroupExecutor) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionGroupExecutor) GoString() string { + return s.String() +} + +// SetLambda sets the Lambda field's value. +func (s *ActionGroupExecutor) SetLambda(v string) *ActionGroupExecutor { + s.Lambda = &v + return s +} + +// ActionGroup Summary +type ActionGroupSummary struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // ActionGroupId is a required field + ActionGroupId *string `locationName:"actionGroupId" type:"string" required:"true"` + + // Name for a resource. + // + // ActionGroupName is a required field + ActionGroupName *string `locationName:"actionGroupName" type:"string" required:"true"` + + // State of the action group + // + // ActionGroupState is a required field + ActionGroupState *string `locationName:"actionGroupState" type:"string" required:"true" enum:"ActionGroupState"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 ActionGroupSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionGroupSummary) GoString() string { + return s.String() +} + +// SetActionGroupId sets the ActionGroupId field's value. +func (s *ActionGroupSummary) SetActionGroupId(v string) *ActionGroupSummary { + s.ActionGroupId = &v + return s +} + +// SetActionGroupName sets the ActionGroupName field's value. +func (s *ActionGroupSummary) SetActionGroupName(v string) *ActionGroupSummary { + s.ActionGroupName = &v + return s +} + +// SetActionGroupState sets the ActionGroupState field's value. +func (s *ActionGroupSummary) SetActionGroupState(v string) *ActionGroupSummary { + s.ActionGroupState = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ActionGroupSummary) SetDescription(v string) *ActionGroupSummary { + s.Description = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ActionGroupSummary) SetUpdatedAt(v time.Time) *ActionGroupSummary { + s.UpdatedAt = &v + return s +} + +// Contains the information of an agent +type Agent struct { + _ struct{} `type:"structure"` + + // Arn representation of the Agent. + // + // AgentArn is a required field + AgentArn *string `locationName:"agentArn" type:"string" required:"true"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Name for a resource. + // + // AgentName is a required field + AgentName *string `locationName:"agentName" type:"string" required:"true"` + + // ARN of a IAM role. + // + // AgentResourceRoleArn is a required field + AgentResourceRoleArn *string `locationName:"agentResourceRoleArn" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` + + // Draft Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // A KMS key ARN + CustomerEncryptionKeyArn *string `locationName:"customerEncryptionKeyArn" min:"1" type:"string"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Failure Reasons for Error. + FailureReasons []*string `locationName:"failureReasons" type:"list"` + + // ARN or name of a Bedrock model. + FoundationModel *string `locationName:"foundationModel" min:"1" type:"string"` + + // Max Session Time. + // + // IdleSessionTTLInSeconds is a required field + IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer" required:"true"` + + // Instruction for the agent. + // + // Instruction is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Agent's + // String and GoString methods. + Instruction *string `locationName:"instruction" min:"40" type:"string" sensitive:"true"` + + // Time Stamp. + PreparedAt *time.Time `locationName:"preparedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Configuration for prompt override. + // + // PromptOverrideConfiguration is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Agent's + // String and GoString methods. + PromptOverrideConfiguration *PromptOverrideConfiguration `locationName:"promptOverrideConfiguration" type:"structure" sensitive:"true"` + + // The recommended actions users can take to resolve an error in failureReasons. + RecommendedActions []*string `locationName:"recommendedActions" type:"list"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 Agent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Agent) GoString() string { + return s.String() +} + +// SetAgentArn sets the AgentArn field's value. +func (s *Agent) SetAgentArn(v string) *Agent { + s.AgentArn = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *Agent) SetAgentId(v string) *Agent { + s.AgentId = &v + return s +} + +// SetAgentName sets the AgentName field's value. +func (s *Agent) SetAgentName(v string) *Agent { + s.AgentName = &v + return s +} + +// SetAgentResourceRoleArn sets the AgentResourceRoleArn field's value. +func (s *Agent) SetAgentResourceRoleArn(v string) *Agent { + s.AgentResourceRoleArn = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *Agent) SetAgentStatus(v string) *Agent { + s.AgentStatus = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *Agent) SetAgentVersion(v string) *Agent { + s.AgentVersion = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *Agent) SetClientToken(v string) *Agent { + s.ClientToken = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Agent) SetCreatedAt(v time.Time) *Agent { + s.CreatedAt = &v + return s +} + +// SetCustomerEncryptionKeyArn sets the CustomerEncryptionKeyArn field's value. +func (s *Agent) SetCustomerEncryptionKeyArn(v string) *Agent { + s.CustomerEncryptionKeyArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Agent) SetDescription(v string) *Agent { + s.Description = &v + return s +} + +// SetFailureReasons sets the FailureReasons field's value. +func (s *Agent) SetFailureReasons(v []*string) *Agent { + s.FailureReasons = v + return s +} + +// SetFoundationModel sets the FoundationModel field's value. +func (s *Agent) SetFoundationModel(v string) *Agent { + s.FoundationModel = &v + return s +} + +// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. +func (s *Agent) SetIdleSessionTTLInSeconds(v int64) *Agent { + s.IdleSessionTTLInSeconds = &v + return s +} + +// SetInstruction sets the Instruction field's value. +func (s *Agent) SetInstruction(v string) *Agent { + s.Instruction = &v + return s +} + +// SetPreparedAt sets the PreparedAt field's value. +func (s *Agent) SetPreparedAt(v time.Time) *Agent { + s.PreparedAt = &v + return s +} + +// SetPromptOverrideConfiguration sets the PromptOverrideConfiguration field's value. +func (s *Agent) SetPromptOverrideConfiguration(v *PromptOverrideConfiguration) *Agent { + s.PromptOverrideConfiguration = v + return s +} + +// SetRecommendedActions sets the RecommendedActions field's value. +func (s *Agent) SetRecommendedActions(v []*string) *Agent { + s.RecommendedActions = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Agent) SetUpdatedAt(v time.Time) *Agent { + s.UpdatedAt = &v + return s +} + +// Contains the information of an Agent Action Group +type AgentActionGroup struct { + _ struct{} `type:"structure"` + + // Type of Executors for an Action Group + ActionGroupExecutor *ActionGroupExecutor `locationName:"actionGroupExecutor" type:"structure"` + + // Identifier for a resource. + // + // ActionGroupId is a required field + ActionGroupId *string `locationName:"actionGroupId" type:"string" required:"true"` + + // Name for a resource. + // + // ActionGroupName is a required field + ActionGroupName *string `locationName:"actionGroupName" type:"string" required:"true"` + + // State of the action group + // + // ActionGroupState is a required field + ActionGroupState *string `locationName:"actionGroupState" type:"string" required:"true" enum:"ActionGroupState"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Contains information about the API Schema for the Action Group + ApiSchema *APISchema `locationName:"apiSchema" type:"structure"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Action Group Signature for a BuiltIn Action + ParentActionSignature *string `locationName:"parentActionSignature" type:"string" enum:"ActionGroupSignature"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentActionGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentActionGroup) GoString() string { + return s.String() +} + +// SetActionGroupExecutor sets the ActionGroupExecutor field's value. +func (s *AgentActionGroup) SetActionGroupExecutor(v *ActionGroupExecutor) *AgentActionGroup { + s.ActionGroupExecutor = v + return s +} + +// SetActionGroupId sets the ActionGroupId field's value. +func (s *AgentActionGroup) SetActionGroupId(v string) *AgentActionGroup { + s.ActionGroupId = &v + return s +} + +// SetActionGroupName sets the ActionGroupName field's value. +func (s *AgentActionGroup) SetActionGroupName(v string) *AgentActionGroup { + s.ActionGroupName = &v + return s +} + +// SetActionGroupState sets the ActionGroupState field's value. +func (s *AgentActionGroup) SetActionGroupState(v string) *AgentActionGroup { + s.ActionGroupState = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *AgentActionGroup) SetAgentId(v string) *AgentActionGroup { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *AgentActionGroup) SetAgentVersion(v string) *AgentActionGroup { + s.AgentVersion = &v + return s +} + +// SetApiSchema sets the ApiSchema field's value. +func (s *AgentActionGroup) SetApiSchema(v *APISchema) *AgentActionGroup { + s.ApiSchema = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *AgentActionGroup) SetClientToken(v string) *AgentActionGroup { + s.ClientToken = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AgentActionGroup) SetCreatedAt(v time.Time) *AgentActionGroup { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentActionGroup) SetDescription(v string) *AgentActionGroup { + s.Description = &v + return s +} + +// SetParentActionSignature sets the ParentActionSignature field's value. +func (s *AgentActionGroup) SetParentActionSignature(v string) *AgentActionGroup { + s.ParentActionSignature = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentActionGroup) SetUpdatedAt(v time.Time) *AgentActionGroup { + s.UpdatedAt = &v + return s +} + +// Contains the information of an agent alias +type AgentAlias struct { + _ struct{} `type:"structure"` + + // Arn representation of the Agent Alias. + // + // AgentAliasArn is a required field + AgentAliasArn *string `locationName:"agentAliasArn" type:"string" required:"true"` + + // The list of history events for an alias for an Agent. + AgentAliasHistoryEvents []*AgentAliasHistoryEvent `locationName:"agentAliasHistoryEvents" type:"list"` + + // Id for an Agent Alias generated at the server side. + // + // AgentAliasId is a required field + AgentAliasId *string `locationName:"agentAliasId" min:"10" type:"string" required:"true"` + + // Name for a resource. + // + // AgentAliasName is a required field + AgentAliasName *string `locationName:"agentAliasName" type:"string" required:"true"` + + // The statuses an Agent Alias can be in. + // + // AgentAliasStatus is a required field + AgentAliasStatus *string `locationName:"agentAliasStatus" type:"string" required:"true" enum:"AgentAliasStatus"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Routing configuration for an Agent alias. + // + // RoutingConfiguration is a required field + RoutingConfiguration []*AgentAliasRoutingConfigurationListItem `locationName:"routingConfiguration" type:"list" required:"true"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentAlias) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentAlias) GoString() string { + return s.String() +} + +// SetAgentAliasArn sets the AgentAliasArn field's value. +func (s *AgentAlias) SetAgentAliasArn(v string) *AgentAlias { + s.AgentAliasArn = &v + return s +} + +// SetAgentAliasHistoryEvents sets the AgentAliasHistoryEvents field's value. +func (s *AgentAlias) SetAgentAliasHistoryEvents(v []*AgentAliasHistoryEvent) *AgentAlias { + s.AgentAliasHistoryEvents = v + return s +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *AgentAlias) SetAgentAliasId(v string) *AgentAlias { + s.AgentAliasId = &v + return s +} + +// SetAgentAliasName sets the AgentAliasName field's value. +func (s *AgentAlias) SetAgentAliasName(v string) *AgentAlias { + s.AgentAliasName = &v + return s +} + +// SetAgentAliasStatus sets the AgentAliasStatus field's value. +func (s *AgentAlias) SetAgentAliasStatus(v string) *AgentAlias { + s.AgentAliasStatus = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *AgentAlias) SetAgentId(v string) *AgentAlias { + s.AgentId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *AgentAlias) SetClientToken(v string) *AgentAlias { + s.ClientToken = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AgentAlias) SetCreatedAt(v time.Time) *AgentAlias { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentAlias) SetDescription(v string) *AgentAlias { + s.Description = &v + return s +} + +// SetRoutingConfiguration sets the RoutingConfiguration field's value. +func (s *AgentAlias) SetRoutingConfiguration(v []*AgentAliasRoutingConfigurationListItem) *AgentAlias { + s.RoutingConfiguration = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentAlias) SetUpdatedAt(v time.Time) *AgentAlias { + s.UpdatedAt = &v + return s +} + +// History event for an alias for an Agent. +type AgentAliasHistoryEvent struct { + _ struct{} `type:"structure"` + + // Time Stamp. + EndDate *time.Time `locationName:"endDate" type:"timestamp" timestampFormat:"iso8601"` + + // Routing configuration for an Agent alias. + RoutingConfiguration []*AgentAliasRoutingConfigurationListItem `locationName:"routingConfiguration" type:"list"` + + // Time Stamp. + StartDate *time.Time `locationName:"startDate" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentAliasHistoryEvent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentAliasHistoryEvent) GoString() string { + return s.String() +} + +// SetEndDate sets the EndDate field's value. +func (s *AgentAliasHistoryEvent) SetEndDate(v time.Time) *AgentAliasHistoryEvent { + s.EndDate = &v + return s +} + +// SetRoutingConfiguration sets the RoutingConfiguration field's value. +func (s *AgentAliasHistoryEvent) SetRoutingConfiguration(v []*AgentAliasRoutingConfigurationListItem) *AgentAliasHistoryEvent { + s.RoutingConfiguration = v + return s +} + +// SetStartDate sets the StartDate field's value. +func (s *AgentAliasHistoryEvent) SetStartDate(v time.Time) *AgentAliasHistoryEvent { + s.StartDate = &v + return s +} + +// Details about the routing configuration for an Agent alias. +type AgentAliasRoutingConfigurationListItem struct { + _ struct{} `type:"structure"` + + // Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" 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 AgentAliasRoutingConfigurationListItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentAliasRoutingConfigurationListItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AgentAliasRoutingConfigurationListItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AgentAliasRoutingConfigurationListItem"} + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *AgentAliasRoutingConfigurationListItem) SetAgentVersion(v string) *AgentAliasRoutingConfigurationListItem { + s.AgentVersion = &v + return s +} + +// Summary of an alias for an Agent. +type AgentAliasSummary struct { + _ struct{} `type:"structure"` + + // Id for an Agent Alias generated at the server side. + // + // AgentAliasId is a required field + AgentAliasId *string `locationName:"agentAliasId" min:"10" type:"string" required:"true"` + + // Name for a resource. + // + // AgentAliasName is a required field + AgentAliasName *string `locationName:"agentAliasName" type:"string" required:"true"` + + // The statuses an Agent Alias can be in. + // + // AgentAliasStatus is a required field + AgentAliasStatus *string `locationName:"agentAliasStatus" type:"string" required:"true" enum:"AgentAliasStatus"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Routing configuration for an Agent alias. + RoutingConfiguration []*AgentAliasRoutingConfigurationListItem `locationName:"routingConfiguration" type:"list"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentAliasSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentAliasSummary) GoString() string { + return s.String() +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *AgentAliasSummary) SetAgentAliasId(v string) *AgentAliasSummary { + s.AgentAliasId = &v + return s +} + +// SetAgentAliasName sets the AgentAliasName field's value. +func (s *AgentAliasSummary) SetAgentAliasName(v string) *AgentAliasSummary { + s.AgentAliasName = &v + return s +} + +// SetAgentAliasStatus sets the AgentAliasStatus field's value. +func (s *AgentAliasSummary) SetAgentAliasStatus(v string) *AgentAliasSummary { + s.AgentAliasStatus = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AgentAliasSummary) SetCreatedAt(v time.Time) *AgentAliasSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentAliasSummary) SetDescription(v string) *AgentAliasSummary { + s.Description = &v + return s +} + +// SetRoutingConfiguration sets the RoutingConfiguration field's value. +func (s *AgentAliasSummary) SetRoutingConfiguration(v []*AgentAliasRoutingConfigurationListItem) *AgentAliasSummary { + s.RoutingConfiguration = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentAliasSummary) SetUpdatedAt(v time.Time) *AgentAliasSummary { + s.UpdatedAt = &v + return s +} + +// Contains the information of an Agent Knowledge Base. +type AgentKnowledgeBase struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Description of the Resource. + // + // Description is a required field + Description *string `locationName:"description" min:"1" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // State of the knowledge base; whether it is enabled or disabled + // + // KnowledgeBaseState is a required field + KnowledgeBaseState *string `locationName:"knowledgeBaseState" type:"string" required:"true" enum:"KnowledgeBaseState"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentKnowledgeBase) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentKnowledgeBase) GoString() string { + return s.String() +} + +// SetAgentId sets the AgentId field's value. +func (s *AgentKnowledgeBase) SetAgentId(v string) *AgentKnowledgeBase { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *AgentKnowledgeBase) SetAgentVersion(v string) *AgentKnowledgeBase { + s.AgentVersion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AgentKnowledgeBase) SetCreatedAt(v time.Time) *AgentKnowledgeBase { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentKnowledgeBase) SetDescription(v string) *AgentKnowledgeBase { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *AgentKnowledgeBase) SetKnowledgeBaseId(v string) *AgentKnowledgeBase { + s.KnowledgeBaseId = &v + return s +} + +// SetKnowledgeBaseState sets the KnowledgeBaseState field's value. +func (s *AgentKnowledgeBase) SetKnowledgeBaseState(v string) *AgentKnowledgeBase { + s.KnowledgeBaseState = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentKnowledgeBase) SetUpdatedAt(v time.Time) *AgentKnowledgeBase { + s.UpdatedAt = &v + return s +} + +// Agent Knowledge Base Summary +type AgentKnowledgeBaseSummary struct { + _ struct{} `type:"structure"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // State of the knowledge base; whether it is enabled or disabled + // + // KnowledgeBaseState is a required field + KnowledgeBaseState *string `locationName:"knowledgeBaseState" type:"string" required:"true" enum:"KnowledgeBaseState"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentKnowledgeBaseSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentKnowledgeBaseSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *AgentKnowledgeBaseSummary) SetDescription(v string) *AgentKnowledgeBaseSummary { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *AgentKnowledgeBaseSummary) SetKnowledgeBaseId(v string) *AgentKnowledgeBaseSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetKnowledgeBaseState sets the KnowledgeBaseState field's value. +func (s *AgentKnowledgeBaseSummary) SetKnowledgeBaseState(v string) *AgentKnowledgeBaseSummary { + s.KnowledgeBaseState = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentKnowledgeBaseSummary) SetUpdatedAt(v time.Time) *AgentKnowledgeBaseSummary { + s.UpdatedAt = &v + return s +} + +// Summary of Agent. +type AgentSummary struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Name for a resource. + // + // AgentName is a required field + AgentName *string `locationName:"agentName" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Agent Version. + LatestAgentVersion *string `locationName:"latestAgentVersion" min:"1" type:"string"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentSummary) GoString() string { + return s.String() +} + +// SetAgentId sets the AgentId field's value. +func (s *AgentSummary) SetAgentId(v string) *AgentSummary { + s.AgentId = &v + return s +} + +// SetAgentName sets the AgentName field's value. +func (s *AgentSummary) SetAgentName(v string) *AgentSummary { + s.AgentName = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *AgentSummary) SetAgentStatus(v string) *AgentSummary { + s.AgentStatus = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentSummary) SetDescription(v string) *AgentSummary { + s.Description = &v + return s +} + +// SetLatestAgentVersion sets the LatestAgentVersion field's value. +func (s *AgentSummary) SetLatestAgentVersion(v string) *AgentSummary { + s.LatestAgentVersion = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentSummary) SetUpdatedAt(v time.Time) *AgentSummary { + s.UpdatedAt = &v + return s +} + +// Contains the information of an agent version. +type AgentVersion struct { + _ struct{} `type:"structure"` + + // Arn representation of the Agent. + // + // AgentArn is a required field + AgentArn *string `locationName:"agentArn" type:"string" required:"true"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Name for a resource. + // + // AgentName is a required field + AgentName *string `locationName:"agentName" type:"string" required:"true"` + + // ARN of a IAM role. + // + // AgentResourceRoleArn is a required field + AgentResourceRoleArn *string `locationName:"agentResourceRoleArn" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // A KMS key ARN + CustomerEncryptionKeyArn *string `locationName:"customerEncryptionKeyArn" min:"1" type:"string"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Failure Reasons for Error. + FailureReasons []*string `locationName:"failureReasons" type:"list"` + + // ARN or name of a Bedrock model. + FoundationModel *string `locationName:"foundationModel" min:"1" type:"string"` + + // Max Session Time. + // + // IdleSessionTTLInSeconds is a required field + IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer" required:"true"` + + // Instruction for the agent. + // + // Instruction is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AgentVersion's + // String and GoString methods. + Instruction *string `locationName:"instruction" min:"40" type:"string" sensitive:"true"` + + // Configuration for prompt override. + // + // PromptOverrideConfiguration is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AgentVersion's + // String and GoString methods. + PromptOverrideConfiguration *PromptOverrideConfiguration `locationName:"promptOverrideConfiguration" type:"structure" sensitive:"true"` + + // The recommended actions users can take to resolve an error in failureReasons. + RecommendedActions []*string `locationName:"recommendedActions" type:"list"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Numerical Agent Version. + // + // Version is a required field + Version *string `locationName:"version" 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 AgentVersion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentVersion) GoString() string { + return s.String() +} + +// SetAgentArn sets the AgentArn field's value. +func (s *AgentVersion) SetAgentArn(v string) *AgentVersion { + s.AgentArn = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *AgentVersion) SetAgentId(v string) *AgentVersion { + s.AgentId = &v + return s +} + +// SetAgentName sets the AgentName field's value. +func (s *AgentVersion) SetAgentName(v string) *AgentVersion { + s.AgentName = &v + return s +} + +// SetAgentResourceRoleArn sets the AgentResourceRoleArn field's value. +func (s *AgentVersion) SetAgentResourceRoleArn(v string) *AgentVersion { + s.AgentResourceRoleArn = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *AgentVersion) SetAgentStatus(v string) *AgentVersion { + s.AgentStatus = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AgentVersion) SetCreatedAt(v time.Time) *AgentVersion { + s.CreatedAt = &v + return s +} + +// SetCustomerEncryptionKeyArn sets the CustomerEncryptionKeyArn field's value. +func (s *AgentVersion) SetCustomerEncryptionKeyArn(v string) *AgentVersion { + s.CustomerEncryptionKeyArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentVersion) SetDescription(v string) *AgentVersion { + s.Description = &v + return s +} + +// SetFailureReasons sets the FailureReasons field's value. +func (s *AgentVersion) SetFailureReasons(v []*string) *AgentVersion { + s.FailureReasons = v + return s +} + +// SetFoundationModel sets the FoundationModel field's value. +func (s *AgentVersion) SetFoundationModel(v string) *AgentVersion { + s.FoundationModel = &v + return s +} + +// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. +func (s *AgentVersion) SetIdleSessionTTLInSeconds(v int64) *AgentVersion { + s.IdleSessionTTLInSeconds = &v + return s +} + +// SetInstruction sets the Instruction field's value. +func (s *AgentVersion) SetInstruction(v string) *AgentVersion { + s.Instruction = &v + return s +} + +// SetPromptOverrideConfiguration sets the PromptOverrideConfiguration field's value. +func (s *AgentVersion) SetPromptOverrideConfiguration(v *PromptOverrideConfiguration) *AgentVersion { + s.PromptOverrideConfiguration = v + return s +} + +// SetRecommendedActions sets the RecommendedActions field's value. +func (s *AgentVersion) SetRecommendedActions(v []*string) *AgentVersion { + s.RecommendedActions = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentVersion) SetUpdatedAt(v time.Time) *AgentVersion { + s.UpdatedAt = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *AgentVersion) SetVersion(v string) *AgentVersion { + s.Version = &v + return s +} + +// Summary of agent version. +type AgentVersionSummary struct { + _ struct{} `type:"structure"` + + // Name for a resource. + // + // AgentName is a required field + AgentName *string `locationName:"agentName" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` + + // Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 AgentVersionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentVersionSummary) GoString() string { + return s.String() +} + +// SetAgentName sets the AgentName field's value. +func (s *AgentVersionSummary) SetAgentName(v string) *AgentVersionSummary { + s.AgentName = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *AgentVersionSummary) SetAgentStatus(v string) *AgentVersionSummary { + s.AgentStatus = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *AgentVersionSummary) SetAgentVersion(v string) *AgentVersionSummary { + s.AgentVersion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AgentVersionSummary) SetCreatedAt(v time.Time) *AgentVersionSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AgentVersionSummary) SetDescription(v string) *AgentVersionSummary { + s.Description = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AgentVersionSummary) SetUpdatedAt(v time.Time) *AgentVersionSummary { + s.UpdatedAt = &v + return s +} + +// Associate Agent Knowledge Base Request +type AssociateAgentKnowledgeBaseInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Draft Version of the Agent. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Description of the Resource. + // + // Description is a required field + Description *string `locationName:"description" min:"1" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // State of the knowledge base; whether it is enabled or disabled + KnowledgeBaseState *string `locationName:"knowledgeBaseState" type:"string" enum:"KnowledgeBaseState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAgentKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAgentKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateAgentKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateAgentKnowledgeBaseInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 5)) + } + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *AssociateAgentKnowledgeBaseInput) SetAgentId(v string) *AssociateAgentKnowledgeBaseInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *AssociateAgentKnowledgeBaseInput) SetAgentVersion(v string) *AssociateAgentKnowledgeBaseInput { + s.AgentVersion = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AssociateAgentKnowledgeBaseInput) SetDescription(v string) *AssociateAgentKnowledgeBaseInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *AssociateAgentKnowledgeBaseInput) SetKnowledgeBaseId(v string) *AssociateAgentKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetKnowledgeBaseState sets the KnowledgeBaseState field's value. +func (s *AssociateAgentKnowledgeBaseInput) SetKnowledgeBaseState(v string) *AssociateAgentKnowledgeBaseInput { + s.KnowledgeBaseState = &v + return s +} + +// Associate Agent Knowledge Base Response +type AssociateAgentKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an Agent Knowledge Base. + // + // AgentKnowledgeBase is a required field + AgentKnowledgeBase *AgentKnowledgeBase `locationName:"agentKnowledgeBase" 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 AssociateAgentKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAgentKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetAgentKnowledgeBase sets the AgentKnowledgeBase field's value. +func (s *AssociateAgentKnowledgeBaseOutput) SetAgentKnowledgeBase(v *AgentKnowledgeBase) *AssociateAgentKnowledgeBaseOutput { + s.AgentKnowledgeBase = v + return s +} + +// Configures chunking strategy +type ChunkingConfiguration struct { + _ struct{} `type:"structure"` + + // The type of chunking strategy + // + // ChunkingStrategy is a required field + ChunkingStrategy *string `locationName:"chunkingStrategy" type:"string" required:"true" enum:"ChunkingStrategy"` + + // Configures fixed size chunking strategy + FixedSizeChunkingConfiguration *FixedSizeChunkingConfiguration `locationName:"fixedSizeChunkingConfiguration" 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 ChunkingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChunkingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChunkingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChunkingConfiguration"} + if s.ChunkingStrategy == nil { + invalidParams.Add(request.NewErrParamRequired("ChunkingStrategy")) + } + if s.FixedSizeChunkingConfiguration != nil { + if err := s.FixedSizeChunkingConfiguration.Validate(); err != nil { + invalidParams.AddNested("FixedSizeChunkingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChunkingStrategy sets the ChunkingStrategy field's value. +func (s *ChunkingConfiguration) SetChunkingStrategy(v string) *ChunkingConfiguration { + s.ChunkingStrategy = &v + return s +} + +// SetFixedSizeChunkingConfiguration sets the FixedSizeChunkingConfiguration field's value. +func (s *ChunkingConfiguration) SetFixedSizeChunkingConfiguration(v *FixedSizeChunkingConfiguration) *ChunkingConfiguration { + s.FixedSizeChunkingConfiguration = v + return s +} + +// This exception is thrown when there is a conflict performing an operation +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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 +} + +// Create Action Group Request +type CreateAgentActionGroupInput struct { + _ struct{} `type:"structure"` + + // Type of Executors for an Action Group + ActionGroupExecutor *ActionGroupExecutor `locationName:"actionGroupExecutor" type:"structure"` + + // Name for a resource. + // + // ActionGroupName is a required field + ActionGroupName *string `locationName:"actionGroupName" type:"string" required:"true"` + + // State of the action group + ActionGroupState *string `locationName:"actionGroupState" type:"string" enum:"ActionGroupState"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Draft Version of the Agent. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Contains information about the API Schema for the Action Group + ApiSchema *APISchema `locationName:"apiSchema" type:"structure"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string" idempotencyToken:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Action Group Signature for a BuiltIn Action + ParentActionGroupSignature *string `locationName:"parentActionGroupSignature" type:"string" enum:"ActionGroupSignature"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentActionGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentActionGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAgentActionGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAgentActionGroupInput"} + if s.ActionGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("ActionGroupName")) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 5)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 33 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.ApiSchema != nil { + if err := s.ApiSchema.Validate(); err != nil { + invalidParams.AddNested("ApiSchema", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionGroupExecutor sets the ActionGroupExecutor field's value. +func (s *CreateAgentActionGroupInput) SetActionGroupExecutor(v *ActionGroupExecutor) *CreateAgentActionGroupInput { + s.ActionGroupExecutor = v + return s +} + +// SetActionGroupName sets the ActionGroupName field's value. +func (s *CreateAgentActionGroupInput) SetActionGroupName(v string) *CreateAgentActionGroupInput { + s.ActionGroupName = &v + return s +} + +// SetActionGroupState sets the ActionGroupState field's value. +func (s *CreateAgentActionGroupInput) SetActionGroupState(v string) *CreateAgentActionGroupInput { + s.ActionGroupState = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *CreateAgentActionGroupInput) SetAgentId(v string) *CreateAgentActionGroupInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *CreateAgentActionGroupInput) SetAgentVersion(v string) *CreateAgentActionGroupInput { + s.AgentVersion = &v + return s +} + +// SetApiSchema sets the ApiSchema field's value. +func (s *CreateAgentActionGroupInput) SetApiSchema(v *APISchema) *CreateAgentActionGroupInput { + s.ApiSchema = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAgentActionGroupInput) SetClientToken(v string) *CreateAgentActionGroupInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAgentActionGroupInput) SetDescription(v string) *CreateAgentActionGroupInput { + s.Description = &v + return s +} + +// SetParentActionGroupSignature sets the ParentActionGroupSignature field's value. +func (s *CreateAgentActionGroupInput) SetParentActionGroupSignature(v string) *CreateAgentActionGroupInput { + s.ParentActionGroupSignature = &v + return s +} + +// Create Action Group Response +type CreateAgentActionGroupOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an Agent Action Group + // + // AgentActionGroup is a required field + AgentActionGroup *AgentActionGroup `locationName:"agentActionGroup" 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 CreateAgentActionGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentActionGroupOutput) GoString() string { + return s.String() +} + +// SetAgentActionGroup sets the AgentActionGroup field's value. +func (s *CreateAgentActionGroupOutput) SetAgentActionGroup(v *AgentActionGroup) *CreateAgentActionGroupOutput { + s.AgentActionGroup = v + return s +} + +// Create Agent Alias Request +type CreateAgentAliasInput struct { + _ struct{} `type:"structure"` + + // Name for a resource. + // + // AgentAliasName is a required field + AgentAliasName *string `locationName:"agentAliasName" type:"string" required:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string" idempotencyToken:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Routing configuration for an Agent alias. + RoutingConfiguration []*AgentAliasRoutingConfigurationListItem `locationName:"routingConfiguration" type:"list"` + + // A map of tag keys and values + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentAliasInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentAliasInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAgentAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAgentAliasInput"} + if s.AgentAliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AgentAliasName")) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 33 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.RoutingConfiguration != nil { + for i, v := range s.RoutingConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RoutingConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentAliasName sets the AgentAliasName field's value. +func (s *CreateAgentAliasInput) SetAgentAliasName(v string) *CreateAgentAliasInput { + s.AgentAliasName = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *CreateAgentAliasInput) SetAgentId(v string) *CreateAgentAliasInput { + s.AgentId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAgentAliasInput) SetClientToken(v string) *CreateAgentAliasInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAgentAliasInput) SetDescription(v string) *CreateAgentAliasInput { + s.Description = &v + return s +} + +// SetRoutingConfiguration sets the RoutingConfiguration field's value. +func (s *CreateAgentAliasInput) SetRoutingConfiguration(v []*AgentAliasRoutingConfigurationListItem) *CreateAgentAliasInput { + s.RoutingConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAgentAliasInput) SetTags(v map[string]*string) *CreateAgentAliasInput { + s.Tags = v + return s +} + +// Create Agent Alias Response +type CreateAgentAliasOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent alias + // + // AgentAlias is a required field + AgentAlias *AgentAlias `locationName:"agentAlias" 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 CreateAgentAliasOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentAliasOutput) GoString() string { + return s.String() +} + +// SetAgentAlias sets the AgentAlias field's value. +func (s *CreateAgentAliasOutput) SetAgentAlias(v *AgentAlias) *CreateAgentAliasOutput { + s.AgentAlias = v + return s +} + +// Create Agent Request +type CreateAgentInput struct { + _ struct{} `type:"structure"` + + // Name for a resource. + // + // AgentName is a required field + AgentName *string `locationName:"agentName" type:"string" required:"true"` + + // ARN of a IAM role. + // + // AgentResourceRoleArn is a required field + AgentResourceRoleArn *string `locationName:"agentResourceRoleArn" type:"string" required:"true"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string" idempotencyToken:"true"` + + // A KMS key ARN + CustomerEncryptionKeyArn *string `locationName:"customerEncryptionKeyArn" min:"1" type:"string"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // ARN or name of a Bedrock model. + FoundationModel *string `locationName:"foundationModel" min:"1" type:"string"` + + // Max Session Time. + IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` + + // Instruction for the agent. + // + // Instruction is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAgentInput's + // String and GoString methods. + Instruction *string `locationName:"instruction" min:"40" type:"string" sensitive:"true"` + + // Configuration for prompt override. + // + // PromptOverrideConfiguration is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAgentInput's + // String and GoString methods. + PromptOverrideConfiguration *PromptOverrideConfiguration `locationName:"promptOverrideConfiguration" type:"structure" sensitive:"true"` + + // A map of tag keys and values + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAgentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAgentInput"} + if s.AgentName == nil { + invalidParams.Add(request.NewErrParamRequired("AgentName")) + } + if s.AgentResourceRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("AgentResourceRoleArn")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 33 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) + } + if s.CustomerEncryptionKeyArn != nil && len(*s.CustomerEncryptionKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomerEncryptionKeyArn", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FoundationModel != nil && len(*s.FoundationModel) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FoundationModel", 1)) + } + if s.IdleSessionTTLInSeconds != nil && *s.IdleSessionTTLInSeconds < 60 { + invalidParams.Add(request.NewErrParamMinValue("IdleSessionTTLInSeconds", 60)) + } + if s.Instruction != nil && len(*s.Instruction) < 40 { + invalidParams.Add(request.NewErrParamMinLen("Instruction", 40)) + } + if s.PromptOverrideConfiguration != nil { + if err := s.PromptOverrideConfiguration.Validate(); err != nil { + invalidParams.AddNested("PromptOverrideConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentName sets the AgentName field's value. +func (s *CreateAgentInput) SetAgentName(v string) *CreateAgentInput { + s.AgentName = &v + return s +} + +// SetAgentResourceRoleArn sets the AgentResourceRoleArn field's value. +func (s *CreateAgentInput) SetAgentResourceRoleArn(v string) *CreateAgentInput { + s.AgentResourceRoleArn = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAgentInput) SetClientToken(v string) *CreateAgentInput { + s.ClientToken = &v + return s +} + +// SetCustomerEncryptionKeyArn sets the CustomerEncryptionKeyArn field's value. +func (s *CreateAgentInput) SetCustomerEncryptionKeyArn(v string) *CreateAgentInput { + s.CustomerEncryptionKeyArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAgentInput) SetDescription(v string) *CreateAgentInput { + s.Description = &v + return s +} + +// SetFoundationModel sets the FoundationModel field's value. +func (s *CreateAgentInput) SetFoundationModel(v string) *CreateAgentInput { + s.FoundationModel = &v + return s +} + +// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. +func (s *CreateAgentInput) SetIdleSessionTTLInSeconds(v int64) *CreateAgentInput { + s.IdleSessionTTLInSeconds = &v + return s +} + +// SetInstruction sets the Instruction field's value. +func (s *CreateAgentInput) SetInstruction(v string) *CreateAgentInput { + s.Instruction = &v + return s +} + +// SetPromptOverrideConfiguration sets the PromptOverrideConfiguration field's value. +func (s *CreateAgentInput) SetPromptOverrideConfiguration(v *PromptOverrideConfiguration) *CreateAgentInput { + s.PromptOverrideConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAgentInput) SetTags(v map[string]*string) *CreateAgentInput { + s.Tags = v + return s +} + +// Create Agent Response +type CreateAgentOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent + // + // Agent is a required field + Agent *Agent `locationName:"agent" 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 CreateAgentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAgentOutput) GoString() string { + return s.String() +} + +// SetAgent sets the Agent field's value. +func (s *CreateAgentOutput) SetAgent(v *Agent) *CreateAgentOutput { + s.Agent = v + return s +} + +type CreateDataSourceInput struct { + _ struct{} `type:"structure"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string" idempotencyToken:"true"` + + // Specifies a raw data source location to ingest. + // + // DataSourceConfiguration is a required field + DataSourceConfiguration *DataSourceConfiguration `locationName:"dataSourceConfiguration" type:"structure" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // Server-side encryption configuration. + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // Configures ingestion for a vector knowledge base + VectorIngestionConfiguration *VectorIngestionConfiguration `locationName:"vectorIngestionConfiguration" 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 CreateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 33 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) + } + if s.DataSourceConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceConfiguration")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.DataSourceConfiguration != nil { + if err := s.DataSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("DataSourceConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.ServerSideEncryptionConfiguration != nil { + if err := s.ServerSideEncryptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("ServerSideEncryptionConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.VectorIngestionConfiguration != nil { + if err := s.VectorIngestionConfiguration.Validate(); err != nil { + invalidParams.AddNested("VectorIngestionConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateDataSourceInput) SetClientToken(v string) *CreateDataSourceInput { + s.ClientToken = &v + return s +} + +// SetDataSourceConfiguration sets the DataSourceConfiguration field's value. +func (s *CreateDataSourceInput) SetDataSourceConfiguration(v *DataSourceConfiguration) *CreateDataSourceInput { + s.DataSourceConfiguration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateDataSourceInput) SetDescription(v string) *CreateDataSourceInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *CreateDataSourceInput) SetKnowledgeBaseId(v string) *CreateDataSourceInput { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDataSourceInput) SetName(v string) *CreateDataSourceInput { + s.Name = &v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *CreateDataSourceInput) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *CreateDataSourceInput { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetVectorIngestionConfiguration sets the VectorIngestionConfiguration field's value. +func (s *CreateDataSourceInput) SetVectorIngestionConfiguration(v *VectorIngestionConfiguration) *CreateDataSourceInput { + s.VectorIngestionConfiguration = v + return s +} + +type CreateDataSourceOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of a data source. + // + // DataSource is a required field + DataSource *DataSource `locationName:"dataSource" 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 CreateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDataSourceOutput) GoString() string { + return s.String() +} + +// SetDataSource sets the DataSource field's value. +func (s *CreateDataSourceOutput) SetDataSource(v *DataSource) *CreateDataSourceOutput { + s.DataSource = v + return s +} + +type CreateKnowledgeBaseInput struct { + _ struct{} `type:"structure"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string" idempotencyToken:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Configures a bedrock knowledge base. + // + // KnowledgeBaseConfiguration is a required field + KnowledgeBaseConfiguration *KnowledgeBaseConfiguration `locationName:"knowledgeBaseConfiguration" type:"structure" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // ARN of a IAM role. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // Configures the physical storage of ingested data in a knowledge base. + // + // StorageConfiguration is a required field + StorageConfiguration *StorageConfiguration `locationName:"storageConfiguration" type:"structure" required:"true"` + + // A map of tag keys and values + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateKnowledgeBaseInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 33 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseConfiguration")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.StorageConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("StorageConfiguration")) + } + if s.KnowledgeBaseConfiguration != nil { + if err := s.KnowledgeBaseConfiguration.Validate(); err != nil { + invalidParams.AddNested("KnowledgeBaseConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.StorageConfiguration != nil { + if err := s.StorageConfiguration.Validate(); err != nil { + invalidParams.AddNested("StorageConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateKnowledgeBaseInput) SetClientToken(v string) *CreateKnowledgeBaseInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateKnowledgeBaseInput) SetDescription(v string) *CreateKnowledgeBaseInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseConfiguration sets the KnowledgeBaseConfiguration field's value. +func (s *CreateKnowledgeBaseInput) SetKnowledgeBaseConfiguration(v *KnowledgeBaseConfiguration) *CreateKnowledgeBaseInput { + s.KnowledgeBaseConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateKnowledgeBaseInput) SetName(v string) *CreateKnowledgeBaseInput { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateKnowledgeBaseInput) SetRoleArn(v string) *CreateKnowledgeBaseInput { + s.RoleArn = &v + return s +} + +// SetStorageConfiguration sets the StorageConfiguration field's value. +func (s *CreateKnowledgeBaseInput) SetStorageConfiguration(v *StorageConfiguration) *CreateKnowledgeBaseInput { + s.StorageConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateKnowledgeBaseInput) SetTags(v map[string]*string) *CreateKnowledgeBaseInput { + s.Tags = v + return s +} + +type CreateKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of a knowledge base. + // + // KnowledgeBase is a required field + KnowledgeBase *KnowledgeBase `locationName:"knowledgeBase" 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 CreateKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBase sets the KnowledgeBase field's value. +func (s *CreateKnowledgeBaseOutput) SetKnowledgeBase(v *KnowledgeBase) *CreateKnowledgeBaseOutput { + s.KnowledgeBase = v + return s +} + +// Contains the information of a data source. +type DataSource struct { + _ struct{} `type:"structure"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Specifies a raw data source location to ingest. + // + // DataSourceConfiguration is a required field + DataSourceConfiguration *DataSourceConfiguration `locationName:"dataSourceConfiguration" type:"structure" required:"true"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // Server-side encryption configuration. + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // The status of a data source. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceStatus"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Configures ingestion for a vector knowledge base + VectorIngestionConfiguration *VectorIngestionConfiguration `locationName:"vectorIngestionConfiguration" 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 DataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSource) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DataSource) SetCreatedAt(v time.Time) *DataSource { + s.CreatedAt = &v + return s +} + +// SetDataSourceConfiguration sets the DataSourceConfiguration field's value. +func (s *DataSource) SetDataSourceConfiguration(v *DataSourceConfiguration) *DataSource { + s.DataSourceConfiguration = v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DataSource) SetDataSourceId(v string) *DataSource { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DataSource) SetDescription(v string) *DataSource { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DataSource) SetKnowledgeBaseId(v string) *DataSource { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSource) SetName(v string) *DataSource { + s.Name = &v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *DataSource) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *DataSource { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataSource) SetStatus(v string) *DataSource { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataSource) SetUpdatedAt(v time.Time) *DataSource { + s.UpdatedAt = &v + return s +} + +// SetVectorIngestionConfiguration sets the VectorIngestionConfiguration field's value. +func (s *DataSource) SetVectorIngestionConfiguration(v *VectorIngestionConfiguration) *DataSource { + s.VectorIngestionConfiguration = v + return s +} + +// Specifies a raw data source location to ingest. +type DataSourceConfiguration struct { + _ struct{} `type:"structure"` + + // Configures an S3 data source location. + S3Configuration *S3DataSourceConfiguration `locationName:"s3Configuration" type:"structure"` + + // The type of the data source location. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DataSourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceConfiguration"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.S3Configuration != nil { + if err := s.S3Configuration.Validate(); err != nil { + invalidParams.AddNested("S3Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Configuration sets the S3Configuration field's value. +func (s *DataSourceConfiguration) SetS3Configuration(v *S3DataSourceConfiguration) *DataSourceConfiguration { + s.S3Configuration = v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceConfiguration) SetType(v string) *DataSourceConfiguration { + s.Type = &v + return s +} + +// Summary information of a data source. +type DataSourceSummary struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The status of a data source. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceStatus"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 DataSourceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceSummary) GoString() string { + return s.String() +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DataSourceSummary) SetDataSourceId(v string) *DataSourceSummary { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DataSourceSummary) SetDescription(v string) *DataSourceSummary { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DataSourceSummary) SetKnowledgeBaseId(v string) *DataSourceSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceSummary) SetName(v string) *DataSourceSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataSourceSummary) SetStatus(v string) *DataSourceSummary { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataSourceSummary) SetUpdatedAt(v time.Time) *DataSourceSummary { + s.UpdatedAt = &v + return s +} + +// Delete Action Group Request +type DeleteAgentActionGroupInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent ActionGroup is created + // + // ActionGroupId is a required field + ActionGroupId *string `location:"uri" locationName:"actionGroupId" type:"string" required:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Draft Version of the Agent. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Skips checking if resource is in use when set to true. Defaults to false + SkipResourceInUseCheck *bool `location:"querystring" locationName:"skipResourceInUseCheck" 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 DeleteAgentActionGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentActionGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAgentActionGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAgentActionGroupInput"} + if s.ActionGroupId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionGroupId")) + } + if s.ActionGroupId != nil && len(*s.ActionGroupId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionGroupId", 1)) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionGroupId sets the ActionGroupId field's value. +func (s *DeleteAgentActionGroupInput) SetActionGroupId(v string) *DeleteAgentActionGroupInput { + s.ActionGroupId = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentActionGroupInput) SetAgentId(v string) *DeleteAgentActionGroupInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *DeleteAgentActionGroupInput) SetAgentVersion(v string) *DeleteAgentActionGroupInput { + s.AgentVersion = &v + return s +} + +// SetSkipResourceInUseCheck sets the SkipResourceInUseCheck field's value. +func (s *DeleteAgentActionGroupInput) SetSkipResourceInUseCheck(v bool) *DeleteAgentActionGroupInput { + s.SkipResourceInUseCheck = &v + return s +} + +// Delete Action Group Response +type DeleteAgentActionGroupOutput 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 DeleteAgentActionGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentActionGroupOutput) GoString() string { + return s.String() +} + +// Delete Agent Alias Request +type DeleteAgentAliasInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent Alias is created + // + // AgentAliasId is a required field + AgentAliasId *string `location:"uri" locationName:"agentAliasId" min:"10" type:"string" required:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" 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 DeleteAgentAliasInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentAliasInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAgentAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAgentAliasInput"} + if s.AgentAliasId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentAliasId")) + } + if s.AgentAliasId != nil && len(*s.AgentAliasId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("AgentAliasId", 10)) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *DeleteAgentAliasInput) SetAgentAliasId(v string) *DeleteAgentAliasInput { + s.AgentAliasId = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentAliasInput) SetAgentId(v string) *DeleteAgentAliasInput { + s.AgentId = &v + return s +} + +// Delete Agent Alias Response +type DeleteAgentAliasOutput struct { + _ struct{} `type:"structure"` + + // Id for an Agent Alias generated at the server side. + // + // AgentAliasId is a required field + AgentAliasId *string `locationName:"agentAliasId" min:"10" type:"string" required:"true"` + + // The statuses an Agent Alias can be in. + // + // AgentAliasStatus is a required field + AgentAliasStatus *string `locationName:"agentAliasStatus" type:"string" required:"true" enum:"AgentAliasStatus"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" 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 DeleteAgentAliasOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentAliasOutput) GoString() string { + return s.String() +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *DeleteAgentAliasOutput) SetAgentAliasId(v string) *DeleteAgentAliasOutput { + s.AgentAliasId = &v + return s +} + +// SetAgentAliasStatus sets the AgentAliasStatus field's value. +func (s *DeleteAgentAliasOutput) SetAgentAliasStatus(v string) *DeleteAgentAliasOutput { + s.AgentAliasStatus = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentAliasOutput) SetAgentId(v string) *DeleteAgentAliasOutput { + s.AgentId = &v + return s +} + +// Delete Agent Request +type DeleteAgentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Skips checking if resource is in use when set to true. Defaults to false + SkipResourceInUseCheck *bool `location:"querystring" locationName:"skipResourceInUseCheck" 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 DeleteAgentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAgentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAgentInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentInput) SetAgentId(v string) *DeleteAgentInput { + s.AgentId = &v + return s +} + +// SetSkipResourceInUseCheck sets the SkipResourceInUseCheck field's value. +func (s *DeleteAgentInput) SetSkipResourceInUseCheck(v bool) *DeleteAgentInput { + s.SkipResourceInUseCheck = &v + return s +} + +// Delete Agent Response +type DeleteAgentOutput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentOutput) GoString() string { + return s.String() +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentOutput) SetAgentId(v string) *DeleteAgentOutput { + s.AgentId = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *DeleteAgentOutput) SetAgentStatus(v string) *DeleteAgentOutput { + s.AgentStatus = &v + return s +} + +// Delete Agent Version Request +type DeleteAgentVersionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Numerical Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" type:"string" required:"true"` + + // Skips checking if resource is in use when set to true. Defaults to false + SkipResourceInUseCheck *bool `location:"querystring" locationName:"skipResourceInUseCheck" 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 DeleteAgentVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAgentVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAgentVersionInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentVersionInput) SetAgentId(v string) *DeleteAgentVersionInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *DeleteAgentVersionInput) SetAgentVersion(v string) *DeleteAgentVersionInput { + s.AgentVersion = &v + return s +} + +// SetSkipResourceInUseCheck sets the SkipResourceInUseCheck field's value. +func (s *DeleteAgentVersionInput) SetSkipResourceInUseCheck(v bool) *DeleteAgentVersionInput { + s.SkipResourceInUseCheck = &v + return s +} + +// Delete Agent Version Response +type DeleteAgentVersionOutput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` + + // Numerical Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" 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 DeleteAgentVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAgentVersionOutput) GoString() string { + return s.String() +} + +// SetAgentId sets the AgentId field's value. +func (s *DeleteAgentVersionOutput) SetAgentId(v string) *DeleteAgentVersionOutput { + s.AgentId = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *DeleteAgentVersionOutput) SetAgentStatus(v string) *DeleteAgentVersionOutput { + s.AgentStatus = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *DeleteAgentVersionOutput) SetAgentVersion(v string) *DeleteAgentVersionOutput { + s.AgentVersion = &v + return s +} + +type DeleteDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DeleteDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DeleteDataSourceInput) SetDataSourceId(v string) *DeleteDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteDataSourceInput) SetKnowledgeBaseId(v string) *DeleteDataSourceInput { + s.KnowledgeBaseId = &v + return s +} + +type DeleteDataSourceOutput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The status of a data source. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceOutput) GoString() string { + return s.String() +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DeleteDataSourceOutput) SetDataSourceId(v string) *DeleteDataSourceOutput { + s.DataSourceId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteDataSourceOutput) SetKnowledgeBaseId(v string) *DeleteDataSourceOutput { + s.KnowledgeBaseId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteDataSourceOutput) SetStatus(v string) *DeleteDataSourceOutput { + s.Status = &v + return s +} + +type DeleteKnowledgeBaseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DeleteKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKnowledgeBaseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteKnowledgeBaseInput) SetKnowledgeBaseId(v string) *DeleteKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +type DeleteKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The status of a knowledge base. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"KnowledgeBaseStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteKnowledgeBaseOutput) SetKnowledgeBaseId(v string) *DeleteKnowledgeBaseOutput { + s.KnowledgeBaseId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteKnowledgeBaseOutput) SetStatus(v string) *DeleteKnowledgeBaseOutput { + s.Status = &v + return s +} + +// Disassociate Agent Knowledge Base Request +type DisassociateAgentKnowledgeBaseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Draft Version of the Agent. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Id generated at the server side when a Knowledge Base is associated to an + // Agent + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DisassociateAgentKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateAgentKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateAgentKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateAgentKnowledgeBaseInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 5)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *DisassociateAgentKnowledgeBaseInput) SetAgentId(v string) *DisassociateAgentKnowledgeBaseInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *DisassociateAgentKnowledgeBaseInput) SetAgentVersion(v string) *DisassociateAgentKnowledgeBaseInput { + s.AgentVersion = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DisassociateAgentKnowledgeBaseInput) SetKnowledgeBaseId(v string) *DisassociateAgentKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +// Disassociate Agent Knowledge Base Response +type DisassociateAgentKnowledgeBaseOutput 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 DisassociateAgentKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateAgentKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// Configures fixed size chunking strategy +type FixedSizeChunkingConfiguration struct { + _ struct{} `type:"structure"` + + // The maximum number of tokens per chunk. + // + // MaxTokens is a required field + MaxTokens *int64 `locationName:"maxTokens" min:"1" type:"integer" required:"true"` + + // The overlap percentage between adjacent chunks. + // + // OverlapPercentage is a required field + OverlapPercentage *int64 `locationName:"overlapPercentage" min:"1" type:"integer" 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 FixedSizeChunkingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FixedSizeChunkingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FixedSizeChunkingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FixedSizeChunkingConfiguration"} + if s.MaxTokens == nil { + invalidParams.Add(request.NewErrParamRequired("MaxTokens")) + } + if s.MaxTokens != nil && *s.MaxTokens < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxTokens", 1)) + } + if s.OverlapPercentage == nil { + invalidParams.Add(request.NewErrParamRequired("OverlapPercentage")) + } + if s.OverlapPercentage != nil && *s.OverlapPercentage < 1 { + invalidParams.Add(request.NewErrParamMinValue("OverlapPercentage", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxTokens sets the MaxTokens field's value. +func (s *FixedSizeChunkingConfiguration) SetMaxTokens(v int64) *FixedSizeChunkingConfiguration { + s.MaxTokens = &v + return s +} + +// SetOverlapPercentage sets the OverlapPercentage field's value. +func (s *FixedSizeChunkingConfiguration) SetOverlapPercentage(v int64) *FixedSizeChunkingConfiguration { + s.OverlapPercentage = &v + return s +} + +// Get Action Group Request +type GetAgentActionGroupInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent Action Group is created + // + // ActionGroupId is a required field + ActionGroupId *string `location:"uri" locationName:"actionGroupId" type:"string" required:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Version number generated when a version is created + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" 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 GetAgentActionGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentActionGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAgentActionGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAgentActionGroupInput"} + if s.ActionGroupId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionGroupId")) + } + if s.ActionGroupId != nil && len(*s.ActionGroupId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionGroupId", 1)) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionGroupId sets the ActionGroupId field's value. +func (s *GetAgentActionGroupInput) SetActionGroupId(v string) *GetAgentActionGroupInput { + s.ActionGroupId = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *GetAgentActionGroupInput) SetAgentId(v string) *GetAgentActionGroupInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *GetAgentActionGroupInput) SetAgentVersion(v string) *GetAgentActionGroupInput { + s.AgentVersion = &v + return s +} + +// Get Action Group Response +type GetAgentActionGroupOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an Agent Action Group + // + // AgentActionGroup is a required field + AgentActionGroup *AgentActionGroup `locationName:"agentActionGroup" 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 GetAgentActionGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentActionGroupOutput) GoString() string { + return s.String() +} + +// SetAgentActionGroup sets the AgentActionGroup field's value. +func (s *GetAgentActionGroupOutput) SetAgentActionGroup(v *AgentActionGroup) *GetAgentActionGroupOutput { + s.AgentActionGroup = v + return s +} + +// Get Agent Alias Request +type GetAgentAliasInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent Alias is created + // + // AgentAliasId is a required field + AgentAliasId *string `location:"uri" locationName:"agentAliasId" min:"10" type:"string" required:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" 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 GetAgentAliasInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentAliasInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAgentAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAgentAliasInput"} + if s.AgentAliasId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentAliasId")) + } + if s.AgentAliasId != nil && len(*s.AgentAliasId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("AgentAliasId", 10)) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *GetAgentAliasInput) SetAgentAliasId(v string) *GetAgentAliasInput { + s.AgentAliasId = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *GetAgentAliasInput) SetAgentId(v string) *GetAgentAliasInput { + s.AgentId = &v + return s +} + +// Get Agent Alias Response +type GetAgentAliasOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent alias + // + // AgentAlias is a required field + AgentAlias *AgentAlias `locationName:"agentAlias" 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 GetAgentAliasOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentAliasOutput) GoString() string { + return s.String() +} + +// SetAgentAlias sets the AgentAlias field's value. +func (s *GetAgentAliasOutput) SetAgentAlias(v *AgentAlias) *GetAgentAliasOutput { + s.AgentAlias = v + return s +} + +// Get Agent Request +type GetAgentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" 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 GetAgentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAgentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAgentInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *GetAgentInput) SetAgentId(v string) *GetAgentInput { + s.AgentId = &v + return s +} + +// Get Agent Knowledge Base Request +type GetAgentKnowledgeBaseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Version number generated when a version is created + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Id generated at the server side when a Knowledge Base is associated + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetAgentKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAgentKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAgentKnowledgeBaseInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *GetAgentKnowledgeBaseInput) SetAgentId(v string) *GetAgentKnowledgeBaseInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *GetAgentKnowledgeBaseInput) SetAgentVersion(v string) *GetAgentKnowledgeBaseInput { + s.AgentVersion = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetAgentKnowledgeBaseInput) SetKnowledgeBaseId(v string) *GetAgentKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +// Get Agent Knowledge Base Response +type GetAgentKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an Agent Knowledge Base. + // + // AgentKnowledgeBase is a required field + AgentKnowledgeBase *AgentKnowledgeBase `locationName:"agentKnowledgeBase" 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 GetAgentKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetAgentKnowledgeBase sets the AgentKnowledgeBase field's value. +func (s *GetAgentKnowledgeBaseOutput) SetAgentKnowledgeBase(v *AgentKnowledgeBase) *GetAgentKnowledgeBaseOutput { + s.AgentKnowledgeBase = v + return s +} + +// Get Agent Response +type GetAgentOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent + // + // Agent is a required field + Agent *Agent `locationName:"agent" 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 GetAgentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentOutput) GoString() string { + return s.String() +} + +// SetAgent sets the Agent field's value. +func (s *GetAgentOutput) SetAgent(v *Agent) *GetAgentOutput { + s.Agent = v + return s +} + +// Get Agent Version Request +type GetAgentVersionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Numerical Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" 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 GetAgentVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAgentVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAgentVersionInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *GetAgentVersionInput) SetAgentId(v string) *GetAgentVersionInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *GetAgentVersionInput) SetAgentVersion(v string) *GetAgentVersionInput { + s.AgentVersion = &v + return s +} + +// Get Agent Version Response +type GetAgentVersionOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent version. + // + // AgentVersion is a required field + AgentVersion *AgentVersion `locationName:"agentVersion" 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 GetAgentVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgentVersionOutput) GoString() string { + return s.String() +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *GetAgentVersionOutput) SetAgentVersion(v *AgentVersion) *GetAgentVersionOutput { + s.AgentVersion = v + return s +} + +type GetDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"} + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *GetDataSourceInput) SetDataSourceId(v string) *GetDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetDataSourceInput) SetKnowledgeBaseId(v string) *GetDataSourceInput { + s.KnowledgeBaseId = &v + return s +} + +type GetDataSourceOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of a data source. + // + // DataSource is a required field + DataSource *DataSource `locationName:"dataSource" 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 GetDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceOutput) GoString() string { + return s.String() +} + +// SetDataSource sets the DataSource field's value. +func (s *GetDataSourceOutput) SetDataSource(v *DataSource) *GetDataSourceOutput { + s.DataSource = v + return s +} + +type GetIngestionJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" type:"string" required:"true"` + + // Identifier for a resource. + // + // IngestionJobId is a required field + IngestionJobId *string `location:"uri" locationName:"ingestionJobId" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetIngestionJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIngestionJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetIngestionJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetIngestionJobInput"} + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + if s.IngestionJobId == nil { + invalidParams.Add(request.NewErrParamRequired("IngestionJobId")) + } + if s.IngestionJobId != nil && len(*s.IngestionJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IngestionJobId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *GetIngestionJobInput) SetDataSourceId(v string) *GetIngestionJobInput { + s.DataSourceId = &v + return s +} + +// SetIngestionJobId sets the IngestionJobId field's value. +func (s *GetIngestionJobInput) SetIngestionJobId(v string) *GetIngestionJobInput { + s.IngestionJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetIngestionJobInput) SetKnowledgeBaseId(v string) *GetIngestionJobInput { + s.KnowledgeBaseId = &v + return s +} + +type GetIngestionJobOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an ingestion job. + // + // IngestionJob is a required field + IngestionJob *IngestionJob `locationName:"ingestionJob" 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 GetIngestionJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIngestionJobOutput) GoString() string { + return s.String() +} + +// SetIngestionJob sets the IngestionJob field's value. +func (s *GetIngestionJobOutput) SetIngestionJob(v *IngestionJob) *GetIngestionJobOutput { + s.IngestionJob = v + return s +} + +type GetKnowledgeBaseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetKnowledgeBaseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetKnowledgeBaseInput) SetKnowledgeBaseId(v string) *GetKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +type GetKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of a knowledge base. + // + // KnowledgeBase is a required field + KnowledgeBase *KnowledgeBase `locationName:"knowledgeBase" 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 GetKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBase sets the KnowledgeBase field's value. +func (s *GetKnowledgeBaseOutput) SetKnowledgeBase(v *KnowledgeBase) *GetKnowledgeBaseOutput { + s.KnowledgeBase = v + return s +} + +// Configuration for inference in prompt configuration +type InferenceConfiguration struct { + _ struct{} `type:"structure"` + + // Maximum length of output + MaximumLength *int64 `locationName:"maximumLength" type:"integer"` + + // List of stop sequences + StopSequences []*string `locationName:"stopSequences" type:"list"` + + // Controls randomness, higher values increase diversity + Temperature *float64 `locationName:"temperature" type:"float"` + + // Sample from the k most likely next tokens + TopK *int64 `locationName:"topK" type:"integer"` + + // Cumulative probability cutoff for token selection + TopP *float64 `locationName:"topP" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceConfiguration) GoString() string { + return s.String() +} + +// SetMaximumLength sets the MaximumLength field's value. +func (s *InferenceConfiguration) SetMaximumLength(v int64) *InferenceConfiguration { + s.MaximumLength = &v + return s +} + +// SetStopSequences sets the StopSequences field's value. +func (s *InferenceConfiguration) SetStopSequences(v []*string) *InferenceConfiguration { + s.StopSequences = v + return s +} + +// SetTemperature sets the Temperature field's value. +func (s *InferenceConfiguration) SetTemperature(v float64) *InferenceConfiguration { + s.Temperature = &v + return s +} + +// SetTopK sets the TopK field's value. +func (s *InferenceConfiguration) SetTopK(v int64) *InferenceConfiguration { + s.TopK = &v + return s +} + +// SetTopP sets the TopP field's value. +func (s *InferenceConfiguration) SetTopP(v float64) *InferenceConfiguration { + s.TopP = &v + return s +} + +// Contains the information of an ingestion job. +type IngestionJob struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Failure Reasons for Error. + FailureReasons []*string `locationName:"failureReasons" type:"list"` + + // Identifier for a resource. + // + // IngestionJobId is a required field + IngestionJobId *string `locationName:"ingestionJobId" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Time Stamp. + // + // StartedAt is a required field + StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The document level statistics of an ingestion job + Statistics *IngestionJobStatistics `locationName:"statistics" type:"structure"` + + // The status of an ingestion job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"IngestionJobStatus"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 IngestionJob) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJob) GoString() string { + return s.String() +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *IngestionJob) SetDataSourceId(v string) *IngestionJob { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *IngestionJob) SetDescription(v string) *IngestionJob { + s.Description = &v + return s +} + +// SetFailureReasons sets the FailureReasons field's value. +func (s *IngestionJob) SetFailureReasons(v []*string) *IngestionJob { + s.FailureReasons = v + return s +} + +// SetIngestionJobId sets the IngestionJobId field's value. +func (s *IngestionJob) SetIngestionJobId(v string) *IngestionJob { + s.IngestionJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *IngestionJob) SetKnowledgeBaseId(v string) *IngestionJob { + s.KnowledgeBaseId = &v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *IngestionJob) SetStartedAt(v time.Time) *IngestionJob { + s.StartedAt = &v + return s +} + +// SetStatistics sets the Statistics field's value. +func (s *IngestionJob) SetStatistics(v *IngestionJobStatistics) *IngestionJob { + s.Statistics = v + return s +} + +// SetStatus sets the Status field's value. +func (s *IngestionJob) SetStatus(v string) *IngestionJob { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *IngestionJob) SetUpdatedAt(v time.Time) *IngestionJob { + s.UpdatedAt = &v + return s +} + +// Filters the response returned by ListIngestionJobs operation. +type IngestionJobFilter struct { + _ struct{} `type:"structure"` + + // The name of the field to filter ingestion jobs. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"IngestionJobFilterAttribute"` + + // The operator used to filter ingestion jobs. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"IngestionJobFilterOperator"` + + // The list of values used to filter ingestion jobs. + // + // Values is a required field + Values []*string `locationName:"values" 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 IngestionJobFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJobFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IngestionJobFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IngestionJobFilter"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *IngestionJobFilter) SetAttribute(v string) *IngestionJobFilter { + s.Attribute = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *IngestionJobFilter) SetOperator(v string) *IngestionJobFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *IngestionJobFilter) SetValues(v []*string) *IngestionJobFilter { + s.Values = v + return s +} + +// Sorts the response returned by ListIngestionJobs operation. +type IngestionJobSortBy struct { + _ struct{} `type:"structure"` + + // The name of the field to sort ingestion jobs. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"IngestionJobSortByAttribute"` + + // Order to sort results by. + // + // Order is a required field + Order *string `locationName:"order" type:"string" required:"true" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJobSortBy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJobSortBy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IngestionJobSortBy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IngestionJobSortBy"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Order == nil { + invalidParams.Add(request.NewErrParamRequired("Order")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *IngestionJobSortBy) SetAttribute(v string) *IngestionJobSortBy { + s.Attribute = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *IngestionJobSortBy) SetOrder(v string) *IngestionJobSortBy { + s.Order = &v + return s +} + +// The document level statistics of an ingestion job +type IngestionJobStatistics struct { + _ struct{} `type:"structure"` + + // Number of deleted documents + NumberOfDocumentsDeleted *int64 `locationName:"numberOfDocumentsDeleted" type:"long"` + + // Number of failed documents + NumberOfDocumentsFailed *int64 `locationName:"numberOfDocumentsFailed" type:"long"` + + // Number of scanned documents + NumberOfDocumentsScanned *int64 `locationName:"numberOfDocumentsScanned" type:"long"` + + // Number of modified documents indexed + NumberOfModifiedDocumentsIndexed *int64 `locationName:"numberOfModifiedDocumentsIndexed" type:"long"` + + // Number of indexed documents + NumberOfNewDocumentsIndexed *int64 `locationName:"numberOfNewDocumentsIndexed" type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJobStatistics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJobStatistics) GoString() string { + return s.String() +} + +// SetNumberOfDocumentsDeleted sets the NumberOfDocumentsDeleted field's value. +func (s *IngestionJobStatistics) SetNumberOfDocumentsDeleted(v int64) *IngestionJobStatistics { + s.NumberOfDocumentsDeleted = &v + return s +} + +// SetNumberOfDocumentsFailed sets the NumberOfDocumentsFailed field's value. +func (s *IngestionJobStatistics) SetNumberOfDocumentsFailed(v int64) *IngestionJobStatistics { + s.NumberOfDocumentsFailed = &v + return s +} + +// SetNumberOfDocumentsScanned sets the NumberOfDocumentsScanned field's value. +func (s *IngestionJobStatistics) SetNumberOfDocumentsScanned(v int64) *IngestionJobStatistics { + s.NumberOfDocumentsScanned = &v + return s +} + +// SetNumberOfModifiedDocumentsIndexed sets the NumberOfModifiedDocumentsIndexed field's value. +func (s *IngestionJobStatistics) SetNumberOfModifiedDocumentsIndexed(v int64) *IngestionJobStatistics { + s.NumberOfModifiedDocumentsIndexed = &v + return s +} + +// SetNumberOfNewDocumentsIndexed sets the NumberOfNewDocumentsIndexed field's value. +func (s *IngestionJobStatistics) SetNumberOfNewDocumentsIndexed(v int64) *IngestionJobStatistics { + s.NumberOfNewDocumentsIndexed = &v + return s +} + +// Summary information of an ingestion job. +type IngestionJobSummary struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // IngestionJobId is a required field + IngestionJobId *string `locationName:"ingestionJobId" type:"string" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Time Stamp. + // + // StartedAt is a required field + StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The document level statistics of an ingestion job + Statistics *IngestionJobStatistics `locationName:"statistics" type:"structure"` + + // The status of an ingestion job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"IngestionJobStatus"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 IngestionJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IngestionJobSummary) GoString() string { + return s.String() +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *IngestionJobSummary) SetDataSourceId(v string) *IngestionJobSummary { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *IngestionJobSummary) SetDescription(v string) *IngestionJobSummary { + s.Description = &v + return s +} + +// SetIngestionJobId sets the IngestionJobId field's value. +func (s *IngestionJobSummary) SetIngestionJobId(v string) *IngestionJobSummary { + s.IngestionJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *IngestionJobSummary) SetKnowledgeBaseId(v string) *IngestionJobSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *IngestionJobSummary) SetStartedAt(v time.Time) *IngestionJobSummary { + s.StartedAt = &v + return s +} + +// SetStatistics sets the Statistics field's value. +func (s *IngestionJobSummary) SetStatistics(v *IngestionJobStatistics) *IngestionJobSummary { + s.Statistics = v + return s +} + +// SetStatus sets the Status field's value. +func (s *IngestionJobSummary) SetStatus(v string) *IngestionJobSummary { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *IngestionJobSummary) SetUpdatedAt(v time.Time) *IngestionJobSummary { + s.UpdatedAt = &v + return s +} + +// This exception is thrown if there was an unexpected error during processing +// of request +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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 +} + +// Contains the information of a knowledge base. +type KnowledgeBase struct { + _ struct{} `type:"structure"` + + // Time Stamp. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Failure Reasons for Error. + FailureReasons []*string `locationName:"failureReasons" type:"list"` + + // ARN of a KnowledgeBase + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // Configures a bedrock knowledge base. + // + // KnowledgeBaseConfiguration is a required field + KnowledgeBaseConfiguration *KnowledgeBaseConfiguration `locationName:"knowledgeBaseConfiguration" type:"structure" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // ARN of a IAM role. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The status of a knowledge base. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"KnowledgeBaseStatus"` + + // Configures the physical storage of ingested data in a knowledge base. + // + // StorageConfiguration is a required field + StorageConfiguration *StorageConfiguration `locationName:"storageConfiguration" type:"structure" required:"true"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 KnowledgeBase) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBase) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *KnowledgeBase) SetCreatedAt(v time.Time) *KnowledgeBase { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *KnowledgeBase) SetDescription(v string) *KnowledgeBase { + s.Description = &v + return s +} + +// SetFailureReasons sets the FailureReasons field's value. +func (s *KnowledgeBase) SetFailureReasons(v []*string) *KnowledgeBase { + s.FailureReasons = v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *KnowledgeBase) SetKnowledgeBaseArn(v string) *KnowledgeBase { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseConfiguration sets the KnowledgeBaseConfiguration field's value. +func (s *KnowledgeBase) SetKnowledgeBaseConfiguration(v *KnowledgeBaseConfiguration) *KnowledgeBase { + s.KnowledgeBaseConfiguration = v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBase) SetKnowledgeBaseId(v string) *KnowledgeBase { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *KnowledgeBase) SetName(v string) *KnowledgeBase { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *KnowledgeBase) SetRoleArn(v string) *KnowledgeBase { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *KnowledgeBase) SetStatus(v string) *KnowledgeBase { + s.Status = &v + return s +} + +// SetStorageConfiguration sets the StorageConfiguration field's value. +func (s *KnowledgeBase) SetStorageConfiguration(v *StorageConfiguration) *KnowledgeBase { + s.StorageConfiguration = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *KnowledgeBase) SetUpdatedAt(v time.Time) *KnowledgeBase { + s.UpdatedAt = &v + return s +} + +// Configures a bedrock knowledge base. +type KnowledgeBaseConfiguration struct { + _ struct{} `type:"structure"` + + // The type of a knowledge base. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"KnowledgeBaseType"` + + // Configurations for a vector knowledge base. + VectorKnowledgeBaseConfiguration *VectorKnowledgeBaseConfiguration `locationName:"vectorKnowledgeBaseConfiguration" 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 KnowledgeBaseConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KnowledgeBaseConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KnowledgeBaseConfiguration"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.VectorKnowledgeBaseConfiguration != nil { + if err := s.VectorKnowledgeBaseConfiguration.Validate(); err != nil { + invalidParams.AddNested("VectorKnowledgeBaseConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetType sets the Type field's value. +func (s *KnowledgeBaseConfiguration) SetType(v string) *KnowledgeBaseConfiguration { + s.Type = &v + return s +} + +// SetVectorKnowledgeBaseConfiguration sets the VectorKnowledgeBaseConfiguration field's value. +func (s *KnowledgeBaseConfiguration) SetVectorKnowledgeBaseConfiguration(v *VectorKnowledgeBaseConfiguration) *KnowledgeBaseConfiguration { + s.VectorKnowledgeBaseConfiguration = v + return s +} + +// Summary information of a knowledge base. +type KnowledgeBaseSummary struct { + _ struct{} `type:"structure"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The status of a knowledge base. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"KnowledgeBaseStatus"` + + // Time Stamp. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 KnowledgeBaseSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *KnowledgeBaseSummary) SetDescription(v string) *KnowledgeBaseSummary { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBaseSummary) SetKnowledgeBaseId(v string) *KnowledgeBaseSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *KnowledgeBaseSummary) SetName(v string) *KnowledgeBaseSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *KnowledgeBaseSummary) SetStatus(v string) *KnowledgeBaseSummary { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *KnowledgeBaseSummary) SetUpdatedAt(v time.Time) *KnowledgeBaseSummary { + s.UpdatedAt = &v + return s +} + +// List Action Groups Request +type ListAgentActionGroupsInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is Listed + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Id generated at the server side when an Agent is Listed + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentActionGroupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentActionGroupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAgentActionGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAgentActionGroupsInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *ListAgentActionGroupsInput) SetAgentId(v string) *ListAgentActionGroupsInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *ListAgentActionGroupsInput) SetAgentVersion(v string) *ListAgentActionGroupsInput { + s.AgentVersion = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAgentActionGroupsInput) SetMaxResults(v int64) *ListAgentActionGroupsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentActionGroupsInput) SetNextToken(v string) *ListAgentActionGroupsInput { + s.NextToken = &v + return s +} + +// List Action Groups Response +type ListAgentActionGroupsOutput struct { + _ struct{} `type:"structure"` + + // List of ActionGroup Summaries + // + // ActionGroupSummaries is a required field + ActionGroupSummaries []*ActionGroupSummary `locationName:"actionGroupSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentActionGroupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentActionGroupsOutput) GoString() string { + return s.String() +} + +// SetActionGroupSummaries sets the ActionGroupSummaries field's value. +func (s *ListAgentActionGroupsOutput) SetActionGroupSummaries(v []*ActionGroupSummary) *ListAgentActionGroupsOutput { + s.ActionGroupSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentActionGroupsOutput) SetNextToken(v string) *ListAgentActionGroupsOutput { + s.NextToken = &v + return s +} + +// List Agent Aliases Request +type ListAgentAliasesInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentAliasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentAliasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAgentAliasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAgentAliasesInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *ListAgentAliasesInput) SetAgentId(v string) *ListAgentAliasesInput { + s.AgentId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAgentAliasesInput) SetMaxResults(v int64) *ListAgentAliasesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentAliasesInput) SetNextToken(v string) *ListAgentAliasesInput { + s.NextToken = &v + return s +} + +// List Agent Aliases Response +type ListAgentAliasesOutput struct { + _ struct{} `type:"structure"` + + // The list of summaries of all the aliases for an Agent. + // + // AgentAliasSummaries is a required field + AgentAliasSummaries []*AgentAliasSummary `locationName:"agentAliasSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentAliasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentAliasesOutput) GoString() string { + return s.String() +} + +// SetAgentAliasSummaries sets the AgentAliasSummaries field's value. +func (s *ListAgentAliasesOutput) SetAgentAliasSummaries(v []*AgentAliasSummary) *ListAgentAliasesOutput { + s.AgentAliasSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentAliasesOutput) SetNextToken(v string) *ListAgentAliasesOutput { + s.NextToken = &v + return s +} + +// List Agent Knowledge Bases Request +type ListAgentKnowledgeBasesInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Version number generated when a version is created + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentKnowledgeBasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentKnowledgeBasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAgentKnowledgeBasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAgentKnowledgeBasesInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *ListAgentKnowledgeBasesInput) SetAgentId(v string) *ListAgentKnowledgeBasesInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *ListAgentKnowledgeBasesInput) SetAgentVersion(v string) *ListAgentKnowledgeBasesInput { + s.AgentVersion = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAgentKnowledgeBasesInput) SetMaxResults(v int64) *ListAgentKnowledgeBasesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentKnowledgeBasesInput) SetNextToken(v string) *ListAgentKnowledgeBasesInput { + s.NextToken = &v + return s +} + +// List Agent Knowledge Bases Response +type ListAgentKnowledgeBasesOutput struct { + _ struct{} `type:"structure"` + + // List of Agent Knowledge Base Summaries + // + // AgentKnowledgeBaseSummaries is a required field + AgentKnowledgeBaseSummaries []*AgentKnowledgeBaseSummary `locationName:"agentKnowledgeBaseSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentKnowledgeBasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentKnowledgeBasesOutput) GoString() string { + return s.String() +} + +// SetAgentKnowledgeBaseSummaries sets the AgentKnowledgeBaseSummaries field's value. +func (s *ListAgentKnowledgeBasesOutput) SetAgentKnowledgeBaseSummaries(v []*AgentKnowledgeBaseSummary) *ListAgentKnowledgeBasesOutput { + s.AgentKnowledgeBaseSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentKnowledgeBasesOutput) SetNextToken(v string) *ListAgentKnowledgeBasesOutput { + s.NextToken = &v + return s +} + +// List Agent Versions Request +type ListAgentVersionsInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAgentVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAgentVersionsInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *ListAgentVersionsInput) SetAgentId(v string) *ListAgentVersionsInput { + s.AgentId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAgentVersionsInput) SetMaxResults(v int64) *ListAgentVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentVersionsInput) SetNextToken(v string) *ListAgentVersionsInput { + s.NextToken = &v + return s +} + +// List Agent Versions Response +type ListAgentVersionsOutput struct { + _ struct{} `type:"structure"` + + // List of AgentVersionSummary. + // + // AgentVersionSummaries is a required field + AgentVersionSummaries []*AgentVersionSummary `locationName:"agentVersionSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentVersionsOutput) GoString() string { + return s.String() +} + +// SetAgentVersionSummaries sets the AgentVersionSummaries field's value. +func (s *ListAgentVersionsOutput) SetAgentVersionSummaries(v []*AgentVersionSummary) *ListAgentVersionsOutput { + s.AgentVersionSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentVersionsOutput) SetNextToken(v string) *ListAgentVersionsOutput { + s.NextToken = &v + return s +} + +// List Agent Request +type ListAgentsInput struct { + _ struct{} `type:"structure"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAgentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAgentsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAgentsInput) SetMaxResults(v int64) *ListAgentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentsInput) SetNextToken(v string) *ListAgentsInput { + s.NextToken = &v + return s +} + +// List Agent Response +type ListAgentsOutput struct { + _ struct{} `type:"structure"` + + // List of AgentSummary. + // + // AgentSummaries is a required field + AgentSummaries []*AgentSummary `locationName:"agentSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAgentsOutput) GoString() string { + return s.String() +} + +// SetAgentSummaries sets the AgentSummaries field's value. +func (s *ListAgentsOutput) SetAgentSummaries(v []*AgentSummary) *ListAgentsOutput { + s.AgentSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAgentsOutput) SetNextToken(v string) *ListAgentsOutput { + s.NextToken = &v + return s +} + +type ListDataSourcesInput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListDataSourcesInput) SetKnowledgeBaseId(v string) *ListDataSourcesInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput { + s.NextToken = &v + return s +} + +type ListDataSourcesOutput struct { + _ struct{} `type:"structure"` + + // list of data source summaries + // + // DataSourceSummaries is a required field + DataSourceSummaries []*DataSourceSummary `locationName:"dataSourceSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) GoString() string { + return s.String() +} + +// SetDataSourceSummaries sets the DataSourceSummaries field's value. +func (s *ListDataSourcesOutput) SetDataSourceSummaries(v []*DataSourceSummary) *ListDataSourcesOutput { + s.DataSourceSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput { + s.NextToken = &v + return s +} + +type ListIngestionJobsInput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" type:"string" required:"true"` + + // List of IngestionJobFilters + Filters []*IngestionJobFilter `locationName:"filters" min:"1" type:"list"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Sorts the response returned by ListIngestionJobs operation. + SortBy *IngestionJobSortBy `locationName:"sortBy" 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 ListIngestionJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIngestionJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIngestionJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIngestionJobsInput"} + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SortBy != nil { + if err := s.SortBy.Validate(); err != nil { + invalidParams.AddNested("SortBy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *ListIngestionJobsInput) SetDataSourceId(v string) *ListIngestionJobsInput { + s.DataSourceId = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListIngestionJobsInput) SetFilters(v []*IngestionJobFilter) *ListIngestionJobsInput { + s.Filters = v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListIngestionJobsInput) SetKnowledgeBaseId(v string) *ListIngestionJobsInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIngestionJobsInput) SetMaxResults(v int64) *ListIngestionJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIngestionJobsInput) SetNextToken(v string) *ListIngestionJobsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListIngestionJobsInput) SetSortBy(v *IngestionJobSortBy) *ListIngestionJobsInput { + s.SortBy = v + return s +} + +type ListIngestionJobsOutput struct { + _ struct{} `type:"structure"` + + // List of IngestionJobSummaries + // + // IngestionJobSummaries is a required field + IngestionJobSummaries []*IngestionJobSummary `locationName:"ingestionJobSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIngestionJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIngestionJobsOutput) GoString() string { + return s.String() +} + +// SetIngestionJobSummaries sets the IngestionJobSummaries field's value. +func (s *ListIngestionJobsOutput) SetIngestionJobSummaries(v []*IngestionJobSummary) *ListIngestionJobsOutput { + s.IngestionJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIngestionJobsOutput) SetNextToken(v string) *ListIngestionJobsOutput { + s.NextToken = &v + return s +} + +type ListKnowledgeBasesInput struct { + _ struct{} `type:"structure"` + + // Max Results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListKnowledgeBasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListKnowledgeBasesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListKnowledgeBasesInput) SetMaxResults(v int64) *ListKnowledgeBasesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKnowledgeBasesInput) SetNextToken(v string) *ListKnowledgeBasesInput { + s.NextToken = &v + return s +} + +type ListKnowledgeBasesOutput struct { + _ struct{} `type:"structure"` + + // List of KnowledgeBaseSummaries + // + // KnowledgeBaseSummaries is a required field + KnowledgeBaseSummaries []*KnowledgeBaseSummary `locationName:"knowledgeBaseSummaries" type:"list" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBaseSummaries sets the KnowledgeBaseSummaries field's value. +func (s *ListKnowledgeBasesOutput) SetKnowledgeBaseSummaries(v []*KnowledgeBaseSummary) *ListKnowledgeBasesOutput { + s.KnowledgeBaseSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKnowledgeBasesOutput) SetNextToken(v string) *ListKnowledgeBasesOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // ARN of Taggable resources: [Agent, AgentAlias, Knowledge-Base] + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + + 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 tag keys and values + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// Contains the configurations to use OpenSearch Serverless to store knowledge +// base data. +type OpenSearchServerlessConfiguration struct { + _ struct{} `type:"structure"` + + // Arn of an OpenSearch Serverless collection. + // + // CollectionArn is a required field + CollectionArn *string `locationName:"collectionArn" type:"string" required:"true"` + + // A mapping of Bedrock Knowledge Base fields to OpenSearch Serverless field + // names + // + // FieldMapping is a required field + FieldMapping *OpenSearchServerlessFieldMapping `locationName:"fieldMapping" type:"structure" required:"true"` + + // Arn of an OpenSearch Serverless index. + // + // VectorIndexName is a required field + VectorIndexName *string `locationName:"vectorIndexName" 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 OpenSearchServerlessConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpenSearchServerlessConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OpenSearchServerlessConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OpenSearchServerlessConfiguration"} + if s.CollectionArn == nil { + invalidParams.Add(request.NewErrParamRequired("CollectionArn")) + } + if s.FieldMapping == nil { + invalidParams.Add(request.NewErrParamRequired("FieldMapping")) + } + if s.VectorIndexName == nil { + invalidParams.Add(request.NewErrParamRequired("VectorIndexName")) + } + if s.FieldMapping != nil { + if err := s.FieldMapping.Validate(); err != nil { + invalidParams.AddNested("FieldMapping", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollectionArn sets the CollectionArn field's value. +func (s *OpenSearchServerlessConfiguration) SetCollectionArn(v string) *OpenSearchServerlessConfiguration { + s.CollectionArn = &v + return s +} + +// SetFieldMapping sets the FieldMapping field's value. +func (s *OpenSearchServerlessConfiguration) SetFieldMapping(v *OpenSearchServerlessFieldMapping) *OpenSearchServerlessConfiguration { + s.FieldMapping = v + return s +} + +// SetVectorIndexName sets the VectorIndexName field's value. +func (s *OpenSearchServerlessConfiguration) SetVectorIndexName(v string) *OpenSearchServerlessConfiguration { + s.VectorIndexName = &v + return s +} + +// A mapping of Bedrock Knowledge Base fields to OpenSearch Serverless field +// names +type OpenSearchServerlessFieldMapping struct { + _ struct{} `type:"structure"` + + // Name of the field + // + // MetadataField is a required field + MetadataField *string `locationName:"metadataField" type:"string" required:"true"` + + // Name of the field + // + // TextField is a required field + TextField *string `locationName:"textField" type:"string" required:"true"` + + // Name of the field + // + // VectorField is a required field + VectorField *string `locationName:"vectorField" 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 OpenSearchServerlessFieldMapping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpenSearchServerlessFieldMapping) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OpenSearchServerlessFieldMapping) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OpenSearchServerlessFieldMapping"} + if s.MetadataField == nil { + invalidParams.Add(request.NewErrParamRequired("MetadataField")) + } + if s.TextField == nil { + invalidParams.Add(request.NewErrParamRequired("TextField")) + } + if s.VectorField == nil { + invalidParams.Add(request.NewErrParamRequired("VectorField")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadataField sets the MetadataField field's value. +func (s *OpenSearchServerlessFieldMapping) SetMetadataField(v string) *OpenSearchServerlessFieldMapping { + s.MetadataField = &v + return s +} + +// SetTextField sets the TextField field's value. +func (s *OpenSearchServerlessFieldMapping) SetTextField(v string) *OpenSearchServerlessFieldMapping { + s.TextField = &v + return s +} + +// SetVectorField sets the VectorField field's value. +func (s *OpenSearchServerlessFieldMapping) SetVectorField(v string) *OpenSearchServerlessFieldMapping { + s.VectorField = &v + return s +} + +// Contains the configurations to use Pinecone to store knowledge base data. +type PineconeConfiguration struct { + _ struct{} `type:"structure"` + + // Pinecone connection string + // + // ConnectionString is a required field + ConnectionString *string `locationName:"connectionString" type:"string" required:"true"` + + // Arn of a SecretsManager Secret. + // + // CredentialsSecretArn is a required field + CredentialsSecretArn *string `locationName:"credentialsSecretArn" type:"string" required:"true"` + + // A mapping of Bedrock Knowledge Base fields to Pinecone field names + // + // FieldMapping is a required field + FieldMapping *PineconeFieldMapping `locationName:"fieldMapping" type:"structure" required:"true"` + + // Pinecone namespace + Namespace *string `locationName:"namespace" 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 PineconeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PineconeConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PineconeConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PineconeConfiguration"} + if s.ConnectionString == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectionString")) + } + if s.CredentialsSecretArn == nil { + invalidParams.Add(request.NewErrParamRequired("CredentialsSecretArn")) + } + if s.FieldMapping == nil { + invalidParams.Add(request.NewErrParamRequired("FieldMapping")) + } + if s.FieldMapping != nil { + if err := s.FieldMapping.Validate(); err != nil { + invalidParams.AddNested("FieldMapping", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectionString sets the ConnectionString field's value. +func (s *PineconeConfiguration) SetConnectionString(v string) *PineconeConfiguration { + s.ConnectionString = &v + return s +} + +// SetCredentialsSecretArn sets the CredentialsSecretArn field's value. +func (s *PineconeConfiguration) SetCredentialsSecretArn(v string) *PineconeConfiguration { + s.CredentialsSecretArn = &v + return s +} + +// SetFieldMapping sets the FieldMapping field's value. +func (s *PineconeConfiguration) SetFieldMapping(v *PineconeFieldMapping) *PineconeConfiguration { + s.FieldMapping = v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *PineconeConfiguration) SetNamespace(v string) *PineconeConfiguration { + s.Namespace = &v + return s +} + +// A mapping of Bedrock Knowledge Base fields to Pinecone field names +type PineconeFieldMapping struct { + _ struct{} `type:"structure"` + + // Name of the field + // + // MetadataField is a required field + MetadataField *string `locationName:"metadataField" type:"string" required:"true"` + + // Name of the field + // + // TextField is a required field + TextField *string `locationName:"textField" 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 PineconeFieldMapping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PineconeFieldMapping) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PineconeFieldMapping) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PineconeFieldMapping"} + if s.MetadataField == nil { + invalidParams.Add(request.NewErrParamRequired("MetadataField")) + } + if s.TextField == nil { + invalidParams.Add(request.NewErrParamRequired("TextField")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadataField sets the MetadataField field's value. +func (s *PineconeFieldMapping) SetMetadataField(v string) *PineconeFieldMapping { + s.MetadataField = &v + return s +} + +// SetTextField sets the TextField field's value. +func (s *PineconeFieldMapping) SetTextField(v string) *PineconeFieldMapping { + s.TextField = &v + return s +} + +// PrepareAgent Request +type PrepareAgentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" 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 PrepareAgentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrepareAgentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrepareAgentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrepareAgentInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *PrepareAgentInput) SetAgentId(v string) *PrepareAgentInput { + s.AgentId = &v + return s +} + +// PrepareAgent Response +type PrepareAgentOutput struct { + _ struct{} `type:"structure"` + + // Identifier for a resource. + // + // AgentId is a required field + AgentId *string `locationName:"agentId" type:"string" required:"true"` + + // Schema Type for Action APIs. + // + // AgentStatus is a required field + AgentStatus *string `locationName:"agentStatus" type:"string" required:"true" enum:"AgentStatus"` + + // Agent Version. + // + // AgentVersion is a required field + AgentVersion *string `locationName:"agentVersion" min:"1" type:"string" required:"true"` + + // Time Stamp. + // + // PreparedAt is a required field + PreparedAt *time.Time `locationName:"preparedAt" type:"timestamp" timestampFormat:"iso8601" 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 PrepareAgentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrepareAgentOutput) GoString() string { + return s.String() +} + +// SetAgentId sets the AgentId field's value. +func (s *PrepareAgentOutput) SetAgentId(v string) *PrepareAgentOutput { + s.AgentId = &v + return s +} + +// SetAgentStatus sets the AgentStatus field's value. +func (s *PrepareAgentOutput) SetAgentStatus(v string) *PrepareAgentOutput { + s.AgentStatus = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *PrepareAgentOutput) SetAgentVersion(v string) *PrepareAgentOutput { + s.AgentVersion = &v + return s +} + +// SetPreparedAt sets the PreparedAt field's value. +func (s *PrepareAgentOutput) SetPreparedAt(v time.Time) *PrepareAgentOutput { + s.PreparedAt = &v + return s +} + +// BasePromptConfiguration per Prompt Type. +type PromptConfiguration struct { + _ struct{} `type:"structure"` + + // Base Prompt Template. + BasePromptTemplate *string `locationName:"basePromptTemplate" min:"1" type:"string"` + + // Configuration for inference in prompt configuration + InferenceConfiguration *InferenceConfiguration `locationName:"inferenceConfiguration" type:"structure"` + + // Creation Mode for Prompt Configuration. + ParserMode *string `locationName:"parserMode" type:"string" enum:"CreationMode"` + + // Creation Mode for Prompt Configuration. + PromptCreationMode *string `locationName:"promptCreationMode" type:"string" enum:"CreationMode"` + + // Prompt State. + PromptState *string `locationName:"promptState" type:"string" enum:"PromptState"` + + // Prompt Type. + PromptType *string `locationName:"promptType" type:"string" enum:"PromptType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PromptConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PromptConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PromptConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PromptConfiguration"} + if s.BasePromptTemplate != nil && len(*s.BasePromptTemplate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BasePromptTemplate", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBasePromptTemplate sets the BasePromptTemplate field's value. +func (s *PromptConfiguration) SetBasePromptTemplate(v string) *PromptConfiguration { + s.BasePromptTemplate = &v + return s +} + +// SetInferenceConfiguration sets the InferenceConfiguration field's value. +func (s *PromptConfiguration) SetInferenceConfiguration(v *InferenceConfiguration) *PromptConfiguration { + s.InferenceConfiguration = v + return s +} + +// SetParserMode sets the ParserMode field's value. +func (s *PromptConfiguration) SetParserMode(v string) *PromptConfiguration { + s.ParserMode = &v + return s +} + +// SetPromptCreationMode sets the PromptCreationMode field's value. +func (s *PromptConfiguration) SetPromptCreationMode(v string) *PromptConfiguration { + s.PromptCreationMode = &v + return s +} + +// SetPromptState sets the PromptState field's value. +func (s *PromptConfiguration) SetPromptState(v string) *PromptConfiguration { + s.PromptState = &v + return s +} + +// SetPromptType sets the PromptType field's value. +func (s *PromptConfiguration) SetPromptType(v string) *PromptConfiguration { + s.PromptType = &v + return s +} + +// Configuration for prompt override. +type PromptOverrideConfiguration struct { + _ struct{} `type:"structure" sensitive:"true"` + + // ARN of a Lambda. + OverrideLambda *string `locationName:"overrideLambda" type:"string"` + + // List of BasePromptConfiguration + // + // PromptConfigurations is a required field + PromptConfigurations []*PromptConfiguration `locationName:"promptConfigurations" 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 PromptOverrideConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PromptOverrideConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PromptOverrideConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PromptOverrideConfiguration"} + if s.PromptConfigurations == nil { + invalidParams.Add(request.NewErrParamRequired("PromptConfigurations")) + } + if s.PromptConfigurations != nil { + for i, v := range s.PromptConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PromptConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOverrideLambda sets the OverrideLambda field's value. +func (s *PromptOverrideConfiguration) SetOverrideLambda(v string) *PromptOverrideConfiguration { + s.OverrideLambda = &v + return s +} + +// SetPromptConfigurations sets the PromptConfigurations field's value. +func (s *PromptOverrideConfiguration) SetPromptConfigurations(v []*PromptConfiguration) *PromptOverrideConfiguration { + s.PromptConfigurations = v + return s +} + +// Contains the configurations to use Redis Enterprise Cloud to store knowledge +// base data. +type RedisEnterpriseCloudConfiguration struct { + _ struct{} `type:"structure"` + + // Arn of a SecretsManager Secret. + // + // CredentialsSecretArn is a required field + CredentialsSecretArn *string `locationName:"credentialsSecretArn" type:"string" required:"true"` + + // Redis enterprise cloud endpoint + // + // Endpoint is a required field + Endpoint *string `locationName:"endpoint" type:"string" required:"true"` + + // A mapping of Bedrock Knowledge Base fields to Redis Cloud field names + // + // FieldMapping is a required field + FieldMapping *RedisEnterpriseCloudFieldMapping `locationName:"fieldMapping" type:"structure" required:"true"` + + // Name of a redis enterprise cloud index + // + // VectorIndexName is a required field + VectorIndexName *string `locationName:"vectorIndexName" 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 RedisEnterpriseCloudConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedisEnterpriseCloudConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedisEnterpriseCloudConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedisEnterpriseCloudConfiguration"} + if s.CredentialsSecretArn == nil { + invalidParams.Add(request.NewErrParamRequired("CredentialsSecretArn")) + } + if s.Endpoint == nil { + invalidParams.Add(request.NewErrParamRequired("Endpoint")) + } + if s.FieldMapping == nil { + invalidParams.Add(request.NewErrParamRequired("FieldMapping")) + } + if s.VectorIndexName == nil { + invalidParams.Add(request.NewErrParamRequired("VectorIndexName")) + } + if s.FieldMapping != nil { + if err := s.FieldMapping.Validate(); err != nil { + invalidParams.AddNested("FieldMapping", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCredentialsSecretArn sets the CredentialsSecretArn field's value. +func (s *RedisEnterpriseCloudConfiguration) SetCredentialsSecretArn(v string) *RedisEnterpriseCloudConfiguration { + s.CredentialsSecretArn = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *RedisEnterpriseCloudConfiguration) SetEndpoint(v string) *RedisEnterpriseCloudConfiguration { + s.Endpoint = &v + return s +} + +// SetFieldMapping sets the FieldMapping field's value. +func (s *RedisEnterpriseCloudConfiguration) SetFieldMapping(v *RedisEnterpriseCloudFieldMapping) *RedisEnterpriseCloudConfiguration { + s.FieldMapping = v + return s +} + +// SetVectorIndexName sets the VectorIndexName field's value. +func (s *RedisEnterpriseCloudConfiguration) SetVectorIndexName(v string) *RedisEnterpriseCloudConfiguration { + s.VectorIndexName = &v + return s +} + +// A mapping of Bedrock Knowledge Base fields to Redis Cloud field names +type RedisEnterpriseCloudFieldMapping struct { + _ struct{} `type:"structure"` + + // Name of the field + // + // MetadataField is a required field + MetadataField *string `locationName:"metadataField" type:"string" required:"true"` + + // Name of the field + // + // TextField is a required field + TextField *string `locationName:"textField" type:"string" required:"true"` + + // Name of the field + // + // VectorField is a required field + VectorField *string `locationName:"vectorField" 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 RedisEnterpriseCloudFieldMapping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedisEnterpriseCloudFieldMapping) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedisEnterpriseCloudFieldMapping) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedisEnterpriseCloudFieldMapping"} + if s.MetadataField == nil { + invalidParams.Add(request.NewErrParamRequired("MetadataField")) + } + if s.TextField == nil { + invalidParams.Add(request.NewErrParamRequired("TextField")) + } + if s.VectorField == nil { + invalidParams.Add(request.NewErrParamRequired("VectorField")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadataField sets the MetadataField field's value. +func (s *RedisEnterpriseCloudFieldMapping) SetMetadataField(v string) *RedisEnterpriseCloudFieldMapping { + s.MetadataField = &v + return s +} + +// SetTextField sets the TextField field's value. +func (s *RedisEnterpriseCloudFieldMapping) SetTextField(v string) *RedisEnterpriseCloudFieldMapping { + s.TextField = &v + return s +} + +// SetVectorField sets the VectorField field's value. +func (s *RedisEnterpriseCloudFieldMapping) SetVectorField(v string) *RedisEnterpriseCloudFieldMapping { + s.VectorField = &v + return s +} + +// This exception is thrown when a resource referenced by the operation does +// not exist +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Configures an S3 data source location. +type S3DataSourceConfiguration struct { + _ struct{} `type:"structure"` + + // A S3 bucket ARN + // + // BucketArn is a required field + BucketArn *string `locationName:"bucketArn" min:"1" type:"string" required:"true"` + + // A list of S3 prefixes. + InclusionPrefixes []*string `locationName:"inclusionPrefixes" 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 S3DataSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3DataSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3DataSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3DataSourceConfiguration"} + if s.BucketArn == nil { + invalidParams.Add(request.NewErrParamRequired("BucketArn")) + } + if s.BucketArn != nil && len(*s.BucketArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BucketArn", 1)) + } + if s.InclusionPrefixes != nil && len(s.InclusionPrefixes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InclusionPrefixes", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketArn sets the BucketArn field's value. +func (s *S3DataSourceConfiguration) SetBucketArn(v string) *S3DataSourceConfiguration { + s.BucketArn = &v + return s +} + +// SetInclusionPrefixes sets the InclusionPrefixes field's value. +func (s *S3DataSourceConfiguration) SetInclusionPrefixes(v []*string) *S3DataSourceConfiguration { + s.InclusionPrefixes = v + return s +} + +// The identifier for the S3 resource. +type S3Identifier struct { + _ struct{} `type:"structure"` + + // A bucket in S3. + S3BucketName *string `locationName:"s3BucketName" min:"3" type:"string"` + + // A object key in S3. + S3ObjectKey *string `locationName:"s3ObjectKey" 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 S3Identifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Identifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Identifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Identifier"} + if s.S3BucketName != nil && len(*s.S3BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("S3BucketName", 3)) + } + if s.S3ObjectKey != nil && len(*s.S3ObjectKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3ObjectKey", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3BucketName sets the S3BucketName field's value. +func (s *S3Identifier) SetS3BucketName(v string) *S3Identifier { + s.S3BucketName = &v + return s +} + +// SetS3ObjectKey sets the S3ObjectKey field's value. +func (s *S3Identifier) SetS3ObjectKey(v string) *S3Identifier { + s.S3ObjectKey = &v + return s +} + +// Server-side encryption configuration. +type ServerSideEncryptionConfiguration struct { + _ struct{} `type:"structure"` + + // A KMS key ARN + KmsKeyArn *string `locationName:"kmsKeyArn" 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 ServerSideEncryptionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServerSideEncryptionConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ServerSideEncryptionConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ServerSideEncryptionConfiguration"} + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *ServerSideEncryptionConfiguration) SetKmsKeyArn(v string) *ServerSideEncryptionConfiguration { + s.KmsKeyArn = &v + return s +} + +// This exception is thrown when a request is made beyond the service quota +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type StartIngestionJobInput struct { + _ struct{} `type:"structure"` + + // Client specified token used for idempotency checks + ClientToken *string `locationName:"clientToken" min:"33" type:"string" idempotencyToken:"true"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 StartIngestionJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartIngestionJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartIngestionJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartIngestionJobInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 33 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartIngestionJobInput) SetClientToken(v string) *StartIngestionJobInput { + s.ClientToken = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *StartIngestionJobInput) SetDataSourceId(v string) *StartIngestionJobInput { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *StartIngestionJobInput) SetDescription(v string) *StartIngestionJobInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *StartIngestionJobInput) SetKnowledgeBaseId(v string) *StartIngestionJobInput { + s.KnowledgeBaseId = &v + return s +} + +type StartIngestionJobOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an ingestion job. + // + // IngestionJob is a required field + IngestionJob *IngestionJob `locationName:"ingestionJob" 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 StartIngestionJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartIngestionJobOutput) GoString() string { + return s.String() +} + +// SetIngestionJob sets the IngestionJob field's value. +func (s *StartIngestionJobOutput) SetIngestionJob(v *IngestionJob) *StartIngestionJobOutput { + s.IngestionJob = v + return s +} + +// Configures the physical storage of ingested data in a knowledge base. +type StorageConfiguration struct { + _ struct{} `type:"structure"` + + // Contains the configurations to use OpenSearch Serverless to store knowledge + // base data. + OpensearchServerlessConfiguration *OpenSearchServerlessConfiguration `locationName:"opensearchServerlessConfiguration" type:"structure"` + + // Contains the configurations to use Pinecone to store knowledge base data. + PineconeConfiguration *PineconeConfiguration `locationName:"pineconeConfiguration" type:"structure"` + + // Contains the configurations to use Redis Enterprise Cloud to store knowledge + // base data. + RedisEnterpriseCloudConfiguration *RedisEnterpriseCloudConfiguration `locationName:"redisEnterpriseCloudConfiguration" type:"structure"` + + // The storage type of a knowledge base. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"KnowledgeBaseStorageType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StorageConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StorageConfiguration"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.OpensearchServerlessConfiguration != nil { + if err := s.OpensearchServerlessConfiguration.Validate(); err != nil { + invalidParams.AddNested("OpensearchServerlessConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.PineconeConfiguration != nil { + if err := s.PineconeConfiguration.Validate(); err != nil { + invalidParams.AddNested("PineconeConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RedisEnterpriseCloudConfiguration != nil { + if err := s.RedisEnterpriseCloudConfiguration.Validate(); err != nil { + invalidParams.AddNested("RedisEnterpriseCloudConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOpensearchServerlessConfiguration sets the OpensearchServerlessConfiguration field's value. +func (s *StorageConfiguration) SetOpensearchServerlessConfiguration(v *OpenSearchServerlessConfiguration) *StorageConfiguration { + s.OpensearchServerlessConfiguration = v + return s +} + +// SetPineconeConfiguration sets the PineconeConfiguration field's value. +func (s *StorageConfiguration) SetPineconeConfiguration(v *PineconeConfiguration) *StorageConfiguration { + s.PineconeConfiguration = v + return s +} + +// SetRedisEnterpriseCloudConfiguration sets the RedisEnterpriseCloudConfiguration field's value. +func (s *StorageConfiguration) SetRedisEnterpriseCloudConfiguration(v *RedisEnterpriseCloudConfiguration) *StorageConfiguration { + s.RedisEnterpriseCloudConfiguration = v + return s +} + +// SetType sets the Type field's value. +func (s *StorageConfiguration) SetType(v string) *StorageConfiguration { + s.Type = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // ARN of Taggable resources: [Agent, AgentAlias, Knowledge-Base] + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // A map of tag keys and values + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// This exception is thrown when the number of requests exceeds the limit +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // ARN of Taggable resources: [Agent, AgentAlias, Knowledge-Base] + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // List of Tag Keys + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + 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() +} + +// Update Action Group Request +type UpdateAgentActionGroupInput struct { + _ struct{} `type:"structure"` + + // Type of Executors for an Action Group + ActionGroupExecutor *ActionGroupExecutor `locationName:"actionGroupExecutor" type:"structure"` + + // Id generated at the server side when an Action Group is created under Agent + // + // ActionGroupId is a required field + ActionGroupId *string `location:"uri" locationName:"actionGroupId" type:"string" required:"true"` + + // Name for a resource. + // + // ActionGroupName is a required field + ActionGroupName *string `locationName:"actionGroupName" type:"string" required:"true"` + + // State of the action group + ActionGroupState *string `locationName:"actionGroupState" type:"string" enum:"ActionGroupState"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Draft Version of the Agent. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Contains information about the API Schema for the Action Group + ApiSchema *APISchema `locationName:"apiSchema" type:"structure"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Action Group Signature for a BuiltIn Action + ParentActionGroupSignature *string `locationName:"parentActionGroupSignature" type:"string" enum:"ActionGroupSignature"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentActionGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentActionGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAgentActionGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAgentActionGroupInput"} + if s.ActionGroupId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionGroupId")) + } + if s.ActionGroupId != nil && len(*s.ActionGroupId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionGroupId", 1)) + } + if s.ActionGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("ActionGroupName")) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 5)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.ApiSchema != nil { + if err := s.ApiSchema.Validate(); err != nil { + invalidParams.AddNested("ApiSchema", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionGroupExecutor sets the ActionGroupExecutor field's value. +func (s *UpdateAgentActionGroupInput) SetActionGroupExecutor(v *ActionGroupExecutor) *UpdateAgentActionGroupInput { + s.ActionGroupExecutor = v + return s +} + +// SetActionGroupId sets the ActionGroupId field's value. +func (s *UpdateAgentActionGroupInput) SetActionGroupId(v string) *UpdateAgentActionGroupInput { + s.ActionGroupId = &v + return s +} + +// SetActionGroupName sets the ActionGroupName field's value. +func (s *UpdateAgentActionGroupInput) SetActionGroupName(v string) *UpdateAgentActionGroupInput { + s.ActionGroupName = &v + return s +} + +// SetActionGroupState sets the ActionGroupState field's value. +func (s *UpdateAgentActionGroupInput) SetActionGroupState(v string) *UpdateAgentActionGroupInput { + s.ActionGroupState = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *UpdateAgentActionGroupInput) SetAgentId(v string) *UpdateAgentActionGroupInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *UpdateAgentActionGroupInput) SetAgentVersion(v string) *UpdateAgentActionGroupInput { + s.AgentVersion = &v + return s +} + +// SetApiSchema sets the ApiSchema field's value. +func (s *UpdateAgentActionGroupInput) SetApiSchema(v *APISchema) *UpdateAgentActionGroupInput { + s.ApiSchema = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateAgentActionGroupInput) SetDescription(v string) *UpdateAgentActionGroupInput { + s.Description = &v + return s +} + +// SetParentActionGroupSignature sets the ParentActionGroupSignature field's value. +func (s *UpdateAgentActionGroupInput) SetParentActionGroupSignature(v string) *UpdateAgentActionGroupInput { + s.ParentActionGroupSignature = &v + return s +} + +// Update Action Group Response +type UpdateAgentActionGroupOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an Agent Action Group + // + // AgentActionGroup is a required field + AgentActionGroup *AgentActionGroup `locationName:"agentActionGroup" 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 UpdateAgentActionGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentActionGroupOutput) GoString() string { + return s.String() +} + +// SetAgentActionGroup sets the AgentActionGroup field's value. +func (s *UpdateAgentActionGroupOutput) SetAgentActionGroup(v *AgentActionGroup) *UpdateAgentActionGroupOutput { + s.AgentActionGroup = v + return s +} + +// Update Agent Alias Request +type UpdateAgentAliasInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent Alias is created + // + // AgentAliasId is a required field + AgentAliasId *string `location:"uri" locationName:"agentAliasId" min:"10" type:"string" required:"true"` + + // Name for a resource. + // + // AgentAliasName is a required field + AgentAliasName *string `locationName:"agentAliasName" type:"string" required:"true"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Routing configuration for an Agent alias. + RoutingConfiguration []*AgentAliasRoutingConfigurationListItem `locationName:"routingConfiguration" 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 UpdateAgentAliasInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentAliasInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAgentAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAgentAliasInput"} + if s.AgentAliasId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentAliasId")) + } + if s.AgentAliasId != nil && len(*s.AgentAliasId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("AgentAliasId", 10)) + } + if s.AgentAliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AgentAliasName")) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.RoutingConfiguration != nil { + for i, v := range s.RoutingConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RoutingConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *UpdateAgentAliasInput) SetAgentAliasId(v string) *UpdateAgentAliasInput { + s.AgentAliasId = &v + return s +} + +// SetAgentAliasName sets the AgentAliasName field's value. +func (s *UpdateAgentAliasInput) SetAgentAliasName(v string) *UpdateAgentAliasInput { + s.AgentAliasName = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *UpdateAgentAliasInput) SetAgentId(v string) *UpdateAgentAliasInput { + s.AgentId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateAgentAliasInput) SetDescription(v string) *UpdateAgentAliasInput { + s.Description = &v + return s +} + +// SetRoutingConfiguration sets the RoutingConfiguration field's value. +func (s *UpdateAgentAliasInput) SetRoutingConfiguration(v []*AgentAliasRoutingConfigurationListItem) *UpdateAgentAliasInput { + s.RoutingConfiguration = v + return s +} + +// Update Agent Alias Response +type UpdateAgentAliasOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent alias + // + // AgentAlias is a required field + AgentAlias *AgentAlias `locationName:"agentAlias" 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 UpdateAgentAliasOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentAliasOutput) GoString() string { + return s.String() +} + +// SetAgentAlias sets the AgentAlias field's value. +func (s *UpdateAgentAliasOutput) SetAgentAlias(v *AgentAlias) *UpdateAgentAliasOutput { + s.AgentAlias = v + return s +} + +// Update Agent Request +type UpdateAgentInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Name for a resource. + // + // AgentName is a required field + AgentName *string `locationName:"agentName" type:"string" required:"true"` + + // ARN of a IAM role. + // + // AgentResourceRoleArn is a required field + AgentResourceRoleArn *string `locationName:"agentResourceRoleArn" type:"string" required:"true"` + + // A KMS key ARN + CustomerEncryptionKeyArn *string `locationName:"customerEncryptionKeyArn" min:"1" type:"string"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // ARN or name of a Bedrock model. + FoundationModel *string `locationName:"foundationModel" min:"1" type:"string"` + + // Max Session Time. + IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` + + // Instruction for the agent. + // + // Instruction is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAgentInput's + // String and GoString methods. + Instruction *string `locationName:"instruction" min:"40" type:"string" sensitive:"true"` + + // Configuration for prompt override. + // + // PromptOverrideConfiguration is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAgentInput's + // String and GoString methods. + PromptOverrideConfiguration *PromptOverrideConfiguration `locationName:"promptOverrideConfiguration" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAgentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAgentInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentName == nil { + invalidParams.Add(request.NewErrParamRequired("AgentName")) + } + if s.AgentResourceRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("AgentResourceRoleArn")) + } + if s.CustomerEncryptionKeyArn != nil && len(*s.CustomerEncryptionKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomerEncryptionKeyArn", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FoundationModel != nil && len(*s.FoundationModel) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FoundationModel", 1)) + } + if s.IdleSessionTTLInSeconds != nil && *s.IdleSessionTTLInSeconds < 60 { + invalidParams.Add(request.NewErrParamMinValue("IdleSessionTTLInSeconds", 60)) + } + if s.Instruction != nil && len(*s.Instruction) < 40 { + invalidParams.Add(request.NewErrParamMinLen("Instruction", 40)) + } + if s.PromptOverrideConfiguration != nil { + if err := s.PromptOverrideConfiguration.Validate(); err != nil { + invalidParams.AddNested("PromptOverrideConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *UpdateAgentInput) SetAgentId(v string) *UpdateAgentInput { + s.AgentId = &v + return s +} + +// SetAgentName sets the AgentName field's value. +func (s *UpdateAgentInput) SetAgentName(v string) *UpdateAgentInput { + s.AgentName = &v + return s +} + +// SetAgentResourceRoleArn sets the AgentResourceRoleArn field's value. +func (s *UpdateAgentInput) SetAgentResourceRoleArn(v string) *UpdateAgentInput { + s.AgentResourceRoleArn = &v + return s +} + +// SetCustomerEncryptionKeyArn sets the CustomerEncryptionKeyArn field's value. +func (s *UpdateAgentInput) SetCustomerEncryptionKeyArn(v string) *UpdateAgentInput { + s.CustomerEncryptionKeyArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateAgentInput) SetDescription(v string) *UpdateAgentInput { + s.Description = &v + return s +} + +// SetFoundationModel sets the FoundationModel field's value. +func (s *UpdateAgentInput) SetFoundationModel(v string) *UpdateAgentInput { + s.FoundationModel = &v + return s +} + +// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. +func (s *UpdateAgentInput) SetIdleSessionTTLInSeconds(v int64) *UpdateAgentInput { + s.IdleSessionTTLInSeconds = &v + return s +} + +// SetInstruction sets the Instruction field's value. +func (s *UpdateAgentInput) SetInstruction(v string) *UpdateAgentInput { + s.Instruction = &v + return s +} + +// SetPromptOverrideConfiguration sets the PromptOverrideConfiguration field's value. +func (s *UpdateAgentInput) SetPromptOverrideConfiguration(v *PromptOverrideConfiguration) *UpdateAgentInput { + s.PromptOverrideConfiguration = v + return s +} + +// Update Agent Knowledge Base Request +type UpdateAgentKnowledgeBaseInput struct { + _ struct{} `type:"structure"` + + // Id generated at the server side when an Agent is created + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Draft Version of the Agent. + // + // AgentVersion is a required field + AgentVersion *string `location:"uri" locationName:"agentVersion" min:"5" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Id generated at the server side when a Knowledge Base is associated to an + // Agent + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // State of the knowledge base; whether it is enabled or disabled + KnowledgeBaseState *string `locationName:"knowledgeBaseState" type:"string" enum:"KnowledgeBaseState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAgentKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAgentKnowledgeBaseInput"} + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.AgentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AgentVersion")) + } + if s.AgentVersion != nil && len(*s.AgentVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AgentVersion", 5)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentId sets the AgentId field's value. +func (s *UpdateAgentKnowledgeBaseInput) SetAgentId(v string) *UpdateAgentKnowledgeBaseInput { + s.AgentId = &v + return s +} + +// SetAgentVersion sets the AgentVersion field's value. +func (s *UpdateAgentKnowledgeBaseInput) SetAgentVersion(v string) *UpdateAgentKnowledgeBaseInput { + s.AgentVersion = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateAgentKnowledgeBaseInput) SetDescription(v string) *UpdateAgentKnowledgeBaseInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateAgentKnowledgeBaseInput) SetKnowledgeBaseId(v string) *UpdateAgentKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetKnowledgeBaseState sets the KnowledgeBaseState field's value. +func (s *UpdateAgentKnowledgeBaseInput) SetKnowledgeBaseState(v string) *UpdateAgentKnowledgeBaseInput { + s.KnowledgeBaseState = &v + return s +} + +// Update Agent Knowledge Base Response +type UpdateAgentKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an Agent Knowledge Base. + // + // AgentKnowledgeBase is a required field + AgentKnowledgeBase *AgentKnowledgeBase `locationName:"agentKnowledgeBase" 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 UpdateAgentKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetAgentKnowledgeBase sets the AgentKnowledgeBase field's value. +func (s *UpdateAgentKnowledgeBaseOutput) SetAgentKnowledgeBase(v *AgentKnowledgeBase) *UpdateAgentKnowledgeBaseOutput { + s.AgentKnowledgeBase = v + return s +} + +// Update Agent Response +type UpdateAgentOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of an agent + // + // Agent is a required field + Agent *Agent `locationName:"agent" 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 UpdateAgentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAgentOutput) GoString() string { + return s.String() +} + +// SetAgent sets the Agent field's value. +func (s *UpdateAgentOutput) SetAgent(v *Agent) *UpdateAgentOutput { + s.Agent = v + return s +} + +type UpdateDataSourceInput struct { + _ struct{} `type:"structure"` + + // Specifies a raw data source location to ingest. + // + // DataSourceConfiguration is a required field + DataSourceConfiguration *DataSourceConfiguration `locationName:"dataSourceConfiguration" type:"structure" required:"true"` + + // Identifier for a resource. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" type:"string" required:"true"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // Server-side encryption configuration. + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // Configures ingestion for a vector knowledge base + VectorIngestionConfiguration *VectorIngestionConfiguration `locationName:"vectorIngestionConfiguration" 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 UpdateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} + if s.DataSourceConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceConfiguration")) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.DataSourceConfiguration != nil { + if err := s.DataSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("DataSourceConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.ServerSideEncryptionConfiguration != nil { + if err := s.ServerSideEncryptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("ServerSideEncryptionConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.VectorIngestionConfiguration != nil { + if err := s.VectorIngestionConfiguration.Validate(); err != nil { + invalidParams.AddNested("VectorIngestionConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceConfiguration sets the DataSourceConfiguration field's value. +func (s *UpdateDataSourceInput) SetDataSourceConfiguration(v *DataSourceConfiguration) *UpdateDataSourceInput { + s.DataSourceConfiguration = v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *UpdateDataSourceInput) SetDataSourceId(v string) *UpdateDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateDataSourceInput) SetDescription(v string) *UpdateDataSourceInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateDataSourceInput) SetKnowledgeBaseId(v string) *UpdateDataSourceInput { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDataSourceInput) SetName(v string) *UpdateDataSourceInput { + s.Name = &v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *UpdateDataSourceInput) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *UpdateDataSourceInput { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetVectorIngestionConfiguration sets the VectorIngestionConfiguration field's value. +func (s *UpdateDataSourceInput) SetVectorIngestionConfiguration(v *VectorIngestionConfiguration) *UpdateDataSourceInput { + s.VectorIngestionConfiguration = v + return s +} + +type UpdateDataSourceOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of a data source. + // + // DataSource is a required field + DataSource *DataSource `locationName:"dataSource" 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 UpdateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceOutput) GoString() string { + return s.String() +} + +// SetDataSource sets the DataSource field's value. +func (s *UpdateDataSourceOutput) SetDataSource(v *DataSource) *UpdateDataSourceOutput { + s.DataSource = v + return s +} + +type UpdateKnowledgeBaseInput struct { + _ struct{} `type:"structure"` + + // Description of the Resource. + Description *string `locationName:"description" min:"1" type:"string"` + + // Configures a bedrock knowledge base. + // + // KnowledgeBaseConfiguration is a required field + KnowledgeBaseConfiguration *KnowledgeBaseConfiguration `locationName:"knowledgeBaseConfiguration" type:"structure" required:"true"` + + // Identifier for a resource. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Name for a resource. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // ARN of a IAM role. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // Configures the physical storage of ingested data in a knowledge base. + // + // StorageConfiguration is a required field + StorageConfiguration *StorageConfiguration `locationName:"storageConfiguration" 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 UpdateKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateKnowledgeBaseInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseConfiguration")) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.StorageConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("StorageConfiguration")) + } + if s.KnowledgeBaseConfiguration != nil { + if err := s.KnowledgeBaseConfiguration.Validate(); err != nil { + invalidParams.AddNested("KnowledgeBaseConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.StorageConfiguration != nil { + if err := s.StorageConfiguration.Validate(); err != nil { + invalidParams.AddNested("StorageConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateKnowledgeBaseInput) SetDescription(v string) *UpdateKnowledgeBaseInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseConfiguration sets the KnowledgeBaseConfiguration field's value. +func (s *UpdateKnowledgeBaseInput) SetKnowledgeBaseConfiguration(v *KnowledgeBaseConfiguration) *UpdateKnowledgeBaseInput { + s.KnowledgeBaseConfiguration = v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateKnowledgeBaseInput) SetKnowledgeBaseId(v string) *UpdateKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateKnowledgeBaseInput) SetName(v string) *UpdateKnowledgeBaseInput { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateKnowledgeBaseInput) SetRoleArn(v string) *UpdateKnowledgeBaseInput { + s.RoleArn = &v + return s +} + +// SetStorageConfiguration sets the StorageConfiguration field's value. +func (s *UpdateKnowledgeBaseInput) SetStorageConfiguration(v *StorageConfiguration) *UpdateKnowledgeBaseInput { + s.StorageConfiguration = v + return s +} + +type UpdateKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // Contains the information of a knowledge base. + // + // KnowledgeBase is a required field + KnowledgeBase *KnowledgeBase `locationName:"knowledgeBase" 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 UpdateKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBase sets the KnowledgeBase field's value. +func (s *UpdateKnowledgeBaseOutput) SetKnowledgeBase(v *KnowledgeBase) *UpdateKnowledgeBaseOutput { + s.KnowledgeBase = v + return s +} + +// This exception is thrown when the request's input validation fails +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // list of ValidationExceptionField + FieldList []*ValidationExceptionField `locationName:"fieldList" type:"list"` + + // Non Blank 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 ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Stores information about a field passed inside a request that resulted in +// an exception +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // Non Blank String + // + // Message is a required field + Message *string `locationName:"message" type:"string" required:"true"` + + // Non Blank String + // + // Name is a required field + Name *string `locationName:"name" 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 ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +// Configures ingestion for a vector knowledge base +type VectorIngestionConfiguration struct { + _ struct{} `type:"structure"` + + // Configures chunking strategy + ChunkingConfiguration *ChunkingConfiguration `locationName:"chunkingConfiguration" 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 VectorIngestionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VectorIngestionConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VectorIngestionConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VectorIngestionConfiguration"} + if s.ChunkingConfiguration != nil { + if err := s.ChunkingConfiguration.Validate(); err != nil { + invalidParams.AddNested("ChunkingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChunkingConfiguration sets the ChunkingConfiguration field's value. +func (s *VectorIngestionConfiguration) SetChunkingConfiguration(v *ChunkingConfiguration) *VectorIngestionConfiguration { + s.ChunkingConfiguration = v + return s +} + +// Configurations for a vector knowledge base. +type VectorKnowledgeBaseConfiguration struct { + _ struct{} `type:"structure"` + + // Arn of a Bedrock model. + // + // EmbeddingModelArn is a required field + EmbeddingModelArn *string `locationName:"embeddingModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VectorKnowledgeBaseConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VectorKnowledgeBaseConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VectorKnowledgeBaseConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VectorKnowledgeBaseConfiguration"} + if s.EmbeddingModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("EmbeddingModelArn")) + } + if s.EmbeddingModelArn != nil && len(*s.EmbeddingModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("EmbeddingModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEmbeddingModelArn sets the EmbeddingModelArn field's value. +func (s *VectorKnowledgeBaseConfiguration) SetEmbeddingModelArn(v string) *VectorKnowledgeBaseConfiguration { + s.EmbeddingModelArn = &v + return s +} + +// Action Group Signature for a BuiltIn Action +const ( + // ActionGroupSignatureAmazonUserInput is a ActionGroupSignature enum value + ActionGroupSignatureAmazonUserInput = "AMAZON.UserInput" +) + +// ActionGroupSignature_Values returns all elements of the ActionGroupSignature enum +func ActionGroupSignature_Values() []string { + return []string{ + ActionGroupSignatureAmazonUserInput, + } +} + +// State of the action group +const ( + // ActionGroupStateEnabled is a ActionGroupState enum value + ActionGroupStateEnabled = "ENABLED" + + // ActionGroupStateDisabled is a ActionGroupState enum value + ActionGroupStateDisabled = "DISABLED" +) + +// ActionGroupState_Values returns all elements of the ActionGroupState enum +func ActionGroupState_Values() []string { + return []string{ + ActionGroupStateEnabled, + ActionGroupStateDisabled, + } +} + +// The statuses an Agent Alias can be in. +const ( + // AgentAliasStatusCreating is a AgentAliasStatus enum value + AgentAliasStatusCreating = "CREATING" + + // AgentAliasStatusPrepared is a AgentAliasStatus enum value + AgentAliasStatusPrepared = "PREPARED" + + // AgentAliasStatusFailed is a AgentAliasStatus enum value + AgentAliasStatusFailed = "FAILED" + + // AgentAliasStatusUpdating is a AgentAliasStatus enum value + AgentAliasStatusUpdating = "UPDATING" + + // AgentAliasStatusDeleting is a AgentAliasStatus enum value + AgentAliasStatusDeleting = "DELETING" +) + +// AgentAliasStatus_Values returns all elements of the AgentAliasStatus enum +func AgentAliasStatus_Values() []string { + return []string{ + AgentAliasStatusCreating, + AgentAliasStatusPrepared, + AgentAliasStatusFailed, + AgentAliasStatusUpdating, + AgentAliasStatusDeleting, + } +} + +// Schema Type for Action APIs. +const ( + // AgentStatusCreating is a AgentStatus enum value + AgentStatusCreating = "CREATING" + + // AgentStatusPreparing is a AgentStatus enum value + AgentStatusPreparing = "PREPARING" + + // AgentStatusPrepared is a AgentStatus enum value + AgentStatusPrepared = "PREPARED" + + // AgentStatusNotPrepared is a AgentStatus enum value + AgentStatusNotPrepared = "NOT_PREPARED" + + // AgentStatusDeleting is a AgentStatus enum value + AgentStatusDeleting = "DELETING" + + // AgentStatusFailed is a AgentStatus enum value + AgentStatusFailed = "FAILED" + + // AgentStatusVersioning is a AgentStatus enum value + AgentStatusVersioning = "VERSIONING" + + // AgentStatusUpdating is a AgentStatus enum value + AgentStatusUpdating = "UPDATING" +) + +// AgentStatus_Values returns all elements of the AgentStatus enum +func AgentStatus_Values() []string { + return []string{ + AgentStatusCreating, + AgentStatusPreparing, + AgentStatusPrepared, + AgentStatusNotPrepared, + AgentStatusDeleting, + AgentStatusFailed, + AgentStatusVersioning, + AgentStatusUpdating, + } +} + +// The type of chunking strategy +const ( + // ChunkingStrategyFixedSize is a ChunkingStrategy enum value + ChunkingStrategyFixedSize = "FIXED_SIZE" + + // ChunkingStrategyNone is a ChunkingStrategy enum value + ChunkingStrategyNone = "NONE" +) + +// ChunkingStrategy_Values returns all elements of the ChunkingStrategy enum +func ChunkingStrategy_Values() []string { + return []string{ + ChunkingStrategyFixedSize, + ChunkingStrategyNone, + } +} + +// Creation Mode for Prompt Configuration. +const ( + // CreationModeDefault is a CreationMode enum value + CreationModeDefault = "DEFAULT" + + // CreationModeOverridden is a CreationMode enum value + CreationModeOverridden = "OVERRIDDEN" +) + +// CreationMode_Values returns all elements of the CreationMode enum +func CreationMode_Values() []string { + return []string{ + CreationModeDefault, + CreationModeOverridden, + } +} + +// The status of a data source. +const ( + // DataSourceStatusAvailable is a DataSourceStatus enum value + DataSourceStatusAvailable = "AVAILABLE" + + // DataSourceStatusDeleting is a DataSourceStatus enum value + DataSourceStatusDeleting = "DELETING" +) + +// DataSourceStatus_Values returns all elements of the DataSourceStatus enum +func DataSourceStatus_Values() []string { + return []string{ + DataSourceStatusAvailable, + DataSourceStatusDeleting, + } +} + +// The type of the data source location. +const ( + // DataSourceTypeS3 is a DataSourceType enum value + DataSourceTypeS3 = "S3" +) + +// DataSourceType_Values returns all elements of the DataSourceType enum +func DataSourceType_Values() []string { + return []string{ + DataSourceTypeS3, + } +} + +// The name of the field to filter ingestion jobs. +const ( + // IngestionJobFilterAttributeStatus is a IngestionJobFilterAttribute enum value + IngestionJobFilterAttributeStatus = "STATUS" +) + +// IngestionJobFilterAttribute_Values returns all elements of the IngestionJobFilterAttribute enum +func IngestionJobFilterAttribute_Values() []string { + return []string{ + IngestionJobFilterAttributeStatus, + } +} + +// The operator used to filter ingestion jobs. +const ( + // IngestionJobFilterOperatorEq is a IngestionJobFilterOperator enum value + IngestionJobFilterOperatorEq = "EQ" +) + +// IngestionJobFilterOperator_Values returns all elements of the IngestionJobFilterOperator enum +func IngestionJobFilterOperator_Values() []string { + return []string{ + IngestionJobFilterOperatorEq, + } +} + +// The name of the field to sort ingestion jobs. +const ( + // IngestionJobSortByAttributeStatus is a IngestionJobSortByAttribute enum value + IngestionJobSortByAttributeStatus = "STATUS" + + // IngestionJobSortByAttributeStartedAt is a IngestionJobSortByAttribute enum value + IngestionJobSortByAttributeStartedAt = "STARTED_AT" +) + +// IngestionJobSortByAttribute_Values returns all elements of the IngestionJobSortByAttribute enum +func IngestionJobSortByAttribute_Values() []string { + return []string{ + IngestionJobSortByAttributeStatus, + IngestionJobSortByAttributeStartedAt, + } +} + +// The status of an ingestion job. +const ( + // IngestionJobStatusStarting is a IngestionJobStatus enum value + IngestionJobStatusStarting = "STARTING" + + // IngestionJobStatusInProgress is a IngestionJobStatus enum value + IngestionJobStatusInProgress = "IN_PROGRESS" + + // IngestionJobStatusComplete is a IngestionJobStatus enum value + IngestionJobStatusComplete = "COMPLETE" + + // IngestionJobStatusFailed is a IngestionJobStatus enum value + IngestionJobStatusFailed = "FAILED" +) + +// IngestionJobStatus_Values returns all elements of the IngestionJobStatus enum +func IngestionJobStatus_Values() []string { + return []string{ + IngestionJobStatusStarting, + IngestionJobStatusInProgress, + IngestionJobStatusComplete, + IngestionJobStatusFailed, + } +} + +// State of the knowledge base; whether it is enabled or disabled +const ( + // KnowledgeBaseStateEnabled is a KnowledgeBaseState enum value + KnowledgeBaseStateEnabled = "ENABLED" + + // KnowledgeBaseStateDisabled is a KnowledgeBaseState enum value + KnowledgeBaseStateDisabled = "DISABLED" +) + +// KnowledgeBaseState_Values returns all elements of the KnowledgeBaseState enum +func KnowledgeBaseState_Values() []string { + return []string{ + KnowledgeBaseStateEnabled, + KnowledgeBaseStateDisabled, + } +} + +// The status of a knowledge base. +const ( + // KnowledgeBaseStatusCreating is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusCreating = "CREATING" + + // KnowledgeBaseStatusActive is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusActive = "ACTIVE" + + // KnowledgeBaseStatusDeleting is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusDeleting = "DELETING" + + // KnowledgeBaseStatusUpdating is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusUpdating = "UPDATING" + + // KnowledgeBaseStatusFailed is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusFailed = "FAILED" +) + +// KnowledgeBaseStatus_Values returns all elements of the KnowledgeBaseStatus enum +func KnowledgeBaseStatus_Values() []string { + return []string{ + KnowledgeBaseStatusCreating, + KnowledgeBaseStatusActive, + KnowledgeBaseStatusDeleting, + KnowledgeBaseStatusUpdating, + KnowledgeBaseStatusFailed, + } +} + +// The storage type of a knowledge base. +const ( + // KnowledgeBaseStorageTypeOpensearchServerless is a KnowledgeBaseStorageType enum value + KnowledgeBaseStorageTypeOpensearchServerless = "OPENSEARCH_SERVERLESS" + + // KnowledgeBaseStorageTypePinecone is a KnowledgeBaseStorageType enum value + KnowledgeBaseStorageTypePinecone = "PINECONE" + + // KnowledgeBaseStorageTypeRedisEnterpriseCloud is a KnowledgeBaseStorageType enum value + KnowledgeBaseStorageTypeRedisEnterpriseCloud = "REDIS_ENTERPRISE_CLOUD" +) + +// KnowledgeBaseStorageType_Values returns all elements of the KnowledgeBaseStorageType enum +func KnowledgeBaseStorageType_Values() []string { + return []string{ + KnowledgeBaseStorageTypeOpensearchServerless, + KnowledgeBaseStorageTypePinecone, + KnowledgeBaseStorageTypeRedisEnterpriseCloud, + } +} + +// The type of a knowledge base. +const ( + // KnowledgeBaseTypeVector is a KnowledgeBaseType enum value + KnowledgeBaseTypeVector = "VECTOR" +) + +// KnowledgeBaseType_Values returns all elements of the KnowledgeBaseType enum +func KnowledgeBaseType_Values() []string { + return []string{ + KnowledgeBaseTypeVector, + } +} + +// Prompt State. +const ( + // PromptStateEnabled is a PromptState enum value + PromptStateEnabled = "ENABLED" + + // PromptStateDisabled is a PromptState enum value + PromptStateDisabled = "DISABLED" +) + +// PromptState_Values returns all elements of the PromptState enum +func PromptState_Values() []string { + return []string{ + PromptStateEnabled, + PromptStateDisabled, + } +} + +// Prompt Type. +const ( + // PromptTypePreProcessing is a PromptType enum value + PromptTypePreProcessing = "PRE_PROCESSING" + + // PromptTypeOrchestration is a PromptType enum value + PromptTypeOrchestration = "ORCHESTRATION" + + // PromptTypePostProcessing is a PromptType enum value + PromptTypePostProcessing = "POST_PROCESSING" + + // PromptTypeKnowledgeBaseResponseGeneration is a PromptType enum value + PromptTypeKnowledgeBaseResponseGeneration = "KNOWLEDGE_BASE_RESPONSE_GENERATION" +) + +// PromptType_Values returns all elements of the PromptType enum +func PromptType_Values() []string { + return []string{ + PromptTypePreProcessing, + PromptTypeOrchestration, + PromptTypePostProcessing, + PromptTypeKnowledgeBaseResponseGeneration, + } +} + +// Order to sort results by. +const ( + // SortOrderAscending is a SortOrder enum value + SortOrderAscending = "ASCENDING" + + // SortOrderDescending is a SortOrder enum value + SortOrderDescending = "DESCENDING" +) + +// SortOrder_Values returns all elements of the SortOrder enum +func SortOrder_Values() []string { + return []string{ + SortOrderAscending, + SortOrderDescending, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/bedrockagentiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/bedrockagentiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/bedrockagentiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/bedrockagentiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,248 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockagentiface provides an interface to enable mocking the Agents for Amazon Bedrock 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 bedrockagentiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/bedrockagent" +) + +// BedrockAgentAPI provides an interface to enable mocking the +// bedrockagent.BedrockAgent 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 +// // Agents for Amazon Bedrock. +// func myFunc(svc bedrockagentiface.BedrockAgentAPI) bool { +// // Make svc.AssociateAgentKnowledgeBase request +// } +// +// func main() { +// sess := session.New() +// svc := bedrockagent.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockBedrockAgentClient struct { +// bedrockagentiface.BedrockAgentAPI +// } +// func (m *mockBedrockAgentClient) AssociateAgentKnowledgeBase(input *bedrockagent.AssociateAgentKnowledgeBaseInput) (*bedrockagent.AssociateAgentKnowledgeBaseOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockBedrockAgentClient{} +// +// 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 BedrockAgentAPI interface { + AssociateAgentKnowledgeBase(*bedrockagent.AssociateAgentKnowledgeBaseInput) (*bedrockagent.AssociateAgentKnowledgeBaseOutput, error) + AssociateAgentKnowledgeBaseWithContext(aws.Context, *bedrockagent.AssociateAgentKnowledgeBaseInput, ...request.Option) (*bedrockagent.AssociateAgentKnowledgeBaseOutput, error) + AssociateAgentKnowledgeBaseRequest(*bedrockagent.AssociateAgentKnowledgeBaseInput) (*request.Request, *bedrockagent.AssociateAgentKnowledgeBaseOutput) + + CreateAgent(*bedrockagent.CreateAgentInput) (*bedrockagent.CreateAgentOutput, error) + CreateAgentWithContext(aws.Context, *bedrockagent.CreateAgentInput, ...request.Option) (*bedrockagent.CreateAgentOutput, error) + CreateAgentRequest(*bedrockagent.CreateAgentInput) (*request.Request, *bedrockagent.CreateAgentOutput) + + CreateAgentActionGroup(*bedrockagent.CreateAgentActionGroupInput) (*bedrockagent.CreateAgentActionGroupOutput, error) + CreateAgentActionGroupWithContext(aws.Context, *bedrockagent.CreateAgentActionGroupInput, ...request.Option) (*bedrockagent.CreateAgentActionGroupOutput, error) + CreateAgentActionGroupRequest(*bedrockagent.CreateAgentActionGroupInput) (*request.Request, *bedrockagent.CreateAgentActionGroupOutput) + + CreateAgentAlias(*bedrockagent.CreateAgentAliasInput) (*bedrockagent.CreateAgentAliasOutput, error) + CreateAgentAliasWithContext(aws.Context, *bedrockagent.CreateAgentAliasInput, ...request.Option) (*bedrockagent.CreateAgentAliasOutput, error) + CreateAgentAliasRequest(*bedrockagent.CreateAgentAliasInput) (*request.Request, *bedrockagent.CreateAgentAliasOutput) + + CreateDataSource(*bedrockagent.CreateDataSourceInput) (*bedrockagent.CreateDataSourceOutput, error) + CreateDataSourceWithContext(aws.Context, *bedrockagent.CreateDataSourceInput, ...request.Option) (*bedrockagent.CreateDataSourceOutput, error) + CreateDataSourceRequest(*bedrockagent.CreateDataSourceInput) (*request.Request, *bedrockagent.CreateDataSourceOutput) + + CreateKnowledgeBase(*bedrockagent.CreateKnowledgeBaseInput) (*bedrockagent.CreateKnowledgeBaseOutput, error) + CreateKnowledgeBaseWithContext(aws.Context, *bedrockagent.CreateKnowledgeBaseInput, ...request.Option) (*bedrockagent.CreateKnowledgeBaseOutput, error) + CreateKnowledgeBaseRequest(*bedrockagent.CreateKnowledgeBaseInput) (*request.Request, *bedrockagent.CreateKnowledgeBaseOutput) + + DeleteAgent(*bedrockagent.DeleteAgentInput) (*bedrockagent.DeleteAgentOutput, error) + DeleteAgentWithContext(aws.Context, *bedrockagent.DeleteAgentInput, ...request.Option) (*bedrockagent.DeleteAgentOutput, error) + DeleteAgentRequest(*bedrockagent.DeleteAgentInput) (*request.Request, *bedrockagent.DeleteAgentOutput) + + DeleteAgentActionGroup(*bedrockagent.DeleteAgentActionGroupInput) (*bedrockagent.DeleteAgentActionGroupOutput, error) + DeleteAgentActionGroupWithContext(aws.Context, *bedrockagent.DeleteAgentActionGroupInput, ...request.Option) (*bedrockagent.DeleteAgentActionGroupOutput, error) + DeleteAgentActionGroupRequest(*bedrockagent.DeleteAgentActionGroupInput) (*request.Request, *bedrockagent.DeleteAgentActionGroupOutput) + + DeleteAgentAlias(*bedrockagent.DeleteAgentAliasInput) (*bedrockagent.DeleteAgentAliasOutput, error) + DeleteAgentAliasWithContext(aws.Context, *bedrockagent.DeleteAgentAliasInput, ...request.Option) (*bedrockagent.DeleteAgentAliasOutput, error) + DeleteAgentAliasRequest(*bedrockagent.DeleteAgentAliasInput) (*request.Request, *bedrockagent.DeleteAgentAliasOutput) + + DeleteAgentVersion(*bedrockagent.DeleteAgentVersionInput) (*bedrockagent.DeleteAgentVersionOutput, error) + DeleteAgentVersionWithContext(aws.Context, *bedrockagent.DeleteAgentVersionInput, ...request.Option) (*bedrockagent.DeleteAgentVersionOutput, error) + DeleteAgentVersionRequest(*bedrockagent.DeleteAgentVersionInput) (*request.Request, *bedrockagent.DeleteAgentVersionOutput) + + DeleteDataSource(*bedrockagent.DeleteDataSourceInput) (*bedrockagent.DeleteDataSourceOutput, error) + DeleteDataSourceWithContext(aws.Context, *bedrockagent.DeleteDataSourceInput, ...request.Option) (*bedrockagent.DeleteDataSourceOutput, error) + DeleteDataSourceRequest(*bedrockagent.DeleteDataSourceInput) (*request.Request, *bedrockagent.DeleteDataSourceOutput) + + DeleteKnowledgeBase(*bedrockagent.DeleteKnowledgeBaseInput) (*bedrockagent.DeleteKnowledgeBaseOutput, error) + DeleteKnowledgeBaseWithContext(aws.Context, *bedrockagent.DeleteKnowledgeBaseInput, ...request.Option) (*bedrockagent.DeleteKnowledgeBaseOutput, error) + DeleteKnowledgeBaseRequest(*bedrockagent.DeleteKnowledgeBaseInput) (*request.Request, *bedrockagent.DeleteKnowledgeBaseOutput) + + DisassociateAgentKnowledgeBase(*bedrockagent.DisassociateAgentKnowledgeBaseInput) (*bedrockagent.DisassociateAgentKnowledgeBaseOutput, error) + DisassociateAgentKnowledgeBaseWithContext(aws.Context, *bedrockagent.DisassociateAgentKnowledgeBaseInput, ...request.Option) (*bedrockagent.DisassociateAgentKnowledgeBaseOutput, error) + DisassociateAgentKnowledgeBaseRequest(*bedrockagent.DisassociateAgentKnowledgeBaseInput) (*request.Request, *bedrockagent.DisassociateAgentKnowledgeBaseOutput) + + GetAgent(*bedrockagent.GetAgentInput) (*bedrockagent.GetAgentOutput, error) + GetAgentWithContext(aws.Context, *bedrockagent.GetAgentInput, ...request.Option) (*bedrockagent.GetAgentOutput, error) + GetAgentRequest(*bedrockagent.GetAgentInput) (*request.Request, *bedrockagent.GetAgentOutput) + + GetAgentActionGroup(*bedrockagent.GetAgentActionGroupInput) (*bedrockagent.GetAgentActionGroupOutput, error) + GetAgentActionGroupWithContext(aws.Context, *bedrockagent.GetAgentActionGroupInput, ...request.Option) (*bedrockagent.GetAgentActionGroupOutput, error) + GetAgentActionGroupRequest(*bedrockagent.GetAgentActionGroupInput) (*request.Request, *bedrockagent.GetAgentActionGroupOutput) + + GetAgentAlias(*bedrockagent.GetAgentAliasInput) (*bedrockagent.GetAgentAliasOutput, error) + GetAgentAliasWithContext(aws.Context, *bedrockagent.GetAgentAliasInput, ...request.Option) (*bedrockagent.GetAgentAliasOutput, error) + GetAgentAliasRequest(*bedrockagent.GetAgentAliasInput) (*request.Request, *bedrockagent.GetAgentAliasOutput) + + GetAgentKnowledgeBase(*bedrockagent.GetAgentKnowledgeBaseInput) (*bedrockagent.GetAgentKnowledgeBaseOutput, error) + GetAgentKnowledgeBaseWithContext(aws.Context, *bedrockagent.GetAgentKnowledgeBaseInput, ...request.Option) (*bedrockagent.GetAgentKnowledgeBaseOutput, error) + GetAgentKnowledgeBaseRequest(*bedrockagent.GetAgentKnowledgeBaseInput) (*request.Request, *bedrockagent.GetAgentKnowledgeBaseOutput) + + GetAgentVersion(*bedrockagent.GetAgentVersionInput) (*bedrockagent.GetAgentVersionOutput, error) + GetAgentVersionWithContext(aws.Context, *bedrockagent.GetAgentVersionInput, ...request.Option) (*bedrockagent.GetAgentVersionOutput, error) + GetAgentVersionRequest(*bedrockagent.GetAgentVersionInput) (*request.Request, *bedrockagent.GetAgentVersionOutput) + + GetDataSource(*bedrockagent.GetDataSourceInput) (*bedrockagent.GetDataSourceOutput, error) + GetDataSourceWithContext(aws.Context, *bedrockagent.GetDataSourceInput, ...request.Option) (*bedrockagent.GetDataSourceOutput, error) + GetDataSourceRequest(*bedrockagent.GetDataSourceInput) (*request.Request, *bedrockagent.GetDataSourceOutput) + + GetIngestionJob(*bedrockagent.GetIngestionJobInput) (*bedrockagent.GetIngestionJobOutput, error) + GetIngestionJobWithContext(aws.Context, *bedrockagent.GetIngestionJobInput, ...request.Option) (*bedrockagent.GetIngestionJobOutput, error) + GetIngestionJobRequest(*bedrockagent.GetIngestionJobInput) (*request.Request, *bedrockagent.GetIngestionJobOutput) + + GetKnowledgeBase(*bedrockagent.GetKnowledgeBaseInput) (*bedrockagent.GetKnowledgeBaseOutput, error) + GetKnowledgeBaseWithContext(aws.Context, *bedrockagent.GetKnowledgeBaseInput, ...request.Option) (*bedrockagent.GetKnowledgeBaseOutput, error) + GetKnowledgeBaseRequest(*bedrockagent.GetKnowledgeBaseInput) (*request.Request, *bedrockagent.GetKnowledgeBaseOutput) + + ListAgentActionGroups(*bedrockagent.ListAgentActionGroupsInput) (*bedrockagent.ListAgentActionGroupsOutput, error) + ListAgentActionGroupsWithContext(aws.Context, *bedrockagent.ListAgentActionGroupsInput, ...request.Option) (*bedrockagent.ListAgentActionGroupsOutput, error) + ListAgentActionGroupsRequest(*bedrockagent.ListAgentActionGroupsInput) (*request.Request, *bedrockagent.ListAgentActionGroupsOutput) + + ListAgentActionGroupsPages(*bedrockagent.ListAgentActionGroupsInput, func(*bedrockagent.ListAgentActionGroupsOutput, bool) bool) error + ListAgentActionGroupsPagesWithContext(aws.Context, *bedrockagent.ListAgentActionGroupsInput, func(*bedrockagent.ListAgentActionGroupsOutput, bool) bool, ...request.Option) error + + ListAgentAliases(*bedrockagent.ListAgentAliasesInput) (*bedrockagent.ListAgentAliasesOutput, error) + ListAgentAliasesWithContext(aws.Context, *bedrockagent.ListAgentAliasesInput, ...request.Option) (*bedrockagent.ListAgentAliasesOutput, error) + ListAgentAliasesRequest(*bedrockagent.ListAgentAliasesInput) (*request.Request, *bedrockagent.ListAgentAliasesOutput) + + ListAgentAliasesPages(*bedrockagent.ListAgentAliasesInput, func(*bedrockagent.ListAgentAliasesOutput, bool) bool) error + ListAgentAliasesPagesWithContext(aws.Context, *bedrockagent.ListAgentAliasesInput, func(*bedrockagent.ListAgentAliasesOutput, bool) bool, ...request.Option) error + + ListAgentKnowledgeBases(*bedrockagent.ListAgentKnowledgeBasesInput) (*bedrockagent.ListAgentKnowledgeBasesOutput, error) + ListAgentKnowledgeBasesWithContext(aws.Context, *bedrockagent.ListAgentKnowledgeBasesInput, ...request.Option) (*bedrockagent.ListAgentKnowledgeBasesOutput, error) + ListAgentKnowledgeBasesRequest(*bedrockagent.ListAgentKnowledgeBasesInput) (*request.Request, *bedrockagent.ListAgentKnowledgeBasesOutput) + + ListAgentKnowledgeBasesPages(*bedrockagent.ListAgentKnowledgeBasesInput, func(*bedrockagent.ListAgentKnowledgeBasesOutput, bool) bool) error + ListAgentKnowledgeBasesPagesWithContext(aws.Context, *bedrockagent.ListAgentKnowledgeBasesInput, func(*bedrockagent.ListAgentKnowledgeBasesOutput, bool) bool, ...request.Option) error + + ListAgentVersions(*bedrockagent.ListAgentVersionsInput) (*bedrockagent.ListAgentVersionsOutput, error) + ListAgentVersionsWithContext(aws.Context, *bedrockagent.ListAgentVersionsInput, ...request.Option) (*bedrockagent.ListAgentVersionsOutput, error) + ListAgentVersionsRequest(*bedrockagent.ListAgentVersionsInput) (*request.Request, *bedrockagent.ListAgentVersionsOutput) + + ListAgentVersionsPages(*bedrockagent.ListAgentVersionsInput, func(*bedrockagent.ListAgentVersionsOutput, bool) bool) error + ListAgentVersionsPagesWithContext(aws.Context, *bedrockagent.ListAgentVersionsInput, func(*bedrockagent.ListAgentVersionsOutput, bool) bool, ...request.Option) error + + ListAgents(*bedrockagent.ListAgentsInput) (*bedrockagent.ListAgentsOutput, error) + ListAgentsWithContext(aws.Context, *bedrockagent.ListAgentsInput, ...request.Option) (*bedrockagent.ListAgentsOutput, error) + ListAgentsRequest(*bedrockagent.ListAgentsInput) (*request.Request, *bedrockagent.ListAgentsOutput) + + ListAgentsPages(*bedrockagent.ListAgentsInput, func(*bedrockagent.ListAgentsOutput, bool) bool) error + ListAgentsPagesWithContext(aws.Context, *bedrockagent.ListAgentsInput, func(*bedrockagent.ListAgentsOutput, bool) bool, ...request.Option) error + + ListDataSources(*bedrockagent.ListDataSourcesInput) (*bedrockagent.ListDataSourcesOutput, error) + ListDataSourcesWithContext(aws.Context, *bedrockagent.ListDataSourcesInput, ...request.Option) (*bedrockagent.ListDataSourcesOutput, error) + ListDataSourcesRequest(*bedrockagent.ListDataSourcesInput) (*request.Request, *bedrockagent.ListDataSourcesOutput) + + ListDataSourcesPages(*bedrockagent.ListDataSourcesInput, func(*bedrockagent.ListDataSourcesOutput, bool) bool) error + ListDataSourcesPagesWithContext(aws.Context, *bedrockagent.ListDataSourcesInput, func(*bedrockagent.ListDataSourcesOutput, bool) bool, ...request.Option) error + + ListIngestionJobs(*bedrockagent.ListIngestionJobsInput) (*bedrockagent.ListIngestionJobsOutput, error) + ListIngestionJobsWithContext(aws.Context, *bedrockagent.ListIngestionJobsInput, ...request.Option) (*bedrockagent.ListIngestionJobsOutput, error) + ListIngestionJobsRequest(*bedrockagent.ListIngestionJobsInput) (*request.Request, *bedrockagent.ListIngestionJobsOutput) + + ListIngestionJobsPages(*bedrockagent.ListIngestionJobsInput, func(*bedrockagent.ListIngestionJobsOutput, bool) bool) error + ListIngestionJobsPagesWithContext(aws.Context, *bedrockagent.ListIngestionJobsInput, func(*bedrockagent.ListIngestionJobsOutput, bool) bool, ...request.Option) error + + ListKnowledgeBases(*bedrockagent.ListKnowledgeBasesInput) (*bedrockagent.ListKnowledgeBasesOutput, error) + ListKnowledgeBasesWithContext(aws.Context, *bedrockagent.ListKnowledgeBasesInput, ...request.Option) (*bedrockagent.ListKnowledgeBasesOutput, error) + ListKnowledgeBasesRequest(*bedrockagent.ListKnowledgeBasesInput) (*request.Request, *bedrockagent.ListKnowledgeBasesOutput) + + ListKnowledgeBasesPages(*bedrockagent.ListKnowledgeBasesInput, func(*bedrockagent.ListKnowledgeBasesOutput, bool) bool) error + ListKnowledgeBasesPagesWithContext(aws.Context, *bedrockagent.ListKnowledgeBasesInput, func(*bedrockagent.ListKnowledgeBasesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*bedrockagent.ListTagsForResourceInput) (*bedrockagent.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *bedrockagent.ListTagsForResourceInput, ...request.Option) (*bedrockagent.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*bedrockagent.ListTagsForResourceInput) (*request.Request, *bedrockagent.ListTagsForResourceOutput) + + PrepareAgent(*bedrockagent.PrepareAgentInput) (*bedrockagent.PrepareAgentOutput, error) + PrepareAgentWithContext(aws.Context, *bedrockagent.PrepareAgentInput, ...request.Option) (*bedrockagent.PrepareAgentOutput, error) + PrepareAgentRequest(*bedrockagent.PrepareAgentInput) (*request.Request, *bedrockagent.PrepareAgentOutput) + + StartIngestionJob(*bedrockagent.StartIngestionJobInput) (*bedrockagent.StartIngestionJobOutput, error) + StartIngestionJobWithContext(aws.Context, *bedrockagent.StartIngestionJobInput, ...request.Option) (*bedrockagent.StartIngestionJobOutput, error) + StartIngestionJobRequest(*bedrockagent.StartIngestionJobInput) (*request.Request, *bedrockagent.StartIngestionJobOutput) + + TagResource(*bedrockagent.TagResourceInput) (*bedrockagent.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *bedrockagent.TagResourceInput, ...request.Option) (*bedrockagent.TagResourceOutput, error) + TagResourceRequest(*bedrockagent.TagResourceInput) (*request.Request, *bedrockagent.TagResourceOutput) + + UntagResource(*bedrockagent.UntagResourceInput) (*bedrockagent.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *bedrockagent.UntagResourceInput, ...request.Option) (*bedrockagent.UntagResourceOutput, error) + UntagResourceRequest(*bedrockagent.UntagResourceInput) (*request.Request, *bedrockagent.UntagResourceOutput) + + UpdateAgent(*bedrockagent.UpdateAgentInput) (*bedrockagent.UpdateAgentOutput, error) + UpdateAgentWithContext(aws.Context, *bedrockagent.UpdateAgentInput, ...request.Option) (*bedrockagent.UpdateAgentOutput, error) + UpdateAgentRequest(*bedrockagent.UpdateAgentInput) (*request.Request, *bedrockagent.UpdateAgentOutput) + + UpdateAgentActionGroup(*bedrockagent.UpdateAgentActionGroupInput) (*bedrockagent.UpdateAgentActionGroupOutput, error) + UpdateAgentActionGroupWithContext(aws.Context, *bedrockagent.UpdateAgentActionGroupInput, ...request.Option) (*bedrockagent.UpdateAgentActionGroupOutput, error) + UpdateAgentActionGroupRequest(*bedrockagent.UpdateAgentActionGroupInput) (*request.Request, *bedrockagent.UpdateAgentActionGroupOutput) + + UpdateAgentAlias(*bedrockagent.UpdateAgentAliasInput) (*bedrockagent.UpdateAgentAliasOutput, error) + UpdateAgentAliasWithContext(aws.Context, *bedrockagent.UpdateAgentAliasInput, ...request.Option) (*bedrockagent.UpdateAgentAliasOutput, error) + UpdateAgentAliasRequest(*bedrockagent.UpdateAgentAliasInput) (*request.Request, *bedrockagent.UpdateAgentAliasOutput) + + UpdateAgentKnowledgeBase(*bedrockagent.UpdateAgentKnowledgeBaseInput) (*bedrockagent.UpdateAgentKnowledgeBaseOutput, error) + UpdateAgentKnowledgeBaseWithContext(aws.Context, *bedrockagent.UpdateAgentKnowledgeBaseInput, ...request.Option) (*bedrockagent.UpdateAgentKnowledgeBaseOutput, error) + UpdateAgentKnowledgeBaseRequest(*bedrockagent.UpdateAgentKnowledgeBaseInput) (*request.Request, *bedrockagent.UpdateAgentKnowledgeBaseOutput) + + UpdateDataSource(*bedrockagent.UpdateDataSourceInput) (*bedrockagent.UpdateDataSourceOutput, error) + UpdateDataSourceWithContext(aws.Context, *bedrockagent.UpdateDataSourceInput, ...request.Option) (*bedrockagent.UpdateDataSourceOutput, error) + UpdateDataSourceRequest(*bedrockagent.UpdateDataSourceInput) (*request.Request, *bedrockagent.UpdateDataSourceOutput) + + UpdateKnowledgeBase(*bedrockagent.UpdateKnowledgeBaseInput) (*bedrockagent.UpdateKnowledgeBaseOutput, error) + UpdateKnowledgeBaseWithContext(aws.Context, *bedrockagent.UpdateKnowledgeBaseInput, ...request.Option) (*bedrockagent.UpdateKnowledgeBaseOutput, error) + UpdateKnowledgeBaseRequest(*bedrockagent.UpdateKnowledgeBaseInput) (*request.Request, *bedrockagent.UpdateKnowledgeBaseOutput) +} + +var _ BedrockAgentAPI = (*bedrockagent.BedrockAgent)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,29 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockagent provides the client and types for making API +// requests to Agents for Amazon Bedrock. +// +// An example service, deployed with the Octane Service creator, which will +// echo the string +// +// See https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05 for more information on this service. +// +// See bedrockagent package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrockagent/ +// +// # Using the Client +// +// To contact Agents for Amazon Bedrock 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 Agents for Amazon Bedrock client BedrockAgent for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrockagent/#New +package bedrockagent diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,64 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockagent + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // This exception is thrown when a request is denied per access permissions + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // This exception is thrown when there is a conflict performing an operation + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // This exception is thrown if there was an unexpected error during processing + // of request + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // This exception is thrown when a resource referenced by the operation does + // not exist + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // This exception is thrown when a request is made beyond the service quota + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // This exception is thrown when the number of requests exceeds the limit + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // This exception is thrown when the request's input validation fails + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/service.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagent/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagent/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockagent + +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/restjson" +) + +// BedrockAgent provides the API operation methods for making requests to +// Agents for Amazon Bedrock. See this package's package overview docs +// for details on the service. +// +// BedrockAgent methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type BedrockAgent 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 = "Bedrock Agent" // Name of service. + EndpointsID = "bedrock-agent" // ID to lookup a service endpoint with. + ServiceID = "Bedrock Agent" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the BedrockAgent 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 BedrockAgent client from just a session. +// svc := bedrockagent.New(mySession) +// +// // Create a BedrockAgent client with additional configuration +// svc := bedrockagent.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *BedrockAgent { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "bedrock" + } + 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) *BedrockAgent { + svc := &BedrockAgent{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-06-05", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a BedrockAgent operation and runs any +// custom request initialization. +func (c *BedrockAgent) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/api.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4379 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockagentruntime + +import ( + "bytes" + "fmt" + "io" + "sync" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/eventstream" + "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi" + "github.com/aws/aws-sdk-go/private/protocol/rest" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +const opInvokeAgent = "InvokeAgent" + +// InvokeAgentRequest generates a "aws/request.Request" representing the +// client's request for the InvokeAgent 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 InvokeAgent for more information on using the InvokeAgent +// 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 InvokeAgentRequest method. +// req, resp := client.InvokeAgentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26/InvokeAgent +func (c *BedrockAgentRuntime) InvokeAgentRequest(input *InvokeAgentInput) (req *request.Request, output *InvokeAgentOutput) { + op := &request.Operation{ + Name: opInvokeAgent, + HTTPMethod: "POST", + HTTPPath: "/agents/{agentId}/agentAliases/{agentAliasId}/sessions/{sessionId}/text", + } + + if input == nil { + input = &InvokeAgentInput{} + } + + output = &InvokeAgentOutput{} + req = c.newRequest(op, input, output) + + es := NewInvokeAgentEventStream() + output.eventStream = es + + req.Handlers.Send.Swap(client.LogHTTPResponseHandler.Name, client.LogHTTPResponseHeaderHandler) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, rest.UnmarshalHandler) + req.Handlers.Unmarshal.PushBack(es.runOutputStream) + req.Handlers.Unmarshal.PushBack(es.runOnStreamPartClose) + return +} + +// InvokeAgent API operation for Agents for Amazon Bedrock Runtime. +// +// Invokes the specified Bedrock model to run inference using the input provided +// in the request body. +// +// 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 Agents for Amazon Bedrock Runtime's +// API operation InvokeAgent for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - DependencyFailedException +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource due to a customer fault (i.e. bad configuration) +// +// - BadGatewayException +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26/InvokeAgent +func (c *BedrockAgentRuntime) InvokeAgent(input *InvokeAgentInput) (*InvokeAgentOutput, error) { + req, out := c.InvokeAgentRequest(input) + return out, req.Send() +} + +// InvokeAgentWithContext is the same as InvokeAgent with the addition of +// the ability to pass a context and additional request options. +// +// See InvokeAgent 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 *BedrockAgentRuntime) InvokeAgentWithContext(ctx aws.Context, input *InvokeAgentInput, opts ...request.Option) (*InvokeAgentOutput, error) { + req, out := c.InvokeAgentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +var _ awserr.Error +var _ time.Time + +// InvokeAgentEventStream provides the event stream handling for the InvokeAgent. +// +// For testing and mocking the event stream this type should be initialized via +// the NewInvokeAgentEventStream constructor function. Using the functional options +// to pass in nested mock behavior. +type InvokeAgentEventStream struct { + + // Reader is the EventStream reader for the ResponseStream + // events. This value is automatically set by the SDK when the API call is made + // Use this member when unit testing your code with the SDK to mock out the + // EventStream Reader. + // + // Must not be nil. + Reader ResponseStreamReader + + outputReader io.ReadCloser + + done chan struct{} + closeOnce sync.Once + err *eventstreamapi.OnceError +} + +// NewInvokeAgentEventStream initializes an InvokeAgentEventStream. +// This function should only be used for testing and mocking the InvokeAgentEventStream +// stream within your application. +// +// The Reader member must be set before reading events from the stream. +// +// es := NewInvokeAgentEventStream(func(o *InvokeAgentEventStream){ +// es.Reader = myMockStreamReader +// }) +func NewInvokeAgentEventStream(opts ...func(*InvokeAgentEventStream)) *InvokeAgentEventStream { + es := &InvokeAgentEventStream{ + done: make(chan struct{}), + err: eventstreamapi.NewOnceError(), + } + + for _, fn := range opts { + fn(es) + } + + return es +} + +func (es *InvokeAgentEventStream) runOnStreamPartClose(r *request.Request) { + if es.done == nil { + return + } + go es.waitStreamPartClose() + +} + +func (es *InvokeAgentEventStream) waitStreamPartClose() { + var outputErrCh <-chan struct{} + if v, ok := es.Reader.(interface{ ErrorSet() <-chan struct{} }); ok { + outputErrCh = v.ErrorSet() + } + var outputClosedCh <-chan struct{} + if v, ok := es.Reader.(interface{ Closed() <-chan struct{} }); ok { + outputClosedCh = v.Closed() + } + + select { + case <-es.done: + case <-outputErrCh: + es.err.SetError(es.Reader.Err()) + es.Close() + case <-outputClosedCh: + if err := es.Reader.Err(); err != nil { + es.err.SetError(es.Reader.Err()) + } + es.Close() + } +} + +// Events returns a channel to read events from. +// +// These events are: +// +// - PayloadPart +// - TracePart +// - ResponseStreamUnknownEvent +func (es *InvokeAgentEventStream) Events() <-chan ResponseStreamEvent { + return es.Reader.Events() +} + +func (es *InvokeAgentEventStream) runOutputStream(r *request.Request) { + var opts []func(*eventstream.Decoder) + if r.Config.Logger != nil && r.Config.LogLevel.Matches(aws.LogDebugWithEventStreamBody) { + opts = append(opts, eventstream.DecodeWithLogger(r.Config.Logger)) + } + + unmarshalerForEvent := unmarshalerForResponseStreamEvent{ + metadata: protocol.ResponseMetadata{ + StatusCode: r.HTTPResponse.StatusCode, + RequestID: r.RequestID, + }, + }.UnmarshalerForEventName + + decoder := eventstream.NewDecoder(r.HTTPResponse.Body, opts...) + eventReader := eventstreamapi.NewEventReader(decoder, + protocol.HandlerPayloadUnmarshal{ + Unmarshalers: r.Handlers.UnmarshalStream, + }, + unmarshalerForEvent, + ) + + es.outputReader = r.HTTPResponse.Body + es.Reader = newReadResponseStream(eventReader) +} + +// Close closes the stream. This will also cause the stream to be closed. +// Close must be called when done using the stream API. Not calling Close +// may result in resource leaks. +// +// You can use the closing of the Reader's Events channel to terminate your +// application's read from the API's stream. +func (es *InvokeAgentEventStream) Close() (err error) { + es.closeOnce.Do(es.safeClose) + return es.Err() +} + +func (es *InvokeAgentEventStream) safeClose() { + if es.done != nil { + close(es.done) + } + + es.Reader.Close() + if es.outputReader != nil { + es.outputReader.Close() + } +} + +// Err returns any error that occurred while reading or writing EventStream +// Events from the service API's response. Returns nil if there were no errors. +func (es *InvokeAgentEventStream) Err() error { + if err := es.err.Err(); err != nil { + return err + } + if err := es.Reader.Err(); err != nil { + return err + } + + return nil +} + +const opRetrieve = "Retrieve" + +// RetrieveRequest generates a "aws/request.Request" representing the +// client's request for the Retrieve 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 Retrieve for more information on using the Retrieve +// 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 RetrieveRequest method. +// req, resp := client.RetrieveRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26/Retrieve +func (c *BedrockAgentRuntime) RetrieveRequest(input *RetrieveInput) (req *request.Request, output *RetrieveOutput) { + op := &request.Operation{ + Name: opRetrieve, + HTTPMethod: "POST", + HTTPPath: "/knowledgebases/{knowledgeBaseId}/retrieve", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "", + TruncationToken: "", + }, + } + + if input == nil { + input = &RetrieveInput{} + } + + output = &RetrieveOutput{} + req = c.newRequest(op, input, output) + return +} + +// Retrieve API operation for Agents for Amazon Bedrock Runtime. +// +// Retrieve from knowledge base. +// +// 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 Agents for Amazon Bedrock Runtime's +// API operation Retrieve for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - DependencyFailedException +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource due to a customer fault (i.e. bad configuration) +// +// - BadGatewayException +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26/Retrieve +func (c *BedrockAgentRuntime) Retrieve(input *RetrieveInput) (*RetrieveOutput, error) { + req, out := c.RetrieveRequest(input) + return out, req.Send() +} + +// RetrieveWithContext is the same as Retrieve with the addition of +// the ability to pass a context and additional request options. +// +// See Retrieve 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 *BedrockAgentRuntime) RetrieveWithContext(ctx aws.Context, input *RetrieveInput, opts ...request.Option) (*RetrieveOutput, error) { + req, out := c.RetrieveRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// RetrievePages iterates over the pages of a Retrieve operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See Retrieve 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 Retrieve operation. +// pageNum := 0 +// err := client.RetrievePages(params, +// func(page *bedrockagentruntime.RetrieveOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *BedrockAgentRuntime) RetrievePages(input *RetrieveInput, fn func(*RetrieveOutput, bool) bool) error { + return c.RetrievePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// RetrievePagesWithContext same as RetrievePages 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 *BedrockAgentRuntime) RetrievePagesWithContext(ctx aws.Context, input *RetrieveInput, fn func(*RetrieveOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *RetrieveInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.RetrieveRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*RetrieveOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opRetrieveAndGenerate = "RetrieveAndGenerate" + +// RetrieveAndGenerateRequest generates a "aws/request.Request" representing the +// client's request for the RetrieveAndGenerate 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 RetrieveAndGenerate for more information on using the RetrieveAndGenerate +// 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 RetrieveAndGenerateRequest method. +// req, resp := client.RetrieveAndGenerateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26/RetrieveAndGenerate +func (c *BedrockAgentRuntime) RetrieveAndGenerateRequest(input *RetrieveAndGenerateInput) (req *request.Request, output *RetrieveAndGenerateOutput) { + op := &request.Operation{ + Name: opRetrieveAndGenerate, + HTTPMethod: "POST", + HTTPPath: "/retrieveAndGenerate", + } + + if input == nil { + input = &RetrieveAndGenerateInput{} + } + + output = &RetrieveAndGenerateOutput{} + req = c.newRequest(op, input, output) + return +} + +// RetrieveAndGenerate API operation for Agents for Amazon Bedrock Runtime. +// +// # RetrieveAndGenerate API +// +// 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 Agents for Amazon Bedrock Runtime's +// API operation RetrieveAndGenerate for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// This exception is thrown when there is a conflict performing an operation +// +// - ResourceNotFoundException +// This exception is thrown when a resource referenced by the operation does +// not exist +// +// - ValidationException +// This exception is thrown when the request's input validation fails +// +// - InternalServerException +// This exception is thrown if there was an unexpected error during processing +// of request +// +// - DependencyFailedException +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource due to a customer fault (i.e. bad configuration) +// +// - BadGatewayException +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource +// +// - ThrottlingException +// This exception is thrown when the number of requests exceeds the limit +// +// - AccessDeniedException +// This exception is thrown when a request is denied per access permissions +// +// - ServiceQuotaExceededException +// This exception is thrown when a request is made beyond the service quota +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26/RetrieveAndGenerate +func (c *BedrockAgentRuntime) RetrieveAndGenerate(input *RetrieveAndGenerateInput) (*RetrieveAndGenerateOutput, error) { + req, out := c.RetrieveAndGenerateRequest(input) + return out, req.Send() +} + +// RetrieveAndGenerateWithContext is the same as RetrieveAndGenerate with the addition of +// the ability to pass a context and additional request options. +// +// See RetrieveAndGenerate 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 *BedrockAgentRuntime) RetrieveAndGenerateWithContext(ctx aws.Context, input *RetrieveAndGenerateInput, opts ...request.Option) (*RetrieveAndGenerateOutput, error) { + req, out := c.RetrieveAndGenerateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// This exception is thrown when a request is denied per access permissions +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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() +} + +// The AccessDeniedException is and event in the ResponseStream group of events. +func (s *AccessDeniedException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the AccessDeniedException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *AccessDeniedException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *AccessDeniedException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// input to lambda used in action group +type ActionGroupInvocationInput_ struct { + _ struct{} `type:"structure"` + + // Agent Trace Action Group Name + // + // ActionGroupName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionGroupInvocationInput_'s + // String and GoString methods. + ActionGroupName *string `locationName:"actionGroupName" type:"string" sensitive:"true"` + + // Agent Trace Action Group API path + // + // ApiPath is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionGroupInvocationInput_'s + // String and GoString methods. + ApiPath *string `locationName:"apiPath" type:"string" sensitive:"true"` + + // list of parameters included in action group invocation + Parameters []*Parameter `locationName:"parameters" type:"list"` + + // Request Body Content Map + RequestBody *RequestBody `locationName:"requestBody" type:"structure"` + + // Agent Trace Action Group Action verb + // + // Verb is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionGroupInvocationInput_'s + // String and GoString methods. + Verb *string `locationName:"verb" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionGroupInvocationInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionGroupInvocationInput_) GoString() string { + return s.String() +} + +// SetActionGroupName sets the ActionGroupName field's value. +func (s *ActionGroupInvocationInput_) SetActionGroupName(v string) *ActionGroupInvocationInput_ { + s.ActionGroupName = &v + return s +} + +// SetApiPath sets the ApiPath field's value. +func (s *ActionGroupInvocationInput_) SetApiPath(v string) *ActionGroupInvocationInput_ { + s.ApiPath = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *ActionGroupInvocationInput_) SetParameters(v []*Parameter) *ActionGroupInvocationInput_ { + s.Parameters = v + return s +} + +// SetRequestBody sets the RequestBody field's value. +func (s *ActionGroupInvocationInput_) SetRequestBody(v *RequestBody) *ActionGroupInvocationInput_ { + s.RequestBody = v + return s +} + +// SetVerb sets the Verb field's value. +func (s *ActionGroupInvocationInput_) SetVerb(v string) *ActionGroupInvocationInput_ { + s.Verb = &v + return s +} + +// output from lambda used in action group +type ActionGroupInvocationOutput_ struct { + _ struct{} `type:"structure"` + + // Agent Trace Action Group Lambda Invocation Output String + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionGroupInvocationOutput_'s + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionGroupInvocationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionGroupInvocationOutput_) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *ActionGroupInvocationOutput_) SetText(v string) *ActionGroupInvocationOutput_ { + s.Text = &v + return s +} + +// Citations associated with final agent response +type Attribution struct { + _ struct{} `type:"structure"` + + // List of citations + Citations []*Citation `locationName:"citations" 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 Attribution) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Attribution) GoString() string { + return s.String() +} + +// SetCitations sets the Citations field's value. +func (s *Attribution) SetCitations(v []*Citation) *Attribution { + s.Citations = v + return s +} + +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource +type BadGatewayException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank String + Message_ *string `locationName:"message" type:"string"` + + // Non Blank String + ResourceName *string `locationName:"resourceName" 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 BadGatewayException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BadGatewayException) GoString() string { + return s.String() +} + +// The BadGatewayException is and event in the ResponseStream group of events. +func (s *BadGatewayException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the BadGatewayException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *BadGatewayException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *BadGatewayException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorBadGatewayException(v protocol.ResponseMetadata) error { + return &BadGatewayException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *BadGatewayException) Code() string { + return "BadGatewayException" +} + +// Message returns the exception's message. +func (s *BadGatewayException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *BadGatewayException) OrigErr() error { + return nil +} + +func (s *BadGatewayException) 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 *BadGatewayException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *BadGatewayException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Citation associated with the agent response +type Citation struct { + _ struct{} `type:"structure"` + + // Generate response part + GeneratedResponsePart *GeneratedResponsePart `locationName:"generatedResponsePart" type:"structure"` + + // list of retrieved references + RetrievedReferences []*RetrievedReference `locationName:"retrievedReferences" 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 Citation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Citation) GoString() string { + return s.String() +} + +// SetGeneratedResponsePart sets the GeneratedResponsePart field's value. +func (s *Citation) SetGeneratedResponsePart(v *GeneratedResponsePart) *Citation { + s.GeneratedResponsePart = v + return s +} + +// SetRetrievedReferences sets the RetrievedReferences field's value. +func (s *Citation) SetRetrievedReferences(v []*RetrievedReference) *Citation { + s.RetrievedReferences = v + return s +} + +// This exception is thrown when there is a conflict performing an operation +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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() +} + +// The ConflictException is and event in the ResponseStream group of events. +func (s *ConflictException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ConflictException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ConflictException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ConflictException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +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 +} + +// This exception is thrown when a request fails due to dependency like Lambda, +// Bedrock, STS resource due to a customer fault (i.e. bad configuration) +type DependencyFailedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank String + Message_ *string `locationName:"message" type:"string"` + + // Non Blank String + ResourceName *string `locationName:"resourceName" 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 DependencyFailedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DependencyFailedException) GoString() string { + return s.String() +} + +// The DependencyFailedException is and event in the ResponseStream group of events. +func (s *DependencyFailedException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the DependencyFailedException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *DependencyFailedException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *DependencyFailedException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorDependencyFailedException(v protocol.ResponseMetadata) error { + return &DependencyFailedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *DependencyFailedException) Code() string { + return "DependencyFailedException" +} + +// Message returns the exception's message. +func (s *DependencyFailedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DependencyFailedException) OrigErr() error { + return nil +} + +func (s *DependencyFailedException) 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 *DependencyFailedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *DependencyFailedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Trace Part which is emitted when agent trace could not be generated +type FailureTrace struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Agent Trace Failed Reason String + // + // FailureReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FailureTrace's + // String and GoString methods. + FailureReason *string `locationName:"failureReason" type:"string" sensitive:"true"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" 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 FailureTrace) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailureTrace) GoString() string { + return s.String() +} + +// SetFailureReason sets the FailureReason field's value. +func (s *FailureTrace) SetFailureReason(v string) *FailureTrace { + s.FailureReason = &v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *FailureTrace) SetTraceId(v string) *FailureTrace { + s.TraceId = &v + return s +} + +// Agent finish output +type FinalResponse struct { + _ struct{} `type:"structure"` + + // Agent Trace Action Group Lambda Invocation Output String + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FinalResponse's + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FinalResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FinalResponse) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *FinalResponse) SetText(v string) *FinalResponse { + s.Text = &v + return s +} + +// Generate response part +type GeneratedResponsePart struct { + _ struct{} `type:"structure"` + + // Text response part + TextResponsePart *TextResponsePart `locationName:"textResponsePart" 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 GeneratedResponsePart) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GeneratedResponsePart) GoString() string { + return s.String() +} + +// SetTextResponsePart sets the TextResponsePart field's value. +func (s *GeneratedResponsePart) SetTextResponsePart(v *TextResponsePart) *GeneratedResponsePart { + s.TextResponsePart = v + return s +} + +// Configurations for controlling the inference response of an InvokeAgent API +// call +type InferenceConfiguration struct { + _ struct{} `type:"structure"` + + // Maximum length of output + MaximumLength *int64 `locationName:"maximumLength" type:"integer"` + + // List of stop sequences + StopSequences []*string `locationName:"stopSequences" type:"list"` + + // Controls randomness, higher values increase diversity + Temperature *float64 `locationName:"temperature" type:"float"` + + // Sample from the k most likely next tokens + TopK *int64 `locationName:"topK" type:"integer"` + + // Cumulative probability cutoff for token selection + TopP *float64 `locationName:"topP" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceConfiguration) GoString() string { + return s.String() +} + +// SetMaximumLength sets the MaximumLength field's value. +func (s *InferenceConfiguration) SetMaximumLength(v int64) *InferenceConfiguration { + s.MaximumLength = &v + return s +} + +// SetStopSequences sets the StopSequences field's value. +func (s *InferenceConfiguration) SetStopSequences(v []*string) *InferenceConfiguration { + s.StopSequences = v + return s +} + +// SetTemperature sets the Temperature field's value. +func (s *InferenceConfiguration) SetTemperature(v float64) *InferenceConfiguration { + s.Temperature = &v + return s +} + +// SetTopK sets the TopK field's value. +func (s *InferenceConfiguration) SetTopK(v int64) *InferenceConfiguration { + s.TopK = &v + return s +} + +// SetTopP sets the TopP field's value. +func (s *InferenceConfiguration) SetTopP(v float64) *InferenceConfiguration { + s.TopP = &v + return s +} + +// This exception is thrown if there was an unexpected error during processing +// of request +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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() +} + +// The InternalServerException is and event in the ResponseStream group of events. +func (s *InternalServerException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the InternalServerException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *InternalServerException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *InternalServerException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +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 +} + +// Trace Part which contains input details for action group or knowledge base +type InvocationInput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // input to lambda used in action group + ActionGroupInvocationInput *ActionGroupInvocationInput_ `locationName:"actionGroupInvocationInput" type:"structure"` + + // types of invocations + InvocationType *string `locationName:"invocationType" type:"string" enum:"InvocationType"` + + // Input to lambda used in action group + KnowledgeBaseLookupInput *KnowledgeBaseLookupInput_ `locationName:"knowledgeBaseLookupInput" type:"structure"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" 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 InvocationInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvocationInput_) GoString() string { + return s.String() +} + +// SetActionGroupInvocationInput sets the ActionGroupInvocationInput field's value. +func (s *InvocationInput_) SetActionGroupInvocationInput(v *ActionGroupInvocationInput_) *InvocationInput_ { + s.ActionGroupInvocationInput = v + return s +} + +// SetInvocationType sets the InvocationType field's value. +func (s *InvocationInput_) SetInvocationType(v string) *InvocationInput_ { + s.InvocationType = &v + return s +} + +// SetKnowledgeBaseLookupInput sets the KnowledgeBaseLookupInput field's value. +func (s *InvocationInput_) SetKnowledgeBaseLookupInput(v *KnowledgeBaseLookupInput_) *InvocationInput_ { + s.KnowledgeBaseLookupInput = v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *InvocationInput_) SetTraceId(v string) *InvocationInput_ { + s.TraceId = &v + return s +} + +// InvokeAgent Request +type InvokeAgentInput struct { + _ struct{} `type:"structure"` + + // Identifier for Agent Alias + // + // AgentAliasId is a required field + AgentAliasId *string `location:"uri" locationName:"agentAliasId" type:"string" required:"true"` + + // Identifier for Agent + // + // AgentId is a required field + AgentId *string `location:"uri" locationName:"agentId" type:"string" required:"true"` + + // Enable agent trace events for improved debugging + EnableTrace *bool `locationName:"enableTrace" type:"boolean"` + + // End current session + EndSession *bool `locationName:"endSession" type:"boolean"` + + // Input data in the format specified in the Content-Type request header. + // + // InputText is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InvokeAgentInput's + // String and GoString methods. + // + // InputText is a required field + InputText *string `locationName:"inputText" type:"string" required:"true" sensitive:"true"` + + // Identifier used for the current session + // + // SessionId is a required field + SessionId *string `location:"uri" locationName:"sessionId" min:"2" type:"string" required:"true"` + + // Session state passed by customer. Base64 encoded json string representation + // of SessionState. + SessionState *SessionState `locationName:"sessionState" 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 InvokeAgentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokeAgentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InvokeAgentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InvokeAgentInput"} + if s.AgentAliasId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentAliasId")) + } + if s.AgentAliasId != nil && len(*s.AgentAliasId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentAliasId", 1)) + } + if s.AgentId == nil { + invalidParams.Add(request.NewErrParamRequired("AgentId")) + } + if s.AgentId != nil && len(*s.AgentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgentId", 1)) + } + if s.InputText == nil { + invalidParams.Add(request.NewErrParamRequired("InputText")) + } + if s.SessionId == nil { + invalidParams.Add(request.NewErrParamRequired("SessionId")) + } + if s.SessionId != nil && len(*s.SessionId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("SessionId", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *InvokeAgentInput) SetAgentAliasId(v string) *InvokeAgentInput { + s.AgentAliasId = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *InvokeAgentInput) SetAgentId(v string) *InvokeAgentInput { + s.AgentId = &v + return s +} + +// SetEnableTrace sets the EnableTrace field's value. +func (s *InvokeAgentInput) SetEnableTrace(v bool) *InvokeAgentInput { + s.EnableTrace = &v + return s +} + +// SetEndSession sets the EndSession field's value. +func (s *InvokeAgentInput) SetEndSession(v bool) *InvokeAgentInput { + s.EndSession = &v + return s +} + +// SetInputText sets the InputText field's value. +func (s *InvokeAgentInput) SetInputText(v string) *InvokeAgentInput { + s.InputText = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *InvokeAgentInput) SetSessionId(v string) *InvokeAgentInput { + s.SessionId = &v + return s +} + +// SetSessionState sets the SessionState field's value. +func (s *InvokeAgentInput) SetSessionState(v *SessionState) *InvokeAgentInput { + s.SessionState = v + return s +} + +// InvokeAgent Response +type InvokeAgentOutput struct { + _ struct{} `type:"structure" payload:"Completion"` + + eventStream *InvokeAgentEventStream + + // streaming response mimetype of the model + // + // ContentType is a required field + ContentType *string `location:"header" locationName:"x-amzn-bedrock-agent-content-type" type:"string" required:"true"` + + // streaming response mimetype of the model + // + // SessionId is a required field + SessionId *string `location:"header" locationName:"x-amz-bedrock-agent-session-id" min:"2" 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 InvokeAgentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokeAgentOutput) GoString() string { + return s.String() +} + +// SetContentType sets the ContentType field's value. +func (s *InvokeAgentOutput) SetContentType(v string) *InvokeAgentOutput { + s.ContentType = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *InvokeAgentOutput) SetSessionId(v string) *InvokeAgentOutput { + s.SessionId = &v + return s +} + +// GetStream returns the type to interact with the event stream. +func (s *InvokeAgentOutput) GetStream() *InvokeAgentEventStream { + return s.eventStream +} + +// Input to lambda used in action group +type KnowledgeBaseLookupInput_ struct { + _ struct{} `type:"structure"` + + // Agent Trace Action Group Knowledge Base Id + // + // KnowledgeBaseId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by KnowledgeBaseLookupInput_'s + // String and GoString methods. + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" sensitive:"true"` + + // Agent Trace Action Group Lambda Invocation Output String + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by KnowledgeBaseLookupInput_'s + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseLookupInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseLookupInput_) GoString() string { + return s.String() +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBaseLookupInput_) SetKnowledgeBaseId(v string) *KnowledgeBaseLookupInput_ { + s.KnowledgeBaseId = &v + return s +} + +// SetText sets the Text field's value. +func (s *KnowledgeBaseLookupInput_) SetText(v string) *KnowledgeBaseLookupInput_ { + s.Text = &v + return s +} + +// Input to lambda used in action group +type KnowledgeBaseLookupOutput_ struct { + _ struct{} `type:"structure"` + + // list of retrieved references + RetrievedReferences []*RetrievedReference `locationName:"retrievedReferences" 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 KnowledgeBaseLookupOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseLookupOutput_) GoString() string { + return s.String() +} + +// SetRetrievedReferences sets the RetrievedReferences field's value. +func (s *KnowledgeBaseLookupOutput_) SetRetrievedReferences(v []*RetrievedReference) *KnowledgeBaseLookupOutput_ { + s.RetrievedReferences = v + return s +} + +// Knowledge base input query. +type KnowledgeBaseQuery struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Knowledge base input query in text + // + // Text is a required field + Text *string `locationName:"text" 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 KnowledgeBaseQuery) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseQuery) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KnowledgeBaseQuery) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KnowledgeBaseQuery"} + if s.Text == nil { + invalidParams.Add(request.NewErrParamRequired("Text")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetText sets the Text field's value. +func (s *KnowledgeBaseQuery) SetText(v string) *KnowledgeBaseQuery { + s.Text = &v + return s +} + +// Search parameters for retrieving from knowledge base. +type KnowledgeBaseRetrievalConfiguration struct { + _ struct{} `type:"structure"` + + // Knowledge base vector search configuration + // + // VectorSearchConfiguration is a required field + VectorSearchConfiguration *KnowledgeBaseVectorSearchConfiguration `locationName:"vectorSearchConfiguration" 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 KnowledgeBaseRetrievalConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseRetrievalConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KnowledgeBaseRetrievalConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KnowledgeBaseRetrievalConfiguration"} + if s.VectorSearchConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("VectorSearchConfiguration")) + } + if s.VectorSearchConfiguration != nil { + if err := s.VectorSearchConfiguration.Validate(); err != nil { + invalidParams.AddNested("VectorSearchConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVectorSearchConfiguration sets the VectorSearchConfiguration field's value. +func (s *KnowledgeBaseRetrievalConfiguration) SetVectorSearchConfiguration(v *KnowledgeBaseVectorSearchConfiguration) *KnowledgeBaseRetrievalConfiguration { + s.VectorSearchConfiguration = v + return s +} + +// Result item returned from a knowledge base retrieval. +type KnowledgeBaseRetrievalResult struct { + _ struct{} `type:"structure"` + + // Content of a retrieval result. + // + // Content is a required field + Content *RetrievalResultContent `locationName:"content" type:"structure" required:"true"` + + // The source location of a retrieval result. + Location *RetrievalResultLocation `locationName:"location" type:"structure"` + + // The relevance score of a result. + Score *float64 `locationName:"score" 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 KnowledgeBaseRetrievalResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseRetrievalResult) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *KnowledgeBaseRetrievalResult) SetContent(v *RetrievalResultContent) *KnowledgeBaseRetrievalResult { + s.Content = v + return s +} + +// SetLocation sets the Location field's value. +func (s *KnowledgeBaseRetrievalResult) SetLocation(v *RetrievalResultLocation) *KnowledgeBaseRetrievalResult { + s.Location = v + return s +} + +// SetScore sets the Score field's value. +func (s *KnowledgeBaseRetrievalResult) SetScore(v float64) *KnowledgeBaseRetrievalResult { + s.Score = &v + return s +} + +// Configurations for retrieval and generation for knowledge base. +type KnowledgeBaseRetrieveAndGenerateConfiguration struct { + _ struct{} `type:"structure"` + + // Identifier of the KnowledgeBase + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Arn of a Bedrock model. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseRetrieveAndGenerateConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseRetrieveAndGenerateConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KnowledgeBaseRetrieveAndGenerateConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KnowledgeBaseRetrieveAndGenerateConfiguration"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.ModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ModelArn")) + } + if s.ModelArn != nil && len(*s.ModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBaseRetrieveAndGenerateConfiguration) SetKnowledgeBaseId(v string) *KnowledgeBaseRetrieveAndGenerateConfiguration { + s.KnowledgeBaseId = &v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *KnowledgeBaseRetrieveAndGenerateConfiguration) SetModelArn(v string) *KnowledgeBaseRetrieveAndGenerateConfiguration { + s.ModelArn = &v + return s +} + +// Knowledge base vector search configuration +type KnowledgeBaseVectorSearchConfiguration struct { + _ struct{} `type:"structure"` + + // Top-K results to retrieve from knowledge base. + // + // NumberOfResults is a required field + NumberOfResults *int64 `locationName:"numberOfResults" min:"1" type:"integer" 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 KnowledgeBaseVectorSearchConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseVectorSearchConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KnowledgeBaseVectorSearchConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KnowledgeBaseVectorSearchConfiguration"} + if s.NumberOfResults == nil { + invalidParams.Add(request.NewErrParamRequired("NumberOfResults")) + } + if s.NumberOfResults != nil && *s.NumberOfResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("NumberOfResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNumberOfResults sets the NumberOfResults field's value. +func (s *KnowledgeBaseVectorSearchConfiguration) SetNumberOfResults(v int64) *KnowledgeBaseVectorSearchConfiguration { + s.NumberOfResults = &v + return s +} + +// Trace Part which contains information used to call Invoke Model +type ModelInvocationInput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Configurations for controlling the inference response of an InvokeAgent API + // call + InferenceConfiguration *InferenceConfiguration `locationName:"inferenceConfiguration" type:"structure"` + + // ARN of a Lambda. + OverrideLambda *string `locationName:"overrideLambda" type:"string"` + + // indicates if agent uses default prompt or overriden prompt + ParserMode *string `locationName:"parserMode" type:"string" enum:"CreationMode"` + + // indicates if agent uses default prompt or overriden prompt + PromptCreationMode *string `locationName:"promptCreationMode" type:"string" enum:"CreationMode"` + + // Prompt Message + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ModelInvocationInput_'s + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" type:"string"` + + // types of prompts + Type *string `locationName:"type" type:"string" enum:"PromptType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelInvocationInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelInvocationInput_) GoString() string { + return s.String() +} + +// SetInferenceConfiguration sets the InferenceConfiguration field's value. +func (s *ModelInvocationInput_) SetInferenceConfiguration(v *InferenceConfiguration) *ModelInvocationInput_ { + s.InferenceConfiguration = v + return s +} + +// SetOverrideLambda sets the OverrideLambda field's value. +func (s *ModelInvocationInput_) SetOverrideLambda(v string) *ModelInvocationInput_ { + s.OverrideLambda = &v + return s +} + +// SetParserMode sets the ParserMode field's value. +func (s *ModelInvocationInput_) SetParserMode(v string) *ModelInvocationInput_ { + s.ParserMode = &v + return s +} + +// SetPromptCreationMode sets the PromptCreationMode field's value. +func (s *ModelInvocationInput_) SetPromptCreationMode(v string) *ModelInvocationInput_ { + s.PromptCreationMode = &v + return s +} + +// SetText sets the Text field's value. +func (s *ModelInvocationInput_) SetText(v string) *ModelInvocationInput_ { + s.Text = &v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *ModelInvocationInput_) SetTraceId(v string) *ModelInvocationInput_ { + s.TraceId = &v + return s +} + +// SetType sets the Type field's value. +func (s *ModelInvocationInput_) SetType(v string) *ModelInvocationInput_ { + s.Type = &v + return s +} + +// Trace Part which contains output details for action group or knowledge base +// or final response +type Observation struct { + _ struct{} `type:"structure" sensitive:"true"` + + // output from lambda used in action group + ActionGroupInvocationOutput *ActionGroupInvocationOutput_ `locationName:"actionGroupInvocationOutput" type:"structure"` + + // Agent finish output + FinalResponse *FinalResponse `locationName:"finalResponse" type:"structure"` + + // Input to lambda used in action group + KnowledgeBaseLookupOutput *KnowledgeBaseLookupOutput_ `locationName:"knowledgeBaseLookupOutput" type:"structure"` + + // Observation information if there were reprompts + // + // RepromptResponse is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Observation's + // String and GoString methods. + RepromptResponse *RepromptResponse `locationName:"repromptResponse" type:"structure" sensitive:"true"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" type:"string"` + + // types of observations + Type *string `locationName:"type" type:"string" enum:"Type"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Observation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Observation) GoString() string { + return s.String() +} + +// SetActionGroupInvocationOutput sets the ActionGroupInvocationOutput field's value. +func (s *Observation) SetActionGroupInvocationOutput(v *ActionGroupInvocationOutput_) *Observation { + s.ActionGroupInvocationOutput = v + return s +} + +// SetFinalResponse sets the FinalResponse field's value. +func (s *Observation) SetFinalResponse(v *FinalResponse) *Observation { + s.FinalResponse = v + return s +} + +// SetKnowledgeBaseLookupOutput sets the KnowledgeBaseLookupOutput field's value. +func (s *Observation) SetKnowledgeBaseLookupOutput(v *KnowledgeBaseLookupOutput_) *Observation { + s.KnowledgeBaseLookupOutput = v + return s +} + +// SetRepromptResponse sets the RepromptResponse field's value. +func (s *Observation) SetRepromptResponse(v *RepromptResponse) *Observation { + s.RepromptResponse = v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *Observation) SetTraceId(v string) *Observation { + s.TraceId = &v + return s +} + +// SetType sets the Type field's value. +func (s *Observation) SetType(v string) *Observation { + s.Type = &v + return s +} + +// Trace contains intermidate response during orchestration +type OrchestrationTrace struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Trace Part which contains input details for action group or knowledge base + // + // InvocationInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OrchestrationTrace's + // String and GoString methods. + InvocationInput *InvocationInput_ `locationName:"invocationInput" type:"structure" sensitive:"true"` + + // Trace Part which contains information used to call Invoke Model + // + // ModelInvocationInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OrchestrationTrace's + // String and GoString methods. + ModelInvocationInput *ModelInvocationInput_ `locationName:"modelInvocationInput" type:"structure" sensitive:"true"` + + // Trace Part which contains output details for action group or knowledge base + // or final response + // + // Observation is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OrchestrationTrace's + // String and GoString methods. + Observation *Observation `locationName:"observation" type:"structure" sensitive:"true"` + + // Trace Part which contains information related to reasoning + // + // Rationale is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OrchestrationTrace's + // String and GoString methods. + Rationale *Rationale `locationName:"rationale" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrchestrationTrace) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrchestrationTrace) GoString() string { + return s.String() +} + +// SetInvocationInput sets the InvocationInput field's value. +func (s *OrchestrationTrace) SetInvocationInput(v *InvocationInput_) *OrchestrationTrace { + s.InvocationInput = v + return s +} + +// SetModelInvocationInput sets the ModelInvocationInput field's value. +func (s *OrchestrationTrace) SetModelInvocationInput(v *ModelInvocationInput_) *OrchestrationTrace { + s.ModelInvocationInput = v + return s +} + +// SetObservation sets the Observation field's value. +func (s *OrchestrationTrace) SetObservation(v *Observation) *OrchestrationTrace { + s.Observation = v + return s +} + +// SetRationale sets the Rationale field's value. +func (s *OrchestrationTrace) SetRationale(v *Rationale) *OrchestrationTrace { + s.Rationale = v + return s +} + +// parameters included in action group invocation +type Parameter struct { + _ struct{} `type:"structure"` + + // Name of parameter + Name *string `locationName:"name" type:"string"` + + // Type of parameter + Type *string `locationName:"type" type:"string"` + + // Value of parameter + Value *string `locationName:"value" 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 Parameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Parameter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Parameter) SetName(v string) *Parameter { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *Parameter) SetType(v string) *Parameter { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Parameter) SetValue(v string) *Parameter { + s.Value = &v + return s +} + +// Base 64 endoded byte response +type PayloadPart struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Citations associated with final agent response + Attribution *Attribution `locationName:"attribution" type:"structure"` + + // PartBody of the payload in bytes + // + // Bytes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PayloadPart's + // String and GoString methods. + // + // Bytes is automatically base64 encoded/decoded by the SDK. + Bytes []byte `locationName:"bytes" type:"blob" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PayloadPart) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PayloadPart) GoString() string { + return s.String() +} + +// SetAttribution sets the Attribution field's value. +func (s *PayloadPart) SetAttribution(v *Attribution) *PayloadPart { + s.Attribution = v + return s +} + +// SetBytes sets the Bytes field's value. +func (s *PayloadPart) SetBytes(v []byte) *PayloadPart { + s.Bytes = v + return s +} + +// The PayloadPart is and event in the ResponseStream group of events. +func (s *PayloadPart) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the PayloadPart value. +// This method is only used internally within the SDK's EventStream handling. +func (s *PayloadPart) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *PayloadPart) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +// Trace Part which contains information related to postprocessing +type PostProcessingModelInvocationOutput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Trace Part which contains information if preprocessing was successful + // + // ParsedResponse is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PostProcessingModelInvocationOutput_'s + // String and GoString methods. + ParsedResponse *PostProcessingParsedResponse `locationName:"parsedResponse" type:"structure" sensitive:"true"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" 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 PostProcessingModelInvocationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PostProcessingModelInvocationOutput_) GoString() string { + return s.String() +} + +// SetParsedResponse sets the ParsedResponse field's value. +func (s *PostProcessingModelInvocationOutput_) SetParsedResponse(v *PostProcessingParsedResponse) *PostProcessingModelInvocationOutput_ { + s.ParsedResponse = v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *PostProcessingModelInvocationOutput_) SetTraceId(v string) *PostProcessingModelInvocationOutput_ { + s.TraceId = &v + return s +} + +// Trace Part which contains information if preprocessing was successful +type PostProcessingParsedResponse struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Agent Trace Output String + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PostProcessingParsedResponse's + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PostProcessingParsedResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PostProcessingParsedResponse) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *PostProcessingParsedResponse) SetText(v string) *PostProcessingParsedResponse { + s.Text = &v + return s +} + +// Trace Part which contains information related to post processing step +type PostProcessingTrace struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Trace Part which contains information used to call Invoke Model + // + // ModelInvocationInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PostProcessingTrace's + // String and GoString methods. + ModelInvocationInput *ModelInvocationInput_ `locationName:"modelInvocationInput" type:"structure" sensitive:"true"` + + // Trace Part which contains information related to postprocessing + // + // ModelInvocationOutput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PostProcessingTrace's + // String and GoString methods. + ModelInvocationOutput *PostProcessingModelInvocationOutput_ `locationName:"modelInvocationOutput" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PostProcessingTrace) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PostProcessingTrace) GoString() string { + return s.String() +} + +// SetModelInvocationInput sets the ModelInvocationInput field's value. +func (s *PostProcessingTrace) SetModelInvocationInput(v *ModelInvocationInput_) *PostProcessingTrace { + s.ModelInvocationInput = v + return s +} + +// SetModelInvocationOutput sets the ModelInvocationOutput field's value. +func (s *PostProcessingTrace) SetModelInvocationOutput(v *PostProcessingModelInvocationOutput_) *PostProcessingTrace { + s.ModelInvocationOutput = v + return s +} + +// Trace Part which contains information related to preprocessing +type PreProcessingModelInvocationOutput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Trace Part which contains information if preprocessing was successful + // + // ParsedResponse is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PreProcessingModelInvocationOutput_'s + // String and GoString methods. + ParsedResponse *PreProcessingParsedResponse `locationName:"parsedResponse" type:"structure" sensitive:"true"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" 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 PreProcessingModelInvocationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreProcessingModelInvocationOutput_) GoString() string { + return s.String() +} + +// SetParsedResponse sets the ParsedResponse field's value. +func (s *PreProcessingModelInvocationOutput_) SetParsedResponse(v *PreProcessingParsedResponse) *PreProcessingModelInvocationOutput_ { + s.ParsedResponse = v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *PreProcessingModelInvocationOutput_) SetTraceId(v string) *PreProcessingModelInvocationOutput_ { + s.TraceId = &v + return s +} + +// Trace Part which contains information if preprocessing was successful +type PreProcessingParsedResponse struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Boolean value + IsValid *bool `locationName:"isValid" type:"boolean"` + + // Agent Trace Rationale String + // + // Rationale is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PreProcessingParsedResponse's + // String and GoString methods. + Rationale *string `locationName:"rationale" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreProcessingParsedResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreProcessingParsedResponse) GoString() string { + return s.String() +} + +// SetIsValid sets the IsValid field's value. +func (s *PreProcessingParsedResponse) SetIsValid(v bool) *PreProcessingParsedResponse { + s.IsValid = &v + return s +} + +// SetRationale sets the Rationale field's value. +func (s *PreProcessingParsedResponse) SetRationale(v string) *PreProcessingParsedResponse { + s.Rationale = &v + return s +} + +// Trace Part which contains information related to preprocessing step +type PreProcessingTrace struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Trace Part which contains information used to call Invoke Model + // + // ModelInvocationInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PreProcessingTrace's + // String and GoString methods. + ModelInvocationInput *ModelInvocationInput_ `locationName:"modelInvocationInput" type:"structure" sensitive:"true"` + + // Trace Part which contains information related to preprocessing + // + // ModelInvocationOutput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PreProcessingTrace's + // String and GoString methods. + ModelInvocationOutput *PreProcessingModelInvocationOutput_ `locationName:"modelInvocationOutput" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreProcessingTrace) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreProcessingTrace) GoString() string { + return s.String() +} + +// SetModelInvocationInput sets the ModelInvocationInput field's value. +func (s *PreProcessingTrace) SetModelInvocationInput(v *ModelInvocationInput_) *PreProcessingTrace { + s.ModelInvocationInput = v + return s +} + +// SetModelInvocationOutput sets the ModelInvocationOutput field's value. +func (s *PreProcessingTrace) SetModelInvocationOutput(v *PreProcessingModelInvocationOutput_) *PreProcessingTrace { + s.ModelInvocationOutput = v + return s +} + +// Trace Part which contains information related to reasoning +type Rationale struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Agent Trace Rationale String + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Rationale's + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` + + // Identifier for trace + TraceId *string `locationName:"traceId" min:"2" 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 Rationale) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Rationale) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *Rationale) SetText(v string) *Rationale { + s.Text = &v + return s +} + +// SetTraceId sets the TraceId field's value. +func (s *Rationale) SetTraceId(v string) *Rationale { + s.TraceId = &v + return s +} + +// Observation information if there were reprompts +type RepromptResponse struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Parsing error source + // + // Source is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RepromptResponse's + // String and GoString methods. + Source *string `locationName:"source" type:"string" enum:"Source" sensitive:"true"` + + // Reprompt response text + Text *string `locationName:"text" 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 RepromptResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepromptResponse) GoString() string { + return s.String() +} + +// SetSource sets the Source field's value. +func (s *RepromptResponse) SetSource(v string) *RepromptResponse { + s.Source = &v + return s +} + +// SetText sets the Text field's value. +func (s *RepromptResponse) SetText(v string) *RepromptResponse { + s.Text = &v + return s +} + +// Request Body Content Map +type RequestBody struct { + _ struct{} `type:"structure"` + + // Content type paramter map + Content map[string][]*Parameter `locationName:"content" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestBody) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestBody) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *RequestBody) SetContent(v map[string][]*Parameter) *RequestBody { + s.Content = v + return s +} + +// This exception is thrown when a resource referenced by the operation does +// not exist +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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() +} + +// The ResourceNotFoundException is and event in the ResponseStream group of events. +func (s *ResourceNotFoundException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ResourceNotFoundException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ResourceNotFoundException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ResourceNotFoundException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// ResponseStreamEvent groups together all EventStream +// events writes for ResponseStream. +// +// These events are: +// +// - PayloadPart +// - TracePart +type ResponseStreamEvent interface { + eventResponseStream() + eventstreamapi.Marshaler + eventstreamapi.Unmarshaler +} + +// ResponseStreamReader provides the interface for reading to the stream. The +// default implementation for this interface will be ResponseStream. +// +// The reader's Close method must allow multiple concurrent calls. +// +// These events are: +// +// - PayloadPart +// - TracePart +// - ResponseStreamUnknownEvent +type ResponseStreamReader interface { + // Returns a channel of events as they are read from the event stream. + Events() <-chan ResponseStreamEvent + + // Close will stop the reader reading events from the stream. + Close() error + + // Returns any error that has occurred while reading from the event stream. + Err() error +} + +type readResponseStream struct { + eventReader *eventstreamapi.EventReader + stream chan ResponseStreamEvent + err *eventstreamapi.OnceError + + done chan struct{} + closeOnce sync.Once +} + +func newReadResponseStream(eventReader *eventstreamapi.EventReader) *readResponseStream { + r := &readResponseStream{ + eventReader: eventReader, + stream: make(chan ResponseStreamEvent), + done: make(chan struct{}), + err: eventstreamapi.NewOnceError(), + } + go r.readEventStream() + + return r +} + +// Close will close the underlying event stream reader. +func (r *readResponseStream) Close() error { + r.closeOnce.Do(r.safeClose) + return r.Err() +} + +func (r *readResponseStream) ErrorSet() <-chan struct{} { + return r.err.ErrorSet() +} + +func (r *readResponseStream) Closed() <-chan struct{} { + return r.done +} + +func (r *readResponseStream) safeClose() { + close(r.done) +} + +func (r *readResponseStream) Err() error { + return r.err.Err() +} + +func (r *readResponseStream) Events() <-chan ResponseStreamEvent { + return r.stream +} + +func (r *readResponseStream) readEventStream() { + defer r.Close() + defer close(r.stream) + + for { + event, err := r.eventReader.ReadEvent() + if err != nil { + if err == io.EOF { + return + } + select { + case <-r.done: + // If closed already ignore the error + return + default: + } + if _, ok := err.(*eventstreamapi.UnknownMessageTypeError); ok { + continue + } + r.err.SetError(err) + return + } + + select { + case r.stream <- event.(ResponseStreamEvent): + case <-r.done: + return + } + } +} + +type unmarshalerForResponseStreamEvent struct { + metadata protocol.ResponseMetadata +} + +func (u unmarshalerForResponseStreamEvent) UnmarshalerForEventName(eventType string) (eventstreamapi.Unmarshaler, error) { + switch eventType { + case "chunk": + return &PayloadPart{}, nil + case "trace": + return &TracePart{}, nil + case "accessDeniedException": + return newErrorAccessDeniedException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "badGatewayException": + return newErrorBadGatewayException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "conflictException": + return newErrorConflictException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "dependencyFailedException": + return newErrorDependencyFailedException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "internalServerException": + return newErrorInternalServerException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "resourceNotFoundException": + return newErrorResourceNotFoundException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "serviceQuotaExceededException": + return newErrorServiceQuotaExceededException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "throttlingException": + return newErrorThrottlingException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "validationException": + return newErrorValidationException(u.metadata).(eventstreamapi.Unmarshaler), nil + default: + return &ResponseStreamUnknownEvent{Type: eventType}, nil + } +} + +// ResponseStreamUnknownEvent provides a failsafe event for the +// ResponseStream group of events when an unknown event is received. +type ResponseStreamUnknownEvent struct { + Type string + Message eventstream.Message +} + +// The ResponseStreamUnknownEvent is and event in the ResponseStream +// group of events. +func (s *ResponseStreamUnknownEvent) eventResponseStream() {} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (e *ResponseStreamUnknownEvent) MarshalEvent(pm protocol.PayloadMarshaler) ( + msg eventstream.Message, err error, +) { + return e.Message.Clone(), nil +} + +// UnmarshalEvent unmarshals the EventStream Message into the ResponseStream value. +// This method is only used internally within the SDK's EventStream handling. +func (e *ResponseStreamUnknownEvent) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + e.Message = msg.Clone() + return nil +} + +// Content of a retrieval result. +type RetrievalResultContent struct { + _ struct{} `type:"structure"` + + // Content of a retrieval result in text + // + // Text is a required field + Text *string `locationName:"text" 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 RetrievalResultContent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrievalResultContent) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *RetrievalResultContent) SetText(v string) *RetrievalResultContent { + s.Text = &v + return s +} + +// The source location of a retrieval result. +type RetrievalResultLocation struct { + _ struct{} `type:"structure"` + + // The S3 location of a retrieval result. + S3Location *RetrievalResultS3Location `locationName:"s3Location" type:"structure"` + + // The location type of a retrieval result. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RetrievalResultLocationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrievalResultLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrievalResultLocation) GoString() string { + return s.String() +} + +// SetS3Location sets the S3Location field's value. +func (s *RetrievalResultLocation) SetS3Location(v *RetrievalResultS3Location) *RetrievalResultLocation { + s.S3Location = v + return s +} + +// SetType sets the Type field's value. +func (s *RetrievalResultLocation) SetType(v string) *RetrievalResultLocation { + s.Type = &v + return s +} + +// The S3 location of a retrieval result. +type RetrievalResultS3Location struct { + _ struct{} `type:"structure"` + + // URI of S3 location + Uri *string `locationName:"uri" 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 RetrievalResultS3Location) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrievalResultS3Location) GoString() string { + return s.String() +} + +// SetUri sets the Uri field's value. +func (s *RetrievalResultS3Location) SetUri(v string) *RetrievalResultS3Location { + s.Uri = &v + return s +} + +// Configures the retrieval and generation for the session. +type RetrieveAndGenerateConfiguration struct { + _ struct{} `type:"structure"` + + // Configurations for retrieval and generation for knowledge base. + KnowledgeBaseConfiguration *KnowledgeBaseRetrieveAndGenerateConfiguration `locationName:"knowledgeBaseConfiguration" type:"structure"` + + // The type of RetrieveAndGenerate. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RetrieveAndGenerateType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RetrieveAndGenerateConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RetrieveAndGenerateConfiguration"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.KnowledgeBaseConfiguration != nil { + if err := s.KnowledgeBaseConfiguration.Validate(); err != nil { + invalidParams.AddNested("KnowledgeBaseConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseConfiguration sets the KnowledgeBaseConfiguration field's value. +func (s *RetrieveAndGenerateConfiguration) SetKnowledgeBaseConfiguration(v *KnowledgeBaseRetrieveAndGenerateConfiguration) *RetrieveAndGenerateConfiguration { + s.KnowledgeBaseConfiguration = v + return s +} + +// SetType sets the Type field's value. +func (s *RetrieveAndGenerateConfiguration) SetType(v string) *RetrieveAndGenerateConfiguration { + s.Type = &v + return s +} + +type RetrieveAndGenerateInput struct { + _ struct{} `type:"structure"` + + // Customer input of the turn + // + // Input is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RetrieveAndGenerateInput's + // String and GoString methods. + // + // Input is a required field + Input *RetrieveAndGenerateInput_ `locationName:"input" type:"structure" required:"true" sensitive:"true"` + + // Configures the retrieval and generation for the session. + RetrieveAndGenerateConfiguration *RetrieveAndGenerateConfiguration `locationName:"retrieveAndGenerateConfiguration" type:"structure"` + + // Configures common parameters of the session. + SessionConfiguration *RetrieveAndGenerateSessionConfiguration `locationName:"sessionConfiguration" type:"structure"` + + // Identifier of the session. + SessionId *string `locationName:"sessionId" min:"2" 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 RetrieveAndGenerateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RetrieveAndGenerateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RetrieveAndGenerateInput"} + if s.Input == nil { + invalidParams.Add(request.NewErrParamRequired("Input")) + } + if s.SessionId != nil && len(*s.SessionId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("SessionId", 2)) + } + if s.Input != nil { + if err := s.Input.Validate(); err != nil { + invalidParams.AddNested("Input", err.(request.ErrInvalidParams)) + } + } + if s.RetrieveAndGenerateConfiguration != nil { + if err := s.RetrieveAndGenerateConfiguration.Validate(); err != nil { + invalidParams.AddNested("RetrieveAndGenerateConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.SessionConfiguration != nil { + if err := s.SessionConfiguration.Validate(); err != nil { + invalidParams.AddNested("SessionConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInput sets the Input field's value. +func (s *RetrieveAndGenerateInput) SetInput(v *RetrieveAndGenerateInput_) *RetrieveAndGenerateInput { + s.Input = v + return s +} + +// SetRetrieveAndGenerateConfiguration sets the RetrieveAndGenerateConfiguration field's value. +func (s *RetrieveAndGenerateInput) SetRetrieveAndGenerateConfiguration(v *RetrieveAndGenerateConfiguration) *RetrieveAndGenerateInput { + s.RetrieveAndGenerateConfiguration = v + return s +} + +// SetSessionConfiguration sets the SessionConfiguration field's value. +func (s *RetrieveAndGenerateInput) SetSessionConfiguration(v *RetrieveAndGenerateSessionConfiguration) *RetrieveAndGenerateInput { + s.SessionConfiguration = v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *RetrieveAndGenerateInput) SetSessionId(v string) *RetrieveAndGenerateInput { + s.SessionId = &v + return s +} + +// Customer input of the turn +type RetrieveAndGenerateInput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Customer input of the turn in text + // + // Text is a required field + Text *string `locationName:"text" 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 RetrieveAndGenerateInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RetrieveAndGenerateInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RetrieveAndGenerateInput_"} + if s.Text == nil { + invalidParams.Add(request.NewErrParamRequired("Text")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetText sets the Text field's value. +func (s *RetrieveAndGenerateInput_) SetText(v string) *RetrieveAndGenerateInput_ { + s.Text = &v + return s +} + +type RetrieveAndGenerateOutput struct { + _ struct{} `type:"structure"` + + // List of citations + Citations []*Citation `locationName:"citations" type:"list"` + + // Service response of the turn + // + // Output is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RetrieveAndGenerateOutput's + // String and GoString methods. + // + // Output is a required field + Output *RetrieveAndGenerateOutput_ `locationName:"output" type:"structure" required:"true" sensitive:"true"` + + // Identifier of the session. + // + // SessionId is a required field + SessionId *string `locationName:"sessionId" min:"2" 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 RetrieveAndGenerateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateOutput) GoString() string { + return s.String() +} + +// SetCitations sets the Citations field's value. +func (s *RetrieveAndGenerateOutput) SetCitations(v []*Citation) *RetrieveAndGenerateOutput { + s.Citations = v + return s +} + +// SetOutput sets the Output field's value. +func (s *RetrieveAndGenerateOutput) SetOutput(v *RetrieveAndGenerateOutput_) *RetrieveAndGenerateOutput { + s.Output = v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *RetrieveAndGenerateOutput) SetSessionId(v string) *RetrieveAndGenerateOutput { + s.SessionId = &v + return s +} + +// Service response of the turn +type RetrieveAndGenerateOutput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Service response of the turn in text + // + // Text is a required field + Text *string `locationName:"text" 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 RetrieveAndGenerateOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateOutput_) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *RetrieveAndGenerateOutput_) SetText(v string) *RetrieveAndGenerateOutput_ { + s.Text = &v + return s +} + +// Configures common parameters of the session. +type RetrieveAndGenerateSessionConfiguration struct { + _ struct{} `type:"structure"` + + // The KMS key arn to encrypt the customer data of the session. + // + // KmsKeyArn is a required field + KmsKeyArn *string `locationName:"kmsKeyArn" 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 RetrieveAndGenerateSessionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveAndGenerateSessionConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RetrieveAndGenerateSessionConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RetrieveAndGenerateSessionConfiguration"} + if s.KmsKeyArn == nil { + invalidParams.Add(request.NewErrParamRequired("KmsKeyArn")) + } + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *RetrieveAndGenerateSessionConfiguration) SetKmsKeyArn(v string) *RetrieveAndGenerateSessionConfiguration { + s.KmsKeyArn = &v + return s +} + +type RetrieveInput struct { + _ struct{} `type:"structure"` + + // Identifier of the KnowledgeBase + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Search parameters for retrieving from knowledge base. + RetrievalConfiguration *KnowledgeBaseRetrievalConfiguration `locationName:"retrievalConfiguration" type:"structure"` + + // Knowledge base input query. + // + // RetrievalQuery is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RetrieveInput's + // String and GoString methods. + // + // RetrievalQuery is a required field + RetrievalQuery *KnowledgeBaseQuery `locationName:"retrievalQuery" type:"structure" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RetrieveInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RetrieveInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RetrievalQuery == nil { + invalidParams.Add(request.NewErrParamRequired("RetrievalQuery")) + } + if s.RetrievalConfiguration != nil { + if err := s.RetrievalConfiguration.Validate(); err != nil { + invalidParams.AddNested("RetrievalConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RetrievalQuery != nil { + if err := s.RetrievalQuery.Validate(); err != nil { + invalidParams.AddNested("RetrievalQuery", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *RetrieveInput) SetKnowledgeBaseId(v string) *RetrieveInput { + s.KnowledgeBaseId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *RetrieveInput) SetNextToken(v string) *RetrieveInput { + s.NextToken = &v + return s +} + +// SetRetrievalConfiguration sets the RetrievalConfiguration field's value. +func (s *RetrieveInput) SetRetrievalConfiguration(v *KnowledgeBaseRetrievalConfiguration) *RetrieveInput { + s.RetrievalConfiguration = v + return s +} + +// SetRetrievalQuery sets the RetrievalQuery field's value. +func (s *RetrieveInput) SetRetrievalQuery(v *KnowledgeBaseQuery) *RetrieveInput { + s.RetrievalQuery = v + return s +} + +type RetrieveOutput struct { + _ struct{} `type:"structure"` + + // Opaque continuation token of previous paginated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // List of knowledge base retrieval results + // + // RetrievalResults is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RetrieveOutput's + // String and GoString methods. + // + // RetrievalResults is a required field + RetrievalResults []*KnowledgeBaseRetrievalResult `locationName:"retrievalResults" type:"list" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieveOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *RetrieveOutput) SetNextToken(v string) *RetrieveOutput { + s.NextToken = &v + return s +} + +// SetRetrievalResults sets the RetrievalResults field's value. +func (s *RetrieveOutput) SetRetrievalResults(v []*KnowledgeBaseRetrievalResult) *RetrieveOutput { + s.RetrievalResults = v + return s +} + +// Retrieved reference +type RetrievedReference struct { + _ struct{} `type:"structure"` + + // Content of a retrieval result. + Content *RetrievalResultContent `locationName:"content" type:"structure"` + + // The source location of a retrieval result. + Location *RetrievalResultLocation `locationName:"location" 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 RetrievedReference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrievedReference) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *RetrievedReference) SetContent(v *RetrievalResultContent) *RetrievedReference { + s.Content = v + return s +} + +// SetLocation sets the Location field's value. +func (s *RetrievedReference) SetLocation(v *RetrievalResultLocation) *RetrievedReference { + s.Location = v + return s +} + +// This exception is thrown when a request is made beyond the service quota +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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() +} + +// The ServiceQuotaExceededException is and event in the ResponseStream group of events. +func (s *ServiceQuotaExceededException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ServiceQuotaExceededException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ServiceQuotaExceededException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ServiceQuotaExceededException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +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 +} + +// Session state provided +type SessionState struct { + _ struct{} `type:"structure"` + + // Prompt Session Attributes + PromptSessionAttributes map[string]*string `locationName:"promptSessionAttributes" type:"map"` + + // Session Attributes + SessionAttributes map[string]*string `locationName:"sessionAttributes" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionState) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionState) GoString() string { + return s.String() +} + +// SetPromptSessionAttributes sets the PromptSessionAttributes field's value. +func (s *SessionState) SetPromptSessionAttributes(v map[string]*string) *SessionState { + s.PromptSessionAttributes = v + return s +} + +// SetSessionAttributes sets the SessionAttributes field's value. +func (s *SessionState) SetSessionAttributes(v map[string]*string) *SessionState { + s.SessionAttributes = v + return s +} + +// Span of text +type Span struct { + _ struct{} `type:"structure"` + + // End of span + End *int64 `locationName:"end" type:"integer"` + + // Start of span + Start *int64 `locationName:"start" 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 Span) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Span) GoString() string { + return s.String() +} + +// SetEnd sets the End field's value. +func (s *Span) SetEnd(v int64) *Span { + s.End = &v + return s +} + +// SetStart sets the Start field's value. +func (s *Span) SetStart(v int64) *Span { + s.Start = &v + return s +} + +// Text response part +type TextResponsePart struct { + _ struct{} `type:"structure"` + + // Span of text + Span *Span `locationName:"span" type:"structure"` + + // Response part in text + Text *string `locationName:"text" 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 TextResponsePart) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextResponsePart) GoString() string { + return s.String() +} + +// SetSpan sets the Span field's value. +func (s *TextResponsePart) SetSpan(v *Span) *TextResponsePart { + s.Span = v + return s +} + +// SetText sets the Text field's value. +func (s *TextResponsePart) SetText(v string) *TextResponsePart { + s.Text = &v + return s +} + +// This exception is thrown when the number of requests exceeds the limit +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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() +} + +// The ThrottlingException is and event in the ResponseStream group of events. +func (s *ThrottlingException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ThrottlingException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ThrottlingException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ThrottlingException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Trace contains intermidate response for customer +type Trace struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Trace Part which is emitted when agent trace could not be generated + // + // FailureTrace is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Trace's + // String and GoString methods. + FailureTrace *FailureTrace `locationName:"failureTrace" type:"structure" sensitive:"true"` + + // Trace contains intermidate response during orchestration + // + // OrchestrationTrace is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Trace's + // String and GoString methods. + OrchestrationTrace *OrchestrationTrace `locationName:"orchestrationTrace" type:"structure" sensitive:"true"` + + // Trace Part which contains information related to post processing step + // + // PostProcessingTrace is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Trace's + // String and GoString methods. + PostProcessingTrace *PostProcessingTrace `locationName:"postProcessingTrace" type:"structure" sensitive:"true"` + + // Trace Part which contains information related to preprocessing step + // + // PreProcessingTrace is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Trace's + // String and GoString methods. + PreProcessingTrace *PreProcessingTrace `locationName:"preProcessingTrace" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Trace) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Trace) GoString() string { + return s.String() +} + +// SetFailureTrace sets the FailureTrace field's value. +func (s *Trace) SetFailureTrace(v *FailureTrace) *Trace { + s.FailureTrace = v + return s +} + +// SetOrchestrationTrace sets the OrchestrationTrace field's value. +func (s *Trace) SetOrchestrationTrace(v *OrchestrationTrace) *Trace { + s.OrchestrationTrace = v + return s +} + +// SetPostProcessingTrace sets the PostProcessingTrace field's value. +func (s *Trace) SetPostProcessingTrace(v *PostProcessingTrace) *Trace { + s.PostProcessingTrace = v + return s +} + +// SetPreProcessingTrace sets the PreProcessingTrace field's value. +func (s *Trace) SetPreProcessingTrace(v *PreProcessingTrace) *Trace { + s.PreProcessingTrace = v + return s +} + +// Trace Part which contains intermidate response for customer +type TracePart struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Identifier of the agent alias. + AgentAliasId *string `locationName:"agentAliasId" type:"string"` + + // Identifier of the agent. + AgentId *string `locationName:"agentId" type:"string"` + + // Identifier of the session. + SessionId *string `locationName:"sessionId" min:"2" type:"string"` + + // Trace contains intermidate response for customer + // + // Trace is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TracePart's + // String and GoString methods. + Trace *Trace `locationName:"trace" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TracePart) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TracePart) GoString() string { + return s.String() +} + +// SetAgentAliasId sets the AgentAliasId field's value. +func (s *TracePart) SetAgentAliasId(v string) *TracePart { + s.AgentAliasId = &v + return s +} + +// SetAgentId sets the AgentId field's value. +func (s *TracePart) SetAgentId(v string) *TracePart { + s.AgentId = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *TracePart) SetSessionId(v string) *TracePart { + s.SessionId = &v + return s +} + +// SetTrace sets the Trace field's value. +func (s *TracePart) SetTrace(v *Trace) *TracePart { + s.Trace = v + return s +} + +// The TracePart is and event in the ResponseStream group of events. +func (s *TracePart) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the TracePart value. +// This method is only used internally within the SDK's EventStream handling. +func (s *TracePart) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *TracePart) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +// This exception is thrown when the request's input validation fails +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Non Blank 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 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() +} + +// The ValidationException is and event in the ResponseStream group of events. +func (s *ValidationException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ValidationException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ValidationException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ValidationException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +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 +} + +// indicates if agent uses default prompt or overriden prompt +const ( + // CreationModeDefault is a CreationMode enum value + CreationModeDefault = "DEFAULT" + + // CreationModeOverridden is a CreationMode enum value + CreationModeOverridden = "OVERRIDDEN" +) + +// CreationMode_Values returns all elements of the CreationMode enum +func CreationMode_Values() []string { + return []string{ + CreationModeDefault, + CreationModeOverridden, + } +} + +// types of invocations +const ( + // InvocationTypeActionGroup is a InvocationType enum value + InvocationTypeActionGroup = "ACTION_GROUP" + + // InvocationTypeKnowledgeBase is a InvocationType enum value + InvocationTypeKnowledgeBase = "KNOWLEDGE_BASE" + + // InvocationTypeFinish is a InvocationType enum value + InvocationTypeFinish = "FINISH" +) + +// InvocationType_Values returns all elements of the InvocationType enum +func InvocationType_Values() []string { + return []string{ + InvocationTypeActionGroup, + InvocationTypeKnowledgeBase, + InvocationTypeFinish, + } +} + +// types of prompts +const ( + // PromptTypePreProcessing is a PromptType enum value + PromptTypePreProcessing = "PRE_PROCESSING" + + // PromptTypeOrchestration is a PromptType enum value + PromptTypeOrchestration = "ORCHESTRATION" + + // PromptTypeKnowledgeBaseResponseGeneration is a PromptType enum value + PromptTypeKnowledgeBaseResponseGeneration = "KNOWLEDGE_BASE_RESPONSE_GENERATION" + + // PromptTypePostProcessing is a PromptType enum value + PromptTypePostProcessing = "POST_PROCESSING" +) + +// PromptType_Values returns all elements of the PromptType enum +func PromptType_Values() []string { + return []string{ + PromptTypePreProcessing, + PromptTypeOrchestration, + PromptTypeKnowledgeBaseResponseGeneration, + PromptTypePostProcessing, + } +} + +// The location type of a retrieval result. +const ( + // RetrievalResultLocationTypeS3 is a RetrievalResultLocationType enum value + RetrievalResultLocationTypeS3 = "S3" +) + +// RetrievalResultLocationType_Values returns all elements of the RetrievalResultLocationType enum +func RetrievalResultLocationType_Values() []string { + return []string{ + RetrievalResultLocationTypeS3, + } +} + +// The type of RetrieveAndGenerate. +const ( + // RetrieveAndGenerateTypeKnowledgeBase is a RetrieveAndGenerateType enum value + RetrieveAndGenerateTypeKnowledgeBase = "KNOWLEDGE_BASE" +) + +// RetrieveAndGenerateType_Values returns all elements of the RetrieveAndGenerateType enum +func RetrieveAndGenerateType_Values() []string { + return []string{ + RetrieveAndGenerateTypeKnowledgeBase, + } +} + +// Parsing error source +const ( + // SourceActionGroup is a Source enum value + SourceActionGroup = "ACTION_GROUP" + + // SourceKnowledgeBase is a Source enum value + SourceKnowledgeBase = "KNOWLEDGE_BASE" + + // SourceParser is a Source enum value + SourceParser = "PARSER" +) + +// Source_Values returns all elements of the Source enum +func Source_Values() []string { + return []string{ + SourceActionGroup, + SourceKnowledgeBase, + SourceParser, + } +} + +// types of observations +const ( + // TypeActionGroup is a Type enum value + TypeActionGroup = "ACTION_GROUP" + + // TypeKnowledgeBase is a Type enum value + TypeKnowledgeBase = "KNOWLEDGE_BASE" + + // TypeFinish is a Type enum value + TypeFinish = "FINISH" + + // TypeAskUser is a Type enum value + TypeAskUser = "ASK_USER" + + // TypeReprompt is a Type enum value + TypeReprompt = "REPROMPT" +) + +// Type_Values returns all elements of the Type enum +func Type_Values() []string { + return []string{ + TypeActionGroup, + TypeKnowledgeBase, + TypeFinish, + TypeAskUser, + TypeReprompt, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/bedrockagentruntimeiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/bedrockagentruntimeiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/bedrockagentruntimeiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/bedrockagentruntimeiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,79 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockagentruntimeiface provides an interface to enable mocking the Agents for Amazon Bedrock Runtime 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 bedrockagentruntimeiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/bedrockagentruntime" +) + +// BedrockAgentRuntimeAPI provides an interface to enable mocking the +// bedrockagentruntime.BedrockAgentRuntime 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 +// // Agents for Amazon Bedrock Runtime. +// func myFunc(svc bedrockagentruntimeiface.BedrockAgentRuntimeAPI) bool { +// // Make svc.InvokeAgent request +// } +// +// func main() { +// sess := session.New() +// svc := bedrockagentruntime.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockBedrockAgentRuntimeClient struct { +// bedrockagentruntimeiface.BedrockAgentRuntimeAPI +// } +// func (m *mockBedrockAgentRuntimeClient) InvokeAgent(input *bedrockagentruntime.InvokeAgentInput) (*bedrockagentruntime.InvokeAgentOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockBedrockAgentRuntimeClient{} +// +// 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 BedrockAgentRuntimeAPI interface { + InvokeAgent(*bedrockagentruntime.InvokeAgentInput) (*bedrockagentruntime.InvokeAgentOutput, error) + InvokeAgentWithContext(aws.Context, *bedrockagentruntime.InvokeAgentInput, ...request.Option) (*bedrockagentruntime.InvokeAgentOutput, error) + InvokeAgentRequest(*bedrockagentruntime.InvokeAgentInput) (*request.Request, *bedrockagentruntime.InvokeAgentOutput) + + Retrieve(*bedrockagentruntime.RetrieveInput) (*bedrockagentruntime.RetrieveOutput, error) + RetrieveWithContext(aws.Context, *bedrockagentruntime.RetrieveInput, ...request.Option) (*bedrockagentruntime.RetrieveOutput, error) + RetrieveRequest(*bedrockagentruntime.RetrieveInput) (*request.Request, *bedrockagentruntime.RetrieveOutput) + + RetrievePages(*bedrockagentruntime.RetrieveInput, func(*bedrockagentruntime.RetrieveOutput, bool) bool) error + RetrievePagesWithContext(aws.Context, *bedrockagentruntime.RetrieveInput, func(*bedrockagentruntime.RetrieveOutput, bool) bool, ...request.Option) error + + RetrieveAndGenerate(*bedrockagentruntime.RetrieveAndGenerateInput) (*bedrockagentruntime.RetrieveAndGenerateOutput, error) + RetrieveAndGenerateWithContext(aws.Context, *bedrockagentruntime.RetrieveAndGenerateInput, ...request.Option) (*bedrockagentruntime.RetrieveAndGenerateOutput, error) + RetrieveAndGenerateRequest(*bedrockagentruntime.RetrieveAndGenerateInput) (*request.Request, *bedrockagentruntime.RetrieveAndGenerateOutput) +} + +var _ BedrockAgentRuntimeAPI = (*bedrockagentruntime.BedrockAgentRuntime)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,28 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockagentruntime provides the client and types for making API +// requests to Agents for Amazon Bedrock Runtime. +// +// # Amazon Bedrock Agent +// +// See https://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-runtime-2023-07-26 for more information on this service. +// +// See bedrockagentruntime package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrockagentruntime/ +// +// # Using the Client +// +// To contact Agents for Amazon Bedrock Runtime 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 Agents for Amazon Bedrock Runtime client BedrockAgentRuntime for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrockagentruntime/#New +package bedrockagentruntime diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,80 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockagentruntime + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // This exception is thrown when a request is denied per access permissions + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeBadGatewayException for service response error code + // "BadGatewayException". + // + // This exception is thrown when a request fails due to dependency like Lambda, + // Bedrock, STS resource + ErrCodeBadGatewayException = "BadGatewayException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // This exception is thrown when there is a conflict performing an operation + ErrCodeConflictException = "ConflictException" + + // ErrCodeDependencyFailedException for service response error code + // "DependencyFailedException". + // + // This exception is thrown when a request fails due to dependency like Lambda, + // Bedrock, STS resource due to a customer fault (i.e. bad configuration) + ErrCodeDependencyFailedException = "DependencyFailedException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // This exception is thrown if there was an unexpected error during processing + // of request + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // This exception is thrown when a resource referenced by the operation does + // not exist + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // This exception is thrown when a request is made beyond the service quota + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // This exception is thrown when the number of requests exceeds the limit + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // This exception is thrown when the request's input validation fails + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "BadGatewayException": newErrorBadGatewayException, + "ConflictException": newErrorConflictException, + "DependencyFailedException": newErrorDependencyFailedException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/eventstream_test.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/eventstream_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/eventstream_test.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/eventstream_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,730 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +//go:build go1.16 +// +build go1.16 + +package bedrockagentruntime + +import ( + "bytes" + "context" + "io/ioutil" + "net/http" + "reflect" + "strings" + "sync" + "testing" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/corehandlers" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/awstesting/unit" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/eventstream" + "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi" + "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamtest" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +var _ time.Time +var _ awserr.Error +var _ context.Context +var _ sync.WaitGroup +var _ strings.Reader + +func TestInvokeAgent_Read(t *testing.T) { + expectEvents, eventMsgs := mockInvokeAgentReadEvents() + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeAgent(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + defer resp.GetStream().Close() + + var i int + for event := range resp.GetStream().Events() { + if event == nil { + t.Errorf("%d, expect event, got nil", i) + } + if e, a := expectEvents[i], event; !reflect.DeepEqual(e, a) { + t.Errorf("%d, expect %T %v, got %T %v", i, e, e, a, a) + } + i++ + } + + if err := resp.GetStream().Err(); err != nil { + t.Errorf("expect no error, %v", err) + } +} + +func TestInvokeAgent_ReadClose(t *testing.T) { + _, eventMsgs := mockInvokeAgentReadEvents() + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeAgent(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + + // Assert calling Err before close does not close the stream. + resp.GetStream().Err() + select { + case _, ok := <-resp.GetStream().Events(): + if !ok { + t.Fatalf("expect stream not to be closed, but was") + } + default: + } + + resp.GetStream().Close() + <-resp.GetStream().Events() + + if err := resp.GetStream().Err(); err != nil { + t.Errorf("expect no error, %v", err) + } +} + +func TestInvokeAgent_ReadUnknownEvent(t *testing.T) { + expectEvents, eventMsgs := mockInvokeAgentReadEvents() + var eventOffset int + + unknownEvent := eventstream.Message{ + Headers: eventstream.Headers{ + eventstreamtest.EventMessageTypeHeader, + { + Name: eventstreamapi.EventTypeHeader, + Value: eventstream.StringValue("UnknownEventName"), + }, + }, + Payload: []byte("some unknown event"), + } + + eventMsgs = append(eventMsgs[:eventOffset], + append([]eventstream.Message{unknownEvent}, eventMsgs[eventOffset:]...)...) + + expectEvents = append(expectEvents[:eventOffset], + append([]ResponseStreamEvent{ + &ResponseStreamUnknownEvent{ + Type: "UnknownEventName", + Message: unknownEvent, + }, + }, + expectEvents[eventOffset:]...)...) + + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeAgent(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + defer resp.GetStream().Close() + + var i int + for event := range resp.GetStream().Events() { + if event == nil { + t.Errorf("%d, expect event, got nil", i) + } + if e, a := expectEvents[i], event; !reflect.DeepEqual(e, a) { + t.Errorf("%d, expect %T %v, got %T %v", i, e, e, a, a) + } + i++ + } + + if err := resp.GetStream().Err(); err != nil { + t.Errorf("expect no error, %v", err) + } +} + +func BenchmarkInvokeAgent_Read(b *testing.B) { + _, eventMsgs := mockInvokeAgentReadEvents() + var buf bytes.Buffer + encoder := eventstream.NewEncoder(&buf) + for _, msg := range eventMsgs { + if err := encoder.Encode(msg); err != nil { + b.Fatalf("failed to encode message, %v", err) + } + } + stream := &loopReader{source: bytes.NewReader(buf.Bytes())} + + sess := unit.Session + svc := New(sess, &aws.Config{ + Endpoint: aws.String("https://example.com"), + DisableParamValidation: aws.Bool(true), + }) + svc.Handlers.Send.Swap(corehandlers.SendHandler.Name, + request.NamedHandler{Name: "mockSend", + Fn: func(r *request.Request) { + r.HTTPResponse = &http.Response{ + Status: "200 OK", + StatusCode: 200, + Header: http.Header{}, + Body: ioutil.NopCloser(stream), + } + }, + }, + ) + + resp, err := svc.InvokeAgent(nil) + if err != nil { + b.Fatalf("failed to create request, %v", err) + } + defer resp.GetStream().Close() + b.ResetTimer() + + for i := 0; i < b.N; i++ { + if err = resp.GetStream().Err(); err != nil { + b.Fatalf("expect no error, got %v", err) + } + event := <-resp.GetStream().Events() + if event == nil { + b.Fatalf("expect event, got nil, %v, %d", resp.GetStream().Err(), i) + } + } +} + +func mockInvokeAgentReadEvents() ( + []ResponseStreamEvent, + []eventstream.Message, +) { + expectEvents := []ResponseStreamEvent{ + &PayloadPart{ + Attribution: &Attribution{ + Citations: []*Citation{ + { + GeneratedResponsePart: &GeneratedResponsePart{ + TextResponsePart: &TextResponsePart{ + Span: &Span{ + End: aws.Int64(123), + Start: aws.Int64(123), + }, + Text: aws.String("string value goes here"), + }, + }, + RetrievedReferences: []*RetrievedReference{ + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + }, + }, + { + GeneratedResponsePart: &GeneratedResponsePart{ + TextResponsePart: &TextResponsePart{ + Span: &Span{ + End: aws.Int64(123), + Start: aws.Int64(123), + }, + Text: aws.String("string value goes here"), + }, + }, + RetrievedReferences: []*RetrievedReference{ + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + }, + }, + { + GeneratedResponsePart: &GeneratedResponsePart{ + TextResponsePart: &TextResponsePart{ + Span: &Span{ + End: aws.Int64(123), + Start: aws.Int64(123), + }, + Text: aws.String("string value goes here"), + }, + }, + RetrievedReferences: []*RetrievedReference{ + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + }, + }, + }, + }, + Bytes: []byte("blob value goes here"), + }, + &TracePart{ + AgentAliasId: aws.String("string value goes here"), + AgentId: aws.String("string value goes here"), + SessionId: aws.String("string value goes here"), + Trace: &Trace{ + FailureTrace: &FailureTrace{ + FailureReason: aws.String("string value goes here"), + TraceId: aws.String("string value goes here"), + }, + OrchestrationTrace: &OrchestrationTrace{ + InvocationInput: &InvocationInput_{ + ActionGroupInvocationInput: &ActionGroupInvocationInput_{ + ActionGroupName: aws.String("string value goes here"), + ApiPath: aws.String("string value goes here"), + Parameters: []*Parameter{ + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + }, + RequestBody: &RequestBody{ + Content: map[string][]*Parameter{ + "a": { + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + }, + "b": { + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + }, + "c": { + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + { + Name: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + Value: aws.String("string value goes here"), + }, + }, + }, + }, + Verb: aws.String("string value goes here"), + }, + InvocationType: aws.String("string value goes here"), + KnowledgeBaseLookupInput: &KnowledgeBaseLookupInput_{ + KnowledgeBaseId: aws.String("string value goes here"), + Text: aws.String("string value goes here"), + }, + TraceId: aws.String("string value goes here"), + }, + ModelInvocationInput: &ModelInvocationInput_{ + InferenceConfiguration: &InferenceConfiguration{ + MaximumLength: aws.Int64(123), + StopSequences: []*string{ + aws.String("string value goes here"), + aws.String("string value goes here"), + aws.String("string value goes here"), + }, + Temperature: aws.Float64(123.4), + TopK: aws.Int64(123), + TopP: aws.Float64(123.4), + }, + OverrideLambda: aws.String("string value goes here"), + ParserMode: aws.String("string value goes here"), + PromptCreationMode: aws.String("string value goes here"), + Text: aws.String("string value goes here"), + TraceId: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + }, + Observation: &Observation{ + ActionGroupInvocationOutput: &ActionGroupInvocationOutput_{ + Text: aws.String("string value goes here"), + }, + FinalResponse: &FinalResponse{ + Text: aws.String("string value goes here"), + }, + KnowledgeBaseLookupOutput: &KnowledgeBaseLookupOutput_{ + RetrievedReferences: []*RetrievedReference{ + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + { + Content: &RetrievalResultContent{ + Text: aws.String("string value goes here"), + }, + Location: &RetrievalResultLocation{ + S3Location: &RetrievalResultS3Location{ + Uri: aws.String("string value goes here"), + }, + Type: aws.String("string value goes here"), + }, + }, + }, + }, + RepromptResponse: &RepromptResponse{ + Source: aws.String("string value goes here"), + Text: aws.String("string value goes here"), + }, + TraceId: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + }, + Rationale: &Rationale{ + Text: aws.String("string value goes here"), + TraceId: aws.String("string value goes here"), + }, + }, + PostProcessingTrace: &PostProcessingTrace{ + ModelInvocationInput: &ModelInvocationInput_{ + InferenceConfiguration: &InferenceConfiguration{ + MaximumLength: aws.Int64(123), + StopSequences: []*string{ + aws.String("string value goes here"), + aws.String("string value goes here"), + aws.String("string value goes here"), + }, + Temperature: aws.Float64(123.4), + TopK: aws.Int64(123), + TopP: aws.Float64(123.4), + }, + OverrideLambda: aws.String("string value goes here"), + ParserMode: aws.String("string value goes here"), + PromptCreationMode: aws.String("string value goes here"), + Text: aws.String("string value goes here"), + TraceId: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + }, + ModelInvocationOutput: &PostProcessingModelInvocationOutput_{ + ParsedResponse: &PostProcessingParsedResponse{ + Text: aws.String("string value goes here"), + }, + TraceId: aws.String("string value goes here"), + }, + }, + PreProcessingTrace: &PreProcessingTrace{ + ModelInvocationInput: &ModelInvocationInput_{ + InferenceConfiguration: &InferenceConfiguration{ + MaximumLength: aws.Int64(123), + StopSequences: []*string{ + aws.String("string value goes here"), + aws.String("string value goes here"), + aws.String("string value goes here"), + }, + Temperature: aws.Float64(123.4), + TopK: aws.Int64(123), + TopP: aws.Float64(123.4), + }, + OverrideLambda: aws.String("string value goes here"), + ParserMode: aws.String("string value goes here"), + PromptCreationMode: aws.String("string value goes here"), + Text: aws.String("string value goes here"), + TraceId: aws.String("string value goes here"), + Type: aws.String("string value goes here"), + }, + ModelInvocationOutput: &PreProcessingModelInvocationOutput_{ + ParsedResponse: &PreProcessingParsedResponse{ + IsValid: aws.Bool(true), + Rationale: aws.String("string value goes here"), + }, + TraceId: aws.String("string value goes here"), + }, + }, + }, + }, + } + + var marshalers request.HandlerList + marshalers.PushBackNamed(restjson.BuildHandler) + payloadMarshaler := protocol.HandlerPayloadMarshal{ + Marshalers: marshalers, + } + _ = payloadMarshaler + + eventMsgs := []eventstream.Message{ + { + Headers: eventstream.Headers{ + eventstreamtest.EventMessageTypeHeader, + { + Name: eventstreamapi.EventTypeHeader, + Value: eventstream.StringValue("chunk"), + }, + }, + Payload: eventstreamtest.MarshalEventPayload(payloadMarshaler, expectEvents[0]), + }, + { + Headers: eventstream.Headers{ + eventstreamtest.EventMessageTypeHeader, + { + Name: eventstreamapi.EventTypeHeader, + Value: eventstream.StringValue("trace"), + }, + }, + Payload: eventstreamtest.MarshalEventPayload(payloadMarshaler, expectEvents[1]), + }, + } + + return expectEvents, eventMsgs +} +func TestInvokeAgent_ReadException(t *testing.T) { + expectEvents := []ResponseStreamEvent{ + &AccessDeniedException{ + RespMetadata: protocol.ResponseMetadata{ + StatusCode: 200, + }, + Message_: aws.String("string value goes here"), + }, + } + + var marshalers request.HandlerList + marshalers.PushBackNamed(restjson.BuildHandler) + payloadMarshaler := protocol.HandlerPayloadMarshal{ + Marshalers: marshalers, + } + + eventMsgs := []eventstream.Message{ + { + Headers: eventstream.Headers{ + eventstreamtest.EventExceptionTypeHeader, + { + Name: eventstreamapi.ExceptionTypeHeader, + Value: eventstream.StringValue("accessDeniedException"), + }, + }, + Payload: eventstreamtest.MarshalEventPayload(payloadMarshaler, expectEvents[0]), + }, + } + + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeAgent(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + + defer resp.GetStream().Close() + + <-resp.GetStream().Events() + + err = resp.GetStream().Err() + if err == nil { + t.Fatalf("expect err, got none") + } + + expectErr := &AccessDeniedException{ + RespMetadata: protocol.ResponseMetadata{ + StatusCode: 200, + }, + Message_: aws.String("string value goes here"), + } + aerr, ok := err.(awserr.Error) + if !ok { + t.Errorf("expect exception, got %T, %#v", err, err) + } + if e, a := expectErr.Code(), aerr.Code(); e != a { + t.Errorf("expect %v, got %v", e, a) + } + if e, a := expectErr.Message(), aerr.Message(); e != a { + t.Errorf("expect %v, got %v", e, a) + } + + if e, a := expectErr, aerr; !reflect.DeepEqual(e, a) { + t.Errorf("expect error %+#v, got %+#v", e, a) + } +} + +var _ awserr.Error = (*AccessDeniedException)(nil) +var _ awserr.Error = (*BadGatewayException)(nil) +var _ awserr.Error = (*ConflictException)(nil) +var _ awserr.Error = (*DependencyFailedException)(nil) +var _ awserr.Error = (*InternalServerException)(nil) +var _ awserr.Error = (*ResourceNotFoundException)(nil) +var _ awserr.Error = (*ServiceQuotaExceededException)(nil) +var _ awserr.Error = (*ThrottlingException)(nil) +var _ awserr.Error = (*ValidationException)(nil) + +type loopReader struct { + source *bytes.Reader +} + +func (c *loopReader) Read(p []byte) (int, error) { + if c.source.Len() == 0 { + c.source.Seek(0, 0) + } + + return c.source.Read(p) +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/service.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockagentruntime/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockagentruntime/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,109 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockagentruntime + +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/restjson" +) + +// BedrockAgentRuntime provides the API operation methods for making requests to +// Agents for Amazon Bedrock Runtime. See this package's package overview docs +// for details on the service. +// +// BedrockAgentRuntime methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type BedrockAgentRuntime 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 = "Bedrock Agent Runtime" // Name of service. + EndpointsID = "bedrock-agent-runtime" // ID to lookup a service endpoint with. + ServiceID = "Bedrock Agent Runtime" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the BedrockAgentRuntime 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 BedrockAgentRuntime client from just a session. +// svc := bedrockagentruntime.New(mySession) +// +// // Create a BedrockAgentRuntime client with additional configuration +// svc := bedrockagentruntime.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *BedrockAgentRuntime { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "bedrock" + } + 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) *BedrockAgentRuntime { + svc := &BedrockAgentRuntime{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-07-26", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + svc.Handlers.BuildStream.PushBackNamed(restjson.BuildHandler) + svc.Handlers.UnmarshalStream.PushBackNamed(restjson.UnmarshalHandler) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a BedrockAgentRuntime operation and runs any +// custom request initialization. +func (c *BedrockAgentRuntime) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/api.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1698 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockruntime + +import ( + "bytes" + "fmt" + "io" + "sync" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/eventstream" + "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi" + "github.com/aws/aws-sdk-go/private/protocol/rest" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +const opInvokeModel = "InvokeModel" + +// InvokeModelRequest generates a "aws/request.Request" representing the +// client's request for the InvokeModel 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 InvokeModel for more information on using the InvokeModel +// 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 InvokeModelRequest method. +// req, resp := client.InvokeModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-runtime-2023-09-30/InvokeModel +func (c *BedrockRuntime) InvokeModelRequest(input *InvokeModelInput) (req *request.Request, output *InvokeModelOutput) { + op := &request.Operation{ + Name: opInvokeModel, + HTTPMethod: "POST", + HTTPPath: "/model/{modelId}/invoke", + } + + if input == nil { + input = &InvokeModelInput{} + } + + output = &InvokeModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// InvokeModel API operation for Amazon Bedrock Runtime. +// +// Invokes the specified Bedrock model to run inference using the input provided +// in the request body. You use InvokeModel to run inference for text models, +// image models, and embedding models. +// +// For more information, see Run inference (https://docs.aws.amazon.com/bedrock/latest/userguide/api-methods-run.html) +// in the Bedrock User Guide. +// +// For example requests, see Examples (after the Errors section). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock Runtime's +// API operation InvokeModel for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// - ModelTimeoutException +// The request took too long to process. Processing time exceeded the model +// timeout length. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - ModelNotReadyException +// The model specified in the request is not ready to serve inference requests. +// +// - ServiceQuotaExceededException +// The number of requests exceeds the service quota. Resubmit your request later. +// +// - ModelErrorException +// The request failed due to an error while processing the model. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-runtime-2023-09-30/InvokeModel +func (c *BedrockRuntime) InvokeModel(input *InvokeModelInput) (*InvokeModelOutput, error) { + req, out := c.InvokeModelRequest(input) + return out, req.Send() +} + +// InvokeModelWithContext is the same as InvokeModel with the addition of +// the ability to pass a context and additional request options. +// +// See InvokeModel 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 *BedrockRuntime) InvokeModelWithContext(ctx aws.Context, input *InvokeModelInput, opts ...request.Option) (*InvokeModelOutput, error) { + req, out := c.InvokeModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opInvokeModelWithResponseStream = "InvokeModelWithResponseStream" + +// InvokeModelWithResponseStreamRequest generates a "aws/request.Request" representing the +// client's request for the InvokeModelWithResponseStream 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 InvokeModelWithResponseStream for more information on using the InvokeModelWithResponseStream +// 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 InvokeModelWithResponseStreamRequest method. +// req, resp := client.InvokeModelWithResponseStreamRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-runtime-2023-09-30/InvokeModelWithResponseStream +func (c *BedrockRuntime) InvokeModelWithResponseStreamRequest(input *InvokeModelWithResponseStreamInput) (req *request.Request, output *InvokeModelWithResponseStreamOutput) { + op := &request.Operation{ + Name: opInvokeModelWithResponseStream, + HTTPMethod: "POST", + HTTPPath: "/model/{modelId}/invoke-with-response-stream", + } + + if input == nil { + input = &InvokeModelWithResponseStreamInput{} + } + + output = &InvokeModelWithResponseStreamOutput{} + req = c.newRequest(op, input, output) + + es := NewInvokeModelWithResponseStreamEventStream() + output.eventStream = es + + req.Handlers.Send.Swap(client.LogHTTPResponseHandler.Name, client.LogHTTPResponseHeaderHandler) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, rest.UnmarshalHandler) + req.Handlers.Unmarshal.PushBack(es.runOutputStream) + req.Handlers.Unmarshal.PushBack(es.runOnStreamPartClose) + return +} + +// InvokeModelWithResponseStream API operation for Amazon Bedrock Runtime. +// +// Invoke the specified Bedrock model to run inference using the input provided. +// Return the response in a stream. +// +// For more information, see Run inference (https://docs.aws.amazon.com/bedrock/latest/userguide/api-methods-run.html) +// in the Bedrock User Guide. +// +// For an example request and response, see Examples (after the Errors section). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Bedrock Runtime's +// API operation InvokeModelWithResponseStream for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request is denied because of missing access permissions. +// +// - ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// - ThrottlingException +// The number of requests exceeds the limit. Resubmit your request later. +// +// - ModelTimeoutException +// The request took too long to process. Processing time exceeded the model +// timeout length. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// - ModelStreamErrorException +// An error occurred while streaming the response. +// +// - ValidationException +// Input validation failed. Check your request parameters and retry the request. +// +// - ModelNotReadyException +// The model specified in the request is not ready to serve inference requests. +// +// - ServiceQuotaExceededException +// The number of requests exceeds the service quota. Resubmit your request later. +// +// - ModelErrorException +// The request failed due to an error while processing the model. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/bedrock-runtime-2023-09-30/InvokeModelWithResponseStream +func (c *BedrockRuntime) InvokeModelWithResponseStream(input *InvokeModelWithResponseStreamInput) (*InvokeModelWithResponseStreamOutput, error) { + req, out := c.InvokeModelWithResponseStreamRequest(input) + return out, req.Send() +} + +// InvokeModelWithResponseStreamWithContext is the same as InvokeModelWithResponseStream with the addition of +// the ability to pass a context and additional request options. +// +// See InvokeModelWithResponseStream 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 *BedrockRuntime) InvokeModelWithResponseStreamWithContext(ctx aws.Context, input *InvokeModelWithResponseStreamInput, opts ...request.Option) (*InvokeModelWithResponseStreamOutput, error) { + req, out := c.InvokeModelWithResponseStreamRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +var _ awserr.Error +var _ time.Time + +// InvokeModelWithResponseStreamEventStream provides the event stream handling for the InvokeModelWithResponseStream. +// +// For testing and mocking the event stream this type should be initialized via +// the NewInvokeModelWithResponseStreamEventStream constructor function. Using the functional options +// to pass in nested mock behavior. +type InvokeModelWithResponseStreamEventStream struct { + + // Reader is the EventStream reader for the ResponseStream + // events. This value is automatically set by the SDK when the API call is made + // Use this member when unit testing your code with the SDK to mock out the + // EventStream Reader. + // + // Must not be nil. + Reader ResponseStreamReader + + outputReader io.ReadCloser + + done chan struct{} + closeOnce sync.Once + err *eventstreamapi.OnceError +} + +// NewInvokeModelWithResponseStreamEventStream initializes an InvokeModelWithResponseStreamEventStream. +// This function should only be used for testing and mocking the InvokeModelWithResponseStreamEventStream +// stream within your application. +// +// The Reader member must be set before reading events from the stream. +// +// es := NewInvokeModelWithResponseStreamEventStream(func(o *InvokeModelWithResponseStreamEventStream){ +// es.Reader = myMockStreamReader +// }) +func NewInvokeModelWithResponseStreamEventStream(opts ...func(*InvokeModelWithResponseStreamEventStream)) *InvokeModelWithResponseStreamEventStream { + es := &InvokeModelWithResponseStreamEventStream{ + done: make(chan struct{}), + err: eventstreamapi.NewOnceError(), + } + + for _, fn := range opts { + fn(es) + } + + return es +} + +func (es *InvokeModelWithResponseStreamEventStream) runOnStreamPartClose(r *request.Request) { + if es.done == nil { + return + } + go es.waitStreamPartClose() + +} + +func (es *InvokeModelWithResponseStreamEventStream) waitStreamPartClose() { + var outputErrCh <-chan struct{} + if v, ok := es.Reader.(interface{ ErrorSet() <-chan struct{} }); ok { + outputErrCh = v.ErrorSet() + } + var outputClosedCh <-chan struct{} + if v, ok := es.Reader.(interface{ Closed() <-chan struct{} }); ok { + outputClosedCh = v.Closed() + } + + select { + case <-es.done: + case <-outputErrCh: + es.err.SetError(es.Reader.Err()) + es.Close() + case <-outputClosedCh: + if err := es.Reader.Err(); err != nil { + es.err.SetError(es.Reader.Err()) + } + es.Close() + } +} + +// Events returns a channel to read events from. +// +// These events are: +// +// - PayloadPart +// - ResponseStreamUnknownEvent +func (es *InvokeModelWithResponseStreamEventStream) Events() <-chan ResponseStreamEvent { + return es.Reader.Events() +} + +func (es *InvokeModelWithResponseStreamEventStream) runOutputStream(r *request.Request) { + var opts []func(*eventstream.Decoder) + if r.Config.Logger != nil && r.Config.LogLevel.Matches(aws.LogDebugWithEventStreamBody) { + opts = append(opts, eventstream.DecodeWithLogger(r.Config.Logger)) + } + + unmarshalerForEvent := unmarshalerForResponseStreamEvent{ + metadata: protocol.ResponseMetadata{ + StatusCode: r.HTTPResponse.StatusCode, + RequestID: r.RequestID, + }, + }.UnmarshalerForEventName + + decoder := eventstream.NewDecoder(r.HTTPResponse.Body, opts...) + eventReader := eventstreamapi.NewEventReader(decoder, + protocol.HandlerPayloadUnmarshal{ + Unmarshalers: r.Handlers.UnmarshalStream, + }, + unmarshalerForEvent, + ) + + es.outputReader = r.HTTPResponse.Body + es.Reader = newReadResponseStream(eventReader) +} + +// Close closes the stream. This will also cause the stream to be closed. +// Close must be called when done using the stream API. Not calling Close +// may result in resource leaks. +// +// You can use the closing of the Reader's Events channel to terminate your +// application's read from the API's stream. +func (es *InvokeModelWithResponseStreamEventStream) Close() (err error) { + es.closeOnce.Do(es.safeClose) + return es.Err() +} + +func (es *InvokeModelWithResponseStreamEventStream) safeClose() { + if es.done != nil { + close(es.done) + } + + es.Reader.Close() + if es.outputReader != nil { + es.outputReader.Close() + } +} + +// Err returns any error that occurred while reading or writing EventStream +// Events from the service API's response. Returns nil if there were no errors. +func (es *InvokeModelWithResponseStreamEventStream) Err() error { + if err := es.err.Err(); err != nil { + return err + } + if err := es.Reader.Err(); err != nil { + return err + } + + return nil +} + +// The request is denied because of missing access permissions. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An internal server error occurred. Retry your request. +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() +} + +// The InternalServerException is and event in the ResponseStream group of events. +func (s *InternalServerException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the InternalServerException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *InternalServerException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *InternalServerException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type InvokeModelInput struct { + _ struct{} `type:"structure" payload:"Body"` + + // The desired MIME type of the inference body in the response. The default + // value is application/json. + Accept *string `location:"header" locationName:"Accept" type:"string"` + + // Input data in the format specified in the content-type request header. To + // see the format and content of this field for different models, refer to Inference + // parameters (https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html). + // + // Body is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InvokeModelInput's + // String and GoString methods. + // + // Body is a required field + Body []byte `locationName:"body" type:"blob" required:"true" sensitive:"true"` + + // The MIME type of the input data in the request. The default value is application/json. + ContentType *string `location:"header" locationName:"Content-Type" type:"string"` + + // Identifier of the model. + // + // ModelId is a required field + ModelId *string `location:"uri" locationName:"modelId" 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 InvokeModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokeModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InvokeModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InvokeModelInput"} + if s.Body == nil { + invalidParams.Add(request.NewErrParamRequired("Body")) + } + if s.ModelId == nil { + invalidParams.Add(request.NewErrParamRequired("ModelId")) + } + if s.ModelId != nil && len(*s.ModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccept sets the Accept field's value. +func (s *InvokeModelInput) SetAccept(v string) *InvokeModelInput { + s.Accept = &v + return s +} + +// SetBody sets the Body field's value. +func (s *InvokeModelInput) SetBody(v []byte) *InvokeModelInput { + s.Body = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *InvokeModelInput) SetContentType(v string) *InvokeModelInput { + s.ContentType = &v + return s +} + +// SetModelId sets the ModelId field's value. +func (s *InvokeModelInput) SetModelId(v string) *InvokeModelInput { + s.ModelId = &v + return s +} + +type InvokeModelOutput struct { + _ struct{} `type:"structure" payload:"Body"` + + // Inference response from the model in the format specified in the content-type + // header field. To see the format and content of this field for different models, + // refer to Inference parameters (https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html). + // + // Body is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InvokeModelOutput's + // String and GoString methods. + // + // Body is a required field + Body []byte `locationName:"body" type:"blob" required:"true" sensitive:"true"` + + // The MIME type of the inference result. + // + // ContentType is a required field + ContentType *string `location:"header" locationName:"Content-Type" 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 InvokeModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokeModelOutput) GoString() string { + return s.String() +} + +// SetBody sets the Body field's value. +func (s *InvokeModelOutput) SetBody(v []byte) *InvokeModelOutput { + s.Body = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *InvokeModelOutput) SetContentType(v string) *InvokeModelOutput { + s.ContentType = &v + return s +} + +type InvokeModelWithResponseStreamInput struct { + _ struct{} `type:"structure" payload:"Body"` + + // The desired MIME type of the inference body in the response. The default + // value is application/json. + Accept *string `location:"header" locationName:"X-Amzn-Bedrock-Accept" type:"string"` + + // Inference input in the format specified by the content-type. To see the format + // and content of this field for different models, refer to Inference parameters + // (https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html). + // + // Body is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InvokeModelWithResponseStreamInput's + // String and GoString methods. + // + // Body is a required field + Body []byte `locationName:"body" type:"blob" required:"true" sensitive:"true"` + + // The MIME type of the input data in the request. The default value is application/json. + ContentType *string `location:"header" locationName:"Content-Type" type:"string"` + + // Id of the model to invoke using the streaming request. + // + // ModelId is a required field + ModelId *string `location:"uri" locationName:"modelId" 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 InvokeModelWithResponseStreamInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokeModelWithResponseStreamInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InvokeModelWithResponseStreamInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InvokeModelWithResponseStreamInput"} + if s.Body == nil { + invalidParams.Add(request.NewErrParamRequired("Body")) + } + if s.ModelId == nil { + invalidParams.Add(request.NewErrParamRequired("ModelId")) + } + if s.ModelId != nil && len(*s.ModelId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccept sets the Accept field's value. +func (s *InvokeModelWithResponseStreamInput) SetAccept(v string) *InvokeModelWithResponseStreamInput { + s.Accept = &v + return s +} + +// SetBody sets the Body field's value. +func (s *InvokeModelWithResponseStreamInput) SetBody(v []byte) *InvokeModelWithResponseStreamInput { + s.Body = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *InvokeModelWithResponseStreamInput) SetContentType(v string) *InvokeModelWithResponseStreamInput { + s.ContentType = &v + return s +} + +// SetModelId sets the ModelId field's value. +func (s *InvokeModelWithResponseStreamInput) SetModelId(v string) *InvokeModelWithResponseStreamInput { + s.ModelId = &v + return s +} + +type InvokeModelWithResponseStreamOutput struct { + _ struct{} `type:"structure" payload:"Body"` + + eventStream *InvokeModelWithResponseStreamEventStream + + // The MIME type of the inference result. + // + // ContentType is a required field + ContentType *string `location:"header" locationName:"X-Amzn-Bedrock-Content-Type" 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 InvokeModelWithResponseStreamOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokeModelWithResponseStreamOutput) GoString() string { + return s.String() +} + +// SetContentType sets the ContentType field's value. +func (s *InvokeModelWithResponseStreamOutput) SetContentType(v string) *InvokeModelWithResponseStreamOutput { + s.ContentType = &v + return s +} + +// GetStream returns the type to interact with the event stream. +func (s *InvokeModelWithResponseStreamOutput) GetStream() *InvokeModelWithResponseStreamEventStream { + return s.eventStream +} + +// The request failed due to an error while processing the model. +type ModelErrorException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The original status code. + OriginalStatusCode *int64 `locationName:"originalStatusCode" min:"100" type:"integer"` + + // The resource name. + ResourceName *string `locationName:"resourceName" 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 ModelErrorException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelErrorException) GoString() string { + return s.String() +} + +func newErrorModelErrorException(v protocol.ResponseMetadata) error { + return &ModelErrorException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ModelErrorException) Code() string { + return "ModelErrorException" +} + +// Message returns the exception's message. +func (s *ModelErrorException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ModelErrorException) OrigErr() error { + return nil +} + +func (s *ModelErrorException) 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 *ModelErrorException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ModelErrorException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The model specified in the request is not ready to serve inference requests. +type ModelNotReadyException 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 ModelNotReadyException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelNotReadyException) GoString() string { + return s.String() +} + +func newErrorModelNotReadyException(v protocol.ResponseMetadata) error { + return &ModelNotReadyException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ModelNotReadyException) Code() string { + return "ModelNotReadyException" +} + +// Message returns the exception's message. +func (s *ModelNotReadyException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ModelNotReadyException) OrigErr() error { + return nil +} + +func (s *ModelNotReadyException) 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 *ModelNotReadyException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ModelNotReadyException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An error occurred while streaming the response. +type ModelStreamErrorException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The original message. + OriginalMessage *string `locationName:"originalMessage" type:"string"` + + // The original status code. + OriginalStatusCode *int64 `locationName:"originalStatusCode" min:"100" 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 ModelStreamErrorException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelStreamErrorException) GoString() string { + return s.String() +} + +// The ModelStreamErrorException is and event in the ResponseStream group of events. +func (s *ModelStreamErrorException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ModelStreamErrorException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ModelStreamErrorException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ModelStreamErrorException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorModelStreamErrorException(v protocol.ResponseMetadata) error { + return &ModelStreamErrorException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ModelStreamErrorException) Code() string { + return "ModelStreamErrorException" +} + +// Message returns the exception's message. +func (s *ModelStreamErrorException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ModelStreamErrorException) OrigErr() error { + return nil +} + +func (s *ModelStreamErrorException) 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 *ModelStreamErrorException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ModelStreamErrorException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request took too long to process. Processing time exceeded the model +// timeout length. +type ModelTimeoutException 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 ModelTimeoutException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelTimeoutException) GoString() string { + return s.String() +} + +// The ModelTimeoutException is and event in the ResponseStream group of events. +func (s *ModelTimeoutException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ModelTimeoutException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ModelTimeoutException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ModelTimeoutException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorModelTimeoutException(v protocol.ResponseMetadata) error { + return &ModelTimeoutException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ModelTimeoutException) Code() string { + return "ModelTimeoutException" +} + +// Message returns the exception's message. +func (s *ModelTimeoutException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ModelTimeoutException) OrigErr() error { + return nil +} + +func (s *ModelTimeoutException) 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 *ModelTimeoutException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ModelTimeoutException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Payload content included in the response. +type PayloadPart struct { + _ struct{} `type:"structure" sensitive:"true"` + + // Base64-encoded bytes of payload data. + // + // Bytes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PayloadPart's + // String and GoString methods. + // + // Bytes is automatically base64 encoded/decoded by the SDK. + Bytes []byte `locationName:"bytes" type:"blob" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PayloadPart) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PayloadPart) GoString() string { + return s.String() +} + +// SetBytes sets the Bytes field's value. +func (s *PayloadPart) SetBytes(v []byte) *PayloadPart { + s.Bytes = v + return s +} + +// The PayloadPart is and event in the ResponseStream group of events. +func (s *PayloadPart) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the PayloadPart value. +// This method is only used internally within the SDK's EventStream handling. +func (s *PayloadPart) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *PayloadPart) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.EventMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +// The specified resource ARN was not found. Check the ARN and try your request +// again. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// ResponseStreamEvent groups together all EventStream +// events writes for ResponseStream. +// +// These events are: +// +// - PayloadPart +type ResponseStreamEvent interface { + eventResponseStream() + eventstreamapi.Marshaler + eventstreamapi.Unmarshaler +} + +// ResponseStreamReader provides the interface for reading to the stream. The +// default implementation for this interface will be ResponseStream. +// +// The reader's Close method must allow multiple concurrent calls. +// +// These events are: +// +// - PayloadPart +// - ResponseStreamUnknownEvent +type ResponseStreamReader interface { + // Returns a channel of events as they are read from the event stream. + Events() <-chan ResponseStreamEvent + + // Close will stop the reader reading events from the stream. + Close() error + + // Returns any error that has occurred while reading from the event stream. + Err() error +} + +type readResponseStream struct { + eventReader *eventstreamapi.EventReader + stream chan ResponseStreamEvent + err *eventstreamapi.OnceError + + done chan struct{} + closeOnce sync.Once +} + +func newReadResponseStream(eventReader *eventstreamapi.EventReader) *readResponseStream { + r := &readResponseStream{ + eventReader: eventReader, + stream: make(chan ResponseStreamEvent), + done: make(chan struct{}), + err: eventstreamapi.NewOnceError(), + } + go r.readEventStream() + + return r +} + +// Close will close the underlying event stream reader. +func (r *readResponseStream) Close() error { + r.closeOnce.Do(r.safeClose) + return r.Err() +} + +func (r *readResponseStream) ErrorSet() <-chan struct{} { + return r.err.ErrorSet() +} + +func (r *readResponseStream) Closed() <-chan struct{} { + return r.done +} + +func (r *readResponseStream) safeClose() { + close(r.done) +} + +func (r *readResponseStream) Err() error { + return r.err.Err() +} + +func (r *readResponseStream) Events() <-chan ResponseStreamEvent { + return r.stream +} + +func (r *readResponseStream) readEventStream() { + defer r.Close() + defer close(r.stream) + + for { + event, err := r.eventReader.ReadEvent() + if err != nil { + if err == io.EOF { + return + } + select { + case <-r.done: + // If closed already ignore the error + return + default: + } + if _, ok := err.(*eventstreamapi.UnknownMessageTypeError); ok { + continue + } + r.err.SetError(err) + return + } + + select { + case r.stream <- event.(ResponseStreamEvent): + case <-r.done: + return + } + } +} + +type unmarshalerForResponseStreamEvent struct { + metadata protocol.ResponseMetadata +} + +func (u unmarshalerForResponseStreamEvent) UnmarshalerForEventName(eventType string) (eventstreamapi.Unmarshaler, error) { + switch eventType { + case "chunk": + return &PayloadPart{}, nil + case "internalServerException": + return newErrorInternalServerException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "modelStreamErrorException": + return newErrorModelStreamErrorException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "modelTimeoutException": + return newErrorModelTimeoutException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "throttlingException": + return newErrorThrottlingException(u.metadata).(eventstreamapi.Unmarshaler), nil + case "validationException": + return newErrorValidationException(u.metadata).(eventstreamapi.Unmarshaler), nil + default: + return &ResponseStreamUnknownEvent{Type: eventType}, nil + } +} + +// ResponseStreamUnknownEvent provides a failsafe event for the +// ResponseStream group of events when an unknown event is received. +type ResponseStreamUnknownEvent struct { + Type string + Message eventstream.Message +} + +// The ResponseStreamUnknownEvent is and event in the ResponseStream +// group of events. +func (s *ResponseStreamUnknownEvent) eventResponseStream() {} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (e *ResponseStreamUnknownEvent) MarshalEvent(pm protocol.PayloadMarshaler) ( + msg eventstream.Message, err error, +) { + return e.Message.Clone(), nil +} + +// UnmarshalEvent unmarshals the EventStream Message into the ResponseStream value. +// This method is only used internally within the SDK's EventStream handling. +func (e *ResponseStreamUnknownEvent) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + e.Message = msg.Clone() + return nil +} + +// The number of requests exceeds the service quota. Resubmit your request later. +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 +} + +// The number of requests exceeds the limit. Resubmit your request later. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +// The ThrottlingException is and event in the ResponseStream group of events. +func (s *ThrottlingException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ThrottlingException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ThrottlingException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ThrottlingException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Input validation failed. Check your request parameters and retry the request. +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() +} + +// The ValidationException is and event in the ResponseStream group of events. +func (s *ValidationException) eventResponseStream() {} + +// UnmarshalEvent unmarshals the EventStream Message into the ValidationException value. +// This method is only used internally within the SDK's EventStream handling. +func (s *ValidationException) UnmarshalEvent( + payloadUnmarshaler protocol.PayloadUnmarshaler, + msg eventstream.Message, +) error { + if err := payloadUnmarshaler.UnmarshalPayload( + bytes.NewReader(msg.Payload), s, + ); err != nil { + return err + } + return nil +} + +// MarshalEvent marshals the type into an stream event value. This method +// should only used internally within the SDK's EventStream handling. +func (s *ValidationException) MarshalEvent(pm protocol.PayloadMarshaler) (msg eventstream.Message, err error) { + msg.Headers.Set(eventstreamapi.MessageTypeHeader, eventstream.StringValue(eventstreamapi.ExceptionMessageType)) + var buf bytes.Buffer + if err = pm.MarshalPayload(&buf, s); err != nil { + return eventstream.Message{}, err + } + msg.Payload = buf.Bytes() + return msg, err +} + +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 +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/bedrockruntimeiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/bedrockruntimeiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/bedrockruntimeiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/bedrockruntimeiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,72 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockruntimeiface provides an interface to enable mocking the Amazon Bedrock Runtime 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 bedrockruntimeiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/bedrockruntime" +) + +// BedrockRuntimeAPI provides an interface to enable mocking the +// bedrockruntime.BedrockRuntime 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 +// // Amazon Bedrock Runtime. +// func myFunc(svc bedrockruntimeiface.BedrockRuntimeAPI) bool { +// // Make svc.InvokeModel request +// } +// +// func main() { +// sess := session.New() +// svc := bedrockruntime.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockBedrockRuntimeClient struct { +// bedrockruntimeiface.BedrockRuntimeAPI +// } +// func (m *mockBedrockRuntimeClient) InvokeModel(input *bedrockruntime.InvokeModelInput) (*bedrockruntime.InvokeModelOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockBedrockRuntimeClient{} +// +// 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 BedrockRuntimeAPI interface { + InvokeModel(*bedrockruntime.InvokeModelInput) (*bedrockruntime.InvokeModelOutput, error) + InvokeModelWithContext(aws.Context, *bedrockruntime.InvokeModelInput, ...request.Option) (*bedrockruntime.InvokeModelOutput, error) + InvokeModelRequest(*bedrockruntime.InvokeModelInput) (*request.Request, *bedrockruntime.InvokeModelOutput) + + InvokeModelWithResponseStream(*bedrockruntime.InvokeModelWithResponseStreamInput) (*bedrockruntime.InvokeModelWithResponseStreamOutput, error) + InvokeModelWithResponseStreamWithContext(aws.Context, *bedrockruntime.InvokeModelWithResponseStreamInput, ...request.Option) (*bedrockruntime.InvokeModelWithResponseStreamOutput, error) + InvokeModelWithResponseStreamRequest(*bedrockruntime.InvokeModelWithResponseStreamInput) (*request.Request, *bedrockruntime.InvokeModelWithResponseStreamOutput) +} + +var _ BedrockRuntimeAPI = (*bedrockruntime.BedrockRuntime)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,28 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package bedrockruntime provides the client and types for making API +// requests to Amazon Bedrock Runtime. +// +// Describes the API operations for running inference using Bedrock models. +// +// See https://docs.aws.amazon.com/goto/WebAPI/bedrock-runtime-2023-09-30 for more information on this service. +// +// See bedrockruntime package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrockruntime/ +// +// # Using the Client +// +// To contact Amazon Bedrock Runtime 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 Amazon Bedrock Runtime client BedrockRuntime for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/bedrockruntime/#New +package bedrockruntime diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,85 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockruntime + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // The request is denied because of missing access permissions. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An internal server error occurred. Retry your request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeModelErrorException for service response error code + // "ModelErrorException". + // + // The request failed due to an error while processing the model. + ErrCodeModelErrorException = "ModelErrorException" + + // ErrCodeModelNotReadyException for service response error code + // "ModelNotReadyException". + // + // The model specified in the request is not ready to serve inference requests. + ErrCodeModelNotReadyException = "ModelNotReadyException" + + // ErrCodeModelStreamErrorException for service response error code + // "ModelStreamErrorException". + // + // An error occurred while streaming the response. + ErrCodeModelStreamErrorException = "ModelStreamErrorException" + + // ErrCodeModelTimeoutException for service response error code + // "ModelTimeoutException". + // + // The request took too long to process. Processing time exceeded the model + // timeout length. + ErrCodeModelTimeoutException = "ModelTimeoutException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified resource ARN was not found. Check the ARN and try your request + // again. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The number of requests exceeds the service quota. Resubmit your request later. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The number of requests exceeds the limit. Resubmit your request later. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Input validation failed. Check your request parameters and retry the request. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "InternalServerException": newErrorInternalServerException, + "ModelErrorException": newErrorModelErrorException, + "ModelNotReadyException": newErrorModelNotReadyException, + "ModelStreamErrorException": newErrorModelStreamErrorException, + "ModelTimeoutException": newErrorModelTimeoutException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/eventstream_test.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/eventstream_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/eventstream_test.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/eventstream_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,347 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +//go:build go1.16 +// +build go1.16 + +package bedrockruntime + +import ( + "bytes" + "context" + "io/ioutil" + "net/http" + "reflect" + "strings" + "sync" + "testing" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/corehandlers" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/awstesting/unit" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/eventstream" + "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi" + "github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamtest" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +var _ time.Time +var _ awserr.Error +var _ context.Context +var _ sync.WaitGroup +var _ strings.Reader + +func TestInvokeModelWithResponseStream_Read(t *testing.T) { + expectEvents, eventMsgs := mockInvokeModelWithResponseStreamReadEvents() + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeModelWithResponseStream(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + defer resp.GetStream().Close() + + var i int + for event := range resp.GetStream().Events() { + if event == nil { + t.Errorf("%d, expect event, got nil", i) + } + if e, a := expectEvents[i], event; !reflect.DeepEqual(e, a) { + t.Errorf("%d, expect %T %v, got %T %v", i, e, e, a, a) + } + i++ + } + + if err := resp.GetStream().Err(); err != nil { + t.Errorf("expect no error, %v", err) + } +} + +func TestInvokeModelWithResponseStream_ReadClose(t *testing.T) { + _, eventMsgs := mockInvokeModelWithResponseStreamReadEvents() + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeModelWithResponseStream(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + + // Assert calling Err before close does not close the stream. + resp.GetStream().Err() + select { + case _, ok := <-resp.GetStream().Events(): + if !ok { + t.Fatalf("expect stream not to be closed, but was") + } + default: + } + + resp.GetStream().Close() + <-resp.GetStream().Events() + + if err := resp.GetStream().Err(); err != nil { + t.Errorf("expect no error, %v", err) + } +} + +func TestInvokeModelWithResponseStream_ReadUnknownEvent(t *testing.T) { + expectEvents, eventMsgs := mockInvokeModelWithResponseStreamReadEvents() + var eventOffset int + + unknownEvent := eventstream.Message{ + Headers: eventstream.Headers{ + eventstreamtest.EventMessageTypeHeader, + { + Name: eventstreamapi.EventTypeHeader, + Value: eventstream.StringValue("UnknownEventName"), + }, + }, + Payload: []byte("some unknown event"), + } + + eventMsgs = append(eventMsgs[:eventOffset], + append([]eventstream.Message{unknownEvent}, eventMsgs[eventOffset:]...)...) + + expectEvents = append(expectEvents[:eventOffset], + append([]ResponseStreamEvent{ + &ResponseStreamUnknownEvent{ + Type: "UnknownEventName", + Message: unknownEvent, + }, + }, + expectEvents[eventOffset:]...)...) + + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeModelWithResponseStream(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + defer resp.GetStream().Close() + + var i int + for event := range resp.GetStream().Events() { + if event == nil { + t.Errorf("%d, expect event, got nil", i) + } + if e, a := expectEvents[i], event; !reflect.DeepEqual(e, a) { + t.Errorf("%d, expect %T %v, got %T %v", i, e, e, a, a) + } + i++ + } + + if err := resp.GetStream().Err(); err != nil { + t.Errorf("expect no error, %v", err) + } +} + +func BenchmarkInvokeModelWithResponseStream_Read(b *testing.B) { + _, eventMsgs := mockInvokeModelWithResponseStreamReadEvents() + var buf bytes.Buffer + encoder := eventstream.NewEncoder(&buf) + for _, msg := range eventMsgs { + if err := encoder.Encode(msg); err != nil { + b.Fatalf("failed to encode message, %v", err) + } + } + stream := &loopReader{source: bytes.NewReader(buf.Bytes())} + + sess := unit.Session + svc := New(sess, &aws.Config{ + Endpoint: aws.String("https://example.com"), + DisableParamValidation: aws.Bool(true), + }) + svc.Handlers.Send.Swap(corehandlers.SendHandler.Name, + request.NamedHandler{Name: "mockSend", + Fn: func(r *request.Request) { + r.HTTPResponse = &http.Response{ + Status: "200 OK", + StatusCode: 200, + Header: http.Header{}, + Body: ioutil.NopCloser(stream), + } + }, + }, + ) + + resp, err := svc.InvokeModelWithResponseStream(nil) + if err != nil { + b.Fatalf("failed to create request, %v", err) + } + defer resp.GetStream().Close() + b.ResetTimer() + + for i := 0; i < b.N; i++ { + if err = resp.GetStream().Err(); err != nil { + b.Fatalf("expect no error, got %v", err) + } + event := <-resp.GetStream().Events() + if event == nil { + b.Fatalf("expect event, got nil, %v, %d", resp.GetStream().Err(), i) + } + } +} + +func mockInvokeModelWithResponseStreamReadEvents() ( + []ResponseStreamEvent, + []eventstream.Message, +) { + expectEvents := []ResponseStreamEvent{ + &PayloadPart{ + Bytes: []byte("blob value goes here"), + }, + } + + var marshalers request.HandlerList + marshalers.PushBackNamed(restjson.BuildHandler) + payloadMarshaler := protocol.HandlerPayloadMarshal{ + Marshalers: marshalers, + } + _ = payloadMarshaler + + eventMsgs := []eventstream.Message{ + { + Headers: eventstream.Headers{ + eventstreamtest.EventMessageTypeHeader, + { + Name: eventstreamapi.EventTypeHeader, + Value: eventstream.StringValue("chunk"), + }, + }, + Payload: eventstreamtest.MarshalEventPayload(payloadMarshaler, expectEvents[0]), + }, + } + + return expectEvents, eventMsgs +} +func TestInvokeModelWithResponseStream_ReadException(t *testing.T) { + expectEvents := []ResponseStreamEvent{ + &InternalServerException{ + RespMetadata: protocol.ResponseMetadata{ + StatusCode: 200, + }, + Message_: aws.String("string value goes here"), + }, + } + + var marshalers request.HandlerList + marshalers.PushBackNamed(restjson.BuildHandler) + payloadMarshaler := protocol.HandlerPayloadMarshal{ + Marshalers: marshalers, + } + + eventMsgs := []eventstream.Message{ + { + Headers: eventstream.Headers{ + eventstreamtest.EventExceptionTypeHeader, + { + Name: eventstreamapi.ExceptionTypeHeader, + Value: eventstream.StringValue("internalServerException"), + }, + }, + Payload: eventstreamtest.MarshalEventPayload(payloadMarshaler, expectEvents[0]), + }, + } + + sess, cleanupFn, err := eventstreamtest.SetupEventStreamSession(t, + eventstreamtest.ServeEventStream{ + T: t, + Events: eventMsgs, + }, + true, + ) + if err != nil { + t.Fatalf("expect no error, %v", err) + } + defer cleanupFn() + + svc := New(sess) + resp, err := svc.InvokeModelWithResponseStream(nil) + if err != nil { + t.Fatalf("expect no error got, %v", err) + } + + defer resp.GetStream().Close() + + <-resp.GetStream().Events() + + err = resp.GetStream().Err() + if err == nil { + t.Fatalf("expect err, got none") + } + + expectErr := &InternalServerException{ + RespMetadata: protocol.ResponseMetadata{ + StatusCode: 200, + }, + Message_: aws.String("string value goes here"), + } + aerr, ok := err.(awserr.Error) + if !ok { + t.Errorf("expect exception, got %T, %#v", err, err) + } + if e, a := expectErr.Code(), aerr.Code(); e != a { + t.Errorf("expect %v, got %v", e, a) + } + if e, a := expectErr.Message(), aerr.Message(); e != a { + t.Errorf("expect %v, got %v", e, a) + } + + if e, a := expectErr, aerr; !reflect.DeepEqual(e, a) { + t.Errorf("expect error %+#v, got %+#v", e, a) + } +} + +var _ awserr.Error = (*InternalServerException)(nil) +var _ awserr.Error = (*ModelStreamErrorException)(nil) +var _ awserr.Error = (*ModelTimeoutException)(nil) +var _ awserr.Error = (*ThrottlingException)(nil) +var _ awserr.Error = (*ValidationException)(nil) + +type loopReader struct { + source *bytes.Reader +} + +func (c *loopReader) Read(p []byte) (int, error) { + if c.source.Len() == 0 { + c.source.Seek(0, 0) + } + + return c.source.Read(p) +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/service.go golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/bedrockruntime/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/bedrockruntime/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,109 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package bedrockruntime + +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/restjson" +) + +// BedrockRuntime provides the API operation methods for making requests to +// Amazon Bedrock Runtime. See this package's package overview docs +// for details on the service. +// +// BedrockRuntime methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type BedrockRuntime 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 = "Bedrock Runtime" // Name of service. + EndpointsID = "bedrock-runtime" // ID to lookup a service endpoint with. + ServiceID = "Bedrock Runtime" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the BedrockRuntime 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 BedrockRuntime client from just a session. +// svc := bedrockruntime.New(mySession) +// +// // Create a BedrockRuntime client with additional configuration +// svc := bedrockruntime.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *BedrockRuntime { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "bedrock" + } + 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) *BedrockRuntime { + svc := &BedrockRuntime{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-09-30", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + svc.Handlers.BuildStream.PushBackNamed(restjson.BuildHandler) + svc.Handlers.UnmarshalStream.PushBackNamed(restjson.UnmarshalHandler) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a BedrockRuntime operation and runs any +// custom request initialization. +func (c *BedrockRuntime) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/billingconductor/api.go golang-github-aws-aws-sdk-go-1.48.14/service/billingconductor/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/billingconductor/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/billingconductor/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4688,6 +4688,10 @@ type CreateCustomLineItemInput struct { _ struct{} `type:"structure"` + // The Amazon Web Services account in which this custom line item will be applied + // to. + AccountId *string `type:"string"` + // The Amazon Resource Name (ARN) that references the billing group where the // custom line item applies to. // @@ -4793,6 +4797,12 @@ return nil } +// SetAccountId sets the AccountId field's value. +func (s *CreateCustomLineItemInput) SetAccountId(v string) *CreateCustomLineItemInput { + s.AccountId = &v + return s +} + // SetBillingGroupArn sets the BillingGroupArn field's value. func (s *CreateCustomLineItemInput) SetBillingGroupArn(v string) *CreateCustomLineItemInput { s.BillingGroupArn = &v @@ -5533,6 +5543,10 @@ type CustomLineItemListElement struct { _ struct{} `type:"structure"` + // The Amazon Web Services account in which this custom line item will be applied + // to. + AccountId *string `type:"string"` + // The Amazon Resource Names (ARNs) for custom line items. Arn *string `type:"string"` @@ -5594,6 +5608,12 @@ return s.String() } +// SetAccountId sets the AccountId field's value. +func (s *CustomLineItemListElement) SetAccountId(v string) *CustomLineItemListElement { + s.AccountId = &v + return s +} + // SetArn sets the Arn field's value. func (s *CustomLineItemListElement) SetArn(v string) *CustomLineItemListElement { s.Arn = &v @@ -5716,6 +5736,10 @@ type CustomLineItemVersionListElement struct { _ struct{} `type:"structure"` + // The Amazon Web Services account in which this custom line item will be applied + // to. + AccountId *string `type:"string"` + // A list of custom line item Amazon Resource Names (ARNs) to retrieve information. Arn *string `type:"string"` @@ -5783,6 +5807,12 @@ return s.String() } +// SetAccountId sets the AccountId field's value. +func (s *CustomLineItemVersionListElement) SetAccountId(v string) *CustomLineItemVersionListElement { + s.AccountId = &v + return s +} + // SetArn sets the Arn field's value. func (s *CustomLineItemVersionListElement) SetArn(v string) *CustomLineItemVersionListElement { s.Arn = &v @@ -7516,6 +7546,10 @@ type ListCustomLineItemsFilter struct { _ struct{} `type:"structure"` + // The Amazon Web Services accounts in which this custom line item will be applied + // to. + AccountIds []*string `min:"1" type:"list"` + // A list of custom line item ARNs to retrieve information. Arns []*string `min:"1" type:"list"` @@ -7547,6 +7581,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ListCustomLineItemsFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCustomLineItemsFilter"} + if s.AccountIds != nil && len(s.AccountIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountIds", 1)) + } if s.Arns != nil && len(s.Arns) < 1 { invalidParams.Add(request.NewErrParamMinLen("Arns", 1)) } @@ -7563,6 +7600,12 @@ return nil } +// SetAccountIds sets the AccountIds field's value. +func (s *ListCustomLineItemsFilter) SetAccountIds(v []*string) *ListCustomLineItemsFilter { + s.AccountIds = v + return s +} + // SetArns sets the Arns field's value. func (s *ListCustomLineItemsFilter) SetArns(v []*string) *ListCustomLineItemsFilter { s.Arns = v @@ -10963,6 +11006,9 @@ // ValidationExceptionReasonCannotDeleteAutoAssociateBillingGroup is a ValidationExceptionReason enum value ValidationExceptionReasonCannotDeleteAutoAssociateBillingGroup = "CANNOT_DELETE_AUTO_ASSOCIATE_BILLING_GROUP" + + // ValidationExceptionReasonIllegalAccountId is a ValidationExceptionReason enum value + ValidationExceptionReasonIllegalAccountId = "ILLEGAL_ACCOUNT_ID" ) // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum @@ -11027,5 +11073,6 @@ ValidationExceptionReasonInvalidFilter, ValidationExceptionReasonTooManyAutoAssociateBillingGroups, ValidationExceptionReasonCannotDeleteAutoAssociateBillingGroup, + ValidationExceptionReasonIllegalAccountId, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/braket/api.go golang-github-aws-aws-sdk-go-1.48.14/service/braket/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/braket/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/braket/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1508,6 +1508,67 @@ return s } +// The Amazon Braket resource and the association type. +type Association struct { + _ struct{} `type:"structure"` + + // The Amazon Braket resource arn. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The association type for the specified Amazon Braket resource arn. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"AssociationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Association) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Association) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Association) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Association"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *Association) SetArn(v string) *Association { + s.Arn = &v + return s +} + +// SetType sets the Type field's value. +func (s *Association) SetType(v string) *Association { + s.Type = &v + return s +} + type CancelJobInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -1610,7 +1671,7 @@ // The ARN of the task to cancel. // // QuantumTaskArn is a required field - QuantumTaskArn *string `location:"uri" locationName:"quantumTaskArn" min:"1" type:"string" required:"true"` + QuantumTaskArn *string `location:"uri" locationName:"quantumTaskArn" type:"string" required:"true"` } // String returns the string representation. @@ -1673,7 +1734,7 @@ // The ARN of the task. // // QuantumTaskArn is a required field - QuantumTaskArn *string `locationName:"quantumTaskArn" min:"1" type:"string" required:"true"` + QuantumTaskArn *string `locationName:"quantumTaskArn" type:"string" required:"true"` } // String returns the string representation. @@ -1830,6 +1891,9 @@ // AlgorithmSpecification is a required field AlgorithmSpecification *AlgorithmSpecification `locationName:"algorithmSpecification" type:"structure" required:"true"` + // The list of Amazon Braket resources associated with the hybrid job. + Associations []*Association `locationName:"associations" type:"list"` + // Information about the output locations for job checkpoint data. CheckpointConfig *JobCheckpointConfig `locationName:"checkpointConfig" type:"structure"` @@ -1935,6 +1999,16 @@ invalidParams.AddNested("AlgorithmSpecification", err.(request.ErrInvalidParams)) } } + if s.Associations != nil { + for i, v := range s.Associations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Associations", i), err.(request.ErrInvalidParams)) + } + } + } if s.CheckpointConfig != nil { if err := s.CheckpointConfig.Validate(); err != nil { invalidParams.AddNested("CheckpointConfig", err.(request.ErrInvalidParams)) @@ -1983,6 +2057,12 @@ return s } +// SetAssociations sets the Associations field's value. +func (s *CreateJobInput) SetAssociations(v []*Association) *CreateJobInput { + s.Associations = v + return s +} + // SetCheckpointConfig sets the CheckpointConfig field's value. func (s *CreateJobInput) SetCheckpointConfig(v *JobCheckpointConfig) *CreateJobInput { s.CheckpointConfig = v @@ -2090,6 +2170,9 @@ // Action is a required field Action aws.JSONValue `locationName:"action" type:"jsonvalue" required:"true"` + // The list of Amazon Braket resources associated with the quantum task. + Associations []*Association `locationName:"associations" type:"list"` + // The client token associated with the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` @@ -2174,6 +2257,16 @@ if s.Shots == nil { invalidParams.Add(request.NewErrParamRequired("Shots")) } + if s.Associations != nil { + for i, v := range s.Associations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Associations", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -2187,6 +2280,12 @@ return s } +// SetAssociations sets the Associations field's value. +func (s *CreateQuantumTaskInput) SetAssociations(v []*Association) *CreateQuantumTaskInput { + s.Associations = v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *CreateQuantumTaskInput) SetClientToken(v string) *CreateQuantumTaskInput { s.ClientToken = &v @@ -2241,7 +2340,7 @@ // The ARN of the task created by the request. // // QuantumTaskArn is a required field - QuantumTaskArn *string `locationName:"quantumTaskArn" min:"1" type:"string" required:"true"` + QuantumTaskArn *string `locationName:"quantumTaskArn" type:"string" required:"true"` } // String returns the string representation. @@ -2437,6 +2536,61 @@ return s.RespMetadata.RequestID } +// Information about tasks and jobs queued on a device. +type DeviceQueueInfo struct { + _ struct{} `type:"structure"` + + // The name of the queue. + // + // Queue is a required field + Queue *string `locationName:"queue" type:"string" required:"true" enum:"QueueName"` + + // Optional. Specifies the priority of the queue. Tasks in a priority queue + // are processed before the tasks in a normal queue. + QueuePriority *string `locationName:"queuePriority" type:"string" enum:"QueuePriority"` + + // The number of jobs or tasks in the queue for a given device. + // + // QueueSize is a required field + QueueSize *string `locationName:"queueSize" 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 DeviceQueueInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeviceQueueInfo) GoString() string { + return s.String() +} + +// SetQueue sets the Queue field's value. +func (s *DeviceQueueInfo) SetQueue(v string) *DeviceQueueInfo { + s.Queue = &v + return s +} + +// SetQueuePriority sets the QueuePriority field's value. +func (s *DeviceQueueInfo) SetQueuePriority(v string) *DeviceQueueInfo { + s.QueuePriority = &v + return s +} + +// SetQueueSize sets the QueueSize field's value. +func (s *DeviceQueueInfo) SetQueueSize(v string) *DeviceQueueInfo { + s.QueueSize = &v + return s +} + // The specified device has been retired. type DeviceRetiredException struct { _ struct{} `type:"structure"` @@ -2646,6 +2800,9 @@ // DeviceName is a required field DeviceName *string `locationName:"deviceName" type:"string" required:"true"` + // List of information about tasks and jobs queued on a device. + DeviceQueueInfo []*DeviceQueueInfo `locationName:"deviceQueueInfo" type:"list"` + // The status of the device. // // DeviceStatus is a required field @@ -2698,6 +2855,12 @@ return s } +// SetDeviceQueueInfo sets the DeviceQueueInfo field's value. +func (s *GetDeviceOutput) SetDeviceQueueInfo(v []*DeviceQueueInfo) *GetDeviceOutput { + s.DeviceQueueInfo = v + return s +} + // SetDeviceStatus sets the DeviceStatus field's value. func (s *GetDeviceOutput) SetDeviceStatus(v string) *GetDeviceOutput { s.DeviceStatus = &v @@ -2719,6 +2882,9 @@ type GetJobInput struct { _ struct{} `type:"structure" nopayload:"true"` + // A list of attributes to return information for. + AdditionalAttributeNames []*string `location:"querystring" locationName:"additionalAttributeNames" type:"list" enum:"HybridJobAdditionalAttributeName"` + // The ARN of the job to retrieve. // // JobArn is a required field @@ -2759,6 +2925,12 @@ return nil } +// SetAdditionalAttributeNames sets the AdditionalAttributeNames field's value. +func (s *GetJobInput) SetAdditionalAttributeNames(v []*string) *GetJobInput { + s.AdditionalAttributeNames = v + return s +} + // SetJobArn sets the JobArn field's value. func (s *GetJobInput) SetJobArn(v string) *GetJobInput { s.JobArn = &v @@ -2775,6 +2947,9 @@ // AlgorithmSpecification is a required field AlgorithmSpecification *AlgorithmSpecification `locationName:"algorithmSpecification" type:"structure" required:"true"` + // The list of Amazon Braket resources associated with the hybrid job. + Associations []*Association `locationName:"associations" type:"list"` + // The billable time the Amazon Braket job used to complete. BillableDuration *int64 `locationName:"billableDuration" type:"integer"` @@ -2831,6 +3006,10 @@ // OutputDataConfig is a required field OutputDataConfig *JobOutputDataConfig `locationName:"outputDataConfig" type:"structure" required:"true"` + // Queue information for the requested job. Only returned if QueueInfo is specified + // in the additionalAttributeNames" field in the GetJob API request. + QueueInfo *HybridJobQueueInfo `locationName:"queueInfo" type:"structure"` + // The Amazon Resource Name (ARN) of an IAM role that Amazon Braket can assume // to perform tasks on behalf of a user. It can access user resources, run an // Amazon Braket job container on behalf of user, and output resources to the @@ -2879,6 +3058,12 @@ return s } +// SetAssociations sets the Associations field's value. +func (s *GetJobOutput) SetAssociations(v []*Association) *GetJobOutput { + s.Associations = v + return s +} + // SetBillableDuration sets the BillableDuration field's value. func (s *GetJobOutput) SetBillableDuration(v int64) *GetJobOutput { s.BillableDuration = &v @@ -2957,6 +3142,12 @@ return s } +// SetQueueInfo sets the QueueInfo field's value. +func (s *GetJobOutput) SetQueueInfo(v *HybridJobQueueInfo) *GetJobOutput { + s.QueueInfo = v + return s +} + // SetRoleArn sets the RoleArn field's value. func (s *GetJobOutput) SetRoleArn(v string) *GetJobOutput { s.RoleArn = &v @@ -2990,10 +3181,13 @@ type GetQuantumTaskInput struct { _ struct{} `type:"structure" nopayload:"true"` - // the ARN of the task to retrieve. + // A list of attributes to return information for. + AdditionalAttributeNames []*string `location:"querystring" locationName:"additionalAttributeNames" type:"list" enum:"QuantumTaskAdditionalAttributeName"` + + // The ARN of the task to retrieve. // // QuantumTaskArn is a required field - QuantumTaskArn *string `location:"uri" locationName:"quantumTaskArn" min:"1" type:"string" required:"true"` + QuantumTaskArn *string `location:"uri" locationName:"quantumTaskArn" type:"string" required:"true"` } // String returns the string representation. @@ -3030,6 +3224,12 @@ return nil } +// SetAdditionalAttributeNames sets the AdditionalAttributeNames field's value. +func (s *GetQuantumTaskInput) SetAdditionalAttributeNames(v []*string) *GetQuantumTaskInput { + s.AdditionalAttributeNames = v + return s +} + // SetQuantumTaskArn sets the QuantumTaskArn field's value. func (s *GetQuantumTaskInput) SetQuantumTaskArn(v string) *GetQuantumTaskInput { s.QuantumTaskArn = &v @@ -3039,6 +3239,9 @@ type GetQuantumTaskOutput struct { _ struct{} `type:"structure"` + // The list of Amazon Braket resources associated with the quantum task. + Associations []*Association `locationName:"associations" type:"list"` + // The time at which the task was created. // // CreatedAt is a required field @@ -3076,7 +3279,12 @@ // The ARN of the task. // // QuantumTaskArn is a required field - QuantumTaskArn *string `locationName:"quantumTaskArn" min:"1" type:"string" required:"true"` + QuantumTaskArn *string `locationName:"quantumTaskArn" type:"string" required:"true"` + + // Queue information for the requested quantum task. Only returned if QueueInfo + // is specified in the additionalAttributeNames" field in the GetQuantumTask + // API request. + QueueInfo *QuantumTaskQueueInfo `locationName:"queueInfo" type:"structure"` // The number of shots used in the task. // @@ -3110,6 +3318,12 @@ return s.String() } +// SetAssociations sets the Associations field's value. +func (s *GetQuantumTaskOutput) SetAssociations(v []*Association) *GetQuantumTaskOutput { + s.Associations = v + return s +} + // SetCreatedAt sets the CreatedAt field's value. func (s *GetQuantumTaskOutput) SetCreatedAt(v time.Time) *GetQuantumTaskOutput { s.CreatedAt = &v @@ -3164,6 +3378,12 @@ return s } +// SetQueueInfo sets the QueueInfo field's value. +func (s *GetQuantumTaskOutput) SetQueueInfo(v *QuantumTaskQueueInfo) *GetQuantumTaskOutput { + s.QueueInfo = v + return s +} + // SetShots sets the Shots field's value. func (s *GetQuantumTaskOutput) SetShots(v int64) *GetQuantumTaskOutput { s.Shots = &v @@ -3182,6 +3402,62 @@ return s } +// Information about the queue for a specified job. +type HybridJobQueueInfo struct { + _ struct{} `type:"structure"` + + // Optional. Provides more information about the queue position. For example, + // if the job is complete and no longer in the queue, the message field contains + // that information. + Message *string `locationName:"message" type:"string"` + + // Current position of the job in the jobs queue. + // + // Position is a required field + Position *string `locationName:"position" type:"string" required:"true"` + + // The name of the queue. + // + // Queue is a required field + Queue *string `locationName:"queue" type:"string" required:"true" enum:"QueueName"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s HybridJobQueueInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s HybridJobQueueInfo) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *HybridJobQueueInfo) SetMessage(v string) *HybridJobQueueInfo { + s.Message = &v + return s +} + +// SetPosition sets the Position field's value. +func (s *HybridJobQueueInfo) SetPosition(v string) *HybridJobQueueInfo { + s.Position = &v + return s +} + +// SetQueue sets the Queue field's value. +func (s *HybridJobQueueInfo) SetQueue(v string) *HybridJobQueueInfo { + s.Queue = &v + return s +} + // A list of parameters that specify the input channels, type of input data, // and where it is located. type InputFileConfig struct { @@ -3481,7 +3757,7 @@ // job. Message *string `locationName:"message" type:"string"` - // TThe type of event that occurred related to the Amazon Braket job. + // The type of event that occurred related to the Amazon Braket job. TimeOfEvent *time.Time `locationName:"timeOfEvent" type:"timestamp" timestampFormat:"iso8601"` } @@ -3815,6 +4091,72 @@ return s } +// Information about the queue for the specified quantum task. +type QuantumTaskQueueInfo struct { + _ struct{} `type:"structure"` + + // Optional. Provides more information about the queue position. For example, + // if the task is complete and no longer in the queue, the message field contains + // that information. + Message *string `locationName:"message" type:"string"` + + // Current position of the task in the quantum tasks queue. + // + // Position is a required field + Position *string `locationName:"position" type:"string" required:"true"` + + // The name of the queue. + // + // Queue is a required field + Queue *string `locationName:"queue" type:"string" required:"true" enum:"QueueName"` + + // Optional. Specifies the priority of the queue. Quantum tasks in a priority + // queue are processed before the tasks in a normal queue. + QueuePriority *string `locationName:"queuePriority" type:"string" enum:"QueuePriority"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuantumTaskQueueInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuantumTaskQueueInfo) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *QuantumTaskQueueInfo) SetMessage(v string) *QuantumTaskQueueInfo { + s.Message = &v + return s +} + +// SetPosition sets the Position field's value. +func (s *QuantumTaskQueueInfo) SetPosition(v string) *QuantumTaskQueueInfo { + s.Position = &v + return s +} + +// SetQueue sets the Queue field's value. +func (s *QuantumTaskQueueInfo) SetQueue(v string) *QuantumTaskQueueInfo { + s.Queue = &v + return s +} + +// SetQueuePriority sets the QueuePriority field's value. +func (s *QuantumTaskQueueInfo) SetQueuePriority(v string) *QuantumTaskQueueInfo { + s.QueuePriority = &v + return s +} + // Includes information about a quantum task. type QuantumTaskSummary struct { _ struct{} `type:"structure"` @@ -3845,7 +4187,7 @@ // The ARN of the task. // // QuantumTaskArn is a required field - QuantumTaskArn *string `locationName:"quantumTaskArn" min:"1" type:"string" required:"true"` + QuantumTaskArn *string `locationName:"quantumTaskArn" type:"string" required:"true"` // The shots used for the task. // @@ -5083,6 +5425,18 @@ } const ( + // AssociationTypeReservationTimeWindowArn is a AssociationType enum value + AssociationTypeReservationTimeWindowArn = "RESERVATION_TIME_WINDOW_ARN" +) + +// AssociationType_Values returns all elements of the AssociationType enum +func AssociationType_Values() []string { + return []string{ + AssociationTypeReservationTimeWindowArn, + } +} + +const ( // CancellationStatusCancelling is a CancellationStatus enum value CancellationStatusCancelling = "CANCELLING" @@ -5151,6 +5505,18 @@ } const ( + // HybridJobAdditionalAttributeNameQueueInfo is a HybridJobAdditionalAttributeName enum value + HybridJobAdditionalAttributeNameQueueInfo = "QueueInfo" +) + +// HybridJobAdditionalAttributeName_Values returns all elements of the HybridJobAdditionalAttributeName enum +func HybridJobAdditionalAttributeName_Values() []string { + return []string{ + HybridJobAdditionalAttributeNameQueueInfo, + } +} + +const ( // InstanceTypeMlM4Xlarge is a InstanceType enum value InstanceTypeMlM4Xlarge = "ml.m4.xlarge" @@ -5399,6 +5765,18 @@ } const ( + // QuantumTaskAdditionalAttributeNameQueueInfo is a QuantumTaskAdditionalAttributeName enum value + QuantumTaskAdditionalAttributeNameQueueInfo = "QueueInfo" +) + +// QuantumTaskAdditionalAttributeName_Values returns all elements of the QuantumTaskAdditionalAttributeName enum +func QuantumTaskAdditionalAttributeName_Values() []string { + return []string{ + QuantumTaskAdditionalAttributeNameQueueInfo, + } +} + +const ( // QuantumTaskStatusCreated is a QuantumTaskStatus enum value QuantumTaskStatusCreated = "CREATED" @@ -5434,6 +5812,38 @@ } } +const ( + // QueueNameQuantumTasksQueue is a QueueName enum value + QueueNameQuantumTasksQueue = "QUANTUM_TASKS_QUEUE" + + // QueueNameJobsQueue is a QueueName enum value + QueueNameJobsQueue = "JOBS_QUEUE" +) + +// QueueName_Values returns all elements of the QueueName enum +func QueueName_Values() []string { + return []string{ + QueueNameQuantumTasksQueue, + QueueNameJobsQueue, + } +} + +const ( + // QueuePriorityNormal is a QueuePriority enum value + QueuePriorityNormal = "Normal" + + // QueuePriorityPriority is a QueuePriority enum value + QueuePriorityPriority = "Priority" +) + +// QueuePriority_Values returns all elements of the QueuePriority enum +func QueuePriority_Values() []string { + return []string{ + QueuePriorityNormal, + QueuePriorityPriority, + } +} + const ( // SearchJobsFilterOperatorLt is a SearchJobsFilterOperator enum value SearchJobsFilterOperatorLt = "LT" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/budgets/api.go golang-github-aws-aws-sdk-go-1.48.14/service/budgets/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/budgets/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/budgets/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -5610,7 +5610,8 @@ // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` - // An integer that shows how many budget name entries a paginated response contains. + // An integer that represents how many budgets a paginated response contains. + // The default is 50. MaxResults *int64 `min:"1" type:"integer"` // A generic string. @@ -5892,14 +5893,13 @@ type DescribeBudgetsInput struct { _ struct{} `type:"structure"` - // The accountId that is associated with the budgets that you want descriptions - // of. + // The accountId that is associated with the budgets that you want to describe. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` - // An optional integer that represents how many entries a paginated response - // contains. The maximum is 100. + // An integer that represents how many budgets a paginated response contains. + // The default is 100. MaxResults *int64 `min:"1" type:"integer"` // The pagination token that you include in your request to indicate the next @@ -6020,7 +6020,7 @@ BudgetName *string `min:"1" type:"string" required:"true"` // An optional integer that represents how many entries a paginated response - // contains. The maximum is 100. + // contains. MaxResults *int64 `min:"1" type:"integer"` // The pagination token that you include in your request to indicate the next @@ -6153,7 +6153,7 @@ BudgetName *string `min:"1" type:"string" required:"true"` // An optional integer that represents how many entries a paginated response - // contains. The maximum is 100. + // contains. MaxResults *int64 `min:"1" type:"integer"` // The pagination token that you include in your request to indicate the next @@ -7351,11 +7351,17 @@ // The amount of cost or usage that's measured for a budget. // -// For example, a Spend for 3 GB of S3 usage has the following parameters: +// Cost example: A Spend for 3 USD of costs has the following parameters: +// +// - An Amount of 3 +// +// - A Unit of USD +// +// Usage example: A Spend for 3 GB of S3 usage has the following parameters: // // - An Amount of 3 // -// - A unit of GB +// - A Unit of GB type Spend struct { _ struct{} `type:"structure"` @@ -7366,7 +7372,7 @@ Amount *string `min:"1" type:"string" required:"true"` // The unit of measurement that's used for the budget forecast, actual spend, - // or budget threshold, such as USD or GBP. + // or budget threshold. // // Unit is a required field Unit *string `min:"1" type:"string" required:"true"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/chimesdkmediapipelines/api.go golang-github-aws-aws-sdk-go-1.48.14/service/chimesdkmediapipelines/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/chimesdkmediapipelines/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/chimesdkmediapipelines/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -505,6 +505,207 @@ return out, req.Send() } +const opCreateMediaPipelineKinesisVideoStreamPool = "CreateMediaPipelineKinesisVideoStreamPool" + +// CreateMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the CreateMediaPipelineKinesisVideoStreamPool operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateMediaPipelineKinesisVideoStreamPool for more information on using the CreateMediaPipelineKinesisVideoStreamPool +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.CreateMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) CreateMediaPipelineKinesisVideoStreamPoolRequest(input *CreateMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *CreateMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opCreateMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "POST", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools", + } + + if input == nil { + input = &CreateMediaPipelineKinesisVideoStreamPoolInput{} + } + + output = &CreateMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Creates an Kinesis video stream pool for the media pipeline. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Media Pipelines's +// API operation CreateMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ResourceLimitExceededException +// The request exceeds the resource limit. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) CreateMediaPipelineKinesisVideoStreamPool(input *CreateMediaPipelineKinesisVideoStreamPoolInput) (*CreateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.CreateMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// CreateMediaPipelineKinesisVideoStreamPoolWithContext is the same as CreateMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See CreateMediaPipelineKinesisVideoStreamPool for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) CreateMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *CreateMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*CreateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.CreateMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateMediaStreamPipeline = "CreateMediaStreamPipeline" + +// CreateMediaStreamPipelineRequest generates a "aws/request.Request" representing the +// client's request for the CreateMediaStreamPipeline operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateMediaStreamPipeline for more information on using the CreateMediaStreamPipeline +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateMediaStreamPipelineRequest method. +// req, resp := client.CreateMediaStreamPipelineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaStreamPipeline +func (c *ChimeSDKMediaPipelines) CreateMediaStreamPipelineRequest(input *CreateMediaStreamPipelineInput) (req *request.Request, output *CreateMediaStreamPipelineOutput) { + op := &request.Operation{ + Name: opCreateMediaStreamPipeline, + HTTPMethod: "POST", + HTTPPath: "/sdk-media-stream-pipelines", + } + + if input == nil { + input = &CreateMediaStreamPipelineInput{} + } + + output = &CreateMediaStreamPipelineOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateMediaStreamPipeline API operation for Amazon Chime SDK Media Pipelines. +// +// Creates a streaming media pipeline. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Media Pipelines's +// API operation CreateMediaStreamPipeline for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ResourceLimitExceededException +// The request exceeds the resource limit. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaStreamPipeline +func (c *ChimeSDKMediaPipelines) CreateMediaStreamPipeline(input *CreateMediaStreamPipelineInput) (*CreateMediaStreamPipelineOutput, error) { + req, out := c.CreateMediaStreamPipelineRequest(input) + return out, req.Send() +} + +// CreateMediaStreamPipelineWithContext is the same as CreateMediaStreamPipeline with the addition of +// the ability to pass a context and additional request options. +// +// See CreateMediaStreamPipeline for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) CreateMediaStreamPipelineWithContext(ctx aws.Context, input *CreateMediaStreamPipelineInput, opts ...request.Option) (*CreateMediaStreamPipelineOutput, error) { + req, out := c.CreateMediaStreamPipelineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMediaCapturePipeline = "DeleteMediaCapturePipeline" // DeleteMediaCapturePipelineRequest generates a "aws/request.Request" representing the @@ -807,6 +1008,108 @@ return out, req.Send() } +const opDeleteMediaPipelineKinesisVideoStreamPool = "DeleteMediaPipelineKinesisVideoStreamPool" + +// DeleteMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the DeleteMediaPipelineKinesisVideoStreamPool operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteMediaPipelineKinesisVideoStreamPool for more information on using the DeleteMediaPipelineKinesisVideoStreamPool +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.DeleteMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/DeleteMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) DeleteMediaPipelineKinesisVideoStreamPoolRequest(input *DeleteMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *DeleteMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opDeleteMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "DELETE", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools/{identifier}", + } + + if input == nil { + input = &DeleteMediaPipelineKinesisVideoStreamPoolInput{} + } + + output = &DeleteMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Deletes an Kinesis video stream pool. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Media Pipelines's +// API operation DeleteMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/DeleteMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) DeleteMediaPipelineKinesisVideoStreamPool(input *DeleteMediaPipelineKinesisVideoStreamPoolInput) (*DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.DeleteMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// DeleteMediaPipelineKinesisVideoStreamPoolWithContext is the same as DeleteMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteMediaPipelineKinesisVideoStreamPool for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) DeleteMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *DeleteMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.DeleteMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMediaCapturePipeline = "GetMediaCapturePipeline" // GetMediaCapturePipelineRequest generates a "aws/request.Request" representing the @@ -1098,6 +1401,103 @@ return out, req.Send() } +const opGetMediaPipelineKinesisVideoStreamPool = "GetMediaPipelineKinesisVideoStreamPool" + +// GetMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the GetMediaPipelineKinesisVideoStreamPool operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetMediaPipelineKinesisVideoStreamPool for more information on using the GetMediaPipelineKinesisVideoStreamPool +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.GetMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/GetMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) GetMediaPipelineKinesisVideoStreamPoolRequest(input *GetMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *GetMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opGetMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "GET", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools/{identifier}", + } + + if input == nil { + input = &GetMediaPipelineKinesisVideoStreamPoolInput{} + } + + output = &GetMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Gets an Kinesis video stream pool. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Media Pipelines's +// API operation GetMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/GetMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) GetMediaPipelineKinesisVideoStreamPool(input *GetMediaPipelineKinesisVideoStreamPoolInput) (*GetMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.GetMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// GetMediaPipelineKinesisVideoStreamPoolWithContext is the same as GetMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See GetMediaPipelineKinesisVideoStreamPool for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) GetMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *GetMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*GetMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.GetMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetSpeakerSearchTask = "GetSpeakerSearchTask" // GetSpeakerSearchTaskRequest generates a "aws/request.Request" representing the @@ -1600,6 +2000,160 @@ return p.Err() } +const opListMediaPipelineKinesisVideoStreamPools = "ListMediaPipelineKinesisVideoStreamPools" + +// ListMediaPipelineKinesisVideoStreamPoolsRequest generates a "aws/request.Request" representing the +// client's request for the ListMediaPipelineKinesisVideoStreamPools operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListMediaPipelineKinesisVideoStreamPools for more information on using the ListMediaPipelineKinesisVideoStreamPools +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListMediaPipelineKinesisVideoStreamPoolsRequest method. +// req, resp := client.ListMediaPipelineKinesisVideoStreamPoolsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/ListMediaPipelineKinesisVideoStreamPools +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsRequest(input *ListMediaPipelineKinesisVideoStreamPoolsInput) (req *request.Request, output *ListMediaPipelineKinesisVideoStreamPoolsOutput) { + op := &request.Operation{ + Name: opListMediaPipelineKinesisVideoStreamPools, + HTTPMethod: "GET", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMediaPipelineKinesisVideoStreamPoolsInput{} + } + + output = &ListMediaPipelineKinesisVideoStreamPoolsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMediaPipelineKinesisVideoStreamPools API operation for Amazon Chime SDK Media Pipelines. +// +// Lists the video stream pools in the media pipeline. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Media Pipelines's +// API operation ListMediaPipelineKinesisVideoStreamPools for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ResourceLimitExceededException +// The request exceeds the resource limit. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/ListMediaPipelineKinesisVideoStreamPools +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPools(input *ListMediaPipelineKinesisVideoStreamPoolsInput) (*ListMediaPipelineKinesisVideoStreamPoolsOutput, error) { + req, out := c.ListMediaPipelineKinesisVideoStreamPoolsRequest(input) + return out, req.Send() +} + +// ListMediaPipelineKinesisVideoStreamPoolsWithContext is the same as ListMediaPipelineKinesisVideoStreamPools with the addition of +// the ability to pass a context and additional request options. +// +// See ListMediaPipelineKinesisVideoStreamPools for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsWithContext(ctx aws.Context, input *ListMediaPipelineKinesisVideoStreamPoolsInput, opts ...request.Option) (*ListMediaPipelineKinesisVideoStreamPoolsOutput, error) { + req, out := c.ListMediaPipelineKinesisVideoStreamPoolsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMediaPipelineKinesisVideoStreamPoolsPages iterates over the pages of a ListMediaPipelineKinesisVideoStreamPools operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMediaPipelineKinesisVideoStreamPools method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListMediaPipelineKinesisVideoStreamPools operation. +// pageNum := 0 +// err := client.ListMediaPipelineKinesisVideoStreamPoolsPages(params, +// func(page *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsPages(input *ListMediaPipelineKinesisVideoStreamPoolsInput, fn func(*ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool) error { + return c.ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext same as ListMediaPipelineKinesisVideoStreamPoolsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext(ctx aws.Context, input *ListMediaPipelineKinesisVideoStreamPoolsInput, fn func(*ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMediaPipelineKinesisVideoStreamPoolsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMediaPipelineKinesisVideoStreamPoolsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMediaPipelineKinesisVideoStreamPoolsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMediaPipelines = "ListMediaPipelines" // ListMediaPipelinesRequest generates a "aws/request.Request" representing the @@ -2669,6 +3223,107 @@ return out, req.Send() } +const opUpdateMediaPipelineKinesisVideoStreamPool = "UpdateMediaPipelineKinesisVideoStreamPool" + +// UpdateMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the UpdateMediaPipelineKinesisVideoStreamPool operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// 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 UpdateMediaPipelineKinesisVideoStreamPool for more information on using the UpdateMediaPipelineKinesisVideoStreamPool +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.UpdateMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/UpdateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) UpdateMediaPipelineKinesisVideoStreamPoolRequest(input *UpdateMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *UpdateMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opUpdateMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "PUT", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools/{identifier}", + } + + if input == nil { + input = &UpdateMediaPipelineKinesisVideoStreamPoolInput{} + } + + output = &UpdateMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Updates an Kinesis video stream pool in a media pipeline. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Media Pipelines's +// API operation UpdateMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/UpdateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) UpdateMediaPipelineKinesisVideoStreamPool(input *UpdateMediaPipelineKinesisVideoStreamPoolInput) (*UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.UpdateMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// UpdateMediaPipelineKinesisVideoStreamPoolWithContext is the same as UpdateMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateMediaPipelineKinesisVideoStreamPool for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMediaPipelines) UpdateMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *UpdateMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.UpdateMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // Defines the configuration for an ActiveSpeakerOnly video tile. type ActiveSpeakerOnlyConfiguration struct { _ struct{} `type:"structure"` @@ -5225,6 +5880,298 @@ return s } +type CreateMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure"` + + // The token assigned to the client making the request. + // + // ClientRequestToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateMediaPipelineKinesisVideoStreamPoolInput's + // String and GoString methods. + ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` + + // The name of the video stream pool. + // + // PoolName is a required field + PoolName *string `min:"1" type:"string" required:"true"` + + // The configuration settings for the video stream. + // + // StreamConfiguration is a required field + StreamConfiguration *KinesisVideoStreamConfiguration `type:"structure" required:"true"` + + // The tags assigned to the video stream pool. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMediaPipelineKinesisVideoStreamPoolInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) + } + if s.PoolName == nil { + invalidParams.Add(request.NewErrParamRequired("PoolName")) + } + if s.PoolName != nil && len(*s.PoolName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PoolName", 1)) + } + if s.StreamConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("StreamConfiguration")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.StreamConfiguration != nil { + if err := s.StreamConfiguration.Validate(); err != nil { + invalidParams.AddNested("StreamConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetClientRequestToken(v string) *CreateMediaPipelineKinesisVideoStreamPoolInput { + s.ClientRequestToken = &v + return s +} + +// SetPoolName sets the PoolName field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetPoolName(v string) *CreateMediaPipelineKinesisVideoStreamPoolInput { + s.PoolName = &v + return s +} + +// SetStreamConfiguration sets the StreamConfiguration field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetStreamConfiguration(v *KinesisVideoStreamConfiguration) *CreateMediaPipelineKinesisVideoStreamPoolInput { + s.StreamConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetTags(v []*Tag) *CreateMediaPipelineKinesisVideoStreamPoolInput { + s.Tags = v + return s +} + +type CreateMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` + + // The configuration for the Kinesis video stream pool. + KinesisVideoStreamPoolConfiguration *KinesisVideoStreamPoolConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + +// SetKinesisVideoStreamPoolConfiguration sets the KinesisVideoStreamPoolConfiguration field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolOutput) SetKinesisVideoStreamPoolConfiguration(v *KinesisVideoStreamPoolConfiguration) *CreateMediaPipelineKinesisVideoStreamPoolOutput { + s.KinesisVideoStreamPoolConfiguration = v + return s +} + +type CreateMediaStreamPipelineInput struct { + _ struct{} `type:"structure"` + + // The token assigned to the client making the request. + // + // ClientRequestToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateMediaStreamPipelineInput's + // String and GoString methods. + ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` + + // The data sink for the media pipeline. + // + // Sinks is a required field + Sinks []*MediaStreamSink `min:"1" type:"list" required:"true"` + + // The data sources for the media pipeline. + // + // Sources is a required field + Sources []*MediaStreamSource `min:"1" type:"list" required:"true"` + + // The tags assigned to the media pipeline. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaStreamPipelineInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaStreamPipelineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMediaStreamPipelineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMediaStreamPipelineInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) + } + if s.Sinks == nil { + invalidParams.Add(request.NewErrParamRequired("Sinks")) + } + if s.Sinks != nil && len(s.Sinks) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sinks", 1)) + } + if s.Sources == nil { + invalidParams.Add(request.NewErrParamRequired("Sources")) + } + if s.Sources != nil && len(s.Sources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sources", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Sinks != nil { + for i, v := range s.Sinks { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sinks", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Sources != nil { + for i, v := range s.Sources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateMediaStreamPipelineInput) SetClientRequestToken(v string) *CreateMediaStreamPipelineInput { + s.ClientRequestToken = &v + return s +} + +// SetSinks sets the Sinks field's value. +func (s *CreateMediaStreamPipelineInput) SetSinks(v []*MediaStreamSink) *CreateMediaStreamPipelineInput { + s.Sinks = v + return s +} + +// SetSources sets the Sources field's value. +func (s *CreateMediaStreamPipelineInput) SetSources(v []*MediaStreamSource) *CreateMediaStreamPipelineInput { + s.Sources = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateMediaStreamPipelineInput) SetTags(v []*Tag) *CreateMediaStreamPipelineInput { + s.Tags = v + return s +} + +type CreateMediaStreamPipelineOutput struct { + _ struct{} `type:"structure"` + + // The requested media pipeline. + MediaStreamPipeline *MediaStreamPipeline `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaStreamPipelineOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaStreamPipelineOutput) GoString() string { + return s.String() +} + +// SetMediaStreamPipeline sets the MediaStreamPipeline field's value. +func (s *CreateMediaStreamPipelineOutput) SetMediaStreamPipeline(v *MediaStreamPipeline) *CreateMediaStreamPipelineOutput { + s.MediaStreamPipeline = v + return s +} + // The content configuration object's data channel. type DataChannelConcatenationConfiguration struct { _ struct{} `type:"structure"` @@ -5464,6 +6411,77 @@ return s } +type DeleteMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the pool being deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMediaPipelineKinesisVideoStreamPoolInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteMediaPipelineKinesisVideoStreamPoolInput) SetIdentifier(v string) *DeleteMediaPipelineKinesisVideoStreamPoolInput { + s.Identifier = &v + return s +} + +type DeleteMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + type DeleteMediaPipelineOutput struct { _ struct{} `type:"structure"` } @@ -5848,6 +6866,86 @@ return s } +type GetMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the video stream pool. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMediaPipelineKinesisVideoStreamPoolInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetMediaPipelineKinesisVideoStreamPoolInput) SetIdentifier(v string) *GetMediaPipelineKinesisVideoStreamPoolInput { + s.Identifier = &v + return s +} + +type GetMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` + + // The video stream pool configuration object. + KinesisVideoStreamPoolConfiguration *KinesisVideoStreamPoolConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + +// SetKinesisVideoStreamPoolConfiguration sets the KinesisVideoStreamPoolConfiguration field's value. +func (s *GetMediaPipelineKinesisVideoStreamPoolOutput) SetKinesisVideoStreamPoolConfiguration(v *KinesisVideoStreamPoolConfiguration) *GetMediaPipelineKinesisVideoStreamPoolOutput { + s.KinesisVideoStreamPoolConfiguration = v + return s +} + type GetMediaPipelineOutput struct { _ struct{} `type:"structure"` @@ -5986,7 +7084,7 @@ // Identifier is a required field Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` - // The ID of the voice tone anlysis task. + // The ID of the voice tone analysis task. // // VoiceToneAnalysisTaskId is a required field VoiceToneAnalysisTaskId *string `location:"uri" locationName:"voiceToneAnalysisTaskId" min:"36" type:"string" required:"true"` @@ -6195,7 +7293,7 @@ type HorizontalLayoutConfiguration struct { _ struct{} `type:"structure"` - // Sets the aspect ratio of the video tiles, such as 16:9. + // Specifies the aspect ratio of all video tiles. TileAspectRatio *string `type:"string"` // The maximum number of video tiles to display. @@ -6442,6 +7540,263 @@ return s } +// The configuration of an Kinesis video stream. +type KinesisVideoStreamConfiguration struct { + _ struct{} `type:"structure"` + + // The amount of time that data is retained. + DataRetentionInHours *int64 `type:"integer"` + + // The Amazon Web Services Region of the video stream. + // + // Region is a required field + Region *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KinesisVideoStreamConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KinesisVideoStreamConfiguration"} + if s.Region == nil { + invalidParams.Add(request.NewErrParamRequired("Region")) + } + if s.Region != nil && len(*s.Region) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Region", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataRetentionInHours sets the DataRetentionInHours field's value. +func (s *KinesisVideoStreamConfiguration) SetDataRetentionInHours(v int64) *KinesisVideoStreamConfiguration { + s.DataRetentionInHours = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *KinesisVideoStreamConfiguration) SetRegion(v string) *KinesisVideoStreamConfiguration { + s.Region = &v + return s +} + +// The updated Kinesis video stream configuration object. +type KinesisVideoStreamConfigurationUpdate struct { + _ struct{} `type:"structure"` + + // The updated time that data is retained. + DataRetentionInHours *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfigurationUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfigurationUpdate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KinesisVideoStreamConfigurationUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KinesisVideoStreamConfigurationUpdate"} + if s.DataRetentionInHours != nil && *s.DataRetentionInHours < 1 { + invalidParams.Add(request.NewErrParamMinValue("DataRetentionInHours", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataRetentionInHours sets the DataRetentionInHours field's value. +func (s *KinesisVideoStreamConfigurationUpdate) SetDataRetentionInHours(v int64) *KinesisVideoStreamConfigurationUpdate { + s.DataRetentionInHours = &v + return s +} + +// The video stream pool configuration object. +type KinesisVideoStreamPoolConfiguration struct { + _ struct{} `type:"structure"` + + // The time at which the configuration was created. + CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The ARN of the video stream pool configuration. + // + // PoolArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by KinesisVideoStreamPoolConfiguration's + // String and GoString methods. + PoolArn *string `min:"1" type:"string" sensitive:"true"` + + // The ID of the video stream pool in the configuration. + PoolId *string `min:"1" type:"string"` + + // The name of the video stream pool configuration. + PoolName *string `min:"1" type:"string"` + + // The size of the video stream pool in the configuration. + PoolSize *int64 `type:"integer"` + + // The status of the video stream pool in the configuration. + PoolStatus *string `type:"string" enum:"KinesisVideoStreamPoolStatus"` + + // The Kinesis video stream pool configuration object. + StreamConfiguration *KinesisVideoStreamConfiguration `type:"structure"` + + // The time at which the configuration was updated. + UpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolConfiguration) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetCreatedTimestamp(v time.Time) *KinesisVideoStreamPoolConfiguration { + s.CreatedTimestamp = &v + return s +} + +// SetPoolArn sets the PoolArn field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolArn(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolArn = &v + return s +} + +// SetPoolId sets the PoolId field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolId(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolId = &v + return s +} + +// SetPoolName sets the PoolName field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolName(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolName = &v + return s +} + +// SetPoolSize sets the PoolSize field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolSize(v int64) *KinesisVideoStreamPoolConfiguration { + s.PoolSize = &v + return s +} + +// SetPoolStatus sets the PoolStatus field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolStatus(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolStatus = &v + return s +} + +// SetStreamConfiguration sets the StreamConfiguration field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetStreamConfiguration(v *KinesisVideoStreamConfiguration) *KinesisVideoStreamPoolConfiguration { + s.StreamConfiguration = v + return s +} + +// SetUpdatedTimestamp sets the UpdatedTimestamp field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetUpdatedTimestamp(v time.Time) *KinesisVideoStreamPoolConfiguration { + s.UpdatedTimestamp = &v + return s +} + +// A summary of the Kinesis video stream pool. +type KinesisVideoStreamPoolSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the video stream pool. + // + // PoolArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by KinesisVideoStreamPoolSummary's + // String and GoString methods. + PoolArn *string `min:"1" type:"string" sensitive:"true"` + + // The ID of the video stream pool. + PoolId *string `min:"1" type:"string"` + + // The name of the video stream pool. + PoolName *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolSummary) GoString() string { + return s.String() +} + +// SetPoolArn sets the PoolArn field's value. +func (s *KinesisVideoStreamPoolSummary) SetPoolArn(v string) *KinesisVideoStreamPoolSummary { + s.PoolArn = &v + return s +} + +// SetPoolId sets the PoolId field's value. +func (s *KinesisVideoStreamPoolSummary) SetPoolId(v string) *KinesisVideoStreamPoolSummary { + s.PoolId = &v + return s +} + +// SetPoolName sets the PoolName field's value. +func (s *KinesisVideoStreamPoolSummary) SetPoolName(v string) *KinesisVideoStreamPoolSummary { + s.PoolName = &v + return s +} + // A structure that contains the runtime settings for recording a Kinesis video // stream. type KinesisVideoStreamRecordingSourceRuntimeConfiguration struct { @@ -6936,6 +8291,99 @@ return s } +type ListMediaPipelineKinesisVideoStreamPoolsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return in a single call. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token used to return the next page of results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaPipelineKinesisVideoStreamPoolsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaPipelineKinesisVideoStreamPoolsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMediaPipelineKinesisVideoStreamPoolsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMediaPipelineKinesisVideoStreamPoolsInput"} + 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 *ListMediaPipelineKinesisVideoStreamPoolsInput) SetMaxResults(v int64) *ListMediaPipelineKinesisVideoStreamPoolsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMediaPipelineKinesisVideoStreamPoolsInput) SetNextToken(v string) *ListMediaPipelineKinesisVideoStreamPoolsInput { + s.NextToken = &v + return s +} + +type ListMediaPipelineKinesisVideoStreamPoolsOutput struct { + _ struct{} `type:"structure"` + + // The list of video stream pools. + KinesisVideoStreamPools []*KinesisVideoStreamPoolSummary `type:"list"` + + // The token used to return the next page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaPipelineKinesisVideoStreamPoolsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaPipelineKinesisVideoStreamPoolsOutput) GoString() string { + return s.String() +} + +// SetKinesisVideoStreamPools sets the KinesisVideoStreamPools field's value. +func (s *ListMediaPipelineKinesisVideoStreamPoolsOutput) SetKinesisVideoStreamPools(v []*KinesisVideoStreamPoolSummary) *ListMediaPipelineKinesisVideoStreamPoolsOutput { + s.KinesisVideoStreamPools = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMediaPipelineKinesisVideoStreamPoolsOutput) SetNextToken(v string) *ListMediaPipelineKinesisVideoStreamPoolsOutput { + s.NextToken = &v + return s +} + type ListMediaPipelinesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -8242,6 +9690,9 @@ // The connector pipeline of the media pipeline. MediaLiveConnectorPipeline *MediaLiveConnectorPipeline `type:"structure"` + + // Designates a media pipeline as a media stream pipeline. + MediaStreamPipeline *MediaStreamPipeline `type:"structure"` } // String returns the string representation. @@ -8286,6 +9737,12 @@ return s } +// SetMediaStreamPipeline sets the MediaStreamPipeline field's value. +func (s *MediaPipeline) SetMediaStreamPipeline(v *MediaStreamPipeline) *MediaPipeline { + s.MediaStreamPipeline = v + return s +} + // The summary of the media pipeline. type MediaPipelineSummary struct { _ struct{} `type:"structure"` @@ -8327,6 +9784,259 @@ return s } +// Structure that contains the settings for a media stream pipeline. +type MediaStreamPipeline struct { + _ struct{} `type:"structure"` + + // The time at which the media stream pipeline was created. + CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The ARN of the media stream pipeline. + MediaPipelineArn *string `min:"1" type:"string"` + + // The ID of the media stream pipeline + MediaPipelineId *string `min:"36" type:"string"` + + // The media stream pipeline's data sinks. + Sinks []*MediaStreamSink `min:"1" type:"list"` + + // The media stream pipeline's data sources. + Sources []*MediaStreamSource `min:"1" type:"list"` + + // The status of the media stream pipeline. + Status *string `type:"string" enum:"MediaPipelineStatus"` + + // The time at which the media stream pipeline was updated. + UpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaStreamPipeline) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaStreamPipeline) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *MediaStreamPipeline) SetCreatedTimestamp(v time.Time) *MediaStreamPipeline { + s.CreatedTimestamp = &v + return s +} + +// SetMediaPipelineArn sets the MediaPipelineArn field's value. +func (s *MediaStreamPipeline) SetMediaPipelineArn(v string) *MediaStreamPipeline { + s.MediaPipelineArn = &v + return s +} + +// SetMediaPipelineId sets the MediaPipelineId field's value. +func (s *MediaStreamPipeline) SetMediaPipelineId(v string) *MediaStreamPipeline { + s.MediaPipelineId = &v + return s +} + +// SetSinks sets the Sinks field's value. +func (s *MediaStreamPipeline) SetSinks(v []*MediaStreamSink) *MediaStreamPipeline { + s.Sinks = v + return s +} + +// SetSources sets the Sources field's value. +func (s *MediaStreamPipeline) SetSources(v []*MediaStreamSource) *MediaStreamPipeline { + s.Sources = v + return s +} + +// SetStatus sets the Status field's value. +func (s *MediaStreamPipeline) SetStatus(v string) *MediaStreamPipeline { + s.Status = &v + return s +} + +// SetUpdatedTimestamp sets the UpdatedTimestamp field's value. +func (s *MediaStreamPipeline) SetUpdatedTimestamp(v time.Time) *MediaStreamPipeline { + s.UpdatedTimestamp = &v + return s +} + +// Structure that contains the settings for a media stream sink. +type MediaStreamSink struct { + _ struct{} `type:"structure"` + + // The media stream sink's media stream type. + // + // MediaStreamType is a required field + MediaStreamType *string `type:"string" required:"true" enum:"MediaStreamType"` + + // Specifies the number of streams that the sink can accept. + // + // ReservedStreamCapacity is a required field + ReservedStreamCapacity *int64 `min:"1" type:"integer" required:"true"` + + // The ARN of the media stream sink. + // + // SinkArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by MediaStreamSink's + // String and GoString methods. + // + // SinkArn is a required field + SinkArn *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // The media stream sink's type. + // + // SinkType is a required field + SinkType *string `type:"string" required:"true" enum:"MediaStreamPipelineSinkType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaStreamSink) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaStreamSink) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaStreamSink) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaStreamSink"} + if s.MediaStreamType == nil { + invalidParams.Add(request.NewErrParamRequired("MediaStreamType")) + } + if s.ReservedStreamCapacity == nil { + invalidParams.Add(request.NewErrParamRequired("ReservedStreamCapacity")) + } + if s.ReservedStreamCapacity != nil && *s.ReservedStreamCapacity < 1 { + invalidParams.Add(request.NewErrParamMinValue("ReservedStreamCapacity", 1)) + } + if s.SinkArn == nil { + invalidParams.Add(request.NewErrParamRequired("SinkArn")) + } + if s.SinkArn != nil && len(*s.SinkArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SinkArn", 1)) + } + if s.SinkType == nil { + invalidParams.Add(request.NewErrParamRequired("SinkType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMediaStreamType sets the MediaStreamType field's value. +func (s *MediaStreamSink) SetMediaStreamType(v string) *MediaStreamSink { + s.MediaStreamType = &v + return s +} + +// SetReservedStreamCapacity sets the ReservedStreamCapacity field's value. +func (s *MediaStreamSink) SetReservedStreamCapacity(v int64) *MediaStreamSink { + s.ReservedStreamCapacity = &v + return s +} + +// SetSinkArn sets the SinkArn field's value. +func (s *MediaStreamSink) SetSinkArn(v string) *MediaStreamSink { + s.SinkArn = &v + return s +} + +// SetSinkType sets the SinkType field's value. +func (s *MediaStreamSink) SetSinkType(v string) *MediaStreamSink { + s.SinkType = &v + return s +} + +// Structure that contains the settings for media stream sources. +type MediaStreamSource struct { + _ struct{} `type:"structure"` + + // The ARN of the media stream source. + // + // SourceArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by MediaStreamSource's + // String and GoString methods. + // + // SourceArn is a required field + SourceArn *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // The type of media stream source. + // + // SourceType is a required field + SourceType *string `type:"string" required:"true" enum:"MediaPipelineSourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaStreamSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaStreamSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaStreamSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaStreamSource"} + if s.SourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceArn")) + } + if s.SourceArn != nil && len(*s.SourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceArn", 1)) + } + if s.SourceType == nil { + invalidParams.Add(request.NewErrParamRequired("SourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSourceArn sets the SourceArn field's value. +func (s *MediaStreamSource) SetSourceArn(v string) *MediaStreamSource { + s.SourceArn = &v + return s +} + +// SetSourceType sets the SourceType field's value. +func (s *MediaStreamSource) SetSourceType(v string) *MediaStreamSource { + s.SourceType = &v + return s +} + // The configuration object for an event concatenation pipeline. type MeetingEventsConcatenationConfiguration struct { _ struct{} `type:"structure"` @@ -10818,6 +12528,100 @@ return s.String() } +type UpdateMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure"` + + // The ID of the video stream pool. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The configuration settings for the video stream. + StreamConfiguration *KinesisVideoStreamConfigurationUpdate `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateMediaPipelineKinesisVideoStreamPoolInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.StreamConfiguration != nil { + if err := s.StreamConfiguration.Validate(); err != nil { + invalidParams.AddNested("StreamConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolInput) SetIdentifier(v string) *UpdateMediaPipelineKinesisVideoStreamPoolInput { + s.Identifier = &v + return s +} + +// SetStreamConfiguration sets the StreamConfiguration field's value. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolInput) SetStreamConfiguration(v *KinesisVideoStreamConfigurationUpdate) *UpdateMediaPipelineKinesisVideoStreamPoolInput { + s.StreamConfiguration = v + return s +} + +type UpdateMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` + + // The video stream pool configuration object. + KinesisVideoStreamPoolConfiguration *KinesisVideoStreamPoolConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + +// SetKinesisVideoStreamPoolConfiguration sets the KinesisVideoStreamPoolConfiguration field's value. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolOutput) SetKinesisVideoStreamPoolConfiguration(v *KinesisVideoStreamPoolConfiguration) *UpdateMediaPipelineKinesisVideoStreamPoolOutput { + s.KinesisVideoStreamPoolConfiguration = v + return s +} + // Defines the configuration settings for a vertical layout. type VerticalLayoutConfiguration struct { _ struct{} `type:"structure"` @@ -11587,6 +13391,34 @@ } const ( + // KinesisVideoStreamPoolStatusCreating is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusCreating = "CREATING" + + // KinesisVideoStreamPoolStatusActive is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusActive = "ACTIVE" + + // KinesisVideoStreamPoolStatusUpdating is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusUpdating = "UPDATING" + + // KinesisVideoStreamPoolStatusDeleting is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusDeleting = "DELETING" + + // KinesisVideoStreamPoolStatusFailed is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusFailed = "FAILED" +) + +// KinesisVideoStreamPoolStatus_Values returns all elements of the KinesisVideoStreamPoolStatus enum +func KinesisVideoStreamPoolStatus_Values() []string { + return []string{ + KinesisVideoStreamPoolStatusCreating, + KinesisVideoStreamPoolStatusActive, + KinesisVideoStreamPoolStatusUpdating, + KinesisVideoStreamPoolStatusDeleting, + KinesisVideoStreamPoolStatusFailed, + } +} + +const ( // LayoutOptionGridView is a LayoutOption enum value LayoutOptionGridView = "GridView" ) @@ -11842,6 +13674,34 @@ } } +const ( + // MediaStreamPipelineSinkTypeKinesisVideoStreamPool is a MediaStreamPipelineSinkType enum value + MediaStreamPipelineSinkTypeKinesisVideoStreamPool = "KinesisVideoStreamPool" +) + +// MediaStreamPipelineSinkType_Values returns all elements of the MediaStreamPipelineSinkType enum +func MediaStreamPipelineSinkType_Values() []string { + return []string{ + MediaStreamPipelineSinkTypeKinesisVideoStreamPool, + } +} + +const ( + // MediaStreamTypeMixedAudio is a MediaStreamType enum value + MediaStreamTypeMixedAudio = "MixedAudio" + + // MediaStreamTypeIndividualAudio is a MediaStreamType enum value + MediaStreamTypeIndividualAudio = "IndividualAudio" +) + +// MediaStreamType_Values returns all elements of the MediaStreamType enum +func MediaStreamType_Values() []string { + return []string{ + MediaStreamTypeMixedAudio, + MediaStreamTypeIndividualAudio, + } +} + const ( // PartialResultsStabilityHigh is a PartialResultsStability enum value PartialResultsStabilityHigh = "high" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,14 @@ CreateMediaLiveConnectorPipelineWithContext(aws.Context, *chimesdkmediapipelines.CreateMediaLiveConnectorPipelineInput, ...request.Option) (*chimesdkmediapipelines.CreateMediaLiveConnectorPipelineOutput, error) CreateMediaLiveConnectorPipelineRequest(*chimesdkmediapipelines.CreateMediaLiveConnectorPipelineInput) (*request.Request, *chimesdkmediapipelines.CreateMediaLiveConnectorPipelineOutput) + CreateMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolOutput, error) + CreateMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolOutput, error) + CreateMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolOutput) + + CreateMediaStreamPipeline(*chimesdkmediapipelines.CreateMediaStreamPipelineInput) (*chimesdkmediapipelines.CreateMediaStreamPipelineOutput, error) + CreateMediaStreamPipelineWithContext(aws.Context, *chimesdkmediapipelines.CreateMediaStreamPipelineInput, ...request.Option) (*chimesdkmediapipelines.CreateMediaStreamPipelineOutput, error) + CreateMediaStreamPipelineRequest(*chimesdkmediapipelines.CreateMediaStreamPipelineInput) (*request.Request, *chimesdkmediapipelines.CreateMediaStreamPipelineOutput) + DeleteMediaCapturePipeline(*chimesdkmediapipelines.DeleteMediaCapturePipelineInput) (*chimesdkmediapipelines.DeleteMediaCapturePipelineOutput, error) DeleteMediaCapturePipelineWithContext(aws.Context, *chimesdkmediapipelines.DeleteMediaCapturePipelineInput, ...request.Option) (*chimesdkmediapipelines.DeleteMediaCapturePipelineOutput, error) DeleteMediaCapturePipelineRequest(*chimesdkmediapipelines.DeleteMediaCapturePipelineInput) (*request.Request, *chimesdkmediapipelines.DeleteMediaCapturePipelineOutput) @@ -92,6 +100,10 @@ DeleteMediaPipelineWithContext(aws.Context, *chimesdkmediapipelines.DeleteMediaPipelineInput, ...request.Option) (*chimesdkmediapipelines.DeleteMediaPipelineOutput, error) DeleteMediaPipelineRequest(*chimesdkmediapipelines.DeleteMediaPipelineInput) (*request.Request, *chimesdkmediapipelines.DeleteMediaPipelineOutput) + DeleteMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) + DeleteMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) + DeleteMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolOutput) + GetMediaCapturePipeline(*chimesdkmediapipelines.GetMediaCapturePipelineInput) (*chimesdkmediapipelines.GetMediaCapturePipelineOutput, error) GetMediaCapturePipelineWithContext(aws.Context, *chimesdkmediapipelines.GetMediaCapturePipelineInput, ...request.Option) (*chimesdkmediapipelines.GetMediaCapturePipelineOutput, error) GetMediaCapturePipelineRequest(*chimesdkmediapipelines.GetMediaCapturePipelineInput) (*request.Request, *chimesdkmediapipelines.GetMediaCapturePipelineOutput) @@ -104,6 +116,10 @@ GetMediaPipelineWithContext(aws.Context, *chimesdkmediapipelines.GetMediaPipelineInput, ...request.Option) (*chimesdkmediapipelines.GetMediaPipelineOutput, error) GetMediaPipelineRequest(*chimesdkmediapipelines.GetMediaPipelineInput) (*request.Request, *chimesdkmediapipelines.GetMediaPipelineOutput) + GetMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolOutput, error) + GetMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolOutput, error) + GetMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolOutput) + GetSpeakerSearchTask(*chimesdkmediapipelines.GetSpeakerSearchTaskInput) (*chimesdkmediapipelines.GetSpeakerSearchTaskOutput, error) GetSpeakerSearchTaskWithContext(aws.Context, *chimesdkmediapipelines.GetSpeakerSearchTaskInput, ...request.Option) (*chimesdkmediapipelines.GetSpeakerSearchTaskOutput, error) GetSpeakerSearchTaskRequest(*chimesdkmediapipelines.GetSpeakerSearchTaskInput) (*request.Request, *chimesdkmediapipelines.GetSpeakerSearchTaskOutput) @@ -126,6 +142,13 @@ ListMediaInsightsPipelineConfigurationsPages(*chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsInput, func(*chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsOutput, bool) bool) error ListMediaInsightsPipelineConfigurationsPagesWithContext(aws.Context, *chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsInput, func(*chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsOutput, bool) bool, ...request.Option) error + ListMediaPipelineKinesisVideoStreamPools(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput) (*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, error) + ListMediaPipelineKinesisVideoStreamPoolsWithContext(aws.Context, *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput, ...request.Option) (*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, error) + ListMediaPipelineKinesisVideoStreamPoolsRequest(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput) (*request.Request, *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput) + + ListMediaPipelineKinesisVideoStreamPoolsPages(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput, func(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool) error + ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext(aws.Context, *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput, func(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool, ...request.Option) error + ListMediaPipelines(*chimesdkmediapipelines.ListMediaPipelinesInput) (*chimesdkmediapipelines.ListMediaPipelinesOutput, error) ListMediaPipelinesWithContext(aws.Context, *chimesdkmediapipelines.ListMediaPipelinesInput, ...request.Option) (*chimesdkmediapipelines.ListMediaPipelinesOutput, error) ListMediaPipelinesRequest(*chimesdkmediapipelines.ListMediaPipelinesInput) (*request.Request, *chimesdkmediapipelines.ListMediaPipelinesOutput) @@ -168,6 +191,10 @@ UpdateMediaInsightsPipelineStatus(*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusInput) (*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusOutput, error) UpdateMediaInsightsPipelineStatusWithContext(aws.Context, *chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusInput, ...request.Option) (*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusOutput, error) UpdateMediaInsightsPipelineStatusRequest(*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusInput) (*request.Request, *chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusOutput) + + UpdateMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) + UpdateMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) + UpdateMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolOutput) } var _ ChimeSDKMediaPipelinesAPI = (*chimesdkmediapipelines.ChimeSDKMediaPipelines)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanrooms/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanrooms/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanrooms/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanrooms/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -384,6 +384,103 @@ return out, req.Send() } +const opCreateConfiguredAudienceModelAssociation = "CreateConfiguredAudienceModelAssociation" + +// CreateConfiguredAudienceModelAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreateConfiguredAudienceModelAssociation 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 CreateConfiguredAudienceModelAssociation for more information on using the CreateConfiguredAudienceModelAssociation +// 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 CreateConfiguredAudienceModelAssociationRequest method. +// req, resp := client.CreateConfiguredAudienceModelAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredAudienceModelAssociation +func (c *CleanRooms) CreateConfiguredAudienceModelAssociationRequest(input *CreateConfiguredAudienceModelAssociationInput) (req *request.Request, output *CreateConfiguredAudienceModelAssociationOutput) { + op := &request.Operation{ + Name: opCreateConfiguredAudienceModelAssociation, + HTTPMethod: "POST", + HTTPPath: "/memberships/{membershipIdentifier}/configuredaudiencemodelassociations", + } + + if input == nil { + input = &CreateConfiguredAudienceModelAssociationInput{} + } + + output = &CreateConfiguredAudienceModelAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateConfiguredAudienceModelAssociation API operation for AWS Clean Rooms Service. +// +// Provides the details necessary to create a configured audience model association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation CreateConfiguredAudienceModelAssociation for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// Request denied because service quota has been exceeded. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredAudienceModelAssociation +func (c *CleanRooms) CreateConfiguredAudienceModelAssociation(input *CreateConfiguredAudienceModelAssociationInput) (*CreateConfiguredAudienceModelAssociationOutput, error) { + req, out := c.CreateConfiguredAudienceModelAssociationRequest(input) + return out, req.Send() +} + +// CreateConfiguredAudienceModelAssociationWithContext is the same as CreateConfiguredAudienceModelAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreateConfiguredAudienceModelAssociation 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 *CleanRooms) CreateConfiguredAudienceModelAssociationWithContext(ctx aws.Context, input *CreateConfiguredAudienceModelAssociationInput, opts ...request.Option) (*CreateConfiguredAudienceModelAssociationOutput, error) { + req, out := c.CreateConfiguredAudienceModelAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateConfiguredTable = "CreateConfiguredTable" // CreateConfiguredTableRequest generates a "aws/request.Request" representing the @@ -772,6 +869,103 @@ return out, req.Send() } +const opCreatePrivacyBudgetTemplate = "CreatePrivacyBudgetTemplate" + +// CreatePrivacyBudgetTemplateRequest generates a "aws/request.Request" representing the +// client's request for the CreatePrivacyBudgetTemplate 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 CreatePrivacyBudgetTemplate for more information on using the CreatePrivacyBudgetTemplate +// 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 CreatePrivacyBudgetTemplateRequest method. +// req, resp := client.CreatePrivacyBudgetTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreatePrivacyBudgetTemplate +func (c *CleanRooms) CreatePrivacyBudgetTemplateRequest(input *CreatePrivacyBudgetTemplateInput) (req *request.Request, output *CreatePrivacyBudgetTemplateOutput) { + op := &request.Operation{ + Name: opCreatePrivacyBudgetTemplate, + HTTPMethod: "POST", + HTTPPath: "/memberships/{membershipIdentifier}/privacybudgettemplates", + } + + if input == nil { + input = &CreatePrivacyBudgetTemplateInput{} + } + + output = &CreatePrivacyBudgetTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePrivacyBudgetTemplate API operation for AWS Clean Rooms Service. +// +// Creates a privacy budget template for a specified membership. Each membership +// can have only one privacy budget template, but it can be deleted and recreated. +// If you need to change the privacy budget template for a membership, use the +// UpdatePrivacyBudgetTemplate operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation CreatePrivacyBudgetTemplate for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreatePrivacyBudgetTemplate +func (c *CleanRooms) CreatePrivacyBudgetTemplate(input *CreatePrivacyBudgetTemplateInput) (*CreatePrivacyBudgetTemplateOutput, error) { + req, out := c.CreatePrivacyBudgetTemplateRequest(input) + return out, req.Send() +} + +// CreatePrivacyBudgetTemplateWithContext is the same as CreatePrivacyBudgetTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePrivacyBudgetTemplate 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 *CleanRooms) CreatePrivacyBudgetTemplateWithContext(ctx aws.Context, input *CreatePrivacyBudgetTemplateInput, opts ...request.Option) (*CreatePrivacyBudgetTemplateOutput, error) { + req, out := c.CreatePrivacyBudgetTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAnalysisTemplate = "DeleteAnalysisTemplate" // DeleteAnalysisTemplateRequest generates a "aws/request.Request" representing the @@ -953,6 +1147,99 @@ return out, req.Send() } +const opDeleteConfiguredAudienceModelAssociation = "DeleteConfiguredAudienceModelAssociation" + +// DeleteConfiguredAudienceModelAssociationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConfiguredAudienceModelAssociation 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 DeleteConfiguredAudienceModelAssociation for more information on using the DeleteConfiguredAudienceModelAssociation +// 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 DeleteConfiguredAudienceModelAssociationRequest method. +// req, resp := client.DeleteConfiguredAudienceModelAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredAudienceModelAssociation +func (c *CleanRooms) DeleteConfiguredAudienceModelAssociationRequest(input *DeleteConfiguredAudienceModelAssociationInput) (req *request.Request, output *DeleteConfiguredAudienceModelAssociationOutput) { + op := &request.Operation{ + Name: opDeleteConfiguredAudienceModelAssociation, + HTTPMethod: "DELETE", + HTTPPath: "/memberships/{membershipIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + } + + if input == nil { + input = &DeleteConfiguredAudienceModelAssociationInput{} + } + + output = &DeleteConfiguredAudienceModelAssociationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConfiguredAudienceModelAssociation API operation for AWS Clean Rooms Service. +// +// Provides the information necessary to delete a configured audience model +// association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation DeleteConfiguredAudienceModelAssociation for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeleteConfiguredAudienceModelAssociation +func (c *CleanRooms) DeleteConfiguredAudienceModelAssociation(input *DeleteConfiguredAudienceModelAssociationInput) (*DeleteConfiguredAudienceModelAssociationOutput, error) { + req, out := c.DeleteConfiguredAudienceModelAssociationRequest(input) + return out, req.Send() +} + +// DeleteConfiguredAudienceModelAssociationWithContext is the same as DeleteConfiguredAudienceModelAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConfiguredAudienceModelAssociation 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 *CleanRooms) DeleteConfiguredAudienceModelAssociationWithContext(ctx aws.Context, input *DeleteConfiguredAudienceModelAssociationInput, opts ...request.Option) (*DeleteConfiguredAudienceModelAssociationOutput, error) { + req, out := c.DeleteConfiguredAudienceModelAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteConfiguredTable = "DeleteConfiguredTable" // DeleteConfiguredTableRequest generates a "aws/request.Request" representing the @@ -1431,6 +1718,98 @@ return out, req.Send() } +const opDeletePrivacyBudgetTemplate = "DeletePrivacyBudgetTemplate" + +// DeletePrivacyBudgetTemplateRequest generates a "aws/request.Request" representing the +// client's request for the DeletePrivacyBudgetTemplate 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 DeletePrivacyBudgetTemplate for more information on using the DeletePrivacyBudgetTemplate +// 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 DeletePrivacyBudgetTemplateRequest method. +// req, resp := client.DeletePrivacyBudgetTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeletePrivacyBudgetTemplate +func (c *CleanRooms) DeletePrivacyBudgetTemplateRequest(input *DeletePrivacyBudgetTemplateInput) (req *request.Request, output *DeletePrivacyBudgetTemplateOutput) { + op := &request.Operation{ + Name: opDeletePrivacyBudgetTemplate, + HTTPMethod: "DELETE", + HTTPPath: "/memberships/{membershipIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + } + + if input == nil { + input = &DeletePrivacyBudgetTemplateInput{} + } + + output = &DeletePrivacyBudgetTemplateOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeletePrivacyBudgetTemplate API operation for AWS Clean Rooms Service. +// +// Deletes a privacy budget template for a specified membership. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation DeletePrivacyBudgetTemplate for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/DeletePrivacyBudgetTemplate +func (c *CleanRooms) DeletePrivacyBudgetTemplate(input *DeletePrivacyBudgetTemplateInput) (*DeletePrivacyBudgetTemplateOutput, error) { + req, out := c.DeletePrivacyBudgetTemplateRequest(input) + return out, req.Send() +} + +// DeletePrivacyBudgetTemplateWithContext is the same as DeletePrivacyBudgetTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See DeletePrivacyBudgetTemplate 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 *CleanRooms) DeletePrivacyBudgetTemplateWithContext(ctx aws.Context, input *DeletePrivacyBudgetTemplateInput, opts ...request.Option) (*DeletePrivacyBudgetTemplateOutput, error) { + req, out := c.DeletePrivacyBudgetTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAnalysisTemplate = "GetAnalysisTemplate" // GetAnalysisTemplateRequest generates a "aws/request.Request" representing the @@ -1701,6 +2080,279 @@ return out, req.Send() } +const opGetCollaborationConfiguredAudienceModelAssociation = "GetCollaborationConfiguredAudienceModelAssociation" + +// GetCollaborationConfiguredAudienceModelAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetCollaborationConfiguredAudienceModelAssociation 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 GetCollaborationConfiguredAudienceModelAssociation for more information on using the GetCollaborationConfiguredAudienceModelAssociation +// 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 GetCollaborationConfiguredAudienceModelAssociationRequest method. +// req, resp := client.GetCollaborationConfiguredAudienceModelAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetCollaborationConfiguredAudienceModelAssociation +func (c *CleanRooms) GetCollaborationConfiguredAudienceModelAssociationRequest(input *GetCollaborationConfiguredAudienceModelAssociationInput) (req *request.Request, output *GetCollaborationConfiguredAudienceModelAssociationOutput) { + op := &request.Operation{ + Name: opGetCollaborationConfiguredAudienceModelAssociation, + HTTPMethod: "GET", + HTTPPath: "/collaborations/{collaborationIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + } + + if input == nil { + input = &GetCollaborationConfiguredAudienceModelAssociationInput{} + } + + output = &GetCollaborationConfiguredAudienceModelAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCollaborationConfiguredAudienceModelAssociation API operation for AWS Clean Rooms Service. +// +// Retrieves a configured audience model association within a collaboration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation GetCollaborationConfiguredAudienceModelAssociation for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetCollaborationConfiguredAudienceModelAssociation +func (c *CleanRooms) GetCollaborationConfiguredAudienceModelAssociation(input *GetCollaborationConfiguredAudienceModelAssociationInput) (*GetCollaborationConfiguredAudienceModelAssociationOutput, error) { + req, out := c.GetCollaborationConfiguredAudienceModelAssociationRequest(input) + return out, req.Send() +} + +// GetCollaborationConfiguredAudienceModelAssociationWithContext is the same as GetCollaborationConfiguredAudienceModelAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetCollaborationConfiguredAudienceModelAssociation 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 *CleanRooms) GetCollaborationConfiguredAudienceModelAssociationWithContext(ctx aws.Context, input *GetCollaborationConfiguredAudienceModelAssociationInput, opts ...request.Option) (*GetCollaborationConfiguredAudienceModelAssociationOutput, error) { + req, out := c.GetCollaborationConfiguredAudienceModelAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCollaborationPrivacyBudgetTemplate = "GetCollaborationPrivacyBudgetTemplate" + +// GetCollaborationPrivacyBudgetTemplateRequest generates a "aws/request.Request" representing the +// client's request for the GetCollaborationPrivacyBudgetTemplate 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 GetCollaborationPrivacyBudgetTemplate for more information on using the GetCollaborationPrivacyBudgetTemplate +// 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 GetCollaborationPrivacyBudgetTemplateRequest method. +// req, resp := client.GetCollaborationPrivacyBudgetTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetCollaborationPrivacyBudgetTemplate +func (c *CleanRooms) GetCollaborationPrivacyBudgetTemplateRequest(input *GetCollaborationPrivacyBudgetTemplateInput) (req *request.Request, output *GetCollaborationPrivacyBudgetTemplateOutput) { + op := &request.Operation{ + Name: opGetCollaborationPrivacyBudgetTemplate, + HTTPMethod: "GET", + HTTPPath: "/collaborations/{collaborationIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + } + + if input == nil { + input = &GetCollaborationPrivacyBudgetTemplateInput{} + } + + output = &GetCollaborationPrivacyBudgetTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCollaborationPrivacyBudgetTemplate API operation for AWS Clean Rooms Service. +// +// Returns details about a specified privacy budget template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation GetCollaborationPrivacyBudgetTemplate for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetCollaborationPrivacyBudgetTemplate +func (c *CleanRooms) GetCollaborationPrivacyBudgetTemplate(input *GetCollaborationPrivacyBudgetTemplateInput) (*GetCollaborationPrivacyBudgetTemplateOutput, error) { + req, out := c.GetCollaborationPrivacyBudgetTemplateRequest(input) + return out, req.Send() +} + +// GetCollaborationPrivacyBudgetTemplateWithContext is the same as GetCollaborationPrivacyBudgetTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See GetCollaborationPrivacyBudgetTemplate 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 *CleanRooms) GetCollaborationPrivacyBudgetTemplateWithContext(ctx aws.Context, input *GetCollaborationPrivacyBudgetTemplateInput, opts ...request.Option) (*GetCollaborationPrivacyBudgetTemplateOutput, error) { + req, out := c.GetCollaborationPrivacyBudgetTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetConfiguredAudienceModelAssociation = "GetConfiguredAudienceModelAssociation" + +// GetConfiguredAudienceModelAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetConfiguredAudienceModelAssociation 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 GetConfiguredAudienceModelAssociation for more information on using the GetConfiguredAudienceModelAssociation +// 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 GetConfiguredAudienceModelAssociationRequest method. +// req, resp := client.GetConfiguredAudienceModelAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetConfiguredAudienceModelAssociation +func (c *CleanRooms) GetConfiguredAudienceModelAssociationRequest(input *GetConfiguredAudienceModelAssociationInput) (req *request.Request, output *GetConfiguredAudienceModelAssociationOutput) { + op := &request.Operation{ + Name: opGetConfiguredAudienceModelAssociation, + HTTPMethod: "GET", + HTTPPath: "/memberships/{membershipIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + } + + if input == nil { + input = &GetConfiguredAudienceModelAssociationInput{} + } + + output = &GetConfiguredAudienceModelAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfiguredAudienceModelAssociation API operation for AWS Clean Rooms Service. +// +// Returns information about a configured audience model association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation GetConfiguredAudienceModelAssociation for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetConfiguredAudienceModelAssociation +func (c *CleanRooms) GetConfiguredAudienceModelAssociation(input *GetConfiguredAudienceModelAssociationInput) (*GetConfiguredAudienceModelAssociationOutput, error) { + req, out := c.GetConfiguredAudienceModelAssociationRequest(input) + return out, req.Send() +} + +// GetConfiguredAudienceModelAssociationWithContext is the same as GetConfiguredAudienceModelAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfiguredAudienceModelAssociation 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 *CleanRooms) GetConfiguredAudienceModelAssociationWithContext(ctx aws.Context, input *GetConfiguredAudienceModelAssociationInput, opts ...request.Option) (*GetConfiguredAudienceModelAssociationOutput, error) { + req, out := c.GetConfiguredAudienceModelAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetConfiguredTable = "GetConfiguredTable" // GetConfiguredTableRequest generates a "aws/request.Request" representing the @@ -2065,6 +2717,97 @@ return out, req.Send() } +const opGetPrivacyBudgetTemplate = "GetPrivacyBudgetTemplate" + +// GetPrivacyBudgetTemplateRequest generates a "aws/request.Request" representing the +// client's request for the GetPrivacyBudgetTemplate 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 GetPrivacyBudgetTemplate for more information on using the GetPrivacyBudgetTemplate +// 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 GetPrivacyBudgetTemplateRequest method. +// req, resp := client.GetPrivacyBudgetTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetPrivacyBudgetTemplate +func (c *CleanRooms) GetPrivacyBudgetTemplateRequest(input *GetPrivacyBudgetTemplateInput) (req *request.Request, output *GetPrivacyBudgetTemplateOutput) { + op := &request.Operation{ + Name: opGetPrivacyBudgetTemplate, + HTTPMethod: "GET", + HTTPPath: "/memberships/{membershipIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + } + + if input == nil { + input = &GetPrivacyBudgetTemplateInput{} + } + + output = &GetPrivacyBudgetTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPrivacyBudgetTemplate API operation for AWS Clean Rooms Service. +// +// Returns details for a specified privacy budget template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation GetPrivacyBudgetTemplate for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/GetPrivacyBudgetTemplate +func (c *CleanRooms) GetPrivacyBudgetTemplate(input *GetPrivacyBudgetTemplateInput) (*GetPrivacyBudgetTemplateOutput, error) { + req, out := c.GetPrivacyBudgetTemplateRequest(input) + return out, req.Send() +} + +// GetPrivacyBudgetTemplateWithContext is the same as GetPrivacyBudgetTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See GetPrivacyBudgetTemplate 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 *CleanRooms) GetPrivacyBudgetTemplateWithContext(ctx aws.Context, input *GetPrivacyBudgetTemplateInput, opts ...request.Option) (*GetPrivacyBudgetTemplateOutput, error) { + req, out := c.GetPrivacyBudgetTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetProtectedQuery = "GetProtectedQuery" // GetProtectedQueryRequest generates a "aws/request.Request" representing the @@ -2634,6 +3377,453 @@ return p.Err() } +const opListCollaborationConfiguredAudienceModelAssociations = "ListCollaborationConfiguredAudienceModelAssociations" + +// ListCollaborationConfiguredAudienceModelAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListCollaborationConfiguredAudienceModelAssociations 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 ListCollaborationConfiguredAudienceModelAssociations for more information on using the ListCollaborationConfiguredAudienceModelAssociations +// 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 ListCollaborationConfiguredAudienceModelAssociationsRequest method. +// req, resp := client.ListCollaborationConfiguredAudienceModelAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationConfiguredAudienceModelAssociations +func (c *CleanRooms) ListCollaborationConfiguredAudienceModelAssociationsRequest(input *ListCollaborationConfiguredAudienceModelAssociationsInput) (req *request.Request, output *ListCollaborationConfiguredAudienceModelAssociationsOutput) { + op := &request.Operation{ + Name: opListCollaborationConfiguredAudienceModelAssociations, + HTTPMethod: "GET", + HTTPPath: "/collaborations/{collaborationIdentifier}/configuredaudiencemodelassociations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCollaborationConfiguredAudienceModelAssociationsInput{} + } + + output = &ListCollaborationConfiguredAudienceModelAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCollaborationConfiguredAudienceModelAssociations API operation for AWS Clean Rooms Service. +// +// Lists configured audience model associations within a collaboration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation ListCollaborationConfiguredAudienceModelAssociations for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationConfiguredAudienceModelAssociations +func (c *CleanRooms) ListCollaborationConfiguredAudienceModelAssociations(input *ListCollaborationConfiguredAudienceModelAssociationsInput) (*ListCollaborationConfiguredAudienceModelAssociationsOutput, error) { + req, out := c.ListCollaborationConfiguredAudienceModelAssociationsRequest(input) + return out, req.Send() +} + +// ListCollaborationConfiguredAudienceModelAssociationsWithContext is the same as ListCollaborationConfiguredAudienceModelAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListCollaborationConfiguredAudienceModelAssociations 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 *CleanRooms) ListCollaborationConfiguredAudienceModelAssociationsWithContext(ctx aws.Context, input *ListCollaborationConfiguredAudienceModelAssociationsInput, opts ...request.Option) (*ListCollaborationConfiguredAudienceModelAssociationsOutput, error) { + req, out := c.ListCollaborationConfiguredAudienceModelAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCollaborationConfiguredAudienceModelAssociationsPages iterates over the pages of a ListCollaborationConfiguredAudienceModelAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCollaborationConfiguredAudienceModelAssociations 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 ListCollaborationConfiguredAudienceModelAssociations operation. +// pageNum := 0 +// err := client.ListCollaborationConfiguredAudienceModelAssociationsPages(params, +// func(page *cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRooms) ListCollaborationConfiguredAudienceModelAssociationsPages(input *ListCollaborationConfiguredAudienceModelAssociationsInput, fn func(*ListCollaborationConfiguredAudienceModelAssociationsOutput, bool) bool) error { + return c.ListCollaborationConfiguredAudienceModelAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCollaborationConfiguredAudienceModelAssociationsPagesWithContext same as ListCollaborationConfiguredAudienceModelAssociationsPages 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 *CleanRooms) ListCollaborationConfiguredAudienceModelAssociationsPagesWithContext(ctx aws.Context, input *ListCollaborationConfiguredAudienceModelAssociationsInput, fn func(*ListCollaborationConfiguredAudienceModelAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCollaborationConfiguredAudienceModelAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCollaborationConfiguredAudienceModelAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCollaborationConfiguredAudienceModelAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListCollaborationPrivacyBudgetTemplates = "ListCollaborationPrivacyBudgetTemplates" + +// ListCollaborationPrivacyBudgetTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListCollaborationPrivacyBudgetTemplates 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 ListCollaborationPrivacyBudgetTemplates for more information on using the ListCollaborationPrivacyBudgetTemplates +// 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 ListCollaborationPrivacyBudgetTemplatesRequest method. +// req, resp := client.ListCollaborationPrivacyBudgetTemplatesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationPrivacyBudgetTemplates +func (c *CleanRooms) ListCollaborationPrivacyBudgetTemplatesRequest(input *ListCollaborationPrivacyBudgetTemplatesInput) (req *request.Request, output *ListCollaborationPrivacyBudgetTemplatesOutput) { + op := &request.Operation{ + Name: opListCollaborationPrivacyBudgetTemplates, + HTTPMethod: "GET", + HTTPPath: "/collaborations/{collaborationIdentifier}/privacybudgettemplates", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCollaborationPrivacyBudgetTemplatesInput{} + } + + output = &ListCollaborationPrivacyBudgetTemplatesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCollaborationPrivacyBudgetTemplates API operation for AWS Clean Rooms Service. +// +// Returns an array that summarizes each privacy budget template in a specified +// collaboration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation ListCollaborationPrivacyBudgetTemplates for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationPrivacyBudgetTemplates +func (c *CleanRooms) ListCollaborationPrivacyBudgetTemplates(input *ListCollaborationPrivacyBudgetTemplatesInput) (*ListCollaborationPrivacyBudgetTemplatesOutput, error) { + req, out := c.ListCollaborationPrivacyBudgetTemplatesRequest(input) + return out, req.Send() +} + +// ListCollaborationPrivacyBudgetTemplatesWithContext is the same as ListCollaborationPrivacyBudgetTemplates with the addition of +// the ability to pass a context and additional request options. +// +// See ListCollaborationPrivacyBudgetTemplates 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 *CleanRooms) ListCollaborationPrivacyBudgetTemplatesWithContext(ctx aws.Context, input *ListCollaborationPrivacyBudgetTemplatesInput, opts ...request.Option) (*ListCollaborationPrivacyBudgetTemplatesOutput, error) { + req, out := c.ListCollaborationPrivacyBudgetTemplatesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCollaborationPrivacyBudgetTemplatesPages iterates over the pages of a ListCollaborationPrivacyBudgetTemplates operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCollaborationPrivacyBudgetTemplates 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 ListCollaborationPrivacyBudgetTemplates operation. +// pageNum := 0 +// err := client.ListCollaborationPrivacyBudgetTemplatesPages(params, +// func(page *cleanrooms.ListCollaborationPrivacyBudgetTemplatesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRooms) ListCollaborationPrivacyBudgetTemplatesPages(input *ListCollaborationPrivacyBudgetTemplatesInput, fn func(*ListCollaborationPrivacyBudgetTemplatesOutput, bool) bool) error { + return c.ListCollaborationPrivacyBudgetTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCollaborationPrivacyBudgetTemplatesPagesWithContext same as ListCollaborationPrivacyBudgetTemplatesPages 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 *CleanRooms) ListCollaborationPrivacyBudgetTemplatesPagesWithContext(ctx aws.Context, input *ListCollaborationPrivacyBudgetTemplatesInput, fn func(*ListCollaborationPrivacyBudgetTemplatesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCollaborationPrivacyBudgetTemplatesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCollaborationPrivacyBudgetTemplatesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCollaborationPrivacyBudgetTemplatesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListCollaborationPrivacyBudgets = "ListCollaborationPrivacyBudgets" + +// ListCollaborationPrivacyBudgetsRequest generates a "aws/request.Request" representing the +// client's request for the ListCollaborationPrivacyBudgets 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 ListCollaborationPrivacyBudgets for more information on using the ListCollaborationPrivacyBudgets +// 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 ListCollaborationPrivacyBudgetsRequest method. +// req, resp := client.ListCollaborationPrivacyBudgetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationPrivacyBudgets +func (c *CleanRooms) ListCollaborationPrivacyBudgetsRequest(input *ListCollaborationPrivacyBudgetsInput) (req *request.Request, output *ListCollaborationPrivacyBudgetsOutput) { + op := &request.Operation{ + Name: opListCollaborationPrivacyBudgets, + HTTPMethod: "GET", + HTTPPath: "/collaborations/{collaborationIdentifier}/privacybudgets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCollaborationPrivacyBudgetsInput{} + } + + output = &ListCollaborationPrivacyBudgetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCollaborationPrivacyBudgets API operation for AWS Clean Rooms Service. +// +// Returns an array that summarizes each privacy budget in a specified collaboration. +// The summary includes the collaboration ARN, creation time, creating account, +// and privacy budget details. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation ListCollaborationPrivacyBudgets for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListCollaborationPrivacyBudgets +func (c *CleanRooms) ListCollaborationPrivacyBudgets(input *ListCollaborationPrivacyBudgetsInput) (*ListCollaborationPrivacyBudgetsOutput, error) { + req, out := c.ListCollaborationPrivacyBudgetsRequest(input) + return out, req.Send() +} + +// ListCollaborationPrivacyBudgetsWithContext is the same as ListCollaborationPrivacyBudgets with the addition of +// the ability to pass a context and additional request options. +// +// See ListCollaborationPrivacyBudgets 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 *CleanRooms) ListCollaborationPrivacyBudgetsWithContext(ctx aws.Context, input *ListCollaborationPrivacyBudgetsInput, opts ...request.Option) (*ListCollaborationPrivacyBudgetsOutput, error) { + req, out := c.ListCollaborationPrivacyBudgetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCollaborationPrivacyBudgetsPages iterates over the pages of a ListCollaborationPrivacyBudgets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCollaborationPrivacyBudgets 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 ListCollaborationPrivacyBudgets operation. +// pageNum := 0 +// err := client.ListCollaborationPrivacyBudgetsPages(params, +// func(page *cleanrooms.ListCollaborationPrivacyBudgetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRooms) ListCollaborationPrivacyBudgetsPages(input *ListCollaborationPrivacyBudgetsInput, fn func(*ListCollaborationPrivacyBudgetsOutput, bool) bool) error { + return c.ListCollaborationPrivacyBudgetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCollaborationPrivacyBudgetsPagesWithContext same as ListCollaborationPrivacyBudgetsPages 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 *CleanRooms) ListCollaborationPrivacyBudgetsPagesWithContext(ctx aws.Context, input *ListCollaborationPrivacyBudgetsInput, fn func(*ListCollaborationPrivacyBudgetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCollaborationPrivacyBudgetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCollaborationPrivacyBudgetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCollaborationPrivacyBudgetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListCollaborations = "ListCollaborations" // ListCollaborationsRequest generates a "aws/request.Request" representing the @@ -2779,6 +3969,154 @@ return p.Err() } +const opListConfiguredAudienceModelAssociations = "ListConfiguredAudienceModelAssociations" + +// ListConfiguredAudienceModelAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListConfiguredAudienceModelAssociations 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 ListConfiguredAudienceModelAssociations for more information on using the ListConfiguredAudienceModelAssociations +// 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 ListConfiguredAudienceModelAssociationsRequest method. +// req, resp := client.ListConfiguredAudienceModelAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListConfiguredAudienceModelAssociations +func (c *CleanRooms) ListConfiguredAudienceModelAssociationsRequest(input *ListConfiguredAudienceModelAssociationsInput) (req *request.Request, output *ListConfiguredAudienceModelAssociationsOutput) { + op := &request.Operation{ + Name: opListConfiguredAudienceModelAssociations, + HTTPMethod: "GET", + HTTPPath: "/memberships/{membershipIdentifier}/configuredaudiencemodelassociations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConfiguredAudienceModelAssociationsInput{} + } + + output = &ListConfiguredAudienceModelAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConfiguredAudienceModelAssociations API operation for AWS Clean Rooms Service. +// +// Lists information about requested configured audience model associations. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation ListConfiguredAudienceModelAssociations for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListConfiguredAudienceModelAssociations +func (c *CleanRooms) ListConfiguredAudienceModelAssociations(input *ListConfiguredAudienceModelAssociationsInput) (*ListConfiguredAudienceModelAssociationsOutput, error) { + req, out := c.ListConfiguredAudienceModelAssociationsRequest(input) + return out, req.Send() +} + +// ListConfiguredAudienceModelAssociationsWithContext is the same as ListConfiguredAudienceModelAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListConfiguredAudienceModelAssociations 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 *CleanRooms) ListConfiguredAudienceModelAssociationsWithContext(ctx aws.Context, input *ListConfiguredAudienceModelAssociationsInput, opts ...request.Option) (*ListConfiguredAudienceModelAssociationsOutput, error) { + req, out := c.ListConfiguredAudienceModelAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConfiguredAudienceModelAssociationsPages iterates over the pages of a ListConfiguredAudienceModelAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfiguredAudienceModelAssociations 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 ListConfiguredAudienceModelAssociations operation. +// pageNum := 0 +// err := client.ListConfiguredAudienceModelAssociationsPages(params, +// func(page *cleanrooms.ListConfiguredAudienceModelAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRooms) ListConfiguredAudienceModelAssociationsPages(input *ListConfiguredAudienceModelAssociationsInput, fn func(*ListConfiguredAudienceModelAssociationsOutput, bool) bool) error { + return c.ListConfiguredAudienceModelAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfiguredAudienceModelAssociationsPagesWithContext same as ListConfiguredAudienceModelAssociationsPages 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 *CleanRooms) ListConfiguredAudienceModelAssociationsPagesWithContext(ctx aws.Context, input *ListConfiguredAudienceModelAssociationsInput, fn func(*ListConfiguredAudienceModelAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfiguredAudienceModelAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfiguredAudienceModelAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfiguredAudienceModelAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListConfiguredTableAssociations = "ListConfiguredTableAssociations" // ListConfiguredTableAssociationsRequest generates a "aws/request.Request" representing the @@ -3365,6 +4703,303 @@ return p.Err() } +const opListPrivacyBudgetTemplates = "ListPrivacyBudgetTemplates" + +// ListPrivacyBudgetTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListPrivacyBudgetTemplates 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 ListPrivacyBudgetTemplates for more information on using the ListPrivacyBudgetTemplates +// 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 ListPrivacyBudgetTemplatesRequest method. +// req, resp := client.ListPrivacyBudgetTemplatesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListPrivacyBudgetTemplates +func (c *CleanRooms) ListPrivacyBudgetTemplatesRequest(input *ListPrivacyBudgetTemplatesInput) (req *request.Request, output *ListPrivacyBudgetTemplatesOutput) { + op := &request.Operation{ + Name: opListPrivacyBudgetTemplates, + HTTPMethod: "GET", + HTTPPath: "/memberships/{membershipIdentifier}/privacybudgettemplates", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPrivacyBudgetTemplatesInput{} + } + + output = &ListPrivacyBudgetTemplatesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPrivacyBudgetTemplates API operation for AWS Clean Rooms Service. +// +// Returns detailed information about the privacy budget templates in a specified +// membership. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation ListPrivacyBudgetTemplates for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListPrivacyBudgetTemplates +func (c *CleanRooms) ListPrivacyBudgetTemplates(input *ListPrivacyBudgetTemplatesInput) (*ListPrivacyBudgetTemplatesOutput, error) { + req, out := c.ListPrivacyBudgetTemplatesRequest(input) + return out, req.Send() +} + +// ListPrivacyBudgetTemplatesWithContext is the same as ListPrivacyBudgetTemplates with the addition of +// the ability to pass a context and additional request options. +// +// See ListPrivacyBudgetTemplates 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 *CleanRooms) ListPrivacyBudgetTemplatesWithContext(ctx aws.Context, input *ListPrivacyBudgetTemplatesInput, opts ...request.Option) (*ListPrivacyBudgetTemplatesOutput, error) { + req, out := c.ListPrivacyBudgetTemplatesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPrivacyBudgetTemplatesPages iterates over the pages of a ListPrivacyBudgetTemplates operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPrivacyBudgetTemplates 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 ListPrivacyBudgetTemplates operation. +// pageNum := 0 +// err := client.ListPrivacyBudgetTemplatesPages(params, +// func(page *cleanrooms.ListPrivacyBudgetTemplatesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRooms) ListPrivacyBudgetTemplatesPages(input *ListPrivacyBudgetTemplatesInput, fn func(*ListPrivacyBudgetTemplatesOutput, bool) bool) error { + return c.ListPrivacyBudgetTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPrivacyBudgetTemplatesPagesWithContext same as ListPrivacyBudgetTemplatesPages 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 *CleanRooms) ListPrivacyBudgetTemplatesPagesWithContext(ctx aws.Context, input *ListPrivacyBudgetTemplatesInput, fn func(*ListPrivacyBudgetTemplatesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPrivacyBudgetTemplatesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPrivacyBudgetTemplatesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPrivacyBudgetTemplatesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListPrivacyBudgets = "ListPrivacyBudgets" + +// ListPrivacyBudgetsRequest generates a "aws/request.Request" representing the +// client's request for the ListPrivacyBudgets 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 ListPrivacyBudgets for more information on using the ListPrivacyBudgets +// 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 ListPrivacyBudgetsRequest method. +// req, resp := client.ListPrivacyBudgetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListPrivacyBudgets +func (c *CleanRooms) ListPrivacyBudgetsRequest(input *ListPrivacyBudgetsInput) (req *request.Request, output *ListPrivacyBudgetsOutput) { + op := &request.Operation{ + Name: opListPrivacyBudgets, + HTTPMethod: "GET", + HTTPPath: "/memberships/{membershipIdentifier}/privacybudgets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPrivacyBudgetsInput{} + } + + output = &ListPrivacyBudgetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPrivacyBudgets API operation for AWS Clean Rooms Service. +// +// Returns detailed information about the privacy budgets in a specified membership. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation ListPrivacyBudgets for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListPrivacyBudgets +func (c *CleanRooms) ListPrivacyBudgets(input *ListPrivacyBudgetsInput) (*ListPrivacyBudgetsOutput, error) { + req, out := c.ListPrivacyBudgetsRequest(input) + return out, req.Send() +} + +// ListPrivacyBudgetsWithContext is the same as ListPrivacyBudgets with the addition of +// the ability to pass a context and additional request options. +// +// See ListPrivacyBudgets 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 *CleanRooms) ListPrivacyBudgetsWithContext(ctx aws.Context, input *ListPrivacyBudgetsInput, opts ...request.Option) (*ListPrivacyBudgetsOutput, error) { + req, out := c.ListPrivacyBudgetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPrivacyBudgetsPages iterates over the pages of a ListPrivacyBudgets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPrivacyBudgets 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 ListPrivacyBudgets operation. +// pageNum := 0 +// err := client.ListPrivacyBudgetsPages(params, +// func(page *cleanrooms.ListPrivacyBudgetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRooms) ListPrivacyBudgetsPages(input *ListPrivacyBudgetsInput, fn func(*ListPrivacyBudgetsOutput, bool) bool) error { + return c.ListPrivacyBudgetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPrivacyBudgetsPagesWithContext same as ListPrivacyBudgetsPages 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 *CleanRooms) ListPrivacyBudgetsPagesWithContext(ctx aws.Context, input *ListPrivacyBudgetsInput, fn func(*ListPrivacyBudgetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPrivacyBudgetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPrivacyBudgetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPrivacyBudgetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListProtectedQueries = "ListProtectedQueries" // ListProtectedQueriesRequest generates a "aws/request.Request" representing the @@ -3743,6 +5378,98 @@ return out, req.Send() } +const opPreviewPrivacyImpact = "PreviewPrivacyImpact" + +// PreviewPrivacyImpactRequest generates a "aws/request.Request" representing the +// client's request for the PreviewPrivacyImpact 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 PreviewPrivacyImpact for more information on using the PreviewPrivacyImpact +// 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 PreviewPrivacyImpactRequest method. +// req, resp := client.PreviewPrivacyImpactRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/PreviewPrivacyImpact +func (c *CleanRooms) PreviewPrivacyImpactRequest(input *PreviewPrivacyImpactInput) (req *request.Request, output *PreviewPrivacyImpactOutput) { + op := &request.Operation{ + Name: opPreviewPrivacyImpact, + HTTPMethod: "POST", + HTTPPath: "/memberships/{membershipIdentifier}/previewprivacyimpact", + } + + if input == nil { + input = &PreviewPrivacyImpactInput{} + } + + output = &PreviewPrivacyImpactOutput{} + req = c.newRequest(op, input, output) + return +} + +// PreviewPrivacyImpact API operation for AWS Clean Rooms Service. +// +// An estimate of the number of aggregation functions that the member who can +// query can run given epsilon and noise parameters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation PreviewPrivacyImpact for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/PreviewPrivacyImpact +func (c *CleanRooms) PreviewPrivacyImpact(input *PreviewPrivacyImpactInput) (*PreviewPrivacyImpactOutput, error) { + req, out := c.PreviewPrivacyImpactRequest(input) + return out, req.Send() +} + +// PreviewPrivacyImpactWithContext is the same as PreviewPrivacyImpact with the addition of +// the ability to pass a context and additional request options. +// +// See PreviewPrivacyImpact 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 *CleanRooms) PreviewPrivacyImpactWithContext(ctx aws.Context, input *PreviewPrivacyImpactInput, opts ...request.Option) (*PreviewPrivacyImpactOutput, error) { + req, out := c.PreviewPrivacyImpactRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartProtectedQuery = "StartProtectedQuery" // StartProtectedQueryRequest generates a "aws/request.Request" representing the @@ -4183,6 +5910,97 @@ return out, req.Send() } +const opUpdateConfiguredAudienceModelAssociation = "UpdateConfiguredAudienceModelAssociation" + +// UpdateConfiguredAudienceModelAssociationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateConfiguredAudienceModelAssociation 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 UpdateConfiguredAudienceModelAssociation for more information on using the UpdateConfiguredAudienceModelAssociation +// 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 UpdateConfiguredAudienceModelAssociationRequest method. +// req, resp := client.UpdateConfiguredAudienceModelAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateConfiguredAudienceModelAssociation +func (c *CleanRooms) UpdateConfiguredAudienceModelAssociationRequest(input *UpdateConfiguredAudienceModelAssociationInput) (req *request.Request, output *UpdateConfiguredAudienceModelAssociationOutput) { + op := &request.Operation{ + Name: opUpdateConfiguredAudienceModelAssociation, + HTTPMethod: "PATCH", + HTTPPath: "/memberships/{membershipIdentifier}/configuredaudiencemodelassociations/{configuredAudienceModelAssociationIdentifier}", + } + + if input == nil { + input = &UpdateConfiguredAudienceModelAssociationInput{} + } + + output = &UpdateConfiguredAudienceModelAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateConfiguredAudienceModelAssociation API operation for AWS Clean Rooms Service. +// +// Provides the details necessary to update a configured audience model association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation UpdateConfiguredAudienceModelAssociation for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdateConfiguredAudienceModelAssociation +func (c *CleanRooms) UpdateConfiguredAudienceModelAssociation(input *UpdateConfiguredAudienceModelAssociationInput) (*UpdateConfiguredAudienceModelAssociationOutput, error) { + req, out := c.UpdateConfiguredAudienceModelAssociationRequest(input) + return out, req.Send() +} + +// UpdateConfiguredAudienceModelAssociationWithContext is the same as UpdateConfiguredAudienceModelAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateConfiguredAudienceModelAssociation 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 *CleanRooms) UpdateConfiguredAudienceModelAssociationWithContext(ctx aws.Context, input *UpdateConfiguredAudienceModelAssociationInput, opts ...request.Option) (*UpdateConfiguredAudienceModelAssociationOutput, error) { + req, out := c.UpdateConfiguredAudienceModelAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateConfiguredTable = "UpdateConfiguredTable" // UpdateConfiguredTableRequest generates a "aws/request.Request" representing the @@ -4559,6 +6377,100 @@ return out, req.Send() } +const opUpdatePrivacyBudgetTemplate = "UpdatePrivacyBudgetTemplate" + +// UpdatePrivacyBudgetTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePrivacyBudgetTemplate 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 UpdatePrivacyBudgetTemplate for more information on using the UpdatePrivacyBudgetTemplate +// 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 UpdatePrivacyBudgetTemplateRequest method. +// req, resp := client.UpdatePrivacyBudgetTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdatePrivacyBudgetTemplate +func (c *CleanRooms) UpdatePrivacyBudgetTemplateRequest(input *UpdatePrivacyBudgetTemplateInput) (req *request.Request, output *UpdatePrivacyBudgetTemplateOutput) { + op := &request.Operation{ + Name: opUpdatePrivacyBudgetTemplate, + HTTPMethod: "PATCH", + HTTPPath: "/memberships/{membershipIdentifier}/privacybudgettemplates/{privacyBudgetTemplateIdentifier}", + } + + if input == nil { + input = &UpdatePrivacyBudgetTemplateInput{} + } + + output = &UpdatePrivacyBudgetTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePrivacyBudgetTemplate API operation for AWS Clean Rooms Service. +// +// Updates the privacy budget template for the specified membership. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms Service's +// API operation UpdatePrivacyBudgetTemplate for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// Caller does not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UpdatePrivacyBudgetTemplate +func (c *CleanRooms) UpdatePrivacyBudgetTemplate(input *UpdatePrivacyBudgetTemplateInput) (*UpdatePrivacyBudgetTemplateOutput, error) { + req, out := c.UpdatePrivacyBudgetTemplateRequest(input) + return out, req.Send() +} + +// UpdatePrivacyBudgetTemplateWithContext is the same as UpdatePrivacyBudgetTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePrivacyBudgetTemplate 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 *CleanRooms) UpdatePrivacyBudgetTemplateWithContext(ctx aws.Context, input *UpdatePrivacyBudgetTemplateInput, opts ...request.Option) (*UpdatePrivacyBudgetTemplateOutput, error) { + req, out := c.UpdatePrivacyBudgetTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateProtectedQuery = "UpdateProtectedQuery" // UpdateProtectedQueryRequest generates a "aws/request.Request" representing the @@ -5191,7 +7103,7 @@ } // A type of analysis rule that enables the table owner to approve custom SQL -// queries on their configured tables. +// queries on their configured tables. It supports differential privacy. type AnalysisRuleCustom struct { _ struct{} `type:"structure"` @@ -5203,6 +7115,9 @@ // The Amazon Web Services accounts that are allowed to query by the custom // analysis rule. Required when allowedAnalyses is ANY_QUERY. AllowedAnalysisProviders []*string `locationName:"allowedAnalysisProviders" type:"list"` + + // The differential privacy configuration. + DifferentialPrivacy *DifferentialPrivacyConfiguration `locationName:"differentialPrivacy" type:"structure"` } // String returns the string representation. @@ -5229,6 +7144,11 @@ if s.AllowedAnalyses == nil { invalidParams.Add(request.NewErrParamRequired("AllowedAnalyses")) } + if s.DifferentialPrivacy != nil { + if err := s.DifferentialPrivacy.Validate(); err != nil { + invalidParams.AddNested("DifferentialPrivacy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -5248,6 +7168,12 @@ return s } +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *AnalysisRuleCustom) SetDifferentialPrivacy(v *DifferentialPrivacyConfiguration) *AnalysisRuleCustom { + s.DifferentialPrivacy = v + return s +} + // A type of analysis rule that enables row-level analysis. type AnalysisRuleList struct { _ struct{} `type:"structure"` @@ -6572,6 +8498,660 @@ return s } +// The configured audience model association within a collaboration. +type CollaborationConfiguredAudienceModelAssociation struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model association. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The unique ARN for the configured audience model's associated collaboration. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // A unique identifier for the collaboration that the configured audience model + // associations belong to. Accepts collaboration ID. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the configure audience model. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the configured audience model association was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The identifier used to reference members of the collaboration. Only supports + // AWS account ID. + // + // CreatorAccountId is a required field + CreatorAccountId *string `locationName:"creatorAccountId" min:"12" type:"string" required:"true"` + + // The description of the configured audience model association. + Description *string `locationName:"description" type:"string"` + + // The identifier of the configured audience model association. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The name of the configured audience model association. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The most recent time at which the configured audience model association was + // updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationConfiguredAudienceModelAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationConfiguredAudienceModelAssociation) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetArn(v string) *CollaborationConfiguredAudienceModelAssociation { + s.Arn = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetCollaborationArn(v string) *CollaborationConfiguredAudienceModelAssociation { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetCollaborationId(v string) *CollaborationConfiguredAudienceModelAssociation { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetConfiguredAudienceModelArn(v string) *CollaborationConfiguredAudienceModelAssociation { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetCreateTime(v time.Time) *CollaborationConfiguredAudienceModelAssociation { + s.CreateTime = &v + return s +} + +// SetCreatorAccountId sets the CreatorAccountId field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetCreatorAccountId(v string) *CollaborationConfiguredAudienceModelAssociation { + s.CreatorAccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetDescription(v string) *CollaborationConfiguredAudienceModelAssociation { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetId(v string) *CollaborationConfiguredAudienceModelAssociation { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetName(v string) *CollaborationConfiguredAudienceModelAssociation { + s.Name = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *CollaborationConfiguredAudienceModelAssociation) SetUpdateTime(v time.Time) *CollaborationConfiguredAudienceModelAssociation { + s.UpdateTime = &v + return s +} + +// A summary of the configured audience model association in the collaboration. +type CollaborationConfiguredAudienceModelAssociationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model association. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The unique ARN for the configured audience model's associated collaboration. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // A unique identifier for the collaboration that the configured audience model + // associations belong to. Accepts collaboration ID. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the configured audience model association was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The identifier used to reference members of the collaboration. Only supports + // AWS account ID. + // + // CreatorAccountId is a required field + CreatorAccountId *string `locationName:"creatorAccountId" min:"12" type:"string" required:"true"` + + // The description of the configured audience model association. + Description *string `locationName:"description" type:"string"` + + // The identifier of the configured audience model association. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The name of the configured audience model association. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The most recent time at which the configured audience model association was + // updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationConfiguredAudienceModelAssociationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationConfiguredAudienceModelAssociationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetArn(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.Arn = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetCollaborationArn(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetCollaborationId(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetCreateTime(v time.Time) *CollaborationConfiguredAudienceModelAssociationSummary { + s.CreateTime = &v + return s +} + +// SetCreatorAccountId sets the CreatorAccountId field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetCreatorAccountId(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.CreatorAccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetDescription(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetId(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetName(v string) *CollaborationConfiguredAudienceModelAssociationSummary { + s.Name = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *CollaborationConfiguredAudienceModelAssociationSummary) SetUpdateTime(v time.Time) *CollaborationConfiguredAudienceModelAssociationSummary { + s.UpdateTime = &v + return s +} + +// A summary of the collaboration privacy budgets. This summary includes the +// collaboration information, creation information, epsilon provided, and utility +// in terms of aggregations. +type CollaborationPrivacyBudgetSummary struct { + _ struct{} `type:"structure"` + + // The includes epsilon provided and utility in terms of aggregations. + // + // Budget is a required field + Budget *PrivacyBudget `locationName:"budget" type:"structure" required:"true"` + + // The ARN of the collaboration that includes this privacy budget. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // The unique identifier of the collaboration that includes this privacy budget. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the privacy budget was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The unique identifier of the account that created this privacy budget. + // + // CreatorAccountId is a required field + CreatorAccountId *string `locationName:"creatorAccountId" min:"12" type:"string" required:"true"` + + // The unique identifier of the collaboration privacy budget. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The ARN of the collaboration privacy budget template. + // + // PrivacyBudgetTemplateArn is a required field + PrivacyBudgetTemplateArn *string `locationName:"privacyBudgetTemplateArn" type:"string" required:"true"` + + // The unique identifier of the collaboration privacy budget template. + // + // PrivacyBudgetTemplateId is a required field + PrivacyBudgetTemplateId *string `locationName:"privacyBudgetTemplateId" min:"36" type:"string" required:"true"` + + // The type of privacy budget template. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // The most recent time at which the privacy budget was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationPrivacyBudgetSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationPrivacyBudgetSummary) GoString() string { + return s.String() +} + +// SetBudget sets the Budget field's value. +func (s *CollaborationPrivacyBudgetSummary) SetBudget(v *PrivacyBudget) *CollaborationPrivacyBudgetSummary { + s.Budget = v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *CollaborationPrivacyBudgetSummary) SetCollaborationArn(v string) *CollaborationPrivacyBudgetSummary { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *CollaborationPrivacyBudgetSummary) SetCollaborationId(v string) *CollaborationPrivacyBudgetSummary { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *CollaborationPrivacyBudgetSummary) SetCreateTime(v time.Time) *CollaborationPrivacyBudgetSummary { + s.CreateTime = &v + return s +} + +// SetCreatorAccountId sets the CreatorAccountId field's value. +func (s *CollaborationPrivacyBudgetSummary) SetCreatorAccountId(v string) *CollaborationPrivacyBudgetSummary { + s.CreatorAccountId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CollaborationPrivacyBudgetSummary) SetId(v string) *CollaborationPrivacyBudgetSummary { + s.Id = &v + return s +} + +// SetPrivacyBudgetTemplateArn sets the PrivacyBudgetTemplateArn field's value. +func (s *CollaborationPrivacyBudgetSummary) SetPrivacyBudgetTemplateArn(v string) *CollaborationPrivacyBudgetSummary { + s.PrivacyBudgetTemplateArn = &v + return s +} + +// SetPrivacyBudgetTemplateId sets the PrivacyBudgetTemplateId field's value. +func (s *CollaborationPrivacyBudgetSummary) SetPrivacyBudgetTemplateId(v string) *CollaborationPrivacyBudgetSummary { + s.PrivacyBudgetTemplateId = &v + return s +} + +// SetType sets the Type field's value. +func (s *CollaborationPrivacyBudgetSummary) SetType(v string) *CollaborationPrivacyBudgetSummary { + s.Type = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *CollaborationPrivacyBudgetSummary) SetUpdateTime(v time.Time) *CollaborationPrivacyBudgetSummary { + s.UpdateTime = &v + return s +} + +// An array that specifies the information for a collaboration's privacy budget +// template. +type CollaborationPrivacyBudgetTemplate struct { + _ struct{} `type:"structure"` + + // The ARN of the collaboration privacy budget template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // How often the privacy budget refreshes. + // + // If you plan to regularly bring new data into the collaboration, use CALENDAR_MONTH + // to automatically get a new privacy budget for the collaboration every calendar + // month. Choosing this option allows arbitrary amounts of information to be + // revealed about rows of the data when repeatedly queried across refreshes. + // Avoid choosing this if the same rows will be repeatedly queried between privacy + // budget refreshes. + // + // AutoRefresh is a required field + AutoRefresh *string `locationName:"autoRefresh" type:"string" required:"true" enum:"PrivacyBudgetTemplateAutoRefresh"` + + // The ARN of the collaboration that includes this collaboration privacy budget + // template. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // The unique identifier of the collaboration that includes this collaboration + // privacy budget template. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the collaboration privacy budget template was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The unique identifier of the account that created this collaboration privacy + // budget template. + // + // CreatorAccountId is a required field + CreatorAccountId *string `locationName:"creatorAccountId" min:"12" type:"string" required:"true"` + + // The unique identifier of the collaboration privacy budget template. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // Specifies the epsilon and noise parameters for the privacy budget template. + // + // Parameters is a required field + Parameters *PrivacyBudgetTemplateParametersOutput_ `locationName:"parameters" type:"structure" required:"true"` + + // The type of privacy budget template. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // The most recent time at which the collaboration privacy budget template was + // updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationPrivacyBudgetTemplate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationPrivacyBudgetTemplate) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetArn(v string) *CollaborationPrivacyBudgetTemplate { + s.Arn = &v + return s +} + +// SetAutoRefresh sets the AutoRefresh field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetAutoRefresh(v string) *CollaborationPrivacyBudgetTemplate { + s.AutoRefresh = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetCollaborationArn(v string) *CollaborationPrivacyBudgetTemplate { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetCollaborationId(v string) *CollaborationPrivacyBudgetTemplate { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetCreateTime(v time.Time) *CollaborationPrivacyBudgetTemplate { + s.CreateTime = &v + return s +} + +// SetCreatorAccountId sets the CreatorAccountId field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetCreatorAccountId(v string) *CollaborationPrivacyBudgetTemplate { + s.CreatorAccountId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetId(v string) *CollaborationPrivacyBudgetTemplate { + s.Id = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetParameters(v *PrivacyBudgetTemplateParametersOutput_) *CollaborationPrivacyBudgetTemplate { + s.Parameters = v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetPrivacyBudgetType(v string) *CollaborationPrivacyBudgetTemplate { + s.PrivacyBudgetType = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *CollaborationPrivacyBudgetTemplate) SetUpdateTime(v time.Time) *CollaborationPrivacyBudgetTemplate { + s.UpdateTime = &v + return s +} + +// A summary of the collaboration's privacy budget template. This summary includes +// information about who created the privacy budget template and what collaborations +// it belongs to. +type CollaborationPrivacyBudgetTemplateSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the collaboration privacy budget template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The ARN of the collaboration that contains this collaboration privacy budget + // template. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // The unique identifier of the collaboration that contains this collaboration + // privacy budget template. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the collaboration privacy budget template was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The unique identifier of the account that created this collaboration privacy + // budget template. + // + // CreatorAccountId is a required field + CreatorAccountId *string `locationName:"creatorAccountId" min:"12" type:"string" required:"true"` + + // The unique identifier of the collaboration privacy budget template. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The type of the privacy budget template. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // The most recent time at which the collaboration privacy budget template was + // updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationPrivacyBudgetTemplateSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollaborationPrivacyBudgetTemplateSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetArn(v string) *CollaborationPrivacyBudgetTemplateSummary { + s.Arn = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetCollaborationArn(v string) *CollaborationPrivacyBudgetTemplateSummary { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetCollaborationId(v string) *CollaborationPrivacyBudgetTemplateSummary { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetCreateTime(v time.Time) *CollaborationPrivacyBudgetTemplateSummary { + s.CreateTime = &v + return s +} + +// SetCreatorAccountId sets the CreatorAccountId field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetCreatorAccountId(v string) *CollaborationPrivacyBudgetTemplateSummary { + s.CreatorAccountId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetId(v string) *CollaborationPrivacyBudgetTemplateSummary { + s.Id = &v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetPrivacyBudgetType(v string) *CollaborationPrivacyBudgetTemplateSummary { + s.PrivacyBudgetType = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *CollaborationPrivacyBudgetTemplateSummary) SetUpdateTime(v time.Time) *CollaborationPrivacyBudgetTemplateSummary { + s.UpdateTime = &v + return s +} + // The metadata of the collaboration. type CollaborationSummary struct { _ struct{} `type:"structure"` @@ -6748,6 +9328,317 @@ return s } +// Details about the configured audience model association. +type ConfiguredAudienceModelAssociation struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model association. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the collaboration that contains this configured + // audience model association. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // A unique identifier of the collaboration that contains this configured audience + // model association. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model that was + // used for this configured audience model association. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the configured audience model association was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The description of the configured audience model association. + Description *string `locationName:"description" type:"string"` + + // A unique identifier of the configured audience model association. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // When TRUE, indicates that the resource policy for the configured audience + // model resource being associated is configured for Clean Rooms to manage permissions + // related to the given collaboration. When FALSE, indicates that the configured + // audience model resource owner will manage permissions related to the given + // collaboration. + // + // ManageResourcePolicies is a required field + ManageResourcePolicies *bool `locationName:"manageResourcePolicies" type:"boolean" required:"true"` + + // The Amazon Resource Name (ARN) of the membership that contains this configured + // audience model association. + // + // MembershipArn is a required field + MembershipArn *string `locationName:"membershipArn" type:"string" required:"true"` + + // A unique identifier for the membership that contains this configured audience + // model association. + // + // MembershipId is a required field + MembershipId *string `locationName:"membershipId" min:"36" type:"string" required:"true"` + + // The name of the configured audience model association. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The most recent time at which the configured audience model association was + // updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelAssociation) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ConfiguredAudienceModelAssociation) SetArn(v string) *ConfiguredAudienceModelAssociation { + s.Arn = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *ConfiguredAudienceModelAssociation) SetCollaborationArn(v string) *ConfiguredAudienceModelAssociation { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *ConfiguredAudienceModelAssociation) SetCollaborationId(v string) *ConfiguredAudienceModelAssociation { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *ConfiguredAudienceModelAssociation) SetConfiguredAudienceModelArn(v string) *ConfiguredAudienceModelAssociation { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *ConfiguredAudienceModelAssociation) SetCreateTime(v time.Time) *ConfiguredAudienceModelAssociation { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ConfiguredAudienceModelAssociation) SetDescription(v string) *ConfiguredAudienceModelAssociation { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *ConfiguredAudienceModelAssociation) SetId(v string) *ConfiguredAudienceModelAssociation { + s.Id = &v + return s +} + +// SetManageResourcePolicies sets the ManageResourcePolicies field's value. +func (s *ConfiguredAudienceModelAssociation) SetManageResourcePolicies(v bool) *ConfiguredAudienceModelAssociation { + s.ManageResourcePolicies = &v + return s +} + +// SetMembershipArn sets the MembershipArn field's value. +func (s *ConfiguredAudienceModelAssociation) SetMembershipArn(v string) *ConfiguredAudienceModelAssociation { + s.MembershipArn = &v + return s +} + +// SetMembershipId sets the MembershipId field's value. +func (s *ConfiguredAudienceModelAssociation) SetMembershipId(v string) *ConfiguredAudienceModelAssociation { + s.MembershipId = &v + return s +} + +// SetName sets the Name field's value. +func (s *ConfiguredAudienceModelAssociation) SetName(v string) *ConfiguredAudienceModelAssociation { + s.Name = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *ConfiguredAudienceModelAssociation) SetUpdateTime(v time.Time) *ConfiguredAudienceModelAssociation { + s.UpdateTime = &v + return s +} + +// A summary of the configured audience model association. +type ConfiguredAudienceModelAssociationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model association. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the collaboration that contains the configured + // audience model association. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // A unique identifier of the collaboration that configured audience model is + // associated with. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model that was + // used for this configured audience model association. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the configured audience model association was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The description of the configured audience model association. + Description *string `locationName:"description" type:"string"` + + // A unique identifier of the configured audience model association. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the membership that contains the configured + // audience model association. + // + // MembershipArn is a required field + MembershipArn *string `locationName:"membershipArn" type:"string" required:"true"` + + // A unique identifier of the membership that contains the configured audience + // model association. + // + // MembershipId is a required field + MembershipId *string `locationName:"membershipId" min:"36" type:"string" required:"true"` + + // The name of the configured audience model association. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The most recent time at which the configured audience model association was + // updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelAssociationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelAssociationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetArn(v string) *ConfiguredAudienceModelAssociationSummary { + s.Arn = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetCollaborationArn(v string) *ConfiguredAudienceModelAssociationSummary { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetCollaborationId(v string) *ConfiguredAudienceModelAssociationSummary { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetConfiguredAudienceModelArn(v string) *ConfiguredAudienceModelAssociationSummary { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetCreateTime(v time.Time) *ConfiguredAudienceModelAssociationSummary { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetDescription(v string) *ConfiguredAudienceModelAssociationSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetId(v string) *ConfiguredAudienceModelAssociationSummary { + s.Id = &v + return s +} + +// SetMembershipArn sets the MembershipArn field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetMembershipArn(v string) *ConfiguredAudienceModelAssociationSummary { + s.MembershipArn = &v + return s +} + +// SetMembershipId sets the MembershipId field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetMembershipId(v string) *ConfiguredAudienceModelAssociationSummary { + s.MembershipId = &v + return s +} + +// SetName sets the Name field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetName(v string) *ConfiguredAudienceModelAssociationSummary { + s.Name = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *ConfiguredAudienceModelAssociationSummary) SetUpdateTime(v time.Time) *ConfiguredAudienceModelAssociationSummary { + s.UpdateTime = &v + return s +} + // A table that has been configured for use in a collaboration. type ConfiguredTable struct { _ struct{} `type:"structure"` @@ -7028,7 +9919,7 @@ Aggregation *AnalysisRuleAggregation `locationName:"aggregation" type:"structure"` // A type of analysis rule that enables the table owner to approve custom SQL - // queries on their configured tables. + // queries on their configured tables. It supports differential privacy. Custom *AnalysisRuleCustom `locationName:"custom" type:"structure"` // Analysis rule type that enables only list queries on a configured table. @@ -7714,6 +10605,13 @@ // CreatorMemberAbilities is a required field CreatorMemberAbilities []*string `locationName:"creatorMemberAbilities" type:"list" required:"true" enum:"MemberAbility"` + // The collaboration creator's payment responsibilities set by the collaboration + // creator. + // + // If the collaboration creator hasn't specified anyone as the member paying + // for query compute costs, then the member who can query is the default payer. + CreatorPaymentConfiguration *PaymentConfiguration `locationName:"creatorPaymentConfiguration" type:"structure"` + // The settings for client-side encryption with Cryptographic Computing for // Clean Rooms. DataEncryptionMetadata *DataEncryptionMetadata `locationName:"dataEncryptionMetadata" type:"structure"` @@ -7794,6 +10692,11 @@ if s.QueryLogStatus == nil { invalidParams.Add(request.NewErrParamRequired("QueryLogStatus")) } + if s.CreatorPaymentConfiguration != nil { + if err := s.CreatorPaymentConfiguration.Validate(); err != nil { + invalidParams.AddNested("CreatorPaymentConfiguration", err.(request.ErrInvalidParams)) + } + } if s.DataEncryptionMetadata != nil { if err := s.DataEncryptionMetadata.Validate(); err != nil { invalidParams.AddNested("DataEncryptionMetadata", err.(request.ErrInvalidParams)) @@ -7828,6 +10731,12 @@ return s } +// SetCreatorPaymentConfiguration sets the CreatorPaymentConfiguration field's value. +func (s *CreateCollaborationInput) SetCreatorPaymentConfiguration(v *PaymentConfiguration) *CreateCollaborationInput { + s.CreatorPaymentConfiguration = v + return s +} + // SetDataEncryptionMetadata sets the DataEncryptionMetadata field's value. func (s *CreateCollaborationInput) SetDataEncryptionMetadata(v *DataEncryptionMetadata) *CreateCollaborationInput { s.DataEncryptionMetadata = v @@ -7897,6 +10806,169 @@ return s } +type CreateConfiguredAudienceModelAssociationInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for the configured audience model that you want to associate. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The name of the configured audience model association. + // + // ConfiguredAudienceModelAssociationName is a required field + ConfiguredAudienceModelAssociationName *string `locationName:"configuredAudienceModelAssociationName" min:"1" type:"string" required:"true"` + + // A description of the configured audience model association. + Description *string `locationName:"description" type:"string"` + + // When TRUE, indicates that the resource policy for the configured audience + // model resource being associated is configured for Clean Rooms to manage permissions + // related to the given collaboration. When FALSE, indicates that the configured + // audience model resource owner will manage permissions related to the given + // collaboration. + // + // Setting this to TRUE requires you to have permissions to create, update, + // and delete the resource policy for the cleanrooms-ml resource when you call + // the DeleteConfiguredAudienceModelAssociation resource. In addition, if you + // are the collaboration creator and specify TRUE, you must have the same permissions + // when you call the DeleteMember and DeleteCollaboration APIs. + // + // ManageResourcePolicies is a required field + ManageResourcePolicies *bool `locationName:"manageResourcePolicies" type:"boolean" required:"true"` + + // A unique identifier for one of your memberships for a collaboration. The + // configured audience model is associated to the collaboration that this membership + // belongs to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // An optional label that you can assign to a resource when you create it. Each + // tag consists of a key and an optional value, both of which you define. When + // you use tagging, you can also use tag-based access control in IAM policies + // to control access to this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateConfiguredAudienceModelAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateConfiguredAudienceModelAssociationInput"} + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + if s.ConfiguredAudienceModelAssociationName == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelAssociationName")) + } + if s.ConfiguredAudienceModelAssociationName != nil && len(*s.ConfiguredAudienceModelAssociationName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelAssociationName", 1)) + } + if s.ManageResourcePolicies == nil { + invalidParams.Add(request.NewErrParamRequired("ManageResourcePolicies")) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *CreateConfiguredAudienceModelAssociationInput) SetConfiguredAudienceModelArn(v string) *CreateConfiguredAudienceModelAssociationInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetConfiguredAudienceModelAssociationName sets the ConfiguredAudienceModelAssociationName field's value. +func (s *CreateConfiguredAudienceModelAssociationInput) SetConfiguredAudienceModelAssociationName(v string) *CreateConfiguredAudienceModelAssociationInput { + s.ConfiguredAudienceModelAssociationName = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateConfiguredAudienceModelAssociationInput) SetDescription(v string) *CreateConfiguredAudienceModelAssociationInput { + s.Description = &v + return s +} + +// SetManageResourcePolicies sets the ManageResourcePolicies field's value. +func (s *CreateConfiguredAudienceModelAssociationInput) SetManageResourcePolicies(v bool) *CreateConfiguredAudienceModelAssociationInput { + s.ManageResourcePolicies = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *CreateConfiguredAudienceModelAssociationInput) SetMembershipIdentifier(v string) *CreateConfiguredAudienceModelAssociationInput { + s.MembershipIdentifier = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateConfiguredAudienceModelAssociationInput) SetTags(v map[string]*string) *CreateConfiguredAudienceModelAssociationInput { + s.Tags = v + return s +} + +type CreateConfiguredAudienceModelAssociationOutput struct { + _ struct{} `type:"structure"` + + // Information about the configured audience model association. + // + // ConfiguredAudienceModelAssociation is a required field + ConfiguredAudienceModelAssociation *ConfiguredAudienceModelAssociation `locationName:"configuredAudienceModelAssociation" 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 CreateConfiguredAudienceModelAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelAssociationOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelAssociation sets the ConfiguredAudienceModelAssociation field's value. +func (s *CreateConfiguredAudienceModelAssociationOutput) SetConfiguredAudienceModelAssociation(v *ConfiguredAudienceModelAssociation) *CreateConfiguredAudienceModelAssociationOutput { + s.ConfiguredAudienceModelAssociation = v + return s +} + type CreateConfiguredTableAnalysisRuleInput struct { _ struct{} `type:"structure"` @@ -8336,8 +11408,16 @@ // who can receive results. DefaultResultConfiguration *MembershipProtectedQueryResultConfiguration `locationName:"defaultResultConfiguration" type:"structure"` + // The payment responsibilities accepted by the collaboration member. + // + // Not required if the collaboration member has the member ability to run queries. + // + // Required if the collaboration member doesn't have the member ability to run + // queries but is configured as a payer by the collaboration creator. + PaymentConfiguration *MembershipPaymentConfiguration `locationName:"paymentConfiguration" type:"structure"` + // An indicator as to whether query logging has been enabled or disabled for - // the collaboration. + // the membership. // // QueryLogStatus is a required field QueryLogStatus *string `locationName:"queryLogStatus" type:"string" required:"true" enum:"MembershipQueryLogStatus"` @@ -8384,6 +11464,11 @@ invalidParams.AddNested("DefaultResultConfiguration", err.(request.ErrInvalidParams)) } } + if s.PaymentConfiguration != nil { + if err := s.PaymentConfiguration.Validate(); err != nil { + invalidParams.AddNested("PaymentConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -8403,6 +11488,12 @@ return s } +// SetPaymentConfiguration sets the PaymentConfiguration field's value. +func (s *CreateMembershipInput) SetPaymentConfiguration(v *MembershipPaymentConfiguration) *CreateMembershipInput { + s.PaymentConfiguration = v + return s +} + // SetQueryLogStatus sets the QueryLogStatus field's value. func (s *CreateMembershipInput) SetQueryLogStatus(v string) *CreateMembershipInput { s.QueryLogStatus = &v @@ -8448,31 +11539,181 @@ return s } +type CreatePrivacyBudgetTemplateInput struct { + _ struct{} `type:"structure"` + + // How often the privacy budget refreshes. + // + // If you plan to regularly bring new data into the collaboration, you can use + // CALENDAR_MONTH to automatically get a new privacy budget for the collaboration + // every calendar month. Choosing this option allows arbitrary amounts of information + // to be revealed about rows of the data when repeatedly queries across refreshes. + // Avoid choosing this if the same rows will be repeatedly queried between privacy + // budget refreshes. + // + // AutoRefresh is a required field + AutoRefresh *string `locationName:"autoRefresh" type:"string" required:"true" enum:"PrivacyBudgetTemplateAutoRefresh"` + + // A unique identifier for one of your memberships for a collaboration. The + // privacy budget template is created in the collaboration that this membership + // belongs to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // Specifies your parameters for the privacy budget template. + // + // Parameters is a required field + Parameters *PrivacyBudgetTemplateParametersInput_ `locationName:"parameters" type:"structure" required:"true"` + + // Specifies the type of the privacy budget template. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // An optional label that you can assign to a resource when you create it. Each + // tag consists of a key and an optional value, both of which you define. When + // you use tagging, you can also use tag-based access control in IAM policies + // to control access to this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePrivacyBudgetTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePrivacyBudgetTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePrivacyBudgetTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePrivacyBudgetTemplateInput"} + if s.AutoRefresh == nil { + invalidParams.Add(request.NewErrParamRequired("AutoRefresh")) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.Parameters == nil { + invalidParams.Add(request.NewErrParamRequired("Parameters")) + } + if s.PrivacyBudgetType == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetType")) + } + if s.Parameters != nil { + if err := s.Parameters.Validate(); err != nil { + invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoRefresh sets the AutoRefresh field's value. +func (s *CreatePrivacyBudgetTemplateInput) SetAutoRefresh(v string) *CreatePrivacyBudgetTemplateInput { + s.AutoRefresh = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *CreatePrivacyBudgetTemplateInput) SetMembershipIdentifier(v string) *CreatePrivacyBudgetTemplateInput { + s.MembershipIdentifier = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreatePrivacyBudgetTemplateInput) SetParameters(v *PrivacyBudgetTemplateParametersInput_) *CreatePrivacyBudgetTemplateInput { + s.Parameters = v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *CreatePrivacyBudgetTemplateInput) SetPrivacyBudgetType(v string) *CreatePrivacyBudgetTemplateInput { + s.PrivacyBudgetType = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreatePrivacyBudgetTemplateInput) SetTags(v map[string]*string) *CreatePrivacyBudgetTemplateInput { + s.Tags = v + return s +} + +type CreatePrivacyBudgetTemplateOutput struct { + _ struct{} `type:"structure"` + + // A summary of the elements in the privacy budget template. + // + // PrivacyBudgetTemplate is a required field + PrivacyBudgetTemplate *PrivacyBudgetTemplate `locationName:"privacyBudgetTemplate" 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 CreatePrivacyBudgetTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePrivacyBudgetTemplateOutput) GoString() string { + return s.String() +} + +// SetPrivacyBudgetTemplate sets the PrivacyBudgetTemplate field's value. +func (s *CreatePrivacyBudgetTemplateOutput) SetPrivacyBudgetTemplate(v *PrivacyBudgetTemplate) *CreatePrivacyBudgetTemplateOutput { + s.PrivacyBudgetTemplate = v + return s +} + // The settings for client-side encryption for cryptographic computing. type DataEncryptionMetadata struct { _ struct{} `type:"structure"` - // Indicates whether encrypted tables can contain cleartext data (true) or are - // to cryptographically process every column (false). + // Indicates whether encrypted tables can contain cleartext data (TRUE) or are + // to cryptographically process every column (FALSE). // // AllowCleartext is a required field AllowCleartext *bool `locationName:"allowCleartext" type:"boolean" required:"true"` - // Indicates whether Fingerprint columns can contain duplicate entries (true) - // or are to contain only non-repeated values (false). + // Indicates whether Fingerprint columns can contain duplicate entries (TRUE) + // or are to contain only non-repeated values (FALSE). // // AllowDuplicates is a required field AllowDuplicates *bool `locationName:"allowDuplicates" type:"boolean" required:"true"` // Indicates whether Fingerprint columns can be joined on any other Fingerprint - // column with a different name (true) or can only be joined on Fingerprint - // columns of the same name (false). + // column with a different name (TRUE) or can only be joined on Fingerprint + // columns of the same name (FALSE). // // AllowJoinsOnColumnsWithDifferentNames is a required field AllowJoinsOnColumnsWithDifferentNames *bool `locationName:"allowJoinsOnColumnsWithDifferentNames" type:"boolean" required:"true"` // Indicates whether NULL values are to be copied as NULL to encrypted tables - // (true) or cryptographically processed (false). + // (TRUE) or cryptographically processed (FALSE). // // PreserveNulls is a required field PreserveNulls *bool `locationName:"preserveNulls" type:"boolean" required:"true"` @@ -8701,6 +11942,96 @@ return s.String() } +type DeleteConfiguredAudienceModelAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier of the configured audience model association that you + // want to delete. + // + // ConfiguredAudienceModelAssociationIdentifier is a required field + ConfiguredAudienceModelAssociationIdentifier *string `location:"uri" locationName:"configuredAudienceModelAssociationIdentifier" min:"36" type:"string" required:"true"` + + // A unique identifier of the membership that contains the audience model association + // that you want to delete. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" 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 DeleteConfiguredAudienceModelAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConfiguredAudienceModelAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConfiguredAudienceModelAssociationInput"} + if s.ConfiguredAudienceModelAssociationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelAssociationIdentifier")) + } + if s.ConfiguredAudienceModelAssociationIdentifier != nil && len(*s.ConfiguredAudienceModelAssociationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelAssociationIdentifier", 36)) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelAssociationIdentifier sets the ConfiguredAudienceModelAssociationIdentifier field's value. +func (s *DeleteConfiguredAudienceModelAssociationInput) SetConfiguredAudienceModelAssociationIdentifier(v string) *DeleteConfiguredAudienceModelAssociationInput { + s.ConfiguredAudienceModelAssociationIdentifier = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *DeleteConfiguredAudienceModelAssociationInput) SetMembershipIdentifier(v string) *DeleteConfiguredAudienceModelAssociationInput { + s.MembershipIdentifier = &v + return s +} + +type DeleteConfiguredAudienceModelAssociationOutput 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 DeleteConfiguredAudienceModelAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelAssociationOutput) GoString() string { + return s.String() +} + type DeleteConfiguredTableAnalysisRuleInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9114,6 +12445,755 @@ return s.String() } +type DeletePrivacyBudgetTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for one of your memberships for a collaboration. The + // privacy budget template is deleted from the collaboration that this membership + // belongs to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // A unique identifier for your privacy budget template. + // + // PrivacyBudgetTemplateIdentifier is a required field + PrivacyBudgetTemplateIdentifier *string `location:"uri" locationName:"privacyBudgetTemplateIdentifier" min:"36" 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 DeletePrivacyBudgetTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePrivacyBudgetTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeletePrivacyBudgetTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeletePrivacyBudgetTemplateInput"} + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.PrivacyBudgetTemplateIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetTemplateIdentifier")) + } + if s.PrivacyBudgetTemplateIdentifier != nil && len(*s.PrivacyBudgetTemplateIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PrivacyBudgetTemplateIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *DeletePrivacyBudgetTemplateInput) SetMembershipIdentifier(v string) *DeletePrivacyBudgetTemplateInput { + s.MembershipIdentifier = &v + return s +} + +// SetPrivacyBudgetTemplateIdentifier sets the PrivacyBudgetTemplateIdentifier field's value. +func (s *DeletePrivacyBudgetTemplateInput) SetPrivacyBudgetTemplateIdentifier(v string) *DeletePrivacyBudgetTemplateInput { + s.PrivacyBudgetTemplateIdentifier = &v + return s +} + +type DeletePrivacyBudgetTemplateOutput 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 DeletePrivacyBudgetTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePrivacyBudgetTemplateOutput) GoString() string { + return s.String() +} + +// Specifies the name of the column that contains the unique identifier of your +// users, whose privacy you want to protect. +type DifferentialPrivacyColumn struct { + _ struct{} `type:"structure"` + + // The name of the column, such as user_id, that contains the unique identifier + // of your users, whose privacy you want to protect. If you want to turn on + // differential privacy for two or more tables in a collaboration, you must + // configure the same column as the user identifier column in both analysis + // rules. + // + // Name is a required field + Name *string `locationName:"name" 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 DifferentialPrivacyColumn) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyColumn) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DifferentialPrivacyColumn) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DifferentialPrivacyColumn"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DifferentialPrivacyColumn) SetName(v string) *DifferentialPrivacyColumn { + s.Name = &v + return s +} + +// Specifies the unique identifier for your users. +type DifferentialPrivacyConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the column (such as user_id) that contains the unique identifier + // of your users whose privacy you want to protect. If you want to turn on differential + // privacy for two or more tables in a collaboration, you must configure the + // same column as the user identifier column in both analysis rules. + // + // Columns is a required field + Columns []*DifferentialPrivacyColumn `locationName:"columns" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DifferentialPrivacyConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DifferentialPrivacyConfiguration"} + if s.Columns == nil { + invalidParams.Add(request.NewErrParamRequired("Columns")) + } + if s.Columns != nil && len(s.Columns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) + } + if s.Columns != nil { + for i, v := range s.Columns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Columns", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumns sets the Columns field's value. +func (s *DifferentialPrivacyConfiguration) SetColumns(v []*DifferentialPrivacyColumn) *DifferentialPrivacyConfiguration { + s.Columns = v + return s +} + +// An array that contains the sensitivity parameters. +type DifferentialPrivacyParameters struct { + _ struct{} `type:"structure"` + + // Provides the sensitivity parameters that you can use to better understand + // the total amount of noise in query results. + // + // SensitivityParameters is a required field + SensitivityParameters []*DifferentialPrivacySensitivityParameters `locationName:"sensitivityParameters" 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 DifferentialPrivacyParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyParameters) GoString() string { + return s.String() +} + +// SetSensitivityParameters sets the SensitivityParameters field's value. +func (s *DifferentialPrivacyParameters) SetSensitivityParameters(v []*DifferentialPrivacySensitivityParameters) *DifferentialPrivacyParameters { + s.SensitivityParameters = v + return s +} + +// Provides an estimate of the number of aggregation functions that the member +// who can query can run given the epsilon and noise parameters. +type DifferentialPrivacyPreviewAggregation struct { + _ struct{} `type:"structure"` + + // The maximum number of aggregations that the member who can query can run + // given the epsilon and noise parameters. + // + // MaxCount is a required field + MaxCount *int64 `locationName:"maxCount" type:"integer" required:"true"` + + // The type of aggregation function. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DifferentialPrivacyAggregationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPreviewAggregation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPreviewAggregation) GoString() string { + return s.String() +} + +// SetMaxCount sets the MaxCount field's value. +func (s *DifferentialPrivacyPreviewAggregation) SetMaxCount(v int64) *DifferentialPrivacyPreviewAggregation { + s.MaxCount = &v + return s +} + +// SetType sets the Type field's value. +func (s *DifferentialPrivacyPreviewAggregation) SetType(v string) *DifferentialPrivacyPreviewAggregation { + s.Type = &v + return s +} + +// The epsilon and noise parameters that you want to preview. +type DifferentialPrivacyPreviewParametersInput_ struct { + _ struct{} `type:"structure"` + + // The epsilon value that you want to preview. + // + // Epsilon is a required field + Epsilon *int64 `locationName:"epsilon" min:"1" type:"integer" required:"true"` + + // Noise added per query is measured in terms of the number of users whose contributions + // you want to obscure. This value governs the rate at which the privacy budget + // is depleted. + // + // UsersNoisePerQuery is a required field + UsersNoisePerQuery *int64 `locationName:"usersNoisePerQuery" min:"10" type:"integer" 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 DifferentialPrivacyPreviewParametersInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPreviewParametersInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DifferentialPrivacyPreviewParametersInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DifferentialPrivacyPreviewParametersInput_"} + if s.Epsilon == nil { + invalidParams.Add(request.NewErrParamRequired("Epsilon")) + } + if s.Epsilon != nil && *s.Epsilon < 1 { + invalidParams.Add(request.NewErrParamMinValue("Epsilon", 1)) + } + if s.UsersNoisePerQuery == nil { + invalidParams.Add(request.NewErrParamRequired("UsersNoisePerQuery")) + } + if s.UsersNoisePerQuery != nil && *s.UsersNoisePerQuery < 10 { + invalidParams.Add(request.NewErrParamMinValue("UsersNoisePerQuery", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEpsilon sets the Epsilon field's value. +func (s *DifferentialPrivacyPreviewParametersInput_) SetEpsilon(v int64) *DifferentialPrivacyPreviewParametersInput_ { + s.Epsilon = &v + return s +} + +// SetUsersNoisePerQuery sets the UsersNoisePerQuery field's value. +func (s *DifferentialPrivacyPreviewParametersInput_) SetUsersNoisePerQuery(v int64) *DifferentialPrivacyPreviewParametersInput_ { + s.UsersNoisePerQuery = &v + return s +} + +// Specifies the configured epsilon value and the utility in terms of total +// aggregations, as well as the remaining aggregations available. +type DifferentialPrivacyPrivacyBudget struct { + _ struct{} `type:"structure"` + + // This information includes the configured epsilon value and the utility in + // terms of total aggregations, as well as the remaining aggregations. + // + // Aggregations is a required field + Aggregations []*DifferentialPrivacyPrivacyBudgetAggregation `locationName:"aggregations" type:"list" required:"true"` + + // The epsilon value that you configured. + // + // Epsilon is a required field + Epsilon *int64 `locationName:"epsilon" min:"1" type:"integer" 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 DifferentialPrivacyPrivacyBudget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPrivacyBudget) GoString() string { + return s.String() +} + +// SetAggregations sets the Aggregations field's value. +func (s *DifferentialPrivacyPrivacyBudget) SetAggregations(v []*DifferentialPrivacyPrivacyBudgetAggregation) *DifferentialPrivacyPrivacyBudget { + s.Aggregations = v + return s +} + +// SetEpsilon sets the Epsilon field's value. +func (s *DifferentialPrivacyPrivacyBudget) SetEpsilon(v int64) *DifferentialPrivacyPrivacyBudget { + s.Epsilon = &v + return s +} + +// Information about the total number of aggregations, as well as the remaining +// aggregations. +type DifferentialPrivacyPrivacyBudgetAggregation struct { + _ struct{} `type:"structure"` + + // The maximum number of aggregation functions that you can perform with the + // given privacy budget. + // + // MaxCount is a required field + MaxCount *int64 `locationName:"maxCount" type:"integer" required:"true"` + + // The remaining number of aggregation functions that can be run with the available + // privacy budget. + // + // RemainingCount is a required field + RemainingCount *int64 `locationName:"remainingCount" type:"integer" required:"true"` + + // The different types of aggregation functions that you can perform. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DifferentialPrivacyAggregationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPrivacyBudgetAggregation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPrivacyBudgetAggregation) GoString() string { + return s.String() +} + +// SetMaxCount sets the MaxCount field's value. +func (s *DifferentialPrivacyPrivacyBudgetAggregation) SetMaxCount(v int64) *DifferentialPrivacyPrivacyBudgetAggregation { + s.MaxCount = &v + return s +} + +// SetRemainingCount sets the RemainingCount field's value. +func (s *DifferentialPrivacyPrivacyBudgetAggregation) SetRemainingCount(v int64) *DifferentialPrivacyPrivacyBudgetAggregation { + s.RemainingCount = &v + return s +} + +// SetType sets the Type field's value. +func (s *DifferentialPrivacyPrivacyBudgetAggregation) SetType(v string) *DifferentialPrivacyPrivacyBudgetAggregation { + s.Type = &v + return s +} + +// Information about the number of aggregation functions that the member who +// can query can run given the epsilon and noise parameters. +type DifferentialPrivacyPrivacyImpact struct { + _ struct{} `type:"structure"` + + // The number of aggregation functions that you can perform. + // + // Aggregations is a required field + Aggregations []*DifferentialPrivacyPreviewAggregation `locationName:"aggregations" 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 DifferentialPrivacyPrivacyImpact) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyPrivacyImpact) GoString() string { + return s.String() +} + +// SetAggregations sets the Aggregations field's value. +func (s *DifferentialPrivacyPrivacyImpact) SetAggregations(v []*DifferentialPrivacyPreviewAggregation) *DifferentialPrivacyPrivacyImpact { + s.Aggregations = v + return s +} + +// Provides the sensitivity parameters. +type DifferentialPrivacySensitivityParameters struct { + _ struct{} `type:"structure"` + + // The aggregation expression that was run. + // + // AggregationExpression is a required field + AggregationExpression *string `locationName:"aggregationExpression" min:"1" type:"string" required:"true"` + + // The type of aggregation function that was run. + // + // AggregationType is a required field + AggregationType *string `locationName:"aggregationType" type:"string" required:"true" enum:"DifferentialPrivacyAggregationType"` + + // The upper bound of the aggregation expression. + MaxColumnValue *float64 `locationName:"maxColumnValue" type:"float"` + + // The lower bound of the aggregation expression. + MinColumnValue *float64 `locationName:"minColumnValue" type:"float"` + + // The maximum number of rows contributed by a user in a SQL query. + // + // UserContributionLimit is a required field + UserContributionLimit *int64 `locationName:"userContributionLimit" type:"integer" 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 DifferentialPrivacySensitivityParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacySensitivityParameters) GoString() string { + return s.String() +} + +// SetAggregationExpression sets the AggregationExpression field's value. +func (s *DifferentialPrivacySensitivityParameters) SetAggregationExpression(v string) *DifferentialPrivacySensitivityParameters { + s.AggregationExpression = &v + return s +} + +// SetAggregationType sets the AggregationType field's value. +func (s *DifferentialPrivacySensitivityParameters) SetAggregationType(v string) *DifferentialPrivacySensitivityParameters { + s.AggregationType = &v + return s +} + +// SetMaxColumnValue sets the MaxColumnValue field's value. +func (s *DifferentialPrivacySensitivityParameters) SetMaxColumnValue(v float64) *DifferentialPrivacySensitivityParameters { + s.MaxColumnValue = &v + return s +} + +// SetMinColumnValue sets the MinColumnValue field's value. +func (s *DifferentialPrivacySensitivityParameters) SetMinColumnValue(v float64) *DifferentialPrivacySensitivityParameters { + s.MinColumnValue = &v + return s +} + +// SetUserContributionLimit sets the UserContributionLimit field's value. +func (s *DifferentialPrivacySensitivityParameters) SetUserContributionLimit(v int64) *DifferentialPrivacySensitivityParameters { + s.UserContributionLimit = &v + return s +} + +// The epsilon and noise parameter values that you want to use for the differential +// privacy template. +type DifferentialPrivacyTemplateParametersInput_ struct { + _ struct{} `type:"structure"` + + // The epsilon value that you want to use. + // + // Epsilon is a required field + Epsilon *int64 `locationName:"epsilon" min:"1" type:"integer" required:"true"` + + // Noise added per query is measured in terms of the number of users whose contributions + // you want to obscure. This value governs the rate at which the privacy budget + // is depleted. + // + // UsersNoisePerQuery is a required field + UsersNoisePerQuery *int64 `locationName:"usersNoisePerQuery" min:"10" type:"integer" 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 DifferentialPrivacyTemplateParametersInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyTemplateParametersInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DifferentialPrivacyTemplateParametersInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DifferentialPrivacyTemplateParametersInput_"} + if s.Epsilon == nil { + invalidParams.Add(request.NewErrParamRequired("Epsilon")) + } + if s.Epsilon != nil && *s.Epsilon < 1 { + invalidParams.Add(request.NewErrParamMinValue("Epsilon", 1)) + } + if s.UsersNoisePerQuery == nil { + invalidParams.Add(request.NewErrParamRequired("UsersNoisePerQuery")) + } + if s.UsersNoisePerQuery != nil && *s.UsersNoisePerQuery < 10 { + invalidParams.Add(request.NewErrParamMinValue("UsersNoisePerQuery", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEpsilon sets the Epsilon field's value. +func (s *DifferentialPrivacyTemplateParametersInput_) SetEpsilon(v int64) *DifferentialPrivacyTemplateParametersInput_ { + s.Epsilon = &v + return s +} + +// SetUsersNoisePerQuery sets the UsersNoisePerQuery field's value. +func (s *DifferentialPrivacyTemplateParametersInput_) SetUsersNoisePerQuery(v int64) *DifferentialPrivacyTemplateParametersInput_ { + s.UsersNoisePerQuery = &v + return s +} + +// The epsilon and noise parameter values that were used for the differential +// privacy template. +type DifferentialPrivacyTemplateParametersOutput_ struct { + _ struct{} `type:"structure"` + + // The epsilon value that you specified. + // + // Epsilon is a required field + Epsilon *int64 `locationName:"epsilon" min:"1" type:"integer" required:"true"` + + // Noise added per query is measured in terms of the number of users whose contributions + // you want to obscure. This value governs the rate at which the privacy budget + // is depleted. + // + // UsersNoisePerQuery is a required field + UsersNoisePerQuery *int64 `locationName:"usersNoisePerQuery" min:"10" type:"integer" 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 DifferentialPrivacyTemplateParametersOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyTemplateParametersOutput_) GoString() string { + return s.String() +} + +// SetEpsilon sets the Epsilon field's value. +func (s *DifferentialPrivacyTemplateParametersOutput_) SetEpsilon(v int64) *DifferentialPrivacyTemplateParametersOutput_ { + s.Epsilon = &v + return s +} + +// SetUsersNoisePerQuery sets the UsersNoisePerQuery field's value. +func (s *DifferentialPrivacyTemplateParametersOutput_) SetUsersNoisePerQuery(v int64) *DifferentialPrivacyTemplateParametersOutput_ { + s.UsersNoisePerQuery = &v + return s +} + +// The epsilon and noise parameter values that you want to update in the differential +// privacy template. +type DifferentialPrivacyTemplateUpdateParameters struct { + _ struct{} `type:"structure"` + + // The updated epsilon value that you want to use. + Epsilon *int64 `locationName:"epsilon" min:"1" type:"integer"` + + // The updated value of noise added per query. It is measured in terms of the + // number of users whose contributions you want to obscure. This value governs + // the rate at which the privacy budget is depleted. + UsersNoisePerQuery *int64 `locationName:"usersNoisePerQuery" min:"10" 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 DifferentialPrivacyTemplateUpdateParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DifferentialPrivacyTemplateUpdateParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DifferentialPrivacyTemplateUpdateParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DifferentialPrivacyTemplateUpdateParameters"} + if s.Epsilon != nil && *s.Epsilon < 1 { + invalidParams.Add(request.NewErrParamMinValue("Epsilon", 1)) + } + if s.UsersNoisePerQuery != nil && *s.UsersNoisePerQuery < 10 { + invalidParams.Add(request.NewErrParamMinValue("UsersNoisePerQuery", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEpsilon sets the Epsilon field's value. +func (s *DifferentialPrivacyTemplateUpdateParameters) SetEpsilon(v int64) *DifferentialPrivacyTemplateUpdateParameters { + s.Epsilon = &v + return s +} + +// SetUsersNoisePerQuery sets the UsersNoisePerQuery field's value. +func (s *DifferentialPrivacyTemplateUpdateParameters) SetUsersNoisePerQuery(v int64) *DifferentialPrivacyTemplateUpdateParameters { + s.UsersNoisePerQuery = &v + return s +} + type GetAnalysisTemplateInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9314,6 +13394,107 @@ return s } +type GetCollaborationConfiguredAudienceModelAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for the collaboration that the configured audience model + // association belongs to. Accepts a collaboration ID. + // + // CollaborationIdentifier is a required field + CollaborationIdentifier *string `location:"uri" locationName:"collaborationIdentifier" min:"36" type:"string" required:"true"` + + // A unique identifier for the configured audience model association that you + // want to retrieve. + // + // ConfiguredAudienceModelAssociationIdentifier is a required field + ConfiguredAudienceModelAssociationIdentifier *string `location:"uri" locationName:"configuredAudienceModelAssociationIdentifier" min:"36" 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 GetCollaborationConfiguredAudienceModelAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCollaborationConfiguredAudienceModelAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCollaborationConfiguredAudienceModelAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCollaborationConfiguredAudienceModelAssociationInput"} + if s.CollaborationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("CollaborationIdentifier")) + } + if s.CollaborationIdentifier != nil && len(*s.CollaborationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationIdentifier", 36)) + } + if s.ConfiguredAudienceModelAssociationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelAssociationIdentifier")) + } + if s.ConfiguredAudienceModelAssociationIdentifier != nil && len(*s.ConfiguredAudienceModelAssociationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelAssociationIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationIdentifier sets the CollaborationIdentifier field's value. +func (s *GetCollaborationConfiguredAudienceModelAssociationInput) SetCollaborationIdentifier(v string) *GetCollaborationConfiguredAudienceModelAssociationInput { + s.CollaborationIdentifier = &v + return s +} + +// SetConfiguredAudienceModelAssociationIdentifier sets the ConfiguredAudienceModelAssociationIdentifier field's value. +func (s *GetCollaborationConfiguredAudienceModelAssociationInput) SetConfiguredAudienceModelAssociationIdentifier(v string) *GetCollaborationConfiguredAudienceModelAssociationInput { + s.ConfiguredAudienceModelAssociationIdentifier = &v + return s +} + +type GetCollaborationConfiguredAudienceModelAssociationOutput struct { + _ struct{} `type:"structure"` + + // The metadata of the configured audience model association. + // + // CollaborationConfiguredAudienceModelAssociation is a required field + CollaborationConfiguredAudienceModelAssociation *CollaborationConfiguredAudienceModelAssociation `locationName:"collaborationConfiguredAudienceModelAssociation" 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 GetCollaborationConfiguredAudienceModelAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCollaborationConfiguredAudienceModelAssociationOutput) GoString() string { + return s.String() +} + +// SetCollaborationConfiguredAudienceModelAssociation sets the CollaborationConfiguredAudienceModelAssociation field's value. +func (s *GetCollaborationConfiguredAudienceModelAssociationOutput) SetCollaborationConfiguredAudienceModelAssociation(v *CollaborationConfiguredAudienceModelAssociation) *GetCollaborationConfiguredAudienceModelAssociationOutput { + s.CollaborationConfiguredAudienceModelAssociation = v + return s +} + type GetCollaborationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9396,6 +13577,206 @@ return s } +type GetCollaborationPrivacyBudgetTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for one of your collaborations. + // + // CollaborationIdentifier is a required field + CollaborationIdentifier *string `location:"uri" locationName:"collaborationIdentifier" min:"36" type:"string" required:"true"` + + // A unique identifier for one of your privacy budget templates. + // + // PrivacyBudgetTemplateIdentifier is a required field + PrivacyBudgetTemplateIdentifier *string `location:"uri" locationName:"privacyBudgetTemplateIdentifier" min:"36" 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 GetCollaborationPrivacyBudgetTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCollaborationPrivacyBudgetTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCollaborationPrivacyBudgetTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCollaborationPrivacyBudgetTemplateInput"} + if s.CollaborationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("CollaborationIdentifier")) + } + if s.CollaborationIdentifier != nil && len(*s.CollaborationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationIdentifier", 36)) + } + if s.PrivacyBudgetTemplateIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetTemplateIdentifier")) + } + if s.PrivacyBudgetTemplateIdentifier != nil && len(*s.PrivacyBudgetTemplateIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PrivacyBudgetTemplateIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationIdentifier sets the CollaborationIdentifier field's value. +func (s *GetCollaborationPrivacyBudgetTemplateInput) SetCollaborationIdentifier(v string) *GetCollaborationPrivacyBudgetTemplateInput { + s.CollaborationIdentifier = &v + return s +} + +// SetPrivacyBudgetTemplateIdentifier sets the PrivacyBudgetTemplateIdentifier field's value. +func (s *GetCollaborationPrivacyBudgetTemplateInput) SetPrivacyBudgetTemplateIdentifier(v string) *GetCollaborationPrivacyBudgetTemplateInput { + s.PrivacyBudgetTemplateIdentifier = &v + return s +} + +type GetCollaborationPrivacyBudgetTemplateOutput struct { + _ struct{} `type:"structure"` + + // Returns the details of the privacy budget template that you requested. + // + // CollaborationPrivacyBudgetTemplate is a required field + CollaborationPrivacyBudgetTemplate *CollaborationPrivacyBudgetTemplate `locationName:"collaborationPrivacyBudgetTemplate" 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 GetCollaborationPrivacyBudgetTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCollaborationPrivacyBudgetTemplateOutput) GoString() string { + return s.String() +} + +// SetCollaborationPrivacyBudgetTemplate sets the CollaborationPrivacyBudgetTemplate field's value. +func (s *GetCollaborationPrivacyBudgetTemplateOutput) SetCollaborationPrivacyBudgetTemplate(v *CollaborationPrivacyBudgetTemplate) *GetCollaborationPrivacyBudgetTemplateOutput { + s.CollaborationPrivacyBudgetTemplate = v + return s +} + +type GetConfiguredAudienceModelAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for the configured audience model association that you + // want to retrieve. + // + // ConfiguredAudienceModelAssociationIdentifier is a required field + ConfiguredAudienceModelAssociationIdentifier *string `location:"uri" locationName:"configuredAudienceModelAssociationIdentifier" min:"36" type:"string" required:"true"` + + // A unique identifier for the membership that contains the configured audience + // model association that you want to retrieve. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" 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 GetConfiguredAudienceModelAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfiguredAudienceModelAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfiguredAudienceModelAssociationInput"} + if s.ConfiguredAudienceModelAssociationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelAssociationIdentifier")) + } + if s.ConfiguredAudienceModelAssociationIdentifier != nil && len(*s.ConfiguredAudienceModelAssociationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelAssociationIdentifier", 36)) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelAssociationIdentifier sets the ConfiguredAudienceModelAssociationIdentifier field's value. +func (s *GetConfiguredAudienceModelAssociationInput) SetConfiguredAudienceModelAssociationIdentifier(v string) *GetConfiguredAudienceModelAssociationInput { + s.ConfiguredAudienceModelAssociationIdentifier = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *GetConfiguredAudienceModelAssociationInput) SetMembershipIdentifier(v string) *GetConfiguredAudienceModelAssociationInput { + s.MembershipIdentifier = &v + return s +} + +type GetConfiguredAudienceModelAssociationOutput struct { + _ struct{} `type:"structure"` + + // Information about the configured audience model association that you requested. + // + // ConfiguredAudienceModelAssociation is a required field + ConfiguredAudienceModelAssociation *ConfiguredAudienceModelAssociation `locationName:"configuredAudienceModelAssociation" 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 GetConfiguredAudienceModelAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelAssociationOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelAssociation sets the ConfiguredAudienceModelAssociation field's value. +func (s *GetConfiguredAudienceModelAssociationOutput) SetConfiguredAudienceModelAssociation(v *ConfiguredAudienceModelAssociation) *GetConfiguredAudienceModelAssociationOutput { + s.ConfiguredAudienceModelAssociation = v + return s +} + type GetConfiguredTableAnalysisRuleInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9762,6 +14143,107 @@ return s } +type GetPrivacyBudgetTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for one of your memberships for a collaboration. The + // privacy budget template is retrieved from the collaboration that this membership + // belongs to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // A unique identifier for your privacy budget template. + // + // PrivacyBudgetTemplateIdentifier is a required field + PrivacyBudgetTemplateIdentifier *string `location:"uri" locationName:"privacyBudgetTemplateIdentifier" min:"36" 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 GetPrivacyBudgetTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPrivacyBudgetTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetPrivacyBudgetTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetPrivacyBudgetTemplateInput"} + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.PrivacyBudgetTemplateIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetTemplateIdentifier")) + } + if s.PrivacyBudgetTemplateIdentifier != nil && len(*s.PrivacyBudgetTemplateIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PrivacyBudgetTemplateIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *GetPrivacyBudgetTemplateInput) SetMembershipIdentifier(v string) *GetPrivacyBudgetTemplateInput { + s.MembershipIdentifier = &v + return s +} + +// SetPrivacyBudgetTemplateIdentifier sets the PrivacyBudgetTemplateIdentifier field's value. +func (s *GetPrivacyBudgetTemplateInput) SetPrivacyBudgetTemplateIdentifier(v string) *GetPrivacyBudgetTemplateInput { + s.PrivacyBudgetTemplateIdentifier = &v + return s +} + +type GetPrivacyBudgetTemplateOutput struct { + _ struct{} `type:"structure"` + + // Returns the details of the privacy budget template that you requested. + // + // PrivacyBudgetTemplate is a required field + PrivacyBudgetTemplate *PrivacyBudgetTemplate `locationName:"privacyBudgetTemplate" 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 GetPrivacyBudgetTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPrivacyBudgetTemplateOutput) GoString() string { + return s.String() +} + +// SetPrivacyBudgetTemplate sets the PrivacyBudgetTemplate field's value. +func (s *GetPrivacyBudgetTemplateOutput) SetPrivacyBudgetTemplate(v *PrivacyBudgetTemplate) *GetPrivacyBudgetTemplateOutput { + s.PrivacyBudgetTemplate = v + return s +} + type GetProtectedQueryInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9773,7 +14255,7 @@ // The identifier for a protected query instance. // // ProtectedQueryIdentifier is a required field - ProtectedQueryIdentifier *string `location:"uri" locationName:"protectedQueryIdentifier" min:"1" type:"string" required:"true"` + ProtectedQueryIdentifier *string `location:"uri" locationName:"protectedQueryIdentifier" min:"36" type:"string" required:"true"` } // String returns the string representation. @@ -9806,8 +14288,8 @@ if s.ProtectedQueryIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ProtectedQueryIdentifier")) } - if s.ProtectedQueryIdentifier != nil && len(*s.ProtectedQueryIdentifier) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProtectedQueryIdentifier", 1)) + if s.ProtectedQueryIdentifier != nil && len(*s.ProtectedQueryIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ProtectedQueryIdentifier", 36)) } if invalidParams.Len() > 0 { @@ -10434,6 +14916,369 @@ return s } +type ListCollaborationConfiguredAudienceModelAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for the collaboration that the configured audience model + // association belongs to. Accepts a collaboration ID. + // + // CollaborationIdentifier is a required field + CollaborationIdentifier *string `location:"uri" locationName:"collaborationIdentifier" min:"36" type:"string" required:"true"` + + // The maximum size of the results that is returned per call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationConfiguredAudienceModelAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationConfiguredAudienceModelAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCollaborationConfiguredAudienceModelAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCollaborationConfiguredAudienceModelAssociationsInput"} + if s.CollaborationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("CollaborationIdentifier")) + } + if s.CollaborationIdentifier != nil && len(*s.CollaborationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationIdentifier", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationIdentifier sets the CollaborationIdentifier field's value. +func (s *ListCollaborationConfiguredAudienceModelAssociationsInput) SetCollaborationIdentifier(v string) *ListCollaborationConfiguredAudienceModelAssociationsInput { + s.CollaborationIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCollaborationConfiguredAudienceModelAssociationsInput) SetMaxResults(v int64) *ListCollaborationConfiguredAudienceModelAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCollaborationConfiguredAudienceModelAssociationsInput) SetNextToken(v string) *ListCollaborationConfiguredAudienceModelAssociationsInput { + s.NextToken = &v + return s +} + +type ListCollaborationConfiguredAudienceModelAssociationsOutput struct { + _ struct{} `type:"structure"` + + // The metadata of the configured audience model association within a collaboration. + // + // CollaborationConfiguredAudienceModelAssociationSummaries is a required field + CollaborationConfiguredAudienceModelAssociationSummaries []*CollaborationConfiguredAudienceModelAssociationSummary `locationName:"collaborationConfiguredAudienceModelAssociationSummaries" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + 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 ListCollaborationConfiguredAudienceModelAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationConfiguredAudienceModelAssociationsOutput) GoString() string { + return s.String() +} + +// SetCollaborationConfiguredAudienceModelAssociationSummaries sets the CollaborationConfiguredAudienceModelAssociationSummaries field's value. +func (s *ListCollaborationConfiguredAudienceModelAssociationsOutput) SetCollaborationConfiguredAudienceModelAssociationSummaries(v []*CollaborationConfiguredAudienceModelAssociationSummary) *ListCollaborationConfiguredAudienceModelAssociationsOutput { + s.CollaborationConfiguredAudienceModelAssociationSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCollaborationConfiguredAudienceModelAssociationsOutput) SetNextToken(v string) *ListCollaborationConfiguredAudienceModelAssociationsOutput { + s.NextToken = &v + return s +} + +type ListCollaborationPrivacyBudgetTemplatesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for one of your collaborations. + // + // CollaborationIdentifier is a required field + CollaborationIdentifier *string `location:"uri" locationName:"collaborationIdentifier" min:"36" type:"string" required:"true"` + + // The maximum size of the results that is returned per call. Service chooses + // a default if it has not been set. Service may return a nextToken even if + // the maximum results has not been met. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationPrivacyBudgetTemplatesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationPrivacyBudgetTemplatesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCollaborationPrivacyBudgetTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCollaborationPrivacyBudgetTemplatesInput"} + if s.CollaborationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("CollaborationIdentifier")) + } + if s.CollaborationIdentifier != nil && len(*s.CollaborationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationIdentifier", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationIdentifier sets the CollaborationIdentifier field's value. +func (s *ListCollaborationPrivacyBudgetTemplatesInput) SetCollaborationIdentifier(v string) *ListCollaborationPrivacyBudgetTemplatesInput { + s.CollaborationIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCollaborationPrivacyBudgetTemplatesInput) SetMaxResults(v int64) *ListCollaborationPrivacyBudgetTemplatesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCollaborationPrivacyBudgetTemplatesInput) SetNextToken(v string) *ListCollaborationPrivacyBudgetTemplatesInput { + s.NextToken = &v + return s +} + +type ListCollaborationPrivacyBudgetTemplatesOutput struct { + _ struct{} `type:"structure"` + + // An array that summarizes the collaboration privacy budget templates. The + // summary includes collaboration information, creation information, the privacy + // budget type. + // + // CollaborationPrivacyBudgetTemplateSummaries is a required field + CollaborationPrivacyBudgetTemplateSummaries []*CollaborationPrivacyBudgetTemplateSummary `locationName:"collaborationPrivacyBudgetTemplateSummaries" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + 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 ListCollaborationPrivacyBudgetTemplatesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationPrivacyBudgetTemplatesOutput) GoString() string { + return s.String() +} + +// SetCollaborationPrivacyBudgetTemplateSummaries sets the CollaborationPrivacyBudgetTemplateSummaries field's value. +func (s *ListCollaborationPrivacyBudgetTemplatesOutput) SetCollaborationPrivacyBudgetTemplateSummaries(v []*CollaborationPrivacyBudgetTemplateSummary) *ListCollaborationPrivacyBudgetTemplatesOutput { + s.CollaborationPrivacyBudgetTemplateSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCollaborationPrivacyBudgetTemplatesOutput) SetNextToken(v string) *ListCollaborationPrivacyBudgetTemplatesOutput { + s.NextToken = &v + return s +} + +type ListCollaborationPrivacyBudgetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique identifier for one of your collaborations. + // + // CollaborationIdentifier is a required field + CollaborationIdentifier *string `location:"uri" locationName:"collaborationIdentifier" min:"36" type:"string" required:"true"` + + // The maximum size of the results that is returned per call. Service chooses + // a default if it has not been set. Service may return a nextToken even if + // the maximum results has not been met. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // Specifies the type of the privacy budget. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `location:"querystring" locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationPrivacyBudgetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationPrivacyBudgetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCollaborationPrivacyBudgetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCollaborationPrivacyBudgetsInput"} + if s.CollaborationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("CollaborationIdentifier")) + } + if s.CollaborationIdentifier != nil && len(*s.CollaborationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationIdentifier", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.PrivacyBudgetType == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationIdentifier sets the CollaborationIdentifier field's value. +func (s *ListCollaborationPrivacyBudgetsInput) SetCollaborationIdentifier(v string) *ListCollaborationPrivacyBudgetsInput { + s.CollaborationIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCollaborationPrivacyBudgetsInput) SetMaxResults(v int64) *ListCollaborationPrivacyBudgetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCollaborationPrivacyBudgetsInput) SetNextToken(v string) *ListCollaborationPrivacyBudgetsInput { + s.NextToken = &v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *ListCollaborationPrivacyBudgetsInput) SetPrivacyBudgetType(v string) *ListCollaborationPrivacyBudgetsInput { + s.PrivacyBudgetType = &v + return s +} + +type ListCollaborationPrivacyBudgetsOutput struct { + _ struct{} `type:"structure"` + + // Summaries of the collaboration privacy budgets. + // + // CollaborationPrivacyBudgetSummaries is a required field + CollaborationPrivacyBudgetSummaries []*CollaborationPrivacyBudgetSummary `locationName:"collaborationPrivacyBudgetSummaries" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + 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 ListCollaborationPrivacyBudgetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCollaborationPrivacyBudgetsOutput) GoString() string { + return s.String() +} + +// SetCollaborationPrivacyBudgetSummaries sets the CollaborationPrivacyBudgetSummaries field's value. +func (s *ListCollaborationPrivacyBudgetsOutput) SetCollaborationPrivacyBudgetSummaries(v []*CollaborationPrivacyBudgetSummary) *ListCollaborationPrivacyBudgetsOutput { + s.CollaborationPrivacyBudgetSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCollaborationPrivacyBudgetsOutput) SetNextToken(v string) *ListCollaborationPrivacyBudgetsOutput { + s.NextToken = &v + return s +} + type ListCollaborationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10542,6 +15387,122 @@ return s } +type ListConfiguredAudienceModelAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum size of the results that is returned per call. Service chooses + // a default if it has not been set. Service may return a nextToken even if + // the maximum results has not been met. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // A unique identifier for a membership that contains the configured audience + // model associations that you want to retrieve. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConfiguredAudienceModelAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConfiguredAudienceModelAssociationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConfiguredAudienceModelAssociationsInput) SetMaxResults(v int64) *ListConfiguredAudienceModelAssociationsInput { + s.MaxResults = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *ListConfiguredAudienceModelAssociationsInput) SetMembershipIdentifier(v string) *ListConfiguredAudienceModelAssociationsInput { + s.MembershipIdentifier = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfiguredAudienceModelAssociationsInput) SetNextToken(v string) *ListConfiguredAudienceModelAssociationsInput { + s.NextToken = &v + return s +} + +type ListConfiguredAudienceModelAssociationsOutput struct { + _ struct{} `type:"structure"` + + // Summaries of the configured audience model associations that you requested. + // + // ConfiguredAudienceModelAssociationSummaries is a required field + ConfiguredAudienceModelAssociationSummaries []*ConfiguredAudienceModelAssociationSummary `locationName:"configuredAudienceModelAssociationSummaries" type:"list" required:"true"` + + // The token value provided to access the next page of results. + 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 ListConfiguredAudienceModelAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelAssociationsOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelAssociationSummaries sets the ConfiguredAudienceModelAssociationSummaries field's value. +func (s *ListConfiguredAudienceModelAssociationsOutput) SetConfiguredAudienceModelAssociationSummaries(v []*ConfiguredAudienceModelAssociationSummary) *ListConfiguredAudienceModelAssociationsOutput { + s.ConfiguredAudienceModelAssociationSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfiguredAudienceModelAssociationsOutput) SetNextToken(v string) *ListConfiguredAudienceModelAssociationsOutput { + s.NextToken = &v + return s +} + type ListConfiguredTableAssociationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10974,6 +15935,259 @@ return s } +type ListPrivacyBudgetTemplatesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum size of the results that is returned per call. Service chooses + // a default if it has not been set. Service may return a nextToken even if + // the maximum results has not been met. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // A unique identifier for one of your memberships for a collaboration. The + // privacy budget templates are retrieved from the collaboration that this membership + // belongs to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPrivacyBudgetTemplatesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPrivacyBudgetTemplatesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPrivacyBudgetTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPrivacyBudgetTemplatesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPrivacyBudgetTemplatesInput) SetMaxResults(v int64) *ListPrivacyBudgetTemplatesInput { + s.MaxResults = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *ListPrivacyBudgetTemplatesInput) SetMembershipIdentifier(v string) *ListPrivacyBudgetTemplatesInput { + s.MembershipIdentifier = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPrivacyBudgetTemplatesInput) SetNextToken(v string) *ListPrivacyBudgetTemplatesInput { + s.NextToken = &v + return s +} + +type ListPrivacyBudgetTemplatesOutput struct { + _ struct{} `type:"structure"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array that summarizes the privacy budget templates. The summary includes + // collaboration information, creation information, and privacy budget type. + // + // PrivacyBudgetTemplateSummaries is a required field + PrivacyBudgetTemplateSummaries []*PrivacyBudgetTemplateSummary `locationName:"privacyBudgetTemplateSummaries" 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 ListPrivacyBudgetTemplatesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPrivacyBudgetTemplatesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPrivacyBudgetTemplatesOutput) SetNextToken(v string) *ListPrivacyBudgetTemplatesOutput { + s.NextToken = &v + return s +} + +// SetPrivacyBudgetTemplateSummaries sets the PrivacyBudgetTemplateSummaries field's value. +func (s *ListPrivacyBudgetTemplatesOutput) SetPrivacyBudgetTemplateSummaries(v []*PrivacyBudgetTemplateSummary) *ListPrivacyBudgetTemplatesOutput { + s.PrivacyBudgetTemplateSummaries = v + return s +} + +type ListPrivacyBudgetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum size of the results that is returned per call. Service chooses + // a default if it has not been set. Service may return a nextToken even if + // the maximum results has not been met. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // A unique identifier for one of your memberships for a collaboration. The + // privacy budget is retrieved from the collaboration that this membership belongs + // to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The privacy budget type. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `location:"querystring" locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPrivacyBudgetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPrivacyBudgetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPrivacyBudgetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPrivacyBudgetsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.PrivacyBudgetType == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPrivacyBudgetsInput) SetMaxResults(v int64) *ListPrivacyBudgetsInput { + s.MaxResults = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *ListPrivacyBudgetsInput) SetMembershipIdentifier(v string) *ListPrivacyBudgetsInput { + s.MembershipIdentifier = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPrivacyBudgetsInput) SetNextToken(v string) *ListPrivacyBudgetsInput { + s.NextToken = &v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *ListPrivacyBudgetsInput) SetPrivacyBudgetType(v string) *ListPrivacyBudgetsInput { + s.PrivacyBudgetType = &v + return s +} + +type ListPrivacyBudgetsOutput struct { + _ struct{} `type:"structure"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array that summarizes the privacy budgets. The summary includes collaboration + // information, membership information, privacy budget template information, + // and privacy budget details. + // + // PrivacyBudgetSummaries is a required field + PrivacyBudgetSummaries []*PrivacyBudgetSummary `locationName:"privacyBudgetSummaries" 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 ListPrivacyBudgetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPrivacyBudgetsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPrivacyBudgetsOutput) SetNextToken(v string) *ListPrivacyBudgetsOutput { + s.NextToken = &v + return s +} + +// SetPrivacyBudgetSummaries sets the PrivacyBudgetSummaries field's value. +func (s *ListPrivacyBudgetsOutput) SetPrivacyBudgetSummaries(v []*PrivacyBudgetSummary) *ListPrivacyBudgetsOutput { + s.PrivacyBudgetSummaries = v + return s +} + type ListProtectedQueriesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -11326,6 +16540,13 @@ // // MemberAbilities is a required field MemberAbilities []*string `locationName:"memberAbilities" type:"list" required:"true" enum:"MemberAbility"` + + // The collaboration member's payment responsibilities set by the collaboration + // creator. + // + // If the collaboration creator hasn't specified anyone as the member paying + // for query compute costs, then the member who can query is the default payer. + PaymentConfiguration *PaymentConfiguration `locationName:"paymentConfiguration" type:"structure"` } // String returns the string representation. @@ -11364,6 +16585,11 @@ if s.MemberAbilities == nil { invalidParams.Add(request.NewErrParamRequired("MemberAbilities")) } + if s.PaymentConfiguration != nil { + if err := s.PaymentConfiguration.Validate(); err != nil { + invalidParams.AddNested("PaymentConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -11389,6 +16615,12 @@ return s } +// SetPaymentConfiguration sets the PaymentConfiguration field's value. +func (s *MemberSpecification) SetPaymentConfiguration(v *PaymentConfiguration) *MemberSpecification { + s.PaymentConfiguration = v + return s +} + // The member object listed by the request. type MemberSummary struct { _ struct{} `type:"structure"` @@ -11420,8 +16652,13 @@ // The unique ID for the member's associated membership, if present. MembershipId *string `locationName:"membershipId" min:"36" type:"string"` - // The status of the member. Valid values are `INVITED`, `ACTIVE`, `LEFT`, and - // `REMOVED`. + // The collaboration member's payment responsibilities set by the collaboration + // creator. + // + // PaymentConfiguration is a required field + PaymentConfiguration *PaymentConfiguration `locationName:"paymentConfiguration" type:"structure" required:"true"` + + // The status of the member. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"MemberStatus"` @@ -11486,6 +16723,12 @@ return s } +// SetPaymentConfiguration sets the PaymentConfiguration field's value. +func (s *MemberSummary) SetPaymentConfiguration(v *PaymentConfiguration) *MemberSummary { + s.PaymentConfiguration = v + return s +} + // SetStatus sets the Status field's value. func (s *MemberSummary) SetStatus(v string) *MemberSummary { s.Status = &v @@ -11552,13 +16795,18 @@ // MemberAbilities is a required field MemberAbilities []*string `locationName:"memberAbilities" type:"list" required:"true" enum:"MemberAbility"` + // The payment responsibilities accepted by the collaboration member. + // + // PaymentConfiguration is a required field + PaymentConfiguration *MembershipPaymentConfiguration `locationName:"paymentConfiguration" type:"structure" required:"true"` + // An indicator as to whether query logging has been enabled or disabled for - // the collaboration. + // the membership. // // QueryLogStatus is a required field QueryLogStatus *string `locationName:"queryLogStatus" type:"string" required:"true" enum:"MembershipQueryLogStatus"` - // The status of the membership. Valid values are `ACTIVE`, `REMOVED`, and `COLLABORATION_DELETED`. + // The status of the membership. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"MembershipStatus"` @@ -11647,6 +16895,12 @@ return s } +// SetPaymentConfiguration sets the PaymentConfiguration field's value. +func (s *Membership) SetPaymentConfiguration(v *MembershipPaymentConfiguration) *Membership { + s.PaymentConfiguration = v + return s +} + // SetQueryLogStatus sets the QueryLogStatus field's value. func (s *Membership) SetQueryLogStatus(v string) *Membership { s.QueryLogStatus = &v @@ -11665,6 +16919,60 @@ return s } +// An object representing the payment responsibilities accepted by the collaboration +// member. +type MembershipPaymentConfiguration struct { + _ struct{} `type:"structure"` + + // The payment responsibilities accepted by the collaboration member for query + // compute costs. + // + // QueryCompute is a required field + QueryCompute *MembershipQueryComputePaymentConfig `locationName:"queryCompute" 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 MembershipPaymentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MembershipPaymentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MembershipPaymentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MembershipPaymentConfiguration"} + if s.QueryCompute == nil { + invalidParams.Add(request.NewErrParamRequired("QueryCompute")) + } + if s.QueryCompute != nil { + if err := s.QueryCompute.Validate(); err != nil { + invalidParams.AddNested("QueryCompute", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetQueryCompute sets the QueryCompute field's value. +func (s *MembershipPaymentConfiguration) SetQueryCompute(v *MembershipQueryComputePaymentConfig) *MembershipPaymentConfiguration { + s.QueryCompute = v + return s +} + // Contains configurations for protected query results. type MembershipProtectedQueryOutputConfiguration struct { _ struct{} `type:"structure"` @@ -11778,6 +17086,66 @@ return s } +// An object representing the payment responsibilities accepted by the collaboration +// member for query compute costs. +type MembershipQueryComputePaymentConfig struct { + _ struct{} `type:"structure"` + + // Indicates whether the collaboration member has accepted to pay for query + // compute costs (TRUE) or has not accepted to pay for query compute costs (FALSE). + // + // If the collaboration creator has not specified anyone to pay for query compute + // costs, then the member who can query is the default payer. + // + // An error message is returned for the following reasons: + // + // * If you set the value to FALSE but you are responsible to pay for query + // compute costs. + // + // * If you set the value to TRUE but you are not responsible to pay for + // query compute costs. + // + // IsResponsible is a required field + IsResponsible *bool `locationName:"isResponsible" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MembershipQueryComputePaymentConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MembershipQueryComputePaymentConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MembershipQueryComputePaymentConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MembershipQueryComputePaymentConfig"} + if s.IsResponsible == nil { + invalidParams.Add(request.NewErrParamRequired("IsResponsible")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIsResponsible sets the IsResponsible field's value. +func (s *MembershipQueryComputePaymentConfig) SetIsResponsible(v bool) *MembershipQueryComputePaymentConfig { + s.IsResponsible = &v + return s +} + // The membership object listed by the request. type MembershipSummary struct { _ struct{} `type:"structure"` @@ -11828,7 +17196,12 @@ // MemberAbilities is a required field MemberAbilities []*string `locationName:"memberAbilities" type:"list" required:"true" enum:"MemberAbility"` - // The status of the membership. Valid values are `ACTIVE`, `REMOVED`, and `COLLABORATION_DELETED`. + // The payment responsibilities accepted by the collaboration member. + // + // PaymentConfiguration is a required field + PaymentConfiguration *MembershipPaymentConfiguration `locationName:"paymentConfiguration" type:"structure" required:"true"` + + // The status of the membership. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"MembershipStatus"` @@ -11911,6 +17284,12 @@ return s } +// SetPaymentConfiguration sets the PaymentConfiguration field's value. +func (s *MembershipSummary) SetPaymentConfiguration(v *MembershipPaymentConfiguration) *MembershipSummary { + s.PaymentConfiguration = v + return s +} + // SetStatus sets the Status field's value. func (s *MembershipSummary) SetStatus(v string) *MembershipSummary { s.Status = &v @@ -11923,6 +17302,832 @@ return s } +// An object representing the collaboration member's payment responsibilities +// set by the collaboration creator. +type PaymentConfiguration struct { + _ struct{} `type:"structure"` + + // The collaboration member's payment responsibilities set by the collaboration + // creator for query compute costs. + // + // QueryCompute is a required field + QueryCompute *QueryComputePaymentConfig `locationName:"queryCompute" 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 PaymentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PaymentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PaymentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PaymentConfiguration"} + if s.QueryCompute == nil { + invalidParams.Add(request.NewErrParamRequired("QueryCompute")) + } + if s.QueryCompute != nil { + if err := s.QueryCompute.Validate(); err != nil { + invalidParams.AddNested("QueryCompute", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetQueryCompute sets the QueryCompute field's value. +func (s *PaymentConfiguration) SetQueryCompute(v *QueryComputePaymentConfig) *PaymentConfiguration { + s.QueryCompute = v + return s +} + +type PreviewPrivacyImpactInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for one of your memberships for a collaboration. Accepts + // a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // Specifies the desired epsilon and noise parameters to preview. + // + // Parameters is a required field + Parameters *PreviewPrivacyImpactParametersInput_ `locationName:"parameters" 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 PreviewPrivacyImpactInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreviewPrivacyImpactInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PreviewPrivacyImpactInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PreviewPrivacyImpactInput"} + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.Parameters == nil { + invalidParams.Add(request.NewErrParamRequired("Parameters")) + } + if s.Parameters != nil { + if err := s.Parameters.Validate(); err != nil { + invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *PreviewPrivacyImpactInput) SetMembershipIdentifier(v string) *PreviewPrivacyImpactInput { + s.MembershipIdentifier = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *PreviewPrivacyImpactInput) SetParameters(v *PreviewPrivacyImpactParametersInput_) *PreviewPrivacyImpactInput { + s.Parameters = v + return s +} + +type PreviewPrivacyImpactOutput struct { + _ struct{} `type:"structure"` + + // An estimate of the number of aggregation functions that the member who can + // query can run given the epsilon and noise parameters. This does not change + // the privacy budget. + // + // PrivacyImpact is a required field + PrivacyImpact *PrivacyImpact `locationName:"privacyImpact" 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 PreviewPrivacyImpactOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreviewPrivacyImpactOutput) GoString() string { + return s.String() +} + +// SetPrivacyImpact sets the PrivacyImpact field's value. +func (s *PreviewPrivacyImpactOutput) SetPrivacyImpact(v *PrivacyImpact) *PreviewPrivacyImpactOutput { + s.PrivacyImpact = v + return s +} + +// Specifies the updated epsilon and noise parameters to preview. The preview +// allows you to see how the maximum number of each type of aggregation function +// would change with the new parameters. +type PreviewPrivacyImpactParametersInput_ struct { + _ struct{} `type:"structure"` + + // An array that specifies the epsilon and noise parameters. + DifferentialPrivacy *DifferentialPrivacyPreviewParametersInput_ `locationName:"differentialPrivacy" 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 PreviewPrivacyImpactParametersInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreviewPrivacyImpactParametersInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PreviewPrivacyImpactParametersInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PreviewPrivacyImpactParametersInput_"} + if s.DifferentialPrivacy != nil { + if err := s.DifferentialPrivacy.Validate(); err != nil { + invalidParams.AddNested("DifferentialPrivacy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *PreviewPrivacyImpactParametersInput_) SetDifferentialPrivacy(v *DifferentialPrivacyPreviewParametersInput_) *PreviewPrivacyImpactParametersInput_ { + s.DifferentialPrivacy = v + return s +} + +// The epsilon parameter value and number of each aggregation function that +// you can perform. +type PrivacyBudget struct { + _ struct{} `type:"structure"` + + // An object that specifies the epsilon parameter and the utility in terms of + // total aggregations, as well as the remaining aggregations available. + DifferentialPrivacy *DifferentialPrivacyPrivacyBudget `locationName:"differentialPrivacy" 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 PrivacyBudget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudget) GoString() string { + return s.String() +} + +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *PrivacyBudget) SetDifferentialPrivacy(v *DifferentialPrivacyPrivacyBudget) *PrivacyBudget { + s.DifferentialPrivacy = v + return s +} + +// An array that summaries the specified privacy budget. This summary includes +// collaboration information, creation information, membership information, +// and privacy budget information. +type PrivacyBudgetSummary struct { + _ struct{} `type:"structure"` + + // The provided privacy budget. + // + // Budget is a required field + Budget *PrivacyBudget `locationName:"budget" type:"structure" required:"true"` + + // The ARN of the collaboration that contains this privacy budget. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // The unique identifier of the collaboration that contains this privacy budget. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the privacy budget was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The unique identifier of the privacy budget. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the member who created the privacy budget + // summary. + // + // MembershipArn is a required field + MembershipArn *string `locationName:"membershipArn" type:"string" required:"true"` + + // The identifier for a membership resource. + // + // MembershipId is a required field + MembershipId *string `locationName:"membershipId" min:"36" type:"string" required:"true"` + + // The ARN of the privacy budget template. + // + // PrivacyBudgetTemplateArn is a required field + PrivacyBudgetTemplateArn *string `locationName:"privacyBudgetTemplateArn" type:"string" required:"true"` + + // The unique identifier of the privacy budget template. + // + // PrivacyBudgetTemplateId is a required field + PrivacyBudgetTemplateId *string `locationName:"privacyBudgetTemplateId" min:"36" type:"string" required:"true"` + + // Specifies the type of the privacy budget. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // The most recent time at which the privacy budget was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetSummary) GoString() string { + return s.String() +} + +// SetBudget sets the Budget field's value. +func (s *PrivacyBudgetSummary) SetBudget(v *PrivacyBudget) *PrivacyBudgetSummary { + s.Budget = v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *PrivacyBudgetSummary) SetCollaborationArn(v string) *PrivacyBudgetSummary { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *PrivacyBudgetSummary) SetCollaborationId(v string) *PrivacyBudgetSummary { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *PrivacyBudgetSummary) SetCreateTime(v time.Time) *PrivacyBudgetSummary { + s.CreateTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *PrivacyBudgetSummary) SetId(v string) *PrivacyBudgetSummary { + s.Id = &v + return s +} + +// SetMembershipArn sets the MembershipArn field's value. +func (s *PrivacyBudgetSummary) SetMembershipArn(v string) *PrivacyBudgetSummary { + s.MembershipArn = &v + return s +} + +// SetMembershipId sets the MembershipId field's value. +func (s *PrivacyBudgetSummary) SetMembershipId(v string) *PrivacyBudgetSummary { + s.MembershipId = &v + return s +} + +// SetPrivacyBudgetTemplateArn sets the PrivacyBudgetTemplateArn field's value. +func (s *PrivacyBudgetSummary) SetPrivacyBudgetTemplateArn(v string) *PrivacyBudgetSummary { + s.PrivacyBudgetTemplateArn = &v + return s +} + +// SetPrivacyBudgetTemplateId sets the PrivacyBudgetTemplateId field's value. +func (s *PrivacyBudgetSummary) SetPrivacyBudgetTemplateId(v string) *PrivacyBudgetSummary { + s.PrivacyBudgetTemplateId = &v + return s +} + +// SetType sets the Type field's value. +func (s *PrivacyBudgetSummary) SetType(v string) *PrivacyBudgetSummary { + s.Type = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *PrivacyBudgetSummary) SetUpdateTime(v time.Time) *PrivacyBudgetSummary { + s.UpdateTime = &v + return s +} + +// An object that defines the privacy budget template. +type PrivacyBudgetTemplate struct { + _ struct{} `type:"structure"` + + // The ARN of the privacy budget template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // How often the privacy budget refreshes. + // + // If you plan to regularly bring new data into the collaboration, use CALENDAR_MONTH + // to automatically get a new privacy budget for the collaboration every calendar + // month. Choosing this option allows arbitrary amounts of information to be + // revealed about rows of the data when repeatedly queried across refreshes. + // Avoid choosing this if the same rows will be repeatedly queried between privacy + // budget refreshes. + // + // AutoRefresh is a required field + AutoRefresh *string `locationName:"autoRefresh" type:"string" required:"true" enum:"PrivacyBudgetTemplateAutoRefresh"` + + // The ARN of the collaboration that contains this privacy budget template. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // The unique ID of the collaboration that contains this privacy budget template. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the privacy budget template was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The unique identifier of the privacy budget template. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the member who created the privacy budget + // template. + // + // MembershipArn is a required field + MembershipArn *string `locationName:"membershipArn" type:"string" required:"true"` + + // The identifier for a membership resource. + // + // MembershipId is a required field + MembershipId *string `locationName:"membershipId" min:"36" type:"string" required:"true"` + + // Specifies the epislon and noise parameters for the privacy budget template. + // + // Parameters is a required field + Parameters *PrivacyBudgetTemplateParametersOutput_ `locationName:"parameters" type:"structure" required:"true"` + + // Specifies the type of the privacy budget template. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // The most recent time at which the privacy budget template was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplate) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *PrivacyBudgetTemplate) SetArn(v string) *PrivacyBudgetTemplate { + s.Arn = &v + return s +} + +// SetAutoRefresh sets the AutoRefresh field's value. +func (s *PrivacyBudgetTemplate) SetAutoRefresh(v string) *PrivacyBudgetTemplate { + s.AutoRefresh = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *PrivacyBudgetTemplate) SetCollaborationArn(v string) *PrivacyBudgetTemplate { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *PrivacyBudgetTemplate) SetCollaborationId(v string) *PrivacyBudgetTemplate { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *PrivacyBudgetTemplate) SetCreateTime(v time.Time) *PrivacyBudgetTemplate { + s.CreateTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *PrivacyBudgetTemplate) SetId(v string) *PrivacyBudgetTemplate { + s.Id = &v + return s +} + +// SetMembershipArn sets the MembershipArn field's value. +func (s *PrivacyBudgetTemplate) SetMembershipArn(v string) *PrivacyBudgetTemplate { + s.MembershipArn = &v + return s +} + +// SetMembershipId sets the MembershipId field's value. +func (s *PrivacyBudgetTemplate) SetMembershipId(v string) *PrivacyBudgetTemplate { + s.MembershipId = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *PrivacyBudgetTemplate) SetParameters(v *PrivacyBudgetTemplateParametersOutput_) *PrivacyBudgetTemplate { + s.Parameters = v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *PrivacyBudgetTemplate) SetPrivacyBudgetType(v string) *PrivacyBudgetTemplate { + s.PrivacyBudgetType = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *PrivacyBudgetTemplate) SetUpdateTime(v time.Time) *PrivacyBudgetTemplate { + s.UpdateTime = &v + return s +} + +// The epsilon and noise parameters that you want to use for the privacy budget +// template. +type PrivacyBudgetTemplateParametersInput_ struct { + _ struct{} `type:"structure"` + + // An object that specifies the epsilon and noise parameters. + DifferentialPrivacy *DifferentialPrivacyTemplateParametersInput_ `locationName:"differentialPrivacy" 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 PrivacyBudgetTemplateParametersInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplateParametersInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrivacyBudgetTemplateParametersInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrivacyBudgetTemplateParametersInput_"} + if s.DifferentialPrivacy != nil { + if err := s.DifferentialPrivacy.Validate(); err != nil { + invalidParams.AddNested("DifferentialPrivacy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *PrivacyBudgetTemplateParametersInput_) SetDifferentialPrivacy(v *DifferentialPrivacyTemplateParametersInput_) *PrivacyBudgetTemplateParametersInput_ { + s.DifferentialPrivacy = v + return s +} + +// The epsilon and noise parameters that were used in the privacy budget template. +type PrivacyBudgetTemplateParametersOutput_ struct { + _ struct{} `type:"structure"` + + // The epsilon and noise parameters. + DifferentialPrivacy *DifferentialPrivacyTemplateParametersOutput_ `locationName:"differentialPrivacy" 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 PrivacyBudgetTemplateParametersOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplateParametersOutput_) GoString() string { + return s.String() +} + +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *PrivacyBudgetTemplateParametersOutput_) SetDifferentialPrivacy(v *DifferentialPrivacyTemplateParametersOutput_) *PrivacyBudgetTemplateParametersOutput_ { + s.DifferentialPrivacy = v + return s +} + +// A summary of the privacy budget template. The summary includes membership +// information, collaboration information, and creation information. +type PrivacyBudgetTemplateSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the privacy budget template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The ARN of the collaboration that contains this privacy budget template. + // + // CollaborationArn is a required field + CollaborationArn *string `locationName:"collaborationArn" type:"string" required:"true"` + + // The unique ID of the collaboration that contains this privacy budget template. + // + // CollaborationId is a required field + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string" required:"true"` + + // The time at which the privacy budget template was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + + // The unique identifier of the privacy budget template. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the member who created the privacy budget + // template. + // + // MembershipArn is a required field + MembershipArn *string `locationName:"membershipArn" type:"string" required:"true"` + + // The identifier for a membership resource. + // + // MembershipId is a required field + MembershipId *string `locationName:"membershipId" min:"36" type:"string" required:"true"` + + // The type of the privacy budget template. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` + + // The most recent time at which the privacy budget template was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplateSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplateSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *PrivacyBudgetTemplateSummary) SetArn(v string) *PrivacyBudgetTemplateSummary { + s.Arn = &v + return s +} + +// SetCollaborationArn sets the CollaborationArn field's value. +func (s *PrivacyBudgetTemplateSummary) SetCollaborationArn(v string) *PrivacyBudgetTemplateSummary { + s.CollaborationArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *PrivacyBudgetTemplateSummary) SetCollaborationId(v string) *PrivacyBudgetTemplateSummary { + s.CollaborationId = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *PrivacyBudgetTemplateSummary) SetCreateTime(v time.Time) *PrivacyBudgetTemplateSummary { + s.CreateTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *PrivacyBudgetTemplateSummary) SetId(v string) *PrivacyBudgetTemplateSummary { + s.Id = &v + return s +} + +// SetMembershipArn sets the MembershipArn field's value. +func (s *PrivacyBudgetTemplateSummary) SetMembershipArn(v string) *PrivacyBudgetTemplateSummary { + s.MembershipArn = &v + return s +} + +// SetMembershipId sets the MembershipId field's value. +func (s *PrivacyBudgetTemplateSummary) SetMembershipId(v string) *PrivacyBudgetTemplateSummary { + s.MembershipId = &v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *PrivacyBudgetTemplateSummary) SetPrivacyBudgetType(v string) *PrivacyBudgetTemplateSummary { + s.PrivacyBudgetType = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *PrivacyBudgetTemplateSummary) SetUpdateTime(v time.Time) *PrivacyBudgetTemplateSummary { + s.UpdateTime = &v + return s +} + +// The epsilon and noise parameters that you want to update in the privacy budget +// template. +type PrivacyBudgetTemplateUpdateParameters struct { + _ struct{} `type:"structure"` + + // An object that specifies the new values for the epsilon and noise parameters. + DifferentialPrivacy *DifferentialPrivacyTemplateUpdateParameters `locationName:"differentialPrivacy" 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 PrivacyBudgetTemplateUpdateParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyBudgetTemplateUpdateParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrivacyBudgetTemplateUpdateParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrivacyBudgetTemplateUpdateParameters"} + if s.DifferentialPrivacy != nil { + if err := s.DifferentialPrivacy.Validate(); err != nil { + invalidParams.AddNested("DifferentialPrivacy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *PrivacyBudgetTemplateUpdateParameters) SetDifferentialPrivacy(v *DifferentialPrivacyTemplateUpdateParameters) *PrivacyBudgetTemplateUpdateParameters { + s.DifferentialPrivacy = v + return s +} + +// Provides an estimate of the number of aggregation functions that the member +// who can query can run given the epsilon and noise parameters. +type PrivacyImpact struct { + _ struct{} `type:"structure"` + + // An object that lists the number and type of aggregation functions you can + // perform. + DifferentialPrivacy *DifferentialPrivacyPrivacyImpact `locationName:"differentialPrivacy" 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 PrivacyImpact) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrivacyImpact) GoString() string { + return s.String() +} + +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *PrivacyImpact) SetDifferentialPrivacy(v *DifferentialPrivacyPrivacyImpact) *PrivacyImpact { + s.DifferentialPrivacy = v + return s +} + // The parameters for an Clean Rooms protected query. type ProtectedQuery struct { _ struct{} `type:"structure"` @@ -11932,6 +18137,10 @@ // CreateTime is a required field CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"` + // The sensitivity parameters of the differential privacy results of the protected + // query. + DifferentialPrivacy *DifferentialPrivacyParameters `locationName:"differentialPrivacy" type:"structure"` + // An error thrown by the protected query. Error *ProtectedQueryError `locationName:"error" type:"structure"` @@ -11996,6 +18205,12 @@ return s } +// SetDifferentialPrivacy sets the DifferentialPrivacy field's value. +func (s *ProtectedQuery) SetDifferentialPrivacy(v *DifferentialPrivacyParameters) *ProtectedQuery { + s.DifferentialPrivacy = v + return s +} + // SetError sets the Error field's value. func (s *ProtectedQuery) SetError(v *ProtectedQueryError) *ProtectedQuery { s.Error = v @@ -12574,6 +18789,65 @@ return s } +// An object representing the collaboration member's payment responsibilities +// set by the collaboration creator for query compute costs. +type QueryComputePaymentConfig struct { + _ struct{} `type:"structure"` + + // Indicates whether the collaboration creator has configured the collaboration + // member to pay for query compute costs (TRUE) or has not configured the collaboration + // member to pay for query compute costs (FALSE). + // + // Exactly one member can be configured to pay for query compute costs. An error + // is returned if the collaboration creator sets a TRUE value for more than + // one member in the collaboration. + // + // If the collaboration creator hasn't specified anyone as the member paying + // for query compute costs, then the member who can query is the default payer. + // An error is returned if the collaboration creator sets a FALSE value for + // the member who can query. + // + // IsResponsible is a required field + IsResponsible *bool `locationName:"isResponsible" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryComputePaymentConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryComputePaymentConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QueryComputePaymentConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QueryComputePaymentConfig"} + if s.IsResponsible == nil { + invalidParams.Add(request.NewErrParamRequired("IsResponsible")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIsResponsible sets the IsResponsible field's value. +func (s *QueryComputePaymentConfig) SetIsResponsible(v bool) *QueryComputePaymentConfig { + s.IsResponsible = &v + return s +} + // Request references a resource which does not exist. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -13625,6 +19899,128 @@ return s } +type UpdateConfiguredAudienceModelAssociationInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for the configured audience model association that you + // want to update. + // + // ConfiguredAudienceModelAssociationIdentifier is a required field + ConfiguredAudienceModelAssociationIdentifier *string `location:"uri" locationName:"configuredAudienceModelAssociationIdentifier" min:"36" type:"string" required:"true"` + + // A new description for the configured audience model association. + Description *string `locationName:"description" type:"string"` + + // A unique identifier of the membership that contains the configured audience + // model association that you want to update. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // A new name for the configured audience model association. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateConfiguredAudienceModelAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateConfiguredAudienceModelAssociationInput"} + if s.ConfiguredAudienceModelAssociationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelAssociationIdentifier")) + } + if s.ConfiguredAudienceModelAssociationIdentifier != nil && len(*s.ConfiguredAudienceModelAssociationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelAssociationIdentifier", 36)) + } + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelAssociationIdentifier sets the ConfiguredAudienceModelAssociationIdentifier field's value. +func (s *UpdateConfiguredAudienceModelAssociationInput) SetConfiguredAudienceModelAssociationIdentifier(v string) *UpdateConfiguredAudienceModelAssociationInput { + s.ConfiguredAudienceModelAssociationIdentifier = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateConfiguredAudienceModelAssociationInput) SetDescription(v string) *UpdateConfiguredAudienceModelAssociationInput { + s.Description = &v + return s +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *UpdateConfiguredAudienceModelAssociationInput) SetMembershipIdentifier(v string) *UpdateConfiguredAudienceModelAssociationInput { + s.MembershipIdentifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConfiguredAudienceModelAssociationInput) SetName(v string) *UpdateConfiguredAudienceModelAssociationInput { + s.Name = &v + return s +} + +type UpdateConfiguredAudienceModelAssociationOutput struct { + _ struct{} `type:"structure"` + + // Details about the configured audience model association that you updated. + // + // ConfiguredAudienceModelAssociation is a required field + ConfiguredAudienceModelAssociation *ConfiguredAudienceModelAssociation `locationName:"configuredAudienceModelAssociation" 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 UpdateConfiguredAudienceModelAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelAssociationOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelAssociation sets the ConfiguredAudienceModelAssociation field's value. +func (s *UpdateConfiguredAudienceModelAssociationOutput) SetConfiguredAudienceModelAssociation(v *ConfiguredAudienceModelAssociation) *UpdateConfiguredAudienceModelAssociationOutput { + s.ConfiguredAudienceModelAssociation = v + return s +} + type UpdateConfiguredTableAnalysisRuleInput struct { _ struct{} `type:"structure"` @@ -13986,7 +20382,7 @@ MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` // An indicator as to whether query logging has been enabled or disabled for - // the collaboration. + // the membership. QueryLogStatus *string `locationName:"queryLogStatus" type:"string" enum:"MembershipQueryLogStatus"` } @@ -14080,6 +20476,135 @@ return s } +type UpdatePrivacyBudgetTemplateInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for one of your memberships for a collaboration. The + // privacy budget template is updated in the collaboration that this membership + // belongs to. Accepts a membership ID. + // + // MembershipIdentifier is a required field + MembershipIdentifier *string `location:"uri" locationName:"membershipIdentifier" min:"36" type:"string" required:"true"` + + // Specifies the epsilon and noise parameters for the privacy budget template. + Parameters *PrivacyBudgetTemplateUpdateParameters `locationName:"parameters" type:"structure"` + + // A unique identifier for your privacy budget template that you want to update. + // + // PrivacyBudgetTemplateIdentifier is a required field + PrivacyBudgetTemplateIdentifier *string `location:"uri" locationName:"privacyBudgetTemplateIdentifier" min:"36" type:"string" required:"true"` + + // Specifies the type of the privacy budget template. + // + // PrivacyBudgetType is a required field + PrivacyBudgetType *string `locationName:"privacyBudgetType" type:"string" required:"true" enum:"PrivacyBudgetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePrivacyBudgetTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePrivacyBudgetTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePrivacyBudgetTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePrivacyBudgetTemplateInput"} + if s.MembershipIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("MembershipIdentifier")) + } + if s.MembershipIdentifier != nil && len(*s.MembershipIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MembershipIdentifier", 36)) + } + if s.PrivacyBudgetTemplateIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetTemplateIdentifier")) + } + if s.PrivacyBudgetTemplateIdentifier != nil && len(*s.PrivacyBudgetTemplateIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PrivacyBudgetTemplateIdentifier", 36)) + } + if s.PrivacyBudgetType == nil { + invalidParams.Add(request.NewErrParamRequired("PrivacyBudgetType")) + } + if s.Parameters != nil { + if err := s.Parameters.Validate(); err != nil { + invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMembershipIdentifier sets the MembershipIdentifier field's value. +func (s *UpdatePrivacyBudgetTemplateInput) SetMembershipIdentifier(v string) *UpdatePrivacyBudgetTemplateInput { + s.MembershipIdentifier = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *UpdatePrivacyBudgetTemplateInput) SetParameters(v *PrivacyBudgetTemplateUpdateParameters) *UpdatePrivacyBudgetTemplateInput { + s.Parameters = v + return s +} + +// SetPrivacyBudgetTemplateIdentifier sets the PrivacyBudgetTemplateIdentifier field's value. +func (s *UpdatePrivacyBudgetTemplateInput) SetPrivacyBudgetTemplateIdentifier(v string) *UpdatePrivacyBudgetTemplateInput { + s.PrivacyBudgetTemplateIdentifier = &v + return s +} + +// SetPrivacyBudgetType sets the PrivacyBudgetType field's value. +func (s *UpdatePrivacyBudgetTemplateInput) SetPrivacyBudgetType(v string) *UpdatePrivacyBudgetTemplateInput { + s.PrivacyBudgetType = &v + return s +} + +type UpdatePrivacyBudgetTemplateOutput struct { + _ struct{} `type:"structure"` + + // Summary of the privacy budget template. + // + // PrivacyBudgetTemplate is a required field + PrivacyBudgetTemplate *PrivacyBudgetTemplate `locationName:"privacyBudgetTemplate" 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 UpdatePrivacyBudgetTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePrivacyBudgetTemplateOutput) GoString() string { + return s.String() +} + +// SetPrivacyBudgetTemplate sets the PrivacyBudgetTemplate field's value. +func (s *UpdatePrivacyBudgetTemplateOutput) SetPrivacyBudgetTemplate(v *PrivacyBudgetTemplate) *UpdatePrivacyBudgetTemplateOutput { + s.PrivacyBudgetTemplate = v + return s +} + type UpdateProtectedQueryInput struct { _ struct{} `type:"structure"` @@ -14091,7 +20616,7 @@ // The identifier for a protected query instance. // // ProtectedQueryIdentifier is a required field - ProtectedQueryIdentifier *string `location:"uri" locationName:"protectedQueryIdentifier" min:"1" type:"string" required:"true"` + ProtectedQueryIdentifier *string `location:"uri" locationName:"protectedQueryIdentifier" min:"36" type:"string" required:"true"` // The target status of a query. Used to update the execution status of a currently // running query. @@ -14130,8 +20655,8 @@ if s.ProtectedQueryIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ProtectedQueryIdentifier")) } - if s.ProtectedQueryIdentifier != nil && len(*s.ProtectedQueryIdentifier) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProtectedQueryIdentifier", 1)) + if s.ProtectedQueryIdentifier != nil && len(*s.ProtectedQueryIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ProtectedQueryIdentifier", 36)) } if s.TargetStatus == nil { invalidParams.Add(request.NewErrParamRequired("TargetStatus")) @@ -14462,6 +20987,34 @@ } const ( + // DifferentialPrivacyAggregationTypeAvg is a DifferentialPrivacyAggregationType enum value + DifferentialPrivacyAggregationTypeAvg = "AVG" + + // DifferentialPrivacyAggregationTypeCount is a DifferentialPrivacyAggregationType enum value + DifferentialPrivacyAggregationTypeCount = "COUNT" + + // DifferentialPrivacyAggregationTypeCountDistinct is a DifferentialPrivacyAggregationType enum value + DifferentialPrivacyAggregationTypeCountDistinct = "COUNT_DISTINCT" + + // DifferentialPrivacyAggregationTypeSum is a DifferentialPrivacyAggregationType enum value + DifferentialPrivacyAggregationTypeSum = "SUM" + + // DifferentialPrivacyAggregationTypeStddev is a DifferentialPrivacyAggregationType enum value + DifferentialPrivacyAggregationTypeStddev = "STDDEV" +) + +// DifferentialPrivacyAggregationType_Values returns all elements of the DifferentialPrivacyAggregationType enum +func DifferentialPrivacyAggregationType_Values() []string { + return []string{ + DifferentialPrivacyAggregationTypeAvg, + DifferentialPrivacyAggregationTypeCount, + DifferentialPrivacyAggregationTypeCountDistinct, + DifferentialPrivacyAggregationTypeSum, + DifferentialPrivacyAggregationTypeStddev, + } +} + +const ( // FilterableMemberStatusInvited is a FilterableMemberStatus enum value FilterableMemberStatusInvited = "INVITED" @@ -14649,6 +21202,34 @@ } } +const ( + // PrivacyBudgetTemplateAutoRefreshCalendarMonth is a PrivacyBudgetTemplateAutoRefresh enum value + PrivacyBudgetTemplateAutoRefreshCalendarMonth = "CALENDAR_MONTH" + + // PrivacyBudgetTemplateAutoRefreshNone is a PrivacyBudgetTemplateAutoRefresh enum value + PrivacyBudgetTemplateAutoRefreshNone = "NONE" +) + +// PrivacyBudgetTemplateAutoRefresh_Values returns all elements of the PrivacyBudgetTemplateAutoRefresh enum +func PrivacyBudgetTemplateAutoRefresh_Values() []string { + return []string{ + PrivacyBudgetTemplateAutoRefreshCalendarMonth, + PrivacyBudgetTemplateAutoRefreshNone, + } +} + +const ( + // PrivacyBudgetTypeDifferentialPrivacy is a PrivacyBudgetType enum value + PrivacyBudgetTypeDifferentialPrivacy = "DIFFERENTIAL_PRIVACY" +) + +// PrivacyBudgetType_Values returns all elements of the PrivacyBudgetType enum +func PrivacyBudgetType_Values() []string { + return []string{ + PrivacyBudgetTypeDifferentialPrivacy, + } +} + const ( // ProtectedQueryStatusSubmitted is a ProtectedQueryStatus enum value ProtectedQueryStatusSubmitted = "SUBMITTED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanrooms/cleanroomsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanrooms/cleanroomsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanrooms/cleanroomsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanrooms/cleanroomsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -76,6 +76,10 @@ CreateCollaborationWithContext(aws.Context, *cleanrooms.CreateCollaborationInput, ...request.Option) (*cleanrooms.CreateCollaborationOutput, error) CreateCollaborationRequest(*cleanrooms.CreateCollaborationInput) (*request.Request, *cleanrooms.CreateCollaborationOutput) + CreateConfiguredAudienceModelAssociation(*cleanrooms.CreateConfiguredAudienceModelAssociationInput) (*cleanrooms.CreateConfiguredAudienceModelAssociationOutput, error) + CreateConfiguredAudienceModelAssociationWithContext(aws.Context, *cleanrooms.CreateConfiguredAudienceModelAssociationInput, ...request.Option) (*cleanrooms.CreateConfiguredAudienceModelAssociationOutput, error) + CreateConfiguredAudienceModelAssociationRequest(*cleanrooms.CreateConfiguredAudienceModelAssociationInput) (*request.Request, *cleanrooms.CreateConfiguredAudienceModelAssociationOutput) + CreateConfiguredTable(*cleanrooms.CreateConfiguredTableInput) (*cleanrooms.CreateConfiguredTableOutput, error) CreateConfiguredTableWithContext(aws.Context, *cleanrooms.CreateConfiguredTableInput, ...request.Option) (*cleanrooms.CreateConfiguredTableOutput, error) CreateConfiguredTableRequest(*cleanrooms.CreateConfiguredTableInput) (*request.Request, *cleanrooms.CreateConfiguredTableOutput) @@ -92,6 +96,10 @@ CreateMembershipWithContext(aws.Context, *cleanrooms.CreateMembershipInput, ...request.Option) (*cleanrooms.CreateMembershipOutput, error) CreateMembershipRequest(*cleanrooms.CreateMembershipInput) (*request.Request, *cleanrooms.CreateMembershipOutput) + CreatePrivacyBudgetTemplate(*cleanrooms.CreatePrivacyBudgetTemplateInput) (*cleanrooms.CreatePrivacyBudgetTemplateOutput, error) + CreatePrivacyBudgetTemplateWithContext(aws.Context, *cleanrooms.CreatePrivacyBudgetTemplateInput, ...request.Option) (*cleanrooms.CreatePrivacyBudgetTemplateOutput, error) + CreatePrivacyBudgetTemplateRequest(*cleanrooms.CreatePrivacyBudgetTemplateInput) (*request.Request, *cleanrooms.CreatePrivacyBudgetTemplateOutput) + DeleteAnalysisTemplate(*cleanrooms.DeleteAnalysisTemplateInput) (*cleanrooms.DeleteAnalysisTemplateOutput, error) DeleteAnalysisTemplateWithContext(aws.Context, *cleanrooms.DeleteAnalysisTemplateInput, ...request.Option) (*cleanrooms.DeleteAnalysisTemplateOutput, error) DeleteAnalysisTemplateRequest(*cleanrooms.DeleteAnalysisTemplateInput) (*request.Request, *cleanrooms.DeleteAnalysisTemplateOutput) @@ -100,6 +108,10 @@ DeleteCollaborationWithContext(aws.Context, *cleanrooms.DeleteCollaborationInput, ...request.Option) (*cleanrooms.DeleteCollaborationOutput, error) DeleteCollaborationRequest(*cleanrooms.DeleteCollaborationInput) (*request.Request, *cleanrooms.DeleteCollaborationOutput) + DeleteConfiguredAudienceModelAssociation(*cleanrooms.DeleteConfiguredAudienceModelAssociationInput) (*cleanrooms.DeleteConfiguredAudienceModelAssociationOutput, error) + DeleteConfiguredAudienceModelAssociationWithContext(aws.Context, *cleanrooms.DeleteConfiguredAudienceModelAssociationInput, ...request.Option) (*cleanrooms.DeleteConfiguredAudienceModelAssociationOutput, error) + DeleteConfiguredAudienceModelAssociationRequest(*cleanrooms.DeleteConfiguredAudienceModelAssociationInput) (*request.Request, *cleanrooms.DeleteConfiguredAudienceModelAssociationOutput) + DeleteConfiguredTable(*cleanrooms.DeleteConfiguredTableInput) (*cleanrooms.DeleteConfiguredTableOutput, error) DeleteConfiguredTableWithContext(aws.Context, *cleanrooms.DeleteConfiguredTableInput, ...request.Option) (*cleanrooms.DeleteConfiguredTableOutput, error) DeleteConfiguredTableRequest(*cleanrooms.DeleteConfiguredTableInput) (*request.Request, *cleanrooms.DeleteConfiguredTableOutput) @@ -120,6 +132,10 @@ DeleteMembershipWithContext(aws.Context, *cleanrooms.DeleteMembershipInput, ...request.Option) (*cleanrooms.DeleteMembershipOutput, error) DeleteMembershipRequest(*cleanrooms.DeleteMembershipInput) (*request.Request, *cleanrooms.DeleteMembershipOutput) + DeletePrivacyBudgetTemplate(*cleanrooms.DeletePrivacyBudgetTemplateInput) (*cleanrooms.DeletePrivacyBudgetTemplateOutput, error) + DeletePrivacyBudgetTemplateWithContext(aws.Context, *cleanrooms.DeletePrivacyBudgetTemplateInput, ...request.Option) (*cleanrooms.DeletePrivacyBudgetTemplateOutput, error) + DeletePrivacyBudgetTemplateRequest(*cleanrooms.DeletePrivacyBudgetTemplateInput) (*request.Request, *cleanrooms.DeletePrivacyBudgetTemplateOutput) + GetAnalysisTemplate(*cleanrooms.GetAnalysisTemplateInput) (*cleanrooms.GetAnalysisTemplateOutput, error) GetAnalysisTemplateWithContext(aws.Context, *cleanrooms.GetAnalysisTemplateInput, ...request.Option) (*cleanrooms.GetAnalysisTemplateOutput, error) GetAnalysisTemplateRequest(*cleanrooms.GetAnalysisTemplateInput) (*request.Request, *cleanrooms.GetAnalysisTemplateOutput) @@ -132,6 +148,18 @@ GetCollaborationAnalysisTemplateWithContext(aws.Context, *cleanrooms.GetCollaborationAnalysisTemplateInput, ...request.Option) (*cleanrooms.GetCollaborationAnalysisTemplateOutput, error) GetCollaborationAnalysisTemplateRequest(*cleanrooms.GetCollaborationAnalysisTemplateInput) (*request.Request, *cleanrooms.GetCollaborationAnalysisTemplateOutput) + GetCollaborationConfiguredAudienceModelAssociation(*cleanrooms.GetCollaborationConfiguredAudienceModelAssociationInput) (*cleanrooms.GetCollaborationConfiguredAudienceModelAssociationOutput, error) + GetCollaborationConfiguredAudienceModelAssociationWithContext(aws.Context, *cleanrooms.GetCollaborationConfiguredAudienceModelAssociationInput, ...request.Option) (*cleanrooms.GetCollaborationConfiguredAudienceModelAssociationOutput, error) + GetCollaborationConfiguredAudienceModelAssociationRequest(*cleanrooms.GetCollaborationConfiguredAudienceModelAssociationInput) (*request.Request, *cleanrooms.GetCollaborationConfiguredAudienceModelAssociationOutput) + + GetCollaborationPrivacyBudgetTemplate(*cleanrooms.GetCollaborationPrivacyBudgetTemplateInput) (*cleanrooms.GetCollaborationPrivacyBudgetTemplateOutput, error) + GetCollaborationPrivacyBudgetTemplateWithContext(aws.Context, *cleanrooms.GetCollaborationPrivacyBudgetTemplateInput, ...request.Option) (*cleanrooms.GetCollaborationPrivacyBudgetTemplateOutput, error) + GetCollaborationPrivacyBudgetTemplateRequest(*cleanrooms.GetCollaborationPrivacyBudgetTemplateInput) (*request.Request, *cleanrooms.GetCollaborationPrivacyBudgetTemplateOutput) + + GetConfiguredAudienceModelAssociation(*cleanrooms.GetConfiguredAudienceModelAssociationInput) (*cleanrooms.GetConfiguredAudienceModelAssociationOutput, error) + GetConfiguredAudienceModelAssociationWithContext(aws.Context, *cleanrooms.GetConfiguredAudienceModelAssociationInput, ...request.Option) (*cleanrooms.GetConfiguredAudienceModelAssociationOutput, error) + GetConfiguredAudienceModelAssociationRequest(*cleanrooms.GetConfiguredAudienceModelAssociationInput) (*request.Request, *cleanrooms.GetConfiguredAudienceModelAssociationOutput) + GetConfiguredTable(*cleanrooms.GetConfiguredTableInput) (*cleanrooms.GetConfiguredTableOutput, error) GetConfiguredTableWithContext(aws.Context, *cleanrooms.GetConfiguredTableInput, ...request.Option) (*cleanrooms.GetConfiguredTableOutput, error) GetConfiguredTableRequest(*cleanrooms.GetConfiguredTableInput) (*request.Request, *cleanrooms.GetConfiguredTableOutput) @@ -148,6 +176,10 @@ GetMembershipWithContext(aws.Context, *cleanrooms.GetMembershipInput, ...request.Option) (*cleanrooms.GetMembershipOutput, error) GetMembershipRequest(*cleanrooms.GetMembershipInput) (*request.Request, *cleanrooms.GetMembershipOutput) + GetPrivacyBudgetTemplate(*cleanrooms.GetPrivacyBudgetTemplateInput) (*cleanrooms.GetPrivacyBudgetTemplateOutput, error) + GetPrivacyBudgetTemplateWithContext(aws.Context, *cleanrooms.GetPrivacyBudgetTemplateInput, ...request.Option) (*cleanrooms.GetPrivacyBudgetTemplateOutput, error) + GetPrivacyBudgetTemplateRequest(*cleanrooms.GetPrivacyBudgetTemplateInput) (*request.Request, *cleanrooms.GetPrivacyBudgetTemplateOutput) + GetProtectedQuery(*cleanrooms.GetProtectedQueryInput) (*cleanrooms.GetProtectedQueryOutput, error) GetProtectedQueryWithContext(aws.Context, *cleanrooms.GetProtectedQueryInput, ...request.Option) (*cleanrooms.GetProtectedQueryOutput, error) GetProtectedQueryRequest(*cleanrooms.GetProtectedQueryInput) (*request.Request, *cleanrooms.GetProtectedQueryOutput) @@ -174,6 +206,27 @@ ListCollaborationAnalysisTemplatesPages(*cleanrooms.ListCollaborationAnalysisTemplatesInput, func(*cleanrooms.ListCollaborationAnalysisTemplatesOutput, bool) bool) error ListCollaborationAnalysisTemplatesPagesWithContext(aws.Context, *cleanrooms.ListCollaborationAnalysisTemplatesInput, func(*cleanrooms.ListCollaborationAnalysisTemplatesOutput, bool) bool, ...request.Option) error + ListCollaborationConfiguredAudienceModelAssociations(*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsInput) (*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsOutput, error) + ListCollaborationConfiguredAudienceModelAssociationsWithContext(aws.Context, *cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsInput, ...request.Option) (*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsOutput, error) + ListCollaborationConfiguredAudienceModelAssociationsRequest(*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsInput) (*request.Request, *cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsOutput) + + ListCollaborationConfiguredAudienceModelAssociationsPages(*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsInput, func(*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsOutput, bool) bool) error + ListCollaborationConfiguredAudienceModelAssociationsPagesWithContext(aws.Context, *cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsInput, func(*cleanrooms.ListCollaborationConfiguredAudienceModelAssociationsOutput, bool) bool, ...request.Option) error + + ListCollaborationPrivacyBudgetTemplates(*cleanrooms.ListCollaborationPrivacyBudgetTemplatesInput) (*cleanrooms.ListCollaborationPrivacyBudgetTemplatesOutput, error) + ListCollaborationPrivacyBudgetTemplatesWithContext(aws.Context, *cleanrooms.ListCollaborationPrivacyBudgetTemplatesInput, ...request.Option) (*cleanrooms.ListCollaborationPrivacyBudgetTemplatesOutput, error) + ListCollaborationPrivacyBudgetTemplatesRequest(*cleanrooms.ListCollaborationPrivacyBudgetTemplatesInput) (*request.Request, *cleanrooms.ListCollaborationPrivacyBudgetTemplatesOutput) + + ListCollaborationPrivacyBudgetTemplatesPages(*cleanrooms.ListCollaborationPrivacyBudgetTemplatesInput, func(*cleanrooms.ListCollaborationPrivacyBudgetTemplatesOutput, bool) bool) error + ListCollaborationPrivacyBudgetTemplatesPagesWithContext(aws.Context, *cleanrooms.ListCollaborationPrivacyBudgetTemplatesInput, func(*cleanrooms.ListCollaborationPrivacyBudgetTemplatesOutput, bool) bool, ...request.Option) error + + ListCollaborationPrivacyBudgets(*cleanrooms.ListCollaborationPrivacyBudgetsInput) (*cleanrooms.ListCollaborationPrivacyBudgetsOutput, error) + ListCollaborationPrivacyBudgetsWithContext(aws.Context, *cleanrooms.ListCollaborationPrivacyBudgetsInput, ...request.Option) (*cleanrooms.ListCollaborationPrivacyBudgetsOutput, error) + ListCollaborationPrivacyBudgetsRequest(*cleanrooms.ListCollaborationPrivacyBudgetsInput) (*request.Request, *cleanrooms.ListCollaborationPrivacyBudgetsOutput) + + ListCollaborationPrivacyBudgetsPages(*cleanrooms.ListCollaborationPrivacyBudgetsInput, func(*cleanrooms.ListCollaborationPrivacyBudgetsOutput, bool) bool) error + ListCollaborationPrivacyBudgetsPagesWithContext(aws.Context, *cleanrooms.ListCollaborationPrivacyBudgetsInput, func(*cleanrooms.ListCollaborationPrivacyBudgetsOutput, bool) bool, ...request.Option) error + ListCollaborations(*cleanrooms.ListCollaborationsInput) (*cleanrooms.ListCollaborationsOutput, error) ListCollaborationsWithContext(aws.Context, *cleanrooms.ListCollaborationsInput, ...request.Option) (*cleanrooms.ListCollaborationsOutput, error) ListCollaborationsRequest(*cleanrooms.ListCollaborationsInput) (*request.Request, *cleanrooms.ListCollaborationsOutput) @@ -181,6 +234,13 @@ ListCollaborationsPages(*cleanrooms.ListCollaborationsInput, func(*cleanrooms.ListCollaborationsOutput, bool) bool) error ListCollaborationsPagesWithContext(aws.Context, *cleanrooms.ListCollaborationsInput, func(*cleanrooms.ListCollaborationsOutput, bool) bool, ...request.Option) error + ListConfiguredAudienceModelAssociations(*cleanrooms.ListConfiguredAudienceModelAssociationsInput) (*cleanrooms.ListConfiguredAudienceModelAssociationsOutput, error) + ListConfiguredAudienceModelAssociationsWithContext(aws.Context, *cleanrooms.ListConfiguredAudienceModelAssociationsInput, ...request.Option) (*cleanrooms.ListConfiguredAudienceModelAssociationsOutput, error) + ListConfiguredAudienceModelAssociationsRequest(*cleanrooms.ListConfiguredAudienceModelAssociationsInput) (*request.Request, *cleanrooms.ListConfiguredAudienceModelAssociationsOutput) + + ListConfiguredAudienceModelAssociationsPages(*cleanrooms.ListConfiguredAudienceModelAssociationsInput, func(*cleanrooms.ListConfiguredAudienceModelAssociationsOutput, bool) bool) error + ListConfiguredAudienceModelAssociationsPagesWithContext(aws.Context, *cleanrooms.ListConfiguredAudienceModelAssociationsInput, func(*cleanrooms.ListConfiguredAudienceModelAssociationsOutput, bool) bool, ...request.Option) error + ListConfiguredTableAssociations(*cleanrooms.ListConfiguredTableAssociationsInput) (*cleanrooms.ListConfiguredTableAssociationsOutput, error) ListConfiguredTableAssociationsWithContext(aws.Context, *cleanrooms.ListConfiguredTableAssociationsInput, ...request.Option) (*cleanrooms.ListConfiguredTableAssociationsOutput, error) ListConfiguredTableAssociationsRequest(*cleanrooms.ListConfiguredTableAssociationsInput) (*request.Request, *cleanrooms.ListConfiguredTableAssociationsOutput) @@ -209,6 +269,20 @@ ListMembershipsPages(*cleanrooms.ListMembershipsInput, func(*cleanrooms.ListMembershipsOutput, bool) bool) error ListMembershipsPagesWithContext(aws.Context, *cleanrooms.ListMembershipsInput, func(*cleanrooms.ListMembershipsOutput, bool) bool, ...request.Option) error + ListPrivacyBudgetTemplates(*cleanrooms.ListPrivacyBudgetTemplatesInput) (*cleanrooms.ListPrivacyBudgetTemplatesOutput, error) + ListPrivacyBudgetTemplatesWithContext(aws.Context, *cleanrooms.ListPrivacyBudgetTemplatesInput, ...request.Option) (*cleanrooms.ListPrivacyBudgetTemplatesOutput, error) + ListPrivacyBudgetTemplatesRequest(*cleanrooms.ListPrivacyBudgetTemplatesInput) (*request.Request, *cleanrooms.ListPrivacyBudgetTemplatesOutput) + + ListPrivacyBudgetTemplatesPages(*cleanrooms.ListPrivacyBudgetTemplatesInput, func(*cleanrooms.ListPrivacyBudgetTemplatesOutput, bool) bool) error + ListPrivacyBudgetTemplatesPagesWithContext(aws.Context, *cleanrooms.ListPrivacyBudgetTemplatesInput, func(*cleanrooms.ListPrivacyBudgetTemplatesOutput, bool) bool, ...request.Option) error + + ListPrivacyBudgets(*cleanrooms.ListPrivacyBudgetsInput) (*cleanrooms.ListPrivacyBudgetsOutput, error) + ListPrivacyBudgetsWithContext(aws.Context, *cleanrooms.ListPrivacyBudgetsInput, ...request.Option) (*cleanrooms.ListPrivacyBudgetsOutput, error) + ListPrivacyBudgetsRequest(*cleanrooms.ListPrivacyBudgetsInput) (*request.Request, *cleanrooms.ListPrivacyBudgetsOutput) + + ListPrivacyBudgetsPages(*cleanrooms.ListPrivacyBudgetsInput, func(*cleanrooms.ListPrivacyBudgetsOutput, bool) bool) error + ListPrivacyBudgetsPagesWithContext(aws.Context, *cleanrooms.ListPrivacyBudgetsInput, func(*cleanrooms.ListPrivacyBudgetsOutput, bool) bool, ...request.Option) error + ListProtectedQueries(*cleanrooms.ListProtectedQueriesInput) (*cleanrooms.ListProtectedQueriesOutput, error) ListProtectedQueriesWithContext(aws.Context, *cleanrooms.ListProtectedQueriesInput, ...request.Option) (*cleanrooms.ListProtectedQueriesOutput, error) ListProtectedQueriesRequest(*cleanrooms.ListProtectedQueriesInput) (*request.Request, *cleanrooms.ListProtectedQueriesOutput) @@ -227,6 +301,10 @@ ListTagsForResourceWithContext(aws.Context, *cleanrooms.ListTagsForResourceInput, ...request.Option) (*cleanrooms.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*cleanrooms.ListTagsForResourceInput) (*request.Request, *cleanrooms.ListTagsForResourceOutput) + PreviewPrivacyImpact(*cleanrooms.PreviewPrivacyImpactInput) (*cleanrooms.PreviewPrivacyImpactOutput, error) + PreviewPrivacyImpactWithContext(aws.Context, *cleanrooms.PreviewPrivacyImpactInput, ...request.Option) (*cleanrooms.PreviewPrivacyImpactOutput, error) + PreviewPrivacyImpactRequest(*cleanrooms.PreviewPrivacyImpactInput) (*request.Request, *cleanrooms.PreviewPrivacyImpactOutput) + StartProtectedQuery(*cleanrooms.StartProtectedQueryInput) (*cleanrooms.StartProtectedQueryOutput, error) StartProtectedQueryWithContext(aws.Context, *cleanrooms.StartProtectedQueryInput, ...request.Option) (*cleanrooms.StartProtectedQueryOutput, error) StartProtectedQueryRequest(*cleanrooms.StartProtectedQueryInput) (*request.Request, *cleanrooms.StartProtectedQueryOutput) @@ -247,6 +325,10 @@ UpdateCollaborationWithContext(aws.Context, *cleanrooms.UpdateCollaborationInput, ...request.Option) (*cleanrooms.UpdateCollaborationOutput, error) UpdateCollaborationRequest(*cleanrooms.UpdateCollaborationInput) (*request.Request, *cleanrooms.UpdateCollaborationOutput) + UpdateConfiguredAudienceModelAssociation(*cleanrooms.UpdateConfiguredAudienceModelAssociationInput) (*cleanrooms.UpdateConfiguredAudienceModelAssociationOutput, error) + UpdateConfiguredAudienceModelAssociationWithContext(aws.Context, *cleanrooms.UpdateConfiguredAudienceModelAssociationInput, ...request.Option) (*cleanrooms.UpdateConfiguredAudienceModelAssociationOutput, error) + UpdateConfiguredAudienceModelAssociationRequest(*cleanrooms.UpdateConfiguredAudienceModelAssociationInput) (*request.Request, *cleanrooms.UpdateConfiguredAudienceModelAssociationOutput) + UpdateConfiguredTable(*cleanrooms.UpdateConfiguredTableInput) (*cleanrooms.UpdateConfiguredTableOutput, error) UpdateConfiguredTableWithContext(aws.Context, *cleanrooms.UpdateConfiguredTableInput, ...request.Option) (*cleanrooms.UpdateConfiguredTableOutput, error) UpdateConfiguredTableRequest(*cleanrooms.UpdateConfiguredTableInput) (*request.Request, *cleanrooms.UpdateConfiguredTableOutput) @@ -263,6 +345,10 @@ UpdateMembershipWithContext(aws.Context, *cleanrooms.UpdateMembershipInput, ...request.Option) (*cleanrooms.UpdateMembershipOutput, error) UpdateMembershipRequest(*cleanrooms.UpdateMembershipInput) (*request.Request, *cleanrooms.UpdateMembershipOutput) + UpdatePrivacyBudgetTemplate(*cleanrooms.UpdatePrivacyBudgetTemplateInput) (*cleanrooms.UpdatePrivacyBudgetTemplateOutput, error) + UpdatePrivacyBudgetTemplateWithContext(aws.Context, *cleanrooms.UpdatePrivacyBudgetTemplateInput, ...request.Option) (*cleanrooms.UpdatePrivacyBudgetTemplateOutput, error) + UpdatePrivacyBudgetTemplateRequest(*cleanrooms.UpdatePrivacyBudgetTemplateInput) (*request.Request, *cleanrooms.UpdatePrivacyBudgetTemplateOutput) + UpdateProtectedQuery(*cleanrooms.UpdateProtectedQueryInput) (*cleanrooms.UpdateProtectedQueryOutput, error) UpdateProtectedQueryWithContext(aws.Context, *cleanrooms.UpdateProtectedQueryInput, ...request.Option) (*cleanrooms.UpdateProtectedQueryOutput, error) UpdateProtectedQueryRequest(*cleanrooms.UpdateProtectedQueryInput) (*request.Request, *cleanrooms.UpdateProtectedQueryOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,7756 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package cleanroomsml + +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/restjson" +) + +const opCreateAudienceModel = "CreateAudienceModel" + +// CreateAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the CreateAudienceModel 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 CreateAudienceModel for more information on using the CreateAudienceModel +// 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 CreateAudienceModelRequest method. +// req, resp := client.CreateAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateAudienceModel +func (c *CleanRoomsML) CreateAudienceModelRequest(input *CreateAudienceModelInput) (req *request.Request, output *CreateAudienceModelOutput) { + op := &request.Operation{ + Name: opCreateAudienceModel, + HTTPMethod: "POST", + HTTPPath: "/audience-model", + } + + if input == nil { + input = &CreateAudienceModelInput{} + } + + output = &CreateAudienceModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAudienceModel API operation for AWS Clean Rooms ML. +// +// Defines the information necessary to create an audience model. An audience +// model is a machine learning model that Clean Rooms ML trains to measure similarity +// between users. Clean Rooms ML manages training and storing the audience model. +// The audience model can be used in multiple calls to the StartAudienceGenerationJob +// API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation CreateAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// - ServiceQuotaExceededException +// You have exceeded your service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateAudienceModel +func (c *CleanRoomsML) CreateAudienceModel(input *CreateAudienceModelInput) (*CreateAudienceModelOutput, error) { + req, out := c.CreateAudienceModelRequest(input) + return out, req.Send() +} + +// CreateAudienceModelWithContext is the same as CreateAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAudienceModel 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 *CleanRoomsML) CreateAudienceModelWithContext(ctx aws.Context, input *CreateAudienceModelInput, opts ...request.Option) (*CreateAudienceModelOutput, error) { + req, out := c.CreateAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateConfiguredAudienceModel = "CreateConfiguredAudienceModel" + +// CreateConfiguredAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the CreateConfiguredAudienceModel 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 CreateConfiguredAudienceModel for more information on using the CreateConfiguredAudienceModel +// 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 CreateConfiguredAudienceModelRequest method. +// req, resp := client.CreateConfiguredAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateConfiguredAudienceModel +func (c *CleanRoomsML) CreateConfiguredAudienceModelRequest(input *CreateConfiguredAudienceModelInput) (req *request.Request, output *CreateConfiguredAudienceModelOutput) { + op := &request.Operation{ + Name: opCreateConfiguredAudienceModel, + HTTPMethod: "POST", + HTTPPath: "/configured-audience-model", + } + + if input == nil { + input = &CreateConfiguredAudienceModelInput{} + } + + output = &CreateConfiguredAudienceModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateConfiguredAudienceModel API operation for AWS Clean Rooms ML. +// +// Defines the information necessary to create a configured audience model. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation CreateConfiguredAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// - ServiceQuotaExceededException +// You have exceeded your service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateConfiguredAudienceModel +func (c *CleanRoomsML) CreateConfiguredAudienceModel(input *CreateConfiguredAudienceModelInput) (*CreateConfiguredAudienceModelOutput, error) { + req, out := c.CreateConfiguredAudienceModelRequest(input) + return out, req.Send() +} + +// CreateConfiguredAudienceModelWithContext is the same as CreateConfiguredAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See CreateConfiguredAudienceModel 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 *CleanRoomsML) CreateConfiguredAudienceModelWithContext(ctx aws.Context, input *CreateConfiguredAudienceModelInput, opts ...request.Option) (*CreateConfiguredAudienceModelOutput, error) { + req, out := c.CreateConfiguredAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateTrainingDataset = "CreateTrainingDataset" + +// CreateTrainingDatasetRequest generates a "aws/request.Request" representing the +// client's request for the CreateTrainingDataset 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 CreateTrainingDataset for more information on using the CreateTrainingDataset +// 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 CreateTrainingDatasetRequest method. +// req, resp := client.CreateTrainingDatasetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateTrainingDataset +func (c *CleanRoomsML) CreateTrainingDatasetRequest(input *CreateTrainingDatasetInput) (req *request.Request, output *CreateTrainingDatasetOutput) { + op := &request.Operation{ + Name: opCreateTrainingDataset, + HTTPMethod: "POST", + HTTPPath: "/training-dataset", + } + + if input == nil { + input = &CreateTrainingDatasetInput{} + } + + output = &CreateTrainingDatasetOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTrainingDataset API operation for AWS Clean Rooms ML. +// +// Defines the information necessary to create a training dataset, or seed audience. +// In Clean Rooms ML, the TrainingDataset is metadata that points to a Glue +// table, which is read only during AudienceModel creation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation CreateTrainingDataset for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/CreateTrainingDataset +func (c *CleanRoomsML) CreateTrainingDataset(input *CreateTrainingDatasetInput) (*CreateTrainingDatasetOutput, error) { + req, out := c.CreateTrainingDatasetRequest(input) + return out, req.Send() +} + +// CreateTrainingDatasetWithContext is the same as CreateTrainingDataset with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTrainingDataset 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 *CleanRoomsML) CreateTrainingDatasetWithContext(ctx aws.Context, input *CreateTrainingDatasetInput, opts ...request.Option) (*CreateTrainingDatasetOutput, error) { + req, out := c.CreateTrainingDatasetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAudienceGenerationJob = "DeleteAudienceGenerationJob" + +// DeleteAudienceGenerationJobRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAudienceGenerationJob 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 DeleteAudienceGenerationJob for more information on using the DeleteAudienceGenerationJob +// 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 DeleteAudienceGenerationJobRequest method. +// req, resp := client.DeleteAudienceGenerationJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteAudienceGenerationJob +func (c *CleanRoomsML) DeleteAudienceGenerationJobRequest(input *DeleteAudienceGenerationJobInput) (req *request.Request, output *DeleteAudienceGenerationJobOutput) { + op := &request.Operation{ + Name: opDeleteAudienceGenerationJob, + HTTPMethod: "DELETE", + HTTPPath: "/audience-generation-job/{audienceGenerationJobArn}", + } + + if input == nil { + input = &DeleteAudienceGenerationJobInput{} + } + + output = &DeleteAudienceGenerationJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAudienceGenerationJob API operation for AWS Clean Rooms ML. +// +// Deletes the specified audience generation job, and removes all data associated +// with the job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation DeleteAudienceGenerationJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteAudienceGenerationJob +func (c *CleanRoomsML) DeleteAudienceGenerationJob(input *DeleteAudienceGenerationJobInput) (*DeleteAudienceGenerationJobOutput, error) { + req, out := c.DeleteAudienceGenerationJobRequest(input) + return out, req.Send() +} + +// DeleteAudienceGenerationJobWithContext is the same as DeleteAudienceGenerationJob with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAudienceGenerationJob 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 *CleanRoomsML) DeleteAudienceGenerationJobWithContext(ctx aws.Context, input *DeleteAudienceGenerationJobInput, opts ...request.Option) (*DeleteAudienceGenerationJobOutput, error) { + req, out := c.DeleteAudienceGenerationJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAudienceModel = "DeleteAudienceModel" + +// DeleteAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAudienceModel 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 DeleteAudienceModel for more information on using the DeleteAudienceModel +// 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 DeleteAudienceModelRequest method. +// req, resp := client.DeleteAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteAudienceModel +func (c *CleanRoomsML) DeleteAudienceModelRequest(input *DeleteAudienceModelInput) (req *request.Request, output *DeleteAudienceModelOutput) { + op := &request.Operation{ + Name: opDeleteAudienceModel, + HTTPMethod: "DELETE", + HTTPPath: "/audience-model/{audienceModelArn}", + } + + if input == nil { + input = &DeleteAudienceModelInput{} + } + + output = &DeleteAudienceModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAudienceModel API operation for AWS Clean Rooms ML. +// +// Specifies an audience model that you want to delete. You can't delete an +// audience model if there are any configured audience models that depend on +// the audience model. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation DeleteAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteAudienceModel +func (c *CleanRoomsML) DeleteAudienceModel(input *DeleteAudienceModelInput) (*DeleteAudienceModelOutput, error) { + req, out := c.DeleteAudienceModelRequest(input) + return out, req.Send() +} + +// DeleteAudienceModelWithContext is the same as DeleteAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAudienceModel 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 *CleanRoomsML) DeleteAudienceModelWithContext(ctx aws.Context, input *DeleteAudienceModelInput, opts ...request.Option) (*DeleteAudienceModelOutput, error) { + req, out := c.DeleteAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteConfiguredAudienceModel = "DeleteConfiguredAudienceModel" + +// DeleteConfiguredAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConfiguredAudienceModel 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 DeleteConfiguredAudienceModel for more information on using the DeleteConfiguredAudienceModel +// 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 DeleteConfiguredAudienceModelRequest method. +// req, resp := client.DeleteConfiguredAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteConfiguredAudienceModel +func (c *CleanRoomsML) DeleteConfiguredAudienceModelRequest(input *DeleteConfiguredAudienceModelInput) (req *request.Request, output *DeleteConfiguredAudienceModelOutput) { + op := &request.Operation{ + Name: opDeleteConfiguredAudienceModel, + HTTPMethod: "DELETE", + HTTPPath: "/configured-audience-model/{configuredAudienceModelArn}", + } + + if input == nil { + input = &DeleteConfiguredAudienceModelInput{} + } + + output = &DeleteConfiguredAudienceModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConfiguredAudienceModel API operation for AWS Clean Rooms ML. +// +// Deletes the specified configured audience model. You can't delete a configured +// audience model if there are any lookalike models that use the configured +// audience model. If you delete a configured audience model, it will be removed +// from any collaborations that it is associated to. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation DeleteConfiguredAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteConfiguredAudienceModel +func (c *CleanRoomsML) DeleteConfiguredAudienceModel(input *DeleteConfiguredAudienceModelInput) (*DeleteConfiguredAudienceModelOutput, error) { + req, out := c.DeleteConfiguredAudienceModelRequest(input) + return out, req.Send() +} + +// DeleteConfiguredAudienceModelWithContext is the same as DeleteConfiguredAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConfiguredAudienceModel 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 *CleanRoomsML) DeleteConfiguredAudienceModelWithContext(ctx aws.Context, input *DeleteConfiguredAudienceModelInput, opts ...request.Option) (*DeleteConfiguredAudienceModelOutput, error) { + req, out := c.DeleteConfiguredAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteConfiguredAudienceModelPolicy = "DeleteConfiguredAudienceModelPolicy" + +// DeleteConfiguredAudienceModelPolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConfiguredAudienceModelPolicy 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 DeleteConfiguredAudienceModelPolicy for more information on using the DeleteConfiguredAudienceModelPolicy +// 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 DeleteConfiguredAudienceModelPolicyRequest method. +// req, resp := client.DeleteConfiguredAudienceModelPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteConfiguredAudienceModelPolicy +func (c *CleanRoomsML) DeleteConfiguredAudienceModelPolicyRequest(input *DeleteConfiguredAudienceModelPolicyInput) (req *request.Request, output *DeleteConfiguredAudienceModelPolicyOutput) { + op := &request.Operation{ + Name: opDeleteConfiguredAudienceModelPolicy, + HTTPMethod: "DELETE", + HTTPPath: "/configured-audience-model/{configuredAudienceModelArn}/policy", + } + + if input == nil { + input = &DeleteConfiguredAudienceModelPolicyInput{} + } + + output = &DeleteConfiguredAudienceModelPolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConfiguredAudienceModelPolicy API operation for AWS Clean Rooms ML. +// +// Deletes the specified configured audience model 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 AWS Clean Rooms ML's +// API operation DeleteConfiguredAudienceModelPolicy for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteConfiguredAudienceModelPolicy +func (c *CleanRoomsML) DeleteConfiguredAudienceModelPolicy(input *DeleteConfiguredAudienceModelPolicyInput) (*DeleteConfiguredAudienceModelPolicyOutput, error) { + req, out := c.DeleteConfiguredAudienceModelPolicyRequest(input) + return out, req.Send() +} + +// DeleteConfiguredAudienceModelPolicyWithContext is the same as DeleteConfiguredAudienceModelPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConfiguredAudienceModelPolicy 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 *CleanRoomsML) DeleteConfiguredAudienceModelPolicyWithContext(ctx aws.Context, input *DeleteConfiguredAudienceModelPolicyInput, opts ...request.Option) (*DeleteConfiguredAudienceModelPolicyOutput, error) { + req, out := c.DeleteConfiguredAudienceModelPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteTrainingDataset = "DeleteTrainingDataset" + +// DeleteTrainingDatasetRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTrainingDataset 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 DeleteTrainingDataset for more information on using the DeleteTrainingDataset +// 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 DeleteTrainingDatasetRequest method. +// req, resp := client.DeleteTrainingDatasetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteTrainingDataset +func (c *CleanRoomsML) DeleteTrainingDatasetRequest(input *DeleteTrainingDatasetInput) (req *request.Request, output *DeleteTrainingDatasetOutput) { + op := &request.Operation{ + Name: opDeleteTrainingDataset, + HTTPMethod: "DELETE", + HTTPPath: "/training-dataset/{trainingDatasetArn}", + } + + if input == nil { + input = &DeleteTrainingDatasetInput{} + } + + output = &DeleteTrainingDatasetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTrainingDataset API operation for AWS Clean Rooms ML. +// +// Specifies a training dataset that you want to delete. You can't delete a +// training dataset if there are any audience models that depend on the training +// dataset. In Clean Rooms ML, the TrainingDataset is metadata that points to +// a Glue table, which is read only during AudienceModel creation. This action +// deletes the metadata. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation DeleteTrainingDataset for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DeleteTrainingDataset +func (c *CleanRoomsML) DeleteTrainingDataset(input *DeleteTrainingDatasetInput) (*DeleteTrainingDatasetOutput, error) { + req, out := c.DeleteTrainingDatasetRequest(input) + return out, req.Send() +} + +// DeleteTrainingDatasetWithContext is the same as DeleteTrainingDataset with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTrainingDataset 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 *CleanRoomsML) DeleteTrainingDatasetWithContext(ctx aws.Context, input *DeleteTrainingDatasetInput, opts ...request.Option) (*DeleteTrainingDatasetOutput, error) { + req, out := c.DeleteTrainingDatasetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAudienceGenerationJob = "GetAudienceGenerationJob" + +// GetAudienceGenerationJobRequest generates a "aws/request.Request" representing the +// client's request for the GetAudienceGenerationJob 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 GetAudienceGenerationJob for more information on using the GetAudienceGenerationJob +// 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 GetAudienceGenerationJobRequest method. +// req, resp := client.GetAudienceGenerationJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetAudienceGenerationJob +func (c *CleanRoomsML) GetAudienceGenerationJobRequest(input *GetAudienceGenerationJobInput) (req *request.Request, output *GetAudienceGenerationJobOutput) { + op := &request.Operation{ + Name: opGetAudienceGenerationJob, + HTTPMethod: "GET", + HTTPPath: "/audience-generation-job/{audienceGenerationJobArn}", + } + + if input == nil { + input = &GetAudienceGenerationJobInput{} + } + + output = &GetAudienceGenerationJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAudienceGenerationJob API operation for AWS Clean Rooms ML. +// +// Returns information about an audience generation job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation GetAudienceGenerationJob for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetAudienceGenerationJob +func (c *CleanRoomsML) GetAudienceGenerationJob(input *GetAudienceGenerationJobInput) (*GetAudienceGenerationJobOutput, error) { + req, out := c.GetAudienceGenerationJobRequest(input) + return out, req.Send() +} + +// GetAudienceGenerationJobWithContext is the same as GetAudienceGenerationJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetAudienceGenerationJob 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 *CleanRoomsML) GetAudienceGenerationJobWithContext(ctx aws.Context, input *GetAudienceGenerationJobInput, opts ...request.Option) (*GetAudienceGenerationJobOutput, error) { + req, out := c.GetAudienceGenerationJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAudienceModel = "GetAudienceModel" + +// GetAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the GetAudienceModel 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 GetAudienceModel for more information on using the GetAudienceModel +// 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 GetAudienceModelRequest method. +// req, resp := client.GetAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetAudienceModel +func (c *CleanRoomsML) GetAudienceModelRequest(input *GetAudienceModelInput) (req *request.Request, output *GetAudienceModelOutput) { + op := &request.Operation{ + Name: opGetAudienceModel, + HTTPMethod: "GET", + HTTPPath: "/audience-model/{audienceModelArn}", + } + + if input == nil { + input = &GetAudienceModelInput{} + } + + output = &GetAudienceModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAudienceModel API operation for AWS Clean Rooms ML. +// +// # Returns information about an audience model +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation GetAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetAudienceModel +func (c *CleanRoomsML) GetAudienceModel(input *GetAudienceModelInput) (*GetAudienceModelOutput, error) { + req, out := c.GetAudienceModelRequest(input) + return out, req.Send() +} + +// GetAudienceModelWithContext is the same as GetAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See GetAudienceModel 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 *CleanRoomsML) GetAudienceModelWithContext(ctx aws.Context, input *GetAudienceModelInput, opts ...request.Option) (*GetAudienceModelOutput, error) { + req, out := c.GetAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetConfiguredAudienceModel = "GetConfiguredAudienceModel" + +// GetConfiguredAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the GetConfiguredAudienceModel 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 GetConfiguredAudienceModel for more information on using the GetConfiguredAudienceModel +// 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 GetConfiguredAudienceModelRequest method. +// req, resp := client.GetConfiguredAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetConfiguredAudienceModel +func (c *CleanRoomsML) GetConfiguredAudienceModelRequest(input *GetConfiguredAudienceModelInput) (req *request.Request, output *GetConfiguredAudienceModelOutput) { + op := &request.Operation{ + Name: opGetConfiguredAudienceModel, + HTTPMethod: "GET", + HTTPPath: "/configured-audience-model/{configuredAudienceModelArn}", + } + + if input == nil { + input = &GetConfiguredAudienceModelInput{} + } + + output = &GetConfiguredAudienceModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfiguredAudienceModel API operation for AWS Clean Rooms ML. +// +// Returns information about a specified configured audience model. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation GetConfiguredAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetConfiguredAudienceModel +func (c *CleanRoomsML) GetConfiguredAudienceModel(input *GetConfiguredAudienceModelInput) (*GetConfiguredAudienceModelOutput, error) { + req, out := c.GetConfiguredAudienceModelRequest(input) + return out, req.Send() +} + +// GetConfiguredAudienceModelWithContext is the same as GetConfiguredAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfiguredAudienceModel 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 *CleanRoomsML) GetConfiguredAudienceModelWithContext(ctx aws.Context, input *GetConfiguredAudienceModelInput, opts ...request.Option) (*GetConfiguredAudienceModelOutput, error) { + req, out := c.GetConfiguredAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetConfiguredAudienceModelPolicy = "GetConfiguredAudienceModelPolicy" + +// GetConfiguredAudienceModelPolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetConfiguredAudienceModelPolicy 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 GetConfiguredAudienceModelPolicy for more information on using the GetConfiguredAudienceModelPolicy +// 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 GetConfiguredAudienceModelPolicyRequest method. +// req, resp := client.GetConfiguredAudienceModelPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetConfiguredAudienceModelPolicy +func (c *CleanRoomsML) GetConfiguredAudienceModelPolicyRequest(input *GetConfiguredAudienceModelPolicyInput) (req *request.Request, output *GetConfiguredAudienceModelPolicyOutput) { + op := &request.Operation{ + Name: opGetConfiguredAudienceModelPolicy, + HTTPMethod: "GET", + HTTPPath: "/configured-audience-model/{configuredAudienceModelArn}/policy", + } + + if input == nil { + input = &GetConfiguredAudienceModelPolicyInput{} + } + + output = &GetConfiguredAudienceModelPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfiguredAudienceModelPolicy API operation for AWS Clean Rooms ML. +// +// Returns information about a configured audience model 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 AWS Clean Rooms ML's +// API operation GetConfiguredAudienceModelPolicy for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetConfiguredAudienceModelPolicy +func (c *CleanRoomsML) GetConfiguredAudienceModelPolicy(input *GetConfiguredAudienceModelPolicyInput) (*GetConfiguredAudienceModelPolicyOutput, error) { + req, out := c.GetConfiguredAudienceModelPolicyRequest(input) + return out, req.Send() +} + +// GetConfiguredAudienceModelPolicyWithContext is the same as GetConfiguredAudienceModelPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfiguredAudienceModelPolicy 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 *CleanRoomsML) GetConfiguredAudienceModelPolicyWithContext(ctx aws.Context, input *GetConfiguredAudienceModelPolicyInput, opts ...request.Option) (*GetConfiguredAudienceModelPolicyOutput, error) { + req, out := c.GetConfiguredAudienceModelPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTrainingDataset = "GetTrainingDataset" + +// GetTrainingDatasetRequest generates a "aws/request.Request" representing the +// client's request for the GetTrainingDataset 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 GetTrainingDataset for more information on using the GetTrainingDataset +// 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 GetTrainingDatasetRequest method. +// req, resp := client.GetTrainingDatasetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetTrainingDataset +func (c *CleanRoomsML) GetTrainingDatasetRequest(input *GetTrainingDatasetInput) (req *request.Request, output *GetTrainingDatasetOutput) { + op := &request.Operation{ + Name: opGetTrainingDataset, + HTTPMethod: "GET", + HTTPPath: "/training-dataset/{trainingDatasetArn}", + } + + if input == nil { + input = &GetTrainingDatasetInput{} + } + + output = &GetTrainingDatasetOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTrainingDataset API operation for AWS Clean Rooms ML. +// +// Returns information about a training dataset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation GetTrainingDataset for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/GetTrainingDataset +func (c *CleanRoomsML) GetTrainingDataset(input *GetTrainingDatasetInput) (*GetTrainingDatasetOutput, error) { + req, out := c.GetTrainingDatasetRequest(input) + return out, req.Send() +} + +// GetTrainingDatasetWithContext is the same as GetTrainingDataset with the addition of +// the ability to pass a context and additional request options. +// +// See GetTrainingDataset 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 *CleanRoomsML) GetTrainingDatasetWithContext(ctx aws.Context, input *GetTrainingDatasetInput, opts ...request.Option) (*GetTrainingDatasetOutput, error) { + req, out := c.GetTrainingDatasetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListAudienceExportJobs = "ListAudienceExportJobs" + +// ListAudienceExportJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListAudienceExportJobs 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 ListAudienceExportJobs for more information on using the ListAudienceExportJobs +// 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 ListAudienceExportJobsRequest method. +// req, resp := client.ListAudienceExportJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceExportJobs +func (c *CleanRoomsML) ListAudienceExportJobsRequest(input *ListAudienceExportJobsInput) (req *request.Request, output *ListAudienceExportJobsOutput) { + op := &request.Operation{ + Name: opListAudienceExportJobs, + HTTPMethod: "GET", + HTTPPath: "/audience-export-job", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAudienceExportJobsInput{} + } + + output = &ListAudienceExportJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAudienceExportJobs API operation for AWS Clean Rooms ML. +// +// Returns a list of the audience export jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation ListAudienceExportJobs for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceExportJobs +func (c *CleanRoomsML) ListAudienceExportJobs(input *ListAudienceExportJobsInput) (*ListAudienceExportJobsOutput, error) { + req, out := c.ListAudienceExportJobsRequest(input) + return out, req.Send() +} + +// ListAudienceExportJobsWithContext is the same as ListAudienceExportJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListAudienceExportJobs 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 *CleanRoomsML) ListAudienceExportJobsWithContext(ctx aws.Context, input *ListAudienceExportJobsInput, opts ...request.Option) (*ListAudienceExportJobsOutput, error) { + req, out := c.ListAudienceExportJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAudienceExportJobsPages iterates over the pages of a ListAudienceExportJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAudienceExportJobs 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 ListAudienceExportJobs operation. +// pageNum := 0 +// err := client.ListAudienceExportJobsPages(params, +// func(page *cleanroomsml.ListAudienceExportJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRoomsML) ListAudienceExportJobsPages(input *ListAudienceExportJobsInput, fn func(*ListAudienceExportJobsOutput, bool) bool) error { + return c.ListAudienceExportJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAudienceExportJobsPagesWithContext same as ListAudienceExportJobsPages 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 *CleanRoomsML) ListAudienceExportJobsPagesWithContext(ctx aws.Context, input *ListAudienceExportJobsInput, fn func(*ListAudienceExportJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAudienceExportJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAudienceExportJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAudienceExportJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAudienceGenerationJobs = "ListAudienceGenerationJobs" + +// ListAudienceGenerationJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListAudienceGenerationJobs 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 ListAudienceGenerationJobs for more information on using the ListAudienceGenerationJobs +// 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 ListAudienceGenerationJobsRequest method. +// req, resp := client.ListAudienceGenerationJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceGenerationJobs +func (c *CleanRoomsML) ListAudienceGenerationJobsRequest(input *ListAudienceGenerationJobsInput) (req *request.Request, output *ListAudienceGenerationJobsOutput) { + op := &request.Operation{ + Name: opListAudienceGenerationJobs, + HTTPMethod: "GET", + HTTPPath: "/audience-generation-job", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAudienceGenerationJobsInput{} + } + + output = &ListAudienceGenerationJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAudienceGenerationJobs API operation for AWS Clean Rooms ML. +// +// Returns a list of audience generation jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation ListAudienceGenerationJobs for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceGenerationJobs +func (c *CleanRoomsML) ListAudienceGenerationJobs(input *ListAudienceGenerationJobsInput) (*ListAudienceGenerationJobsOutput, error) { + req, out := c.ListAudienceGenerationJobsRequest(input) + return out, req.Send() +} + +// ListAudienceGenerationJobsWithContext is the same as ListAudienceGenerationJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListAudienceGenerationJobs 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 *CleanRoomsML) ListAudienceGenerationJobsWithContext(ctx aws.Context, input *ListAudienceGenerationJobsInput, opts ...request.Option) (*ListAudienceGenerationJobsOutput, error) { + req, out := c.ListAudienceGenerationJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAudienceGenerationJobsPages iterates over the pages of a ListAudienceGenerationJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAudienceGenerationJobs 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 ListAudienceGenerationJobs operation. +// pageNum := 0 +// err := client.ListAudienceGenerationJobsPages(params, +// func(page *cleanroomsml.ListAudienceGenerationJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRoomsML) ListAudienceGenerationJobsPages(input *ListAudienceGenerationJobsInput, fn func(*ListAudienceGenerationJobsOutput, bool) bool) error { + return c.ListAudienceGenerationJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAudienceGenerationJobsPagesWithContext same as ListAudienceGenerationJobsPages 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 *CleanRoomsML) ListAudienceGenerationJobsPagesWithContext(ctx aws.Context, input *ListAudienceGenerationJobsInput, fn func(*ListAudienceGenerationJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAudienceGenerationJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAudienceGenerationJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAudienceGenerationJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAudienceModels = "ListAudienceModels" + +// ListAudienceModelsRequest generates a "aws/request.Request" representing the +// client's request for the ListAudienceModels 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 ListAudienceModels for more information on using the ListAudienceModels +// 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 ListAudienceModelsRequest method. +// req, resp := client.ListAudienceModelsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceModels +func (c *CleanRoomsML) ListAudienceModelsRequest(input *ListAudienceModelsInput) (req *request.Request, output *ListAudienceModelsOutput) { + op := &request.Operation{ + Name: opListAudienceModels, + HTTPMethod: "GET", + HTTPPath: "/audience-model", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAudienceModelsInput{} + } + + output = &ListAudienceModelsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAudienceModels API operation for AWS Clean Rooms ML. +// +// Returns a list of audience models. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation ListAudienceModels for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListAudienceModels +func (c *CleanRoomsML) ListAudienceModels(input *ListAudienceModelsInput) (*ListAudienceModelsOutput, error) { + req, out := c.ListAudienceModelsRequest(input) + return out, req.Send() +} + +// ListAudienceModelsWithContext is the same as ListAudienceModels with the addition of +// the ability to pass a context and additional request options. +// +// See ListAudienceModels 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 *CleanRoomsML) ListAudienceModelsWithContext(ctx aws.Context, input *ListAudienceModelsInput, opts ...request.Option) (*ListAudienceModelsOutput, error) { + req, out := c.ListAudienceModelsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAudienceModelsPages iterates over the pages of a ListAudienceModels operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAudienceModels 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 ListAudienceModels operation. +// pageNum := 0 +// err := client.ListAudienceModelsPages(params, +// func(page *cleanroomsml.ListAudienceModelsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRoomsML) ListAudienceModelsPages(input *ListAudienceModelsInput, fn func(*ListAudienceModelsOutput, bool) bool) error { + return c.ListAudienceModelsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAudienceModelsPagesWithContext same as ListAudienceModelsPages 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 *CleanRoomsML) ListAudienceModelsPagesWithContext(ctx aws.Context, input *ListAudienceModelsInput, fn func(*ListAudienceModelsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAudienceModelsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAudienceModelsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAudienceModelsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListConfiguredAudienceModels = "ListConfiguredAudienceModels" + +// ListConfiguredAudienceModelsRequest generates a "aws/request.Request" representing the +// client's request for the ListConfiguredAudienceModels 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 ListConfiguredAudienceModels for more information on using the ListConfiguredAudienceModels +// 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 ListConfiguredAudienceModelsRequest method. +// req, resp := client.ListConfiguredAudienceModelsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListConfiguredAudienceModels +func (c *CleanRoomsML) ListConfiguredAudienceModelsRequest(input *ListConfiguredAudienceModelsInput) (req *request.Request, output *ListConfiguredAudienceModelsOutput) { + op := &request.Operation{ + Name: opListConfiguredAudienceModels, + HTTPMethod: "GET", + HTTPPath: "/configured-audience-model", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConfiguredAudienceModelsInput{} + } + + output = &ListConfiguredAudienceModelsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConfiguredAudienceModels API operation for AWS Clean Rooms ML. +// +// Returns a list of the configured audience models. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation ListConfiguredAudienceModels for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListConfiguredAudienceModels +func (c *CleanRoomsML) ListConfiguredAudienceModels(input *ListConfiguredAudienceModelsInput) (*ListConfiguredAudienceModelsOutput, error) { + req, out := c.ListConfiguredAudienceModelsRequest(input) + return out, req.Send() +} + +// ListConfiguredAudienceModelsWithContext is the same as ListConfiguredAudienceModels with the addition of +// the ability to pass a context and additional request options. +// +// See ListConfiguredAudienceModels 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 *CleanRoomsML) ListConfiguredAudienceModelsWithContext(ctx aws.Context, input *ListConfiguredAudienceModelsInput, opts ...request.Option) (*ListConfiguredAudienceModelsOutput, error) { + req, out := c.ListConfiguredAudienceModelsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConfiguredAudienceModelsPages iterates over the pages of a ListConfiguredAudienceModels operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfiguredAudienceModels 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 ListConfiguredAudienceModels operation. +// pageNum := 0 +// err := client.ListConfiguredAudienceModelsPages(params, +// func(page *cleanroomsml.ListConfiguredAudienceModelsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRoomsML) ListConfiguredAudienceModelsPages(input *ListConfiguredAudienceModelsInput, fn func(*ListConfiguredAudienceModelsOutput, bool) bool) error { + return c.ListConfiguredAudienceModelsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfiguredAudienceModelsPagesWithContext same as ListConfiguredAudienceModelsPages 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 *CleanRoomsML) ListConfiguredAudienceModelsPagesWithContext(ctx aws.Context, input *ListConfiguredAudienceModelsInput, fn func(*ListConfiguredAudienceModelsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfiguredAudienceModelsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfiguredAudienceModelsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfiguredAudienceModelsOutput), !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/cleanroomsml-2023-09-06/ListTagsForResource +func (c *CleanRoomsML) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Clean Rooms ML. +// +// Returns a list of tags for a provided resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListTagsForResource +func (c *CleanRoomsML) 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 *CleanRoomsML) 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 opListTrainingDatasets = "ListTrainingDatasets" + +// ListTrainingDatasetsRequest generates a "aws/request.Request" representing the +// client's request for the ListTrainingDatasets 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 ListTrainingDatasets for more information on using the ListTrainingDatasets +// 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 ListTrainingDatasetsRequest method. +// req, resp := client.ListTrainingDatasetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListTrainingDatasets +func (c *CleanRoomsML) ListTrainingDatasetsRequest(input *ListTrainingDatasetsInput) (req *request.Request, output *ListTrainingDatasetsOutput) { + op := &request.Operation{ + Name: opListTrainingDatasets, + HTTPMethod: "GET", + HTTPPath: "/training-dataset", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTrainingDatasetsInput{} + } + + output = &ListTrainingDatasetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTrainingDatasets API operation for AWS Clean Rooms ML. +// +// Returns a list of training datasets. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation ListTrainingDatasets for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ListTrainingDatasets +func (c *CleanRoomsML) ListTrainingDatasets(input *ListTrainingDatasetsInput) (*ListTrainingDatasetsOutput, error) { + req, out := c.ListTrainingDatasetsRequest(input) + return out, req.Send() +} + +// ListTrainingDatasetsWithContext is the same as ListTrainingDatasets with the addition of +// the ability to pass a context and additional request options. +// +// See ListTrainingDatasets 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 *CleanRoomsML) ListTrainingDatasetsWithContext(ctx aws.Context, input *ListTrainingDatasetsInput, opts ...request.Option) (*ListTrainingDatasetsOutput, error) { + req, out := c.ListTrainingDatasetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTrainingDatasetsPages iterates over the pages of a ListTrainingDatasets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTrainingDatasets 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 ListTrainingDatasets operation. +// pageNum := 0 +// err := client.ListTrainingDatasetsPages(params, +// func(page *cleanroomsml.ListTrainingDatasetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CleanRoomsML) ListTrainingDatasetsPages(input *ListTrainingDatasetsInput, fn func(*ListTrainingDatasetsOutput, bool) bool) error { + return c.ListTrainingDatasetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTrainingDatasetsPagesWithContext same as ListTrainingDatasetsPages 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 *CleanRoomsML) ListTrainingDatasetsPagesWithContext(ctx aws.Context, input *ListTrainingDatasetsInput, fn func(*ListTrainingDatasetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTrainingDatasetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTrainingDatasetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTrainingDatasetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opPutConfiguredAudienceModelPolicy = "PutConfiguredAudienceModelPolicy" + +// PutConfiguredAudienceModelPolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutConfiguredAudienceModelPolicy 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 PutConfiguredAudienceModelPolicy for more information on using the PutConfiguredAudienceModelPolicy +// 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 PutConfiguredAudienceModelPolicyRequest method. +// req, resp := client.PutConfiguredAudienceModelPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/PutConfiguredAudienceModelPolicy +func (c *CleanRoomsML) PutConfiguredAudienceModelPolicyRequest(input *PutConfiguredAudienceModelPolicyInput) (req *request.Request, output *PutConfiguredAudienceModelPolicyOutput) { + op := &request.Operation{ + Name: opPutConfiguredAudienceModelPolicy, + HTTPMethod: "PUT", + HTTPPath: "/configured-audience-model/{configuredAudienceModelArn}/policy", + } + + if input == nil { + input = &PutConfiguredAudienceModelPolicyInput{} + } + + output = &PutConfiguredAudienceModelPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutConfiguredAudienceModelPolicy API operation for AWS Clean Rooms ML. +// +// Create or update the resource policy for a configured audience model. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation PutConfiguredAudienceModelPolicy for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/PutConfiguredAudienceModelPolicy +func (c *CleanRoomsML) PutConfiguredAudienceModelPolicy(input *PutConfiguredAudienceModelPolicyInput) (*PutConfiguredAudienceModelPolicyOutput, error) { + req, out := c.PutConfiguredAudienceModelPolicyRequest(input) + return out, req.Send() +} + +// PutConfiguredAudienceModelPolicyWithContext is the same as PutConfiguredAudienceModelPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutConfiguredAudienceModelPolicy 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 *CleanRoomsML) PutConfiguredAudienceModelPolicyWithContext(ctx aws.Context, input *PutConfiguredAudienceModelPolicyInput, opts ...request.Option) (*PutConfiguredAudienceModelPolicyOutput, error) { + req, out := c.PutConfiguredAudienceModelPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartAudienceExportJob = "StartAudienceExportJob" + +// StartAudienceExportJobRequest generates a "aws/request.Request" representing the +// client's request for the StartAudienceExportJob 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 StartAudienceExportJob for more information on using the StartAudienceExportJob +// 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 StartAudienceExportJobRequest method. +// req, resp := client.StartAudienceExportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/StartAudienceExportJob +func (c *CleanRoomsML) StartAudienceExportJobRequest(input *StartAudienceExportJobInput) (req *request.Request, output *StartAudienceExportJobOutput) { + op := &request.Operation{ + Name: opStartAudienceExportJob, + HTTPMethod: "POST", + HTTPPath: "/audience-export-job", + } + + if input == nil { + input = &StartAudienceExportJobInput{} + } + + output = &StartAudienceExportJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StartAudienceExportJob API operation for AWS Clean Rooms ML. +// +// Export an audience of a specified size after you have generated an audience. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation StartAudienceExportJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// - ServiceQuotaExceededException +// You have exceeded your service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/StartAudienceExportJob +func (c *CleanRoomsML) StartAudienceExportJob(input *StartAudienceExportJobInput) (*StartAudienceExportJobOutput, error) { + req, out := c.StartAudienceExportJobRequest(input) + return out, req.Send() +} + +// StartAudienceExportJobWithContext is the same as StartAudienceExportJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartAudienceExportJob 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 *CleanRoomsML) StartAudienceExportJobWithContext(ctx aws.Context, input *StartAudienceExportJobInput, opts ...request.Option) (*StartAudienceExportJobOutput, error) { + req, out := c.StartAudienceExportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartAudienceGenerationJob = "StartAudienceGenerationJob" + +// StartAudienceGenerationJobRequest generates a "aws/request.Request" representing the +// client's request for the StartAudienceGenerationJob 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 StartAudienceGenerationJob for more information on using the StartAudienceGenerationJob +// 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 StartAudienceGenerationJobRequest method. +// req, resp := client.StartAudienceGenerationJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/StartAudienceGenerationJob +func (c *CleanRoomsML) StartAudienceGenerationJobRequest(input *StartAudienceGenerationJobInput) (req *request.Request, output *StartAudienceGenerationJobOutput) { + op := &request.Operation{ + Name: opStartAudienceGenerationJob, + HTTPMethod: "POST", + HTTPPath: "/audience-generation-job", + } + + if input == nil { + input = &StartAudienceGenerationJobInput{} + } + + output = &StartAudienceGenerationJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartAudienceGenerationJob API operation for AWS Clean Rooms ML. +// +// Information necessary to start the audience generation job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation StartAudienceGenerationJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// - ServiceQuotaExceededException +// You have exceeded your service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/StartAudienceGenerationJob +func (c *CleanRoomsML) StartAudienceGenerationJob(input *StartAudienceGenerationJobInput) (*StartAudienceGenerationJobOutput, error) { + req, out := c.StartAudienceGenerationJobRequest(input) + return out, req.Send() +} + +// StartAudienceGenerationJobWithContext is the same as StartAudienceGenerationJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartAudienceGenerationJob 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 *CleanRoomsML) StartAudienceGenerationJobWithContext(ctx aws.Context, input *StartAudienceGenerationJobInput, opts ...request.Option) (*StartAudienceGenerationJobOutput, error) { + req, out := c.StartAudienceGenerationJobRequest(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/cleanroomsml-2023-09-06/TagResource +func (c *CleanRoomsML) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Clean Rooms ML. +// +// Adds metadata tags to a specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/TagResource +func (c *CleanRoomsML) 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 *CleanRoomsML) 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/cleanroomsml-2023-09-06/UntagResource +func (c *CleanRoomsML) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Clean Rooms ML. +// +// Removes metadata tags from a specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/UntagResource +func (c *CleanRoomsML) 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 *CleanRoomsML) 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 opUpdateConfiguredAudienceModel = "UpdateConfiguredAudienceModel" + +// UpdateConfiguredAudienceModelRequest generates a "aws/request.Request" representing the +// client's request for the UpdateConfiguredAudienceModel 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 UpdateConfiguredAudienceModel for more information on using the UpdateConfiguredAudienceModel +// 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 UpdateConfiguredAudienceModelRequest method. +// req, resp := client.UpdateConfiguredAudienceModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/UpdateConfiguredAudienceModel +func (c *CleanRoomsML) UpdateConfiguredAudienceModelRequest(input *UpdateConfiguredAudienceModelInput) (req *request.Request, output *UpdateConfiguredAudienceModelOutput) { + op := &request.Operation{ + Name: opUpdateConfiguredAudienceModel, + HTTPMethod: "PATCH", + HTTPPath: "/configured-audience-model/{configuredAudienceModelArn}", + } + + if input == nil { + input = &UpdateConfiguredAudienceModelInput{} + } + + output = &UpdateConfiguredAudienceModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateConfiguredAudienceModel API operation for AWS Clean Rooms ML. +// +// Provides the information necessary to update a configured audience model. +// Updates that impact audience generation jobs take effect when a new job starts, +// but do not impact currently running jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Clean Rooms ML's +// API operation UpdateConfiguredAudienceModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A resource with that name already exists in this region. +// +// - ValidationException +// The request parameters for this request are incorrect. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource you are requesting does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/UpdateConfiguredAudienceModel +func (c *CleanRoomsML) UpdateConfiguredAudienceModel(input *UpdateConfiguredAudienceModelInput) (*UpdateConfiguredAudienceModelOutput, error) { + req, out := c.UpdateConfiguredAudienceModelRequest(input) + return out, req.Send() +} + +// UpdateConfiguredAudienceModelWithContext is the same as UpdateConfiguredAudienceModel with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateConfiguredAudienceModel 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 *CleanRoomsML) UpdateConfiguredAudienceModelWithContext(ctx aws.Context, input *UpdateConfiguredAudienceModelInput, opts ...request.Option) (*UpdateConfiguredAudienceModelOutput, error) { + req, out := c.UpdateConfiguredAudienceModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Defines the Amazon S3 bucket where the configured audience is stored. +type AudienceDestination struct { + _ struct{} `type:"structure"` + + // The Amazon S3 bucket and path for the configured audience. + // + // S3Destination is a required field + S3Destination *S3ConfigMap `locationName:"s3Destination" 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 AudienceDestination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceDestination) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AudienceDestination) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AudienceDestination"} + if s.S3Destination == nil { + invalidParams.Add(request.NewErrParamRequired("S3Destination")) + } + if s.S3Destination != nil { + if err := s.S3Destination.Validate(); err != nil { + invalidParams.AddNested("S3Destination", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Destination sets the S3Destination field's value. +func (s *AudienceDestination) SetS3Destination(v *S3ConfigMap) *AudienceDestination { + s.S3Destination = v + return s +} + +// Provides information about the audience export job. +type AudienceExportJobSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience generation job that was exported. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` + + // The size of the generated audience. Must match one of the sizes in the configured + // audience model. + // + // AudienceSize is a required field + AudienceSize *AudienceSize `locationName:"audienceSize" type:"structure" required:"true"` + + // The time at which the audience export job was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the audience export job. + Description *string `locationName:"description" type:"string"` + + // The name of the audience export job. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon S3 bucket where the audience export is stored. + OutputLocation *string `locationName:"outputLocation" min:"1" type:"string"` + + // The status of the audience export job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AudienceExportJobStatus"` + + // Details about the status of a resource. + StatusDetails *StatusDetails `locationName:"statusDetails" type:"structure"` + + // The most recent time at which the audience export job was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 AudienceExportJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceExportJobSummary) GoString() string { + return s.String() +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *AudienceExportJobSummary) SetAudienceGenerationJobArn(v string) *AudienceExportJobSummary { + s.AudienceGenerationJobArn = &v + return s +} + +// SetAudienceSize sets the AudienceSize field's value. +func (s *AudienceExportJobSummary) SetAudienceSize(v *AudienceSize) *AudienceExportJobSummary { + s.AudienceSize = v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *AudienceExportJobSummary) SetCreateTime(v time.Time) *AudienceExportJobSummary { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AudienceExportJobSummary) SetDescription(v string) *AudienceExportJobSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *AudienceExportJobSummary) SetName(v string) *AudienceExportJobSummary { + s.Name = &v + return s +} + +// SetOutputLocation sets the OutputLocation field's value. +func (s *AudienceExportJobSummary) SetOutputLocation(v string) *AudienceExportJobSummary { + s.OutputLocation = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AudienceExportJobSummary) SetStatus(v string) *AudienceExportJobSummary { + s.Status = &v + return s +} + +// SetStatusDetails sets the StatusDetails field's value. +func (s *AudienceExportJobSummary) SetStatusDetails(v *StatusDetails) *AudienceExportJobSummary { + s.StatusDetails = v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *AudienceExportJobSummary) SetUpdateTime(v time.Time) *AudienceExportJobSummary { + s.UpdateTime = &v + return s +} + +// Defines the Amazon S3 bucket where the training data for the configured audience +// is stored. +type AudienceGenerationJobDataSource struct { + _ struct{} `type:"structure"` + + // The Amazon S3 bucket where the training data for the configured audience + // is stored. + // + // DataSource is a required field + DataSource *S3ConfigMap `locationName:"dataSource" type:"structure" required:"true"` + + // The ARN of the IAM role that can read the Amazon S3 bucket where the training + // data is stored. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceGenerationJobDataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceGenerationJobDataSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AudienceGenerationJobDataSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AudienceGenerationJobDataSource"} + if s.DataSource == nil { + invalidParams.Add(request.NewErrParamRequired("DataSource")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + if s.DataSource != nil { + if err := s.DataSource.Validate(); err != nil { + invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSource sets the DataSource field's value. +func (s *AudienceGenerationJobDataSource) SetDataSource(v *S3ConfigMap) *AudienceGenerationJobDataSource { + s.DataSource = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *AudienceGenerationJobDataSource) SetRoleArn(v string) *AudienceGenerationJobDataSource { + s.RoleArn = &v + return s +} + +// Provides information about the configured audience generation job. +type AudienceGenerationJobSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience generation job. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` + + // The identifier of the collaboration that contains this audience generation + // job. + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string"` + + // The Amazon Resource Name (ARN) of the configured audience model that was + // used for this audience generation job. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the audience generation job was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the audience generation job. + Description *string `locationName:"description" type:"string"` + + // The name of the audience generation job. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The AWS Account that submitted the job. + StartedBy *string `locationName:"startedBy" min:"12" type:"string"` + + // The status of the audience generation job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AudienceGenerationJobStatus"` + + // The most recent time at which the audience generation job was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 AudienceGenerationJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceGenerationJobSummary) GoString() string { + return s.String() +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *AudienceGenerationJobSummary) SetAudienceGenerationJobArn(v string) *AudienceGenerationJobSummary { + s.AudienceGenerationJobArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *AudienceGenerationJobSummary) SetCollaborationId(v string) *AudienceGenerationJobSummary { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *AudienceGenerationJobSummary) SetConfiguredAudienceModelArn(v string) *AudienceGenerationJobSummary { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *AudienceGenerationJobSummary) SetCreateTime(v time.Time) *AudienceGenerationJobSummary { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AudienceGenerationJobSummary) SetDescription(v string) *AudienceGenerationJobSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *AudienceGenerationJobSummary) SetName(v string) *AudienceGenerationJobSummary { + s.Name = &v + return s +} + +// SetStartedBy sets the StartedBy field's value. +func (s *AudienceGenerationJobSummary) SetStartedBy(v string) *AudienceGenerationJobSummary { + s.StartedBy = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AudienceGenerationJobSummary) SetStatus(v string) *AudienceGenerationJobSummary { + s.Status = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *AudienceGenerationJobSummary) SetUpdateTime(v time.Time) *AudienceGenerationJobSummary { + s.UpdateTime = &v + return s +} + +// The audience model metrics. +type AudienceModelMetric struct { + _ struct{} `type:"structure"` + + // The number of users that were used to generate these model metrics. + // + // ForTopKItemPredictions is a required field + ForTopKItemPredictions *int64 `locationName:"forTopKItemPredictions" type:"integer" required:"true"` + + // The audience model metric. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"AudienceModelMetricType"` + + // The value of the audience model metric + // + // Value is a required field + Value *float64 `locationName:"value" type:"double" 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 AudienceModelMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceModelMetric) GoString() string { + return s.String() +} + +// SetForTopKItemPredictions sets the ForTopKItemPredictions field's value. +func (s *AudienceModelMetric) SetForTopKItemPredictions(v int64) *AudienceModelMetric { + s.ForTopKItemPredictions = &v + return s +} + +// SetType sets the Type field's value. +func (s *AudienceModelMetric) SetType(v string) *AudienceModelMetric { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AudienceModelMetric) SetValue(v float64) *AudienceModelMetric { + s.Value = &v + return s +} + +// Information about the audience model. +type AudienceModelSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience model. + // + // AudienceModelArn is a required field + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the audience model was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the audience model. + Description *string `locationName:"description" type:"string"` + + // The name of the audience model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The status of the audience model. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AudienceModelStatus"` + + // The Amazon Resource Name (ARN) of the training dataset that was used for + // the audience model. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` + + // The most recent time at which the audience model was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 AudienceModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceModelSummary) GoString() string { + return s.String() +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *AudienceModelSummary) SetAudienceModelArn(v string) *AudienceModelSummary { + s.AudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *AudienceModelSummary) SetCreateTime(v time.Time) *AudienceModelSummary { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AudienceModelSummary) SetDescription(v string) *AudienceModelSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *AudienceModelSummary) SetName(v string) *AudienceModelSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AudienceModelSummary) SetStatus(v string) *AudienceModelSummary { + s.Status = &v + return s +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *AudienceModelSummary) SetTrainingDatasetArn(v string) *AudienceModelSummary { + s.TrainingDatasetArn = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *AudienceModelSummary) SetUpdateTime(v time.Time) *AudienceModelSummary { + s.UpdateTime = &v + return s +} + +// Metrics that describe the quality of the generated audience. +type AudienceQualityMetrics struct { + _ struct{} `type:"structure"` + + // The relevance scores of the generated audience. + // + // RelevanceMetrics is a required field + RelevanceMetrics []*RelevanceMetric `locationName:"relevanceMetrics" 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 AudienceQualityMetrics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceQualityMetrics) GoString() string { + return s.String() +} + +// SetRelevanceMetrics sets the RelevanceMetrics field's value. +func (s *AudienceQualityMetrics) SetRelevanceMetrics(v []*RelevanceMetric) *AudienceQualityMetrics { + s.RelevanceMetrics = v + return s +} + +// The size of the generated audience. Must match one of the sizes in the configured +// audience model. +type AudienceSize struct { + _ struct{} `type:"structure"` + + // Whether the audience size is defined in absolute terms or as a percentage. + // You can use the ABSOLUTE AudienceSize to configure out audience sizes using + // the count of identifiers in the output. You can use the Percentage AudienceSize + // to configure sizes in the range 1-100 percent. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"AudienceSizeType"` + + // Specify an audience size value. + // + // Value is a required field + Value *int64 `locationName:"value" min:"1" type:"integer" 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 AudienceSize) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceSize) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AudienceSize) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AudienceSize"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && *s.Value < 1 { + invalidParams.Add(request.NewErrParamMinValue("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetType sets the Type field's value. +func (s *AudienceSize) SetType(v string) *AudienceSize { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AudienceSize) SetValue(v int64) *AudienceSize { + s.Value = &v + return s +} + +// Configure the list of audience output sizes that can be created. A request +// to StartAudienceGenerationJob that uses this configured audience model must +// have an audienceSize selected from this list. You can use the ABSOLUTE AudienceSize +// to configure out audience sizes using the count of identifiers in the output. +// You can use the Percentage AudienceSize to configure sizes in the range 1-100 +// percent. +type AudienceSizeConfig struct { + _ struct{} `type:"structure"` + + // An array of the different audience output sizes. + // + // AudienceSizeBins is a required field + AudienceSizeBins []*int64 `locationName:"audienceSizeBins" min:"1" type:"list" required:"true"` + + // Whether the audience output sizes are defined as an absolute number or a + // percentage. + // + // AudienceSizeType is a required field + AudienceSizeType *string `locationName:"audienceSizeType" type:"string" required:"true" enum:"AudienceSizeType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceSizeConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudienceSizeConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AudienceSizeConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AudienceSizeConfig"} + if s.AudienceSizeBins == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceSizeBins")) + } + if s.AudienceSizeBins != nil && len(s.AudienceSizeBins) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AudienceSizeBins", 1)) + } + if s.AudienceSizeType == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceSizeType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceSizeBins sets the AudienceSizeBins field's value. +func (s *AudienceSizeConfig) SetAudienceSizeBins(v []*int64) *AudienceSizeConfig { + s.AudienceSizeBins = v + return s +} + +// SetAudienceSizeType sets the AudienceSizeType field's value. +func (s *AudienceSizeConfig) SetAudienceSizeType(v string) *AudienceSizeConfig { + s.AudienceSizeType = &v + return s +} + +// Metadata for a column. +type ColumnSchema struct { + _ struct{} `type:"structure"` + + // The name of a column. + // + // ColumnName is a required field + ColumnName *string `locationName:"columnName" min:"1" type:"string" required:"true"` + + // The data type of column. + // + // ColumnTypes is a required field + ColumnTypes []*string `locationName:"columnTypes" min:"1" type:"list" required:"true" enum:"ColumnType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnSchema) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnSchema) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ColumnSchema) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ColumnSchema"} + if s.ColumnName == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnName")) + } + if s.ColumnName != nil && len(*s.ColumnName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnName", 1)) + } + if s.ColumnTypes == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnTypes")) + } + if s.ColumnTypes != nil && len(s.ColumnTypes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnTypes", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumnName sets the ColumnName field's value. +func (s *ColumnSchema) SetColumnName(v string) *ColumnSchema { + s.ColumnName = &v + return s +} + +// SetColumnTypes sets the ColumnTypes field's value. +func (s *ColumnSchema) SetColumnTypes(v []*string) *ColumnSchema { + s.ColumnTypes = v + return s +} + +// Configuration information necessary for the configure audience model output. +type ConfiguredAudienceModelOutputConfig struct { + _ struct{} `type:"structure"` + + // Defines the Amazon S3 bucket where the configured audience is stored. + // + // Destination is a required field + Destination *AudienceDestination `locationName:"destination" type:"structure" required:"true"` + + // The ARN of the IAM role that can write the Amazon S3 bucket. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelOutputConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelOutputConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConfiguredAudienceModelOutputConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConfiguredAudienceModelOutputConfig"} + if s.Destination == nil { + invalidParams.Add(request.NewErrParamRequired("Destination")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + if s.Destination != nil { + if err := s.Destination.Validate(); err != nil { + invalidParams.AddNested("Destination", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestination sets the Destination field's value. +func (s *ConfiguredAudienceModelOutputConfig) SetDestination(v *AudienceDestination) *ConfiguredAudienceModelOutputConfig { + s.Destination = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ConfiguredAudienceModelOutputConfig) SetRoleArn(v string) *ConfiguredAudienceModelOutputConfig { + s.RoleArn = &v + return s +} + +// Information about the configured audience model. +type ConfiguredAudienceModelSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience model that was used to create + // the configured audience model. + // + // AudienceModelArn is a required field + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model that you + // are interested in. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the configured audience model was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the configured audience model. + Description *string `locationName:"description" type:"string"` + + // The name of the configured audience model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The output configuration of the configured audience model. + // + // OutputConfig is a required field + OutputConfig *ConfiguredAudienceModelOutputConfig `locationName:"outputConfig" type:"structure" required:"true"` + + // The status of the configured audience model. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ConfiguredAudienceModelStatus"` + + // The most recent time at which the configured audience model was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 ConfiguredAudienceModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfiguredAudienceModelSummary) GoString() string { + return s.String() +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *ConfiguredAudienceModelSummary) SetAudienceModelArn(v string) *ConfiguredAudienceModelSummary { + s.AudienceModelArn = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *ConfiguredAudienceModelSummary) SetConfiguredAudienceModelArn(v string) *ConfiguredAudienceModelSummary { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *ConfiguredAudienceModelSummary) SetCreateTime(v time.Time) *ConfiguredAudienceModelSummary { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ConfiguredAudienceModelSummary) SetDescription(v string) *ConfiguredAudienceModelSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *ConfiguredAudienceModelSummary) SetName(v string) *ConfiguredAudienceModelSummary { + s.Name = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *ConfiguredAudienceModelSummary) SetOutputConfig(v *ConfiguredAudienceModelOutputConfig) *ConfiguredAudienceModelSummary { + s.OutputConfig = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ConfiguredAudienceModelSummary) SetStatus(v string) *ConfiguredAudienceModelSummary { + s.Status = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *ConfiguredAudienceModelSummary) SetUpdateTime(v time.Time) *ConfiguredAudienceModelSummary { + s.UpdateTime = &v + return s +} + +// A resource with that name already exists in this region. +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 CreateAudienceModelInput struct { + _ struct{} `type:"structure"` + + // The description of the audience model. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of the KMS key. This key is used to encrypt + // and decrypt customer-owned data in the trained ML model and the associated + // data. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // The name of the audience model resource. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The optional metadata that you apply to the resource to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The end date and time of the training window. + TrainingDataEndTime *time.Time `locationName:"trainingDataEndTime" type:"timestamp" timestampFormat:"iso8601"` + + // The start date and time of the training window. + TrainingDataStartTime *time.Time `locationName:"trainingDataStartTime" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon Resource Name (ARN) of the training dataset for this audience + // model. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAudienceModelInput"} + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TrainingDatasetArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrainingDatasetArn")) + } + if s.TrainingDatasetArn != nil && len(*s.TrainingDatasetArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TrainingDatasetArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateAudienceModelInput) SetDescription(v string) *CreateAudienceModelInput { + s.Description = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *CreateAudienceModelInput) SetKmsKeyArn(v string) *CreateAudienceModelInput { + s.KmsKeyArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAudienceModelInput) SetName(v string) *CreateAudienceModelInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAudienceModelInput) SetTags(v map[string]*string) *CreateAudienceModelInput { + s.Tags = v + return s +} + +// SetTrainingDataEndTime sets the TrainingDataEndTime field's value. +func (s *CreateAudienceModelInput) SetTrainingDataEndTime(v time.Time) *CreateAudienceModelInput { + s.TrainingDataEndTime = &v + return s +} + +// SetTrainingDataStartTime sets the TrainingDataStartTime field's value. +func (s *CreateAudienceModelInput) SetTrainingDataStartTime(v time.Time) *CreateAudienceModelInput { + s.TrainingDataStartTime = &v + return s +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *CreateAudienceModelInput) SetTrainingDatasetArn(v string) *CreateAudienceModelInput { + s.TrainingDatasetArn = &v + return s +} + +type CreateAudienceModelOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience model. + // + // AudienceModelArn is a required field + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAudienceModelOutput) GoString() string { + return s.String() +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *CreateAudienceModelOutput) SetAudienceModelArn(v string) *CreateAudienceModelOutput { + s.AudienceModelArn = &v + return s +} + +type CreateConfiguredAudienceModelInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience model to use for the configured + // audience model. + // + // AudienceModelArn is a required field + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string" required:"true"` + + // Configure the list of output sizes of audiences that can be created using + // this configured audience model. A request to StartAudienceGenerationJob that + // uses this configured audience model must have an audienceSize selected from + // this list. You can use the ABSOLUTE AudienceSize to configure out audience + // sizes using the count of identifiers in the output. You can use the Percentage + // AudienceSize to configure sizes in the range 1-100 percent. + AudienceSizeConfig *AudienceSizeConfig `locationName:"audienceSizeConfig" type:"structure"` + + // Configure how the service tags audience generation jobs created using this + // configured audience model. If you specify NONE, the tags from the StartAudienceGenerationJob + // request determine the tags of the audience generation job. If you specify + // FROM_PARENT_RESOURCE, the audience generation job inherits the tags from + // the configured audience model, by default. Tags in the StartAudienceGenerationJob + // will override the default. + // + // When the client is in a different account than the configured audience model, + // the tags from the client are never applied to a resource in the caller's + // account. + ChildResourceTagOnCreatePolicy *string `locationName:"childResourceTagOnCreatePolicy" type:"string" enum:"TagOnCreatePolicy"` + + // The description of the configured audience model. + Description *string `locationName:"description" type:"string"` + + // The minimum number of users from the seed audience that must match with users + // in the training data of the audience model. + MinMatchingSeedSize *int64 `locationName:"minMatchingSeedSize" min:"25" type:"integer"` + + // The name of the configured audience model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Configure the Amazon S3 location and IAM Role for audiences created using + // this configured audience model. Each audience will have a unique location. + // The IAM Role must have s3:PutObject permission on the destination Amazon + // S3 location. If the destination is protected with Amazon S3 KMS-SSE, then + // the Role must also have the required KMS permissions. + // + // OutputConfig is a required field + OutputConfig *ConfiguredAudienceModelOutputConfig `locationName:"outputConfig" type:"structure" required:"true"` + + // Whether audience metrics are shared. + // + // SharedAudienceMetrics is a required field + SharedAudienceMetrics []*string `locationName:"sharedAudienceMetrics" min:"1" type:"list" required:"true" enum:"SharedAudienceMetrics"` + + // The optional metadata that you apply to the resource to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateConfiguredAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateConfiguredAudienceModelInput"} + if s.AudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceModelArn")) + } + if s.AudienceModelArn != nil && len(*s.AudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceModelArn", 20)) + } + if s.MinMatchingSeedSize != nil && *s.MinMatchingSeedSize < 25 { + invalidParams.Add(request.NewErrParamMinValue("MinMatchingSeedSize", 25)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OutputConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputConfig")) + } + if s.SharedAudienceMetrics == nil { + invalidParams.Add(request.NewErrParamRequired("SharedAudienceMetrics")) + } + if s.SharedAudienceMetrics != nil && len(s.SharedAudienceMetrics) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SharedAudienceMetrics", 1)) + } + if s.AudienceSizeConfig != nil { + if err := s.AudienceSizeConfig.Validate(); err != nil { + invalidParams.AddNested("AudienceSizeConfig", err.(request.ErrInvalidParams)) + } + } + if s.OutputConfig != nil { + if err := s.OutputConfig.Validate(); err != nil { + invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *CreateConfiguredAudienceModelInput) SetAudienceModelArn(v string) *CreateConfiguredAudienceModelInput { + s.AudienceModelArn = &v + return s +} + +// SetAudienceSizeConfig sets the AudienceSizeConfig field's value. +func (s *CreateConfiguredAudienceModelInput) SetAudienceSizeConfig(v *AudienceSizeConfig) *CreateConfiguredAudienceModelInput { + s.AudienceSizeConfig = v + return s +} + +// SetChildResourceTagOnCreatePolicy sets the ChildResourceTagOnCreatePolicy field's value. +func (s *CreateConfiguredAudienceModelInput) SetChildResourceTagOnCreatePolicy(v string) *CreateConfiguredAudienceModelInput { + s.ChildResourceTagOnCreatePolicy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateConfiguredAudienceModelInput) SetDescription(v string) *CreateConfiguredAudienceModelInput { + s.Description = &v + return s +} + +// SetMinMatchingSeedSize sets the MinMatchingSeedSize field's value. +func (s *CreateConfiguredAudienceModelInput) SetMinMatchingSeedSize(v int64) *CreateConfiguredAudienceModelInput { + s.MinMatchingSeedSize = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateConfiguredAudienceModelInput) SetName(v string) *CreateConfiguredAudienceModelInput { + s.Name = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *CreateConfiguredAudienceModelInput) SetOutputConfig(v *ConfiguredAudienceModelOutputConfig) *CreateConfiguredAudienceModelInput { + s.OutputConfig = v + return s +} + +// SetSharedAudienceMetrics sets the SharedAudienceMetrics field's value. +func (s *CreateConfiguredAudienceModelInput) SetSharedAudienceMetrics(v []*string) *CreateConfiguredAudienceModelInput { + s.SharedAudienceMetrics = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateConfiguredAudienceModelInput) SetTags(v map[string]*string) *CreateConfiguredAudienceModelInput { + s.Tags = v + return s +} + +type CreateConfiguredAudienceModelOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfiguredAudienceModelOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *CreateConfiguredAudienceModelOutput) SetConfiguredAudienceModelArn(v string) *CreateConfiguredAudienceModelOutput { + s.ConfiguredAudienceModelArn = &v + return s +} + +type CreateTrainingDatasetInput struct { + _ struct{} `type:"structure"` + + // The description of the training dataset. + Description *string `locationName:"description" type:"string"` + + // The name of the training dataset. This name must be unique in your account + // and region. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the IAM role that Clean Rooms ML can assume to read the data referred + // to in the dataSource field of each dataset. + // + // Passing a role across AWS accounts is not allowed. If you pass a role that + // isn't in your account, you get an AccessDeniedException error. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` + + // The optional metadata that you apply to the resource to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Clean Rooms ML + // considers it to be a user tag and will count against the limit of 50 tags. + // Tags with only the key prefix of aws do not count against your tags per + // resource limit. + Tags map[string]*string `locationName:"tags" type:"map"` + + // An array of information that lists the Dataset objects, which specifies the + // dataset type and details on its location and schema. You must provide a role + // that has read access to these tables. + // + // TrainingData is a required field + TrainingData []*Dataset `locationName:"trainingData" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrainingDatasetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrainingDatasetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTrainingDatasetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTrainingDatasetInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + if s.TrainingData == nil { + invalidParams.Add(request.NewErrParamRequired("TrainingData")) + } + if s.TrainingData != nil && len(s.TrainingData) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TrainingData", 1)) + } + if s.TrainingData != nil { + for i, v := range s.TrainingData { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TrainingData", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateTrainingDatasetInput) SetDescription(v string) *CreateTrainingDatasetInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTrainingDatasetInput) SetName(v string) *CreateTrainingDatasetInput { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateTrainingDatasetInput) SetRoleArn(v string) *CreateTrainingDatasetInput { + s.RoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTrainingDatasetInput) SetTags(v map[string]*string) *CreateTrainingDatasetInput { + s.Tags = v + return s +} + +// SetTrainingData sets the TrainingData field's value. +func (s *CreateTrainingDatasetInput) SetTrainingData(v []*Dataset) *CreateTrainingDatasetInput { + s.TrainingData = v + return s +} + +type CreateTrainingDatasetOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the training dataset resource. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrainingDatasetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrainingDatasetOutput) GoString() string { + return s.String() +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *CreateTrainingDatasetOutput) SetTrainingDatasetArn(v string) *CreateTrainingDatasetOutput { + s.TrainingDatasetArn = &v + return s +} + +// Defines information about the Glue data source that contains the training +// data. +type DataSource struct { + _ struct{} `type:"structure"` + + // A GlueDataSource object that defines the catalog ID, database name, and table + // name for the training data. + // + // GlueDataSource is a required field + GlueDataSource *GlueDataSource `locationName:"glueDataSource" 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 DataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSource"} + if s.GlueDataSource == nil { + invalidParams.Add(request.NewErrParamRequired("GlueDataSource")) + } + if s.GlueDataSource != nil { + if err := s.GlueDataSource.Validate(); err != nil { + invalidParams.AddNested("GlueDataSource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGlueDataSource sets the GlueDataSource field's value. +func (s *DataSource) SetGlueDataSource(v *GlueDataSource) *DataSource { + s.GlueDataSource = v + return s +} + +// Defines where the training dataset is located, what type of data it contains, +// and how to access the data. +type Dataset struct { + _ struct{} `type:"structure"` + + // A DatasetInputConfig object that defines the data source and schema mapping. + // + // InputConfig is a required field + InputConfig *DatasetInputConfig `locationName:"inputConfig" type:"structure" required:"true"` + + // What type of information is found in the dataset. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DatasetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Dataset) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Dataset) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Dataset) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Dataset"} + if s.InputConfig == nil { + invalidParams.Add(request.NewErrParamRequired("InputConfig")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.InputConfig != nil { + if err := s.InputConfig.Validate(); err != nil { + invalidParams.AddNested("InputConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInputConfig sets the InputConfig field's value. +func (s *Dataset) SetInputConfig(v *DatasetInputConfig) *Dataset { + s.InputConfig = v + return s +} + +// SetType sets the Type field's value. +func (s *Dataset) SetType(v string) *Dataset { + s.Type = &v + return s +} + +// Defines the Glue data source and schema mapping information. +type DatasetInputConfig struct { + _ struct{} `type:"structure"` + + // A DataSource object that specifies the Glue data source for the training + // data. + // + // DataSource is a required field + DataSource *DataSource `locationName:"dataSource" type:"structure" required:"true"` + + // The schema information for the training data. + // + // Schema is a required field + Schema []*ColumnSchema `locationName:"schema" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatasetInputConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatasetInputConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DatasetInputConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DatasetInputConfig"} + if s.DataSource == nil { + invalidParams.Add(request.NewErrParamRequired("DataSource")) + } + if s.Schema == nil { + invalidParams.Add(request.NewErrParamRequired("Schema")) + } + if s.Schema != nil && len(s.Schema) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Schema", 1)) + } + if s.DataSource != nil { + if err := s.DataSource.Validate(); err != nil { + invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams)) + } + } + if s.Schema != nil { + for i, v := range s.Schema { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Schema", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSource sets the DataSource field's value. +func (s *DatasetInputConfig) SetDataSource(v *DataSource) *DatasetInputConfig { + s.DataSource = v + return s +} + +// SetSchema sets the Schema field's value. +func (s *DatasetInputConfig) SetSchema(v []*ColumnSchema) *DatasetInputConfig { + s.Schema = v + return s +} + +type DeleteAudienceGenerationJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the audience generation job that you want + // to delete. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `location:"uri" locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAudienceGenerationJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAudienceGenerationJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAudienceGenerationJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAudienceGenerationJobInput"} + if s.AudienceGenerationJobArn == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceGenerationJobArn")) + } + if s.AudienceGenerationJobArn != nil && len(*s.AudienceGenerationJobArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceGenerationJobArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *DeleteAudienceGenerationJobInput) SetAudienceGenerationJobArn(v string) *DeleteAudienceGenerationJobInput { + s.AudienceGenerationJobArn = &v + return s +} + +type DeleteAudienceGenerationJobOutput 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 DeleteAudienceGenerationJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAudienceGenerationJobOutput) GoString() string { + return s.String() +} + +type DeleteAudienceModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the audience model that you want to delete. + // + // AudienceModelArn is a required field + AudienceModelArn *string `location:"uri" locationName:"audienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAudienceModelInput"} + if s.AudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceModelArn")) + } + if s.AudienceModelArn != nil && len(*s.AudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *DeleteAudienceModelInput) SetAudienceModelArn(v string) *DeleteAudienceModelInput { + s.AudienceModelArn = &v + return s +} + +type DeleteAudienceModelOutput 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 DeleteAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAudienceModelOutput) GoString() string { + return s.String() +} + +type DeleteConfiguredAudienceModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model that you + // want to delete. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `location:"uri" locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConfiguredAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConfiguredAudienceModelInput"} + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *DeleteConfiguredAudienceModelInput) SetConfiguredAudienceModelArn(v string) *DeleteConfiguredAudienceModelInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +type DeleteConfiguredAudienceModelOutput 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 DeleteConfiguredAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelOutput) GoString() string { + return s.String() +} + +type DeleteConfiguredAudienceModelPolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model policy that + // you want to delete. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `location:"uri" locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConfiguredAudienceModelPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConfiguredAudienceModelPolicyInput"} + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *DeleteConfiguredAudienceModelPolicyInput) SetConfiguredAudienceModelArn(v string) *DeleteConfiguredAudienceModelPolicyInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +type DeleteConfiguredAudienceModelPolicyOutput 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 DeleteConfiguredAudienceModelPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfiguredAudienceModelPolicyOutput) GoString() string { + return s.String() +} + +type DeleteTrainingDatasetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the training dataset that you want to delete. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `location:"uri" locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrainingDatasetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrainingDatasetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTrainingDatasetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTrainingDatasetInput"} + if s.TrainingDatasetArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrainingDatasetArn")) + } + if s.TrainingDatasetArn != nil && len(*s.TrainingDatasetArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TrainingDatasetArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *DeleteTrainingDatasetInput) SetTrainingDatasetArn(v string) *DeleteTrainingDatasetInput { + s.TrainingDatasetArn = &v + return s +} + +type DeleteTrainingDatasetOutput 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 DeleteTrainingDatasetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrainingDatasetOutput) GoString() string { + return s.String() +} + +type GetAudienceGenerationJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the audience generation job that you are + // interested in. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `location:"uri" locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAudienceGenerationJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAudienceGenerationJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAudienceGenerationJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAudienceGenerationJobInput"} + if s.AudienceGenerationJobArn == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceGenerationJobArn")) + } + if s.AudienceGenerationJobArn != nil && len(*s.AudienceGenerationJobArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceGenerationJobArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *GetAudienceGenerationJobInput) SetAudienceGenerationJobArn(v string) *GetAudienceGenerationJobInput { + s.AudienceGenerationJobArn = &v + return s +} + +type GetAudienceGenerationJobOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience generation job. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` + + // The identifier of the collaboration that this audience generation job is + // associated with. + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string"` + + // The Amazon Resource Name (ARN) of the configured audience model used for + // this audience generation job. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the audience generation job was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the audience generation job. + Description *string `locationName:"description" type:"string"` + + // Configure whether the seed users are included in the output audience. By + // default, Clean Rooms ML removes seed users from the output audience. If you + // specify TRUE, the seed users will appear first in the output. Clean Rooms + // ML does not explicitly reveal whether a user was in the seed, but the recipient + // of the audience will know that the first minimumSeedSize count of users are + // from the seed. + IncludeSeedInOutput *bool `locationName:"includeSeedInOutput" type:"boolean"` + + // The relevance scores for different audience sizes. + Metrics *AudienceQualityMetrics `locationName:"metrics" type:"structure"` + + // The name of the audience generation job. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The seed audience that was used for this audience generation job. This field + // will be null if the account calling the API is the account that started this + // audience generation job. + SeedAudience *AudienceGenerationJobDataSource `locationName:"seedAudience" type:"structure"` + + // The AWS account that started this audience generation job. + StartedBy *string `locationName:"startedBy" min:"12" type:"string"` + + // The status of the audience generation job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AudienceGenerationJobStatus"` + + // Details about the status of the audience generation job. + StatusDetails *StatusDetails `locationName:"statusDetails" type:"structure"` + + // The tags that are associated to this audience generation job. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The most recent time at which the audience generation job was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 GetAudienceGenerationJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAudienceGenerationJobOutput) GoString() string { + return s.String() +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *GetAudienceGenerationJobOutput) SetAudienceGenerationJobArn(v string) *GetAudienceGenerationJobOutput { + s.AudienceGenerationJobArn = &v + return s +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *GetAudienceGenerationJobOutput) SetCollaborationId(v string) *GetAudienceGenerationJobOutput { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *GetAudienceGenerationJobOutput) SetConfiguredAudienceModelArn(v string) *GetAudienceGenerationJobOutput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *GetAudienceGenerationJobOutput) SetCreateTime(v time.Time) *GetAudienceGenerationJobOutput { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetAudienceGenerationJobOutput) SetDescription(v string) *GetAudienceGenerationJobOutput { + s.Description = &v + return s +} + +// SetIncludeSeedInOutput sets the IncludeSeedInOutput field's value. +func (s *GetAudienceGenerationJobOutput) SetIncludeSeedInOutput(v bool) *GetAudienceGenerationJobOutput { + s.IncludeSeedInOutput = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *GetAudienceGenerationJobOutput) SetMetrics(v *AudienceQualityMetrics) *GetAudienceGenerationJobOutput { + s.Metrics = v + return s +} + +// SetName sets the Name field's value. +func (s *GetAudienceGenerationJobOutput) SetName(v string) *GetAudienceGenerationJobOutput { + s.Name = &v + return s +} + +// SetSeedAudience sets the SeedAudience field's value. +func (s *GetAudienceGenerationJobOutput) SetSeedAudience(v *AudienceGenerationJobDataSource) *GetAudienceGenerationJobOutput { + s.SeedAudience = v + return s +} + +// SetStartedBy sets the StartedBy field's value. +func (s *GetAudienceGenerationJobOutput) SetStartedBy(v string) *GetAudienceGenerationJobOutput { + s.StartedBy = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetAudienceGenerationJobOutput) SetStatus(v string) *GetAudienceGenerationJobOutput { + s.Status = &v + return s +} + +// SetStatusDetails sets the StatusDetails field's value. +func (s *GetAudienceGenerationJobOutput) SetStatusDetails(v *StatusDetails) *GetAudienceGenerationJobOutput { + s.StatusDetails = v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetAudienceGenerationJobOutput) SetTags(v map[string]*string) *GetAudienceGenerationJobOutput { + s.Tags = v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *GetAudienceGenerationJobOutput) SetUpdateTime(v time.Time) *GetAudienceGenerationJobOutput { + s.UpdateTime = &v + return s +} + +type GetAudienceModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the audience model that you are interested + // in. + // + // AudienceModelArn is a required field + AudienceModelArn *string `location:"uri" locationName:"audienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAudienceModelInput"} + if s.AudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceModelArn")) + } + if s.AudienceModelArn != nil && len(*s.AudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *GetAudienceModelInput) SetAudienceModelArn(v string) *GetAudienceModelInput { + s.AudienceModelArn = &v + return s +} + +type GetAudienceModelOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience model. + // + // AudienceModelArn is a required field + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the audience model was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the audience model. + Description *string `locationName:"description" type:"string"` + + // The KMS key ARN used for the audience model. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // Accuracy metrics for the model. + Metrics []*AudienceModelMetric `locationName:"metrics" type:"list"` + + // The name of the audience model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The status of the audience model. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AudienceModelStatus"` + + // Details about the status of the audience model. + StatusDetails *StatusDetails `locationName:"statusDetails" type:"structure"` + + // The tags that are assigned to the audience model. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The end date specified for the training window. + TrainingDataEndTime *time.Time `locationName:"trainingDataEndTime" type:"timestamp" timestampFormat:"iso8601"` + + // The start date specified for the training window. + TrainingDataStartTime *time.Time `locationName:"trainingDataStartTime" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon Resource Name (ARN) of the training dataset that was used for + // this audience model. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` + + // The most recent time at which the audience model was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 GetAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAudienceModelOutput) GoString() string { + return s.String() +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *GetAudienceModelOutput) SetAudienceModelArn(v string) *GetAudienceModelOutput { + s.AudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *GetAudienceModelOutput) SetCreateTime(v time.Time) *GetAudienceModelOutput { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetAudienceModelOutput) SetDescription(v string) *GetAudienceModelOutput { + s.Description = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *GetAudienceModelOutput) SetKmsKeyArn(v string) *GetAudienceModelOutput { + s.KmsKeyArn = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *GetAudienceModelOutput) SetMetrics(v []*AudienceModelMetric) *GetAudienceModelOutput { + s.Metrics = v + return s +} + +// SetName sets the Name field's value. +func (s *GetAudienceModelOutput) SetName(v string) *GetAudienceModelOutput { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetAudienceModelOutput) SetStatus(v string) *GetAudienceModelOutput { + s.Status = &v + return s +} + +// SetStatusDetails sets the StatusDetails field's value. +func (s *GetAudienceModelOutput) SetStatusDetails(v *StatusDetails) *GetAudienceModelOutput { + s.StatusDetails = v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetAudienceModelOutput) SetTags(v map[string]*string) *GetAudienceModelOutput { + s.Tags = v + return s +} + +// SetTrainingDataEndTime sets the TrainingDataEndTime field's value. +func (s *GetAudienceModelOutput) SetTrainingDataEndTime(v time.Time) *GetAudienceModelOutput { + s.TrainingDataEndTime = &v + return s +} + +// SetTrainingDataStartTime sets the TrainingDataStartTime field's value. +func (s *GetAudienceModelOutput) SetTrainingDataStartTime(v time.Time) *GetAudienceModelOutput { + s.TrainingDataStartTime = &v + return s +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *GetAudienceModelOutput) SetTrainingDatasetArn(v string) *GetAudienceModelOutput { + s.TrainingDatasetArn = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *GetAudienceModelOutput) SetUpdateTime(v time.Time) *GetAudienceModelOutput { + s.UpdateTime = &v + return s +} + +type GetConfiguredAudienceModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model that you + // are interested in. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `location:"uri" locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfiguredAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfiguredAudienceModelInput"} + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *GetConfiguredAudienceModelInput) SetConfiguredAudienceModelArn(v string) *GetConfiguredAudienceModelInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +type GetConfiguredAudienceModelOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience model used for this configured + // audience model. + // + // AudienceModelArn is a required field + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string" required:"true"` + + // The list of output sizes of audiences that can be created using this configured + // audience model. A request to StartAudienceGenerationJob that uses this configured + // audience model must have an audienceSize selected from this list. You can + // use the ABSOLUTE AudienceSize to configure out audience sizes using the count + // of identifiers in the output. You can use the Percentage AudienceSize to + // configure sizes in the range 1-100 percent. + AudienceSizeConfig *AudienceSizeConfig `locationName:"audienceSizeConfig" type:"structure"` + + // Provides the childResourceTagOnCreatePolicy that was used for this configured + // audience model. + ChildResourceTagOnCreatePolicy *string `locationName:"childResourceTagOnCreatePolicy" type:"string" enum:"TagOnCreatePolicy"` + + // The Amazon Resource Name (ARN) of the configured audience model. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The time at which the configured audience model was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the configured audience model. + Description *string `locationName:"description" type:"string"` + + // The minimum number of users from the seed audience that must match with users + // in the training data of the audience model. + MinMatchingSeedSize *int64 `locationName:"minMatchingSeedSize" min:"25" type:"integer"` + + // The name of the configured audience model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The output configuration of the configured audience model + // + // OutputConfig is a required field + OutputConfig *ConfiguredAudienceModelOutputConfig `locationName:"outputConfig" type:"structure" required:"true"` + + // Whether audience metrics are shared. + // + // SharedAudienceMetrics is a required field + SharedAudienceMetrics []*string `locationName:"sharedAudienceMetrics" min:"1" type:"list" required:"true" enum:"SharedAudienceMetrics"` + + // The status of the configured audience model. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ConfiguredAudienceModelStatus"` + + // The tags that are associated to this configured audience model. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The most recent time at which the configured audience model was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 GetConfiguredAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelOutput) GoString() string { + return s.String() +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *GetConfiguredAudienceModelOutput) SetAudienceModelArn(v string) *GetConfiguredAudienceModelOutput { + s.AudienceModelArn = &v + return s +} + +// SetAudienceSizeConfig sets the AudienceSizeConfig field's value. +func (s *GetConfiguredAudienceModelOutput) SetAudienceSizeConfig(v *AudienceSizeConfig) *GetConfiguredAudienceModelOutput { + s.AudienceSizeConfig = v + return s +} + +// SetChildResourceTagOnCreatePolicy sets the ChildResourceTagOnCreatePolicy field's value. +func (s *GetConfiguredAudienceModelOutput) SetChildResourceTagOnCreatePolicy(v string) *GetConfiguredAudienceModelOutput { + s.ChildResourceTagOnCreatePolicy = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *GetConfiguredAudienceModelOutput) SetConfiguredAudienceModelArn(v string) *GetConfiguredAudienceModelOutput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *GetConfiguredAudienceModelOutput) SetCreateTime(v time.Time) *GetConfiguredAudienceModelOutput { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetConfiguredAudienceModelOutput) SetDescription(v string) *GetConfiguredAudienceModelOutput { + s.Description = &v + return s +} + +// SetMinMatchingSeedSize sets the MinMatchingSeedSize field's value. +func (s *GetConfiguredAudienceModelOutput) SetMinMatchingSeedSize(v int64) *GetConfiguredAudienceModelOutput { + s.MinMatchingSeedSize = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetConfiguredAudienceModelOutput) SetName(v string) *GetConfiguredAudienceModelOutput { + s.Name = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *GetConfiguredAudienceModelOutput) SetOutputConfig(v *ConfiguredAudienceModelOutputConfig) *GetConfiguredAudienceModelOutput { + s.OutputConfig = v + return s +} + +// SetSharedAudienceMetrics sets the SharedAudienceMetrics field's value. +func (s *GetConfiguredAudienceModelOutput) SetSharedAudienceMetrics(v []*string) *GetConfiguredAudienceModelOutput { + s.SharedAudienceMetrics = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetConfiguredAudienceModelOutput) SetStatus(v string) *GetConfiguredAudienceModelOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetConfiguredAudienceModelOutput) SetTags(v map[string]*string) *GetConfiguredAudienceModelOutput { + s.Tags = v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *GetConfiguredAudienceModelOutput) SetUpdateTime(v time.Time) *GetConfiguredAudienceModelOutput { + s.UpdateTime = &v + return s +} + +type GetConfiguredAudienceModelPolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the configured audience model that you + // are interested in. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `location:"uri" locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfiguredAudienceModelPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfiguredAudienceModelPolicyInput"} + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *GetConfiguredAudienceModelPolicyInput) SetConfiguredAudienceModelArn(v string) *GetConfiguredAudienceModelPolicyInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +type GetConfiguredAudienceModelPolicyOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The configured audience model policy. This is a JSON IAM resource policy. + // + // ConfiguredAudienceModelPolicy is a required field + ConfiguredAudienceModelPolicy *string `locationName:"configuredAudienceModelPolicy" min:"1" type:"string" required:"true"` + + // A cryptographic hash of the contents of the policy used to prevent unexpected + // concurrent modification of the policy. + // + // PolicyHash is a required field + PolicyHash *string `locationName:"policyHash" min:"64" 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 GetConfiguredAudienceModelPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfiguredAudienceModelPolicyOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *GetConfiguredAudienceModelPolicyOutput) SetConfiguredAudienceModelArn(v string) *GetConfiguredAudienceModelPolicyOutput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetConfiguredAudienceModelPolicy sets the ConfiguredAudienceModelPolicy field's value. +func (s *GetConfiguredAudienceModelPolicyOutput) SetConfiguredAudienceModelPolicy(v string) *GetConfiguredAudienceModelPolicyOutput { + s.ConfiguredAudienceModelPolicy = &v + return s +} + +// SetPolicyHash sets the PolicyHash field's value. +func (s *GetConfiguredAudienceModelPolicyOutput) SetPolicyHash(v string) *GetConfiguredAudienceModelPolicyOutput { + s.PolicyHash = &v + return s +} + +type GetTrainingDatasetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the training dataset that you are interested + // in. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `location:"uri" locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrainingDatasetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrainingDatasetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTrainingDatasetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTrainingDatasetInput"} + if s.TrainingDatasetArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrainingDatasetArn")) + } + if s.TrainingDatasetArn != nil && len(*s.TrainingDatasetArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TrainingDatasetArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *GetTrainingDatasetInput) SetTrainingDatasetArn(v string) *GetTrainingDatasetInput { + s.TrainingDatasetArn = &v + return s +} + +type GetTrainingDatasetOutput struct { + _ struct{} `type:"structure"` + + // The time at which the training dataset was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the training dataset. + Description *string `locationName:"description" type:"string"` + + // The name of the training dataset. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The IAM role used to read the training data. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` + + // The status of the training dataset. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TrainingDatasetStatus"` + + // The tags that are assigned to this training dataset. + Tags map[string]*string `locationName:"tags" type:"map"` + + // Metadata about the requested training data. + // + // TrainingData is a required field + TrainingData []*Dataset `locationName:"trainingData" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the training dataset. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` + + // The most recent time at which the training dataset was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 GetTrainingDatasetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrainingDatasetOutput) GoString() string { + return s.String() +} + +// SetCreateTime sets the CreateTime field's value. +func (s *GetTrainingDatasetOutput) SetCreateTime(v time.Time) *GetTrainingDatasetOutput { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetTrainingDatasetOutput) SetDescription(v string) *GetTrainingDatasetOutput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetTrainingDatasetOutput) SetName(v string) *GetTrainingDatasetOutput { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *GetTrainingDatasetOutput) SetRoleArn(v string) *GetTrainingDatasetOutput { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetTrainingDatasetOutput) SetStatus(v string) *GetTrainingDatasetOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetTrainingDatasetOutput) SetTags(v map[string]*string) *GetTrainingDatasetOutput { + s.Tags = v + return s +} + +// SetTrainingData sets the TrainingData field's value. +func (s *GetTrainingDatasetOutput) SetTrainingData(v []*Dataset) *GetTrainingDatasetOutput { + s.TrainingData = v + return s +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *GetTrainingDatasetOutput) SetTrainingDatasetArn(v string) *GetTrainingDatasetOutput { + s.TrainingDatasetArn = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *GetTrainingDatasetOutput) SetUpdateTime(v time.Time) *GetTrainingDatasetOutput { + s.UpdateTime = &v + return s +} + +// Defines the Glue data source that contains the training data. +type GlueDataSource struct { + _ struct{} `type:"structure"` + + // The Glue catalog that contains the training data. + CatalogId *string `locationName:"catalogId" min:"12" type:"string"` + + // The Glue database that contains the training data. + // + // DatabaseName is a required field + DatabaseName *string `locationName:"databaseName" min:"1" type:"string" required:"true"` + + // The Glue table that contains the training data. + // + // TableName is a required field + TableName *string `locationName:"tableName" 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 GlueDataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GlueDataSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GlueDataSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GlueDataSource"} + if s.CatalogId != nil && len(*s.CatalogId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 12)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *GlueDataSource) SetCatalogId(v string) *GlueDataSource { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *GlueDataSource) SetDatabaseName(v string) *GlueDataSource { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *GlueDataSource) SetTableName(v string) *GlueDataSource { + s.TableName = &v + return s +} + +type ListAudienceExportJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the audience generation job that you are + // interested in. + AudienceGenerationJobArn *string `location:"querystring" locationName:"audienceGenerationJobArn" min:"20" type:"string"` + + // The maximum size of the results that is returned per call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceExportJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceExportJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAudienceExportJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAudienceExportJobsInput"} + if s.AudienceGenerationJobArn != nil && len(*s.AudienceGenerationJobArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceGenerationJobArn", 20)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *ListAudienceExportJobsInput) SetAudienceGenerationJobArn(v string) *ListAudienceExportJobsInput { + s.AudienceGenerationJobArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAudienceExportJobsInput) SetMaxResults(v int64) *ListAudienceExportJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAudienceExportJobsInput) SetNextToken(v string) *ListAudienceExportJobsInput { + s.NextToken = &v + return s +} + +type ListAudienceExportJobsOutput struct { + _ struct{} `type:"structure"` + + // The audience export jobs that match the request. + // + // AudienceExportJobs is a required field + AudienceExportJobs []*AudienceExportJobSummary `locationName:"audienceExportJobs" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceExportJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceExportJobsOutput) GoString() string { + return s.String() +} + +// SetAudienceExportJobs sets the AudienceExportJobs field's value. +func (s *ListAudienceExportJobsOutput) SetAudienceExportJobs(v []*AudienceExportJobSummary) *ListAudienceExportJobsOutput { + s.AudienceExportJobs = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAudienceExportJobsOutput) SetNextToken(v string) *ListAudienceExportJobsOutput { + s.NextToken = &v + return s +} + +type ListAudienceGenerationJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the collaboration that contains the audience generation + // jobs that you are interested in. + CollaborationId *string `location:"querystring" locationName:"collaborationId" min:"36" type:"string"` + + // The Amazon Resource Name (ARN) of the configured audience model that was + // used for the audience generation jobs that you are interested in. + ConfiguredAudienceModelArn *string `location:"querystring" locationName:"configuredAudienceModelArn" min:"20" type:"string"` + + // The maximum size of the results that is returned per call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceGenerationJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceGenerationJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAudienceGenerationJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAudienceGenerationJobsInput"} + if s.CollaborationId != nil && len(*s.CollaborationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationId", 36)) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *ListAudienceGenerationJobsInput) SetCollaborationId(v string) *ListAudienceGenerationJobsInput { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *ListAudienceGenerationJobsInput) SetConfiguredAudienceModelArn(v string) *ListAudienceGenerationJobsInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAudienceGenerationJobsInput) SetMaxResults(v int64) *ListAudienceGenerationJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAudienceGenerationJobsInput) SetNextToken(v string) *ListAudienceGenerationJobsInput { + s.NextToken = &v + return s +} + +type ListAudienceGenerationJobsOutput struct { + _ struct{} `type:"structure"` + + // The audience generation jobs that match the request. + // + // AudienceGenerationJobs is a required field + AudienceGenerationJobs []*AudienceGenerationJobSummary `locationName:"audienceGenerationJobs" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceGenerationJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceGenerationJobsOutput) GoString() string { + return s.String() +} + +// SetAudienceGenerationJobs sets the AudienceGenerationJobs field's value. +func (s *ListAudienceGenerationJobsOutput) SetAudienceGenerationJobs(v []*AudienceGenerationJobSummary) *ListAudienceGenerationJobsOutput { + s.AudienceGenerationJobs = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAudienceGenerationJobsOutput) SetNextToken(v string) *ListAudienceGenerationJobsOutput { + s.NextToken = &v + return s +} + +type ListAudienceModelsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum size of the results that is returned per call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceModelsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceModelsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAudienceModelsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAudienceModelsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAudienceModelsInput) SetMaxResults(v int64) *ListAudienceModelsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAudienceModelsInput) SetNextToken(v string) *ListAudienceModelsInput { + s.NextToken = &v + return s +} + +type ListAudienceModelsOutput struct { + _ struct{} `type:"structure"` + + // The audience models that match the request. + // + // AudienceModels is a required field + AudienceModels []*AudienceModelSummary `locationName:"audienceModels" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceModelsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAudienceModelsOutput) GoString() string { + return s.String() +} + +// SetAudienceModels sets the AudienceModels field's value. +func (s *ListAudienceModelsOutput) SetAudienceModels(v []*AudienceModelSummary) *ListAudienceModelsOutput { + s.AudienceModels = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAudienceModelsOutput) SetNextToken(v string) *ListAudienceModelsOutput { + s.NextToken = &v + return s +} + +type ListConfiguredAudienceModelsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum size of the results that is returned per call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConfiguredAudienceModelsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConfiguredAudienceModelsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConfiguredAudienceModelsInput) SetMaxResults(v int64) *ListConfiguredAudienceModelsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfiguredAudienceModelsInput) SetNextToken(v string) *ListConfiguredAudienceModelsInput { + s.NextToken = &v + return s +} + +type ListConfiguredAudienceModelsOutput struct { + _ struct{} `type:"structure"` + + // The configured audience models. + // + // ConfiguredAudienceModels is a required field + ConfiguredAudienceModels []*ConfiguredAudienceModelSummary `locationName:"configuredAudienceModels" type:"list" required:"true"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfiguredAudienceModelsOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModels sets the ConfiguredAudienceModels field's value. +func (s *ListConfiguredAudienceModelsOutput) SetConfiguredAudienceModels(v []*ConfiguredAudienceModelSummary) *ListConfiguredAudienceModelsOutput { + s.ConfiguredAudienceModels = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfiguredAudienceModelsOutput) SetNextToken(v string) *ListConfiguredAudienceModelsOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the resource that you are interested in. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + + 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"` + + // The tags that are associated with the resource. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListTrainingDatasetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum size of the results that is returned per call. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTrainingDatasetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTrainingDatasetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTrainingDatasetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTrainingDatasetsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTrainingDatasetsInput) SetMaxResults(v int64) *ListTrainingDatasetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTrainingDatasetsInput) SetNextToken(v string) *ListTrainingDatasetsInput { + s.NextToken = &v + return s +} + +type ListTrainingDatasetsOutput struct { + _ struct{} `type:"structure"` + + // The token value retrieved from a previous call to access the next page of + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The training datasets that match the request. + // + // TrainingDatasets is a required field + TrainingDatasets []*TrainingDatasetSummary `locationName:"trainingDatasets" 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 ListTrainingDatasetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTrainingDatasetsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTrainingDatasetsOutput) SetNextToken(v string) *ListTrainingDatasetsOutput { + s.NextToken = &v + return s +} + +// SetTrainingDatasets sets the TrainingDatasets field's value. +func (s *ListTrainingDatasetsOutput) SetTrainingDatasets(v []*TrainingDatasetSummary) *ListTrainingDatasetsOutput { + s.TrainingDatasets = v + return s +} + +type PutConfiguredAudienceModelPolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model that the + // resource policy will govern. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `location:"uri" locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The IAM resource policy. + // + // ConfiguredAudienceModelPolicy is a required field + ConfiguredAudienceModelPolicy *string `locationName:"configuredAudienceModelPolicy" min:"1" type:"string" required:"true"` + + // Use this to prevent unexpected concurrent modification of the policy. + PolicyExistenceCondition *string `locationName:"policyExistenceCondition" type:"string" enum:"PolicyExistenceCondition"` + + // A cryptographic hash of the contents of the policy used to prevent unexpected + // concurrent modification of the policy. + PreviousPolicyHash *string `locationName:"previousPolicyHash" min:"64" 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 PutConfiguredAudienceModelPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutConfiguredAudienceModelPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutConfiguredAudienceModelPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutConfiguredAudienceModelPolicyInput"} + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + if s.ConfiguredAudienceModelPolicy == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelPolicy")) + } + if s.ConfiguredAudienceModelPolicy != nil && len(*s.ConfiguredAudienceModelPolicy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelPolicy", 1)) + } + if s.PreviousPolicyHash != nil && len(*s.PreviousPolicyHash) < 64 { + invalidParams.Add(request.NewErrParamMinLen("PreviousPolicyHash", 64)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *PutConfiguredAudienceModelPolicyInput) SetConfiguredAudienceModelArn(v string) *PutConfiguredAudienceModelPolicyInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetConfiguredAudienceModelPolicy sets the ConfiguredAudienceModelPolicy field's value. +func (s *PutConfiguredAudienceModelPolicyInput) SetConfiguredAudienceModelPolicy(v string) *PutConfiguredAudienceModelPolicyInput { + s.ConfiguredAudienceModelPolicy = &v + return s +} + +// SetPolicyExistenceCondition sets the PolicyExistenceCondition field's value. +func (s *PutConfiguredAudienceModelPolicyInput) SetPolicyExistenceCondition(v string) *PutConfiguredAudienceModelPolicyInput { + s.PolicyExistenceCondition = &v + return s +} + +// SetPreviousPolicyHash sets the PreviousPolicyHash field's value. +func (s *PutConfiguredAudienceModelPolicyInput) SetPreviousPolicyHash(v string) *PutConfiguredAudienceModelPolicyInput { + s.PreviousPolicyHash = &v + return s +} + +type PutConfiguredAudienceModelPolicyOutput struct { + _ struct{} `type:"structure"` + + // The IAM resource policy. + // + // ConfiguredAudienceModelPolicy is a required field + ConfiguredAudienceModelPolicy *string `locationName:"configuredAudienceModelPolicy" min:"1" type:"string" required:"true"` + + // A cryptographic hash of the contents of the policy used to prevent unexpected + // concurrent modification of the policy. + // + // PolicyHash is a required field + PolicyHash *string `locationName:"policyHash" min:"64" 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 PutConfiguredAudienceModelPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutConfiguredAudienceModelPolicyOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelPolicy sets the ConfiguredAudienceModelPolicy field's value. +func (s *PutConfiguredAudienceModelPolicyOutput) SetConfiguredAudienceModelPolicy(v string) *PutConfiguredAudienceModelPolicyOutput { + s.ConfiguredAudienceModelPolicy = &v + return s +} + +// SetPolicyHash sets the PolicyHash field's value. +func (s *PutConfiguredAudienceModelPolicyOutput) SetPolicyHash(v string) *PutConfiguredAudienceModelPolicyOutput { + s.PolicyHash = &v + return s +} + +// The relevance score of a generated audience. +type RelevanceMetric struct { + _ struct{} `type:"structure"` + + // The size of the generated audience. Must match one of the sizes in the configured + // audience model. + // + // AudienceSize is a required field + AudienceSize *AudienceSize `locationName:"audienceSize" type:"structure" required:"true"` + + // The relevance score of the generated audience. + Score *float64 `locationName:"score" 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 RelevanceMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RelevanceMetric) GoString() string { + return s.String() +} + +// SetAudienceSize sets the AudienceSize field's value. +func (s *RelevanceMetric) SetAudienceSize(v *AudienceSize) *RelevanceMetric { + s.AudienceSize = v + return s +} + +// SetScore sets the Score field's value. +func (s *RelevanceMetric) SetScore(v float64) *RelevanceMetric { + s.Score = &v + return s +} + +// The resource you are requesting does not exist. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Provides information about an Amazon S3 bucket and path. +type S3ConfigMap struct { + _ struct{} `type:"structure"` + + // The Amazon S3 location URI. + // + // S3Uri is a required field + S3Uri *string `locationName:"s3Uri" 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 S3ConfigMap) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3ConfigMap) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3ConfigMap) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3ConfigMap"} + if s.S3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("S3Uri")) + } + if s.S3Uri != nil && len(*s.S3Uri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3Uri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Uri sets the S3Uri field's value. +func (s *S3ConfigMap) SetS3Uri(v string) *S3ConfigMap { + s.S3Uri = &v + return s +} + +// You have exceeded your service quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type StartAudienceExportJobInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience generation job that you want + // to export. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` + + // The size of the generated audience. Must match one of the sizes in the configured + // audience model. + // + // AudienceSize is a required field + AudienceSize *AudienceSize `locationName:"audienceSize" type:"structure" required:"true"` + + // The description of the audience export job. + Description *string `locationName:"description" type:"string"` + + // The name of the audience export job. + // + // Name is a required field + Name *string `locationName:"name" 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 StartAudienceExportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartAudienceExportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartAudienceExportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartAudienceExportJobInput"} + if s.AudienceGenerationJobArn == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceGenerationJobArn")) + } + if s.AudienceGenerationJobArn != nil && len(*s.AudienceGenerationJobArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceGenerationJobArn", 20)) + } + if s.AudienceSize == nil { + invalidParams.Add(request.NewErrParamRequired("AudienceSize")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.AudienceSize != nil { + if err := s.AudienceSize.Validate(); err != nil { + invalidParams.AddNested("AudienceSize", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *StartAudienceExportJobInput) SetAudienceGenerationJobArn(v string) *StartAudienceExportJobInput { + s.AudienceGenerationJobArn = &v + return s +} + +// SetAudienceSize sets the AudienceSize field's value. +func (s *StartAudienceExportJobInput) SetAudienceSize(v *AudienceSize) *StartAudienceExportJobInput { + s.AudienceSize = v + return s +} + +// SetDescription sets the Description field's value. +func (s *StartAudienceExportJobInput) SetDescription(v string) *StartAudienceExportJobInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *StartAudienceExportJobInput) SetName(v string) *StartAudienceExportJobInput { + s.Name = &v + return s +} + +type StartAudienceExportJobOutput 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 StartAudienceExportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartAudienceExportJobOutput) GoString() string { + return s.String() +} + +type StartAudienceGenerationJobInput struct { + _ struct{} `type:"structure"` + + // The identifier of the collaboration that contains the audience generation + // job. + CollaborationId *string `locationName:"collaborationId" min:"36" type:"string"` + + // The Amazon Resource Name (ARN) of the configured audience model that is used + // for this audience generation job. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The description of the audience generation job. + Description *string `locationName:"description" type:"string"` + + // Whether the seed audience is included in the audience generation output. + IncludeSeedInOutput *bool `locationName:"includeSeedInOutput" type:"boolean"` + + // The name of the audience generation job. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The seed audience that is used to generate the audience. + // + // SeedAudience is a required field + SeedAudience *AudienceGenerationJobDataSource `locationName:"seedAudience" type:"structure" required:"true"` + + // The optional metadata that you apply to the resource to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartAudienceGenerationJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartAudienceGenerationJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartAudienceGenerationJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartAudienceGenerationJobInput"} + if s.CollaborationId != nil && len(*s.CollaborationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("CollaborationId", 36)) + } + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SeedAudience == nil { + invalidParams.Add(request.NewErrParamRequired("SeedAudience")) + } + if s.SeedAudience != nil { + if err := s.SeedAudience.Validate(); err != nil { + invalidParams.AddNested("SeedAudience", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollaborationId sets the CollaborationId field's value. +func (s *StartAudienceGenerationJobInput) SetCollaborationId(v string) *StartAudienceGenerationJobInput { + s.CollaborationId = &v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *StartAudienceGenerationJobInput) SetConfiguredAudienceModelArn(v string) *StartAudienceGenerationJobInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *StartAudienceGenerationJobInput) SetDescription(v string) *StartAudienceGenerationJobInput { + s.Description = &v + return s +} + +// SetIncludeSeedInOutput sets the IncludeSeedInOutput field's value. +func (s *StartAudienceGenerationJobInput) SetIncludeSeedInOutput(v bool) *StartAudienceGenerationJobInput { + s.IncludeSeedInOutput = &v + return s +} + +// SetName sets the Name field's value. +func (s *StartAudienceGenerationJobInput) SetName(v string) *StartAudienceGenerationJobInput { + s.Name = &v + return s +} + +// SetSeedAudience sets the SeedAudience field's value. +func (s *StartAudienceGenerationJobInput) SetSeedAudience(v *AudienceGenerationJobDataSource) *StartAudienceGenerationJobInput { + s.SeedAudience = v + return s +} + +// SetTags sets the Tags field's value. +func (s *StartAudienceGenerationJobInput) SetTags(v map[string]*string) *StartAudienceGenerationJobInput { + s.Tags = v + return s +} + +type StartAudienceGenerationJobOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the audience generation job. + // + // AudienceGenerationJobArn is a required field + AudienceGenerationJobArn *string `locationName:"audienceGenerationJobArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartAudienceGenerationJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartAudienceGenerationJobOutput) GoString() string { + return s.String() +} + +// SetAudienceGenerationJobArn sets the AudienceGenerationJobArn field's value. +func (s *StartAudienceGenerationJobOutput) SetAudienceGenerationJobArn(v string) *StartAudienceGenerationJobOutput { + s.AudienceGenerationJobArn = &v + return s +} + +// Details about the status of a resource. +type StatusDetails struct { + _ struct{} `type:"structure"` + + // The error message that was returned. The message is intended for human consumption + // and can change at any time. Use the statusCode for programmatic error handling. + Message *string `locationName:"message" type:"string"` + + // The status code that was returned. The status code is intended for programmatic + // error handling. Clean Rooms ML will not change the status code for existing + // error conditions. + StatusCode *string `locationName:"statusCode" 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 StatusDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StatusDetails) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *StatusDetails) SetMessage(v string) *StatusDetails { + s.Message = &v + return s +} + +// SetStatusCode sets the StatusCode field's value. +func (s *StatusDetails) SetStatusCode(v string) *StatusDetails { + s.StatusCode = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that you want to assign tags. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // The optional metadata that you apply to the resource to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// Provides information about the training dataset. +type TrainingDatasetSummary struct { + _ struct{} `type:"structure"` + + // The time at which the training dataset was created. + // + // CreateTime is a required field + CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The description of the training dataset. + Description *string `locationName:"description" type:"string"` + + // The name of the training dataset. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The status of the training dataset. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TrainingDatasetStatus"` + + // The Amazon Resource Name (ARN) of the training dataset. + // + // TrainingDatasetArn is a required field + TrainingDatasetArn *string `locationName:"trainingDatasetArn" min:"20" type:"string" required:"true"` + + // The most recent time at which the training dataset was updated. + // + // UpdateTime is a required field + UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601" 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 TrainingDatasetSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrainingDatasetSummary) GoString() string { + return s.String() +} + +// SetCreateTime sets the CreateTime field's value. +func (s *TrainingDatasetSummary) SetCreateTime(v time.Time) *TrainingDatasetSummary { + s.CreateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *TrainingDatasetSummary) SetDescription(v string) *TrainingDatasetSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *TrainingDatasetSummary) SetName(v string) *TrainingDatasetSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *TrainingDatasetSummary) SetStatus(v string) *TrainingDatasetSummary { + s.Status = &v + return s +} + +// SetTrainingDatasetArn sets the TrainingDatasetArn field's value. +func (s *TrainingDatasetSummary) SetTrainingDatasetArn(v string) *TrainingDatasetSummary { + s.TrainingDatasetArn = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *TrainingDatasetSummary) SetUpdateTime(v time.Time) *TrainingDatasetSummary { + s.UpdateTime = &v + return s +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the resource that you want to remove tags + // from. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // The key values of tags that you want to remove. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + 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 UpdateConfiguredAudienceModelInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the new audience model that you want to + // use. + AudienceModelArn *string `locationName:"audienceModelArn" min:"20" type:"string"` + + // The new audience size configuration. + AudienceSizeConfig *AudienceSizeConfig `locationName:"audienceSizeConfig" type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model that you + // want to update. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `location:"uri" locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` + + // The new description of the configured audience model. + Description *string `locationName:"description" type:"string"` + + // The minimum number of users from the seed audience that must match with users + // in the training data of the audience model. + MinMatchingSeedSize *int64 `locationName:"minMatchingSeedSize" min:"25" type:"integer"` + + // The new output configuration. + OutputConfig *ConfiguredAudienceModelOutputConfig `locationName:"outputConfig" type:"structure"` + + // The new value for whether to share audience metrics. + SharedAudienceMetrics []*string `locationName:"sharedAudienceMetrics" min:"1" type:"list" enum:"SharedAudienceMetrics"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateConfiguredAudienceModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateConfiguredAudienceModelInput"} + if s.AudienceModelArn != nil && len(*s.AudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AudienceModelArn", 20)) + } + if s.ConfiguredAudienceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConfiguredAudienceModelArn")) + } + if s.ConfiguredAudienceModelArn != nil && len(*s.ConfiguredAudienceModelArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ConfiguredAudienceModelArn", 20)) + } + if s.MinMatchingSeedSize != nil && *s.MinMatchingSeedSize < 25 { + invalidParams.Add(request.NewErrParamMinValue("MinMatchingSeedSize", 25)) + } + if s.SharedAudienceMetrics != nil && len(s.SharedAudienceMetrics) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SharedAudienceMetrics", 1)) + } + if s.AudienceSizeConfig != nil { + if err := s.AudienceSizeConfig.Validate(); err != nil { + invalidParams.AddNested("AudienceSizeConfig", err.(request.ErrInvalidParams)) + } + } + if s.OutputConfig != nil { + if err := s.OutputConfig.Validate(); err != nil { + invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAudienceModelArn sets the AudienceModelArn field's value. +func (s *UpdateConfiguredAudienceModelInput) SetAudienceModelArn(v string) *UpdateConfiguredAudienceModelInput { + s.AudienceModelArn = &v + return s +} + +// SetAudienceSizeConfig sets the AudienceSizeConfig field's value. +func (s *UpdateConfiguredAudienceModelInput) SetAudienceSizeConfig(v *AudienceSizeConfig) *UpdateConfiguredAudienceModelInput { + s.AudienceSizeConfig = v + return s +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *UpdateConfiguredAudienceModelInput) SetConfiguredAudienceModelArn(v string) *UpdateConfiguredAudienceModelInput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateConfiguredAudienceModelInput) SetDescription(v string) *UpdateConfiguredAudienceModelInput { + s.Description = &v + return s +} + +// SetMinMatchingSeedSize sets the MinMatchingSeedSize field's value. +func (s *UpdateConfiguredAudienceModelInput) SetMinMatchingSeedSize(v int64) *UpdateConfiguredAudienceModelInput { + s.MinMatchingSeedSize = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *UpdateConfiguredAudienceModelInput) SetOutputConfig(v *ConfiguredAudienceModelOutputConfig) *UpdateConfiguredAudienceModelInput { + s.OutputConfig = v + return s +} + +// SetSharedAudienceMetrics sets the SharedAudienceMetrics field's value. +func (s *UpdateConfiguredAudienceModelInput) SetSharedAudienceMetrics(v []*string) *UpdateConfiguredAudienceModelInput { + s.SharedAudienceMetrics = v + return s +} + +type UpdateConfiguredAudienceModelOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configured audience model that was + // updated. + // + // ConfiguredAudienceModelArn is a required field + ConfiguredAudienceModelArn *string `locationName:"configuredAudienceModelArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfiguredAudienceModelOutput) GoString() string { + return s.String() +} + +// SetConfiguredAudienceModelArn sets the ConfiguredAudienceModelArn field's value. +func (s *UpdateConfiguredAudienceModelOutput) SetConfiguredAudienceModelArn(v string) *UpdateConfiguredAudienceModelOutput { + s.ConfiguredAudienceModelArn = &v + return s +} + +// The request parameters for this request are incorrect. +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 +} + +const ( + // AudienceExportJobStatusCreatePending is a AudienceExportJobStatus enum value + AudienceExportJobStatusCreatePending = "CREATE_PENDING" + + // AudienceExportJobStatusCreateInProgress is a AudienceExportJobStatus enum value + AudienceExportJobStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // AudienceExportJobStatusCreateFailed is a AudienceExportJobStatus enum value + AudienceExportJobStatusCreateFailed = "CREATE_FAILED" + + // AudienceExportJobStatusActive is a AudienceExportJobStatus enum value + AudienceExportJobStatusActive = "ACTIVE" +) + +// AudienceExportJobStatus_Values returns all elements of the AudienceExportJobStatus enum +func AudienceExportJobStatus_Values() []string { + return []string{ + AudienceExportJobStatusCreatePending, + AudienceExportJobStatusCreateInProgress, + AudienceExportJobStatusCreateFailed, + AudienceExportJobStatusActive, + } +} + +const ( + // AudienceGenerationJobStatusCreatePending is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusCreatePending = "CREATE_PENDING" + + // AudienceGenerationJobStatusCreateInProgress is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // AudienceGenerationJobStatusCreateFailed is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusCreateFailed = "CREATE_FAILED" + + // AudienceGenerationJobStatusActive is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusActive = "ACTIVE" + + // AudienceGenerationJobStatusDeletePending is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusDeletePending = "DELETE_PENDING" + + // AudienceGenerationJobStatusDeleteInProgress is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // AudienceGenerationJobStatusDeleteFailed is a AudienceGenerationJobStatus enum value + AudienceGenerationJobStatusDeleteFailed = "DELETE_FAILED" +) + +// AudienceGenerationJobStatus_Values returns all elements of the AudienceGenerationJobStatus enum +func AudienceGenerationJobStatus_Values() []string { + return []string{ + AudienceGenerationJobStatusCreatePending, + AudienceGenerationJobStatusCreateInProgress, + AudienceGenerationJobStatusCreateFailed, + AudienceGenerationJobStatusActive, + AudienceGenerationJobStatusDeletePending, + AudienceGenerationJobStatusDeleteInProgress, + AudienceGenerationJobStatusDeleteFailed, + } +} + +const ( + // AudienceModelMetricTypeNormalizedDiscountedCumulativeGain is a AudienceModelMetricType enum value + AudienceModelMetricTypeNormalizedDiscountedCumulativeGain = "NORMALIZED_DISCOUNTED_CUMULATIVE_GAIN" + + // AudienceModelMetricTypeMeanReciprocalRank is a AudienceModelMetricType enum value + AudienceModelMetricTypeMeanReciprocalRank = "MEAN_RECIPROCAL_RANK" + + // AudienceModelMetricTypePrecision is a AudienceModelMetricType enum value + AudienceModelMetricTypePrecision = "PRECISION" + + // AudienceModelMetricTypeRecall is a AudienceModelMetricType enum value + AudienceModelMetricTypeRecall = "RECALL" +) + +// AudienceModelMetricType_Values returns all elements of the AudienceModelMetricType enum +func AudienceModelMetricType_Values() []string { + return []string{ + AudienceModelMetricTypeNormalizedDiscountedCumulativeGain, + AudienceModelMetricTypeMeanReciprocalRank, + AudienceModelMetricTypePrecision, + AudienceModelMetricTypeRecall, + } +} + +const ( + // AudienceModelStatusCreatePending is a AudienceModelStatus enum value + AudienceModelStatusCreatePending = "CREATE_PENDING" + + // AudienceModelStatusCreateInProgress is a AudienceModelStatus enum value + AudienceModelStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // AudienceModelStatusCreateFailed is a AudienceModelStatus enum value + AudienceModelStatusCreateFailed = "CREATE_FAILED" + + // AudienceModelStatusActive is a AudienceModelStatus enum value + AudienceModelStatusActive = "ACTIVE" + + // AudienceModelStatusDeletePending is a AudienceModelStatus enum value + AudienceModelStatusDeletePending = "DELETE_PENDING" + + // AudienceModelStatusDeleteInProgress is a AudienceModelStatus enum value + AudienceModelStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // AudienceModelStatusDeleteFailed is a AudienceModelStatus enum value + AudienceModelStatusDeleteFailed = "DELETE_FAILED" +) + +// AudienceModelStatus_Values returns all elements of the AudienceModelStatus enum +func AudienceModelStatus_Values() []string { + return []string{ + AudienceModelStatusCreatePending, + AudienceModelStatusCreateInProgress, + AudienceModelStatusCreateFailed, + AudienceModelStatusActive, + AudienceModelStatusDeletePending, + AudienceModelStatusDeleteInProgress, + AudienceModelStatusDeleteFailed, + } +} + +const ( + // AudienceSizeTypeAbsolute is a AudienceSizeType enum value + AudienceSizeTypeAbsolute = "ABSOLUTE" + + // AudienceSizeTypePercentage is a AudienceSizeType enum value + AudienceSizeTypePercentage = "PERCENTAGE" +) + +// AudienceSizeType_Values returns all elements of the AudienceSizeType enum +func AudienceSizeType_Values() []string { + return []string{ + AudienceSizeTypeAbsolute, + AudienceSizeTypePercentage, + } +} + +const ( + // ColumnTypeUserId is a ColumnType enum value + ColumnTypeUserId = "USER_ID" + + // ColumnTypeItemId is a ColumnType enum value + ColumnTypeItemId = "ITEM_ID" + + // ColumnTypeTimestamp is a ColumnType enum value + ColumnTypeTimestamp = "TIMESTAMP" + + // ColumnTypeCategoricalFeature is a ColumnType enum value + ColumnTypeCategoricalFeature = "CATEGORICAL_FEATURE" + + // ColumnTypeNumericalFeature is a ColumnType enum value + ColumnTypeNumericalFeature = "NUMERICAL_FEATURE" +) + +// ColumnType_Values returns all elements of the ColumnType enum +func ColumnType_Values() []string { + return []string{ + ColumnTypeUserId, + ColumnTypeItemId, + ColumnTypeTimestamp, + ColumnTypeCategoricalFeature, + ColumnTypeNumericalFeature, + } +} + +const ( + // ConfiguredAudienceModelStatusActive is a ConfiguredAudienceModelStatus enum value + ConfiguredAudienceModelStatusActive = "ACTIVE" +) + +// ConfiguredAudienceModelStatus_Values returns all elements of the ConfiguredAudienceModelStatus enum +func ConfiguredAudienceModelStatus_Values() []string { + return []string{ + ConfiguredAudienceModelStatusActive, + } +} + +const ( + // DatasetTypeInteractions is a DatasetType enum value + DatasetTypeInteractions = "INTERACTIONS" +) + +// DatasetType_Values returns all elements of the DatasetType enum +func DatasetType_Values() []string { + return []string{ + DatasetTypeInteractions, + } +} + +const ( + // PolicyExistenceConditionPolicyMustExist is a PolicyExistenceCondition enum value + PolicyExistenceConditionPolicyMustExist = "POLICY_MUST_EXIST" + + // PolicyExistenceConditionPolicyMustNotExist is a PolicyExistenceCondition enum value + PolicyExistenceConditionPolicyMustNotExist = "POLICY_MUST_NOT_EXIST" +) + +// PolicyExistenceCondition_Values returns all elements of the PolicyExistenceCondition enum +func PolicyExistenceCondition_Values() []string { + return []string{ + PolicyExistenceConditionPolicyMustExist, + PolicyExistenceConditionPolicyMustNotExist, + } +} + +const ( + // SharedAudienceMetricsAll is a SharedAudienceMetrics enum value + SharedAudienceMetricsAll = "ALL" + + // SharedAudienceMetricsNone is a SharedAudienceMetrics enum value + SharedAudienceMetricsNone = "NONE" +) + +// SharedAudienceMetrics_Values returns all elements of the SharedAudienceMetrics enum +func SharedAudienceMetrics_Values() []string { + return []string{ + SharedAudienceMetricsAll, + SharedAudienceMetricsNone, + } +} + +const ( + // TagOnCreatePolicyFromParentResource is a TagOnCreatePolicy enum value + TagOnCreatePolicyFromParentResource = "FROM_PARENT_RESOURCE" + + // TagOnCreatePolicyNone is a TagOnCreatePolicy enum value + TagOnCreatePolicyNone = "NONE" +) + +// TagOnCreatePolicy_Values returns all elements of the TagOnCreatePolicy enum +func TagOnCreatePolicy_Values() []string { + return []string{ + TagOnCreatePolicyFromParentResource, + TagOnCreatePolicyNone, + } +} + +const ( + // TrainingDatasetStatusActive is a TrainingDatasetStatus enum value + TrainingDatasetStatusActive = "ACTIVE" +) + +// TrainingDatasetStatus_Values returns all elements of the TrainingDatasetStatus enum +func TrainingDatasetStatus_Values() []string { + return []string{ + TrainingDatasetStatusActive, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/cleanroomsmliface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/cleanroomsmliface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/cleanroomsmliface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/cleanroomsmliface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,179 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package cleanroomsmliface provides an interface to enable mocking the AWS Clean Rooms ML 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 cleanroomsmliface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/cleanroomsml" +) + +// CleanRoomsMLAPI provides an interface to enable mocking the +// cleanroomsml.CleanRoomsML service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Clean Rooms ML. +// func myFunc(svc cleanroomsmliface.CleanRoomsMLAPI) bool { +// // Make svc.CreateAudienceModel request +// } +// +// func main() { +// sess := session.New() +// svc := cleanroomsml.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockCleanRoomsMLClient struct { +// cleanroomsmliface.CleanRoomsMLAPI +// } +// func (m *mockCleanRoomsMLClient) CreateAudienceModel(input *cleanroomsml.CreateAudienceModelInput) (*cleanroomsml.CreateAudienceModelOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockCleanRoomsMLClient{} +// +// 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 CleanRoomsMLAPI interface { + CreateAudienceModel(*cleanroomsml.CreateAudienceModelInput) (*cleanroomsml.CreateAudienceModelOutput, error) + CreateAudienceModelWithContext(aws.Context, *cleanroomsml.CreateAudienceModelInput, ...request.Option) (*cleanroomsml.CreateAudienceModelOutput, error) + CreateAudienceModelRequest(*cleanroomsml.CreateAudienceModelInput) (*request.Request, *cleanroomsml.CreateAudienceModelOutput) + + CreateConfiguredAudienceModel(*cleanroomsml.CreateConfiguredAudienceModelInput) (*cleanroomsml.CreateConfiguredAudienceModelOutput, error) + CreateConfiguredAudienceModelWithContext(aws.Context, *cleanroomsml.CreateConfiguredAudienceModelInput, ...request.Option) (*cleanroomsml.CreateConfiguredAudienceModelOutput, error) + CreateConfiguredAudienceModelRequest(*cleanroomsml.CreateConfiguredAudienceModelInput) (*request.Request, *cleanroomsml.CreateConfiguredAudienceModelOutput) + + CreateTrainingDataset(*cleanroomsml.CreateTrainingDatasetInput) (*cleanroomsml.CreateTrainingDatasetOutput, error) + CreateTrainingDatasetWithContext(aws.Context, *cleanroomsml.CreateTrainingDatasetInput, ...request.Option) (*cleanroomsml.CreateTrainingDatasetOutput, error) + CreateTrainingDatasetRequest(*cleanroomsml.CreateTrainingDatasetInput) (*request.Request, *cleanroomsml.CreateTrainingDatasetOutput) + + DeleteAudienceGenerationJob(*cleanroomsml.DeleteAudienceGenerationJobInput) (*cleanroomsml.DeleteAudienceGenerationJobOutput, error) + DeleteAudienceGenerationJobWithContext(aws.Context, *cleanroomsml.DeleteAudienceGenerationJobInput, ...request.Option) (*cleanroomsml.DeleteAudienceGenerationJobOutput, error) + DeleteAudienceGenerationJobRequest(*cleanroomsml.DeleteAudienceGenerationJobInput) (*request.Request, *cleanroomsml.DeleteAudienceGenerationJobOutput) + + DeleteAudienceModel(*cleanroomsml.DeleteAudienceModelInput) (*cleanroomsml.DeleteAudienceModelOutput, error) + DeleteAudienceModelWithContext(aws.Context, *cleanroomsml.DeleteAudienceModelInput, ...request.Option) (*cleanroomsml.DeleteAudienceModelOutput, error) + DeleteAudienceModelRequest(*cleanroomsml.DeleteAudienceModelInput) (*request.Request, *cleanroomsml.DeleteAudienceModelOutput) + + DeleteConfiguredAudienceModel(*cleanroomsml.DeleteConfiguredAudienceModelInput) (*cleanroomsml.DeleteConfiguredAudienceModelOutput, error) + DeleteConfiguredAudienceModelWithContext(aws.Context, *cleanroomsml.DeleteConfiguredAudienceModelInput, ...request.Option) (*cleanroomsml.DeleteConfiguredAudienceModelOutput, error) + DeleteConfiguredAudienceModelRequest(*cleanroomsml.DeleteConfiguredAudienceModelInput) (*request.Request, *cleanroomsml.DeleteConfiguredAudienceModelOutput) + + DeleteConfiguredAudienceModelPolicy(*cleanroomsml.DeleteConfiguredAudienceModelPolicyInput) (*cleanroomsml.DeleteConfiguredAudienceModelPolicyOutput, error) + DeleteConfiguredAudienceModelPolicyWithContext(aws.Context, *cleanroomsml.DeleteConfiguredAudienceModelPolicyInput, ...request.Option) (*cleanroomsml.DeleteConfiguredAudienceModelPolicyOutput, error) + DeleteConfiguredAudienceModelPolicyRequest(*cleanroomsml.DeleteConfiguredAudienceModelPolicyInput) (*request.Request, *cleanroomsml.DeleteConfiguredAudienceModelPolicyOutput) + + DeleteTrainingDataset(*cleanroomsml.DeleteTrainingDatasetInput) (*cleanroomsml.DeleteTrainingDatasetOutput, error) + DeleteTrainingDatasetWithContext(aws.Context, *cleanroomsml.DeleteTrainingDatasetInput, ...request.Option) (*cleanroomsml.DeleteTrainingDatasetOutput, error) + DeleteTrainingDatasetRequest(*cleanroomsml.DeleteTrainingDatasetInput) (*request.Request, *cleanroomsml.DeleteTrainingDatasetOutput) + + GetAudienceGenerationJob(*cleanroomsml.GetAudienceGenerationJobInput) (*cleanroomsml.GetAudienceGenerationJobOutput, error) + GetAudienceGenerationJobWithContext(aws.Context, *cleanroomsml.GetAudienceGenerationJobInput, ...request.Option) (*cleanroomsml.GetAudienceGenerationJobOutput, error) + GetAudienceGenerationJobRequest(*cleanroomsml.GetAudienceGenerationJobInput) (*request.Request, *cleanroomsml.GetAudienceGenerationJobOutput) + + GetAudienceModel(*cleanroomsml.GetAudienceModelInput) (*cleanroomsml.GetAudienceModelOutput, error) + GetAudienceModelWithContext(aws.Context, *cleanroomsml.GetAudienceModelInput, ...request.Option) (*cleanroomsml.GetAudienceModelOutput, error) + GetAudienceModelRequest(*cleanroomsml.GetAudienceModelInput) (*request.Request, *cleanroomsml.GetAudienceModelOutput) + + GetConfiguredAudienceModel(*cleanroomsml.GetConfiguredAudienceModelInput) (*cleanroomsml.GetConfiguredAudienceModelOutput, error) + GetConfiguredAudienceModelWithContext(aws.Context, *cleanroomsml.GetConfiguredAudienceModelInput, ...request.Option) (*cleanroomsml.GetConfiguredAudienceModelOutput, error) + GetConfiguredAudienceModelRequest(*cleanroomsml.GetConfiguredAudienceModelInput) (*request.Request, *cleanroomsml.GetConfiguredAudienceModelOutput) + + GetConfiguredAudienceModelPolicy(*cleanroomsml.GetConfiguredAudienceModelPolicyInput) (*cleanroomsml.GetConfiguredAudienceModelPolicyOutput, error) + GetConfiguredAudienceModelPolicyWithContext(aws.Context, *cleanroomsml.GetConfiguredAudienceModelPolicyInput, ...request.Option) (*cleanroomsml.GetConfiguredAudienceModelPolicyOutput, error) + GetConfiguredAudienceModelPolicyRequest(*cleanroomsml.GetConfiguredAudienceModelPolicyInput) (*request.Request, *cleanroomsml.GetConfiguredAudienceModelPolicyOutput) + + GetTrainingDataset(*cleanroomsml.GetTrainingDatasetInput) (*cleanroomsml.GetTrainingDatasetOutput, error) + GetTrainingDatasetWithContext(aws.Context, *cleanroomsml.GetTrainingDatasetInput, ...request.Option) (*cleanroomsml.GetTrainingDatasetOutput, error) + GetTrainingDatasetRequest(*cleanroomsml.GetTrainingDatasetInput) (*request.Request, *cleanroomsml.GetTrainingDatasetOutput) + + ListAudienceExportJobs(*cleanroomsml.ListAudienceExportJobsInput) (*cleanroomsml.ListAudienceExportJobsOutput, error) + ListAudienceExportJobsWithContext(aws.Context, *cleanroomsml.ListAudienceExportJobsInput, ...request.Option) (*cleanroomsml.ListAudienceExportJobsOutput, error) + ListAudienceExportJobsRequest(*cleanroomsml.ListAudienceExportJobsInput) (*request.Request, *cleanroomsml.ListAudienceExportJobsOutput) + + ListAudienceExportJobsPages(*cleanroomsml.ListAudienceExportJobsInput, func(*cleanroomsml.ListAudienceExportJobsOutput, bool) bool) error + ListAudienceExportJobsPagesWithContext(aws.Context, *cleanroomsml.ListAudienceExportJobsInput, func(*cleanroomsml.ListAudienceExportJobsOutput, bool) bool, ...request.Option) error + + ListAudienceGenerationJobs(*cleanroomsml.ListAudienceGenerationJobsInput) (*cleanroomsml.ListAudienceGenerationJobsOutput, error) + ListAudienceGenerationJobsWithContext(aws.Context, *cleanroomsml.ListAudienceGenerationJobsInput, ...request.Option) (*cleanroomsml.ListAudienceGenerationJobsOutput, error) + ListAudienceGenerationJobsRequest(*cleanroomsml.ListAudienceGenerationJobsInput) (*request.Request, *cleanroomsml.ListAudienceGenerationJobsOutput) + + ListAudienceGenerationJobsPages(*cleanroomsml.ListAudienceGenerationJobsInput, func(*cleanroomsml.ListAudienceGenerationJobsOutput, bool) bool) error + ListAudienceGenerationJobsPagesWithContext(aws.Context, *cleanroomsml.ListAudienceGenerationJobsInput, func(*cleanroomsml.ListAudienceGenerationJobsOutput, bool) bool, ...request.Option) error + + ListAudienceModels(*cleanroomsml.ListAudienceModelsInput) (*cleanroomsml.ListAudienceModelsOutput, error) + ListAudienceModelsWithContext(aws.Context, *cleanroomsml.ListAudienceModelsInput, ...request.Option) (*cleanroomsml.ListAudienceModelsOutput, error) + ListAudienceModelsRequest(*cleanroomsml.ListAudienceModelsInput) (*request.Request, *cleanroomsml.ListAudienceModelsOutput) + + ListAudienceModelsPages(*cleanroomsml.ListAudienceModelsInput, func(*cleanroomsml.ListAudienceModelsOutput, bool) bool) error + ListAudienceModelsPagesWithContext(aws.Context, *cleanroomsml.ListAudienceModelsInput, func(*cleanroomsml.ListAudienceModelsOutput, bool) bool, ...request.Option) error + + ListConfiguredAudienceModels(*cleanroomsml.ListConfiguredAudienceModelsInput) (*cleanroomsml.ListConfiguredAudienceModelsOutput, error) + ListConfiguredAudienceModelsWithContext(aws.Context, *cleanroomsml.ListConfiguredAudienceModelsInput, ...request.Option) (*cleanroomsml.ListConfiguredAudienceModelsOutput, error) + ListConfiguredAudienceModelsRequest(*cleanroomsml.ListConfiguredAudienceModelsInput) (*request.Request, *cleanroomsml.ListConfiguredAudienceModelsOutput) + + ListConfiguredAudienceModelsPages(*cleanroomsml.ListConfiguredAudienceModelsInput, func(*cleanroomsml.ListConfiguredAudienceModelsOutput, bool) bool) error + ListConfiguredAudienceModelsPagesWithContext(aws.Context, *cleanroomsml.ListConfiguredAudienceModelsInput, func(*cleanroomsml.ListConfiguredAudienceModelsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*cleanroomsml.ListTagsForResourceInput) (*cleanroomsml.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *cleanroomsml.ListTagsForResourceInput, ...request.Option) (*cleanroomsml.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*cleanroomsml.ListTagsForResourceInput) (*request.Request, *cleanroomsml.ListTagsForResourceOutput) + + ListTrainingDatasets(*cleanroomsml.ListTrainingDatasetsInput) (*cleanroomsml.ListTrainingDatasetsOutput, error) + ListTrainingDatasetsWithContext(aws.Context, *cleanroomsml.ListTrainingDatasetsInput, ...request.Option) (*cleanroomsml.ListTrainingDatasetsOutput, error) + ListTrainingDatasetsRequest(*cleanroomsml.ListTrainingDatasetsInput) (*request.Request, *cleanroomsml.ListTrainingDatasetsOutput) + + ListTrainingDatasetsPages(*cleanroomsml.ListTrainingDatasetsInput, func(*cleanroomsml.ListTrainingDatasetsOutput, bool) bool) error + ListTrainingDatasetsPagesWithContext(aws.Context, *cleanroomsml.ListTrainingDatasetsInput, func(*cleanroomsml.ListTrainingDatasetsOutput, bool) bool, ...request.Option) error + + PutConfiguredAudienceModelPolicy(*cleanroomsml.PutConfiguredAudienceModelPolicyInput) (*cleanroomsml.PutConfiguredAudienceModelPolicyOutput, error) + PutConfiguredAudienceModelPolicyWithContext(aws.Context, *cleanroomsml.PutConfiguredAudienceModelPolicyInput, ...request.Option) (*cleanroomsml.PutConfiguredAudienceModelPolicyOutput, error) + PutConfiguredAudienceModelPolicyRequest(*cleanroomsml.PutConfiguredAudienceModelPolicyInput) (*request.Request, *cleanroomsml.PutConfiguredAudienceModelPolicyOutput) + + StartAudienceExportJob(*cleanroomsml.StartAudienceExportJobInput) (*cleanroomsml.StartAudienceExportJobOutput, error) + StartAudienceExportJobWithContext(aws.Context, *cleanroomsml.StartAudienceExportJobInput, ...request.Option) (*cleanroomsml.StartAudienceExportJobOutput, error) + StartAudienceExportJobRequest(*cleanroomsml.StartAudienceExportJobInput) (*request.Request, *cleanroomsml.StartAudienceExportJobOutput) + + StartAudienceGenerationJob(*cleanroomsml.StartAudienceGenerationJobInput) (*cleanroomsml.StartAudienceGenerationJobOutput, error) + StartAudienceGenerationJobWithContext(aws.Context, *cleanroomsml.StartAudienceGenerationJobInput, ...request.Option) (*cleanroomsml.StartAudienceGenerationJobOutput, error) + StartAudienceGenerationJobRequest(*cleanroomsml.StartAudienceGenerationJobInput) (*request.Request, *cleanroomsml.StartAudienceGenerationJobOutput) + + TagResource(*cleanroomsml.TagResourceInput) (*cleanroomsml.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *cleanroomsml.TagResourceInput, ...request.Option) (*cleanroomsml.TagResourceOutput, error) + TagResourceRequest(*cleanroomsml.TagResourceInput) (*request.Request, *cleanroomsml.TagResourceOutput) + + UntagResource(*cleanroomsml.UntagResourceInput) (*cleanroomsml.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *cleanroomsml.UntagResourceInput, ...request.Option) (*cleanroomsml.UntagResourceOutput, error) + UntagResourceRequest(*cleanroomsml.UntagResourceInput) (*request.Request, *cleanroomsml.UntagResourceOutput) + + UpdateConfiguredAudienceModel(*cleanroomsml.UpdateConfiguredAudienceModelInput) (*cleanroomsml.UpdateConfiguredAudienceModelOutput, error) + UpdateConfiguredAudienceModelWithContext(aws.Context, *cleanroomsml.UpdateConfiguredAudienceModelInput, ...request.Option) (*cleanroomsml.UpdateConfiguredAudienceModelOutput, error) + UpdateConfiguredAudienceModelRequest(*cleanroomsml.UpdateConfiguredAudienceModelInput) (*request.Request, *cleanroomsml.UpdateConfiguredAudienceModelOutput) +} + +var _ CleanRoomsMLAPI = (*cleanroomsml.CleanRoomsML)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,42 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package cleanroomsml provides the client and types for making API +// requests to AWS Clean Rooms ML. +// +// Welcome to the Amazon Web Services Clean Rooms ML API Reference. +// +// Amazon Web Services Clean Rooms ML provides a privacy-enhancing method for +// two parties to identify similar users in their data without the need to share +// their data with each other. The first party brings the training data to Clean +// Rooms so that they can create and configure an audience model (lookalike +// model) and associate it with a collaboration. The second party then brings +// their seed data to Clean Rooms and generates an audience (lookalike segment) +// that resembles the training data. +// +// To learn more about Amazon Web Services Clean Rooms ML concepts, procedures, +// and best practices, see the Clean Rooms User Guide (https://docs.aws.amazon.com/clean-rooms/latest/userguide/machine-learning.html). +// +// To learn more about SQL commands, functions, and conditions supported in +// Clean Rooms, see the Clean Rooms SQL Reference (https://docs.aws.amazon.com/clean-rooms/latest/sql-reference/sql-reference.html). +// +// See https://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06 for more information on this service. +// +// See cleanroomsml package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/cleanroomsml/ +// +// # Using the Client +// +// To contact AWS Clean Rooms ML with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Clean Rooms ML client CleanRoomsML for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/cleanroomsml/#New +package cleanroomsml diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,48 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package cleanroomsml + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // A resource with that name already exists in this region. + ErrCodeConflictException = "ConflictException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource you are requesting does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // You have exceeded your service quota. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The request parameters for this request are incorrect. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/service.go golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cleanroomsml/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cleanroomsml/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package cleanroomsml + +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/restjson" +) + +// CleanRoomsML provides the API operation methods for making requests to +// AWS Clean Rooms ML. See this package's package overview docs +// for details on the service. +// +// CleanRoomsML methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type CleanRoomsML 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 = "CleanRoomsML" // Name of service. + EndpointsID = "cleanrooms-ml" // ID to lookup a service endpoint with. + ServiceID = "CleanRoomsML" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the CleanRoomsML 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 CleanRoomsML client from just a session. +// svc := cleanroomsml.New(mySession) +// +// // Create a CleanRoomsML client with additional configuration +// svc := cleanroomsml.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *CleanRoomsML { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "cleanrooms-ml" + } + 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) *CleanRoomsML { + svc := &CleanRoomsML{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-09-06", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a CleanRoomsML operation and runs any +// custom request initialization. +func (c *CleanRoomsML) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloud9/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloud9/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloud9/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloud9/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1601,22 +1601,25 @@ // EC2 instance. To choose an AMI for the instance, you must specify a valid // AMI alias or a valid Amazon EC2 Systems Manager (SSM) path. // - // The default Amazon Linux AMI is currently used if the parameter isn't explicitly - // assigned a value in the request. Because Amazon Linux AMI has ended standard - // support as of December 31, 2020, we recommend you choose Amazon Linux 2, - // which includes long term support through 2023. - // - // From December 31, 2023, the parameter for Amazon Linux will no longer be - // available when you specify an AMI for your instance. Amazon Linux 2 will - // then become the default AMI, which is used to launch your instance if no - // parameter is explicitly defined. + // From December 04, 2023, you will be required to include the imageId parameter + // for the CreateEnvironmentEC2 action. This change will be reflected across + // all direct methods of communicating with the API, such as Amazon Web Services + // SDK, Amazon Web Services CLI and Amazon Web Services CloudFormation. This + // change will only affect direct API consumers, and not Cloud9 console users. + // + // From January 22, 2024, Amazon Linux (AL1) will be removed from the list of + // available image IDs for Cloud9. This is necessary as AL1 will reach the end + // of maintenance support in December 2023, and as a result will no longer receive + // security updates. We recommend using Amazon Linux 2 as the AMI to create + // your environment as it is fully supported. This change will only affect direct + // API consumers, and not Cloud9 console users. // // Since Ubuntu 18.04 has ended standard support as of May 31, 2023, we recommend // you choose Ubuntu 22.04. // // AMI aliases // - // * Amazon Linux (default): amazonlinux-1-x86_64 + // * Amazon Linux: amazonlinux-1-x86_64 // // * Amazon Linux 2: amazonlinux-2-x86_64 // @@ -1626,14 +1629,16 @@ // // SSM paths // - // * Amazon Linux (default): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64 + // * Amazon Linux: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64 // // * Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64 // // * Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64 // // * Ubuntu 22.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64 - ImageId *string `locationName:"imageId" type:"string"` + // + // ImageId is a required field + ImageId *string `locationName:"imageId" type:"string" required:"true"` // The type of instance to connect to the environment (for example, t2.micro). // @@ -1686,6 +1691,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEnvironmentEC2Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentEC2Input"} + if s.ImageId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageId")) + } if s.InstanceType == nil { invalidParams.Add(request.NewErrParamRequired("InstanceType")) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloud9/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/cloud9/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloud9/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloud9/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -33,6 +33,7 @@ input := &cloud9.CreateEnvironmentEC2Input{ AutomaticStopTimeMinutes: aws.Int64(60), Description: aws.String("This is my demonstration environment."), + ImageId: aws.String("amazonlinux-2-x86_64"), InstanceType: aws.String("t2.micro"), Name: aws.String("my-demo-environment"), OwnerArn: aws.String("arn:aws:iam::123456789012:user/MyDemoUser"), diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudformation/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudformation/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudformation/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudformation/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2768,7 +2768,7 @@ // Returns the description for the specified stack; if no stack name was specified, // then it returns the description for all the stacks created. // -// If the stack doesn't exist, an ValidationError is returned. +// If the stack doesn't exist, a ValidationError is returned. // // 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 @@ -7985,6 +7985,9 @@ // creating it or in an OBSOLETE state because the stack was already updated. ExecutionStatus *string `type:"string" enum:"ExecutionStatus"` + // Indicates if the change set imports resources that already exist. + ImportExistingResources *bool `type:"boolean"` + // Specifies the current setting of IncludeNestedStacks for the change set. IncludeNestedStacks *bool `type:"boolean"` @@ -8057,6 +8060,12 @@ return s } +// SetImportExistingResources sets the ImportExistingResources field's value. +func (s *ChangeSetSummary) SetImportExistingResources(v bool) *ChangeSetSummary { + s.ImportExistingResources = &v + return s +} + // SetIncludeNestedStacks sets the IncludeNestedStacks field's value. func (s *ChangeSetSummary) SetIncludeNestedStacks(v bool) *ChangeSetSummary { s.IncludeNestedStacks = &v @@ -8301,6 +8310,8 @@ // action, and specifying this capability. For more information about macros, // see Using CloudFormation macros to perform custom processing on templates // (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). + // + // Only one of the Capabilities and ResourceType parameters can be specified. Capabilities []*string `type:"list" enum:"Capability"` // The name of the change set. The name must be unique among all change sets @@ -8337,6 +8348,17 @@ // A description to help you identify this change set. Description *string `min:"1" type:"string"` + // Indicates if the change set imports resources that already exist. + // + // This parameter can only import resources that have custom names in templates. + // For more information, see name type (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) + // in the CloudFormation User Guide. To import resources that do not accept + // custom names, such as EC2 instances, use the resource import feature instead. + // For more information, see Bringing existing resources into CloudFormation + // management (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html) + // in the CloudFormation User Guide. + ImportExistingResources *bool `type:"boolean"` + // Creates a change set for the all nested stacks specified in the template. // The default behavior of this action is set to False. To include nested sets // in a change set, specify True. @@ -8383,6 +8405,8 @@ // for condition keys in IAM policies for CloudFormation. For more information, // see Controlling access with Identity and Access Management (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) // in the CloudFormation User Guide. + // + // Only one of the Capabilities and ResourceType parameters can be specified. ResourceTypes []*string `type:"list"` // The resources to import into your stack. @@ -8548,6 +8572,12 @@ return s } +// SetImportExistingResources sets the ImportExistingResources field's value. +func (s *CreateChangeSetInput) SetImportExistingResources(v bool) *CreateChangeSetInput { + s.ImportExistingResources = &v + return s +} + // SetIncludeNestedStacks sets the IncludeNestedStacks field's value. func (s *CreateChangeSetInput) SetIncludeNestedStacks(v bool) *CreateChangeSetInput { s.IncludeNestedStacks = &v @@ -8714,6 +8744,8 @@ // Be aware that the Lambda function owner can update the function operation // without CloudFormation being notified. For more information, see Using // CloudFormation macros to perform custom processing on templates (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). + // + // Only one of the Capabilities and ResourceType parameters can be specified. Capabilities []*string `type:"list" enum:"Capability"` // A unique identifier for this CreateStack request. Specify this token if you @@ -8781,6 +8813,8 @@ // all resource types. Identity and Access Management (IAM) uses this parameter // for CloudFormation-specific condition keys in IAM policies. For more information, // see Controlling Access with Identity and Access Management (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html). + // + // Only one of the Capabilities and ResourceType parameters can be specified. ResourceTypes []*string `type:"list"` // When set to true, newly created resources are deleted when the operation @@ -10825,6 +10859,14 @@ // creating it or in an OBSOLETE state because the stack was already updated. ExecutionStatus *string `type:"string" enum:"ExecutionStatus"` + // Indicates if the change set imports resources that already exist. + // + // This parameter can only import resources that have custom names (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) + // in templates. To import resources that do not accept custom names, such as + // EC2 instances, use the resource import (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html) + // feature instead. + ImportExistingResources *bool `type:"boolean"` + // Verifies if IncludeNestedStacks is set to True. IncludeNestedStacks *bool `type:"boolean"` @@ -10953,6 +10995,12 @@ return s } +// SetImportExistingResources sets the ImportExistingResources field's value. +func (s *DescribeChangeSetOutput) SetImportExistingResources(v bool) *DescribeChangeSetOutput { + s.ImportExistingResources = &v + return s +} + // SetIncludeNestedStacks sets the IncludeNestedStacks field's value. func (s *DescribeChangeSetOutput) SetIncludeNestedStacks(v bool) *DescribeChangeSetOutput { s.IncludeNestedStacks = &v @@ -17057,7 +17105,7 @@ // when invoking the extension. // // For CloudFormation to assume the specified execution role, the role must - // contain a trust relationship with the CloudFormation service principle (resources.cloudformation.amazonaws.com). + // contain a trust relationship with the CloudFormation service principal (resources.cloudformation.amazonaws.com). // For more information about adding trust relationships, see Modifying a role // trust policy (https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-managingrole_edit-trust-policy) // in the Identity and Access Management User Guide. @@ -20909,6 +20957,23 @@ type StackSetOperationPreferences struct { _ struct{} `type:"structure"` + // Specifies how the concurrency level behaves during the operation execution. + // + // * STRICT_FAILURE_TOLERANCE: This option dynamically lowers the concurrency + // level to ensure the number of failed accounts never exceeds the value + // of FailureToleranceCount +1. The initial actual concurrency is set to + // the lower of either the value of the MaxConcurrentCount, or the value + // of MaxConcurrentCount +1. The actual concurrency is then reduced proportionally + // by the number of failures. This is the default behavior. If failure tolerance + // or Maximum concurrent accounts are set to percentages, the behavior is + // similar. + // + // * SOFT_FAILURE_TOLERANCE: This option decouples FailureToleranceCount + // from the actual concurrency. This allows stack set operations to run at + // the concurrency level set by the MaxConcurrentCount value, or MaxConcurrentPercentage, + // regardless of the number of failures. + ConcurrencyMode *string `type:"string" enum:"ConcurrencyMode"` + // The number of accounts, per Region, for which this operation can fail before // CloudFormation stops the operation in that Region. If the operation is stopped // in a Region, CloudFormation doesn't attempt the operation in any subsequent @@ -20935,8 +21000,9 @@ FailureTolerancePercentage *int64 `type:"integer"` // The maximum number of accounts in which to perform this operation at one - // time. This is dependent on the value of FailureToleranceCount.MaxConcurrentCount - // is at most one more than the FailureToleranceCount. + // time. This can depend on the value of FailureToleranceCount depending on + // your ConcurrencyMode. MaxConcurrentCount is at most one more than the FailureToleranceCount + // if you're using STRICT_FAILURE_TOLERANCE. // // Note that this setting lets you specify the maximum for operations. For large // deployments, under certain circumstances the actual number of accounts acted @@ -21008,6 +21074,12 @@ return nil } +// SetConcurrencyMode sets the ConcurrencyMode field's value. +func (s *StackSetOperationPreferences) SetConcurrencyMode(v string) *StackSetOperationPreferences { + s.ConcurrencyMode = &v + return s +} + // SetFailureToleranceCount sets the FailureToleranceCount field's value. func (s *StackSetOperationPreferences) SetFailureToleranceCount(v int64) *StackSetOperationPreferences { s.FailureToleranceCount = &v @@ -22624,6 +22696,8 @@ // Be aware that the Lambda function owner can update the function operation // without CloudFormation being notified. For more information, see Using // CloudFormation Macros to Perform Custom Processing on Templates (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). + // + // Only one of the Capabilities and ResourceType parameters can be specified. Capabilities []*string `type:"list" enum:"Capability"` // A unique identifier for this UpdateStack request. Specify this token if you @@ -22667,6 +22741,8 @@ // all resource types. Identity and Access Management (IAM) uses this parameter // for CloudFormation-specific condition keys in IAM policies. For more information, // see Controlling Access with Identity and Access Management (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html). + // + // Only one of the Capabilities and ResourceType parameters can be specified. ResourceTypes []*string `type:"list"` // When set to true, newly created resources are deleted when the operation @@ -24185,6 +24261,22 @@ } const ( + // ConcurrencyModeStrictFailureTolerance is a ConcurrencyMode enum value + ConcurrencyModeStrictFailureTolerance = "STRICT_FAILURE_TOLERANCE" + + // ConcurrencyModeSoftFailureTolerance is a ConcurrencyMode enum value + ConcurrencyModeSoftFailureTolerance = "SOFT_FAILURE_TOLERANCE" +) + +// ConcurrencyMode_Values returns all elements of the ConcurrencyMode enum +func ConcurrencyMode_Values() []string { + return []string{ + ConcurrencyModeStrictFailureTolerance, + ConcurrencyModeSoftFailureTolerance, + } +} + +const ( // DeprecatedStatusLive is a DeprecatedStatus enum value DeprecatedStatusLive = "LIVE" @@ -24696,6 +24788,9 @@ // ResourceAttributeDeletionPolicy is a ResourceAttribute enum value ResourceAttributeDeletionPolicy = "DeletionPolicy" + // ResourceAttributeUpdateReplacePolicy is a ResourceAttribute enum value + ResourceAttributeUpdateReplacePolicy = "UpdateReplacePolicy" + // ResourceAttributeTags is a ResourceAttribute enum value ResourceAttributeTags = "Tags" ) @@ -24708,6 +24803,7 @@ ResourceAttributeCreationPolicy, ResourceAttributeUpdatePolicy, ResourceAttributeDeletionPolicy, + ResourceAttributeUpdateReplacePolicy, ResourceAttributeTags, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudformation/waiters.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudformation/waiters.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudformation/waiters.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudformation/waiters.go 2023-12-06 19:28:18.000000000 +0000 @@ -93,6 +93,46 @@ Expected: "CREATE_COMPLETE", }, { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_COMPLETE", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_IN_PROGRESS", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_FAILED", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_ROLLBACK_IN_PROGRESS", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_ROLLBACK_FAILED", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "Stacks[].StackStatus", + Expected: "UPDATE_ROLLBACK_COMPLETE", + }, + { State: request.FailureWaiterState, Matcher: request.PathAnyWaiterMatch, Argument: "Stacks[].StackStatus", Expected: "CREATE_FAILED", diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1935,6 +1935,101 @@ return out, req.Send() } +const opCreateKeyValueStore = "CreateKeyValueStore2020_05_31" + +// CreateKeyValueStoreRequest generates a "aws/request.Request" representing the +// client's request for the CreateKeyValueStore 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 CreateKeyValueStore for more information on using the CreateKeyValueStore +// 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 CreateKeyValueStoreRequest method. +// req, resp := client.CreateKeyValueStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateKeyValueStore +func (c *CloudFront) CreateKeyValueStoreRequest(input *CreateKeyValueStoreInput) (req *request.Request, output *CreateKeyValueStoreOutput) { + op := &request.Operation{ + Name: opCreateKeyValueStore, + HTTPMethod: "POST", + HTTPPath: "/2020-05-31/key-value-store/", + } + + if input == nil { + input = &CreateKeyValueStoreInput{} + } + + output = &CreateKeyValueStoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateKeyValueStore API operation for Amazon CloudFront. +// +// Specifies the Key Value Store resource to add to your account. In your account, +// the Key Value Store names must be unique. You can also import Key Value Store +// data in JSON format from an S3 bucket by providing a valid ImportSource that +// you own. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront's +// API operation CreateKeyValueStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeAccessDenied "AccessDenied" +// Access denied. +// +// - ErrCodeEntityLimitExceeded "EntityLimitExceeded" +// The Key Value Store entity limit has been exceeded. +// +// - ErrCodeEntityAlreadyExists "EntityAlreadyExists" +// The Key Value Store entity already exists. You must provide a unique Key +// Value Store entity. +// +// - ErrCodeEntitySizeLimitExceeded "EntitySizeLimitExceeded" +// The Key Value Store entity size limit was exceeded. +// +// - ErrCodeInvalidArgument "InvalidArgument" +// An argument is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateKeyValueStore +func (c *CloudFront) CreateKeyValueStore(input *CreateKeyValueStoreInput) (*CreateKeyValueStoreOutput, error) { + req, out := c.CreateKeyValueStoreRequest(input) + return out, req.Send() +} + +// CreateKeyValueStoreWithContext is the same as CreateKeyValueStore with the addition of +// the ability to pass a context and additional request options. +// +// See CreateKeyValueStore 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 *CloudFront) CreateKeyValueStoreWithContext(ctx aws.Context, input *CreateKeyValueStoreInput, opts ...request.Option) (*CreateKeyValueStoreOutput, error) { + req, out := c.CreateKeyValueStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateMonitoringSubscription = "CreateMonitoringSubscription2020_05_31" // CreateMonitoringSubscriptionRequest generates a "aws/request.Request" representing the @@ -3592,6 +3687,98 @@ return out, req.Send() } +const opDeleteKeyValueStore = "DeleteKeyValueStore2020_05_31" + +// DeleteKeyValueStoreRequest generates a "aws/request.Request" representing the +// client's request for the DeleteKeyValueStore 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 DeleteKeyValueStore for more information on using the DeleteKeyValueStore +// 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 DeleteKeyValueStoreRequest method. +// req, resp := client.DeleteKeyValueStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteKeyValueStore +func (c *CloudFront) DeleteKeyValueStoreRequest(input *DeleteKeyValueStoreInput) (req *request.Request, output *DeleteKeyValueStoreOutput) { + op := &request.Operation{ + Name: opDeleteKeyValueStore, + HTTPMethod: "DELETE", + HTTPPath: "/2020-05-31/key-value-store/{Name}", + } + + if input == nil { + input = &DeleteKeyValueStoreInput{} + } + + output = &DeleteKeyValueStoreOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteKeyValueStore API operation for Amazon CloudFront. +// +// Specifies the Key Value Store to delete. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront's +// API operation DeleteKeyValueStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeAccessDenied "AccessDenied" +// Access denied. +// +// - ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion" +// The If-Match version is missing or not valid. +// +// - ErrCodeEntityNotFound "EntityNotFound" +// The Key Value Store entity was not found. +// +// - ErrCodeCannotDeleteEntityWhileInUse "CannotDeleteEntityWhileInUse" +// The Key Value Store entity cannot be deleted while it is in use. +// +// - ErrCodePreconditionFailed "PreconditionFailed" +// The precondition in one or more of the request fields evaluated to false. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteKeyValueStore +func (c *CloudFront) DeleteKeyValueStore(input *DeleteKeyValueStoreInput) (*DeleteKeyValueStoreOutput, error) { + req, out := c.DeleteKeyValueStoreRequest(input) + return out, req.Send() +} + +// DeleteKeyValueStoreWithContext is the same as DeleteKeyValueStore with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteKeyValueStore 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 *CloudFront) DeleteKeyValueStoreWithContext(ctx aws.Context, input *DeleteKeyValueStoreInput, opts ...request.Option) (*DeleteKeyValueStoreOutput, error) { + req, out := c.DeleteKeyValueStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMonitoringSubscription = "DeleteMonitoringSubscription2020_05_31" // DeleteMonitoringSubscriptionRequest generates a "aws/request.Request" representing the @@ -4391,6 +4578,91 @@ return out, req.Send() } +const opDescribeKeyValueStore = "DescribeKeyValueStore2020_05_31" + +// DescribeKeyValueStoreRequest generates a "aws/request.Request" representing the +// client's request for the DescribeKeyValueStore 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 DescribeKeyValueStore for more information on using the DescribeKeyValueStore +// 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 DescribeKeyValueStoreRequest method. +// req, resp := client.DescribeKeyValueStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DescribeKeyValueStore +func (c *CloudFront) DescribeKeyValueStoreRequest(input *DescribeKeyValueStoreInput) (req *request.Request, output *DescribeKeyValueStoreOutput) { + op := &request.Operation{ + Name: opDescribeKeyValueStore, + HTTPMethod: "GET", + HTTPPath: "/2020-05-31/key-value-store/{Name}", + } + + if input == nil { + input = &DescribeKeyValueStoreInput{} + } + + output = &DescribeKeyValueStoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeKeyValueStore API operation for Amazon CloudFront. +// +// Specifies the Key Value Store and its configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront's +// API operation DescribeKeyValueStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeAccessDenied "AccessDenied" +// Access denied. +// +// - ErrCodeInvalidArgument "InvalidArgument" +// An argument is invalid. +// +// - ErrCodeEntityNotFound "EntityNotFound" +// The Key Value Store entity was not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DescribeKeyValueStore +func (c *CloudFront) DescribeKeyValueStore(input *DescribeKeyValueStoreInput) (*DescribeKeyValueStoreOutput, error) { + req, out := c.DescribeKeyValueStoreRequest(input) + return out, req.Send() +} + +// DescribeKeyValueStoreWithContext is the same as DescribeKeyValueStore with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeKeyValueStore 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 *CloudFront) DescribeKeyValueStoreWithContext(ctx aws.Context, input *DescribeKeyValueStoreInput, opts ...request.Option) (*DescribeKeyValueStoreOutput, error) { + req, out := c.DescribeKeyValueStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetCachePolicy = "GetCachePolicy2020_05_31" // GetCachePolicyRequest generates a "aws/request.Request" representing the @@ -8340,6 +8612,145 @@ return out, req.Send() } +const opListKeyValueStores = "ListKeyValueStores2020_05_31" + +// ListKeyValueStoresRequest generates a "aws/request.Request" representing the +// client's request for the ListKeyValueStores 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 ListKeyValueStores for more information on using the ListKeyValueStores +// 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 ListKeyValueStoresRequest method. +// req, resp := client.ListKeyValueStoresRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListKeyValueStores +func (c *CloudFront) ListKeyValueStoresRequest(input *ListKeyValueStoresInput) (req *request.Request, output *ListKeyValueStoresOutput) { + op := &request.Operation{ + Name: opListKeyValueStores, + HTTPMethod: "GET", + HTTPPath: "/2020-05-31/key-value-store", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"KeyValueStoreList.NextMarker"}, + LimitToken: "MaxItems", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListKeyValueStoresInput{} + } + + output = &ListKeyValueStoresOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListKeyValueStores API operation for Amazon CloudFront. +// +// Specifies the Key Value Stores to list. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront's +// API operation ListKeyValueStores for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeAccessDenied "AccessDenied" +// Access denied. +// +// - ErrCodeInvalidArgument "InvalidArgument" +// An argument is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListKeyValueStores +func (c *CloudFront) ListKeyValueStores(input *ListKeyValueStoresInput) (*ListKeyValueStoresOutput, error) { + req, out := c.ListKeyValueStoresRequest(input) + return out, req.Send() +} + +// ListKeyValueStoresWithContext is the same as ListKeyValueStores with the addition of +// the ability to pass a context and additional request options. +// +// See ListKeyValueStores 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 *CloudFront) ListKeyValueStoresWithContext(ctx aws.Context, input *ListKeyValueStoresInput, opts ...request.Option) (*ListKeyValueStoresOutput, error) { + req, out := c.ListKeyValueStoresRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListKeyValueStoresPages iterates over the pages of a ListKeyValueStores operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListKeyValueStores 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 ListKeyValueStores operation. +// pageNum := 0 +// err := client.ListKeyValueStoresPages(params, +// func(page *cloudfront.ListKeyValueStoresOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudFront) ListKeyValueStoresPages(input *ListKeyValueStoresInput, fn func(*ListKeyValueStoresOutput, bool) bool) error { + return c.ListKeyValueStoresPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListKeyValueStoresPagesWithContext same as ListKeyValueStoresPages 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 *CloudFront) ListKeyValueStoresPagesWithContext(ctx aws.Context, input *ListKeyValueStoresInput, fn func(*ListKeyValueStoresOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListKeyValueStoresInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListKeyValueStoresRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListKeyValueStoresOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListOriginAccessControls = "ListOriginAccessControls2020_05_31" // ListOriginAccessControlsRequest generates a "aws/request.Request" representing the @@ -10819,6 +11230,97 @@ return out, req.Send() } +const opUpdateKeyValueStore = "UpdateKeyValueStore2020_05_31" + +// UpdateKeyValueStoreRequest generates a "aws/request.Request" representing the +// client's request for the UpdateKeyValueStore 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 UpdateKeyValueStore for more information on using the UpdateKeyValueStore +// 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 UpdateKeyValueStoreRequest method. +// req, resp := client.UpdateKeyValueStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateKeyValueStore +func (c *CloudFront) UpdateKeyValueStoreRequest(input *UpdateKeyValueStoreInput) (req *request.Request, output *UpdateKeyValueStoreOutput) { + op := &request.Operation{ + Name: opUpdateKeyValueStore, + HTTPMethod: "PUT", + HTTPPath: "/2020-05-31/key-value-store/{Name}", + } + + if input == nil { + input = &UpdateKeyValueStoreInput{} + } + + output = &UpdateKeyValueStoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateKeyValueStore API operation for Amazon CloudFront. +// +// Specifies the Key Value Store to update. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront's +// API operation UpdateKeyValueStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeAccessDenied "AccessDenied" +// Access denied. +// +// - ErrCodeInvalidArgument "InvalidArgument" +// An argument is invalid. +// +// - ErrCodeEntityNotFound "EntityNotFound" +// The Key Value Store entity was not found. +// +// - ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion" +// The If-Match version is missing or not valid. +// +// - ErrCodePreconditionFailed "PreconditionFailed" +// The precondition in one or more of the request fields evaluated to false. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateKeyValueStore +func (c *CloudFront) UpdateKeyValueStore(input *UpdateKeyValueStoreInput) (*UpdateKeyValueStoreOutput, error) { + req, out := c.UpdateKeyValueStoreRequest(input) + return out, req.Send() +} + +// UpdateKeyValueStoreWithContext is the same as UpdateKeyValueStore with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateKeyValueStore 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 *CloudFront) UpdateKeyValueStoreWithContext(ctx aws.Context, input *UpdateKeyValueStoreInput, opts ...request.Option) (*UpdateKeyValueStoreOutput, error) { + req, out := c.UpdateKeyValueStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateOriginAccessControl = "UpdateOriginAccessControl2020_05_31" // UpdateOriginAccessControlRequest generates a "aws/request.Request" representing the @@ -15153,6 +15655,128 @@ return s } +type CreateKeyValueStoreInput struct { + _ struct{} `locationName:"CreateKeyValueStoreRequest" type:"structure" xmlURI:"http://cloudfront.amazonaws.com/doc/2020-05-31/"` + + // The comment of the Key Value Store. + Comment *string `type:"string"` + + // The S3 bucket that provides the source for the import. The source must be + // in a valid JSON format. + ImportSource *ImportSource `type:"structure"` + + // The name of the Key Value Store. The maximum length of the name is 32 characters. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKeyValueStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKeyValueStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateKeyValueStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateKeyValueStoreInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ImportSource != nil { + if err := s.ImportSource.Validate(); err != nil { + invalidParams.AddNested("ImportSource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComment sets the Comment field's value. +func (s *CreateKeyValueStoreInput) SetComment(v string) *CreateKeyValueStoreInput { + s.Comment = &v + return s +} + +// SetImportSource sets the ImportSource field's value. +func (s *CreateKeyValueStoreInput) SetImportSource(v *ImportSource) *CreateKeyValueStoreInput { + s.ImportSource = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateKeyValueStoreInput) SetName(v string) *CreateKeyValueStoreInput { + s.Name = &v + return s +} + +type CreateKeyValueStoreOutput struct { + _ struct{} `type:"structure" payload:"KeyValueStore"` + + // The ETag in the resulting Key Value Store. + ETag *string `location:"header" locationName:"ETag" type:"string"` + + // The resulting Key Value Store. + KeyValueStore *KeyValueStore `type:"structure"` + + // The location of the resulting Key Value Store. + Location *string `location:"header" locationName:"Location" 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 CreateKeyValueStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKeyValueStoreOutput) GoString() string { + return s.String() +} + +// SetETag sets the ETag field's value. +func (s *CreateKeyValueStoreOutput) SetETag(v string) *CreateKeyValueStoreOutput { + s.ETag = &v + return s +} + +// SetKeyValueStore sets the KeyValueStore field's value. +func (s *CreateKeyValueStoreOutput) SetKeyValueStore(v *KeyValueStore) *CreateKeyValueStoreOutput { + s.KeyValueStore = v + return s +} + +// SetLocation sets the Location field's value. +func (s *CreateKeyValueStoreOutput) SetLocation(v string) *CreateKeyValueStoreOutput { + s.Location = &v + return s +} + type CreateMonitoringSubscriptionInput struct { _ struct{} `locationName:"CreateMonitoringSubscriptionRequest" type:"structure" payload:"MonitoringSubscription"` @@ -17487,6 +18111,91 @@ return s.String() } +type DeleteKeyValueStoreInput struct { + _ struct{} `locationName:"DeleteKeyValueStoreRequest" type:"structure"` + + // The Key Value Store to delete, if a match occurs. + // + // IfMatch is a required field + IfMatch *string `location:"header" locationName:"If-Match" type:"string" required:"true"` + + // The name of the Key Value Store. + // + // Name is a required field + Name *string `location:"uri" locationName:"Name" 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 DeleteKeyValueStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyValueStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteKeyValueStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKeyValueStoreInput"} + if s.IfMatch == nil { + invalidParams.Add(request.NewErrParamRequired("IfMatch")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIfMatch sets the IfMatch field's value. +func (s *DeleteKeyValueStoreInput) SetIfMatch(v string) *DeleteKeyValueStoreInput { + s.IfMatch = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteKeyValueStoreInput) SetName(v string) *DeleteKeyValueStoreInput { + s.Name = &v + return s +} + +type DeleteKeyValueStoreOutput 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 DeleteKeyValueStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyValueStoreOutput) GoString() string { + return s.String() +} + type DeleteMonitoringSubscriptionInput struct { _ struct{} `locationName:"DeleteMonitoringSubscriptionRequest" type:"structure"` @@ -18130,6 +18839,95 @@ return s } +type DescribeKeyValueStoreInput struct { + _ struct{} `locationName:"DescribeKeyValueStoreRequest" type:"structure"` + + // The name of the Key Value Store. + // + // Name is a required field + Name *string `location:"uri" locationName:"Name" 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 DescribeKeyValueStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeKeyValueStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeKeyValueStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeKeyValueStoreInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DescribeKeyValueStoreInput) SetName(v string) *DescribeKeyValueStoreInput { + s.Name = &v + return s +} + +type DescribeKeyValueStoreOutput struct { + _ struct{} `type:"structure" payload:"KeyValueStore"` + + // The ETag of the resulting Key Value Store. + ETag *string `location:"header" locationName:"ETag" type:"string"` + + // The resulting Key Value Store. + KeyValueStore *KeyValueStore `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 DescribeKeyValueStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeKeyValueStoreOutput) GoString() string { + return s.String() +} + +// SetETag sets the ETag field's value. +func (s *DescribeKeyValueStoreOutput) SetETag(v string) *DescribeKeyValueStoreOutput { + s.ETag = &v + return s +} + +// SetKeyValueStore sets the KeyValueStore field's value. +func (s *DescribeKeyValueStoreOutput) SetKeyValueStore(v *KeyValueStore) *DescribeKeyValueStoreOutput { + s.KeyValueStore = v + return s +} + // A distribution tells CloudFront where you want content to be delivered from, // and the details about how to track and manage content delivery. type Distribution struct { @@ -19558,7 +20356,7 @@ return s } -// List of field-level encrpytion configurations. +// List of field-level encryption configurations. type FieldLevelEncryptionList struct { _ struct{} `type:"structure"` @@ -19860,7 +20658,7 @@ // Id is a required field Id *string `type:"string" required:"true"` - // The time when the the field-level encryption profile summary was last updated. + // The time when the field-level encryption profile summary was last updated. // // LastModifiedTime is a required field LastModifiedTime *time.Time `type:"timestamp" required:"true"` @@ -20380,7 +21178,10 @@ // Comment is a required field Comment *string `type:"string" required:"true"` - // The function's runtime environment verion. + // The configuration for the Key Value Store associations. + KeyValueStoreAssociations *KeyValueStoreAssociations `type:"structure"` + + // The function's runtime environment version. // // Runtime is a required field Runtime *string `type:"string" required:"true" enum:"FunctionRuntime"` @@ -20413,6 +21214,11 @@ if s.Runtime == nil { invalidParams.Add(request.NewErrParamRequired("Runtime")) } + if s.KeyValueStoreAssociations != nil { + if err := s.KeyValueStoreAssociations.Validate(); err != nil { + invalidParams.AddNested("KeyValueStoreAssociations", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -20426,6 +21232,12 @@ return s } +// SetKeyValueStoreAssociations sets the KeyValueStoreAssociations field's value. +func (s *FunctionConfig) SetKeyValueStoreAssociations(v *KeyValueStoreAssociations) *FunctionConfig { + s.KeyValueStoreAssociations = v + return s +} + // SetRuntime sets the Runtime field's value. func (s *FunctionConfig) SetRuntime(v string) *FunctionConfig { s.Runtime = &v @@ -23331,6 +24143,67 @@ return s } +// The import source for the Key Value Store. +type ImportSource struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the import source for the Key Value Store. + // + // SourceARN is a required field + SourceARN *string `type:"string" required:"true"` + + // The source type of the import source for the Key Value Store. + // + // SourceType is a required field + SourceType *string `type:"string" required:"true" enum:"ImportSourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImportSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportSource"} + if s.SourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("SourceARN")) + } + if s.SourceType == nil { + invalidParams.Add(request.NewErrParamRequired("SourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSourceARN sets the SourceARN field's value. +func (s *ImportSource) SetSourceARN(v string) *ImportSource { + s.SourceARN = &v + return s +} + +// SetSourceType sets the SourceType field's value. +func (s *ImportSource) SetSourceType(v string) *ImportSource { + s.SourceType = &v + return s +} + // An invalidation. type Invalidation struct { _ struct{} `type:"structure"` @@ -23950,6 +24823,271 @@ return s } +// The Key Value Store. Use this to separate data from function code, allowing +// you to update data without having to publish a new version of a function. +// The Key Value Store holds keys and their corresponding values. +type KeyValueStore struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // ARN is a required field + ARN *string `type:"string" required:"true"` + + // A comment for the Key Value Store. + // + // Comment is a required field + Comment *string `type:"string" required:"true"` + + // The unique Id for the Key Value Store. + // + // Id is a required field + Id *string `type:"string" required:"true"` + + // The last-modified time of the Key Value Store. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `type:"timestamp" required:"true"` + + // The name of the Key Value Store. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // The status of the Key Value Store. + Status *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 KeyValueStore) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValueStore) GoString() string { + return s.String() +} + +// SetARN sets the ARN field's value. +func (s *KeyValueStore) SetARN(v string) *KeyValueStore { + s.ARN = &v + return s +} + +// SetComment sets the Comment field's value. +func (s *KeyValueStore) SetComment(v string) *KeyValueStore { + s.Comment = &v + return s +} + +// SetId sets the Id field's value. +func (s *KeyValueStore) SetId(v string) *KeyValueStore { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *KeyValueStore) SetLastModifiedTime(v time.Time) *KeyValueStore { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *KeyValueStore) SetName(v string) *KeyValueStore { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *KeyValueStore) SetStatus(v string) *KeyValueStore { + s.Status = &v + return s +} + +// The Key Value Store association. +type KeyValueStoreAssociation struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Key Value Store association. + // + // KeyValueStoreARN is a required field + KeyValueStoreARN *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValueStoreAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValueStoreAssociation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KeyValueStoreAssociation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KeyValueStoreAssociation"} + if s.KeyValueStoreARN == nil { + invalidParams.Add(request.NewErrParamRequired("KeyValueStoreARN")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKeyValueStoreARN sets the KeyValueStoreARN field's value. +func (s *KeyValueStoreAssociation) SetKeyValueStoreARN(v string) *KeyValueStoreAssociation { + s.KeyValueStoreARN = &v + return s +} + +// The Key Value Store associations. +type KeyValueStoreAssociations struct { + _ struct{} `type:"structure"` + + // The items of the Key Value Store association. + Items []*KeyValueStoreAssociation `locationNameList:"KeyValueStoreAssociation" type:"list"` + + // The quantity of Key Value Store associations. + // + // Quantity is a required field + Quantity *int64 `type:"integer" 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 KeyValueStoreAssociations) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValueStoreAssociations) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KeyValueStoreAssociations) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KeyValueStoreAssociations"} + if s.Quantity == nil { + invalidParams.Add(request.NewErrParamRequired("Quantity")) + } + if s.Items != nil { + for i, v := range s.Items { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetItems sets the Items field's value. +func (s *KeyValueStoreAssociations) SetItems(v []*KeyValueStoreAssociation) *KeyValueStoreAssociations { + s.Items = v + return s +} + +// SetQuantity sets the Quantity field's value. +func (s *KeyValueStoreAssociations) SetQuantity(v int64) *KeyValueStoreAssociations { + s.Quantity = &v + return s +} + +// The Key Value Store list. +type KeyValueStoreList struct { + _ struct{} `type:"structure"` + + // The items of the Key Value Store list. + Items []*KeyValueStore `locationNameList:"KeyValueStore" type:"list"` + + // The maximum number of items in the Key Value Store list. + // + // MaxItems is a required field + MaxItems *int64 `type:"integer" required:"true"` + + // The next marker associated with the Key Value Store list. + NextMarker *string `type:"string"` + + // The quantity of the Key Value Store list. + // + // Quantity is a required field + Quantity *int64 `type:"integer" 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 KeyValueStoreList) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyValueStoreList) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *KeyValueStoreList) SetItems(v []*KeyValueStore) *KeyValueStoreList { + s.Items = v + return s +} + +// SetMaxItems sets the MaxItems field's value. +func (s *KeyValueStoreList) SetMaxItems(v int64) *KeyValueStoreList { + s.MaxItems = &v + return s +} + +// SetNextMarker sets the NextMarker field's value. +func (s *KeyValueStoreList) SetNextMarker(v string) *KeyValueStoreList { + s.NextMarker = &v + return s +} + +// SetQuantity sets the Quantity field's value. +func (s *KeyValueStoreList) SetQuantity(v int64) *KeyValueStoreList { + s.Quantity = &v + return s +} + // Contains information about the Amazon Kinesis data stream where you are sending // real-time log data. type KinesisStreamConfig struct { @@ -25649,6 +26787,86 @@ return s } +type ListKeyValueStoresInput struct { + _ struct{} `locationName:"ListKeyValueStoresRequest" type:"structure"` + + // The marker associated with the Key Value Stores list. + Marker *string `location:"querystring" locationName:"Marker" type:"string"` + + // The maximum number of items in the Key Value Stores list. + MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"` + + // The status of the request for the Key Value Stores list. + Status *string `location:"querystring" locationName:"Status" 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 ListKeyValueStoresInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeyValueStoresInput) GoString() string { + return s.String() +} + +// SetMarker sets the Marker field's value. +func (s *ListKeyValueStoresInput) SetMarker(v string) *ListKeyValueStoresInput { + s.Marker = &v + return s +} + +// SetMaxItems sets the MaxItems field's value. +func (s *ListKeyValueStoresInput) SetMaxItems(v int64) *ListKeyValueStoresInput { + s.MaxItems = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListKeyValueStoresInput) SetStatus(v string) *ListKeyValueStoresInput { + s.Status = &v + return s +} + +type ListKeyValueStoresOutput struct { + _ struct{} `type:"structure" payload:"KeyValueStoreList"` + + // The resulting Key Value Stores list. + KeyValueStoreList *KeyValueStoreList `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 ListKeyValueStoresOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeyValueStoresOutput) GoString() string { + return s.String() +} + +// SetKeyValueStoreList sets the KeyValueStoreList field's value. +func (s *ListKeyValueStoresOutput) SetKeyValueStoreList(v *KeyValueStoreList) *ListKeyValueStoresOutput { + s.KeyValueStoreList = v + return s +} + type ListOriginAccessControlsInput struct { _ struct{} `locationName:"ListOriginAccessControlsRequest" type:"structure"` @@ -26370,9 +27588,9 @@ // // - Use CustomOriginConfig to specify all other kinds of origins, including: // An Amazon S3 bucket that is configured with static website hosting An -// Elastic Load Balancing load balancer An AWS Elemental MediaPackage endpoint -// An AWS Elemental MediaStore container Any other HTTP server, running on -// an Amazon EC2 instance or any other kind of host +// Elastic Load Balancing load balancer An Elemental MediaPackage endpoint +// An Elemental MediaStore container Any other HTTP server, running on an +// Amazon EC2 instance or any other kind of host // // For the current maximum number of origins that you can specify per distribution, // see General Quotas on Web Distributions (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html#limits-web-distributions) @@ -27291,7 +28509,7 @@ // An origin group includes two origins (a primary origin and a second origin // to failover to) and a failover criteria that you specify. You create an origin // group to support origin failover in CloudFront. When you create or update -// a distribution, you can specifiy the origin group instead of a single origin, +// a distribution, you can specify the origin group instead of a single origin, // and CloudFront will failover from the primary origin to the second origin // under the failover conditions that you've chosen. type OriginGroup struct { @@ -34281,6 +35499,123 @@ return s } +type UpdateKeyValueStoreInput struct { + _ struct{} `locationName:"UpdateKeyValueStoreRequest" type:"structure" xmlURI:"http://cloudfront.amazonaws.com/doc/2020-05-31/"` + + // The comment of the Key Value Store to update. + // + // Comment is a required field + Comment *string `type:"string" required:"true"` + + // The Key Value Store to update, if a match occurs. + // + // IfMatch is a required field + IfMatch *string `location:"header" locationName:"If-Match" type:"string" required:"true"` + + // The name of the Key Value Store to update. + // + // Name is a required field + Name *string `location:"uri" locationName:"Name" 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 UpdateKeyValueStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKeyValueStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateKeyValueStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateKeyValueStoreInput"} + if s.Comment == nil { + invalidParams.Add(request.NewErrParamRequired("Comment")) + } + if s.IfMatch == nil { + invalidParams.Add(request.NewErrParamRequired("IfMatch")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComment sets the Comment field's value. +func (s *UpdateKeyValueStoreInput) SetComment(v string) *UpdateKeyValueStoreInput { + s.Comment = &v + return s +} + +// SetIfMatch sets the IfMatch field's value. +func (s *UpdateKeyValueStoreInput) SetIfMatch(v string) *UpdateKeyValueStoreInput { + s.IfMatch = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateKeyValueStoreInput) SetName(v string) *UpdateKeyValueStoreInput { + s.Name = &v + return s +} + +type UpdateKeyValueStoreOutput struct { + _ struct{} `type:"structure" payload:"KeyValueStore"` + + // The ETag of the resulting Key Value Store. + ETag *string `location:"header" locationName:"ETag" type:"string"` + + // The resulting Key Value Store to update. + KeyValueStore *KeyValueStore `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 UpdateKeyValueStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKeyValueStoreOutput) GoString() string { + return s.String() +} + +// SetETag sets the ETag field's value. +func (s *UpdateKeyValueStoreOutput) SetETag(v string) *UpdateKeyValueStoreOutput { + s.ETag = &v + return s +} + +// SetKeyValueStore sets the KeyValueStore field's value. +func (s *UpdateKeyValueStoreOutput) SetKeyValueStore(v *KeyValueStore) *UpdateKeyValueStoreOutput { + s.KeyValueStore = v + return s +} + type UpdateOriginAccessControlInput struct { _ struct{} `locationName:"UpdateOriginAccessControlRequest" type:"structure" payload:"OriginAccessControlConfig"` @@ -35467,6 +36802,18 @@ } } +const ( + // ImportSourceTypeS3 is a ImportSourceType enum value + ImportSourceTypeS3 = "S3" +) + +// ImportSourceType_Values returns all elements of the ImportSourceType enum +func ImportSourceType_Values() []string { + return []string{ + ImportSourceTypeS3, + } +} + const ( // ItemSelectionNone is a ItemSelection enum value ItemSelectionNone = "none" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/cloudfrontiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/cloudfrontiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/cloudfrontiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/cloudfrontiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -108,6 +108,10 @@ CreateKeyGroupWithContext(aws.Context, *cloudfront.CreateKeyGroupInput, ...request.Option) (*cloudfront.CreateKeyGroupOutput, error) CreateKeyGroupRequest(*cloudfront.CreateKeyGroupInput) (*request.Request, *cloudfront.CreateKeyGroupOutput) + CreateKeyValueStore(*cloudfront.CreateKeyValueStoreInput) (*cloudfront.CreateKeyValueStoreOutput, error) + CreateKeyValueStoreWithContext(aws.Context, *cloudfront.CreateKeyValueStoreInput, ...request.Option) (*cloudfront.CreateKeyValueStoreOutput, error) + CreateKeyValueStoreRequest(*cloudfront.CreateKeyValueStoreInput) (*request.Request, *cloudfront.CreateKeyValueStoreOutput) + CreateMonitoringSubscription(*cloudfront.CreateMonitoringSubscriptionInput) (*cloudfront.CreateMonitoringSubscriptionOutput, error) CreateMonitoringSubscriptionWithContext(aws.Context, *cloudfront.CreateMonitoringSubscriptionInput, ...request.Option) (*cloudfront.CreateMonitoringSubscriptionOutput, error) CreateMonitoringSubscriptionRequest(*cloudfront.CreateMonitoringSubscriptionInput) (*request.Request, *cloudfront.CreateMonitoringSubscriptionOutput) @@ -172,6 +176,10 @@ DeleteKeyGroupWithContext(aws.Context, *cloudfront.DeleteKeyGroupInput, ...request.Option) (*cloudfront.DeleteKeyGroupOutput, error) DeleteKeyGroupRequest(*cloudfront.DeleteKeyGroupInput) (*request.Request, *cloudfront.DeleteKeyGroupOutput) + DeleteKeyValueStore(*cloudfront.DeleteKeyValueStoreInput) (*cloudfront.DeleteKeyValueStoreOutput, error) + DeleteKeyValueStoreWithContext(aws.Context, *cloudfront.DeleteKeyValueStoreInput, ...request.Option) (*cloudfront.DeleteKeyValueStoreOutput, error) + DeleteKeyValueStoreRequest(*cloudfront.DeleteKeyValueStoreInput) (*request.Request, *cloudfront.DeleteKeyValueStoreOutput) + DeleteMonitoringSubscription(*cloudfront.DeleteMonitoringSubscriptionInput) (*cloudfront.DeleteMonitoringSubscriptionOutput, error) DeleteMonitoringSubscriptionWithContext(aws.Context, *cloudfront.DeleteMonitoringSubscriptionInput, ...request.Option) (*cloudfront.DeleteMonitoringSubscriptionOutput, error) DeleteMonitoringSubscriptionRequest(*cloudfront.DeleteMonitoringSubscriptionInput) (*request.Request, *cloudfront.DeleteMonitoringSubscriptionOutput) @@ -204,6 +212,10 @@ DescribeFunctionWithContext(aws.Context, *cloudfront.DescribeFunctionInput, ...request.Option) (*cloudfront.DescribeFunctionOutput, error) DescribeFunctionRequest(*cloudfront.DescribeFunctionInput) (*request.Request, *cloudfront.DescribeFunctionOutput) + DescribeKeyValueStore(*cloudfront.DescribeKeyValueStoreInput) (*cloudfront.DescribeKeyValueStoreOutput, error) + DescribeKeyValueStoreWithContext(aws.Context, *cloudfront.DescribeKeyValueStoreInput, ...request.Option) (*cloudfront.DescribeKeyValueStoreOutput, error) + DescribeKeyValueStoreRequest(*cloudfront.DescribeKeyValueStoreInput) (*request.Request, *cloudfront.DescribeKeyValueStoreOutput) + GetCachePolicy(*cloudfront.GetCachePolicyInput) (*cloudfront.GetCachePolicyOutput, error) GetCachePolicyWithContext(aws.Context, *cloudfront.GetCachePolicyInput, ...request.Option) (*cloudfront.GetCachePolicyOutput, error) GetCachePolicyRequest(*cloudfront.GetCachePolicyInput) (*request.Request, *cloudfront.GetCachePolicyOutput) @@ -389,6 +401,13 @@ ListKeyGroupsWithContext(aws.Context, *cloudfront.ListKeyGroupsInput, ...request.Option) (*cloudfront.ListKeyGroupsOutput, error) ListKeyGroupsRequest(*cloudfront.ListKeyGroupsInput) (*request.Request, *cloudfront.ListKeyGroupsOutput) + ListKeyValueStores(*cloudfront.ListKeyValueStoresInput) (*cloudfront.ListKeyValueStoresOutput, error) + ListKeyValueStoresWithContext(aws.Context, *cloudfront.ListKeyValueStoresInput, ...request.Option) (*cloudfront.ListKeyValueStoresOutput, error) + ListKeyValueStoresRequest(*cloudfront.ListKeyValueStoresInput) (*request.Request, *cloudfront.ListKeyValueStoresOutput) + + ListKeyValueStoresPages(*cloudfront.ListKeyValueStoresInput, func(*cloudfront.ListKeyValueStoresOutput, bool) bool) error + ListKeyValueStoresPagesWithContext(aws.Context, *cloudfront.ListKeyValueStoresInput, func(*cloudfront.ListKeyValueStoresOutput, bool) bool, ...request.Option) error + ListOriginAccessControls(*cloudfront.ListOriginAccessControlsInput) (*cloudfront.ListOriginAccessControlsOutput, error) ListOriginAccessControlsWithContext(aws.Context, *cloudfront.ListOriginAccessControlsInput, ...request.Option) (*cloudfront.ListOriginAccessControlsOutput, error) ListOriginAccessControlsRequest(*cloudfront.ListOriginAccessControlsInput) (*request.Request, *cloudfront.ListOriginAccessControlsOutput) @@ -472,6 +491,10 @@ UpdateKeyGroupWithContext(aws.Context, *cloudfront.UpdateKeyGroupInput, ...request.Option) (*cloudfront.UpdateKeyGroupOutput, error) UpdateKeyGroupRequest(*cloudfront.UpdateKeyGroupInput) (*request.Request, *cloudfront.UpdateKeyGroupOutput) + UpdateKeyValueStore(*cloudfront.UpdateKeyValueStoreInput) (*cloudfront.UpdateKeyValueStoreOutput, error) + UpdateKeyValueStoreWithContext(aws.Context, *cloudfront.UpdateKeyValueStoreInput, ...request.Option) (*cloudfront.UpdateKeyValueStoreOutput, error) + UpdateKeyValueStoreRequest(*cloudfront.UpdateKeyValueStoreInput) (*request.Request, *cloudfront.UpdateKeyValueStoreOutput) + UpdateOriginAccessControl(*cloudfront.UpdateOriginAccessControlInput) (*cloudfront.UpdateOriginAccessControlOutput, error) UpdateOriginAccessControlWithContext(aws.Context, *cloudfront.UpdateOriginAccessControlInput, ...request.Option) (*cloudfront.UpdateOriginAccessControlOutput, error) UpdateOriginAccessControlRequest(*cloudfront.UpdateOriginAccessControlInput) (*request.Request, *cloudfront.UpdateOriginAccessControlOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -42,6 +42,12 @@ // You can't change the value of a public key. ErrCodeCannotChangeImmutablePublicKeyFields = "CannotChangeImmutablePublicKeyFields" + // ErrCodeCannotDeleteEntityWhileInUse for service response error code + // "CannotDeleteEntityWhileInUse". + // + // The Key Value Store entity cannot be deleted while it is in use. + ErrCodeCannotDeleteEntityWhileInUse = "CannotDeleteEntityWhileInUse" + // ErrCodeContinuousDeploymentPolicyAlreadyExists for service response error code // "ContinuousDeploymentPolicyAlreadyExists". // @@ -69,6 +75,31 @@ // distribution before you can delete it. ErrCodeDistributionNotDisabled = "DistributionNotDisabled" + // ErrCodeEntityAlreadyExists for service response error code + // "EntityAlreadyExists". + // + // The Key Value Store entity already exists. You must provide a unique Key + // Value Store entity. + ErrCodeEntityAlreadyExists = "EntityAlreadyExists" + + // ErrCodeEntityLimitExceeded for service response error code + // "EntityLimitExceeded". + // + // The Key Value Store entity limit has been exceeded. + ErrCodeEntityLimitExceeded = "EntityLimitExceeded" + + // ErrCodeEntityNotFound for service response error code + // "EntityNotFound". + // + // The Key Value Store entity was not found. + ErrCodeEntityNotFound = "EntityNotFound" + + // ErrCodeEntitySizeLimitExceeded for service response error code + // "EntitySizeLimitExceeded". + // + // The Key Value Store entity size limit was exceeded. + ErrCodeEntitySizeLimitExceeded = "EntitySizeLimitExceeded" + // ErrCodeFieldLevelEncryptionConfigAlreadyExists for service response error code // "FieldLevelEncryptionConfigAlreadyExists". // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfront/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfront/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -25,236 +25,41 @@ return &t } -// - -func ExampleCloudFront_CreateCloudFrontOriginAccessIdentity_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.CreateCloudFrontOriginAccessIdentityInput{} - - result, err := svc.CreateCloudFrontOriginAccessIdentity(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeOriginAccessIdentityAlreadyExists: - fmt.Println(cloudfront.ErrCodeOriginAccessIdentityAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeTooManyCloudFrontOriginAccessIdentities: - fmt.Println(cloudfront.ErrCodeTooManyCloudFrontOriginAccessIdentities, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_CreateDistribution_shared00() { +// To create a function +// Use the following command to create a function. +func ExampleCloudFront_CreateFunction_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.CreateDistributionInput{} - - result, err := svc.CreateDistribution(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeCNAMEAlreadyExists: - fmt.Println(cloudfront.ErrCodeCNAMEAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeDistributionAlreadyExists: - fmt.Println(cloudfront.ErrCodeDistributionAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeInvalidOrigin: - fmt.Println(cloudfront.ErrCodeInvalidOrigin, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeInvalidOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeTooManyTrustedSigners: - fmt.Println(cloudfront.ErrCodeTooManyTrustedSigners, aerr.Error()) - case cloudfront.ErrCodeTrustedSignerDoesNotExist: - fmt.Println(cloudfront.ErrCodeTrustedSignerDoesNotExist, aerr.Error()) - case cloudfront.ErrCodeInvalidViewerCertificate: - fmt.Println(cloudfront.ErrCodeInvalidViewerCertificate, aerr.Error()) - case cloudfront.ErrCodeInvalidMinimumProtocolVersion: - fmt.Println(cloudfront.ErrCodeInvalidMinimumProtocolVersion, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributionCNAMEs: - fmt.Println(cloudfront.ErrCodeTooManyDistributionCNAMEs, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributions: - fmt.Println(cloudfront.ErrCodeTooManyDistributions, aerr.Error()) - case cloudfront.ErrCodeInvalidDefaultRootObject: - fmt.Println(cloudfront.ErrCodeInvalidDefaultRootObject, aerr.Error()) - case cloudfront.ErrCodeInvalidRelativePath: - fmt.Println(cloudfront.ErrCodeInvalidRelativePath, aerr.Error()) - case cloudfront.ErrCodeInvalidErrorCode: - fmt.Println(cloudfront.ErrCodeInvalidErrorCode, aerr.Error()) - case cloudfront.ErrCodeInvalidResponseCode: - fmt.Println(cloudfront.ErrCodeInvalidResponseCode, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidRequiredProtocol: - fmt.Println(cloudfront.ErrCodeInvalidRequiredProtocol, aerr.Error()) - case cloudfront.ErrCodeNoSuchOrigin: - fmt.Println(cloudfront.ErrCodeNoSuchOrigin, aerr.Error()) - case cloudfront.ErrCodeTooManyOrigins: - fmt.Println(cloudfront.ErrCodeTooManyOrigins, aerr.Error()) - case cloudfront.ErrCodeTooManyCacheBehaviors: - fmt.Println(cloudfront.ErrCodeTooManyCacheBehaviors, aerr.Error()) - case cloudfront.ErrCodeTooManyCookieNamesInWhiteList: - fmt.Println(cloudfront.ErrCodeTooManyCookieNamesInWhiteList, aerr.Error()) - case cloudfront.ErrCodeInvalidForwardCookies: - fmt.Println(cloudfront.ErrCodeInvalidForwardCookies, aerr.Error()) - case cloudfront.ErrCodeTooManyHeadersInForwardedValues: - fmt.Println(cloudfront.ErrCodeTooManyHeadersInForwardedValues, aerr.Error()) - case cloudfront.ErrCodeInvalidHeadersForS3Origin: - fmt.Println(cloudfront.ErrCodeInvalidHeadersForS3Origin, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) - case cloudfront.ErrCodeTooManyCertificates: - fmt.Println(cloudfront.ErrCodeTooManyCertificates, aerr.Error()) - case cloudfront.ErrCodeInvalidLocationCode: - fmt.Println(cloudfront.ErrCodeInvalidLocationCode, aerr.Error()) - case cloudfront.ErrCodeInvalidGeoRestrictionParameter: - fmt.Println(cloudfront.ErrCodeInvalidGeoRestrictionParameter, aerr.Error()) - case cloudfront.ErrCodeInvalidProtocolSettings: - fmt.Println(cloudfront.ErrCodeInvalidProtocolSettings, aerr.Error()) - case cloudfront.ErrCodeInvalidTTLOrder: - fmt.Println(cloudfront.ErrCodeInvalidTTLOrder, aerr.Error()) - case cloudfront.ErrCodeInvalidWebACLId: - fmt.Println(cloudfront.ErrCodeInvalidWebACLId, aerr.Error()) - case cloudfront.ErrCodeTooManyOriginCustomHeaders: - fmt.Println(cloudfront.ErrCodeTooManyOriginCustomHeaders, aerr.Error()) - case cloudfront.ErrCodeTooManyQueryStringParameters: - fmt.Println(cloudfront.ErrCodeTooManyQueryStringParameters, aerr.Error()) - case cloudfront.ErrCodeInvalidQueryStringParameters: - fmt.Println(cloudfront.ErrCodeInvalidQueryStringParameters, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributionsWithLambdaAssociations: - fmt.Println(cloudfront.ErrCodeTooManyDistributionsWithLambdaAssociations, aerr.Error()) - case cloudfront.ErrCodeTooManyLambdaFunctionAssociations: - fmt.Println(cloudfront.ErrCodeTooManyLambdaFunctionAssociations, aerr.Error()) - case cloudfront.ErrCodeInvalidLambdaFunctionAssociation: - fmt.Println(cloudfront.ErrCodeInvalidLambdaFunctionAssociation, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginReadTimeout: - fmt.Println(cloudfront.ErrCodeInvalidOriginReadTimeout, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginKeepaliveTimeout: - fmt.Println(cloudfront.ErrCodeInvalidOriginKeepaliveTimeout, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return + input := &cloudfront.CreateFunctionInput{ + FunctionCode: []byte("function-code.js"), + FunctionConfig: &cloudfront.FunctionConfig{ + Comment: aws.String("my-function-comment"), + KeyValueStoreAssociations: &cloudfront.KeyValueStoreAssociations{ + Items: []*cloudfront.KeyValueStoreAssociation{ + { + KeyValueStoreARN: aws.String("arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889"), + }, + }, + Quantity: aws.Int64(1), + }, + Runtime: aws.String("cloudfront-js-2.0"), + }, + Name: aws.String("my-function-name"), } - fmt.Println(result) -} - -// - -func ExampleCloudFront_CreateDistributionWithTags_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.CreateDistributionWithTagsInput{} - - result, err := svc.CreateDistributionWithTags(input) + result, err := svc.CreateFunction(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { - case cloudfront.ErrCodeCNAMEAlreadyExists: - fmt.Println(cloudfront.ErrCodeCNAMEAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeDistributionAlreadyExists: - fmt.Println(cloudfront.ErrCodeDistributionAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeInvalidOrigin: - fmt.Println(cloudfront.ErrCodeInvalidOrigin, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeInvalidOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeTooManyTrustedSigners: - fmt.Println(cloudfront.ErrCodeTooManyTrustedSigners, aerr.Error()) - case cloudfront.ErrCodeTrustedSignerDoesNotExist: - fmt.Println(cloudfront.ErrCodeTrustedSignerDoesNotExist, aerr.Error()) - case cloudfront.ErrCodeInvalidViewerCertificate: - fmt.Println(cloudfront.ErrCodeInvalidViewerCertificate, aerr.Error()) - case cloudfront.ErrCodeInvalidMinimumProtocolVersion: - fmt.Println(cloudfront.ErrCodeInvalidMinimumProtocolVersion, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributionCNAMEs: - fmt.Println(cloudfront.ErrCodeTooManyDistributionCNAMEs, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributions: - fmt.Println(cloudfront.ErrCodeTooManyDistributions, aerr.Error()) - case cloudfront.ErrCodeInvalidDefaultRootObject: - fmt.Println(cloudfront.ErrCodeInvalidDefaultRootObject, aerr.Error()) - case cloudfront.ErrCodeInvalidRelativePath: - fmt.Println(cloudfront.ErrCodeInvalidRelativePath, aerr.Error()) - case cloudfront.ErrCodeInvalidErrorCode: - fmt.Println(cloudfront.ErrCodeInvalidErrorCode, aerr.Error()) - case cloudfront.ErrCodeInvalidResponseCode: - fmt.Println(cloudfront.ErrCodeInvalidResponseCode, aerr.Error()) + case cloudfront.ErrCodeTooManyFunctions: + fmt.Println(cloudfront.ErrCodeTooManyFunctions, aerr.Error()) + case cloudfront.ErrCodeFunctionAlreadyExists: + fmt.Println(cloudfront.ErrCodeFunctionAlreadyExists, aerr.Error()) + case cloudfront.ErrCodeFunctionSizeLimitExceeded: + fmt.Println(cloudfront.ErrCodeFunctionSizeLimitExceeded, aerr.Error()) case cloudfront.ErrCodeInvalidArgument: fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidRequiredProtocol: - fmt.Println(cloudfront.ErrCodeInvalidRequiredProtocol, aerr.Error()) - case cloudfront.ErrCodeNoSuchOrigin: - fmt.Println(cloudfront.ErrCodeNoSuchOrigin, aerr.Error()) - case cloudfront.ErrCodeTooManyOrigins: - fmt.Println(cloudfront.ErrCodeTooManyOrigins, aerr.Error()) - case cloudfront.ErrCodeTooManyCacheBehaviors: - fmt.Println(cloudfront.ErrCodeTooManyCacheBehaviors, aerr.Error()) - case cloudfront.ErrCodeTooManyCookieNamesInWhiteList: - fmt.Println(cloudfront.ErrCodeTooManyCookieNamesInWhiteList, aerr.Error()) - case cloudfront.ErrCodeInvalidForwardCookies: - fmt.Println(cloudfront.ErrCodeInvalidForwardCookies, aerr.Error()) - case cloudfront.ErrCodeTooManyHeadersInForwardedValues: - fmt.Println(cloudfront.ErrCodeTooManyHeadersInForwardedValues, aerr.Error()) - case cloudfront.ErrCodeInvalidHeadersForS3Origin: - fmt.Println(cloudfront.ErrCodeInvalidHeadersForS3Origin, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) - case cloudfront.ErrCodeTooManyCertificates: - fmt.Println(cloudfront.ErrCodeTooManyCertificates, aerr.Error()) - case cloudfront.ErrCodeInvalidLocationCode: - fmt.Println(cloudfront.ErrCodeInvalidLocationCode, aerr.Error()) - case cloudfront.ErrCodeInvalidGeoRestrictionParameter: - fmt.Println(cloudfront.ErrCodeInvalidGeoRestrictionParameter, aerr.Error()) - case cloudfront.ErrCodeInvalidProtocolSettings: - fmt.Println(cloudfront.ErrCodeInvalidProtocolSettings, aerr.Error()) - case cloudfront.ErrCodeInvalidTTLOrder: - fmt.Println(cloudfront.ErrCodeInvalidTTLOrder, aerr.Error()) - case cloudfront.ErrCodeInvalidWebACLId: - fmt.Println(cloudfront.ErrCodeInvalidWebACLId, aerr.Error()) - case cloudfront.ErrCodeTooManyOriginCustomHeaders: - fmt.Println(cloudfront.ErrCodeTooManyOriginCustomHeaders, aerr.Error()) - case cloudfront.ErrCodeInvalidTagging: - fmt.Println(cloudfront.ErrCodeInvalidTagging, aerr.Error()) - case cloudfront.ErrCodeTooManyQueryStringParameters: - fmt.Println(cloudfront.ErrCodeTooManyQueryStringParameters, aerr.Error()) - case cloudfront.ErrCodeInvalidQueryStringParameters: - fmt.Println(cloudfront.ErrCodeInvalidQueryStringParameters, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributionsWithLambdaAssociations: - fmt.Println(cloudfront.ErrCodeTooManyDistributionsWithLambdaAssociations, aerr.Error()) - case cloudfront.ErrCodeTooManyLambdaFunctionAssociations: - fmt.Println(cloudfront.ErrCodeTooManyLambdaFunctionAssociations, aerr.Error()) - case cloudfront.ErrCodeInvalidLambdaFunctionAssociation: - fmt.Println(cloudfront.ErrCodeInvalidLambdaFunctionAssociation, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginReadTimeout: - fmt.Println(cloudfront.ErrCodeInvalidOriginReadTimeout, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginKeepaliveTimeout: - fmt.Println(cloudfront.ErrCodeInvalidOriginKeepaliveTimeout, aerr.Error()) + case cloudfront.ErrCodeUnsupportedOperation: + fmt.Println(cloudfront.ErrCodeUnsupportedOperation, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -269,78 +74,33 @@ fmt.Println(result) } -// - -func ExampleCloudFront_CreateInvalidation_shared00() { +// To create a KeyValueStore +// Use the following command to create a KeyValueStore. +func ExampleCloudFront_CreateKeyValueStore_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.CreateInvalidationInput{} - - result, err := svc.CreateInvalidation(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) - case cloudfront.ErrCodeBatchTooLarge: - fmt.Println(cloudfront.ErrCodeBatchTooLarge, aerr.Error()) - case cloudfront.ErrCodeTooManyInvalidationsInProgress: - fmt.Println(cloudfront.ErrCodeTooManyInvalidationsInProgress, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return + input := &cloudfront.CreateKeyValueStoreInput{ + Comment: aws.String("my-key-valuestore-comment"), + ImportSource: &cloudfront.ImportSource{ + SourceARN: aws.String("arn:aws:s3:::my-bucket/validJSON.json"), + SourceType: aws.String("S3"), + }, + Name: aws.String("my-keyvaluestore-name"), } - fmt.Println(result) -} - -// - -func ExampleCloudFront_CreateStreamingDistribution_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.CreateStreamingDistributionInput{} - - result, err := svc.CreateStreamingDistribution(input) + result, err := svc.CreateKeyValueStore(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { - case cloudfront.ErrCodeCNAMEAlreadyExists: - fmt.Println(cloudfront.ErrCodeCNAMEAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeStreamingDistributionAlreadyExists: - fmt.Println(cloudfront.ErrCodeStreamingDistributionAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeInvalidOrigin: - fmt.Println(cloudfront.ErrCodeInvalidOrigin, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeInvalidOriginAccessIdentity, aerr.Error()) case cloudfront.ErrCodeAccessDenied: fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeTooManyTrustedSigners: - fmt.Println(cloudfront.ErrCodeTooManyTrustedSigners, aerr.Error()) - case cloudfront.ErrCodeTrustedSignerDoesNotExist: - fmt.Println(cloudfront.ErrCodeTrustedSignerDoesNotExist, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeTooManyStreamingDistributionCNAMEs: - fmt.Println(cloudfront.ErrCodeTooManyStreamingDistributionCNAMEs, aerr.Error()) - case cloudfront.ErrCodeTooManyStreamingDistributions: - fmt.Println(cloudfront.ErrCodeTooManyStreamingDistributions, aerr.Error()) + case cloudfront.ErrCodeEntityLimitExceeded: + fmt.Println(cloudfront.ErrCodeEntityLimitExceeded, aerr.Error()) + case cloudfront.ErrCodeEntityAlreadyExists: + fmt.Println(cloudfront.ErrCodeEntityAlreadyExists, aerr.Error()) + case cloudfront.ErrCodeEntitySizeLimitExceeded: + fmt.Println(cloudfront.ErrCodeEntitySizeLimitExceeded, aerr.Error()) case cloudfront.ErrCodeInvalidArgument: fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -355,58 +115,27 @@ fmt.Println(result) } -// - -func ExampleCloudFront_DeleteCloudFrontOriginAccessIdentity_shared00() { +// To delete a KeyValueStore +// Use the following command to delete a KeyValueStore. +func ExampleCloudFront_DeleteKeyValueStore_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.DeleteCloudFrontOriginAccessIdentityInput{} - - result, err := svc.DeleteCloudFrontOriginAccessIdentity(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeInvalidIfMatchVersion: - fmt.Println(cloudfront.ErrCodeInvalidIfMatchVersion, aerr.Error()) - case cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodePreconditionFailed: - fmt.Println(cloudfront.ErrCodePreconditionFailed, aerr.Error()) - case cloudfront.ErrCodeOriginAccessIdentityInUse: - fmt.Println(cloudfront.ErrCodeOriginAccessIdentityInUse, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return + input := &cloudfront.DeleteKeyValueStoreInput{ + IfMatch: aws.String("ETVPDKIKX0DER"), + Name: aws.String("my-keyvaluestore-name"), } - fmt.Println(result) -} - -// - -func ExampleCloudFront_DeleteDistribution_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.DeleteDistributionInput{} - - result, err := svc.DeleteDistribution(input) + result, err := svc.DeleteKeyValueStore(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case cloudfront.ErrCodeAccessDenied: fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeDistributionNotDisabled: - fmt.Println(cloudfront.ErrCodeDistributionNotDisabled, aerr.Error()) case cloudfront.ErrCodeInvalidIfMatchVersion: fmt.Println(cloudfront.ErrCodeInvalidIfMatchVersion, aerr.Error()) - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) + case cloudfront.ErrCodeEntityNotFound: + fmt.Println(cloudfront.ErrCodeEntityNotFound, aerr.Error()) + case cloudfront.ErrCodeCannotDeleteEntityWhileInUse: + fmt.Println(cloudfront.ErrCodeCannotDeleteEntityWhileInUse, aerr.Error()) case cloudfront.ErrCodePreconditionFailed: fmt.Println(cloudfront.ErrCodePreconditionFailed, aerr.Error()) default: @@ -423,276 +152,24 @@ fmt.Println(result) } -// - -func ExampleCloudFront_DeleteStreamingDistribution_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.DeleteStreamingDistributionInput{} - - result, err := svc.DeleteStreamingDistribution(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeStreamingDistributionNotDisabled: - fmt.Println(cloudfront.ErrCodeStreamingDistributionNotDisabled, aerr.Error()) - case cloudfront.ErrCodeInvalidIfMatchVersion: - fmt.Println(cloudfront.ErrCodeInvalidIfMatchVersion, aerr.Error()) - case cloudfront.ErrCodeNoSuchStreamingDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchStreamingDistribution, aerr.Error()) - case cloudfront.ErrCodePreconditionFailed: - fmt.Println(cloudfront.ErrCodePreconditionFailed, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetCloudFrontOriginAccessIdentity_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.GetCloudFrontOriginAccessIdentityInput{} - - result, err := svc.GetCloudFrontOriginAccessIdentity(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetCloudFrontOriginAccessIdentityConfig_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.GetCloudFrontOriginAccessIdentityConfigInput{} - - result, err := svc.GetCloudFrontOriginAccessIdentityConfig(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetDistribution_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.GetDistributionInput{} - - result, err := svc.GetDistribution(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetDistributionConfig_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.GetDistributionConfigInput{} - - result, err := svc.GetDistributionConfig(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetInvalidation_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.GetInvalidationInput{} - - result, err := svc.GetInvalidation(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeNoSuchInvalidation: - fmt.Println(cloudfront.ErrCodeNoSuchInvalidation, aerr.Error()) - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetStreamingDistribution_shared00() { +// To describe a KeyValueStore +// Use the following command to describe a KeyValueStore. +func ExampleCloudFront_DescribeKeyValueStore_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.GetStreamingDistributionInput{} - - result, err := svc.GetStreamingDistribution(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeNoSuchStreamingDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchStreamingDistribution, aerr.Error()) - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return + input := &cloudfront.DescribeKeyValueStoreInput{ + Name: aws.String("my-keyvaluestore-name"), } - fmt.Println(result) -} - -// - -func ExampleCloudFront_GetStreamingDistributionConfig_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.GetStreamingDistributionConfigInput{} - - result, err := svc.GetStreamingDistributionConfig(input) + result, err := svc.DescribeKeyValueStore(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { - case cloudfront.ErrCodeNoSuchStreamingDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchStreamingDistribution, aerr.Error()) case cloudfront.ErrCodeAccessDenied: fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_ListCloudFrontOriginAccessIdentities_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.ListCloudFrontOriginAccessIdentitiesInput{} - - result, err := svc.ListCloudFrontOriginAccessIdentities(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_ListDistributions_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.ListDistributionsInput{} - - result, err := svc.ListDistributions(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { case cloudfront.ErrCodeInvalidArgument: fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) + case cloudfront.ErrCodeEntityNotFound: + fmt.Println(cloudfront.ErrCodeEntityNotFound, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -707,74 +184,22 @@ fmt.Println(result) } -// - -func ExampleCloudFront_ListDistributionsByWebACLId_shared00() { +// To get a list of KeyValueStores +// The following command retrieves a list of KeyValueStores with READY status. +func ExampleCloudFront_ListKeyValueStores_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.ListDistributionsByWebACLIdInput{} - - result, err := svc.ListDistributionsByWebACLId(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidWebACLId: - fmt.Println(cloudfront.ErrCodeInvalidWebACLId, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return + input := &cloudfront.ListKeyValueStoresInput{ + Marker: aws.String(""), + MaxItems: aws.Int64(100), + Status: aws.String("READY"), } - fmt.Println(result) -} - -// - -func ExampleCloudFront_ListInvalidations_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.ListInvalidationsInput{} - - result, err := svc.ListInvalidations(input) + result, err := svc.ListKeyValueStores(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) case cloudfront.ErrCodeAccessDenied: fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_ListStreamingDistributions_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.ListStreamingDistributionsInput{} - - result, err := svc.ListStreamingDistributions(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { case cloudfront.ErrCodeInvalidArgument: fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) default: @@ -791,128 +216,44 @@ fmt.Println(result) } -// - -func ExampleCloudFront_ListTagsForResource_shared00() { +// To update a function +// Use the following command to update a function. +func ExampleCloudFront_UpdateFunction_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.ListTagsForResourceInput{} - - result, err := svc.ListTagsForResource(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidTagging: - fmt.Println(cloudfront.ErrCodeInvalidTagging, aerr.Error()) - case cloudfront.ErrCodeNoSuchResource: - fmt.Println(cloudfront.ErrCodeNoSuchResource, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return + input := &cloudfront.UpdateFunctionInput{ + FunctionCode: []byte("function-code-changed.js"), + FunctionConfig: &cloudfront.FunctionConfig{ + Comment: aws.String("my-changed-comment"), + KeyValueStoreAssociations: &cloudfront.KeyValueStoreAssociations{ + Items: []*cloudfront.KeyValueStoreAssociation{ + { + KeyValueStoreARN: aws.String("arn:aws:cloudfront::123456789012:key-value-store/54947df8-0e9e-4471-a2f9-9af509fb5889"), + }, + }, + Quantity: aws.Int64(1), + }, + Runtime: aws.String("cloudfront-js-2.0"), + }, + IfMatch: aws.String("ETVPDKIKX0DER"), + Name: aws.String("my-function-name"), } - fmt.Println(result) -} - -// - -func ExampleCloudFront_TagResource_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.TagResourceInput{} - - result, err := svc.TagResource(input) + result, err := svc.UpdateFunction(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) case cloudfront.ErrCodeInvalidArgument: fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidTagging: - fmt.Println(cloudfront.ErrCodeInvalidTagging, aerr.Error()) - case cloudfront.ErrCodeNoSuchResource: - fmt.Println(cloudfront.ErrCodeNoSuchResource, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_UntagResource_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.UntagResourceInput{} - - result, err := svc.UntagResource(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidTagging: - fmt.Println(cloudfront.ErrCodeInvalidTagging, aerr.Error()) - case cloudfront.ErrCodeNoSuchResource: - fmt.Println(cloudfront.ErrCodeNoSuchResource, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_UpdateCloudFrontOriginAccessIdentity_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.UpdateCloudFrontOriginAccessIdentityInput{} - - result, err := svc.UpdateCloudFrontOriginAccessIdentity(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeIllegalUpdate: - fmt.Println(cloudfront.ErrCodeIllegalUpdate, aerr.Error()) case cloudfront.ErrCodeInvalidIfMatchVersion: fmt.Println(cloudfront.ErrCodeInvalidIfMatchVersion, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeNoSuchCloudFrontOriginAccessIdentity, aerr.Error()) + case cloudfront.ErrCodeNoSuchFunctionExists: + fmt.Println(cloudfront.ErrCodeNoSuchFunctionExists, aerr.Error()) case cloudfront.ErrCodePreconditionFailed: fmt.Println(cloudfront.ErrCodePreconditionFailed, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) + case cloudfront.ErrCodeFunctionSizeLimitExceeded: + fmt.Println(cloudfront.ErrCodeFunctionSizeLimitExceeded, aerr.Error()) + case cloudfront.ErrCodeUnsupportedOperation: + fmt.Println(cloudfront.ErrCodeUnsupportedOperation, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -927,146 +268,30 @@ fmt.Println(result) } -// - -func ExampleCloudFront_UpdateDistribution_shared00() { +// To update a KeyValueStore +// Use the following command to update a KeyValueStore. +func ExampleCloudFront_UpdateKeyValueStore_shared00() { svc := cloudfront.New(session.New()) - input := &cloudfront.UpdateDistributionInput{} + input := &cloudfront.UpdateKeyValueStoreInput{ + Comment: aws.String("my-changed-comment"), + IfMatch: aws.String("ETVPDKIKX0DER"), + Name: aws.String("my-keyvaluestore-name"), + } - result, err := svc.UpdateDistribution(input) + result, err := svc.UpdateKeyValueStore(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case cloudfront.ErrCodeAccessDenied: fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeCNAMEAlreadyExists: - fmt.Println(cloudfront.ErrCodeCNAMEAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeIllegalUpdate: - fmt.Println(cloudfront.ErrCodeIllegalUpdate, aerr.Error()) - case cloudfront.ErrCodeInvalidIfMatchVersion: - fmt.Println(cloudfront.ErrCodeInvalidIfMatchVersion, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeNoSuchDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchDistribution, aerr.Error()) - case cloudfront.ErrCodePreconditionFailed: - fmt.Println(cloudfront.ErrCodePreconditionFailed, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributionCNAMEs: - fmt.Println(cloudfront.ErrCodeTooManyDistributionCNAMEs, aerr.Error()) - case cloudfront.ErrCodeInvalidDefaultRootObject: - fmt.Println(cloudfront.ErrCodeInvalidDefaultRootObject, aerr.Error()) - case cloudfront.ErrCodeInvalidRelativePath: - fmt.Println(cloudfront.ErrCodeInvalidRelativePath, aerr.Error()) - case cloudfront.ErrCodeInvalidErrorCode: - fmt.Println(cloudfront.ErrCodeInvalidErrorCode, aerr.Error()) - case cloudfront.ErrCodeInvalidResponseCode: - fmt.Println(cloudfront.ErrCodeInvalidResponseCode, aerr.Error()) case cloudfront.ErrCodeInvalidArgument: fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeInvalidOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodeTooManyTrustedSigners: - fmt.Println(cloudfront.ErrCodeTooManyTrustedSigners, aerr.Error()) - case cloudfront.ErrCodeTrustedSignerDoesNotExist: - fmt.Println(cloudfront.ErrCodeTrustedSignerDoesNotExist, aerr.Error()) - case cloudfront.ErrCodeInvalidViewerCertificate: - fmt.Println(cloudfront.ErrCodeInvalidViewerCertificate, aerr.Error()) - case cloudfront.ErrCodeInvalidMinimumProtocolVersion: - fmt.Println(cloudfront.ErrCodeInvalidMinimumProtocolVersion, aerr.Error()) - case cloudfront.ErrCodeInvalidRequiredProtocol: - fmt.Println(cloudfront.ErrCodeInvalidRequiredProtocol, aerr.Error()) - case cloudfront.ErrCodeNoSuchOrigin: - fmt.Println(cloudfront.ErrCodeNoSuchOrigin, aerr.Error()) - case cloudfront.ErrCodeTooManyOrigins: - fmt.Println(cloudfront.ErrCodeTooManyOrigins, aerr.Error()) - case cloudfront.ErrCodeTooManyCacheBehaviors: - fmt.Println(cloudfront.ErrCodeTooManyCacheBehaviors, aerr.Error()) - case cloudfront.ErrCodeTooManyCookieNamesInWhiteList: - fmt.Println(cloudfront.ErrCodeTooManyCookieNamesInWhiteList, aerr.Error()) - case cloudfront.ErrCodeInvalidForwardCookies: - fmt.Println(cloudfront.ErrCodeInvalidForwardCookies, aerr.Error()) - case cloudfront.ErrCodeTooManyHeadersInForwardedValues: - fmt.Println(cloudfront.ErrCodeTooManyHeadersInForwardedValues, aerr.Error()) - case cloudfront.ErrCodeInvalidHeadersForS3Origin: - fmt.Println(cloudfront.ErrCodeInvalidHeadersForS3Origin, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) - case cloudfront.ErrCodeTooManyCertificates: - fmt.Println(cloudfront.ErrCodeTooManyCertificates, aerr.Error()) - case cloudfront.ErrCodeInvalidLocationCode: - fmt.Println(cloudfront.ErrCodeInvalidLocationCode, aerr.Error()) - case cloudfront.ErrCodeInvalidGeoRestrictionParameter: - fmt.Println(cloudfront.ErrCodeInvalidGeoRestrictionParameter, aerr.Error()) - case cloudfront.ErrCodeInvalidTTLOrder: - fmt.Println(cloudfront.ErrCodeInvalidTTLOrder, aerr.Error()) - case cloudfront.ErrCodeInvalidWebACLId: - fmt.Println(cloudfront.ErrCodeInvalidWebACLId, aerr.Error()) - case cloudfront.ErrCodeTooManyOriginCustomHeaders: - fmt.Println(cloudfront.ErrCodeTooManyOriginCustomHeaders, aerr.Error()) - case cloudfront.ErrCodeTooManyQueryStringParameters: - fmt.Println(cloudfront.ErrCodeTooManyQueryStringParameters, aerr.Error()) - case cloudfront.ErrCodeInvalidQueryStringParameters: - fmt.Println(cloudfront.ErrCodeInvalidQueryStringParameters, aerr.Error()) - case cloudfront.ErrCodeTooManyDistributionsWithLambdaAssociations: - fmt.Println(cloudfront.ErrCodeTooManyDistributionsWithLambdaAssociations, aerr.Error()) - case cloudfront.ErrCodeTooManyLambdaFunctionAssociations: - fmt.Println(cloudfront.ErrCodeTooManyLambdaFunctionAssociations, aerr.Error()) - case cloudfront.ErrCodeInvalidLambdaFunctionAssociation: - fmt.Println(cloudfront.ErrCodeInvalidLambdaFunctionAssociation, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginReadTimeout: - fmt.Println(cloudfront.ErrCodeInvalidOriginReadTimeout, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginKeepaliveTimeout: - fmt.Println(cloudfront.ErrCodeInvalidOriginKeepaliveTimeout, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} - -// - -func ExampleCloudFront_UpdateStreamingDistribution_shared00() { - svc := cloudfront.New(session.New()) - input := &cloudfront.UpdateStreamingDistributionInput{} - - result, err := svc.UpdateStreamingDistribution(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cloudfront.ErrCodeAccessDenied: - fmt.Println(cloudfront.ErrCodeAccessDenied, aerr.Error()) - case cloudfront.ErrCodeCNAMEAlreadyExists: - fmt.Println(cloudfront.ErrCodeCNAMEAlreadyExists, aerr.Error()) - case cloudfront.ErrCodeIllegalUpdate: - fmt.Println(cloudfront.ErrCodeIllegalUpdate, aerr.Error()) + case cloudfront.ErrCodeEntityNotFound: + fmt.Println(cloudfront.ErrCodeEntityNotFound, aerr.Error()) case cloudfront.ErrCodeInvalidIfMatchVersion: fmt.Println(cloudfront.ErrCodeInvalidIfMatchVersion, aerr.Error()) - case cloudfront.ErrCodeMissingBody: - fmt.Println(cloudfront.ErrCodeMissingBody, aerr.Error()) - case cloudfront.ErrCodeNoSuchStreamingDistribution: - fmt.Println(cloudfront.ErrCodeNoSuchStreamingDistribution, aerr.Error()) case cloudfront.ErrCodePreconditionFailed: fmt.Println(cloudfront.ErrCodePreconditionFailed, aerr.Error()) - case cloudfront.ErrCodeTooManyStreamingDistributionCNAMEs: - fmt.Println(cloudfront.ErrCodeTooManyStreamingDistributionCNAMEs, aerr.Error()) - case cloudfront.ErrCodeInvalidArgument: - fmt.Println(cloudfront.ErrCodeInvalidArgument, aerr.Error()) - case cloudfront.ErrCodeInvalidOriginAccessIdentity: - fmt.Println(cloudfront.ErrCodeInvalidOriginAccessIdentity, aerr.Error()) - case cloudfront.ErrCodeTooManyTrustedSigners: - fmt.Println(cloudfront.ErrCodeTooManyTrustedSigners, aerr.Error()) - case cloudfront.ErrCodeTrustedSignerDoesNotExist: - fmt.Println(cloudfront.ErrCodeTrustedSignerDoesNotExist, aerr.Error()) - case cloudfront.ErrCodeInconsistentQuantities: - fmt.Println(cloudfront.ErrCodeInconsistentQuantities, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,2010 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package cloudfrontkeyvaluestore + +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" +) + +const opDeleteKey = "DeleteKey" + +// DeleteKeyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteKey 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 DeleteKey for more information on using the DeleteKey +// 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 DeleteKeyRequest method. +// req, resp := client.DeleteKeyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/DeleteKey +func (c *CloudFrontKeyValueStore) DeleteKeyRequest(input *DeleteKeyInput) (req *request.Request, output *DeleteKeyOutput) { + op := &request.Operation{ + Name: opDeleteKey, + HTTPMethod: "DELETE", + HTTPPath: "/key-value-stores/{KvsARN}/keys/{Key}", + } + + if input == nil { + input = &DeleteKeyInput{} + } + + output = &DeleteKeyOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteKey API operation for Amazon CloudFront KeyValueStore. +// +// Deletes the key value pair specified by the key. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront KeyValueStore's +// API operation DeleteKey for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Resource is not in expected state. +// +// - ValidationException +// Validation failed. +// +// - InternalServerException +// Internal server error. +// +// - ServiceQuotaExceededException +// Limit exceeded. +// +// - ResourceNotFoundException +// Resource was not found. +// +// - AccessDeniedException +// Access denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/DeleteKey +func (c *CloudFrontKeyValueStore) DeleteKey(input *DeleteKeyInput) (*DeleteKeyOutput, error) { + req, out := c.DeleteKeyRequest(input) + return out, req.Send() +} + +// DeleteKeyWithContext is the same as DeleteKey with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteKey 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 *CloudFrontKeyValueStore) DeleteKeyWithContext(ctx aws.Context, input *DeleteKeyInput, opts ...request.Option) (*DeleteKeyOutput, error) { + req, out := c.DeleteKeyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeKeyValueStore = "DescribeKeyValueStore" + +// DescribeKeyValueStoreRequest generates a "aws/request.Request" representing the +// client's request for the DescribeKeyValueStore 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 DescribeKeyValueStore for more information on using the DescribeKeyValueStore +// 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 DescribeKeyValueStoreRequest method. +// req, resp := client.DescribeKeyValueStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/DescribeKeyValueStore +func (c *CloudFrontKeyValueStore) DescribeKeyValueStoreRequest(input *DescribeKeyValueStoreInput) (req *request.Request, output *DescribeKeyValueStoreOutput) { + op := &request.Operation{ + Name: opDescribeKeyValueStore, + HTTPMethod: "GET", + HTTPPath: "/key-value-stores/{KvsARN}", + } + + if input == nil { + input = &DescribeKeyValueStoreInput{} + } + + output = &DescribeKeyValueStoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeKeyValueStore API operation for Amazon CloudFront KeyValueStore. +// +// Returns metadata information about Key Value Store. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront KeyValueStore's +// API operation DescribeKeyValueStore for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Resource is not in expected state. +// +// - InternalServerException +// Internal server error. +// +// - ResourceNotFoundException +// Resource was not found. +// +// - AccessDeniedException +// Access denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/DescribeKeyValueStore +func (c *CloudFrontKeyValueStore) DescribeKeyValueStore(input *DescribeKeyValueStoreInput) (*DescribeKeyValueStoreOutput, error) { + req, out := c.DescribeKeyValueStoreRequest(input) + return out, req.Send() +} + +// DescribeKeyValueStoreWithContext is the same as DescribeKeyValueStore with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeKeyValueStore 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 *CloudFrontKeyValueStore) DescribeKeyValueStoreWithContext(ctx aws.Context, input *DescribeKeyValueStoreInput, opts ...request.Option) (*DescribeKeyValueStoreOutput, error) { + req, out := c.DescribeKeyValueStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetKey = "GetKey" + +// GetKeyRequest generates a "aws/request.Request" representing the +// client's request for the GetKey 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 GetKey for more information on using the GetKey +// 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 GetKeyRequest method. +// req, resp := client.GetKeyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/GetKey +func (c *CloudFrontKeyValueStore) GetKeyRequest(input *GetKeyInput) (req *request.Request, output *GetKeyOutput) { + op := &request.Operation{ + Name: opGetKey, + HTTPMethod: "GET", + HTTPPath: "/key-value-stores/{KvsARN}/keys/{Key}", + } + + if input == nil { + input = &GetKeyInput{} + } + + output = &GetKeyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetKey API operation for Amazon CloudFront KeyValueStore. +// +// Returns a key value pair. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront KeyValueStore's +// API operation GetKey for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Resource is not in expected state. +// +// - InternalServerException +// Internal server error. +// +// - ResourceNotFoundException +// Resource was not found. +// +// - AccessDeniedException +// Access denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/GetKey +func (c *CloudFrontKeyValueStore) GetKey(input *GetKeyInput) (*GetKeyOutput, error) { + req, out := c.GetKeyRequest(input) + return out, req.Send() +} + +// GetKeyWithContext is the same as GetKey with the addition of +// the ability to pass a context and additional request options. +// +// See GetKey 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 *CloudFrontKeyValueStore) GetKeyWithContext(ctx aws.Context, input *GetKeyInput, opts ...request.Option) (*GetKeyOutput, error) { + req, out := c.GetKeyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListKeys = "ListKeys" + +// ListKeysRequest generates a "aws/request.Request" representing the +// client's request for the ListKeys 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 ListKeys for more information on using the ListKeys +// 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 ListKeysRequest method. +// req, resp := client.ListKeysRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/ListKeys +func (c *CloudFrontKeyValueStore) ListKeysRequest(input *ListKeysInput) (req *request.Request, output *ListKeysOutput) { + op := &request.Operation{ + Name: opListKeys, + HTTPMethod: "GET", + HTTPPath: "/key-value-stores/{KvsARN}/keys", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListKeysInput{} + } + + output = &ListKeysOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListKeys API operation for Amazon CloudFront KeyValueStore. +// +// Returns a list of key value pairs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront KeyValueStore's +// API operation ListKeys for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Resource is not in expected state. +// +// - ValidationException +// Validation failed. +// +// - InternalServerException +// Internal server error. +// +// - ResourceNotFoundException +// Resource was not found. +// +// - AccessDeniedException +// Access denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/ListKeys +func (c *CloudFrontKeyValueStore) ListKeys(input *ListKeysInput) (*ListKeysOutput, error) { + req, out := c.ListKeysRequest(input) + return out, req.Send() +} + +// ListKeysWithContext is the same as ListKeys with the addition of +// the ability to pass a context and additional request options. +// +// See ListKeys 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 *CloudFrontKeyValueStore) ListKeysWithContext(ctx aws.Context, input *ListKeysInput, opts ...request.Option) (*ListKeysOutput, error) { + req, out := c.ListKeysRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListKeysPages iterates over the pages of a ListKeys operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListKeys 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 ListKeys operation. +// pageNum := 0 +// err := client.ListKeysPages(params, +// func(page *cloudfrontkeyvaluestore.ListKeysOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudFrontKeyValueStore) ListKeysPages(input *ListKeysInput, fn func(*ListKeysOutput, bool) bool) error { + return c.ListKeysPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListKeysPagesWithContext same as ListKeysPages 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 *CloudFrontKeyValueStore) ListKeysPagesWithContext(ctx aws.Context, input *ListKeysInput, fn func(*ListKeysOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListKeysInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListKeysRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListKeysOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opPutKey = "PutKey" + +// PutKeyRequest generates a "aws/request.Request" representing the +// client's request for the PutKey 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 PutKey for more information on using the PutKey +// 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 PutKeyRequest method. +// req, resp := client.PutKeyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/PutKey +func (c *CloudFrontKeyValueStore) PutKeyRequest(input *PutKeyInput) (req *request.Request, output *PutKeyOutput) { + op := &request.Operation{ + Name: opPutKey, + HTTPMethod: "PUT", + HTTPPath: "/key-value-stores/{KvsARN}/keys/{Key}", + } + + if input == nil { + input = &PutKeyInput{} + } + + output = &PutKeyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutKey API operation for Amazon CloudFront KeyValueStore. +// +// Creates a new key value pair or replaces the value of an existing key. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront KeyValueStore's +// API operation PutKey for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Resource is not in expected state. +// +// - ValidationException +// Validation failed. +// +// - InternalServerException +// Internal server error. +// +// - ServiceQuotaExceededException +// Limit exceeded. +// +// - ResourceNotFoundException +// Resource was not found. +// +// - AccessDeniedException +// Access denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/PutKey +func (c *CloudFrontKeyValueStore) PutKey(input *PutKeyInput) (*PutKeyOutput, error) { + req, out := c.PutKeyRequest(input) + return out, req.Send() +} + +// PutKeyWithContext is the same as PutKey with the addition of +// the ability to pass a context and additional request options. +// +// See PutKey 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 *CloudFrontKeyValueStore) PutKeyWithContext(ctx aws.Context, input *PutKeyInput, opts ...request.Option) (*PutKeyOutput, error) { + req, out := c.PutKeyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateKeys = "UpdateKeys" + +// UpdateKeysRequest generates a "aws/request.Request" representing the +// client's request for the UpdateKeys 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 UpdateKeys for more information on using the UpdateKeys +// 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 UpdateKeysRequest method. +// req, resp := client.UpdateKeysRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/UpdateKeys +func (c *CloudFrontKeyValueStore) UpdateKeysRequest(input *UpdateKeysInput) (req *request.Request, output *UpdateKeysOutput) { + op := &request.Operation{ + Name: opUpdateKeys, + HTTPMethod: "POST", + HTTPPath: "/key-value-stores/{KvsARN}/keys", + } + + if input == nil { + input = &UpdateKeysInput{} + } + + output = &UpdateKeysOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateKeys API operation for Amazon CloudFront KeyValueStore. +// +// Puts or Deletes multiple key value pairs in a single, all-or-nothing operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudFront KeyValueStore's +// API operation UpdateKeys for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Resource is not in expected state. +// +// - ValidationException +// Validation failed. +// +// - InternalServerException +// Internal server error. +// +// - ServiceQuotaExceededException +// Limit exceeded. +// +// - ResourceNotFoundException +// Resource was not found. +// +// - AccessDeniedException +// Access denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26/UpdateKeys +func (c *CloudFrontKeyValueStore) UpdateKeys(input *UpdateKeysInput) (*UpdateKeysOutput, error) { + req, out := c.UpdateKeysRequest(input) + return out, req.Send() +} + +// UpdateKeysWithContext is the same as UpdateKeys with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateKeys 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 *CloudFrontKeyValueStore) UpdateKeysWithContext(ctx aws.Context, input *UpdateKeysInput, opts ...request.Option) (*UpdateKeysOutput, error) { + req, out := c.UpdateKeysRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Access denied. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Resource is not in expected state. +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 DeleteKeyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The current version (ETag) of the Key Value Store that you are deleting keys + // from, which you can get using DescribeKeyValueStore. + // + // IfMatch is a required field + IfMatch *string `location:"header" locationName:"If-Match" type:"string" required:"true"` + + // The key to delete. + // + // Key is a required field + Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `location:"uri" locationName:"KvsARN" 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 DeleteKeyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteKeyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKeyInput"} + if s.IfMatch == nil { + invalidParams.Add(request.NewErrParamRequired("IfMatch")) + } + 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.KvsARN == nil { + invalidParams.Add(request.NewErrParamRequired("KvsARN")) + } + if s.KvsARN != nil && len(*s.KvsARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KvsARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIfMatch sets the IfMatch field's value. +func (s *DeleteKeyInput) SetIfMatch(v string) *DeleteKeyInput { + s.IfMatch = &v + return s +} + +// SetKey sets the Key field's value. +func (s *DeleteKeyInput) SetKey(v string) *DeleteKeyInput { + s.Key = &v + return s +} + +// SetKvsARN sets the KvsARN field's value. +func (s *DeleteKeyInput) SetKvsARN(v string) *DeleteKeyInput { + s.KvsARN = &v + return s +} + +// Metadata information about a Key Value Store. +type DeleteKeyOutput struct { + _ struct{} `type:"structure"` + + // The current version identifier of the Key Value Store after the successful + // delete. + // + // ETag is a required field + ETag *string `location:"header" locationName:"ETag" type:"string" required:"true"` + + // Number of key value pairs in the Key Value Store after the successful delete. + // + // ItemCount is a required field + ItemCount *int64 `type:"integer" required:"true"` + + // Total size of the Key Value Store after the successful delete, in bytes. + // + // TotalSizeInBytes is a required field + TotalSizeInBytes *int64 `type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyOutput) GoString() string { + return s.String() +} + +// SetETag sets the ETag field's value. +func (s *DeleteKeyOutput) SetETag(v string) *DeleteKeyOutput { + s.ETag = &v + return s +} + +// SetItemCount sets the ItemCount field's value. +func (s *DeleteKeyOutput) SetItemCount(v int64) *DeleteKeyOutput { + s.ItemCount = &v + return s +} + +// SetTotalSizeInBytes sets the TotalSizeInBytes field's value. +func (s *DeleteKeyOutput) SetTotalSizeInBytes(v int64) *DeleteKeyOutput { + s.TotalSizeInBytes = &v + return s +} + +// List item for keys to delete. +type DeleteKeyRequestListItem struct { + _ struct{} `type:"structure"` + + // The key of the key value pair to be deleted. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyRequestListItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKeyRequestListItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteKeyRequestListItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKeyRequestListItem"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *DeleteKeyRequestListItem) SetKey(v string) *DeleteKeyRequestListItem { + s.Key = &v + return s +} + +type DescribeKeyValueStoreInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `location:"uri" locationName:"KvsARN" 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 DescribeKeyValueStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeKeyValueStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeKeyValueStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeKeyValueStoreInput"} + if s.KvsARN == nil { + invalidParams.Add(request.NewErrParamRequired("KvsARN")) + } + if s.KvsARN != nil && len(*s.KvsARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KvsARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKvsARN sets the KvsARN field's value. +func (s *DescribeKeyValueStoreInput) SetKvsARN(v string) *DescribeKeyValueStoreInput { + s.KvsARN = &v + return s +} + +// Metadata information about a Key Value Store. +type DescribeKeyValueStoreOutput struct { + _ struct{} `type:"structure"` + + // Date and time when the Key Value Store was created. + // + // Created is a required field + Created *time.Time `type:"timestamp" required:"true"` + + // The version identifier for the current version of the Key Value Store. + // + // ETag is a required field + ETag *string `location:"header" locationName:"ETag" type:"string" required:"true"` + + // Number of key value pairs in the Key Value Store. + // + // ItemCount is a required field + ItemCount *int64 `type:"integer" required:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `min:"1" type:"string" required:"true"` + + // Date and time when the key value pairs in the Key Value Store was last modified. + LastModified *time.Time `type:"timestamp"` + + // Total size of the Key Value Store in bytes. + // + // TotalSizeInBytes is a required field + TotalSizeInBytes *int64 `type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeKeyValueStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeKeyValueStoreOutput) GoString() string { + return s.String() +} + +// SetCreated sets the Created field's value. +func (s *DescribeKeyValueStoreOutput) SetCreated(v time.Time) *DescribeKeyValueStoreOutput { + s.Created = &v + return s +} + +// SetETag sets the ETag field's value. +func (s *DescribeKeyValueStoreOutput) SetETag(v string) *DescribeKeyValueStoreOutput { + s.ETag = &v + return s +} + +// SetItemCount sets the ItemCount field's value. +func (s *DescribeKeyValueStoreOutput) SetItemCount(v int64) *DescribeKeyValueStoreOutput { + s.ItemCount = &v + return s +} + +// SetKvsARN sets the KvsARN field's value. +func (s *DescribeKeyValueStoreOutput) SetKvsARN(v string) *DescribeKeyValueStoreOutput { + s.KvsARN = &v + return s +} + +// SetLastModified sets the LastModified field's value. +func (s *DescribeKeyValueStoreOutput) SetLastModified(v time.Time) *DescribeKeyValueStoreOutput { + s.LastModified = &v + return s +} + +// SetTotalSizeInBytes sets the TotalSizeInBytes field's value. +func (s *DescribeKeyValueStoreOutput) SetTotalSizeInBytes(v int64) *DescribeKeyValueStoreOutput { + s.TotalSizeInBytes = &v + return s +} + +type GetKeyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The key to get. + // + // Key is a required field + Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `location:"uri" locationName:"KvsARN" 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 GetKeyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKeyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetKeyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetKeyInput"} + 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.KvsARN == nil { + invalidParams.Add(request.NewErrParamRequired("KvsARN")) + } + if s.KvsARN != nil && len(*s.KvsARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KvsARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *GetKeyInput) SetKey(v string) *GetKeyInput { + s.Key = &v + return s +} + +// SetKvsARN sets the KvsARN field's value. +func (s *GetKeyInput) SetKvsARN(v string) *GetKeyInput { + s.KvsARN = &v + return s +} + +// A key value pair. +type GetKeyOutput struct { + _ struct{} `type:"structure"` + + // Number of key value pairs in the Key Value Store. + // + // ItemCount is a required field + ItemCount *int64 `type:"integer" required:"true"` + + // The key of the key value pair. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // Total size of the Key Value Store in bytes. + // + // TotalSizeInBytes is a required field + TotalSizeInBytes *int64 `type:"long" required:"true"` + + // The value of the key value pair. + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetKeyOutput's + // String and GoString methods. + // + // Value is a required field + Value *string `type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKeyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKeyOutput) GoString() string { + return s.String() +} + +// SetItemCount sets the ItemCount field's value. +func (s *GetKeyOutput) SetItemCount(v int64) *GetKeyOutput { + s.ItemCount = &v + return s +} + +// SetKey sets the Key field's value. +func (s *GetKeyOutput) SetKey(v string) *GetKeyOutput { + s.Key = &v + return s +} + +// SetTotalSizeInBytes sets the TotalSizeInBytes field's value. +func (s *GetKeyOutput) SetTotalSizeInBytes(v int64) *GetKeyOutput { + s.TotalSizeInBytes = &v + return s +} + +// SetValue sets the Value field's value. +func (s *GetKeyOutput) SetValue(v string) *GetKeyOutput { + s.Value = &v + return s +} + +// Internal server error. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListKeysInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `location:"uri" locationName:"KvsARN" min:"1" type:"string" required:"true"` + + // Maximum number of results that are returned per call. The default is 10 and + // maximum allowed page is 50. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // If nextToken is returned in the response, there are more results available. + // Make the next call using the returned token to retrieve the next page. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeysInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeysInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListKeysInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListKeysInput"} + if s.KvsARN == nil { + invalidParams.Add(request.NewErrParamRequired("KvsARN")) + } + if s.KvsARN != nil && len(*s.KvsARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KvsARN", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKvsARN sets the KvsARN field's value. +func (s *ListKeysInput) SetKvsARN(v string) *ListKeysInput { + s.KvsARN = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListKeysInput) SetMaxResults(v int64) *ListKeysInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKeysInput) SetNextToken(v string) *ListKeysInput { + s.NextToken = &v + return s +} + +type ListKeysOutput struct { + _ struct{} `type:"structure"` + + // Key value pairs + Items []*ListKeysResponseListItem `type:"list"` + + // If nextToken is returned in the response, there are more results available. + // Make the next call using the returned token to retrieve the next page. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeysOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeysOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListKeysOutput) SetItems(v []*ListKeysResponseListItem) *ListKeysOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKeysOutput) SetNextToken(v string) *ListKeysOutput { + s.NextToken = &v + return s +} + +// A key value pair. +type ListKeysResponseListItem struct { + _ struct{} `type:"structure"` + + // The key of the key value pair. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value of the key value pair. + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListKeysResponseListItem's + // String and GoString methods. + // + // Value is a required field + Value *string `type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeysResponseListItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKeysResponseListItem) GoString() string { + return s.String() +} + +// SetKey sets the Key field's value. +func (s *ListKeysResponseListItem) SetKey(v string) *ListKeysResponseListItem { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *ListKeysResponseListItem) SetValue(v string) *ListKeysResponseListItem { + s.Value = &v + return s +} + +// A key value pair. +type PutKeyInput struct { + _ struct{} `type:"structure"` + + // The current version (ETag) of the Key Value Store that you are putting keys + // into, which you can get using DescribeKeyValueStore. + // + // IfMatch is a required field + IfMatch *string `location:"header" locationName:"If-Match" type:"string" required:"true"` + + // The key to put. + // + // Key is a required field + Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `location:"uri" locationName:"KvsARN" min:"1" type:"string" required:"true"` + + // The value to put. + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PutKeyInput's + // String and GoString methods. + // + // Value is a required field + Value *string `type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutKeyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutKeyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutKeyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutKeyInput"} + if s.IfMatch == nil { + invalidParams.Add(request.NewErrParamRequired("IfMatch")) + } + 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.KvsARN == nil { + invalidParams.Add(request.NewErrParamRequired("KvsARN")) + } + if s.KvsARN != nil && len(*s.KvsARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KvsARN", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIfMatch sets the IfMatch field's value. +func (s *PutKeyInput) SetIfMatch(v string) *PutKeyInput { + s.IfMatch = &v + return s +} + +// SetKey sets the Key field's value. +func (s *PutKeyInput) SetKey(v string) *PutKeyInput { + s.Key = &v + return s +} + +// SetKvsARN sets the KvsARN field's value. +func (s *PutKeyInput) SetKvsARN(v string) *PutKeyInput { + s.KvsARN = &v + return s +} + +// SetValue sets the Value field's value. +func (s *PutKeyInput) SetValue(v string) *PutKeyInput { + s.Value = &v + return s +} + +// Metadata information about a Key Value Store. +type PutKeyOutput struct { + _ struct{} `type:"structure"` + + // The current version identifier of the Key Value Store after the successful + // put. + // + // ETag is a required field + ETag *string `location:"header" locationName:"ETag" type:"string" required:"true"` + + // Number of key value pairs in the Key Value Store after the successful put. + // + // ItemCount is a required field + ItemCount *int64 `type:"integer" required:"true"` + + // Total size of the Key Value Store after the successful put, in bytes. + // + // TotalSizeInBytes is a required field + TotalSizeInBytes *int64 `type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutKeyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutKeyOutput) GoString() string { + return s.String() +} + +// SetETag sets the ETag field's value. +func (s *PutKeyOutput) SetETag(v string) *PutKeyOutput { + s.ETag = &v + return s +} + +// SetItemCount sets the ItemCount field's value. +func (s *PutKeyOutput) SetItemCount(v int64) *PutKeyOutput { + s.ItemCount = &v + return s +} + +// SetTotalSizeInBytes sets the TotalSizeInBytes field's value. +func (s *PutKeyOutput) SetTotalSizeInBytes(v int64) *PutKeyOutput { + s.TotalSizeInBytes = &v + return s +} + +// List item for key value pair to put. +type PutKeyRequestListItem struct { + _ struct{} `type:"structure"` + + // The key of the key value pair list item to put. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value for the key value pair to put. + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PutKeyRequestListItem's + // String and GoString methods. + // + // Value is a required field + Value *string `type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutKeyRequestListItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutKeyRequestListItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutKeyRequestListItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutKeyRequestListItem"} + 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 *PutKeyRequestListItem) SetKey(v string) *PutKeyRequestListItem { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *PutKeyRequestListItem) SetValue(v string) *PutKeyRequestListItem { + s.Value = &v + return s +} + +// Resource was not found. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Limit 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 +} + +type UpdateKeysInput struct { + _ struct{} `type:"structure"` + + // List of keys to delete. + Deletes []*DeleteKeyRequestListItem `type:"list"` + + // The current version (ETag) of the Key Value Store that you are updating keys + // of, which you can get using DescribeKeyValueStore. + // + // IfMatch is a required field + IfMatch *string `location:"header" locationName:"If-Match" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Key Value Store. + // + // KvsARN is a required field + KvsARN *string `location:"uri" locationName:"KvsARN" min:"1" type:"string" required:"true"` + + // List of key value pairs to put. + Puts []*PutKeyRequestListItem `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 UpdateKeysInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKeysInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateKeysInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateKeysInput"} + if s.IfMatch == nil { + invalidParams.Add(request.NewErrParamRequired("IfMatch")) + } + if s.KvsARN == nil { + invalidParams.Add(request.NewErrParamRequired("KvsARN")) + } + if s.KvsARN != nil && len(*s.KvsARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KvsARN", 1)) + } + if s.Deletes != nil { + for i, v := range s.Deletes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Deletes", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Puts != nil { + for i, v := range s.Puts { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Puts", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeletes sets the Deletes field's value. +func (s *UpdateKeysInput) SetDeletes(v []*DeleteKeyRequestListItem) *UpdateKeysInput { + s.Deletes = v + return s +} + +// SetIfMatch sets the IfMatch field's value. +func (s *UpdateKeysInput) SetIfMatch(v string) *UpdateKeysInput { + s.IfMatch = &v + return s +} + +// SetKvsARN sets the KvsARN field's value. +func (s *UpdateKeysInput) SetKvsARN(v string) *UpdateKeysInput { + s.KvsARN = &v + return s +} + +// SetPuts sets the Puts field's value. +func (s *UpdateKeysInput) SetPuts(v []*PutKeyRequestListItem) *UpdateKeysInput { + s.Puts = v + return s +} + +// Metadata information about a Key Value Store. +type UpdateKeysOutput struct { + _ struct{} `type:"structure"` + + // The current version identifier of the Key Value Store after the successful + // update. + // + // ETag is a required field + ETag *string `location:"header" locationName:"ETag" type:"string" required:"true"` + + // Number of key value pairs in the Key Value Store after the successful update. + // + // ItemCount is a required field + ItemCount *int64 `type:"integer" required:"true"` + + // Total size of the Key Value Store after the successful update, in bytes. + // + // TotalSizeInBytes is a required field + TotalSizeInBytes *int64 `type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKeysOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKeysOutput) GoString() string { + return s.String() +} + +// SetETag sets the ETag field's value. +func (s *UpdateKeysOutput) SetETag(v string) *UpdateKeysOutput { + s.ETag = &v + return s +} + +// SetItemCount sets the ItemCount field's value. +func (s *UpdateKeysOutput) SetItemCount(v int64) *UpdateKeysOutput { + s.ItemCount = &v + return s +} + +// SetTotalSizeInBytes sets the TotalSizeInBytes field's value. +func (s *UpdateKeysOutput) SetTotalSizeInBytes(v int64) *UpdateKeysOutput { + s.TotalSizeInBytes = &v + return s +} + +// Validation failed. +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 +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/cloudfrontkeyvaluestoreiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/cloudfrontkeyvaluestoreiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/cloudfrontkeyvaluestoreiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/cloudfrontkeyvaluestoreiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,91 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package cloudfrontkeyvaluestoreiface provides an interface to enable mocking the Amazon CloudFront KeyValueStore 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 cloudfrontkeyvaluestoreiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/cloudfrontkeyvaluestore" +) + +// CloudFrontKeyValueStoreAPI provides an interface to enable mocking the +// cloudfrontkeyvaluestore.CloudFrontKeyValueStore 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 +// // Amazon CloudFront KeyValueStore. +// func myFunc(svc cloudfrontkeyvaluestoreiface.CloudFrontKeyValueStoreAPI) bool { +// // Make svc.DeleteKey request +// } +// +// func main() { +// sess := session.New() +// svc := cloudfrontkeyvaluestore.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockCloudFrontKeyValueStoreClient struct { +// cloudfrontkeyvaluestoreiface.CloudFrontKeyValueStoreAPI +// } +// func (m *mockCloudFrontKeyValueStoreClient) DeleteKey(input *cloudfrontkeyvaluestore.DeleteKeyInput) (*cloudfrontkeyvaluestore.DeleteKeyOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockCloudFrontKeyValueStoreClient{} +// +// 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 CloudFrontKeyValueStoreAPI interface { + DeleteKey(*cloudfrontkeyvaluestore.DeleteKeyInput) (*cloudfrontkeyvaluestore.DeleteKeyOutput, error) + DeleteKeyWithContext(aws.Context, *cloudfrontkeyvaluestore.DeleteKeyInput, ...request.Option) (*cloudfrontkeyvaluestore.DeleteKeyOutput, error) + DeleteKeyRequest(*cloudfrontkeyvaluestore.DeleteKeyInput) (*request.Request, *cloudfrontkeyvaluestore.DeleteKeyOutput) + + DescribeKeyValueStore(*cloudfrontkeyvaluestore.DescribeKeyValueStoreInput) (*cloudfrontkeyvaluestore.DescribeKeyValueStoreOutput, error) + DescribeKeyValueStoreWithContext(aws.Context, *cloudfrontkeyvaluestore.DescribeKeyValueStoreInput, ...request.Option) (*cloudfrontkeyvaluestore.DescribeKeyValueStoreOutput, error) + DescribeKeyValueStoreRequest(*cloudfrontkeyvaluestore.DescribeKeyValueStoreInput) (*request.Request, *cloudfrontkeyvaluestore.DescribeKeyValueStoreOutput) + + GetKey(*cloudfrontkeyvaluestore.GetKeyInput) (*cloudfrontkeyvaluestore.GetKeyOutput, error) + GetKeyWithContext(aws.Context, *cloudfrontkeyvaluestore.GetKeyInput, ...request.Option) (*cloudfrontkeyvaluestore.GetKeyOutput, error) + GetKeyRequest(*cloudfrontkeyvaluestore.GetKeyInput) (*request.Request, *cloudfrontkeyvaluestore.GetKeyOutput) + + ListKeys(*cloudfrontkeyvaluestore.ListKeysInput) (*cloudfrontkeyvaluestore.ListKeysOutput, error) + ListKeysWithContext(aws.Context, *cloudfrontkeyvaluestore.ListKeysInput, ...request.Option) (*cloudfrontkeyvaluestore.ListKeysOutput, error) + ListKeysRequest(*cloudfrontkeyvaluestore.ListKeysInput) (*request.Request, *cloudfrontkeyvaluestore.ListKeysOutput) + + ListKeysPages(*cloudfrontkeyvaluestore.ListKeysInput, func(*cloudfrontkeyvaluestore.ListKeysOutput, bool) bool) error + ListKeysPagesWithContext(aws.Context, *cloudfrontkeyvaluestore.ListKeysInput, func(*cloudfrontkeyvaluestore.ListKeysOutput, bool) bool, ...request.Option) error + + PutKey(*cloudfrontkeyvaluestore.PutKeyInput) (*cloudfrontkeyvaluestore.PutKeyOutput, error) + PutKeyWithContext(aws.Context, *cloudfrontkeyvaluestore.PutKeyInput, ...request.Option) (*cloudfrontkeyvaluestore.PutKeyOutput, error) + PutKeyRequest(*cloudfrontkeyvaluestore.PutKeyInput) (*request.Request, *cloudfrontkeyvaluestore.PutKeyOutput) + + UpdateKeys(*cloudfrontkeyvaluestore.UpdateKeysInput) (*cloudfrontkeyvaluestore.UpdateKeysOutput, error) + UpdateKeysWithContext(aws.Context, *cloudfrontkeyvaluestore.UpdateKeysInput, ...request.Option) (*cloudfrontkeyvaluestore.UpdateKeysOutput, error) + UpdateKeysRequest(*cloudfrontkeyvaluestore.UpdateKeysInput) (*request.Request, *cloudfrontkeyvaluestore.UpdateKeysOutput) +} + +var _ CloudFrontKeyValueStoreAPI = (*cloudfrontkeyvaluestore.CloudFrontKeyValueStore)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,29 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package cloudfrontkeyvaluestore provides the client and types for making API +// requests to Amazon CloudFront KeyValueStore. +// +// Amazon CloudFront KeyValueStore Service to View and Update Data in a KVS +// Resource +// +// See https://docs.aws.amazon.com/goto/WebAPI/cloudfront-keyvaluestore-2022-07-26 for more information on this service. +// +// See cloudfrontkeyvaluestore package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/cloudfrontkeyvaluestore/ +// +// # Using the Client +// +// To contact Amazon CloudFront KeyValueStore 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 Amazon CloudFront KeyValueStore client CloudFrontKeyValueStore for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/cloudfrontkeyvaluestore/#New +package cloudfrontkeyvaluestore diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,55 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package cloudfrontkeyvaluestore + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // Access denied. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Resource is not in expected state. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // Internal server error. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Resource was not found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Limit exceeded. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Validation failed. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/service.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudfrontkeyvaluestore/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudfrontkeyvaluestore/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package cloudfrontkeyvaluestore + +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/restjson" +) + +// CloudFrontKeyValueStore provides the API operation methods for making requests to +// Amazon CloudFront KeyValueStore. See this package's package overview docs +// for details on the service. +// +// CloudFrontKeyValueStore methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type CloudFrontKeyValueStore 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 = "CloudFront KeyValueStore" // Name of service. + EndpointsID = "cloudfront-keyvaluestore" // ID to lookup a service endpoint with. + ServiceID = "CloudFront KeyValueStore" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the CloudFrontKeyValueStore 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 CloudFrontKeyValueStore client from just a session. +// svc := cloudfrontkeyvaluestore.New(mySession) +// +// // Create a CloudFrontKeyValueStore client with additional configuration +// svc := cloudfrontkeyvaluestore.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudFrontKeyValueStore { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "cloudfront-keyvaluestore" + } + 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) *CloudFrontKeyValueStore { + svc := &CloudFrontKeyValueStore{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2022-07-26", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a CloudFrontKeyValueStore operation and runs any +// custom request initialization. +func (c *CloudFrontKeyValueStore) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudtrail/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudtrail/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudtrail/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudtrail/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -79,13 +79,10 @@ // This exception is thrown when the specified resource is not found. // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -944,8 +941,9 @@ // an event data store ARN. After you run DeleteEventDataStore, the event data // store enters a PENDING_DELETION state, and is automatically deleted after // a wait period of seven days. TerminationProtectionEnabled must be set to -// False on the event data store; this operation cannot work if TerminationProtectionEnabled -// is True. +// False on the event data store and the FederationStatus must be DISABLED. +// You cannot delete an event data store if TerminationProtectionEnabled is +// True or the FederationStatus is ENABLED. // // After you run DeleteEventDataStore on an event data store, you cannot run // ListQueries, DescribeQuery, or GetQueryResults on queries that are using @@ -1008,6 +1006,18 @@ // organization resource lacks one or more required permissions for creating // an organization resource in a required service. // +// - ConflictException +// This exception is thrown when the specified resource is not ready for an +// operation. This can occur when you try to run an operation on a resource +// before CloudTrail has time to fully load the resource, or because another +// operation is modifying the resource. If this exception occurs, wait a few +// minutes, and then try the operation again. +// +// - EventDataStoreFederationEnabledException +// You cannot delete the event data store because Lake query federation is enabled. +// To delete the event data store, run the DisableFederation operation to disable +// Lake query federation on the event data store. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/DeleteEventDataStore func (c *CloudTrail) DeleteEventDataStore(input *DeleteEventDataStoreInput) (*DeleteEventDataStoreOutput, error) { req, out := c.DeleteEventDataStoreRequest(input) @@ -1205,13 +1215,10 @@ // - Not be in IP address format (for example, 192.168.5.4) // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -1613,6 +1620,301 @@ return out, req.Send() } +const opDisableFederation = "DisableFederation" + +// DisableFederationRequest generates a "aws/request.Request" representing the +// client's request for the DisableFederation 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 DisableFederation for more information on using the DisableFederation +// 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 DisableFederationRequest method. +// req, resp := client.DisableFederationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/DisableFederation +func (c *CloudTrail) DisableFederationRequest(input *DisableFederationInput) (req *request.Request, output *DisableFederationOutput) { + op := &request.Operation{ + Name: opDisableFederation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisableFederationInput{} + } + + output = &DisableFederationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisableFederation API operation for AWS CloudTrail. +// +// Disables Lake query federation on the specified event data store. When you +// disable federation, CloudTrail removes the metadata associated with the federated +// event data store in the Glue Data Catalog and removes registration for the +// federation role ARN and event data store in Lake Formation. No CloudTrail +// Lake data is deleted when you disable federation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CloudTrail's +// API operation DisableFederation for usage and error information. +// +// Returned Error Types: +// +// - EventDataStoreARNInvalidException +// The specified event data store ARN is not valid or does not map to an event +// data store in your account. +// +// - EventDataStoreNotFoundException +// The specified event data store was not found. +// +// - InvalidParameterException +// The request includes a parameter that is not valid. +// +// - InactiveEventDataStoreException +// The event data store is inactive. +// +// - OperationNotPermittedException +// This exception is thrown when the requested operation is not permitted. +// +// - UnsupportedOperationException +// This exception is thrown when the requested operation is not supported. +// +// - AccessNotEnabledException +// This exception is thrown when trusted access has not been enabled between +// CloudTrail and Organizations. For more information, see Enabling Trusted +// Access with Other Amazon Web Services Services (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services.html) +// and Prepare For Creating a Trail For Your Organization (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-an-organizational-trail-prepare.html). +// +// - InsufficientDependencyServiceAccessPermissionException +// This exception is thrown when the IAM identity that is used to create the +// organization resource lacks one or more required permissions for creating +// an organization resource in a required service. +// +// - NotOrganizationMasterAccountException +// This exception is thrown when the Amazon Web Services account making the +// request to create or update an organization trail or event data store is +// not the management account for an organization in Organizations. For more +// information, see Prepare For Creating a Trail For Your Organization (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-an-organizational-trail-prepare.html) +// or Create an event data store (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-event-data-store.html). +// +// - NoManagementAccountSLRExistsException +// This exception is thrown when the management account does not have a service-linked +// role. +// +// - OrganizationsNotInUseException +// This exception is thrown when the request is made from an Amazon Web Services +// account that is not a member of an organization. To make this request, sign +// in using the credentials of an account that belongs to an organization. +// +// - OrganizationNotInAllFeaturesModeException +// This exception is thrown when Organizations is not configured to support +// all features. All features must be enabled in Organizations to support creating +// an organization trail or event data store. +// +// - ConcurrentModificationException +// You are trying to update a resource when another request is in progress. +// Allow sufficient wait time for the previous request to complete, then retry +// your request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/DisableFederation +func (c *CloudTrail) DisableFederation(input *DisableFederationInput) (*DisableFederationOutput, error) { + req, out := c.DisableFederationRequest(input) + return out, req.Send() +} + +// DisableFederationWithContext is the same as DisableFederation with the addition of +// the ability to pass a context and additional request options. +// +// See DisableFederation 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 *CloudTrail) DisableFederationWithContext(ctx aws.Context, input *DisableFederationInput, opts ...request.Option) (*DisableFederationOutput, error) { + req, out := c.DisableFederationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opEnableFederation = "EnableFederation" + +// EnableFederationRequest generates a "aws/request.Request" representing the +// client's request for the EnableFederation 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 EnableFederation for more information on using the EnableFederation +// 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 EnableFederationRequest method. +// req, resp := client.EnableFederationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/EnableFederation +func (c *CloudTrail) EnableFederationRequest(input *EnableFederationInput) (req *request.Request, output *EnableFederationOutput) { + op := &request.Operation{ + Name: opEnableFederation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &EnableFederationInput{} + } + + output = &EnableFederationOutput{} + req = c.newRequest(op, input, output) + return +} + +// EnableFederation API operation for AWS CloudTrail. +// +// Enables Lake query federation on the specified event data store. Federating +// an event data store lets you view the metadata associated with the event +// data store in the Glue Data Catalog (https://docs.aws.amazon.com/glue/latest/dg/components-overview.html#data-catalog-intro) +// and run SQL queries against your event data using Amazon Athena. The table +// metadata stored in the Glue Data Catalog lets the Athena query engine know +// how to find, read, and process the data that you want to query. +// +// When you enable Lake query federation, CloudTrail creates a federated database +// named aws:cloudtrail (if the database doesn't already exist) and a federated +// table in the Glue Data Catalog. The event data store ID is used for the table +// name. CloudTrail registers the role ARN and event data store in Lake Formation +// (https://docs.aws.amazon.com/lake-formation/latest/dg/how-it-works.html), +// the service responsible for revoking or granting permissions to the federated +// resources in the Glue Data Catalog. +// +// For more information about Lake query federation, see Federate an event data +// store (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CloudTrail's +// API operation EnableFederation for usage and error information. +// +// Returned Error Types: +// +// - EventDataStoreARNInvalidException +// The specified event data store ARN is not valid or does not map to an event +// data store in your account. +// +// - EventDataStoreNotFoundException +// The specified event data store was not found. +// +// - InvalidParameterException +// The request includes a parameter that is not valid. +// +// - InactiveEventDataStoreException +// The event data store is inactive. +// +// - OperationNotPermittedException +// This exception is thrown when the requested operation is not permitted. +// +// - UnsupportedOperationException +// This exception is thrown when the requested operation is not supported. +// +// - AccessNotEnabledException +// This exception is thrown when trusted access has not been enabled between +// CloudTrail and Organizations. For more information, see Enabling Trusted +// Access with Other Amazon Web Services Services (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services.html) +// and Prepare For Creating a Trail For Your Organization (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-an-organizational-trail-prepare.html). +// +// - InsufficientDependencyServiceAccessPermissionException +// This exception is thrown when the IAM identity that is used to create the +// organization resource lacks one or more required permissions for creating +// an organization resource in a required service. +// +// - NotOrganizationMasterAccountException +// This exception is thrown when the Amazon Web Services account making the +// request to create or update an organization trail or event data store is +// not the management account for an organization in Organizations. For more +// information, see Prepare For Creating a Trail For Your Organization (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-an-organizational-trail-prepare.html) +// or Create an event data store (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-event-data-store.html). +// +// - NoManagementAccountSLRExistsException +// This exception is thrown when the management account does not have a service-linked +// role. +// +// - OrganizationsNotInUseException +// This exception is thrown when the request is made from an Amazon Web Services +// account that is not a member of an organization. To make this request, sign +// in using the credentials of an account that belongs to an organization. +// +// - OrganizationNotInAllFeaturesModeException +// This exception is thrown when Organizations is not configured to support +// all features. All features must be enabled in Organizations to support creating +// an organization trail or event data store. +// +// - ConcurrentModificationException +// You are trying to update a resource when another request is in progress. +// Allow sufficient wait time for the previous request to complete, then retry +// your request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - EventDataStoreFederationEnabledException +// You cannot delete the event data store because Lake query federation is enabled. +// To delete the event data store, run the DisableFederation operation to disable +// Lake query federation on the event data store. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/EnableFederation +func (c *CloudTrail) EnableFederation(input *EnableFederationInput) (*EnableFederationOutput, error) { + req, out := c.EnableFederationRequest(input) + return out, req.Send() +} + +// EnableFederationWithContext is the same as EnableFederation with the addition of +// the ability to pass a context and additional request options. +// +// See EnableFederation 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 *CloudTrail) EnableFederationWithContext(ctx aws.Context, input *EnableFederationInput, opts ...request.Option) (*EnableFederationOutput, error) { + req, out := c.EnableFederationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetChannel = "GetChannel" // GetChannelRequest generates a "aws/request.Request" representing the @@ -1888,13 +2190,10 @@ // - Not be in IP address format (for example, 192.168.5.4) // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -2064,12 +2363,17 @@ // GetInsightSelectors API operation for AWS CloudTrail. // // Describes the settings for the Insights event selectors that you configured -// for your trail. GetInsightSelectors shows if CloudTrail Insights event logging -// is enabled on the trail, and if it is, which insight types are enabled. If -// you run GetInsightSelectors on a trail that does not have Insights events -// enabled, the operation throws the exception InsightNotEnabledException +// for your trail or event data store. GetInsightSelectors shows if CloudTrail +// Insights event logging is enabled on the trail or event data store, and if +// it is, which Insights types are enabled. If you run GetInsightSelectors on +// a trail or event data store that does not have Insights events enabled, the +// operation throws the exception InsightNotEnabledException +// +// Specify either the EventDataStore parameter to get Insights event selectors +// for an event data store, or the TrailName parameter to the get Insights event +// selectors for a trail. You cannot specify these parameters together. // -// For more information, see Logging CloudTrail Insights Events for Trails (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html) +// For more information, see Logging CloudTrail Insights events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html) // in the CloudTrail User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2081,6 +2385,13 @@ // // Returned Error Types: // +// - InvalidParameterException +// The request includes a parameter that is not valid. +// +// - InvalidParameterCombinationException +// This exception is thrown when the combination of parameters provided is not +// valid. +// // - TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // @@ -2101,13 +2412,10 @@ // - Not be in IP address format (for example, 192.168.5.4) // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -2120,8 +2428,8 @@ // This exception is thrown when the requested operation is not permitted. // // - InsightNotEnabledException -// If you run GetInsightSelectors on a trail that does not have Insights events -// enabled, the operation throws the exception InsightNotEnabledException. +// If you run GetInsightSelectors on a trail or event data store that does not +// have Insights events enabled, the operation throws the exception InsightNotEnabledException. // // - NoManagementAccountSLRExistsException // This exception is thrown when the management account does not have a service-linked @@ -2476,13 +2784,10 @@ // Returned Error Types: // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. -// -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -2594,13 +2899,10 @@ // Returned Error Types: // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. -// -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -3636,13 +3938,10 @@ // This exception is thrown when the specified resource is not found. // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -3958,8 +4257,13 @@ // Looks up management events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-management-events) // or CloudTrail Insights events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-insights-events) // that are captured by CloudTrail. You can look up events that occurred in -// a Region within the last 90 days. Lookup supports the following attributes -// for management events: +// a Region within the last 90 days. +// +// LookupEvents returns recent Insights events for trails that enable Insights. +// To view Insights events for an event data store, you can run queries on your +// Insights event data store, and you can also view the Lake dashboard for Insights. +// +// Lookup supports the following attributes for management events: // // - Amazon Web Services access key // @@ -4218,13 +4522,10 @@ // - Not be in IP address format (for example, 192.168.5.4) // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -4358,15 +4659,31 @@ // PutInsightSelectors API operation for AWS CloudTrail. // // Lets you enable Insights event logging by specifying the Insights selectors -// that you want to enable on an existing trail. You also use PutInsightSelectors -// to turn off Insights event logging, by passing an empty list of insight types. -// The valid Insights event types in this release are ApiErrorRateInsight and -// ApiCallRateInsight. -// -// To log CloudTrail Insights events on API call volume, the trail must log -// write management events. To log CloudTrail Insights events on API error rate, -// the trail must log read or write management events. You can call GetEventSelectors -// on a trail to check whether the trail logs management events. +// that you want to enable on an existing trail or event data store. You also +// use PutInsightSelectors to turn off Insights event logging, by passing an +// empty list of Insights types. The valid Insights event types are ApiErrorRateInsight +// and ApiCallRateInsight. +// +// To enable Insights on an event data store, you must specify the ARNs (or +// ID suffix of the ARNs) for the source event data store (EventDataStore) and +// the destination event data store (InsightsDestination). The source event +// data store logs management events and enables Insights. The destination event +// data store logs Insights events based upon the management event activity +// of the source event data store. The source and destination event data stores +// must belong to the same Amazon Web Services account. +// +// To log Insights events for a trail, you must specify the name (TrailName) +// of the CloudTrail trail for which you want to change or add Insights selectors. +// +// To log CloudTrail Insights events on API call volume, the trail or event +// data store must log write management events. To log CloudTrail Insights events +// on API error rate, the trail or event data store must log read or write management +// events. You can call GetEventSelectors on a trail to check whether the trail +// logs management events. You can call GetEventDataStore on an event data store +// to check whether the event data store logs management events. +// +// For more information, see Logging CloudTrail Insights events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html) +// in the CloudTrail User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4377,6 +4694,13 @@ // // Returned Error Types: // +// - InvalidParameterException +// The request includes a parameter that is not valid. +// +// - InvalidParameterCombinationException +// This exception is thrown when the combination of parameters provided is not +// valid. +// // - TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // @@ -4397,13 +4721,10 @@ // - Not be in IP address format (for example, 192.168.5.4) // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. -// -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -4414,9 +4735,21 @@ // other than the Region in which the trail was created. // // - InvalidInsightSelectorsException -// The formatting or syntax of the InsightSelectors JSON statement in your PutInsightSelectors -// or GetInsightSelectors request is not valid, or the specified insight type -// in the InsightSelectors statement is not a valid insight type. +// For PutInsightSelectors, this exception is thrown when the formatting or +// syntax of the InsightSelectors JSON statement is not valid, or the specified +// InsightType in the InsightSelectors statement is not valid. Valid values +// for InsightType are ApiCallRateInsight and ApiErrorRateInsight. To enable +// Insights on an event data store, the destination event data store specified +// by the InsightsDestination parameter must log Insights events and the source +// event data store specified by the EventDataStore parameter must log management +// events. +// +// For UpdateEventDataStore, this exception is thrown if Insights are enabled +// on the event data store and the updated advanced event selectors are not +// compatible with the configured InsightSelectors. If the InsightSelectors +// includes an InsightType of ApiCallRateInsight, the source event data store +// must log write management events. If the InsightSelectors includes an InsightType +// of ApiErrorRateInsight, the source event data store must log management events. // // - InsufficientS3BucketPolicyException // This exception is thrown when the policy on the S3 bucket is not sufficient. @@ -4631,7 +4964,7 @@ // RegisterOrganizationDelegatedAdmin API operation for AWS CloudTrail. // // Registers an organization’s member account as the CloudTrail delegated -// administrator. +// administrator (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-delegated-administrator.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 @@ -4780,13 +5113,10 @@ // This exception is thrown when the specified resource is not found. // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -5324,13 +5654,10 @@ // Returned Error Types: // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. -// -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -5835,13 +6162,10 @@ // - Not be in IP address format (for example, 192.168.5.4) // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -6059,12 +6383,15 @@ // Updates an event data store. The required EventDataStore value is an ARN // or the ID portion of the ARN. Other parameters are optional, but at least // one optional parameter must be specified, or CloudTrail throws an error. -// RetentionPeriod is in days, and valid values are integers between 90 and -// 2557. By default, TerminationProtection is enabled. +// RetentionPeriod is in days, and valid values are integers between 7 and 3653 +// if the BillingMode is set to EXTENDABLE_RETENTION_PRICING, or between 7 and +// 2557 if BillingMode is set to FIXED_RETENTION_PRICING. By default, TerminationProtection +// is enabled. // // For event data stores for CloudTrail events, AdvancedEventSelectors includes -// or excludes management and data events in your event data store. For more -// information about AdvancedEventSelectors, see AdvancedEventSelectors (https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedEventSelector.html). +// or excludes management, data, or Insights events in your event data store. +// For more information about AdvancedEventSelectors, see AdvancedEventSelectors +// (https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedEventSelector.html). // // For event data stores for Config configuration items, Audit Manager evidence, // or non-Amazon Web Services events, AdvancedEventSelectors includes events @@ -6115,6 +6442,23 @@ // - Specify a valid value for a parameter. For example, specifying the ReadWriteType // parameter with a value of read-only is not valid. // +// - InvalidInsightSelectorsException +// For PutInsightSelectors, this exception is thrown when the formatting or +// syntax of the InsightSelectors JSON statement is not valid, or the specified +// InsightType in the InsightSelectors statement is not valid. Valid values +// for InsightType are ApiCallRateInsight and ApiErrorRateInsight. To enable +// Insights on an event data store, the destination event data store specified +// by the InsightsDestination parameter must log Insights events and the source +// event data store specified by the EventDataStore parameter must log management +// events. +// +// For UpdateEventDataStore, this exception is thrown if Insights are enabled +// on the event data store and the updated advanced event selectors are not +// compatible with the configured InsightSelectors. If the InsightSelectors +// includes an InsightType of ApiCallRateInsight, the source event data store +// must log write management events. If the InsightSelectors includes an InsightType +// of ApiErrorRateInsight, the source event data store must log management events. +// // - EventDataStoreHasOngoingImportException // This exception is thrown when you try to update or delete an event data store // that currently has an import in progress. @@ -6335,13 +6679,10 @@ // parameter with a value of read-only is not valid. // // - ARNInvalidException -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail -// -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -6456,13 +6797,10 @@ return out, req.Send() } -// This exception is thrown when an operation is called with a trail ARN that -// is not valid. The following is the format of a trail ARN. -// -// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail +// This exception is thrown when an operation is called with an ARN that is +// not valid. // -// This exception is also thrown when you call AddTags or RemoveTags on a trail, -// event data store, or channel with a resource ARN that is not valid. +// The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // @@ -6530,6 +6868,70 @@ return s.RespMetadata.RequestID } +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + // This exception is thrown when trusted access has not been enabled between // CloudTrail and Organizations. For more information, see Enabling Trusted // Access with Other Amazon Web Services Services (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services.html) @@ -7076,30 +7478,33 @@ // events. // // * eventSource - For filtering management events only. This can be set - // only to NotEquals kms.amazonaws.com. + // to NotEquals kms.amazonaws.com or NotEquals rdsdata.amazonaws.com. // // * eventName - Can use any operator. You can use it to filter in or filter // out any data event logged to CloudTrail, such as PutBucket or GetSnapshotBlock. // You can have multiple values for this field, separated by commas. // // * eventCategory - This is required and must be set to Equals. For CloudTrail - // event records, the value must be Management or Data. For Config configuration - // items, the value must be ConfigurationItem. For Audit Manager evidence, - // the value must be Evidence. For non-Amazon Web Services events, the value - // must be ActivityAuditLog. + // event records, the value must be Management or Data. For CloudTrail Insights + // event records, the value must be Insight. For Config configuration items, + // the value must be ConfigurationItem. For Audit Manager evidence, the value + // must be Evidence. For non-Amazon Web Services events, the value must be + // ActivityAuditLog. // // * resources.type - This field is required for CloudTrail data events. // resources.type can only use the Equals operator, and the value can be // one of the following: AWS::DynamoDB::Table AWS::Lambda::Function AWS::S3::Object - // AWS::CloudTrail::Channel AWS::CodeWhisperer::Profile AWS::Cognito::IdentityPool - // AWS::DynamoDB::Stream AWS::EC2::Snapshot AWS::EMRWAL::Workspace AWS::FinSpace::Environment - // AWS::Glue::Table AWS::GuardDuty::Detector AWS::KendraRanking::ExecutionPlan - // AWS::ManagedBlockchain::Network AWS::ManagedBlockchain::Node AWS::MedicalImaging::Datastore + // AWS::CloudTrail::Channel AWS::CodeWhisperer::Customization AWS::CodeWhisperer::Profile + // AWS::Cognito::IdentityPool AWS::DynamoDB::Stream AWS::EC2::Snapshot AWS::EMRWAL::Workspace + // AWS::FinSpace::Environment AWS::Glue::Table AWS::GuardDuty::Detector AWS::KendraRanking::ExecutionPlan + // AWS::KinesisVideo::Stream AWS::ManagedBlockchain::Network AWS::ManagedBlockchain::Node + // AWS::MedicalImaging::Datastore AWS::PCAConnectorAD::Connector AWS::SageMaker::Endpoint // AWS::SageMaker::ExperimentTrialComponent AWS::SageMaker::FeatureGroup - // AWS::S3::AccessPoint AWS::S3ObjectLambda::AccessPoint AWS::S3Outposts::Object - // AWS::SSMMessages::ControlChannel AWS::VerifiedPermissions::PolicyStore - // You can have only one resources.type field per selector. To log data - // events on more than one resource type, add another selector. + // AWS::SNS::PlatformEndpoint AWS::SNS::Topic AWS::S3::AccessPoint AWS::S3ObjectLambda::AccessPoint + // AWS::S3Outposts::Object AWS::SSMMessages::ControlChannel AWS::Timestream::Database + // AWS::Timestream::Table AWS::VerifiedPermissions::PolicyStore You can have + // only one resources.type field per selector. To log data events on more + // than one resource type, add another selector. // // * resources.ARN - You can use any operator with resources.ARN, but if // you use Equals or NotEquals, the value must exactly match the ARN of a @@ -7118,6 +7523,9 @@ // When resources.type equals AWS::CloudTrail::Channel, and the operator // is set to Equals or NotEquals, the ARN must be in the following format: // arn::cloudtrail:::channel/ + // When resources.type equals AWS::CodeWhisperer::Customization, and the + // operator is set to Equals or NotEquals, the ARN must be in the following + // format: arn::codewhisperer:::customization/ // When resources.type equals AWS::CodeWhisperer::Profile, and the operator // is set to Equals or NotEquals, the ARN must be in the following format: // arn::codewhisperer:::profile/ @@ -7141,6 +7549,9 @@ // When resources.type equals AWS::KendraRanking::ExecutionPlan, and the // operator is set to Equals or NotEquals, the ARN must be in the following // format: arn::kendra-ranking:::rescore-execution-plan/ + // When resources.type equals AWS::KinesisVideo::Stream, and the operator + // is set to Equals or NotEquals, the ARN must be in the following format: + // arn::kinesisvideo:::stream/ // When resources.type equals AWS::ManagedBlockchain::Network, and the operator // is set to Equals or NotEquals, the ARN must be in the following format: // arn::managedblockchain:::networks/ When resources.type @@ -7149,12 +7560,23 @@ // When resources.type equals AWS::MedicalImaging::Datastore, and the operator // is set to Equals or NotEquals, the ARN must be in the following format: // arn::medical-imaging:::datastore/ + // When resources.type equals AWS::PCAConnectorAD::Connector, and the operator + // is set to Equals or NotEquals, the ARN must be in the following format: + // arn::pca-connector-ad:::connector/ + // When resources.type equals AWS::SageMaker::Endpoint, and the operator + // is set to Equals or NotEquals, the ARN must be in the following format: + // arn::sagemaker:::endpoint/ // When resources.type equals AWS::SageMaker::ExperimentTrialComponent, and // the operator is set to Equals or NotEquals, the ARN must be in the following // format: arn::sagemaker:::experiment-trial-component/ // When resources.type equals AWS::SageMaker::FeatureGroup, and the operator // is set to Equals or NotEquals, the ARN must be in the following format: // arn::sagemaker:::feature-group/ + // When resources.type equals AWS::SNS::PlatformEndpoint, and the operator + // is set to Equals or NotEquals, the ARN must be in the following format: + // arn::sns:::endpoint/// + // When resources.type equals AWS::SNS::Topic, and the operator is set to + // Equals or NotEquals, the ARN must be in the following format: arn::sns::: // When resources.type equals AWS::S3::AccessPoint, and the operator is set // to Equals or NotEquals, the ARN must be in one of the following formats. // To log events on all objects in an S3 access point, we recommend that @@ -7169,6 +7591,11 @@ // When resources.type equals AWS::SSMMessages::ControlChannel, and the operator // is set to Equals or NotEquals, the ARN must be in the following format: // arn::ssmmessages:::control-channel/ + // When resources.type equals AWS::Timestream::Database, and the operator + // is set to Equals or NotEquals, the ARN must be in the following format: + // arn::timestream:::database/ + // When resources.type equals AWS::Timestream::Table, and the operator is + // set to Equals or NotEquals, the ARN must be in the following format: arn::timestream:::database//table/ // When resources.type equals AWS::VerifiedPermissions::PolicyStore, and // the operator is set to Equals or NotEquals, the ARN must be in the following // format: arn::verifiedpermissions:::policy-store/ @@ -7958,6 +8385,72 @@ return s.RespMetadata.RequestID } +// You are trying to update a resource when another request is in progress. +// Allow sufficient wait time for the previous request to complete, then retry +// your request. +type ConcurrentModificationException 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 ConcurrentModificationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConcurrentModificationException) GoString() string { + return s.String() +} + +func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error { + return &ConcurrentModificationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConcurrentModificationException) Code() string { + return "ConcurrentModificationException" +} + +// Message returns the exception's message. +func (s *ConcurrentModificationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConcurrentModificationException) OrigErr() error { + return nil +} + +func (s *ConcurrentModificationException) 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 *ConcurrentModificationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConcurrentModificationException) RequestID() string { + return s.RespMetadata.RequestID +} + // This exception is thrown when the specified resource is not ready for an // operation. This can occur when you try to run an operation on a resource // before CloudTrail has time to fully load the resource, or because another @@ -8236,6 +8729,26 @@ // in the CloudTrail User Guide. AdvancedEventSelectors []*AdvancedEventSelector `type:"list"` + // The billing mode for the event data store determines the cost for ingesting + // events and the default and maximum retention period for the event data store. + // + // The following are the possible values: + // + // * EXTENDABLE_RETENTION_PRICING - This billing mode is generally recommended + // if you want a flexible retention period of up to 3653 days (about 10 years). + // The default retention period for this billing mode is 366 days. + // + // * FIXED_RETENTION_PRICING - This billing mode is recommended if you expect + // to ingest more than 25 TB of event data per month and need a retention + // period of up to 2557 days (about 7 years). The default retention period + // for this billing mode is 2557 days. + // + // The default value is EXTENDABLE_RETENTION_PRICING. + // + // For more information about CloudTrail pricing, see CloudTrail Pricing (http://aws.amazon.com/cloudtrail/pricing/) + // and Managing CloudTrail Lake costs (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-manage-costs.html). + BillingMode *string `type:"string" enum:"BillingMode"` + // Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. // The value can be an alias name prefixed by alias/, a fully specified ARN // to an alias, a fully specified ARN to a key, or a globally unique identifier. @@ -8276,12 +8789,16 @@ // in Organizations. OrganizationEnabled *bool `type:"boolean"` - // The retention period of the event data store, in days. You can set a retention - // period of up to 2557 days, the equivalent of seven years. CloudTrail Lake - // determines whether to retain an event by checking if the eventTime of the - // event is within the specified retention period. For example, if you set a - // retention period of 90 days, CloudTrail will remove events when the eventTime - // is older than 90 days. + // The retention period of the event data store, in days. If BillingMode is + // set to EXTENDABLE_RETENTION_PRICING, you can set a retention period of up + // to 3653 days, the equivalent of 10 years. If BillingMode is set to FIXED_RETENTION_PRICING, + // you can set a retention period of up to 2557 days, the equivalent of seven + // years. + // + // CloudTrail Lake determines whether to retain an event by checking if the + // eventTime of the event is within the specified retention period. For example, + // if you set a retention period of 90 days, CloudTrail will remove events when + // the eventTime is older than 90 days. // // If you plan to copy trail events to this event data store, we recommend that // you consider both the age of the events that you want to copy as well as @@ -8370,6 +8887,12 @@ return s } +// SetBillingMode sets the BillingMode field's value. +func (s *CreateEventDataStoreInput) SetBillingMode(v string) *CreateEventDataStoreInput { + s.BillingMode = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *CreateEventDataStoreInput) SetKmsKeyId(v string) *CreateEventDataStoreInput { s.KmsKeyId = &v @@ -8425,6 +8948,9 @@ // data store. AdvancedEventSelectors []*AdvancedEventSelector `type:"list"` + // The billing mode for the event data store. + BillingMode *string `type:"string" enum:"BillingMode"` + // The timestamp that shows when the event data store was created. CreatedTimestamp *time.Time `type:"timestamp"` @@ -8490,6 +9016,12 @@ return s } +// SetBillingMode sets the BillingMode field's value. +func (s *CreateEventDataStoreOutput) SetBillingMode(v string) *CreateEventDataStoreOutput { + s.BillingMode = &v + return s +} + // SetCreatedTimestamp sets the CreatedTimestamp field's value. func (s *CreateEventDataStoreOutput) SetCreatedTimestamp(v time.Time) *CreateEventDataStoreOutput { s.CreatedTimestamp = &v @@ -8565,6 +9097,9 @@ // delivered. You must use a log group that exists in your account. // // Not required unless you specify CloudWatchLogsRoleArn. + // + // Only the management account can configure a CloudWatch Logs log group for + // an organization trail. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to @@ -8998,6 +9533,8 @@ // // * AWS::CloudTrail::Channel // + // * AWS::CodeWhisperer::Customization + // // * AWS::CodeWhisperer::Profile // // * AWS::Cognito::IdentityPool @@ -9016,16 +9553,26 @@ // // * AWS::KendraRanking::ExecutionPlan // + // * AWS::KinesisVideo::Stream + // // * AWS::ManagedBlockchain::Network // // * AWS::ManagedBlockchain::Node // // * AWS::MedicalImaging::Datastore // + // * AWS::PCAConnectorAD::Connector + // + // * AWS::SageMaker::Endpoint + // // * AWS::SageMaker::ExperimentTrialComponent // // * AWS::SageMaker::FeatureGroup // + // * AWS::SNS::PlatformEndpoint + // + // * AWS::SNS::Topic + // // * AWS::S3::AccessPoint // // * AWS::S3ObjectLambda::AccessPoint @@ -9034,6 +9581,10 @@ // // * AWS::SSMMessages::ControlChannel // + // * AWS::Timestream::Database + // + // * AWS::Timestream::Table + // // * AWS::VerifiedPermissions::PolicyStore Type *string `type:"string"` @@ -9856,6 +10407,215 @@ return s } +type DisableFederationInput struct { + _ struct{} `type:"structure"` + + // The ARN (or ID suffix of the ARN) of the event data store for which you want + // to disable Lake query federation. + // + // EventDataStore is a required field + EventDataStore *string `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 DisableFederationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableFederationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisableFederationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisableFederationInput"} + if s.EventDataStore == nil { + invalidParams.Add(request.NewErrParamRequired("EventDataStore")) + } + if s.EventDataStore != nil && len(*s.EventDataStore) < 3 { + invalidParams.Add(request.NewErrParamMinLen("EventDataStore", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEventDataStore sets the EventDataStore field's value. +func (s *DisableFederationInput) SetEventDataStore(v string) *DisableFederationInput { + s.EventDataStore = &v + return s +} + +type DisableFederationOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the event data store for which you disabled Lake query federation. + EventDataStoreArn *string `min:"3" type:"string"` + + // The federation status. + FederationStatus *string `type:"string" enum:"FederationStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableFederationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableFederationOutput) GoString() string { + return s.String() +} + +// SetEventDataStoreArn sets the EventDataStoreArn field's value. +func (s *DisableFederationOutput) SetEventDataStoreArn(v string) *DisableFederationOutput { + s.EventDataStoreArn = &v + return s +} + +// SetFederationStatus sets the FederationStatus field's value. +func (s *DisableFederationOutput) SetFederationStatus(v string) *DisableFederationOutput { + s.FederationStatus = &v + return s +} + +type EnableFederationInput struct { + _ struct{} `type:"structure"` + + // The ARN (or ID suffix of the ARN) of the event data store for which you want + // to enable Lake query federation. + // + // EventDataStore is a required field + EventDataStore *string `min:"3" type:"string" required:"true"` + + // The ARN of the federation role to use for the event data store. Amazon Web + // Services services like Lake Formation use this federation role to access + // data for the federated event data store. The federation role must exist in + // your account and provide the required minimum permissions (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html#query-federation-permissions-role). + // + // FederationRoleArn is a required field + FederationRoleArn *string `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 EnableFederationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableFederationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EnableFederationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnableFederationInput"} + if s.EventDataStore == nil { + invalidParams.Add(request.NewErrParamRequired("EventDataStore")) + } + if s.EventDataStore != nil && len(*s.EventDataStore) < 3 { + invalidParams.Add(request.NewErrParamMinLen("EventDataStore", 3)) + } + if s.FederationRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("FederationRoleArn")) + } + if s.FederationRoleArn != nil && len(*s.FederationRoleArn) < 3 { + invalidParams.Add(request.NewErrParamMinLen("FederationRoleArn", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEventDataStore sets the EventDataStore field's value. +func (s *EnableFederationInput) SetEventDataStore(v string) *EnableFederationInput { + s.EventDataStore = &v + return s +} + +// SetFederationRoleArn sets the FederationRoleArn field's value. +func (s *EnableFederationInput) SetFederationRoleArn(v string) *EnableFederationInput { + s.FederationRoleArn = &v + return s +} + +type EnableFederationOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the event data store for which you enabled Lake query federation. + EventDataStoreArn *string `min:"3" type:"string"` + + // The ARN of the federation role. + FederationRoleArn *string `min:"3" type:"string"` + + // The federation status. + FederationStatus *string `type:"string" enum:"FederationStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableFederationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableFederationOutput) GoString() string { + return s.String() +} + +// SetEventDataStoreArn sets the EventDataStoreArn field's value. +func (s *EnableFederationOutput) SetEventDataStoreArn(v string) *EnableFederationOutput { + s.EventDataStoreArn = &v + return s +} + +// SetFederationRoleArn sets the FederationRoleArn field's value. +func (s *EnableFederationOutput) SetFederationRoleArn(v string) *EnableFederationOutput { + s.FederationRoleArn = &v + return s +} + +// SetFederationStatus sets the FederationStatus field's value. +func (s *EnableFederationOutput) SetFederationStatus(v string) *EnableFederationOutput { + s.FederationStatus = &v + return s +} + // Contains information about an event that was returned by a lookup request. // The result includes a representation of a CloudTrail event. type Event struct { @@ -9966,8 +10726,7 @@ // A storage lake of event data against which you can run complex SQL-based // queries. An event data store can include events that you have logged on your -// account from the last 90 to 2557 days (about three months to up to seven -// years). To select events for an event data store, use advanced event selectors +// account. To select events for an event data store, use advanced event selectors // (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#creating-data-event-selectors-advanced). type EventDataStore struct { _ struct{} `type:"structure"` @@ -10230,6 +10989,72 @@ return s.RespMetadata.RequestID } +// You cannot delete the event data store because Lake query federation is enabled. +// To delete the event data store, run the DisableFederation operation to disable +// Lake query federation on the event data store. +type EventDataStoreFederationEnabledException 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 EventDataStoreFederationEnabledException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EventDataStoreFederationEnabledException) GoString() string { + return s.String() +} + +func newErrorEventDataStoreFederationEnabledException(v protocol.ResponseMetadata) error { + return &EventDataStoreFederationEnabledException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *EventDataStoreFederationEnabledException) Code() string { + return "EventDataStoreFederationEnabledException" +} + +// Message returns the exception's message. +func (s *EventDataStoreFederationEnabledException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *EventDataStoreFederationEnabledException) OrigErr() error { + return nil +} + +func (s *EventDataStoreFederationEnabledException) 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 *EventDataStoreFederationEnabledException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *EventDataStoreFederationEnabledException) RequestID() string { + return s.RespMetadata.RequestID +} + // This exception is thrown when you try to update or delete an event data store // that currently has an import in progress. type EventDataStoreHasOngoingImportException struct { @@ -10776,12 +11601,25 @@ // The advanced event selectors used to select events for the data store. AdvancedEventSelectors []*AdvancedEventSelector `type:"list"` + // The billing mode for the event data store. + BillingMode *string `type:"string" enum:"BillingMode"` + // The timestamp of the event data store's creation. CreatedTimestamp *time.Time `type:"timestamp"` // The event data store Amazon Resource Number (ARN). EventDataStoreArn *string `min:"3" type:"string"` + // If Lake query federation is enabled, provides the ARN of the federation role + // used to access the resources for the federated event data store. + FederationRoleArn *string `min:"3" type:"string"` + + // Indicates the Lake query federation (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html) + // status. The status is ENABLED if Lake query federation is enabled, or DISABLED + // if Lake query federation is disabled. You cannot delete an event data store + // if the FederationStatus is ENABLED. + FederationStatus *string `type:"string" enum:"FederationStatus"` + // Specifies the KMS key ID that encrypts the events delivered by CloudTrail. // The value is a fully specified ARN to a KMS key in the following format. // @@ -10837,6 +11675,12 @@ return s } +// SetBillingMode sets the BillingMode field's value. +func (s *GetEventDataStoreOutput) SetBillingMode(v string) *GetEventDataStoreOutput { + s.BillingMode = &v + return s +} + // SetCreatedTimestamp sets the CreatedTimestamp field's value. func (s *GetEventDataStoreOutput) SetCreatedTimestamp(v time.Time) *GetEventDataStoreOutput { s.CreatedTimestamp = &v @@ -10849,6 +11693,18 @@ return s } +// SetFederationRoleArn sets the FederationRoleArn field's value. +func (s *GetEventDataStoreOutput) SetFederationRoleArn(v string) *GetEventDataStoreOutput { + s.FederationRoleArn = &v + return s +} + +// SetFederationStatus sets the FederationStatus field's value. +func (s *GetEventDataStoreOutput) SetFederationStatus(v string) *GetEventDataStoreOutput { + s.FederationStatus = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *GetEventDataStoreOutput) SetKmsKeyId(v string) *GetEventDataStoreOutput { s.KmsKeyId = &v @@ -11169,6 +12025,12 @@ type GetInsightSelectorsInput struct { _ struct{} `type:"structure"` + // Specifies the ARN (or ID suffix of the ARN) of the event data store for which + // you want to get Insights selectors. + // + // You cannot use this parameter with the TrailName parameter. + EventDataStore *string `min:"3" type:"string"` + // Specifies the name of the trail or trail ARN. If you specify a trail name, // the string must meet the following requirements: // @@ -11188,8 +12050,8 @@ // // arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // - // TrailName is a required field - TrailName *string `type:"string" required:"true"` + // You cannot use this parameter with the EventDataStore parameter. + TrailName *string `type:"string"` } // String returns the string representation. @@ -11213,8 +12075,8 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *GetInsightSelectorsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetInsightSelectorsInput"} - if s.TrailName == nil { - invalidParams.Add(request.NewErrParamRequired("TrailName")) + if s.EventDataStore != nil && len(*s.EventDataStore) < 3 { + invalidParams.Add(request.NewErrParamMinLen("EventDataStore", 3)) } if invalidParams.Len() > 0 { @@ -11223,6 +12085,12 @@ return nil } +// SetEventDataStore sets the EventDataStore field's value. +func (s *GetInsightSelectorsInput) SetEventDataStore(v string) *GetInsightSelectorsInput { + s.EventDataStore = &v + return s +} + // SetTrailName sets the TrailName field's value. func (s *GetInsightSelectorsInput) SetTrailName(v string) *GetInsightSelectorsInput { s.TrailName = &v @@ -11232,11 +12100,17 @@ type GetInsightSelectorsOutput struct { _ struct{} `type:"structure"` - // A JSON string that contains the insight types you want to log on a trail. - // In this release, ApiErrorRateInsight and ApiCallRateInsight are supported - // as insight types. + // The ARN of the source event data store that enabled Insights events. + EventDataStoreArn *string `min:"3" type:"string"` + + // A JSON string that contains the Insight types you want to log on a trail + // or event data store. ApiErrorRateInsight and ApiCallRateInsight are supported + // as Insights types. InsightSelectors []*InsightSelector `type:"list"` + // The ARN of the destination event data store that logs Insights events. + InsightsDestination *string `min:"3" type:"string"` + // The Amazon Resource Name (ARN) of a trail for which you want to get Insights // selectors. TrailARN *string `type:"string"` @@ -11260,12 +12134,24 @@ return s.String() } +// SetEventDataStoreArn sets the EventDataStoreArn field's value. +func (s *GetInsightSelectorsOutput) SetEventDataStoreArn(v string) *GetInsightSelectorsOutput { + s.EventDataStoreArn = &v + return s +} + // SetInsightSelectors sets the InsightSelectors field's value. func (s *GetInsightSelectorsOutput) SetInsightSelectors(v []*InsightSelector) *GetInsightSelectorsOutput { s.InsightSelectors = v return s } +// SetInsightsDestination sets the InsightsDestination field's value. +func (s *GetInsightSelectorsOutput) SetInsightsDestination(v string) *GetInsightSelectorsOutput { + s.InsightsDestination = &v + return s +} + // SetTrailARN sets the TrailARN field's value. func (s *GetInsightSelectorsOutput) SetTrailARN(v string) *GetInsightSelectorsOutput { s.TrailARN = &v @@ -12375,8 +13261,8 @@ return s } -// If you run GetInsightSelectors on a trail that does not have Insights events -// enabled, the operation throws the exception InsightNotEnabledException. +// If you run GetInsightSelectors on a trail or event data store that does not +// have Insights events enabled, the operation throws the exception InsightNotEnabledException. type InsightNotEnabledException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12441,12 +13327,12 @@ } // A JSON string that contains a list of Insights types that are logged on a -// trail. +// trail or event data store. type InsightSelector struct { _ struct{} `type:"structure"` - // The type of Insights events to log on a trail. ApiCallRateInsight and ApiErrorRateInsight - // are valid Insight types. + // The type of Insights events to log on a trail or event data store. ApiCallRateInsight + // and ApiErrorRateInsight are valid Insight types. // // The ApiCallRateInsight Insights type analyzes write-only management API calls // that are aggregated per minute against a baseline API call volume. @@ -13346,9 +14232,21 @@ return s.RespMetadata.RequestID } -// The formatting or syntax of the InsightSelectors JSON statement in your PutInsightSelectors -// or GetInsightSelectors request is not valid, or the specified insight type -// in the InsightSelectors statement is not a valid insight type. +// For PutInsightSelectors, this exception is thrown when the formatting or +// syntax of the InsightSelectors JSON statement is not valid, or the specified +// InsightType in the InsightSelectors statement is not valid. Valid values +// for InsightType are ApiCallRateInsight and ApiErrorRateInsight. To enable +// Insights on an event data store, the destination event data store specified +// by the InsightsDestination parameter must log Insights events and the source +// event data store specified by the EventDataStore parameter must log management +// events. +// +// For UpdateEventDataStore, this exception is thrown if Insights are enabled +// on the event data store and the updated advanced event selectors are not +// compatible with the configured InsightSelectors. If the InsightSelectors +// includes an InsightType of ApiCallRateInsight, the source event data store +// must log write management events. If the InsightSelectors includes an InsightType +// of ApiErrorRateInsight, the source event data store must log management events. type InvalidInsightSelectorsException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -16470,8 +17368,17 @@ type PutInsightSelectorsInput struct { _ struct{} `type:"structure"` - // A JSON string that contains the insight types you want to log on a trail. - // ApiCallRateInsight and ApiErrorRateInsight are valid Insight types. + // The ARN (or ID suffix of the ARN) of the source event data store for which + // you want to change or add Insights selectors. To enable Insights on an event + // data store, you must provide both the EventDataStore and InsightsDestination + // parameters. + // + // You cannot use this parameter with the TrailName parameter. + EventDataStore *string `min:"3" type:"string"` + + // A JSON string that contains the Insights types you want to log on a trail + // or event data store. ApiCallRateInsight and ApiErrorRateInsight are valid + // Insight types. // // The ApiCallRateInsight Insights type analyzes write-only management API calls // that are aggregated per minute against a baseline API call volume. @@ -16482,11 +17389,19 @@ // InsightSelectors is a required field InsightSelectors []*InsightSelector `type:"list" required:"true"` + // The ARN (or ID suffix of the ARN) of the destination event data store that + // logs Insights events. To enable Insights on an event data store, you must + // provide both the EventDataStore and InsightsDestination parameters. + // + // You cannot use this parameter with the TrailName parameter. + InsightsDestination *string `min:"3" type:"string"` + // The name of the CloudTrail trail for which you want to change or add Insights // selectors. // - // TrailName is a required field - TrailName *string `type:"string" required:"true"` + // You cannot use this parameter with the EventDataStore and InsightsDestination + // parameters. + TrailName *string `type:"string"` } // String returns the string representation. @@ -16510,11 +17425,14 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *PutInsightSelectorsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutInsightSelectorsInput"} + if s.EventDataStore != nil && len(*s.EventDataStore) < 3 { + invalidParams.Add(request.NewErrParamMinLen("EventDataStore", 3)) + } if s.InsightSelectors == nil { invalidParams.Add(request.NewErrParamRequired("InsightSelectors")) } - if s.TrailName == nil { - invalidParams.Add(request.NewErrParamRequired("TrailName")) + if s.InsightsDestination != nil && len(*s.InsightsDestination) < 3 { + invalidParams.Add(request.NewErrParamMinLen("InsightsDestination", 3)) } if invalidParams.Len() > 0 { @@ -16523,12 +17441,24 @@ return nil } +// SetEventDataStore sets the EventDataStore field's value. +func (s *PutInsightSelectorsInput) SetEventDataStore(v string) *PutInsightSelectorsInput { + s.EventDataStore = &v + return s +} + // SetInsightSelectors sets the InsightSelectors field's value. func (s *PutInsightSelectorsInput) SetInsightSelectors(v []*InsightSelector) *PutInsightSelectorsInput { s.InsightSelectors = v return s } +// SetInsightsDestination sets the InsightsDestination field's value. +func (s *PutInsightSelectorsInput) SetInsightsDestination(v string) *PutInsightSelectorsInput { + s.InsightsDestination = &v + return s +} + // SetTrailName sets the TrailName field's value. func (s *PutInsightSelectorsInput) SetTrailName(v string) *PutInsightSelectorsInput { s.TrailName = &v @@ -16538,11 +17468,18 @@ type PutInsightSelectorsOutput struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the source event data store for which you + // want to change or add Insights selectors. + EventDataStoreArn *string `min:"3" type:"string"` + // A JSON string that contains the Insights event types that you want to log - // on a trail. The valid Insights types in this release are ApiErrorRateInsight + // on a trail or event data store. The valid Insights types are ApiErrorRateInsight // and ApiCallRateInsight. InsightSelectors []*InsightSelector `type:"list"` + // The ARN of the destination event data store that logs Insights events. + InsightsDestination *string `min:"3" type:"string"` + // The Amazon Resource Name (ARN) of a trail for which you want to change or // add Insights selectors. TrailARN *string `type:"string"` @@ -16566,12 +17503,24 @@ return s.String() } +// SetEventDataStoreArn sets the EventDataStoreArn field's value. +func (s *PutInsightSelectorsOutput) SetEventDataStoreArn(v string) *PutInsightSelectorsOutput { + s.EventDataStoreArn = &v + return s +} + // SetInsightSelectors sets the InsightSelectors field's value. func (s *PutInsightSelectorsOutput) SetInsightSelectors(v []*InsightSelector) *PutInsightSelectorsOutput { s.InsightSelectors = v return s } +// SetInsightsDestination sets the InsightsDestination field's value. +func (s *PutInsightSelectorsOutput) SetInsightsDestination(v string) *PutInsightSelectorsOutput { + s.InsightsDestination = &v + return s +} + // SetTrailARN sets the TrailARN field's value. func (s *PutInsightSelectorsOutput) SetTrailARN(v string) *PutInsightSelectorsOutput { s.TrailARN = &v @@ -17593,6 +18542,9 @@ // The advanced event selectors that were used to select events. AdvancedEventSelectors []*AdvancedEventSelector `type:"list"` + // The billing mode for the event data store. + BillingMode *string `type:"string" enum:"BillingMode"` + // The timestamp of an event data store's creation. CreatedTimestamp *time.Time `type:"timestamp"` @@ -17656,6 +18608,12 @@ return s } +// SetBillingMode sets the BillingMode field's value. +func (s *RestoreEventDataStoreOutput) SetBillingMode(v string) *RestoreEventDataStoreOutput { + s.BillingMode = &v + return s +} + // SetCreatedTimestamp sets the CreatedTimestamp field's value. func (s *RestoreEventDataStoreOutput) SetCreatedTimestamp(v time.Time) *RestoreEventDataStoreOutput { s.CreatedTimestamp = &v @@ -19485,6 +20443,30 @@ // store. AdvancedEventSelectors []*AdvancedEventSelector `type:"list"` + // + // You can't change the billing mode from EXTENDABLE_RETENTION_PRICING to FIXED_RETENTION_PRICING. + // If BillingMode is set to EXTENDABLE_RETENTION_PRICING and you want to use + // FIXED_RETENTION_PRICING instead, you'll need to stop ingestion on the event + // data store and create a new event data store that uses FIXED_RETENTION_PRICING. + // + // The billing mode for the event data store determines the cost for ingesting + // events and the default and maximum retention period for the event data store. + // + // The following are the possible values: + // + // * EXTENDABLE_RETENTION_PRICING - This billing mode is generally recommended + // if you want a flexible retention period of up to 3653 days (about 10 years). + // The default retention period for this billing mode is 366 days. + // + // * FIXED_RETENTION_PRICING - This billing mode is recommended if you expect + // to ingest more than 25 TB of event data per month and need a retention + // period of up to 2557 days (about 7 years). The default retention period + // for this billing mode is 2557 days. + // + // For more information about CloudTrail pricing, see CloudTrail Pricing (http://aws.amazon.com/cloudtrail/pricing/) + // and Managing CloudTrail Lake costs (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-manage-costs.html). + BillingMode *string `type:"string" enum:"BillingMode"` + // The ARN (or the ID suffix of the ARN) of the event data store that you want // to update. // @@ -19527,14 +20509,22 @@ // Specifies whether an event data store collects events logged for an organization // in Organizations. + // + // Only the management account for the organization can convert an organization + // event data store to a non-organization event data store, or convert a non-organization + // event data store to an organization event data store. OrganizationEnabled *bool `type:"boolean"` - // The retention period of the event data store, in days. You can set a retention - // period of up to 2557 days, the equivalent of seven years. CloudTrail Lake - // determines whether to retain an event by checking if the eventTime of the - // event is within the specified retention period. For example, if you set a - // retention period of 90 days, CloudTrail will remove events when the eventTime - // is older than 90 days. + // The retention period of the event data store, in days. If BillingMode is + // set to EXTENDABLE_RETENTION_PRICING, you can set a retention period of up + // to 3653 days, the equivalent of 10 years. If BillingMode is set to FIXED_RETENTION_PRICING, + // you can set a retention period of up to 2557 days, the equivalent of seven + // years. + // + // CloudTrail Lake determines whether to retain an event by checking if the + // eventTime of the event is within the specified retention period. For example, + // if you set a retention period of 90 days, CloudTrail will remove events when + // the eventTime is older than 90 days. // // If you decrease the retention period of an event data store, CloudTrail will // remove any events with an eventTime older than the new retention period. @@ -19607,6 +20597,12 @@ return s } +// SetBillingMode sets the BillingMode field's value. +func (s *UpdateEventDataStoreInput) SetBillingMode(v string) *UpdateEventDataStoreInput { + s.BillingMode = &v + return s +} + // SetEventDataStore sets the EventDataStore field's value. func (s *UpdateEventDataStoreInput) SetEventDataStore(v string) *UpdateEventDataStoreInput { s.EventDataStore = &v @@ -19655,12 +20651,25 @@ // The advanced event selectors that are applied to the event data store. AdvancedEventSelectors []*AdvancedEventSelector `type:"list"` + // The billing mode for the event data store. + BillingMode *string `type:"string" enum:"BillingMode"` + // The timestamp that shows when an event data store was first created. CreatedTimestamp *time.Time `type:"timestamp"` // The ARN of the event data store. EventDataStoreArn *string `min:"3" type:"string"` + // If Lake query federation is enabled, provides the ARN of the federation role + // used to access the resources for the federated event data store. + FederationRoleArn *string `min:"3" type:"string"` + + // Indicates the Lake query federation (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html) + // status. The status is ENABLED if Lake query federation is enabled, or DISABLED + // if Lake query federation is disabled. You cannot delete an event data store + // if the FederationStatus is ENABLED. + FederationStatus *string `type:"string" enum:"FederationStatus"` + // Specifies the KMS key ID that encrypts the events delivered by CloudTrail. // The value is a fully specified ARN to a KMS key in the following format. // @@ -19716,6 +20725,12 @@ return s } +// SetBillingMode sets the BillingMode field's value. +func (s *UpdateEventDataStoreOutput) SetBillingMode(v string) *UpdateEventDataStoreOutput { + s.BillingMode = &v + return s +} + // SetCreatedTimestamp sets the CreatedTimestamp field's value. func (s *UpdateEventDataStoreOutput) SetCreatedTimestamp(v time.Time) *UpdateEventDataStoreOutput { s.CreatedTimestamp = &v @@ -19728,6 +20743,18 @@ return s } +// SetFederationRoleArn sets the FederationRoleArn field's value. +func (s *UpdateEventDataStoreOutput) SetFederationRoleArn(v string) *UpdateEventDataStoreOutput { + s.FederationRoleArn = &v + return s +} + +// SetFederationStatus sets the FederationStatus field's value. +func (s *UpdateEventDataStoreOutput) SetFederationStatus(v string) *UpdateEventDataStoreOutput { + s.FederationStatus = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *UpdateEventDataStoreOutput) SetKmsKeyId(v string) *UpdateEventDataStoreOutput { s.KmsKeyId = &v @@ -19785,6 +20812,9 @@ // You must use a log group that exists in your account. // // Not required unless you specify CloudWatchLogsRoleArn. + // + // Only the management account can configure a CloudWatch Logs log group for + // an organization trail. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to @@ -19819,13 +20849,16 @@ // Specifies whether the trail is applied to all accounts in an organization // in Organizations, or only for the current Amazon Web Services account. The // default is false, and cannot be true unless the call is made on behalf of - // an Amazon Web Services account that is the management account or delegated - // administrator account for an organization in Organizations. If the trail - // is not an organization trail and this is set to true, the trail will be created - // in all Amazon Web Services accounts that belong to the organization. If the - // trail is an organization trail and this is set to false, the trail will remain - // in the current Amazon Web Services account but be deleted from all member - // accounts in the organization. + // an Amazon Web Services account that is the management account for an organization + // in Organizations. If the trail is not an organization trail and this is set + // to true, the trail will be created in all Amazon Web Services accounts that + // belong to the organization. If the trail is an organization trail and this + // is set to false, the trail will remain in the current Amazon Web Services + // account but be deleted from all member accounts in the organization. + // + // Only the management account for the organization can convert an organization + // trail to a non-organization trail, or convert a non-organization trail to + // an organization trail. IsOrganizationTrail *bool `type:"boolean"` // Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. @@ -20140,6 +21173,22 @@ } const ( + // BillingModeExtendableRetentionPricing is a BillingMode enum value + BillingModeExtendableRetentionPricing = "EXTENDABLE_RETENTION_PRICING" + + // BillingModeFixedRetentionPricing is a BillingMode enum value + BillingModeFixedRetentionPricing = "FIXED_RETENTION_PRICING" +) + +// BillingMode_Values returns all elements of the BillingMode enum +func BillingMode_Values() []string { + return []string{ + BillingModeExtendableRetentionPricing, + BillingModeFixedRetentionPricing, + } +} + +const ( // DeliveryStatusSuccess is a DeliveryStatus enum value DeliveryStatusSuccess = "SUCCESS" @@ -20243,6 +21292,30 @@ } } +const ( + // FederationStatusEnabling is a FederationStatus enum value + FederationStatusEnabling = "ENABLING" + + // FederationStatusEnabled is a FederationStatus enum value + FederationStatusEnabled = "ENABLED" + + // FederationStatusDisabling is a FederationStatus enum value + FederationStatusDisabling = "DISABLING" + + // FederationStatusDisabled is a FederationStatus enum value + FederationStatusDisabled = "DISABLED" +) + +// FederationStatus_Values returns all elements of the FederationStatus enum +func FederationStatus_Values() []string { + return []string{ + FederationStatusEnabling, + FederationStatusEnabled, + FederationStatusDisabling, + FederationStatusDisabled, + } +} + const ( // ImportFailureStatusFailed is a ImportFailureStatus enum value ImportFailureStatusFailed = "FAILED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudtrail/cloudtrailiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudtrail/cloudtrailiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudtrail/cloudtrailiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudtrail/cloudtrailiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -108,6 +108,14 @@ DescribeTrailsWithContext(aws.Context, *cloudtrail.DescribeTrailsInput, ...request.Option) (*cloudtrail.DescribeTrailsOutput, error) DescribeTrailsRequest(*cloudtrail.DescribeTrailsInput) (*request.Request, *cloudtrail.DescribeTrailsOutput) + DisableFederation(*cloudtrail.DisableFederationInput) (*cloudtrail.DisableFederationOutput, error) + DisableFederationWithContext(aws.Context, *cloudtrail.DisableFederationInput, ...request.Option) (*cloudtrail.DisableFederationOutput, error) + DisableFederationRequest(*cloudtrail.DisableFederationInput) (*request.Request, *cloudtrail.DisableFederationOutput) + + EnableFederation(*cloudtrail.EnableFederationInput) (*cloudtrail.EnableFederationOutput, error) + EnableFederationWithContext(aws.Context, *cloudtrail.EnableFederationInput, ...request.Option) (*cloudtrail.EnableFederationOutput, error) + EnableFederationRequest(*cloudtrail.EnableFederationInput) (*request.Request, *cloudtrail.EnableFederationOutput) + GetChannel(*cloudtrail.GetChannelInput) (*cloudtrail.GetChannelOutput, error) GetChannelWithContext(aws.Context, *cloudtrail.GetChannelInput, ...request.Option) (*cloudtrail.GetChannelOutput, error) GetChannelRequest(*cloudtrail.GetChannelInput) (*request.Request, *cloudtrail.GetChannelOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudtrail/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudtrail/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudtrail/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudtrail/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -11,19 +11,22 @@ // ErrCodeARNInvalidException for service response error code // "CloudTrailARNInvalidException". // - // This exception is thrown when an operation is called with a trail ARN that - // is not valid. The following is the format of a trail ARN. + // This exception is thrown when an operation is called with an ARN that is + // not valid. // - // arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail - // - // This exception is also thrown when you call AddTags or RemoveTags on a trail, - // event data store, or channel with a resource ARN that is not valid. + // The following is the format of a trail ARN: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail // // The following is the format of an event data store ARN: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE // // The following is the format of a channel ARN: arn:aws:cloudtrail:us-east-2:123456789012:channel/01234567890 ErrCodeARNInvalidException = "CloudTrailARNInvalidException" + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + // ErrCodeAccessNotEnabledException for service response error code // "CloudTrailAccessNotEnabledException". // @@ -114,6 +117,14 @@ // Cannot set a CloudWatch Logs delivery for this Region. ErrCodeCloudWatchLogsDeliveryUnavailableException = "CloudWatchLogsDeliveryUnavailableException" + // ErrCodeConcurrentModificationException for service response error code + // "ConcurrentModificationException". + // + // You are trying to update a resource when another request is in progress. + // Allow sufficient wait time for the previous request to complete, then retry + // your request. + ErrCodeConcurrentModificationException = "ConcurrentModificationException" + // ErrCodeConflictException for service response error code // "ConflictException". // @@ -144,6 +155,14 @@ // An event data store with that name already exists. ErrCodeEventDataStoreAlreadyExistsException = "EventDataStoreAlreadyExistsException" + // ErrCodeEventDataStoreFederationEnabledException for service response error code + // "EventDataStoreFederationEnabledException". + // + // You cannot delete the event data store because Lake query federation is enabled. + // To delete the event data store, run the DisableFederation operation to disable + // Lake query federation on the event data store. + ErrCodeEventDataStoreFederationEnabledException = "EventDataStoreFederationEnabledException" + // ErrCodeEventDataStoreHasOngoingImportException for service response error code // "EventDataStoreHasOngoingImportException". // @@ -192,8 +211,8 @@ // ErrCodeInsightNotEnabledException for service response error code // "InsightNotEnabledException". // - // If you run GetInsightSelectors on a trail that does not have Insights events - // enabled, the operation throws the exception InsightNotEnabledException. + // If you run GetInsightSelectors on a trail or event data store that does not + // have Insights events enabled, the operation throws the exception InsightNotEnabledException. ErrCodeInsightNotEnabledException = "InsightNotEnabledException" // ErrCodeInsufficientDependencyServiceAccessPermissionException for service response error code @@ -311,9 +330,21 @@ // ErrCodeInvalidInsightSelectorsException for service response error code // "InvalidInsightSelectorsException". // - // The formatting or syntax of the InsightSelectors JSON statement in your PutInsightSelectors - // or GetInsightSelectors request is not valid, or the specified insight type - // in the InsightSelectors statement is not a valid insight type. + // For PutInsightSelectors, this exception is thrown when the formatting or + // syntax of the InsightSelectors JSON statement is not valid, or the specified + // InsightType in the InsightSelectors statement is not valid. Valid values + // for InsightType are ApiCallRateInsight and ApiErrorRateInsight. To enable + // Insights on an event data store, the destination event data store specified + // by the InsightsDestination parameter must log Insights events and the source + // event data store specified by the EventDataStore parameter must log management + // events. + // + // For UpdateEventDataStore, this exception is thrown if Insights are enabled + // on the event data store and the updated advanced event selectors are not + // compatible with the configured InsightSelectors. If the InsightSelectors + // includes an InsightType of ApiCallRateInsight, the source event data store + // must log write management events. If the InsightSelectors includes an InsightType + // of ApiErrorRateInsight, the source event data store must log management events. ErrCodeInvalidInsightSelectorsException = "InvalidInsightSelectorsException" // ErrCodeInvalidKmsKeyIdException for service response error code @@ -609,6 +640,7 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "CloudTrailARNInvalidException": newErrorARNInvalidException, + "AccessDeniedException": newErrorAccessDeniedException, "CloudTrailAccessNotEnabledException": newErrorAccessNotEnabledException, "AccountHasOngoingImportException": newErrorAccountHasOngoingImportException, "AccountNotFoundException": newErrorAccountNotFoundException, @@ -622,10 +654,12 @@ "ChannelNotFoundException": newErrorChannelNotFoundException, "CloudTrailInvalidClientTokenIdException": newErrorCloudTrailInvalidClientTokenIdException, "CloudWatchLogsDeliveryUnavailableException": newErrorCloudWatchLogsDeliveryUnavailableException, + "ConcurrentModificationException": newErrorConcurrentModificationException, "ConflictException": newErrorConflictException, "DelegatedAdminAccountLimitExceededException": newErrorDelegatedAdminAccountLimitExceededException, "EventDataStoreARNInvalidException": newErrorEventDataStoreARNInvalidException, "EventDataStoreAlreadyExistsException": newErrorEventDataStoreAlreadyExistsException, + "EventDataStoreFederationEnabledException": newErrorEventDataStoreFederationEnabledException, "EventDataStoreHasOngoingImportException": newErrorEventDataStoreHasOngoingImportException, "EventDataStoreMaxLimitExceededException": newErrorEventDataStoreMaxLimitExceededException, "EventDataStoreNotFoundException": newErrorEventDataStoreNotFoundException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchevents/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchevents/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchevents/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchevents/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -5857,7 +5857,11 @@ Key *string `type:"string"` // The value associated with the key. - Value *string `type:"string"` + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ConnectionBodyParameter's + // String and GoString methods. + Value *string `type:"string" sensitive:"true"` } // String returns the string representation. @@ -5908,7 +5912,11 @@ Key *string `type:"string"` // The value associated with the key. - Value *string `type:"string"` + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ConnectionHeaderParameter's + // String and GoString methods. + Value *string `type:"string" sensitive:"true"` } // String returns the string representation. @@ -6105,7 +6113,11 @@ Key *string `type:"string"` // The value associated with the key for the query string parameter. - Value *string `type:"string"` + // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ConnectionQueryStringParameter's + // String and GoString methods. + Value *string `type:"string" sensitive:"true"` } // String returns the string representation. @@ -6485,8 +6497,12 @@ // The value for the API key to use for authorization. // + // ApiKeyValue is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateConnectionApiKeyAuthRequestParameters's + // String and GoString methods. + // // ApiKeyValue is a required field - ApiKeyValue *string `min:"1" type:"string" required:"true"` + ApiKeyValue *string `min:"1" type:"string" required:"true" sensitive:"true"` } // String returns the string representation. @@ -6637,8 +6653,12 @@ // The password associated with the user name to use for Basic authorization. // + // Password is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateConnectionBasicAuthRequestParameters's + // String and GoString methods. + // // Password is a required field - Password *string `min:"1" type:"string" required:"true"` + Password *string `min:"1" type:"string" required:"true" sensitive:"true"` // The user name to use for Basic authorization. // @@ -6802,8 +6822,12 @@ // The client secret associated with the client ID to use for OAuth authorization // for the connection. // + // ClientSecret is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateConnectionOAuthClientRequestParameters's + // String and GoString methods. + // // ClientSecret is a required field - ClientSecret *string `min:"1" type:"string" required:"true"` + ClientSecret *string `min:"1" type:"string" required:"true" sensitive:"true"` } // String returns the string representation. @@ -15380,7 +15404,11 @@ ApiKeyName *string `min:"1" type:"string"` // The value associated with teh API key to use for authorization. - ApiKeyValue *string `min:"1" type:"string"` + // + // ApiKeyValue is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateConnectionApiKeyAuthRequestParameters's + // String and GoString methods. + ApiKeyValue *string `min:"1" type:"string" sensitive:"true"` } // String returns the string representation. @@ -15522,7 +15550,11 @@ _ struct{} `type:"structure"` // The password associated with the user name to use for Basic authorization. - Password *string `min:"1" type:"string"` + // + // Password is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateConnectionBasicAuthRequestParameters's + // String and GoString methods. + Password *string `min:"1" type:"string" sensitive:"true"` // The user name to use for Basic authorization. Username *string `min:"1" type:"string"` @@ -15663,7 +15695,11 @@ ClientID *string `min:"1" type:"string"` // The client secret assciated with the client ID to use for OAuth authorization. - ClientSecret *string `min:"1" type:"string"` + // + // ClientSecret is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateConnectionOAuthClientRequestParameters's + // String and GoString methods. + ClientSecret *string `min:"1" type:"string" sensitive:"true"` } // String returns the string representation. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchlogs/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchlogs/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchlogs/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchlogs/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -235,6 +235,137 @@ return out, req.Send() } +const opCreateDelivery = "CreateDelivery" + +// CreateDeliveryRequest generates a "aws/request.Request" representing the +// client's request for the CreateDelivery 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 CreateDelivery for more information on using the CreateDelivery +// 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 CreateDeliveryRequest method. +// req, resp := client.CreateDeliveryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateDelivery +func (c *CloudWatchLogs) CreateDeliveryRequest(input *CreateDeliveryInput) (req *request.Request, output *CreateDeliveryOutput) { + op := &request.Operation{ + Name: opCreateDelivery, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateDeliveryInput{} + } + + output = &CreateDeliveryOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDelivery API operation for Amazon CloudWatch Logs. +// +// Creates a delivery. A delivery is a connection between a logical delivery +// source and a logical delivery destination that you have already created. +// +// Only some Amazon Web Services services support being configured as a delivery +// source using this operation. These services are listed as Supported [V2 Permissions] +// in the table at Enabling logging from Amazon Web Services services. (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html) +// +// A delivery destination can represent a log group in CloudWatch Logs, an Amazon +// S3 bucket, or a delivery stream in Kinesis Data Firehose. +// +// To configure logs delivery between a supported Amazon Web Services service +// and a destination, you must do the following: +// +// - Create a delivery source, which is a logical object that represents +// the resource that is actually sending the logs. For more information, +// see PutDeliverySource (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html). +// +// - Create a delivery destination, which is a logical object that represents +// the actual delivery destination. For more information, see PutDeliveryDestination +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html). +// +// - If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationolicy.html) +// in the destination account to assign an IAM policy to the destination. +// This policy allows delivery to that destination. +// +// - Use CreateDelivery to create a delivery by pairing exactly one delivery +// source and one delivery destination. +// +// You can configure a single delivery source to send logs to multiple destinations +// by creating multiple deliveries. You can also create multiple deliveries +// to configure multiple delivery sources to send logs to the same delivery +// destination. +// +// You can't update an existing delivery. You can only create and delete deliveries. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation CreateDelivery for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - AccessDeniedException +// You don't have sufficient permissions to perform this action. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateDelivery +func (c *CloudWatchLogs) CreateDelivery(input *CreateDeliveryInput) (*CreateDeliveryOutput, error) { + req, out := c.CreateDeliveryRequest(input) + return out, req.Send() +} + +// CreateDeliveryWithContext is the same as CreateDelivery with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDelivery 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 *CloudWatchLogs) CreateDeliveryWithContext(ctx aws.Context, input *CreateDeliveryInput, opts ...request.Option) (*CreateDeliveryOutput, error) { + req, out := c.CreateDeliveryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateExportTask = "CreateExportTask" // CreateExportTaskRequest generates a "aws/request.Request" representing the @@ -352,6 +483,125 @@ return out, req.Send() } +const opCreateLogAnomalyDetector = "CreateLogAnomalyDetector" + +// CreateLogAnomalyDetectorRequest generates a "aws/request.Request" representing the +// client's request for the CreateLogAnomalyDetector 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 CreateLogAnomalyDetector for more information on using the CreateLogAnomalyDetector +// 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 CreateLogAnomalyDetectorRequest method. +// req, resp := client.CreateLogAnomalyDetectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateLogAnomalyDetector +func (c *CloudWatchLogs) CreateLogAnomalyDetectorRequest(input *CreateLogAnomalyDetectorInput) (req *request.Request, output *CreateLogAnomalyDetectorOutput) { + op := &request.Operation{ + Name: opCreateLogAnomalyDetector, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateLogAnomalyDetectorInput{} + } + + output = &CreateLogAnomalyDetectorOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateLogAnomalyDetector API operation for Amazon CloudWatch Logs. +// +// Creates an anomaly detector that regularly scans one or more log groups and +// look for patterns and anomalies in the logs. +// +// An anomaly detector can help surface issues by automatically discovering +// anomalies in your log event traffic. An anomaly detector uses machine learning +// algorithms to scan log events and find patterns. A pattern is a shared text +// structure that recurs among your log fields. Patterns provide a useful tool +// for analyzing large sets of logs because a large number of log events can +// often be compressed into a few patterns. +// +// The anomaly detector uses pattern recognition to find anomalies, which are +// unusual log events. It uses the evaluationFrequency to compare current log +// events and patterns with trained baselines. +// +// Fields within a pattern are called tokens. Fields that vary within a pattern, +// such as a request ID or timestamp, are referred to as dynamic tokens and +// represented by <*>. +// +// The following is an example of a pattern: +// +// [INFO] Request time: <*> ms +// +// This pattern represents log events like [INFO] Request time: 327 ms and other +// similar log events that differ only by the number, in this csse 327. When +// the pattern is displayed, the different numbers are replaced by <*> +// +// Any parts of log events that are masked as sensitive data are not scanned +// for anomalies. For more information about masking sensitive data, see Help +// protect sensitive log data with masking (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.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 Amazon CloudWatch Logs's +// API operation CreateLogAnomalyDetector for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// - LimitExceededException +// You have reached the maximum number of resources that can be created. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateLogAnomalyDetector +func (c *CloudWatchLogs) CreateLogAnomalyDetector(input *CreateLogAnomalyDetectorInput) (*CreateLogAnomalyDetectorOutput, error) { + req, out := c.CreateLogAnomalyDetectorRequest(input) + return out, req.Send() +} + +// CreateLogAnomalyDetectorWithContext is the same as CreateLogAnomalyDetector with the addition of +// the ability to pass a context and additional request options. +// +// See CreateLogAnomalyDetector 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 *CloudWatchLogs) CreateLogAnomalyDetectorWithContext(ctx aws.Context, input *CreateLogAnomalyDetectorInput, opts ...request.Option) (*CreateLogAnomalyDetectorOutput, error) { + req, out := c.CreateLogAnomalyDetectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateLogGroup = "CreateLogGroup" // CreateLogGroupRequest generates a "aws/request.Request" representing the @@ -760,6 +1010,396 @@ return out, req.Send() } +const opDeleteDelivery = "DeleteDelivery" + +// DeleteDeliveryRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDelivery 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 DeleteDelivery for more information on using the DeleteDelivery +// 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 DeleteDeliveryRequest method. +// req, resp := client.DeleteDeliveryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDelivery +func (c *CloudWatchLogs) DeleteDeliveryRequest(input *DeleteDeliveryInput) (req *request.Request, output *DeleteDeliveryOutput) { + op := &request.Operation{ + Name: opDeleteDelivery, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDeliveryInput{} + } + + output = &DeleteDeliveryOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteDelivery API operation for Amazon CloudWatch Logs. +// +// Deletes s delivery. A delivery is a connection between a logical delivery +// source and a logical delivery destination. Deleting a delivery only deletes +// the connection between the delivery source and delivery destination. It does +// not delete the delivery destination or the delivery source. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DeleteDelivery for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDelivery +func (c *CloudWatchLogs) DeleteDelivery(input *DeleteDeliveryInput) (*DeleteDeliveryOutput, error) { + req, out := c.DeleteDeliveryRequest(input) + return out, req.Send() +} + +// DeleteDeliveryWithContext is the same as DeleteDelivery with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDelivery 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 *CloudWatchLogs) DeleteDeliveryWithContext(ctx aws.Context, input *DeleteDeliveryInput, opts ...request.Option) (*DeleteDeliveryOutput, error) { + req, out := c.DeleteDeliveryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDeliveryDestination = "DeleteDeliveryDestination" + +// DeleteDeliveryDestinationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDeliveryDestination 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 DeleteDeliveryDestination for more information on using the DeleteDeliveryDestination +// 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 DeleteDeliveryDestinationRequest method. +// req, resp := client.DeleteDeliveryDestinationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDeliveryDestination +func (c *CloudWatchLogs) DeleteDeliveryDestinationRequest(input *DeleteDeliveryDestinationInput) (req *request.Request, output *DeleteDeliveryDestinationOutput) { + op := &request.Operation{ + Name: opDeleteDeliveryDestination, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDeliveryDestinationInput{} + } + + output = &DeleteDeliveryDestinationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteDeliveryDestination API operation for Amazon CloudWatch Logs. +// +// Deletes a delivery destination. A delivery is a connection between a logical +// delivery source and a logical delivery destination. +// +// You can't delete a delivery destination if any current deliveries are associated +// with it. To find whether any deliveries are associated with this delivery +// destination, use the DescribeDeliveries (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveries.html) +// operation and check the deliveryDestinationArn field in the results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DeleteDeliveryDestination for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDeliveryDestination +func (c *CloudWatchLogs) DeleteDeliveryDestination(input *DeleteDeliveryDestinationInput) (*DeleteDeliveryDestinationOutput, error) { + req, out := c.DeleteDeliveryDestinationRequest(input) + return out, req.Send() +} + +// DeleteDeliveryDestinationWithContext is the same as DeleteDeliveryDestination with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDeliveryDestination 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 *CloudWatchLogs) DeleteDeliveryDestinationWithContext(ctx aws.Context, input *DeleteDeliveryDestinationInput, opts ...request.Option) (*DeleteDeliveryDestinationOutput, error) { + req, out := c.DeleteDeliveryDestinationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDeliveryDestinationPolicy = "DeleteDeliveryDestinationPolicy" + +// DeleteDeliveryDestinationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDeliveryDestinationPolicy 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 DeleteDeliveryDestinationPolicy for more information on using the DeleteDeliveryDestinationPolicy +// 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 DeleteDeliveryDestinationPolicyRequest method. +// req, resp := client.DeleteDeliveryDestinationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDeliveryDestinationPolicy +func (c *CloudWatchLogs) DeleteDeliveryDestinationPolicyRequest(input *DeleteDeliveryDestinationPolicyInput) (req *request.Request, output *DeleteDeliveryDestinationPolicyOutput) { + op := &request.Operation{ + Name: opDeleteDeliveryDestinationPolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDeliveryDestinationPolicyInput{} + } + + output = &DeleteDeliveryDestinationPolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteDeliveryDestinationPolicy API operation for Amazon CloudWatch Logs. +// +// Deletes a delivery destination policy. For more information about these policies, +// see PutDeliveryDestinationPolicy (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationPolicy.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 Amazon CloudWatch Logs's +// API operation DeleteDeliveryDestinationPolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDeliveryDestinationPolicy +func (c *CloudWatchLogs) DeleteDeliveryDestinationPolicy(input *DeleteDeliveryDestinationPolicyInput) (*DeleteDeliveryDestinationPolicyOutput, error) { + req, out := c.DeleteDeliveryDestinationPolicyRequest(input) + return out, req.Send() +} + +// DeleteDeliveryDestinationPolicyWithContext is the same as DeleteDeliveryDestinationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDeliveryDestinationPolicy 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 *CloudWatchLogs) DeleteDeliveryDestinationPolicyWithContext(ctx aws.Context, input *DeleteDeliveryDestinationPolicyInput, opts ...request.Option) (*DeleteDeliveryDestinationPolicyOutput, error) { + req, out := c.DeleteDeliveryDestinationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDeliverySource = "DeleteDeliverySource" + +// DeleteDeliverySourceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDeliverySource 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 DeleteDeliverySource for more information on using the DeleteDeliverySource +// 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 DeleteDeliverySourceRequest method. +// req, resp := client.DeleteDeliverySourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDeliverySource +func (c *CloudWatchLogs) DeleteDeliverySourceRequest(input *DeleteDeliverySourceInput) (req *request.Request, output *DeleteDeliverySourceOutput) { + op := &request.Operation{ + Name: opDeleteDeliverySource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDeliverySourceInput{} + } + + output = &DeleteDeliverySourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteDeliverySource API operation for Amazon CloudWatch Logs. +// +// Deletes a delivery source. A delivery is a connection between a logical delivery +// source and a logical delivery destination. +// +// You can't delete a delivery source if any current deliveries are associated +// with it. To find whether any deliveries are associated with this delivery +// source, use the DescribeDeliveries (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveries.html) +// operation and check the deliverySourceName field in the results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DeleteDeliverySource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDeliverySource +func (c *CloudWatchLogs) DeleteDeliverySource(input *DeleteDeliverySourceInput) (*DeleteDeliverySourceOutput, error) { + req, out := c.DeleteDeliverySourceRequest(input) + return out, req.Send() +} + +// DeleteDeliverySourceWithContext is the same as DeleteDeliverySource with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDeliverySource 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 *CloudWatchLogs) DeleteDeliverySourceWithContext(ctx aws.Context, input *DeleteDeliverySourceInput, opts ...request.Option) (*DeleteDeliverySourceOutput, error) { + req, out := c.DeleteDeliverySourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDestination = "DeleteDestination" // DeleteDestinationRequest generates a "aws/request.Request" representing the @@ -851,6 +1491,95 @@ return out, req.Send() } +const opDeleteLogAnomalyDetector = "DeleteLogAnomalyDetector" + +// DeleteLogAnomalyDetectorRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLogAnomalyDetector 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 DeleteLogAnomalyDetector for more information on using the DeleteLogAnomalyDetector +// 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 DeleteLogAnomalyDetectorRequest method. +// req, resp := client.DeleteLogAnomalyDetectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteLogAnomalyDetector +func (c *CloudWatchLogs) DeleteLogAnomalyDetectorRequest(input *DeleteLogAnomalyDetectorInput) (req *request.Request, output *DeleteLogAnomalyDetectorOutput) { + op := &request.Operation{ + Name: opDeleteLogAnomalyDetector, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteLogAnomalyDetectorInput{} + } + + output = &DeleteLogAnomalyDetectorOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteLogAnomalyDetector API operation for Amazon CloudWatch Logs. +// +// Deletes the specified CloudWatch Logs anomaly detector. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DeleteLogAnomalyDetector for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteLogAnomalyDetector +func (c *CloudWatchLogs) DeleteLogAnomalyDetector(input *DeleteLogAnomalyDetectorInput) (*DeleteLogAnomalyDetectorOutput, error) { + req, out := c.DeleteLogAnomalyDetectorRequest(input) + return out, req.Send() +} + +// DeleteLogAnomalyDetectorWithContext is the same as DeleteLogAnomalyDetector with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLogAnomalyDetector 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 *CloudWatchLogs) DeleteLogAnomalyDetectorWithContext(ctx aws.Context, input *DeleteLogAnomalyDetectorInput, opts ...request.Option) (*DeleteLogAnomalyDetectorOutput, error) { + req, out := c.DeleteLogAnomalyDetectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteLogGroup = "DeleteLogGroup" // DeleteLogGroupRequest generates a "aws/request.Request" representing the @@ -1567,6 +2296,445 @@ return out, req.Send() } +const opDescribeDeliveries = "DescribeDeliveries" + +// DescribeDeliveriesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeDeliveries 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 DescribeDeliveries for more information on using the DescribeDeliveries +// 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 DescribeDeliveriesRequest method. +// req, resp := client.DescribeDeliveriesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDeliveries +func (c *CloudWatchLogs) DescribeDeliveriesRequest(input *DescribeDeliveriesInput) (req *request.Request, output *DescribeDeliveriesOutput) { + op := &request.Operation{ + Name: opDescribeDeliveries, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeDeliveriesInput{} + } + + output = &DescribeDeliveriesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeDeliveries API operation for Amazon CloudWatch Logs. +// +// Retrieves a list of the deliveries that have been created in the account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DescribeDeliveries for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDeliveries +func (c *CloudWatchLogs) DescribeDeliveries(input *DescribeDeliveriesInput) (*DescribeDeliveriesOutput, error) { + req, out := c.DescribeDeliveriesRequest(input) + return out, req.Send() +} + +// DescribeDeliveriesWithContext is the same as DescribeDeliveries with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeDeliveries 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 *CloudWatchLogs) DescribeDeliveriesWithContext(ctx aws.Context, input *DescribeDeliveriesInput, opts ...request.Option) (*DescribeDeliveriesOutput, error) { + req, out := c.DescribeDeliveriesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeDeliveriesPages iterates over the pages of a DescribeDeliveries operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeDeliveries 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 DescribeDeliveries operation. +// pageNum := 0 +// err := client.DescribeDeliveriesPages(params, +// func(page *cloudwatchlogs.DescribeDeliveriesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudWatchLogs) DescribeDeliveriesPages(input *DescribeDeliveriesInput, fn func(*DescribeDeliveriesOutput, bool) bool) error { + return c.DescribeDeliveriesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeDeliveriesPagesWithContext same as DescribeDeliveriesPages 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 *CloudWatchLogs) DescribeDeliveriesPagesWithContext(ctx aws.Context, input *DescribeDeliveriesInput, fn func(*DescribeDeliveriesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + EndPageOnSameToken: true, + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeDeliveriesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeDeliveriesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeDeliveriesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeDeliveryDestinations = "DescribeDeliveryDestinations" + +// DescribeDeliveryDestinationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeDeliveryDestinations 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 DescribeDeliveryDestinations for more information on using the DescribeDeliveryDestinations +// 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 DescribeDeliveryDestinationsRequest method. +// req, resp := client.DescribeDeliveryDestinationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDeliveryDestinations +func (c *CloudWatchLogs) DescribeDeliveryDestinationsRequest(input *DescribeDeliveryDestinationsInput) (req *request.Request, output *DescribeDeliveryDestinationsOutput) { + op := &request.Operation{ + Name: opDescribeDeliveryDestinations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeDeliveryDestinationsInput{} + } + + output = &DescribeDeliveryDestinationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeDeliveryDestinations API operation for Amazon CloudWatch Logs. +// +// Retrieves a list of the delivery destinations that have been created in the +// account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DescribeDeliveryDestinations for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDeliveryDestinations +func (c *CloudWatchLogs) DescribeDeliveryDestinations(input *DescribeDeliveryDestinationsInput) (*DescribeDeliveryDestinationsOutput, error) { + req, out := c.DescribeDeliveryDestinationsRequest(input) + return out, req.Send() +} + +// DescribeDeliveryDestinationsWithContext is the same as DescribeDeliveryDestinations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeDeliveryDestinations 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 *CloudWatchLogs) DescribeDeliveryDestinationsWithContext(ctx aws.Context, input *DescribeDeliveryDestinationsInput, opts ...request.Option) (*DescribeDeliveryDestinationsOutput, error) { + req, out := c.DescribeDeliveryDestinationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeDeliveryDestinationsPages iterates over the pages of a DescribeDeliveryDestinations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeDeliveryDestinations 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 DescribeDeliveryDestinations operation. +// pageNum := 0 +// err := client.DescribeDeliveryDestinationsPages(params, +// func(page *cloudwatchlogs.DescribeDeliveryDestinationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudWatchLogs) DescribeDeliveryDestinationsPages(input *DescribeDeliveryDestinationsInput, fn func(*DescribeDeliveryDestinationsOutput, bool) bool) error { + return c.DescribeDeliveryDestinationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeDeliveryDestinationsPagesWithContext same as DescribeDeliveryDestinationsPages 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 *CloudWatchLogs) DescribeDeliveryDestinationsPagesWithContext(ctx aws.Context, input *DescribeDeliveryDestinationsInput, fn func(*DescribeDeliveryDestinationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + EndPageOnSameToken: true, + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeDeliveryDestinationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeDeliveryDestinationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeDeliveryDestinationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeDeliverySources = "DescribeDeliverySources" + +// DescribeDeliverySourcesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeDeliverySources 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 DescribeDeliverySources for more information on using the DescribeDeliverySources +// 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 DescribeDeliverySourcesRequest method. +// req, resp := client.DescribeDeliverySourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDeliverySources +func (c *CloudWatchLogs) DescribeDeliverySourcesRequest(input *DescribeDeliverySourcesInput) (req *request.Request, output *DescribeDeliverySourcesOutput) { + op := &request.Operation{ + Name: opDescribeDeliverySources, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeDeliverySourcesInput{} + } + + output = &DescribeDeliverySourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeDeliverySources API operation for Amazon CloudWatch Logs. +// +// Retrieves a list of the delivery sources that have been created in the account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation DescribeDeliverySources for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDeliverySources +func (c *CloudWatchLogs) DescribeDeliverySources(input *DescribeDeliverySourcesInput) (*DescribeDeliverySourcesOutput, error) { + req, out := c.DescribeDeliverySourcesRequest(input) + return out, req.Send() +} + +// DescribeDeliverySourcesWithContext is the same as DescribeDeliverySources with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeDeliverySources 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 *CloudWatchLogs) DescribeDeliverySourcesWithContext(ctx aws.Context, input *DescribeDeliverySourcesInput, opts ...request.Option) (*DescribeDeliverySourcesOutput, error) { + req, out := c.DescribeDeliverySourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeDeliverySourcesPages iterates over the pages of a DescribeDeliverySources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeDeliverySources 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 DescribeDeliverySources operation. +// pageNum := 0 +// err := client.DescribeDeliverySourcesPages(params, +// func(page *cloudwatchlogs.DescribeDeliverySourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudWatchLogs) DescribeDeliverySourcesPages(input *DescribeDeliverySourcesInput, fn func(*DescribeDeliverySourcesOutput, bool) bool) error { + return c.DescribeDeliverySourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeDeliverySourcesPagesWithContext same as DescribeDeliverySourcesPages 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 *CloudWatchLogs) DescribeDeliverySourcesPagesWithContext(ctx aws.Context, input *DescribeDeliverySourcesInput, fn func(*DescribeDeliverySourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + EndPageOnSameToken: true, + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeDeliverySourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeDeliverySourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeDeliverySourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeDestinations = "DescribeDestinations" // DescribeDestinationsRequest generates a "aws/request.Request" representing the @@ -3010,6 +4178,459 @@ return out, req.Send() } +const opGetDelivery = "GetDelivery" + +// GetDeliveryRequest generates a "aws/request.Request" representing the +// client's request for the GetDelivery 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 GetDelivery for more information on using the GetDelivery +// 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 GetDeliveryRequest method. +// req, resp := client.GetDeliveryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDelivery +func (c *CloudWatchLogs) GetDeliveryRequest(input *GetDeliveryInput) (req *request.Request, output *GetDeliveryOutput) { + op := &request.Operation{ + Name: opGetDelivery, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDeliveryInput{} + } + + output = &GetDeliveryOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDelivery API operation for Amazon CloudWatch Logs. +// +// Returns complete information about one delivery. A delivery is a connection +// between a logical delivery source and a logical delivery destination +// +// You need to specify the delivery id in this operation. You can find the IDs +// of the deliveries in your account with the DescribeDeliveries (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveries.html) +// operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation GetDelivery for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDelivery +func (c *CloudWatchLogs) GetDelivery(input *GetDeliveryInput) (*GetDeliveryOutput, error) { + req, out := c.GetDeliveryRequest(input) + return out, req.Send() +} + +// GetDeliveryWithContext is the same as GetDelivery with the addition of +// the ability to pass a context and additional request options. +// +// See GetDelivery 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 *CloudWatchLogs) GetDeliveryWithContext(ctx aws.Context, input *GetDeliveryInput, opts ...request.Option) (*GetDeliveryOutput, error) { + req, out := c.GetDeliveryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDeliveryDestination = "GetDeliveryDestination" + +// GetDeliveryDestinationRequest generates a "aws/request.Request" representing the +// client's request for the GetDeliveryDestination 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 GetDeliveryDestination for more information on using the GetDeliveryDestination +// 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 GetDeliveryDestinationRequest method. +// req, resp := client.GetDeliveryDestinationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDeliveryDestination +func (c *CloudWatchLogs) GetDeliveryDestinationRequest(input *GetDeliveryDestinationInput) (req *request.Request, output *GetDeliveryDestinationOutput) { + op := &request.Operation{ + Name: opGetDeliveryDestination, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDeliveryDestinationInput{} + } + + output = &GetDeliveryDestinationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDeliveryDestination API operation for Amazon CloudWatch Logs. +// +// Retrieves complete information about one delivery destination. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation GetDeliveryDestination for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDeliveryDestination +func (c *CloudWatchLogs) GetDeliveryDestination(input *GetDeliveryDestinationInput) (*GetDeliveryDestinationOutput, error) { + req, out := c.GetDeliveryDestinationRequest(input) + return out, req.Send() +} + +// GetDeliveryDestinationWithContext is the same as GetDeliveryDestination with the addition of +// the ability to pass a context and additional request options. +// +// See GetDeliveryDestination 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 *CloudWatchLogs) GetDeliveryDestinationWithContext(ctx aws.Context, input *GetDeliveryDestinationInput, opts ...request.Option) (*GetDeliveryDestinationOutput, error) { + req, out := c.GetDeliveryDestinationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDeliveryDestinationPolicy = "GetDeliveryDestinationPolicy" + +// GetDeliveryDestinationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetDeliveryDestinationPolicy 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 GetDeliveryDestinationPolicy for more information on using the GetDeliveryDestinationPolicy +// 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 GetDeliveryDestinationPolicyRequest method. +// req, resp := client.GetDeliveryDestinationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDeliveryDestinationPolicy +func (c *CloudWatchLogs) GetDeliveryDestinationPolicyRequest(input *GetDeliveryDestinationPolicyInput) (req *request.Request, output *GetDeliveryDestinationPolicyOutput) { + op := &request.Operation{ + Name: opGetDeliveryDestinationPolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDeliveryDestinationPolicyInput{} + } + + output = &GetDeliveryDestinationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDeliveryDestinationPolicy API operation for Amazon CloudWatch Logs. +// +// Retrieves the delivery destination policy assigned to the delivery destination +// that you specify. For more information about delivery destinations and their +// policies, see PutDeliveryDestinationPolicy (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationPolicy.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 Amazon CloudWatch Logs's +// API operation GetDeliveryDestinationPolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDeliveryDestinationPolicy +func (c *CloudWatchLogs) GetDeliveryDestinationPolicy(input *GetDeliveryDestinationPolicyInput) (*GetDeliveryDestinationPolicyOutput, error) { + req, out := c.GetDeliveryDestinationPolicyRequest(input) + return out, req.Send() +} + +// GetDeliveryDestinationPolicyWithContext is the same as GetDeliveryDestinationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetDeliveryDestinationPolicy 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 *CloudWatchLogs) GetDeliveryDestinationPolicyWithContext(ctx aws.Context, input *GetDeliveryDestinationPolicyInput, opts ...request.Option) (*GetDeliveryDestinationPolicyOutput, error) { + req, out := c.GetDeliveryDestinationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDeliverySource = "GetDeliverySource" + +// GetDeliverySourceRequest generates a "aws/request.Request" representing the +// client's request for the GetDeliverySource 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 GetDeliverySource for more information on using the GetDeliverySource +// 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 GetDeliverySourceRequest method. +// req, resp := client.GetDeliverySourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDeliverySource +func (c *CloudWatchLogs) GetDeliverySourceRequest(input *GetDeliverySourceInput) (req *request.Request, output *GetDeliverySourceOutput) { + op := &request.Operation{ + Name: opGetDeliverySource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDeliverySourceInput{} + } + + output = &GetDeliverySourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDeliverySource API operation for Amazon CloudWatch Logs. +// +// Retrieves complete information about one delivery source. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation GetDeliverySource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDeliverySource +func (c *CloudWatchLogs) GetDeliverySource(input *GetDeliverySourceInput) (*GetDeliverySourceOutput, error) { + req, out := c.GetDeliverySourceRequest(input) + return out, req.Send() +} + +// GetDeliverySourceWithContext is the same as GetDeliverySource with the addition of +// the ability to pass a context and additional request options. +// +// See GetDeliverySource 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 *CloudWatchLogs) GetDeliverySourceWithContext(ctx aws.Context, input *GetDeliverySourceInput, opts ...request.Option) (*GetDeliverySourceOutput, error) { + req, out := c.GetDeliverySourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetLogAnomalyDetector = "GetLogAnomalyDetector" + +// GetLogAnomalyDetectorRequest generates a "aws/request.Request" representing the +// client's request for the GetLogAnomalyDetector 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 GetLogAnomalyDetector for more information on using the GetLogAnomalyDetector +// 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 GetLogAnomalyDetectorRequest method. +// req, resp := client.GetLogAnomalyDetectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogAnomalyDetector +func (c *CloudWatchLogs) GetLogAnomalyDetectorRequest(input *GetLogAnomalyDetectorInput) (req *request.Request, output *GetLogAnomalyDetectorOutput) { + op := &request.Operation{ + Name: opGetLogAnomalyDetector, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetLogAnomalyDetectorInput{} + } + + output = &GetLogAnomalyDetectorOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLogAnomalyDetector API operation for Amazon CloudWatch Logs. +// +// Retrieves information about the log anomaly detector that you specify. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation GetLogAnomalyDetector for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogAnomalyDetector +func (c *CloudWatchLogs) GetLogAnomalyDetector(input *GetLogAnomalyDetectorInput) (*GetLogAnomalyDetectorOutput, error) { + req, out := c.GetLogAnomalyDetectorRequest(input) + return out, req.Send() +} + +// GetLogAnomalyDetectorWithContext is the same as GetLogAnomalyDetector with the addition of +// the ability to pass a context and additional request options. +// +// See GetLogAnomalyDetector 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 *CloudWatchLogs) GetLogAnomalyDetectorWithContext(ctx aws.Context, input *GetLogAnomalyDetectorInput, opts ...request.Option) (*GetLogAnomalyDetectorOutput, error) { + req, out := c.GetLogAnomalyDetectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetLogEvents = "GetLogEvents" // GetLogEventsRequest generates a "aws/request.Request" representing the @@ -3419,6 +5040,8 @@ // // GetQueryResults does not start running a query. To run a query, use StartQuery // (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html). +// For more information about how long results of previous queries are available, +// see CloudWatch Logs quotas (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/cloudwatch_limits_cwl.html). // // If the value of the Status field in the output is Running, this operation // returns only partial results. If you see a value of Scheduled or Running @@ -3468,6 +5091,300 @@ return out, req.Send() } +const opListAnomalies = "ListAnomalies" + +// ListAnomaliesRequest generates a "aws/request.Request" representing the +// client's request for the ListAnomalies 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 ListAnomalies for more information on using the ListAnomalies +// 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 ListAnomaliesRequest method. +// req, resp := client.ListAnomaliesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListAnomalies +func (c *CloudWatchLogs) ListAnomaliesRequest(input *ListAnomaliesInput) (req *request.Request, output *ListAnomaliesOutput) { + op := &request.Operation{ + Name: opListAnomalies, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAnomaliesInput{} + } + + output = &ListAnomaliesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAnomalies API operation for Amazon CloudWatch Logs. +// +// Returns a list of anomalies that log anomaly detectors have found. For details +// about the structure format of each anomaly object that is returned, see the +// example in this section. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation ListAnomalies for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListAnomalies +func (c *CloudWatchLogs) ListAnomalies(input *ListAnomaliesInput) (*ListAnomaliesOutput, error) { + req, out := c.ListAnomaliesRequest(input) + return out, req.Send() +} + +// ListAnomaliesWithContext is the same as ListAnomalies with the addition of +// the ability to pass a context and additional request options. +// +// See ListAnomalies 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 *CloudWatchLogs) ListAnomaliesWithContext(ctx aws.Context, input *ListAnomaliesInput, opts ...request.Option) (*ListAnomaliesOutput, error) { + req, out := c.ListAnomaliesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAnomaliesPages iterates over the pages of a ListAnomalies operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAnomalies 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 ListAnomalies operation. +// pageNum := 0 +// err := client.ListAnomaliesPages(params, +// func(page *cloudwatchlogs.ListAnomaliesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudWatchLogs) ListAnomaliesPages(input *ListAnomaliesInput, fn func(*ListAnomaliesOutput, bool) bool) error { + return c.ListAnomaliesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAnomaliesPagesWithContext same as ListAnomaliesPages 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 *CloudWatchLogs) ListAnomaliesPagesWithContext(ctx aws.Context, input *ListAnomaliesInput, fn func(*ListAnomaliesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + EndPageOnSameToken: true, + NewRequest: func() (*request.Request, error) { + var inCpy *ListAnomaliesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAnomaliesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAnomaliesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListLogAnomalyDetectors = "ListLogAnomalyDetectors" + +// ListLogAnomalyDetectorsRequest generates a "aws/request.Request" representing the +// client's request for the ListLogAnomalyDetectors 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 ListLogAnomalyDetectors for more information on using the ListLogAnomalyDetectors +// 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 ListLogAnomalyDetectorsRequest method. +// req, resp := client.ListLogAnomalyDetectorsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListLogAnomalyDetectors +func (c *CloudWatchLogs) ListLogAnomalyDetectorsRequest(input *ListLogAnomalyDetectorsInput) (req *request.Request, output *ListLogAnomalyDetectorsOutput) { + op := &request.Operation{ + Name: opListLogAnomalyDetectors, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLogAnomalyDetectorsInput{} + } + + output = &ListLogAnomalyDetectorsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLogAnomalyDetectors API operation for Amazon CloudWatch Logs. +// +// Retrieves a list of the log anomaly detectors in the account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation ListLogAnomalyDetectors for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListLogAnomalyDetectors +func (c *CloudWatchLogs) ListLogAnomalyDetectors(input *ListLogAnomalyDetectorsInput) (*ListLogAnomalyDetectorsOutput, error) { + req, out := c.ListLogAnomalyDetectorsRequest(input) + return out, req.Send() +} + +// ListLogAnomalyDetectorsWithContext is the same as ListLogAnomalyDetectors with the addition of +// the ability to pass a context and additional request options. +// +// See ListLogAnomalyDetectors 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 *CloudWatchLogs) ListLogAnomalyDetectorsWithContext(ctx aws.Context, input *ListLogAnomalyDetectorsInput, opts ...request.Option) (*ListLogAnomalyDetectorsOutput, error) { + req, out := c.ListLogAnomalyDetectorsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLogAnomalyDetectorsPages iterates over the pages of a ListLogAnomalyDetectors operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLogAnomalyDetectors 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 ListLogAnomalyDetectors operation. +// pageNum := 0 +// err := client.ListLogAnomalyDetectorsPages(params, +// func(page *cloudwatchlogs.ListLogAnomalyDetectorsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CloudWatchLogs) ListLogAnomalyDetectorsPages(input *ListLogAnomalyDetectorsInput, fn func(*ListLogAnomalyDetectorsOutput, bool) bool) error { + return c.ListLogAnomalyDetectorsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLogAnomalyDetectorsPagesWithContext same as ListLogAnomalyDetectorsPages 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 *CloudWatchLogs) ListLogAnomalyDetectorsPagesWithContext(ctx aws.Context, input *ListLogAnomalyDetectorsInput, fn func(*ListLogAnomalyDetectorsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + EndPageOnSameToken: true, + NewRequest: func() (*request.Request, error) { + var inCpy *ListLogAnomalyDetectorsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLogAnomalyDetectorsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLogAnomalyDetectorsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -3890,6 +5807,378 @@ return out, req.Send() } +const opPutDeliveryDestination = "PutDeliveryDestination" + +// PutDeliveryDestinationRequest generates a "aws/request.Request" representing the +// client's request for the PutDeliveryDestination 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 PutDeliveryDestination for more information on using the PutDeliveryDestination +// 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 PutDeliveryDestinationRequest method. +// req, resp := client.PutDeliveryDestinationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDeliveryDestination +func (c *CloudWatchLogs) PutDeliveryDestinationRequest(input *PutDeliveryDestinationInput) (req *request.Request, output *PutDeliveryDestinationOutput) { + op := &request.Operation{ + Name: opPutDeliveryDestination, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutDeliveryDestinationInput{} + } + + output = &PutDeliveryDestinationOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutDeliveryDestination API operation for Amazon CloudWatch Logs. +// +// Creates or updates a logical delivery destination. A delivery destination +// is an Amazon Web Services resource that represents an Amazon Web Services +// service that logs can be sent to. CloudWatch Logs, Amazon S3, and Kinesis +// Data Firehose are supported as logs delivery destinations. +// +// To configure logs delivery between a supported Amazon Web Services service +// and a destination, you must do the following: +// +// - Create a delivery source, which is a logical object that represents +// the resource that is actually sending the logs. For more information, +// see PutDeliverySource (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html). +// +// - Use PutDeliveryDestination to create a delivery destination, which is +// a logical object that represents the actual delivery destination. +// +// - If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationolicy.html) +// in the destination account to assign an IAM policy to the destination. +// This policy allows delivery to that destination. +// +// - Use CreateDelivery to create a delivery by pairing exactly one delivery +// source and one delivery destination. For more information, see CreateDelivery +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). +// +// You can configure a single delivery source to send logs to multiple destinations +// by creating multiple deliveries. You can also create multiple deliveries +// to configure multiple delivery sources to send logs to the same delivery +// destination. +// +// Only some Amazon Web Services services support being configured as a delivery +// source. These services are listed as Supported [V2 Permissions] in the table +// at Enabling logging from Amazon Web Services services. (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html) +// +// If you use this operation to update an existing delivery destination, all +// the current delivery destination parameters are overwritten with the new +// parameter values that you specify. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation PutDeliveryDestination for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDeliveryDestination +func (c *CloudWatchLogs) PutDeliveryDestination(input *PutDeliveryDestinationInput) (*PutDeliveryDestinationOutput, error) { + req, out := c.PutDeliveryDestinationRequest(input) + return out, req.Send() +} + +// PutDeliveryDestinationWithContext is the same as PutDeliveryDestination with the addition of +// the ability to pass a context and additional request options. +// +// See PutDeliveryDestination 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 *CloudWatchLogs) PutDeliveryDestinationWithContext(ctx aws.Context, input *PutDeliveryDestinationInput, opts ...request.Option) (*PutDeliveryDestinationOutput, error) { + req, out := c.PutDeliveryDestinationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutDeliveryDestinationPolicy = "PutDeliveryDestinationPolicy" + +// PutDeliveryDestinationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutDeliveryDestinationPolicy 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 PutDeliveryDestinationPolicy for more information on using the PutDeliveryDestinationPolicy +// 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 PutDeliveryDestinationPolicyRequest method. +// req, resp := client.PutDeliveryDestinationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDeliveryDestinationPolicy +func (c *CloudWatchLogs) PutDeliveryDestinationPolicyRequest(input *PutDeliveryDestinationPolicyInput) (req *request.Request, output *PutDeliveryDestinationPolicyOutput) { + op := &request.Operation{ + Name: opPutDeliveryDestinationPolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutDeliveryDestinationPolicyInput{} + } + + output = &PutDeliveryDestinationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutDeliveryDestinationPolicy API operation for Amazon CloudWatch Logs. +// +// Creates and assigns an IAM policy that grants permissions to CloudWatch Logs +// to deliver logs cross-account to a specified destination in this account. +// To configure the delivery of logs from an Amazon Web Services service in +// another account to a logs delivery destination in the current account, you +// must do the following: +// +// - Create a delivery source, which is a logical object that represents +// the resource that is actually sending the logs. For more information, +// see PutDeliverySource (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html). +// +// - Create a delivery destination, which is a logical object that represents +// the actual delivery destination. For more information, see PutDeliveryDestination +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html). +// +// - Use this operation in the destination account to assign an IAM policy +// to the destination. This policy allows delivery to that destination. +// +// - Create a delivery by pairing exactly one delivery source and one delivery +// destination. For more information, see CreateDelivery (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). +// +// Only some Amazon Web Services services support being configured as a delivery +// source. These services are listed as Supported [V2 Permissions] in the table +// at Enabling logging from Amazon Web Services services. (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html) +// +// The contents of the policy must include two statements. One statement enables +// general logs delivery, and the other allows delivery to the chosen destination. +// See the examples for the needed policies. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation PutDeliveryDestinationPolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDeliveryDestinationPolicy +func (c *CloudWatchLogs) PutDeliveryDestinationPolicy(input *PutDeliveryDestinationPolicyInput) (*PutDeliveryDestinationPolicyOutput, error) { + req, out := c.PutDeliveryDestinationPolicyRequest(input) + return out, req.Send() +} + +// PutDeliveryDestinationPolicyWithContext is the same as PutDeliveryDestinationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutDeliveryDestinationPolicy 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 *CloudWatchLogs) PutDeliveryDestinationPolicyWithContext(ctx aws.Context, input *PutDeliveryDestinationPolicyInput, opts ...request.Option) (*PutDeliveryDestinationPolicyOutput, error) { + req, out := c.PutDeliveryDestinationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutDeliverySource = "PutDeliverySource" + +// PutDeliverySourceRequest generates a "aws/request.Request" representing the +// client's request for the PutDeliverySource 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 PutDeliverySource for more information on using the PutDeliverySource +// 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 PutDeliverySourceRequest method. +// req, resp := client.PutDeliverySourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDeliverySource +func (c *CloudWatchLogs) PutDeliverySourceRequest(input *PutDeliverySourceInput) (req *request.Request, output *PutDeliverySourceOutput) { + op := &request.Operation{ + Name: opPutDeliverySource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutDeliverySourceInput{} + } + + output = &PutDeliverySourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutDeliverySource API operation for Amazon CloudWatch Logs. +// +// Creates or updates a logical delivery source. A delivery source represents +// an Amazon Web Services resource that sends logs to an logs delivery destination. +// The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. +// +// To configure logs delivery between a delivery destination and an Amazon Web +// Services service that is supported as a delivery source, you must do the +// following: +// +// - Use PutDeliverySource to create a delivery source, which is a logical +// object that represents the resource that is actually sending the logs. +// +// - Use PutDeliveryDestination to create a delivery destination, which is +// a logical object that represents the actual delivery destination. For +// more information, see PutDeliveryDestination (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html). +// +// - If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationolicy.html) +// in the destination account to assign an IAM policy to the destination. +// This policy allows delivery to that destination. +// +// - Use CreateDelivery to create a delivery by pairing exactly one delivery +// source and one delivery destination. For more information, see CreateDelivery +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). +// +// You can configure a single delivery source to send logs to multiple destinations +// by creating multiple deliveries. You can also create multiple deliveries +// to configure multiple delivery sources to send logs to the same delivery +// destination. +// +// Only some Amazon Web Services services support being configured as a delivery +// source. These services are listed as Supported [V2 Permissions] in the table +// at Enabling logging from Amazon Web Services services. (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html) +// +// If you use this operation to update an existing delivery source, all the +// current delivery source parameters are overwritten with the new parameter +// values that you specify. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation PutDeliverySource for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - ConflictException +// This operation attempted to create a resource that already exists. +// +// - ValidationException +// One of the parameters for the request is not valid. +// +// - ServiceQuotaExceededException +// This request exceeds a service quota. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ThrottlingException +// The request was throttled because of quota limits. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDeliverySource +func (c *CloudWatchLogs) PutDeliverySource(input *PutDeliverySourceInput) (*PutDeliverySourceOutput, error) { + req, out := c.PutDeliverySourceRequest(input) + return out, req.Send() +} + +// PutDeliverySourceWithContext is the same as PutDeliverySource with the addition of +// the ability to pass a context and additional request options. +// +// See PutDeliverySource 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 *CloudWatchLogs) PutDeliverySourceWithContext(ctx aws.Context, input *PutDeliverySourceInput, opts ...request.Option) (*PutDeliverySourceOutput, error) { + req, out := c.PutDeliverySourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPutDestination = "PutDestination" // PutDestinationRequest generates a "aws/request.Request" representing the @@ -5438,6 +7727,260 @@ return out, req.Send() } +const opUpdateAnomaly = "UpdateAnomaly" + +// UpdateAnomalyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAnomaly 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 UpdateAnomaly for more information on using the UpdateAnomaly +// 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 UpdateAnomalyRequest method. +// req, resp := client.UpdateAnomalyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpdateAnomaly +func (c *CloudWatchLogs) UpdateAnomalyRequest(input *UpdateAnomalyInput) (req *request.Request, output *UpdateAnomalyOutput) { + op := &request.Operation{ + Name: opUpdateAnomaly, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateAnomalyInput{} + } + + output = &UpdateAnomalyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateAnomaly API operation for Amazon CloudWatch Logs. +// +// Use this operation to suppress anomaly detection for a specified anomaly +// or pattern. If you suppress an anomaly, CloudWatch Logs won’t report new +// occurrences of that anomaly and won't update that anomaly with new data. +// If you suppress a pattern, CloudWatch Logs won’t report any anomalies related +// to that pattern. +// +// You must specify either anomalyId or patternId, but you can't specify both +// parameters in the same operation. +// +// If you have previously used this operation to suppress detection of a pattern +// or anomaly, you can use it again to cause CloudWatch Logs to end the suppression. +// To do this, use this operation and specify the anomaly or pattern to stop +// suppressing, and omit the suppressionType and suppressionPeriod parameters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation UpdateAnomaly for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpdateAnomaly +func (c *CloudWatchLogs) UpdateAnomaly(input *UpdateAnomalyInput) (*UpdateAnomalyOutput, error) { + req, out := c.UpdateAnomalyRequest(input) + return out, req.Send() +} + +// UpdateAnomalyWithContext is the same as UpdateAnomaly with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAnomaly 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 *CloudWatchLogs) UpdateAnomalyWithContext(ctx aws.Context, input *UpdateAnomalyInput, opts ...request.Option) (*UpdateAnomalyOutput, error) { + req, out := c.UpdateAnomalyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateLogAnomalyDetector = "UpdateLogAnomalyDetector" + +// UpdateLogAnomalyDetectorRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLogAnomalyDetector 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 UpdateLogAnomalyDetector for more information on using the UpdateLogAnomalyDetector +// 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 UpdateLogAnomalyDetectorRequest method. +// req, resp := client.UpdateLogAnomalyDetectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpdateLogAnomalyDetector +func (c *CloudWatchLogs) UpdateLogAnomalyDetectorRequest(input *UpdateLogAnomalyDetectorInput) (req *request.Request, output *UpdateLogAnomalyDetectorOutput) { + op := &request.Operation{ + Name: opUpdateLogAnomalyDetector, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateLogAnomalyDetectorInput{} + } + + output = &UpdateLogAnomalyDetectorOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateLogAnomalyDetector API operation for Amazon CloudWatch Logs. +// +// Updates an existing log anomaly detector. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Logs's +// API operation UpdateLogAnomalyDetector for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// A parameter is specified incorrectly. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// - ServiceUnavailableException +// The service cannot complete the request. +// +// - OperationAbortedException +// Multiple concurrent requests to update the same resource were in conflict. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpdateLogAnomalyDetector +func (c *CloudWatchLogs) UpdateLogAnomalyDetector(input *UpdateLogAnomalyDetectorInput) (*UpdateLogAnomalyDetectorOutput, error) { + req, out := c.UpdateLogAnomalyDetectorRequest(input) + return out, req.Send() +} + +// UpdateLogAnomalyDetectorWithContext is the same as UpdateLogAnomalyDetector with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLogAnomalyDetector 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 *CloudWatchLogs) UpdateLogAnomalyDetectorWithContext(ctx aws.Context, input *UpdateLogAnomalyDetectorInput, opts ...request.Option) (*UpdateLogAnomalyDetectorOutput, error) { + req, out := c.UpdateLogAnomalyDetectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You don't have sufficient permissions to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + // A structure that contains information about one CloudWatch Logs account policy. type AccountPolicy struct { _ struct{} `type:"structure"` @@ -5517,6 +8060,373 @@ return s } +// This structure represents one anomaly that has been found by a logs anomaly +// detector. +// +// For more information about patterns and anomalies, see CreateLogAnomalyDetector +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogAnomalyDetector.html). +type Anomaly struct { + _ struct{} `type:"structure"` + + // Specifies whether this anomaly is still ongoing. + // + // Active is a required field + Active *bool `locationName:"active" type:"boolean" required:"true"` + + // The ARN of the anomaly detector that identified this anomaly. + // + // AnomalyDetectorArn is a required field + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" min:"1" type:"string" required:"true"` + + // The unique ID that CloudWatch Logs assigned to this anomaly. + // + // AnomalyId is a required field + AnomalyId *string `locationName:"anomalyId" min:"36" type:"string" required:"true"` + + // A human-readable description of the anomaly. This description is generated + // by CloudWatch Logs. + // + // Description is a required field + Description *string `locationName:"description" min:"1" type:"string" required:"true"` + + // The date and time when the anomaly detector first saw this anomaly. It is + // specified as epoch time, which is the number of seconds since January 1, + // 1970, 00:00:00 UTC. + // + // FirstSeen is a required field + FirstSeen *int64 `locationName:"firstSeen" type:"long" required:"true"` + + // A map showing times when the anomaly detector ran, and the number of occurrences + // of this anomaly that were detected at each of those runs. The times are specified + // in epoch time, which is the number of seconds since January 1, 1970, 00:00:00 + // UTC. + // + // Histogram is a required field + Histogram map[string]*int64 `locationName:"histogram" type:"map" required:"true"` + + // If this anomaly is suppressed, this field is true if the suppression is because + // the pattern is suppressed. If false, then only this particular anomaly is + // suppressed. + IsPatternLevelSuppression *bool `locationName:"isPatternLevelSuppression" type:"boolean"` + + // The date and time when the anomaly detector most recently saw this anomaly. + // It is specified as epoch time, which is the number of seconds since January + // 1, 1970, 00:00:00 UTC. + // + // LastSeen is a required field + LastSeen *int64 `locationName:"lastSeen" type:"long" required:"true"` + + // An array of ARNS of the log groups that contained log events considered to + // be part of this anomaly. + // + // LogGroupArnList is a required field + LogGroupArnList []*string `locationName:"logGroupArnList" type:"list" required:"true"` + + // An array of sample log event messages that are considered to be part of this + // anomaly. + // + // LogSamples is a required field + LogSamples []*string `locationName:"logSamples" type:"list" required:"true"` + + // The ID of the pattern used to help identify this anomaly. + // + // PatternId is a required field + PatternId *string `locationName:"patternId" min:"32" type:"string" required:"true"` + + // The pattern used to help identify this anomaly, in regular expression format. + PatternRegex *string `locationName:"patternRegex" min:"1" type:"string"` + + // The pattern used to help identify this anomaly, in string format. + // + // PatternString is a required field + PatternString *string `locationName:"patternString" min:"1" type:"string" required:"true"` + + // An array of structures where each structure contains information about one + // token that makes up the pattern. + // + // PatternTokens is a required field + PatternTokens []*PatternToken `locationName:"patternTokens" type:"list" required:"true"` + + // The priority level of this anomaly, as determined by CloudWatch Logs. Priority + // is computed based on log severity labels such as FATAL and ERROR and the + // amount of deviation from the baseline. Possible values are HIGH, MEDIUM, + // and LOW. + Priority *string `locationName:"priority" min:"1" type:"string"` + + // Indicates the current state of this anomaly. If it is still being treated + // as an anomaly, the value is Active. If you have suppressed this anomaly by + // using the UpdateAnomaly (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateAnomaly.html) + // operation, the value is Suppressed. If this behavior is now considered to + // be normal, the value is Baseline. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"State"` + + // Indicates whether this anomaly is currently suppressed. To suppress an anomaly, + // use UpdateAnomaly (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateAnomaly.html). + Suppressed *bool `locationName:"suppressed" type:"boolean"` + + // If the anomaly is suppressed, this indicates when it was suppressed. + SuppressedDate *int64 `locationName:"suppressedDate" type:"long"` + + // If the anomaly is suppressed, this indicates when the suppression will end. + // If this value is 0, the anomaly was suppressed with no expiration, with the + // INFINITE value. + SuppressedUntil *int64 `locationName:"suppressedUntil" type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Anomaly) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Anomaly) GoString() string { + return s.String() +} + +// SetActive sets the Active field's value. +func (s *Anomaly) SetActive(v bool) *Anomaly { + s.Active = &v + return s +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *Anomaly) SetAnomalyDetectorArn(v string) *Anomaly { + s.AnomalyDetectorArn = &v + return s +} + +// SetAnomalyId sets the AnomalyId field's value. +func (s *Anomaly) SetAnomalyId(v string) *Anomaly { + s.AnomalyId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Anomaly) SetDescription(v string) *Anomaly { + s.Description = &v + return s +} + +// SetFirstSeen sets the FirstSeen field's value. +func (s *Anomaly) SetFirstSeen(v int64) *Anomaly { + s.FirstSeen = &v + return s +} + +// SetHistogram sets the Histogram field's value. +func (s *Anomaly) SetHistogram(v map[string]*int64) *Anomaly { + s.Histogram = v + return s +} + +// SetIsPatternLevelSuppression sets the IsPatternLevelSuppression field's value. +func (s *Anomaly) SetIsPatternLevelSuppression(v bool) *Anomaly { + s.IsPatternLevelSuppression = &v + return s +} + +// SetLastSeen sets the LastSeen field's value. +func (s *Anomaly) SetLastSeen(v int64) *Anomaly { + s.LastSeen = &v + return s +} + +// SetLogGroupArnList sets the LogGroupArnList field's value. +func (s *Anomaly) SetLogGroupArnList(v []*string) *Anomaly { + s.LogGroupArnList = v + return s +} + +// SetLogSamples sets the LogSamples field's value. +func (s *Anomaly) SetLogSamples(v []*string) *Anomaly { + s.LogSamples = v + return s +} + +// SetPatternId sets the PatternId field's value. +func (s *Anomaly) SetPatternId(v string) *Anomaly { + s.PatternId = &v + return s +} + +// SetPatternRegex sets the PatternRegex field's value. +func (s *Anomaly) SetPatternRegex(v string) *Anomaly { + s.PatternRegex = &v + return s +} + +// SetPatternString sets the PatternString field's value. +func (s *Anomaly) SetPatternString(v string) *Anomaly { + s.PatternString = &v + return s +} + +// SetPatternTokens sets the PatternTokens field's value. +func (s *Anomaly) SetPatternTokens(v []*PatternToken) *Anomaly { + s.PatternTokens = v + return s +} + +// SetPriority sets the Priority field's value. +func (s *Anomaly) SetPriority(v string) *Anomaly { + s.Priority = &v + return s +} + +// SetState sets the State field's value. +func (s *Anomaly) SetState(v string) *Anomaly { + s.State = &v + return s +} + +// SetSuppressed sets the Suppressed field's value. +func (s *Anomaly) SetSuppressed(v bool) *Anomaly { + s.Suppressed = &v + return s +} + +// SetSuppressedDate sets the SuppressedDate field's value. +func (s *Anomaly) SetSuppressedDate(v int64) *Anomaly { + s.SuppressedDate = &v + return s +} + +// SetSuppressedUntil sets the SuppressedUntil field's value. +func (s *Anomaly) SetSuppressedUntil(v int64) *Anomaly { + s.SuppressedUntil = &v + return s +} + +// Contains information about one anomaly detector in the account. +type AnomalyDetector struct { + _ struct{} `type:"structure"` + + // The ARN of the anomaly detector. + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" min:"1" type:"string"` + + // Specifies the current status of the anomaly detector. To pause an anomaly + // detector, use the enabled parameter in the UpdateLogAnomalyDetector (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateLogAnomalyDetector.html) + // operation. + AnomalyDetectorStatus *string `locationName:"anomalyDetectorStatus" type:"string" enum:"AnomalyDetectorStatus"` + + // The number of days used as the life cycle of anomalies. After this time, + // anomalies are automatically baselined and the anomaly detector model will + // treat new occurrences of similar event as normal. + AnomalyVisibilityTime *int64 `locationName:"anomalyVisibilityTime" min:"7" type:"long"` + + // The date and time when this anomaly detector was created. + CreationTimeStamp *int64 `locationName:"creationTimeStamp" type:"long"` + + // The name of the anomaly detector. + DetectorName *string `locationName:"detectorName" min:"1" type:"string"` + + // Specifies how often the anomaly detector runs and look for anomalies. + EvaluationFrequency *string `locationName:"evaluationFrequency" type:"string" enum:"EvaluationFrequency"` + + // A symbolic description of how CloudWatch Logs should interpret the data in + // each log event. For example, a log event can contain timestamps, IP addresses, + // strings, and so on. You use the filter pattern to specify what to look for + // in the log event message. + FilterPattern *string `locationName:"filterPattern" type:"string"` + + // The ID of the KMS key assigned to this anomaly detector, if any. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The date and time when this anomaly detector was most recently modified. + LastModifiedTimeStamp *int64 `locationName:"lastModifiedTimeStamp" type:"long"` + + // A list of the ARNs of the log groups that this anomaly detector watches. + LogGroupArnList []*string `locationName:"logGroupArnList" 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 AnomalyDetector) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyDetector) GoString() string { + return s.String() +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *AnomalyDetector) SetAnomalyDetectorArn(v string) *AnomalyDetector { + s.AnomalyDetectorArn = &v + return s +} + +// SetAnomalyDetectorStatus sets the AnomalyDetectorStatus field's value. +func (s *AnomalyDetector) SetAnomalyDetectorStatus(v string) *AnomalyDetector { + s.AnomalyDetectorStatus = &v + return s +} + +// SetAnomalyVisibilityTime sets the AnomalyVisibilityTime field's value. +func (s *AnomalyDetector) SetAnomalyVisibilityTime(v int64) *AnomalyDetector { + s.AnomalyVisibilityTime = &v + return s +} + +// SetCreationTimeStamp sets the CreationTimeStamp field's value. +func (s *AnomalyDetector) SetCreationTimeStamp(v int64) *AnomalyDetector { + s.CreationTimeStamp = &v + return s +} + +// SetDetectorName sets the DetectorName field's value. +func (s *AnomalyDetector) SetDetectorName(v string) *AnomalyDetector { + s.DetectorName = &v + return s +} + +// SetEvaluationFrequency sets the EvaluationFrequency field's value. +func (s *AnomalyDetector) SetEvaluationFrequency(v string) *AnomalyDetector { + s.EvaluationFrequency = &v + return s +} + +// SetFilterPattern sets the FilterPattern field's value. +func (s *AnomalyDetector) SetFilterPattern(v string) *AnomalyDetector { + s.FilterPattern = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AnomalyDetector) SetKmsKeyId(v string) *AnomalyDetector { + s.KmsKeyId = &v + return s +} + +// SetLastModifiedTimeStamp sets the LastModifiedTimeStamp field's value. +func (s *AnomalyDetector) SetLastModifiedTimeStamp(v int64) *AnomalyDetector { + s.LastModifiedTimeStamp = &v + return s +} + +// SetLogGroupArnList sets the LogGroupArnList field's value. +func (s *AnomalyDetector) SetLogGroupArnList(v []*string) *AnomalyDetector { + s.LogGroupArnList = v + return s +} + type AssociateKmsKeyInput struct { _ struct{} `type:"structure"` @@ -5698,6 +8608,179 @@ return s.String() } +// This operation attempted to create a resource that already exists. +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 CreateDeliveryInput struct { + _ struct{} `type:"structure"` + + // The ARN of the delivery destination to use for this delivery. + // + // DeliveryDestinationArn is a required field + DeliveryDestinationArn *string `locationName:"deliveryDestinationArn" type:"string" required:"true"` + + // The name of the delivery source to use for this delivery. + // + // DeliverySourceName is a required field + DeliverySourceName *string `locationName:"deliverySourceName" min:"1" type:"string" required:"true"` + + // An optional list of key-value pairs to associate with the resource. + // + // For more information about tagging, see Tagging Amazon Web Services resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDeliveryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDeliveryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDeliveryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDeliveryInput"} + if s.DeliveryDestinationArn == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryDestinationArn")) + } + if s.DeliverySourceName == nil { + invalidParams.Add(request.NewErrParamRequired("DeliverySourceName")) + } + if s.DeliverySourceName != nil && len(*s.DeliverySourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeliverySourceName", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeliveryDestinationArn sets the DeliveryDestinationArn field's value. +func (s *CreateDeliveryInput) SetDeliveryDestinationArn(v string) *CreateDeliveryInput { + s.DeliveryDestinationArn = &v + return s +} + +// SetDeliverySourceName sets the DeliverySourceName field's value. +func (s *CreateDeliveryInput) SetDeliverySourceName(v string) *CreateDeliveryInput { + s.DeliverySourceName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDeliveryInput) SetTags(v map[string]*string) *CreateDeliveryInput { + s.Tags = v + return s +} + +type CreateDeliveryOutput struct { + _ struct{} `type:"structure"` + + // A structure that contains information about the delivery that you just created. + Delivery *Delivery `locationName:"delivery" 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 CreateDeliveryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDeliveryOutput) GoString() string { + return s.String() +} + +// SetDelivery sets the Delivery field's value. +func (s *CreateDeliveryOutput) SetDelivery(v *Delivery) *CreateDeliveryOutput { + s.Delivery = v + return s +} + type CreateExportTaskInput struct { _ struct{} `type:"structure"` @@ -5866,6 +8949,167 @@ return s } +type CreateLogAnomalyDetectorInput struct { + _ struct{} `type:"structure"` + + // The number of days to have visibility on an anomaly. After this time period + // has elapsed for an anomaly, it will be automatically baselined and the anomaly + // detector will treat new occurrences of a similar anomaly as normal. Therefore, + // if you do not correct the cause of an anomaly during the time period specified + // in anomalyVisibilityTime, it will be considered normal going forward and + // will not be detected as an anomaly. + AnomalyVisibilityTime *int64 `locationName:"anomalyVisibilityTime" min:"7" type:"long"` + + // A name for this anomaly detector. + DetectorName *string `locationName:"detectorName" min:"1" type:"string"` + + // Specifies how often the anomaly detector is to run and look for anomalies. + // Set this value according to the frequency that the log group receives new + // logs. For example, if the log group receives new log events every 10 minutes, + // then 15 minutes might be a good setting for evaluationFrequency . + EvaluationFrequency *string `locationName:"evaluationFrequency" type:"string" enum:"EvaluationFrequency"` + + // You can use this parameter to limit the anomaly detection model to examine + // only log events that match the pattern you specify here. For more information, + // see Filter and Pattern Syntax (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html). + FilterPattern *string `locationName:"filterPattern" type:"string"` + + // Optionally assigns a KMS key to secure this anomaly detector and its findings. + // If a key is assigned, the anomalies found and the model used by this detector + // are encrypted at rest with the key. If a key is assigned to an anomaly detector, + // a user must have permissions for both this key and for the anomaly detector + // to retrieve information about the anomalies that it finds. + // + // For more information about using a KMS key and to see the required IAM policy, + // see Use a KMS key with an anomaly detector (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/LogsAnomalyDetection-KMS.html). + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // An array containing the ARNs of the log groups that this anomaly detector + // will watch. You must specify at least one ARN. + // + // LogGroupArnList is a required field + LogGroupArnList []*string `locationName:"logGroupArnList" type:"list" required:"true"` + + // An optional list of key-value pairs to associate with the resource. + // + // For more information about tagging, see Tagging Amazon Web Services resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLogAnomalyDetectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLogAnomalyDetectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLogAnomalyDetectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLogAnomalyDetectorInput"} + if s.AnomalyVisibilityTime != nil && *s.AnomalyVisibilityTime < 7 { + invalidParams.Add(request.NewErrParamMinValue("AnomalyVisibilityTime", 7)) + } + if s.DetectorName != nil && len(*s.DetectorName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DetectorName", 1)) + } + if s.LogGroupArnList == nil { + invalidParams.Add(request.NewErrParamRequired("LogGroupArnList")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnomalyVisibilityTime sets the AnomalyVisibilityTime field's value. +func (s *CreateLogAnomalyDetectorInput) SetAnomalyVisibilityTime(v int64) *CreateLogAnomalyDetectorInput { + s.AnomalyVisibilityTime = &v + return s +} + +// SetDetectorName sets the DetectorName field's value. +func (s *CreateLogAnomalyDetectorInput) SetDetectorName(v string) *CreateLogAnomalyDetectorInput { + s.DetectorName = &v + return s +} + +// SetEvaluationFrequency sets the EvaluationFrequency field's value. +func (s *CreateLogAnomalyDetectorInput) SetEvaluationFrequency(v string) *CreateLogAnomalyDetectorInput { + s.EvaluationFrequency = &v + return s +} + +// SetFilterPattern sets the FilterPattern field's value. +func (s *CreateLogAnomalyDetectorInput) SetFilterPattern(v string) *CreateLogAnomalyDetectorInput { + s.FilterPattern = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateLogAnomalyDetectorInput) SetKmsKeyId(v string) *CreateLogAnomalyDetectorInput { + s.KmsKeyId = &v + return s +} + +// SetLogGroupArnList sets the LogGroupArnList field's value. +func (s *CreateLogAnomalyDetectorInput) SetLogGroupArnList(v []*string) *CreateLogAnomalyDetectorInput { + s.LogGroupArnList = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateLogAnomalyDetectorInput) SetTags(v map[string]*string) *CreateLogAnomalyDetectorInput { + s.Tags = v + return s +} + +type CreateLogAnomalyDetectorOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the log anomaly detector that you just created. + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" 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 CreateLogAnomalyDetectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLogAnomalyDetectorOutput) GoString() string { + return s.String() +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *CreateLogAnomalyDetectorOutput) SetAnomalyDetectorArn(v string) *CreateLogAnomalyDetectorOutput { + s.AnomalyDetectorArn = &v + return s +} + type CreateLogGroupInput struct { _ struct{} `type:"structure"` @@ -5873,7 +9117,20 @@ // data. For more information, see Amazon Resource Names (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-kms). KmsKeyId *string `locationName:"kmsKeyId" type:"string"` - // The name of the log group. + // Use this parameter to specify the log group class for this log group. There + // are two classes: + // + // * The Standard log class supports all CloudWatch Logs features. + // + // * The Infrequent Access log class supports a subset of CloudWatch Logs + // features and incurs lower costs. + // + // If you omit this parameter, the default of STANDARD is used. + // + // For details about the features supported by each class, see Log classes (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html) + LogGroupClass *string `locationName:"logGroupClass" type:"string" enum:"LogGroupClass"` + + // A name for the log group. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` @@ -5934,6 +9191,12 @@ return s } +// SetLogGroupClass sets the LogGroupClass field's value. +func (s *CreateLogGroupInput) SetLogGroupClass(v string) *CreateLogGroupInput { + s.LogGroupClass = &v + return s +} + // SetLogGroupName sets the LogGroupName field's value. func (s *CreateLogGroupInput) SetLogGroupName(v string) *CreateLogGroupInput { s.LogGroupName = &v @@ -6279,6 +9542,295 @@ return s.String() } +type DeleteDeliveryDestinationInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery destination that you want to delete. You can find + // a list of delivery destionation names by using the DescribeDeliveryDestinations + // (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveryDestinations.html) + // operation. + // + // Name is a required field + Name *string `locationName:"name" 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 DeleteDeliveryDestinationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliveryDestinationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDeliveryDestinationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDeliveryDestinationInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteDeliveryDestinationInput) SetName(v string) *DeleteDeliveryDestinationInput { + s.Name = &v + return s +} + +type DeleteDeliveryDestinationOutput 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 DeleteDeliveryDestinationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliveryDestinationOutput) GoString() string { + return s.String() +} + +type DeleteDeliveryDestinationPolicyInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery destination that you want to delete the policy for. + // + // DeliveryDestinationName is a required field + DeliveryDestinationName *string `locationName:"deliveryDestinationName" 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 DeleteDeliveryDestinationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliveryDestinationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDeliveryDestinationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDeliveryDestinationPolicyInput"} + if s.DeliveryDestinationName == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryDestinationName")) + } + if s.DeliveryDestinationName != nil && len(*s.DeliveryDestinationName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeliveryDestinationName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeliveryDestinationName sets the DeliveryDestinationName field's value. +func (s *DeleteDeliveryDestinationPolicyInput) SetDeliveryDestinationName(v string) *DeleteDeliveryDestinationPolicyInput { + s.DeliveryDestinationName = &v + return s +} + +type DeleteDeliveryDestinationPolicyOutput 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 DeleteDeliveryDestinationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliveryDestinationPolicyOutput) GoString() string { + return s.String() +} + +type DeleteDeliveryInput struct { + _ struct{} `type:"structure"` + + // The unique ID of the delivery to delete. You can find the ID of a delivery + // with the DescribeDeliveries (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveries.html) + // operation. + // + // Id is a required field + Id *string `locationName:"id" 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 DeleteDeliveryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliveryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDeliveryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDeliveryInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *DeleteDeliveryInput) SetId(v string) *DeleteDeliveryInput { + s.Id = &v + return s +} + +type DeleteDeliveryOutput 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 DeleteDeliveryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliveryOutput) GoString() string { + return s.String() +} + +type DeleteDeliverySourceInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery source that you want to delete. + // + // Name is a required field + Name *string `locationName:"name" 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 DeleteDeliverySourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliverySourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDeliverySourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDeliverySourceInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteDeliverySourceInput) SetName(v string) *DeleteDeliverySourceInput { + s.Name = &v + return s +} + +type DeleteDeliverySourceOutput 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 DeleteDeliverySourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeliverySourceOutput) GoString() string { + return s.String() +} + type DeleteDestinationInput struct { _ struct{} `type:"structure"` @@ -6350,6 +9902,79 @@ return s.String() } +type DeleteLogAnomalyDetectorInput struct { + _ struct{} `type:"structure"` + + // The ARN of the anomaly detector to delete. You can find the ARNs of log anomaly + // detectors in your account by using the ListLogAnomalyDetectors (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html) + // operation. + // + // AnomalyDetectorArn is a required field + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" 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 DeleteLogAnomalyDetectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLogAnomalyDetectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLogAnomalyDetectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLogAnomalyDetectorInput"} + if s.AnomalyDetectorArn == nil { + invalidParams.Add(request.NewErrParamRequired("AnomalyDetectorArn")) + } + if s.AnomalyDetectorArn != nil && len(*s.AnomalyDetectorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnomalyDetectorArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *DeleteLogAnomalyDetectorInput) SetAnomalyDetectorArn(v string) *DeleteLogAnomalyDetectorInput { + s.AnomalyDetectorArn = &v + return s +} + +type DeleteLogAnomalyDetectorOutput 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 DeleteLogAnomalyDetectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLogAnomalyDetectorOutput) GoString() string { + return s.String() +} + type DeleteLogGroupInput struct { _ struct{} `type:"structure"` @@ -6889,6 +10514,356 @@ return s.String() } +// This structure contains information about one delivery in your account. +// +// A delivery is a connection between a logical delivery source and a logical +// delivery destination. +// +// For more information, see CreateDelivery (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). +// +// You can't update an existing delivery. You can only create and delete deliveries. +type Delivery struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that uniquely identifies this delivery. + Arn *string `locationName:"arn" type:"string"` + + // The ARN of the delivery destination that is associated with this delivery. + DeliveryDestinationArn *string `locationName:"deliveryDestinationArn" type:"string"` + + // Displays whether the delivery destination associated with this delivery is + // CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + DeliveryDestinationType *string `locationName:"deliveryDestinationType" type:"string" enum:"DeliveryDestinationType"` + + // The name of the delivery source that is associated with this delivery. + DeliverySourceName *string `locationName:"deliverySourceName" min:"1" type:"string"` + + // The unique ID that identifies this delivery in your account. + Id *string `locationName:"id" min:"1" type:"string"` + + // The tags that have been assigned to this delivery. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Delivery) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Delivery) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Delivery) SetArn(v string) *Delivery { + s.Arn = &v + return s +} + +// SetDeliveryDestinationArn sets the DeliveryDestinationArn field's value. +func (s *Delivery) SetDeliveryDestinationArn(v string) *Delivery { + s.DeliveryDestinationArn = &v + return s +} + +// SetDeliveryDestinationType sets the DeliveryDestinationType field's value. +func (s *Delivery) SetDeliveryDestinationType(v string) *Delivery { + s.DeliveryDestinationType = &v + return s +} + +// SetDeliverySourceName sets the DeliverySourceName field's value. +func (s *Delivery) SetDeliverySourceName(v string) *Delivery { + s.DeliverySourceName = &v + return s +} + +// SetId sets the Id field's value. +func (s *Delivery) SetId(v string) *Delivery { + s.Id = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Delivery) SetTags(v map[string]*string) *Delivery { + s.Tags = v + return s +} + +// This structure contains information about one delivery destination in your +// account. A delivery destination is an Amazon Web Services resource that represents +// an Amazon Web Services service that logs can be sent to. CloudWatch Logs, +// Amazon S3, are supported as Kinesis Data Firehose delivery destinations. +// +// To configure logs delivery between a supported Amazon Web Services service +// and a destination, you must do the following: +// +// - Create a delivery source, which is a logical object that represents +// the resource that is actually sending the logs. For more information, +// see PutDeliverySource (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html). +// +// - Create a delivery destination, which is a logical object that represents +// the actual delivery destination. +// +// - If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationolicy.html) +// in the destination account to assign an IAM policy to the destination. +// This policy allows delivery to that destination. +// +// - Create a delivery by pairing exactly one delivery source and one delivery +// destination. For more information, see CreateDelivery (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). +// +// You can configure a single delivery source to send logs to multiple destinations +// by creating multiple deliveries. You can also create multiple deliveries +// to configure multiple delivery sources to send logs to the same delivery +// destination. +type DeliveryDestination struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. + Arn *string `locationName:"arn" type:"string"` + + // A structure that contains the ARN of the Amazon Web Services resource that + // will receive the logs. + DeliveryDestinationConfiguration *DeliveryDestinationConfiguration `locationName:"deliveryDestinationConfiguration" type:"structure"` + + // Displays whether this delivery destination is CloudWatch Logs, Amazon S3, + // or Kinesis Data Firehose. + DeliveryDestinationType *string `locationName:"deliveryDestinationType" type:"string" enum:"DeliveryDestinationType"` + + // The name of this delivery destination. + Name *string `locationName:"name" min:"1" type:"string"` + + // The format of the logs that are sent to this delivery destination. + OutputFormat *string `locationName:"outputFormat" type:"string" enum:"OutputFormat"` + + // The tags that have been assigned to this delivery destination. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeliveryDestination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeliveryDestination) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeliveryDestination) SetArn(v string) *DeliveryDestination { + s.Arn = &v + return s +} + +// SetDeliveryDestinationConfiguration sets the DeliveryDestinationConfiguration field's value. +func (s *DeliveryDestination) SetDeliveryDestinationConfiguration(v *DeliveryDestinationConfiguration) *DeliveryDestination { + s.DeliveryDestinationConfiguration = v + return s +} + +// SetDeliveryDestinationType sets the DeliveryDestinationType field's value. +func (s *DeliveryDestination) SetDeliveryDestinationType(v string) *DeliveryDestination { + s.DeliveryDestinationType = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeliveryDestination) SetName(v string) *DeliveryDestination { + s.Name = &v + return s +} + +// SetOutputFormat sets the OutputFormat field's value. +func (s *DeliveryDestination) SetOutputFormat(v string) *DeliveryDestination { + s.OutputFormat = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *DeliveryDestination) SetTags(v map[string]*string) *DeliveryDestination { + s.Tags = v + return s +} + +// A structure that contains information about one logs delivery destination. +type DeliveryDestinationConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of the Amazon Web Services destination that this delivery destination + // represents. That Amazon Web Services destination can be a log group in CloudWatch + // Logs, an Amazon S3 bucket, or a delivery stream in Kinesis Data Firehose. + // + // DestinationResourceArn is a required field + DestinationResourceArn *string `locationName:"destinationResourceArn" 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 DeliveryDestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeliveryDestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeliveryDestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeliveryDestinationConfiguration"} + if s.DestinationResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationResourceArn sets the DestinationResourceArn field's value. +func (s *DeliveryDestinationConfiguration) SetDestinationResourceArn(v string) *DeliveryDestinationConfiguration { + s.DestinationResourceArn = &v + return s +} + +// This structure contains information about one delivery source in your account. +// A delivery source is an Amazon Web Services resource that sends logs to an +// Amazon Web Services destination. The destination can be CloudWatch Logs, +// Amazon S3, or Kinesis Data Firehose. +// +// Only some Amazon Web Services services support being configured as a delivery +// source. These services are listed as Supported [V2 Permissions] in the table +// at Enabling logging from Amazon Web Services services. (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html) +// +// To configure logs delivery between a supported Amazon Web Services service +// and a destination, you must do the following: +// +// - Create a delivery source, which is a logical object that represents +// the resource that is actually sending the logs. For more information, +// see PutDeliverySource (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html). +// +// - Create a delivery destination, which is a logical object that represents +// the actual delivery destination. For more information, see PutDeliveryDestination +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html). +// +// - If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicy +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationolicy.html) +// in the destination account to assign an IAM policy to the destination. +// This policy allows delivery to that destination. +// +// - Create a delivery by pairing exactly one delivery source and one delivery +// destination. For more information, see CreateDelivery (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). +// +// You can configure a single delivery source to send logs to multiple destinations +// by creating multiple deliveries. You can also create multiple deliveries +// to configure multiple delivery sources to send logs to the same delivery +// destination. +type DeliverySource struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that uniquely identifies this delivery source. + Arn *string `locationName:"arn" type:"string"` + + // The type of log that the source is sending. For valid values for this parameter, + // see the documentation for the source service. + LogType *string `locationName:"logType" min:"1" type:"string"` + + // The unique name of the delivery source. + Name *string `locationName:"name" min:"1" type:"string"` + + // This array contains the ARN of the Amazon Web Services resource that sends + // logs and is represented by this delivery source. Currently, only one ARN + // can be in the array. + ResourceArns []*string `locationName:"resourceArns" type:"list"` + + // The Amazon Web Services service that is sending logs. + Service *string `locationName:"service" min:"1" type:"string"` + + // The tags that have been assigned to this delivery source. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeliverySource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeliverySource) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeliverySource) SetArn(v string) *DeliverySource { + s.Arn = &v + return s +} + +// SetLogType sets the LogType field's value. +func (s *DeliverySource) SetLogType(v string) *DeliverySource { + s.LogType = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeliverySource) SetName(v string) *DeliverySource { + s.Name = &v + return s +} + +// SetResourceArns sets the ResourceArns field's value. +func (s *DeliverySource) SetResourceArns(v []*string) *DeliverySource { + s.ResourceArns = v + return s +} + +// SetService sets the Service field's value. +func (s *DeliverySource) SetService(v string) *DeliverySource { + s.Service = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *DeliverySource) SetTags(v map[string]*string) *DeliverySource { + s.Tags = v + return s +} + type DescribeAccountPoliciesInput struct { _ struct{} `type:"structure"` @@ -6994,6 +10969,305 @@ return s } +type DescribeDeliveriesInput struct { + _ struct{} `type:"structure"` + + // Optionally specify the maximum number of deliveries to return in the response. + Limit *int64 `locationName:"limit" min:"1" type:"integer"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveriesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveriesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDeliveriesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDeliveriesInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLimit sets the Limit field's value. +func (s *DescribeDeliveriesInput) SetLimit(v int64) *DescribeDeliveriesInput { + s.Limit = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDeliveriesInput) SetNextToken(v string) *DescribeDeliveriesInput { + s.NextToken = &v + return s +} + +type DescribeDeliveriesOutput struct { + _ struct{} `type:"structure"` + + // An array of structures. Each structure contains information about one delivery + // in the account. + Deliveries []*Delivery `locationName:"deliveries" type:"list"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveriesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveriesOutput) GoString() string { + return s.String() +} + +// SetDeliveries sets the Deliveries field's value. +func (s *DescribeDeliveriesOutput) SetDeliveries(v []*Delivery) *DescribeDeliveriesOutput { + s.Deliveries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDeliveriesOutput) SetNextToken(v string) *DescribeDeliveriesOutput { + s.NextToken = &v + return s +} + +type DescribeDeliveryDestinationsInput struct { + _ struct{} `type:"structure"` + + // Optionally specify the maximum number of delivery destinations to return + // in the response. + Limit *int64 `locationName:"limit" min:"1" type:"integer"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveryDestinationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveryDestinationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDeliveryDestinationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDeliveryDestinationsInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLimit sets the Limit field's value. +func (s *DescribeDeliveryDestinationsInput) SetLimit(v int64) *DescribeDeliveryDestinationsInput { + s.Limit = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDeliveryDestinationsInput) SetNextToken(v string) *DescribeDeliveryDestinationsInput { + s.NextToken = &v + return s +} + +type DescribeDeliveryDestinationsOutput struct { + _ struct{} `type:"structure"` + + // An array of structures. Each structure contains information about one delivery + // destination in the account. + DeliveryDestinations []*DeliveryDestination `locationName:"deliveryDestinations" type:"list"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveryDestinationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliveryDestinationsOutput) GoString() string { + return s.String() +} + +// SetDeliveryDestinations sets the DeliveryDestinations field's value. +func (s *DescribeDeliveryDestinationsOutput) SetDeliveryDestinations(v []*DeliveryDestination) *DescribeDeliveryDestinationsOutput { + s.DeliveryDestinations = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDeliveryDestinationsOutput) SetNextToken(v string) *DescribeDeliveryDestinationsOutput { + s.NextToken = &v + return s +} + +type DescribeDeliverySourcesInput struct { + _ struct{} `type:"structure"` + + // Optionally specify the maximum number of delivery sources to return in the + // response. + Limit *int64 `locationName:"limit" min:"1" type:"integer"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliverySourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliverySourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDeliverySourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDeliverySourcesInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLimit sets the Limit field's value. +func (s *DescribeDeliverySourcesInput) SetLimit(v int64) *DescribeDeliverySourcesInput { + s.Limit = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDeliverySourcesInput) SetNextToken(v string) *DescribeDeliverySourcesInput { + s.NextToken = &v + return s +} + +type DescribeDeliverySourcesOutput struct { + _ struct{} `type:"structure"` + + // An array of structures. Each structure contains information about one delivery + // source in the account. + DeliverySources []*DeliverySource `locationName:"deliverySources" type:"list"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliverySourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDeliverySourcesOutput) GoString() string { + return s.String() +} + +// SetDeliverySources sets the DeliverySources field's value. +func (s *DescribeDeliverySourcesOutput) SetDeliverySources(v []*DeliverySource) *DescribeDeliverySourcesOutput { + s.DeliverySources = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDeliverySourcesOutput) SetNextToken(v string) *DescribeDeliverySourcesOutput { + s.NextToken = &v + return s +} + type DescribeDestinationsInput struct { _ struct{} `type:"structure"` @@ -7247,6 +11521,16 @@ // is up to 50 items. Limit *int64 `locationName:"limit" min:"1" type:"integer"` + // Specifies the log group class for this log group. There are two classes: + // + // * The Standard log class supports all CloudWatch Logs features. + // + // * The Infrequent Access log class supports a subset of CloudWatch Logs + // features and incurs lower costs. + // + // For details about the features supported by each class, see Log classes (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html) + LogGroupClass *string `locationName:"logGroupClass" type:"string" enum:"LogGroupClass"` + // If you specify a string for this parameter, the operation returns only log // groups that have names that match the string based on a case-sensitive substring // search. For example, if you specify Foo, log groups named FooBar, aws/Foo, @@ -7325,6 +11609,12 @@ return s } +// SetLogGroupClass sets the LogGroupClass field's value. +func (s *DescribeLogGroupsInput) SetLogGroupClass(v string) *DescribeLogGroupsInput { + s.LogGroupClass = &v + return s +} + // SetLogGroupNamePattern sets the LogGroupNamePattern field's value. func (s *DescribeLogGroupsInput) SetLogGroupNamePattern(v string) *DescribeLogGroupsInput { s.LogGroupNamePattern = &v @@ -8939,6 +13229,493 @@ return s } +type GetDeliveryDestinationInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery destination that you want to retrieve. + // + // Name is a required field + Name *string `locationName:"name" 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 GetDeliveryDestinationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliveryDestinationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDeliveryDestinationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDeliveryDestinationInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetDeliveryDestinationInput) SetName(v string) *GetDeliveryDestinationInput { + s.Name = &v + return s +} + +type GetDeliveryDestinationOutput struct { + _ struct{} `type:"structure"` + + // A structure containing information about the delivery destination. + DeliveryDestination *DeliveryDestination `locationName:"deliveryDestination" 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 GetDeliveryDestinationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliveryDestinationOutput) GoString() string { + return s.String() +} + +// SetDeliveryDestination sets the DeliveryDestination field's value. +func (s *GetDeliveryDestinationOutput) SetDeliveryDestination(v *DeliveryDestination) *GetDeliveryDestinationOutput { + s.DeliveryDestination = v + return s +} + +type GetDeliveryDestinationPolicyInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery destination that you want to retrieve the policy + // of. + // + // DeliveryDestinationName is a required field + DeliveryDestinationName *string `locationName:"deliveryDestinationName" 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 GetDeliveryDestinationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliveryDestinationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDeliveryDestinationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDeliveryDestinationPolicyInput"} + if s.DeliveryDestinationName == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryDestinationName")) + } + if s.DeliveryDestinationName != nil && len(*s.DeliveryDestinationName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeliveryDestinationName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeliveryDestinationName sets the DeliveryDestinationName field's value. +func (s *GetDeliveryDestinationPolicyInput) SetDeliveryDestinationName(v string) *GetDeliveryDestinationPolicyInput { + s.DeliveryDestinationName = &v + return s +} + +type GetDeliveryDestinationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The IAM policy for this delivery destination. + Policy *Policy `locationName:"policy" 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 GetDeliveryDestinationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliveryDestinationPolicyOutput) GoString() string { + return s.String() +} + +// SetPolicy sets the Policy field's value. +func (s *GetDeliveryDestinationPolicyOutput) SetPolicy(v *Policy) *GetDeliveryDestinationPolicyOutput { + s.Policy = v + return s +} + +type GetDeliveryInput struct { + _ struct{} `type:"structure"` + + // The ID of the delivery that you want to retrieve. + // + // Id is a required field + Id *string `locationName:"id" 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 GetDeliveryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliveryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDeliveryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDeliveryInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *GetDeliveryInput) SetId(v string) *GetDeliveryInput { + s.Id = &v + return s +} + +type GetDeliveryOutput struct { + _ struct{} `type:"structure"` + + // A structure that contains information about the delivery. + Delivery *Delivery `locationName:"delivery" 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 GetDeliveryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliveryOutput) GoString() string { + return s.String() +} + +// SetDelivery sets the Delivery field's value. +func (s *GetDeliveryOutput) SetDelivery(v *Delivery) *GetDeliveryOutput { + s.Delivery = v + return s +} + +type GetDeliverySourceInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery source that you want to retrieve. + // + // Name is a required field + Name *string `locationName:"name" 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 GetDeliverySourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliverySourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDeliverySourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDeliverySourceInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetDeliverySourceInput) SetName(v string) *GetDeliverySourceInput { + s.Name = &v + return s +} + +type GetDeliverySourceOutput struct { + _ struct{} `type:"structure"` + + // A structure containing information about the delivery source. + DeliverySource *DeliverySource `locationName:"deliverySource" 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 GetDeliverySourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeliverySourceOutput) GoString() string { + return s.String() +} + +// SetDeliverySource sets the DeliverySource field's value. +func (s *GetDeliverySourceOutput) SetDeliverySource(v *DeliverySource) *GetDeliverySourceOutput { + s.DeliverySource = v + return s +} + +type GetLogAnomalyDetectorInput struct { + _ struct{} `type:"structure"` + + // The ARN of the anomaly detector to retrieve information about. You can find + // the ARNs of log anomaly detectors in your account by using the ListLogAnomalyDetectors + // (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html) + // operation. + // + // AnomalyDetectorArn is a required field + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" 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 GetLogAnomalyDetectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLogAnomalyDetectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLogAnomalyDetectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLogAnomalyDetectorInput"} + if s.AnomalyDetectorArn == nil { + invalidParams.Add(request.NewErrParamRequired("AnomalyDetectorArn")) + } + if s.AnomalyDetectorArn != nil && len(*s.AnomalyDetectorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnomalyDetectorArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *GetLogAnomalyDetectorInput) SetAnomalyDetectorArn(v string) *GetLogAnomalyDetectorInput { + s.AnomalyDetectorArn = &v + return s +} + +type GetLogAnomalyDetectorOutput struct { + _ struct{} `type:"structure"` + + // Specifies whether the anomaly detector is currently active. To change its + // status, use the enabled parameter in the UpdateLogAnomalyDetector (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateLogAnomalyDetector.html) + // operation. + AnomalyDetectorStatus *string `locationName:"anomalyDetectorStatus" type:"string" enum:"AnomalyDetectorStatus"` + + // The number of days used as the life cycle of anomalies. After this time, + // anomalies are automatically baselined and the anomaly detector model will + // treat new occurrences of similar event as normal. + AnomalyVisibilityTime *int64 `locationName:"anomalyVisibilityTime" min:"7" type:"long"` + + // The date and time when this anomaly detector was created. + CreationTimeStamp *int64 `locationName:"creationTimeStamp" type:"long"` + + // The name of the log anomaly detector + DetectorName *string `locationName:"detectorName" min:"1" type:"string"` + + // Specifies how often the anomaly detector runs and look for anomalies. Set + // this value according to the frequency that the log group receives new logs. + // For example, if the log group receives new log events every 10 minutes, then + // setting evaluationFrequency to FIFTEEN_MIN might be appropriate. + EvaluationFrequency *string `locationName:"evaluationFrequency" type:"string" enum:"EvaluationFrequency"` + + // A symbolic description of how CloudWatch Logs should interpret the data in + // each log event. For example, a log event can contain timestamps, IP addresses, + // strings, and so on. You use the filter pattern to specify what to look for + // in the log event message. + FilterPattern *string `locationName:"filterPattern" type:"string"` + + // The ID of the KMS key assigned to this anomaly detector, if any. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The date and time when this anomaly detector was most recently modified. + LastModifiedTimeStamp *int64 `locationName:"lastModifiedTimeStamp" type:"long"` + + // An array of structures, where each structure contains the ARN of a log group + // associated with this anomaly detector. + LogGroupArnList []*string `locationName:"logGroupArnList" 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 GetLogAnomalyDetectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLogAnomalyDetectorOutput) GoString() string { + return s.String() +} + +// SetAnomalyDetectorStatus sets the AnomalyDetectorStatus field's value. +func (s *GetLogAnomalyDetectorOutput) SetAnomalyDetectorStatus(v string) *GetLogAnomalyDetectorOutput { + s.AnomalyDetectorStatus = &v + return s +} + +// SetAnomalyVisibilityTime sets the AnomalyVisibilityTime field's value. +func (s *GetLogAnomalyDetectorOutput) SetAnomalyVisibilityTime(v int64) *GetLogAnomalyDetectorOutput { + s.AnomalyVisibilityTime = &v + return s +} + +// SetCreationTimeStamp sets the CreationTimeStamp field's value. +func (s *GetLogAnomalyDetectorOutput) SetCreationTimeStamp(v int64) *GetLogAnomalyDetectorOutput { + s.CreationTimeStamp = &v + return s +} + +// SetDetectorName sets the DetectorName field's value. +func (s *GetLogAnomalyDetectorOutput) SetDetectorName(v string) *GetLogAnomalyDetectorOutput { + s.DetectorName = &v + return s +} + +// SetEvaluationFrequency sets the EvaluationFrequency field's value. +func (s *GetLogAnomalyDetectorOutput) SetEvaluationFrequency(v string) *GetLogAnomalyDetectorOutput { + s.EvaluationFrequency = &v + return s +} + +// SetFilterPattern sets the FilterPattern field's value. +func (s *GetLogAnomalyDetectorOutput) SetFilterPattern(v string) *GetLogAnomalyDetectorOutput { + s.FilterPattern = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *GetLogAnomalyDetectorOutput) SetKmsKeyId(v string) *GetLogAnomalyDetectorOutput { + s.KmsKeyId = &v + return s +} + +// SetLastModifiedTimeStamp sets the LastModifiedTimeStamp field's value. +func (s *GetLogAnomalyDetectorOutput) SetLastModifiedTimeStamp(v int64) *GetLogAnomalyDetectorOutput { + s.LastModifiedTimeStamp = &v + return s +} + +// SetLogGroupArnList sets the LogGroupArnList field's value. +func (s *GetLogAnomalyDetectorOutput) SetLogGroupArnList(v []*string) *GetLogAnomalyDetectorOutput { + s.LogGroupArnList = v + return s +} + type GetLogEventsInput struct { _ struct{} `type:"structure"` @@ -9798,6 +14575,242 @@ return s.RespMetadata.RequestID } +type ListAnomaliesInput struct { + _ struct{} `type:"structure"` + + // Use this to optionally limit the results to only the anomalies found by a + // certain anomaly detector. + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" min:"1" type:"string"` + + // The maximum number of items to return. If you don't specify a value, the + // default maximum value of 50 items is used. + Limit *int64 `locationName:"limit" min:"1" type:"integer"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // You can specify this parameter if you want to the operation to return only + // anomalies that are currently either suppressed or unsuppressed. + SuppressionState *string `locationName:"suppressionState" type:"string" enum:"SuppressionState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnomaliesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnomaliesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAnomaliesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAnomaliesInput"} + if s.AnomalyDetectorArn != nil && len(*s.AnomalyDetectorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnomalyDetectorArn", 1)) + } + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *ListAnomaliesInput) SetAnomalyDetectorArn(v string) *ListAnomaliesInput { + s.AnomalyDetectorArn = &v + return s +} + +// SetLimit sets the Limit field's value. +func (s *ListAnomaliesInput) SetLimit(v int64) *ListAnomaliesInput { + s.Limit = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAnomaliesInput) SetNextToken(v string) *ListAnomaliesInput { + s.NextToken = &v + return s +} + +// SetSuppressionState sets the SuppressionState field's value. +func (s *ListAnomaliesInput) SetSuppressionState(v string) *ListAnomaliesInput { + s.SuppressionState = &v + return s +} + +type ListAnomaliesOutput struct { + _ struct{} `type:"structure"` + + // An array of structures, where each structure contains information about one + // anomaly that a log anomaly detector has found. + Anomalies []*Anomaly `locationName:"anomalies" type:"list"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnomaliesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnomaliesOutput) GoString() string { + return s.String() +} + +// SetAnomalies sets the Anomalies field's value. +func (s *ListAnomaliesOutput) SetAnomalies(v []*Anomaly) *ListAnomaliesOutput { + s.Anomalies = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAnomaliesOutput) SetNextToken(v string) *ListAnomaliesOutput { + s.NextToken = &v + return s +} + +type ListLogAnomalyDetectorsInput struct { + _ struct{} `type:"structure"` + + // Use this to optionally filter the results to only include anomaly detectors + // that are associated with the specified log group. + FilterLogGroupArn *string `locationName:"filterLogGroupArn" min:"1" type:"string"` + + // The maximum number of items to return. If you don't specify a value, the + // default maximum value of 50 items is used. + Limit *int64 `locationName:"limit" min:"1" type:"integer"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLogAnomalyDetectorsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLogAnomalyDetectorsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLogAnomalyDetectorsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLogAnomalyDetectorsInput"} + if s.FilterLogGroupArn != nil && len(*s.FilterLogGroupArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FilterLogGroupArn", 1)) + } + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilterLogGroupArn sets the FilterLogGroupArn field's value. +func (s *ListLogAnomalyDetectorsInput) SetFilterLogGroupArn(v string) *ListLogAnomalyDetectorsInput { + s.FilterLogGroupArn = &v + return s +} + +// SetLimit sets the Limit field's value. +func (s *ListLogAnomalyDetectorsInput) SetLimit(v int64) *ListLogAnomalyDetectorsInput { + s.Limit = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLogAnomalyDetectorsInput) SetNextToken(v string) *ListLogAnomalyDetectorsInput { + s.NextToken = &v + return s +} + +type ListLogAnomalyDetectorsOutput struct { + _ struct{} `type:"structure"` + + // An array of structures, where each structure in the array contains information + // about one anomaly detector. + AnomalyDetectors []*AnomalyDetector `locationName:"anomalyDetectors" type:"list"` + + // The token for the next set of items to return. The token expires after 24 + // hours. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLogAnomalyDetectorsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLogAnomalyDetectorsOutput) GoString() string { + return s.String() +} + +// SetAnomalyDetectors sets the AnomalyDetectors field's value. +func (s *ListLogAnomalyDetectorsOutput) SetAnomalyDetectors(v []*AnomalyDetector) *ListLogAnomalyDetectorsOutput { + s.AnomalyDetectors = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLogAnomalyDetectorsOutput) SetNextToken(v string) *ListLogAnomalyDetectorsOutput { + s.NextToken = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure"` @@ -9990,6 +15003,16 @@ // data. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + // This specifies the log group class for this log group. There are two classes: + // + // * The Standard log class supports all CloudWatch Logs features. + // + // * The Infrequent Access log class supports a subset of CloudWatch Logs + // features and incurs lower costs. + // + // For details about the features supported by each class, see Log classes (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html) + LogGroupClass *string `locationName:"logGroupClass" type:"string" enum:"LogGroupClass"` + // The name of the log group. LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` @@ -10056,6 +15079,12 @@ return s } +// SetLogGroupClass sets the LogGroupClass field's value. +func (s *LogGroup) SetLogGroupClass(v string) *LogGroup { + s.LogGroupClass = &v + return s +} + // SetLogGroupName sets the LogGroupName field's value. func (s *LogGroup) SetLogGroupName(v string) *LogGroup { s.LogGroupName = &v @@ -10669,6 +15698,105 @@ return s } +// A tructures that contains information about one pattern token related to +// an anomaly. +// +// For more information about patterns and tokens, see CreateLogAnomalyDetector +// (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogAnomalyDetector.html). +type PatternToken struct { + _ struct{} `type:"structure"` + + // For a dynamic token, this indicates where in the pattern that this token + // appears, related to other dynamic tokens. The dynamic token that appears + // first has a value of 1, the one that appears second is 2, and so on. + DynamicTokenPosition *int64 `locationName:"dynamicTokenPosition" type:"integer"` + + // Contains the values found for a dynamic token, and the number of times each + // value was found. + Enumerations map[string]*int64 `locationName:"enumerations" type:"map"` + + // Specifies whether this is a dynamic token. + IsDynamic *bool `locationName:"isDynamic" type:"boolean"` + + // The string represented by this token. If this is a dynamic token, the value + // will be <*> + TokenString *string `locationName:"tokenString" 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 PatternToken) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PatternToken) GoString() string { + return s.String() +} + +// SetDynamicTokenPosition sets the DynamicTokenPosition field's value. +func (s *PatternToken) SetDynamicTokenPosition(v int64) *PatternToken { + s.DynamicTokenPosition = &v + return s +} + +// SetEnumerations sets the Enumerations field's value. +func (s *PatternToken) SetEnumerations(v map[string]*int64) *PatternToken { + s.Enumerations = v + return s +} + +// SetIsDynamic sets the IsDynamic field's value. +func (s *PatternToken) SetIsDynamic(v bool) *PatternToken { + s.IsDynamic = &v + return s +} + +// SetTokenString sets the TokenString field's value. +func (s *PatternToken) SetTokenString(v string) *PatternToken { + s.TokenString = &v + return s +} + +// A structure that contains information about one delivery destination policy. +type Policy struct { + _ struct{} `type:"structure"` + + // The contents of the delivery destination policy. + DeliveryDestinationPolicy *string `locationName:"deliveryDestinationPolicy" 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 Policy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Policy) GoString() string { + return s.String() +} + +// SetDeliveryDestinationPolicy sets the DeliveryDestinationPolicy field's value. +func (s *Policy) SetDeliveryDestinationPolicy(v string) *Policy { + s.DeliveryDestinationPolicy = &v + return s +} + type PutAccountPolicyInput struct { _ struct{} `type:"structure"` @@ -10958,6 +16086,359 @@ return s } +type PutDeliveryDestinationInput struct { + _ struct{} `type:"structure"` + + // A structure that contains the ARN of the Amazon Web Services resource that + // will receive the logs. + // + // DeliveryDestinationConfiguration is a required field + DeliveryDestinationConfiguration *DeliveryDestinationConfiguration `locationName:"deliveryDestinationConfiguration" type:"structure" required:"true"` + + // A name for this delivery destination. This name must be unique for all delivery + // destinations in your account. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The format for the logs that this delivery destination will receive. + OutputFormat *string `locationName:"outputFormat" type:"string" enum:"OutputFormat"` + + // An optional list of key-value pairs to associate with the resource. + // + // For more information about tagging, see Tagging Amazon Web Services resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliveryDestinationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliveryDestinationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutDeliveryDestinationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutDeliveryDestinationInput"} + if s.DeliveryDestinationConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryDestinationConfiguration")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.DeliveryDestinationConfiguration != nil { + if err := s.DeliveryDestinationConfiguration.Validate(); err != nil { + invalidParams.AddNested("DeliveryDestinationConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeliveryDestinationConfiguration sets the DeliveryDestinationConfiguration field's value. +func (s *PutDeliveryDestinationInput) SetDeliveryDestinationConfiguration(v *DeliveryDestinationConfiguration) *PutDeliveryDestinationInput { + s.DeliveryDestinationConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *PutDeliveryDestinationInput) SetName(v string) *PutDeliveryDestinationInput { + s.Name = &v + return s +} + +// SetOutputFormat sets the OutputFormat field's value. +func (s *PutDeliveryDestinationInput) SetOutputFormat(v string) *PutDeliveryDestinationInput { + s.OutputFormat = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *PutDeliveryDestinationInput) SetTags(v map[string]*string) *PutDeliveryDestinationInput { + s.Tags = v + return s +} + +type PutDeliveryDestinationOutput struct { + _ struct{} `type:"structure"` + + // A structure containing information about the delivery destination that you + // just created or updated. + DeliveryDestination *DeliveryDestination `locationName:"deliveryDestination" 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 PutDeliveryDestinationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliveryDestinationOutput) GoString() string { + return s.String() +} + +// SetDeliveryDestination sets the DeliveryDestination field's value. +func (s *PutDeliveryDestinationOutput) SetDeliveryDestination(v *DeliveryDestination) *PutDeliveryDestinationOutput { + s.DeliveryDestination = v + return s +} + +type PutDeliveryDestinationPolicyInput struct { + _ struct{} `type:"structure"` + + // The name of the delivery destination to assign this policy to. + // + // DeliveryDestinationName is a required field + DeliveryDestinationName *string `locationName:"deliveryDestinationName" min:"1" type:"string" required:"true"` + + // The contents of the policy. + // + // DeliveryDestinationPolicy is a required field + DeliveryDestinationPolicy *string `locationName:"deliveryDestinationPolicy" 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 PutDeliveryDestinationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliveryDestinationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutDeliveryDestinationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutDeliveryDestinationPolicyInput"} + if s.DeliveryDestinationName == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryDestinationName")) + } + if s.DeliveryDestinationName != nil && len(*s.DeliveryDestinationName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeliveryDestinationName", 1)) + } + if s.DeliveryDestinationPolicy == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryDestinationPolicy")) + } + if s.DeliveryDestinationPolicy != nil && len(*s.DeliveryDestinationPolicy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeliveryDestinationPolicy", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeliveryDestinationName sets the DeliveryDestinationName field's value. +func (s *PutDeliveryDestinationPolicyInput) SetDeliveryDestinationName(v string) *PutDeliveryDestinationPolicyInput { + s.DeliveryDestinationName = &v + return s +} + +// SetDeliveryDestinationPolicy sets the DeliveryDestinationPolicy field's value. +func (s *PutDeliveryDestinationPolicyInput) SetDeliveryDestinationPolicy(v string) *PutDeliveryDestinationPolicyInput { + s.DeliveryDestinationPolicy = &v + return s +} + +type PutDeliveryDestinationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The contents of the policy that you just created. + Policy *Policy `locationName:"policy" 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 PutDeliveryDestinationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliveryDestinationPolicyOutput) GoString() string { + return s.String() +} + +// SetPolicy sets the Policy field's value. +func (s *PutDeliveryDestinationPolicyOutput) SetPolicy(v *Policy) *PutDeliveryDestinationPolicyOutput { + s.Policy = v + return s +} + +type PutDeliverySourceInput struct { + _ struct{} `type:"structure"` + + // Defines the type of log that the source is sending. For valid values for + // this parameter, see the documentation for the source service. + // + // LogType is a required field + LogType *string `locationName:"logType" min:"1" type:"string" required:"true"` + + // A name for this delivery source. This name must be unique for all delivery + // sources in your account. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the Amazon Web Services resource that is generating and sending + // logs. For example, arn:aws:workmail:us-east-1:123456789012:organization/m-1234EXAMPLEabcd1234abcd1234abcd1234 + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` + + // An optional list of key-value pairs to associate with the resource. + // + // For more information about tagging, see Tagging Amazon Web Services resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliverySourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliverySourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutDeliverySourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutDeliverySourceInput"} + if s.LogType == nil { + invalidParams.Add(request.NewErrParamRequired("LogType")) + } + if s.LogType != nil && len(*s.LogType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogType", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLogType sets the LogType field's value. +func (s *PutDeliverySourceInput) SetLogType(v string) *PutDeliverySourceInput { + s.LogType = &v + return s +} + +// SetName sets the Name field's value. +func (s *PutDeliverySourceInput) SetName(v string) *PutDeliverySourceInput { + s.Name = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *PutDeliverySourceInput) SetResourceArn(v string) *PutDeliverySourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *PutDeliverySourceInput) SetTags(v map[string]*string) *PutDeliverySourceInput { + s.Tags = v + return s +} + +type PutDeliverySourceOutput struct { + _ struct{} `type:"structure"` + + // A structure containing information about the delivery source that was just + // created or updated. + DeliverySource *DeliverySource `locationName:"deliverySource" 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 PutDeliverySourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeliverySourceOutput) GoString() string { + return s.String() +} + +// SetDeliverySource sets the DeliverySource field's value. +func (s *PutDeliverySourceOutput) SetDeliverySource(v *DeliverySource) *PutDeliverySourceOutput { + s.DeliverySource = v + return s +} + type PutDestinationInput struct { _ struct{} `type:"structure"` @@ -12575,6 +18056,70 @@ return s } +// This request exceeds a service quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + // The service cannot complete the request. type ServiceUnavailableException struct { _ struct{} `type:"structure"` @@ -12976,6 +18521,49 @@ return s } +// If you are suppressing an anomaly temporariliy, this structure defines how +// long the suppression period is to be. +type SuppressionPeriod struct { + _ struct{} `type:"structure"` + + // Specifies whether the value of value is in seconds, minutes, or hours. + SuppressionUnit *string `locationName:"suppressionUnit" type:"string" enum:"SuppressionUnit"` + + // Specifies the number of seconds, minutes or hours to suppress this anomaly. + // There is no maximum. + Value *int64 `locationName:"value" 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 SuppressionPeriod) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SuppressionPeriod) GoString() string { + return s.String() +} + +// SetSuppressionUnit sets the SuppressionUnit field's value. +func (s *SuppressionPeriod) SetSuppressionUnit(v string) *SuppressionPeriod { + s.SuppressionUnit = &v + return s +} + +// SetValue sets the Value field's value. +func (s *SuppressionPeriod) SetValue(v int64) *SuppressionPeriod { + s.Value = &v + return s +} + // Deprecated: Please use the generic tagging API model TagResourceRequest type TagLogGroupInput struct { _ struct{} `deprecated:"true" type:"structure"` @@ -13257,6 +18845,70 @@ return s } +// The request was throttled because of quota limits. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + // A resource can have no more than 50 tags. type TooManyTagsException struct { _ struct{} `type:"structure"` @@ -13570,6 +19222,347 @@ return s.String() } +type UpdateAnomalyInput struct { + _ struct{} `type:"structure"` + + // The ARN of the anomaly detector that this operation is to act on. + // + // AnomalyDetectorArn is a required field + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" min:"1" type:"string" required:"true"` + + // If you are suppressing or unsuppressing an anomaly, specify its unique ID + // here. You can find anomaly IDs by using the ListAnomalies (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListAnomalies.html) + // operation. + AnomalyId *string `locationName:"anomalyId" min:"36" type:"string"` + + // If you are suppressing or unsuppressing an pattern, specify its unique ID + // here. You can find pattern IDs by using the ListAnomalies (https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListAnomalies.html) + // operation. + PatternId *string `locationName:"patternId" min:"32" type:"string"` + + // If you are temporarily suppressing an anomaly or pattern, use this structure + // to specify how long the suppression is to last. + SuppressionPeriod *SuppressionPeriod `locationName:"suppressionPeriod" type:"structure"` + + // Use this to specify whether the suppression to be temporary or infinite. + // If you specify LIMITED, you must also specify a suppressionPeriod. If you + // specify INFINITE, any value for suppressionPeriod is ignored. + SuppressionType *string `locationName:"suppressionType" type:"string" enum:"SuppressionType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAnomalyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAnomalyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAnomalyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAnomalyInput"} + if s.AnomalyDetectorArn == nil { + invalidParams.Add(request.NewErrParamRequired("AnomalyDetectorArn")) + } + if s.AnomalyDetectorArn != nil && len(*s.AnomalyDetectorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnomalyDetectorArn", 1)) + } + if s.AnomalyId != nil && len(*s.AnomalyId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AnomalyId", 36)) + } + if s.PatternId != nil && len(*s.PatternId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("PatternId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *UpdateAnomalyInput) SetAnomalyDetectorArn(v string) *UpdateAnomalyInput { + s.AnomalyDetectorArn = &v + return s +} + +// SetAnomalyId sets the AnomalyId field's value. +func (s *UpdateAnomalyInput) SetAnomalyId(v string) *UpdateAnomalyInput { + s.AnomalyId = &v + return s +} + +// SetPatternId sets the PatternId field's value. +func (s *UpdateAnomalyInput) SetPatternId(v string) *UpdateAnomalyInput { + s.PatternId = &v + return s +} + +// SetSuppressionPeriod sets the SuppressionPeriod field's value. +func (s *UpdateAnomalyInput) SetSuppressionPeriod(v *SuppressionPeriod) *UpdateAnomalyInput { + s.SuppressionPeriod = v + return s +} + +// SetSuppressionType sets the SuppressionType field's value. +func (s *UpdateAnomalyInput) SetSuppressionType(v string) *UpdateAnomalyInput { + s.SuppressionType = &v + return s +} + +type UpdateAnomalyOutput 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 UpdateAnomalyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAnomalyOutput) GoString() string { + return s.String() +} + +type UpdateLogAnomalyDetectorInput struct { + _ struct{} `type:"structure"` + + // The ARN of the anomaly detector that you want to update. + // + // AnomalyDetectorArn is a required field + AnomalyDetectorArn *string `locationName:"anomalyDetectorArn" min:"1" type:"string" required:"true"` + + // The number of days to use as the life cycle of anomalies. After this time, + // anomalies are automatically baselined and the anomaly detector model will + // treat new occurrences of similar event as normal. Therefore, if you do not + // correct the cause of an anomaly during this time, it will be considered normal + // going forward and will not be detected. + AnomalyVisibilityTime *int64 `locationName:"anomalyVisibilityTime" min:"7" type:"long"` + + // Use this parameter to pause or restart the anomaly detector. + // + // Enabled is a required field + Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` + + // Specifies how often the anomaly detector runs and look for anomalies. Set + // this value according to the frequency that the log group receives new logs. + // For example, if the log group receives new log events every 10 minutes, then + // setting evaluationFrequency to FIFTEEN_MIN might be appropriate. + EvaluationFrequency *string `locationName:"evaluationFrequency" type:"string" enum:"EvaluationFrequency"` + + // A symbolic description of how CloudWatch Logs should interpret the data in + // each log event. For example, a log event can contain timestamps, IP addresses, + // strings, and so on. You use the filter pattern to specify what to look for + // in the log event message. + FilterPattern *string `locationName:"filterPattern" 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 UpdateLogAnomalyDetectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLogAnomalyDetectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateLogAnomalyDetectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateLogAnomalyDetectorInput"} + if s.AnomalyDetectorArn == nil { + invalidParams.Add(request.NewErrParamRequired("AnomalyDetectorArn")) + } + if s.AnomalyDetectorArn != nil && len(*s.AnomalyDetectorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnomalyDetectorArn", 1)) + } + if s.AnomalyVisibilityTime != nil && *s.AnomalyVisibilityTime < 7 { + invalidParams.Add(request.NewErrParamMinValue("AnomalyVisibilityTime", 7)) + } + if s.Enabled == nil { + invalidParams.Add(request.NewErrParamRequired("Enabled")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnomalyDetectorArn sets the AnomalyDetectorArn field's value. +func (s *UpdateLogAnomalyDetectorInput) SetAnomalyDetectorArn(v string) *UpdateLogAnomalyDetectorInput { + s.AnomalyDetectorArn = &v + return s +} + +// SetAnomalyVisibilityTime sets the AnomalyVisibilityTime field's value. +func (s *UpdateLogAnomalyDetectorInput) SetAnomalyVisibilityTime(v int64) *UpdateLogAnomalyDetectorInput { + s.AnomalyVisibilityTime = &v + return s +} + +// SetEnabled sets the Enabled field's value. +func (s *UpdateLogAnomalyDetectorInput) SetEnabled(v bool) *UpdateLogAnomalyDetectorInput { + s.Enabled = &v + return s +} + +// SetEvaluationFrequency sets the EvaluationFrequency field's value. +func (s *UpdateLogAnomalyDetectorInput) SetEvaluationFrequency(v string) *UpdateLogAnomalyDetectorInput { + s.EvaluationFrequency = &v + return s +} + +// SetFilterPattern sets the FilterPattern field's value. +func (s *UpdateLogAnomalyDetectorInput) SetFilterPattern(v string) *UpdateLogAnomalyDetectorInput { + s.FilterPattern = &v + return s +} + +type UpdateLogAnomalyDetectorOutput 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 UpdateLogAnomalyDetectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLogAnomalyDetectorOutput) GoString() string { + return s.String() +} + +// One of the parameters for the request is not valid. +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 +} + +const ( + // AnomalyDetectorStatusInitializing is a AnomalyDetectorStatus enum value + AnomalyDetectorStatusInitializing = "INITIALIZING" + + // AnomalyDetectorStatusTraining is a AnomalyDetectorStatus enum value + AnomalyDetectorStatusTraining = "TRAINING" + + // AnomalyDetectorStatusAnalyzing is a AnomalyDetectorStatus enum value + AnomalyDetectorStatusAnalyzing = "ANALYZING" + + // AnomalyDetectorStatusFailed is a AnomalyDetectorStatus enum value + AnomalyDetectorStatusFailed = "FAILED" + + // AnomalyDetectorStatusDeleted is a AnomalyDetectorStatus enum value + AnomalyDetectorStatusDeleted = "DELETED" + + // AnomalyDetectorStatusPaused is a AnomalyDetectorStatus enum value + AnomalyDetectorStatusPaused = "PAUSED" +) + +// AnomalyDetectorStatus_Values returns all elements of the AnomalyDetectorStatus enum +func AnomalyDetectorStatus_Values() []string { + return []string{ + AnomalyDetectorStatusInitializing, + AnomalyDetectorStatusTraining, + AnomalyDetectorStatusAnalyzing, + AnomalyDetectorStatusFailed, + AnomalyDetectorStatusDeleted, + AnomalyDetectorStatusPaused, + } +} + const ( // DataProtectionStatusActivated is a DataProtectionStatus enum value DataProtectionStatusActivated = "ACTIVATED" @@ -13594,6 +19587,26 @@ } } +const ( + // DeliveryDestinationTypeS3 is a DeliveryDestinationType enum value + DeliveryDestinationTypeS3 = "S3" + + // DeliveryDestinationTypeCwl is a DeliveryDestinationType enum value + DeliveryDestinationTypeCwl = "CWL" + + // DeliveryDestinationTypeFh is a DeliveryDestinationType enum value + DeliveryDestinationTypeFh = "FH" +) + +// DeliveryDestinationType_Values returns all elements of the DeliveryDestinationType enum +func DeliveryDestinationType_Values() []string { + return []string{ + DeliveryDestinationTypeS3, + DeliveryDestinationTypeCwl, + DeliveryDestinationTypeFh, + } +} + // The method used to distribute log data to the destination, which can be either // random or grouped by log stream. const ( @@ -13613,6 +19626,38 @@ } const ( + // EvaluationFrequencyOneMin is a EvaluationFrequency enum value + EvaluationFrequencyOneMin = "ONE_MIN" + + // EvaluationFrequencyFiveMin is a EvaluationFrequency enum value + EvaluationFrequencyFiveMin = "FIVE_MIN" + + // EvaluationFrequencyTenMin is a EvaluationFrequency enum value + EvaluationFrequencyTenMin = "TEN_MIN" + + // EvaluationFrequencyFifteenMin is a EvaluationFrequency enum value + EvaluationFrequencyFifteenMin = "FIFTEEN_MIN" + + // EvaluationFrequencyThirtyMin is a EvaluationFrequency enum value + EvaluationFrequencyThirtyMin = "THIRTY_MIN" + + // EvaluationFrequencyOneHour is a EvaluationFrequency enum value + EvaluationFrequencyOneHour = "ONE_HOUR" +) + +// EvaluationFrequency_Values returns all elements of the EvaluationFrequency enum +func EvaluationFrequency_Values() []string { + return []string{ + EvaluationFrequencyOneMin, + EvaluationFrequencyFiveMin, + EvaluationFrequencyTenMin, + EvaluationFrequencyFifteenMin, + EvaluationFrequencyThirtyMin, + EvaluationFrequencyOneHour, + } +} + +const ( // ExportTaskStatusCodeCancelled is a ExportTaskStatusCode enum value ExportTaskStatusCodeCancelled = "CANCELLED" @@ -13657,6 +19702,22 @@ } const ( + // LogGroupClassStandard is a LogGroupClass enum value + LogGroupClassStandard = "STANDARD" + + // LogGroupClassInfrequentAccess is a LogGroupClass enum value + LogGroupClassInfrequentAccess = "INFREQUENT_ACCESS" +) + +// LogGroupClass_Values returns all elements of the LogGroupClass enum +func LogGroupClass_Values() []string { + return []string{ + LogGroupClassStandard, + LogGroupClassInfrequentAccess, + } +} + +const ( // OrderByLogStreamName is a OrderBy enum value OrderByLogStreamName = "LogStreamName" @@ -13673,6 +19734,34 @@ } const ( + // OutputFormatJson is a OutputFormat enum value + OutputFormatJson = "json" + + // OutputFormatPlain is a OutputFormat enum value + OutputFormatPlain = "plain" + + // OutputFormatW3c is a OutputFormat enum value + OutputFormatW3c = "w3c" + + // OutputFormatRaw is a OutputFormat enum value + OutputFormatRaw = "raw" + + // OutputFormatParquet is a OutputFormat enum value + OutputFormatParquet = "parquet" +) + +// OutputFormat_Values returns all elements of the OutputFormat enum +func OutputFormat_Values() []string { + return []string{ + OutputFormatJson, + OutputFormatPlain, + OutputFormatW3c, + OutputFormatRaw, + OutputFormatParquet, + } +} + +const ( // PolicyTypeDataProtectionPolicy is a PolicyType enum value PolicyTypeDataProtectionPolicy = "DATA_PROTECTION_POLICY" ) @@ -13847,3 +19936,75 @@ StandardUnitNone, } } + +const ( + // StateActive is a State enum value + StateActive = "Active" + + // StateSuppressed is a State enum value + StateSuppressed = "Suppressed" + + // StateBaseline is a State enum value + StateBaseline = "Baseline" +) + +// State_Values returns all elements of the State enum +func State_Values() []string { + return []string{ + StateActive, + StateSuppressed, + StateBaseline, + } +} + +const ( + // SuppressionStateSuppressed is a SuppressionState enum value + SuppressionStateSuppressed = "SUPPRESSED" + + // SuppressionStateUnsuppressed is a SuppressionState enum value + SuppressionStateUnsuppressed = "UNSUPPRESSED" +) + +// SuppressionState_Values returns all elements of the SuppressionState enum +func SuppressionState_Values() []string { + return []string{ + SuppressionStateSuppressed, + SuppressionStateUnsuppressed, + } +} + +const ( + // SuppressionTypeLimited is a SuppressionType enum value + SuppressionTypeLimited = "LIMITED" + + // SuppressionTypeInfinite is a SuppressionType enum value + SuppressionTypeInfinite = "INFINITE" +) + +// SuppressionType_Values returns all elements of the SuppressionType enum +func SuppressionType_Values() []string { + return []string{ + SuppressionTypeLimited, + SuppressionTypeInfinite, + } +} + +const ( + // SuppressionUnitSeconds is a SuppressionUnit enum value + SuppressionUnitSeconds = "SECONDS" + + // SuppressionUnitMinutes is a SuppressionUnit enum value + SuppressionUnitMinutes = "MINUTES" + + // SuppressionUnitHours is a SuppressionUnit enum value + SuppressionUnitHours = "HOURS" +) + +// SuppressionUnit_Values returns all elements of the SuppressionUnit enum +func SuppressionUnit_Values() []string { + return []string{ + SuppressionUnitSeconds, + SuppressionUnitMinutes, + SuppressionUnitHours, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchlogs/cloudwatchlogsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchlogs/cloudwatchlogsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchlogs/cloudwatchlogsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchlogs/cloudwatchlogsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -68,10 +68,18 @@ CancelExportTaskWithContext(aws.Context, *cloudwatchlogs.CancelExportTaskInput, ...request.Option) (*cloudwatchlogs.CancelExportTaskOutput, error) CancelExportTaskRequest(*cloudwatchlogs.CancelExportTaskInput) (*request.Request, *cloudwatchlogs.CancelExportTaskOutput) + CreateDelivery(*cloudwatchlogs.CreateDeliveryInput) (*cloudwatchlogs.CreateDeliveryOutput, error) + CreateDeliveryWithContext(aws.Context, *cloudwatchlogs.CreateDeliveryInput, ...request.Option) (*cloudwatchlogs.CreateDeliveryOutput, error) + CreateDeliveryRequest(*cloudwatchlogs.CreateDeliveryInput) (*request.Request, *cloudwatchlogs.CreateDeliveryOutput) + CreateExportTask(*cloudwatchlogs.CreateExportTaskInput) (*cloudwatchlogs.CreateExportTaskOutput, error) CreateExportTaskWithContext(aws.Context, *cloudwatchlogs.CreateExportTaskInput, ...request.Option) (*cloudwatchlogs.CreateExportTaskOutput, error) CreateExportTaskRequest(*cloudwatchlogs.CreateExportTaskInput) (*request.Request, *cloudwatchlogs.CreateExportTaskOutput) + CreateLogAnomalyDetector(*cloudwatchlogs.CreateLogAnomalyDetectorInput) (*cloudwatchlogs.CreateLogAnomalyDetectorOutput, error) + CreateLogAnomalyDetectorWithContext(aws.Context, *cloudwatchlogs.CreateLogAnomalyDetectorInput, ...request.Option) (*cloudwatchlogs.CreateLogAnomalyDetectorOutput, error) + CreateLogAnomalyDetectorRequest(*cloudwatchlogs.CreateLogAnomalyDetectorInput) (*request.Request, *cloudwatchlogs.CreateLogAnomalyDetectorOutput) + CreateLogGroup(*cloudwatchlogs.CreateLogGroupInput) (*cloudwatchlogs.CreateLogGroupOutput, error) CreateLogGroupWithContext(aws.Context, *cloudwatchlogs.CreateLogGroupInput, ...request.Option) (*cloudwatchlogs.CreateLogGroupOutput, error) CreateLogGroupRequest(*cloudwatchlogs.CreateLogGroupInput) (*request.Request, *cloudwatchlogs.CreateLogGroupOutput) @@ -88,10 +96,30 @@ DeleteDataProtectionPolicyWithContext(aws.Context, *cloudwatchlogs.DeleteDataProtectionPolicyInput, ...request.Option) (*cloudwatchlogs.DeleteDataProtectionPolicyOutput, error) DeleteDataProtectionPolicyRequest(*cloudwatchlogs.DeleteDataProtectionPolicyInput) (*request.Request, *cloudwatchlogs.DeleteDataProtectionPolicyOutput) + DeleteDelivery(*cloudwatchlogs.DeleteDeliveryInput) (*cloudwatchlogs.DeleteDeliveryOutput, error) + DeleteDeliveryWithContext(aws.Context, *cloudwatchlogs.DeleteDeliveryInput, ...request.Option) (*cloudwatchlogs.DeleteDeliveryOutput, error) + DeleteDeliveryRequest(*cloudwatchlogs.DeleteDeliveryInput) (*request.Request, *cloudwatchlogs.DeleteDeliveryOutput) + + DeleteDeliveryDestination(*cloudwatchlogs.DeleteDeliveryDestinationInput) (*cloudwatchlogs.DeleteDeliveryDestinationOutput, error) + DeleteDeliveryDestinationWithContext(aws.Context, *cloudwatchlogs.DeleteDeliveryDestinationInput, ...request.Option) (*cloudwatchlogs.DeleteDeliveryDestinationOutput, error) + DeleteDeliveryDestinationRequest(*cloudwatchlogs.DeleteDeliveryDestinationInput) (*request.Request, *cloudwatchlogs.DeleteDeliveryDestinationOutput) + + DeleteDeliveryDestinationPolicy(*cloudwatchlogs.DeleteDeliveryDestinationPolicyInput) (*cloudwatchlogs.DeleteDeliveryDestinationPolicyOutput, error) + DeleteDeliveryDestinationPolicyWithContext(aws.Context, *cloudwatchlogs.DeleteDeliveryDestinationPolicyInput, ...request.Option) (*cloudwatchlogs.DeleteDeliveryDestinationPolicyOutput, error) + DeleteDeliveryDestinationPolicyRequest(*cloudwatchlogs.DeleteDeliveryDestinationPolicyInput) (*request.Request, *cloudwatchlogs.DeleteDeliveryDestinationPolicyOutput) + + DeleteDeliverySource(*cloudwatchlogs.DeleteDeliverySourceInput) (*cloudwatchlogs.DeleteDeliverySourceOutput, error) + DeleteDeliverySourceWithContext(aws.Context, *cloudwatchlogs.DeleteDeliverySourceInput, ...request.Option) (*cloudwatchlogs.DeleteDeliverySourceOutput, error) + DeleteDeliverySourceRequest(*cloudwatchlogs.DeleteDeliverySourceInput) (*request.Request, *cloudwatchlogs.DeleteDeliverySourceOutput) + DeleteDestination(*cloudwatchlogs.DeleteDestinationInput) (*cloudwatchlogs.DeleteDestinationOutput, error) DeleteDestinationWithContext(aws.Context, *cloudwatchlogs.DeleteDestinationInput, ...request.Option) (*cloudwatchlogs.DeleteDestinationOutput, error) DeleteDestinationRequest(*cloudwatchlogs.DeleteDestinationInput) (*request.Request, *cloudwatchlogs.DeleteDestinationOutput) + DeleteLogAnomalyDetector(*cloudwatchlogs.DeleteLogAnomalyDetectorInput) (*cloudwatchlogs.DeleteLogAnomalyDetectorOutput, error) + DeleteLogAnomalyDetectorWithContext(aws.Context, *cloudwatchlogs.DeleteLogAnomalyDetectorInput, ...request.Option) (*cloudwatchlogs.DeleteLogAnomalyDetectorOutput, error) + DeleteLogAnomalyDetectorRequest(*cloudwatchlogs.DeleteLogAnomalyDetectorInput) (*request.Request, *cloudwatchlogs.DeleteLogAnomalyDetectorOutput) + DeleteLogGroup(*cloudwatchlogs.DeleteLogGroupInput) (*cloudwatchlogs.DeleteLogGroupOutput, error) DeleteLogGroupWithContext(aws.Context, *cloudwatchlogs.DeleteLogGroupInput, ...request.Option) (*cloudwatchlogs.DeleteLogGroupOutput, error) DeleteLogGroupRequest(*cloudwatchlogs.DeleteLogGroupInput) (*request.Request, *cloudwatchlogs.DeleteLogGroupOutput) @@ -124,6 +152,27 @@ DescribeAccountPoliciesWithContext(aws.Context, *cloudwatchlogs.DescribeAccountPoliciesInput, ...request.Option) (*cloudwatchlogs.DescribeAccountPoliciesOutput, error) DescribeAccountPoliciesRequest(*cloudwatchlogs.DescribeAccountPoliciesInput) (*request.Request, *cloudwatchlogs.DescribeAccountPoliciesOutput) + DescribeDeliveries(*cloudwatchlogs.DescribeDeliveriesInput) (*cloudwatchlogs.DescribeDeliveriesOutput, error) + DescribeDeliveriesWithContext(aws.Context, *cloudwatchlogs.DescribeDeliveriesInput, ...request.Option) (*cloudwatchlogs.DescribeDeliveriesOutput, error) + DescribeDeliveriesRequest(*cloudwatchlogs.DescribeDeliveriesInput) (*request.Request, *cloudwatchlogs.DescribeDeliveriesOutput) + + DescribeDeliveriesPages(*cloudwatchlogs.DescribeDeliveriesInput, func(*cloudwatchlogs.DescribeDeliveriesOutput, bool) bool) error + DescribeDeliveriesPagesWithContext(aws.Context, *cloudwatchlogs.DescribeDeliveriesInput, func(*cloudwatchlogs.DescribeDeliveriesOutput, bool) bool, ...request.Option) error + + DescribeDeliveryDestinations(*cloudwatchlogs.DescribeDeliveryDestinationsInput) (*cloudwatchlogs.DescribeDeliveryDestinationsOutput, error) + DescribeDeliveryDestinationsWithContext(aws.Context, *cloudwatchlogs.DescribeDeliveryDestinationsInput, ...request.Option) (*cloudwatchlogs.DescribeDeliveryDestinationsOutput, error) + DescribeDeliveryDestinationsRequest(*cloudwatchlogs.DescribeDeliveryDestinationsInput) (*request.Request, *cloudwatchlogs.DescribeDeliveryDestinationsOutput) + + DescribeDeliveryDestinationsPages(*cloudwatchlogs.DescribeDeliveryDestinationsInput, func(*cloudwatchlogs.DescribeDeliveryDestinationsOutput, bool) bool) error + DescribeDeliveryDestinationsPagesWithContext(aws.Context, *cloudwatchlogs.DescribeDeliveryDestinationsInput, func(*cloudwatchlogs.DescribeDeliveryDestinationsOutput, bool) bool, ...request.Option) error + + DescribeDeliverySources(*cloudwatchlogs.DescribeDeliverySourcesInput) (*cloudwatchlogs.DescribeDeliverySourcesOutput, error) + DescribeDeliverySourcesWithContext(aws.Context, *cloudwatchlogs.DescribeDeliverySourcesInput, ...request.Option) (*cloudwatchlogs.DescribeDeliverySourcesOutput, error) + DescribeDeliverySourcesRequest(*cloudwatchlogs.DescribeDeliverySourcesInput) (*request.Request, *cloudwatchlogs.DescribeDeliverySourcesOutput) + + DescribeDeliverySourcesPages(*cloudwatchlogs.DescribeDeliverySourcesInput, func(*cloudwatchlogs.DescribeDeliverySourcesOutput, bool) bool) error + DescribeDeliverySourcesPagesWithContext(aws.Context, *cloudwatchlogs.DescribeDeliverySourcesInput, func(*cloudwatchlogs.DescribeDeliverySourcesOutput, bool) bool, ...request.Option) error + DescribeDestinations(*cloudwatchlogs.DescribeDestinationsInput) (*cloudwatchlogs.DescribeDestinationsOutput, error) DescribeDestinationsWithContext(aws.Context, *cloudwatchlogs.DescribeDestinationsInput, ...request.Option) (*cloudwatchlogs.DescribeDestinationsOutput, error) DescribeDestinationsRequest(*cloudwatchlogs.DescribeDestinationsInput) (*request.Request, *cloudwatchlogs.DescribeDestinationsOutput) @@ -190,6 +239,26 @@ GetDataProtectionPolicyWithContext(aws.Context, *cloudwatchlogs.GetDataProtectionPolicyInput, ...request.Option) (*cloudwatchlogs.GetDataProtectionPolicyOutput, error) GetDataProtectionPolicyRequest(*cloudwatchlogs.GetDataProtectionPolicyInput) (*request.Request, *cloudwatchlogs.GetDataProtectionPolicyOutput) + GetDelivery(*cloudwatchlogs.GetDeliveryInput) (*cloudwatchlogs.GetDeliveryOutput, error) + GetDeliveryWithContext(aws.Context, *cloudwatchlogs.GetDeliveryInput, ...request.Option) (*cloudwatchlogs.GetDeliveryOutput, error) + GetDeliveryRequest(*cloudwatchlogs.GetDeliveryInput) (*request.Request, *cloudwatchlogs.GetDeliveryOutput) + + GetDeliveryDestination(*cloudwatchlogs.GetDeliveryDestinationInput) (*cloudwatchlogs.GetDeliveryDestinationOutput, error) + GetDeliveryDestinationWithContext(aws.Context, *cloudwatchlogs.GetDeliveryDestinationInput, ...request.Option) (*cloudwatchlogs.GetDeliveryDestinationOutput, error) + GetDeliveryDestinationRequest(*cloudwatchlogs.GetDeliveryDestinationInput) (*request.Request, *cloudwatchlogs.GetDeliveryDestinationOutput) + + GetDeliveryDestinationPolicy(*cloudwatchlogs.GetDeliveryDestinationPolicyInput) (*cloudwatchlogs.GetDeliveryDestinationPolicyOutput, error) + GetDeliveryDestinationPolicyWithContext(aws.Context, *cloudwatchlogs.GetDeliveryDestinationPolicyInput, ...request.Option) (*cloudwatchlogs.GetDeliveryDestinationPolicyOutput, error) + GetDeliveryDestinationPolicyRequest(*cloudwatchlogs.GetDeliveryDestinationPolicyInput) (*request.Request, *cloudwatchlogs.GetDeliveryDestinationPolicyOutput) + + GetDeliverySource(*cloudwatchlogs.GetDeliverySourceInput) (*cloudwatchlogs.GetDeliverySourceOutput, error) + GetDeliverySourceWithContext(aws.Context, *cloudwatchlogs.GetDeliverySourceInput, ...request.Option) (*cloudwatchlogs.GetDeliverySourceOutput, error) + GetDeliverySourceRequest(*cloudwatchlogs.GetDeliverySourceInput) (*request.Request, *cloudwatchlogs.GetDeliverySourceOutput) + + GetLogAnomalyDetector(*cloudwatchlogs.GetLogAnomalyDetectorInput) (*cloudwatchlogs.GetLogAnomalyDetectorOutput, error) + GetLogAnomalyDetectorWithContext(aws.Context, *cloudwatchlogs.GetLogAnomalyDetectorInput, ...request.Option) (*cloudwatchlogs.GetLogAnomalyDetectorOutput, error) + GetLogAnomalyDetectorRequest(*cloudwatchlogs.GetLogAnomalyDetectorInput) (*request.Request, *cloudwatchlogs.GetLogAnomalyDetectorOutput) + GetLogEvents(*cloudwatchlogs.GetLogEventsInput) (*cloudwatchlogs.GetLogEventsOutput, error) GetLogEventsWithContext(aws.Context, *cloudwatchlogs.GetLogEventsInput, ...request.Option) (*cloudwatchlogs.GetLogEventsOutput, error) GetLogEventsRequest(*cloudwatchlogs.GetLogEventsInput) (*request.Request, *cloudwatchlogs.GetLogEventsOutput) @@ -209,6 +278,20 @@ GetQueryResultsWithContext(aws.Context, *cloudwatchlogs.GetQueryResultsInput, ...request.Option) (*cloudwatchlogs.GetQueryResultsOutput, error) GetQueryResultsRequest(*cloudwatchlogs.GetQueryResultsInput) (*request.Request, *cloudwatchlogs.GetQueryResultsOutput) + ListAnomalies(*cloudwatchlogs.ListAnomaliesInput) (*cloudwatchlogs.ListAnomaliesOutput, error) + ListAnomaliesWithContext(aws.Context, *cloudwatchlogs.ListAnomaliesInput, ...request.Option) (*cloudwatchlogs.ListAnomaliesOutput, error) + ListAnomaliesRequest(*cloudwatchlogs.ListAnomaliesInput) (*request.Request, *cloudwatchlogs.ListAnomaliesOutput) + + ListAnomaliesPages(*cloudwatchlogs.ListAnomaliesInput, func(*cloudwatchlogs.ListAnomaliesOutput, bool) bool) error + ListAnomaliesPagesWithContext(aws.Context, *cloudwatchlogs.ListAnomaliesInput, func(*cloudwatchlogs.ListAnomaliesOutput, bool) bool, ...request.Option) error + + ListLogAnomalyDetectors(*cloudwatchlogs.ListLogAnomalyDetectorsInput) (*cloudwatchlogs.ListLogAnomalyDetectorsOutput, error) + ListLogAnomalyDetectorsWithContext(aws.Context, *cloudwatchlogs.ListLogAnomalyDetectorsInput, ...request.Option) (*cloudwatchlogs.ListLogAnomalyDetectorsOutput, error) + ListLogAnomalyDetectorsRequest(*cloudwatchlogs.ListLogAnomalyDetectorsInput) (*request.Request, *cloudwatchlogs.ListLogAnomalyDetectorsOutput) + + ListLogAnomalyDetectorsPages(*cloudwatchlogs.ListLogAnomalyDetectorsInput, func(*cloudwatchlogs.ListLogAnomalyDetectorsOutput, bool) bool) error + ListLogAnomalyDetectorsPagesWithContext(aws.Context, *cloudwatchlogs.ListLogAnomalyDetectorsInput, func(*cloudwatchlogs.ListLogAnomalyDetectorsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*cloudwatchlogs.ListTagsForResourceInput) (*cloudwatchlogs.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *cloudwatchlogs.ListTagsForResourceInput, ...request.Option) (*cloudwatchlogs.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*cloudwatchlogs.ListTagsForResourceInput) (*request.Request, *cloudwatchlogs.ListTagsForResourceOutput) @@ -225,6 +308,18 @@ PutDataProtectionPolicyWithContext(aws.Context, *cloudwatchlogs.PutDataProtectionPolicyInput, ...request.Option) (*cloudwatchlogs.PutDataProtectionPolicyOutput, error) PutDataProtectionPolicyRequest(*cloudwatchlogs.PutDataProtectionPolicyInput) (*request.Request, *cloudwatchlogs.PutDataProtectionPolicyOutput) + PutDeliveryDestination(*cloudwatchlogs.PutDeliveryDestinationInput) (*cloudwatchlogs.PutDeliveryDestinationOutput, error) + PutDeliveryDestinationWithContext(aws.Context, *cloudwatchlogs.PutDeliveryDestinationInput, ...request.Option) (*cloudwatchlogs.PutDeliveryDestinationOutput, error) + PutDeliveryDestinationRequest(*cloudwatchlogs.PutDeliveryDestinationInput) (*request.Request, *cloudwatchlogs.PutDeliveryDestinationOutput) + + PutDeliveryDestinationPolicy(*cloudwatchlogs.PutDeliveryDestinationPolicyInput) (*cloudwatchlogs.PutDeliveryDestinationPolicyOutput, error) + PutDeliveryDestinationPolicyWithContext(aws.Context, *cloudwatchlogs.PutDeliveryDestinationPolicyInput, ...request.Option) (*cloudwatchlogs.PutDeliveryDestinationPolicyOutput, error) + PutDeliveryDestinationPolicyRequest(*cloudwatchlogs.PutDeliveryDestinationPolicyInput) (*request.Request, *cloudwatchlogs.PutDeliveryDestinationPolicyOutput) + + PutDeliverySource(*cloudwatchlogs.PutDeliverySourceInput) (*cloudwatchlogs.PutDeliverySourceOutput, error) + PutDeliverySourceWithContext(aws.Context, *cloudwatchlogs.PutDeliverySourceInput, ...request.Option) (*cloudwatchlogs.PutDeliverySourceOutput, error) + PutDeliverySourceRequest(*cloudwatchlogs.PutDeliverySourceInput) (*request.Request, *cloudwatchlogs.PutDeliverySourceOutput) + PutDestination(*cloudwatchlogs.PutDestinationInput) (*cloudwatchlogs.PutDestinationOutput, error) PutDestinationWithContext(aws.Context, *cloudwatchlogs.PutDestinationInput, ...request.Option) (*cloudwatchlogs.PutDestinationOutput, error) PutDestinationRequest(*cloudwatchlogs.PutDestinationInput) (*request.Request, *cloudwatchlogs.PutDestinationOutput) @@ -284,6 +379,14 @@ UntagResource(*cloudwatchlogs.UntagResourceInput) (*cloudwatchlogs.UntagResourceOutput, error) UntagResourceWithContext(aws.Context, *cloudwatchlogs.UntagResourceInput, ...request.Option) (*cloudwatchlogs.UntagResourceOutput, error) UntagResourceRequest(*cloudwatchlogs.UntagResourceInput) (*request.Request, *cloudwatchlogs.UntagResourceOutput) + + UpdateAnomaly(*cloudwatchlogs.UpdateAnomalyInput) (*cloudwatchlogs.UpdateAnomalyOutput, error) + UpdateAnomalyWithContext(aws.Context, *cloudwatchlogs.UpdateAnomalyInput, ...request.Option) (*cloudwatchlogs.UpdateAnomalyOutput, error) + UpdateAnomalyRequest(*cloudwatchlogs.UpdateAnomalyInput) (*request.Request, *cloudwatchlogs.UpdateAnomalyOutput) + + UpdateLogAnomalyDetector(*cloudwatchlogs.UpdateLogAnomalyDetectorInput) (*cloudwatchlogs.UpdateLogAnomalyDetectorOutput, error) + UpdateLogAnomalyDetectorWithContext(aws.Context, *cloudwatchlogs.UpdateLogAnomalyDetectorInput, ...request.Option) (*cloudwatchlogs.UpdateLogAnomalyDetectorOutput, error) + UpdateLogAnomalyDetectorRequest(*cloudwatchlogs.UpdateLogAnomalyDetectorInput) (*request.Request, *cloudwatchlogs.UpdateLogAnomalyDetectorOutput) } var _ CloudWatchLogsAPI = (*cloudwatchlogs.CloudWatchLogs)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchlogs/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchlogs/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cloudwatchlogs/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cloudwatchlogs/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -8,6 +8,18 @@ const ( + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You don't have sufficient permissions to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // This operation attempted to create a resource that already exists. + ErrCodeConflictException = "ConflictException" + // ErrCodeDataAlreadyAcceptedException for service response error code // "DataAlreadyAcceptedException". // @@ -73,12 +85,24 @@ // The specified resource does not exist. ErrCodeResourceNotFoundException = "ResourceNotFoundException" + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // This request exceeds a service quota. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + // ErrCodeServiceUnavailableException for service response error code // "ServiceUnavailableException". // // The service cannot complete the request. ErrCodeServiceUnavailableException = "ServiceUnavailableException" + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was throttled because of quota limits. + ErrCodeThrottlingException = "ThrottlingException" + // ErrCodeTooManyTagsException for service response error code // "TooManyTagsException". // @@ -91,9 +115,17 @@ // The most likely cause is an Amazon Web Services access key ID or secret key // that's not valid. ErrCodeUnrecognizedClientException = "UnrecognizedClientException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // One of the parameters for the request is not valid. + ErrCodeValidationException = "ValidationException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, "DataAlreadyAcceptedException": newErrorDataAlreadyAcceptedException, "InvalidOperationException": newErrorInvalidOperationException, "InvalidParameterException": newErrorInvalidParameterException, @@ -103,7 +135,10 @@ "OperationAbortedException": newErrorOperationAbortedException, "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, "ServiceUnavailableException": newErrorServiceUnavailableException, + "ThrottlingException": newErrorThrottlingException, "TooManyTagsException": newErrorTooManyTagsException, "UnrecognizedClientException": newErrorUnrecognizedClientException, + "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codebuild/api.go golang-github-aws-aws-sdk-go-1.48.14/service/codebuild/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codebuild/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codebuild/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4170,8 +4170,7 @@ // variables, source code, and other sensitive information may have been // output to the build logs and artifacts. You must be careful about what // information is output to the build logs. Some best practice are: Do not -// store sensitive values, especially Amazon Web Services access key IDs -// and secret access keys, in environment variables. We recommend that you +// store sensitive values in environment variables. We recommend that you // use an Amazon EC2 Systems Manager Parameter Store or Secrets Manager to // store sensitive values. Follow Best practices for using webhooks (https://docs.aws.amazon.com/codebuild/latest/userguide/webhooks.html#webhook-best-practices) // in the CodeBuild User Guide to limit which entities can trigger a build, @@ -5116,7 +5115,7 @@ // * If CodePipeline started the build, the pipeline's name (for example, // codepipeline/my-demo-pipeline). // - // * If an IAM user started the build, the user's name (for example, MyUserName). + // * If a user started the build, the user's name (for example, MyUserName). // // * If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin. Initiator *string `locationName:"initiator" type:"string"` @@ -5622,7 +5621,7 @@ // * If CodePipeline started the build, the pipeline's name (for example, // codepipeline/my-demo-pipeline). // - // * If an IAM user started the build, the user's name. + // * If a user started the build, the user's name. // // * If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin. Initiator *string `locationName:"initiator" type:"string"` @@ -8450,15 +8449,21 @@ // The type of environment variable. Valid values include: // // * PARAMETER_STORE: An environment variable stored in Systems Manager Parameter - // Store. To learn how to specify a parameter store environment variable, - // see env/parameter-store (https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.parameter-store) + // Store. For environment variables of this type, specify the name of the + // parameter as the value of the EnvironmentVariable. The parameter value + // will be substituted for the name at runtime. You can also define Parameter + // Store environment variables in the buildspec. To learn how to do so, see + // env/parameter-store (https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.parameter-store) // in the CodeBuild User Guide. // // * PLAINTEXT: An environment variable in plain text format. This is the // default value. // // * SECRETS_MANAGER: An environment variable stored in Secrets Manager. - // To learn how to specify a secrets manager environment variable, see env/secrets-manager + // For environment variables of this type, specify the name of the secret + // as the value of the EnvironmentVariable. The secret value will be substituted + // for the name at runtime. You can also define Secrets Manager environment + // variables in the buildspec. To learn how to do so, see env/secrets-manager // (https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.secrets-manager) // in the CodeBuild User Guide. Type *string `locationName:"type" type:"string" enum:"EnvironmentVariableType"` @@ -8466,10 +8471,10 @@ // The value of the environment variable. // // We strongly discourage the use of PLAINTEXT environment variables to store - // sensitive values, especially Amazon Web Services secret key IDs and secret - // access keys. PLAINTEXT environment variables can be displayed in plain text - // using the CodeBuild console and the CLI. For sensitive values, we recommend - // you use an environment variable of type PARAMETER_STORE or SECRETS_MANAGER. + // sensitive values, especially Amazon Web Services secret key IDs. PLAINTEXT + // environment variables can be displayed in plain text using the CodeBuild + // console and the CLI. For sensitive values, we recommend you use an environment + // variable of type PARAMETER_STORE or SECRETS_MANAGER. // // Value is a required field Value *string `locationName:"value" type:"string" required:"true"` @@ -10600,11 +10605,16 @@ // Information about CloudWatch Logs for a build project. CloudWatchLogs *CloudWatchLogsConfig `locationName:"cloudWatchLogs" type:"structure"` - // The ARN of CloudWatch Logs for a build project. Its format is arn:${Partition}:logs:${Region}:${Account}:log-group:${LogGroupName}:log-stream:${LogStreamName}. - // For more information, see Resources Defined by CloudWatch Logs (https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazoncloudwatchlogs.html#amazoncloudwatchlogs-resources-for-iam-policies). + // The ARN of the CloudWatch Logs stream for a build execution. Its format is + // arn:${Partition}:logs:${Region}:${Account}:log-group:${LogGroupName}:log-stream:${LogStreamName}. + // The CloudWatch Logs stream is created during the PROVISIONING phase of a + // build and the ARN will not be valid until it is created. For more information, + // see Resources Defined by CloudWatch Logs (https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazoncloudwatchlogs.html#amazoncloudwatchlogs-resources-for-iam-policies). CloudWatchLogsArn *string `locationName:"cloudWatchLogsArn" type:"string"` - // The URL to an individual build log in CloudWatch Logs. + // The URL to an individual build log in CloudWatch Logs. The log stream is + // created during the PROVISIONING phase of a build and the deeplink will not + // be valid until it is created. DeepLink *string `locationName:"deepLink" type:"string"` // The name of the CloudWatch Logs group for the build logs. @@ -11701,6 +11711,32 @@ // of SSD storage for builds. This compute type supports Docker images up // to 100 GB uncompressed. // + // * BUILD_LAMBDA_1GB: Use up to 1 GB memory for builds. Only available for + // environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER. + // + // * BUILD_LAMBDA_2GB: Use up to 2 GB memory for builds. Only available for + // environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER. + // + // * BUILD_LAMBDA_4GB: Use up to 4 GB memory for builds. Only available for + // environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER. + // + // * BUILD_LAMBDA_8GB: Use up to 8 GB memory for builds. Only available for + // environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER. + // + // * BUILD_LAMBDA_10GB: Use up to 10 GB memory for builds. Only available + // for environment type LINUX_LAMBDA_CONTAINER and ARM_LAMBDA_CONTAINER. + // + // If you use BUILD_GENERAL1_SMALL: + // + // * For environment type LINUX_CONTAINER, you can use up to 3 GB memory + // and 2 vCPUs for builds. + // + // * For environment type LINUX_GPU_CONTAINER, you can use up to 16 GB memory, + // 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds. + // + // * For environment type ARM_CONTAINER, you can use up to 4 GB memory and + // 2 vCPUs on ARM-based processors for builds. + // // If you use BUILD_GENERAL1_LARGE: // // * For environment type LINUX_CONTAINER, you can use up to 15 GB memory @@ -11800,6 +11836,12 @@ // Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney) , China // (Beijing), and China (Ningxia). // + // * The environment types ARM_LAMBDA_CONTAINER and LINUX_LAMBDA_CONTAINER + // are available only in regions US East (N. Virginia), US East (Ohio), US + // West (Oregon), Asia Pacific (Mumbai), Asia Pacific (Singapore), Asia Pacific + // (Sydney), Asia Pacific (Tokyo), EU (Frankfurt), EU (Ireland), and South + // America (São Paulo). + // // * The environment types WINDOWS_CONTAINER and WINDOWS_SERVER_2019_CONTAINER // are available only in regions US East (N. Virginia), US East (Ohio), US // West (Oregon), and EU (Ireland). @@ -16490,6 +16532,21 @@ // ComputeTypeBuildGeneral12xlarge is a ComputeType enum value ComputeTypeBuildGeneral12xlarge = "BUILD_GENERAL1_2XLARGE" + + // ComputeTypeBuildLambda1gb is a ComputeType enum value + ComputeTypeBuildLambda1gb = "BUILD_LAMBDA_1GB" + + // ComputeTypeBuildLambda2gb is a ComputeType enum value + ComputeTypeBuildLambda2gb = "BUILD_LAMBDA_2GB" + + // ComputeTypeBuildLambda4gb is a ComputeType enum value + ComputeTypeBuildLambda4gb = "BUILD_LAMBDA_4GB" + + // ComputeTypeBuildLambda8gb is a ComputeType enum value + ComputeTypeBuildLambda8gb = "BUILD_LAMBDA_8GB" + + // ComputeTypeBuildLambda10gb is a ComputeType enum value + ComputeTypeBuildLambda10gb = "BUILD_LAMBDA_10GB" ) // ComputeType_Values returns all elements of the ComputeType enum @@ -16499,6 +16556,11 @@ ComputeTypeBuildGeneral1Medium, ComputeTypeBuildGeneral1Large, ComputeTypeBuildGeneral12xlarge, + ComputeTypeBuildLambda1gb, + ComputeTypeBuildLambda2gb, + ComputeTypeBuildLambda4gb, + ComputeTypeBuildLambda8gb, + ComputeTypeBuildLambda10gb, } } @@ -16529,6 +16591,12 @@ // EnvironmentTypeWindowsServer2019Container is a EnvironmentType enum value EnvironmentTypeWindowsServer2019Container = "WINDOWS_SERVER_2019_CONTAINER" + + // EnvironmentTypeLinuxLambdaContainer is a EnvironmentType enum value + EnvironmentTypeLinuxLambdaContainer = "LINUX_LAMBDA_CONTAINER" + + // EnvironmentTypeArmLambdaContainer is a EnvironmentType enum value + EnvironmentTypeArmLambdaContainer = "ARM_LAMBDA_CONTAINER" ) // EnvironmentType_Values returns all elements of the EnvironmentType enum @@ -16539,6 +16607,8 @@ EnvironmentTypeLinuxGpuContainer, EnvironmentTypeArmContainer, EnvironmentTypeWindowsServer2019Container, + EnvironmentTypeLinuxLambdaContainer, + EnvironmentTypeArmLambdaContainer, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codedeploy/api.go golang-github-aws-aws-sdk-go-1.48.14/service/codedeploy/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codedeploy/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codedeploy/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -168,7 +168,7 @@ // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -269,7 +269,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. @@ -357,7 +357,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -369,8 +369,8 @@ // The maximum number of names or IDs allowed for this request (100) was exceeded. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/BatchGetDeploymentGroups func (c *CodeDeploy) BatchGetDeploymentGroups(input *BatchGetDeploymentGroupsInput) (*BatchGetDeploymentGroupsOutput, error) { @@ -462,8 +462,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - InstanceIdRequiredException // The instance ID was not specified. @@ -583,8 +582,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -865,8 +863,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentAlreadyCompletedException // The deployment is already complete. @@ -969,7 +966,7 @@ // The application name was specified in an invalid format. // // - ApplicationAlreadyExistsException -// An application with the specified name with the IAM user or Amazon Web Services +// An application with the specified name with the user or Amazon Web Services // account already exists. // // - ApplicationLimitExceededException @@ -1065,7 +1062,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -1074,15 +1071,14 @@ // The deployment group name was specified in an invalid format. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - RevisionRequiredException // The revision ID was not specified. // // - RevisionDoesNotExistException -// The named revision does not exist with the IAM user or Amazon Web Services -// account. +// The named revision does not exist with the user or Amazon Web Services account. // // - InvalidRevisionException // The revision was specified in an invalid format. @@ -1091,8 +1087,8 @@ // The deployment configuration name was specified in an invalid format. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - DescriptionTooLongException // The description is too long. @@ -1251,7 +1247,7 @@ // The deployment configuration name was not specified. // // - DeploymentConfigAlreadyExistsException -// A deployment configuration with the specified name with the IAM user or Amazon +// A deployment configuration with the specified name with the user or Amazon // Web Services account already exists. // // - InvalidMinimumHealthyHostValueException @@ -1351,7 +1347,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -1360,8 +1356,8 @@ // The deployment group name was specified in an invalid format. // // - DeploymentGroupAlreadyExistsException -// A deployment group with the specified name with the IAM user or Amazon Web -// Services account already exists. +// A deployment group with the specified name with the user or Amazon Web Services +// account already exists. // // - InvalidEC2TagException // The tag was specified in an invalid format. @@ -1376,8 +1372,8 @@ // The deployment configuration name was specified in an invalid format. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - RoleRequiredException // The role ID was not specified. @@ -1898,7 +1894,13 @@ // DeleteResourcesByExternalId API operation for AWS CodeDeploy. // -// Deletes resources linked to an external ID. +// Deletes resources linked to an external ID. This action only applies if you +// have configured blue/green deployments through CloudFormation. +// +// It is not necessary to call this action directly. CloudFormation calls it +// on your behalf when it needs to delete stack resources. This action is offered +// publicly in case you need to delete resources to comply with General Data +// Protection Regulation (GDPR) requirements. // // 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 @@ -2072,7 +2074,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetApplication func (c *CodeDeploy) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { @@ -2151,7 +2153,7 @@ // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -2160,8 +2162,7 @@ // The application name was specified in an invalid format. // // - RevisionDoesNotExistException -// The named revision does not exist with the IAM user or Amazon Web Services -// account. +// The named revision does not exist with the user or Amazon Web Services account. // // - RevisionRequiredException // The revision ID was not specified. @@ -2257,8 +2258,7 @@ // At least one of the deployment IDs was specified in an invalid format. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetDeployment func (c *CodeDeploy) GetDeployment(input *GetDeploymentInput) (*GetDeploymentOutput, error) { @@ -2343,8 +2343,8 @@ // The deployment configuration name was not specified. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - InvalidComputePlatformException // The computePlatform is invalid. The computePlatform should be Lambda, Server, @@ -2433,7 +2433,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -2442,12 +2442,12 @@ // The deployment group name was specified in an invalid format. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetDeploymentGroup func (c *CodeDeploy) GetDeploymentGroup(input *GetDeploymentGroupInput) (*GetDeploymentGroupOutput, error) { @@ -2534,8 +2534,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - InstanceIdRequiredException // The instance ID was not specified. @@ -2640,8 +2639,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -2826,7 +2824,7 @@ // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -2978,8 +2976,7 @@ // ListApplications API operation for AWS CodeDeploy. // -// Lists the applications registered with the IAM user or Amazon Web Services -// account. +// Lists the applications registered with the user or Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3114,7 +3111,7 @@ // ListDeploymentConfigs API operation for AWS CodeDeploy. // -// Lists the deployment configurations with the IAM user or Amazon Web Services +// Lists the deployment configurations with the user or Amazon Web Services // account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3250,8 +3247,8 @@ // ListDeploymentGroups API operation for AWS CodeDeploy. // -// Lists the deployment groups for an application registered with the IAM user -// or Amazon Web Services account. +// Lists the deployment groups for an application registered with the Amazon +// Web Services user or Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3269,7 +3266,7 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - InvalidNextTokenException // The next token was specified in an invalid format. @@ -3405,8 +3402,8 @@ // with all compute types. ListDeploymentInstances throws an exception if it // is used with a compute platform other than EC2/On-premises or Lambda. // -// Lists the instance for a deployment associated with the IAM user or Amazon -// Web Services account. +// Lists the instance for a deployment associated with the user or Amazon Web +// Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3421,8 +3418,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -3591,8 +3587,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -3687,7 +3682,7 @@ // ListDeployments API operation for AWS CodeDeploy. // // Lists the deployments in a deployment group for an application registered -// with the IAM user or Amazon Web Services account. +// with the user or Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3705,14 +3700,14 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -4144,8 +4139,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. @@ -4231,7 +4225,7 @@ // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -4333,20 +4327,20 @@ // // - IamArnRequiredException // No IAM ARN was included in the request. You must use an IAM session ARN or -// IAM user ARN in the request. +// user ARN in the request. // // - IamSessionArnAlreadyRegisteredException // The request included an IAM session ARN that has already been used to register // a different instance. // // - IamUserArnAlreadyRegisteredException -// The specified IAM user ARN is already registered with an on-premises instance. +// The specified user ARN is already registered with an on-premises instance. // // - InstanceNameRequiredException // An on-premises instance name was not specified. // // - IamUserArnRequiredException -// An IAM user ARN was not specified. +// An user ARN was not specified. // // - InvalidInstanceNameException // The on-premises instance name was specified in an invalid format. @@ -4355,11 +4349,11 @@ // The IAM session ARN was specified in an invalid format. // // - InvalidIamUserArnException -// The IAM user ARN was specified in an invalid format. +// The user ARN was specified in an invalid format. // // - MultipleIamArnsProvidedException -// Both an IAM user ARN and an IAM session ARN were included in the request. -// Use only one ARN type. +// Both an user ARN and an IAM session ARN were included in the request. Use +// only one ARN type. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/RegisterOnPremisesInstance func (c *CodeDeploy) RegisterOnPremisesInstance(input *RegisterOnPremisesInstanceInput) (*RegisterOnPremisesInstanceOutput, error) { @@ -4547,8 +4541,7 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentAlreadyCompletedException // The deployment is already complete. @@ -4646,12 +4639,11 @@ // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentAlreadyCompletedException // The deployment is already complete. @@ -4744,15 +4736,15 @@ // The ARN of a resource is required, but was not found. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - TagRequiredException // A tag was not specified. @@ -4850,15 +4842,15 @@ // The ARN of a resource is required, but was not found. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - TagRequiredException // A tag was not specified. @@ -4957,11 +4949,11 @@ // The application name was specified in an invalid format. // // - ApplicationAlreadyExistsException -// An application with the specified name with the IAM user or Amazon Web Services +// An application with the specified name with the user or Amazon Web Services // account already exists. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/UpdateApplication func (c *CodeDeploy) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { @@ -5046,21 +5038,21 @@ // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // - DeploymentGroupAlreadyExistsException -// A deployment group with the specified name with the IAM user or Amazon Web -// Services account already exists. +// A deployment group with the specified name with the user or Amazon Web Services +// account already exists. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - InvalidEC2TagException // The tag was specified in an invalid format. @@ -5075,8 +5067,8 @@ // The deployment configuration name was specified in an invalid format. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - InvalidRoleException // The service role ARN was specified in an invalid format. Or, if an Auto Scaling @@ -5477,7 +5469,7 @@ return s } -// An application with the specified name with the IAM user or Amazon Web Services +// An application with the specified name with the user or Amazon Web Services // account already exists. type ApplicationAlreadyExistsException struct { _ struct{} `type:"structure"` @@ -5542,7 +5534,7 @@ return s.RespMetadata.RequestID } -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. type ApplicationDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -6162,7 +6154,7 @@ type BatchGetDeploymentGroupsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the applicable IAM + // The name of an CodeDeploy application associated with the applicable user // or Amazon Web Services account. // // ApplicationName is a required field @@ -7023,7 +7015,7 @@ _ struct{} `type:"structure"` // The name of the application. This name must be unique with the applicable - // IAM or Amazon Web Services account. + // user or Amazon Web Services account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` @@ -7256,7 +7248,7 @@ // is created. AlarmConfiguration *AlarmConfiguration `locationName:"alarmConfiguration" type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -7543,7 +7535,7 @@ type CreateDeploymentInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -7553,7 +7545,7 @@ // deployment is created. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` - // The name of a deployment configuration associated with the IAM user or Amazon + // The name of a deployment configuration associated with the user or Amazon // Web Services account. // // If not specified, the value configured in the deployment group is used as @@ -7775,7 +7767,7 @@ type DeleteApplicationInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -7848,7 +7840,7 @@ type DeleteDeploymentConfigInput struct { _ struct{} `type:"structure"` - // The name of a deployment configuration associated with the IAM user or Amazon + // The name of a deployment configuration associated with the user or Amazon // Web Services account. // // DeploymentConfigName is a required field @@ -7921,7 +7913,7 @@ type DeleteDeploymentGroupInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -8204,7 +8196,7 @@ return s.RespMetadata.RequestID } -// A deployment configuration with the specified name with the IAM user or Amazon +// A deployment configuration with the specified name with the user or Amazon // Web Services account already exists. type DeploymentConfigAlreadyExistsException struct { _ struct{} `type:"structure"` @@ -8269,8 +8261,8 @@ return s.RespMetadata.RequestID } -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. type DeploymentConfigDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8604,8 +8596,7 @@ return s.RespMetadata.RequestID } -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. type DeploymentDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8669,8 +8660,8 @@ return s.RespMetadata.RequestID } -// A deployment group with the specified name with the IAM user or Amazon Web -// Services account already exists. +// A deployment group with the specified name with the user or Amazon Web Services +// account already exists. type DeploymentGroupAlreadyExistsException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8734,8 +8725,8 @@ return s.RespMetadata.RequestID } -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. type DeploymentGroupDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -10832,17 +10823,18 @@ return s } -// Information about a load balancer in Elastic Load Balancing to use in a deployment. -// Instances are registered directly with a load balancer, and traffic is routed -// to the load balancer. +// Information about a Classic Load Balancer in Elastic Load Balancing to use +// in a deployment. Instances are registered directly with a load balancer, +// and traffic is routed to the load balancer. type ELBInfo struct { _ struct{} `type:"structure"` - // For blue/green deployments, the name of the load balancer that is used to - // route traffic from original instances to replacement instances in a blue/green - // deployment. For in-place deployments, the name of the load balancer that - // instances are deregistered from so they are not serving traffic during a - // deployment, and then re-registered with after the deployment is complete. + // For blue/green deployments, the name of the Classic Load Balancer that is + // used to route traffic from original instances to replacement instances in + // a blue/green deployment. For in-place deployments, the name of the Classic + // Load Balancer that instances are deregistered from so they are not serving + // traffic during a deployment, and then re-registered with after the deployment + // is complete. Name *string `locationName:"name" type:"string"` } @@ -11022,7 +11014,7 @@ type GetApplicationInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -11219,7 +11211,7 @@ type GetDeploymentConfigInput struct { _ struct{} `type:"structure"` - // The name of a deployment configuration associated with the IAM user or Amazon + // The name of a deployment configuration associated with the user or Amazon // Web Services account. // // DeploymentConfigName is a required field @@ -11302,7 +11294,7 @@ type GetDeploymentGroupInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -11402,8 +11394,8 @@ type GetDeploymentInput struct { _ struct{} `type:"structure"` - // The unique ID of a deployment associated with the IAM user or Amazon Web - // Services account. + // The unique ID of a deployment associated with the user or Amazon Web Services + // account. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` @@ -11937,7 +11929,7 @@ } // No IAM ARN was included in the request. You must use an IAM session ARN or -// IAM user ARN in the request. +// user ARN in the request. type IamArnRequiredException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12066,7 +12058,7 @@ return s.RespMetadata.RequestID } -// The specified IAM user ARN is already registered with an on-premises instance. +// The specified user ARN is already registered with an on-premises instance. type IamUserArnAlreadyRegisteredException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12130,7 +12122,7 @@ return s.RespMetadata.RequestID } -// An IAM user ARN was not specified. +// An user ARN was not specified. type IamUserArnRequiredException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12337,7 +12329,7 @@ // The ARN of the IAM session associated with the on-premises instance. IamSessionArn *string `locationName:"iamSessionArn" type:"string"` - // The IAM user ARN associated with the on-premises instance. + // The user ARN associated with the on-premises instance. IamUserArn *string `locationName:"iamUserArn" type:"string"` // The ARN of the on-premises instance. @@ -14476,7 +14468,7 @@ return s.RespMetadata.RequestID } -// The IAM user ARN was specified in an invalid format. +// The user ARN was specified in an invalid format. type InvalidIamUserArnException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -16785,7 +16777,7 @@ type ListApplicationRevisionsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -17114,7 +17106,7 @@ type ListDeploymentGroupsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -17457,7 +17449,7 @@ type ListDeploymentsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // If applicationName is specified, then deploymentGroupName must be specified. @@ -17892,21 +17884,32 @@ // Information about the Elastic Load Balancing load balancer or target group // used in a deployment. +// +// You can use load balancers and target groups in combination. For example, +// if you have two Classic Load Balancers, and five target groups tied to an +// Application Load Balancer, you can specify the two Classic Load Balancers +// in elbInfoList, and the five target groups in targetGroupInfoList. type LoadBalancerInfo struct { _ struct{} `type:"structure"` - // An array that contains information about the load balancer to use for load - // balancing in a deployment. In Elastic Load Balancing, load balancers are - // used with Classic Load Balancers. + // An array that contains information about the load balancers to use for load + // balancing in a deployment. If you're using Classic Load Balancers, specify + // those load balancers in this array. + // + // You can add up to 10 load balancers to the array. // - // Adding more than one load balancer to the array is not supported. + // If you're using Application Load Balancers or Network Load Balancers, use + // the targetGroupInfoList array instead of this one. ElbInfoList []*ELBInfo `locationName:"elbInfoList" type:"list"` - // An array that contains information about the target group to use for load - // balancing in a deployment. In Elastic Load Balancing, target groups are used - // with Application Load Balancers. + // An array that contains information about the target groups to use for load + // balancing in a deployment. If you're using Application Load Balancers and + // Network Load Balancers, specify their associated target groups in this array. + // + // You can add up to 10 target groups to the array. // - // Adding more than one target group to the array is not supported. + // If you're using Classic Load Balancers, use the elbInfoList array instead + // of this one. TargetGroupInfoList []*TargetGroupInfo `locationName:"targetGroupInfoList" type:"list"` // The target group pair information. This is an array of TargeGroupPairInfo @@ -18016,8 +18019,8 @@ return s } -// Both an IAM user ARN and an IAM session ARN were included in the request. -// Use only one ARN type. +// Both an user ARN and an IAM session ARN were included in the request. Use +// only one ARN type. type MultipleIamArnsProvidedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -18315,7 +18318,7 @@ type RegisterApplicationRevisionInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -18415,7 +18418,7 @@ // The ARN of the IAM session to associate with the on-premises instance. IamSessionArn *string `locationName:"iamSessionArn" type:"string"` - // The ARN of the IAM user to associate with the on-premises instance. + // The ARN of the user to associate with the on-premises instance. IamUserArn *string `locationName:"iamUserArn" type:"string"` // The name of the on-premises instance to register. @@ -18748,8 +18751,7 @@ return s.RespMetadata.RequestID } -// The named revision does not exist with the IAM user or Amazon Web Services -// account. +// The named revision does not exist with the user or Amazon Web Services account. type RevisionDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -19132,6 +19134,10 @@ // * tgz: A compressed tar archive file. // // * zip: A zip archive file. + // + // * YAML: A YAML-formatted file. + // + // * JSON: A JSON-formatted file. BundleType *string `locationName:"bundleType" type:"string" enum:"BundleType"` // The ETag of the Amazon S3 object that represents the bundled artifacts for @@ -20553,7 +20559,7 @@ // * To remove Auto Scaling groups, specify a non-null empty list of Auto // Scaling group names to detach all CodeDeploy-managed Auto Scaling lifecycle // hooks. For examples, see Amazon EC2 instances in an Amazon EC2 Auto Scaling - // group fail to launch and receive the error "Heartbeat Timeout" (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat) + // group fail to launch and receive the error "Heartbeat Timeout" (https://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat) // in the CodeDeploy User Guide. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codedeploy/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/codedeploy/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codedeploy/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codedeploy/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -17,14 +17,14 @@ // ErrCodeApplicationAlreadyExistsException for service response error code // "ApplicationAlreadyExistsException". // - // An application with the specified name with the IAM user or Amazon Web Services + // An application with the specified name with the user or Amazon Web Services // account already exists. ErrCodeApplicationAlreadyExistsException = "ApplicationAlreadyExistsException" // ErrCodeApplicationDoesNotExistException for service response error code // "ApplicationDoesNotExistException". // - // The application does not exist with the IAM user or Amazon Web Services account. + // The application does not exist with the user or Amazon Web Services account. ErrCodeApplicationDoesNotExistException = "ApplicationDoesNotExistException" // ErrCodeApplicationLimitExceededException for service response error code @@ -67,15 +67,15 @@ // ErrCodeDeploymentConfigAlreadyExistsException for service response error code // "DeploymentConfigAlreadyExistsException". // - // A deployment configuration with the specified name with the IAM user or Amazon + // A deployment configuration with the specified name with the user or Amazon // Web Services account already exists. ErrCodeDeploymentConfigAlreadyExistsException = "DeploymentConfigAlreadyExistsException" // ErrCodeDeploymentConfigDoesNotExistException for service response error code // "DeploymentConfigDoesNotExistException". // - // The deployment configuration does not exist with the IAM user or Amazon Web - // Services account. + // The deployment configuration does not exist with the user or Amazon Web Services + // account. ErrCodeDeploymentConfigDoesNotExistException = "DeploymentConfigDoesNotExistException" // ErrCodeDeploymentConfigInUseException for service response error code @@ -99,22 +99,21 @@ // ErrCodeDeploymentDoesNotExistException for service response error code // "DeploymentDoesNotExistException". // - // The deployment with the IAM user or Amazon Web Services account does not - // exist. + // The deployment with the user or Amazon Web Services account does not exist. ErrCodeDeploymentDoesNotExistException = "DeploymentDoesNotExistException" // ErrCodeDeploymentGroupAlreadyExistsException for service response error code // "DeploymentGroupAlreadyExistsException". // - // A deployment group with the specified name with the IAM user or Amazon Web - // Services account already exists. + // A deployment group with the specified name with the user or Amazon Web Services + // account already exists. ErrCodeDeploymentGroupAlreadyExistsException = "DeploymentGroupAlreadyExistsException" // ErrCodeDeploymentGroupDoesNotExistException for service response error code // "DeploymentGroupDoesNotExistException". // - // The named deployment group with the IAM user or Amazon Web Services account - // does not exist. + // The named deployment group with the user or Amazon Web Services account does + // not exist. ErrCodeDeploymentGroupDoesNotExistException = "DeploymentGroupDoesNotExistException" // ErrCodeDeploymentGroupLimitExceededException for service response error code @@ -203,7 +202,7 @@ // "IamArnRequiredException". // // No IAM ARN was included in the request. You must use an IAM session ARN or - // IAM user ARN in the request. + // user ARN in the request. ErrCodeIamArnRequiredException = "IamArnRequiredException" // ErrCodeIamSessionArnAlreadyRegisteredException for service response error code @@ -216,13 +215,13 @@ // ErrCodeIamUserArnAlreadyRegisteredException for service response error code // "IamUserArnAlreadyRegisteredException". // - // The specified IAM user ARN is already registered with an on-premises instance. + // The specified user ARN is already registered with an on-premises instance. ErrCodeIamUserArnAlreadyRegisteredException = "IamUserArnAlreadyRegisteredException" // ErrCodeIamUserArnRequiredException for service response error code // "IamUserArnRequiredException". // - // An IAM user ARN was not specified. + // An user ARN was not specified. ErrCodeIamUserArnRequiredException = "IamUserArnRequiredException" // ErrCodeInstanceDoesNotExistException for service response error code @@ -437,7 +436,7 @@ // ErrCodeInvalidIamUserArnException for service response error code // "InvalidIamUserArnException". // - // The IAM user ARN was specified in an invalid format. + // The user ARN was specified in an invalid format. ErrCodeInvalidIamUserArnException = "InvalidIamUserArnException" // ErrCodeInvalidIgnoreApplicationStopFailuresValueException for service response error code @@ -643,8 +642,8 @@ // ErrCodeMultipleIamArnsProvidedException for service response error code // "MultipleIamArnsProvidedException". // - // Both an IAM user ARN and an IAM session ARN were included in the request. - // Use only one ARN type. + // Both an user ARN and an IAM session ARN were included in the request. Use + // only one ARN type. ErrCodeMultipleIamArnsProvidedException = "MultipleIamArnsProvidedException" // ErrCodeOperationNotSupportedException for service response error code @@ -668,8 +667,7 @@ // ErrCodeRevisionDoesNotExistException for service response error code // "RevisionDoesNotExistException". // - // The named revision does not exist with the IAM user or Amazon Web Services - // account. + // The named revision does not exist with the user or Amazon Web Services account. ErrCodeRevisionDoesNotExistException = "RevisionDoesNotExistException" // ErrCodeRevisionRequiredException for service response error code diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codepipeline/api.go golang-github-aws-aws-sdk-go-1.48.14/service/codepipeline/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codepipeline/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codepipeline/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3246,10 +3246,14 @@ // RetryStageExecution API operation for AWS CodePipeline. // -// Resumes the pipeline execution by retrying the last failed actions in a stage. -// You can retry a stage immediately if any of the actions in the stage fail. -// When you retry, all actions that are still in progress continue working, -// and failed actions are triggered again. +// You can retry a stage that has failed without having to run a pipeline again +// from the beginning. You do this by either retrying the failed actions in +// a stage or by retrying all actions in the stage starting from the first action +// in the stage. When you retry the failed actions in a stage, all actions that +// are still in progress continue working, and failed actions are triggered +// again. When you retry a failed stage from the first action in the stage, +// the stage cannot have any actions in progress. Before a stage can be retried, +// it must either have all actions failed or some actions failed and some succeeded. // // 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 @@ -9014,6 +9018,203 @@ return s } +// A type of trigger configuration for Git-based source actions. +// +// You can specify the Git configuration trigger type for all third-party Git-based +// source actions that are supported by the CodeStarSourceConnection action +// type. +// +// V2 type pipelines, along with triggers on Git tags and pipeline-level variables, +// are not currently supported for CloudFormation and CDK resources in CodePipeline. +// For more information about V2 type pipelines, see Pipeline types (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types.html) +// in the CodePipeline User Guide. +type GitConfiguration struct { + _ struct{} `type:"structure"` + + // The field where the repository event that will start the pipeline, such as + // pushing Git tags, is specified with details. + // + // Git tags is the only supported event type. + Push []*GitPushFilter `locationName:"push" min:"1" type:"list"` + + // The name of the pipeline source action where the trigger configuration, such + // as Git tags, is specified. The trigger configuration will start the pipeline + // upon the specified change only. + // + // You can only specify one trigger configuration per source action. + // + // SourceActionName is a required field + SourceActionName *string `locationName:"sourceActionName" 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 GitConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GitConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GitConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GitConfiguration"} + if s.Push != nil && len(s.Push) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Push", 1)) + } + if s.SourceActionName == nil { + invalidParams.Add(request.NewErrParamRequired("SourceActionName")) + } + if s.SourceActionName != nil && len(*s.SourceActionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceActionName", 1)) + } + if s.Push != nil { + for i, v := range s.Push { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Push", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPush sets the Push field's value. +func (s *GitConfiguration) SetPush(v []*GitPushFilter) *GitConfiguration { + s.Push = v + return s +} + +// SetSourceActionName sets the SourceActionName field's value. +func (s *GitConfiguration) SetSourceActionName(v string) *GitConfiguration { + s.SourceActionName = &v + return s +} + +// The event criteria that specify when a specified repository event will start +// the pipeline for the specified trigger configuration, such as the lists of +// Git tags to include and exclude. +type GitPushFilter struct { + _ struct{} `type:"structure"` + + // The field that contains the details for the Git tags trigger configuration. + Tags *GitTagFilterCriteria `locationName:"tags" 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 GitPushFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GitPushFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GitPushFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GitPushFilter"} + if s.Tags != nil { + if err := s.Tags.Validate(); err != nil { + invalidParams.AddNested("Tags", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTags sets the Tags field's value. +func (s *GitPushFilter) SetTags(v *GitTagFilterCriteria) *GitPushFilter { + s.Tags = v + return s +} + +// The Git tags specified as filter criteria for whether a Git tag repository +// event will start the pipeline. +type GitTagFilterCriteria struct { + _ struct{} `type:"structure"` + + // The list of patterns of Git tags that, when pushed, are to be excluded from + // starting the pipeline. + Excludes []*string `locationName:"excludes" min:"1" type:"list"` + + // The list of patterns of Git tags that, when pushed, are to be included as + // criteria that starts the pipeline. + Includes []*string `locationName:"includes" 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 GitTagFilterCriteria) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GitTagFilterCriteria) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GitTagFilterCriteria) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GitTagFilterCriteria"} + if s.Excludes != nil && len(s.Excludes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Excludes", 1)) + } + if s.Includes != nil && len(s.Includes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Includes", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExcludes sets the Excludes field's value. +func (s *GitTagFilterCriteria) SetExcludes(v []*string) *GitTagFilterCriteria { + s.Excludes = v + return s +} + +// SetIncludes sets the Includes field's value. +func (s *GitTagFilterCriteria) SetIncludes(v []*string) *GitTagFilterCriteria { + s.Includes = v + return s +} + // Represents information about an artifact to be worked on, such as a test // or build artifact. type InputArtifact struct { @@ -11497,6 +11698,31 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` + // CodePipeline provides the following pipeline types, which differ in characteristics + // and price, so that you can tailor your pipeline features and cost to the + // needs of your applications. + // + // * V1 type pipelines have a JSON structure that contains standard pipeline, + // stage, and action-level parameters. + // + // * V2 type pipelines have the same structure as a V1 type, along with additional + // parameters for release safety and trigger configuration. + // + // Including V2 parameters, such as triggers on Git tags, in the pipeline JSON + // when creating or updating a pipeline will result in the pipeline having the + // V2 type of pipeline and the associated costs. + // + // For information about pricing for CodePipeline, see Pricing (https://aws.amazon.com/codepipeline/pricing/). + // + // For information about which type of pipeline to choose, see What type of + // pipeline is right for me? (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html). + // + // V2 type pipelines, along with triggers on Git tags and pipeline-level variables, + // are not currently supported for CloudFormation and CDK resources in CodePipeline. + // For more information about V2 type pipelines, see Pipeline types (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types.html) + // in the CodePipeline User Guide. + PipelineType *string `locationName:"pipelineType" type:"string" enum:"PipelineType"` + // The Amazon Resource Name (ARN) for CodePipeline to use to either perform // actions with no actionRoleArn, or to use to assume roles for actions with // an actionRoleArn. @@ -11509,6 +11735,18 @@ // Stages is a required field Stages []*StageDeclaration `locationName:"stages" type:"list" required:"true"` + // The trigger configuration specifying a type of event, such as Git tags, that + // starts the pipeline. + // + // When a trigger configuration is specified, default change detection for repository + // and branch commits is disabled. + Triggers []*PipelineTriggerDeclaration `locationName:"triggers" type:"list"` + + // A list that defines the pipeline variables for a pipeline resource. Variable + // names can have alphanumeric and underscore characters, and the values must + // match [A-Za-z0-9@\-_]+. + Variables []*PipelineVariableDeclaration `locationName:"variables" type:"list"` + // The version number of the pipeline. A new pipeline always has a version number // of 1. This number is incremented when a pipeline is updated. Version *int64 `locationName:"version" min:"1" type:"integer"` @@ -11575,6 +11813,26 @@ } } } + if s.Triggers != nil { + for i, v := range s.Triggers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Triggers", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Variables != nil { + for i, v := range s.Variables { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Variables", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -11600,6 +11858,12 @@ return s } +// SetPipelineType sets the PipelineType field's value. +func (s *PipelineDeclaration) SetPipelineType(v string) *PipelineDeclaration { + s.PipelineType = &v + return s +} + // SetRoleArn sets the RoleArn field's value. func (s *PipelineDeclaration) SetRoleArn(v string) *PipelineDeclaration { s.RoleArn = &v @@ -11612,6 +11876,18 @@ return s } +// SetTriggers sets the Triggers field's value. +func (s *PipelineDeclaration) SetTriggers(v []*PipelineTriggerDeclaration) *PipelineDeclaration { + s.Triggers = v + return s +} + +// SetVariables sets the Variables field's value. +func (s *PipelineDeclaration) SetVariables(v []*PipelineVariableDeclaration) *PipelineDeclaration { + s.Variables = v + return s +} + // SetVersion sets the Version field's value. func (s *PipelineDeclaration) SetVersion(v int64) *PipelineDeclaration { s.Version = &v @@ -11661,6 +11937,12 @@ // A summary that contains a description of the pipeline execution status. StatusSummary *string `locationName:"statusSummary" type:"string"` + + // The interaction or event that started a pipeline execution. + Trigger *ExecutionTrigger `locationName:"trigger" type:"structure"` + + // A list of pipeline variables used for the pipeline execution. + Variables []*ResolvedPipelineVariable `locationName:"variables" type:"list"` } // String returns the string representation. @@ -11717,6 +11999,18 @@ return s } +// SetTrigger sets the Trigger field's value. +func (s *PipelineExecution) SetTrigger(v *ExecutionTrigger) *PipelineExecution { + s.Trigger = v + return s +} + +// SetVariables sets the Variables field's value. +func (s *PipelineExecution) SetVariables(v []*ResolvedPipelineVariable) *PipelineExecution { + s.Variables = v + return s +} + // The pipeline execution was specified in an invalid format or cannot be found, // or an execution ID does not belong to the specified pipeline. type PipelineExecutionNotFoundException struct { @@ -12157,6 +12451,31 @@ // The name of the pipeline. Name *string `locationName:"name" min:"1" type:"string"` + // CodePipeline provides the following pipeline types, which differ in characteristics + // and price, so that you can tailor your pipeline features and cost to the + // needs of your applications. + // + // * V1 type pipelines have a JSON structure that contains standard pipeline, + // stage, and action-level parameters. + // + // * V2 type pipelines have the same structure as a V1 type, along with additional + // parameters for release safety and trigger configuration. + // + // Including V2 parameters, such as triggers on Git tags, in the pipeline JSON + // when creating or updating a pipeline will result in the pipeline having the + // V2 type of pipeline and the associated costs. + // + // For information about pricing for CodePipeline, see Pricing (https://aws.amazon.com/codepipeline/pricing/). + // + // For information about which type of pipeline to choose, see What type of + // pipeline is right for me? (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html). + // + // V2 type pipelines, along with triggers on Git tags and pipeline-level variables, + // are not currently supported for CloudFormation and CDK resources in CodePipeline. + // For more information about V2 type pipelines, see Pipeline types (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types.html) + // in the CodePipeline User Guide. + PipelineType *string `locationName:"pipelineType" type:"string" enum:"PipelineType"` + // The date and time of the last update to the pipeline, in timestamp format. Updated *time.Time `locationName:"updated" type:"timestamp"` @@ -12194,6 +12513,12 @@ return s } +// SetPipelineType sets the PipelineType field's value. +func (s *PipelineSummary) SetPipelineType(v string) *PipelineSummary { + s.PipelineType = &v + return s +} + // SetUpdated sets the Updated field's value. func (s *PipelineSummary) SetUpdated(v time.Time) *PipelineSummary { s.Updated = &v @@ -12206,6 +12531,235 @@ return s } +// Represents information about the specified trigger configuration, such as +// the filter criteria and the source stage for the action that contains the +// trigger. +// +// This is only supported for the CodeStarSourceConnection action type. +// +// When a trigger configuration is specified, default change detection for repository +// and branch commits is disabled. +// +// V2 type pipelines, along with triggers on Git tags and pipeline-level variables, +// are not currently supported for CloudFormation and CDK resources in CodePipeline. +// For more information about V2 type pipelines, see Pipeline types (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types.html) +// in the CodePipeline User Guide. +type PipelineTriggerDeclaration struct { + _ struct{} `type:"structure"` + + // Provides the filter criteria and the source stage for the repository event + // that starts the pipeline, such as Git tags. + // + // GitConfiguration is a required field + GitConfiguration *GitConfiguration `locationName:"gitConfiguration" type:"structure" required:"true"` + + // The source provider for the event, such as connections configured for a repository + // with Git tags, for the specified trigger configuration. + // + // ProviderType is a required field + ProviderType *string `locationName:"providerType" type:"string" required:"true" enum:"PipelineTriggerProviderType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PipelineTriggerDeclaration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PipelineTriggerDeclaration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PipelineTriggerDeclaration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PipelineTriggerDeclaration"} + if s.GitConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("GitConfiguration")) + } + if s.ProviderType == nil { + invalidParams.Add(request.NewErrParamRequired("ProviderType")) + } + if s.GitConfiguration != nil { + if err := s.GitConfiguration.Validate(); err != nil { + invalidParams.AddNested("GitConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGitConfiguration sets the GitConfiguration field's value. +func (s *PipelineTriggerDeclaration) SetGitConfiguration(v *GitConfiguration) *PipelineTriggerDeclaration { + s.GitConfiguration = v + return s +} + +// SetProviderType sets the ProviderType field's value. +func (s *PipelineTriggerDeclaration) SetProviderType(v string) *PipelineTriggerDeclaration { + s.ProviderType = &v + return s +} + +// A pipeline-level variable used for a pipeline execution. +// +// V2 type pipelines, along with triggers on Git tags and pipeline-level variables, +// are not currently supported for CloudFormation and CDK resources in CodePipeline. +// For more information about V2 type pipelines, see Pipeline types (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types.html) +// in the CodePipeline User Guide. +type PipelineVariable struct { + _ struct{} `type:"structure"` + + // The name of a pipeline-level variable. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The value of a pipeline-level variable. + // + // Value is a required field + Value *string `locationName:"value" 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 PipelineVariable) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PipelineVariable) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PipelineVariable) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PipelineVariable"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *PipelineVariable) SetName(v string) *PipelineVariable { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *PipelineVariable) SetValue(v string) *PipelineVariable { + s.Value = &v + return s +} + +// A variable declared at the pipeline level. +// +// V2 type pipelines, along with triggers on Git tags and pipeline-level variables, +// are not currently supported for CloudFormation and CDK resources in CodePipeline. +// For more information about V2 type pipelines, see Pipeline types (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types.html) +// in the CodePipeline User Guide. +type PipelineVariableDeclaration struct { + _ struct{} `type:"structure"` + + // The value of a pipeline-level variable. + DefaultValue *string `locationName:"defaultValue" min:"1" type:"string"` + + // The description of a pipeline-level variable. It's used to add additional + // context about the variable, and not being used at time when pipeline executes. + Description *string `locationName:"description" type:"string"` + + // The name of a pipeline-level variable. + // + // Name is a required field + Name *string `locationName:"name" 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 PipelineVariableDeclaration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PipelineVariableDeclaration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PipelineVariableDeclaration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PipelineVariableDeclaration"} + if s.DefaultValue != nil && len(*s.DefaultValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DefaultValue", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *PipelineVariableDeclaration) SetDefaultValue(v string) *PipelineVariableDeclaration { + s.DefaultValue = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *PipelineVariableDeclaration) SetDescription(v string) *PipelineVariableDeclaration { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *PipelineVariableDeclaration) SetName(v string) *PipelineVariableDeclaration { + s.Name = &v + return s +} + // The pipeline version was specified in an invalid format or cannot be found. type PipelineVersionNotFoundException struct { _ struct{} `type:"structure"` @@ -13469,6 +14023,47 @@ return s.RespMetadata.RequestID } +// A pipeline-level variable used for a pipeline execution. +type ResolvedPipelineVariable struct { + _ struct{} `type:"structure"` + + // The name of a pipeline-level variable. + Name *string `locationName:"name" type:"string"` + + // The resolved value of a pipeline-level variable. + ResolvedValue *string `locationName:"resolvedValue" 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 ResolvedPipelineVariable) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResolvedPipelineVariable) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ResolvedPipelineVariable) SetName(v string) *ResolvedPipelineVariable { + s.Name = &v + return s +} + +// SetResolvedValue sets the ResolvedValue field's value. +func (s *ResolvedPipelineVariable) SetResolvedValue(v string) *ResolvedPipelineVariable { + s.ResolvedValue = &v + return s +} + // The resource was specified in an invalid format. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -13549,7 +14144,7 @@ // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` - // The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS. + // The scope of the retry attempt. // // RetryMode is a required field RetryMode *string `locationName:"retryMode" type:"string" required:"true" enum:"StageRetryMode"` @@ -13816,6 +14411,92 @@ return s } +// A list that allows you to specify, or override, the source revision for a +// pipeline execution that's being started. A source revision is the version +// with all the changes to your application code, or source artifact, for the +// pipeline execution. +type SourceRevisionOverride struct { + _ struct{} `type:"structure"` + + // The name of the action where the override will be applied. + // + // ActionName is a required field + ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"` + + // The type of source revision, based on the source provider. For example, the + // revision type for the CodeCommit action provider is the commit ID. + // + // RevisionType is a required field + RevisionType *string `locationName:"revisionType" type:"string" required:"true" enum:"SourceRevisionType"` + + // The source revision, or version of your source artifact, with the changes + // that you want to run in the pipeline execution. + // + // RevisionValue is a required field + RevisionValue *string `locationName:"revisionValue" 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 SourceRevisionOverride) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceRevisionOverride) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SourceRevisionOverride) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SourceRevisionOverride"} + if s.ActionName == nil { + invalidParams.Add(request.NewErrParamRequired("ActionName")) + } + if s.ActionName != nil && len(*s.ActionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionName", 1)) + } + if s.RevisionType == nil { + invalidParams.Add(request.NewErrParamRequired("RevisionType")) + } + if s.RevisionValue == nil { + invalidParams.Add(request.NewErrParamRequired("RevisionValue")) + } + if s.RevisionValue != nil && len(*s.RevisionValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RevisionValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionName sets the ActionName field's value. +func (s *SourceRevisionOverride) SetActionName(v string) *SourceRevisionOverride { + s.ActionName = &v + return s +} + +// SetRevisionType sets the RevisionType field's value. +func (s *SourceRevisionOverride) SetRevisionType(v string) *SourceRevisionOverride { + s.RevisionType = &v + return s +} + +// SetRevisionValue sets the RevisionValue field's value. +func (s *SourceRevisionOverride) SetRevisionValue(v string) *SourceRevisionOverride { + s.RevisionValue = &v + return s +} + // Represents information about a stage to a job worker. type StageContext struct { _ struct{} `type:"structure"` @@ -14199,6 +14880,17 @@ // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list that allows you to specify, or override, the source revision for a + // pipeline execution that's being started. A source revision is the version + // with all the changes to your application code, or source artifact, for the + // pipeline execution. + SourceRevisions []*SourceRevisionOverride `locationName:"sourceRevisions" type:"list"` + + // A list that overrides pipeline variables for a pipeline execution that's + // being started. Variable names must match [A-Za-z0-9@\-_]+, and the values + // can be anything except an empty string. + Variables []*PipelineVariable `locationName:"variables" min:"1" type:"list"` } // String returns the string representation. @@ -14231,6 +14923,29 @@ if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } + if s.Variables != nil && len(s.Variables) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Variables", 1)) + } + if s.SourceRevisions != nil { + for i, v := range s.SourceRevisions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SourceRevisions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Variables != nil { + for i, v := range s.Variables { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Variables", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -14250,6 +14965,18 @@ return s } +// SetSourceRevisions sets the SourceRevisions field's value. +func (s *StartPipelineExecutionInput) SetSourceRevisions(v []*SourceRevisionOverride) *StartPipelineExecutionInput { + s.SourceRevisions = v + return s +} + +// SetVariables sets the Variables field's value. +func (s *StartPipelineExecutionInput) SetVariables(v []*PipelineVariable) *StartPipelineExecutionInput { + s.Variables = v + return s +} + // Represents the output of a StartPipelineExecution action. type StartPipelineExecutionOutput struct { _ struct{} `type:"structure"` @@ -15859,6 +16586,54 @@ } const ( + // PipelineTriggerProviderTypeCodeStarSourceConnection is a PipelineTriggerProviderType enum value + PipelineTriggerProviderTypeCodeStarSourceConnection = "CodeStarSourceConnection" +) + +// PipelineTriggerProviderType_Values returns all elements of the PipelineTriggerProviderType enum +func PipelineTriggerProviderType_Values() []string { + return []string{ + PipelineTriggerProviderTypeCodeStarSourceConnection, + } +} + +const ( + // PipelineTypeV1 is a PipelineType enum value + PipelineTypeV1 = "V1" + + // PipelineTypeV2 is a PipelineType enum value + PipelineTypeV2 = "V2" +) + +// PipelineType_Values returns all elements of the PipelineType enum +func PipelineType_Values() []string { + return []string{ + PipelineTypeV1, + PipelineTypeV2, + } +} + +const ( + // SourceRevisionTypeCommitId is a SourceRevisionType enum value + SourceRevisionTypeCommitId = "COMMIT_ID" + + // SourceRevisionTypeImageDigest is a SourceRevisionType enum value + SourceRevisionTypeImageDigest = "IMAGE_DIGEST" + + // SourceRevisionTypeS3ObjectVersionId is a SourceRevisionType enum value + SourceRevisionTypeS3ObjectVersionId = "S3_OBJECT_VERSION_ID" +) + +// SourceRevisionType_Values returns all elements of the SourceRevisionType enum +func SourceRevisionType_Values() []string { + return []string{ + SourceRevisionTypeCommitId, + SourceRevisionTypeImageDigest, + SourceRevisionTypeS3ObjectVersionId, + } +} + +const ( // StageExecutionStatusCancelled is a StageExecutionStatus enum value StageExecutionStatusCancelled = "Cancelled" @@ -15893,12 +16668,16 @@ const ( // StageRetryModeFailedActions is a StageRetryMode enum value StageRetryModeFailedActions = "FAILED_ACTIONS" + + // StageRetryModeAllActions is a StageRetryMode enum value + StageRetryModeAllActions = "ALL_ACTIONS" ) // StageRetryMode_Values returns all elements of the StageRetryMode enum func StageRetryMode_Values() []string { return []string{ StageRetryModeFailedActions, + StageRetryModeAllActions, } } @@ -15936,6 +16715,9 @@ // TriggerTypePutActionRevision is a TriggerType enum value TriggerTypePutActionRevision = "PutActionRevision" + + // TriggerTypeWebhookV2 is a TriggerType enum value + TriggerTypeWebhookV2 = "WebhookV2" ) // TriggerType_Values returns all elements of the TriggerType enum @@ -15947,6 +16729,7 @@ TriggerTypeWebhook, TriggerTypeCloudWatchEvent, TriggerTypePutActionRevision, + TriggerTypeWebhookV2, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codestarconnections/api.go golang-github-aws-aws-sdk-go-1.48.14/service/codestarconnections/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codestarconnections/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codestarconnections/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,6 +4,7 @@ import ( "fmt" + "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" @@ -184,6 +185,207 @@ return out, req.Send() } +const opCreateRepositoryLink = "CreateRepositoryLink" + +// CreateRepositoryLinkRequest generates a "aws/request.Request" representing the +// client's request for the CreateRepositoryLink 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 CreateRepositoryLink for more information on using the CreateRepositoryLink +// 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 CreateRepositoryLinkRequest method. +// req, resp := client.CreateRepositoryLinkRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/CreateRepositoryLink +func (c *CodeStarConnections) CreateRepositoryLinkRequest(input *CreateRepositoryLinkInput) (req *request.Request, output *CreateRepositoryLinkOutput) { + op := &request.Operation{ + Name: opCreateRepositoryLink, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateRepositoryLinkInput{} + } + + output = &CreateRepositoryLinkOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRepositoryLink API operation for AWS CodeStar connections. +// +// Creates a link to a specified external Git repository. A repository link +// allows Git sync to monitor and sync changes to files in a specified Git repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation CreateRepositoryLink for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - LimitExceededException +// Exceeded the maximum limit for connections. +// +// - ResourceAlreadyExistsException +// Unable to create resource. Resource already exists. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/CreateRepositoryLink +func (c *CodeStarConnections) CreateRepositoryLink(input *CreateRepositoryLinkInput) (*CreateRepositoryLinkOutput, error) { + req, out := c.CreateRepositoryLinkRequest(input) + return out, req.Send() +} + +// CreateRepositoryLinkWithContext is the same as CreateRepositoryLink with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRepositoryLink 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 *CodeStarConnections) CreateRepositoryLinkWithContext(ctx aws.Context, input *CreateRepositoryLinkInput, opts ...request.Option) (*CreateRepositoryLinkOutput, error) { + req, out := c.CreateRepositoryLinkRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSyncConfiguration = "CreateSyncConfiguration" + +// CreateSyncConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateSyncConfiguration 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 CreateSyncConfiguration for more information on using the CreateSyncConfiguration +// 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 CreateSyncConfigurationRequest method. +// req, resp := client.CreateSyncConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/CreateSyncConfiguration +func (c *CodeStarConnections) CreateSyncConfigurationRequest(input *CreateSyncConfigurationInput) (req *request.Request, output *CreateSyncConfigurationOutput) { + op := &request.Operation{ + Name: opCreateSyncConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateSyncConfigurationInput{} + } + + output = &CreateSyncConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSyncConfiguration API operation for AWS CodeStar connections. +// +// Creates a sync configuration which allows Amazon Web Services to sync content +// from a Git repository to update a specified Amazon Web Services resource. +// Parameters for the sync configuration are determined by the sync type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation CreateSyncConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - LimitExceededException +// Exceeded the maximum limit for connections. +// +// - ResourceAlreadyExistsException +// Unable to create resource. Resource already exists. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/CreateSyncConfiguration +func (c *CodeStarConnections) CreateSyncConfiguration(input *CreateSyncConfigurationInput) (*CreateSyncConfigurationOutput, error) { + req, out := c.CreateSyncConfigurationRequest(input) + return out, req.Send() +} + +// CreateSyncConfigurationWithContext is the same as CreateSyncConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSyncConfiguration 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 *CodeStarConnections) CreateSyncConfigurationWithContext(ctx aws.Context, input *CreateSyncConfigurationInput, opts ...request.Option) (*CreateSyncConfigurationOutput, error) { + req, out := c.CreateSyncConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteConnection = "DeleteConnection" // DeleteConnectionRequest generates a "aws/request.Request" representing the @@ -350,6 +552,207 @@ return out, req.Send() } +const opDeleteRepositoryLink = "DeleteRepositoryLink" + +// DeleteRepositoryLinkRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRepositoryLink 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 DeleteRepositoryLink for more information on using the DeleteRepositoryLink +// 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 DeleteRepositoryLinkRequest method. +// req, resp := client.DeleteRepositoryLinkRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/DeleteRepositoryLink +func (c *CodeStarConnections) DeleteRepositoryLinkRequest(input *DeleteRepositoryLinkInput) (req *request.Request, output *DeleteRepositoryLinkOutput) { + op := &request.Operation{ + Name: opDeleteRepositoryLink, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteRepositoryLinkInput{} + } + + output = &DeleteRepositoryLinkOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteRepositoryLink API operation for AWS CodeStar connections. +// +// Deletes the association between your connection and a specified external +// Git repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation DeleteRepositoryLink for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - SyncConfigurationStillExistsException +// Unable to continue. The sync blocker still exists. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - UnsupportedProviderTypeException +// The specified provider type is not supported for connections. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/DeleteRepositoryLink +func (c *CodeStarConnections) DeleteRepositoryLink(input *DeleteRepositoryLinkInput) (*DeleteRepositoryLinkOutput, error) { + req, out := c.DeleteRepositoryLinkRequest(input) + return out, req.Send() +} + +// DeleteRepositoryLinkWithContext is the same as DeleteRepositoryLink with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRepositoryLink 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 *CodeStarConnections) DeleteRepositoryLinkWithContext(ctx aws.Context, input *DeleteRepositoryLinkInput, opts ...request.Option) (*DeleteRepositoryLinkOutput, error) { + req, out := c.DeleteRepositoryLinkRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSyncConfiguration = "DeleteSyncConfiguration" + +// DeleteSyncConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSyncConfiguration 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 DeleteSyncConfiguration for more information on using the DeleteSyncConfiguration +// 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 DeleteSyncConfigurationRequest method. +// req, resp := client.DeleteSyncConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/DeleteSyncConfiguration +func (c *CodeStarConnections) DeleteSyncConfigurationRequest(input *DeleteSyncConfigurationInput) (req *request.Request, output *DeleteSyncConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteSyncConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteSyncConfigurationInput{} + } + + output = &DeleteSyncConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteSyncConfiguration API operation for AWS CodeStar connections. +// +// Deletes the sync configuration for a specified repository and connection. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation DeleteSyncConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - LimitExceededException +// Exceeded the maximum limit for connections. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/DeleteSyncConfiguration +func (c *CodeStarConnections) DeleteSyncConfiguration(input *DeleteSyncConfigurationInput) (*DeleteSyncConfigurationOutput, error) { + req, out := c.DeleteSyncConfigurationRequest(input) + return out, req.Send() +} + +// DeleteSyncConfigurationWithContext is the same as DeleteSyncConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSyncConfiguration 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 *CodeStarConnections) DeleteSyncConfigurationWithContext(ctx aws.Context, input *DeleteSyncConfigurationInput, opts ...request.Option) (*DeleteSyncConfigurationOutput, error) { + req, out := c.DeleteSyncConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetConnection = "GetConnection" // GetConnectionRequest generates a "aws/request.Request" representing the @@ -516,6 +919,471 @@ return out, req.Send() } +const opGetRepositoryLink = "GetRepositoryLink" + +// GetRepositoryLinkRequest generates a "aws/request.Request" representing the +// client's request for the GetRepositoryLink 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 GetRepositoryLink for more information on using the GetRepositoryLink +// 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 GetRepositoryLinkRequest method. +// req, resp := client.GetRepositoryLinkRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetRepositoryLink +func (c *CodeStarConnections) GetRepositoryLinkRequest(input *GetRepositoryLinkInput) (req *request.Request, output *GetRepositoryLinkOutput) { + op := &request.Operation{ + Name: opGetRepositoryLink, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetRepositoryLinkInput{} + } + + output = &GetRepositoryLinkOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRepositoryLink API operation for AWS CodeStar connections. +// +// Returns details about a repository link. A repository link allows Git sync +// to monitor and sync changes from files in a specified Git repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation GetRepositoryLink for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetRepositoryLink +func (c *CodeStarConnections) GetRepositoryLink(input *GetRepositoryLinkInput) (*GetRepositoryLinkOutput, error) { + req, out := c.GetRepositoryLinkRequest(input) + return out, req.Send() +} + +// GetRepositoryLinkWithContext is the same as GetRepositoryLink with the addition of +// the ability to pass a context and additional request options. +// +// See GetRepositoryLink 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 *CodeStarConnections) GetRepositoryLinkWithContext(ctx aws.Context, input *GetRepositoryLinkInput, opts ...request.Option) (*GetRepositoryLinkOutput, error) { + req, out := c.GetRepositoryLinkRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRepositorySyncStatus = "GetRepositorySyncStatus" + +// GetRepositorySyncStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetRepositorySyncStatus 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 GetRepositorySyncStatus for more information on using the GetRepositorySyncStatus +// 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 GetRepositorySyncStatusRequest method. +// req, resp := client.GetRepositorySyncStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetRepositorySyncStatus +func (c *CodeStarConnections) GetRepositorySyncStatusRequest(input *GetRepositorySyncStatusInput) (req *request.Request, output *GetRepositorySyncStatusOutput) { + op := &request.Operation{ + Name: opGetRepositorySyncStatus, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetRepositorySyncStatusInput{} + } + + output = &GetRepositorySyncStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRepositorySyncStatus API operation for AWS CodeStar connections. +// +// Returns details about the sync status for a repository. A repository sync +// uses Git sync to push and pull changes from your remote repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation GetRepositorySyncStatus for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetRepositorySyncStatus +func (c *CodeStarConnections) GetRepositorySyncStatus(input *GetRepositorySyncStatusInput) (*GetRepositorySyncStatusOutput, error) { + req, out := c.GetRepositorySyncStatusRequest(input) + return out, req.Send() +} + +// GetRepositorySyncStatusWithContext is the same as GetRepositorySyncStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetRepositorySyncStatus 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 *CodeStarConnections) GetRepositorySyncStatusWithContext(ctx aws.Context, input *GetRepositorySyncStatusInput, opts ...request.Option) (*GetRepositorySyncStatusOutput, error) { + req, out := c.GetRepositorySyncStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetResourceSyncStatus = "GetResourceSyncStatus" + +// GetResourceSyncStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetResourceSyncStatus 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 GetResourceSyncStatus for more information on using the GetResourceSyncStatus +// 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 GetResourceSyncStatusRequest method. +// req, resp := client.GetResourceSyncStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetResourceSyncStatus +func (c *CodeStarConnections) GetResourceSyncStatusRequest(input *GetResourceSyncStatusInput) (req *request.Request, output *GetResourceSyncStatusOutput) { + op := &request.Operation{ + Name: opGetResourceSyncStatus, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetResourceSyncStatusInput{} + } + + output = &GetResourceSyncStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetResourceSyncStatus API operation for AWS CodeStar connections. +// +// Returns the status of the sync with the Git repository for a specific Amazon +// Web Services resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation GetResourceSyncStatus for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetResourceSyncStatus +func (c *CodeStarConnections) GetResourceSyncStatus(input *GetResourceSyncStatusInput) (*GetResourceSyncStatusOutput, error) { + req, out := c.GetResourceSyncStatusRequest(input) + return out, req.Send() +} + +// GetResourceSyncStatusWithContext is the same as GetResourceSyncStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetResourceSyncStatus 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 *CodeStarConnections) GetResourceSyncStatusWithContext(ctx aws.Context, input *GetResourceSyncStatusInput, opts ...request.Option) (*GetResourceSyncStatusOutput, error) { + req, out := c.GetResourceSyncStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSyncBlockerSummary = "GetSyncBlockerSummary" + +// GetSyncBlockerSummaryRequest generates a "aws/request.Request" representing the +// client's request for the GetSyncBlockerSummary 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 GetSyncBlockerSummary for more information on using the GetSyncBlockerSummary +// 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 GetSyncBlockerSummaryRequest method. +// req, resp := client.GetSyncBlockerSummaryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetSyncBlockerSummary +func (c *CodeStarConnections) GetSyncBlockerSummaryRequest(input *GetSyncBlockerSummaryInput) (req *request.Request, output *GetSyncBlockerSummaryOutput) { + op := &request.Operation{ + Name: opGetSyncBlockerSummary, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetSyncBlockerSummaryInput{} + } + + output = &GetSyncBlockerSummaryOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSyncBlockerSummary API operation for AWS CodeStar connections. +// +// Returns a list of the most recent sync blockers. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation GetSyncBlockerSummary for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetSyncBlockerSummary +func (c *CodeStarConnections) GetSyncBlockerSummary(input *GetSyncBlockerSummaryInput) (*GetSyncBlockerSummaryOutput, error) { + req, out := c.GetSyncBlockerSummaryRequest(input) + return out, req.Send() +} + +// GetSyncBlockerSummaryWithContext is the same as GetSyncBlockerSummary with the addition of +// the ability to pass a context and additional request options. +// +// See GetSyncBlockerSummary 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 *CodeStarConnections) GetSyncBlockerSummaryWithContext(ctx aws.Context, input *GetSyncBlockerSummaryInput, opts ...request.Option) (*GetSyncBlockerSummaryOutput, error) { + req, out := c.GetSyncBlockerSummaryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSyncConfiguration = "GetSyncConfiguration" + +// GetSyncConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetSyncConfiguration 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 GetSyncConfiguration for more information on using the GetSyncConfiguration +// 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 GetSyncConfigurationRequest method. +// req, resp := client.GetSyncConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetSyncConfiguration +func (c *CodeStarConnections) GetSyncConfigurationRequest(input *GetSyncConfigurationInput) (req *request.Request, output *GetSyncConfigurationOutput) { + op := &request.Operation{ + Name: opGetSyncConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetSyncConfigurationInput{} + } + + output = &GetSyncConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSyncConfiguration API operation for AWS CodeStar connections. +// +// Returns details about a sync configuration, including the sync type and resource +// name. A sync configuration allows the configuration to sync (push and pull) +// changes from the remote repository for a specified branch in a Git repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation GetSyncConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/GetSyncConfiguration +func (c *CodeStarConnections) GetSyncConfiguration(input *GetSyncConfigurationInput) (*GetSyncConfigurationOutput, error) { + req, out := c.GetSyncConfigurationRequest(input) + return out, req.Send() +} + +// GetSyncConfigurationWithContext is the same as GetSyncConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetSyncConfiguration 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 *CodeStarConnections) GetSyncConfigurationWithContext(ctx aws.Context, input *GetSyncConfigurationInput, opts ...request.Option) (*GetSyncConfigurationOutput, error) { + req, out := c.GetSyncConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListConnections = "ListConnections" // ListConnectionsRequest generates a "aws/request.Request" representing the @@ -781,6 +1649,398 @@ return p.Err() } +const opListRepositoryLinks = "ListRepositoryLinks" + +// ListRepositoryLinksRequest generates a "aws/request.Request" representing the +// client's request for the ListRepositoryLinks 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 ListRepositoryLinks for more information on using the ListRepositoryLinks +// 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 ListRepositoryLinksRequest method. +// req, resp := client.ListRepositoryLinksRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/ListRepositoryLinks +func (c *CodeStarConnections) ListRepositoryLinksRequest(input *ListRepositoryLinksInput) (req *request.Request, output *ListRepositoryLinksOutput) { + op := &request.Operation{ + Name: opListRepositoryLinks, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRepositoryLinksInput{} + } + + output = &ListRepositoryLinksOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRepositoryLinks API operation for AWS CodeStar connections. +// +// Lists the repository links created for connections in your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation ListRepositoryLinks for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/ListRepositoryLinks +func (c *CodeStarConnections) ListRepositoryLinks(input *ListRepositoryLinksInput) (*ListRepositoryLinksOutput, error) { + req, out := c.ListRepositoryLinksRequest(input) + return out, req.Send() +} + +// ListRepositoryLinksWithContext is the same as ListRepositoryLinks with the addition of +// the ability to pass a context and additional request options. +// +// See ListRepositoryLinks 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 *CodeStarConnections) ListRepositoryLinksWithContext(ctx aws.Context, input *ListRepositoryLinksInput, opts ...request.Option) (*ListRepositoryLinksOutput, error) { + req, out := c.ListRepositoryLinksRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRepositoryLinksPages iterates over the pages of a ListRepositoryLinks operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRepositoryLinks 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 ListRepositoryLinks operation. +// pageNum := 0 +// err := client.ListRepositoryLinksPages(params, +// func(page *codestarconnections.ListRepositoryLinksOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CodeStarConnections) ListRepositoryLinksPages(input *ListRepositoryLinksInput, fn func(*ListRepositoryLinksOutput, bool) bool) error { + return c.ListRepositoryLinksPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRepositoryLinksPagesWithContext same as ListRepositoryLinksPages 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 *CodeStarConnections) ListRepositoryLinksPagesWithContext(ctx aws.Context, input *ListRepositoryLinksInput, fn func(*ListRepositoryLinksOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRepositoryLinksInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRepositoryLinksRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRepositoryLinksOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRepositorySyncDefinitions = "ListRepositorySyncDefinitions" + +// ListRepositorySyncDefinitionsRequest generates a "aws/request.Request" representing the +// client's request for the ListRepositorySyncDefinitions 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 ListRepositorySyncDefinitions for more information on using the ListRepositorySyncDefinitions +// 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 ListRepositorySyncDefinitionsRequest method. +// req, resp := client.ListRepositorySyncDefinitionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/ListRepositorySyncDefinitions +func (c *CodeStarConnections) ListRepositorySyncDefinitionsRequest(input *ListRepositorySyncDefinitionsInput) (req *request.Request, output *ListRepositorySyncDefinitionsOutput) { + op := &request.Operation{ + Name: opListRepositorySyncDefinitions, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListRepositorySyncDefinitionsInput{} + } + + output = &ListRepositorySyncDefinitionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRepositorySyncDefinitions API operation for AWS CodeStar connections. +// +// Lists the repository sync definitions for repository links in your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation ListRepositorySyncDefinitions for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/ListRepositorySyncDefinitions +func (c *CodeStarConnections) ListRepositorySyncDefinitions(input *ListRepositorySyncDefinitionsInput) (*ListRepositorySyncDefinitionsOutput, error) { + req, out := c.ListRepositorySyncDefinitionsRequest(input) + return out, req.Send() +} + +// ListRepositorySyncDefinitionsWithContext is the same as ListRepositorySyncDefinitions with the addition of +// the ability to pass a context and additional request options. +// +// See ListRepositorySyncDefinitions 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 *CodeStarConnections) ListRepositorySyncDefinitionsWithContext(ctx aws.Context, input *ListRepositorySyncDefinitionsInput, opts ...request.Option) (*ListRepositorySyncDefinitionsOutput, error) { + req, out := c.ListRepositorySyncDefinitionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListSyncConfigurations = "ListSyncConfigurations" + +// ListSyncConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListSyncConfigurations 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 ListSyncConfigurations for more information on using the ListSyncConfigurations +// 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 ListSyncConfigurationsRequest method. +// req, resp := client.ListSyncConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/ListSyncConfigurations +func (c *CodeStarConnections) ListSyncConfigurationsRequest(input *ListSyncConfigurationsInput) (req *request.Request, output *ListSyncConfigurationsOutput) { + op := &request.Operation{ + Name: opListSyncConfigurations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSyncConfigurationsInput{} + } + + output = &ListSyncConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSyncConfigurations API operation for AWS CodeStar connections. +// +// Returns a list of sync configurations for a specified repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation ListSyncConfigurations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/ListSyncConfigurations +func (c *CodeStarConnections) ListSyncConfigurations(input *ListSyncConfigurationsInput) (*ListSyncConfigurationsOutput, error) { + req, out := c.ListSyncConfigurationsRequest(input) + return out, req.Send() +} + +// ListSyncConfigurationsWithContext is the same as ListSyncConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListSyncConfigurations 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 *CodeStarConnections) ListSyncConfigurationsWithContext(ctx aws.Context, input *ListSyncConfigurationsInput, opts ...request.Option) (*ListSyncConfigurationsOutput, error) { + req, out := c.ListSyncConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSyncConfigurationsPages iterates over the pages of a ListSyncConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSyncConfigurations 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 ListSyncConfigurations operation. +// pageNum := 0 +// err := client.ListSyncConfigurationsPages(params, +// func(page *codestarconnections.ListSyncConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CodeStarConnections) ListSyncConfigurationsPages(input *ListSyncConfigurationsInput, fn func(*ListSyncConfigurationsOutput, bool) bool) error { + return c.ListSyncConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSyncConfigurationsPagesWithContext same as ListSyncConfigurationsPages 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 *CodeStarConnections) ListSyncConfigurationsPagesWithContext(ctx aws.Context, input *ListSyncConfigurationsInput, fn func(*ListSyncConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSyncConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSyncConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSyncConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -1111,6 +2371,497 @@ return out, req.Send() } +const opUpdateRepositoryLink = "UpdateRepositoryLink" + +// UpdateRepositoryLinkRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRepositoryLink 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 UpdateRepositoryLink for more information on using the UpdateRepositoryLink +// 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 UpdateRepositoryLinkRequest method. +// req, resp := client.UpdateRepositoryLinkRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/UpdateRepositoryLink +func (c *CodeStarConnections) UpdateRepositoryLinkRequest(input *UpdateRepositoryLinkInput) (req *request.Request, output *UpdateRepositoryLinkOutput) { + op := &request.Operation{ + Name: opUpdateRepositoryLink, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateRepositoryLinkInput{} + } + + output = &UpdateRepositoryLinkOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRepositoryLink API operation for AWS CodeStar connections. +// +// Updates the association between your connection and a specified external +// Git repository. A repository link allows Git sync to monitor and sync changes +// to files in a specified Git repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation UpdateRepositoryLink for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConditionalCheckFailedException +// The conditional check failed. Try again later. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - UpdateOutOfSyncException +// The update is out of sync. Try syncing again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/UpdateRepositoryLink +func (c *CodeStarConnections) UpdateRepositoryLink(input *UpdateRepositoryLinkInput) (*UpdateRepositoryLinkOutput, error) { + req, out := c.UpdateRepositoryLinkRequest(input) + return out, req.Send() +} + +// UpdateRepositoryLinkWithContext is the same as UpdateRepositoryLink with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRepositoryLink 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 *CodeStarConnections) UpdateRepositoryLinkWithContext(ctx aws.Context, input *UpdateRepositoryLinkInput, opts ...request.Option) (*UpdateRepositoryLinkOutput, error) { + req, out := c.UpdateRepositoryLinkRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSyncBlocker = "UpdateSyncBlocker" + +// UpdateSyncBlockerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSyncBlocker 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 UpdateSyncBlocker for more information on using the UpdateSyncBlocker +// 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 UpdateSyncBlockerRequest method. +// req, resp := client.UpdateSyncBlockerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/UpdateSyncBlocker +func (c *CodeStarConnections) UpdateSyncBlockerRequest(input *UpdateSyncBlockerInput) (req *request.Request, output *UpdateSyncBlockerOutput) { + op := &request.Operation{ + Name: opUpdateSyncBlocker, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSyncBlockerInput{} + } + + output = &UpdateSyncBlockerOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSyncBlocker API operation for AWS CodeStar connections. +// +// Allows you to update the status of a sync blocker, resolving the blocker +// and allowing syncing to continue. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation UpdateSyncBlocker for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - RetryLatestCommitFailedException +// Retrying the latest commit failed. Try again later. +// +// - SyncBlockerDoesNotExistException +// Unable to continue. The sync blocker does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/UpdateSyncBlocker +func (c *CodeStarConnections) UpdateSyncBlocker(input *UpdateSyncBlockerInput) (*UpdateSyncBlockerOutput, error) { + req, out := c.UpdateSyncBlockerRequest(input) + return out, req.Send() +} + +// UpdateSyncBlockerWithContext is the same as UpdateSyncBlocker with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSyncBlocker 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 *CodeStarConnections) UpdateSyncBlockerWithContext(ctx aws.Context, input *UpdateSyncBlockerInput, opts ...request.Option) (*UpdateSyncBlockerOutput, error) { + req, out := c.UpdateSyncBlockerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSyncConfiguration = "UpdateSyncConfiguration" + +// UpdateSyncConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSyncConfiguration 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 UpdateSyncConfiguration for more information on using the UpdateSyncConfiguration +// 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 UpdateSyncConfigurationRequest method. +// req, resp := client.UpdateSyncConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/UpdateSyncConfiguration +func (c *CodeStarConnections) UpdateSyncConfigurationRequest(input *UpdateSyncConfigurationInput) (req *request.Request, output *UpdateSyncConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateSyncConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSyncConfigurationInput{} + } + + output = &UpdateSyncConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSyncConfiguration API operation for AWS CodeStar connections. +// +// Updates the sync configuration for your connection and a specified external +// Git repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeStar connections's +// API operation UpdateSyncConfiguration for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ConcurrentModificationException +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +// +// - InternalServerException +// Received an internal server exception. Try again later. +// +// - InvalidInputException +// The input is not valid. Verify that the action is typed correctly. +// +// - ResourceNotFoundException +// Resource not found. Verify the connection resource ARN and try again. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - UpdateOutOfSyncException +// The update is out of sync. Try syncing again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/codestar-connections-2019-12-01/UpdateSyncConfiguration +func (c *CodeStarConnections) UpdateSyncConfiguration(input *UpdateSyncConfigurationInput) (*UpdateSyncConfigurationOutput, error) { + req, out := c.UpdateSyncConfigurationRequest(input) + return out, req.Send() +} + +// UpdateSyncConfigurationWithContext is the same as UpdateSyncConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSyncConfiguration 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 *CodeStarConnections) UpdateSyncConfigurationWithContext(ctx aws.Context, input *UpdateSyncConfigurationInput, opts ...request.Option) (*UpdateSyncConfigurationOutput, error) { + req, out := c.UpdateSyncConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Exception thrown as a result of concurrent modification to an application. +// For example, two individuals attempting to edit the same application at the +// same time. +type ConcurrentModificationException 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 ConcurrentModificationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConcurrentModificationException) GoString() string { + return s.String() +} + +func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error { + return &ConcurrentModificationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConcurrentModificationException) Code() string { + return "ConcurrentModificationException" +} + +// Message returns the exception's message. +func (s *ConcurrentModificationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConcurrentModificationException) OrigErr() error { + return nil +} + +func (s *ConcurrentModificationException) 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 *ConcurrentModificationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConcurrentModificationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The conditional check failed. Try again later. +type ConditionalCheckFailedException 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 ConditionalCheckFailedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConditionalCheckFailedException) GoString() string { + return s.String() +} + +func newErrorConditionalCheckFailedException(v protocol.ResponseMetadata) error { + return &ConditionalCheckFailedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConditionalCheckFailedException) Code() string { + return "ConditionalCheckFailedException" +} + +// Message returns the exception's message. +func (s *ConditionalCheckFailedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConditionalCheckFailedException) OrigErr() error { + return nil +} + +func (s *ConditionalCheckFailedException) 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 *ConditionalCheckFailedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConditionalCheckFailedException) RequestID() string { + return s.RespMetadata.RequestID +} + // Two conflicting operations have been made on the same resource. type ConflictException struct { _ struct{} `type:"structure"` @@ -1419,6 +3170,7 @@ // ProviderType is a required field ProviderType *string `type:"string" required:"true" enum:"ProviderType"` + // Tags for the host to be created. Tags []*Tag `type:"list"` // The VPC configuration to be provisioned for the host. A VPC must be configured @@ -1521,6 +3273,7 @@ // The Amazon Resource Name (ARN) of the host to be created. HostArn *string `type:"string"` + // Tags for the created host. Tags []*Tag `type:"list"` } @@ -1554,6 +3307,318 @@ return s } +type CreateRepositoryLinkInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the connection to be associated with the + // repository link. + // + // ConnectionArn is a required field + ConnectionArn *string `type:"string" required:"true"` + + // The Amazon Resource Name (ARN) encryption key for the repository to be associated + // with the repository link. + EncryptionKeyArn *string `min:"1" type:"string"` + + // The owner ID for the repository associated with a specific sync configuration, + // such as the owner ID in GitHub. + // + // OwnerId is a required field + OwnerId *string `min:"1" type:"string" required:"true"` + + // The name of the repository to be associated with the repository link. + // + // RepositoryName is a required field + RepositoryName *string `min:"1" type:"string" required:"true"` + + // The tags for the repository to be associated with the repository link. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRepositoryLinkInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRepositoryLinkInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRepositoryLinkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRepositoryLinkInput"} + if s.ConnectionArn == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectionArn")) + } + if s.EncryptionKeyArn != nil && len(*s.EncryptionKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EncryptionKeyArn", 1)) + } + if s.OwnerId == nil { + invalidParams.Add(request.NewErrParamRequired("OwnerId")) + } + if s.OwnerId != nil && len(*s.OwnerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OwnerId", 1)) + } + if s.RepositoryName == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryName")) + } + if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectionArn sets the ConnectionArn field's value. +func (s *CreateRepositoryLinkInput) SetConnectionArn(v string) *CreateRepositoryLinkInput { + s.ConnectionArn = &v + return s +} + +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *CreateRepositoryLinkInput) SetEncryptionKeyArn(v string) *CreateRepositoryLinkInput { + s.EncryptionKeyArn = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *CreateRepositoryLinkInput) SetOwnerId(v string) *CreateRepositoryLinkInput { + s.OwnerId = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *CreateRepositoryLinkInput) SetRepositoryName(v string) *CreateRepositoryLinkInput { + s.RepositoryName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRepositoryLinkInput) SetTags(v []*Tag) *CreateRepositoryLinkInput { + s.Tags = v + return s +} + +type CreateRepositoryLinkOutput struct { + _ struct{} `type:"structure"` + + // The returned information about the created repository link. + // + // RepositoryLinkInfo is a required field + RepositoryLinkInfo *RepositoryLinkInfo `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 CreateRepositoryLinkOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRepositoryLinkOutput) GoString() string { + return s.String() +} + +// SetRepositoryLinkInfo sets the RepositoryLinkInfo field's value. +func (s *CreateRepositoryLinkOutput) SetRepositoryLinkInfo(v *RepositoryLinkInfo) *CreateRepositoryLinkOutput { + s.RepositoryLinkInfo = v + return s +} + +type CreateSyncConfigurationInput struct { + _ struct{} `type:"structure"` + + // The branch in the repository from which changes will be synced. + // + // Branch is a required field + Branch *string `min:"1" type:"string" required:"true"` + + // The file name of the configuration file that manages syncing between the + // connection and the repository. This configuration file is stored in the repository. + // + // ConfigFile is a required field + ConfigFile *string `type:"string" required:"true"` + + // The ID of the repository link created for the connection. A repository link + // allows Git sync to monitor and sync changes to files in a specified Git repository. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` + + // The name of the Amazon Web Services resource (for example, a CloudFormation + // stack in the case of CFN_STACK_SYNC) that will be synchronized from the linked + // repository. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The ARN of the IAM role that grants permission for Amazon Web Services to + // use Git sync to update a given Amazon Web Services resource on your behalf. + // + // RoleArn is a required field + RoleArn *string `min:"1" type:"string" required:"true"` + + // The type of sync configuration. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSyncConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSyncConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSyncConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSyncConfigurationInput"} + if s.Branch == nil { + invalidParams.Add(request.NewErrParamRequired("Branch")) + } + if s.Branch != nil && len(*s.Branch) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Branch", 1)) + } + if s.ConfigFile == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigFile")) + } + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBranch sets the Branch field's value. +func (s *CreateSyncConfigurationInput) SetBranch(v string) *CreateSyncConfigurationInput { + s.Branch = &v + return s +} + +// SetConfigFile sets the ConfigFile field's value. +func (s *CreateSyncConfigurationInput) SetConfigFile(v string) *CreateSyncConfigurationInput { + s.ConfigFile = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *CreateSyncConfigurationInput) SetRepositoryLinkId(v string) *CreateSyncConfigurationInput { + s.RepositoryLinkId = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *CreateSyncConfigurationInput) SetResourceName(v string) *CreateSyncConfigurationInput { + s.ResourceName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateSyncConfigurationInput) SetRoleArn(v string) *CreateSyncConfigurationInput { + s.RoleArn = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *CreateSyncConfigurationInput) SetSyncType(v string) *CreateSyncConfigurationInput { + s.SyncType = &v + return s +} + +type CreateSyncConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The created sync configuration for the connection. A sync configuration allows + // Amazon Web Services to sync content from a Git repository to update a specified + // Amazon Web Services resource. + // + // SyncConfiguration is a required field + SyncConfiguration *SyncConfiguration `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 CreateSyncConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSyncConfigurationOutput) GoString() string { + return s.String() +} + +// SetSyncConfiguration sets the SyncConfiguration field's value. +func (s *CreateSyncConfigurationOutput) SetSyncConfiguration(v *SyncConfiguration) *CreateSyncConfigurationOutput { + s.SyncConfiguration = v + return s +} + type DeleteConnectionInput struct { _ struct{} `type:"structure"` @@ -1692,6 +3757,160 @@ return s.String() } +type DeleteRepositoryLinkInput struct { + _ struct{} `type:"structure"` + + // The ID of the repository link to be deleted. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRepositoryLinkInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRepositoryLinkInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRepositoryLinkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRepositoryLinkInput"} + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *DeleteRepositoryLinkInput) SetRepositoryLinkId(v string) *DeleteRepositoryLinkInput { + s.RepositoryLinkId = &v + return s +} + +type DeleteRepositoryLinkOutput 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 DeleteRepositoryLinkOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRepositoryLinkOutput) GoString() string { + return s.String() +} + +type DeleteSyncConfigurationInput struct { + _ struct{} `type:"structure"` + + // The name of the Amazon Web Services resource associated with the sync configuration + // to be deleted. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The type of sync configuration to be deleted. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSyncConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSyncConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSyncConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSyncConfigurationInput"} + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceName sets the ResourceName field's value. +func (s *DeleteSyncConfigurationInput) SetResourceName(v string) *DeleteSyncConfigurationInput { + s.ResourceName = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *DeleteSyncConfigurationInput) SetSyncType(v string) *DeleteSyncConfigurationInput { + s.SyncType = &v + return s +} + +type DeleteSyncConfigurationOutput 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 DeleteSyncConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSyncConfigurationOutput) GoString() string { + return s.String() +} + type GetConnectionInput struct { _ struct{} `type:"structure"` @@ -1882,6 +4101,506 @@ return s } +type GetRepositoryLinkInput struct { + _ struct{} `type:"structure"` + + // The ID of the repository link to get. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRepositoryLinkInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRepositoryLinkInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRepositoryLinkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRepositoryLinkInput"} + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *GetRepositoryLinkInput) SetRepositoryLinkId(v string) *GetRepositoryLinkInput { + s.RepositoryLinkId = &v + return s +} + +type GetRepositoryLinkOutput struct { + _ struct{} `type:"structure"` + + // The information returned for a specified repository link. + // + // RepositoryLinkInfo is a required field + RepositoryLinkInfo *RepositoryLinkInfo `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 GetRepositoryLinkOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRepositoryLinkOutput) GoString() string { + return s.String() +} + +// SetRepositoryLinkInfo sets the RepositoryLinkInfo field's value. +func (s *GetRepositoryLinkOutput) SetRepositoryLinkInfo(v *RepositoryLinkInfo) *GetRepositoryLinkOutput { + s.RepositoryLinkInfo = v + return s +} + +type GetRepositorySyncStatusInput struct { + _ struct{} `type:"structure"` + + // The branch of the repository link for the requested repository sync status. + // + // Branch is a required field + Branch *string `min:"1" type:"string" required:"true"` + + // The repository link ID for the requested repository sync status. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` + + // The sync type of the requested sync status. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRepositorySyncStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRepositorySyncStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRepositorySyncStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRepositorySyncStatusInput"} + if s.Branch == nil { + invalidParams.Add(request.NewErrParamRequired("Branch")) + } + if s.Branch != nil && len(*s.Branch) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Branch", 1)) + } + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBranch sets the Branch field's value. +func (s *GetRepositorySyncStatusInput) SetBranch(v string) *GetRepositorySyncStatusInput { + s.Branch = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *GetRepositorySyncStatusInput) SetRepositoryLinkId(v string) *GetRepositorySyncStatusInput { + s.RepositoryLinkId = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *GetRepositorySyncStatusInput) SetSyncType(v string) *GetRepositorySyncStatusInput { + s.SyncType = &v + return s +} + +type GetRepositorySyncStatusOutput struct { + _ struct{} `type:"structure"` + + // The status of the latest sync returned for a specified repository and branch. + // + // LatestSync is a required field + LatestSync *RepositorySyncAttempt `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 GetRepositorySyncStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRepositorySyncStatusOutput) GoString() string { + return s.String() +} + +// SetLatestSync sets the LatestSync field's value. +func (s *GetRepositorySyncStatusOutput) SetLatestSync(v *RepositorySyncAttempt) *GetRepositorySyncStatusOutput { + s.LatestSync = v + return s +} + +type GetResourceSyncStatusInput struct { + _ struct{} `type:"structure"` + + // The name of the Amazon Web Services resource for the sync status with the + // Git repository. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The sync type for the sync status with the Git repository. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetResourceSyncStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetResourceSyncStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetResourceSyncStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetResourceSyncStatusInput"} + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceName sets the ResourceName field's value. +func (s *GetResourceSyncStatusInput) SetResourceName(v string) *GetResourceSyncStatusInput { + s.ResourceName = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *GetResourceSyncStatusInput) SetSyncType(v string) *GetResourceSyncStatusInput { + s.SyncType = &v + return s +} + +type GetResourceSyncStatusOutput struct { + _ struct{} `type:"structure"` + + // The desired state of the Amazon Web Services resource for the sync status + // with the Git repository. + DesiredState *Revision `type:"structure"` + + // The latest successful sync for the sync status with the Git repository. + LatestSuccessfulSync *ResourceSyncAttempt `type:"structure"` + + // The latest sync for the sync status with the Git repository, whether successful + // or not. + // + // LatestSync is a required field + LatestSync *ResourceSyncAttempt `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 GetResourceSyncStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetResourceSyncStatusOutput) GoString() string { + return s.String() +} + +// SetDesiredState sets the DesiredState field's value. +func (s *GetResourceSyncStatusOutput) SetDesiredState(v *Revision) *GetResourceSyncStatusOutput { + s.DesiredState = v + return s +} + +// SetLatestSuccessfulSync sets the LatestSuccessfulSync field's value. +func (s *GetResourceSyncStatusOutput) SetLatestSuccessfulSync(v *ResourceSyncAttempt) *GetResourceSyncStatusOutput { + s.LatestSuccessfulSync = v + return s +} + +// SetLatestSync sets the LatestSync field's value. +func (s *GetResourceSyncStatusOutput) SetLatestSync(v *ResourceSyncAttempt) *GetResourceSyncStatusOutput { + s.LatestSync = v + return s +} + +type GetSyncBlockerSummaryInput struct { + _ struct{} `type:"structure"` + + // The name of the Amazon Web Services resource currently blocked from automatically + // being synced from a Git repository. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The sync type for the sync blocker summary. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSyncBlockerSummaryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSyncBlockerSummaryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSyncBlockerSummaryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSyncBlockerSummaryInput"} + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceName sets the ResourceName field's value. +func (s *GetSyncBlockerSummaryInput) SetResourceName(v string) *GetSyncBlockerSummaryInput { + s.ResourceName = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *GetSyncBlockerSummaryInput) SetSyncType(v string) *GetSyncBlockerSummaryInput { + s.SyncType = &v + return s +} + +type GetSyncBlockerSummaryOutput struct { + _ struct{} `type:"structure"` + + // The list of sync blockers for a specified resource. + // + // SyncBlockerSummary is a required field + SyncBlockerSummary *SyncBlockerSummary `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 GetSyncBlockerSummaryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSyncBlockerSummaryOutput) GoString() string { + return s.String() +} + +// SetSyncBlockerSummary sets the SyncBlockerSummary field's value. +func (s *GetSyncBlockerSummaryOutput) SetSyncBlockerSummary(v *SyncBlockerSummary) *GetSyncBlockerSummaryOutput { + s.SyncBlockerSummary = v + return s +} + +type GetSyncConfigurationInput struct { + _ struct{} `type:"structure"` + + // The name of the Amazon Web Services resource for the sync configuration for + // which you want to retrieve information. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The sync type for the sync configuration for which you want to retrieve information. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSyncConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSyncConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSyncConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSyncConfigurationInput"} + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceName sets the ResourceName field's value. +func (s *GetSyncConfigurationInput) SetResourceName(v string) *GetSyncConfigurationInput { + s.ResourceName = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *GetSyncConfigurationInput) SetSyncType(v string) *GetSyncConfigurationInput { + s.SyncType = &v + return s +} + +type GetSyncConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The details about the sync configuration for which you want to retrieve information. + // + // SyncConfiguration is a required field + SyncConfiguration *SyncConfiguration `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 GetSyncConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSyncConfigurationOutput) GoString() string { + return s.String() +} + +// SetSyncConfiguration sets the SyncConfiguration field's value. +func (s *GetSyncConfigurationOutput) SetSyncConfiguration(v *SyncConfiguration) *GetSyncConfigurationOutput { + s.SyncConfiguration = v + return s +} + // A resource that represents the infrastructure where a third-party provider // is installed. The host is used when you create connections to an installed // third-party provider type, such as GitHub Enterprise Server. You create one @@ -1977,6 +4696,134 @@ return s } +// Received an internal server exception. Try again later. +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 input is not valid. Verify that the action is typed correctly. +type InvalidInputException 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 InvalidInputException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidInputException) GoString() string { + return s.String() +} + +func newErrorInvalidInputException(v protocol.ResponseMetadata) error { + return &InvalidInputException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidInputException) Code() string { + return "InvalidInputException" +} + +// Message returns the exception's message. +func (s *InvalidInputException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidInputException) OrigErr() error { + return nil +} + +func (s *InvalidInputException) 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 *InvalidInputException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidInputException) RequestID() string { + return s.RespMetadata.RequestID +} + // Exceeded the maximum limit for connections. type LimitExceededException struct { _ struct{} `type:"structure"` @@ -2256,6 +5103,335 @@ return s } +type ListRepositoryLinksInput struct { + _ struct{} `type:"structure"` + + // A non-zero, non-negative integer used to limit the number of returned results. + MaxResults *int64 `type:"integer"` + + // An enumeration token that, when provided in a request, returns the next batch + // of the results. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRepositoryLinksInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRepositoryLinksInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRepositoryLinksInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRepositoryLinksInput"} + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRepositoryLinksInput) SetMaxResults(v int64) *ListRepositoryLinksInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRepositoryLinksInput) SetNextToken(v string) *ListRepositoryLinksInput { + s.NextToken = &v + return s +} + +type ListRepositoryLinksOutput struct { + _ struct{} `type:"structure"` + + // An enumeration token that allows the operation to batch the results of the + // operation. + NextToken *string `min:"1" type:"string"` + + // Lists the repository links called by the list repository links operation. + // + // RepositoryLinks is a required field + RepositoryLinks []*RepositoryLinkInfo `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 ListRepositoryLinksOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRepositoryLinksOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRepositoryLinksOutput) SetNextToken(v string) *ListRepositoryLinksOutput { + s.NextToken = &v + return s +} + +// SetRepositoryLinks sets the RepositoryLinks field's value. +func (s *ListRepositoryLinksOutput) SetRepositoryLinks(v []*RepositoryLinkInfo) *ListRepositoryLinksOutput { + s.RepositoryLinks = v + return s +} + +type ListRepositorySyncDefinitionsInput struct { + _ struct{} `type:"structure"` + + // The ID of the repository link for the sync definition for which you want + // to retrieve information. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` + + // The sync type of the repository link for the the sync definition for which + // you want to retrieve information. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRepositorySyncDefinitionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRepositorySyncDefinitionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRepositorySyncDefinitionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRepositorySyncDefinitionsInput"} + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *ListRepositorySyncDefinitionsInput) SetRepositoryLinkId(v string) *ListRepositorySyncDefinitionsInput { + s.RepositoryLinkId = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *ListRepositorySyncDefinitionsInput) SetSyncType(v string) *ListRepositorySyncDefinitionsInput { + s.SyncType = &v + return s +} + +type ListRepositorySyncDefinitionsOutput struct { + _ struct{} `type:"structure"` + + // An enumeration token that, when provided in a request, returns the next batch + // of the results. + NextToken *string `min:"1" type:"string"` + + // The list of repository sync definitions returned by the request. A RepositorySyncDefinition + // is a mapping from a repository branch to all the Amazon Web Services resources + // that are being synced from that branch. + // + // RepositorySyncDefinitions is a required field + RepositorySyncDefinitions []*RepositorySyncDefinition `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 ListRepositorySyncDefinitionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRepositorySyncDefinitionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRepositorySyncDefinitionsOutput) SetNextToken(v string) *ListRepositorySyncDefinitionsOutput { + s.NextToken = &v + return s +} + +// SetRepositorySyncDefinitions sets the RepositorySyncDefinitions field's value. +func (s *ListRepositorySyncDefinitionsOutput) SetRepositorySyncDefinitions(v []*RepositorySyncDefinition) *ListRepositorySyncDefinitionsOutput { + s.RepositorySyncDefinitions = v + return s +} + +type ListSyncConfigurationsInput struct { + _ struct{} `type:"structure"` + + // A non-zero, non-negative integer used to limit the number of returned results. + MaxResults *int64 `type:"integer"` + + // An enumeration token that allows the operation to batch the results of the + // operation. + NextToken *string `min:"1" type:"string"` + + // The ID of the repository link for the requested list of sync configurations. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` + + // The sync type for the requested list of sync configurations. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSyncConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSyncConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSyncConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSyncConfigurationsInput"} + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSyncConfigurationsInput) SetMaxResults(v int64) *ListSyncConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSyncConfigurationsInput) SetNextToken(v string) *ListSyncConfigurationsInput { + s.NextToken = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *ListSyncConfigurationsInput) SetRepositoryLinkId(v string) *ListSyncConfigurationsInput { + s.RepositoryLinkId = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *ListSyncConfigurationsInput) SetSyncType(v string) *ListSyncConfigurationsInput { + s.SyncType = &v + return s +} + +type ListSyncConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // An enumeration token that allows the operation to batch the next results + // of the operation. + NextToken *string `min:"1" type:"string"` + + // The list of repository sync definitions returned by the request. + // + // SyncConfigurations is a required field + SyncConfigurations []*SyncConfiguration `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 ListSyncConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSyncConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSyncConfigurationsOutput) SetNextToken(v string) *ListSyncConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetSyncConfigurations sets the SyncConfigurations field's value. +func (s *ListSyncConfigurationsOutput) SetSyncConfigurations(v []*SyncConfiguration) *ListSyncConfigurationsOutput { + s.SyncConfigurations = v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure"` @@ -2337,6 +5513,376 @@ return s } +// Information about the repository link resource, such as the repository link +// ARN, the associated connection ARN, encryption key ARN, and owner ID. +type RepositoryLinkInfo struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the connection associated with the repository + // link. + // + // ConnectionArn is a required field + ConnectionArn *string `type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the encryption key for the repository associated + // with the repository link. + EncryptionKeyArn *string `min:"1" type:"string"` + + // The owner ID for the repository associated with the repository link, such + // as the owner ID in GitHub. + // + // OwnerId is a required field + OwnerId *string `min:"1" type:"string" required:"true"` + + // The provider type for the connection, such as GitHub, associated with the + // repository link. + // + // ProviderType is a required field + ProviderType *string `type:"string" required:"true" enum:"ProviderType"` + + // The Amazon Resource Name (ARN) of the repository link. + // + // RepositoryLinkArn is a required field + RepositoryLinkArn *string `type:"string" required:"true"` + + // The ID of the repository link. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` + + // The name of the repository associated with the repository link. + // + // RepositoryName is a required field + RepositoryName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositoryLinkInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositoryLinkInfo) GoString() string { + return s.String() +} + +// SetConnectionArn sets the ConnectionArn field's value. +func (s *RepositoryLinkInfo) SetConnectionArn(v string) *RepositoryLinkInfo { + s.ConnectionArn = &v + return s +} + +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *RepositoryLinkInfo) SetEncryptionKeyArn(v string) *RepositoryLinkInfo { + s.EncryptionKeyArn = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *RepositoryLinkInfo) SetOwnerId(v string) *RepositoryLinkInfo { + s.OwnerId = &v + return s +} + +// SetProviderType sets the ProviderType field's value. +func (s *RepositoryLinkInfo) SetProviderType(v string) *RepositoryLinkInfo { + s.ProviderType = &v + return s +} + +// SetRepositoryLinkArn sets the RepositoryLinkArn field's value. +func (s *RepositoryLinkInfo) SetRepositoryLinkArn(v string) *RepositoryLinkInfo { + s.RepositoryLinkArn = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *RepositoryLinkInfo) SetRepositoryLinkId(v string) *RepositoryLinkInfo { + s.RepositoryLinkId = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *RepositoryLinkInfo) SetRepositoryName(v string) *RepositoryLinkInfo { + s.RepositoryName = &v + return s +} + +// Information about a repository sync attempt for a repository with a sync +// configuration. +type RepositorySyncAttempt struct { + _ struct{} `type:"structure"` + + // The events associated with a specific sync attempt. + // + // Events is a required field + Events []*RepositorySyncEvent `type:"list" required:"true"` + + // The start time of a specific sync attempt. + // + // StartedAt is a required field + StartedAt *time.Time `type:"timestamp" required:"true"` + + // The status of a specific sync attempt. The following are valid statuses: + // + // * INITIATED - A repository sync attempt has been created and will begin + // soon. + // + // * IN_PROGRESS - A repository sync attempt has started and work is being + // done to reconcile the branch. + // + // * SUCCEEDED - The repository sync attempt has completed successfully. + // + // * FAILED - The repository sync attempt has failed. + // + // * QUEUED - The repository sync attempt didn't execute and was queued. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"RepositorySyncStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositorySyncAttempt) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositorySyncAttempt) GoString() string { + return s.String() +} + +// SetEvents sets the Events field's value. +func (s *RepositorySyncAttempt) SetEvents(v []*RepositorySyncEvent) *RepositorySyncAttempt { + s.Events = v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *RepositorySyncAttempt) SetStartedAt(v time.Time) *RepositorySyncAttempt { + s.StartedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RepositorySyncAttempt) SetStatus(v string) *RepositorySyncAttempt { + s.Status = &v + return s +} + +// The definition for a repository with a sync configuration. +type RepositorySyncDefinition struct { + _ struct{} `type:"structure"` + + // The branch specified for a repository sync definition. + // + // Branch is a required field + Branch *string `min:"1" type:"string" required:"true"` + + // The configuration file for a repository sync definition. This value comes + // from creating or updating the config-file field of a sync-configuration. + // + // Directory is a required field + Directory *string `type:"string" required:"true"` + + // The parent resource specified for a repository sync definition. + // + // Parent is a required field + Parent *string `type:"string" required:"true"` + + // The target resource specified for a repository sync definition. In some cases, + // such as CFN_STACK_SYNC, the parent and target resource are the same. + // + // Target is a required field + Target *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositorySyncDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositorySyncDefinition) GoString() string { + return s.String() +} + +// SetBranch sets the Branch field's value. +func (s *RepositorySyncDefinition) SetBranch(v string) *RepositorySyncDefinition { + s.Branch = &v + return s +} + +// SetDirectory sets the Directory field's value. +func (s *RepositorySyncDefinition) SetDirectory(v string) *RepositorySyncDefinition { + s.Directory = &v + return s +} + +// SetParent sets the Parent field's value. +func (s *RepositorySyncDefinition) SetParent(v string) *RepositorySyncDefinition { + s.Parent = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *RepositorySyncDefinition) SetTarget(v string) *RepositorySyncDefinition { + s.Target = &v + return s +} + +// Information about a repository sync event. +type RepositorySyncEvent struct { + _ struct{} `type:"structure"` + + // A description of a repository sync event. + // + // Event is a required field + Event *string `type:"string" required:"true"` + + // The ID for a repository sync event. + ExternalId *string `type:"string"` + + // The time that a repository sync event occurred. + // + // Time is a required field + Time *time.Time `type:"timestamp" required:"true"` + + // The event type for a repository sync event. + // + // Type is a required field + Type *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositorySyncEvent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RepositorySyncEvent) GoString() string { + return s.String() +} + +// SetEvent sets the Event field's value. +func (s *RepositorySyncEvent) SetEvent(v string) *RepositorySyncEvent { + s.Event = &v + return s +} + +// SetExternalId sets the ExternalId field's value. +func (s *RepositorySyncEvent) SetExternalId(v string) *RepositorySyncEvent { + s.ExternalId = &v + return s +} + +// SetTime sets the Time field's value. +func (s *RepositorySyncEvent) SetTime(v time.Time) *RepositorySyncEvent { + s.Time = &v + return s +} + +// SetType sets the Type field's value. +func (s *RepositorySyncEvent) SetType(v string) *RepositorySyncEvent { + s.Type = &v + return s +} + +// Unable to create resource. Resource already exists. +type ResourceAlreadyExistsException 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 ResourceAlreadyExistsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceAlreadyExistsException) GoString() string { + return s.String() +} + +func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error { + return &ResourceAlreadyExistsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceAlreadyExistsException) Code() string { + return "ResourceAlreadyExistsException" +} + +// Message returns the exception's message. +func (s *ResourceAlreadyExistsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceAlreadyExistsException) OrigErr() error { + return nil +} + +func (s *ResourceAlreadyExistsException) 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 *ResourceAlreadyExistsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceAlreadyExistsException) RequestID() string { + return s.RespMetadata.RequestID +} + // Resource not found. Verify the connection resource ARN and try again. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -2401,6 +5947,173 @@ return s.RespMetadata.RequestID } +// Information about a resource sync attempt. +type ResourceSyncAttempt struct { + _ struct{} `type:"structure"` + + // The events related to a resource sync attempt. + // + // Events is a required field + Events []*ResourceSyncEvent `type:"list" required:"true"` + + // The current state of the resource as defined in the resource's config-file + // in the linked repository. + // + // InitialRevision is a required field + InitialRevision *Revision `type:"structure" required:"true"` + + // The start time for a resource sync attempt. + // + // StartedAt is a required field + StartedAt *time.Time `type:"timestamp" required:"true"` + + // The status for a resource sync attempt. The follow are valid statuses: + // + // * SYNC-INITIATED - A resource sync attempt has been created and will begin + // soon. + // + // * SYNCING - Syncing has started and work is being done to reconcile state. + // + // * SYNCED - Syncing has completed successfully. + // + // * SYNC_FAILED - A resource sync attempt has failed. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"ResourceSyncStatus"` + + // The name of the Amazon Web Services resource that is attempted to be synchronized. + // + // Target is a required field + Target *string `type:"string" required:"true"` + + // The desired state of the resource as defined in the resource's config-file + // in the linked repository. Git sync attempts to update the resource to this + // state. + // + // TargetRevision is a required field + TargetRevision *Revision `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 ResourceSyncAttempt) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceSyncAttempt) GoString() string { + return s.String() +} + +// SetEvents sets the Events field's value. +func (s *ResourceSyncAttempt) SetEvents(v []*ResourceSyncEvent) *ResourceSyncAttempt { + s.Events = v + return s +} + +// SetInitialRevision sets the InitialRevision field's value. +func (s *ResourceSyncAttempt) SetInitialRevision(v *Revision) *ResourceSyncAttempt { + s.InitialRevision = v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *ResourceSyncAttempt) SetStartedAt(v time.Time) *ResourceSyncAttempt { + s.StartedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ResourceSyncAttempt) SetStatus(v string) *ResourceSyncAttempt { + s.Status = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *ResourceSyncAttempt) SetTarget(v string) *ResourceSyncAttempt { + s.Target = &v + return s +} + +// SetTargetRevision sets the TargetRevision field's value. +func (s *ResourceSyncAttempt) SetTargetRevision(v *Revision) *ResourceSyncAttempt { + s.TargetRevision = v + return s +} + +// Information about a resource sync event for the resource associated with +// a sync configuration. +type ResourceSyncEvent struct { + _ struct{} `type:"structure"` + + // The event for a resource sync event. + // + // Event is a required field + Event *string `type:"string" required:"true"` + + // The ID for a resource sync event. + ExternalId *string `type:"string"` + + // The time that a resource sync event occurred. + // + // Time is a required field + Time *time.Time `type:"timestamp" required:"true"` + + // The type of resource sync event. + // + // Type is a required field + Type *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceSyncEvent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceSyncEvent) GoString() string { + return s.String() +} + +// SetEvent sets the Event field's value. +func (s *ResourceSyncEvent) SetEvent(v string) *ResourceSyncEvent { + s.Event = &v + return s +} + +// SetExternalId sets the ExternalId field's value. +func (s *ResourceSyncEvent) SetExternalId(v string) *ResourceSyncEvent { + s.ExternalId = &v + return s +} + +// SetTime sets the Time field's value. +func (s *ResourceSyncEvent) SetTime(v time.Time) *ResourceSyncEvent { + s.Time = &v + return s +} + +// SetType sets the Type field's value. +func (s *ResourceSyncEvent) SetType(v string) *ResourceSyncEvent { + s.Type = &v + return s +} + // Resource not found. Verify the ARN for the host resource and try again. type ResourceUnavailableException struct { _ struct{} `type:"structure"` @@ -2465,6 +6178,617 @@ return s.RespMetadata.RequestID } +// Retrying the latest commit failed. Try again later. +type RetryLatestCommitFailedException 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 RetryLatestCommitFailedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetryLatestCommitFailedException) GoString() string { + return s.String() +} + +func newErrorRetryLatestCommitFailedException(v protocol.ResponseMetadata) error { + return &RetryLatestCommitFailedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *RetryLatestCommitFailedException) Code() string { + return "RetryLatestCommitFailedException" +} + +// Message returns the exception's message. +func (s *RetryLatestCommitFailedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *RetryLatestCommitFailedException) OrigErr() error { + return nil +} + +func (s *RetryLatestCommitFailedException) 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 *RetryLatestCommitFailedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *RetryLatestCommitFailedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Information about the revision for a specific sync event, such as the branch, +// owner ID, and name of the repository. +type Revision struct { + _ struct{} `type:"structure"` + + // The branch name for a specific revision. + // + // Branch is a required field + Branch *string `min:"1" type:"string" required:"true"` + + // The directory, if any, for a specific revision. + // + // Directory is a required field + Directory *string `type:"string" required:"true"` + + // The owner ID for a specific revision, such as the GitHub owner ID for a GitHub + // repository. + // + // OwnerId is a required field + OwnerId *string `min:"1" type:"string" required:"true"` + + // The provider type for a revision, such as GitHub. + // + // ProviderType is a required field + ProviderType *string `type:"string" required:"true" enum:"ProviderType"` + + // The repository name for a specific revision. + // + // RepositoryName is a required field + RepositoryName *string `min:"1" type:"string" required:"true"` + + // The SHA, such as the commit ID, for a specific revision. + // + // Sha is a required field + Sha *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Revision) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Revision) GoString() string { + return s.String() +} + +// SetBranch sets the Branch field's value. +func (s *Revision) SetBranch(v string) *Revision { + s.Branch = &v + return s +} + +// SetDirectory sets the Directory field's value. +func (s *Revision) SetDirectory(v string) *Revision { + s.Directory = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *Revision) SetOwnerId(v string) *Revision { + s.OwnerId = &v + return s +} + +// SetProviderType sets the ProviderType field's value. +func (s *Revision) SetProviderType(v string) *Revision { + s.ProviderType = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *Revision) SetRepositoryName(v string) *Revision { + s.RepositoryName = &v + return s +} + +// SetSha sets the Sha field's value. +func (s *Revision) SetSha(v string) *Revision { + s.Sha = &v + return s +} + +// Information about a blocker for a sync event. +type SyncBlocker struct { + _ struct{} `type:"structure"` + + // The contexts for a specific sync blocker. + Contexts []*SyncBlockerContext `type:"list"` + + // The creation time for a specific sync blocker. + // + // CreatedAt is a required field + CreatedAt *time.Time `type:"timestamp" required:"true"` + + // The provided reason for a specific sync blocker. + // + // CreatedReason is a required field + CreatedReason *string `type:"string" required:"true"` + + // The ID for a specific sync blocker. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` + + // The time that a specific sync blocker was resolved. + ResolvedAt *time.Time `type:"timestamp"` + + // The resolved reason for a specific sync blocker. + ResolvedReason *string `min:"1" type:"string"` + + // The status for a specific sync blocker. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"BlockerStatus"` + + // The sync blocker type. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"BlockerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlocker) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlocker) GoString() string { + return s.String() +} + +// SetContexts sets the Contexts field's value. +func (s *SyncBlocker) SetContexts(v []*SyncBlockerContext) *SyncBlocker { + s.Contexts = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *SyncBlocker) SetCreatedAt(v time.Time) *SyncBlocker { + s.CreatedAt = &v + return s +} + +// SetCreatedReason sets the CreatedReason field's value. +func (s *SyncBlocker) SetCreatedReason(v string) *SyncBlocker { + s.CreatedReason = &v + return s +} + +// SetId sets the Id field's value. +func (s *SyncBlocker) SetId(v string) *SyncBlocker { + s.Id = &v + return s +} + +// SetResolvedAt sets the ResolvedAt field's value. +func (s *SyncBlocker) SetResolvedAt(v time.Time) *SyncBlocker { + s.ResolvedAt = &v + return s +} + +// SetResolvedReason sets the ResolvedReason field's value. +func (s *SyncBlocker) SetResolvedReason(v string) *SyncBlocker { + s.ResolvedReason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SyncBlocker) SetStatus(v string) *SyncBlocker { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *SyncBlocker) SetType(v string) *SyncBlocker { + s.Type = &v + return s +} + +// The context for a specific sync blocker. +type SyncBlockerContext struct { + _ struct{} `type:"structure"` + + // The key provided for a context key-value pair for a specific sync blocker. + // + // Key is a required field + Key *string `type:"string" required:"true"` + + // The value provided for a context key-value pair for a specific sync blocker. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlockerContext) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlockerContext) GoString() string { + return s.String() +} + +// SetKey sets the Key field's value. +func (s *SyncBlockerContext) SetKey(v string) *SyncBlockerContext { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *SyncBlockerContext) SetValue(v string) *SyncBlockerContext { + s.Value = &v + return s +} + +// Unable to continue. The sync blocker does not exist. +type SyncBlockerDoesNotExistException 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 SyncBlockerDoesNotExistException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlockerDoesNotExistException) GoString() string { + return s.String() +} + +func newErrorSyncBlockerDoesNotExistException(v protocol.ResponseMetadata) error { + return &SyncBlockerDoesNotExistException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *SyncBlockerDoesNotExistException) Code() string { + return "SyncBlockerDoesNotExistException" +} + +// Message returns the exception's message. +func (s *SyncBlockerDoesNotExistException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *SyncBlockerDoesNotExistException) OrigErr() error { + return nil +} + +func (s *SyncBlockerDoesNotExistException) 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 *SyncBlockerDoesNotExistException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *SyncBlockerDoesNotExistException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A summary for sync blockers. +type SyncBlockerSummary struct { + _ struct{} `type:"structure"` + + // The latest events for a sync blocker summary. + LatestBlockers []*SyncBlocker `type:"list"` + + // The parent resource name for a sync blocker summary. + ParentResourceName *string `min:"1" type:"string"` + + // The resource name for sync blocker summary. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlockerSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncBlockerSummary) GoString() string { + return s.String() +} + +// SetLatestBlockers sets the LatestBlockers field's value. +func (s *SyncBlockerSummary) SetLatestBlockers(v []*SyncBlocker) *SyncBlockerSummary { + s.LatestBlockers = v + return s +} + +// SetParentResourceName sets the ParentResourceName field's value. +func (s *SyncBlockerSummary) SetParentResourceName(v string) *SyncBlockerSummary { + s.ParentResourceName = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *SyncBlockerSummary) SetResourceName(v string) *SyncBlockerSummary { + s.ResourceName = &v + return s +} + +// Information, such as repository, branch, provider, and resource names for +// a specific sync configuration. +type SyncConfiguration struct { + _ struct{} `type:"structure"` + + // The branch associated with a specific sync configuration. + // + // Branch is a required field + Branch *string `min:"1" type:"string" required:"true"` + + // The file path to the configuration file associated with a specific sync configuration. + // The path should point to an actual file in the sync configurations linked + // repository. + ConfigFile *string `type:"string"` + + // The owner ID for the repository associated with a specific sync configuration, + // such as the owner ID in GitHub. + // + // OwnerId is a required field + OwnerId *string `min:"1" type:"string" required:"true"` + + // The connection provider type associated with a specific sync configuration, + // such as GitHub. + // + // ProviderType is a required field + ProviderType *string `type:"string" required:"true" enum:"ProviderType"` + + // The ID of the repository link associated with a specific sync configuration. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` + + // The name of the repository associated with a specific sync configuration. + // + // RepositoryName is a required field + RepositoryName *string `min:"1" type:"string" required:"true"` + + // The name of the connection resource associated with a specific sync configuration. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role associated with a specific + // sync configuration. + // + // RoleArn is a required field + RoleArn *string `min:"1" type:"string" required:"true"` + + // The type of sync for a specific sync configuration. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncConfiguration) GoString() string { + return s.String() +} + +// SetBranch sets the Branch field's value. +func (s *SyncConfiguration) SetBranch(v string) *SyncConfiguration { + s.Branch = &v + return s +} + +// SetConfigFile sets the ConfigFile field's value. +func (s *SyncConfiguration) SetConfigFile(v string) *SyncConfiguration { + s.ConfigFile = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *SyncConfiguration) SetOwnerId(v string) *SyncConfiguration { + s.OwnerId = &v + return s +} + +// SetProviderType sets the ProviderType field's value. +func (s *SyncConfiguration) SetProviderType(v string) *SyncConfiguration { + s.ProviderType = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *SyncConfiguration) SetRepositoryLinkId(v string) *SyncConfiguration { + s.RepositoryLinkId = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *SyncConfiguration) SetRepositoryName(v string) *SyncConfiguration { + s.RepositoryName = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *SyncConfiguration) SetResourceName(v string) *SyncConfiguration { + s.ResourceName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *SyncConfiguration) SetRoleArn(v string) *SyncConfiguration { + s.RoleArn = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *SyncConfiguration) SetSyncType(v string) *SyncConfiguration { + s.SyncType = &v + return s +} + +// Unable to continue. The sync blocker still exists. +type SyncConfigurationStillExistsException 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 SyncConfigurationStillExistsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SyncConfigurationStillExistsException) GoString() string { + return s.String() +} + +func newErrorSyncConfigurationStillExistsException(v protocol.ResponseMetadata) error { + return &SyncConfigurationStillExistsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *SyncConfigurationStillExistsException) Code() string { + return "SyncConfigurationStillExistsException" +} + +// Message returns the exception's message. +func (s *SyncConfigurationStillExistsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *SyncConfigurationStillExistsException) OrigErr() error { + return nil +} + +func (s *SyncConfigurationStillExistsException) 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 *SyncConfigurationStillExistsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *SyncConfigurationStillExistsException) RequestID() string { + return s.RespMetadata.RequestID +} + // A tag is a key-value pair that is used to manage the resource. // // This tag is available for use by Amazon Web Services services that support @@ -2628,6 +6952,70 @@ return s.String() } +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + // The operation is not supported. Check the connection status and try again. type UnsupportedOperationException struct { _ struct{} `type:"structure"` @@ -2692,6 +7080,70 @@ return s.RespMetadata.RequestID } +// The specified provider type is not supported for connections. +type UnsupportedProviderTypeException 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 UnsupportedProviderTypeException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnsupportedProviderTypeException) GoString() string { + return s.String() +} + +func newErrorUnsupportedProviderTypeException(v protocol.ResponseMetadata) error { + return &UnsupportedProviderTypeException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnsupportedProviderTypeException) Code() string { + return "UnsupportedProviderTypeException" +} + +// Message returns the exception's message. +func (s *UnsupportedProviderTypeException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnsupportedProviderTypeException) OrigErr() error { + return nil +} + +func (s *UnsupportedProviderTypeException) 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 *UnsupportedProviderTypeException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnsupportedProviderTypeException) RequestID() string { + return s.RespMetadata.RequestID +} + type UntagResourceInput struct { _ struct{} `type:"structure"` @@ -2873,6 +7325,462 @@ return s.String() } +// The update is out of sync. Try syncing again. +type UpdateOutOfSyncException 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 UpdateOutOfSyncException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateOutOfSyncException) GoString() string { + return s.String() +} + +func newErrorUpdateOutOfSyncException(v protocol.ResponseMetadata) error { + return &UpdateOutOfSyncException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UpdateOutOfSyncException) Code() string { + return "UpdateOutOfSyncException" +} + +// Message returns the exception's message. +func (s *UpdateOutOfSyncException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UpdateOutOfSyncException) OrigErr() error { + return nil +} + +func (s *UpdateOutOfSyncException) 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 *UpdateOutOfSyncException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UpdateOutOfSyncException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UpdateRepositoryLinkInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the connection for the repository link + // to be updated. The updated connection ARN must have the same providerType + // (such as GitHub) as the original connection ARN for the repo link. + ConnectionArn *string `type:"string"` + + // The Amazon Resource Name (ARN) of the encryption key for the repository link + // to be updated. + EncryptionKeyArn *string `min:"1" type:"string"` + + // The ID of the repository link to be updated. + // + // RepositoryLinkId is a required field + RepositoryLinkId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRepositoryLinkInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRepositoryLinkInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRepositoryLinkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRepositoryLinkInput"} + if s.EncryptionKeyArn != nil && len(*s.EncryptionKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EncryptionKeyArn", 1)) + } + if s.RepositoryLinkId == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryLinkId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectionArn sets the ConnectionArn field's value. +func (s *UpdateRepositoryLinkInput) SetConnectionArn(v string) *UpdateRepositoryLinkInput { + s.ConnectionArn = &v + return s +} + +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *UpdateRepositoryLinkInput) SetEncryptionKeyArn(v string) *UpdateRepositoryLinkInput { + s.EncryptionKeyArn = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *UpdateRepositoryLinkInput) SetRepositoryLinkId(v string) *UpdateRepositoryLinkInput { + s.RepositoryLinkId = &v + return s +} + +type UpdateRepositoryLinkOutput struct { + _ struct{} `type:"structure"` + + // Information about the repository link to be updated. + // + // RepositoryLinkInfo is a required field + RepositoryLinkInfo *RepositoryLinkInfo `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 UpdateRepositoryLinkOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRepositoryLinkOutput) GoString() string { + return s.String() +} + +// SetRepositoryLinkInfo sets the RepositoryLinkInfo field's value. +func (s *UpdateRepositoryLinkOutput) SetRepositoryLinkInfo(v *RepositoryLinkInfo) *UpdateRepositoryLinkOutput { + s.RepositoryLinkInfo = v + return s +} + +type UpdateSyncBlockerInput struct { + _ struct{} `type:"structure"` + + // The ID of the sync blocker to be updated. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` + + // The reason for resolving the sync blocker. + // + // ResolvedReason is a required field + ResolvedReason *string `min:"1" type:"string" required:"true"` + + // The name of the resource for the sync blocker to be updated. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The sync type of the sync blocker to be updated. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSyncBlockerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSyncBlockerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSyncBlockerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSyncBlockerInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.ResolvedReason == nil { + invalidParams.Add(request.NewErrParamRequired("ResolvedReason")) + } + if s.ResolvedReason != nil && len(*s.ResolvedReason) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResolvedReason", 1)) + } + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *UpdateSyncBlockerInput) SetId(v string) *UpdateSyncBlockerInput { + s.Id = &v + return s +} + +// SetResolvedReason sets the ResolvedReason field's value. +func (s *UpdateSyncBlockerInput) SetResolvedReason(v string) *UpdateSyncBlockerInput { + s.ResolvedReason = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *UpdateSyncBlockerInput) SetResourceName(v string) *UpdateSyncBlockerInput { + s.ResourceName = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *UpdateSyncBlockerInput) SetSyncType(v string) *UpdateSyncBlockerInput { + s.SyncType = &v + return s +} + +type UpdateSyncBlockerOutput struct { + _ struct{} `type:"structure"` + + // The parent resource name for the sync blocker. + ParentResourceName *string `min:"1" type:"string"` + + // The resource name for the sync blocker. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // Information about the sync blocker to be updated. + // + // SyncBlocker is a required field + SyncBlocker *SyncBlocker `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 UpdateSyncBlockerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSyncBlockerOutput) GoString() string { + return s.String() +} + +// SetParentResourceName sets the ParentResourceName field's value. +func (s *UpdateSyncBlockerOutput) SetParentResourceName(v string) *UpdateSyncBlockerOutput { + s.ParentResourceName = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *UpdateSyncBlockerOutput) SetResourceName(v string) *UpdateSyncBlockerOutput { + s.ResourceName = &v + return s +} + +// SetSyncBlocker sets the SyncBlocker field's value. +func (s *UpdateSyncBlockerOutput) SetSyncBlocker(v *SyncBlocker) *UpdateSyncBlockerOutput { + s.SyncBlocker = v + return s +} + +type UpdateSyncConfigurationInput struct { + _ struct{} `type:"structure"` + + // The branch for the sync configuration to be updated. + Branch *string `min:"1" type:"string"` + + // The configuration file for the sync configuration to be updated. + ConfigFile *string `type:"string"` + + // The ID of the repository link for the sync configuration to be updated. + RepositoryLinkId *string `type:"string"` + + // The name of the Amazon Web Services resource for the sync configuration to + // be updated. + // + // ResourceName is a required field + ResourceName *string `min:"1" type:"string" required:"true"` + + // The ARN of the IAM role for the sync configuration to be updated. + RoleArn *string `min:"1" type:"string"` + + // The sync type for the sync configuration to be updated. + // + // SyncType is a required field + SyncType *string `type:"string" required:"true" enum:"SyncConfigurationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSyncConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSyncConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSyncConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSyncConfigurationInput"} + if s.Branch != nil && len(*s.Branch) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Branch", 1)) + } + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.ResourceName != nil && len(*s.ResourceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) + } + if s.RoleArn != nil && len(*s.RoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) + } + if s.SyncType == nil { + invalidParams.Add(request.NewErrParamRequired("SyncType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBranch sets the Branch field's value. +func (s *UpdateSyncConfigurationInput) SetBranch(v string) *UpdateSyncConfigurationInput { + s.Branch = &v + return s +} + +// SetConfigFile sets the ConfigFile field's value. +func (s *UpdateSyncConfigurationInput) SetConfigFile(v string) *UpdateSyncConfigurationInput { + s.ConfigFile = &v + return s +} + +// SetRepositoryLinkId sets the RepositoryLinkId field's value. +func (s *UpdateSyncConfigurationInput) SetRepositoryLinkId(v string) *UpdateSyncConfigurationInput { + s.RepositoryLinkId = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *UpdateSyncConfigurationInput) SetResourceName(v string) *UpdateSyncConfigurationInput { + s.ResourceName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateSyncConfigurationInput) SetRoleArn(v string) *UpdateSyncConfigurationInput { + s.RoleArn = &v + return s +} + +// SetSyncType sets the SyncType field's value. +func (s *UpdateSyncConfigurationInput) SetSyncType(v string) *UpdateSyncConfigurationInput { + s.SyncType = &v + return s +} + +type UpdateSyncConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The information returned for the sync configuration to be updated. + // + // SyncConfiguration is a required field + SyncConfiguration *SyncConfiguration `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 UpdateSyncConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSyncConfigurationOutput) GoString() string { + return s.String() +} + +// SetSyncConfiguration sets the SyncConfiguration field's value. +func (s *UpdateSyncConfigurationOutput) SetSyncConfiguration(v *SyncConfiguration) *UpdateSyncConfigurationOutput { + s.SyncConfiguration = v + return s +} + // The VPC configuration provisioned for the host. type VpcConfiguration struct { _ struct{} `type:"structure"` @@ -2974,6 +7882,34 @@ } const ( + // BlockerStatusActive is a BlockerStatus enum value + BlockerStatusActive = "ACTIVE" + + // BlockerStatusResolved is a BlockerStatus enum value + BlockerStatusResolved = "RESOLVED" +) + +// BlockerStatus_Values returns all elements of the BlockerStatus enum +func BlockerStatus_Values() []string { + return []string{ + BlockerStatusActive, + BlockerStatusResolved, + } +} + +const ( + // BlockerTypeAutomated is a BlockerType enum value + BlockerTypeAutomated = "AUTOMATED" +) + +// BlockerType_Values returns all elements of the BlockerType enum +func BlockerType_Values() []string { + return []string{ + BlockerTypeAutomated, + } +} + +const ( // ConnectionStatusPending is a ConnectionStatus enum value ConnectionStatusPending = "PENDING" @@ -3016,3 +7952,67 @@ ProviderTypeGitLab, } } + +const ( + // RepositorySyncStatusFailed is a RepositorySyncStatus enum value + RepositorySyncStatusFailed = "FAILED" + + // RepositorySyncStatusInitiated is a RepositorySyncStatus enum value + RepositorySyncStatusInitiated = "INITIATED" + + // RepositorySyncStatusInProgress is a RepositorySyncStatus enum value + RepositorySyncStatusInProgress = "IN_PROGRESS" + + // RepositorySyncStatusSucceeded is a RepositorySyncStatus enum value + RepositorySyncStatusSucceeded = "SUCCEEDED" + + // RepositorySyncStatusQueued is a RepositorySyncStatus enum value + RepositorySyncStatusQueued = "QUEUED" +) + +// RepositorySyncStatus_Values returns all elements of the RepositorySyncStatus enum +func RepositorySyncStatus_Values() []string { + return []string{ + RepositorySyncStatusFailed, + RepositorySyncStatusInitiated, + RepositorySyncStatusInProgress, + RepositorySyncStatusSucceeded, + RepositorySyncStatusQueued, + } +} + +const ( + // ResourceSyncStatusFailed is a ResourceSyncStatus enum value + ResourceSyncStatusFailed = "FAILED" + + // ResourceSyncStatusInitiated is a ResourceSyncStatus enum value + ResourceSyncStatusInitiated = "INITIATED" + + // ResourceSyncStatusInProgress is a ResourceSyncStatus enum value + ResourceSyncStatusInProgress = "IN_PROGRESS" + + // ResourceSyncStatusSucceeded is a ResourceSyncStatus enum value + ResourceSyncStatusSucceeded = "SUCCEEDED" +) + +// ResourceSyncStatus_Values returns all elements of the ResourceSyncStatus enum +func ResourceSyncStatus_Values() []string { + return []string{ + ResourceSyncStatusFailed, + ResourceSyncStatusInitiated, + ResourceSyncStatusInProgress, + ResourceSyncStatusSucceeded, + } +} + +const ( + // SyncConfigurationTypeCfnStackSync is a SyncConfigurationType enum value + SyncConfigurationTypeCfnStackSync = "CFN_STACK_SYNC" +) + +// SyncConfigurationType_Values returns all elements of the SyncConfigurationType enum +func SyncConfigurationType_Values() []string { + return []string{ + SyncConfigurationTypeCfnStackSync, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codestarconnections/codestarconnectionsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/codestarconnections/codestarconnectionsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codestarconnections/codestarconnectionsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codestarconnections/codestarconnectionsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -68,6 +68,14 @@ CreateHostWithContext(aws.Context, *codestarconnections.CreateHostInput, ...request.Option) (*codestarconnections.CreateHostOutput, error) CreateHostRequest(*codestarconnections.CreateHostInput) (*request.Request, *codestarconnections.CreateHostOutput) + CreateRepositoryLink(*codestarconnections.CreateRepositoryLinkInput) (*codestarconnections.CreateRepositoryLinkOutput, error) + CreateRepositoryLinkWithContext(aws.Context, *codestarconnections.CreateRepositoryLinkInput, ...request.Option) (*codestarconnections.CreateRepositoryLinkOutput, error) + CreateRepositoryLinkRequest(*codestarconnections.CreateRepositoryLinkInput) (*request.Request, *codestarconnections.CreateRepositoryLinkOutput) + + CreateSyncConfiguration(*codestarconnections.CreateSyncConfigurationInput) (*codestarconnections.CreateSyncConfigurationOutput, error) + CreateSyncConfigurationWithContext(aws.Context, *codestarconnections.CreateSyncConfigurationInput, ...request.Option) (*codestarconnections.CreateSyncConfigurationOutput, error) + CreateSyncConfigurationRequest(*codestarconnections.CreateSyncConfigurationInput) (*request.Request, *codestarconnections.CreateSyncConfigurationOutput) + DeleteConnection(*codestarconnections.DeleteConnectionInput) (*codestarconnections.DeleteConnectionOutput, error) DeleteConnectionWithContext(aws.Context, *codestarconnections.DeleteConnectionInput, ...request.Option) (*codestarconnections.DeleteConnectionOutput, error) DeleteConnectionRequest(*codestarconnections.DeleteConnectionInput) (*request.Request, *codestarconnections.DeleteConnectionOutput) @@ -76,6 +84,14 @@ DeleteHostWithContext(aws.Context, *codestarconnections.DeleteHostInput, ...request.Option) (*codestarconnections.DeleteHostOutput, error) DeleteHostRequest(*codestarconnections.DeleteHostInput) (*request.Request, *codestarconnections.DeleteHostOutput) + DeleteRepositoryLink(*codestarconnections.DeleteRepositoryLinkInput) (*codestarconnections.DeleteRepositoryLinkOutput, error) + DeleteRepositoryLinkWithContext(aws.Context, *codestarconnections.DeleteRepositoryLinkInput, ...request.Option) (*codestarconnections.DeleteRepositoryLinkOutput, error) + DeleteRepositoryLinkRequest(*codestarconnections.DeleteRepositoryLinkInput) (*request.Request, *codestarconnections.DeleteRepositoryLinkOutput) + + DeleteSyncConfiguration(*codestarconnections.DeleteSyncConfigurationInput) (*codestarconnections.DeleteSyncConfigurationOutput, error) + DeleteSyncConfigurationWithContext(aws.Context, *codestarconnections.DeleteSyncConfigurationInput, ...request.Option) (*codestarconnections.DeleteSyncConfigurationOutput, error) + DeleteSyncConfigurationRequest(*codestarconnections.DeleteSyncConfigurationInput) (*request.Request, *codestarconnections.DeleteSyncConfigurationOutput) + GetConnection(*codestarconnections.GetConnectionInput) (*codestarconnections.GetConnectionOutput, error) GetConnectionWithContext(aws.Context, *codestarconnections.GetConnectionInput, ...request.Option) (*codestarconnections.GetConnectionOutput, error) GetConnectionRequest(*codestarconnections.GetConnectionInput) (*request.Request, *codestarconnections.GetConnectionOutput) @@ -84,6 +100,26 @@ GetHostWithContext(aws.Context, *codestarconnections.GetHostInput, ...request.Option) (*codestarconnections.GetHostOutput, error) GetHostRequest(*codestarconnections.GetHostInput) (*request.Request, *codestarconnections.GetHostOutput) + GetRepositoryLink(*codestarconnections.GetRepositoryLinkInput) (*codestarconnections.GetRepositoryLinkOutput, error) + GetRepositoryLinkWithContext(aws.Context, *codestarconnections.GetRepositoryLinkInput, ...request.Option) (*codestarconnections.GetRepositoryLinkOutput, error) + GetRepositoryLinkRequest(*codestarconnections.GetRepositoryLinkInput) (*request.Request, *codestarconnections.GetRepositoryLinkOutput) + + GetRepositorySyncStatus(*codestarconnections.GetRepositorySyncStatusInput) (*codestarconnections.GetRepositorySyncStatusOutput, error) + GetRepositorySyncStatusWithContext(aws.Context, *codestarconnections.GetRepositorySyncStatusInput, ...request.Option) (*codestarconnections.GetRepositorySyncStatusOutput, error) + GetRepositorySyncStatusRequest(*codestarconnections.GetRepositorySyncStatusInput) (*request.Request, *codestarconnections.GetRepositorySyncStatusOutput) + + GetResourceSyncStatus(*codestarconnections.GetResourceSyncStatusInput) (*codestarconnections.GetResourceSyncStatusOutput, error) + GetResourceSyncStatusWithContext(aws.Context, *codestarconnections.GetResourceSyncStatusInput, ...request.Option) (*codestarconnections.GetResourceSyncStatusOutput, error) + GetResourceSyncStatusRequest(*codestarconnections.GetResourceSyncStatusInput) (*request.Request, *codestarconnections.GetResourceSyncStatusOutput) + + GetSyncBlockerSummary(*codestarconnections.GetSyncBlockerSummaryInput) (*codestarconnections.GetSyncBlockerSummaryOutput, error) + GetSyncBlockerSummaryWithContext(aws.Context, *codestarconnections.GetSyncBlockerSummaryInput, ...request.Option) (*codestarconnections.GetSyncBlockerSummaryOutput, error) + GetSyncBlockerSummaryRequest(*codestarconnections.GetSyncBlockerSummaryInput) (*request.Request, *codestarconnections.GetSyncBlockerSummaryOutput) + + GetSyncConfiguration(*codestarconnections.GetSyncConfigurationInput) (*codestarconnections.GetSyncConfigurationOutput, error) + GetSyncConfigurationWithContext(aws.Context, *codestarconnections.GetSyncConfigurationInput, ...request.Option) (*codestarconnections.GetSyncConfigurationOutput, error) + GetSyncConfigurationRequest(*codestarconnections.GetSyncConfigurationInput) (*request.Request, *codestarconnections.GetSyncConfigurationOutput) + ListConnections(*codestarconnections.ListConnectionsInput) (*codestarconnections.ListConnectionsOutput, error) ListConnectionsWithContext(aws.Context, *codestarconnections.ListConnectionsInput, ...request.Option) (*codestarconnections.ListConnectionsOutput, error) ListConnectionsRequest(*codestarconnections.ListConnectionsInput) (*request.Request, *codestarconnections.ListConnectionsOutput) @@ -98,6 +134,24 @@ ListHostsPages(*codestarconnections.ListHostsInput, func(*codestarconnections.ListHostsOutput, bool) bool) error ListHostsPagesWithContext(aws.Context, *codestarconnections.ListHostsInput, func(*codestarconnections.ListHostsOutput, bool) bool, ...request.Option) error + ListRepositoryLinks(*codestarconnections.ListRepositoryLinksInput) (*codestarconnections.ListRepositoryLinksOutput, error) + ListRepositoryLinksWithContext(aws.Context, *codestarconnections.ListRepositoryLinksInput, ...request.Option) (*codestarconnections.ListRepositoryLinksOutput, error) + ListRepositoryLinksRequest(*codestarconnections.ListRepositoryLinksInput) (*request.Request, *codestarconnections.ListRepositoryLinksOutput) + + ListRepositoryLinksPages(*codestarconnections.ListRepositoryLinksInput, func(*codestarconnections.ListRepositoryLinksOutput, bool) bool) error + ListRepositoryLinksPagesWithContext(aws.Context, *codestarconnections.ListRepositoryLinksInput, func(*codestarconnections.ListRepositoryLinksOutput, bool) bool, ...request.Option) error + + ListRepositorySyncDefinitions(*codestarconnections.ListRepositorySyncDefinitionsInput) (*codestarconnections.ListRepositorySyncDefinitionsOutput, error) + ListRepositorySyncDefinitionsWithContext(aws.Context, *codestarconnections.ListRepositorySyncDefinitionsInput, ...request.Option) (*codestarconnections.ListRepositorySyncDefinitionsOutput, error) + ListRepositorySyncDefinitionsRequest(*codestarconnections.ListRepositorySyncDefinitionsInput) (*request.Request, *codestarconnections.ListRepositorySyncDefinitionsOutput) + + ListSyncConfigurations(*codestarconnections.ListSyncConfigurationsInput) (*codestarconnections.ListSyncConfigurationsOutput, error) + ListSyncConfigurationsWithContext(aws.Context, *codestarconnections.ListSyncConfigurationsInput, ...request.Option) (*codestarconnections.ListSyncConfigurationsOutput, error) + ListSyncConfigurationsRequest(*codestarconnections.ListSyncConfigurationsInput) (*request.Request, *codestarconnections.ListSyncConfigurationsOutput) + + ListSyncConfigurationsPages(*codestarconnections.ListSyncConfigurationsInput, func(*codestarconnections.ListSyncConfigurationsOutput, bool) bool) error + ListSyncConfigurationsPagesWithContext(aws.Context, *codestarconnections.ListSyncConfigurationsInput, func(*codestarconnections.ListSyncConfigurationsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*codestarconnections.ListTagsForResourceInput) (*codestarconnections.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *codestarconnections.ListTagsForResourceInput, ...request.Option) (*codestarconnections.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*codestarconnections.ListTagsForResourceInput) (*request.Request, *codestarconnections.ListTagsForResourceOutput) @@ -113,6 +167,18 @@ UpdateHost(*codestarconnections.UpdateHostInput) (*codestarconnections.UpdateHostOutput, error) UpdateHostWithContext(aws.Context, *codestarconnections.UpdateHostInput, ...request.Option) (*codestarconnections.UpdateHostOutput, error) UpdateHostRequest(*codestarconnections.UpdateHostInput) (*request.Request, *codestarconnections.UpdateHostOutput) + + UpdateRepositoryLink(*codestarconnections.UpdateRepositoryLinkInput) (*codestarconnections.UpdateRepositoryLinkOutput, error) + UpdateRepositoryLinkWithContext(aws.Context, *codestarconnections.UpdateRepositoryLinkInput, ...request.Option) (*codestarconnections.UpdateRepositoryLinkOutput, error) + UpdateRepositoryLinkRequest(*codestarconnections.UpdateRepositoryLinkInput) (*request.Request, *codestarconnections.UpdateRepositoryLinkOutput) + + UpdateSyncBlocker(*codestarconnections.UpdateSyncBlockerInput) (*codestarconnections.UpdateSyncBlockerOutput, error) + UpdateSyncBlockerWithContext(aws.Context, *codestarconnections.UpdateSyncBlockerInput, ...request.Option) (*codestarconnections.UpdateSyncBlockerOutput, error) + UpdateSyncBlockerRequest(*codestarconnections.UpdateSyncBlockerInput) (*request.Request, *codestarconnections.UpdateSyncBlockerOutput) + + UpdateSyncConfiguration(*codestarconnections.UpdateSyncConfigurationInput) (*codestarconnections.UpdateSyncConfigurationOutput, error) + UpdateSyncConfigurationWithContext(aws.Context, *codestarconnections.UpdateSyncConfigurationInput, ...request.Option) (*codestarconnections.UpdateSyncConfigurationOutput, error) + UpdateSyncConfigurationRequest(*codestarconnections.UpdateSyncConfigurationInput) (*request.Request, *codestarconnections.UpdateSyncConfigurationOutput) } var _ CodeStarConnectionsAPI = (*codestarconnections.CodeStarConnections)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/codestarconnections/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/codestarconnections/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/codestarconnections/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/codestarconnections/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -8,18 +8,56 @@ const ( + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConcurrentModificationException for service response error code + // "ConcurrentModificationException". + // + // Exception thrown as a result of concurrent modification to an application. + // For example, two individuals attempting to edit the same application at the + // same time. + ErrCodeConcurrentModificationException = "ConcurrentModificationException" + + // ErrCodeConditionalCheckFailedException for service response error code + // "ConditionalCheckFailedException". + // + // The conditional check failed. Try again later. + ErrCodeConditionalCheckFailedException = "ConditionalCheckFailedException" + // ErrCodeConflictException for service response error code // "ConflictException". // // Two conflicting operations have been made on the same resource. ErrCodeConflictException = "ConflictException" + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // Received an internal server exception. Try again later. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeInvalidInputException for service response error code + // "InvalidInputException". + // + // The input is not valid. Verify that the action is typed correctly. + ErrCodeInvalidInputException = "InvalidInputException" + // ErrCodeLimitExceededException for service response error code // "LimitExceededException". // // Exceeded the maximum limit for connections. ErrCodeLimitExceededException = "LimitExceededException" + // ErrCodeResourceAlreadyExistsException for service response error code + // "ResourceAlreadyExistsException". + // + // Unable to create resource. Resource already exists. + ErrCodeResourceAlreadyExistsException = "ResourceAlreadyExistsException" + // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // @@ -32,17 +70,65 @@ // Resource not found. Verify the ARN for the host resource and try again. ErrCodeResourceUnavailableException = "ResourceUnavailableException" + // ErrCodeRetryLatestCommitFailedException for service response error code + // "RetryLatestCommitFailedException". + // + // Retrying the latest commit failed. Try again later. + ErrCodeRetryLatestCommitFailedException = "RetryLatestCommitFailedException" + + // ErrCodeSyncBlockerDoesNotExistException for service response error code + // "SyncBlockerDoesNotExistException". + // + // Unable to continue. The sync blocker does not exist. + ErrCodeSyncBlockerDoesNotExistException = "SyncBlockerDoesNotExistException" + + // ErrCodeSyncConfigurationStillExistsException for service response error code + // "SyncConfigurationStillExistsException". + // + // Unable to continue. The sync blocker still exists. + ErrCodeSyncConfigurationStillExistsException = "SyncConfigurationStillExistsException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + // ErrCodeUnsupportedOperationException for service response error code // "UnsupportedOperationException". // // The operation is not supported. Check the connection status and try again. ErrCodeUnsupportedOperationException = "UnsupportedOperationException" + + // ErrCodeUnsupportedProviderTypeException for service response error code + // "UnsupportedProviderTypeException". + // + // The specified provider type is not supported for connections. + ErrCodeUnsupportedProviderTypeException = "UnsupportedProviderTypeException" + + // ErrCodeUpdateOutOfSyncException for service response error code + // "UpdateOutOfSyncException". + // + // The update is out of sync. Try syncing again. + ErrCodeUpdateOutOfSyncException = "UpdateOutOfSyncException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ - "ConflictException": newErrorConflictException, - "LimitExceededException": newErrorLimitExceededException, - "ResourceNotFoundException": newErrorResourceNotFoundException, - "ResourceUnavailableException": newErrorResourceUnavailableException, - "UnsupportedOperationException": newErrorUnsupportedOperationException, + "AccessDeniedException": newErrorAccessDeniedException, + "ConcurrentModificationException": newErrorConcurrentModificationException, + "ConditionalCheckFailedException": newErrorConditionalCheckFailedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "InvalidInputException": newErrorInvalidInputException, + "LimitExceededException": newErrorLimitExceededException, + "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ResourceUnavailableException": newErrorResourceUnavailableException, + "RetryLatestCommitFailedException": newErrorRetryLatestCommitFailedException, + "SyncBlockerDoesNotExistException": newErrorSyncBlockerDoesNotExistException, + "SyncConfigurationStillExistsException": newErrorSyncConfigurationStillExistsException, + "ThrottlingException": newErrorThrottlingException, + "UnsupportedOperationException": newErrorUnsupportedOperationException, + "UnsupportedProviderTypeException": newErrorUnsupportedProviderTypeException, + "UpdateOutOfSyncException": newErrorUpdateOutOfSyncException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cognitoidentityprovider/api.go golang-github-aws-aws-sdk-go-1.48.14/service/cognitoidentityprovider/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cognitoidentityprovider/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cognitoidentityprovider/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13450,9 +13450,19 @@ // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` - // The username for the user. Must be unique within the user pool. Must be a - // UTF-8 string between 1 and 128 characters. After the user is created, the - // username can't be changed. + // The value that you want to set as the username sign-in attribute. The following + // conditions apply to the username parameter. + // + // * The username can't be a duplicate of another username in the same user + // pool. + // + // * You can't change the value of a username after you create it. + // + // * You can only provide a value if usernames are a valid sign-in attribute + // for your user pool. If your user pool only supports phone numbers or email + // addresses as sign-in attributes, Amazon Cognito automatically generates + // a username value. For more information, see Customizing sign-in attributes + // (https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-aliases). // // Username is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by AdminCreateUserInput's @@ -34160,7 +34170,9 @@ Name *string `min:"1" type:"string"` // The user pool status in a user pool description. - Status *string `type:"string" enum:"StatusType"` + // + // Deprecated: This property is no longer available. + Status *string `deprecated:"true" type:"string" enum:"StatusType"` } // String returns the string representation. @@ -34476,7 +34488,9 @@ SmsVerificationMessage *string `min:"6" type:"string"` // The status of a user pool. - Status *string `type:"string" enum:"StatusType"` + // + // Deprecated: This property is no longer available. + Status *string `deprecated:"true" type:"string" enum:"StatusType"` // The settings for updates to user attributes. These settings include the property // AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/cognitoidentityprovider/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/cognitoidentityprovider/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/cognitoidentityprovider/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/cognitoidentityprovider/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -474,47 +474,3 @@ fmt.Println(result) } - -// A ListUsers request for the next 3 users whose email address starts with "testuser." -// This request submits a value for all possible parameters for ListUsers. By iterating -// the PaginationToken, you can page through and collect all users in a user pool. -func ExampleCognitoIdentityProvider_ListUsers_shared01() { - svc := cognitoidentityprovider.New(session.New()) - input := &cognitoidentityprovider.ListUsersInput{ - AttributesToGet: []*string{ - aws.String("email"), - aws.String("sub"), - }, - Filter: aws.String("\"email\"^=\"testuser\""), - Limit: aws.Int64(3), - PaginationToken: aws.String("abcd1234EXAMPLE"), - UserPoolId: aws.String("us-east-1_EXAMPLE"), - } - - result, err := svc.ListUsers(input) - if err != nil { - if aerr, ok := err.(awserr.Error); ok { - switch aerr.Code() { - case cognitoidentityprovider.ErrCodeInvalidParameterException: - fmt.Println(cognitoidentityprovider.ErrCodeInvalidParameterException, aerr.Error()) - case cognitoidentityprovider.ErrCodeResourceNotFoundException: - fmt.Println(cognitoidentityprovider.ErrCodeResourceNotFoundException, aerr.Error()) - case cognitoidentityprovider.ErrCodeTooManyRequestsException: - fmt.Println(cognitoidentityprovider.ErrCodeTooManyRequestsException, aerr.Error()) - case cognitoidentityprovider.ErrCodeNotAuthorizedException: - fmt.Println(cognitoidentityprovider.ErrCodeNotAuthorizedException, aerr.Error()) - case cognitoidentityprovider.ErrCodeInternalErrorException: - fmt.Println(cognitoidentityprovider.ErrCodeInternalErrorException, aerr.Error()) - default: - fmt.Println(aerr.Error()) - } - } else { - // Print the error, cast err to awserr.Error to get the Code and - // Message from an error. - fmt.Println(err.Error()) - } - return - } - - fmt.Println(result) -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/comprehend/api.go golang-github-aws-aws-sdk-go-1.48.14/service/comprehend/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/comprehend/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/comprehend/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -168,10 +168,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - BatchSizeLimitExceededException @@ -264,10 +262,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - BatchSizeLimitExceededException @@ -361,10 +357,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - BatchSizeLimitExceededException @@ -460,10 +454,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - BatchSizeLimitExceededException @@ -541,7 +533,8 @@ // Inspects a batch of documents and returns a sentiment analysis for each entity // identified in the documents. // -// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html). +// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html) +// in the Amazon Comprehend Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -559,10 +552,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - BatchSizeLimitExceededException @@ -637,15 +628,24 @@ // ClassifyDocument API operation for Amazon Comprehend. // -// Creates a new document classification request to analyze a single document -// in real-time, using a previously created and trained custom model and an -// endpoint. +// Creates a classification request to analyze a single document in real-time. +// ClassifyDocument supports the following model types: // -// You can input plain text or you can upload a single-page input document (text, -// PDF, Word, or image). +// - Custom classifier - a custom model that you have created and trained. +// For input, you can provide plain text, a single-page document (PDF, Word, +// or image), or Amazon Textract API output. For more information, see Custom +// classification (https://docs.aws.amazon.com/comprehend/latest/dg/how-document-classification.html) +// in the Amazon Comprehend Developer Guide. +// +// - Prompt safety classifier - Amazon Comprehend provides a pre-trained +// model for classifying input prompts for generative AI applications. For +// input, you provide English plain text input. For prompt safety classification, +// the response includes only the Classes field. For more information about +// prompt safety classifiers, see Prompt safety classification (https://docs.aws.amazon.com/comprehend/latest/dg/trust-safety.html#prompt-classification) +// in the Amazon Comprehend Developer Guide. // // If the system detects errors while processing a page in the input document, -// the API response includes an entry in Errors that describes the errors. +// the API response includes an Errors field that describes the errors. // // If the system detects a document-level error in your input document, the // API returns an InvalidRequestException error response. For details about @@ -759,10 +759,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -973,10 +971,8 @@ // resources, and then try your request again. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - KmsKeyValidationException @@ -1192,10 +1188,8 @@ // resources, and then try your request again. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - KmsKeyValidationException @@ -1318,10 +1312,8 @@ // resources, and then try your request again. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - KmsKeyValidationException @@ -3456,10 +3448,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -3548,10 +3538,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -3641,10 +3629,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -3734,10 +3720,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -3828,10 +3812,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -3905,7 +3887,8 @@ // Inspects the input text and returns a sentiment analysis for each entity // identified in the text. // -// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html). +// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html) +// in the Amazon Comprehend Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3923,10 +3906,8 @@ // The size of the input text exceeds the limit. Use a smaller document. // // - UnsupportedLanguageException -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. // // - InternalServerException @@ -3954,6 +3935,100 @@ return out, req.Send() } +const opDetectToxicContent = "DetectToxicContent" + +// DetectToxicContentRequest generates a "aws/request.Request" representing the +// client's request for the DetectToxicContent 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 DetectToxicContent for more information on using the DetectToxicContent +// 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 DetectToxicContentRequest method. +// req, resp := client.DetectToxicContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectToxicContent +func (c *Comprehend) DetectToxicContentRequest(input *DetectToxicContentInput) (req *request.Request, output *DetectToxicContentOutput) { + op := &request.Operation{ + Name: opDetectToxicContent, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DetectToxicContentInput{} + } + + output = &DetectToxicContentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DetectToxicContent API operation for Amazon Comprehend. +// +// Performs toxicity analysis on the list of text strings that you provide as +// input. The API response contains a results list that matches the size of +// the input list. For more information about toxicity detection, see Toxicity +// detection (https://docs.aws.amazon.com/comprehend/latest/dg/toxicity-detection.html) +// in the Amazon Comprehend Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Comprehend's +// API operation DetectToxicContent for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is invalid. +// +// - TextSizeLimitExceededException +// The size of the input text exceeds the limit. Use a smaller document. +// +// - UnsupportedLanguageException +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// in the Comprehend Developer Guide. +// +// - InternalServerException +// An internal server error occurred. Retry your request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectToxicContent +func (c *Comprehend) DetectToxicContent(input *DetectToxicContentInput) (*DetectToxicContentOutput, error) { + req, out := c.DetectToxicContentRequest(input) + return out, req.Send() +} + +// DetectToxicContentWithContext is the same as DetectToxicContent with the addition of +// the ability to pass a context and additional request options. +// +// See DetectToxicContent for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Comprehend) DetectToxicContentWithContext(ctx aws.Context, input *DetectToxicContentInput, opts ...request.Option) (*DetectToxicContentOutput, error) { + req, out := c.DetectToxicContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opImportModel = "ImportModel" // ImportModelRequest generates a "aws/request.Request" representing the @@ -6765,8 +6840,9 @@ // StartDocumentClassificationJob API operation for Amazon Comprehend. // -// Starts an asynchronous document classification job. Use the DescribeDocumentClassificationJob -// operation to track the progress of the job. +// Starts an asynchronous document classification job using a custom classification +// model. Use the DescribeDocumentClassificationJob operation to track the progress +// of the job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -10615,9 +10691,14 @@ type ClassifyDocumentInput struct { _ struct{} `type:"structure"` - // Use the Bytes parameter to input a text, PDF, Word or image file. You can - // also use the Bytes parameter to input an Amazon Textract DetectDocumentText - // or AnalyzeDocument output file. + // Use the Bytes parameter to input a text, PDF, Word or image file. + // + // When you classify a document using a custom model, you can also use the Bytes + // parameter to input an Amazon Textract DetectDocumentText or AnalyzeDocument + // output file. + // + // To classify a document using the prompt safety classifier, use the Text parameter + // for input. // // Provide the input document as a sequence of base64-encoded bytes. If your // code uses an Amazon Web Services SDK to classify documents, the SDK may encode @@ -10635,8 +10716,15 @@ // text from PDF documents and image files. DocumentReaderConfig *DocumentReaderConfig `type:"structure"` - // The Amazon Resource Number (ARN) of the endpoint. For information about endpoints, - // see Managing endpoints (https://docs.aws.amazon.com/comprehend/latest/dg/manage-endpoints.html). + // The Amazon Resource Number (ARN) of the endpoint. + // + // For prompt safety classification, Amazon Comprehend provides the endpoint + // ARN. For more information about prompt safety classifiers, see Prompt safety + // classification (https://docs.aws.amazon.com/comprehend/latest/dg/trust-safety.html#prompt-classification) + // in the Amazon Comprehend Developer Guide + // + // For custom classification, you create an endpoint for your custom model. + // For more information, see Using Amazon Comprehend endpoints (https://docs.aws.amazon.com/comprehend/latest/dg/using-endpoints.html). // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` @@ -10719,10 +10807,14 @@ type ClassifyDocumentOutput struct { _ struct{} `type:"structure" sensitive:"true"` - // The classes used by the document being analyzed. These are used for multi-class - // trained models. Individual classes are mutually exclusive and each document - // is expected to have only a single class assigned to it. For example, an animal - // can be a dog or a cat, but not both at the same time. + // The classes used by the document being analyzed. These are used for models + // trained in multi-class mode. Individual classes are mutually exclusive and + // each document is expected to have only a single class assigned to it. For + // example, an animal can be a dog or a cat, but not both at the same time. + // + // For prompt safety classification, the response includes only two classes + // (SAFE_PROMPT and UNSAFE_PROMPT), along with a confidence score for each class. + // The value range of the score is zero to one, where one is the highest confidence. Classes []*DocumentClass `type:"list"` // Extraction information about the document. This field is present in the response @@ -10737,7 +10829,7 @@ // The field is empty if the system encountered no errors. Errors []*ErrorsListItem `type:"list"` - // The labels used the document being analyzed. These are used for multi-label + // The labels used in the document being analyzed. These are used for multi-label // trained models. Individual labels represent different categories that are // related in some manner and are not mutually exclusive. For example, a movie // can be just an action movie, or it can be an action movie, a science fiction @@ -11162,11 +11254,11 @@ LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"` // Indicates the mode in which the classifier will be trained. The classifier - // can be trained in multi-class mode, which identifies one and only one class - // for each document, or multi-label mode, which identifies one or more labels - // for each document. In multi-label mode, multiple labels for an individual - // document are separated by a delimiter. The default delimiter between labels - // is a pipe (|). + // can be trained in multi-class (single-label) mode or multi-label mode. Multi-class + // mode identifies a single class label for each document and multi-label mode + // identifies one or more class labels for each document. Multiple labels for + // an individual document are separated by a delimiter. The default delimiter + // between labels is a pipe (|). Mode *string `type:"string" enum:"DocumentClassifierMode"` // ID for the KMS key that Amazon Comprehend uses to encrypt trained custom @@ -11195,8 +11287,7 @@ ModelPolicy *string `min:"1" type:"string"` // Specifies the location for the output files from a custom classifier job. - // This parameter is required for a request that creates a native classifier - // model. + // This parameter is required for a request that creates a native document model. OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"` // Tags to associate with the document classifier. A tag is a key-value pair @@ -11839,7 +11930,8 @@ _ struct{} `type:"structure"` // To associate an existing model with the flywheel, specify the Amazon Resource - // Number (ARN) of the model version. + // Number (ARN) of the model version. Do not set TaskConfig or ModelType if + // you specify an ActiveModelArn. ActiveModelArn *string `type:"string"` // A unique identifier for the request. If you don't set the client request @@ -11867,13 +11959,15 @@ // FlywheelName is a required field FlywheelName *string `type:"string" required:"true"` - // The model type. + // The model type. You need to set ModelType if you are creating a flywheel + // for a new model. ModelType *string `type:"string" enum:"ModelType"` // The tags to associate with this flywheel. Tags []*Tag `type:"list"` - // Configuration about the custom classifier associated with the flywheel. + // Configuration about the model associated with the flywheel. You need to set + // TaskConfig if you are creating a flywheel for a new model. TaskConfig *TaskConfig `type:"structure"` } @@ -15293,6 +15387,119 @@ return s } +type DetectToxicContentInput struct { + _ struct{} `type:"structure"` + + // The language of the input text. Currently, English is the only supported + // language. + // + // LanguageCode is a required field + LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"` + + // A list of up to 10 text strings. Each string has a maximum size of 1 KB, + // and the maximum size of the list is 10 KB. + // + // TextSegments is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DetectToxicContentInput's + // String and GoString methods. + // + // TextSegments is a required field + TextSegments []*TextSegment `min:"1" type:"list" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectToxicContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectToxicContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DetectToxicContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetectToxicContentInput"} + if s.LanguageCode == nil { + invalidParams.Add(request.NewErrParamRequired("LanguageCode")) + } + if s.TextSegments == nil { + invalidParams.Add(request.NewErrParamRequired("TextSegments")) + } + if s.TextSegments != nil && len(s.TextSegments) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TextSegments", 1)) + } + if s.TextSegments != nil { + for i, v := range s.TextSegments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TextSegments", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLanguageCode sets the LanguageCode field's value. +func (s *DetectToxicContentInput) SetLanguageCode(v string) *DetectToxicContentInput { + s.LanguageCode = &v + return s +} + +// SetTextSegments sets the TextSegments field's value. +func (s *DetectToxicContentInput) SetTextSegments(v []*TextSegment) *DetectToxicContentInput { + s.TextSegments = v + return s +} + +type DetectToxicContentOutput struct { + _ struct{} `type:"structure"` + + // Results of the content moderation analysis. Each entry in the results list + // contains a list of toxic content types identified in the text, along with + // a confidence score for each content type. The results list also includes + // a toxicity score for each entry in the results list. + ResultList []*ToxicLabels `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 DetectToxicContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectToxicContentOutput) GoString() string { + return s.String() +} + +// SetResultList sets the ResultList field's value. +func (s *DetectToxicContentOutput) SetResultList(v []*ToxicLabels) *DetectToxicContentOutput { + s.ResultList = v + return s +} + // Specifies the class that categorizes the document being analyzed type DocumentClass struct { _ struct{} `type:"structure"` @@ -15344,7 +15551,7 @@ return s } -// Configuration required for a custom classification model. +// Configuration required for a document classification model. type DocumentClassificationConfig struct { _ struct{} `type:"structure"` @@ -15544,7 +15751,7 @@ // Configuration parameters for a private Virtual Private Cloud (VPC) containing // the resources you are using for your document classification job. For more - // information, see Amazon VPC (https://docs.aws.amazon.com/vppc/latest/userguide/what-is-amazon-vpc.html). + // information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html). VpcConfig *VpcConfig `type:"structure"` } @@ -15651,7 +15858,7 @@ } // The location of the training documents. This parameter is required in a request -// to create a native classifier model. +// to create a semi-structured document classification model. type DocumentClassifierDocuments struct { _ struct{} `type:"structure"` @@ -15828,11 +16035,11 @@ // The type of input documents for training the model. Provide plain-text documents // to create a plain-text model, and provide semi-structured documents to create - // a native model. + // a native document model. DocumentType *string `type:"string" enum:"DocumentClassifierDocumentTypeFormat"` // The S3 location of the training documents. This parameter is required in - // a request to create a native classifier model. + // a request to create a native document model. Documents *DocumentClassifierDocuments `type:"structure"` // Indicates the delimiter used to separate each label for training a multi-label @@ -15854,9 +16061,9 @@ // This parameter is required if you set DataFormat to COMPREHEND_CSV. S3Uri *string `type:"string"` - // This specifies the Amazon S3 location where the test annotations for an entity - // recognizer are located. The URI must be in the same Amazon Web Services Region - // as the API endpoint that you are calling. + // This specifies the Amazon S3 location that contains the test annotations + // for the document classifier. The URI must be in the same Amazon Web Services + // Region as the API endpoint that you are calling. TestS3Uri *string `type:"string"` } @@ -15960,7 +16167,7 @@ } // Provide the location for output data from a custom classifier job. This field -// is mandatory if you are training a native classifier model. +// is mandatory if you are training a native document model. type DocumentClassifierOutputDataConfig struct { _ struct{} `type:"structure"` @@ -16124,7 +16331,7 @@ // Configuration parameters for a private Virtual Private Cloud (VPC) containing // the resources you are using for your custom classifier. For more information, - // see Amazon VPC (https://docs.aws.amazon.com/vppc/latest/userguide/what-is-amazon-vpc.html). + // see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html). VpcConfig *VpcConfig `type:"structure"` } @@ -16470,10 +16677,10 @@ // Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT // as the read action, you must specify one or both of the following values: // - // * TABLES - Returns information about any tables that are detected in the - // input document. + // * TABLES - Returns additional information about any tables that are detected + // in the input document. // - // * FORMS - Returns information and the data from any forms that are detected + // * FORMS - Returns additional information about any forms that are detected // in the input document. FeatureTypes []*string `min:"1" type:"list" enum:"DocumentReadFeatureTypes"` } @@ -18449,7 +18656,7 @@ // // Entity types must not contain the following invalid characters: \n (line // break), \\n (escaped line break, \r (carriage return), \\r (escaped carriage - // return), \t (tab), \\t (escaped tab), space, and , (comma). + // return), \t (tab), \\t (escaped tab), and , (comma). // // Type is a required field Type *string `type:"string" required:"true"` @@ -19130,7 +19337,7 @@ // The status of the flywheel. Status *string `type:"string" enum:"FlywheelStatus"` - // Configuration about the custom classifier associated with the flywheel. + // Configuration about the model associated with a flywheel. TaskConfig *TaskConfig `type:"structure"` } @@ -19736,23 +19943,33 @@ return s.RespMetadata.RequestID } -// Provides additional detail about why the request failed: -// -// - Document size is too large - Check the size of your file and resubmit -// the request. -// -// - Document type is not supported - Check the file type and resubmit the -// request. -// -// - Too many pages in the document - Check the number of pages in your file -// and resubmit the request. -// -// - Access denied to Amazon Textract - Verify that your account has permission -// to use Amazon Textract API operations and resubmit the request. +// Provides additional detail about why the request failed. type InvalidRequestDetail struct { _ struct{} `type:"structure"` - // Reason code is INVALID_DOCUMENT. + // Reason codes include the following values: + // + // * DOCUMENT_SIZE_EXCEEDED - Document size is too large. Check the size + // of your file and resubmit the request. + // + // * UNSUPPORTED_DOC_TYPE - Document type is not supported. Check the file + // type and resubmit the request. + // + // * PAGE_LIMIT_EXCEEDED - Too many pages in the document. Check the number + // of pages in your file and resubmit the request. + // + // * TEXTRACT_ACCESS_DENIED - Access denied to Amazon Textract. Verify that + // your account has permission to use Amazon Textract API operations and + // resubmit the request. + // + // * NOT_TEXTRACT_JSON - Document is not Amazon Textract JSON format. Verify + // the format and resubmit the request. + // + // * MISMATCHED_TOTAL_PAGE_COUNT - Check the number of pages in your file + // and resubmit the request. + // + // * INVALID_DOCUMENT - Invalid document. Check the file and resubmit the + // request. Reason *string `type:"string" enum:"InvalidRequestDetailReason"` } @@ -19785,19 +20002,7 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Provides additional detail about why the request failed: - // - // * Document size is too large - Check the size of your file and resubmit - // the request. - // - // * Document type is not supported - Check the file type and resubmit the - // request. - // - // * Too many pages in the document - Check the number of pages in your file - // and resubmit the request. - // - // * Access denied to Amazon Textract - Verify that your account has permission - // to use Amazon Textract API operations and resubmit the request. + // Provides additional detail about why the request failed. Detail *InvalidRequestDetail `type:"structure"` Message_ *string `locationName:"Message" min:"1" type:"string"` @@ -22246,7 +22451,8 @@ // Contains the sentiment and sentiment score for one mention of an entity. // -// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html). +// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html) +// in the Amazon Comprehend Developer Guide. type MentionSentiment struct { _ struct{} `type:"structure"` @@ -22293,8 +22499,11 @@ _ struct{} `type:"structure"` // ID for the Amazon Web Services Key Management Service (KMS) key that Amazon - // Comprehend uses to encrypt the output results from an analysis job. The KmsKeyId - // can be one of the following formats: + // Comprehend uses to encrypt the output results from an analysis job. Specify + // the Key Id of a symmetric key, because you cannot use an asymmetric key for + // uploading data to S3. + // + // The KmsKeyId can be one of the following formats: // // * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab" // @@ -25454,7 +25663,7 @@ // The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend // read access to your input data. For more information, see Role-based permissions - // (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions). + // (https://docs.aws.amazon.com/comprehend/latest/dg/security_iam_id-based-policy-examples.html#auth-role-permissions). // // DataAccessRoleArn is a required field DataAccessRoleArn *string `min:"20" type:"string" required:"true"` @@ -27189,7 +27398,8 @@ // Information about one of the entities found by targeted sentiment analysis. // -// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html). +// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html) +// in the Amazon Comprehend Developer Guide. type TargetedSentimentEntity struct { _ struct{} `type:"structure"` @@ -27236,7 +27446,8 @@ // Information about one mention of an entity. The mention information includes // the location of the mention in the text and the sentiment of the mention. // -// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html). +// For more information about targeted sentiment, see Targeted sentiment (https://docs.aws.amazon.com/comprehend/latest/dg/how-targeted-sentiment.html) +// in the Amazon Comprehend Developer Guide. type TargetedSentimentMention struct { _ struct{} `type:"structure"` @@ -27325,11 +27536,11 @@ return s } -// Configuration about the custom classifier associated with the flywheel. +// Configuration about the model associated with a flywheel. type TaskConfig struct { _ struct{} `type:"structure"` - // Configuration required for a classification model. + // Configuration required for a document classification model. DocumentClassificationConfig *DocumentClassificationConfig `type:"structure"` // Configuration required for an entity recognition model. @@ -27400,6 +27611,60 @@ return s } +// One of the of text strings. Each string has a size limit of 1KB. +type TextSegment struct { + _ struct{} `type:"structure"` + + // The text content. + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TextSegment's + // String and GoString methods. + // + // Text is a required field + Text *string `min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextSegment) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TextSegment) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TextSegment"} + if s.Text == nil { + invalidParams.Add(request.NewErrParamRequired("Text")) + } + if s.Text != nil && len(*s.Text) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Text", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetText sets the Text field's value. +func (s *TextSegment) SetText(v string) *TextSegment { + s.Text = &v + return s +} + // The size of the input text exceeds the limit. Use a smaller document. type TextSizeLimitExceededException struct { _ struct{} `type:"structure"` @@ -27899,10 +28164,96 @@ return s } -// Amazon Comprehend can't process the language of the input text. For custom -// entity recognition APIs, only English, Spanish, French, Italian, German, -// or Portuguese are accepted. For a list of supported languages, Supported -// languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) +// Toxic content analysis result for one string. For more information about +// toxicity detection, see Toxicity detection (https://docs.aws.amazon.com/comprehend/latest/dg/toxicity-detection.html) +// in the Amazon Comprehend Developer Guide +type ToxicContent struct { + _ struct{} `type:"structure"` + + // The name of the toxic content type. + Name *string `type:"string" enum:"ToxicContentType"` + + // Model confidence in the detected content type. Value range is zero to one, + // where one is highest confidence. + Score *float64 `type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ToxicContent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ToxicContent) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ToxicContent) SetName(v string) *ToxicContent { + s.Name = &v + return s +} + +// SetScore sets the Score field's value. +func (s *ToxicContent) SetScore(v float64) *ToxicContent { + s.Score = &v + return s +} + +// Toxicity analysis result for one string. For more information about toxicity +// detection, see Toxicity detection (https://docs.aws.amazon.com/comprehend/latest/dg/toxicity-detection.html) +// in the Amazon Comprehend Developer Guide. +type ToxicLabels struct { + _ struct{} `type:"structure"` + + // Array of toxic content types identified in the string. + Labels []*ToxicContent `type:"list"` + + // Overall toxicity score for the string. Value range is zero to one, where + // one is the highest confidence. + Toxicity *float64 `type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ToxicLabels) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ToxicLabels) GoString() string { + return s.String() +} + +// SetLabels sets the Labels field's value. +func (s *ToxicLabels) SetLabels(v []*ToxicContent) *ToxicLabels { + s.Labels = v + return s +} + +// SetToxicity sets the Toxicity field's value. +func (s *ToxicLabels) SetToxicity(v float64) *ToxicLabels { + s.Toxicity = &v + return s +} + +// Amazon Comprehend can't process the language of the input text. For a list +// of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. type UnsupportedLanguageException struct { _ struct{} `type:"structure"` @@ -28442,7 +28793,7 @@ // input document: // // - The document to classify is plain text, but the classifier is a native -// model. +// document model. // // - The document to classify is semi-structured, but the classifier is a // plain-text model. @@ -28643,14 +28994,7 @@ } } -// Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT -// as the read action, you must specify one or both of the following values: -// -// - TABLES - Returns additional information about any tables that are detected -// in the input document. -// -// - FORMS - Returns additional information about any forms that are detected -// in the input document. +// TABLES or FORMS const ( // DocumentReadFeatureTypesTables is a DocumentReadFeatureTypes enum value DocumentReadFeatureTypesTables = "TABLES" @@ -29534,3 +29878,39 @@ TargetedSentimentEntityTypeOther, } } + +const ( + // ToxicContentTypeGraphic is a ToxicContentType enum value + ToxicContentTypeGraphic = "GRAPHIC" + + // ToxicContentTypeHarassmentOrAbuse is a ToxicContentType enum value + ToxicContentTypeHarassmentOrAbuse = "HARASSMENT_OR_ABUSE" + + // ToxicContentTypeHateSpeech is a ToxicContentType enum value + ToxicContentTypeHateSpeech = "HATE_SPEECH" + + // ToxicContentTypeInsult is a ToxicContentType enum value + ToxicContentTypeInsult = "INSULT" + + // ToxicContentTypeProfanity is a ToxicContentType enum value + ToxicContentTypeProfanity = "PROFANITY" + + // ToxicContentTypeSexual is a ToxicContentType enum value + ToxicContentTypeSexual = "SEXUAL" + + // ToxicContentTypeViolenceOrThreat is a ToxicContentType enum value + ToxicContentTypeViolenceOrThreat = "VIOLENCE_OR_THREAT" +) + +// ToxicContentType_Values returns all elements of the ToxicContentType enum +func ToxicContentType_Values() []string { + return []string{ + ToxicContentTypeGraphic, + ToxicContentTypeHarassmentOrAbuse, + ToxicContentTypeHateSpeech, + ToxicContentTypeInsult, + ToxicContentTypeProfanity, + ToxicContentTypeSexual, + ToxicContentTypeViolenceOrThreat, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/comprehend/comprehendiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/comprehend/comprehendiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/comprehend/comprehendiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/comprehend/comprehendiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -224,6 +224,10 @@ DetectTargetedSentimentWithContext(aws.Context, *comprehend.DetectTargetedSentimentInput, ...request.Option) (*comprehend.DetectTargetedSentimentOutput, error) DetectTargetedSentimentRequest(*comprehend.DetectTargetedSentimentInput) (*request.Request, *comprehend.DetectTargetedSentimentOutput) + DetectToxicContent(*comprehend.DetectToxicContentInput) (*comprehend.DetectToxicContentOutput, error) + DetectToxicContentWithContext(aws.Context, *comprehend.DetectToxicContentInput, ...request.Option) (*comprehend.DetectToxicContentOutput, error) + DetectToxicContentRequest(*comprehend.DetectToxicContentInput) (*request.Request, *comprehend.DetectToxicContentOutput) + ImportModel(*comprehend.ImportModelInput) (*comprehend.ImportModelOutput, error) ImportModelWithContext(aws.Context, *comprehend.ImportModelInput, ...request.Option) (*comprehend.ImportModelOutput, error) ImportModelRequest(*comprehend.ImportModelInput) (*request.Request, *comprehend.ImportModelOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/comprehend/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/comprehend/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/comprehend/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/comprehend/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -111,10 +111,8 @@ // ErrCodeUnsupportedLanguageException for service response error code // "UnsupportedLanguageException". // - // Amazon Comprehend can't process the language of the input text. For custom - // entity recognition APIs, only English, Spanish, French, Italian, German, - // or Portuguese are accepted. For a list of supported languages, Supported - // languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) + // Amazon Comprehend can't process the language of the input text. For a list + // of supported languages, Supported languages (https://docs.aws.amazon.com/comprehend/latest/dg/supported-languages.html) // in the Comprehend Developer Guide. ErrCodeUnsupportedLanguageException = "UnsupportedLanguageException" ) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/computeoptimizer/api.go golang-github-aws-aws-sdk-go-1.48.14/service/computeoptimizer/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/computeoptimizer/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/computeoptimizer/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2942,6 +2942,49 @@ return s } +// An object that describes the estimated monthly savings possible by adopting +// Compute Optimizer’s Auto Scaling group recommendations. This is based on +// the Savings Plans and Reserved Instances discounts. +type AutoScalingGroupEstimatedMonthlySavings struct { + _ struct{} `type:"structure"` + + // The currency of the estimated monthly savings. + Currency *string `locationName:"currency" type:"string" enum:"Currency"` + + // The value of the estimated monthly savings. + Value *float64 `locationName:"value" 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 AutoScalingGroupEstimatedMonthlySavings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoScalingGroupEstimatedMonthlySavings) GoString() string { + return s.String() +} + +// SetCurrency sets the Currency field's value. +func (s *AutoScalingGroupEstimatedMonthlySavings) SetCurrency(v string) *AutoScalingGroupEstimatedMonthlySavings { + s.Currency = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AutoScalingGroupEstimatedMonthlySavings) SetValue(v float64) *AutoScalingGroupEstimatedMonthlySavings { + s.Value = &v + return s +} + // Describes an Auto Scaling group recommendation. type AutoScalingGroupRecommendation struct { _ struct{} `type:"structure"` @@ -3181,6 +3224,12 @@ // recommendation option. Savings opportunity includes the estimated monthly // savings amount and percentage. SavingsOpportunity *SavingsOpportunity `locationName:"savingsOpportunity" type:"structure"` + + // An object that describes the savings opportunity for the Auto Scaling group + // recommendation option that includes Savings Plans and Reserved Instances + // discounts. Savings opportunity includes the estimated monthly savings and + // percentage. + SavingsOpportunityAfterDiscounts *AutoScalingGroupSavingsOpportunityAfterDiscounts `locationName:"savingsOpportunityAfterDiscounts" type:"structure"` } // String returns the string representation. @@ -3243,6 +3292,61 @@ return s } +// SetSavingsOpportunityAfterDiscounts sets the SavingsOpportunityAfterDiscounts field's value. +func (s *AutoScalingGroupRecommendationOption) SetSavingsOpportunityAfterDiscounts(v *AutoScalingGroupSavingsOpportunityAfterDiscounts) *AutoScalingGroupRecommendationOption { + s.SavingsOpportunityAfterDiscounts = v + return s +} + +// Describes the savings opportunity for Auto Scaling group recommendations +// after applying the Savings Plans and Reserved Instances discounts. +// +// Savings opportunity represents the estimated monthly savings you can achieve +// by implementing Compute Optimizer recommendations. +type AutoScalingGroupSavingsOpportunityAfterDiscounts struct { + _ struct{} `type:"structure"` + + // An object that describes the estimated monthly savings possible by adopting + // Compute Optimizer’s Auto Scaling group recommendations. This is based on + // the Savings Plans and Reserved Instances pricing discounts. + EstimatedMonthlySavings *AutoScalingGroupEstimatedMonthlySavings `locationName:"estimatedMonthlySavings" type:"structure"` + + // The estimated monthly savings possible as a percentage of monthly cost after + // applying the Savings Plans and Reserved Instances discounts. This saving + // can be achieved by adopting Compute Optimizer’s Auto Scaling group recommendations. + SavingsOpportunityPercentage *float64 `locationName:"savingsOpportunityPercentage" 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 AutoScalingGroupSavingsOpportunityAfterDiscounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoScalingGroupSavingsOpportunityAfterDiscounts) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *AutoScalingGroupSavingsOpportunityAfterDiscounts) SetEstimatedMonthlySavings(v *AutoScalingGroupEstimatedMonthlySavings) *AutoScalingGroupSavingsOpportunityAfterDiscounts { + s.EstimatedMonthlySavings = v + return s +} + +// SetSavingsOpportunityPercentage sets the SavingsOpportunityPercentage field's value. +func (s *AutoScalingGroupSavingsOpportunityAfterDiscounts) SetSavingsOpportunityPercentage(v float64) *AutoScalingGroupSavingsOpportunityAfterDiscounts { + s.SavingsOpportunityPercentage = &v + return s +} + // Describes the container configurations within the tasks of your Amazon ECS // service. type ContainerConfiguration struct { @@ -3409,6 +3513,49 @@ return s } +// Defines the various metric parameters that can be customized, such as threshold +// and headroom. +type CustomizableMetricParameters struct { + _ struct{} `type:"structure"` + + // The headroom threshold value in percentage used for the specified metric + // parameter. + Headroom *string `locationName:"headroom" type:"string" enum:"CustomizableMetricHeadroom"` + + // The threshold value used for the specified metric parameter. + Threshold *string `locationName:"threshold" type:"string" enum:"CustomizableMetricThreshold"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomizableMetricParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomizableMetricParameters) GoString() string { + return s.String() +} + +// SetHeadroom sets the Headroom field's value. +func (s *CustomizableMetricParameters) SetHeadroom(v string) *CustomizableMetricParameters { + s.Headroom = &v + return s +} + +// SetThreshold sets the Threshold field's value. +func (s *CustomizableMetricParameters) SetThreshold(v string) *CustomizableMetricParameters { + s.Threshold = &v + return s +} + type DeleteRecommendationPreferencesInput struct { _ struct{} `type:"structure"` @@ -3622,6 +3769,82 @@ return s } +// Describes the effective recommendation preferences for Amazon EBS volumes. +type EBSEffectiveRecommendationPreferences struct { + _ struct{} `type:"structure"` + + // Describes the savings estimation mode preference applied for calculating + // savings opportunity for Amazon EBS volumes. + SavingsEstimationMode *EBSSavingsEstimationMode `locationName:"savingsEstimationMode" 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 EBSEffectiveRecommendationPreferences) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EBSEffectiveRecommendationPreferences) GoString() string { + return s.String() +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *EBSEffectiveRecommendationPreferences) SetSavingsEstimationMode(v *EBSSavingsEstimationMode) *EBSEffectiveRecommendationPreferences { + s.SavingsEstimationMode = v + return s +} + +// An object that describes the estimated monthly savings possible by adopting +// Compute Optimizer’s Amazon EBS volume recommendations. This includes any +// applicable discounts. +type EBSEstimatedMonthlySavings struct { + _ struct{} `type:"structure"` + + // The currency of the estimated monthly savings. + Currency *string `locationName:"currency" type:"string" enum:"Currency"` + + // The value of the estimated monthly savings. + Value *float64 `locationName:"value" 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 EBSEstimatedMonthlySavings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EBSEstimatedMonthlySavings) GoString() string { + return s.String() +} + +// SetCurrency sets the Currency field's value. +func (s *EBSEstimatedMonthlySavings) SetCurrency(v string) *EBSEstimatedMonthlySavings { + s.Currency = &v + return s +} + +// SetValue sets the Value field's value. +func (s *EBSEstimatedMonthlySavings) SetValue(v float64) *EBSEstimatedMonthlySavings { + s.Value = &v + return s +} + // Describes a filter that returns a more specific list of Amazon Elastic Block // Store (Amazon EBS) volume recommendations. Use this filter with the GetEBSVolumeRecommendations // action. @@ -3690,6 +3913,86 @@ return s } +// Describes the savings estimation mode used for calculating savings opportunity +// for Amazon EBS volumes. +type EBSSavingsEstimationMode struct { + _ struct{} `type:"structure"` + + // Describes the source for calculating the savings opportunity for Amazon EBS + // volumes. + Source *string `locationName:"source" type:"string" enum:"EBSSavingsEstimationModeSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EBSSavingsEstimationMode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EBSSavingsEstimationMode) GoString() string { + return s.String() +} + +// SetSource sets the Source field's value. +func (s *EBSSavingsEstimationMode) SetSource(v string) *EBSSavingsEstimationMode { + s.Source = &v + return s +} + +// Describes the savings opportunity for Amazon EBS volume recommendations after +// applying specific discounts. +type EBSSavingsOpportunityAfterDiscounts struct { + _ struct{} `type:"structure"` + + // The estimated monthly savings possible as a percentage of monthly cost by + // adopting Compute Optimizer’s Amazon EBS volume recommendations. This saving + // includes any applicable discounts. + EstimatedMonthlySavings *EBSEstimatedMonthlySavings `locationName:"estimatedMonthlySavings" type:"structure"` + + // The estimated monthly savings possible as a percentage of monthly cost after + // applying the specific discounts. This saving can be achieved by adopting + // Compute Optimizer’s Amazon EBS volume recommendations. + SavingsOpportunityPercentage *float64 `locationName:"savingsOpportunityPercentage" 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 EBSSavingsOpportunityAfterDiscounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EBSSavingsOpportunityAfterDiscounts) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *EBSSavingsOpportunityAfterDiscounts) SetEstimatedMonthlySavings(v *EBSEstimatedMonthlySavings) *EBSSavingsOpportunityAfterDiscounts { + s.EstimatedMonthlySavings = v + return s +} + +// SetSavingsOpportunityPercentage sets the SavingsOpportunityPercentage field's value. +func (s *EBSSavingsOpportunityAfterDiscounts) SetSavingsOpportunityPercentage(v float64) *EBSSavingsOpportunityAfterDiscounts { + s.SavingsOpportunityPercentage = &v + return s +} + // Describes a utilization metric of an Amazon Elastic Block Store (Amazon EBS) // volume. // @@ -3771,6 +4074,166 @@ return s } +// Describes the effective recommendation preferences for Amazon ECS services. +type ECSEffectiveRecommendationPreferences struct { + _ struct{} `type:"structure"` + + // Describes the savings estimation mode preference applied for calculating + // savings opportunity for Amazon ECS services. + SavingsEstimationMode *ECSSavingsEstimationMode `locationName:"savingsEstimationMode" 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 ECSEffectiveRecommendationPreferences) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ECSEffectiveRecommendationPreferences) GoString() string { + return s.String() +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *ECSEffectiveRecommendationPreferences) SetSavingsEstimationMode(v *ECSSavingsEstimationMode) *ECSEffectiveRecommendationPreferences { + s.SavingsEstimationMode = v + return s +} + +// Describes the estimated monthly savings possible for Amazon ECS services +// by adopting Compute Optimizer recommendations. This is based on Amazon ECS +// service pricing after applying Savings Plans discounts. +type ECSEstimatedMonthlySavings struct { + _ struct{} `type:"structure"` + + // The currency of the estimated monthly savings. + Currency *string `locationName:"currency" type:"string" enum:"Currency"` + + // The value of the estimated monthly savings for Amazon ECS services. + Value *float64 `locationName:"value" 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 ECSEstimatedMonthlySavings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ECSEstimatedMonthlySavings) GoString() string { + return s.String() +} + +// SetCurrency sets the Currency field's value. +func (s *ECSEstimatedMonthlySavings) SetCurrency(v string) *ECSEstimatedMonthlySavings { + s.Currency = &v + return s +} + +// SetValue sets the Value field's value. +func (s *ECSEstimatedMonthlySavings) SetValue(v float64) *ECSEstimatedMonthlySavings { + s.Value = &v + return s +} + +// Describes the savings estimation mode used for calculating savings opportunity +// for Amazon ECS services. +type ECSSavingsEstimationMode struct { + _ struct{} `type:"structure"` + + // Describes the source for calculating the savings opportunity for Amazon ECS + // services. + Source *string `locationName:"source" type:"string" enum:"ECSSavingsEstimationModeSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ECSSavingsEstimationMode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ECSSavingsEstimationMode) GoString() string { + return s.String() +} + +// SetSource sets the Source field's value. +func (s *ECSSavingsEstimationMode) SetSource(v string) *ECSSavingsEstimationMode { + s.Source = &v + return s +} + +// Describes the savings opportunity for Amazon ECS service recommendations +// after applying Savings Plans discounts. +// +// Savings opportunity represents the estimated monthly savings after applying +// Savings Plans discounts. You can achieve this by implementing a given Compute +// Optimizer recommendation. +type ECSSavingsOpportunityAfterDiscounts struct { + _ struct{} `type:"structure"` + + // The estimated monthly savings possible by adopting Compute Optimizer’s + // Amazon ECS service recommendations. This includes any applicable Savings + // Plans discounts. + EstimatedMonthlySavings *ECSEstimatedMonthlySavings `locationName:"estimatedMonthlySavings" type:"structure"` + + // The estimated monthly savings possible as a percentage of monthly cost by + // adopting Compute Optimizer’s Amazon ECS service recommendations. This includes + // any applicable Savings Plans discounts. + SavingsOpportunityPercentage *float64 `locationName:"savingsOpportunityPercentage" 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 ECSSavingsOpportunityAfterDiscounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ECSSavingsOpportunityAfterDiscounts) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *ECSSavingsOpportunityAfterDiscounts) SetEstimatedMonthlySavings(v *ECSEstimatedMonthlySavings) *ECSSavingsOpportunityAfterDiscounts { + s.EstimatedMonthlySavings = v + return s +} + +// SetSavingsOpportunityPercentage sets the SavingsOpportunityPercentage field's value. +func (s *ECSSavingsOpportunityAfterDiscounts) SetSavingsOpportunityPercentage(v float64) *ECSSavingsOpportunityAfterDiscounts { + s.SavingsOpportunityPercentage = &v + return s +} + // Describes the projected metrics of an Amazon ECS service recommendation option. // // To determine the performance difference between your current Amazon ECS service @@ -3941,6 +4404,9 @@ // The configuration of the current Amazon ECS service. CurrentServiceConfiguration *ServiceConfiguration `locationName:"currentServiceConfiguration" type:"structure"` + // Describes the effective recommendation preferences for Amazon ECS services. + EffectiveRecommendationPreferences *ECSEffectiveRecommendationPreferences `locationName:"effectiveRecommendationPreferences" type:"structure"` + // The finding classification of an Amazon ECS service. // // Findings for Amazon ECS services include: @@ -4049,6 +4515,12 @@ return s } +// SetEffectiveRecommendationPreferences sets the EffectiveRecommendationPreferences field's value. +func (s *ECSServiceRecommendation) SetEffectiveRecommendationPreferences(v *ECSEffectiveRecommendationPreferences) *ECSServiceRecommendation { + s.EffectiveRecommendationPreferences = v + return s +} + // SetFinding sets the Finding field's value. func (s *ECSServiceRecommendation) SetFinding(v string) *ECSServiceRecommendation { s.Finding = &v @@ -4208,6 +4680,14 @@ // and Optimizing your cost with Rightsizing Recommendations (https://docs.aws.amazon.com/cost-management/latest/userguide/ce-rightsizing.html) // in the Cost Management User Guide. SavingsOpportunity *SavingsOpportunity `locationName:"savingsOpportunity" type:"structure"` + + // Describes the savings opportunity for Amazon ECS service recommendations + // or for the recommendation option. + // + // Savings opportunity represents the estimated monthly savings after applying + // Savings Plans discounts. You can achieve this by implementing a given Compute + // Optimizer recommendation. + SavingsOpportunityAfterDiscounts *ECSSavingsOpportunityAfterDiscounts `locationName:"savingsOpportunityAfterDiscounts" type:"structure"` } // String returns the string representation. @@ -4258,6 +4738,12 @@ return s } +// SetSavingsOpportunityAfterDiscounts sets the SavingsOpportunityAfterDiscounts field's value. +func (s *ECSServiceRecommendationOption) SetSavingsOpportunityAfterDiscounts(v *ECSSavingsOpportunityAfterDiscounts) *ECSServiceRecommendationOption { + s.SavingsOpportunityAfterDiscounts = v + return s +} + // Describes the projected metrics of an Amazon ECS service recommendation option. // // To determine the performance difference between your current Amazon ECS service @@ -4384,6 +4870,70 @@ return s } +// Describes the effective preferred resources that Compute Optimizer considers +// as rightsizing recommendation candidates. +// +// Compute Optimizer only supports Amazon EC2 instance types. +type EffectivePreferredResource struct { + _ struct{} `type:"structure"` + + // The expanded version of your preferred resource's include list. + EffectiveIncludeList []*string `locationName:"effectiveIncludeList" type:"list"` + + // The list of preferred resources values that you want excluded from rightsizing + // recommendation candidates. + ExcludeList []*string `locationName:"excludeList" type:"list"` + + // The list of preferred resource values that you want considered as rightsizing + // recommendation candidates. + IncludeList []*string `locationName:"includeList" type:"list"` + + // The name of the preferred resource list. + Name *string `locationName:"name" type:"string" enum:"PreferredResourceName"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EffectivePreferredResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EffectivePreferredResource) GoString() string { + return s.String() +} + +// SetEffectiveIncludeList sets the EffectiveIncludeList field's value. +func (s *EffectivePreferredResource) SetEffectiveIncludeList(v []*string) *EffectivePreferredResource { + s.EffectiveIncludeList = v + return s +} + +// SetExcludeList sets the ExcludeList field's value. +func (s *EffectivePreferredResource) SetExcludeList(v []*string) *EffectivePreferredResource { + s.ExcludeList = v + return s +} + +// SetIncludeList sets the IncludeList field's value. +func (s *EffectivePreferredResource) SetIncludeList(v []*string) *EffectivePreferredResource { + s.IncludeList = v + return s +} + +// SetName sets the Name field's value. +func (s *EffectivePreferredResource) SetName(v string) *EffectivePreferredResource { + s.Name = &v + return s +} + // Describes the effective recommendation preferences for a resource. type EffectiveRecommendationPreferences struct { _ struct{} `type:"structure"` @@ -4430,6 +4980,24 @@ // recommendation refresh. A status of Inactive confirms that it's not yet applied // to recommendations. InferredWorkloadTypes *string `locationName:"inferredWorkloadTypes" type:"string" enum:"InferredWorkloadTypesPreference"` + + // The number of days the utilization metrics of the Amazon Web Services resource + // are analyzed. + LookBackPeriod *string `locationName:"lookBackPeriod" type:"string" enum:"LookBackPeriodPreference"` + + // The resource type values that are considered as candidates when generating + // rightsizing recommendations. + PreferredResources []*EffectivePreferredResource `locationName:"preferredResources" type:"list"` + + // Describes the savings estimation mode applied for calculating savings opportunity + // for a resource. + SavingsEstimationMode *InstanceSavingsEstimationMode `locationName:"savingsEstimationMode" type:"structure"` + + // The resource’s CPU utilization threshold preferences, such as threshold + // and headroom, that are used to generate rightsizing recommendations. + // + // This preference is only available for the Amazon EC2 instance resource type. + UtilizationPreferences []*UtilizationPreference `locationName:"utilizationPreferences" type:"list"` } // String returns the string representation. @@ -4474,6 +5042,30 @@ return s } +// SetLookBackPeriod sets the LookBackPeriod field's value. +func (s *EffectiveRecommendationPreferences) SetLookBackPeriod(v string) *EffectiveRecommendationPreferences { + s.LookBackPeriod = &v + return s +} + +// SetPreferredResources sets the PreferredResources field's value. +func (s *EffectiveRecommendationPreferences) SetPreferredResources(v []*EffectivePreferredResource) *EffectiveRecommendationPreferences { + s.PreferredResources = v + return s +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *EffectiveRecommendationPreferences) SetSavingsEstimationMode(v *InstanceSavingsEstimationMode) *EffectiveRecommendationPreferences { + s.SavingsEstimationMode = v + return s +} + +// SetUtilizationPreferences sets the UtilizationPreferences field's value. +func (s *EffectiveRecommendationPreferences) SetUtilizationPreferences(v []*UtilizationPreference) *EffectiveRecommendationPreferences { + s.UtilizationPreferences = v + return s +} + // Describes a filter that returns a more specific list of account enrollment // statuses. Use this filter with the GetEnrollmentStatusesForOrganization action. type EnrollmentFilter struct { @@ -6815,6 +7407,38 @@ // For more information, see Enhanced infrastructure metrics (https://docs.aws.amazon.com/compute-optimizer/latest/ug/external-metrics-ingestion.html) // in the Compute Optimizer User Guide. ExternalMetricsPreference *ExternalMetricsPreference `locationName:"externalMetricsPreference" type:"structure"` + + // The number of days the utilization metrics of the Amazon Web Services resource + // are analyzed. + // + // To validate that the preference is applied to your last generated set of + // recommendations, review the effectiveRecommendationPreferences value in the + // response of the GetAutoScalingGroupRecommendations or GetEC2InstanceRecommendations + // actions. + LookBackPeriod *string `locationName:"lookBackPeriod" type:"string" enum:"LookBackPeriodPreference"` + + // The resource type values that are considered as candidates when generating + // rightsizing recommendations. This object resolves any wildcard expressions + // and returns the effective list of candidate resource type values. It also + // considers all applicable preferences that you set at the resource, account, + // and organization level. + // + // To validate that the preference is applied to your last generated set of + // recommendations, review the effectiveRecommendationPreferences value in the + // response of the GetAutoScalingGroupRecommendations or GetEC2InstanceRecommendations + // actions. + PreferredResources []*EffectivePreferredResource `locationName:"preferredResources" type:"list"` + + // The resource’s CPU utilization threshold preferences, such as threshold + // and headroom, that were used to generate rightsizing recommendations. It + // considers all applicable preferences that you set at the resource, account, + // and organization level. + // + // To validate that the preference is applied to your last generated set of + // recommendations, review the effectiveRecommendationPreferences value in the + // response of the GetAutoScalingGroupRecommendations or GetEC2InstanceRecommendations + // actions. + UtilizationPreferences []*UtilizationPreference `locationName:"utilizationPreferences" type:"list"` } // String returns the string representation. @@ -6847,6 +7471,24 @@ return s } +// SetLookBackPeriod sets the LookBackPeriod field's value. +func (s *GetEffectiveRecommendationPreferencesOutput) SetLookBackPeriod(v string) *GetEffectiveRecommendationPreferencesOutput { + s.LookBackPeriod = &v + return s +} + +// SetPreferredResources sets the PreferredResources field's value. +func (s *GetEffectiveRecommendationPreferencesOutput) SetPreferredResources(v []*EffectivePreferredResource) *GetEffectiveRecommendationPreferencesOutput { + s.PreferredResources = v + return s +} + +// SetUtilizationPreferences sets the UtilizationPreferences field's value. +func (s *GetEffectiveRecommendationPreferencesOutput) SetUtilizationPreferences(v []*UtilizationPreference) *GetEffectiveRecommendationPreferencesOutput { + s.UtilizationPreferences = v + return s +} + type GetEnrollmentStatusInput struct { _ struct{} `type:"structure"` } @@ -7729,6 +8371,49 @@ return s } +// An object that describes the estimated monthly savings possible by adopting +// Compute Optimizer’s Amazon EC2 instance recommendations. This is based +// on the Savings Plans and Reserved Instances pricing discounts. +type InstanceEstimatedMonthlySavings struct { + _ struct{} `type:"structure"` + + // The currency of the estimated monthly savings. + Currency *string `locationName:"currency" type:"string" enum:"Currency"` + + // The value of the estimated monthly savings. + Value *float64 `locationName:"value" 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 InstanceEstimatedMonthlySavings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceEstimatedMonthlySavings) GoString() string { + return s.String() +} + +// SetCurrency sets the Currency field's value. +func (s *InstanceEstimatedMonthlySavings) SetCurrency(v string) *InstanceEstimatedMonthlySavings { + s.Currency = &v + return s +} + +// SetValue sets the Value field's value. +func (s *InstanceEstimatedMonthlySavings) SetValue(v float64) *InstanceEstimatedMonthlySavings { + s.Value = &v + return s +} + // Describes an Amazon EC2 instance recommendation. type InstanceRecommendation struct { _ struct{} `type:"structure"` @@ -8212,6 +8897,11 @@ // option. Savings opportunity includes the estimated monthly savings amount // and percentage. SavingsOpportunity *SavingsOpportunity `locationName:"savingsOpportunity" type:"structure"` + + // An object that describes the savings opportunity for the instance recommendation + // option that includes Savings Plans and Reserved Instances discounts. Savings + // opportunity includes the estimated monthly savings and percentage. + SavingsOpportunityAfterDiscounts *InstanceSavingsOpportunityAfterDiscounts `locationName:"savingsOpportunityAfterDiscounts" type:"structure"` } // String returns the string representation. @@ -8280,6 +8970,95 @@ return s } +// SetSavingsOpportunityAfterDiscounts sets the SavingsOpportunityAfterDiscounts field's value. +func (s *InstanceRecommendationOption) SetSavingsOpportunityAfterDiscounts(v *InstanceSavingsOpportunityAfterDiscounts) *InstanceRecommendationOption { + s.SavingsOpportunityAfterDiscounts = v + return s +} + +// Describes the savings estimation mode used for calculating savings opportunity +// for Amazon EC2 instances. +type InstanceSavingsEstimationMode struct { + _ struct{} `type:"structure"` + + // Describes the source for calculating the savings opportunity for Amazon EC2 + // instances. + Source *string `locationName:"source" type:"string" enum:"InstanceSavingsEstimationModeSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceSavingsEstimationMode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceSavingsEstimationMode) GoString() string { + return s.String() +} + +// SetSource sets the Source field's value. +func (s *InstanceSavingsEstimationMode) SetSource(v string) *InstanceSavingsEstimationMode { + s.Source = &v + return s +} + +// Describes the savings opportunity for instance recommendations after applying +// the Savings Plans and Reserved Instances discounts. +// +// Savings opportunity after discounts represents the estimated monthly savings +// you can achieve by implementing Compute Optimizer recommendations. +type InstanceSavingsOpportunityAfterDiscounts struct { + _ struct{} `type:"structure"` + + // An object that describes the estimated monthly savings possible by adopting + // Compute Optimizer’s Amazon EC2 instance recommendations. This is based + // on pricing after applying the Savings Plans and Reserved Instances discounts. + EstimatedMonthlySavings *InstanceEstimatedMonthlySavings `locationName:"estimatedMonthlySavings" type:"structure"` + + // The estimated monthly savings possible as a percentage of monthly cost after + // applying the Savings Plans and Reserved Instances discounts. This saving + // can be achieved by adopting Compute Optimizer’s EC2 instance recommendations. + SavingsOpportunityPercentage *float64 `locationName:"savingsOpportunityPercentage" 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 InstanceSavingsOpportunityAfterDiscounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceSavingsOpportunityAfterDiscounts) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *InstanceSavingsOpportunityAfterDiscounts) SetEstimatedMonthlySavings(v *InstanceEstimatedMonthlySavings) *InstanceSavingsOpportunityAfterDiscounts { + s.EstimatedMonthlySavings = v + return s +} + +// SetSavingsOpportunityPercentage sets the SavingsOpportunityPercentage field's value. +func (s *InstanceSavingsOpportunityAfterDiscounts) SetSavingsOpportunityPercentage(v float64) *InstanceSavingsOpportunityAfterDiscounts { + s.SavingsOpportunityPercentage = &v + return s +} + // An internal error has occurred. Try your call again. type InternalServerException struct { _ struct{} `type:"structure"` @@ -8469,6 +9248,82 @@ return s } +// Describes the effective recommendation preferences for Lambda functions. +type LambdaEffectiveRecommendationPreferences struct { + _ struct{} `type:"structure"` + + // Describes the savings estimation mode applied for calculating savings opportunity + // for Lambda functions. + SavingsEstimationMode *LambdaSavingsEstimationMode `locationName:"savingsEstimationMode" 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 LambdaEffectiveRecommendationPreferences) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaEffectiveRecommendationPreferences) GoString() string { + return s.String() +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *LambdaEffectiveRecommendationPreferences) SetSavingsEstimationMode(v *LambdaSavingsEstimationMode) *LambdaEffectiveRecommendationPreferences { + s.SavingsEstimationMode = v + return s +} + +// Describes the estimated monthly savings possible for Lambda functions by +// adopting Compute Optimizer recommendations. This is based on Lambda functions +// pricing after applying Savings Plans discounts. +type LambdaEstimatedMonthlySavings struct { + _ struct{} `type:"structure"` + + // The currency of the estimated monthly savings. + Currency *string `locationName:"currency" type:"string" enum:"Currency"` + + // The value of the estimated monthly savings. + Value *float64 `locationName:"value" 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 LambdaEstimatedMonthlySavings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaEstimatedMonthlySavings) GoString() string { + return s.String() +} + +// SetCurrency sets the Currency field's value. +func (s *LambdaEstimatedMonthlySavings) SetCurrency(v string) *LambdaEstimatedMonthlySavings { + s.Currency = &v + return s +} + +// SetValue sets the Value field's value. +func (s *LambdaEstimatedMonthlySavings) SetValue(v float64) *LambdaEstimatedMonthlySavings { + s.Value = &v + return s +} + // Describes a projected utilization metric of an Lambda function recommendation // option. type LambdaFunctionMemoryProjectedMetric struct { @@ -8540,6 +9395,11 @@ // recommendation option. Savings opportunity includes the estimated monthly // savings amount and percentage. SavingsOpportunity *SavingsOpportunity `locationName:"savingsOpportunity" type:"structure"` + + // An object that describes the savings opportunity for the Lambda recommendation + // option which includes Saving Plans discounts. Savings opportunity includes + // the estimated monthly savings and percentage. + SavingsOpportunityAfterDiscounts *LambdaSavingsOpportunityAfterDiscounts `locationName:"savingsOpportunityAfterDiscounts" type:"structure"` } // String returns the string representation. @@ -8584,6 +9444,12 @@ return s } +// SetSavingsOpportunityAfterDiscounts sets the SavingsOpportunityAfterDiscounts field's value. +func (s *LambdaFunctionMemoryRecommendationOption) SetSavingsOpportunityAfterDiscounts(v *LambdaSavingsOpportunityAfterDiscounts) *LambdaFunctionMemoryRecommendationOption { + s.SavingsOpportunityAfterDiscounts = v + return s +} + // Describes an Lambda function recommendation. type LambdaFunctionRecommendation struct { _ struct{} `type:"structure"` @@ -8599,6 +9465,9 @@ // function requires more memory. CurrentPerformanceRisk *string `locationName:"currentPerformanceRisk" type:"string" enum:"CurrentPerformanceRisk"` + // Describes the effective recommendation preferences for Lambda functions. + EffectiveRecommendationPreferences *LambdaEffectiveRecommendationPreferences `locationName:"effectiveRecommendationPreferences" type:"structure"` + // The finding classification of the function. // // Findings for functions include: @@ -8717,6 +9586,12 @@ return s } +// SetEffectiveRecommendationPreferences sets the EffectiveRecommendationPreferences field's value. +func (s *LambdaFunctionRecommendation) SetEffectiveRecommendationPreferences(v *LambdaEffectiveRecommendationPreferences) *LambdaFunctionRecommendation { + s.EffectiveRecommendationPreferences = v + return s +} + // SetFinding sets the Finding field's value. func (s *LambdaFunctionRecommendation) SetFinding(v string) *LambdaFunctionRecommendation { s.Finding = &v @@ -8922,6 +9797,89 @@ return s } +// Describes the savings estimation used for calculating savings opportunity +// for Lambda functions. +type LambdaSavingsEstimationMode struct { + _ struct{} `type:"structure"` + + // Describes the source for calculation of savings opportunity for Lambda functions. + Source *string `locationName:"source" type:"string" enum:"LambdaSavingsEstimationModeSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaSavingsEstimationMode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaSavingsEstimationMode) GoString() string { + return s.String() +} + +// SetSource sets the Source field's value. +func (s *LambdaSavingsEstimationMode) SetSource(v string) *LambdaSavingsEstimationMode { + s.Source = &v + return s +} + +// Describes the savings opportunity for Lambda functions recommendations after +// applying Savings Plans discounts. +// +// Savings opportunity represents the estimated monthly savings after applying +// Savings Plans discounts. You can achieve this by implementing a given Compute +// Optimizer recommendation. +type LambdaSavingsOpportunityAfterDiscounts struct { + _ struct{} `type:"structure"` + + // The estimated monthly savings possible by adopting Compute Optimizer’s + // Lambda function recommendations. This includes any applicable Savings Plans + // discounts. + EstimatedMonthlySavings *LambdaEstimatedMonthlySavings `locationName:"estimatedMonthlySavings" type:"structure"` + + // The estimated monthly savings possible as a percentage of monthly cost by + // adopting Compute Optimizer’s Lambda function recommendations. This includes + // any applicable Savings Plans discounts. + SavingsOpportunityPercentage *float64 `locationName:"savingsOpportunityPercentage" 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 LambdaSavingsOpportunityAfterDiscounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaSavingsOpportunityAfterDiscounts) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *LambdaSavingsOpportunityAfterDiscounts) SetEstimatedMonthlySavings(v *LambdaEstimatedMonthlySavings) *LambdaSavingsOpportunityAfterDiscounts { + s.EstimatedMonthlySavings = v + return s +} + +// SetSavingsOpportunityPercentage sets the SavingsOpportunityPercentage field's value. +func (s *LambdaSavingsOpportunityAfterDiscounts) SetSavingsOpportunityPercentage(v float64) *LambdaSavingsOpportunityAfterDiscounts { + s.SavingsOpportunityPercentage = &v + return s +} + // Describes the configuration of a license for an Amazon EC2 instance. type LicenseConfiguration struct { _ struct{} `type:"structure"` @@ -9585,6 +10543,74 @@ return s.RespMetadata.RequestID } +// The preference to control which resource type values are considered when +// generating rightsizing recommendations. You can specify this preference as +// a combination of include and exclude lists. You must specify either an includeList +// or excludeList. If the preference is an empty set of resource type values, +// an error occurs. For more information, see Rightsizing recommendation preferences +// (https://docs.aws.amazon.com/compute-optimizer/latest/ug/rightsizing-preferences.html) +// in the Compute Optimizer User Guide. +// +// - This preference is only available for the Amazon EC2 instance and Auto +// Scaling group resource types. +// +// - Compute Optimizer only supports the customization of Ec2InstanceTypes. +type PreferredResource struct { + _ struct{} `type:"structure"` + + // The preferred resource type values to exclude from the recommendation candidates. + // If this isn’t specified, all supported resources are included by default. + // You can specify up to 1000 values in this list. + ExcludeList []*string `locationName:"excludeList" type:"list"` + + // The preferred resource type values to include in the recommendation candidates. + // You can specify the exact resource type value, such as m5.large, or use wild + // card expressions, such as m5. If this isn’t specified, all supported resources + // are included by default. You can specify up to 1000 values in this list. + IncludeList []*string `locationName:"includeList" type:"list"` + + // The type of preferred resource to customize. + // + // Compute Optimizer only supports the customization of Ec2InstanceTypes. + Name *string `locationName:"name" type:"string" enum:"PreferredResourceName"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreferredResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreferredResource) GoString() string { + return s.String() +} + +// SetExcludeList sets the ExcludeList field's value. +func (s *PreferredResource) SetExcludeList(v []*string) *PreferredResource { + s.ExcludeList = v + return s +} + +// SetIncludeList sets the IncludeList field's value. +func (s *PreferredResource) SetIncludeList(v []*string) *PreferredResource { + s.IncludeList = v + return s +} + +// SetName sets the Name field's value. +func (s *PreferredResource) SetName(v string) *PreferredResource { + s.Name = &v + return s +} + // Describes a projected utilization metric of a recommendation option, such // as an Amazon EC2 instance. This represents the projected utilization of a // recommendation option had you used that resource during the analyzed period. @@ -9712,6 +10738,24 @@ // in the Compute Optimizer User Guide. InferredWorkloadTypes *string `locationName:"inferredWorkloadTypes" type:"string" enum:"InferredWorkloadTypesPreference"` + // The preference to control the number of days the utilization metrics of the + // Amazon Web Services resource are analyzed. When this preference isn't specified, + // we use the default value DAYS_14. + // + // You can only set this preference for the Amazon EC2 instance and Auto Scaling + // group resource types. + LookBackPeriod *string `locationName:"lookBackPeriod" type:"string" enum:"LookBackPeriodPreference"` + + // The preference to control which resource type values are considered when + // generating rightsizing recommendations. You can specify this preference as + // a combination of include and exclude lists. You must specify either an includeList + // or excludeList. If the preference is an empty set of resource type values, + // an error occurs. + // + // You can only set this preference for the Amazon EC2 instance and Auto Scaling + // group resource types. + PreferredResources []*PreferredResource `locationName:"preferredResources" type:"list"` + // The target resource type of the recommendation preference to create. // // The Ec2Instance option encompasses standalone instances and instances that @@ -9723,6 +10767,18 @@ // ResourceType is a required field ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` + // The status of the savings estimation mode preference to create or update. + // + // Specify the AfterDiscounts status to activate the preference, or specify + // BeforeDiscounts to deactivate the preference. + // + // Only the account manager or delegated administrator of your organization + // can activate this preference. + // + // For more information, see Savings estimation mode (https://docs.aws.amazon.com/compute-optimizer/latest/ug/savings-estimation-mode.html) + // in the Compute Optimizer User Guide. + SavingsEstimationMode *string `locationName:"savingsEstimationMode" type:"string" enum:"SavingsEstimationMode"` + // An object that describes the scope of the recommendation preference to create. // // You can create recommendation preferences at the organization level (for @@ -9741,6 +10797,17 @@ // Scaling group. You can create recommendation preferences at the resource // level only for standalone instances. Scope *Scope `locationName:"scope" type:"structure"` + + // The preference to control the resource’s CPU utilization thresholds - threshold + // and headroom. When this preference isn't specified, we use the following + // default values: + // + // * P99_5 for threshold + // + // * PERCENT_17 for headroom + // + // You can only set this preference for the Amazon EC2 instance resource type. + UtilizationPreferences []*UtilizationPreference `locationName:"utilizationPreferences" type:"list"` } // String returns the string representation. @@ -9792,18 +10859,42 @@ return s } +// SetLookBackPeriod sets the LookBackPeriod field's value. +func (s *PutRecommendationPreferencesInput) SetLookBackPeriod(v string) *PutRecommendationPreferencesInput { + s.LookBackPeriod = &v + return s +} + +// SetPreferredResources sets the PreferredResources field's value. +func (s *PutRecommendationPreferencesInput) SetPreferredResources(v []*PreferredResource) *PutRecommendationPreferencesInput { + s.PreferredResources = v + return s +} + // SetResourceType sets the ResourceType field's value. func (s *PutRecommendationPreferencesInput) SetResourceType(v string) *PutRecommendationPreferencesInput { s.ResourceType = &v return s } +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *PutRecommendationPreferencesInput) SetSavingsEstimationMode(v string) *PutRecommendationPreferencesInput { + s.SavingsEstimationMode = &v + return s +} + // SetScope sets the Scope field's value. func (s *PutRecommendationPreferencesInput) SetScope(v *Scope) *PutRecommendationPreferencesInput { s.Scope = v return s } +// SetUtilizationPreferences sets the UtilizationPreferences field's value. +func (s *PutRecommendationPreferencesInput) SetUtilizationPreferences(v []*UtilizationPreference) *PutRecommendationPreferencesInput { + s.UtilizationPreferences = v + return s +} + type PutRecommendationPreferencesOutput struct { _ struct{} `type:"structure"` } @@ -10036,6 +11127,17 @@ // confirms that the preference isn't yet applied to recommendations. InferredWorkloadTypes *string `locationName:"inferredWorkloadTypes" type:"string" enum:"InferredWorkloadTypesPreference"` + // The preference to control the number of days the utilization metrics of the + // Amazon Web Services resource are analyzed. If the preference isn’t set, + // this object is null. + LookBackPeriod *string `locationName:"lookBackPeriod" type:"string" enum:"LookBackPeriodPreference"` + + // The preference to control which resource type values are considered when + // generating rightsizing recommendations. This object resolves any wildcard + // expressions and returns the effective list of candidate resource type values. + // If the preference isn’t set, this object is null. + PreferredResources []*EffectivePreferredResource `locationName:"preferredResources" type:"list"` + // The target resource type of the recommendation preference to create. // // The Ec2Instance option encompasses standalone instances and instances that @@ -10043,6 +11145,12 @@ // only instances that are part of an Auto Scaling group. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + // Describes the savings estimation mode used for calculating savings opportunity. + // + // Only the account manager or delegated administrator of your organization + // can activate this preference. + SavingsEstimationMode *string `locationName:"savingsEstimationMode" type:"string" enum:"SavingsEstimationMode"` + // An object that describes the scope of the recommendation preference. // // Recommendation preferences can be created at the organization level (for @@ -10051,6 +11159,12 @@ // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html) // in the Compute Optimizer User Guide. Scope *Scope `locationName:"scope" type:"structure"` + + // The preference to control the resource’s CPU utilization thresholds - threshold + // and headroom. If the preference isn’t set, this object is null. + // + // This preference is only available for the Amazon EC2 instance resource type. + UtilizationPreferences []*UtilizationPreference `locationName:"utilizationPreferences" type:"list"` } // String returns the string representation. @@ -10089,18 +11203,42 @@ return s } +// SetLookBackPeriod sets the LookBackPeriod field's value. +func (s *RecommendationPreferencesDetail) SetLookBackPeriod(v string) *RecommendationPreferencesDetail { + s.LookBackPeriod = &v + return s +} + +// SetPreferredResources sets the PreferredResources field's value. +func (s *RecommendationPreferencesDetail) SetPreferredResources(v []*EffectivePreferredResource) *RecommendationPreferencesDetail { + s.PreferredResources = v + return s +} + // SetResourceType sets the ResourceType field's value. func (s *RecommendationPreferencesDetail) SetResourceType(v string) *RecommendationPreferencesDetail { s.ResourceType = &v return s } +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *RecommendationPreferencesDetail) SetSavingsEstimationMode(v string) *RecommendationPreferencesDetail { + s.SavingsEstimationMode = &v + return s +} + // SetScope sets the Scope field's value. func (s *RecommendationPreferencesDetail) SetScope(v *Scope) *RecommendationPreferencesDetail { s.Scope = v return s } +// SetUtilizationPreferences sets the UtilizationPreferences field's value. +func (s *RecommendationPreferencesDetail) SetUtilizationPreferences(v []*UtilizationPreference) *RecommendationPreferencesDetail { + s.UtilizationPreferences = v + return s +} + // Describes the source of a recommendation, such as an Amazon EC2 instance // or Auto Scaling group. type RecommendationSource struct { @@ -11162,6 +12300,52 @@ return s } +// The preference to control the resource’s CPU utilization thresholds - threshold +// and headroom. +// +// This preference is only available for the Amazon EC2 instance resource type. +type UtilizationPreference struct { + _ struct{} `type:"structure"` + + // The name of the resource utilization metric name to customize. + // + // Compute Optimizer only supports CpuUtilization. + MetricName *string `locationName:"metricName" type:"string" enum:"CustomizableMetricName"` + + // The parameters to set when customizing the resource utilization thresholds. + MetricParameters *CustomizableMetricParameters `locationName:"metricParameters" 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 UtilizationPreference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtilizationPreference) GoString() string { + return s.String() +} + +// SetMetricName sets the MetricName field's value. +func (s *UtilizationPreference) SetMetricName(v string) *UtilizationPreference { + s.MetricName = &v + return s +} + +// SetMetricParameters sets the MetricParameters field's value. +func (s *UtilizationPreference) SetMetricParameters(v *CustomizableMetricParameters) *UtilizationPreference { + s.MetricParameters = v + return s +} + // Describes the configuration of an Amazon Elastic Block Store (Amazon EBS) // volume. type VolumeConfiguration struct { @@ -11268,6 +12452,9 @@ // have sufficient capacity. CurrentPerformanceRisk *string `locationName:"currentPerformanceRisk" type:"string" enum:"CurrentPerformanceRisk"` + // Describes the effective recommendation preferences for Amazon EBS volume. + EffectiveRecommendationPreferences *EBSEffectiveRecommendationPreferences `locationName:"effectiveRecommendationPreferences" type:"structure"` + // The finding classification of the volume. // // Findings for volumes include: @@ -11337,6 +12524,12 @@ return s } +// SetEffectiveRecommendationPreferences sets the EffectiveRecommendationPreferences field's value. +func (s *VolumeRecommendation) SetEffectiveRecommendationPreferences(v *EBSEffectiveRecommendationPreferences) *VolumeRecommendation { + s.EffectiveRecommendationPreferences = v + return s +} + // SetFinding sets the Finding field's value. func (s *VolumeRecommendation) SetFinding(v string) *VolumeRecommendation { s.Finding = &v @@ -11408,6 +12601,11 @@ // option. Savings opportunity includes the estimated monthly savings amount // and percentage. SavingsOpportunity *SavingsOpportunity `locationName:"savingsOpportunity" type:"structure"` + + // An object that describes the savings opportunity for the Amazon EBS volume + // recommendation option with specific discounts. Savings opportunity includes + // the estimated monthly savings and percentage. + SavingsOpportunityAfterDiscounts *EBSSavingsOpportunityAfterDiscounts `locationName:"savingsOpportunityAfterDiscounts" type:"structure"` } // String returns the string representation. @@ -11452,6 +12650,12 @@ return s } +// SetSavingsOpportunityAfterDiscounts sets the SavingsOpportunityAfterDiscounts field's value. +func (s *VolumeRecommendationOption) SetSavingsOpportunityAfterDiscounts(v *EBSSavingsOpportunityAfterDiscounts) *VolumeRecommendationOption { + s.SavingsOpportunityAfterDiscounts = v + return s +} + const ( // AutoScalingConfigurationTargetTrackingScalingCpu is a AutoScalingConfiguration enum value AutoScalingConfigurationTargetTrackingScalingCpu = "TargetTrackingScalingCpu" @@ -11525,6 +12729,58 @@ } const ( + // CustomizableMetricHeadroomPercent30 is a CustomizableMetricHeadroom enum value + CustomizableMetricHeadroomPercent30 = "PERCENT_30" + + // CustomizableMetricHeadroomPercent20 is a CustomizableMetricHeadroom enum value + CustomizableMetricHeadroomPercent20 = "PERCENT_20" + + // CustomizableMetricHeadroomPercent0 is a CustomizableMetricHeadroom enum value + CustomizableMetricHeadroomPercent0 = "PERCENT_0" +) + +// CustomizableMetricHeadroom_Values returns all elements of the CustomizableMetricHeadroom enum +func CustomizableMetricHeadroom_Values() []string { + return []string{ + CustomizableMetricHeadroomPercent30, + CustomizableMetricHeadroomPercent20, + CustomizableMetricHeadroomPercent0, + } +} + +const ( + // CustomizableMetricNameCpuUtilization is a CustomizableMetricName enum value + CustomizableMetricNameCpuUtilization = "CpuUtilization" +) + +// CustomizableMetricName_Values returns all elements of the CustomizableMetricName enum +func CustomizableMetricName_Values() []string { + return []string{ + CustomizableMetricNameCpuUtilization, + } +} + +const ( + // CustomizableMetricThresholdP90 is a CustomizableMetricThreshold enum value + CustomizableMetricThresholdP90 = "P90" + + // CustomizableMetricThresholdP95 is a CustomizableMetricThreshold enum value + CustomizableMetricThresholdP95 = "P95" + + // CustomizableMetricThresholdP995 is a CustomizableMetricThreshold enum value + CustomizableMetricThresholdP995 = "P99_5" +) + +// CustomizableMetricThreshold_Values returns all elements of the CustomizableMetricThreshold enum +func CustomizableMetricThreshold_Values() []string { + return []string{ + CustomizableMetricThresholdP90, + CustomizableMetricThresholdP95, + CustomizableMetricThresholdP995, + } +} + +const ( // EBSFilterNameFinding is a EBSFilterName enum value EBSFilterNameFinding = "Finding" ) @@ -11577,6 +12833,46 @@ } const ( + // EBSSavingsEstimationModeSourcePublicPricing is a EBSSavingsEstimationModeSource enum value + EBSSavingsEstimationModeSourcePublicPricing = "PublicPricing" + + // EBSSavingsEstimationModeSourceCostExplorerRightsizing is a EBSSavingsEstimationModeSource enum value + EBSSavingsEstimationModeSourceCostExplorerRightsizing = "CostExplorerRightsizing" + + // EBSSavingsEstimationModeSourceCostOptimizationHub is a EBSSavingsEstimationModeSource enum value + EBSSavingsEstimationModeSourceCostOptimizationHub = "CostOptimizationHub" +) + +// EBSSavingsEstimationModeSource_Values returns all elements of the EBSSavingsEstimationModeSource enum +func EBSSavingsEstimationModeSource_Values() []string { + return []string{ + EBSSavingsEstimationModeSourcePublicPricing, + EBSSavingsEstimationModeSourceCostExplorerRightsizing, + EBSSavingsEstimationModeSourceCostOptimizationHub, + } +} + +const ( + // ECSSavingsEstimationModeSourcePublicPricing is a ECSSavingsEstimationModeSource enum value + ECSSavingsEstimationModeSourcePublicPricing = "PublicPricing" + + // ECSSavingsEstimationModeSourceCostExplorerRightsizing is a ECSSavingsEstimationModeSource enum value + ECSSavingsEstimationModeSourceCostExplorerRightsizing = "CostExplorerRightsizing" + + // ECSSavingsEstimationModeSourceCostOptimizationHub is a ECSSavingsEstimationModeSource enum value + ECSSavingsEstimationModeSourceCostOptimizationHub = "CostOptimizationHub" +) + +// ECSSavingsEstimationModeSource_Values returns all elements of the ECSSavingsEstimationModeSource enum +func ECSSavingsEstimationModeSource_Values() []string { + return []string{ + ECSSavingsEstimationModeSourcePublicPricing, + ECSSavingsEstimationModeSourceCostExplorerRightsizing, + ECSSavingsEstimationModeSourceCostOptimizationHub, + } +} + +const ( // ECSServiceLaunchTypeEc2 is a ECSServiceLaunchType enum value ECSServiceLaunchTypeEc2 = "EC2" @@ -11892,6 +13188,24 @@ // ExportableAutoScalingGroupFieldRecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum is a ExportableAutoScalingGroupField enum value ExportableAutoScalingGroupFieldRecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum = "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" + + // ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesSavingsEstimationMode is a ExportableAutoScalingGroupField enum value + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesSavingsEstimationMode = "EffectiveRecommendationPreferencesSavingsEstimationMode" + + // ExportableAutoScalingGroupFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage is a ExportableAutoScalingGroupField enum value + ExportableAutoScalingGroupFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage = "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" + + // ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts is a ExportableAutoScalingGroupField enum value + ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" + + // ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts is a ExportableAutoScalingGroupField enum value + ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" + + // ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesPreferredResources is a ExportableAutoScalingGroupField enum value + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesPreferredResources = "EffectiveRecommendationPreferencesPreferredResources" + + // ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesLookBackPeriod is a ExportableAutoScalingGroupField enum value + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesLookBackPeriod = "EffectiveRecommendationPreferencesLookBackPeriod" ) // ExportableAutoScalingGroupField_Values returns all elements of the ExportableAutoScalingGroupField enum @@ -11957,6 +13271,12 @@ ExportableAutoScalingGroupFieldUtilizationMetricsGpuMemoryPercentageMaximum, ExportableAutoScalingGroupFieldRecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum, ExportableAutoScalingGroupFieldRecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum, + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesSavingsEstimationMode, + ExportableAutoScalingGroupFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, + ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, + ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesPreferredResources, + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesLookBackPeriod, } } @@ -12032,6 +13352,18 @@ // ExportableECSServiceFieldTags is a ExportableECSServiceField enum value ExportableECSServiceFieldTags = "Tags" + + // ExportableECSServiceFieldEffectiveRecommendationPreferencesSavingsEstimationMode is a ExportableECSServiceField enum value + ExportableECSServiceFieldEffectiveRecommendationPreferencesSavingsEstimationMode = "EffectiveRecommendationPreferencesSavingsEstimationMode" + + // ExportableECSServiceFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage is a ExportableECSServiceField enum value + ExportableECSServiceFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage = "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" + + // ExportableECSServiceFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts is a ExportableECSServiceField enum value + ExportableECSServiceFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" + + // ExportableECSServiceFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts is a ExportableECSServiceField enum value + ExportableECSServiceFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ) // ExportableECSServiceField_Values returns all elements of the ExportableECSServiceField enum @@ -12061,6 +13393,10 @@ ExportableECSServiceFieldRecommendationOptionsProjectedUtilizationMetricsCpuMaximum, ExportableECSServiceFieldRecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, ExportableECSServiceFieldTags, + ExportableECSServiceFieldEffectiveRecommendationPreferencesSavingsEstimationMode, + ExportableECSServiceFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, + ExportableECSServiceFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, + ExportableECSServiceFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, } } @@ -12256,6 +13592,27 @@ // ExportableInstanceFieldIdle is a ExportableInstanceField enum value ExportableInstanceFieldIdle = "Idle" + + // ExportableInstanceFieldEffectiveRecommendationPreferencesPreferredResources is a ExportableInstanceField enum value + ExportableInstanceFieldEffectiveRecommendationPreferencesPreferredResources = "EffectiveRecommendationPreferencesPreferredResources" + + // ExportableInstanceFieldEffectiveRecommendationPreferencesLookBackPeriod is a ExportableInstanceField enum value + ExportableInstanceFieldEffectiveRecommendationPreferencesLookBackPeriod = "EffectiveRecommendationPreferencesLookBackPeriod" + + // ExportableInstanceFieldEffectiveRecommendationPreferencesUtilizationPreferences is a ExportableInstanceField enum value + ExportableInstanceFieldEffectiveRecommendationPreferencesUtilizationPreferences = "EffectiveRecommendationPreferencesUtilizationPreferences" + + // ExportableInstanceFieldEffectiveRecommendationPreferencesSavingsEstimationMode is a ExportableInstanceField enum value + ExportableInstanceFieldEffectiveRecommendationPreferencesSavingsEstimationMode = "EffectiveRecommendationPreferencesSavingsEstimationMode" + + // ExportableInstanceFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage is a ExportableInstanceField enum value + ExportableInstanceFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage = "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" + + // ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts is a ExportableInstanceField enum value + ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" + + // ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts is a ExportableInstanceField enum value + ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ) // ExportableInstanceField_Values returns all elements of the ExportableInstanceField enum @@ -12325,6 +13682,13 @@ ExportableInstanceFieldRecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum, ExportableInstanceFieldRecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum, ExportableInstanceFieldIdle, + ExportableInstanceFieldEffectiveRecommendationPreferencesPreferredResources, + ExportableInstanceFieldEffectiveRecommendationPreferencesLookBackPeriod, + ExportableInstanceFieldEffectiveRecommendationPreferencesUtilizationPreferences, + ExportableInstanceFieldEffectiveRecommendationPreferencesSavingsEstimationMode, + ExportableInstanceFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, + ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, + ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, } } @@ -12409,6 +13773,18 @@ // ExportableLambdaFunctionFieldTags is a ExportableLambdaFunctionField enum value ExportableLambdaFunctionFieldTags = "Tags" + + // ExportableLambdaFunctionFieldEffectiveRecommendationPreferencesSavingsEstimationMode is a ExportableLambdaFunctionField enum value + ExportableLambdaFunctionFieldEffectiveRecommendationPreferencesSavingsEstimationMode = "EffectiveRecommendationPreferencesSavingsEstimationMode" + + // ExportableLambdaFunctionFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage is a ExportableLambdaFunctionField enum value + ExportableLambdaFunctionFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage = "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" + + // ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts is a ExportableLambdaFunctionField enum value + ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" + + // ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts is a ExportableLambdaFunctionField enum value + ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ) // ExportableLambdaFunctionField_Values returns all elements of the ExportableLambdaFunctionField enum @@ -12441,6 +13817,10 @@ ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsCurrency, ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsValue, ExportableLambdaFunctionFieldTags, + ExportableLambdaFunctionFieldEffectiveRecommendationPreferencesSavingsEstimationMode, + ExportableLambdaFunctionFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, + ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, + ExportableLambdaFunctionFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, } } @@ -12629,6 +14009,18 @@ // ExportableVolumeFieldCurrentConfigurationRootVolume is a ExportableVolumeField enum value ExportableVolumeFieldCurrentConfigurationRootVolume = "CurrentConfigurationRootVolume" + + // ExportableVolumeFieldEffectiveRecommendationPreferencesSavingsEstimationMode is a ExportableVolumeField enum value + ExportableVolumeFieldEffectiveRecommendationPreferencesSavingsEstimationMode = "EffectiveRecommendationPreferencesSavingsEstimationMode" + + // ExportableVolumeFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage is a ExportableVolumeField enum value + ExportableVolumeFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage = "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" + + // ExportableVolumeFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts is a ExportableVolumeField enum value + ExportableVolumeFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" + + // ExportableVolumeFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts is a ExportableVolumeField enum value + ExportableVolumeFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts = "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" ) // ExportableVolumeField_Values returns all elements of the ExportableVolumeField enum @@ -12665,6 +14057,10 @@ ExportableVolumeFieldRootVolume, ExportableVolumeFieldTags, ExportableVolumeFieldCurrentConfigurationRootVolume, + ExportableVolumeFieldEffectiveRecommendationPreferencesSavingsEstimationMode, + ExportableVolumeFieldRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, + ExportableVolumeFieldRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, + ExportableVolumeFieldRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, } } @@ -12981,6 +14377,26 @@ } const ( + // InstanceSavingsEstimationModeSourcePublicPricing is a InstanceSavingsEstimationModeSource enum value + InstanceSavingsEstimationModeSourcePublicPricing = "PublicPricing" + + // InstanceSavingsEstimationModeSourceCostExplorerRightsizing is a InstanceSavingsEstimationModeSource enum value + InstanceSavingsEstimationModeSourceCostExplorerRightsizing = "CostExplorerRightsizing" + + // InstanceSavingsEstimationModeSourceCostOptimizationHub is a InstanceSavingsEstimationModeSource enum value + InstanceSavingsEstimationModeSourceCostOptimizationHub = "CostOptimizationHub" +) + +// InstanceSavingsEstimationModeSource_Values returns all elements of the InstanceSavingsEstimationModeSource enum +func InstanceSavingsEstimationModeSource_Values() []string { + return []string{ + InstanceSavingsEstimationModeSourcePublicPricing, + InstanceSavingsEstimationModeSourceCostExplorerRightsizing, + InstanceSavingsEstimationModeSourceCostOptimizationHub, + } +} + +const ( // InstanceStatePending is a InstanceState enum value InstanceStatePending = "pending" @@ -13177,6 +14593,26 @@ } const ( + // LambdaSavingsEstimationModeSourcePublicPricing is a LambdaSavingsEstimationModeSource enum value + LambdaSavingsEstimationModeSourcePublicPricing = "PublicPricing" + + // LambdaSavingsEstimationModeSourceCostExplorerRightsizing is a LambdaSavingsEstimationModeSource enum value + LambdaSavingsEstimationModeSourceCostExplorerRightsizing = "CostExplorerRightsizing" + + // LambdaSavingsEstimationModeSourceCostOptimizationHub is a LambdaSavingsEstimationModeSource enum value + LambdaSavingsEstimationModeSourceCostOptimizationHub = "CostOptimizationHub" +) + +// LambdaSavingsEstimationModeSource_Values returns all elements of the LambdaSavingsEstimationModeSource enum +func LambdaSavingsEstimationModeSource_Values() []string { + return []string{ + LambdaSavingsEstimationModeSourcePublicPricing, + LambdaSavingsEstimationModeSourceCostExplorerRightsizing, + LambdaSavingsEstimationModeSourceCostOptimizationHub, + } +} + +const ( // LicenseEditionEnterprise is a LicenseEdition enum value LicenseEditionEnterprise = "Enterprise" @@ -13293,6 +14729,26 @@ } const ( + // LookBackPeriodPreferenceDays14 is a LookBackPeriodPreference enum value + LookBackPeriodPreferenceDays14 = "DAYS_14" + + // LookBackPeriodPreferenceDays32 is a LookBackPeriodPreference enum value + LookBackPeriodPreferenceDays32 = "DAYS_32" + + // LookBackPeriodPreferenceDays93 is a LookBackPeriodPreference enum value + LookBackPeriodPreferenceDays93 = "DAYS_93" +) + +// LookBackPeriodPreference_Values returns all elements of the LookBackPeriodPreference enum +func LookBackPeriodPreference_Values() []string { + return []string{ + LookBackPeriodPreferenceDays14, + LookBackPeriodPreferenceDays32, + LookBackPeriodPreferenceDays93, + } +} + +const ( // MetricNameCpu is a MetricName enum value MetricNameCpu = "Cpu" @@ -13449,6 +14905,18 @@ } const ( + // PreferredResourceNameEc2instanceTypes is a PreferredResourceName enum value + PreferredResourceNameEc2instanceTypes = "Ec2InstanceTypes" +) + +// PreferredResourceName_Values returns all elements of the PreferredResourceName enum +func PreferredResourceName_Values() []string { + return []string{ + PreferredResourceNameEc2instanceTypes, + } +} + +const ( // RecommendationPreferenceNameEnhancedInfrastructureMetrics is a RecommendationPreferenceName enum value RecommendationPreferenceNameEnhancedInfrastructureMetrics = "EnhancedInfrastructureMetrics" @@ -13457,6 +14925,15 @@ // RecommendationPreferenceNameExternalMetricsPreference is a RecommendationPreferenceName enum value RecommendationPreferenceNameExternalMetricsPreference = "ExternalMetricsPreference" + + // RecommendationPreferenceNameLookBackPeriodPreference is a RecommendationPreferenceName enum value + RecommendationPreferenceNameLookBackPeriodPreference = "LookBackPeriodPreference" + + // RecommendationPreferenceNamePreferredResources is a RecommendationPreferenceName enum value + RecommendationPreferenceNamePreferredResources = "PreferredResources" + + // RecommendationPreferenceNameUtilizationPreferences is a RecommendationPreferenceName enum value + RecommendationPreferenceNameUtilizationPreferences = "UtilizationPreferences" ) // RecommendationPreferenceName_Values returns all elements of the RecommendationPreferenceName enum @@ -13465,6 +14942,9 @@ RecommendationPreferenceNameEnhancedInfrastructureMetrics, RecommendationPreferenceNameInferredWorkloadTypes, RecommendationPreferenceNameExternalMetricsPreference, + RecommendationPreferenceNameLookBackPeriodPreference, + RecommendationPreferenceNamePreferredResources, + RecommendationPreferenceNameUtilizationPreferences, } } @@ -13536,6 +15016,22 @@ } } +const ( + // SavingsEstimationModeAfterDiscounts is a SavingsEstimationMode enum value + SavingsEstimationModeAfterDiscounts = "AfterDiscounts" + + // SavingsEstimationModeBeforeDiscounts is a SavingsEstimationMode enum value + SavingsEstimationModeBeforeDiscounts = "BeforeDiscounts" +) + +// SavingsEstimationMode_Values returns all elements of the SavingsEstimationMode enum +func SavingsEstimationMode_Values() []string { + return []string{ + SavingsEstimationModeAfterDiscounts, + SavingsEstimationModeBeforeDiscounts, + } +} + const ( // ScopeNameOrganization is a ScopeName enum value ScopeNameOrganization = "Organization" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/configservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/configservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/configservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/configservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -7614,6 +7614,10 @@ // GetResourceConfigHistory API operation for AWS Config. // +// For accurate reporting on the compliance status, you must record the AWS::Config::ResourceCompliance +// resource type. For more information, see Selecting Which Resources Config +// Records (https://docs.aws.amazon.com/config/latest/developerguide/select-resources.html). +// // Returns a list of ConfigurationItems for the specified resource. The list // contains details about each state of the resource during the specified time // interval. If you specified a retention period to retain your ConfigurationItems @@ -9336,6 +9340,17 @@ // You have reached the limit of the number of configuration recorders you can // create. // +// - ValidationException +// The requested action is not valid. +// +// For PutStoredQuery, you will see this exception if there are missing required +// fields or if the input value fails the validation, or if you are trying to +// create more than 300 queries. +// +// For GetStoredQuery, ListStoredQuery, and DeleteStoredQuery you will see this +// exception if there are missing required fields or if the input value fails +// the validation. +// // - InvalidConfigurationRecorderNameException // You have provided a name for the configuration recorder that is not valid. // @@ -9571,8 +9586,10 @@ // PutDeliveryChannel API operation for AWS Config. // -// Creates a delivery channel object to deliver configuration information to -// an Amazon S3 bucket and Amazon SNS topic. +// Creates a delivery channel object to deliver configuration information and +// other compliance information to an Amazon S3 bucket and Amazon SNS topic. +// For more information, see Notifications that Config Sends to an Amazon SNS +// topic (https://docs.aws.amazon.com/config/latest/developerguide/notifications-for-AWS-Config.html). // // Before you can create a delivery channel, you must create a configuration // recorder. @@ -12710,7 +12727,7 @@ return s } -// The detailed configuration of a specified resource. +// The detailed configurations of a specified resource. type BaseConfigurationItem struct { _ struct{} `type:"structure"` @@ -12729,32 +12746,36 @@ // The description of the resource configuration. Configuration *string `locationName:"configuration" type:"string"` - // The time when the configuration recording was initiated. + // The time when the recording of configuration changes was initiated for the + // resource. ConfigurationItemCaptureTime *time.Time `locationName:"configurationItemCaptureTime" type:"timestamp"` - // The configuration item status. The valid values are: + // The time when configuration changes for the resource were delivered. + ConfigurationItemDeliveryTime *time.Time `locationName:"configurationItemDeliveryTime" type:"timestamp"` + + // The configuration item status. Valid values include: // - // * OK – The resource configuration has been updated + // * OK – The resource configuration has been updated. // - // * ResourceDiscovered – The resource was newly discovered + // * ResourceDiscovered – The resource was newly discovered. // - // * ResourceNotRecorded – The resource was discovered but its configuration - // was not recorded since the recorder excludes the recording of resources - // of this type + // * ResourceNotRecorded – The resource was discovered, but its configuration + // was not recorded since the recorder doesn't record resources of this type. // // * ResourceDeleted – The resource was deleted // - // * ResourceDeletedNotRecorded – The resource was deleted but its configuration - // was not recorded since the recorder excludes the recording of resources - // of this type - // - // The CIs do not incur any cost. + // * ResourceDeletedNotRecorded – The resource was deleted, but its configuration + // was not recorded since the recorder doesn't record resources of this type. ConfigurationItemStatus *string `locationName:"configurationItemStatus" type:"string" enum:"ConfigurationItemStatus"` // An identifier that indicates the ordering of the configuration items of a // resource. ConfigurationStateId *string `locationName:"configurationStateId" type:"string"` + // The recording frequency that Config uses to record configuration changes + // for the resource. + RecordingFrequency *string `locationName:"recordingFrequency" type:"string" enum:"RecordingFrequency"` + // The time stamp when the resource was created. ResourceCreationTime *time.Time `locationName:"resourceCreationTime" type:"timestamp"` @@ -12829,6 +12850,12 @@ return s } +// SetConfigurationItemDeliveryTime sets the ConfigurationItemDeliveryTime field's value. +func (s *BaseConfigurationItem) SetConfigurationItemDeliveryTime(v time.Time) *BaseConfigurationItem { + s.ConfigurationItemDeliveryTime = &v + return s +} + // SetConfigurationItemStatus sets the ConfigurationItemStatus field's value. func (s *BaseConfigurationItem) SetConfigurationItemStatus(v string) *BaseConfigurationItem { s.ConfigurationItemStatus = &v @@ -12841,6 +12868,12 @@ return s } +// SetRecordingFrequency sets the RecordingFrequency field's value. +func (s *BaseConfigurationItem) SetRecordingFrequency(v string) *BaseConfigurationItem { + s.RecordingFrequency = &v + return s +} + // SetResourceCreationTime sets the ResourceCreationTime field's value. func (s *BaseConfigurationItem) SetResourceCreationTime(v time.Time) *BaseConfigurationItem { s.ResourceCreationTime = &v @@ -14240,38 +14273,42 @@ // The description of the resource configuration. Configuration *string `locationName:"configuration" type:"string"` - // The time when the configuration recording was initiated. + // The time when the recording of configuration changes was initiated for the + // resource. ConfigurationItemCaptureTime *time.Time `locationName:"configurationItemCaptureTime" type:"timestamp"` + // The time when configuration changes for the resource were delivered. + ConfigurationItemDeliveryTime *time.Time `locationName:"configurationItemDeliveryTime" type:"timestamp"` + // Unique MD5 hash that represents the configuration item's state. // // You can use MD5 hash to compare the states of two or more configuration items // that are associated with the same resource. ConfigurationItemMD5Hash *string `locationName:"configurationItemMD5Hash" type:"string"` - // The configuration item status. The valid values are: + // The configuration item status. Valid values include: // // * OK – The resource configuration has been updated // // * ResourceDiscovered – The resource was newly discovered // // * ResourceNotRecorded – The resource was discovered but its configuration - // was not recorded since the recorder excludes the recording of resources - // of this type + // was not recorded since the recorder doesn't record resources of this type // // * ResourceDeleted – The resource was deleted // // * ResourceDeletedNotRecorded – The resource was deleted but its configuration - // was not recorded since the recorder excludes the recording of resources - // of this type - // - // The CIs do not incur any cost. + // was not recorded since the recorder doesn't record resources of this type ConfigurationItemStatus *string `locationName:"configurationItemStatus" type:"string" enum:"ConfigurationItemStatus"` // An identifier that indicates the ordering of the configuration items of a // resource. ConfigurationStateId *string `locationName:"configurationStateId" type:"string"` + // The recording frequency that Config uses to record configuration changes + // for the resource. + RecordingFrequency *string `locationName:"recordingFrequency" type:"string" enum:"RecordingFrequency"` + // A list of CloudTrail event IDs. // // A populated field indicates that the current configuration was initiated @@ -14364,6 +14401,12 @@ return s } +// SetConfigurationItemDeliveryTime sets the ConfigurationItemDeliveryTime field's value. +func (s *ConfigurationItem) SetConfigurationItemDeliveryTime(v time.Time) *ConfigurationItem { + s.ConfigurationItemDeliveryTime = &v + return s +} + // SetConfigurationItemMD5Hash sets the ConfigurationItemMD5Hash field's value. func (s *ConfigurationItem) SetConfigurationItemMD5Hash(v string) *ConfigurationItem { s.ConfigurationItemMD5Hash = &v @@ -14382,6 +14425,12 @@ return s } +// SetRecordingFrequency sets the RecordingFrequency field's value. +func (s *ConfigurationItem) SetRecordingFrequency(v string) *ConfigurationItem { + s.RecordingFrequency = &v + return s +} + // SetRelatedEvents sets the RelatedEvents field's value. func (s *ConfigurationItem) SetRelatedEvents(v []*string) *ConfigurationItem { s.RelatedEvents = v @@ -14436,9 +14485,9 @@ return s } -// Records configuration changes to specified resource types. For more information -// about the configuration recorder, see Managing the Configuration Recorder -// (https://docs.aws.amazon.com/config/latest/developerguide/stop-start-recorder.html) +// Records configuration changes to your specified resource types. For more +// information about the configuration recorder, see Managing the Configuration +// Recorder (https://docs.aws.amazon.com/config/latest/developerguide/stop-start-recorder.html) // in the Config Developer Guide. type ConfigurationRecorder struct { _ struct{} `type:"structure"` @@ -14470,6 +14519,22 @@ // off to avoid increased configuration recording and rule evaluations. RecordingGroup *RecordingGroup `locationName:"recordingGroup" type:"structure"` + // Specifies the default recording frequency that Config uses to record configuration + // changes. Config supports Continuous recording and Daily recording. + // + // * Continuous recording allows you to record configuration changes continuously + // whenever a change occurs. + // + // * Daily recording allows you record configuration data once every 24 hours, + // only if a change has occurred. + // + // Firewall Manager depends on continuous recording to monitor your resources. + // If you are using Firewall Manager, it is recommended that you set the recording + // frequency to Continuous. + // + // You can also override the recording frequency for specific resource types. + RecordingMode *RecordingMode `locationName:"recordingMode" type:"structure"` + // Amazon Resource Name (ARN) of the IAM role assumed by Config and used by // the configuration recorder. // @@ -14518,6 +14583,11 @@ if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } + if s.RecordingMode != nil { + if err := s.RecordingMode.Validate(); err != nil { + invalidParams.AddNested("RecordingMode", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -14537,6 +14607,12 @@ return s } +// SetRecordingMode sets the RecordingMode field's value. +func (s *ConfigurationRecorder) SetRecordingMode(v *RecordingMode) *ConfigurationRecorder { + s.RecordingMode = v + return s +} + // SetRoleARN sets the RoleARN field's value. func (s *ConfigurationRecorder) SetRoleARN(v string) *ConfigurationRecorder { s.RoleARN = &v @@ -19557,7 +19633,7 @@ return s } -// The configuration object for Config rule evaluation mode. The Supported valid +// The configuration object for Config rule evaluation mode. The supported valid // values are Detective or Proactive. type EvaluationModeConfiguration struct { _ struct{} `type:"structure"` @@ -19834,9 +19910,46 @@ return s } -// Specifies whether the configuration recorder excludes resource types from -// being recorded. Use the resourceTypes field to enter a comma-separated list -// of resource types to exclude as exemptions. +// Specifies whether the configuration recorder excludes certain resource types +// from being recorded. Use the resourceTypes field to enter a comma-separated +// list of resource types you want to exclude from recording. +// +// By default, when Config adds support for a new resource type in the Region +// where you set up the configuration recorder, including global resource types, +// Config starts recording resources of that type automatically. +// +// # How to use the exclusion recording strategy +// +// To use this option, you must set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) +// to EXCLUSION_BY_RESOURCE_TYPES. +// +// Config will then record configuration changes for all supported resource +// types, except the resource types that you specify to exclude from being recorded. +// +// # Global resource types and the exclusion recording strategy +// +// Unless specifically listed as exclusions, AWS::RDS::GlobalCluster will be +// recorded automatically in all supported Config Regions were the configuration +// recorder is enabled. +// +// IAM users, groups, roles, and customer managed policies will be recorded +// in the Region where you set up the configuration recorder if that is a Region +// where Config was available before February 2022. You cannot be record the +// global IAM resouce types in Regions supported by Config after February 2022. +// This list where you cannot record the global IAM resource types includes +// the following Regions: +// +// - Asia Pacific (Hyderabad) +// +// - Asia Pacific (Melbourne) +// +// - Europe (Spain) +// +// - Europe (Zurich) +// +// - Israel (Tel Aviv) +// +// - Middle East (UAE) type ExclusionByResourceTypes struct { _ struct{} `type:"structure"` @@ -22062,13 +22175,13 @@ // are listed in reverse chronological order. ChronologicalOrder *string `locationName:"chronologicalOrder" type:"string" enum:"ChronologicalOrder"` - // The time stamp that indicates an earlier time. If not specified, the action - // returns paginated results that contain configuration items that start when - // the first configuration item was recorded. + // The chronologically earliest time in the time range for which the history + // requested. If not specified, the action returns paginated results that contain + // configuration items that start when the first configuration item was recorded. EarlierTime *time.Time `locationName:"earlierTime" type:"timestamp"` - // The time stamp that indicates a later time. If not specified, current time - // is taken. + // The chronologically latest time in the time range for which the history requested. + // If not specified, current time is taken. LaterTime *time.Time `locationName:"laterTime" type:"timestamp"` // The maximum number of configuration items returned on each page. The default @@ -27209,11 +27322,11 @@ return s } -// organization custom rule metadata such as resource type, resource ID of Amazon -// Web Services resource, Lambda function ARN, and organization trigger types -// that trigger Config to evaluate your Amazon Web Services resources against -// a rule. It also provides the frequency with which you want Config to run -// evaluations for the rule if the trigger type is periodic. +// An object that specifies organization custom rule metadata such as resource +// type, resource ID of Amazon Web Services resource, Lambda function ARN, and +// organization trigger types that trigger Config to evaluate your Amazon Web +// Services resources against a rule. It also provides the frequency with which +// you want Config to run evaluations for the rule if the trigger type is periodic. type OrganizationCustomRuleMetadata struct { _ struct{} `type:"structure"` @@ -27373,10 +27486,10 @@ return s } -// organization managed rule metadata such as resource type and ID of Amazon -// Web Services resource along with the rule identifier. It also provides the -// frequency with which you want Config to run evaluations for the rule if the -// trigger type is periodic. +// An object that specifies organization managed rule metadata such as resource +// type and ID of Amazon Web Services resource along with the rule identifier. +// It also provides the frequency with which you want Config to run evaluations +// for the rule if the trigger type is periodic. type OrganizationManagedRuleMetadata struct { _ struct{} `type:"structure"` @@ -28139,7 +28252,10 @@ // The uri must point to a conformance pack template (max size: 300 KB) that // is located in an Amazon S3 bucket in the same Region as the conformance pack. // - // You must have access to read Amazon S3 bucket. + // You must have access to read Amazon S3 bucket. In addition, in order to ensure + // a successful deployment, the template object must not be in an archived storage + // class (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html) + // if this parameter is passed. TemplateS3Uri *string `min:"1" type:"string"` // An object of type TemplateSSMDocumentDetails, which contains the name or @@ -28735,7 +28851,10 @@ // Location of file containing the template body. The uri must point to the // conformance pack template (max size: 300 KB). // - // You must have access to read Amazon S3 bucket. + // You must have access to read Amazon S3 bucket. In addition, in order to ensure + // a successful deployment, the template object must not be in an archived storage + // class (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html) + // if this parameter is passed. TemplateS3Uri *string `min:"1" type:"string"` } @@ -29449,88 +29568,130 @@ } // Specifies which resource types Config records for configuration changes. +// By default, Config records configuration changes for all current and future +// supported resource types in the Amazon Web Services Region where you have +// enabled Config, excluding the global IAM resource types: IAM users, groups, +// roles, and customer managed policies. +// // In the recording group, you specify whether you want to record all supported -// resource types or to include or exclude specific types of resources. +// current and future supported resource types or to include or exclude specific +// resources types. For a list of supported resource types, see Supported Resource +// Types (https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources) +// in the Config developer guide. // -// By default, Config records configuration changes for all supported types -// of Regional resources that Config discovers in the Amazon Web Services Region -// in which it is running. Regional resources are tied to a Region and can be -// used only in that Region. Examples of Regional resources are Amazon EC2 instances -// and Amazon EBS volumes. -// -// You can also have Config record supported types of global resources. Global -// resources are not tied to a specific Region and can be used in all Regions. -// The global resource types that Config supports include IAM users, groups, -// roles, and customer managed policies. +// If you don't want Config to record all current and future supported resource +// types (excluding the global IAM resource types), use one of the following +// recording strategies: // -// Global resource types onboarded to Config recording after February 2022 will -// be recorded only in the service's home Region for the commercial partition -// and Amazon Web Services GovCloud (US-West) for the Amazon Web Services GovCloud -// (US) partition. You can view the Configuration Items for these new global -// resource types only in their home Region and Amazon Web Services GovCloud -// (US-West). +// Record all current and future resource types with exclusions (EXCLUSION_BY_RESOURCE_TYPES), +// or // -// If you don't want Config to record all resources, you can specify which types -// of resources Config records with the resourceTypes parameter. +// Record specific resource types (INCLUSION_BY_RESOURCE_TYPES). // -// For a list of supported resource types, see Supported Resource Types (https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources) -// in the Config developer guide. +// If you use the recording strategy to Record all current and future resource +// types (ALL_SUPPORTED_RESOURCE_TYPES), you can use the flag includeGlobalResourceTypes +// to include the global IAM resource types in your recording. // -// For more information and a table of the Home Regions for Global Resource -// Types Onboarded after February 2022, see Selecting Which Resources Config -// Records (https://docs.aws.amazon.com/config/latest/developerguide/select-resources.html) -// in the Config developer guide. +// # Aurora global clusters are recorded in all enabled Regions +// +// The AWS::RDS::GlobalCluster resource type will be recorded in all supported +// Config Regions where the configuration recorder is enabled. +// +// If you do not want to record AWS::RDS::GlobalCluster in all enabled Regions, +// use the EXCLUSION_BY_RESOURCE_TYPES or INCLUSION_BY_RESOURCE_TYPES recording +// strategy. type RecordingGroup struct { _ struct{} `type:"structure"` // Specifies whether Config records configuration changes for all supported - // regional resource types. + // resource types, excluding the global IAM resource types. // - // If you set this field to true, when Config adds support for a new type of - // regional resource, Config starts recording resources of that type automatically. + // If you set this field to true, when Config adds support for a new resource + // type, Config starts recording resources of that type automatically. // // If you set this field to true, you cannot enumerate specific resource types // to record in the resourceTypes field of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html), // or to exclude in the resourceTypes field of ExclusionByResourceTypes (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). + // + // Region availability + // + // Check Resource Coverage by Region Availability (https://docs.aws.amazon.com/config/latest/developerguide/what-is-resource-config-coverage.html) + // to see if a resource type is supported in the Amazon Web Services Region + // where you set up Config. AllSupported *bool `locationName:"allSupported" type:"boolean"` // An object that specifies how Config excludes resource types from being recorded // by the configuration recorder. // + // Required fields + // // To use this option, you must set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) // to EXCLUSION_BY_RESOURCE_TYPES. ExclusionByResourceTypes *ExclusionByResourceTypes `locationName:"exclusionByResourceTypes" type:"structure"` - // Specifies whether Config records configuration changes for all supported - // global resources. + // This option is a bundle which only applies to the global IAM resource types: + // IAM users, groups, roles, and customer managed policies. These global IAM + // resource types can only be recorded by Config in Regions where Config was + // available before February 2022. You cannot be record the global IAM resouce + // types in Regions supported by Config after February 2022. This list where + // you cannot record the global IAM resource types includes the following Regions: + // + // * Asia Pacific (Hyderabad) + // + // * Asia Pacific (Melbourne) + // + // * Europe (Spain) + // + // * Europe (Zurich) + // + // * Israel (Tel Aviv) + // + // * Middle East (UAE) + // + // Aurora global clusters are recorded in all enabled Regions + // + // The AWS::RDS::GlobalCluster resource type will be recorded in all supported + // Config Regions where the configuration recorder is enabled, even if includeGlobalResourceTypes + // is not set to true. The includeGlobalResourceTypes option is a bundle which + // only applies to IAM users, groups, roles, and customer managed policies. + // + // If you do not want to record AWS::RDS::GlobalCluster in all enabled Regions, + // use one of the following recording strategies: + // + // Record all current and future resource types with exclusions (EXCLUSION_BY_RESOURCE_TYPES), + // or + // + // Record specific resource types (INCLUSION_BY_RESOURCE_TYPES). + // + // For more information, see Selecting Which Resources are Recorded (https://docs.aws.amazon.com/config/latest/developerguide/select-resources.html#select-resources-all) + // in the Config developer guide. // // Before you set this field to true, set the allSupported field of RecordingGroup // (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) // to true. Optionally, you can set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) // to ALL_SUPPORTED_RESOURCE_TYPES. // - // If you set this field to true, when Config adds support for a new type of - // global resource in the Region where you set up the configuration recorder, - // Config starts recording resources of that type automatically. + // Overriding fields // - // If you set this field to false but list global resource types in the resourceTypes - // field of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html), + // If you set this field to false but list global IAM resource types in the + // resourceTypes field of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html), // Config will still record configuration changes for those specified resource // types regardless of if you set the includeGlobalResourceTypes field to false. // - // If you do not want to record configuration changes to global resource types, - // make sure to not list them in the resourceTypes field in addition to setting - // the includeGlobalResourceTypes field to false. + // If you do not want to record configuration changes to the global IAM resource + // types (IAM users, groups, roles, and customer managed policies), make sure + // to not list them in the resourceTypes field in addition to setting the includeGlobalResourceTypes + // field to false. IncludeGlobalResourceTypes *bool `locationName:"includeGlobalResourceTypes" type:"boolean"` // An object that specifies the recording strategy for the configuration recorder. // // * If you set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) // to ALL_SUPPORTED_RESOURCE_TYPES, Config records configuration changes - // for all supported regional resource types. You also must set the allSupported - // field of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) - // to true. When Config adds support for a new type of regional resource, - // Config automatically starts recording resources of that type. + // for all supported resource types, excluding the global IAM resource types. + // You also must set the allSupported field of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) + // to true. When Config adds support for a new resource type, Config automatically + // starts recording resources of that type. // // * If you set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) // to INCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for @@ -29540,8 +29701,10 @@ // * If you set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) // to EXCLUSION_BY_RESOURCE_TYPES, Config records configuration changes for // all supported resource types except the resource types that you specify - // as exemptions to exclude from being recorded in the resourceTypes field - // of ExclusionByResourceTypes (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). + // to exclude from being recorded in the resourceTypes field of ExclusionByResourceTypes + // (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). + // + // Required and optional fields // // The recordingStrategy field is optional when you set the allSupported field // of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) @@ -29553,22 +29716,55 @@ // The recordingStrategy field is required if you list resource types to exclude // from recording in the resourceTypes field of ExclusionByResourceTypes (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). // + // Overriding fields + // // If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the // exclusionByResourceTypes field will override other properties in the request. // // For example, even if you set includeGlobalResourceTypes to false, global - // resource types will still be automatically recorded in this option unless - // those resource types are specifically listed as exemptions in the resourceTypes + // IAM resource types will still be automatically recorded in this option unless + // those resource types are specifically listed as exclusions in the resourceTypes // field of exclusionByResourceTypes. // + // Global resources types and the resource exclusion recording strategy + // // By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy, // when Config adds support for a new resource type in the Region where you // set up the configuration recorder, including global resource types, Config // starts recording resources of that type automatically. + // + // Unless specifically listed as exclusions, AWS::RDS::GlobalCluster will be + // recorded automatically in all supported Config Regions were the configuration + // recorder is enabled. + // + // IAM users, groups, roles, and customer managed policies will be recorded + // in the Region where you set up the configuration recorder if that is a Region + // where Config was available before February 2022. You cannot be record the + // global IAM resouce types in Regions supported by Config after February 2022. + // This list where you cannot record the global IAM resource types includes + // the following Regions: + // + // * Asia Pacific (Hyderabad) + // + // * Asia Pacific (Melbourne) + // + // * Europe (Spain) + // + // * Europe (Zurich) + // + // * Israel (Tel Aviv) + // + // * Middle East (UAE) RecordingStrategy *RecordingStrategy `locationName:"recordingStrategy" type:"structure"` // A comma-separated list that specifies which resource types Config records. // + // For a list of valid resourceTypes values, see the Resource Type Value column + // in Supported Amazon Web Services resource Types (https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources) + // in the Config developer guide. + // + // Required and optional fields + // // Optionally, you can set the useOnly field of RecordingStrategy (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingStrategy.html) // to INCLUSION_BY_RESOURCE_TYPES. // @@ -29580,11 +29776,7 @@ // will not record resources of that type unless you manually add that type // to your recording group. // - // For a list of valid resourceTypes values, see the Resource Type Value column - // in Supported Amazon Web Services resource Types (https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources) - // in the Config developer guide. - // - // Region Availability + // Region availability // // Before specifying a resource type for Config to track, check Resource Coverage // by Region Availability (https://docs.aws.amazon.com/config/latest/developerguide/what-is-resource-config-coverage.html) @@ -29644,6 +29836,193 @@ return s } +// Specifies the default recording frequency that Config uses to record configuration +// changes. Config supports Continuous recording and Daily recording. +// +// - Continuous recording allows you to record configuration changes continuously +// whenever a change occurs. +// +// - Daily recording allows you record configuration data once every 24 hours, +// only if a change has occurred. +// +// Firewall Manager depends on continuous recording to monitor your resources. +// If you are using Firewall Manager, it is recommended that you set the recording +// frequency to Continuous. +// +// You can also override the recording frequency for specific resource types. +type RecordingMode struct { + _ struct{} `type:"structure"` + + // The default recording frequency that Config uses to record configuration + // changes. + // + // Daily recording is not supported for the following resource types: + // + // * AWS::Config::ResourceCompliance + // + // * AWS::Config::ConformancePackCompliance + // + // * AWS::Config::ConfigurationRecorder + // + // For the allSupported (ALL_SUPPORTED_RESOURCE_TYPES) recording strategy, these + // resource types will be set to Continuous recording. + // + // RecordingFrequency is a required field + RecordingFrequency *string `locationName:"recordingFrequency" type:"string" required:"true" enum:"RecordingFrequency"` + + // An array of recordingModeOverride objects for you to specify your overrides + // for the recording mode. The recordingModeOverride object in the recordingModeOverrides + // array consists of three fields: a description, the new recordingFrequency, + // and an array of resourceTypes to override. + RecordingModeOverrides []*RecordingModeOverride `locationName:"recordingModeOverrides" 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 RecordingMode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecordingMode) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RecordingMode) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RecordingMode"} + if s.RecordingFrequency == nil { + invalidParams.Add(request.NewErrParamRequired("RecordingFrequency")) + } + if s.RecordingModeOverrides != nil { + for i, v := range s.RecordingModeOverrides { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RecordingModeOverrides", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecordingFrequency sets the RecordingFrequency field's value. +func (s *RecordingMode) SetRecordingFrequency(v string) *RecordingMode { + s.RecordingFrequency = &v + return s +} + +// SetRecordingModeOverrides sets the RecordingModeOverrides field's value. +func (s *RecordingMode) SetRecordingModeOverrides(v []*RecordingModeOverride) *RecordingMode { + s.RecordingModeOverrides = v + return s +} + +// An object for you to specify your overrides for the recording mode. +type RecordingModeOverride struct { + _ struct{} `type:"structure"` + + // A description that you provide for the override. + Description *string `locationName:"description" min:"1" type:"string"` + + // The recording frequency that will be applied to all the resource types specified + // in the override. + // + // * Continuous recording allows you to record configuration changes continuously + // whenever a change occurs. + // + // * Daily recording allows you record configuration data once every 24 hours, + // only if a change has occurred. + // + // Firewall Manager depends on continuous recording to monitor your resources. + // If you are using Firewall Manager, it is recommended that you set the recording + // frequency to Continuous. + // + // RecordingFrequency is a required field + RecordingFrequency *string `locationName:"recordingFrequency" type:"string" required:"true" enum:"RecordingFrequency"` + + // A comma-separated list that specifies which resource types Config includes + // in the override. + // + // Daily recording is not supported for the following resource types: + // + // * AWS::Config::ResourceCompliance + // + // * AWS::Config::ConformancePackCompliance + // + // * AWS::Config::ConfigurationRecorder + // + // ResourceTypes is a required field + ResourceTypes []*string `locationName:"resourceTypes" type:"list" required:"true" enum:"ResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecordingModeOverride) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecordingModeOverride) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RecordingModeOverride) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RecordingModeOverride"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.RecordingFrequency == nil { + invalidParams.Add(request.NewErrParamRequired("RecordingFrequency")) + } + if s.ResourceTypes == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceTypes")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *RecordingModeOverride) SetDescription(v string) *RecordingModeOverride { + s.Description = &v + return s +} + +// SetRecordingFrequency sets the RecordingFrequency field's value. +func (s *RecordingModeOverride) SetRecordingFrequency(v string) *RecordingModeOverride { + s.RecordingFrequency = &v + return s +} + +// SetResourceTypes sets the ResourceTypes field's value. +func (s *RecordingModeOverride) SetResourceTypes(v []*string) *RecordingModeOverride { + s.ResourceTypes = v + return s +} + // Specifies the recording strategy of the configuration recorder. type RecordingStrategy struct { _ struct{} `type:"structure"` @@ -29651,11 +30030,12 @@ // The recording strategy for the configuration recorder. // // * If you set this option to ALL_SUPPORTED_RESOURCE_TYPES, Config records - // configuration changes for all supported regional resource types. You also - // must set the allSupported field of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) - // to true. When Config adds support for a new type of regional resource, - // Config automatically starts recording resources of that type. For a list - // of supported resource types, see Supported Resource Types (https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources) + // configuration changes for all supported resource types, excluding the + // global IAM resource types. You also must set the allSupported field of + // RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) + // to true. When Config adds support for a new resource type, Config automatically + // starts recording resources of that type. For a list of supported resource + // types, see Supported Resource Types (https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources) // in the Config developer guide. // // * If you set this option to INCLUSION_BY_RESOURCE_TYPES, Config records @@ -29664,8 +30044,10 @@ // // * If you set this option to EXCLUSION_BY_RESOURCE_TYPES, Config records // configuration changes for all supported resource types, except the resource - // types that you specify as exemptions to exclude from being recorded in - // the resourceTypes field of ExclusionByResourceTypes (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). + // types that you specify to exclude from being recorded in the resourceTypes + // field of ExclusionByResourceTypes (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). + // + // Required and optional fields // // The recordingStrategy field is optional when you set the allSupported field // of RecordingGroup (https://docs.aws.amazon.com/config/latest/APIReference/API_RecordingGroup.html) @@ -29677,18 +30059,45 @@ // The recordingStrategy field is required if you list resource types to exclude // from recording in the resourceTypes field of ExclusionByResourceTypes (https://docs.aws.amazon.com/config/latest/APIReference/API_ExclusionByResourceTypes.html). // + // Overriding fields + // // If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the // exclusionByResourceTypes field will override other properties in the request. // // For example, even if you set includeGlobalResourceTypes to false, global - // resource types will still be automatically recorded in this option unless - // those resource types are specifically listed as exemptions in the resourceTypes + // IAM resource types will still be automatically recorded in this option unless + // those resource types are specifically listed as exclusions in the resourceTypes // field of exclusionByResourceTypes. // + // Global resource types and the exclusion recording strategy + // // By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy, // when Config adds support for a new resource type in the Region where you // set up the configuration recorder, including global resource types, Config // starts recording resources of that type automatically. + // + // Unless specifically listed as exclusions, AWS::RDS::GlobalCluster will be + // recorded automatically in all supported Config Regions were the configuration + // recorder is enabled. + // + // IAM users, groups, roles, and customer managed policies will be recorded + // in the Region where you set up the configuration recorder if that is a Region + // where Config was available before February 2022. You cannot be record the + // global IAM resouce types in Regions supported by Config after February 2022. + // This list where you cannot record the global IAM resource types includes + // the following Regions: + // + // * Asia Pacific (Hyderabad) + // + // * Asia Pacific (Melbourne) + // + // * Europe (Spain) + // + // * Europe (Zurich) + // + // * Israel (Tel Aviv) + // + // * Middle East (UAE) UseOnly *string `locationName:"useOnly" type:"string" enum:"RecordingStrategyType"` } @@ -33702,6 +34111,22 @@ } const ( + // RecordingFrequencyContinuous is a RecordingFrequency enum value + RecordingFrequencyContinuous = "CONTINUOUS" + + // RecordingFrequencyDaily is a RecordingFrequency enum value + RecordingFrequencyDaily = "DAILY" +) + +// RecordingFrequency_Values returns all elements of the RecordingFrequency enum +func RecordingFrequency_Values() []string { + return []string{ + RecordingFrequencyContinuous, + RecordingFrequencyDaily, + } +} + +const ( // RecordingStrategyTypeAllSupportedResourceTypes is a RecordingStrategyType enum value RecordingStrategyTypeAllSupportedResourceTypes = "ALL_SUPPORTED_RESOURCE_TYPES" @@ -34888,6 +35313,114 @@ // ResourceTypeAwsNetworkManagerLinkAssociation is a ResourceType enum value ResourceTypeAwsNetworkManagerLinkAssociation = "AWS::NetworkManager::LinkAssociation" + + // ResourceTypeAwsIoTwirelessMulticastGroup is a ResourceType enum value + ResourceTypeAwsIoTwirelessMulticastGroup = "AWS::IoTWireless::MulticastGroup" + + // ResourceTypeAwsPersonalizeDatasetGroup is a ResourceType enum value + ResourceTypeAwsPersonalizeDatasetGroup = "AWS::Personalize::DatasetGroup" + + // ResourceTypeAwsIoTtwinMakerComponentType is a ResourceType enum value + ResourceTypeAwsIoTtwinMakerComponentType = "AWS::IoTTwinMaker::ComponentType" + + // ResourceTypeAwsCodeBuildReportGroup is a ResourceType enum value + ResourceTypeAwsCodeBuildReportGroup = "AWS::CodeBuild::ReportGroup" + + // ResourceTypeAwsSageMakerFeatureGroup is a ResourceType enum value + ResourceTypeAwsSageMakerFeatureGroup = "AWS::SageMaker::FeatureGroup" + + // ResourceTypeAwsMskBatchScramSecret is a ResourceType enum value + ResourceTypeAwsMskBatchScramSecret = "AWS::MSK::BatchScramSecret" + + // ResourceTypeAwsAppStreamStack is a ResourceType enum value + ResourceTypeAwsAppStreamStack = "AWS::AppStream::Stack" + + // ResourceTypeAwsIoTJobTemplate is a ResourceType enum value + ResourceTypeAwsIoTJobTemplate = "AWS::IoT::JobTemplate" + + // ResourceTypeAwsIoTwirelessFuotaTask is a ResourceType enum value + ResourceTypeAwsIoTwirelessFuotaTask = "AWS::IoTWireless::FuotaTask" + + // ResourceTypeAwsIoTProvisioningTemplate is a ResourceType enum value + ResourceTypeAwsIoTProvisioningTemplate = "AWS::IoT::ProvisioningTemplate" + + // ResourceTypeAwsInspectorV2Filter is a ResourceType enum value + ResourceTypeAwsInspectorV2Filter = "AWS::InspectorV2::Filter" + + // ResourceTypeAwsRoute53resolverResolverQueryLoggingConfigAssociation is a ResourceType enum value + ResourceTypeAwsRoute53resolverResolverQueryLoggingConfigAssociation = "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation" + + // ResourceTypeAwsServiceDiscoveryInstance is a ResourceType enum value + ResourceTypeAwsServiceDiscoveryInstance = "AWS::ServiceDiscovery::Instance" + + // ResourceTypeAwsTransferCertificate is a ResourceType enum value + ResourceTypeAwsTransferCertificate = "AWS::Transfer::Certificate" + + // ResourceTypeAwsMediaConnectFlowSource is a ResourceType enum value + ResourceTypeAwsMediaConnectFlowSource = "AWS::MediaConnect::FlowSource" + + // ResourceTypeAwsApsRuleGroupsNamespace is a ResourceType enum value + ResourceTypeAwsApsRuleGroupsNamespace = "AWS::APS::RuleGroupsNamespace" + + // ResourceTypeAwsCodeGuruProfilerProfilingGroup is a ResourceType enum value + ResourceTypeAwsCodeGuruProfilerProfilingGroup = "AWS::CodeGuruProfiler::ProfilingGroup" + + // ResourceTypeAwsRoute53resolverResolverQueryLoggingConfig is a ResourceType enum value + ResourceTypeAwsRoute53resolverResolverQueryLoggingConfig = "AWS::Route53Resolver::ResolverQueryLoggingConfig" + + // ResourceTypeAwsBatchSchedulingPolicy is a ResourceType enum value + ResourceTypeAwsBatchSchedulingPolicy = "AWS::Batch::SchedulingPolicy" + + // ResourceTypeAwsAcmpcaCertificateAuthorityActivation is a ResourceType enum value + ResourceTypeAwsAcmpcaCertificateAuthorityActivation = "AWS::ACMPCA::CertificateAuthorityActivation" + + // ResourceTypeAwsAppMeshGatewayRoute is a ResourceType enum value + ResourceTypeAwsAppMeshGatewayRoute = "AWS::AppMesh::GatewayRoute" + + // ResourceTypeAwsAppMeshMesh is a ResourceType enum value + ResourceTypeAwsAppMeshMesh = "AWS::AppMesh::Mesh" + + // ResourceTypeAwsConnectInstance is a ResourceType enum value + ResourceTypeAwsConnectInstance = "AWS::Connect::Instance" + + // ResourceTypeAwsConnectQuickConnect is a ResourceType enum value + ResourceTypeAwsConnectQuickConnect = "AWS::Connect::QuickConnect" + + // ResourceTypeAwsEc2CarrierGateway is a ResourceType enum value + ResourceTypeAwsEc2CarrierGateway = "AWS::EC2::CarrierGateway" + + // ResourceTypeAwsEc2Ipampool is a ResourceType enum value + ResourceTypeAwsEc2Ipampool = "AWS::EC2::IPAMPool" + + // ResourceTypeAwsEc2TransitGatewayConnect is a ResourceType enum value + ResourceTypeAwsEc2TransitGatewayConnect = "AWS::EC2::TransitGatewayConnect" + + // ResourceTypeAwsEc2TransitGatewayMulticastDomain is a ResourceType enum value + ResourceTypeAwsEc2TransitGatewayMulticastDomain = "AWS::EC2::TransitGatewayMulticastDomain" + + // ResourceTypeAwsEcsCapacityProvider is a ResourceType enum value + ResourceTypeAwsEcsCapacityProvider = "AWS::ECS::CapacityProvider" + + // ResourceTypeAwsIamInstanceProfile is a ResourceType enum value + ResourceTypeAwsIamInstanceProfile = "AWS::IAM::InstanceProfile" + + // ResourceTypeAwsIoTCacertificate is a ResourceType enum value + ResourceTypeAwsIoTCacertificate = "AWS::IoT::CACertificate" + + // ResourceTypeAwsIoTtwinMakerSyncJob is a ResourceType enum value + ResourceTypeAwsIoTtwinMakerSyncJob = "AWS::IoTTwinMaker::SyncJob" + + // ResourceTypeAwsKafkaConnectConnector is a ResourceType enum value + ResourceTypeAwsKafkaConnectConnector = "AWS::KafkaConnect::Connector" + + // ResourceTypeAwsLambdaCodeSigningConfig is a ResourceType enum value + ResourceTypeAwsLambdaCodeSigningConfig = "AWS::Lambda::CodeSigningConfig" + + // ResourceTypeAwsNetworkManagerConnectPeer is a ResourceType enum value + ResourceTypeAwsNetworkManagerConnectPeer = "AWS::NetworkManager::ConnectPeer" + + // ResourceTypeAwsResourceExplorer2Index is a ResourceType enum value + ResourceTypeAwsResourceExplorer2Index = "AWS::ResourceExplorer2::Index" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -35246,6 +35779,42 @@ ResourceTypeAwsS3AccessPoint, ResourceTypeAwsNetworkManagerCustomerGatewayAssociation, ResourceTypeAwsNetworkManagerLinkAssociation, + ResourceTypeAwsIoTwirelessMulticastGroup, + ResourceTypeAwsPersonalizeDatasetGroup, + ResourceTypeAwsIoTtwinMakerComponentType, + ResourceTypeAwsCodeBuildReportGroup, + ResourceTypeAwsSageMakerFeatureGroup, + ResourceTypeAwsMskBatchScramSecret, + ResourceTypeAwsAppStreamStack, + ResourceTypeAwsIoTJobTemplate, + ResourceTypeAwsIoTwirelessFuotaTask, + ResourceTypeAwsIoTProvisioningTemplate, + ResourceTypeAwsInspectorV2Filter, + ResourceTypeAwsRoute53resolverResolverQueryLoggingConfigAssociation, + ResourceTypeAwsServiceDiscoveryInstance, + ResourceTypeAwsTransferCertificate, + ResourceTypeAwsMediaConnectFlowSource, + ResourceTypeAwsApsRuleGroupsNamespace, + ResourceTypeAwsCodeGuruProfilerProfilingGroup, + ResourceTypeAwsRoute53resolverResolverQueryLoggingConfig, + ResourceTypeAwsBatchSchedulingPolicy, + ResourceTypeAwsAcmpcaCertificateAuthorityActivation, + ResourceTypeAwsAppMeshGatewayRoute, + ResourceTypeAwsAppMeshMesh, + ResourceTypeAwsConnectInstance, + ResourceTypeAwsConnectQuickConnect, + ResourceTypeAwsEc2CarrierGateway, + ResourceTypeAwsEc2Ipampool, + ResourceTypeAwsEc2TransitGatewayConnect, + ResourceTypeAwsEc2TransitGatewayMulticastDomain, + ResourceTypeAwsEcsCapacityProvider, + ResourceTypeAwsIamInstanceProfile, + ResourceTypeAwsIoTCacertificate, + ResourceTypeAwsIoTtwinMakerSyncJob, + ResourceTypeAwsKafkaConnectConnector, + ResourceTypeAwsLambdaCodeSigningConfig, + ResourceTypeAwsNetworkManagerConnectPeer, + ResourceTypeAwsResourceExplorer2Index, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connect/api.go golang-github-aws-aws-sdk-go-1.48.14/service/connect/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connect/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connect/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -106,6 +106,100 @@ return out, req.Send() } +const opAssociateAnalyticsDataSet = "AssociateAnalyticsDataSet" + +// AssociateAnalyticsDataSetRequest generates a "aws/request.Request" representing the +// client's request for the AssociateAnalyticsDataSet 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 AssociateAnalyticsDataSet for more information on using the AssociateAnalyticsDataSet +// 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 AssociateAnalyticsDataSetRequest method. +// req, resp := client.AssociateAnalyticsDataSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateAnalyticsDataSet +func (c *Connect) AssociateAnalyticsDataSetRequest(input *AssociateAnalyticsDataSetInput) (req *request.Request, output *AssociateAnalyticsDataSetOutput) { + op := &request.Operation{ + Name: opAssociateAnalyticsDataSet, + HTTPMethod: "PUT", + HTTPPath: "/analytics-data/instance/{InstanceId}/association", + } + + if input == nil { + input = &AssociateAnalyticsDataSetInput{} + } + + output = &AssociateAnalyticsDataSetOutput{} + req = c.newRequest(op, input, output) + return +} + +// AssociateAnalyticsDataSet API operation for Amazon Connect Service. +// +// This API is in preview release for Amazon Connect and is subject to change. +// +// Associates the specified dataset for a Amazon Connect instance with the target +// account. You can associate only one dataset in a single call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation AssociateAnalyticsDataSet for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateAnalyticsDataSet +func (c *Connect) AssociateAnalyticsDataSet(input *AssociateAnalyticsDataSetInput) (*AssociateAnalyticsDataSetOutput, error) { + req, out := c.AssociateAnalyticsDataSetRequest(input) + return out, req.Send() +} + +// AssociateAnalyticsDataSetWithContext is the same as AssociateAnalyticsDataSet with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateAnalyticsDataSet 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 *Connect) AssociateAnalyticsDataSetWithContext(ctx aws.Context, input *AssociateAnalyticsDataSetInput, opts ...request.Option) (*AssociateAnalyticsDataSetOutput, error) { + req, out := c.AssociateAnalyticsDataSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAssociateApprovedOrigin = "AssociateApprovedOrigin" // AssociateApprovedOriginRequest generates a "aws/request.Request" representing the @@ -401,6 +495,101 @@ return out, req.Send() } +const opAssociateFlow = "AssociateFlow" + +// AssociateFlowRequest generates a "aws/request.Request" representing the +// client's request for the AssociateFlow 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 AssociateFlow for more information on using the AssociateFlow +// 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 AssociateFlowRequest method. +// req, resp := client.AssociateFlowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateFlow +func (c *Connect) AssociateFlowRequest(input *AssociateFlowInput) (req *request.Request, output *AssociateFlowOutput) { + op := &request.Operation{ + Name: opAssociateFlow, + HTTPMethod: "PUT", + HTTPPath: "/flow-associations/{InstanceId}", + } + + if input == nil { + input = &AssociateFlowInput{} + } + + output = &AssociateFlowOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// AssociateFlow API operation for Amazon Connect Service. +// +// Associates a connect resource to a flow. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation AssociateFlow for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateFlow +func (c *Connect) AssociateFlow(input *AssociateFlowInput) (*AssociateFlowOutput, error) { + req, out := c.AssociateFlowRequest(input) + return out, req.Send() +} + +// AssociateFlowWithContext is the same as AssociateFlow with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateFlow 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 *Connect) AssociateFlowWithContext(ctx aws.Context, input *AssociateFlowInput, opts ...request.Option) (*AssociateFlowOutput, error) { + req, out := c.AssociateFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAssociateInstanceStorageConfig = "AssociateInstanceStorageConfig" // AssociateInstanceStorageConfigRequest generates a "aws/request.Request" representing the @@ -1190,6 +1379,390 @@ return out, req.Send() } +const opBatchAssociateAnalyticsDataSet = "BatchAssociateAnalyticsDataSet" + +// BatchAssociateAnalyticsDataSetRequest generates a "aws/request.Request" representing the +// client's request for the BatchAssociateAnalyticsDataSet 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 BatchAssociateAnalyticsDataSet for more information on using the BatchAssociateAnalyticsDataSet +// 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 BatchAssociateAnalyticsDataSetRequest method. +// req, resp := client.BatchAssociateAnalyticsDataSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchAssociateAnalyticsDataSet +func (c *Connect) BatchAssociateAnalyticsDataSetRequest(input *BatchAssociateAnalyticsDataSetInput) (req *request.Request, output *BatchAssociateAnalyticsDataSetOutput) { + op := &request.Operation{ + Name: opBatchAssociateAnalyticsDataSet, + HTTPMethod: "PUT", + HTTPPath: "/analytics-data/instance/{InstanceId}/associations", + } + + if input == nil { + input = &BatchAssociateAnalyticsDataSetInput{} + } + + output = &BatchAssociateAnalyticsDataSetOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchAssociateAnalyticsDataSet API operation for Amazon Connect Service. +// +// This API is in preview release for Amazon Connect and is subject to change. +// +// Associates a list of analytics datasets for a given Amazon Connect instance +// to a target account. You can associate multiple datasets in a single call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation BatchAssociateAnalyticsDataSet for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchAssociateAnalyticsDataSet +func (c *Connect) BatchAssociateAnalyticsDataSet(input *BatchAssociateAnalyticsDataSetInput) (*BatchAssociateAnalyticsDataSetOutput, error) { + req, out := c.BatchAssociateAnalyticsDataSetRequest(input) + return out, req.Send() +} + +// BatchAssociateAnalyticsDataSetWithContext is the same as BatchAssociateAnalyticsDataSet with the addition of +// the ability to pass a context and additional request options. +// +// See BatchAssociateAnalyticsDataSet 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 *Connect) BatchAssociateAnalyticsDataSetWithContext(ctx aws.Context, input *BatchAssociateAnalyticsDataSetInput, opts ...request.Option) (*BatchAssociateAnalyticsDataSetOutput, error) { + req, out := c.BatchAssociateAnalyticsDataSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchDisassociateAnalyticsDataSet = "BatchDisassociateAnalyticsDataSet" + +// BatchDisassociateAnalyticsDataSetRequest generates a "aws/request.Request" representing the +// client's request for the BatchDisassociateAnalyticsDataSet 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 BatchDisassociateAnalyticsDataSet for more information on using the BatchDisassociateAnalyticsDataSet +// 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 BatchDisassociateAnalyticsDataSetRequest method. +// req, resp := client.BatchDisassociateAnalyticsDataSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchDisassociateAnalyticsDataSet +func (c *Connect) BatchDisassociateAnalyticsDataSetRequest(input *BatchDisassociateAnalyticsDataSetInput) (req *request.Request, output *BatchDisassociateAnalyticsDataSetOutput) { + op := &request.Operation{ + Name: opBatchDisassociateAnalyticsDataSet, + HTTPMethod: "POST", + HTTPPath: "/analytics-data/instance/{InstanceId}/associations", + } + + if input == nil { + input = &BatchDisassociateAnalyticsDataSetInput{} + } + + output = &BatchDisassociateAnalyticsDataSetOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchDisassociateAnalyticsDataSet API operation for Amazon Connect Service. +// +// This API is in preview release for Amazon Connect and is subject to change. +// +// Removes a list of analytics datasets associated with a given Amazon Connect +// instance. You can disassociate multiple datasets in a single call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation BatchDisassociateAnalyticsDataSet for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchDisassociateAnalyticsDataSet +func (c *Connect) BatchDisassociateAnalyticsDataSet(input *BatchDisassociateAnalyticsDataSetInput) (*BatchDisassociateAnalyticsDataSetOutput, error) { + req, out := c.BatchDisassociateAnalyticsDataSetRequest(input) + return out, req.Send() +} + +// BatchDisassociateAnalyticsDataSetWithContext is the same as BatchDisassociateAnalyticsDataSet with the addition of +// the ability to pass a context and additional request options. +// +// See BatchDisassociateAnalyticsDataSet 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 *Connect) BatchDisassociateAnalyticsDataSetWithContext(ctx aws.Context, input *BatchDisassociateAnalyticsDataSetInput, opts ...request.Option) (*BatchDisassociateAnalyticsDataSetOutput, error) { + req, out := c.BatchDisassociateAnalyticsDataSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchGetFlowAssociation = "BatchGetFlowAssociation" + +// BatchGetFlowAssociationRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetFlowAssociation 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 BatchGetFlowAssociation for more information on using the BatchGetFlowAssociation +// 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 BatchGetFlowAssociationRequest method. +// req, resp := client.BatchGetFlowAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchGetFlowAssociation +func (c *Connect) BatchGetFlowAssociationRequest(input *BatchGetFlowAssociationInput) (req *request.Request, output *BatchGetFlowAssociationOutput) { + op := &request.Operation{ + Name: opBatchGetFlowAssociation, + HTTPMethod: "POST", + HTTPPath: "/flow-associations-batch/{InstanceId}", + } + + if input == nil { + input = &BatchGetFlowAssociationInput{} + } + + output = &BatchGetFlowAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetFlowAssociation API operation for Amazon Connect Service. +// +// Retrieve the flow associations for the given resources. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation BatchGetFlowAssociation for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchGetFlowAssociation +func (c *Connect) BatchGetFlowAssociation(input *BatchGetFlowAssociationInput) (*BatchGetFlowAssociationOutput, error) { + req, out := c.BatchGetFlowAssociationRequest(input) + return out, req.Send() +} + +// BatchGetFlowAssociationWithContext is the same as BatchGetFlowAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetFlowAssociation 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 *Connect) BatchGetFlowAssociationWithContext(ctx aws.Context, input *BatchGetFlowAssociationInput, opts ...request.Option) (*BatchGetFlowAssociationOutput, error) { + req, out := c.BatchGetFlowAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchPutContact = "BatchPutContact" + +// BatchPutContactRequest generates a "aws/request.Request" representing the +// client's request for the BatchPutContact 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 BatchPutContact for more information on using the BatchPutContact +// 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 BatchPutContactRequest method. +// req, resp := client.BatchPutContactRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchPutContact +func (c *Connect) BatchPutContactRequest(input *BatchPutContactInput) (req *request.Request, output *BatchPutContactOutput) { + op := &request.Operation{ + Name: opBatchPutContact, + HTTPMethod: "PUT", + HTTPPath: "/contact/batch/{InstanceId}", + } + + if input == nil { + input = &BatchPutContactInput{} + } + + output = &BatchPutContactOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchPutContact API operation for Amazon Connect Service. +// +// Only the Amazon Connect outbound campaigns service principal is allowed to +// assume a role in your account and call this API. +// +// Allows you to create a batch of contacts in Amazon Connect. The outbound +// campaigns capability ingests dial requests via the PutDialRequestBatch (https://docs.aws.amazon.com/connect-outbound/latest/APIReference/API_PutDialRequestBatch.html) +// API. It then uses BatchPutContact to create contacts corresponding to those +// dial requests. If agents are available, the dial requests are dialed out, +// which results in a voice call. The resulting voice call uses the same contactId +// that was created by BatchPutContact. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation BatchPutContact for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - LimitExceededException +// The allowed limit for the resource has been exceeded. +// +// - IdempotencyException +// An entity with the same name already exists. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/BatchPutContact +func (c *Connect) BatchPutContact(input *BatchPutContactInput) (*BatchPutContactOutput, error) { + req, out := c.BatchPutContactRequest(input) + return out, req.Send() +} + +// BatchPutContactWithContext is the same as BatchPutContact with the addition of +// the ability to pass a context and additional request options. +// +// See BatchPutContact 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 *Connect) BatchPutContactWithContext(ctx aws.Context, input *BatchPutContactInput, opts ...request.Option) (*BatchPutContactOutput, error) { + req, out := c.BatchPutContactRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opClaimPhoneNumber = "ClaimPhoneNumber" // ClaimPhoneNumberRequest generates a "aws/request.Request" representing the @@ -2105,6 +2678,102 @@ return out, req.Send() } +const opCreatePersistentContactAssociation = "CreatePersistentContactAssociation" + +// CreatePersistentContactAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreatePersistentContactAssociation 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 CreatePersistentContactAssociation for more information on using the CreatePersistentContactAssociation +// 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 CreatePersistentContactAssociationRequest method. +// req, resp := client.CreatePersistentContactAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreatePersistentContactAssociation +func (c *Connect) CreatePersistentContactAssociationRequest(input *CreatePersistentContactAssociationInput) (req *request.Request, output *CreatePersistentContactAssociationOutput) { + op := &request.Operation{ + Name: opCreatePersistentContactAssociation, + HTTPMethod: "POST", + HTTPPath: "/contact/persistent-contact-association/{InstanceId}/{InitialContactId}", + } + + if input == nil { + input = &CreatePersistentContactAssociationInput{} + } + + output = &CreatePersistentContactAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePersistentContactAssociation API operation for Amazon Connect Service. +// +// Enables rehydration of chats for the lifespan of a contact. For more information +// about chat rehydration, see Enable persistent chat (https://docs.aws.amazon.com/connect/latest/adminguide/chat-persistence.html) +// in the Amazon Connect Administrator Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation CreatePersistentContactAssociation for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreatePersistentContactAssociation +func (c *Connect) CreatePersistentContactAssociation(input *CreatePersistentContactAssociationInput) (*CreatePersistentContactAssociationOutput, error) { + req, out := c.CreatePersistentContactAssociationRequest(input) + return out, req.Send() +} + +// CreatePersistentContactAssociationWithContext is the same as CreatePersistentContactAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePersistentContactAssociation 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 *Connect) CreatePersistentContactAssociationWithContext(ctx aws.Context, input *CreatePersistentContactAssociationInput, opts ...request.Option) (*CreatePersistentContactAssociationOutput, error) { + req, out := c.CreatePersistentContactAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreatePrompt = "CreatePrompt" // CreatePromptRequest generates a "aws/request.Request" representing the @@ -2657,8 +3326,6 @@ // CreateSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Creates a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2853,7 +3520,7 @@ // Creates a traffic distribution group given an Amazon Connect instance that // has been replicated. // -// You can change the SignInConfig distribution only for a default TrafficDistributionGroup +// The SignInConfig distribution is available only on a default TrafficDistributionGroup // (see the IsDefault parameter in the TrafficDistributionGroup (https://docs.aws.amazon.com/connect/latest/APIReference/API_TrafficDistributionGroup.html) // data type). If you call UpdateTrafficDistribution with a modified SignInConfig // and a non-default TrafficDistributionGroup, an InvalidRequestException is @@ -3054,8 +3721,13 @@ // // Creates a user account for the specified Amazon Connect instance. // -// For information about how to create user accounts using the Amazon Connect -// console, see Add Users (https://docs.aws.amazon.com/connect/latest/adminguide/user-management.html) +// Certain UserIdentityInfo (https://docs.aws.amazon.com/connect/latest/APIReference/API_UserIdentityInfo.html) +// parameters are required in some situations. For example, Email is required +// if you are using SAML for identity management. FirstName and LastName are +// required if you are using Amazon Connect or SAML for identity management. +// +// For information about how to create users using the Amazon Connect admin +// website, see Add Users (https://docs.aws.amazon.com/connect/latest/adminguide/user-management.html) // in the Amazon Connect Administrator Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -4784,8 +5456,6 @@ // DeleteSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Deletes a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7133,8 +7803,6 @@ // DescribeSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Gets basic information about the security profle. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7317,8 +7985,8 @@ // DescribeUser API operation for Amazon Connect Service. // -// Describes the specified user account. You can find the instance ID in the -// Amazon Connect console (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) +// Describes the specified user. You can find the instance ID in the Amazon +// Connect console (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) // (it’s the final part of the ARN). The console does not display the user // IDs. Instead, list the users and note the IDs provided in the output. // @@ -7745,6 +8413,100 @@ return out, req.Send() } +const opDisassociateAnalyticsDataSet = "DisassociateAnalyticsDataSet" + +// DisassociateAnalyticsDataSetRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateAnalyticsDataSet 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 DisassociateAnalyticsDataSet for more information on using the DisassociateAnalyticsDataSet +// 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 DisassociateAnalyticsDataSetRequest method. +// req, resp := client.DisassociateAnalyticsDataSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateAnalyticsDataSet +func (c *Connect) DisassociateAnalyticsDataSetRequest(input *DisassociateAnalyticsDataSetInput) (req *request.Request, output *DisassociateAnalyticsDataSetOutput) { + op := &request.Operation{ + Name: opDisassociateAnalyticsDataSet, + HTTPMethod: "POST", + HTTPPath: "/analytics-data/instance/{InstanceId}/association", + } + + if input == nil { + input = &DisassociateAnalyticsDataSetInput{} + } + + output = &DisassociateAnalyticsDataSetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DisassociateAnalyticsDataSet API operation for Amazon Connect Service. +// +// This API is in preview release for Amazon Connect and is subject to change. +// +// Removes the dataset ID associated with a given Amazon Connect instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation DisassociateAnalyticsDataSet for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateAnalyticsDataSet +func (c *Connect) DisassociateAnalyticsDataSet(input *DisassociateAnalyticsDataSetInput) (*DisassociateAnalyticsDataSetOutput, error) { + req, out := c.DisassociateAnalyticsDataSetRequest(input) + return out, req.Send() +} + +// DisassociateAnalyticsDataSetWithContext is the same as DisassociateAnalyticsDataSet with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateAnalyticsDataSet 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 *Connect) DisassociateAnalyticsDataSetWithContext(ctx aws.Context, input *DisassociateAnalyticsDataSetInput, opts ...request.Option) (*DisassociateAnalyticsDataSetOutput, error) { + req, out := c.DisassociateAnalyticsDataSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisassociateApprovedOrigin = "DisassociateApprovedOrigin" // DisassociateApprovedOriginRequest generates a "aws/request.Request" representing the @@ -7931,6 +8693,101 @@ return out, req.Send() } +const opDisassociateFlow = "DisassociateFlow" + +// DisassociateFlowRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateFlow 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 DisassociateFlow for more information on using the DisassociateFlow +// 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 DisassociateFlowRequest method. +// req, resp := client.DisassociateFlowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateFlow +func (c *Connect) DisassociateFlowRequest(input *DisassociateFlowInput) (req *request.Request, output *DisassociateFlowOutput) { + op := &request.Operation{ + Name: opDisassociateFlow, + HTTPMethod: "DELETE", + HTTPPath: "/flow-associations/{InstanceId}/{ResourceId}/{ResourceType}", + } + + if input == nil { + input = &DisassociateFlowInput{} + } + + output = &DisassociateFlowOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DisassociateFlow API operation for Amazon Connect Service. +// +// Disassociates a connect resource from a flow. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation DisassociateFlow for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateFlow +func (c *Connect) DisassociateFlow(input *DisassociateFlowInput) (*DisassociateFlowOutput, error) { + req, out := c.DisassociateFlowRequest(input) + return out, req.Send() +} + +// DisassociateFlowWithContext is the same as DisassociateFlow with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateFlow 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 *Connect) DisassociateFlowWithContext(ctx aws.Context, input *DisassociateFlowInput, opts ...request.Option) (*DisassociateFlowOutput, error) { + req, out := c.DisassociateFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisassociateInstanceStorageConfig = "DisassociateInstanceStorageConfig" // DisassociateInstanceStorageConfigRequest generates a "aws/request.Request" representing the @@ -9218,7 +10075,13 @@ // GetFederationToken API operation for Amazon Connect Service. // -// Retrieves a token for federation. +// Supports SAML sign-in for Amazon Connect. Retrieves a token for federation. +// The token is for the Amazon Connect user which corresponds to the IAM credentials +// that were used to invoke this action. +// +// For more information about how SAML sign-in works in Amazon Connect, see +// Configure SAML with IAM for Amazon Connect in the Amazon Connect Administrator +// Guide. (https://docs.aws.amazon.com/connect/latest/adminguide/configure-saml.html) // // This API doesn't support root users. If you try to invoke GetFederationToken // with root credentials, an error message similar to the following one appears: @@ -9275,6 +10138,100 @@ return out, req.Send() } +const opGetFlowAssociation = "GetFlowAssociation" + +// GetFlowAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetFlowAssociation 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 GetFlowAssociation for more information on using the GetFlowAssociation +// 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 GetFlowAssociationRequest method. +// req, resp := client.GetFlowAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/GetFlowAssociation +func (c *Connect) GetFlowAssociationRequest(input *GetFlowAssociationInput) (req *request.Request, output *GetFlowAssociationOutput) { + op := &request.Operation{ + Name: opGetFlowAssociation, + HTTPMethod: "GET", + HTTPPath: "/flow-associations/{InstanceId}/{ResourceId}/{ResourceType}", + } + + if input == nil { + input = &GetFlowAssociationInput{} + } + + output = &GetFlowAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetFlowAssociation API operation for Amazon Connect Service. +// +// Retrieves the flow associated for a given 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 Amazon Connect Service's +// API operation GetFlowAssociation for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/GetFlowAssociation +func (c *Connect) GetFlowAssociation(input *GetFlowAssociationInput) (*GetFlowAssociationOutput, error) { + req, out := c.GetFlowAssociationRequest(input) + return out, req.Send() +} + +// GetFlowAssociationWithContext is the same as GetFlowAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetFlowAssociation 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 *Connect) GetFlowAssociationWithContext(ctx aws.Context, input *GetFlowAssociationInput, opts ...request.Option) (*GetFlowAssociationOutput, error) { + req, out := c.GetFlowAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMetricData = "GetMetricData" // GetMetricDataRequest generates a "aws/request.Request" representing the @@ -9330,6 +10287,15 @@ // (https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html) // in the Amazon Connect Administrator Guide. // +// We recommend using the GetMetricDataV2 (https://docs.aws.amazon.com/connect/latest/APIReference/API_GetMetricDataV2.html) +// API. It provides more flexibility, features, and the ability to query longer +// time ranges than GetMetricData. Use it to retrieve historical agent and contact +// metrics for the last 3 months, at varying intervals. You can also use it +// to build custom dashboards to measure historical queue and agent performance. +// For example, you can track the number of incoming contacts for the last 7 +// days, with data split by day, to see how contact volume changed per day of +// the week. +// // 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. @@ -9482,7 +10448,7 @@ // the previous version of this API. It has new metrics, offers filtering at // a metric level, and offers the ability to filter and group data by channels, // queues, routing profiles, agents, and agent hierarchy levels. It can retrieve -// historical data for the last 35 days, in 24-hour intervals. +// historical data for the last 3 months, at varying intervals. // // For a description of the historical metrics that are supported by GetMetricDataV2 // and GetMetricData, see Historical metrics definitions (https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html) @@ -9860,6 +10826,102 @@ return out, req.Send() } +const opImportPhoneNumber = "ImportPhoneNumber" + +// ImportPhoneNumberRequest generates a "aws/request.Request" representing the +// client's request for the ImportPhoneNumber 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 ImportPhoneNumber for more information on using the ImportPhoneNumber +// 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 ImportPhoneNumberRequest method. +// req, resp := client.ImportPhoneNumberRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ImportPhoneNumber +func (c *Connect) ImportPhoneNumberRequest(input *ImportPhoneNumberInput) (req *request.Request, output *ImportPhoneNumberOutput) { + op := &request.Operation{ + Name: opImportPhoneNumber, + HTTPMethod: "POST", + HTTPPath: "/phone-number/import", + } + + if input == nil { + input = &ImportPhoneNumberInput{} + } + + output = &ImportPhoneNumberOutput{} + req = c.newRequest(op, input, output) + return +} + +// ImportPhoneNumber API operation for Amazon Connect Service. +// +// Imports a claimed phone number from an external service, such as Amazon Pinpoint, +// into an Amazon Connect instance. You can call this API only in the same Amazon +// Web Services Region where the Amazon Connect instance was created. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation ImportPhoneNumber for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - IdempotencyException +// An entity with the same name already exists. +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ImportPhoneNumber +func (c *Connect) ImportPhoneNumber(input *ImportPhoneNumberInput) (*ImportPhoneNumberOutput, error) { + req, out := c.ImportPhoneNumberRequest(input) + return out, req.Send() +} + +// ImportPhoneNumberWithContext is the same as ImportPhoneNumber with the addition of +// the ability to pass a context and additional request options. +// +// See ImportPhoneNumber 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 *Connect) ImportPhoneNumberWithContext(ctx aws.Context, input *ImportPhoneNumberInput, opts ...request.Option) (*ImportPhoneNumberOutput, error) { + req, out := c.ImportPhoneNumberRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListAgentStatuses = "ListAgentStatuses" // ListAgentStatusesRequest generates a "aws/request.Request" representing the @@ -10010,6 +11072,100 @@ return p.Err() } +const opListAnalyticsDataAssociations = "ListAnalyticsDataAssociations" + +// ListAnalyticsDataAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListAnalyticsDataAssociations 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 ListAnalyticsDataAssociations for more information on using the ListAnalyticsDataAssociations +// 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 ListAnalyticsDataAssociationsRequest method. +// req, resp := client.ListAnalyticsDataAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListAnalyticsDataAssociations +func (c *Connect) ListAnalyticsDataAssociationsRequest(input *ListAnalyticsDataAssociationsInput) (req *request.Request, output *ListAnalyticsDataAssociationsOutput) { + op := &request.Operation{ + Name: opListAnalyticsDataAssociations, + HTTPMethod: "GET", + HTTPPath: "/analytics-data/instance/{InstanceId}/association", + } + + if input == nil { + input = &ListAnalyticsDataAssociationsInput{} + } + + output = &ListAnalyticsDataAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAnalyticsDataAssociations API operation for Amazon Connect Service. +// +// This API is in preview release for Amazon Connect and is subject to change. +// +// Lists the association status of requested dataset ID for a given Amazon Connect +// instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation ListAnalyticsDataAssociations for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListAnalyticsDataAssociations +func (c *Connect) ListAnalyticsDataAssociations(input *ListAnalyticsDataAssociationsInput) (*ListAnalyticsDataAssociationsOutput, error) { + req, out := c.ListAnalyticsDataAssociationsRequest(input) + return out, req.Send() +} + +// ListAnalyticsDataAssociationsWithContext is the same as ListAnalyticsDataAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListAnalyticsDataAssociations 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 *Connect) ListAnalyticsDataAssociationsWithContext(ctx aws.Context, input *ListAnalyticsDataAssociationsInput, opts ...request.Option) (*ListAnalyticsDataAssociationsOutput, error) { + req, out := c.ListAnalyticsDataAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListApprovedOrigins = "ListApprovedOrigins" // ListApprovedOriginsRequest generates a "aws/request.Request" representing the @@ -11346,6 +12502,157 @@ return p.Err() } +const opListFlowAssociations = "ListFlowAssociations" + +// ListFlowAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListFlowAssociations 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 ListFlowAssociations for more information on using the ListFlowAssociations +// 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 ListFlowAssociationsRequest method. +// req, resp := client.ListFlowAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListFlowAssociations +func (c *Connect) ListFlowAssociationsRequest(input *ListFlowAssociationsInput) (req *request.Request, output *ListFlowAssociationsOutput) { + op := &request.Operation{ + Name: opListFlowAssociations, + HTTPMethod: "GET", + HTTPPath: "/flow-associations-summary/{InstanceId}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListFlowAssociationsInput{} + } + + output = &ListFlowAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListFlowAssociations API operation for Amazon Connect Service. +// +// List the flow association based on the filters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation ListFlowAssociations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListFlowAssociations +func (c *Connect) ListFlowAssociations(input *ListFlowAssociationsInput) (*ListFlowAssociationsOutput, error) { + req, out := c.ListFlowAssociationsRequest(input) + return out, req.Send() +} + +// ListFlowAssociationsWithContext is the same as ListFlowAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListFlowAssociations 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 *Connect) ListFlowAssociationsWithContext(ctx aws.Context, input *ListFlowAssociationsInput, opts ...request.Option) (*ListFlowAssociationsOutput, error) { + req, out := c.ListFlowAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListFlowAssociationsPages iterates over the pages of a ListFlowAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListFlowAssociations 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 ListFlowAssociations operation. +// pageNum := 0 +// err := client.ListFlowAssociationsPages(params, +// func(page *connect.ListFlowAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Connect) ListFlowAssociationsPages(input *ListFlowAssociationsInput, fn func(*ListFlowAssociationsOutput, bool) bool) error { + return c.ListFlowAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListFlowAssociationsPagesWithContext same as ListFlowAssociationsPages 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 *Connect) ListFlowAssociationsPagesWithContext(ctx aws.Context, input *ListFlowAssociationsInput, fn func(*ListFlowAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListFlowAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListFlowAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListFlowAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListHoursOfOperations = "ListHoursOfOperations" // ListHoursOfOperationsRequest generates a "aws/request.Request" representing the @@ -13323,6 +14630,159 @@ return p.Err() } +const opListRealtimeContactAnalysisSegmentsV2 = "ListRealtimeContactAnalysisSegmentsV2" + +// ListRealtimeContactAnalysisSegmentsV2Request generates a "aws/request.Request" representing the +// client's request for the ListRealtimeContactAnalysisSegmentsV2 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 ListRealtimeContactAnalysisSegmentsV2 for more information on using the ListRealtimeContactAnalysisSegmentsV2 +// 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 ListRealtimeContactAnalysisSegmentsV2Request method. +// req, resp := client.ListRealtimeContactAnalysisSegmentsV2Request(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListRealtimeContactAnalysisSegmentsV2 +func (c *Connect) ListRealtimeContactAnalysisSegmentsV2Request(input *ListRealtimeContactAnalysisSegmentsV2Input) (req *request.Request, output *ListRealtimeContactAnalysisSegmentsV2Output) { + op := &request.Operation{ + Name: opListRealtimeContactAnalysisSegmentsV2, + HTTPMethod: "POST", + HTTPPath: "/contact/list-real-time-analysis-segments-v2/{InstanceId}/{ContactId}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRealtimeContactAnalysisSegmentsV2Input{} + } + + output = &ListRealtimeContactAnalysisSegmentsV2Output{} + req = c.newRequest(op, input, output) + return +} + +// ListRealtimeContactAnalysisSegmentsV2 API operation for Amazon Connect Service. +// +// Provides a list of analysis segments for a real-time analysis session. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation ListRealtimeContactAnalysisSegmentsV2 for usage and error information. +// +// Returned Error Types: +// +// - OutputTypeNotFoundException +// Thrown for analyzed content when requested OutputType was not enabled for +// a given contact. For example, if an OutputType.Raw was requested for a contact +// that had `RedactedOnly` Redaction policy set in Contact flow. +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InvalidRequestException +// The request is not valid. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListRealtimeContactAnalysisSegmentsV2 +func (c *Connect) ListRealtimeContactAnalysisSegmentsV2(input *ListRealtimeContactAnalysisSegmentsV2Input) (*ListRealtimeContactAnalysisSegmentsV2Output, error) { + req, out := c.ListRealtimeContactAnalysisSegmentsV2Request(input) + return out, req.Send() +} + +// ListRealtimeContactAnalysisSegmentsV2WithContext is the same as ListRealtimeContactAnalysisSegmentsV2 with the addition of +// the ability to pass a context and additional request options. +// +// See ListRealtimeContactAnalysisSegmentsV2 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 *Connect) ListRealtimeContactAnalysisSegmentsV2WithContext(ctx aws.Context, input *ListRealtimeContactAnalysisSegmentsV2Input, opts ...request.Option) (*ListRealtimeContactAnalysisSegmentsV2Output, error) { + req, out := c.ListRealtimeContactAnalysisSegmentsV2Request(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRealtimeContactAnalysisSegmentsV2Pages iterates over the pages of a ListRealtimeContactAnalysisSegmentsV2 operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRealtimeContactAnalysisSegmentsV2 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 ListRealtimeContactAnalysisSegmentsV2 operation. +// pageNum := 0 +// err := client.ListRealtimeContactAnalysisSegmentsV2Pages(params, +// func(page *connect.ListRealtimeContactAnalysisSegmentsV2Output, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Connect) ListRealtimeContactAnalysisSegmentsV2Pages(input *ListRealtimeContactAnalysisSegmentsV2Input, fn func(*ListRealtimeContactAnalysisSegmentsV2Output, bool) bool) error { + return c.ListRealtimeContactAnalysisSegmentsV2PagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRealtimeContactAnalysisSegmentsV2PagesWithContext same as ListRealtimeContactAnalysisSegmentsV2Pages 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 *Connect) ListRealtimeContactAnalysisSegmentsV2PagesWithContext(ctx aws.Context, input *ListRealtimeContactAnalysisSegmentsV2Input, fn func(*ListRealtimeContactAnalysisSegmentsV2Output, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRealtimeContactAnalysisSegmentsV2Input + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRealtimeContactAnalysisSegmentsV2Request(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRealtimeContactAnalysisSegmentsV2Output), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListRoutingProfileQueues = "ListRoutingProfileQueues" // ListRoutingProfileQueuesRequest generates a "aws/request.Request" representing the @@ -13922,6 +15382,154 @@ return p.Err() } +const opListSecurityProfileApplications = "ListSecurityProfileApplications" + +// ListSecurityProfileApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListSecurityProfileApplications 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 ListSecurityProfileApplications for more information on using the ListSecurityProfileApplications +// 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 ListSecurityProfileApplicationsRequest method. +// req, resp := client.ListSecurityProfileApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListSecurityProfileApplications +func (c *Connect) ListSecurityProfileApplicationsRequest(input *ListSecurityProfileApplicationsInput) (req *request.Request, output *ListSecurityProfileApplicationsOutput) { + op := &request.Operation{ + Name: opListSecurityProfileApplications, + HTTPMethod: "GET", + HTTPPath: "/security-profiles-applications/{InstanceId}/{SecurityProfileId}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSecurityProfileApplicationsInput{} + } + + output = &ListSecurityProfileApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSecurityProfileApplications API operation for Amazon Connect Service. +// +// Returns a list of third-party applications in a specific security profile. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation ListSecurityProfileApplications for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListSecurityProfileApplications +func (c *Connect) ListSecurityProfileApplications(input *ListSecurityProfileApplicationsInput) (*ListSecurityProfileApplicationsOutput, error) { + req, out := c.ListSecurityProfileApplicationsRequest(input) + return out, req.Send() +} + +// ListSecurityProfileApplicationsWithContext is the same as ListSecurityProfileApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListSecurityProfileApplications 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 *Connect) ListSecurityProfileApplicationsWithContext(ctx aws.Context, input *ListSecurityProfileApplicationsInput, opts ...request.Option) (*ListSecurityProfileApplicationsOutput, error) { + req, out := c.ListSecurityProfileApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSecurityProfileApplicationsPages iterates over the pages of a ListSecurityProfileApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSecurityProfileApplications 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 ListSecurityProfileApplications operation. +// pageNum := 0 +// err := client.ListSecurityProfileApplicationsPages(params, +// func(page *connect.ListSecurityProfileApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Connect) ListSecurityProfileApplicationsPages(input *ListSecurityProfileApplicationsInput, fn func(*ListSecurityProfileApplicationsOutput, bool) bool) error { + return c.ListSecurityProfileApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSecurityProfileApplicationsPagesWithContext same as ListSecurityProfileApplicationsPages 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 *Connect) ListSecurityProfileApplicationsPagesWithContext(ctx aws.Context, input *ListSecurityProfileApplicationsInput, fn func(*ListSecurityProfileApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSecurityProfileApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSecurityProfileApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSecurityProfileApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSecurityProfilePermissions = "ListSecurityProfilePermissions" // ListSecurityProfilePermissionsRequest generates a "aws/request.Request" representing the @@ -13971,8 +15579,6 @@ // ListSecurityProfilePermissions API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Lists the permissions granted to a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -15762,7 +17368,7 @@ // Services Region where the number was claimed. // // To release phone numbers from a traffic distribution group, use the ReleasePhoneNumber -// API, not the Amazon Connect console. +// API, not the Amazon Connect admin website. // // After releasing a phone number, the phone number enters into a cooldown period // of 30 days. It cannot be searched for or claimed again until the period has @@ -15882,7 +17488,8 @@ // ReplicateInstance API operation for Amazon Connect Service. // // Replicates an Amazon Connect instance in the specified Amazon Web Services -// Region. +// Region and copies configuration information for Amazon Connect resources +// across Amazon Web Services Regions. // // For more information about replicating an Amazon Connect instance, see Create // a replica of your existing Amazon Connect instance (https://docs.aws.amazon.com/connect/latest/adminguide/create-replica-connect-instance.html) @@ -15988,7 +17595,9 @@ // ResumeContactRecording API operation for Amazon Connect Service. // // When a contact is being recorded, and the recording has been suspended using -// SuspendContactRecording, this API resumes recording the call or screen. +// SuspendContactRecording, this API resumes recording whatever recording is +// selected in the flow configuration: call, screen, or both. If only call recording +// or only screen recording is enabled, then it would resume. // // Voice and screen recordings are supported. // @@ -17517,6 +19126,111 @@ return p.Err() } +const opSendChatIntegrationEvent = "SendChatIntegrationEvent" + +// SendChatIntegrationEventRequest generates a "aws/request.Request" representing the +// client's request for the SendChatIntegrationEvent 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 SendChatIntegrationEvent for more information on using the SendChatIntegrationEvent +// 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 SendChatIntegrationEventRequest method. +// req, resp := client.SendChatIntegrationEventRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/SendChatIntegrationEvent +func (c *Connect) SendChatIntegrationEventRequest(input *SendChatIntegrationEventInput) (req *request.Request, output *SendChatIntegrationEventOutput) { + op := &request.Operation{ + Name: opSendChatIntegrationEvent, + HTTPMethod: "POST", + HTTPPath: "/chat-integration-event", + } + + if input == nil { + input = &SendChatIntegrationEventInput{} + } + + output = &SendChatIntegrationEventOutput{} + req = c.newRequest(op, input, output) + return +} + +// SendChatIntegrationEvent API operation for Amazon Connect Service. +// +// Processes chat integration events from Amazon Web Services or external integrations +// to Amazon Connect. A chat integration event includes: +// +// - SourceId, DestinationId, and Subtype: a set of identifiers, uniquely +// representing a chat +// +// - ChatEvent: details of the chat action to perform such as sending a message, +// event, or disconnecting from a chat +// +// When a chat integration event is sent with chat identifiers that do not map +// to an active chat contact, a new chat contact is also created before handling +// chat action. +// +// Access to this API is currently restricted to Amazon Pinpoint for supporting +// SMS integration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation SendChatIntegrationEvent for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/SendChatIntegrationEvent +func (c *Connect) SendChatIntegrationEvent(input *SendChatIntegrationEventInput) (*SendChatIntegrationEventOutput, error) { + req, out := c.SendChatIntegrationEventRequest(input) + return out, req.Send() +} + +// SendChatIntegrationEventWithContext is the same as SendChatIntegrationEvent with the addition of +// the ability to pass a context and additional request options. +// +// See SendChatIntegrationEvent 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 *Connect) SendChatIntegrationEventWithContext(ctx aws.Context, input *SendChatIntegrationEventInput, opts ...request.Option) (*SendChatIntegrationEventOutput, error) { + req, out := c.SendChatIntegrationEventRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartChatContact = "StartChatContact" // StartChatContactRequest generates a "aws/request.Request" representing the @@ -18092,7 +19806,36 @@ // StartTaskContact API operation for Amazon Connect Service. // -// Initiates a flow to start a new task. +// Initiates a flow to start a new task contact. For more information about +// task contacts, see Concepts: Tasks in Amazon Connect (https://docs.aws.amazon.com/connect/latest/adminguide/tasks.html) +// in the Amazon Connect Administrator Guide. +// +// When using PreviousContactId and RelatedContactId input parameters, note +// the following: +// +// - PreviousContactId Any updates to user-defined task contact attributes +// on any contact linked through the same PreviousContactId will affect every +// contact in the chain. There can be a maximum of 12 linked task contacts +// in a chain. That is, 12 task contacts can be created that share the same +// PreviousContactId. +// +// - RelatedContactId Copies contact attributes from the related task contact +// to the new contact. Any update on attributes in a new task contact does +// not update attributes on previous contact. There’s no limit on the number +// of task contacts that can be created that use the same RelatedContactId. +// +// In addition, when calling StartTaskContact include only one of these parameters: +// ContactFlowID, QuickConnectID, or TaskTemplateID. Only one parameter is required +// as long as the task template has a flow configured to run it. If more than +// one parameter is specified, or only the TaskTemplateID is specified but it +// does not have a flow configured, the request returns an error because Amazon +// Connect cannot identify the unique flow to run when the task is created. +// +// A ServiceQuotaExceededException occurs when the number of open tasks exceeds +// the active tasks quota or there are already 12 tasks referencing the same +// PreviousContactId. For more information about service quotas for task contacts, +// see Amazon Connect service quotas (https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html) +// in the Amazon Connect Administrator Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -18143,6 +19886,99 @@ return out, req.Send() } +const opStartWebRTCContact = "StartWebRTCContact" + +// StartWebRTCContactRequest generates a "aws/request.Request" representing the +// client's request for the StartWebRTCContact 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 StartWebRTCContact for more information on using the StartWebRTCContact +// 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 StartWebRTCContactRequest method. +// req, resp := client.StartWebRTCContactRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartWebRTCContact +func (c *Connect) StartWebRTCContactRequest(input *StartWebRTCContactInput) (req *request.Request, output *StartWebRTCContactOutput) { + op := &request.Operation{ + Name: opStartWebRTCContact, + HTTPMethod: "PUT", + HTTPPath: "/contact/webrtc", + } + + if input == nil { + input = &StartWebRTCContactInput{} + } + + output = &StartWebRTCContactOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartWebRTCContact API operation for Amazon Connect Service. +// +// Places an inbound in-app, web, or video call to a contact, and then initiates +// the flow. It performs the actions in the flow that are specified (in ContactFlowId) +// and present in the Amazon Connect instance (specified as InstanceId). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation StartWebRTCContact for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - LimitExceededException +// The allowed limit for the resource has been exceeded. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartWebRTCContact +func (c *Connect) StartWebRTCContact(input *StartWebRTCContactInput) (*StartWebRTCContactOutput, error) { + req, out := c.StartWebRTCContactRequest(input) + return out, req.Send() +} + +// StartWebRTCContactWithContext is the same as StartWebRTCContact with the addition of +// the ability to pass a context and additional request options. +// +// See StartWebRTCContact 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 *Connect) StartWebRTCContactWithContext(ctx aws.Context, input *StartWebRTCContactInput, opts ...request.Option) (*StartWebRTCContactOutput, error) { + req, out := c.StartWebRTCContactRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStopContact = "StopContact" // StopContactRequest generates a "aws/request.Request" representing the @@ -18572,10 +20408,12 @@ // SuspendContactRecording API operation for Amazon Connect Service. // -// When a contact is being recorded, this API suspends recording the call or -// screen. For example, you might suspend the call or screen recording while -// collecting sensitive information, such as a credit card number. Then use -// ResumeContactRecording to restart recording. +// When a contact is being recorded, this API suspends recording whatever is +// selected in the flow configuration: call, screen, or both. If only call recording +// or only screen recording is enabled, then it would be suspended. For example, +// you might suspend the screen recording while collecting sensitive information, +// such as a credit card number. Then use ResumeContactRecording to restart +// recording the screen. // // The period of time that the recording is suspended is filled with silence // in the final recording. @@ -20507,6 +22345,111 @@ return out, req.Send() } +const opUpdatePhoneNumberMetadata = "UpdatePhoneNumberMetadata" + +// UpdatePhoneNumberMetadataRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePhoneNumberMetadata 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 UpdatePhoneNumberMetadata for more information on using the UpdatePhoneNumberMetadata +// 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 UpdatePhoneNumberMetadataRequest method. +// req, resp := client.UpdatePhoneNumberMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdatePhoneNumberMetadata +func (c *Connect) UpdatePhoneNumberMetadataRequest(input *UpdatePhoneNumberMetadataInput) (req *request.Request, output *UpdatePhoneNumberMetadataOutput) { + op := &request.Operation{ + Name: opUpdatePhoneNumberMetadata, + HTTPMethod: "PUT", + HTTPPath: "/phone-number/{PhoneNumberId}/metadata", + } + + if input == nil { + input = &UpdatePhoneNumberMetadataInput{} + } + + output = &UpdatePhoneNumberMetadataOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdatePhoneNumberMetadata API operation for Amazon Connect Service. +// +// Updates a phone number’s metadata. +// +// To verify the status of a previous UpdatePhoneNumberMetadata operation, call +// the DescribePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribePhoneNumber.html) +// API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Service's +// API operation UpdatePhoneNumberMetadata for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ResourceInUseException +// That resource is already in use. Please try another. +// +// - IdempotencyException +// An entity with the same name already exists. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdatePhoneNumberMetadata +func (c *Connect) UpdatePhoneNumberMetadata(input *UpdatePhoneNumberMetadataInput) (*UpdatePhoneNumberMetadataOutput, error) { + req, out := c.UpdatePhoneNumberMetadataRequest(input) + return out, req.Send() +} + +// UpdatePhoneNumberMetadataWithContext is the same as UpdatePhoneNumberMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePhoneNumberMetadata 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 *Connect) UpdatePhoneNumberMetadataWithContext(ctx aws.Context, input *UpdatePhoneNumberMetadataInput, opts ...request.Option) (*UpdatePhoneNumberMetadataOutput, error) { + req, out := c.UpdatePhoneNumberMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdatePrompt = "UpdatePrompt" // UpdatePromptRequest generates a "aws/request.Request" representing the @@ -21887,8 +23830,6 @@ // UpdateSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Updates a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -22079,7 +24020,7 @@ // // Updates the traffic distribution for a given traffic distribution group. // -// You can change the SignInConfig distribution only for a default TrafficDistributionGroup +// The SignInConfig distribution is available only on a default TrafficDistributionGroup // (see the IsDefault parameter in the TrafficDistributionGroup (https://docs.aws.amazon.com/connect/latest/APIReference/API_TrafficDistributionGroup.html) // data type). If you call UpdateTrafficDistribution with a modified SignInConfig // and a non-default TrafficDistributionGroup, an InvalidRequestException is @@ -23441,6 +25382,12 @@ // The display order of the agent status. DisplayOrder *int64 `min:"1" type:"integer"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the agent status. Name *string `min:"1" type:"string"` @@ -23497,6 +25444,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *AgentStatus) SetLastModifiedRegion(v string) *AgentStatus { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *AgentStatus) SetLastModifiedTime(v time.Time) *AgentStatus { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *AgentStatus) SetName(v string) *AgentStatus { s.Name = &v @@ -23581,6 +25540,12 @@ // The identifier for an agent status. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the agent status. Name *string `min:"1" type:"string"` @@ -23618,6 +25583,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *AgentStatusSummary) SetLastModifiedRegion(v string) *AgentStatusSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *AgentStatusSummary) SetLastModifiedTime(v time.Time) *AgentStatusSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *AgentStatusSummary) SetName(v string) *AgentStatusSummary { s.Name = &v @@ -23630,6 +25607,109 @@ return s } +// Information about the capabilities enabled for participants of the contact. +type AllowedCapabilities struct { + _ struct{} `type:"structure"` + + // Information about the agent's video sharing capabilities. + Agent *ParticipantCapabilities `type:"structure"` + + // Information about the customer's video sharing capabilities. + Customer *ParticipantCapabilities `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 AllowedCapabilities) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AllowedCapabilities) GoString() string { + return s.String() +} + +// SetAgent sets the Agent field's value. +func (s *AllowedCapabilities) SetAgent(v *ParticipantCapabilities) *AllowedCapabilities { + s.Agent = v + return s +} + +// SetCustomer sets the Customer field's value. +func (s *AllowedCapabilities) SetCustomer(v *ParticipantCapabilities) *AllowedCapabilities { + s.Customer = v + return s +} + +// This API is in preview release for Amazon Connect and is subject to change. +// +// Information about associations that are successfully created: DataSetId, +// TargetAccountId, ResourceShareId, ResourceShareArn. +type AnalyticsDataAssociationResult struct { + _ struct{} `type:"structure"` + + // The identifier of the dataset. + DataSetId *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the Resource Access Manager share. + ResourceShareArn *string `type:"string"` + + // The Resource Access Manager share ID. + ResourceShareId *string `type:"string"` + + // The identifier of the target account. + TargetAccountId *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 AnalyticsDataAssociationResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsDataAssociationResult) GoString() string { + return s.String() +} + +// SetDataSetId sets the DataSetId field's value. +func (s *AnalyticsDataAssociationResult) SetDataSetId(v string) *AnalyticsDataAssociationResult { + s.DataSetId = &v + return s +} + +// SetResourceShareArn sets the ResourceShareArn field's value. +func (s *AnalyticsDataAssociationResult) SetResourceShareArn(v string) *AnalyticsDataAssociationResult { + s.ResourceShareArn = &v + return s +} + +// SetResourceShareId sets the ResourceShareId field's value. +func (s *AnalyticsDataAssociationResult) SetResourceShareId(v string) *AnalyticsDataAssociationResult { + s.ResourceShareId = &v + return s +} + +// SetTargetAccountId sets the TargetAccountId field's value. +func (s *AnalyticsDataAssociationResult) SetTargetAccountId(v string) *AnalyticsDataAssociationResult { + s.TargetAccountId = &v + return s +} + // Configuration of the answering machine detection. type AnswerMachineDetectionConfig struct { _ struct{} `type:"structure"` @@ -23672,9 +25752,69 @@ return s } +// This API is in preview release for Amazon Connect and is subject to change. +// +// A third-party application's metadata. +type Application struct { + _ struct{} `type:"structure"` + + // The permissions that the agent is granted on the application. Only the ACCESS + // permission is supported. + ApplicationPermissions []*string `min:"1" type:"list"` + + // Namespace of the application that you want to give access to. + Namespace *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Application) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Application"} + if s.ApplicationPermissions != nil && len(s.ApplicationPermissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationPermissions", 1)) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationPermissions sets the ApplicationPermissions field's value. +func (s *Application) SetApplicationPermissions(v []*string) *Application { + s.ApplicationPermissions = v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *Application) SetNamespace(v string) *Application { + s.Namespace = &v + return s +} + // This action must be set if TriggerEventSource is one of the following values: -// OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable. -// Contact is categorized using the rule name. +// OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable +// | OnPostChatAnalysisAvailable. Contact is categorized using the rule name. // // RuleName is used as ContactCategory. type AssignContactCategoryActionDefinition struct { @@ -23699,6 +25839,144 @@ return s.String() } +type AssociateAnalyticsDataSetInput struct { + _ struct{} `type:"structure"` + + // The identifier of the dataset to associate with the target account. + // + // DataSetId is a required field + DataSetId *string `min:"1" type:"string" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the target account. Use to associate a dataset to a different + // account than the one containing the Amazon Connect instance. If not specified, + // by default this value is the Amazon Web Services account that has the Amazon + // Connect instance. + TargetAccountId *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 AssociateAnalyticsDataSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAnalyticsDataSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateAnalyticsDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateAnalyticsDataSetInput"} + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetId sets the DataSetId field's value. +func (s *AssociateAnalyticsDataSetInput) SetDataSetId(v string) *AssociateAnalyticsDataSetInput { + s.DataSetId = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *AssociateAnalyticsDataSetInput) SetInstanceId(v string) *AssociateAnalyticsDataSetInput { + s.InstanceId = &v + return s +} + +// SetTargetAccountId sets the TargetAccountId field's value. +func (s *AssociateAnalyticsDataSetInput) SetTargetAccountId(v string) *AssociateAnalyticsDataSetInput { + s.TargetAccountId = &v + return s +} + +type AssociateAnalyticsDataSetOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the dataset that was associated. + DataSetId *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the Resource Access Manager share. + ResourceShareArn *string `type:"string"` + + // The Resource Access Manager share ID that is generated. + ResourceShareId *string `type:"string"` + + // The identifier of the target account. + TargetAccountId *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 AssociateAnalyticsDataSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAnalyticsDataSetOutput) GoString() string { + return s.String() +} + +// SetDataSetId sets the DataSetId field's value. +func (s *AssociateAnalyticsDataSetOutput) SetDataSetId(v string) *AssociateAnalyticsDataSetOutput { + s.DataSetId = &v + return s +} + +// SetResourceShareArn sets the ResourceShareArn field's value. +func (s *AssociateAnalyticsDataSetOutput) SetResourceShareArn(v string) *AssociateAnalyticsDataSetOutput { + s.ResourceShareArn = &v + return s +} + +// SetResourceShareId sets the ResourceShareId field's value. +func (s *AssociateAnalyticsDataSetOutput) SetResourceShareId(v string) *AssociateAnalyticsDataSetOutput { + s.ResourceShareId = &v + return s +} + +// SetTargetAccountId sets the TargetAccountId field's value. +func (s *AssociateAnalyticsDataSetOutput) SetTargetAccountId(v string) *AssociateAnalyticsDataSetOutput { + s.TargetAccountId = &v + return s +} + type AssociateApprovedOriginInput struct { _ struct{} `type:"structure"` @@ -23991,6 +26269,121 @@ return s.String() } +type AssociateFlowInput struct { + _ struct{} `type:"structure"` + + // The identifier of the flow. + // + // FlowId is a required field + FlowId *string `type:"string" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the resource. + // + // ResourceId is a required field + ResourceId *string `type:"string" required:"true"` + + // A valid resource type. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true" enum:"FlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateFlowInput"} + if s.FlowId == nil { + invalidParams.Add(request.NewErrParamRequired("FlowId")) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFlowId sets the FlowId field's value. +func (s *AssociateFlowInput) SetFlowId(v string) *AssociateFlowInput { + s.FlowId = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *AssociateFlowInput) SetInstanceId(v string) *AssociateFlowInput { + s.InstanceId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *AssociateFlowInput) SetResourceId(v string) *AssociateFlowInput { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *AssociateFlowInput) SetResourceType(v string) *AssociateFlowInput { + s.ResourceType = &v + return s +} + +type AssociateFlowOutput 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 AssociateFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateFlowOutput) GoString() string { + return s.String() +} + type AssociateInstanceStorageConfigInput struct { _ struct{} `type:"structure"` @@ -24877,6 +27270,51 @@ return s } +// The attendee information, including attendee ID and join token. +type Attendee struct { + _ struct{} `type:"structure"` + + // The Amazon Chime SDK attendee ID. + AttendeeId *string `type:"string"` + + // The join token used by the Amazon Chime SDK attendee. + // + // JoinToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Attendee's + // String and GoString methods. + JoinToken *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Attendee) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Attendee) GoString() string { + return s.String() +} + +// SetAttendeeId sets the AttendeeId field's value. +func (s *Attendee) SetAttendeeId(v string) *Attendee { + s.AttendeeId = &v + return s +} + +// SetJoinToken sets the JoinToken field's value. +func (s *Attendee) SetJoinToken(v string) *Attendee { + s.JoinToken = &v + return s +} + // A toggle for an individual feature at the instance level. type Attribute struct { _ struct{} `type:"structure"` @@ -24918,6 +27356,38 @@ return s } +// Has audio-specific configurations as the operating parameter for Echo Reduction. +type AudioFeatures struct { + _ struct{} `type:"structure"` + + // Makes echo reduction available to clients who connect to the meeting. + EchoReduction *string `type:"string" enum:"MeetingFeatureStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudioFeatures) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AudioFeatures) GoString() string { + return s.String() +} + +// SetEchoReduction sets the EchoReduction field's value. +func (s *AudioFeatures) SetEchoReduction(v string) *AudioFeatures { + s.EchoReduction = &v + return s +} + // Information about available phone numbers. type AvailableNumberSummary struct { _ struct{} `type:"structure"` @@ -24969,6 +27439,620 @@ return s } +type BatchAssociateAnalyticsDataSetInput struct { + _ struct{} `type:"structure"` + + // An array of dataset identifiers to associate. + // + // DataSetIds is a required field + DataSetIds []*string `type:"list" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the target account. Use to associate a dataset to a different + // account than the one containing the Amazon Connect instance. If not specified, + // by default this value is the Amazon Web Services account that has the Amazon + // Connect instance. + TargetAccountId *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 BatchAssociateAnalyticsDataSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchAssociateAnalyticsDataSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchAssociateAnalyticsDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchAssociateAnalyticsDataSetInput"} + if s.DataSetIds == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetIds")) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetIds sets the DataSetIds field's value. +func (s *BatchAssociateAnalyticsDataSetInput) SetDataSetIds(v []*string) *BatchAssociateAnalyticsDataSetInput { + s.DataSetIds = v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *BatchAssociateAnalyticsDataSetInput) SetInstanceId(v string) *BatchAssociateAnalyticsDataSetInput { + s.InstanceId = &v + return s +} + +// SetTargetAccountId sets the TargetAccountId field's value. +func (s *BatchAssociateAnalyticsDataSetInput) SetTargetAccountId(v string) *BatchAssociateAnalyticsDataSetInput { + s.TargetAccountId = &v + return s +} + +type BatchAssociateAnalyticsDataSetOutput struct { + _ struct{} `type:"structure"` + + // Information about associations that are successfully created: DataSetId, + // TargetAccountId, ResourceShareId, ResourceShareArn. + Created []*AnalyticsDataAssociationResult `type:"list"` + + // A list of errors for datasets that aren't successfully associated with the + // target account. + Errors []*ErrorResult `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 BatchAssociateAnalyticsDataSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchAssociateAnalyticsDataSetOutput) GoString() string { + return s.String() +} + +// SetCreated sets the Created field's value. +func (s *BatchAssociateAnalyticsDataSetOutput) SetCreated(v []*AnalyticsDataAssociationResult) *BatchAssociateAnalyticsDataSetOutput { + s.Created = v + return s +} + +// SetErrors sets the Errors field's value. +func (s *BatchAssociateAnalyticsDataSetOutput) SetErrors(v []*ErrorResult) *BatchAssociateAnalyticsDataSetOutput { + s.Errors = v + return s +} + +type BatchDisassociateAnalyticsDataSetInput struct { + _ struct{} `type:"structure"` + + // An array of associated dataset identifiers to remove. + // + // DataSetIds is a required field + DataSetIds []*string `type:"list" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the target account. Use to disassociate a dataset from + // a different account than the one containing the Amazon Connect instance. + // If not specified, by default this value is the Amazon Web Services account + // that has the Amazon Connect instance. + TargetAccountId *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 BatchDisassociateAnalyticsDataSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDisassociateAnalyticsDataSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchDisassociateAnalyticsDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchDisassociateAnalyticsDataSetInput"} + if s.DataSetIds == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetIds")) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetIds sets the DataSetIds field's value. +func (s *BatchDisassociateAnalyticsDataSetInput) SetDataSetIds(v []*string) *BatchDisassociateAnalyticsDataSetInput { + s.DataSetIds = v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *BatchDisassociateAnalyticsDataSetInput) SetInstanceId(v string) *BatchDisassociateAnalyticsDataSetInput { + s.InstanceId = &v + return s +} + +// SetTargetAccountId sets the TargetAccountId field's value. +func (s *BatchDisassociateAnalyticsDataSetInput) SetTargetAccountId(v string) *BatchDisassociateAnalyticsDataSetInput { + s.TargetAccountId = &v + return s +} + +type BatchDisassociateAnalyticsDataSetOutput struct { + _ struct{} `type:"structure"` + + // An array of successfully disassociated dataset identifiers. + Deleted []*string `type:"list"` + + // A list of errors for any datasets not successfully removed. + Errors []*ErrorResult `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 BatchDisassociateAnalyticsDataSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDisassociateAnalyticsDataSetOutput) GoString() string { + return s.String() +} + +// SetDeleted sets the Deleted field's value. +func (s *BatchDisassociateAnalyticsDataSetOutput) SetDeleted(v []*string) *BatchDisassociateAnalyticsDataSetOutput { + s.Deleted = v + return s +} + +// SetErrors sets the Errors field's value. +func (s *BatchDisassociateAnalyticsDataSetOutput) SetErrors(v []*ErrorResult) *BatchDisassociateAnalyticsDataSetOutput { + s.Errors = v + return s +} + +type BatchGetFlowAssociationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // A list of resource identifiers to retrieve flow associations. + // + // ResourceIds is a required field + ResourceIds []*string `min:"1" type:"list" required:"true"` + + // The type of resource association. + ResourceType *string `type:"string" enum:"ListFlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetFlowAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetFlowAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetFlowAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetFlowAssociationInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.ResourceIds == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIds")) + } + if s.ResourceIds != nil && len(s.ResourceIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIds", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *BatchGetFlowAssociationInput) SetInstanceId(v string) *BatchGetFlowAssociationInput { + s.InstanceId = &v + return s +} + +// SetResourceIds sets the ResourceIds field's value. +func (s *BatchGetFlowAssociationInput) SetResourceIds(v []*string) *BatchGetFlowAssociationInput { + s.ResourceIds = v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *BatchGetFlowAssociationInput) SetResourceType(v string) *BatchGetFlowAssociationInput { + s.ResourceType = &v + return s +} + +type BatchGetFlowAssociationOutput struct { + _ struct{} `type:"structure"` + + // Information about flow associations. + FlowAssociationSummaryList []*FlowAssociationSummary `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 BatchGetFlowAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetFlowAssociationOutput) GoString() string { + return s.String() +} + +// SetFlowAssociationSummaryList sets the FlowAssociationSummaryList field's value. +func (s *BatchGetFlowAssociationOutput) SetFlowAssociationSummaryList(v []*FlowAssociationSummary) *BatchGetFlowAssociationOutput { + s.FlowAssociationSummaryList = v + return s +} + +type BatchPutContactInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `type:"string" idempotencyToken:"true"` + + // List of individual contact requests. + // + // ContactDataRequestList is a required field + ContactDataRequestList []*ContactDataRequest `min:"1" type:"list" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" 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 BatchPutContactInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchPutContactInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchPutContactInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchPutContactInput"} + if s.ContactDataRequestList == nil { + invalidParams.Add(request.NewErrParamRequired("ContactDataRequestList")) + } + if s.ContactDataRequestList != nil && len(s.ContactDataRequestList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContactDataRequestList", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.ContactDataRequestList != nil { + for i, v := range s.ContactDataRequestList { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContactDataRequestList", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *BatchPutContactInput) SetClientToken(v string) *BatchPutContactInput { + s.ClientToken = &v + return s +} + +// SetContactDataRequestList sets the ContactDataRequestList field's value. +func (s *BatchPutContactInput) SetContactDataRequestList(v []*ContactDataRequest) *BatchPutContactInput { + s.ContactDataRequestList = v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *BatchPutContactInput) SetInstanceId(v string) *BatchPutContactInput { + s.InstanceId = &v + return s +} + +type BatchPutContactOutput struct { + _ struct{} `type:"structure"` + + // List of requests for which contact creation failed. + FailedRequestList []*FailedRequest `type:"list"` + + // List of requests for which contact was successfully created. + SuccessfulRequestList []*SuccessfulRequest `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 BatchPutContactOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchPutContactOutput) GoString() string { + return s.String() +} + +// SetFailedRequestList sets the FailedRequestList field's value. +func (s *BatchPutContactOutput) SetFailedRequestList(v []*FailedRequest) *BatchPutContactOutput { + s.FailedRequestList = v + return s +} + +// SetSuccessfulRequestList sets the SuccessfulRequestList field's value. +func (s *BatchPutContactOutput) SetSuccessfulRequestList(v []*SuccessfulRequest) *BatchPutContactOutput { + s.SuccessfulRequestList = v + return s +} + +// Information associated with a campaign. +type Campaign struct { + _ struct{} `type:"structure"` + + // A unique identifier for a campaign. + CampaignId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Campaign) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Campaign) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Campaign) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Campaign"} + if s.CampaignId != nil && len(*s.CampaignId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CampaignId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCampaignId sets the CampaignId field's value. +func (s *Campaign) SetCampaignId(v string) *Campaign { + s.CampaignId = &v + return s +} + +// Chat integration event containing payload to perform different chat actions +// such as: +// +// - Sending a chat message +// +// - Sending a chat event, such as typing +// +// - Disconnecting from a chat +type ChatEvent struct { + _ struct{} `type:"structure"` + + // Content of the message or event. This is required when Type is MESSAGE and + // for certain ContentTypes when Type is EVENT. + // + // * For allowed message content, see the Content parameter in the SendMessage + // (https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_SendMessage.html) + // topic in the Amazon Connect Participant Service API Reference. + // + // * For allowed event content, see the Content parameter in the SendEvent + // (https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_SendEvent.html) + // topic in the Amazon Connect Participant Service API Reference. + Content *string `min:"1" type:"string"` + + // Type of content. This is required when Type is MESSAGE or EVENT. + // + // * For allowed message content types, see the ContentType parameter in + // the SendMessage (https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_SendMessage.html) + // topic in the Amazon Connect Participant Service API Reference. + // + // * For allowed event content types, see the ContentType parameter in the + // SendEvent (https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_SendEvent.html) + // topic in the Amazon Connect Participant Service API Reference. + ContentType *string `min:"1" type:"string"` + + // Type of chat integration event. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"ChatEventType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChatEvent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChatEvent) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChatEvent) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChatEvent"} + if s.Content != nil && len(*s.Content) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Content", 1)) + } + if s.ContentType != nil && len(*s.ContentType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContentType", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContent sets the Content field's value. +func (s *ChatEvent) SetContent(v string) *ChatEvent { + s.Content = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *ChatEvent) SetContentType(v string) *ChatEvent { + s.ContentType = &v + return s +} + +// SetType sets the Type field's value. +func (s *ChatEvent) SetType(v string) *ChatEvent { + s.Type = &v + return s +} + // A chat message. type ChatMessage struct { _ struct{} `type:"structure"` @@ -25170,6 +28254,12 @@ // Pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$ ClientToken *string `type:"string" idempotencyToken:"true"` + // The identifier of the Amazon Connect instance that phone numbers are claimed + // to. You can find the instance ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId + // or TargetArn. + InstanceId *string `min:"1" type:"string"` + // The phone number you want to claim. Phone numbers are formatted [+] [country // code] [subscriber number including area code]. // @@ -25184,10 +28274,9 @@ Tags map[string]*string `min:"1" type:"map"` // The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution - // groups that phone numbers are claimed to. - // - // TargetArn is a required field - TargetArn *string `type:"string" required:"true"` + // groups that phone number inbound traffic is routed through. You must enter + // InstanceId or TargetArn. + TargetArn *string `type:"string"` } // String returns the string representation. @@ -25211,15 +28300,15 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ClaimPhoneNumberInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ClaimPhoneNumberInput"} + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } if s.PhoneNumber == nil { invalidParams.Add(request.NewErrParamRequired("PhoneNumber")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } - if s.TargetArn == nil { - invalidParams.Add(request.NewErrParamRequired("TargetArn")) - } if invalidParams.Len() > 0 { return invalidParams @@ -25233,6 +28322,12 @@ return s } +// SetInstanceId sets the InstanceId field's value. +func (s *ClaimPhoneNumberInput) SetInstanceId(v string) *ClaimPhoneNumberInput { + s.InstanceId = &v + return s +} + // SetPhoneNumber sets the PhoneNumber field's value. func (s *ClaimPhoneNumberInput) SetPhoneNumber(v string) *ClaimPhoneNumberInput { s.PhoneNumber = &v @@ -25302,6 +28397,11 @@ type ClaimedPhoneNumberSummary struct { _ struct{} `type:"structure"` + // The identifier of the Amazon Connect instance that phone numbers are claimed + // to. You can find the instance ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + InstanceId *string `min:"1" type:"string"` + // The phone number. Phone numbers are formatted [+] [country code] [subscriber // number including area code]. PhoneNumber *string `type:"string"` @@ -25320,17 +28420,18 @@ // The status of the phone number. // - // * CLAIMED means the previous ClaimedPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimedPhoneNumber.html) + // * CLAIMED means the previous ClaimPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimPhoneNumber.html) // or UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html) // operation succeeded. // - // * IN_PROGRESS means a ClaimedPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimedPhoneNumber.html) - // or UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html) + // * IN_PROGRESS means a ClaimPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimPhoneNumber.html), + // UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html), + // or UpdatePhoneNumberMetadata (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumberMetadata.html) // operation is still in progress and has not yet completed. You can call // DescribePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribePhoneNumber.html) // at a later time to verify if the previous operation has completed. // - // * FAILED indicates that the previous ClaimedPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimedPhoneNumber.html) + // * FAILED indicates that the previous ClaimPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimPhoneNumber.html) // or UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html) // operation has failed. It will include a message indicating the failure // reason. A common reason for a failure may be that the TargetArn value @@ -25346,12 +28447,17 @@ // The type of phone number. PhoneNumberType *string `type:"string" enum:"PhoneNumberType"` + // The claimed phone number ARN that was previously imported from the external + // service, such as Amazon Pinpoint. If it is from Amazon Pinpoint, it looks + // like the ARN of the phone number that was imported from Amazon Pinpoint. + SourcePhoneNumberArn *string `type:"string"` + // The tags used to organize, track, or control access for this resource. For // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]*string `min:"1" type:"map"` // The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution - // groups that phone numbers are claimed to. + // groups that phone number inbound traffic is routed through. TargetArn *string `type:"string"` } @@ -25373,6 +28479,12 @@ return s.String() } +// SetInstanceId sets the InstanceId field's value. +func (s *ClaimedPhoneNumberSummary) SetInstanceId(v string) *ClaimedPhoneNumberSummary { + s.InstanceId = &v + return s +} + // SetPhoneNumber sets the PhoneNumber field's value. func (s *ClaimedPhoneNumberSummary) SetPhoneNumber(v string) *ClaimedPhoneNumberSummary { s.PhoneNumber = &v @@ -25415,6 +28527,12 @@ return s } +// SetSourcePhoneNumberArn sets the SourcePhoneNumberArn field's value. +func (s *ClaimedPhoneNumberSummary) SetSourcePhoneNumberArn(v string) *ClaimedPhoneNumberSummary { + s.SourcePhoneNumberArn = &v + return s +} + // SetTags sets the Tags field's value. func (s *ClaimedPhoneNumberSummary) SetTags(v map[string]*string) *ClaimedPhoneNumberSummary { s.Tags = v @@ -25427,6 +28545,47 @@ return s } +// Information required to join the call. +type ConnectionData struct { + _ struct{} `type:"structure"` + + // The attendee information, including attendee ID and join token. + Attendee *Attendee `type:"structure"` + + // A meeting created using the Amazon Chime SDK. + Meeting *Meeting `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 ConnectionData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectionData) GoString() string { + return s.String() +} + +// SetAttendee sets the Attendee field's value. +func (s *ConnectionData) SetAttendee(v *Attendee) *ConnectionData { + s.Attendee = v + return s +} + +// SetMeeting sets the Meeting field's value. +func (s *ConnectionData) SetMeeting(v *Meeting) *ConnectionData { + s.Meeting = v + return s +} + // Contains information about a contact. type Contact struct { _ struct{} `type:"structure"` @@ -25604,6 +28763,100 @@ return s } +// Request object with information to create a contact. +type ContactDataRequest struct { + _ struct{} `type:"structure"` + + // List of attributes to be stored in a contact. + Attributes map[string]*string `type:"map"` + + // Structure to store information associated with a campaign. + Campaign *Campaign `type:"structure"` + + // Endpoint of the customer for which contact will be initiated. + CustomerEndpoint *Endpoint `type:"structure"` + + // The identifier of the queue associated with the Amazon Connect instance in + // which contacts that are created will be queued. + QueueId *string `type:"string"` + + // Identifier to uniquely identify individual requests in the batch. + RequestIdentifier *string `type:"string"` + + // Endpoint associated with the Amazon Connect instance from which outbound + // contact will be initiated for the campaign. + SystemEndpoint *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 ContactDataRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContactDataRequest) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContactDataRequest) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContactDataRequest"} + if s.Campaign != nil { + if err := s.Campaign.Validate(); err != nil { + invalidParams.AddNested("Campaign", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributes sets the Attributes field's value. +func (s *ContactDataRequest) SetAttributes(v map[string]*string) *ContactDataRequest { + s.Attributes = v + return s +} + +// SetCampaign sets the Campaign field's value. +func (s *ContactDataRequest) SetCampaign(v *Campaign) *ContactDataRequest { + s.Campaign = v + return s +} + +// SetCustomerEndpoint sets the CustomerEndpoint field's value. +func (s *ContactDataRequest) SetCustomerEndpoint(v *Endpoint) *ContactDataRequest { + s.CustomerEndpoint = v + return s +} + +// SetQueueId sets the QueueId field's value. +func (s *ContactDataRequest) SetQueueId(v string) *ContactDataRequest { + s.QueueId = &v + return s +} + +// SetRequestIdentifier sets the RequestIdentifier field's value. +func (s *ContactDataRequest) SetRequestIdentifier(v string) *ContactDataRequest { + s.RequestIdentifier = &v + return s +} + +// SetSystemEndpoint sets the SystemEndpoint field's value. +func (s *ContactDataRequest) SetSystemEndpoint(v *Endpoint) *ContactDataRequest { + s.SystemEndpoint = v + return s +} + // Filters user data based on the contact information that is associated to // the users. It contains a list of contact states (https://docs.aws.amazon.com/connect/latest/adminguide/about-contact-states.html). type ContactFilter struct { @@ -25644,7 +28897,10 @@ // The Amazon Resource Name (ARN) of the flow. Arn *string `type:"string"` - // The content of the flow. + // The JSON string that represents the content of the flow. For an example, + // see Example flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // + // Length Constraints: Minimum length of 1. Maximum length of 256000. Content *string `type:"string"` // The description of the flow. @@ -25742,7 +28998,8 @@ // The Amazon Resource Name (ARN). Arn *string `type:"string"` - // The content of the flow module. + // The JSON string that represents the content of the flow. For an example, + // see Example flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). Content *string `min:"1" type:"string"` // The description of the flow module. @@ -26309,7 +29566,10 @@ type CreateContactFlowInput struct { _ struct{} `type:"structure"` - // The content of the flow. + // The JSON string that represents the content of the flow. For an example, + // see Example flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // + // Length Constraints: Minimum length of 1. Maximum length of 256000. // // Content is a required field Content *string `type:"string" required:"true"` @@ -26433,7 +29693,8 @@ // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). ClientToken *string `type:"string" idempotencyToken:"true"` - // The content of the flow module. + // The JSON string that represents the content of the flow. For an example, + // see Example flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). // // Content is a required field Content *string `min:"1" type:"string" required:"true"` @@ -27001,6 +30262,10 @@ // // OutboundCallsEnabled is a required field OutboundCallsEnabled *bool `type:"boolean" required:"true"` + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]*string `min:"1" type:"map"` } // String returns the string representation. @@ -27039,6 +30304,9 @@ if s.OutboundCallsEnabled == nil { invalidParams.Add(request.NewErrParamRequired("OutboundCallsEnabled")) } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -27082,6 +30350,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *CreateInstanceInput) SetTags(v map[string]*string) *CreateInstanceInput { + s.Tags = v + return s +} + type CreateInstanceOutput struct { _ struct{} `type:"structure"` @@ -27439,6 +30713,189 @@ return s } +type CreatePersistentContactAssociationInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `type:"string"` + + // This is the contactId of the current contact that the CreatePersistentContactAssociation + // API is being called from. + // + // InitialContactId is a required field + InitialContactId *string `location:"uri" locationName:"InitialContactId" min:"1" type:"string" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The contactId chosen for rehydration depends on the type chosen. + // + // * ENTIRE_PAST_SESSION: Rehydrates a chat from the most recently terminated + // past chat contact of the specified past ended chat session. To use this + // type, provide the initialContactId of the past ended chat session in the + // sourceContactId field. In this type, Amazon Connect determines what the + // most recent chat contact on the past ended chat session and uses it to + // start a persistent chat. + // + // * FROM_SEGMENT: Rehydrates a chat from the specified past chat contact + // provided in the sourceContactId field. + // + // The actual contactId used for rehydration is provided in the response of + // this API. + // + // To illustrate how to use rehydration type, consider the following example: + // A customer starts a chat session. Agent a1 accepts the chat and a conversation + // starts between the customer and Agent a1. This first contact creates a contact + // ID C1. Agent a1 then transfers the chat to Agent a2. This creates another + // contact ID C2. At this point Agent a2 ends the chat. The customer is forwarded + // to the disconnect flow for a post chat survey that creates another contact + // ID C3. After the chat survey, the chat session ends. Later, the customer + // returns and wants to resume their past chat session. At this point, the customer + // can have following use cases: + // + // * Use Case 1: The customer wants to continue the past chat session but + // they want to hide the post chat survey. For this they will use the following + // configuration: Configuration SourceContactId = "C2" RehydrationType = + // "FROM_SEGMENT" Expected behavior This starts a persistent chat session + // from the specified past ended contact (C2). Transcripts of past chat sessions + // C2 and C1 are accessible in the current persistent chat session. Note + // that chat segment C3 is dropped from the persistent chat session. + // + // * Use Case 2: The customer wants to continue the past chat session and + // see the transcript of the entire past engagement, including the post chat + // survey. For this they will use the following configuration: Configuration + // SourceContactId = "C1" RehydrationType = "ENTIRE_PAST_SESSION" Expected + // behavior This starts a persistent chat session from the most recently + // ended chat contact (C3). Transcripts of past chat sessions C3, C2 and + // C1 are accessible in the current persistent chat session. + // + // RehydrationType is a required field + RehydrationType *string `type:"string" required:"true" enum:"RehydrationType"` + + // The contactId from which a persistent chat session must be started. + // + // SourceContactId is a required field + SourceContactId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePersistentContactAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePersistentContactAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePersistentContactAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePersistentContactAssociationInput"} + if s.InitialContactId == nil { + invalidParams.Add(request.NewErrParamRequired("InitialContactId")) + } + if s.InitialContactId != nil && len(*s.InitialContactId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InitialContactId", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.RehydrationType == nil { + invalidParams.Add(request.NewErrParamRequired("RehydrationType")) + } + if s.SourceContactId == nil { + invalidParams.Add(request.NewErrParamRequired("SourceContactId")) + } + if s.SourceContactId != nil && len(*s.SourceContactId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceContactId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreatePersistentContactAssociationInput) SetClientToken(v string) *CreatePersistentContactAssociationInput { + s.ClientToken = &v + return s +} + +// SetInitialContactId sets the InitialContactId field's value. +func (s *CreatePersistentContactAssociationInput) SetInitialContactId(v string) *CreatePersistentContactAssociationInput { + s.InitialContactId = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *CreatePersistentContactAssociationInput) SetInstanceId(v string) *CreatePersistentContactAssociationInput { + s.InstanceId = &v + return s +} + +// SetRehydrationType sets the RehydrationType field's value. +func (s *CreatePersistentContactAssociationInput) SetRehydrationType(v string) *CreatePersistentContactAssociationInput { + s.RehydrationType = &v + return s +} + +// SetSourceContactId sets the SourceContactId field's value. +func (s *CreatePersistentContactAssociationInput) SetSourceContactId(v string) *CreatePersistentContactAssociationInput { + s.SourceContactId = &v + return s +} + +type CreatePersistentContactAssociationOutput struct { + _ struct{} `type:"structure"` + + // The contactId from which a persistent chat session is started. This field + // is populated only for persistent chat. + ContinuedFromContactId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePersistentContactAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePersistentContactAssociationOutput) GoString() string { + return s.String() +} + +// SetContinuedFromContactId sets the ContinuedFromContactId field's value. +func (s *CreatePersistentContactAssociationOutput) SetContinuedFromContactId(v string) *CreatePersistentContactAssociationOutput { + s.ContinuedFromContactId = &v + return s +} + type CreatePromptInput struct { _ struct{} `type:"structure"` @@ -27457,7 +30914,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The URI for the S3 bucket where the prompt is stored. + // The URI for the S3 bucket where the prompt is stored. You can provide S3 + // pre-signed URLs returned by the GetPromptFile (https://docs.aws.amazon.com/connect/latest/APIReference/API_GetPromptFile.html) + // API instead of providing S3 URIs. // // S3Uri is a required field S3Uri *string `min:"1" type:"string" required:"true"` @@ -27785,7 +31244,7 @@ // InstanceId is a required field InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` - // The name of the quick connect. + // A unique name of the quick connect. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -28341,6 +31800,12 @@ // in Amazon Connect. AllowedAccessControlTags map[string]*string `type:"map"` + // This API is in preview release for Amazon Connect and is subject to change. + // + // A list of third-party applications that the security profile will give access + // to. + Applications []*Application `type:"list"` + // The description of the security profile. Description *string `type:"string"` @@ -28406,6 +31871,16 @@ if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } + if s.Applications != nil { + for i, v := range s.Applications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Applications", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -28419,6 +31894,12 @@ return s } +// SetApplications sets the Applications field's value. +func (s *CreateSecurityProfileInput) SetApplications(v []*Application) *CreateSecurityProfileInput { + s.Applications = v + return s +} + // SetDescription sets the Description field's value. func (s *CreateSecurityProfileInput) SetDescription(v string) *CreateSecurityProfileInput { s.Description = &v @@ -34660,6 +38141,108 @@ return s } +type DisassociateAnalyticsDataSetInput struct { + _ struct{} `type:"structure"` + + // The identifier of the dataset to remove. + // + // DataSetId is a required field + DataSetId *string `min:"1" type:"string" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the target account. Use to associate a dataset to a different + // account than the one containing the Amazon Connect instance. If not specified, + // by default this value is the Amazon Web Services account that has the Amazon + // Connect instance. + TargetAccountId *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 DisassociateAnalyticsDataSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateAnalyticsDataSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateAnalyticsDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateAnalyticsDataSetInput"} + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetId sets the DataSetId field's value. +func (s *DisassociateAnalyticsDataSetInput) SetDataSetId(v string) *DisassociateAnalyticsDataSetInput { + s.DataSetId = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *DisassociateAnalyticsDataSetInput) SetInstanceId(v string) *DisassociateAnalyticsDataSetInput { + s.InstanceId = &v + return s +} + +// SetTargetAccountId sets the TargetAccountId field's value. +func (s *DisassociateAnalyticsDataSetInput) SetTargetAccountId(v string) *DisassociateAnalyticsDataSetInput { + s.TargetAccountId = &v + return s +} + +type DisassociateAnalyticsDataSetOutput 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 DisassociateAnalyticsDataSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateAnalyticsDataSetOutput) GoString() string { + return s.String() +} + type DisassociateApprovedOriginInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -34848,6 +38431,113 @@ return s.String() } +type DisassociateFlowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the resource. + // + // ResourceId is a required field + ResourceId *string `location:"uri" locationName:"ResourceId" type:"string" required:"true"` + + // A valid resource type. + // + // ResourceType is a required field + ResourceType *string `location:"uri" locationName:"ResourceType" type:"string" required:"true" enum:"FlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateFlowInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + if s.ResourceId != nil && len(*s.ResourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + if s.ResourceType != nil && len(*s.ResourceType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *DisassociateFlowInput) SetInstanceId(v string) *DisassociateFlowInput { + s.InstanceId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *DisassociateFlowInput) SetResourceId(v string) *DisassociateFlowInput { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *DisassociateFlowInput) SetResourceType(v string) *DisassociateFlowInput { + s.ResourceType = &v + return s +} + +type DisassociateFlowOutput 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 DisassociateFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateFlowOutput) GoString() string { + return s.String() +} + type DisassociateInstanceStorageConfigInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -35653,6 +39343,39 @@ return s.String() } +// Contains details about why a contact was disconnected. Only Amazon Connect +// outbound campaigns can provide this field. +type DisconnectReason struct { + _ struct{} `type:"structure"` + + // A code that indicates how the contact was terminated. + Code *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 DisconnectReason) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisconnectReason) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *DisconnectReason) SetCode(v string) *DisconnectReason { + s.Code = &v + return s +} + type DismissUserContactInput struct { _ struct{} `type:"structure"` @@ -35998,6 +39721,90 @@ return s } +// Information about the endpoint. +type Endpoint struct { + _ struct{} `type:"structure"` + + // Address of the endpoint. + Address *string `type:"string"` + + // Type of the endpoint. + Type *string `type:"string" enum:"EndpointType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API 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 +} + +// SetType sets the Type field's value. +func (s *Endpoint) SetType(v string) *Endpoint { + s.Type = &v + return s +} + +// This API is in preview release for Amazon Connect and is subject to change. +// +// List of errors for dataset association failures. +type ErrorResult struct { + _ struct{} `type:"structure"` + + // The error code. + ErrorCode *string `type:"string"` + + // The corresponding error message for the error code. + ErrorMessage *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 ErrorResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ErrorResult) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *ErrorResult) SetErrorCode(v string) *ErrorResult { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ErrorResult) SetErrorMessage(v string) *ErrorResult { + s.ErrorMessage = &v + return s +} + // Information about a contact evaluation. type Evaluation struct { _ struct{} `type:"structure"` @@ -38037,6 +41844,57 @@ return s } +// Request for which contact failed to be generated. +type FailedRequest struct { + _ struct{} `type:"structure"` + + // Reason code for the failure. + FailureReasonCode *string `type:"string" enum:"FailureReasonCode"` + + // Why the request to create a contact failed. + FailureReasonMessage *string `type:"string"` + + // Request identifier provided in the API call in the ContactDataRequest to + // create a contact. + RequestIdentifier *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 FailedRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailedRequest) GoString() string { + return s.String() +} + +// SetFailureReasonCode sets the FailureReasonCode field's value. +func (s *FailedRequest) SetFailureReasonCode(v string) *FailedRequest { + s.FailureReasonCode = &v + return s +} + +// SetFailureReasonMessage sets the FailureReasonMessage field's value. +func (s *FailedRequest) SetFailureReasonMessage(v string) *FailedRequest { + s.FailureReasonMessage = &v + return s +} + +// SetRequestIdentifier sets the RequestIdentifier field's value. +func (s *FailedRequest) SetRequestIdentifier(v string) *FailedRequest { + s.RequestIdentifier = &v + return s +} + // Contains the filter to apply when retrieving metrics with the GetMetricDataV2 // (https://docs.aws.amazon.com/connect/latest/APIReference/API_GetMetricDataV2.html) // API. @@ -38168,6 +42026,56 @@ return s } +// Information about flow associations. +type FlowAssociationSummary struct { + _ struct{} `type:"structure"` + + // The identifier of the flow. + FlowId *string `type:"string"` + + // The identifier of the resource. + ResourceId *string `type:"string"` + + // The type of resource association. + ResourceType *string `type:"string" enum:"ListFlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FlowAssociationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FlowAssociationSummary) GoString() string { + return s.String() +} + +// SetFlowId sets the FlowId field's value. +func (s *FlowAssociationSummary) SetFlowId(v string) *FlowAssociationSummary { + s.FlowId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *FlowAssociationSummary) SetResourceId(v string) *FlowAssociationSummary { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *FlowAssociationSummary) SetResourceType(v string) *FlowAssociationSummary { + s.ResourceType = &v + return s +} + type GetContactAttributesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -38846,6 +42754,140 @@ return s } +type GetFlowAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The identifier of the resource. + // + // ResourceId is a required field + ResourceId *string `location:"uri" locationName:"ResourceId" type:"string" required:"true"` + + // A valid resource type. + // + // ResourceType is a required field + ResourceType *string `location:"uri" locationName:"ResourceType" type:"string" required:"true" enum:"FlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFlowAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFlowAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetFlowAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetFlowAssociationInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + if s.ResourceId != nil && len(*s.ResourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + if s.ResourceType != nil && len(*s.ResourceType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *GetFlowAssociationInput) SetInstanceId(v string) *GetFlowAssociationInput { + s.InstanceId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *GetFlowAssociationInput) SetResourceId(v string) *GetFlowAssociationInput { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *GetFlowAssociationInput) SetResourceType(v string) *GetFlowAssociationInput { + s.ResourceType = &v + return s +} + +type GetFlowAssociationOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the flow. + FlowId *string `type:"string"` + + // The identifier of the resource. + ResourceId *string `type:"string"` + + // A valid resource type. + ResourceType *string `type:"string" enum:"FlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFlowAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFlowAssociationOutput) GoString() string { + return s.String() +} + +// SetFlowId sets the FlowId field's value. +func (s *GetFlowAssociationOutput) SetFlowId(v string) *GetFlowAssociationOutput { + s.FlowId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *GetFlowAssociationOutput) SetResourceId(v string) *GetFlowAssociationOutput { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *GetFlowAssociationOutput) SetResourceType(v string) *GetFlowAssociationOutput { + s.ResourceType = &v + return s +} + type GetMetricDataInput struct { _ struct{} `type:"structure"` @@ -39222,8 +43264,6 @@ // for the retrieval of historical metrics data. The time must be later than // the start time timestamp. It cannot be later than the current timestamp. // - // The time range between the start and end time must be less than 24 hours. - // // EndTime is a required field EndTime *time.Time `type:"timestamp" required:"true"` @@ -39253,7 +43293,7 @@ // * Filter keys: A maximum of 5 filter keys are supported in a single request. // Valid filter keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE // | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR - // | AGENT_HIERARCHY_LEVEL_FIVE | FEATURE + // | AGENT_HIERARCHY_LEVEL_FIVE | FEATURE | contact/segmentAttributes/connect:Subtype // // * Filter values: A maximum of 100 filter values are supported in a single // request. VOICE, CHAT, and TASK are valid filterValue for the CHANNEL filter @@ -39262,7 +43302,9 @@ // profiles for a total of 100 filter values, along with 3 channel filters. // contact_lens_conversational_analytics is a valid filterValue for the FEATURE // filter key. It is available only to contacts analyzed by Contact Lens - // conversational analytics. + // conversational analytics. connect:Chat, connect:SMS, connect:Telephony, + // and connect:WebRTC are valid filterValue examples (not exhaustive) for + // the contact/segmentAttributes/connect:Subtype filter key. // // Filters is a required field Filters []*FilterV2 `min:"1" type:"list" required:"true"` @@ -39276,9 +43318,29 @@ // // Valid grouping keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE // | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR - // | AGENT_HIERARCHY_LEVEL_FIVE + // | AGENT_HIERARCHY_LEVEL_FIVE, contact/segmentAttributes/connect:Subtype Groupings []*string `type:"list"` + // The interval period and timezone to apply to returned metrics. + // + // * IntervalPeriod: An aggregated grouping applied to request metrics. Valid + // IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK + // | TOTAL. For example, if IntervalPeriod is selected THIRTY_MIN, StartTime + // and EndTime differs by 1 day, then Amazon Connect returns 48 results in + // the response. Each result is aggregated by the THIRTY_MIN period. By default + // Amazon Connect aggregates results based on the TOTAL interval period. + // The following list describes restrictions on StartTime and EndTime based + // on which IntervalPeriod is requested. FIFTEEN_MIN: The difference between + // StartTime and EndTime must be less than 3 days. THIRTY_MIN: The difference + // between StartTime and EndTime must be less than 3 days. HOUR: The difference + // between StartTime and EndTime must be less than 3 days. DAY: The difference + // between StartTime and EndTime must be less than 35 days. WEEK: The difference + // between StartTime and EndTime must be less than 35 days. TOTAL: The difference + // between StartTime and EndTime must be less than 35 days. + // + // * TimeZone: The timezone applied to requested metrics. + Interval *IntervalDetails `type:"structure"` + // The maximum number of results to return per page. MaxResults *int64 `min:"1" type:"integer"` @@ -39287,6 +43349,13 @@ // of each metric, see Historical metrics definitions (https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html) // in the Amazon Connect Administrator's Guide. // + // ABANDONMENT_RATE + // + // Unit: Percent + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype + // // AGENT_ADHERENT_TIME // // This metric is available only in Amazon Web Services Regions where Forecasting, @@ -39298,6 +43367,20 @@ // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // + // AGENT_ANSWER_RATE + // + // Unit: Percent + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // AGENT_NON_ADHERENT_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // // AGENT_NON_RESPONSE // // Unit: Count @@ -39305,6 +43388,15 @@ // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // + // AGENT_NON_RESPONSE_WITHOUT_CUSTOMER_ABANDONS + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // Data for this metric is available starting from October 1, 2023 0:00:00 GMT. + // // AGENT_OCCUPANCY // // Unit: Percentage @@ -39338,14 +43430,16 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // AVG_AFTER_CONTACT_WORK_TIME // // Unit: Seconds // + // Valid metric filter key: INITIATION_METHOD + // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39359,22 +43453,14 @@ // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // - // AVG_AGENT_CONNECTING_TIME - // - // Unit: Seconds - // - // Valid metric filter key: INITIATION_METHOD. For now, this metric only supports - // the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API - // - // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // The Negate key in Metric Level Filters is not applicable for this metric. // // AVG_CONTACT_DURATION // // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39383,7 +43469,7 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // AVG_GREETING_TIME_AGENT // @@ -39393,14 +43479,14 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_HANDLE_TIME // // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39409,16 +43495,23 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // + // AVG_HOLD_TIME_ALL_CONTACTS + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // // AVG_HOLDS // // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39427,13 +43520,15 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_INTERACTION_TIME // // Unit: Seconds // - // Valid groupings and filters: Queue, Channel, Routing Profile, Feature + // Valid metric filter key: INITIATION_METHOD + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39445,7 +43540,7 @@ // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_INTERRUPTION_TIME_AGENT // @@ -39455,7 +43550,7 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_NON_TALK_TIME // @@ -39465,16 +43560,22 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_QUEUE_ANSWER_TIME // // Unit: Seconds // - // Valid groupings and filters: Queue, Channel, Routing Profile, Feature + // Valid groupings and filters: Queue, Channel, Routing Profile, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // + // AVG_RESOLUTION_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype + // // AVG_TALK_TIME // // This metric is available only for contacts analyzed by Contact Lens conversational @@ -39483,7 +43584,7 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_TALK_TIME_AGENT // @@ -39493,7 +43594,7 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // AVG_TALK_TIME_CUSTOMER // @@ -39503,14 +43604,14 @@ // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // CONTACTS_ABANDONED // // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // CONTACTS_CREATED // @@ -39518,7 +43619,7 @@ // // Valid metric filter key: INITIATION_METHOD // - // Valid groupings and filters: Queue, Channel, Routing Profile, Feature + // Valid groupings and filters: Queue, Channel, Routing Profile, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39529,7 +43630,7 @@ // Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39538,21 +43639,65 @@ // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // CONTACTS_ON_HOLD_AGENT_DISCONNECT + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // - // CONTACTS_QUEUED + // CONTACTS_ON_HOLD_CUSTOMER_DISCONNECT // // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // + // CONTACTS_PUT_ON_HOLD + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // CONTACTS_TRANSFERRED_OUT_EXTERNAL + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // CONTACTS_TRANSFERRED_OUT_INTERNAL + // + // Unit: Percent + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // CONTACTS_QUEUED + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // CONTACTS_RESOLVED_IN_X + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype + // + // Threshold: For ThresholdValue enter any whole number from 1 to 604800 (inclusive), + // in seconds. For Comparison, you must enter LT (for "Less than"). + // // CONTACTS_TRANSFERRED_OUT // // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy, Feature + // Hierarchy, Feature, contact/segmentAttributes/connect:Subtype // // Feature is a valid filter but not a valid grouping. // @@ -39561,21 +43706,61 @@ // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // CONTACTS_TRANSFERRED_OUT_FROM_QUEUE // // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype // // MAX_QUEUED_TIME // // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // PERCENT_NON_TALK_TIME + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Percentage + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // PERCENT_TALK_TIME + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Percentage + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // PERCENT_TALK_TIME_AGENT + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Percentage + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // PERCENT_TALK_TIME_CUSTOMER + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Percentage + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype // // SERVICE_LEVEL // @@ -39588,11 +43773,45 @@ // Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), // in seconds. For Comparison, you must enter LT (for "Less than"). // + // SUM_AFTER_CONTACT_WORK_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_CONNECTING_TIME_AGENT + // + // Unit: Seconds + // + // Valid metric filter key: INITIATION_METHOD. This metric only supports the + // following filter keys as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK + // | API + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // The Negate key in Metric Level Filters is not applicable for this metric. + // + // SUM_CONTACT_FLOW_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_CONTACT_TIME_AGENT + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // // SUM_CONTACTS_ANSWERED_IN_X // // Unit: Count // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype // // Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), // in seconds. For Comparison, you must enter LT (for "Less than"). @@ -39601,7 +43820,7 @@ // // Unit: Count // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype // // Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), // in seconds. For Comparison, you must enter LT (for "Less than"). @@ -39612,13 +43831,67 @@ // // Unit: Count // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, contact/segmentAttributes/connect:Subtype + // + // SUM_ERROR_STATUS_TIME_AGENT + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_HANDLE_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_HOLD_TIME + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_IDLE_TIME_AGENT + // + // Unit: Seconds + // + // Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy + // + // SUM_INTERACTION_AND_HOLD_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_INTERACTION_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // SUM_NON_PRODUCTIVE_TIME_AGENT + // + // Unit: Seconds + // + // Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy + // + // SUM_ONLINE_TIME_AGENT + // + // Unit: Seconds + // + // Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy // // SUM_RETRY_CALLBACK_ATTEMPTS // // Unit: Count // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype // // Metrics is a required field Metrics []*MetricV2 `type:"list" required:"true"` @@ -39635,9 +43908,9 @@ // The timestamp, in UNIX Epoch time format, at which to start the reporting // interval for the retrieval of historical metrics data. The time must be before - // the end time timestamp. The time range between the start and end time must - // be less than 24 hours. The start time cannot be earlier than 35 days before - // the time of the request. Historical metrics are available for 35 days. + // the end time timestamp. The start and end time depends on the IntervalPeriod + // selected. By default the time range between start and end time is 35 days. + // Historical metrics are available for 3 months. // // StartTime is a required field StartTime *time.Time `type:"timestamp" required:"true"` @@ -39733,6 +44006,12 @@ return s } +// SetInterval sets the Interval field's value. +func (s *GetMetricDataV2Input) SetInterval(v *IntervalDetails) *GetMetricDataV2Input { + s.Interval = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *GetMetricDataV2Input) SetMaxResults(v int64) *GetMetricDataV2Input { s.MaxResults = &v @@ -39875,6 +44154,12 @@ type GetPromptFileOutput struct { _ struct{} `type:"structure"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // A generated URL to the prompt that can be given to an unauthorized user so // they can access the prompt in S3. PromptPresignedUrl *string `min:"1" type:"string"` @@ -39898,6 +44183,18 @@ return s.String() } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *GetPromptFileOutput) SetLastModifiedRegion(v string) *GetPromptFileOutput { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *GetPromptFileOutput) SetLastModifiedTime(v time.Time) *GetPromptFileOutput { + s.LastModifiedTime = &v + return s +} + // SetPromptPresignedUrl sets the PromptPresignedUrl field's value. func (s *GetPromptFileOutput) SetPromptPresignedUrl(v string) *GetPromptFileOutput { s.PromptPresignedUrl = &v @@ -40198,7 +44495,8 @@ // Region. Id *string `type:"string"` - // The distribution of allowing signing in to the instance and its replica(s). + // The distribution that determines which Amazon Web Services Regions should + // be used to sign in agents in to both the instance and its replica(s). SignInConfig *SignInConfig `type:"structure"` // The distribution of traffic between the instance and its replicas. @@ -40266,6 +44564,12 @@ // The identifier of the hierarchy group. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The identifier of the level in the hierarchy group. LevelId *string `type:"string"` @@ -40313,6 +44617,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *HierarchyGroup) SetLastModifiedRegion(v string) *HierarchyGroup { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *HierarchyGroup) SetLastModifiedTime(v time.Time) *HierarchyGroup { + s.LastModifiedTime = &v + return s +} + // SetLevelId sets the LevelId field's value. func (s *HierarchyGroup) SetLevelId(v string) *HierarchyGroup { s.LevelId = &v @@ -40382,6 +44698,12 @@ // The identifier of the hierarchy group. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the hierarchy group. Name *string `type:"string"` } @@ -40416,6 +44738,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *HierarchyGroupSummary) SetLastModifiedRegion(v string) *HierarchyGroupSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *HierarchyGroupSummary) SetLastModifiedTime(v time.Time) *HierarchyGroupSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *HierarchyGroupSummary) SetName(v string) *HierarchyGroupSummary { s.Name = &v @@ -40473,6 +44807,12 @@ // The identifier of the hierarchy level. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the hierarchy level. Name *string `type:"string"` } @@ -40507,6 +44847,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *HierarchyLevel) SetLastModifiedRegion(v string) *HierarchyLevel { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *HierarchyLevel) SetLastModifiedTime(v time.Time) *HierarchyLevel { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *HierarchyLevel) SetName(v string) *HierarchyLevel { s.Name = &v @@ -41026,6 +45378,12 @@ // The identifier for the hours of operation. HoursOfOperationId *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name for the hours of operation. Name *string `min:"1" type:"string"` @@ -41079,6 +45437,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *HoursOfOperation) SetLastModifiedRegion(v string) *HoursOfOperation { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *HoursOfOperation) SetLastModifiedTime(v time.Time) *HoursOfOperation { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *HoursOfOperation) SetName(v string) *HoursOfOperation { s.Name = &v @@ -41283,6 +45653,12 @@ // The identifier of the hours of operation. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the hours of operation. Name *string `type:"string"` } @@ -41317,6 +45693,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *HoursOfOperationSummary) SetLastModifiedRegion(v string) *HoursOfOperationSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *HoursOfOperationSummary) SetLastModifiedTime(v time.Time) *HoursOfOperationSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *HoursOfOperationSummary) SetName(v string) *HoursOfOperationSummary { s.Name = &v @@ -41448,6 +45836,147 @@ return s.RespMetadata.RequestID } +type ImportPhoneNumberInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `min:"1" type:"string" required:"true"` + + // The description of the phone number. + PhoneNumberDescription *string `type:"string"` + + // The claimed phone number ARN being imported from the external service, such + // as Amazon Pinpoint. If it is from Amazon Pinpoint, it looks like the ARN + // of the phone number to import from Amazon Pinpoint. + // + // SourcePhoneNumberArn is a required field + SourcePhoneNumberArn *string `type:"string" required:"true"` + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportPhoneNumberInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportPhoneNumberInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImportPhoneNumberInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportPhoneNumberInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.SourcePhoneNumberArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourcePhoneNumberArn")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *ImportPhoneNumberInput) SetClientToken(v string) *ImportPhoneNumberInput { + s.ClientToken = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ImportPhoneNumberInput) SetInstanceId(v string) *ImportPhoneNumberInput { + s.InstanceId = &v + return s +} + +// SetPhoneNumberDescription sets the PhoneNumberDescription field's value. +func (s *ImportPhoneNumberInput) SetPhoneNumberDescription(v string) *ImportPhoneNumberInput { + s.PhoneNumberDescription = &v + return s +} + +// SetSourcePhoneNumberArn sets the SourcePhoneNumberArn field's value. +func (s *ImportPhoneNumberInput) SetSourcePhoneNumberArn(v string) *ImportPhoneNumberInput { + s.SourcePhoneNumberArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ImportPhoneNumberInput) SetTags(v map[string]*string) *ImportPhoneNumberInput { + s.Tags = v + return s +} + +type ImportPhoneNumberOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the phone number. + PhoneNumberArn *string `type:"string"` + + // A unique identifier for the phone number. + PhoneNumberId *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 ImportPhoneNumberOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportPhoneNumberOutput) GoString() string { + return s.String() +} + +// SetPhoneNumberArn sets the PhoneNumberArn field's value. +func (s *ImportPhoneNumberOutput) SetPhoneNumberArn(v string) *ImportPhoneNumberOutput { + s.PhoneNumberArn = &v + return s +} + +// SetPhoneNumberId sets the PhoneNumberId field's value. +func (s *ImportPhoneNumberOutput) SetPhoneNumberId(v string) *ImportPhoneNumberOutput { + s.PhoneNumberId = &v + return s +} + // The Amazon Connect instance. type Instance struct { _ struct{} `type:"structure"` @@ -41490,6 +46019,9 @@ // Relevant details why the instance was not successfully created. StatusReason *InstanceStatusReason `type:"structure"` + + // The tags of an instance. + Tags map[string]*string `min:"1" type:"map"` } // String returns the string representation. @@ -41576,6 +46108,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *Instance) SetTags(v map[string]*string) *Instance { + s.Tags = v + return s +} + // Relevant details why the instance was not successfully created. type InstanceStatusReason struct { _ struct{} `type:"structure"` @@ -42003,6 +46541,75 @@ return s.RespMetadata.RequestID } +// Information about the interval period to use for returning results. +type IntervalDetails struct { + _ struct{} `type:"structure"` + + // IntervalPeriod: An aggregated grouping applied to request metrics. Valid + // IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK | + // TOTAL. + // + // For example, if IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime + // differs by 1 day, then Amazon Connect returns 48 results in the response. + // Each result is aggregated by the THIRTY_MIN period. By default Amazon Connect + // aggregates results based on the TOTAL interval period. + // + // The following list describes restrictions on StartTime and EndTime based + // on what IntervalPeriod is requested. + // + // * FIFTEEN_MIN: The difference between StartTime and EndTime must be less + // than 3 days. + // + // * THIRTY_MIN: The difference between StartTime and EndTime must be less + // than 3 days. + // + // * HOUR: The difference between StartTime and EndTime must be less than + // 3 days. + // + // * DAY: The difference between StartTime and EndTime must be less than + // 35 days. + // + // * WEEK: The difference between StartTime and EndTime must be less than + // 35 days. + // + // * TOTAL: The difference between StartTime and EndTime must be less than + // 35 days. + IntervalPeriod *string `type:"string" enum:"IntervalPeriod"` + + // The timezone applied to requested metrics. + TimeZone *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 IntervalDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntervalDetails) GoString() string { + return s.String() +} + +// SetIntervalPeriod sets the IntervalPeriod field's value. +func (s *IntervalDetails) SetIntervalPeriod(v string) *IntervalDetails { + s.IntervalPeriod = &v + return s +} + +// SetTimeZone sets the TimeZone field's value. +func (s *IntervalDetails) SetTimeZone(v string) *IntervalDetails { + s.TimeZone = &v + return s +} + // The flow is not valid. type InvalidContactFlowException struct { _ struct{} `type:"structure"` @@ -42827,6 +47434,133 @@ return s } +type ListAnalyticsDataAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the dataset to get the association status. + DataSetId *string `location:"querystring" locationName:"DataSetId" min:"1" type:"string"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnalyticsDataAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnalyticsDataAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAnalyticsDataAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAnalyticsDataAssociationsInput"} + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetId sets the DataSetId field's value. +func (s *ListAnalyticsDataAssociationsInput) SetDataSetId(v string) *ListAnalyticsDataAssociationsInput { + s.DataSetId = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ListAnalyticsDataAssociationsInput) SetInstanceId(v string) *ListAnalyticsDataAssociationsInput { + s.InstanceId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAnalyticsDataAssociationsInput) SetMaxResults(v int64) *ListAnalyticsDataAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAnalyticsDataAssociationsInput) SetNextToken(v string) *ListAnalyticsDataAssociationsInput { + s.NextToken = &v + return s +} + +type ListAnalyticsDataAssociationsOutput struct { + _ struct{} `type:"structure"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `type:"string"` + + // An array of successful results: DataSetId, TargetAccountId, ResourceShareId, + // ResourceShareArn. This is a paginated API, so nextToken is given if there + // are more results to be returned. + Results []*AnalyticsDataAssociationResult `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 ListAnalyticsDataAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnalyticsDataAssociationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAnalyticsDataAssociationsOutput) SetNextToken(v string) *ListAnalyticsDataAssociationsOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *ListAnalyticsDataAssociationsOutput) SetResults(v []*AnalyticsDataAssociationResult) *ListAnalyticsDataAssociationsOutput { + s.Results = v + return s +} + type ListApprovedOriginsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -43950,6 +48684,128 @@ return s } +type ListFlowAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // A valid resource type. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string" enum:"ListFlowAssociationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFlowAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFlowAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFlowAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFlowAssociationsInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ListFlowAssociationsInput) SetInstanceId(v string) *ListFlowAssociationsInput { + s.InstanceId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListFlowAssociationsInput) SetMaxResults(v int64) *ListFlowAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFlowAssociationsInput) SetNextToken(v string) *ListFlowAssociationsInput { + s.NextToken = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ListFlowAssociationsInput) SetResourceType(v string) *ListFlowAssociationsInput { + s.ResourceType = &v + return s +} + +type ListFlowAssociationsOutput struct { + _ struct{} `type:"structure"` + + // Summary of flow associations. + FlowAssociationSummaryList []*FlowAssociationSummary `type:"list"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFlowAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFlowAssociationsOutput) GoString() string { + return s.String() +} + +// SetFlowAssociationSummaryList sets the FlowAssociationSummaryList field's value. +func (s *ListFlowAssociationsOutput) SetFlowAssociationSummaryList(v []*FlowAssociationSummary) *ListFlowAssociationsOutput { + s.FlowAssociationSummaryList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFlowAssociationsOutput) SetNextToken(v string) *ListFlowAssociationsOutput { + s.NextToken = &v + return s +} + type ListHoursOfOperationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -44408,6 +49264,9 @@ // InstanceId is a required field InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the integration. + IntegrationArn *string `location:"querystring" locationName:"integrationArn" type:"string"` + // The integration type. IntegrationType *string `location:"querystring" locationName:"integrationType" type:"string" enum:"IntegrationType"` @@ -44462,6 +49321,12 @@ return s } +// SetIntegrationArn sets the IntegrationArn field's value. +func (s *ListIntegrationAssociationsInput) SetIntegrationArn(v string) *ListIntegrationAssociationsInput { + s.IntegrationArn = &v + return s +} + // SetIntegrationType sets the IntegrationType field's value. func (s *ListIntegrationAssociationsInput) SetIntegrationType(v string) *ListIntegrationAssociationsInput { s.IntegrationType = &v @@ -44770,6 +49635,11 @@ PhoneNumberCountryCodes []*string `location:"querystring" locationName:"phoneNumberCountryCodes" type:"list" enum:"PhoneNumberCountryCode"` // The type of phone number. + // + // We recommend using ListPhoneNumbersV2 (https://docs.aws.amazon.com/connect/latest/APIReference/API_ListPhoneNumbersV2.html) + // to return phone number types. While ListPhoneNumbers returns number types + // UIFN, SHARED, THIRD_PARTY_TF, and THIRD_PARTY_DID, it incorrectly lists them + // as TOLL_FREE or DID. PhoneNumberTypes []*string `location:"querystring" locationName:"phoneNumberTypes" type:"list" enum:"PhoneNumberType"` } @@ -44885,6 +49755,11 @@ type ListPhoneNumbersSummary struct { _ struct{} `type:"structure"` + // The identifier of the Amazon Connect instance that phone numbers are claimed + // to. You can find the instance ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + InstanceId *string `min:"1" type:"string"` + // The phone number. Phone numbers are formatted [+] [country code] [subscriber // number including area code]. PhoneNumber *string `type:"string"` @@ -44895,14 +49770,22 @@ // The ISO country code. PhoneNumberCountryCode *string `type:"string" enum:"PhoneNumberCountryCode"` + // The description of the phone number. + PhoneNumberDescription *string `type:"string"` + // A unique identifier for the phone number. PhoneNumberId *string `type:"string"` // The type of phone number. PhoneNumberType *string `type:"string" enum:"PhoneNumberType"` + // The claimed phone number ARN that was previously imported from the external + // service, such as Amazon Pinpoint. If it is from Amazon Pinpoint, it looks + // like the ARN of the phone number that was imported from Amazon Pinpoint. + SourcePhoneNumberArn *string `type:"string"` + // The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution - // groups that phone numbers are claimed to. + // groups that phone number inbound traffic is routed through. TargetArn *string `type:"string"` } @@ -44924,6 +49807,12 @@ return s.String() } +// SetInstanceId sets the InstanceId field's value. +func (s *ListPhoneNumbersSummary) SetInstanceId(v string) *ListPhoneNumbersSummary { + s.InstanceId = &v + return s +} + // SetPhoneNumber sets the PhoneNumber field's value. func (s *ListPhoneNumbersSummary) SetPhoneNumber(v string) *ListPhoneNumbersSummary { s.PhoneNumber = &v @@ -44942,6 +49831,12 @@ return s } +// SetPhoneNumberDescription sets the PhoneNumberDescription field's value. +func (s *ListPhoneNumbersSummary) SetPhoneNumberDescription(v string) *ListPhoneNumbersSummary { + s.PhoneNumberDescription = &v + return s +} + // SetPhoneNumberId sets the PhoneNumberId field's value. func (s *ListPhoneNumbersSummary) SetPhoneNumberId(v string) *ListPhoneNumbersSummary { s.PhoneNumberId = &v @@ -44954,6 +49849,12 @@ return s } +// SetSourcePhoneNumberArn sets the SourcePhoneNumberArn field's value. +func (s *ListPhoneNumbersSummary) SetSourcePhoneNumberArn(v string) *ListPhoneNumbersSummary { + s.SourcePhoneNumberArn = &v + return s +} + // SetTargetArn sets the TargetArn field's value. func (s *ListPhoneNumbersSummary) SetTargetArn(v string) *ListPhoneNumbersSummary { s.TargetArn = &v @@ -44963,6 +49864,14 @@ type ListPhoneNumbersV2Input struct { _ struct{} `type:"structure"` + // The identifier of the Amazon Connect instance that phone numbers are claimed + // to. You can find the instance ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. If both TargetArn and + // InstanceId are not provided, this API lists numbers claimed to all the Amazon + // Connect instances belonging to your account in the same AWS Region as the + // request. + InstanceId *string `min:"1" type:"string"` + // The maximum number of results to return per page. MaxResults *int64 `min:"1" type:"integer"` @@ -44981,9 +49890,10 @@ PhoneNumberTypes []*string `type:"list" enum:"PhoneNumberType"` // The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution - // groups that phone numbers are claimed to. If TargetArn input is not provided, - // this API lists numbers claimed to all the Amazon Connect instances belonging - // to your account in the same Amazon Web Services Region as the request. + // groups that phone number inbound traffic is routed through. If both TargetArn + // and InstanceId input are not provided, this API lists numbers claimed to + // all the Amazon Connect instances belonging to your account in the same Amazon + // Web Services Region as the request. TargetArn *string `type:"string"` } @@ -45008,6 +49918,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ListPhoneNumbersV2Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPhoneNumbersV2Input"} + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -45021,6 +49934,12 @@ return nil } +// SetInstanceId sets the InstanceId field's value. +func (s *ListPhoneNumbersV2Input) SetInstanceId(v string) *ListPhoneNumbersV2Input { + s.InstanceId = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListPhoneNumbersV2Input) SetMaxResults(v int64) *ListPhoneNumbersV2Input { s.MaxResults = &v @@ -45304,6 +50223,12 @@ type ListQueueQuickConnectsOutput struct { _ struct{} `type:"structure"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // If there are additional results, this is the token for the next set of results. NextToken *string `type:"string"` @@ -45329,6 +50254,18 @@ return s.String() } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *ListQueueQuickConnectsOutput) SetLastModifiedRegion(v string) *ListQueueQuickConnectsOutput { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ListQueueQuickConnectsOutput) SetLastModifiedTime(v time.Time) *ListQueueQuickConnectsOutput { + s.LastModifiedTime = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *ListQueueQuickConnectsOutput) SetNextToken(v string) *ListQueueQuickConnectsOutput { s.NextToken = &v @@ -45482,9 +50419,9 @@ // response in the next request to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` - // The type of quick connect. In the Amazon Connect console, when you create - // a quick connect, you are prompted to assign one of the following types: Agent - // (USER), External (PHONE_NUMBER), or Queue (QUEUE). + // The type of quick connect. In the Amazon Connect admin website, when you + // create a quick connect, you are prompted to assign one of the following types: + // Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE). QuickConnectTypes []*string `location:"querystring" locationName:"QuickConnectTypes" type:"list" enum:"QuickConnectType"` } @@ -45589,6 +50526,193 @@ return s } +type ListRealtimeContactAnalysisSegmentsV2Input struct { + _ struct{} `type:"structure"` + + // The identifier of the contact in this instance of Amazon Connect. + // + // ContactId is a required field + ContactId *string `location:"uri" locationName:"ContactId" min:"1" type:"string" required:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `min:"1" type:"string"` + + // The Contact Lens output type to be returned. + // + // OutputType is a required field + OutputType *string `type:"string" required:"true" enum:"RealTimeContactAnalysisOutputType"` + + // Enum with segment types . Each value corresponds to a segment type returned + // in the segments list of the API. Each segment type has its own structure. + // Different channels may have different sets of supported segment types. + // + // SegmentTypes is a required field + SegmentTypes []*string `type:"list" required:"true" enum:"RealTimeContactAnalysisSegmentType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRealtimeContactAnalysisSegmentsV2Input) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRealtimeContactAnalysisSegmentsV2Input) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRealtimeContactAnalysisSegmentsV2Input"} + if s.ContactId == nil { + invalidParams.Add(request.NewErrParamRequired("ContactId")) + } + if s.ContactId != nil && len(*s.ContactId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContactId", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.OutputType == nil { + invalidParams.Add(request.NewErrParamRequired("OutputType")) + } + if s.SegmentTypes == nil { + invalidParams.Add(request.NewErrParamRequired("SegmentTypes")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContactId sets the ContactId field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) SetContactId(v string) *ListRealtimeContactAnalysisSegmentsV2Input { + s.ContactId = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) SetInstanceId(v string) *ListRealtimeContactAnalysisSegmentsV2Input { + s.InstanceId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) SetMaxResults(v int64) *ListRealtimeContactAnalysisSegmentsV2Input { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) SetNextToken(v string) *ListRealtimeContactAnalysisSegmentsV2Input { + s.NextToken = &v + return s +} + +// SetOutputType sets the OutputType field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) SetOutputType(v string) *ListRealtimeContactAnalysisSegmentsV2Input { + s.OutputType = &v + return s +} + +// SetSegmentTypes sets the SegmentTypes field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Input) SetSegmentTypes(v []*string) *ListRealtimeContactAnalysisSegmentsV2Input { + s.SegmentTypes = v + return s +} + +type ListRealtimeContactAnalysisSegmentsV2Output struct { + _ struct{} `type:"structure"` + + // The channel of the contact. Voice will not be returned. + // + // Channel is a required field + Channel *string `type:"string" required:"true" enum:"RealTimeContactAnalysisSupportedChannel"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `min:"1" type:"string"` + + // An analyzed transcript or category. + // + // Segments is a required field + Segments []*RealtimeContactAnalysisSegment `type:"list" required:"true"` + + // Status of real-time contact analysis. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"RealTimeContactAnalysisStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRealtimeContactAnalysisSegmentsV2Output) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRealtimeContactAnalysisSegmentsV2Output) GoString() string { + return s.String() +} + +// SetChannel sets the Channel field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Output) SetChannel(v string) *ListRealtimeContactAnalysisSegmentsV2Output { + s.Channel = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Output) SetNextToken(v string) *ListRealtimeContactAnalysisSegmentsV2Output { + s.NextToken = &v + return s +} + +// SetSegments sets the Segments field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Output) SetSegments(v []*RealtimeContactAnalysisSegment) *ListRealtimeContactAnalysisSegmentsV2Output { + s.Segments = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListRealtimeContactAnalysisSegmentsV2Output) SetStatus(v string) *ListRealtimeContactAnalysisSegmentsV2Output { + s.Status = &v + return s +} + type ListRoutingProfileQueuesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -45683,6 +50807,12 @@ type ListRoutingProfileQueuesOutput struct { _ struct{} `type:"structure"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // If there are additional results, this is the token for the next set of results. NextToken *string `type:"string"` @@ -45708,6 +50838,18 @@ return s.String() } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *ListRoutingProfileQueuesOutput) SetLastModifiedRegion(v string) *ListRoutingProfileQueuesOutput { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ListRoutingProfileQueuesOutput) SetLastModifiedTime(v time.Time) *ListRoutingProfileQueuesOutput { + s.LastModifiedTime = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *ListRoutingProfileQueuesOutput) SetNextToken(v string) *ListRoutingProfileQueuesOutput { s.NextToken = &v @@ -46080,6 +51222,156 @@ return s } +type ListSecurityProfileApplicationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The identifier for the security profle. + // + // SecurityProfileId is a required field + SecurityProfileId *string `location:"uri" locationName:"SecurityProfileId" 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 ListSecurityProfileApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSecurityProfileApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSecurityProfileApplicationsInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.SecurityProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityProfileId")) + } + if s.SecurityProfileId != nil && len(*s.SecurityProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ListSecurityProfileApplicationsInput) SetInstanceId(v string) *ListSecurityProfileApplicationsInput { + s.InstanceId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSecurityProfileApplicationsInput) SetMaxResults(v int64) *ListSecurityProfileApplicationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSecurityProfileApplicationsInput) SetNextToken(v string) *ListSecurityProfileApplicationsInput { + s.NextToken = &v + return s +} + +// SetSecurityProfileId sets the SecurityProfileId field's value. +func (s *ListSecurityProfileApplicationsInput) SetSecurityProfileId(v string) *ListSecurityProfileApplicationsInput { + s.SecurityProfileId = &v + return s +} + +type ListSecurityProfileApplicationsOutput struct { + _ struct{} `type:"structure"` + + // This API is in preview release for Amazon Connect and is subject to change. + // + // A list of the third-party application's metadata. + Applications []*Application `type:"list"` + + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsOutput) GoString() string { + return s.String() +} + +// SetApplications sets the Applications field's value. +func (s *ListSecurityProfileApplicationsOutput) SetApplications(v []*Application) *ListSecurityProfileApplicationsOutput { + s.Applications = v + return s +} + +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *ListSecurityProfileApplicationsOutput) SetLastModifiedRegion(v string) *ListSecurityProfileApplicationsOutput { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ListSecurityProfileApplicationsOutput) SetLastModifiedTime(v time.Time) *ListSecurityProfileApplicationsOutput { + s.LastModifiedTime = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSecurityProfileApplicationsOutput) SetNextToken(v string) *ListSecurityProfileApplicationsOutput { + s.NextToken = &v + return s +} + type ListSecurityProfilePermissionsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -46173,6 +51465,12 @@ type ListSecurityProfilePermissionsOutput struct { _ struct{} `type:"structure"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // If there are additional results, this is the token for the next set of results. NextToken *string `type:"string"` @@ -46199,6 +51497,18 @@ return s.String() } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *ListSecurityProfilePermissionsOutput) SetLastModifiedRegion(v string) *ListSecurityProfilePermissionsOutput { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ListSecurityProfilePermissionsOutput) SetLastModifiedTime(v time.Time) *ListSecurityProfilePermissionsOutput { + s.LastModifiedTime = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *ListSecurityProfilePermissionsOutput) SetNextToken(v string) *ListSecurityProfilePermissionsOutput { s.NextToken = &v @@ -47546,6 +52856,166 @@ return s } +// A set of endpoints used by clients to connect to the media service group +// for an Amazon Chime SDK meeting. +type MediaPlacement struct { + _ struct{} `type:"structure"` + + // The audio fallback URL. + AudioFallbackUrl *string `min:"1" type:"string"` + + // The audio host URL. + AudioHostUrl *string `min:"1" type:"string"` + + // The event ingestion URL to which you send client meeting events. + EventIngestionUrl *string `min:"1" type:"string"` + + // The signaling URL. + SignalingUrl *string `min:"1" type:"string"` + + // The turn control URL. + TurnControlUrl *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaPlacement) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaPlacement) GoString() string { + return s.String() +} + +// SetAudioFallbackUrl sets the AudioFallbackUrl field's value. +func (s *MediaPlacement) SetAudioFallbackUrl(v string) *MediaPlacement { + s.AudioFallbackUrl = &v + return s +} + +// SetAudioHostUrl sets the AudioHostUrl field's value. +func (s *MediaPlacement) SetAudioHostUrl(v string) *MediaPlacement { + s.AudioHostUrl = &v + return s +} + +// SetEventIngestionUrl sets the EventIngestionUrl field's value. +func (s *MediaPlacement) SetEventIngestionUrl(v string) *MediaPlacement { + s.EventIngestionUrl = &v + return s +} + +// SetSignalingUrl sets the SignalingUrl field's value. +func (s *MediaPlacement) SetSignalingUrl(v string) *MediaPlacement { + s.SignalingUrl = &v + return s +} + +// SetTurnControlUrl sets the TurnControlUrl field's value. +func (s *MediaPlacement) SetTurnControlUrl(v string) *MediaPlacement { + s.TurnControlUrl = &v + return s +} + +// A meeting created using the Amazon Chime SDK. +type Meeting struct { + _ struct{} `type:"structure"` + + // The media placement for the meeting. + MediaPlacement *MediaPlacement `type:"structure"` + + // The Amazon Web Services Region in which you create the meeting. + MediaRegion *string `type:"string"` + + // The configuration settings of the features available to a meeting. + MeetingFeatures *MeetingFeaturesConfiguration `type:"structure"` + + // The Amazon Chime SDK meeting ID. + MeetingId *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 Meeting) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Meeting) GoString() string { + return s.String() +} + +// SetMediaPlacement sets the MediaPlacement field's value. +func (s *Meeting) SetMediaPlacement(v *MediaPlacement) *Meeting { + s.MediaPlacement = v + return s +} + +// SetMediaRegion sets the MediaRegion field's value. +func (s *Meeting) SetMediaRegion(v string) *Meeting { + s.MediaRegion = &v + return s +} + +// SetMeetingFeatures sets the MeetingFeatures field's value. +func (s *Meeting) SetMeetingFeatures(v *MeetingFeaturesConfiguration) *Meeting { + s.MeetingFeatures = v + return s +} + +// SetMeetingId sets the MeetingId field's value. +func (s *Meeting) SetMeetingId(v string) *Meeting { + s.MeetingId = &v + return s +} + +// The configuration settings of the features available to a meeting. +type MeetingFeaturesConfiguration struct { + _ struct{} `type:"structure"` + + // The configuration settings for the audio features available to a meeting. + Audio *AudioFeatures `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 MeetingFeaturesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MeetingFeaturesConfiguration) GoString() string { + return s.String() +} + +// SetAudio sets the Audio field's value. +func (s *MeetingFeaturesConfiguration) SetAudio(v *AudioFeatures) *MeetingFeaturesConfiguration { + s.Audio = v + return s +} + // Contains the name, thresholds, and metric filters. type MetricDataV2 struct { _ struct{} `type:"structure"` @@ -47610,6 +53080,11 @@ // | THIRD_PARTY_DISCONNECT | TELECOM_PROBLEM | BARGED | CONTACT_FLOW_DISCONNECT // | OTHER | EXPIRED | API MetricFilterValues []*string `min:"1" type:"list"` + + // The flag to use to filter on requested metric filter values or to not filter + // on requested metric filter values. By default the negate is false, which + // indicates to filter on the requested metric filter. + Negate *bool `type:"boolean"` } // String returns the string representation. @@ -47655,6 +53130,67 @@ return s } +// SetNegate sets the Negate field's value. +func (s *MetricFilterV2) SetNegate(v bool) *MetricFilterV2 { + s.Negate = &v + return s +} + +// The interval period with the start and end time for the metrics. +type MetricInterval struct { + _ struct{} `type:"structure"` + + // The timestamp, in UNIX Epoch time format. End time is based on the interval + // period selected. For example, If IntervalPeriod is selected THIRTY_MIN, StartTime + // and EndTime in the API request differs by 1 day, then 48 results are returned + // in the response. Each result is aggregated by the 30 minutes period, with + // each StartTime and EndTime differing by 30 minutes. + EndTime *time.Time `type:"timestamp"` + + // The interval period provided in the API request. + Interval *string `type:"string" enum:"IntervalPeriod"` + + // The timestamp, in UNIX Epoch time format. Start time is based on the interval + // period selected. + StartTime *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricInterval) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricInterval) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *MetricInterval) SetEndTime(v time.Time) *MetricInterval { + s.EndTime = &v + return s +} + +// SetInterval sets the Interval field's value. +func (s *MetricInterval) SetInterval(v string) *MetricInterval { + s.Interval = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *MetricInterval) SetStartTime(v time.Time) *MetricInterval { + s.StartTime = &v + return s +} + // Contains information about the metric results. type MetricResultV2 struct { _ struct{} `type:"structure"` @@ -47664,6 +53200,9 @@ // The dimension for the metrics. Dimensions map[string]*string `type:"map"` + + // The interval period with the start and end time for the metrics. + MetricInterval *MetricInterval `type:"structure"` } // String returns the string representation. @@ -47696,6 +53235,12 @@ return s } +// SetMetricInterval sets the MetricInterval field's value. +func (s *MetricResultV2) SetMetricInterval(v *MetricInterval) *MetricResultV2 { + s.MetricInterval = v + return s +} + // Contains information about the metric. type MetricV2 struct { _ struct{} `type:"structure"` @@ -47924,6 +53469,97 @@ return s } +// Payload of chat properties to apply when starting a new contact. +type NewSessionDetails struct { + _ struct{} `type:"structure"` + + // A custom key-value pair using an attribute map. The attributes are standard + // Amazon Connect attributes. They can be accessed in flows just like any other + // contact attributes. + // + // There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. + // Attribute keys can include only alphanumeric, dash, and underscore characters. + Attributes map[string]*string `type:"map"` + + // The customer's details. + ParticipantDetails *ParticipantDetails `type:"structure"` + + // The streaming configuration, such as the Amazon SNS streaming endpoint. + StreamingConfiguration *ChatStreamingConfiguration `type:"structure"` + + // The supported chat message content types. Supported types are text/plain, + // text/markdown, application/json, application/vnd.amazonaws.connect.message.interactive, + // and application/vnd.amazonaws.connect.message.interactive.response. + // + // Content types must always contain text/plain. You can then put any other + // supported type in the list. For example, all the following lists are valid + // because they contain text/plain: [text/plain, text/markdown, application/json], + // [text/markdown, text/plain], [text/plain, application/json, application/vnd.amazonaws.connect.message.interactive.response]. + SupportedMessagingContentTypes []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NewSessionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NewSessionDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NewSessionDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NewSessionDetails"} + if s.ParticipantDetails != nil { + if err := s.ParticipantDetails.Validate(); err != nil { + invalidParams.AddNested("ParticipantDetails", err.(request.ErrInvalidParams)) + } + } + if s.StreamingConfiguration != nil { + if err := s.StreamingConfiguration.Validate(); err != nil { + invalidParams.AddNested("StreamingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributes sets the Attributes field's value. +func (s *NewSessionDetails) SetAttributes(v map[string]*string) *NewSessionDetails { + s.Attributes = v + return s +} + +// SetParticipantDetails sets the ParticipantDetails field's value. +func (s *NewSessionDetails) SetParticipantDetails(v *ParticipantDetails) *NewSessionDetails { + s.ParticipantDetails = v + return s +} + +// SetStreamingConfiguration sets the StreamingConfiguration field's value. +func (s *NewSessionDetails) SetStreamingConfiguration(v *ChatStreamingConfiguration) *NewSessionDetails { + s.StreamingConfiguration = v + return s +} + +// SetSupportedMessagingContentTypes sets the SupportedMessagingContentTypes field's value. +func (s *NewSessionDetails) SetSupportedMessagingContentTypes(v []*string) *NewSessionDetails { + s.SupportedMessagingContentTypes = v + return s +} + // The type of notification recipient. type NotificationRecipientType struct { _ struct{} `type:"structure"` @@ -48196,6 +53832,106 @@ return s.RespMetadata.RequestID } +// Thrown for analyzed content when requested OutputType was not enabled for +// a given contact. For example, if an OutputType.Raw was requested for a contact +// that had `RedactedOnly` Redaction policy set in Contact flow. +type OutputTypeNotFoundException 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 OutputTypeNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OutputTypeNotFoundException) GoString() string { + return s.String() +} + +func newErrorOutputTypeNotFoundException(v protocol.ResponseMetadata) error { + return &OutputTypeNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OutputTypeNotFoundException) Code() string { + return "OutputTypeNotFoundException" +} + +// Message returns the exception's message. +func (s *OutputTypeNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OutputTypeNotFoundException) OrigErr() error { + return nil +} + +func (s *OutputTypeNotFoundException) 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 *OutputTypeNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OutputTypeNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The configuration for the allowed capabilities for participants present over +// the call. +type ParticipantCapabilities struct { + _ struct{} `type:"structure"` + + // The configuration having the video sharing capabilities for participants + // over the call. + Video *string `type:"string" enum:"VideoCapability"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParticipantCapabilities) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParticipantCapabilities) GoString() string { + return s.String() +} + +// SetVideo sets the Video field's value. +func (s *ParticipantCapabilities) SetVideo(v string) *ParticipantCapabilities { + s.Video = &v + return s +} + // The customer's details. type ParticipantDetails struct { _ struct{} `type:"structure"` @@ -48610,17 +54346,18 @@ // The status of the phone number. // -// - CLAIMED means the previous ClaimedPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimedPhoneNumber.html) +// - CLAIMED means the previous ClaimPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimPhoneNumber.html) // or UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html) // operation succeeded. // -// - IN_PROGRESS means a ClaimedPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimedPhoneNumber.html) -// or UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html) +// - IN_PROGRESS means a ClaimPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimPhoneNumber.html), +// UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html), +// or UpdatePhoneNumberMetadata (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumberMetadata.html) // operation is still in progress and has not yet completed. You can call // DescribePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribePhoneNumber.html) // at a later time to verify if the previous operation has completed. // -// - FAILED indicates that the previous ClaimedPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimedPhoneNumber.html) +// - FAILED indicates that the previous ClaimPhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_ClaimPhoneNumber.html) // or UpdatePhoneNumber (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdatePhoneNumber.html) // operation has failed. It will include a message indicating the failure // reason. A common reason for a failure may be that the TargetArn value @@ -48775,6 +54512,12 @@ // The description of the prompt. Description *string `min:"1" type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the prompt. Name *string `min:"1" type:"string"` @@ -48813,6 +54556,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *Prompt) SetLastModifiedRegion(v string) *Prompt { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *Prompt) SetLastModifiedTime(v time.Time) *Prompt { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *Prompt) SetName(v string) *Prompt { s.Name = &v @@ -48937,6 +54692,12 @@ // The identifier of the prompt. Id *string `min:"1" type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the prompt. Name *string `min:"1" type:"string"` } @@ -48971,6 +54732,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *PromptSummary) SetLastModifiedRegion(v string) *PromptSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *PromptSummary) SetLastModifiedTime(v time.Time) *PromptSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *PromptSummary) SetName(v string) *PromptSummary { s.Name = &v @@ -49213,6 +54986,12 @@ // The identifier for the hours of operation. HoursOfOperationId *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The maximum number of contacts that can be in the queue before it is considered // full. MaxContacts *int64 `type:"integer"` @@ -49267,6 +55046,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *Queue) SetLastModifiedRegion(v string) *Queue { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *Queue) SetLastModifiedTime(v time.Time) *Queue { + s.LastModifiedTime = &v + return s +} + // SetMaxContacts sets the MaxContacts field's value. func (s *Queue) SetMaxContacts(v int64) *Queue { s.MaxContacts = &v @@ -49566,6 +55357,12 @@ // The identifier of the queue. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the queue. Name *string `min:"1" type:"string"` @@ -49603,6 +55400,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *QueueSummary) SetLastModifiedRegion(v string) *QueueSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QueueSummary) SetLastModifiedTime(v time.Time) *QueueSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *QueueSummary) SetName(v string) *QueueSummary { s.Name = &v @@ -49622,6 +55431,12 @@ // The description. Description *string `min:"1" type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the quick connect. Name *string `min:"1" type:"string"` @@ -49663,6 +55478,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *QuickConnect) SetLastModifiedRegion(v string) *QuickConnect { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickConnect) SetLastModifiedTime(v time.Time) *QuickConnect { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *QuickConnect) SetName(v string) *QuickConnect { s.Name = &v @@ -49703,9 +55530,9 @@ // The queue configuration. This is required only if QuickConnectType is QUEUE. QueueConfig *QueueQuickConnectConfig `type:"structure"` - // The type of quick connect. In the Amazon Connect console, when you create - // a quick connect, you are prompted to assign one of the following types: Agent - // (USER), External (PHONE_NUMBER), or Queue (QUEUE). + // The type of quick connect. In the Amazon Connect admin website, when you + // create a quick connect, you are prompted to assign one of the following types: + // Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE). // // QuickConnectType is a required field QuickConnectType *string `type:"string" required:"true" enum:"QuickConnectType"` @@ -49884,12 +55711,18 @@ // The identifier for the quick connect. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the quick connect. Name *string `min:"1" type:"string"` - // The type of quick connect. In the Amazon Connect console, when you create - // a quick connect, you are prompted to assign one of the following types: Agent - // (USER), External (PHONE_NUMBER), or Queue (QUEUE). + // The type of quick connect. In the Amazon Connect admin website, when you + // create a quick connect, you are prompted to assign one of the following types: + // Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE). QuickConnectType *string `type:"string" enum:"QuickConnectType"` } @@ -49923,6 +55756,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *QuickConnectSummary) SetLastModifiedRegion(v string) *QuickConnectSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickConnectSummary) SetLastModifiedTime(v time.Time) *QuickConnectSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *QuickConnectSummary) SetName(v string) *QuickConnectSummary { s.Name = &v @@ -49982,6 +55827,812 @@ return s } +// Object that describes attached file. +type RealTimeContactAnalysisAttachment struct { + _ struct{} `type:"structure"` + + // A unique identifier for the attachment. + // + // AttachmentId is a required field + AttachmentId *string `min:"1" type:"string" required:"true"` + + // A case-sensitive name of the attachment being uploaded. Can be redacted. + // + // AttachmentName is a required field + AttachmentName *string `min:"1" type:"string" required:"true"` + + // Describes the MIME file type of the attachment. For a list of supported file + // types, see Feature specifications (https://docs.aws.amazon.com/connect/latest/adminguide/feature-limits.html) + // in the Amazon Connect Administrator Guide. + ContentType *string `min:"1" type:"string"` + + // Status of the attachment. + Status *string `type:"string" enum:"ArtifactStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisAttachment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisAttachment) GoString() string { + return s.String() +} + +// SetAttachmentId sets the AttachmentId field's value. +func (s *RealTimeContactAnalysisAttachment) SetAttachmentId(v string) *RealTimeContactAnalysisAttachment { + s.AttachmentId = &v + return s +} + +// SetAttachmentName sets the AttachmentName field's value. +func (s *RealTimeContactAnalysisAttachment) SetAttachmentName(v string) *RealTimeContactAnalysisAttachment { + s.AttachmentName = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *RealTimeContactAnalysisAttachment) SetContentType(v string) *RealTimeContactAnalysisAttachment { + s.ContentType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RealTimeContactAnalysisAttachment) SetStatus(v string) *RealTimeContactAnalysisAttachment { + s.Status = &v + return s +} + +// Provides information about the category rule that was matched. +type RealTimeContactAnalysisCategoryDetails struct { + _ struct{} `type:"structure"` + + // List of PointOfInterest - objects describing a single match of a rule. + // + // PointsOfInterest is a required field + PointsOfInterest []*RealTimeContactAnalysisPointOfInterest `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 RealTimeContactAnalysisCategoryDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisCategoryDetails) GoString() string { + return s.String() +} + +// SetPointsOfInterest sets the PointsOfInterest field's value. +func (s *RealTimeContactAnalysisCategoryDetails) SetPointsOfInterest(v []*RealTimeContactAnalysisPointOfInterest) *RealTimeContactAnalysisCategoryDetails { + s.PointsOfInterest = v + return s +} + +// Begin and end offsets for a part of text. +type RealTimeContactAnalysisCharacterInterval struct { + _ struct{} `type:"structure"` + + // The beginning of the character interval. + // + // BeginOffsetChar is a required field + BeginOffsetChar *int64 `type:"integer" required:"true"` + + // The end of the character interval. + // + // EndOffsetChar is a required field + EndOffsetChar *int64 `type:"integer" 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 RealTimeContactAnalysisCharacterInterval) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisCharacterInterval) GoString() string { + return s.String() +} + +// SetBeginOffsetChar sets the BeginOffsetChar field's value. +func (s *RealTimeContactAnalysisCharacterInterval) SetBeginOffsetChar(v int64) *RealTimeContactAnalysisCharacterInterval { + s.BeginOffsetChar = &v + return s +} + +// SetEndOffsetChar sets the EndOffsetChar field's value. +func (s *RealTimeContactAnalysisCharacterInterval) SetEndOffsetChar(v int64) *RealTimeContactAnalysisCharacterInterval { + s.EndOffsetChar = &v + return s +} + +// Potential issues that are detected based on an artificial intelligence analysis +// of each turn in the conversation. +type RealTimeContactAnalysisIssueDetected struct { + _ struct{} `type:"structure"` + + // List of the transcript items (segments) that are associated with a given + // issue. + // + // TranscriptItems is a required field + TranscriptItems []*RealTimeContactAnalysisTranscriptItemWithContent `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 RealTimeContactAnalysisIssueDetected) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisIssueDetected) GoString() string { + return s.String() +} + +// SetTranscriptItems sets the TranscriptItems field's value. +func (s *RealTimeContactAnalysisIssueDetected) SetTranscriptItems(v []*RealTimeContactAnalysisTranscriptItemWithContent) *RealTimeContactAnalysisIssueDetected { + s.TranscriptItems = v + return s +} + +// The section of the contact transcript segment that category rule was detected. +type RealTimeContactAnalysisPointOfInterest struct { + _ struct{} `type:"structure"` + + // List of the transcript items (segments) that are associated with a given + // point of interest. + TranscriptItems []*RealTimeContactAnalysisTranscriptItemWithCharacterOffsets `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 RealTimeContactAnalysisPointOfInterest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisPointOfInterest) GoString() string { + return s.String() +} + +// SetTranscriptItems sets the TranscriptItems field's value. +func (s *RealTimeContactAnalysisPointOfInterest) SetTranscriptItems(v []*RealTimeContactAnalysisTranscriptItemWithCharacterOffsets) *RealTimeContactAnalysisPointOfInterest { + s.TranscriptItems = v + return s +} + +// Segment containing list of attachments. +type RealTimeContactAnalysisSegmentAttachments struct { + _ struct{} `type:"structure"` + + // List of objects describing an individual attachment. + // + // Attachments is a required field + Attachments []*RealTimeContactAnalysisAttachment `type:"list" required:"true"` + + // The display name of the participant. Can be redacted. + DisplayName *string `min:"1" type:"string"` + + // The identifier of the segment. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` + + // The identifier of the participant. + // + // ParticipantId is a required field + ParticipantId *string `min:"1" type:"string" required:"true"` + + // The role of the participant. For example, is it a customer, agent, or system. + // + // ParticipantRole is a required field + ParticipantRole *string `type:"string" required:"true" enum:"ParticipantRole"` + + // Field describing the time of the event. It can have different representations + // of time. + // + // Time is a required field + Time *RealTimeContactAnalysisTimeData `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 RealTimeContactAnalysisSegmentAttachments) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisSegmentAttachments) GoString() string { + return s.String() +} + +// SetAttachments sets the Attachments field's value. +func (s *RealTimeContactAnalysisSegmentAttachments) SetAttachments(v []*RealTimeContactAnalysisAttachment) *RealTimeContactAnalysisSegmentAttachments { + s.Attachments = v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *RealTimeContactAnalysisSegmentAttachments) SetDisplayName(v string) *RealTimeContactAnalysisSegmentAttachments { + s.DisplayName = &v + return s +} + +// SetId sets the Id field's value. +func (s *RealTimeContactAnalysisSegmentAttachments) SetId(v string) *RealTimeContactAnalysisSegmentAttachments { + s.Id = &v + return s +} + +// SetParticipantId sets the ParticipantId field's value. +func (s *RealTimeContactAnalysisSegmentAttachments) SetParticipantId(v string) *RealTimeContactAnalysisSegmentAttachments { + s.ParticipantId = &v + return s +} + +// SetParticipantRole sets the ParticipantRole field's value. +func (s *RealTimeContactAnalysisSegmentAttachments) SetParticipantRole(v string) *RealTimeContactAnalysisSegmentAttachments { + s.ParticipantRole = &v + return s +} + +// SetTime sets the Time field's value. +func (s *RealTimeContactAnalysisSegmentAttachments) SetTime(v *RealTimeContactAnalysisTimeData) *RealTimeContactAnalysisSegmentAttachments { + s.Time = v + return s +} + +// The matched category rules. +type RealTimeContactAnalysisSegmentCategories struct { + _ struct{} `type:"structure"` + + // Map between the name of the matched rule and RealTimeContactAnalysisCategoryDetails. + // + // MatchedDetails is a required field + MatchedDetails map[string]*RealTimeContactAnalysisCategoryDetails `type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisSegmentCategories) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisSegmentCategories) GoString() string { + return s.String() +} + +// SetMatchedDetails sets the MatchedDetails field's value. +func (s *RealTimeContactAnalysisSegmentCategories) SetMatchedDetails(v map[string]*RealTimeContactAnalysisCategoryDetails) *RealTimeContactAnalysisSegmentCategories { + s.MatchedDetails = v + return s +} + +// Segment type describing a contact event. +type RealTimeContactAnalysisSegmentEvent struct { + _ struct{} `type:"structure"` + + // The display name of the participant. Can be redacted. + DisplayName *string `min:"1" type:"string"` + + // Type of the event. For example, application/vnd.amazonaws.connect.event.participant.left. + // + // EventType is a required field + EventType *string `min:"1" type:"string" required:"true"` + + // The identifier of the contact event. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` + + // The identifier of the participant. + ParticipantId *string `min:"1" type:"string"` + + // The role of the participant. For example, is it a customer, agent, or system. + ParticipantRole *string `type:"string" enum:"ParticipantRole"` + + // Field describing the time of the event. It can have different representations + // of time. + // + // Time is a required field + Time *RealTimeContactAnalysisTimeData `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 RealTimeContactAnalysisSegmentEvent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisSegmentEvent) GoString() string { + return s.String() +} + +// SetDisplayName sets the DisplayName field's value. +func (s *RealTimeContactAnalysisSegmentEvent) SetDisplayName(v string) *RealTimeContactAnalysisSegmentEvent { + s.DisplayName = &v + return s +} + +// SetEventType sets the EventType field's value. +func (s *RealTimeContactAnalysisSegmentEvent) SetEventType(v string) *RealTimeContactAnalysisSegmentEvent { + s.EventType = &v + return s +} + +// SetId sets the Id field's value. +func (s *RealTimeContactAnalysisSegmentEvent) SetId(v string) *RealTimeContactAnalysisSegmentEvent { + s.Id = &v + return s +} + +// SetParticipantId sets the ParticipantId field's value. +func (s *RealTimeContactAnalysisSegmentEvent) SetParticipantId(v string) *RealTimeContactAnalysisSegmentEvent { + s.ParticipantId = &v + return s +} + +// SetParticipantRole sets the ParticipantRole field's value. +func (s *RealTimeContactAnalysisSegmentEvent) SetParticipantRole(v string) *RealTimeContactAnalysisSegmentEvent { + s.ParticipantRole = &v + return s +} + +// SetTime sets the Time field's value. +func (s *RealTimeContactAnalysisSegmentEvent) SetTime(v *RealTimeContactAnalysisTimeData) *RealTimeContactAnalysisSegmentEvent { + s.Time = v + return s +} + +// Segment type containing a list of detected issues. +type RealTimeContactAnalysisSegmentIssues struct { + _ struct{} `type:"structure"` + + // List of the issues detected. + // + // IssuesDetected is a required field + IssuesDetected []*RealTimeContactAnalysisIssueDetected `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 RealTimeContactAnalysisSegmentIssues) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisSegmentIssues) GoString() string { + return s.String() +} + +// SetIssuesDetected sets the IssuesDetected field's value. +func (s *RealTimeContactAnalysisSegmentIssues) SetIssuesDetected(v []*RealTimeContactAnalysisIssueDetected) *RealTimeContactAnalysisSegmentIssues { + s.IssuesDetected = v + return s +} + +// The analyzed transcript segment. +type RealTimeContactAnalysisSegmentTranscript struct { + _ struct{} `type:"structure"` + + // The content of the transcript. Can be redacted. + // + // Content is a required field + Content *string `min:"1" type:"string" required:"true"` + + // The type of content of the item. For example, text/plain. + ContentType *string `min:"1" type:"string"` + + // The display name of the participant. + DisplayName *string `min:"1" type:"string"` + + // The identifier of the transcript. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` + + // The identifier of the participant. + // + // ParticipantId is a required field + ParticipantId *string `min:"1" type:"string" required:"true"` + + // The role of the participant. For example, is it a customer, agent, or system. + // + // ParticipantRole is a required field + ParticipantRole *string `type:"string" required:"true" enum:"ParticipantRole"` + + // Object describing redaction that was applied to the transcript. If transcript + // has the field it means part of the transcript was redacted. + Redaction *RealTimeContactAnalysisTranscriptItemRedaction `type:"structure"` + + // The sentiment detected for this piece of transcript. + Sentiment *string `type:"string" enum:"RealTimeContactAnalysisSentimentLabel"` + + // Field describing the time of the event. It can have different representations + // of time. + // + // Time is a required field + Time *RealTimeContactAnalysisTimeData `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 RealTimeContactAnalysisSegmentTranscript) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisSegmentTranscript) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetContent(v string) *RealTimeContactAnalysisSegmentTranscript { + s.Content = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetContentType(v string) *RealTimeContactAnalysisSegmentTranscript { + s.ContentType = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetDisplayName(v string) *RealTimeContactAnalysisSegmentTranscript { + s.DisplayName = &v + return s +} + +// SetId sets the Id field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetId(v string) *RealTimeContactAnalysisSegmentTranscript { + s.Id = &v + return s +} + +// SetParticipantId sets the ParticipantId field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetParticipantId(v string) *RealTimeContactAnalysisSegmentTranscript { + s.ParticipantId = &v + return s +} + +// SetParticipantRole sets the ParticipantRole field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetParticipantRole(v string) *RealTimeContactAnalysisSegmentTranscript { + s.ParticipantRole = &v + return s +} + +// SetRedaction sets the Redaction field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetRedaction(v *RealTimeContactAnalysisTranscriptItemRedaction) *RealTimeContactAnalysisSegmentTranscript { + s.Redaction = v + return s +} + +// SetSentiment sets the Sentiment field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetSentiment(v string) *RealTimeContactAnalysisSegmentTranscript { + s.Sentiment = &v + return s +} + +// SetTime sets the Time field's value. +func (s *RealTimeContactAnalysisSegmentTranscript) SetTime(v *RealTimeContactAnalysisTimeData) *RealTimeContactAnalysisSegmentTranscript { + s.Time = v + return s +} + +// Object describing time with which the segment is associated. It can have +// different representations of time. Currently supported: absoluteTime +type RealTimeContactAnalysisTimeData struct { + _ struct{} `type:"structure"` + + // Time represented in ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example, + // 2019-11-08T02:41:28.172Z. + AbsoluteTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTimeData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTimeData) GoString() string { + return s.String() +} + +// SetAbsoluteTime sets the AbsoluteTime field's value. +func (s *RealTimeContactAnalysisTimeData) SetAbsoluteTime(v time.Time) *RealTimeContactAnalysisTimeData { + s.AbsoluteTime = &v + return s +} + +// Object describing redaction applied to the segment. +type RealTimeContactAnalysisTranscriptItemRedaction struct { + _ struct{} `type:"structure"` + + // List of character intervals each describing a part of the text that was redacted. + // For OutputType.Raw, part of the original text that contains data that can + // be redacted. For OutputType.Redacted, part of the string with redaction tag. + CharacterOffsets []*RealTimeContactAnalysisCharacterInterval `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 RealTimeContactAnalysisTranscriptItemRedaction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTranscriptItemRedaction) GoString() string { + return s.String() +} + +// SetCharacterOffsets sets the CharacterOffsets field's value. +func (s *RealTimeContactAnalysisTranscriptItemRedaction) SetCharacterOffsets(v []*RealTimeContactAnalysisCharacterInterval) *RealTimeContactAnalysisTranscriptItemRedaction { + s.CharacterOffsets = v + return s +} + +// Transcript representation containing Id and list of character intervals that +// are associated with analysis data. For example, this object within a RealTimeContactAnalysisPointOfInterest +// in Category.MatchedDetails would have character interval describing part +// of the text that matched category. +type RealTimeContactAnalysisTranscriptItemWithCharacterOffsets struct { + _ struct{} `type:"structure"` + + // List of character intervals within transcript content/text. + CharacterOffsets *RealTimeContactAnalysisCharacterInterval `type:"structure"` + + // Transcript identifier. Matches the identifier from one of the TranscriptSegments. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTranscriptItemWithCharacterOffsets) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTranscriptItemWithCharacterOffsets) GoString() string { + return s.String() +} + +// SetCharacterOffsets sets the CharacterOffsets field's value. +func (s *RealTimeContactAnalysisTranscriptItemWithCharacterOffsets) SetCharacterOffsets(v *RealTimeContactAnalysisCharacterInterval) *RealTimeContactAnalysisTranscriptItemWithCharacterOffsets { + s.CharacterOffsets = v + return s +} + +// SetId sets the Id field's value. +func (s *RealTimeContactAnalysisTranscriptItemWithCharacterOffsets) SetId(v string) *RealTimeContactAnalysisTranscriptItemWithCharacterOffsets { + s.Id = &v + return s +} + +// Transcript representation containing Id, Content and list of character intervals +// that are associated with analysis data. For example, this object within an +// issue detected would describe both content that contains identified issue +// and intervals where that content is taken from. +type RealTimeContactAnalysisTranscriptItemWithContent struct { + _ struct{} `type:"structure"` + + // Begin and end offsets for a part of text. + CharacterOffsets *RealTimeContactAnalysisCharacterInterval `type:"structure"` + + // Part of the transcript content that contains identified issue. Can be redacted + Content *string `min:"1" type:"string"` + + // Transcript identifier. Matches the identifier from one of the TranscriptSegments. + // + // Id is a required field + Id *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTranscriptItemWithContent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealTimeContactAnalysisTranscriptItemWithContent) GoString() string { + return s.String() +} + +// SetCharacterOffsets sets the CharacterOffsets field's value. +func (s *RealTimeContactAnalysisTranscriptItemWithContent) SetCharacterOffsets(v *RealTimeContactAnalysisCharacterInterval) *RealTimeContactAnalysisTranscriptItemWithContent { + s.CharacterOffsets = v + return s +} + +// SetContent sets the Content field's value. +func (s *RealTimeContactAnalysisTranscriptItemWithContent) SetContent(v string) *RealTimeContactAnalysisTranscriptItemWithContent { + s.Content = &v + return s +} + +// SetId sets the Id field's value. +func (s *RealTimeContactAnalysisTranscriptItemWithContent) SetId(v string) *RealTimeContactAnalysisTranscriptItemWithContent { + s.Id = &v + return s +} + +// An analyzed segment for a real-time analysis session. +type RealtimeContactAnalysisSegment struct { + _ struct{} `type:"structure"` + + // The analyzed attachments. + Attachments *RealTimeContactAnalysisSegmentAttachments `type:"structure"` + + // The matched category rules. + Categories *RealTimeContactAnalysisSegmentCategories `type:"structure"` + + // Segment type describing a contact event. + Event *RealTimeContactAnalysisSegmentEvent `type:"structure"` + + // Segment type containing a list of detected issues. + Issues *RealTimeContactAnalysisSegmentIssues `type:"structure"` + + // The analyzed transcript segment. + Transcript *RealTimeContactAnalysisSegmentTranscript `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 RealtimeContactAnalysisSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RealtimeContactAnalysisSegment) GoString() string { + return s.String() +} + +// SetAttachments sets the Attachments field's value. +func (s *RealtimeContactAnalysisSegment) SetAttachments(v *RealTimeContactAnalysisSegmentAttachments) *RealtimeContactAnalysisSegment { + s.Attachments = v + return s +} + +// SetCategories sets the Categories field's value. +func (s *RealtimeContactAnalysisSegment) SetCategories(v *RealTimeContactAnalysisSegmentCategories) *RealtimeContactAnalysisSegment { + s.Categories = v + return s +} + +// SetEvent sets the Event field's value. +func (s *RealtimeContactAnalysisSegment) SetEvent(v *RealTimeContactAnalysisSegmentEvent) *RealtimeContactAnalysisSegment { + s.Event = v + return s +} + +// SetIssues sets the Issues field's value. +func (s *RealtimeContactAnalysisSegment) SetIssues(v *RealTimeContactAnalysisSegmentIssues) *RealtimeContactAnalysisSegment { + s.Issues = v + return s +} + +// SetTranscript sets the Transcript field's value. +func (s *RealtimeContactAnalysisSegment) SetTranscript(v *RealTimeContactAnalysisSegmentTranscript) *RealtimeContactAnalysisSegment { + s.Transcript = v + return s +} + // Well-formed data on a contact, used by agents to complete a contact request. // You can have up to 4,096 UTF-8 bytes across all references for a contact. type Reference struct { @@ -50826,6 +57477,15 @@ // in the Amazon Resource Name (ARN) of the instance. InstanceId *string `min:"1" type:"string"` + // Whether this a default routing profile. + IsDefault *bool `type:"boolean"` + + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The channels agents can handle in the Contact Control Panel (CCP) for this // routing profile. MediaConcurrencies []*MediaConcurrency `type:"list"` @@ -50892,6 +57552,24 @@ return s } +// SetIsDefault sets the IsDefault field's value. +func (s *RoutingProfile) SetIsDefault(v bool) *RoutingProfile { + s.IsDefault = &v + return s +} + +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *RoutingProfile) SetLastModifiedRegion(v string) *RoutingProfile { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *RoutingProfile) SetLastModifiedTime(v time.Time) *RoutingProfile { + s.LastModifiedTime = &v + return s +} + // SetMediaConcurrencies sets the MediaConcurrencies field's value. func (s *RoutingProfile) SetMediaConcurrencies(v []*MediaConcurrency) *RoutingProfile { s.MediaConcurrencies = v @@ -51322,6 +58000,12 @@ // The identifier of the routing profile. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the routing profile. Name *string `min:"1" type:"string"` } @@ -51356,6 +58040,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *RoutingProfileSummary) SetLastModifiedRegion(v string) *RoutingProfileSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *RoutingProfileSummary) SetLastModifiedTime(v time.Time) *RoutingProfileSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *RoutingProfileSummary) SetName(v string) *RoutingProfileSummary { s.Name = &v @@ -51515,12 +58211,24 @@ ActionType *string `type:"string" required:"true" enum:"ActionType"` // Information about the contact category action. + // + // Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable + // | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable + // | OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate AssignContactCategoryAction *AssignContactCategoryActionDefinition `type:"structure"` // Information about the EventBridge action. + // + // Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable + // | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable + // | OnContactEvaluationSubmit | OnMetricDataUpdate EventBridgeAction *EventBridgeActionDefinition `type:"structure"` // Information about the send notification action. + // + // Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable + // | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable + // | OnContactEvaluationSubmit | OnMetricDataUpdate SendNotificationAction *SendNotificationActionDefinition `type:"structure"` // Information about the task action. This field is required if TriggerEventSource @@ -51718,7 +58426,7 @@ // The name of the event source. This field is required if TriggerEventSource // is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate -// | OnSalesforceCaseCreate +// | OnSalesforceCaseCreate | OnContactEvaluationSubmit | OnMetricDataUpdate. type RuleTriggerEventSource struct { _ struct{} `type:"structure"` @@ -51861,6 +58569,12 @@ type SearchAvailablePhoneNumbersInput struct { _ struct{} `type:"structure"` + // The identifier of the Amazon Connect instance that phone numbers are claimed + // to. You can find the instance ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId + // or TargetArn. + InstanceId *string `min:"1" type:"string"` + // The maximum number of results to return per page. MaxResults *int64 `min:"1" type:"integer"` @@ -51883,10 +58597,9 @@ PhoneNumberType *string `type:"string" required:"true" enum:"PhoneNumberType"` // The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution - // groups that phone numbers are claimed to. - // - // TargetArn is a required field - TargetArn *string `type:"string" required:"true"` + // groups that phone number inbound traffic is routed through. You must enter + // InstanceId or TargetArn. + TargetArn *string `type:"string"` } // String returns the string representation. @@ -51910,6 +58623,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *SearchAvailablePhoneNumbersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SearchAvailablePhoneNumbersInput"} + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -51922,9 +58638,6 @@ if s.PhoneNumberType == nil { invalidParams.Add(request.NewErrParamRequired("PhoneNumberType")) } - if s.TargetArn == nil { - invalidParams.Add(request.NewErrParamRequired("TargetArn")) - } if invalidParams.Len() > 0 { return invalidParams @@ -51932,6 +58645,12 @@ return nil } +// SetInstanceId sets the InstanceId field's value. +func (s *SearchAvailablePhoneNumbersInput) SetInstanceId(v string) *SearchAvailablePhoneNumbersInput { + s.InstanceId = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *SearchAvailablePhoneNumbersInput) SetMaxResults(v int64) *SearchAvailablePhoneNumbersInput { s.MaxResults = &v @@ -53022,7 +59741,11 @@ // The identifier of the Amazon Connect instance. You can find the instance // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) // in the Amazon Resource Name (ARN) of the instance. - InstanceId *string `min:"1" type:"string"` + // + // InstanceID is a required field. The "Required: No" below is incorrect. + // + // InstanceId is a required field + InstanceId *string `min:"1" type:"string" required:"true"` // The maximum number of results to return per page. MaxResults *int64 `min:"1" type:"integer"` @@ -53063,6 +59786,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *SearchUsersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SearchUsersInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } @@ -53373,6 +60099,12 @@ // The identifier for the security profile. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The organization resource identifier for the security profile. OrganizationResourceId *string `min:"1" type:"string"` @@ -53430,6 +60162,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *SecurityProfile) SetLastModifiedRegion(v string) *SecurityProfile { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *SecurityProfile) SetLastModifiedTime(v time.Time) *SecurityProfile { + s.LastModifiedTime = &v + return s +} + // SetOrganizationResourceId sets the OrganizationResourceId field's value. func (s *SecurityProfile) SetOrganizationResourceId(v string) *SecurityProfile { s.OrganizationResourceId = &v @@ -53596,6 +60340,12 @@ // The identifier of the security profile. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The name of the security profile. Name *string `type:"string"` } @@ -53630,6 +60380,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *SecurityProfileSummary) SetLastModifiedRegion(v string) *SecurityProfileSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *SecurityProfileSummary) SetLastModifiedTime(v time.Time) *SecurityProfileSummary { + s.LastModifiedTime = &v + return s +} + // SetName sets the Name field's value. func (s *SecurityProfileSummary) SetName(v string) *SecurityProfileSummary { s.Name = &v @@ -53674,6 +60436,214 @@ return s } +// A value for a segment attribute. This is structured as a map where the key +// is valueString and the value is a string. +type SegmentAttributeValue struct { + _ struct{} `type:"structure"` + + // The value of a segment attribute. + ValueString *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SegmentAttributeValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SegmentAttributeValue) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SegmentAttributeValue) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SegmentAttributeValue"} + if s.ValueString != nil && len(*s.ValueString) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueString", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueString sets the ValueString field's value. +func (s *SegmentAttributeValue) SetValueString(v string) *SegmentAttributeValue { + s.ValueString = &v + return s +} + +type SendChatIntegrationEventInput struct { + _ struct{} `type:"structure"` + + // Chat system identifier, used in part to uniquely identify chat. This is associated + // with the Amazon Connect instance and flow to be used to start chats. For + // SMS, this is the phone number destination of inbound SMS messages represented + // by an Amazon Pinpoint phone number ARN. + // + // DestinationId is a required field + DestinationId *string `min:"1" type:"string" required:"true"` + + // Chat integration event payload + // + // Event is a required field + Event *ChatEvent `type:"structure" required:"true"` + + // Contact properties to apply when starting a new chat. If the integration + // event is handled with an existing chat, this is ignored. + NewSessionDetails *NewSessionDetails `type:"structure"` + + // External identifier of chat customer participant, used in part to uniquely + // identify a chat. For SMS, this is the E164 phone number of the chat customer + // participant. + // + // SourceId is a required field + SourceId *string `min:"1" type:"string" required:"true"` + + // Classification of a channel. This is used in part to uniquely identify chat. + // + // Valid value: ["connect:sms"] + Subtype *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendChatIntegrationEventInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendChatIntegrationEventInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SendChatIntegrationEventInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SendChatIntegrationEventInput"} + if s.DestinationId == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationId")) + } + if s.DestinationId != nil && len(*s.DestinationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DestinationId", 1)) + } + if s.Event == nil { + invalidParams.Add(request.NewErrParamRequired("Event")) + } + if s.SourceId == nil { + invalidParams.Add(request.NewErrParamRequired("SourceId")) + } + if s.SourceId != nil && len(*s.SourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceId", 1)) + } + if s.Subtype != nil && len(*s.Subtype) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Subtype", 1)) + } + if s.Event != nil { + if err := s.Event.Validate(); err != nil { + invalidParams.AddNested("Event", err.(request.ErrInvalidParams)) + } + } + if s.NewSessionDetails != nil { + if err := s.NewSessionDetails.Validate(); err != nil { + invalidParams.AddNested("NewSessionDetails", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationId sets the DestinationId field's value. +func (s *SendChatIntegrationEventInput) SetDestinationId(v string) *SendChatIntegrationEventInput { + s.DestinationId = &v + return s +} + +// SetEvent sets the Event field's value. +func (s *SendChatIntegrationEventInput) SetEvent(v *ChatEvent) *SendChatIntegrationEventInput { + s.Event = v + return s +} + +// SetNewSessionDetails sets the NewSessionDetails field's value. +func (s *SendChatIntegrationEventInput) SetNewSessionDetails(v *NewSessionDetails) *SendChatIntegrationEventInput { + s.NewSessionDetails = v + return s +} + +// SetSourceId sets the SourceId field's value. +func (s *SendChatIntegrationEventInput) SetSourceId(v string) *SendChatIntegrationEventInput { + s.SourceId = &v + return s +} + +// SetSubtype sets the Subtype field's value. +func (s *SendChatIntegrationEventInput) SetSubtype(v string) *SendChatIntegrationEventInput { + s.Subtype = &v + return s +} + +type SendChatIntegrationEventOutput struct { + _ struct{} `type:"structure"` + + // Identifier of chat contact used to handle integration event. This may be + // null if the integration event is not valid without an already existing chat + // contact. + InitialContactId *string `min:"1" type:"string"` + + // Whether handling the integration event resulted in creating a new chat or + // acting on existing chat. + NewChatCreated *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 SendChatIntegrationEventOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendChatIntegrationEventOutput) GoString() string { + return s.String() +} + +// SetInitialContactId sets the InitialContactId field's value. +func (s *SendChatIntegrationEventOutput) SetInitialContactId(v string) *SendChatIntegrationEventOutput { + s.InitialContactId = &v + return s +} + +// SetNewChatCreated sets the NewChatCreated field's value. +func (s *SendChatIntegrationEventOutput) SetNewChatCreated(v bool) *SendChatIntegrationEventOutput { + s.NewChatCreated = &v + return s +} + // Information about the send notification action. type SendNotificationActionDefinition struct { _ struct{} `type:"structure"` @@ -53846,7 +60816,8 @@ return s.RespMetadata.RequestID } -// The distribution of allowing signing in to the instance and its replica(s). +// The distribution that determines which Amazon Web Services Regions should +// be used to sign in agents in to both the instance and its replica(s). type SignInConfig struct { _ struct{} `type:"structure"` @@ -54075,10 +61046,10 @@ ClientToken *string `type:"string" idempotencyToken:"true"` // The identifier of the flow for initiating the chat. To see the ContactFlowId - // in the Amazon Connect console user interface, on the navigation menu go to - // Routing, Contact Flows. Choose the flow. On the flow page, under the name - // of the flow, choose Show additional flow information. The ContactFlowId is - // the last part of the ARN, shown here in bold: + // in the Amazon Connect admin website, on the navigation menu go to Routing, + // Contact Flows. Choose the flow. On the flow page, under the name of the flow, + // choose Show additional flow information. The ContactFlowId is the last part + // of the ARN, shown here in bold: // // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx // @@ -54111,6 +61082,20 @@ // You cannot provide data for both RelatedContactId and PersistentChat. RelatedContactId *string `min:"1" type:"string"` + // A set of system defined key-value pairs stored on individual contact segments + // using an attribute map. The attributes are standard Amazon Connect attributes. + // They can be accessed in flows. + // + // Attribute keys can include only alphanumeric, -, and _. + // + // This field can be used to show channel subtype, such as connect:Guide. + // + // The types application/vnd.amazonaws.connect.message.interactive and application/vnd.amazonaws.connect.message.interactive.response + // must be present in the SupportedMessagingContentTypes field of this API in + // order to set SegmentAttributes as {"connect:Subtype": {"valueString" : "connect:Guide" + // }}. + SegmentAttributes map[string]*SegmentAttributeValue `type:"map"` + // The supported chat message content types. Supported types are text/plain, // text/markdown, application/json, application/vnd.amazonaws.connect.message.interactive, // and application/vnd.amazonaws.connect.message.interactive.response. @@ -54180,6 +61165,16 @@ invalidParams.AddNested("PersistentChat", err.(request.ErrInvalidParams)) } } + if s.SegmentAttributes != nil { + for i, v := range s.SegmentAttributes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SegmentAttributes", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -54241,6 +61236,12 @@ return s } +// SetSegmentAttributes sets the SegmentAttributes field's value. +func (s *StartChatContactInput) SetSegmentAttributes(v map[string]*SegmentAttributeValue) *StartChatContactInput { + s.SegmentAttributes = v + return s +} + // SetSupportedMessagingContentTypes sets the SupportedMessagingContentTypes field's value. func (s *StartChatContactInput) SetSupportedMessagingContentTypes(v []*string) *StartChatContactInput { s.SupportedMessagingContentTypes = v @@ -54731,10 +61732,10 @@ ClientToken *string `type:"string" idempotencyToken:"true"` // The identifier of the flow for the outbound call. To see the ContactFlowId - // in the Amazon Connect console user interface, on the navigation menu go to - // Routing, Contact Flows. Choose the flow. On the flow page, under the name - // of the flow, choose Show additional flow information. The ContactFlowId is - // the last part of the ARN, shown here in bold: + // in the Amazon Connect admin website, on the navigation menu go to Routing, + // Contact Flows. Choose the flow. On the flow page, under the name of the flow, + // choose Show additional flow information. The ContactFlowId is the last part + // of the ARN, shown here in bold: // // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx // @@ -54922,10 +61923,10 @@ ClientToken *string `type:"string" idempotencyToken:"true"` // The identifier of the flow for initiating the tasks. To see the ContactFlowId - // in the Amazon Connect console user interface, on the navigation menu go to - // Routing, Contact Flows. Choose the flow. On the flow page, under the name - // of the flow, choose Show additional flow information. The ContactFlowId is - // the last part of the ARN, shown here in bold: + // in the Amazon Connect admin website, on the navigation menu go to Routing, + // Contact Flows. Choose the flow. On the flow page, under the name of the flow, + // choose Show additional flow information. The ContactFlowId is the last part + // of the ARN, shown here in bold: // // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx ContactFlowId *string `type:"string"` @@ -54947,17 +61948,30 @@ // Name is a required field Name *string `type:"string" required:"true"` - // The identifier of the previous chat, voice, or task contact. + // The identifier of the previous chat, voice, or task contact. Any updates + // to user-defined attributes to task contacts linked using the same PreviousContactID + // will affect every contact in the chain. There can be a maximum of 12 linked + // task contacts in a chain. PreviousContactId *string `min:"1" type:"string"` - // The identifier for the quick connect. + // The identifier for the quick connect. Tasks that are created by using QuickConnectId + // will use the flow that is defined on agent or queue quick connect. For more + // information about quick connects, see Create quick connects (https://docs.aws.amazon.com/connect/latest/adminguide/quick-connects.html). QuickConnectId *string `type:"string"` // A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + // Tasks can have the following reference types at the time of creation: URL + // | NUMBER | STRING | DATE | EMAIL. ATTACHMENT is not a supported reference + // type during task creation. References map[string]*Reference `type:"map"` // The contactId that is related (https://docs.aws.amazon.com/connect/latest/adminguide/tasks.html#linked-tasks) - // to this contact. + // to this contact. Linking tasks together by using RelatedContactID copies + // over contact attributes from the related task contact to the new task contact. + // All updates to user-defined attributes in the new task contact are limited + // to the individual contact ID, unlike what happens when tasks are linked by + // using PreviousContactID. There are no limits to the number of contacts that + // can be linked by using RelatedContactId. RelatedContactId *string `min:"1" type:"string"` // The timestamp, in Unix Epoch seconds format, at which to start running the @@ -54965,7 +61979,9 @@ // up to 6 days in future. ScheduledTime *time.Time `type:"timestamp"` - // A unique identifier for the task template. + // A unique identifier for the task template. For more information about task + // templates, see Create task templates (https://docs.aws.amazon.com/connect/latest/adminguide/task-templates.html) + // in the Amazon Connect Administrator Guide. TaskTemplateId *string `min:"1" type:"string"` } @@ -55128,6 +62144,242 @@ return s } +type StartWebRTCContactInput struct { + _ struct{} `type:"structure"` + + // Information about the video sharing capabilities of the participants (customer, + // agent). + AllowedCapabilities *AllowedCapabilities `type:"structure"` + + // A custom key-value pair using an attribute map. The attributes are standard + // Amazon Connect attributes, and can be accessed in flows just like any other + // contact attributes. + // + // There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. + // Attribute keys can include only alphanumeric, -, and _ characters. + Attributes map[string]*string `type:"map"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + // + // The token is valid for 7 days after creation. If a contact is already started, + // the contact ID is returned. + ClientToken *string `type:"string" idempotencyToken:"true"` + + // The identifier of the flow for the call. To see the ContactFlowId in the + // Amazon Connect admin website, on the navigation menu go to Routing, Contact + // Flows. Choose the flow. On the flow page, under the name of the flow, choose + // Show additional flow information. The ContactFlowId is the last part of the + // ARN, shown here in bold: + // + // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx + // + // ContactFlowId is a required field + ContactFlowId *string `type:"string" required:"true"` + + // A description of the task that is shown to an agent in the Contact Control + // Panel (CCP). + Description *string `type:"string"` + + // The identifier of the Amazon Connect instance. You can find the instance + // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. + // + // InstanceId is a required field + InstanceId *string `min:"1" type:"string" required:"true"` + + // The customer's details. + // + // ParticipantDetails is a required field + ParticipantDetails *ParticipantDetails `type:"structure" required:"true"` + + // A formatted URL that is shown to an agent in the Contact Control Panel (CCP). + // Tasks can have the following reference types at the time of creation: URL + // | NUMBER | STRING | DATE | EMAIL. ATTACHMENT is not a supported reference + // type during task creation. + References map[string]*Reference `type:"map"` + + // The unique identifier for an Amazon Connect contact. This identifier is related + // to the contact starting. + RelatedContactId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartWebRTCContactInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartWebRTCContactInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartWebRTCContactInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartWebRTCContactInput"} + if s.ContactFlowId == nil { + invalidParams.Add(request.NewErrParamRequired("ContactFlowId")) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.ParticipantDetails == nil { + invalidParams.Add(request.NewErrParamRequired("ParticipantDetails")) + } + if s.RelatedContactId != nil && len(*s.RelatedContactId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RelatedContactId", 1)) + } + if s.ParticipantDetails != nil { + if err := s.ParticipantDetails.Validate(); err != nil { + invalidParams.AddNested("ParticipantDetails", err.(request.ErrInvalidParams)) + } + } + if s.References != nil { + for i, v := range s.References { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "References", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowedCapabilities sets the AllowedCapabilities field's value. +func (s *StartWebRTCContactInput) SetAllowedCapabilities(v *AllowedCapabilities) *StartWebRTCContactInput { + s.AllowedCapabilities = v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *StartWebRTCContactInput) SetAttributes(v map[string]*string) *StartWebRTCContactInput { + s.Attributes = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartWebRTCContactInput) SetClientToken(v string) *StartWebRTCContactInput { + s.ClientToken = &v + return s +} + +// SetContactFlowId sets the ContactFlowId field's value. +func (s *StartWebRTCContactInput) SetContactFlowId(v string) *StartWebRTCContactInput { + s.ContactFlowId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *StartWebRTCContactInput) SetDescription(v string) *StartWebRTCContactInput { + s.Description = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *StartWebRTCContactInput) SetInstanceId(v string) *StartWebRTCContactInput { + s.InstanceId = &v + return s +} + +// SetParticipantDetails sets the ParticipantDetails field's value. +func (s *StartWebRTCContactInput) SetParticipantDetails(v *ParticipantDetails) *StartWebRTCContactInput { + s.ParticipantDetails = v + return s +} + +// SetReferences sets the References field's value. +func (s *StartWebRTCContactInput) SetReferences(v map[string]*Reference) *StartWebRTCContactInput { + s.References = v + return s +} + +// SetRelatedContactId sets the RelatedContactId field's value. +func (s *StartWebRTCContactInput) SetRelatedContactId(v string) *StartWebRTCContactInput { + s.RelatedContactId = &v + return s +} + +type StartWebRTCContactOutput struct { + _ struct{} `type:"structure"` + + // Information required for the client application (mobile application or website) + // to connect to the call. + ConnectionData *ConnectionData `type:"structure"` + + // The identifier of the contact in this instance of Amazon Connect. + ContactId *string `min:"1" type:"string"` + + // The identifier for a contact participant. The ParticipantId for a contact + // participant is the same throughout the contact lifecycle. + ParticipantId *string `min:"1" type:"string"` + + // The token used by the contact participant to call the CreateParticipantConnection + // (https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html) + // API. The participant token is valid for the lifetime of a contact participant. + ParticipantToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartWebRTCContactOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartWebRTCContactOutput) GoString() string { + return s.String() +} + +// SetConnectionData sets the ConnectionData field's value. +func (s *StartWebRTCContactOutput) SetConnectionData(v *ConnectionData) *StartWebRTCContactOutput { + s.ConnectionData = v + return s +} + +// SetContactId sets the ContactId field's value. +func (s *StartWebRTCContactOutput) SetContactId(v string) *StartWebRTCContactOutput { + s.ContactId = &v + return s +} + +// SetParticipantId sets the ParticipantId field's value. +func (s *StartWebRTCContactOutput) SetParticipantId(v string) *StartWebRTCContactOutput { + s.ParticipantId = &v + return s +} + +// SetParticipantToken sets the ParticipantToken field's value. +func (s *StartWebRTCContactOutput) SetParticipantToken(v string) *StartWebRTCContactOutput { + s.ParticipantToken = &v + return s +} + type StopContactInput struct { _ struct{} `type:"structure"` @@ -55136,6 +62388,10 @@ // ContactId is a required field ContactId *string `min:"1" type:"string" required:"true"` + // The reason a contact can be disconnected. Only Amazon Connect outbound campaigns + // can provide this field. + DisconnectReason *DisconnectReason `type:"structure"` + // The identifier of the Amazon Connect instance. You can find the instance // ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) // in the Amazon Resource Name (ARN) of the instance. @@ -55190,6 +62446,12 @@ return s } +// SetDisconnectReason sets the DisconnectReason field's value. +func (s *StopContactInput) SetDisconnectReason(v *DisconnectReason) *StopContactInput { + s.DisconnectReason = v + return s +} + // SetInstanceId sets the InstanceId field's value. func (s *StopContactInput) SetInstanceId(v string) *StopContactInput { s.InstanceId = &v @@ -55656,6 +62918,48 @@ return s } +// Request for which contact was successfully created. +type SuccessfulRequest struct { + _ struct{} `type:"structure"` + + // The contactId of the contact that was created successfully. + ContactId *string `min:"1" type:"string"` + + // Request identifier provided in the API call in the ContactDataRequest to + // create a contact. + RequestIdentifier *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 SuccessfulRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SuccessfulRequest) GoString() string { + return s.String() +} + +// SetContactId sets the ContactId field's value. +func (s *SuccessfulRequest) SetContactId(v string) *SuccessfulRequest { + s.ContactId = &v + return s +} + +// SetRequestIdentifier sets the RequestIdentifier field's value. +func (s *SuccessfulRequest) SetRequestIdentifier(v string) *SuccessfulRequest { + s.RequestIdentifier = &v + return s +} + type SuspendContactRecordingInput struct { _ struct{} `type:"structure"` @@ -56811,7 +64115,7 @@ // the DeleteTrafficDistributionGroup API. The default traffic distribution // group is deleted as part of the process for deleting a replica. // - // You can change the SignInConfig distribution only for a default TrafficDistributionGroup + // The SignInConfig distribution is available only on a default TrafficDistributionGroup // (see the IsDefault parameter in the TrafficDistributionGroup (https://docs.aws.amazon.com/connect/latest/APIReference/API_TrafficDistributionGroup.html) // data type). If you call UpdateTrafficDistribution with a modified SignInConfig // and a non-default TrafficDistributionGroup, an InvalidRequestException is @@ -56840,8 +64144,7 @@ // * DELETION_FAILED means the previous DeleteTrafficDistributionGroup (https://docs.aws.amazon.com/connect/latest/APIReference/API_DeleteTrafficDistributionGroup.html) // operation has failed. // - // * UPDATE_IN_PROGRESS means the previous UpdateTrafficDistributionGroup - // (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdateTrafficDistributionGroup.html) + // * UPDATE_IN_PROGRESS means the previous UpdateTrafficDistribution (https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdateTrafficDistribution.html) // operation is still in progress and has not yet completed. Status *string `type:"string" enum:"TrafficDistributionGroupStatus"` @@ -57683,8 +64986,10 @@ // ContactFlowId is a required field ContactFlowId *string `location:"uri" locationName:"ContactFlowId" type:"string" required:"true"` - // The JSON string that represents flow's content. For an example, see Example - // contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // The JSON string that represents the content of the flow. For an example, + // see Example flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // + // Length Constraints: Minimum length of 1. Maximum length of 256000. // // Content is a required field Content *string `type:"string" required:"true"` @@ -57906,7 +65211,8 @@ // ContactFlowModuleId is a required field ContactFlowModuleId *string `location:"uri" locationName:"ContactFlowModuleId" min:"1" type:"string" required:"true"` - // The content of the flow module. + // The JSON string that represents the content of the flow. For an example, + // see Example flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). // // Content is a required field Content *string `min:"1" type:"string" required:"true"` @@ -59236,16 +66542,21 @@ // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). ClientToken *string `type:"string" idempotencyToken:"true"` + // The identifier of the Amazon Connect instance that phone numbers are claimed + // to. You can find the instance ID (https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html) + // in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId + // or TargetArn. + InstanceId *string `min:"1" type:"string"` + // A unique identifier for the phone number. // // PhoneNumberId is a required field PhoneNumberId *string `location:"uri" locationName:"PhoneNumberId" type:"string" required:"true"` // The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution - // groups that phone numbers are claimed to. - // - // TargetArn is a required field - TargetArn *string `type:"string" required:"true"` + // groups that phone number inbound traffic is routed through. You must enter + // InstanceId or TargetArn. + TargetArn *string `type:"string"` } // String returns the string representation. @@ -59269,15 +66580,15 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePhoneNumberInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePhoneNumberInput"} + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } if s.PhoneNumberId == nil { invalidParams.Add(request.NewErrParamRequired("PhoneNumberId")) } if s.PhoneNumberId != nil && len(*s.PhoneNumberId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PhoneNumberId", 1)) } - if s.TargetArn == nil { - invalidParams.Add(request.NewErrParamRequired("TargetArn")) - } if invalidParams.Len() > 0 { return invalidParams @@ -59291,6 +66602,12 @@ return s } +// SetInstanceId sets the InstanceId field's value. +func (s *UpdatePhoneNumberInput) SetInstanceId(v string) *UpdatePhoneNumberInput { + s.InstanceId = &v + return s +} + // SetPhoneNumberId sets the PhoneNumberId field's value. func (s *UpdatePhoneNumberInput) SetPhoneNumberId(v string) *UpdatePhoneNumberInput { s.PhoneNumberId = &v @@ -59303,6 +66620,98 @@ return s } +type UpdatePhoneNumberMetadataInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `type:"string" idempotencyToken:"true"` + + // The description of the phone number. + PhoneNumberDescription *string `type:"string"` + + // The Amazon Resource Name (ARN) or resource ID of the phone number. + // + // PhoneNumberId is a required field + PhoneNumberId *string `location:"uri" locationName:"PhoneNumberId" 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 UpdatePhoneNumberMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePhoneNumberMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePhoneNumberMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePhoneNumberMetadataInput"} + if s.PhoneNumberId == nil { + invalidParams.Add(request.NewErrParamRequired("PhoneNumberId")) + } + if s.PhoneNumberId != nil && len(*s.PhoneNumberId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PhoneNumberId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdatePhoneNumberMetadataInput) SetClientToken(v string) *UpdatePhoneNumberMetadataInput { + s.ClientToken = &v + return s +} + +// SetPhoneNumberDescription sets the PhoneNumberDescription field's value. +func (s *UpdatePhoneNumberMetadataInput) SetPhoneNumberDescription(v string) *UpdatePhoneNumberMetadataInput { + s.PhoneNumberDescription = &v + return s +} + +// SetPhoneNumberId sets the PhoneNumberId field's value. +func (s *UpdatePhoneNumberMetadataInput) SetPhoneNumberId(v string) *UpdatePhoneNumberMetadataInput { + s.PhoneNumberId = &v + return s +} + +type UpdatePhoneNumberMetadataOutput 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 UpdatePhoneNumberMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePhoneNumberMetadataOutput) GoString() string { + return s.String() +} + type UpdatePhoneNumberOutput struct { _ struct{} `type:"structure"` @@ -59364,7 +66773,9 @@ // PromptId is a required field PromptId *string `location:"uri" locationName:"PromptId" min:"1" type:"string" required:"true"` - // The URI for the S3 bucket where the prompt is stored. + // The URI for the S3 bucket where the prompt is stored. You can provide S3 + // pre-signed URLs returned by the GetPromptFile (https://docs.aws.amazon.com/connect/latest/APIReference/API_GetPromptFile.html) + // API instead of providing S3 URIs. S3Uri *string `min:"1" type:"string"` } @@ -60961,6 +68372,11 @@ // in Amazon Connect. AllowedAccessControlTags map[string]*string `type:"map"` + // This API is in preview release for Amazon Connect and is subject to change. + // + // A list of the third-party application's metadata. + Applications []*Application `type:"list"` + // The description of the security profile. Description *string `type:"string"` @@ -61018,6 +68434,16 @@ if s.SecurityProfileId != nil && len(*s.SecurityProfileId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecurityProfileId", 1)) } + if s.Applications != nil { + for i, v := range s.Applications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Applications", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -61031,6 +68457,12 @@ return s } +// SetApplications sets the Applications field's value. +func (s *UpdateSecurityProfileInput) SetApplications(v []*Application) *UpdateSecurityProfileInput { + s.Applications = v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateSecurityProfileInput) SetDescription(v string) *UpdateSecurityProfileInput { s.Description = &v @@ -61394,7 +68826,8 @@ // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` - // The distribution of allowing signing in to the instance and its replica(s). + // The distribution that determines which Amazon Web Services Regions should + // be used to sign in agents in to both the instance and its replica(s). SignInConfig *SignInConfig `type:"structure"` // The distribution of traffic between the instance and its replica(s). @@ -62580,6 +70013,12 @@ // Information about the user identity. IdentityInfo *UserIdentityInfo `type:"structure"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // Information about the phone configuration for the user. PhoneConfig *UserPhoneConfig `type:"structure"` @@ -62644,6 +70083,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *User) SetLastModifiedRegion(v string) *User { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *User) SetLastModifiedTime(v time.Time) *User { + s.LastModifiedTime = &v + return s +} + // SetPhoneConfig sets the PhoneConfig field's value. func (s *User) SetPhoneConfig(v *UserPhoneConfig) *User { s.PhoneConfig = v @@ -63480,6 +70931,12 @@ // The identifier of the user account. Id *string `type:"string"` + // The Amazon Web Services Region where this resource was last modified. + LastModifiedRegion *string `type:"string"` + + // The timestamp when this resource was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + // The Amazon Connect user name of the user account. Username *string `min:"1" type:"string"` } @@ -63514,6 +70971,18 @@ return s } +// SetLastModifiedRegion sets the LastModifiedRegion field's value. +func (s *UserSummary) SetLastModifiedRegion(v string) *UserSummary { + s.LastModifiedRegion = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *UserSummary) SetLastModifiedTime(v time.Time) *UserSummary { + s.LastModifiedTime = &v + return s +} + // SetUsername sets the Username field's value. func (s *UserSummary) SetUsername(v string) *UserSummary { s.Username = &v @@ -64300,6 +71769,26 @@ } const ( + // ArtifactStatusApproved is a ArtifactStatus enum value + ArtifactStatusApproved = "APPROVED" + + // ArtifactStatusRejected is a ArtifactStatus enum value + ArtifactStatusRejected = "REJECTED" + + // ArtifactStatusInProgress is a ArtifactStatus enum value + ArtifactStatusInProgress = "IN_PROGRESS" +) + +// ArtifactStatus_Values returns all elements of the ArtifactStatus enum +func ArtifactStatus_Values() []string { + return []string{ + ArtifactStatusApproved, + ArtifactStatusRejected, + ArtifactStatusInProgress, + } +} + +const ( // BehaviorTypeRouteCurrentChannelOnly is a BehaviorType enum value BehaviorTypeRouteCurrentChannelOnly = "ROUTE_CURRENT_CHANNEL_ONLY" @@ -64336,6 +71825,26 @@ } const ( + // ChatEventTypeDisconnect is a ChatEventType enum value + ChatEventTypeDisconnect = "DISCONNECT" + + // ChatEventTypeMessage is a ChatEventType enum value + ChatEventTypeMessage = "MESSAGE" + + // ChatEventTypeEvent is a ChatEventType enum value + ChatEventTypeEvent = "EVENT" +) + +// ChatEventType_Values returns all elements of the ChatEventType enum +func ChatEventType_Values() []string { + return []string{ + ChatEventTypeDisconnect, + ChatEventTypeMessage, + ChatEventTypeEvent, + } +} + +const ( // ComparisonLt is a Comparison enum value ComparisonLt = "LT" ) @@ -64621,6 +72130,26 @@ } const ( + // EndpointTypeTelephoneNumber is a EndpointType enum value + EndpointTypeTelephoneNumber = "TELEPHONE_NUMBER" + + // EndpointTypeVoip is a EndpointType enum value + EndpointTypeVoip = "VOIP" + + // EndpointTypeContactFlow is a EndpointType enum value + EndpointTypeContactFlow = "CONTACT_FLOW" +) + +// EndpointType_Values returns all elements of the EndpointType enum +func EndpointType_Values() []string { + return []string{ + EndpointTypeTelephoneNumber, + EndpointTypeVoip, + EndpointTypeContactFlow, + } +} + +const ( // EvaluationFormQuestionTypeText is a EvaluationFormQuestionType enum value EvaluationFormQuestionTypeText = "TEXT" @@ -64727,6 +72256,9 @@ // EventSourceNameOnRealTimeCallAnalysisAvailable is a EventSourceName enum value EventSourceNameOnRealTimeCallAnalysisAvailable = "OnRealTimeCallAnalysisAvailable" + // EventSourceNameOnRealTimeChatAnalysisAvailable is a EventSourceName enum value + EventSourceNameOnRealTimeChatAnalysisAvailable = "OnRealTimeChatAnalysisAvailable" + // EventSourceNameOnPostChatAnalysisAvailable is a EventSourceName enum value EventSourceNameOnPostChatAnalysisAvailable = "OnPostChatAnalysisAvailable" @@ -64751,6 +72283,7 @@ return []string{ EventSourceNameOnPostCallAnalysisAvailable, EventSourceNameOnRealTimeCallAnalysisAvailable, + EventSourceNameOnRealTimeChatAnalysisAvailable, EventSourceNameOnPostChatAnalysisAvailable, EventSourceNameOnZendeskTicketCreate, EventSourceNameOnZendeskTicketStatusUpdate, @@ -64761,6 +72294,66 @@ } const ( + // FailureReasonCodeInvalidAttributeKey is a FailureReasonCode enum value + FailureReasonCodeInvalidAttributeKey = "INVALID_ATTRIBUTE_KEY" + + // FailureReasonCodeInvalidCustomerEndpoint is a FailureReasonCode enum value + FailureReasonCodeInvalidCustomerEndpoint = "INVALID_CUSTOMER_ENDPOINT" + + // FailureReasonCodeInvalidSystemEndpoint is a FailureReasonCode enum value + FailureReasonCodeInvalidSystemEndpoint = "INVALID_SYSTEM_ENDPOINT" + + // FailureReasonCodeInvalidQueue is a FailureReasonCode enum value + FailureReasonCodeInvalidQueue = "INVALID_QUEUE" + + // FailureReasonCodeMissingCampaign is a FailureReasonCode enum value + FailureReasonCodeMissingCampaign = "MISSING_CAMPAIGN" + + // FailureReasonCodeMissingCustomerEndpoint is a FailureReasonCode enum value + FailureReasonCodeMissingCustomerEndpoint = "MISSING_CUSTOMER_ENDPOINT" + + // FailureReasonCodeMissingQueueIdAndSystemEndpoint is a FailureReasonCode enum value + FailureReasonCodeMissingQueueIdAndSystemEndpoint = "MISSING_QUEUE_ID_AND_SYSTEM_ENDPOINT" + + // FailureReasonCodeRequestThrottled is a FailureReasonCode enum value + FailureReasonCodeRequestThrottled = "REQUEST_THROTTLED" + + // FailureReasonCodeIdempotencyException is a FailureReasonCode enum value + FailureReasonCodeIdempotencyException = "IDEMPOTENCY_EXCEPTION" + + // FailureReasonCodeInternalError is a FailureReasonCode enum value + FailureReasonCodeInternalError = "INTERNAL_ERROR" +) + +// FailureReasonCode_Values returns all elements of the FailureReasonCode enum +func FailureReasonCode_Values() []string { + return []string{ + FailureReasonCodeInvalidAttributeKey, + FailureReasonCodeInvalidCustomerEndpoint, + FailureReasonCodeInvalidSystemEndpoint, + FailureReasonCodeInvalidQueue, + FailureReasonCodeMissingCampaign, + FailureReasonCodeMissingCustomerEndpoint, + FailureReasonCodeMissingQueueIdAndSystemEndpoint, + FailureReasonCodeRequestThrottled, + FailureReasonCodeIdempotencyException, + FailureReasonCodeInternalError, + } +} + +const ( + // FlowAssociationResourceTypeSmsPhoneNumber is a FlowAssociationResourceType enum value + FlowAssociationResourceTypeSmsPhoneNumber = "SMS_PHONE_NUMBER" +) + +// FlowAssociationResourceType_Values returns all elements of the FlowAssociationResourceType enum +func FlowAssociationResourceType_Values() []string { + return []string{ + FlowAssociationResourceTypeSmsPhoneNumber, + } +} + +const ( // GroupingQueue is a Grouping enum value GroupingQueue = "QUEUE" @@ -65073,8 +72666,17 @@ // IntegrationTypeWisdomKnowledgeBase is a IntegrationType enum value IntegrationTypeWisdomKnowledgeBase = "WISDOM_KNOWLEDGE_BASE" + // IntegrationTypeWisdomQuickResponses is a IntegrationType enum value + IntegrationTypeWisdomQuickResponses = "WISDOM_QUICK_RESPONSES" + // IntegrationTypeCasesDomain is a IntegrationType enum value IntegrationTypeCasesDomain = "CASES_DOMAIN" + + // IntegrationTypeApplication is a IntegrationType enum value + IntegrationTypeApplication = "APPLICATION" + + // IntegrationTypeFileScanner is a IntegrationType enum value + IntegrationTypeFileScanner = "FILE_SCANNER" ) // IntegrationType_Values returns all elements of the IntegrationType enum @@ -65085,7 +72687,42 @@ IntegrationTypePinpointApp, IntegrationTypeWisdomAssistant, IntegrationTypeWisdomKnowledgeBase, + IntegrationTypeWisdomQuickResponses, IntegrationTypeCasesDomain, + IntegrationTypeApplication, + IntegrationTypeFileScanner, + } +} + +const ( + // IntervalPeriodFifteenMin is a IntervalPeriod enum value + IntervalPeriodFifteenMin = "FIFTEEN_MIN" + + // IntervalPeriodThirtyMin is a IntervalPeriod enum value + IntervalPeriodThirtyMin = "THIRTY_MIN" + + // IntervalPeriodHour is a IntervalPeriod enum value + IntervalPeriodHour = "HOUR" + + // IntervalPeriodDay is a IntervalPeriod enum value + IntervalPeriodDay = "DAY" + + // IntervalPeriodWeek is a IntervalPeriod enum value + IntervalPeriodWeek = "WEEK" + + // IntervalPeriodTotal is a IntervalPeriod enum value + IntervalPeriodTotal = "TOTAL" +) + +// IntervalPeriod_Values returns all elements of the IntervalPeriod enum +func IntervalPeriod_Values() []string { + return []string{ + IntervalPeriodFifteenMin, + IntervalPeriodThirtyMin, + IntervalPeriodHour, + IntervalPeriodDay, + IntervalPeriodWeek, + IntervalPeriodTotal, } } @@ -65106,6 +72743,34 @@ } const ( + // ListFlowAssociationResourceTypeVoicePhoneNumber is a ListFlowAssociationResourceType enum value + ListFlowAssociationResourceTypeVoicePhoneNumber = "VOICE_PHONE_NUMBER" +) + +// ListFlowAssociationResourceType_Values returns all elements of the ListFlowAssociationResourceType enum +func ListFlowAssociationResourceType_Values() []string { + return []string{ + ListFlowAssociationResourceTypeVoicePhoneNumber, + } +} + +const ( + // MeetingFeatureStatusAvailable is a MeetingFeatureStatus enum value + MeetingFeatureStatusAvailable = "AVAILABLE" + + // MeetingFeatureStatusUnavailable is a MeetingFeatureStatus enum value + MeetingFeatureStatusUnavailable = "UNAVAILABLE" +) + +// MeetingFeatureStatus_Values returns all elements of the MeetingFeatureStatus enum +func MeetingFeatureStatus_Values() []string { + return []string{ + MeetingFeatureStatusAvailable, + MeetingFeatureStatusUnavailable, + } +} + +const ( // MonitorCapabilitySilentMonitor is a MonitorCapability enum value MonitorCapabilitySilentMonitor = "SILENT_MONITOR" @@ -66211,6 +73876,9 @@ // PhoneNumberTypeThirdPartyDid is a PhoneNumberType enum value PhoneNumberTypeThirdPartyDid = "THIRD_PARTY_DID" + + // PhoneNumberTypeShortCode is a PhoneNumberType enum value + PhoneNumberTypeShortCode = "SHORT_CODE" ) // PhoneNumberType_Values returns all elements of the PhoneNumberType enum @@ -66222,6 +73890,7 @@ PhoneNumberTypeShared, PhoneNumberTypeThirdPartyTf, PhoneNumberTypeThirdPartyDid, + PhoneNumberTypeShortCode, } } @@ -66346,6 +74015,106 @@ } const ( + // RealTimeContactAnalysisOutputTypeRaw is a RealTimeContactAnalysisOutputType enum value + RealTimeContactAnalysisOutputTypeRaw = "Raw" + + // RealTimeContactAnalysisOutputTypeRedacted is a RealTimeContactAnalysisOutputType enum value + RealTimeContactAnalysisOutputTypeRedacted = "Redacted" +) + +// RealTimeContactAnalysisOutputType_Values returns all elements of the RealTimeContactAnalysisOutputType enum +func RealTimeContactAnalysisOutputType_Values() []string { + return []string{ + RealTimeContactAnalysisOutputTypeRaw, + RealTimeContactAnalysisOutputTypeRedacted, + } +} + +const ( + // RealTimeContactAnalysisSegmentTypeTranscript is a RealTimeContactAnalysisSegmentType enum value + RealTimeContactAnalysisSegmentTypeTranscript = "Transcript" + + // RealTimeContactAnalysisSegmentTypeCategories is a RealTimeContactAnalysisSegmentType enum value + RealTimeContactAnalysisSegmentTypeCategories = "Categories" + + // RealTimeContactAnalysisSegmentTypeIssues is a RealTimeContactAnalysisSegmentType enum value + RealTimeContactAnalysisSegmentTypeIssues = "Issues" + + // RealTimeContactAnalysisSegmentTypeEvent is a RealTimeContactAnalysisSegmentType enum value + RealTimeContactAnalysisSegmentTypeEvent = "Event" + + // RealTimeContactAnalysisSegmentTypeAttachments is a RealTimeContactAnalysisSegmentType enum value + RealTimeContactAnalysisSegmentTypeAttachments = "Attachments" +) + +// RealTimeContactAnalysisSegmentType_Values returns all elements of the RealTimeContactAnalysisSegmentType enum +func RealTimeContactAnalysisSegmentType_Values() []string { + return []string{ + RealTimeContactAnalysisSegmentTypeTranscript, + RealTimeContactAnalysisSegmentTypeCategories, + RealTimeContactAnalysisSegmentTypeIssues, + RealTimeContactAnalysisSegmentTypeEvent, + RealTimeContactAnalysisSegmentTypeAttachments, + } +} + +const ( + // RealTimeContactAnalysisSentimentLabelPositive is a RealTimeContactAnalysisSentimentLabel enum value + RealTimeContactAnalysisSentimentLabelPositive = "POSITIVE" + + // RealTimeContactAnalysisSentimentLabelNegative is a RealTimeContactAnalysisSentimentLabel enum value + RealTimeContactAnalysisSentimentLabelNegative = "NEGATIVE" + + // RealTimeContactAnalysisSentimentLabelNeutral is a RealTimeContactAnalysisSentimentLabel enum value + RealTimeContactAnalysisSentimentLabelNeutral = "NEUTRAL" +) + +// RealTimeContactAnalysisSentimentLabel_Values returns all elements of the RealTimeContactAnalysisSentimentLabel enum +func RealTimeContactAnalysisSentimentLabel_Values() []string { + return []string{ + RealTimeContactAnalysisSentimentLabelPositive, + RealTimeContactAnalysisSentimentLabelNegative, + RealTimeContactAnalysisSentimentLabelNeutral, + } +} + +const ( + // RealTimeContactAnalysisStatusInProgress is a RealTimeContactAnalysisStatus enum value + RealTimeContactAnalysisStatusInProgress = "IN_PROGRESS" + + // RealTimeContactAnalysisStatusFailed is a RealTimeContactAnalysisStatus enum value + RealTimeContactAnalysisStatusFailed = "FAILED" + + // RealTimeContactAnalysisStatusCompleted is a RealTimeContactAnalysisStatus enum value + RealTimeContactAnalysisStatusCompleted = "COMPLETED" +) + +// RealTimeContactAnalysisStatus_Values returns all elements of the RealTimeContactAnalysisStatus enum +func RealTimeContactAnalysisStatus_Values() []string { + return []string{ + RealTimeContactAnalysisStatusInProgress, + RealTimeContactAnalysisStatusFailed, + RealTimeContactAnalysisStatusCompleted, + } +} + +const ( + // RealTimeContactAnalysisSupportedChannelVoice is a RealTimeContactAnalysisSupportedChannel enum value + RealTimeContactAnalysisSupportedChannelVoice = "VOICE" + + // RealTimeContactAnalysisSupportedChannelChat is a RealTimeContactAnalysisSupportedChannel enum value + RealTimeContactAnalysisSupportedChannelChat = "CHAT" +) + +// RealTimeContactAnalysisSupportedChannel_Values returns all elements of the RealTimeContactAnalysisSupportedChannel enum +func RealTimeContactAnalysisSupportedChannel_Values() []string { + return []string{ + RealTimeContactAnalysisSupportedChannelVoice, + RealTimeContactAnalysisSupportedChannelChat, + } +} + +const ( // ReferenceStatusApproved is a ReferenceStatus enum value ReferenceStatusApproved = "APPROVED" @@ -66430,6 +74199,9 @@ // ResourceTypeUser is a ResourceType enum value ResourceTypeUser = "USER" + + // ResourceTypePhoneNumber is a ResourceType enum value + ResourceTypePhoneNumber = "PHONE_NUMBER" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -66442,6 +74214,7 @@ ResourceTypeHierarchyLevel, ResourceTypeHierarchyGroup, ResourceTypeUser, + ResourceTypePhoneNumber, } } @@ -66757,6 +74530,18 @@ } } +const ( + // VideoCapabilitySend is a VideoCapability enum value + VideoCapabilitySend = "SEND" +) + +// VideoCapability_Values returns all elements of the VideoCapability enum +func VideoCapability_Values() []string { + return []string{ + VideoCapabilitySend, + } +} + const ( // ViewStatusPublished is a ViewStatus enum value ViewStatusPublished = "PUBLISHED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connect/connectiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/connect/connectiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connect/connectiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connect/connectiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ ActivateEvaluationFormWithContext(aws.Context, *connect.ActivateEvaluationFormInput, ...request.Option) (*connect.ActivateEvaluationFormOutput, error) ActivateEvaluationFormRequest(*connect.ActivateEvaluationFormInput) (*request.Request, *connect.ActivateEvaluationFormOutput) + AssociateAnalyticsDataSet(*connect.AssociateAnalyticsDataSetInput) (*connect.AssociateAnalyticsDataSetOutput, error) + AssociateAnalyticsDataSetWithContext(aws.Context, *connect.AssociateAnalyticsDataSetInput, ...request.Option) (*connect.AssociateAnalyticsDataSetOutput, error) + AssociateAnalyticsDataSetRequest(*connect.AssociateAnalyticsDataSetInput) (*request.Request, *connect.AssociateAnalyticsDataSetOutput) + AssociateApprovedOrigin(*connect.AssociateApprovedOriginInput) (*connect.AssociateApprovedOriginOutput, error) AssociateApprovedOriginWithContext(aws.Context, *connect.AssociateApprovedOriginInput, ...request.Option) (*connect.AssociateApprovedOriginOutput, error) AssociateApprovedOriginRequest(*connect.AssociateApprovedOriginInput) (*request.Request, *connect.AssociateApprovedOriginOutput) @@ -76,6 +80,10 @@ AssociateDefaultVocabularyWithContext(aws.Context, *connect.AssociateDefaultVocabularyInput, ...request.Option) (*connect.AssociateDefaultVocabularyOutput, error) AssociateDefaultVocabularyRequest(*connect.AssociateDefaultVocabularyInput) (*request.Request, *connect.AssociateDefaultVocabularyOutput) + AssociateFlow(*connect.AssociateFlowInput) (*connect.AssociateFlowOutput, error) + AssociateFlowWithContext(aws.Context, *connect.AssociateFlowInput, ...request.Option) (*connect.AssociateFlowOutput, error) + AssociateFlowRequest(*connect.AssociateFlowInput) (*request.Request, *connect.AssociateFlowOutput) + AssociateInstanceStorageConfig(*connect.AssociateInstanceStorageConfigInput) (*connect.AssociateInstanceStorageConfigOutput, error) AssociateInstanceStorageConfigWithContext(aws.Context, *connect.AssociateInstanceStorageConfigInput, ...request.Option) (*connect.AssociateInstanceStorageConfigOutput, error) AssociateInstanceStorageConfigRequest(*connect.AssociateInstanceStorageConfigInput) (*request.Request, *connect.AssociateInstanceStorageConfigOutput) @@ -108,6 +116,22 @@ AssociateTrafficDistributionGroupUserWithContext(aws.Context, *connect.AssociateTrafficDistributionGroupUserInput, ...request.Option) (*connect.AssociateTrafficDistributionGroupUserOutput, error) AssociateTrafficDistributionGroupUserRequest(*connect.AssociateTrafficDistributionGroupUserInput) (*request.Request, *connect.AssociateTrafficDistributionGroupUserOutput) + BatchAssociateAnalyticsDataSet(*connect.BatchAssociateAnalyticsDataSetInput) (*connect.BatchAssociateAnalyticsDataSetOutput, error) + BatchAssociateAnalyticsDataSetWithContext(aws.Context, *connect.BatchAssociateAnalyticsDataSetInput, ...request.Option) (*connect.BatchAssociateAnalyticsDataSetOutput, error) + BatchAssociateAnalyticsDataSetRequest(*connect.BatchAssociateAnalyticsDataSetInput) (*request.Request, *connect.BatchAssociateAnalyticsDataSetOutput) + + BatchDisassociateAnalyticsDataSet(*connect.BatchDisassociateAnalyticsDataSetInput) (*connect.BatchDisassociateAnalyticsDataSetOutput, error) + BatchDisassociateAnalyticsDataSetWithContext(aws.Context, *connect.BatchDisassociateAnalyticsDataSetInput, ...request.Option) (*connect.BatchDisassociateAnalyticsDataSetOutput, error) + BatchDisassociateAnalyticsDataSetRequest(*connect.BatchDisassociateAnalyticsDataSetInput) (*request.Request, *connect.BatchDisassociateAnalyticsDataSetOutput) + + BatchGetFlowAssociation(*connect.BatchGetFlowAssociationInput) (*connect.BatchGetFlowAssociationOutput, error) + BatchGetFlowAssociationWithContext(aws.Context, *connect.BatchGetFlowAssociationInput, ...request.Option) (*connect.BatchGetFlowAssociationOutput, error) + BatchGetFlowAssociationRequest(*connect.BatchGetFlowAssociationInput) (*request.Request, *connect.BatchGetFlowAssociationOutput) + + BatchPutContact(*connect.BatchPutContactInput) (*connect.BatchPutContactOutput, error) + BatchPutContactWithContext(aws.Context, *connect.BatchPutContactInput, ...request.Option) (*connect.BatchPutContactOutput, error) + BatchPutContactRequest(*connect.BatchPutContactInput) (*request.Request, *connect.BatchPutContactOutput) + ClaimPhoneNumber(*connect.ClaimPhoneNumberInput) (*connect.ClaimPhoneNumberOutput, error) ClaimPhoneNumberWithContext(aws.Context, *connect.ClaimPhoneNumberInput, ...request.Option) (*connect.ClaimPhoneNumberOutput, error) ClaimPhoneNumberRequest(*connect.ClaimPhoneNumberInput) (*request.Request, *connect.ClaimPhoneNumberOutput) @@ -144,6 +168,10 @@ CreateParticipantWithContext(aws.Context, *connect.CreateParticipantInput, ...request.Option) (*connect.CreateParticipantOutput, error) CreateParticipantRequest(*connect.CreateParticipantInput) (*request.Request, *connect.CreateParticipantOutput) + CreatePersistentContactAssociation(*connect.CreatePersistentContactAssociationInput) (*connect.CreatePersistentContactAssociationOutput, error) + CreatePersistentContactAssociationWithContext(aws.Context, *connect.CreatePersistentContactAssociationInput, ...request.Option) (*connect.CreatePersistentContactAssociationOutput, error) + CreatePersistentContactAssociationRequest(*connect.CreatePersistentContactAssociationInput) (*request.Request, *connect.CreatePersistentContactAssociationOutput) + CreatePrompt(*connect.CreatePromptInput) (*connect.CreatePromptOutput, error) CreatePromptWithContext(aws.Context, *connect.CreatePromptInput, ...request.Option) (*connect.CreatePromptOutput, error) CreatePromptRequest(*connect.CreatePromptInput) (*request.Request, *connect.CreatePromptOutput) @@ -380,6 +408,10 @@ DescribeVocabularyWithContext(aws.Context, *connect.DescribeVocabularyInput, ...request.Option) (*connect.DescribeVocabularyOutput, error) DescribeVocabularyRequest(*connect.DescribeVocabularyInput) (*request.Request, *connect.DescribeVocabularyOutput) + DisassociateAnalyticsDataSet(*connect.DisassociateAnalyticsDataSetInput) (*connect.DisassociateAnalyticsDataSetOutput, error) + DisassociateAnalyticsDataSetWithContext(aws.Context, *connect.DisassociateAnalyticsDataSetInput, ...request.Option) (*connect.DisassociateAnalyticsDataSetOutput, error) + DisassociateAnalyticsDataSetRequest(*connect.DisassociateAnalyticsDataSetInput) (*request.Request, *connect.DisassociateAnalyticsDataSetOutput) + DisassociateApprovedOrigin(*connect.DisassociateApprovedOriginInput) (*connect.DisassociateApprovedOriginOutput, error) DisassociateApprovedOriginWithContext(aws.Context, *connect.DisassociateApprovedOriginInput, ...request.Option) (*connect.DisassociateApprovedOriginOutput, error) DisassociateApprovedOriginRequest(*connect.DisassociateApprovedOriginInput) (*request.Request, *connect.DisassociateApprovedOriginOutput) @@ -388,6 +420,10 @@ DisassociateBotWithContext(aws.Context, *connect.DisassociateBotInput, ...request.Option) (*connect.DisassociateBotOutput, error) DisassociateBotRequest(*connect.DisassociateBotInput) (*request.Request, *connect.DisassociateBotOutput) + DisassociateFlow(*connect.DisassociateFlowInput) (*connect.DisassociateFlowOutput, error) + DisassociateFlowWithContext(aws.Context, *connect.DisassociateFlowInput, ...request.Option) (*connect.DisassociateFlowOutput, error) + DisassociateFlowRequest(*connect.DisassociateFlowInput) (*request.Request, *connect.DisassociateFlowOutput) + DisassociateInstanceStorageConfig(*connect.DisassociateInstanceStorageConfigInput) (*connect.DisassociateInstanceStorageConfigOutput, error) DisassociateInstanceStorageConfigWithContext(aws.Context, *connect.DisassociateInstanceStorageConfigInput, ...request.Option) (*connect.DisassociateInstanceStorageConfigOutput, error) DisassociateInstanceStorageConfigRequest(*connect.DisassociateInstanceStorageConfigInput) (*request.Request, *connect.DisassociateInstanceStorageConfigOutput) @@ -446,6 +482,10 @@ GetFederationTokenWithContext(aws.Context, *connect.GetFederationTokenInput, ...request.Option) (*connect.GetFederationTokenOutput, error) GetFederationTokenRequest(*connect.GetFederationTokenInput) (*request.Request, *connect.GetFederationTokenOutput) + GetFlowAssociation(*connect.GetFlowAssociationInput) (*connect.GetFlowAssociationOutput, error) + GetFlowAssociationWithContext(aws.Context, *connect.GetFlowAssociationInput, ...request.Option) (*connect.GetFlowAssociationOutput, error) + GetFlowAssociationRequest(*connect.GetFlowAssociationInput) (*request.Request, *connect.GetFlowAssociationOutput) + GetMetricData(*connect.GetMetricDataInput) (*connect.GetMetricDataOutput, error) GetMetricDataWithContext(aws.Context, *connect.GetMetricDataInput, ...request.Option) (*connect.GetMetricDataOutput, error) GetMetricDataRequest(*connect.GetMetricDataInput) (*request.Request, *connect.GetMetricDataOutput) @@ -472,6 +512,10 @@ GetTrafficDistributionWithContext(aws.Context, *connect.GetTrafficDistributionInput, ...request.Option) (*connect.GetTrafficDistributionOutput, error) GetTrafficDistributionRequest(*connect.GetTrafficDistributionInput) (*request.Request, *connect.GetTrafficDistributionOutput) + ImportPhoneNumber(*connect.ImportPhoneNumberInput) (*connect.ImportPhoneNumberOutput, error) + ImportPhoneNumberWithContext(aws.Context, *connect.ImportPhoneNumberInput, ...request.Option) (*connect.ImportPhoneNumberOutput, error) + ImportPhoneNumberRequest(*connect.ImportPhoneNumberInput) (*request.Request, *connect.ImportPhoneNumberOutput) + ListAgentStatuses(*connect.ListAgentStatusesInput) (*connect.ListAgentStatusesOutput, error) ListAgentStatusesWithContext(aws.Context, *connect.ListAgentStatusesInput, ...request.Option) (*connect.ListAgentStatusesOutput, error) ListAgentStatusesRequest(*connect.ListAgentStatusesInput) (*request.Request, *connect.ListAgentStatusesOutput) @@ -479,6 +523,10 @@ ListAgentStatusesPages(*connect.ListAgentStatusesInput, func(*connect.ListAgentStatusesOutput, bool) bool) error ListAgentStatusesPagesWithContext(aws.Context, *connect.ListAgentStatusesInput, func(*connect.ListAgentStatusesOutput, bool) bool, ...request.Option) error + ListAnalyticsDataAssociations(*connect.ListAnalyticsDataAssociationsInput) (*connect.ListAnalyticsDataAssociationsOutput, error) + ListAnalyticsDataAssociationsWithContext(aws.Context, *connect.ListAnalyticsDataAssociationsInput, ...request.Option) (*connect.ListAnalyticsDataAssociationsOutput, error) + ListAnalyticsDataAssociationsRequest(*connect.ListAnalyticsDataAssociationsInput) (*request.Request, *connect.ListAnalyticsDataAssociationsOutput) + ListApprovedOrigins(*connect.ListApprovedOriginsInput) (*connect.ListApprovedOriginsOutput, error) ListApprovedOriginsWithContext(aws.Context, *connect.ListApprovedOriginsInput, ...request.Option) (*connect.ListApprovedOriginsOutput, error) ListApprovedOriginsRequest(*connect.ListApprovedOriginsInput) (*request.Request, *connect.ListApprovedOriginsOutput) @@ -542,6 +590,13 @@ ListEvaluationFormsPages(*connect.ListEvaluationFormsInput, func(*connect.ListEvaluationFormsOutput, bool) bool) error ListEvaluationFormsPagesWithContext(aws.Context, *connect.ListEvaluationFormsInput, func(*connect.ListEvaluationFormsOutput, bool) bool, ...request.Option) error + ListFlowAssociations(*connect.ListFlowAssociationsInput) (*connect.ListFlowAssociationsOutput, error) + ListFlowAssociationsWithContext(aws.Context, *connect.ListFlowAssociationsInput, ...request.Option) (*connect.ListFlowAssociationsOutput, error) + ListFlowAssociationsRequest(*connect.ListFlowAssociationsInput) (*request.Request, *connect.ListFlowAssociationsOutput) + + ListFlowAssociationsPages(*connect.ListFlowAssociationsInput, func(*connect.ListFlowAssociationsOutput, bool) bool) error + ListFlowAssociationsPagesWithContext(aws.Context, *connect.ListFlowAssociationsInput, func(*connect.ListFlowAssociationsOutput, bool) bool, ...request.Option) error + ListHoursOfOperations(*connect.ListHoursOfOperationsInput) (*connect.ListHoursOfOperationsOutput, error) ListHoursOfOperationsWithContext(aws.Context, *connect.ListHoursOfOperationsInput, ...request.Option) (*connect.ListHoursOfOperationsOutput, error) ListHoursOfOperationsRequest(*connect.ListHoursOfOperationsInput) (*request.Request, *connect.ListHoursOfOperationsOutput) @@ -633,6 +688,13 @@ ListQuickConnectsPages(*connect.ListQuickConnectsInput, func(*connect.ListQuickConnectsOutput, bool) bool) error ListQuickConnectsPagesWithContext(aws.Context, *connect.ListQuickConnectsInput, func(*connect.ListQuickConnectsOutput, bool) bool, ...request.Option) error + ListRealtimeContactAnalysisSegmentsV2(*connect.ListRealtimeContactAnalysisSegmentsV2Input) (*connect.ListRealtimeContactAnalysisSegmentsV2Output, error) + ListRealtimeContactAnalysisSegmentsV2WithContext(aws.Context, *connect.ListRealtimeContactAnalysisSegmentsV2Input, ...request.Option) (*connect.ListRealtimeContactAnalysisSegmentsV2Output, error) + ListRealtimeContactAnalysisSegmentsV2Request(*connect.ListRealtimeContactAnalysisSegmentsV2Input) (*request.Request, *connect.ListRealtimeContactAnalysisSegmentsV2Output) + + ListRealtimeContactAnalysisSegmentsV2Pages(*connect.ListRealtimeContactAnalysisSegmentsV2Input, func(*connect.ListRealtimeContactAnalysisSegmentsV2Output, bool) bool) error + ListRealtimeContactAnalysisSegmentsV2PagesWithContext(aws.Context, *connect.ListRealtimeContactAnalysisSegmentsV2Input, func(*connect.ListRealtimeContactAnalysisSegmentsV2Output, bool) bool, ...request.Option) error + ListRoutingProfileQueues(*connect.ListRoutingProfileQueuesInput) (*connect.ListRoutingProfileQueuesOutput, error) ListRoutingProfileQueuesWithContext(aws.Context, *connect.ListRoutingProfileQueuesInput, ...request.Option) (*connect.ListRoutingProfileQueuesOutput, error) ListRoutingProfileQueuesRequest(*connect.ListRoutingProfileQueuesInput) (*request.Request, *connect.ListRoutingProfileQueuesOutput) @@ -661,6 +723,13 @@ ListSecurityKeysPages(*connect.ListSecurityKeysInput, func(*connect.ListSecurityKeysOutput, bool) bool) error ListSecurityKeysPagesWithContext(aws.Context, *connect.ListSecurityKeysInput, func(*connect.ListSecurityKeysOutput, bool) bool, ...request.Option) error + ListSecurityProfileApplications(*connect.ListSecurityProfileApplicationsInput) (*connect.ListSecurityProfileApplicationsOutput, error) + ListSecurityProfileApplicationsWithContext(aws.Context, *connect.ListSecurityProfileApplicationsInput, ...request.Option) (*connect.ListSecurityProfileApplicationsOutput, error) + ListSecurityProfileApplicationsRequest(*connect.ListSecurityProfileApplicationsInput) (*request.Request, *connect.ListSecurityProfileApplicationsOutput) + + ListSecurityProfileApplicationsPages(*connect.ListSecurityProfileApplicationsInput, func(*connect.ListSecurityProfileApplicationsOutput, bool) bool) error + ListSecurityProfileApplicationsPagesWithContext(aws.Context, *connect.ListSecurityProfileApplicationsInput, func(*connect.ListSecurityProfileApplicationsOutput, bool) bool, ...request.Option) error + ListSecurityProfilePermissions(*connect.ListSecurityProfilePermissionsInput) (*connect.ListSecurityProfilePermissionsOutput, error) ListSecurityProfilePermissionsWithContext(aws.Context, *connect.ListSecurityProfilePermissionsInput, ...request.Option) (*connect.ListSecurityProfilePermissionsOutput, error) ListSecurityProfilePermissionsRequest(*connect.ListSecurityProfilePermissionsInput) (*request.Request, *connect.ListSecurityProfilePermissionsOutput) @@ -825,6 +894,10 @@ SearchVocabulariesPages(*connect.SearchVocabulariesInput, func(*connect.SearchVocabulariesOutput, bool) bool) error SearchVocabulariesPagesWithContext(aws.Context, *connect.SearchVocabulariesInput, func(*connect.SearchVocabulariesOutput, bool) bool, ...request.Option) error + SendChatIntegrationEvent(*connect.SendChatIntegrationEventInput) (*connect.SendChatIntegrationEventOutput, error) + SendChatIntegrationEventWithContext(aws.Context, *connect.SendChatIntegrationEventInput, ...request.Option) (*connect.SendChatIntegrationEventOutput, error) + SendChatIntegrationEventRequest(*connect.SendChatIntegrationEventInput) (*request.Request, *connect.SendChatIntegrationEventOutput) + StartChatContact(*connect.StartChatContactInput) (*connect.StartChatContactOutput, error) StartChatContactWithContext(aws.Context, *connect.StartChatContactInput, ...request.Option) (*connect.StartChatContactOutput, error) StartChatContactRequest(*connect.StartChatContactInput) (*request.Request, *connect.StartChatContactOutput) @@ -849,6 +922,10 @@ StartTaskContactWithContext(aws.Context, *connect.StartTaskContactInput, ...request.Option) (*connect.StartTaskContactOutput, error) StartTaskContactRequest(*connect.StartTaskContactInput) (*request.Request, *connect.StartTaskContactOutput) + StartWebRTCContact(*connect.StartWebRTCContactInput) (*connect.StartWebRTCContactOutput, error) + StartWebRTCContactWithContext(aws.Context, *connect.StartWebRTCContactInput, ...request.Option) (*connect.StartWebRTCContactOutput, error) + StartWebRTCContactRequest(*connect.StartWebRTCContactInput) (*request.Request, *connect.StartWebRTCContactOutput) + StopContact(*connect.StopContactInput) (*connect.StopContactOutput, error) StopContactWithContext(aws.Context, *connect.StopContactInput, ...request.Option) (*connect.StopContactOutput, error) StopContactRequest(*connect.StopContactInput) (*request.Request, *connect.StopContactOutput) @@ -945,6 +1022,10 @@ UpdatePhoneNumberWithContext(aws.Context, *connect.UpdatePhoneNumberInput, ...request.Option) (*connect.UpdatePhoneNumberOutput, error) UpdatePhoneNumberRequest(*connect.UpdatePhoneNumberInput) (*request.Request, *connect.UpdatePhoneNumberOutput) + UpdatePhoneNumberMetadata(*connect.UpdatePhoneNumberMetadataInput) (*connect.UpdatePhoneNumberMetadataOutput, error) + UpdatePhoneNumberMetadataWithContext(aws.Context, *connect.UpdatePhoneNumberMetadataInput, ...request.Option) (*connect.UpdatePhoneNumberMetadataOutput, error) + UpdatePhoneNumberMetadataRequest(*connect.UpdatePhoneNumberMetadataInput) (*request.Request, *connect.UpdatePhoneNumberMetadataOutput) + UpdatePrompt(*connect.UpdatePromptInput) (*connect.UpdatePromptOutput, error) UpdatePromptWithContext(aws.Context, *connect.UpdatePromptInput, ...request.Option) (*connect.UpdatePromptOutput, error) UpdatePromptRequest(*connect.UpdatePromptInput) (*request.Request, *connect.UpdatePromptOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connect/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/connect/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connect/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connect/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -94,6 +94,14 @@ // The contact is not permitted. ErrCodeOutboundContactNotPermittedException = "OutboundContactNotPermittedException" + // ErrCodeOutputTypeNotFoundException for service response error code + // "OutputTypeNotFoundException". + // + // Thrown for analyzed content when requested OutputType was not enabled for + // a given contact. For example, if an OutputType.Raw was requested for a contact + // that had `RedactedOnly` Redaction policy set in Contact flow. + ErrCodeOutputTypeNotFoundException = "OutputTypeNotFoundException" + // ErrCodePropertyValidationException for service response error code // "PropertyValidationException". // @@ -164,6 +172,7 @@ "LimitExceededException": newErrorLimitExceededException, "MaximumResultReturnedException": newErrorMaximumResultReturnedException, "OutboundContactNotPermittedException": newErrorOutboundContactNotPermittedException, + "OutputTypeNotFoundException": newErrorOutputTypeNotFoundException, "PropertyValidationException": newErrorPropertyValidationException, "ResourceConflictException": newErrorResourceConflictException, "ResourceInUseException": newErrorResourceInUseException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connectcases/api.go golang-github-aws-aws-sdk-go-1.48.14/service/connectcases/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connectcases/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connectcases/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -256,9 +256,9 @@ // The following fields are required when creating a case: // //
  • customer_id - You must provide the full customer -// profile ARN in this format: arn:aws:profile:your AWS Region:your -// AWS account ID:domains/profiles domain name/profiles/profile ID -//

  • title

+// profile ARN in this format: arn:aws:profile:your_AWS_Region:your_AWS_account +// ID:domains/your_profiles_domain_name/profiles/profile_ID

+//
  • title

  • // // 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 @@ -685,10 +685,17 @@ // Creates a related item (comments, tasks, and contacts) and associates it // with a case. // -// A Related Item is a resource that is associated with a case. It may or may -// not have an external identifier linking it to an external resource (for example, -// a contactArn). All Related Items have their own internal identifier, the -// relatedItemArn. Examples of related items include comments and contacts. +// - A Related Item is a resource that is associated with a case. It may +// or may not have an external identifier linking it to an external resource +// (for example, a contactArn). All Related Items have their own internal +// identifier, the relatedItemArn. Examples of related items include comments +// and contacts. +// +// - If you provide a value for performedBy.userArn you must also have DescribeUser +// (https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribeUser.html) +// permission on the ARN of the user that you provide. +// +// // // 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 @@ -2529,7 +2536,9 @@ // PutCaseEventConfiguration API operation for Amazon Connect Cases. // -// # API for adding case event publishing configuration +// Adds case event publishing configuration. For a complete list of fields you +// can add to the event message, see Create case fields (https://docs.aws.amazon.com/connect/latest/adminguide/case-fields.html) +// in the Amazon Connect Administrator Guide // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4902,6 +4911,9 @@ // DomainId is a required field DomainId *string `location:"uri" locationName:"domainId" min:"1" type:"string" required:"true"` + // Represents the creator of the related item. + PerformedBy *UserUnion `locationName:"performedBy" type:"structure"` + // The type of a related item. // // Type is a required field @@ -4952,6 +4964,11 @@ invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) } } + if s.PerformedBy != nil { + if err := s.PerformedBy.Validate(); err != nil { + invalidParams.AddNested("PerformedBy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -4977,6 +4994,12 @@ return s } +// SetPerformedBy sets the PerformedBy field's value. +func (s *CreateRelatedItemInput) SetPerformedBy(v *UserUnion) *CreateRelatedItemInput { + s.PerformedBy = v + return s +} + // SetType sets the Type field's value. func (s *CreateRelatedItemInput) SetType(v string) *CreateRelatedItemInput { s.Type = &v @@ -8844,6 +8867,9 @@ // Content is a required field Content *RelatedItemContent `locationName:"content" type:"structure" required:"true"` + // Represents the creator of the related item. + PerformedBy *UserUnion `locationName:"performedBy" type:"structure"` + // Unique identifier of a related item. // // RelatedItemId is a required field @@ -8889,6 +8915,12 @@ return s } +// SetPerformedBy sets the PerformedBy field's value. +func (s *SearchRelatedItemsResponseItem) SetPerformedBy(v *UserUnion) *SearchRelatedItemsResponseItem { + s.PerformedBy = v + return s +} + // SetRelatedItemId sets the RelatedItemId field's value. func (s *SearchRelatedItemsResponseItem) SetRelatedItemId(v string) *SearchRelatedItemsResponseItem { s.RelatedItemId = &v @@ -9612,7 +9644,7 @@ _ struct{} `type:"structure"` // Information about which fields will be present in the layout, the order of - // the fields, and a read-only attribute of the field. + // the fields. Content *LayoutContent `locationName:"content" type:"structure"` // The unique identifier of the Cases domain. @@ -9875,6 +9907,51 @@ return s.String() } +// Represents the identity of the person who performed the action. +type UserUnion struct { + _ struct{} `type:"structure"` + + // Represents the Amazon Connect ARN of the user. + UserArn *string `locationName:"userArn" 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 UserUnion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UserUnion) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UserUnion) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UserUnion"} + if s.UserArn != nil && len(*s.UserArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetUserArn sets the UserArn field's value. +func (s *UserUnion) SetUserArn(v string) *UserUnion { + s.UserArn = &v + return s +} + // The request isn't valid. Check the syntax and try again. type ValidationException struct { _ struct{} `type:"structure"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connectwisdomservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/connectwisdomservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connectwisdomservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connectwisdomservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -412,6 +412,102 @@ return out, req.Send() } +const opCreateQuickResponse = "CreateQuickResponse" + +// CreateQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the CreateQuickResponse 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 CreateQuickResponse for more information on using the CreateQuickResponse +// 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 CreateQuickResponseRequest method. +// req, resp := client.CreateQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/CreateQuickResponse +func (c *ConnectWisdomService) CreateQuickResponseRequest(input *CreateQuickResponseInput) (req *request.Request, output *CreateQuickResponseOutput) { + op := &request.Operation{ + Name: opCreateQuickResponse, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses", + } + + if input == nil { + input = &CreateQuickResponseInput{} + } + + output = &CreateQuickResponseOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateQuickResponse API operation for Amazon Connect Wisdom Service. +// +// Creates a Wisdom quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation CreateQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/CreateQuickResponse +func (c *ConnectWisdomService) CreateQuickResponse(input *CreateQuickResponseInput) (*CreateQuickResponseOutput, error) { + req, out := c.CreateQuickResponseRequest(input) + return out, req.Send() +} + +// CreateQuickResponseWithContext is the same as CreateQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See CreateQuickResponse 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 *ConnectWisdomService) CreateQuickResponseWithContext(ctx aws.Context, input *CreateQuickResponseInput, opts ...request.Option) (*CreateQuickResponseOutput, error) { + req, out := c.CreateQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateSession = "CreateSession" // CreateSessionRequest generates a "aws/request.Request" representing the @@ -760,6 +856,98 @@ return out, req.Send() } +const opDeleteImportJob = "DeleteImportJob" + +// DeleteImportJobRequest generates a "aws/request.Request" representing the +// client's request for the DeleteImportJob 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 DeleteImportJob for more information on using the DeleteImportJob +// 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 DeleteImportJobRequest method. +// req, resp := client.DeleteImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/DeleteImportJob +func (c *ConnectWisdomService) DeleteImportJobRequest(input *DeleteImportJobInput) (req *request.Request, output *DeleteImportJobOutput) { + op := &request.Operation{ + Name: opDeleteImportJob, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + } + + if input == nil { + input = &DeleteImportJobInput{} + } + + output = &DeleteImportJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteImportJob API operation for Amazon Connect Wisdom Service. +// +// Deletes the quick response import job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation DeleteImportJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/DeleteImportJob +func (c *ConnectWisdomService) DeleteImportJob(input *DeleteImportJobInput) (*DeleteImportJobOutput, error) { + req, out := c.DeleteImportJobRequest(input) + return out, req.Send() +} + +// DeleteImportJobWithContext is the same as DeleteImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteImportJob 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 *ConnectWisdomService) DeleteImportJobWithContext(ctx aws.Context, input *DeleteImportJobInput, opts ...request.Option) (*DeleteImportJobOutput, error) { + req, out := c.DeleteImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteKnowledgeBase = "DeleteKnowledgeBase" // DeleteKnowledgeBaseRequest generates a "aws/request.Request" representing the @@ -860,6 +1048,92 @@ return out, req.Send() } +const opDeleteQuickResponse = "DeleteQuickResponse" + +// DeleteQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the DeleteQuickResponse 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 DeleteQuickResponse for more information on using the DeleteQuickResponse +// 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 DeleteQuickResponseRequest method. +// req, resp := client.DeleteQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/DeleteQuickResponse +func (c *ConnectWisdomService) DeleteQuickResponseRequest(input *DeleteQuickResponseInput) (req *request.Request, output *DeleteQuickResponseOutput) { + op := &request.Operation{ + Name: opDeleteQuickResponse, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + } + + if input == nil { + input = &DeleteQuickResponseInput{} + } + + output = &DeleteQuickResponseOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteQuickResponse API operation for Amazon Connect Wisdom Service. +// +// Deletes a quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation DeleteQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/DeleteQuickResponse +func (c *ConnectWisdomService) DeleteQuickResponse(input *DeleteQuickResponseInput) (*DeleteQuickResponseOutput, error) { + req, out := c.DeleteQuickResponseRequest(input) + return out, req.Send() +} + +// DeleteQuickResponseWithContext is the same as DeleteQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteQuickResponse 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 *ConnectWisdomService) DeleteQuickResponseWithContext(ctx aws.Context, input *DeleteQuickResponseInput, opts ...request.Option) (*DeleteQuickResponseOutput, error) { + req, out := c.DeleteQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAssistant = "GetAssistant" // GetAssistantRequest generates a "aws/request.Request" representing the @@ -1200,6 +1474,91 @@ return out, req.Send() } +const opGetImportJob = "GetImportJob" + +// GetImportJobRequest generates a "aws/request.Request" representing the +// client's request for the GetImportJob 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 GetImportJob for more information on using the GetImportJob +// 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 GetImportJobRequest method. +// req, resp := client.GetImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/GetImportJob +func (c *ConnectWisdomService) GetImportJobRequest(input *GetImportJobInput) (req *request.Request, output *GetImportJobOutput) { + op := &request.Operation{ + Name: opGetImportJob, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + } + + if input == nil { + input = &GetImportJobInput{} + } + + output = &GetImportJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetImportJob API operation for Amazon Connect Wisdom Service. +// +// Retrieves the started import job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation GetImportJob for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/GetImportJob +func (c *ConnectWisdomService) GetImportJob(input *GetImportJobInput) (*GetImportJobOutput, error) { + req, out := c.GetImportJobRequest(input) + return out, req.Send() +} + +// GetImportJobWithContext is the same as GetImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetImportJob 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 *ConnectWisdomService) GetImportJobWithContext(ctx aws.Context, input *GetImportJobInput, opts ...request.Option) (*GetImportJobOutput, error) { + req, out := c.GetImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetKnowledgeBase = "GetKnowledgeBase" // GetKnowledgeBaseRequest generates a "aws/request.Request" representing the @@ -1285,6 +1644,91 @@ return out, req.Send() } +const opGetQuickResponse = "GetQuickResponse" + +// GetQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the GetQuickResponse 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 GetQuickResponse for more information on using the GetQuickResponse +// 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 GetQuickResponseRequest method. +// req, resp := client.GetQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/GetQuickResponse +func (c *ConnectWisdomService) GetQuickResponseRequest(input *GetQuickResponseInput) (req *request.Request, output *GetQuickResponseOutput) { + op := &request.Operation{ + Name: opGetQuickResponse, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + } + + if input == nil { + input = &GetQuickResponseInput{} + } + + output = &GetQuickResponseOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetQuickResponse API operation for Amazon Connect Wisdom Service. +// +// Retrieves the quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation GetQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/GetQuickResponse +func (c *ConnectWisdomService) GetQuickResponse(input *GetQuickResponseInput) (*GetQuickResponseOutput, error) { + req, out := c.GetQuickResponseRequest(input) + return out, req.Send() +} + +// GetQuickResponseWithContext is the same as GetQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See GetQuickResponse 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 *ConnectWisdomService) GetQuickResponseWithContext(ctx aws.Context, input *GetQuickResponseInput, opts ...request.Option) (*GetQuickResponseOutput, error) { + req, out := c.GetQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetRecommendations = "GetRecommendations" // GetRecommendationsRequest generates a "aws/request.Request" representing the @@ -1884,6 +2328,145 @@ return p.Err() } +const opListImportJobs = "ListImportJobs" + +// ListImportJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListImportJobs 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 ListImportJobs for more information on using the ListImportJobs +// 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 ListImportJobsRequest method. +// req, resp := client.ListImportJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/ListImportJobs +func (c *ConnectWisdomService) ListImportJobsRequest(input *ListImportJobsInput) (req *request.Request, output *ListImportJobsOutput) { + op := &request.Operation{ + Name: opListImportJobs, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListImportJobsInput{} + } + + output = &ListImportJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListImportJobs API operation for Amazon Connect Wisdom Service. +// +// Lists information about import jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation ListImportJobs for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/ListImportJobs +func (c *ConnectWisdomService) ListImportJobs(input *ListImportJobsInput) (*ListImportJobsOutput, error) { + req, out := c.ListImportJobsRequest(input) + return out, req.Send() +} + +// ListImportJobsWithContext is the same as ListImportJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListImportJobs 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 *ConnectWisdomService) ListImportJobsWithContext(ctx aws.Context, input *ListImportJobsInput, opts ...request.Option) (*ListImportJobsOutput, error) { + req, out := c.ListImportJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListImportJobsPages iterates over the pages of a ListImportJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListImportJobs 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 ListImportJobs operation. +// pageNum := 0 +// err := client.ListImportJobsPages(params, +// func(page *connectwisdomservice.ListImportJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ConnectWisdomService) ListImportJobsPages(input *ListImportJobsInput, fn func(*ListImportJobsOutput, bool) bool) error { + return c.ListImportJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListImportJobsPagesWithContext same as ListImportJobsPages 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 *ConnectWisdomService) ListImportJobsPagesWithContext(ctx aws.Context, input *ListImportJobsInput, fn func(*ListImportJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListImportJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListImportJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListImportJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListKnowledgeBases = "ListKnowledgeBases" // ListKnowledgeBasesRequest generates a "aws/request.Request" representing the @@ -2023,6 +2606,148 @@ return p.Err() } +const opListQuickResponses = "ListQuickResponses" + +// ListQuickResponsesRequest generates a "aws/request.Request" representing the +// client's request for the ListQuickResponses 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 ListQuickResponses for more information on using the ListQuickResponses +// 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 ListQuickResponsesRequest method. +// req, resp := client.ListQuickResponsesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/ListQuickResponses +func (c *ConnectWisdomService) ListQuickResponsesRequest(input *ListQuickResponsesInput) (req *request.Request, output *ListQuickResponsesOutput) { + op := &request.Operation{ + Name: opListQuickResponses, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListQuickResponsesInput{} + } + + output = &ListQuickResponsesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListQuickResponses API operation for Amazon Connect Wisdom Service. +// +// Lists information about quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation ListQuickResponses for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/ListQuickResponses +func (c *ConnectWisdomService) ListQuickResponses(input *ListQuickResponsesInput) (*ListQuickResponsesOutput, error) { + req, out := c.ListQuickResponsesRequest(input) + return out, req.Send() +} + +// ListQuickResponsesWithContext is the same as ListQuickResponses with the addition of +// the ability to pass a context and additional request options. +// +// See ListQuickResponses 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 *ConnectWisdomService) ListQuickResponsesWithContext(ctx aws.Context, input *ListQuickResponsesInput, opts ...request.Option) (*ListQuickResponsesOutput, error) { + req, out := c.ListQuickResponsesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListQuickResponsesPages iterates over the pages of a ListQuickResponses operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListQuickResponses 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 ListQuickResponses operation. +// pageNum := 0 +// err := client.ListQuickResponsesPages(params, +// func(page *connectwisdomservice.ListQuickResponsesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ConnectWisdomService) ListQuickResponsesPages(input *ListQuickResponsesInput, fn func(*ListQuickResponsesOutput, bool) bool) error { + return c.ListQuickResponsesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListQuickResponsesPagesWithContext same as ListQuickResponsesPages 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 *ConnectWisdomService) ListQuickResponsesPagesWithContext(ctx aws.Context, input *ListQuickResponsesInput, fn func(*ListQuickResponsesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListQuickResponsesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListQuickResponsesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListQuickResponsesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -2251,6 +2976,12 @@ // // Returned Error Types: // +// - RequestTimeoutException +// The request reached the service more than 15 minutes after the date stamp +// on the request or more than 15 minutes after the request expiration date +// (such as for pre-signed URLs), or the date stamp on the request is more than +// 15 minutes in the future. +// // - ValidationException // The input fails to satisfy the constraints specified by a service. // @@ -2562,6 +3293,154 @@ return p.Err() } +const opSearchQuickResponses = "SearchQuickResponses" + +// SearchQuickResponsesRequest generates a "aws/request.Request" representing the +// client's request for the SearchQuickResponses 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 SearchQuickResponses for more information on using the SearchQuickResponses +// 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 SearchQuickResponsesRequest method. +// req, resp := client.SearchQuickResponsesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/SearchQuickResponses +func (c *ConnectWisdomService) SearchQuickResponsesRequest(input *SearchQuickResponsesInput) (req *request.Request, output *SearchQuickResponsesOutput) { + op := &request.Operation{ + Name: opSearchQuickResponses, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/search/quickResponses", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchQuickResponsesInput{} + } + + output = &SearchQuickResponsesOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchQuickResponses API operation for Amazon Connect Wisdom Service. +// +// Searches existing Wisdom quick responses in a Wisdom knowledge base. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation SearchQuickResponses for usage and error information. +// +// Returned Error Types: +// +// - RequestTimeoutException +// The request reached the service more than 15 minutes after the date stamp +// on the request or more than 15 minutes after the request expiration date +// (such as for pre-signed URLs), or the date stamp on the request is more than +// 15 minutes in the future. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/SearchQuickResponses +func (c *ConnectWisdomService) SearchQuickResponses(input *SearchQuickResponsesInput) (*SearchQuickResponsesOutput, error) { + req, out := c.SearchQuickResponsesRequest(input) + return out, req.Send() +} + +// SearchQuickResponsesWithContext is the same as SearchQuickResponses with the addition of +// the ability to pass a context and additional request options. +// +// See SearchQuickResponses 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 *ConnectWisdomService) SearchQuickResponsesWithContext(ctx aws.Context, input *SearchQuickResponsesInput, opts ...request.Option) (*SearchQuickResponsesOutput, error) { + req, out := c.SearchQuickResponsesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchQuickResponsesPages iterates over the pages of a SearchQuickResponses operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchQuickResponses 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 SearchQuickResponses operation. +// pageNum := 0 +// err := client.SearchQuickResponsesPages(params, +// func(page *connectwisdomservice.SearchQuickResponsesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ConnectWisdomService) SearchQuickResponsesPages(input *SearchQuickResponsesInput, fn func(*SearchQuickResponsesOutput, bool) bool) error { + return c.SearchQuickResponsesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchQuickResponsesPagesWithContext same as SearchQuickResponsesPages 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 *ConnectWisdomService) SearchQuickResponsesPagesWithContext(ctx aws.Context, input *SearchQuickResponsesInput, fn func(*SearchQuickResponsesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchQuickResponsesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchQuickResponsesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchQuickResponsesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opSearchSessions = "SearchSessions" // SearchSessionsRequest generates a "aws/request.Request" representing the @@ -2794,6 +3673,108 @@ return out, req.Send() } +const opStartImportJob = "StartImportJob" + +// StartImportJobRequest generates a "aws/request.Request" representing the +// client's request for the StartImportJob 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 StartImportJob for more information on using the StartImportJob +// 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 StartImportJobRequest method. +// req, resp := client.StartImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/StartImportJob +func (c *ConnectWisdomService) StartImportJobRequest(input *StartImportJobInput) (req *request.Request, output *StartImportJobOutput) { + op := &request.Operation{ + Name: opStartImportJob, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs", + } + + if input == nil { + input = &StartImportJobInput{} + } + + output = &StartImportJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartImportJob API operation for Amazon Connect Wisdom Service. +// +// Start an asynchronous job to import Wisdom resources from an uploaded source +// file. Before calling this API, use StartContentUpload (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html) +// to upload an asset that contains the resource data. +// +// - For importing Wisdom quick responses, you need to upload a csv file +// including the quick responses. For information about how to format the +// csv file for importing quick responses, see Import quick responses (https://docs.aws.amazon.com/console/connect/quick-responses/add-data). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation StartImportJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/StartImportJob +func (c *ConnectWisdomService) StartImportJob(input *StartImportJobInput) (*StartImportJobOutput, error) { + req, out := c.StartImportJobRequest(input) + return out, req.Send() +} + +// StartImportJobWithContext is the same as StartImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartImportJob 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 *ConnectWisdomService) StartImportJobWithContext(ctx aws.Context, input *StartImportJobInput, opts ...request.Option) (*StartImportJobOutput, error) { + req, out := c.StartImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -3135,6 +4116,101 @@ return out, req.Send() } +const opUpdateQuickResponse = "UpdateQuickResponse" + +// UpdateQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the UpdateQuickResponse 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 UpdateQuickResponse for more information on using the UpdateQuickResponse +// 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 UpdateQuickResponseRequest method. +// req, resp := client.UpdateQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/UpdateQuickResponse +func (c *ConnectWisdomService) UpdateQuickResponseRequest(input *UpdateQuickResponseInput) (req *request.Request, output *UpdateQuickResponseOutput) { + op := &request.Operation{ + Name: opUpdateQuickResponse, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + } + + if input == nil { + input = &UpdateQuickResponseInput{} + } + + output = &UpdateQuickResponseOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateQuickResponse API operation for Amazon Connect Wisdom Service. +// +// Updates an existing Wisdom quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Wisdom Service's +// API operation UpdateQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - PreconditionFailedException +// The provided revisionId does not match, indicating the content has been modified +// since it was last read. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/UpdateQuickResponse +func (c *ConnectWisdomService) UpdateQuickResponse(input *UpdateQuickResponseInput) (*UpdateQuickResponseOutput, error) { + req, out := c.UpdateQuickResponseRequest(input) + return out, req.Send() +} + +// UpdateQuickResponseWithContext is the same as UpdateQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateQuickResponse 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 *ConnectWisdomService) UpdateQuickResponseWithContext(ctx aws.Context, input *UpdateQuickResponseInput, opts ...request.Option) (*UpdateQuickResponseOutput, error) { + req, out := c.UpdateQuickResponseRequest(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"` @@ -3226,6 +4302,14 @@ // your AppIntegrations DataIntegration must have a FileConfiguration, including // only file extensions that are among docx, pdf, html, htm, and txt. // + // * For Amazon S3 (https://aws.amazon.com/s3/), the ObjectConfiguration + // and FileConfiguration of your AppIntegrations DataIntegration must be + // null. The SourceURI of your DataIntegration must use the following format: + // s3://your_s3_bucket_name. The bucket policy of the corresponding S3 bucket + // must allow the Amazon Web Services principal app-integrations.amazonaws.com + // to perform s3:ListBucket, s3:GetObject, and s3:GetBucketLocation against + // the bucket. + // // AppIntegrationArn is a required field AppIntegrationArn *string `locationName:"appIntegrationArn" min:"1" type:"string" required:"true"` @@ -3399,7 +4483,8 @@ type AssistantAssociationInputData struct { _ struct{} `type:"structure"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string"` } @@ -3582,7 +4667,16 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` - // The KMS key used for encryption. + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using + // the key to invoke Wisdom. To use Wisdom with chat, the key policy must also + // allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions + // to the connect.amazonaws.com service principal. + // + // For more information about setting up a customer managed key for Wisdom, + // see Enable Amazon Connect Wisdom for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` // The status of the assistant. @@ -3729,7 +4823,16 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` - // The KMS key used for encryption. + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using + // the key to invoke Wisdom. To use Wisdom with chat, the key policy must also + // allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions + // to the connect.amazonaws.com service principal. + // + // For more information about setting up a customer managed key for Wisdom, + // see Enable Amazon Connect Wisdom for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` // The status of the assistant. @@ -3818,6 +4921,53 @@ return s } +// The configuration information of the external data source. +type Configuration struct { + _ struct{} `type:"structure"` + + // The configuration information of the Amazon Connect data source. + ConnectConfiguration *ConnectConfiguration `locationName:"connectConfiguration" 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 Configuration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Configuration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Configuration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Configuration"} + if s.ConnectConfiguration != nil { + if err := s.ConnectConfiguration.Validate(); err != nil { + invalidParams.AddNested("ConnectConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectConfiguration sets the ConnectConfiguration field's value. +func (s *Configuration) SetConnectConfiguration(v *ConnectConfiguration) *Configuration { + s.ConnectConfiguration = v + return s +} + // The request could not be processed because of conflict in the current state // of the resource. For example, if you're using a Create API (such as CreateAssistant) // that accepts name, a conflicting resource (usually with the same name) is @@ -3885,6 +5035,52 @@ return s.RespMetadata.RequestID } +// The configuration information of the Amazon Connect data source. +type ConnectConfiguration struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Connect instance. You can find the instanceId + // in the ARN of the instance. + InstanceId *string `locationName:"instanceId" 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 ConnectConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConnectConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConnectConfiguration"} + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ConnectConfiguration) SetInstanceId(v string) *ConnectConfiguration { + s.InstanceId = &v + return s +} + // Information about the content. type ContentData struct { _ struct{} `type:"structure"` @@ -3909,7 +5105,8 @@ // KnowledgeBaseArn is a required field KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -4078,7 +5275,8 @@ // The Amazon Resource Name (ARN) of the knowledge base. KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string"` } @@ -4148,7 +5346,8 @@ // KnowledgeBaseArn is a required field KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -4419,7 +5618,16 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` - // The KMS key used for encryption. + // The configuration information for the customer managed key used for encryption. + // + // The customer managed key must have a policy that allows kms:CreateGrant, + // kms:DescribeKey, and kms:Decrypt/kms:GenerateDataKey permissions to the IAM + // identity using the key to invoke Wisdom. To use Wisdom with chat, the key + // policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey + // permissions to the connect.amazonaws.com service principal. + // + // For more information about setting up a customer managed key for Wisdom, + // see Enable Amazon Connect Wisdom for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` // The tags used to organize, track, or control access for this resource. @@ -4555,8 +5763,9 @@ // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -4753,7 +5962,14 @@ // Information about how to render the content. RenderingConfiguration *RenderingConfiguration `locationName:"renderingConfiguration" type:"structure"` - // The KMS key used for encryption. + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using + // the key to invoke Wisdom. + // + // For more information about setting up a customer managed key for Wisdom, + // see Enable Amazon Connect Wisdom for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` // The source of the knowledge base content. Only set this argument for EXTERNAL @@ -4901,6 +6117,235 @@ return s } +type CreateQuickResponseInput struct { + _ struct{} `type:"structure"` + + // The Amazon Connect channels this quick response applies to. + Channels []*string `locationName:"channels" type:"list"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The content of the quick response. + // + // Content is a required field + Content *QuickResponseDataProvider `locationName:"content" type:"structure" required:"true"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for a quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for a quick response + // written in richtext. + ContentType *string `locationName:"contentType" type:"string"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information of the user groups that the quick response + // is accessible to. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + // The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, + // ja_JP, ko_KR, pt_BR, zh_CN, zh_TW + Language *string `locationName:"language" min:"2" type:"string"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" min:"1" type:"string"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateQuickResponseInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Content == nil { + invalidParams.Add(request.NewErrParamRequired("Content")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Language != nil && len(*s.Language) < 2 { + invalidParams.Add(request.NewErrParamMinLen("Language", 2)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ShortcutKey != nil && len(*s.ShortcutKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShortcutKey", 1)) + } + if s.Content != nil { + if err := s.Content.Validate(); err != nil { + invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) + } + } + if s.GroupingConfiguration != nil { + if err := s.GroupingConfiguration.Validate(); err != nil { + invalidParams.AddNested("GroupingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannels sets the Channels field's value. +func (s *CreateQuickResponseInput) SetChannels(v []*string) *CreateQuickResponseInput { + s.Channels = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateQuickResponseInput) SetClientToken(v string) *CreateQuickResponseInput { + s.ClientToken = &v + return s +} + +// SetContent sets the Content field's value. +func (s *CreateQuickResponseInput) SetContent(v *QuickResponseDataProvider) *CreateQuickResponseInput { + s.Content = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *CreateQuickResponseInput) SetContentType(v string) *CreateQuickResponseInput { + s.ContentType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateQuickResponseInput) SetDescription(v string) *CreateQuickResponseInput { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *CreateQuickResponseInput) SetGroupingConfiguration(v *GroupingConfiguration) *CreateQuickResponseInput { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *CreateQuickResponseInput) SetIsActive(v bool) *CreateQuickResponseInput { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *CreateQuickResponseInput) SetKnowledgeBaseId(v string) *CreateQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *CreateQuickResponseInput) SetLanguage(v string) *CreateQuickResponseInput { + s.Language = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateQuickResponseInput) SetName(v string) *CreateQuickResponseInput { + s.Name = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *CreateQuickResponseInput) SetShortcutKey(v string) *CreateQuickResponseInput { + s.ShortcutKey = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateQuickResponseInput) SetTags(v map[string]*string) *CreateQuickResponseInput { + s.Tags = v + return s +} + +type CreateQuickResponseOutput struct { + _ struct{} `type:"structure"` + + // The quick response. + QuickResponse *QuickResponseData `locationName:"quickResponse" 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 CreateQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateQuickResponseOutput) GoString() string { + return s.String() +} + +// SetQuickResponse sets the QuickResponse field's value. +func (s *CreateQuickResponseOutput) SetQuickResponse(v *QuickResponseData) *CreateQuickResponseOutput { + s.QuickResponse = v + return s +} + type CreateSessionInput struct { _ struct{} `type:"structure"` @@ -5206,8 +6651,9 @@ // ContentId is a required field ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -5287,6 +6733,95 @@ return s.String() } +type DeleteImportJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the import job to be deleted. + // + // ImportJobId is a required field + ImportJobId *string `location:"uri" locationName:"importJobId" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DeleteImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteImportJobInput"} + if s.ImportJobId == nil { + invalidParams.Add(request.NewErrParamRequired("ImportJobId")) + } + if s.ImportJobId != nil && len(*s.ImportJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImportJobId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *DeleteImportJobInput) SetImportJobId(v string) *DeleteImportJobInput { + s.ImportJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteImportJobInput) SetKnowledgeBaseId(v string) *DeleteImportJobInput { + s.KnowledgeBaseId = &v + return s +} + +type DeleteImportJobOutput 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 DeleteImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImportJobOutput) GoString() string { + return s.String() +} + type DeleteKnowledgeBaseInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -5359,6 +6894,96 @@ return s.String() } +type DeleteQuickResponseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The knowledge base from which the quick response is deleted. The identifier + // of the knowledge base. This should not be a QUICK_RESPONSES type knowledge + // base if you're storing Wisdom Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The identifier of the quick response to delete. + // + // QuickResponseId is a required field + QuickResponseId *string `location:"uri" locationName:"quickResponseId" 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 DeleteQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteQuickResponseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.QuickResponseId == nil { + invalidParams.Add(request.NewErrParamRequired("QuickResponseId")) + } + if s.QuickResponseId != nil && len(*s.QuickResponseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuickResponseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteQuickResponseInput) SetKnowledgeBaseId(v string) *DeleteQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *DeleteQuickResponseInput) SetQuickResponseId(v string) *DeleteQuickResponseInput { + s.QuickResponseId = &v + return s +} + +type DeleteQuickResponseOutput 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 DeleteQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteQuickResponseOutput) GoString() string { + return s.String() +} + // The document. type Document struct { _ struct{} `type:"structure"` @@ -5456,6 +7081,72 @@ return s } +// The configuration information of the external data source. +type ExternalSourceConfiguration struct { + _ struct{} `type:"structure"` + + // The configuration information of the external data source. + // + // Configuration is a required field + Configuration *Configuration `locationName:"configuration" type:"structure" required:"true"` + + // The type of the external data source. + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"ExternalSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExternalSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExternalSourceConfiguration"} + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + if s.Source == nil { + invalidParams.Add(request.NewErrParamRequired("Source")) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguration sets the Configuration field's value. +func (s *ExternalSourceConfiguration) SetConfiguration(v *Configuration) *ExternalSourceConfiguration { + s.Configuration = v + return s +} + +// SetSource sets the Source field's value. +func (s *ExternalSourceConfiguration) SetSource(v string) *ExternalSourceConfiguration { + s.Source = &v + return s +} + // A search filter. type Filter struct { _ struct{} `type:"structure"` @@ -5723,8 +7414,9 @@ // ContentId is a required field ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -5822,8 +7514,9 @@ // ContentId is a required field ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -5912,11 +7605,109 @@ return s } +type GetImportJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the import job to retrieve. + // + // ImportJobId is a required field + ImportJobId *string `location:"uri" locationName:"importJobId" type:"string" required:"true"` + + // The identifier of the knowledge base that the import job belongs to. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetImportJobInput"} + if s.ImportJobId == nil { + invalidParams.Add(request.NewErrParamRequired("ImportJobId")) + } + if s.ImportJobId != nil && len(*s.ImportJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImportJobId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *GetImportJobInput) SetImportJobId(v string) *GetImportJobInput { + s.ImportJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetImportJobInput) SetKnowledgeBaseId(v string) *GetImportJobInput { + s.KnowledgeBaseId = &v + return s +} + +type GetImportJobOutput struct { + _ struct{} `type:"structure"` + + // The import job. + ImportJob *ImportJobData `locationName:"importJob" 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 GetImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImportJobOutput) GoString() string { + return s.String() +} + +// SetImportJob sets the ImportJob field's value. +func (s *GetImportJobOutput) SetImportJob(v *ImportJobData) *GetImportJobOutput { + s.ImportJob = v + return s +} + type GetKnowledgeBaseInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -5993,6 +7784,104 @@ return s } +type GetQuickResponseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should be a QUICK_RESPONSES type + // knowledge base. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `location:"uri" locationName:"quickResponseId" 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 GetQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetQuickResponseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.QuickResponseId == nil { + invalidParams.Add(request.NewErrParamRequired("QuickResponseId")) + } + if s.QuickResponseId != nil && len(*s.QuickResponseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuickResponseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetQuickResponseInput) SetKnowledgeBaseId(v string) *GetQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *GetQuickResponseInput) SetQuickResponseId(v string) *GetQuickResponseInput { + s.QuickResponseId = &v + return s +} + +type GetQuickResponseOutput struct { + _ struct{} `type:"structure"` + + // The quick response. + QuickResponse *QuickResponseData `locationName:"quickResponse" 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 GetQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQuickResponseOutput) GoString() string { + return s.String() +} + +// SetQuickResponse sets the QuickResponse field's value. +func (s *GetQuickResponseOutput) SetQuickResponse(v *QuickResponseData) *GetQuickResponseOutput { + s.QuickResponse = v + return s +} + type GetRecommendationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6226,6 +8115,76 @@ return s } +// The configuration information of the grouping of Wisdom users. +type GroupingConfiguration struct { + _ struct{} `type:"structure"` + + // The criteria used for grouping Wisdom users. + // + // The following is the list of supported criteria values. + // + // * RoutingProfileArn: Grouping the users by their Amazon Connect routing + // profile ARN (https://docs.aws.amazon.com/connect/latest/APIReference/API_RoutingProfile.html). + // User should have SearchRoutingProfile (https://docs.aws.amazon.com/connect/latest/APIReference/API_SearchRoutingProfiles.html) + // and DescribeRoutingProfile (https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribeRoutingProfile.html) + // permissions when setting criteria to this value. + // + // Criteria is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GroupingConfiguration's + // String and GoString methods. + Criteria *string `locationName:"criteria" min:"1" type:"string" sensitive:"true"` + + // The list of values that define different groups of Wisdom users. + // + // * When setting criteria to RoutingProfileArn, you need to provide a list + // of ARNs of Amazon Connect routing profiles (https://docs.aws.amazon.com/connect/latest/APIReference/API_RoutingProfile.html) + // as values of this parameter. + Values []*string `locationName:"values" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GroupingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GroupingConfiguration"} + if s.Criteria != nil && len(*s.Criteria) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Criteria", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCriteria sets the Criteria field's value. +func (s *GroupingConfiguration) SetCriteria(v string) *GroupingConfiguration { + s.Criteria = &v + return s +} + +// SetValues sets the Values field's value. +func (s *GroupingConfiguration) SetValues(v []*string) *GroupingConfiguration { + s.Values = v + return s +} + // Offset specification to describe highlighting of document excerpts for rendering // search results and recommendations. type Highlight struct { @@ -6268,6 +8227,308 @@ return s } +// Summary information about the import job. +type ImportJobData struct { + _ struct{} `type:"structure"` + + // The timestamp when the import job was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The configuration information of the external data source. + ExternalSourceConfiguration *ExternalSourceConfiguration `locationName:"externalSourceConfiguration" type:"structure"` + + // The link to donwload the information of resource data that failed to be imported. + // + // FailedRecordReport is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ImportJobData's + // String and GoString methods. + FailedRecordReport *string `locationName:"failedRecordReport" min:"1" type:"string" sensitive:"true"` + + // The identifier of the import job. + // + // ImportJobId is a required field + ImportJobId *string `locationName:"importJobId" type:"string" required:"true"` + + // The type of the import job. + // + // ImportJobType is a required field + ImportJobType *string `locationName:"importJobType" type:"string" required:"true" enum:"ImportJobType"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The timestamp when the import job data was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The metadata fields of the imported Wisdom resources. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The status of the import job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ImportJobStatus"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" min:"1" type:"string" required:"true"` + + // The download link to the resource file that is uploaded to the import job. + // + // Url is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ImportJobData's + // String and GoString methods. + // + // Url is a required field + Url *string `locationName:"url" min:"1" type:"string" required:"true" sensitive:"true"` + + // The expiration time of the URL as an epoch timestamp. + // + // UrlExpiry is a required field + UrlExpiry *time.Time `locationName:"urlExpiry" type:"timestamp" timestampFormat:"unixTimestamp" 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 ImportJobData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportJobData) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ImportJobData) SetCreatedTime(v time.Time) *ImportJobData { + s.CreatedTime = &v + return s +} + +// SetExternalSourceConfiguration sets the ExternalSourceConfiguration field's value. +func (s *ImportJobData) SetExternalSourceConfiguration(v *ExternalSourceConfiguration) *ImportJobData { + s.ExternalSourceConfiguration = v + return s +} + +// SetFailedRecordReport sets the FailedRecordReport field's value. +func (s *ImportJobData) SetFailedRecordReport(v string) *ImportJobData { + s.FailedRecordReport = &v + return s +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *ImportJobData) SetImportJobId(v string) *ImportJobData { + s.ImportJobId = &v + return s +} + +// SetImportJobType sets the ImportJobType field's value. +func (s *ImportJobData) SetImportJobType(v string) *ImportJobData { + s.ImportJobType = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ImportJobData) SetKnowledgeBaseArn(v string) *ImportJobData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ImportJobData) SetKnowledgeBaseId(v string) *ImportJobData { + s.KnowledgeBaseId = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ImportJobData) SetLastModifiedTime(v time.Time) *ImportJobData { + s.LastModifiedTime = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ImportJobData) SetMetadata(v map[string]*string) *ImportJobData { + s.Metadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ImportJobData) SetStatus(v string) *ImportJobData { + s.Status = &v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *ImportJobData) SetUploadId(v string) *ImportJobData { + s.UploadId = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *ImportJobData) SetUrl(v string) *ImportJobData { + s.Url = &v + return s +} + +// SetUrlExpiry sets the UrlExpiry field's value. +func (s *ImportJobData) SetUrlExpiry(v time.Time) *ImportJobData { + s.UrlExpiry = &v + return s +} + +// Summary information about the import job. +type ImportJobSummary struct { + _ struct{} `type:"structure"` + + // The timestamp when the import job was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The configuration information of the external source that the resource data + // are imported from. + ExternalSourceConfiguration *ExternalSourceConfiguration `locationName:"externalSourceConfiguration" type:"structure"` + + // The identifier of the import job. + // + // ImportJobId is a required field + ImportJobId *string `locationName:"importJobId" type:"string" required:"true"` + + // The type of import job. + // + // ImportJobType is a required field + ImportJobType *string `locationName:"importJobType" type:"string" required:"true" enum:"ImportJobType"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The timestamp when the import job was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The metadata fields of the imported Wisdom resources. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The status of the import job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ImportJobStatus"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" 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 ImportJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportJobSummary) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ImportJobSummary) SetCreatedTime(v time.Time) *ImportJobSummary { + s.CreatedTime = &v + return s +} + +// SetExternalSourceConfiguration sets the ExternalSourceConfiguration field's value. +func (s *ImportJobSummary) SetExternalSourceConfiguration(v *ExternalSourceConfiguration) *ImportJobSummary { + s.ExternalSourceConfiguration = v + return s +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *ImportJobSummary) SetImportJobId(v string) *ImportJobSummary { + s.ImportJobId = &v + return s +} + +// SetImportJobType sets the ImportJobType field's value. +func (s *ImportJobSummary) SetImportJobType(v string) *ImportJobSummary { + s.ImportJobType = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ImportJobSummary) SetKnowledgeBaseArn(v string) *ImportJobSummary { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ImportJobSummary) SetKnowledgeBaseId(v string) *ImportJobSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ImportJobSummary) SetLastModifiedTime(v time.Time) *ImportJobSummary { + s.LastModifiedTime = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ImportJobSummary) SetMetadata(v map[string]*string) *ImportJobSummary { + s.Metadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ImportJobSummary) SetStatus(v string) *ImportJobSummary { + s.Status = &v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *ImportJobSummary) SetUploadId(v string) *ImportJobSummary { + s.UploadId = &v + return s +} + // Association information about the knowledge base. type KnowledgeBaseAssociationData struct { _ struct{} `type:"structure"` @@ -6275,7 +8536,8 @@ // The Amazon Resource Name (ARN) of the knowledge base. KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string"` } @@ -6321,7 +8583,8 @@ // KnowledgeBaseArn is a required field KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -6344,7 +8607,14 @@ // Information about how to render the content. RenderingConfiguration *RenderingConfiguration `locationName:"renderingConfiguration" type:"structure"` - // The KMS key used for encryption. + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // and kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using + // the key to invoke Wisdom. + // + // For more information about setting up a customer managed key for Wisdom, + // see Enable Amazon Connect Wisdom for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` // Source configuration information about the knowledge base. @@ -6455,7 +8725,8 @@ // KnowledgeBaseArn is a required field KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` - // The identifier of the knowledge base. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -6473,7 +8744,14 @@ // Information about how to render the content. RenderingConfiguration *RenderingConfiguration `locationName:"renderingConfiguration" type:"structure"` - // The KMS key used for encryption. + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // kms:Decrypt/kms:GenerateDataKey permissions to the IAM identity using the + // key to invoke Wisdom. + // + // For more information about setting up a customer managed key for Wisdom, + // see Enable Amazon Connect Wisdom for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` // Configuration information about the external data source. @@ -6785,8 +9063,9 @@ type ListContentsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -6899,6 +9178,125 @@ return s } +type ListImportJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListImportJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListImportJobsInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListImportJobsInput) SetKnowledgeBaseId(v string) *ListImportJobsInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListImportJobsInput) SetMaxResults(v int64) *ListImportJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImportJobsInput) SetNextToken(v string) *ListImportJobsInput { + s.NextToken = &v + return s +} + +type ListImportJobsOutput struct { + _ struct{} `type:"structure"` + + // Summary information about the import jobs. + // + // ImportJobSummaries is a required field + ImportJobSummaries []*ImportJobSummary `locationName:"importJobSummaries" type:"list" required:"true"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsOutput) GoString() string { + return s.String() +} + +// SetImportJobSummaries sets the ImportJobSummaries field's value. +func (s *ListImportJobsOutput) SetImportJobSummaries(v []*ImportJobSummary) *ListImportJobsOutput { + s.ImportJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImportJobsOutput) SetNextToken(v string) *ListImportJobsOutput { + s.NextToken = &v + return s +} + type ListKnowledgeBasesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6998,6 +9396,125 @@ return s } +type ListQuickResponsesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListQuickResponsesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListQuickResponsesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListQuickResponsesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListQuickResponsesInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListQuickResponsesInput) SetKnowledgeBaseId(v string) *ListQuickResponsesInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListQuickResponsesInput) SetMaxResults(v int64) *ListQuickResponsesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListQuickResponsesInput) SetNextToken(v string) *ListQuickResponsesInput { + s.NextToken = &v + return s +} + +type ListQuickResponsesOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Summary information about the quick responses. + // + // QuickResponseSummaries is a required field + QuickResponseSummaries []*QuickResponseSummary `locationName:"quickResponseSummaries" 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 ListQuickResponsesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListQuickResponsesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListQuickResponsesOutput) SetNextToken(v string) *ListQuickResponsesOutput { + s.NextToken = &v + return s +} + +// SetQuickResponseSummaries sets the QuickResponseSummaries field's value. +func (s *ListQuickResponsesOutput) SetQuickResponseSummaries(v []*QuickResponseSummary) *ListQuickResponsesOutput { + s.QuickResponseSummaries = v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -7477,6 +9994,1163 @@ return s } +// The container quick response content. +type QuickResponseContentProvider struct { + _ struct{} `type:"structure"` + + // The content of the quick response. + // + // Content is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseContentProvider's + // String and GoString methods. + Content *string `locationName:"content" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseContentProvider) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseContentProvider) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *QuickResponseContentProvider) SetContent(v string) *QuickResponseContentProvider { + s.Content = &v + return s +} + +// The content of the quick response stored in different media types. +type QuickResponseContents struct { + _ struct{} `type:"structure"` + + // The container quick response content. + Markdown *QuickResponseContentProvider `locationName:"markdown" type:"structure"` + + // The container quick response content. + PlainText *QuickResponseContentProvider `locationName:"plainText" 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 QuickResponseContents) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseContents) GoString() string { + return s.String() +} + +// SetMarkdown sets the Markdown field's value. +func (s *QuickResponseContents) SetMarkdown(v *QuickResponseContentProvider) *QuickResponseContents { + s.Markdown = v + return s +} + +// SetPlainText sets the PlainText field's value. +func (s *QuickResponseContents) SetPlainText(v *QuickResponseContentProvider) *QuickResponseContents { + s.PlainText = v + return s +} + +// Information about the quick response. +type QuickResponseData struct { + _ struct{} `type:"structure"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The contents of the quick response. + Contents *QuickResponseContents `locationName:"contents" type:"structure"` + + // The timestamp when the quick response was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information of the user groups that the quick response + // is accessible to. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + Language *string `locationName:"language" min:"2" type:"string"` + + // The Amazon Resource Name (ARN) of the user who last updated the quick response + // data. + LastModifiedBy *string `locationName:"lastModifiedBy" min:"1" type:"string"` + + // The timestamp when the quick response data was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the quick response. + // + // QuickResponseArn is a required field + QuickResponseArn *string `locationName:"quickResponseArn" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `locationName:"quickResponseId" type:"string" required:"true"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" min:"1" type:"string"` + + // The status of the quick response data. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"QuickResponseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseData) GoString() string { + return s.String() +} + +// SetChannels sets the Channels field's value. +func (s *QuickResponseData) SetChannels(v []*string) *QuickResponseData { + s.Channels = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *QuickResponseData) SetContentType(v string) *QuickResponseData { + s.ContentType = &v + return s +} + +// SetContents sets the Contents field's value. +func (s *QuickResponseData) SetContents(v *QuickResponseContents) *QuickResponseData { + s.Contents = v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *QuickResponseData) SetCreatedTime(v time.Time) *QuickResponseData { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *QuickResponseData) SetDescription(v string) *QuickResponseData { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *QuickResponseData) SetGroupingConfiguration(v *GroupingConfiguration) *QuickResponseData { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *QuickResponseData) SetIsActive(v bool) *QuickResponseData { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *QuickResponseData) SetKnowledgeBaseArn(v string) *QuickResponseData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *QuickResponseData) SetKnowledgeBaseId(v string) *QuickResponseData { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *QuickResponseData) SetLanguage(v string) *QuickResponseData { + s.Language = &v + return s +} + +// SetLastModifiedBy sets the LastModifiedBy field's value. +func (s *QuickResponseData) SetLastModifiedBy(v string) *QuickResponseData { + s.LastModifiedBy = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickResponseData) SetLastModifiedTime(v time.Time) *QuickResponseData { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseData) SetName(v string) *QuickResponseData { + s.Name = &v + return s +} + +// SetQuickResponseArn sets the QuickResponseArn field's value. +func (s *QuickResponseData) SetQuickResponseArn(v string) *QuickResponseData { + s.QuickResponseArn = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *QuickResponseData) SetQuickResponseId(v string) *QuickResponseData { + s.QuickResponseId = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *QuickResponseData) SetShortcutKey(v string) *QuickResponseData { + s.ShortcutKey = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *QuickResponseData) SetStatus(v string) *QuickResponseData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *QuickResponseData) SetTags(v map[string]*string) *QuickResponseData { + s.Tags = v + return s +} + +// The container of quick response data. +type QuickResponseDataProvider struct { + _ struct{} `type:"structure"` + + // The content of the quick response. + // + // Content is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseDataProvider's + // String and GoString methods. + Content *string `locationName:"content" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseDataProvider) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseDataProvider) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseDataProvider) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseDataProvider"} + if s.Content != nil && len(*s.Content) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Content", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContent sets the Content field's value. +func (s *QuickResponseDataProvider) SetContent(v string) *QuickResponseDataProvider { + s.Content = &v + return s +} + +// The quick response fields to filter the quick response query results by. +// +// The following is the list of supported field names. +// +// - name +// +// - description +// +// - shortcutKey +// +// - isActive +// +// - channels +// +// - language +// +// - contentType +// +// - createdTime +// +// - lastModifiedTime +// +// - lastModifiedBy +// +// - groupingConfiguration.criteria +// +// - groupingConfiguration.values +type QuickResponseFilterField struct { + _ struct{} `type:"structure"` + + // Whether to treat null value as a match for the attribute field. + IncludeNoExistence *bool `locationName:"includeNoExistence" type:"boolean"` + + // The name of the attribute field to filter the quick responses by. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The operator to use for filtering. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"QuickResponseFilterOperator"` + + // The values of attribute field to filter the quick response by. + Values []*string `locationName:"values" 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 QuickResponseFilterField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseFilterField) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseFilterField) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseFilterField"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeNoExistence sets the IncludeNoExistence field's value. +func (s *QuickResponseFilterField) SetIncludeNoExistence(v bool) *QuickResponseFilterField { + s.IncludeNoExistence = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseFilterField) SetName(v string) *QuickResponseFilterField { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *QuickResponseFilterField) SetOperator(v string) *QuickResponseFilterField { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *QuickResponseFilterField) SetValues(v []*string) *QuickResponseFilterField { + s.Values = v + return s +} + +// The quick response fields to order the quick response query results by. +// +// The following is the list of supported field names. +// +// - name +// +// - description +// +// - shortcutKey +// +// - isActive +// +// - channels +// +// - language +// +// - contentType +// +// - createdTime +// +// - lastModifiedTime +// +// - lastModifiedBy +// +// - groupingConfiguration.criteria +// +// - groupingConfiguration.values +type QuickResponseOrderField struct { + _ struct{} `type:"structure"` + + // The name of the attribute to order the quick response query results by. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The order at which the quick responses are sorted by. + Order *string `locationName:"order" type:"string" enum:"Order"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseOrderField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseOrderField) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseOrderField) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseOrderField"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *QuickResponseOrderField) SetName(v string) *QuickResponseOrderField { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *QuickResponseOrderField) SetOrder(v string) *QuickResponseOrderField { + s.Order = &v + return s +} + +// The quick response fields to query quick responses by. +// +// The following is the list of supported field names. +// +// - content +// +// - name +// +// - description +// +// - shortcutKey +type QuickResponseQueryField struct { + _ struct{} `type:"structure"` + + // Whether the query expects only exact matches on the attribute field values. + // The results of the query will only include exact matches if this parameter + // is set to false. + AllowFuzziness *bool `locationName:"allowFuzziness" type:"boolean"` + + // The name of the attribute to query the quick responses by. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The operator to use for matching attribute field values in the query. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"QuickResponseQueryOperator"` + + // The importance of the attribute field when calculating query result relevancy + // scores. The value set for this parameter affects the ordering of search results. + Priority *string `locationName:"priority" type:"string" enum:"Priority"` + + // The values of the attribute to query the quick responses by. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseQueryField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseQueryField) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseQueryField) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseQueryField"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowFuzziness sets the AllowFuzziness field's value. +func (s *QuickResponseQueryField) SetAllowFuzziness(v bool) *QuickResponseQueryField { + s.AllowFuzziness = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseQueryField) SetName(v string) *QuickResponseQueryField { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *QuickResponseQueryField) SetOperator(v string) *QuickResponseQueryField { + s.Operator = &v + return s +} + +// SetPriority sets the Priority field's value. +func (s *QuickResponseQueryField) SetPriority(v string) *QuickResponseQueryField { + s.Priority = &v + return s +} + +// SetValues sets the Values field's value. +func (s *QuickResponseQueryField) SetValues(v []*string) *QuickResponseQueryField { + s.Values = v + return s +} + +// Information about the import job. +type QuickResponseSearchExpression struct { + _ struct{} `type:"structure"` + + // The configuration of filtering rules applied to quick response query results. + Filters []*QuickResponseFilterField `locationName:"filters" type:"list"` + + // The quick response attribute fields on which the query results are ordered. + OrderOnField *QuickResponseOrderField `locationName:"orderOnField" type:"structure"` + + // The quick response query expressions. + Queries []*QuickResponseQueryField `locationName:"queries" 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 QuickResponseSearchExpression) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSearchExpression) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseSearchExpression) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseSearchExpression"} + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OrderOnField != nil { + if err := s.OrderOnField.Validate(); err != nil { + invalidParams.AddNested("OrderOnField", err.(request.ErrInvalidParams)) + } + } + if s.Queries != nil { + for i, v := range s.Queries { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Queries", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *QuickResponseSearchExpression) SetFilters(v []*QuickResponseFilterField) *QuickResponseSearchExpression { + s.Filters = v + return s +} + +// SetOrderOnField sets the OrderOnField field's value. +func (s *QuickResponseSearchExpression) SetOrderOnField(v *QuickResponseOrderField) *QuickResponseSearchExpression { + s.OrderOnField = v + return s +} + +// SetQueries sets the Queries field's value. +func (s *QuickResponseSearchExpression) SetQueries(v []*QuickResponseQueryField) *QuickResponseSearchExpression { + s.Queries = v + return s +} + +// The result of quick response search. +type QuickResponseSearchResultData struct { + _ struct{} `type:"structure"` + + // The user defined contact attributes that are resolved when the search result + // is returned. + // + // AttributesInterpolated is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseSearchResultData's + // String and GoString methods. + AttributesInterpolated []*string `locationName:"attributesInterpolated" type:"list" sensitive:"true"` + + // The user defined contact attributes that are not resolved when the search + // result is returned. + // + // AttributesNotInterpolated is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseSearchResultData's + // String and GoString methods. + AttributesNotInterpolated []*string `locationName:"attributesNotInterpolated" type:"list" sensitive:"true"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The contents of the quick response. + // + // Contents is a required field + Contents *QuickResponseContents `locationName:"contents" type:"structure" required:"true"` + + // The timestamp when the quick response was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information of the user groups that the quick response + // is accessible to. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + // + // IsActive is a required field + IsActive *bool `locationName:"isActive" type:"boolean" required:"true"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + Language *string `locationName:"language" min:"2" type:"string"` + + // The Amazon Resource Name (ARN) of the user who last updated the quick response + // search result data. + LastModifiedBy *string `locationName:"lastModifiedBy" min:"1" type:"string"` + + // The timestamp when the quick response search result data was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the quick response. + // + // QuickResponseArn is a required field + QuickResponseArn *string `locationName:"quickResponseArn" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `locationName:"quickResponseId" type:"string" required:"true"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" min:"1" type:"string"` + + // The resource status of the quick response. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"QuickResponseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSearchResultData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSearchResultData) GoString() string { + return s.String() +} + +// SetAttributesInterpolated sets the AttributesInterpolated field's value. +func (s *QuickResponseSearchResultData) SetAttributesInterpolated(v []*string) *QuickResponseSearchResultData { + s.AttributesInterpolated = v + return s +} + +// SetAttributesNotInterpolated sets the AttributesNotInterpolated field's value. +func (s *QuickResponseSearchResultData) SetAttributesNotInterpolated(v []*string) *QuickResponseSearchResultData { + s.AttributesNotInterpolated = v + return s +} + +// SetChannels sets the Channels field's value. +func (s *QuickResponseSearchResultData) SetChannels(v []*string) *QuickResponseSearchResultData { + s.Channels = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *QuickResponseSearchResultData) SetContentType(v string) *QuickResponseSearchResultData { + s.ContentType = &v + return s +} + +// SetContents sets the Contents field's value. +func (s *QuickResponseSearchResultData) SetContents(v *QuickResponseContents) *QuickResponseSearchResultData { + s.Contents = v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *QuickResponseSearchResultData) SetCreatedTime(v time.Time) *QuickResponseSearchResultData { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *QuickResponseSearchResultData) SetDescription(v string) *QuickResponseSearchResultData { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *QuickResponseSearchResultData) SetGroupingConfiguration(v *GroupingConfiguration) *QuickResponseSearchResultData { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *QuickResponseSearchResultData) SetIsActive(v bool) *QuickResponseSearchResultData { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *QuickResponseSearchResultData) SetKnowledgeBaseArn(v string) *QuickResponseSearchResultData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *QuickResponseSearchResultData) SetKnowledgeBaseId(v string) *QuickResponseSearchResultData { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *QuickResponseSearchResultData) SetLanguage(v string) *QuickResponseSearchResultData { + s.Language = &v + return s +} + +// SetLastModifiedBy sets the LastModifiedBy field's value. +func (s *QuickResponseSearchResultData) SetLastModifiedBy(v string) *QuickResponseSearchResultData { + s.LastModifiedBy = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickResponseSearchResultData) SetLastModifiedTime(v time.Time) *QuickResponseSearchResultData { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseSearchResultData) SetName(v string) *QuickResponseSearchResultData { + s.Name = &v + return s +} + +// SetQuickResponseArn sets the QuickResponseArn field's value. +func (s *QuickResponseSearchResultData) SetQuickResponseArn(v string) *QuickResponseSearchResultData { + s.QuickResponseArn = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *QuickResponseSearchResultData) SetQuickResponseId(v string) *QuickResponseSearchResultData { + s.QuickResponseId = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *QuickResponseSearchResultData) SetShortcutKey(v string) *QuickResponseSearchResultData { + s.ShortcutKey = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *QuickResponseSearchResultData) SetStatus(v string) *QuickResponseSearchResultData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *QuickResponseSearchResultData) SetTags(v map[string]*string) *QuickResponseSearchResultData { + s.Tags = v + return s +} + +// The summary information about the quick response. +type QuickResponseSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The timestamp when the quick response was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the user who last updated the quick response + // data. + LastModifiedBy *string `locationName:"lastModifiedBy" min:"1" type:"string"` + + // The timestamp when the quick response summary was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the quick response. + // + // QuickResponseArn is a required field + QuickResponseArn *string `locationName:"quickResponseArn" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `locationName:"quickResponseId" type:"string" required:"true"` + + // The resource status of the quick response. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"QuickResponseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSummary) GoString() string { + return s.String() +} + +// SetChannels sets the Channels field's value. +func (s *QuickResponseSummary) SetChannels(v []*string) *QuickResponseSummary { + s.Channels = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *QuickResponseSummary) SetContentType(v string) *QuickResponseSummary { + s.ContentType = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *QuickResponseSummary) SetCreatedTime(v time.Time) *QuickResponseSummary { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *QuickResponseSummary) SetDescription(v string) *QuickResponseSummary { + s.Description = &v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *QuickResponseSummary) SetIsActive(v bool) *QuickResponseSummary { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *QuickResponseSummary) SetKnowledgeBaseArn(v string) *QuickResponseSummary { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *QuickResponseSummary) SetKnowledgeBaseId(v string) *QuickResponseSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetLastModifiedBy sets the LastModifiedBy field's value. +func (s *QuickResponseSummary) SetLastModifiedBy(v string) *QuickResponseSummary { + s.LastModifiedBy = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickResponseSummary) SetLastModifiedTime(v time.Time) *QuickResponseSummary { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseSummary) SetName(v string) *QuickResponseSummary { + s.Name = &v + return s +} + +// SetQuickResponseArn sets the QuickResponseArn field's value. +func (s *QuickResponseSummary) SetQuickResponseArn(v string) *QuickResponseSummary { + s.QuickResponseArn = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *QuickResponseSummary) SetQuickResponseId(v string) *QuickResponseSummary { + s.QuickResponseId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *QuickResponseSummary) SetStatus(v string) *QuickResponseSummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *QuickResponseSummary) SetTags(v map[string]*string) *QuickResponseSummary { + s.Tags = v + return s +} + // Information about the recommendation. type RecommendationData struct { _ struct{} `type:"structure"` @@ -7670,8 +11344,9 @@ type RemoveKnowledgeBaseTemplateUriInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -7797,6 +11472,73 @@ return s } +// The request reached the service more than 15 minutes after the date stamp +// on the request or more than 15 minutes after the request expiration date +// (such as for pre-signed URLs), or the date stamp on the request is more than +// 15 minutes in the future. +type RequestTimeoutException 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 RequestTimeoutException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestTimeoutException) GoString() string { + return s.String() +} + +func newErrorRequestTimeoutException(v protocol.ResponseMetadata) error { + return &RequestTimeoutException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *RequestTimeoutException) Code() string { + return "RequestTimeoutException" +} + +// Message returns the exception's message. +func (s *RequestTimeoutException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *RequestTimeoutException) OrigErr() error { + return nil +} + +func (s *RequestTimeoutException) 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 *RequestTimeoutException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *RequestTimeoutException) RequestID() string { + return s.RespMetadata.RequestID +} + // The specified resource does not exist. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -7921,8 +11663,9 @@ type SearchContentInput struct { _ struct{} `type:"structure"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -8111,6 +11854,158 @@ return s } +type SearchQuickResponsesInput struct { + _ struct{} `type:"structure"` + + // The user-defined Amazon Connect contact attributes (https://docs.aws.amazon.com/connect/latest/adminguide/connect-attrib-list.html#user-defined-attributes) + // to be resolved when search results are returned. + // + // Attributes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchQuickResponsesInput's + // String and GoString methods. + Attributes map[string]*string `locationName:"attributes" type:"map" sensitive:"true"` + + // The identifier of the knowledge base. This should be a QUICK_RESPONSES type + // knowledge base. Can be either the ID or the ARN. URLs cannot contain the + // ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The search expression for querying the quick response. + // + // SearchExpression is a required field + SearchExpression *QuickResponseSearchExpression `locationName:"searchExpression" 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 SearchQuickResponsesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchQuickResponsesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchQuickResponsesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchQuickResponsesInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchExpression == nil { + invalidParams.Add(request.NewErrParamRequired("SearchExpression")) + } + if s.SearchExpression != nil { + if err := s.SearchExpression.Validate(); err != nil { + invalidParams.AddNested("SearchExpression", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributes sets the Attributes field's value. +func (s *SearchQuickResponsesInput) SetAttributes(v map[string]*string) *SearchQuickResponsesInput { + s.Attributes = v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *SearchQuickResponsesInput) SetKnowledgeBaseId(v string) *SearchQuickResponsesInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchQuickResponsesInput) SetMaxResults(v int64) *SearchQuickResponsesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchQuickResponsesInput) SetNextToken(v string) *SearchQuickResponsesInput { + s.NextToken = &v + return s +} + +// SetSearchExpression sets the SearchExpression field's value. +func (s *SearchQuickResponsesInput) SetSearchExpression(v *QuickResponseSearchExpression) *SearchQuickResponsesInput { + s.SearchExpression = v + return s +} + +type SearchQuickResponsesOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The results of the quick response search. + // + // Results is a required field + Results []*QuickResponseSearchResultData `locationName:"results" 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 SearchQuickResponsesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchQuickResponsesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchQuickResponsesOutput) SetNextToken(v string) *SearchQuickResponsesOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *SearchQuickResponsesOutput) SetResults(v []*QuickResponseSearchResultData) *SearchQuickResponsesOutput { + s.Results = v + return s +} + type SearchSessionsInput struct { _ struct{} `type:"structure"` @@ -8247,12 +12142,14 @@ return s } -// The KMS key used for encryption. +// The configuration information for the customer managed key used for encryption. type ServerSideEncryptionConfiguration struct { _ struct{} `type:"structure"` - // The KMS key. For information about valid ID values, see Key identifiers (KeyId) - // (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id). + // The customer managed key used for encryption. For more information about + // setting up a customer managed key for Wisdom, see Enable Amazon Connect Wisdom + // for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-wisdom.html). + // For information about valid ID values, see Key identifiers (KeyId) (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id). KmsKeyId *string `locationName:"kmsKeyId" min:"1" type:"string"` } @@ -8598,11 +12495,16 @@ // ContentType is a required field ContentType *string `locationName:"contentType" type:"string" required:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The expected expiration time of the generated presigned URL, specified in + // minutes. + PresignedUrlTimeToLive *int64 `locationName:"presignedUrlTimeToLive" min:"1" type:"integer"` } // String returns the string representation. @@ -8635,6 +12537,9 @@ if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) } + if s.PresignedUrlTimeToLive != nil && *s.PresignedUrlTimeToLive < 1 { + invalidParams.Add(request.NewErrParamMinValue("PresignedUrlTimeToLive", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -8654,6 +12559,12 @@ return s } +// SetPresignedUrlTimeToLive sets the PresignedUrlTimeToLive field's value. +func (s *StartContentUploadInput) SetPresignedUrlTimeToLive(v int64) *StartContentUploadInput { + s.PresignedUrlTimeToLive = &v + return s +} + type StartContentUploadOutput struct { _ struct{} `type:"structure"` @@ -8724,6 +12635,161 @@ return s } +type StartImportJobInput struct { + _ struct{} `type:"structure"` + + // The tags used to organize, track, or control access for this resource. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The configuration information of the external source that the resource data + // are imported from. + ExternalSourceConfiguration *ExternalSourceConfiguration `locationName:"externalSourceConfiguration" type:"structure"` + + // The type of the import job. + // + // * For importing quick response resource, set the value to QUICK_RESPONSES. + // + // ImportJobType is a required field + ImportJobType *string `locationName:"importJobType" type:"string" required:"true" enum:"ImportJobType"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // * For importing Wisdom quick responses, this should be a QUICK_RESPONSES + // type knowledge base. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The metadata fields of the imported Wisdom resources. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" 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 StartImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartImportJobInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ImportJobType == nil { + invalidParams.Add(request.NewErrParamRequired("ImportJobType")) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.UploadId == nil { + invalidParams.Add(request.NewErrParamRequired("UploadId")) + } + if s.UploadId != nil && len(*s.UploadId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) + } + if s.ExternalSourceConfiguration != nil { + if err := s.ExternalSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("ExternalSourceConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartImportJobInput) SetClientToken(v string) *StartImportJobInput { + s.ClientToken = &v + return s +} + +// SetExternalSourceConfiguration sets the ExternalSourceConfiguration field's value. +func (s *StartImportJobInput) SetExternalSourceConfiguration(v *ExternalSourceConfiguration) *StartImportJobInput { + s.ExternalSourceConfiguration = v + return s +} + +// SetImportJobType sets the ImportJobType field's value. +func (s *StartImportJobInput) SetImportJobType(v string) *StartImportJobInput { + s.ImportJobType = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *StartImportJobInput) SetKnowledgeBaseId(v string) *StartImportJobInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *StartImportJobInput) SetMetadata(v map[string]*string) *StartImportJobInput { + s.Metadata = v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *StartImportJobInput) SetUploadId(v string) *StartImportJobInput { + s.UploadId = &v + return s +} + +type StartImportJobOutput struct { + _ struct{} `type:"structure"` + + // The import job. + ImportJob *ImportJobData `locationName:"importJob" 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 StartImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartImportJobOutput) GoString() string { + return s.String() +} + +// SetImportJob sets the ImportJob field's value. +func (s *StartImportJobOutput) SetImportJob(v *ImportJobData) *StartImportJobOutput { + s.ImportJob = v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -8974,7 +13040,9 @@ // ContentId is a required field ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` - // The identifier of the knowledge base. Can be either the ID or the ARN + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -9142,8 +13210,9 @@ type UpdateKnowledgeBaseTemplateUriInput struct { _ struct{} `type:"structure"` - // The identifier of the knowledge base. Can be either the ID or the ARN. URLs - // cannot contain the ARN. + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. // // KnowledgeBaseId is a required field KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` @@ -9237,6 +13306,245 @@ return s } +type UpdateQuickResponseInput struct { + _ struct{} `type:"structure"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The updated content of the quick response. + Content *QuickResponseDataProvider `locationName:"content" type:"structure"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + ContentType *string `locationName:"contentType" type:"string"` + + // The updated description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The updated grouping configuration of the quick response. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Wisdom Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + // The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, + // ja_JP, ko_KR, pt_BR, zh_CN, zh_TW + Language *string `locationName:"language" min:"2" type:"string"` + + // The name of the quick response. + Name *string `locationName:"name" min:"1" type:"string"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `location:"uri" locationName:"quickResponseId" type:"string" required:"true"` + + // Whether to remove the description from the quick response. + RemoveDescription *bool `locationName:"removeDescription" type:"boolean"` + + // Whether to remove the grouping configuration of the quick response. + RemoveGroupingConfiguration *bool `locationName:"removeGroupingConfiguration" type:"boolean"` + + // Whether to remove the shortcut key of the quick response. + RemoveShortcutKey *bool `locationName:"removeShortcutKey" type:"boolean"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" 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 UpdateQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateQuickResponseInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Language != nil && len(*s.Language) < 2 { + invalidParams.Add(request.NewErrParamMinLen("Language", 2)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.QuickResponseId == nil { + invalidParams.Add(request.NewErrParamRequired("QuickResponseId")) + } + if s.QuickResponseId != nil && len(*s.QuickResponseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuickResponseId", 1)) + } + if s.ShortcutKey != nil && len(*s.ShortcutKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShortcutKey", 1)) + } + if s.Content != nil { + if err := s.Content.Validate(); err != nil { + invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) + } + } + if s.GroupingConfiguration != nil { + if err := s.GroupingConfiguration.Validate(); err != nil { + invalidParams.AddNested("GroupingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannels sets the Channels field's value. +func (s *UpdateQuickResponseInput) SetChannels(v []*string) *UpdateQuickResponseInput { + s.Channels = v + return s +} + +// SetContent sets the Content field's value. +func (s *UpdateQuickResponseInput) SetContent(v *QuickResponseDataProvider) *UpdateQuickResponseInput { + s.Content = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *UpdateQuickResponseInput) SetContentType(v string) *UpdateQuickResponseInput { + s.ContentType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateQuickResponseInput) SetDescription(v string) *UpdateQuickResponseInput { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *UpdateQuickResponseInput) SetGroupingConfiguration(v *GroupingConfiguration) *UpdateQuickResponseInput { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *UpdateQuickResponseInput) SetIsActive(v bool) *UpdateQuickResponseInput { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateQuickResponseInput) SetKnowledgeBaseId(v string) *UpdateQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *UpdateQuickResponseInput) SetLanguage(v string) *UpdateQuickResponseInput { + s.Language = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateQuickResponseInput) SetName(v string) *UpdateQuickResponseInput { + s.Name = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *UpdateQuickResponseInput) SetQuickResponseId(v string) *UpdateQuickResponseInput { + s.QuickResponseId = &v + return s +} + +// SetRemoveDescription sets the RemoveDescription field's value. +func (s *UpdateQuickResponseInput) SetRemoveDescription(v bool) *UpdateQuickResponseInput { + s.RemoveDescription = &v + return s +} + +// SetRemoveGroupingConfiguration sets the RemoveGroupingConfiguration field's value. +func (s *UpdateQuickResponseInput) SetRemoveGroupingConfiguration(v bool) *UpdateQuickResponseInput { + s.RemoveGroupingConfiguration = &v + return s +} + +// SetRemoveShortcutKey sets the RemoveShortcutKey field's value. +func (s *UpdateQuickResponseInput) SetRemoveShortcutKey(v bool) *UpdateQuickResponseInput { + s.RemoveShortcutKey = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *UpdateQuickResponseInput) SetShortcutKey(v string) *UpdateQuickResponseInput { + s.ShortcutKey = &v + return s +} + +type UpdateQuickResponseOutput struct { + _ struct{} `type:"structure"` + + // The quick response. + QuickResponse *QuickResponseData `locationName:"quickResponse" 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 UpdateQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateQuickResponseOutput) GoString() string { + return s.String() +} + +// SetQuickResponse sets the QuickResponse field's value. +func (s *UpdateQuickResponseOutput) SetQuickResponse(v *QuickResponseData) *UpdateQuickResponseOutput { + s.QuickResponse = v + return s +} + // The input fails to satisfy the constraints specified by a service. type ValidationException struct { _ struct{} `type:"structure"` @@ -9394,6 +13702,18 @@ } const ( + // ExternalSourceAmazonConnect is a ExternalSource enum value + ExternalSourceAmazonConnect = "AMAZON_CONNECT" +) + +// ExternalSource_Values returns all elements of the ExternalSource enum +func ExternalSource_Values() []string { + return []string{ + ExternalSourceAmazonConnect, + } +} + +const ( // FilterFieldName is a FilterField enum value FilterFieldName = "NAME" ) @@ -9418,6 +13738,50 @@ } const ( + // ImportJobStatusStartInProgress is a ImportJobStatus enum value + ImportJobStatusStartInProgress = "START_IN_PROGRESS" + + // ImportJobStatusFailed is a ImportJobStatus enum value + ImportJobStatusFailed = "FAILED" + + // ImportJobStatusComplete is a ImportJobStatus enum value + ImportJobStatusComplete = "COMPLETE" + + // ImportJobStatusDeleteInProgress is a ImportJobStatus enum value + ImportJobStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // ImportJobStatusDeleteFailed is a ImportJobStatus enum value + ImportJobStatusDeleteFailed = "DELETE_FAILED" + + // ImportJobStatusDeleted is a ImportJobStatus enum value + ImportJobStatusDeleted = "DELETED" +) + +// ImportJobStatus_Values returns all elements of the ImportJobStatus enum +func ImportJobStatus_Values() []string { + return []string{ + ImportJobStatusStartInProgress, + ImportJobStatusFailed, + ImportJobStatusComplete, + ImportJobStatusDeleteInProgress, + ImportJobStatusDeleteFailed, + ImportJobStatusDeleted, + } +} + +const ( + // ImportJobTypeQuickResponses is a ImportJobType enum value + ImportJobTypeQuickResponses = "QUICK_RESPONSES" +) + +// ImportJobType_Values returns all elements of the ImportJobType enum +func ImportJobType_Values() []string { + return []string{ + ImportJobTypeQuickResponses, + } +} + +const ( // KnowledgeBaseStatusCreateInProgress is a KnowledgeBaseStatus enum value KnowledgeBaseStatusCreateInProgress = "CREATE_IN_PROGRESS" @@ -9455,6 +13819,9 @@ // KnowledgeBaseTypeCustom is a KnowledgeBaseType enum value KnowledgeBaseTypeCustom = "CUSTOM" + + // KnowledgeBaseTypeQuickResponses is a KnowledgeBaseType enum value + KnowledgeBaseTypeQuickResponses = "QUICK_RESPONSES" ) // KnowledgeBaseType_Values returns all elements of the KnowledgeBaseType enum @@ -9462,6 +13829,115 @@ return []string{ KnowledgeBaseTypeExternal, KnowledgeBaseTypeCustom, + KnowledgeBaseTypeQuickResponses, + } +} + +const ( + // OrderAsc is a Order enum value + OrderAsc = "ASC" + + // OrderDesc is a Order enum value + OrderDesc = "DESC" +) + +// Order_Values returns all elements of the Order enum +func Order_Values() []string { + return []string{ + OrderAsc, + OrderDesc, + } +} + +const ( + // PriorityHigh is a Priority enum value + PriorityHigh = "HIGH" + + // PriorityMedium is a Priority enum value + PriorityMedium = "MEDIUM" + + // PriorityLow is a Priority enum value + PriorityLow = "LOW" +) + +// Priority_Values returns all elements of the Priority enum +func Priority_Values() []string { + return []string{ + PriorityHigh, + PriorityMedium, + PriorityLow, + } +} + +const ( + // QuickResponseFilterOperatorEquals is a QuickResponseFilterOperator enum value + QuickResponseFilterOperatorEquals = "EQUALS" + + // QuickResponseFilterOperatorPrefix is a QuickResponseFilterOperator enum value + QuickResponseFilterOperatorPrefix = "PREFIX" +) + +// QuickResponseFilterOperator_Values returns all elements of the QuickResponseFilterOperator enum +func QuickResponseFilterOperator_Values() []string { + return []string{ + QuickResponseFilterOperatorEquals, + QuickResponseFilterOperatorPrefix, + } +} + +const ( + // QuickResponseQueryOperatorContains is a QuickResponseQueryOperator enum value + QuickResponseQueryOperatorContains = "CONTAINS" + + // QuickResponseQueryOperatorContainsAndPrefix is a QuickResponseQueryOperator enum value + QuickResponseQueryOperatorContainsAndPrefix = "CONTAINS_AND_PREFIX" +) + +// QuickResponseQueryOperator_Values returns all elements of the QuickResponseQueryOperator enum +func QuickResponseQueryOperator_Values() []string { + return []string{ + QuickResponseQueryOperatorContains, + QuickResponseQueryOperatorContainsAndPrefix, + } +} + +const ( + // QuickResponseStatusCreateInProgress is a QuickResponseStatus enum value + QuickResponseStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // QuickResponseStatusCreateFailed is a QuickResponseStatus enum value + QuickResponseStatusCreateFailed = "CREATE_FAILED" + + // QuickResponseStatusCreated is a QuickResponseStatus enum value + QuickResponseStatusCreated = "CREATED" + + // QuickResponseStatusDeleteInProgress is a QuickResponseStatus enum value + QuickResponseStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // QuickResponseStatusDeleteFailed is a QuickResponseStatus enum value + QuickResponseStatusDeleteFailed = "DELETE_FAILED" + + // QuickResponseStatusDeleted is a QuickResponseStatus enum value + QuickResponseStatusDeleted = "DELETED" + + // QuickResponseStatusUpdateInProgress is a QuickResponseStatus enum value + QuickResponseStatusUpdateInProgress = "UPDATE_IN_PROGRESS" + + // QuickResponseStatusUpdateFailed is a QuickResponseStatus enum value + QuickResponseStatusUpdateFailed = "UPDATE_FAILED" +) + +// QuickResponseStatus_Values returns all elements of the QuickResponseStatus enum +func QuickResponseStatus_Values() []string { + return []string{ + QuickResponseStatusCreateInProgress, + QuickResponseStatusCreateFailed, + QuickResponseStatusCreated, + QuickResponseStatusDeleteInProgress, + QuickResponseStatusDeleteFailed, + QuickResponseStatusDeleted, + QuickResponseStatusUpdateInProgress, + QuickResponseStatusUpdateFailed, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connectwisdomservice/connectwisdomserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/connectwisdomservice/connectwisdomserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connectwisdomservice/connectwisdomserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connectwisdomservice/connectwisdomserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -76,6 +76,10 @@ CreateKnowledgeBaseWithContext(aws.Context, *connectwisdomservice.CreateKnowledgeBaseInput, ...request.Option) (*connectwisdomservice.CreateKnowledgeBaseOutput, error) CreateKnowledgeBaseRequest(*connectwisdomservice.CreateKnowledgeBaseInput) (*request.Request, *connectwisdomservice.CreateKnowledgeBaseOutput) + CreateQuickResponse(*connectwisdomservice.CreateQuickResponseInput) (*connectwisdomservice.CreateQuickResponseOutput, error) + CreateQuickResponseWithContext(aws.Context, *connectwisdomservice.CreateQuickResponseInput, ...request.Option) (*connectwisdomservice.CreateQuickResponseOutput, error) + CreateQuickResponseRequest(*connectwisdomservice.CreateQuickResponseInput) (*request.Request, *connectwisdomservice.CreateQuickResponseOutput) + CreateSession(*connectwisdomservice.CreateSessionInput) (*connectwisdomservice.CreateSessionOutput, error) CreateSessionWithContext(aws.Context, *connectwisdomservice.CreateSessionInput, ...request.Option) (*connectwisdomservice.CreateSessionOutput, error) CreateSessionRequest(*connectwisdomservice.CreateSessionInput) (*request.Request, *connectwisdomservice.CreateSessionOutput) @@ -92,10 +96,18 @@ DeleteContentWithContext(aws.Context, *connectwisdomservice.DeleteContentInput, ...request.Option) (*connectwisdomservice.DeleteContentOutput, error) DeleteContentRequest(*connectwisdomservice.DeleteContentInput) (*request.Request, *connectwisdomservice.DeleteContentOutput) + DeleteImportJob(*connectwisdomservice.DeleteImportJobInput) (*connectwisdomservice.DeleteImportJobOutput, error) + DeleteImportJobWithContext(aws.Context, *connectwisdomservice.DeleteImportJobInput, ...request.Option) (*connectwisdomservice.DeleteImportJobOutput, error) + DeleteImportJobRequest(*connectwisdomservice.DeleteImportJobInput) (*request.Request, *connectwisdomservice.DeleteImportJobOutput) + DeleteKnowledgeBase(*connectwisdomservice.DeleteKnowledgeBaseInput) (*connectwisdomservice.DeleteKnowledgeBaseOutput, error) DeleteKnowledgeBaseWithContext(aws.Context, *connectwisdomservice.DeleteKnowledgeBaseInput, ...request.Option) (*connectwisdomservice.DeleteKnowledgeBaseOutput, error) DeleteKnowledgeBaseRequest(*connectwisdomservice.DeleteKnowledgeBaseInput) (*request.Request, *connectwisdomservice.DeleteKnowledgeBaseOutput) + DeleteQuickResponse(*connectwisdomservice.DeleteQuickResponseInput) (*connectwisdomservice.DeleteQuickResponseOutput, error) + DeleteQuickResponseWithContext(aws.Context, *connectwisdomservice.DeleteQuickResponseInput, ...request.Option) (*connectwisdomservice.DeleteQuickResponseOutput, error) + DeleteQuickResponseRequest(*connectwisdomservice.DeleteQuickResponseInput) (*request.Request, *connectwisdomservice.DeleteQuickResponseOutput) + GetAssistant(*connectwisdomservice.GetAssistantInput) (*connectwisdomservice.GetAssistantOutput, error) GetAssistantWithContext(aws.Context, *connectwisdomservice.GetAssistantInput, ...request.Option) (*connectwisdomservice.GetAssistantOutput, error) GetAssistantRequest(*connectwisdomservice.GetAssistantInput) (*request.Request, *connectwisdomservice.GetAssistantOutput) @@ -112,10 +124,18 @@ GetContentSummaryWithContext(aws.Context, *connectwisdomservice.GetContentSummaryInput, ...request.Option) (*connectwisdomservice.GetContentSummaryOutput, error) GetContentSummaryRequest(*connectwisdomservice.GetContentSummaryInput) (*request.Request, *connectwisdomservice.GetContentSummaryOutput) + GetImportJob(*connectwisdomservice.GetImportJobInput) (*connectwisdomservice.GetImportJobOutput, error) + GetImportJobWithContext(aws.Context, *connectwisdomservice.GetImportJobInput, ...request.Option) (*connectwisdomservice.GetImportJobOutput, error) + GetImportJobRequest(*connectwisdomservice.GetImportJobInput) (*request.Request, *connectwisdomservice.GetImportJobOutput) + GetKnowledgeBase(*connectwisdomservice.GetKnowledgeBaseInput) (*connectwisdomservice.GetKnowledgeBaseOutput, error) GetKnowledgeBaseWithContext(aws.Context, *connectwisdomservice.GetKnowledgeBaseInput, ...request.Option) (*connectwisdomservice.GetKnowledgeBaseOutput, error) GetKnowledgeBaseRequest(*connectwisdomservice.GetKnowledgeBaseInput) (*request.Request, *connectwisdomservice.GetKnowledgeBaseOutput) + GetQuickResponse(*connectwisdomservice.GetQuickResponseInput) (*connectwisdomservice.GetQuickResponseOutput, error) + GetQuickResponseWithContext(aws.Context, *connectwisdomservice.GetQuickResponseInput, ...request.Option) (*connectwisdomservice.GetQuickResponseOutput, error) + GetQuickResponseRequest(*connectwisdomservice.GetQuickResponseInput) (*request.Request, *connectwisdomservice.GetQuickResponseOutput) + GetRecommendations(*connectwisdomservice.GetRecommendationsInput) (*connectwisdomservice.GetRecommendationsOutput, error) GetRecommendationsWithContext(aws.Context, *connectwisdomservice.GetRecommendationsInput, ...request.Option) (*connectwisdomservice.GetRecommendationsOutput, error) GetRecommendationsRequest(*connectwisdomservice.GetRecommendationsInput) (*request.Request, *connectwisdomservice.GetRecommendationsOutput) @@ -145,6 +165,13 @@ ListContentsPages(*connectwisdomservice.ListContentsInput, func(*connectwisdomservice.ListContentsOutput, bool) bool) error ListContentsPagesWithContext(aws.Context, *connectwisdomservice.ListContentsInput, func(*connectwisdomservice.ListContentsOutput, bool) bool, ...request.Option) error + ListImportJobs(*connectwisdomservice.ListImportJobsInput) (*connectwisdomservice.ListImportJobsOutput, error) + ListImportJobsWithContext(aws.Context, *connectwisdomservice.ListImportJobsInput, ...request.Option) (*connectwisdomservice.ListImportJobsOutput, error) + ListImportJobsRequest(*connectwisdomservice.ListImportJobsInput) (*request.Request, *connectwisdomservice.ListImportJobsOutput) + + ListImportJobsPages(*connectwisdomservice.ListImportJobsInput, func(*connectwisdomservice.ListImportJobsOutput, bool) bool) error + ListImportJobsPagesWithContext(aws.Context, *connectwisdomservice.ListImportJobsInput, func(*connectwisdomservice.ListImportJobsOutput, bool) bool, ...request.Option) error + ListKnowledgeBases(*connectwisdomservice.ListKnowledgeBasesInput) (*connectwisdomservice.ListKnowledgeBasesOutput, error) ListKnowledgeBasesWithContext(aws.Context, *connectwisdomservice.ListKnowledgeBasesInput, ...request.Option) (*connectwisdomservice.ListKnowledgeBasesOutput, error) ListKnowledgeBasesRequest(*connectwisdomservice.ListKnowledgeBasesInput) (*request.Request, *connectwisdomservice.ListKnowledgeBasesOutput) @@ -152,6 +179,13 @@ ListKnowledgeBasesPages(*connectwisdomservice.ListKnowledgeBasesInput, func(*connectwisdomservice.ListKnowledgeBasesOutput, bool) bool) error ListKnowledgeBasesPagesWithContext(aws.Context, *connectwisdomservice.ListKnowledgeBasesInput, func(*connectwisdomservice.ListKnowledgeBasesOutput, bool) bool, ...request.Option) error + ListQuickResponses(*connectwisdomservice.ListQuickResponsesInput) (*connectwisdomservice.ListQuickResponsesOutput, error) + ListQuickResponsesWithContext(aws.Context, *connectwisdomservice.ListQuickResponsesInput, ...request.Option) (*connectwisdomservice.ListQuickResponsesOutput, error) + ListQuickResponsesRequest(*connectwisdomservice.ListQuickResponsesInput) (*request.Request, *connectwisdomservice.ListQuickResponsesOutput) + + ListQuickResponsesPages(*connectwisdomservice.ListQuickResponsesInput, func(*connectwisdomservice.ListQuickResponsesOutput, bool) bool) error + ListQuickResponsesPagesWithContext(aws.Context, *connectwisdomservice.ListQuickResponsesInput, func(*connectwisdomservice.ListQuickResponsesOutput, bool) bool, ...request.Option) error + ListTagsForResource(*connectwisdomservice.ListTagsForResourceInput) (*connectwisdomservice.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *connectwisdomservice.ListTagsForResourceInput, ...request.Option) (*connectwisdomservice.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*connectwisdomservice.ListTagsForResourceInput) (*request.Request, *connectwisdomservice.ListTagsForResourceOutput) @@ -178,6 +212,13 @@ SearchContentPages(*connectwisdomservice.SearchContentInput, func(*connectwisdomservice.SearchContentOutput, bool) bool) error SearchContentPagesWithContext(aws.Context, *connectwisdomservice.SearchContentInput, func(*connectwisdomservice.SearchContentOutput, bool) bool, ...request.Option) error + SearchQuickResponses(*connectwisdomservice.SearchQuickResponsesInput) (*connectwisdomservice.SearchQuickResponsesOutput, error) + SearchQuickResponsesWithContext(aws.Context, *connectwisdomservice.SearchQuickResponsesInput, ...request.Option) (*connectwisdomservice.SearchQuickResponsesOutput, error) + SearchQuickResponsesRequest(*connectwisdomservice.SearchQuickResponsesInput) (*request.Request, *connectwisdomservice.SearchQuickResponsesOutput) + + SearchQuickResponsesPages(*connectwisdomservice.SearchQuickResponsesInput, func(*connectwisdomservice.SearchQuickResponsesOutput, bool) bool) error + SearchQuickResponsesPagesWithContext(aws.Context, *connectwisdomservice.SearchQuickResponsesInput, func(*connectwisdomservice.SearchQuickResponsesOutput, bool) bool, ...request.Option) error + SearchSessions(*connectwisdomservice.SearchSessionsInput) (*connectwisdomservice.SearchSessionsOutput, error) SearchSessionsWithContext(aws.Context, *connectwisdomservice.SearchSessionsInput, ...request.Option) (*connectwisdomservice.SearchSessionsOutput, error) SearchSessionsRequest(*connectwisdomservice.SearchSessionsInput) (*request.Request, *connectwisdomservice.SearchSessionsOutput) @@ -189,6 +230,10 @@ StartContentUploadWithContext(aws.Context, *connectwisdomservice.StartContentUploadInput, ...request.Option) (*connectwisdomservice.StartContentUploadOutput, error) StartContentUploadRequest(*connectwisdomservice.StartContentUploadInput) (*request.Request, *connectwisdomservice.StartContentUploadOutput) + StartImportJob(*connectwisdomservice.StartImportJobInput) (*connectwisdomservice.StartImportJobOutput, error) + StartImportJobWithContext(aws.Context, *connectwisdomservice.StartImportJobInput, ...request.Option) (*connectwisdomservice.StartImportJobOutput, error) + StartImportJobRequest(*connectwisdomservice.StartImportJobInput) (*request.Request, *connectwisdomservice.StartImportJobOutput) + TagResource(*connectwisdomservice.TagResourceInput) (*connectwisdomservice.TagResourceOutput, error) TagResourceWithContext(aws.Context, *connectwisdomservice.TagResourceInput, ...request.Option) (*connectwisdomservice.TagResourceOutput, error) TagResourceRequest(*connectwisdomservice.TagResourceInput) (*request.Request, *connectwisdomservice.TagResourceOutput) @@ -204,6 +249,10 @@ UpdateKnowledgeBaseTemplateUri(*connectwisdomservice.UpdateKnowledgeBaseTemplateUriInput) (*connectwisdomservice.UpdateKnowledgeBaseTemplateUriOutput, error) UpdateKnowledgeBaseTemplateUriWithContext(aws.Context, *connectwisdomservice.UpdateKnowledgeBaseTemplateUriInput, ...request.Option) (*connectwisdomservice.UpdateKnowledgeBaseTemplateUriOutput, error) UpdateKnowledgeBaseTemplateUriRequest(*connectwisdomservice.UpdateKnowledgeBaseTemplateUriInput) (*request.Request, *connectwisdomservice.UpdateKnowledgeBaseTemplateUriOutput) + + UpdateQuickResponse(*connectwisdomservice.UpdateQuickResponseInput) (*connectwisdomservice.UpdateQuickResponseOutput, error) + UpdateQuickResponseWithContext(aws.Context, *connectwisdomservice.UpdateQuickResponseInput, ...request.Option) (*connectwisdomservice.UpdateQuickResponseOutput, error) + UpdateQuickResponseRequest(*connectwisdomservice.UpdateQuickResponseInput) (*request.Request, *connectwisdomservice.UpdateQuickResponseOutput) } var _ ConnectWisdomServiceAPI = (*connectwisdomservice.ConnectWisdomService)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/connectwisdomservice/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/connectwisdomservice/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/connectwisdomservice/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/connectwisdomservice/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -30,6 +30,15 @@ // since it was last read. ErrCodePreconditionFailedException = "PreconditionFailedException" + // ErrCodeRequestTimeoutException for service response error code + // "RequestTimeoutException". + // + // The request reached the service more than 15 minutes after the date stamp + // on the request or more than 15 minutes after the request expiration date + // (such as for pre-signed URLs), or the date stamp on the request is more than + // 15 minutes in the future. + ErrCodeRequestTimeoutException = "RequestTimeoutException" + // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // @@ -62,6 +71,7 @@ "AccessDeniedException": newErrorAccessDeniedException, "ConflictException": newErrorConflictException, "PreconditionFailedException": newErrorPreconditionFailedException, + "RequestTimeoutException": newErrorRequestTimeoutException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, "TooManyTagsException": newErrorTooManyTagsException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/controltower/api.go golang-github-aws-aws-sdk-go-1.48.14/service/controltower/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/controltower/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/controltower/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -10,8 +10,106 @@ "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/restjson" ) +const opDeleteLandingZone = "DeleteLandingZone" + +// DeleteLandingZoneRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLandingZone 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 DeleteLandingZone for more information on using the DeleteLandingZone +// 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 DeleteLandingZoneRequest method. +// req, resp := client.DeleteLandingZoneRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DeleteLandingZone +func (c *ControlTower) DeleteLandingZoneRequest(input *DeleteLandingZoneInput) (req *request.Request, output *DeleteLandingZoneOutput) { + op := &request.Operation{ + Name: opDeleteLandingZone, + HTTPMethod: "POST", + HTTPPath: "/delete-landingzone", + } + + if input == nil { + input = &DeleteLandingZoneInput{} + } + + output = &DeleteLandingZoneOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteLandingZone API operation for AWS Control Tower. +// +// Decommissions a landing zone. This API call starts an asynchronous operation +// that deletes Amazon Web Services Control Tower resources deployed in accounts +// managed by Amazon Web Services Control Tower. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation DeleteLandingZone for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DeleteLandingZone +func (c *ControlTower) DeleteLandingZone(input *DeleteLandingZoneInput) (*DeleteLandingZoneOutput, error) { + req, out := c.DeleteLandingZoneRequest(input) + return out, req.Send() +} + +// DeleteLandingZoneWithContext is the same as DeleteLandingZone with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLandingZone 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 *ControlTower) DeleteLandingZoneWithContext(ctx aws.Context, input *DeleteLandingZoneInput, opts ...request.Option) (*DeleteLandingZoneOutput, error) { + req, out := c.DeleteLandingZoneRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisableControl = "DisableControl" // DisableControlRequest generates a "aws/request.Request" representing the @@ -56,8 +154,10 @@ // DisableControl API operation for AWS Control Tower. // // This API call turns off a control. It starts an asynchronous operation that -// deletes AWS resources on the specified organizational unit and the accounts -// it contains. The resources will vary according to the control that you specify. +// deletes Amazon Web Services resources on the specified organizational unit +// and the accounts it contains. The resources will vary according to the control +// that you specify. For usage examples, see the Amazon Web Services Control +// Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.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 @@ -69,26 +169,27 @@ // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. // // - ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. // // - ServiceQuotaExceededException -// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException -// User does not have sufficient access to perform this action. +// You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DisableControl func (c *ControlTower) DisableControl(input *DisableControlInput) (*DisableControlOutput, error) { @@ -156,9 +257,10 @@ // EnableControl API operation for AWS Control Tower. // // This API call activates a control. It starts an asynchronous operation that -// creates AWS resources on the specified organizational unit and the accounts -// it contains. The resources created will vary according to the control that -// you specify. +// creates Amazon Web Services resources on the specified organizational unit +// and the accounts it contains. The resources created will vary according to +// the control that you specify. For usage examples, see the Amazon Web Services +// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.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 @@ -170,26 +272,27 @@ // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. // // - ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. // // - ServiceQuotaExceededException -// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException -// User does not have sufficient access to perform this action. +// You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControl func (c *ControlTower) EnableControl(input *EnableControlInput) (*EnableControlOutput, error) { @@ -258,7 +361,8 @@ // // Returns the status of a particular EnableControl or DisableControl operation. // Displays a message in case of error. Details for an operation are available -// for 90 days. +// for 90 days. For usage examples, see the Amazon Web Services Control Tower +// User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.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 @@ -270,19 +374,20 @@ // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException -// User does not have sufficient access to perform this action. +// You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperation func (c *ControlTower) GetControlOperation(input *GetControlOperationInput) (*GetControlOperationOutput, error) { @@ -306,6 +411,192 @@ return out, req.Send() } +const opGetEnabledControl = "GetEnabledControl" + +// GetEnabledControlRequest generates a "aws/request.Request" representing the +// client's request for the GetEnabledControl 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 GetEnabledControl for more information on using the GetEnabledControl +// 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 GetEnabledControlRequest method. +// req, resp := client.GetEnabledControlRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl +func (c *ControlTower) GetEnabledControlRequest(input *GetEnabledControlInput) (req *request.Request, output *GetEnabledControlOutput) { + op := &request.Operation{ + Name: opGetEnabledControl, + HTTPMethod: "POST", + HTTPPath: "/get-enabled-control", + } + + if input == nil { + input = &GetEnabledControlInput{} + } + + output = &GetEnabledControlOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnabledControl API operation for AWS Control Tower. +// +// Retrieves details about an enabled control. For usage examples, see the Amazon +// Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation GetEnabledControl for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl +func (c *ControlTower) GetEnabledControl(input *GetEnabledControlInput) (*GetEnabledControlOutput, error) { + req, out := c.GetEnabledControlRequest(input) + return out, req.Send() +} + +// GetEnabledControlWithContext is the same as GetEnabledControl with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnabledControl 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 *ControlTower) GetEnabledControlWithContext(ctx aws.Context, input *GetEnabledControlInput, opts ...request.Option) (*GetEnabledControlOutput, error) { + req, out := c.GetEnabledControlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetLandingZoneOperation = "GetLandingZoneOperation" + +// GetLandingZoneOperationRequest generates a "aws/request.Request" representing the +// client's request for the GetLandingZoneOperation 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 GetLandingZoneOperation for more information on using the GetLandingZoneOperation +// 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 GetLandingZoneOperationRequest method. +// req, resp := client.GetLandingZoneOperationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation +func (c *ControlTower) GetLandingZoneOperationRequest(input *GetLandingZoneOperationInput) (req *request.Request, output *GetLandingZoneOperationOutput) { + op := &request.Operation{ + Name: opGetLandingZoneOperation, + HTTPMethod: "POST", + HTTPPath: "/get-landingzone-operation", + } + + if input == nil { + input = &GetLandingZoneOperationInput{} + } + + output = &GetLandingZoneOperationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLandingZoneOperation API operation for AWS Control Tower. +// +// Returns the status of the specified landing zone operation. Details for an +// operation are available for 60 days. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation GetLandingZoneOperation for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation +func (c *ControlTower) GetLandingZoneOperation(input *GetLandingZoneOperationInput) (*GetLandingZoneOperationOutput, error) { + req, out := c.GetLandingZoneOperationRequest(input) + return out, req.Send() +} + +// GetLandingZoneOperationWithContext is the same as GetLandingZoneOperation with the addition of +// the ability to pass a context and additional request options. +// +// See GetLandingZoneOperation 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 *ControlTower) GetLandingZoneOperationWithContext(ctx aws.Context, input *GetLandingZoneOperationInput, opts ...request.Option) (*GetLandingZoneOperationOutput, error) { + req, out := c.GetLandingZoneOperationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListEnabledControls = "ListEnabledControls" // ListEnabledControlsRequest generates a "aws/request.Request" representing the @@ -355,8 +646,9 @@ // ListEnabledControls API operation for AWS Control Tower. // -// Lists the controls enabled by AWS Control Tower on the specified organizational -// unit and the accounts it contains. +// Lists the controls enabled by Amazon Web Services Control Tower on the specified +// organizational unit and the accounts it contains. For usage examples, see +// the Amazon Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.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 @@ -368,19 +660,20 @@ // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException -// User does not have sufficient access to perform this action. +// You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls func (c *ControlTower) ListEnabledControls(input *ListEnabledControlsInput) (*ListEnabledControlsOutput, error) { @@ -455,7 +748,517 @@ return p.Err() } -// User does not have sufficient access to perform this action. +const opListLandingZones = "ListLandingZones" + +// ListLandingZonesRequest generates a "aws/request.Request" representing the +// client's request for the ListLandingZones 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 ListLandingZones for more information on using the ListLandingZones +// 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 ListLandingZonesRequest method. +// req, resp := client.ListLandingZonesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones +func (c *ControlTower) ListLandingZonesRequest(input *ListLandingZonesInput) (req *request.Request, output *ListLandingZonesOutput) { + op := &request.Operation{ + Name: opListLandingZones, + HTTPMethod: "POST", + HTTPPath: "/list-landingzones", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLandingZonesInput{} + } + + output = &ListLandingZonesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLandingZones API operation for AWS Control Tower. +// +// Returns the landing zone ARN for the landing zone deployed in your managed +// account. This API also creates an ARN for existing accounts that do not yet +// have a landing zone ARN. +// +// Returns one landing zone ARN. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation ListLandingZones for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones +func (c *ControlTower) ListLandingZones(input *ListLandingZonesInput) (*ListLandingZonesOutput, error) { + req, out := c.ListLandingZonesRequest(input) + return out, req.Send() +} + +// ListLandingZonesWithContext is the same as ListLandingZones with the addition of +// the ability to pass a context and additional request options. +// +// See ListLandingZones 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 *ControlTower) ListLandingZonesWithContext(ctx aws.Context, input *ListLandingZonesInput, opts ...request.Option) (*ListLandingZonesOutput, error) { + req, out := c.ListLandingZonesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLandingZonesPages iterates over the pages of a ListLandingZones operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLandingZones 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 ListLandingZones operation. +// pageNum := 0 +// err := client.ListLandingZonesPages(params, +// func(page *controltower.ListLandingZonesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ControlTower) ListLandingZonesPages(input *ListLandingZonesInput, fn func(*ListLandingZonesOutput, bool) bool) error { + return c.ListLandingZonesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLandingZonesPagesWithContext same as ListLandingZonesPages 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 *ControlTower) ListLandingZonesPagesWithContext(ctx aws.Context, input *ListLandingZonesInput, fn func(*ListLandingZonesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLandingZonesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLandingZonesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLandingZonesOutput), !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/controltower-2018-05-10/ListTagsForResource +func (c *ControlTower) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Control Tower. +// +// Returns a list of tags associated with the resource. For usage examples, +// see the Amazon Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListTagsForResource +func (c *ControlTower) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + 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 *ControlTower) 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 opResetLandingZone = "ResetLandingZone" + +// ResetLandingZoneRequest generates a "aws/request.Request" representing the +// client's request for the ResetLandingZone 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 ResetLandingZone for more information on using the ResetLandingZone +// 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 ResetLandingZoneRequest method. +// req, resp := client.ResetLandingZoneRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone +func (c *ControlTower) ResetLandingZoneRequest(input *ResetLandingZoneInput) (req *request.Request, output *ResetLandingZoneOutput) { + op := &request.Operation{ + Name: opResetLandingZone, + HTTPMethod: "POST", + HTTPPath: "/reset-landingzone", + } + + if input == nil { + input = &ResetLandingZoneInput{} + } + + output = &ResetLandingZoneOutput{} + req = c.newRequest(op, input, output) + return +} + +// ResetLandingZone API operation for AWS Control Tower. +// +// This API call resets a landing zone. It starts an asynchronous operation +// that resets the landing zone to the parameters specified in its original +// configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation ResetLandingZone for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone +func (c *ControlTower) ResetLandingZone(input *ResetLandingZoneInput) (*ResetLandingZoneOutput, error) { + req, out := c.ResetLandingZoneRequest(input) + return out, req.Send() +} + +// ResetLandingZoneWithContext is the same as ResetLandingZone with the addition of +// the ability to pass a context and additional request options. +// +// See ResetLandingZone 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 *ControlTower) ResetLandingZoneWithContext(ctx aws.Context, input *ResetLandingZoneInput, opts ...request.Option) (*ResetLandingZoneOutput, error) { + req, out := c.ResetLandingZoneRequest(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/controltower-2018-05-10/TagResource +func (c *ControlTower) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Control Tower. +// +// Applies tags to a resource. For usage examples, see the Amazon Web Services +// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/TagResource +func (c *ControlTower) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + 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 *ControlTower) 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/controltower-2018-05-10/UntagResource +func (c *ControlTower) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Control Tower. +// +// Removes tags from a resource. For usage examples, see the Amazon Web Services +// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Control Tower's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UntagResource +func (c *ControlTower) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + 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 *ControlTower) 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() +} + +// You do not have sufficient access to perform this action. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -519,7 +1322,7 @@ return s.RespMetadata.RequestID } -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -652,16 +1455,99 @@ return s } +type DeleteLandingZoneInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the landing zone. + // + // LandingZoneIdentifier is a required field + LandingZoneIdentifier *string `locationName:"landingZoneIdentifier" 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 DeleteLandingZoneInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLandingZoneInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLandingZoneInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLandingZoneInput"} + if s.LandingZoneIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("LandingZoneIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLandingZoneIdentifier sets the LandingZoneIdentifier field's value. +func (s *DeleteLandingZoneInput) SetLandingZoneIdentifier(v string) *DeleteLandingZoneInput { + s.LandingZoneIdentifier = &v + return s +} + +type DeleteLandingZoneOutput struct { + _ struct{} `type:"structure"` + + // >A unique identifier assigned to a DeleteLandingZone operation. You can use + // this identifier as an input parameter of GetLandingZoneOperation to check + // the operation's status. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLandingZoneOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLandingZoneOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *DeleteLandingZoneOutput) SetOperationIdentifier(v string) *DeleteLandingZoneOutput { + s.OperationIdentifier = &v + return s +} + type DisableControlInput struct { _ struct{} `type:"structure"` // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the Region deny guardrail. + // permitted, with the exception of the landing zone Region deny control. For + // information on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // ControlIdentifier is a required field ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` - // The ARN of the organizational unit. + // The ARN of the organizational unit. For information on how to find the targetIdentifier, + // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // TargetIdentifier is a required field TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string" required:"true"` @@ -753,16 +1639,72 @@ return s } +// The drift summary of the enabled control. +// +// Amazon Web Services Control Tower expects the enabled control configuration +// to include all supported and governed Regions. If the enabled control differs +// from the expected configuration, it is defined to be in a state of drift. +// You can repair this drift by resetting the enabled control. +type DriftStatusSummary struct { + _ struct{} `type:"structure"` + + // The drift status of the enabled control. + // + // Valid values: + // + // * DRIFTED: The enabledControl deployed in this configuration doesn’t + // match the configuration that Amazon Web Services Control Tower expected. + // + // * IN_SYNC: The enabledControl deployed in this configuration matches the + // configuration that Amazon Web Services Control Tower expected. + // + // * NOT_CHECKING: Amazon Web Services Control Tower does not check drift + // for this enabled control. Drift is not supported for the control type. + // + // * UNKNOWN: Amazon Web Services Control Tower is not able to check the + // drift status for the enabled control. + DriftStatus *string `locationName:"driftStatus" type:"string" enum:"DriftStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DriftStatusSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DriftStatusSummary) GoString() string { + return s.String() +} + +// SetDriftStatus sets the DriftStatus field's value. +func (s *DriftStatusSummary) SetDriftStatus(v string) *DriftStatusSummary { + s.DriftStatus = &v + return s +} + type EnableControlInput struct { _ struct{} `type:"structure"` // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the Region deny guardrail. + // permitted, with the exception of the landing zone Region deny control. For + // information on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // ControlIdentifier is a required field ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` - // The ARN of the organizational unit. + // Tags to be applied to the EnabledControl resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The ARN of the organizational unit. For information on how to find the targetIdentifier, + // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // TargetIdentifier is a required field TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string" required:"true"` @@ -814,6 +1756,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *EnableControlInput) SetTags(v map[string]*string) *EnableControlInput { + s.Tags = v + return s +} + // SetTargetIdentifier sets the TargetIdentifier field's value. func (s *EnableControlInput) SetTargetIdentifier(v string) *EnableControlInput { s.TargetIdentifier = &v @@ -823,6 +1771,9 @@ type EnableControlOutput struct { _ struct{} `type:"structure"` + // The ARN of the EnabledControl resource. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The ID of the asynchronous operation, which is used to track status. The // operation is available for 90 days. // @@ -848,19 +1799,115 @@ return s.String() } +// SetArn sets the Arn field's value. +func (s *EnableControlOutput) SetArn(v string) *EnableControlOutput { + s.Arn = &v + return s +} + // SetOperationIdentifier sets the OperationIdentifier field's value. func (s *EnableControlOutput) SetOperationIdentifier(v string) *EnableControlOutput { s.OperationIdentifier = &v return s } -// A summary of enabled controls. +// Information about the enabled control. +type EnabledControlDetails struct { + _ struct{} `type:"structure"` + + // The ARN of the enabled control. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The control identifier of the enabled control. For information on how to + // find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string"` + + // The drift status of the enabled control. + DriftStatusSummary *DriftStatusSummary `locationName:"driftStatusSummary" type:"structure"` + + // The deployment summary of the enabled control. + StatusSummary *EnablementStatusSummary `locationName:"statusSummary" type:"structure"` + + // The ARN of the organizational unit. For information on how to find the targetIdentifier, + // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string"` + + // Target Amazon Web Services Regions for the enabled control. + TargetRegions []*Region `locationName:"targetRegions" 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 EnabledControlDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnabledControlDetails) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnabledControlDetails) SetArn(v string) *EnabledControlDetails { + s.Arn = &v + return s +} + +// SetControlIdentifier sets the ControlIdentifier field's value. +func (s *EnabledControlDetails) SetControlIdentifier(v string) *EnabledControlDetails { + s.ControlIdentifier = &v + return s +} + +// SetDriftStatusSummary sets the DriftStatusSummary field's value. +func (s *EnabledControlDetails) SetDriftStatusSummary(v *DriftStatusSummary) *EnabledControlDetails { + s.DriftStatusSummary = v + return s +} + +// SetStatusSummary sets the StatusSummary field's value. +func (s *EnabledControlDetails) SetStatusSummary(v *EnablementStatusSummary) *EnabledControlDetails { + s.StatusSummary = v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *EnabledControlDetails) SetTargetIdentifier(v string) *EnabledControlDetails { + s.TargetIdentifier = &v + return s +} + +// SetTargetRegions sets the TargetRegions field's value. +func (s *EnabledControlDetails) SetTargetRegions(v []*Region) *EnabledControlDetails { + s.TargetRegions = v + return s +} + +// Returns a summary of information about an enabled control. type EnabledControlSummary struct { _ struct{} `type:"structure"` - // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the Region deny guardrail. + // The ARN of the enabled control. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The controlIdentifier of the enabled control. ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string"` + + // The drift status of the enabled control. + DriftStatusSummary *DriftStatusSummary `locationName:"driftStatusSummary" type:"structure"` + + // A short description of the status of the enabled control. + StatusSummary *EnablementStatusSummary `locationName:"statusSummary" type:"structure"` + + // The ARN of the organizational unit. + TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string"` } // String returns the string representation. @@ -881,12 +1928,85 @@ return s.String() } +// SetArn sets the Arn field's value. +func (s *EnabledControlSummary) SetArn(v string) *EnabledControlSummary { + s.Arn = &v + return s +} + // SetControlIdentifier sets the ControlIdentifier field's value. func (s *EnabledControlSummary) SetControlIdentifier(v string) *EnabledControlSummary { s.ControlIdentifier = &v return s } +// SetDriftStatusSummary sets the DriftStatusSummary field's value. +func (s *EnabledControlSummary) SetDriftStatusSummary(v *DriftStatusSummary) *EnabledControlSummary { + s.DriftStatusSummary = v + return s +} + +// SetStatusSummary sets the StatusSummary field's value. +func (s *EnabledControlSummary) SetStatusSummary(v *EnablementStatusSummary) *EnabledControlSummary { + s.StatusSummary = v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *EnabledControlSummary) SetTargetIdentifier(v string) *EnabledControlSummary { + s.TargetIdentifier = &v + return s +} + +// The deployment summary of the enabled control. +type EnablementStatusSummary struct { + _ struct{} `type:"structure"` + + // The last operation identifier for the enabled control. + LastOperationIdentifier *string `locationName:"lastOperationIdentifier" min:"36" type:"string"` + + // The deployment status of the enabled control. + // + // Valid values: + // + // * SUCCEEDED: The enabledControl configuration was deployed successfully. + // + // * UNDER_CHANGE: The enabledControl configuration is changing. + // + // * FAILED: The enabledControl configuration failed to deploy. + Status *string `locationName:"status" type:"string" enum:"EnablementStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnablementStatusSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnablementStatusSummary) GoString() string { + return s.String() +} + +// SetLastOperationIdentifier sets the LastOperationIdentifier field's value. +func (s *EnablementStatusSummary) SetLastOperationIdentifier(v string) *EnablementStatusSummary { + s.LastOperationIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnablementStatusSummary) SetStatus(v string) *EnablementStatusSummary { + s.Status = &v + return s +} + type GetControlOperationInput struct { _ struct{} `type:"structure"` @@ -970,7 +2090,171 @@ return s } -// Unexpected error during processing of request. +type GetEnabledControlInput struct { + _ struct{} `type:"structure"` + + // The controlIdentifier of the enabled control. + // + // EnabledControlIdentifier is a required field + EnabledControlIdentifier *string `locationName:"enabledControlIdentifier" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnabledControlInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnabledControlInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnabledControlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnabledControlInput"} + if s.EnabledControlIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnabledControlIdentifier")) + } + if s.EnabledControlIdentifier != nil && len(*s.EnabledControlIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("EnabledControlIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabledControlIdentifier sets the EnabledControlIdentifier field's value. +func (s *GetEnabledControlInput) SetEnabledControlIdentifier(v string) *GetEnabledControlInput { + s.EnabledControlIdentifier = &v + return s +} + +type GetEnabledControlOutput struct { + _ struct{} `type:"structure"` + + // Information about the enabled control. + // + // EnabledControlDetails is a required field + EnabledControlDetails *EnabledControlDetails `locationName:"enabledControlDetails" 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 GetEnabledControlOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnabledControlOutput) GoString() string { + return s.String() +} + +// SetEnabledControlDetails sets the EnabledControlDetails field's value. +func (s *GetEnabledControlOutput) SetEnabledControlDetails(v *EnabledControlDetails) *GetEnabledControlOutput { + s.EnabledControlDetails = v + return s +} + +type GetLandingZoneOperationInput struct { + _ struct{} `type:"structure"` + + // A unique identifier assigned to a landing zone operation. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 GetLandingZoneOperationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLandingZoneOperationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLandingZoneOperationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLandingZoneOperationInput"} + if s.OperationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OperationIdentifier")) + } + if s.OperationIdentifier != nil && len(*s.OperationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("OperationIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *GetLandingZoneOperationInput) SetOperationIdentifier(v string) *GetLandingZoneOperationInput { + s.OperationIdentifier = &v + return s +} + +type GetLandingZoneOperationOutput struct { + _ struct{} `type:"structure"` + + // Details about a landing zone operation. + // + // OperationDetails is a required field + OperationDetails *LandingZoneOperationDetail `locationName:"operationDetails" 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 GetLandingZoneOperationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLandingZoneOperationOutput) GoString() string { + return s.String() +} + +// SetOperationDetails sets the OperationDetails field's value. +func (s *GetLandingZoneOperationOutput) SetOperationDetails(v *LandingZoneOperationDetail) *GetLandingZoneOperationOutput { + s.OperationDetails = v + return s +} + +// An unexpected error occurred during processing of a request. type InternalServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1034,6 +2318,123 @@ return s.RespMetadata.RequestID } +// Information about a landing zone operation. +type LandingZoneOperationDetail struct { + _ struct{} `type:"structure"` + + // The landing zone operation end time. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // The landing zone operation type. + // + // Valid values: + // + // * DELETE: The DeleteLandingZone operation. + // + // * CREATE: The CreateLandingZone operation. + // + // * UPDATE: The UpdateLandingZone operation. + // + // * RESET: The ResetLandingZone operation. + OperationType *string `locationName:"operationType" type:"string" enum:"LandingZoneOperationType"` + + // The landing zone operation start time. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // Valid values: + // + // * SUCCEEDED: The landing zone operation succeeded. + // + // * IN_PROGRESS: The landing zone operation is in progress. + // + // * FAILED: The landing zone operation failed. + Status *string `locationName:"status" type:"string" enum:"LandingZoneOperationStatus"` + + // If the operation result is FAILED, this string contains a message explaining + // why the operation failed. + StatusMessage *string `locationName:"statusMessage" 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 LandingZoneOperationDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LandingZoneOperationDetail) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *LandingZoneOperationDetail) SetEndTime(v time.Time) *LandingZoneOperationDetail { + s.EndTime = &v + return s +} + +// SetOperationType sets the OperationType field's value. +func (s *LandingZoneOperationDetail) SetOperationType(v string) *LandingZoneOperationDetail { + s.OperationType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *LandingZoneOperationDetail) SetStartTime(v time.Time) *LandingZoneOperationDetail { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LandingZoneOperationDetail) SetStatus(v string) *LandingZoneOperationDetail { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *LandingZoneOperationDetail) SetStatusMessage(v string) *LandingZoneOperationDetail { + s.StatusMessage = &v + return s +} + +// Returns a summary of information about a landing zone. +type LandingZoneSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the landing zone. + Arn *string `locationName:"arn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LandingZoneSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LandingZoneSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *LandingZoneSummary) SetArn(v string) *LandingZoneSummary { + s.Arn = &v + return s +} + type ListEnabledControlsInput struct { _ struct{} `type:"structure"` @@ -1043,7 +2444,8 @@ // The token to continue the list from a previous API call with the same parameters. NextToken *string `locationName:"nextToken" type:"string"` - // The ARN of the organizational unit. + // The ARN of the organizational unit. For information on how to find the targetIdentifier, + // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // TargetIdentifier is a required field TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string" required:"true"` @@ -1107,13 +2509,13 @@ type ListEnabledControlsOutput struct { _ struct{} `type:"structure"` - // Lists the controls enabled by AWS Control Tower on the specified organizational - // unit and the accounts it contains. + // Lists the controls enabled by Amazon Web Services Control Tower on the specified + // organizational unit and the accounts it contains. // // EnabledControls is a required field EnabledControls []*EnabledControlSummary `locationName:"enabledControls" type:"list" required:"true"` - // Retrieves the next page of results. If the string is empty, the current response + // Retrieves the next page of results. If the string is empty, the response // is the end of the results. NextToken *string `locationName:"nextToken" type:"string"` } @@ -1148,7 +2550,303 @@ return s } -// Request references a resource which does not exist. +type ListLandingZonesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of returned landing zone ARNs, which is one. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token to continue the list from a previous API call with the same parameters. + 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 ListLandingZonesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLandingZonesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLandingZonesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLandingZonesInput"} + 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 *ListLandingZonesInput) SetMaxResults(v int64) *ListLandingZonesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLandingZonesInput) SetNextToken(v string) *ListLandingZonesInput { + s.NextToken = &v + return s +} + +type ListLandingZonesOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the landing zone. + // + // LandingZones is a required field + LandingZones []*LandingZoneSummary `locationName:"landingZones" type:"list" required:"true"` + + // Retrieves the next page of results. If the string is empty, the response + // is the end of the results. + 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 ListLandingZonesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLandingZonesOutput) GoString() string { + return s.String() +} + +// SetLandingZones sets the LandingZones field's value. +func (s *ListLandingZonesOutput) SetLandingZones(v []*LandingZoneSummary) *ListLandingZonesOutput { + s.LandingZones = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLandingZonesOutput) SetNextToken(v string) *ListLandingZonesOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A list of tags, as key:value strings. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// An Amazon Web Services Region in which Amazon Web Services Control Tower +// expects to find the control deployed. +// +// The expected Regions are based on the Regions that are governed by the landing +// zone. In certain cases, a control is not actually enabled in the Region as +// expected, such as during drift, or mixed governance (https://docs.aws.amazon.com/controltower/latest/userguide/region-how.html#mixed-governance). +type Region struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services Region name. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Region) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Region) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Region) SetName(v string) *Region { + s.Name = &v + return s +} + +type ResetLandingZoneInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the landing zone. + // + // LandingZoneIdentifier is a required field + LandingZoneIdentifier *string `locationName:"landingZoneIdentifier" 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 ResetLandingZoneInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResetLandingZoneInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResetLandingZoneInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResetLandingZoneInput"} + if s.LandingZoneIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("LandingZoneIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLandingZoneIdentifier sets the LandingZoneIdentifier field's value. +func (s *ResetLandingZoneInput) SetLandingZoneIdentifier(v string) *ResetLandingZoneInput { + s.LandingZoneIdentifier = &v + return s +} + +type ResetLandingZoneOutput struct { + _ struct{} `type:"structure"` + + // A unique identifier assigned to a ResetLandingZone operation. You can use + // this identifier as an input parameter of GetLandingZoneOperation to check + // the operation's status. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 ResetLandingZoneOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResetLandingZoneOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *ResetLandingZoneOutput) SetOperationIdentifier(v string) *ResetLandingZoneOutput { + s.OperationIdentifier = &v + return s +} + +// The request references a resource that does not exist. type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1212,7 +2910,7 @@ return s.RespMetadata.RequestID } -// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -1277,7 +2975,92 @@ return s.RespMetadata.RequestID } -// Request was denied due to request throttling. +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource to be tagged. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // Tags to be applied to the resource. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request was denied due to request throttling. type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1287,7 +3070,7 @@ // The ID of the service quota that was exceeded. QuotaCode *string `locationName:"quotaCode" type:"string"` - // The number of seconds the caller should wait before retrying. + // The number of seconds to wait before retrying. RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` // The ID of the service that is associated with the error. @@ -1350,7 +3133,93 @@ return s.RespMetadata.RequestID } -// The input fails to satisfy the constraints specified by an AWS service. +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // Tag keys to be removed from the resource. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + 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() +} + +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1440,6 +3309,9 @@ // ControlOperationTypeDisableControl is a ControlOperationType enum value ControlOperationTypeDisableControl = "DISABLE_CONTROL" + + // ControlOperationTypeUpdateEnabledControl is a ControlOperationType enum value + ControlOperationTypeUpdateEnabledControl = "UPDATE_ENABLED_CONTROL" ) // ControlOperationType_Values returns all elements of the ControlOperationType enum @@ -1447,5 +3319,94 @@ return []string{ ControlOperationTypeEnableControl, ControlOperationTypeDisableControl, + ControlOperationTypeUpdateEnabledControl, + } +} + +const ( + // DriftStatusDrifted is a DriftStatus enum value + DriftStatusDrifted = "DRIFTED" + + // DriftStatusInSync is a DriftStatus enum value + DriftStatusInSync = "IN_SYNC" + + // DriftStatusNotChecking is a DriftStatus enum value + DriftStatusNotChecking = "NOT_CHECKING" + + // DriftStatusUnknown is a DriftStatus enum value + DriftStatusUnknown = "UNKNOWN" +) + +// DriftStatus_Values returns all elements of the DriftStatus enum +func DriftStatus_Values() []string { + return []string{ + DriftStatusDrifted, + DriftStatusInSync, + DriftStatusNotChecking, + DriftStatusUnknown, + } +} + +const ( + // EnablementStatusSucceeded is a EnablementStatus enum value + EnablementStatusSucceeded = "SUCCEEDED" + + // EnablementStatusFailed is a EnablementStatus enum value + EnablementStatusFailed = "FAILED" + + // EnablementStatusUnderChange is a EnablementStatus enum value + EnablementStatusUnderChange = "UNDER_CHANGE" +) + +// EnablementStatus_Values returns all elements of the EnablementStatus enum +func EnablementStatus_Values() []string { + return []string{ + EnablementStatusSucceeded, + EnablementStatusFailed, + EnablementStatusUnderChange, + } +} + +const ( + // LandingZoneOperationStatusSucceeded is a LandingZoneOperationStatus enum value + LandingZoneOperationStatusSucceeded = "SUCCEEDED" + + // LandingZoneOperationStatusFailed is a LandingZoneOperationStatus enum value + LandingZoneOperationStatusFailed = "FAILED" + + // LandingZoneOperationStatusInProgress is a LandingZoneOperationStatus enum value + LandingZoneOperationStatusInProgress = "IN_PROGRESS" +) + +// LandingZoneOperationStatus_Values returns all elements of the LandingZoneOperationStatus enum +func LandingZoneOperationStatus_Values() []string { + return []string{ + LandingZoneOperationStatusSucceeded, + LandingZoneOperationStatusFailed, + LandingZoneOperationStatusInProgress, + } +} + +const ( + // LandingZoneOperationTypeDelete is a LandingZoneOperationType enum value + LandingZoneOperationTypeDelete = "DELETE" + + // LandingZoneOperationTypeCreate is a LandingZoneOperationType enum value + LandingZoneOperationTypeCreate = "CREATE" + + // LandingZoneOperationTypeUpdate is a LandingZoneOperationType enum value + LandingZoneOperationTypeUpdate = "UPDATE" + + // LandingZoneOperationTypeReset is a LandingZoneOperationType enum value + LandingZoneOperationTypeReset = "RESET" +) + +// LandingZoneOperationType_Values returns all elements of the LandingZoneOperationType enum +func LandingZoneOperationType_Values() []string { + return []string{ + LandingZoneOperationTypeDelete, + LandingZoneOperationTypeCreate, + LandingZoneOperationTypeUpdate, + LandingZoneOperationTypeReset, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/controltower/controltoweriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/controltower/controltoweriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/controltower/controltoweriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/controltower/controltoweriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // AWS Control Tower. // func myFunc(svc controltoweriface.ControlTowerAPI) bool { -// // Make svc.DisableControl request +// // Make svc.DeleteLandingZone request // } // // func main() { @@ -42,7 +42,7 @@ // type mockControlTowerClient struct { // controltoweriface.ControlTowerAPI // } -// func (m *mockControlTowerClient) DisableControl(input *controltower.DisableControlInput) (*controltower.DisableControlOutput, error) { +// func (m *mockControlTowerClient) DeleteLandingZone(input *controltower.DeleteLandingZoneInput) (*controltower.DeleteLandingZoneOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ControlTowerAPI interface { + DeleteLandingZone(*controltower.DeleteLandingZoneInput) (*controltower.DeleteLandingZoneOutput, error) + DeleteLandingZoneWithContext(aws.Context, *controltower.DeleteLandingZoneInput, ...request.Option) (*controltower.DeleteLandingZoneOutput, error) + DeleteLandingZoneRequest(*controltower.DeleteLandingZoneInput) (*request.Request, *controltower.DeleteLandingZoneOutput) + DisableControl(*controltower.DisableControlInput) (*controltower.DisableControlOutput, error) DisableControlWithContext(aws.Context, *controltower.DisableControlInput, ...request.Option) (*controltower.DisableControlOutput, error) DisableControlRequest(*controltower.DisableControlInput) (*request.Request, *controltower.DisableControlOutput) @@ -72,12 +76,43 @@ GetControlOperationWithContext(aws.Context, *controltower.GetControlOperationInput, ...request.Option) (*controltower.GetControlOperationOutput, error) GetControlOperationRequest(*controltower.GetControlOperationInput) (*request.Request, *controltower.GetControlOperationOutput) + GetEnabledControl(*controltower.GetEnabledControlInput) (*controltower.GetEnabledControlOutput, error) + GetEnabledControlWithContext(aws.Context, *controltower.GetEnabledControlInput, ...request.Option) (*controltower.GetEnabledControlOutput, error) + GetEnabledControlRequest(*controltower.GetEnabledControlInput) (*request.Request, *controltower.GetEnabledControlOutput) + + GetLandingZoneOperation(*controltower.GetLandingZoneOperationInput) (*controltower.GetLandingZoneOperationOutput, error) + GetLandingZoneOperationWithContext(aws.Context, *controltower.GetLandingZoneOperationInput, ...request.Option) (*controltower.GetLandingZoneOperationOutput, error) + GetLandingZoneOperationRequest(*controltower.GetLandingZoneOperationInput) (*request.Request, *controltower.GetLandingZoneOperationOutput) + ListEnabledControls(*controltower.ListEnabledControlsInput) (*controltower.ListEnabledControlsOutput, error) ListEnabledControlsWithContext(aws.Context, *controltower.ListEnabledControlsInput, ...request.Option) (*controltower.ListEnabledControlsOutput, error) ListEnabledControlsRequest(*controltower.ListEnabledControlsInput) (*request.Request, *controltower.ListEnabledControlsOutput) ListEnabledControlsPages(*controltower.ListEnabledControlsInput, func(*controltower.ListEnabledControlsOutput, bool) bool) error ListEnabledControlsPagesWithContext(aws.Context, *controltower.ListEnabledControlsInput, func(*controltower.ListEnabledControlsOutput, bool) bool, ...request.Option) error + + ListLandingZones(*controltower.ListLandingZonesInput) (*controltower.ListLandingZonesOutput, error) + ListLandingZonesWithContext(aws.Context, *controltower.ListLandingZonesInput, ...request.Option) (*controltower.ListLandingZonesOutput, error) + ListLandingZonesRequest(*controltower.ListLandingZonesInput) (*request.Request, *controltower.ListLandingZonesOutput) + + ListLandingZonesPages(*controltower.ListLandingZonesInput, func(*controltower.ListLandingZonesOutput, bool) bool) error + ListLandingZonesPagesWithContext(aws.Context, *controltower.ListLandingZonesInput, func(*controltower.ListLandingZonesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*controltower.ListTagsForResourceInput) (*controltower.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *controltower.ListTagsForResourceInput, ...request.Option) (*controltower.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*controltower.ListTagsForResourceInput) (*request.Request, *controltower.ListTagsForResourceOutput) + + ResetLandingZone(*controltower.ResetLandingZoneInput) (*controltower.ResetLandingZoneOutput, error) + ResetLandingZoneWithContext(aws.Context, *controltower.ResetLandingZoneInput, ...request.Option) (*controltower.ResetLandingZoneOutput, error) + ResetLandingZoneRequest(*controltower.ResetLandingZoneInput) (*request.Request, *controltower.ResetLandingZoneOutput) + + TagResource(*controltower.TagResourceInput) (*controltower.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *controltower.TagResourceInput, ...request.Option) (*controltower.TagResourceOutput, error) + TagResourceRequest(*controltower.TagResourceInput) (*request.Request, *controltower.TagResourceOutput) + + UntagResource(*controltower.UntagResourceInput) (*controltower.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *controltower.UntagResourceInput, ...request.Option) (*controltower.UntagResourceOutput, error) + UntagResourceRequest(*controltower.UntagResourceInput) (*request.Request, *controltower.UntagResourceOutput) } var _ ControlTowerAPI = (*controltower.ControlTower)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/controltower/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/controltower/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/controltower/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/controltower/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,24 +3,36 @@ // Package controltower provides the client and types for making API // requests to AWS Control Tower. // -// These interfaces allow you to apply the AWS library of pre-defined controls -// to your organizational units, programmatically. In this context, controls -// are the same as AWS Control Tower guardrails. +// These interfaces allow you to apply the Amazon Web Services library of pre-defined +// controls to your organizational units, programmatically. In Amazon Web Services +// Control Tower, the terms "control" and "guardrail" are synonyms. // // To call these APIs, you'll need to know: // -// - the ControlARN for the control--that is, the guardrail--you are targeting, +// - the controlIdentifier for the control--or guardrail--you are targeting. // -// - and the ARN associated with the target organizational unit (OU). +// - the ARN associated with the target organizational unit (OU), which we +// call the targetIdentifier. // -// To get the ControlARN for your AWS Control Tower guardrail: +// - the ARN associated with a resource that you wish to tag or untag. // -// The ControlARN contains the control name which is specified in each guardrail. -// For a list of control names for Strongly recommended and Elective guardrails, -// see Resource identifiers for APIs and guardrails (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html.html) -// in the Automating tasks section (https://docs.aws.amazon.com/controltower/latest/userguide/automating-tasks.html) -// of the AWS Control Tower User Guide. Remember that Mandatory guardrails cannot -// be added or removed. +// To get the controlIdentifier for your Amazon Web Services Control Tower control: +// +// The controlIdentifier is an ARN that is specified for each control. You can +// view the controlIdentifier in the console on the Control details page, as +// well as in the documentation. +// +// The controlIdentifier is unique in each Amazon Web Services Region for each +// control. You can find the controlIdentifier for each Region and control in +// the Tables of control metadata (https://docs.aws.amazon.com/controltower/latest/userguide/control-metadata-tables.html) +// in the Amazon Web Services Control Tower User Guide. +// +// A quick-reference list of control identifers for the Amazon Web Services +// Control Tower legacy Strongly recommended and Elective controls is given +// in Resource identifiers for APIs and controls (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html.html) +// in the Controls reference guide section (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html) +// of the Amazon Web Services Control Tower User Guide. Remember that Mandatory +// controls cannot be added or removed. // // ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME} // @@ -28,10 +40,12 @@ // // arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED // -// To get the ARN for an OU: +// To get the targetIdentifier: +// +// The targetIdentifier is the ARN for an OU. // -// In the AWS Organizations console, you can find the ARN for the OU on the -// Organizational unit details page associated with that OU. +// In the Amazon Web Services Organizations console, you can find the ARN for +// the OU on the Organizational unit details page associated with that OU. // // OU ARN format: // @@ -39,27 +53,37 @@ // // Details and examples // -// - List of resource identifiers for APIs and guardrails (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html) +// - Control API input and output examples with CLI (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html) +// +// - Enable controls with CloudFormation (https://docs.aws.amazon.com/controltower/latest/userguide/enable-controls.html) +// +// - Control metadata tables (https://docs.aws.amazon.com/controltower/latest/userguide/control-metadata-tables.html) +// +// - List of identifiers for legacy controls (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html) // -// - Guardrail API examples (CLI) (https://docs.aws.amazon.com/controltower/latest/userguide/guardrail-api-examples-short.html) +// - Controls reference guide (https://docs.aws.amazon.com/controltower/latest/userguide/controls.html) // -// - Enable controls with AWS CloudFormation (https://docs.aws.amazon.com/controltower/latest/userguide/enable-controls.html) +// - Controls library groupings (https://docs.aws.amazon.com/controltower/latest/userguide/controls-reference.html) // -// - Creating AWS Control Tower resources with AWS CloudFormation (https://docs.aws.amazon.com/controltower/latest/userguide/creating-resources-with-cloudformation.html) +// - Creating Amazon Web Services Control Tower resources with Amazon Web +// Services CloudFormation (https://docs.aws.amazon.com/controltower/latest/userguide/creating-resources-with-cloudformation.html) // // To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower // (https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower) // // # Recording API Requests // -// AWS Control Tower supports AWS CloudTrail, a service that records AWS API -// calls for your AWS account and delivers log files to an Amazon S3 bucket. -// By using information collected by CloudTrail, you can determine which requests -// the AWS Control Tower service received, who made the request and when, and -// so on. For more about AWS Control Tower and its support for CloudTrail, see -// Logging AWS Control Tower Actions with AWS CloudTrail (https://docs.aws.amazon.com/controltower/latest/userguide/logging-using-cloudtrail.html) -// in the AWS Control Tower User Guide. To learn more about CloudTrail, including -// how to turn it on and find your log files, see the AWS CloudTrail User Guide. +// Amazon Web Services Control Tower supports Amazon Web Services CloudTrail, +// a service that records Amazon Web Services API calls for your Amazon Web +// Services account and delivers log files to an Amazon S3 bucket. By using +// information collected by CloudTrail, you can determine which requests the +// Amazon Web Services Control Tower service received, who made the request +// and when, and so on. For more about Amazon Web Services Control Tower and +// its support for CloudTrail, see Logging Amazon Web Services Control Tower +// Actions with Amazon Web Services CloudTrail (https://docs.aws.amazon.com/controltower/latest/userguide/logging-using-cloudtrail.html) +// in the Amazon Web Services Control Tower User Guide. To learn more about +// CloudTrail, including how to turn it on and find your log files, see the +// Amazon Web Services CloudTrail User Guide. // // See https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/controltower/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/controltower/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/controltower/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/controltower/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -11,44 +11,45 @@ // ErrCodeAccessDeniedException for service response error code // "AccessDeniedException". // - // User does not have sufficient access to perform this action. + // You do not have sufficient access to perform this action. ErrCodeAccessDeniedException = "AccessDeniedException" // ErrCodeConflictException for service response error code // "ConflictException". // - // Updating or deleting a resource can cause an inconsistent state. + // Updating or deleting the resource can cause an inconsistent state. ErrCodeConflictException = "ConflictException" // ErrCodeInternalServerException for service response error code // "InternalServerException". // - // Unexpected error during processing of request. + // An unexpected error occurred during processing of a request. ErrCodeInternalServerException = "InternalServerException" // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // - // Request references a resource which does not exist. + // The request references a resource that does not exist. ErrCodeResourceNotFoundException = "ResourceNotFoundException" // ErrCodeServiceQuotaExceededException for service response error code // "ServiceQuotaExceededException". // - // Request would cause a service quota to be exceeded. The limit is 10 concurrent + // The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" // ErrCodeThrottlingException for service response error code // "ThrottlingException". // - // Request was denied due to request throttling. + // The request was denied due to request throttling. ErrCodeThrottlingException = "ThrottlingException" // ErrCodeValidationException for service response error code // "ValidationException". // - // The input fails to satisfy the constraints specified by an AWS service. + // The input does not satisfy the constraints specified by an Amazon Web Services + // service. ErrCodeValidationException = "ValidationException" ) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -55,7 +55,8 @@ // DeleteReportDefinition API operation for AWS Cost and Usage Report Service. // -// Deletes the specified report. +// Deletes the specified report. Any tags associated with the report are also +// deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -71,7 +72,8 @@ // again later. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/DeleteReportDefinition func (c *CostandUsageReportService) DeleteReportDefinition(input *DeleteReportDefinitionInput) (*DeleteReportDefinitionOutput, error) { @@ -144,7 +146,7 @@ // DescribeReportDefinitions API operation for AWS Cost and Usage Report Service. // -// Lists the AWS Cost and Usage reports available to this account. +// Lists the Amazon Web Services Cost and Usage Report available to this account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -231,6 +233,93 @@ 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/cur-2017-01-06/ListTagsForResource +func (c *CostandUsageReportService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Cost and Usage Report Service. +// +// Lists the tags associated with the specified report definition. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Cost and Usage Report Service's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified report (ReportName) in the request doesn't exist. +// +// - InternalErrorException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/ListTagsForResource +func (c *CostandUsageReportService) 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 *CostandUsageReportService) 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 opModifyReportDefinition = "ModifyReportDefinition" // ModifyReportDefinitionRequest generates a "aws/request.Request" representing the @@ -275,7 +364,7 @@ // ModifyReportDefinition API operation for AWS Cost and Usage Report Service. // -// Allows you to programatically update your report preferences. +// Allows you to programmatically update your report preferences. // // 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 @@ -291,7 +380,8 @@ // again later. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/ModifyReportDefinition func (c *CostandUsageReportService) ModifyReportDefinition(input *ModifyReportDefinitionInput) (*ModifyReportDefinitionOutput, error) { @@ -383,7 +473,11 @@ // again later. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified report (ReportName) in the request doesn't exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/PutReportDefinition func (c *CostandUsageReportService) PutReportDefinition(input *PutReportDefinitionInput) (*PutReportDefinitionOutput, error) { @@ -407,13 +501,191 @@ 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/cur-2017-01-06/TagResource +func (c *CostandUsageReportService) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Cost and Usage Report Service. +// +// Associates a set of tags with a report definition. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Cost and Usage Report Service's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified report (ReportName) in the request doesn't exist. +// +// - InternalErrorException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/TagResource +func (c *CostandUsageReportService) 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 *CostandUsageReportService) 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/cur-2017-01-06/UntagResource +func (c *CostandUsageReportService) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Cost and Usage Report Service. +// +// Disassociates a set of tags from a report definition. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Cost and Usage Report Service's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified report (ReportName) in the request doesn't exist. +// +// - InternalErrorException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/UntagResource +func (c *CostandUsageReportService) 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 *CostandUsageReportService) 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() +} + // Deletes the specified report. type DeleteReportDefinitionInput struct { _ struct{} `type:"structure"` // The name of the report that you want to delete. The name must be unique, // is case sensitive, and can't include spaces. - ReportName *string `type:"string"` + // + // ReportName is a required field + ReportName *string `type:"string" required:"true"` } // String returns the string representation. @@ -434,6 +706,19 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteReportDefinitionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteReportDefinitionInput"} + if s.ReportName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetReportName sets the ReportName field's value. func (s *DeleteReportDefinitionInput) SetReportName(v string) *DeleteReportDefinitionInput { s.ReportName = &v @@ -472,11 +757,11 @@ return s } -// Requests a list of AWS Cost and Usage reports owned by the account. +// Requests a Amazon Web Services Cost and Usage Report list owned by the account. type DescribeReportDefinitionsInput struct { _ struct{} `type:"structure"` - // The maximum number of results that AWS returns for the operation. + // The maximum number of results that Amazon Web Services returns for the operation. MaxResults *int64 `min:"5" type:"integer"` // A generic string. @@ -533,7 +818,7 @@ // A generic string. NextToken *string `type:"string"` - // A list of AWS Cost and Usage reports owned by the account. + // An Amazon Web Services Cost and Usage Report list owned by the account. ReportDefinitions []*ReportDefinition `type:"list"` } @@ -699,12 +984,89 @@ return s.RespMetadata.RequestID } +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The report name of the report definition that tags are to be returned for. + // + // ReportName is a required field + ReportName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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.ReportName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetReportName sets the ReportName field's value. +func (s *ListTagsForResourceInput) SetReportName(v string) *ListTagsForResourceInput { + s.ReportName = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The tags assigned to the report definition resource. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + type ModifyReportDefinitionInput struct { _ struct{} `type:"structure"` - // The definition of AWS Cost and Usage Report. You can specify the report name, - // time unit, report format, compression format, S3 bucket, additional artifacts, - // and schema elements in the definition. + // The definition of Amazon Web Services Cost and Usage Report. You can specify + // the report name, time unit, report format, compression format, S3 bucket, + // additional artifacts, and schema elements in the definition. // // ReportDefinition is a required field ReportDefinition *ReportDefinition `type:"structure" required:"true"` @@ -798,6 +1160,9 @@ // // ReportDefinition is a required field ReportDefinition *ReportDefinition `type:"structure" required:"true"` + + // The tags to be assigned to the report definition resource. + Tags []*Tag `type:"list"` } // String returns the string representation. @@ -829,6 +1194,16 @@ invalidParams.AddNested("ReportDefinition", err.(request.ErrInvalidParams)) } } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -842,6 +1217,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *PutReportDefinitionInput) SetTags(v []*Tag) *PutReportDefinitionInput { + s.Tags = v + return s +} + // If the action is successful, the service sends back an HTTP 200 response // with an empty HTTP body. type PutReportDefinitionOutput struct { @@ -866,9 +1247,9 @@ return s.String() } -// The definition of AWS Cost and Usage Report. You can specify the report name, -// time unit, report format, compression format, S3 bucket, additional artifacts, -// and schema elements in the definition. +// The definition of Amazon Web Services Cost and Usage Report. You can specify +// the report name, time unit, report format, compression format, S3 bucket, +// additional artifacts, and schema elements in the definition. type ReportDefinition struct { _ struct{} `type:"structure"` @@ -882,16 +1263,18 @@ // AdditionalSchemaElements is a required field AdditionalSchemaElements []*string `type:"list" required:"true" enum:"SchemaElement"` - // The Amazon resource name of the billing view. You can get this value by using - // the billing view service public APIs. + // The Amazon resource name of the billing view. The BillingViewArn is needed + // to create Amazon Web Services Cost and Usage Report for each billing group + // maintained in the Amazon Web Services Billing Conductor service. The BillingViewArn + // for a billing group can be constructed as: arn:aws:billing::payer-account-id:billingview/billing-group-primary-account-id BillingViewArn *string `type:"string"` - // The compression format that AWS uses for the report. + // The compression format that Amazon Web Services uses for the report. // // Compression is a required field Compression *string `type:"string" required:"true" enum:"CompressionFormat"` - // The format that AWS saves the report in. + // The format that Amazon Web Services saves the report in. // // Format is a required field Format *string `type:"string" required:"true" enum:"ReportFormat"` @@ -907,22 +1290,26 @@ // ReportName is a required field ReportName *string `type:"string" required:"true"` + // The status of the report. + ReportStatus *ReportStatus `type:"structure"` + // Whether you want Amazon Web Services to overwrite the previous version of // each report or to deliver the report in addition to the previous versions. ReportVersioning *string `type:"string" enum:"ReportVersioning"` - // The S3 bucket where AWS delivers the report. + // The S3 bucket where Amazon Web Services delivers the report. // // S3Bucket is a required field S3Bucket *string `type:"string" required:"true"` - // The prefix that AWS adds to the report name when AWS delivers the report. - // Your prefix can't include spaces. + // The prefix that Amazon Web Services adds to the report name when Amazon Web + // Services delivers the report. Your prefix can't include spaces. // // S3Prefix is a required field S3Prefix *string `type:"string" required:"true"` - // The region of the S3 bucket that AWS delivers the report into. + // The region of the S3 bucket that Amazon Web Services delivers the report + // into. // // S3Region is a required field S3Region *string `type:"string" required:"true" enum:"AWSRegion"` @@ -978,6 +1365,11 @@ if s.TimeUnit == nil { invalidParams.Add(request.NewErrParamRequired("TimeUnit")) } + if s.ReportStatus != nil { + if err := s.ReportStatus.Validate(); err != nil { + invalidParams.AddNested("ReportStatus", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -1027,6 +1419,12 @@ return s } +// SetReportStatus sets the ReportStatus field's value. +func (s *ReportDefinition) SetReportStatus(v *ReportStatus) *ReportDefinition { + s.ReportStatus = v + return s +} + // SetReportVersioning sets the ReportVersioning field's value. func (s *ReportDefinition) SetReportVersioning(v string) *ReportDefinition { s.ReportVersioning = &v @@ -1123,7 +1521,373 @@ return s.RespMetadata.RequestID } -// The input fails to satisfy the constraints specified by an AWS service. +// A two element dictionary with a lastDelivery and lastStatus key whose values +// describe the date and status of the last delivered report for a particular +// report definition. +type ReportStatus struct { + _ struct{} `type:"structure"` + + // A timestamp that gives the date of a report delivery. + LastDelivery *string `locationName:"lastDelivery" min:"16" type:"string"` + + // An enum that gives the status of a report delivery. + LastStatus *string `locationName:"lastStatus" type:"string" enum:"LastStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReportStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReportStatus) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ReportStatus) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReportStatus"} + if s.LastDelivery != nil && len(*s.LastDelivery) < 16 { + invalidParams.Add(request.NewErrParamMinLen("LastDelivery", 16)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLastDelivery sets the LastDelivery field's value. +func (s *ReportStatus) SetLastDelivery(v string) *ReportStatus { + s.LastDelivery = &v + return s +} + +// SetLastStatus sets the LastStatus field's value. +func (s *ReportStatus) SetLastStatus(v string) *ReportStatus { + s.LastStatus = &v + return s +} + +// The specified report (ReportName) in the request doesn't exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A message to show the detail of the exception. + 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes a tag. A tag is a key-value pair. You can add up to 50 tags to +// a report definition. +type Tag struct { + _ struct{} `type:"structure"` + + // The key of the tag. Tag keys are case sensitive. Each report definition can + // only have up to one tag with the same key. If you try to add an existing + // tag with the same key, the existing tag value will be updated to the new + // value. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value of the tag. Tag values are case-sensitive. This can be an empty + // string. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The report name of the report definition that tags are to be associated with. + // + // ReportName is a required field + ReportName *string `type:"string" required:"true"` + + // The tags to be assigned to the report definition resource. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ReportName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportName")) + } + 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 +} + +// SetReportName sets the ReportName field's value. +func (s *TagResourceInput) SetReportName(v string) *TagResourceInput { + s.ReportName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The report name of the report definition that tags are to be disassociated + // from. + // + // ReportName is a required field + ReportName *string `type:"string" required:"true"` + + // The tags to be disassociated from the report definition resource. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ReportName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportName")) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetReportName sets the ReportName field's value. +func (s *UntagResourceInput) SetReportName(v string) *UntagResourceInput { + s.ReportName = &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() +} + +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1188,7 +1952,8 @@ return s.RespMetadata.RequestID } -// The region of the S3 bucket that AWS delivers the report into. +// The region of the S3 bucket that Amazon Web Services delivers the report +// into. const ( // AWSRegionAfSouth1 is a AWSRegion enum value AWSRegionAfSouth1 = "af-south-1" @@ -1309,7 +2074,8 @@ } } -// The types of manifest that you want AWS to create for this report. +// The types of manifest that you want Amazon Web Services to create for this +// report. const ( // AdditionalArtifactRedshift is a AdditionalArtifact enum value AdditionalArtifactRedshift = "REDSHIFT" @@ -1330,7 +2096,7 @@ } } -// The compression format that AWS uses for the report. +// The compression format that Amazon Web Services uses for the report. const ( // CompressionFormatZip is a CompressionFormat enum value CompressionFormatZip = "ZIP" @@ -1351,7 +2117,27 @@ } } -// The format that AWS saves the report in. +const ( + // LastStatusSuccess is a LastStatus enum value + LastStatusSuccess = "SUCCESS" + + // LastStatusErrorPermissions is a LastStatus enum value + LastStatusErrorPermissions = "ERROR_PERMISSIONS" + + // LastStatusErrorNoBucket is a LastStatus enum value + LastStatusErrorNoBucket = "ERROR_NO_BUCKET" +) + +// LastStatus_Values returns all elements of the LastStatus enum +func LastStatus_Values() []string { + return []string{ + LastStatusSuccess, + LastStatusErrorPermissions, + LastStatusErrorNoBucket, + } +} + +// The format that Amazon Web Services saves the report in. const ( // ReportFormatTextOrcsv is a ReportFormat enum value ReportFormatTextOrcsv = "textORcsv" @@ -1384,13 +2170,16 @@ } } -// Whether or not AWS includes resource IDs in the report. +// Whether or not Amazon Web Services includes resource IDs in the report. const ( // SchemaElementResources is a SchemaElement enum value SchemaElementResources = "RESOURCES" // SchemaElementSplitCostAllocationData is a SchemaElement enum value SchemaElementSplitCostAllocationData = "SPLIT_COST_ALLOCATION_DATA" + + // SchemaElementManualDiscountCompatibility is a SchemaElement enum value + SchemaElementManualDiscountCompatibility = "MANUAL_DISCOUNT_COMPATIBILITY" ) // SchemaElement_Values returns all elements of the SchemaElement enum @@ -1398,6 +2187,7 @@ return []string{ SchemaElementResources, SchemaElementSplitCostAllocationData, + SchemaElementManualDiscountCompatibility, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/costandusagereportserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/costandusagereportserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/costandusagereportserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/costandusagereportserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -71,6 +71,10 @@ DescribeReportDefinitionsPages(*costandusagereportservice.DescribeReportDefinitionsInput, func(*costandusagereportservice.DescribeReportDefinitionsOutput, bool) bool) error DescribeReportDefinitionsPagesWithContext(aws.Context, *costandusagereportservice.DescribeReportDefinitionsInput, func(*costandusagereportservice.DescribeReportDefinitionsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*costandusagereportservice.ListTagsForResourceInput) (*costandusagereportservice.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *costandusagereportservice.ListTagsForResourceInput, ...request.Option) (*costandusagereportservice.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*costandusagereportservice.ListTagsForResourceInput) (*request.Request, *costandusagereportservice.ListTagsForResourceOutput) + ModifyReportDefinition(*costandusagereportservice.ModifyReportDefinitionInput) (*costandusagereportservice.ModifyReportDefinitionOutput, error) ModifyReportDefinitionWithContext(aws.Context, *costandusagereportservice.ModifyReportDefinitionInput, ...request.Option) (*costandusagereportservice.ModifyReportDefinitionOutput, error) ModifyReportDefinitionRequest(*costandusagereportservice.ModifyReportDefinitionInput) (*request.Request, *costandusagereportservice.ModifyReportDefinitionOutput) @@ -78,6 +82,14 @@ PutReportDefinition(*costandusagereportservice.PutReportDefinitionInput) (*costandusagereportservice.PutReportDefinitionOutput, error) PutReportDefinitionWithContext(aws.Context, *costandusagereportservice.PutReportDefinitionInput, ...request.Option) (*costandusagereportservice.PutReportDefinitionOutput, error) PutReportDefinitionRequest(*costandusagereportservice.PutReportDefinitionInput) (*request.Request, *costandusagereportservice.PutReportDefinitionOutput) + + TagResource(*costandusagereportservice.TagResourceInput) (*costandusagereportservice.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *costandusagereportservice.TagResourceInput, ...request.Option) (*costandusagereportservice.TagResourceOutput, error) + TagResourceRequest(*costandusagereportservice.TagResourceInput) (*request.Request, *costandusagereportservice.TagResourceOutput) + + UntagResource(*costandusagereportservice.UntagResourceInput) (*costandusagereportservice.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *costandusagereportservice.UntagResourceInput, ...request.Option) (*costandusagereportservice.UntagResourceOutput, error) + UntagResourceRequest(*costandusagereportservice.UntagResourceInput) (*request.Request, *costandusagereportservice.UntagResourceOutput) } var _ CostandUsageReportServiceAPI = (*costandusagereportservice.CostandUsageReportService)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,18 +3,21 @@ // Package costandusagereportservice provides the client and types for making API // requests to AWS Cost and Usage Report Service. // -// The AWS Cost and Usage Report API enables you to programmatically create, -// query, and delete AWS Cost and Usage report definitions. +// You can use the Amazon Web Services Cost and Usage Report API to programmatically +// create, query, and delete Amazon Web Services Cost and Usage Report definitions. // -// AWS Cost and Usage reports track the monthly AWS costs and usage associated -// with your AWS account. The report contains line items for each unique combination -// of AWS product, usage type, and operation that your AWS account uses. You -// can configure the AWS Cost and Usage report to show only the data that you -// want, using the AWS Cost and Usage API. +// Amazon Web Services Cost and Usage Report track the monthly Amazon Web Services +// costs and usage associated with your Amazon Web Services account. The report +// contains line items for each unique combination of Amazon Web Services product, +// usage type, and operation that your Amazon Web Services account uses. You +// can configure the Amazon Web Services Cost and Usage Report to show only +// the data that you want, using the Amazon Web Services Cost and Usage Report +// API. // // # Service Endpoint // -// The AWS Cost and Usage Report API provides the following endpoint: +// The Amazon Web Services Cost and Usage Report API provides the following +// endpoint: // // - cur.us-east-1.amazonaws.com // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -29,10 +29,17 @@ // must delete an existing report. ErrCodeReportLimitReachedException = "ReportLimitReachedException" + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified report (ReportName) in the request doesn't exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + // ErrCodeValidationException for service response error code // "ValidationException". // - // The input fails to satisfy the constraints specified by an AWS service. + // The input fails to satisfy the constraints specified by an Amazon Web Services + // service. ErrCodeValidationException = "ValidationException" ) @@ -40,5 +47,6 @@ "DuplicateReportNameException": newErrorDuplicateReportNameException, "InternalErrorException": newErrorInternalErrorException, "ReportLimitReachedException": newErrorReportLimitReachedException, + "ResourceNotFoundException": newErrorResourceNotFoundException, "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costandusagereportservice/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costandusagereportservice/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -118,6 +118,8 @@ fmt.Println(costandusagereportservice.ErrCodeInternalErrorException, aerr.Error()) case costandusagereportservice.ErrCodeValidationException: fmt.Println(costandusagereportservice.ErrCodeValidationException, aerr.Error()) + case costandusagereportservice.ErrCodeResourceNotFoundException: + fmt.Println(costandusagereportservice.ErrCodeResourceNotFoundException, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costexplorer/api.go golang-github-aws-aws-sdk-go-1.48.14/service/costexplorer/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costexplorer/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costexplorer/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -6614,7 +6614,7 @@ return s } -// Details about the Amazon EC2 instances that Amazon Web Services recommends +// Details about the Amazon EC2 reservations that Amazon Web Services recommends // that you purchase. type EC2InstanceDetails struct { _ struct{} `type:"structure"` @@ -6931,8 +6931,8 @@ return s } -// Details about the Amazon OpenSearch Service instances that Amazon Web Services -// recommends that you purchase. +// Details about the Amazon OpenSearch Service reservations that Amazon Web +// Services recommends that you purchase. type ESInstanceDetails struct { _ struct{} `type:"structure"` @@ -7000,8 +7000,8 @@ return s } -// Details about the Amazon ElastiCache instances that Amazon Web Services recommends -// that you purchase. +// Details about the Amazon ElastiCache reservations that Amazon Web Services +// recommends that you purchase. type ElastiCacheInstanceDetails struct { _ struct{} `type:"structure"` @@ -11711,26 +11711,32 @@ return s } -// Details about the instances that Amazon Web Services recommends that you +// Details about the reservations that Amazon Web Services recommends that you // purchase. type InstanceDetails struct { _ struct{} `type:"structure"` - // The Amazon EC2 instances that Amazon Web Services recommends that you purchase. + // The Amazon EC2 reservations that Amazon Web Services recommends that you + // purchase. EC2InstanceDetails *EC2InstanceDetails `type:"structure"` - // The Amazon OpenSearch Service instances that Amazon Web Services recommends + // The Amazon OpenSearch Service reservations that Amazon Web Services recommends // that you purchase. ESInstanceDetails *ESInstanceDetails `type:"structure"` - // The ElastiCache instances that Amazon Web Services recommends that you purchase. + // The ElastiCache reservations that Amazon Web Services recommends that you + // purchase. ElastiCacheInstanceDetails *ElastiCacheInstanceDetails `type:"structure"` - // The Amazon RDS instances that Amazon Web Services recommends that you purchase. - RDSInstanceDetails *RDSInstanceDetails `type:"structure"` + // The MemoryDB reservations that Amazon Web Services recommends that you purchase. + MemoryDBInstanceDetails *MemoryDBInstanceDetails `type:"structure"` - // The Amazon Redshift instances that Amazon Web Services recommends that you + // The Amazon RDS reservations that Amazon Web Services recommends that you // purchase. + RDSInstanceDetails *RDSInstanceDetails `type:"structure"` + + // The Amazon Redshift reservations that Amazon Web Services recommends that + // you purchase. RedshiftInstanceDetails *RedshiftInstanceDetails `type:"structure"` } @@ -11770,6 +11776,12 @@ return s } +// SetMemoryDBInstanceDetails sets the MemoryDBInstanceDetails field's value. +func (s *InstanceDetails) SetMemoryDBInstanceDetails(v *MemoryDBInstanceDetails) *InstanceDetails { + s.MemoryDBInstanceDetails = v + return s +} + // SetRDSInstanceDetails sets the RDSInstanceDetails field's value. func (s *InstanceDetails) SetRDSInstanceDetails(v *RDSInstanceDetails) *InstanceDetails { s.RDSInstanceDetails = v @@ -12333,6 +12345,75 @@ return s } +// Details about the MemoryDB reservations that Amazon Web Services recommends +// that you purchase. +type MemoryDBInstanceDetails struct { + _ struct{} `type:"structure"` + + // Determines whether the recommendation is for a current generation instance. + CurrentGeneration *bool `type:"boolean"` + + // The instance family of the recommended reservation. + Family *string `type:"string"` + + // The node type of the recommended reservation. + NodeType *string `type:"string"` + + // The Amazon Web Services Region of the recommended reservation. + Region *string `type:"string"` + + // Determines whether the recommended reservation is size flexible. + SizeFlexEligible *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 MemoryDBInstanceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemoryDBInstanceDetails) GoString() string { + return s.String() +} + +// SetCurrentGeneration sets the CurrentGeneration field's value. +func (s *MemoryDBInstanceDetails) SetCurrentGeneration(v bool) *MemoryDBInstanceDetails { + s.CurrentGeneration = &v + return s +} + +// SetFamily sets the Family field's value. +func (s *MemoryDBInstanceDetails) SetFamily(v string) *MemoryDBInstanceDetails { + s.Family = &v + return s +} + +// SetNodeType sets the NodeType field's value. +func (s *MemoryDBInstanceDetails) SetNodeType(v string) *MemoryDBInstanceDetails { + s.NodeType = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *MemoryDBInstanceDetails) SetRegion(v string) *MemoryDBInstanceDetails { + s.Region = &v + return s +} + +// SetSizeFlexEligible sets the SizeFlexEligible field's value. +func (s *MemoryDBInstanceDetails) SetSizeFlexEligible(v bool) *MemoryDBInstanceDetails { + s.SizeFlexEligible = &v + return s +} + // The aggregated value for a metric. type MetricValue struct { _ struct{} `type:"structure"` @@ -12562,7 +12643,7 @@ return s } -// Details about the Amazon RDS instances that Amazon Web Services recommends +// Details about the Amazon RDS reservations that Amazon Web Services recommends // that you purchase. type RDSInstanceDetails struct { _ struct{} `type:"structure"` @@ -13040,7 +13121,7 @@ return s } -// Details about the Amazon Redshift instances that Amazon Web Services recommends +// Details about the Amazon Redshift reservations that Amazon Web Services recommends // that you purchase. type RedshiftInstanceDetails struct { _ struct{} `type:"structure"` @@ -13536,7 +13617,7 @@ // during the specified historical period if you had a reservation. EstimatedReservationCostForLookbackPeriod *string `type:"string"` - // Details about the instances that Amazon Web Services recommends that you + // Details about the reservations that Amazon Web Services recommends that you // purchase. InstanceDetails *InstanceDetails `type:"structure"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/api.go golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5273 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package costoptimizationhub + +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" +) + +const opGetPreferences = "GetPreferences" + +// GetPreferencesRequest generates a "aws/request.Request" representing the +// client's request for the GetPreferences 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 GetPreferences for more information on using the GetPreferences +// 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 GetPreferencesRequest method. +// req, resp := client.GetPreferencesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetPreferences +func (c *CostOptimizationHub) GetPreferencesRequest(input *GetPreferencesInput) (req *request.Request, output *GetPreferencesOutput) { + op := &request.Operation{ + Name: opGetPreferences, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetPreferencesInput{} + } + + output = &GetPreferencesOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPreferences API operation for Cost Optimization Hub. +// +// Returns a set of preferences for an account in order to add account-specific +// preferences into the service. These preferences impact how the savings associated +// with recommendations are presented—estimated savings after discounts or +// estimated savings before discounts, for example. +// +// 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 Cost Optimization Hub's +// API operation GetPreferences for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetPreferences +func (c *CostOptimizationHub) GetPreferences(input *GetPreferencesInput) (*GetPreferencesOutput, error) { + req, out := c.GetPreferencesRequest(input) + return out, req.Send() +} + +// GetPreferencesWithContext is the same as GetPreferences with the addition of +// the ability to pass a context and additional request options. +// +// See GetPreferences 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 *CostOptimizationHub) GetPreferencesWithContext(ctx aws.Context, input *GetPreferencesInput, opts ...request.Option) (*GetPreferencesOutput, error) { + req, out := c.GetPreferencesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRecommendation = "GetRecommendation" + +// GetRecommendationRequest generates a "aws/request.Request" representing the +// client's request for the GetRecommendation 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 GetRecommendation for more information on using the GetRecommendation +// 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 GetRecommendationRequest method. +// req, resp := client.GetRecommendationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetRecommendation +func (c *CostOptimizationHub) GetRecommendationRequest(input *GetRecommendationInput) (req *request.Request, output *GetRecommendationOutput) { + op := &request.Operation{ + Name: opGetRecommendation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetRecommendationInput{} + } + + output = &GetRecommendationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRecommendation API operation for Cost Optimization Hub. +// +// Returns both the current and recommended resource configuration and the estimated +// cost impact for a recommendation. +// +// The recommendationId is only valid for up to a maximum of 24 hours as recommendations +// are refreshed daily. To retrieve the recommendationId, use the ListRecommendations +// API. +// +// 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 Cost Optimization Hub's +// API operation GetRecommendation for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ResourceNotFoundException +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/GetRecommendation +func (c *CostOptimizationHub) GetRecommendation(input *GetRecommendationInput) (*GetRecommendationOutput, error) { + req, out := c.GetRecommendationRequest(input) + return out, req.Send() +} + +// GetRecommendationWithContext is the same as GetRecommendation with the addition of +// the ability to pass a context and additional request options. +// +// See GetRecommendation 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 *CostOptimizationHub) GetRecommendationWithContext(ctx aws.Context, input *GetRecommendationInput, opts ...request.Option) (*GetRecommendationOutput, error) { + req, out := c.GetRecommendationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListEnrollmentStatuses = "ListEnrollmentStatuses" + +// ListEnrollmentStatusesRequest generates a "aws/request.Request" representing the +// client's request for the ListEnrollmentStatuses 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 ListEnrollmentStatuses for more information on using the ListEnrollmentStatuses +// 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 ListEnrollmentStatusesRequest method. +// req, resp := client.ListEnrollmentStatusesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListEnrollmentStatuses +func (c *CostOptimizationHub) ListEnrollmentStatusesRequest(input *ListEnrollmentStatusesInput) (req *request.Request, output *ListEnrollmentStatusesOutput) { + op := &request.Operation{ + Name: opListEnrollmentStatuses, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnrollmentStatusesInput{} + } + + output = &ListEnrollmentStatusesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnrollmentStatuses API operation for Cost Optimization Hub. +// +// Retrieves the enrollment status for an account. It can also return the list +// of accounts that are enrolled under the organization. +// +// 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 Cost Optimization Hub's +// API operation ListEnrollmentStatuses for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListEnrollmentStatuses +func (c *CostOptimizationHub) ListEnrollmentStatuses(input *ListEnrollmentStatusesInput) (*ListEnrollmentStatusesOutput, error) { + req, out := c.ListEnrollmentStatusesRequest(input) + return out, req.Send() +} + +// ListEnrollmentStatusesWithContext is the same as ListEnrollmentStatuses with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnrollmentStatuses 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 *CostOptimizationHub) ListEnrollmentStatusesWithContext(ctx aws.Context, input *ListEnrollmentStatusesInput, opts ...request.Option) (*ListEnrollmentStatusesOutput, error) { + req, out := c.ListEnrollmentStatusesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnrollmentStatusesPages iterates over the pages of a ListEnrollmentStatuses operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnrollmentStatuses 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 ListEnrollmentStatuses operation. +// pageNum := 0 +// err := client.ListEnrollmentStatusesPages(params, +// func(page *costoptimizationhub.ListEnrollmentStatusesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CostOptimizationHub) ListEnrollmentStatusesPages(input *ListEnrollmentStatusesInput, fn func(*ListEnrollmentStatusesOutput, bool) bool) error { + return c.ListEnrollmentStatusesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnrollmentStatusesPagesWithContext same as ListEnrollmentStatusesPages 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 *CostOptimizationHub) ListEnrollmentStatusesPagesWithContext(ctx aws.Context, input *ListEnrollmentStatusesInput, fn func(*ListEnrollmentStatusesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnrollmentStatusesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnrollmentStatusesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnrollmentStatusesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRecommendationSummaries = "ListRecommendationSummaries" + +// ListRecommendationSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListRecommendationSummaries 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 ListRecommendationSummaries for more information on using the ListRecommendationSummaries +// 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 ListRecommendationSummariesRequest method. +// req, resp := client.ListRecommendationSummariesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendationSummaries +func (c *CostOptimizationHub) ListRecommendationSummariesRequest(input *ListRecommendationSummariesInput) (req *request.Request, output *ListRecommendationSummariesOutput) { + op := &request.Operation{ + Name: opListRecommendationSummaries, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRecommendationSummariesInput{} + } + + output = &ListRecommendationSummariesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRecommendationSummaries API operation for Cost Optimization Hub. +// +// Returns a concise representation of savings estimates for resources. Also +// returns de-duped savings across different types of recommendations. +// +// The following filters are not supported for this API: recommendationIds, +// resourceArns, and resourceIds. +// +// 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 Cost Optimization Hub's +// API operation ListRecommendationSummaries for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendationSummaries +func (c *CostOptimizationHub) ListRecommendationSummaries(input *ListRecommendationSummariesInput) (*ListRecommendationSummariesOutput, error) { + req, out := c.ListRecommendationSummariesRequest(input) + return out, req.Send() +} + +// ListRecommendationSummariesWithContext is the same as ListRecommendationSummaries with the addition of +// the ability to pass a context and additional request options. +// +// See ListRecommendationSummaries 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 *CostOptimizationHub) ListRecommendationSummariesWithContext(ctx aws.Context, input *ListRecommendationSummariesInput, opts ...request.Option) (*ListRecommendationSummariesOutput, error) { + req, out := c.ListRecommendationSummariesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRecommendationSummariesPages iterates over the pages of a ListRecommendationSummaries operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRecommendationSummaries 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 ListRecommendationSummaries operation. +// pageNum := 0 +// err := client.ListRecommendationSummariesPages(params, +// func(page *costoptimizationhub.ListRecommendationSummariesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CostOptimizationHub) ListRecommendationSummariesPages(input *ListRecommendationSummariesInput, fn func(*ListRecommendationSummariesOutput, bool) bool) error { + return c.ListRecommendationSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRecommendationSummariesPagesWithContext same as ListRecommendationSummariesPages 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 *CostOptimizationHub) ListRecommendationSummariesPagesWithContext(ctx aws.Context, input *ListRecommendationSummariesInput, fn func(*ListRecommendationSummariesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRecommendationSummariesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRecommendationSummariesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRecommendationSummariesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRecommendations = "ListRecommendations" + +// ListRecommendationsRequest generates a "aws/request.Request" representing the +// client's request for the ListRecommendations 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 ListRecommendations for more information on using the ListRecommendations +// 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 ListRecommendationsRequest method. +// req, resp := client.ListRecommendationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendations +func (c *CostOptimizationHub) ListRecommendationsRequest(input *ListRecommendationsInput) (req *request.Request, output *ListRecommendationsOutput) { + op := &request.Operation{ + Name: opListRecommendations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRecommendationsInput{} + } + + output = &ListRecommendationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRecommendations API operation for Cost Optimization Hub. +// +// Returns a list of recommendations. +// +// 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 Cost Optimization Hub's +// API operation ListRecommendations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/ListRecommendations +func (c *CostOptimizationHub) ListRecommendations(input *ListRecommendationsInput) (*ListRecommendationsOutput, error) { + req, out := c.ListRecommendationsRequest(input) + return out, req.Send() +} + +// ListRecommendationsWithContext is the same as ListRecommendations with the addition of +// the ability to pass a context and additional request options. +// +// See ListRecommendations 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 *CostOptimizationHub) ListRecommendationsWithContext(ctx aws.Context, input *ListRecommendationsInput, opts ...request.Option) (*ListRecommendationsOutput, error) { + req, out := c.ListRecommendationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRecommendationsPages iterates over the pages of a ListRecommendations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRecommendations 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 ListRecommendations operation. +// pageNum := 0 +// err := client.ListRecommendationsPages(params, +// func(page *costoptimizationhub.ListRecommendationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *CostOptimizationHub) ListRecommendationsPages(input *ListRecommendationsInput, fn func(*ListRecommendationsOutput, bool) bool) error { + return c.ListRecommendationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRecommendationsPagesWithContext same as ListRecommendationsPages 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 *CostOptimizationHub) ListRecommendationsPagesWithContext(ctx aws.Context, input *ListRecommendationsInput, fn func(*ListRecommendationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRecommendationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRecommendationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRecommendationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opUpdateEnrollmentStatus = "UpdateEnrollmentStatus" + +// UpdateEnrollmentStatusRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnrollmentStatus 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 UpdateEnrollmentStatus for more information on using the UpdateEnrollmentStatus +// 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 UpdateEnrollmentStatusRequest method. +// req, resp := client.UpdateEnrollmentStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdateEnrollmentStatus +func (c *CostOptimizationHub) UpdateEnrollmentStatusRequest(input *UpdateEnrollmentStatusInput) (req *request.Request, output *UpdateEnrollmentStatusOutput) { + op := &request.Operation{ + Name: opUpdateEnrollmentStatus, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateEnrollmentStatusInput{} + } + + output = &UpdateEnrollmentStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnrollmentStatus API operation for Cost Optimization Hub. +// +// Updates the enrollment (opt in and opt out) status of an account to the Cost +// Optimization Hub service. +// +// If the account is a management account of an organization, this action can +// also be used to enroll member accounts of the organization. +// +// You must have the appropriate permissions to opt in to Cost Optimization +// Hub and to view its recommendations. When you opt in, Cost Optimization Hub +// automatically creates a service-linked role in your account to access its +// data. +// +// 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 Cost Optimization Hub's +// API operation UpdateEnrollmentStatus for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdateEnrollmentStatus +func (c *CostOptimizationHub) UpdateEnrollmentStatus(input *UpdateEnrollmentStatusInput) (*UpdateEnrollmentStatusOutput, error) { + req, out := c.UpdateEnrollmentStatusRequest(input) + return out, req.Send() +} + +// UpdateEnrollmentStatusWithContext is the same as UpdateEnrollmentStatus with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnrollmentStatus 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 *CostOptimizationHub) UpdateEnrollmentStatusWithContext(ctx aws.Context, input *UpdateEnrollmentStatusInput, opts ...request.Option) (*UpdateEnrollmentStatusOutput, error) { + req, out := c.UpdateEnrollmentStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdatePreferences = "UpdatePreferences" + +// UpdatePreferencesRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePreferences 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 UpdatePreferences for more information on using the UpdatePreferences +// 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 UpdatePreferencesRequest method. +// req, resp := client.UpdatePreferencesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdatePreferences +func (c *CostOptimizationHub) UpdatePreferencesRequest(input *UpdatePreferencesInput) (req *request.Request, output *UpdatePreferencesOutput) { + op := &request.Operation{ + Name: opUpdatePreferences, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdatePreferencesInput{} + } + + output = &UpdatePreferencesOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePreferences API operation for Cost Optimization Hub. +// +// Updates a set of preferences for an account in order to add account-specific +// preferences into the service. These preferences impact how the savings associated +// with recommendations are presented. +// +// 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 Cost Optimization Hub's +// API operation UpdatePreferences for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An error on the server occurred during the processing of your request. Try +// again later. +// +// - AccessDeniedException +// You are not authorized to use this operation with the given parameters. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26/UpdatePreferences +func (c *CostOptimizationHub) UpdatePreferences(input *UpdatePreferencesInput) (*UpdatePreferencesOutput, error) { + req, out := c.UpdatePreferencesRequest(input) + return out, req.Send() +} + +// UpdatePreferencesWithContext is the same as UpdatePreferences with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePreferences 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 *CostOptimizationHub) UpdatePreferencesWithContext(ctx aws.Context, input *UpdatePreferencesInput, opts ...request.Option) (*UpdatePreferencesOutput, error) { + req, out := c.UpdatePreferencesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You are not authorized to use this operation with the given parameters. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes the enrollment status of an organization's member accounts in Cost +// Optimization Hub. +type AccountEnrollmentStatus struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID. + AccountId *string `locationName:"accountId" type:"string"` + + // The time when the account enrollment status was created. + CreatedTimestamp *time.Time `locationName:"createdTimestamp" type:"timestamp"` + + // The time when the account enrollment status was last updated. + LastUpdatedTimestamp *time.Time `locationName:"lastUpdatedTimestamp" type:"timestamp"` + + // The account enrollment status. + Status *string `locationName:"status" type:"string" enum:"EnrollmentStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccountEnrollmentStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccountEnrollmentStatus) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *AccountEnrollmentStatus) SetAccountId(v string) *AccountEnrollmentStatus { + s.AccountId = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *AccountEnrollmentStatus) SetCreatedTimestamp(v time.Time) *AccountEnrollmentStatus { + s.CreatedTimestamp = &v + return s +} + +// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value. +func (s *AccountEnrollmentStatus) SetLastUpdatedTimestamp(v time.Time) *AccountEnrollmentStatus { + s.LastUpdatedTimestamp = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AccountEnrollmentStatus) SetStatus(v string) *AccountEnrollmentStatus { + s.Status = &v + return s +} + +// Describes the Amazon Elastic Block Store performance configuration of the +// current and recommended resource configuration for a recommendation. +type BlockStoragePerformanceConfiguration struct { + _ struct{} `type:"structure"` + + // The number of I/O operations per second. + Iops *float64 `locationName:"iops" type:"double"` + + // The throughput that the volume supports. + Throughput *float64 `locationName:"throughput" 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 BlockStoragePerformanceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BlockStoragePerformanceConfiguration) GoString() string { + return s.String() +} + +// SetIops sets the Iops field's value. +func (s *BlockStoragePerformanceConfiguration) SetIops(v float64) *BlockStoragePerformanceConfiguration { + s.Iops = &v + return s +} + +// SetThroughput sets the Throughput field's value. +func (s *BlockStoragePerformanceConfiguration) SetThroughput(v float64) *BlockStoragePerformanceConfiguration { + s.Throughput = &v + return s +} + +// Describes the performance configuration for compute services such as Amazon +// EC2, Lambda, and ECS. +type ComputeConfiguration struct { + _ struct{} `type:"structure"` + + // The architecture of the resource. + Architecture *string `locationName:"architecture" type:"string"` + + // The memory size of the resource. + MemorySizeInMB *int64 `locationName:"memorySizeInMB" type:"integer"` + + // The platform of the resource. The platform is the specific combination of + // operating system, license model, and software on an instance. + Platform *string `locationName:"platform" type:"string"` + + // The number of vCPU cores in the resource. + VCpu *float64 `locationName:"vCpu" 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 ComputeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ComputeConfiguration) GoString() string { + return s.String() +} + +// SetArchitecture sets the Architecture field's value. +func (s *ComputeConfiguration) SetArchitecture(v string) *ComputeConfiguration { + s.Architecture = &v + return s +} + +// SetMemorySizeInMB sets the MemorySizeInMB field's value. +func (s *ComputeConfiguration) SetMemorySizeInMB(v int64) *ComputeConfiguration { + s.MemorySizeInMB = &v + return s +} + +// SetPlatform sets the Platform field's value. +func (s *ComputeConfiguration) SetPlatform(v string) *ComputeConfiguration { + s.Platform = &v + return s +} + +// SetVCpu sets the VCpu field's value. +func (s *ComputeConfiguration) SetVCpu(v float64) *ComputeConfiguration { + s.VCpu = &v + return s +} + +// The Compute Savings Plans recommendation details. +type ComputeSavingsPlans struct { + _ struct{} `type:"structure"` + + // Configuration details of the Compute Savings Plans to purchase. + Configuration *ComputeSavingsPlansConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the Savings Plans purchase recommendation. + CostCalculation *SavingsPlansCostCalculation `locationName:"costCalculation" 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 ComputeSavingsPlans) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ComputeSavingsPlans) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *ComputeSavingsPlans) SetConfiguration(v *ComputeSavingsPlansConfiguration) *ComputeSavingsPlans { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *ComputeSavingsPlans) SetCostCalculation(v *SavingsPlansCostCalculation) *ComputeSavingsPlans { + s.CostCalculation = v + return s +} + +// The Compute Savings Plans configuration used for recommendations. +type ComputeSavingsPlansConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. Amazon Web Services + // calculates recommendations including the management account and member accounts + // if the value is set to PAYER. If the value is LINKED, recommendations are + // calculated for individual member accounts only. + AccountScope *string `locationName:"accountScope" type:"string"` + + // The hourly commitment for the Savings Plans type. + HourlyCommitment *string `locationName:"hourlyCommitment" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Savings Plans recommendation term in years. + Term *string `locationName:"term" 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 ComputeSavingsPlansConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ComputeSavingsPlansConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *ComputeSavingsPlansConfiguration) SetAccountScope(v string) *ComputeSavingsPlansConfiguration { + s.AccountScope = &v + return s +} + +// SetHourlyCommitment sets the HourlyCommitment field's value. +func (s *ComputeSavingsPlansConfiguration) SetHourlyCommitment(v string) *ComputeSavingsPlansConfiguration { + s.HourlyCommitment = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *ComputeSavingsPlansConfiguration) SetPaymentOption(v string) *ComputeSavingsPlansConfiguration { + s.PaymentOption = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *ComputeSavingsPlansConfiguration) SetTerm(v string) *ComputeSavingsPlansConfiguration { + s.Term = &v + return s +} + +// Describes the Amazon Elastic Block Store volume configuration of the current +// and recommended resource configuration for a recommendation. +type EbsVolume struct { + _ struct{} `type:"structure"` + + // The Amazon Elastic Block Store volume configuration used for recommendations. + Configuration *EbsVolumeConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the recommendation. + CostCalculation *ResourceCostCalculation `locationName:"costCalculation" 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 EbsVolume) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EbsVolume) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *EbsVolume) SetConfiguration(v *EbsVolumeConfiguration) *EbsVolume { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *EbsVolume) SetCostCalculation(v *ResourceCostCalculation) *EbsVolume { + s.CostCalculation = v + return s +} + +// The Amazon Elastic Block Store volume configuration used for recommendations. +type EbsVolumeConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon Elastic Block Store attachment state. + AttachmentState *string `locationName:"attachmentState" type:"string"` + + // The Amazon Elastic Block Store performance configuration. + Performance *BlockStoragePerformanceConfiguration `locationName:"performance" type:"structure"` + + // The disk storage of the Amazon Elastic Block Store volume. + Storage *StorageConfiguration `locationName:"storage" 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 EbsVolumeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EbsVolumeConfiguration) GoString() string { + return s.String() +} + +// SetAttachmentState sets the AttachmentState field's value. +func (s *EbsVolumeConfiguration) SetAttachmentState(v string) *EbsVolumeConfiguration { + s.AttachmentState = &v + return s +} + +// SetPerformance sets the Performance field's value. +func (s *EbsVolumeConfiguration) SetPerformance(v *BlockStoragePerformanceConfiguration) *EbsVolumeConfiguration { + s.Performance = v + return s +} + +// SetStorage sets the Storage field's value. +func (s *EbsVolumeConfiguration) SetStorage(v *StorageConfiguration) *EbsVolumeConfiguration { + s.Storage = v + return s +} + +// The EC2 Auto Scaling group recommendation details. +type Ec2AutoScalingGroup struct { + _ struct{} `type:"structure"` + + // The EC2 Auto Scaling group configuration used for recommendations. + Configuration *Ec2AutoScalingGroupConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the recommendation. + CostCalculation *ResourceCostCalculation `locationName:"costCalculation" 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 Ec2AutoScalingGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2AutoScalingGroup) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *Ec2AutoScalingGroup) SetConfiguration(v *Ec2AutoScalingGroupConfiguration) *Ec2AutoScalingGroup { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *Ec2AutoScalingGroup) SetCostCalculation(v *ResourceCostCalculation) *Ec2AutoScalingGroup { + s.CostCalculation = v + return s +} + +// The EC2 auto scaling group configuration used for recommendations. +type Ec2AutoScalingGroupConfiguration struct { + _ struct{} `type:"structure"` + + // Details about the instance. + Instance *InstanceConfiguration `locationName:"instance" 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 Ec2AutoScalingGroupConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2AutoScalingGroupConfiguration) GoString() string { + return s.String() +} + +// SetInstance sets the Instance field's value. +func (s *Ec2AutoScalingGroupConfiguration) SetInstance(v *InstanceConfiguration) *Ec2AutoScalingGroupConfiguration { + s.Instance = v + return s +} + +// Describes the EC2 instance configuration of the current and recommended resource +// configuration for a recommendation. +type Ec2Instance struct { + _ struct{} `type:"structure"` + + // The EC2 instance configuration used for recommendations. + Configuration *Ec2InstanceConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the recommendation. + CostCalculation *ResourceCostCalculation `locationName:"costCalculation" 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 Ec2Instance) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2Instance) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *Ec2Instance) SetConfiguration(v *Ec2InstanceConfiguration) *Ec2Instance { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *Ec2Instance) SetCostCalculation(v *ResourceCostCalculation) *Ec2Instance { + s.CostCalculation = v + return s +} + +// The EC2 instance configuration used for recommendations. +type Ec2InstanceConfiguration struct { + _ struct{} `type:"structure"` + + // Details about the instance. + Instance *InstanceConfiguration `locationName:"instance" 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 Ec2InstanceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2InstanceConfiguration) GoString() string { + return s.String() +} + +// SetInstance sets the Instance field's value. +func (s *Ec2InstanceConfiguration) SetInstance(v *InstanceConfiguration) *Ec2InstanceConfiguration { + s.Instance = v + return s +} + +// The EC2 instance Savings Plans recommendation details. +type Ec2InstanceSavingsPlans struct { + _ struct{} `type:"structure"` + + // The EC2 instance Savings Plans configuration used for recommendations. + Configuration *Ec2InstanceSavingsPlansConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the Savings Plans purchase recommendation. + CostCalculation *SavingsPlansCostCalculation `locationName:"costCalculation" 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 Ec2InstanceSavingsPlans) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2InstanceSavingsPlans) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *Ec2InstanceSavingsPlans) SetConfiguration(v *Ec2InstanceSavingsPlansConfiguration) *Ec2InstanceSavingsPlans { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *Ec2InstanceSavingsPlans) SetCostCalculation(v *SavingsPlansCostCalculation) *Ec2InstanceSavingsPlans { + s.CostCalculation = v + return s +} + +// The EC2 instance Savings Plans configuration used for recommendations. +type Ec2InstanceSavingsPlansConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // The hourly commitment for the Savings Plans type. + HourlyCommitment *string `locationName:"hourlyCommitment" type:"string"` + + // The instance family of the recommended Savings Plan. + InstanceFamily *string `locationName:"instanceFamily" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Amazon Web Services Region of the commitment. + SavingsPlansRegion *string `locationName:"savingsPlansRegion" type:"string"` + + // The Savings Plans recommendation term in years. + Term *string `locationName:"term" 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 Ec2InstanceSavingsPlansConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2InstanceSavingsPlansConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *Ec2InstanceSavingsPlansConfiguration) SetAccountScope(v string) *Ec2InstanceSavingsPlansConfiguration { + s.AccountScope = &v + return s +} + +// SetHourlyCommitment sets the HourlyCommitment field's value. +func (s *Ec2InstanceSavingsPlansConfiguration) SetHourlyCommitment(v string) *Ec2InstanceSavingsPlansConfiguration { + s.HourlyCommitment = &v + return s +} + +// SetInstanceFamily sets the InstanceFamily field's value. +func (s *Ec2InstanceSavingsPlansConfiguration) SetInstanceFamily(v string) *Ec2InstanceSavingsPlansConfiguration { + s.InstanceFamily = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *Ec2InstanceSavingsPlansConfiguration) SetPaymentOption(v string) *Ec2InstanceSavingsPlansConfiguration { + s.PaymentOption = &v + return s +} + +// SetSavingsPlansRegion sets the SavingsPlansRegion field's value. +func (s *Ec2InstanceSavingsPlansConfiguration) SetSavingsPlansRegion(v string) *Ec2InstanceSavingsPlansConfiguration { + s.SavingsPlansRegion = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *Ec2InstanceSavingsPlansConfiguration) SetTerm(v string) *Ec2InstanceSavingsPlansConfiguration { + s.Term = &v + return s +} + +// The EC2 reserved instances recommendation details. +type Ec2ReservedInstances struct { + _ struct{} `type:"structure"` + + // The EC2 reserved instances configuration used for recommendations. + Configuration *Ec2ReservedInstancesConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the purchase recommendation. + CostCalculation *ReservedInstancesCostCalculation `locationName:"costCalculation" 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 Ec2ReservedInstances) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2ReservedInstances) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *Ec2ReservedInstances) SetConfiguration(v *Ec2ReservedInstancesConfiguration) *Ec2ReservedInstances { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *Ec2ReservedInstances) SetCostCalculation(v *ReservedInstancesCostCalculation) *Ec2ReservedInstances { + s.CostCalculation = v + return s +} + +// The EC2 reserved instances configuration used for recommendations. +type Ec2ReservedInstancesConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // Determines whether the recommendation is for a current generation instance. + CurrentGeneration *string `locationName:"currentGeneration" type:"string"` + + // The instance family of the recommended reservation. + InstanceFamily *string `locationName:"instanceFamily" type:"string"` + + // The type of instance that Amazon Web Services recommends. + InstanceType *string `locationName:"instanceType" type:"string"` + + // How much purchasing reserved instances costs you on a monthly basis. + MonthlyRecurringCost *string `locationName:"monthlyRecurringCost" type:"string"` + + // The number of normalized units that Amazon Web Services recommends that you + // purchase. + NormalizedUnitsToPurchase *string `locationName:"normalizedUnitsToPurchase" type:"string"` + + // The number of instances that Amazon Web Services recommends that you purchase. + NumberOfInstancesToPurchase *string `locationName:"numberOfInstancesToPurchase" type:"string"` + + // Indicates whether the recommendation is for standard or convertible reservations. + OfferingClass *string `locationName:"offeringClass" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The platform of the recommended reservation. The platform is the specific + // combination of operating system, license model, and software on an instance. + Platform *string `locationName:"platform" type:"string"` + + // The Amazon Web Services Region of the commitment. + ReservedInstancesRegion *string `locationName:"reservedInstancesRegion" type:"string"` + + // The service that you want your recommendations for. + Service *string `locationName:"service" type:"string"` + + // Determines whether the recommendation is size flexible. + SizeFlexEligible *bool `locationName:"sizeFlexEligible" type:"boolean"` + + // Determines whether the recommended reservation is dedicated or shared. + Tenancy *string `locationName:"tenancy" type:"string"` + + // The reserved instances recommendation term in years. + Term *string `locationName:"term" type:"string"` + + // How much purchasing this instance costs you upfront. + UpfrontCost *string `locationName:"upfrontCost" 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 Ec2ReservedInstancesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Ec2ReservedInstancesConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *Ec2ReservedInstancesConfiguration) SetAccountScope(v string) *Ec2ReservedInstancesConfiguration { + s.AccountScope = &v + return s +} + +// SetCurrentGeneration sets the CurrentGeneration field's value. +func (s *Ec2ReservedInstancesConfiguration) SetCurrentGeneration(v string) *Ec2ReservedInstancesConfiguration { + s.CurrentGeneration = &v + return s +} + +// SetInstanceFamily sets the InstanceFamily field's value. +func (s *Ec2ReservedInstancesConfiguration) SetInstanceFamily(v string) *Ec2ReservedInstancesConfiguration { + s.InstanceFamily = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *Ec2ReservedInstancesConfiguration) SetInstanceType(v string) *Ec2ReservedInstancesConfiguration { + s.InstanceType = &v + return s +} + +// SetMonthlyRecurringCost sets the MonthlyRecurringCost field's value. +func (s *Ec2ReservedInstancesConfiguration) SetMonthlyRecurringCost(v string) *Ec2ReservedInstancesConfiguration { + s.MonthlyRecurringCost = &v + return s +} + +// SetNormalizedUnitsToPurchase sets the NormalizedUnitsToPurchase field's value. +func (s *Ec2ReservedInstancesConfiguration) SetNormalizedUnitsToPurchase(v string) *Ec2ReservedInstancesConfiguration { + s.NormalizedUnitsToPurchase = &v + return s +} + +// SetNumberOfInstancesToPurchase sets the NumberOfInstancesToPurchase field's value. +func (s *Ec2ReservedInstancesConfiguration) SetNumberOfInstancesToPurchase(v string) *Ec2ReservedInstancesConfiguration { + s.NumberOfInstancesToPurchase = &v + return s +} + +// SetOfferingClass sets the OfferingClass field's value. +func (s *Ec2ReservedInstancesConfiguration) SetOfferingClass(v string) *Ec2ReservedInstancesConfiguration { + s.OfferingClass = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *Ec2ReservedInstancesConfiguration) SetPaymentOption(v string) *Ec2ReservedInstancesConfiguration { + s.PaymentOption = &v + return s +} + +// SetPlatform sets the Platform field's value. +func (s *Ec2ReservedInstancesConfiguration) SetPlatform(v string) *Ec2ReservedInstancesConfiguration { + s.Platform = &v + return s +} + +// SetReservedInstancesRegion sets the ReservedInstancesRegion field's value. +func (s *Ec2ReservedInstancesConfiguration) SetReservedInstancesRegion(v string) *Ec2ReservedInstancesConfiguration { + s.ReservedInstancesRegion = &v + return s +} + +// SetService sets the Service field's value. +func (s *Ec2ReservedInstancesConfiguration) SetService(v string) *Ec2ReservedInstancesConfiguration { + s.Service = &v + return s +} + +// SetSizeFlexEligible sets the SizeFlexEligible field's value. +func (s *Ec2ReservedInstancesConfiguration) SetSizeFlexEligible(v bool) *Ec2ReservedInstancesConfiguration { + s.SizeFlexEligible = &v + return s +} + +// SetTenancy sets the Tenancy field's value. +func (s *Ec2ReservedInstancesConfiguration) SetTenancy(v string) *Ec2ReservedInstancesConfiguration { + s.Tenancy = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *Ec2ReservedInstancesConfiguration) SetTerm(v string) *Ec2ReservedInstancesConfiguration { + s.Term = &v + return s +} + +// SetUpfrontCost sets the UpfrontCost field's value. +func (s *Ec2ReservedInstancesConfiguration) SetUpfrontCost(v string) *Ec2ReservedInstancesConfiguration { + s.UpfrontCost = &v + return s +} + +// The ECS service recommendation details. +type EcsService struct { + _ struct{} `type:"structure"` + + // The ECS service configuration used for recommendations. + Configuration *EcsServiceConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the recommendation. + CostCalculation *ResourceCostCalculation `locationName:"costCalculation" 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 EcsService) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EcsService) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *EcsService) SetConfiguration(v *EcsServiceConfiguration) *EcsService { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *EcsService) SetCostCalculation(v *ResourceCostCalculation) *EcsService { + s.CostCalculation = v + return s +} + +// The ECS service configuration used for recommendations. +type EcsServiceConfiguration struct { + _ struct{} `type:"structure"` + + // Details about the compute configuration. + Compute *ComputeConfiguration `locationName:"compute" 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 EcsServiceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EcsServiceConfiguration) GoString() string { + return s.String() +} + +// SetCompute sets the Compute field's value. +func (s *EcsServiceConfiguration) SetCompute(v *ComputeConfiguration) *EcsServiceConfiguration { + s.Compute = v + return s +} + +// The ElastiCache reserved instances recommendation details. +type ElastiCacheReservedInstances struct { + _ struct{} `type:"structure"` + + // The ElastiCache reserved instances configuration used for recommendations. + Configuration *ElastiCacheReservedInstancesConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the purchase recommendation. + CostCalculation *ReservedInstancesCostCalculation `locationName:"costCalculation" 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 ElastiCacheReservedInstances) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ElastiCacheReservedInstances) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *ElastiCacheReservedInstances) SetConfiguration(v *ElastiCacheReservedInstancesConfiguration) *ElastiCacheReservedInstances { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *ElastiCacheReservedInstances) SetCostCalculation(v *ReservedInstancesCostCalculation) *ElastiCacheReservedInstances { + s.CostCalculation = v + return s +} + +// The ElastiCache reserved instances configuration used for recommendations. +type ElastiCacheReservedInstancesConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // Determines whether the recommendation is for a current generation instance. + CurrentGeneration *string `locationName:"currentGeneration" type:"string"` + + // The instance family of the recommended reservation. + InstanceFamily *string `locationName:"instanceFamily" type:"string"` + + // The type of instance that Amazon Web Services recommends. + InstanceType *string `locationName:"instanceType" type:"string"` + + // How much purchasing reserved instances costs you on a monthly basis. + MonthlyRecurringCost *string `locationName:"monthlyRecurringCost" type:"string"` + + // The number of normalized units that Amazon Web Services recommends that you + // purchase. + NormalizedUnitsToPurchase *string `locationName:"normalizedUnitsToPurchase" type:"string"` + + // The number of instances that Amazon Web Services recommends that you purchase. + NumberOfInstancesToPurchase *string `locationName:"numberOfInstancesToPurchase" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Amazon Web Services Region of the commitment. + ReservedInstancesRegion *string `locationName:"reservedInstancesRegion" type:"string"` + + // The service that you want your recommendations for. + Service *string `locationName:"service" type:"string"` + + // Determines whether the recommendation is size flexible. + SizeFlexEligible *bool `locationName:"sizeFlexEligible" type:"boolean"` + + // The reserved instances recommendation term in years. + Term *string `locationName:"term" type:"string"` + + // How much purchasing this instance costs you upfront. + UpfrontCost *string `locationName:"upfrontCost" 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 ElastiCacheReservedInstancesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ElastiCacheReservedInstancesConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetAccountScope(v string) *ElastiCacheReservedInstancesConfiguration { + s.AccountScope = &v + return s +} + +// SetCurrentGeneration sets the CurrentGeneration field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetCurrentGeneration(v string) *ElastiCacheReservedInstancesConfiguration { + s.CurrentGeneration = &v + return s +} + +// SetInstanceFamily sets the InstanceFamily field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetInstanceFamily(v string) *ElastiCacheReservedInstancesConfiguration { + s.InstanceFamily = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetInstanceType(v string) *ElastiCacheReservedInstancesConfiguration { + s.InstanceType = &v + return s +} + +// SetMonthlyRecurringCost sets the MonthlyRecurringCost field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetMonthlyRecurringCost(v string) *ElastiCacheReservedInstancesConfiguration { + s.MonthlyRecurringCost = &v + return s +} + +// SetNormalizedUnitsToPurchase sets the NormalizedUnitsToPurchase field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetNormalizedUnitsToPurchase(v string) *ElastiCacheReservedInstancesConfiguration { + s.NormalizedUnitsToPurchase = &v + return s +} + +// SetNumberOfInstancesToPurchase sets the NumberOfInstancesToPurchase field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetNumberOfInstancesToPurchase(v string) *ElastiCacheReservedInstancesConfiguration { + s.NumberOfInstancesToPurchase = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetPaymentOption(v string) *ElastiCacheReservedInstancesConfiguration { + s.PaymentOption = &v + return s +} + +// SetReservedInstancesRegion sets the ReservedInstancesRegion field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetReservedInstancesRegion(v string) *ElastiCacheReservedInstancesConfiguration { + s.ReservedInstancesRegion = &v + return s +} + +// SetService sets the Service field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetService(v string) *ElastiCacheReservedInstancesConfiguration { + s.Service = &v + return s +} + +// SetSizeFlexEligible sets the SizeFlexEligible field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetSizeFlexEligible(v bool) *ElastiCacheReservedInstancesConfiguration { + s.SizeFlexEligible = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetTerm(v string) *ElastiCacheReservedInstancesConfiguration { + s.Term = &v + return s +} + +// SetUpfrontCost sets the UpfrontCost field's value. +func (s *ElastiCacheReservedInstancesConfiguration) SetUpfrontCost(v string) *ElastiCacheReservedInstancesConfiguration { + s.UpfrontCost = &v + return s +} + +// Estimated discount details of the current and recommended resource configuration +// for a recommendation. +type EstimatedDiscounts struct { + _ struct{} `type:"structure"` + + // Estimated other discounts include all discounts that are not itemized. Itemized + // discounts include reservedInstanceDiscount and savingsPlansDiscount. + OtherDiscount *float64 `locationName:"otherDiscount" type:"double"` + + // Estimated reserved instance discounts. + ReservedInstancesDiscount *float64 `locationName:"reservedInstancesDiscount" type:"double"` + + // Estimated Savings Plans discounts. + SavingsPlansDiscount *float64 `locationName:"savingsPlansDiscount" 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 EstimatedDiscounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EstimatedDiscounts) GoString() string { + return s.String() +} + +// SetOtherDiscount sets the OtherDiscount field's value. +func (s *EstimatedDiscounts) SetOtherDiscount(v float64) *EstimatedDiscounts { + s.OtherDiscount = &v + return s +} + +// SetReservedInstancesDiscount sets the ReservedInstancesDiscount field's value. +func (s *EstimatedDiscounts) SetReservedInstancesDiscount(v float64) *EstimatedDiscounts { + s.ReservedInstancesDiscount = &v + return s +} + +// SetSavingsPlansDiscount sets the SavingsPlansDiscount field's value. +func (s *EstimatedDiscounts) SetSavingsPlansDiscount(v float64) *EstimatedDiscounts { + s.SavingsPlansDiscount = &v + return s +} + +// Describes a filter that returns a more specific list of recommendations. +// Filters recommendations by different dimensions. +type Filter struct { + _ struct{} `type:"structure"` + + // The account that the recommendation is for. + AccountIds []*string `locationName:"accountIds" min:"1" type:"list"` + + // The type of action you can take by adopting the recommendation. + ActionTypes []*string `locationName:"actionTypes" min:"1" type:"list" enum:"ActionType"` + + // The effort required to implement the recommendation. + ImplementationEfforts []*string `locationName:"implementationEfforts" min:"1" type:"list" enum:"ImplementationEffort"` + + // The IDs for the recommendations. + RecommendationIds []*string `locationName:"recommendationIds" min:"1" type:"list"` + + // The Amazon Web Services Region of the resource. + Regions []*string `locationName:"regions" min:"1" type:"list"` + + // The Amazon Resource Name (ARN) of the recommendation. + ResourceArns []*string `locationName:"resourceArns" min:"1" type:"list"` + + // The resource ID of the recommendation. + ResourceIds []*string `locationName:"resourceIds" min:"1" type:"list"` + + // The resource type of the recommendation. + ResourceTypes []*string `locationName:"resourceTypes" min:"1" type:"list" enum:"ResourceType"` + + // Whether or not implementing the recommendation requires a restart. + RestartNeeded *bool `locationName:"restartNeeded" type:"boolean"` + + // Whether or not implementing the recommendation can be rolled back. + RollbackPossible *bool `locationName:"rollbackPossible" type:"boolean"` + + // A list of tags assigned to the recommendation. + Tags []*Tag `locationName:"tags" 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 Filter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Filter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Filter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Filter"} + if s.AccountIds != nil && len(s.AccountIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountIds", 1)) + } + if s.ActionTypes != nil && len(s.ActionTypes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionTypes", 1)) + } + if s.ImplementationEfforts != nil && len(s.ImplementationEfforts) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImplementationEfforts", 1)) + } + if s.RecommendationIds != nil && len(s.RecommendationIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecommendationIds", 1)) + } + if s.Regions != nil && len(s.Regions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Regions", 1)) + } + if s.ResourceArns != nil && len(s.ResourceArns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArns", 1)) + } + if s.ResourceIds != nil && len(s.ResourceIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIds", 1)) + } + if s.ResourceTypes != nil && len(s.ResourceTypes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceTypes", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountIds sets the AccountIds field's value. +func (s *Filter) SetAccountIds(v []*string) *Filter { + s.AccountIds = v + return s +} + +// SetActionTypes sets the ActionTypes field's value. +func (s *Filter) SetActionTypes(v []*string) *Filter { + s.ActionTypes = v + return s +} + +// SetImplementationEfforts sets the ImplementationEfforts field's value. +func (s *Filter) SetImplementationEfforts(v []*string) *Filter { + s.ImplementationEfforts = v + return s +} + +// SetRecommendationIds sets the RecommendationIds field's value. +func (s *Filter) SetRecommendationIds(v []*string) *Filter { + s.RecommendationIds = v + return s +} + +// SetRegions sets the Regions field's value. +func (s *Filter) SetRegions(v []*string) *Filter { + s.Regions = v + return s +} + +// SetResourceArns sets the ResourceArns field's value. +func (s *Filter) SetResourceArns(v []*string) *Filter { + s.ResourceArns = v + return s +} + +// SetResourceIds sets the ResourceIds field's value. +func (s *Filter) SetResourceIds(v []*string) *Filter { + s.ResourceIds = v + return s +} + +// SetResourceTypes sets the ResourceTypes field's value. +func (s *Filter) SetResourceTypes(v []*string) *Filter { + s.ResourceTypes = v + return s +} + +// SetRestartNeeded sets the RestartNeeded field's value. +func (s *Filter) SetRestartNeeded(v bool) *Filter { + s.RestartNeeded = &v + return s +} + +// SetRollbackPossible sets the RollbackPossible field's value. +func (s *Filter) SetRollbackPossible(v bool) *Filter { + s.RollbackPossible = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Filter) SetTags(v []*Tag) *Filter { + s.Tags = v + return s +} + +type GetPreferencesInput 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 GetPreferencesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPreferencesInput) GoString() string { + return s.String() +} + +type GetPreferencesOutput struct { + _ struct{} `type:"structure"` + + // Retrieves the status of the "member account discount visibility" preference. + MemberAccountDiscountVisibility *string `locationName:"memberAccountDiscountVisibility" type:"string" enum:"MemberAccountDiscountVisibility"` + + // Retrieves the status of the "savings estimation mode" preference. + SavingsEstimationMode *string `locationName:"savingsEstimationMode" type:"string" enum:"SavingsEstimationMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPreferencesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPreferencesOutput) GoString() string { + return s.String() +} + +// SetMemberAccountDiscountVisibility sets the MemberAccountDiscountVisibility field's value. +func (s *GetPreferencesOutput) SetMemberAccountDiscountVisibility(v string) *GetPreferencesOutput { + s.MemberAccountDiscountVisibility = &v + return s +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *GetPreferencesOutput) SetSavingsEstimationMode(v string) *GetPreferencesOutput { + s.SavingsEstimationMode = &v + return s +} + +type GetRecommendationInput struct { + _ struct{} `type:"structure"` + + // The ID for the recommendation. + // + // RecommendationId is a required field + RecommendationId *string `locationName:"recommendationId" 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 GetRecommendationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRecommendationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRecommendationInput"} + if s.RecommendationId == nil { + invalidParams.Add(request.NewErrParamRequired("RecommendationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *GetRecommendationInput) SetRecommendationId(v string) *GetRecommendationInput { + s.RecommendationId = &v + return s +} + +type GetRecommendationOutput struct { + _ struct{} `type:"structure"` + + // The account that the recommendation is for. + AccountId *string `locationName:"accountId" type:"string"` + + // The type of action you can take by adopting the recommendation. + ActionType *string `locationName:"actionType" type:"string" enum:"ActionType"` + + // The lookback period used to calculate cost impact for a recommendation. + CostCalculationLookbackPeriodInDays *int64 `locationName:"costCalculationLookbackPeriodInDays" type:"integer"` + + // The currency code used for the recommendation. + CurrencyCode *string `locationName:"currencyCode" type:"string"` + + // The details for the resource. + CurrentResourceDetails *ResourceDetails `locationName:"currentResourceDetails" type:"structure"` + + // The type of resource. + CurrentResourceType *string `locationName:"currentResourceType" type:"string" enum:"ResourceType"` + + // The estimated monthly cost of the recommendation. + EstimatedMonthlyCost *float64 `locationName:"estimatedMonthlyCost" type:"double"` + + // The estimated monthly savings amount for the recommendation. + EstimatedMonthlySavings *float64 `locationName:"estimatedMonthlySavings" type:"double"` + + // The estimated savings amount over the lookback period used to calculate cost + // impact for a recommendation. + EstimatedSavingsOverCostCalculationLookbackPeriod *float64 `locationName:"estimatedSavingsOverCostCalculationLookbackPeriod" type:"double"` + + // The estimated savings percentage relative to the total cost over the cost + // calculation lookback period. + EstimatedSavingsPercentage *float64 `locationName:"estimatedSavingsPercentage" type:"double"` + + // The effort required to implement the recommendation. + ImplementationEffort *string `locationName:"implementationEffort" type:"string" enum:"ImplementationEffort"` + + // The time when the recommendation was last generated. + LastRefreshTimestamp *time.Time `locationName:"lastRefreshTimestamp" type:"timestamp"` + + // The ID for the recommendation. + RecommendationId *string `locationName:"recommendationId" type:"string"` + + // The lookback period that's used to generate the recommendation. + RecommendationLookbackPeriodInDays *int64 `locationName:"recommendationLookbackPeriodInDays" type:"integer"` + + // The details about the recommended resource. + RecommendedResourceDetails *ResourceDetails `locationName:"recommendedResourceDetails" type:"structure"` + + // The resource type of the recommendation. + RecommendedResourceType *string `locationName:"recommendedResourceType" type:"string" enum:"ResourceType"` + + // The Amazon Web Services Region of the resource. + Region *string `locationName:"region" type:"string"` + + // The Amazon Resource Name (ARN) of the resource. + ResourceArn *string `locationName:"resourceArn" type:"string"` + + // The unique identifier for the resource. This is the same as the Amazon Resource + // Name (ARN), if available. + ResourceId *string `locationName:"resourceId" type:"string"` + + // Whether or not implementing the recommendation requires a restart. + RestartNeeded *bool `locationName:"restartNeeded" type:"boolean"` + + // Whether or not implementing the recommendation can be rolled back. + RollbackPossible *bool `locationName:"rollbackPossible" type:"boolean"` + + // The source of the recommendation. + Source *string `locationName:"source" type:"string" enum:"Source"` + + // A list of tags associated with the resource for which the recommendation + // exists. + Tags []*Tag `locationName:"tags" 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 GetRecommendationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationOutput) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *GetRecommendationOutput) SetAccountId(v string) *GetRecommendationOutput { + s.AccountId = &v + return s +} + +// SetActionType sets the ActionType field's value. +func (s *GetRecommendationOutput) SetActionType(v string) *GetRecommendationOutput { + s.ActionType = &v + return s +} + +// SetCostCalculationLookbackPeriodInDays sets the CostCalculationLookbackPeriodInDays field's value. +func (s *GetRecommendationOutput) SetCostCalculationLookbackPeriodInDays(v int64) *GetRecommendationOutput { + s.CostCalculationLookbackPeriodInDays = &v + return s +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *GetRecommendationOutput) SetCurrencyCode(v string) *GetRecommendationOutput { + s.CurrencyCode = &v + return s +} + +// SetCurrentResourceDetails sets the CurrentResourceDetails field's value. +func (s *GetRecommendationOutput) SetCurrentResourceDetails(v *ResourceDetails) *GetRecommendationOutput { + s.CurrentResourceDetails = v + return s +} + +// SetCurrentResourceType sets the CurrentResourceType field's value. +func (s *GetRecommendationOutput) SetCurrentResourceType(v string) *GetRecommendationOutput { + s.CurrentResourceType = &v + return s +} + +// SetEstimatedMonthlyCost sets the EstimatedMonthlyCost field's value. +func (s *GetRecommendationOutput) SetEstimatedMonthlyCost(v float64) *GetRecommendationOutput { + s.EstimatedMonthlyCost = &v + return s +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *GetRecommendationOutput) SetEstimatedMonthlySavings(v float64) *GetRecommendationOutput { + s.EstimatedMonthlySavings = &v + return s +} + +// SetEstimatedSavingsOverCostCalculationLookbackPeriod sets the EstimatedSavingsOverCostCalculationLookbackPeriod field's value. +func (s *GetRecommendationOutput) SetEstimatedSavingsOverCostCalculationLookbackPeriod(v float64) *GetRecommendationOutput { + s.EstimatedSavingsOverCostCalculationLookbackPeriod = &v + return s +} + +// SetEstimatedSavingsPercentage sets the EstimatedSavingsPercentage field's value. +func (s *GetRecommendationOutput) SetEstimatedSavingsPercentage(v float64) *GetRecommendationOutput { + s.EstimatedSavingsPercentage = &v + return s +} + +// SetImplementationEffort sets the ImplementationEffort field's value. +func (s *GetRecommendationOutput) SetImplementationEffort(v string) *GetRecommendationOutput { + s.ImplementationEffort = &v + return s +} + +// SetLastRefreshTimestamp sets the LastRefreshTimestamp field's value. +func (s *GetRecommendationOutput) SetLastRefreshTimestamp(v time.Time) *GetRecommendationOutput { + s.LastRefreshTimestamp = &v + return s +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *GetRecommendationOutput) SetRecommendationId(v string) *GetRecommendationOutput { + s.RecommendationId = &v + return s +} + +// SetRecommendationLookbackPeriodInDays sets the RecommendationLookbackPeriodInDays field's value. +func (s *GetRecommendationOutput) SetRecommendationLookbackPeriodInDays(v int64) *GetRecommendationOutput { + s.RecommendationLookbackPeriodInDays = &v + return s +} + +// SetRecommendedResourceDetails sets the RecommendedResourceDetails field's value. +func (s *GetRecommendationOutput) SetRecommendedResourceDetails(v *ResourceDetails) *GetRecommendationOutput { + s.RecommendedResourceDetails = v + return s +} + +// SetRecommendedResourceType sets the RecommendedResourceType field's value. +func (s *GetRecommendationOutput) SetRecommendedResourceType(v string) *GetRecommendationOutput { + s.RecommendedResourceType = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *GetRecommendationOutput) SetRegion(v string) *GetRecommendationOutput { + s.Region = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *GetRecommendationOutput) SetResourceArn(v string) *GetRecommendationOutput { + s.ResourceArn = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *GetRecommendationOutput) SetResourceId(v string) *GetRecommendationOutput { + s.ResourceId = &v + return s +} + +// SetRestartNeeded sets the RestartNeeded field's value. +func (s *GetRecommendationOutput) SetRestartNeeded(v bool) *GetRecommendationOutput { + s.RestartNeeded = &v + return s +} + +// SetRollbackPossible sets the RollbackPossible field's value. +func (s *GetRecommendationOutput) SetRollbackPossible(v bool) *GetRecommendationOutput { + s.RollbackPossible = &v + return s +} + +// SetSource sets the Source field's value. +func (s *GetRecommendationOutput) SetSource(v string) *GetRecommendationOutput { + s.Source = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetRecommendationOutput) SetTags(v []*Tag) *GetRecommendationOutput { + s.Tags = v + return s +} + +// The Instance configuration used for recommendations. +type InstanceConfiguration struct { + _ struct{} `type:"structure"` + + // Details about the type. + Type *string `locationName:"type" 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 InstanceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceConfiguration) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *InstanceConfiguration) SetType(v string) *InstanceConfiguration { + s.Type = &v + return s +} + +// An error on the server occurred during the processing of your request. Try +// again later. +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 Lambda function recommendation details. +type LambdaFunction struct { + _ struct{} `type:"structure"` + + // The Lambda function configuration used for recommendations. + Configuration *LambdaFunctionConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the recommendation. + CostCalculation *ResourceCostCalculation `locationName:"costCalculation" 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 LambdaFunction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaFunction) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *LambdaFunction) SetConfiguration(v *LambdaFunctionConfiguration) *LambdaFunction { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *LambdaFunction) SetCostCalculation(v *ResourceCostCalculation) *LambdaFunction { + s.CostCalculation = v + return s +} + +// The Lambda function configuration used for recommendations. +type LambdaFunctionConfiguration struct { + _ struct{} `type:"structure"` + + // Details about the compute configuration. + Compute *ComputeConfiguration `locationName:"compute" 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 LambdaFunctionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaFunctionConfiguration) GoString() string { + return s.String() +} + +// SetCompute sets the Compute field's value. +func (s *LambdaFunctionConfiguration) SetCompute(v *ComputeConfiguration) *LambdaFunctionConfiguration { + s.Compute = v + return s +} + +type ListEnrollmentStatusesInput struct { + _ struct{} `type:"structure"` + + // The enrollment status of a specific account ID in the organization. + AccountId *string `locationName:"accountId" type:"string"` + + // Indicates whether to return the enrollment status for the organization. + IncludeOrganizationInfo *bool `locationName:"includeOrganizationInfo" type:"boolean"` + + // The maximum number of objects that are returned for the request. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The token to retrieve the next set of results. + 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 ListEnrollmentStatusesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnrollmentStatusesInput) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *ListEnrollmentStatusesInput) SetAccountId(v string) *ListEnrollmentStatusesInput { + s.AccountId = &v + return s +} + +// SetIncludeOrganizationInfo sets the IncludeOrganizationInfo field's value. +func (s *ListEnrollmentStatusesInput) SetIncludeOrganizationInfo(v bool) *ListEnrollmentStatusesInput { + s.IncludeOrganizationInfo = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnrollmentStatusesInput) SetMaxResults(v int64) *ListEnrollmentStatusesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnrollmentStatusesInput) SetNextToken(v string) *ListEnrollmentStatusesInput { + s.NextToken = &v + return s +} + +type ListEnrollmentStatusesOutput struct { + _ struct{} `type:"structure"` + + // The account enrollment statuses. + Items []*AccountEnrollmentStatus `locationName:"items" type:"list"` + + // The token to retrieve the next set of results. + 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 ListEnrollmentStatusesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnrollmentStatusesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListEnrollmentStatusesOutput) SetItems(v []*AccountEnrollmentStatus) *ListEnrollmentStatusesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnrollmentStatusesOutput) SetNextToken(v string) *ListEnrollmentStatusesOutput { + s.NextToken = &v + return s +} + +type ListRecommendationSummariesInput struct { + _ struct{} `type:"structure"` + + // Describes a filter that returns a more specific list of recommendations. + // Filters recommendations by different dimensions. + Filter *Filter `locationName:"filter" type:"structure"` + + // The grouping of recommendations by a dimension. + // + // GroupBy is a required field + GroupBy *string `locationName:"groupBy" type:"string" required:"true"` + + // The maximum number of recommendations that are returned for the request. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The token to retrieve the next set of results. + 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 ListRecommendationSummariesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationSummariesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRecommendationSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecommendationSummariesInput"} + if s.GroupBy == nil { + invalidParams.Add(request.NewErrParamRequired("GroupBy")) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *ListRecommendationSummariesInput) SetFilter(v *Filter) *ListRecommendationSummariesInput { + s.Filter = v + return s +} + +// SetGroupBy sets the GroupBy field's value. +func (s *ListRecommendationSummariesInput) SetGroupBy(v string) *ListRecommendationSummariesInput { + s.GroupBy = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRecommendationSummariesInput) SetMaxResults(v int64) *ListRecommendationSummariesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationSummariesInput) SetNextToken(v string) *ListRecommendationSummariesInput { + s.NextToken = &v + return s +} + +type ListRecommendationSummariesOutput struct { + _ struct{} `type:"structure"` + + // The currency code used for the recommendation. + CurrencyCode *string `locationName:"currencyCode" type:"string"` + + // The total overall savings for the aggregated view. + EstimatedTotalDedupedSavings *float64 `locationName:"estimatedTotalDedupedSavings" type:"double"` + + // The dimension used to group the recommendations by. + GroupBy *string `locationName:"groupBy" type:"string"` + + // List of all savings recommendations. + Items []*RecommendationSummary `locationName:"items" type:"list"` + + // The token to retrieve the next set of results. + 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 ListRecommendationSummariesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationSummariesOutput) GoString() string { + return s.String() +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *ListRecommendationSummariesOutput) SetCurrencyCode(v string) *ListRecommendationSummariesOutput { + s.CurrencyCode = &v + return s +} + +// SetEstimatedTotalDedupedSavings sets the EstimatedTotalDedupedSavings field's value. +func (s *ListRecommendationSummariesOutput) SetEstimatedTotalDedupedSavings(v float64) *ListRecommendationSummariesOutput { + s.EstimatedTotalDedupedSavings = &v + return s +} + +// SetGroupBy sets the GroupBy field's value. +func (s *ListRecommendationSummariesOutput) SetGroupBy(v string) *ListRecommendationSummariesOutput { + s.GroupBy = &v + return s +} + +// SetItems sets the Items field's value. +func (s *ListRecommendationSummariesOutput) SetItems(v []*RecommendationSummary) *ListRecommendationSummariesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationSummariesOutput) SetNextToken(v string) *ListRecommendationSummariesOutput { + s.NextToken = &v + return s +} + +type ListRecommendationsInput struct { + _ struct{} `type:"structure"` + + // The constraints that you want all returned recommendations to match. + Filter *Filter `locationName:"filter" type:"structure"` + + // List of all recommendations for a resource, or a single recommendation if + // de-duped by resourceId. + IncludeAllRecommendations *bool `locationName:"includeAllRecommendations" type:"boolean"` + + // The maximum number of recommendations that are returned for the request. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The token to retrieve the next set of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The ordering of recommendations by a dimension. + OrderBy *OrderBy `locationName:"orderBy" 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 ListRecommendationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRecommendationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecommendationsInput"} + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *ListRecommendationsInput) SetFilter(v *Filter) *ListRecommendationsInput { + s.Filter = v + return s +} + +// SetIncludeAllRecommendations sets the IncludeAllRecommendations field's value. +func (s *ListRecommendationsInput) SetIncludeAllRecommendations(v bool) *ListRecommendationsInput { + s.IncludeAllRecommendations = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRecommendationsInput) SetMaxResults(v int64) *ListRecommendationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationsInput) SetNextToken(v string) *ListRecommendationsInput { + s.NextToken = &v + return s +} + +// SetOrderBy sets the OrderBy field's value. +func (s *ListRecommendationsInput) SetOrderBy(v *OrderBy) *ListRecommendationsInput { + s.OrderBy = v + return s +} + +type ListRecommendationsOutput struct { + _ struct{} `type:"structure"` + + // List of all savings recommendations. + Items []*Recommendation `locationName:"items" type:"list"` + + // The token to retrieve the next set of results. + 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 ListRecommendationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListRecommendationsOutput) SetItems(v []*Recommendation) *ListRecommendationsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationsOutput) SetNextToken(v string) *ListRecommendationsOutput { + s.NextToken = &v + return s +} + +// The OpenSearch reserved instances recommendation details. +type OpenSearchReservedInstances struct { + _ struct{} `type:"structure"` + + // The OpenSearch reserved instances configuration used for recommendations. + Configuration *OpenSearchReservedInstancesConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the purchase recommendation. + CostCalculation *ReservedInstancesCostCalculation `locationName:"costCalculation" 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 OpenSearchReservedInstances) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpenSearchReservedInstances) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *OpenSearchReservedInstances) SetConfiguration(v *OpenSearchReservedInstancesConfiguration) *OpenSearchReservedInstances { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *OpenSearchReservedInstances) SetCostCalculation(v *ReservedInstancesCostCalculation) *OpenSearchReservedInstances { + s.CostCalculation = v + return s +} + +// The OpenSearch reserved instances configuration used for recommendations. +type OpenSearchReservedInstancesConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // Determines whether the recommendation is for a current generation instance. + CurrentGeneration *string `locationName:"currentGeneration" type:"string"` + + // The type of instance that Amazon Web Services recommends. + InstanceType *string `locationName:"instanceType" type:"string"` + + // How much purchasing reserved instances costs you on a monthly basis. + MonthlyRecurringCost *string `locationName:"monthlyRecurringCost" type:"string"` + + // The number of normalized units that Amazon Web Services recommends that you + // purchase. + NormalizedUnitsToPurchase *string `locationName:"normalizedUnitsToPurchase" type:"string"` + + // The number of instances that Amazon Web Services recommends that you purchase. + NumberOfInstancesToPurchase *string `locationName:"numberOfInstancesToPurchase" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Amazon Web Services Region of the commitment. + ReservedInstancesRegion *string `locationName:"reservedInstancesRegion" type:"string"` + + // The service that you want your recommendations for. + Service *string `locationName:"service" type:"string"` + + // Determines whether the recommendation is size flexible. + SizeFlexEligible *bool `locationName:"sizeFlexEligible" type:"boolean"` + + // The reserved instances recommendation term in years. + Term *string `locationName:"term" type:"string"` + + // How much purchasing this instance costs you upfront. + UpfrontCost *string `locationName:"upfrontCost" 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 OpenSearchReservedInstancesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpenSearchReservedInstancesConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetAccountScope(v string) *OpenSearchReservedInstancesConfiguration { + s.AccountScope = &v + return s +} + +// SetCurrentGeneration sets the CurrentGeneration field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetCurrentGeneration(v string) *OpenSearchReservedInstancesConfiguration { + s.CurrentGeneration = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetInstanceType(v string) *OpenSearchReservedInstancesConfiguration { + s.InstanceType = &v + return s +} + +// SetMonthlyRecurringCost sets the MonthlyRecurringCost field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetMonthlyRecurringCost(v string) *OpenSearchReservedInstancesConfiguration { + s.MonthlyRecurringCost = &v + return s +} + +// SetNormalizedUnitsToPurchase sets the NormalizedUnitsToPurchase field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetNormalizedUnitsToPurchase(v string) *OpenSearchReservedInstancesConfiguration { + s.NormalizedUnitsToPurchase = &v + return s +} + +// SetNumberOfInstancesToPurchase sets the NumberOfInstancesToPurchase field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetNumberOfInstancesToPurchase(v string) *OpenSearchReservedInstancesConfiguration { + s.NumberOfInstancesToPurchase = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetPaymentOption(v string) *OpenSearchReservedInstancesConfiguration { + s.PaymentOption = &v + return s +} + +// SetReservedInstancesRegion sets the ReservedInstancesRegion field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetReservedInstancesRegion(v string) *OpenSearchReservedInstancesConfiguration { + s.ReservedInstancesRegion = &v + return s +} + +// SetService sets the Service field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetService(v string) *OpenSearchReservedInstancesConfiguration { + s.Service = &v + return s +} + +// SetSizeFlexEligible sets the SizeFlexEligible field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetSizeFlexEligible(v bool) *OpenSearchReservedInstancesConfiguration { + s.SizeFlexEligible = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetTerm(v string) *OpenSearchReservedInstancesConfiguration { + s.Term = &v + return s +} + +// SetUpfrontCost sets the UpfrontCost field's value. +func (s *OpenSearchReservedInstancesConfiguration) SetUpfrontCost(v string) *OpenSearchReservedInstancesConfiguration { + s.UpfrontCost = &v + return s +} + +// Defines how rows will be sorted in the response. +type OrderBy struct { + _ struct{} `type:"structure"` + + // Sorts by dimension values. + Dimension *string `locationName:"dimension" type:"string"` + + // The order that's used to sort the data. + Order *string `locationName:"order" type:"string" enum:"Order"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrderBy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrderBy) GoString() string { + return s.String() +} + +// SetDimension sets the Dimension field's value. +func (s *OrderBy) SetDimension(v string) *OrderBy { + s.Dimension = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *OrderBy) SetOrder(v string) *OrderBy { + s.Order = &v + return s +} + +// The RDS reserved instances recommendation details. +type RdsReservedInstances struct { + _ struct{} `type:"structure"` + + // The RDS reserved instances configuration used for recommendations. + Configuration *RdsReservedInstancesConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the purchase recommendation. + CostCalculation *ReservedInstancesCostCalculation `locationName:"costCalculation" 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 RdsReservedInstances) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RdsReservedInstances) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *RdsReservedInstances) SetConfiguration(v *RdsReservedInstancesConfiguration) *RdsReservedInstances { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *RdsReservedInstances) SetCostCalculation(v *ReservedInstancesCostCalculation) *RdsReservedInstances { + s.CostCalculation = v + return s +} + +// The RDS reserved instances configuration used for recommendations. +type RdsReservedInstancesConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // Determines whether the recommendation is for a current generation instance. + CurrentGeneration *string `locationName:"currentGeneration" type:"string"` + + // The database edition that the recommended reservation supports. + DatabaseEdition *string `locationName:"databaseEdition" type:"string"` + + // The database engine that the recommended reservation supports. + DatabaseEngine *string `locationName:"databaseEngine" type:"string"` + + // Determines whether the recommendation is for a reservation in a single Availability + // Zone or a reservation with a backup in a second Availability Zone. + DeploymentOption *string `locationName:"deploymentOption" type:"string"` + + // The instance family of the recommended reservation. + InstanceFamily *string `locationName:"instanceFamily" type:"string"` + + // The type of instance that Amazon Web Services recommends. + InstanceType *string `locationName:"instanceType" type:"string"` + + // The license model that the recommended reservation supports. + LicenseModel *string `locationName:"licenseModel" type:"string"` + + // How much purchasing this instance costs you on a monthly basis. + MonthlyRecurringCost *string `locationName:"monthlyRecurringCost" type:"string"` + + // The number of normalized units that Amazon Web Services recommends that you + // purchase. + NormalizedUnitsToPurchase *string `locationName:"normalizedUnitsToPurchase" type:"string"` + + // The number of instances that Amazon Web Services recommends that you purchase. + NumberOfInstancesToPurchase *string `locationName:"numberOfInstancesToPurchase" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Amazon Web Services Region of the commitment. + ReservedInstancesRegion *string `locationName:"reservedInstancesRegion" type:"string"` + + // The service that you want your recommendations for. + Service *string `locationName:"service" type:"string"` + + // Determines whether the recommendation is size flexible. + SizeFlexEligible *bool `locationName:"sizeFlexEligible" type:"boolean"` + + // The reserved instances recommendation term in years. + Term *string `locationName:"term" type:"string"` + + // How much purchasing this instance costs you upfront. + UpfrontCost *string `locationName:"upfrontCost" 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 RdsReservedInstancesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RdsReservedInstancesConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *RdsReservedInstancesConfiguration) SetAccountScope(v string) *RdsReservedInstancesConfiguration { + s.AccountScope = &v + return s +} + +// SetCurrentGeneration sets the CurrentGeneration field's value. +func (s *RdsReservedInstancesConfiguration) SetCurrentGeneration(v string) *RdsReservedInstancesConfiguration { + s.CurrentGeneration = &v + return s +} + +// SetDatabaseEdition sets the DatabaseEdition field's value. +func (s *RdsReservedInstancesConfiguration) SetDatabaseEdition(v string) *RdsReservedInstancesConfiguration { + s.DatabaseEdition = &v + return s +} + +// SetDatabaseEngine sets the DatabaseEngine field's value. +func (s *RdsReservedInstancesConfiguration) SetDatabaseEngine(v string) *RdsReservedInstancesConfiguration { + s.DatabaseEngine = &v + return s +} + +// SetDeploymentOption sets the DeploymentOption field's value. +func (s *RdsReservedInstancesConfiguration) SetDeploymentOption(v string) *RdsReservedInstancesConfiguration { + s.DeploymentOption = &v + return s +} + +// SetInstanceFamily sets the InstanceFamily field's value. +func (s *RdsReservedInstancesConfiguration) SetInstanceFamily(v string) *RdsReservedInstancesConfiguration { + s.InstanceFamily = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *RdsReservedInstancesConfiguration) SetInstanceType(v string) *RdsReservedInstancesConfiguration { + s.InstanceType = &v + return s +} + +// SetLicenseModel sets the LicenseModel field's value. +func (s *RdsReservedInstancesConfiguration) SetLicenseModel(v string) *RdsReservedInstancesConfiguration { + s.LicenseModel = &v + return s +} + +// SetMonthlyRecurringCost sets the MonthlyRecurringCost field's value. +func (s *RdsReservedInstancesConfiguration) SetMonthlyRecurringCost(v string) *RdsReservedInstancesConfiguration { + s.MonthlyRecurringCost = &v + return s +} + +// SetNormalizedUnitsToPurchase sets the NormalizedUnitsToPurchase field's value. +func (s *RdsReservedInstancesConfiguration) SetNormalizedUnitsToPurchase(v string) *RdsReservedInstancesConfiguration { + s.NormalizedUnitsToPurchase = &v + return s +} + +// SetNumberOfInstancesToPurchase sets the NumberOfInstancesToPurchase field's value. +func (s *RdsReservedInstancesConfiguration) SetNumberOfInstancesToPurchase(v string) *RdsReservedInstancesConfiguration { + s.NumberOfInstancesToPurchase = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *RdsReservedInstancesConfiguration) SetPaymentOption(v string) *RdsReservedInstancesConfiguration { + s.PaymentOption = &v + return s +} + +// SetReservedInstancesRegion sets the ReservedInstancesRegion field's value. +func (s *RdsReservedInstancesConfiguration) SetReservedInstancesRegion(v string) *RdsReservedInstancesConfiguration { + s.ReservedInstancesRegion = &v + return s +} + +// SetService sets the Service field's value. +func (s *RdsReservedInstancesConfiguration) SetService(v string) *RdsReservedInstancesConfiguration { + s.Service = &v + return s +} + +// SetSizeFlexEligible sets the SizeFlexEligible field's value. +func (s *RdsReservedInstancesConfiguration) SetSizeFlexEligible(v bool) *RdsReservedInstancesConfiguration { + s.SizeFlexEligible = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *RdsReservedInstancesConfiguration) SetTerm(v string) *RdsReservedInstancesConfiguration { + s.Term = &v + return s +} + +// SetUpfrontCost sets the UpfrontCost field's value. +func (s *RdsReservedInstancesConfiguration) SetUpfrontCost(v string) *RdsReservedInstancesConfiguration { + s.UpfrontCost = &v + return s +} + +// Describes a recommendation. +type Recommendation struct { + _ struct{} `type:"structure"` + + // The account that the recommendation is for. + AccountId *string `locationName:"accountId" type:"string"` + + // The type of tasks that can be carried out by this action. + ActionType *string `locationName:"actionType" type:"string"` + + // The currency code used for the recommendation. + CurrencyCode *string `locationName:"currencyCode" type:"string"` + + // Describes the current resource. + CurrentResourceSummary *string `locationName:"currentResourceSummary" type:"string"` + + // The current resource type. + CurrentResourceType *string `locationName:"currentResourceType" type:"string"` + + // The estimated monthly cost for the recommendation. + EstimatedMonthlyCost *float64 `locationName:"estimatedMonthlyCost" type:"double"` + + // The estimated monthly savings amount for the recommendation. + EstimatedMonthlySavings *float64 `locationName:"estimatedMonthlySavings" type:"double"` + + // The estimated savings percentage relative to the total cost over the cost + // calculation lookback period. + EstimatedSavingsPercentage *float64 `locationName:"estimatedSavingsPercentage" type:"double"` + + // The effort required to implement the recommendation. + ImplementationEffort *string `locationName:"implementationEffort" type:"string"` + + // The time when the recommendation was last generated. + LastRefreshTimestamp *time.Time `locationName:"lastRefreshTimestamp" type:"timestamp"` + + // The ID for the recommendation. + RecommendationId *string `locationName:"recommendationId" type:"string"` + + // The lookback period that's used to generate the recommendation. + RecommendationLookbackPeriodInDays *int64 `locationName:"recommendationLookbackPeriodInDays" type:"integer"` + + // Describes the recommended resource. + RecommendedResourceSummary *string `locationName:"recommendedResourceSummary" type:"string"` + + // The recommended resource type. + RecommendedResourceType *string `locationName:"recommendedResourceType" type:"string"` + + // The Amazon Web Services Region of the resource. + Region *string `locationName:"region" type:"string"` + + // The Amazon Resource Name (ARN) for the recommendation. + ResourceArn *string `locationName:"resourceArn" type:"string"` + + // The resource ID for the recommendation. + ResourceId *string `locationName:"resourceId" type:"string"` + + // Whether or not implementing the recommendation requires a restart. + RestartNeeded *bool `locationName:"restartNeeded" type:"boolean"` + + // Whether or not implementing the recommendation can be rolled back. + RollbackPossible *bool `locationName:"rollbackPossible" type:"boolean"` + + // The source of the recommendation. + Source *string `locationName:"source" type:"string" enum:"Source"` + + // A list of tags assigned to the recommendation. + Tags []*Tag `locationName:"tags" 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 Recommendation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Recommendation) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *Recommendation) SetAccountId(v string) *Recommendation { + s.AccountId = &v + return s +} + +// SetActionType sets the ActionType field's value. +func (s *Recommendation) SetActionType(v string) *Recommendation { + s.ActionType = &v + return s +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *Recommendation) SetCurrencyCode(v string) *Recommendation { + s.CurrencyCode = &v + return s +} + +// SetCurrentResourceSummary sets the CurrentResourceSummary field's value. +func (s *Recommendation) SetCurrentResourceSummary(v string) *Recommendation { + s.CurrentResourceSummary = &v + return s +} + +// SetCurrentResourceType sets the CurrentResourceType field's value. +func (s *Recommendation) SetCurrentResourceType(v string) *Recommendation { + s.CurrentResourceType = &v + return s +} + +// SetEstimatedMonthlyCost sets the EstimatedMonthlyCost field's value. +func (s *Recommendation) SetEstimatedMonthlyCost(v float64) *Recommendation { + s.EstimatedMonthlyCost = &v + return s +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *Recommendation) SetEstimatedMonthlySavings(v float64) *Recommendation { + s.EstimatedMonthlySavings = &v + return s +} + +// SetEstimatedSavingsPercentage sets the EstimatedSavingsPercentage field's value. +func (s *Recommendation) SetEstimatedSavingsPercentage(v float64) *Recommendation { + s.EstimatedSavingsPercentage = &v + return s +} + +// SetImplementationEffort sets the ImplementationEffort field's value. +func (s *Recommendation) SetImplementationEffort(v string) *Recommendation { + s.ImplementationEffort = &v + return s +} + +// SetLastRefreshTimestamp sets the LastRefreshTimestamp field's value. +func (s *Recommendation) SetLastRefreshTimestamp(v time.Time) *Recommendation { + s.LastRefreshTimestamp = &v + return s +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *Recommendation) SetRecommendationId(v string) *Recommendation { + s.RecommendationId = &v + return s +} + +// SetRecommendationLookbackPeriodInDays sets the RecommendationLookbackPeriodInDays field's value. +func (s *Recommendation) SetRecommendationLookbackPeriodInDays(v int64) *Recommendation { + s.RecommendationLookbackPeriodInDays = &v + return s +} + +// SetRecommendedResourceSummary sets the RecommendedResourceSummary field's value. +func (s *Recommendation) SetRecommendedResourceSummary(v string) *Recommendation { + s.RecommendedResourceSummary = &v + return s +} + +// SetRecommendedResourceType sets the RecommendedResourceType field's value. +func (s *Recommendation) SetRecommendedResourceType(v string) *Recommendation { + s.RecommendedResourceType = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *Recommendation) SetRegion(v string) *Recommendation { + s.Region = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *Recommendation) SetResourceArn(v string) *Recommendation { + s.ResourceArn = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *Recommendation) SetResourceId(v string) *Recommendation { + s.ResourceId = &v + return s +} + +// SetRestartNeeded sets the RestartNeeded field's value. +func (s *Recommendation) SetRestartNeeded(v bool) *Recommendation { + s.RestartNeeded = &v + return s +} + +// SetRollbackPossible sets the RollbackPossible field's value. +func (s *Recommendation) SetRollbackPossible(v bool) *Recommendation { + s.RollbackPossible = &v + return s +} + +// SetSource sets the Source field's value. +func (s *Recommendation) SetSource(v string) *Recommendation { + s.Source = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Recommendation) SetTags(v []*Tag) *Recommendation { + s.Tags = v + return s +} + +// The summary of rightsizing recommendations, including de-duped savings from +// all types of recommendations. +type RecommendationSummary struct { + _ struct{} `type:"structure"` + + // The estimated total savings resulting from modifications, on a monthly basis. + EstimatedMonthlySavings *float64 `locationName:"estimatedMonthlySavings" type:"double"` + + // The grouping of recommendations. + Group *string `locationName:"group" type:"string"` + + // The total number of instance recommendations. + RecommendationCount *int64 `locationName:"recommendationCount" 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 RecommendationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationSummary) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *RecommendationSummary) SetEstimatedMonthlySavings(v float64) *RecommendationSummary { + s.EstimatedMonthlySavings = &v + return s +} + +// SetGroup sets the Group field's value. +func (s *RecommendationSummary) SetGroup(v string) *RecommendationSummary { + s.Group = &v + return s +} + +// SetRecommendationCount sets the RecommendationCount field's value. +func (s *RecommendationSummary) SetRecommendationCount(v int64) *RecommendationSummary { + s.RecommendationCount = &v + return s +} + +// The Redshift reserved instances recommendation details. +type RedshiftReservedInstances struct { + _ struct{} `type:"structure"` + + // The Redshift reserved instances configuration used for recommendations. + Configuration *RedshiftReservedInstancesConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the purchase recommendation. + CostCalculation *ReservedInstancesCostCalculation `locationName:"costCalculation" 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 RedshiftReservedInstances) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftReservedInstances) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *RedshiftReservedInstances) SetConfiguration(v *RedshiftReservedInstancesConfiguration) *RedshiftReservedInstances { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *RedshiftReservedInstances) SetCostCalculation(v *ReservedInstancesCostCalculation) *RedshiftReservedInstances { + s.CostCalculation = v + return s +} + +// The Redshift reserved instances configuration used for recommendations. +type RedshiftReservedInstancesConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // Determines whether the recommendation is for a current generation instance. + CurrentGeneration *string `locationName:"currentGeneration" type:"string"` + + // The instance family of the recommended reservation. + InstanceFamily *string `locationName:"instanceFamily" type:"string"` + + // The type of instance that Amazon Web Services recommends. + InstanceType *string `locationName:"instanceType" type:"string"` + + // How much purchasing reserved instances costs you on a monthly basis. + MonthlyRecurringCost *string `locationName:"monthlyRecurringCost" type:"string"` + + // The number of normalized units that Amazon Web Services recommends that you + // purchase. + NormalizedUnitsToPurchase *string `locationName:"normalizedUnitsToPurchase" type:"string"` + + // The number of instances that Amazon Web Services recommends that you purchase. + NumberOfInstancesToPurchase *string `locationName:"numberOfInstancesToPurchase" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Amazon Web Services Region of the commitment. + ReservedInstancesRegion *string `locationName:"reservedInstancesRegion" type:"string"` + + // The service that you want your recommendations for. + Service *string `locationName:"service" type:"string"` + + // Determines whether the recommendation is size flexible. + SizeFlexEligible *bool `locationName:"sizeFlexEligible" type:"boolean"` + + // The reserved instances recommendation term in years. + Term *string `locationName:"term" type:"string"` + + // How much purchasing this instance costs you upfront. + UpfrontCost *string `locationName:"upfrontCost" 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 RedshiftReservedInstancesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftReservedInstancesConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *RedshiftReservedInstancesConfiguration) SetAccountScope(v string) *RedshiftReservedInstancesConfiguration { + s.AccountScope = &v + return s +} + +// SetCurrentGeneration sets the CurrentGeneration field's value. +func (s *RedshiftReservedInstancesConfiguration) SetCurrentGeneration(v string) *RedshiftReservedInstancesConfiguration { + s.CurrentGeneration = &v + return s +} + +// SetInstanceFamily sets the InstanceFamily field's value. +func (s *RedshiftReservedInstancesConfiguration) SetInstanceFamily(v string) *RedshiftReservedInstancesConfiguration { + s.InstanceFamily = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *RedshiftReservedInstancesConfiguration) SetInstanceType(v string) *RedshiftReservedInstancesConfiguration { + s.InstanceType = &v + return s +} + +// SetMonthlyRecurringCost sets the MonthlyRecurringCost field's value. +func (s *RedshiftReservedInstancesConfiguration) SetMonthlyRecurringCost(v string) *RedshiftReservedInstancesConfiguration { + s.MonthlyRecurringCost = &v + return s +} + +// SetNormalizedUnitsToPurchase sets the NormalizedUnitsToPurchase field's value. +func (s *RedshiftReservedInstancesConfiguration) SetNormalizedUnitsToPurchase(v string) *RedshiftReservedInstancesConfiguration { + s.NormalizedUnitsToPurchase = &v + return s +} + +// SetNumberOfInstancesToPurchase sets the NumberOfInstancesToPurchase field's value. +func (s *RedshiftReservedInstancesConfiguration) SetNumberOfInstancesToPurchase(v string) *RedshiftReservedInstancesConfiguration { + s.NumberOfInstancesToPurchase = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *RedshiftReservedInstancesConfiguration) SetPaymentOption(v string) *RedshiftReservedInstancesConfiguration { + s.PaymentOption = &v + return s +} + +// SetReservedInstancesRegion sets the ReservedInstancesRegion field's value. +func (s *RedshiftReservedInstancesConfiguration) SetReservedInstancesRegion(v string) *RedshiftReservedInstancesConfiguration { + s.ReservedInstancesRegion = &v + return s +} + +// SetService sets the Service field's value. +func (s *RedshiftReservedInstancesConfiguration) SetService(v string) *RedshiftReservedInstancesConfiguration { + s.Service = &v + return s +} + +// SetSizeFlexEligible sets the SizeFlexEligible field's value. +func (s *RedshiftReservedInstancesConfiguration) SetSizeFlexEligible(v bool) *RedshiftReservedInstancesConfiguration { + s.SizeFlexEligible = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *RedshiftReservedInstancesConfiguration) SetTerm(v string) *RedshiftReservedInstancesConfiguration { + s.Term = &v + return s +} + +// SetUpfrontCost sets the UpfrontCost field's value. +func (s *RedshiftReservedInstancesConfiguration) SetUpfrontCost(v string) *RedshiftReservedInstancesConfiguration { + s.UpfrontCost = &v + return s +} + +// Cost impact of the purchase recommendation. +type ReservedInstancesCostCalculation struct { + _ struct{} `type:"structure"` + + // Pricing details of the purchase recommendation. + Pricing *ReservedInstancesPricing `locationName:"pricing" 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 ReservedInstancesCostCalculation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReservedInstancesCostCalculation) GoString() string { + return s.String() +} + +// SetPricing sets the Pricing field's value. +func (s *ReservedInstancesCostCalculation) SetPricing(v *ReservedInstancesPricing) *ReservedInstancesCostCalculation { + s.Pricing = v + return s +} + +// Pricing details for your recommended reserved instance. +type ReservedInstancesPricing struct { + _ struct{} `type:"structure"` + + // The estimated cost of your recurring monthly fees for the recommended reserved + // instance across the month. + EstimatedMonthlyAmortizedReservationCost *float64 `locationName:"estimatedMonthlyAmortizedReservationCost" type:"double"` + + // The remaining On-Demand cost estimated to not be covered by the recommended + // reserved instance, over the length of the lookback period. + EstimatedOnDemandCost *float64 `locationName:"estimatedOnDemandCost" type:"double"` + + // The cost of paying for the recommended reserved instance monthly. + MonthlyReservationEligibleCost *float64 `locationName:"monthlyReservationEligibleCost" type:"double"` + + // The savings percentage relative to the total On-Demand costs that are associated + // with this instance. + SavingsPercentage *float64 `locationName:"savingsPercentage" 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 ReservedInstancesPricing) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReservedInstancesPricing) GoString() string { + return s.String() +} + +// SetEstimatedMonthlyAmortizedReservationCost sets the EstimatedMonthlyAmortizedReservationCost field's value. +func (s *ReservedInstancesPricing) SetEstimatedMonthlyAmortizedReservationCost(v float64) *ReservedInstancesPricing { + s.EstimatedMonthlyAmortizedReservationCost = &v + return s +} + +// SetEstimatedOnDemandCost sets the EstimatedOnDemandCost field's value. +func (s *ReservedInstancesPricing) SetEstimatedOnDemandCost(v float64) *ReservedInstancesPricing { + s.EstimatedOnDemandCost = &v + return s +} + +// SetMonthlyReservationEligibleCost sets the MonthlyReservationEligibleCost field's value. +func (s *ReservedInstancesPricing) SetMonthlyReservationEligibleCost(v float64) *ReservedInstancesPricing { + s.MonthlyReservationEligibleCost = &v + return s +} + +// SetSavingsPercentage sets the SavingsPercentage field's value. +func (s *ReservedInstancesPricing) SetSavingsPercentage(v float64) *ReservedInstancesPricing { + s.SavingsPercentage = &v + return s +} + +// Cost impact of the resource recommendation. +type ResourceCostCalculation struct { + _ struct{} `type:"structure"` + + // Pricing details of the resource recommendation. + Pricing *ResourcePricing `locationName:"pricing" type:"structure"` + + // Usage details of the resource recommendation. + Usages []*Usage `locationName:"usages" 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 ResourceCostCalculation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceCostCalculation) GoString() string { + return s.String() +} + +// SetPricing sets the Pricing field's value. +func (s *ResourceCostCalculation) SetPricing(v *ResourcePricing) *ResourceCostCalculation { + s.Pricing = v + return s +} + +// SetUsages sets the Usages field's value. +func (s *ResourceCostCalculation) SetUsages(v []*Usage) *ResourceCostCalculation { + s.Usages = v + return s +} + +// Contains detailed information about the specified resource. +type ResourceDetails struct { + _ struct{} `type:"structure"` + + // The Compute Savings Plans recommendation details. + ComputeSavingsPlans *ComputeSavingsPlans `locationName:"computeSavingsPlans" type:"structure"` + + // The Amazon Elastic Block Store volume recommendation details. + EbsVolume *EbsVolume `locationName:"ebsVolume" type:"structure"` + + // The EC2 Auto Scaling group recommendation details. + Ec2AutoScalingGroup *Ec2AutoScalingGroup `locationName:"ec2AutoScalingGroup" type:"structure"` + + // The EC2 instance recommendation details. + Ec2Instance *Ec2Instance `locationName:"ec2Instance" type:"structure"` + + // The EC2 instance Savings Plans recommendation details. + Ec2InstanceSavingsPlans *Ec2InstanceSavingsPlans `locationName:"ec2InstanceSavingsPlans" type:"structure"` + + // The EC2 reserved instances recommendation details. + Ec2ReservedInstances *Ec2ReservedInstances `locationName:"ec2ReservedInstances" type:"structure"` + + // The ECS service recommendation details. + EcsService *EcsService `locationName:"ecsService" type:"structure"` + + // The ElastiCache reserved instances recommendation details. + ElastiCacheReservedInstances *ElastiCacheReservedInstances `locationName:"elastiCacheReservedInstances" type:"structure"` + + // The Lambda function recommendation details. + LambdaFunction *LambdaFunction `locationName:"lambdaFunction" type:"structure"` + + // The OpenSearch reserved instances recommendation details. + OpenSearchReservedInstances *OpenSearchReservedInstances `locationName:"openSearchReservedInstances" type:"structure"` + + // The RDS reserved instances recommendation details. + RdsReservedInstances *RdsReservedInstances `locationName:"rdsReservedInstances" type:"structure"` + + // The Redshift reserved instances recommendation details. + RedshiftReservedInstances *RedshiftReservedInstances `locationName:"redshiftReservedInstances" type:"structure"` + + // The SageMaker Savings Plans recommendation details. + SageMakerSavingsPlans *SageMakerSavingsPlans `locationName:"sageMakerSavingsPlans" 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 ResourceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceDetails) GoString() string { + return s.String() +} + +// SetComputeSavingsPlans sets the ComputeSavingsPlans field's value. +func (s *ResourceDetails) SetComputeSavingsPlans(v *ComputeSavingsPlans) *ResourceDetails { + s.ComputeSavingsPlans = v + return s +} + +// SetEbsVolume sets the EbsVolume field's value. +func (s *ResourceDetails) SetEbsVolume(v *EbsVolume) *ResourceDetails { + s.EbsVolume = v + return s +} + +// SetEc2AutoScalingGroup sets the Ec2AutoScalingGroup field's value. +func (s *ResourceDetails) SetEc2AutoScalingGroup(v *Ec2AutoScalingGroup) *ResourceDetails { + s.Ec2AutoScalingGroup = v + return s +} + +// SetEc2Instance sets the Ec2Instance field's value. +func (s *ResourceDetails) SetEc2Instance(v *Ec2Instance) *ResourceDetails { + s.Ec2Instance = v + return s +} + +// SetEc2InstanceSavingsPlans sets the Ec2InstanceSavingsPlans field's value. +func (s *ResourceDetails) SetEc2InstanceSavingsPlans(v *Ec2InstanceSavingsPlans) *ResourceDetails { + s.Ec2InstanceSavingsPlans = v + return s +} + +// SetEc2ReservedInstances sets the Ec2ReservedInstances field's value. +func (s *ResourceDetails) SetEc2ReservedInstances(v *Ec2ReservedInstances) *ResourceDetails { + s.Ec2ReservedInstances = v + return s +} + +// SetEcsService sets the EcsService field's value. +func (s *ResourceDetails) SetEcsService(v *EcsService) *ResourceDetails { + s.EcsService = v + return s +} + +// SetElastiCacheReservedInstances sets the ElastiCacheReservedInstances field's value. +func (s *ResourceDetails) SetElastiCacheReservedInstances(v *ElastiCacheReservedInstances) *ResourceDetails { + s.ElastiCacheReservedInstances = v + return s +} + +// SetLambdaFunction sets the LambdaFunction field's value. +func (s *ResourceDetails) SetLambdaFunction(v *LambdaFunction) *ResourceDetails { + s.LambdaFunction = v + return s +} + +// SetOpenSearchReservedInstances sets the OpenSearchReservedInstances field's value. +func (s *ResourceDetails) SetOpenSearchReservedInstances(v *OpenSearchReservedInstances) *ResourceDetails { + s.OpenSearchReservedInstances = v + return s +} + +// SetRdsReservedInstances sets the RdsReservedInstances field's value. +func (s *ResourceDetails) SetRdsReservedInstances(v *RdsReservedInstances) *ResourceDetails { + s.RdsReservedInstances = v + return s +} + +// SetRedshiftReservedInstances sets the RedshiftReservedInstances field's value. +func (s *ResourceDetails) SetRedshiftReservedInstances(v *RedshiftReservedInstances) *ResourceDetails { + s.RedshiftReservedInstances = v + return s +} + +// SetSageMakerSavingsPlans sets the SageMakerSavingsPlans field's value. +func (s *ResourceDetails) SetSageMakerSavingsPlans(v *SageMakerSavingsPlans) *ResourceDetails { + s.SageMakerSavingsPlans = v + return s +} + +// The specified Amazon Resource Name (ARN) in the request doesn't exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The identifier of the resource that was not found. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Contains pricing information about the specified resource. +type ResourcePricing struct { + _ struct{} `type:"structure"` + + // The savings estimate incorporating all discounts with Amazon Web Services, + // such as Reserved Instances and Savings Plans. + EstimatedCostAfterDiscounts *float64 `locationName:"estimatedCostAfterDiscounts" type:"double"` + + // The savings estimate using Amazon Web Services public pricing without incorporating + // any discounts. + EstimatedCostBeforeDiscounts *float64 `locationName:"estimatedCostBeforeDiscounts" type:"double"` + + // The estimated discounts for a recommendation. + EstimatedDiscounts *EstimatedDiscounts `locationName:"estimatedDiscounts" type:"structure"` + + // The estimated net unused amortized commitment for the recommendation. + EstimatedNetUnusedAmortizedCommitments *float64 `locationName:"estimatedNetUnusedAmortizedCommitments" 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 ResourcePricing) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourcePricing) GoString() string { + return s.String() +} + +// SetEstimatedCostAfterDiscounts sets the EstimatedCostAfterDiscounts field's value. +func (s *ResourcePricing) SetEstimatedCostAfterDiscounts(v float64) *ResourcePricing { + s.EstimatedCostAfterDiscounts = &v + return s +} + +// SetEstimatedCostBeforeDiscounts sets the EstimatedCostBeforeDiscounts field's value. +func (s *ResourcePricing) SetEstimatedCostBeforeDiscounts(v float64) *ResourcePricing { + s.EstimatedCostBeforeDiscounts = &v + return s +} + +// SetEstimatedDiscounts sets the EstimatedDiscounts field's value. +func (s *ResourcePricing) SetEstimatedDiscounts(v *EstimatedDiscounts) *ResourcePricing { + s.EstimatedDiscounts = v + return s +} + +// SetEstimatedNetUnusedAmortizedCommitments sets the EstimatedNetUnusedAmortizedCommitments field's value. +func (s *ResourcePricing) SetEstimatedNetUnusedAmortizedCommitments(v float64) *ResourcePricing { + s.EstimatedNetUnusedAmortizedCommitments = &v + return s +} + +// The SageMaker Savings Plans recommendation details. +type SageMakerSavingsPlans struct { + _ struct{} `type:"structure"` + + // The SageMaker Savings Plans configuration used for recommendations. + Configuration *SageMakerSavingsPlansConfiguration `locationName:"configuration" type:"structure"` + + // Cost impact of the Savings Plans purchase recommendation. + CostCalculation *SavingsPlansCostCalculation `locationName:"costCalculation" 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 SageMakerSavingsPlans) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SageMakerSavingsPlans) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *SageMakerSavingsPlans) SetConfiguration(v *SageMakerSavingsPlansConfiguration) *SageMakerSavingsPlans { + s.Configuration = v + return s +} + +// SetCostCalculation sets the CostCalculation field's value. +func (s *SageMakerSavingsPlans) SetCostCalculation(v *SavingsPlansCostCalculation) *SageMakerSavingsPlans { + s.CostCalculation = v + return s +} + +// The SageMaker Savings Plans configuration used for recommendations. +type SageMakerSavingsPlansConfiguration struct { + _ struct{} `type:"structure"` + + // The account scope that you want your recommendations for. + AccountScope *string `locationName:"accountScope" type:"string"` + + // The hourly commitment for the Savings Plans type. + HourlyCommitment *string `locationName:"hourlyCommitment" type:"string"` + + // The payment option for the commitment. + PaymentOption *string `locationName:"paymentOption" type:"string"` + + // The Savings Plans recommendation term in years. + Term *string `locationName:"term" 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 SageMakerSavingsPlansConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SageMakerSavingsPlansConfiguration) GoString() string { + return s.String() +} + +// SetAccountScope sets the AccountScope field's value. +func (s *SageMakerSavingsPlansConfiguration) SetAccountScope(v string) *SageMakerSavingsPlansConfiguration { + s.AccountScope = &v + return s +} + +// SetHourlyCommitment sets the HourlyCommitment field's value. +func (s *SageMakerSavingsPlansConfiguration) SetHourlyCommitment(v string) *SageMakerSavingsPlansConfiguration { + s.HourlyCommitment = &v + return s +} + +// SetPaymentOption sets the PaymentOption field's value. +func (s *SageMakerSavingsPlansConfiguration) SetPaymentOption(v string) *SageMakerSavingsPlansConfiguration { + s.PaymentOption = &v + return s +} + +// SetTerm sets the Term field's value. +func (s *SageMakerSavingsPlansConfiguration) SetTerm(v string) *SageMakerSavingsPlansConfiguration { + s.Term = &v + return s +} + +// Cost impact of the purchase recommendation. +type SavingsPlansCostCalculation struct { + _ struct{} `type:"structure"` + + // Pricing details of the purchase recommendation. + Pricing *SavingsPlansPricing `locationName:"pricing" 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 SavingsPlansCostCalculation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SavingsPlansCostCalculation) GoString() string { + return s.String() +} + +// SetPricing sets the Pricing field's value. +func (s *SavingsPlansCostCalculation) SetPricing(v *SavingsPlansPricing) *SavingsPlansCostCalculation { + s.Pricing = v + return s +} + +// Pricing information about a Savings Plan. +type SavingsPlansPricing struct { + _ struct{} `type:"structure"` + + // Estimated monthly commitment for the Savings Plan. + EstimatedMonthlyCommitment *float64 `locationName:"estimatedMonthlyCommitment" type:"double"` + + // Estimated On-Demand cost you will pay after buying the Savings Plan. + EstimatedOnDemandCost *float64 `locationName:"estimatedOnDemandCost" type:"double"` + + // The cost of paying for the recommended Savings Plan monthly. + MonthlySavingsPlansEligibleCost *float64 `locationName:"monthlySavingsPlansEligibleCost" type:"double"` + + // Estimated savings as a percentage of your overall costs after buying the + // Savings Plan. + SavingsPercentage *float64 `locationName:"savingsPercentage" 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 SavingsPlansPricing) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SavingsPlansPricing) GoString() string { + return s.String() +} + +// SetEstimatedMonthlyCommitment sets the EstimatedMonthlyCommitment field's value. +func (s *SavingsPlansPricing) SetEstimatedMonthlyCommitment(v float64) *SavingsPlansPricing { + s.EstimatedMonthlyCommitment = &v + return s +} + +// SetEstimatedOnDemandCost sets the EstimatedOnDemandCost field's value. +func (s *SavingsPlansPricing) SetEstimatedOnDemandCost(v float64) *SavingsPlansPricing { + s.EstimatedOnDemandCost = &v + return s +} + +// SetMonthlySavingsPlansEligibleCost sets the MonthlySavingsPlansEligibleCost field's value. +func (s *SavingsPlansPricing) SetMonthlySavingsPlansEligibleCost(v float64) *SavingsPlansPricing { + s.MonthlySavingsPlansEligibleCost = &v + return s +} + +// SetSavingsPercentage sets the SavingsPercentage field's value. +func (s *SavingsPlansPricing) SetSavingsPercentage(v float64) *SavingsPlansPricing { + s.SavingsPercentage = &v + return s +} + +// The storage configuration used for recommendations. +type StorageConfiguration struct { + _ struct{} `type:"structure"` + + // The storage volume. + SizeInGb *float64 `locationName:"sizeInGb" type:"double"` + + // The storage type. + Type *string `locationName:"type" 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 StorageConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfiguration) GoString() string { + return s.String() +} + +// SetSizeInGb sets the SizeInGb field's value. +func (s *StorageConfiguration) SetSizeInGb(v float64) *StorageConfiguration { + s.SizeInGb = &v + return s +} + +// SetType sets the Type field's value. +func (s *StorageConfiguration) SetType(v string) *StorageConfiguration { + s.Type = &v + return s +} + +// The tag structure that contains a tag key and value. +type Tag struct { + _ struct{} `type:"structure"` + + // The key that's associated with the tag. + Key *string `locationName:"key" type:"string"` + + // The value that's associated with the tag. + Value *string `locationName:"value" 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 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() +} + +// 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 +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UpdateEnrollmentStatusInput struct { + _ struct{} `type:"structure"` + + // Indicates whether to enroll member accounts of the organization if the account + // is the management account. + IncludeMemberAccounts *bool `locationName:"includeMemberAccounts" type:"boolean"` + + // Sets the account status. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"EnrollmentStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnrollmentStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnrollmentStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnrollmentStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnrollmentStatusInput"} + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeMemberAccounts sets the IncludeMemberAccounts field's value. +func (s *UpdateEnrollmentStatusInput) SetIncludeMemberAccounts(v bool) *UpdateEnrollmentStatusInput { + s.IncludeMemberAccounts = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateEnrollmentStatusInput) SetStatus(v string) *UpdateEnrollmentStatusInput { + s.Status = &v + return s +} + +type UpdateEnrollmentStatusOutput struct { + _ struct{} `type:"structure"` + + // The enrollment status of the account. + Status *string `locationName:"status" 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 UpdateEnrollmentStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnrollmentStatusOutput) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *UpdateEnrollmentStatusOutput) SetStatus(v string) *UpdateEnrollmentStatusOutput { + s.Status = &v + return s +} + +type UpdatePreferencesInput struct { + _ struct{} `type:"structure"` + + // Sets the "member account discount visibility" preference. + MemberAccountDiscountVisibility *string `locationName:"memberAccountDiscountVisibility" type:"string" enum:"MemberAccountDiscountVisibility"` + + // Sets the "savings estimation mode" preference. + SavingsEstimationMode *string `locationName:"savingsEstimationMode" type:"string" enum:"SavingsEstimationMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePreferencesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePreferencesInput) GoString() string { + return s.String() +} + +// SetMemberAccountDiscountVisibility sets the MemberAccountDiscountVisibility field's value. +func (s *UpdatePreferencesInput) SetMemberAccountDiscountVisibility(v string) *UpdatePreferencesInput { + s.MemberAccountDiscountVisibility = &v + return s +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *UpdatePreferencesInput) SetSavingsEstimationMode(v string) *UpdatePreferencesInput { + s.SavingsEstimationMode = &v + return s +} + +type UpdatePreferencesOutput struct { + _ struct{} `type:"structure"` + + // Shows the status of the "member account discount visibility" preference. + MemberAccountDiscountVisibility *string `locationName:"memberAccountDiscountVisibility" type:"string" enum:"MemberAccountDiscountVisibility"` + + // Shows the status of the "savings estimation mode" preference. + SavingsEstimationMode *string `locationName:"savingsEstimationMode" type:"string" enum:"SavingsEstimationMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePreferencesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePreferencesOutput) GoString() string { + return s.String() +} + +// SetMemberAccountDiscountVisibility sets the MemberAccountDiscountVisibility field's value. +func (s *UpdatePreferencesOutput) SetMemberAccountDiscountVisibility(v string) *UpdatePreferencesOutput { + s.MemberAccountDiscountVisibility = &v + return s +} + +// SetSavingsEstimationMode sets the SavingsEstimationMode field's value. +func (s *UpdatePreferencesOutput) SetSavingsEstimationMode(v string) *UpdatePreferencesOutput { + s.SavingsEstimationMode = &v + return s +} + +// Details about the usage. +type Usage struct { + _ struct{} `type:"structure"` + + // The operation value. + Operation *string `locationName:"operation" type:"string"` + + // The product code. + ProductCode *string `locationName:"productCode" type:"string"` + + // The usage unit. + Unit *string `locationName:"unit" type:"string"` + + // The usage amount. + UsageAmount *float64 `locationName:"usageAmount" type:"double"` + + // The usage type. + UsageType *string `locationName:"usageType" 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 Usage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Usage) GoString() string { + return s.String() +} + +// SetOperation sets the Operation field's value. +func (s *Usage) SetOperation(v string) *Usage { + s.Operation = &v + return s +} + +// SetProductCode sets the ProductCode field's value. +func (s *Usage) SetProductCode(v string) *Usage { + s.ProductCode = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *Usage) SetUnit(v string) *Usage { + s.Unit = &v + return s +} + +// SetUsageAmount sets the UsageAmount field's value. +func (s *Usage) SetUsageAmount(v float64) *Usage { + s.UsageAmount = &v + return s +} + +// SetUsageType sets the UsageType field's value. +func (s *Usage) SetUsageType(v string) *Usage { + s.UsageType = &v + return s +} + +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The list of fields that are invalid. + Fields []*ValidationExceptionDetail `locationName:"fields" type:"list"` + + Message_ *string `locationName:"message" type:"string"` + + // The reason for the validation exception. + Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input failed to meet the constraints specified by the Amazon Web Services +// service in a specified field. +type ValidationExceptionDetail struct { + _ struct{} `type:"structure"` + + // The field name where the invalid entry was detected. + // + // FieldName is a required field + FieldName *string `locationName:"fieldName" type:"string" required:"true"` + + // A message with the reason for the validation exception error. + // + // Message is a required field + Message *string `locationName:"message" 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 ValidationExceptionDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionDetail) GoString() string { + return s.String() +} + +// SetFieldName sets the FieldName field's value. +func (s *ValidationExceptionDetail) SetFieldName(v string) *ValidationExceptionDetail { + s.FieldName = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionDetail) SetMessage(v string) *ValidationExceptionDetail { + s.Message = &v + return s +} + +const ( + // ActionTypeRightsize is a ActionType enum value + ActionTypeRightsize = "Rightsize" + + // ActionTypeStop is a ActionType enum value + ActionTypeStop = "Stop" + + // ActionTypeUpgrade is a ActionType enum value + ActionTypeUpgrade = "Upgrade" + + // ActionTypePurchaseSavingsPlans is a ActionType enum value + ActionTypePurchaseSavingsPlans = "PurchaseSavingsPlans" + + // ActionTypePurchaseReservedInstances is a ActionType enum value + ActionTypePurchaseReservedInstances = "PurchaseReservedInstances" + + // ActionTypeMigrateToGraviton is a ActionType enum value + ActionTypeMigrateToGraviton = "MigrateToGraviton" +) + +// ActionType_Values returns all elements of the ActionType enum +func ActionType_Values() []string { + return []string{ + ActionTypeRightsize, + ActionTypeStop, + ActionTypeUpgrade, + ActionTypePurchaseSavingsPlans, + ActionTypePurchaseReservedInstances, + ActionTypeMigrateToGraviton, + } +} + +const ( + // EnrollmentStatusActive is a EnrollmentStatus enum value + EnrollmentStatusActive = "Active" + + // EnrollmentStatusInactive is a EnrollmentStatus enum value + EnrollmentStatusInactive = "Inactive" +) + +// EnrollmentStatus_Values returns all elements of the EnrollmentStatus enum +func EnrollmentStatus_Values() []string { + return []string{ + EnrollmentStatusActive, + EnrollmentStatusInactive, + } +} + +const ( + // ImplementationEffortVeryLow is a ImplementationEffort enum value + ImplementationEffortVeryLow = "VeryLow" + + // ImplementationEffortLow is a ImplementationEffort enum value + ImplementationEffortLow = "Low" + + // ImplementationEffortMedium is a ImplementationEffort enum value + ImplementationEffortMedium = "Medium" + + // ImplementationEffortHigh is a ImplementationEffort enum value + ImplementationEffortHigh = "High" + + // ImplementationEffortVeryHigh is a ImplementationEffort enum value + ImplementationEffortVeryHigh = "VeryHigh" +) + +// ImplementationEffort_Values returns all elements of the ImplementationEffort enum +func ImplementationEffort_Values() []string { + return []string{ + ImplementationEffortVeryLow, + ImplementationEffortLow, + ImplementationEffortMedium, + ImplementationEffortHigh, + ImplementationEffortVeryHigh, + } +} + +const ( + // MemberAccountDiscountVisibilityAll is a MemberAccountDiscountVisibility enum value + MemberAccountDiscountVisibilityAll = "All" + + // MemberAccountDiscountVisibilityNone is a MemberAccountDiscountVisibility enum value + MemberAccountDiscountVisibilityNone = "None" +) + +// MemberAccountDiscountVisibility_Values returns all elements of the MemberAccountDiscountVisibility enum +func MemberAccountDiscountVisibility_Values() []string { + return []string{ + MemberAccountDiscountVisibilityAll, + MemberAccountDiscountVisibilityNone, + } +} + +const ( + // OrderAsc is a Order enum value + OrderAsc = "Asc" + + // OrderDesc is a Order enum value + OrderDesc = "Desc" +) + +// Order_Values returns all elements of the Order enum +func Order_Values() []string { + return []string{ + OrderAsc, + OrderDesc, + } +} + +const ( + // ResourceTypeEc2instance is a ResourceType enum value + ResourceTypeEc2instance = "Ec2Instance" + + // ResourceTypeLambdaFunction is a ResourceType enum value + ResourceTypeLambdaFunction = "LambdaFunction" + + // ResourceTypeEbsVolume is a ResourceType enum value + ResourceTypeEbsVolume = "EbsVolume" + + // ResourceTypeEcsService is a ResourceType enum value + ResourceTypeEcsService = "EcsService" + + // ResourceTypeEc2autoScalingGroup is a ResourceType enum value + ResourceTypeEc2autoScalingGroup = "Ec2AutoScalingGroup" + + // ResourceTypeEc2instanceSavingsPlans is a ResourceType enum value + ResourceTypeEc2instanceSavingsPlans = "Ec2InstanceSavingsPlans" + + // ResourceTypeComputeSavingsPlans is a ResourceType enum value + ResourceTypeComputeSavingsPlans = "ComputeSavingsPlans" + + // ResourceTypeSageMakerSavingsPlans is a ResourceType enum value + ResourceTypeSageMakerSavingsPlans = "SageMakerSavingsPlans" + + // ResourceTypeEc2reservedInstances is a ResourceType enum value + ResourceTypeEc2reservedInstances = "Ec2ReservedInstances" + + // ResourceTypeRdsReservedInstances is a ResourceType enum value + ResourceTypeRdsReservedInstances = "RdsReservedInstances" + + // ResourceTypeOpenSearchReservedInstances is a ResourceType enum value + ResourceTypeOpenSearchReservedInstances = "OpenSearchReservedInstances" + + // ResourceTypeRedshiftReservedInstances is a ResourceType enum value + ResourceTypeRedshiftReservedInstances = "RedshiftReservedInstances" + + // ResourceTypeElastiCacheReservedInstances is a ResourceType enum value + ResourceTypeElastiCacheReservedInstances = "ElastiCacheReservedInstances" +) + +// ResourceType_Values returns all elements of the ResourceType enum +func ResourceType_Values() []string { + return []string{ + ResourceTypeEc2instance, + ResourceTypeLambdaFunction, + ResourceTypeEbsVolume, + ResourceTypeEcsService, + ResourceTypeEc2autoScalingGroup, + ResourceTypeEc2instanceSavingsPlans, + ResourceTypeComputeSavingsPlans, + ResourceTypeSageMakerSavingsPlans, + ResourceTypeEc2reservedInstances, + ResourceTypeRdsReservedInstances, + ResourceTypeOpenSearchReservedInstances, + ResourceTypeRedshiftReservedInstances, + ResourceTypeElastiCacheReservedInstances, + } +} + +const ( + // SavingsEstimationModeBeforeDiscounts is a SavingsEstimationMode enum value + SavingsEstimationModeBeforeDiscounts = "BeforeDiscounts" + + // SavingsEstimationModeAfterDiscounts is a SavingsEstimationMode enum value + SavingsEstimationModeAfterDiscounts = "AfterDiscounts" +) + +// SavingsEstimationMode_Values returns all elements of the SavingsEstimationMode enum +func SavingsEstimationMode_Values() []string { + return []string{ + SavingsEstimationModeBeforeDiscounts, + SavingsEstimationModeAfterDiscounts, + } +} + +const ( + // SourceComputeOptimizer is a Source enum value + SourceComputeOptimizer = "ComputeOptimizer" + + // SourceCostExplorer is a Source enum value + SourceCostExplorer = "CostExplorer" +) + +// Source_Values returns all elements of the Source enum +func Source_Values() []string { + return []string{ + SourceComputeOptimizer, + SourceCostExplorer, + } +} + +const ( + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "FieldValidationFailed" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "Other" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonOther, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/costoptimizationhubiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/costoptimizationhubiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/costoptimizationhubiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/costoptimizationhubiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,101 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package costoptimizationhubiface provides an interface to enable mocking the Cost Optimization Hub 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 costoptimizationhubiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/costoptimizationhub" +) + +// CostOptimizationHubAPI provides an interface to enable mocking the +// costoptimizationhub.CostOptimizationHub 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 +// // Cost Optimization Hub. +// func myFunc(svc costoptimizationhubiface.CostOptimizationHubAPI) bool { +// // Make svc.GetPreferences request +// } +// +// func main() { +// sess := session.New() +// svc := costoptimizationhub.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockCostOptimizationHubClient struct { +// costoptimizationhubiface.CostOptimizationHubAPI +// } +// func (m *mockCostOptimizationHubClient) GetPreferences(input *costoptimizationhub.GetPreferencesInput) (*costoptimizationhub.GetPreferencesOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockCostOptimizationHubClient{} +// +// 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 CostOptimizationHubAPI interface { + GetPreferences(*costoptimizationhub.GetPreferencesInput) (*costoptimizationhub.GetPreferencesOutput, error) + GetPreferencesWithContext(aws.Context, *costoptimizationhub.GetPreferencesInput, ...request.Option) (*costoptimizationhub.GetPreferencesOutput, error) + GetPreferencesRequest(*costoptimizationhub.GetPreferencesInput) (*request.Request, *costoptimizationhub.GetPreferencesOutput) + + GetRecommendation(*costoptimizationhub.GetRecommendationInput) (*costoptimizationhub.GetRecommendationOutput, error) + GetRecommendationWithContext(aws.Context, *costoptimizationhub.GetRecommendationInput, ...request.Option) (*costoptimizationhub.GetRecommendationOutput, error) + GetRecommendationRequest(*costoptimizationhub.GetRecommendationInput) (*request.Request, *costoptimizationhub.GetRecommendationOutput) + + ListEnrollmentStatuses(*costoptimizationhub.ListEnrollmentStatusesInput) (*costoptimizationhub.ListEnrollmentStatusesOutput, error) + ListEnrollmentStatusesWithContext(aws.Context, *costoptimizationhub.ListEnrollmentStatusesInput, ...request.Option) (*costoptimizationhub.ListEnrollmentStatusesOutput, error) + ListEnrollmentStatusesRequest(*costoptimizationhub.ListEnrollmentStatusesInput) (*request.Request, *costoptimizationhub.ListEnrollmentStatusesOutput) + + ListEnrollmentStatusesPages(*costoptimizationhub.ListEnrollmentStatusesInput, func(*costoptimizationhub.ListEnrollmentStatusesOutput, bool) bool) error + ListEnrollmentStatusesPagesWithContext(aws.Context, *costoptimizationhub.ListEnrollmentStatusesInput, func(*costoptimizationhub.ListEnrollmentStatusesOutput, bool) bool, ...request.Option) error + + ListRecommendationSummaries(*costoptimizationhub.ListRecommendationSummariesInput) (*costoptimizationhub.ListRecommendationSummariesOutput, error) + ListRecommendationSummariesWithContext(aws.Context, *costoptimizationhub.ListRecommendationSummariesInput, ...request.Option) (*costoptimizationhub.ListRecommendationSummariesOutput, error) + ListRecommendationSummariesRequest(*costoptimizationhub.ListRecommendationSummariesInput) (*request.Request, *costoptimizationhub.ListRecommendationSummariesOutput) + + ListRecommendationSummariesPages(*costoptimizationhub.ListRecommendationSummariesInput, func(*costoptimizationhub.ListRecommendationSummariesOutput, bool) bool) error + ListRecommendationSummariesPagesWithContext(aws.Context, *costoptimizationhub.ListRecommendationSummariesInput, func(*costoptimizationhub.ListRecommendationSummariesOutput, bool) bool, ...request.Option) error + + ListRecommendations(*costoptimizationhub.ListRecommendationsInput) (*costoptimizationhub.ListRecommendationsOutput, error) + ListRecommendationsWithContext(aws.Context, *costoptimizationhub.ListRecommendationsInput, ...request.Option) (*costoptimizationhub.ListRecommendationsOutput, error) + ListRecommendationsRequest(*costoptimizationhub.ListRecommendationsInput) (*request.Request, *costoptimizationhub.ListRecommendationsOutput) + + ListRecommendationsPages(*costoptimizationhub.ListRecommendationsInput, func(*costoptimizationhub.ListRecommendationsOutput, bool) bool) error + ListRecommendationsPagesWithContext(aws.Context, *costoptimizationhub.ListRecommendationsInput, func(*costoptimizationhub.ListRecommendationsOutput, bool) bool, ...request.Option) error + + UpdateEnrollmentStatus(*costoptimizationhub.UpdateEnrollmentStatusInput) (*costoptimizationhub.UpdateEnrollmentStatusOutput, error) + UpdateEnrollmentStatusWithContext(aws.Context, *costoptimizationhub.UpdateEnrollmentStatusInput, ...request.Option) (*costoptimizationhub.UpdateEnrollmentStatusOutput, error) + UpdateEnrollmentStatusRequest(*costoptimizationhub.UpdateEnrollmentStatusInput) (*request.Request, *costoptimizationhub.UpdateEnrollmentStatusOutput) + + UpdatePreferences(*costoptimizationhub.UpdatePreferencesInput) (*costoptimizationhub.UpdatePreferencesOutput, error) + UpdatePreferencesWithContext(aws.Context, *costoptimizationhub.UpdatePreferencesInput, ...request.Option) (*costoptimizationhub.UpdatePreferencesOutput, error) + UpdatePreferencesRequest(*costoptimizationhub.UpdatePreferencesInput) (*request.Request, *costoptimizationhub.UpdatePreferencesOutput) +} + +var _ CostOptimizationHubAPI = (*costoptimizationhub.CostOptimizationHub)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,35 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package costoptimizationhub provides the client and types for making API +// requests to Cost Optimization Hub. +// +// You can use the Cost Optimization Hub API to programmatically identify, filter, +// aggregate, and quantify savings for your cost optimization recommendations +// across multiple Amazon Web Services Regions and Amazon Web Services accounts +// in your organization. +// +// The Cost Optimization Hub API provides the following endpoint: +// +// - https://cost-optimization-hub.us-east-1.amazonaws.com +// +// See https://docs.aws.amazon.com/goto/WebAPI/cost-optimization-hub-2022-07-26 for more information on this service. +// +// See costoptimizationhub package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/costoptimizationhub/ +// +// # Using the Client +// +// To contact Cost Optimization Hub 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 Cost Optimization Hub client CostOptimizationHub for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/costoptimizationhub/#New +package costoptimizationhub diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,50 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package costoptimizationhub + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You are not authorized to use this operation with the given parameters. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An error on the server occurred during the processing of your request. Try + // again later. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified Amazon Resource Name (ARN) in the request doesn't exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an Amazon Web Services + // service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/service.go golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/costoptimizationhub/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/costoptimizationhub/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package costoptimizationhub + +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" +) + +// CostOptimizationHub provides the API operation methods for making requests to +// Cost Optimization Hub. See this package's package overview docs +// for details on the service. +// +// CostOptimizationHub methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type CostOptimizationHub 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 = "Cost Optimization Hub" // Name of service. + EndpointsID = "cost-optimization-hub" // ID to lookup a service endpoint with. + ServiceID = "Cost Optimization Hub" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the CostOptimizationHub 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 CostOptimizationHub client from just a session. +// svc := costoptimizationhub.New(mySession) +// +// // Create a CostOptimizationHub client with additional configuration +// svc := costoptimizationhub.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *CostOptimizationHub { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "cost-optimization-hub" + } + 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) *CostOptimizationHub { + svc := &CostOptimizationHub{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2022-07-26", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "CostOptimizationHubService", + }, + 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 CostOptimizationHub operation and runs any +// custom request initialization. +func (c *CostOptimizationHub) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/customerprofiles/api.go golang-github-aws-aws-sdk-go-1.48.14/service/customerprofiles/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/customerprofiles/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/customerprofiles/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1424,6 +1424,97 @@ return out, req.Send() } +const opDetectProfileObjectType = "DetectProfileObjectType" + +// DetectProfileObjectTypeRequest generates a "aws/request.Request" representing the +// client's request for the DetectProfileObjectType 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 DetectProfileObjectType for more information on using the DetectProfileObjectType +// 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 DetectProfileObjectTypeRequest method. +// req, resp := client.DetectProfileObjectTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/DetectProfileObjectType +func (c *CustomerProfiles) DetectProfileObjectTypeRequest(input *DetectProfileObjectTypeInput) (req *request.Request, output *DetectProfileObjectTypeOutput) { + op := &request.Operation{ + Name: opDetectProfileObjectType, + HTTPMethod: "POST", + HTTPPath: "/domains/{DomainName}/detect/object-types", + } + + if input == nil { + input = &DetectProfileObjectTypeInput{} + } + + output = &DetectProfileObjectTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// DetectProfileObjectType API operation for Amazon Connect Customer Profiles. +// +// The process of detecting profile object type mapping by using given objects. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Connect Customer Profiles's +// API operation DetectProfileObjectType for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input you provided is invalid. +// +// - ResourceNotFoundException +// The requested resource does not exist, or access was denied. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// You exceeded the maximum number of requests. +// +// - InternalServerException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/DetectProfileObjectType +func (c *CustomerProfiles) DetectProfileObjectType(input *DetectProfileObjectTypeInput) (*DetectProfileObjectTypeOutput, error) { + req, out := c.DetectProfileObjectTypeRequest(input) + return out, req.Send() +} + +// DetectProfileObjectTypeWithContext is the same as DetectProfileObjectType with the addition of +// the ability to pass a context and additional request options. +// +// See DetectProfileObjectType 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 *CustomerProfiles) DetectProfileObjectTypeWithContext(ctx aws.Context, input *DetectProfileObjectTypeInput, opts ...request.Option) (*DetectProfileObjectTypeOutput, error) { + req, out := c.DetectProfileObjectTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAutoMergingPreview = "GetAutoMergingPreview" // GetAutoMergingPreviewRequest generates a "aws/request.Request" representing the @@ -6380,7 +6471,11 @@ Conditions *Conditions `type:"structure" sensitive:"true"` // The description of the calculated attribute. - Description *string `min:"1" type:"string"` + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateCalculatedAttributeDefinitionInput's + // String and GoString methods. + Description *string `min:"1" type:"string" sensitive:"true"` // The display name of the calculated attribute. DisplayName *string `min:"1" type:"string"` @@ -6541,7 +6636,11 @@ CreatedAt *time.Time `type:"timestamp"` // The description of the calculated attribute. - Description *string `min:"1" type:"string"` + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateCalculatedAttributeDefinitionOutput's + // String and GoString methods. + Description *string `min:"1" type:"string" sensitive:"true"` // The display name of the calculated attribute. DisplayName *string `min:"1" type:"string"` @@ -8608,6 +8707,166 @@ return s } +type DetectProfileObjectTypeInput struct { + _ struct{} `type:"structure"` + + // The unique name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"1" type:"string" required:"true"` + + // A string that is serialized from a JSON object. + // + // Objects is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DetectProfileObjectTypeInput's + // String and GoString methods. + // + // Objects is a required field + Objects []*string `min:"1" type:"list" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectProfileObjectTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectProfileObjectTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DetectProfileObjectTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetectProfileObjectTypeInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) + } + if s.Objects == nil { + invalidParams.Add(request.NewErrParamRequired("Objects")) + } + if s.Objects != nil && len(s.Objects) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Objects", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DetectProfileObjectTypeInput) SetDomainName(v string) *DetectProfileObjectTypeInput { + s.DomainName = &v + return s +} + +// SetObjects sets the Objects field's value. +func (s *DetectProfileObjectTypeInput) SetObjects(v []*string) *DetectProfileObjectTypeInput { + s.Objects = v + return s +} + +type DetectProfileObjectTypeOutput struct { + _ struct{} `type:"structure"` + + // Detected ProfileObjectType mappings from given objects. A maximum of one + // mapping is supported. + DetectedProfileObjectTypes []*DetectedProfileObjectType `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 DetectProfileObjectTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectProfileObjectTypeOutput) GoString() string { + return s.String() +} + +// SetDetectedProfileObjectTypes sets the DetectedProfileObjectTypes field's value. +func (s *DetectProfileObjectTypeOutput) SetDetectedProfileObjectTypes(v []*DetectedProfileObjectType) *DetectProfileObjectTypeOutput { + s.DetectedProfileObjectTypes = v + return s +} + +// Contains ProfileObjectType mapping information from the model. +type DetectedProfileObjectType struct { + _ struct{} `type:"structure"` + + // A map of the name and the ObjectType field. + // + // Fields is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DetectedProfileObjectType's + // String and GoString methods. + Fields map[string]*ObjectTypeField `type:"map" sensitive:"true"` + + // A list of unique keys that can be used to map data to a profile. + // + // Keys is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DetectedProfileObjectType's + // String and GoString methods. + Keys map[string][]*ObjectTypeKey `type:"map" sensitive:"true"` + + // The format of sourceLastUpdatedTimestamp that was detected in fields. + SourceLastUpdatedTimestampFormat *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectedProfileObjectType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetectedProfileObjectType) GoString() string { + return s.String() +} + +// SetFields sets the Fields field's value. +func (s *DetectedProfileObjectType) SetFields(v map[string]*ObjectTypeField) *DetectedProfileObjectType { + s.Fields = v + return s +} + +// SetKeys sets the Keys field's value. +func (s *DetectedProfileObjectType) SetKeys(v map[string][]*ObjectTypeKey) *DetectedProfileObjectType { + s.Keys = v + return s +} + +// SetSourceLastUpdatedTimestampFormat sets the SourceLastUpdatedTimestampFormat field's value. +func (s *DetectedProfileObjectType) SetSourceLastUpdatedTimestampFormat(v string) *DetectedProfileObjectType { + s.SourceLastUpdatedTimestampFormat = &v + return s +} + // Usage-specific statistics about the domain. type DomainStats struct { _ struct{} `type:"structure"` @@ -9561,7 +9820,11 @@ CreatedAt *time.Time `type:"timestamp"` // The description of the calculated attribute. - Description *string `min:"1" type:"string"` + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetCalculatedAttributeDefinitionOutput's + // String and GoString methods. + Description *string `min:"1" type:"string" sensitive:"true"` // The display name of the calculated attribute. DisplayName *string `min:"1" type:"string"` @@ -12050,7 +12313,11 @@ CreatedAt *time.Time `type:"timestamp"` // The threshold for the calculated attribute. - Description *string `min:"1" type:"string"` + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListCalculatedAttributeDefinitionItem's + // String and GoString methods. + Description *string `min:"1" type:"string" sensitive:"true"` // The display name of the calculated attribute. DisplayName *string `min:"1" type:"string"` @@ -12194,7 +12461,11 @@ _ struct{} `type:"structure"` // The list of calculated attribute definitions. - Items []*ListCalculatedAttributeDefinitionItem `type:"list"` + // + // Items is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListCalculatedAttributeDefinitionsOutput's + // String and GoString methods. + Items []*ListCalculatedAttributeDefinitionItem `type:"list" sensitive:"true"` // The pagination token from the previous call to ListCalculatedAttributeDefinitions. NextToken *string `min:"1" type:"string"` @@ -17560,7 +17831,11 @@ Conditions *Conditions `type:"structure" sensitive:"true"` // The description of the calculated attribute. - Description *string `min:"1" type:"string"` + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateCalculatedAttributeDefinitionInput's + // String and GoString methods. + Description *string `min:"1" type:"string" sensitive:"true"` // The display name of the calculated attribute. DisplayName *string `min:"1" type:"string"` @@ -17678,7 +17953,11 @@ CreatedAt *time.Time `type:"timestamp"` // The description of the calculated attribute. - Description *string `min:"1" type:"string"` + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateCalculatedAttributeDefinitionOutput's + // String and GoString methods. + Description *string `min:"1" type:"string" sensitive:"true"` // The display name of the calculated attribute. DisplayName *string `min:"1" type:"string"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/customerprofiles/customerprofilesiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/customerprofiles/customerprofilesiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/customerprofiles/customerprofilesiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/customerprofiles/customerprofilesiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -120,6 +120,10 @@ DeleteWorkflowWithContext(aws.Context, *customerprofiles.DeleteWorkflowInput, ...request.Option) (*customerprofiles.DeleteWorkflowOutput, error) DeleteWorkflowRequest(*customerprofiles.DeleteWorkflowInput) (*request.Request, *customerprofiles.DeleteWorkflowOutput) + DetectProfileObjectType(*customerprofiles.DetectProfileObjectTypeInput) (*customerprofiles.DetectProfileObjectTypeOutput, error) + DetectProfileObjectTypeWithContext(aws.Context, *customerprofiles.DetectProfileObjectTypeInput, ...request.Option) (*customerprofiles.DetectProfileObjectTypeOutput, error) + DetectProfileObjectTypeRequest(*customerprofiles.DetectProfileObjectTypeInput) (*request.Request, *customerprofiles.DetectProfileObjectTypeOutput) + GetAutoMergingPreview(*customerprofiles.GetAutoMergingPreviewInput) (*customerprofiles.GetAutoMergingPreviewOutput, error) GetAutoMergingPreviewWithContext(aws.Context, *customerprofiles.GetAutoMergingPreviewInput, ...request.Option) (*customerprofiles.GetAutoMergingPreviewOutput, error) GetAutoMergingPreviewRequest(*customerprofiles.GetAutoMergingPreviewInput) (*request.Request, *customerprofiles.GetAutoMergingPreviewOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/databasemigrationservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/databasemigrationservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/databasemigrationservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/databasemigrationservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1118,6 +1118,10 @@ // For information on the required permissions, see IAM Permissions Needed to // Use DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#CHAP_Security.IAMPermissions). // +// If you don't specify a version when creating a replication instance, DMS +// will create the instance using the default engine version. For information +// about the default engine version, see Release Notes (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReleaseNotes.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. @@ -11497,11 +11501,11 @@ // Migrates 10 active and enabled Amazon SNS subscriptions at a time and converts // them to corresponding Amazon EventBridge rules. By default, this operation // migrates subscriptions only when all your replication instance versions are -// 3.4.6 or higher. If any replication instances are from versions earlier than -// 3.4.6, the operation raises an error and tells you to upgrade these instances -// to version 3.4.6 or higher. To enable migration regardless of version, set +// 3.4.5 or higher. If any replication instances are from versions earlier than +// 3.4.5, the operation raises an error and tells you to upgrade these instances +// to version 3.4.5 or higher. To enable migration regardless of version, set // the Force option to true. However, if you don't upgrade instances earlier -// than version 3.4.6, some types of events might not be available when you +// than version 3.4.5, some types of events might not be available when you // use Amazon EventBridge. // // To call this operation, make sure that you have certain permissions added @@ -12572,22 +12576,22 @@ // Specifies the maximum value of the DMS capacity units (DCUs) for which a // given DMS Serverless replication can be provisioned. A single DCU is 2GB - // of RAM, with 2 DCUs as the minimum value allowed. The list of valid DCU values - // includes 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value - // that you can specify for DMS Serverless is 384. The MaxCapacityUnits parameter - // is the only DCU parameter you are required to specify. + // of RAM, with 1 DCU as the minimum value allowed. The list of valid DCU values + // includes 1, 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum + // value that you can specify for DMS Serverless is 384. The MaxCapacityUnits + // parameter is the only DCU parameter you are required to specify. MaxCapacityUnits *int64 `type:"integer"` // Specifies the minimum value of the DMS capacity units (DCUs) for which a // given DMS Serverless replication can be provisioned. A single DCU is 2GB - // of RAM, with 2 DCUs as the minimum value allowed. The list of valid DCU values - // includes 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU - // value that you can specify for DMS Serverless is 2. You don't have to specify - // a value for the MinCapacityUnits parameter. If you don't set this value, - // DMS scans the current activity of available source tables to identify an - // optimum setting for this parameter. If there is no current source activity + // of RAM, with 1 DCU as the minimum value allowed. The list of valid DCU values + // includes 1, 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum + // DCU value that you can specify for DMS Serverless is 1. You don't have to + // specify a value for the MinCapacityUnits parameter. If you don't set this + // value, DMS scans the current activity of available source tables to identify + // an optimum setting for this parameter. If there is no current source activity // or DMS can't otherwise identify a more appropriate value, it sets this parameter - // to the minimum DCU value allowed, 2. + // to the minimum DCU value allowed, 1. MinCapacityUnits *int64 `type:"integer"` // Specifies whether the DMS Serverless replication is a Multi-AZ deployment. @@ -12788,8 +12792,9 @@ Description *string `type:"string"` // The type of database engine for the data provider. Valid values include "aurora", - // "aurora_postgresql", "mysql", "oracle", "postgres", and "sqlserver". A value - // of "aurora" represents Amazon Aurora MySQL-Compatible Edition. + // "aurora-postgresql", "mysql", "oracle", "postgres", "sqlserver", redshift, + // mariadb, mongodb, and docdb. A value of "aurora" represents Amazon Aurora + // MySQL-Compatible Edition. // // Engine is a required field Engine *string `type:"string" required:"true"` @@ -14267,14 +14272,6 @@ // defaults to true. // // Default: true - // - // When AutoMinorVersionUpgrade is enabled, DMS uses the current default engine - // version when you create a replication instance. For example, if you set EngineVersion - // to a lower version number than the current default version, DMS uses the - // default version. - // - // If AutoMinorVersionUpgrade isn’t enabled when you create a replication - // instance, DMS uses the engine version specified by the EngineVersion parameter. AutoMinorVersionUpgrade *bool `type:"boolean"` // The Availability Zone where the replication instance will be created. The @@ -14563,7 +14560,7 @@ // ReplicationSubnetGroupIdentifier is a required field ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"` - // One or more subnet IDs to be assigned to the subnet group. + // Two or more subnet IDs to be assigned to the subnet group. // // SubnetIds is a required field SubnetIds []*string `type:"list" required:"true"` @@ -14698,7 +14695,7 @@ // // Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12” // - // Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“ + // Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“ CdcStopPosition *string `type:"string"` // The migration type. Valid values: full-load | cdc | full-load-and-cdc @@ -14941,8 +14938,9 @@ Description *string `type:"string"` // The type of database engine for the data provider. Valid values include "aurora", - // "aurora_postgresql", "mysql", "oracle", "postgres", and "sqlserver". A value - // of "aurora" represents Amazon Aurora MySQL-Compatible Edition. + // "aurora-postgresql", "mysql", "oracle", "postgres", "sqlserver", redshift, + // mariadb, mongodb, and docdb. A value of "aurora" represents Amazon Aurora + // MySQL-Compatible Edition. Engine *string `type:"string"` // The settings in JSON format for a data provider. @@ -15133,9 +15131,18 @@ type DataProviderSettings struct { _ struct{} `type:"structure"` + // Provides information that defines a DocumentDB data provider. + DocDbSettings *DocDbDataProviderSettings `type:"structure"` + + // Provides information that defines a MariaDB data provider. + MariaDbSettings *MariaDbDataProviderSettings `type:"structure"` + // Provides information that defines a Microsoft SQL Server data provider. MicrosoftSqlServerSettings *MicrosoftSqlServerDataProviderSettings `type:"structure"` + // Provides information that defines a MongoDB data provider. + MongoDbSettings *MongoDbDataProviderSettings `type:"structure"` + // Provides information that defines a MySQL data provider. MySqlSettings *MySqlDataProviderSettings `type:"structure"` @@ -15144,6 +15151,9 @@ // Provides information that defines a PostgreSQL data provider. PostgreSqlSettings *PostgreSqlDataProviderSettings `type:"structure"` + + // Provides information that defines an Amazon Redshift data provider. + RedshiftSettings *RedshiftDataProviderSettings `type:"structure"` } // String returns the string representation. @@ -15164,12 +15174,30 @@ return s.String() } +// SetDocDbSettings sets the DocDbSettings field's value. +func (s *DataProviderSettings) SetDocDbSettings(v *DocDbDataProviderSettings) *DataProviderSettings { + s.DocDbSettings = v + return s +} + +// SetMariaDbSettings sets the MariaDbSettings field's value. +func (s *DataProviderSettings) SetMariaDbSettings(v *MariaDbDataProviderSettings) *DataProviderSettings { + s.MariaDbSettings = v + return s +} + // SetMicrosoftSqlServerSettings sets the MicrosoftSqlServerSettings field's value. func (s *DataProviderSettings) SetMicrosoftSqlServerSettings(v *MicrosoftSqlServerDataProviderSettings) *DataProviderSettings { s.MicrosoftSqlServerSettings = v return s } +// SetMongoDbSettings sets the MongoDbSettings field's value. +func (s *DataProviderSettings) SetMongoDbSettings(v *MongoDbDataProviderSettings) *DataProviderSettings { + s.MongoDbSettings = v + return s +} + // SetMySqlSettings sets the MySqlSettings field's value. func (s *DataProviderSettings) SetMySqlSettings(v *MySqlDataProviderSettings) *DataProviderSettings { s.MySqlSettings = v @@ -15188,6 +15216,12 @@ return s } +// SetRedshiftSettings sets the RedshiftSettings field's value. +func (s *DataProviderSettings) SetRedshiftSettings(v *RedshiftDataProviderSettings) *DataProviderSettings { + s.RedshiftSettings = v + return s +} + // Describes an inventory database instance for a Fleet Advisor collector. type DatabaseInstanceSoftwareDetailsResponse struct { _ struct{} `type:"structure"` @@ -17075,6 +17109,8 @@ // Filters applied to the data providers described in the form of key-value // pairs. + // + // Valid filter names: data-provider-identifier Filters []*Filter `type:"list"` // Specifies the unique pagination token that makes it possible to display the @@ -21785,6 +21821,75 @@ return s } +// Provides information that defines a DocumentDB data provider. +type DocDbDataProviderSettings struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the certificate used for SSL connection. + CertificateArn *string `type:"string"` + + // The database name on the DocumentDB data provider. + DatabaseName *string `type:"string"` + + // The port value for the DocumentDB data provider. + Port *int64 `type:"integer"` + + // The name of the source DocumentDB server. + ServerName *string `type:"string"` + + // The SSL mode used to connect to the DocumentDB data provider. The default + // value is none. + SslMode *string `type:"string" enum:"DmsSslModeValue"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocDbDataProviderSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocDbDataProviderSettings) GoString() string { + return s.String() +} + +// SetCertificateArn sets the CertificateArn field's value. +func (s *DocDbDataProviderSettings) SetCertificateArn(v string) *DocDbDataProviderSettings { + s.CertificateArn = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *DocDbDataProviderSettings) SetDatabaseName(v string) *DocDbDataProviderSettings { + s.DatabaseName = &v + return s +} + +// SetPort sets the Port field's value. +func (s *DocDbDataProviderSettings) SetPort(v int64) *DocDbDataProviderSettings { + s.Port = &v + return s +} + +// SetServerName sets the ServerName field's value. +func (s *DocDbDataProviderSettings) SetServerName(v string) *DocDbDataProviderSettings { + s.ServerName = &v + return s +} + +// SetSslMode sets the SslMode field's value. +func (s *DocDbDataProviderSettings) SetSslMode(v string) *DocDbDataProviderSettings { + s.SslMode = &v + return s +} + // Provides information that defines a DocumentDB endpoint. type DocDbSettings struct { _ struct{} `type:"structure"` @@ -22163,9 +22268,9 @@ // The database engine name. Valid values, depending on the EndpointType, include // "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql", - // "redshift", "s3", "db2", "db2-zos", "azuredb", "sybase", "dynamodb", "mongodb", - // "kinesis", "kafka", "elasticsearch", "documentdb", "sqlserver", "neptune", - // and "babelfish". + // "redshift", "redshift-serverless", "s3", "db2", "db2-zos", "azuredb", "sybase", + // "dynamodb", "mongodb", "kinesis", "kafka", "elasticsearch", "documentdb", + // "sqlserver", "neptune", and "babelfish". EngineName *string `type:"string"` // Value returned by a call to CreateEndpoint that can be used for cross-account @@ -23577,6 +23682,20 @@ // Database name for the endpoint. DatabaseName *string `type:"string"` + // If true, DMS saves any .csv files to the Db2 LUW target that were used to + // replicate data. DMS uses these files for analysis and troubleshooting. + // + // The default value is false. + KeepCsvFiles *bool `type:"boolean"` + + // The amount of time (in milliseconds) before DMS times out operations performed + // by DMS on the Db2 target. The default value is 1200 (20 minutes). + LoadTimeout *int64 `type:"integer"` + + // Specifies the maximum size (in KB) of .csv files used to transfer data to + // Db2 LUW. + MaxFileSize *int64 `type:"integer"` + // Maximum number of bytes per read, as a NUMBER value. The default is 64 KB. MaxKBytesPerRead *int64 `type:"integer"` @@ -23618,6 +23737,11 @@ // Endpoint connection user name. Username *string `type:"string"` + + // The size (in KB) of the in-memory file write buffer used when generating + // .csv files on the local disk on the DMS replication instance. The default + // value is 1024 (1 MB). + WriteBufferSize *int64 `type:"integer"` } // String returns the string representation. @@ -23650,6 +23774,24 @@ return s } +// SetKeepCsvFiles sets the KeepCsvFiles field's value. +func (s *IBMDb2Settings) SetKeepCsvFiles(v bool) *IBMDb2Settings { + s.KeepCsvFiles = &v + return s +} + +// SetLoadTimeout sets the LoadTimeout field's value. +func (s *IBMDb2Settings) SetLoadTimeout(v int64) *IBMDb2Settings { + s.LoadTimeout = &v + return s +} + +// SetMaxFileSize sets the MaxFileSize field's value. +func (s *IBMDb2Settings) SetMaxFileSize(v int64) *IBMDb2Settings { + s.MaxFileSize = &v + return s +} + // SetMaxKBytesPerRead sets the MaxKBytesPerRead field's value. func (s *IBMDb2Settings) SetMaxKBytesPerRead(v int64) *IBMDb2Settings { s.MaxKBytesPerRead = &v @@ -23698,6 +23840,12 @@ return s } +// SetWriteBufferSize sets the WriteBufferSize field's value. +func (s *IBMDb2Settings) SetWriteBufferSize(v int64) *IBMDb2Settings { + s.WriteBufferSize = &v + return s +} + type ImportCertificateInput struct { _ struct{} `type:"structure"` @@ -25312,6 +25460,66 @@ return s } +// Provides information that defines a MariaDB data provider. +type MariaDbDataProviderSettings struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the certificate used for SSL connection. + CertificateArn *string `type:"string"` + + // The port value for the MariaDB data provider + Port *int64 `type:"integer"` + + // The name of the MariaDB server. + ServerName *string `type:"string"` + + // The SSL mode used to connect to the MariaDB data provider. The default value + // is none. + SslMode *string `type:"string" enum:"DmsSslModeValue"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MariaDbDataProviderSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MariaDbDataProviderSettings) GoString() string { + return s.String() +} + +// SetCertificateArn sets the CertificateArn field's value. +func (s *MariaDbDataProviderSettings) SetCertificateArn(v string) *MariaDbDataProviderSettings { + s.CertificateArn = &v + return s +} + +// SetPort sets the Port field's value. +func (s *MariaDbDataProviderSettings) SetPort(v int64) *MariaDbDataProviderSettings { + s.Port = &v + return s +} + +// SetServerName sets the ServerName field's value. +func (s *MariaDbDataProviderSettings) SetServerName(v string) *MariaDbDataProviderSettings { + s.ServerName = &v + return s +} + +// SetSslMode sets the SslMode field's value. +func (s *MariaDbDataProviderSettings) SetSslMode(v string) *MariaDbDataProviderSettings { + s.SslMode = &v + return s +} + // Provides information that defines a Microsoft SQL Server endpoint. type MicrosoftSQLServerSettings struct { _ struct{} `type:"structure"` @@ -25400,8 +25608,9 @@ // Indicates the mode used to fetch CDC data. TlogAccessMode *string `type:"string" enum:"TlogAccessMode"` - // Use the TrimSpaceInChar source endpoint setting to trim data on CHAR and - // NCHAR data types during migration. The default value is true. + // Use the TrimSpaceInChar source endpoint setting to right-trim data on CHAR + // and NCHAR data types during migration. Setting TrimSpaceInChar does not left-trim + // data. The default value is true. TrimSpaceInChar *bool `type:"boolean"` // Use this to attribute to transfer data for full-load operations using BCP. @@ -25834,8 +26043,9 @@ Description *string `type:"string"` // The type of database engine for the data provider. Valid values include "aurora", - // "aurora_postgresql", "mysql", "oracle", "postgres", and "sqlserver". A value - // of "aurora" represents Amazon Aurora MySQL-Compatible Edition. + // "aurora-postgresql", "mysql", "oracle", "postgres", "sqlserver", redshift, + // mariadb, mongodb, and docdb. A value of "aurora" represents Amazon Aurora + // MySQL-Compatible Edition. Engine *string `type:"string"` // If this attribute is Y, the current call to ModifyDataProvider replaces all @@ -27083,14 +27293,6 @@ // * A newer minor version is available. // // * DMS has enabled automatic patching for the given engine version. - // - // When AutoMinorVersionUpgrade is enabled, DMS uses the current default engine - // version when you modify a replication instance. For example, if you set EngineVersion - // to a lower version number than the current default version, DMS uses the - // default version. - // - // If AutoMinorVersionUpgrade isn’t enabled when you modify a replication - // instance, DMS uses the engine version specified by the EngineVersion parameter. AutoMinorVersionUpgrade *bool `type:"boolean"` // The engine version number of the replication instance. @@ -27417,7 +27619,7 @@ // // Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12” // - // Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“ + // Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“ CdcStopPosition *string `type:"string"` // The migration type. Valid values: full-load | cdc | full-load-and-cdc @@ -27571,6 +27773,107 @@ return s } +// Provides information that defines a MongoDB data provider. +type MongoDbDataProviderSettings struct { + _ struct{} `type:"structure"` + + // The authentication method for connecting to the data provider. Valid values + // are DEFAULT, MONGODB_CR, or SCRAM_SHA_1. + AuthMechanism *string `type:"string" enum:"AuthMechanismValue"` + + // The MongoDB database name. This setting isn't used when AuthType is set to + // "no". + // + // The default is "admin". + AuthSource *string `type:"string"` + + // The authentication type for the database connection. Valid values are PASSWORD + // or NO. + AuthType *string `type:"string" enum:"AuthTypeValue"` + + // The Amazon Resource Name (ARN) of the certificate used for SSL connection. + CertificateArn *string `type:"string"` + + // The database name on the MongoDB data provider. + DatabaseName *string `type:"string"` + + // The port value for the MongoDB data provider. + Port *int64 `type:"integer"` + + // The name of the MongoDB server. + ServerName *string `type:"string"` + + // The SSL mode used to connect to the MongoDB data provider. The default value + // is none. + SslMode *string `type:"string" enum:"DmsSslModeValue"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MongoDbDataProviderSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MongoDbDataProviderSettings) GoString() string { + return s.String() +} + +// SetAuthMechanism sets the AuthMechanism field's value. +func (s *MongoDbDataProviderSettings) SetAuthMechanism(v string) *MongoDbDataProviderSettings { + s.AuthMechanism = &v + return s +} + +// SetAuthSource sets the AuthSource field's value. +func (s *MongoDbDataProviderSettings) SetAuthSource(v string) *MongoDbDataProviderSettings { + s.AuthSource = &v + return s +} + +// SetAuthType sets the AuthType field's value. +func (s *MongoDbDataProviderSettings) SetAuthType(v string) *MongoDbDataProviderSettings { + s.AuthType = &v + return s +} + +// SetCertificateArn sets the CertificateArn field's value. +func (s *MongoDbDataProviderSettings) SetCertificateArn(v string) *MongoDbDataProviderSettings { + s.CertificateArn = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *MongoDbDataProviderSettings) SetDatabaseName(v string) *MongoDbDataProviderSettings { + s.DatabaseName = &v + return s +} + +// SetPort sets the Port field's value. +func (s *MongoDbDataProviderSettings) SetPort(v int64) *MongoDbDataProviderSettings { + s.Port = &v + return s +} + +// SetServerName sets the ServerName field's value. +func (s *MongoDbDataProviderSettings) SetServerName(v string) *MongoDbDataProviderSettings { + s.ServerName = &v + return s +} + +// SetSslMode sets the SslMode field's value. +func (s *MongoDbDataProviderSettings) SetSslMode(v string) *MongoDbDataProviderSettings { + s.SslMode = &v + return s +} + // Provides information that defines a MongoDB endpoint. type MongoDbSettings struct { _ struct{} `type:"structure"` @@ -27661,7 +27964,8 @@ // contains the MongoDB endpoint connection details. SecretsManagerSecretId *string `type:"string"` - // The name of the server on the MongoDB source endpoint. + // The name of the server on the MongoDB source endpoint. For MongoDB Atlas, + // provide the server name for any of the servers in the replication set. ServerName *string `type:"string"` // If true, DMS retrieves the entire document from the MongoDB source during @@ -27913,6 +28217,9 @@ // In the example, DMS checks for changes in the binary logs every five seconds. EventsPollInterval *int64 `type:"integer"` + // Sets the client statement timeout (in seconds) for a MySQL source endpoint. + ExecuteTimeout *int64 `type:"integer"` + // Specifies the maximum size (in KB) of any .csv file used to transfer data // to a MySQL-compatible database. // @@ -28029,6 +28336,12 @@ return s } +// SetExecuteTimeout sets the ExecuteTimeout field's value. +func (s *MySQLSettings) SetExecuteTimeout(v int64) *MySQLSettings { + s.ExecuteTimeout = &v + return s +} + // SetMaxFileSize sets the MaxFileSize field's value. func (s *MySQLSettings) SetMaxFileSize(v int64) *MySQLSettings { s.MaxFileSize = &v @@ -28607,7 +28920,7 @@ // // You can specify one of two sets of values for these permissions. You can // specify the values for this setting and SecretsManagerOracleAsmSecretId. - // Or you can specify clear-text values for AsmUserName, AsmPassword, and AsmServerName. + // Or you can specify clear-text values for AsmUser, AsmPassword, and AsmServerName. // You can't specify both. For more information on creating this SecretsManagerOracleAsmSecret // and the SecretsManagerOracleAsmAccessRoleArn and SecretsManagerOracleAsmSecretId // required to access it, see Using secrets to access Database Migration Service @@ -29255,7 +29568,8 @@ HeartbeatSchema *string `type:"string"` // When true, lets PostgreSQL migrate the boolean type as boolean. By default, - // PostgreSQL migrates booleans as varchar(5). + // PostgreSQL migrates booleans as varchar(5). You must set this setting on + // both the source and target endpoints for it to take effect. MapBooleanAsBoolean *bool `type:"boolean"` // When true, DMS migrates JSONB values as CLOB. @@ -30325,6 +30639,56 @@ return s } +// Provides information that defines an Amazon Redshift data provider. +type RedshiftDataProviderSettings struct { + _ struct{} `type:"structure"` + + // The database name on the Amazon Redshift data provider. + DatabaseName *string `type:"string"` + + // The port value for the Amazon Redshift data provider. + Port *int64 `type:"integer"` + + // The name of the Amazon Redshift server. + ServerName *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 RedshiftDataProviderSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftDataProviderSettings) GoString() string { + return s.String() +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *RedshiftDataProviderSettings) SetDatabaseName(v string) *RedshiftDataProviderSettings { + s.DatabaseName = &v + return s +} + +// SetPort sets the Port field's value. +func (s *RedshiftDataProviderSettings) SetPort(v int64) *RedshiftDataProviderSettings { + s.Port = &v + return s +} + +// SetServerName sets the ServerName field's value. +func (s *RedshiftDataProviderSettings) SetServerName(v string) *RedshiftDataProviderSettings { + s.ServerName = &v + return s +} + // Provides information that defines an Amazon Redshift endpoint. type RedshiftSettings struct { _ struct{} `type:"structure"` @@ -30430,7 +30794,8 @@ LoadTimeout *int64 `type:"integer"` // When true, lets Redshift migrate the boolean type as boolean. By default, - // Redshift migrates booleans as varchar(1). + // Redshift migrates booleans as varchar(1). You must set this setting on both + // the source and target endpoints for it to take effect. MapBooleanAsBoolean *bool `type:"boolean"` // The maximum size (in KB) of any .csv file used to load data on an S3 bucket @@ -31236,6 +31601,9 @@ // The time the serverless replication was created. ReplicationCreateTime *time.Time `type:"timestamp"` + // The timestamp when DMS will deprovision the replication. + ReplicationDeprovisionTime *time.Time `type:"timestamp"` + // The timestamp when replication was last stopped. ReplicationLastStopTime *time.Time `type:"timestamp"` @@ -31372,6 +31740,12 @@ return s } +// SetReplicationDeprovisionTime sets the ReplicationDeprovisionTime field's value. +func (s *Replication) SetReplicationDeprovisionTime(v time.Time) *Replication { + s.ReplicationDeprovisionTime = &v + return s +} + // SetReplicationLastStopTime sets the ReplicationLastStopTime field's value. func (s *Replication) SetReplicationLastStopTime(v time.Time) *Replication { s.ReplicationLastStopTime = &v @@ -32291,7 +32665,7 @@ // // Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12” // - // Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“ + // Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“ CdcStopPosition *string `type:"string"` // The last error (failure) message generated for the replication task. @@ -33682,9 +34056,9 @@ // An optional parameter that specifies how DMS treats null values. While handling // the null value, you can use this parameter to pass a user-defined string // as null when writing to the target. For example, when target columns are - // not nullable, you can use this option to differentiate between the empty - // string value and the null value. So, if you set this parameter value to the - // empty string ("" or ''), DMS treats the empty string as the null value instead + // nullable, you can use this option to differentiate between the empty string + // value and the null value. So, if you set this parameter value to the empty + // string ("" or ''), DMS treats the empty string as the null value instead // of NULL. // // The default value is NULL. Valid values include any valid string. @@ -35869,7 +36243,7 @@ // // Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12” // - // Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12“ + // Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“ CdcStopPosition *string `type:"string"` // The Amazon Resource Name (ARN) of the replication task to be started. @@ -37109,7 +37483,7 @@ // When set to true, this operation migrates DMS subscriptions for Amazon SNS // notifications no matter what your replication instance version is. If not // set or set to false, this operation runs only when all your replication instances - // are from DMS version 3.4.6 or higher. + // are from DMS version 3.4.5 or higher. ForceMove *bool `type:"boolean"` } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/databasemigrationservice/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/databasemigrationservice/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/databasemigrationservice/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/databasemigrationservice/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -62,6 +62,54 @@ fmt.Println(result) } +// Create Data Provider +// Creates the data provider with the specified parameters. +func ExampleDatabaseMigrationService_CreateDataProvider_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.CreateDataProviderInput{ + DataProviderName: aws.String("sqlServer-dev"), + Description: aws.String("description"), + Engine: aws.String("sqlserver"), + Settings: &databasemigrationservice.DataProviderSettings{ + MicrosoftSqlServerSettings: &databasemigrationservice.MicrosoftSqlServerDataProviderSettings{ + DatabaseName: aws.String("DatabaseName"), + Port: aws.Int64(11112), + ServerName: aws.String("ServerName2"), + SslMode: aws.String("none"), + }, + }, + Tags: []*databasemigrationservice.Tag{ + { + Key: aws.String("access"), + Value: aws.String("authorizedusers"), + }, + }, + } + + result, err := svc.CreateDataProvider(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Create endpoint // Creates an endpoint using the provided settings. func ExampleDatabaseMigrationService_CreateEndpoint_shared00() { @@ -119,6 +167,124 @@ fmt.Println(result) } +// Create Instance Profile +// Creates the instance profile using the specified parameters. +func ExampleDatabaseMigrationService_CreateInstanceProfile_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.CreateInstanceProfileInput{ + Description: aws.String("Description"), + InstanceProfileName: aws.String("my-instance-profile"), + KmsKeyArn: aws.String("arn:aws:kms:us-east-1:012345678901:key/01234567-89ab-cdef-0123-456789abcdef"), + NetworkType: aws.String("DUAL"), + PubliclyAccessible: aws.Bool(true), + SubnetGroupIdentifier: aws.String("my-subnet-group"), + Tags: []*databasemigrationservice.Tag{ + { + Key: aws.String("access"), + Value: aws.String("authorizedusers"), + }, + }, + } + + result, err := svc.CreateInstanceProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Create Migration Project +// Creates the migration project with the specified parameters. +func ExampleDatabaseMigrationService_CreateMigrationProject_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.CreateMigrationProjectInput{ + Description: aws.String("description"), + InstanceProfileIdentifier: aws.String("ip-au-17"), + MigrationProjectName: aws.String("my-migration-project"), + SchemaConversionApplicationAttributes: &databasemigrationservice.SCApplicationAttributes{ + S3BucketPath: aws.String("arn:aws:s3:::mylogin-bucket"), + S3BucketRoleArn: aws.String("arn:aws:iam::012345678901:role/Admin"), + }, + SourceDataProviderDescriptors: []*databasemigrationservice.DataProviderDescriptorDefinition{ + { + DataProviderIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + SecretsManagerAccessRoleArn: aws.String("arn:aws:iam::012345678901:role/myuser-admin-access"), + SecretsManagerSecretId: aws.String("arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/example1/ALL.SOURCE.ORACLE_12-A1B2C3"), + }, + }, + Tags: []*databasemigrationservice.Tag{ + { + Key: aws.String("access"), + Value: aws.String("authorizedusers"), + }, + }, + TargetDataProviderDescriptors: []*databasemigrationservice.DataProviderDescriptorDefinition{ + { + DataProviderIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + SecretsManagerAccessRoleArn: aws.String("arn:aws:iam::012345678901:role/myuser-admin-access"), + SecretsManagerSecretId: aws.String("arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/example1/TARGET.postgresql-A1B2C3"), + }, + }, + TransformationRules: aws.String("{\"key0\":\"value0\",\"key1\":\"value1\",\"key2\":\"value2\"}"), + } + + result, err := svc.CreateMigrationProject(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Create replication instance // Creates the replication instance using the specified parameters. func ExampleDatabaseMigrationService_CreateReplicationInstance_shared00() { @@ -344,6 +510,38 @@ fmt.Println(result) } +// Delete Data Provider +// Deletes the specified data provider. +func ExampleDatabaseMigrationService_DeleteDataProvider_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DeleteDataProviderInput{ + DataProviderIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + } + + result, err := svc.DeleteDataProvider(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Delete Endpoint // Deletes the specified endpoint. All tasks associated with the endpoint must be deleted // before you can delete the endpoint. @@ -375,6 +573,70 @@ fmt.Println(result) } +// Delete Instance Profile +// Deletes the specified instance profile. +func ExampleDatabaseMigrationService_DeleteInstanceProfile_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DeleteInstanceProfileInput{ + InstanceProfileIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + } + + result, err := svc.DeleteInstanceProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Delete Migration Project +// Deletes the specified migration project. +func ExampleDatabaseMigrationService_DeleteMigrationProject_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DeleteMigrationProjectInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + } + + result, err := svc.DeleteMigrationProject(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Delete Replication Instance // Deletes the specified replication instance. You must delete any migration tasks that // are associated with the replication instance before you can delete it. @@ -570,6 +832,74 @@ fmt.Println(result) } +// Describe Conversion Configuration +// Returns configuration parameters for a schema conversion project. +func ExampleDatabaseMigrationService_DescribeConversionConfiguration_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeConversionConfigurationInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + } + + result, err := svc.DescribeConversionConfiguration(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Data Providers +// + +func ExampleDatabaseMigrationService_DescribeDataProviders_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeDataProvidersInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("data-provider-identifier"), + Values: []*string{ + aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + }, + }, + }, + Marker: aws.String("EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + MaxRecords: aws.Int64(20), + } + + result, err := svc.DescribeDataProviders(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Describe endpoint types // Returns information about the type of endpoints available. func ExampleDatabaseMigrationService_DescribeEndpointTypes_shared00() { @@ -644,6 +974,312 @@ fmt.Println(result) } +// Describe Extension Pack Associations +// Returns a paginated list of extension pack associations for the specified migration +// project. +func ExampleDatabaseMigrationService_DescribeExtensionPackAssociations_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeExtensionPackAssociationsInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("instance-profile-identifier"), + Values: []*string{ + aws.String("arn:aws:dms:us-east-1:012345678901:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + }, + }, + }, + Marker: aws.String("0123456789abcdefghijklmnopqrs"), + MaxRecords: aws.Int64(20), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + } + + result, err := svc.DescribeExtensionPackAssociations(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Instance Profiles +// Returns a paginated list of instance profiles for your account in the current region. +func ExampleDatabaseMigrationService_DescribeInstanceProfiles_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeInstanceProfilesInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("instance-profile-identifier"), + Values: []*string{ + aws.String("arn:aws:dms:us-east-1:012345678901:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + }, + }, + }, + Marker: aws.String("0123456789abcdefghijklmnopqrs"), + MaxRecords: aws.Int64(20), + } + + result, err := svc.DescribeInstanceProfiles(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Metadata Model Assessments +// Returns a paginated list of metadata model assessments for your account in the current +// region. +func ExampleDatabaseMigrationService_DescribeMetadataModelAssessments_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeMetadataModelAssessmentsInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("my-migration-project"), + Values: []*string{ + aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + }, + }, + }, + Marker: aws.String("0123456789abcdefghijklmnopqrs"), + MaxRecords: aws.Int64(20), + MigrationProjectIdentifier: aws.String(""), + } + + result, err := svc.DescribeMetadataModelAssessments(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Metadata Model Conversions +// Returns a paginated list of metadata model conversions for a migration project. +func ExampleDatabaseMigrationService_DescribeMetadataModelConversions_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeMetadataModelConversionsInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("request-id"), + Values: []*string{ + aws.String("01234567-89ab-cdef-0123-456789abcdef"), + }, + }, + }, + Marker: aws.String("EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ123456"), + MaxRecords: aws.Int64(123), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + } + + result, err := svc.DescribeMetadataModelConversions(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Metadata Model Exports As Script +// Returns a paginated list of metadata model exports. +func ExampleDatabaseMigrationService_DescribeMetadataModelExportsAsScript_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeMetadataModelExportsAsScriptInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("request-id"), + Values: []*string{ + aws.String("01234567-89ab-cdef-0123-456789abcdef"), + }, + }, + }, + Marker: aws.String("0123456789abcdefghijklmnopqrs"), + MaxRecords: aws.Int64(20), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + } + + result, err := svc.DescribeMetadataModelExportsAsScript(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Metadata Model Exports To Target +// Returns a paginated list of metadata model exports. +func ExampleDatabaseMigrationService_DescribeMetadataModelExportsToTarget_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeMetadataModelExportsToTargetInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("request-id"), + Values: []*string{ + aws.String("01234567-89ab-cdef-0123-456789abcdef"), + }, + }, + }, + Marker: aws.String("0123456789abcdefghijklmnopqrs"), + MaxRecords: aws.Int64(20), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + } + + result, err := svc.DescribeMetadataModelExportsToTarget(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Metadata Model Imports +// Returns a paginated list of metadata model imports. +func ExampleDatabaseMigrationService_DescribeMetadataModelImports_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeMetadataModelImportsInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("request-id"), + Values: []*string{ + aws.String("01234567-89ab-cdef-0123-456789abcdef"), + }, + }, + }, + Marker: aws.String("0123456789abcdefghijklmnopqrs"), + MaxRecords: aws.Int64(20), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + } + + result, err := svc.DescribeMetadataModelImports(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Describe Migration Projects +// Returns a paginated list of migration projects for your account in the current region. +func ExampleDatabaseMigrationService_DescribeMigrationProjects_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.DescribeMigrationProjectsInput{ + Filters: []*databasemigrationservice.Filter{ + { + Name: aws.String("migration-project-identifier"), + Values: []*string{ + aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ12345678901"), + }, + }, + }, + Marker: aws.String("EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ123456"), + MaxRecords: aws.Int64(20), + } + + result, err := svc.DescribeMigrationProjects(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Describe orderable replication instances // Returns information about the replication instance types that can be created in the // specified region. @@ -881,6 +1517,40 @@ fmt.Println(result) } +// Export Metadata Model Assessment +// Saves a copy of a database migration assessment report to your S3 bucket. DMS can +// save your assessment report as a comma-separated value (CSV) or a PDF file. +func ExampleDatabaseMigrationService_ExportMetadataModelAssessment_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.ExportMetadataModelAssessmentInput{ + AssessmentReportTypes: []*string{ + aws.String("pdf"), + }, + FileName: aws.String("file"), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + SelectionRules: aws.String("{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-a1b2c3d4e5f6.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}"), + } + + result, err := svc.ExportMetadataModelAssessment(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Import certificate // Uploads the specified certificate. func ExampleDatabaseMigrationService_ImportCertificate_shared00() { @@ -942,6 +1612,80 @@ fmt.Println(result) } +// Modify Conversion Configuration +// Modifies the specified schema conversion configuration using the provided parameters. +func ExampleDatabaseMigrationService_ModifyConversionConfiguration_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.ModifyConversionConfigurationInput{ + ConversionConfiguration: aws.String("{\"Common project settings\":{\"ShowSeverityLevelInSql\":\"CRITICAL\"},\"ORACLE_TO_POSTGRESQL\" : {\"ToTimeZone\":false,\"LastDayBuiltinFunctionOracle\":false, \"NextDayBuiltinFunctionOracle\":false,\"ConvertProceduresToFunction\":false,\"NvlBuiltinFunctionOracle\":false,\"DbmsAssertBuiltinFunctionOracle\":false}}"), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + } + + result, err := svc.ModifyConversionConfiguration(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Modify Data Provider +// Modifies the specified data provider using the provided settings. +func ExampleDatabaseMigrationService_ModifyDataProvider_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.ModifyDataProviderInput{ + DataProviderIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + DataProviderName: aws.String("new-name"), + Description: aws.String("description"), + Engine: aws.String("sqlserver"), + Settings: &databasemigrationservice.DataProviderSettings{ + MicrosoftSqlServerSettings: &databasemigrationservice.MicrosoftSqlServerDataProviderSettings{ + DatabaseName: aws.String("DatabaseName"), + Port: aws.Int64(11112), + ServerName: aws.String("ServerName2"), + SslMode: aws.String("none"), + }, + }, + } + + result, err := svc.ModifyDataProvider(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Modify endpoint // Modifies the specified endpoint. func ExampleDatabaseMigrationService_ModifyEndpoint_shared00() { @@ -989,6 +1733,108 @@ fmt.Println(result) } +// Modify Instance Profile +// Modifies the specified instance profile using the provided parameters. +func ExampleDatabaseMigrationService_ModifyInstanceProfile_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.ModifyInstanceProfileInput{ + AvailabilityZone: aws.String(""), + Description: aws.String(""), + InstanceProfileIdentifier: aws.String(""), + InstanceProfileName: aws.String(""), + KmsKeyArn: aws.String(""), + NetworkType: aws.String(""), + PubliclyAccessible: aws.Bool(true), + SubnetGroupIdentifier: aws.String(""), + } + + result, err := svc.ModifyInstanceProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Modify Migration Project +// Modifies the specified migration project using the provided parameters. +func ExampleDatabaseMigrationService_ModifyMigrationProject_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.ModifyMigrationProjectInput{ + Description: aws.String("description"), + InstanceProfileIdentifier: aws.String("my-instance-profile"), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + MigrationProjectName: aws.String("new-name"), + SchemaConversionApplicationAttributes: &databasemigrationservice.SCApplicationAttributes{ + S3BucketPath: aws.String("arn:aws:s3:::myuser-bucket"), + S3BucketRoleArn: aws.String("arn:aws:iam::012345678901:role/Admin"), + }, + SourceDataProviderDescriptors: []*databasemigrationservice.DataProviderDescriptorDefinition{ + { + DataProviderIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + SecretsManagerAccessRoleArn: aws.String("arn:aws:iam::012345678901:role/myuser-admin-access"), + SecretsManagerSecretId: aws.String("arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/myuser/ALL.SOURCE.ORACLE_12-A1B2C3"), + }, + }, + TargetDataProviderDescriptors: []*databasemigrationservice.DataProviderDescriptorDefinition{ + { + DataProviderIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + SecretsManagerAccessRoleArn: aws.String("arn:aws:iam::012345678901:role/myuser-admin-access"), + SecretsManagerSecretId: aws.String("arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/myuser/TARGET.postgresql-A1B2C3"), + }, + }, + } + + result, err := svc.ModifyMigrationProject(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // Modify replication instance // Modifies the replication instance to apply new settings. You can change one or more // parameters by specifying these parameters and the new values in the request. Some @@ -1133,6 +1979,272 @@ default: fmt.Println(aerr.Error()) } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Start Extension Pack Association +// Applies the extension pack to your target database. +func ExampleDatabaseMigrationService_StartExtensionPackAssociation_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.StartExtensionPackAssociationInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + } + + result, err := svc.StartExtensionPackAssociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Start Metadata Model Assessment +// Creates a database migration assessment report by assessing the migration complexity +// for +// +// your source database. +func ExampleDatabaseMigrationService_StartMetadataModelAssessment_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.StartMetadataModelAssessmentInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + SelectionRules: aws.String("{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}"), + } + + result, err := svc.StartMetadataModelAssessment(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Start Metadata Model Conversion +// Converts your source database objects to a format compatible with the target database. +func ExampleDatabaseMigrationService_StartMetadataModelConversion_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.StartMetadataModelConversionInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + SelectionRules: aws.String("{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}"), + } + + result, err := svc.StartMetadataModelConversion(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Start Metadata Model Export As Script +// Saves your converted code to a file as a SQL script, and stores this file on your +// S3 bucket. +func ExampleDatabaseMigrationService_StartMetadataModelExportAsScript_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.StartMetadataModelExportAsScriptInput{ + FileName: aws.String("FILE"), + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + Origin: aws.String("SOURCE"), + SelectionRules: aws.String("{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}"), + } + + result, err := svc.StartMetadataModelExportAsScript(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Start Metadata Model Export To Target +// Applies converted database objects to your target database. +func ExampleDatabaseMigrationService_StartMetadataModelExportToTarget_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.StartMetadataModelExportToTargetInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345"), + OverwriteExtensionPack: aws.Bool(true), + SelectionRules: aws.String("{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-a1b2c3d4e5f6.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}"), + } + + result, err := svc.StartMetadataModelExportToTarget(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Start Metadata Model Import +// Loads the metadata for all the dependent database objects of the parent object. +func ExampleDatabaseMigrationService_StartMetadataModelImport_shared00() { + svc := databasemigrationservice.New(session.New()) + input := &databasemigrationservice.StartMetadataModelImportInput{ + MigrationProjectIdentifier: aws.String("arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012"), + Origin: aws.String("SOURCE"), + Refresh: aws.Bool(false), + SelectionRules: aws.String("{\"rules\": [{\"rule-type\": \"selection\",\"rule-id\": \"1\",\"rule-name\": \"1\",\"object-locator\": {\"server-name\": \"aurora-pg.cluster-0a1b2c3d4e5f.us-east-1.rds.amazonaws.com\", \"schema-name\": \"schema1\", \"table-name\": \"Cities\"},\"rule-action\": \"explicit\"} ]}"), + } + + result, err := svc.StartMetadataModelImport(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case databasemigrationservice.ErrCodeAccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeAccessDeniedFault, aerr.Error()) + case databasemigrationservice.ErrCodeInvalidResourceStateFault: + fmt.Println(databasemigrationservice.ErrCodeInvalidResourceStateFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceAlreadyExistsFault: + fmt.Println(databasemigrationservice.ErrCodeResourceAlreadyExistsFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault: + fmt.Println(databasemigrationservice.ErrCodeKMSKeyNotAccessibleFault, aerr.Error()) + case databasemigrationservice.ErrCodeResourceQuotaExceededFault: + fmt.Println(databasemigrationservice.ErrCodeResourceQuotaExceededFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3ResourceNotFoundFault: + fmt.Println(databasemigrationservice.ErrCodeS3ResourceNotFoundFault, aerr.Error()) + case databasemigrationservice.ErrCodeS3AccessDeniedFault: + fmt.Println(databasemigrationservice.ErrCodeS3AccessDeniedFault, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } } else { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/dataexchange/api.go golang-github-aws-aws-sdk-go-1.48.14/service/dataexchange/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/dataexchange/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/dataexchange/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2283,6 +2283,102 @@ return out, req.Send() } +const opSendDataSetNotification = "SendDataSetNotification" + +// SendDataSetNotificationRequest generates a "aws/request.Request" representing the +// client's request for the SendDataSetNotification 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 SendDataSetNotification for more information on using the SendDataSetNotification +// 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 SendDataSetNotificationRequest method. +// req, resp := client.SendDataSetNotificationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/SendDataSetNotification +func (c *DataExchange) SendDataSetNotificationRequest(input *SendDataSetNotificationInput) (req *request.Request, output *SendDataSetNotificationOutput) { + op := &request.Operation{ + Name: opSendDataSetNotification, + HTTPMethod: "POST", + HTTPPath: "/v1/data-sets/{DataSetId}/notification", + } + + if input == nil { + input = &SendDataSetNotificationInput{} + } + + output = &SendDataSetNotificationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// SendDataSetNotification API operation for AWS Data Exchange. +// +// The type of event associated with the data set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Data Exchange's +// API operation SendDataSetNotification for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource couldn't be found. +// +// - ThrottlingException +// The limit on the number of requests per second was exceeded. +// +// - AccessDeniedException +// Access to the resource is denied. +// +// - ConflictException +// The request couldn't be completed because it conflicted with the current +// state of the resource. +// +// - ValidationException +// The request was invalid. +// +// - InternalServerException +// An exception occurred with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/SendDataSetNotification +func (c *DataExchange) SendDataSetNotification(input *SendDataSetNotificationInput) (*SendDataSetNotificationOutput, error) { + req, out := c.SendDataSetNotificationRequest(input) + return out, req.Send() +} + +// SendDataSetNotificationWithContext is the same as SendDataSetNotification with the addition of +// the ability to pass a context and additional request options. +// +// See SendDataSetNotification 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 *DataExchange) SendDataSetNotificationWithContext(ctx aws.Context, input *SendDataSetNotificationInput, opts ...request.Option) (*SendDataSetNotificationOutput, error) { + req, out := c.SendDataSetNotificationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartJob = "StartJob" // StartJobRequest generates a "aws/request.Request" representing the @@ -4728,6 +4824,39 @@ return s } +// Extra details specific to a data update type notification. +type DataUpdateRequestDetails struct { + _ struct{} `type:"structure"` + + // A datetime in the past when the data was updated. This typically means that + // the underlying resource supporting the data set was updated. + DataUpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataUpdateRequestDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataUpdateRequestDetails) GoString() string { + return s.String() +} + +// SetDataUpdatedAt sets the DataUpdatedAt field's value. +func (s *DataUpdateRequestDetails) SetDataUpdatedAt(v time.Time) *DataUpdateRequestDetails { + s.DataUpdatedAt = &v + return s +} + // The LF-tag policy for database resources. type DatabaseLFTagPolicy struct { _ struct{} `type:"structure"` @@ -5168,6 +5297,53 @@ return s.String() } +// Extra details specific to a deprecation type notification. +type DeprecationRequestDetails struct { + _ struct{} `type:"structure"` + + // A datetime in the future when the data set will be deprecated. + // + // DeprecationAt is a required field + DeprecationAt *time.Time `type:"timestamp" timestampFormat:"iso8601" 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 DeprecationRequestDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeprecationRequestDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeprecationRequestDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeprecationRequestDetails"} + if s.DeprecationAt == nil { + invalidParams.Add(request.NewErrParamRequired("DeprecationAt")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeprecationAt sets the DeprecationAt field's value. +func (s *DeprecationRequestDetails) SetDeprecationAt(v time.Time) *DeprecationRequestDetails { + s.DeprecationAt = &v + return s +} + // Information about the job error. type Details struct { _ struct{} `type:"structure"` @@ -8296,6 +8472,47 @@ return s } +// Extra details specific to the affected scope in this LF data set. +type LakeFormationTagPolicyDetails struct { + _ struct{} `type:"structure"` + + // The underlying Glue database that the notification is referring to. + Database *string `type:"string"` + + // The underlying Glue table that the notification is referring to. + Table *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 LakeFormationTagPolicyDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationTagPolicyDetails) GoString() string { + return s.String() +} + +// SetDatabase sets the Database field's value. +func (s *LakeFormationTagPolicyDetails) SetDatabase(v string) *LakeFormationTagPolicyDetails { + s.Database = &v + return s +} + +// SetTable sets the Table field's value. +func (s *LakeFormationTagPolicyDetails) SetTable(v string) *LakeFormationTagPolicyDetails { + s.Table = &v + return s +} + type ListDataSetRevisionsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -8939,14 +9156,82 @@ return s } +// Extra details specific to this notification. +type NotificationDetails struct { + _ struct{} `type:"structure"` + + // Extra details specific to a data update type notification. + DataUpdate *DataUpdateRequestDetails `type:"structure"` + + // Extra details specific to a deprecation type notification. + Deprecation *DeprecationRequestDetails `type:"structure"` + + // Extra details specific to a schema change type notification. + SchemaChange *SchemaChangeRequestDetails `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 NotificationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotificationDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NotificationDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NotificationDetails"} + if s.Deprecation != nil { + if err := s.Deprecation.Validate(); err != nil { + invalidParams.AddNested("Deprecation", err.(request.ErrInvalidParams)) + } + } + if s.SchemaChange != nil { + if err := s.SchemaChange.Validate(); err != nil { + invalidParams.AddNested("SchemaChange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataUpdate sets the DataUpdate field's value. +func (s *NotificationDetails) SetDataUpdate(v *DataUpdateRequestDetails) *NotificationDetails { + s.DataUpdate = v + return s +} + +// SetDeprecation sets the Deprecation field's value. +func (s *NotificationDetails) SetDeprecation(v *DeprecationRequestDetails) *NotificationDetails { + s.Deprecation = v + return s +} + +// SetSchemaChange sets the SchemaChange field's value. +func (s *NotificationDetails) SetSchemaChange(v *SchemaChangeRequestDetails) *NotificationDetails { + s.SchemaChange = v + return s +} + // Details about the origin of the data set. type OriginDetails struct { _ struct{} `type:"structure"` // The product ID of the origin of the data set. - // - // ProductId is a required field - ProductId *string `type:"string" required:"true"` + ProductId *string `type:"string"` } // String returns the string representation. @@ -9054,6 +9339,105 @@ return s } +// Extra details specific to the affected scope in this Redshift data set. +type RedshiftDataShareDetails struct { + _ struct{} `type:"structure"` + + // The ARN of the underlying Redshift data share that is being affected by this + // notification. + // + // Arn is a required field + Arn *string `type:"string" required:"true"` + + // The database name in the Redshift data share that is being affected by this + // notification. + // + // Database is a required field + Database *string `type:"string" required:"true"` + + // A function name in the Redshift database that is being affected by this notification. + Function *string `type:"string"` + + // A schema name in the Redshift database that is being affected by this notification. + Schema *string `type:"string"` + + // A table name in the Redshift database that is being affected by this notification. + Table *string `type:"string"` + + // A view name in the Redshift database that is being affected by this notification. + View *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 RedshiftDataShareDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftDataShareDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftDataShareDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftDataShareDetails"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *RedshiftDataShareDetails) SetArn(v string) *RedshiftDataShareDetails { + s.Arn = &v + return s +} + +// SetDatabase sets the Database field's value. +func (s *RedshiftDataShareDetails) SetDatabase(v string) *RedshiftDataShareDetails { + s.Database = &v + return s +} + +// SetFunction sets the Function field's value. +func (s *RedshiftDataShareDetails) SetFunction(v string) *RedshiftDataShareDetails { + s.Function = &v + return s +} + +// SetSchema sets the Schema field's value. +func (s *RedshiftDataShareDetails) SetSchema(v string) *RedshiftDataShareDetails { + s.Schema = &v + return s +} + +// SetTable sets the Table field's value. +func (s *RedshiftDataShareDetails) SetTable(v string) *RedshiftDataShareDetails { + s.Table = &v + return s +} + +// SetView sets the View field's value. +func (s *RedshiftDataShareDetails) SetView(v string) *RedshiftDataShareDetails { + s.View = &v + return s +} + // The details for the request. type RequestDetails struct { _ struct{} `type:"structure"` @@ -10034,6 +10418,50 @@ return s } +// Extra details specific to the affected scope in this S3 Data Access data +// set. +type S3DataAccessDetails struct { + _ struct{} `type:"structure"` + + // A list of the key prefixes affected by this notification. This can have up + // to 50 entries. + KeyPrefixes []*string `type:"list"` + + // A list of the keys affected by this notification. This can have up to 50 + // entries. + Keys []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3DataAccessDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3DataAccessDetails) GoString() string { + return s.String() +} + +// SetKeyPrefixes sets the KeyPrefixes field's value. +func (s *S3DataAccessDetails) SetKeyPrefixes(v []*string) *S3DataAccessDetails { + s.KeyPrefixes = v + return s +} + +// SetKeys sets the Keys field's value. +func (s *S3DataAccessDetails) SetKeys(v []*string) *S3DataAccessDetails { + s.Keys = v + return s +} + // The Amazon S3 object that is the asset. type S3SnapshotAsset struct { _ struct{} `type:"structure"` @@ -10068,6 +10496,215 @@ return s } +// Object encompassing information about a schema change to a single, particular +// field, a notification can have up to 100 of these. +type SchemaChangeDetails struct { + _ struct{} `type:"structure"` + + // Description of what's changing about this field. This value can be up to + // 512 characters long. + Description *string `type:"string"` + + // Name of the changing field. This value can be up to 255 characters long. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Is the field being added, removed, or modified? + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"SchemaChangeType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SchemaChangeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SchemaChangeDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SchemaChangeDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SchemaChangeDetails"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *SchemaChangeDetails) SetDescription(v string) *SchemaChangeDetails { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *SchemaChangeDetails) SetName(v string) *SchemaChangeDetails { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *SchemaChangeDetails) SetType(v string) *SchemaChangeDetails { + s.Type = &v + return s +} + +// Extra details specific to this schema change type notification. +type SchemaChangeRequestDetails struct { + _ struct{} `type:"structure"` + + // List of schema changes happening in the scope of this notification. This + // can have up to 100 entries. + Changes []*SchemaChangeDetails `type:"list"` + + // A date in the future when the schema change is taking effect. + // + // SchemaChangeAt is a required field + SchemaChangeAt *time.Time `type:"timestamp" timestampFormat:"iso8601" 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 SchemaChangeRequestDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SchemaChangeRequestDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SchemaChangeRequestDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SchemaChangeRequestDetails"} + if s.SchemaChangeAt == nil { + invalidParams.Add(request.NewErrParamRequired("SchemaChangeAt")) + } + if s.Changes != nil { + for i, v := range s.Changes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Changes", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChanges sets the Changes field's value. +func (s *SchemaChangeRequestDetails) SetChanges(v []*SchemaChangeDetails) *SchemaChangeRequestDetails { + s.Changes = v + return s +} + +// SetSchemaChangeAt sets the SchemaChangeAt field's value. +func (s *SchemaChangeRequestDetails) SetSchemaChangeAt(v time.Time) *SchemaChangeRequestDetails { + s.SchemaChangeAt = &v + return s +} + +// Details about the scope of the notifications such as the affected resources. +type ScopeDetails struct { + _ struct{} `type:"structure"` + + // Underlying LF resources that will be affected by this notification. + LakeFormationTagPolicies []*LakeFormationTagPolicyDetails `type:"list"` + + // Underlying Redshift resources that will be affected by this notification. + RedshiftDataShares []*RedshiftDataShareDetails `type:"list"` + + // Underlying S3 resources that will be affected by this notification. + S3DataAccesses []*S3DataAccessDetails `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 ScopeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScopeDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ScopeDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ScopeDetails"} + if s.RedshiftDataShares != nil { + for i, v := range s.RedshiftDataShares { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RedshiftDataShares", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLakeFormationTagPolicies sets the LakeFormationTagPolicies field's value. +func (s *ScopeDetails) SetLakeFormationTagPolicies(v []*LakeFormationTagPolicyDetails) *ScopeDetails { + s.LakeFormationTagPolicies = v + return s +} + +// SetRedshiftDataShares sets the RedshiftDataShares field's value. +func (s *ScopeDetails) SetRedshiftDataShares(v []*RedshiftDataShareDetails) *ScopeDetails { + s.RedshiftDataShares = v + return s +} + +// SetS3DataAccesses sets the S3DataAccesses field's value. +func (s *ScopeDetails) SetS3DataAccesses(v []*S3DataAccessDetails) *ScopeDetails { + s.S3DataAccesses = v + return s +} + type SendApiAssetInput struct { _ struct{} `type:"structure" payload:"Body"` @@ -10236,6 +10873,143 @@ return s } +type SendDataSetNotificationInput struct { + _ struct{} `type:"structure"` + + // Idempotency key for the notification, this key allows us to deduplicate notifications + // that are sent in quick succession erroneously. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Free-form text field for providers to add information about their notifications. + Comment *string `type:"string"` + + // Affected data set of the notification. + // + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + + // Extra details specific to this notification type. + Details *NotificationDetails `type:"structure"` + + // Affected scope of this notification such as the underlying resources affected + // by the notification event. + Scope *ScopeDetails `type:"structure"` + + // The type of the notification. Describing the kind of event the notification + // is alerting you to. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"NotificationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDataSetNotificationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDataSetNotificationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SendDataSetNotificationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SendDataSetNotificationInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Details != nil { + if err := s.Details.Validate(); err != nil { + invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) + } + } + if s.Scope != nil { + if err := s.Scope.Validate(); err != nil { + invalidParams.AddNested("Scope", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *SendDataSetNotificationInput) SetClientToken(v string) *SendDataSetNotificationInput { + s.ClientToken = &v + return s +} + +// SetComment sets the Comment field's value. +func (s *SendDataSetNotificationInput) SetComment(v string) *SendDataSetNotificationInput { + s.Comment = &v + return s +} + +// SetDataSetId sets the DataSetId field's value. +func (s *SendDataSetNotificationInput) SetDataSetId(v string) *SendDataSetNotificationInput { + s.DataSetId = &v + return s +} + +// SetDetails sets the Details field's value. +func (s *SendDataSetNotificationInput) SetDetails(v *NotificationDetails) *SendDataSetNotificationInput { + s.Details = v + return s +} + +// SetScope sets the Scope field's value. +func (s *SendDataSetNotificationInput) SetScope(v *ScopeDetails) *SendDataSetNotificationInput { + s.Scope = v + return s +} + +// SetType sets the Type field's value. +func (s *SendDataSetNotificationInput) SetType(v string) *SendDataSetNotificationInput { + s.Type = &v + return s +} + +type SendDataSetNotificationOutput 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 SendDataSetNotificationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDataSetNotificationOutput) GoString() string { + return s.String() +} + // The request has exceeded the quotas imposed by the service. type ServiceLimitExceededException struct { _ struct{} `type:"structure"` @@ -11853,6 +12627,30 @@ } const ( + // NotificationTypeDataDelay is a NotificationType enum value + NotificationTypeDataDelay = "DATA_DELAY" + + // NotificationTypeDataUpdate is a NotificationType enum value + NotificationTypeDataUpdate = "DATA_UPDATE" + + // NotificationTypeDeprecation is a NotificationType enum value + NotificationTypeDeprecation = "DEPRECATION" + + // NotificationTypeSchemaChange is a NotificationType enum value + NotificationTypeSchemaChange = "SCHEMA_CHANGE" +) + +// NotificationType_Values returns all elements of the NotificationType enum +func NotificationType_Values() []string { + return []string{ + NotificationTypeDataDelay, + NotificationTypeDataUpdate, + NotificationTypeDeprecation, + NotificationTypeSchemaChange, + } +} + +const ( // OriginOwned is a Origin enum value OriginOwned = "OWNED" @@ -11908,6 +12706,26 @@ } } +const ( + // SchemaChangeTypeAdd is a SchemaChangeType enum value + SchemaChangeTypeAdd = "ADD" + + // SchemaChangeTypeRemove is a SchemaChangeType enum value + SchemaChangeTypeRemove = "REMOVE" + + // SchemaChangeTypeModify is a SchemaChangeType enum value + SchemaChangeTypeModify = "MODIFY" +) + +// SchemaChangeType_Values returns all elements of the SchemaChangeType enum +func SchemaChangeType_Values() []string { + return []string{ + SchemaChangeTypeAdd, + SchemaChangeTypeRemove, + SchemaChangeTypeModify, + } +} + const ( // ServerSideEncryptionTypesAwsKms is a ServerSideEncryptionTypes enum value ServerSideEncryptionTypesAwsKms = "aws:kms" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/dataexchange/dataexchangeiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/dataexchange/dataexchangeiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/dataexchange/dataexchangeiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/dataexchange/dataexchangeiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -163,6 +163,10 @@ SendApiAssetWithContext(aws.Context, *dataexchange.SendApiAssetInput, ...request.Option) (*dataexchange.SendApiAssetOutput, error) SendApiAssetRequest(*dataexchange.SendApiAssetInput) (*request.Request, *dataexchange.SendApiAssetOutput) + SendDataSetNotification(*dataexchange.SendDataSetNotificationInput) (*dataexchange.SendDataSetNotificationOutput, error) + SendDataSetNotificationWithContext(aws.Context, *dataexchange.SendDataSetNotificationInput, ...request.Option) (*dataexchange.SendDataSetNotificationOutput, error) + SendDataSetNotificationRequest(*dataexchange.SendDataSetNotificationInput) (*request.Request, *dataexchange.SendDataSetNotificationOutput) + StartJob(*dataexchange.StartJobInput) (*dataexchange.StartJobOutput, error) StartJobWithContext(aws.Context, *dataexchange.StartJobInput, ...request.Option) (*dataexchange.StartJobOutput, error) StartJobRequest(*dataexchange.StartJobInput) (*request.Request, *dataexchange.StartJobOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/datasync/api.go golang-github-aws-aws-sdk-go-1.48.14/service/datasync/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/datasync/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/datasync/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -582,8 +582,10 @@ // CreateLocationFsxOntap API operation for AWS DataSync. // // Creates an endpoint for an Amazon FSx for NetApp ONTAP file system that DataSync -// can access for a transfer. For more information, see Creating a location -// for FSx for ONTAP (https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html). +// can use for a data transfer. +// +// Before you begin, make sure that you understand how DataSync accesses an +// FSx for ONTAP file system (https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html#create-ontap-location-access). // // 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 @@ -752,7 +754,11 @@ // CreateLocationFsxWindows API operation for AWS DataSync. // -// Creates an endpoint for an Amazon FSx for Windows File Server file system. +// Creates an endpoint for an Amazon FSx for Windows File Server file system +// that DataSync can use for a data transfer. +// +// Before you begin, make sure that you understand how DataSync accesses an +// FSx for Windows File Server (https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-location-access). // // 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 @@ -1360,10 +1366,12 @@ // DeleteAgent API operation for AWS DataSync. // -// Deletes an agent. To specify which agent to delete, use the Amazon Resource -// Name (ARN) of the agent in your request. The operation disassociates the -// agent from your Amazon Web Services account. However, it doesn't delete the -// agent virtual machine (VM) from your on-premises environment. +// Removes an DataSync agent resource from your Amazon Web Services account. +// +// Keep in mind that this operation (which can't be undone) doesn't remove the +// agent's virtual machine (VM) or Amazon EC2 instance from your storage environment. +// For next steps, you can delete the VM or instance from your storage environment +// or reuse it to activate a new agent (https://docs.aws.amazon.com/datasync/latest/userguide/activate-agent.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 @@ -1611,8 +1619,8 @@ // DescribeAgent API operation for AWS DataSync. // -// Returns metadata about an DataSync agent, such as its name, endpoint type, -// and status. +// Returns information about an DataSync agent, such as its name, service endpoint +// type, and status. // // 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 @@ -4842,7 +4850,7 @@ // UpdateAgent API operation for AWS DataSync. // -// Updates the name of an agent. +// Updates the name of an DataSync agent. // // 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 @@ -5350,9 +5358,8 @@ // UpdateLocationSmb API operation for AWS DataSync. // -// Updates some of the parameters of a previously created location for Server -// Message Block (SMB) file system access. For information about creating an -// SMB location, see Creating a location for SMB (https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html). +// Updates some of the parameters of a Server Message Block (SMB) file server +// location that you can use for DataSync transfers. // // 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 @@ -5856,8 +5863,17 @@ // The name of an agent. Name *string `min:"1" type:"string"` - // The status of an agent. For more information, see DataSync agent statuses - // (https://docs.aws.amazon.com/datasync/latest/userguide/understand-agent-statuses.html). + // The platform-related details about the agent, such as the version number. + Platform *Platform `type:"structure"` + + // The status of an agent. + // + // * If the status is ONLINE, the agent is configured properly and ready + // to use. + // + // * If the status is OFFLINE, the agent has been out of contact with DataSync + // for five minutes or longer. This can happen for a few reasons. For more + // information, see What do I do if my agent is offline? (https://docs.aws.amazon.com/datasync/latest/userguide/troubleshooting-datasync-agents.html#troubleshoot-agent-offline) Status *string `type:"string" enum:"AgentStatus"` } @@ -5891,6 +5907,12 @@ return s } +// SetPlatform sets the Platform field's value. +func (s *AgentListEntry) SetPlatform(v *Platform) *AgentListEntry { + s.Platform = v + return s +} + // SetStatus sets the Status field's value. func (s *AgentListEntry) SetStatus(v string) *AgentListEntry { s.Status = &v @@ -7045,6 +7067,12 @@ // Specifies the name of the Windows domain that the FSx for Windows File Server // belongs to. + // + // If you have multiple domains in your environment, configuring this parameter + // makes sure that DataSync connects to the right file server. + // + // For more information, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions) + // for FSx for Windows File Server locations. Domain *string `type:"string"` // Specifies the Amazon Resource Name (ARN) for the FSx for Windows File Server @@ -7056,6 +7084,9 @@ // Specifies the password of the user who has the permissions to access files // and folders in the file system. // + // For more information, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions) + // for FSx for Windows File Server locations. + // // Password is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateLocationFsxWindowsInput's // String and GoString methods. @@ -7090,8 +7121,9 @@ // Specifies the user who has the permissions to access files, folders, and // metadata in your file system. // - // For information about choosing a user with sufficient permissions, see Required - // permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions). + // For information about choosing a user with the right level of access for + // your transfer, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions) + // for FSx for Windows File Server locations. // // User is a required field User *string `type:"string" required:"true"` @@ -7646,7 +7678,7 @@ // Specifies the access key (for example, a user name) if credentials are required // to authenticate with the object storage server. - AccessKey *string `min:"1" type:"string"` + AccessKey *string `type:"string"` // Specifies the Amazon Resource Names (ARNs) of the DataSync agents that can // securely connect with your location. @@ -7665,7 +7697,7 @@ // SecretKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateLocationObjectStorageInput's // String and GoString methods. - SecretKey *string `min:"1" type:"string" sensitive:"true"` + SecretKey *string `type:"string" sensitive:"true"` // Specifies a file with the certificates that are used to sign the object storage // server's certificate (for example, file:///home/user/.ssh/storage_sys_certificate.pem). @@ -7730,9 +7762,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLocationObjectStorageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLocationObjectStorageInput"} - if s.AccessKey != nil && len(*s.AccessKey) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AccessKey", 1)) - } if s.AgentArns == nil { invalidParams.Add(request.NewErrParamRequired("AgentArns")) } @@ -7745,9 +7774,6 @@ if s.BucketName != nil && len(*s.BucketName) < 3 { invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) } - if s.SecretKey != nil && len(*s.SecretKey) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SecretKey", 1)) - } if s.ServerHostname == nil { invalidParams.Add(request.NewErrParamRequired("ServerHostname")) } @@ -8041,6 +8067,9 @@ // Specifies the Windows domain name that your SMB file server belongs to. // + // If you have multiple domains in your environment, configuring this parameter + // makes sure that DataSync connects to the right file server. + // // For more information, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html#configuring-smb-permissions) // for SMB locations. Domain *string `type:"string"` @@ -8733,7 +8762,8 @@ type DescribeAgentInput struct { _ struct{} `type:"structure"` - // Specifies the Amazon Resource Name (ARN) of the DataSync agent to describe. + // Specifies the Amazon Resource Name (ARN) of the DataSync agent that you want + // information about. // // AgentArn is a required field AgentArn *string `type:"string" required:"true"` @@ -8783,27 +8813,34 @@ // The ARN of the agent. AgentArn *string `type:"string"` - // The time that the agent was activated (that is, created in your account). + // The time that the agent was activated (https://docs.aws.amazon.com/datasync/latest/userguide/activate-agent.html). CreationTime *time.Time `type:"timestamp"` - // The type of endpoint that your agent is connected to. If the endpoint is - // a VPC endpoint, the agent is not accessible over the public internet. + // The type of service endpoint (https://docs.aws.amazon.com/datasync/latest/userguide/choose-service-endpoint.html) + // that your agent is connected to. EndpointType *string `type:"string" enum:"EndpointType"` - // The time that the agent last connected to DataSync. + // The last time that the agent was communicating with the DataSync service. LastConnectionTime *time.Time `type:"timestamp"` // The name of the agent. Name *string `min:"1" type:"string"` - // The subnet and the security group that DataSync used to access a VPC endpoint. + // The platform-related details about the agent, such as the version number. + Platform *Platform `type:"structure"` + + // The network configuration that the agent uses when connecting to a VPC service + // endpoint (https://docs.aws.amazon.com/datasync/latest/userguide/choose-service-endpoint.html#choose-service-endpoint-vpc). PrivateLinkConfig *PrivateLinkConfig `type:"structure"` - // The status of the agent. If the status is ONLINE, then the agent is configured - // properly and is available to use. The Running status is the normal running - // status for an agent. If the status is OFFLINE, the agent's VM is turned off - // or the agent is in an unhealthy state. When the issue that caused the unhealthy - // state is resolved, the agent returns to ONLINE status. + // The status of the agent. + // + // * If the status is ONLINE, the agent is configured properly and ready + // to use. + // + // * If the status is OFFLINE, the agent has been out of contact with DataSync + // for five minutes or longer. This can happen for a few reasons. For more + // information, see What do I do if my agent is offline? (https://docs.aws.amazon.com/datasync/latest/userguide/troubleshooting-datasync-agents.html#troubleshoot-agent-offline) Status *string `type:"string" enum:"AgentStatus"` } @@ -8855,6 +8892,12 @@ return s } +// SetPlatform sets the Platform field's value. +func (s *DescribeAgentOutput) SetPlatform(v *Platform) *DescribeAgentOutput { + s.Platform = v + return s +} + // SetPrivateLinkConfig sets the PrivateLinkConfig field's value. func (s *DescribeAgentOutput) SetPrivateLinkConfig(v *PrivateLinkConfig) *DescribeAgentOutput { s.PrivateLinkConfig = v @@ -10104,7 +10147,7 @@ // The access key (for example, a user name) required to authenticate with the // object storage system. - AccessKey *string `min:"1" type:"string"` + AccessKey *string `type:"string"` // The ARNs of the DataSync agents that can securely connect with your location. AgentArns []*string `min:"1" type:"list"` @@ -11064,6 +11107,10 @@ // The number of files, objects, and directories that DataSync verified during // your transfer. + // + // When you configure your task to verify only the data that's transferred (https://docs.aws.amazon.com/datasync/latest/userguide/configure-data-verification-options.html), + // DataSync doesn't verify directories in some situations or files that fail + // to transfer. FilesVerified *int64 `type:"long"` // A list of filter rules that include specific data during your transfer. For @@ -11080,7 +11127,7 @@ // any of these options before starting your task. Options *Options `type:"structure"` - // Indicates whether DataSync generated a complete task report (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html) + // Indicates whether DataSync generated a complete task report (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html) // for your transfer. ReportResult *ReportResult `type:"structure"` @@ -11362,7 +11409,7 @@ TaskArn *string `type:"string"` // The configuration of your task report. For more information, see Creating - // a task report (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). + // a task report (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). TaskReportConfig *TaskReportConfig `type:"structure"` } @@ -14278,9 +14325,48 @@ return s } +// The platform-related details about the DataSync agent, such as the version +// number. +type Platform struct { + _ struct{} `type:"structure"` + + // The version of the DataSync agent. + // + // Beginning December 7, 2023, we will discontinue version 1 DataSync agents. + // Check the DataSync console to see if you have affected agents. If you do, + // replace (https://docs.aws.amazon.com/datasync/latest/userguide/replacing-agent.html) + // those agents before then to avoid data transfer or storage discovery disruptions. + // If you need more help, contact Amazon Web Services Support (https://aws.amazon.com/contact-us/). + Version *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Platform) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Platform) GoString() string { + return s.String() +} + +// SetVersion sets the Version field's value. +func (s *Platform) SetVersion(v string) *Platform { + s.Version = &v + return s +} + // Specifies how your DataSync agent connects to Amazon Web Services using a -// virtual private cloud (VPC) service endpoint. An agent that uses a VPC endpoint -// isn't accessible over the public internet. +// virtual private cloud (VPC) service endpoint (https://docs.aws.amazon.com/datasync/latest/userguide/choose-service-endpoint.html#choose-service-endpoint-vpc). +// An agent that uses a VPC endpoint isn't accessible over the public internet. type PrivateLinkConfig struct { _ struct{} `type:"structure"` @@ -14516,7 +14602,7 @@ return s.String() } -// Specifies where DataSync uploads your task report (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). +// Specifies where DataSync uploads your task report (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). type ReportDestination struct { _ struct{} `type:"structure"` @@ -14563,13 +14649,13 @@ return s } -// Specifies the Amazon S3 bucket where DataSync uploads your task report (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). +// Specifies the Amazon S3 bucket where DataSync uploads your task report (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). type ReportDestinationS3 struct { _ struct{} `type:"structure"` // Specifies the Amazon Resource Name (ARN) of the IAM policy that allows DataSync // to upload a task report to your S3 bucket. For more information, see Allowing - // DataSync to upload a task report to an Amazon S3 bucket (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). + // DataSync to upload a task report to an Amazon S3 bucket (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). // // BucketAccessRoleArn is a required field BucketAccessRoleArn *string `type:"string" required:"true"` @@ -14636,7 +14722,7 @@ } // Specifies the level of detail for a particular aspect of your DataSync task -// report (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). +// report (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). type ReportOverride struct { _ struct{} `type:"structure"` @@ -14677,7 +14763,7 @@ } // The level of detail included in each aspect of your DataSync task report -// (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). +// (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). type ReportOverrides struct { _ struct{} `type:"structure"` @@ -14742,7 +14828,7 @@ return s } -// Indicates whether DataSync created a complete task report (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html) +// Indicates whether DataSync created a complete task report (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html) // for your transfer. type ReportResult struct { _ struct{} `type:"structure"` @@ -15878,12 +15964,12 @@ // Specifies how you want to configure a task report, which provides detailed // information about for your DataSync transfer. // -// For more information, see Task reports (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html). +// For more information, see Task reports (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html). type TaskReportConfig struct { _ struct{} `type:"structure"` // Specifies the Amazon S3 bucket where DataSync uploads your task report. For - // more information, see Task reports (https://docs.aws.amazon.com/datasync/latest/userguide/creating-task-reports.html#task-report-access). + // more information, see Task reports (https://docs.aws.amazon.com/datasync/latest/userguide/task-reports.html#task-report-access). Destination *ReportDestination `type:"structure"` // Specifies whether your task report includes the new version of each object @@ -16826,7 +16912,7 @@ // Specifies the access key (for example, a user name) if credentials are required // to authenticate with the object storage server. - AccessKey *string `min:"1" type:"string"` + AccessKey *string `type:"string"` // Specifies the Amazon Resource Names (ARNs) of the DataSync agents that can // securely connect with your location. @@ -16843,7 +16929,7 @@ // SecretKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UpdateLocationObjectStorageInput's // String and GoString methods. - SecretKey *string `min:"1" type:"string" sensitive:"true"` + SecretKey *string `type:"string" sensitive:"true"` // Specifies a certificate to authenticate with an object storage system that // uses a private or self-signed certificate authority (CA). You must specify @@ -16890,18 +16976,12 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateLocationObjectStorageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateLocationObjectStorageInput"} - if s.AccessKey != nil && len(*s.AccessKey) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AccessKey", 1)) - } if s.AgentArns != nil && len(s.AgentArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("AgentArns", 1)) } if s.LocationArn == nil { invalidParams.Add(request.NewErrParamRequired("LocationArn")) } - if s.SecretKey != nil && len(*s.SecretKey) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SecretKey", 1)) - } if s.ServerPort != nil && *s.ServerPort < 1 { invalidParams.Add(request.NewErrParamMinValue("ServerPort", 1)) } @@ -16985,14 +17065,20 @@ type UpdateLocationSmbInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Names (ARNs) of agents to use for a Simple Message Block - // (SMB) location. + // Specifies the DataSync agent (or agents) which you want to connect to your + // SMB file server. You specify an agent by using its Amazon Resource Name (ARN). AgentArns []*string `min:"1" type:"list"` - // The name of the Windows domain that the SMB server belongs to. + // Specifies the Windows domain name that your SMB file server belongs to. + // + // If you have multiple domains in your environment, configuring this parameter + // makes sure that DataSync connects to the right file server. + // + // For more information, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html#configuring-smb-permissions) + // for SMB locations. Domain *string `type:"string"` - // The Amazon Resource Name (ARN) of the SMB location to update. + // Specifies the ARN of the SMB location that you want to update. // // LocationArn is a required field LocationArn *string `type:"string" required:"true"` @@ -17001,39 +17087,34 @@ // uses to access an SMB file server. MountOptions *SmbMountOptions `type:"structure"` - // The password of the user who can mount the share has the permissions to access - // files and folders in the SMB share. + // Specifies the password of the user who can mount your SMB file server and + // has permission to access the files and folders involved in your transfer. + // + // For more information, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html#configuring-smb-permissions) + // for SMB locations. // // Password is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UpdateLocationSmbInput's // String and GoString methods. Password *string `type:"string" sensitive:"true"` - // The subdirectory in the SMB file system that is used to read data from the - // SMB source location or write data to the SMB destination. The SMB path should - // be a path that's exported by the SMB server, or a subdirectory of that path. - // The path should be such that it can be mounted by other SMB clients in your - // network. - // - // Subdirectory must be specified with forward slashes. For example, /path/to/folder. - // - // To transfer all the data in the folder that you specified, DataSync must - // have permissions to mount the SMB share and to access all the data in that - // share. To ensure this, do either of the following: - // - // * Ensure that the user/password specified belongs to the user who can - // mount the share and who has the appropriate permissions for all of the - // files and directories that you want DataSync to access. - // - // * Use credentials of a member of the Backup Operators group to mount the - // share. + // Specifies the name of the share exported by your SMB file server where DataSync + // will read or write data. You can include a subdirectory in the share path + // (for example, /path/to/subdirectory). Make sure that other SMB clients in + // your network can also mount this path. // - // Doing either of these options enables the agent to access the data. For the - // agent to access directories, you must also enable all execute access. + // To copy all data in the specified subdirectory, DataSync must be able to + // mount the SMB share and access all of its data. For more information, see + // required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html#configuring-smb-permissions) + // for SMB locations. Subdirectory *string `type:"string"` - // The user who can mount the share has the permissions to access files and - // folders in the SMB share. + // Specifies the user name that can mount your SMB file server and has permission + // to access the files and folders involved in your transfer. + // + // For information about choosing a user with the right level of access for + // your transfer, see required permissions (https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html#configuring-smb-permissions) + // for SMB locations. User *string `type:"string"` } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/datazone/api.go golang-github-aws-aws-sdk-go-1.48.14/service/datazone/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/datazone/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/datazone/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,39307 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package datazone + +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/restjson" +) + +const opAcceptPredictions = "AcceptPredictions" + +// AcceptPredictionsRequest generates a "aws/request.Request" representing the +// client's request for the AcceptPredictions 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 AcceptPredictions for more information on using the AcceptPredictions +// 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 AcceptPredictionsRequest method. +// req, resp := client.AcceptPredictionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/AcceptPredictions +func (c *DataZone) AcceptPredictionsRequest(input *AcceptPredictionsInput) (req *request.Request, output *AcceptPredictionsOutput) { + op := &request.Operation{ + Name: opAcceptPredictions, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/assets/{identifier}/accept-predictions", + } + + if input == nil { + input = &AcceptPredictionsInput{} + } + + output = &AcceptPredictionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// AcceptPredictions API operation for Amazon DataZone. +// +// Accepts automatically generated business-friendly metadata for your Amazon +// DataZone assets. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation AcceptPredictions for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/AcceptPredictions +func (c *DataZone) AcceptPredictions(input *AcceptPredictionsInput) (*AcceptPredictionsOutput, error) { + req, out := c.AcceptPredictionsRequest(input) + return out, req.Send() +} + +// AcceptPredictionsWithContext is the same as AcceptPredictions with the addition of +// the ability to pass a context and additional request options. +// +// See AcceptPredictions 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 *DataZone) AcceptPredictionsWithContext(ctx aws.Context, input *AcceptPredictionsInput, opts ...request.Option) (*AcceptPredictionsOutput, error) { + req, out := c.AcceptPredictionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opAcceptSubscriptionRequest = "AcceptSubscriptionRequest" + +// AcceptSubscriptionRequestRequest generates a "aws/request.Request" representing the +// client's request for the AcceptSubscriptionRequest 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 AcceptSubscriptionRequest for more information on using the AcceptSubscriptionRequest +// 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 AcceptSubscriptionRequestRequest method. +// req, resp := client.AcceptSubscriptionRequestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/AcceptSubscriptionRequest +func (c *DataZone) AcceptSubscriptionRequestRequest(input *AcceptSubscriptionRequestInput) (req *request.Request, output *AcceptSubscriptionRequestOutput) { + op := &request.Operation{ + Name: opAcceptSubscriptionRequest, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests/{identifier}/accept", + } + + if input == nil { + input = &AcceptSubscriptionRequestInput{} + } + + output = &AcceptSubscriptionRequestOutput{} + req = c.newRequest(op, input, output) + return +} + +// AcceptSubscriptionRequest API operation for Amazon DataZone. +// +// Accepts a subscription request to a specific asset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation AcceptSubscriptionRequest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/AcceptSubscriptionRequest +func (c *DataZone) AcceptSubscriptionRequest(input *AcceptSubscriptionRequestInput) (*AcceptSubscriptionRequestOutput, error) { + req, out := c.AcceptSubscriptionRequestRequest(input) + return out, req.Send() +} + +// AcceptSubscriptionRequestWithContext is the same as AcceptSubscriptionRequest with the addition of +// the ability to pass a context and additional request options. +// +// See AcceptSubscriptionRequest 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 *DataZone) AcceptSubscriptionRequestWithContext(ctx aws.Context, input *AcceptSubscriptionRequestInput, opts ...request.Option) (*AcceptSubscriptionRequestOutput, error) { + req, out := c.AcceptSubscriptionRequestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCancelSubscription = "CancelSubscription" + +// CancelSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the CancelSubscription 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 CancelSubscription for more information on using the CancelSubscription +// 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 CancelSubscriptionRequest method. +// req, resp := client.CancelSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CancelSubscription +func (c *DataZone) CancelSubscriptionRequest(input *CancelSubscriptionInput) (req *request.Request, output *CancelSubscriptionOutput) { + op := &request.Operation{ + Name: opCancelSubscription, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/subscriptions/{identifier}/cancel", + } + + if input == nil { + input = &CancelSubscriptionInput{} + } + + output = &CancelSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CancelSubscription API operation for Amazon DataZone. +// +// Cancels the subscription to the specified asset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CancelSubscription for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CancelSubscription +func (c *DataZone) CancelSubscription(input *CancelSubscriptionInput) (*CancelSubscriptionOutput, error) { + req, out := c.CancelSubscriptionRequest(input) + return out, req.Send() +} + +// CancelSubscriptionWithContext is the same as CancelSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See CancelSubscription 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 *DataZone) CancelSubscriptionWithContext(ctx aws.Context, input *CancelSubscriptionInput, opts ...request.Option) (*CancelSubscriptionOutput, error) { + req, out := c.CancelSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAsset = "CreateAsset" + +// CreateAssetRequest generates a "aws/request.Request" representing the +// client's request for the CreateAsset 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 CreateAsset for more information on using the CreateAsset +// 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 CreateAssetRequest method. +// req, resp := client.CreateAssetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateAsset +func (c *DataZone) CreateAssetRequest(input *CreateAssetInput) (req *request.Request, output *CreateAssetOutput) { + op := &request.Operation{ + Name: opCreateAsset, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/assets", + } + + if input == nil { + input = &CreateAssetInput{} + } + + output = &CreateAssetOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAsset API operation for Amazon DataZone. +// +// Creates an asset in Amazon DataZone catalog. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateAsset for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateAsset +func (c *DataZone) CreateAsset(input *CreateAssetInput) (*CreateAssetOutput, error) { + req, out := c.CreateAssetRequest(input) + return out, req.Send() +} + +// CreateAssetWithContext is the same as CreateAsset with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAsset 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 *DataZone) CreateAssetWithContext(ctx aws.Context, input *CreateAssetInput, opts ...request.Option) (*CreateAssetOutput, error) { + req, out := c.CreateAssetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAssetRevision = "CreateAssetRevision" + +// CreateAssetRevisionRequest generates a "aws/request.Request" representing the +// client's request for the CreateAssetRevision 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 CreateAssetRevision for more information on using the CreateAssetRevision +// 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 CreateAssetRevisionRequest method. +// req, resp := client.CreateAssetRevisionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateAssetRevision +func (c *DataZone) CreateAssetRevisionRequest(input *CreateAssetRevisionInput) (req *request.Request, output *CreateAssetRevisionOutput) { + op := &request.Operation{ + Name: opCreateAssetRevision, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/assets/{identifier}/revisions", + } + + if input == nil { + input = &CreateAssetRevisionInput{} + } + + output = &CreateAssetRevisionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAssetRevision API operation for Amazon DataZone. +// +// Creates a revision of the asset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateAssetRevision for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateAssetRevision +func (c *DataZone) CreateAssetRevision(input *CreateAssetRevisionInput) (*CreateAssetRevisionOutput, error) { + req, out := c.CreateAssetRevisionRequest(input) + return out, req.Send() +} + +// CreateAssetRevisionWithContext is the same as CreateAssetRevision with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAssetRevision 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 *DataZone) CreateAssetRevisionWithContext(ctx aws.Context, input *CreateAssetRevisionInput, opts ...request.Option) (*CreateAssetRevisionOutput, error) { + req, out := c.CreateAssetRevisionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAssetType = "CreateAssetType" + +// CreateAssetTypeRequest generates a "aws/request.Request" representing the +// client's request for the CreateAssetType 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 CreateAssetType for more information on using the CreateAssetType +// 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 CreateAssetTypeRequest method. +// req, resp := client.CreateAssetTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateAssetType +func (c *DataZone) CreateAssetTypeRequest(input *CreateAssetTypeInput) (req *request.Request, output *CreateAssetTypeOutput) { + op := &request.Operation{ + Name: opCreateAssetType, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/asset-types", + } + + if input == nil { + input = &CreateAssetTypeInput{} + } + + output = &CreateAssetTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAssetType API operation for Amazon DataZone. +// +// Creates a custom asset type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateAssetType for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateAssetType +func (c *DataZone) CreateAssetType(input *CreateAssetTypeInput) (*CreateAssetTypeOutput, error) { + req, out := c.CreateAssetTypeRequest(input) + return out, req.Send() +} + +// CreateAssetTypeWithContext is the same as CreateAssetType with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAssetType 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 *DataZone) CreateAssetTypeWithContext(ctx aws.Context, input *CreateAssetTypeInput, opts ...request.Option) (*CreateAssetTypeOutput, error) { + req, out := c.CreateAssetTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateDataSource = "CreateDataSource" + +// CreateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the CreateDataSource 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 CreateDataSource for more information on using the CreateDataSource +// 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 CreateDataSourceRequest method. +// req, resp := client.CreateDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateDataSource +func (c *DataZone) CreateDataSourceRequest(input *CreateDataSourceInput) (req *request.Request, output *CreateDataSourceOutput) { + op := &request.Operation{ + Name: opCreateDataSource, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources", + } + + if input == nil { + input = &CreateDataSourceInput{} + } + + output = &CreateDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDataSource API operation for Amazon DataZone. +// +// Creates an Amazon DataZone data source. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateDataSource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateDataSource +func (c *DataZone) CreateDataSource(input *CreateDataSourceInput) (*CreateDataSourceOutput, error) { + req, out := c.CreateDataSourceRequest(input) + return out, req.Send() +} + +// CreateDataSourceWithContext is the same as CreateDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDataSource 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 *DataZone) CreateDataSourceWithContext(ctx aws.Context, input *CreateDataSourceInput, opts ...request.Option) (*CreateDataSourceOutput, error) { + req, out := c.CreateDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateDomain = "CreateDomain" + +// CreateDomainRequest generates a "aws/request.Request" representing the +// client's request for the CreateDomain 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 CreateDomain for more information on using the CreateDomain +// 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 CreateDomainRequest method. +// req, resp := client.CreateDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateDomain +func (c *DataZone) CreateDomainRequest(input *CreateDomainInput) (req *request.Request, output *CreateDomainOutput) { + op := &request.Operation{ + Name: opCreateDomain, + HTTPMethod: "POST", + HTTPPath: "/v2/domains", + } + + if input == nil { + input = &CreateDomainInput{} + } + + output = &CreateDomainOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDomain API operation for Amazon DataZone. +// +// Creates an Amazon DataZone domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateDomain for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateDomain +func (c *DataZone) CreateDomain(input *CreateDomainInput) (*CreateDomainOutput, error) { + req, out := c.CreateDomainRequest(input) + return out, req.Send() +} + +// CreateDomainWithContext is the same as CreateDomain with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDomain 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 *DataZone) CreateDomainWithContext(ctx aws.Context, input *CreateDomainInput, opts ...request.Option) (*CreateDomainOutput, error) { + req, out := c.CreateDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEnvironment = "CreateEnvironment" + +// CreateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironment 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 CreateEnvironment for more information on using the CreateEnvironment +// 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 CreateEnvironmentRequest method. +// req, resp := client.CreateEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateEnvironment +func (c *DataZone) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *CreateEnvironmentOutput) { + op := &request.Operation{ + Name: opCreateEnvironment, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/environments", + } + + if input == nil { + input = &CreateEnvironmentInput{} + } + + output = &CreateEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEnvironment API operation for Amazon DataZone. +// +// Create an Amazon DataZone environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateEnvironment for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateEnvironment +func (c *DataZone) CreateEnvironment(input *CreateEnvironmentInput) (*CreateEnvironmentOutput, error) { + req, out := c.CreateEnvironmentRequest(input) + return out, req.Send() +} + +// CreateEnvironmentWithContext is the same as CreateEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironment 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 *DataZone) CreateEnvironmentWithContext(ctx aws.Context, input *CreateEnvironmentInput, opts ...request.Option) (*CreateEnvironmentOutput, error) { + req, out := c.CreateEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEnvironmentProfile = "CreateEnvironmentProfile" + +// CreateEnvironmentProfileRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironmentProfile 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 CreateEnvironmentProfile for more information on using the CreateEnvironmentProfile +// 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 CreateEnvironmentProfileRequest method. +// req, resp := client.CreateEnvironmentProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateEnvironmentProfile +func (c *DataZone) CreateEnvironmentProfileRequest(input *CreateEnvironmentProfileInput) (req *request.Request, output *CreateEnvironmentProfileOutput) { + op := &request.Operation{ + Name: opCreateEnvironmentProfile, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-profiles", + } + + if input == nil { + input = &CreateEnvironmentProfileInput{} + } + + output = &CreateEnvironmentProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEnvironmentProfile API operation for Amazon DataZone. +// +// Creates an Amazon DataZone environment profile. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateEnvironmentProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateEnvironmentProfile +func (c *DataZone) CreateEnvironmentProfile(input *CreateEnvironmentProfileInput) (*CreateEnvironmentProfileOutput, error) { + req, out := c.CreateEnvironmentProfileRequest(input) + return out, req.Send() +} + +// CreateEnvironmentProfileWithContext is the same as CreateEnvironmentProfile with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironmentProfile 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 *DataZone) CreateEnvironmentProfileWithContext(ctx aws.Context, input *CreateEnvironmentProfileInput, opts ...request.Option) (*CreateEnvironmentProfileOutput, error) { + req, out := c.CreateEnvironmentProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateFormType = "CreateFormType" + +// CreateFormTypeRequest generates a "aws/request.Request" representing the +// client's request for the CreateFormType 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 CreateFormType for more information on using the CreateFormType +// 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 CreateFormTypeRequest method. +// req, resp := client.CreateFormTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateFormType +func (c *DataZone) CreateFormTypeRequest(input *CreateFormTypeInput) (req *request.Request, output *CreateFormTypeOutput) { + op := &request.Operation{ + Name: opCreateFormType, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/form-types", + } + + if input == nil { + input = &CreateFormTypeInput{} + } + + output = &CreateFormTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateFormType API operation for Amazon DataZone. +// +// Creates a metadata form type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateFormType for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateFormType +func (c *DataZone) CreateFormType(input *CreateFormTypeInput) (*CreateFormTypeOutput, error) { + req, out := c.CreateFormTypeRequest(input) + return out, req.Send() +} + +// CreateFormTypeWithContext is the same as CreateFormType with the addition of +// the ability to pass a context and additional request options. +// +// See CreateFormType 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 *DataZone) CreateFormTypeWithContext(ctx aws.Context, input *CreateFormTypeInput, opts ...request.Option) (*CreateFormTypeOutput, error) { + req, out := c.CreateFormTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateGlossary = "CreateGlossary" + +// CreateGlossaryRequest generates a "aws/request.Request" representing the +// client's request for the CreateGlossary 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 CreateGlossary for more information on using the CreateGlossary +// 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 CreateGlossaryRequest method. +// req, resp := client.CreateGlossaryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateGlossary +func (c *DataZone) CreateGlossaryRequest(input *CreateGlossaryInput) (req *request.Request, output *CreateGlossaryOutput) { + op := &request.Operation{ + Name: opCreateGlossary, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/glossaries", + } + + if input == nil { + input = &CreateGlossaryInput{} + } + + output = &CreateGlossaryOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateGlossary API operation for Amazon DataZone. +// +// Creates an Amazon DataZone business glossary. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateGlossary for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateGlossary +func (c *DataZone) CreateGlossary(input *CreateGlossaryInput) (*CreateGlossaryOutput, error) { + req, out := c.CreateGlossaryRequest(input) + return out, req.Send() +} + +// CreateGlossaryWithContext is the same as CreateGlossary with the addition of +// the ability to pass a context and additional request options. +// +// See CreateGlossary 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 *DataZone) CreateGlossaryWithContext(ctx aws.Context, input *CreateGlossaryInput, opts ...request.Option) (*CreateGlossaryOutput, error) { + req, out := c.CreateGlossaryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateGlossaryTerm = "CreateGlossaryTerm" + +// CreateGlossaryTermRequest generates a "aws/request.Request" representing the +// client's request for the CreateGlossaryTerm 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 CreateGlossaryTerm for more information on using the CreateGlossaryTerm +// 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 CreateGlossaryTermRequest method. +// req, resp := client.CreateGlossaryTermRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateGlossaryTerm +func (c *DataZone) CreateGlossaryTermRequest(input *CreateGlossaryTermInput) (req *request.Request, output *CreateGlossaryTermOutput) { + op := &request.Operation{ + Name: opCreateGlossaryTerm, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/glossary-terms", + } + + if input == nil { + input = &CreateGlossaryTermInput{} + } + + output = &CreateGlossaryTermOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateGlossaryTerm API operation for Amazon DataZone. +// +// Creates a business glossary term. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateGlossaryTerm for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateGlossaryTerm +func (c *DataZone) CreateGlossaryTerm(input *CreateGlossaryTermInput) (*CreateGlossaryTermOutput, error) { + req, out := c.CreateGlossaryTermRequest(input) + return out, req.Send() +} + +// CreateGlossaryTermWithContext is the same as CreateGlossaryTerm with the addition of +// the ability to pass a context and additional request options. +// +// See CreateGlossaryTerm 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 *DataZone) CreateGlossaryTermWithContext(ctx aws.Context, input *CreateGlossaryTermInput, opts ...request.Option) (*CreateGlossaryTermOutput, error) { + req, out := c.CreateGlossaryTermRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateGroupProfile = "CreateGroupProfile" + +// CreateGroupProfileRequest generates a "aws/request.Request" representing the +// client's request for the CreateGroupProfile 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 CreateGroupProfile for more information on using the CreateGroupProfile +// 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 CreateGroupProfileRequest method. +// req, resp := client.CreateGroupProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateGroupProfile +func (c *DataZone) CreateGroupProfileRequest(input *CreateGroupProfileInput) (req *request.Request, output *CreateGroupProfileOutput) { + op := &request.Operation{ + Name: opCreateGroupProfile, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/group-profiles", + } + + if input == nil { + input = &CreateGroupProfileInput{} + } + + output = &CreateGroupProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateGroupProfile API operation for Amazon DataZone. +// +// Creates a group profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateGroupProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateGroupProfile +func (c *DataZone) CreateGroupProfile(input *CreateGroupProfileInput) (*CreateGroupProfileOutput, error) { + req, out := c.CreateGroupProfileRequest(input) + return out, req.Send() +} + +// CreateGroupProfileWithContext is the same as CreateGroupProfile with the addition of +// the ability to pass a context and additional request options. +// +// See CreateGroupProfile 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 *DataZone) CreateGroupProfileWithContext(ctx aws.Context, input *CreateGroupProfileInput, opts ...request.Option) (*CreateGroupProfileOutput, error) { + req, out := c.CreateGroupProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateListingChangeSet = "CreateListingChangeSet" + +// CreateListingChangeSetRequest generates a "aws/request.Request" representing the +// client's request for the CreateListingChangeSet 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 CreateListingChangeSet for more information on using the CreateListingChangeSet +// 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 CreateListingChangeSetRequest method. +// req, resp := client.CreateListingChangeSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateListingChangeSet +func (c *DataZone) CreateListingChangeSetRequest(input *CreateListingChangeSetInput) (req *request.Request, output *CreateListingChangeSetOutput) { + op := &request.Operation{ + Name: opCreateListingChangeSet, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/listings/change-set", + } + + if input == nil { + input = &CreateListingChangeSetInput{} + } + + output = &CreateListingChangeSetOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateListingChangeSet API operation for Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateListingChangeSet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateListingChangeSet +func (c *DataZone) CreateListingChangeSet(input *CreateListingChangeSetInput) (*CreateListingChangeSetOutput, error) { + req, out := c.CreateListingChangeSetRequest(input) + return out, req.Send() +} + +// CreateListingChangeSetWithContext is the same as CreateListingChangeSet with the addition of +// the ability to pass a context and additional request options. +// +// See CreateListingChangeSet 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 *DataZone) CreateListingChangeSetWithContext(ctx aws.Context, input *CreateListingChangeSetInput, opts ...request.Option) (*CreateListingChangeSetOutput, error) { + req, out := c.CreateListingChangeSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateProject = "CreateProject" + +// CreateProjectRequest generates a "aws/request.Request" representing the +// client's request for the CreateProject 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 CreateProject for more information on using the CreateProject +// 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 CreateProjectRequest method. +// req, resp := client.CreateProjectRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateProject +func (c *DataZone) CreateProjectRequest(input *CreateProjectInput) (req *request.Request, output *CreateProjectOutput) { + op := &request.Operation{ + Name: opCreateProject, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/projects", + } + + if input == nil { + input = &CreateProjectInput{} + } + + output = &CreateProjectOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateProject API operation for Amazon DataZone. +// +// Creates an Amazon DataZone project. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateProject for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateProject +func (c *DataZone) CreateProject(input *CreateProjectInput) (*CreateProjectOutput, error) { + req, out := c.CreateProjectRequest(input) + return out, req.Send() +} + +// CreateProjectWithContext is the same as CreateProject with the addition of +// the ability to pass a context and additional request options. +// +// See CreateProject 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 *DataZone) CreateProjectWithContext(ctx aws.Context, input *CreateProjectInput, opts ...request.Option) (*CreateProjectOutput, error) { + req, out := c.CreateProjectRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateProjectMembership = "CreateProjectMembership" + +// CreateProjectMembershipRequest generates a "aws/request.Request" representing the +// client's request for the CreateProjectMembership 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 CreateProjectMembership for more information on using the CreateProjectMembership +// 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 CreateProjectMembershipRequest method. +// req, resp := client.CreateProjectMembershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateProjectMembership +func (c *DataZone) CreateProjectMembershipRequest(input *CreateProjectMembershipInput) (req *request.Request, output *CreateProjectMembershipOutput) { + op := &request.Operation{ + Name: opCreateProjectMembership, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/projects/{projectIdentifier}/createMembership", + } + + if input == nil { + input = &CreateProjectMembershipInput{} + } + + output = &CreateProjectMembershipOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// CreateProjectMembership API operation for Amazon DataZone. +// +// Creates a project membership in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateProjectMembership for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateProjectMembership +func (c *DataZone) CreateProjectMembership(input *CreateProjectMembershipInput) (*CreateProjectMembershipOutput, error) { + req, out := c.CreateProjectMembershipRequest(input) + return out, req.Send() +} + +// CreateProjectMembershipWithContext is the same as CreateProjectMembership with the addition of +// the ability to pass a context and additional request options. +// +// See CreateProjectMembership 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 *DataZone) CreateProjectMembershipWithContext(ctx aws.Context, input *CreateProjectMembershipInput, opts ...request.Option) (*CreateProjectMembershipOutput, error) { + req, out := c.CreateProjectMembershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSubscriptionGrant = "CreateSubscriptionGrant" + +// CreateSubscriptionGrantRequest generates a "aws/request.Request" representing the +// client's request for the CreateSubscriptionGrant 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 CreateSubscriptionGrant for more information on using the CreateSubscriptionGrant +// 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 CreateSubscriptionGrantRequest method. +// req, resp := client.CreateSubscriptionGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateSubscriptionGrant +func (c *DataZone) CreateSubscriptionGrantRequest(input *CreateSubscriptionGrantInput) (req *request.Request, output *CreateSubscriptionGrantOutput) { + op := &request.Operation{ + Name: opCreateSubscriptionGrant, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-grants", + } + + if input == nil { + input = &CreateSubscriptionGrantInput{} + } + + output = &CreateSubscriptionGrantOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSubscriptionGrant API operation for Amazon DataZone. +// +// Creates a subsscription grant in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateSubscriptionGrant for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateSubscriptionGrant +func (c *DataZone) CreateSubscriptionGrant(input *CreateSubscriptionGrantInput) (*CreateSubscriptionGrantOutput, error) { + req, out := c.CreateSubscriptionGrantRequest(input) + return out, req.Send() +} + +// CreateSubscriptionGrantWithContext is the same as CreateSubscriptionGrant with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSubscriptionGrant 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 *DataZone) CreateSubscriptionGrantWithContext(ctx aws.Context, input *CreateSubscriptionGrantInput, opts ...request.Option) (*CreateSubscriptionGrantOutput, error) { + req, out := c.CreateSubscriptionGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSubscriptionRequest = "CreateSubscriptionRequest" + +// CreateSubscriptionRequestRequest generates a "aws/request.Request" representing the +// client's request for the CreateSubscriptionRequest 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 CreateSubscriptionRequest for more information on using the CreateSubscriptionRequest +// 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 CreateSubscriptionRequestRequest method. +// req, resp := client.CreateSubscriptionRequestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateSubscriptionRequest +func (c *DataZone) CreateSubscriptionRequestRequest(input *CreateSubscriptionRequestInput) (req *request.Request, output *CreateSubscriptionRequestOutput) { + op := &request.Operation{ + Name: opCreateSubscriptionRequest, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests", + } + + if input == nil { + input = &CreateSubscriptionRequestInput{} + } + + output = &CreateSubscriptionRequestOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSubscriptionRequest API operation for Amazon DataZone. +// +// Creates a subscription request in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateSubscriptionRequest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateSubscriptionRequest +func (c *DataZone) CreateSubscriptionRequest(input *CreateSubscriptionRequestInput) (*CreateSubscriptionRequestOutput, error) { + req, out := c.CreateSubscriptionRequestRequest(input) + return out, req.Send() +} + +// CreateSubscriptionRequestWithContext is the same as CreateSubscriptionRequest with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSubscriptionRequest 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 *DataZone) CreateSubscriptionRequestWithContext(ctx aws.Context, input *CreateSubscriptionRequestInput, opts ...request.Option) (*CreateSubscriptionRequestOutput, error) { + req, out := c.CreateSubscriptionRequestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSubscriptionTarget = "CreateSubscriptionTarget" + +// CreateSubscriptionTargetRequest generates a "aws/request.Request" representing the +// client's request for the CreateSubscriptionTarget 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 CreateSubscriptionTarget for more information on using the CreateSubscriptionTarget +// 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 CreateSubscriptionTargetRequest method. +// req, resp := client.CreateSubscriptionTargetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateSubscriptionTarget +func (c *DataZone) CreateSubscriptionTargetRequest(input *CreateSubscriptionTargetInput) (req *request.Request, output *CreateSubscriptionTargetOutput) { + op := &request.Operation{ + Name: opCreateSubscriptionTarget, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets", + } + + if input == nil { + input = &CreateSubscriptionTargetInput{} + } + + output = &CreateSubscriptionTargetOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSubscriptionTarget API operation for Amazon DataZone. +// +// Creates a subscription target in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateSubscriptionTarget for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateSubscriptionTarget +func (c *DataZone) CreateSubscriptionTarget(input *CreateSubscriptionTargetInput) (*CreateSubscriptionTargetOutput, error) { + req, out := c.CreateSubscriptionTargetRequest(input) + return out, req.Send() +} + +// CreateSubscriptionTargetWithContext is the same as CreateSubscriptionTarget with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSubscriptionTarget 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 *DataZone) CreateSubscriptionTargetWithContext(ctx aws.Context, input *CreateSubscriptionTargetInput, opts ...request.Option) (*CreateSubscriptionTargetOutput, error) { + req, out := c.CreateSubscriptionTargetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateUserProfile = "CreateUserProfile" + +// CreateUserProfileRequest generates a "aws/request.Request" representing the +// client's request for the CreateUserProfile 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 CreateUserProfile for more information on using the CreateUserProfile +// 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 CreateUserProfileRequest method. +// req, resp := client.CreateUserProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateUserProfile +func (c *DataZone) CreateUserProfileRequest(input *CreateUserProfileInput) (req *request.Request, output *CreateUserProfileOutput) { + op := &request.Operation{ + Name: opCreateUserProfile, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/user-profiles", + } + + if input == nil { + input = &CreateUserProfileInput{} + } + + output = &CreateUserProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateUserProfile API operation for Amazon DataZone. +// +// Creates a user profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation CreateUserProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateUserProfile +func (c *DataZone) CreateUserProfile(input *CreateUserProfileInput) (*CreateUserProfileOutput, error) { + req, out := c.CreateUserProfileRequest(input) + return out, req.Send() +} + +// CreateUserProfileWithContext is the same as CreateUserProfile with the addition of +// the ability to pass a context and additional request options. +// +// See CreateUserProfile 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 *DataZone) CreateUserProfileWithContext(ctx aws.Context, input *CreateUserProfileInput, opts ...request.Option) (*CreateUserProfileOutput, error) { + req, out := c.CreateUserProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAsset = "DeleteAsset" + +// DeleteAssetRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAsset 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 DeleteAsset for more information on using the DeleteAsset +// 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 DeleteAssetRequest method. +// req, resp := client.DeleteAssetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteAsset +func (c *DataZone) DeleteAssetRequest(input *DeleteAssetInput) (req *request.Request, output *DeleteAssetOutput) { + op := &request.Operation{ + Name: opDeleteAsset, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/assets/{identifier}", + } + + if input == nil { + input = &DeleteAssetInput{} + } + + output = &DeleteAssetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAsset API operation for Amazon DataZone. +// +// Delets an asset in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteAsset for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteAsset +func (c *DataZone) DeleteAsset(input *DeleteAssetInput) (*DeleteAssetOutput, error) { + req, out := c.DeleteAssetRequest(input) + return out, req.Send() +} + +// DeleteAssetWithContext is the same as DeleteAsset with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAsset 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 *DataZone) DeleteAssetWithContext(ctx aws.Context, input *DeleteAssetInput, opts ...request.Option) (*DeleteAssetOutput, error) { + req, out := c.DeleteAssetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAssetType = "DeleteAssetType" + +// DeleteAssetTypeRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAssetType 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 DeleteAssetType for more information on using the DeleteAssetType +// 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 DeleteAssetTypeRequest method. +// req, resp := client.DeleteAssetTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteAssetType +func (c *DataZone) DeleteAssetTypeRequest(input *DeleteAssetTypeInput) (req *request.Request, output *DeleteAssetTypeOutput) { + op := &request.Operation{ + Name: opDeleteAssetType, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/asset-types/{identifier}", + } + + if input == nil { + input = &DeleteAssetTypeInput{} + } + + output = &DeleteAssetTypeOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAssetType API operation for Amazon DataZone. +// +// Deletes an asset type in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteAssetType for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteAssetType +func (c *DataZone) DeleteAssetType(input *DeleteAssetTypeInput) (*DeleteAssetTypeOutput, error) { + req, out := c.DeleteAssetTypeRequest(input) + return out, req.Send() +} + +// DeleteAssetTypeWithContext is the same as DeleteAssetType with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAssetType 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 *DataZone) DeleteAssetTypeWithContext(ctx aws.Context, input *DeleteAssetTypeInput, opts ...request.Option) (*DeleteAssetTypeOutput, error) { + req, out := c.DeleteAssetTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDataSource = "DeleteDataSource" + +// DeleteDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDataSource 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 DeleteDataSource for more information on using the DeleteDataSource +// 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 DeleteDataSourceRequest method. +// req, resp := client.DeleteDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteDataSource +func (c *DataZone) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) { + op := &request.Operation{ + Name: opDeleteDataSource, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources/{identifier}", + } + + if input == nil { + input = &DeleteDataSourceInput{} + } + + output = &DeleteDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDataSource API operation for Amazon DataZone. +// +// Deletes a data source in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteDataSource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteDataSource +func (c *DataZone) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + return out, req.Send() +} + +// DeleteDataSourceWithContext is the same as DeleteDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDataSource 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 *DataZone) DeleteDataSourceWithContext(ctx aws.Context, input *DeleteDataSourceInput, opts ...request.Option) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDomain = "DeleteDomain" + +// DeleteDomainRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDomain 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 DeleteDomain for more information on using the DeleteDomain +// 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 DeleteDomainRequest method. +// req, resp := client.DeleteDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteDomain +func (c *DataZone) DeleteDomainRequest(input *DeleteDomainInput) (req *request.Request, output *DeleteDomainOutput) { + op := &request.Operation{ + Name: opDeleteDomain, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{identifier}", + } + + if input == nil { + input = &DeleteDomainInput{} + } + + output = &DeleteDomainOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDomain API operation for Amazon DataZone. +// +// Deletes a Amazon DataZone domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteDomain for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteDomain +func (c *DataZone) DeleteDomain(input *DeleteDomainInput) (*DeleteDomainOutput, error) { + req, out := c.DeleteDomainRequest(input) + return out, req.Send() +} + +// DeleteDomainWithContext is the same as DeleteDomain with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDomain 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 *DataZone) DeleteDomainWithContext(ctx aws.Context, input *DeleteDomainInput, opts ...request.Option) (*DeleteDomainOutput, error) { + req, out := c.DeleteDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironment = "DeleteEnvironment" + +// DeleteEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironment 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 DeleteEnvironment for more information on using the DeleteEnvironment +// 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 DeleteEnvironmentRequest method. +// req, resp := client.DeleteEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteEnvironment +func (c *DataZone) DeleteEnvironmentRequest(input *DeleteEnvironmentInput) (req *request.Request, output *DeleteEnvironmentOutput) { + op := &request.Operation{ + Name: opDeleteEnvironment, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{identifier}", + } + + if input == nil { + input = &DeleteEnvironmentInput{} + } + + output = &DeleteEnvironmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteEnvironment API operation for Amazon DataZone. +// +// Deletes an environment in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteEnvironment for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteEnvironment +func (c *DataZone) DeleteEnvironment(input *DeleteEnvironmentInput) (*DeleteEnvironmentOutput, error) { + req, out := c.DeleteEnvironmentRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentWithContext is the same as DeleteEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironment 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 *DataZone) DeleteEnvironmentWithContext(ctx aws.Context, input *DeleteEnvironmentInput, opts ...request.Option) (*DeleteEnvironmentOutput, error) { + req, out := c.DeleteEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironmentBlueprintConfiguration = "DeleteEnvironmentBlueprintConfiguration" + +// DeleteEnvironmentBlueprintConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironmentBlueprintConfiguration 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 DeleteEnvironmentBlueprintConfiguration for more information on using the DeleteEnvironmentBlueprintConfiguration +// 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 DeleteEnvironmentBlueprintConfigurationRequest method. +// req, resp := client.DeleteEnvironmentBlueprintConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteEnvironmentBlueprintConfiguration +func (c *DataZone) DeleteEnvironmentBlueprintConfigurationRequest(input *DeleteEnvironmentBlueprintConfigurationInput) (req *request.Request, output *DeleteEnvironmentBlueprintConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteEnvironmentBlueprintConfiguration, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-blueprint-configurations/{environmentBlueprintIdentifier}", + } + + if input == nil { + input = &DeleteEnvironmentBlueprintConfigurationInput{} + } + + output = &DeleteEnvironmentBlueprintConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteEnvironmentBlueprintConfiguration API operation for Amazon DataZone. +// +// Deletes the blueprint configuration in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteEnvironmentBlueprintConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteEnvironmentBlueprintConfiguration +func (c *DataZone) DeleteEnvironmentBlueprintConfiguration(input *DeleteEnvironmentBlueprintConfigurationInput) (*DeleteEnvironmentBlueprintConfigurationOutput, error) { + req, out := c.DeleteEnvironmentBlueprintConfigurationRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentBlueprintConfigurationWithContext is the same as DeleteEnvironmentBlueprintConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironmentBlueprintConfiguration 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 *DataZone) DeleteEnvironmentBlueprintConfigurationWithContext(ctx aws.Context, input *DeleteEnvironmentBlueprintConfigurationInput, opts ...request.Option) (*DeleteEnvironmentBlueprintConfigurationOutput, error) { + req, out := c.DeleteEnvironmentBlueprintConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironmentProfile = "DeleteEnvironmentProfile" + +// DeleteEnvironmentProfileRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironmentProfile 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 DeleteEnvironmentProfile for more information on using the DeleteEnvironmentProfile +// 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 DeleteEnvironmentProfileRequest method. +// req, resp := client.DeleteEnvironmentProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteEnvironmentProfile +func (c *DataZone) DeleteEnvironmentProfileRequest(input *DeleteEnvironmentProfileInput) (req *request.Request, output *DeleteEnvironmentProfileOutput) { + op := &request.Operation{ + Name: opDeleteEnvironmentProfile, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-profiles/{identifier}", + } + + if input == nil { + input = &DeleteEnvironmentProfileInput{} + } + + output = &DeleteEnvironmentProfileOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteEnvironmentProfile API operation for Amazon DataZone. +// +// Deletes an environment profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteEnvironmentProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteEnvironmentProfile +func (c *DataZone) DeleteEnvironmentProfile(input *DeleteEnvironmentProfileInput) (*DeleteEnvironmentProfileOutput, error) { + req, out := c.DeleteEnvironmentProfileRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentProfileWithContext is the same as DeleteEnvironmentProfile with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironmentProfile 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 *DataZone) DeleteEnvironmentProfileWithContext(ctx aws.Context, input *DeleteEnvironmentProfileInput, opts ...request.Option) (*DeleteEnvironmentProfileOutput, error) { + req, out := c.DeleteEnvironmentProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteFormType = "DeleteFormType" + +// DeleteFormTypeRequest generates a "aws/request.Request" representing the +// client's request for the DeleteFormType 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 DeleteFormType for more information on using the DeleteFormType +// 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 DeleteFormTypeRequest method. +// req, resp := client.DeleteFormTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteFormType +func (c *DataZone) DeleteFormTypeRequest(input *DeleteFormTypeInput) (req *request.Request, output *DeleteFormTypeOutput) { + op := &request.Operation{ + Name: opDeleteFormType, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/form-types/{formTypeIdentifier}", + } + + if input == nil { + input = &DeleteFormTypeInput{} + } + + output = &DeleteFormTypeOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteFormType API operation for Amazon DataZone. +// +// Delets and metadata form type in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteFormType for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteFormType +func (c *DataZone) DeleteFormType(input *DeleteFormTypeInput) (*DeleteFormTypeOutput, error) { + req, out := c.DeleteFormTypeRequest(input) + return out, req.Send() +} + +// DeleteFormTypeWithContext is the same as DeleteFormType with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteFormType 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 *DataZone) DeleteFormTypeWithContext(ctx aws.Context, input *DeleteFormTypeInput, opts ...request.Option) (*DeleteFormTypeOutput, error) { + req, out := c.DeleteFormTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteGlossary = "DeleteGlossary" + +// DeleteGlossaryRequest generates a "aws/request.Request" representing the +// client's request for the DeleteGlossary 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 DeleteGlossary for more information on using the DeleteGlossary +// 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 DeleteGlossaryRequest method. +// req, resp := client.DeleteGlossaryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteGlossary +func (c *DataZone) DeleteGlossaryRequest(input *DeleteGlossaryInput) (req *request.Request, output *DeleteGlossaryOutput) { + op := &request.Operation{ + Name: opDeleteGlossary, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/glossaries/{identifier}", + } + + if input == nil { + input = &DeleteGlossaryInput{} + } + + output = &DeleteGlossaryOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteGlossary API operation for Amazon DataZone. +// +// Deletes a business glossary in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteGlossary for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteGlossary +func (c *DataZone) DeleteGlossary(input *DeleteGlossaryInput) (*DeleteGlossaryOutput, error) { + req, out := c.DeleteGlossaryRequest(input) + return out, req.Send() +} + +// DeleteGlossaryWithContext is the same as DeleteGlossary with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteGlossary 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 *DataZone) DeleteGlossaryWithContext(ctx aws.Context, input *DeleteGlossaryInput, opts ...request.Option) (*DeleteGlossaryOutput, error) { + req, out := c.DeleteGlossaryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteGlossaryTerm = "DeleteGlossaryTerm" + +// DeleteGlossaryTermRequest generates a "aws/request.Request" representing the +// client's request for the DeleteGlossaryTerm 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 DeleteGlossaryTerm for more information on using the DeleteGlossaryTerm +// 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 DeleteGlossaryTermRequest method. +// req, resp := client.DeleteGlossaryTermRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteGlossaryTerm +func (c *DataZone) DeleteGlossaryTermRequest(input *DeleteGlossaryTermInput) (req *request.Request, output *DeleteGlossaryTermOutput) { + op := &request.Operation{ + Name: opDeleteGlossaryTerm, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/glossary-terms/{identifier}", + } + + if input == nil { + input = &DeleteGlossaryTermInput{} + } + + output = &DeleteGlossaryTermOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteGlossaryTerm API operation for Amazon DataZone. +// +// Deletes a business glossary term in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteGlossaryTerm for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteGlossaryTerm +func (c *DataZone) DeleteGlossaryTerm(input *DeleteGlossaryTermInput) (*DeleteGlossaryTermOutput, error) { + req, out := c.DeleteGlossaryTermRequest(input) + return out, req.Send() +} + +// DeleteGlossaryTermWithContext is the same as DeleteGlossaryTerm with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteGlossaryTerm 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 *DataZone) DeleteGlossaryTermWithContext(ctx aws.Context, input *DeleteGlossaryTermInput, opts ...request.Option) (*DeleteGlossaryTermOutput, error) { + req, out := c.DeleteGlossaryTermRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteListing = "DeleteListing" + +// DeleteListingRequest generates a "aws/request.Request" representing the +// client's request for the DeleteListing 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 DeleteListing for more information on using the DeleteListing +// 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 DeleteListingRequest method. +// req, resp := client.DeleteListingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteListing +func (c *DataZone) DeleteListingRequest(input *DeleteListingInput) (req *request.Request, output *DeleteListingOutput) { + op := &request.Operation{ + Name: opDeleteListing, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/listings/{identifier}", + } + + if input == nil { + input = &DeleteListingInput{} + } + + output = &DeleteListingOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteListing API operation for Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteListing for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteListing +func (c *DataZone) DeleteListing(input *DeleteListingInput) (*DeleteListingOutput, error) { + req, out := c.DeleteListingRequest(input) + return out, req.Send() +} + +// DeleteListingWithContext is the same as DeleteListing with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteListing 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 *DataZone) DeleteListingWithContext(ctx aws.Context, input *DeleteListingInput, opts ...request.Option) (*DeleteListingOutput, error) { + req, out := c.DeleteListingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteProject = "DeleteProject" + +// DeleteProjectRequest generates a "aws/request.Request" representing the +// client's request for the DeleteProject 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 DeleteProject for more information on using the DeleteProject +// 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 DeleteProjectRequest method. +// req, resp := client.DeleteProjectRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteProject +func (c *DataZone) DeleteProjectRequest(input *DeleteProjectInput) (req *request.Request, output *DeleteProjectOutput) { + op := &request.Operation{ + Name: opDeleteProject, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/projects/{identifier}", + } + + if input == nil { + input = &DeleteProjectInput{} + } + + output = &DeleteProjectOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteProject API operation for Amazon DataZone. +// +// Deletes a project in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteProject for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteProject +func (c *DataZone) DeleteProject(input *DeleteProjectInput) (*DeleteProjectOutput, error) { + req, out := c.DeleteProjectRequest(input) + return out, req.Send() +} + +// DeleteProjectWithContext is the same as DeleteProject with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteProject 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 *DataZone) DeleteProjectWithContext(ctx aws.Context, input *DeleteProjectInput, opts ...request.Option) (*DeleteProjectOutput, error) { + req, out := c.DeleteProjectRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteProjectMembership = "DeleteProjectMembership" + +// DeleteProjectMembershipRequest generates a "aws/request.Request" representing the +// client's request for the DeleteProjectMembership 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 DeleteProjectMembership for more information on using the DeleteProjectMembership +// 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 DeleteProjectMembershipRequest method. +// req, resp := client.DeleteProjectMembershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteProjectMembership +func (c *DataZone) DeleteProjectMembershipRequest(input *DeleteProjectMembershipInput) (req *request.Request, output *DeleteProjectMembershipOutput) { + op := &request.Operation{ + Name: opDeleteProjectMembership, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/projects/{projectIdentifier}/deleteMembership", + } + + if input == nil { + input = &DeleteProjectMembershipInput{} + } + + output = &DeleteProjectMembershipOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteProjectMembership API operation for Amazon DataZone. +// +// Deletes project membership in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteProjectMembership for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteProjectMembership +func (c *DataZone) DeleteProjectMembership(input *DeleteProjectMembershipInput) (*DeleteProjectMembershipOutput, error) { + req, out := c.DeleteProjectMembershipRequest(input) + return out, req.Send() +} + +// DeleteProjectMembershipWithContext is the same as DeleteProjectMembership with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteProjectMembership 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 *DataZone) DeleteProjectMembershipWithContext(ctx aws.Context, input *DeleteProjectMembershipInput, opts ...request.Option) (*DeleteProjectMembershipOutput, error) { + req, out := c.DeleteProjectMembershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSubscriptionGrant = "DeleteSubscriptionGrant" + +// DeleteSubscriptionGrantRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSubscriptionGrant 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 DeleteSubscriptionGrant for more information on using the DeleteSubscriptionGrant +// 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 DeleteSubscriptionGrantRequest method. +// req, resp := client.DeleteSubscriptionGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteSubscriptionGrant +func (c *DataZone) DeleteSubscriptionGrantRequest(input *DeleteSubscriptionGrantInput) (req *request.Request, output *DeleteSubscriptionGrantOutput) { + op := &request.Operation{ + Name: opDeleteSubscriptionGrant, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-grants/{identifier}", + } + + if input == nil { + input = &DeleteSubscriptionGrantInput{} + } + + output = &DeleteSubscriptionGrantOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteSubscriptionGrant API operation for Amazon DataZone. +// +// Deletes and subscription grant in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteSubscriptionGrant for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteSubscriptionGrant +func (c *DataZone) DeleteSubscriptionGrant(input *DeleteSubscriptionGrantInput) (*DeleteSubscriptionGrantOutput, error) { + req, out := c.DeleteSubscriptionGrantRequest(input) + return out, req.Send() +} + +// DeleteSubscriptionGrantWithContext is the same as DeleteSubscriptionGrant with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSubscriptionGrant 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 *DataZone) DeleteSubscriptionGrantWithContext(ctx aws.Context, input *DeleteSubscriptionGrantInput, opts ...request.Option) (*DeleteSubscriptionGrantOutput, error) { + req, out := c.DeleteSubscriptionGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSubscriptionRequest = "DeleteSubscriptionRequest" + +// DeleteSubscriptionRequestRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSubscriptionRequest 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 DeleteSubscriptionRequest for more information on using the DeleteSubscriptionRequest +// 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 DeleteSubscriptionRequestRequest method. +// req, resp := client.DeleteSubscriptionRequestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteSubscriptionRequest +func (c *DataZone) DeleteSubscriptionRequestRequest(input *DeleteSubscriptionRequestInput) (req *request.Request, output *DeleteSubscriptionRequestOutput) { + op := &request.Operation{ + Name: opDeleteSubscriptionRequest, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests/{identifier}", + } + + if input == nil { + input = &DeleteSubscriptionRequestInput{} + } + + output = &DeleteSubscriptionRequestOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteSubscriptionRequest API operation for Amazon DataZone. +// +// Deletes a subscription request in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteSubscriptionRequest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteSubscriptionRequest +func (c *DataZone) DeleteSubscriptionRequest(input *DeleteSubscriptionRequestInput) (*DeleteSubscriptionRequestOutput, error) { + req, out := c.DeleteSubscriptionRequestRequest(input) + return out, req.Send() +} + +// DeleteSubscriptionRequestWithContext is the same as DeleteSubscriptionRequest with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSubscriptionRequest 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 *DataZone) DeleteSubscriptionRequestWithContext(ctx aws.Context, input *DeleteSubscriptionRequestInput, opts ...request.Option) (*DeleteSubscriptionRequestOutput, error) { + req, out := c.DeleteSubscriptionRequestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSubscriptionTarget = "DeleteSubscriptionTarget" + +// DeleteSubscriptionTargetRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSubscriptionTarget 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 DeleteSubscriptionTarget for more information on using the DeleteSubscriptionTarget +// 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 DeleteSubscriptionTargetRequest method. +// req, resp := client.DeleteSubscriptionTargetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteSubscriptionTarget +func (c *DataZone) DeleteSubscriptionTargetRequest(input *DeleteSubscriptionTargetInput) (req *request.Request, output *DeleteSubscriptionTargetOutput) { + op := &request.Operation{ + Name: opDeleteSubscriptionTarget, + HTTPMethod: "DELETE", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets/{identifier}", + } + + if input == nil { + input = &DeleteSubscriptionTargetInput{} + } + + output = &DeleteSubscriptionTargetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteSubscriptionTarget API operation for Amazon DataZone. +// +// Deletes a subscription target in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation DeleteSubscriptionTarget for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/DeleteSubscriptionTarget +func (c *DataZone) DeleteSubscriptionTarget(input *DeleteSubscriptionTargetInput) (*DeleteSubscriptionTargetOutput, error) { + req, out := c.DeleteSubscriptionTargetRequest(input) + return out, req.Send() +} + +// DeleteSubscriptionTargetWithContext is the same as DeleteSubscriptionTarget with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSubscriptionTarget 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 *DataZone) DeleteSubscriptionTargetWithContext(ctx aws.Context, input *DeleteSubscriptionTargetInput, opts ...request.Option) (*DeleteSubscriptionTargetOutput, error) { + req, out := c.DeleteSubscriptionTargetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAsset = "GetAsset" + +// GetAssetRequest generates a "aws/request.Request" representing the +// client's request for the GetAsset 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 GetAsset for more information on using the GetAsset +// 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 GetAssetRequest method. +// req, resp := client.GetAssetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetAsset +func (c *DataZone) GetAssetRequest(input *GetAssetInput) (req *request.Request, output *GetAssetOutput) { + op := &request.Operation{ + Name: opGetAsset, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/assets/{identifier}", + } + + if input == nil { + input = &GetAssetInput{} + } + + output = &GetAssetOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAsset API operation for Amazon DataZone. +// +// Gets an Amazon DataZone asset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetAsset for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetAsset +func (c *DataZone) GetAsset(input *GetAssetInput) (*GetAssetOutput, error) { + req, out := c.GetAssetRequest(input) + return out, req.Send() +} + +// GetAssetWithContext is the same as GetAsset with the addition of +// the ability to pass a context and additional request options. +// +// See GetAsset 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 *DataZone) GetAssetWithContext(ctx aws.Context, input *GetAssetInput, opts ...request.Option) (*GetAssetOutput, error) { + req, out := c.GetAssetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAssetType = "GetAssetType" + +// GetAssetTypeRequest generates a "aws/request.Request" representing the +// client's request for the GetAssetType 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 GetAssetType for more information on using the GetAssetType +// 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 GetAssetTypeRequest method. +// req, resp := client.GetAssetTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetAssetType +func (c *DataZone) GetAssetTypeRequest(input *GetAssetTypeInput) (req *request.Request, output *GetAssetTypeOutput) { + op := &request.Operation{ + Name: opGetAssetType, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/asset-types/{identifier}", + } + + if input == nil { + input = &GetAssetTypeInput{} + } + + output = &GetAssetTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAssetType API operation for Amazon DataZone. +// +// Gets an Amazon DataZone asset type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetAssetType for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetAssetType +func (c *DataZone) GetAssetType(input *GetAssetTypeInput) (*GetAssetTypeOutput, error) { + req, out := c.GetAssetTypeRequest(input) + return out, req.Send() +} + +// GetAssetTypeWithContext is the same as GetAssetType with the addition of +// the ability to pass a context and additional request options. +// +// See GetAssetType 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 *DataZone) GetAssetTypeWithContext(ctx aws.Context, input *GetAssetTypeInput, opts ...request.Option) (*GetAssetTypeOutput, error) { + req, out := c.GetAssetTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDataSource = "GetDataSource" + +// GetDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSource 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 GetDataSource for more information on using the GetDataSource +// 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 GetDataSourceRequest method. +// req, resp := client.GetDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetDataSource +func (c *DataZone) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) { + op := &request.Operation{ + Name: opGetDataSource, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources/{identifier}", + } + + if input == nil { + input = &GetDataSourceInput{} + } + + output = &GetDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSource API operation for Amazon DataZone. +// +// Gets an Amazon DataZone data source. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetDataSource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetDataSource +func (c *DataZone) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + return out, req.Send() +} + +// GetDataSourceWithContext is the same as GetDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSource 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 *DataZone) GetDataSourceWithContext(ctx aws.Context, input *GetDataSourceInput, opts ...request.Option) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDataSourceRun = "GetDataSourceRun" + +// GetDataSourceRunRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSourceRun 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 GetDataSourceRun for more information on using the GetDataSourceRun +// 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 GetDataSourceRunRequest method. +// req, resp := client.GetDataSourceRunRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetDataSourceRun +func (c *DataZone) GetDataSourceRunRequest(input *GetDataSourceRunInput) (req *request.Request, output *GetDataSourceRunOutput) { + op := &request.Operation{ + Name: opGetDataSourceRun, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/data-source-runs/{identifier}", + } + + if input == nil { + input = &GetDataSourceRunInput{} + } + + output = &GetDataSourceRunOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSourceRun API operation for Amazon DataZone. +// +// Gets an Amazon DataZone data source run. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetDataSourceRun for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetDataSourceRun +func (c *DataZone) GetDataSourceRun(input *GetDataSourceRunInput) (*GetDataSourceRunOutput, error) { + req, out := c.GetDataSourceRunRequest(input) + return out, req.Send() +} + +// GetDataSourceRunWithContext is the same as GetDataSourceRun with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSourceRun 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 *DataZone) GetDataSourceRunWithContext(ctx aws.Context, input *GetDataSourceRunInput, opts ...request.Option) (*GetDataSourceRunOutput, error) { + req, out := c.GetDataSourceRunRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDomain = "GetDomain" + +// GetDomainRequest generates a "aws/request.Request" representing the +// client's request for the GetDomain 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 GetDomain for more information on using the GetDomain +// 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 GetDomainRequest method. +// req, resp := client.GetDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetDomain +func (c *DataZone) GetDomainRequest(input *GetDomainInput) (req *request.Request, output *GetDomainOutput) { + op := &request.Operation{ + Name: opGetDomain, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{identifier}", + } + + if input == nil { + input = &GetDomainInput{} + } + + output = &GetDomainOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDomain API operation for Amazon DataZone. +// +// Gets an Amazon DataZone domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetDomain for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetDomain +func (c *DataZone) GetDomain(input *GetDomainInput) (*GetDomainOutput, error) { + req, out := c.GetDomainRequest(input) + return out, req.Send() +} + +// GetDomainWithContext is the same as GetDomain with the addition of +// the ability to pass a context and additional request options. +// +// See GetDomain 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 *DataZone) GetDomainWithContext(ctx aws.Context, input *GetDomainInput, opts ...request.Option) (*GetDomainOutput, error) { + req, out := c.GetDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironment = "GetEnvironment" + +// GetEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironment 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 GetEnvironment for more information on using the GetEnvironment +// 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 GetEnvironmentRequest method. +// req, resp := client.GetEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironment +func (c *DataZone) GetEnvironmentRequest(input *GetEnvironmentInput) (req *request.Request, output *GetEnvironmentOutput) { + op := &request.Operation{ + Name: opGetEnvironment, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{identifier}", + } + + if input == nil { + input = &GetEnvironmentInput{} + } + + output = &GetEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironment API operation for Amazon DataZone. +// +// Gets an Amazon DataZone environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetEnvironment for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironment +func (c *DataZone) GetEnvironment(input *GetEnvironmentInput) (*GetEnvironmentOutput, error) { + req, out := c.GetEnvironmentRequest(input) + return out, req.Send() +} + +// GetEnvironmentWithContext is the same as GetEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironment 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 *DataZone) GetEnvironmentWithContext(ctx aws.Context, input *GetEnvironmentInput, opts ...request.Option) (*GetEnvironmentOutput, error) { + req, out := c.GetEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironmentBlueprint = "GetEnvironmentBlueprint" + +// GetEnvironmentBlueprintRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironmentBlueprint 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 GetEnvironmentBlueprint for more information on using the GetEnvironmentBlueprint +// 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 GetEnvironmentBlueprintRequest method. +// req, resp := client.GetEnvironmentBlueprintRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironmentBlueprint +func (c *DataZone) GetEnvironmentBlueprintRequest(input *GetEnvironmentBlueprintInput) (req *request.Request, output *GetEnvironmentBlueprintOutput) { + op := &request.Operation{ + Name: opGetEnvironmentBlueprint, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-blueprints/{identifier}", + } + + if input == nil { + input = &GetEnvironmentBlueprintInput{} + } + + output = &GetEnvironmentBlueprintOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironmentBlueprint API operation for Amazon DataZone. +// +// Gets an Amazon DataZone blueprint. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetEnvironmentBlueprint for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironmentBlueprint +func (c *DataZone) GetEnvironmentBlueprint(input *GetEnvironmentBlueprintInput) (*GetEnvironmentBlueprintOutput, error) { + req, out := c.GetEnvironmentBlueprintRequest(input) + return out, req.Send() +} + +// GetEnvironmentBlueprintWithContext is the same as GetEnvironmentBlueprint with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironmentBlueprint 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 *DataZone) GetEnvironmentBlueprintWithContext(ctx aws.Context, input *GetEnvironmentBlueprintInput, opts ...request.Option) (*GetEnvironmentBlueprintOutput, error) { + req, out := c.GetEnvironmentBlueprintRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironmentBlueprintConfiguration = "GetEnvironmentBlueprintConfiguration" + +// GetEnvironmentBlueprintConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironmentBlueprintConfiguration 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 GetEnvironmentBlueprintConfiguration for more information on using the GetEnvironmentBlueprintConfiguration +// 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 GetEnvironmentBlueprintConfigurationRequest method. +// req, resp := client.GetEnvironmentBlueprintConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironmentBlueprintConfiguration +func (c *DataZone) GetEnvironmentBlueprintConfigurationRequest(input *GetEnvironmentBlueprintConfigurationInput) (req *request.Request, output *GetEnvironmentBlueprintConfigurationOutput) { + op := &request.Operation{ + Name: opGetEnvironmentBlueprintConfiguration, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-blueprint-configurations/{environmentBlueprintIdentifier}", + } + + if input == nil { + input = &GetEnvironmentBlueprintConfigurationInput{} + } + + output = &GetEnvironmentBlueprintConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironmentBlueprintConfiguration API operation for Amazon DataZone. +// +// Gets the blueprint configuration in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetEnvironmentBlueprintConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironmentBlueprintConfiguration +func (c *DataZone) GetEnvironmentBlueprintConfiguration(input *GetEnvironmentBlueprintConfigurationInput) (*GetEnvironmentBlueprintConfigurationOutput, error) { + req, out := c.GetEnvironmentBlueprintConfigurationRequest(input) + return out, req.Send() +} + +// GetEnvironmentBlueprintConfigurationWithContext is the same as GetEnvironmentBlueprintConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironmentBlueprintConfiguration 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 *DataZone) GetEnvironmentBlueprintConfigurationWithContext(ctx aws.Context, input *GetEnvironmentBlueprintConfigurationInput, opts ...request.Option) (*GetEnvironmentBlueprintConfigurationOutput, error) { + req, out := c.GetEnvironmentBlueprintConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironmentProfile = "GetEnvironmentProfile" + +// GetEnvironmentProfileRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironmentProfile 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 GetEnvironmentProfile for more information on using the GetEnvironmentProfile +// 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 GetEnvironmentProfileRequest method. +// req, resp := client.GetEnvironmentProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironmentProfile +func (c *DataZone) GetEnvironmentProfileRequest(input *GetEnvironmentProfileInput) (req *request.Request, output *GetEnvironmentProfileOutput) { + op := &request.Operation{ + Name: opGetEnvironmentProfile, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-profiles/{identifier}", + } + + if input == nil { + input = &GetEnvironmentProfileInput{} + } + + output = &GetEnvironmentProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironmentProfile API operation for Amazon DataZone. +// +// Gets an evinronment profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetEnvironmentProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetEnvironmentProfile +func (c *DataZone) GetEnvironmentProfile(input *GetEnvironmentProfileInput) (*GetEnvironmentProfileOutput, error) { + req, out := c.GetEnvironmentProfileRequest(input) + return out, req.Send() +} + +// GetEnvironmentProfileWithContext is the same as GetEnvironmentProfile with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironmentProfile 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 *DataZone) GetEnvironmentProfileWithContext(ctx aws.Context, input *GetEnvironmentProfileInput, opts ...request.Option) (*GetEnvironmentProfileOutput, error) { + req, out := c.GetEnvironmentProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetFormType = "GetFormType" + +// GetFormTypeRequest generates a "aws/request.Request" representing the +// client's request for the GetFormType 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 GetFormType for more information on using the GetFormType +// 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 GetFormTypeRequest method. +// req, resp := client.GetFormTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetFormType +func (c *DataZone) GetFormTypeRequest(input *GetFormTypeInput) (req *request.Request, output *GetFormTypeOutput) { + op := &request.Operation{ + Name: opGetFormType, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/form-types/{formTypeIdentifier}", + } + + if input == nil { + input = &GetFormTypeInput{} + } + + output = &GetFormTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetFormType API operation for Amazon DataZone. +// +// Gets a metadata form type in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetFormType for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetFormType +func (c *DataZone) GetFormType(input *GetFormTypeInput) (*GetFormTypeOutput, error) { + req, out := c.GetFormTypeRequest(input) + return out, req.Send() +} + +// GetFormTypeWithContext is the same as GetFormType with the addition of +// the ability to pass a context and additional request options. +// +// See GetFormType 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 *DataZone) GetFormTypeWithContext(ctx aws.Context, input *GetFormTypeInput, opts ...request.Option) (*GetFormTypeOutput, error) { + req, out := c.GetFormTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetGlossary = "GetGlossary" + +// GetGlossaryRequest generates a "aws/request.Request" representing the +// client's request for the GetGlossary 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 GetGlossary for more information on using the GetGlossary +// 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 GetGlossaryRequest method. +// req, resp := client.GetGlossaryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetGlossary +func (c *DataZone) GetGlossaryRequest(input *GetGlossaryInput) (req *request.Request, output *GetGlossaryOutput) { + op := &request.Operation{ + Name: opGetGlossary, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/glossaries/{identifier}", + } + + if input == nil { + input = &GetGlossaryInput{} + } + + output = &GetGlossaryOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetGlossary API operation for Amazon DataZone. +// +// Gets a business glossary in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetGlossary for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetGlossary +func (c *DataZone) GetGlossary(input *GetGlossaryInput) (*GetGlossaryOutput, error) { + req, out := c.GetGlossaryRequest(input) + return out, req.Send() +} + +// GetGlossaryWithContext is the same as GetGlossary with the addition of +// the ability to pass a context and additional request options. +// +// See GetGlossary 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 *DataZone) GetGlossaryWithContext(ctx aws.Context, input *GetGlossaryInput, opts ...request.Option) (*GetGlossaryOutput, error) { + req, out := c.GetGlossaryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetGlossaryTerm = "GetGlossaryTerm" + +// GetGlossaryTermRequest generates a "aws/request.Request" representing the +// client's request for the GetGlossaryTerm 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 GetGlossaryTerm for more information on using the GetGlossaryTerm +// 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 GetGlossaryTermRequest method. +// req, resp := client.GetGlossaryTermRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetGlossaryTerm +func (c *DataZone) GetGlossaryTermRequest(input *GetGlossaryTermInput) (req *request.Request, output *GetGlossaryTermOutput) { + op := &request.Operation{ + Name: opGetGlossaryTerm, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/glossary-terms/{identifier}", + } + + if input == nil { + input = &GetGlossaryTermInput{} + } + + output = &GetGlossaryTermOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetGlossaryTerm API operation for Amazon DataZone. +// +// Gets a business glossary term in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetGlossaryTerm for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetGlossaryTerm +func (c *DataZone) GetGlossaryTerm(input *GetGlossaryTermInput) (*GetGlossaryTermOutput, error) { + req, out := c.GetGlossaryTermRequest(input) + return out, req.Send() +} + +// GetGlossaryTermWithContext is the same as GetGlossaryTerm with the addition of +// the ability to pass a context and additional request options. +// +// See GetGlossaryTerm 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 *DataZone) GetGlossaryTermWithContext(ctx aws.Context, input *GetGlossaryTermInput, opts ...request.Option) (*GetGlossaryTermOutput, error) { + req, out := c.GetGlossaryTermRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetGroupProfile = "GetGroupProfile" + +// GetGroupProfileRequest generates a "aws/request.Request" representing the +// client's request for the GetGroupProfile 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 GetGroupProfile for more information on using the GetGroupProfile +// 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 GetGroupProfileRequest method. +// req, resp := client.GetGroupProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetGroupProfile +func (c *DataZone) GetGroupProfileRequest(input *GetGroupProfileInput) (req *request.Request, output *GetGroupProfileOutput) { + op := &request.Operation{ + Name: opGetGroupProfile, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/group-profiles/{groupIdentifier}", + } + + if input == nil { + input = &GetGroupProfileInput{} + } + + output = &GetGroupProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetGroupProfile API operation for Amazon DataZone. +// +// Gets a group profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetGroupProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetGroupProfile +func (c *DataZone) GetGroupProfile(input *GetGroupProfileInput) (*GetGroupProfileOutput, error) { + req, out := c.GetGroupProfileRequest(input) + return out, req.Send() +} + +// GetGroupProfileWithContext is the same as GetGroupProfile with the addition of +// the ability to pass a context and additional request options. +// +// See GetGroupProfile 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 *DataZone) GetGroupProfileWithContext(ctx aws.Context, input *GetGroupProfileInput, opts ...request.Option) (*GetGroupProfileOutput, error) { + req, out := c.GetGroupProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetIamPortalLoginUrl = "GetIamPortalLoginUrl" + +// GetIamPortalLoginUrlRequest generates a "aws/request.Request" representing the +// client's request for the GetIamPortalLoginUrl 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 GetIamPortalLoginUrl for more information on using the GetIamPortalLoginUrl +// 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 GetIamPortalLoginUrlRequest method. +// req, resp := client.GetIamPortalLoginUrlRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetIamPortalLoginUrl +func (c *DataZone) GetIamPortalLoginUrlRequest(input *GetIamPortalLoginUrlInput) (req *request.Request, output *GetIamPortalLoginUrlOutput) { + op := &request.Operation{ + Name: opGetIamPortalLoginUrl, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/get-portal-login-url", + } + + if input == nil { + input = &GetIamPortalLoginUrlInput{} + } + + output = &GetIamPortalLoginUrlOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetIamPortalLoginUrl API operation for Amazon DataZone. +// +// Gets the data portal URL for the specified Amazon DataZone domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetIamPortalLoginUrl for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetIamPortalLoginUrl +func (c *DataZone) GetIamPortalLoginUrl(input *GetIamPortalLoginUrlInput) (*GetIamPortalLoginUrlOutput, error) { + req, out := c.GetIamPortalLoginUrlRequest(input) + return out, req.Send() +} + +// GetIamPortalLoginUrlWithContext is the same as GetIamPortalLoginUrl with the addition of +// the ability to pass a context and additional request options. +// +// See GetIamPortalLoginUrl 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 *DataZone) GetIamPortalLoginUrlWithContext(ctx aws.Context, input *GetIamPortalLoginUrlInput, opts ...request.Option) (*GetIamPortalLoginUrlOutput, error) { + req, out := c.GetIamPortalLoginUrlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetListing = "GetListing" + +// GetListingRequest generates a "aws/request.Request" representing the +// client's request for the GetListing 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 GetListing for more information on using the GetListing +// 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 GetListingRequest method. +// req, resp := client.GetListingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetListing +func (c *DataZone) GetListingRequest(input *GetListingInput) (req *request.Request, output *GetListingOutput) { + op := &request.Operation{ + Name: opGetListing, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/listings/{identifier}", + } + + if input == nil { + input = &GetListingInput{} + } + + output = &GetListingOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetListing API operation for Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetListing for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetListing +func (c *DataZone) GetListing(input *GetListingInput) (*GetListingOutput, error) { + req, out := c.GetListingRequest(input) + return out, req.Send() +} + +// GetListingWithContext is the same as GetListing with the addition of +// the ability to pass a context and additional request options. +// +// See GetListing 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 *DataZone) GetListingWithContext(ctx aws.Context, input *GetListingInput, opts ...request.Option) (*GetListingOutput, error) { + req, out := c.GetListingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetProject = "GetProject" + +// GetProjectRequest generates a "aws/request.Request" representing the +// client's request for the GetProject 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 GetProject for more information on using the GetProject +// 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 GetProjectRequest method. +// req, resp := client.GetProjectRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetProject +func (c *DataZone) GetProjectRequest(input *GetProjectInput) (req *request.Request, output *GetProjectOutput) { + op := &request.Operation{ + Name: opGetProject, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/projects/{identifier}", + } + + if input == nil { + input = &GetProjectInput{} + } + + output = &GetProjectOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetProject API operation for Amazon DataZone. +// +// Gets a project in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetProject for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetProject +func (c *DataZone) GetProject(input *GetProjectInput) (*GetProjectOutput, error) { + req, out := c.GetProjectRequest(input) + return out, req.Send() +} + +// GetProjectWithContext is the same as GetProject with the addition of +// the ability to pass a context and additional request options. +// +// See GetProject 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 *DataZone) GetProjectWithContext(ctx aws.Context, input *GetProjectInput, opts ...request.Option) (*GetProjectOutput, error) { + req, out := c.GetProjectRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSubscription = "GetSubscription" + +// GetSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the GetSubscription 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 GetSubscription for more information on using the GetSubscription +// 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 GetSubscriptionRequest method. +// req, resp := client.GetSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscription +func (c *DataZone) GetSubscriptionRequest(input *GetSubscriptionInput) (req *request.Request, output *GetSubscriptionOutput) { + op := &request.Operation{ + Name: opGetSubscription, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/subscriptions/{identifier}", + } + + if input == nil { + input = &GetSubscriptionInput{} + } + + output = &GetSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSubscription API operation for Amazon DataZone. +// +// Gets a subscription in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetSubscription for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscription +func (c *DataZone) GetSubscription(input *GetSubscriptionInput) (*GetSubscriptionOutput, error) { + req, out := c.GetSubscriptionRequest(input) + return out, req.Send() +} + +// GetSubscriptionWithContext is the same as GetSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See GetSubscription 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 *DataZone) GetSubscriptionWithContext(ctx aws.Context, input *GetSubscriptionInput, opts ...request.Option) (*GetSubscriptionOutput, error) { + req, out := c.GetSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSubscriptionGrant = "GetSubscriptionGrant" + +// GetSubscriptionGrantRequest generates a "aws/request.Request" representing the +// client's request for the GetSubscriptionGrant 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 GetSubscriptionGrant for more information on using the GetSubscriptionGrant +// 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 GetSubscriptionGrantRequest method. +// req, resp := client.GetSubscriptionGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscriptionGrant +func (c *DataZone) GetSubscriptionGrantRequest(input *GetSubscriptionGrantInput) (req *request.Request, output *GetSubscriptionGrantOutput) { + op := &request.Operation{ + Name: opGetSubscriptionGrant, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-grants/{identifier}", + } + + if input == nil { + input = &GetSubscriptionGrantInput{} + } + + output = &GetSubscriptionGrantOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSubscriptionGrant API operation for Amazon DataZone. +// +// Gets the subscription grant in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetSubscriptionGrant for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscriptionGrant +func (c *DataZone) GetSubscriptionGrant(input *GetSubscriptionGrantInput) (*GetSubscriptionGrantOutput, error) { + req, out := c.GetSubscriptionGrantRequest(input) + return out, req.Send() +} + +// GetSubscriptionGrantWithContext is the same as GetSubscriptionGrant with the addition of +// the ability to pass a context and additional request options. +// +// See GetSubscriptionGrant 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 *DataZone) GetSubscriptionGrantWithContext(ctx aws.Context, input *GetSubscriptionGrantInput, opts ...request.Option) (*GetSubscriptionGrantOutput, error) { + req, out := c.GetSubscriptionGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSubscriptionRequestDetails = "GetSubscriptionRequestDetails" + +// GetSubscriptionRequestDetailsRequest generates a "aws/request.Request" representing the +// client's request for the GetSubscriptionRequestDetails 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 GetSubscriptionRequestDetails for more information on using the GetSubscriptionRequestDetails +// 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 GetSubscriptionRequestDetailsRequest method. +// req, resp := client.GetSubscriptionRequestDetailsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscriptionRequestDetails +func (c *DataZone) GetSubscriptionRequestDetailsRequest(input *GetSubscriptionRequestDetailsInput) (req *request.Request, output *GetSubscriptionRequestDetailsOutput) { + op := &request.Operation{ + Name: opGetSubscriptionRequestDetails, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests/{identifier}", + } + + if input == nil { + input = &GetSubscriptionRequestDetailsInput{} + } + + output = &GetSubscriptionRequestDetailsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSubscriptionRequestDetails API operation for Amazon DataZone. +// +// Gets the details of the specified subscription request. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetSubscriptionRequestDetails for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscriptionRequestDetails +func (c *DataZone) GetSubscriptionRequestDetails(input *GetSubscriptionRequestDetailsInput) (*GetSubscriptionRequestDetailsOutput, error) { + req, out := c.GetSubscriptionRequestDetailsRequest(input) + return out, req.Send() +} + +// GetSubscriptionRequestDetailsWithContext is the same as GetSubscriptionRequestDetails with the addition of +// the ability to pass a context and additional request options. +// +// See GetSubscriptionRequestDetails 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 *DataZone) GetSubscriptionRequestDetailsWithContext(ctx aws.Context, input *GetSubscriptionRequestDetailsInput, opts ...request.Option) (*GetSubscriptionRequestDetailsOutput, error) { + req, out := c.GetSubscriptionRequestDetailsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSubscriptionTarget = "GetSubscriptionTarget" + +// GetSubscriptionTargetRequest generates a "aws/request.Request" representing the +// client's request for the GetSubscriptionTarget 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 GetSubscriptionTarget for more information on using the GetSubscriptionTarget +// 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 GetSubscriptionTargetRequest method. +// req, resp := client.GetSubscriptionTargetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscriptionTarget +func (c *DataZone) GetSubscriptionTargetRequest(input *GetSubscriptionTargetInput) (req *request.Request, output *GetSubscriptionTargetOutput) { + op := &request.Operation{ + Name: opGetSubscriptionTarget, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets/{identifier}", + } + + if input == nil { + input = &GetSubscriptionTargetInput{} + } + + output = &GetSubscriptionTargetOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSubscriptionTarget API operation for Amazon DataZone. +// +// Gets the subscription target in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetSubscriptionTarget for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetSubscriptionTarget +func (c *DataZone) GetSubscriptionTarget(input *GetSubscriptionTargetInput) (*GetSubscriptionTargetOutput, error) { + req, out := c.GetSubscriptionTargetRequest(input) + return out, req.Send() +} + +// GetSubscriptionTargetWithContext is the same as GetSubscriptionTarget with the addition of +// the ability to pass a context and additional request options. +// +// See GetSubscriptionTarget 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 *DataZone) GetSubscriptionTargetWithContext(ctx aws.Context, input *GetSubscriptionTargetInput, opts ...request.Option) (*GetSubscriptionTargetOutput, error) { + req, out := c.GetSubscriptionTargetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetUserProfile = "GetUserProfile" + +// GetUserProfileRequest generates a "aws/request.Request" representing the +// client's request for the GetUserProfile 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 GetUserProfile for more information on using the GetUserProfile +// 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 GetUserProfileRequest method. +// req, resp := client.GetUserProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetUserProfile +func (c *DataZone) GetUserProfileRequest(input *GetUserProfileInput) (req *request.Request, output *GetUserProfileOutput) { + op := &request.Operation{ + Name: opGetUserProfile, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/user-profiles/{userIdentifier}", + } + + if input == nil { + input = &GetUserProfileInput{} + } + + output = &GetUserProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetUserProfile API operation for Amazon DataZone. +// +// Gets a user profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation GetUserProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/GetUserProfile +func (c *DataZone) GetUserProfile(input *GetUserProfileInput) (*GetUserProfileOutput, error) { + req, out := c.GetUserProfileRequest(input) + return out, req.Send() +} + +// GetUserProfileWithContext is the same as GetUserProfile with the addition of +// the ability to pass a context and additional request options. +// +// See GetUserProfile 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 *DataZone) GetUserProfileWithContext(ctx aws.Context, input *GetUserProfileInput, opts ...request.Option) (*GetUserProfileOutput, error) { + req, out := c.GetUserProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListAssetRevisions = "ListAssetRevisions" + +// ListAssetRevisionsRequest generates a "aws/request.Request" representing the +// client's request for the ListAssetRevisions 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 ListAssetRevisions for more information on using the ListAssetRevisions +// 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 ListAssetRevisionsRequest method. +// req, resp := client.ListAssetRevisionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListAssetRevisions +func (c *DataZone) ListAssetRevisionsRequest(input *ListAssetRevisionsInput) (req *request.Request, output *ListAssetRevisionsOutput) { + op := &request.Operation{ + Name: opListAssetRevisions, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/assets/{identifier}/revisions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAssetRevisionsInput{} + } + + output = &ListAssetRevisionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAssetRevisions API operation for Amazon DataZone. +// +// Lists the revisions for the asset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListAssetRevisions for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListAssetRevisions +func (c *DataZone) ListAssetRevisions(input *ListAssetRevisionsInput) (*ListAssetRevisionsOutput, error) { + req, out := c.ListAssetRevisionsRequest(input) + return out, req.Send() +} + +// ListAssetRevisionsWithContext is the same as ListAssetRevisions with the addition of +// the ability to pass a context and additional request options. +// +// See ListAssetRevisions 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 *DataZone) ListAssetRevisionsWithContext(ctx aws.Context, input *ListAssetRevisionsInput, opts ...request.Option) (*ListAssetRevisionsOutput, error) { + req, out := c.ListAssetRevisionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAssetRevisionsPages iterates over the pages of a ListAssetRevisions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAssetRevisions 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 ListAssetRevisions operation. +// pageNum := 0 +// err := client.ListAssetRevisionsPages(params, +// func(page *datazone.ListAssetRevisionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListAssetRevisionsPages(input *ListAssetRevisionsInput, fn func(*ListAssetRevisionsOutput, bool) bool) error { + return c.ListAssetRevisionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAssetRevisionsPagesWithContext same as ListAssetRevisionsPages 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 *DataZone) ListAssetRevisionsPagesWithContext(ctx aws.Context, input *ListAssetRevisionsInput, fn func(*ListAssetRevisionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAssetRevisionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAssetRevisionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAssetRevisionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSourceRunActivities = "ListDataSourceRunActivities" + +// ListDataSourceRunActivitiesRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSourceRunActivities 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 ListDataSourceRunActivities for more information on using the ListDataSourceRunActivities +// 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 ListDataSourceRunActivitiesRequest method. +// req, resp := client.ListDataSourceRunActivitiesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDataSourceRunActivities +func (c *DataZone) ListDataSourceRunActivitiesRequest(input *ListDataSourceRunActivitiesInput) (req *request.Request, output *ListDataSourceRunActivitiesOutput) { + op := &request.Operation{ + Name: opListDataSourceRunActivities, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/data-source-runs/{identifier}/activities", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDataSourceRunActivitiesInput{} + } + + output = &ListDataSourceRunActivitiesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSourceRunActivities API operation for Amazon DataZone. +// +// Lists data source run activities. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListDataSourceRunActivities for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDataSourceRunActivities +func (c *DataZone) ListDataSourceRunActivities(input *ListDataSourceRunActivitiesInput) (*ListDataSourceRunActivitiesOutput, error) { + req, out := c.ListDataSourceRunActivitiesRequest(input) + return out, req.Send() +} + +// ListDataSourceRunActivitiesWithContext is the same as ListDataSourceRunActivities with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSourceRunActivities 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 *DataZone) ListDataSourceRunActivitiesWithContext(ctx aws.Context, input *ListDataSourceRunActivitiesInput, opts ...request.Option) (*ListDataSourceRunActivitiesOutput, error) { + req, out := c.ListDataSourceRunActivitiesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDataSourceRunActivitiesPages iterates over the pages of a ListDataSourceRunActivities operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSourceRunActivities 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 ListDataSourceRunActivities operation. +// pageNum := 0 +// err := client.ListDataSourceRunActivitiesPages(params, +// func(page *datazone.ListDataSourceRunActivitiesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListDataSourceRunActivitiesPages(input *ListDataSourceRunActivitiesInput, fn func(*ListDataSourceRunActivitiesOutput, bool) bool) error { + return c.ListDataSourceRunActivitiesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourceRunActivitiesPagesWithContext same as ListDataSourceRunActivitiesPages 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 *DataZone) ListDataSourceRunActivitiesPagesWithContext(ctx aws.Context, input *ListDataSourceRunActivitiesInput, fn func(*ListDataSourceRunActivitiesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourceRunActivitiesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourceRunActivitiesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourceRunActivitiesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSourceRuns = "ListDataSourceRuns" + +// ListDataSourceRunsRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSourceRuns 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 ListDataSourceRuns for more information on using the ListDataSourceRuns +// 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 ListDataSourceRunsRequest method. +// req, resp := client.ListDataSourceRunsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDataSourceRuns +func (c *DataZone) ListDataSourceRunsRequest(input *ListDataSourceRunsInput) (req *request.Request, output *ListDataSourceRunsOutput) { + op := &request.Operation{ + Name: opListDataSourceRuns, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources/{dataSourceIdentifier}/runs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDataSourceRunsInput{} + } + + output = &ListDataSourceRunsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSourceRuns API operation for Amazon DataZone. +// +// Lists data source runs in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListDataSourceRuns for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDataSourceRuns +func (c *DataZone) ListDataSourceRuns(input *ListDataSourceRunsInput) (*ListDataSourceRunsOutput, error) { + req, out := c.ListDataSourceRunsRequest(input) + return out, req.Send() +} + +// ListDataSourceRunsWithContext is the same as ListDataSourceRuns with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSourceRuns 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 *DataZone) ListDataSourceRunsWithContext(ctx aws.Context, input *ListDataSourceRunsInput, opts ...request.Option) (*ListDataSourceRunsOutput, error) { + req, out := c.ListDataSourceRunsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDataSourceRunsPages iterates over the pages of a ListDataSourceRuns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSourceRuns 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 ListDataSourceRuns operation. +// pageNum := 0 +// err := client.ListDataSourceRunsPages(params, +// func(page *datazone.ListDataSourceRunsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListDataSourceRunsPages(input *ListDataSourceRunsInput, fn func(*ListDataSourceRunsOutput, bool) bool) error { + return c.ListDataSourceRunsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourceRunsPagesWithContext same as ListDataSourceRunsPages 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 *DataZone) ListDataSourceRunsPagesWithContext(ctx aws.Context, input *ListDataSourceRunsInput, fn func(*ListDataSourceRunsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourceRunsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourceRunsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourceRunsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSources = "ListDataSources" + +// ListDataSourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSources 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 ListDataSources for more information on using the ListDataSources +// 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 ListDataSourcesRequest method. +// req, resp := client.ListDataSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDataSources +func (c *DataZone) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { + op := &request.Operation{ + Name: opListDataSources, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDataSourcesInput{} + } + + output = &ListDataSourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSources API operation for Amazon DataZone. +// +// Lists data sources in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListDataSources for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDataSources +func (c *DataZone) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + return out, req.Send() +} + +// ListDataSourcesWithContext is the same as ListDataSources with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSources 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 *DataZone) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDataSourcesPages iterates over the pages of a ListDataSources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSources 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 ListDataSources operation. +// pageNum := 0 +// err := client.ListDataSourcesPages(params, +// func(page *datazone.ListDataSourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListDataSourcesPages(input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool) error { + return c.ListDataSourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourcesPagesWithContext same as ListDataSourcesPages 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 *DataZone) ListDataSourcesPagesWithContext(ctx aws.Context, input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDomains = "ListDomains" + +// ListDomainsRequest generates a "aws/request.Request" representing the +// client's request for the ListDomains 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 ListDomains for more information on using the ListDomains +// 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 ListDomainsRequest method. +// req, resp := client.ListDomainsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDomains +func (c *DataZone) ListDomainsRequest(input *ListDomainsInput) (req *request.Request, output *ListDomainsOutput) { + op := &request.Operation{ + Name: opListDomains, + HTTPMethod: "GET", + HTTPPath: "/v2/domains", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDomainsInput{} + } + + output = &ListDomainsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDomains API operation for Amazon DataZone. +// +// Lists Amazon DataZone domains. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListDomains for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListDomains +func (c *DataZone) ListDomains(input *ListDomainsInput) (*ListDomainsOutput, error) { + req, out := c.ListDomainsRequest(input) + return out, req.Send() +} + +// ListDomainsWithContext is the same as ListDomains with the addition of +// the ability to pass a context and additional request options. +// +// See ListDomains 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 *DataZone) ListDomainsWithContext(ctx aws.Context, input *ListDomainsInput, opts ...request.Option) (*ListDomainsOutput, error) { + req, out := c.ListDomainsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDomainsPages iterates over the pages of a ListDomains operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDomains 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 ListDomains operation. +// pageNum := 0 +// err := client.ListDomainsPages(params, +// func(page *datazone.ListDomainsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListDomainsPages(input *ListDomainsInput, fn func(*ListDomainsOutput, bool) bool) error { + return c.ListDomainsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDomainsPagesWithContext same as ListDomainsPages 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 *DataZone) ListDomainsPagesWithContext(ctx aws.Context, input *ListDomainsInput, fn func(*ListDomainsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDomainsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDomainsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDomainsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironmentBlueprintConfigurations = "ListEnvironmentBlueprintConfigurations" + +// ListEnvironmentBlueprintConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironmentBlueprintConfigurations 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 ListEnvironmentBlueprintConfigurations for more information on using the ListEnvironmentBlueprintConfigurations +// 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 ListEnvironmentBlueprintConfigurationsRequest method. +// req, resp := client.ListEnvironmentBlueprintConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironmentBlueprintConfigurations +func (c *DataZone) ListEnvironmentBlueprintConfigurationsRequest(input *ListEnvironmentBlueprintConfigurationsInput) (req *request.Request, output *ListEnvironmentBlueprintConfigurationsOutput) { + op := &request.Operation{ + Name: opListEnvironmentBlueprintConfigurations, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-blueprint-configurations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentBlueprintConfigurationsInput{} + } + + output = &ListEnvironmentBlueprintConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironmentBlueprintConfigurations API operation for Amazon DataZone. +// +// Lists blueprint configurations for a Amazon DataZone environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListEnvironmentBlueprintConfigurations for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironmentBlueprintConfigurations +func (c *DataZone) ListEnvironmentBlueprintConfigurations(input *ListEnvironmentBlueprintConfigurationsInput) (*ListEnvironmentBlueprintConfigurationsOutput, error) { + req, out := c.ListEnvironmentBlueprintConfigurationsRequest(input) + return out, req.Send() +} + +// ListEnvironmentBlueprintConfigurationsWithContext is the same as ListEnvironmentBlueprintConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironmentBlueprintConfigurations 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 *DataZone) ListEnvironmentBlueprintConfigurationsWithContext(ctx aws.Context, input *ListEnvironmentBlueprintConfigurationsInput, opts ...request.Option) (*ListEnvironmentBlueprintConfigurationsOutput, error) { + req, out := c.ListEnvironmentBlueprintConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentBlueprintConfigurationsPages iterates over the pages of a ListEnvironmentBlueprintConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironmentBlueprintConfigurations 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 ListEnvironmentBlueprintConfigurations operation. +// pageNum := 0 +// err := client.ListEnvironmentBlueprintConfigurationsPages(params, +// func(page *datazone.ListEnvironmentBlueprintConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListEnvironmentBlueprintConfigurationsPages(input *ListEnvironmentBlueprintConfigurationsInput, fn func(*ListEnvironmentBlueprintConfigurationsOutput, bool) bool) error { + return c.ListEnvironmentBlueprintConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentBlueprintConfigurationsPagesWithContext same as ListEnvironmentBlueprintConfigurationsPages 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 *DataZone) ListEnvironmentBlueprintConfigurationsPagesWithContext(ctx aws.Context, input *ListEnvironmentBlueprintConfigurationsInput, fn func(*ListEnvironmentBlueprintConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentBlueprintConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentBlueprintConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentBlueprintConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironmentBlueprints = "ListEnvironmentBlueprints" + +// ListEnvironmentBlueprintsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironmentBlueprints 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 ListEnvironmentBlueprints for more information on using the ListEnvironmentBlueprints +// 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 ListEnvironmentBlueprintsRequest method. +// req, resp := client.ListEnvironmentBlueprintsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironmentBlueprints +func (c *DataZone) ListEnvironmentBlueprintsRequest(input *ListEnvironmentBlueprintsInput) (req *request.Request, output *ListEnvironmentBlueprintsOutput) { + op := &request.Operation{ + Name: opListEnvironmentBlueprints, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-blueprints", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentBlueprintsInput{} + } + + output = &ListEnvironmentBlueprintsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironmentBlueprints API operation for Amazon DataZone. +// +// Lists blueprints in an Amazon DataZone environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListEnvironmentBlueprints for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironmentBlueprints +func (c *DataZone) ListEnvironmentBlueprints(input *ListEnvironmentBlueprintsInput) (*ListEnvironmentBlueprintsOutput, error) { + req, out := c.ListEnvironmentBlueprintsRequest(input) + return out, req.Send() +} + +// ListEnvironmentBlueprintsWithContext is the same as ListEnvironmentBlueprints with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironmentBlueprints 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 *DataZone) ListEnvironmentBlueprintsWithContext(ctx aws.Context, input *ListEnvironmentBlueprintsInput, opts ...request.Option) (*ListEnvironmentBlueprintsOutput, error) { + req, out := c.ListEnvironmentBlueprintsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentBlueprintsPages iterates over the pages of a ListEnvironmentBlueprints operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironmentBlueprints 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 ListEnvironmentBlueprints operation. +// pageNum := 0 +// err := client.ListEnvironmentBlueprintsPages(params, +// func(page *datazone.ListEnvironmentBlueprintsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListEnvironmentBlueprintsPages(input *ListEnvironmentBlueprintsInput, fn func(*ListEnvironmentBlueprintsOutput, bool) bool) error { + return c.ListEnvironmentBlueprintsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentBlueprintsPagesWithContext same as ListEnvironmentBlueprintsPages 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 *DataZone) ListEnvironmentBlueprintsPagesWithContext(ctx aws.Context, input *ListEnvironmentBlueprintsInput, fn func(*ListEnvironmentBlueprintsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentBlueprintsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentBlueprintsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentBlueprintsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironmentProfiles = "ListEnvironmentProfiles" + +// ListEnvironmentProfilesRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironmentProfiles 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 ListEnvironmentProfiles for more information on using the ListEnvironmentProfiles +// 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 ListEnvironmentProfilesRequest method. +// req, resp := client.ListEnvironmentProfilesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironmentProfiles +func (c *DataZone) ListEnvironmentProfilesRequest(input *ListEnvironmentProfilesInput) (req *request.Request, output *ListEnvironmentProfilesOutput) { + op := &request.Operation{ + Name: opListEnvironmentProfiles, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-profiles", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentProfilesInput{} + } + + output = &ListEnvironmentProfilesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironmentProfiles API operation for Amazon DataZone. +// +// Lists Amazon DataZone environment profiles. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListEnvironmentProfiles for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironmentProfiles +func (c *DataZone) ListEnvironmentProfiles(input *ListEnvironmentProfilesInput) (*ListEnvironmentProfilesOutput, error) { + req, out := c.ListEnvironmentProfilesRequest(input) + return out, req.Send() +} + +// ListEnvironmentProfilesWithContext is the same as ListEnvironmentProfiles with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironmentProfiles 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 *DataZone) ListEnvironmentProfilesWithContext(ctx aws.Context, input *ListEnvironmentProfilesInput, opts ...request.Option) (*ListEnvironmentProfilesOutput, error) { + req, out := c.ListEnvironmentProfilesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentProfilesPages iterates over the pages of a ListEnvironmentProfiles operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironmentProfiles 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 ListEnvironmentProfiles operation. +// pageNum := 0 +// err := client.ListEnvironmentProfilesPages(params, +// func(page *datazone.ListEnvironmentProfilesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListEnvironmentProfilesPages(input *ListEnvironmentProfilesInput, fn func(*ListEnvironmentProfilesOutput, bool) bool) error { + return c.ListEnvironmentProfilesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentProfilesPagesWithContext same as ListEnvironmentProfilesPages 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 *DataZone) ListEnvironmentProfilesPagesWithContext(ctx aws.Context, input *ListEnvironmentProfilesInput, fn func(*ListEnvironmentProfilesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentProfilesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentProfilesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentProfilesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironments = "ListEnvironments" + +// ListEnvironmentsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironments 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 ListEnvironments for more information on using the ListEnvironments +// 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 ListEnvironmentsRequest method. +// req, resp := client.ListEnvironmentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironments +func (c *DataZone) ListEnvironmentsRequest(input *ListEnvironmentsInput) (req *request.Request, output *ListEnvironmentsOutput) { + op := &request.Operation{ + Name: opListEnvironments, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environments", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentsInput{} + } + + output = &ListEnvironmentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironments API operation for Amazon DataZone. +// +// Lists Amazon DataZone environments. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListEnvironments for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListEnvironments +func (c *DataZone) ListEnvironments(input *ListEnvironmentsInput) (*ListEnvironmentsOutput, error) { + req, out := c.ListEnvironmentsRequest(input) + return out, req.Send() +} + +// ListEnvironmentsWithContext is the same as ListEnvironments with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironments 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 *DataZone) ListEnvironmentsWithContext(ctx aws.Context, input *ListEnvironmentsInput, opts ...request.Option) (*ListEnvironmentsOutput, error) { + req, out := c.ListEnvironmentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentsPages iterates over the pages of a ListEnvironments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironments 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 ListEnvironments operation. +// pageNum := 0 +// err := client.ListEnvironmentsPages(params, +// func(page *datazone.ListEnvironmentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListEnvironmentsPages(input *ListEnvironmentsInput, fn func(*ListEnvironmentsOutput, bool) bool) error { + return c.ListEnvironmentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentsPagesWithContext same as ListEnvironmentsPages 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 *DataZone) ListEnvironmentsPagesWithContext(ctx aws.Context, input *ListEnvironmentsInput, fn func(*ListEnvironmentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListNotifications = "ListNotifications" + +// ListNotificationsRequest generates a "aws/request.Request" representing the +// client's request for the ListNotifications 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 ListNotifications for more information on using the ListNotifications +// 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 ListNotificationsRequest method. +// req, resp := client.ListNotificationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListNotifications +func (c *DataZone) ListNotificationsRequest(input *ListNotificationsInput) (req *request.Request, output *ListNotificationsOutput) { + op := &request.Operation{ + Name: opListNotifications, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/notifications", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListNotificationsInput{} + } + + output = &ListNotificationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListNotifications API operation for Amazon DataZone. +// +// Lists all Amazon DataZone notifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListNotifications for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListNotifications +func (c *DataZone) ListNotifications(input *ListNotificationsInput) (*ListNotificationsOutput, error) { + req, out := c.ListNotificationsRequest(input) + return out, req.Send() +} + +// ListNotificationsWithContext is the same as ListNotifications with the addition of +// the ability to pass a context and additional request options. +// +// See ListNotifications 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 *DataZone) ListNotificationsWithContext(ctx aws.Context, input *ListNotificationsInput, opts ...request.Option) (*ListNotificationsOutput, error) { + req, out := c.ListNotificationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListNotificationsPages iterates over the pages of a ListNotifications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListNotifications 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 ListNotifications operation. +// pageNum := 0 +// err := client.ListNotificationsPages(params, +// func(page *datazone.ListNotificationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListNotificationsPages(input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool) error { + return c.ListNotificationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListNotificationsPagesWithContext same as ListNotificationsPages 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 *DataZone) ListNotificationsPagesWithContext(ctx aws.Context, input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListNotificationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListNotificationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListNotificationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProjectMemberships = "ListProjectMemberships" + +// ListProjectMembershipsRequest generates a "aws/request.Request" representing the +// client's request for the ListProjectMemberships 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 ListProjectMemberships for more information on using the ListProjectMemberships +// 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 ListProjectMembershipsRequest method. +// req, resp := client.ListProjectMembershipsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListProjectMemberships +func (c *DataZone) ListProjectMembershipsRequest(input *ListProjectMembershipsInput) (req *request.Request, output *ListProjectMembershipsOutput) { + op := &request.Operation{ + Name: opListProjectMemberships, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/projects/{projectIdentifier}/memberships", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListProjectMembershipsInput{} + } + + output = &ListProjectMembershipsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListProjectMemberships API operation for Amazon DataZone. +// +// Lists all members of the specified project. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListProjectMemberships for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListProjectMemberships +func (c *DataZone) ListProjectMemberships(input *ListProjectMembershipsInput) (*ListProjectMembershipsOutput, error) { + req, out := c.ListProjectMembershipsRequest(input) + return out, req.Send() +} + +// ListProjectMembershipsWithContext is the same as ListProjectMemberships with the addition of +// the ability to pass a context and additional request options. +// +// See ListProjectMemberships 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 *DataZone) ListProjectMembershipsWithContext(ctx aws.Context, input *ListProjectMembershipsInput, opts ...request.Option) (*ListProjectMembershipsOutput, error) { + req, out := c.ListProjectMembershipsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListProjectMembershipsPages iterates over the pages of a ListProjectMemberships operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProjectMemberships 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 ListProjectMemberships operation. +// pageNum := 0 +// err := client.ListProjectMembershipsPages(params, +// func(page *datazone.ListProjectMembershipsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListProjectMembershipsPages(input *ListProjectMembershipsInput, fn func(*ListProjectMembershipsOutput, bool) bool) error { + return c.ListProjectMembershipsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListProjectMembershipsPagesWithContext same as ListProjectMembershipsPages 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 *DataZone) ListProjectMembershipsPagesWithContext(ctx aws.Context, input *ListProjectMembershipsInput, fn func(*ListProjectMembershipsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProjectMembershipsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProjectMembershipsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProjectMembershipsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProjects = "ListProjects" + +// ListProjectsRequest generates a "aws/request.Request" representing the +// client's request for the ListProjects 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 ListProjects for more information on using the ListProjects +// 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 ListProjectsRequest method. +// req, resp := client.ListProjectsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListProjects +func (c *DataZone) ListProjectsRequest(input *ListProjectsInput) (req *request.Request, output *ListProjectsOutput) { + op := &request.Operation{ + Name: opListProjects, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/projects", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListProjectsInput{} + } + + output = &ListProjectsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListProjects API operation for Amazon DataZone. +// +// Lists Amazon DataZone projects. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListProjects for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListProjects +func (c *DataZone) ListProjects(input *ListProjectsInput) (*ListProjectsOutput, error) { + req, out := c.ListProjectsRequest(input) + return out, req.Send() +} + +// ListProjectsWithContext is the same as ListProjects with the addition of +// the ability to pass a context and additional request options. +// +// See ListProjects 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 *DataZone) ListProjectsWithContext(ctx aws.Context, input *ListProjectsInput, opts ...request.Option) (*ListProjectsOutput, error) { + req, out := c.ListProjectsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListProjectsPages iterates over the pages of a ListProjects operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProjects 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 ListProjects operation. +// pageNum := 0 +// err := client.ListProjectsPages(params, +// func(page *datazone.ListProjectsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListProjectsPages(input *ListProjectsInput, fn func(*ListProjectsOutput, bool) bool) error { + return c.ListProjectsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListProjectsPagesWithContext same as ListProjectsPages 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 *DataZone) ListProjectsPagesWithContext(ctx aws.Context, input *ListProjectsInput, fn func(*ListProjectsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProjectsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProjectsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProjectsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSubscriptionGrants = "ListSubscriptionGrants" + +// ListSubscriptionGrantsRequest generates a "aws/request.Request" representing the +// client's request for the ListSubscriptionGrants 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 ListSubscriptionGrants for more information on using the ListSubscriptionGrants +// 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 ListSubscriptionGrantsRequest method. +// req, resp := client.ListSubscriptionGrantsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptionGrants +func (c *DataZone) ListSubscriptionGrantsRequest(input *ListSubscriptionGrantsInput) (req *request.Request, output *ListSubscriptionGrantsOutput) { + op := &request.Operation{ + Name: opListSubscriptionGrants, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-grants", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSubscriptionGrantsInput{} + } + + output = &ListSubscriptionGrantsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSubscriptionGrants API operation for Amazon DataZone. +// +// Lists subscription grants. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListSubscriptionGrants for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptionGrants +func (c *DataZone) ListSubscriptionGrants(input *ListSubscriptionGrantsInput) (*ListSubscriptionGrantsOutput, error) { + req, out := c.ListSubscriptionGrantsRequest(input) + return out, req.Send() +} + +// ListSubscriptionGrantsWithContext is the same as ListSubscriptionGrants with the addition of +// the ability to pass a context and additional request options. +// +// See ListSubscriptionGrants 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 *DataZone) ListSubscriptionGrantsWithContext(ctx aws.Context, input *ListSubscriptionGrantsInput, opts ...request.Option) (*ListSubscriptionGrantsOutput, error) { + req, out := c.ListSubscriptionGrantsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSubscriptionGrantsPages iterates over the pages of a ListSubscriptionGrants operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSubscriptionGrants 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 ListSubscriptionGrants operation. +// pageNum := 0 +// err := client.ListSubscriptionGrantsPages(params, +// func(page *datazone.ListSubscriptionGrantsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListSubscriptionGrantsPages(input *ListSubscriptionGrantsInput, fn func(*ListSubscriptionGrantsOutput, bool) bool) error { + return c.ListSubscriptionGrantsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSubscriptionGrantsPagesWithContext same as ListSubscriptionGrantsPages 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 *DataZone) ListSubscriptionGrantsPagesWithContext(ctx aws.Context, input *ListSubscriptionGrantsInput, fn func(*ListSubscriptionGrantsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSubscriptionGrantsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSubscriptionGrantsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSubscriptionGrantsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSubscriptionRequests = "ListSubscriptionRequests" + +// ListSubscriptionRequestsRequest generates a "aws/request.Request" representing the +// client's request for the ListSubscriptionRequests 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 ListSubscriptionRequests for more information on using the ListSubscriptionRequests +// 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 ListSubscriptionRequestsRequest method. +// req, resp := client.ListSubscriptionRequestsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptionRequests +func (c *DataZone) ListSubscriptionRequestsRequest(input *ListSubscriptionRequestsInput) (req *request.Request, output *ListSubscriptionRequestsOutput) { + op := &request.Operation{ + Name: opListSubscriptionRequests, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSubscriptionRequestsInput{} + } + + output = &ListSubscriptionRequestsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSubscriptionRequests API operation for Amazon DataZone. +// +// Lists Amazon DataZone subscription requests. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListSubscriptionRequests for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptionRequests +func (c *DataZone) ListSubscriptionRequests(input *ListSubscriptionRequestsInput) (*ListSubscriptionRequestsOutput, error) { + req, out := c.ListSubscriptionRequestsRequest(input) + return out, req.Send() +} + +// ListSubscriptionRequestsWithContext is the same as ListSubscriptionRequests with the addition of +// the ability to pass a context and additional request options. +// +// See ListSubscriptionRequests 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 *DataZone) ListSubscriptionRequestsWithContext(ctx aws.Context, input *ListSubscriptionRequestsInput, opts ...request.Option) (*ListSubscriptionRequestsOutput, error) { + req, out := c.ListSubscriptionRequestsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSubscriptionRequestsPages iterates over the pages of a ListSubscriptionRequests operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSubscriptionRequests 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 ListSubscriptionRequests operation. +// pageNum := 0 +// err := client.ListSubscriptionRequestsPages(params, +// func(page *datazone.ListSubscriptionRequestsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListSubscriptionRequestsPages(input *ListSubscriptionRequestsInput, fn func(*ListSubscriptionRequestsOutput, bool) bool) error { + return c.ListSubscriptionRequestsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSubscriptionRequestsPagesWithContext same as ListSubscriptionRequestsPages 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 *DataZone) ListSubscriptionRequestsPagesWithContext(ctx aws.Context, input *ListSubscriptionRequestsInput, fn func(*ListSubscriptionRequestsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSubscriptionRequestsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSubscriptionRequestsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSubscriptionRequestsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSubscriptionTargets = "ListSubscriptionTargets" + +// ListSubscriptionTargetsRequest generates a "aws/request.Request" representing the +// client's request for the ListSubscriptionTargets 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 ListSubscriptionTargets for more information on using the ListSubscriptionTargets +// 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 ListSubscriptionTargetsRequest method. +// req, resp := client.ListSubscriptionTargetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptionTargets +func (c *DataZone) ListSubscriptionTargetsRequest(input *ListSubscriptionTargetsInput) (req *request.Request, output *ListSubscriptionTargetsOutput) { + op := &request.Operation{ + Name: opListSubscriptionTargets, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSubscriptionTargetsInput{} + } + + output = &ListSubscriptionTargetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSubscriptionTargets API operation for Amazon DataZone. +// +// Lists subscription targets in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListSubscriptionTargets for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptionTargets +func (c *DataZone) ListSubscriptionTargets(input *ListSubscriptionTargetsInput) (*ListSubscriptionTargetsOutput, error) { + req, out := c.ListSubscriptionTargetsRequest(input) + return out, req.Send() +} + +// ListSubscriptionTargetsWithContext is the same as ListSubscriptionTargets with the addition of +// the ability to pass a context and additional request options. +// +// See ListSubscriptionTargets 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 *DataZone) ListSubscriptionTargetsWithContext(ctx aws.Context, input *ListSubscriptionTargetsInput, opts ...request.Option) (*ListSubscriptionTargetsOutput, error) { + req, out := c.ListSubscriptionTargetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSubscriptionTargetsPages iterates over the pages of a ListSubscriptionTargets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSubscriptionTargets 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 ListSubscriptionTargets operation. +// pageNum := 0 +// err := client.ListSubscriptionTargetsPages(params, +// func(page *datazone.ListSubscriptionTargetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListSubscriptionTargetsPages(input *ListSubscriptionTargetsInput, fn func(*ListSubscriptionTargetsOutput, bool) bool) error { + return c.ListSubscriptionTargetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSubscriptionTargetsPagesWithContext same as ListSubscriptionTargetsPages 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 *DataZone) ListSubscriptionTargetsPagesWithContext(ctx aws.Context, input *ListSubscriptionTargetsInput, fn func(*ListSubscriptionTargetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSubscriptionTargetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSubscriptionTargetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSubscriptionTargetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSubscriptions = "ListSubscriptions" + +// ListSubscriptionsRequest generates a "aws/request.Request" representing the +// client's request for the ListSubscriptions 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 ListSubscriptions for more information on using the ListSubscriptions +// 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 ListSubscriptionsRequest method. +// req, resp := client.ListSubscriptionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptions +func (c *DataZone) ListSubscriptionsRequest(input *ListSubscriptionsInput) (req *request.Request, output *ListSubscriptionsOutput) { + op := &request.Operation{ + Name: opListSubscriptions, + HTTPMethod: "GET", + HTTPPath: "/v2/domains/{domainIdentifier}/subscriptions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSubscriptionsInput{} + } + + output = &ListSubscriptionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSubscriptions API operation for Amazon DataZone. +// +// Lists subscriptions in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListSubscriptions for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListSubscriptions +func (c *DataZone) ListSubscriptions(input *ListSubscriptionsInput) (*ListSubscriptionsOutput, error) { + req, out := c.ListSubscriptionsRequest(input) + return out, req.Send() +} + +// ListSubscriptionsWithContext is the same as ListSubscriptions with the addition of +// the ability to pass a context and additional request options. +// +// See ListSubscriptions 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 *DataZone) ListSubscriptionsWithContext(ctx aws.Context, input *ListSubscriptionsInput, opts ...request.Option) (*ListSubscriptionsOutput, error) { + req, out := c.ListSubscriptionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSubscriptionsPages iterates over the pages of a ListSubscriptions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSubscriptions 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 ListSubscriptions operation. +// pageNum := 0 +// err := client.ListSubscriptionsPages(params, +// func(page *datazone.ListSubscriptionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) ListSubscriptionsPages(input *ListSubscriptionsInput, fn func(*ListSubscriptionsOutput, bool) bool) error { + return c.ListSubscriptionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSubscriptionsPagesWithContext same as ListSubscriptionsPages 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 *DataZone) ListSubscriptionsPagesWithContext(ctx aws.Context, input *ListSubscriptionsInput, fn func(*ListSubscriptionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSubscriptionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSubscriptionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSubscriptionsOutput), !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/datazone-2018-05-10/ListTagsForResource +func (c *DataZone) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon DataZone. +// +// Lists tags for the specified resource in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/ListTagsForResource +func (c *DataZone) 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 *DataZone) 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 opPutEnvironmentBlueprintConfiguration = "PutEnvironmentBlueprintConfiguration" + +// PutEnvironmentBlueprintConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the PutEnvironmentBlueprintConfiguration 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 PutEnvironmentBlueprintConfiguration for more information on using the PutEnvironmentBlueprintConfiguration +// 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 PutEnvironmentBlueprintConfigurationRequest method. +// req, resp := client.PutEnvironmentBlueprintConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/PutEnvironmentBlueprintConfiguration +func (c *DataZone) PutEnvironmentBlueprintConfigurationRequest(input *PutEnvironmentBlueprintConfigurationInput) (req *request.Request, output *PutEnvironmentBlueprintConfigurationOutput) { + op := &request.Operation{ + Name: opPutEnvironmentBlueprintConfiguration, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-blueprint-configurations/{environmentBlueprintIdentifier}", + } + + if input == nil { + input = &PutEnvironmentBlueprintConfigurationInput{} + } + + output = &PutEnvironmentBlueprintConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutEnvironmentBlueprintConfiguration API operation for Amazon DataZone. +// +// Writes the configuration for the specified environment blueprint in Amazon +// DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation PutEnvironmentBlueprintConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/PutEnvironmentBlueprintConfiguration +func (c *DataZone) PutEnvironmentBlueprintConfiguration(input *PutEnvironmentBlueprintConfigurationInput) (*PutEnvironmentBlueprintConfigurationOutput, error) { + req, out := c.PutEnvironmentBlueprintConfigurationRequest(input) + return out, req.Send() +} + +// PutEnvironmentBlueprintConfigurationWithContext is the same as PutEnvironmentBlueprintConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See PutEnvironmentBlueprintConfiguration 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 *DataZone) PutEnvironmentBlueprintConfigurationWithContext(ctx aws.Context, input *PutEnvironmentBlueprintConfigurationInput, opts ...request.Option) (*PutEnvironmentBlueprintConfigurationOutput, error) { + req, out := c.PutEnvironmentBlueprintConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRejectPredictions = "RejectPredictions" + +// RejectPredictionsRequest generates a "aws/request.Request" representing the +// client's request for the RejectPredictions 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 RejectPredictions for more information on using the RejectPredictions +// 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 RejectPredictionsRequest method. +// req, resp := client.RejectPredictionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/RejectPredictions +func (c *DataZone) RejectPredictionsRequest(input *RejectPredictionsInput) (req *request.Request, output *RejectPredictionsOutput) { + op := &request.Operation{ + Name: opRejectPredictions, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/assets/{identifier}/reject-predictions", + } + + if input == nil { + input = &RejectPredictionsInput{} + } + + output = &RejectPredictionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// RejectPredictions API operation for Amazon DataZone. +// +// Rejects automatically generated business-friendly metadata for your Amazon +// DataZone assets. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation RejectPredictions for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/RejectPredictions +func (c *DataZone) RejectPredictions(input *RejectPredictionsInput) (*RejectPredictionsOutput, error) { + req, out := c.RejectPredictionsRequest(input) + return out, req.Send() +} + +// RejectPredictionsWithContext is the same as RejectPredictions with the addition of +// the ability to pass a context and additional request options. +// +// See RejectPredictions 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 *DataZone) RejectPredictionsWithContext(ctx aws.Context, input *RejectPredictionsInput, opts ...request.Option) (*RejectPredictionsOutput, error) { + req, out := c.RejectPredictionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRejectSubscriptionRequest = "RejectSubscriptionRequest" + +// RejectSubscriptionRequestRequest generates a "aws/request.Request" representing the +// client's request for the RejectSubscriptionRequest 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 RejectSubscriptionRequest for more information on using the RejectSubscriptionRequest +// 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 RejectSubscriptionRequestRequest method. +// req, resp := client.RejectSubscriptionRequestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/RejectSubscriptionRequest +func (c *DataZone) RejectSubscriptionRequestRequest(input *RejectSubscriptionRequestInput) (req *request.Request, output *RejectSubscriptionRequestOutput) { + op := &request.Operation{ + Name: opRejectSubscriptionRequest, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests/{identifier}/reject", + } + + if input == nil { + input = &RejectSubscriptionRequestInput{} + } + + output = &RejectSubscriptionRequestOutput{} + req = c.newRequest(op, input, output) + return +} + +// RejectSubscriptionRequest API operation for Amazon DataZone. +// +// Rejects the specified subscription request. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation RejectSubscriptionRequest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/RejectSubscriptionRequest +func (c *DataZone) RejectSubscriptionRequest(input *RejectSubscriptionRequestInput) (*RejectSubscriptionRequestOutput, error) { + req, out := c.RejectSubscriptionRequestRequest(input) + return out, req.Send() +} + +// RejectSubscriptionRequestWithContext is the same as RejectSubscriptionRequest with the addition of +// the ability to pass a context and additional request options. +// +// See RejectSubscriptionRequest 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 *DataZone) RejectSubscriptionRequestWithContext(ctx aws.Context, input *RejectSubscriptionRequestInput, opts ...request.Option) (*RejectSubscriptionRequestOutput, error) { + req, out := c.RejectSubscriptionRequestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRevokeSubscription = "RevokeSubscription" + +// RevokeSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the RevokeSubscription 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 RevokeSubscription for more information on using the RevokeSubscription +// 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 RevokeSubscriptionRequest method. +// req, resp := client.RevokeSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/RevokeSubscription +func (c *DataZone) RevokeSubscriptionRequest(input *RevokeSubscriptionInput) (req *request.Request, output *RevokeSubscriptionOutput) { + op := &request.Operation{ + Name: opRevokeSubscription, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/subscriptions/{identifier}/revoke", + } + + if input == nil { + input = &RevokeSubscriptionInput{} + } + + output = &RevokeSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// RevokeSubscription API operation for Amazon DataZone. +// +// Revokes a specified subscription in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation RevokeSubscription for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/RevokeSubscription +func (c *DataZone) RevokeSubscription(input *RevokeSubscriptionInput) (*RevokeSubscriptionOutput, error) { + req, out := c.RevokeSubscriptionRequest(input) + return out, req.Send() +} + +// RevokeSubscriptionWithContext is the same as RevokeSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See RevokeSubscription 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 *DataZone) RevokeSubscriptionWithContext(ctx aws.Context, input *RevokeSubscriptionInput, opts ...request.Option) (*RevokeSubscriptionOutput, error) { + req, out := c.RevokeSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opSearch = "Search" + +// SearchRequest generates a "aws/request.Request" representing the +// client's request for the Search 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 Search for more information on using the Search +// 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 SearchRequest method. +// req, resp := client.SearchRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/Search +func (c *DataZone) SearchRequest(input *SearchInput) (req *request.Request, output *SearchOutput) { + op := &request.Operation{ + Name: opSearch, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/search", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchInput{} + } + + output = &SearchOutput{} + req = c.newRequest(op, input, output) + return +} + +// Search API operation for Amazon DataZone. +// +// Searches for assets in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation Search for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/Search +func (c *DataZone) Search(input *SearchInput) (*SearchOutput, error) { + req, out := c.SearchRequest(input) + return out, req.Send() +} + +// SearchWithContext is the same as Search with the addition of +// the ability to pass a context and additional request options. +// +// See Search 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 *DataZone) SearchWithContext(ctx aws.Context, input *SearchInput, opts ...request.Option) (*SearchOutput, error) { + req, out := c.SearchRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchPages iterates over the pages of a Search operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See Search 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 Search operation. +// pageNum := 0 +// err := client.SearchPages(params, +// func(page *datazone.SearchOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) SearchPages(input *SearchInput, fn func(*SearchOutput, bool) bool) error { + return c.SearchPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchPagesWithContext same as SearchPages 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 *DataZone) SearchPagesWithContext(ctx aws.Context, input *SearchInput, fn func(*SearchOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchGroupProfiles = "SearchGroupProfiles" + +// SearchGroupProfilesRequest generates a "aws/request.Request" representing the +// client's request for the SearchGroupProfiles 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 SearchGroupProfiles for more information on using the SearchGroupProfiles +// 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 SearchGroupProfilesRequest method. +// req, resp := client.SearchGroupProfilesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchGroupProfiles +func (c *DataZone) SearchGroupProfilesRequest(input *SearchGroupProfilesInput) (req *request.Request, output *SearchGroupProfilesOutput) { + op := &request.Operation{ + Name: opSearchGroupProfiles, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/search-group-profiles", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchGroupProfilesInput{} + } + + output = &SearchGroupProfilesOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchGroupProfiles API operation for Amazon DataZone. +// +// Searches group profiles in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation SearchGroupProfiles for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchGroupProfiles +func (c *DataZone) SearchGroupProfiles(input *SearchGroupProfilesInput) (*SearchGroupProfilesOutput, error) { + req, out := c.SearchGroupProfilesRequest(input) + return out, req.Send() +} + +// SearchGroupProfilesWithContext is the same as SearchGroupProfiles with the addition of +// the ability to pass a context and additional request options. +// +// See SearchGroupProfiles 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 *DataZone) SearchGroupProfilesWithContext(ctx aws.Context, input *SearchGroupProfilesInput, opts ...request.Option) (*SearchGroupProfilesOutput, error) { + req, out := c.SearchGroupProfilesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchGroupProfilesPages iterates over the pages of a SearchGroupProfiles operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchGroupProfiles 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 SearchGroupProfiles operation. +// pageNum := 0 +// err := client.SearchGroupProfilesPages(params, +// func(page *datazone.SearchGroupProfilesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) SearchGroupProfilesPages(input *SearchGroupProfilesInput, fn func(*SearchGroupProfilesOutput, bool) bool) error { + return c.SearchGroupProfilesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchGroupProfilesPagesWithContext same as SearchGroupProfilesPages 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 *DataZone) SearchGroupProfilesPagesWithContext(ctx aws.Context, input *SearchGroupProfilesInput, fn func(*SearchGroupProfilesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchGroupProfilesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchGroupProfilesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchGroupProfilesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchListings = "SearchListings" + +// SearchListingsRequest generates a "aws/request.Request" representing the +// client's request for the SearchListings 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 SearchListings for more information on using the SearchListings +// 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 SearchListingsRequest method. +// req, resp := client.SearchListingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchListings +func (c *DataZone) SearchListingsRequest(input *SearchListingsInput) (req *request.Request, output *SearchListingsOutput) { + op := &request.Operation{ + Name: opSearchListings, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/listings/search", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchListingsInput{} + } + + output = &SearchListingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchListings API operation for Amazon DataZone. +// +// Searches listings in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation SearchListings for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchListings +func (c *DataZone) SearchListings(input *SearchListingsInput) (*SearchListingsOutput, error) { + req, out := c.SearchListingsRequest(input) + return out, req.Send() +} + +// SearchListingsWithContext is the same as SearchListings with the addition of +// the ability to pass a context and additional request options. +// +// See SearchListings 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 *DataZone) SearchListingsWithContext(ctx aws.Context, input *SearchListingsInput, opts ...request.Option) (*SearchListingsOutput, error) { + req, out := c.SearchListingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchListingsPages iterates over the pages of a SearchListings operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchListings 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 SearchListings operation. +// pageNum := 0 +// err := client.SearchListingsPages(params, +// func(page *datazone.SearchListingsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) SearchListingsPages(input *SearchListingsInput, fn func(*SearchListingsOutput, bool) bool) error { + return c.SearchListingsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchListingsPagesWithContext same as SearchListingsPages 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 *DataZone) SearchListingsPagesWithContext(ctx aws.Context, input *SearchListingsInput, fn func(*SearchListingsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchListingsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchListingsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchListingsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchTypes = "SearchTypes" + +// SearchTypesRequest generates a "aws/request.Request" representing the +// client's request for the SearchTypes 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 SearchTypes for more information on using the SearchTypes +// 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 SearchTypesRequest method. +// req, resp := client.SearchTypesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchTypes +func (c *DataZone) SearchTypesRequest(input *SearchTypesInput) (req *request.Request, output *SearchTypesOutput) { + op := &request.Operation{ + Name: opSearchTypes, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/types-search", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchTypesInput{} + } + + output = &SearchTypesOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchTypes API operation for Amazon DataZone. +// +// Searches for types in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation SearchTypes for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchTypes +func (c *DataZone) SearchTypes(input *SearchTypesInput) (*SearchTypesOutput, error) { + req, out := c.SearchTypesRequest(input) + return out, req.Send() +} + +// SearchTypesWithContext is the same as SearchTypes with the addition of +// the ability to pass a context and additional request options. +// +// See SearchTypes 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 *DataZone) SearchTypesWithContext(ctx aws.Context, input *SearchTypesInput, opts ...request.Option) (*SearchTypesOutput, error) { + req, out := c.SearchTypesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchTypesPages iterates over the pages of a SearchTypes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchTypes 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 SearchTypes operation. +// pageNum := 0 +// err := client.SearchTypesPages(params, +// func(page *datazone.SearchTypesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) SearchTypesPages(input *SearchTypesInput, fn func(*SearchTypesOutput, bool) bool) error { + return c.SearchTypesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchTypesPagesWithContext same as SearchTypesPages 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 *DataZone) SearchTypesPagesWithContext(ctx aws.Context, input *SearchTypesInput, fn func(*SearchTypesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchTypesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchTypesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchTypesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchUserProfiles = "SearchUserProfiles" + +// SearchUserProfilesRequest generates a "aws/request.Request" representing the +// client's request for the SearchUserProfiles 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 SearchUserProfiles for more information on using the SearchUserProfiles +// 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 SearchUserProfilesRequest method. +// req, resp := client.SearchUserProfilesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchUserProfiles +func (c *DataZone) SearchUserProfilesRequest(input *SearchUserProfilesInput) (req *request.Request, output *SearchUserProfilesOutput) { + op := &request.Operation{ + Name: opSearchUserProfiles, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/search-user-profiles", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchUserProfilesInput{} + } + + output = &SearchUserProfilesOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchUserProfiles API operation for Amazon DataZone. +// +// Searches user profiles in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation SearchUserProfiles for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/SearchUserProfiles +func (c *DataZone) SearchUserProfiles(input *SearchUserProfilesInput) (*SearchUserProfilesOutput, error) { + req, out := c.SearchUserProfilesRequest(input) + return out, req.Send() +} + +// SearchUserProfilesWithContext is the same as SearchUserProfiles with the addition of +// the ability to pass a context and additional request options. +// +// See SearchUserProfiles 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 *DataZone) SearchUserProfilesWithContext(ctx aws.Context, input *SearchUserProfilesInput, opts ...request.Option) (*SearchUserProfilesOutput, error) { + req, out := c.SearchUserProfilesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchUserProfilesPages iterates over the pages of a SearchUserProfiles operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchUserProfiles 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 SearchUserProfiles operation. +// pageNum := 0 +// err := client.SearchUserProfilesPages(params, +// func(page *datazone.SearchUserProfilesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *DataZone) SearchUserProfilesPages(input *SearchUserProfilesInput, fn func(*SearchUserProfilesOutput, bool) bool) error { + return c.SearchUserProfilesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchUserProfilesPagesWithContext same as SearchUserProfilesPages 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 *DataZone) SearchUserProfilesPagesWithContext(ctx aws.Context, input *SearchUserProfilesInput, fn func(*SearchUserProfilesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchUserProfilesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchUserProfilesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchUserProfilesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opStartDataSourceRun = "StartDataSourceRun" + +// StartDataSourceRunRequest generates a "aws/request.Request" representing the +// client's request for the StartDataSourceRun 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 StartDataSourceRun for more information on using the StartDataSourceRun +// 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 StartDataSourceRunRequest method. +// req, resp := client.StartDataSourceRunRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/StartDataSourceRun +func (c *DataZone) StartDataSourceRunRequest(input *StartDataSourceRunInput) (req *request.Request, output *StartDataSourceRunOutput) { + op := &request.Operation{ + Name: opStartDataSourceRun, + HTTPMethod: "POST", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources/{dataSourceIdentifier}/runs", + } + + if input == nil { + input = &StartDataSourceRunInput{} + } + + output = &StartDataSourceRunOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDataSourceRun API operation for Amazon DataZone. +// +// Start the run of the specified data source in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation StartDataSourceRun for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/StartDataSourceRun +func (c *DataZone) StartDataSourceRun(input *StartDataSourceRunInput) (*StartDataSourceRunOutput, error) { + req, out := c.StartDataSourceRunRequest(input) + return out, req.Send() +} + +// StartDataSourceRunWithContext is the same as StartDataSourceRun with the addition of +// the ability to pass a context and additional request options. +// +// See StartDataSourceRun 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 *DataZone) StartDataSourceRunWithContext(ctx aws.Context, input *StartDataSourceRunInput, opts ...request.Option) (*StartDataSourceRunOutput, error) { + req, out := c.StartDataSourceRunRequest(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/datazone-2018-05-10/TagResource +func (c *DataZone) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Amazon DataZone. +// +// Tags a resource in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/TagResource +func (c *DataZone) 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 *DataZone) 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/datazone-2018-05-10/UntagResource +func (c *DataZone) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon DataZone. +// +// Untags a resource in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UntagResource +func (c *DataZone) 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 *DataZone) 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 opUpdateDataSource = "UpdateDataSource" + +// UpdateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSource 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 UpdateDataSource for more information on using the UpdateDataSource +// 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 UpdateDataSourceRequest method. +// req, resp := client.UpdateDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateDataSource +func (c *DataZone) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { + op := &request.Operation{ + Name: opUpdateDataSource, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/data-sources/{identifier}", + } + + if input == nil { + input = &UpdateDataSourceInput{} + } + + output = &UpdateDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDataSource API operation for Amazon DataZone. +// +// Updates the specified data source in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateDataSource for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateDataSource +func (c *DataZone) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + return out, req.Send() +} + +// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDataSource 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 *DataZone) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDomain = "UpdateDomain" + +// UpdateDomainRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDomain 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 UpdateDomain for more information on using the UpdateDomain +// 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 UpdateDomainRequest method. +// req, resp := client.UpdateDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateDomain +func (c *DataZone) UpdateDomainRequest(input *UpdateDomainInput) (req *request.Request, output *UpdateDomainOutput) { + op := &request.Operation{ + Name: opUpdateDomain, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{identifier}", + } + + if input == nil { + input = &UpdateDomainInput{} + } + + output = &UpdateDomainOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDomain API operation for Amazon DataZone. +// +// Updates a Amazon DataZone domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateDomain for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateDomain +func (c *DataZone) UpdateDomain(input *UpdateDomainInput) (*UpdateDomainOutput, error) { + req, out := c.UpdateDomainRequest(input) + return out, req.Send() +} + +// UpdateDomainWithContext is the same as UpdateDomain with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDomain 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 *DataZone) UpdateDomainWithContext(ctx aws.Context, input *UpdateDomainInput, opts ...request.Option) (*UpdateDomainOutput, error) { + req, out := c.UpdateDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironment = "UpdateEnvironment" + +// UpdateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironment 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 UpdateEnvironment for more information on using the UpdateEnvironment +// 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 UpdateEnvironmentRequest method. +// req, resp := client.UpdateEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateEnvironment +func (c *DataZone) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *UpdateEnvironmentOutput) { + op := &request.Operation{ + Name: opUpdateEnvironment, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{identifier}", + } + + if input == nil { + input = &UpdateEnvironmentInput{} + } + + output = &UpdateEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnvironment API operation for Amazon DataZone. +// +// Updates the specified environment in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateEnvironment for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateEnvironment +func (c *DataZone) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironment 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 *DataZone) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironmentProfile = "UpdateEnvironmentProfile" + +// UpdateEnvironmentProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironmentProfile 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 UpdateEnvironmentProfile for more information on using the UpdateEnvironmentProfile +// 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 UpdateEnvironmentProfileRequest method. +// req, resp := client.UpdateEnvironmentProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateEnvironmentProfile +func (c *DataZone) UpdateEnvironmentProfileRequest(input *UpdateEnvironmentProfileInput) (req *request.Request, output *UpdateEnvironmentProfileOutput) { + op := &request.Operation{ + Name: opUpdateEnvironmentProfile, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/environment-profiles/{identifier}", + } + + if input == nil { + input = &UpdateEnvironmentProfileInput{} + } + + output = &UpdateEnvironmentProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnvironmentProfile API operation for Amazon DataZone. +// +// Updates the specified environment profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateEnvironmentProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateEnvironmentProfile +func (c *DataZone) UpdateEnvironmentProfile(input *UpdateEnvironmentProfileInput) (*UpdateEnvironmentProfileOutput, error) { + req, out := c.UpdateEnvironmentProfileRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentProfileWithContext is the same as UpdateEnvironmentProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironmentProfile 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 *DataZone) UpdateEnvironmentProfileWithContext(ctx aws.Context, input *UpdateEnvironmentProfileInput, opts ...request.Option) (*UpdateEnvironmentProfileOutput, error) { + req, out := c.UpdateEnvironmentProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateGlossary = "UpdateGlossary" + +// UpdateGlossaryRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGlossary 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 UpdateGlossary for more information on using the UpdateGlossary +// 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 UpdateGlossaryRequest method. +// req, resp := client.UpdateGlossaryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateGlossary +func (c *DataZone) UpdateGlossaryRequest(input *UpdateGlossaryInput) (req *request.Request, output *UpdateGlossaryOutput) { + op := &request.Operation{ + Name: opUpdateGlossary, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/glossaries/{identifier}", + } + + if input == nil { + input = &UpdateGlossaryInput{} + } + + output = &UpdateGlossaryOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateGlossary API operation for Amazon DataZone. +// +// Updates the business glossary in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateGlossary for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateGlossary +func (c *DataZone) UpdateGlossary(input *UpdateGlossaryInput) (*UpdateGlossaryOutput, error) { + req, out := c.UpdateGlossaryRequest(input) + return out, req.Send() +} + +// UpdateGlossaryWithContext is the same as UpdateGlossary with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateGlossary 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 *DataZone) UpdateGlossaryWithContext(ctx aws.Context, input *UpdateGlossaryInput, opts ...request.Option) (*UpdateGlossaryOutput, error) { + req, out := c.UpdateGlossaryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateGlossaryTerm = "UpdateGlossaryTerm" + +// UpdateGlossaryTermRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGlossaryTerm 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 UpdateGlossaryTerm for more information on using the UpdateGlossaryTerm +// 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 UpdateGlossaryTermRequest method. +// req, resp := client.UpdateGlossaryTermRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateGlossaryTerm +func (c *DataZone) UpdateGlossaryTermRequest(input *UpdateGlossaryTermInput) (req *request.Request, output *UpdateGlossaryTermOutput) { + op := &request.Operation{ + Name: opUpdateGlossaryTerm, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/glossary-terms/{identifier}", + } + + if input == nil { + input = &UpdateGlossaryTermInput{} + } + + output = &UpdateGlossaryTermOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateGlossaryTerm API operation for Amazon DataZone. +// +// Updates a business glossary term in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateGlossaryTerm for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateGlossaryTerm +func (c *DataZone) UpdateGlossaryTerm(input *UpdateGlossaryTermInput) (*UpdateGlossaryTermOutput, error) { + req, out := c.UpdateGlossaryTermRequest(input) + return out, req.Send() +} + +// UpdateGlossaryTermWithContext is the same as UpdateGlossaryTerm with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateGlossaryTerm 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 *DataZone) UpdateGlossaryTermWithContext(ctx aws.Context, input *UpdateGlossaryTermInput, opts ...request.Option) (*UpdateGlossaryTermOutput, error) { + req, out := c.UpdateGlossaryTermRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateGroupProfile = "UpdateGroupProfile" + +// UpdateGroupProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGroupProfile 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 UpdateGroupProfile for more information on using the UpdateGroupProfile +// 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 UpdateGroupProfileRequest method. +// req, resp := client.UpdateGroupProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateGroupProfile +func (c *DataZone) UpdateGroupProfileRequest(input *UpdateGroupProfileInput) (req *request.Request, output *UpdateGroupProfileOutput) { + op := &request.Operation{ + Name: opUpdateGroupProfile, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/group-profiles/{groupIdentifier}", + } + + if input == nil { + input = &UpdateGroupProfileInput{} + } + + output = &UpdateGroupProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateGroupProfile API operation for Amazon DataZone. +// +// Updates the specified group profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateGroupProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateGroupProfile +func (c *DataZone) UpdateGroupProfile(input *UpdateGroupProfileInput) (*UpdateGroupProfileOutput, error) { + req, out := c.UpdateGroupProfileRequest(input) + return out, req.Send() +} + +// UpdateGroupProfileWithContext is the same as UpdateGroupProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateGroupProfile 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 *DataZone) UpdateGroupProfileWithContext(ctx aws.Context, input *UpdateGroupProfileInput, opts ...request.Option) (*UpdateGroupProfileOutput, error) { + req, out := c.UpdateGroupProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateProject = "UpdateProject" + +// UpdateProjectRequest generates a "aws/request.Request" representing the +// client's request for the UpdateProject 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 UpdateProject for more information on using the UpdateProject +// 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 UpdateProjectRequest method. +// req, resp := client.UpdateProjectRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateProject +func (c *DataZone) UpdateProjectRequest(input *UpdateProjectInput) (req *request.Request, output *UpdateProjectOutput) { + op := &request.Operation{ + Name: opUpdateProject, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/projects/{identifier}", + } + + if input == nil { + input = &UpdateProjectInput{} + } + + output = &UpdateProjectOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateProject API operation for Amazon DataZone. +// +// Updates the specified project in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateProject for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ServiceQuotaExceededException +// The request has exceeded the specified service quota. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateProject +func (c *DataZone) UpdateProject(input *UpdateProjectInput) (*UpdateProjectOutput, error) { + req, out := c.UpdateProjectRequest(input) + return out, req.Send() +} + +// UpdateProjectWithContext is the same as UpdateProject with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateProject 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 *DataZone) UpdateProjectWithContext(ctx aws.Context, input *UpdateProjectInput, opts ...request.Option) (*UpdateProjectOutput, error) { + req, out := c.UpdateProjectRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSubscriptionGrantStatus = "UpdateSubscriptionGrantStatus" + +// UpdateSubscriptionGrantStatusRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSubscriptionGrantStatus 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 UpdateSubscriptionGrantStatus for more information on using the UpdateSubscriptionGrantStatus +// 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 UpdateSubscriptionGrantStatusRequest method. +// req, resp := client.UpdateSubscriptionGrantStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateSubscriptionGrantStatus +func (c *DataZone) UpdateSubscriptionGrantStatusRequest(input *UpdateSubscriptionGrantStatusInput) (req *request.Request, output *UpdateSubscriptionGrantStatusOutput) { + op := &request.Operation{ + Name: opUpdateSubscriptionGrantStatus, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-grants/{identifier}/status/{assetIdentifier}", + } + + if input == nil { + input = &UpdateSubscriptionGrantStatusInput{} + } + + output = &UpdateSubscriptionGrantStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSubscriptionGrantStatus API operation for Amazon DataZone. +// +// Updates the status of the specified subscription grant status in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateSubscriptionGrantStatus for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateSubscriptionGrantStatus +func (c *DataZone) UpdateSubscriptionGrantStatus(input *UpdateSubscriptionGrantStatusInput) (*UpdateSubscriptionGrantStatusOutput, error) { + req, out := c.UpdateSubscriptionGrantStatusRequest(input) + return out, req.Send() +} + +// UpdateSubscriptionGrantStatusWithContext is the same as UpdateSubscriptionGrantStatus with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSubscriptionGrantStatus 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 *DataZone) UpdateSubscriptionGrantStatusWithContext(ctx aws.Context, input *UpdateSubscriptionGrantStatusInput, opts ...request.Option) (*UpdateSubscriptionGrantStatusOutput, error) { + req, out := c.UpdateSubscriptionGrantStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSubscriptionRequest = "UpdateSubscriptionRequest" + +// UpdateSubscriptionRequestRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSubscriptionRequest 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 UpdateSubscriptionRequest for more information on using the UpdateSubscriptionRequest +// 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 UpdateSubscriptionRequestRequest method. +// req, resp := client.UpdateSubscriptionRequestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateSubscriptionRequest +func (c *DataZone) UpdateSubscriptionRequestRequest(input *UpdateSubscriptionRequestInput) (req *request.Request, output *UpdateSubscriptionRequestOutput) { + op := &request.Operation{ + Name: opUpdateSubscriptionRequest, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/subscription-requests/{identifier}", + } + + if input == nil { + input = &UpdateSubscriptionRequestInput{} + } + + output = &UpdateSubscriptionRequestOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSubscriptionRequest API operation for Amazon DataZone. +// +// Updates a specified subscription request in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateSubscriptionRequest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateSubscriptionRequest +func (c *DataZone) UpdateSubscriptionRequest(input *UpdateSubscriptionRequestInput) (*UpdateSubscriptionRequestOutput, error) { + req, out := c.UpdateSubscriptionRequestRequest(input) + return out, req.Send() +} + +// UpdateSubscriptionRequestWithContext is the same as UpdateSubscriptionRequest with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSubscriptionRequest 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 *DataZone) UpdateSubscriptionRequestWithContext(ctx aws.Context, input *UpdateSubscriptionRequestInput, opts ...request.Option) (*UpdateSubscriptionRequestOutput, error) { + req, out := c.UpdateSubscriptionRequestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSubscriptionTarget = "UpdateSubscriptionTarget" + +// UpdateSubscriptionTargetRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSubscriptionTarget 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 UpdateSubscriptionTarget for more information on using the UpdateSubscriptionTarget +// 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 UpdateSubscriptionTargetRequest method. +// req, resp := client.UpdateSubscriptionTargetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateSubscriptionTarget +func (c *DataZone) UpdateSubscriptionTargetRequest(input *UpdateSubscriptionTargetInput) (req *request.Request, output *UpdateSubscriptionTargetOutput) { + op := &request.Operation{ + Name: opUpdateSubscriptionTarget, + HTTPMethod: "PATCH", + HTTPPath: "/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/subscription-targets/{identifier}", + } + + if input == nil { + input = &UpdateSubscriptionTargetInput{} + } + + output = &UpdateSubscriptionTargetOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSubscriptionTarget API operation for Amazon DataZone. +// +// Updates the specified subscription target in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateSubscriptionTarget for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// There is a conflict while performing this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateSubscriptionTarget +func (c *DataZone) UpdateSubscriptionTarget(input *UpdateSubscriptionTargetInput) (*UpdateSubscriptionTargetOutput, error) { + req, out := c.UpdateSubscriptionTargetRequest(input) + return out, req.Send() +} + +// UpdateSubscriptionTargetWithContext is the same as UpdateSubscriptionTarget with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSubscriptionTarget 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 *DataZone) UpdateSubscriptionTargetWithContext(ctx aws.Context, input *UpdateSubscriptionTargetInput, opts ...request.Option) (*UpdateSubscriptionTargetOutput, error) { + req, out := c.UpdateSubscriptionTargetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateUserProfile = "UpdateUserProfile" + +// UpdateUserProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateUserProfile 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 UpdateUserProfile for more information on using the UpdateUserProfile +// 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 UpdateUserProfileRequest method. +// req, resp := client.UpdateUserProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateUserProfile +func (c *DataZone) UpdateUserProfileRequest(input *UpdateUserProfileInput) (req *request.Request, output *UpdateUserProfileOutput) { + op := &request.Operation{ + Name: opUpdateUserProfile, + HTTPMethod: "PUT", + HTTPPath: "/v2/domains/{domainIdentifier}/user-profiles/{userIdentifier}", + } + + if input == nil { + input = &UpdateUserProfileInput{} + } + + output = &UpdateUserProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateUserProfile API operation for Amazon DataZone. +// +// Updates the specified user profile in Amazon DataZone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DataZone's +// API operation UpdateUserProfile for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request has failed because of an unknown error, exception or failure. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the Amazon Web Services +// service. +// +// - UnauthorizedException +// You do not have permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateUserProfile +func (c *DataZone) UpdateUserProfile(input *UpdateUserProfileInput) (*UpdateUserProfileOutput, error) { + req, out := c.UpdateUserProfileRequest(input) + return out, req.Send() +} + +// UpdateUserProfileWithContext is the same as UpdateUserProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateUserProfile 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 *DataZone) UpdateUserProfileWithContext(ctx aws.Context, input *UpdateUserProfileInput, opts ...request.Option) (*UpdateUserProfileOutput, error) { + req, out := c.UpdateUserProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Specifies the prediction (aka, the automatically generated piece of metadata) +// and the target (for example, a column name) that can be accepted. +type AcceptChoice struct { + _ struct{} `type:"structure"` + + // Specifies the prediction (aka, the automatically generated piece of metadata) + // that can be accepted. + PredictionChoice *int64 `locationName:"predictionChoice" type:"integer"` + + // Specifies the target (for example, a column name) where a prediction can + // be accepted. + PredictionTarget *string `locationName:"predictionTarget" 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 AcceptChoice) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptChoice) GoString() string { + return s.String() +} + +// SetPredictionChoice sets the PredictionChoice field's value. +func (s *AcceptChoice) SetPredictionChoice(v int64) *AcceptChoice { + s.PredictionChoice = &v + return s +} + +// SetPredictionTarget sets the PredictionTarget field's value. +func (s *AcceptChoice) SetPredictionTarget(v string) *AcceptChoice { + s.PredictionTarget = &v + return s +} + +type AcceptPredictionsInput struct { + _ struct{} `type:"structure"` + + AcceptChoices []*AcceptChoice `locationName:"acceptChoices" type:"list"` + + // Specifies the rule (or the conditions) under which a prediction can be accepted. + AcceptRule *AcceptRule `locationName:"acceptRule" type:"structure"` + + // A unique, case-sensitive identifier to ensure idempotency of the request. + // This field is automatically populated if not provided. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + Revision *string `location:"querystring" locationName:"revision" 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 AcceptPredictionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptPredictionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AcceptPredictionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AcceptPredictionsInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Revision != nil && len(*s.Revision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAcceptChoices sets the AcceptChoices field's value. +func (s *AcceptPredictionsInput) SetAcceptChoices(v []*AcceptChoice) *AcceptPredictionsInput { + s.AcceptChoices = v + return s +} + +// SetAcceptRule sets the AcceptRule field's value. +func (s *AcceptPredictionsInput) SetAcceptRule(v *AcceptRule) *AcceptPredictionsInput { + s.AcceptRule = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *AcceptPredictionsInput) SetClientToken(v string) *AcceptPredictionsInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *AcceptPredictionsInput) SetDomainIdentifier(v string) *AcceptPredictionsInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *AcceptPredictionsInput) SetIdentifier(v string) *AcceptPredictionsInput { + s.Identifier = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *AcceptPredictionsInput) SetRevision(v string) *AcceptPredictionsInput { + s.Revision = &v + return s +} + +type AcceptPredictionsOutput struct { + _ struct{} `type:"structure"` + + // AssetId is a required field + AssetId *string `locationName:"assetId" type:"string" required:"true"` + + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Revision is a required field + Revision *string `locationName:"revision" 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 AcceptPredictionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptPredictionsOutput) GoString() string { + return s.String() +} + +// SetAssetId sets the AssetId field's value. +func (s *AcceptPredictionsOutput) SetAssetId(v string) *AcceptPredictionsOutput { + s.AssetId = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *AcceptPredictionsOutput) SetDomainId(v string) *AcceptPredictionsOutput { + s.DomainId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *AcceptPredictionsOutput) SetRevision(v string) *AcceptPredictionsOutput { + s.Revision = &v + return s +} + +// Specifies the rule and the threshold under which a prediction can be accepted. +type AcceptRule struct { + _ struct{} `type:"structure"` + + // Specifies whether you want to accept the top prediction for all targets or + // none. + Rule *string `locationName:"rule" type:"string" enum:"AcceptRuleBehavior"` + + // The confidence score that specifies the condition at which a prediction can + // be accepted. + Threshold *float64 `locationName:"threshold" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptRule) GoString() string { + return s.String() +} + +// SetRule sets the Rule field's value. +func (s *AcceptRule) SetRule(v string) *AcceptRule { + s.Rule = &v + return s +} + +// SetThreshold sets the Threshold field's value. +func (s *AcceptRule) SetThreshold(v float64) *AcceptRule { + s.Threshold = &v + return s +} + +type AcceptSubscriptionRequestInput struct { + _ struct{} `type:"structure"` + + // A description that specifies the reason for accepting the specified subscription + // request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AcceptSubscriptionRequestInput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The Amazon DataZone domain where the specified subscription request is being + // accepted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The unique identifier of the subscription request that is to be accepted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptSubscriptionRequestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptSubscriptionRequestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AcceptSubscriptionRequestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AcceptSubscriptionRequestInput"} + if s.DecisionComment != nil && len(*s.DecisionComment) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DecisionComment", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *AcceptSubscriptionRequestInput) SetDecisionComment(v string) *AcceptSubscriptionRequestInput { + s.DecisionComment = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *AcceptSubscriptionRequestInput) SetDomainIdentifier(v string) *AcceptSubscriptionRequestInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *AcceptSubscriptionRequestInput) SetIdentifier(v string) *AcceptSubscriptionRequestInput { + s.Identifier = &v + return s +} + +type AcceptSubscriptionRequestOutput struct { + _ struct{} `type:"structure"` + + // The timestamp that specifies when the subscription request was accepted. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // Specifies the Amazon DataZone user that accepted the specified subscription + // request. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // Specifies the reason for accepting the subscription request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AcceptSubscriptionRequestOutput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The unique identifier of the Amazon DataZone domain where the specified subscription + // request was accepted. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription request. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // Specifies the reason for requesting a subscription to the asset. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AcceptSubscriptionRequestOutput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // Specifes the ID of the Amazon DataZone user who reviewed the subscription + // request. + ReviewerId *string `locationName:"reviewerId" type:"string"` + + // Specifies the status of the subscription request. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionRequestStatus"` + + // Specifies the asset for which the subscription request was created. + // + // SubscribedListings is a required field + SubscribedListings []*SubscribedListing `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // Specifies the Amazon DataZone users who are subscribed to the asset specified + // in the subscription request. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipal `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` + + // Specifies the timestamp when subscription request was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // Specifies the Amazon DataZone user who updated the subscription request. + UpdatedBy *string `locationName:"updatedBy" 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 AcceptSubscriptionRequestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptSubscriptionRequestOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AcceptSubscriptionRequestOutput) SetCreatedAt(v time.Time) *AcceptSubscriptionRequestOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *AcceptSubscriptionRequestOutput) SetCreatedBy(v string) *AcceptSubscriptionRequestOutput { + s.CreatedBy = &v + return s +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *AcceptSubscriptionRequestOutput) SetDecisionComment(v string) *AcceptSubscriptionRequestOutput { + s.DecisionComment = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *AcceptSubscriptionRequestOutput) SetDomainId(v string) *AcceptSubscriptionRequestOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AcceptSubscriptionRequestOutput) SetId(v string) *AcceptSubscriptionRequestOutput { + s.Id = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *AcceptSubscriptionRequestOutput) SetRequestReason(v string) *AcceptSubscriptionRequestOutput { + s.RequestReason = &v + return s +} + +// SetReviewerId sets the ReviewerId field's value. +func (s *AcceptSubscriptionRequestOutput) SetReviewerId(v string) *AcceptSubscriptionRequestOutput { + s.ReviewerId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AcceptSubscriptionRequestOutput) SetStatus(v string) *AcceptSubscriptionRequestOutput { + s.Status = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *AcceptSubscriptionRequestOutput) SetSubscribedListings(v []*SubscribedListing) *AcceptSubscriptionRequestOutput { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *AcceptSubscriptionRequestOutput) SetSubscribedPrincipals(v []*SubscribedPrincipal) *AcceptSubscriptionRequestOutput { + s.SubscribedPrincipals = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AcceptSubscriptionRequestOutput) SetUpdatedAt(v time.Time) *AcceptSubscriptionRequestOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *AcceptSubscriptionRequestOutput) SetUpdatedBy(v string) *AcceptSubscriptionRequestOutput { + s.UpdatedBy = &v + return s +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A Amazon DataZone inventory asset. +type AssetItem struct { + _ struct{} `type:"structure"` + + // The additional attributes of a Amazon DataZone inventory asset. + AdditionalAttributes *AssetItemAdditionalAttributes `locationName:"additionalAttributes" type:"structure"` + + // The timestamp of when the Amazon DataZone inventory asset was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the inventory asset. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of an Amazon DataZone inventory asset. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetItem's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the inventory asset + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The external identifier of the Amazon DataZone inventory asset. + // + // ExternalIdentifier is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetItem's + // String and GoString methods. + ExternalIdentifier *string `locationName:"externalIdentifier" min:"1" type:"string" sensitive:"true"` + + // The timestamp of when the first revision of the inventory asset was created. + FirstRevisionCreatedAt *time.Time `locationName:"firstRevisionCreatedAt" type:"timestamp"` + + // The Amazon DataZone user who created the first revision of the inventory + // asset. + FirstRevisionCreatedBy *string `locationName:"firstRevisionCreatedBy" type:"string"` + + // The glossary terms attached to the Amazon DataZone inventory asset. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // the identifier of the Amazon DataZone inventory asset. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" type:"string" required:"true"` + + // The name of the Amazon DataZone inventory asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetItem's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the Amazon DataZone project that owns the inventory asset. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The identifier of the asset type of the specified Amazon DataZone inventory + // asset. + // + // TypeIdentifier is a required field + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string" required:"true"` + + // The revision of the inventory asset type. + // + // TypeRevision is a required field + TypeRevision *string `locationName:"typeRevision" 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 AssetItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetItem) GoString() string { + return s.String() +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *AssetItem) SetAdditionalAttributes(v *AssetItemAdditionalAttributes) *AssetItem { + s.AdditionalAttributes = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AssetItem) SetCreatedAt(v time.Time) *AssetItem { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *AssetItem) SetCreatedBy(v string) *AssetItem { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AssetItem) SetDescription(v string) *AssetItem { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *AssetItem) SetDomainId(v string) *AssetItem { + s.DomainId = &v + return s +} + +// SetExternalIdentifier sets the ExternalIdentifier field's value. +func (s *AssetItem) SetExternalIdentifier(v string) *AssetItem { + s.ExternalIdentifier = &v + return s +} + +// SetFirstRevisionCreatedAt sets the FirstRevisionCreatedAt field's value. +func (s *AssetItem) SetFirstRevisionCreatedAt(v time.Time) *AssetItem { + s.FirstRevisionCreatedAt = &v + return s +} + +// SetFirstRevisionCreatedBy sets the FirstRevisionCreatedBy field's value. +func (s *AssetItem) SetFirstRevisionCreatedBy(v string) *AssetItem { + s.FirstRevisionCreatedBy = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *AssetItem) SetGlossaryTerms(v []*string) *AssetItem { + s.GlossaryTerms = v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *AssetItem) SetIdentifier(v string) *AssetItem { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetItem) SetName(v string) *AssetItem { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *AssetItem) SetOwningProjectId(v string) *AssetItem { + s.OwningProjectId = &v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *AssetItem) SetTypeIdentifier(v string) *AssetItem { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *AssetItem) SetTypeRevision(v string) *AssetItem { + s.TypeRevision = &v + return s +} + +// The additional attributes of an inventory asset. +type AssetItemAdditionalAttributes struct { + _ struct{} `type:"structure"` + + // The forms included in the additional attributes of an inventory asset. + FormsOutput []*FormOutput_ `locationName:"formsOutput" type:"list"` + + // The read-only forms included in the additional attributes of an inventory + // asset. + ReadOnlyFormsOutput []*FormOutput_ `locationName:"readOnlyFormsOutput" 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 AssetItemAdditionalAttributes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetItemAdditionalAttributes) GoString() string { + return s.String() +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *AssetItemAdditionalAttributes) SetFormsOutput(v []*FormOutput_) *AssetItemAdditionalAttributes { + s.FormsOutput = v + return s +} + +// SetReadOnlyFormsOutput sets the ReadOnlyFormsOutput field's value. +func (s *AssetItemAdditionalAttributes) SetReadOnlyFormsOutput(v []*FormOutput_) *AssetItemAdditionalAttributes { + s.ReadOnlyFormsOutput = v + return s +} + +// An asset published in an Amazon DataZone catalog. +type AssetListing struct { + _ struct{} `type:"structure"` + + // The identifier of an asset published in an Amazon DataZone catalog. + AssetId *string `locationName:"assetId" type:"string"` + + // The revision of an asset published in an Amazon DataZone catalog. + AssetRevision *string `locationName:"assetRevision" min:"1" type:"string"` + + // The type of an asset published in an Amazon DataZone catalog. + AssetType *string `locationName:"assetType" min:"1" type:"string"` + + // The timestamp of when an asset published in an Amazon DataZone catalog was + // created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The metadata forms attached to an asset published in an Amazon DataZone catalog. + Forms *string `locationName:"forms" type:"string"` + + // The glossary terms attached to an asset published in an Amazon DataZone catalog. + GlossaryTerms []*DetailedGlossaryTerm `locationName:"glossaryTerms" type:"list"` + + // The identifier of the project where an asset published in an Amazon DataZone + // catalog exists. + OwningProjectId *string `locationName:"owningProjectId" 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 AssetListing) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetListing) GoString() string { + return s.String() +} + +// SetAssetId sets the AssetId field's value. +func (s *AssetListing) SetAssetId(v string) *AssetListing { + s.AssetId = &v + return s +} + +// SetAssetRevision sets the AssetRevision field's value. +func (s *AssetListing) SetAssetRevision(v string) *AssetListing { + s.AssetRevision = &v + return s +} + +// SetAssetType sets the AssetType field's value. +func (s *AssetListing) SetAssetType(v string) *AssetListing { + s.AssetType = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AssetListing) SetCreatedAt(v time.Time) *AssetListing { + s.CreatedAt = &v + return s +} + +// SetForms sets the Forms field's value. +func (s *AssetListing) SetForms(v string) *AssetListing { + s.Forms = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *AssetListing) SetGlossaryTerms(v []*DetailedGlossaryTerm) *AssetListing { + s.GlossaryTerms = v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *AssetListing) SetOwningProjectId(v string) *AssetListing { + s.OwningProjectId = &v + return s +} + +// The details of an asset published in an Amazon DataZone catalog. +type AssetListingDetails struct { + _ struct{} `type:"structure"` + + // The identifier of an asset published in an Amazon DataZone catalog. + // + // ListingId is a required field + ListingId *string `locationName:"listingId" type:"string" required:"true"` + + // The status of an asset published in an Amazon DataZone catalog. + // + // ListingStatus is a required field + ListingStatus *string `locationName:"listingStatus" type:"string" required:"true" enum:"ListingStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetListingDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetListingDetails) GoString() string { + return s.String() +} + +// SetListingId sets the ListingId field's value. +func (s *AssetListingDetails) SetListingId(v string) *AssetListingDetails { + s.ListingId = &v + return s +} + +// SetListingStatus sets the ListingStatus field's value. +func (s *AssetListingDetails) SetListingStatus(v string) *AssetListingDetails { + s.ListingStatus = &v + return s +} + +// The details of an asset published in an Amazon DataZone catalog. +type AssetListingItem struct { + _ struct{} `type:"structure"` + + // The additional attributes of an asset published in an Amazon DataZone catalog. + AdditionalAttributes *AssetListingItemAdditionalAttributes `locationName:"additionalAttributes" type:"structure"` + + // The timestamp of when an asset published in an Amazon DataZone catalog was + // created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The description of an asset published in an Amazon DataZone catalog. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetListingItem's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the inventory asset. + EntityId *string `locationName:"entityId" type:"string"` + + // The revision of the inventory asset. + EntityRevision *string `locationName:"entityRevision" min:"1" type:"string"` + + // The type of the inventory asset. + EntityType *string `locationName:"entityType" min:"1" type:"string"` + + // Glossary terms attached to the inventory asset. + GlossaryTerms []*DetailedGlossaryTerm `locationName:"glossaryTerms" type:"list"` + + // The Amazon DataZone user who created the listing. + ListingCreatedBy *string `locationName:"listingCreatedBy" type:"string"` + + // The identifier of the listing (asset published in Amazon DataZone catalog). + ListingId *string `locationName:"listingId" type:"string"` + + // The revision of the listing (asset published in Amazon DataZone catalog). + ListingRevision *string `locationName:"listingRevision" min:"1" type:"string"` + + // The Amazon DataZone user who updated the listing. + ListingUpdatedBy *string `locationName:"listingUpdatedBy" type:"string"` + + // The name of the inventory asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetListingItem's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The identifier of the project that owns the inventory asset. + OwningProjectId *string `locationName:"owningProjectId" 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 AssetListingItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetListingItem) GoString() string { + return s.String() +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *AssetListingItem) SetAdditionalAttributes(v *AssetListingItemAdditionalAttributes) *AssetListingItem { + s.AdditionalAttributes = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AssetListingItem) SetCreatedAt(v time.Time) *AssetListingItem { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AssetListingItem) SetDescription(v string) *AssetListingItem { + s.Description = &v + return s +} + +// SetEntityId sets the EntityId field's value. +func (s *AssetListingItem) SetEntityId(v string) *AssetListingItem { + s.EntityId = &v + return s +} + +// SetEntityRevision sets the EntityRevision field's value. +func (s *AssetListingItem) SetEntityRevision(v string) *AssetListingItem { + s.EntityRevision = &v + return s +} + +// SetEntityType sets the EntityType field's value. +func (s *AssetListingItem) SetEntityType(v string) *AssetListingItem { + s.EntityType = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *AssetListingItem) SetGlossaryTerms(v []*DetailedGlossaryTerm) *AssetListingItem { + s.GlossaryTerms = v + return s +} + +// SetListingCreatedBy sets the ListingCreatedBy field's value. +func (s *AssetListingItem) SetListingCreatedBy(v string) *AssetListingItem { + s.ListingCreatedBy = &v + return s +} + +// SetListingId sets the ListingId field's value. +func (s *AssetListingItem) SetListingId(v string) *AssetListingItem { + s.ListingId = &v + return s +} + +// SetListingRevision sets the ListingRevision field's value. +func (s *AssetListingItem) SetListingRevision(v string) *AssetListingItem { + s.ListingRevision = &v + return s +} + +// SetListingUpdatedBy sets the ListingUpdatedBy field's value. +func (s *AssetListingItem) SetListingUpdatedBy(v string) *AssetListingItem { + s.ListingUpdatedBy = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetListingItem) SetName(v string) *AssetListingItem { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *AssetListingItem) SetOwningProjectId(v string) *AssetListingItem { + s.OwningProjectId = &v + return s +} + +// Additional attributes of an inventory asset. +type AssetListingItemAdditionalAttributes struct { + _ struct{} `type:"structure"` + + // The metadata forms that form additional attributes of the metadata asset. + Forms *string `locationName:"forms" 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 AssetListingItemAdditionalAttributes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetListingItemAdditionalAttributes) GoString() string { + return s.String() +} + +// SetForms sets the Forms field's value. +func (s *AssetListingItemAdditionalAttributes) SetForms(v string) *AssetListingItemAdditionalAttributes { + s.Forms = &v + return s +} + +// The revision of an inventory asset. +type AssetRevision struct { + _ struct{} `type:"structure"` + + // The timestamp of when an inventory asset revison was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the asset revision. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The Amazon DataZone user who created the inventory asset. + DomainId *string `locationName:"domainId" type:"string"` + + // The identifier of the inventory asset revision. + Id *string `locationName:"id" type:"string"` + + // The revision details of the inventory asset. + Revision *string `locationName:"revision" 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 AssetRevision) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetRevision) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AssetRevision) SetCreatedAt(v time.Time) *AssetRevision { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *AssetRevision) SetCreatedBy(v string) *AssetRevision { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *AssetRevision) SetDomainId(v string) *AssetRevision { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AssetRevision) SetId(v string) *AssetRevision { + s.Id = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *AssetRevision) SetRevision(v string) *AssetRevision { + s.Revision = &v + return s +} + +type AssetTargetNameMap struct { + _ struct{} `type:"structure"` + + // The identifier of the inventory asset. + // + // AssetId is a required field + AssetId *string `locationName:"assetId" type:"string" required:"true"` + + // The target name in the asset target name map. + // + // TargetName is a required field + TargetName *string `locationName:"targetName" 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 AssetTargetNameMap) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetTargetNameMap) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetTargetNameMap) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetTargetNameMap"} + if s.AssetId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetId")) + } + if s.TargetName == nil { + invalidParams.Add(request.NewErrParamRequired("TargetName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetId sets the AssetId field's value. +func (s *AssetTargetNameMap) SetAssetId(v string) *AssetTargetNameMap { + s.AssetId = &v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *AssetTargetNameMap) SetTargetName(v string) *AssetTargetNameMap { + s.TargetName = &v + return s +} + +// The details of the asset type. +type AssetTypeItem struct { + _ struct{} `type:"structure"` + + // The timestamp of when the asset type was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the asset type. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the asset type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetTypeItem's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain where the asset type exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The forms included in the details of the asset type. + // + // FormsOutput is a required field + FormsOutput map[string]*FormEntryOutput_ `locationName:"formsOutput" type:"map" required:"true"` + + // The name of the asset type. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain where the asset type was originally + // created. + OriginDomainId *string `locationName:"originDomainId" type:"string"` + + // The identifier of the Amazon DataZone project where the asset type exists. + OriginProjectId *string `locationName:"originProjectId" type:"string"` + + // The identifier of the Amazon DataZone project that owns the asset type. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The revision of the asset type. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The timestamp of when the asset type was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the asset type. + UpdatedBy *string `locationName:"updatedBy" 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 AssetTypeItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetTypeItem) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AssetTypeItem) SetCreatedAt(v time.Time) *AssetTypeItem { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *AssetTypeItem) SetCreatedBy(v string) *AssetTypeItem { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AssetTypeItem) SetDescription(v string) *AssetTypeItem { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *AssetTypeItem) SetDomainId(v string) *AssetTypeItem { + s.DomainId = &v + return s +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *AssetTypeItem) SetFormsOutput(v map[string]*FormEntryOutput_) *AssetTypeItem { + s.FormsOutput = v + return s +} + +// SetName sets the Name field's value. +func (s *AssetTypeItem) SetName(v string) *AssetTypeItem { + s.Name = &v + return s +} + +// SetOriginDomainId sets the OriginDomainId field's value. +func (s *AssetTypeItem) SetOriginDomainId(v string) *AssetTypeItem { + s.OriginDomainId = &v + return s +} + +// SetOriginProjectId sets the OriginProjectId field's value. +func (s *AssetTypeItem) SetOriginProjectId(v string) *AssetTypeItem { + s.OriginProjectId = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *AssetTypeItem) SetOwningProjectId(v string) *AssetTypeItem { + s.OwningProjectId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *AssetTypeItem) SetRevision(v string) *AssetTypeItem { + s.Revision = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *AssetTypeItem) SetUpdatedAt(v time.Time) *AssetTypeItem { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *AssetTypeItem) SetUpdatedBy(v string) *AssetTypeItem { + s.UpdatedBy = &v + return s +} + +// The configuration of the business name generation. +type BusinessNameGenerationConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies whether the business name generation is enabled. + Enabled *bool `locationName:"enabled" 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 BusinessNameGenerationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BusinessNameGenerationConfiguration) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *BusinessNameGenerationConfiguration) SetEnabled(v bool) *BusinessNameGenerationConfiguration { + s.Enabled = &v + return s +} + +type CancelSubscriptionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The unique identifier of the Amazon DataZone domain where the subscription + // request is being cancelled. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The unique identifier of the subscription that is being cancelled. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelSubscriptionInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CancelSubscriptionInput) SetDomainIdentifier(v string) *CancelSubscriptionInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *CancelSubscriptionInput) SetIdentifier(v string) *CancelSubscriptionInput { + s.Identifier = &v + return s +} + +type CancelSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The timestamp that specifies when the request to cancel the subscription + // was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // Specifies the Amazon DataZone user who is cancelling the subscription. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The unique identifier of the Amazon DataZone domain where the subscription + // is being cancelled. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // Specifies whether the permissions to the asset are retained after the subscription + // is cancelled. + RetainPermissions *bool `locationName:"retainPermissions" type:"boolean"` + + // The status of the request to cancel the subscription. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionStatus"` + + // The asset to which a subscription is being cancelled. + // + // SubscribedListing is a required field + SubscribedListing *SubscribedListing `locationName:"subscribedListing" type:"structure" required:"true"` + + // The Amazon DataZone user who is made a subscriber to the specified asset + // by the subscription that is being cancelled. + // + // SubscribedPrincipal is a required field + SubscribedPrincipal *SubscribedPrincipal `locationName:"subscribedPrincipal" type:"structure" required:"true"` + + // The unique ID of the subscripton request for the subscription that is being + // cancelled. + SubscriptionRequestId *string `locationName:"subscriptionRequestId" type:"string"` + + // The timestamp that specifies when the subscription was cancelled. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user that cancelled the subscription. + UpdatedBy *string `locationName:"updatedBy" 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 CancelSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelSubscriptionOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CancelSubscriptionOutput) SetCreatedAt(v time.Time) *CancelSubscriptionOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CancelSubscriptionOutput) SetCreatedBy(v string) *CancelSubscriptionOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CancelSubscriptionOutput) SetDomainId(v string) *CancelSubscriptionOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CancelSubscriptionOutput) SetId(v string) *CancelSubscriptionOutput { + s.Id = &v + return s +} + +// SetRetainPermissions sets the RetainPermissions field's value. +func (s *CancelSubscriptionOutput) SetRetainPermissions(v bool) *CancelSubscriptionOutput { + s.RetainPermissions = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CancelSubscriptionOutput) SetStatus(v string) *CancelSubscriptionOutput { + s.Status = &v + return s +} + +// SetSubscribedListing sets the SubscribedListing field's value. +func (s *CancelSubscriptionOutput) SetSubscribedListing(v *SubscribedListing) *CancelSubscriptionOutput { + s.SubscribedListing = v + return s +} + +// SetSubscribedPrincipal sets the SubscribedPrincipal field's value. +func (s *CancelSubscriptionOutput) SetSubscribedPrincipal(v *SubscribedPrincipal) *CancelSubscriptionOutput { + s.SubscribedPrincipal = v + return s +} + +// SetSubscriptionRequestId sets the SubscriptionRequestId field's value. +func (s *CancelSubscriptionOutput) SetSubscriptionRequestId(v string) *CancelSubscriptionOutput { + s.SubscriptionRequestId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CancelSubscriptionOutput) SetUpdatedAt(v time.Time) *CancelSubscriptionOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *CancelSubscriptionOutput) SetUpdatedBy(v string) *CancelSubscriptionOutput { + s.UpdatedBy = &v + return s +} + +// Part of the provisioning properties of the environment blueprint. +type CloudFormationProperties struct { + _ struct{} `type:"structure"` + + // The template URL of the cloud formation provisioning properties of the environment + // blueprint. + // + // TemplateUrl is a required field + TemplateUrl *string `locationName:"templateUrl" 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 CloudFormationProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudFormationProperties) GoString() string { + return s.String() +} + +// SetTemplateUrl sets the TemplateUrl field's value. +func (s *CloudFormationProperties) SetTemplateUrl(v string) *CloudFormationProperties { + s.TemplateUrl = &v + return s +} + +// The details of the parameters for the configurable environment action. +type ConfigurableActionParameter struct { + _ struct{} `type:"structure"` + + // The key of the configurable action parameter. + Key *string `locationName:"key" type:"string"` + + // The value of the configurable action parameter. + Value *string `locationName:"value" 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 ConfigurableActionParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurableActionParameter) GoString() string { + return s.String() +} + +// SetKey sets the Key field's value. +func (s *ConfigurableActionParameter) SetKey(v string) *ConfigurableActionParameter { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *ConfigurableActionParameter) SetValue(v string) *ConfigurableActionParameter { + s.Value = &v + return s +} + +// The configurable action of a Amazon DataZone environment. +type ConfigurableEnvironmentAction struct { + _ struct{} `type:"structure"` + + // The authentication type of a configurable action of a Amazon DataZone environment. + Auth *string `locationName:"auth" type:"string" enum:"ConfigurableActionTypeAuthorization"` + + // The parameters of a configurable action in a Amazon DataZone environment. + // + // Parameters is a required field + Parameters []*ConfigurableActionParameter `locationName:"parameters" type:"list" required:"true"` + + // The type of a configurable action in a Amazon DataZone environment. + // + // Type is a required field + Type *string `locationName:"type" 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 ConfigurableEnvironmentAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurableEnvironmentAction) GoString() string { + return s.String() +} + +// SetAuth sets the Auth field's value. +func (s *ConfigurableEnvironmentAction) SetAuth(v string) *ConfigurableEnvironmentAction { + s.Auth = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *ConfigurableEnvironmentAction) SetParameters(v []*ConfigurableActionParameter) *ConfigurableEnvironmentAction { + s.Parameters = v + return s +} + +// SetType sets the Type field's value. +func (s *ConfigurableEnvironmentAction) SetType(v string) *ConfigurableEnvironmentAction { + s.Type = &v + return s +} + +// There is a conflict while performing this action. +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 CreateAssetInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Asset description. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // Amazon DataZone domain where the asset is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // ExternalIdentifier is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetInput's + // String and GoString methods. + ExternalIdentifier *string `locationName:"externalIdentifier" min:"1" type:"string" sensitive:"true"` + + // Metadata forms attached to the asset. + // + // FormsInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetInput's + // String and GoString methods. + FormsInput []*FormInput_ `locationName:"formsInput" type:"list" sensitive:"true"` + + // Glossary terms attached to the asset. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // Asset name. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The unique identifier of the project that owns this asset. + // + // OwningProjectIdentifier is a required field + OwningProjectIdentifier *string `locationName:"owningProjectIdentifier" type:"string" required:"true"` + + // The configuration of the automatically generated business-friendly metadata + // for the asset. + PredictionConfiguration *PredictionConfiguration `locationName:"predictionConfiguration" type:"structure"` + + // The unique identifier of this asset's type. + // + // TypeIdentifier is a required field + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string" required:"true"` + + // The revision of this asset's type. + TypeRevision *string `locationName:"typeRevision" 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 CreateAssetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAssetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAssetInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.ExternalIdentifier != nil && len(*s.ExternalIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExternalIdentifier", 1)) + } + if s.GlossaryTerms != nil && len(s.GlossaryTerms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlossaryTerms", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OwningProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OwningProjectIdentifier")) + } + if s.TypeIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("TypeIdentifier")) + } + if s.TypeIdentifier != nil && len(*s.TypeIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeIdentifier", 1)) + } + if s.TypeRevision != nil && len(*s.TypeRevision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeRevision", 1)) + } + if s.FormsInput != nil { + for i, v := range s.FormsInput { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FormsInput", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAssetInput) SetClientToken(v string) *CreateAssetInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAssetInput) SetDescription(v string) *CreateAssetInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateAssetInput) SetDomainIdentifier(v string) *CreateAssetInput { + s.DomainIdentifier = &v + return s +} + +// SetExternalIdentifier sets the ExternalIdentifier field's value. +func (s *CreateAssetInput) SetExternalIdentifier(v string) *CreateAssetInput { + s.ExternalIdentifier = &v + return s +} + +// SetFormsInput sets the FormsInput field's value. +func (s *CreateAssetInput) SetFormsInput(v []*FormInput_) *CreateAssetInput { + s.FormsInput = v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateAssetInput) SetGlossaryTerms(v []*string) *CreateAssetInput { + s.GlossaryTerms = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssetInput) SetName(v string) *CreateAssetInput { + s.Name = &v + return s +} + +// SetOwningProjectIdentifier sets the OwningProjectIdentifier field's value. +func (s *CreateAssetInput) SetOwningProjectIdentifier(v string) *CreateAssetInput { + s.OwningProjectIdentifier = &v + return s +} + +// SetPredictionConfiguration sets the PredictionConfiguration field's value. +func (s *CreateAssetInput) SetPredictionConfiguration(v *PredictionConfiguration) *CreateAssetInput { + s.PredictionConfiguration = v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *CreateAssetInput) SetTypeIdentifier(v string) *CreateAssetInput { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *CreateAssetInput) SetTypeRevision(v string) *CreateAssetInput { + s.TypeRevision = &v + return s +} + +type CreateAssetOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the asset was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user that created this asset in the catalog. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the created asset. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the asset was created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // ExternalIdentifier is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetOutput's + // String and GoString methods. + ExternalIdentifier *string `locationName:"externalIdentifier" min:"1" type:"string" sensitive:"true"` + + // The timestamp of when the first revision of the asset took place. + FirstRevisionCreatedAt *time.Time `locationName:"firstRevisionCreatedAt" type:"timestamp"` + + // The Amazon DataZone user that made the first revision of the asset. + FirstRevisionCreatedBy *string `locationName:"firstRevisionCreatedBy" type:"string"` + + // The metadata forms that are attached to the created asset. + // + // FormsOutput is a required field + FormsOutput []*FormOutput_ `locationName:"formsOutput" type:"list" required:"true"` + + // The glossary terms that are attached to the created asset. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The unique identifier of the created asset. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The details of an asset published in an Amazon DataZone catalog. + Listing *AssetListingDetails `locationName:"listing" type:"structure"` + + // The name of the created asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project that owns the created asset. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The configuration of the automatically generated business-friendly metadata + // for the asset. + PredictionConfiguration *PredictionConfiguration `locationName:"predictionConfiguration" type:"structure"` + + // The read-only metadata forms that are attached to the created asset. + ReadOnlyFormsOutput []*FormOutput_ `locationName:"readOnlyFormsOutput" type:"list"` + + // The revision of the asset. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The identifier of the created asset type. + // + // TypeIdentifier is a required field + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string" required:"true"` + + // The revision type of the asset. + // + // TypeRevision is a required field + TypeRevision *string `locationName:"typeRevision" 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 CreateAssetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateAssetOutput) SetCreatedAt(v time.Time) *CreateAssetOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateAssetOutput) SetCreatedBy(v string) *CreateAssetOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAssetOutput) SetDescription(v string) *CreateAssetOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateAssetOutput) SetDomainId(v string) *CreateAssetOutput { + s.DomainId = &v + return s +} + +// SetExternalIdentifier sets the ExternalIdentifier field's value. +func (s *CreateAssetOutput) SetExternalIdentifier(v string) *CreateAssetOutput { + s.ExternalIdentifier = &v + return s +} + +// SetFirstRevisionCreatedAt sets the FirstRevisionCreatedAt field's value. +func (s *CreateAssetOutput) SetFirstRevisionCreatedAt(v time.Time) *CreateAssetOutput { + s.FirstRevisionCreatedAt = &v + return s +} + +// SetFirstRevisionCreatedBy sets the FirstRevisionCreatedBy field's value. +func (s *CreateAssetOutput) SetFirstRevisionCreatedBy(v string) *CreateAssetOutput { + s.FirstRevisionCreatedBy = &v + return s +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *CreateAssetOutput) SetFormsOutput(v []*FormOutput_) *CreateAssetOutput { + s.FormsOutput = v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateAssetOutput) SetGlossaryTerms(v []*string) *CreateAssetOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *CreateAssetOutput) SetId(v string) *CreateAssetOutput { + s.Id = &v + return s +} + +// SetListing sets the Listing field's value. +func (s *CreateAssetOutput) SetListing(v *AssetListingDetails) *CreateAssetOutput { + s.Listing = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssetOutput) SetName(v string) *CreateAssetOutput { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *CreateAssetOutput) SetOwningProjectId(v string) *CreateAssetOutput { + s.OwningProjectId = &v + return s +} + +// SetPredictionConfiguration sets the PredictionConfiguration field's value. +func (s *CreateAssetOutput) SetPredictionConfiguration(v *PredictionConfiguration) *CreateAssetOutput { + s.PredictionConfiguration = v + return s +} + +// SetReadOnlyFormsOutput sets the ReadOnlyFormsOutput field's value. +func (s *CreateAssetOutput) SetReadOnlyFormsOutput(v []*FormOutput_) *CreateAssetOutput { + s.ReadOnlyFormsOutput = v + return s +} + +// SetRevision sets the Revision field's value. +func (s *CreateAssetOutput) SetRevision(v string) *CreateAssetOutput { + s.Revision = &v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *CreateAssetOutput) SetTypeIdentifier(v string) *CreateAssetOutput { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *CreateAssetOutput) SetTypeRevision(v string) *CreateAssetOutput { + s.TypeRevision = &v + return s +} + +type CreateAssetRevisionInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The revised description of the asset. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetRevisionInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The unique identifier of the domain where the asset is being revised. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The metadata forms to be attached to the asset as part of asset revision. + // + // FormsInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetRevisionInput's + // String and GoString methods. + FormsInput []*FormInput_ `locationName:"formsInput" type:"list" sensitive:"true"` + + // The glossary terms to be attached to the asset as part of asset revision. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The identifier of the asset. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // Te revised name of the asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetRevisionInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The configuration of the automatically generated business-friendly metadata + // for the asset. + PredictionConfiguration *PredictionConfiguration `locationName:"predictionConfiguration" type:"structure"` + + // The revision type of the asset. + TypeRevision *string `locationName:"typeRevision" 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 CreateAssetRevisionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetRevisionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAssetRevisionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAssetRevisionInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GlossaryTerms != nil && len(s.GlossaryTerms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlossaryTerms", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TypeRevision != nil && len(*s.TypeRevision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeRevision", 1)) + } + if s.FormsInput != nil { + for i, v := range s.FormsInput { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FormsInput", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAssetRevisionInput) SetClientToken(v string) *CreateAssetRevisionInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAssetRevisionInput) SetDescription(v string) *CreateAssetRevisionInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateAssetRevisionInput) SetDomainIdentifier(v string) *CreateAssetRevisionInput { + s.DomainIdentifier = &v + return s +} + +// SetFormsInput sets the FormsInput field's value. +func (s *CreateAssetRevisionInput) SetFormsInput(v []*FormInput_) *CreateAssetRevisionInput { + s.FormsInput = v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateAssetRevisionInput) SetGlossaryTerms(v []*string) *CreateAssetRevisionInput { + s.GlossaryTerms = v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *CreateAssetRevisionInput) SetIdentifier(v string) *CreateAssetRevisionInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssetRevisionInput) SetName(v string) *CreateAssetRevisionInput { + s.Name = &v + return s +} + +// SetPredictionConfiguration sets the PredictionConfiguration field's value. +func (s *CreateAssetRevisionInput) SetPredictionConfiguration(v *PredictionConfiguration) *CreateAssetRevisionInput { + s.PredictionConfiguration = v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *CreateAssetRevisionInput) SetTypeRevision(v string) *CreateAssetRevisionInput { + s.TypeRevision = &v + return s +} + +type CreateAssetRevisionOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the asset revision occured. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who performed the asset revision. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The revised asset description. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetRevisionOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The unique identifier of the Amazon DataZone domain where the asset was revised. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // ExternalIdentifier is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetRevisionOutput's + // String and GoString methods. + ExternalIdentifier *string `locationName:"externalIdentifier" min:"1" type:"string" sensitive:"true"` + + // The timestamp of when the first asset revision occured. + FirstRevisionCreatedAt *time.Time `locationName:"firstRevisionCreatedAt" type:"timestamp"` + + // The Amazon DataZone user who performed the first asset revision. + FirstRevisionCreatedBy *string `locationName:"firstRevisionCreatedBy" type:"string"` + + // The metadata forms that were attached to the asset as part of the asset revision. + // + // FormsOutput is a required field + FormsOutput []*FormOutput_ `locationName:"formsOutput" type:"list" required:"true"` + + // The glossary terms that were attached to the asset as part of asset revision. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The unique identifier of the asset revision. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The details of an asset published in an Amazon DataZone catalog. + Listing *AssetListingDetails `locationName:"listing" type:"structure"` + + // The revised name of the asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetRevisionOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The unique identifier of the revised project that owns the asset. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The configuration of the automatically generated business-friendly metadata + // for the asset. + PredictionConfiguration *PredictionConfiguration `locationName:"predictionConfiguration" type:"structure"` + + // The read-only metadata forms that were attached to the asset as part of the + // asset revision. + ReadOnlyFormsOutput []*FormOutput_ `locationName:"readOnlyFormsOutput" type:"list"` + + // The revision of the asset. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The identifier of the revision type. + // + // TypeIdentifier is a required field + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string" required:"true"` + + // The revision type of the asset. + // + // TypeRevision is a required field + TypeRevision *string `locationName:"typeRevision" 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 CreateAssetRevisionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetRevisionOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateAssetRevisionOutput) SetCreatedAt(v time.Time) *CreateAssetRevisionOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateAssetRevisionOutput) SetCreatedBy(v string) *CreateAssetRevisionOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAssetRevisionOutput) SetDescription(v string) *CreateAssetRevisionOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateAssetRevisionOutput) SetDomainId(v string) *CreateAssetRevisionOutput { + s.DomainId = &v + return s +} + +// SetExternalIdentifier sets the ExternalIdentifier field's value. +func (s *CreateAssetRevisionOutput) SetExternalIdentifier(v string) *CreateAssetRevisionOutput { + s.ExternalIdentifier = &v + return s +} + +// SetFirstRevisionCreatedAt sets the FirstRevisionCreatedAt field's value. +func (s *CreateAssetRevisionOutput) SetFirstRevisionCreatedAt(v time.Time) *CreateAssetRevisionOutput { + s.FirstRevisionCreatedAt = &v + return s +} + +// SetFirstRevisionCreatedBy sets the FirstRevisionCreatedBy field's value. +func (s *CreateAssetRevisionOutput) SetFirstRevisionCreatedBy(v string) *CreateAssetRevisionOutput { + s.FirstRevisionCreatedBy = &v + return s +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *CreateAssetRevisionOutput) SetFormsOutput(v []*FormOutput_) *CreateAssetRevisionOutput { + s.FormsOutput = v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateAssetRevisionOutput) SetGlossaryTerms(v []*string) *CreateAssetRevisionOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *CreateAssetRevisionOutput) SetId(v string) *CreateAssetRevisionOutput { + s.Id = &v + return s +} + +// SetListing sets the Listing field's value. +func (s *CreateAssetRevisionOutput) SetListing(v *AssetListingDetails) *CreateAssetRevisionOutput { + s.Listing = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssetRevisionOutput) SetName(v string) *CreateAssetRevisionOutput { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *CreateAssetRevisionOutput) SetOwningProjectId(v string) *CreateAssetRevisionOutput { + s.OwningProjectId = &v + return s +} + +// SetPredictionConfiguration sets the PredictionConfiguration field's value. +func (s *CreateAssetRevisionOutput) SetPredictionConfiguration(v *PredictionConfiguration) *CreateAssetRevisionOutput { + s.PredictionConfiguration = v + return s +} + +// SetReadOnlyFormsOutput sets the ReadOnlyFormsOutput field's value. +func (s *CreateAssetRevisionOutput) SetReadOnlyFormsOutput(v []*FormOutput_) *CreateAssetRevisionOutput { + s.ReadOnlyFormsOutput = v + return s +} + +// SetRevision sets the Revision field's value. +func (s *CreateAssetRevisionOutput) SetRevision(v string) *CreateAssetRevisionOutput { + s.Revision = &v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *CreateAssetRevisionOutput) SetTypeIdentifier(v string) *CreateAssetRevisionOutput { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *CreateAssetRevisionOutput) SetTypeRevision(v string) *CreateAssetRevisionOutput { + s.TypeRevision = &v + return s +} + +type CreateAssetTypeInput struct { + _ struct{} `type:"structure"` + + // The descripton of the custom asset type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetTypeInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The unique identifier of the Amazon DataZone domain where the custom asset + // type is being created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The metadata forms that are to be attached to the custom asset type. + // + // FormsInput is a required field + FormsInput map[string]*FormEntryInput_ `locationName:"formsInput" type:"map" required:"true"` + + // The name of the custom asset type. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The identifier of the Amazon DataZone project that is to own the custom asset + // type. + // + // OwningProjectIdentifier is a required field + OwningProjectIdentifier *string `locationName:"owningProjectIdentifier" 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 CreateAssetTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAssetTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAssetTypeInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.FormsInput == nil { + invalidParams.Add(request.NewErrParamRequired("FormsInput")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OwningProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OwningProjectIdentifier")) + } + if s.FormsInput != nil { + for i, v := range s.FormsInput { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FormsInput", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateAssetTypeInput) SetDescription(v string) *CreateAssetTypeInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateAssetTypeInput) SetDomainIdentifier(v string) *CreateAssetTypeInput { + s.DomainIdentifier = &v + return s +} + +// SetFormsInput sets the FormsInput field's value. +func (s *CreateAssetTypeInput) SetFormsInput(v map[string]*FormEntryInput_) *CreateAssetTypeInput { + s.FormsInput = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssetTypeInput) SetName(v string) *CreateAssetTypeInput { + s.Name = &v + return s +} + +// SetOwningProjectIdentifier sets the OwningProjectIdentifier field's value. +func (s *CreateAssetTypeInput) SetOwningProjectIdentifier(v string) *CreateAssetTypeInput { + s.OwningProjectIdentifier = &v + return s +} + +type CreateAssetTypeOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the asset type is to be created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who creates this custom asset type. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the custom asset type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateAssetTypeOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the asset type was created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The metadata forms that are attached to the asset type. + // + // FormsOutput is a required field + FormsOutput map[string]*FormEntryOutput_ `locationName:"formsOutput" type:"map" required:"true"` + + // The name of the asset type. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain where the asset type was originally + // created. + OriginDomainId *string `locationName:"originDomainId" type:"string"` + + // The ID of the Amazon DataZone project where the asset type was originally + // created. + OriginProjectId *string `locationName:"originProjectId" type:"string"` + + // The ID of the Amazon DataZone project that currently owns this asset type. + OwningProjectId *string `locationName:"owningProjectId" type:"string"` + + // The revision of the custom asset type. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The timestamp of when the custom type was created. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user that created the custom asset type. + UpdatedBy *string `locationName:"updatedBy" 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 CreateAssetTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetTypeOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateAssetTypeOutput) SetCreatedAt(v time.Time) *CreateAssetTypeOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateAssetTypeOutput) SetCreatedBy(v string) *CreateAssetTypeOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAssetTypeOutput) SetDescription(v string) *CreateAssetTypeOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateAssetTypeOutput) SetDomainId(v string) *CreateAssetTypeOutput { + s.DomainId = &v + return s +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *CreateAssetTypeOutput) SetFormsOutput(v map[string]*FormEntryOutput_) *CreateAssetTypeOutput { + s.FormsOutput = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssetTypeOutput) SetName(v string) *CreateAssetTypeOutput { + s.Name = &v + return s +} + +// SetOriginDomainId sets the OriginDomainId field's value. +func (s *CreateAssetTypeOutput) SetOriginDomainId(v string) *CreateAssetTypeOutput { + s.OriginDomainId = &v + return s +} + +// SetOriginProjectId sets the OriginProjectId field's value. +func (s *CreateAssetTypeOutput) SetOriginProjectId(v string) *CreateAssetTypeOutput { + s.OriginProjectId = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *CreateAssetTypeOutput) SetOwningProjectId(v string) *CreateAssetTypeOutput { + s.OwningProjectId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *CreateAssetTypeOutput) SetRevision(v string) *CreateAssetTypeOutput { + s.Revision = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateAssetTypeOutput) SetUpdatedAt(v time.Time) *CreateAssetTypeOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *CreateAssetTypeOutput) SetUpdatedBy(v string) *CreateAssetTypeOutput { + s.UpdatedBy = &v + return s +} + +type CreateDataSourceInput struct { + _ struct{} `type:"structure"` + + // The metadata forms that are to be attached to the assets that this data source + // works with. + // + // AssetFormsInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceInput's + // String and GoString methods. + AssetFormsInput []*FormInput_ `locationName:"assetFormsInput" type:"list" sensitive:"true"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the configuration of the data source. It can be set to either glueRunConfiguration + // or redshiftRunConfiguration. + Configuration *DataSourceConfigurationInput_ `locationName:"configuration" type:"structure"` + + // The description of the data source. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain where the data source is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Specifies whether the data source is enabled. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The unique identifier of the Amazon DataZone environment to which the data + // source publishes assets. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `locationName:"environmentIdentifier" type:"string" required:"true"` + + // The name of the data source. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the Amazon DataZone project in which you want to add this + // data source. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `locationName:"projectIdentifier" type:"string" required:"true"` + + // Specifies whether the assets that this data source creates in the inventory + // are to be also automatically published to the catalog. + PublishOnImport *bool `locationName:"publishOnImport" type:"boolean"` + + // Specifies whether the business name generation is to be enabled for this + // data source. + Recommendation *RecommendationConfiguration `locationName:"recommendation" type:"structure"` + + // The schedule of the data source runs. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceInput's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` + + // The type of the data source. + // + // Type is a required field + Type *string `locationName:"type" 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 CreateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Type != nil && len(*s.Type) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Type", 1)) + } + if s.AssetFormsInput != nil { + for i, v := range s.AssetFormsInput { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetFormsInput", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.Schedule != nil { + if err := s.Schedule.Validate(); err != nil { + invalidParams.AddNested("Schedule", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetFormsInput sets the AssetFormsInput field's value. +func (s *CreateDataSourceInput) SetAssetFormsInput(v []*FormInput_) *CreateDataSourceInput { + s.AssetFormsInput = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateDataSourceInput) SetClientToken(v string) *CreateDataSourceInput { + s.ClientToken = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateDataSourceInput) SetConfiguration(v *DataSourceConfigurationInput_) *CreateDataSourceInput { + s.Configuration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateDataSourceInput) SetDescription(v string) *CreateDataSourceInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateDataSourceInput) SetDomainIdentifier(v string) *CreateDataSourceInput { + s.DomainIdentifier = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *CreateDataSourceInput) SetEnableSetting(v string) *CreateDataSourceInput { + s.EnableSetting = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *CreateDataSourceInput) SetEnvironmentIdentifier(v string) *CreateDataSourceInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDataSourceInput) SetName(v string) *CreateDataSourceInput { + s.Name = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *CreateDataSourceInput) SetProjectIdentifier(v string) *CreateDataSourceInput { + s.ProjectIdentifier = &v + return s +} + +// SetPublishOnImport sets the PublishOnImport field's value. +func (s *CreateDataSourceInput) SetPublishOnImport(v bool) *CreateDataSourceInput { + s.PublishOnImport = &v + return s +} + +// SetRecommendation sets the Recommendation field's value. +func (s *CreateDataSourceInput) SetRecommendation(v *RecommendationConfiguration) *CreateDataSourceInput { + s.Recommendation = v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *CreateDataSourceInput) SetSchedule(v *ScheduleConfiguration) *CreateDataSourceInput { + s.Schedule = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateDataSourceInput) SetType(v string) *CreateDataSourceInput { + s.Type = &v + return s +} + +type CreateDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The metadata forms attached to the assets that this data source creates. + AssetFormsOutput []*FormOutput_ `locationName:"assetFormsOutput" type:"list"` + + // Specifies the configuration of the data source. It can be set to either glueRunConfiguration + // or redshiftRunConfiguration. + Configuration *DataSourceConfigurationOutput_ `locationName:"configuration" type:"structure"` + + // The timestamp of when the data source was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The description of the data source. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the data source is created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Specifies whether the data source is enabled. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The unique identifier of the Amazon DataZone environment to which the data + // source publishes assets. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The unique identifier of the data source. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp that specifies when the data source was last run. + LastRunAt *time.Time `locationName:"lastRunAt" type:"timestamp" timestampFormat:"iso8601"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + LastRunErrorMessage *DataSourceErrorMessage `locationName:"lastRunErrorMessage" type:"structure"` + + // The status of the last run of this data source. + LastRunStatus *string `locationName:"lastRunStatus" type:"string" enum:"DataSourceRunStatus"` + + // The name of the data source. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project to which the data source is added. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // Specifies whether the assets that this data source creates in the inventory + // are to be also automatically published to the catalog. + PublishOnImport *bool `locationName:"publishOnImport" type:"boolean"` + + // Specifies whether the business name generation is to be enabled for this + // data source. + Recommendation *RecommendationConfiguration `locationName:"recommendation" type:"structure"` + + // The schedule of the data source runs. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDataSourceOutput's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` + + // The status of the data source. + Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The type of the data source. + Type *string `locationName:"type" min:"1" type:"string"` + + // The timestamp of when the data source was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDataSourceOutput) GoString() string { + return s.String() +} + +// SetAssetFormsOutput sets the AssetFormsOutput field's value. +func (s *CreateDataSourceOutput) SetAssetFormsOutput(v []*FormOutput_) *CreateDataSourceOutput { + s.AssetFormsOutput = v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateDataSourceOutput) SetConfiguration(v *DataSourceConfigurationOutput_) *CreateDataSourceOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateDataSourceOutput) SetCreatedAt(v time.Time) *CreateDataSourceOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateDataSourceOutput) SetDescription(v string) *CreateDataSourceOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateDataSourceOutput) SetDomainId(v string) *CreateDataSourceOutput { + s.DomainId = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *CreateDataSourceOutput) SetEnableSetting(v string) *CreateDataSourceOutput { + s.EnableSetting = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *CreateDataSourceOutput) SetEnvironmentId(v string) *CreateDataSourceOutput { + s.EnvironmentId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *CreateDataSourceOutput) SetErrorMessage(v *DataSourceErrorMessage) *CreateDataSourceOutput { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *CreateDataSourceOutput) SetId(v string) *CreateDataSourceOutput { + s.Id = &v + return s +} + +// SetLastRunAt sets the LastRunAt field's value. +func (s *CreateDataSourceOutput) SetLastRunAt(v time.Time) *CreateDataSourceOutput { + s.LastRunAt = &v + return s +} + +// SetLastRunErrorMessage sets the LastRunErrorMessage field's value. +func (s *CreateDataSourceOutput) SetLastRunErrorMessage(v *DataSourceErrorMessage) *CreateDataSourceOutput { + s.LastRunErrorMessage = v + return s +} + +// SetLastRunStatus sets the LastRunStatus field's value. +func (s *CreateDataSourceOutput) SetLastRunStatus(v string) *CreateDataSourceOutput { + s.LastRunStatus = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDataSourceOutput) SetName(v string) *CreateDataSourceOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *CreateDataSourceOutput) SetProjectId(v string) *CreateDataSourceOutput { + s.ProjectId = &v + return s +} + +// SetPublishOnImport sets the PublishOnImport field's value. +func (s *CreateDataSourceOutput) SetPublishOnImport(v bool) *CreateDataSourceOutput { + s.PublishOnImport = &v + return s +} + +// SetRecommendation sets the Recommendation field's value. +func (s *CreateDataSourceOutput) SetRecommendation(v *RecommendationConfiguration) *CreateDataSourceOutput { + s.Recommendation = v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *CreateDataSourceOutput) SetSchedule(v *ScheduleConfiguration) *CreateDataSourceOutput { + s.Schedule = v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateDataSourceOutput) SetStatus(v string) *CreateDataSourceOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *CreateDataSourceOutput) SetType(v string) *CreateDataSourceOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateDataSourceOutput) SetUpdatedAt(v time.Time) *CreateDataSourceOutput { + s.UpdatedAt = &v + return s +} + +type CreateDomainInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The description of the Amazon DataZone domain. + Description *string `locationName:"description" type:"string"` + + // The domain execution role that is created when an Amazon DataZone domain + // is created. The domain execution role is created in the Amazon Web Services + // account that houses the Amazon DataZone domain. + // + // DomainExecutionRole is a required field + DomainExecutionRole *string `locationName:"domainExecutionRole" type:"string" required:"true"` + + // The identifier of the Amazon Web Services Key Management Service (KMS) key + // that is used to encrypt the Amazon DataZone domain, metadata, and reporting + // data. + KmsKeyIdentifier *string `locationName:"kmsKeyIdentifier" min:"1" type:"string"` + + // The name of the Amazon DataZone domain. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The single-sign on configuration of the Amazon DataZone domain. + SingleSignOn *SingleSignOn `locationName:"singleSignOn" type:"structure"` + + // The tags specified for the Amazon DataZone domain. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDomainInput"} + if s.DomainExecutionRole == nil { + invalidParams.Add(request.NewErrParamRequired("DomainExecutionRole")) + } + if s.KmsKeyIdentifier != nil && len(*s.KmsKeyIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyIdentifier", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateDomainInput) SetClientToken(v string) *CreateDomainInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateDomainInput) SetDescription(v string) *CreateDomainInput { + s.Description = &v + return s +} + +// SetDomainExecutionRole sets the DomainExecutionRole field's value. +func (s *CreateDomainInput) SetDomainExecutionRole(v string) *CreateDomainInput { + s.DomainExecutionRole = &v + return s +} + +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *CreateDomainInput) SetKmsKeyIdentifier(v string) *CreateDomainInput { + s.KmsKeyIdentifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDomainInput) SetName(v string) *CreateDomainInput { + s.Name = &v + return s +} + +// SetSingleSignOn sets the SingleSignOn field's value. +func (s *CreateDomainInput) SetSingleSignOn(v *SingleSignOn) *CreateDomainInput { + s.SingleSignOn = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDomainInput) SetTags(v map[string]*string) *CreateDomainInput { + s.Tags = v + return s +} + +type CreateDomainOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the Amazon DataZone domain. + Arn *string `locationName:"arn" type:"string"` + + // The description of the Amazon DataZone domain. + Description *string `locationName:"description" type:"string"` + + // The domain execution role that is created when an Amazon DataZone domain + // is created. The domain execution role is created in the Amazon Web Services + // account that houses the Amazon DataZone domain. + DomainExecutionRole *string `locationName:"domainExecutionRole" type:"string"` + + // The identifier of the Amazon DataZone domain. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The identifier of the Amazon Web Services Key Management Service (KMS) key + // that is used to encrypt the Amazon DataZone domain, metadata, and reporting + // data. + KmsKeyIdentifier *string `locationName:"kmsKeyIdentifier" min:"1" type:"string"` + + // The name of the Amazon DataZone domain. + Name *string `locationName:"name" type:"string"` + + // The URL of the data portal for this Amazon DataZone domain. + PortalUrl *string `locationName:"portalUrl" type:"string"` + + // The single-sign on configuration of the Amazon DataZone domain. + SingleSignOn *SingleSignOn `locationName:"singleSignOn" type:"structure"` + + // The status of the Amazon DataZone domain. + Status *string `locationName:"status" type:"string" enum:"DomainStatus"` + + // The tags specified for the Amazon DataZone domain. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDomainOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateDomainOutput) SetArn(v string) *CreateDomainOutput { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateDomainOutput) SetDescription(v string) *CreateDomainOutput { + s.Description = &v + return s +} + +// SetDomainExecutionRole sets the DomainExecutionRole field's value. +func (s *CreateDomainOutput) SetDomainExecutionRole(v string) *CreateDomainOutput { + s.DomainExecutionRole = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateDomainOutput) SetId(v string) *CreateDomainOutput { + s.Id = &v + return s +} + +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *CreateDomainOutput) SetKmsKeyIdentifier(v string) *CreateDomainOutput { + s.KmsKeyIdentifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDomainOutput) SetName(v string) *CreateDomainOutput { + s.Name = &v + return s +} + +// SetPortalUrl sets the PortalUrl field's value. +func (s *CreateDomainOutput) SetPortalUrl(v string) *CreateDomainOutput { + s.PortalUrl = &v + return s +} + +// SetSingleSignOn sets the SingleSignOn field's value. +func (s *CreateDomainOutput) SetSingleSignOn(v *SingleSignOn) *CreateDomainOutput { + s.SingleSignOn = v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateDomainOutput) SetStatus(v string) *CreateDomainOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDomainOutput) SetTags(v map[string]*string) *CreateDomainOutput { + s.Tags = v + return s +} + +type CreateEnvironmentInput struct { + _ struct{} `type:"structure"` + + // The description of the Amazon DataZone environment. + Description *string `locationName:"description" type:"string"` + + // The identifier of the Amazon DataZone domain in which the environment is + // created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the environment profile that is used to create this Amazon + // DataZone environment. + // + // EnvironmentProfileIdentifier is a required field + EnvironmentProfileIdentifier *string `locationName:"environmentProfileIdentifier" type:"string" required:"true"` + + // The glossary terms that can be used in this Amazon DataZone environment. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The name of the Amazon DataZone environment. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The identifier of the Amazon DataZone project in which this environment is + // created. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `locationName:"projectIdentifier" type:"string" required:"true"` + + // The user parameters of this Amazon DataZone environment. + UserParameters []*EnvironmentParameter `locationName:"userParameters" 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 CreateEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentProfileIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentProfileIdentifier")) + } + if s.GlossaryTerms != nil && len(s.GlossaryTerms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlossaryTerms", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentInput) SetDescription(v string) *CreateEnvironmentInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateEnvironmentInput) SetDomainIdentifier(v string) *CreateEnvironmentInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentProfileIdentifier sets the EnvironmentProfileIdentifier field's value. +func (s *CreateEnvironmentInput) SetEnvironmentProfileIdentifier(v string) *CreateEnvironmentInput { + s.EnvironmentProfileIdentifier = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateEnvironmentInput) SetGlossaryTerms(v []*string) *CreateEnvironmentInput { + s.GlossaryTerms = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentInput) SetName(v string) *CreateEnvironmentInput { + s.Name = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *CreateEnvironmentInput) SetProjectIdentifier(v string) *CreateEnvironmentInput { + s.ProjectIdentifier = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *CreateEnvironmentInput) SetUserParameters(v []*EnvironmentParameter) *CreateEnvironmentInput { + s.UserParameters = v + return s +} + +type CreateEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account in which the Amazon DataZone environment + // is created. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region in which the Amazon DataZone environment is + // created. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when the environment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created this environment. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The deployment properties of this Amazon DataZone environment. + DeploymentProperties *DeploymentProperties `locationName:"deploymentProperties" type:"structure"` + + // The description of this Amazon DataZone environment. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the environment is + // created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The configurable actions of this Amazon DataZone environment. + EnvironmentActions []*ConfigurableEnvironmentAction `locationName:"environmentActions" type:"list"` + + // The ID of the blueprint with which this Amazon DataZone environment was created. + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string"` + + // The ID of the environment profile with which this Amazon DataZone environment + // was created. + // + // EnvironmentProfileId is a required field + EnvironmentProfileId *string `locationName:"environmentProfileId" type:"string" required:"true"` + + // The glossary terms that can be used in this Amazon DataZone environment. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The ID of this Amazon DataZone environment. + Id *string `locationName:"id" type:"string"` + + // The details of the last deployment of this Amazon DataZone environment. + LastDeployment *Deployment `locationName:"lastDeployment" type:"structure"` + + // The name of this environment. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project in which this environment is created. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider of this Amazon DataZone environment. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The provisioned resources of this Amazon DataZone environment. + ProvisionedResources []*Resource `locationName:"provisionedResources" type:"list"` + + // The provisioning properties of this Amazon DataZone environment. + ProvisioningProperties *ProvisioningProperties `locationName:"provisioningProperties" type:"structure"` + + // The status of this Amazon DataZone environment. + Status *string `locationName:"status" type:"string" enum:"EnvironmentStatus"` + + // The timestamp of when this environment was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters of this Amazon DataZone environment. + UserParameters []*CustomParameter `locationName:"userParameters" 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 CreateEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateEnvironmentOutput) SetAwsAccountId(v string) *CreateEnvironmentOutput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *CreateEnvironmentOutput) SetAwsAccountRegion(v string) *CreateEnvironmentOutput { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateEnvironmentOutput) SetCreatedAt(v time.Time) *CreateEnvironmentOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateEnvironmentOutput) SetCreatedBy(v string) *CreateEnvironmentOutput { + s.CreatedBy = &v + return s +} + +// SetDeploymentProperties sets the DeploymentProperties field's value. +func (s *CreateEnvironmentOutput) SetDeploymentProperties(v *DeploymentProperties) *CreateEnvironmentOutput { + s.DeploymentProperties = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentOutput) SetDescription(v string) *CreateEnvironmentOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateEnvironmentOutput) SetDomainId(v string) *CreateEnvironmentOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentActions sets the EnvironmentActions field's value. +func (s *CreateEnvironmentOutput) SetEnvironmentActions(v []*ConfigurableEnvironmentAction) *CreateEnvironmentOutput { + s.EnvironmentActions = v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *CreateEnvironmentOutput) SetEnvironmentBlueprintId(v string) *CreateEnvironmentOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetEnvironmentProfileId sets the EnvironmentProfileId field's value. +func (s *CreateEnvironmentOutput) SetEnvironmentProfileId(v string) *CreateEnvironmentOutput { + s.EnvironmentProfileId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateEnvironmentOutput) SetGlossaryTerms(v []*string) *CreateEnvironmentOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *CreateEnvironmentOutput) SetId(v string) *CreateEnvironmentOutput { + s.Id = &v + return s +} + +// SetLastDeployment sets the LastDeployment field's value. +func (s *CreateEnvironmentOutput) SetLastDeployment(v *Deployment) *CreateEnvironmentOutput { + s.LastDeployment = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentOutput) SetName(v string) *CreateEnvironmentOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *CreateEnvironmentOutput) SetProjectId(v string) *CreateEnvironmentOutput { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *CreateEnvironmentOutput) SetProvider(v string) *CreateEnvironmentOutput { + s.Provider = &v + return s +} + +// SetProvisionedResources sets the ProvisionedResources field's value. +func (s *CreateEnvironmentOutput) SetProvisionedResources(v []*Resource) *CreateEnvironmentOutput { + s.ProvisionedResources = v + return s +} + +// SetProvisioningProperties sets the ProvisioningProperties field's value. +func (s *CreateEnvironmentOutput) SetProvisioningProperties(v *ProvisioningProperties) *CreateEnvironmentOutput { + s.ProvisioningProperties = v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateEnvironmentOutput) SetStatus(v string) *CreateEnvironmentOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateEnvironmentOutput) SetUpdatedAt(v time.Time) *CreateEnvironmentOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *CreateEnvironmentOutput) SetUserParameters(v []*CustomParameter) *CreateEnvironmentOutput { + s.UserParameters = v + return s +} + +type CreateEnvironmentProfileInput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account in which the Amazon DataZone environment + // is created. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region in which this environment profile is created. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The description of this Amazon DataZone environment profile. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentProfileInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this environment profile is + // created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the blueprint with which this environment profile is created. + // + // EnvironmentBlueprintIdentifier is a required field + EnvironmentBlueprintIdentifier *string `locationName:"environmentBlueprintIdentifier" type:"string" required:"true"` + + // The name of this Amazon DataZone environment profile. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentProfileInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project in which to create the environment profile. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `locationName:"projectIdentifier" type:"string" required:"true"` + + // The user parameters of this Amazon DataZone environment profile. + UserParameters []*EnvironmentParameter `locationName:"userParameters" 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 CreateEnvironmentProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentBlueprintIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentBlueprintIdentifier")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateEnvironmentProfileInput) SetAwsAccountId(v string) *CreateEnvironmentProfileInput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *CreateEnvironmentProfileInput) SetAwsAccountRegion(v string) *CreateEnvironmentProfileInput { + s.AwsAccountRegion = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentProfileInput) SetDescription(v string) *CreateEnvironmentProfileInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateEnvironmentProfileInput) SetDomainIdentifier(v string) *CreateEnvironmentProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentBlueprintIdentifier sets the EnvironmentBlueprintIdentifier field's value. +func (s *CreateEnvironmentProfileInput) SetEnvironmentBlueprintIdentifier(v string) *CreateEnvironmentProfileInput { + s.EnvironmentBlueprintIdentifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentProfileInput) SetName(v string) *CreateEnvironmentProfileInput { + s.Name = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *CreateEnvironmentProfileInput) SetProjectIdentifier(v string) *CreateEnvironmentProfileInput { + s.ProjectIdentifier = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *CreateEnvironmentProfileInput) SetUserParameters(v []*EnvironmentParameter) *CreateEnvironmentProfileInput { + s.UserParameters = v + return s +} + +type CreateEnvironmentProfileOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID in which this Amazon DataZone environment + // profile is created. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region in which this Amazon DataZone environment + // profile is created. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when this environment profile was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created this environment profile. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of this Amazon DataZone environment profile. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentProfileOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this environment profile is + // created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the blueprint with which this environment profile is created. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The ID of this Amazon DataZone environment profile. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of this Amazon DataZone environment profile. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentProfileOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project in which this environment profile is + // created. + ProjectId *string `locationName:"projectId" type:"string"` + + // The timestamp of when this environment profile was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters of this Amazon DataZone environment profile. + UserParameters []*CustomParameter `locationName:"userParameters" 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 CreateEnvironmentProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentProfileOutput) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateEnvironmentProfileOutput) SetAwsAccountId(v string) *CreateEnvironmentProfileOutput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *CreateEnvironmentProfileOutput) SetAwsAccountRegion(v string) *CreateEnvironmentProfileOutput { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateEnvironmentProfileOutput) SetCreatedAt(v time.Time) *CreateEnvironmentProfileOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateEnvironmentProfileOutput) SetCreatedBy(v string) *CreateEnvironmentProfileOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentProfileOutput) SetDescription(v string) *CreateEnvironmentProfileOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateEnvironmentProfileOutput) SetDomainId(v string) *CreateEnvironmentProfileOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *CreateEnvironmentProfileOutput) SetEnvironmentBlueprintId(v string) *CreateEnvironmentProfileOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateEnvironmentProfileOutput) SetId(v string) *CreateEnvironmentProfileOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentProfileOutput) SetName(v string) *CreateEnvironmentProfileOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *CreateEnvironmentProfileOutput) SetProjectId(v string) *CreateEnvironmentProfileOutput { + s.ProjectId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateEnvironmentProfileOutput) SetUpdatedAt(v time.Time) *CreateEnvironmentProfileOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *CreateEnvironmentProfileOutput) SetUserParameters(v []*CustomParameter) *CreateEnvironmentProfileOutput { + s.UserParameters = v + return s +} + +type CreateFormTypeInput struct { + _ struct{} `type:"structure"` + + // The description of this Amazon DataZone metadata form type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateFormTypeInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this metadata form type is + // created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The model of this Amazon DataZone metadata form type. + // + // Model is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateFormTypeInput's + // String and GoString methods. + // + // Model is a required field + Model *Model `locationName:"model" type:"structure" required:"true" sensitive:"true"` + + // The name of this Amazon DataZone metadata form type. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateFormTypeInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project that owns this metadata form type. + // + // OwningProjectIdentifier is a required field + OwningProjectIdentifier *string `locationName:"owningProjectIdentifier" type:"string" required:"true"` + + // The status of this Amazon DataZone metadata form type. + Status *string `locationName:"status" type:"string" enum:"FormTypeStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFormTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFormTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateFormTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateFormTypeInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Model == nil { + invalidParams.Add(request.NewErrParamRequired("Model")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OwningProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OwningProjectIdentifier")) + } + if s.Model != nil { + if err := s.Model.Validate(); err != nil { + invalidParams.AddNested("Model", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateFormTypeInput) SetDescription(v string) *CreateFormTypeInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateFormTypeInput) SetDomainIdentifier(v string) *CreateFormTypeInput { + s.DomainIdentifier = &v + return s +} + +// SetModel sets the Model field's value. +func (s *CreateFormTypeInput) SetModel(v *Model) *CreateFormTypeInput { + s.Model = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateFormTypeInput) SetName(v string) *CreateFormTypeInput { + s.Name = &v + return s +} + +// SetOwningProjectIdentifier sets the OwningProjectIdentifier field's value. +func (s *CreateFormTypeInput) SetOwningProjectIdentifier(v string) *CreateFormTypeInput { + s.OwningProjectIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateFormTypeInput) SetStatus(v string) *CreateFormTypeInput { + s.Status = &v + return s +} + +type CreateFormTypeOutput struct { + _ struct{} `type:"structure"` + + // The description of this Amazon DataZone metadata form type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateFormTypeOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this metadata form type is + // created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The name of this Amazon DataZone metadata form type. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateFormTypeOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this metadata form type was + // originally created. + OriginDomainId *string `locationName:"originDomainId" type:"string"` + + // The ID of the project in which this Amazon DataZone metadata form type was + // originally created. + OriginProjectId *string `locationName:"originProjectId" type:"string"` + + // The ID of the project that owns this Amazon DataZone metadata form type. + OwningProjectId *string `locationName:"owningProjectId" type:"string"` + + // The revision of this Amazon DataZone metadata form type. + // + // Revision is a required field + Revision *string `locationName:"revision" 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 CreateFormTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFormTypeOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *CreateFormTypeOutput) SetDescription(v string) *CreateFormTypeOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateFormTypeOutput) SetDomainId(v string) *CreateFormTypeOutput { + s.DomainId = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateFormTypeOutput) SetName(v string) *CreateFormTypeOutput { + s.Name = &v + return s +} + +// SetOriginDomainId sets the OriginDomainId field's value. +func (s *CreateFormTypeOutput) SetOriginDomainId(v string) *CreateFormTypeOutput { + s.OriginDomainId = &v + return s +} + +// SetOriginProjectId sets the OriginProjectId field's value. +func (s *CreateFormTypeOutput) SetOriginProjectId(v string) *CreateFormTypeOutput { + s.OriginProjectId = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *CreateFormTypeOutput) SetOwningProjectId(v string) *CreateFormTypeOutput { + s.OwningProjectId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *CreateFormTypeOutput) SetRevision(v string) *CreateFormTypeOutput { + s.Revision = &v + return s +} + +type CreateGlossaryInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description of this business glossary. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this business glossary is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The name of this business glossary. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project that currently owns business glossary. + // + // OwningProjectIdentifier is a required field + OwningProjectIdentifier *string `locationName:"owningProjectIdentifier" type:"string" required:"true"` + + // The status of this business glossary. + Status *string `locationName:"status" type:"string" enum:"GlossaryStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGlossaryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGlossaryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGlossaryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGlossaryInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OwningProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OwningProjectIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateGlossaryInput) SetClientToken(v string) *CreateGlossaryInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateGlossaryInput) SetDescription(v string) *CreateGlossaryInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateGlossaryInput) SetDomainIdentifier(v string) *CreateGlossaryInput { + s.DomainIdentifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateGlossaryInput) SetName(v string) *CreateGlossaryInput { + s.Name = &v + return s +} + +// SetOwningProjectIdentifier sets the OwningProjectIdentifier field's value. +func (s *CreateGlossaryInput) SetOwningProjectIdentifier(v string) *CreateGlossaryInput { + s.OwningProjectIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGlossaryInput) SetStatus(v string) *CreateGlossaryInput { + s.Status = &v + return s +} + +type CreateGlossaryOutput struct { + _ struct{} `type:"structure"` + + // The description of this business glossary. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this business glossary is created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of this business glossary. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of this business glossary. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project that currently owns this business glossary. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The status of this business glossary. + Status *string `locationName:"status" type:"string" enum:"GlossaryStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGlossaryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGlossaryOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *CreateGlossaryOutput) SetDescription(v string) *CreateGlossaryOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateGlossaryOutput) SetDomainId(v string) *CreateGlossaryOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateGlossaryOutput) SetId(v string) *CreateGlossaryOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateGlossaryOutput) SetName(v string) *CreateGlossaryOutput { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *CreateGlossaryOutput) SetOwningProjectId(v string) *CreateGlossaryOutput { + s.OwningProjectId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGlossaryOutput) SetStatus(v string) *CreateGlossaryOutput { + s.Status = &v + return s +} + +type CreateGlossaryTermInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the Amazon DataZone domain in which this business glossary term + // is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the business glossary in which this term is created. + // + // GlossaryIdentifier is a required field + GlossaryIdentifier *string `locationName:"glossaryIdentifier" type:"string" required:"true"` + + // The long description of this business glossary term. + // + // LongDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryTermInput's + // String and GoString methods. + LongDescription *string `locationName:"longDescription" type:"string" sensitive:"true"` + + // The name of this business glossary term. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryTermInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The short description of this business glossary term. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryTermInput's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` + + // The status of this business glossary term. + Status *string `locationName:"status" type:"string" enum:"GlossaryTermStatus"` + + // The term relations of this business glossary term. + TermRelations *TermRelations `locationName:"termRelations" 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 CreateGlossaryTermInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGlossaryTermInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGlossaryTermInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGlossaryTermInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GlossaryIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("GlossaryIdentifier")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TermRelations != nil { + if err := s.TermRelations.Validate(); err != nil { + invalidParams.AddNested("TermRelations", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateGlossaryTermInput) SetClientToken(v string) *CreateGlossaryTermInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateGlossaryTermInput) SetDomainIdentifier(v string) *CreateGlossaryTermInput { + s.DomainIdentifier = &v + return s +} + +// SetGlossaryIdentifier sets the GlossaryIdentifier field's value. +func (s *CreateGlossaryTermInput) SetGlossaryIdentifier(v string) *CreateGlossaryTermInput { + s.GlossaryIdentifier = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *CreateGlossaryTermInput) SetLongDescription(v string) *CreateGlossaryTermInput { + s.LongDescription = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateGlossaryTermInput) SetName(v string) *CreateGlossaryTermInput { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *CreateGlossaryTermInput) SetShortDescription(v string) *CreateGlossaryTermInput { + s.ShortDescription = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGlossaryTermInput) SetStatus(v string) *CreateGlossaryTermInput { + s.Status = &v + return s +} + +// SetTermRelations sets the TermRelations field's value. +func (s *CreateGlossaryTermInput) SetTermRelations(v *TermRelations) *CreateGlossaryTermInput { + s.TermRelations = v + return s +} + +type CreateGlossaryTermOutput struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon DataZone domain in which this business glossary term + // is created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the business glossary in which this term is created. + // + // GlossaryId is a required field + GlossaryId *string `locationName:"glossaryId" type:"string" required:"true"` + + // The ID of this business glossary term. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The long description of this business glossary term. + // + // LongDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryTermOutput's + // String and GoString methods. + LongDescription *string `locationName:"longDescription" type:"string" sensitive:"true"` + + // The name of this business glossary term. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryTermOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The short description of this business glossary term. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGlossaryTermOutput's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` + + // The status of this business glossary term. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GlossaryTermStatus"` + + // The term relations of this business glossary term. + TermRelations *TermRelations `locationName:"termRelations" 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 CreateGlossaryTermOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGlossaryTermOutput) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateGlossaryTermOutput) SetDomainId(v string) *CreateGlossaryTermOutput { + s.DomainId = &v + return s +} + +// SetGlossaryId sets the GlossaryId field's value. +func (s *CreateGlossaryTermOutput) SetGlossaryId(v string) *CreateGlossaryTermOutput { + s.GlossaryId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateGlossaryTermOutput) SetId(v string) *CreateGlossaryTermOutput { + s.Id = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *CreateGlossaryTermOutput) SetLongDescription(v string) *CreateGlossaryTermOutput { + s.LongDescription = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateGlossaryTermOutput) SetName(v string) *CreateGlossaryTermOutput { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *CreateGlossaryTermOutput) SetShortDescription(v string) *CreateGlossaryTermOutput { + s.ShortDescription = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGlossaryTermOutput) SetStatus(v string) *CreateGlossaryTermOutput { + s.Status = &v + return s +} + +// SetTermRelations sets the TermRelations field's value. +func (s *CreateGlossaryTermOutput) SetTermRelations(v *TermRelations) *CreateGlossaryTermOutput { + s.TermRelations = v + return s +} + +type CreateGroupProfileInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon DataZone domain in which the group profile is + // created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the group for which the group profile is created. + // + // GroupIdentifier is a required field + GroupIdentifier *string `locationName:"groupIdentifier" 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 CreateGroupProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGroupProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGroupProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGroupProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GroupIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("GroupIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateGroupProfileInput) SetClientToken(v string) *CreateGroupProfileInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateGroupProfileInput) SetDomainIdentifier(v string) *CreateGroupProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetGroupIdentifier sets the GroupIdentifier field's value. +func (s *CreateGroupProfileInput) SetGroupIdentifier(v string) *CreateGroupProfileInput { + s.GroupIdentifier = &v + return s +} + +type CreateGroupProfileOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which the group profile is + // created. + DomainId *string `locationName:"domainId" type:"string"` + + // The name of the group for which group profile is created. + // + // GroupName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateGroupProfileOutput's + // String and GoString methods. + GroupName *string `locationName:"groupName" min:"1" type:"string" sensitive:"true"` + + // The identifier of the group profile. + Id *string `locationName:"id" type:"string"` + + // The status of the group profile. + Status *string `locationName:"status" type:"string" enum:"GroupProfileStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGroupProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateGroupProfileOutput) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateGroupProfileOutput) SetDomainId(v string) *CreateGroupProfileOutput { + s.DomainId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *CreateGroupProfileOutput) SetGroupName(v string) *CreateGroupProfileOutput { + s.GroupName = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateGroupProfileOutput) SetId(v string) *CreateGroupProfileOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGroupProfileOutput) SetStatus(v string) *CreateGroupProfileOutput { + s.Status = &v + return s +} + +type CreateListingChangeSetInput struct { + _ struct{} `type:"structure"` + + // Action is a required field + Action *string `locationName:"action" type:"string" required:"true" enum:"ChangeAction"` + + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // EntityIdentifier is a required field + EntityIdentifier *string `locationName:"entityIdentifier" type:"string" required:"true"` + + EntityRevision *string `locationName:"entityRevision" min:"1" type:"string"` + + // EntityType is a required field + EntityType *string `locationName:"entityType" type:"string" required:"true" enum:"EntityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateListingChangeSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateListingChangeSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateListingChangeSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateListingChangeSetInput"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EntityIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EntityIdentifier")) + } + if s.EntityRevision != nil && len(*s.EntityRevision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EntityRevision", 1)) + } + if s.EntityType == nil { + invalidParams.Add(request.NewErrParamRequired("EntityType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *CreateListingChangeSetInput) SetAction(v string) *CreateListingChangeSetInput { + s.Action = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateListingChangeSetInput) SetClientToken(v string) *CreateListingChangeSetInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateListingChangeSetInput) SetDomainIdentifier(v string) *CreateListingChangeSetInput { + s.DomainIdentifier = &v + return s +} + +// SetEntityIdentifier sets the EntityIdentifier field's value. +func (s *CreateListingChangeSetInput) SetEntityIdentifier(v string) *CreateListingChangeSetInput { + s.EntityIdentifier = &v + return s +} + +// SetEntityRevision sets the EntityRevision field's value. +func (s *CreateListingChangeSetInput) SetEntityRevision(v string) *CreateListingChangeSetInput { + s.EntityRevision = &v + return s +} + +// SetEntityType sets the EntityType field's value. +func (s *CreateListingChangeSetInput) SetEntityType(v string) *CreateListingChangeSetInput { + s.EntityType = &v + return s +} + +type CreateListingChangeSetOutput struct { + _ struct{} `type:"structure"` + + // ListingId is a required field + ListingId *string `locationName:"listingId" type:"string" required:"true"` + + // ListingRevision is a required field + ListingRevision *string `locationName:"listingRevision" min:"1" type:"string" required:"true"` + + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ListingStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateListingChangeSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateListingChangeSetOutput) GoString() string { + return s.String() +} + +// SetListingId sets the ListingId field's value. +func (s *CreateListingChangeSetOutput) SetListingId(v string) *CreateListingChangeSetOutput { + s.ListingId = &v + return s +} + +// SetListingRevision sets the ListingRevision field's value. +func (s *CreateListingChangeSetOutput) SetListingRevision(v string) *CreateListingChangeSetOutput { + s.ListingRevision = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateListingChangeSetOutput) SetStatus(v string) *CreateListingChangeSetOutput { + s.Status = &v + return s +} + +type CreateProjectInput struct { + _ struct{} `type:"structure"` + + // The description of the Amazon DataZone project. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProjectInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this project is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The glossary terms that can be used in this Amazon DataZone project. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The name of the Amazon DataZone project. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProjectInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProjectInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProjectInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProjectInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProjectInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GlossaryTerms != nil && len(s.GlossaryTerms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlossaryTerms", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateProjectInput) SetDescription(v string) *CreateProjectInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateProjectInput) SetDomainIdentifier(v string) *CreateProjectInput { + s.DomainIdentifier = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateProjectInput) SetGlossaryTerms(v []*string) *CreateProjectInput { + s.GlossaryTerms = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateProjectInput) SetName(v string) *CreateProjectInput { + s.Name = &v + return s +} + +type CreateProjectMembershipInput struct { + _ struct{} `type:"structure"` + + // The designation of the project membership. + // + // Designation is a required field + Designation *string `locationName:"designation" type:"string" required:"true" enum:"UserDesignation"` + + // The ID of the Amazon DataZone domain in which project membership is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The project member whose project membership was created. + // + // Member is a required field + Member *Member `locationName:"member" type:"structure" required:"true"` + + // The ID of the project for which this project membership was created. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `location:"uri" locationName:"projectIdentifier" 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 CreateProjectMembershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProjectMembershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProjectMembershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProjectMembershipInput"} + if s.Designation == nil { + invalidParams.Add(request.NewErrParamRequired("Designation")) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Member == nil { + invalidParams.Add(request.NewErrParamRequired("Member")) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + if s.ProjectIdentifier != nil && len(*s.ProjectIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProjectIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDesignation sets the Designation field's value. +func (s *CreateProjectMembershipInput) SetDesignation(v string) *CreateProjectMembershipInput { + s.Designation = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateProjectMembershipInput) SetDomainIdentifier(v string) *CreateProjectMembershipInput { + s.DomainIdentifier = &v + return s +} + +// SetMember sets the Member field's value. +func (s *CreateProjectMembershipInput) SetMember(v *Member) *CreateProjectMembershipInput { + s.Member = v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *CreateProjectMembershipInput) SetProjectIdentifier(v string) *CreateProjectMembershipInput { + s.ProjectIdentifier = &v + return s +} + +type CreateProjectMembershipOutput 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 CreateProjectMembershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProjectMembershipOutput) GoString() string { + return s.String() +} + +type CreateProjectOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the project was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the project. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of the project. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProjectOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the project was created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The glossary terms that can be used in the project. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The ID of the Amazon DataZone project. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp of when the project was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the project. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProjectOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProjectOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProjectOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateProjectOutput) SetCreatedAt(v time.Time) *CreateProjectOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateProjectOutput) SetCreatedBy(v string) *CreateProjectOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateProjectOutput) SetDescription(v string) *CreateProjectOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateProjectOutput) SetDomainId(v string) *CreateProjectOutput { + s.DomainId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *CreateProjectOutput) SetGlossaryTerms(v []*string) *CreateProjectOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *CreateProjectOutput) SetId(v string) *CreateProjectOutput { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *CreateProjectOutput) SetLastUpdatedAt(v time.Time) *CreateProjectOutput { + s.LastUpdatedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateProjectOutput) SetName(v string) *CreateProjectOutput { + s.Name = &v + return s +} + +type CreateSubscriptionGrantInput struct { + _ struct{} `type:"structure"` + + // The names of the assets for which the subscription grant is created. + AssetTargetNames []*AssetTargetNameMap `locationName:"assetTargetNames" type:"list"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The ID of the Amazon DataZone domain in which the subscription grant is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the environment in which the subscription grant is created. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `locationName:"environmentIdentifier" type:"string" required:"true"` + + // The entity to which the subscription is to be granted. + // + // GrantedEntity is a required field + GrantedEntity *GrantedEntityInput_ `locationName:"grantedEntity" type:"structure" required:"true"` + + // The ID of the subscription target for which the subscription grant is created. + // + // SubscriptionTargetIdentifier is a required field + SubscriptionTargetIdentifier *string `locationName:"subscriptionTargetIdentifier" 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 CreateSubscriptionGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSubscriptionGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSubscriptionGrantInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.GrantedEntity == nil { + invalidParams.Add(request.NewErrParamRequired("GrantedEntity")) + } + if s.SubscriptionTargetIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("SubscriptionTargetIdentifier")) + } + if s.AssetTargetNames != nil { + for i, v := range s.AssetTargetNames { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetTargetNames", i), err.(request.ErrInvalidParams)) + } + } + } + if s.GrantedEntity != nil { + if err := s.GrantedEntity.Validate(); err != nil { + invalidParams.AddNested("GrantedEntity", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetTargetNames sets the AssetTargetNames field's value. +func (s *CreateSubscriptionGrantInput) SetAssetTargetNames(v []*AssetTargetNameMap) *CreateSubscriptionGrantInput { + s.AssetTargetNames = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateSubscriptionGrantInput) SetClientToken(v string) *CreateSubscriptionGrantInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateSubscriptionGrantInput) SetDomainIdentifier(v string) *CreateSubscriptionGrantInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *CreateSubscriptionGrantInput) SetEnvironmentIdentifier(v string) *CreateSubscriptionGrantInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetGrantedEntity sets the GrantedEntity field's value. +func (s *CreateSubscriptionGrantInput) SetGrantedEntity(v *GrantedEntityInput_) *CreateSubscriptionGrantInput { + s.GrantedEntity = v + return s +} + +// SetSubscriptionTargetIdentifier sets the SubscriptionTargetIdentifier field's value. +func (s *CreateSubscriptionGrantInput) SetSubscriptionTargetIdentifier(v string) *CreateSubscriptionGrantInput { + s.SubscriptionTargetIdentifier = &v + return s +} + +type CreateSubscriptionGrantOutput struct { + _ struct{} `type:"structure"` + + // The assets for which the subscription grant is created. + Assets []*SubscribedAsset `locationName:"assets" type:"list"` + + // A timestamp of when the subscription grant is created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription grant. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the subscription grant is created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The entity to which the subscription is granted. + // + // GrantedEntity is a required field + GrantedEntity *GrantedEntity `locationName:"grantedEntity" type:"structure" required:"true"` + + // The ID of the subscription grant. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The status of the subscription grant. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantOverallStatus"` + + // The identifier of the subscription grant. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` + + // The ID of the subscription target for which the subscription grant is created. + // + // SubscriptionTargetId is a required field + SubscriptionTargetId *string `locationName:"subscriptionTargetId" type:"string" required:"true"` + + // A timestamp of when the subscription grant was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription grant. + UpdatedBy *string `locationName:"updatedBy" 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 CreateSubscriptionGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionGrantOutput) GoString() string { + return s.String() +} + +// SetAssets sets the Assets field's value. +func (s *CreateSubscriptionGrantOutput) SetAssets(v []*SubscribedAsset) *CreateSubscriptionGrantOutput { + s.Assets = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateSubscriptionGrantOutput) SetCreatedAt(v time.Time) *CreateSubscriptionGrantOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateSubscriptionGrantOutput) SetCreatedBy(v string) *CreateSubscriptionGrantOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateSubscriptionGrantOutput) SetDomainId(v string) *CreateSubscriptionGrantOutput { + s.DomainId = &v + return s +} + +// SetGrantedEntity sets the GrantedEntity field's value. +func (s *CreateSubscriptionGrantOutput) SetGrantedEntity(v *GrantedEntity) *CreateSubscriptionGrantOutput { + s.GrantedEntity = v + return s +} + +// SetId sets the Id field's value. +func (s *CreateSubscriptionGrantOutput) SetId(v string) *CreateSubscriptionGrantOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateSubscriptionGrantOutput) SetStatus(v string) *CreateSubscriptionGrantOutput { + s.Status = &v + return s +} + +// SetSubscriptionId sets the SubscriptionId field's value. +func (s *CreateSubscriptionGrantOutput) SetSubscriptionId(v string) *CreateSubscriptionGrantOutput { + s.SubscriptionId = &v + return s +} + +// SetSubscriptionTargetId sets the SubscriptionTargetId field's value. +func (s *CreateSubscriptionGrantOutput) SetSubscriptionTargetId(v string) *CreateSubscriptionGrantOutput { + s.SubscriptionTargetId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateSubscriptionGrantOutput) SetUpdatedAt(v time.Time) *CreateSubscriptionGrantOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *CreateSubscriptionGrantOutput) SetUpdatedBy(v string) *CreateSubscriptionGrantOutput { + s.UpdatedBy = &v + return s +} + +type CreateSubscriptionRequestInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The ID of the Amazon DataZone domain in which the subscription request is + // created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The reason for the subscription request. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSubscriptionRequestInput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // SubscribedListings is a required field + SubscribedListings []*SubscribedListingInput_ `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // The Amazon DataZone principals for whom the subscription request is created. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipalInput_ `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionRequestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionRequestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSubscriptionRequestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSubscriptionRequestInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.RequestReason == nil { + invalidParams.Add(request.NewErrParamRequired("RequestReason")) + } + if s.RequestReason != nil && len(*s.RequestReason) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RequestReason", 1)) + } + if s.SubscribedListings == nil { + invalidParams.Add(request.NewErrParamRequired("SubscribedListings")) + } + if s.SubscribedListings != nil && len(s.SubscribedListings) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SubscribedListings", 1)) + } + if s.SubscribedPrincipals == nil { + invalidParams.Add(request.NewErrParamRequired("SubscribedPrincipals")) + } + if s.SubscribedPrincipals != nil && len(s.SubscribedPrincipals) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SubscribedPrincipals", 1)) + } + if s.SubscribedListings != nil { + for i, v := range s.SubscribedListings { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubscribedListings", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateSubscriptionRequestInput) SetClientToken(v string) *CreateSubscriptionRequestInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateSubscriptionRequestInput) SetDomainIdentifier(v string) *CreateSubscriptionRequestInput { + s.DomainIdentifier = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *CreateSubscriptionRequestInput) SetRequestReason(v string) *CreateSubscriptionRequestInput { + s.RequestReason = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *CreateSubscriptionRequestInput) SetSubscribedListings(v []*SubscribedListingInput_) *CreateSubscriptionRequestInput { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *CreateSubscriptionRequestInput) SetSubscribedPrincipals(v []*SubscribedPrincipalInput_) *CreateSubscriptionRequestInput { + s.SubscribedPrincipals = v + return s +} + +type CreateSubscriptionRequestOutput struct { + _ struct{} `type:"structure"` + + // A timestamp of when the subscription request is created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription request. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The decision comment of the subscription request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSubscriptionRequestOutput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in whcih the subscription request is + // created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the subscription request. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The reason for the subscription request. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSubscriptionRequestOutput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the reviewer of the subscription request. + ReviewerId *string `locationName:"reviewerId" type:"string"` + + // The status of the subscription request. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionRequestStatus"` + + // SubscribedListings is a required field + SubscribedListings []*SubscribedListing `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // The subscribed principals of the subscription request. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipal `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription request was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription request. + UpdatedBy *string `locationName:"updatedBy" 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 CreateSubscriptionRequestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionRequestOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateSubscriptionRequestOutput) SetCreatedAt(v time.Time) *CreateSubscriptionRequestOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateSubscriptionRequestOutput) SetCreatedBy(v string) *CreateSubscriptionRequestOutput { + s.CreatedBy = &v + return s +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *CreateSubscriptionRequestOutput) SetDecisionComment(v string) *CreateSubscriptionRequestOutput { + s.DecisionComment = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateSubscriptionRequestOutput) SetDomainId(v string) *CreateSubscriptionRequestOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateSubscriptionRequestOutput) SetId(v string) *CreateSubscriptionRequestOutput { + s.Id = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *CreateSubscriptionRequestOutput) SetRequestReason(v string) *CreateSubscriptionRequestOutput { + s.RequestReason = &v + return s +} + +// SetReviewerId sets the ReviewerId field's value. +func (s *CreateSubscriptionRequestOutput) SetReviewerId(v string) *CreateSubscriptionRequestOutput { + s.ReviewerId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateSubscriptionRequestOutput) SetStatus(v string) *CreateSubscriptionRequestOutput { + s.Status = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *CreateSubscriptionRequestOutput) SetSubscribedListings(v []*SubscribedListing) *CreateSubscriptionRequestOutput { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *CreateSubscriptionRequestOutput) SetSubscribedPrincipals(v []*SubscribedPrincipal) *CreateSubscriptionRequestOutput { + s.SubscribedPrincipals = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateSubscriptionRequestOutput) SetUpdatedAt(v time.Time) *CreateSubscriptionRequestOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *CreateSubscriptionRequestOutput) SetUpdatedBy(v string) *CreateSubscriptionRequestOutput { + s.UpdatedBy = &v + return s +} + +type CreateSubscriptionTargetInput struct { + _ struct{} `type:"structure"` + + // The asset types that can be included in the subscription target. + // + // ApplicableAssetTypes is a required field + ApplicableAssetTypes []*string `locationName:"applicableAssetTypes" type:"list" required:"true"` + + // The authorized principals of the subscription target. + // + // AuthorizedPrincipals is a required field + AuthorizedPrincipals []*string `locationName:"authorizedPrincipals" min:"1" type:"list" required:"true"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The ID of the Amazon DataZone domain in which subscription target is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the environment in which subscription target is created. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `location:"uri" locationName:"environmentIdentifier" type:"string" required:"true"` + + // The manage access role that is used to create the subscription target. + // + // ManageAccessRole is a required field + ManageAccessRole *string `locationName:"manageAccessRole" type:"string" required:"true"` + + // The name of the subscription target. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSubscriptionTargetInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The provider of the subscription target. + Provider *string `locationName:"provider" type:"string"` + + // The configuration of the subscription target. + // + // SubscriptionTargetConfig is a required field + SubscriptionTargetConfig []*SubscriptionTargetForm `locationName:"subscriptionTargetConfig" type:"list" required:"true"` + + // The type of the subscription target. + // + // Type is a required field + Type *string `locationName:"type" 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 CreateSubscriptionTargetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionTargetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSubscriptionTargetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSubscriptionTargetInput"} + if s.ApplicableAssetTypes == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicableAssetTypes")) + } + if s.AuthorizedPrincipals == nil { + invalidParams.Add(request.NewErrParamRequired("AuthorizedPrincipals")) + } + if s.AuthorizedPrincipals != nil && len(s.AuthorizedPrincipals) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AuthorizedPrincipals", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.EnvironmentIdentifier != nil && len(*s.EnvironmentIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentIdentifier", 1)) + } + if s.ManageAccessRole == nil { + invalidParams.Add(request.NewErrParamRequired("ManageAccessRole")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SubscriptionTargetConfig == nil { + invalidParams.Add(request.NewErrParamRequired("SubscriptionTargetConfig")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.SubscriptionTargetConfig != nil { + for i, v := range s.SubscriptionTargetConfig { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubscriptionTargetConfig", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicableAssetTypes sets the ApplicableAssetTypes field's value. +func (s *CreateSubscriptionTargetInput) SetApplicableAssetTypes(v []*string) *CreateSubscriptionTargetInput { + s.ApplicableAssetTypes = v + return s +} + +// SetAuthorizedPrincipals sets the AuthorizedPrincipals field's value. +func (s *CreateSubscriptionTargetInput) SetAuthorizedPrincipals(v []*string) *CreateSubscriptionTargetInput { + s.AuthorizedPrincipals = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateSubscriptionTargetInput) SetClientToken(v string) *CreateSubscriptionTargetInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateSubscriptionTargetInput) SetDomainIdentifier(v string) *CreateSubscriptionTargetInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *CreateSubscriptionTargetInput) SetEnvironmentIdentifier(v string) *CreateSubscriptionTargetInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetManageAccessRole sets the ManageAccessRole field's value. +func (s *CreateSubscriptionTargetInput) SetManageAccessRole(v string) *CreateSubscriptionTargetInput { + s.ManageAccessRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateSubscriptionTargetInput) SetName(v string) *CreateSubscriptionTargetInput { + s.Name = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *CreateSubscriptionTargetInput) SetProvider(v string) *CreateSubscriptionTargetInput { + s.Provider = &v + return s +} + +// SetSubscriptionTargetConfig sets the SubscriptionTargetConfig field's value. +func (s *CreateSubscriptionTargetInput) SetSubscriptionTargetConfig(v []*SubscriptionTargetForm) *CreateSubscriptionTargetInput { + s.SubscriptionTargetConfig = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateSubscriptionTargetInput) SetType(v string) *CreateSubscriptionTargetInput { + s.Type = &v + return s +} + +type CreateSubscriptionTargetOutput struct { + _ struct{} `type:"structure"` + + // The asset types that can be included in the subscription target. + // + // ApplicableAssetTypes is a required field + ApplicableAssetTypes []*string `locationName:"applicableAssetTypes" type:"list" required:"true"` + + // The authorised principals of the subscription target. + // + // AuthorizedPrincipals is a required field + AuthorizedPrincipals []*string `locationName:"authorizedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription target was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription target. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the subscription target was + // created. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the environment in which the subscription target was created. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // The ID of the subscription target. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The manage access role with which the subscription target was created. + // + // ManageAccessRole is a required field + ManageAccessRole *string `locationName:"manageAccessRole" type:"string" required:"true"` + + // The name of the subscription target. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSubscriptionTargetOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // ??? + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider of the subscription target. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The configuration of the subscription target. + // + // SubscriptionTargetConfig is a required field + SubscriptionTargetConfig []*SubscriptionTargetForm `locationName:"subscriptionTargetConfig" type:"list" required:"true"` + + // The type of the subscription target. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true"` + + // The timestamp of when the subscription target was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the subscription target. + UpdatedBy *string `locationName:"updatedBy" 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 CreateSubscriptionTargetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSubscriptionTargetOutput) GoString() string { + return s.String() +} + +// SetApplicableAssetTypes sets the ApplicableAssetTypes field's value. +func (s *CreateSubscriptionTargetOutput) SetApplicableAssetTypes(v []*string) *CreateSubscriptionTargetOutput { + s.ApplicableAssetTypes = v + return s +} + +// SetAuthorizedPrincipals sets the AuthorizedPrincipals field's value. +func (s *CreateSubscriptionTargetOutput) SetAuthorizedPrincipals(v []*string) *CreateSubscriptionTargetOutput { + s.AuthorizedPrincipals = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateSubscriptionTargetOutput) SetCreatedAt(v time.Time) *CreateSubscriptionTargetOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CreateSubscriptionTargetOutput) SetCreatedBy(v string) *CreateSubscriptionTargetOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateSubscriptionTargetOutput) SetDomainId(v string) *CreateSubscriptionTargetOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *CreateSubscriptionTargetOutput) SetEnvironmentId(v string) *CreateSubscriptionTargetOutput { + s.EnvironmentId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateSubscriptionTargetOutput) SetId(v string) *CreateSubscriptionTargetOutput { + s.Id = &v + return s +} + +// SetManageAccessRole sets the ManageAccessRole field's value. +func (s *CreateSubscriptionTargetOutput) SetManageAccessRole(v string) *CreateSubscriptionTargetOutput { + s.ManageAccessRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateSubscriptionTargetOutput) SetName(v string) *CreateSubscriptionTargetOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *CreateSubscriptionTargetOutput) SetProjectId(v string) *CreateSubscriptionTargetOutput { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *CreateSubscriptionTargetOutput) SetProvider(v string) *CreateSubscriptionTargetOutput { + s.Provider = &v + return s +} + +// SetSubscriptionTargetConfig sets the SubscriptionTargetConfig field's value. +func (s *CreateSubscriptionTargetOutput) SetSubscriptionTargetConfig(v []*SubscriptionTargetForm) *CreateSubscriptionTargetOutput { + s.SubscriptionTargetConfig = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateSubscriptionTargetOutput) SetType(v string) *CreateSubscriptionTargetOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateSubscriptionTargetOutput) SetUpdatedAt(v time.Time) *CreateSubscriptionTargetOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *CreateSubscriptionTargetOutput) SetUpdatedBy(v string) *CreateSubscriptionTargetOutput { + s.UpdatedBy = &v + return s +} + +type CreateUserProfileInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon DataZone domain in which a user profile is created. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the user for which the user profile is created. + // + // UserIdentifier is a required field + UserIdentifier *string `locationName:"userIdentifier" type:"string" required:"true"` + + // The user type of the user for which the user profile is created. + UserType *string `locationName:"userType" type:"string" enum:"UserType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUserProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUserProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateUserProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateUserProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.UserIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("UserIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateUserProfileInput) SetClientToken(v string) *CreateUserProfileInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *CreateUserProfileInput) SetDomainIdentifier(v string) *CreateUserProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetUserIdentifier sets the UserIdentifier field's value. +func (s *CreateUserProfileInput) SetUserIdentifier(v string) *CreateUserProfileInput { + s.UserIdentifier = &v + return s +} + +// SetUserType sets the UserType field's value. +func (s *CreateUserProfileInput) SetUserType(v string) *CreateUserProfileInput { + s.UserType = &v + return s +} + +type CreateUserProfileOutput struct { + _ struct{} `type:"structure"` + + // The details of the user profile in Amazon DataZone. + Details *UserProfileDetails `locationName:"details" type:"structure"` + + // The identifier of the Amazon DataZone domain in which a user profile is created. + DomainId *string `locationName:"domainId" type:"string"` + + // The identifier of the user profile. + Id *string `locationName:"id" type:"string"` + + // The status of the user profile. + Status *string `locationName:"status" type:"string" enum:"UserProfileStatus"` + + // The type of the user profile. + Type *string `locationName:"type" type:"string" enum:"UserProfileType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUserProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUserProfileOutput) GoString() string { + return s.String() +} + +// SetDetails sets the Details field's value. +func (s *CreateUserProfileOutput) SetDetails(v *UserProfileDetails) *CreateUserProfileOutput { + s.Details = v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *CreateUserProfileOutput) SetDomainId(v string) *CreateUserProfileOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateUserProfileOutput) SetId(v string) *CreateUserProfileOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateUserProfileOutput) SetStatus(v string) *CreateUserProfileOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *CreateUserProfileOutput) SetType(v string) *CreateUserProfileOutput { + s.Type = &v + return s +} + +// The details of user parameters of an environment blueprint. +type CustomParameter struct { + _ struct{} `type:"structure"` + + // The default value of the parameter. + DefaultValue *string `locationName:"defaultValue" type:"string"` + + // The description of the parameter. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CustomParameter's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The filed type of the parameter. + // + // FieldType is a required field + FieldType *string `locationName:"fieldType" type:"string" required:"true"` + + // Specifies whether the parameter is editable. + IsEditable *bool `locationName:"isEditable" type:"boolean"` + + // Specifies whether the custom parameter is optional. + IsOptional *bool `locationName:"isOptional" type:"boolean"` + + // The key name of the parameter. + // + // KeyName is a required field + KeyName *string `locationName:"keyName" 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 CustomParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomParameter) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *CustomParameter) SetDefaultValue(v string) *CustomParameter { + s.DefaultValue = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CustomParameter) SetDescription(v string) *CustomParameter { + s.Description = &v + return s +} + +// SetFieldType sets the FieldType field's value. +func (s *CustomParameter) SetFieldType(v string) *CustomParameter { + s.FieldType = &v + return s +} + +// SetIsEditable sets the IsEditable field's value. +func (s *CustomParameter) SetIsEditable(v bool) *CustomParameter { + s.IsEditable = &v + return s +} + +// SetIsOptional sets the IsOptional field's value. +func (s *CustomParameter) SetIsOptional(v bool) *CustomParameter { + s.IsOptional = &v + return s +} + +// SetKeyName sets the KeyName field's value. +func (s *CustomParameter) SetKeyName(v string) *CustomParameter { + s.KeyName = &v + return s +} + +type DataProductItem struct { + _ struct{} `type:"structure"` + + DomainId *string `locationName:"domainId" type:"string"` + + ItemId *string `locationName:"itemId" 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 DataProductItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductItem) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *DataProductItem) SetDomainId(v string) *DataProductItem { + s.DomainId = &v + return s +} + +// SetItemId sets the ItemId field's value. +func (s *DataProductItem) SetItemId(v string) *DataProductItem { + s.ItemId = &v + return s +} + +type DataProductSummary struct { + _ struct{} `type:"structure"` + + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + CreatedBy *string `locationName:"createdBy" type:"string"` + + DataProductItems []*DataProductItem `locationName:"dataProductItems" type:"list"` + + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataProductSummary's + // String and GoString methods. + Description *string `locationName:"description" min:"1" type:"string" sensitive:"true"` + + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataProductSummary's + // String and GoString methods. + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + UpdatedBy *string `locationName:"updatedBy" 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 DataProductSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DataProductSummary) SetCreatedAt(v time.Time) *DataProductSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *DataProductSummary) SetCreatedBy(v string) *DataProductSummary { + s.CreatedBy = &v + return s +} + +// SetDataProductItems sets the DataProductItems field's value. +func (s *DataProductSummary) SetDataProductItems(v []*DataProductItem) *DataProductSummary { + s.DataProductItems = v + return s +} + +// SetDescription sets the Description field's value. +func (s *DataProductSummary) SetDescription(v string) *DataProductSummary { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *DataProductSummary) SetDomainId(v string) *DataProductSummary { + s.DomainId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *DataProductSummary) SetGlossaryTerms(v []*string) *DataProductSummary { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *DataProductSummary) SetId(v string) *DataProductSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataProductSummary) SetName(v string) *DataProductSummary { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *DataProductSummary) SetOwningProjectId(v string) *DataProductSummary { + s.OwningProjectId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataProductSummary) SetUpdatedAt(v time.Time) *DataProductSummary { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *DataProductSummary) SetUpdatedBy(v string) *DataProductSummary { + s.UpdatedBy = &v + return s +} + +// The configuration of the data source. +type DataSourceConfigurationInput_ struct { + _ struct{} `type:"structure"` + + // The configuration of the Amazon Web Services Glue data source. + GlueRunConfiguration *GlueRunConfigurationInput_ `locationName:"glueRunConfiguration" type:"structure"` + + // The configuration of the Amazon Redshift data source. + RedshiftRunConfiguration *RedshiftRunConfigurationInput_ `locationName:"redshiftRunConfiguration" 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 DataSourceConfigurationInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceConfigurationInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSourceConfigurationInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceConfigurationInput_"} + if s.GlueRunConfiguration != nil { + if err := s.GlueRunConfiguration.Validate(); err != nil { + invalidParams.AddNested("GlueRunConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RedshiftRunConfiguration != nil { + if err := s.RedshiftRunConfiguration.Validate(); err != nil { + invalidParams.AddNested("RedshiftRunConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGlueRunConfiguration sets the GlueRunConfiguration field's value. +func (s *DataSourceConfigurationInput_) SetGlueRunConfiguration(v *GlueRunConfigurationInput_) *DataSourceConfigurationInput_ { + s.GlueRunConfiguration = v + return s +} + +// SetRedshiftRunConfiguration sets the RedshiftRunConfiguration field's value. +func (s *DataSourceConfigurationInput_) SetRedshiftRunConfiguration(v *RedshiftRunConfigurationInput_) *DataSourceConfigurationInput_ { + s.RedshiftRunConfiguration = v + return s +} + +// The configuration of the data source. +type DataSourceConfigurationOutput_ struct { + _ struct{} `type:"structure"` + + // The configuration of the Amazon Web Services Glue data source. + GlueRunConfiguration *GlueRunConfigurationOutput_ `locationName:"glueRunConfiguration" type:"structure"` + + // The configuration of the Amazon Redshift data source. + RedshiftRunConfiguration *RedshiftRunConfigurationOutput_ `locationName:"redshiftRunConfiguration" 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 DataSourceConfigurationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceConfigurationOutput_) GoString() string { + return s.String() +} + +// SetGlueRunConfiguration sets the GlueRunConfiguration field's value. +func (s *DataSourceConfigurationOutput_) SetGlueRunConfiguration(v *GlueRunConfigurationOutput_) *DataSourceConfigurationOutput_ { + s.GlueRunConfiguration = v + return s +} + +// SetRedshiftRunConfiguration sets the RedshiftRunConfiguration field's value. +func (s *DataSourceConfigurationOutput_) SetRedshiftRunConfiguration(v *RedshiftRunConfigurationOutput_) *DataSourceConfigurationOutput_ { + s.RedshiftRunConfiguration = v + return s +} + +// The details of the error message that is returned if the operation cannot +// be successfully completed. +type DataSourceErrorMessage struct { + _ struct{} `type:"structure"` + + // The details of the error message that is returned if the operation cannot + // be successfully completed. + ErrorDetail *string `locationName:"errorDetail" type:"string"` + + // The type of the error message that is returned if the operation cannot be + // successfully completed. + // + // ErrorType is a required field + ErrorType *string `locationName:"errorType" type:"string" required:"true" enum:"DataSourceErrorType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceErrorMessage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceErrorMessage) GoString() string { + return s.String() +} + +// SetErrorDetail sets the ErrorDetail field's value. +func (s *DataSourceErrorMessage) SetErrorDetail(v string) *DataSourceErrorMessage { + s.ErrorDetail = &v + return s +} + +// SetErrorType sets the ErrorType field's value. +func (s *DataSourceErrorMessage) SetErrorType(v string) *DataSourceErrorMessage { + s.ErrorType = &v + return s +} + +// The activity details of the data source run. +type DataSourceRunActivity struct { + _ struct{} `type:"structure"` + + // The timestamp of when data source run activity was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The identifier of the asset included in the data source run activity. + DataAssetId *string `locationName:"dataAssetId" type:"string"` + + // The status of the asset included in the data source run activity. + // + // DataAssetStatus is a required field + DataAssetStatus *string `locationName:"dataAssetStatus" type:"string" required:"true" enum:"DataAssetActivityStatus"` + + // The identifier of the data source for the data source run activity. + // + // DataSourceRunId is a required field + DataSourceRunId *string `locationName:"dataSourceRunId" type:"string" required:"true"` + + // The database included in the data source run activity. + // + // Database is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataSourceRunActivity's + // String and GoString methods. + // + // Database is a required field + Database *string `locationName:"database" min:"1" type:"string" required:"true" sensitive:"true"` + + // The details of the error message that is returned if the operation cannot + // be successfully completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The project ID included in the data source run activity. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The technical description included in the data source run activity. + // + // TechnicalDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataSourceRunActivity's + // String and GoString methods. + TechnicalDescription *string `locationName:"technicalDescription" type:"string" sensitive:"true"` + + // The technical name included in the data source run activity. + // + // TechnicalName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataSourceRunActivity's + // String and GoString methods. + // + // TechnicalName is a required field + TechnicalName *string `locationName:"technicalName" min:"1" type:"string" required:"true" sensitive:"true"` + + // The timestamp of when data source run activity was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 DataSourceRunActivity) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceRunActivity) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DataSourceRunActivity) SetCreatedAt(v time.Time) *DataSourceRunActivity { + s.CreatedAt = &v + return s +} + +// SetDataAssetId sets the DataAssetId field's value. +func (s *DataSourceRunActivity) SetDataAssetId(v string) *DataSourceRunActivity { + s.DataAssetId = &v + return s +} + +// SetDataAssetStatus sets the DataAssetStatus field's value. +func (s *DataSourceRunActivity) SetDataAssetStatus(v string) *DataSourceRunActivity { + s.DataAssetStatus = &v + return s +} + +// SetDataSourceRunId sets the DataSourceRunId field's value. +func (s *DataSourceRunActivity) SetDataSourceRunId(v string) *DataSourceRunActivity { + s.DataSourceRunId = &v + return s +} + +// SetDatabase sets the Database field's value. +func (s *DataSourceRunActivity) SetDatabase(v string) *DataSourceRunActivity { + s.Database = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *DataSourceRunActivity) SetErrorMessage(v *DataSourceErrorMessage) *DataSourceRunActivity { + s.ErrorMessage = v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *DataSourceRunActivity) SetProjectId(v string) *DataSourceRunActivity { + s.ProjectId = &v + return s +} + +// SetTechnicalDescription sets the TechnicalDescription field's value. +func (s *DataSourceRunActivity) SetTechnicalDescription(v string) *DataSourceRunActivity { + s.TechnicalDescription = &v + return s +} + +// SetTechnicalName sets the TechnicalName field's value. +func (s *DataSourceRunActivity) SetTechnicalName(v string) *DataSourceRunActivity { + s.TechnicalName = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataSourceRunActivity) SetUpdatedAt(v time.Time) *DataSourceRunActivity { + s.UpdatedAt = &v + return s +} + +// The details of a data source run. +type DataSourceRunSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when a data source run was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The identifier of the data source of the data source run. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // The details of the error message that is returned if the operation cannot + // be successfully completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The identifier of the data source run. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The project ID of the data source run. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The asset statistics from the data source run. + RunStatisticsForAssets *RunStatisticsForAssets `locationName:"runStatisticsForAssets" type:"structure"` + + // The timestamp of when a data source run was started. + StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The status of the data source run. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceRunStatus"` + + // The timestamp of when a data source run was stopped. + StoppedAt *time.Time `locationName:"stoppedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The type of the data source run. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DataSourceRunType"` + + // The timestamp of when a data source run was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 DataSourceRunSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceRunSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DataSourceRunSummary) SetCreatedAt(v time.Time) *DataSourceRunSummary { + s.CreatedAt = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DataSourceRunSummary) SetDataSourceId(v string) *DataSourceRunSummary { + s.DataSourceId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *DataSourceRunSummary) SetErrorMessage(v *DataSourceErrorMessage) *DataSourceRunSummary { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *DataSourceRunSummary) SetId(v string) *DataSourceRunSummary { + s.Id = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *DataSourceRunSummary) SetProjectId(v string) *DataSourceRunSummary { + s.ProjectId = &v + return s +} + +// SetRunStatisticsForAssets sets the RunStatisticsForAssets field's value. +func (s *DataSourceRunSummary) SetRunStatisticsForAssets(v *RunStatisticsForAssets) *DataSourceRunSummary { + s.RunStatisticsForAssets = v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *DataSourceRunSummary) SetStartedAt(v time.Time) *DataSourceRunSummary { + s.StartedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataSourceRunSummary) SetStatus(v string) *DataSourceRunSummary { + s.Status = &v + return s +} + +// SetStoppedAt sets the StoppedAt field's value. +func (s *DataSourceRunSummary) SetStoppedAt(v time.Time) *DataSourceRunSummary { + s.StoppedAt = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceRunSummary) SetType(v string) *DataSourceRunSummary { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataSourceRunSummary) SetUpdatedAt(v time.Time) *DataSourceRunSummary { + s.UpdatedAt = &v + return s +} + +// The details of the data source. +type DataSourceSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when the data source was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The ID of the data source. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the data source exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Specifies whether the data source is enabled. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The ID of the environment in which the data source exists. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // The count of the assets created during the last data source run. + LastRunAssetCount *int64 `locationName:"lastRunAssetCount" type:"integer"` + + // The timestamp of when the data source run was last performed. + LastRunAt *time.Time `locationName:"lastRunAt" type:"timestamp" timestampFormat:"iso8601"` + + // The details of the error message that is returned if the operation cannot + // be successfully completed. + LastRunErrorMessage *DataSourceErrorMessage `locationName:"lastRunErrorMessage" type:"structure"` + + // The status of the last data source run. + LastRunStatus *string `locationName:"lastRunStatus" type:"string" enum:"DataSourceRunStatus"` + + // The name of the data source. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataSourceSummary's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The details of the schedule of the data source runs. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DataSourceSummary's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` + + // The status of the data source. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceStatus"` + + // The type of the data source. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true"` + + // The timestamp of when the data source was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DataSourceSummary) SetCreatedAt(v time.Time) *DataSourceSummary { + s.CreatedAt = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DataSourceSummary) SetDataSourceId(v string) *DataSourceSummary { + s.DataSourceId = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *DataSourceSummary) SetDomainId(v string) *DataSourceSummary { + s.DomainId = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *DataSourceSummary) SetEnableSetting(v string) *DataSourceSummary { + s.EnableSetting = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *DataSourceSummary) SetEnvironmentId(v string) *DataSourceSummary { + s.EnvironmentId = &v + return s +} + +// SetLastRunAssetCount sets the LastRunAssetCount field's value. +func (s *DataSourceSummary) SetLastRunAssetCount(v int64) *DataSourceSummary { + s.LastRunAssetCount = &v + return s +} + +// SetLastRunAt sets the LastRunAt field's value. +func (s *DataSourceSummary) SetLastRunAt(v time.Time) *DataSourceSummary { + s.LastRunAt = &v + return s +} + +// SetLastRunErrorMessage sets the LastRunErrorMessage field's value. +func (s *DataSourceSummary) SetLastRunErrorMessage(v *DataSourceErrorMessage) *DataSourceSummary { + s.LastRunErrorMessage = v + return s +} + +// SetLastRunStatus sets the LastRunStatus field's value. +func (s *DataSourceSummary) SetLastRunStatus(v string) *DataSourceSummary { + s.LastRunStatus = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceSummary) SetName(v string) *DataSourceSummary { + s.Name = &v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *DataSourceSummary) SetSchedule(v *ScheduleConfiguration) *DataSourceSummary { + s.Schedule = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataSourceSummary) SetStatus(v string) *DataSourceSummary { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceSummary) SetType(v string) *DataSourceSummary { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataSourceSummary) SetUpdatedAt(v time.Time) *DataSourceSummary { + s.UpdatedAt = &v + return s +} + +type DeleteAssetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the asset is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the asset that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAssetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAssetInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteAssetInput) SetDomainIdentifier(v string) *DeleteAssetInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteAssetInput) SetIdentifier(v string) *DeleteAssetInput { + s.Identifier = &v + return s +} + +type DeleteAssetOutput 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 DeleteAssetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetOutput) GoString() string { + return s.String() +} + +type DeleteAssetTypeInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the asset type is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the asset type that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" 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 DeleteAssetTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAssetTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAssetTypeInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteAssetTypeInput) SetDomainIdentifier(v string) *DeleteAssetTypeInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteAssetTypeInput) SetIdentifier(v string) *DeleteAssetTypeInput { + s.Identifier = &v + return s +} + +type DeleteAssetTypeOutput 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 DeleteAssetTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetTypeOutput) GoString() string { + return s.String() +} + +type DeleteDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `location:"querystring" locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The ID of the Amazon DataZone domain in which the data source is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the data source that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteDataSourceInput) SetClientToken(v string) *DeleteDataSourceInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteDataSourceInput) SetDomainIdentifier(v string) *DeleteDataSourceInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteDataSourceInput) SetIdentifier(v string) *DeleteDataSourceInput { + s.Identifier = &v + return s +} + +type DeleteDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The asset data forms associated with this data source. + AssetFormsOutput []*FormOutput_ `locationName:"assetFormsOutput" type:"list"` + + // The configuration of the data source that is deleted. + Configuration *DataSourceConfigurationOutput_ `locationName:"configuration" type:"structure"` + + // The timestamp of when this data source was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The description of the data source that is deleted. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeleteDataSourceOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the data source is deleted. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The enable setting of the data source that specifies whether the data source + // is enabled or disabled. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The ID of the environemnt associated with this data source. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The ID of the data source that is deleted. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp of when the data source was last run. + LastRunAt *time.Time `locationName:"lastRunAt" type:"timestamp" timestampFormat:"iso8601"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + LastRunErrorMessage *DataSourceErrorMessage `locationName:"lastRunErrorMessage" type:"structure"` + + // The status of the last run of this data source. + LastRunStatus *string `locationName:"lastRunStatus" type:"string" enum:"DataSourceRunStatus"` + + // The name of the data source that is deleted. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeleteDataSourceOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project in which this data source exists and from which it's + // deleted. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // Specifies whether the assets that this data source creates in the inventory + // are to be also automatically published to the catalog. + PublishOnImport *bool `locationName:"publishOnImport" type:"boolean"` + + // The schedule of runs for this data source. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeleteDataSourceOutput's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` + + // The status of this data source. + Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The type of this data source. + Type *string `locationName:"type" min:"1" type:"string"` + + // The timestamp of when this data source was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceOutput) GoString() string { + return s.String() +} + +// SetAssetFormsOutput sets the AssetFormsOutput field's value. +func (s *DeleteDataSourceOutput) SetAssetFormsOutput(v []*FormOutput_) *DeleteDataSourceOutput { + s.AssetFormsOutput = v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *DeleteDataSourceOutput) SetConfiguration(v *DataSourceConfigurationOutput_) *DeleteDataSourceOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DeleteDataSourceOutput) SetCreatedAt(v time.Time) *DeleteDataSourceOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DeleteDataSourceOutput) SetDescription(v string) *DeleteDataSourceOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *DeleteDataSourceOutput) SetDomainId(v string) *DeleteDataSourceOutput { + s.DomainId = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *DeleteDataSourceOutput) SetEnableSetting(v string) *DeleteDataSourceOutput { + s.EnableSetting = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *DeleteDataSourceOutput) SetEnvironmentId(v string) *DeleteDataSourceOutput { + s.EnvironmentId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *DeleteDataSourceOutput) SetErrorMessage(v *DataSourceErrorMessage) *DeleteDataSourceOutput { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *DeleteDataSourceOutput) SetId(v string) *DeleteDataSourceOutput { + s.Id = &v + return s +} + +// SetLastRunAt sets the LastRunAt field's value. +func (s *DeleteDataSourceOutput) SetLastRunAt(v time.Time) *DeleteDataSourceOutput { + s.LastRunAt = &v + return s +} + +// SetLastRunErrorMessage sets the LastRunErrorMessage field's value. +func (s *DeleteDataSourceOutput) SetLastRunErrorMessage(v *DataSourceErrorMessage) *DeleteDataSourceOutput { + s.LastRunErrorMessage = v + return s +} + +// SetLastRunStatus sets the LastRunStatus field's value. +func (s *DeleteDataSourceOutput) SetLastRunStatus(v string) *DeleteDataSourceOutput { + s.LastRunStatus = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteDataSourceOutput) SetName(v string) *DeleteDataSourceOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *DeleteDataSourceOutput) SetProjectId(v string) *DeleteDataSourceOutput { + s.ProjectId = &v + return s +} + +// SetPublishOnImport sets the PublishOnImport field's value. +func (s *DeleteDataSourceOutput) SetPublishOnImport(v bool) *DeleteDataSourceOutput { + s.PublishOnImport = &v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *DeleteDataSourceOutput) SetSchedule(v *ScheduleConfiguration) *DeleteDataSourceOutput { + s.Schedule = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteDataSourceOutput) SetStatus(v string) *DeleteDataSourceOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *DeleteDataSourceOutput) SetType(v string) *DeleteDataSourceOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DeleteDataSourceOutput) SetUpdatedAt(v time.Time) *DeleteDataSourceOutput { + s.UpdatedAt = &v + return s +} + +type DeleteDomainInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `location:"querystring" locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon Web Services domain that is to be deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDomainInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteDomainInput) SetClientToken(v string) *DeleteDomainInput { + s.ClientToken = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteDomainInput) SetIdentifier(v string) *DeleteDomainInput { + s.Identifier = &v + return s +} + +type DeleteDomainOutput struct { + _ struct{} `type:"structure"` + + // The status of the domain. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DomainStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDomainOutput) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *DeleteDomainOutput) SetStatus(v string) *DeleteDomainOutput { + s.Status = &v + return s +} + +type DeleteEnvironmentBlueprintConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the blueprint configuration + // is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the blueprint the configuration of which is deleted. + // + // EnvironmentBlueprintIdentifier is a required field + EnvironmentBlueprintIdentifier *string `location:"uri" locationName:"environmentBlueprintIdentifier" 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 DeleteEnvironmentBlueprintConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentBlueprintConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentBlueprintConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentBlueprintConfigurationInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentBlueprintIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentBlueprintIdentifier")) + } + if s.EnvironmentBlueprintIdentifier != nil && len(*s.EnvironmentBlueprintIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentBlueprintIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteEnvironmentBlueprintConfigurationInput) SetDomainIdentifier(v string) *DeleteEnvironmentBlueprintConfigurationInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentBlueprintIdentifier sets the EnvironmentBlueprintIdentifier field's value. +func (s *DeleteEnvironmentBlueprintConfigurationInput) SetEnvironmentBlueprintIdentifier(v string) *DeleteEnvironmentBlueprintConfigurationInput { + s.EnvironmentBlueprintIdentifier = &v + return s +} + +type DeleteEnvironmentBlueprintConfigurationOutput 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 DeleteEnvironmentBlueprintConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentBlueprintConfigurationOutput) GoString() string { + return s.String() +} + +type DeleteEnvironmentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the environment is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the environment that is to be deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteEnvironmentInput) SetDomainIdentifier(v string) *DeleteEnvironmentInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteEnvironmentInput) SetIdentifier(v string) *DeleteEnvironmentInput { + s.Identifier = &v + return s +} + +type DeleteEnvironmentOutput 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 DeleteEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentOutput) GoString() string { + return s.String() +} + +type DeleteEnvironmentProfileInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the environment profile is + // deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the environment profile that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteEnvironmentProfileInput) SetDomainIdentifier(v string) *DeleteEnvironmentProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteEnvironmentProfileInput) SetIdentifier(v string) *DeleteEnvironmentProfileInput { + s.Identifier = &v + return s +} + +type DeleteEnvironmentProfileOutput 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 DeleteEnvironmentProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentProfileOutput) GoString() string { + return s.String() +} + +type DeleteFormTypeInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the metadata form type is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the metadata form type that is deleted. + // + // FormTypeIdentifier is a required field + FormTypeIdentifier *string `location:"uri" locationName:"formTypeIdentifier" 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 DeleteFormTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteFormTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteFormTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteFormTypeInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.FormTypeIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("FormTypeIdentifier")) + } + if s.FormTypeIdentifier != nil && len(*s.FormTypeIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FormTypeIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteFormTypeInput) SetDomainIdentifier(v string) *DeleteFormTypeInput { + s.DomainIdentifier = &v + return s +} + +// SetFormTypeIdentifier sets the FormTypeIdentifier field's value. +func (s *DeleteFormTypeInput) SetFormTypeIdentifier(v string) *DeleteFormTypeInput { + s.FormTypeIdentifier = &v + return s +} + +type DeleteFormTypeOutput 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 DeleteFormTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteFormTypeOutput) GoString() string { + return s.String() +} + +type DeleteGlossaryInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the business glossary is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the business glossary that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGlossaryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGlossaryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteGlossaryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGlossaryInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteGlossaryInput) SetDomainIdentifier(v string) *DeleteGlossaryInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteGlossaryInput) SetIdentifier(v string) *DeleteGlossaryInput { + s.Identifier = &v + return s +} + +type DeleteGlossaryOutput 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 DeleteGlossaryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGlossaryOutput) GoString() string { + return s.String() +} + +type DeleteGlossaryTermInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the business glossary term + // is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the business glossary term that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGlossaryTermInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGlossaryTermInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteGlossaryTermInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGlossaryTermInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteGlossaryTermInput) SetDomainIdentifier(v string) *DeleteGlossaryTermInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteGlossaryTermInput) SetIdentifier(v string) *DeleteGlossaryTermInput { + s.Identifier = &v + return s +} + +type DeleteGlossaryTermOutput 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 DeleteGlossaryTermOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGlossaryTermOutput) GoString() string { + return s.String() +} + +type DeleteListingInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteListingInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteListingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteListingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteListingInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteListingInput) SetDomainIdentifier(v string) *DeleteListingInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteListingInput) SetIdentifier(v string) *DeleteListingInput { + s.Identifier = &v + return s +} + +type DeleteListingOutput 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 DeleteListingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteListingOutput) GoString() string { + return s.String() +} + +type DeleteProjectInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the project is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the project that is to be deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProjectInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProjectInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProjectInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProjectInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteProjectInput) SetDomainIdentifier(v string) *DeleteProjectInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteProjectInput) SetIdentifier(v string) *DeleteProjectInput { + s.Identifier = &v + return s +} + +type DeleteProjectMembershipInput struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon DataZone domain where project membership is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The project member whose project membership is deleted. + // + // Member is a required field + Member *Member `locationName:"member" type:"structure" required:"true"` + + // The ID of the Amazon DataZone project the membership to which is deleted. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `location:"uri" locationName:"projectIdentifier" 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 DeleteProjectMembershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProjectMembershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProjectMembershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProjectMembershipInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Member == nil { + invalidParams.Add(request.NewErrParamRequired("Member")) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + if s.ProjectIdentifier != nil && len(*s.ProjectIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProjectIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteProjectMembershipInput) SetDomainIdentifier(v string) *DeleteProjectMembershipInput { + s.DomainIdentifier = &v + return s +} + +// SetMember sets the Member field's value. +func (s *DeleteProjectMembershipInput) SetMember(v *Member) *DeleteProjectMembershipInput { + s.Member = v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *DeleteProjectMembershipInput) SetProjectIdentifier(v string) *DeleteProjectMembershipInput { + s.ProjectIdentifier = &v + return s +} + +type DeleteProjectMembershipOutput 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 DeleteProjectMembershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProjectMembershipOutput) GoString() string { + return s.String() +} + +type DeleteProjectOutput 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 DeleteProjectOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProjectOutput) GoString() string { + return s.String() +} + +type DeleteSubscriptionGrantInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain where the subscription grant is deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the subscription grant that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSubscriptionGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSubscriptionGrantInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteSubscriptionGrantInput) SetDomainIdentifier(v string) *DeleteSubscriptionGrantInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteSubscriptionGrantInput) SetIdentifier(v string) *DeleteSubscriptionGrantInput { + s.Identifier = &v + return s +} + +type DeleteSubscriptionGrantOutput struct { + _ struct{} `type:"structure"` + + // The assets for which the subsctiption grant that is deleted gave access. + Assets []*SubscribedAsset `locationName:"assets" type:"list"` + + // The timestamp of when the subscription grant that is deleted was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription grant that is deleted. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the subscription grant is deleted. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The entity to which the subscription is deleted. + // + // GrantedEntity is a required field + GrantedEntity *GrantedEntity `locationName:"grantedEntity" type:"structure" required:"true"` + + // The ID of the subscription grant that is deleted. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The status of the subscription grant that is deleted. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantOverallStatus"` + + // The identifier of the subsctiption whose subscription grant is to be deleted. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` + + // The ID of the subscription target associated with the subscription grant + // that is deleted. + // + // SubscriptionTargetId is a required field + SubscriptionTargetId *string `locationName:"subscriptionTargetId" type:"string" required:"true"` + + // The timestamp of when the subscription grant that is deleted was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription grant that is deleted. + UpdatedBy *string `locationName:"updatedBy" 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 DeleteSubscriptionGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionGrantOutput) GoString() string { + return s.String() +} + +// SetAssets sets the Assets field's value. +func (s *DeleteSubscriptionGrantOutput) SetAssets(v []*SubscribedAsset) *DeleteSubscriptionGrantOutput { + s.Assets = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DeleteSubscriptionGrantOutput) SetCreatedAt(v time.Time) *DeleteSubscriptionGrantOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *DeleteSubscriptionGrantOutput) SetCreatedBy(v string) *DeleteSubscriptionGrantOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *DeleteSubscriptionGrantOutput) SetDomainId(v string) *DeleteSubscriptionGrantOutput { + s.DomainId = &v + return s +} + +// SetGrantedEntity sets the GrantedEntity field's value. +func (s *DeleteSubscriptionGrantOutput) SetGrantedEntity(v *GrantedEntity) *DeleteSubscriptionGrantOutput { + s.GrantedEntity = v + return s +} + +// SetId sets the Id field's value. +func (s *DeleteSubscriptionGrantOutput) SetId(v string) *DeleteSubscriptionGrantOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteSubscriptionGrantOutput) SetStatus(v string) *DeleteSubscriptionGrantOutput { + s.Status = &v + return s +} + +// SetSubscriptionId sets the SubscriptionId field's value. +func (s *DeleteSubscriptionGrantOutput) SetSubscriptionId(v string) *DeleteSubscriptionGrantOutput { + s.SubscriptionId = &v + return s +} + +// SetSubscriptionTargetId sets the SubscriptionTargetId field's value. +func (s *DeleteSubscriptionGrantOutput) SetSubscriptionTargetId(v string) *DeleteSubscriptionGrantOutput { + s.SubscriptionTargetId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DeleteSubscriptionGrantOutput) SetUpdatedAt(v time.Time) *DeleteSubscriptionGrantOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *DeleteSubscriptionGrantOutput) SetUpdatedBy(v string) *DeleteSubscriptionGrantOutput { + s.UpdatedBy = &v + return s +} + +type DeleteSubscriptionRequestInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the subscription request is + // deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the subscription request that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionRequestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionRequestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSubscriptionRequestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSubscriptionRequestInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteSubscriptionRequestInput) SetDomainIdentifier(v string) *DeleteSubscriptionRequestInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteSubscriptionRequestInput) SetIdentifier(v string) *DeleteSubscriptionRequestInput { + s.Identifier = &v + return s +} + +type DeleteSubscriptionRequestOutput 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 DeleteSubscriptionRequestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionRequestOutput) GoString() string { + return s.String() +} + +type DeleteSubscriptionTargetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the subscription target is + // deleted. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the Amazon DataZone environment in which the subscription target + // is deleted. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `location:"uri" locationName:"environmentIdentifier" type:"string" required:"true"` + + // The ID of the subscription target that is deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionTargetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionTargetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSubscriptionTargetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSubscriptionTargetInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.EnvironmentIdentifier != nil && len(*s.EnvironmentIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *DeleteSubscriptionTargetInput) SetDomainIdentifier(v string) *DeleteSubscriptionTargetInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *DeleteSubscriptionTargetInput) SetEnvironmentIdentifier(v string) *DeleteSubscriptionTargetInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteSubscriptionTargetInput) SetIdentifier(v string) *DeleteSubscriptionTargetInput { + s.Identifier = &v + return s +} + +type DeleteSubscriptionTargetOutput 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 DeleteSubscriptionTargetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSubscriptionTargetOutput) GoString() string { + return s.String() +} + +// The details of the last deployment of the environment. +type Deployment struct { + _ struct{} `type:"structure"` + + // The identifier of the last deployment of the environment. + DeploymentId *string `locationName:"deploymentId" type:"string"` + + // The status of the last deployment of the environment. + DeploymentStatus *string `locationName:"deploymentStatus" type:"string" enum:"DeploymentStatus"` + + // The type of the last deployment of the environment. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // The failure reason of the last deployment of the environment. + FailureReason *EnvironmentError `locationName:"failureReason" type:"structure"` + + // Specifies whether the last deployment of the environment is complete. + IsDeploymentComplete *bool `locationName:"isDeploymentComplete" type:"boolean"` + + // The messages of the last deployment of the environment. + Messages []*string `locationName:"messages" 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 Deployment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Deployment) GoString() string { + return s.String() +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *Deployment) SetDeploymentId(v string) *Deployment { + s.DeploymentId = &v + return s +} + +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *Deployment) SetDeploymentStatus(v string) *Deployment { + s.DeploymentStatus = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *Deployment) SetDeploymentType(v string) *Deployment { + s.DeploymentType = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *Deployment) SetFailureReason(v *EnvironmentError) *Deployment { + s.FailureReason = v + return s +} + +// SetIsDeploymentComplete sets the IsDeploymentComplete field's value. +func (s *Deployment) SetIsDeploymentComplete(v bool) *Deployment { + s.IsDeploymentComplete = &v + return s +} + +// SetMessages sets the Messages field's value. +func (s *Deployment) SetMessages(v []*string) *Deployment { + s.Messages = v + return s +} + +// The deployment properties of the Amazon DataZone blueprint. +type DeploymentProperties struct { + _ struct{} `type:"structure"` + + // The end timeout of the environment blueprint deployment. + EndTimeoutMinutes *int64 `locationName:"endTimeoutMinutes" min:"1" type:"integer"` + + // The start timeout of the environment blueprint deployment. + StartTimeoutMinutes *int64 `locationName:"startTimeoutMinutes" min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentProperties) GoString() string { + return s.String() +} + +// SetEndTimeoutMinutes sets the EndTimeoutMinutes field's value. +func (s *DeploymentProperties) SetEndTimeoutMinutes(v int64) *DeploymentProperties { + s.EndTimeoutMinutes = &v + return s +} + +// SetStartTimeoutMinutes sets the StartTimeoutMinutes field's value. +func (s *DeploymentProperties) SetStartTimeoutMinutes(v int64) *DeploymentProperties { + s.StartTimeoutMinutes = &v + return s +} + +// Details of a glossary term attached to the inventory asset. +type DetailedGlossaryTerm struct { + _ struct{} `type:"structure"` + + // The name of a glossary term attached to the inventory asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DetailedGlossaryTerm's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The shoft description of a glossary term attached to the inventory asset. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DetailedGlossaryTerm's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetailedGlossaryTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DetailedGlossaryTerm) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *DetailedGlossaryTerm) SetName(v string) *DetailedGlossaryTerm { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *DetailedGlossaryTerm) SetShortDescription(v string) *DetailedGlossaryTerm { + s.ShortDescription = &v + return s +} + +// A summary of a Amazon DataZone domain. +type DomainSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the Amazon DataZone domain. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // A timestamp of when a Amazon DataZone domain was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of an Amazon DataZone domain. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DomainSummary's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // A timestamp of when a Amazon DataZone domain was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"` + + // The identifier of the Amazon Web Services account that manages the domain. + // + // ManagedAccountId is a required field + ManagedAccountId *string `locationName:"managedAccountId" type:"string" required:"true"` + + // A name of an Amazon DataZone domain. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DomainSummary's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" sensitive:"true"` + + // The data portal URL for the Amazon DataZone domain. + PortalUrl *string `locationName:"portalUrl" type:"string"` + + // The status of the Amazon DataZone domain. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DomainStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DomainSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DomainSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DomainSummary) SetArn(v string) *DomainSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DomainSummary) SetCreatedAt(v time.Time) *DomainSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DomainSummary) SetDescription(v string) *DomainSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *DomainSummary) SetId(v string) *DomainSummary { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *DomainSummary) SetLastUpdatedAt(v time.Time) *DomainSummary { + s.LastUpdatedAt = &v + return s +} + +// SetManagedAccountId sets the ManagedAccountId field's value. +func (s *DomainSummary) SetManagedAccountId(v string) *DomainSummary { + s.ManagedAccountId = &v + return s +} + +// SetName sets the Name field's value. +func (s *DomainSummary) SetName(v string) *DomainSummary { + s.Name = &v + return s +} + +// SetPortalUrl sets the PortalUrl field's value. +func (s *DomainSummary) SetPortalUrl(v string) *DomainSummary { + s.PortalUrl = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DomainSummary) SetStatus(v string) *DomainSummary { + s.Status = &v + return s +} + +// The configuration details of an environment blueprint. +type EnvironmentBlueprintConfigurationItem struct { + _ struct{} `type:"structure"` + + // The timestamp of when an environment blueprint was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The identifier of the Amazon DataZone domain in which an environment blueprint + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The enabled Amazon Web Services Regions specified in a blueprint configuration. + EnabledRegions []*string `locationName:"enabledRegions" type:"list"` + + // The identifier of the environment blueprint. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The ARN of the manage access role specified in the environment blueprint + // configuration. + ManageAccessRoleArn *string `locationName:"manageAccessRoleArn" type:"string"` + + // The ARN of the provisioning role specified in the environment blueprint configuration. + ProvisioningRoleArn *string `locationName:"provisioningRoleArn" type:"string"` + + // The regional parameters of the environment blueprint. + RegionalParameters map[string]map[string]*string `locationName:"regionalParameters" type:"map"` + + // The timestamp of when the environment blueprint was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentBlueprintConfigurationItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentBlueprintConfigurationItem) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetCreatedAt(v time.Time) *EnvironmentBlueprintConfigurationItem { + s.CreatedAt = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetDomainId(v string) *EnvironmentBlueprintConfigurationItem { + s.DomainId = &v + return s +} + +// SetEnabledRegions sets the EnabledRegions field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetEnabledRegions(v []*string) *EnvironmentBlueprintConfigurationItem { + s.EnabledRegions = v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetEnvironmentBlueprintId(v string) *EnvironmentBlueprintConfigurationItem { + s.EnvironmentBlueprintId = &v + return s +} + +// SetManageAccessRoleArn sets the ManageAccessRoleArn field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetManageAccessRoleArn(v string) *EnvironmentBlueprintConfigurationItem { + s.ManageAccessRoleArn = &v + return s +} + +// SetProvisioningRoleArn sets the ProvisioningRoleArn field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetProvisioningRoleArn(v string) *EnvironmentBlueprintConfigurationItem { + s.ProvisioningRoleArn = &v + return s +} + +// SetRegionalParameters sets the RegionalParameters field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetRegionalParameters(v map[string]map[string]*string) *EnvironmentBlueprintConfigurationItem { + s.RegionalParameters = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *EnvironmentBlueprintConfigurationItem) SetUpdatedAt(v time.Time) *EnvironmentBlueprintConfigurationItem { + s.UpdatedAt = &v + return s +} + +// The details of an environment blueprint summary. +type EnvironmentBlueprintSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when an environment blueprint was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The description of a blueprint. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentBlueprintSummary's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the blueprint. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of the blueprint. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The provider of the blueprint. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The provisioning properties of the blueprint. + // + // ProvisioningProperties is a required field + ProvisioningProperties *ProvisioningProperties `locationName:"provisioningProperties" type:"structure" required:"true"` + + // The timestamp of when the blueprint was enabled. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentBlueprintSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentBlueprintSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentBlueprintSummary) SetCreatedAt(v time.Time) *EnvironmentBlueprintSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentBlueprintSummary) SetDescription(v string) *EnvironmentBlueprintSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *EnvironmentBlueprintSummary) SetId(v string) *EnvironmentBlueprintSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentBlueprintSummary) SetName(v string) *EnvironmentBlueprintSummary { + s.Name = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *EnvironmentBlueprintSummary) SetProvider(v string) *EnvironmentBlueprintSummary { + s.Provider = &v + return s +} + +// SetProvisioningProperties sets the ProvisioningProperties field's value. +func (s *EnvironmentBlueprintSummary) SetProvisioningProperties(v *ProvisioningProperties) *EnvironmentBlueprintSummary { + s.ProvisioningProperties = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *EnvironmentBlueprintSummary) SetUpdatedAt(v time.Time) *EnvironmentBlueprintSummary { + s.UpdatedAt = &v + return s +} + +// The failure reasons for the environment deployment. +type EnvironmentError struct { + _ struct{} `type:"structure"` + + // The error code for the failure reason for the environment deployment. + Code *string `locationName:"code" type:"string"` + + // The error message for the failure reason for the environment deployment. + // + // Message is a required field + Message *string `locationName:"message" 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 EnvironmentError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentError) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *EnvironmentError) SetCode(v string) *EnvironmentError { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *EnvironmentError) SetMessage(v string) *EnvironmentError { + s.Message = &v + return s +} + +// The parameter details of an evironment profile. +type EnvironmentParameter struct { + _ struct{} `type:"structure"` + + // The name of an environment profile parameter. + Name *string `locationName:"name" type:"string"` + + // The value of an environment profile parameter. + Value *string `locationName:"value" 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 EnvironmentParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentParameter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *EnvironmentParameter) SetName(v string) *EnvironmentParameter { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *EnvironmentParameter) SetValue(v string) *EnvironmentParameter { + s.Value = &v + return s +} + +// The details of an environment profile. +type EnvironmentProfileSummary struct { + _ struct{} `type:"structure"` + + // The identifier of an Amazon Web Services account in which an environment + // profile exists. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services Region in which an environment profile exists. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when an environment profile was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the environment profile. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of the environment profile. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentProfileSummary's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the environment profile + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of a blueprint with which an environment profile is created. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The identifier of the environment profile. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of the environment profile. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentProfileSummary's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of a project in which an environment profile exists. + ProjectId *string `locationName:"projectId" type:"string"` + + // The timestamp of when the environment profile was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentProfileSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentProfileSummary) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *EnvironmentProfileSummary) SetAwsAccountId(v string) *EnvironmentProfileSummary { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *EnvironmentProfileSummary) SetAwsAccountRegion(v string) *EnvironmentProfileSummary { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentProfileSummary) SetCreatedAt(v time.Time) *EnvironmentProfileSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *EnvironmentProfileSummary) SetCreatedBy(v string) *EnvironmentProfileSummary { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentProfileSummary) SetDescription(v string) *EnvironmentProfileSummary { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *EnvironmentProfileSummary) SetDomainId(v string) *EnvironmentProfileSummary { + s.DomainId = &v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *EnvironmentProfileSummary) SetEnvironmentBlueprintId(v string) *EnvironmentProfileSummary { + s.EnvironmentBlueprintId = &v + return s +} + +// SetId sets the Id field's value. +func (s *EnvironmentProfileSummary) SetId(v string) *EnvironmentProfileSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentProfileSummary) SetName(v string) *EnvironmentProfileSummary { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *EnvironmentProfileSummary) SetProjectId(v string) *EnvironmentProfileSummary { + s.ProjectId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *EnvironmentProfileSummary) SetUpdatedAt(v time.Time) *EnvironmentProfileSummary { + s.UpdatedAt = &v + return s +} + +// The details of an environment. +type EnvironmentSummary struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Web Services account in which an environment + // exists. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services Region in which an environment exists. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when the environment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the environment. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of the environment. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentSummary's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the environment exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the environment profile with which the environment was + // created. + // + // EnvironmentProfileId is a required field + EnvironmentProfileId *string `locationName:"environmentProfileId" type:"string" required:"true"` + + // The identifier of the environment. + Id *string `locationName:"id" type:"string"` + + // The name of the environment. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentSummary's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project in which the environment exists. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider of the environment. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The status of the environment. + Status *string `locationName:"status" type:"string" enum:"EnvironmentStatus"` + + // The timestamp of when the environment was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentSummary) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *EnvironmentSummary) SetAwsAccountId(v string) *EnvironmentSummary { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *EnvironmentSummary) SetAwsAccountRegion(v string) *EnvironmentSummary { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentSummary) SetCreatedAt(v time.Time) *EnvironmentSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *EnvironmentSummary) SetCreatedBy(v string) *EnvironmentSummary { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentSummary) SetDescription(v string) *EnvironmentSummary { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *EnvironmentSummary) SetDomainId(v string) *EnvironmentSummary { + s.DomainId = &v + return s +} + +// SetEnvironmentProfileId sets the EnvironmentProfileId field's value. +func (s *EnvironmentSummary) SetEnvironmentProfileId(v string) *EnvironmentSummary { + s.EnvironmentProfileId = &v + return s +} + +// SetId sets the Id field's value. +func (s *EnvironmentSummary) SetId(v string) *EnvironmentSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentSummary) SetName(v string) *EnvironmentSummary { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *EnvironmentSummary) SetProjectId(v string) *EnvironmentSummary { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *EnvironmentSummary) SetProvider(v string) *EnvironmentSummary { + s.Provider = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnvironmentSummary) SetStatus(v string) *EnvironmentSummary { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *EnvironmentSummary) SetUpdatedAt(v time.Time) *EnvironmentSummary { + s.UpdatedAt = &v + return s +} + +// Specifies the error message that is returned if the operation cannot be successfully +// completed. +type FailureCause struct { + _ struct{} `type:"structure"` + + // The description of the error message. + Message *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailureCause) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailureCause) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *FailureCause) SetMessage(v string) *FailureCause { + s.Message = &v + return s +} + +// A search filter in Amazon DataZone. +type Filter struct { + _ struct{} `type:"structure"` + + // A search filter attribute in Amazon DataZone. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" min:"1" type:"string" required:"true"` + + // A search filter value in Amazon DataZone. + // + // Value is a required field + Value *string `locationName:"value" 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 Filter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Filter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Filter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Filter"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Attribute != nil && len(*s.Attribute) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attribute", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *Filter) SetAttribute(v string) *Filter { + s.Attribute = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Filter) SetValue(v string) *Filter { + s.Value = &v + return s +} + +// A search filter clause in Amazon DataZone. +type FilterClause struct { + _ struct{} `type:"structure"` + + // The 'and' search filter clause in Amazon DataZone. + And []*FilterClause `locationName:"and" min:"1" type:"list"` + + // A search filter in Amazon DataZone. + Filter *Filter `locationName:"filter" type:"structure"` + + // The 'or' search filter clause in Amazon DataZone. + Or []*FilterClause `locationName:"or" 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 FilterClause) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterClause) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterClause) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterClause"} + if s.And != nil && len(s.And) < 1 { + invalidParams.Add(request.NewErrParamMinLen("And", 1)) + } + if s.Or != nil && len(s.Or) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Or", 1)) + } + if s.And != nil { + for i, v := range s.And { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "And", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + if s.Or != nil { + for i, v := range s.Or { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Or", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnd sets the And field's value. +func (s *FilterClause) SetAnd(v []*FilterClause) *FilterClause { + s.And = v + return s +} + +// SetFilter sets the Filter field's value. +func (s *FilterClause) SetFilter(v *Filter) *FilterClause { + s.Filter = v + return s +} + +// SetOr sets the Or field's value. +func (s *FilterClause) SetOr(v []*FilterClause) *FilterClause { + s.Or = v + return s +} + +// A filter expression in Amazon DataZone. +type FilterExpression struct { + _ struct{} `type:"structure"` + + // The search filter expression. + // + // Expression is a required field + Expression *string `locationName:"expression" min:"1" type:"string" required:"true"` + + // The search filter explresison type. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"FilterExpressionType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterExpression) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterExpression) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterExpression) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterExpression"} + if s.Expression == nil { + invalidParams.Add(request.NewErrParamRequired("Expression")) + } + if s.Expression != nil && len(*s.Expression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Expression", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExpression sets the Expression field's value. +func (s *FilterExpression) SetExpression(v string) *FilterExpression { + s.Expression = &v + return s +} + +// SetType sets the Type field's value. +func (s *FilterExpression) SetType(v string) *FilterExpression { + s.Type = &v + return s +} + +// The details of the form entry. +type FormEntryInput_ struct { + _ struct{} `type:"structure"` + + // Specifies whether a form entry is required. + Required *bool `locationName:"required" type:"boolean"` + + // The type ID of the form entry. + // + // TypeIdentifier is a required field + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string" required:"true"` + + // The type revision of the form entry. + // + // TypeRevision is a required field + TypeRevision *string `locationName:"typeRevision" 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 FormEntryInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormEntryInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FormEntryInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FormEntryInput_"} + if s.TypeIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("TypeIdentifier")) + } + if s.TypeIdentifier != nil && len(*s.TypeIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeIdentifier", 1)) + } + if s.TypeRevision == nil { + invalidParams.Add(request.NewErrParamRequired("TypeRevision")) + } + if s.TypeRevision != nil && len(*s.TypeRevision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeRevision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRequired sets the Required field's value. +func (s *FormEntryInput_) SetRequired(v bool) *FormEntryInput_ { + s.Required = &v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *FormEntryInput_) SetTypeIdentifier(v string) *FormEntryInput_ { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *FormEntryInput_) SetTypeRevision(v string) *FormEntryInput_ { + s.TypeRevision = &v + return s +} + +// The details of the form entry. +type FormEntryOutput_ struct { + _ struct{} `type:"structure"` + + // Specifies whether a form entry is required. + Required *bool `locationName:"required" type:"boolean"` + + // The name of the type of the form entry. + // + // TypeName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FormEntryOutput_'s + // String and GoString methods. + // + // TypeName is a required field + TypeName *string `locationName:"typeName" min:"1" type:"string" required:"true" sensitive:"true"` + + // The type revision of the form entry. + // + // TypeRevision is a required field + TypeRevision *string `locationName:"typeRevision" 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 FormEntryOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormEntryOutput_) GoString() string { + return s.String() +} + +// SetRequired sets the Required field's value. +func (s *FormEntryOutput_) SetRequired(v bool) *FormEntryOutput_ { + s.Required = &v + return s +} + +// SetTypeName sets the TypeName field's value. +func (s *FormEntryOutput_) SetTypeName(v string) *FormEntryOutput_ { + s.TypeName = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *FormEntryOutput_) SetTypeRevision(v string) *FormEntryOutput_ { + s.TypeRevision = &v + return s +} + +// The details of a metadata form. +type FormInput_ struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The content of the metadata form. + Content *string `locationName:"content" type:"string"` + + // The name of the metadata form. + // + // FormName is a required field + FormName *string `locationName:"formName" min:"1" type:"string" required:"true"` + + // The ID of the metadata form type. + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string"` + + // The revision of the metadata form type. + TypeRevision *string `locationName:"typeRevision" 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 FormInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FormInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FormInput_"} + if s.FormName == nil { + invalidParams.Add(request.NewErrParamRequired("FormName")) + } + if s.FormName != nil && len(*s.FormName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FormName", 1)) + } + if s.TypeIdentifier != nil && len(*s.TypeIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeIdentifier", 1)) + } + if s.TypeRevision != nil && len(*s.TypeRevision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TypeRevision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContent sets the Content field's value. +func (s *FormInput_) SetContent(v string) *FormInput_ { + s.Content = &v + return s +} + +// SetFormName sets the FormName field's value. +func (s *FormInput_) SetFormName(v string) *FormInput_ { + s.FormName = &v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *FormInput_) SetTypeIdentifier(v string) *FormInput_ { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *FormInput_) SetTypeRevision(v string) *FormInput_ { + s.TypeRevision = &v + return s +} + +// The details of a metadata form. +type FormOutput_ struct { + _ struct{} `type:"structure"` + + // The content of the metadata form. + Content *string `locationName:"content" type:"string"` + + // The name of the metadata form. + // + // FormName is a required field + FormName *string `locationName:"formName" min:"1" type:"string" required:"true"` + + // The name of the metadata form type. + // + // TypeName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FormOutput_'s + // String and GoString methods. + TypeName *string `locationName:"typeName" min:"1" type:"string" sensitive:"true"` + + // The revision of the metadata form type. + TypeRevision *string `locationName:"typeRevision" 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 FormOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormOutput_) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *FormOutput_) SetContent(v string) *FormOutput_ { + s.Content = &v + return s +} + +// SetFormName sets the FormName field's value. +func (s *FormOutput_) SetFormName(v string) *FormOutput_ { + s.FormName = &v + return s +} + +// SetTypeName sets the TypeName field's value. +func (s *FormOutput_) SetTypeName(v string) *FormOutput_ { + s.TypeName = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *FormOutput_) SetTypeRevision(v string) *FormOutput_ { + s.TypeRevision = &v + return s +} + +// The details of the metadata form type. +type FormTypeData struct { + _ struct{} `type:"structure"` + + // The timestamp of when the metadata form type was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created teh metadata form type. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the metadata form type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FormTypeData's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the form type exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The imports specified in the form type. + Imports []*Import `locationName:"imports" min:"1" type:"list"` + + // The model of the form type. + // + // Model is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FormTypeData's + // String and GoString methods. + Model *Model `locationName:"model" type:"structure" sensitive:"true"` + + // The name of the form type. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by FormTypeData's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the form type was originally + // created. + OriginDomainId *string `locationName:"originDomainId" type:"string"` + + // The identifier of the project in which the form type was originally created. + OriginProjectId *string `locationName:"originProjectId" type:"string"` + + // The identifier of the project that owns the form type. + OwningProjectId *string `locationName:"owningProjectId" type:"string"` + + // The revision of the form type. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The status of the form type. + Status *string `locationName:"status" type:"string" enum:"FormTypeStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormTypeData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormTypeData) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *FormTypeData) SetCreatedAt(v time.Time) *FormTypeData { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *FormTypeData) SetCreatedBy(v string) *FormTypeData { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *FormTypeData) SetDescription(v string) *FormTypeData { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *FormTypeData) SetDomainId(v string) *FormTypeData { + s.DomainId = &v + return s +} + +// SetImports sets the Imports field's value. +func (s *FormTypeData) SetImports(v []*Import) *FormTypeData { + s.Imports = v + return s +} + +// SetModel sets the Model field's value. +func (s *FormTypeData) SetModel(v *Model) *FormTypeData { + s.Model = v + return s +} + +// SetName sets the Name field's value. +func (s *FormTypeData) SetName(v string) *FormTypeData { + s.Name = &v + return s +} + +// SetOriginDomainId sets the OriginDomainId field's value. +func (s *FormTypeData) SetOriginDomainId(v string) *FormTypeData { + s.OriginDomainId = &v + return s +} + +// SetOriginProjectId sets the OriginProjectId field's value. +func (s *FormTypeData) SetOriginProjectId(v string) *FormTypeData { + s.OriginProjectId = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *FormTypeData) SetOwningProjectId(v string) *FormTypeData { + s.OwningProjectId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *FormTypeData) SetRevision(v string) *FormTypeData { + s.Revision = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *FormTypeData) SetStatus(v string) *FormTypeData { + s.Status = &v + return s +} + +type GetAssetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain to which the asset belongs. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the Amazon DataZone asset. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The revision of the Amazon DataZone asset. + Revision *string `location:"querystring" locationName:"revision" 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 GetAssetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAssetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAssetInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Revision != nil && len(*s.Revision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetAssetInput) SetDomainIdentifier(v string) *GetAssetInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetAssetInput) SetIdentifier(v string) *GetAssetInput { + s.Identifier = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *GetAssetInput) SetRevision(v string) *GetAssetInput { + s.Revision = &v + return s +} + +type GetAssetOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the asset was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the asset. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the Amazon DataZone asset. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetAssetOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain to which the asset belongs. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // ExternalIdentifier is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetAssetOutput's + // String and GoString methods. + ExternalIdentifier *string `locationName:"externalIdentifier" min:"1" type:"string" sensitive:"true"` + + // The timestamp of when the first revision of the asset was created. + FirstRevisionCreatedAt *time.Time `locationName:"firstRevisionCreatedAt" type:"timestamp"` + + // The Amazon DataZone user who created the first revision of the asset. + FirstRevisionCreatedBy *string `locationName:"firstRevisionCreatedBy" type:"string"` + + // The metadata forms attached to the asset. + // + // FormsOutput is a required field + FormsOutput []*FormOutput_ `locationName:"formsOutput" type:"list" required:"true"` + + // The business glossary terms attached to the asset. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The ID of the asset. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The details of an asset published in an Amazon DataZone catalog. + Listing *AssetListingDetails `locationName:"listing" type:"structure"` + + // The name of the asset. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetAssetOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project that owns the asset. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The read-only metadata forms attached to the asset. + ReadOnlyFormsOutput []*FormOutput_ `locationName:"readOnlyFormsOutput" type:"list"` + + // The revision of the asset. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The ID of the asset type. + // + // TypeIdentifier is a required field + TypeIdentifier *string `locationName:"typeIdentifier" min:"1" type:"string" required:"true"` + + // The revision of the asset type. + // + // TypeRevision is a required field + TypeRevision *string `locationName:"typeRevision" 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 GetAssetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetAssetOutput) SetCreatedAt(v time.Time) *GetAssetOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetAssetOutput) SetCreatedBy(v string) *GetAssetOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetAssetOutput) SetDescription(v string) *GetAssetOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetAssetOutput) SetDomainId(v string) *GetAssetOutput { + s.DomainId = &v + return s +} + +// SetExternalIdentifier sets the ExternalIdentifier field's value. +func (s *GetAssetOutput) SetExternalIdentifier(v string) *GetAssetOutput { + s.ExternalIdentifier = &v + return s +} + +// SetFirstRevisionCreatedAt sets the FirstRevisionCreatedAt field's value. +func (s *GetAssetOutput) SetFirstRevisionCreatedAt(v time.Time) *GetAssetOutput { + s.FirstRevisionCreatedAt = &v + return s +} + +// SetFirstRevisionCreatedBy sets the FirstRevisionCreatedBy field's value. +func (s *GetAssetOutput) SetFirstRevisionCreatedBy(v string) *GetAssetOutput { + s.FirstRevisionCreatedBy = &v + return s +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *GetAssetOutput) SetFormsOutput(v []*FormOutput_) *GetAssetOutput { + s.FormsOutput = v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *GetAssetOutput) SetGlossaryTerms(v []*string) *GetAssetOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *GetAssetOutput) SetId(v string) *GetAssetOutput { + s.Id = &v + return s +} + +// SetListing sets the Listing field's value. +func (s *GetAssetOutput) SetListing(v *AssetListingDetails) *GetAssetOutput { + s.Listing = v + return s +} + +// SetName sets the Name field's value. +func (s *GetAssetOutput) SetName(v string) *GetAssetOutput { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *GetAssetOutput) SetOwningProjectId(v string) *GetAssetOutput { + s.OwningProjectId = &v + return s +} + +// SetReadOnlyFormsOutput sets the ReadOnlyFormsOutput field's value. +func (s *GetAssetOutput) SetReadOnlyFormsOutput(v []*FormOutput_) *GetAssetOutput { + s.ReadOnlyFormsOutput = v + return s +} + +// SetRevision sets the Revision field's value. +func (s *GetAssetOutput) SetRevision(v string) *GetAssetOutput { + s.Revision = &v + return s +} + +// SetTypeIdentifier sets the TypeIdentifier field's value. +func (s *GetAssetOutput) SetTypeIdentifier(v string) *GetAssetOutput { + s.TypeIdentifier = &v + return s +} + +// SetTypeRevision sets the TypeRevision field's value. +func (s *GetAssetOutput) SetTypeRevision(v string) *GetAssetOutput { + s.TypeRevision = &v + return s +} + +type GetAssetTypeInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the asset type exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the asset type. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" min:"1" type:"string" required:"true"` + + // The revision of the asset type. + Revision *string `location:"querystring" locationName:"revision" 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 GetAssetTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAssetTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAssetTypeInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Revision != nil && len(*s.Revision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetAssetTypeInput) SetDomainIdentifier(v string) *GetAssetTypeInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetAssetTypeInput) SetIdentifier(v string) *GetAssetTypeInput { + s.Identifier = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *GetAssetTypeInput) SetRevision(v string) *GetAssetTypeInput { + s.Revision = &v + return s +} + +type GetAssetTypeOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the asset type was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the asset type. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the asset type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetAssetTypeOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the asset type exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The metadata forms attached to the asset type. + // + // FormsOutput is a required field + FormsOutput map[string]*FormEntryOutput_ `locationName:"formsOutput" type:"map" required:"true"` + + // The name of the asset type. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the asset type was originally + // created. + OriginDomainId *string `locationName:"originDomainId" type:"string"` + + // The ID of the Amazon DataZone project in which the asset type was originally + // created. + OriginProjectId *string `locationName:"originProjectId" type:"string"` + + // The ID of the Amazon DataZone project that owns the asset type. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The revision of the asset type. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The timestamp of when the asset type was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user that updated the asset type. + UpdatedBy *string `locationName:"updatedBy" 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 GetAssetTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetTypeOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetAssetTypeOutput) SetCreatedAt(v time.Time) *GetAssetTypeOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetAssetTypeOutput) SetCreatedBy(v string) *GetAssetTypeOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetAssetTypeOutput) SetDescription(v string) *GetAssetTypeOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetAssetTypeOutput) SetDomainId(v string) *GetAssetTypeOutput { + s.DomainId = &v + return s +} + +// SetFormsOutput sets the FormsOutput field's value. +func (s *GetAssetTypeOutput) SetFormsOutput(v map[string]*FormEntryOutput_) *GetAssetTypeOutput { + s.FormsOutput = v + return s +} + +// SetName sets the Name field's value. +func (s *GetAssetTypeOutput) SetName(v string) *GetAssetTypeOutput { + s.Name = &v + return s +} + +// SetOriginDomainId sets the OriginDomainId field's value. +func (s *GetAssetTypeOutput) SetOriginDomainId(v string) *GetAssetTypeOutput { + s.OriginDomainId = &v + return s +} + +// SetOriginProjectId sets the OriginProjectId field's value. +func (s *GetAssetTypeOutput) SetOriginProjectId(v string) *GetAssetTypeOutput { + s.OriginProjectId = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *GetAssetTypeOutput) SetOwningProjectId(v string) *GetAssetTypeOutput { + s.OwningProjectId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *GetAssetTypeOutput) SetRevision(v string) *GetAssetTypeOutput { + s.Revision = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetAssetTypeOutput) SetUpdatedAt(v time.Time) *GetAssetTypeOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetAssetTypeOutput) SetUpdatedBy(v string) *GetAssetTypeOutput { + s.UpdatedBy = &v + return s +} + +type GetDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the data source exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the Amazon DataZone data source. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetDataSourceInput) SetDomainIdentifier(v string) *GetDataSourceInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetDataSourceInput) SetIdentifier(v string) *GetDataSourceInput { + s.Identifier = &v + return s +} + +type GetDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The metadata forms attached to the assets created by this data source. + AssetFormsOutput []*FormOutput_ `locationName:"assetFormsOutput" type:"list"` + + // The configuration of the data source. + Configuration *DataSourceConfigurationOutput_ `locationName:"configuration" type:"structure"` + + // The timestamp of when the data source was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The description of the data source. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetDataSourceOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the data source exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Specifies whether this data source is enabled or not. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The ID of the environment where this data source creates and publishes assets, + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The ID of the data source. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The number of assets created by the data source during its last run. + LastRunAssetCount *int64 `locationName:"lastRunAssetCount" type:"integer"` + + // The timestamp of the last run of the data source. + LastRunAt *time.Time `locationName:"lastRunAt" type:"timestamp" timestampFormat:"iso8601"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + LastRunErrorMessage *DataSourceErrorMessage `locationName:"lastRunErrorMessage" type:"structure"` + + // The status of the last run of the data source. + LastRunStatus *string `locationName:"lastRunStatus" type:"string" enum:"DataSourceRunStatus"` + + // The name of the data source. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetDataSourceOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project where the data source creates and publishes assets. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // Specifies whether the assets that this data source creates in the inventory + // are to be also automatically published to the catalog. + PublishOnImport *bool `locationName:"publishOnImport" type:"boolean"` + + // The recommendation to be updated as part of the UpdateDataSource action. + Recommendation *RecommendationConfiguration `locationName:"recommendation" type:"structure"` + + // The schedule of the data source runs. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetDataSourceOutput's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` + + // The status of the data source. + Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The type of the data source. + Type *string `locationName:"type" min:"1" type:"string"` + + // The timestamp of when the data source was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceOutput) GoString() string { + return s.String() +} + +// SetAssetFormsOutput sets the AssetFormsOutput field's value. +func (s *GetDataSourceOutput) SetAssetFormsOutput(v []*FormOutput_) *GetDataSourceOutput { + s.AssetFormsOutput = v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *GetDataSourceOutput) SetConfiguration(v *DataSourceConfigurationOutput_) *GetDataSourceOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetDataSourceOutput) SetCreatedAt(v time.Time) *GetDataSourceOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetDataSourceOutput) SetDescription(v string) *GetDataSourceOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetDataSourceOutput) SetDomainId(v string) *GetDataSourceOutput { + s.DomainId = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *GetDataSourceOutput) SetEnableSetting(v string) *GetDataSourceOutput { + s.EnableSetting = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *GetDataSourceOutput) SetEnvironmentId(v string) *GetDataSourceOutput { + s.EnvironmentId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *GetDataSourceOutput) SetErrorMessage(v *DataSourceErrorMessage) *GetDataSourceOutput { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *GetDataSourceOutput) SetId(v string) *GetDataSourceOutput { + s.Id = &v + return s +} + +// SetLastRunAssetCount sets the LastRunAssetCount field's value. +func (s *GetDataSourceOutput) SetLastRunAssetCount(v int64) *GetDataSourceOutput { + s.LastRunAssetCount = &v + return s +} + +// SetLastRunAt sets the LastRunAt field's value. +func (s *GetDataSourceOutput) SetLastRunAt(v time.Time) *GetDataSourceOutput { + s.LastRunAt = &v + return s +} + +// SetLastRunErrorMessage sets the LastRunErrorMessage field's value. +func (s *GetDataSourceOutput) SetLastRunErrorMessage(v *DataSourceErrorMessage) *GetDataSourceOutput { + s.LastRunErrorMessage = v + return s +} + +// SetLastRunStatus sets the LastRunStatus field's value. +func (s *GetDataSourceOutput) SetLastRunStatus(v string) *GetDataSourceOutput { + s.LastRunStatus = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetDataSourceOutput) SetName(v string) *GetDataSourceOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *GetDataSourceOutput) SetProjectId(v string) *GetDataSourceOutput { + s.ProjectId = &v + return s +} + +// SetPublishOnImport sets the PublishOnImport field's value. +func (s *GetDataSourceOutput) SetPublishOnImport(v bool) *GetDataSourceOutput { + s.PublishOnImport = &v + return s +} + +// SetRecommendation sets the Recommendation field's value. +func (s *GetDataSourceOutput) SetRecommendation(v *RecommendationConfiguration) *GetDataSourceOutput { + s.Recommendation = v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *GetDataSourceOutput) SetSchedule(v *ScheduleConfiguration) *GetDataSourceOutput { + s.Schedule = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDataSourceOutput) SetStatus(v string) *GetDataSourceOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetDataSourceOutput) SetType(v string) *GetDataSourceOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetDataSourceOutput) SetUpdatedAt(v time.Time) *GetDataSourceOutput { + s.UpdatedAt = &v + return s +} + +type GetDataSourceRunInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the domain in which this data source run was performed. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the data source run. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceRunInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceRunInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceRunInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceRunInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetDataSourceRunInput) SetDomainIdentifier(v string) *GetDataSourceRunInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetDataSourceRunInput) SetIdentifier(v string) *GetDataSourceRunInput { + s.Identifier = &v + return s +} + +type GetDataSourceRunOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the data source run was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The configuration snapshot of the data source run. + DataSourceConfigurationSnapshot *string `locationName:"dataSourceConfigurationSnapshot" type:"string"` + + // The ID of the data source for this data source run. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // The ID of the domain in which this data source run was performed. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The ID of the data source run. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The ID of the project in which this data source run occured. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The asset statistics from this data source run. + RunStatisticsForAssets *RunStatisticsForAssets `locationName:"runStatisticsForAssets" type:"structure"` + + // The timestamp of when this data source run started. + StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The status of this data source run. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceRunStatus"` + + // The timestamp of when this data source run stopped. + StoppedAt *time.Time `locationName:"stoppedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The type of this data source run. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DataSourceRunType"` + + // The timestamp of when this data source run was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 GetDataSourceRunOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceRunOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetDataSourceRunOutput) SetCreatedAt(v time.Time) *GetDataSourceRunOutput { + s.CreatedAt = &v + return s +} + +// SetDataSourceConfigurationSnapshot sets the DataSourceConfigurationSnapshot field's value. +func (s *GetDataSourceRunOutput) SetDataSourceConfigurationSnapshot(v string) *GetDataSourceRunOutput { + s.DataSourceConfigurationSnapshot = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *GetDataSourceRunOutput) SetDataSourceId(v string) *GetDataSourceRunOutput { + s.DataSourceId = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetDataSourceRunOutput) SetDomainId(v string) *GetDataSourceRunOutput { + s.DomainId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *GetDataSourceRunOutput) SetErrorMessage(v *DataSourceErrorMessage) *GetDataSourceRunOutput { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *GetDataSourceRunOutput) SetId(v string) *GetDataSourceRunOutput { + s.Id = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *GetDataSourceRunOutput) SetProjectId(v string) *GetDataSourceRunOutput { + s.ProjectId = &v + return s +} + +// SetRunStatisticsForAssets sets the RunStatisticsForAssets field's value. +func (s *GetDataSourceRunOutput) SetRunStatisticsForAssets(v *RunStatisticsForAssets) *GetDataSourceRunOutput { + s.RunStatisticsForAssets = v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *GetDataSourceRunOutput) SetStartedAt(v time.Time) *GetDataSourceRunOutput { + s.StartedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDataSourceRunOutput) SetStatus(v string) *GetDataSourceRunOutput { + s.Status = &v + return s +} + +// SetStoppedAt sets the StoppedAt field's value. +func (s *GetDataSourceRunOutput) SetStoppedAt(v time.Time) *GetDataSourceRunOutput { + s.StoppedAt = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetDataSourceRunOutput) SetType(v string) *GetDataSourceRunOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetDataSourceRunOutput) SetUpdatedAt(v time.Time) *GetDataSourceRunOutput { + s.UpdatedAt = &v + return s +} + +type GetDomainInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the specified Amazon DataZone domain. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDomainInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetDomainInput) SetIdentifier(v string) *GetDomainInput { + s.Identifier = &v + return s +} + +type GetDomainOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the specified Amazon DataZone domain. + Arn *string `locationName:"arn" type:"string"` + + // The timestamp of when the Amazon DataZone domain was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The description of the Amazon DataZone domain. + Description *string `locationName:"description" type:"string"` + + // The domain execution role with which the Amazon DataZone domain is created. + // + // DomainExecutionRole is a required field + DomainExecutionRole *string `locationName:"domainExecutionRole" type:"string" required:"true"` + + // The identifier of the specified Amazon DataZone domain. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The identifier of the Amazon Web Services Key Management Service (KMS) key + // that is used to encrypt the Amazon DataZone domain, metadata, and reporting + // data. + KmsKeyIdentifier *string `locationName:"kmsKeyIdentifier" min:"1" type:"string"` + + // The timestamp of when the Amazon DataZone domain was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"` + + // The name of the Amazon DataZone domain. + Name *string `locationName:"name" type:"string"` + + // The URL of the data portal for this Amazon DataZone domain. + PortalUrl *string `locationName:"portalUrl" type:"string"` + + // The single sing-on option of the specified Amazon DataZone domain. + SingleSignOn *SingleSignOn `locationName:"singleSignOn" type:"structure"` + + // The status of the specified Amazon DataZone domain. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DomainStatus"` + + // The tags specified for the Amazon DataZone domain. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetDomainOutput) SetArn(v string) *GetDomainOutput { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetDomainOutput) SetCreatedAt(v time.Time) *GetDomainOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetDomainOutput) SetDescription(v string) *GetDomainOutput { + s.Description = &v + return s +} + +// SetDomainExecutionRole sets the DomainExecutionRole field's value. +func (s *GetDomainOutput) SetDomainExecutionRole(v string) *GetDomainOutput { + s.DomainExecutionRole = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetDomainOutput) SetId(v string) *GetDomainOutput { + s.Id = &v + return s +} + +// SetKmsKeyIdentifier sets the KmsKeyIdentifier field's value. +func (s *GetDomainOutput) SetKmsKeyIdentifier(v string) *GetDomainOutput { + s.KmsKeyIdentifier = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *GetDomainOutput) SetLastUpdatedAt(v time.Time) *GetDomainOutput { + s.LastUpdatedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetDomainOutput) SetName(v string) *GetDomainOutput { + s.Name = &v + return s +} + +// SetPortalUrl sets the PortalUrl field's value. +func (s *GetDomainOutput) SetPortalUrl(v string) *GetDomainOutput { + s.PortalUrl = &v + return s +} + +// SetSingleSignOn sets the SingleSignOn field's value. +func (s *GetDomainOutput) SetSingleSignOn(v *SingleSignOn) *GetDomainOutput { + s.SingleSignOn = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDomainOutput) SetStatus(v string) *GetDomainOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetDomainOutput) SetTags(v map[string]*string) *GetDomainOutput { + s.Tags = v + return s +} + +type GetEnvironmentBlueprintConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain where this blueprint exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // He ID of the blueprint. + // + // EnvironmentBlueprintIdentifier is a required field + EnvironmentBlueprintIdentifier *string `location:"uri" locationName:"environmentBlueprintIdentifier" 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 GetEnvironmentBlueprintConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentBlueprintConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentBlueprintConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentBlueprintConfigurationInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentBlueprintIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentBlueprintIdentifier")) + } + if s.EnvironmentBlueprintIdentifier != nil && len(*s.EnvironmentBlueprintIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentBlueprintIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetEnvironmentBlueprintConfigurationInput) SetDomainIdentifier(v string) *GetEnvironmentBlueprintConfigurationInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentBlueprintIdentifier sets the EnvironmentBlueprintIdentifier field's value. +func (s *GetEnvironmentBlueprintConfigurationInput) SetEnvironmentBlueprintIdentifier(v string) *GetEnvironmentBlueprintConfigurationInput { + s.EnvironmentBlueprintIdentifier = &v + return s +} + +type GetEnvironmentBlueprintConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when this blueprint was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The ID of the Amazon DataZone domain where this blueprint exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The Amazon Web Services regions in which this blueprint is enabled. + EnabledRegions []*string `locationName:"enabledRegions" type:"list"` + + // The ID of the blueprint. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The ARN of the manage access role with which this blueprint is created. + ManageAccessRoleArn *string `locationName:"manageAccessRoleArn" type:"string"` + + // The ARN of the provisioning role with which this blueprint is created. + ProvisioningRoleArn *string `locationName:"provisioningRoleArn" type:"string"` + + // The regional parameters of the blueprint. + RegionalParameters map[string]map[string]*string `locationName:"regionalParameters" type:"map"` + + // The timestamp of when this blueprint was upated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentBlueprintConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentBlueprintConfigurationOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetCreatedAt(v time.Time) *GetEnvironmentBlueprintConfigurationOutput { + s.CreatedAt = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetDomainId(v string) *GetEnvironmentBlueprintConfigurationOutput { + s.DomainId = &v + return s +} + +// SetEnabledRegions sets the EnabledRegions field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetEnabledRegions(v []*string) *GetEnvironmentBlueprintConfigurationOutput { + s.EnabledRegions = v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetEnvironmentBlueprintId(v string) *GetEnvironmentBlueprintConfigurationOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetManageAccessRoleArn sets the ManageAccessRoleArn field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetManageAccessRoleArn(v string) *GetEnvironmentBlueprintConfigurationOutput { + s.ManageAccessRoleArn = &v + return s +} + +// SetProvisioningRoleArn sets the ProvisioningRoleArn field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetProvisioningRoleArn(v string) *GetEnvironmentBlueprintConfigurationOutput { + s.ProvisioningRoleArn = &v + return s +} + +// SetRegionalParameters sets the RegionalParameters field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetRegionalParameters(v map[string]map[string]*string) *GetEnvironmentBlueprintConfigurationOutput { + s.RegionalParameters = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetEnvironmentBlueprintConfigurationOutput) SetUpdatedAt(v time.Time) *GetEnvironmentBlueprintConfigurationOutput { + s.UpdatedAt = &v + return s +} + +type GetEnvironmentBlueprintInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the domain in which this blueprint exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of this Amazon DataZone blueprint. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentBlueprintInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentBlueprintInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentBlueprintInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentBlueprintInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetEnvironmentBlueprintInput) SetDomainIdentifier(v string) *GetEnvironmentBlueprintInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetEnvironmentBlueprintInput) SetIdentifier(v string) *GetEnvironmentBlueprintInput { + s.Identifier = &v + return s +} + +type GetEnvironmentBlueprintOutput struct { + _ struct{} `type:"structure"` + + // A timestamp of when this blueprint was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The deployment properties of this Amazon DataZone blueprint. + DeploymentProperties *DeploymentProperties `locationName:"deploymentProperties" type:"structure"` + + // The description of this Amazon DataZone blueprint. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetEnvironmentBlueprintOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The glossary terms attached to this Amazon DataZone blueprint. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The ID of this Amazon DataZone blueprint. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of this Amazon DataZone blueprint. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The provider of this Amazon DataZone blueprint. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The provisioning properties of this Amazon DataZone blueprint. + // + // ProvisioningProperties is a required field + ProvisioningProperties *ProvisioningProperties `locationName:"provisioningProperties" type:"structure" required:"true"` + + // The timestamp of when this blueprint was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters of this blueprint. + UserParameters []*CustomParameter `locationName:"userParameters" 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 GetEnvironmentBlueprintOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentBlueprintOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetEnvironmentBlueprintOutput) SetCreatedAt(v time.Time) *GetEnvironmentBlueprintOutput { + s.CreatedAt = &v + return s +} + +// SetDeploymentProperties sets the DeploymentProperties field's value. +func (s *GetEnvironmentBlueprintOutput) SetDeploymentProperties(v *DeploymentProperties) *GetEnvironmentBlueprintOutput { + s.DeploymentProperties = v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetEnvironmentBlueprintOutput) SetDescription(v string) *GetEnvironmentBlueprintOutput { + s.Description = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *GetEnvironmentBlueprintOutput) SetGlossaryTerms(v []*string) *GetEnvironmentBlueprintOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *GetEnvironmentBlueprintOutput) SetId(v string) *GetEnvironmentBlueprintOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetEnvironmentBlueprintOutput) SetName(v string) *GetEnvironmentBlueprintOutput { + s.Name = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *GetEnvironmentBlueprintOutput) SetProvider(v string) *GetEnvironmentBlueprintOutput { + s.Provider = &v + return s +} + +// SetProvisioningProperties sets the ProvisioningProperties field's value. +func (s *GetEnvironmentBlueprintOutput) SetProvisioningProperties(v *ProvisioningProperties) *GetEnvironmentBlueprintOutput { + s.ProvisioningProperties = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetEnvironmentBlueprintOutput) SetUpdatedAt(v time.Time) *GetEnvironmentBlueprintOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *GetEnvironmentBlueprintOutput) SetUserParameters(v []*CustomParameter) *GetEnvironmentBlueprintOutput { + s.UserParameters = v + return s +} + +type GetEnvironmentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain where the environment exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the Amazon DataZone environment. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetEnvironmentInput) SetDomainIdentifier(v string) *GetEnvironmentInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetEnvironmentInput) SetIdentifier(v string) *GetEnvironmentInput { + s.Identifier = &v + return s +} + +type GetEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon Web Services account where the environment exists. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region where the environment exists. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when the environment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the environment. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The deployment properties of the environment. + DeploymentProperties *DeploymentProperties `locationName:"deploymentProperties" type:"structure"` + + // The description of the environment. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetEnvironmentOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain where the environment exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The actions of the environment. + EnvironmentActions []*ConfigurableEnvironmentAction `locationName:"environmentActions" type:"list"` + + // The blueprint with which the environment is created. + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string"` + + // The ID of the environment profile with which the environment is created. + // + // EnvironmentProfileId is a required field + EnvironmentProfileId *string `locationName:"environmentProfileId" type:"string" required:"true"` + + // The business glossary terms that can be used in this environment. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The ID of the environment. + Id *string `locationName:"id" type:"string"` + + // The details of the last deployment of the environment. + LastDeployment *Deployment `locationName:"lastDeployment" type:"structure"` + + // The name of the environment. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetEnvironmentOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project in which this environment is created. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider of this Amazon DataZone environment. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The provisioned resources of this Amazon DataZone environment. + ProvisionedResources []*Resource `locationName:"provisionedResources" type:"list"` + + // The provisioning properties of this Amazon DataZone environment. + ProvisioningProperties *ProvisioningProperties `locationName:"provisioningProperties" type:"structure"` + + // The status of this Amazon DataZone environment. + Status *string `locationName:"status" type:"string" enum:"EnvironmentStatus"` + + // The timestamp of when this environment was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters of this Amazon DataZone environment. + UserParameters []*CustomParameter `locationName:"userParameters" 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 GetEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentOutput) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *GetEnvironmentOutput) SetAwsAccountId(v string) *GetEnvironmentOutput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *GetEnvironmentOutput) SetAwsAccountRegion(v string) *GetEnvironmentOutput { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetEnvironmentOutput) SetCreatedAt(v time.Time) *GetEnvironmentOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetEnvironmentOutput) SetCreatedBy(v string) *GetEnvironmentOutput { + s.CreatedBy = &v + return s +} + +// SetDeploymentProperties sets the DeploymentProperties field's value. +func (s *GetEnvironmentOutput) SetDeploymentProperties(v *DeploymentProperties) *GetEnvironmentOutput { + s.DeploymentProperties = v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetEnvironmentOutput) SetDescription(v string) *GetEnvironmentOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetEnvironmentOutput) SetDomainId(v string) *GetEnvironmentOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentActions sets the EnvironmentActions field's value. +func (s *GetEnvironmentOutput) SetEnvironmentActions(v []*ConfigurableEnvironmentAction) *GetEnvironmentOutput { + s.EnvironmentActions = v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *GetEnvironmentOutput) SetEnvironmentBlueprintId(v string) *GetEnvironmentOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetEnvironmentProfileId sets the EnvironmentProfileId field's value. +func (s *GetEnvironmentOutput) SetEnvironmentProfileId(v string) *GetEnvironmentOutput { + s.EnvironmentProfileId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *GetEnvironmentOutput) SetGlossaryTerms(v []*string) *GetEnvironmentOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *GetEnvironmentOutput) SetId(v string) *GetEnvironmentOutput { + s.Id = &v + return s +} + +// SetLastDeployment sets the LastDeployment field's value. +func (s *GetEnvironmentOutput) SetLastDeployment(v *Deployment) *GetEnvironmentOutput { + s.LastDeployment = v + return s +} + +// SetName sets the Name field's value. +func (s *GetEnvironmentOutput) SetName(v string) *GetEnvironmentOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *GetEnvironmentOutput) SetProjectId(v string) *GetEnvironmentOutput { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *GetEnvironmentOutput) SetProvider(v string) *GetEnvironmentOutput { + s.Provider = &v + return s +} + +// SetProvisionedResources sets the ProvisionedResources field's value. +func (s *GetEnvironmentOutput) SetProvisionedResources(v []*Resource) *GetEnvironmentOutput { + s.ProvisionedResources = v + return s +} + +// SetProvisioningProperties sets the ProvisioningProperties field's value. +func (s *GetEnvironmentOutput) SetProvisioningProperties(v *ProvisioningProperties) *GetEnvironmentOutput { + s.ProvisioningProperties = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetEnvironmentOutput) SetStatus(v string) *GetEnvironmentOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetEnvironmentOutput) SetUpdatedAt(v time.Time) *GetEnvironmentOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *GetEnvironmentOutput) SetUserParameters(v []*CustomParameter) *GetEnvironmentOutput { + s.UserParameters = v + return s +} + +type GetEnvironmentProfileInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which this environment profile exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the environment profile. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetEnvironmentProfileInput) SetDomainIdentifier(v string) *GetEnvironmentProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetEnvironmentProfileInput) SetIdentifier(v string) *GetEnvironmentProfileInput { + s.Identifier = &v + return s +} + +type GetEnvironmentProfileOutput struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon Web Services account where this environment profile + // exists. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region where this environment profile exists. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when this environment profile was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created this environment profile. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of the environment profile. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetEnvironmentProfileOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this environment profile exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the blueprint with which this environment profile is created. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The ID of the environment profile. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of the environment profile. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetEnvironmentProfileOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone project in which this environment profile is + // created. + ProjectId *string `locationName:"projectId" type:"string"` + + // The timestamp of when this environment profile was upated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters of the environment profile. + UserParameters []*CustomParameter `locationName:"userParameters" 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 GetEnvironmentProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentProfileOutput) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *GetEnvironmentProfileOutput) SetAwsAccountId(v string) *GetEnvironmentProfileOutput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *GetEnvironmentProfileOutput) SetAwsAccountRegion(v string) *GetEnvironmentProfileOutput { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetEnvironmentProfileOutput) SetCreatedAt(v time.Time) *GetEnvironmentProfileOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetEnvironmentProfileOutput) SetCreatedBy(v string) *GetEnvironmentProfileOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetEnvironmentProfileOutput) SetDescription(v string) *GetEnvironmentProfileOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetEnvironmentProfileOutput) SetDomainId(v string) *GetEnvironmentProfileOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *GetEnvironmentProfileOutput) SetEnvironmentBlueprintId(v string) *GetEnvironmentProfileOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetEnvironmentProfileOutput) SetId(v string) *GetEnvironmentProfileOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetEnvironmentProfileOutput) SetName(v string) *GetEnvironmentProfileOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *GetEnvironmentProfileOutput) SetProjectId(v string) *GetEnvironmentProfileOutput { + s.ProjectId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetEnvironmentProfileOutput) SetUpdatedAt(v time.Time) *GetEnvironmentProfileOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *GetEnvironmentProfileOutput) SetUserParameters(v []*CustomParameter) *GetEnvironmentProfileOutput { + s.UserParameters = v + return s +} + +type GetFormTypeInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which this metadata form type exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the metadata form type. + // + // FormTypeIdentifier is a required field + FormTypeIdentifier *string `location:"uri" locationName:"formTypeIdentifier" min:"1" type:"string" required:"true"` + + // The revision of this metadata form type. + Revision *string `location:"querystring" locationName:"revision" 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 GetFormTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFormTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetFormTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetFormTypeInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.FormTypeIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("FormTypeIdentifier")) + } + if s.FormTypeIdentifier != nil && len(*s.FormTypeIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FormTypeIdentifier", 1)) + } + if s.Revision != nil && len(*s.Revision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetFormTypeInput) SetDomainIdentifier(v string) *GetFormTypeInput { + s.DomainIdentifier = &v + return s +} + +// SetFormTypeIdentifier sets the FormTypeIdentifier field's value. +func (s *GetFormTypeInput) SetFormTypeIdentifier(v string) *GetFormTypeInput { + s.FormTypeIdentifier = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *GetFormTypeInput) SetRevision(v string) *GetFormTypeInput { + s.Revision = &v + return s +} + +type GetFormTypeOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when this metadata form type was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created this metadata form type. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the metadata form type. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetFormTypeOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this metadata form type exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The imports of the metadata form type. + Imports []*Import `locationName:"imports" min:"1" type:"list"` + + // The model of the metadata form type. + // + // Model is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetFormTypeOutput's + // String and GoString methods. + // + // Model is a required field + Model *Model `locationName:"model" type:"structure" required:"true" sensitive:"true"` + + // The name of the metadata form type. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetFormTypeOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the metadata form type was + // originally created. + OriginDomainId *string `locationName:"originDomainId" type:"string"` + + // The ID of the project in which this metadata form type was originally created. + OriginProjectId *string `locationName:"originProjectId" type:"string"` + + // The ID of the project that owns this metadata form type. + OwningProjectId *string `locationName:"owningProjectId" type:"string"` + + // The revision of the metadata form type. + // + // Revision is a required field + Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` + + // The status of the metadata form type. + Status *string `locationName:"status" type:"string" enum:"FormTypeStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFormTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFormTypeOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetFormTypeOutput) SetCreatedAt(v time.Time) *GetFormTypeOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetFormTypeOutput) SetCreatedBy(v string) *GetFormTypeOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetFormTypeOutput) SetDescription(v string) *GetFormTypeOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetFormTypeOutput) SetDomainId(v string) *GetFormTypeOutput { + s.DomainId = &v + return s +} + +// SetImports sets the Imports field's value. +func (s *GetFormTypeOutput) SetImports(v []*Import) *GetFormTypeOutput { + s.Imports = v + return s +} + +// SetModel sets the Model field's value. +func (s *GetFormTypeOutput) SetModel(v *Model) *GetFormTypeOutput { + s.Model = v + return s +} + +// SetName sets the Name field's value. +func (s *GetFormTypeOutput) SetName(v string) *GetFormTypeOutput { + s.Name = &v + return s +} + +// SetOriginDomainId sets the OriginDomainId field's value. +func (s *GetFormTypeOutput) SetOriginDomainId(v string) *GetFormTypeOutput { + s.OriginDomainId = &v + return s +} + +// SetOriginProjectId sets the OriginProjectId field's value. +func (s *GetFormTypeOutput) SetOriginProjectId(v string) *GetFormTypeOutput { + s.OriginProjectId = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *GetFormTypeOutput) SetOwningProjectId(v string) *GetFormTypeOutput { + s.OwningProjectId = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *GetFormTypeOutput) SetRevision(v string) *GetFormTypeOutput { + s.Revision = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetFormTypeOutput) SetStatus(v string) *GetFormTypeOutput { + s.Status = &v + return s +} + +type GetGlossaryInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which this business glossary exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the business glossary. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGlossaryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGlossaryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetGlossaryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetGlossaryInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetGlossaryInput) SetDomainIdentifier(v string) *GetGlossaryInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetGlossaryInput) SetIdentifier(v string) *GetGlossaryInput { + s.Identifier = &v + return s +} + +type GetGlossaryOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when this business glossary was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created this business glossary. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The description of the business glossary. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetGlossaryOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which this business glossary exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the business glossary. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of the business glossary. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetGlossaryOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project that owns this business glossary. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The status of the business glossary. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GlossaryStatus"` + + // The timestamp of when the business glossary was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the business glossary. + UpdatedBy *string `locationName:"updatedBy" 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 GetGlossaryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGlossaryOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetGlossaryOutput) SetCreatedAt(v time.Time) *GetGlossaryOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetGlossaryOutput) SetCreatedBy(v string) *GetGlossaryOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetGlossaryOutput) SetDescription(v string) *GetGlossaryOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetGlossaryOutput) SetDomainId(v string) *GetGlossaryOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetGlossaryOutput) SetId(v string) *GetGlossaryOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetGlossaryOutput) SetName(v string) *GetGlossaryOutput { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *GetGlossaryOutput) SetOwningProjectId(v string) *GetGlossaryOutput { + s.OwningProjectId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetGlossaryOutput) SetStatus(v string) *GetGlossaryOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetGlossaryOutput) SetUpdatedAt(v time.Time) *GetGlossaryOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetGlossaryOutput) SetUpdatedBy(v string) *GetGlossaryOutput { + s.UpdatedBy = &v + return s +} + +type GetGlossaryTermInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which this business glossary term + // exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the business glossary term. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGlossaryTermInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGlossaryTermInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetGlossaryTermInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetGlossaryTermInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetGlossaryTermInput) SetDomainIdentifier(v string) *GetGlossaryTermInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetGlossaryTermInput) SetIdentifier(v string) *GetGlossaryTermInput { + s.Identifier = &v + return s +} + +type GetGlossaryTermOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the business glossary term was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the business glossary. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The ID of the Amazon DataZone domain in which this business glossary term + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the business glossary to which this term belongs. + // + // GlossaryId is a required field + GlossaryId *string `locationName:"glossaryId" type:"string" required:"true"` + + // The ID of the business glossary term. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The long description of the business glossary term. + // + // LongDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetGlossaryTermOutput's + // String and GoString methods. + LongDescription *string `locationName:"longDescription" type:"string" sensitive:"true"` + + // The name of the business glossary term. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetGlossaryTermOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The short decription of the business glossary term. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetGlossaryTermOutput's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` + + // The status of the business glossary term. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GlossaryTermStatus"` + + // The relations of the business glossary term. + TermRelations *TermRelations `locationName:"termRelations" type:"structure"` + + // The timestamp of when the business glossary term was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the business glossary term. + UpdatedBy *string `locationName:"updatedBy" 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 GetGlossaryTermOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGlossaryTermOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetGlossaryTermOutput) SetCreatedAt(v time.Time) *GetGlossaryTermOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetGlossaryTermOutput) SetCreatedBy(v string) *GetGlossaryTermOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetGlossaryTermOutput) SetDomainId(v string) *GetGlossaryTermOutput { + s.DomainId = &v + return s +} + +// SetGlossaryId sets the GlossaryId field's value. +func (s *GetGlossaryTermOutput) SetGlossaryId(v string) *GetGlossaryTermOutput { + s.GlossaryId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetGlossaryTermOutput) SetId(v string) *GetGlossaryTermOutput { + s.Id = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *GetGlossaryTermOutput) SetLongDescription(v string) *GetGlossaryTermOutput { + s.LongDescription = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetGlossaryTermOutput) SetName(v string) *GetGlossaryTermOutput { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *GetGlossaryTermOutput) SetShortDescription(v string) *GetGlossaryTermOutput { + s.ShortDescription = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetGlossaryTermOutput) SetStatus(v string) *GetGlossaryTermOutput { + s.Status = &v + return s +} + +// SetTermRelations sets the TermRelations field's value. +func (s *GetGlossaryTermOutput) SetTermRelations(v *TermRelations) *GetGlossaryTermOutput { + s.TermRelations = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetGlossaryTermOutput) SetUpdatedAt(v time.Time) *GetGlossaryTermOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetGlossaryTermOutput) SetUpdatedBy(v string) *GetGlossaryTermOutput { + s.UpdatedBy = &v + return s +} + +type GetGroupProfileInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain in which the group profile exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the group profile. + // + // GroupIdentifier is a required field + GroupIdentifier *string `location:"uri" locationName:"groupIdentifier" 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 GetGroupProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGroupProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetGroupProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetGroupProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GroupIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("GroupIdentifier")) + } + if s.GroupIdentifier != nil && len(*s.GroupIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetGroupProfileInput) SetDomainIdentifier(v string) *GetGroupProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetGroupIdentifier sets the GroupIdentifier field's value. +func (s *GetGroupProfileInput) SetGroupIdentifier(v string) *GetGroupProfileInput { + s.GroupIdentifier = &v + return s +} + +type GetGroupProfileOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which the group profile exists. + DomainId *string `locationName:"domainId" type:"string"` + + // The name of the group for which the specified group profile exists. + // + // GroupName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetGroupProfileOutput's + // String and GoString methods. + GroupName *string `locationName:"groupName" min:"1" type:"string" sensitive:"true"` + + // The identifier of the group profile. + Id *string `locationName:"id" type:"string"` + + // The identifier of the group profile. + Status *string `locationName:"status" type:"string" enum:"GroupProfileStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGroupProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGroupProfileOutput) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *GetGroupProfileOutput) SetDomainId(v string) *GetGroupProfileOutput { + s.DomainId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *GetGroupProfileOutput) SetGroupName(v string) *GetGroupProfileOutput { + s.GroupName = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetGroupProfileOutput) SetId(v string) *GetGroupProfileOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetGroupProfileOutput) SetStatus(v string) *GetGroupProfileOutput { + s.Status = &v + return s +} + +type GetIamPortalLoginUrlInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // the ID of the Amazon DataZone domain the data portal of which you want to + // get. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" 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 GetIamPortalLoginUrlInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIamPortalLoginUrlInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetIamPortalLoginUrlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetIamPortalLoginUrlInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetIamPortalLoginUrlInput) SetDomainIdentifier(v string) *GetIamPortalLoginUrlInput { + s.DomainIdentifier = &v + return s +} + +type GetIamPortalLoginUrlOutput struct { + _ struct{} `type:"structure"` + + // The data portal URL of the specified Amazon DataZone domain. + AuthCodeUrl *string `locationName:"authCodeUrl" type:"string"` + + // The ID of the user profile. + // + // UserProfileId is a required field + UserProfileId *string `locationName:"userProfileId" 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 GetIamPortalLoginUrlOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIamPortalLoginUrlOutput) GoString() string { + return s.String() +} + +// SetAuthCodeUrl sets the AuthCodeUrl field's value. +func (s *GetIamPortalLoginUrlOutput) SetAuthCodeUrl(v string) *GetIamPortalLoginUrlOutput { + s.AuthCodeUrl = &v + return s +} + +// SetUserProfileId sets the UserProfileId field's value. +func (s *GetIamPortalLoginUrlOutput) SetUserProfileId(v string) *GetIamPortalLoginUrlOutput { + s.UserProfileId = &v + return s +} + +type GetListingInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + ListingRevision *string `location:"querystring" locationName:"listingRevision" 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 GetListingInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetListingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetListingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetListingInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.ListingRevision != nil && len(*s.ListingRevision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ListingRevision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetListingInput) SetDomainIdentifier(v string) *GetListingInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetListingInput) SetIdentifier(v string) *GetListingInput { + s.Identifier = &v + return s +} + +// SetListingRevision sets the ListingRevision field's value. +func (s *GetListingInput) SetListingRevision(v string) *GetListingInput { + s.ListingRevision = &v + return s +} + +type GetListingOutput struct { + _ struct{} `type:"structure"` + + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the listing. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetListingOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The details of a listing (aka asset published in a Amazon DataZone catalog). + Item *ListingItem `locationName:"item" type:"structure"` + + // ListingRevision is a required field + ListingRevision *string `locationName:"listingRevision" min:"1" type:"string" required:"true"` + + Name *string `locationName:"name" min:"1" type:"string"` + + Status *string `locationName:"status" type:"string" enum:"ListingStatus"` + + // The timestamp of when the listing was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the listing. + UpdatedBy *string `locationName:"updatedBy" 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 GetListingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetListingOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetListingOutput) SetCreatedAt(v time.Time) *GetListingOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetListingOutput) SetCreatedBy(v string) *GetListingOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetListingOutput) SetDescription(v string) *GetListingOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetListingOutput) SetDomainId(v string) *GetListingOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetListingOutput) SetId(v string) *GetListingOutput { + s.Id = &v + return s +} + +// SetItem sets the Item field's value. +func (s *GetListingOutput) SetItem(v *ListingItem) *GetListingOutput { + s.Item = v + return s +} + +// SetListingRevision sets the ListingRevision field's value. +func (s *GetListingOutput) SetListingRevision(v string) *GetListingOutput { + s.ListingRevision = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetListingOutput) SetName(v string) *GetListingOutput { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetListingOutput) SetStatus(v string) *GetListingOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetListingOutput) SetUpdatedAt(v time.Time) *GetListingOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetListingOutput) SetUpdatedBy(v string) *GetListingOutput { + s.UpdatedBy = &v + return s +} + +type GetProjectInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the project exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the project. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProjectInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProjectInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetProjectInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetProjectInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetProjectInput) SetDomainIdentifier(v string) *GetProjectInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetProjectInput) SetIdentifier(v string) *GetProjectInput { + s.Identifier = &v + return s +} + +type GetProjectOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the project was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the project. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of the project. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProjectOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the Amazon DataZone domain in which the project exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The business glossary terms that can be used in the project. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // >The ID of the project. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp of when the project was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the project. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProjectOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProjectOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProjectOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetProjectOutput) SetCreatedAt(v time.Time) *GetProjectOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetProjectOutput) SetCreatedBy(v string) *GetProjectOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetProjectOutput) SetDescription(v string) *GetProjectOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetProjectOutput) SetDomainId(v string) *GetProjectOutput { + s.DomainId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *GetProjectOutput) SetGlossaryTerms(v []*string) *GetProjectOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *GetProjectOutput) SetId(v string) *GetProjectOutput { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *GetProjectOutput) SetLastUpdatedAt(v time.Time) *GetProjectOutput { + s.LastUpdatedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetProjectOutput) SetName(v string) *GetProjectOutput { + s.Name = &v + return s +} + +type GetSubscriptionGrantInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the subscription grant exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the subscription grant. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSubscriptionGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionGrantInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetSubscriptionGrantInput) SetDomainIdentifier(v string) *GetSubscriptionGrantInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetSubscriptionGrantInput) SetIdentifier(v string) *GetSubscriptionGrantInput { + s.Identifier = &v + return s +} + +type GetSubscriptionGrantOutput struct { + _ struct{} `type:"structure"` + + // The assets for which the subscription grant is created. + Assets []*SubscribedAsset `locationName:"assets" type:"list"` + + // The timestamp of when the subscription grant is created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription grant. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the subscription grant exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The entity to which the subscription is granted. + // + // GrantedEntity is a required field + GrantedEntity *GrantedEntity `locationName:"grantedEntity" type:"structure" required:"true"` + + // The ID of the subscription grant. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The status of the subscription grant. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantOverallStatus"` + + // The identifier of the subscription. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` + + // The subscription target ID associated with the subscription grant. + // + // SubscriptionTargetId is a required field + SubscriptionTargetId *string `locationName:"subscriptionTargetId" type:"string" required:"true"` + + // The timestamp of when the subscription grant was upated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription grant. + UpdatedBy *string `locationName:"updatedBy" 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 GetSubscriptionGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionGrantOutput) GoString() string { + return s.String() +} + +// SetAssets sets the Assets field's value. +func (s *GetSubscriptionGrantOutput) SetAssets(v []*SubscribedAsset) *GetSubscriptionGrantOutput { + s.Assets = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetSubscriptionGrantOutput) SetCreatedAt(v time.Time) *GetSubscriptionGrantOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetSubscriptionGrantOutput) SetCreatedBy(v string) *GetSubscriptionGrantOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetSubscriptionGrantOutput) SetDomainId(v string) *GetSubscriptionGrantOutput { + s.DomainId = &v + return s +} + +// SetGrantedEntity sets the GrantedEntity field's value. +func (s *GetSubscriptionGrantOutput) SetGrantedEntity(v *GrantedEntity) *GetSubscriptionGrantOutput { + s.GrantedEntity = v + return s +} + +// SetId sets the Id field's value. +func (s *GetSubscriptionGrantOutput) SetId(v string) *GetSubscriptionGrantOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetSubscriptionGrantOutput) SetStatus(v string) *GetSubscriptionGrantOutput { + s.Status = &v + return s +} + +// SetSubscriptionId sets the SubscriptionId field's value. +func (s *GetSubscriptionGrantOutput) SetSubscriptionId(v string) *GetSubscriptionGrantOutput { + s.SubscriptionId = &v + return s +} + +// SetSubscriptionTargetId sets the SubscriptionTargetId field's value. +func (s *GetSubscriptionGrantOutput) SetSubscriptionTargetId(v string) *GetSubscriptionGrantOutput { + s.SubscriptionTargetId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetSubscriptionGrantOutput) SetUpdatedAt(v time.Time) *GetSubscriptionGrantOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetSubscriptionGrantOutput) SetUpdatedBy(v string) *GetSubscriptionGrantOutput { + s.UpdatedBy = &v + return s +} + +type GetSubscriptionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the subscription exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the subscription. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetSubscriptionInput) SetDomainIdentifier(v string) *GetSubscriptionInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetSubscriptionInput) SetIdentifier(v string) *GetSubscriptionInput { + s.Identifier = &v + return s +} + +type GetSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the subscription was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the subscription exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the subscription. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The retain permissions of the subscription. + RetainPermissions *bool `locationName:"retainPermissions" type:"boolean"` + + // The status of the subscription. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionStatus"` + + // The details of the published asset for which the subscription grant is created. + // + // SubscribedListing is a required field + SubscribedListing *SubscribedListing `locationName:"subscribedListing" type:"structure" required:"true"` + + // The principal that owns the subscription. + // + // SubscribedPrincipal is a required field + SubscribedPrincipal *SubscribedPrincipal `locationName:"subscribedPrincipal" type:"structure" required:"true"` + + // The ID of the subscription request. + SubscriptionRequestId *string `locationName:"subscriptionRequestId" type:"string"` + + // The timestamp of when the subscription was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription. + UpdatedBy *string `locationName:"updatedBy" 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 GetSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetSubscriptionOutput) SetCreatedAt(v time.Time) *GetSubscriptionOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetSubscriptionOutput) SetCreatedBy(v string) *GetSubscriptionOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetSubscriptionOutput) SetDomainId(v string) *GetSubscriptionOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetSubscriptionOutput) SetId(v string) *GetSubscriptionOutput { + s.Id = &v + return s +} + +// SetRetainPermissions sets the RetainPermissions field's value. +func (s *GetSubscriptionOutput) SetRetainPermissions(v bool) *GetSubscriptionOutput { + s.RetainPermissions = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetSubscriptionOutput) SetStatus(v string) *GetSubscriptionOutput { + s.Status = &v + return s +} + +// SetSubscribedListing sets the SubscribedListing field's value. +func (s *GetSubscriptionOutput) SetSubscribedListing(v *SubscribedListing) *GetSubscriptionOutput { + s.SubscribedListing = v + return s +} + +// SetSubscribedPrincipal sets the SubscribedPrincipal field's value. +func (s *GetSubscriptionOutput) SetSubscribedPrincipal(v *SubscribedPrincipal) *GetSubscriptionOutput { + s.SubscribedPrincipal = v + return s +} + +// SetSubscriptionRequestId sets the SubscriptionRequestId field's value. +func (s *GetSubscriptionOutput) SetSubscriptionRequestId(v string) *GetSubscriptionOutput { + s.SubscriptionRequestId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetSubscriptionOutput) SetUpdatedAt(v time.Time) *GetSubscriptionOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetSubscriptionOutput) SetUpdatedBy(v string) *GetSubscriptionOutput { + s.UpdatedBy = &v + return s +} + +type GetSubscriptionRequestDetailsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain in which to get the subscription + // request details. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the subscription request the details of which to get. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionRequestDetailsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionRequestDetailsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSubscriptionRequestDetailsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionRequestDetailsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetSubscriptionRequestDetailsInput) SetDomainIdentifier(v string) *GetSubscriptionRequestDetailsInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetSubscriptionRequestDetailsInput) SetIdentifier(v string) *GetSubscriptionRequestDetailsInput { + s.Identifier = &v + return s +} + +type GetSubscriptionRequestDetailsOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the specified subscription request was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription request. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The decision comment of the subscription request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetSubscriptionRequestDetailsOutput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The Amazon DataZone domain of the subscription request. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription request. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The reason for the subscription request. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetSubscriptionRequestDetailsOutput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the Amazon DataZone user who reviewed the subscription + // request. + ReviewerId *string `locationName:"reviewerId" type:"string"` + + // The status of the subscription request. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionRequestStatus"` + + // The subscribed listings in the subscription request. + // + // SubscribedListings is a required field + SubscribedListings []*SubscribedListing `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // The subscribed principals in the subscription request. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipal `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription request was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription request. + UpdatedBy *string `locationName:"updatedBy" 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 GetSubscriptionRequestDetailsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionRequestDetailsOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetCreatedAt(v time.Time) *GetSubscriptionRequestDetailsOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetCreatedBy(v string) *GetSubscriptionRequestDetailsOutput { + s.CreatedBy = &v + return s +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetDecisionComment(v string) *GetSubscriptionRequestDetailsOutput { + s.DecisionComment = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetDomainId(v string) *GetSubscriptionRequestDetailsOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetId(v string) *GetSubscriptionRequestDetailsOutput { + s.Id = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetRequestReason(v string) *GetSubscriptionRequestDetailsOutput { + s.RequestReason = &v + return s +} + +// SetReviewerId sets the ReviewerId field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetReviewerId(v string) *GetSubscriptionRequestDetailsOutput { + s.ReviewerId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetStatus(v string) *GetSubscriptionRequestDetailsOutput { + s.Status = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetSubscribedListings(v []*SubscribedListing) *GetSubscriptionRequestDetailsOutput { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetSubscribedPrincipals(v []*SubscribedPrincipal) *GetSubscriptionRequestDetailsOutput { + s.SubscribedPrincipals = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetUpdatedAt(v time.Time) *GetSubscriptionRequestDetailsOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetSubscriptionRequestDetailsOutput) SetUpdatedBy(v string) *GetSubscriptionRequestDetailsOutput { + s.UpdatedBy = &v + return s +} + +type GetSubscriptionTargetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon DataZone domain in which the subscription target exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The ID of the environment associated with the subscription target. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `location:"uri" locationName:"environmentIdentifier" type:"string" required:"true"` + + // The ID of the subscription target. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionTargetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionTargetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSubscriptionTargetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionTargetInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.EnvironmentIdentifier != nil && len(*s.EnvironmentIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetSubscriptionTargetInput) SetDomainIdentifier(v string) *GetSubscriptionTargetInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *GetSubscriptionTargetInput) SetEnvironmentIdentifier(v string) *GetSubscriptionTargetInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetSubscriptionTargetInput) SetIdentifier(v string) *GetSubscriptionTargetInput { + s.Identifier = &v + return s +} + +type GetSubscriptionTargetOutput struct { + _ struct{} `type:"structure"` + + // The asset types associated with the subscription target. + // + // ApplicableAssetTypes is a required field + ApplicableAssetTypes []*string `locationName:"applicableAssetTypes" type:"list" required:"true"` + + // The authorized principals of the subscription target. + // + // AuthorizedPrincipals is a required field + AuthorizedPrincipals []*string `locationName:"authorizedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription target was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription target. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The ID of the Amazon DataZone domain in which the subscription target exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The ID of the environment associated with the subscription target. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // The ID of the subscription target. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The manage access role with which the subscription target was created. + // + // ManageAccessRole is a required field + ManageAccessRole *string `locationName:"manageAccessRole" type:"string" required:"true"` + + // The name of the subscription target. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetSubscriptionTargetOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the project associated with the subscription target. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider of the subscription target. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The configuration of teh subscription target. + // + // SubscriptionTargetConfig is a required field + SubscriptionTargetConfig []*SubscriptionTargetForm `locationName:"subscriptionTargetConfig" type:"list" required:"true"` + + // The type of the subscription target. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true"` + + // The timestamp of when the subscription target was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the subscription target. + UpdatedBy *string `locationName:"updatedBy" 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 GetSubscriptionTargetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSubscriptionTargetOutput) GoString() string { + return s.String() +} + +// SetApplicableAssetTypes sets the ApplicableAssetTypes field's value. +func (s *GetSubscriptionTargetOutput) SetApplicableAssetTypes(v []*string) *GetSubscriptionTargetOutput { + s.ApplicableAssetTypes = v + return s +} + +// SetAuthorizedPrincipals sets the AuthorizedPrincipals field's value. +func (s *GetSubscriptionTargetOutput) SetAuthorizedPrincipals(v []*string) *GetSubscriptionTargetOutput { + s.AuthorizedPrincipals = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetSubscriptionTargetOutput) SetCreatedAt(v time.Time) *GetSubscriptionTargetOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GetSubscriptionTargetOutput) SetCreatedBy(v string) *GetSubscriptionTargetOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetSubscriptionTargetOutput) SetDomainId(v string) *GetSubscriptionTargetOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *GetSubscriptionTargetOutput) SetEnvironmentId(v string) *GetSubscriptionTargetOutput { + s.EnvironmentId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetSubscriptionTargetOutput) SetId(v string) *GetSubscriptionTargetOutput { + s.Id = &v + return s +} + +// SetManageAccessRole sets the ManageAccessRole field's value. +func (s *GetSubscriptionTargetOutput) SetManageAccessRole(v string) *GetSubscriptionTargetOutput { + s.ManageAccessRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetSubscriptionTargetOutput) SetName(v string) *GetSubscriptionTargetOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *GetSubscriptionTargetOutput) SetProjectId(v string) *GetSubscriptionTargetOutput { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *GetSubscriptionTargetOutput) SetProvider(v string) *GetSubscriptionTargetOutput { + s.Provider = &v + return s +} + +// SetSubscriptionTargetConfig sets the SubscriptionTargetConfig field's value. +func (s *GetSubscriptionTargetOutput) SetSubscriptionTargetConfig(v []*SubscriptionTargetForm) *GetSubscriptionTargetOutput { + s.SubscriptionTargetConfig = v + return s +} + +// SetType sets the Type field's value. +func (s *GetSubscriptionTargetOutput) SetType(v string) *GetSubscriptionTargetOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetSubscriptionTargetOutput) SetUpdatedAt(v time.Time) *GetSubscriptionTargetOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GetSubscriptionTargetOutput) SetUpdatedBy(v string) *GetSubscriptionTargetOutput { + s.UpdatedBy = &v + return s +} + +type GetUserProfileInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // the ID of the Amazon DataZone domain the data portal of which you want to + // get. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The type of the user profile. + Type *string `location:"querystring" locationName:"type" type:"string" enum:"UserProfileType"` + + // The identifier of the user for which you want to get the user profile. + // + // UserIdentifier is a required field + UserIdentifier *string `location:"uri" locationName:"userIdentifier" 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 GetUserProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUserProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetUserProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetUserProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.UserIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("UserIdentifier")) + } + if s.UserIdentifier != nil && len(*s.UserIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *GetUserProfileInput) SetDomainIdentifier(v string) *GetUserProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetUserProfileInput) SetType(v string) *GetUserProfileInput { + s.Type = &v + return s +} + +// SetUserIdentifier sets the UserIdentifier field's value. +func (s *GetUserProfileInput) SetUserIdentifier(v string) *GetUserProfileInput { + s.UserIdentifier = &v + return s +} + +type GetUserProfileOutput struct { + _ struct{} `type:"structure"` + + // The details of the user profile in Amazon DataZone. + Details *UserProfileDetails `locationName:"details" type:"structure"` + + // the identifier of the Amazon DataZone domain of which you want to get the + // user profile. + DomainId *string `locationName:"domainId" type:"string"` + + // The identifier of the user profile. + Id *string `locationName:"id" type:"string"` + + // The status of the user profile. + Status *string `locationName:"status" type:"string" enum:"UserProfileStatus"` + + // The type of the user profile. + Type *string `locationName:"type" type:"string" enum:"UserProfileType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUserProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUserProfileOutput) GoString() string { + return s.String() +} + +// SetDetails sets the Details field's value. +func (s *GetUserProfileOutput) SetDetails(v *UserProfileDetails) *GetUserProfileOutput { + s.Details = v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GetUserProfileOutput) SetDomainId(v string) *GetUserProfileOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetUserProfileOutput) SetId(v string) *GetUserProfileOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetUserProfileOutput) SetStatus(v string) *GetUserProfileOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetUserProfileOutput) SetType(v string) *GetUserProfileOutput { + s.Type = &v + return s +} + +// The details of a business glossary. +type GlossaryItem struct { + _ struct{} `type:"structure"` + + // The timestamp of when the glossary was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the glossary. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The business glossary description. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GlossaryItem's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the business glossary + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the glossary. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of the glossary. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GlossaryItem's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project that owns the business glosary. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The business glossary status. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GlossaryStatus"` + + // The timestamp of when the business glossary was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the business glossary. + UpdatedBy *string `locationName:"updatedBy" 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 GlossaryItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GlossaryItem) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GlossaryItem) SetCreatedAt(v time.Time) *GlossaryItem { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GlossaryItem) SetCreatedBy(v string) *GlossaryItem { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GlossaryItem) SetDescription(v string) *GlossaryItem { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GlossaryItem) SetDomainId(v string) *GlossaryItem { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GlossaryItem) SetId(v string) *GlossaryItem { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GlossaryItem) SetName(v string) *GlossaryItem { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *GlossaryItem) SetOwningProjectId(v string) *GlossaryItem { + s.OwningProjectId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GlossaryItem) SetStatus(v string) *GlossaryItem { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GlossaryItem) SetUpdatedAt(v time.Time) *GlossaryItem { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GlossaryItem) SetUpdatedBy(v string) *GlossaryItem { + s.UpdatedBy = &v + return s +} + +// The details of a business glossary term. +type GlossaryTermItem struct { + _ struct{} `type:"structure"` + + // The timestamp of when a business glossary term was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon DataZone user who created the business glossary. + CreatedBy *string `locationName:"createdBy" type:"string"` + + // The identifier of the Amazon DataZone domain in which the business glossary + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the business glossary to which the term belongs. + // + // GlossaryId is a required field + GlossaryId *string `locationName:"glossaryId" type:"string" required:"true"` + + // The identifier of the business glossary term. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The long description of the business glossary term. + // + // LongDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GlossaryTermItem's + // String and GoString methods. + LongDescription *string `locationName:"longDescription" type:"string" sensitive:"true"` + + // The name of the business glossary term. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GlossaryTermItem's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The short description of the business glossary term. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GlossaryTermItem's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` + + // The status of the business glossary term. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GlossaryTermStatus"` + + // The relations of the business glossary term. + TermRelations *TermRelations `locationName:"termRelations" type:"structure"` + + // The timestamp of when a business glossary term was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the business glossary term. + UpdatedBy *string `locationName:"updatedBy" 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 GlossaryTermItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GlossaryTermItem) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GlossaryTermItem) SetCreatedAt(v time.Time) *GlossaryTermItem { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *GlossaryTermItem) SetCreatedBy(v string) *GlossaryTermItem { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *GlossaryTermItem) SetDomainId(v string) *GlossaryTermItem { + s.DomainId = &v + return s +} + +// SetGlossaryId sets the GlossaryId field's value. +func (s *GlossaryTermItem) SetGlossaryId(v string) *GlossaryTermItem { + s.GlossaryId = &v + return s +} + +// SetId sets the Id field's value. +func (s *GlossaryTermItem) SetId(v string) *GlossaryTermItem { + s.Id = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *GlossaryTermItem) SetLongDescription(v string) *GlossaryTermItem { + s.LongDescription = &v + return s +} + +// SetName sets the Name field's value. +func (s *GlossaryTermItem) SetName(v string) *GlossaryTermItem { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *GlossaryTermItem) SetShortDescription(v string) *GlossaryTermItem { + s.ShortDescription = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GlossaryTermItem) SetStatus(v string) *GlossaryTermItem { + s.Status = &v + return s +} + +// SetTermRelations sets the TermRelations field's value. +func (s *GlossaryTermItem) SetTermRelations(v *TermRelations) *GlossaryTermItem { + s.TermRelations = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GlossaryTermItem) SetUpdatedAt(v time.Time) *GlossaryTermItem { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *GlossaryTermItem) SetUpdatedBy(v string) *GlossaryTermItem { + s.UpdatedBy = &v + return s +} + +// The configuration details of the Amazon Web Services Glue data source. +type GlueRunConfigurationInput_ struct { + _ struct{} `type:"structure"` + + // The data access role included in the configuration details of the Amazon + // Web Services Glue data source. + DataAccessRole *string `locationName:"dataAccessRole" type:"string"` + + // The relational filter configurations included in the configuration details + // of the Amazon Web Services Glue data source. + // + // RelationalFilterConfigurations is a required field + RelationalFilterConfigurations []*RelationalFilterConfiguration `locationName:"relationalFilterConfigurations" 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 GlueRunConfigurationInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GlueRunConfigurationInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GlueRunConfigurationInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GlueRunConfigurationInput_"} + if s.RelationalFilterConfigurations == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalFilterConfigurations")) + } + if s.RelationalFilterConfigurations != nil { + for i, v := range s.RelationalFilterConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RelationalFilterConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataAccessRole sets the DataAccessRole field's value. +func (s *GlueRunConfigurationInput_) SetDataAccessRole(v string) *GlueRunConfigurationInput_ { + s.DataAccessRole = &v + return s +} + +// SetRelationalFilterConfigurations sets the RelationalFilterConfigurations field's value. +func (s *GlueRunConfigurationInput_) SetRelationalFilterConfigurations(v []*RelationalFilterConfiguration) *GlueRunConfigurationInput_ { + s.RelationalFilterConfigurations = v + return s +} + +// The configuration details of the Amazon Web Services Glue data source. +type GlueRunConfigurationOutput_ struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID included in the configuration details + // of the Amazon Web Services Glue data source. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The data access role included in the configuration details of the Amazon + // Web Services Glue data source. + DataAccessRole *string `locationName:"dataAccessRole" type:"string"` + + // The Amazon Web Services region included in the configuration details of the + // Amazon Web Services Glue data source. + Region *string `locationName:"region" min:"4" type:"string"` + + // The relational filter configurations included in the configuration details + // of the Amazon Web Services Glue data source. + // + // RelationalFilterConfigurations is a required field + RelationalFilterConfigurations []*RelationalFilterConfiguration `locationName:"relationalFilterConfigurations" 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 GlueRunConfigurationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GlueRunConfigurationOutput_) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *GlueRunConfigurationOutput_) SetAccountId(v string) *GlueRunConfigurationOutput_ { + s.AccountId = &v + return s +} + +// SetDataAccessRole sets the DataAccessRole field's value. +func (s *GlueRunConfigurationOutput_) SetDataAccessRole(v string) *GlueRunConfigurationOutput_ { + s.DataAccessRole = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *GlueRunConfigurationOutput_) SetRegion(v string) *GlueRunConfigurationOutput_ { + s.Region = &v + return s +} + +// SetRelationalFilterConfigurations sets the RelationalFilterConfigurations field's value. +func (s *GlueRunConfigurationOutput_) SetRelationalFilterConfigurations(v []*RelationalFilterConfiguration) *GlueRunConfigurationOutput_ { + s.RelationalFilterConfigurations = v + return s +} + +// The details of a listing for which a subscription is granted. +type GrantedEntity struct { + _ struct{} `type:"structure"` + + // The listing for which a subscription is granted. + Listing *ListingRevision `locationName:"listing" 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 GrantedEntity) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrantedEntity) GoString() string { + return s.String() +} + +// SetListing sets the Listing field's value. +func (s *GrantedEntity) SetListing(v *ListingRevision) *GrantedEntity { + s.Listing = v + return s +} + +// The details of a listing for which a subscription is to be granted. +type GrantedEntityInput_ struct { + _ struct{} `type:"structure"` + + // The listing for which a subscription is to be granted. + Listing *ListingRevisionInput_ `locationName:"listing" 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 GrantedEntityInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrantedEntityInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GrantedEntityInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrantedEntityInput_"} + if s.Listing != nil { + if err := s.Listing.Validate(); err != nil { + invalidParams.AddNested("Listing", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetListing sets the Listing field's value. +func (s *GrantedEntityInput_) SetListing(v *ListingRevisionInput_) *GrantedEntityInput_ { + s.Listing = v + return s +} + +// The details of a group in Amazon DataZone. +type GroupDetails struct { + _ struct{} `type:"structure"` + + // The identifier of the group in Amazon DataZone. + // + // GroupId is a required field + GroupId *string `locationName:"groupId" 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 GroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupDetails) GoString() string { + return s.String() +} + +// SetGroupId sets the GroupId field's value. +func (s *GroupDetails) SetGroupId(v string) *GroupDetails { + s.GroupId = &v + return s +} + +// The details of a group profile. +type GroupProfileSummary struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon DataZone domain of a group profile. + DomainId *string `locationName:"domainId" type:"string"` + + // The group name of a group profile. + // + // GroupName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GroupProfileSummary's + // String and GoString methods. + GroupName *string `locationName:"groupName" min:"1" type:"string" sensitive:"true"` + + // The ID of a group profile. + Id *string `locationName:"id" type:"string"` + + // The status of a group profile. + Status *string `locationName:"status" type:"string" enum:"GroupProfileStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupProfileSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupProfileSummary) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *GroupProfileSummary) SetDomainId(v string) *GroupProfileSummary { + s.DomainId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *GroupProfileSummary) SetGroupName(v string) *GroupProfileSummary { + s.GroupName = &v + return s +} + +// SetId sets the Id field's value. +func (s *GroupProfileSummary) SetId(v string) *GroupProfileSummary { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GroupProfileSummary) SetStatus(v string) *GroupProfileSummary { + s.Status = &v + return s +} + +// The details of an IAM user profile in Amazon DataZone. +type IamUserProfileDetails struct { + _ struct{} `type:"structure"` + + // The ARN of an IAM user profile in Amazon DataZone. + Arn *string `locationName:"arn" 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 IamUserProfileDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IamUserProfileDetails) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *IamUserProfileDetails) SetArn(v string) *IamUserProfileDetails { + s.Arn = &v + return s +} + +// The details of the import of the metadata form type. +type Import struct { + _ struct{} `type:"structure"` + + // The name of the import. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Import's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The revision of the import. + // + // Revision is a required field + Revision *string `locationName:"revision" 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 Import) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Import) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Import) SetName(v string) *Import { + s.Name = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *Import) SetRevision(v string) *Import { + s.Revision = &v + return s +} + +// The request has failed because of an unknown error, exception or failure. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListAssetRevisionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the asset. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The maximum number of revisions to return in a single call to ListAssetRevisions. + // When the number of revisions to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to ListAssetRevisions to list the next set of revisions. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of revisions is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of revisions, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListAssetRevisions + // to list the next set of revisions. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetRevisionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetRevisionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAssetRevisionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAssetRevisionsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListAssetRevisionsInput) SetDomainIdentifier(v string) *ListAssetRevisionsInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *ListAssetRevisionsInput) SetIdentifier(v string) *ListAssetRevisionsInput { + s.Identifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAssetRevisionsInput) SetMaxResults(v int64) *ListAssetRevisionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssetRevisionsInput) SetNextToken(v string) *ListAssetRevisionsInput { + s.NextToken = &v + return s +} + +type ListAssetRevisionsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListAssetRevisions action. + Items []*AssetRevision `locationName:"items" type:"list"` + + // When the number of revisions is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of revisions, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListAssetRevisions + // to list the next set of revisions. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetRevisionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetRevisionsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListAssetRevisionsOutput) SetItems(v []*AssetRevision) *ListAssetRevisionsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssetRevisionsOutput) SetNextToken(v string) *ListAssetRevisionsOutput { + s.NextToken = &v + return s +} + +type ListDataSourceRunActivitiesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain in which to list data source + // run activities. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the data source run. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The maximum number of activities to return in a single call to ListDataSourceRunActivities. + // When the number of activities to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to ListDataSourceRunActivities to list the next set of activities. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of activities is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of activities, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListDataSourceRunActivities + // to list the next set of activities. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The status of the data source run. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"DataAssetActivityStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunActivitiesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunActivitiesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourceRunActivitiesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourceRunActivitiesInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListDataSourceRunActivitiesInput) SetDomainIdentifier(v string) *ListDataSourceRunActivitiesInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *ListDataSourceRunActivitiesInput) SetIdentifier(v string) *ListDataSourceRunActivitiesInput { + s.Identifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourceRunActivitiesInput) SetMaxResults(v int64) *ListDataSourceRunActivitiesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourceRunActivitiesInput) SetNextToken(v string) *ListDataSourceRunActivitiesInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListDataSourceRunActivitiesInput) SetStatus(v string) *ListDataSourceRunActivitiesInput { + s.Status = &v + return s +} + +type ListDataSourceRunActivitiesOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListDataSourceRunActivities action. + // + // Items is a required field + Items []*DataSourceRunActivity `locationName:"items" type:"list" required:"true"` + + // When the number of activities is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of activities, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListDataSourceRunActivities + // to list the next set of activities. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunActivitiesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunActivitiesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListDataSourceRunActivitiesOutput) SetItems(v []*DataSourceRunActivity) *ListDataSourceRunActivitiesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourceRunActivitiesOutput) SetNextToken(v string) *ListDataSourceRunActivitiesOutput { + s.NextToken = &v + return s +} + +type ListDataSourceRunsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the data source. + // + // DataSourceIdentifier is a required field + DataSourceIdentifier *string `location:"uri" locationName:"dataSourceIdentifier" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which to invoke the ListDataSourceRuns + // action. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of runs to return in a single call to ListDataSourceRuns. + // When the number of runs to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to ListDataSourceRuns to list the next set of runs. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of runs is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of runs, the response includes a pagination token named NextToken. + // You can specify this NextToken value in a subsequent call to ListDataSourceRuns + // to list the next set of runs. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The status of the data source. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"DataSourceRunStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourceRunsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourceRunsInput"} + if s.DataSourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceIdentifier")) + } + if s.DataSourceIdentifier != nil && len(*s.DataSourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceIdentifier", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceIdentifier sets the DataSourceIdentifier field's value. +func (s *ListDataSourceRunsInput) SetDataSourceIdentifier(v string) *ListDataSourceRunsInput { + s.DataSourceIdentifier = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListDataSourceRunsInput) SetDomainIdentifier(v string) *ListDataSourceRunsInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourceRunsInput) SetMaxResults(v int64) *ListDataSourceRunsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourceRunsInput) SetNextToken(v string) *ListDataSourceRunsInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListDataSourceRunsInput) SetStatus(v string) *ListDataSourceRunsInput { + s.Status = &v + return s +} + +type ListDataSourceRunsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListDataSourceRuns action. + // + // Items is a required field + Items []*DataSourceRunSummary `locationName:"items" type:"list" required:"true"` + + // When the number of runs is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of runs, the response includes a pagination token named NextToken. + // You can specify this NextToken value in a subsequent call to ListDataSourceRuns + // to list the next set of runs. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceRunsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListDataSourceRunsOutput) SetItems(v []*DataSourceRunSummary) *ListDataSourceRunsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourceRunsOutput) SetNextToken(v string) *ListDataSourceRunsOutput { + s.NextToken = &v + return s +} + +type ListDataSourcesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain in which to list the data sources. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the environment in which to list the data sources. + EnvironmentIdentifier *string `location:"querystring" locationName:"environmentIdentifier" type:"string"` + + // The maximum number of data sources to return in a single call to ListDataSources. + // When the number of data sources to be listed is greater than the value of + // MaxResults, the response contains a NextToken value that you can use in a + // subsequent call to ListDataSources to list the next set of data sources. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The name of the data source. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListDataSourcesInput's + // String and GoString methods. + Name *string `location:"querystring" locationName:"name" min:"1" type:"string" sensitive:"true"` + + // When the number of data sources is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of data sources, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListDataSources to list the next set of data sources. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the project in which to list data sources. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `location:"querystring" locationName:"projectIdentifier" type:"string" required:"true"` + + // The status of the data source. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The type of the data source. + Type *string `location:"querystring" locationName:"type" 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 ListDataSourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + if s.Type != nil && len(*s.Type) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Type", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListDataSourcesInput) SetDomainIdentifier(v string) *ListDataSourcesInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *ListDataSourcesInput) SetEnvironmentIdentifier(v string) *ListDataSourcesInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListDataSourcesInput) SetName(v string) *ListDataSourcesInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput { + s.NextToken = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *ListDataSourcesInput) SetProjectIdentifier(v string) *ListDataSourcesInput { + s.ProjectIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListDataSourcesInput) SetStatus(v string) *ListDataSourcesInput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *ListDataSourcesInput) SetType(v string) *ListDataSourcesInput { + s.Type = &v + return s +} + +type ListDataSourcesOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListDataSources action. + // + // Items is a required field + Items []*DataSourceSummary `locationName:"items" type:"list" required:"true"` + + // When the number of data sources is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of data sources, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListDataSources to list the next set of data sources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListDataSourcesOutput) SetItems(v []*DataSourceSummary) *ListDataSourcesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput { + s.NextToken = &v + return s +} + +type ListDomainsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of domains to return in a single call to ListDomains. + // When the number of domains to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to ListDomains to list the next set of domains. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of domains is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of domains, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListDomains + // to list the next set of domains. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The status of the data source. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"DomainStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDomainsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDomainsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDomainsInput) SetMaxResults(v int64) *ListDomainsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDomainsInput) SetNextToken(v string) *ListDomainsInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListDomainsInput) SetStatus(v string) *ListDomainsInput { + s.Status = &v + return s +} + +type ListDomainsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListDomains action. + // + // Items is a required field + Items []*DomainSummary `locationName:"items" type:"list" required:"true"` + + // When the number of domains is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of domains, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListDomains + // to list the next set of domains. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListDomainsOutput) SetItems(v []*DomainSummary) *ListDomainsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDomainsOutput) SetNextToken(v string) *ListDomainsOutput { + s.NextToken = &v + return s +} + +type ListEnvironmentBlueprintConfigurationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of blueprint configurations to return in a single call + // to ListEnvironmentBlueprintConfigurations. When the number of configurations + // to be listed is greater than the value of MaxResults, the response contains + // a NextToken value that you can use in a subsequent call to ListEnvironmentBlueprintConfigurations + // to list the next set of configurations. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of blueprint configurations is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of configurations, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListEnvironmentBlueprintConfigurations to list the next set of configurations. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentBlueprintConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentBlueprintConfigurationsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListEnvironmentBlueprintConfigurationsInput) SetDomainIdentifier(v string) *ListEnvironmentBlueprintConfigurationsInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentBlueprintConfigurationsInput) SetMaxResults(v int64) *ListEnvironmentBlueprintConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentBlueprintConfigurationsInput) SetNextToken(v string) *ListEnvironmentBlueprintConfigurationsInput { + s.NextToken = &v + return s +} + +type ListEnvironmentBlueprintConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListEnvironmentBlueprintConfigurations action. + Items []*EnvironmentBlueprintConfigurationItem `locationName:"items" type:"list"` + + // When the number of blueprint configurations is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of configurations, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListEnvironmentBlueprintConfigurations to list the next set of configurations. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintConfigurationsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListEnvironmentBlueprintConfigurationsOutput) SetItems(v []*EnvironmentBlueprintConfigurationItem) *ListEnvironmentBlueprintConfigurationsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentBlueprintConfigurationsOutput) SetNextToken(v string) *ListEnvironmentBlueprintConfigurationsOutput { + s.NextToken = &v + return s +} + +type ListEnvironmentBlueprintsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Specifies whether the environment blueprint is managed by Amazon DataZone. + Managed *bool `location:"querystring" locationName:"managed" type:"boolean"` + + // The maximum number of blueprints to return in a single call to ListEnvironmentBlueprints. + // When the number of blueprints to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to ListEnvironmentBlueprints to list the next set of blueprints. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The name of the Amazon DataZone environment. + Name *string `location:"querystring" locationName:"name" min:"1" type:"string"` + + // When the number of blueprints in the environment is greater than the default + // value for the MaxResults parameter, or if you explicitly specify a value + // for MaxResults that is less than the number of blueprints in the environment, + // the response includes a pagination token named NextToken. You can specify + // this NextToken value in a subsequent call to ListEnvironmentBlueprintsto + // list the next set of blueprints. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentBlueprintsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentBlueprintsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListEnvironmentBlueprintsInput) SetDomainIdentifier(v string) *ListEnvironmentBlueprintsInput { + s.DomainIdentifier = &v + return s +} + +// SetManaged sets the Managed field's value. +func (s *ListEnvironmentBlueprintsInput) SetManaged(v bool) *ListEnvironmentBlueprintsInput { + s.Managed = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentBlueprintsInput) SetMaxResults(v int64) *ListEnvironmentBlueprintsInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListEnvironmentBlueprintsInput) SetName(v string) *ListEnvironmentBlueprintsInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentBlueprintsInput) SetNextToken(v string) *ListEnvironmentBlueprintsInput { + s.NextToken = &v + return s +} + +type ListEnvironmentBlueprintsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListEnvironmentBlueprints action. + // + // Items is a required field + Items []*EnvironmentBlueprintSummary `locationName:"items" type:"list" required:"true"` + + // When the number of blueprints in the environment is greater than the default + // value for the MaxResults parameter, or if you explicitly specify a value + // for MaxResults that is less than the number of blueprints in the environment, + // the response includes a pagination token named NextToken. You can specify + // this NextToken value in a subsequent call to ListEnvironmentBlueprintsto + // list the next set of blueprints. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentBlueprintsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListEnvironmentBlueprintsOutput) SetItems(v []*EnvironmentBlueprintSummary) *ListEnvironmentBlueprintsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentBlueprintsOutput) SetNextToken(v string) *ListEnvironmentBlueprintsOutput { + s.NextToken = &v + return s +} + +type ListEnvironmentProfilesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Web Services account where you want to list + // environment profiles. + AwsAccountId *string `location:"querystring" locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region where you want to list environment profiles. + AwsAccountRegion *string `location:"querystring" locationName:"awsAccountRegion" type:"string"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the blueprint that was used to create the environment profiles + // that you want to list. + EnvironmentBlueprintIdentifier *string `location:"querystring" locationName:"environmentBlueprintIdentifier" type:"string"` + + // The maximum number of environment profiles to return in a single call to + // ListEnvironmentProfiles. When the number of environment profiles to be listed + // is greater than the value of MaxResults, the response contains a NextToken + // value that you can use in a subsequent call to ListEnvironmentProfiles to + // list the next set of environment profiles. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListEnvironmentProfilesInput's + // String and GoString methods. + Name *string `location:"querystring" locationName:"name" min:"1" type:"string" sensitive:"true"` + + // When the number of environment profiles is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of environment profiles, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListEnvironmentProfiles to list the next set of environment + // profiles. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the Amazon DataZone project. + ProjectIdentifier *string `location:"querystring" locationName:"projectIdentifier" 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 ListEnvironmentProfilesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentProfilesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentProfilesInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListEnvironmentProfilesInput) SetAwsAccountId(v string) *ListEnvironmentProfilesInput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *ListEnvironmentProfilesInput) SetAwsAccountRegion(v string) *ListEnvironmentProfilesInput { + s.AwsAccountRegion = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListEnvironmentProfilesInput) SetDomainIdentifier(v string) *ListEnvironmentProfilesInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentBlueprintIdentifier sets the EnvironmentBlueprintIdentifier field's value. +func (s *ListEnvironmentProfilesInput) SetEnvironmentBlueprintIdentifier(v string) *ListEnvironmentProfilesInput { + s.EnvironmentBlueprintIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentProfilesInput) SetMaxResults(v int64) *ListEnvironmentProfilesInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListEnvironmentProfilesInput) SetName(v string) *ListEnvironmentProfilesInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentProfilesInput) SetNextToken(v string) *ListEnvironmentProfilesInput { + s.NextToken = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *ListEnvironmentProfilesInput) SetProjectIdentifier(v string) *ListEnvironmentProfilesInput { + s.ProjectIdentifier = &v + return s +} + +type ListEnvironmentProfilesOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListEnvironmentProfiles action. + // + // Items is a required field + Items []*EnvironmentProfileSummary `locationName:"items" type:"list" required:"true"` + + // When the number of environment profiles is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of environment profiles, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListEnvironmentProfiles to list the next set of environment + // profiles. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentProfilesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentProfilesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListEnvironmentProfilesOutput) SetItems(v []*EnvironmentProfileSummary) *ListEnvironmentProfilesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentProfilesOutput) SetNextToken(v string) *ListEnvironmentProfilesOutput { + s.NextToken = &v + return s +} + +type ListEnvironmentsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Web Services account where you want to list + // environments. + AwsAccountId *string `location:"querystring" locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services region where you want to list environments. + AwsAccountRegion *string `location:"querystring" locationName:"awsAccountRegion" type:"string"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the Amazon DataZone blueprint. + EnvironmentBlueprintIdentifier *string `location:"querystring" locationName:"environmentBlueprintIdentifier" type:"string"` + + // The identifier of the environment profile. + EnvironmentProfileIdentifier *string `location:"querystring" locationName:"environmentProfileIdentifier" type:"string"` + + // The maximum number of environments to return in a single call to ListEnvironments. + // When the number of environments to be listed is greater than the value of + // MaxResults, the response contains a NextToken value that you can use in a + // subsequent call to ListEnvironments to list the next set of environments. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + Name *string `location:"querystring" locationName:"name" type:"string"` + + // When the number of environments is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of environments, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListEnvironments to list the next set of environments. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the Amazon DataZone project. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `location:"querystring" locationName:"projectIdentifier" type:"string" required:"true"` + + // The provider of the environment. + Provider *string `location:"querystring" locationName:"provider" type:"string"` + + // The status of the environments that you want to list. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"EnvironmentStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListEnvironmentsInput) SetAwsAccountId(v string) *ListEnvironmentsInput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *ListEnvironmentsInput) SetAwsAccountRegion(v string) *ListEnvironmentsInput { + s.AwsAccountRegion = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListEnvironmentsInput) SetDomainIdentifier(v string) *ListEnvironmentsInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentBlueprintIdentifier sets the EnvironmentBlueprintIdentifier field's value. +func (s *ListEnvironmentsInput) SetEnvironmentBlueprintIdentifier(v string) *ListEnvironmentsInput { + s.EnvironmentBlueprintIdentifier = &v + return s +} + +// SetEnvironmentProfileIdentifier sets the EnvironmentProfileIdentifier field's value. +func (s *ListEnvironmentsInput) SetEnvironmentProfileIdentifier(v string) *ListEnvironmentsInput { + s.EnvironmentProfileIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentsInput) SetMaxResults(v int64) *ListEnvironmentsInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListEnvironmentsInput) SetName(v string) *ListEnvironmentsInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsInput) SetNextToken(v string) *ListEnvironmentsInput { + s.NextToken = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *ListEnvironmentsInput) SetProjectIdentifier(v string) *ListEnvironmentsInput { + s.ProjectIdentifier = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *ListEnvironmentsInput) SetProvider(v string) *ListEnvironmentsInput { + s.Provider = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListEnvironmentsInput) SetStatus(v string) *ListEnvironmentsInput { + s.Status = &v + return s +} + +type ListEnvironmentsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListEnvironments action. + // + // Items is a required field + Items []*EnvironmentSummary `locationName:"items" type:"list" required:"true"` + + // When the number of environments is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of environments, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListEnvironments to list the next set of environments. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListEnvironmentsOutput) SetItems(v []*EnvironmentSummary) *ListEnvironmentsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsOutput) SetNextToken(v string) *ListEnvironmentsOutput { + s.NextToken = &v + return s +} + +type ListNotificationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The time after which you want to list notifications. + AfterTimestamp *time.Time `location:"querystring" locationName:"afterTimestamp" type:"timestamp"` + + // The time before which you want to list notifications. + BeforeTimestamp *time.Time `location:"querystring" locationName:"beforeTimestamp" type:"timestamp"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of notifications to return in a single call to ListNotifications. + // When the number of notifications to be listed is greater than the value of + // MaxResults, the response contains a NextToken value that you can use in a + // subsequent call to ListNotifications to list the next set of notifications. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of notifications is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of notifications, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListNotifications to list the next set of notifications. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The subjects of notifications. + Subjects []*string `location:"querystring" locationName:"subjects" type:"list"` + + // The task status of notifications. + TaskStatus *string `location:"querystring" locationName:"taskStatus" type:"string" enum:"TaskStatus"` + + // The type of notifications. + // + // Type is a required field + Type *string `location:"querystring" locationName:"type" type:"string" required:"true" enum:"NotificationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNotificationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNotificationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListNotificationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListNotificationsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterTimestamp sets the AfterTimestamp field's value. +func (s *ListNotificationsInput) SetAfterTimestamp(v time.Time) *ListNotificationsInput { + s.AfterTimestamp = &v + return s +} + +// SetBeforeTimestamp sets the BeforeTimestamp field's value. +func (s *ListNotificationsInput) SetBeforeTimestamp(v time.Time) *ListNotificationsInput { + s.BeforeTimestamp = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListNotificationsInput) SetDomainIdentifier(v string) *ListNotificationsInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListNotificationsInput) SetMaxResults(v int64) *ListNotificationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListNotificationsInput) SetNextToken(v string) *ListNotificationsInput { + s.NextToken = &v + return s +} + +// SetSubjects sets the Subjects field's value. +func (s *ListNotificationsInput) SetSubjects(v []*string) *ListNotificationsInput { + s.Subjects = v + return s +} + +// SetTaskStatus sets the TaskStatus field's value. +func (s *ListNotificationsInput) SetTaskStatus(v string) *ListNotificationsInput { + s.TaskStatus = &v + return s +} + +// SetType sets the Type field's value. +func (s *ListNotificationsInput) SetType(v string) *ListNotificationsInput { + s.Type = &v + return s +} + +type ListNotificationsOutput struct { + _ struct{} `type:"structure"` + + // When the number of notifications is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of notifications, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListNotifications to list the next set of notifications. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The results of the ListNotifications action. + Notifications []*NotificationOutput_ `locationName:"notifications" 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 ListNotificationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNotificationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListNotificationsOutput) SetNextToken(v string) *ListNotificationsOutput { + s.NextToken = &v + return s +} + +// SetNotifications sets the Notifications field's value. +func (s *ListNotificationsOutput) SetNotifications(v []*NotificationOutput_) *ListNotificationsOutput { + s.Notifications = v + return s +} + +type ListProjectMembershipsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain in which you want to list project + // memberships. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of memberships to return in a single call to ListProjectMemberships. + // When the number of memberships to be listed is greater than the value of + // MaxResults, the response contains a NextToken value that you can use in a + // subsequent call to ListProjectMemberships to list the next set of memberships. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of memberships is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of memberships, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListProjectMemberships to list the next set of memberships. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the project whose memberships you want to list. + // + // ProjectIdentifier is a required field + ProjectIdentifier *string `location:"uri" locationName:"projectIdentifier" type:"string" required:"true"` + + // The method by which you want to sort the project memberships. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortFieldProject"` + + // The sort order of the project memberships. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectMembershipsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectMembershipsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProjectMembershipsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProjectMembershipsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ProjectIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectIdentifier")) + } + if s.ProjectIdentifier != nil && len(*s.ProjectIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProjectIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListProjectMembershipsInput) SetDomainIdentifier(v string) *ListProjectMembershipsInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProjectMembershipsInput) SetMaxResults(v int64) *ListProjectMembershipsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProjectMembershipsInput) SetNextToken(v string) *ListProjectMembershipsInput { + s.NextToken = &v + return s +} + +// SetProjectIdentifier sets the ProjectIdentifier field's value. +func (s *ListProjectMembershipsInput) SetProjectIdentifier(v string) *ListProjectMembershipsInput { + s.ProjectIdentifier = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListProjectMembershipsInput) SetSortBy(v string) *ListProjectMembershipsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListProjectMembershipsInput) SetSortOrder(v string) *ListProjectMembershipsInput { + s.SortOrder = &v + return s +} + +type ListProjectMembershipsOutput struct { + _ struct{} `type:"structure"` + + // The members of the project. + // + // Members is a required field + Members []*ProjectMember `locationName:"members" type:"list" required:"true"` + + // When the number of memberships is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of memberships, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListProjectMemberships to list the next set of memberships. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectMembershipsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectMembershipsOutput) GoString() string { + return s.String() +} + +// SetMembers sets the Members field's value. +func (s *ListProjectMembershipsOutput) SetMembers(v []*ProjectMember) *ListProjectMembershipsOutput { + s.Members = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProjectMembershipsOutput) SetNextToken(v string) *ListProjectMembershipsOutput { + s.NextToken = &v + return s +} + +type ListProjectsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of a group. + GroupIdentifier *string `location:"querystring" locationName:"groupIdentifier" type:"string"` + + // The maximum number of projects to return in a single call to ListProjects. + // When the number of projects to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to ListProjects to list the next set of projects. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListProjectsInput's + // String and GoString methods. + Name *string `location:"querystring" locationName:"name" min:"1" type:"string" sensitive:"true"` + + // When the number of projects is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of projects, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListProjects + // to list the next set of projects. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the Amazon DataZone user. + UserIdentifier *string `location:"querystring" locationName:"userIdentifier" 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 ListProjectsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProjectsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProjectsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListProjectsInput) SetDomainIdentifier(v string) *ListProjectsInput { + s.DomainIdentifier = &v + return s +} + +// SetGroupIdentifier sets the GroupIdentifier field's value. +func (s *ListProjectsInput) SetGroupIdentifier(v string) *ListProjectsInput { + s.GroupIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProjectsInput) SetMaxResults(v int64) *ListProjectsInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListProjectsInput) SetName(v string) *ListProjectsInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProjectsInput) SetNextToken(v string) *ListProjectsInput { + s.NextToken = &v + return s +} + +// SetUserIdentifier sets the UserIdentifier field's value. +func (s *ListProjectsInput) SetUserIdentifier(v string) *ListProjectsInput { + s.UserIdentifier = &v + return s +} + +type ListProjectsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListProjects action. + Items []*ProjectSummary `locationName:"items" type:"list"` + + // When the number of projects is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of projects, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to ListProjects + // to list the next set of projects. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProjectsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListProjectsOutput) SetItems(v []*ProjectSummary) *ListProjectsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProjectsOutput) SetNextToken(v string) *ListProjectsOutput { + s.NextToken = &v + return s +} + +type ListSubscriptionGrantsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the Amazon DataZone environment. + EnvironmentId *string `location:"querystring" locationName:"environmentId" type:"string"` + + // The maximum number of subscription grants to return in a single call to ListSubscriptionGrants. + // When the number of subscription grants to be listed is greater than the value + // of MaxResults, the response contains a NextToken value that you can use in + // a subsequent call to ListSubscriptionGrants to list the next set of subscription + // grants. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of subscription grants is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscription grants, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListSubscriptionGrants to list the next set of subscription + // grants. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // Specifies the way of sorting the results of this action. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortKey"` + + // Specifies the sort order of this action. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` + + // The identifier of the subscribed listing. + SubscribedListingId *string `location:"querystring" locationName:"subscribedListingId" type:"string"` + + // The identifier of the subscription. + SubscriptionId *string `location:"querystring" locationName:"subscriptionId" type:"string"` + + // The identifier of the subscription target. + SubscriptionTargetId *string `location:"querystring" locationName:"subscriptionTargetId" 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 ListSubscriptionGrantsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionGrantsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSubscriptionGrantsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSubscriptionGrantsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListSubscriptionGrantsInput) SetDomainIdentifier(v string) *ListSubscriptionGrantsInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *ListSubscriptionGrantsInput) SetEnvironmentId(v string) *ListSubscriptionGrantsInput { + s.EnvironmentId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSubscriptionGrantsInput) SetMaxResults(v int64) *ListSubscriptionGrantsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionGrantsInput) SetNextToken(v string) *ListSubscriptionGrantsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListSubscriptionGrantsInput) SetSortBy(v string) *ListSubscriptionGrantsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListSubscriptionGrantsInput) SetSortOrder(v string) *ListSubscriptionGrantsInput { + s.SortOrder = &v + return s +} + +// SetSubscribedListingId sets the SubscribedListingId field's value. +func (s *ListSubscriptionGrantsInput) SetSubscribedListingId(v string) *ListSubscriptionGrantsInput { + s.SubscribedListingId = &v + return s +} + +// SetSubscriptionId sets the SubscriptionId field's value. +func (s *ListSubscriptionGrantsInput) SetSubscriptionId(v string) *ListSubscriptionGrantsInput { + s.SubscriptionId = &v + return s +} + +// SetSubscriptionTargetId sets the SubscriptionTargetId field's value. +func (s *ListSubscriptionGrantsInput) SetSubscriptionTargetId(v string) *ListSubscriptionGrantsInput { + s.SubscriptionTargetId = &v + return s +} + +type ListSubscriptionGrantsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListSubscriptionGrants action. + // + // Items is a required field + Items []*SubscriptionGrantSummary `locationName:"items" type:"list" required:"true"` + + // When the number of subscription grants is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscription grants, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListSubscriptionGrants to list the next set of subscription + // grants. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionGrantsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionGrantsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListSubscriptionGrantsOutput) SetItems(v []*SubscriptionGrantSummary) *ListSubscriptionGrantsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionGrantsOutput) SetNextToken(v string) *ListSubscriptionGrantsOutput { + s.NextToken = &v + return s +} + +type ListSubscriptionRequestsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the subscription request approver's project. + ApproverProjectId *string `location:"querystring" locationName:"approverProjectId" type:"string"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of subscription requests to return in a single call to + // ListSubscriptionRequests. When the number of subscription requests to be + // listed is greater than the value of MaxResults, the response contains a NextToken + // value that you can use in a subsequent call to ListSubscriptionRequests to + // list the next set of subscription requests. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of subscription requests is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscription requests, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListSubscriptionRequests to list the next set of + // subscription requests. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the project for the subscription requests. + OwningProjectId *string `location:"querystring" locationName:"owningProjectId" type:"string"` + + // Specifies the way to sort the results of this action. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortKey"` + + // Specifies the sort order for the results of this action. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` + + // Specifies the status of the subscription requests. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"SubscriptionRequestStatus"` + + // The identifier of the subscribed listing. + SubscribedListingId *string `location:"querystring" locationName:"subscribedListingId" 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 ListSubscriptionRequestsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionRequestsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSubscriptionRequestsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSubscriptionRequestsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApproverProjectId sets the ApproverProjectId field's value. +func (s *ListSubscriptionRequestsInput) SetApproverProjectId(v string) *ListSubscriptionRequestsInput { + s.ApproverProjectId = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListSubscriptionRequestsInput) SetDomainIdentifier(v string) *ListSubscriptionRequestsInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSubscriptionRequestsInput) SetMaxResults(v int64) *ListSubscriptionRequestsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionRequestsInput) SetNextToken(v string) *ListSubscriptionRequestsInput { + s.NextToken = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *ListSubscriptionRequestsInput) SetOwningProjectId(v string) *ListSubscriptionRequestsInput { + s.OwningProjectId = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListSubscriptionRequestsInput) SetSortBy(v string) *ListSubscriptionRequestsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListSubscriptionRequestsInput) SetSortOrder(v string) *ListSubscriptionRequestsInput { + s.SortOrder = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListSubscriptionRequestsInput) SetStatus(v string) *ListSubscriptionRequestsInput { + s.Status = &v + return s +} + +// SetSubscribedListingId sets the SubscribedListingId field's value. +func (s *ListSubscriptionRequestsInput) SetSubscribedListingId(v string) *ListSubscriptionRequestsInput { + s.SubscribedListingId = &v + return s +} + +type ListSubscriptionRequestsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListSubscriptionRequests action. + // + // Items is a required field + Items []*SubscriptionRequestSummary `locationName:"items" type:"list" required:"true"` + + // When the number of subscription requests is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscription requests, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListSubscriptionRequests to list the next set of + // subscription requests. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionRequestsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionRequestsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListSubscriptionRequestsOutput) SetItems(v []*SubscriptionRequestSummary) *ListSubscriptionRequestsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionRequestsOutput) SetNextToken(v string) *ListSubscriptionRequestsOutput { + s.NextToken = &v + return s +} + +type ListSubscriptionTargetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon DataZone domain where you want to list subscription + // targets. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the environment where you want to list subscription targets. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `location:"uri" locationName:"environmentIdentifier" type:"string" required:"true"` + + // The maximum number of subscription targets to return in a single call to + // ListSubscriptionTargets. When the number of subscription targets to be listed + // is greater than the value of MaxResults, the response contains a NextToken + // value that you can use in a subsequent call to ListSubscriptionTargets to + // list the next set of subscription targets. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of subscription targets is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscription targets, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListSubscriptionTargets to list the next set of subscription + // targets. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // Specifies the way in which the results of this action are to be sorted. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortKey"` + + // Specifies the sort order for the results of this action. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionTargetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionTargetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSubscriptionTargetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSubscriptionTargetsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.EnvironmentIdentifier != nil && len(*s.EnvironmentIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListSubscriptionTargetsInput) SetDomainIdentifier(v string) *ListSubscriptionTargetsInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *ListSubscriptionTargetsInput) SetEnvironmentIdentifier(v string) *ListSubscriptionTargetsInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSubscriptionTargetsInput) SetMaxResults(v int64) *ListSubscriptionTargetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionTargetsInput) SetNextToken(v string) *ListSubscriptionTargetsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListSubscriptionTargetsInput) SetSortBy(v string) *ListSubscriptionTargetsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListSubscriptionTargetsInput) SetSortOrder(v string) *ListSubscriptionTargetsInput { + s.SortOrder = &v + return s +} + +type ListSubscriptionTargetsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListSubscriptionTargets action. + // + // Items is a required field + Items []*SubscriptionTargetSummary `locationName:"items" type:"list" required:"true"` + + // When the number of subscription targets is greater than the default value + // for the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscription targets, the response includes + // a pagination token named NextToken. You can specify this NextToken value + // in a subsequent call to ListSubscriptionTargets to list the next set of subscription + // targets. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionTargetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionTargetsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListSubscriptionTargetsOutput) SetItems(v []*SubscriptionTargetSummary) *ListSubscriptionTargetsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionTargetsOutput) SetNextToken(v string) *ListSubscriptionTargetsOutput { + s.NextToken = &v + return s +} + +type ListSubscriptionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the project for the subscription's approver. + ApproverProjectId *string `location:"querystring" locationName:"approverProjectId" type:"string"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of subscriptions to return in a single call to ListSubscriptions. + // When the number of subscriptions to be listed is greater than the value of + // MaxResults, the response contains a NextToken value that you can use in a + // subsequent call to ListSubscriptions to list the next set of Subscriptions. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // When the number of subscriptions is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscriptions, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListSubscriptions to list the next set of subscriptions. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the owning project. + OwningProjectId *string `location:"querystring" locationName:"owningProjectId" type:"string"` + + // Specifies the way in which the results of this action are to be sorted. + SortBy *string `location:"querystring" locationName:"sortBy" type:"string" enum:"SortKey"` + + // Specifies the sort order for the results of this action. + SortOrder *string `location:"querystring" locationName:"sortOrder" type:"string" enum:"SortOrder"` + + // The status of the subscriptions that you want to list. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"SubscriptionStatus"` + + // The identifier of the subscribed listing for the subscriptions that you want + // to list. + SubscribedListingId *string `location:"querystring" locationName:"subscribedListingId" type:"string"` + + // The identifier of the subscription request for the subscriptions that you + // want to list. + SubscriptionRequestIdentifier *string `location:"querystring" locationName:"subscriptionRequestIdentifier" 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 ListSubscriptionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSubscriptionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSubscriptionsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApproverProjectId sets the ApproverProjectId field's value. +func (s *ListSubscriptionsInput) SetApproverProjectId(v string) *ListSubscriptionsInput { + s.ApproverProjectId = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *ListSubscriptionsInput) SetDomainIdentifier(v string) *ListSubscriptionsInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSubscriptionsInput) SetMaxResults(v int64) *ListSubscriptionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionsInput) SetNextToken(v string) *ListSubscriptionsInput { + s.NextToken = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *ListSubscriptionsInput) SetOwningProjectId(v string) *ListSubscriptionsInput { + s.OwningProjectId = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListSubscriptionsInput) SetSortBy(v string) *ListSubscriptionsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListSubscriptionsInput) SetSortOrder(v string) *ListSubscriptionsInput { + s.SortOrder = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListSubscriptionsInput) SetStatus(v string) *ListSubscriptionsInput { + s.Status = &v + return s +} + +// SetSubscribedListingId sets the SubscribedListingId field's value. +func (s *ListSubscriptionsInput) SetSubscribedListingId(v string) *ListSubscriptionsInput { + s.SubscribedListingId = &v + return s +} + +// SetSubscriptionRequestIdentifier sets the SubscriptionRequestIdentifier field's value. +func (s *ListSubscriptionsInput) SetSubscriptionRequestIdentifier(v string) *ListSubscriptionsInput { + s.SubscriptionRequestIdentifier = &v + return s +} + +type ListSubscriptionsOutput struct { + _ struct{} `type:"structure"` + + // The results of the ListSubscriptions action. + // + // Items is a required field + Items []*SubscriptionSummary `locationName:"items" type:"list" required:"true"` + + // When the number of subscriptions is greater than the default value for the + // MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of subscriptions, the response includes a pagination + // token named NextToken. You can specify this NextToken value in a subsequent + // call to ListSubscriptions to list the next set of subscriptions. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSubscriptionsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListSubscriptionsOutput) SetItems(v []*SubscriptionSummary) *ListSubscriptionsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSubscriptionsOutput) SetNextToken(v string) *ListSubscriptionsOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource whose tags you want to list. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" 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 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"` + + // The tags of the specified resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// The details of a listing (aka asset published in a Amazon DataZone catalog). +type ListingItem struct { + _ struct{} `type:"structure"` + + // An asset published in an Amazon DataZone catalog. + AssetListing *AssetListing `locationName:"assetListing" 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 ListingItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListingItem) GoString() string { + return s.String() +} + +// SetAssetListing sets the AssetListing field's value. +func (s *ListingItem) SetAssetListing(v *AssetListing) *ListingItem { + s.AssetListing = v + return s +} + +// A revision of an asset published in a Amazon DataZone catalog. +type ListingRevision struct { + _ struct{} `type:"structure"` + + // An identifier of a revision of an asset published in a Amazon DataZone catalog. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The details of a revision of an asset published in a Amazon DataZone catalog. + // + // Revision is a required field + Revision *string `locationName:"revision" 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 ListingRevision) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListingRevision) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *ListingRevision) SetId(v string) *ListingRevision { + s.Id = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *ListingRevision) SetRevision(v string) *ListingRevision { + s.Revision = &v + return s +} + +// A revision to be made to an asset published in a Amazon DataZone catalog. +type ListingRevisionInput_ struct { + _ struct{} `type:"structure"` + + // An identifier of revision to be made to an asset published in a Amazon DataZone + // catalog. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" type:"string" required:"true"` + + // The details of a revision to be made to an asset published in a Amazon DataZone + // catalog. + // + // Revision is a required field + Revision *string `locationName:"revision" 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 ListingRevisionInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListingRevisionInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListingRevisionInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListingRevisionInput_"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Revision == nil { + invalidParams.Add(request.NewErrParamRequired("Revision")) + } + if s.Revision != nil && len(*s.Revision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *ListingRevisionInput_) SetIdentifier(v string) *ListingRevisionInput_ { + s.Identifier = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *ListingRevisionInput_) SetRevision(v string) *ListingRevisionInput_ { + s.Revision = &v + return s +} + +// The details about a project member. +type Member struct { + _ struct{} `type:"structure"` + + // The ID of the group of a project member. + GroupIdentifier *string `locationName:"groupIdentifier" type:"string"` + + // The user ID of a project member. + UserIdentifier *string `locationName:"userIdentifier" 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 Member) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Member) GoString() string { + return s.String() +} + +// SetGroupIdentifier sets the GroupIdentifier field's value. +func (s *Member) SetGroupIdentifier(v string) *Member { + s.GroupIdentifier = &v + return s +} + +// SetUserIdentifier sets the UserIdentifier field's value. +func (s *Member) SetUserIdentifier(v string) *Member { + s.UserIdentifier = &v + return s +} + +// The details about a project member. +type MemberDetails struct { + _ struct{} `type:"structure"` + + // The group details of a project member. + Group *GroupDetails `locationName:"group" type:"structure"` + + // The user details of a project member. + User *UserDetails `locationName:"user" 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 MemberDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemberDetails) GoString() string { + return s.String() +} + +// SetGroup sets the Group field's value. +func (s *MemberDetails) SetGroup(v *GroupDetails) *MemberDetails { + s.Group = v + return s +} + +// SetUser sets the User field's value. +func (s *MemberDetails) SetUser(v *UserDetails) *MemberDetails { + s.User = v + return s +} + +type Model struct { + _ struct{} `type:"structure" sensitive:"true"` + + Smithy *string `locationName:"smithy" 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 Model) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Model) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Model) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Model"} + if s.Smithy != nil && len(*s.Smithy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Smithy", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSmithy sets the Smithy field's value. +func (s *Model) SetSmithy(v string) *Model { + s.Smithy = &v + return s +} + +// The details of a notification generated in Amazon DataZone. +type NotificationOutput_ struct { + _ struct{} `type:"structure"` + + // The action link included in the notification. + // + // ActionLink is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by NotificationOutput_'s + // String and GoString methods. + // + // ActionLink is a required field + ActionLink *string `locationName:"actionLink" type:"string" required:"true" sensitive:"true"` + + // The timestamp of when a notification was created. + // + // CreationTimestamp is a required field + CreationTimestamp *time.Time `locationName:"creationTimestamp" type:"timestamp" required:"true"` + + // The identifier of a Amazon DataZone domain in which the notification exists. + // + // DomainIdentifier is a required field + DomainIdentifier *string `locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the notification. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" type:"string" required:"true"` + + // The timestamp of when the notification was last updated. + // + // LastUpdatedTimestamp is a required field + LastUpdatedTimestamp *time.Time `locationName:"lastUpdatedTimestamp" type:"timestamp" required:"true"` + + // The message included in the notification. + // + // Message is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by NotificationOutput_'s + // String and GoString methods. + // + // Message is a required field + Message *string `locationName:"message" type:"string" required:"true" sensitive:"true"` + + // The metadata included in the notification. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The status included in the notification. + Status *string `locationName:"status" type:"string" enum:"TaskStatus"` + + // The title of the notification. + // + // Title is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by NotificationOutput_'s + // String and GoString methods. + // + // Title is a required field + Title *string `locationName:"title" type:"string" required:"true" sensitive:"true"` + + // The topic of the notification. + // + // Topic is a required field + Topic *Topic `locationName:"topic" type:"structure" required:"true"` + + // The type of the notification. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"NotificationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotificationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotificationOutput_) GoString() string { + return s.String() +} + +// SetActionLink sets the ActionLink field's value. +func (s *NotificationOutput_) SetActionLink(v string) *NotificationOutput_ { + s.ActionLink = &v + return s +} + +// SetCreationTimestamp sets the CreationTimestamp field's value. +func (s *NotificationOutput_) SetCreationTimestamp(v time.Time) *NotificationOutput_ { + s.CreationTimestamp = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *NotificationOutput_) SetDomainIdentifier(v string) *NotificationOutput_ { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *NotificationOutput_) SetIdentifier(v string) *NotificationOutput_ { + s.Identifier = &v + return s +} + +// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value. +func (s *NotificationOutput_) SetLastUpdatedTimestamp(v time.Time) *NotificationOutput_ { + s.LastUpdatedTimestamp = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *NotificationOutput_) SetMessage(v string) *NotificationOutput_ { + s.Message = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *NotificationOutput_) SetMetadata(v map[string]*string) *NotificationOutput_ { + s.Metadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *NotificationOutput_) SetStatus(v string) *NotificationOutput_ { + s.Status = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *NotificationOutput_) SetTitle(v string) *NotificationOutput_ { + s.Title = &v + return s +} + +// SetTopic sets the Topic field's value. +func (s *NotificationOutput_) SetTopic(v *Topic) *NotificationOutput_ { + s.Topic = v + return s +} + +// SetType sets the Type field's value. +func (s *NotificationOutput_) SetType(v string) *NotificationOutput_ { + s.Type = &v + return s +} + +// The details of the resource mentioned in a notification. +type NotificationResource struct { + _ struct{} `type:"structure"` + + // The ID of the resource mentioned in a notification. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of the resource mentioned in a notification. + Name *string `locationName:"name" type:"string"` + + // The type of the resource mentioned in a notification. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"NotificationResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotificationResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotificationResource) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *NotificationResource) SetId(v string) *NotificationResource { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *NotificationResource) SetName(v string) *NotificationResource { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *NotificationResource) SetType(v string) *NotificationResource { + s.Type = &v + return s +} + +// The configuration of the prediction. +type PredictionConfiguration struct { + _ struct{} `type:"structure"` + + // The business name generation mechanism. + BusinessNameGeneration *BusinessNameGenerationConfiguration `locationName:"businessNameGeneration" 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 PredictionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PredictionConfiguration) GoString() string { + return s.String() +} + +// SetBusinessNameGeneration sets the BusinessNameGeneration field's value. +func (s *PredictionConfiguration) SetBusinessNameGeneration(v *BusinessNameGenerationConfiguration) *PredictionConfiguration { + s.BusinessNameGeneration = v + return s +} + +// The details of a project member. +type ProjectMember struct { + _ struct{} `type:"structure"` + + // The designated role of a project member. + // + // Designation is a required field + Designation *string `locationName:"designation" type:"string" required:"true" enum:"UserDesignation"` + + // The membership details of a project member. + // + // MemberDetails is a required field + MemberDetails *MemberDetails `locationName:"memberDetails" 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 ProjectMember) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProjectMember) GoString() string { + return s.String() +} + +// SetDesignation sets the Designation field's value. +func (s *ProjectMember) SetDesignation(v string) *ProjectMember { + s.Designation = &v + return s +} + +// SetMemberDetails sets the MemberDetails field's value. +func (s *ProjectMember) SetMemberDetails(v *MemberDetails) *ProjectMember { + s.MemberDetails = v + return s +} + +// The details of a Amazon DataZone project. +type ProjectSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when a project was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the project. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of a project. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ProjectSummary's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of a Amazon DataZone domain where the project exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of a project. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name of a project. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ProjectSummary's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The timestamp of when the project was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProjectSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProjectSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ProjectSummary) SetCreatedAt(v time.Time) *ProjectSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *ProjectSummary) SetCreatedBy(v string) *ProjectSummary { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ProjectSummary) SetDescription(v string) *ProjectSummary { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *ProjectSummary) SetDomainId(v string) *ProjectSummary { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *ProjectSummary) SetId(v string) *ProjectSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *ProjectSummary) SetName(v string) *ProjectSummary { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ProjectSummary) SetUpdatedAt(v time.Time) *ProjectSummary { + s.UpdatedAt = &v + return s +} + +// The provisioning properties of an environment blueprint. +type ProvisioningProperties struct { + _ struct{} `type:"structure"` + + // The cloud formation properties included as part of the provisioning properties + // of an environment blueprint. + CloudFormation *CloudFormationProperties `locationName:"cloudFormation" 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 ProvisioningProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProvisioningProperties) GoString() string { + return s.String() +} + +// SetCloudFormation sets the CloudFormation field's value. +func (s *ProvisioningProperties) SetCloudFormation(v *CloudFormationProperties) *ProvisioningProperties { + s.CloudFormation = v + return s +} + +type PutEnvironmentBlueprintConfigurationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Specifies the enabled Amazon Web Services Regions. + // + // EnabledRegions is a required field + EnabledRegions []*string `locationName:"enabledRegions" type:"list" required:"true"` + + // The identifier of the environment blueprint. + // + // EnvironmentBlueprintIdentifier is a required field + EnvironmentBlueprintIdentifier *string `location:"uri" locationName:"environmentBlueprintIdentifier" type:"string" required:"true"` + + // The ARN of the manage access role. + ManageAccessRoleArn *string `locationName:"manageAccessRoleArn" type:"string"` + + // The ARN of the provisioning role. + ProvisioningRoleArn *string `locationName:"provisioningRoleArn" type:"string"` + + // The regional parameters in the environment blueprint. + RegionalParameters map[string]map[string]*string `locationName:"regionalParameters" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutEnvironmentBlueprintConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutEnvironmentBlueprintConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutEnvironmentBlueprintConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutEnvironmentBlueprintConfigurationInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnabledRegions == nil { + invalidParams.Add(request.NewErrParamRequired("EnabledRegions")) + } + if s.EnvironmentBlueprintIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentBlueprintIdentifier")) + } + if s.EnvironmentBlueprintIdentifier != nil && len(*s.EnvironmentBlueprintIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentBlueprintIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *PutEnvironmentBlueprintConfigurationInput) SetDomainIdentifier(v string) *PutEnvironmentBlueprintConfigurationInput { + s.DomainIdentifier = &v + return s +} + +// SetEnabledRegions sets the EnabledRegions field's value. +func (s *PutEnvironmentBlueprintConfigurationInput) SetEnabledRegions(v []*string) *PutEnvironmentBlueprintConfigurationInput { + s.EnabledRegions = v + return s +} + +// SetEnvironmentBlueprintIdentifier sets the EnvironmentBlueprintIdentifier field's value. +func (s *PutEnvironmentBlueprintConfigurationInput) SetEnvironmentBlueprintIdentifier(v string) *PutEnvironmentBlueprintConfigurationInput { + s.EnvironmentBlueprintIdentifier = &v + return s +} + +// SetManageAccessRoleArn sets the ManageAccessRoleArn field's value. +func (s *PutEnvironmentBlueprintConfigurationInput) SetManageAccessRoleArn(v string) *PutEnvironmentBlueprintConfigurationInput { + s.ManageAccessRoleArn = &v + return s +} + +// SetProvisioningRoleArn sets the ProvisioningRoleArn field's value. +func (s *PutEnvironmentBlueprintConfigurationInput) SetProvisioningRoleArn(v string) *PutEnvironmentBlueprintConfigurationInput { + s.ProvisioningRoleArn = &v + return s +} + +// SetRegionalParameters sets the RegionalParameters field's value. +func (s *PutEnvironmentBlueprintConfigurationInput) SetRegionalParameters(v map[string]map[string]*string) *PutEnvironmentBlueprintConfigurationInput { + s.RegionalParameters = v + return s +} + +type PutEnvironmentBlueprintConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the environment blueprint was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The identifier of the Amazon DataZone domain. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Specifies the enabled Amazon Web Services Regions. + EnabledRegions []*string `locationName:"enabledRegions" type:"list"` + + // The identifier of the environment blueprint. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The ARN of the manage access role. + ManageAccessRoleArn *string `locationName:"manageAccessRoleArn" type:"string"` + + // The ARN of the provisioning role. + ProvisioningRoleArn *string `locationName:"provisioningRoleArn" type:"string"` + + // The regional parameters in the environment blueprint. + RegionalParameters map[string]map[string]*string `locationName:"regionalParameters" type:"map"` + + // The timestamp of when the environment blueprint was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutEnvironmentBlueprintConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutEnvironmentBlueprintConfigurationOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetCreatedAt(v time.Time) *PutEnvironmentBlueprintConfigurationOutput { + s.CreatedAt = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetDomainId(v string) *PutEnvironmentBlueprintConfigurationOutput { + s.DomainId = &v + return s +} + +// SetEnabledRegions sets the EnabledRegions field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetEnabledRegions(v []*string) *PutEnvironmentBlueprintConfigurationOutput { + s.EnabledRegions = v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetEnvironmentBlueprintId(v string) *PutEnvironmentBlueprintConfigurationOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetManageAccessRoleArn sets the ManageAccessRoleArn field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetManageAccessRoleArn(v string) *PutEnvironmentBlueprintConfigurationOutput { + s.ManageAccessRoleArn = &v + return s +} + +// SetProvisioningRoleArn sets the ProvisioningRoleArn field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetProvisioningRoleArn(v string) *PutEnvironmentBlueprintConfigurationOutput { + s.ProvisioningRoleArn = &v + return s +} + +// SetRegionalParameters sets the RegionalParameters field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetRegionalParameters(v map[string]map[string]*string) *PutEnvironmentBlueprintConfigurationOutput { + s.RegionalParameters = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *PutEnvironmentBlueprintConfigurationOutput) SetUpdatedAt(v time.Time) *PutEnvironmentBlueprintConfigurationOutput { + s.UpdatedAt = &v + return s +} + +// The recommendation to be updated as part of the UpdateDataSource action. +type RecommendationConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies whether automatic business name generation is to be enabled or + // not as part of the recommendation configuration. + EnableBusinessNameGeneration *bool `locationName:"enableBusinessNameGeneration" 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 RecommendationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationConfiguration) GoString() string { + return s.String() +} + +// SetEnableBusinessNameGeneration sets the EnableBusinessNameGeneration field's value. +func (s *RecommendationConfiguration) SetEnableBusinessNameGeneration(v bool) *RecommendationConfiguration { + s.EnableBusinessNameGeneration = &v + return s +} + +// The details of the Amazon Redshift cluster storage. +type RedshiftClusterStorage struct { + _ struct{} `type:"structure"` + + // The name of an Amazon Redshift cluster. + // + // ClusterName is a required field + ClusterName *string `locationName:"clusterName" 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 RedshiftClusterStorage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftClusterStorage) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftClusterStorage) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftClusterStorage"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *RedshiftClusterStorage) SetClusterName(v string) *RedshiftClusterStorage { + s.ClusterName = &v + return s +} + +// The details of the credentials required to access an Amazon Redshift cluster. +type RedshiftCredentialConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of a secret manager for an Amazon Redshift cluster. + // + // SecretManagerArn is a required field + SecretManagerArn *string `locationName:"secretManagerArn" 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 RedshiftCredentialConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftCredentialConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftCredentialConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftCredentialConfiguration"} + if s.SecretManagerArn == nil { + invalidParams.Add(request.NewErrParamRequired("SecretManagerArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecretManagerArn sets the SecretManagerArn field's value. +func (s *RedshiftCredentialConfiguration) SetSecretManagerArn(v string) *RedshiftCredentialConfiguration { + s.SecretManagerArn = &v + return s +} + +// The configuration details of the Amazon Redshift data source. +type RedshiftRunConfigurationInput_ struct { + _ struct{} `type:"structure"` + + // The data access role included in the configuration details of the Amazon + // Redshift data source. + DataAccessRole *string `locationName:"dataAccessRole" type:"string"` + + // The details of the credentials required to access an Amazon Redshift cluster. + // + // RedshiftCredentialConfiguration is a required field + RedshiftCredentialConfiguration *RedshiftCredentialConfiguration `locationName:"redshiftCredentialConfiguration" type:"structure" required:"true"` + + // The details of the Amazon Redshift storage as part of the configuration of + // an Amazon Redshift data source run. + // + // RedshiftStorage is a required field + RedshiftStorage *RedshiftStorage `locationName:"redshiftStorage" type:"structure" required:"true"` + + // The relational filger configurations included in the configuration details + // of the Amazon Redshift data source. + // + // RelationalFilterConfigurations is a required field + RelationalFilterConfigurations []*RelationalFilterConfiguration `locationName:"relationalFilterConfigurations" 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 RedshiftRunConfigurationInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftRunConfigurationInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftRunConfigurationInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftRunConfigurationInput_"} + if s.RedshiftCredentialConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("RedshiftCredentialConfiguration")) + } + if s.RedshiftStorage == nil { + invalidParams.Add(request.NewErrParamRequired("RedshiftStorage")) + } + if s.RelationalFilterConfigurations == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalFilterConfigurations")) + } + if s.RedshiftCredentialConfiguration != nil { + if err := s.RedshiftCredentialConfiguration.Validate(); err != nil { + invalidParams.AddNested("RedshiftCredentialConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RedshiftStorage != nil { + if err := s.RedshiftStorage.Validate(); err != nil { + invalidParams.AddNested("RedshiftStorage", err.(request.ErrInvalidParams)) + } + } + if s.RelationalFilterConfigurations != nil { + for i, v := range s.RelationalFilterConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RelationalFilterConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataAccessRole sets the DataAccessRole field's value. +func (s *RedshiftRunConfigurationInput_) SetDataAccessRole(v string) *RedshiftRunConfigurationInput_ { + s.DataAccessRole = &v + return s +} + +// SetRedshiftCredentialConfiguration sets the RedshiftCredentialConfiguration field's value. +func (s *RedshiftRunConfigurationInput_) SetRedshiftCredentialConfiguration(v *RedshiftCredentialConfiguration) *RedshiftRunConfigurationInput_ { + s.RedshiftCredentialConfiguration = v + return s +} + +// SetRedshiftStorage sets the RedshiftStorage field's value. +func (s *RedshiftRunConfigurationInput_) SetRedshiftStorage(v *RedshiftStorage) *RedshiftRunConfigurationInput_ { + s.RedshiftStorage = v + return s +} + +// SetRelationalFilterConfigurations sets the RelationalFilterConfigurations field's value. +func (s *RedshiftRunConfigurationInput_) SetRelationalFilterConfigurations(v []*RelationalFilterConfiguration) *RedshiftRunConfigurationInput_ { + s.RelationalFilterConfigurations = v + return s +} + +// The configuration details of the Amazon Redshift data source. +type RedshiftRunConfigurationOutput_ struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon Web Services account included in the configuration details + // of the Amazon Redshift data source. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The data access role included in the configuration details of the Amazon + // Redshift data source. + DataAccessRole *string `locationName:"dataAccessRole" type:"string"` + + // The details of the credentials required to access an Amazon Redshift cluster. + // + // RedshiftCredentialConfiguration is a required field + RedshiftCredentialConfiguration *RedshiftCredentialConfiguration `locationName:"redshiftCredentialConfiguration" type:"structure" required:"true"` + + // The details of the Amazon Redshift storage as part of the configuration of + // an Amazon Redshift data source run. + // + // RedshiftStorage is a required field + RedshiftStorage *RedshiftStorage `locationName:"redshiftStorage" type:"structure" required:"true"` + + // The Amazon Web Services region included in the configuration details of the + // Amazon Redshift data source. + Region *string `locationName:"region" min:"4" type:"string"` + + // The relational filger configurations included in the configuration details + // of the Amazon Redshift data source. + // + // RelationalFilterConfigurations is a required field + RelationalFilterConfigurations []*RelationalFilterConfiguration `locationName:"relationalFilterConfigurations" 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 RedshiftRunConfigurationOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftRunConfigurationOutput_) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *RedshiftRunConfigurationOutput_) SetAccountId(v string) *RedshiftRunConfigurationOutput_ { + s.AccountId = &v + return s +} + +// SetDataAccessRole sets the DataAccessRole field's value. +func (s *RedshiftRunConfigurationOutput_) SetDataAccessRole(v string) *RedshiftRunConfigurationOutput_ { + s.DataAccessRole = &v + return s +} + +// SetRedshiftCredentialConfiguration sets the RedshiftCredentialConfiguration field's value. +func (s *RedshiftRunConfigurationOutput_) SetRedshiftCredentialConfiguration(v *RedshiftCredentialConfiguration) *RedshiftRunConfigurationOutput_ { + s.RedshiftCredentialConfiguration = v + return s +} + +// SetRedshiftStorage sets the RedshiftStorage field's value. +func (s *RedshiftRunConfigurationOutput_) SetRedshiftStorage(v *RedshiftStorage) *RedshiftRunConfigurationOutput_ { + s.RedshiftStorage = v + return s +} + +// SetRegion sets the Region field's value. +func (s *RedshiftRunConfigurationOutput_) SetRegion(v string) *RedshiftRunConfigurationOutput_ { + s.Region = &v + return s +} + +// SetRelationalFilterConfigurations sets the RelationalFilterConfigurations field's value. +func (s *RedshiftRunConfigurationOutput_) SetRelationalFilterConfigurations(v []*RelationalFilterConfiguration) *RedshiftRunConfigurationOutput_ { + s.RelationalFilterConfigurations = v + return s +} + +// The details of the Amazon Redshift Serverless workgroup storage. +type RedshiftServerlessStorage struct { + _ struct{} `type:"structure"` + + // The name of the Amazon Redshift Serverless 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 RedshiftServerlessStorage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftServerlessStorage) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftServerlessStorage) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftServerlessStorage"} + 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 *RedshiftServerlessStorage) SetWorkgroupName(v string) *RedshiftServerlessStorage { + s.WorkgroupName = &v + return s +} + +// The details of the Amazon Redshift storage as part of the configuration of +// an Amazon Redshift data source run. +type RedshiftStorage struct { + _ struct{} `type:"structure"` + + // The details of the Amazon Redshift cluster source. + RedshiftClusterSource *RedshiftClusterStorage `locationName:"redshiftClusterSource" type:"structure"` + + // The details of the Amazon Redshift Serverless workgroup source. + RedshiftServerlessSource *RedshiftServerlessStorage `locationName:"redshiftServerlessSource" 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 RedshiftStorage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftStorage) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftStorage) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftStorage"} + if s.RedshiftClusterSource != nil { + if err := s.RedshiftClusterSource.Validate(); err != nil { + invalidParams.AddNested("RedshiftClusterSource", err.(request.ErrInvalidParams)) + } + } + if s.RedshiftServerlessSource != nil { + if err := s.RedshiftServerlessSource.Validate(); err != nil { + invalidParams.AddNested("RedshiftServerlessSource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRedshiftClusterSource sets the RedshiftClusterSource field's value. +func (s *RedshiftStorage) SetRedshiftClusterSource(v *RedshiftClusterStorage) *RedshiftStorage { + s.RedshiftClusterSource = v + return s +} + +// SetRedshiftServerlessSource sets the RedshiftServerlessSource field's value. +func (s *RedshiftStorage) SetRedshiftServerlessSource(v *RedshiftServerlessStorage) *RedshiftStorage { + s.RedshiftServerlessSource = v + return s +} + +// The details of the automatically generated business metadata that is rejected. +type RejectChoice struct { + _ struct{} `type:"structure"` + + // Specifies the the automatically generated business metadata that can be rejected. + PredictionChoices []*int64 `locationName:"predictionChoices" type:"list"` + + // Specifies the target (for example, a column name) where a prediction can + // be rejected. + PredictionTarget *string `locationName:"predictionTarget" 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 RejectChoice) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectChoice) GoString() string { + return s.String() +} + +// SetPredictionChoices sets the PredictionChoices field's value. +func (s *RejectChoice) SetPredictionChoices(v []*int64) *RejectChoice { + s.PredictionChoices = v + return s +} + +// SetPredictionTarget sets the PredictionTarget field's value. +func (s *RejectChoice) SetPredictionTarget(v string) *RejectChoice { + s.PredictionTarget = &v + return s +} + +type RejectPredictionsInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the prediction. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + RejectChoices []*RejectChoice `locationName:"rejectChoices" type:"list"` + + // Specifies the rule and the threshold under which a prediction can be rejected. + RejectRule *RejectRule `locationName:"rejectRule" type:"structure"` + + Revision *string `location:"querystring" locationName:"revision" 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 RejectPredictionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectPredictionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RejectPredictionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RejectPredictionsInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Revision != nil && len(*s.Revision) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *RejectPredictionsInput) SetClientToken(v string) *RejectPredictionsInput { + s.ClientToken = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *RejectPredictionsInput) SetDomainIdentifier(v string) *RejectPredictionsInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *RejectPredictionsInput) SetIdentifier(v string) *RejectPredictionsInput { + s.Identifier = &v + return s +} + +// SetRejectChoices sets the RejectChoices field's value. +func (s *RejectPredictionsInput) SetRejectChoices(v []*RejectChoice) *RejectPredictionsInput { + s.RejectChoices = v + return s +} + +// SetRejectRule sets the RejectRule field's value. +func (s *RejectPredictionsInput) SetRejectRule(v *RejectRule) *RejectPredictionsInput { + s.RejectRule = v + return s +} + +// SetRevision sets the Revision field's value. +func (s *RejectPredictionsInput) SetRevision(v string) *RejectPredictionsInput { + s.Revision = &v + return s +} + +type RejectPredictionsOutput struct { + _ struct{} `type:"structure"` + + // AssetId is a required field + AssetId *string `locationName:"assetId" type:"string" required:"true"` + + // AssetRevision is a required field + AssetRevision *string `locationName:"assetRevision" min:"1" type:"string" required:"true"` + + // DomainId is a required field + DomainId *string `locationName:"domainId" 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 RejectPredictionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectPredictionsOutput) GoString() string { + return s.String() +} + +// SetAssetId sets the AssetId field's value. +func (s *RejectPredictionsOutput) SetAssetId(v string) *RejectPredictionsOutput { + s.AssetId = &v + return s +} + +// SetAssetRevision sets the AssetRevision field's value. +func (s *RejectPredictionsOutput) SetAssetRevision(v string) *RejectPredictionsOutput { + s.AssetRevision = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *RejectPredictionsOutput) SetDomainId(v string) *RejectPredictionsOutput { + s.DomainId = &v + return s +} + +// Specifies the rule and the threshold under which a prediction can be rejected. +type RejectRule struct { + _ struct{} `type:"structure"` + + // Specifies whether you want to reject the top prediction for all targets or + // none. + Rule *string `locationName:"rule" type:"string" enum:"RejectRuleBehavior"` + + // The confidence score that specifies the condition at which a prediction can + // be rejected. + Threshold *float64 `locationName:"threshold" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectRule) GoString() string { + return s.String() +} + +// SetRule sets the Rule field's value. +func (s *RejectRule) SetRule(v string) *RejectRule { + s.Rule = &v + return s +} + +// SetThreshold sets the Threshold field's value. +func (s *RejectRule) SetThreshold(v float64) *RejectRule { + s.Threshold = &v + return s +} + +type RejectSubscriptionRequestInput struct { + _ struct{} `type:"structure"` + + // The decision comment of the rejected subscription request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RejectSubscriptionRequestInput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the subscription request + // was rejected. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the subscription request that was rejected. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectSubscriptionRequestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectSubscriptionRequestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RejectSubscriptionRequestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RejectSubscriptionRequestInput"} + if s.DecisionComment != nil && len(*s.DecisionComment) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DecisionComment", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *RejectSubscriptionRequestInput) SetDecisionComment(v string) *RejectSubscriptionRequestInput { + s.DecisionComment = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *RejectSubscriptionRequestInput) SetDomainIdentifier(v string) *RejectSubscriptionRequestInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *RejectSubscriptionRequestInput) SetIdentifier(v string) *RejectSubscriptionRequestInput { + s.Identifier = &v + return s +} + +type RejectSubscriptionRequestOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the subscription request was rejected. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The timestamp of when the subscription request was rejected. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The decision comment of the rejected subscription request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RejectSubscriptionRequestOutput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the subscription request + // was rejected. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription request that was rejected. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The reason for the subscription request. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RejectSubscriptionRequestOutput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the subscription request reviewer. + ReviewerId *string `locationName:"reviewerId" type:"string"` + + // The status of the subscription request. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionRequestStatus"` + + // The subscribed listings of the subscription request. + // + // SubscribedListings is a required field + SubscribedListings []*SubscribedListing `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // The subscribed principals of the subscription request. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipal `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription request was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription request. + UpdatedBy *string `locationName:"updatedBy" 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 RejectSubscriptionRequestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RejectSubscriptionRequestOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *RejectSubscriptionRequestOutput) SetCreatedAt(v time.Time) *RejectSubscriptionRequestOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *RejectSubscriptionRequestOutput) SetCreatedBy(v string) *RejectSubscriptionRequestOutput { + s.CreatedBy = &v + return s +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *RejectSubscriptionRequestOutput) SetDecisionComment(v string) *RejectSubscriptionRequestOutput { + s.DecisionComment = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *RejectSubscriptionRequestOutput) SetDomainId(v string) *RejectSubscriptionRequestOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *RejectSubscriptionRequestOutput) SetId(v string) *RejectSubscriptionRequestOutput { + s.Id = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *RejectSubscriptionRequestOutput) SetRequestReason(v string) *RejectSubscriptionRequestOutput { + s.RequestReason = &v + return s +} + +// SetReviewerId sets the ReviewerId field's value. +func (s *RejectSubscriptionRequestOutput) SetReviewerId(v string) *RejectSubscriptionRequestOutput { + s.ReviewerId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RejectSubscriptionRequestOutput) SetStatus(v string) *RejectSubscriptionRequestOutput { + s.Status = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *RejectSubscriptionRequestOutput) SetSubscribedListings(v []*SubscribedListing) *RejectSubscriptionRequestOutput { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *RejectSubscriptionRequestOutput) SetSubscribedPrincipals(v []*SubscribedPrincipal) *RejectSubscriptionRequestOutput { + s.SubscribedPrincipals = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *RejectSubscriptionRequestOutput) SetUpdatedAt(v time.Time) *RejectSubscriptionRequestOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *RejectSubscriptionRequestOutput) SetUpdatedBy(v string) *RejectSubscriptionRequestOutput { + s.UpdatedBy = &v + return s +} + +// The relational filter configuration for the data source. +type RelationalFilterConfiguration struct { + _ struct{} `type:"structure"` + + // The database name specified in the relational filter configuration for the + // data source. + // + // DatabaseName is a required field + DatabaseName *string `locationName:"databaseName" min:"1" type:"string" required:"true"` + + // The filter expressions specified in the relational filter configuration for + // the data source. + FilterExpressions []*FilterExpression `locationName:"filterExpressions" type:"list"` + + // The schema name specified in the relational filter configuration for the + // data source. + SchemaName *string `locationName:"schemaName" 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 RelationalFilterConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RelationalFilterConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RelationalFilterConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RelationalFilterConfiguration"} + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.SchemaName != nil && len(*s.SchemaName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SchemaName", 1)) + } + if s.FilterExpressions != nil { + for i, v := range s.FilterExpressions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FilterExpressions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *RelationalFilterConfiguration) SetDatabaseName(v string) *RelationalFilterConfiguration { + s.DatabaseName = &v + return s +} + +// SetFilterExpressions sets the FilterExpressions field's value. +func (s *RelationalFilterConfiguration) SetFilterExpressions(v []*FilterExpression) *RelationalFilterConfiguration { + s.FilterExpressions = v + return s +} + +// SetSchemaName sets the SchemaName field's value. +func (s *RelationalFilterConfiguration) SetSchemaName(v string) *RelationalFilterConfiguration { + s.SchemaName = &v + return s +} + +// The details of a provisioned resource of this Amazon DataZone environment. +type Resource struct { + _ struct{} `type:"structure"` + + // The name of a provisioned resource of this Amazon DataZone environment. + Name *string `locationName:"name" type:"string"` + + // The provider of a provisioned resource of this Amazon DataZone environment. + Provider *string `locationName:"provider" type:"string"` + + // The type of a provisioned resource of this Amazon DataZone environment. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true"` + + // The value of a provisioned resource of this Amazon DataZone environment. + // + // 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 Resource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Resource) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Resource) SetName(v string) *Resource { + s.Name = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *Resource) SetProvider(v string) *Resource { + s.Provider = &v + return s +} + +// SetType sets the Type field's value. +func (s *Resource) SetType(v string) *Resource { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Resource) SetValue(v string) *Resource { + s.Value = &v + return s +} + +// The specified resource cannot be found. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +type RevokeSubscriptionInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain where you want to revoke a subscription. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the revoked subscription. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // Specifies whether permissions are retained when the subscription is revoked. + RetainPermissions *bool `locationName:"retainPermissions" 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 RevokeSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RevokeSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RevokeSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RevokeSubscriptionInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *RevokeSubscriptionInput) SetDomainIdentifier(v string) *RevokeSubscriptionInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *RevokeSubscriptionInput) SetIdentifier(v string) *RevokeSubscriptionInput { + s.Identifier = &v + return s +} + +// SetRetainPermissions sets the RetainPermissions field's value. +func (s *RevokeSubscriptionInput) SetRetainPermissions(v bool) *RevokeSubscriptionInput { + s.RetainPermissions = &v + return s +} + +type RevokeSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the subscription was revoked. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The identifier of the user who revoked the subscription. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain where you want to revoke a subscription. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the revoked subscription. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // Specifies whether permissions are retained when the subscription is revoked. + RetainPermissions *bool `locationName:"retainPermissions" type:"boolean"` + + // The status of the revoked subscription. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionStatus"` + + // The subscribed listing of the revoked subscription. + // + // SubscribedListing is a required field + SubscribedListing *SubscribedListing `locationName:"subscribedListing" type:"structure" required:"true"` + + // The subscribed principal of the revoked subscription. + // + // SubscribedPrincipal is a required field + SubscribedPrincipal *SubscribedPrincipal `locationName:"subscribedPrincipal" type:"structure" required:"true"` + + // The identifier of the subscription request for the revoked subscription. + SubscriptionRequestId *string `locationName:"subscriptionRequestId" type:"string"` + + // The timestamp of when the subscription was revoked. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who revoked the subscription. + UpdatedBy *string `locationName:"updatedBy" 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 RevokeSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RevokeSubscriptionOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *RevokeSubscriptionOutput) SetCreatedAt(v time.Time) *RevokeSubscriptionOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *RevokeSubscriptionOutput) SetCreatedBy(v string) *RevokeSubscriptionOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *RevokeSubscriptionOutput) SetDomainId(v string) *RevokeSubscriptionOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *RevokeSubscriptionOutput) SetId(v string) *RevokeSubscriptionOutput { + s.Id = &v + return s +} + +// SetRetainPermissions sets the RetainPermissions field's value. +func (s *RevokeSubscriptionOutput) SetRetainPermissions(v bool) *RevokeSubscriptionOutput { + s.RetainPermissions = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RevokeSubscriptionOutput) SetStatus(v string) *RevokeSubscriptionOutput { + s.Status = &v + return s +} + +// SetSubscribedListing sets the SubscribedListing field's value. +func (s *RevokeSubscriptionOutput) SetSubscribedListing(v *SubscribedListing) *RevokeSubscriptionOutput { + s.SubscribedListing = v + return s +} + +// SetSubscribedPrincipal sets the SubscribedPrincipal field's value. +func (s *RevokeSubscriptionOutput) SetSubscribedPrincipal(v *SubscribedPrincipal) *RevokeSubscriptionOutput { + s.SubscribedPrincipal = v + return s +} + +// SetSubscriptionRequestId sets the SubscriptionRequestId field's value. +func (s *RevokeSubscriptionOutput) SetSubscriptionRequestId(v string) *RevokeSubscriptionOutput { + s.SubscriptionRequestId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *RevokeSubscriptionOutput) SetUpdatedAt(v time.Time) *RevokeSubscriptionOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *RevokeSubscriptionOutput) SetUpdatedBy(v string) *RevokeSubscriptionOutput { + s.UpdatedBy = &v + return s +} + +// The asset statistics from the data source run. +type RunStatisticsForAssets struct { + _ struct{} `type:"structure"` + + // The added statistic for the data source run. + Added *int64 `locationName:"added" type:"integer"` + + // The failed statistic for the data source run. + Failed *int64 `locationName:"failed" type:"integer"` + + // The skipped statistic for the data source run. + Skipped *int64 `locationName:"skipped" type:"integer"` + + // The unchanged statistic for the data source run. + Unchanged *int64 `locationName:"unchanged" type:"integer"` + + // The updated statistic for the data source run. + Updated *int64 `locationName:"updated" 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 RunStatisticsForAssets) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RunStatisticsForAssets) GoString() string { + return s.String() +} + +// SetAdded sets the Added field's value. +func (s *RunStatisticsForAssets) SetAdded(v int64) *RunStatisticsForAssets { + s.Added = &v + return s +} + +// SetFailed sets the Failed field's value. +func (s *RunStatisticsForAssets) SetFailed(v int64) *RunStatisticsForAssets { + s.Failed = &v + return s +} + +// SetSkipped sets the Skipped field's value. +func (s *RunStatisticsForAssets) SetSkipped(v int64) *RunStatisticsForAssets { + s.Skipped = &v + return s +} + +// SetUnchanged sets the Unchanged field's value. +func (s *RunStatisticsForAssets) SetUnchanged(v int64) *RunStatisticsForAssets { + s.Unchanged = &v + return s +} + +// SetUpdated sets the Updated field's value. +func (s *RunStatisticsForAssets) SetUpdated(v int64) *RunStatisticsForAssets { + s.Updated = &v + return s +} + +// The details of the schedule of the data source runs. +type ScheduleConfiguration struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The schedule of the data source runs. + Schedule *string `locationName:"schedule" min:"1" type:"string"` + + // The timezone of the data source run. + Timezone *string `locationName:"timezone" type:"string" enum:"Timezone"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScheduleConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScheduleConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ScheduleConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ScheduleConfiguration"} + if s.Schedule != nil && len(*s.Schedule) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Schedule", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSchedule sets the Schedule field's value. +func (s *ScheduleConfiguration) SetSchedule(v string) *ScheduleConfiguration { + s.Schedule = &v + return s +} + +// SetTimezone sets the Timezone field's value. +func (s *ScheduleConfiguration) SetTimezone(v string) *ScheduleConfiguration { + s.Timezone = &v + return s +} + +type SearchGroupProfilesInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which you want to search + // group profiles. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The group type for which to search. + // + // GroupType is a required field + GroupType *string `locationName:"groupType" type:"string" required:"true" enum:"GroupSearchType"` + + // The maximum number of results to return in a single call to SearchGroupProfiles. + // When the number of results to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to SearchGroupProfiles to list the next set of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchGroupProfiles + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Specifies the text for which to search. + // + // SearchText is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchGroupProfilesInput's + // String and GoString methods. + SearchText *string `locationName:"searchText" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchGroupProfilesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchGroupProfilesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchGroupProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchGroupProfilesInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GroupType == nil { + invalidParams.Add(request.NewErrParamRequired("GroupType")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *SearchGroupProfilesInput) SetDomainIdentifier(v string) *SearchGroupProfilesInput { + s.DomainIdentifier = &v + return s +} + +// SetGroupType sets the GroupType field's value. +func (s *SearchGroupProfilesInput) SetGroupType(v string) *SearchGroupProfilesInput { + s.GroupType = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchGroupProfilesInput) SetMaxResults(v int64) *SearchGroupProfilesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchGroupProfilesInput) SetNextToken(v string) *SearchGroupProfilesInput { + s.NextToken = &v + return s +} + +// SetSearchText sets the SearchText field's value. +func (s *SearchGroupProfilesInput) SetSearchText(v string) *SearchGroupProfilesInput { + s.SearchText = &v + return s +} + +type SearchGroupProfilesOutput struct { + _ struct{} `type:"structure"` + + // The results of the SearchGroupProfiles action. + Items []*GroupProfileSummary `locationName:"items" type:"list"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchGroupProfiles + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchGroupProfilesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchGroupProfilesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *SearchGroupProfilesOutput) SetItems(v []*GroupProfileSummary) *SearchGroupProfilesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchGroupProfilesOutput) SetNextToken(v string) *SearchGroupProfilesOutput { + s.NextToken = &v + return s +} + +// The details of the search. +type SearchInItem struct { + _ struct{} `type:"structure"` + + // The search attribute. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" 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 SearchInItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchInItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchInItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchInItem"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Attribute != nil && len(*s.Attribute) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attribute", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *SearchInItem) SetAttribute(v string) *SearchInItem { + s.Attribute = &v + return s +} + +type SearchInput struct { + _ struct{} `type:"structure"` + + // Specifies additional attributes for the Search action. + AdditionalAttributes []*string `locationName:"additionalAttributes" type:"list" enum:"SearchOutputAdditionalAttribute"` + + // The identifier of the Amazon DataZone domain. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Specifies the search filters. + Filters *FilterClause `locationName:"filters" type:"structure"` + + // The maximum number of results to return in a single call to Search. When + // the number of results to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to Search to list the next set of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to Search + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the owning project specified for the search. + OwningProjectIdentifier *string `locationName:"owningProjectIdentifier" type:"string"` + + SearchIn []*SearchInItem `locationName:"searchIn" min:"1" type:"list"` + + // The scope of the search. + // + // SearchScope is a required field + SearchScope *string `locationName:"searchScope" type:"string" required:"true" enum:"InventorySearchScope"` + + // Specifies the text for which to search. + SearchText *string `locationName:"searchText" min:"1" type:"string"` + + // Specifies the way in which the search results are to be sorted. + Sort *SearchSort `locationName:"sort" 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 SearchInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchIn != nil && len(s.SearchIn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SearchIn", 1)) + } + if s.SearchScope == nil { + invalidParams.Add(request.NewErrParamRequired("SearchScope")) + } + if s.SearchText != nil && len(*s.SearchText) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SearchText", 1)) + } + if s.Filters != nil { + if err := s.Filters.Validate(); err != nil { + invalidParams.AddNested("Filters", err.(request.ErrInvalidParams)) + } + } + if s.SearchIn != nil { + for i, v := range s.SearchIn { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SearchIn", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Sort != nil { + if err := s.Sort.Validate(); err != nil { + invalidParams.AddNested("Sort", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *SearchInput) SetAdditionalAttributes(v []*string) *SearchInput { + s.AdditionalAttributes = v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *SearchInput) SetDomainIdentifier(v string) *SearchInput { + s.DomainIdentifier = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *SearchInput) SetFilters(v *FilterClause) *SearchInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchInput) SetMaxResults(v int64) *SearchInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchInput) SetNextToken(v string) *SearchInput { + s.NextToken = &v + return s +} + +// SetOwningProjectIdentifier sets the OwningProjectIdentifier field's value. +func (s *SearchInput) SetOwningProjectIdentifier(v string) *SearchInput { + s.OwningProjectIdentifier = &v + return s +} + +// SetSearchIn sets the SearchIn field's value. +func (s *SearchInput) SetSearchIn(v []*SearchInItem) *SearchInput { + s.SearchIn = v + return s +} + +// SetSearchScope sets the SearchScope field's value. +func (s *SearchInput) SetSearchScope(v string) *SearchInput { + s.SearchScope = &v + return s +} + +// SetSearchText sets the SearchText field's value. +func (s *SearchInput) SetSearchText(v string) *SearchInput { + s.SearchText = &v + return s +} + +// SetSort sets the Sort field's value. +func (s *SearchInput) SetSort(v *SearchSort) *SearchInput { + s.Sort = v + return s +} + +// The details of the search results. +type SearchInventoryResultItem struct { + _ struct{} `type:"structure"` + + // The asset item included in the search results. + AssetItem *AssetItem `locationName:"assetItem" type:"structure"` + + // The data product item included in the search results. + DataProductItem *DataProductSummary `locationName:"dataProductItem" type:"structure"` + + // The glossary item included in the search results. + GlossaryItem *GlossaryItem `locationName:"glossaryItem" type:"structure"` + + // The glossary term item included in the search results. + GlossaryTermItem *GlossaryTermItem `locationName:"glossaryTermItem" 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 SearchInventoryResultItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchInventoryResultItem) GoString() string { + return s.String() +} + +// SetAssetItem sets the AssetItem field's value. +func (s *SearchInventoryResultItem) SetAssetItem(v *AssetItem) *SearchInventoryResultItem { + s.AssetItem = v + return s +} + +// SetDataProductItem sets the DataProductItem field's value. +func (s *SearchInventoryResultItem) SetDataProductItem(v *DataProductSummary) *SearchInventoryResultItem { + s.DataProductItem = v + return s +} + +// SetGlossaryItem sets the GlossaryItem field's value. +func (s *SearchInventoryResultItem) SetGlossaryItem(v *GlossaryItem) *SearchInventoryResultItem { + s.GlossaryItem = v + return s +} + +// SetGlossaryTermItem sets the GlossaryTermItem field's value. +func (s *SearchInventoryResultItem) SetGlossaryTermItem(v *GlossaryTermItem) *SearchInventoryResultItem { + s.GlossaryTermItem = v + return s +} + +type SearchListingsInput struct { + _ struct{} `type:"structure"` + + // Specifies additional attributes for the search. + AdditionalAttributes []*string `locationName:"additionalAttributes" type:"list" enum:"SearchOutputAdditionalAttribute"` + + // The identifier of the domain in which to search listings. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Specifies the filters for the search of listings. + Filters *FilterClause `locationName:"filters" type:"structure"` + + // The maximum number of results to return in a single call to SearchListings. + // When the number of results to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to SearchListings to list the next set of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchListings + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + SearchIn []*SearchInItem `locationName:"searchIn" min:"1" type:"list"` + + // Specifies the text for which to search. + SearchText *string `locationName:"searchText" type:"string"` + + // Specifies the way for sorting the search results. + Sort *SearchSort `locationName:"sort" 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 SearchListingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchListingsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchListingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchListingsInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchIn != nil && len(s.SearchIn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SearchIn", 1)) + } + if s.Filters != nil { + if err := s.Filters.Validate(); err != nil { + invalidParams.AddNested("Filters", err.(request.ErrInvalidParams)) + } + } + if s.SearchIn != nil { + for i, v := range s.SearchIn { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SearchIn", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Sort != nil { + if err := s.Sort.Validate(); err != nil { + invalidParams.AddNested("Sort", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *SearchListingsInput) SetAdditionalAttributes(v []*string) *SearchListingsInput { + s.AdditionalAttributes = v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *SearchListingsInput) SetDomainIdentifier(v string) *SearchListingsInput { + s.DomainIdentifier = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *SearchListingsInput) SetFilters(v *FilterClause) *SearchListingsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchListingsInput) SetMaxResults(v int64) *SearchListingsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchListingsInput) SetNextToken(v string) *SearchListingsInput { + s.NextToken = &v + return s +} + +// SetSearchIn sets the SearchIn field's value. +func (s *SearchListingsInput) SetSearchIn(v []*SearchInItem) *SearchListingsInput { + s.SearchIn = v + return s +} + +// SetSearchText sets the SearchText field's value. +func (s *SearchListingsInput) SetSearchText(v string) *SearchListingsInput { + s.SearchText = &v + return s +} + +// SetSort sets the Sort field's value. +func (s *SearchListingsInput) SetSort(v *SearchSort) *SearchListingsInput { + s.Sort = v + return s +} + +type SearchListingsOutput struct { + _ struct{} `type:"structure"` + + // The results of the SearchListings action. + Items []*SearchResultItem `locationName:"items" type:"list"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchListings + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Total number of search results. + TotalMatchCount *int64 `locationName:"totalMatchCount" 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 SearchListingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchListingsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *SearchListingsOutput) SetItems(v []*SearchResultItem) *SearchListingsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchListingsOutput) SetNextToken(v string) *SearchListingsOutput { + s.NextToken = &v + return s +} + +// SetTotalMatchCount sets the TotalMatchCount field's value. +func (s *SearchListingsOutput) SetTotalMatchCount(v int64) *SearchListingsOutput { + s.TotalMatchCount = &v + return s +} + +type SearchOutput struct { + _ struct{} `type:"structure"` + + // The results of the Search action. + Items []*SearchInventoryResultItem `locationName:"items" type:"list"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to Search + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Total number of search results. + TotalMatchCount *int64 `locationName:"totalMatchCount" 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 SearchOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *SearchOutput) SetItems(v []*SearchInventoryResultItem) *SearchOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchOutput) SetNextToken(v string) *SearchOutput { + s.NextToken = &v + return s +} + +// SetTotalMatchCount sets the TotalMatchCount field's value. +func (s *SearchOutput) SetTotalMatchCount(v int64) *SearchOutput { + s.TotalMatchCount = &v + return s +} + +// The details of the results of the SearchListings action. +type SearchResultItem struct { + _ struct{} `type:"structure"` + + // The asset listing included in the results of the SearchListings action. + AssetListing *AssetListingItem `locationName:"assetListing" 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 SearchResultItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchResultItem) GoString() string { + return s.String() +} + +// SetAssetListing sets the AssetListing field's value. +func (s *SearchResultItem) SetAssetListing(v *AssetListingItem) *SearchResultItem { + s.AssetListing = v + return s +} + +// The details of the way to sort search results. +type SearchSort struct { + _ struct{} `type:"structure"` + + // The attribute detail of the way to sort search results. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" min:"1" type:"string" required:"true"` + + // The order detail of the wya to sort search results. + Order *string `locationName:"order" type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchSort) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchSort) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchSort"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Attribute != nil && len(*s.Attribute) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attribute", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *SearchSort) SetAttribute(v string) *SearchSort { + s.Attribute = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *SearchSort) SetOrder(v string) *SearchSort { + s.Order = &v + return s +} + +type SearchTypesInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which to invoke the SearchTypes + // action. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The filters for the SearchTypes action. + Filters *FilterClause `locationName:"filters" type:"structure"` + + // Managed is a required field + Managed *bool `locationName:"managed" type:"boolean" required:"true"` + + // The maximum number of results to return in a single call to SearchTypes. + // When the number of results to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to SearchTypes to list the next set of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchTypes + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + SearchIn []*SearchInItem `locationName:"searchIn" min:"1" type:"list"` + + // Specifies the scope of the search for types. + // + // SearchScope is a required field + SearchScope *string `locationName:"searchScope" type:"string" required:"true" enum:"TypesSearchScope"` + + // Specifies the text for which to search. + SearchText *string `locationName:"searchText" min:"1" type:"string"` + + // The specifies the way to sort the SearchTypes results. + Sort *SearchSort `locationName:"sort" 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 SearchTypesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchTypesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchTypesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchTypesInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Managed == nil { + invalidParams.Add(request.NewErrParamRequired("Managed")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchIn != nil && len(s.SearchIn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SearchIn", 1)) + } + if s.SearchScope == nil { + invalidParams.Add(request.NewErrParamRequired("SearchScope")) + } + if s.SearchText != nil && len(*s.SearchText) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SearchText", 1)) + } + if s.Filters != nil { + if err := s.Filters.Validate(); err != nil { + invalidParams.AddNested("Filters", err.(request.ErrInvalidParams)) + } + } + if s.SearchIn != nil { + for i, v := range s.SearchIn { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SearchIn", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Sort != nil { + if err := s.Sort.Validate(); err != nil { + invalidParams.AddNested("Sort", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *SearchTypesInput) SetDomainIdentifier(v string) *SearchTypesInput { + s.DomainIdentifier = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *SearchTypesInput) SetFilters(v *FilterClause) *SearchTypesInput { + s.Filters = v + return s +} + +// SetManaged sets the Managed field's value. +func (s *SearchTypesInput) SetManaged(v bool) *SearchTypesInput { + s.Managed = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchTypesInput) SetMaxResults(v int64) *SearchTypesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchTypesInput) SetNextToken(v string) *SearchTypesInput { + s.NextToken = &v + return s +} + +// SetSearchIn sets the SearchIn field's value. +func (s *SearchTypesInput) SetSearchIn(v []*SearchInItem) *SearchTypesInput { + s.SearchIn = v + return s +} + +// SetSearchScope sets the SearchScope field's value. +func (s *SearchTypesInput) SetSearchScope(v string) *SearchTypesInput { + s.SearchScope = &v + return s +} + +// SetSearchText sets the SearchText field's value. +func (s *SearchTypesInput) SetSearchText(v string) *SearchTypesInput { + s.SearchText = &v + return s +} + +// SetSort sets the Sort field's value. +func (s *SearchTypesInput) SetSort(v *SearchSort) *SearchTypesInput { + s.Sort = v + return s +} + +type SearchTypesOutput struct { + _ struct{} `type:"structure"` + + // The results of the SearchTypes action. + Items []*SearchTypesResultItem `locationName:"items" type:"list"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchTypes + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Total number of search results. + TotalMatchCount *int64 `locationName:"totalMatchCount" 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 SearchTypesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchTypesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *SearchTypesOutput) SetItems(v []*SearchTypesResultItem) *SearchTypesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchTypesOutput) SetNextToken(v string) *SearchTypesOutput { + s.NextToken = &v + return s +} + +// SetTotalMatchCount sets the TotalMatchCount field's value. +func (s *SearchTypesOutput) SetTotalMatchCount(v int64) *SearchTypesOutput { + s.TotalMatchCount = &v + return s +} + +// The details of the results of the SearchTypes action. +type SearchTypesResultItem struct { + _ struct{} `type:"structure"` + + // The asset type included in the results of the SearchTypes action. + AssetTypeItem *AssetTypeItem `locationName:"assetTypeItem" type:"structure"` + + // The form type included in the results of the SearchTypes action. + FormTypeItem *FormTypeData `locationName:"formTypeItem" 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 SearchTypesResultItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchTypesResultItem) GoString() string { + return s.String() +} + +// SetAssetTypeItem sets the AssetTypeItem field's value. +func (s *SearchTypesResultItem) SetAssetTypeItem(v *AssetTypeItem) *SearchTypesResultItem { + s.AssetTypeItem = v + return s +} + +// SetFormTypeItem sets the FormTypeItem field's value. +func (s *SearchTypesResultItem) SetFormTypeItem(v *FormTypeData) *SearchTypesResultItem { + s.FormTypeItem = v + return s +} + +type SearchUserProfilesInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which you want to search + // user profiles. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The maximum number of results to return in a single call to SearchUserProfiles. + // When the number of results to be listed is greater than the value of MaxResults, + // the response contains a NextToken value that you can use in a subsequent + // call to SearchUserProfiles to list the next set of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchUserProfiles + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Specifies the text for which to search. + // + // SearchText is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchUserProfilesInput's + // String and GoString methods. + SearchText *string `locationName:"searchText" type:"string" sensitive:"true"` + + // Specifies the user type for the SearchUserProfiles action. + // + // UserType is a required field + UserType *string `locationName:"userType" type:"string" required:"true" enum:"UserSearchType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchUserProfilesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchUserProfilesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchUserProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchUserProfilesInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.UserType == nil { + invalidParams.Add(request.NewErrParamRequired("UserType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *SearchUserProfilesInput) SetDomainIdentifier(v string) *SearchUserProfilesInput { + s.DomainIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchUserProfilesInput) SetMaxResults(v int64) *SearchUserProfilesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchUserProfilesInput) SetNextToken(v string) *SearchUserProfilesInput { + s.NextToken = &v + return s +} + +// SetSearchText sets the SearchText field's value. +func (s *SearchUserProfilesInput) SetSearchText(v string) *SearchUserProfilesInput { + s.SearchText = &v + return s +} + +// SetUserType sets the UserType field's value. +func (s *SearchUserProfilesInput) SetUserType(v string) *SearchUserProfilesInput { + s.UserType = &v + return s +} + +type SearchUserProfilesOutput struct { + _ struct{} `type:"structure"` + + // The results of the SearchUserProfiles action. + Items []*UserProfileSummary `locationName:"items" type:"list"` + + // When the number of results is greater than the default value for the MaxResults + // parameter, or if you explicitly specify a value for MaxResults that is less + // than the number of results, the response includes a pagination token named + // NextToken. You can specify this NextToken value in a subsequent call to SearchUserProfiles + // to list the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchUserProfilesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchUserProfilesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *SearchUserProfilesOutput) SetItems(v []*UserProfileSummary) *SearchUserProfilesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchUserProfilesOutput) SetNextToken(v string) *SearchUserProfilesOutput { + s.NextToken = &v + return s +} + +// The request has exceeded the specified service quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The single sign-on details in Amazon DataZone. +type SingleSignOn struct { + _ struct{} `type:"structure"` + + // The type of single sign-on in Amazon DataZone. + Type *string `locationName:"type" type:"string" enum:"AuthType"` + + // The single sign-on user assignment in Amazon DataZone. + UserAssignment *string `locationName:"userAssignment" type:"string" enum:"UserAssignment"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SingleSignOn) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SingleSignOn) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *SingleSignOn) SetType(v string) *SingleSignOn { + s.Type = &v + return s +} + +// SetUserAssignment sets the UserAssignment field's value. +func (s *SingleSignOn) SetUserAssignment(v string) *SingleSignOn { + s.UserAssignment = &v + return s +} + +// The single sign-on details of the user profile. +type SsoUserProfileDetails struct { + _ struct{} `type:"structure"` + + // The first name included in the single sign-on details of the user profile. + // + // FirstName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SsoUserProfileDetails's + // String and GoString methods. + FirstName *string `locationName:"firstName" type:"string" sensitive:"true"` + + // The last name included in the single sign-on details of the user profile. + // + // LastName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SsoUserProfileDetails's + // String and GoString methods. + LastName *string `locationName:"lastName" type:"string" sensitive:"true"` + + // The username included in the single sign-on details of the user profile. + // + // Username is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SsoUserProfileDetails's + // String and GoString methods. + Username *string `locationName:"username" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SsoUserProfileDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SsoUserProfileDetails) GoString() string { + return s.String() +} + +// SetFirstName sets the FirstName field's value. +func (s *SsoUserProfileDetails) SetFirstName(v string) *SsoUserProfileDetails { + s.FirstName = &v + return s +} + +// SetLastName sets the LastName field's value. +func (s *SsoUserProfileDetails) SetLastName(v string) *SsoUserProfileDetails { + s.LastName = &v + return s +} + +// SetUsername sets the Username field's value. +func (s *SsoUserProfileDetails) SetUsername(v string) *SsoUserProfileDetails { + s.Username = &v + return s +} + +type StartDataSourceRunInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The identifier of the data source. + // + // DataSourceIdentifier is a required field + DataSourceIdentifier *string `location:"uri" locationName:"dataSourceIdentifier" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which to start a data source + // run. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" 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 StartDataSourceRunInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceRunInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDataSourceRunInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDataSourceRunInput"} + if s.DataSourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceIdentifier")) + } + if s.DataSourceIdentifier != nil && len(*s.DataSourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceIdentifier", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartDataSourceRunInput) SetClientToken(v string) *StartDataSourceRunInput { + s.ClientToken = &v + return s +} + +// SetDataSourceIdentifier sets the DataSourceIdentifier field's value. +func (s *StartDataSourceRunInput) SetDataSourceIdentifier(v string) *StartDataSourceRunInput { + s.DataSourceIdentifier = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *StartDataSourceRunInput) SetDomainIdentifier(v string) *StartDataSourceRunInput { + s.DomainIdentifier = &v + return s +} + +type StartDataSourceRunOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when data source run was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The configuration snapshot of the data source that is being run. + DataSourceConfigurationSnapshot *string `locationName:"dataSourceConfigurationSnapshot" type:"string"` + + // The identifier of the data source. + // + // DataSourceId is a required field + DataSourceId *string `locationName:"dataSourceId" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which to start a data source + // run. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The identifier of the data source run. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The identifier of the project. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // Specifies run statistics for assets. + RunStatisticsForAssets *RunStatisticsForAssets `locationName:"runStatisticsForAssets" type:"structure"` + + // The timestamp of when the data source run was started. + StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The status of the data source run. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"DataSourceRunStatus"` + + // The timestamp of when the data source run was stopped. + StoppedAt *time.Time `locationName:"stoppedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The type of the data source run. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DataSourceRunType"` + + // The timestamp of when the data source run was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601" 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 StartDataSourceRunOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceRunOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *StartDataSourceRunOutput) SetCreatedAt(v time.Time) *StartDataSourceRunOutput { + s.CreatedAt = &v + return s +} + +// SetDataSourceConfigurationSnapshot sets the DataSourceConfigurationSnapshot field's value. +func (s *StartDataSourceRunOutput) SetDataSourceConfigurationSnapshot(v string) *StartDataSourceRunOutput { + s.DataSourceConfigurationSnapshot = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *StartDataSourceRunOutput) SetDataSourceId(v string) *StartDataSourceRunOutput { + s.DataSourceId = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *StartDataSourceRunOutput) SetDomainId(v string) *StartDataSourceRunOutput { + s.DomainId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *StartDataSourceRunOutput) SetErrorMessage(v *DataSourceErrorMessage) *StartDataSourceRunOutput { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *StartDataSourceRunOutput) SetId(v string) *StartDataSourceRunOutput { + s.Id = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *StartDataSourceRunOutput) SetProjectId(v string) *StartDataSourceRunOutput { + s.ProjectId = &v + return s +} + +// SetRunStatisticsForAssets sets the RunStatisticsForAssets field's value. +func (s *StartDataSourceRunOutput) SetRunStatisticsForAssets(v *RunStatisticsForAssets) *StartDataSourceRunOutput { + s.RunStatisticsForAssets = v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *StartDataSourceRunOutput) SetStartedAt(v time.Time) *StartDataSourceRunOutput { + s.StartedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *StartDataSourceRunOutput) SetStatus(v string) *StartDataSourceRunOutput { + s.Status = &v + return s +} + +// SetStoppedAt sets the StoppedAt field's value. +func (s *StartDataSourceRunOutput) SetStoppedAt(v time.Time) *StartDataSourceRunOutput { + s.StoppedAt = &v + return s +} + +// SetType sets the Type field's value. +func (s *StartDataSourceRunOutput) SetType(v string) *StartDataSourceRunOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *StartDataSourceRunOutput) SetUpdatedAt(v time.Time) *StartDataSourceRunOutput { + s.UpdatedAt = &v + return s +} + +// The details of the asset for which the subscription grant is created. +type SubscribedAsset struct { + _ struct{} `type:"structure"` + + // The identifier of the asset for which the subscription grant is created. + // + // AssetId is a required field + AssetId *string `locationName:"assetId" type:"string" required:"true"` + + // The revision of the asset for which the subscription grant is created. + // + // AssetRevision is a required field + AssetRevision *string `locationName:"assetRevision" min:"1" type:"string" required:"true"` + + // The failure cause included in the details of the asset for which the subscription + // grant is created. + FailureCause *FailureCause `locationName:"failureCause" type:"structure"` + + // The failure timestamp included in the details of the asset for which the + // subscription grant is created. + FailureTimestamp *time.Time `locationName:"failureTimestamp" type:"timestamp"` + + // The timestamp of when the subscription grant to the asset is created. + GrantedTimestamp *time.Time `locationName:"grantedTimestamp" type:"timestamp"` + + // The status of the asset for which the subscription grant is created. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantStatus"` + + // The target name of the asset for which the subscription grant is created. + TargetName *string `locationName:"targetName" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedAsset) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedAsset) GoString() string { + return s.String() +} + +// SetAssetId sets the AssetId field's value. +func (s *SubscribedAsset) SetAssetId(v string) *SubscribedAsset { + s.AssetId = &v + return s +} + +// SetAssetRevision sets the AssetRevision field's value. +func (s *SubscribedAsset) SetAssetRevision(v string) *SubscribedAsset { + s.AssetRevision = &v + return s +} + +// SetFailureCause sets the FailureCause field's value. +func (s *SubscribedAsset) SetFailureCause(v *FailureCause) *SubscribedAsset { + s.FailureCause = v + return s +} + +// SetFailureTimestamp sets the FailureTimestamp field's value. +func (s *SubscribedAsset) SetFailureTimestamp(v time.Time) *SubscribedAsset { + s.FailureTimestamp = &v + return s +} + +// SetGrantedTimestamp sets the GrantedTimestamp field's value. +func (s *SubscribedAsset) SetGrantedTimestamp(v time.Time) *SubscribedAsset { + s.GrantedTimestamp = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SubscribedAsset) SetStatus(v string) *SubscribedAsset { + s.Status = &v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *SubscribedAsset) SetTargetName(v string) *SubscribedAsset { + s.TargetName = &v + return s +} + +// The details of the published asset for which the subscription grant is created. +type SubscribedAssetListing struct { + _ struct{} `type:"structure"` + + // The identifier of the published asset for which the subscription grant is + // created. + EntityId *string `locationName:"entityId" type:"string"` + + // The revision of the published asset for which the subscription grant is created. + EntityRevision *string `locationName:"entityRevision" min:"1" type:"string"` + + // The type of the published asset for which the subscription grant is created. + EntityType *string `locationName:"entityType" min:"1" type:"string"` + + // The forms attached to the published asset for which the subscription grant + // is created. + Forms *string `locationName:"forms" type:"string"` + + // The glossary terms attached to the published asset for which the subscription + // grant is created. + GlossaryTerms []*DetailedGlossaryTerm `locationName:"glossaryTerms" 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 SubscribedAssetListing) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedAssetListing) GoString() string { + return s.String() +} + +// SetEntityId sets the EntityId field's value. +func (s *SubscribedAssetListing) SetEntityId(v string) *SubscribedAssetListing { + s.EntityId = &v + return s +} + +// SetEntityRevision sets the EntityRevision field's value. +func (s *SubscribedAssetListing) SetEntityRevision(v string) *SubscribedAssetListing { + s.EntityRevision = &v + return s +} + +// SetEntityType sets the EntityType field's value. +func (s *SubscribedAssetListing) SetEntityType(v string) *SubscribedAssetListing { + s.EntityType = &v + return s +} + +// SetForms sets the Forms field's value. +func (s *SubscribedAssetListing) SetForms(v string) *SubscribedAssetListing { + s.Forms = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *SubscribedAssetListing) SetGlossaryTerms(v []*DetailedGlossaryTerm) *SubscribedAssetListing { + s.GlossaryTerms = v + return s +} + +// The details of the published asset for which the subscription grant is created. +type SubscribedListing struct { + _ struct{} `type:"structure"` + + // The description of the published asset for which the subscription grant is + // created. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SubscribedListing's + // String and GoString methods. + // + // Description is a required field + Description *string `locationName:"description" type:"string" required:"true" sensitive:"true"` + + // The identifier of the published asset for which the subscription grant is + // created. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The published asset for which the subscription grant is created. + // + // Item is a required field + Item *SubscribedListingItem `locationName:"item" type:"structure" required:"true"` + + // The name of the published asset for which the subscription grant is created. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The identifier of the project of the published asset for which the subscription + // grant is created. + // + // OwnerProjectId is a required field + OwnerProjectId *string `locationName:"ownerProjectId" type:"string" required:"true"` + + // The name of the project that owns the published asset for which the subscription + // grant is created. + OwnerProjectName *string `locationName:"ownerProjectName" type:"string"` + + // The revision of the published asset for which the subscription grant is created. + Revision *string `locationName:"revision" 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 SubscribedListing) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedListing) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *SubscribedListing) SetDescription(v string) *SubscribedListing { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *SubscribedListing) SetId(v string) *SubscribedListing { + s.Id = &v + return s +} + +// SetItem sets the Item field's value. +func (s *SubscribedListing) SetItem(v *SubscribedListingItem) *SubscribedListing { + s.Item = v + return s +} + +// SetName sets the Name field's value. +func (s *SubscribedListing) SetName(v string) *SubscribedListing { + s.Name = &v + return s +} + +// SetOwnerProjectId sets the OwnerProjectId field's value. +func (s *SubscribedListing) SetOwnerProjectId(v string) *SubscribedListing { + s.OwnerProjectId = &v + return s +} + +// SetOwnerProjectName sets the OwnerProjectName field's value. +func (s *SubscribedListing) SetOwnerProjectName(v string) *SubscribedListing { + s.OwnerProjectName = &v + return s +} + +// SetRevision sets the Revision field's value. +func (s *SubscribedListing) SetRevision(v string) *SubscribedListing { + s.Revision = &v + return s +} + +// The published asset for which the subscription grant is to be created. +type SubscribedListingInput_ struct { + _ struct{} `type:"structure"` + + // The identifier of the published asset for which the subscription grant is + // to be created. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedListingInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedListingInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SubscribedListingInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SubscribedListingInput_"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *SubscribedListingInput_) SetIdentifier(v string) *SubscribedListingInput_ { + s.Identifier = &v + return s +} + +// The published asset for which the subscription grant is created. +type SubscribedListingItem struct { + _ struct{} `type:"structure"` + + // The asset for which the subscription grant is created. + AssetListing *SubscribedAssetListing `locationName:"assetListing" 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 SubscribedListingItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedListingItem) GoString() string { + return s.String() +} + +// SetAssetListing sets the AssetListing field's value. +func (s *SubscribedListingItem) SetAssetListing(v *SubscribedAssetListing) *SubscribedListingItem { + s.AssetListing = v + return s +} + +// The principal that has the subscription grant for the asset. +type SubscribedPrincipal struct { + _ struct{} `type:"structure"` + + // The project that has the subscription grant. + Project *SubscribedProject `locationName:"project" 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 SubscribedPrincipal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedPrincipal) GoString() string { + return s.String() +} + +// SetProject sets the Project field's value. +func (s *SubscribedPrincipal) SetProject(v *SubscribedProject) *SubscribedPrincipal { + s.Project = v + return s +} + +// The principal that is to be given a subscriptiong grant. +type SubscribedPrincipalInput_ struct { + _ struct{} `type:"structure"` + + // The project that is to be given a subscription grant. + Project *SubscribedProjectInput_ `locationName:"project" 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 SubscribedPrincipalInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedPrincipalInput_) GoString() string { + return s.String() +} + +// SetProject sets the Project field's value. +func (s *SubscribedPrincipalInput_) SetProject(v *SubscribedProjectInput_) *SubscribedPrincipalInput_ { + s.Project = v + return s +} + +// The project that has the subscription grant. +type SubscribedProject struct { + _ struct{} `type:"structure"` + + // The identifier of the project that has the subscription grant. + Id *string `locationName:"id" type:"string"` + + // The name of the project that has the subscription grant. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SubscribedProject's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedProject) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedProject) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *SubscribedProject) SetId(v string) *SubscribedProject { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *SubscribedProject) SetName(v string) *SubscribedProject { + s.Name = &v + return s +} + +// The project that is to be given a subscription grant. +type SubscribedProjectInput_ struct { + _ struct{} `type:"structure"` + + // The identifier of the project that is to be given a subscription grant. + Identifier *string `locationName:"identifier" 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 SubscribedProjectInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscribedProjectInput_) GoString() string { + return s.String() +} + +// SetIdentifier sets the Identifier field's value. +func (s *SubscribedProjectInput_) SetIdentifier(v string) *SubscribedProjectInput_ { + s.Identifier = &v + return s +} + +// The details of the subscription grant. +type SubscriptionGrantSummary struct { + _ struct{} `type:"structure"` + + // The assets included in the subscription grant. + Assets []*SubscribedAsset `locationName:"assets" type:"list"` + + // The timestamp of when a subscription grant was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The datazone user who created the subscription grant. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription grant + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The entity to which the subscription is granted. + // + // GrantedEntity is a required field + GrantedEntity *GrantedEntity `locationName:"grantedEntity" type:"structure" required:"true"` + + // The identifier of the subscription grant. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The status of the subscription grant. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantOverallStatus"` + + // The ID of the subscription grant. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` + + // The identifier of the target of the subscription grant. + // + // SubscriptionTargetId is a required field + SubscriptionTargetId *string `locationName:"subscriptionTargetId" type:"string" required:"true"` + + // The timestampf of when the subscription grant was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription grant. + UpdatedBy *string `locationName:"updatedBy" 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 SubscriptionGrantSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscriptionGrantSummary) GoString() string { + return s.String() +} + +// SetAssets sets the Assets field's value. +func (s *SubscriptionGrantSummary) SetAssets(v []*SubscribedAsset) *SubscriptionGrantSummary { + s.Assets = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *SubscriptionGrantSummary) SetCreatedAt(v time.Time) *SubscriptionGrantSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *SubscriptionGrantSummary) SetCreatedBy(v string) *SubscriptionGrantSummary { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *SubscriptionGrantSummary) SetDomainId(v string) *SubscriptionGrantSummary { + s.DomainId = &v + return s +} + +// SetGrantedEntity sets the GrantedEntity field's value. +func (s *SubscriptionGrantSummary) SetGrantedEntity(v *GrantedEntity) *SubscriptionGrantSummary { + s.GrantedEntity = v + return s +} + +// SetId sets the Id field's value. +func (s *SubscriptionGrantSummary) SetId(v string) *SubscriptionGrantSummary { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SubscriptionGrantSummary) SetStatus(v string) *SubscriptionGrantSummary { + s.Status = &v + return s +} + +// SetSubscriptionId sets the SubscriptionId field's value. +func (s *SubscriptionGrantSummary) SetSubscriptionId(v string) *SubscriptionGrantSummary { + s.SubscriptionId = &v + return s +} + +// SetSubscriptionTargetId sets the SubscriptionTargetId field's value. +func (s *SubscriptionGrantSummary) SetSubscriptionTargetId(v string) *SubscriptionGrantSummary { + s.SubscriptionTargetId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *SubscriptionGrantSummary) SetUpdatedAt(v time.Time) *SubscriptionGrantSummary { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *SubscriptionGrantSummary) SetUpdatedBy(v string) *SubscriptionGrantSummary { + s.UpdatedBy = &v + return s +} + +// The details of the subscription request. +type SubscriptionRequestSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when a subscription request was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription request. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The decision comment of the subscription request. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SubscriptionRequestSummary's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription request + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription request. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The reason for the subscription request. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SubscriptionRequestSummary's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the subscription request reviewer. + ReviewerId *string `locationName:"reviewerId" type:"string"` + + // The status of the subscription request. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionRequestStatus"` + + // The listings included in the subscription request. + // + // SubscribedListings is a required field + SubscribedListings []*SubscribedListing `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // The principals included in the subscription request. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipal `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription request was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The identifier of the Amazon DataZone user who updated the subscription request. + UpdatedBy *string `locationName:"updatedBy" 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 SubscriptionRequestSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscriptionRequestSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *SubscriptionRequestSummary) SetCreatedAt(v time.Time) *SubscriptionRequestSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *SubscriptionRequestSummary) SetCreatedBy(v string) *SubscriptionRequestSummary { + s.CreatedBy = &v + return s +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *SubscriptionRequestSummary) SetDecisionComment(v string) *SubscriptionRequestSummary { + s.DecisionComment = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *SubscriptionRequestSummary) SetDomainId(v string) *SubscriptionRequestSummary { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *SubscriptionRequestSummary) SetId(v string) *SubscriptionRequestSummary { + s.Id = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *SubscriptionRequestSummary) SetRequestReason(v string) *SubscriptionRequestSummary { + s.RequestReason = &v + return s +} + +// SetReviewerId sets the ReviewerId field's value. +func (s *SubscriptionRequestSummary) SetReviewerId(v string) *SubscriptionRequestSummary { + s.ReviewerId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SubscriptionRequestSummary) SetStatus(v string) *SubscriptionRequestSummary { + s.Status = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *SubscriptionRequestSummary) SetSubscribedListings(v []*SubscribedListing) *SubscriptionRequestSummary { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *SubscriptionRequestSummary) SetSubscribedPrincipals(v []*SubscribedPrincipal) *SubscriptionRequestSummary { + s.SubscribedPrincipals = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *SubscriptionRequestSummary) SetUpdatedAt(v time.Time) *SubscriptionRequestSummary { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *SubscriptionRequestSummary) SetUpdatedBy(v string) *SubscriptionRequestSummary { + s.UpdatedBy = &v + return s +} + +// The details of the subscription. +type SubscriptionSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when the subscription was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The retain permissions included in the subscription. + RetainPermissions *bool `locationName:"retainPermissions" type:"boolean"` + + // The status of the subscription. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionStatus"` + + // The listing included in the subscription. + // + // SubscribedListing is a required field + SubscribedListing *SubscribedListing `locationName:"subscribedListing" type:"structure" required:"true"` + + // The principal included in the subscription. + // + // SubscribedPrincipal is a required field + SubscribedPrincipal *SubscribedPrincipal `locationName:"subscribedPrincipal" type:"structure" required:"true"` + + // The identifier of the subscription request for the subscription. + SubscriptionRequestId *string `locationName:"subscriptionRequestId" type:"string"` + + // The timestamp of when the subscription was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription. + UpdatedBy *string `locationName:"updatedBy" 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 SubscriptionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscriptionSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *SubscriptionSummary) SetCreatedAt(v time.Time) *SubscriptionSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *SubscriptionSummary) SetCreatedBy(v string) *SubscriptionSummary { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *SubscriptionSummary) SetDomainId(v string) *SubscriptionSummary { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *SubscriptionSummary) SetId(v string) *SubscriptionSummary { + s.Id = &v + return s +} + +// SetRetainPermissions sets the RetainPermissions field's value. +func (s *SubscriptionSummary) SetRetainPermissions(v bool) *SubscriptionSummary { + s.RetainPermissions = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SubscriptionSummary) SetStatus(v string) *SubscriptionSummary { + s.Status = &v + return s +} + +// SetSubscribedListing sets the SubscribedListing field's value. +func (s *SubscriptionSummary) SetSubscribedListing(v *SubscribedListing) *SubscriptionSummary { + s.SubscribedListing = v + return s +} + +// SetSubscribedPrincipal sets the SubscribedPrincipal field's value. +func (s *SubscriptionSummary) SetSubscribedPrincipal(v *SubscribedPrincipal) *SubscriptionSummary { + s.SubscribedPrincipal = v + return s +} + +// SetSubscriptionRequestId sets the SubscriptionRequestId field's value. +func (s *SubscriptionSummary) SetSubscriptionRequestId(v string) *SubscriptionSummary { + s.SubscriptionRequestId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *SubscriptionSummary) SetUpdatedAt(v time.Time) *SubscriptionSummary { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *SubscriptionSummary) SetUpdatedBy(v string) *SubscriptionSummary { + s.UpdatedBy = &v + return s +} + +// The details of the subscription target configuration. +type SubscriptionTargetForm struct { + _ struct{} `type:"structure"` + + // The content of the subscription target configuration. + // + // Content is a required field + Content *string `locationName:"content" type:"string" required:"true"` + + // The form name included in the subscription target configuration. + // + // FormName is a required field + FormName *string `locationName:"formName" 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 SubscriptionTargetForm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscriptionTargetForm) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SubscriptionTargetForm) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SubscriptionTargetForm"} + if s.Content == nil { + invalidParams.Add(request.NewErrParamRequired("Content")) + } + if s.FormName == nil { + invalidParams.Add(request.NewErrParamRequired("FormName")) + } + if s.FormName != nil && len(*s.FormName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FormName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContent sets the Content field's value. +func (s *SubscriptionTargetForm) SetContent(v string) *SubscriptionTargetForm { + s.Content = &v + return s +} + +// SetFormName sets the FormName field's value. +func (s *SubscriptionTargetForm) SetFormName(v string) *SubscriptionTargetForm { + s.FormName = &v + return s +} + +// The details of the subscription target. +type SubscriptionTargetSummary struct { + _ struct{} `type:"structure"` + + // The asset types included in the subscription target. + // + // ApplicableAssetTypes is a required field + ApplicableAssetTypes []*string `locationName:"applicableAssetTypes" type:"list" required:"true"` + + // The authorized principals included in the subscription target. + // + // AuthorizedPrincipals is a required field + AuthorizedPrincipals []*string `locationName:"authorizedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription target was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription target. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which the subscription target + // exists. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the environment of the subscription target. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // The identifier of the subscription target. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The manage access role specified in the subscription target. + // + // ManageAccessRole is a required field + ManageAccessRole *string `locationName:"manageAccessRole" type:"string" required:"true"` + + // The name of the subscription target. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SubscriptionTargetSummary's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project specified in the subscription target. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider of the subscription target. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The configuration of the subscription target. + // + // SubscriptionTargetConfig is a required field + SubscriptionTargetConfig []*SubscriptionTargetForm `locationName:"subscriptionTargetConfig" type:"list" required:"true"` + + // The type of the subscription target. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true"` + + // The timestamp of when the subscription target was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the subscription target. + UpdatedBy *string `locationName:"updatedBy" 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 SubscriptionTargetSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubscriptionTargetSummary) GoString() string { + return s.String() +} + +// SetApplicableAssetTypes sets the ApplicableAssetTypes field's value. +func (s *SubscriptionTargetSummary) SetApplicableAssetTypes(v []*string) *SubscriptionTargetSummary { + s.ApplicableAssetTypes = v + return s +} + +// SetAuthorizedPrincipals sets the AuthorizedPrincipals field's value. +func (s *SubscriptionTargetSummary) SetAuthorizedPrincipals(v []*string) *SubscriptionTargetSummary { + s.AuthorizedPrincipals = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *SubscriptionTargetSummary) SetCreatedAt(v time.Time) *SubscriptionTargetSummary { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *SubscriptionTargetSummary) SetCreatedBy(v string) *SubscriptionTargetSummary { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *SubscriptionTargetSummary) SetDomainId(v string) *SubscriptionTargetSummary { + s.DomainId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *SubscriptionTargetSummary) SetEnvironmentId(v string) *SubscriptionTargetSummary { + s.EnvironmentId = &v + return s +} + +// SetId sets the Id field's value. +func (s *SubscriptionTargetSummary) SetId(v string) *SubscriptionTargetSummary { + s.Id = &v + return s +} + +// SetManageAccessRole sets the ManageAccessRole field's value. +func (s *SubscriptionTargetSummary) SetManageAccessRole(v string) *SubscriptionTargetSummary { + s.ManageAccessRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *SubscriptionTargetSummary) SetName(v string) *SubscriptionTargetSummary { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *SubscriptionTargetSummary) SetProjectId(v string) *SubscriptionTargetSummary { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *SubscriptionTargetSummary) SetProvider(v string) *SubscriptionTargetSummary { + s.Provider = &v + return s +} + +// SetSubscriptionTargetConfig sets the SubscriptionTargetConfig field's value. +func (s *SubscriptionTargetSummary) SetSubscriptionTargetConfig(v []*SubscriptionTargetForm) *SubscriptionTargetSummary { + s.SubscriptionTargetConfig = v + return s +} + +// SetType sets the Type field's value. +func (s *SubscriptionTargetSummary) SetType(v string) *SubscriptionTargetSummary { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *SubscriptionTargetSummary) SetUpdatedAt(v time.Time) *SubscriptionTargetSummary { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *SubscriptionTargetSummary) SetUpdatedBy(v string) *SubscriptionTargetSummary { + s.UpdatedBy = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource to be tagged in Amazon DataZone. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // Specifies the tags for the TagResource action. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The details of the term relations. +type TermRelations struct { + _ struct{} `type:"structure"` + + // The classifies of the term relations. + Classifies []*string `locationName:"classifies" min:"1" type:"list"` + + // The isA property of the term relations. + IsA []*string `locationName:"isA" 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 TermRelations) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TermRelations) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TermRelations) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TermRelations"} + if s.Classifies != nil && len(s.Classifies) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Classifies", 1)) + } + if s.IsA != nil && len(s.IsA) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IsA", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClassifies sets the Classifies field's value. +func (s *TermRelations) SetClassifies(v []*string) *TermRelations { + s.Classifies = v + return s +} + +// SetIsA sets the IsA field's value. +func (s *TermRelations) SetIsA(v []*string) *TermRelations { + s.IsA = v + return s +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The topic of the notification. +type Topic struct { + _ struct{} `type:"structure"` + + // The details of the resource mentioned in a notification. + // + // Resource is a required field + Resource *NotificationResource `locationName:"resource" type:"structure" required:"true"` + + // The role of the resource mentioned in a notification. + // + // Role is a required field + Role *string `locationName:"role" type:"string" required:"true" enum:"NotificationRole"` + + // The subject of the resource mentioned in a notification. + // + // Subject is a required field + Subject *string `locationName:"subject" 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 Topic) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Topic) GoString() string { + return s.String() +} + +// SetResource sets the Resource field's value. +func (s *Topic) SetResource(v *NotificationResource) *Topic { + s.Resource = v + return s +} + +// SetRole sets the Role field's value. +func (s *Topic) SetRole(v string) *Topic { + s.Role = &v + return s +} + +// SetSubject sets the Subject field's value. +func (s *Topic) SetSubject(v string) *Topic { + s.Subject = &v + return s +} + +// You do not have permission to perform this action. +type UnauthorizedException 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 UnauthorizedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnauthorizedException) GoString() string { + return s.String() +} + +func newErrorUnauthorizedException(v protocol.ResponseMetadata) error { + return &UnauthorizedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnauthorizedException) Code() string { + return "UnauthorizedException" +} + +// Message returns the exception's message. +func (s *UnauthorizedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnauthorizedException) OrigErr() error { + return nil +} + +func (s *UnauthorizedException) 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 *UnauthorizedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnauthorizedException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource to be untagged in Amazon DataZone. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // Specifies the tag keys for the UntagResource action. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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 UpdateDataSourceInput struct { + _ struct{} `type:"structure"` + + // The asset forms to be updated as part of the UpdateDataSource action. + // + // AssetFormsInput is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceInput's + // String and GoString methods. + AssetFormsInput []*FormInput_ `locationName:"assetFormsInput" type:"list" sensitive:"true"` + + // The configuration to be updated as part of the UpdateDataSource action. + Configuration *DataSourceConfigurationInput_ `locationName:"configuration" type:"structure"` + + // The description to be updated as part of the UpdateDataSource action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the domain in which to update a data source. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The enable setting to be updated as part of the UpdateDataSource action. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The identifier of the data source to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The name to be updated as part of the UpdateDataSource action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceInput's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The publish on import setting to be updated as part of the UpdateDataSource + // action. + PublishOnImport *bool `locationName:"publishOnImport" type:"boolean"` + + // The recommendation to be updated as part of the UpdateDataSource action. + Recommendation *RecommendationConfiguration `locationName:"recommendation" type:"structure"` + + // The schedule to be updated as part of the UpdateDataSource action. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceInput's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.AssetFormsInput != nil { + for i, v := range s.AssetFormsInput { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetFormsInput", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.Schedule != nil { + if err := s.Schedule.Validate(); err != nil { + invalidParams.AddNested("Schedule", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetFormsInput sets the AssetFormsInput field's value. +func (s *UpdateDataSourceInput) SetAssetFormsInput(v []*FormInput_) *UpdateDataSourceInput { + s.AssetFormsInput = v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateDataSourceInput) SetConfiguration(v *DataSourceConfigurationInput_) *UpdateDataSourceInput { + s.Configuration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateDataSourceInput) SetDescription(v string) *UpdateDataSourceInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateDataSourceInput) SetDomainIdentifier(v string) *UpdateDataSourceInput { + s.DomainIdentifier = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *UpdateDataSourceInput) SetEnableSetting(v string) *UpdateDataSourceInput { + s.EnableSetting = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateDataSourceInput) SetIdentifier(v string) *UpdateDataSourceInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDataSourceInput) SetName(v string) *UpdateDataSourceInput { + s.Name = &v + return s +} + +// SetPublishOnImport sets the PublishOnImport field's value. +func (s *UpdateDataSourceInput) SetPublishOnImport(v bool) *UpdateDataSourceInput { + s.PublishOnImport = &v + return s +} + +// SetRecommendation sets the Recommendation field's value. +func (s *UpdateDataSourceInput) SetRecommendation(v *RecommendationConfiguration) *UpdateDataSourceInput { + s.Recommendation = v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *UpdateDataSourceInput) SetSchedule(v *ScheduleConfiguration) *UpdateDataSourceInput { + s.Schedule = v + return s +} + +type UpdateDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The asset forms to be updated as part of the UpdateDataSource action. + AssetFormsOutput []*FormOutput_ `locationName:"assetFormsOutput" type:"list"` + + // The configuration to be updated as part of the UpdateDataSource action. + Configuration *DataSourceConfigurationOutput_ `locationName:"configuration" type:"structure"` + + // The timestamp of when the data source was updated. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The description to be updated as part of the UpdateDataSource action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a data source is to + // be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The enable setting to be updated as part of the UpdateDataSource action. + EnableSetting *string `locationName:"enableSetting" type:"string" enum:"EnableSetting"` + + // The identifier of the environment in which a data source is to be updated. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + ErrorMessage *DataSourceErrorMessage `locationName:"errorMessage" type:"structure"` + + // The identifier of the data source to be updated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp of when the data source was last run. + LastRunAt *time.Time `locationName:"lastRunAt" type:"timestamp" timestampFormat:"iso8601"` + + // The last run error message of the data source. + LastRunErrorMessage *DataSourceErrorMessage `locationName:"lastRunErrorMessage" type:"structure"` + + // The last run status of the data source. + LastRunStatus *string `locationName:"lastRunStatus" type:"string" enum:"DataSourceRunStatus"` + + // The name to be updated as part of the UpdateDataSource action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project where data source is to be updated. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The publish on import setting to be updated as part of the UpdateDataSource + // action. + PublishOnImport *bool `locationName:"publishOnImport" type:"boolean"` + + // The recommendation to be updated as part of the UpdateDataSource action. + Recommendation *RecommendationConfiguration `locationName:"recommendation" type:"structure"` + + // The schedule to be updated as part of the UpdateDataSource action. + // + // Schedule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDataSourceOutput's + // String and GoString methods. + Schedule *ScheduleConfiguration `locationName:"schedule" type:"structure" sensitive:"true"` + + // The status to be updated as part of the UpdateDataSource action. + Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The type to be updated as part of the UpdateDataSource action. + Type *string `locationName:"type" min:"1" type:"string"` + + // The timestamp of when the data source was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceOutput) GoString() string { + return s.String() +} + +// SetAssetFormsOutput sets the AssetFormsOutput field's value. +func (s *UpdateDataSourceOutput) SetAssetFormsOutput(v []*FormOutput_) *UpdateDataSourceOutput { + s.AssetFormsOutput = v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateDataSourceOutput) SetConfiguration(v *DataSourceConfigurationOutput_) *UpdateDataSourceOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateDataSourceOutput) SetCreatedAt(v time.Time) *UpdateDataSourceOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateDataSourceOutput) SetDescription(v string) *UpdateDataSourceOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateDataSourceOutput) SetDomainId(v string) *UpdateDataSourceOutput { + s.DomainId = &v + return s +} + +// SetEnableSetting sets the EnableSetting field's value. +func (s *UpdateDataSourceOutput) SetEnableSetting(v string) *UpdateDataSourceOutput { + s.EnableSetting = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *UpdateDataSourceOutput) SetEnvironmentId(v string) *UpdateDataSourceOutput { + s.EnvironmentId = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *UpdateDataSourceOutput) SetErrorMessage(v *DataSourceErrorMessage) *UpdateDataSourceOutput { + s.ErrorMessage = v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateDataSourceOutput) SetId(v string) *UpdateDataSourceOutput { + s.Id = &v + return s +} + +// SetLastRunAt sets the LastRunAt field's value. +func (s *UpdateDataSourceOutput) SetLastRunAt(v time.Time) *UpdateDataSourceOutput { + s.LastRunAt = &v + return s +} + +// SetLastRunErrorMessage sets the LastRunErrorMessage field's value. +func (s *UpdateDataSourceOutput) SetLastRunErrorMessage(v *DataSourceErrorMessage) *UpdateDataSourceOutput { + s.LastRunErrorMessage = v + return s +} + +// SetLastRunStatus sets the LastRunStatus field's value. +func (s *UpdateDataSourceOutput) SetLastRunStatus(v string) *UpdateDataSourceOutput { + s.LastRunStatus = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDataSourceOutput) SetName(v string) *UpdateDataSourceOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *UpdateDataSourceOutput) SetProjectId(v string) *UpdateDataSourceOutput { + s.ProjectId = &v + return s +} + +// SetPublishOnImport sets the PublishOnImport field's value. +func (s *UpdateDataSourceOutput) SetPublishOnImport(v bool) *UpdateDataSourceOutput { + s.PublishOnImport = &v + return s +} + +// SetRecommendation sets the Recommendation field's value. +func (s *UpdateDataSourceOutput) SetRecommendation(v *RecommendationConfiguration) *UpdateDataSourceOutput { + s.Recommendation = v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *UpdateDataSourceOutput) SetSchedule(v *ScheduleConfiguration) *UpdateDataSourceOutput { + s.Schedule = v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateDataSourceOutput) SetStatus(v string) *UpdateDataSourceOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateDataSourceOutput) SetType(v string) *UpdateDataSourceOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateDataSourceOutput) SetUpdatedAt(v time.Time) *UpdateDataSourceOutput { + s.UpdatedAt = &v + return s +} + +type UpdateDomainInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `location:"querystring" locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The description to be updated as part of the UpdateDomain action. + Description *string `locationName:"description" type:"string"` + + // The domain execution role to be updated as part of the UpdateDomain action. + DomainExecutionRole *string `locationName:"domainExecutionRole" type:"string"` + + // The ID of the Amazon Web Services domain that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The name to be updated as part of the UpdateDomain action. + Name *string `locationName:"name" type:"string"` + + // The single sign-on option to be updated as part of the UpdateDomain action. + SingleSignOn *SingleSignOn `locationName:"singleSignOn" 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 UpdateDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDomainInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateDomainInput) SetClientToken(v string) *UpdateDomainInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateDomainInput) SetDescription(v string) *UpdateDomainInput { + s.Description = &v + return s +} + +// SetDomainExecutionRole sets the DomainExecutionRole field's value. +func (s *UpdateDomainInput) SetDomainExecutionRole(v string) *UpdateDomainInput { + s.DomainExecutionRole = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateDomainInput) SetIdentifier(v string) *UpdateDomainInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDomainInput) SetName(v string) *UpdateDomainInput { + s.Name = &v + return s +} + +// SetSingleSignOn sets the SingleSignOn field's value. +func (s *UpdateDomainInput) SetSingleSignOn(v *SingleSignOn) *UpdateDomainInput { + s.SingleSignOn = v + return s +} + +type UpdateDomainOutput struct { + _ struct{} `type:"structure"` + + // The description to be updated as part of the UpdateDomain action. + Description *string `locationName:"description" type:"string"` + + // The domain execution role to be updated as part of the UpdateDomain action. + DomainExecutionRole *string `locationName:"domainExecutionRole" type:"string"` + + // The identifier of the Amazon DataZone domain. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // Specifies the timestamp of when the domain was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"` + + // The name to be updated as part of the UpdateDomain action. + Name *string `locationName:"name" type:"string"` + + // The single sign-on option of the Amazon DataZone domain. + SingleSignOn *SingleSignOn `locationName:"singleSignOn" 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 UpdateDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDomainOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *UpdateDomainOutput) SetDescription(v string) *UpdateDomainOutput { + s.Description = &v + return s +} + +// SetDomainExecutionRole sets the DomainExecutionRole field's value. +func (s *UpdateDomainOutput) SetDomainExecutionRole(v string) *UpdateDomainOutput { + s.DomainExecutionRole = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateDomainOutput) SetId(v string) *UpdateDomainOutput { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *UpdateDomainOutput) SetLastUpdatedAt(v time.Time) *UpdateDomainOutput { + s.LastUpdatedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDomainOutput) SetName(v string) *UpdateDomainOutput { + s.Name = &v + return s +} + +// SetSingleSignOn sets the SingleSignOn field's value. +func (s *UpdateDomainOutput) SetSingleSignOn(v *SingleSignOn) *UpdateDomainOutput { + s.SingleSignOn = v + return s +} + +type UpdateEnvironmentInput struct { + _ struct{} `type:"structure"` + + // The description to be updated as part of the UpdateEnvironment action. + Description *string `locationName:"description" type:"string"` + + // The identifier of the domain in which the environment is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The glossary terms to be updated as part of the UpdateEnvironment action. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The identifier of the environment that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The name to be updated as part of the UpdateEnvironment action. + Name *string `locationName:"name" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GlossaryTerms != nil && len(s.GlossaryTerms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlossaryTerms", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentInput) SetDescription(v string) *UpdateEnvironmentInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateEnvironmentInput) SetDomainIdentifier(v string) *UpdateEnvironmentInput { + s.DomainIdentifier = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *UpdateEnvironmentInput) SetGlossaryTerms(v []*string) *UpdateEnvironmentInput { + s.GlossaryTerms = v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateEnvironmentInput) SetIdentifier(v string) *UpdateEnvironmentInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentInput) SetName(v string) *UpdateEnvironmentInput { + s.Name = &v + return s +} + +type UpdateEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Web Services account in which the environment + // is to be updated. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services Region in which the environment is updated. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when the environment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the environment. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The deployment properties to be updated as part of the UpdateEnvironment + // action. + DeploymentProperties *DeploymentProperties `locationName:"deploymentProperties" type:"structure"` + + // The description to be updated as part of the UpdateEnvironment action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the domain in which the environment is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The environment actions to be updated as part of the UpdateEnvironment action. + EnvironmentActions []*ConfigurableEnvironmentAction `locationName:"environmentActions" type:"list"` + + // The blueprint identifier of the environment. + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string"` + + // The profile identifier of the environment. + // + // EnvironmentProfileId is a required field + EnvironmentProfileId *string `locationName:"environmentProfileId" type:"string" required:"true"` + + // The glossary terms to be updated as part of the UpdateEnvironment action. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The identifier of the environment that is to be updated. + Id *string `locationName:"id" type:"string"` + + // The last deployment of the environment. + LastDeployment *Deployment `locationName:"lastDeployment" type:"structure"` + + // The name to be updated as part of the UpdateEnvironment action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The project identifier of the environment. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider identifier of the environment. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The provisioned resources to be updated as part of the UpdateEnvironment + // action. + ProvisionedResources []*Resource `locationName:"provisionedResources" type:"list"` + + // The provisioning properties to be updated as part of the UpdateEnvironment + // action. + ProvisioningProperties *ProvisioningProperties `locationName:"provisioningProperties" type:"structure"` + + // The status to be updated as part of the UpdateEnvironment action. + Status *string `locationName:"status" type:"string" enum:"EnvironmentStatus"` + + // The timestamp of when the environment was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters to be updated as part of the UpdateEnvironment action. + UserParameters []*CustomParameter `locationName:"userParameters" 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 UpdateEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateEnvironmentOutput) SetAwsAccountId(v string) *UpdateEnvironmentOutput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *UpdateEnvironmentOutput) SetAwsAccountRegion(v string) *UpdateEnvironmentOutput { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateEnvironmentOutput) SetCreatedAt(v time.Time) *UpdateEnvironmentOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *UpdateEnvironmentOutput) SetCreatedBy(v string) *UpdateEnvironmentOutput { + s.CreatedBy = &v + return s +} + +// SetDeploymentProperties sets the DeploymentProperties field's value. +func (s *UpdateEnvironmentOutput) SetDeploymentProperties(v *DeploymentProperties) *UpdateEnvironmentOutput { + s.DeploymentProperties = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentOutput) SetDescription(v string) *UpdateEnvironmentOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateEnvironmentOutput) SetDomainId(v string) *UpdateEnvironmentOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentActions sets the EnvironmentActions field's value. +func (s *UpdateEnvironmentOutput) SetEnvironmentActions(v []*ConfigurableEnvironmentAction) *UpdateEnvironmentOutput { + s.EnvironmentActions = v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *UpdateEnvironmentOutput) SetEnvironmentBlueprintId(v string) *UpdateEnvironmentOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetEnvironmentProfileId sets the EnvironmentProfileId field's value. +func (s *UpdateEnvironmentOutput) SetEnvironmentProfileId(v string) *UpdateEnvironmentOutput { + s.EnvironmentProfileId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *UpdateEnvironmentOutput) SetGlossaryTerms(v []*string) *UpdateEnvironmentOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateEnvironmentOutput) SetId(v string) *UpdateEnvironmentOutput { + s.Id = &v + return s +} + +// SetLastDeployment sets the LastDeployment field's value. +func (s *UpdateEnvironmentOutput) SetLastDeployment(v *Deployment) *UpdateEnvironmentOutput { + s.LastDeployment = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentOutput) SetName(v string) *UpdateEnvironmentOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *UpdateEnvironmentOutput) SetProjectId(v string) *UpdateEnvironmentOutput { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *UpdateEnvironmentOutput) SetProvider(v string) *UpdateEnvironmentOutput { + s.Provider = &v + return s +} + +// SetProvisionedResources sets the ProvisionedResources field's value. +func (s *UpdateEnvironmentOutput) SetProvisionedResources(v []*Resource) *UpdateEnvironmentOutput { + s.ProvisionedResources = v + return s +} + +// SetProvisioningProperties sets the ProvisioningProperties field's value. +func (s *UpdateEnvironmentOutput) SetProvisioningProperties(v *ProvisioningProperties) *UpdateEnvironmentOutput { + s.ProvisioningProperties = v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateEnvironmentOutput) SetStatus(v string) *UpdateEnvironmentOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateEnvironmentOutput) SetUpdatedAt(v time.Time) *UpdateEnvironmentOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *UpdateEnvironmentOutput) SetUserParameters(v []*CustomParameter) *UpdateEnvironmentOutput { + s.UserParameters = v + return s +} + +type UpdateEnvironmentProfileInput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account in which a specified environment profile + // is to be udpated. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services Region in which a specified environment profile is + // to be updated. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The description to be updated as part of the UpdateEnvironmentProfile action. + Description *string `locationName:"description" type:"string"` + + // The identifier of the Amazon DataZone domain in which an environment profile + // is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the environment profile that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The name to be updated as part of the UpdateEnvironmentProfile action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentProfileInput's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The user parameters to be updated as part of the UpdateEnvironmentProfile + // action. + UserParameters []*EnvironmentParameter `locationName:"userParameters" 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 UpdateEnvironmentProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateEnvironmentProfileInput) SetAwsAccountId(v string) *UpdateEnvironmentProfileInput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *UpdateEnvironmentProfileInput) SetAwsAccountRegion(v string) *UpdateEnvironmentProfileInput { + s.AwsAccountRegion = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentProfileInput) SetDescription(v string) *UpdateEnvironmentProfileInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateEnvironmentProfileInput) SetDomainIdentifier(v string) *UpdateEnvironmentProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateEnvironmentProfileInput) SetIdentifier(v string) *UpdateEnvironmentProfileInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentProfileInput) SetName(v string) *UpdateEnvironmentProfileInput { + s.Name = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *UpdateEnvironmentProfileInput) SetUserParameters(v []*EnvironmentParameter) *UpdateEnvironmentProfileInput { + s.UserParameters = v + return s +} + +type UpdateEnvironmentProfileOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account in which a specified environment profile + // is to be udpated. + AwsAccountId *string `locationName:"awsAccountId" type:"string"` + + // The Amazon Web Services Region in which a specified environment profile is + // to be updated. + AwsAccountRegion *string `locationName:"awsAccountRegion" type:"string"` + + // The timestamp of when the environment profile was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the environment profile. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description to be updated as part of the UpdateEnvironmentProfile action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentProfileOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which the environment profile + // is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the blueprint of the environment profile that is to be + // updated. + // + // EnvironmentBlueprintId is a required field + EnvironmentBlueprintId *string `locationName:"environmentBlueprintId" type:"string" required:"true"` + + // The identifier of the environment profile that is to be udpated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name to be updated as part of the UpdateEnvironmentProfile action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentProfileOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project of the environment profile that is to be updated. + ProjectId *string `locationName:"projectId" type:"string"` + + // The timestamp of when the environment profile was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The user parameters to be updated as part of the UpdateEnvironmentProfile + // action. + UserParameters []*CustomParameter `locationName:"userParameters" 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 UpdateEnvironmentProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentProfileOutput) GoString() string { + return s.String() +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateEnvironmentProfileOutput) SetAwsAccountId(v string) *UpdateEnvironmentProfileOutput { + s.AwsAccountId = &v + return s +} + +// SetAwsAccountRegion sets the AwsAccountRegion field's value. +func (s *UpdateEnvironmentProfileOutput) SetAwsAccountRegion(v string) *UpdateEnvironmentProfileOutput { + s.AwsAccountRegion = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateEnvironmentProfileOutput) SetCreatedAt(v time.Time) *UpdateEnvironmentProfileOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *UpdateEnvironmentProfileOutput) SetCreatedBy(v string) *UpdateEnvironmentProfileOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentProfileOutput) SetDescription(v string) *UpdateEnvironmentProfileOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateEnvironmentProfileOutput) SetDomainId(v string) *UpdateEnvironmentProfileOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentBlueprintId sets the EnvironmentBlueprintId field's value. +func (s *UpdateEnvironmentProfileOutput) SetEnvironmentBlueprintId(v string) *UpdateEnvironmentProfileOutput { + s.EnvironmentBlueprintId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateEnvironmentProfileOutput) SetId(v string) *UpdateEnvironmentProfileOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentProfileOutput) SetName(v string) *UpdateEnvironmentProfileOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *UpdateEnvironmentProfileOutput) SetProjectId(v string) *UpdateEnvironmentProfileOutput { + s.ProjectId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateEnvironmentProfileOutput) SetUpdatedAt(v time.Time) *UpdateEnvironmentProfileOutput { + s.UpdatedAt = &v + return s +} + +// SetUserParameters sets the UserParameters field's value. +func (s *UpdateEnvironmentProfileOutput) SetUserParameters(v []*CustomParameter) *UpdateEnvironmentProfileOutput { + s.UserParameters = v + return s +} + +type UpdateGlossaryInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that is provided to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description to be updated as part of the UpdateGlossary action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a business glossary + // is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the business glossary to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The name to be updated as part of the UpdateGlossary action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryInput's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The status to be updated as part of the UpdateGlossary action. + Status *string `locationName:"status" type:"string" enum:"GlossaryStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlossaryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlossaryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateGlossaryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateGlossaryInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateGlossaryInput) SetClientToken(v string) *UpdateGlossaryInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateGlossaryInput) SetDescription(v string) *UpdateGlossaryInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateGlossaryInput) SetDomainIdentifier(v string) *UpdateGlossaryInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateGlossaryInput) SetIdentifier(v string) *UpdateGlossaryInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateGlossaryInput) SetName(v string) *UpdateGlossaryInput { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateGlossaryInput) SetStatus(v string) *UpdateGlossaryInput { + s.Status = &v + return s +} + +type UpdateGlossaryOutput struct { + _ struct{} `type:"structure"` + + // The description to be updated as part of the UpdateGlossary action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a business glossary + // is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the business glossary that is to be updated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The name to be updated as part of the UpdateGlossary action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project in which to update a business glossary. + // + // OwningProjectId is a required field + OwningProjectId *string `locationName:"owningProjectId" type:"string" required:"true"` + + // The status to be updated as part of the UpdateGlossary action. + Status *string `locationName:"status" type:"string" enum:"GlossaryStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlossaryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlossaryOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *UpdateGlossaryOutput) SetDescription(v string) *UpdateGlossaryOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateGlossaryOutput) SetDomainId(v string) *UpdateGlossaryOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateGlossaryOutput) SetId(v string) *UpdateGlossaryOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateGlossaryOutput) SetName(v string) *UpdateGlossaryOutput { + s.Name = &v + return s +} + +// SetOwningProjectId sets the OwningProjectId field's value. +func (s *UpdateGlossaryOutput) SetOwningProjectId(v string) *UpdateGlossaryOutput { + s.OwningProjectId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateGlossaryOutput) SetStatus(v string) *UpdateGlossaryOutput { + s.Status = &v + return s +} + +type UpdateGlossaryTermInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which a business glossary + // term is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the business glossary in which a term is to be updated. + GlossaryIdentifier *string `locationName:"glossaryIdentifier" type:"string"` + + // The identifier of the business glossary term that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The long description to be updated as part of the UpdateGlossaryTerm action. + // + // LongDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryTermInput's + // String and GoString methods. + LongDescription *string `locationName:"longDescription" type:"string" sensitive:"true"` + + // The name to be updated as part of the UpdateGlossaryTerm action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryTermInput's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The short description to be updated as part of the UpdateGlossaryTerm action. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryTermInput's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` + + // The status to be updated as part of the UpdateGlossaryTerm action. + Status *string `locationName:"status" type:"string" enum:"GlossaryTermStatus"` + + // The term relations to be updated as part of the UpdateGlossaryTerm action. + TermRelations *TermRelations `locationName:"termRelations" 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 UpdateGlossaryTermInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlossaryTermInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateGlossaryTermInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateGlossaryTermInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TermRelations != nil { + if err := s.TermRelations.Validate(); err != nil { + invalidParams.AddNested("TermRelations", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateGlossaryTermInput) SetDomainIdentifier(v string) *UpdateGlossaryTermInput { + s.DomainIdentifier = &v + return s +} + +// SetGlossaryIdentifier sets the GlossaryIdentifier field's value. +func (s *UpdateGlossaryTermInput) SetGlossaryIdentifier(v string) *UpdateGlossaryTermInput { + s.GlossaryIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateGlossaryTermInput) SetIdentifier(v string) *UpdateGlossaryTermInput { + s.Identifier = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *UpdateGlossaryTermInput) SetLongDescription(v string) *UpdateGlossaryTermInput { + s.LongDescription = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateGlossaryTermInput) SetName(v string) *UpdateGlossaryTermInput { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *UpdateGlossaryTermInput) SetShortDescription(v string) *UpdateGlossaryTermInput { + s.ShortDescription = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateGlossaryTermInput) SetStatus(v string) *UpdateGlossaryTermInput { + s.Status = &v + return s +} + +// SetTermRelations sets the TermRelations field's value. +func (s *UpdateGlossaryTermInput) SetTermRelations(v *TermRelations) *UpdateGlossaryTermInput { + s.TermRelations = v + return s +} + +type UpdateGlossaryTermOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which a business glossary + // term is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the business glossary in which a term is to be updated. + // + // GlossaryId is a required field + GlossaryId *string `locationName:"glossaryId" type:"string" required:"true"` + + // The identifier of the business glossary term that is to be updated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The long description to be updated as part of the UpdateGlossaryTerm action. + // + // LongDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryTermOutput's + // String and GoString methods. + LongDescription *string `locationName:"longDescription" type:"string" sensitive:"true"` + + // The name to be updated as part of the UpdateGlossaryTerm action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryTermOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The short description to be updated as part of the UpdateGlossaryTerm action. + // + // ShortDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGlossaryTermOutput's + // String and GoString methods. + ShortDescription *string `locationName:"shortDescription" type:"string" sensitive:"true"` + + // The status to be updated as part of the UpdateGlossaryTerm action. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GlossaryTermStatus"` + + // The term relations to be updated as part of the UpdateGlossaryTerm action. + TermRelations *TermRelations `locationName:"termRelations" 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 UpdateGlossaryTermOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlossaryTermOutput) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateGlossaryTermOutput) SetDomainId(v string) *UpdateGlossaryTermOutput { + s.DomainId = &v + return s +} + +// SetGlossaryId sets the GlossaryId field's value. +func (s *UpdateGlossaryTermOutput) SetGlossaryId(v string) *UpdateGlossaryTermOutput { + s.GlossaryId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateGlossaryTermOutput) SetId(v string) *UpdateGlossaryTermOutput { + s.Id = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *UpdateGlossaryTermOutput) SetLongDescription(v string) *UpdateGlossaryTermOutput { + s.LongDescription = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateGlossaryTermOutput) SetName(v string) *UpdateGlossaryTermOutput { + s.Name = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *UpdateGlossaryTermOutput) SetShortDescription(v string) *UpdateGlossaryTermOutput { + s.ShortDescription = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateGlossaryTermOutput) SetStatus(v string) *UpdateGlossaryTermOutput { + s.Status = &v + return s +} + +// SetTermRelations sets the TermRelations field's value. +func (s *UpdateGlossaryTermOutput) SetTermRelations(v *TermRelations) *UpdateGlossaryTermOutput { + s.TermRelations = v + return s +} + +type UpdateGroupProfileInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which a group profile is + // updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the group profile that is updated. + // + // GroupIdentifier is a required field + GroupIdentifier *string `location:"uri" locationName:"groupIdentifier" type:"string" required:"true"` + + // The status of the group profile that is updated. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GroupProfileStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGroupProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGroupProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateGroupProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateGroupProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GroupIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("GroupIdentifier")) + } + if s.GroupIdentifier != nil && len(*s.GroupIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupIdentifier", 1)) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateGroupProfileInput) SetDomainIdentifier(v string) *UpdateGroupProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetGroupIdentifier sets the GroupIdentifier field's value. +func (s *UpdateGroupProfileInput) SetGroupIdentifier(v string) *UpdateGroupProfileInput { + s.GroupIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateGroupProfileInput) SetStatus(v string) *UpdateGroupProfileInput { + s.Status = &v + return s +} + +type UpdateGroupProfileOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which a group profile is + // updated. + DomainId *string `locationName:"domainId" type:"string"` + + // The name of the group profile that is updated. + // + // GroupName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateGroupProfileOutput's + // String and GoString methods. + GroupName *string `locationName:"groupName" min:"1" type:"string" sensitive:"true"` + + // The identifier of the group profile that is updated. + Id *string `locationName:"id" type:"string"` + + // The status of the group profile that is updated. + Status *string `locationName:"status" type:"string" enum:"GroupProfileStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGroupProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGroupProfileOutput) GoString() string { + return s.String() +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateGroupProfileOutput) SetDomainId(v string) *UpdateGroupProfileOutput { + s.DomainId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *UpdateGroupProfileOutput) SetGroupName(v string) *UpdateGroupProfileOutput { + s.GroupName = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateGroupProfileOutput) SetId(v string) *UpdateGroupProfileOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateGroupProfileOutput) SetStatus(v string) *UpdateGroupProfileOutput { + s.Status = &v + return s +} + +type UpdateProjectInput struct { + _ struct{} `type:"structure"` + + // The description to be updated as part of the UpdateProject action. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProjectInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a project is to be + // updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The glossary terms to be updated as part of the UpdateProject action. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The identifier of the project that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The name to be updated as part of the UpdateProject action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProjectInput's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProjectInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProjectInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateProjectInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateProjectInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.GlossaryTerms != nil && len(s.GlossaryTerms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlossaryTerms", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateProjectInput) SetDescription(v string) *UpdateProjectInput { + s.Description = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateProjectInput) SetDomainIdentifier(v string) *UpdateProjectInput { + s.DomainIdentifier = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *UpdateProjectInput) SetGlossaryTerms(v []*string) *UpdateProjectInput { + s.GlossaryTerms = v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateProjectInput) SetIdentifier(v string) *UpdateProjectInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateProjectInput) SetName(v string) *UpdateProjectInput { + s.Name = &v + return s +} + +type UpdateProjectOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the project was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon DataZone user who created the project. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The description of the project that is to be updated. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProjectOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a project is updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The glossary terms of the project that are to be updated. + GlossaryTerms []*string `locationName:"glossaryTerms" min:"1" type:"list"` + + // The identifier of the project that is to be updated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp of when the project was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the project that is to be updated. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProjectOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProjectOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateProjectOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateProjectOutput) SetCreatedAt(v time.Time) *UpdateProjectOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *UpdateProjectOutput) SetCreatedBy(v string) *UpdateProjectOutput { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateProjectOutput) SetDescription(v string) *UpdateProjectOutput { + s.Description = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateProjectOutput) SetDomainId(v string) *UpdateProjectOutput { + s.DomainId = &v + return s +} + +// SetGlossaryTerms sets the GlossaryTerms field's value. +func (s *UpdateProjectOutput) SetGlossaryTerms(v []*string) *UpdateProjectOutput { + s.GlossaryTerms = v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateProjectOutput) SetId(v string) *UpdateProjectOutput { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *UpdateProjectOutput) SetLastUpdatedAt(v time.Time) *UpdateProjectOutput { + s.LastUpdatedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateProjectOutput) SetName(v string) *UpdateProjectOutput { + s.Name = &v + return s +} + +type UpdateSubscriptionGrantStatusInput struct { + _ struct{} `type:"structure"` + + // The identifier of the asset the subscription grant status of which is to + // be updated. + // + // AssetIdentifier is a required field + AssetIdentifier *string `location:"uri" locationName:"assetIdentifier" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription grant + // status is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // Specifies the error message that is returned if the operation cannot be successfully + // completed. + FailureCause *FailureCause `locationName:"failureCause" type:"structure"` + + // The identifier of the subscription grant the status of which is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The status to be updated as part of the UpdateSubscriptionGrantStatus action. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantStatus"` + + // The target name to be updated as part of the UpdateSubscriptionGrantStatus + // action. + TargetName *string `locationName:"targetName" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionGrantStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionGrantStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSubscriptionGrantStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSubscriptionGrantStatusInput"} + if s.AssetIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("AssetIdentifier")) + } + if s.AssetIdentifier != nil && len(*s.AssetIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssetIdentifier", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetIdentifier sets the AssetIdentifier field's value. +func (s *UpdateSubscriptionGrantStatusInput) SetAssetIdentifier(v string) *UpdateSubscriptionGrantStatusInput { + s.AssetIdentifier = &v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateSubscriptionGrantStatusInput) SetDomainIdentifier(v string) *UpdateSubscriptionGrantStatusInput { + s.DomainIdentifier = &v + return s +} + +// SetFailureCause sets the FailureCause field's value. +func (s *UpdateSubscriptionGrantStatusInput) SetFailureCause(v *FailureCause) *UpdateSubscriptionGrantStatusInput { + s.FailureCause = v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateSubscriptionGrantStatusInput) SetIdentifier(v string) *UpdateSubscriptionGrantStatusInput { + s.Identifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateSubscriptionGrantStatusInput) SetStatus(v string) *UpdateSubscriptionGrantStatusInput { + s.Status = &v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *UpdateSubscriptionGrantStatusInput) SetTargetName(v string) *UpdateSubscriptionGrantStatusInput { + s.TargetName = &v + return s +} + +type UpdateSubscriptionGrantStatusOutput struct { + _ struct{} `type:"structure"` + + Assets []*SubscribedAsset `locationName:"assets" type:"list"` + + // The timestamp of when the subscription grant status was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone domain user who created the subscription grant status. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription grant + // status is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The granted entity to be updated as part of the UpdateSubscriptionGrantStatus + // action. + // + // GrantedEntity is a required field + GrantedEntity *GrantedEntity `locationName:"grantedEntity" type:"structure" required:"true"` + + // The identifier of the subscription grant. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The status to be updated as part of the UpdateSubscriptionGrantStatus action. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionGrantOverallStatus"` + + // The identifier of the subscription. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` + + // The identifier of the subscription target whose subscription grant status + // is to be updated. + // + // SubscriptionTargetId is a required field + SubscriptionTargetId *string `locationName:"subscriptionTargetId" type:"string" required:"true"` + + // The timestamp of when the subscription grant status is to be updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription grant status. + UpdatedBy *string `locationName:"updatedBy" 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 UpdateSubscriptionGrantStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionGrantStatusOutput) GoString() string { + return s.String() +} + +// SetAssets sets the Assets field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetAssets(v []*SubscribedAsset) *UpdateSubscriptionGrantStatusOutput { + s.Assets = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetCreatedAt(v time.Time) *UpdateSubscriptionGrantStatusOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetCreatedBy(v string) *UpdateSubscriptionGrantStatusOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetDomainId(v string) *UpdateSubscriptionGrantStatusOutput { + s.DomainId = &v + return s +} + +// SetGrantedEntity sets the GrantedEntity field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetGrantedEntity(v *GrantedEntity) *UpdateSubscriptionGrantStatusOutput { + s.GrantedEntity = v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetId(v string) *UpdateSubscriptionGrantStatusOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetStatus(v string) *UpdateSubscriptionGrantStatusOutput { + s.Status = &v + return s +} + +// SetSubscriptionId sets the SubscriptionId field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetSubscriptionId(v string) *UpdateSubscriptionGrantStatusOutput { + s.SubscriptionId = &v + return s +} + +// SetSubscriptionTargetId sets the SubscriptionTargetId field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetSubscriptionTargetId(v string) *UpdateSubscriptionGrantStatusOutput { + s.SubscriptionTargetId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetUpdatedAt(v time.Time) *UpdateSubscriptionGrantStatusOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *UpdateSubscriptionGrantStatusOutput) SetUpdatedBy(v string) *UpdateSubscriptionGrantStatusOutput { + s.UpdatedBy = &v + return s +} + +type UpdateSubscriptionRequestInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which a subscription request + // is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the subscription request that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The reason for the UpdateSubscriptionRequest action. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSubscriptionRequestInput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionRequestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionRequestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSubscriptionRequestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSubscriptionRequestInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.RequestReason == nil { + invalidParams.Add(request.NewErrParamRequired("RequestReason")) + } + if s.RequestReason != nil && len(*s.RequestReason) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RequestReason", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateSubscriptionRequestInput) SetDomainIdentifier(v string) *UpdateSubscriptionRequestInput { + s.DomainIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateSubscriptionRequestInput) SetIdentifier(v string) *UpdateSubscriptionRequestInput { + s.Identifier = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *UpdateSubscriptionRequestInput) SetRequestReason(v string) *UpdateSubscriptionRequestInput { + s.RequestReason = &v + return s +} + +type UpdateSubscriptionRequestOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the subscription request was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription request. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The decision comment of the UpdateSubscriptionRequest action. + // + // DecisionComment is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSubscriptionRequestOutput's + // String and GoString methods. + DecisionComment *string `locationName:"decisionComment" min:"1" type:"string" sensitive:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription request + // is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the subscription request that is to be updated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The reason for the UpdateSubscriptionRequest action. + // + // RequestReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSubscriptionRequestOutput's + // String and GoString methods. + // + // RequestReason is a required field + RequestReason *string `locationName:"requestReason" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the Amazon DataZone user who reviews the subscription request. + ReviewerId *string `locationName:"reviewerId" type:"string"` + + // The status of the subscription request. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"SubscriptionRequestStatus"` + + // The subscribed listings of the subscription request. + // + // SubscribedListings is a required field + SubscribedListings []*SubscribedListing `locationName:"subscribedListings" min:"1" type:"list" required:"true"` + + // The subscribed principals of the subscription request. + // + // SubscribedPrincipals is a required field + SubscribedPrincipals []*SubscribedPrincipal `locationName:"subscribedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when the subscription request was updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who updated the subscription request. + UpdatedBy *string `locationName:"updatedBy" 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 UpdateSubscriptionRequestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionRequestOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateSubscriptionRequestOutput) SetCreatedAt(v time.Time) *UpdateSubscriptionRequestOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *UpdateSubscriptionRequestOutput) SetCreatedBy(v string) *UpdateSubscriptionRequestOutput { + s.CreatedBy = &v + return s +} + +// SetDecisionComment sets the DecisionComment field's value. +func (s *UpdateSubscriptionRequestOutput) SetDecisionComment(v string) *UpdateSubscriptionRequestOutput { + s.DecisionComment = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateSubscriptionRequestOutput) SetDomainId(v string) *UpdateSubscriptionRequestOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateSubscriptionRequestOutput) SetId(v string) *UpdateSubscriptionRequestOutput { + s.Id = &v + return s +} + +// SetRequestReason sets the RequestReason field's value. +func (s *UpdateSubscriptionRequestOutput) SetRequestReason(v string) *UpdateSubscriptionRequestOutput { + s.RequestReason = &v + return s +} + +// SetReviewerId sets the ReviewerId field's value. +func (s *UpdateSubscriptionRequestOutput) SetReviewerId(v string) *UpdateSubscriptionRequestOutput { + s.ReviewerId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateSubscriptionRequestOutput) SetStatus(v string) *UpdateSubscriptionRequestOutput { + s.Status = &v + return s +} + +// SetSubscribedListings sets the SubscribedListings field's value. +func (s *UpdateSubscriptionRequestOutput) SetSubscribedListings(v []*SubscribedListing) *UpdateSubscriptionRequestOutput { + s.SubscribedListings = v + return s +} + +// SetSubscribedPrincipals sets the SubscribedPrincipals field's value. +func (s *UpdateSubscriptionRequestOutput) SetSubscribedPrincipals(v []*SubscribedPrincipal) *UpdateSubscriptionRequestOutput { + s.SubscribedPrincipals = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateSubscriptionRequestOutput) SetUpdatedAt(v time.Time) *UpdateSubscriptionRequestOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *UpdateSubscriptionRequestOutput) SetUpdatedBy(v string) *UpdateSubscriptionRequestOutput { + s.UpdatedBy = &v + return s +} + +type UpdateSubscriptionTargetInput struct { + _ struct{} `type:"structure"` + + // The applicable asset types to be updated as part of the UpdateSubscriptionTarget + // action. + ApplicableAssetTypes []*string `locationName:"applicableAssetTypes" type:"list"` + + // The authorized principals to be updated as part of the UpdateSubscriptionTarget + // action. + AuthorizedPrincipals []*string `locationName:"authorizedPrincipals" min:"1" type:"list"` + + // The identifier of the Amazon DataZone domain in which a subscription target + // is to be updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The identifier of the environment in which a subscription target is to be + // updated. + // + // EnvironmentIdentifier is a required field + EnvironmentIdentifier *string `location:"uri" locationName:"environmentIdentifier" type:"string" required:"true"` + + // Identifier of the subscription target that is to be updated. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The manage access role to be updated as part of the UpdateSubscriptionTarget + // action. + ManageAccessRole *string `locationName:"manageAccessRole" type:"string"` + + // The name to be updated as part of the UpdateSubscriptionTarget action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSubscriptionTargetInput's + // String and GoString methods. + Name *string `locationName:"name" min:"1" type:"string" sensitive:"true"` + + // The provider to be updated as part of the UpdateSubscriptionTarget action. + Provider *string `locationName:"provider" type:"string"` + + // The configuration to be updated as part of the UpdateSubscriptionTarget action. + SubscriptionTargetConfig []*SubscriptionTargetForm `locationName:"subscriptionTargetConfig" 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 UpdateSubscriptionTargetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionTargetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSubscriptionTargetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSubscriptionTargetInput"} + if s.AuthorizedPrincipals != nil && len(s.AuthorizedPrincipals) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AuthorizedPrincipals", 1)) + } + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.EnvironmentIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentIdentifier")) + } + if s.EnvironmentIdentifier != nil && len(*s.EnvironmentIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentIdentifier", 1)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SubscriptionTargetConfig != nil { + for i, v := range s.SubscriptionTargetConfig { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubscriptionTargetConfig", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicableAssetTypes sets the ApplicableAssetTypes field's value. +func (s *UpdateSubscriptionTargetInput) SetApplicableAssetTypes(v []*string) *UpdateSubscriptionTargetInput { + s.ApplicableAssetTypes = v + return s +} + +// SetAuthorizedPrincipals sets the AuthorizedPrincipals field's value. +func (s *UpdateSubscriptionTargetInput) SetAuthorizedPrincipals(v []*string) *UpdateSubscriptionTargetInput { + s.AuthorizedPrincipals = v + return s +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateSubscriptionTargetInput) SetDomainIdentifier(v string) *UpdateSubscriptionTargetInput { + s.DomainIdentifier = &v + return s +} + +// SetEnvironmentIdentifier sets the EnvironmentIdentifier field's value. +func (s *UpdateSubscriptionTargetInput) SetEnvironmentIdentifier(v string) *UpdateSubscriptionTargetInput { + s.EnvironmentIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateSubscriptionTargetInput) SetIdentifier(v string) *UpdateSubscriptionTargetInput { + s.Identifier = &v + return s +} + +// SetManageAccessRole sets the ManageAccessRole field's value. +func (s *UpdateSubscriptionTargetInput) SetManageAccessRole(v string) *UpdateSubscriptionTargetInput { + s.ManageAccessRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateSubscriptionTargetInput) SetName(v string) *UpdateSubscriptionTargetInput { + s.Name = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *UpdateSubscriptionTargetInput) SetProvider(v string) *UpdateSubscriptionTargetInput { + s.Provider = &v + return s +} + +// SetSubscriptionTargetConfig sets the SubscriptionTargetConfig field's value. +func (s *UpdateSubscriptionTargetInput) SetSubscriptionTargetConfig(v []*SubscriptionTargetForm) *UpdateSubscriptionTargetInput { + s.SubscriptionTargetConfig = v + return s +} + +type UpdateSubscriptionTargetOutput struct { + _ struct{} `type:"structure"` + + // The applicable asset types to be updated as part of the UpdateSubscriptionTarget + // action. + // + // ApplicableAssetTypes is a required field + ApplicableAssetTypes []*string `locationName:"applicableAssetTypes" type:"list" required:"true"` + + // The authorized principals to be updated as part of the UpdateSubscriptionTarget + // action. + // + // AuthorizedPrincipals is a required field + AuthorizedPrincipals []*string `locationName:"authorizedPrincipals" min:"1" type:"list" required:"true"` + + // The timestamp of when a subscription target was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The Amazon DataZone user who created the subscription target. + // + // CreatedBy is a required field + CreatedBy *string `locationName:"createdBy" type:"string" required:"true"` + + // The identifier of the Amazon DataZone domain in which a subscription target + // is to be updated. + // + // DomainId is a required field + DomainId *string `locationName:"domainId" type:"string" required:"true"` + + // The identifier of the environment in which a subscription target is to be + // updated. + // + // EnvironmentId is a required field + EnvironmentId *string `locationName:"environmentId" type:"string" required:"true"` + + // Identifier of the subscription target that is to be updated. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The manage access role to be updated as part of the UpdateSubscriptionTarget + // action. + // + // ManageAccessRole is a required field + ManageAccessRole *string `locationName:"manageAccessRole" type:"string" required:"true"` + + // The name to be updated as part of the UpdateSubscriptionTarget action. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSubscriptionTargetOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The identifier of the project in which a subscription target is to be updated. + // + // ProjectId is a required field + ProjectId *string `locationName:"projectId" type:"string" required:"true"` + + // The provider to be updated as part of the UpdateSubscriptionTarget action. + // + // Provider is a required field + Provider *string `locationName:"provider" type:"string" required:"true"` + + // The configuration to be updated as part of the UpdateSubscriptionTarget action. + // + // SubscriptionTargetConfig is a required field + SubscriptionTargetConfig []*SubscriptionTargetForm `locationName:"subscriptionTargetConfig" type:"list" required:"true"` + + // The type to be updated as part of the UpdateSubscriptionTarget action. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true"` + + // The timestamp of when the subscription target was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon DataZone user who updated the subscription target. + UpdatedBy *string `locationName:"updatedBy" 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 UpdateSubscriptionTargetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSubscriptionTargetOutput) GoString() string { + return s.String() +} + +// SetApplicableAssetTypes sets the ApplicableAssetTypes field's value. +func (s *UpdateSubscriptionTargetOutput) SetApplicableAssetTypes(v []*string) *UpdateSubscriptionTargetOutput { + s.ApplicableAssetTypes = v + return s +} + +// SetAuthorizedPrincipals sets the AuthorizedPrincipals field's value. +func (s *UpdateSubscriptionTargetOutput) SetAuthorizedPrincipals(v []*string) *UpdateSubscriptionTargetOutput { + s.AuthorizedPrincipals = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateSubscriptionTargetOutput) SetCreatedAt(v time.Time) *UpdateSubscriptionTargetOutput { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *UpdateSubscriptionTargetOutput) SetCreatedBy(v string) *UpdateSubscriptionTargetOutput { + s.CreatedBy = &v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateSubscriptionTargetOutput) SetDomainId(v string) *UpdateSubscriptionTargetOutput { + s.DomainId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *UpdateSubscriptionTargetOutput) SetEnvironmentId(v string) *UpdateSubscriptionTargetOutput { + s.EnvironmentId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateSubscriptionTargetOutput) SetId(v string) *UpdateSubscriptionTargetOutput { + s.Id = &v + return s +} + +// SetManageAccessRole sets the ManageAccessRole field's value. +func (s *UpdateSubscriptionTargetOutput) SetManageAccessRole(v string) *UpdateSubscriptionTargetOutput { + s.ManageAccessRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateSubscriptionTargetOutput) SetName(v string) *UpdateSubscriptionTargetOutput { + s.Name = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *UpdateSubscriptionTargetOutput) SetProjectId(v string) *UpdateSubscriptionTargetOutput { + s.ProjectId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *UpdateSubscriptionTargetOutput) SetProvider(v string) *UpdateSubscriptionTargetOutput { + s.Provider = &v + return s +} + +// SetSubscriptionTargetConfig sets the SubscriptionTargetConfig field's value. +func (s *UpdateSubscriptionTargetOutput) SetSubscriptionTargetConfig(v []*SubscriptionTargetForm) *UpdateSubscriptionTargetOutput { + s.SubscriptionTargetConfig = v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateSubscriptionTargetOutput) SetType(v string) *UpdateSubscriptionTargetOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateSubscriptionTargetOutput) SetUpdatedAt(v time.Time) *UpdateSubscriptionTargetOutput { + s.UpdatedAt = &v + return s +} + +// SetUpdatedBy sets the UpdatedBy field's value. +func (s *UpdateSubscriptionTargetOutput) SetUpdatedBy(v string) *UpdateSubscriptionTargetOutput { + s.UpdatedBy = &v + return s +} + +type UpdateUserProfileInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone domain in which a user profile is updated. + // + // DomainIdentifier is a required field + DomainIdentifier *string `location:"uri" locationName:"domainIdentifier" type:"string" required:"true"` + + // The status of the user profile that are to be updated. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"UserProfileStatus"` + + // The type of the user profile that are to be updated. + Type *string `locationName:"type" type:"string" enum:"UserProfileType"` + + // The identifier of the user whose user profile is to be updated. + // + // UserIdentifier is a required field + UserIdentifier *string `location:"uri" locationName:"userIdentifier" 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 UpdateUserProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUserProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateUserProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateUserProfileInput"} + if s.DomainIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DomainIdentifier")) + } + if s.DomainIdentifier != nil && len(*s.DomainIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainIdentifier", 1)) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + if s.UserIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("UserIdentifier")) + } + if s.UserIdentifier != nil && len(*s.UserIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainIdentifier sets the DomainIdentifier field's value. +func (s *UpdateUserProfileInput) SetDomainIdentifier(v string) *UpdateUserProfileInput { + s.DomainIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateUserProfileInput) SetStatus(v string) *UpdateUserProfileInput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateUserProfileInput) SetType(v string) *UpdateUserProfileInput { + s.Type = &v + return s +} + +// SetUserIdentifier sets the UserIdentifier field's value. +func (s *UpdateUserProfileInput) SetUserIdentifier(v string) *UpdateUserProfileInput { + s.UserIdentifier = &v + return s +} + +type UpdateUserProfileOutput struct { + _ struct{} `type:"structure"` + + // The details of the user profile in Amazon DataZone. + Details *UserProfileDetails `locationName:"details" type:"structure"` + + // The identifier of the Amazon DataZone domain in which a user profile is updated. + DomainId *string `locationName:"domainId" type:"string"` + + // The identifier of the user profile. + Id *string `locationName:"id" type:"string"` + + // The status of the user profile. + Status *string `locationName:"status" type:"string" enum:"UserProfileStatus"` + + // The type of the user profile. + Type *string `locationName:"type" type:"string" enum:"UserProfileType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUserProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUserProfileOutput) GoString() string { + return s.String() +} + +// SetDetails sets the Details field's value. +func (s *UpdateUserProfileOutput) SetDetails(v *UserProfileDetails) *UpdateUserProfileOutput { + s.Details = v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UpdateUserProfileOutput) SetDomainId(v string) *UpdateUserProfileOutput { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateUserProfileOutput) SetId(v string) *UpdateUserProfileOutput { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateUserProfileOutput) SetStatus(v string) *UpdateUserProfileOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateUserProfileOutput) SetType(v string) *UpdateUserProfileOutput { + s.Type = &v + return s +} + +// The user details of a project member. +type UserDetails struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon DataZone user. + // + // UserId is a required field + UserId *string `locationName:"userId" 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 UserDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UserDetails) GoString() string { + return s.String() +} + +// SetUserId sets the UserId field's value. +func (s *UserDetails) SetUserId(v string) *UserDetails { + s.UserId = &v + return s +} + +// The details of the user profile in Amazon DataZone. +type UserProfileDetails struct { + _ struct{} `type:"structure"` + + // The IAM details included in the user profile details. + Iam *IamUserProfileDetails `locationName:"iam" type:"structure"` + + // The single sign-on details included in the user profile details. + Sso *SsoUserProfileDetails `locationName:"sso" 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 UserProfileDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UserProfileDetails) GoString() string { + return s.String() +} + +// SetIam sets the Iam field's value. +func (s *UserProfileDetails) SetIam(v *IamUserProfileDetails) *UserProfileDetails { + s.Iam = v + return s +} + +// SetSso sets the Sso field's value. +func (s *UserProfileDetails) SetSso(v *SsoUserProfileDetails) *UserProfileDetails { + s.Sso = v + return s +} + +// The details of the user profile. +type UserProfileSummary struct { + _ struct{} `type:"structure"` + + // The details of the user profile. + Details *UserProfileDetails `locationName:"details" type:"structure"` + + // The ID of the Amazon DataZone domain of the user profile. + DomainId *string `locationName:"domainId" type:"string"` + + // The ID of the user profile. + Id *string `locationName:"id" type:"string"` + + // The status of the user profile. + Status *string `locationName:"status" type:"string" enum:"UserProfileStatus"` + + // The type of the user profile. + Type *string `locationName:"type" type:"string" enum:"UserProfileType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UserProfileSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UserProfileSummary) GoString() string { + return s.String() +} + +// SetDetails sets the Details field's value. +func (s *UserProfileSummary) SetDetails(v *UserProfileDetails) *UserProfileSummary { + s.Details = v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *UserProfileSummary) SetDomainId(v string) *UserProfileSummary { + s.DomainId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UserProfileSummary) SetId(v string) *UserProfileSummary { + s.Id = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UserProfileSummary) SetStatus(v string) *UserProfileSummary { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *UserProfileSummary) SetType(v string) *UserProfileSummary { + s.Type = &v + return s +} + +// The input fails to satisfy the constraints specified by the Amazon Web Services +// 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 +} + +const ( + // AcceptRuleBehaviorAll is a AcceptRuleBehavior enum value + AcceptRuleBehaviorAll = "ALL" + + // AcceptRuleBehaviorNone is a AcceptRuleBehavior enum value + AcceptRuleBehaviorNone = "NONE" +) + +// AcceptRuleBehavior_Values returns all elements of the AcceptRuleBehavior enum +func AcceptRuleBehavior_Values() []string { + return []string{ + AcceptRuleBehaviorAll, + AcceptRuleBehaviorNone, + } +} + +const ( + // AuthTypeIamIdc is a AuthType enum value + AuthTypeIamIdc = "IAM_IDC" + + // AuthTypeDisabled is a AuthType enum value + AuthTypeDisabled = "DISABLED" +) + +// AuthType_Values returns all elements of the AuthType enum +func AuthType_Values() []string { + return []string{ + AuthTypeIamIdc, + AuthTypeDisabled, + } +} + +const ( + // ChangeActionPublish is a ChangeAction enum value + ChangeActionPublish = "PUBLISH" + + // ChangeActionUnpublish is a ChangeAction enum value + ChangeActionUnpublish = "UNPUBLISH" +) + +// ChangeAction_Values returns all elements of the ChangeAction enum +func ChangeAction_Values() []string { + return []string{ + ChangeActionPublish, + ChangeActionUnpublish, + } +} + +const ( + // ConfigurableActionTypeAuthorizationIam is a ConfigurableActionTypeAuthorization enum value + ConfigurableActionTypeAuthorizationIam = "IAM" + + // ConfigurableActionTypeAuthorizationHttps is a ConfigurableActionTypeAuthorization enum value + ConfigurableActionTypeAuthorizationHttps = "HTTPS" +) + +// ConfigurableActionTypeAuthorization_Values returns all elements of the ConfigurableActionTypeAuthorization enum +func ConfigurableActionTypeAuthorization_Values() []string { + return []string{ + ConfigurableActionTypeAuthorizationIam, + ConfigurableActionTypeAuthorizationHttps, + } +} + +const ( + // DataAssetActivityStatusFailed is a DataAssetActivityStatus enum value + DataAssetActivityStatusFailed = "FAILED" + + // DataAssetActivityStatusPublishingFailed is a DataAssetActivityStatus enum value + DataAssetActivityStatusPublishingFailed = "PUBLISHING_FAILED" + + // DataAssetActivityStatusSucceededCreated is a DataAssetActivityStatus enum value + DataAssetActivityStatusSucceededCreated = "SUCCEEDED_CREATED" + + // DataAssetActivityStatusSucceededUpdated is a DataAssetActivityStatus enum value + DataAssetActivityStatusSucceededUpdated = "SUCCEEDED_UPDATED" + + // DataAssetActivityStatusSkippedAlreadyImported is a DataAssetActivityStatus enum value + DataAssetActivityStatusSkippedAlreadyImported = "SKIPPED_ALREADY_IMPORTED" + + // DataAssetActivityStatusSkippedArchived is a DataAssetActivityStatus enum value + DataAssetActivityStatusSkippedArchived = "SKIPPED_ARCHIVED" + + // DataAssetActivityStatusSkippedNoAccess is a DataAssetActivityStatus enum value + DataAssetActivityStatusSkippedNoAccess = "SKIPPED_NO_ACCESS" + + // DataAssetActivityStatusUnchanged is a DataAssetActivityStatus enum value + DataAssetActivityStatusUnchanged = "UNCHANGED" +) + +// DataAssetActivityStatus_Values returns all elements of the DataAssetActivityStatus enum +func DataAssetActivityStatus_Values() []string { + return []string{ + DataAssetActivityStatusFailed, + DataAssetActivityStatusPublishingFailed, + DataAssetActivityStatusSucceededCreated, + DataAssetActivityStatusSucceededUpdated, + DataAssetActivityStatusSkippedAlreadyImported, + DataAssetActivityStatusSkippedArchived, + DataAssetActivityStatusSkippedNoAccess, + DataAssetActivityStatusUnchanged, + } +} + +const ( + // DataSourceErrorTypeAccessDeniedException is a DataSourceErrorType enum value + DataSourceErrorTypeAccessDeniedException = "ACCESS_DENIED_EXCEPTION" + + // DataSourceErrorTypeConflictException is a DataSourceErrorType enum value + DataSourceErrorTypeConflictException = "CONFLICT_EXCEPTION" + + // DataSourceErrorTypeInternalServerException is a DataSourceErrorType enum value + DataSourceErrorTypeInternalServerException = "INTERNAL_SERVER_EXCEPTION" + + // DataSourceErrorTypeResourceNotFoundException is a DataSourceErrorType enum value + DataSourceErrorTypeResourceNotFoundException = "RESOURCE_NOT_FOUND_EXCEPTION" + + // DataSourceErrorTypeServiceQuotaExceededException is a DataSourceErrorType enum value + DataSourceErrorTypeServiceQuotaExceededException = "SERVICE_QUOTA_EXCEEDED_EXCEPTION" + + // DataSourceErrorTypeThrottlingException is a DataSourceErrorType enum value + DataSourceErrorTypeThrottlingException = "THROTTLING_EXCEPTION" + + // DataSourceErrorTypeValidationException is a DataSourceErrorType enum value + DataSourceErrorTypeValidationException = "VALIDATION_EXCEPTION" +) + +// DataSourceErrorType_Values returns all elements of the DataSourceErrorType enum +func DataSourceErrorType_Values() []string { + return []string{ + DataSourceErrorTypeAccessDeniedException, + DataSourceErrorTypeConflictException, + DataSourceErrorTypeInternalServerException, + DataSourceErrorTypeResourceNotFoundException, + DataSourceErrorTypeServiceQuotaExceededException, + DataSourceErrorTypeThrottlingException, + DataSourceErrorTypeValidationException, + } +} + +const ( + // DataSourceRunStatusRequested is a DataSourceRunStatus enum value + DataSourceRunStatusRequested = "REQUESTED" + + // DataSourceRunStatusRunning is a DataSourceRunStatus enum value + DataSourceRunStatusRunning = "RUNNING" + + // DataSourceRunStatusFailed is a DataSourceRunStatus enum value + DataSourceRunStatusFailed = "FAILED" + + // DataSourceRunStatusPartiallySucceeded is a DataSourceRunStatus enum value + DataSourceRunStatusPartiallySucceeded = "PARTIALLY_SUCCEEDED" + + // DataSourceRunStatusSuccess is a DataSourceRunStatus enum value + DataSourceRunStatusSuccess = "SUCCESS" +) + +// DataSourceRunStatus_Values returns all elements of the DataSourceRunStatus enum +func DataSourceRunStatus_Values() []string { + return []string{ + DataSourceRunStatusRequested, + DataSourceRunStatusRunning, + DataSourceRunStatusFailed, + DataSourceRunStatusPartiallySucceeded, + DataSourceRunStatusSuccess, + } +} + +const ( + // DataSourceRunTypePrioritized is a DataSourceRunType enum value + DataSourceRunTypePrioritized = "PRIORITIZED" + + // DataSourceRunTypeScheduled is a DataSourceRunType enum value + DataSourceRunTypeScheduled = "SCHEDULED" +) + +// DataSourceRunType_Values returns all elements of the DataSourceRunType enum +func DataSourceRunType_Values() []string { + return []string{ + DataSourceRunTypePrioritized, + DataSourceRunTypeScheduled, + } +} + +const ( + // DataSourceStatusCreating is a DataSourceStatus enum value + DataSourceStatusCreating = "CREATING" + + // DataSourceStatusFailedCreation is a DataSourceStatus enum value + DataSourceStatusFailedCreation = "FAILED_CREATION" + + // DataSourceStatusReady is a DataSourceStatus enum value + DataSourceStatusReady = "READY" + + // DataSourceStatusUpdating is a DataSourceStatus enum value + DataSourceStatusUpdating = "UPDATING" + + // DataSourceStatusFailedUpdate is a DataSourceStatus enum value + DataSourceStatusFailedUpdate = "FAILED_UPDATE" + + // DataSourceStatusRunning is a DataSourceStatus enum value + DataSourceStatusRunning = "RUNNING" + + // DataSourceStatusDeleting is a DataSourceStatus enum value + DataSourceStatusDeleting = "DELETING" + + // DataSourceStatusFailedDeletion is a DataSourceStatus enum value + DataSourceStatusFailedDeletion = "FAILED_DELETION" +) + +// DataSourceStatus_Values returns all elements of the DataSourceStatus enum +func DataSourceStatus_Values() []string { + return []string{ + DataSourceStatusCreating, + DataSourceStatusFailedCreation, + DataSourceStatusReady, + DataSourceStatusUpdating, + DataSourceStatusFailedUpdate, + DataSourceStatusRunning, + DataSourceStatusDeleting, + DataSourceStatusFailedDeletion, + } +} + +const ( + // DeploymentStatusInProgress is a DeploymentStatus enum value + DeploymentStatusInProgress = "IN_PROGRESS" + + // DeploymentStatusSuccessful is a DeploymentStatus enum value + DeploymentStatusSuccessful = "SUCCESSFUL" + + // DeploymentStatusFailed is a DeploymentStatus enum value + DeploymentStatusFailed = "FAILED" + + // DeploymentStatusPendingDeployment is a DeploymentStatus enum value + DeploymentStatusPendingDeployment = "PENDING_DEPLOYMENT" +) + +// DeploymentStatus_Values returns all elements of the DeploymentStatus enum +func DeploymentStatus_Values() []string { + return []string{ + DeploymentStatusInProgress, + DeploymentStatusSuccessful, + DeploymentStatusFailed, + DeploymentStatusPendingDeployment, + } +} + +const ( + // DeploymentTypeCreate is a DeploymentType enum value + DeploymentTypeCreate = "CREATE" + + // DeploymentTypeUpdate is a DeploymentType enum value + DeploymentTypeUpdate = "UPDATE" + + // DeploymentTypeDelete is a DeploymentType enum value + DeploymentTypeDelete = "DELETE" +) + +// DeploymentType_Values returns all elements of the DeploymentType enum +func DeploymentType_Values() []string { + return []string{ + DeploymentTypeCreate, + DeploymentTypeUpdate, + DeploymentTypeDelete, + } +} + +const ( + // DomainStatusCreating is a DomainStatus enum value + DomainStatusCreating = "CREATING" + + // DomainStatusAvailable is a DomainStatus enum value + DomainStatusAvailable = "AVAILABLE" + + // DomainStatusCreationFailed is a DomainStatus enum value + DomainStatusCreationFailed = "CREATION_FAILED" + + // DomainStatusDeleting is a DomainStatus enum value + DomainStatusDeleting = "DELETING" + + // DomainStatusDeleted is a DomainStatus enum value + DomainStatusDeleted = "DELETED" + + // DomainStatusDeletionFailed is a DomainStatus enum value + DomainStatusDeletionFailed = "DELETION_FAILED" +) + +// DomainStatus_Values returns all elements of the DomainStatus enum +func DomainStatus_Values() []string { + return []string{ + DomainStatusCreating, + DomainStatusAvailable, + DomainStatusCreationFailed, + DomainStatusDeleting, + DomainStatusDeleted, + DomainStatusDeletionFailed, + } +} + +const ( + // EnableSettingEnabled is a EnableSetting enum value + EnableSettingEnabled = "ENABLED" + + // EnableSettingDisabled is a EnableSetting enum value + EnableSettingDisabled = "DISABLED" +) + +// EnableSetting_Values returns all elements of the EnableSetting enum +func EnableSetting_Values() []string { + return []string{ + EnableSettingEnabled, + EnableSettingDisabled, + } +} + +const ( + // EntityTypeAsset is a EntityType enum value + EntityTypeAsset = "ASSET" +) + +// EntityType_Values returns all elements of the EntityType enum +func EntityType_Values() []string { + return []string{ + EntityTypeAsset, + } +} + +const ( + // EnvironmentStatusActive is a EnvironmentStatus enum value + EnvironmentStatusActive = "ACTIVE" + + // EnvironmentStatusCreating is a EnvironmentStatus enum value + EnvironmentStatusCreating = "CREATING" + + // EnvironmentStatusUpdating is a EnvironmentStatus enum value + EnvironmentStatusUpdating = "UPDATING" + + // EnvironmentStatusDeleting is a EnvironmentStatus enum value + EnvironmentStatusDeleting = "DELETING" + + // EnvironmentStatusCreateFailed is a EnvironmentStatus enum value + EnvironmentStatusCreateFailed = "CREATE_FAILED" + + // EnvironmentStatusUpdateFailed is a EnvironmentStatus enum value + EnvironmentStatusUpdateFailed = "UPDATE_FAILED" + + // EnvironmentStatusDeleteFailed is a EnvironmentStatus enum value + EnvironmentStatusDeleteFailed = "DELETE_FAILED" + + // EnvironmentStatusValidationFailed is a EnvironmentStatus enum value + EnvironmentStatusValidationFailed = "VALIDATION_FAILED" + + // EnvironmentStatusSuspended is a EnvironmentStatus enum value + EnvironmentStatusSuspended = "SUSPENDED" + + // EnvironmentStatusDisabled is a EnvironmentStatus enum value + EnvironmentStatusDisabled = "DISABLED" + + // EnvironmentStatusExpired is a EnvironmentStatus enum value + EnvironmentStatusExpired = "EXPIRED" + + // EnvironmentStatusDeleted is a EnvironmentStatus enum value + EnvironmentStatusDeleted = "DELETED" + + // EnvironmentStatusInaccessible is a EnvironmentStatus enum value + EnvironmentStatusInaccessible = "INACCESSIBLE" +) + +// EnvironmentStatus_Values returns all elements of the EnvironmentStatus enum +func EnvironmentStatus_Values() []string { + return []string{ + EnvironmentStatusActive, + EnvironmentStatusCreating, + EnvironmentStatusUpdating, + EnvironmentStatusDeleting, + EnvironmentStatusCreateFailed, + EnvironmentStatusUpdateFailed, + EnvironmentStatusDeleteFailed, + EnvironmentStatusValidationFailed, + EnvironmentStatusSuspended, + EnvironmentStatusDisabled, + EnvironmentStatusExpired, + EnvironmentStatusDeleted, + EnvironmentStatusInaccessible, + } +} + +const ( + // FilterExpressionTypeInclude is a FilterExpressionType enum value + FilterExpressionTypeInclude = "INCLUDE" + + // FilterExpressionTypeExclude is a FilterExpressionType enum value + FilterExpressionTypeExclude = "EXCLUDE" +) + +// FilterExpressionType_Values returns all elements of the FilterExpressionType enum +func FilterExpressionType_Values() []string { + return []string{ + FilterExpressionTypeInclude, + FilterExpressionTypeExclude, + } +} + +const ( + // FormTypeStatusEnabled is a FormTypeStatus enum value + FormTypeStatusEnabled = "ENABLED" + + // FormTypeStatusDisabled is a FormTypeStatus enum value + FormTypeStatusDisabled = "DISABLED" +) + +// FormTypeStatus_Values returns all elements of the FormTypeStatus enum +func FormTypeStatus_Values() []string { + return []string{ + FormTypeStatusEnabled, + FormTypeStatusDisabled, + } +} + +const ( + // GlossaryStatusDisabled is a GlossaryStatus enum value + GlossaryStatusDisabled = "DISABLED" + + // GlossaryStatusEnabled is a GlossaryStatus enum value + GlossaryStatusEnabled = "ENABLED" +) + +// GlossaryStatus_Values returns all elements of the GlossaryStatus enum +func GlossaryStatus_Values() []string { + return []string{ + GlossaryStatusDisabled, + GlossaryStatusEnabled, + } +} + +const ( + // GlossaryTermStatusEnabled is a GlossaryTermStatus enum value + GlossaryTermStatusEnabled = "ENABLED" + + // GlossaryTermStatusDisabled is a GlossaryTermStatus enum value + GlossaryTermStatusDisabled = "DISABLED" +) + +// GlossaryTermStatus_Values returns all elements of the GlossaryTermStatus enum +func GlossaryTermStatus_Values() []string { + return []string{ + GlossaryTermStatusEnabled, + GlossaryTermStatusDisabled, + } +} + +const ( + // GroupProfileStatusAssigned is a GroupProfileStatus enum value + GroupProfileStatusAssigned = "ASSIGNED" + + // GroupProfileStatusNotAssigned is a GroupProfileStatus enum value + GroupProfileStatusNotAssigned = "NOT_ASSIGNED" +) + +// GroupProfileStatus_Values returns all elements of the GroupProfileStatus enum +func GroupProfileStatus_Values() []string { + return []string{ + GroupProfileStatusAssigned, + GroupProfileStatusNotAssigned, + } +} + +const ( + // GroupSearchTypeSsoGroup is a GroupSearchType enum value + GroupSearchTypeSsoGroup = "SSO_GROUP" + + // GroupSearchTypeDatazoneSsoGroup is a GroupSearchType enum value + GroupSearchTypeDatazoneSsoGroup = "DATAZONE_SSO_GROUP" +) + +// GroupSearchType_Values returns all elements of the GroupSearchType enum +func GroupSearchType_Values() []string { + return []string{ + GroupSearchTypeSsoGroup, + GroupSearchTypeDatazoneSsoGroup, + } +} + +const ( + // InventorySearchScopeAsset is a InventorySearchScope enum value + InventorySearchScopeAsset = "ASSET" + + // InventorySearchScopeGlossary is a InventorySearchScope enum value + InventorySearchScopeGlossary = "GLOSSARY" + + // InventorySearchScopeGlossaryTerm is a InventorySearchScope enum value + InventorySearchScopeGlossaryTerm = "GLOSSARY_TERM" +) + +// InventorySearchScope_Values returns all elements of the InventorySearchScope enum +func InventorySearchScope_Values() []string { + return []string{ + InventorySearchScopeAsset, + InventorySearchScopeGlossary, + InventorySearchScopeGlossaryTerm, + } +} + +const ( + // ListingStatusCreating is a ListingStatus enum value + ListingStatusCreating = "CREATING" + + // ListingStatusActive is a ListingStatus enum value + ListingStatusActive = "ACTIVE" + + // ListingStatusInactive is a ListingStatus enum value + ListingStatusInactive = "INACTIVE" +) + +// ListingStatus_Values returns all elements of the ListingStatus enum +func ListingStatus_Values() []string { + return []string{ + ListingStatusCreating, + ListingStatusActive, + ListingStatusInactive, + } +} + +const ( + // NotificationResourceTypeProject is a NotificationResourceType enum value + NotificationResourceTypeProject = "PROJECT" +) + +// NotificationResourceType_Values returns all elements of the NotificationResourceType enum +func NotificationResourceType_Values() []string { + return []string{ + NotificationResourceTypeProject, + } +} + +const ( + // NotificationRoleProjectOwner is a NotificationRole enum value + NotificationRoleProjectOwner = "PROJECT_OWNER" + + // NotificationRoleProjectContributor is a NotificationRole enum value + NotificationRoleProjectContributor = "PROJECT_CONTRIBUTOR" + + // NotificationRoleProjectViewer is a NotificationRole enum value + NotificationRoleProjectViewer = "PROJECT_VIEWER" + + // NotificationRoleDomainOwner is a NotificationRole enum value + NotificationRoleDomainOwner = "DOMAIN_OWNER" + + // NotificationRoleProjectSubscriber is a NotificationRole enum value + NotificationRoleProjectSubscriber = "PROJECT_SUBSCRIBER" +) + +// NotificationRole_Values returns all elements of the NotificationRole enum +func NotificationRole_Values() []string { + return []string{ + NotificationRoleProjectOwner, + NotificationRoleProjectContributor, + NotificationRoleProjectViewer, + NotificationRoleDomainOwner, + NotificationRoleProjectSubscriber, + } +} + +const ( + // NotificationTypeTask is a NotificationType enum value + NotificationTypeTask = "TASK" + + // NotificationTypeEvent is a NotificationType enum value + NotificationTypeEvent = "EVENT" +) + +// NotificationType_Values returns all elements of the NotificationType enum +func NotificationType_Values() []string { + return []string{ + NotificationTypeTask, + NotificationTypeEvent, + } +} + +const ( + // RejectRuleBehaviorAll is a RejectRuleBehavior enum value + RejectRuleBehaviorAll = "ALL" + + // RejectRuleBehaviorNone is a RejectRuleBehavior enum value + RejectRuleBehaviorNone = "NONE" +) + +// RejectRuleBehavior_Values returns all elements of the RejectRuleBehavior enum +func RejectRuleBehavior_Values() []string { + return []string{ + RejectRuleBehaviorAll, + RejectRuleBehaviorNone, + } +} + +const ( + // SearchOutputAdditionalAttributeForms is a SearchOutputAdditionalAttribute enum value + SearchOutputAdditionalAttributeForms = "FORMS" +) + +// SearchOutputAdditionalAttribute_Values returns all elements of the SearchOutputAdditionalAttribute enum +func SearchOutputAdditionalAttribute_Values() []string { + return []string{ + SearchOutputAdditionalAttributeForms, + } +} + +const ( + // SortFieldProjectName is a SortFieldProject enum value + SortFieldProjectName = "NAME" +) + +// SortFieldProject_Values returns all elements of the SortFieldProject enum +func SortFieldProject_Values() []string { + return []string{ + SortFieldProjectName, + } +} + +const ( + // SortKeyCreatedAt is a SortKey enum value + SortKeyCreatedAt = "CREATED_AT" + + // SortKeyUpdatedAt is a SortKey enum value + SortKeyUpdatedAt = "UPDATED_AT" +) + +// SortKey_Values returns all elements of the SortKey enum +func SortKey_Values() []string { + return []string{ + SortKeyCreatedAt, + SortKeyUpdatedAt, + } +} + +const ( + // SortOrderAscending is a SortOrder enum value + SortOrderAscending = "ASCENDING" + + // SortOrderDescending is a SortOrder enum value + SortOrderDescending = "DESCENDING" +) + +// SortOrder_Values returns all elements of the SortOrder enum +func SortOrder_Values() []string { + return []string{ + SortOrderAscending, + SortOrderDescending, + } +} + +const ( + // SubscriptionGrantOverallStatusPending is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusPending = "PENDING" + + // SubscriptionGrantOverallStatusInProgress is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusInProgress = "IN_PROGRESS" + + // SubscriptionGrantOverallStatusGrantFailed is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusGrantFailed = "GRANT_FAILED" + + // SubscriptionGrantOverallStatusRevokeFailed is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusRevokeFailed = "REVOKE_FAILED" + + // SubscriptionGrantOverallStatusGrantAndRevokeFailed is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusGrantAndRevokeFailed = "GRANT_AND_REVOKE_FAILED" + + // SubscriptionGrantOverallStatusCompleted is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusCompleted = "COMPLETED" + + // SubscriptionGrantOverallStatusInaccessible is a SubscriptionGrantOverallStatus enum value + SubscriptionGrantOverallStatusInaccessible = "INACCESSIBLE" +) + +// SubscriptionGrantOverallStatus_Values returns all elements of the SubscriptionGrantOverallStatus enum +func SubscriptionGrantOverallStatus_Values() []string { + return []string{ + SubscriptionGrantOverallStatusPending, + SubscriptionGrantOverallStatusInProgress, + SubscriptionGrantOverallStatusGrantFailed, + SubscriptionGrantOverallStatusRevokeFailed, + SubscriptionGrantOverallStatusGrantAndRevokeFailed, + SubscriptionGrantOverallStatusCompleted, + SubscriptionGrantOverallStatusInaccessible, + } +} + +const ( + // SubscriptionGrantStatusGrantPending is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusGrantPending = "GRANT_PENDING" + + // SubscriptionGrantStatusRevokePending is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusRevokePending = "REVOKE_PENDING" + + // SubscriptionGrantStatusGrantInProgress is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusGrantInProgress = "GRANT_IN_PROGRESS" + + // SubscriptionGrantStatusRevokeInProgress is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusRevokeInProgress = "REVOKE_IN_PROGRESS" + + // SubscriptionGrantStatusGranted is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusGranted = "GRANTED" + + // SubscriptionGrantStatusRevoked is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusRevoked = "REVOKED" + + // SubscriptionGrantStatusGrantFailed is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusGrantFailed = "GRANT_FAILED" + + // SubscriptionGrantStatusRevokeFailed is a SubscriptionGrantStatus enum value + SubscriptionGrantStatusRevokeFailed = "REVOKE_FAILED" +) + +// SubscriptionGrantStatus_Values returns all elements of the SubscriptionGrantStatus enum +func SubscriptionGrantStatus_Values() []string { + return []string{ + SubscriptionGrantStatusGrantPending, + SubscriptionGrantStatusRevokePending, + SubscriptionGrantStatusGrantInProgress, + SubscriptionGrantStatusRevokeInProgress, + SubscriptionGrantStatusGranted, + SubscriptionGrantStatusRevoked, + SubscriptionGrantStatusGrantFailed, + SubscriptionGrantStatusRevokeFailed, + } +} + +const ( + // SubscriptionRequestStatusPending is a SubscriptionRequestStatus enum value + SubscriptionRequestStatusPending = "PENDING" + + // SubscriptionRequestStatusAccepted is a SubscriptionRequestStatus enum value + SubscriptionRequestStatusAccepted = "ACCEPTED" + + // SubscriptionRequestStatusRejected is a SubscriptionRequestStatus enum value + SubscriptionRequestStatusRejected = "REJECTED" +) + +// SubscriptionRequestStatus_Values returns all elements of the SubscriptionRequestStatus enum +func SubscriptionRequestStatus_Values() []string { + return []string{ + SubscriptionRequestStatusPending, + SubscriptionRequestStatusAccepted, + SubscriptionRequestStatusRejected, + } +} + +const ( + // SubscriptionStatusApproved is a SubscriptionStatus enum value + SubscriptionStatusApproved = "APPROVED" + + // SubscriptionStatusRevoked is a SubscriptionStatus enum value + SubscriptionStatusRevoked = "REVOKED" + + // SubscriptionStatusCancelled is a SubscriptionStatus enum value + SubscriptionStatusCancelled = "CANCELLED" +) + +// SubscriptionStatus_Values returns all elements of the SubscriptionStatus enum +func SubscriptionStatus_Values() []string { + return []string{ + SubscriptionStatusApproved, + SubscriptionStatusRevoked, + SubscriptionStatusCancelled, + } +} + +const ( + // TaskStatusActive is a TaskStatus enum value + TaskStatusActive = "ACTIVE" + + // TaskStatusInactive is a TaskStatus enum value + TaskStatusInactive = "INACTIVE" +) + +// TaskStatus_Values returns all elements of the TaskStatus enum +func TaskStatus_Values() []string { + return []string{ + TaskStatusActive, + TaskStatusInactive, + } +} + +const ( + // TimezoneUtc is a Timezone enum value + TimezoneUtc = "UTC" + + // TimezoneAfricaJohannesburg is a Timezone enum value + TimezoneAfricaJohannesburg = "AFRICA_JOHANNESBURG" + + // TimezoneAmericaMontreal is a Timezone enum value + TimezoneAmericaMontreal = "AMERICA_MONTREAL" + + // TimezoneAmericaSaoPaulo is a Timezone enum value + TimezoneAmericaSaoPaulo = "AMERICA_SAO_PAULO" + + // TimezoneAsiaBahrain is a Timezone enum value + TimezoneAsiaBahrain = "ASIA_BAHRAIN" + + // TimezoneAsiaBangkok is a Timezone enum value + TimezoneAsiaBangkok = "ASIA_BANGKOK" + + // TimezoneAsiaCalcutta is a Timezone enum value + TimezoneAsiaCalcutta = "ASIA_CALCUTTA" + + // TimezoneAsiaDubai is a Timezone enum value + TimezoneAsiaDubai = "ASIA_DUBAI" + + // TimezoneAsiaHongKong is a Timezone enum value + TimezoneAsiaHongKong = "ASIA_HONG_KONG" + + // TimezoneAsiaJakarta is a Timezone enum value + TimezoneAsiaJakarta = "ASIA_JAKARTA" + + // TimezoneAsiaKualaLumpur is a Timezone enum value + TimezoneAsiaKualaLumpur = "ASIA_KUALA_LUMPUR" + + // TimezoneAsiaSeoul is a Timezone enum value + TimezoneAsiaSeoul = "ASIA_SEOUL" + + // TimezoneAsiaShanghai is a Timezone enum value + TimezoneAsiaShanghai = "ASIA_SHANGHAI" + + // TimezoneAsiaSingapore is a Timezone enum value + TimezoneAsiaSingapore = "ASIA_SINGAPORE" + + // TimezoneAsiaTaipei is a Timezone enum value + TimezoneAsiaTaipei = "ASIA_TAIPEI" + + // TimezoneAsiaTokyo is a Timezone enum value + TimezoneAsiaTokyo = "ASIA_TOKYO" + + // TimezoneAustraliaMelbourne is a Timezone enum value + TimezoneAustraliaMelbourne = "AUSTRALIA_MELBOURNE" + + // TimezoneAustraliaSydney is a Timezone enum value + TimezoneAustraliaSydney = "AUSTRALIA_SYDNEY" + + // TimezoneCanadaCentral is a Timezone enum value + TimezoneCanadaCentral = "CANADA_CENTRAL" + + // TimezoneCet is a Timezone enum value + TimezoneCet = "CET" + + // TimezoneCst6cdt is a Timezone enum value + TimezoneCst6cdt = "CST6CDT" + + // TimezoneEtcGmt is a Timezone enum value + TimezoneEtcGmt = "ETC_GMT" + + // TimezoneEtcGmt0 is a Timezone enum value + TimezoneEtcGmt0 = "ETC_GMT0" + + // TimezoneEtcGmtAdd0 is a Timezone enum value + TimezoneEtcGmtAdd0 = "ETC_GMT_ADD_0" + + // TimezoneEtcGmtAdd1 is a Timezone enum value + TimezoneEtcGmtAdd1 = "ETC_GMT_ADD_1" + + // TimezoneEtcGmtAdd10 is a Timezone enum value + TimezoneEtcGmtAdd10 = "ETC_GMT_ADD_10" + + // TimezoneEtcGmtAdd11 is a Timezone enum value + TimezoneEtcGmtAdd11 = "ETC_GMT_ADD_11" + + // TimezoneEtcGmtAdd12 is a Timezone enum value + TimezoneEtcGmtAdd12 = "ETC_GMT_ADD_12" + + // TimezoneEtcGmtAdd2 is a Timezone enum value + TimezoneEtcGmtAdd2 = "ETC_GMT_ADD_2" + + // TimezoneEtcGmtAdd3 is a Timezone enum value + TimezoneEtcGmtAdd3 = "ETC_GMT_ADD_3" + + // TimezoneEtcGmtAdd4 is a Timezone enum value + TimezoneEtcGmtAdd4 = "ETC_GMT_ADD_4" + + // TimezoneEtcGmtAdd5 is a Timezone enum value + TimezoneEtcGmtAdd5 = "ETC_GMT_ADD_5" + + // TimezoneEtcGmtAdd6 is a Timezone enum value + TimezoneEtcGmtAdd6 = "ETC_GMT_ADD_6" + + // TimezoneEtcGmtAdd7 is a Timezone enum value + TimezoneEtcGmtAdd7 = "ETC_GMT_ADD_7" + + // TimezoneEtcGmtAdd8 is a Timezone enum value + TimezoneEtcGmtAdd8 = "ETC_GMT_ADD_8" + + // TimezoneEtcGmtAdd9 is a Timezone enum value + TimezoneEtcGmtAdd9 = "ETC_GMT_ADD_9" + + // TimezoneEtcGmtNeg0 is a Timezone enum value + TimezoneEtcGmtNeg0 = "ETC_GMT_NEG_0" + + // TimezoneEtcGmtNeg1 is a Timezone enum value + TimezoneEtcGmtNeg1 = "ETC_GMT_NEG_1" + + // TimezoneEtcGmtNeg10 is a Timezone enum value + TimezoneEtcGmtNeg10 = "ETC_GMT_NEG_10" + + // TimezoneEtcGmtNeg11 is a Timezone enum value + TimezoneEtcGmtNeg11 = "ETC_GMT_NEG_11" + + // TimezoneEtcGmtNeg12 is a Timezone enum value + TimezoneEtcGmtNeg12 = "ETC_GMT_NEG_12" + + // TimezoneEtcGmtNeg13 is a Timezone enum value + TimezoneEtcGmtNeg13 = "ETC_GMT_NEG_13" + + // TimezoneEtcGmtNeg14 is a Timezone enum value + TimezoneEtcGmtNeg14 = "ETC_GMT_NEG_14" + + // TimezoneEtcGmtNeg2 is a Timezone enum value + TimezoneEtcGmtNeg2 = "ETC_GMT_NEG_2" + + // TimezoneEtcGmtNeg3 is a Timezone enum value + TimezoneEtcGmtNeg3 = "ETC_GMT_NEG_3" + + // TimezoneEtcGmtNeg4 is a Timezone enum value + TimezoneEtcGmtNeg4 = "ETC_GMT_NEG_4" + + // TimezoneEtcGmtNeg5 is a Timezone enum value + TimezoneEtcGmtNeg5 = "ETC_GMT_NEG_5" + + // TimezoneEtcGmtNeg6 is a Timezone enum value + TimezoneEtcGmtNeg6 = "ETC_GMT_NEG_6" + + // TimezoneEtcGmtNeg7 is a Timezone enum value + TimezoneEtcGmtNeg7 = "ETC_GMT_NEG_7" + + // TimezoneEtcGmtNeg8 is a Timezone enum value + TimezoneEtcGmtNeg8 = "ETC_GMT_NEG_8" + + // TimezoneEtcGmtNeg9 is a Timezone enum value + TimezoneEtcGmtNeg9 = "ETC_GMT_NEG_9" + + // TimezoneEuropeDublin is a Timezone enum value + TimezoneEuropeDublin = "EUROPE_DUBLIN" + + // TimezoneEuropeLondon is a Timezone enum value + TimezoneEuropeLondon = "EUROPE_LONDON" + + // TimezoneEuropeParis is a Timezone enum value + TimezoneEuropeParis = "EUROPE_PARIS" + + // TimezoneEuropeStockholm is a Timezone enum value + TimezoneEuropeStockholm = "EUROPE_STOCKHOLM" + + // TimezoneEuropeZurich is a Timezone enum value + TimezoneEuropeZurich = "EUROPE_ZURICH" + + // TimezoneIsrael is a Timezone enum value + TimezoneIsrael = "ISRAEL" + + // TimezoneMexicoGeneral is a Timezone enum value + TimezoneMexicoGeneral = "MEXICO_GENERAL" + + // TimezoneMst7mdt is a Timezone enum value + TimezoneMst7mdt = "MST7MDT" + + // TimezonePacificAuckland is a Timezone enum value + TimezonePacificAuckland = "PACIFIC_AUCKLAND" + + // TimezoneUsCentral is a Timezone enum value + TimezoneUsCentral = "US_CENTRAL" + + // TimezoneUsEastern is a Timezone enum value + TimezoneUsEastern = "US_EASTERN" + + // TimezoneUsMountain is a Timezone enum value + TimezoneUsMountain = "US_MOUNTAIN" + + // TimezoneUsPacific is a Timezone enum value + TimezoneUsPacific = "US_PACIFIC" +) + +// Timezone_Values returns all elements of the Timezone enum +func Timezone_Values() []string { + return []string{ + TimezoneUtc, + TimezoneAfricaJohannesburg, + TimezoneAmericaMontreal, + TimezoneAmericaSaoPaulo, + TimezoneAsiaBahrain, + TimezoneAsiaBangkok, + TimezoneAsiaCalcutta, + TimezoneAsiaDubai, + TimezoneAsiaHongKong, + TimezoneAsiaJakarta, + TimezoneAsiaKualaLumpur, + TimezoneAsiaSeoul, + TimezoneAsiaShanghai, + TimezoneAsiaSingapore, + TimezoneAsiaTaipei, + TimezoneAsiaTokyo, + TimezoneAustraliaMelbourne, + TimezoneAustraliaSydney, + TimezoneCanadaCentral, + TimezoneCet, + TimezoneCst6cdt, + TimezoneEtcGmt, + TimezoneEtcGmt0, + TimezoneEtcGmtAdd0, + TimezoneEtcGmtAdd1, + TimezoneEtcGmtAdd10, + TimezoneEtcGmtAdd11, + TimezoneEtcGmtAdd12, + TimezoneEtcGmtAdd2, + TimezoneEtcGmtAdd3, + TimezoneEtcGmtAdd4, + TimezoneEtcGmtAdd5, + TimezoneEtcGmtAdd6, + TimezoneEtcGmtAdd7, + TimezoneEtcGmtAdd8, + TimezoneEtcGmtAdd9, + TimezoneEtcGmtNeg0, + TimezoneEtcGmtNeg1, + TimezoneEtcGmtNeg10, + TimezoneEtcGmtNeg11, + TimezoneEtcGmtNeg12, + TimezoneEtcGmtNeg13, + TimezoneEtcGmtNeg14, + TimezoneEtcGmtNeg2, + TimezoneEtcGmtNeg3, + TimezoneEtcGmtNeg4, + TimezoneEtcGmtNeg5, + TimezoneEtcGmtNeg6, + TimezoneEtcGmtNeg7, + TimezoneEtcGmtNeg8, + TimezoneEtcGmtNeg9, + TimezoneEuropeDublin, + TimezoneEuropeLondon, + TimezoneEuropeParis, + TimezoneEuropeStockholm, + TimezoneEuropeZurich, + TimezoneIsrael, + TimezoneMexicoGeneral, + TimezoneMst7mdt, + TimezonePacificAuckland, + TimezoneUsCentral, + TimezoneUsEastern, + TimezoneUsMountain, + TimezoneUsPacific, + } +} + +const ( + // TypesSearchScopeAssetType is a TypesSearchScope enum value + TypesSearchScopeAssetType = "ASSET_TYPE" + + // TypesSearchScopeFormType is a TypesSearchScope enum value + TypesSearchScopeFormType = "FORM_TYPE" +) + +// TypesSearchScope_Values returns all elements of the TypesSearchScope enum +func TypesSearchScope_Values() []string { + return []string{ + TypesSearchScopeAssetType, + TypesSearchScopeFormType, + } +} + +const ( + // UserAssignmentAutomatic is a UserAssignment enum value + UserAssignmentAutomatic = "AUTOMATIC" + + // UserAssignmentManual is a UserAssignment enum value + UserAssignmentManual = "MANUAL" +) + +// UserAssignment_Values returns all elements of the UserAssignment enum +func UserAssignment_Values() []string { + return []string{ + UserAssignmentAutomatic, + UserAssignmentManual, + } +} + +const ( + // UserDesignationProjectOwner is a UserDesignation enum value + UserDesignationProjectOwner = "PROJECT_OWNER" + + // UserDesignationProjectContributor is a UserDesignation enum value + UserDesignationProjectContributor = "PROJECT_CONTRIBUTOR" +) + +// UserDesignation_Values returns all elements of the UserDesignation enum +func UserDesignation_Values() []string { + return []string{ + UserDesignationProjectOwner, + UserDesignationProjectContributor, + } +} + +const ( + // UserProfileStatusAssigned is a UserProfileStatus enum value + UserProfileStatusAssigned = "ASSIGNED" + + // UserProfileStatusNotAssigned is a UserProfileStatus enum value + UserProfileStatusNotAssigned = "NOT_ASSIGNED" + + // UserProfileStatusActivated is a UserProfileStatus enum value + UserProfileStatusActivated = "ACTIVATED" + + // UserProfileStatusDeactivated is a UserProfileStatus enum value + UserProfileStatusDeactivated = "DEACTIVATED" +) + +// UserProfileStatus_Values returns all elements of the UserProfileStatus enum +func UserProfileStatus_Values() []string { + return []string{ + UserProfileStatusAssigned, + UserProfileStatusNotAssigned, + UserProfileStatusActivated, + UserProfileStatusDeactivated, + } +} + +const ( + // UserProfileTypeIam is a UserProfileType enum value + UserProfileTypeIam = "IAM" + + // UserProfileTypeSso is a UserProfileType enum value + UserProfileTypeSso = "SSO" +) + +// UserProfileType_Values returns all elements of the UserProfileType enum +func UserProfileType_Values() []string { + return []string{ + UserProfileTypeIam, + UserProfileTypeSso, + } +} + +const ( + // UserSearchTypeSsoUser is a UserSearchType enum value + UserSearchTypeSsoUser = "SSO_USER" + + // UserSearchTypeDatazoneUser is a UserSearchType enum value + UserSearchTypeDatazoneUser = "DATAZONE_USER" + + // UserSearchTypeDatazoneSsoUser is a UserSearchType enum value + UserSearchTypeDatazoneSsoUser = "DATAZONE_SSO_USER" + + // UserSearchTypeDatazoneIamUser is a UserSearchType enum value + UserSearchTypeDatazoneIamUser = "DATAZONE_IAM_USER" +) + +// UserSearchType_Values returns all elements of the UserSearchType enum +func UserSearchType_Values() []string { + return []string{ + UserSearchTypeSsoUser, + UserSearchTypeDatazoneUser, + UserSearchTypeDatazoneSsoUser, + UserSearchTypeDatazoneIamUser, + } +} + +const ( + // UserTypeIamUser is a UserType enum value + UserTypeIamUser = "IAM_USER" + + // UserTypeIamRole is a UserType enum value + UserTypeIamRole = "IAM_ROLE" + + // UserTypeSsoUser is a UserType enum value + UserTypeSsoUser = "SSO_USER" +) + +// UserType_Values returns all elements of the UserType enum +func UserType_Values() []string { + return []string{ + UserTypeIamUser, + UserTypeIamRole, + UserTypeSsoUser, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/datazone/datazoneiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/datazone/datazoneiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/datazone/datazoneiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/datazone/datazoneiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,523 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package datazoneiface provides an interface to enable mocking the Amazon DataZone 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 datazoneiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/datazone" +) + +// DataZoneAPI provides an interface to enable mocking the +// datazone.DataZone 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 +// // Amazon DataZone. +// func myFunc(svc datazoneiface.DataZoneAPI) bool { +// // Make svc.AcceptPredictions request +// } +// +// func main() { +// sess := session.New() +// svc := datazone.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockDataZoneClient struct { +// datazoneiface.DataZoneAPI +// } +// func (m *mockDataZoneClient) AcceptPredictions(input *datazone.AcceptPredictionsInput) (*datazone.AcceptPredictionsOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockDataZoneClient{} +// +// 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 DataZoneAPI interface { + AcceptPredictions(*datazone.AcceptPredictionsInput) (*datazone.AcceptPredictionsOutput, error) + AcceptPredictionsWithContext(aws.Context, *datazone.AcceptPredictionsInput, ...request.Option) (*datazone.AcceptPredictionsOutput, error) + AcceptPredictionsRequest(*datazone.AcceptPredictionsInput) (*request.Request, *datazone.AcceptPredictionsOutput) + + AcceptSubscriptionRequest(*datazone.AcceptSubscriptionRequestInput) (*datazone.AcceptSubscriptionRequestOutput, error) + AcceptSubscriptionRequestWithContext(aws.Context, *datazone.AcceptSubscriptionRequestInput, ...request.Option) (*datazone.AcceptSubscriptionRequestOutput, error) + AcceptSubscriptionRequestRequest(*datazone.AcceptSubscriptionRequestInput) (*request.Request, *datazone.AcceptSubscriptionRequestOutput) + + CancelSubscription(*datazone.CancelSubscriptionInput) (*datazone.CancelSubscriptionOutput, error) + CancelSubscriptionWithContext(aws.Context, *datazone.CancelSubscriptionInput, ...request.Option) (*datazone.CancelSubscriptionOutput, error) + CancelSubscriptionRequest(*datazone.CancelSubscriptionInput) (*request.Request, *datazone.CancelSubscriptionOutput) + + CreateAsset(*datazone.CreateAssetInput) (*datazone.CreateAssetOutput, error) + CreateAssetWithContext(aws.Context, *datazone.CreateAssetInput, ...request.Option) (*datazone.CreateAssetOutput, error) + CreateAssetRequest(*datazone.CreateAssetInput) (*request.Request, *datazone.CreateAssetOutput) + + CreateAssetRevision(*datazone.CreateAssetRevisionInput) (*datazone.CreateAssetRevisionOutput, error) + CreateAssetRevisionWithContext(aws.Context, *datazone.CreateAssetRevisionInput, ...request.Option) (*datazone.CreateAssetRevisionOutput, error) + CreateAssetRevisionRequest(*datazone.CreateAssetRevisionInput) (*request.Request, *datazone.CreateAssetRevisionOutput) + + CreateAssetType(*datazone.CreateAssetTypeInput) (*datazone.CreateAssetTypeOutput, error) + CreateAssetTypeWithContext(aws.Context, *datazone.CreateAssetTypeInput, ...request.Option) (*datazone.CreateAssetTypeOutput, error) + CreateAssetTypeRequest(*datazone.CreateAssetTypeInput) (*request.Request, *datazone.CreateAssetTypeOutput) + + CreateDataSource(*datazone.CreateDataSourceInput) (*datazone.CreateDataSourceOutput, error) + CreateDataSourceWithContext(aws.Context, *datazone.CreateDataSourceInput, ...request.Option) (*datazone.CreateDataSourceOutput, error) + CreateDataSourceRequest(*datazone.CreateDataSourceInput) (*request.Request, *datazone.CreateDataSourceOutput) + + CreateDomain(*datazone.CreateDomainInput) (*datazone.CreateDomainOutput, error) + CreateDomainWithContext(aws.Context, *datazone.CreateDomainInput, ...request.Option) (*datazone.CreateDomainOutput, error) + CreateDomainRequest(*datazone.CreateDomainInput) (*request.Request, *datazone.CreateDomainOutput) + + CreateEnvironment(*datazone.CreateEnvironmentInput) (*datazone.CreateEnvironmentOutput, error) + CreateEnvironmentWithContext(aws.Context, *datazone.CreateEnvironmentInput, ...request.Option) (*datazone.CreateEnvironmentOutput, error) + CreateEnvironmentRequest(*datazone.CreateEnvironmentInput) (*request.Request, *datazone.CreateEnvironmentOutput) + + CreateEnvironmentProfile(*datazone.CreateEnvironmentProfileInput) (*datazone.CreateEnvironmentProfileOutput, error) + CreateEnvironmentProfileWithContext(aws.Context, *datazone.CreateEnvironmentProfileInput, ...request.Option) (*datazone.CreateEnvironmentProfileOutput, error) + CreateEnvironmentProfileRequest(*datazone.CreateEnvironmentProfileInput) (*request.Request, *datazone.CreateEnvironmentProfileOutput) + + CreateFormType(*datazone.CreateFormTypeInput) (*datazone.CreateFormTypeOutput, error) + CreateFormTypeWithContext(aws.Context, *datazone.CreateFormTypeInput, ...request.Option) (*datazone.CreateFormTypeOutput, error) + CreateFormTypeRequest(*datazone.CreateFormTypeInput) (*request.Request, *datazone.CreateFormTypeOutput) + + CreateGlossary(*datazone.CreateGlossaryInput) (*datazone.CreateGlossaryOutput, error) + CreateGlossaryWithContext(aws.Context, *datazone.CreateGlossaryInput, ...request.Option) (*datazone.CreateGlossaryOutput, error) + CreateGlossaryRequest(*datazone.CreateGlossaryInput) (*request.Request, *datazone.CreateGlossaryOutput) + + CreateGlossaryTerm(*datazone.CreateGlossaryTermInput) (*datazone.CreateGlossaryTermOutput, error) + CreateGlossaryTermWithContext(aws.Context, *datazone.CreateGlossaryTermInput, ...request.Option) (*datazone.CreateGlossaryTermOutput, error) + CreateGlossaryTermRequest(*datazone.CreateGlossaryTermInput) (*request.Request, *datazone.CreateGlossaryTermOutput) + + CreateGroupProfile(*datazone.CreateGroupProfileInput) (*datazone.CreateGroupProfileOutput, error) + CreateGroupProfileWithContext(aws.Context, *datazone.CreateGroupProfileInput, ...request.Option) (*datazone.CreateGroupProfileOutput, error) + CreateGroupProfileRequest(*datazone.CreateGroupProfileInput) (*request.Request, *datazone.CreateGroupProfileOutput) + + CreateListingChangeSet(*datazone.CreateListingChangeSetInput) (*datazone.CreateListingChangeSetOutput, error) + CreateListingChangeSetWithContext(aws.Context, *datazone.CreateListingChangeSetInput, ...request.Option) (*datazone.CreateListingChangeSetOutput, error) + CreateListingChangeSetRequest(*datazone.CreateListingChangeSetInput) (*request.Request, *datazone.CreateListingChangeSetOutput) + + CreateProject(*datazone.CreateProjectInput) (*datazone.CreateProjectOutput, error) + CreateProjectWithContext(aws.Context, *datazone.CreateProjectInput, ...request.Option) (*datazone.CreateProjectOutput, error) + CreateProjectRequest(*datazone.CreateProjectInput) (*request.Request, *datazone.CreateProjectOutput) + + CreateProjectMembership(*datazone.CreateProjectMembershipInput) (*datazone.CreateProjectMembershipOutput, error) + CreateProjectMembershipWithContext(aws.Context, *datazone.CreateProjectMembershipInput, ...request.Option) (*datazone.CreateProjectMembershipOutput, error) + CreateProjectMembershipRequest(*datazone.CreateProjectMembershipInput) (*request.Request, *datazone.CreateProjectMembershipOutput) + + CreateSubscriptionGrant(*datazone.CreateSubscriptionGrantInput) (*datazone.CreateSubscriptionGrantOutput, error) + CreateSubscriptionGrantWithContext(aws.Context, *datazone.CreateSubscriptionGrantInput, ...request.Option) (*datazone.CreateSubscriptionGrantOutput, error) + CreateSubscriptionGrantRequest(*datazone.CreateSubscriptionGrantInput) (*request.Request, *datazone.CreateSubscriptionGrantOutput) + + CreateSubscriptionRequest(*datazone.CreateSubscriptionRequestInput) (*datazone.CreateSubscriptionRequestOutput, error) + CreateSubscriptionRequestWithContext(aws.Context, *datazone.CreateSubscriptionRequestInput, ...request.Option) (*datazone.CreateSubscriptionRequestOutput, error) + CreateSubscriptionRequestRequest(*datazone.CreateSubscriptionRequestInput) (*request.Request, *datazone.CreateSubscriptionRequestOutput) + + CreateSubscriptionTarget(*datazone.CreateSubscriptionTargetInput) (*datazone.CreateSubscriptionTargetOutput, error) + CreateSubscriptionTargetWithContext(aws.Context, *datazone.CreateSubscriptionTargetInput, ...request.Option) (*datazone.CreateSubscriptionTargetOutput, error) + CreateSubscriptionTargetRequest(*datazone.CreateSubscriptionTargetInput) (*request.Request, *datazone.CreateSubscriptionTargetOutput) + + CreateUserProfile(*datazone.CreateUserProfileInput) (*datazone.CreateUserProfileOutput, error) + CreateUserProfileWithContext(aws.Context, *datazone.CreateUserProfileInput, ...request.Option) (*datazone.CreateUserProfileOutput, error) + CreateUserProfileRequest(*datazone.CreateUserProfileInput) (*request.Request, *datazone.CreateUserProfileOutput) + + DeleteAsset(*datazone.DeleteAssetInput) (*datazone.DeleteAssetOutput, error) + DeleteAssetWithContext(aws.Context, *datazone.DeleteAssetInput, ...request.Option) (*datazone.DeleteAssetOutput, error) + DeleteAssetRequest(*datazone.DeleteAssetInput) (*request.Request, *datazone.DeleteAssetOutput) + + DeleteAssetType(*datazone.DeleteAssetTypeInput) (*datazone.DeleteAssetTypeOutput, error) + DeleteAssetTypeWithContext(aws.Context, *datazone.DeleteAssetTypeInput, ...request.Option) (*datazone.DeleteAssetTypeOutput, error) + DeleteAssetTypeRequest(*datazone.DeleteAssetTypeInput) (*request.Request, *datazone.DeleteAssetTypeOutput) + + DeleteDataSource(*datazone.DeleteDataSourceInput) (*datazone.DeleteDataSourceOutput, error) + DeleteDataSourceWithContext(aws.Context, *datazone.DeleteDataSourceInput, ...request.Option) (*datazone.DeleteDataSourceOutput, error) + DeleteDataSourceRequest(*datazone.DeleteDataSourceInput) (*request.Request, *datazone.DeleteDataSourceOutput) + + DeleteDomain(*datazone.DeleteDomainInput) (*datazone.DeleteDomainOutput, error) + DeleteDomainWithContext(aws.Context, *datazone.DeleteDomainInput, ...request.Option) (*datazone.DeleteDomainOutput, error) + DeleteDomainRequest(*datazone.DeleteDomainInput) (*request.Request, *datazone.DeleteDomainOutput) + + DeleteEnvironment(*datazone.DeleteEnvironmentInput) (*datazone.DeleteEnvironmentOutput, error) + DeleteEnvironmentWithContext(aws.Context, *datazone.DeleteEnvironmentInput, ...request.Option) (*datazone.DeleteEnvironmentOutput, error) + DeleteEnvironmentRequest(*datazone.DeleteEnvironmentInput) (*request.Request, *datazone.DeleteEnvironmentOutput) + + DeleteEnvironmentBlueprintConfiguration(*datazone.DeleteEnvironmentBlueprintConfigurationInput) (*datazone.DeleteEnvironmentBlueprintConfigurationOutput, error) + DeleteEnvironmentBlueprintConfigurationWithContext(aws.Context, *datazone.DeleteEnvironmentBlueprintConfigurationInput, ...request.Option) (*datazone.DeleteEnvironmentBlueprintConfigurationOutput, error) + DeleteEnvironmentBlueprintConfigurationRequest(*datazone.DeleteEnvironmentBlueprintConfigurationInput) (*request.Request, *datazone.DeleteEnvironmentBlueprintConfigurationOutput) + + DeleteEnvironmentProfile(*datazone.DeleteEnvironmentProfileInput) (*datazone.DeleteEnvironmentProfileOutput, error) + DeleteEnvironmentProfileWithContext(aws.Context, *datazone.DeleteEnvironmentProfileInput, ...request.Option) (*datazone.DeleteEnvironmentProfileOutput, error) + DeleteEnvironmentProfileRequest(*datazone.DeleteEnvironmentProfileInput) (*request.Request, *datazone.DeleteEnvironmentProfileOutput) + + DeleteFormType(*datazone.DeleteFormTypeInput) (*datazone.DeleteFormTypeOutput, error) + DeleteFormTypeWithContext(aws.Context, *datazone.DeleteFormTypeInput, ...request.Option) (*datazone.DeleteFormTypeOutput, error) + DeleteFormTypeRequest(*datazone.DeleteFormTypeInput) (*request.Request, *datazone.DeleteFormTypeOutput) + + DeleteGlossary(*datazone.DeleteGlossaryInput) (*datazone.DeleteGlossaryOutput, error) + DeleteGlossaryWithContext(aws.Context, *datazone.DeleteGlossaryInput, ...request.Option) (*datazone.DeleteGlossaryOutput, error) + DeleteGlossaryRequest(*datazone.DeleteGlossaryInput) (*request.Request, *datazone.DeleteGlossaryOutput) + + DeleteGlossaryTerm(*datazone.DeleteGlossaryTermInput) (*datazone.DeleteGlossaryTermOutput, error) + DeleteGlossaryTermWithContext(aws.Context, *datazone.DeleteGlossaryTermInput, ...request.Option) (*datazone.DeleteGlossaryTermOutput, error) + DeleteGlossaryTermRequest(*datazone.DeleteGlossaryTermInput) (*request.Request, *datazone.DeleteGlossaryTermOutput) + + DeleteListing(*datazone.DeleteListingInput) (*datazone.DeleteListingOutput, error) + DeleteListingWithContext(aws.Context, *datazone.DeleteListingInput, ...request.Option) (*datazone.DeleteListingOutput, error) + DeleteListingRequest(*datazone.DeleteListingInput) (*request.Request, *datazone.DeleteListingOutput) + + DeleteProject(*datazone.DeleteProjectInput) (*datazone.DeleteProjectOutput, error) + DeleteProjectWithContext(aws.Context, *datazone.DeleteProjectInput, ...request.Option) (*datazone.DeleteProjectOutput, error) + DeleteProjectRequest(*datazone.DeleteProjectInput) (*request.Request, *datazone.DeleteProjectOutput) + + DeleteProjectMembership(*datazone.DeleteProjectMembershipInput) (*datazone.DeleteProjectMembershipOutput, error) + DeleteProjectMembershipWithContext(aws.Context, *datazone.DeleteProjectMembershipInput, ...request.Option) (*datazone.DeleteProjectMembershipOutput, error) + DeleteProjectMembershipRequest(*datazone.DeleteProjectMembershipInput) (*request.Request, *datazone.DeleteProjectMembershipOutput) + + DeleteSubscriptionGrant(*datazone.DeleteSubscriptionGrantInput) (*datazone.DeleteSubscriptionGrantOutput, error) + DeleteSubscriptionGrantWithContext(aws.Context, *datazone.DeleteSubscriptionGrantInput, ...request.Option) (*datazone.DeleteSubscriptionGrantOutput, error) + DeleteSubscriptionGrantRequest(*datazone.DeleteSubscriptionGrantInput) (*request.Request, *datazone.DeleteSubscriptionGrantOutput) + + DeleteSubscriptionRequest(*datazone.DeleteSubscriptionRequestInput) (*datazone.DeleteSubscriptionRequestOutput, error) + DeleteSubscriptionRequestWithContext(aws.Context, *datazone.DeleteSubscriptionRequestInput, ...request.Option) (*datazone.DeleteSubscriptionRequestOutput, error) + DeleteSubscriptionRequestRequest(*datazone.DeleteSubscriptionRequestInput) (*request.Request, *datazone.DeleteSubscriptionRequestOutput) + + DeleteSubscriptionTarget(*datazone.DeleteSubscriptionTargetInput) (*datazone.DeleteSubscriptionTargetOutput, error) + DeleteSubscriptionTargetWithContext(aws.Context, *datazone.DeleteSubscriptionTargetInput, ...request.Option) (*datazone.DeleteSubscriptionTargetOutput, error) + DeleteSubscriptionTargetRequest(*datazone.DeleteSubscriptionTargetInput) (*request.Request, *datazone.DeleteSubscriptionTargetOutput) + + GetAsset(*datazone.GetAssetInput) (*datazone.GetAssetOutput, error) + GetAssetWithContext(aws.Context, *datazone.GetAssetInput, ...request.Option) (*datazone.GetAssetOutput, error) + GetAssetRequest(*datazone.GetAssetInput) (*request.Request, *datazone.GetAssetOutput) + + GetAssetType(*datazone.GetAssetTypeInput) (*datazone.GetAssetTypeOutput, error) + GetAssetTypeWithContext(aws.Context, *datazone.GetAssetTypeInput, ...request.Option) (*datazone.GetAssetTypeOutput, error) + GetAssetTypeRequest(*datazone.GetAssetTypeInput) (*request.Request, *datazone.GetAssetTypeOutput) + + GetDataSource(*datazone.GetDataSourceInput) (*datazone.GetDataSourceOutput, error) + GetDataSourceWithContext(aws.Context, *datazone.GetDataSourceInput, ...request.Option) (*datazone.GetDataSourceOutput, error) + GetDataSourceRequest(*datazone.GetDataSourceInput) (*request.Request, *datazone.GetDataSourceOutput) + + GetDataSourceRun(*datazone.GetDataSourceRunInput) (*datazone.GetDataSourceRunOutput, error) + GetDataSourceRunWithContext(aws.Context, *datazone.GetDataSourceRunInput, ...request.Option) (*datazone.GetDataSourceRunOutput, error) + GetDataSourceRunRequest(*datazone.GetDataSourceRunInput) (*request.Request, *datazone.GetDataSourceRunOutput) + + GetDomain(*datazone.GetDomainInput) (*datazone.GetDomainOutput, error) + GetDomainWithContext(aws.Context, *datazone.GetDomainInput, ...request.Option) (*datazone.GetDomainOutput, error) + GetDomainRequest(*datazone.GetDomainInput) (*request.Request, *datazone.GetDomainOutput) + + GetEnvironment(*datazone.GetEnvironmentInput) (*datazone.GetEnvironmentOutput, error) + GetEnvironmentWithContext(aws.Context, *datazone.GetEnvironmentInput, ...request.Option) (*datazone.GetEnvironmentOutput, error) + GetEnvironmentRequest(*datazone.GetEnvironmentInput) (*request.Request, *datazone.GetEnvironmentOutput) + + GetEnvironmentBlueprint(*datazone.GetEnvironmentBlueprintInput) (*datazone.GetEnvironmentBlueprintOutput, error) + GetEnvironmentBlueprintWithContext(aws.Context, *datazone.GetEnvironmentBlueprintInput, ...request.Option) (*datazone.GetEnvironmentBlueprintOutput, error) + GetEnvironmentBlueprintRequest(*datazone.GetEnvironmentBlueprintInput) (*request.Request, *datazone.GetEnvironmentBlueprintOutput) + + GetEnvironmentBlueprintConfiguration(*datazone.GetEnvironmentBlueprintConfigurationInput) (*datazone.GetEnvironmentBlueprintConfigurationOutput, error) + GetEnvironmentBlueprintConfigurationWithContext(aws.Context, *datazone.GetEnvironmentBlueprintConfigurationInput, ...request.Option) (*datazone.GetEnvironmentBlueprintConfigurationOutput, error) + GetEnvironmentBlueprintConfigurationRequest(*datazone.GetEnvironmentBlueprintConfigurationInput) (*request.Request, *datazone.GetEnvironmentBlueprintConfigurationOutput) + + GetEnvironmentProfile(*datazone.GetEnvironmentProfileInput) (*datazone.GetEnvironmentProfileOutput, error) + GetEnvironmentProfileWithContext(aws.Context, *datazone.GetEnvironmentProfileInput, ...request.Option) (*datazone.GetEnvironmentProfileOutput, error) + GetEnvironmentProfileRequest(*datazone.GetEnvironmentProfileInput) (*request.Request, *datazone.GetEnvironmentProfileOutput) + + GetFormType(*datazone.GetFormTypeInput) (*datazone.GetFormTypeOutput, error) + GetFormTypeWithContext(aws.Context, *datazone.GetFormTypeInput, ...request.Option) (*datazone.GetFormTypeOutput, error) + GetFormTypeRequest(*datazone.GetFormTypeInput) (*request.Request, *datazone.GetFormTypeOutput) + + GetGlossary(*datazone.GetGlossaryInput) (*datazone.GetGlossaryOutput, error) + GetGlossaryWithContext(aws.Context, *datazone.GetGlossaryInput, ...request.Option) (*datazone.GetGlossaryOutput, error) + GetGlossaryRequest(*datazone.GetGlossaryInput) (*request.Request, *datazone.GetGlossaryOutput) + + GetGlossaryTerm(*datazone.GetGlossaryTermInput) (*datazone.GetGlossaryTermOutput, error) + GetGlossaryTermWithContext(aws.Context, *datazone.GetGlossaryTermInput, ...request.Option) (*datazone.GetGlossaryTermOutput, error) + GetGlossaryTermRequest(*datazone.GetGlossaryTermInput) (*request.Request, *datazone.GetGlossaryTermOutput) + + GetGroupProfile(*datazone.GetGroupProfileInput) (*datazone.GetGroupProfileOutput, error) + GetGroupProfileWithContext(aws.Context, *datazone.GetGroupProfileInput, ...request.Option) (*datazone.GetGroupProfileOutput, error) + GetGroupProfileRequest(*datazone.GetGroupProfileInput) (*request.Request, *datazone.GetGroupProfileOutput) + + GetIamPortalLoginUrl(*datazone.GetIamPortalLoginUrlInput) (*datazone.GetIamPortalLoginUrlOutput, error) + GetIamPortalLoginUrlWithContext(aws.Context, *datazone.GetIamPortalLoginUrlInput, ...request.Option) (*datazone.GetIamPortalLoginUrlOutput, error) + GetIamPortalLoginUrlRequest(*datazone.GetIamPortalLoginUrlInput) (*request.Request, *datazone.GetIamPortalLoginUrlOutput) + + GetListing(*datazone.GetListingInput) (*datazone.GetListingOutput, error) + GetListingWithContext(aws.Context, *datazone.GetListingInput, ...request.Option) (*datazone.GetListingOutput, error) + GetListingRequest(*datazone.GetListingInput) (*request.Request, *datazone.GetListingOutput) + + GetProject(*datazone.GetProjectInput) (*datazone.GetProjectOutput, error) + GetProjectWithContext(aws.Context, *datazone.GetProjectInput, ...request.Option) (*datazone.GetProjectOutput, error) + GetProjectRequest(*datazone.GetProjectInput) (*request.Request, *datazone.GetProjectOutput) + + GetSubscription(*datazone.GetSubscriptionInput) (*datazone.GetSubscriptionOutput, error) + GetSubscriptionWithContext(aws.Context, *datazone.GetSubscriptionInput, ...request.Option) (*datazone.GetSubscriptionOutput, error) + GetSubscriptionRequest(*datazone.GetSubscriptionInput) (*request.Request, *datazone.GetSubscriptionOutput) + + GetSubscriptionGrant(*datazone.GetSubscriptionGrantInput) (*datazone.GetSubscriptionGrantOutput, error) + GetSubscriptionGrantWithContext(aws.Context, *datazone.GetSubscriptionGrantInput, ...request.Option) (*datazone.GetSubscriptionGrantOutput, error) + GetSubscriptionGrantRequest(*datazone.GetSubscriptionGrantInput) (*request.Request, *datazone.GetSubscriptionGrantOutput) + + GetSubscriptionRequestDetails(*datazone.GetSubscriptionRequestDetailsInput) (*datazone.GetSubscriptionRequestDetailsOutput, error) + GetSubscriptionRequestDetailsWithContext(aws.Context, *datazone.GetSubscriptionRequestDetailsInput, ...request.Option) (*datazone.GetSubscriptionRequestDetailsOutput, error) + GetSubscriptionRequestDetailsRequest(*datazone.GetSubscriptionRequestDetailsInput) (*request.Request, *datazone.GetSubscriptionRequestDetailsOutput) + + GetSubscriptionTarget(*datazone.GetSubscriptionTargetInput) (*datazone.GetSubscriptionTargetOutput, error) + GetSubscriptionTargetWithContext(aws.Context, *datazone.GetSubscriptionTargetInput, ...request.Option) (*datazone.GetSubscriptionTargetOutput, error) + GetSubscriptionTargetRequest(*datazone.GetSubscriptionTargetInput) (*request.Request, *datazone.GetSubscriptionTargetOutput) + + GetUserProfile(*datazone.GetUserProfileInput) (*datazone.GetUserProfileOutput, error) + GetUserProfileWithContext(aws.Context, *datazone.GetUserProfileInput, ...request.Option) (*datazone.GetUserProfileOutput, error) + GetUserProfileRequest(*datazone.GetUserProfileInput) (*request.Request, *datazone.GetUserProfileOutput) + + ListAssetRevisions(*datazone.ListAssetRevisionsInput) (*datazone.ListAssetRevisionsOutput, error) + ListAssetRevisionsWithContext(aws.Context, *datazone.ListAssetRevisionsInput, ...request.Option) (*datazone.ListAssetRevisionsOutput, error) + ListAssetRevisionsRequest(*datazone.ListAssetRevisionsInput) (*request.Request, *datazone.ListAssetRevisionsOutput) + + ListAssetRevisionsPages(*datazone.ListAssetRevisionsInput, func(*datazone.ListAssetRevisionsOutput, bool) bool) error + ListAssetRevisionsPagesWithContext(aws.Context, *datazone.ListAssetRevisionsInput, func(*datazone.ListAssetRevisionsOutput, bool) bool, ...request.Option) error + + ListDataSourceRunActivities(*datazone.ListDataSourceRunActivitiesInput) (*datazone.ListDataSourceRunActivitiesOutput, error) + ListDataSourceRunActivitiesWithContext(aws.Context, *datazone.ListDataSourceRunActivitiesInput, ...request.Option) (*datazone.ListDataSourceRunActivitiesOutput, error) + ListDataSourceRunActivitiesRequest(*datazone.ListDataSourceRunActivitiesInput) (*request.Request, *datazone.ListDataSourceRunActivitiesOutput) + + ListDataSourceRunActivitiesPages(*datazone.ListDataSourceRunActivitiesInput, func(*datazone.ListDataSourceRunActivitiesOutput, bool) bool) error + ListDataSourceRunActivitiesPagesWithContext(aws.Context, *datazone.ListDataSourceRunActivitiesInput, func(*datazone.ListDataSourceRunActivitiesOutput, bool) bool, ...request.Option) error + + ListDataSourceRuns(*datazone.ListDataSourceRunsInput) (*datazone.ListDataSourceRunsOutput, error) + ListDataSourceRunsWithContext(aws.Context, *datazone.ListDataSourceRunsInput, ...request.Option) (*datazone.ListDataSourceRunsOutput, error) + ListDataSourceRunsRequest(*datazone.ListDataSourceRunsInput) (*request.Request, *datazone.ListDataSourceRunsOutput) + + ListDataSourceRunsPages(*datazone.ListDataSourceRunsInput, func(*datazone.ListDataSourceRunsOutput, bool) bool) error + ListDataSourceRunsPagesWithContext(aws.Context, *datazone.ListDataSourceRunsInput, func(*datazone.ListDataSourceRunsOutput, bool) bool, ...request.Option) error + + ListDataSources(*datazone.ListDataSourcesInput) (*datazone.ListDataSourcesOutput, error) + ListDataSourcesWithContext(aws.Context, *datazone.ListDataSourcesInput, ...request.Option) (*datazone.ListDataSourcesOutput, error) + ListDataSourcesRequest(*datazone.ListDataSourcesInput) (*request.Request, *datazone.ListDataSourcesOutput) + + ListDataSourcesPages(*datazone.ListDataSourcesInput, func(*datazone.ListDataSourcesOutput, bool) bool) error + ListDataSourcesPagesWithContext(aws.Context, *datazone.ListDataSourcesInput, func(*datazone.ListDataSourcesOutput, bool) bool, ...request.Option) error + + ListDomains(*datazone.ListDomainsInput) (*datazone.ListDomainsOutput, error) + ListDomainsWithContext(aws.Context, *datazone.ListDomainsInput, ...request.Option) (*datazone.ListDomainsOutput, error) + ListDomainsRequest(*datazone.ListDomainsInput) (*request.Request, *datazone.ListDomainsOutput) + + ListDomainsPages(*datazone.ListDomainsInput, func(*datazone.ListDomainsOutput, bool) bool) error + ListDomainsPagesWithContext(aws.Context, *datazone.ListDomainsInput, func(*datazone.ListDomainsOutput, bool) bool, ...request.Option) error + + ListEnvironmentBlueprintConfigurations(*datazone.ListEnvironmentBlueprintConfigurationsInput) (*datazone.ListEnvironmentBlueprintConfigurationsOutput, error) + ListEnvironmentBlueprintConfigurationsWithContext(aws.Context, *datazone.ListEnvironmentBlueprintConfigurationsInput, ...request.Option) (*datazone.ListEnvironmentBlueprintConfigurationsOutput, error) + ListEnvironmentBlueprintConfigurationsRequest(*datazone.ListEnvironmentBlueprintConfigurationsInput) (*request.Request, *datazone.ListEnvironmentBlueprintConfigurationsOutput) + + ListEnvironmentBlueprintConfigurationsPages(*datazone.ListEnvironmentBlueprintConfigurationsInput, func(*datazone.ListEnvironmentBlueprintConfigurationsOutput, bool) bool) error + ListEnvironmentBlueprintConfigurationsPagesWithContext(aws.Context, *datazone.ListEnvironmentBlueprintConfigurationsInput, func(*datazone.ListEnvironmentBlueprintConfigurationsOutput, bool) bool, ...request.Option) error + + ListEnvironmentBlueprints(*datazone.ListEnvironmentBlueprintsInput) (*datazone.ListEnvironmentBlueprintsOutput, error) + ListEnvironmentBlueprintsWithContext(aws.Context, *datazone.ListEnvironmentBlueprintsInput, ...request.Option) (*datazone.ListEnvironmentBlueprintsOutput, error) + ListEnvironmentBlueprintsRequest(*datazone.ListEnvironmentBlueprintsInput) (*request.Request, *datazone.ListEnvironmentBlueprintsOutput) + + ListEnvironmentBlueprintsPages(*datazone.ListEnvironmentBlueprintsInput, func(*datazone.ListEnvironmentBlueprintsOutput, bool) bool) error + ListEnvironmentBlueprintsPagesWithContext(aws.Context, *datazone.ListEnvironmentBlueprintsInput, func(*datazone.ListEnvironmentBlueprintsOutput, bool) bool, ...request.Option) error + + ListEnvironmentProfiles(*datazone.ListEnvironmentProfilesInput) (*datazone.ListEnvironmentProfilesOutput, error) + ListEnvironmentProfilesWithContext(aws.Context, *datazone.ListEnvironmentProfilesInput, ...request.Option) (*datazone.ListEnvironmentProfilesOutput, error) + ListEnvironmentProfilesRequest(*datazone.ListEnvironmentProfilesInput) (*request.Request, *datazone.ListEnvironmentProfilesOutput) + + ListEnvironmentProfilesPages(*datazone.ListEnvironmentProfilesInput, func(*datazone.ListEnvironmentProfilesOutput, bool) bool) error + ListEnvironmentProfilesPagesWithContext(aws.Context, *datazone.ListEnvironmentProfilesInput, func(*datazone.ListEnvironmentProfilesOutput, bool) bool, ...request.Option) error + + ListEnvironments(*datazone.ListEnvironmentsInput) (*datazone.ListEnvironmentsOutput, error) + ListEnvironmentsWithContext(aws.Context, *datazone.ListEnvironmentsInput, ...request.Option) (*datazone.ListEnvironmentsOutput, error) + ListEnvironmentsRequest(*datazone.ListEnvironmentsInput) (*request.Request, *datazone.ListEnvironmentsOutput) + + ListEnvironmentsPages(*datazone.ListEnvironmentsInput, func(*datazone.ListEnvironmentsOutput, bool) bool) error + ListEnvironmentsPagesWithContext(aws.Context, *datazone.ListEnvironmentsInput, func(*datazone.ListEnvironmentsOutput, bool) bool, ...request.Option) error + + ListNotifications(*datazone.ListNotificationsInput) (*datazone.ListNotificationsOutput, error) + ListNotificationsWithContext(aws.Context, *datazone.ListNotificationsInput, ...request.Option) (*datazone.ListNotificationsOutput, error) + ListNotificationsRequest(*datazone.ListNotificationsInput) (*request.Request, *datazone.ListNotificationsOutput) + + ListNotificationsPages(*datazone.ListNotificationsInput, func(*datazone.ListNotificationsOutput, bool) bool) error + ListNotificationsPagesWithContext(aws.Context, *datazone.ListNotificationsInput, func(*datazone.ListNotificationsOutput, bool) bool, ...request.Option) error + + ListProjectMemberships(*datazone.ListProjectMembershipsInput) (*datazone.ListProjectMembershipsOutput, error) + ListProjectMembershipsWithContext(aws.Context, *datazone.ListProjectMembershipsInput, ...request.Option) (*datazone.ListProjectMembershipsOutput, error) + ListProjectMembershipsRequest(*datazone.ListProjectMembershipsInput) (*request.Request, *datazone.ListProjectMembershipsOutput) + + ListProjectMembershipsPages(*datazone.ListProjectMembershipsInput, func(*datazone.ListProjectMembershipsOutput, bool) bool) error + ListProjectMembershipsPagesWithContext(aws.Context, *datazone.ListProjectMembershipsInput, func(*datazone.ListProjectMembershipsOutput, bool) bool, ...request.Option) error + + ListProjects(*datazone.ListProjectsInput) (*datazone.ListProjectsOutput, error) + ListProjectsWithContext(aws.Context, *datazone.ListProjectsInput, ...request.Option) (*datazone.ListProjectsOutput, error) + ListProjectsRequest(*datazone.ListProjectsInput) (*request.Request, *datazone.ListProjectsOutput) + + ListProjectsPages(*datazone.ListProjectsInput, func(*datazone.ListProjectsOutput, bool) bool) error + ListProjectsPagesWithContext(aws.Context, *datazone.ListProjectsInput, func(*datazone.ListProjectsOutput, bool) bool, ...request.Option) error + + ListSubscriptionGrants(*datazone.ListSubscriptionGrantsInput) (*datazone.ListSubscriptionGrantsOutput, error) + ListSubscriptionGrantsWithContext(aws.Context, *datazone.ListSubscriptionGrantsInput, ...request.Option) (*datazone.ListSubscriptionGrantsOutput, error) + ListSubscriptionGrantsRequest(*datazone.ListSubscriptionGrantsInput) (*request.Request, *datazone.ListSubscriptionGrantsOutput) + + ListSubscriptionGrantsPages(*datazone.ListSubscriptionGrantsInput, func(*datazone.ListSubscriptionGrantsOutput, bool) bool) error + ListSubscriptionGrantsPagesWithContext(aws.Context, *datazone.ListSubscriptionGrantsInput, func(*datazone.ListSubscriptionGrantsOutput, bool) bool, ...request.Option) error + + ListSubscriptionRequests(*datazone.ListSubscriptionRequestsInput) (*datazone.ListSubscriptionRequestsOutput, error) + ListSubscriptionRequestsWithContext(aws.Context, *datazone.ListSubscriptionRequestsInput, ...request.Option) (*datazone.ListSubscriptionRequestsOutput, error) + ListSubscriptionRequestsRequest(*datazone.ListSubscriptionRequestsInput) (*request.Request, *datazone.ListSubscriptionRequestsOutput) + + ListSubscriptionRequestsPages(*datazone.ListSubscriptionRequestsInput, func(*datazone.ListSubscriptionRequestsOutput, bool) bool) error + ListSubscriptionRequestsPagesWithContext(aws.Context, *datazone.ListSubscriptionRequestsInput, func(*datazone.ListSubscriptionRequestsOutput, bool) bool, ...request.Option) error + + ListSubscriptionTargets(*datazone.ListSubscriptionTargetsInput) (*datazone.ListSubscriptionTargetsOutput, error) + ListSubscriptionTargetsWithContext(aws.Context, *datazone.ListSubscriptionTargetsInput, ...request.Option) (*datazone.ListSubscriptionTargetsOutput, error) + ListSubscriptionTargetsRequest(*datazone.ListSubscriptionTargetsInput) (*request.Request, *datazone.ListSubscriptionTargetsOutput) + + ListSubscriptionTargetsPages(*datazone.ListSubscriptionTargetsInput, func(*datazone.ListSubscriptionTargetsOutput, bool) bool) error + ListSubscriptionTargetsPagesWithContext(aws.Context, *datazone.ListSubscriptionTargetsInput, func(*datazone.ListSubscriptionTargetsOutput, bool) bool, ...request.Option) error + + ListSubscriptions(*datazone.ListSubscriptionsInput) (*datazone.ListSubscriptionsOutput, error) + ListSubscriptionsWithContext(aws.Context, *datazone.ListSubscriptionsInput, ...request.Option) (*datazone.ListSubscriptionsOutput, error) + ListSubscriptionsRequest(*datazone.ListSubscriptionsInput) (*request.Request, *datazone.ListSubscriptionsOutput) + + ListSubscriptionsPages(*datazone.ListSubscriptionsInput, func(*datazone.ListSubscriptionsOutput, bool) bool) error + ListSubscriptionsPagesWithContext(aws.Context, *datazone.ListSubscriptionsInput, func(*datazone.ListSubscriptionsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*datazone.ListTagsForResourceInput) (*datazone.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *datazone.ListTagsForResourceInput, ...request.Option) (*datazone.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*datazone.ListTagsForResourceInput) (*request.Request, *datazone.ListTagsForResourceOutput) + + PutEnvironmentBlueprintConfiguration(*datazone.PutEnvironmentBlueprintConfigurationInput) (*datazone.PutEnvironmentBlueprintConfigurationOutput, error) + PutEnvironmentBlueprintConfigurationWithContext(aws.Context, *datazone.PutEnvironmentBlueprintConfigurationInput, ...request.Option) (*datazone.PutEnvironmentBlueprintConfigurationOutput, error) + PutEnvironmentBlueprintConfigurationRequest(*datazone.PutEnvironmentBlueprintConfigurationInput) (*request.Request, *datazone.PutEnvironmentBlueprintConfigurationOutput) + + RejectPredictions(*datazone.RejectPredictionsInput) (*datazone.RejectPredictionsOutput, error) + RejectPredictionsWithContext(aws.Context, *datazone.RejectPredictionsInput, ...request.Option) (*datazone.RejectPredictionsOutput, error) + RejectPredictionsRequest(*datazone.RejectPredictionsInput) (*request.Request, *datazone.RejectPredictionsOutput) + + RejectSubscriptionRequest(*datazone.RejectSubscriptionRequestInput) (*datazone.RejectSubscriptionRequestOutput, error) + RejectSubscriptionRequestWithContext(aws.Context, *datazone.RejectSubscriptionRequestInput, ...request.Option) (*datazone.RejectSubscriptionRequestOutput, error) + RejectSubscriptionRequestRequest(*datazone.RejectSubscriptionRequestInput) (*request.Request, *datazone.RejectSubscriptionRequestOutput) + + RevokeSubscription(*datazone.RevokeSubscriptionInput) (*datazone.RevokeSubscriptionOutput, error) + RevokeSubscriptionWithContext(aws.Context, *datazone.RevokeSubscriptionInput, ...request.Option) (*datazone.RevokeSubscriptionOutput, error) + RevokeSubscriptionRequest(*datazone.RevokeSubscriptionInput) (*request.Request, *datazone.RevokeSubscriptionOutput) + + Search(*datazone.SearchInput) (*datazone.SearchOutput, error) + SearchWithContext(aws.Context, *datazone.SearchInput, ...request.Option) (*datazone.SearchOutput, error) + SearchRequest(*datazone.SearchInput) (*request.Request, *datazone.SearchOutput) + + SearchPages(*datazone.SearchInput, func(*datazone.SearchOutput, bool) bool) error + SearchPagesWithContext(aws.Context, *datazone.SearchInput, func(*datazone.SearchOutput, bool) bool, ...request.Option) error + + SearchGroupProfiles(*datazone.SearchGroupProfilesInput) (*datazone.SearchGroupProfilesOutput, error) + SearchGroupProfilesWithContext(aws.Context, *datazone.SearchGroupProfilesInput, ...request.Option) (*datazone.SearchGroupProfilesOutput, error) + SearchGroupProfilesRequest(*datazone.SearchGroupProfilesInput) (*request.Request, *datazone.SearchGroupProfilesOutput) + + SearchGroupProfilesPages(*datazone.SearchGroupProfilesInput, func(*datazone.SearchGroupProfilesOutput, bool) bool) error + SearchGroupProfilesPagesWithContext(aws.Context, *datazone.SearchGroupProfilesInput, func(*datazone.SearchGroupProfilesOutput, bool) bool, ...request.Option) error + + SearchListings(*datazone.SearchListingsInput) (*datazone.SearchListingsOutput, error) + SearchListingsWithContext(aws.Context, *datazone.SearchListingsInput, ...request.Option) (*datazone.SearchListingsOutput, error) + SearchListingsRequest(*datazone.SearchListingsInput) (*request.Request, *datazone.SearchListingsOutput) + + SearchListingsPages(*datazone.SearchListingsInput, func(*datazone.SearchListingsOutput, bool) bool) error + SearchListingsPagesWithContext(aws.Context, *datazone.SearchListingsInput, func(*datazone.SearchListingsOutput, bool) bool, ...request.Option) error + + SearchTypes(*datazone.SearchTypesInput) (*datazone.SearchTypesOutput, error) + SearchTypesWithContext(aws.Context, *datazone.SearchTypesInput, ...request.Option) (*datazone.SearchTypesOutput, error) + SearchTypesRequest(*datazone.SearchTypesInput) (*request.Request, *datazone.SearchTypesOutput) + + SearchTypesPages(*datazone.SearchTypesInput, func(*datazone.SearchTypesOutput, bool) bool) error + SearchTypesPagesWithContext(aws.Context, *datazone.SearchTypesInput, func(*datazone.SearchTypesOutput, bool) bool, ...request.Option) error + + SearchUserProfiles(*datazone.SearchUserProfilesInput) (*datazone.SearchUserProfilesOutput, error) + SearchUserProfilesWithContext(aws.Context, *datazone.SearchUserProfilesInput, ...request.Option) (*datazone.SearchUserProfilesOutput, error) + SearchUserProfilesRequest(*datazone.SearchUserProfilesInput) (*request.Request, *datazone.SearchUserProfilesOutput) + + SearchUserProfilesPages(*datazone.SearchUserProfilesInput, func(*datazone.SearchUserProfilesOutput, bool) bool) error + SearchUserProfilesPagesWithContext(aws.Context, *datazone.SearchUserProfilesInput, func(*datazone.SearchUserProfilesOutput, bool) bool, ...request.Option) error + + StartDataSourceRun(*datazone.StartDataSourceRunInput) (*datazone.StartDataSourceRunOutput, error) + StartDataSourceRunWithContext(aws.Context, *datazone.StartDataSourceRunInput, ...request.Option) (*datazone.StartDataSourceRunOutput, error) + StartDataSourceRunRequest(*datazone.StartDataSourceRunInput) (*request.Request, *datazone.StartDataSourceRunOutput) + + TagResource(*datazone.TagResourceInput) (*datazone.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *datazone.TagResourceInput, ...request.Option) (*datazone.TagResourceOutput, error) + TagResourceRequest(*datazone.TagResourceInput) (*request.Request, *datazone.TagResourceOutput) + + UntagResource(*datazone.UntagResourceInput) (*datazone.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *datazone.UntagResourceInput, ...request.Option) (*datazone.UntagResourceOutput, error) + UntagResourceRequest(*datazone.UntagResourceInput) (*request.Request, *datazone.UntagResourceOutput) + + UpdateDataSource(*datazone.UpdateDataSourceInput) (*datazone.UpdateDataSourceOutput, error) + UpdateDataSourceWithContext(aws.Context, *datazone.UpdateDataSourceInput, ...request.Option) (*datazone.UpdateDataSourceOutput, error) + UpdateDataSourceRequest(*datazone.UpdateDataSourceInput) (*request.Request, *datazone.UpdateDataSourceOutput) + + UpdateDomain(*datazone.UpdateDomainInput) (*datazone.UpdateDomainOutput, error) + UpdateDomainWithContext(aws.Context, *datazone.UpdateDomainInput, ...request.Option) (*datazone.UpdateDomainOutput, error) + UpdateDomainRequest(*datazone.UpdateDomainInput) (*request.Request, *datazone.UpdateDomainOutput) + + UpdateEnvironment(*datazone.UpdateEnvironmentInput) (*datazone.UpdateEnvironmentOutput, error) + UpdateEnvironmentWithContext(aws.Context, *datazone.UpdateEnvironmentInput, ...request.Option) (*datazone.UpdateEnvironmentOutput, error) + UpdateEnvironmentRequest(*datazone.UpdateEnvironmentInput) (*request.Request, *datazone.UpdateEnvironmentOutput) + + UpdateEnvironmentProfile(*datazone.UpdateEnvironmentProfileInput) (*datazone.UpdateEnvironmentProfileOutput, error) + UpdateEnvironmentProfileWithContext(aws.Context, *datazone.UpdateEnvironmentProfileInput, ...request.Option) (*datazone.UpdateEnvironmentProfileOutput, error) + UpdateEnvironmentProfileRequest(*datazone.UpdateEnvironmentProfileInput) (*request.Request, *datazone.UpdateEnvironmentProfileOutput) + + UpdateGlossary(*datazone.UpdateGlossaryInput) (*datazone.UpdateGlossaryOutput, error) + UpdateGlossaryWithContext(aws.Context, *datazone.UpdateGlossaryInput, ...request.Option) (*datazone.UpdateGlossaryOutput, error) + UpdateGlossaryRequest(*datazone.UpdateGlossaryInput) (*request.Request, *datazone.UpdateGlossaryOutput) + + UpdateGlossaryTerm(*datazone.UpdateGlossaryTermInput) (*datazone.UpdateGlossaryTermOutput, error) + UpdateGlossaryTermWithContext(aws.Context, *datazone.UpdateGlossaryTermInput, ...request.Option) (*datazone.UpdateGlossaryTermOutput, error) + UpdateGlossaryTermRequest(*datazone.UpdateGlossaryTermInput) (*request.Request, *datazone.UpdateGlossaryTermOutput) + + UpdateGroupProfile(*datazone.UpdateGroupProfileInput) (*datazone.UpdateGroupProfileOutput, error) + UpdateGroupProfileWithContext(aws.Context, *datazone.UpdateGroupProfileInput, ...request.Option) (*datazone.UpdateGroupProfileOutput, error) + UpdateGroupProfileRequest(*datazone.UpdateGroupProfileInput) (*request.Request, *datazone.UpdateGroupProfileOutput) + + UpdateProject(*datazone.UpdateProjectInput) (*datazone.UpdateProjectOutput, error) + UpdateProjectWithContext(aws.Context, *datazone.UpdateProjectInput, ...request.Option) (*datazone.UpdateProjectOutput, error) + UpdateProjectRequest(*datazone.UpdateProjectInput) (*request.Request, *datazone.UpdateProjectOutput) + + UpdateSubscriptionGrantStatus(*datazone.UpdateSubscriptionGrantStatusInput) (*datazone.UpdateSubscriptionGrantStatusOutput, error) + UpdateSubscriptionGrantStatusWithContext(aws.Context, *datazone.UpdateSubscriptionGrantStatusInput, ...request.Option) (*datazone.UpdateSubscriptionGrantStatusOutput, error) + UpdateSubscriptionGrantStatusRequest(*datazone.UpdateSubscriptionGrantStatusInput) (*request.Request, *datazone.UpdateSubscriptionGrantStatusOutput) + + UpdateSubscriptionRequest(*datazone.UpdateSubscriptionRequestInput) (*datazone.UpdateSubscriptionRequestOutput, error) + UpdateSubscriptionRequestWithContext(aws.Context, *datazone.UpdateSubscriptionRequestInput, ...request.Option) (*datazone.UpdateSubscriptionRequestOutput, error) + UpdateSubscriptionRequestRequest(*datazone.UpdateSubscriptionRequestInput) (*request.Request, *datazone.UpdateSubscriptionRequestOutput) + + UpdateSubscriptionTarget(*datazone.UpdateSubscriptionTargetInput) (*datazone.UpdateSubscriptionTargetOutput, error) + UpdateSubscriptionTargetWithContext(aws.Context, *datazone.UpdateSubscriptionTargetInput, ...request.Option) (*datazone.UpdateSubscriptionTargetOutput, error) + UpdateSubscriptionTargetRequest(*datazone.UpdateSubscriptionTargetInput) (*request.Request, *datazone.UpdateSubscriptionTargetOutput) + + UpdateUserProfile(*datazone.UpdateUserProfileInput) (*datazone.UpdateUserProfileOutput, error) + UpdateUserProfileWithContext(aws.Context, *datazone.UpdateUserProfileInput, ...request.Option) (*datazone.UpdateUserProfileOutput, error) + UpdateUserProfileRequest(*datazone.UpdateUserProfileInput) (*request.Request, *datazone.UpdateUserProfileOutput) +} + +var _ DataZoneAPI = (*datazone.DataZone)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/datazone/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/datazone/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/datazone/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/datazone/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,33 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package datazone provides the client and types for making API +// requests to Amazon DataZone. +// +// Amazon DataZone is a data management service that enables you to catalog, +// discover, govern, share, and analyze your data. With Amazon DataZone, you +// can share and access your data across accounts and supported regions. Amazon +// DataZone simplifies your experience across Amazon Web Services services, +// including, but not limited to, Amazon Redshift, Amazon Athena, Amazon Web +// Services Glue, and Amazon Web Services Lake Formation. +// +// See https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10 for more information on this service. +// +// See datazone package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/datazone/ +// +// # Using the Client +// +// To contact Amazon DataZone 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 Amazon DataZone client DataZone for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/datazone/#New +package datazone diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/datazone/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/datazone/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/datazone/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/datazone/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,70 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package datazone + +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". + // + // There is a conflict while performing this action. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // The request has failed because of an unknown error, exception or failure. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified resource cannot be found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The request has exceeded the specified service quota. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeUnauthorizedException for service response error code + // "UnauthorizedException". + // + // You do not have permission to perform this action. + ErrCodeUnauthorizedException = "UnauthorizedException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by the Amazon Web Services + // service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "UnauthorizedException": newErrorUnauthorizedException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/datazone/service.go golang-github-aws-aws-sdk-go-1.48.14/service/datazone/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/datazone/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/datazone/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package datazone + +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/restjson" +) + +// DataZone provides the API operation methods for making requests to +// Amazon DataZone. See this package's package overview docs +// for details on the service. +// +// DataZone methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type DataZone 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 = "DataZone" // Name of service. + EndpointsID = "datazone" // ID to lookup a service endpoint with. + ServiceID = "DataZone" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the DataZone 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 DataZone client from just a session. +// svc := datazone.New(mySession) +// +// // Create a DataZone client with additional configuration +// svc := datazone.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *DataZone { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "datazone" + } + 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) *DataZone { + svc := &DataZone{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2018-05-10", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a DataZone operation and runs any +// custom request initialization. +func (c *DataZone) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/detective/api.go golang-github-aws-aws-sdk-go-1.48.14/service/detective/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/detective/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/detective/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1144,6 +1144,99 @@ return out, req.Send() } +const opGetInvestigation = "GetInvestigation" + +// GetInvestigationRequest generates a "aws/request.Request" representing the +// client's request for the GetInvestigation 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 GetInvestigation for more information on using the GetInvestigation +// 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 GetInvestigationRequest method. +// req, resp := client.GetInvestigationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/GetInvestigation +func (c *Detective) GetInvestigationRequest(input *GetInvestigationInput) (req *request.Request, output *GetInvestigationOutput) { + op := &request.Operation{ + Name: opGetInvestigation, + HTTPMethod: "POST", + HTTPPath: "/investigations/getInvestigation", + } + + if input == nil { + input = &GetInvestigationInput{} + } + + output = &GetInvestigationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetInvestigation API operation for Amazon Detective. +// +// Returns the investigation results of an investigation for a behavior graph. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Detective's +// API operation GetInvestigation for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request issuer does not have permission to access this resource or perform +// this operation. +// +// - InternalServerException +// The request was valid but failed because of a problem with the service. +// +// - ValidationException +// The request parameters are invalid. +// +// - ResourceNotFoundException +// The request refers to a nonexistent resource. +// +// - TooManyRequestsException +// The request cannot be completed because too many other requests are occurring +// at the same time. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/GetInvestigation +func (c *Detective) GetInvestigation(input *GetInvestigationInput) (*GetInvestigationOutput, error) { + req, out := c.GetInvestigationRequest(input) + return out, req.Send() +} + +// GetInvestigationWithContext is the same as GetInvestigation with the addition of +// the ability to pass a context and additional request options. +// +// See GetInvestigation 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 *Detective) GetInvestigationWithContext(ctx aws.Context, input *GetInvestigationInput, opts ...request.Option) (*GetInvestigationOutput, error) { + req, out := c.GetInvestigationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMembers = "GetMembers" // GetMembersRequest generates a "aws/request.Request" representing the @@ -1527,6 +1620,192 @@ return p.Err() } +const opListIndicators = "ListIndicators" + +// ListIndicatorsRequest generates a "aws/request.Request" representing the +// client's request for the ListIndicators 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 ListIndicators for more information on using the ListIndicators +// 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 ListIndicatorsRequest method. +// req, resp := client.ListIndicatorsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListIndicators +func (c *Detective) ListIndicatorsRequest(input *ListIndicatorsInput) (req *request.Request, output *ListIndicatorsOutput) { + op := &request.Operation{ + Name: opListIndicators, + HTTPMethod: "POST", + HTTPPath: "/investigations/listIndicators", + } + + if input == nil { + input = &ListIndicatorsInput{} + } + + output = &ListIndicatorsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIndicators API operation for Amazon Detective. +// +// # Get the indicators from an investigation +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Detective's +// API operation ListIndicators for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request issuer does not have permission to access this resource or perform +// this operation. +// +// - InternalServerException +// The request was valid but failed because of a problem with the service. +// +// - ValidationException +// The request parameters are invalid. +// +// - ResourceNotFoundException +// The request refers to a nonexistent resource. +// +// - TooManyRequestsException +// The request cannot be completed because too many other requests are occurring +// at the same time. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListIndicators +func (c *Detective) ListIndicators(input *ListIndicatorsInput) (*ListIndicatorsOutput, error) { + req, out := c.ListIndicatorsRequest(input) + return out, req.Send() +} + +// ListIndicatorsWithContext is the same as ListIndicators with the addition of +// the ability to pass a context and additional request options. +// +// See ListIndicators 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 *Detective) ListIndicatorsWithContext(ctx aws.Context, input *ListIndicatorsInput, opts ...request.Option) (*ListIndicatorsOutput, error) { + req, out := c.ListIndicatorsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListInvestigations = "ListInvestigations" + +// ListInvestigationsRequest generates a "aws/request.Request" representing the +// client's request for the ListInvestigations 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 ListInvestigations for more information on using the ListInvestigations +// 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 ListInvestigationsRequest method. +// req, resp := client.ListInvestigationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListInvestigations +func (c *Detective) ListInvestigationsRequest(input *ListInvestigationsInput) (req *request.Request, output *ListInvestigationsOutput) { + op := &request.Operation{ + Name: opListInvestigations, + HTTPMethod: "POST", + HTTPPath: "/investigations/listInvestigations", + } + + if input == nil { + input = &ListInvestigationsInput{} + } + + output = &ListInvestigationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListInvestigations API operation for Amazon Detective. +// +// List all Investigations. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Detective's +// API operation ListInvestigations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request issuer does not have permission to access this resource or perform +// this operation. +// +// - InternalServerException +// The request was valid but failed because of a problem with the service. +// +// - ValidationException +// The request parameters are invalid. +// +// - ResourceNotFoundException +// The request refers to a nonexistent resource. +// +// - TooManyRequestsException +// The request cannot be completed because too many other requests are occurring +// at the same time. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListInvestigations +func (c *Detective) ListInvestigations(input *ListInvestigationsInput) (*ListInvestigationsOutput, error) { + req, out := c.ListInvestigationsRequest(input) + return out, req.Send() +} + +// ListInvestigationsWithContext is the same as ListInvestigations with the addition of +// the ability to pass a context and additional request options. +// +// See ListInvestigations 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 *Detective) ListInvestigationsWithContext(ctx aws.Context, input *ListInvestigationsInput, opts ...request.Option) (*ListInvestigationsOutput, error) { + req, out := c.ListInvestigationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListInvitations = "ListInvitations" // ListInvitationsRequest generates a "aws/request.Request" representing the @@ -2167,6 +2446,99 @@ return out, req.Send() } +const opStartInvestigation = "StartInvestigation" + +// StartInvestigationRequest generates a "aws/request.Request" representing the +// client's request for the StartInvestigation 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 StartInvestigation for more information on using the StartInvestigation +// 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 StartInvestigationRequest method. +// req, resp := client.StartInvestigationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/StartInvestigation +func (c *Detective) StartInvestigationRequest(input *StartInvestigationInput) (req *request.Request, output *StartInvestigationOutput) { + op := &request.Operation{ + Name: opStartInvestigation, + HTTPMethod: "POST", + HTTPPath: "/investigations/startInvestigation", + } + + if input == nil { + input = &StartInvestigationInput{} + } + + output = &StartInvestigationOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartInvestigation API operation for Amazon Detective. +// +// initiate an investigation on an entity in a graph +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Detective's +// API operation StartInvestigation for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request issuer does not have permission to access this resource or perform +// this operation. +// +// - InternalServerException +// The request was valid but failed because of a problem with the service. +// +// - ValidationException +// The request parameters are invalid. +// +// - TooManyRequestsException +// The request cannot be completed because too many other requests are occurring +// at the same time. +// +// - ResourceNotFoundException +// The request refers to a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/StartInvestigation +func (c *Detective) StartInvestigation(input *StartInvestigationInput) (*StartInvestigationOutput, error) { + req, out := c.StartInvestigationRequest(input) + return out, req.Send() +} + +// StartInvestigationWithContext is the same as StartInvestigation with the addition of +// the ability to pass a context and additional request options. +// +// See StartInvestigation 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 *Detective) StartInvestigationWithContext(ctx aws.Context, input *StartInvestigationInput, opts ...request.Option) (*StartInvestigationOutput, error) { + req, out := c.StartInvestigationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartMonitoringMember = "StartMonitoringMember" // StartMonitoringMemberRequest generates a "aws/request.Request" representing the @@ -2563,6 +2935,100 @@ return out, req.Send() } +const opUpdateInvestigationState = "UpdateInvestigationState" + +// UpdateInvestigationStateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateInvestigationState 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 UpdateInvestigationState for more information on using the UpdateInvestigationState +// 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 UpdateInvestigationStateRequest method. +// req, resp := client.UpdateInvestigationStateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/UpdateInvestigationState +func (c *Detective) UpdateInvestigationStateRequest(input *UpdateInvestigationStateInput) (req *request.Request, output *UpdateInvestigationStateOutput) { + op := &request.Operation{ + Name: opUpdateInvestigationState, + HTTPMethod: "POST", + HTTPPath: "/investigations/updateInvestigationState", + } + + if input == nil { + input = &UpdateInvestigationStateInput{} + } + + output = &UpdateInvestigationStateOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateInvestigationState API operation for Amazon Detective. +// +// Update the state of an investigation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Detective's +// API operation UpdateInvestigationState for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The request issuer does not have permission to access this resource or perform +// this operation. +// +// - InternalServerException +// The request was valid but failed because of a problem with the service. +// +// - ValidationException +// The request parameters are invalid. +// +// - ResourceNotFoundException +// The request refers to a nonexistent resource. +// +// - TooManyRequestsException +// The request cannot be completed because too many other requests are occurring +// at the same time. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/UpdateInvestigationState +func (c *Detective) UpdateInvestigationState(input *UpdateInvestigationStateInput) (*UpdateInvestigationStateOutput, error) { + req, out := c.UpdateInvestigationStateRequest(input) + return out, req.Send() +} + +// UpdateInvestigationStateWithContext is the same as UpdateInvestigationState with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateInvestigationState 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 *Detective) UpdateInvestigationStateWithContext(ctx aws.Context, input *UpdateInvestigationStateInput, opts ...request.Option) (*UpdateInvestigationStateOutput, error) { + req, out := c.UpdateInvestigationStateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateOrganizationConfiguration = "UpdateOrganizationConfiguration" // UpdateOrganizationConfigurationRequest generates a "aws/request.Request" representing the @@ -3502,6 +3968,69 @@ return s } +// Contains details on the time range used to filter data. +type DateFilter struct { + _ struct{} `type:"structure"` + + // A timestamp representing the end date of the time period until when data + // is filtered , including the end date. + // + // EndInclusive is a required field + EndInclusive *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // A timestamp representing the start of the time period from when data is filtered, + // including the start date. + // + // StartInclusive is a required field + StartInclusive *time.Time `type:"timestamp" timestampFormat:"iso8601" 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 DateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DateFilter"} + if s.EndInclusive == nil { + invalidParams.Add(request.NewErrParamRequired("EndInclusive")) + } + if s.StartInclusive == nil { + invalidParams.Add(request.NewErrParamRequired("StartInclusive")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndInclusive sets the EndInclusive field's value. +func (s *DateFilter) SetEndInclusive(v time.Time) *DateFilter { + s.EndInclusive = &v + return s +} + +// SetStartInclusive sets the StartInclusive field's value. +func (s *DateFilter) SetStartInclusive(v time.Time) *DateFilter { + s.StartInclusive = &v + return s +} + type DeleteGraphInput struct { _ struct{} `type:"structure"` @@ -3942,6 +4471,333 @@ return s.String() } +// Details on the criteria used to define the filter for investigation results. +type FilterCriteria struct { + _ struct{} `type:"structure"` + + // Filter the investigation results based on when the investigation was created. + CreatedTime *DateFilter `type:"structure"` + + // Filter the investigation results based on the Amazon Resource Name (ARN) + // of the entity. + EntityArn *StringFilter `type:"structure"` + + // Filter the investigation results based on the severity. + Severity *StringFilter `type:"structure"` + + // Filter the investigation results based on the state. + State *StringFilter `type:"structure"` + + // Filter the investigation results based on the status. + Status *StringFilter `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 FilterCriteria) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterCriteria) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterCriteria) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterCriteria"} + if s.CreatedTime != nil { + if err := s.CreatedTime.Validate(); err != nil { + invalidParams.AddNested("CreatedTime", err.(request.ErrInvalidParams)) + } + } + if s.EntityArn != nil { + if err := s.EntityArn.Validate(); err != nil { + invalidParams.AddNested("EntityArn", err.(request.ErrInvalidParams)) + } + } + if s.Severity != nil { + if err := s.Severity.Validate(); err != nil { + invalidParams.AddNested("Severity", err.(request.ErrInvalidParams)) + } + } + if s.State != nil { + if err := s.State.Validate(); err != nil { + invalidParams.AddNested("State", err.(request.ErrInvalidParams)) + } + } + if s.Status != nil { + if err := s.Status.Validate(); err != nil { + invalidParams.AddNested("Status", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *FilterCriteria) SetCreatedTime(v *DateFilter) *FilterCriteria { + s.CreatedTime = v + return s +} + +// SetEntityArn sets the EntityArn field's value. +func (s *FilterCriteria) SetEntityArn(v *StringFilter) *FilterCriteria { + s.EntityArn = v + return s +} + +// SetSeverity sets the Severity field's value. +func (s *FilterCriteria) SetSeverity(v *StringFilter) *FilterCriteria { + s.Severity = v + return s +} + +// SetState sets the State field's value. +func (s *FilterCriteria) SetState(v *StringFilter) *FilterCriteria { + s.State = v + return s +} + +// SetStatus sets the Status field's value. +func (s *FilterCriteria) SetStatus(v *StringFilter) *FilterCriteria { + s.Status = v + return s +} + +// Contains information on suspicious IP addresses identified as indicators +// of compromise. This indicator is derived from Amazon Web Services threat +// intelligence. +type FlaggedIpAddressDetail struct { + _ struct{} `type:"structure"` + + // IP address of the suspicious entity. + IpAddress *string `type:"string"` + + // Details the reason the IP address was flagged as suspicious. + Reason *string `type:"string" enum:"Reason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FlaggedIpAddressDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FlaggedIpAddressDetail) GoString() string { + return s.String() +} + +// SetIpAddress sets the IpAddress field's value. +func (s *FlaggedIpAddressDetail) SetIpAddress(v string) *FlaggedIpAddressDetail { + s.IpAddress = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *FlaggedIpAddressDetail) SetReason(v string) *FlaggedIpAddressDetail { + s.Reason = &v + return s +} + +type GetInvestigationInput struct { + _ struct{} `type:"structure"` + + // The ARN of the behavior graph. + // + // GraphArn is a required field + GraphArn *string `type:"string" required:"true"` + + // The investigation ID of the investigation report. + // + // InvestigationId is a required field + InvestigationId *string `min:"21" 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 GetInvestigationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetInvestigationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetInvestigationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetInvestigationInput"} + if s.GraphArn == nil { + invalidParams.Add(request.NewErrParamRequired("GraphArn")) + } + if s.InvestigationId == nil { + invalidParams.Add(request.NewErrParamRequired("InvestigationId")) + } + if s.InvestigationId != nil && len(*s.InvestigationId) < 21 { + invalidParams.Add(request.NewErrParamMinLen("InvestigationId", 21)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGraphArn sets the GraphArn field's value. +func (s *GetInvestigationInput) SetGraphArn(v string) *GetInvestigationInput { + s.GraphArn = &v + return s +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *GetInvestigationInput) SetInvestigationId(v string) *GetInvestigationInput { + s.InvestigationId = &v + return s +} + +type GetInvestigationOutput struct { + _ struct{} `type:"structure"` + + // The UTC time stamp of the creation time of the investigation report. + CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The unique Amazon Resource Name (ARN) of the IAM user and IAM role. + EntityArn *string `type:"string"` + + // Type of entity. For example, Amazon Web Services accounts, such as IAM user + // and role. + EntityType *string `type:"string" enum:"EntityType"` + + // The ARN of the behavior graph. + GraphArn *string `type:"string"` + + // The investigation ID of the investigation report. + InvestigationId *string `min:"21" type:"string"` + + // The data and time when the investigation began. The value is an UTC ISO8601 + // formatted string. For example, 2021-08-18T16:35:56.284Z. + ScopeEndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The start date and time for the scope time set to generate the investigation + // report. + ScopeStartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // Severity based on the likelihood and impact of the indicators of compromise + // discovered in the investigation. + Severity *string `type:"string" enum:"Severity"` + + // The current state of the investigation. An archived investigation indicates + // you have completed reviewing the investigation. + State *string `type:"string" enum:"State"` + + // Status based on the completion status of the investigation. + Status *string `type:"string" enum:"Status"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetInvestigationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetInvestigationOutput) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *GetInvestigationOutput) SetCreatedTime(v time.Time) *GetInvestigationOutput { + s.CreatedTime = &v + return s +} + +// SetEntityArn sets the EntityArn field's value. +func (s *GetInvestigationOutput) SetEntityArn(v string) *GetInvestigationOutput { + s.EntityArn = &v + return s +} + +// SetEntityType sets the EntityType field's value. +func (s *GetInvestigationOutput) SetEntityType(v string) *GetInvestigationOutput { + s.EntityType = &v + return s +} + +// SetGraphArn sets the GraphArn field's value. +func (s *GetInvestigationOutput) SetGraphArn(v string) *GetInvestigationOutput { + s.GraphArn = &v + return s +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *GetInvestigationOutput) SetInvestigationId(v string) *GetInvestigationOutput { + s.InvestigationId = &v + return s +} + +// SetScopeEndTime sets the ScopeEndTime field's value. +func (s *GetInvestigationOutput) SetScopeEndTime(v time.Time) *GetInvestigationOutput { + s.ScopeEndTime = &v + return s +} + +// SetScopeStartTime sets the ScopeStartTime field's value. +func (s *GetInvestigationOutput) SetScopeStartTime(v time.Time) *GetInvestigationOutput { + s.ScopeStartTime = &v + return s +} + +// SetSeverity sets the Severity field's value. +func (s *GetInvestigationOutput) SetSeverity(v string) *GetInvestigationOutput { + s.Severity = &v + return s +} + +// SetState sets the State field's value. +func (s *GetInvestigationOutput) SetState(v string) *GetInvestigationOutput { + s.State = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetInvestigationOutput) SetStatus(v string) *GetInvestigationOutput { + s.Status = &v + return s +} + type GetMembersInput struct { _ struct{} `type:"structure"` @@ -4096,6 +4952,216 @@ return s } +// Contains information on unusual and impossible travel in an account. +type ImpossibleTravelDetail struct { + _ struct{} `type:"structure"` + + // IP address where the resource was last used in the impossible travel. + EndingIpAddress *string `type:"string"` + + // Location where the resource was last used in the impossible travel. + EndingLocation *string `type:"string"` + + // Returns the time difference between the first and last timestamp the resource + // was used. + HourlyTimeDelta *int64 `type:"integer"` + + // IP address where the resource was first used in the impossible travel + StartingIpAddress *string `type:"string"` + + // Location where the resource was first used in the impossible travel + StartingLocation *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 ImpossibleTravelDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImpossibleTravelDetail) GoString() string { + return s.String() +} + +// SetEndingIpAddress sets the EndingIpAddress field's value. +func (s *ImpossibleTravelDetail) SetEndingIpAddress(v string) *ImpossibleTravelDetail { + s.EndingIpAddress = &v + return s +} + +// SetEndingLocation sets the EndingLocation field's value. +func (s *ImpossibleTravelDetail) SetEndingLocation(v string) *ImpossibleTravelDetail { + s.EndingLocation = &v + return s +} + +// SetHourlyTimeDelta sets the HourlyTimeDelta field's value. +func (s *ImpossibleTravelDetail) SetHourlyTimeDelta(v int64) *ImpossibleTravelDetail { + s.HourlyTimeDelta = &v + return s +} + +// SetStartingIpAddress sets the StartingIpAddress field's value. +func (s *ImpossibleTravelDetail) SetStartingIpAddress(v string) *ImpossibleTravelDetail { + s.StartingIpAddress = &v + return s +} + +// SetStartingLocation sets the StartingLocation field's value. +func (s *ImpossibleTravelDetail) SetStartingLocation(v string) *ImpossibleTravelDetail { + s.StartingLocation = &v + return s +} + +// Investigations triages indicators of compromises such as a finding and surfaces +// only the most critical and suspicious issues, so you can focus on high-level +// investigations. +type Indicator struct { + _ struct{} `type:"structure"` + + // Details about the indicator of compromise. + IndicatorDetail *IndicatorDetail `type:"structure"` + + // The type of indicator. + IndicatorType *string `type:"string" enum:"IndicatorType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Indicator) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Indicator) GoString() string { + return s.String() +} + +// SetIndicatorDetail sets the IndicatorDetail field's value. +func (s *Indicator) SetIndicatorDetail(v *IndicatorDetail) *Indicator { + s.IndicatorDetail = v + return s +} + +// SetIndicatorType sets the IndicatorType field's value. +func (s *Indicator) SetIndicatorType(v string) *Indicator { + s.IndicatorType = &v + return s +} + +// Details about the indicators of compromise which are used to determine if +// a resource is involved in a security incident. +type IndicatorDetail struct { + _ struct{} `type:"structure"` + + // Suspicious IP addresses that are flagged, which indicates critical or severe + // threats based on threat intelligence by Detective. This indicator is derived + // from AWS threat intelligence. + FlaggedIpAddressDetail *FlaggedIpAddressDetail `type:"structure"` + + // Identifies unusual and impossible user activity for an account. + ImpossibleTravelDetail *ImpossibleTravelDetail `type:"structure"` + + // Contains details about the new Autonomous System Organization (ASO). + NewAsoDetail *NewAsoDetail `type:"structure"` + + // Contains details about the new geographic location. + NewGeolocationDetail *NewGeolocationDetail `type:"structure"` + + // Contains details about the new user agent. + NewUserAgentDetail *NewUserAgentDetail `type:"structure"` + + // Contains details about related findings. + RelatedFindingDetail *RelatedFindingDetail `type:"structure"` + + // Contains details about related finding groups. + RelatedFindingGroupDetail *RelatedFindingGroupDetail `type:"structure"` + + // Details about the indicator of compromise. + TTPsObservedDetail *TTPsObservedDetail `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 IndicatorDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IndicatorDetail) GoString() string { + return s.String() +} + +// SetFlaggedIpAddressDetail sets the FlaggedIpAddressDetail field's value. +func (s *IndicatorDetail) SetFlaggedIpAddressDetail(v *FlaggedIpAddressDetail) *IndicatorDetail { + s.FlaggedIpAddressDetail = v + return s +} + +// SetImpossibleTravelDetail sets the ImpossibleTravelDetail field's value. +func (s *IndicatorDetail) SetImpossibleTravelDetail(v *ImpossibleTravelDetail) *IndicatorDetail { + s.ImpossibleTravelDetail = v + return s +} + +// SetNewAsoDetail sets the NewAsoDetail field's value. +func (s *IndicatorDetail) SetNewAsoDetail(v *NewAsoDetail) *IndicatorDetail { + s.NewAsoDetail = v + return s +} + +// SetNewGeolocationDetail sets the NewGeolocationDetail field's value. +func (s *IndicatorDetail) SetNewGeolocationDetail(v *NewGeolocationDetail) *IndicatorDetail { + s.NewGeolocationDetail = v + return s +} + +// SetNewUserAgentDetail sets the NewUserAgentDetail field's value. +func (s *IndicatorDetail) SetNewUserAgentDetail(v *NewUserAgentDetail) *IndicatorDetail { + s.NewUserAgentDetail = v + return s +} + +// SetRelatedFindingDetail sets the RelatedFindingDetail field's value. +func (s *IndicatorDetail) SetRelatedFindingDetail(v *RelatedFindingDetail) *IndicatorDetail { + s.RelatedFindingDetail = v + return s +} + +// SetRelatedFindingGroupDetail sets the RelatedFindingGroupDetail field's value. +func (s *IndicatorDetail) SetRelatedFindingGroupDetail(v *RelatedFindingGroupDetail) *IndicatorDetail { + s.RelatedFindingGroupDetail = v + return s +} + +// SetTTPsObservedDetail sets the TTPsObservedDetail field's value. +func (s *IndicatorDetail) SetTTPsObservedDetail(v *TTPsObservedDetail) *IndicatorDetail { + s.TTPsObservedDetail = v + return s +} + // The request was valid but failed because of a problem with the service. type InternalServerException struct { _ struct{} `type:"structure"` @@ -4160,6 +5226,96 @@ return s.RespMetadata.RequestID } +// Details about the investigation related to a potential security event identified +// by Detective +type InvestigationDetail struct { + _ struct{} `type:"structure"` + + // The UTC time stamp of the creation time of the investigation report. + CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The unique Amazon Resource Name (ARN) of the IAM user and IAM role. + EntityArn *string `type:"string"` + + // Type of entity. For example, Amazon Web Services accounts, such as IAM user + // and role. + EntityType *string `type:"string" enum:"EntityType"` + + // The investigation ID of the investigation report. + InvestigationId *string `min:"21" type:"string"` + + // Severity based on the likelihood and impact of the indicators of compromise + // discovered in the investigation. + Severity *string `type:"string" enum:"Severity"` + + // The current state of the investigation. An archived investigation indicates + // you have completed reviewing the investigation. + State *string `type:"string" enum:"State"` + + // Status based on the completion status of the investigation. + Status *string `type:"string" enum:"Status"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvestigationDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvestigationDetail) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *InvestigationDetail) SetCreatedTime(v time.Time) *InvestigationDetail { + s.CreatedTime = &v + return s +} + +// SetEntityArn sets the EntityArn field's value. +func (s *InvestigationDetail) SetEntityArn(v string) *InvestigationDetail { + s.EntityArn = &v + return s +} + +// SetEntityType sets the EntityType field's value. +func (s *InvestigationDetail) SetEntityType(v string) *InvestigationDetail { + s.EntityType = &v + return s +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *InvestigationDetail) SetInvestigationId(v string) *InvestigationDetail { + s.InvestigationId = &v + return s +} + +// SetSeverity sets the Severity field's value. +func (s *InvestigationDetail) SetSeverity(v string) *InvestigationDetail { + s.Severity = &v + return s +} + +// SetState sets the State field's value. +func (s *InvestigationDetail) SetState(v string) *InvestigationDetail { + s.State = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *InvestigationDetail) SetStatus(v string) *InvestigationDetail { + s.Status = &v + return s +} + type ListDatasourcePackagesInput struct { _ struct{} `type:"structure"` @@ -4375,6 +5531,314 @@ return s } +type ListIndicatorsInput struct { + _ struct{} `type:"structure"` + + // The ARN of the behavior graph. + // + // GraphArn is a required field + GraphArn *string `type:"string" required:"true"` + + // See Detective investigations. (https://docs.aws.amazon.com/detective/latest/userguide/detective-investigations.html). + IndicatorType *string `type:"string" enum:"IndicatorType"` + + // The investigation ID of the investigation report. + // + // InvestigationId is a required field + InvestigationId *string `min:"21" type:"string" required:"true"` + + // List the maximum number of indicators in a page. + MaxResults *int64 `min:"1" type:"integer"` + + // List if there are more results available. The value of nextToken is a unique + // pagination token for each page. Repeat the call using the returned token + // to retrieve the next page. Keep all other arguments unchanged. + // + // Each pagination token expires after 24 hours. Using an expired pagination + // token will return a Validation Exception error. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicatorsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicatorsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIndicatorsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIndicatorsInput"} + if s.GraphArn == nil { + invalidParams.Add(request.NewErrParamRequired("GraphArn")) + } + if s.InvestigationId == nil { + invalidParams.Add(request.NewErrParamRequired("InvestigationId")) + } + if s.InvestigationId != nil && len(*s.InvestigationId) < 21 { + invalidParams.Add(request.NewErrParamMinLen("InvestigationId", 21)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGraphArn sets the GraphArn field's value. +func (s *ListIndicatorsInput) SetGraphArn(v string) *ListIndicatorsInput { + s.GraphArn = &v + return s +} + +// SetIndicatorType sets the IndicatorType field's value. +func (s *ListIndicatorsInput) SetIndicatorType(v string) *ListIndicatorsInput { + s.IndicatorType = &v + return s +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *ListIndicatorsInput) SetInvestigationId(v string) *ListIndicatorsInput { + s.InvestigationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIndicatorsInput) SetMaxResults(v int64) *ListIndicatorsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIndicatorsInput) SetNextToken(v string) *ListIndicatorsInput { + s.NextToken = &v + return s +} + +type ListIndicatorsOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the behavior graph. + GraphArn *string `type:"string"` + + // Indicators of compromise listed based on severity. + Indicators []*Indicator `type:"list"` + + // The investigation ID of the investigation report. + InvestigationId *string `min:"21" type:"string"` + + // List if there are more results available. The value of nextToken is a unique + // pagination token for each page. Repeat the call using the returned token + // to retrieve the next page. Keep all other arguments unchanged. + // + // Each pagination token expires after 24 hours. Using an expired pagination + // token will return a Validation Exception error. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicatorsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicatorsOutput) GoString() string { + return s.String() +} + +// SetGraphArn sets the GraphArn field's value. +func (s *ListIndicatorsOutput) SetGraphArn(v string) *ListIndicatorsOutput { + s.GraphArn = &v + return s +} + +// SetIndicators sets the Indicators field's value. +func (s *ListIndicatorsOutput) SetIndicators(v []*Indicator) *ListIndicatorsOutput { + s.Indicators = v + return s +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *ListIndicatorsOutput) SetInvestigationId(v string) *ListIndicatorsOutput { + s.InvestigationId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIndicatorsOutput) SetNextToken(v string) *ListIndicatorsOutput { + s.NextToken = &v + return s +} + +type ListInvestigationsInput struct { + _ struct{} `type:"structure"` + + // Filter the investigation results based on a criteria. + FilterCriteria *FilterCriteria `type:"structure"` + + // The ARN of the behavior graph. + // + // GraphArn is a required field + GraphArn *string `type:"string" required:"true"` + + // List the maximum number of investigations in a page. + MaxResults *int64 `min:"1" type:"integer"` + + // List if there are more results available. The value of nextToken is a unique + // pagination token for each page. Repeat the call using the returned token + // to retrieve the next page. Keep all other arguments unchanged. + // + // Each pagination token expires after 24 hours. Using an expired pagination + // token will return a Validation Exception error. + NextToken *string `min:"1" type:"string"` + + // Sorts the investigation results based on a criteria. + SortCriteria *SortCriteria `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 ListInvestigationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInvestigationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListInvestigationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListInvestigationsInput"} + if s.GraphArn == nil { + invalidParams.Add(request.NewErrParamRequired("GraphArn")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.FilterCriteria != nil { + if err := s.FilterCriteria.Validate(); err != nil { + invalidParams.AddNested("FilterCriteria", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilterCriteria sets the FilterCriteria field's value. +func (s *ListInvestigationsInput) SetFilterCriteria(v *FilterCriteria) *ListInvestigationsInput { + s.FilterCriteria = v + return s +} + +// SetGraphArn sets the GraphArn field's value. +func (s *ListInvestigationsInput) SetGraphArn(v string) *ListInvestigationsInput { + s.GraphArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListInvestigationsInput) SetMaxResults(v int64) *ListInvestigationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListInvestigationsInput) SetNextToken(v string) *ListInvestigationsInput { + s.NextToken = &v + return s +} + +// SetSortCriteria sets the SortCriteria field's value. +func (s *ListInvestigationsInput) SetSortCriteria(v *SortCriteria) *ListInvestigationsInput { + s.SortCriteria = v + return s +} + +type ListInvestigationsOutput struct { + _ struct{} `type:"structure"` + + // Investigations details lists the summary of uncommon behavior or malicious + // activity which indicates a compromise. + InvestigationDetails []*InvestigationDetail `type:"list"` + + // List if there are more results available. The value of nextToken is a unique + // pagination token for each page. Repeat the call using the returned token + // to retrieve the next page. Keep all other arguments unchanged. + // + // Each pagination token expires after 24 hours. Using an expired pagination + // token will return an HTTP 400 InvalidToken error. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInvestigationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInvestigationsOutput) GoString() string { + return s.String() +} + +// SetInvestigationDetails sets the InvestigationDetails field's value. +func (s *ListInvestigationsOutput) SetInvestigationDetails(v []*InvestigationDetail) *ListInvestigationsOutput { + s.InvestigationDetails = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListInvestigationsOutput) SetNextToken(v string) *ListInvestigationsOutput { + s.NextToken = &v + return s +} + type ListInvitationsInput struct { _ struct{} `type:"structure"` @@ -5074,6 +6538,141 @@ return s } +// Details new Autonomous System Organizations (ASOs) used either at the resource +// or account level. +type NewAsoDetail struct { + _ struct{} `type:"structure"` + + // Details about the new Autonomous System Organization (ASO). + Aso *string `type:"string"` + + // Checks if the ASO is for new for the entire account. + IsNewForEntireAccount *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 NewAsoDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NewAsoDetail) GoString() string { + return s.String() +} + +// SetAso sets the Aso field's value. +func (s *NewAsoDetail) SetAso(v string) *NewAsoDetail { + s.Aso = &v + return s +} + +// SetIsNewForEntireAccount sets the IsNewForEntireAccount field's value. +func (s *NewAsoDetail) SetIsNewForEntireAccount(v bool) *NewAsoDetail { + s.IsNewForEntireAccount = &v + return s +} + +// Details new geolocations used either at the resource or account level. For +// example, lists an observed geolocation that is an infrequent or unused location +// based on previous user activity. +type NewGeolocationDetail struct { + _ struct{} `type:"structure"` + + // IP address using which the resource was accessed. + IpAddress *string `type:"string"` + + // Checks if the gelocation is new for the entire account. + IsNewForEntireAccount *bool `type:"boolean"` + + // Location where the resource was accessed. + Location *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 NewGeolocationDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NewGeolocationDetail) GoString() string { + return s.String() +} + +// SetIpAddress sets the IpAddress field's value. +func (s *NewGeolocationDetail) SetIpAddress(v string) *NewGeolocationDetail { + s.IpAddress = &v + return s +} + +// SetIsNewForEntireAccount sets the IsNewForEntireAccount field's value. +func (s *NewGeolocationDetail) SetIsNewForEntireAccount(v bool) *NewGeolocationDetail { + s.IsNewForEntireAccount = &v + return s +} + +// SetLocation sets the Location field's value. +func (s *NewGeolocationDetail) SetLocation(v string) *NewGeolocationDetail { + s.Location = &v + return s +} + +// Details new user agents used either at the resource or account level. +type NewUserAgentDetail struct { + _ struct{} `type:"structure"` + + // Checks if the user agent is new for the entire account. + IsNewForEntireAccount *bool `type:"boolean"` + + // New user agent which accessed the resource. + UserAgent *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 NewUserAgentDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NewUserAgentDetail) GoString() string { + return s.String() +} + +// SetIsNewForEntireAccount sets the IsNewForEntireAccount field's value. +func (s *NewUserAgentDetail) SetIsNewForEntireAccount(v bool) *NewUserAgentDetail { + s.IsNewForEntireAccount = &v + return s +} + +// SetUserAgent sets the UserAgent field's value. +func (s *NewUserAgentDetail) SetUserAgent(v string) *NewUserAgentDetail { + s.UserAgent = &v + return s +} + type RejectInvitationInput struct { _ struct{} `type:"structure"` @@ -5145,6 +6744,92 @@ return s.String() } +// Details related activities associated with a potential security event. Lists +// all distinct categories of evidence that are connected to the resource or +// the finding group. +type RelatedFindingDetail struct { + _ struct{} `type:"structure"` + + // The ARN of the related finding. + Arn *string `type:"string"` + + // The IP address of the finding. + IpAddress *string `type:"string"` + + // The type of finding. + 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 RelatedFindingDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RelatedFindingDetail) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *RelatedFindingDetail) SetArn(v string) *RelatedFindingDetail { + s.Arn = &v + return s +} + +// SetIpAddress sets the IpAddress field's value. +func (s *RelatedFindingDetail) SetIpAddress(v string) *RelatedFindingDetail { + s.IpAddress = &v + return s +} + +// SetType sets the Type field's value. +func (s *RelatedFindingDetail) SetType(v string) *RelatedFindingDetail { + s.Type = &v + return s +} + +// Details multiple activities as they related to a potential security event. +// Detective uses graph analysis technique that infers relationships between +// findings and entities, and groups them together as a finding group. +type RelatedFindingGroupDetail struct { + _ struct{} `type:"structure"` + + // The unique identifier for the finding group. + Id *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 RelatedFindingGroupDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RelatedFindingGroupDetail) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *RelatedFindingGroupDetail) SetId(v string) *RelatedFindingGroupDetail { + s.Id = &v + return s +} + // The request refers to a nonexistent resource. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -5286,6 +6971,168 @@ return s.RespMetadata.RequestID } +// Details about the criteria used for sorting investigations. +type SortCriteria struct { + _ struct{} `type:"structure"` + + // Represents the Field attribute to sort investigations. + Field *string `type:"string" enum:"Field"` + + // The order by which the sorted findings are displayed. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SortCriteria) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SortCriteria) GoString() string { + return s.String() +} + +// SetField sets the Field field's value. +func (s *SortCriteria) SetField(v string) *SortCriteria { + s.Field = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *SortCriteria) SetSortOrder(v string) *SortCriteria { + s.SortOrder = &v + return s +} + +type StartInvestigationInput struct { + _ struct{} `type:"structure"` + + // The unique Amazon Resource Name (ARN) of the IAM user and IAM role. + // + // EntityArn is a required field + EntityArn *string `type:"string" required:"true"` + + // The ARN of the behavior graph. + // + // GraphArn is a required field + GraphArn *string `type:"string" required:"true"` + + // The data and time when the investigation began. The value is an UTC ISO8601 + // formatted string. For example, 2021-08-18T16:35:56.284Z. + // + // ScopeEndTime is a required field + ScopeEndTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The data and time when the investigation began. The value is an UTC ISO8601 + // formatted string. For example, 2021-08-18T16:35:56.284Z. + // + // ScopeStartTime is a required field + ScopeStartTime *time.Time `type:"timestamp" timestampFormat:"iso8601" 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 StartInvestigationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartInvestigationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartInvestigationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartInvestigationInput"} + if s.EntityArn == nil { + invalidParams.Add(request.NewErrParamRequired("EntityArn")) + } + if s.GraphArn == nil { + invalidParams.Add(request.NewErrParamRequired("GraphArn")) + } + if s.ScopeEndTime == nil { + invalidParams.Add(request.NewErrParamRequired("ScopeEndTime")) + } + if s.ScopeStartTime == nil { + invalidParams.Add(request.NewErrParamRequired("ScopeStartTime")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntityArn sets the EntityArn field's value. +func (s *StartInvestigationInput) SetEntityArn(v string) *StartInvestigationInput { + s.EntityArn = &v + return s +} + +// SetGraphArn sets the GraphArn field's value. +func (s *StartInvestigationInput) SetGraphArn(v string) *StartInvestigationInput { + s.GraphArn = &v + return s +} + +// SetScopeEndTime sets the ScopeEndTime field's value. +func (s *StartInvestigationInput) SetScopeEndTime(v time.Time) *StartInvestigationInput { + s.ScopeEndTime = &v + return s +} + +// SetScopeStartTime sets the ScopeStartTime field's value. +func (s *StartInvestigationInput) SetScopeStartTime(v time.Time) *StartInvestigationInput { + s.ScopeStartTime = &v + return s +} + +type StartInvestigationOutput struct { + _ struct{} `type:"structure"` + + // The investigation ID of the investigation report. + InvestigationId *string `min:"21" 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 StartInvestigationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartInvestigationOutput) GoString() string { + return s.String() +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *StartInvestigationOutput) SetInvestigationId(v string) *StartInvestigationOutput { + s.InvestigationId = &v + return s +} + type StartMonitoringMemberInput struct { _ struct{} `type:"structure"` @@ -5373,6 +7220,143 @@ return s.String() } +// A string for filtering Detective investigations. +type StringFilter struct { + _ struct{} `type:"structure"` + + // The string filter value. + // + // Value is a required field + Value *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StringFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StringFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StringFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StringFilter"} + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValue sets the Value field's value. +func (s *StringFilter) SetValue(v string) *StringFilter { + s.Value = &v + return s +} + +// Details tactics, techniques, and procedures (TTPs) used in a potential security +// event. Tactics are based on MITRE ATT&CK Matrix for Enterprise (https://attack.mitre.org/matrices/enterprise/). +type TTPsObservedDetail struct { + _ struct{} `type:"structure"` + + // The total number of failed API requests. + APIFailureCount *int64 `type:"long"` + + // The name of the API where the TTP was observed. + APIName *string `type:"string"` + + // The total number of successful API requests. + APISuccessCount *int64 `type:"long"` + + // The IP address where the TTP was observed. + IpAddress *string `type:"string"` + + // The procedure used, identified by the investigation. + Procedure *string `type:"string"` + + // The tactic used, identified by the investigation. + Tactic *string `type:"string"` + + // The technique used, identified by the investigation. + Technique *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 TTPsObservedDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TTPsObservedDetail) GoString() string { + return s.String() +} + +// SetAPIFailureCount sets the APIFailureCount field's value. +func (s *TTPsObservedDetail) SetAPIFailureCount(v int64) *TTPsObservedDetail { + s.APIFailureCount = &v + return s +} + +// SetAPIName sets the APIName field's value. +func (s *TTPsObservedDetail) SetAPIName(v string) *TTPsObservedDetail { + s.APIName = &v + return s +} + +// SetAPISuccessCount sets the APISuccessCount field's value. +func (s *TTPsObservedDetail) SetAPISuccessCount(v int64) *TTPsObservedDetail { + s.APISuccessCount = &v + return s +} + +// SetIpAddress sets the IpAddress field's value. +func (s *TTPsObservedDetail) SetIpAddress(v string) *TTPsObservedDetail { + s.IpAddress = &v + return s +} + +// SetProcedure sets the Procedure field's value. +func (s *TTPsObservedDetail) SetProcedure(v string) *TTPsObservedDetail { + s.Procedure = &v + return s +} + +// SetTactic sets the Tactic field's value. +func (s *TTPsObservedDetail) SetTactic(v string) *TTPsObservedDetail { + s.Tactic = &v + return s +} + +// SetTechnique sets the Technique field's value. +func (s *TTPsObservedDetail) SetTechnique(v string) *TTPsObservedDetail { + s.Technique = &v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -5820,6 +7804,106 @@ return s.String() } +type UpdateInvestigationStateInput struct { + _ struct{} `type:"structure"` + + // The ARN of the behavior graph. + // + // GraphArn is a required field + GraphArn *string `type:"string" required:"true"` + + // The investigation ID of the investigation report. + // + // InvestigationId is a required field + InvestigationId *string `min:"21" type:"string" required:"true"` + + // The current state of the investigation. An archived investigation indicates + // you have completed reviewing the investigation. + // + // State is a required field + State *string `type:"string" required:"true" enum:"State"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInvestigationStateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInvestigationStateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateInvestigationStateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateInvestigationStateInput"} + if s.GraphArn == nil { + invalidParams.Add(request.NewErrParamRequired("GraphArn")) + } + if s.InvestigationId == nil { + invalidParams.Add(request.NewErrParamRequired("InvestigationId")) + } + if s.InvestigationId != nil && len(*s.InvestigationId) < 21 { + invalidParams.Add(request.NewErrParamMinLen("InvestigationId", 21)) + } + if s.State == nil { + invalidParams.Add(request.NewErrParamRequired("State")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGraphArn sets the GraphArn field's value. +func (s *UpdateInvestigationStateInput) SetGraphArn(v string) *UpdateInvestigationStateInput { + s.GraphArn = &v + return s +} + +// SetInvestigationId sets the InvestigationId field's value. +func (s *UpdateInvestigationStateInput) SetInvestigationId(v string) *UpdateInvestigationStateInput { + s.InvestigationId = &v + return s +} + +// SetState sets the State field's value. +func (s *UpdateInvestigationStateInput) SetState(v string) *UpdateInvestigationStateInput { + s.State = &v + return s +} + +type UpdateInvestigationStateOutput 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 UpdateInvestigationStateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInvestigationStateOutput) GoString() string { + return s.String() +} + type UpdateOrganizationConfigurationInput struct { _ struct{} `type:"structure"` @@ -6009,6 +8093,22 @@ } const ( + // EntityTypeIamRole is a EntityType enum value + EntityTypeIamRole = "IAM_ROLE" + + // EntityTypeIamUser is a EntityType enum value + EntityTypeIamUser = "IAM_USER" +) + +// EntityType_Values returns all elements of the EntityType enum +func EntityType_Values() []string { + return []string{ + EntityTypeIamRole, + EntityTypeIamUser, + } +} + +const ( // ErrorCodeInvalidGraphArn is a ErrorCode enum value ErrorCodeInvalidGraphArn = "INVALID_GRAPH_ARN" @@ -6029,6 +8129,66 @@ } const ( + // FieldSeverity is a Field enum value + FieldSeverity = "SEVERITY" + + // FieldStatus is a Field enum value + FieldStatus = "STATUS" + + // FieldCreatedTime is a Field enum value + FieldCreatedTime = "CREATED_TIME" +) + +// Field_Values returns all elements of the Field enum +func Field_Values() []string { + return []string{ + FieldSeverity, + FieldStatus, + FieldCreatedTime, + } +} + +const ( + // IndicatorTypeTtpObserved is a IndicatorType enum value + IndicatorTypeTtpObserved = "TTP_OBSERVED" + + // IndicatorTypeImpossibleTravel is a IndicatorType enum value + IndicatorTypeImpossibleTravel = "IMPOSSIBLE_TRAVEL" + + // IndicatorTypeFlaggedIpAddress is a IndicatorType enum value + IndicatorTypeFlaggedIpAddress = "FLAGGED_IP_ADDRESS" + + // IndicatorTypeNewGeolocation is a IndicatorType enum value + IndicatorTypeNewGeolocation = "NEW_GEOLOCATION" + + // IndicatorTypeNewAso is a IndicatorType enum value + IndicatorTypeNewAso = "NEW_ASO" + + // IndicatorTypeNewUserAgent is a IndicatorType enum value + IndicatorTypeNewUserAgent = "NEW_USER_AGENT" + + // IndicatorTypeRelatedFinding is a IndicatorType enum value + IndicatorTypeRelatedFinding = "RELATED_FINDING" + + // IndicatorTypeRelatedFindingGroup is a IndicatorType enum value + IndicatorTypeRelatedFindingGroup = "RELATED_FINDING_GROUP" +) + +// IndicatorType_Values returns all elements of the IndicatorType enum +func IndicatorType_Values() []string { + return []string{ + IndicatorTypeTtpObserved, + IndicatorTypeImpossibleTravel, + IndicatorTypeFlaggedIpAddress, + IndicatorTypeNewGeolocation, + IndicatorTypeNewAso, + IndicatorTypeNewUserAgent, + IndicatorTypeRelatedFinding, + IndicatorTypeRelatedFindingGroup, + } +} + +const ( // InvitationTypeInvitation is a InvitationType enum value InvitationTypeInvitation = "INVITATION" @@ -6087,3 +8247,95 @@ MemberStatusAcceptedButDisabled, } } + +const ( + // ReasonAwsThreatIntelligence is a Reason enum value + ReasonAwsThreatIntelligence = "AWS_THREAT_INTELLIGENCE" +) + +// Reason_Values returns all elements of the Reason enum +func Reason_Values() []string { + return []string{ + ReasonAwsThreatIntelligence, + } +} + +const ( + // SeverityInformational is a Severity enum value + SeverityInformational = "INFORMATIONAL" + + // SeverityLow is a Severity enum value + SeverityLow = "LOW" + + // SeverityMedium is a Severity enum value + SeverityMedium = "MEDIUM" + + // SeverityHigh is a Severity enum value + SeverityHigh = "HIGH" + + // SeverityCritical is a Severity enum value + SeverityCritical = "CRITICAL" +) + +// Severity_Values returns all elements of the Severity enum +func Severity_Values() []string { + return []string{ + SeverityInformational, + SeverityLow, + SeverityMedium, + SeverityHigh, + SeverityCritical, + } +} + +const ( + // SortOrderAsc is a SortOrder enum value + SortOrderAsc = "ASC" + + // SortOrderDesc is a SortOrder enum value + SortOrderDesc = "DESC" +) + +// SortOrder_Values returns all elements of the SortOrder enum +func SortOrder_Values() []string { + return []string{ + SortOrderAsc, + SortOrderDesc, + } +} + +const ( + // StateActive is a State enum value + StateActive = "ACTIVE" + + // StateArchived is a State enum value + StateArchived = "ARCHIVED" +) + +// State_Values returns all elements of the State enum +func State_Values() []string { + return []string{ + StateActive, + StateArchived, + } +} + +const ( + // StatusRunning is a Status enum value + StatusRunning = "RUNNING" + + // StatusFailed is a Status enum value + StatusFailed = "FAILED" + + // StatusSuccessful is a Status enum value + StatusSuccessful = "SUCCESSFUL" +) + +// Status_Values returns all elements of the Status enum +func Status_Values() []string { + return []string{ + StatusRunning, + StatusFailed, + StatusSuccessful, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/detective/detectiveiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/detective/detectiveiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/detective/detectiveiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/detective/detectiveiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -104,6 +104,10 @@ EnableOrganizationAdminAccountWithContext(aws.Context, *detective.EnableOrganizationAdminAccountInput, ...request.Option) (*detective.EnableOrganizationAdminAccountOutput, error) EnableOrganizationAdminAccountRequest(*detective.EnableOrganizationAdminAccountInput) (*request.Request, *detective.EnableOrganizationAdminAccountOutput) + GetInvestigation(*detective.GetInvestigationInput) (*detective.GetInvestigationOutput, error) + GetInvestigationWithContext(aws.Context, *detective.GetInvestigationInput, ...request.Option) (*detective.GetInvestigationOutput, error) + GetInvestigationRequest(*detective.GetInvestigationInput) (*request.Request, *detective.GetInvestigationOutput) + GetMembers(*detective.GetMembersInput) (*detective.GetMembersOutput, error) GetMembersWithContext(aws.Context, *detective.GetMembersInput, ...request.Option) (*detective.GetMembersOutput, error) GetMembersRequest(*detective.GetMembersInput) (*request.Request, *detective.GetMembersOutput) @@ -122,6 +126,14 @@ ListGraphsPages(*detective.ListGraphsInput, func(*detective.ListGraphsOutput, bool) bool) error ListGraphsPagesWithContext(aws.Context, *detective.ListGraphsInput, func(*detective.ListGraphsOutput, bool) bool, ...request.Option) error + ListIndicators(*detective.ListIndicatorsInput) (*detective.ListIndicatorsOutput, error) + ListIndicatorsWithContext(aws.Context, *detective.ListIndicatorsInput, ...request.Option) (*detective.ListIndicatorsOutput, error) + ListIndicatorsRequest(*detective.ListIndicatorsInput) (*request.Request, *detective.ListIndicatorsOutput) + + ListInvestigations(*detective.ListInvestigationsInput) (*detective.ListInvestigationsOutput, error) + ListInvestigationsWithContext(aws.Context, *detective.ListInvestigationsInput, ...request.Option) (*detective.ListInvestigationsOutput, error) + ListInvestigationsRequest(*detective.ListInvestigationsInput) (*request.Request, *detective.ListInvestigationsOutput) + ListInvitations(*detective.ListInvitationsInput) (*detective.ListInvitationsOutput, error) ListInvitationsWithContext(aws.Context, *detective.ListInvitationsInput, ...request.Option) (*detective.ListInvitationsOutput, error) ListInvitationsRequest(*detective.ListInvitationsInput) (*request.Request, *detective.ListInvitationsOutput) @@ -151,6 +163,10 @@ RejectInvitationWithContext(aws.Context, *detective.RejectInvitationInput, ...request.Option) (*detective.RejectInvitationOutput, error) RejectInvitationRequest(*detective.RejectInvitationInput) (*request.Request, *detective.RejectInvitationOutput) + StartInvestigation(*detective.StartInvestigationInput) (*detective.StartInvestigationOutput, error) + StartInvestigationWithContext(aws.Context, *detective.StartInvestigationInput, ...request.Option) (*detective.StartInvestigationOutput, error) + StartInvestigationRequest(*detective.StartInvestigationInput) (*request.Request, *detective.StartInvestigationOutput) + StartMonitoringMember(*detective.StartMonitoringMemberInput) (*detective.StartMonitoringMemberOutput, error) StartMonitoringMemberWithContext(aws.Context, *detective.StartMonitoringMemberInput, ...request.Option) (*detective.StartMonitoringMemberOutput, error) StartMonitoringMemberRequest(*detective.StartMonitoringMemberInput) (*request.Request, *detective.StartMonitoringMemberOutput) @@ -167,6 +183,10 @@ UpdateDatasourcePackagesWithContext(aws.Context, *detective.UpdateDatasourcePackagesInput, ...request.Option) (*detective.UpdateDatasourcePackagesOutput, error) UpdateDatasourcePackagesRequest(*detective.UpdateDatasourcePackagesInput) (*request.Request, *detective.UpdateDatasourcePackagesOutput) + UpdateInvestigationState(*detective.UpdateInvestigationStateInput) (*detective.UpdateInvestigationStateOutput, error) + UpdateInvestigationStateWithContext(aws.Context, *detective.UpdateInvestigationStateInput, ...request.Option) (*detective.UpdateInvestigationStateOutput, error) + UpdateInvestigationStateRequest(*detective.UpdateInvestigationStateInput) (*request.Request, *detective.UpdateInvestigationStateOutput) + UpdateOrganizationConfiguration(*detective.UpdateOrganizationConfigurationInput) (*detective.UpdateOrganizationConfigurationOutput, error) UpdateOrganizationConfigurationWithContext(aws.Context, *detective.UpdateOrganizationConfigurationInput, ...request.Option) (*detective.UpdateOrganizationConfigurationOutput, error) UpdateOrganizationConfigurationRequest(*detective.UpdateOrganizationConfigurationInput) (*request.Request, *detective.UpdateOrganizationConfigurationOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/dlm/api.go golang-github-aws-aws-sdk-go-1.48.14/service/dlm/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/dlm/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/dlm/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -56,8 +56,23 @@ // CreateLifecyclePolicy API operation for Amazon Data Lifecycle Manager. // -// Creates a policy to manage the lifecycle of the specified Amazon Web Services -// resources. You can create up to 100 lifecycle policies. +// Creates an Amazon Data Lifecycle Manager lifecycle policy. Amazon Data Lifecycle +// Manager supports the following policy types: +// +// - Custom EBS snapshot policy +// +// - Custom EBS-backed AMI policy +// +// - Cross-account copy event policy +// +// - Default policy for EBS snapshots +// +// - Default policy for EBS-backed AMIs +// +// For more information, see Default policies vs custom policies (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/policy-differences.html). +// +// If you create a default policy, you can specify the request parameters either +// in the request body, or in the PolicyDetails request structure, but not both. // // 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 @@ -128,7 +143,7 @@ op := &request.Operation{ Name: opDeleteLifecyclePolicy, HTTPMethod: "DELETE", - HTTPPath: "/policies/{policyId}/", + HTTPPath: "/policies/{policyId}", } if input == nil { @@ -234,7 +249,7 @@ // // Gets summary information about all or the specified data lifecycle policies. // -// To get complete information about a policy, use GetLifecyclePolicy. +// To get complete information about a policy, use GetLifecyclePolicy (https://docs.aws.amazon.com/dlm/latest/APIReference/API_GetLifecyclePolicy.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 @@ -308,7 +323,7 @@ op := &request.Operation{ Name: opGetLifecyclePolicy, HTTPMethod: "GET", - HTTPPath: "/policies/{policyId}/", + HTTPPath: "/policies/{policyId}", } if input == nil { @@ -784,7 +799,7 @@ return s } -// [Snapshot policies only] Specifies information about the archive storage +// [Custom snapshot policies only] Specifies information about the archive storage // tier retention period. type ArchiveRetainRule struct { _ struct{} `type:"structure"` @@ -838,7 +853,8 @@ return s } -// [Snapshot policies only] Specifies a snapshot archiving rule for a schedule. +// [Custom snapshot policies only] Specifies a snapshot archiving rule for a +// schedule. type ArchiveRule struct { _ struct{} `type:"structure"` @@ -893,24 +909,95 @@ type CreateLifecyclePolicyInput struct { _ struct{} `type:"structure"` + // [Default policies only] Indicates whether the policy should copy tags from + // the source resource to the snapshot or AMI. If you do not specify a value, + // the default is false. + // + // Default: false + CopyTags *bool `type:"boolean"` + + // [Default policies only] Specifies how often the policy should run and create + // snapshots or AMIs. The creation frequency can range from 1 to 7 days. If + // you do not specify a value, the default is 1. + // + // Default: 1 + CreateInterval *int64 `min:"1" type:"integer"` + + // [Default policies only] Specifies destination Regions for snapshot or AMI + // copies. You can specify up to 3 destination Regions. If you do not want to + // create cross-Region copies, omit this parameter. + CrossRegionCopyTargets []*CrossRegionCopyTarget `type:"list"` + + // [Default policies only] Specify the type of default policy to create. + // + // * To create a default policy for EBS snapshots, that creates snapshots + // of all volumes in the Region that do not have recent backups, specify + // VOLUME. + // + // * To create a default policy for EBS-backed AMIs, that creates EBS-backed + // AMIs from all instances in the Region that do not have recent backups, + // specify INSTANCE. + DefaultPolicy *string `type:"string" enum:"DefaultPolicyTypeValues"` + // A description of the lifecycle policy. The characters ^[0-9A-Za-z _-]+$ are // supported. // // Description is a required field Description *string `type:"string" required:"true"` + // [Default policies only] Specifies exclusion parameters for volumes or instances + // for which you do not want to create snapshots or AMIs. The policy will not + // create snapshots or AMIs for target resources that match any of the specified + // exclusion parameters. + Exclusions *Exclusions `type:"structure"` + // The Amazon Resource Name (ARN) of the IAM role used to run the operations // specified by the lifecycle policy. // // ExecutionRoleArn is a required field ExecutionRoleArn *string `type:"string" required:"true"` + // [Default policies only] Defines the snapshot or AMI retention behavior for + // the policy if the source volume or instance is deleted, or if the policy + // enters the error, disabled, or deleted state. + // + // By default (ExtendDeletion=false): + // + // * If a source resource is deleted, Amazon Data Lifecycle Manager will + // continue to delete previously created snapshots or AMIs, up to but not + // including the last one, based on the specified retention period. If you + // want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including + // the last one, specify true. + // + // * If a policy enters the error, disabled, or deleted state, Amazon Data + // Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon + // Data Lifecycle Manager to continue deleting snapshots or AMIs, including + // the last one, if the policy enters one of these states, specify true. + // + // If you enable extended deletion (ExtendDeletion=true), you override both + // default behaviors simultaneously. + // + // If you do not specify a value, the default is false. + // + // Default: false + ExtendDeletion *bool `type:"boolean"` + // The configuration details of the lifecycle policy. // - // PolicyDetails is a required field - PolicyDetails *PolicyDetails `type:"structure" required:"true"` + // If you create a default policy, you can specify the request parameters either + // in the request body, or in the PolicyDetails request structure, but not both. + PolicyDetails *PolicyDetails `type:"structure"` - // The desired activation state of the lifecycle policy after creation. + // [Default policies only] Specifies how long the policy should retain snapshots + // or AMIs before deleting them. The retention period can range from 2 to 14 + // days, but it must be greater than the creation frequency to ensure that the + // policy retains at least 1 snapshot or AMI at any given time. If you do not + // specify a value, the default is 7. + // + // Default: 7 + RetainInterval *int64 `min:"1" type:"integer"` + + // The activation state of the lifecycle policy after creation. // // State is a required field State *string `type:"string" required:"true" enum:"SettablePolicyStateValues"` @@ -940,14 +1027,17 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLifecyclePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLifecyclePolicyInput"} + if s.CreateInterval != nil && *s.CreateInterval < 1 { + invalidParams.Add(request.NewErrParamMinValue("CreateInterval", 1)) + } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.ExecutionRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("ExecutionRoleArn")) } - if s.PolicyDetails == nil { - invalidParams.Add(request.NewErrParamRequired("PolicyDetails")) + if s.RetainInterval != nil && *s.RetainInterval < 1 { + invalidParams.Add(request.NewErrParamMinValue("RetainInterval", 1)) } if s.State == nil { invalidParams.Add(request.NewErrParamRequired("State")) @@ -955,6 +1045,11 @@ if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } + if s.Exclusions != nil { + if err := s.Exclusions.Validate(); err != nil { + invalidParams.AddNested("Exclusions", err.(request.ErrInvalidParams)) + } + } if s.PolicyDetails != nil { if err := s.PolicyDetails.Validate(); err != nil { invalidParams.AddNested("PolicyDetails", err.(request.ErrInvalidParams)) @@ -967,24 +1062,66 @@ return nil } +// SetCopyTags sets the CopyTags field's value. +func (s *CreateLifecyclePolicyInput) SetCopyTags(v bool) *CreateLifecyclePolicyInput { + s.CopyTags = &v + return s +} + +// SetCreateInterval sets the CreateInterval field's value. +func (s *CreateLifecyclePolicyInput) SetCreateInterval(v int64) *CreateLifecyclePolicyInput { + s.CreateInterval = &v + return s +} + +// SetCrossRegionCopyTargets sets the CrossRegionCopyTargets field's value. +func (s *CreateLifecyclePolicyInput) SetCrossRegionCopyTargets(v []*CrossRegionCopyTarget) *CreateLifecyclePolicyInput { + s.CrossRegionCopyTargets = v + return s +} + +// SetDefaultPolicy sets the DefaultPolicy field's value. +func (s *CreateLifecyclePolicyInput) SetDefaultPolicy(v string) *CreateLifecyclePolicyInput { + s.DefaultPolicy = &v + return s +} + // SetDescription sets the Description field's value. func (s *CreateLifecyclePolicyInput) SetDescription(v string) *CreateLifecyclePolicyInput { s.Description = &v return s } +// SetExclusions sets the Exclusions field's value. +func (s *CreateLifecyclePolicyInput) SetExclusions(v *Exclusions) *CreateLifecyclePolicyInput { + s.Exclusions = v + return s +} + // SetExecutionRoleArn sets the ExecutionRoleArn field's value. func (s *CreateLifecyclePolicyInput) SetExecutionRoleArn(v string) *CreateLifecyclePolicyInput { s.ExecutionRoleArn = &v return s } +// SetExtendDeletion sets the ExtendDeletion field's value. +func (s *CreateLifecyclePolicyInput) SetExtendDeletion(v bool) *CreateLifecyclePolicyInput { + s.ExtendDeletion = &v + return s +} + // SetPolicyDetails sets the PolicyDetails field's value. func (s *CreateLifecyclePolicyInput) SetPolicyDetails(v *PolicyDetails) *CreateLifecyclePolicyInput { s.PolicyDetails = v return s } +// SetRetainInterval sets the RetainInterval field's value. +func (s *CreateLifecyclePolicyInput) SetRetainInterval(v int64) *CreateLifecyclePolicyInput { + s.RetainInterval = &v + return s +} + // SetState sets the State field's value. func (s *CreateLifecyclePolicyInput) SetState(v string) *CreateLifecyclePolicyInput { s.State = &v @@ -1028,14 +1165,15 @@ return s } -// [Snapshot and AMI policies only] Specifies when the policy should create -// snapshots or AMIs. +// [Custom snapshot and AMI policies only] Specifies when the policy should +// create snapshots or AMIs. // // - You must specify either CronExpression, or Interval, IntervalUnit, and // Times. // -// - If you need to specify an ArchiveRule for the schedule, then you must -// specify a creation frequency of at least 28 days. +// - If you need to specify an ArchiveRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html) +// for the schedule, then you must specify a creation frequency of at least +// 28 days. type CreateRule struct { _ struct{} `type:"structure"` @@ -1051,7 +1189,7 @@ // The interval unit. IntervalUnit *string `type:"string" enum:"IntervalUnitValues"` - // [Snapshot policies only] Specifies the destination for snapshots created + // [Custom snapshot policies only] Specifies the destination for snapshots created // by the policy. To create snapshots in the same Region as the source resource, // specify CLOUD. To create snapshots on the same Outpost as the source resource, // specify OUTPOST_LOCAL. If you omit this parameter, CLOUD is used by default. @@ -1062,6 +1200,16 @@ // Outpost as the source resource, or in the Region of that Outpost. Location *string `type:"string" enum:"LocationValues"` + // [Custom snapshot policies that target instances only] Specifies pre and/or + // post scripts for a snapshot lifecycle policy that targets instances. This + // is useful for creating application-consistent snapshots, or for performing + // specific administrative tasks before or after Amazon Data Lifecycle Manager + // initiates snapshot creation. + // + // For more information, see Automating application-consistent snapshots with + // pre and post scripts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/automate-app-consistent-backups.html). + Scripts []*Script `type:"list"` + // The time, in UTC, to start the operation. The supported format is hh:mm. // // The operation occurs within a one-hour window following the specified time. @@ -1097,6 +1245,16 @@ if s.Interval != nil && *s.Interval < 1 { invalidParams.Add(request.NewErrParamMinValue("Interval", 1)) } + if s.Scripts != nil { + for i, v := range s.Scripts { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Scripts", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -1128,6 +1286,12 @@ return s } +// SetScripts sets the Scripts field's value. +func (s *CreateRule) SetScripts(v []*Script) *CreateRule { + s.Scripts = v + return s +} + // SetTimes sets the Times field's value. func (s *CreateRule) SetTimes(v []*string) *CreateRule { s.Times = v @@ -1137,7 +1301,8 @@ // [Event-based policies only] Specifies a cross-Region copy action for event-based // policies. // -// To specify a cross-Region copy rule for snapshot and AMI policies, use CrossRegionCopyRule. +// To specify a cross-Region copy rule for snapshot and AMI policies, use CrossRegionCopyRule +// (https://docs.aws.amazon.com/dlm/latest/APIReference/API_CrossRegionCopyRule.html). type CrossRegionCopyAction struct { _ struct{} `type:"structure"` @@ -1219,8 +1384,8 @@ return s } -// [AMI policies only] Specifies an AMI deprecation rule for cross-Region AMI -// copies created by an AMI policy. +// [Custom AMI policies only] Specifies an AMI deprecation rule for cross-Region +// AMI copies created by an AMI policy. type CrossRegionCopyDeprecateRule struct { _ struct{} `type:"structure"` @@ -1336,10 +1501,11 @@ return s } -// [Snapshot and AMI policies only] Specifies a cross-Region copy rule for snapshot -// and AMI policies. +// [Custom snapshot and AMI policies only] Specifies a cross-Region copy rule +// for a snapshot and AMI policies. // -// To specify a cross-Region copy action for event-based polices, use CrossRegionCopyAction. +// To specify a cross-Region copy action for event-based polices, use CrossRegionCopyAction +// (https://docs.aws.amazon.com/dlm/latest/APIReference/API_CrossRegionCopyAction.html). type CrossRegionCopyRule struct { _ struct{} `type:"structure"` @@ -1352,8 +1518,8 @@ // or AMI to the cross-Region copy. CopyTags *bool `type:"boolean"` - // [AMI policies only] The AMI deprecation rule for cross-Region AMI copies - // created by the rule. + // [Custom AMI policies only] The AMI deprecation rule for cross-Region AMI + // copies created by the rule. DeprecateRule *CrossRegionCopyDeprecateRule `type:"structure"` // To encrypt a copy of an unencrypted snapshot if encryption by default is @@ -1368,18 +1534,21 @@ // copies are to be retained in the destination Region. RetainRule *CrossRegionCopyRetainRule `type:"structure"` - // The target Region or the Amazon Resource Name (ARN) of the target Outpost - // for the snapshot copies. // - // Use this parameter instead of TargetRegion. Do not specify both. + // Use this parameter for snapshot policies only. For AMI policies, use TargetRegion + // instead. + // + // [Custom snapshot policies only] The target Region or the Amazon Resource + // Name (ARN) of the target Outpost for the snapshot copies. Target *string `type:"string"` // - // Avoid using this parameter when creating new policies. Instead, use Target - // to specify a target Region or a target Outpost for snapshot copies. + // Use this parameter for AMI policies only. For snapshot policies, use Target + // instead. For snapshot policies created before the Target parameter was introduced, + // this parameter indicates the target Region for snapshot copies. // - // For policies created before the Target parameter was introduced, this parameter - // indicates the target Region for snapshot copies. + // [Custom AMI policies only] The target Region or the Amazon Resource Name + // (ARN) of the target Outpost for the snapshot copies. TargetRegion *string `type:"string"` } @@ -1466,6 +1635,39 @@ return s } +// [Default policies only] Specifies a destination Region for cross-Region copy +// actions. +type CrossRegionCopyTarget struct { + _ struct{} `type:"structure"` + + // The target Region, for example us-east-1. + TargetRegion *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 CrossRegionCopyTarget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CrossRegionCopyTarget) GoString() string { + return s.String() +} + +// SetTargetRegion sets the TargetRegion field's value. +func (s *CrossRegionCopyTarget) SetTargetRegion(v string) *CrossRegionCopyTarget { + s.TargetRegion = &v + return s +} + type DeleteLifecyclePolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -1537,8 +1739,8 @@ return s.String() } -// [AMI policies only] Specifies an AMI deprecation rule for AMIs created by -// an AMI lifecycle policy. +// [Custom AMI policies only] Specifies an AMI deprecation rule for AMIs created +// by an AMI lifecycle policy. // // For age-based schedules, you must specify Interval and IntervalUnit. For // count-based schedules, you must specify Count. @@ -1823,8 +2025,86 @@ return s } -// [Snapshot policies only] Specifies a rule for enabling fast snapshot restore -// for snapshots created by snapshot policies. You can enable fast snapshot +// [Default policies only] Specifies exclusion parameters for volumes or instances +// for which you do not want to create snapshots or AMIs. The policy will not +// create snapshots or AMIs for target resources that match any of the specified +// exclusion parameters. +type Exclusions struct { + _ struct{} `type:"structure"` + + // [Default policies for EBS snapshots only] Indicates whether to exclude volumes + // that are attached to instances as the boot volume. If you exclude boot volumes, + // only volumes attached as data (non-boot) volumes will be backed up by the + // policy. To exclude boot volumes, specify true. + ExcludeBootVolumes *bool `type:"boolean"` + + // [Default policies for EBS-backed AMIs only] Specifies whether to exclude + // volumes that have specific tags. + ExcludeTags []*Tag `type:"list"` + + // [Default policies for EBS snapshots only] Specifies the volume types to exclude. + // Volumes of the specified types will not be targeted by the policy. + ExcludeVolumeTypes []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Exclusions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Exclusions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Exclusions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Exclusions"} + if s.ExcludeTags != nil { + for i, v := range s.ExcludeTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExcludeTags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExcludeBootVolumes sets the ExcludeBootVolumes field's value. +func (s *Exclusions) SetExcludeBootVolumes(v bool) *Exclusions { + s.ExcludeBootVolumes = &v + return s +} + +// SetExcludeTags sets the ExcludeTags field's value. +func (s *Exclusions) SetExcludeTags(v []*Tag) *Exclusions { + s.ExcludeTags = v + return s +} + +// SetExcludeVolumeTypes sets the ExcludeVolumeTypes field's value. +func (s *Exclusions) SetExcludeVolumeTypes(v []*string) *Exclusions { + s.ExcludeVolumeTypes = v + return s +} + +// [Custom snapshot policies only] Specifies a rule for enabling fast snapshot +// restore for snapshots created by snapshot policies. You can enable fast snapshot // restore based on either a count or a time interval. type FastRestoreRule struct { _ struct{} `type:"structure"` @@ -1912,6 +2192,16 @@ type GetLifecyclePoliciesInput struct { _ struct{} `type:"structure" nopayload:"true"` + // [Default policies only] Specifies the type of default policy to get. Specify + // one of the following: + // + // * VOLUME - To get only the default policy for EBS snapshots + // + // * INSTANCE - To get only the default policy for EBS-backed AMIs + // + // * ALL - To get all default policies + DefaultPolicyType *string `location:"querystring" locationName:"defaultPolicyType" type:"string" enum:"DefaultPoliciesTypeValues"` + // The identifiers of the data lifecycle policies. PolicyIds []*string `location:"querystring" locationName:"policyIds" type:"list"` @@ -1969,6 +2259,12 @@ return nil } +// SetDefaultPolicyType sets the DefaultPolicyType field's value. +func (s *GetLifecyclePoliciesInput) SetDefaultPolicyType(v string) *GetLifecyclePoliciesInput { + s.DefaultPolicyType = &v + return s +} + // SetPolicyIds sets the PolicyIds field's value. func (s *GetLifecyclePoliciesInput) SetPolicyIds(v []*string) *GetLifecyclePoliciesInput { s.PolicyIds = v @@ -2248,7 +2544,7 @@ return s.RespMetadata.RequestID } -// [All policy types] Detailed information about a snapshot, AMI, or event-based +// [Custom policies only] Detailed information about a snapshot, AMI, or event-based // lifecycle policy. type LifecyclePolicy struct { _ struct{} `type:"structure"` @@ -2259,6 +2555,13 @@ // The local date and time when the lifecycle policy was last modified. DateModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` + // [Default policies only] The type of default policy. Values include: + // + // * VOLUME - Default policy for EBS snapshots + // + // * INSTANCE - Default policy for EBS-backed AMIs + DefaultPolicy *bool `type:"boolean"` + // The description of the lifecycle policy. Description *string `type:"string"` @@ -2315,6 +2618,12 @@ return s } +// SetDefaultPolicy sets the DefaultPolicy field's value. +func (s *LifecyclePolicy) SetDefaultPolicy(v bool) *LifecyclePolicy { + s.DefaultPolicy = &v + return s +} + // SetDescription sets the Description field's value. func (s *LifecyclePolicy) SetDescription(v string) *LifecyclePolicy { s.Description = &v @@ -2367,6 +2676,13 @@ type LifecyclePolicySummary struct { _ struct{} `type:"structure"` + // [Default policies only] The type of default policy. Values include: + // + // * VOLUME - Default policy for EBS snapshots + // + // * INSTANCE - Default policy for EBS-backed AMIs + DefaultPolicy *bool `type:"boolean"` + // The description of the lifecycle policy. Description *string `type:"string"` @@ -2405,6 +2721,12 @@ return s.String() } +// SetDefaultPolicy sets the DefaultPolicy field's value. +func (s *LifecyclePolicySummary) SetDefaultPolicy(v bool) *LifecyclePolicySummary { + s.DefaultPolicy = &v + return s +} + // SetDescription sets the Description field's value. func (s *LifecyclePolicySummary) SetDescription(v string) *LifecyclePolicySummary { s.Description = &v @@ -2584,8 +2906,8 @@ return s } -// [Snapshot and AMI policies only] Specifies optional parameters for snapshot -// and AMI policies. The set of valid parameters depends on the combination +// [Custom snapshot and AMI policies only] Specifies optional parameters for +// snapshot and AMI policies. The set of valid parameters depends on the combination // of policy type and target resource type. // // If you choose to exclude boot volumes and you specify tags that consequently @@ -2596,13 +2918,13 @@ type Parameters struct { _ struct{} `type:"structure"` - // [Snapshot policies that target instances only] Indicates whether to exclude - // the root volume from multi-volume snapshot sets. The default is false. If - // you specify true, then the root volumes attached to targeted instances will - // be excluded from the multi-volume snapshot sets created by the policy. + // [Custom snapshot policies that target instances only] Indicates whether to + // exclude the root volume from multi-volume snapshot sets. The default is false. + // If you specify true, then the root volumes attached to targeted instances + // will be excluded from the multi-volume snapshot sets created by the policy. ExcludeBootVolume *bool `type:"boolean"` - // [Snapshot policies that target instances only] The tags used to identify + // [Custom snapshot policies that target instances only] The tags used to identify // data (non-root) volumes to exclude from multi-volume snapshot sets. // // If you create a snapshot lifecycle policy that targets instances and you @@ -2611,10 +2933,11 @@ // snapshot sets created by the policy. ExcludeDataVolumeTags []*Tag `type:"list"` - // [AMI policies only] Indicates whether targeted instances are rebooted when - // the lifecycle policy runs. true indicates that targeted instances are not - // rebooted when the policy runs. false indicates that target instances are - // rebooted when the policy runs. The default is true (instances are not rebooted). + // [Custom AMI policies only] Indicates whether targeted instances are rebooted + // when the lifecycle policy runs. true indicates that targeted instances are + // not rebooted when the policy runs. false indicates that target instances + // are rebooted when the policy runs. The default is true (instances are not + // rebooted). NoReboot *bool `type:"boolean"` } @@ -2674,7 +2997,7 @@ return s } -// [All policy types] Specifies the configuration of a lifecycle policy. +// Specifies the configuration of a lifecycle policy. type PolicyDetails struct { _ struct{} `type:"structure"` @@ -2682,11 +3005,61 @@ // policy is activated. You can specify only one action per policy. Actions []*Action `min:"1" type:"list"` + // [Default policies only] Indicates whether the policy should copy tags from + // the source resource to the snapshot or AMI. If you do not specify a value, + // the default is false. + // + // Default: false + CopyTags *bool `type:"boolean"` + + // [Default policies only] Specifies how often the policy should run and create + // snapshots or AMIs. The creation frequency can range from 1 to 7 days. If + // you do not specify a value, the default is 1. + // + // Default: 1 + CreateInterval *int64 `min:"1" type:"integer"` + + // [Default policies only] Specifies destination Regions for snapshot or AMI + // copies. You can specify up to 3 destination Regions. If you do not want to + // create cross-Region copies, omit this parameter. + CrossRegionCopyTargets []*CrossRegionCopyTarget `type:"list"` + // [Event-based policies only] The event that activates the event-based policy. EventSource *EventSource `type:"structure"` - // [Snapshot and AMI policies only] A set of optional parameters for snapshot - // and AMI lifecycle policies. + // [Default policies only] Specifies exclusion parameters for volumes or instances + // for which you do not want to create snapshots or AMIs. The policy will not + // create snapshots or AMIs for target resources that match any of the specified + // exclusion parameters. + Exclusions *Exclusions `type:"structure"` + + // [Default policies only] Defines the snapshot or AMI retention behavior for + // the policy if the source volume or instance is deleted, or if the policy + // enters the error, disabled, or deleted state. + // + // By default (ExtendDeletion=false): + // + // * If a source resource is deleted, Amazon Data Lifecycle Manager will + // continue to delete previously created snapshots or AMIs, up to but not + // including the last one, based on the specified retention period. If you + // want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including + // the last one, specify true. + // + // * If a policy enters the error, disabled, or deleted state, Amazon Data + // Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon + // Data Lifecycle Manager to continue deleting snapshots or AMIs, including + // the last one, if the policy enters one of these states, specify true. + // + // If you enable extended deletion (ExtendDeletion=true), you override both + // default behaviors simultaneously. + // + // If you do not specify a value, the default is false. + // + // Default: false + ExtendDeletion *bool `type:"boolean"` + + // [Custom snapshot and AMI policies only] A set of optional parameters for + // snapshot and AMI lifecycle policies. // // If you are modifying a policy that was created or previously modified using // the Amazon Data Lifecycle Manager console, then you must include this parameter @@ -2694,10 +3067,17 @@ // You can't omit this parameter or set its values to null. Parameters *Parameters `type:"structure"` - // [All policy types] The valid target resource types and actions a policy can - // manage. Specify EBS_SNAPSHOT_MANAGEMENT to create a lifecycle policy that - // manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT to - // create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. + // The type of policy to create. Specify one of the following: + // + // * SIMPLIFIED To create a default policy. + // + // * STANDARD To create a custom policy. + PolicyLanguage *string `type:"string" enum:"PolicyLanguageValues"` + + // [Custom policies only] The valid target resource types and actions a policy + // can manage. Specify EBS_SNAPSHOT_MANAGEMENT to create a lifecycle policy + // that manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT + // to create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. // Specify EVENT_BASED_POLICY to create an event-based policy that performs // specific actions when a defined event occurs in your Amazon Web Services // account. @@ -2705,27 +3085,48 @@ // The default is EBS_SNAPSHOT_MANAGEMENT. PolicyType *string `type:"string" enum:"PolicyTypeValues"` - // [Snapshot and AMI policies only] The location of the resources to backup. - // If the source resources are located in an Amazon Web Services Region, specify - // CLOUD. If the source resources are located on an Outpost in your account, - // specify OUTPOST. + // [Custom snapshot and AMI policies only] The location of the resources to + // backup. If the source resources are located in an Amazon Web Services Region, + // specify CLOUD. If the source resources are located on an Outpost in your + // account, specify OUTPOST. // // If you specify OUTPOST, Amazon Data Lifecycle Manager backs up all resources // of the specified type with matching target tags across all of the Outposts // in your account. ResourceLocations []*string `min:"1" type:"list" enum:"ResourceLocationValues"` - // [Snapshot policies only] The target resource type for snapshot and AMI lifecycle - // policies. Use VOLUME to create snapshots of individual volumes or use INSTANCE - // to create multi-volume snapshots from the volumes for an instance. + // [Default policies only] Specify the type of default policy to create. + // + // * To create a default policy for EBS snapshots, that creates snapshots + // of all volumes in the Region that do not have recent backups, specify + // VOLUME. + // + // * To create a default policy for EBS-backed AMIs, that creates EBS-backed + // AMIs from all instances in the Region that do not have recent backups, + // specify INSTANCE. + ResourceType *string `type:"string" enum:"ResourceTypeValues"` + + // [Custom snapshot policies only] The target resource type for snapshot and + // AMI lifecycle policies. Use VOLUME to create snapshots of individual volumes + // or use INSTANCE to create multi-volume snapshots from the volumes for an + // instance. ResourceTypes []*string `min:"1" type:"list" enum:"ResourceTypeValues"` - // [Snapshot and AMI policies only] The schedules of policy-defined actions + // [Default policies only] Specifies how long the policy should retain snapshots + // or AMIs before deleting them. The retention period can range from 2 to 14 + // days, but it must be greater than the creation frequency to ensure that the + // policy retains at least 1 snapshot or AMI at any given time. If you do not + // specify a value, the default is 7. + // + // Default: 7 + RetainInterval *int64 `min:"1" type:"integer"` + + // [Custom snapshot and AMI policies only] The schedules of policy-defined actions // for snapshot and AMI lifecycle policies. A policy can have up to four schedules—one // mandatory schedule and up to three optional schedules. Schedules []*Schedule `min:"1" type:"list"` - // [Snapshot and AMI policies only] The single tag that identifies targeted + // [Custom snapshot and AMI policies only] The single tag that identifies targeted // resources for this policy. TargetTags []*Tag `min:"1" type:"list"` } @@ -2754,12 +3155,18 @@ if s.Actions != nil && len(s.Actions) < 1 { invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) } + if s.CreateInterval != nil && *s.CreateInterval < 1 { + invalidParams.Add(request.NewErrParamMinValue("CreateInterval", 1)) + } if s.ResourceLocations != nil && len(s.ResourceLocations) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceLocations", 1)) } if s.ResourceTypes != nil && len(s.ResourceTypes) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceTypes", 1)) } + if s.RetainInterval != nil && *s.RetainInterval < 1 { + invalidParams.Add(request.NewErrParamMinValue("RetainInterval", 1)) + } if s.Schedules != nil && len(s.Schedules) < 1 { invalidParams.Add(request.NewErrParamMinLen("Schedules", 1)) } @@ -2781,6 +3188,11 @@ invalidParams.AddNested("EventSource", err.(request.ErrInvalidParams)) } } + if s.Exclusions != nil { + if err := s.Exclusions.Validate(); err != nil { + invalidParams.AddNested("Exclusions", err.(request.ErrInvalidParams)) + } + } if s.Parameters != nil { if err := s.Parameters.Validate(); err != nil { invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) @@ -2819,18 +3231,54 @@ return s } +// SetCopyTags sets the CopyTags field's value. +func (s *PolicyDetails) SetCopyTags(v bool) *PolicyDetails { + s.CopyTags = &v + return s +} + +// SetCreateInterval sets the CreateInterval field's value. +func (s *PolicyDetails) SetCreateInterval(v int64) *PolicyDetails { + s.CreateInterval = &v + return s +} + +// SetCrossRegionCopyTargets sets the CrossRegionCopyTargets field's value. +func (s *PolicyDetails) SetCrossRegionCopyTargets(v []*CrossRegionCopyTarget) *PolicyDetails { + s.CrossRegionCopyTargets = v + return s +} + // SetEventSource sets the EventSource field's value. func (s *PolicyDetails) SetEventSource(v *EventSource) *PolicyDetails { s.EventSource = v return s } +// SetExclusions sets the Exclusions field's value. +func (s *PolicyDetails) SetExclusions(v *Exclusions) *PolicyDetails { + s.Exclusions = v + return s +} + +// SetExtendDeletion sets the ExtendDeletion field's value. +func (s *PolicyDetails) SetExtendDeletion(v bool) *PolicyDetails { + s.ExtendDeletion = &v + return s +} + // SetParameters sets the Parameters field's value. func (s *PolicyDetails) SetParameters(v *Parameters) *PolicyDetails { s.Parameters = v return s } +// SetPolicyLanguage sets the PolicyLanguage field's value. +func (s *PolicyDetails) SetPolicyLanguage(v string) *PolicyDetails { + s.PolicyLanguage = &v + return s +} + // SetPolicyType sets the PolicyType field's value. func (s *PolicyDetails) SetPolicyType(v string) *PolicyDetails { s.PolicyType = &v @@ -2843,12 +3291,24 @@ return s } +// SetResourceType sets the ResourceType field's value. +func (s *PolicyDetails) SetResourceType(v string) *PolicyDetails { + s.ResourceType = &v + return s +} + // SetResourceTypes sets the ResourceTypes field's value. func (s *PolicyDetails) SetResourceTypes(v []*string) *PolicyDetails { s.ResourceTypes = v return s } +// SetRetainInterval sets the RetainInterval field's value. +func (s *PolicyDetails) SetRetainInterval(v int64) *PolicyDetails { + s.RetainInterval = &v + return s +} + // SetSchedules sets the Schedules field's value. func (s *PolicyDetails) SetSchedules(v []*Schedule) *PolicyDetails { s.Schedules = v @@ -2933,12 +3393,12 @@ return s.RespMetadata.RequestID } -// [Snapshot and AMI policies only] Specifies a retention rule for snapshots +// [Custom snapshot and AMI policies only] Specifies a retention rule for snapshots // created by snapshot policies, or for AMIs created by AMI policies. // -// For snapshot policies that have an ArchiveRule, this retention rule applies -// to standard tier retention. When the retention threshold is met, snapshots -// are moved from the standard to the archive tier. +// For snapshot policies that have an ArchiveRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html), +// this retention rule applies to standard tier retention. When the retention +// threshold is met, snapshots are moved from the standard to the archive tier. // // For snapshot policies that do not have an ArchiveRule, snapshots are permanently // deleted when this retention threshold is met. @@ -2946,23 +3406,29 @@ // You can retain snapshots based on either a count or a time interval. // // - Count-based retention You must specify Count. If you specify an ArchiveRule +// (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html) // for the schedule, then you can specify a retention count of 0 to archive -// snapshots immediately after creation. If you specify a FastRestoreRule, -// ShareRule, or a CrossRegionCopyRule, then you must specify a retention -// count of 1 or more. +// snapshots immediately after creation. If you specify a FastRestoreRule +// (https://docs.aws.amazon.com/dlm/latest/APIReference/API_FastRestoreRule.html), +// ShareRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ShareRule.html), +// or a CrossRegionCopyRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_CrossRegionCopyRule.html), +// then you must specify a retention count of 1 or more. // // - Age-based retention You must specify Interval and IntervalUnit. If you -// specify an ArchiveRule for the schedule, then you can specify a retention -// interval of 0 days to archive snapshots immediately after creation. If -// you specify a FastRestoreRule, ShareRule, or a CrossRegionCopyRule, then -// you must specify a retention interval of 1 day or more. +// specify an ArchiveRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html) +// for the schedule, then you can specify a retention interval of 0 days +// to archive snapshots immediately after creation. If you specify a FastRestoreRule +// (https://docs.aws.amazon.com/dlm/latest/APIReference/API_FastRestoreRule.html), +// ShareRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ShareRule.html), +// or a CrossRegionCopyRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_CrossRegionCopyRule.html), +// then you must specify a retention interval of 1 day or more. type RetainRule struct { _ struct{} `type:"structure"` // The number of snapshots to retain for each volume, up to a maximum of 1000. // For example if you want to retain a maximum of three snapshots, specify 3. // When the fourth snapshot is created, the oldest retained snapshot is deleted, - // or it is moved to the archive tier if you have specified an ArchiveRule. + // or it is moved to the archive tier if you have specified an ArchiveRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html). Count *int64 `type:"integer"` // The amount of time to retain each snapshot. The maximum is 100 years. This @@ -2972,7 +3438,7 @@ // The unit of time for time-based retention. For example, to retain snapshots // for 3 months, specify Interval=3 and IntervalUnit=MONTHS. Once the snapshot // has been retained for 3 months, it is deleted, or it is moved to the archive - // tier if you have specified an ArchiveRule. + // tier if you have specified an ArchiveRule (https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html). IntervalUnit *string `type:"string" enum:"RetentionIntervalUnitValues"` } @@ -3012,9 +3478,9 @@ return s } -// [Snapshot policies only] Describes the retention rule for archived snapshots. -// Once the archive retention threshold is met, the snapshots are permanently -// deleted from the archive tier. +// [Custom snapshot policies only] Describes the retention rule for archived +// snapshots. Once the archive retention threshold is met, the snapshots are +// permanently deleted from the archive tier. // // The archive retention rule must retain snapshots in the archive tier for // a minimum of 90 days. @@ -3095,16 +3561,16 @@ return s } -// [Snapshot and AMI policies only] Specifies a schedule for a snapshot or AMI -// lifecycle policy. +// [Custom snapshot and AMI policies only] Specifies a schedule for a snapshot +// or AMI lifecycle policy. type Schedule struct { _ struct{} `type:"structure"` - // [Snapshot policies that target volumes only] The snapshot archiving rule - // for the schedule. When you specify an archiving rule, snapshots are automatically - // moved from the standard tier to the archive tier once the schedule's retention - // threshold is met. Snapshots are then retained in the archive tier for the - // archive retention period that you specify. + // [Custom snapshot policies that target volumes only] The snapshot archiving + // rule for the schedule. When you specify an archiving rule, snapshots are + // automatically moved from the standard tier to the archive tier once the schedule's + // retention threshold is met. Snapshots are then retained in the archive tier + // for the archive retention period that you specify. // // For more information about using snapshot archiving, see Considerations for // snapshot lifecycle policies (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-ami-policy.html#dlm-archive). @@ -3124,10 +3590,10 @@ // can be copied to up to three Regions or Outposts. CrossRegionCopyRules []*CrossRegionCopyRule `type:"list"` - // [AMI policies only] The AMI deprecation rule for the schedule. + // [Custom AMI policies only] The AMI deprecation rule for the schedule. DeprecateRule *DeprecateRule `type:"structure"` - // [Snapshot policies only] The rule for enabling fast snapshot restore. + // [Custom snapshot policies only] The rule for enabling fast snapshot restore. FastRestoreRule *FastRestoreRule `type:"structure"` // The name of the schedule. @@ -3136,8 +3602,8 @@ // The retention rule for snapshots or AMIs created by the policy. RetainRule *RetainRule `type:"structure"` - // [Snapshot policies only] The rule for sharing snapshots with other Amazon - // Web Services accounts. + // [Custom snapshot policies only] The rule for sharing snapshots with other + // Amazon Web Services accounts. ShareRules []*ShareRule `type:"list"` // The tags to apply to policy-created resources. These user-defined tags are @@ -3306,8 +3772,181 @@ return s } -// [Snapshot policies only] Specifies a rule for sharing snapshots across Amazon -// Web Services accounts. +// [Custom snapshot policies that target instances only] Information about pre +// and/or post scripts for a snapshot lifecycle policy that targets instances. +// For more information, see Automating application-consistent snapshots with +// pre and post scripts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/automate-app-consistent-backups.html). +type Script struct { + _ struct{} `type:"structure"` + + // Indicates whether Amazon Data Lifecycle Manager should default to crash-consistent + // snapshots if the pre script fails. + // + // * To default to crash consistent snapshot if the pre script fails, specify + // true. + // + // * To skip the instance for snapshot creation if the pre script fails, + // specify false. + // + // This parameter is supported only if you run a pre script. If you run a post + // script only, omit this parameter. + // + // Default: true + ExecuteOperationOnScriptFailure *bool `type:"boolean"` + + // The SSM document that includes the pre and/or post scripts to run. + // + // * If you are automating VSS backups, specify AWS_VSS_BACKUP. In this case, + // Amazon Data Lifecycle Manager automatically uses the AWSEC2-CreateVssSnapshot + // SSM document. + // + // * If you are automating application-consistent snapshots for SAP HANA + // workloads, specify AWSSystemsManagerSAP-CreateDLMSnapshotForSAPHANA. + // + // * If you are using a custom SSM document that you own, specify either + // the name or ARN of the SSM document. If you are using a custom SSM document + // that is shared with you, specify the ARN of the SSM document. + // + // ExecutionHandler is a required field + ExecutionHandler *string `type:"string" required:"true"` + + // Indicates the service used to execute the pre and/or post scripts. + // + // * If you are using custom SSM documents or automating application-consistent + // snapshots of SAP HANA workloads, specify AWS_SYSTEMS_MANAGER. + // + // * If you are automating VSS Backups, omit this parameter. + // + // Default: AWS_SYSTEMS_MANAGER + ExecutionHandlerService *string `type:"string" enum:"ExecutionHandlerServiceValues"` + + // Specifies a timeout period, in seconds, after which Amazon Data Lifecycle + // Manager fails the script run attempt if it has not completed. If a script + // does not complete within its timeout period, Amazon Data Lifecycle Manager + // fails the attempt. The timeout period applies to the pre and post scripts + // individually. + // + // If you are automating VSS Backups, omit this parameter. + // + // Default: 10 + ExecutionTimeout *int64 `min:"10" type:"integer"` + + // Specifies the number of times Amazon Data Lifecycle Manager should retry + // scripts that fail. + // + // * If the pre script fails, Amazon Data Lifecycle Manager retries the entire + // snapshot creation process, including running the pre and post scripts. + // + // * If the post script fails, Amazon Data Lifecycle Manager retries the + // post script only; in this case, the pre script will have completed and + // the snapshot might have been created. + // + // If you do not want Amazon Data Lifecycle Manager to retry failed scripts, + // specify 0. + // + // Default: 0 + MaximumRetryCount *int64 `type:"integer"` + + // Indicate which scripts Amazon Data Lifecycle Manager should run on target + // instances. Pre scripts run before Amazon Data Lifecycle Manager initiates + // snapshot creation. Post scripts run after Amazon Data Lifecycle Manager initiates + // snapshot creation. + // + // * To run a pre script only, specify PRE. In this case, Amazon Data Lifecycle + // Manager calls the SSM document with the pre-script parameter before initiating + // snapshot creation. + // + // * To run a post script only, specify POST. In this case, Amazon Data Lifecycle + // Manager calls the SSM document with the post-script parameter after initiating + // snapshot creation. + // + // * To run both pre and post scripts, specify both PRE and POST. In this + // case, Amazon Data Lifecycle Manager calls the SSM document with the pre-script + // parameter before initiating snapshot creation, and then it calls the SSM + // document again with the post-script parameter after initiating snapshot + // creation. + // + // If you are automating VSS Backups, omit this parameter. + // + // Default: PRE and POST + Stages []*string `min:"1" type:"list" enum:"StageValues"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Script) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Script) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Script) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Script"} + if s.ExecutionHandler == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionHandler")) + } + if s.ExecutionTimeout != nil && *s.ExecutionTimeout < 10 { + invalidParams.Add(request.NewErrParamMinValue("ExecutionTimeout", 10)) + } + if s.Stages != nil && len(s.Stages) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Stages", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExecuteOperationOnScriptFailure sets the ExecuteOperationOnScriptFailure field's value. +func (s *Script) SetExecuteOperationOnScriptFailure(v bool) *Script { + s.ExecuteOperationOnScriptFailure = &v + return s +} + +// SetExecutionHandler sets the ExecutionHandler field's value. +func (s *Script) SetExecutionHandler(v string) *Script { + s.ExecutionHandler = &v + return s +} + +// SetExecutionHandlerService sets the ExecutionHandlerService field's value. +func (s *Script) SetExecutionHandlerService(v string) *Script { + s.ExecutionHandlerService = &v + return s +} + +// SetExecutionTimeout sets the ExecutionTimeout field's value. +func (s *Script) SetExecutionTimeout(v int64) *Script { + s.ExecutionTimeout = &v + return s +} + +// SetMaximumRetryCount sets the MaximumRetryCount field's value. +func (s *Script) SetMaximumRetryCount(v int64) *Script { + s.MaximumRetryCount = &v + return s +} + +// SetStages sets the Stages field's value. +func (s *Script) SetStages(v []*string) *Script { + s.Stages = v + return s +} + +// [Custom snapshot policies only] Specifies a rule for sharing snapshots across +// Amazon Web Services accounts. type ShareRule struct { _ struct{} `type:"structure"` @@ -3619,13 +4258,55 @@ type UpdateLifecyclePolicyInput struct { _ struct{} `type:"structure"` + // [Default policies only] Indicates whether the policy should copy tags from + // the source resource to the snapshot or AMI. + CopyTags *bool `type:"boolean"` + + // [Default policies only] Specifies how often the policy should run and create + // snapshots or AMIs. The creation frequency can range from 1 to 7 days. + CreateInterval *int64 `min:"1" type:"integer"` + + // [Default policies only] Specifies destination Regions for snapshot or AMI + // copies. You can specify up to 3 destination Regions. If you do not want to + // create cross-Region copies, omit this parameter. + CrossRegionCopyTargets []*CrossRegionCopyTarget `type:"list"` + // A description of the lifecycle policy. Description *string `type:"string"` + // [Default policies only] Specifies exclusion parameters for volumes or instances + // for which you do not want to create snapshots or AMIs. The policy will not + // create snapshots or AMIs for target resources that match any of the specified + // exclusion parameters. + Exclusions *Exclusions `type:"structure"` + // The Amazon Resource Name (ARN) of the IAM role used to run the operations // specified by the lifecycle policy. ExecutionRoleArn *string `type:"string"` + // [Default policies only] Defines the snapshot or AMI retention behavior for + // the policy if the source volume or instance is deleted, or if the policy + // enters the error, disabled, or deleted state. + // + // By default (ExtendDeletion=false): + // + // * If a source resource is deleted, Amazon Data Lifecycle Manager will + // continue to delete previously created snapshots or AMIs, up to but not + // including the last one, based on the specified retention period. If you + // want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including + // the last one, specify true. + // + // * If a policy enters the error, disabled, or deleted state, Amazon Data + // Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon + // Data Lifecycle Manager to continue deleting snapshots or AMIs, including + // the last one, if the policy enters one of these states, specify true. + // + // If you enable extended deletion (ExtendDeletion=true), you override both + // default behaviors simultaneously. + // + // Default: false + ExtendDeletion *bool `type:"boolean"` + // The configuration of the lifecycle policy. You cannot update the policy type // or the resource type. PolicyDetails *PolicyDetails `type:"structure"` @@ -3635,6 +4316,12 @@ // PolicyId is a required field PolicyId *string `location:"uri" locationName:"policyId" type:"string" required:"true"` + // [Default policies only] Specifies how long the policy should retain snapshots + // or AMIs before deleting them. The retention period can range from 2 to 14 + // days, but it must be greater than the creation frequency to ensure that the + // policy retains at least 1 snapshot or AMI at any given time. + RetainInterval *int64 `min:"1" type:"integer"` + // The desired activation state of the lifecycle policy after creation. State *string `type:"string" enum:"SettablePolicyStateValues"` } @@ -3660,12 +4347,23 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateLifecyclePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateLifecyclePolicyInput"} + if s.CreateInterval != nil && *s.CreateInterval < 1 { + invalidParams.Add(request.NewErrParamMinValue("CreateInterval", 1)) + } if s.PolicyId == nil { invalidParams.Add(request.NewErrParamRequired("PolicyId")) } if s.PolicyId != nil && len(*s.PolicyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyId", 1)) } + if s.RetainInterval != nil && *s.RetainInterval < 1 { + invalidParams.Add(request.NewErrParamMinValue("RetainInterval", 1)) + } + if s.Exclusions != nil { + if err := s.Exclusions.Validate(); err != nil { + invalidParams.AddNested("Exclusions", err.(request.ErrInvalidParams)) + } + } if s.PolicyDetails != nil { if err := s.PolicyDetails.Validate(); err != nil { invalidParams.AddNested("PolicyDetails", err.(request.ErrInvalidParams)) @@ -3678,18 +4376,48 @@ return nil } +// SetCopyTags sets the CopyTags field's value. +func (s *UpdateLifecyclePolicyInput) SetCopyTags(v bool) *UpdateLifecyclePolicyInput { + s.CopyTags = &v + return s +} + +// SetCreateInterval sets the CreateInterval field's value. +func (s *UpdateLifecyclePolicyInput) SetCreateInterval(v int64) *UpdateLifecyclePolicyInput { + s.CreateInterval = &v + return s +} + +// SetCrossRegionCopyTargets sets the CrossRegionCopyTargets field's value. +func (s *UpdateLifecyclePolicyInput) SetCrossRegionCopyTargets(v []*CrossRegionCopyTarget) *UpdateLifecyclePolicyInput { + s.CrossRegionCopyTargets = v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateLifecyclePolicyInput) SetDescription(v string) *UpdateLifecyclePolicyInput { s.Description = &v return s } +// SetExclusions sets the Exclusions field's value. +func (s *UpdateLifecyclePolicyInput) SetExclusions(v *Exclusions) *UpdateLifecyclePolicyInput { + s.Exclusions = v + return s +} + // SetExecutionRoleArn sets the ExecutionRoleArn field's value. func (s *UpdateLifecyclePolicyInput) SetExecutionRoleArn(v string) *UpdateLifecyclePolicyInput { s.ExecutionRoleArn = &v return s } +// SetExtendDeletion sets the ExtendDeletion field's value. +func (s *UpdateLifecyclePolicyInput) SetExtendDeletion(v bool) *UpdateLifecyclePolicyInput { + s.ExtendDeletion = &v + return s +} + // SetPolicyDetails sets the PolicyDetails field's value. func (s *UpdateLifecyclePolicyInput) SetPolicyDetails(v *PolicyDetails) *UpdateLifecyclePolicyInput { s.PolicyDetails = v @@ -3702,6 +4430,12 @@ return s } +// SetRetainInterval sets the RetainInterval field's value. +func (s *UpdateLifecyclePolicyInput) SetRetainInterval(v int64) *UpdateLifecyclePolicyInput { + s.RetainInterval = &v + return s +} + // SetState sets the State field's value. func (s *UpdateLifecyclePolicyInput) SetState(v string) *UpdateLifecyclePolicyInput { s.State = &v @@ -3731,6 +4465,42 @@ } const ( + // DefaultPoliciesTypeValuesVolume is a DefaultPoliciesTypeValues enum value + DefaultPoliciesTypeValuesVolume = "VOLUME" + + // DefaultPoliciesTypeValuesInstance is a DefaultPoliciesTypeValues enum value + DefaultPoliciesTypeValuesInstance = "INSTANCE" + + // DefaultPoliciesTypeValuesAll is a DefaultPoliciesTypeValues enum value + DefaultPoliciesTypeValuesAll = "ALL" +) + +// DefaultPoliciesTypeValues_Values returns all elements of the DefaultPoliciesTypeValues enum +func DefaultPoliciesTypeValues_Values() []string { + return []string{ + DefaultPoliciesTypeValuesVolume, + DefaultPoliciesTypeValuesInstance, + DefaultPoliciesTypeValuesAll, + } +} + +const ( + // DefaultPolicyTypeValuesVolume is a DefaultPolicyTypeValues enum value + DefaultPolicyTypeValuesVolume = "VOLUME" + + // DefaultPolicyTypeValuesInstance is a DefaultPolicyTypeValues enum value + DefaultPolicyTypeValuesInstance = "INSTANCE" +) + +// DefaultPolicyTypeValues_Values returns all elements of the DefaultPolicyTypeValues enum +func DefaultPolicyTypeValues_Values() []string { + return []string{ + DefaultPolicyTypeValuesVolume, + DefaultPolicyTypeValuesInstance, + } +} + +const ( // EventSourceValuesManagedCwe is a EventSourceValues enum value EventSourceValuesManagedCwe = "MANAGED_CWE" ) @@ -3755,6 +4525,18 @@ } const ( + // ExecutionHandlerServiceValuesAwsSystemsManager is a ExecutionHandlerServiceValues enum value + ExecutionHandlerServiceValuesAwsSystemsManager = "AWS_SYSTEMS_MANAGER" +) + +// ExecutionHandlerServiceValues_Values returns all elements of the ExecutionHandlerServiceValues enum +func ExecutionHandlerServiceValues_Values() []string { + return []string{ + ExecutionHandlerServiceValuesAwsSystemsManager, + } +} + +const ( // GettablePolicyStateValuesEnabled is a GettablePolicyStateValues enum value GettablePolicyStateValuesEnabled = "ENABLED" @@ -3803,6 +4585,22 @@ } const ( + // PolicyLanguageValuesSimplified is a PolicyLanguageValues enum value + PolicyLanguageValuesSimplified = "SIMPLIFIED" + + // PolicyLanguageValuesStandard is a PolicyLanguageValues enum value + PolicyLanguageValuesStandard = "STANDARD" +) + +// PolicyLanguageValues_Values returns all elements of the PolicyLanguageValues enum +func PolicyLanguageValues_Values() []string { + return []string{ + PolicyLanguageValuesSimplified, + PolicyLanguageValuesStandard, + } +} + +const ( // PolicyTypeValuesEbsSnapshotManagement is a PolicyTypeValues enum value PolicyTypeValuesEbsSnapshotManagement = "EBS_SNAPSHOT_MANAGEMENT" @@ -3893,3 +4691,19 @@ SettablePolicyStateValuesDisabled, } } + +const ( + // StageValuesPre is a StageValues enum value + StageValuesPre = "PRE" + + // StageValuesPost is a StageValues enum value + StageValuesPost = "POST" +) + +// StageValues_Values returns all elements of the StageValues enum +func StageValues_Values() []string { + return []string{ + StageValuesPre, + StageValuesPost, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/docdb/api.go golang-github-aws-aws-sdk-go-1.48.14/service/docdb/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/docdb/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/docdb/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -6028,6 +6028,53 @@ return s } +// Returns the details of the DB instance’s server certificate. +// +// For more information, see Updating Your Amazon DocumentDB TLS Certificates +// (https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html) +// and Encrypting Data in Transit (https://docs.aws.amazon.com/documentdb/latest/developerguide/security.encryption.ssl.html) +// in the Amazon DocumentDB Developer Guide. +type CertificateDetails struct { + _ struct{} `type:"structure"` + + // The CA identifier of the CA certificate used for the DB instance's server + // certificate. + CAIdentifier *string `type:"string"` + + // The expiration date of the DB instance’s server certificate. + ValidTill *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CertificateDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CertificateDetails) GoString() string { + return s.String() +} + +// SetCAIdentifier sets the CAIdentifier field's value. +func (s *CertificateDetails) SetCAIdentifier(v string) *CertificateDetails { + s.CAIdentifier = &v + return s +} + +// SetValidTill sets the ValidTill field's value. +func (s *CertificateDetails) SetValidTill(v time.Time) *CertificateDetails { + s.ValidTill = &v + return s +} + // The configuration setting for the log types to be enabled for export to Amazon // CloudWatch Logs for a specific instance or cluster. // @@ -6589,6 +6636,20 @@ // Specifies whether the cluster is encrypted. StorageEncrypted *bool `type:"boolean"` + // The storage type to associate with the DB cluster. + // + // For information on storage types for Amazon DocumentDB clusters, see Cluster + // storage configurations in the Amazon DocumentDB Developer Guide. + // + // Valid values for storage type - standard | iopt1 + // + // Default value is standard + // + // When you create a DocumentDB DB cluster with the storage type set to iopt1, + // the storage type is returned in the response. The storage type isn't returned + // when you set it to standard. + StorageType *string `type:"string"` + // The tags to be assigned to the cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` @@ -6753,6 +6814,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *CreateDBClusterInput) SetStorageType(v string) *CreateDBClusterInput { + s.StorageType = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateDBClusterInput) SetTags(v []*Tag) *CreateDBClusterInput { s.Tags = v @@ -7054,6 +7121,14 @@ // Example: us-east-1d AvailabilityZone *string `type:"string"` + // The CA certificate identifier to use for the DB instance's server certificate. + // + // For more information, see Updating Your Amazon DocumentDB TLS Certificates + // (https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html) + // and Encrypting Data in Transit (https://docs.aws.amazon.com/documentdb/latest/developerguide/security.encryption.ssl.html) + // in the Amazon DocumentDB Developer Guide. + CACertificateIdentifier *string `type:"string"` + // A value that indicates whether to copy tags from the DB instance to snapshots // of the DB instance. By default, tags are not copied. CopyTagsToSnapshot *bool `type:"boolean"` @@ -7185,6 +7260,12 @@ return s } +// SetCACertificateIdentifier sets the CACertificateIdentifier field's value. +func (s *CreateDBInstanceInput) SetCACertificateIdentifier(v string) *CreateDBInstanceInput { + s.CACertificateIdentifier = &v + return s +} + // SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. func (s *CreateDBInstanceInput) SetCopyTagsToSnapshot(v bool) *CreateDBInstanceInput { s.CopyTagsToSnapshot = &v @@ -7824,6 +7905,18 @@ // Specifies whether the cluster is encrypted. StorageEncrypted *bool `type:"boolean"` + // Storage type associated with your cluster + // + // Storage type associated with your cluster + // + // For information on storage types for Amazon DocumentDB clusters, see Cluster + // storage configurations in the Amazon DocumentDB Developer Guide. + // + // Valid values for storage type - standard | iopt1 + // + // Default value is standard + StorageType *string `type:"string"` + // Provides a list of virtual private cloud (VPC) security groups that the cluster // belongs to. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` @@ -8033,6 +8126,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *DBCluster) SetStorageType(v string) *DBCluster { + s.StorageType = &v + return s +} + // SetVpcSecurityGroups sets the VpcSecurityGroups field's value. func (s *DBCluster) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *DBCluster { s.VpcSecurityGroups = v @@ -8272,6 +8371,16 @@ // Specifies whether the cluster snapshot is encrypted. StorageEncrypted *bool `type:"boolean"` + // Storage type associated with your cluster snapshot + // + // For information on storage types for Amazon DocumentDB clusters, see Cluster + // storage configurations in the Amazon DocumentDB Developer Guide. + // + // Valid values for storage type - standard | iopt1 + // + // Default value is standard + StorageType *string `type:"string"` + // Provides the virtual private cloud (VPC) ID that is associated with the cluster // snapshot. VpcId *string `type:"string"` @@ -8391,6 +8500,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *DBClusterSnapshot) SetStorageType(v string) *DBClusterSnapshot { + s.StorageType = &v + return s +} + // SetVpcId sets the VpcId field's value. func (s *DBClusterSnapshot) SetVpcId(v string) *DBClusterSnapshot { s.VpcId = &v @@ -8515,6 +8630,18 @@ // CloudWatch Logs. ExportableLogTypes []*string `type:"list"` + // A list of the supported CA certificate identifiers. + // + // For more information, see Updating Your Amazon DocumentDB TLS Certificates + // (https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html) + // and Encrypting Data in Transit (https://docs.aws.amazon.com/documentdb/latest/developerguide/security.encryption.ssl.html) + // in the Amazon DocumentDB Developer Guide. + SupportedCACertificateIdentifiers []*string `type:"list"` + + // Indicates whether the engine version supports rotating the server certificate + // without rebooting the DB instance. + SupportsCertificateRotationWithoutRestart *bool `type:"boolean"` + // A value that indicates whether the engine version supports exporting the // log types specified by ExportableLogTypes to CloudWatch Logs. SupportsLogExportsToCloudwatchLogs *bool `type:"boolean"` @@ -8578,6 +8705,18 @@ return s } +// SetSupportedCACertificateIdentifiers sets the SupportedCACertificateIdentifiers field's value. +func (s *DBEngineVersion) SetSupportedCACertificateIdentifiers(v []*string) *DBEngineVersion { + s.SupportedCACertificateIdentifiers = v + return s +} + +// SetSupportsCertificateRotationWithoutRestart sets the SupportsCertificateRotationWithoutRestart field's value. +func (s *DBEngineVersion) SetSupportsCertificateRotationWithoutRestart(v bool) *DBEngineVersion { + s.SupportsCertificateRotationWithoutRestart = &v + return s +} + // SetSupportsLogExportsToCloudwatchLogs sets the SupportsLogExportsToCloudwatchLogs field's value. func (s *DBEngineVersion) SetSupportsLogExportsToCloudwatchLogs(v bool) *DBEngineVersion { s.SupportsLogExportsToCloudwatchLogs = &v @@ -8609,6 +8748,9 @@ // The identifier of the CA certificate for this DB instance. CACertificateIdentifier *string `type:"string"` + // The details of the DB instance's server certificate. + CertificateDetails *CertificateDetails `type:"structure"` + // A value that indicates whether to copy tags from the DB instance to snapshots // of the DB instance. By default, tags are not copied. CopyTagsToSnapshot *bool `type:"boolean"` @@ -8737,6 +8879,12 @@ return s } +// SetCertificateDetails sets the CertificateDetails field's value. +func (s *DBInstance) SetCertificateDetails(v *CertificateDetails) *DBInstance { + s.CertificateDetails = v + return s +} + // SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. func (s *DBInstance) SetCopyTagsToSnapshot(v bool) *DBInstance { s.CopyTagsToSnapshot = &v @@ -12816,6 +12964,16 @@ // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` + // The storage type to associate with the DB cluster. + // + // For information on storage types for Amazon DocumentDB clusters, see Cluster + // storage configurations in the Amazon DocumentDB Developer Guide. + // + // Valid values for storage type - standard | iopt1 + // + // Default value is standard + StorageType *string `type:"string"` + // A list of virtual private cloud (VPC) security groups that the cluster will // belong to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` @@ -12930,6 +13088,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *ModifyDBClusterInput) SetStorageType(v string) *ModifyDBClusterInput { + s.StorageType = &v + return s +} + // SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. func (s *ModifyDBClusterInput) SetVpcSecurityGroupIds(v []*string) *ModifyDBClusterInput { s.VpcSecurityGroupIds = v @@ -13223,6 +13387,21 @@ // Indicates the certificate that needs to be associated with the instance. CACertificateIdentifier *string `type:"string"` + // Specifies whether the DB instance is restarted when you rotate your SSL/TLS + // certificate. + // + // By default, the DB instance is restarted when you rotate your SSL/TLS certificate. + // The certificate is not updated until the DB instance is restarted. + // + // Set this parameter only if you are not using SSL/TLS to connect to the DB + // instance. + // + // If you are using SSL/TLS to connect to the DB instance, see Updating Your + // Amazon DocumentDB TLS Certificates (https://docs.aws.amazon.com/documentdb/latest/developerguide/ca_cert_rotation.html) + // and Encrypting Data in Transit (https://docs.aws.amazon.com/documentdb/latest/developerguide/security.encryption.ssl.html) + // in the Amazon DocumentDB Developer Guide. + CertificateRotationRestart *bool `type:"boolean"` + // A value that indicates whether to copy all tags from the DB instance to snapshots // of the DB instance. By default, tags are not copied. CopyTagsToSnapshot *bool `type:"boolean"` @@ -13355,6 +13534,12 @@ return s } +// SetCertificateRotationRestart sets the CertificateRotationRestart field's value. +func (s *ModifyDBInstanceInput) SetCertificateRotationRestart(v bool) *ModifyDBInstanceInput { + s.CertificateRotationRestart = &v + return s +} + // SetCopyTagsToSnapshot sets the CopyTagsToSnapshot field's value. func (s *ModifyDBInstanceInput) SetCopyTagsToSnapshot(v bool) *ModifyDBInstanceInput { s.CopyTagsToSnapshot = &v @@ -13794,6 +13979,9 @@ // The license model for an instance. LicenseModel *string `type:"string"` + // The storage type to associate with the DB cluster + StorageType *string `type:"string"` + // Indicates whether an instance is in a virtual private cloud (VPC). Vpc *bool `type:"boolean"` } @@ -13846,6 +14034,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *OrderableDBInstanceOption) SetStorageType(v string) *OrderableDBInstanceOption { + s.StorageType = &v + return s +} + // SetVpc sets the Vpc field's value. func (s *OrderableDBInstanceOption) SetVpc(v bool) *OrderableDBInstanceOption { s.Vpc = &v @@ -14878,6 +15072,16 @@ // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` + // The storage type to associate with the DB cluster. + // + // For information on storage types for Amazon DocumentDB clusters, see Cluster + // storage configurations in the Amazon DocumentDB Developer Guide. + // + // Valid values for storage type - standard | iopt1 + // + // Default value is standard + StorageType *string `type:"string"` + // The tags to be assigned to the restored cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` @@ -14989,6 +15193,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *RestoreDBClusterFromSnapshotInput) SetStorageType(v string) *RestoreDBClusterFromSnapshotInput { + s.StorageType = &v + return s +} + // SetTags sets the Tags field's value. func (s *RestoreDBClusterFromSnapshotInput) SetTags(v []*Tag) *RestoreDBClusterFromSnapshotInput { s.Tags = v @@ -15140,6 +15350,16 @@ // SourceDBClusterIdentifier is a required field SourceDBClusterIdentifier *string `type:"string" required:"true"` + // The storage type to associate with the DB cluster. + // + // For information on storage types for Amazon DocumentDB clusters, see Cluster + // storage configurations in the Amazon DocumentDB Developer Guide. + // + // Valid values for storage type - standard | iopt1 + // + // Default value is standard + StorageType *string `type:"string"` + // The tags to be assigned to the restored cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` @@ -15243,6 +15463,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *RestoreDBClusterToPointInTimeInput) SetStorageType(v string) *RestoreDBClusterToPointInTimeInput { + s.StorageType = &v + return s +} + // SetTags sets the Tags field's value. func (s *RestoreDBClusterToPointInTimeInput) SetTags(v []*Tag) *RestoreDBClusterToPointInTimeInput { s.Tags = v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/drs/api.go golang-github-aws-aws-sdk-go-1.48.14/service/drs/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/drs/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/drs/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -5874,6 +5874,11 @@ // Launch disposition. LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"` + // DRS will set the 'launch into instance ID' of any source server when performing + // a drill, recovery or failback to the previous region or availability zone, + // using the instance ID of the source instance. + LaunchIntoSourceInstance *bool `locationName:"launchIntoSourceInstance" type:"boolean"` + // Licensing. Licensing *Licensing `locationName:"licensing" type:"structure"` @@ -5946,6 +5951,12 @@ return s } +// SetLaunchIntoSourceInstance sets the LaunchIntoSourceInstance field's value. +func (s *CreateLaunchConfigurationTemplateInput) SetLaunchIntoSourceInstance(v bool) *CreateLaunchConfigurationTemplateInput { + s.LaunchIntoSourceInstance = &v + return s +} + // SetLicensing sets the Licensing field's value. func (s *CreateLaunchConfigurationTemplateInput) SetLicensing(v *Licensing) *CreateLaunchConfigurationTemplateInput { s.Licensing = v @@ -9117,6 +9128,9 @@ // The state of the Recovery Instance in EC2 after the recovery operation. LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"` + // Launch into existing instance properties. + LaunchIntoInstanceProperties *LaunchIntoInstanceProperties `locationName:"launchIntoInstanceProperties" type:"structure"` + // The licensing configuration to be used for this launch configuration. Licensing *Licensing `locationName:"licensing" type:"structure"` @@ -9176,6 +9190,12 @@ return s } +// SetLaunchIntoInstanceProperties sets the LaunchIntoInstanceProperties field's value. +func (s *GetLaunchConfigurationOutput) SetLaunchIntoInstanceProperties(v *LaunchIntoInstanceProperties) *GetLaunchConfigurationOutput { + s.LaunchIntoInstanceProperties = v + return s +} + // SetLicensing sets the Licensing field's value. func (s *GetLaunchConfigurationOutput) SetLicensing(v *Licensing) *GetLaunchConfigurationOutput { s.Licensing = v @@ -10187,6 +10207,11 @@ // Launch disposition. LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"` + // DRS will set the 'launch into instance ID' of any source server when performing + // a drill, recovery or failback to the previous region or availability zone, + // using the instance ID of the source instance. + LaunchIntoSourceInstance *bool `locationName:"launchIntoSourceInstance" type:"boolean"` + // Licensing. Licensing *Licensing `locationName:"licensing" type:"structure"` @@ -10258,6 +10283,12 @@ return s } +// SetLaunchIntoSourceInstance sets the LaunchIntoSourceInstance field's value. +func (s *LaunchConfigurationTemplate) SetLaunchIntoSourceInstance(v bool) *LaunchConfigurationTemplate { + s.LaunchIntoSourceInstance = &v + return s +} + // SetLicensing sets the Licensing field's value. func (s *LaunchConfigurationTemplate) SetLicensing(v *Licensing) *LaunchConfigurationTemplate { s.Licensing = v @@ -10282,6 +10313,39 @@ return s } +// Launch into existing instance. +type LaunchIntoInstanceProperties struct { + _ struct{} `type:"structure"` + + // Optionally holds EC2 instance ID of an instance to launch into, instead of + // launching a new instance during drill, recovery or failback. + LaunchIntoEC2InstanceID *string `locationName:"launchIntoEC2InstanceID" 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 LaunchIntoInstanceProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchIntoInstanceProperties) GoString() string { + return s.String() +} + +// SetLaunchIntoEC2InstanceID sets the LaunchIntoEC2InstanceID field's value. +func (s *LaunchIntoInstanceProperties) SetLaunchIntoEC2InstanceID(v string) *LaunchIntoInstanceProperties { + s.LaunchIntoEC2InstanceID = &v + return s +} + // Configuration of a machine's license. type Licensing struct { _ struct{} `type:"structure"` @@ -11222,7 +11286,9 @@ Category *string `locationName:"category" type:"string" required:"true" enum:"LaunchActionCategory"` // Launch action description. - Description *string `locationName:"description" type:"string"` + // + // Description is a required field + Description *string `locationName:"description" type:"string" required:"true"` // Launch action name. // @@ -11293,6 +11359,9 @@ if s.Category == nil { invalidParams.Add(request.NewErrParamRequired("Category")) } + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -14996,6 +15065,9 @@ // The state of the Recovery Instance in EC2 after the recovery operation. LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"` + // Launch into existing instance properties. + LaunchIntoInstanceProperties *LaunchIntoInstanceProperties `locationName:"launchIntoInstanceProperties" type:"structure"` + // The licensing configuration to be used for this launch configuration. Licensing *Licensing `locationName:"licensing" type:"structure"` @@ -15068,6 +15140,12 @@ return s } +// SetLaunchIntoInstanceProperties sets the LaunchIntoInstanceProperties field's value. +func (s *UpdateLaunchConfigurationInput) SetLaunchIntoInstanceProperties(v *LaunchIntoInstanceProperties) *UpdateLaunchConfigurationInput { + s.LaunchIntoInstanceProperties = v + return s +} + // SetLicensing sets the Licensing field's value. func (s *UpdateLaunchConfigurationInput) SetLicensing(v *Licensing) *UpdateLaunchConfigurationInput { s.Licensing = v @@ -15115,6 +15193,9 @@ // The state of the Recovery Instance in EC2 after the recovery operation. LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"` + // Launch into existing instance properties. + LaunchIntoInstanceProperties *LaunchIntoInstanceProperties `locationName:"launchIntoInstanceProperties" type:"structure"` + // The licensing configuration to be used for this launch configuration. Licensing *Licensing `locationName:"licensing" type:"structure"` @@ -15174,6 +15255,12 @@ return s } +// SetLaunchIntoInstanceProperties sets the LaunchIntoInstanceProperties field's value. +func (s *UpdateLaunchConfigurationOutput) SetLaunchIntoInstanceProperties(v *LaunchIntoInstanceProperties) *UpdateLaunchConfigurationOutput { + s.LaunchIntoInstanceProperties = v + return s +} + // SetLicensing sets the Licensing field's value. func (s *UpdateLaunchConfigurationOutput) SetLicensing(v *Licensing) *UpdateLaunchConfigurationOutput { s.Licensing = v @@ -15224,6 +15311,11 @@ // Launch disposition. LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"` + // DRS will set the 'launch into instance ID' of any source server when performing + // a drill, recovery or failback to the previous region or availability zone, + // using the instance ID of the source instance. + LaunchIntoSourceInstance *bool `locationName:"launchIntoSourceInstance" type:"boolean"` + // Licensing. Licensing *Licensing `locationName:"licensing" type:"structure"` @@ -15301,6 +15393,12 @@ return s } +// SetLaunchIntoSourceInstance sets the LaunchIntoSourceInstance field's value. +func (s *UpdateLaunchConfigurationTemplateInput) SetLaunchIntoSourceInstance(v bool) *UpdateLaunchConfigurationTemplateInput { + s.LaunchIntoSourceInstance = &v + return s +} + // SetLicensing sets the Licensing field's value. func (s *UpdateLaunchConfigurationTemplateInput) SetLicensing(v *Licensing) *UpdateLaunchConfigurationTemplateInput { s.Licensing = v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/dynamodb/api.go golang-github-aws-aws-sdk-go-1.48.14/service/dynamodb/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/dynamodb/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/dynamodb/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3417,6 +3417,10 @@ // // - There is a user error, such as an invalid data format. // +// - There is an ongoing TransactWriteItems operation that conflicts with +// a concurrent TransactWriteItems request. In this case the TransactWriteItems +// operation fails with a TransactionCanceledException. +// // DynamoDB cancels a TransactGetItems request under the following circumstances: // // - There is an ongoing TransactGetItems operation that conflicts with a @@ -3991,9 +3995,10 @@ // ListBackups API operation for Amazon DynamoDB. // -// List backups associated with an Amazon Web Services account. To list backups -// for a given table, specify TableName. ListBackups returns a paginated list -// of results with at most 1 MB worth of items in a page. You can also specify +// List DynamoDB backups that are associated with an Amazon Web Services account +// and weren't made with Amazon Web Services Backup. To list these backups for +// a given table, specify TableName. ListBackups returns a paginated list of +// results with at most 1 MB worth of items in a page. You can also specify // a maximum number of entries to be returned in a page. // // In the request, start time is inclusive, but end time is exclusive. Note @@ -4001,6 +4006,9 @@ // // You can call ListBackups a maximum of five times per second. // +// If you want to retrieve the complete list of backups made with Amazon Web +// Services Backup, use the Amazon Web Services Backup list API. (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_ListBackupJobs.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. @@ -6081,6 +6089,10 @@ // // - There is a user error, such as an invalid data format. // +// - There is an ongoing TransactWriteItems operation that conflicts with +// a concurrent TransactWriteItems request. In this case the TransactWriteItems +// operation fails with a TransactionCanceledException. +// // DynamoDB cancels a TransactGetItems request under the following circumstances: // // - There is an ongoing TransactGetItems operation that conflicts with a @@ -6342,6 +6354,10 @@ // // - There is a user error, such as an invalid data format. // +// - There is an ongoing TransactWriteItems operation that conflicts with +// a concurrent TransactWriteItems request. In this case the TransactWriteItems +// operation fails with a TransactionCanceledException. +// // DynamoDB cancels a TransactGetItems request under the following circumstances: // // - There is an ongoing TransactGetItems operation that conflicts with a @@ -14214,12 +14230,18 @@ // Point in time from which table data was exported. ExportTime *time.Time `type:"timestamp"` + // The type of export that was performed. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. + ExportType *string `type:"string" enum:"ExportType"` + // Status code for the result of the failed export. FailureCode *string `type:"string"` // Export failure reason description. FailureMessage *string `type:"string"` + // Optional object containing the parameters specific to an incremental export. + IncrementalExportSpecification *IncrementalExportSpecification `type:"structure"` + // The number of items exported. ItemCount *int64 `type:"long"` @@ -14322,6 +14344,12 @@ return s } +// SetExportType sets the ExportType field's value. +func (s *ExportDescription) SetExportType(v string) *ExportDescription { + s.ExportType = &v + return s +} + // SetFailureCode sets the FailureCode field's value. func (s *ExportDescription) SetFailureCode(v string) *ExportDescription { s.FailureCode = &v @@ -14334,6 +14362,12 @@ return s } +// SetIncrementalExportSpecification sets the IncrementalExportSpecification field's value. +func (s *ExportDescription) SetIncrementalExportSpecification(v *IncrementalExportSpecification) *ExportDescription { + s.IncrementalExportSpecification = v + return s +} + // SetItemCount sets the ItemCount field's value. func (s *ExportDescription) SetItemCount(v int64) *ExportDescription { s.ItemCount = &v @@ -14462,6 +14496,9 @@ // Export can be in one of the following states: IN_PROGRESS, COMPLETED, or // FAILED. ExportStatus *string `type:"string" enum:"ExportStatus"` + + // The type of export that was performed. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. + ExportType *string `type:"string" enum:"ExportType"` } // String returns the string representation. @@ -14494,6 +14531,12 @@ return s } +// SetExportType sets the ExportType field's value. +func (s *ExportSummary) SetExportType(v string) *ExportSummary { + s.ExportType = &v + return s +} + type ExportTableToPointInTimeInput struct { _ struct{} `type:"structure"` @@ -14519,6 +14562,15 @@ // state at this point in time. ExportTime *time.Time `type:"timestamp"` + // Choice of whether to execute as a full export or incremental export. Valid + // values are FULL_EXPORT or INCREMENTAL_EXPORT. The default value is FULL_EXPORT. + // If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must + // also be used. + ExportType *string `type:"string" enum:"ExportType"` + + // Optional object containing the parameters specific to an incremental export. + IncrementalExportSpecification *IncrementalExportSpecification `type:"structure"` + // The name of the Amazon S3 bucket to export the snapshot to. // // S3Bucket is a required field @@ -14605,6 +14657,18 @@ return s } +// SetExportType sets the ExportType field's value. +func (s *ExportTableToPointInTimeInput) SetExportType(v string) *ExportTableToPointInTimeInput { + s.ExportType = &v + return s +} + +// SetIncrementalExportSpecification sets the IncrementalExportSpecification field's value. +func (s *ExportTableToPointInTimeInput) SetIncrementalExportSpecification(v *IncrementalExportSpecification) *ExportTableToPointInTimeInput { + s.IncrementalExportSpecification = v + return s +} + // SetS3Bucket sets the S3Bucket field's value. func (s *ExportTableToPointInTimeInput) SetS3Bucket(v string) *ExportTableToPointInTimeInput { s.S3Bucket = &v @@ -16522,6 +16586,62 @@ return s } +// Optional object containing the parameters specific to an incremental export. +type IncrementalExportSpecification struct { + _ struct{} `type:"structure"` + + // Time in the past which provides the inclusive start range for the export + // table's data, counted in seconds from the start of the Unix epoch. The incremental + // export will reflect the table's state including and after this point in time. + ExportFromTime *time.Time `type:"timestamp"` + + // Time in the past which provides the exclusive end range for the export table's + // data, counted in seconds from the start of the Unix epoch. The incremental + // export will reflect the table's state just prior to this point in time. If + // this is not provided, the latest time with data available will be used. + ExportToTime *time.Time `type:"timestamp"` + + // The view type that was chosen for the export. Valid values are NEW_AND_OLD_IMAGES + // and NEW_IMAGES. The default value is NEW_AND_OLD_IMAGES. + ExportViewType *string `type:"string" enum:"ExportViewType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IncrementalExportSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IncrementalExportSpecification) GoString() string { + return s.String() +} + +// SetExportFromTime sets the ExportFromTime field's value. +func (s *IncrementalExportSpecification) SetExportFromTime(v time.Time) *IncrementalExportSpecification { + s.ExportFromTime = &v + return s +} + +// SetExportToTime sets the ExportToTime field's value. +func (s *IncrementalExportSpecification) SetExportToTime(v time.Time) *IncrementalExportSpecification { + s.ExportToTime = &v + return s +} + +// SetExportViewType sets the ExportViewType field's value. +func (s *IncrementalExportSpecification) SetExportViewType(v string) *IncrementalExportSpecification { + s.ExportViewType = &v + return s +} + // The operation tried to access a nonexistent index. type IndexNotFoundException struct { _ struct{} `type:"structure"` @@ -22225,7 +22345,7 @@ // A FilterExpression is applied after the items have already been read; the // process of filtering does not consume any additional read capacity units. // - // For more information, see Filter Expressions (https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression) + // For more information, see Filter Expressions (https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Scan.html#Scan.FilterExpression) // in the Amazon DynamoDB Developer Guide. FilterExpression *string `type:"string"` @@ -24439,6 +24559,10 @@ // // - There is a user error, such as an invalid data format. // +// - There is an ongoing TransactWriteItems operation that conflicts with +// a concurrent TransactWriteItems request. In this case the TransactWriteItems +// operation fails with a TransactionCanceledException. +// // DynamoDB cancels a TransactGetItems request under the following circumstances: // // - There is an ongoing TransactGetItems operation that conflicts with a @@ -26926,6 +27050,38 @@ } } +const ( + // ExportTypeFullExport is a ExportType enum value + ExportTypeFullExport = "FULL_EXPORT" + + // ExportTypeIncrementalExport is a ExportType enum value + ExportTypeIncrementalExport = "INCREMENTAL_EXPORT" +) + +// ExportType_Values returns all elements of the ExportType enum +func ExportType_Values() []string { + return []string{ + ExportTypeFullExport, + ExportTypeIncrementalExport, + } +} + +const ( + // ExportViewTypeNewImage is a ExportViewType enum value + ExportViewTypeNewImage = "NEW_IMAGE" + + // ExportViewTypeNewAndOldImages is a ExportViewType enum value + ExportViewTypeNewAndOldImages = "NEW_AND_OLD_IMAGES" +) + +// ExportViewType_Values returns all elements of the ExportViewType enum +func ExportViewType_Values() []string { + return []string{ + ExportViewTypeNewImage, + ExportViewTypeNewAndOldImages, + } +} + const ( // GlobalTableStatusCreating is a GlobalTableStatus enum value GlobalTableStatusCreating = "CREATING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/dynamodb/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/dynamodb/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/dynamodb/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/dynamodb/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -239,6 +239,10 @@ // // * There is a user error, such as an invalid data format. // + // * There is an ongoing TransactWriteItems operation that conflicts with + // a concurrent TransactWriteItems request. In this case the TransactWriteItems + // operation fails with a TransactionCanceledException. + // // DynamoDB cancels a TransactGetItems request under the following circumstances: // // * There is an ongoing TransactGetItems operation that conflicts with a diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ec2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ec2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ec2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ec2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1720,6 +1720,86 @@ return out, req.Send() } +const opAssociateIpamByoasn = "AssociateIpamByoasn" + +// AssociateIpamByoasnRequest generates a "aws/request.Request" representing the +// client's request for the AssociateIpamByoasn 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 AssociateIpamByoasn for more information on using the AssociateIpamByoasn +// 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 AssociateIpamByoasnRequest method. +// req, resp := client.AssociateIpamByoasnRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamByoasn +func (c *EC2) AssociateIpamByoasnRequest(input *AssociateIpamByoasnInput) (req *request.Request, output *AssociateIpamByoasnOutput) { + op := &request.Operation{ + Name: opAssociateIpamByoasn, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AssociateIpamByoasnInput{} + } + + output = &AssociateIpamByoasnOutput{} + req = c.newRequest(op, input, output) + return +} + +// AssociateIpamByoasn API operation for Amazon Elastic Compute Cloud. +// +// Associates your Autonomous System Number (ASN) with a BYOIP CIDR that you +// own in the same Amazon Web Services Region. For more information, see Tutorial: +// Bring your ASN to IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html) +// in the Amazon VPC IPAM guide. +// +// After the association succeeds, the ASN is eligible for advertisement. You +// can view the association with DescribeByoipCidrs (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeByoipCidrs.html). +// You can advertise the CIDR with AdvertiseByoipCidr (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AdvertiseByoipCidr.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 Amazon Elastic Compute Cloud's +// API operation AssociateIpamByoasn for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamByoasn +func (c *EC2) AssociateIpamByoasn(input *AssociateIpamByoasnInput) (*AssociateIpamByoasnOutput, error) { + req, out := c.AssociateIpamByoasnRequest(input) + return out, req.Send() +} + +// AssociateIpamByoasnWithContext is the same as AssociateIpamByoasn with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateIpamByoasn 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 *EC2) AssociateIpamByoasnWithContext(ctx aws.Context, input *AssociateIpamByoasnInput, opts ...request.Option) (*AssociateIpamByoasnOutput, error) { + req, out := c.AssociateIpamByoasnRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAssociateIpamResourceDiscovery = "AssociateIpamResourceDiscovery" // AssociateIpamResourceDiscoveryRequest generates a "aws/request.Request" representing the @@ -1847,6 +1927,16 @@ // more information, see Elastic IP address quotas (https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-eips) // in the Amazon VPC User Guide. // +// When you associate an EIP or secondary EIPs with a public NAT gateway, the +// network border group of the EIPs must match the network border group of the +// Availability Zone (AZ) that the public NAT gateway is in. If it's not the +// same, the EIP will fail to associate. You can see the network border group +// for the subnet's AZ by viewing the details of the subnet. Similarly, you +// can view the network border group of an EIP by viewing the details of the +// EIP address. For more information about network border groups and EIPs, see +// Allocate an Elastic IP address (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip) +// in the Amazon VPC User Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2000,8 +2090,7 @@ // AssociateSubnetCidrBlock API operation for Amazon Elastic Compute Cloud. // // Associates a CIDR block with your subnet. You can only associate a single -// IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length -// of /64. +// IPv6 CIDR block with your subnet. // // 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 @@ -2300,9 +2389,6 @@ // AssociateTrunkInterface API operation for Amazon Elastic Compute Cloud. // -// This API action is currently in limited preview only. If you are interested -// in using this feature, contact your account manager. -// // Associates a branch network interface with a trunk network interface. // // Before you create the association, run the create-network-interface (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html) @@ -2385,7 +2471,6 @@ // CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from // an IPv6 address pool that you provisioned through bring your own IP addresses // (BYOIP (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html)). -// The IPv6 CIDR block size is fixed at /56. // // You must specify one of the following in the request: an IPv4 CIDR block, // an IPv6 pool, or an Amazon-provided IPv6 CIDR block. @@ -3044,6 +3129,11 @@ // // For information about VPC security group quotas, see Amazon VPC quotas (https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html). // +// If you want to reference a security group across VPCs attached to a transit +// gateway using the security group referencing feature (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw), +// note that you can only reference security groups for ingress rules. You cannot +// reference a security group for egress rules. +// // 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. @@ -7003,6 +7093,16 @@ // For more information, see NAT gateways (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) // in the Amazon VPC User Guide. // +// When you create a public NAT gateway and assign it an EIP or secondary EIPs, +// the network border group of the EIPs must match the network border group +// of the Availability Zone (AZ) that the public NAT gateway is in. If it's +// not the same, the NAT gateway will fail to launch. You can see the network +// border group for the subnet's AZ by viewing the details of the subnet. Similarly, +// you can view the network border group of an EIP by viewing the details of +// the EIP address. For more information about network border groups and EIPs, +// see Allocate an Elastic IP address (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip) +// in the Amazon VPC User Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -8601,8 +8701,7 @@ // not available for your use. // // If you've associated an IPv6 CIDR block with your VPC, you can associate -// an IPv6 CIDR block with a subnet when you create it. The allowed block size -// for an IPv6 subnet is a /64 netmask. +// an IPv6 CIDR block with a subnet when you create it. // // If you add more than one subnet to a VPC, they're set up in a star topology // with a logical router in the middle. @@ -10422,8 +10521,8 @@ // in the Amazon VPC User Guide. // // You can optionally request an IPv6 CIDR block for the VPC. You can request -// an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, -// or an IPv6 CIDR block from an IPv6 address pool that you provisioned through +// an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses or +// an IPv6 CIDR block from an IPv6 address pool that you provisioned through // bring your own IP addresses (BYOIP (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html)). // // By default, each instance that you launch in the VPC has the default DHCP @@ -16054,7 +16153,9 @@ // that are associated with the VPC before you can delete it. For example, you // must terminate all instances running in the VPC, delete all security groups // associated with the VPC (except the default one), delete all route tables -// associated with the VPC (except the default one), and so on. +// associated with the VPC (except the default one), and so on. When you delete +// the VPC, it deletes the VPC's default security group, network ACL, and route +// table. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -16362,7 +16463,7 @@ // the owner of the accepter VPC can delete the VPC peering connection if it's // in the active state. The owner of the requester VPC can delete a VPC peering // connection in the pending-acceptance state. You cannot delete a VPC peering -// connection that's in the failed state. +// connection that's in the failed or rejected state. // // 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 @@ -16712,6 +16813,84 @@ return out, req.Send() } +const opDeprovisionIpamByoasn = "DeprovisionIpamByoasn" + +// DeprovisionIpamByoasnRequest generates a "aws/request.Request" representing the +// client's request for the DeprovisionIpamByoasn 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 DeprovisionIpamByoasn for more information on using the DeprovisionIpamByoasn +// 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 DeprovisionIpamByoasnRequest method. +// req, resp := client.DeprovisionIpamByoasnRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamByoasn +func (c *EC2) DeprovisionIpamByoasnRequest(input *DeprovisionIpamByoasnInput) (req *request.Request, output *DeprovisionIpamByoasnOutput) { + op := &request.Operation{ + Name: opDeprovisionIpamByoasn, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeprovisionIpamByoasnInput{} + } + + output = &DeprovisionIpamByoasnOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeprovisionIpamByoasn API operation for Amazon Elastic Compute Cloud. +// +// Deprovisions your Autonomous System Number (ASN) from your Amazon Web Services +// account. This action can only be called after any BYOIP CIDR associations +// are removed from your Amazon Web Services account with DisassociateIpamByoasn +// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIpamByoasn.html). +// For more information, see Tutorial: Bring your ASN to IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html) +// in the Amazon VPC IPAM guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DeprovisionIpamByoasn for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamByoasn +func (c *EC2) DeprovisionIpamByoasn(input *DeprovisionIpamByoasnInput) (*DeprovisionIpamByoasnOutput, error) { + req, out := c.DeprovisionIpamByoasnRequest(input) + return out, req.Send() +} + +// DeprovisionIpamByoasnWithContext is the same as DeprovisionIpamByoasn with the addition of +// the ability to pass a context and additional request options. +// +// See DeprovisionIpamByoasn 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 *EC2) DeprovisionIpamByoasnWithContext(ctx aws.Context, input *DeprovisionIpamByoasnInput, opts ...request.Option) (*DeprovisionIpamByoasnOutput, error) { + req, out := c.DeprovisionIpamByoasnRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeprovisionIpamPoolCidr = "DeprovisionIpamPoolCidr" // DeprovisionIpamPoolCidrRequest generates a "aws/request.Request" representing the @@ -18116,6 +18295,137 @@ return p.Err() } +const opDescribeCapacityBlockOfferings = "DescribeCapacityBlockOfferings" + +// DescribeCapacityBlockOfferingsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeCapacityBlockOfferings 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 DescribeCapacityBlockOfferings for more information on using the DescribeCapacityBlockOfferings +// 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 DescribeCapacityBlockOfferingsRequest method. +// req, resp := client.DescribeCapacityBlockOfferingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityBlockOfferings +func (c *EC2) DescribeCapacityBlockOfferingsRequest(input *DescribeCapacityBlockOfferingsInput) (req *request.Request, output *DescribeCapacityBlockOfferingsOutput) { + op := &request.Operation{ + Name: opDescribeCapacityBlockOfferings, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeCapacityBlockOfferingsInput{} + } + + output = &DescribeCapacityBlockOfferingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeCapacityBlockOfferings API operation for Amazon Elastic Compute Cloud. +// +// Describes Capacity Block offerings available for purchase. With Capacity +// Blocks, you purchase a specific instance type for a period of time. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DescribeCapacityBlockOfferings for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityBlockOfferings +func (c *EC2) DescribeCapacityBlockOfferings(input *DescribeCapacityBlockOfferingsInput) (*DescribeCapacityBlockOfferingsOutput, error) { + req, out := c.DescribeCapacityBlockOfferingsRequest(input) + return out, req.Send() +} + +// DescribeCapacityBlockOfferingsWithContext is the same as DescribeCapacityBlockOfferings with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeCapacityBlockOfferings 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 *EC2) DescribeCapacityBlockOfferingsWithContext(ctx aws.Context, input *DescribeCapacityBlockOfferingsInput, opts ...request.Option) (*DescribeCapacityBlockOfferingsOutput, error) { + req, out := c.DescribeCapacityBlockOfferingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeCapacityBlockOfferingsPages iterates over the pages of a DescribeCapacityBlockOfferings operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeCapacityBlockOfferings 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 DescribeCapacityBlockOfferings operation. +// pageNum := 0 +// err := client.DescribeCapacityBlockOfferingsPages(params, +// func(page *ec2.DescribeCapacityBlockOfferingsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EC2) DescribeCapacityBlockOfferingsPages(input *DescribeCapacityBlockOfferingsInput, fn func(*DescribeCapacityBlockOfferingsOutput, bool) bool) error { + return c.DescribeCapacityBlockOfferingsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeCapacityBlockOfferingsPagesWithContext same as DescribeCapacityBlockOfferingsPages 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 *EC2) DescribeCapacityBlockOfferingsPagesWithContext(ctx aws.Context, input *DescribeCapacityBlockOfferingsInput, fn func(*DescribeCapacityBlockOfferingsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeCapacityBlockOfferingsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeCapacityBlockOfferingsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeCapacityBlockOfferingsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeCapacityReservationFleets = "DescribeCapacityReservationFleets" // DescribeCapacityReservationFleetsRequest generates a "aws/request.Request" representing the @@ -20169,7 +20479,7 @@ // DescribeFastLaunchImages API operation for Amazon Elastic Compute Cloud. // -// Describe details for Windows AMIs that are configured for faster launching. +// Describe details for Windows AMIs that are configured for Windows fast launch. // // 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 @@ -22922,6 +23232,151 @@ return p.Err() } +const opDescribeInstanceTopology = "DescribeInstanceTopology" + +// DescribeInstanceTopologyRequest generates a "aws/request.Request" representing the +// client's request for the DescribeInstanceTopology 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 DescribeInstanceTopology for more information on using the DescribeInstanceTopology +// 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 DescribeInstanceTopologyRequest method. +// req, resp := client.DescribeInstanceTopologyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTopology +func (c *EC2) DescribeInstanceTopologyRequest(input *DescribeInstanceTopologyInput) (req *request.Request, output *DescribeInstanceTopologyOutput) { + op := &request.Operation{ + Name: opDescribeInstanceTopology, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeInstanceTopologyInput{} + } + + output = &DescribeInstanceTopologyOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeInstanceTopology API operation for Amazon Elastic Compute Cloud. +// +// Describes a tree-based hierarchy that represents the physical host placement +// of your EC2 instances within an Availability Zone or Local Zone. You can +// use this information to determine the relative proximity of your EC2 instances +// within the Amazon Web Services network to support your tightly coupled workloads. +// +// Limitations +// +// - Supported zones Availability Zone Local Zone +// +// - Supported instance types hpc6a.48xlarge | hpc6id.32xlarge | hpc7a.12xlarge +// | hpc7a.24xlarge | hpc7a.48xlarge | hpc7a.96xlarge | hpc7g.4xlarge | hpc7g.8xlarge +// | hpc7g.16xlarge p3dn.24xlarge | p4d.24xlarge | p4de.24xlarge | p5.48xlarge +// trn1.2xlarge | trn1.32xlarge | trn1n.32xlarge +// +// For more information, see Amazon EC2 instance topology (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-topology.html) +// in the Amazon EC2 User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DescribeInstanceTopology for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTopology +func (c *EC2) DescribeInstanceTopology(input *DescribeInstanceTopologyInput) (*DescribeInstanceTopologyOutput, error) { + req, out := c.DescribeInstanceTopologyRequest(input) + return out, req.Send() +} + +// DescribeInstanceTopologyWithContext is the same as DescribeInstanceTopology with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeInstanceTopology 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 *EC2) DescribeInstanceTopologyWithContext(ctx aws.Context, input *DescribeInstanceTopologyInput, opts ...request.Option) (*DescribeInstanceTopologyOutput, error) { + req, out := c.DescribeInstanceTopologyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeInstanceTopologyPages iterates over the pages of a DescribeInstanceTopology operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeInstanceTopology 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 DescribeInstanceTopology operation. +// pageNum := 0 +// err := client.DescribeInstanceTopologyPages(params, +// func(page *ec2.DescribeInstanceTopologyOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EC2) DescribeInstanceTopologyPages(input *DescribeInstanceTopologyInput, fn func(*DescribeInstanceTopologyOutput, bool) bool) error { + return c.DescribeInstanceTopologyPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeInstanceTopologyPagesWithContext same as DescribeInstanceTopologyPages 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 *EC2) DescribeInstanceTopologyPagesWithContext(ctx aws.Context, input *DescribeInstanceTopologyInput, fn func(*DescribeInstanceTopologyOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeInstanceTopologyInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeInstanceTopologyRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeInstanceTopologyOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeInstanceTypeOfferings = "DescribeInstanceTypeOfferings" // DescribeInstanceTypeOfferingsRequest generates a "aws/request.Request" representing the @@ -23464,6 +23919,82 @@ return p.Err() } +const opDescribeIpamByoasn = "DescribeIpamByoasn" + +// DescribeIpamByoasnRequest generates a "aws/request.Request" representing the +// client's request for the DescribeIpamByoasn 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 DescribeIpamByoasn for more information on using the DescribeIpamByoasn +// 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 DescribeIpamByoasnRequest method. +// req, resp := client.DescribeIpamByoasnRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamByoasn +func (c *EC2) DescribeIpamByoasnRequest(input *DescribeIpamByoasnInput) (req *request.Request, output *DescribeIpamByoasnOutput) { + op := &request.Operation{ + Name: opDescribeIpamByoasn, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeIpamByoasnInput{} + } + + output = &DescribeIpamByoasnOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeIpamByoasn API operation for Amazon Elastic Compute Cloud. +// +// Describes your Autonomous System Numbers (ASNs), their provisioning statuses, +// and the BYOIP CIDRs with which they are associated. For more information, +// see Tutorial: Bring your ASN to IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html) +// in the Amazon VPC IPAM guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DescribeIpamByoasn for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamByoasn +func (c *EC2) DescribeIpamByoasn(input *DescribeIpamByoasnInput) (*DescribeIpamByoasnOutput, error) { + req, out := c.DescribeIpamByoasnRequest(input) + return out, req.Send() +} + +// DescribeIpamByoasnWithContext is the same as DescribeIpamByoasn with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeIpamByoasn 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 *EC2) DescribeIpamByoasnWithContext(ctx aws.Context, input *DescribeIpamByoasnInput, opts ...request.Option) (*DescribeIpamByoasnOutput, error) { + req, out := c.DescribeIpamByoasnRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeIpamPools = "DescribeIpamPools" // DescribeIpamPoolsRequest generates a "aws/request.Request" representing the @@ -25374,6 +25905,79 @@ return p.Err() } +const opDescribeLockedSnapshots = "DescribeLockedSnapshots" + +// DescribeLockedSnapshotsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeLockedSnapshots 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 DescribeLockedSnapshots for more information on using the DescribeLockedSnapshots +// 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 DescribeLockedSnapshotsRequest method. +// req, resp := client.DescribeLockedSnapshotsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLockedSnapshots +func (c *EC2) DescribeLockedSnapshotsRequest(input *DescribeLockedSnapshotsInput) (req *request.Request, output *DescribeLockedSnapshotsOutput) { + op := &request.Operation{ + Name: opDescribeLockedSnapshots, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeLockedSnapshotsInput{} + } + + output = &DescribeLockedSnapshotsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeLockedSnapshots API operation for Amazon Elastic Compute Cloud. +// +// Describes the lock status for 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 Amazon Elastic Compute Cloud's +// API operation DescribeLockedSnapshots for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLockedSnapshots +func (c *EC2) DescribeLockedSnapshots(input *DescribeLockedSnapshotsInput) (*DescribeLockedSnapshotsOutput, error) { + req, out := c.DescribeLockedSnapshotsRequest(input) + return out, req.Send() +} + +// DescribeLockedSnapshotsWithContext is the same as DescribeLockedSnapshots with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeLockedSnapshots 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 *EC2) DescribeLockedSnapshotsWithContext(ctx aws.Context, input *DescribeLockedSnapshotsInput, opts ...request.Option) (*DescribeLockedSnapshotsOutput, error) { + req, out := c.DescribeLockedSnapshotsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeManagedPrefixLists = "DescribeManagedPrefixLists" // DescribeManagedPrefixListsRequest generates a "aws/request.Request" representing the @@ -26679,6 +27283,10 @@ // // Describes one or more of your network interfaces. // +// If you have a large number of network interfaces, the operation fails unless +// you use pagination or one of the following filters: group-id, mac-address, +// private-dns-name, private-ip-address, private-dns-name, subnet-id, or vpc-id. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -28349,8 +28957,9 @@ // DescribeSecurityGroupReferences API operation for Amazon Elastic Compute Cloud. // -// Describes the VPCs on the other side of a VPC peering connection that are -// referencing the security groups you've specified in this request. +// Describes the VPCs on the other side of a VPC peering connection or the VPCs +// attached to a transit gateway that are referencing the security groups you've +// specified in this request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -29720,8 +30329,12 @@ // // Describes the stale security group rules for security groups in a specified // VPC. Rules are stale when they reference a deleted security group in the -// same VPC or in a peer VPC, or if they reference a security group in a peer -// VPC for which the VPC peering connection has been deleted. +// same VPC, peered VPC, or in separate VPCs attached to a transit gateway (with +// security group referencing support (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw) +// enabled). Rules can also be stale if they reference a security group in a +// peer VPC for which the VPC peering connection has been deleted or if they +// reference a security group in a VPC that has been detached from a transit +// gateway. // // 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 @@ -31960,9 +32573,6 @@ // DescribeTrunkInterfaceAssociations API operation for Amazon Elastic Compute Cloud. // -// This API action is currently in limited preview only. If you are interested -// in using this feature, contact your account manager. -// // Describes one or more network interface trunk associations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -35385,12 +35995,13 @@ // DisableFastLaunch API operation for Amazon Elastic Compute Cloud. // -// Discontinue faster launching for a Windows AMI, and clean up existing pre-provisioned -// snapshots. When you disable faster launching, the AMI uses the standard launch -// process for each instance. All pre-provisioned snapshots must be removed -// before you can enable faster launching again. +// Discontinue Windows fast launch for a Windows AMI, and clean up existing +// pre-provisioned snapshots. After you disable Windows fast launch, the AMI +// uses the standard launch process for each new instance. Amazon EC2 must remove +// all pre-provisioned snapshots before you can enable Windows fast launch again. // -// To change these settings, you must own the AMI. +// You can only change these settings for Windows AMIs that you own or that +// have been shared with you. // // 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 @@ -35494,6 +36105,94 @@ return out, req.Send() } +const opDisableImage = "DisableImage" + +// DisableImageRequest generates a "aws/request.Request" representing the +// client's request for the DisableImage 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 DisableImage for more information on using the DisableImage +// 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 DisableImageRequest method. +// req, resp := client.DisableImageRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImage +func (c *EC2) DisableImageRequest(input *DisableImageInput) (req *request.Request, output *DisableImageOutput) { + op := &request.Operation{ + Name: opDisableImage, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisableImageInput{} + } + + output = &DisableImageOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisableImage API operation for Amazon Elastic Compute Cloud. +// +// Sets the AMI state to disabled and removes all launch permissions from the +// AMI. A disabled AMI can't be used for instance launches. +// +// A disabled AMI can't be shared. If an AMI was public or previously shared, +// it is made private. If an AMI was shared with an Amazon Web Services account, +// organization, or Organizational Unit, they lose access to the disabled AMI. +// +// A disabled AMI does not appear in DescribeImages (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html) +// API calls by default. +// +// Only the AMI owner can disable an AMI. +// +// You can re-enable a disabled AMI using EnableImage (http://amazonaws.com/AWSEC2/latest/APIReference/API_EnableImage.html). +// +// For more information, see Disable an AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/disable-an-ami.html) +// in the Amazon EC2 User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DisableImage for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImage +func (c *EC2) DisableImage(input *DisableImageInput) (*DisableImageOutput, error) { + req, out := c.DisableImageRequest(input) + return out, req.Send() +} + +// DisableImageWithContext is the same as DisableImage with the addition of +// the ability to pass a context and additional request options. +// +// See DisableImage 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 *EC2) DisableImageWithContext(ctx aws.Context, input *DisableImageInput, opts ...request.Option) (*DisableImageOutput, error) { + req, out := c.DisableImageRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisableImageBlockPublicAccess = "DisableImageBlockPublicAccess" // DisableImageBlockPublicAccessRequest generates a "aws/request.Request" representing the @@ -35806,6 +36505,89 @@ return out, req.Send() } +const opDisableSnapshotBlockPublicAccess = "DisableSnapshotBlockPublicAccess" + +// DisableSnapshotBlockPublicAccessRequest generates a "aws/request.Request" representing the +// client's request for the DisableSnapshotBlockPublicAccess 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 DisableSnapshotBlockPublicAccess for more information on using the DisableSnapshotBlockPublicAccess +// 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 DisableSnapshotBlockPublicAccessRequest method. +// req, resp := client.DisableSnapshotBlockPublicAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSnapshotBlockPublicAccess +func (c *EC2) DisableSnapshotBlockPublicAccessRequest(input *DisableSnapshotBlockPublicAccessInput) (req *request.Request, output *DisableSnapshotBlockPublicAccessOutput) { + op := &request.Operation{ + Name: opDisableSnapshotBlockPublicAccess, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisableSnapshotBlockPublicAccessInput{} + } + + output = &DisableSnapshotBlockPublicAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisableSnapshotBlockPublicAccess API operation for Amazon Elastic Compute Cloud. +// +// Disables the block public access for snapshots setting at the account level +// for the specified Amazon Web Services Region. After you disable block public +// access for snapshots in a Region, users can publicly share snapshots in that +// Region. +// +// If block public access is enabled in block-all-sharing mode, and you disable +// block public access, all snapshots that were previously publicly shared are +// no longer treated as private and they become publicly accessible again. +// +// For more information, see Block public access for snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-public-access-snapshots.html) +// in the Amazon Elastic Compute Cloud User Guide . +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DisableSnapshotBlockPublicAccess for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSnapshotBlockPublicAccess +func (c *EC2) DisableSnapshotBlockPublicAccess(input *DisableSnapshotBlockPublicAccessInput) (*DisableSnapshotBlockPublicAccessOutput, error) { + req, out := c.DisableSnapshotBlockPublicAccessRequest(input) + return out, req.Send() +} + +// DisableSnapshotBlockPublicAccessWithContext is the same as DisableSnapshotBlockPublicAccess with the addition of +// the ability to pass a context and additional request options. +// +// See DisableSnapshotBlockPublicAccess 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 *EC2) DisableSnapshotBlockPublicAccessWithContext(ctx aws.Context, input *DisableSnapshotBlockPublicAccessInput, opts ...request.Option) (*DisableSnapshotBlockPublicAccessOutput, error) { + req, out := c.DisableSnapshotBlockPublicAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisableTransitGatewayRouteTablePropagation = "DisableTransitGatewayRouteTablePropagation" // DisableTransitGatewayRouteTablePropagationRequest generates a "aws/request.Request" representing the @@ -36500,6 +37282,83 @@ return out, req.Send() } +const opDisassociateIpamByoasn = "DisassociateIpamByoasn" + +// DisassociateIpamByoasnRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateIpamByoasn 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 DisassociateIpamByoasn for more information on using the DisassociateIpamByoasn +// 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 DisassociateIpamByoasnRequest method. +// req, resp := client.DisassociateIpamByoasnRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamByoasn +func (c *EC2) DisassociateIpamByoasnRequest(input *DisassociateIpamByoasnInput) (req *request.Request, output *DisassociateIpamByoasnOutput) { + op := &request.Operation{ + Name: opDisassociateIpamByoasn, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisassociateIpamByoasnInput{} + } + + output = &DisassociateIpamByoasnOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisassociateIpamByoasn API operation for Amazon Elastic Compute Cloud. +// +// Remove the association between your Autonomous System Number (ASN) and your +// BYOIP CIDR. You may want to use this action to disassociate an ASN from a +// CIDR or if you want to swap ASNs. For more information, see Tutorial: Bring +// your ASN to IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html) +// in the Amazon VPC IPAM guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation DisassociateIpamByoasn for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamByoasn +func (c *EC2) DisassociateIpamByoasn(input *DisassociateIpamByoasnInput) (*DisassociateIpamByoasnOutput, error) { + req, out := c.DisassociateIpamByoasnRequest(input) + return out, req.Send() +} + +// DisassociateIpamByoasnWithContext is the same as DisassociateIpamByoasn with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateIpamByoasn 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 *EC2) DisassociateIpamByoasnWithContext(ctx aws.Context, input *DisassociateIpamByoasnInput, opts ...request.Option) (*DisassociateIpamByoasnOutput, error) { + req, out := c.DisassociateIpamByoasnRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisassociateIpamResourceDiscovery = "DisassociateIpamResourceDiscovery" // DisassociateIpamResourceDiscoveryRequest generates a "aws/request.Request" representing the @@ -37077,9 +37936,6 @@ // DisassociateTrunkInterface API operation for Amazon Elastic Compute Cloud. // -// This API action is currently in limited preview only. If you are interested -// in using this feature, contact your account manager. -// // Removes an association between a branch network interface with a trunk network // interface. // @@ -37470,14 +38326,15 @@ // EnableFastLaunch API operation for Amazon Elastic Compute Cloud. // -// When you enable faster launching for a Windows AMI, images are pre-provisioned, +// When you enable Windows fast launch for a Windows AMI, images are pre-provisioned, // using snapshots to launch instances up to 65% faster. To create the optimized // Windows image, Amazon EC2 launches an instance and runs through Sysprep steps, // rebooting as required. Then it creates a set of reserved snapshots that are // used for subsequent launches. The reserved snapshots are automatically replenished // as they are used, depending on your settings for launch frequency. // -// To change these settings, you must own the AMI. +// You can only change these settings for Windows AMIs that you own or that +// have been shared with you. // // 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 @@ -37588,6 +38445,88 @@ return out, req.Send() } +const opEnableImage = "EnableImage" + +// EnableImageRequest generates a "aws/request.Request" representing the +// client's request for the EnableImage 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 EnableImage for more information on using the EnableImage +// 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 EnableImageRequest method. +// req, resp := client.EnableImageRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImage +func (c *EC2) EnableImageRequest(input *EnableImageInput) (req *request.Request, output *EnableImageOutput) { + op := &request.Operation{ + Name: opEnableImage, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &EnableImageInput{} + } + + output = &EnableImageOutput{} + req = c.newRequest(op, input, output) + return +} + +// EnableImage API operation for Amazon Elastic Compute Cloud. +// +// Re-enables a disabled AMI. The re-enabled AMI is marked as available and +// can be used for instance launches, appears in describe operations, and can +// be shared. Amazon Web Services accounts, organizations, and Organizational +// Units that lost access to the AMI when it was disabled do not regain access +// automatically. Once the AMI is available, it can be shared with them again. +// +// Only the AMI owner can re-enable a disabled AMI. +// +// For more information, see Disable an AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/disable-an-ami.html) +// in the Amazon EC2 User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation EnableImage for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImage +func (c *EC2) EnableImage(input *EnableImageInput) (*EnableImageOutput, error) { + req, out := c.EnableImageRequest(input) + return out, req.Send() +} + +// EnableImageWithContext is the same as EnableImage with the addition of +// the ability to pass a context and additional request options. +// +// See EnableImage 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 *EC2) EnableImageWithContext(ctx aws.Context, input *EnableImageInput, opts ...request.Option) (*EnableImageOutput, error) { + req, out := c.EnableImageRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opEnableImageBlockPublicAccess = "EnableImageBlockPublicAccess" // EnableImageBlockPublicAccessRequest generates a "aws/request.Request" representing the @@ -37978,6 +38917,92 @@ return out, req.Send() } +const opEnableSnapshotBlockPublicAccess = "EnableSnapshotBlockPublicAccess" + +// EnableSnapshotBlockPublicAccessRequest generates a "aws/request.Request" representing the +// client's request for the EnableSnapshotBlockPublicAccess 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 EnableSnapshotBlockPublicAccess for more information on using the EnableSnapshotBlockPublicAccess +// 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 EnableSnapshotBlockPublicAccessRequest method. +// req, resp := client.EnableSnapshotBlockPublicAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSnapshotBlockPublicAccess +func (c *EC2) EnableSnapshotBlockPublicAccessRequest(input *EnableSnapshotBlockPublicAccessInput) (req *request.Request, output *EnableSnapshotBlockPublicAccessOutput) { + op := &request.Operation{ + Name: opEnableSnapshotBlockPublicAccess, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &EnableSnapshotBlockPublicAccessInput{} + } + + output = &EnableSnapshotBlockPublicAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// EnableSnapshotBlockPublicAccess API operation for Amazon Elastic Compute Cloud. +// +// Enables or modifies the block public access for snapshots setting at the +// account level for the specified Amazon Web Services Region. After you enable +// block public access for snapshots in a Region, users can no longer request +// public sharing for snapshots in that Region. Snapshots that are already publicly +// shared are either treated as private or they remain publicly shared, depending +// on the State that you specify. +// +// If block public access is enabled in block-all-sharing mode, and you change +// the mode to block-new-sharing, all snapshots that were previously publicly +// shared are no longer treated as private and they become publicly accessible +// again. +// +// For more information, see Block public access for snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-public-access-snapshots.html) +// in the Amazon Elastic Compute Cloud User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation EnableSnapshotBlockPublicAccess for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSnapshotBlockPublicAccess +func (c *EC2) EnableSnapshotBlockPublicAccess(input *EnableSnapshotBlockPublicAccessInput) (*EnableSnapshotBlockPublicAccessOutput, error) { + req, out := c.EnableSnapshotBlockPublicAccessRequest(input) + return out, req.Send() +} + +// EnableSnapshotBlockPublicAccessWithContext is the same as EnableSnapshotBlockPublicAccess with the addition of +// the ability to pass a context and additional request options. +// +// See EnableSnapshotBlockPublicAccess 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 *EC2) EnableSnapshotBlockPublicAccessWithContext(ctx aws.Context, input *EnableSnapshotBlockPublicAccessInput, opts ...request.Option) (*EnableSnapshotBlockPublicAccessOutput, error) { + req, out := c.EnableSnapshotBlockPublicAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opEnableTransitGatewayRouteTablePropagation = "EnableTransitGatewayRouteTablePropagation" // EnableTransitGatewayRouteTablePropagationRequest generates a "aws/request.Request" representing the @@ -40422,6 +41447,79 @@ return p.Err() } +const opGetIpamDiscoveredPublicAddresses = "GetIpamDiscoveredPublicAddresses" + +// GetIpamDiscoveredPublicAddressesRequest generates a "aws/request.Request" representing the +// client's request for the GetIpamDiscoveredPublicAddresses 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 GetIpamDiscoveredPublicAddresses for more information on using the GetIpamDiscoveredPublicAddresses +// 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 GetIpamDiscoveredPublicAddressesRequest method. +// req, resp := client.GetIpamDiscoveredPublicAddressesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredPublicAddresses +func (c *EC2) GetIpamDiscoveredPublicAddressesRequest(input *GetIpamDiscoveredPublicAddressesInput) (req *request.Request, output *GetIpamDiscoveredPublicAddressesOutput) { + op := &request.Operation{ + Name: opGetIpamDiscoveredPublicAddresses, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetIpamDiscoveredPublicAddressesInput{} + } + + output = &GetIpamDiscoveredPublicAddressesOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetIpamDiscoveredPublicAddresses API operation for Amazon Elastic Compute Cloud. +// +// Gets the public IP addresses that have been discovered by IPAM. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation GetIpamDiscoveredPublicAddresses for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredPublicAddresses +func (c *EC2) GetIpamDiscoveredPublicAddresses(input *GetIpamDiscoveredPublicAddressesInput) (*GetIpamDiscoveredPublicAddressesOutput, error) { + req, out := c.GetIpamDiscoveredPublicAddressesRequest(input) + return out, req.Send() +} + +// GetIpamDiscoveredPublicAddressesWithContext is the same as GetIpamDiscoveredPublicAddresses with the addition of +// the ability to pass a context and additional request options. +// +// See GetIpamDiscoveredPublicAddresses 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 *EC2) GetIpamDiscoveredPublicAddressesWithContext(ctx aws.Context, input *GetIpamDiscoveredPublicAddressesInput, opts ...request.Option) (*GetIpamDiscoveredPublicAddressesOutput, error) { + req, out := c.GetIpamDiscoveredPublicAddressesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetIpamDiscoveredResourceCidrs = "GetIpamDiscoveredResourceCidrs" // GetIpamDiscoveredResourceCidrsRequest generates a "aws/request.Request" representing the @@ -41666,6 +42764,137 @@ return out, req.Send() } +const opGetSecurityGroupsForVpc = "GetSecurityGroupsForVpc" + +// GetSecurityGroupsForVpcRequest generates a "aws/request.Request" representing the +// client's request for the GetSecurityGroupsForVpc 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 GetSecurityGroupsForVpc for more information on using the GetSecurityGroupsForVpc +// 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 GetSecurityGroupsForVpcRequest method. +// req, resp := client.GetSecurityGroupsForVpcRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSecurityGroupsForVpc +func (c *EC2) GetSecurityGroupsForVpcRequest(input *GetSecurityGroupsForVpcInput) (req *request.Request, output *GetSecurityGroupsForVpcOutput) { + op := &request.Operation{ + Name: opGetSecurityGroupsForVpc, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetSecurityGroupsForVpcInput{} + } + + output = &GetSecurityGroupsForVpcOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSecurityGroupsForVpc API operation for Amazon Elastic Compute Cloud. +// +// Gets security groups that can be associated by the Amazon Web Services account +// making the request with network interfaces in the specified VPC. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation GetSecurityGroupsForVpc for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSecurityGroupsForVpc +func (c *EC2) GetSecurityGroupsForVpc(input *GetSecurityGroupsForVpcInput) (*GetSecurityGroupsForVpcOutput, error) { + req, out := c.GetSecurityGroupsForVpcRequest(input) + return out, req.Send() +} + +// GetSecurityGroupsForVpcWithContext is the same as GetSecurityGroupsForVpc with the addition of +// the ability to pass a context and additional request options. +// +// See GetSecurityGroupsForVpc 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 *EC2) GetSecurityGroupsForVpcWithContext(ctx aws.Context, input *GetSecurityGroupsForVpcInput, opts ...request.Option) (*GetSecurityGroupsForVpcOutput, error) { + req, out := c.GetSecurityGroupsForVpcRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetSecurityGroupsForVpcPages iterates over the pages of a GetSecurityGroupsForVpc operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetSecurityGroupsForVpc 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 GetSecurityGroupsForVpc operation. +// pageNum := 0 +// err := client.GetSecurityGroupsForVpcPages(params, +// func(page *ec2.GetSecurityGroupsForVpcOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EC2) GetSecurityGroupsForVpcPages(input *GetSecurityGroupsForVpcInput, fn func(*GetSecurityGroupsForVpcOutput, bool) bool) error { + return c.GetSecurityGroupsForVpcPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetSecurityGroupsForVpcPagesWithContext same as GetSecurityGroupsForVpcPages 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 *EC2) GetSecurityGroupsForVpcPagesWithContext(ctx aws.Context, input *GetSecurityGroupsForVpcInput, fn func(*GetSecurityGroupsForVpcOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetSecurityGroupsForVpcInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetSecurityGroupsForVpcRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetSecurityGroupsForVpcOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opGetSerialConsoleAccessStatus = "GetSerialConsoleAccessStatus" // GetSerialConsoleAccessStatusRequest generates a "aws/request.Request" representing the @@ -41743,6 +42972,83 @@ return out, req.Send() } +const opGetSnapshotBlockPublicAccessState = "GetSnapshotBlockPublicAccessState" + +// GetSnapshotBlockPublicAccessStateRequest generates a "aws/request.Request" representing the +// client's request for the GetSnapshotBlockPublicAccessState 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 GetSnapshotBlockPublicAccessState for more information on using the GetSnapshotBlockPublicAccessState +// 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 GetSnapshotBlockPublicAccessStateRequest method. +// req, resp := client.GetSnapshotBlockPublicAccessStateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSnapshotBlockPublicAccessState +func (c *EC2) GetSnapshotBlockPublicAccessStateRequest(input *GetSnapshotBlockPublicAccessStateInput) (req *request.Request, output *GetSnapshotBlockPublicAccessStateOutput) { + op := &request.Operation{ + Name: opGetSnapshotBlockPublicAccessState, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetSnapshotBlockPublicAccessStateInput{} + } + + output = &GetSnapshotBlockPublicAccessStateOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSnapshotBlockPublicAccessState API operation for Amazon Elastic Compute Cloud. +// +// Gets the current state of block public access for snapshots setting for the +// account and Region. +// +// For more information, see Block public access for snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-public-access-snapshots.html) +// in the Amazon Elastic Compute Cloud User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation GetSnapshotBlockPublicAccessState for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSnapshotBlockPublicAccessState +func (c *EC2) GetSnapshotBlockPublicAccessState(input *GetSnapshotBlockPublicAccessStateInput) (*GetSnapshotBlockPublicAccessStateOutput, error) { + req, out := c.GetSnapshotBlockPublicAccessStateRequest(input) + return out, req.Send() +} + +// GetSnapshotBlockPublicAccessStateWithContext is the same as GetSnapshotBlockPublicAccessState with the addition of +// the ability to pass a context and additional request options. +// +// See GetSnapshotBlockPublicAccessState 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 *EC2) GetSnapshotBlockPublicAccessStateWithContext(ctx aws.Context, input *GetSnapshotBlockPublicAccessStateInput, opts ...request.Option) (*GetSnapshotBlockPublicAccessStateOutput, error) { + req, out := c.GetSnapshotBlockPublicAccessStateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetSpotPlacementScores = "GetSpotPlacementScores" // GetSpotPlacementScoresRequest generates a "aws/request.Request" representing the @@ -43999,6 +45305,96 @@ return p.Err() } +const opLockSnapshot = "LockSnapshot" + +// LockSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the LockSnapshot 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 LockSnapshot for more information on using the LockSnapshot +// 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 LockSnapshotRequest method. +// req, resp := client.LockSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LockSnapshot +func (c *EC2) LockSnapshotRequest(input *LockSnapshotInput) (req *request.Request, output *LockSnapshotOutput) { + op := &request.Operation{ + Name: opLockSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &LockSnapshotInput{} + } + + output = &LockSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// LockSnapshot API operation for Amazon Elastic Compute Cloud. +// +// Locks an Amazon EBS snapshot in either governance or compliance mode to protect +// it against accidental or malicious deletions for a specific duration. A locked +// snapshot can't be deleted. +// +// You can also use this action to modify the lock settings for a snapshot that +// is already locked. The allowed modifications depend on the lock mode and +// lock state: +// +// - If the snapshot is locked in governance mode, you can modify the lock +// mode and the lock duration or lock expiration date. +// +// - If the snapshot is locked in compliance mode and it is in the cooling-off +// period, you can modify the lock mode and the lock duration or lock expiration +// date. +// +// - If the snapshot is locked in compliance mode and the cooling-off period +// has lapsed, you can only increase the lock duration or extend the lock +// expiration date. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation LockSnapshot for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LockSnapshot +func (c *EC2) LockSnapshot(input *LockSnapshotInput) (*LockSnapshotOutput, error) { + req, out := c.LockSnapshotRequest(input) + return out, req.Send() +} + +// LockSnapshotWithContext is the same as LockSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See LockSnapshot 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 *EC2) LockSnapshotWithContext(ctx aws.Context, input *LockSnapshotInput, opts ...request.Option) (*LockSnapshotOutput, error) { + req, out := c.LockSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opModifyAddressAttribute = "ModifyAddressAttribute" // ModifyAddressAttributeRequest generates a "aws/request.Request" representing the @@ -49439,6 +50835,83 @@ return out, req.Send() } +const opProvisionIpamByoasn = "ProvisionIpamByoasn" + +// ProvisionIpamByoasnRequest generates a "aws/request.Request" representing the +// client's request for the ProvisionIpamByoasn 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 ProvisionIpamByoasn for more information on using the ProvisionIpamByoasn +// 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 ProvisionIpamByoasnRequest method. +// req, resp := client.ProvisionIpamByoasnRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamByoasn +func (c *EC2) ProvisionIpamByoasnRequest(input *ProvisionIpamByoasnInput) (req *request.Request, output *ProvisionIpamByoasnOutput) { + op := &request.Operation{ + Name: opProvisionIpamByoasn, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ProvisionIpamByoasnInput{} + } + + output = &ProvisionIpamByoasnOutput{} + req = c.newRequest(op, input, output) + return +} + +// ProvisionIpamByoasn API operation for Amazon Elastic Compute Cloud. +// +// Provisions your Autonomous System Number (ASN) for use in your Amazon Web +// Services account. This action requires authorization context for Amazon to +// bring the ASN to an Amazon Web Services account. For more information, see +// Tutorial: Bring your ASN to IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html) +// in the Amazon VPC IPAM guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation ProvisionIpamByoasn for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamByoasn +func (c *EC2) ProvisionIpamByoasn(input *ProvisionIpamByoasnInput) (*ProvisionIpamByoasnOutput, error) { + req, out := c.ProvisionIpamByoasnRequest(input) + return out, req.Send() +} + +// ProvisionIpamByoasnWithContext is the same as ProvisionIpamByoasn with the addition of +// the ability to pass a context and additional request options. +// +// See ProvisionIpamByoasn 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 *EC2) ProvisionIpamByoasnWithContext(ctx aws.Context, input *ProvisionIpamByoasnInput, opts ...request.Option) (*ProvisionIpamByoasnOutput, error) { + req, out := c.ProvisionIpamByoasnRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opProvisionIpamPoolCidr = "ProvisionIpamPoolCidr" // ProvisionIpamPoolCidrRequest generates a "aws/request.Request" representing the @@ -49593,6 +51066,81 @@ return out, req.Send() } +const opPurchaseCapacityBlock = "PurchaseCapacityBlock" + +// PurchaseCapacityBlockRequest generates a "aws/request.Request" representing the +// client's request for the PurchaseCapacityBlock 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 PurchaseCapacityBlock for more information on using the PurchaseCapacityBlock +// 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 PurchaseCapacityBlockRequest method. +// req, resp := client.PurchaseCapacityBlockRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseCapacityBlock +func (c *EC2) PurchaseCapacityBlockRequest(input *PurchaseCapacityBlockInput) (req *request.Request, output *PurchaseCapacityBlockOutput) { + op := &request.Operation{ + Name: opPurchaseCapacityBlock, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PurchaseCapacityBlockInput{} + } + + output = &PurchaseCapacityBlockOutput{} + req = c.newRequest(op, input, output) + return +} + +// PurchaseCapacityBlock API operation for Amazon Elastic Compute Cloud. +// +// Purchase the Capacity Block for use with your account. With Capacity Blocks +// you ensure GPU capacity is available for machine learning (ML) workloads. +// You must specify the ID of the Capacity Block offering you are purchasing. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation PurchaseCapacityBlock for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseCapacityBlock +func (c *EC2) PurchaseCapacityBlock(input *PurchaseCapacityBlockInput) (*PurchaseCapacityBlockOutput, error) { + req, out := c.PurchaseCapacityBlockRequest(input) + return out, req.Send() +} + +// PurchaseCapacityBlockWithContext is the same as PurchaseCapacityBlock with the addition of +// the ability to pass a context and additional request options. +// +// See PurchaseCapacityBlock 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 *EC2) PurchaseCapacityBlockWithContext(ctx aws.Context, input *PurchaseCapacityBlockInput, opts ...request.Option) (*PurchaseCapacityBlockOutput, error) { + req, out := c.PurchaseCapacityBlockRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPurchaseHostReservation = "PurchaseHostReservation" // PurchaseHostReservationRequest generates a "aws/request.Request" representing the @@ -52862,6 +54410,10 @@ // values, no error is returned, and the output describes the security group // rules that were not revoked. // +// For a non-default VPC, if the values you specify do not match the existing +// rule's values, an InvalidPermission.NotFound client error is returned, and +// no rules are revoked. +// // Amazon Web Services recommends that you describe the security group to verify // that the rules were removed. // @@ -54396,6 +55948,81 @@ return out, req.Send() } +const opUnlockSnapshot = "UnlockSnapshot" + +// UnlockSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the UnlockSnapshot 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 UnlockSnapshot for more information on using the UnlockSnapshot +// 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 UnlockSnapshotRequest method. +// req, resp := client.UnlockSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnlockSnapshot +func (c *EC2) UnlockSnapshotRequest(input *UnlockSnapshotInput) (req *request.Request, output *UnlockSnapshotOutput) { + op := &request.Operation{ + Name: opUnlockSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UnlockSnapshotInput{} + } + + output = &UnlockSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// UnlockSnapshot API operation for Amazon Elastic Compute Cloud. +// +// Unlocks a snapshot that is locked in governance mode or that is locked in +// compliance mode but still in the cooling-off period. You can't unlock a snapshot +// that is locked in compliance mode after the cooling-off period has expired. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Compute Cloud's +// API operation UnlockSnapshot for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnlockSnapshot +func (c *EC2) UnlockSnapshot(input *UnlockSnapshotInput) (*UnlockSnapshotOutput, error) { + req, out := c.UnlockSnapshotRequest(input) + return out, req.Send() +} + +// UnlockSnapshotWithContext is the same as UnlockSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See UnlockSnapshot 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 *EC2) UnlockSnapshotWithContext(ctx aws.Context, input *UnlockSnapshotInput, opts ...request.Option) (*UnlockSnapshotOutput, error) { + req, out := c.UnlockSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUnmonitorInstances = "UnmonitorInstances" // UnmonitorInstancesRequest generates a "aws/request.Request" representing the @@ -56394,6 +58021,9 @@ type AdvertiseByoipCidrInput struct { _ struct{} `type:"structure"` + // The public 2-byte or 4-byte ASN that you want to advertise. + Asn *string `type:"string"` + // The address range, in CIDR notation. This must be the exact range that you // provisioned. You can't advertise only a portion of the provisioned range. // @@ -56438,6 +58068,12 @@ return nil } +// SetAsn sets the Asn field's value. +func (s *AdvertiseByoipCidrInput) SetAsn(v string) *AdvertiseByoipCidrInput { + s.Asn = &v + return s +} + // SetCidr sets the Cidr field's value. func (s *AdvertiseByoipCidrInput) SetCidr(v string) *AdvertiseByoipCidrInput { s.Cidr = &v @@ -56508,9 +58144,6 @@ // // Use DescribeAvailabilityZones (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html) // to view the network border groups. - // - // You cannot use a network border group with EC2 Classic. If you attempt this - // operation on EC2 Classic, you receive an InvalidParameterCombination error. NetworkBorderGroup *string `type:"string"` // The ID of an address pool that you own. Use this parameter to let Amazon @@ -56895,6 +58528,10 @@ type AllocateIpamPoolCidrInput struct { _ struct{} `type:"structure"` + // Include a particular CIDR range that can be returned by the pool. Allowed + // CIDRs are only allowed if using netmask length for allocation. + AllowedCidrs []*string `locationName:"AllowedCidr" locationNameList:"item" type:"list"` + // The CIDR you would like to allocate from the IPAM pool. Note the following: // // * If there is no DefaultNetmaskLength allocation rule set on the pool, @@ -56978,6 +58615,12 @@ return nil } +// SetAllowedCidrs sets the AllowedCidrs field's value. +func (s *AllocateIpamPoolCidrInput) SetAllowedCidrs(v []*string) *AllocateIpamPoolCidrInput { + s.AllowedCidrs = v + return s +} + // SetCidr sets the Cidr field's value. func (s *AllocateIpamPoolCidrInput) SetCidr(v string) *AllocateIpamPoolCidrInput { s.Cidr = &v @@ -57822,6 +59465,130 @@ return s } +// An Autonomous System Number (ASN) and BYOIP CIDR association. +type AsnAssociation struct { + _ struct{} `type:"structure"` + + // The association's ASN. + Asn *string `locationName:"asn" type:"string"` + + // The association's CIDR. + Cidr *string `locationName:"cidr" type:"string"` + + // The association's state. + State *string `locationName:"state" type:"string" enum:"AsnAssociationState"` + + // The association's status message. + StatusMessage *string `locationName:"statusMessage" 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 AsnAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AsnAssociation) GoString() string { + return s.String() +} + +// SetAsn sets the Asn field's value. +func (s *AsnAssociation) SetAsn(v string) *AsnAssociation { + s.Asn = &v + return s +} + +// SetCidr sets the Cidr field's value. +func (s *AsnAssociation) SetCidr(v string) *AsnAssociation { + s.Cidr = &v + return s +} + +// SetState sets the State field's value. +func (s *AsnAssociation) SetState(v string) *AsnAssociation { + s.State = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *AsnAssociation) SetStatusMessage(v string) *AsnAssociation { + s.StatusMessage = &v + return s +} + +// Provides authorization for Amazon to bring an Autonomous System Number (ASN) +// to a specific Amazon Web Services account using bring your own ASN (BYOASN). +// For details on the format of the message and signature, see Tutorial: Bring +// your ASN to IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html) +// in the Amazon VPC IPAM guide. +type AsnAuthorizationContext struct { + _ struct{} `type:"structure"` + + // The authorization context's message. + // + // Message is a required field + Message *string `type:"string" required:"true"` + + // The authorization context's signature. + // + // Signature is a required field + Signature *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AsnAuthorizationContext) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AsnAuthorizationContext) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AsnAuthorizationContext) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AsnAuthorizationContext"} + if s.Message == nil { + invalidParams.Add(request.NewErrParamRequired("Message")) + } + if s.Signature == nil { + invalidParams.Add(request.NewErrParamRequired("Signature")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMessage sets the Message field's value. +func (s *AsnAuthorizationContext) SetMessage(v string) *AsnAuthorizationContext { + s.Message = &v + return s +} + +// SetSignature sets the Signature field's value. +func (s *AsnAuthorizationContext) SetSignature(v string) *AsnAuthorizationContext { + s.Signature = &v + return s +} + type AssignIpv6AddressesInput struct { _ struct{} `type:"structure"` @@ -58928,6 +60695,109 @@ return s } +type AssociateIpamByoasnInput struct { + _ struct{} `type:"structure"` + + // A public 2-byte or 4-byte ASN. + // + // Asn is a required field + Asn *string `type:"string" required:"true"` + + // The BYOIP CIDR you want to associate with an ASN. + // + // Cidr is a required field + Cidr *string `type:"string" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *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 AssociateIpamByoasnInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateIpamByoasnInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateIpamByoasnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateIpamByoasnInput"} + if s.Asn == nil { + invalidParams.Add(request.NewErrParamRequired("Asn")) + } + if s.Cidr == nil { + invalidParams.Add(request.NewErrParamRequired("Cidr")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAsn sets the Asn field's value. +func (s *AssociateIpamByoasnInput) SetAsn(v string) *AssociateIpamByoasnInput { + s.Asn = &v + return s +} + +// SetCidr sets the Cidr field's value. +func (s *AssociateIpamByoasnInput) SetCidr(v string) *AssociateIpamByoasnInput { + s.Cidr = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *AssociateIpamByoasnInput) SetDryRun(v bool) *AssociateIpamByoasnInput { + s.DryRun = &v + return s +} + +type AssociateIpamByoasnOutput struct { + _ struct{} `type:"structure"` + + // The ASN and BYOIP CIDR association. + AsnAssociation *AsnAssociation `locationName:"asnAssociation" 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 AssociateIpamByoasnOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateIpamByoasnOutput) GoString() string { + return s.String() +} + +// SetAsnAssociation sets the AsnAssociation field's value. +func (s *AssociateIpamByoasnOutput) SetAsnAssociation(v *AsnAssociation) *AssociateIpamByoasnOutput { + s.AsnAssociation = v + return s +} + type AssociateIpamResourceDiscoveryInput struct { _ struct{} `type:"structure"` @@ -59291,10 +61161,14 @@ type AssociateSubnetCidrBlockInput struct { _ struct{} `type:"structure"` - // The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix length. - // - // Ipv6CidrBlock is a required field - Ipv6CidrBlock *string `locationName:"ipv6CidrBlock" type:"string" required:"true"` + // The IPv6 CIDR block for your subnet. + Ipv6CidrBlock *string `locationName:"ipv6CidrBlock" type:"string"` + + // An IPv6 IPAM pool ID. + Ipv6IpamPoolId *string `type:"string"` + + // An IPv6 netmask length. + Ipv6NetmaskLength *int64 `type:"integer"` // The ID of your subnet. // @@ -59323,9 +61197,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateSubnetCidrBlockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateSubnetCidrBlockInput"} - if s.Ipv6CidrBlock == nil { - invalidParams.Add(request.NewErrParamRequired("Ipv6CidrBlock")) - } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } @@ -59342,6 +61213,18 @@ return s } +// SetIpv6IpamPoolId sets the Ipv6IpamPoolId field's value. +func (s *AssociateSubnetCidrBlockInput) SetIpv6IpamPoolId(v string) *AssociateSubnetCidrBlockInput { + s.Ipv6IpamPoolId = &v + return s +} + +// SetIpv6NetmaskLength sets the Ipv6NetmaskLength field's value. +func (s *AssociateSubnetCidrBlockInput) SetIpv6NetmaskLength(v int64) *AssociateSubnetCidrBlockInput { + s.Ipv6NetmaskLength = &v + return s +} + // SetSubnetId sets the SubnetId field's value. func (s *AssociateSubnetCidrBlockInput) SetSubnetId(v string) *AssociateSubnetCidrBlockInput { s.SubnetId = &v @@ -59860,7 +61743,7 @@ _ struct{} `type:"structure"` // Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for - // the VPC. You cannot specify the range of IPv6 addresses, or the size of the + // the VPC. You cannot specify the range of IPv6 addresses or the size of the // CIDR block. AmazonProvidedIpv6CidrBlock *bool `locationName:"amazonProvidedIpv6CidrBlock" type:"boolean"` @@ -60722,10 +62605,10 @@ type AttachVerifiedAccessTrustProviderOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access instance. + // Details about the Verified Access instance. VerifiedAccessInstance *VerifiedAccessInstance `locationName:"verifiedAccessInstance" type:"structure"` - // The ID of the Verified Access trust provider. + // Details about the Verified Access trust provider. VerifiedAccessTrustProvider *VerifiedAccessTrustProvider `locationName:"verifiedAccessTrustProvider" type:"structure"` } @@ -60951,16 +62834,25 @@ return s } -// Describes the ENA Express configuration for the network interface that's -// attached to the instance. +// ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology +// to increase the maximum bandwidth used per stream and minimize tail latency +// of network traffic between EC2 instances. With ENA Express, you can communicate +// between two EC2 instances in the same subnet within the same account, or +// in different accounts. Both sending and receiving instances must have ENA +// Express enabled. +// +// To improve the reliability of network packet delivery, ENA Express reorders +// network packets on the receiving end by default. However, some UDP-based +// applications are designed to handle network packets that are out of order +// to reduce the overhead for packet delivery at the network layer. When ENA +// Express is enabled, you can specify whether UDP network traffic uses it. type AttachmentEnaSrdSpecification struct { _ struct{} `type:"structure"` - // Indicates whether ENA Express is enabled for the network interface that's - // attached to the instance. + // Indicates whether ENA Express is enabled for the network interface. EnaSrdEnabled *bool `locationName:"enaSrdEnabled" type:"boolean"` - // ENA Express configuration for UDP network traffic. + // Configures ENA Express for UDP network traffic. EnaSrdUdpSpecification *AttachmentEnaSrdUdpSpecification `locationName:"enaSrdUdpSpecification" type:"structure"` } @@ -60994,8 +62886,12 @@ return s } -// Describes the ENA Express configuration for UDP traffic on the network interface -// that's attached to the instance. +// ENA Express is compatible with both TCP and UDP transport protocols. When +// it's enabled, TCP traffic automatically uses it. However, some UDP-based +// applications are designed to handle network packets that are out of order, +// without a need for retransmission, such as live video broadcasting or other +// near-real-time applications. For UDP traffic, you can specify whether to +// use ENA Express, based on your application environment needs. type AttachmentEnaSrdUdpSpecification struct { _ struct{} `type:"structure"` @@ -62349,11 +64245,73 @@ return s } +// The Autonomous System Number (ASN) and BYOIP CIDR association. +type Byoasn struct { + _ struct{} `type:"structure"` + + // A public 2-byte or 4-byte ASN. + Asn *string `locationName:"asn" type:"string"` + + // An IPAM ID. + IpamId *string `locationName:"ipamId" type:"string"` + + // The provisioning state of the BYOASN. + State *string `locationName:"state" type:"string" enum:"AsnState"` + + // The status message. + StatusMessage *string `locationName:"statusMessage" 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 Byoasn) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Byoasn) GoString() string { + return s.String() +} + +// SetAsn sets the Asn field's value. +func (s *Byoasn) SetAsn(v string) *Byoasn { + s.Asn = &v + return s +} + +// SetIpamId sets the IpamId field's value. +func (s *Byoasn) SetIpamId(v string) *Byoasn { + s.IpamId = &v + return s +} + +// SetState sets the State field's value. +func (s *Byoasn) SetState(v string) *Byoasn { + s.State = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *Byoasn) SetStatusMessage(v string) *Byoasn { + s.StatusMessage = &v + return s +} + // Information about an address range that is provisioned for use with your // Amazon Web Services resources through bring your own IP addresses (BYOIP). type ByoipCidr struct { _ struct{} `type:"structure"` + // The BYOIP CIDR associations with ASNs. + AsnAssociations []*AsnAssociation `locationName:"asnAssociationSet" locationNameList:"item" type:"list"` + // The address range, in CIDR notation. Cidr *string `locationName:"cidr" type:"string"` @@ -62386,6 +64344,12 @@ return s.String() } +// SetAsnAssociations sets the AsnAssociations field's value. +func (s *ByoipCidr) SetAsnAssociations(v []*AsnAssociation) *ByoipCidr { + s.AsnAssociations = v + return s +} + // SetCidr sets the Cidr field's value. func (s *ByoipCidr) SetCidr(v string) *ByoipCidr { s.Cidr = &v @@ -62822,7 +64786,8 @@ type CancelExportTaskInput struct { _ struct{} `type:"structure"` - // The ID of the export task. This is the ID returned by CreateInstanceExportTask. + // The ID of the export task. This is the ID returned by the CreateInstanceExportTask + // and ExportImage operations. // // ExportTaskId is a required field ExportTaskId *string `locationName:"exportTaskId" type:"string" required:"true"` @@ -63582,6 +65547,119 @@ return s } +// The recommended Capacity Block that fits your search requirements. +type CapacityBlockOffering struct { + _ struct{} `type:"structure"` + + // The Availability Zone of the Capacity Block offering. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The amount of time of the Capacity Block reservation in hours. + CapacityBlockDurationHours *int64 `locationName:"capacityBlockDurationHours" type:"integer"` + + // The ID of the Capacity Block offering. + CapacityBlockOfferingId *string `locationName:"capacityBlockOfferingId" type:"string"` + + // The currency of the payment for the Capacity Block. + CurrencyCode *string `locationName:"currencyCode" type:"string"` + + // The end date of the Capacity Block offering. + EndDate *time.Time `locationName:"endDate" type:"timestamp"` + + // The number of instances in the Capacity Block offering. + InstanceCount *int64 `locationName:"instanceCount" type:"integer"` + + // The instance type of the Capacity Block offering. + InstanceType *string `locationName:"instanceType" type:"string"` + + // The start date of the Capacity Block offering. + StartDate *time.Time `locationName:"startDate" type:"timestamp"` + + // The tenancy of the Capacity Block. + Tenancy *string `locationName:"tenancy" type:"string" enum:"CapacityReservationTenancy"` + + // The total price to be paid up front. + UpfrontFee *string `locationName:"upfrontFee" 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 CapacityBlockOffering) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CapacityBlockOffering) GoString() string { + return s.String() +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CapacityBlockOffering) SetAvailabilityZone(v string) *CapacityBlockOffering { + s.AvailabilityZone = &v + return s +} + +// SetCapacityBlockDurationHours sets the CapacityBlockDurationHours field's value. +func (s *CapacityBlockOffering) SetCapacityBlockDurationHours(v int64) *CapacityBlockOffering { + s.CapacityBlockDurationHours = &v + return s +} + +// SetCapacityBlockOfferingId sets the CapacityBlockOfferingId field's value. +func (s *CapacityBlockOffering) SetCapacityBlockOfferingId(v string) *CapacityBlockOffering { + s.CapacityBlockOfferingId = &v + return s +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *CapacityBlockOffering) SetCurrencyCode(v string) *CapacityBlockOffering { + s.CurrencyCode = &v + return s +} + +// SetEndDate sets the EndDate field's value. +func (s *CapacityBlockOffering) SetEndDate(v time.Time) *CapacityBlockOffering { + s.EndDate = &v + return s +} + +// SetInstanceCount sets the InstanceCount field's value. +func (s *CapacityBlockOffering) SetInstanceCount(v int64) *CapacityBlockOffering { + s.InstanceCount = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *CapacityBlockOffering) SetInstanceType(v string) *CapacityBlockOffering { + s.InstanceType = &v + return s +} + +// SetStartDate sets the StartDate field's value. +func (s *CapacityBlockOffering) SetStartDate(v time.Time) *CapacityBlockOffering { + s.StartDate = &v + return s +} + +// SetTenancy sets the Tenancy field's value. +func (s *CapacityBlockOffering) SetTenancy(v string) *CapacityBlockOffering { + s.Tenancy = &v + return s +} + +// SetUpfrontFee sets the UpfrontFee field's value. +func (s *CapacityBlockOffering) SetUpfrontFee(v string) *CapacityBlockOffering { + s.UpfrontFee = &v + return s +} + // Describes a Capacity Reservation. type CapacityReservation struct { _ struct{} `type:"structure"` @@ -63673,6 +65751,9 @@ // in the Amazon EC2 User Guide. PlacementGroupArn *string `locationName:"placementGroupArn" type:"string"` + // The type of Capacity Reservation. + ReservationType *string `locationName:"reservationType" type:"string" enum:"CapacityReservationType"` + // The date and time at which the Capacity Reservation was started. StartDate *time.Time `locationName:"startDate" type:"timestamp"` @@ -63841,6 +65922,12 @@ return s } +// SetReservationType sets the ReservationType field's value. +func (s *CapacityReservation) SetReservationType(v string) *CapacityReservation { + s.ReservationType = &v + return s +} + // SetStartDate sets the StartDate field's value. func (s *CapacityReservation) SetStartDate(v time.Time) *CapacityReservation { s.StartDate = &v @@ -66566,6 +68653,242 @@ return s } +// A security group connection tracking configuration that enables you to set +// the idle timeout for connection tracking on an Elastic network interface. +// For more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) +// in the Amazon Elastic Compute Cloud User Guide. +type ConnectionTrackingConfiguration struct { + _ struct{} `type:"structure"` + + // Timeout (in seconds) for idle TCP connections in an established state. Min: + // 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: + // Less than 432000 seconds. + TcpEstablishedTimeout *int64 `locationName:"tcpEstablishedTimeout" type:"integer"` + + // Timeout (in seconds) for idle UDP flows classified as streams which have + // seen more than one request-response transaction. Min: 60 seconds. Max: 180 + // seconds (3 minutes). Default: 180 seconds. + UdpStreamTimeout *int64 `locationName:"udpStreamTimeout" type:"integer"` + + // Timeout (in seconds) for idle UDP flows that have seen traffic only in a + // single direction or a single request-response transaction. Min: 30 seconds. + // Max: 60 seconds. Default: 30 seconds. + UdpTimeout *int64 `locationName:"udpTimeout" 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 ConnectionTrackingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectionTrackingConfiguration) GoString() string { + return s.String() +} + +// SetTcpEstablishedTimeout sets the TcpEstablishedTimeout field's value. +func (s *ConnectionTrackingConfiguration) SetTcpEstablishedTimeout(v int64) *ConnectionTrackingConfiguration { + s.TcpEstablishedTimeout = &v + return s +} + +// SetUdpStreamTimeout sets the UdpStreamTimeout field's value. +func (s *ConnectionTrackingConfiguration) SetUdpStreamTimeout(v int64) *ConnectionTrackingConfiguration { + s.UdpStreamTimeout = &v + return s +} + +// SetUdpTimeout sets the UdpTimeout field's value. +func (s *ConnectionTrackingConfiguration) SetUdpTimeout(v int64) *ConnectionTrackingConfiguration { + s.UdpTimeout = &v + return s +} + +// A security group connection tracking specification that enables you to set +// the idle timeout for connection tracking on an Elastic network interface. +// For more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) +// in the Amazon Elastic Compute Cloud User Guide. +type ConnectionTrackingSpecification struct { + _ struct{} `type:"structure"` + + // Timeout (in seconds) for idle TCP connections in an established state. Min: + // 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: + // Less than 432000 seconds. + TcpEstablishedTimeout *int64 `locationName:"tcpEstablishedTimeout" type:"integer"` + + // Timeout (in seconds) for idle UDP flows classified as streams which have + // seen more than one request-response transaction. Min: 60 seconds. Max: 180 + // seconds (3 minutes). Default: 180 seconds. + UdpStreamTimeout *int64 `locationName:"udpStreamTimeout" type:"integer"` + + // Timeout (in seconds) for idle UDP flows that have seen traffic only in a + // single direction or a single request-response transaction. Min: 30 seconds. + // Max: 60 seconds. Default: 30 seconds. + UdpTimeout *int64 `locationName:"udpTimeout" 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 ConnectionTrackingSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectionTrackingSpecification) GoString() string { + return s.String() +} + +// SetTcpEstablishedTimeout sets the TcpEstablishedTimeout field's value. +func (s *ConnectionTrackingSpecification) SetTcpEstablishedTimeout(v int64) *ConnectionTrackingSpecification { + s.TcpEstablishedTimeout = &v + return s +} + +// SetUdpStreamTimeout sets the UdpStreamTimeout field's value. +func (s *ConnectionTrackingSpecification) SetUdpStreamTimeout(v int64) *ConnectionTrackingSpecification { + s.UdpStreamTimeout = &v + return s +} + +// SetUdpTimeout sets the UdpTimeout field's value. +func (s *ConnectionTrackingSpecification) SetUdpTimeout(v int64) *ConnectionTrackingSpecification { + s.UdpTimeout = &v + return s +} + +// A security group connection tracking specification request that enables you +// to set the idle timeout for connection tracking on an Elastic network interface. +// For more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) +// in the Amazon Elastic Compute Cloud User Guide. +type ConnectionTrackingSpecificationRequest struct { + _ struct{} `type:"structure"` + + // Timeout (in seconds) for idle TCP connections in an established state. Min: + // 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: + // Less than 432000 seconds. + TcpEstablishedTimeout *int64 `type:"integer"` + + // Timeout (in seconds) for idle UDP flows classified as streams which have + // seen more than one request-response transaction. Min: 60 seconds. Max: 180 + // seconds (3 minutes). Default: 180 seconds. + UdpStreamTimeout *int64 `type:"integer"` + + // Timeout (in seconds) for idle UDP flows that have seen traffic only in a + // single direction or a single request-response transaction. Min: 30 seconds. + // Max: 60 seconds. Default: 30 seconds. + UdpTimeout *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 ConnectionTrackingSpecificationRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectionTrackingSpecificationRequest) GoString() string { + return s.String() +} + +// SetTcpEstablishedTimeout sets the TcpEstablishedTimeout field's value. +func (s *ConnectionTrackingSpecificationRequest) SetTcpEstablishedTimeout(v int64) *ConnectionTrackingSpecificationRequest { + s.TcpEstablishedTimeout = &v + return s +} + +// SetUdpStreamTimeout sets the UdpStreamTimeout field's value. +func (s *ConnectionTrackingSpecificationRequest) SetUdpStreamTimeout(v int64) *ConnectionTrackingSpecificationRequest { + s.UdpStreamTimeout = &v + return s +} + +// SetUdpTimeout sets the UdpTimeout field's value. +func (s *ConnectionTrackingSpecificationRequest) SetUdpTimeout(v int64) *ConnectionTrackingSpecificationRequest { + s.UdpTimeout = &v + return s +} + +// A security group connection tracking specification response that enables +// you to set the idle timeout for connection tracking on an Elastic network +// interface. For more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) +// in the Amazon Elastic Compute Cloud User Guide. +type ConnectionTrackingSpecificationResponse struct { + _ struct{} `type:"structure"` + + // Timeout (in seconds) for idle TCP connections in an established state. Min: + // 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: + // Less than 432000 seconds. + TcpEstablishedTimeout *int64 `locationName:"tcpEstablishedTimeout" type:"integer"` + + // Timeout (in seconds) for idle UDP flows classified as streams which have + // seen more than one request-response transaction. Min: 60 seconds. Max: 180 + // seconds (3 minutes). Default: 180 seconds. + UdpStreamTimeout *int64 `locationName:"udpStreamTimeout" type:"integer"` + + // Timeout (in seconds) for idle UDP flows that have seen traffic only in a + // single direction or a single request-response transaction. Min: 30 seconds. + // Max: 60 seconds. Default: 30 seconds. + UdpTimeout *int64 `locationName:"udpTimeout" 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 ConnectionTrackingSpecificationResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectionTrackingSpecificationResponse) GoString() string { + return s.String() +} + +// SetTcpEstablishedTimeout sets the TcpEstablishedTimeout field's value. +func (s *ConnectionTrackingSpecificationResponse) SetTcpEstablishedTimeout(v int64) *ConnectionTrackingSpecificationResponse { + s.TcpEstablishedTimeout = &v + return s +} + +// SetUdpStreamTimeout sets the UdpStreamTimeout field's value. +func (s *ConnectionTrackingSpecificationResponse) SetUdpStreamTimeout(v int64) *ConnectionTrackingSpecificationResponse { + s.UdpStreamTimeout = &v + return s +} + +// SetUdpTimeout sets the UdpTimeout field's value. +func (s *ConnectionTrackingSpecificationResponse) SetUdpTimeout(v int64) *ConnectionTrackingSpecificationResponse { + s.UdpTimeout = &v + return s +} + // Describes a conversion task. type ConversionTask struct { _ struct{} `type:"structure"` @@ -69312,7 +71635,7 @@ SpotOptions *SpotOptionsRequest `type:"structure"` // The key-value pair for tagging the EC2 Fleet request on creation. For more - // information, see Tagging your resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources). + // information, see Tag your resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources). // // If the fleet type is instant, specify a resource type of fleet to tag the // fleet or instance to tag the instances at launch. @@ -70030,9 +72353,22 @@ type CreateImageInput struct { _ struct{} `type:"structure"` - // The block device mappings. This parameter cannot be used to modify the encryption - // status of existing volumes or snapshots. To create an AMI with encrypted - // snapshots, use the CopyImage action. + // The block device mappings. + // + // When using the CreateImage action: + // + // * You can't change the volume size using the VolumeSize parameter. If + // you want a different volume size, you must first change the volume size + // of the source instance. + // + // * You can't modify the encryption status of existing volumes or snapshots. + // To create an AMI with volumes or snapshots that have a different encryption + // status (for example, where the source volume and snapshots are unencrypted, + // and you want to create an AMI with encrypted volumes or snapshots), use + // the CopyImage action. + // + // * The only option that can be changed for existing mappings or snapshots + // is DeleteOnTermination. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"BlockDeviceMapping" type:"list"` // A description for the new image. @@ -70694,6 +73030,11 @@ // to find all resources that have a tag with the key Owner and the value TeamA, // specify tag:Owner for the filter name and TeamA for the filter value. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + + // IPAM is offered in a Free Tier and an Advanced Tier. For more information + // about the features available in each tier and the costs associated with the + // tiers, see Amazon VPC pricing > IPAM tab (http://aws.amazon.com/vpc/pricing/). + Tier *string `type:"string" enum:"IpamTier"` } // String returns the string representation. @@ -70744,6 +73085,12 @@ return s } +// SetTier sets the Tier field's value. +func (s *CreateIpamInput) SetTier(v string) *CreateIpamInput { + s.Tier = &v + return s +} + type CreateIpamOutput struct { _ struct{} `type:"structure"` @@ -70873,6 +73220,9 @@ // pool must be available in the source pool's CIDR range. SourceIpamPoolId *string `type:"string"` + // The resource used to provision CIDRs to a resource planning pool. + SourceResource *IpamPoolSourceResourceRequest `type:"structure"` + // The key/value combination of a tag assigned to the resource. Use the tag // key in the filter name and the tag value as the filter value. For example, // to find all resources that have a tag with the key Owner and the value TeamA, @@ -71004,6 +73354,12 @@ return s } +// SetSourceResource sets the SourceResource field's value. +func (s *CreateIpamPoolInput) SetSourceResource(v *IpamPoolSourceResourceRequest) *CreateIpamPoolInput { + s.SourceResource = v + return s +} + // SetTagSpecifications sets the TagSpecifications field's value. func (s *CreateIpamPoolInput) SetTagSpecifications(v []*TagSpecification) *CreateIpamPoolInput { s.TagSpecifications = v @@ -73166,6 +75522,9 @@ // of the request. For more information, see Ensuring Idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `type:"string" idempotencyToken:"true"` + // A connection tracking specification for the network interface. + ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest `type:"structure"` + // A description for the network interface. Description *string `locationName:"description" type:"string"` @@ -73315,6 +75674,12 @@ return s } +// SetConnectionTrackingSpecification sets the ConnectionTrackingSpecification field's value. +func (s *CreateNetworkInterfaceInput) SetConnectionTrackingSpecification(v *ConnectionTrackingSpecificationRequest) *CreateNetworkInterfaceInput { + s.ConnectionTrackingSpecification = v + return s +} + // SetDescription sets the Description field's value. func (s *CreateNetworkInterfaceInput) SetDescription(v string) *CreateNetworkInterfaceInput { s.Description = &v @@ -75275,15 +77640,25 @@ // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // The IPv6 network range for the subnet, in CIDR notation. The subnet size - // must use a /64 prefix length. - // - // This parameter is required for an IPv6 only subnet. + // An IPv4 IPAM pool ID for the subnet. + Ipv4IpamPoolId *string `type:"string"` + + // An IPv4 netmask length for the subnet. + Ipv4NetmaskLength *int64 `type:"integer"` + + // The IPv6 network range for the subnet, in CIDR notation. This parameter is + // required for an IPv6 only subnet. Ipv6CidrBlock *string `type:"string"` + // An IPv6 IPAM pool ID for the subnet. + Ipv6IpamPoolId *string `type:"string"` + // Indicates whether to create an IPv6 only subnet. Ipv6Native *bool `type:"boolean"` + // An IPv6 netmask length for the subnet. + Ipv6NetmaskLength *int64 `type:"integer"` + // The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost // ARN, you must also specify the Availability Zone of the Outpost subnet. OutpostArn *string `type:"string"` @@ -75352,18 +77727,42 @@ return s } +// SetIpv4IpamPoolId sets the Ipv4IpamPoolId field's value. +func (s *CreateSubnetInput) SetIpv4IpamPoolId(v string) *CreateSubnetInput { + s.Ipv4IpamPoolId = &v + return s +} + +// SetIpv4NetmaskLength sets the Ipv4NetmaskLength field's value. +func (s *CreateSubnetInput) SetIpv4NetmaskLength(v int64) *CreateSubnetInput { + s.Ipv4NetmaskLength = &v + return s +} + // SetIpv6CidrBlock sets the Ipv6CidrBlock field's value. func (s *CreateSubnetInput) SetIpv6CidrBlock(v string) *CreateSubnetInput { s.Ipv6CidrBlock = &v return s } +// SetIpv6IpamPoolId sets the Ipv6IpamPoolId field's value. +func (s *CreateSubnetInput) SetIpv6IpamPoolId(v string) *CreateSubnetInput { + s.Ipv6IpamPoolId = &v + return s +} + // SetIpv6Native sets the Ipv6Native field's value. func (s *CreateSubnetInput) SetIpv6Native(v bool) *CreateSubnetInput { s.Ipv6Native = &v return s } +// SetIpv6NetmaskLength sets the Ipv6NetmaskLength field's value. +func (s *CreateSubnetInput) SetIpv6NetmaskLength(v int64) *CreateSubnetInput { + s.Ipv6NetmaskLength = &v + return s +} + // SetOutpostArn sets the OutpostArn field's value. func (s *CreateSubnetInput) SetOutpostArn(v string) *CreateSubnetInput { s.OutpostArn = &v @@ -77626,6 +80025,24 @@ // Enable or disable IPv6 support. The default is disable. Ipv6Support *string `type:"string" enum:"Ipv6SupportValue"` + + // Enables you to reference a security group across VPCs attached to a transit + // gateway (TGW). Use this option to simplify security group management and + // control of instance-to-instance traffic across VPCs that are connected by + // transit gateway. You can also use this option to migrate from VPC peering + // (which was the only option that supported security group referencing) to + // transit gateways (which now also support security group referencing). This + // option is disabled by default and there are no additional costs to use this + // feature. + // + // If you don't enable or disable SecurityGroupReferencingSupport in the request, + // the attachment will inherit the security group referencing support setting + // on the transit gateway. + // + // For important information about this feature, see Create a transit gateway + // attachment to a VPC (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#create-vpc-attachment) + // in the Amazon Web Services Transit Gateway Guide. + SecurityGroupReferencingSupport *string `type:"string" enum:"SecurityGroupReferencingSupportValue"` } // String returns the string representation. @@ -77664,6 +80081,12 @@ return s } +// SetSecurityGroupReferencingSupport sets the SecurityGroupReferencingSupport field's value. +func (s *CreateTransitGatewayVpcAttachmentRequestOptions) SetSecurityGroupReferencingSupport(v string) *CreateTransitGatewayVpcAttachmentRequestOptions { + s.SecurityGroupReferencingSupport = &v + return s +} + // Describes the network interface options when creating an Amazon Web Services // Verified Access endpoint using the network-interface type. type CreateVerifiedAccessEndpointEniOptions struct { @@ -77785,8 +80208,12 @@ PolicyDocument *string `type:"string"` // The IDs of the security groups to associate with the Verified Access endpoint. + // Required if AttachmentType is set to vpc. SecurityGroupIds []*string `locationName:"SecurityGroupId" locationNameList:"item" type:"list"` + // The options for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationRequest `type:"structure"` + // The tags to assign to the Verified Access endpoint. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` @@ -77924,6 +80351,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *CreateVerifiedAccessEndpointInput) SetSseSpecification(v *VerifiedAccessSseSpecificationRequest) *CreateVerifiedAccessEndpointInput { + s.SseSpecification = v + return s +} + // SetTagSpecifications sets the TagSpecifications field's value. func (s *CreateVerifiedAccessEndpointInput) SetTagSpecifications(v []*TagSpecification) *CreateVerifiedAccessEndpointInput { s.TagSpecifications = v @@ -78012,7 +80445,7 @@ type CreateVerifiedAccessEndpointOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access endpoint. + // Details about the Verified Access endpoint. VerifiedAccessEndpoint *VerifiedAccessEndpoint `locationName:"verifiedAccessEndpoint" type:"structure"` } @@ -78060,6 +80493,9 @@ // The Verified Access policy document. PolicyDocument *string `type:"string"` + // The options for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationRequest `type:"structure"` + // The tags to assign to the Verified Access group. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` @@ -78124,6 +80560,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *CreateVerifiedAccessGroupInput) SetSseSpecification(v *VerifiedAccessSseSpecificationRequest) *CreateVerifiedAccessGroupInput { + s.SseSpecification = v + return s +} + // SetTagSpecifications sets the TagSpecifications field's value. func (s *CreateVerifiedAccessGroupInput) SetTagSpecifications(v []*TagSpecification) *CreateVerifiedAccessGroupInput { s.TagSpecifications = v @@ -78139,7 +80581,7 @@ type CreateVerifiedAccessGroupOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access group. + // Details about the Verified Access group. VerifiedAccessGroup *VerifiedAccessGroup `locationName:"verifiedAccessGroup" type:"structure"` } @@ -78184,6 +80626,10 @@ // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` + // Enable or disable support for Federal Information Processing Standards (FIPS) + // on the instance. + FIPSEnabled *bool `type:"boolean"` + // The tags to assign to the Verified Access instance. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } @@ -78224,6 +80670,12 @@ return s } +// SetFIPSEnabled sets the FIPSEnabled field's value. +func (s *CreateVerifiedAccessInstanceInput) SetFIPSEnabled(v bool) *CreateVerifiedAccessInstanceInput { + s.FIPSEnabled = &v + return s +} + // SetTagSpecifications sets the TagSpecifications field's value. func (s *CreateVerifiedAccessInstanceInput) SetTagSpecifications(v []*TagSpecification) *CreateVerifiedAccessInstanceInput { s.TagSpecifications = v @@ -78233,7 +80685,7 @@ type CreateVerifiedAccessInstanceOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access instance. + // Details about the Verified Access instance. VerifiedAccessInstance *VerifiedAccessInstance `locationName:"verifiedAccessInstance" type:"structure"` } @@ -78266,6 +80718,10 @@ type CreateVerifiedAccessTrustProviderDeviceOptions struct { _ struct{} `type:"structure"` + // The URL Amazon Web Services Verified Access will use to verify the authenticity + // of the device tokens. + PublicSigningKeyUrl *string `type:"string"` + // The ID of the tenant application with the device-identity provider. TenantId *string `type:"string"` } @@ -78288,6 +80744,12 @@ return s.String() } +// SetPublicSigningKeyUrl sets the PublicSigningKeyUrl field's value. +func (s *CreateVerifiedAccessTrustProviderDeviceOptions) SetPublicSigningKeyUrl(v string) *CreateVerifiedAccessTrustProviderDeviceOptions { + s.PublicSigningKeyUrl = &v + return s +} + // SetTenantId sets the TenantId field's value. func (s *CreateVerifiedAccessTrustProviderDeviceOptions) SetTenantId(v string) *CreateVerifiedAccessTrustProviderDeviceOptions { s.TenantId = &v @@ -78328,6 +80790,9 @@ // PolicyReferenceName is a required field PolicyReferenceName *string `type:"string" required:"true"` + // The options for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationRequest `type:"structure"` + // The tags to assign to the Verified Access trust provider. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` @@ -78417,6 +80882,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *CreateVerifiedAccessTrustProviderInput) SetSseSpecification(v *VerifiedAccessSseSpecificationRequest) *CreateVerifiedAccessTrustProviderInput { + s.SseSpecification = v + return s +} + // SetTagSpecifications sets the TagSpecifications field's value. func (s *CreateVerifiedAccessTrustProviderInput) SetTagSpecifications(v []*TagSpecification) *CreateVerifiedAccessTrustProviderInput { s.TagSpecifications = v @@ -78531,7 +81002,7 @@ type CreateVerifiedAccessTrustProviderOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access trust provider. + // Details about the Verified Access trust provider. VerifiedAccessTrustProvider *VerifiedAccessTrustProvider `locationName:"verifiedAccessTrustProvider" type:"structure"` } @@ -78595,15 +81066,15 @@ // // The following are the supported values for each volume type: // - // * gp3: 3,000-16,000 IOPS + // * gp3: 3,000 - 16,000 IOPS // - // * io1: 100-64,000 IOPS + // * io1: 100 - 64,000 IOPS // - // * io2: 100-64,000 IOPS + // * io2: 100 - 256,000 IOPS // - // io1 and io2 volumes support up to 64,000 IOPS only on Instances built on + // For io2 volumes, you can achieve up to 256,000 IOPS on instances built on // the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families support performance up to 32,000 IOPS. + // On other instances, you can achieve performance up to 32,000 IOPS. // // This parameter is required for io1 and io2 volumes. The default for gp3 volumes // is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard @@ -78647,13 +81118,15 @@ // // The following are the supported volumes sizes for each volume type: // - // * gp2 and gp3: 1-16,384 + // * gp2 and gp3: 1 - 16,384 GiB // - // * io1 and io2: 4-16,384 + // * io1: 4 - 16,384 GiB // - // * st1 and sc1: 125-16,384 + // * io2: 4 - 65,536 GiB // - // * standard: 1-1,024 + // * st1 and sc1: 125 - 16,384 GiB + // + // * standard: 1 - 1024 GiB Size *int64 `type:"integer"` // The snapshot from which to create the volume. You must specify either a snapshot @@ -81979,6 +84452,14 @@ type DeleteIpamPoolInput struct { _ struct{} `type:"structure"` + // Enables you to quickly delete an IPAM pool and all resources within that + // pool, including provisioned CIDRs, allocations, and other pools. + // + // You can only use this option to delete pools in the private scope or pools + // in the public scope with a source resource. A source resource is a resource + // used to provision CIDRs to a resource planning pool. + Cascade *bool `type:"boolean"` + // A check for whether you have the required permissions for the action without // actually making the request and provides an error response. If you have the // required permissions, the error response is DryRunOperation. Otherwise, it @@ -82022,6 +84503,12 @@ return nil } +// SetCascade sets the Cascade field's value. +func (s *DeleteIpamPoolInput) SetCascade(v bool) *DeleteIpamPoolInput { + s.Cascade = &v + return s +} + // SetDryRun sets the DryRun field's value. func (s *DeleteIpamPoolInput) SetDryRun(v bool) *DeleteIpamPoolInput { s.DryRun = &v @@ -86371,7 +88858,7 @@ type DeleteVerifiedAccessEndpointOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access endpoint. + // Details about the Verified Access endpoint. VerifiedAccessEndpoint *VerifiedAccessEndpoint `locationName:"verifiedAccessEndpoint" type:"structure"` } @@ -86471,7 +88958,7 @@ type DeleteVerifiedAccessGroupOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access group. + // Details about the Verified Access group. VerifiedAccessGroup *VerifiedAccessGroup `locationName:"verifiedAccessGroup" type:"structure"` } @@ -86571,7 +89058,7 @@ type DeleteVerifiedAccessInstanceOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access instance. + // Details about the Verified Access instance. VerifiedAccessInstance *VerifiedAccessInstance `locationName:"verifiedAccessInstance" type:"structure"` } @@ -86671,7 +89158,7 @@ type DeleteVerifiedAccessTrustProviderOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access trust provider. + // Details about the Verified Access trust provider. VerifiedAccessTrustProvider *VerifiedAccessTrustProvider `locationName:"verifiedAccessTrustProvider" type:"structure"` } @@ -87550,6 +90037,109 @@ return s } +type DeprovisionIpamByoasnInput struct { + _ struct{} `type:"structure"` + + // An ASN. + // + // Asn is a required field + Asn *string `type:"string" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The IPAM ID. + // + // IpamId is a required field + IpamId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeprovisionIpamByoasnInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeprovisionIpamByoasnInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeprovisionIpamByoasnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeprovisionIpamByoasnInput"} + if s.Asn == nil { + invalidParams.Add(request.NewErrParamRequired("Asn")) + } + if s.IpamId == nil { + invalidParams.Add(request.NewErrParamRequired("IpamId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAsn sets the Asn field's value. +func (s *DeprovisionIpamByoasnInput) SetAsn(v string) *DeprovisionIpamByoasnInput { + s.Asn = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *DeprovisionIpamByoasnInput) SetDryRun(v bool) *DeprovisionIpamByoasnInput { + s.DryRun = &v + return s +} + +// SetIpamId sets the IpamId field's value. +func (s *DeprovisionIpamByoasnInput) SetIpamId(v string) *DeprovisionIpamByoasnInput { + s.IpamId = &v + return s +} + +type DeprovisionIpamByoasnOutput struct { + _ struct{} `type:"structure"` + + // An ASN and BYOIP CIDR association. + Byoasn *Byoasn `locationName:"byoasn" 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 DeprovisionIpamByoasnOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeprovisionIpamByoasnOutput) GoString() string { + return s.String() +} + +// SetByoasn sets the Byoasn field's value. +func (s *DeprovisionIpamByoasnOutput) SetByoasn(v *Byoasn) *DeprovisionIpamByoasnOutput { + s.Byoasn = v + return s +} + type DeprovisionIpamPoolCidrInput struct { _ struct{} `type:"structure"` @@ -89135,6 +91725,175 @@ return s } +type DescribeCapacityBlockOfferingsInput struct { + _ struct{} `type:"structure"` + + // The number of hours for which to reserve Capacity Block. + // + // CapacityDurationHours is a required field + CapacityDurationHours *int64 `type:"integer" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The latest end date for the Capacity Block offering. + EndDateRange *time.Time `type:"timestamp"` + + // The number of instances for which to reserve capacity. + // + // InstanceCount is a required field + InstanceCount *int64 `type:"integer" required:"true"` + + // The type of instance for which the Capacity Block offering reserves capacity. + // + // InstanceType is a required field + InstanceType *string `type:"string" required:"true"` + + // The maximum number of results to return for the request in a single page. + // The remaining results can be seen by sending another request with the returned + // nextToken value. This value can be between 5 and 500. If maxResults is given + // a larger value than 500, you receive an error. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to use to retrieve the next page of results. + NextToken *string `type:"string"` + + // The earliest start date for the Capacity Block offering. + StartDateRange *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeCapacityBlockOfferingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeCapacityBlockOfferingsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeCapacityBlockOfferingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeCapacityBlockOfferingsInput"} + if s.CapacityDurationHours == nil { + invalidParams.Add(request.NewErrParamRequired("CapacityDurationHours")) + } + if s.InstanceCount == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceCount")) + } + if s.InstanceType == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceType")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapacityDurationHours sets the CapacityDurationHours field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetCapacityDurationHours(v int64) *DescribeCapacityBlockOfferingsInput { + s.CapacityDurationHours = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetDryRun(v bool) *DescribeCapacityBlockOfferingsInput { + s.DryRun = &v + return s +} + +// SetEndDateRange sets the EndDateRange field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetEndDateRange(v time.Time) *DescribeCapacityBlockOfferingsInput { + s.EndDateRange = &v + return s +} + +// SetInstanceCount sets the InstanceCount field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetInstanceCount(v int64) *DescribeCapacityBlockOfferingsInput { + s.InstanceCount = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetInstanceType(v string) *DescribeCapacityBlockOfferingsInput { + s.InstanceType = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetMaxResults(v int64) *DescribeCapacityBlockOfferingsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetNextToken(v string) *DescribeCapacityBlockOfferingsInput { + s.NextToken = &v + return s +} + +// SetStartDateRange sets the StartDateRange field's value. +func (s *DescribeCapacityBlockOfferingsInput) SetStartDateRange(v time.Time) *DescribeCapacityBlockOfferingsInput { + s.StartDateRange = &v + return s +} + +type DescribeCapacityBlockOfferingsOutput struct { + _ struct{} `type:"structure"` + + // The recommended Capacity Block offering for the dates specified. + CapacityBlockOfferings []*CapacityBlockOffering `locationName:"capacityBlockOfferingSet" locationNameList:"item" type:"list"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" 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 DescribeCapacityBlockOfferingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeCapacityBlockOfferingsOutput) GoString() string { + return s.String() +} + +// SetCapacityBlockOfferings sets the CapacityBlockOfferings field's value. +func (s *DescribeCapacityBlockOfferingsOutput) SetCapacityBlockOfferings(v []*CapacityBlockOffering) *DescribeCapacityBlockOfferingsOutput { + s.CapacityBlockOfferings = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeCapacityBlockOfferingsOutput) SetNextToken(v string) *DescribeCapacityBlockOfferingsOutput { + s.NextToken = &v + return s +} + type DescribeCapacityReservationFleetsInput struct { _ struct{} `type:"structure"` @@ -91400,15 +94159,12 @@ // // * resource-type - The resource type for pre-provisioning. // - // * launch-template - The launch template that is associated with the pre-provisioned - // Windows AMI. - // // * owner-id - The owner ID for the pre-provisioning resource. // // * state - The current state of fast launching for the Windows AMI. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` - // Details for one or more Windows AMI image IDs. + // Specify one or more Windows AMI image IDs for the request. ImageIds []*string `locationName:"ImageId" locationNameList:"ImageId" type:"list"` // The maximum number of items to return for this request. To get the next page @@ -91511,43 +94267,41 @@ return s } -// Describe details about a fast-launch enabled Windows image that meets the -// requested criteria. Criteria are defined by the DescribeFastLaunchImages +// Describe details about a Windows image with Windows fast launch enabled that +// meets the requested criteria. Criteria are defined by the DescribeFastLaunchImages // action filters. type DescribeFastLaunchImagesSuccessItem struct { _ struct{} `type:"structure"` - // The image ID that identifies the fast-launch enabled Windows image. + // The image ID that identifies the Windows fast launch enabled image. ImageId *string `locationName:"imageId" type:"string"` - // The launch template that the fast-launch enabled Windows AMI uses when it + // The launch template that the Windows fast launch enabled AMI uses when it // launches Windows instances from pre-provisioned snapshots. LaunchTemplate *FastLaunchLaunchTemplateSpecificationResponse `locationName:"launchTemplate" type:"structure"` // The maximum number of instances that Amazon EC2 can launch at the same time - // to create pre-provisioned snapshots for Windows faster launching. + // to create pre-provisioned snapshots for Windows fast launch. MaxParallelLaunches *int64 `locationName:"maxParallelLaunches" type:"integer"` - // The owner ID for the fast-launch enabled Windows AMI. + // The owner ID for the Windows fast launch enabled AMI. OwnerId *string `locationName:"ownerId" type:"string"` - // The resource type that is used for pre-provisioning the Windows AMI. Supported - // values include: snapshot. + // The resource type that Amazon EC2 uses for pre-provisioning the Windows AMI. + // Supported values include: snapshot. ResourceType *string `locationName:"resourceType" type:"string" enum:"FastLaunchResourceType"` // A group of parameters that are used for pre-provisioning the associated Windows // AMI using snapshots. SnapshotConfiguration *FastLaunchSnapshotConfigurationResponse `locationName:"snapshotConfiguration" type:"structure"` - // The current state of faster launching for the specified Windows AMI. + // The current state of Windows fast launch for the specified Windows AMI. State *string `locationName:"state" type:"string" enum:"FastLaunchStateCode"` - // The reason that faster launching for the Windows AMI changed to the current - // state. + // The reason that Windows fast launch for the AMI changed to the current state. StateTransitionReason *string `locationName:"stateTransitionReason" type:"string"` - // The time that faster launching for the Windows AMI changed to the current - // state. + // The time that Windows fast launch for the AMI changed to the current state. StateTransitionTime *time.Time `locationName:"stateTransitionTime" type:"timestamp"` } @@ -93850,6 +96604,10 @@ // // * root-device-type - The type of the root device volume (ebs | instance-store). // + // * source-instance-id - The ID of the instance that the AMI was created + // from if the AMI was created using CreateImage. This filter is applicable + // only if the AMI was created using CreateImage (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html). + // // * state - The state of the image (available | pending | failed). // // * state-reason-code - The reason code for the state change. @@ -93885,6 +96643,11 @@ // of what you specify for this parameter. IncludeDeprecated *bool `type:"boolean"` + // Specifies whether to include disabled AMIs. + // + // Default: No disabled AMIs are included in the response. + IncludeDisabled *bool `type:"boolean"` + // The maximum number of items to return for this request. To get the next page // of items, make another request with the token returned in the output. For // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). @@ -93949,6 +96712,12 @@ return s } +// SetIncludeDisabled sets the IncludeDisabled field's value. +func (s *DescribeImagesInput) SetIncludeDisabled(v bool) *DescribeImagesInput { + s.IncludeDisabled = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *DescribeImagesInput) SetMaxResults(v int64) *DescribeImagesInput { s.MaxResults = &v @@ -95181,6 +97950,164 @@ return s } +type DescribeInstanceTopologyInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The filters. + // + // * availability-zone - The name of the Availability Zone (for example, + // us-west-2a) or Local Zone (for example, us-west-2-lax-1b) that the instance + // is in. + // + // * instance-type - The instance type (for example, p4d.24xlarge) or instance + // family (for example, p4d*). You can use the * wildcard to match zero or + // more characters, or the ? wildcard to match zero or one character. + // + // * zone-id - The ID of the Availability Zone (for example, usw2-az2) or + // Local Zone (for example, usw2-lax1-az1) that the instance is in. + Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` + + // The name of the placement group that each instance is in. + // + // Constraints: Maximum 100 explicitly specified placement group names. + GroupNames []*string `locationName:"GroupName" type:"list"` + + // The instance IDs. + // + // Default: Describes all your instances. + // + // Constraints: Maximum 100 explicitly specified instance IDs. + InstanceIds []*string `locationName:"InstanceId" type:"list"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. For + // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). + // + // You can't specify this parameter and the instance IDs parameter in the same + // request. + // + // Default: 20 + MaxResults *int64 `min:"1" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInstanceTopologyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInstanceTopologyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeInstanceTopologyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceTopologyInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *DescribeInstanceTopologyInput) SetDryRun(v bool) *DescribeInstanceTopologyInput { + s.DryRun = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *DescribeInstanceTopologyInput) SetFilters(v []*Filter) *DescribeInstanceTopologyInput { + s.Filters = v + return s +} + +// SetGroupNames sets the GroupNames field's value. +func (s *DescribeInstanceTopologyInput) SetGroupNames(v []*string) *DescribeInstanceTopologyInput { + s.GroupNames = v + return s +} + +// SetInstanceIds sets the InstanceIds field's value. +func (s *DescribeInstanceTopologyInput) SetInstanceIds(v []*string) *DescribeInstanceTopologyInput { + s.InstanceIds = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeInstanceTopologyInput) SetMaxResults(v int64) *DescribeInstanceTopologyInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeInstanceTopologyInput) SetNextToken(v string) *DescribeInstanceTopologyInput { + s.NextToken = &v + return s +} + +type DescribeInstanceTopologyOutput struct { + _ struct{} `type:"structure"` + + // Information about the topology of each instance. + Instances []*InstanceTopology `locationName:"instanceSet" locationNameList:"item" type:"list"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + 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 DescribeInstanceTopologyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInstanceTopologyOutput) GoString() string { + return s.String() +} + +// SetInstances sets the Instances field's value. +func (s *DescribeInstanceTopologyOutput) SetInstances(v []*InstanceTopology) *DescribeInstanceTopologyOutput { + s.Instances = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeInstanceTopologyOutput) SetNextToken(v string) *DescribeInstanceTopologyOutput { + s.NextToken = &v + return s +} + type DescribeInstanceTypeOfferingsInput struct { _ struct{} `type:"structure"` @@ -95672,8 +98599,8 @@ // // * instance-id - The ID of the instance. // - // * instance-lifecycle - Indicates whether this is a Spot Instance or a - // Scheduled Instance (spot | scheduled). + // * instance-lifecycle - Indicates whether this is a Spot Instance, a Scheduled + // Instance, or a Capacity Block (spot | scheduled | capacity-block). // // * instance-state-code - The state of the instance, as a 16-bit unsigned // integer. The high byte is used for internal purposes and should be ignored. @@ -95706,8 +98633,6 @@ // You can use a wildcard (*), for example, 2021-09-29T*, which matches an // entire day. // - // * license-pool - - // // * maintenance-options.auto-recovery - The current automatic recovery behavior // of the instance (disabled | default). // @@ -95735,23 +98660,34 @@ // * monitoring-state - Indicates whether detailed monitoring is enabled // (disabled | enabled). // - // * network-interface.addresses.primary - Specifies whether the IPv4 address - // of the network interface is the primary private IPv4 address. + // * network-interface.addresses.association.allocation-id - The allocation + // ID. // - // * network-interface.addresses.private-ip-address - The private IPv4 address - // associated with the network interface. + // * network-interface.addresses.association.association-id - The association + // ID. // - // * network-interface.addresses.association.public-ip - The ID of the association - // of an Elastic IP address (IPv4) with a network interface. + // * network-interface.addresses.association.carrier-ip - The carrier IP + // address. + // + // * network-interface.addresses.association.customer-owned-ip - The customer-owned + // IP address. // // * network-interface.addresses.association.ip-owner-id - The owner ID of // the private IPv4 address associated with the network interface. // - // * network-interface.association.public-ip - The address of the Elastic - // IP address (IPv4) bound to the network interface. + // * network-interface.addresses.association.public-dns-name - The public + // DNS name. // - // * network-interface.association.ip-owner-id - The owner of the Elastic - // IP address (IPv4) associated with the network interface. + // * network-interface.addresses.association.public-ip - The ID of the association + // of an Elastic IP address (IPv4) with a network interface. + // + // * network-interface.addresses.primary - Specifies whether the IPv4 address + // of the network interface is the primary private IPv4 address. + // + // * network-interface.addresses.private-dns-name - The private DNS name. + // + // * network-interface.addresses.private-ip-address - The private IPv4 address + // associated with the network interface. // // * network-interface.association.allocation-id - The allocation ID returned // when you allocated the Elastic IP address (IPv4) for your network interface. @@ -95759,30 +98695,50 @@ // * network-interface.association.association-id - The association ID returned // when the network interface was associated with an IPv4 address. // + // * network-interface.association.carrier-ip - The customer-owned IP address. + // + // * network-interface.association.customer-owned-ip - The customer-owned + // IP address. + // + // * network-interface.association.ip-owner-id - The owner of the Elastic + // IP address (IPv4) associated with the network interface. + // + // * network-interface.association.public-dns-name - The public DNS name. + // + // * network-interface.association.public-ip - The address of the Elastic + // IP address (IPv4) bound to the network interface. + // + // * network-interface.attachment.attach-time - The time that the network + // interface was attached to an instance. + // // * network-interface.attachment.attachment-id - The ID of the interface // attachment. // + // * network-interface.attachment.delete-on-termination - Specifies whether + // the attachment is deleted when an instance is terminated. + // + // * network-interface.attachment.device-index - The device index to which + // the network interface is attached. + // // * network-interface.attachment.instance-id - The ID of the instance to // which the network interface is attached. // // * network-interface.attachment.instance-owner-id - The owner ID of the // instance to which the network interface is attached. // - // * network-interface.attachment.device-index - The device index to which - // the network interface is attached. + // * network-interface.attachment.network-card-index - The index of the network + // card. // // * network-interface.attachment.status - The status of the attachment (attaching // | attached | detaching | detached). // - // * network-interface.attachment.attach-time - The time that the network - // interface was attached to an instance. - // - // * network-interface.attachment.delete-on-termination - Specifies whether - // the attachment is deleted when an instance is terminated. - // // * network-interface.availability-zone - The Availability Zone for the // network interface. // + // * network-interface.deny-all-igw-traffic - A Boolean that indicates whether + // a network interface with an IPv6 address is unreachable from the public + // internet. + // // * network-interface.description - The description of the network interface. // // * network-interface.group-id - The ID of a security group associated with @@ -95791,18 +98747,39 @@ // * network-interface.group-name - The name of a security group associated // with the network interface. // + // * network-interface.ipv4-prefixes.ipv4-prefix - The IPv4 prefixes that + // are assigned to the network interface. + // + // * network-interface.ipv6-address - The IPv6 address associated with the + // network interface. + // // * network-interface.ipv6-addresses.ipv6-address - The IPv6 address associated // with the network interface. // + // * network-interface.ipv6-addresses.is-primary-ipv6 - A Boolean that indicates + // whether this is the primary IPv6 address. + // + // * network-interface.ipv6-native - A Boolean that indicates whether this + // is an IPv6 only network interface. + // + // * network-interface.ipv6-prefixes.ipv6-prefix - The IPv6 prefix assigned + // to the network interface. + // // * network-interface.mac-address - The MAC address of the network interface. // // * network-interface.network-interface-id - The ID of the network interface. // + // * network-interface.outpost-arn - The ARN of the Outpost. + // // * network-interface.owner-id - The ID of the owner of the network interface. // // * network-interface.private-dns-name - The private DNS name of the network // interface. // + // * network-interface.private-ip-address - The private IPv4 address. + // + // * network-interface.public-dns-name - The public DNS name. + // // * network-interface.requester-id - The requester ID for the network interface. // // * network-interface.requester-managed - Indicates whether the network @@ -95819,6 +98796,12 @@ // // * network-interface.subnet-id - The ID of the subnet for the network interface. // + // * network-interface.tag-key - The key of a tag assigned to the network + // interface. + // + // * network-interface.tag-value - The value of a tag assigned to the network + // interface. + // // * network-interface.vpc-id - The ID of the VPC for the network interface. // // * outpost-arn - The Amazon Resource Name (ARN) of the Outpost. @@ -96185,6 +99168,113 @@ return s } +type DescribeIpamByoasnInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + MaxResults *int64 `min:"1" type:"integer"` + + // The token for the next page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeIpamByoasnInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeIpamByoasnInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeIpamByoasnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeIpamByoasnInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *DescribeIpamByoasnInput) SetDryRun(v bool) *DescribeIpamByoasnInput { + s.DryRun = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeIpamByoasnInput) SetMaxResults(v int64) *DescribeIpamByoasnInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeIpamByoasnInput) SetNextToken(v string) *DescribeIpamByoasnInput { + s.NextToken = &v + return s +} + +type DescribeIpamByoasnOutput struct { + _ struct{} `type:"structure"` + + // ASN and BYOIP CIDR associations. + Byoasns []*Byoasn `locationName:"byoasnSet" locationNameList:"item" type:"list"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" 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 DescribeIpamByoasnOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeIpamByoasnOutput) GoString() string { + return s.String() +} + +// SetByoasns sets the Byoasns field's value. +func (s *DescribeIpamByoasnOutput) SetByoasns(v []*Byoasn) *DescribeIpamByoasnOutput { + s.Byoasns = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeIpamByoasnOutput) SetNextToken(v string) *DescribeIpamByoasnOutput { + s.NextToken = &v + return s +} + type DescribeIpamPoolsInput struct { _ struct{} `type:"structure"` @@ -98289,6 +101379,136 @@ return s } +type DescribeLockedSnapshotsInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The filters. + // + // * lock-state - The state of the snapshot lock (compliance-cooloff | governance + // | compliance | expired). + Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. For + // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). + MaxResults *int64 `min:"5" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `type:"string"` + + // The IDs of the snapshots for which to view the lock status. + SnapshotIds []*string `locationName:"SnapshotId" locationNameList:"SnapshotId" 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 DescribeLockedSnapshotsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeLockedSnapshotsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeLockedSnapshotsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeLockedSnapshotsInput"} + if s.MaxResults != nil && *s.MaxResults < 5 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *DescribeLockedSnapshotsInput) SetDryRun(v bool) *DescribeLockedSnapshotsInput { + s.DryRun = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *DescribeLockedSnapshotsInput) SetFilters(v []*Filter) *DescribeLockedSnapshotsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeLockedSnapshotsInput) SetMaxResults(v int64) *DescribeLockedSnapshotsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeLockedSnapshotsInput) SetNextToken(v string) *DescribeLockedSnapshotsInput { + s.NextToken = &v + return s +} + +// SetSnapshotIds sets the SnapshotIds field's value. +func (s *DescribeLockedSnapshotsInput) SetSnapshotIds(v []*string) *DescribeLockedSnapshotsInput { + s.SnapshotIds = v + return s +} + +type DescribeLockedSnapshotsOutput struct { + _ struct{} `type:"structure"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + NextToken *string `locationName:"nextToken" type:"string"` + + // Information about the snapshots. + Snapshots []*LockedSnapshotsInfo `locationName:"snapshotSet" locationNameList:"item" 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 DescribeLockedSnapshotsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeLockedSnapshotsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeLockedSnapshotsOutput) SetNextToken(v string) *DescribeLockedSnapshotsOutput { + s.NextToken = &v + return s +} + +// SetSnapshots sets the Snapshots field's value. +func (s *DescribeLockedSnapshotsOutput) SetSnapshots(v []*LockedSnapshotsInfo) *DescribeLockedSnapshotsOutput { + s.Snapshots = v + return s +} + type DescribeManagedPrefixListsInput struct { _ struct{} `type:"structure"` @@ -99748,23 +102968,23 @@ // One or more filters. // - // * addresses.private-ip-address - The private IPv4 addresses associated - // with the network interface. - // - // * addresses.primary - Whether the private IPv4 address is the primary - // IP address associated with the network interface. + // * association.allocation-id - The allocation ID returned when you allocated + // the Elastic IP address (IPv4) for your network interface. // - // * addresses.association.public-ip - The association ID returned when the - // network interface was associated with the Elastic IP address (IPv4). + // * association.association-id - The association ID returned when the network + // interface was associated with an IPv4 address. // // * addresses.association.owner-id - The owner ID of the addresses associated // with the network interface. // - // * association.association-id - The association ID returned when the network - // interface was associated with an IPv4 address. + // * addresses.association.public-ip - The association ID returned when the + // network interface was associated with the Elastic IP address (IPv4). // - // * association.allocation-id - The allocation ID returned when you allocated - // the Elastic IP address (IPv4) for your network interface. + // * addresses.primary - Whether the private IPv4 address is the primary + // IP address associated with the network interface. + // + // * addresses.private-ip-address - The private IPv4 addresses associated + // with the network interface. // // * association.ip-owner-id - The owner of the Elastic IP address (IPv4) // associated with the network interface. @@ -99775,11 +102995,11 @@ // * association.public-dns-name - The public DNS name for the network interface // (IPv4). // - // * attachment.attachment-id - The ID of the interface attachment. - // // * attachment.attach-time - The time that the network interface was attached // to an instance. // + // * attachment.attachment-id - The ID of the interface attachment. + // // * attachment.delete-on-termination - Indicates whether the attachment // is deleted when an instance is terminated. // @@ -99801,17 +103021,15 @@ // // * group-id - The ID of a security group associated with the network interface. // - // * group-name - The name of a security group associated with the network - // interface. - // // * ipv6-addresses.ipv6-address - An IPv6 address associated with the network // interface. // // * interface-type - The type of network interface (api_gateway_managed - // | aws_codestar_connections_managed | branch | efa | gateway_load_balancer - // | gateway_load_balancer_endpoint | global_accelerator_managed | interface - // | iot_rules_managed | lambda | load_balancer | nat_gateway | network_load_balancer - // | quicksight | transit_gateway | trunk | vpc_endpoint). + // | aws_codestar_connections_managed | branch | ec2_instance_connect_endpoint + // | efa | efs | gateway_load_balancer | gateway_load_balancer_endpoint | + // global_accelerator_managed | interface | iot_rules_managed | lambda | + // load_balancer | nat_gateway | network_load_balancer | quicksight | transit_gateway + // | trunk | vpc_endpoint). // // * mac-address - The MAC address of the network interface. // @@ -99820,11 +103038,11 @@ // * owner-id - The Amazon Web Services account ID of the network interface // owner. // + // * private-dns-name - The private DNS name of the network interface (IPv4). + // // * private-ip-address - The private IPv4 address or addresses of the network // interface. // - // * private-dns-name - The private DNS name of the network interface (IPv4). - // // * requester-id - The alias or Amazon Web Services account ID of the principal // or service that created the network interface. // @@ -103184,8 +106402,8 @@ // in GiB. // // * launch.block-device-mapping.volume-type - The type of EBS volume: gp2 - // for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 for - // Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic. + // or gp3 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 + // for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic. // // * launch.group-id - The ID of the security group for the instance. // @@ -103401,8 +106619,8 @@ // greater than or less than comparison is not supported). // // * timestamp - The time stamp of the Spot price history, in UTC format - // (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). - // Greater than or less than comparison is not supported. + // (for example, ddd MMM dd HH:mm:ss UTC YYYY). You can use wildcards (* + // and ?). Greater than or less than comparison is not supported. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // Filters the results by the specified instance types. @@ -103681,6 +106899,9 @@ // // * bucket - Returns task information for tasks that targeted a specific // bucket. For the filter value, specify the bucket name. + // + // When you specify the ImageIds parameter, any filters that you specify are + // ignored. To use the filters, you must remove the ImageIds parameter. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The AMI IDs for which to show progress. Up to 20 AMI IDs can be included @@ -103691,7 +106912,7 @@ // of items, make another request with the token returned in the output. For // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). // - // You cannot specify this parameter and the ImageIDs parameter in the same + // You cannot specify this parameter and the ImageIds parameter in the same // call. MaxResults *int64 `min:"1" type:"integer"` @@ -106167,7 +109388,7 @@ // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` - // The ID of the Verified Access endpoint. + // Details about the Verified Access endpoints. VerifiedAccessEndpoints []*VerifiedAccessEndpoint `locationName:"verifiedAccessEndpointSet" locationNameList:"item" type:"list"` } @@ -106301,7 +109522,7 @@ // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` - // The ID of the Verified Access group. + // Details about the Verified Access groups. VerifiedAccessGroups []*VerifiedAccessGroup `locationName:"verifiedAccessGroupSet" locationNameList:"item" type:"list"` } @@ -106422,7 +109643,7 @@ type DescribeVerifiedAccessInstanceLoggingConfigurationsOutput struct { _ struct{} `type:"structure"` - // The current logging configuration for the Verified Access instances. + // The logging configuration for the Verified Access instances. LoggingConfigurations []*VerifiedAccessInstanceLoggingConfiguration `locationName:"loggingConfigurationSet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null @@ -106551,7 +109772,7 @@ // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` - // The IDs of the Verified Access instances. + // Details about the Verified Access instances. VerifiedAccessInstances []*VerifiedAccessInstance `locationName:"verifiedAccessInstanceSet" locationNameList:"item" type:"list"` } @@ -106676,7 +109897,7 @@ // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` - // The IDs of the Verified Access trust providers. + // Details about the Verified Access trust providers. VerifiedAccessTrustProviders []*VerifiedAccessTrustProvider `locationName:"verifiedAccessTrustProviderSet" locationNameList:"item" type:"list"` } @@ -109489,10 +112710,10 @@ type DetachVerifiedAccessTrustProviderOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access instance. + // Details about the Verified Access instance. VerifiedAccessInstance *VerifiedAccessInstance `locationName:"verifiedAccessInstance" type:"structure"` - // The ID of the Verified Access trust provider. + // Details about the Verified Access trust provider. VerifiedAccessTrustProvider *VerifiedAccessTrustProvider `locationName:"verifiedAccessTrustProvider" type:"structure"` } @@ -109718,6 +112939,10 @@ type DeviceOptions struct { _ struct{} `type:"structure"` + // The URL Amazon Web Services Verified Access will use to verify the authenticity + // of the device tokens. + PublicSigningKeyUrl *string `locationName:"publicSigningKeyUrl" type:"string"` + // The ID of the tenant application with the device-identity provider. TenantId *string `locationName:"tenantId" type:"string"` } @@ -109740,6 +112965,12 @@ return s.String() } +// SetPublicSigningKeyUrl sets the PublicSigningKeyUrl field's value. +func (s *DeviceOptions) SetPublicSigningKeyUrl(v string) *DeviceOptions { + s.PublicSigningKeyUrl = &v + return s +} + // SetTenantId sets the TenantId field's value. func (s *DeviceOptions) SetTenantId(v string) *DeviceOptions { s.TenantId = &v @@ -110176,13 +113407,12 @@ // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // Forces the image settings to turn off faster launching for your Windows AMI. - // This parameter overrides any errors that are encountered while cleaning up - // resources in your account. + // Forces the image settings to turn off Windows fast launch for your Windows + // AMI. This parameter overrides any errors that are encountered while cleaning + // up resources in your account. Force *bool `type:"boolean"` - // The ID of the image for which you’re turning off faster launching, and - // removing pre-provisioned snapshots. + // Specify the ID of the image for which to disable Windows fast launch. // // ImageId is a required field ImageId *string `type:"string" required:"true"` @@ -110240,7 +113470,7 @@ type DisableFastLaunchOutput struct { _ struct{} `type:"structure"` - // The ID of the image for which faster-launching has been turned off. + // The ID of the image for which Windows fast launch was disabled. ImageId *string `locationName:"imageId" type:"string"` // The launch template that was used to launch Windows instances from pre-provisioned @@ -110248,27 +113478,28 @@ LaunchTemplate *FastLaunchLaunchTemplateSpecificationResponse `locationName:"launchTemplate" type:"structure"` // The maximum number of instances that Amazon EC2 can launch at the same time - // to create pre-provisioned snapshots for Windows faster launching. + // to create pre-provisioned snapshots for Windows fast launch. MaxParallelLaunches *int64 `locationName:"maxParallelLaunches" type:"integer"` - // The owner of the Windows AMI for which faster launching was turned off. + // The owner of the Windows AMI for which Windows fast launch was disabled. OwnerId *string `locationName:"ownerId" type:"string"` // The pre-provisioning resource type that must be cleaned after turning off - // faster launching for the Windows AMI. Supported values include: snapshot. + // Windows fast launch for the Windows AMI. Supported values include: snapshot. ResourceType *string `locationName:"resourceType" type:"string" enum:"FastLaunchResourceType"` - // Parameters that were used for faster launching for the Windows AMI before - // faster launching was turned off. This informs the clean-up process. + // Parameters that were used for Windows fast launch for the Windows AMI before + // Windows fast launch was disabled. This informs the clean-up process. SnapshotConfiguration *FastLaunchSnapshotConfigurationResponse `locationName:"snapshotConfiguration" type:"structure"` - // The current state of faster launching for the specified Windows AMI. + // The current state of Windows fast launch for the specified Windows AMI. State *string `locationName:"state" type:"string" enum:"FastLaunchStateCode"` - // The reason that the state changed for faster launching for the Windows AMI. + // The reason that the state changed for Windows fast launch for the Windows + // AMI. StateTransitionReason *string `locationName:"stateTransitionReason" type:"string"` - // The time that the state changed for faster launching for the Windows AMI. + // The time that the state changed for Windows fast launch for the Windows AMI. StateTransitionTime *time.Time `locationName:"stateTransitionTime" type:"timestamp"` } @@ -110867,6 +114098,95 @@ return s } +type DisableImageInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The ID of the AMI. + // + // ImageId is a required field + ImageId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableImageInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableImageInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisableImageInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisableImageInput"} + if s.ImageId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *DisableImageInput) SetDryRun(v bool) *DisableImageInput { + s.DryRun = &v + return s +} + +// SetImageId sets the ImageId field's value. +func (s *DisableImageInput) SetImageId(v string) *DisableImageInput { + s.ImageId = &v + return s +} + +type DisableImageOutput struct { + _ struct{} `type:"structure"` + + // Returns true if the request succeeds; otherwise, it returns an error. + Return *bool `locationName:"return" 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 DisableImageOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableImageOutput) GoString() string { + return s.String() +} + +// SetReturn sets the Return field's value. +func (s *DisableImageOutput) SetReturn(v bool) *DisableImageOutput { + s.Return = &v + return s +} + type DisableIpamOrganizationAdminAccountInput struct { _ struct{} `type:"structure"` @@ -111023,6 +114343,71 @@ return s } +type DisableSnapshotBlockPublicAccessInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *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 DisableSnapshotBlockPublicAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableSnapshotBlockPublicAccessInput) GoString() string { + return s.String() +} + +// SetDryRun sets the DryRun field's value. +func (s *DisableSnapshotBlockPublicAccessInput) SetDryRun(v bool) *DisableSnapshotBlockPublicAccessInput { + s.DryRun = &v + return s +} + +type DisableSnapshotBlockPublicAccessOutput struct { + _ struct{} `type:"structure"` + + // Returns unblocked if the request succeeds. + State *string `locationName:"state" type:"string" enum:"SnapshotBlockPublicAccessState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableSnapshotBlockPublicAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisableSnapshotBlockPublicAccessOutput) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *DisableSnapshotBlockPublicAccessOutput) SetState(v string) *DisableSnapshotBlockPublicAccessOutput { + s.State = &v + return s +} + type DisableTransitGatewayRouteTablePropagationInput struct { _ struct{} `type:"structure"` @@ -111845,6 +115230,109 @@ return s } +type DisassociateIpamByoasnInput struct { + _ struct{} `type:"structure"` + + // A public 2-byte or 4-byte ASN. + // + // Asn is a required field + Asn *string `type:"string" required:"true"` + + // A BYOIP CIDR. + // + // Cidr is a required field + Cidr *string `type:"string" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *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 DisassociateIpamByoasnInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateIpamByoasnInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateIpamByoasnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateIpamByoasnInput"} + if s.Asn == nil { + invalidParams.Add(request.NewErrParamRequired("Asn")) + } + if s.Cidr == nil { + invalidParams.Add(request.NewErrParamRequired("Cidr")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAsn sets the Asn field's value. +func (s *DisassociateIpamByoasnInput) SetAsn(v string) *DisassociateIpamByoasnInput { + s.Asn = &v + return s +} + +// SetCidr sets the Cidr field's value. +func (s *DisassociateIpamByoasnInput) SetCidr(v string) *DisassociateIpamByoasnInput { + s.Cidr = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *DisassociateIpamByoasnInput) SetDryRun(v bool) *DisassociateIpamByoasnInput { + s.DryRun = &v + return s +} + +type DisassociateIpamByoasnOutput struct { + _ struct{} `type:"structure"` + + // An ASN and BYOIP CIDR association. + AsnAssociation *AsnAssociation `locationName:"asnAssociation" 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 DisassociateIpamByoasnOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateIpamByoasnOutput) GoString() string { + return s.String() +} + +// SetAsnAssociation sets the AsnAssociation field's value. +func (s *DisassociateIpamByoasnOutput) SetAsnAssociation(v *AsnAssociation) *DisassociateIpamByoasnOutput { + s.AsnAssociation = v + return s +} + type DisassociateIpamResourceDiscoveryInput struct { _ struct{} `type:"structure"` @@ -113299,19 +116787,18 @@ // // The following are the supported values for each volume type: // - // * gp3: 3,000-16,000 IOPS + // * gp3: 3,000 - 16,000 IOPS // - // * io1: 100-64,000 IOPS + // * io1: 100 - 64,000 IOPS // - // * io2: 100-64,000 IOPS + // * io2: 100 - 256,000 IOPS // - // For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built - // on the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. + // For io2 volumes, you can achieve up to 256,000 IOPS on instances built on + // the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). + // On other instances, you can achieve performance up to 32,000 IOPS. // // This parameter is required for io1 and io2 volumes. The default for gp3 volumes - // is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard - // volumes. + // is 3,000 IOPS. Iops *int64 `locationName:"iops" type:"integer"` // Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed @@ -113343,20 +116830,21 @@ // You can specify a volume size that is equal to or larger than the snapshot // size. // - // The following are the supported volumes sizes for each volume type: + // The following are the supported sizes for each volume type: + // + // * gp2 and gp3: 1 - 16,384 GiB // - // * gp2 and gp3:1-16,384 + // * io1: 4 - 16,384 GiB // - // * io1 and io2: 4-16,384 + // * io2: 4 - 65,536 GiB // - // * st1 and sc1: 125-16,384 + // * st1 and sc1: 125 - 16,384 GiB // - // * standard: 1-1,024 + // * standard: 1 - 1024 GiB VolumeSize *int64 `locationName:"volumeSize" type:"integer"` // The volume type. For more information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon EC2 User Guide. If the volume type is io1 or io2, you must - // specify the IOPS that the volume supports. + // in the Amazon EC2 User Guide. VolumeType *string `locationName:"volumeType" type:"string" enum:"VolumeType"` } @@ -114363,8 +117851,50 @@ return s } +// Launch instances with ENA Express settings configured from your launch template. +type EnaSrdSpecificationRequest struct { + _ struct{} `type:"structure"` + + // Specifies whether ENA Express is enabled for the network interface when you + // launch an instance from your launch template. + EnaSrdEnabled *bool `type:"boolean"` + + // Contains ENA Express settings for UDP network traffic in your launch template. + EnaSrdUdpSpecification *EnaSrdUdpSpecificationRequest `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 EnaSrdSpecificationRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnaSrdSpecificationRequest) GoString() string { + return s.String() +} + +// SetEnaSrdEnabled sets the EnaSrdEnabled field's value. +func (s *EnaSrdSpecificationRequest) SetEnaSrdEnabled(v bool) *EnaSrdSpecificationRequest { + s.EnaSrdEnabled = &v + return s +} + +// SetEnaSrdUdpSpecification sets the EnaSrdUdpSpecification field's value. +func (s *EnaSrdSpecificationRequest) SetEnaSrdUdpSpecification(v *EnaSrdUdpSpecificationRequest) *EnaSrdSpecificationRequest { + s.EnaSrdUdpSpecification = v + return s +} + // ENA Express is compatible with both TCP and UDP transport protocols. When -// it’s enabled, TCP traffic automatically uses it. However, some UDP-based +// it's enabled, TCP traffic automatically uses it. However, some UDP-based // applications are designed to handle network packets that are out of order, // without a need for retransmission, such as live video broadcasting or other // near-real-time applications. For UDP traffic, you can specify whether to @@ -114372,8 +117902,8 @@ type EnaSrdUdpSpecification struct { _ struct{} `type:"structure"` - // Indicates whether UDP traffic uses ENA Express. To specify this setting, - // you must first enable ENA Express. + // Indicates whether UDP traffic to and from the instance uses ENA Express. + // To specify this setting, you must first enable ENA Express. EnaSrdUdpEnabled *bool `type:"boolean"` } @@ -114401,6 +117931,41 @@ return s } +// Configures ENA Express for UDP network traffic from your launch template. +type EnaSrdUdpSpecificationRequest struct { + _ struct{} `type:"structure"` + + // Indicates whether UDP traffic uses ENA Express for your instance. To ensure + // that UDP traffic can use ENA Express when you launch an instance, you must + // also set EnaSrdEnabled in the EnaSrdSpecificationRequest to true in your + // launch template. + EnaSrdUdpEnabled *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 EnaSrdUdpSpecificationRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnaSrdUdpSpecificationRequest) GoString() string { + return s.String() +} + +// SetEnaSrdUdpEnabled sets the EnaSrdUdpEnabled field's value. +func (s *EnaSrdUdpSpecificationRequest) SetEnaSrdUdpEnabled(v bool) *EnaSrdUdpSpecificationRequest { + s.EnaSrdUdpEnabled = &v + return s +} + type EnableAddressTransferInput struct { _ struct{} `type:"structure"` @@ -114681,7 +118246,7 @@ // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // The ID of the image for which you’re enabling faster launching. + // Specify the ID of the image for which to enable Windows fast launch. // // ImageId is a required field ImageId *string `type:"string" required:"true"` @@ -114692,17 +118257,17 @@ LaunchTemplate *FastLaunchLaunchTemplateSpecificationRequest `type:"structure"` // The maximum number of instances that Amazon EC2 can launch at the same time - // to create pre-provisioned snapshots for Windows faster launching. Value must - // be 6 or greater. + // to create pre-provisioned snapshots for Windows fast launch. Value must be + // 6 or greater. MaxParallelLaunches *int64 `type:"integer"` - // The type of resource to use for pre-provisioning the Windows AMI for faster - // launching. Supported values include: snapshot, which is the default value. + // The type of resource to use for pre-provisioning the AMI for Windows fast + // launch. Supported values include: snapshot, which is the default value. ResourceType *string `type:"string"` // Configuration settings for creating and managing the snapshots that are used - // for pre-provisioning the Windows AMI for faster launching. The associated - // ResourceType must be snapshot. + // for pre-provisioning the AMI for Windows fast launch. The associated ResourceType + // must be snapshot. SnapshotConfiguration *FastLaunchSnapshotConfigurationRequest `type:"structure"` } @@ -114781,8 +118346,7 @@ type EnableFastLaunchOutput struct { _ struct{} `type:"structure"` - // The image ID that identifies the Windows AMI for which faster launching was - // enabled. + // The image ID that identifies the AMI for which Windows fast launch was enabled. ImageId *string `locationName:"imageId" type:"string"` // The launch template that is used when launching Windows instances from pre-provisioned @@ -114790,14 +118354,14 @@ LaunchTemplate *FastLaunchLaunchTemplateSpecificationResponse `locationName:"launchTemplate" type:"structure"` // The maximum number of instances that Amazon EC2 can launch at the same time - // to create pre-provisioned snapshots for Windows faster launching. + // to create pre-provisioned snapshots for Windows fast launch. MaxParallelLaunches *int64 `locationName:"maxParallelLaunches" type:"integer"` - // The owner ID for the Windows AMI for which faster launching was enabled. + // The owner ID for the AMI for which Windows fast launch was enabled. OwnerId *string `locationName:"ownerId" type:"string"` - // The type of resource that was defined for pre-provisioning the Windows AMI - // for faster launching. + // The type of resource that was defined for pre-provisioning the AMI for Windows + // fast launch. ResourceType *string `locationName:"resourceType" type:"string" enum:"FastLaunchResourceType"` // Settings to create and manage the pre-provisioned snapshots that Amazon EC2 @@ -114805,13 +118369,13 @@ // when the associated resourceType is snapshot. SnapshotConfiguration *FastLaunchSnapshotConfigurationResponse `locationName:"snapshotConfiguration" type:"structure"` - // The current state of faster launching for the specified Windows AMI. + // The current state of Windows fast launch for the specified AMI. State *string `locationName:"state" type:"string" enum:"FastLaunchStateCode"` - // The reason that the state changed for faster launching for the Windows AMI. + // The reason that the state changed for Windows fast launch for the AMI. StateTransitionReason *string `locationName:"stateTransitionReason" type:"string"` - // The time that the state changed for faster launching for the Windows AMI. + // The time that the state changed for Windows fast launch for the AMI. StateTransitionTime *time.Time `locationName:"stateTransitionTime" type:"timestamp"` } @@ -115459,6 +119023,95 @@ return s } +type EnableImageInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The ID of the AMI. + // + // ImageId is a required field + ImageId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableImageInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableImageInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EnableImageInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnableImageInput"} + if s.ImageId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *EnableImageInput) SetDryRun(v bool) *EnableImageInput { + s.DryRun = &v + return s +} + +// SetImageId sets the ImageId field's value. +func (s *EnableImageInput) SetImageId(v string) *EnableImageInput { + s.ImageId = &v + return s +} + +type EnableImageOutput struct { + _ struct{} `type:"structure"` + + // Returns true if the request succeeds; otherwise, it returns an error. + Return *bool `locationName:"return" 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 EnableImageOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableImageOutput) GoString() string { + return s.String() +} + +// SetReturn sets the Return field's value. +func (s *EnableImageOutput) SetReturn(v bool) *EnableImageOutput { + s.Return = &v + return s +} + type EnableIpamOrganizationAdminAccountInput struct { _ struct{} `type:"structure"` @@ -115680,6 +119333,112 @@ return s } +type EnableSnapshotBlockPublicAccessInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The mode in which to enable block public access for snapshots for the Region. + // Specify one of the following values: + // + // * block-all-sharing - Prevents all public sharing of snapshots in the + // Region. Users in the account will no longer be able to request new public + // sharing. Additionally, snapshots that are already publicly shared are + // treated as private and they are no longer publicly available. If you enable + // block public access for snapshots in block-all-sharing mode, it does not + // change the permissions for snapshots that are already publicly shared. + // Instead, it prevents these snapshots from be publicly visible and publicly + // accessible. Therefore, the attributes for these snapshots still indicate + // that they are publicly shared, even though they are not publicly available. + // + // * block-new-sharing - Prevents only new public sharing of snapshots in + // the Region. Users in the account will no longer be able to request new + // public sharing. However, snapshots that are already publicly shared, remain + // publicly available. + // + // State is a required field + State *string `type:"string" required:"true" enum:"SnapshotBlockPublicAccessState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableSnapshotBlockPublicAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableSnapshotBlockPublicAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EnableSnapshotBlockPublicAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnableSnapshotBlockPublicAccessInput"} + if s.State == nil { + invalidParams.Add(request.NewErrParamRequired("State")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *EnableSnapshotBlockPublicAccessInput) SetDryRun(v bool) *EnableSnapshotBlockPublicAccessInput { + s.DryRun = &v + return s +} + +// SetState sets the State field's value. +func (s *EnableSnapshotBlockPublicAccessInput) SetState(v string) *EnableSnapshotBlockPublicAccessInput { + s.State = &v + return s +} + +type EnableSnapshotBlockPublicAccessOutput struct { + _ struct{} `type:"structure"` + + // The state of block public access for snapshots for the account and Region. + // Returns either block-all-sharing or block-new-sharing if the request succeeds. + State *string `locationName:"state" type:"string" enum:"SnapshotBlockPublicAccessState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableSnapshotBlockPublicAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnableSnapshotBlockPublicAccessOutput) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *EnableSnapshotBlockPublicAccessOutput) SetState(v string) *EnableSnapshotBlockPublicAccessOutput { + s.State = &v + return s +} + type EnableTransitGatewayRouteTablePropagationInput struct { _ struct{} `type:"structure"` @@ -117878,22 +121637,23 @@ return s } -// Request to create a launch template for a fast-launch enabled Windows AMI. +// Request to create a launch template for a Windows fast launch enabled AMI. // // Note - You can specify either the LaunchTemplateName or the LaunchTemplateId, // but not both. type FastLaunchLaunchTemplateSpecificationRequest struct { _ struct{} `type:"structure"` - // The ID of the launch template to use for faster launching for a Windows AMI. + // Specify the ID of the launch template that the AMI should use for Windows + // fast launch. LaunchTemplateId *string `type:"string"` - // The name of the launch template to use for faster launching for a Windows - // AMI. + // Specify the name of the launch template that the AMI should use for Windows + // fast launch. LaunchTemplateName *string `type:"string"` - // The version of the launch template to use for faster launching for a Windows - // AMI. + // Specify the version of the launch template that the AMI should use for Windows + // fast launch. // // Version is a required field Version *string `type:"string" required:"true"` @@ -117948,21 +121708,17 @@ return s } -// Identifies the launch template to use for faster launching of the Windows -// AMI. +// Identifies the launch template that the AMI uses for Windows fast launch. type FastLaunchLaunchTemplateSpecificationResponse struct { _ struct{} `type:"structure"` - // The ID of the launch template for faster launching of the associated Windows - // AMI. + // The ID of the launch template that the AMI uses for Windows fast launch. LaunchTemplateId *string `locationName:"launchTemplateId" type:"string"` - // The name of the launch template for faster launching of the associated Windows - // AMI. + // The name of the launch template that the AMI uses for Windows fast launch. LaunchTemplateName *string `locationName:"launchTemplateName" type:"string"` - // The version of the launch template for faster launching of the associated - // Windows AMI. + // The version of the launch template that the AMI uses for Windows fast launch. Version *string `locationName:"version" type:"string"` } @@ -118003,12 +121759,12 @@ } // Configuration settings for creating and managing pre-provisioned snapshots -// for a fast-launch enabled Windows AMI. +// for a Windows fast launch enabled AMI. type FastLaunchSnapshotConfigurationRequest struct { _ struct{} `type:"structure"` - // The number of pre-provisioned snapshots to keep on hand for a fast-launch - // enabled Windows AMI. + // The number of pre-provisioned snapshots to keep on hand for a Windows fast + // launch enabled AMI. TargetResourceCount *int64 `type:"integer"` } @@ -118037,12 +121793,12 @@ } // Configuration settings for creating and managing pre-provisioned snapshots -// for a fast-launch enabled Windows AMI. +// for a Windows fast launch enabled Windows AMI. type FastLaunchSnapshotConfigurationResponse struct { _ struct{} `type:"structure"` - // The number of pre-provisioned snapshots requested to keep on hand for a fast-launch - // enabled Windows AMI. + // The number of pre-provisioned snapshots requested to keep on hand for a Windows + // fast launch enabled AMI. TargetResourceCount *int64 `locationName:"targetResourceCount" type:"integer"` } @@ -120791,6 +124547,10 @@ // The ID of the local gateway route table. LocalGatewayRouteTableId *string `locationName:"localGatewayRouteTableId" type:"string"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -120829,6 +124589,12 @@ return s } +// SetNextToken sets the NextToken field's value. +func (s *GetCoipPoolUsageOutput) SetNextToken(v string) *GetCoipPoolUsageOutput { + s.NextToken = &v + return s +} + type GetConsoleOutputInput struct { _ struct{} `type:"structure"` @@ -122289,6 +126055,159 @@ return s } +type GetIpamDiscoveredPublicAddressesInput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services Region for the IP address. + // + // AddressRegion is a required field + AddressRegion *string `type:"string" required:"true"` + + // A check for whether you have the required permissions for the action without + // actually making the request and provides an error response. If you have the + // required permissions, the error response is DryRunOperation. Otherwise, it + // is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // Filters. + Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` + + // An IPAM resource discovery ID. + // + // IpamResourceDiscoveryId is a required field + IpamResourceDiscoveryId *string `type:"string" required:"true"` + + // The maximum number of IPAM discovered public addresses to return in one page + // of results. + MaxResults *int64 `min:"5" type:"integer"` + + // The token for the next page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIpamDiscoveredPublicAddressesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIpamDiscoveredPublicAddressesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetIpamDiscoveredPublicAddressesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetIpamDiscoveredPublicAddressesInput"} + if s.AddressRegion == nil { + invalidParams.Add(request.NewErrParamRequired("AddressRegion")) + } + if s.IpamResourceDiscoveryId == nil { + invalidParams.Add(request.NewErrParamRequired("IpamResourceDiscoveryId")) + } + if s.MaxResults != nil && *s.MaxResults < 5 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddressRegion sets the AddressRegion field's value. +func (s *GetIpamDiscoveredPublicAddressesInput) SetAddressRegion(v string) *GetIpamDiscoveredPublicAddressesInput { + s.AddressRegion = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *GetIpamDiscoveredPublicAddressesInput) SetDryRun(v bool) *GetIpamDiscoveredPublicAddressesInput { + s.DryRun = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *GetIpamDiscoveredPublicAddressesInput) SetFilters(v []*Filter) *GetIpamDiscoveredPublicAddressesInput { + s.Filters = v + return s +} + +// SetIpamResourceDiscoveryId sets the IpamResourceDiscoveryId field's value. +func (s *GetIpamDiscoveredPublicAddressesInput) SetIpamResourceDiscoveryId(v string) *GetIpamDiscoveredPublicAddressesInput { + s.IpamResourceDiscoveryId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetIpamDiscoveredPublicAddressesInput) SetMaxResults(v int64) *GetIpamDiscoveredPublicAddressesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetIpamDiscoveredPublicAddressesInput) SetNextToken(v string) *GetIpamDiscoveredPublicAddressesInput { + s.NextToken = &v + return s +} + +type GetIpamDiscoveredPublicAddressesOutput struct { + _ struct{} `type:"structure"` + + // IPAM discovered public addresses. + IpamDiscoveredPublicAddresses []*IpamDiscoveredPublicAddress `locationName:"ipamDiscoveredPublicAddressSet" locationNameList:"item" type:"list"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" type:"string"` + + // The oldest successful resource discovery time. + OldestSampleTime *time.Time `locationName:"oldestSampleTime" 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 GetIpamDiscoveredPublicAddressesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIpamDiscoveredPublicAddressesOutput) GoString() string { + return s.String() +} + +// SetIpamDiscoveredPublicAddresses sets the IpamDiscoveredPublicAddresses field's value. +func (s *GetIpamDiscoveredPublicAddressesOutput) SetIpamDiscoveredPublicAddresses(v []*IpamDiscoveredPublicAddress) *GetIpamDiscoveredPublicAddressesOutput { + s.IpamDiscoveredPublicAddresses = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetIpamDiscoveredPublicAddressesOutput) SetNextToken(v string) *GetIpamDiscoveredPublicAddressesOutput { + s.NextToken = &v + return s +} + +// SetOldestSampleTime sets the OldestSampleTime field's value. +func (s *GetIpamDiscoveredPublicAddressesOutput) SetOldestSampleTime(v time.Time) *GetIpamDiscoveredPublicAddressesOutput { + s.OldestSampleTime = &v + return s +} + type GetIpamDiscoveredResourceCidrsInput struct { _ struct{} `type:"structure"` @@ -123742,6 +127661,149 @@ return s } +type GetSecurityGroupsForVpcInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The filters. If using multiple filters, the results include security groups + // which match all filters. + // + // * group-id: The security group ID. + // + // * description: The security group's description. + // + // * group-name: The security group name. + // + // * owner-id: The security group owner ID. + // + // * primary-vpc-id: The VPC ID in which the security group was created. + Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. For + // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). + MaxResults *int64 `min:"5" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `type:"string"` + + // The VPC ID where the security group can be used. + // + // VpcId is a required field + VpcId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSecurityGroupsForVpcInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSecurityGroupsForVpcInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSecurityGroupsForVpcInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSecurityGroupsForVpcInput"} + if s.MaxResults != nil && *s.MaxResults < 5 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) + } + if s.VpcId == nil { + invalidParams.Add(request.NewErrParamRequired("VpcId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *GetSecurityGroupsForVpcInput) SetDryRun(v bool) *GetSecurityGroupsForVpcInput { + s.DryRun = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *GetSecurityGroupsForVpcInput) SetFilters(v []*Filter) *GetSecurityGroupsForVpcInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetSecurityGroupsForVpcInput) SetMaxResults(v int64) *GetSecurityGroupsForVpcInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetSecurityGroupsForVpcInput) SetNextToken(v string) *GetSecurityGroupsForVpcInput { + s.NextToken = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *GetSecurityGroupsForVpcInput) SetVpcId(v string) *GetSecurityGroupsForVpcInput { + s.VpcId = &v + return s +} + +type GetSecurityGroupsForVpcOutput struct { + _ struct{} `type:"structure"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + NextToken *string `locationName:"nextToken" type:"string"` + + // The security group that can be used by interfaces in the VPC. + SecurityGroupForVpcs []*SecurityGroupForVpc `locationName:"securityGroupForVpcSet" locationNameList:"item" 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 GetSecurityGroupsForVpcOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSecurityGroupsForVpcOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *GetSecurityGroupsForVpcOutput) SetNextToken(v string) *GetSecurityGroupsForVpcOutput { + s.NextToken = &v + return s +} + +// SetSecurityGroupForVpcs sets the SecurityGroupForVpcs field's value. +func (s *GetSecurityGroupsForVpcOutput) SetSecurityGroupForVpcs(v []*SecurityGroupForVpc) *GetSecurityGroupsForVpcOutput { + s.SecurityGroupForVpcs = v + return s +} + type GetSerialConsoleAccessStatusInput struct { _ struct{} `type:"structure"` @@ -123809,6 +127871,83 @@ return s } +type GetSnapshotBlockPublicAccessStateInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *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 GetSnapshotBlockPublicAccessStateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSnapshotBlockPublicAccessStateInput) GoString() string { + return s.String() +} + +// SetDryRun sets the DryRun field's value. +func (s *GetSnapshotBlockPublicAccessStateInput) SetDryRun(v bool) *GetSnapshotBlockPublicAccessStateInput { + s.DryRun = &v + return s +} + +type GetSnapshotBlockPublicAccessStateOutput struct { + _ struct{} `type:"structure"` + + // The current state of block public access for snapshots. Possible values include: + // + // * block-all-sharing - All public sharing of snapshots is blocked. Users + // in the account can't request new public sharing. Additionally, snapshots + // that were already publicly shared are treated as private and are not publicly + // available. + // + // * block-new-sharing - Only new public sharing of snapshots is blocked. + // Users in the account can't request new public sharing. However, snapshots + // that were already publicly shared, remain publicly available. + // + // * unblocked - Public sharing is not blocked. Users can publicly share + // snapshots. + State *string `locationName:"state" type:"string" enum:"SnapshotBlockPublicAccessState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSnapshotBlockPublicAccessStateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSnapshotBlockPublicAccessStateOutput) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *GetSnapshotBlockPublicAccessStateOutput) SetState(v string) *GetSnapshotBlockPublicAccessStateOutput { + s.State = &v + return s +} + type GetSpotPlacementScoresInput struct { _ struct{} `type:"structure"` @@ -125914,6 +130053,15 @@ // Set to true to enable your instance for hibernation. // + // For Spot Instances, if you set Configured to true, either omit the InstanceInterruptionBehavior + // parameter (for SpotMarketOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotMarketOptions.html)), + // or set it to hibernate. When Configured is true: + // + // * If you omit InstanceInterruptionBehavior, it defaults to hibernate. + // + // * If you set InstanceInterruptionBehavior to a value other than hibernate, + // you'll get an error. + // // Default: false Configured *bool `type:"boolean"` } @@ -126957,7 +131105,7 @@ // Specifies whether enhanced networking with ENA is enabled. EnaSupport *bool `locationName:"enaSupport" type:"boolean"` - // The hypervisor type of the image. + // The hypervisor type of the image. Only xen is supported. ovm is not supported. Hypervisor *string `locationName:"hypervisor" type:"string" enum:"HypervisorType"` // The ID of the AMI. @@ -127018,6 +131166,11 @@ // or an instance store volume. RootDeviceType *string `locationName:"rootDeviceType" type:"string" enum:"DeviceType"` + // The ID of the instance that the AMI was created from if the AMI was created + // using CreateImage (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html). + // This field only appears if the AMI was created using CreateImage. + SourceInstanceId *string `locationName:"sourceInstanceId" type:"string"` + // Specifies whether enhanced networking with the Intel 82599 Virtual Function // interface is enabled. SriovNetSupport *string `locationName:"sriovNetSupport" type:"string"` @@ -127207,6 +131360,12 @@ return s } +// SetSourceInstanceId sets the SourceInstanceId field's value. +func (s *Image) SetSourceInstanceId(v string) *Image { + s.SourceInstanceId = &v + return s +} + // SetSriovNetSupport sets the SriovNetSupport field's value. func (s *Image) SetSriovNetSupport(v string) *Image { s.SriovNetSupport = &v @@ -127517,6 +131676,10 @@ Architecture *string `type:"string"` // The boot mode of the virtual machine. + // + // The uefi-preferred boot mode isn't supported for importing images. For more + // information, see Boot modes (https://docs.aws.amazon.com/vm-import/latest/userguide/prerequisites.html#vmimport-boot-modes) + // in the VM Import/Export User Guide. BootMode *string `type:"string" enum:"BootModeValues"` // The client-specific data. @@ -129391,7 +133554,8 @@ // The location where the instance launched, if applicable. Placement *Placement `locationName:"placement" type:"structure"` - // The value is Windows for Windows instances; otherwise blank. + // The platform. This value is windows for Windows instances; otherwise, it + // is empty. Platform *string `locationName:"platform" type:"string" enum:"PlatformValues"` // The platform details value for the instance. For more information, see AMI @@ -129848,6 +134012,96 @@ return s } +// ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology +// to increase the maximum bandwidth used per stream and minimize tail latency +// of network traffic between EC2 instances. With ENA Express, you can communicate +// between two EC2 instances in the same subnet within the same account, or +// in different accounts. Both sending and receiving instances must have ENA +// Express enabled. +// +// To improve the reliability of network packet delivery, ENA Express reorders +// network packets on the receiving end by default. However, some UDP-based +// applications are designed to handle network packets that are out of order +// to reduce the overhead for packet delivery at the network layer. When ENA +// Express is enabled, you can specify whether UDP network traffic uses it. +type InstanceAttachmentEnaSrdSpecification struct { + _ struct{} `type:"structure"` + + // Indicates whether ENA Express is enabled for the network interface. + EnaSrdEnabled *bool `locationName:"enaSrdEnabled" type:"boolean"` + + // Configures ENA Express for UDP network traffic. + EnaSrdUdpSpecification *InstanceAttachmentEnaSrdUdpSpecification `locationName:"enaSrdUdpSpecification" 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 InstanceAttachmentEnaSrdSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceAttachmentEnaSrdSpecification) GoString() string { + return s.String() +} + +// SetEnaSrdEnabled sets the EnaSrdEnabled field's value. +func (s *InstanceAttachmentEnaSrdSpecification) SetEnaSrdEnabled(v bool) *InstanceAttachmentEnaSrdSpecification { + s.EnaSrdEnabled = &v + return s +} + +// SetEnaSrdUdpSpecification sets the EnaSrdUdpSpecification field's value. +func (s *InstanceAttachmentEnaSrdSpecification) SetEnaSrdUdpSpecification(v *InstanceAttachmentEnaSrdUdpSpecification) *InstanceAttachmentEnaSrdSpecification { + s.EnaSrdUdpSpecification = v + return s +} + +// ENA Express is compatible with both TCP and UDP transport protocols. When +// it's enabled, TCP traffic automatically uses it. However, some UDP-based +// applications are designed to handle network packets that are out of order, +// without a need for retransmission, such as live video broadcasting or other +// near-real-time applications. For UDP traffic, you can specify whether to +// use ENA Express, based on your application environment needs. +type InstanceAttachmentEnaSrdUdpSpecification struct { + _ struct{} `type:"structure"` + + // Indicates whether UDP traffic to and from the instance uses ENA Express. + // To specify this setting, you must first enable ENA Express. + EnaSrdUdpEnabled *bool `locationName:"enaSrdUdpEnabled" 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 InstanceAttachmentEnaSrdUdpSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceAttachmentEnaSrdUdpSpecification) GoString() string { + return s.String() +} + +// SetEnaSrdUdpEnabled sets the EnaSrdUdpEnabled field's value. +func (s *InstanceAttachmentEnaSrdUdpSpecification) SetEnaSrdUdpEnabled(v bool) *InstanceAttachmentEnaSrdUdpSpecification { + s.EnaSrdUdpEnabled = &v + return s +} + // Describes a block device mapping. type InstanceBlockDeviceMapping struct { _ struct{} `type:"structure"` @@ -131137,6 +135391,12 @@ // The network interface attachment. Attachment *InstanceNetworkInterfaceAttachment `locationName:"attachment" type:"structure"` + // A security group connection tracking configuration that enables you to set + // the timeout for connection tracking on an Elastic network interface. For + // more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) + // in the Amazon Elastic Compute Cloud User Guide. + ConnectionTrackingConfiguration *ConnectionTrackingSpecificationResponse `locationName:"connectionTrackingConfiguration" type:"structure"` + // The description. Description *string `locationName:"description" type:"string"` @@ -131218,6 +135478,12 @@ return s } +// SetConnectionTrackingConfiguration sets the ConnectionTrackingConfiguration field's value. +func (s *InstanceNetworkInterface) SetConnectionTrackingConfiguration(v *ConnectionTrackingSpecificationResponse) *InstanceNetworkInterface { + s.ConnectionTrackingConfiguration = v + return s +} + // SetDescription sets the Description field's value. func (s *InstanceNetworkInterface) SetDescription(v string) *InstanceNetworkInterface { s.Description = &v @@ -131398,6 +135664,10 @@ // The index of the device on the instance for the network interface attachment. DeviceIndex *int64 `locationName:"deviceIndex" type:"integer"` + // Contains the ENA Express settings for the network interface that's attached + // to the instance. + EnaSrdSpecification *InstanceAttachmentEnaSrdSpecification `locationName:"enaSrdSpecification" type:"structure"` + // The index of the network card. NetworkCardIndex *int64 `locationName:"networkCardIndex" type:"integer"` @@ -131447,6 +135717,12 @@ return s } +// SetEnaSrdSpecification sets the EnaSrdSpecification field's value. +func (s *InstanceNetworkInterfaceAttachment) SetEnaSrdSpecification(v *InstanceAttachmentEnaSrdSpecification) *InstanceNetworkInterfaceAttachment { + s.EnaSrdSpecification = v + return s +} + // SetNetworkCardIndex sets the NetworkCardIndex field's value. func (s *InstanceNetworkInterfaceAttachment) SetNetworkCardIndex(v int64) *InstanceNetworkInterfaceAttachment { s.NetworkCardIndex = &v @@ -131478,6 +135754,12 @@ // launching into a default subnet, the default value is true. AssociatePublicIpAddress *bool `locationName:"associatePublicIpAddress" type:"boolean"` + // A security group connection tracking specification that enables you to set + // the timeout for connection tracking on an Elastic network interface. For + // more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) + // in the Amazon Elastic Compute Cloud User Guide. + ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest `type:"structure"` + // If set to true, the interface is deleted when the instance is terminated. // You can specify true only if creating a new network interface when launching // an instance. @@ -131494,6 +135776,10 @@ // the device index. DeviceIndex *int64 `locationName:"deviceIndex" type:"integer"` + // Specifies the ENA Express settings for the network interface that's attached + // to the instance. + EnaSrdSpecification *EnaSrdSpecificationRequest `type:"structure"` + // The IDs of the security groups for the network interface. Applies only if // creating a network interface when launching an instance. Groups []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` @@ -131609,6 +135895,12 @@ return s } +// SetConnectionTrackingSpecification sets the ConnectionTrackingSpecification field's value. +func (s *InstanceNetworkInterfaceSpecification) SetConnectionTrackingSpecification(v *ConnectionTrackingSpecificationRequest) *InstanceNetworkInterfaceSpecification { + s.ConnectionTrackingSpecification = v + return s +} + // SetDeleteOnTermination sets the DeleteOnTermination field's value. func (s *InstanceNetworkInterfaceSpecification) SetDeleteOnTermination(v bool) *InstanceNetworkInterfaceSpecification { s.DeleteOnTermination = &v @@ -131627,6 +135919,12 @@ return s } +// SetEnaSrdSpecification sets the EnaSrdSpecification field's value. +func (s *InstanceNetworkInterfaceSpecification) SetEnaSrdSpecification(v *EnaSrdSpecificationRequest) *InstanceNetworkInterfaceSpecification { + s.EnaSrdSpecification = v + return s +} + // SetGroups sets the Groups field's value. func (s *InstanceNetworkInterfaceSpecification) SetGroups(v []*string) *InstanceNetworkInterfaceSpecification { s.Groups = v @@ -131805,8 +136103,10 @@ // or with the RunInstances API (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html), // you can't specify InstanceRequirements. // -// For more information, see Attribute-based instance type selection for EC2 -// Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), +// For more information, see Create a mixed instances group using attribute-based +// instance type selection (https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-mixed-instances-group-attribute-based-instance-type-selection.html) +// in the Amazon EC2 Auto Scaling User Guide, and also Attribute-based instance +// type selection for EC2 Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), // Attribute-based instance type selection for Spot Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), // and Spot placement score (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) // in the Amazon EC2 User Guide. @@ -131823,11 +136123,13 @@ // Indicates whether instance types must have accelerators by specific manufacturers. // - // * For instance types with NVIDIA devices, specify nvidia. + // * For instance types with Amazon Web Services devices, specify amazon-web-services. // // * For instance types with AMD devices, specify amd. // - // * For instance types with Amazon Web Services devices, specify amazon-web-services. + // * For instance types with Habana devices, specify habana. + // + // * For instance types with NVIDIA devices, specify nvidia. // // * For instance types with Xilinx devices, specify xilinx. // @@ -131836,24 +136138,30 @@ // The accelerators that must be on the instance type. // + // * For instance types with NVIDIA A10G GPUs, specify a10g. + // // * For instance types with NVIDIA A100 GPUs, specify a100. // - // * For instance types with NVIDIA V100 GPUs, specify v100. + // * For instance types with NVIDIA H100 GPUs, specify h100. // - // * For instance types with NVIDIA K80 GPUs, specify k80. + // * For instance types with Amazon Web Services Inferentia chips, specify + // inferentia. // - // * For instance types with NVIDIA T4 GPUs, specify t4. + // * For instance types with NVIDIA GRID K520 GPUs, specify k520. + // + // * For instance types with NVIDIA K80 GPUs, specify k80. // // * For instance types with NVIDIA M60 GPUs, specify m60. // // * For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520. // - // * For instance types with Xilinx VU9P FPGAs, specify vu9p. + // * For instance types with NVIDIA T4 GPUs, specify t4. // - // * For instance types with Amazon Web Services Inferentia chips, specify - // inferentia. + // * For instance types with NVIDIA T4G GPUs, specify t4g. // - // * For instance types with NVIDIA GRID K520 GPUs, specify k520. + // * For instance types with Xilinx VU9P FPGAs, specify vu9p. + // + // * For instance types with NVIDIA V100 GPUs, specify v100. // // Default: Any accelerator AcceleratorNames []*string `locationName:"acceleratorNameSet" locationNameList:"item" type:"list" enum:"AcceleratorName"` @@ -132267,11 +136575,13 @@ // Indicates whether instance types must have accelerators by specific manufacturers. // - // * For instance types with NVIDIA devices, specify nvidia. + // * For instance types with Amazon Web Services devices, specify amazon-web-services. // // * For instance types with AMD devices, specify amd. // - // * For instance types with Amazon Web Services devices, specify amazon-web-services. + // * For instance types with Habana devices, specify habana. + // + // * For instance types with NVIDIA devices, specify nvidia. // // * For instance types with Xilinx devices, specify xilinx. // @@ -132280,24 +136590,30 @@ // The accelerators that must be on the instance type. // + // * For instance types with NVIDIA A10G GPUs, specify a10g. + // // * For instance types with NVIDIA A100 GPUs, specify a100. // - // * For instance types with NVIDIA V100 GPUs, specify v100. + // * For instance types with NVIDIA H100 GPUs, specify h100. // - // * For instance types with NVIDIA K80 GPUs, specify k80. + // * For instance types with Amazon Web Services Inferentia chips, specify + // inferentia. // - // * For instance types with NVIDIA T4 GPUs, specify t4. + // * For instance types with NVIDIA GRID K520 GPUs, specify k520. + // + // * For instance types with NVIDIA K80 GPUs, specify k80. // // * For instance types with NVIDIA M60 GPUs, specify m60. // // * For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520. // - // * For instance types with Xilinx VU9P FPGAs, specify vu9p. + // * For instance types with NVIDIA T4 GPUs, specify t4. // - // * For instance types with Amazon Web Services Inferentia chips, specify - // inferentia. + // * For instance types with NVIDIA T4G GPUs, specify t4g. // - // * For instance types with NVIDIA GRID K520 GPUs, specify k520. + // * For instance types with Xilinx VU9P FPGAs, specify vu9p. + // + // * For instance types with NVIDIA V100 GPUs, specify v100. // // Default: Any accelerator AcceleratorNames []*string `locationName:"AcceleratorName" locationNameList:"item" type:"list" enum:"AcceleratorName"` @@ -133318,6 +137634,85 @@ return s } +// Information about the instance topology. +type InstanceTopology struct { + _ struct{} `type:"structure"` + + // The name of the Availability Zone or Local Zone that the instance is in. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The name of the placement group that the instance is in. + GroupName *string `locationName:"groupName" type:"string"` + + // The instance ID. + InstanceId *string `locationName:"instanceId" type:"string"` + + // The instance type. + InstanceType *string `locationName:"instanceType" type:"string"` + + // The network nodes. The nodes are hashed based on your account. Instances + // from different accounts running under the same droplet will return a different + // hashed list of strings. + NetworkNodes []*string `locationName:"networkNodeSet" locationNameList:"item" type:"list"` + + // The ID of the Availability Zone or Local Zone that the instance is in. + ZoneId *string `locationName:"zoneId" 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 InstanceTopology) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InstanceTopology) GoString() string { + return s.String() +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *InstanceTopology) SetAvailabilityZone(v string) *InstanceTopology { + s.AvailabilityZone = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *InstanceTopology) SetGroupName(v string) *InstanceTopology { + s.GroupName = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *InstanceTopology) SetInstanceId(v string) *InstanceTopology { + s.InstanceId = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *InstanceTopology) SetInstanceType(v string) *InstanceTopology { + s.InstanceType = &v + return s +} + +// SetNetworkNodes sets the NetworkNodes field's value. +func (s *InstanceTopology) SetNetworkNodes(v []*string) *InstanceTopology { + s.NetworkNodes = v + return s +} + +// SetZoneId sets the ZoneId field's value. +func (s *InstanceTopology) SetZoneId(v string) *InstanceTopology { + s.ZoneId = &v + return s +} + // Describes the instance type. type InstanceTypeInfo struct { _ struct{} `type:"structure"` @@ -134073,11 +138468,19 @@ // The state of the IPAM. State *string `locationName:"state" type:"string" enum:"IpamState"` + // The state message. + StateMessage *string `locationName:"stateMessage" type:"string"` + // The key/value combination of a tag assigned to the resource. Use the tag // key in the filter name and the tag value as the filter value. For example, // to find all resources that have a tag with the key Owner and the value TeamA, // specify tag:Owner for the filter name and TeamA for the filter value. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` + + // IPAM is offered in a Free Tier and an Advanced Tier. For more information + // about the features available in each tier and the costs associated with the + // tiers, see Amazon VPC pricing > IPAM tab (http://aws.amazon.com/vpc/pricing/). + Tier *string `locationName:"tier" type:"string" enum:"IpamTier"` } // String returns the string representation. @@ -134176,12 +138579,24 @@ return s } +// SetStateMessage sets the StateMessage field's value. +func (s *Ipam) SetStateMessage(v string) *Ipam { + s.StateMessage = &v + return s +} + // SetTags sets the Tags field's value. func (s *Ipam) SetTags(v []*Tag) *Ipam { s.Tags = v return s } +// SetTier sets the Tier field's value. +func (s *Ipam) SetTier(v string) *Ipam { + s.Tier = &v + return s +} + // The historical record of a CIDR within an IPAM scope. For more information, // see View the history of IP addresses (https://docs.aws.amazon.com/vpc/latest/ipam/view-history-cidr-ipam.html) // in the Amazon VPC IPAM User Guide. @@ -134430,6 +138845,203 @@ return s } +// A public IP Address discovered by IPAM. +type IpamDiscoveredPublicAddress struct { + _ struct{} `type:"structure"` + + // The IP address. + Address *string `locationName:"address" type:"string"` + + // The allocation ID of the resource the IP address is assigned to. + AddressAllocationId *string `locationName:"addressAllocationId" type:"string"` + + // The ID of the owner of the resource the IP address is assigned to. + AddressOwnerId *string `locationName:"addressOwnerId" type:"string"` + + // The Region of the resource the IP address is assigned to. + AddressRegion *string `locationName:"addressRegion" type:"string"` + + // The IP address type. + AddressType *string `locationName:"addressType" type:"string" enum:"IpamPublicAddressType"` + + // The association status. + AssociationStatus *string `locationName:"associationStatus" type:"string" enum:"IpamPublicAddressAssociationStatus"` + + // The instance ID of the instance the assigned IP address is assigned to. + InstanceId *string `locationName:"instanceId" type:"string"` + + // The resource discovery ID. + IpamResourceDiscoveryId *string `locationName:"ipamResourceDiscoveryId" type:"string"` + + // The network border group that the resource that the IP address is assigned + // to is in. + NetworkBorderGroup *string `locationName:"networkBorderGroup" type:"string"` + + // The description of the network interface that IP address is assigned to. + NetworkInterfaceDescription *string `locationName:"networkInterfaceDescription" type:"string"` + + // The network interface ID of the resource with the assigned IP address. + NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` + + // The ID of the public IPv4 pool that the resource with the assigned IP address + // is from. + PublicIpv4PoolId *string `locationName:"publicIpv4PoolId" type:"string"` + + // The last successful resource discovery time. + SampleTime *time.Time `locationName:"sampleTime" type:"timestamp"` + + // Security groups associated with the resource that the IP address is assigned + // to. + SecurityGroups []*IpamPublicAddressSecurityGroup `locationName:"securityGroupSet" locationNameList:"item" type:"list"` + + // The Amazon Web Services service associated with the IP address. + Service *string `locationName:"service" type:"string" enum:"IpamPublicAddressAwsService"` + + // The resource ARN or ID. + ServiceResource *string `locationName:"serviceResource" type:"string"` + + // The ID of the subnet that the resource with the assigned IP address is in. + SubnetId *string `locationName:"subnetId" type:"string"` + + // Tags associated with the IP address. + Tags *IpamPublicAddressTags `locationName:"tags" type:"structure"` + + // The ID of the VPC that the resource with the assigned IP address is in. + 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 IpamDiscoveredPublicAddress) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamDiscoveredPublicAddress) GoString() string { + return s.String() +} + +// SetAddress sets the Address field's value. +func (s *IpamDiscoveredPublicAddress) SetAddress(v string) *IpamDiscoveredPublicAddress { + s.Address = &v + return s +} + +// SetAddressAllocationId sets the AddressAllocationId field's value. +func (s *IpamDiscoveredPublicAddress) SetAddressAllocationId(v string) *IpamDiscoveredPublicAddress { + s.AddressAllocationId = &v + return s +} + +// SetAddressOwnerId sets the AddressOwnerId field's value. +func (s *IpamDiscoveredPublicAddress) SetAddressOwnerId(v string) *IpamDiscoveredPublicAddress { + s.AddressOwnerId = &v + return s +} + +// SetAddressRegion sets the AddressRegion field's value. +func (s *IpamDiscoveredPublicAddress) SetAddressRegion(v string) *IpamDiscoveredPublicAddress { + s.AddressRegion = &v + return s +} + +// SetAddressType sets the AddressType field's value. +func (s *IpamDiscoveredPublicAddress) SetAddressType(v string) *IpamDiscoveredPublicAddress { + s.AddressType = &v + return s +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *IpamDiscoveredPublicAddress) SetAssociationStatus(v string) *IpamDiscoveredPublicAddress { + s.AssociationStatus = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *IpamDiscoveredPublicAddress) SetInstanceId(v string) *IpamDiscoveredPublicAddress { + s.InstanceId = &v + return s +} + +// SetIpamResourceDiscoveryId sets the IpamResourceDiscoveryId field's value. +func (s *IpamDiscoveredPublicAddress) SetIpamResourceDiscoveryId(v string) *IpamDiscoveredPublicAddress { + s.IpamResourceDiscoveryId = &v + return s +} + +// SetNetworkBorderGroup sets the NetworkBorderGroup field's value. +func (s *IpamDiscoveredPublicAddress) SetNetworkBorderGroup(v string) *IpamDiscoveredPublicAddress { + s.NetworkBorderGroup = &v + return s +} + +// SetNetworkInterfaceDescription sets the NetworkInterfaceDescription field's value. +func (s *IpamDiscoveredPublicAddress) SetNetworkInterfaceDescription(v string) *IpamDiscoveredPublicAddress { + s.NetworkInterfaceDescription = &v + return s +} + +// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. +func (s *IpamDiscoveredPublicAddress) SetNetworkInterfaceId(v string) *IpamDiscoveredPublicAddress { + s.NetworkInterfaceId = &v + return s +} + +// SetPublicIpv4PoolId sets the PublicIpv4PoolId field's value. +func (s *IpamDiscoveredPublicAddress) SetPublicIpv4PoolId(v string) *IpamDiscoveredPublicAddress { + s.PublicIpv4PoolId = &v + return s +} + +// SetSampleTime sets the SampleTime field's value. +func (s *IpamDiscoveredPublicAddress) SetSampleTime(v time.Time) *IpamDiscoveredPublicAddress { + s.SampleTime = &v + return s +} + +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *IpamDiscoveredPublicAddress) SetSecurityGroups(v []*IpamPublicAddressSecurityGroup) *IpamDiscoveredPublicAddress { + s.SecurityGroups = v + return s +} + +// SetService sets the Service field's value. +func (s *IpamDiscoveredPublicAddress) SetService(v string) *IpamDiscoveredPublicAddress { + s.Service = &v + return s +} + +// SetServiceResource sets the ServiceResource field's value. +func (s *IpamDiscoveredPublicAddress) SetServiceResource(v string) *IpamDiscoveredPublicAddress { + s.ServiceResource = &v + return s +} + +// SetSubnetId sets the SubnetId field's value. +func (s *IpamDiscoveredPublicAddress) SetSubnetId(v string) *IpamDiscoveredPublicAddress { + s.SubnetId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *IpamDiscoveredPublicAddress) SetTags(v *IpamPublicAddressTags) *IpamDiscoveredPublicAddress { + s.Tags = v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *IpamDiscoveredPublicAddress) SetVpcId(v string) *IpamDiscoveredPublicAddress { + s.VpcId = &v + return s +} + // An IPAM discovered resource CIDR. A discovered resource is a resource CIDR // monitored under a resource discovery. The following resources can be discovered: // VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses. The discovered @@ -134767,10 +139379,13 @@ // pool within an existing source pool. SourceIpamPoolId *string `locationName:"sourceIpamPoolId" type:"string"` + // The resource used to provision CIDRs to a resource planning pool. + SourceResource *IpamPoolSourceResource `locationName:"sourceResource" type:"structure"` + // The state of the IPAM pool. State *string `locationName:"state" type:"string" enum:"IpamPoolState"` - // A message related to the failed creation of an IPAM pool. + // The state message. StateMessage *string `locationName:"stateMessage" type:"string"` // The key/value combination of a tag assigned to the resource. Use the tag @@ -134918,6 +139533,12 @@ return s } +// SetSourceResource sets the SourceResource field's value. +func (s *IpamPool) SetSourceResource(v *IpamPoolSourceResource) *IpamPool { + s.SourceResource = v + return s +} + // SetState sets the State field's value. func (s *IpamPool) SetState(v string) *IpamPool { s.State = &v @@ -135141,6 +139762,238 @@ return s } +// The resource used to provision CIDRs to a resource planning pool. +type IpamPoolSourceResource struct { + _ struct{} `type:"structure"` + + // The source resource ID. + ResourceId *string `locationName:"resourceId" type:"string"` + + // The source resource owner. + ResourceOwner *string `locationName:"resourceOwner" type:"string"` + + // The source resource Region. + ResourceRegion *string `locationName:"resourceRegion" type:"string"` + + // The source resource type. + ResourceType *string `locationName:"resourceType" type:"string" enum:"IpamPoolSourceResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPoolSourceResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPoolSourceResource) GoString() string { + return s.String() +} + +// SetResourceId sets the ResourceId field's value. +func (s *IpamPoolSourceResource) SetResourceId(v string) *IpamPoolSourceResource { + s.ResourceId = &v + return s +} + +// SetResourceOwner sets the ResourceOwner field's value. +func (s *IpamPoolSourceResource) SetResourceOwner(v string) *IpamPoolSourceResource { + s.ResourceOwner = &v + return s +} + +// SetResourceRegion sets the ResourceRegion field's value. +func (s *IpamPoolSourceResource) SetResourceRegion(v string) *IpamPoolSourceResource { + s.ResourceRegion = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *IpamPoolSourceResource) SetResourceType(v string) *IpamPoolSourceResource { + s.ResourceType = &v + return s +} + +// The resource used to provision CIDRs to a resource planning pool. +type IpamPoolSourceResourceRequest struct { + _ struct{} `type:"structure"` + + // The source resource ID. + ResourceId *string `type:"string"` + + // The source resource owner. + ResourceOwner *string `type:"string"` + + // The source resource Region. + ResourceRegion *string `type:"string"` + + // The source resource type. + ResourceType *string `type:"string" enum:"IpamPoolSourceResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPoolSourceResourceRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPoolSourceResourceRequest) GoString() string { + return s.String() +} + +// SetResourceId sets the ResourceId field's value. +func (s *IpamPoolSourceResourceRequest) SetResourceId(v string) *IpamPoolSourceResourceRequest { + s.ResourceId = &v + return s +} + +// SetResourceOwner sets the ResourceOwner field's value. +func (s *IpamPoolSourceResourceRequest) SetResourceOwner(v string) *IpamPoolSourceResourceRequest { + s.ResourceOwner = &v + return s +} + +// SetResourceRegion sets the ResourceRegion field's value. +func (s *IpamPoolSourceResourceRequest) SetResourceRegion(v string) *IpamPoolSourceResourceRequest { + s.ResourceRegion = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *IpamPoolSourceResourceRequest) SetResourceType(v string) *IpamPoolSourceResourceRequest { + s.ResourceType = &v + return s +} + +// The security group that the resource with the public IP address is in. +type IpamPublicAddressSecurityGroup struct { + _ struct{} `type:"structure"` + + // The security group's ID. + GroupId *string `locationName:"groupId" type:"string"` + + // The security group's name. + GroupName *string `locationName:"groupName" 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 IpamPublicAddressSecurityGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPublicAddressSecurityGroup) GoString() string { + return s.String() +} + +// SetGroupId sets the GroupId field's value. +func (s *IpamPublicAddressSecurityGroup) SetGroupId(v string) *IpamPublicAddressSecurityGroup { + s.GroupId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *IpamPublicAddressSecurityGroup) SetGroupName(v string) *IpamPublicAddressSecurityGroup { + s.GroupName = &v + return s +} + +// A tag for a public IP address discovered by IPAM. +type IpamPublicAddressTag struct { + _ struct{} `type:"structure"` + + // The tag's key. + Key *string `locationName:"key" type:"string"` + + // The tag's value. + Value *string `locationName:"value" 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 IpamPublicAddressTag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPublicAddressTag) GoString() string { + return s.String() +} + +// SetKey sets the Key field's value. +func (s *IpamPublicAddressTag) SetKey(v string) *IpamPublicAddressTag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *IpamPublicAddressTag) SetValue(v string) *IpamPublicAddressTag { + s.Value = &v + return s +} + +// Tags for a public IP address discovered by IPAM. +type IpamPublicAddressTags struct { + _ struct{} `type:"structure"` + + // Tags for an Elastic IP address. + EipTags []*IpamPublicAddressTag `locationName:"eipTagSet" locationNameList:"item" 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 IpamPublicAddressTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpamPublicAddressTags) GoString() string { + return s.String() +} + +// SetEipTags sets the EipTags field's value. +func (s *IpamPublicAddressTags) SetEipTags(v []*IpamPublicAddressTag) *IpamPublicAddressTags { + s.EipTags = v + return s +} + // The CIDR for an IPAM resource. type IpamResourceCidr struct { _ struct{} `type:"structure"` @@ -137220,18 +142073,17 @@ // // The following are the supported values for each volume type: // - // * gp3: 3,000-16,000 IOPS + // * gp3: 3,000 - 16,000 IOPS // - // * io1: 100-64,000 IOPS + // * io1: 100 - 64,000 IOPS // - // * io2: 100-64,000 IOPS + // * io2: 100 - 256,000 IOPS // - // For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built - // on the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. + // For io2 volumes, you can achieve up to 256,000 IOPS on instances built on + // the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). + // On other instances, you can achieve performance up to 32,000 IOPS. // - // This parameter is supported for io1, io2, and gp3 volumes only. This parameter - // is not supported for gp2, st1, sc1, or standard volumes. + // This parameter is supported for io1, io2, and gp3 volumes only. Iops *int64 `type:"integer"` // The ARN of the symmetric Key Management Service (KMS) CMK used for encryption. @@ -137249,13 +142101,15 @@ // a volume size. The following are the supported volumes sizes for each volume // type: // - // * gp2 and gp3: 1-16,384 + // * gp2 and gp3: 1 - 16,384 GiB + // + // * io1: 4 - 16,384 GiB // - // * io1 and io2: 4-16,384 + // * io2: 4 - 65,536 GiB // - // * st1 and sc1: 125-16,384 + // * st1 and sc1: 125 - 16,384 GiB // - // * standard: 1-1,024 + // * standard: 1 - 1024 GiB VolumeSize *int64 `type:"integer"` // The volume type. For more information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) @@ -137435,6 +142289,96 @@ return s } +// ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology +// to increase the maximum bandwidth used per stream and minimize tail latency +// of network traffic between EC2 instances. With ENA Express, you can communicate +// between two EC2 instances in the same subnet within the same account, or +// in different accounts. Both sending and receiving instances must have ENA +// Express enabled. +// +// To improve the reliability of network packet delivery, ENA Express reorders +// network packets on the receiving end by default. However, some UDP-based +// applications are designed to handle network packets that are out of order +// to reduce the overhead for packet delivery at the network layer. When ENA +// Express is enabled, you can specify whether UDP network traffic uses it. +type LaunchTemplateEnaSrdSpecification struct { + _ struct{} `type:"structure"` + + // Indicates whether ENA Express is enabled for the network interface. + EnaSrdEnabled *bool `locationName:"enaSrdEnabled" type:"boolean"` + + // Configures ENA Express for UDP network traffic. + EnaSrdUdpSpecification *LaunchTemplateEnaSrdUdpSpecification `locationName:"enaSrdUdpSpecification" 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 LaunchTemplateEnaSrdSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchTemplateEnaSrdSpecification) GoString() string { + return s.String() +} + +// SetEnaSrdEnabled sets the EnaSrdEnabled field's value. +func (s *LaunchTemplateEnaSrdSpecification) SetEnaSrdEnabled(v bool) *LaunchTemplateEnaSrdSpecification { + s.EnaSrdEnabled = &v + return s +} + +// SetEnaSrdUdpSpecification sets the EnaSrdUdpSpecification field's value. +func (s *LaunchTemplateEnaSrdSpecification) SetEnaSrdUdpSpecification(v *LaunchTemplateEnaSrdUdpSpecification) *LaunchTemplateEnaSrdSpecification { + s.EnaSrdUdpSpecification = v + return s +} + +// ENA Express is compatible with both TCP and UDP transport protocols. When +// it's enabled, TCP traffic automatically uses it. However, some UDP-based +// applications are designed to handle network packets that are out of order, +// without a need for retransmission, such as live video broadcasting or other +// near-real-time applications. For UDP traffic, you can specify whether to +// use ENA Express, based on your application environment needs. +type LaunchTemplateEnaSrdUdpSpecification struct { + _ struct{} `type:"structure"` + + // Indicates whether UDP traffic to and from the instance uses ENA Express. + // To specify this setting, you must first enable ENA Express. + EnaSrdUdpEnabled *bool `locationName:"enaSrdUdpEnabled" 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 LaunchTemplateEnaSrdUdpSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchTemplateEnaSrdUdpSpecification) GoString() string { + return s.String() +} + +// SetEnaSrdUdpEnabled sets the EnaSrdUdpEnabled field's value. +func (s *LaunchTemplateEnaSrdUdpSpecification) SetEnaSrdUdpEnabled(v bool) *LaunchTemplateEnaSrdUdpSpecification { + s.EnaSrdUdpEnabled = &v + return s +} + // Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. type LaunchTemplateEnclaveOptions struct { _ struct{} `type:"structure"` @@ -138032,6 +142976,12 @@ // network interface. AssociatePublicIpAddress *bool `locationName:"associatePublicIpAddress" type:"boolean"` + // A security group connection tracking specification that enables you to set + // the timeout for connection tracking on an Elastic network interface. For + // more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) + // in the Amazon Elastic Compute Cloud User Guide. + ConnectionTrackingSpecification *ConnectionTrackingSpecification `locationName:"connectionTrackingSpecification" type:"structure"` + // Indicates whether the network interface is deleted when the instance is terminated. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` @@ -138041,6 +142991,10 @@ // The device index for the network interface attachment. DeviceIndex *int64 `locationName:"deviceIndex" type:"integer"` + // Contains the ENA Express settings for instances launched from your launch + // template. + EnaSrdSpecification *LaunchTemplateEnaSrdSpecification `locationName:"enaSrdSpecification" type:"structure"` + // The IDs of one or more security groups. Groups []*string `locationName:"groupSet" locationNameList:"groupId" type:"list"` @@ -138123,6 +143077,12 @@ return s } +// SetConnectionTrackingSpecification sets the ConnectionTrackingSpecification field's value. +func (s *LaunchTemplateInstanceNetworkInterfaceSpecification) SetConnectionTrackingSpecification(v *ConnectionTrackingSpecification) *LaunchTemplateInstanceNetworkInterfaceSpecification { + s.ConnectionTrackingSpecification = v + return s +} + // SetDeleteOnTermination sets the DeleteOnTermination field's value. func (s *LaunchTemplateInstanceNetworkInterfaceSpecification) SetDeleteOnTermination(v bool) *LaunchTemplateInstanceNetworkInterfaceSpecification { s.DeleteOnTermination = &v @@ -138141,6 +143101,12 @@ return s } +// SetEnaSrdSpecification sets the EnaSrdSpecification field's value. +func (s *LaunchTemplateInstanceNetworkInterfaceSpecification) SetEnaSrdSpecification(v *LaunchTemplateEnaSrdSpecification) *LaunchTemplateInstanceNetworkInterfaceSpecification { + s.EnaSrdSpecification = v + return s +} + // SetGroups sets the Groups field's value. func (s *LaunchTemplateInstanceNetworkInterfaceSpecification) SetGroups(v []*string) *LaunchTemplateInstanceNetworkInterfaceSpecification { s.Groups = v @@ -138246,6 +143212,12 @@ // Associates a public IPv4 address with eth0 for a new network interface. AssociatePublicIpAddress *bool `type:"boolean"` + // A security group connection tracking specification that enables you to set + // the timeout for connection tracking on an Elastic network interface. For + // more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) + // in the Amazon Elastic Compute Cloud User Guide. + ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest `type:"structure"` + // Indicates whether the network interface is deleted when the instance is terminated. DeleteOnTermination *bool `type:"boolean"` @@ -138255,6 +143227,9 @@ // The device index for the network interface attachment. DeviceIndex *int64 `type:"integer"` + // Configure ENA Express settings for your launch template. + EnaSrdSpecification *EnaSrdSpecificationRequest `type:"structure"` + // The IDs of one or more security groups. Groups []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` @@ -138350,6 +143325,12 @@ return s } +// SetConnectionTrackingSpecification sets the ConnectionTrackingSpecification field's value. +func (s *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest) SetConnectionTrackingSpecification(v *ConnectionTrackingSpecificationRequest) *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { + s.ConnectionTrackingSpecification = v + return s +} + // SetDeleteOnTermination sets the DeleteOnTermination field's value. func (s *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest) SetDeleteOnTermination(v bool) *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { s.DeleteOnTermination = &v @@ -138368,6 +143349,12 @@ return s } +// SetEnaSrdSpecification sets the EnaSrdSpecification field's value. +func (s *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest) SetEnaSrdSpecification(v *EnaSrdSpecificationRequest) *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { + s.EnaSrdSpecification = v + return s +} + // SetGroups sets the Groups field's value. func (s *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest) SetGroups(v []*string) *LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { s.Groups = v @@ -139231,9 +144218,12 @@ // The type of resource to tag. // - // The Valid Values are all the resource types that can be tagged. However, - // when creating a launch template, you can specify tags for the following resource - // types only: instance | volume | elastic-gpu | network-interface | spot-instances-request + // Valid Values lists all resource types for Amazon EC2 that can be tagged. + // When you create a launch template, you can specify tags for the following + // resource types only: instance | volume | elastic-gpu | network-interface + // | spot-instances-request. If the instance does not include the resource type + // that you specify, the instance launch fails. For example, not all instance + // types include an Elastic GPU. // // To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html). ResourceType *string `type:"string" enum:"ResourceType"` @@ -140584,6 +145574,389 @@ return s } +type LockSnapshotInput struct { + _ struct{} `type:"structure"` + + // The cooling-off period during which you can unlock the snapshot or modify + // the lock settings after locking the snapshot in compliance mode, in hours. + // After the cooling-off period expires, you can't unlock or delete the snapshot, + // decrease the lock duration, or change the lock mode. You can increase the + // lock duration after the cooling-off period expires. + // + // The cooling-off period is optional when locking a snapshot in compliance + // mode. If you are locking the snapshot in governance mode, omit this parameter. + // + // To lock the snapshot in compliance mode immediately without a cooling-off + // period, omit this parameter. + // + // If you are extending the lock duration for a snapshot that is locked in compliance + // mode after the cooling-off period has expired, omit this parameter. If you + // specify a cooling-period in a such a request, the request fails. + // + // Allowed values: Min 1, max 72. + CoolOffPeriod *int64 `min:"1" type:"integer"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The date and time at which the snapshot lock is to automatically expire, + // in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ). + // + // You must specify either this parameter or LockDuration, but not both. + ExpirationDate *time.Time `type:"timestamp"` + + // The period of time for which to lock the snapshot, in days. The snapshot + // lock will automatically expire after this period lapses. + // + // You must specify either this parameter or ExpirationDate, but not both. + // + // Allowed values: Min: 1, max 36500 + LockDuration *int64 `min:"1" type:"integer"` + + // The mode in which to lock the snapshot. Specify one of the following: + // + // * governance - Locks the snapshot in governance mode. Snapshots locked + // in governance mode can't be deleted until one of the following conditions + // are met: The lock duration expires. The snapshot is unlocked by a user + // with the appropriate permissions. Users with the appropriate IAM permissions + // can unlock the snapshot, increase or decrease the lock duration, and change + // the lock mode to compliance at any time. If you lock a snapshot in governance + // mode, omit CoolOffPeriod. + // + // * compliance - Locks the snapshot in compliance mode. Snapshots locked + // in compliance mode can't be unlocked by any user. They can be deleted + // only after the lock duration expires. Users can't decrease the lock duration + // or change the lock mode to governance. However, users with appropriate + // IAM permissions can increase the lock duration at any time. If you lock + // a snapshot in compliance mode, you can optionally specify CoolOffPeriod. + // + // LockMode is a required field + LockMode *string `type:"string" required:"true" enum:"LockMode"` + + // The ID of the snapshot to lock. + // + // SnapshotId is a required field + SnapshotId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LockSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LockSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LockSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LockSnapshotInput"} + if s.CoolOffPeriod != nil && *s.CoolOffPeriod < 1 { + invalidParams.Add(request.NewErrParamMinValue("CoolOffPeriod", 1)) + } + if s.LockDuration != nil && *s.LockDuration < 1 { + invalidParams.Add(request.NewErrParamMinValue("LockDuration", 1)) + } + if s.LockMode == nil { + invalidParams.Add(request.NewErrParamRequired("LockMode")) + } + if s.SnapshotId == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCoolOffPeriod sets the CoolOffPeriod field's value. +func (s *LockSnapshotInput) SetCoolOffPeriod(v int64) *LockSnapshotInput { + s.CoolOffPeriod = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *LockSnapshotInput) SetDryRun(v bool) *LockSnapshotInput { + s.DryRun = &v + return s +} + +// SetExpirationDate sets the ExpirationDate field's value. +func (s *LockSnapshotInput) SetExpirationDate(v time.Time) *LockSnapshotInput { + s.ExpirationDate = &v + return s +} + +// SetLockDuration sets the LockDuration field's value. +func (s *LockSnapshotInput) SetLockDuration(v int64) *LockSnapshotInput { + s.LockDuration = &v + return s +} + +// SetLockMode sets the LockMode field's value. +func (s *LockSnapshotInput) SetLockMode(v string) *LockSnapshotInput { + s.LockMode = &v + return s +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *LockSnapshotInput) SetSnapshotId(v string) *LockSnapshotInput { + s.SnapshotId = &v + return s +} + +type LockSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The compliance mode cooling-off period, in hours. + CoolOffPeriod *int64 `locationName:"coolOffPeriod" type:"integer"` + + // The date and time at which the compliance mode cooling-off period expires, + // in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ). + CoolOffPeriodExpiresOn *time.Time `locationName:"coolOffPeriodExpiresOn" type:"timestamp"` + + // The date and time at which the snapshot was locked, in the UTC time zone + // (YYYY-MM-DDThh:mm:ss.sssZ). + LockCreatedOn *time.Time `locationName:"lockCreatedOn" type:"timestamp"` + + // The period of time for which the snapshot is locked, in days. + LockDuration *int64 `locationName:"lockDuration" type:"integer"` + + // The date and time at which the lock duration started, in the UTC time zone + // (YYYY-MM-DDThh:mm:ss.sssZ). + LockDurationStartTime *time.Time `locationName:"lockDurationStartTime" type:"timestamp"` + + // The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ). + LockExpiresOn *time.Time `locationName:"lockExpiresOn" type:"timestamp"` + + // The state of the snapshot lock. Valid states include: + // + // * compliance-cooloff - The snapshot has been locked in compliance mode + // but it is still within the cooling-off period. The snapshot can't be deleted, + // but it can be unlocked and the lock settings can be modified by users + // with appropriate permissions. + // + // * governance - The snapshot is locked in governance mode. The snapshot + // can't be deleted, but it can be unlocked and the lock settings can be + // modified by users with appropriate permissions. + // + // * compliance - The snapshot is locked in compliance mode and the cooling-off + // period has expired. The snapshot can't be unlocked or deleted. The lock + // duration can only be increased by users with appropriate permissions. + // + // * expired - The snapshot was locked in compliance or governance mode but + // the lock duration has expired. The snapshot is not locked and can be deleted. + LockState *string `locationName:"lockState" type:"string" enum:"LockState"` + + // The ID of the snapshot + SnapshotId *string `locationName:"snapshotId" 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 LockSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LockSnapshotOutput) GoString() string { + return s.String() +} + +// SetCoolOffPeriod sets the CoolOffPeriod field's value. +func (s *LockSnapshotOutput) SetCoolOffPeriod(v int64) *LockSnapshotOutput { + s.CoolOffPeriod = &v + return s +} + +// SetCoolOffPeriodExpiresOn sets the CoolOffPeriodExpiresOn field's value. +func (s *LockSnapshotOutput) SetCoolOffPeriodExpiresOn(v time.Time) *LockSnapshotOutput { + s.CoolOffPeriodExpiresOn = &v + return s +} + +// SetLockCreatedOn sets the LockCreatedOn field's value. +func (s *LockSnapshotOutput) SetLockCreatedOn(v time.Time) *LockSnapshotOutput { + s.LockCreatedOn = &v + return s +} + +// SetLockDuration sets the LockDuration field's value. +func (s *LockSnapshotOutput) SetLockDuration(v int64) *LockSnapshotOutput { + s.LockDuration = &v + return s +} + +// SetLockDurationStartTime sets the LockDurationStartTime field's value. +func (s *LockSnapshotOutput) SetLockDurationStartTime(v time.Time) *LockSnapshotOutput { + s.LockDurationStartTime = &v + return s +} + +// SetLockExpiresOn sets the LockExpiresOn field's value. +func (s *LockSnapshotOutput) SetLockExpiresOn(v time.Time) *LockSnapshotOutput { + s.LockExpiresOn = &v + return s +} + +// SetLockState sets the LockState field's value. +func (s *LockSnapshotOutput) SetLockState(v string) *LockSnapshotOutput { + s.LockState = &v + return s +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *LockSnapshotOutput) SetSnapshotId(v string) *LockSnapshotOutput { + s.SnapshotId = &v + return s +} + +// Information about a locked snapshot. +type LockedSnapshotsInfo struct { + _ struct{} `type:"structure"` + + // The compliance mode cooling-off period, in hours. + CoolOffPeriod *int64 `locationName:"coolOffPeriod" type:"integer"` + + // The date and time at which the compliance mode cooling-off period expires, + // in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ). + CoolOffPeriodExpiresOn *time.Time `locationName:"coolOffPeriodExpiresOn" type:"timestamp"` + + // The date and time at which the snapshot was locked, in the UTC time zone + // (YYYY-MM-DDThh:mm:ss.sssZ). + LockCreatedOn *time.Time `locationName:"lockCreatedOn" type:"timestamp"` + + // The period of time for which the snapshot is locked, in days. + LockDuration *int64 `locationName:"lockDuration" type:"integer"` + + // The date and time at which the lock duration started, in the UTC time zone + // (YYYY-MM-DDThh:mm:ss.sssZ). + // + // If you lock a snapshot that is in the pending state, the lock duration starts + // only once the snapshot enters the completed state. + LockDurationStartTime *time.Time `locationName:"lockDurationStartTime" type:"timestamp"` + + // The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ). + LockExpiresOn *time.Time `locationName:"lockExpiresOn" type:"timestamp"` + + // The state of the snapshot lock. Valid states include: + // + // * compliance-cooloff - The snapshot has been locked in compliance mode + // but it is still within the cooling-off period. The snapshot can't be deleted, + // but it can be unlocked and the lock settings can be modified by users + // with appropriate permissions. + // + // * governance - The snapshot is locked in governance mode. The snapshot + // can't be deleted, but it can be unlocked and the lock settings can be + // modified by users with appropriate permissions. + // + // * compliance - The snapshot is locked in compliance mode and the cooling-off + // period has expired. The snapshot can't be unlocked or deleted. The lock + // duration can only be increased by users with appropriate permissions. + // + // * expired - The snapshot was locked in compliance or governance mode but + // the lock duration has expired. The snapshot is not locked and can be deleted. + LockState *string `locationName:"lockState" type:"string" enum:"LockState"` + + // The account ID of the Amazon Web Services account that owns the snapshot. + OwnerId *string `locationName:"ownerId" type:"string"` + + // The ID of the snapshot. + SnapshotId *string `locationName:"snapshotId" 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 LockedSnapshotsInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LockedSnapshotsInfo) GoString() string { + return s.String() +} + +// SetCoolOffPeriod sets the CoolOffPeriod field's value. +func (s *LockedSnapshotsInfo) SetCoolOffPeriod(v int64) *LockedSnapshotsInfo { + s.CoolOffPeriod = &v + return s +} + +// SetCoolOffPeriodExpiresOn sets the CoolOffPeriodExpiresOn field's value. +func (s *LockedSnapshotsInfo) SetCoolOffPeriodExpiresOn(v time.Time) *LockedSnapshotsInfo { + s.CoolOffPeriodExpiresOn = &v + return s +} + +// SetLockCreatedOn sets the LockCreatedOn field's value. +func (s *LockedSnapshotsInfo) SetLockCreatedOn(v time.Time) *LockedSnapshotsInfo { + s.LockCreatedOn = &v + return s +} + +// SetLockDuration sets the LockDuration field's value. +func (s *LockedSnapshotsInfo) SetLockDuration(v int64) *LockedSnapshotsInfo { + s.LockDuration = &v + return s +} + +// SetLockDurationStartTime sets the LockDurationStartTime field's value. +func (s *LockedSnapshotsInfo) SetLockDurationStartTime(v time.Time) *LockedSnapshotsInfo { + s.LockDurationStartTime = &v + return s +} + +// SetLockExpiresOn sets the LockExpiresOn field's value. +func (s *LockedSnapshotsInfo) SetLockExpiresOn(v time.Time) *LockedSnapshotsInfo { + s.LockExpiresOn = &v + return s +} + +// SetLockState sets the LockState field's value. +func (s *LockedSnapshotsInfo) SetLockState(v string) *LockedSnapshotsInfo { + s.LockState = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *LockedSnapshotsInfo) SetOwnerId(v string) *LockedSnapshotsInfo { + s.OwnerId = &v + return s +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *LockedSnapshotsInfo) SetSnapshotId(v string) *LockedSnapshotsInfo { + s.SnapshotId = &v + return s +} + // Details for Site-to-Site VPN tunnel endpoint maintenance events. type MaintenanceDetails struct { _ struct{} `type:"structure"` @@ -144008,6 +149381,11 @@ // The operating Regions to remove. RemoveOperatingRegions []*RemoveIpamOperatingRegion `locationName:"RemoveOperatingRegion" type:"list"` + + // IPAM is offered in a Free Tier and an Advanced Tier. For more information + // about the features available in each tier and the costs associated with the + // tiers, see Amazon VPC pricing > IPAM tab (http://aws.amazon.com/vpc/pricing/). + Tier *string `type:"string" enum:"IpamTier"` } // String returns the string representation. @@ -144071,6 +149449,12 @@ return s } +// SetTier sets the Tier field's value. +func (s *ModifyIpamInput) SetTier(v string) *ModifyIpamInput { + s.Tier = &v + return s +} + type ModifyIpamOutput struct { _ struct{} `type:"structure"` @@ -145075,6 +150459,9 @@ // attribute, you must specify the ID of the interface attachment. Attachment *NetworkInterfaceAttachmentChanges `locationName:"attachment" type:"structure"` + // A connection tracking specification. + ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest `type:"structure"` + // A description for the network interface. Description *AttributeValue `locationName:"description" type:"structure"` @@ -145160,6 +150547,12 @@ return s } +// SetConnectionTrackingSpecification sets the ConnectionTrackingSpecification field's value. +func (s *ModifyNetworkInterfaceAttributeInput) SetConnectionTrackingSpecification(v *ConnectionTrackingSpecificationRequest) *ModifyNetworkInterfaceAttributeInput { + s.ConnectionTrackingSpecification = v + return s +} + // SetDescription sets the Description field's value. func (s *ModifyNetworkInterfaceAttributeInput) SetDescription(v *AttributeValue) *ModifyNetworkInterfaceAttributeInput { s.Description = v @@ -146695,6 +152088,20 @@ // Removes CIDR blocks for the transit gateway. RemoveTransitGatewayCidrBlocks []*string `locationNameList:"item" type:"list"` + // Enables you to reference a security group across VPCs attached to a transit + // gateway (TGW). Use this option to simplify security group management and + // control of instance-to-instance traffic across VPCs that are connected by + // transit gateway. You can also use this option to migrate from VPC peering + // (which was the only option that supported security group referencing) to + // transit gateways (which now also support security group referencing). This + // option is disabled by default and there are no additional costs to use this + // feature. + // + // For important information about this feature, see Create a transit gateway + // (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw) + // in the Amazon Web Services Transit Gateway Guide. + SecurityGroupReferencingSupport *string `type:"string" enum:"SecurityGroupReferencingSupportValue"` + // Enable or disable Equal Cost Multipath Protocol support. VpnEcmpSupport *string `type:"string" enum:"VpnEcmpSupportValue"` } @@ -146771,6 +152178,12 @@ return s } +// SetSecurityGroupReferencingSupport sets the SecurityGroupReferencingSupport field's value. +func (s *ModifyTransitGatewayOptions) SetSecurityGroupReferencingSupport(v string) *ModifyTransitGatewayOptions { + s.SecurityGroupReferencingSupport = &v + return s +} + // SetVpnEcmpSupport sets the VpnEcmpSupport field's value. func (s *ModifyTransitGatewayOptions) SetVpnEcmpSupport(v string) *ModifyTransitGatewayOptions { s.VpnEcmpSupport = &v @@ -147060,6 +152473,20 @@ // Enable or disable IPv6 support. The default is enable. Ipv6Support *string `type:"string" enum:"Ipv6SupportValue"` + + // Enables you to reference a security group across VPCs attached to a transit + // gateway (TGW). Use this option to simplify security group management and + // control of instance-to-instance traffic across VPCs that are connected by + // transit gateway. You can also use this option to migrate from VPC peering + // (which was the only option that supported security group referencing) to + // transit gateways (which now also support security group referencing). This + // option is disabled by default and there are no additional costs to use this + // feature. + // + // For important information about this feature, see Create a transit gateway + // attachment to a VPC (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#create-vpc-attachment) + // in the Amazon Web Services Transit Gateway Guide. + SecurityGroupReferencingSupport *string `type:"string" enum:"SecurityGroupReferencingSupportValue"` } // String returns the string representation. @@ -147098,6 +152525,12 @@ return s } +// SetSecurityGroupReferencingSupport sets the SecurityGroupReferencingSupport field's value. +func (s *ModifyTransitGatewayVpcAttachmentRequestOptions) SetSecurityGroupReferencingSupport(v string) *ModifyTransitGatewayVpcAttachmentRequestOptions { + s.SecurityGroupReferencingSupport = &v + return s +} + // Describes the options when modifying a Verified Access endpoint with the // network-interface type. type ModifyVerifiedAccessEndpointEniOptions struct { @@ -147335,7 +152768,7 @@ type ModifyVerifiedAccessEndpointOutput struct { _ struct{} `type:"structure"` - // The Verified Access endpoint details. + // Details about the Verified Access endpoint. VerifiedAccessEndpoint *VerifiedAccessEndpoint `locationName:"verifiedAccessEndpoint" type:"structure"` } @@ -147381,9 +152814,10 @@ PolicyDocument *string `type:"string"` // The status of the Verified Access policy. - // - // PolicyEnabled is a required field - PolicyEnabled *bool `type:"boolean" required:"true"` + PolicyEnabled *bool `type:"boolean"` + + // The options for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationRequest `type:"structure"` // The ID of the Verified Access endpoint. // @@ -147412,9 +152846,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyVerifiedAccessEndpointPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyVerifiedAccessEndpointPolicyInput"} - if s.PolicyEnabled == nil { - invalidParams.Add(request.NewErrParamRequired("PolicyEnabled")) - } if s.VerifiedAccessEndpointId == nil { invalidParams.Add(request.NewErrParamRequired("VerifiedAccessEndpointId")) } @@ -147449,6 +152880,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *ModifyVerifiedAccessEndpointPolicyInput) SetSseSpecification(v *VerifiedAccessSseSpecificationRequest) *ModifyVerifiedAccessEndpointPolicyInput { + s.SseSpecification = v + return s +} + // SetVerifiedAccessEndpointId sets the VerifiedAccessEndpointId field's value. func (s *ModifyVerifiedAccessEndpointPolicyInput) SetVerifiedAccessEndpointId(v string) *ModifyVerifiedAccessEndpointPolicyInput { s.VerifiedAccessEndpointId = &v @@ -147463,6 +152900,9 @@ // The status of the Verified Access policy. PolicyEnabled *bool `locationName:"policyEnabled" type:"boolean"` + + // The options in use for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationResponse `locationName:"sseSpecification" type:"structure"` } // String returns the string representation. @@ -147495,6 +152935,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *ModifyVerifiedAccessEndpointPolicyOutput) SetSseSpecification(v *VerifiedAccessSseSpecificationResponse) *ModifyVerifiedAccessEndpointPolicyOutput { + s.SseSpecification = v + return s +} + type ModifyVerifiedAccessGroupInput struct { _ struct{} `type:"structure"` @@ -147585,7 +153031,7 @@ type ModifyVerifiedAccessGroupOutput struct { _ struct{} `type:"structure"` - // Details of Verified Access group. + // Details about the Verified Access group. VerifiedAccessGroup *VerifiedAccessGroup `locationName:"verifiedAccessGroup" type:"structure"` } @@ -147631,9 +153077,10 @@ PolicyDocument *string `type:"string"` // The status of the Verified Access policy. - // - // PolicyEnabled is a required field - PolicyEnabled *bool `type:"boolean" required:"true"` + PolicyEnabled *bool `type:"boolean"` + + // The options for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationRequest `type:"structure"` // The ID of the Verified Access group. // @@ -147662,9 +153109,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyVerifiedAccessGroupPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyVerifiedAccessGroupPolicyInput"} - if s.PolicyEnabled == nil { - invalidParams.Add(request.NewErrParamRequired("PolicyEnabled")) - } if s.VerifiedAccessGroupId == nil { invalidParams.Add(request.NewErrParamRequired("VerifiedAccessGroupId")) } @@ -147699,6 +153143,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *ModifyVerifiedAccessGroupPolicyInput) SetSseSpecification(v *VerifiedAccessSseSpecificationRequest) *ModifyVerifiedAccessGroupPolicyInput { + s.SseSpecification = v + return s +} + // SetVerifiedAccessGroupId sets the VerifiedAccessGroupId field's value. func (s *ModifyVerifiedAccessGroupPolicyInput) SetVerifiedAccessGroupId(v string) *ModifyVerifiedAccessGroupPolicyInput { s.VerifiedAccessGroupId = &v @@ -147713,6 +153163,9 @@ // The status of the Verified Access policy. PolicyEnabled *bool `locationName:"policyEnabled" type:"boolean"` + + // The options in use for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationResponse `locationName:"sseSpecification" type:"structure"` } // String returns the string representation. @@ -147745,6 +153198,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *ModifyVerifiedAccessGroupPolicyOutput) SetSseSpecification(v *VerifiedAccessSseSpecificationResponse) *ModifyVerifiedAccessGroupPolicyOutput { + s.SseSpecification = v + return s +} + type ModifyVerifiedAccessInstanceInput struct { _ struct{} `type:"structure"` @@ -147945,7 +153404,7 @@ type ModifyVerifiedAccessInstanceOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access instance. + // Details about the Verified Access instance. VerifiedAccessInstance *VerifiedAccessInstance `locationName:"verifiedAccessInstance" type:"structure"` } @@ -147973,6 +153432,40 @@ return s } +// Modifies the configuration of the specified device-based Amazon Web Services +// Verified Access trust provider. +type ModifyVerifiedAccessTrustProviderDeviceOptions struct { + _ struct{} `type:"structure"` + + // The URL Amazon Web Services Verified Access will use to verify the authenticity + // of the device tokens. + PublicSigningKeyUrl *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 ModifyVerifiedAccessTrustProviderDeviceOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyVerifiedAccessTrustProviderDeviceOptions) GoString() string { + return s.String() +} + +// SetPublicSigningKeyUrl sets the PublicSigningKeyUrl field's value. +func (s *ModifyVerifiedAccessTrustProviderDeviceOptions) SetPublicSigningKeyUrl(v string) *ModifyVerifiedAccessTrustProviderDeviceOptions { + s.PublicSigningKeyUrl = &v + return s +} + type ModifyVerifiedAccessTrustProviderInput struct { _ struct{} `type:"structure"` @@ -147984,6 +153477,10 @@ // A description for the Verified Access trust provider. Description *string `type:"string"` + // The options for a device-based trust provider. This parameter is required + // when the provider type is device. + DeviceOptions *ModifyVerifiedAccessTrustProviderDeviceOptions `type:"structure"` + // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, @@ -147993,6 +153490,9 @@ // The options for an OpenID Connect-compatible user-identity trust provider. OidcOptions *ModifyVerifiedAccessTrustProviderOidcOptions `type:"structure"` + // The options for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationRequest `type:"structure"` + // The ID of the Verified Access trust provider. // // VerifiedAccessTrustProviderId is a required field @@ -148042,6 +153542,12 @@ return s } +// SetDeviceOptions sets the DeviceOptions field's value. +func (s *ModifyVerifiedAccessTrustProviderInput) SetDeviceOptions(v *ModifyVerifiedAccessTrustProviderDeviceOptions) *ModifyVerifiedAccessTrustProviderInput { + s.DeviceOptions = v + return s +} + // SetDryRun sets the DryRun field's value. func (s *ModifyVerifiedAccessTrustProviderInput) SetDryRun(v bool) *ModifyVerifiedAccessTrustProviderInput { s.DryRun = &v @@ -148054,6 +153560,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *ModifyVerifiedAccessTrustProviderInput) SetSseSpecification(v *VerifiedAccessSseSpecificationRequest) *ModifyVerifiedAccessTrustProviderInput { + s.SseSpecification = v + return s +} + // SetVerifiedAccessTrustProviderId sets the VerifiedAccessTrustProviderId field's value. func (s *ModifyVerifiedAccessTrustProviderInput) SetVerifiedAccessTrustProviderId(v string) *ModifyVerifiedAccessTrustProviderInput { s.VerifiedAccessTrustProviderId = &v @@ -148155,7 +153667,7 @@ type ModifyVerifiedAccessTrustProviderOutput struct { _ struct{} `type:"structure"` - // The ID of the Verified Access trust provider. + // Details about the Verified Access trust provider. VerifiedAccessTrustProvider *VerifiedAccessTrustProvider `locationName:"verifiedAccessTrustProvider" type:"structure"` } @@ -148286,11 +153798,15 @@ // // The following are the supported values for each volume type: // - // * gp3: 3,000-16,000 IOPS + // * gp3: 3,000 - 16,000 IOPS // - // * io1: 100-64,000 IOPS + // * io1: 100 - 64,000 IOPS // - // * io2: 100-64,000 IOPS + // * io2: 100 - 256,000 IOPS + // + // For io2 volumes, you can achieve up to 256,000 IOPS on instances built on + // the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). + // On other instances, you can achieve performance up to 32,000 IOPS. // // Default: The existing value is retained if you keep the same volume type. // If you change the volume type to io1, io2, or gp3, the default is 3,000. @@ -148308,13 +153824,15 @@ // // The following are the supported volumes sizes for each volume type: // - // * gp2 and gp3: 1-16,384 + // * gp2 and gp3: 1 - 16,384 GiB // - // * io1 and io2: 4-16,384 + // * io1: 4 - 16,384 GiB // - // * st1 and sc1: 125-16,384 + // * io2: 4 - 65,536 GiB // - // * standard: 1-1,024 + // * st1 and sc1: 125 - 16,384 GiB + // + // * standard: 1 - 1024 GiB // // Default: The existing size is retained. Size *int64 `type:"integer"` @@ -149846,7 +155364,8 @@ // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // Choose whether or not to trigger immediate tunnel replacement. + // Choose whether or not to trigger immediate tunnel replacement. This is only + // applicable when turning on or off EnableTunnelLifecycleControl. // // Valid values: True | False SkipTunnelReplacement *bool `type:"boolean"` @@ -149981,11 +155500,13 @@ // Default: clear DPDTimeoutAction *string `type:"string"` - // The number of seconds after which a DPD timeout occurs. + // The number of seconds after which a DPD timeout occurs. A DPD timeout of + // 40 seconds means that the VPN endpoint will consider the peer dead 30 seconds + // after the first failed keep-alive. // // Constraints: A value greater than or equal to 30. // - // Default: 30 + // Default: 40 DPDTimeoutSeconds *int64 `type:"integer"` // Turn on or off tunnel endpoint lifecycle control feature. @@ -152032,6 +157553,12 @@ // The Availability Zone. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + // A security group connection tracking configuration that enables you to set + // the timeout for connection tracking on an Elastic network interface. For + // more information, see Connection tracking timeouts (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts) + // in the Amazon Elastic Compute Cloud User Guide. + ConnectionTrackingConfiguration *ConnectionTrackingConfiguration `locationName:"connectionTrackingConfiguration" type:"structure"` + // Indicates whether a network interface with an IPv6 address is unreachable // from the public internet. If the value is true, inbound traffic from the // internet is dropped and you cannot assign an elastic IP address to the network @@ -152143,6 +157670,12 @@ return s } +// SetConnectionTrackingConfiguration sets the ConnectionTrackingConfiguration field's value. +func (s *NetworkInterface) SetConnectionTrackingConfiguration(v *ConnectionTrackingConfiguration) *NetworkInterface { + s.ConnectionTrackingConfiguration = v + return s +} + // SetDenyAllIgwTraffic sets the DenyAllIgwTraffic field's value. func (s *NetworkInterface) SetDenyAllIgwTraffic(v bool) *NetworkInterface { s.DenyAllIgwTraffic = &v @@ -153013,6 +158546,14 @@ // The maximum amount per hour for On-Demand Instances that you're willing to // pay. + // + // If your fleet includes T instances that are configured as unlimited, and + // if their average CPU usage exceeds the baseline utilization, you will incur + // a charge for surplus credits. The maxTotalPrice does not account for surplus + // credits, and, if you use surplus credits, your final cost might be higher + // than what you specified for maxTotalPrice. For more information, see Surplus + // credits can incur charges (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits) + // in the EC2 User Guide. MaxTotalPrice *string `locationName:"maxTotalPrice" type:"string"` // The minimum target capacity for On-Demand Instances in the fleet. If the @@ -153115,6 +158656,14 @@ // The maximum amount per hour for On-Demand Instances that you're willing to // pay. + // + // If your fleet includes T instances that are configured as unlimited, and + // if their average CPU usage exceeds the baseline utilization, you will incur + // a charge for surplus credits. The MaxTotalPrice does not account for surplus + // credits, and, if you use surplus credits, your final cost might be higher + // than what you specified for MaxTotalPrice. For more information, see Surplus + // credits can incur charges (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits) + // in the EC2 User Guide. MaxTotalPrice *string `type:"string"` // The minimum target capacity for On-Demand Instances in the fleet. If the @@ -155468,6 +161017,9 @@ type ProcessorInfo struct { _ struct{} `type:"structure"` + // The manufacturer of the processor. + Manufacturer *string `locationName:"manufacturer" type:"string"` + // The architectures supported by the instance type. SupportedArchitectures []*string `locationName:"supportedArchitectures" locationNameList:"item" type:"list" enum:"ArchitectureType"` @@ -155498,6 +161050,12 @@ return s.String() } +// SetManufacturer sets the Manufacturer field's value. +func (s *ProcessorInfo) SetManufacturer(v string) *ProcessorInfo { + s.Manufacturer = &v + return s +} + // SetSupportedArchitectures sets the SupportedArchitectures field's value. func (s *ProcessorInfo) SetSupportedArchitectures(v []*string) *ProcessorInfo { s.SupportedArchitectures = v @@ -155735,6 +161293,128 @@ return s } +type ProvisionIpamByoasnInput struct { + _ struct{} `type:"structure"` + + // A public 2-byte or 4-byte ASN. + // + // Asn is a required field + Asn *string `type:"string" required:"true"` + + // An ASN authorization context. + // + // AsnAuthorizationContext is a required field + AsnAuthorizationContext *AsnAuthorizationContext `type:"structure" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // An IPAM ID. + // + // IpamId is a required field + IpamId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProvisionIpamByoasnInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProvisionIpamByoasnInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProvisionIpamByoasnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProvisionIpamByoasnInput"} + if s.Asn == nil { + invalidParams.Add(request.NewErrParamRequired("Asn")) + } + if s.AsnAuthorizationContext == nil { + invalidParams.Add(request.NewErrParamRequired("AsnAuthorizationContext")) + } + if s.IpamId == nil { + invalidParams.Add(request.NewErrParamRequired("IpamId")) + } + if s.AsnAuthorizationContext != nil { + if err := s.AsnAuthorizationContext.Validate(); err != nil { + invalidParams.AddNested("AsnAuthorizationContext", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAsn sets the Asn field's value. +func (s *ProvisionIpamByoasnInput) SetAsn(v string) *ProvisionIpamByoasnInput { + s.Asn = &v + return s +} + +// SetAsnAuthorizationContext sets the AsnAuthorizationContext field's value. +func (s *ProvisionIpamByoasnInput) SetAsnAuthorizationContext(v *AsnAuthorizationContext) *ProvisionIpamByoasnInput { + s.AsnAuthorizationContext = v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *ProvisionIpamByoasnInput) SetDryRun(v bool) *ProvisionIpamByoasnInput { + s.DryRun = &v + return s +} + +// SetIpamId sets the IpamId field's value. +func (s *ProvisionIpamByoasnInput) SetIpamId(v string) *ProvisionIpamByoasnInput { + s.IpamId = &v + return s +} + +type ProvisionIpamByoasnOutput struct { + _ struct{} `type:"structure"` + + // An ASN and BYOIP CIDR association. + Byoasn *Byoasn `locationName:"byoasn" 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 ProvisionIpamByoasnOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProvisionIpamByoasnOutput) GoString() string { + return s.String() +} + +// SetByoasn sets the Byoasn field's value. +func (s *ProvisionIpamByoasnOutput) SetByoasn(v *Byoasn) *ProvisionIpamByoasnOutput { + s.Byoasn = v + return s +} + type ProvisionIpamPoolCidrInput struct { _ struct{} `type:"structure"` @@ -156369,6 +162049,118 @@ return s } +type PurchaseCapacityBlockInput struct { + _ struct{} `type:"structure"` + + // The ID of the Capacity Block offering. + // + // CapacityBlockOfferingId is a required field + CapacityBlockOfferingId *string `type:"string" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The type of operating system for which to reserve capacity. + // + // InstancePlatform is a required field + InstancePlatform *string `type:"string" required:"true" enum:"CapacityReservationInstancePlatform"` + + // The tags to apply to the Capacity Block during launch. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" 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 PurchaseCapacityBlockInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PurchaseCapacityBlockInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PurchaseCapacityBlockInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PurchaseCapacityBlockInput"} + if s.CapacityBlockOfferingId == nil { + invalidParams.Add(request.NewErrParamRequired("CapacityBlockOfferingId")) + } + if s.InstancePlatform == nil { + invalidParams.Add(request.NewErrParamRequired("InstancePlatform")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapacityBlockOfferingId sets the CapacityBlockOfferingId field's value. +func (s *PurchaseCapacityBlockInput) SetCapacityBlockOfferingId(v string) *PurchaseCapacityBlockInput { + s.CapacityBlockOfferingId = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *PurchaseCapacityBlockInput) SetDryRun(v bool) *PurchaseCapacityBlockInput { + s.DryRun = &v + return s +} + +// SetInstancePlatform sets the InstancePlatform field's value. +func (s *PurchaseCapacityBlockInput) SetInstancePlatform(v string) *PurchaseCapacityBlockInput { + s.InstancePlatform = &v + return s +} + +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *PurchaseCapacityBlockInput) SetTagSpecifications(v []*TagSpecification) *PurchaseCapacityBlockInput { + s.TagSpecifications = v + return s +} + +type PurchaseCapacityBlockOutput struct { + _ struct{} `type:"structure"` + + // The Capacity Reservation. + CapacityReservation *CapacityReservation `locationName:"capacityReservation" 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 PurchaseCapacityBlockOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PurchaseCapacityBlockOutput) GoString() string { + return s.String() +} + +// SetCapacityReservation sets the CapacityReservation field's value. +func (s *PurchaseCapacityBlockOutput) SetCapacityReservation(v *CapacityReservation) *PurchaseCapacityBlockOutput { + s.CapacityReservation = v + return s +} + type PurchaseHostReservationInput struct { _ struct{} `type:"structure"` @@ -156982,7 +162774,7 @@ // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` - // The ID of the VPC peering connection. + // The ID of the VPC peering connection (if applicable). VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } @@ -158213,9 +164005,6 @@ // // If you provide an incorrect network border group, you receive an InvalidAddress.NotFound // error. - // - // You cannot use a network border group with EC2 Classic. If you attempt this - // operation on EC2 classic, you receive an InvalidParameterCombination error. NetworkBorderGroup *string `type:"string"` // Deprecated. @@ -159923,7 +165712,19 @@ // An elastic GPU to associate with the instance. ElasticGpuSpecifications []*ElasticGpuSpecification `locationName:"ElasticGpuSpecification" locationNameList:"ElasticGpuSpecification" type:"list"` - // The elastic inference accelerator for the instance. + // An elastic inference accelerator to associate with the instance. Elastic + // inference accelerators are a resource you can attach to your Amazon EC2 instances + // to accelerate your Deep Learning (DL) inference workloads. + // + // You cannot specify accelerators from different generations in the same request. + // + // Starting April 15, 2023, Amazon Web Services will not onboard new customers + // to Amazon Elastic Inference (EI), and will help current customers migrate + // their workloads to options that offer better price and performance. After + // April 15, 2023, new customers will not be able to launch instances with Amazon + // EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, + // customers who have used Amazon EI at least once during the past 30-day period + // are considered current customers and will be able to continue using the service. ElasticInferenceAccelerators []*LaunchTemplateElasticInferenceAccelerator `locationName:"ElasticInferenceAccelerator" locationNameList:"item" type:"list"` // Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. @@ -160066,13 +165867,10 @@ // One or more security group IDs. You can create a security group using CreateSecurityGroup // (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html). - // You cannot specify both a security group ID and security name in the same - // request. SecurityGroupIds []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` // One or more security group names. For a nondefault VPC, you must use security - // group IDs instead. You cannot specify both a security group ID and security - // name in the same request. + // group IDs instead. SecurityGroups []*string `locationName:"SecurityGroup" locationNameList:"SecurityGroup" type:"list"` // The tags to apply to the resources that are created during instance launch. @@ -162739,7 +168537,19 @@ // The elastic GPU specification. ElasticGpuSpecifications []*ElasticGpuSpecificationResponse `locationName:"elasticGpuSpecificationSet" locationNameList:"item" type:"list"` - // The elastic inference accelerator for the instance. + // An elastic inference accelerator to associate with the instance. Elastic + // inference accelerators are a resource you can attach to your Amazon EC2 instances + // to accelerate your Deep Learning (DL) inference workloads. + // + // You cannot specify accelerators from different generations in the same request. + // + // Starting April 15, 2023, Amazon Web Services will not onboard new customers + // to Amazon Elastic Inference (EI), and will help current customers migrate + // their workloads to options that offer better price and performance. After + // April 15, 2023, new customers will not be able to launch instances with Amazon + // EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, + // customers who have used Amazon EI at least once during the past 30-day period + // are considered current customers and will be able to continue using the service. ElasticInferenceAccelerators []*LaunchTemplateElasticInferenceAcceleratorResponse `locationName:"elasticInferenceAcceleratorSet" locationNameList:"item" type:"list"` // Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. @@ -166106,16 +171916,8 @@ // only to instances that support them. Encrypted *bool `type:"boolean"` - // The number of I/O operations per second (IOPS) to provision for an io1 or - // io2 volume, with a maximum ratio of 50 IOPS/GiB for io1, and 500 IOPS/GiB - // for io2. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum - // IOPS of 64,000 is guaranteed only on instances built on the Nitro System - // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. For more - // information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon EC2 User Guide. - // - // This parameter is valid only for Provisioned IOPS SSD (io1 and io2) volumes. + // The number of I/O operations per second (IOPS) to provision for a gp3, io1, + // or io2 volume. Iops *int64 `type:"integer"` // The ID of the snapshot. @@ -166127,9 +171929,7 @@ // a volume size, the default is the snapshot size. VolumeSize *int64 `type:"integer"` - // The volume type. gp2 for General Purpose SSD, io1 or io2 for Provisioned - // IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard - // for Magnetic. + // The volume type. // // Default: gp2 VolumeType *string `type:"string"` @@ -167230,6 +173030,83 @@ return s } +// A security group that can be used by interfaces in the VPC. +type SecurityGroupForVpc struct { + _ struct{} `type:"structure"` + + // The security group's description. + Description *string `locationName:"description" type:"string"` + + // The security group ID. + GroupId *string `locationName:"groupId" type:"string"` + + // The security group name. + GroupName *string `locationName:"groupName" type:"string"` + + // The security group owner ID. + OwnerId *string `locationName:"ownerId" type:"string"` + + // The VPC ID in which the security group was created. + PrimaryVpcId *string `locationName:"primaryVpcId" type:"string"` + + // The security group tags. + Tags []*Tag `locationName:"tagSet" locationNameList:"item" 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 SecurityGroupForVpc) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityGroupForVpc) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *SecurityGroupForVpc) SetDescription(v string) *SecurityGroupForVpc { + s.Description = &v + return s +} + +// SetGroupId sets the GroupId field's value. +func (s *SecurityGroupForVpc) SetGroupId(v string) *SecurityGroupForVpc { + s.GroupId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *SecurityGroupForVpc) SetGroupName(v string) *SecurityGroupForVpc { + s.GroupName = &v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *SecurityGroupForVpc) SetOwnerId(v string) *SecurityGroupForVpc { + s.OwnerId = &v + return s +} + +// SetPrimaryVpcId sets the PrimaryVpcId field's value. +func (s *SecurityGroupForVpc) SetPrimaryVpcId(v string) *SecurityGroupForVpc { + s.PrimaryVpcId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *SecurityGroupForVpc) SetTags(v []*Tag) *SecurityGroupForVpc { + s.Tags = v + return s +} + // Describes a security group. type SecurityGroupIdentifier struct { _ struct{} `type:"structure"` @@ -167281,7 +173158,16 @@ // The ID of the VPC with the referencing security group. ReferencingVpcId *string `locationName:"referencingVpcId" type:"string"` - // The ID of the VPC peering connection. + // The ID of the transit gateway (if applicable). For more information about + // security group referencing for transit gateways, see Create a transit gateway + // attachment to a VPC (https://docs.aws.amazon.com/tgw/tgw-vpc-attachments.html#create-vpc-attachment) + // in the Amazon Web Services Transit Gateway Guide. + TransitGatewayId *string `locationName:"transitGatewayId" type:"string"` + + // The ID of the VPC peering connection (if applicable). For more information + // about security group referencing for peering connections, see Update your + // security groups to reference peer security groups (https://docs.aws.amazon.com/peering/vpc-peering-security-groups.html) + // in the VPC Peering Guide. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } @@ -167315,6 +173201,12 @@ return s } +// SetTransitGatewayId sets the TransitGatewayId field's value. +func (s *SecurityGroupReference) SetTransitGatewayId(v string) *SecurityGroupReference { + s.TransitGatewayId = &v + return s +} + // SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. func (s *SecurityGroupReference) SetVpcPeeringConnectionId(v string) *SecurityGroupReference { s.VpcPeeringConnectionId = &v @@ -169707,6 +175599,14 @@ // it reaches the maximum amount you're willing to pay. When the maximum amount // you're willing to pay is reached, the fleet stops launching instances even // if it hasn’t met the target capacity. + // + // If your fleet includes T instances that are configured as unlimited, and + // if their average CPU usage exceeds the baseline utilization, you will incur + // a charge for surplus credits. The onDemandMaxTotalPrice does not account + // for surplus credits, and, if you use surplus credits, your final cost might + // be higher than what you specified for onDemandMaxTotalPrice. For more information, + // see Surplus credits can incur charges (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits) + // in the EC2 User Guide. OnDemandMaxTotalPrice *string `locationName:"onDemandMaxTotalPrice" type:"string"` // The number of On-Demand units to request. You can choose to set the target @@ -169724,13 +175624,21 @@ SpotMaintenanceStrategies *SpotMaintenanceStrategies `locationName:"spotMaintenanceStrategies" type:"structure"` // The maximum amount per hour for Spot Instances that you're willing to pay. - // You can use the spotdMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, + // You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, // or both parameters to ensure that your fleet cost does not exceed your budget. // If you set a maximum price per hour for the On-Demand Instances and Spot // Instances in your request, Spot Fleet will launch instances until it reaches // the maximum amount you're willing to pay. When the maximum amount you're // willing to pay is reached, the fleet stops launching instances even if it // hasn’t met the target capacity. + // + // If your fleet includes T instances that are configured as unlimited, and + // if their average CPU usage exceeds the baseline utilization, you will incur + // a charge for surplus credits. The spotMaxTotalPrice does not account for + // surplus credits, and, if you use surplus credits, your final cost might be + // higher than what you specified for spotMaxTotalPrice. For more information, + // see Surplus credits can incur charges (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits) + // in the EC2 User Guide. SpotMaxTotalPrice *string `locationName:"spotMaxTotalPrice" type:"string"` // The maximum price per unit hour that you are willing to pay for a Spot Instance. @@ -169749,7 +175657,7 @@ // (valid only if you use LaunchTemplateConfigs) or in the SpotFleetTagSpecification // (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) // (valid only if you use LaunchSpecifications). For information about tagging - // after launch, see Tagging Your Resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources). + // after launch, see Tag your resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources). TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` // The number of units to request for the Spot Fleet. You can choose to set @@ -170395,7 +176303,18 @@ // Deprecated. BlockDurationMinutes *int64 `type:"integer"` - // The behavior when a Spot Instance is interrupted. The default is terminate. + // The behavior when a Spot Instance is interrupted. + // + // If Configured (for HibernationOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html)) + // is set to true, the InstanceInterruptionBehavior parameter is automatically + // set to hibernate. If you set it to stop or terminate, you'll get an error. + // + // If Configured (for HibernationOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html)) + // is set to false or null, the InstanceInterruptionBehavior parameter is automatically + // set to terminate. You can also set it to stop or hibernate. + // + // For more information, see Interruption behavior (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/interruption-behavior.html) + // in the Amazon EC2 User Guide. InstanceInterruptionBehavior *string `type:"string" enum:"InstanceInterruptionBehavior"` // The maximum hourly price that you're willing to pay for a Spot Instance. @@ -170554,6 +176473,14 @@ // // If you specify a maximum price, your Spot Instances will be interrupted more // frequently than if you do not specify this parameter. + // + // If your fleet includes T instances that are configured as unlimited, and + // if their average CPU usage exceeds the baseline utilization, you will incur + // a charge for surplus credits. The maxTotalPrice does not account for surplus + // credits, and, if you use surplus credits, your final cost might be higher + // than what you specified for maxTotalPrice. For more information, see Surplus + // credits can incur charges (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits) + // in the EC2 User Guide. MaxTotalPrice *string `locationName:"maxTotalPrice" type:"string"` // The minimum target capacity for Spot Instances in the fleet. If the minimum @@ -170726,6 +176653,14 @@ // // If you specify a maximum price, your Spot Instances will be interrupted more // frequently than if you do not specify this parameter. + // + // If your fleet includes T instances that are configured as unlimited, and + // if their average CPU usage exceeds the baseline utilization, you will incur + // a charge for surplus credits. The MaxTotalPrice does not account for surplus + // credits, and, if you use surplus credits, your final cost might be higher + // than what you specified for MaxTotalPrice. For more information, see Surplus + // credits can incur charges (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits) + // in the EC2 User Guide. MaxTotalPrice *string `type:"string"` // The minimum target capacity for Spot Instances in the fleet. If the minimum @@ -175511,6 +181446,20 @@ // The ID of the default propagation route table. PropagationDefaultRouteTableId *string `locationName:"propagationDefaultRouteTableId" type:"string"` + // Enables you to reference a security group across VPCs attached to a transit + // gateway (TGW). Use this option to simplify security group management and + // control of instance-to-instance traffic across VPCs that are connected by + // transit gateway. You can also use this option to migrate from VPC peering + // (which was the only option that supported security group referencing) to + // transit gateways (which now also support security group referencing). This + // option is disabled by default and there are no additional costs to use this + // feature. + // + // For important information about this feature, see Create a transit gateway + // (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw) + // in the Amazon Web Services Transit Gateway Guide. + SecurityGroupReferencingSupport *string `locationName:"securityGroupReferencingSupport" type:"string" enum:"SecurityGroupReferencingSupportValue"` + // The transit gateway CIDR blocks. TransitGatewayCidrBlocks []*string `locationName:"transitGatewayCidrBlocks" locationNameList:"item" type:"list"` @@ -175584,6 +181533,12 @@ return s } +// SetSecurityGroupReferencingSupport sets the SecurityGroupReferencingSupport field's value. +func (s *TransitGatewayOptions) SetSecurityGroupReferencingSupport(v string) *TransitGatewayOptions { + s.SecurityGroupReferencingSupport = &v + return s +} + // SetTransitGatewayCidrBlocks sets the TransitGatewayCidrBlocks field's value. func (s *TransitGatewayOptions) SetTransitGatewayCidrBlocks(v []*string) *TransitGatewayOptions { s.TransitGatewayCidrBlocks = v @@ -176271,6 +182226,20 @@ // Indicates whether multicast is enabled on the transit gateway MulticastSupport *string `type:"string" enum:"MulticastSupportValue"` + // Enables you to reference a security group across VPCs attached to a transit + // gateway (TGW). Use this option to simplify security group management and + // control of instance-to-instance traffic across VPCs that are connected by + // transit gateway. You can also use this option to migrate from VPC peering + // (which was the only option that supported security group referencing) to + // transit gateways (which now also support security group referencing). This + // option is disabled by default and there are no additional costs to use this + // feature. + // + // For important information about this feature, see Create a transit gateway + // (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw) + // in the Amazon Web Services Transit Gateway Guide. + SecurityGroupReferencingSupport *string `type:"string" enum:"SecurityGroupReferencingSupportValue"` + // One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size // /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for // IPv6. @@ -176334,6 +182303,12 @@ return s } +// SetSecurityGroupReferencingSupport sets the SecurityGroupReferencingSupport field's value. +func (s *TransitGatewayRequestOptions) SetSecurityGroupReferencingSupport(v string) *TransitGatewayRequestOptions { + s.SecurityGroupReferencingSupport = &v + return s +} + // SetTransitGatewayCidrBlocks sets the TransitGatewayCidrBlocks field's value. func (s *TransitGatewayRequestOptions) SetTransitGatewayCidrBlocks(v []*string) *TransitGatewayRequestOptions { s.TransitGatewayCidrBlocks = v @@ -177017,6 +182992,11 @@ // Indicates whether IPv6 support is disabled. Ipv6Support *string `locationName:"ipv6Support" type:"string" enum:"Ipv6SupportValue"` + + // For important information about this feature, see Create a transit gateway + // attachment to a VPC (https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#create-vpc-attachment) + // in the Amazon Web Services Transit Gateway Guide. + SecurityGroupReferencingSupport *string `locationName:"securityGroupReferencingSupport" type:"string" enum:"SecurityGroupReferencingSupportValue"` } // String returns the string representation. @@ -177055,9 +183035,12 @@ return s } -// Currently available in limited preview only. If you are interested in using -// this feature, contact your account manager. -// +// SetSecurityGroupReferencingSupport sets the SecurityGroupReferencingSupport field's value. +func (s *TransitGatewayVpcAttachmentOptions) SetSecurityGroupReferencingSupport(v string) *TransitGatewayVpcAttachmentOptions { + s.SecurityGroupReferencingSupport = &v + return s +} + // Information about an association between a branch network interface with // a trunk network interface. type TrunkInterfaceAssociation struct { @@ -177694,6 +183677,95 @@ return s } +type UnlockSnapshotInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `type:"boolean"` + + // The ID of the snapshot to unlock. + // + // SnapshotId is a required field + SnapshotId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnlockSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnlockSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UnlockSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UnlockSnapshotInput"} + if s.SnapshotId == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *UnlockSnapshotInput) SetDryRun(v bool) *UnlockSnapshotInput { + s.DryRun = &v + return s +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *UnlockSnapshotInput) SetSnapshotId(v string) *UnlockSnapshotInput { + s.SnapshotId = &v + return s +} + +type UnlockSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The ID of the snapshot. + SnapshotId *string `locationName:"snapshotId" 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 UnlockSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnlockSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *UnlockSnapshotOutput) SetSnapshotId(v string) *UnlockSnapshotOutput { + s.SnapshotId = &v + return s +} + type UnmonitorInstancesInput struct { _ struct{} `type:"structure"` @@ -178676,6 +184748,9 @@ // The IDs of the security groups for the endpoint. SecurityGroupIds []*string `locationName:"securityGroupIdSet" locationNameList:"item" type:"list"` + // The options in use for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationResponse `locationName:"sseSpecification" type:"structure"` + // The endpoint status. Status *VerifiedAccessEndpointStatus `locationName:"status" type:"structure"` @@ -178788,6 +184863,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *VerifiedAccessEndpoint) SetSseSpecification(v *VerifiedAccessSseSpecificationResponse) *VerifiedAccessEndpoint { + s.SseSpecification = v + return s +} + // SetStatus sets the Status field's value. func (s *VerifiedAccessEndpoint) SetStatus(v *VerifiedAccessEndpointStatus) *VerifiedAccessEndpoint { s.Status = v @@ -178988,6 +185069,9 @@ // The Amazon Web Services account number that owns the group. Owner *string `locationName:"owner" type:"string"` + // The options in use for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationResponse `locationName:"sseSpecification" type:"structure"` + // The tags. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` @@ -179049,6 +185133,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *VerifiedAccessGroup) SetSseSpecification(v *VerifiedAccessSseSpecificationResponse) *VerifiedAccessGroup { + s.SseSpecification = v + return s +} + // SetTags sets the Tags field's value. func (s *VerifiedAccessGroup) SetTags(v []*Tag) *VerifiedAccessGroup { s.Tags = v @@ -179083,6 +185173,10 @@ // A description for the Amazon Web Services Verified Access instance. Description *string `locationName:"description" type:"string"` + // Indicates whether support for Federal Information Processing Standards (FIPS) + // is enabled on the instance. + FipsEnabled *bool `locationName:"fipsEnabled" type:"boolean"` + // The last updated time. LastUpdatedTime *string `locationName:"lastUpdatedTime" type:"string"` @@ -179126,6 +185220,12 @@ return s } +// SetFipsEnabled sets the FipsEnabled field's value. +func (s *VerifiedAccessInstance) SetFipsEnabled(v bool) *VerifiedAccessInstance { + s.FipsEnabled = &v + return s +} + // SetLastUpdatedTime sets the LastUpdatedTime field's value. func (s *VerifiedAccessInstance) SetLastUpdatedTime(v string) *VerifiedAccessInstance { s.LastUpdatedTime = &v @@ -179451,13 +185551,13 @@ // Sends Verified Access logs to CloudWatch Logs. CloudWatchLogs *VerifiedAccessLogCloudWatchLogsDestinationOptions `type:"structure"` - // Include trust data sent by trust providers into the logs. + // Indicates whether to include trust data sent by trust providers in the logs. IncludeTrustContext *bool `type:"boolean"` // Sends Verified Access logs to Kinesis. KinesisDataFirehose *VerifiedAccessLogKinesisDataFirehoseDestinationOptions `type:"structure"` - // The logging version to use. + // The logging version. // // Valid values: ocsf-0.1 | ocsf-1.0.0-rc.2 LogVersion *string `type:"string"` @@ -179688,13 +185788,13 @@ // CloudWatch Logs logging destination. CloudWatchLogs *VerifiedAccessLogCloudWatchLogsDestination `locationName:"cloudWatchLogs" type:"structure"` - // Describes current setting for including trust data into the logs. + // Indicates whether trust data is included in the logs. IncludeTrustContext *bool `locationName:"includeTrustContext" type:"boolean"` // Kinesis logging destination. KinesisDataFirehose *VerifiedAccessLogKinesisDataFirehoseDestination `locationName:"kinesisDataFirehose" type:"structure"` - // Describes current setting for the logging version. + // The log version. LogVersion *string `locationName:"logVersion" type:"string"` // Amazon S3 logging options. @@ -179749,6 +185849,94 @@ return s } +// Verified Access provides server side encryption by default to data at rest +// using Amazon Web Services-owned KMS keys. You also have the option of using +// customer managed KMS keys, which can be specified using the options below. +type VerifiedAccessSseSpecificationRequest struct { + _ struct{} `type:"structure"` + + // Enable or disable the use of customer managed KMS keys for server side encryption. + // + // Valid values: True | False + CustomerManagedKeyEnabled *bool `type:"boolean"` + + // The ARN of the KMS key. + KmsKeyArn *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 VerifiedAccessSseSpecificationRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifiedAccessSseSpecificationRequest) GoString() string { + return s.String() +} + +// SetCustomerManagedKeyEnabled sets the CustomerManagedKeyEnabled field's value. +func (s *VerifiedAccessSseSpecificationRequest) SetCustomerManagedKeyEnabled(v bool) *VerifiedAccessSseSpecificationRequest { + s.CustomerManagedKeyEnabled = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *VerifiedAccessSseSpecificationRequest) SetKmsKeyArn(v string) *VerifiedAccessSseSpecificationRequest { + s.KmsKeyArn = &v + return s +} + +// The options in use for server side encryption. +type VerifiedAccessSseSpecificationResponse struct { + _ struct{} `type:"structure"` + + // Indicates whether customer managed KMS keys are in use for server side encryption. + // + // Valid values: True | False + CustomerManagedKeyEnabled *bool `locationName:"customerManagedKeyEnabled" type:"boolean"` + + // The ARN of the KMS key. + KmsKeyArn *string `locationName:"kmsKeyArn" 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 VerifiedAccessSseSpecificationResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifiedAccessSseSpecificationResponse) GoString() string { + return s.String() +} + +// SetCustomerManagedKeyEnabled sets the CustomerManagedKeyEnabled field's value. +func (s *VerifiedAccessSseSpecificationResponse) SetCustomerManagedKeyEnabled(v bool) *VerifiedAccessSseSpecificationResponse { + s.CustomerManagedKeyEnabled = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *VerifiedAccessSseSpecificationResponse) SetKmsKeyArn(v string) *VerifiedAccessSseSpecificationResponse { + s.KmsKeyArn = &v + return s +} + // Describes a Verified Access trust provider. type VerifiedAccessTrustProvider struct { _ struct{} `type:"structure"` @@ -179774,6 +185962,9 @@ // The identifier to be used when working with policy rules. PolicyReferenceName *string `locationName:"policyReferenceName" type:"string"` + // The options in use for server side encryption. + SseSpecification *VerifiedAccessSseSpecificationResponse `locationName:"sseSpecification" type:"structure"` + // The tags. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` @@ -179847,6 +186038,12 @@ return s } +// SetSseSpecification sets the SseSpecification field's value. +func (s *VerifiedAccessTrustProvider) SetSseSpecification(v *VerifiedAccessSseSpecificationResponse) *VerifiedAccessTrustProvider { + s.SseSpecification = v + return s +} + // SetTags sets the Tags field's value. func (s *VerifiedAccessTrustProvider) SetTags(v []*Tag) *VerifiedAccessTrustProvider { s.Tags = v @@ -179949,7 +186146,8 @@ // The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate. CertificateArn *string `locationName:"certificateArn" type:"string"` - // The date and time of the last change in status. + // The date and time of the last change in status. This field is updated when + // changes in IKE (Phase 1), IPSec (Phase 2), or BGP status are detected. LastStatusChange *time.Time `locationName:"lastStatusChange" type:"timestamp"` // The Internet-routable IP address of the virtual private gateway's outside @@ -182850,26 +189048,30 @@ } const ( - // AcceleratorManufacturerNvidia is a AcceleratorManufacturer enum value - AcceleratorManufacturerNvidia = "nvidia" + // AcceleratorManufacturerAmazonWebServices is a AcceleratorManufacturer enum value + AcceleratorManufacturerAmazonWebServices = "amazon-web-services" // AcceleratorManufacturerAmd is a AcceleratorManufacturer enum value AcceleratorManufacturerAmd = "amd" - // AcceleratorManufacturerAmazonWebServices is a AcceleratorManufacturer enum value - AcceleratorManufacturerAmazonWebServices = "amazon-web-services" + // AcceleratorManufacturerNvidia is a AcceleratorManufacturer enum value + AcceleratorManufacturerNvidia = "nvidia" // AcceleratorManufacturerXilinx is a AcceleratorManufacturer enum value AcceleratorManufacturerXilinx = "xilinx" + + // AcceleratorManufacturerHabana is a AcceleratorManufacturer enum value + AcceleratorManufacturerHabana = "habana" ) // AcceleratorManufacturer_Values returns all elements of the AcceleratorManufacturer enum func AcceleratorManufacturer_Values() []string { return []string{ - AcceleratorManufacturerNvidia, - AcceleratorManufacturerAmd, AcceleratorManufacturerAmazonWebServices, + AcceleratorManufacturerAmd, + AcceleratorManufacturerNvidia, AcceleratorManufacturerXilinx, + AcceleratorManufacturerHabana, } } @@ -182877,43 +189079,55 @@ // AcceleratorNameA100 is a AcceleratorName enum value AcceleratorNameA100 = "a100" - // AcceleratorNameV100 is a AcceleratorName enum value - AcceleratorNameV100 = "v100" + // AcceleratorNameInferentia is a AcceleratorName enum value + AcceleratorNameInferentia = "inferentia" + + // AcceleratorNameK520 is a AcceleratorName enum value + AcceleratorNameK520 = "k520" // AcceleratorNameK80 is a AcceleratorName enum value AcceleratorNameK80 = "k80" - // AcceleratorNameT4 is a AcceleratorName enum value - AcceleratorNameT4 = "t4" - // AcceleratorNameM60 is a AcceleratorName enum value AcceleratorNameM60 = "m60" // AcceleratorNameRadeonProV520 is a AcceleratorName enum value AcceleratorNameRadeonProV520 = "radeon-pro-v520" + // AcceleratorNameT4 is a AcceleratorName enum value + AcceleratorNameT4 = "t4" + // AcceleratorNameVu9p is a AcceleratorName enum value AcceleratorNameVu9p = "vu9p" - // AcceleratorNameInferentia is a AcceleratorName enum value - AcceleratorNameInferentia = "inferentia" + // AcceleratorNameV100 is a AcceleratorName enum value + AcceleratorNameV100 = "v100" - // AcceleratorNameK520 is a AcceleratorName enum value - AcceleratorNameK520 = "k520" + // AcceleratorNameA10g is a AcceleratorName enum value + AcceleratorNameA10g = "a10g" + + // AcceleratorNameH100 is a AcceleratorName enum value + AcceleratorNameH100 = "h100" + + // AcceleratorNameT4g is a AcceleratorName enum value + AcceleratorNameT4g = "t4g" ) // AcceleratorName_Values returns all elements of the AcceleratorName enum func AcceleratorName_Values() []string { return []string{ AcceleratorNameA100, - AcceleratorNameV100, + AcceleratorNameInferentia, + AcceleratorNameK520, AcceleratorNameK80, - AcceleratorNameT4, AcceleratorNameM60, AcceleratorNameRadeonProV520, + AcceleratorNameT4, AcceleratorNameVu9p, - AcceleratorNameInferentia, - AcceleratorNameK520, + AcceleratorNameV100, + AcceleratorNameA10g, + AcceleratorNameH100, + AcceleratorNameT4g, } } @@ -183238,6 +189452,70 @@ } const ( + // AsnAssociationStateDisassociated is a AsnAssociationState enum value + AsnAssociationStateDisassociated = "disassociated" + + // AsnAssociationStateFailedDisassociation is a AsnAssociationState enum value + AsnAssociationStateFailedDisassociation = "failed-disassociation" + + // AsnAssociationStateFailedAssociation is a AsnAssociationState enum value + AsnAssociationStateFailedAssociation = "failed-association" + + // AsnAssociationStatePendingDisassociation is a AsnAssociationState enum value + AsnAssociationStatePendingDisassociation = "pending-disassociation" + + // AsnAssociationStatePendingAssociation is a AsnAssociationState enum value + AsnAssociationStatePendingAssociation = "pending-association" + + // AsnAssociationStateAssociated is a AsnAssociationState enum value + AsnAssociationStateAssociated = "associated" +) + +// AsnAssociationState_Values returns all elements of the AsnAssociationState enum +func AsnAssociationState_Values() []string { + return []string{ + AsnAssociationStateDisassociated, + AsnAssociationStateFailedDisassociation, + AsnAssociationStateFailedAssociation, + AsnAssociationStatePendingDisassociation, + AsnAssociationStatePendingAssociation, + AsnAssociationStateAssociated, + } +} + +const ( + // AsnStateDeprovisioned is a AsnState enum value + AsnStateDeprovisioned = "deprovisioned" + + // AsnStateFailedDeprovision is a AsnState enum value + AsnStateFailedDeprovision = "failed-deprovision" + + // AsnStateFailedProvision is a AsnState enum value + AsnStateFailedProvision = "failed-provision" + + // AsnStatePendingDeprovision is a AsnState enum value + AsnStatePendingDeprovision = "pending-deprovision" + + // AsnStatePendingProvision is a AsnState enum value + AsnStatePendingProvision = "pending-provision" + + // AsnStateProvisioned is a AsnState enum value + AsnStateProvisioned = "provisioned" +) + +// AsnState_Values returns all elements of the AsnState enum +func AsnState_Values() []string { + return []string{ + AsnStateDeprovisioned, + AsnStateFailedDeprovision, + AsnStateFailedProvision, + AsnStatePendingDeprovision, + AsnStatePendingProvision, + AsnStateProvisioned, + } +} + +const ( // AssociatedNetworkTypeVpc is a AssociatedNetworkType enum value AssociatedNetworkTypeVpc = "vpc" ) @@ -183744,6 +190022,9 @@ // CapacityReservationInstancePlatformRhelwithHaandSqlserverEnterprise is a CapacityReservationInstancePlatform enum value CapacityReservationInstancePlatformRhelwithHaandSqlserverEnterprise = "RHEL with HA and SQL Server Enterprise" + + // CapacityReservationInstancePlatformUbuntuPro is a CapacityReservationInstancePlatform enum value + CapacityReservationInstancePlatformUbuntuPro = "Ubuntu Pro" ) // CapacityReservationInstancePlatform_Values returns all elements of the CapacityReservationInstancePlatform enum @@ -183766,6 +190047,7 @@ CapacityReservationInstancePlatformRhelwithHa, CapacityReservationInstancePlatformRhelwithHaandSqlserverStandard, CapacityReservationInstancePlatformRhelwithHaandSqlserverEnterprise, + CapacityReservationInstancePlatformUbuntuPro, } } @@ -183800,6 +190082,15 @@ // CapacityReservationStateFailed is a CapacityReservationState enum value CapacityReservationStateFailed = "failed" + + // CapacityReservationStateScheduled is a CapacityReservationState enum value + CapacityReservationStateScheduled = "scheduled" + + // CapacityReservationStatePaymentPending is a CapacityReservationState enum value + CapacityReservationStatePaymentPending = "payment-pending" + + // CapacityReservationStatePaymentFailed is a CapacityReservationState enum value + CapacityReservationStatePaymentFailed = "payment-failed" ) // CapacityReservationState_Values returns all elements of the CapacityReservationState enum @@ -183810,6 +190101,9 @@ CapacityReservationStateCancelled, CapacityReservationStatePending, CapacityReservationStateFailed, + CapacityReservationStateScheduled, + CapacityReservationStatePaymentPending, + CapacityReservationStatePaymentFailed, } } @@ -183830,6 +190124,22 @@ } const ( + // CapacityReservationTypeDefault is a CapacityReservationType enum value + CapacityReservationTypeDefault = "default" + + // CapacityReservationTypeCapacityBlock is a CapacityReservationType enum value + CapacityReservationTypeCapacityBlock = "capacity-block" +) + +// CapacityReservationType_Values returns all elements of the CapacityReservationType enum +func CapacityReservationType_Values() []string { + return []string{ + CapacityReservationTypeDefault, + CapacityReservationTypeCapacityBlock, + } +} + +const ( // CarrierGatewayStatePending is a CarrierGatewayState enum value CarrierGatewayStatePending = "pending" @@ -184179,6 +190489,9 @@ // DefaultTargetCapacityTypeOnDemand is a DefaultTargetCapacityType enum value DefaultTargetCapacityTypeOnDemand = "on-demand" + + // DefaultTargetCapacityTypeCapacityBlock is a DefaultTargetCapacityType enum value + DefaultTargetCapacityTypeCapacityBlock = "capacity-block" ) // DefaultTargetCapacityType_Values returns all elements of the DefaultTargetCapacityType enum @@ -184186,6 +190499,7 @@ return []string{ DefaultTargetCapacityTypeSpot, DefaultTargetCapacityTypeOnDemand, + DefaultTargetCapacityTypeCapacityBlock, } } @@ -184255,6 +190569,9 @@ // DeviceTrustProviderTypeCrowdstrike is a DeviceTrustProviderType enum value DeviceTrustProviderTypeCrowdstrike = "crowdstrike" + + // DeviceTrustProviderTypeJumpcloud is a DeviceTrustProviderType enum value + DeviceTrustProviderTypeJumpcloud = "jumpcloud" ) // DeviceTrustProviderType_Values returns all elements of the DeviceTrustProviderType enum @@ -184262,6 +190579,7 @@ return []string{ DeviceTrustProviderTypeJamf, DeviceTrustProviderTypeCrowdstrike, + DeviceTrustProviderTypeJumpcloud, } } @@ -185318,6 +191636,9 @@ // ImageStateError is a ImageState enum value ImageStateError = "error" + + // ImageStateDisabled is a ImageState enum value + ImageStateDisabled = "disabled" ) // ImageState_Values returns all elements of the ImageState enum @@ -185330,6 +191651,7 @@ ImageStateTransient, ImageStateFailed, ImageStateError, + ImageStateDisabled, } } @@ -185567,6 +191889,9 @@ // InstanceLifecycleTypeScheduled is a InstanceLifecycleType enum value InstanceLifecycleTypeScheduled = "scheduled" + + // InstanceLifecycleTypeCapacityBlock is a InstanceLifecycleType enum value + InstanceLifecycleTypeCapacityBlock = "capacity-block" ) // InstanceLifecycleType_Values returns all elements of the InstanceLifecycleType enum @@ -185574,6 +191899,7 @@ return []string{ InstanceLifecycleTypeSpot, InstanceLifecycleTypeScheduled, + InstanceLifecycleTypeCapacityBlock, } } @@ -187925,6 +194251,102 @@ // InstanceTypeC7i48xlarge is a InstanceType enum value InstanceTypeC7i48xlarge = "c7i.48xlarge" + + // InstanceTypeMac2M2proMetal is a InstanceType enum value + InstanceTypeMac2M2proMetal = "mac2-m2pro.metal" + + // InstanceTypeR7izLarge is a InstanceType enum value + InstanceTypeR7izLarge = "r7iz.large" + + // InstanceTypeR7izXlarge is a InstanceType enum value + InstanceTypeR7izXlarge = "r7iz.xlarge" + + // InstanceTypeR7iz2xlarge is a InstanceType enum value + InstanceTypeR7iz2xlarge = "r7iz.2xlarge" + + // InstanceTypeR7iz4xlarge is a InstanceType enum value + InstanceTypeR7iz4xlarge = "r7iz.4xlarge" + + // InstanceTypeR7iz8xlarge is a InstanceType enum value + InstanceTypeR7iz8xlarge = "r7iz.8xlarge" + + // InstanceTypeR7iz12xlarge is a InstanceType enum value + InstanceTypeR7iz12xlarge = "r7iz.12xlarge" + + // InstanceTypeR7iz16xlarge is a InstanceType enum value + InstanceTypeR7iz16xlarge = "r7iz.16xlarge" + + // InstanceTypeR7iz32xlarge is a InstanceType enum value + InstanceTypeR7iz32xlarge = "r7iz.32xlarge" + + // InstanceTypeC7aMedium is a InstanceType enum value + InstanceTypeC7aMedium = "c7a.medium" + + // InstanceTypeC7aLarge is a InstanceType enum value + InstanceTypeC7aLarge = "c7a.large" + + // InstanceTypeC7aXlarge is a InstanceType enum value + InstanceTypeC7aXlarge = "c7a.xlarge" + + // InstanceTypeC7a2xlarge is a InstanceType enum value + InstanceTypeC7a2xlarge = "c7a.2xlarge" + + // InstanceTypeC7a4xlarge is a InstanceType enum value + InstanceTypeC7a4xlarge = "c7a.4xlarge" + + // InstanceTypeC7a8xlarge is a InstanceType enum value + InstanceTypeC7a8xlarge = "c7a.8xlarge" + + // InstanceTypeC7a12xlarge is a InstanceType enum value + InstanceTypeC7a12xlarge = "c7a.12xlarge" + + // InstanceTypeC7a16xlarge is a InstanceType enum value + InstanceTypeC7a16xlarge = "c7a.16xlarge" + + // InstanceTypeC7a24xlarge is a InstanceType enum value + InstanceTypeC7a24xlarge = "c7a.24xlarge" + + // InstanceTypeC7a32xlarge is a InstanceType enum value + InstanceTypeC7a32xlarge = "c7a.32xlarge" + + // InstanceTypeC7a48xlarge is a InstanceType enum value + InstanceTypeC7a48xlarge = "c7a.48xlarge" + + // InstanceTypeC7aMetal48xl is a InstanceType enum value + InstanceTypeC7aMetal48xl = "c7a.metal-48xl" + + // InstanceTypeR7aMetal48xl is a InstanceType enum value + InstanceTypeR7aMetal48xl = "r7a.metal-48xl" + + // InstanceTypeR7iLarge is a InstanceType enum value + InstanceTypeR7iLarge = "r7i.large" + + // InstanceTypeR7iXlarge is a InstanceType enum value + InstanceTypeR7iXlarge = "r7i.xlarge" + + // InstanceTypeR7i2xlarge is a InstanceType enum value + InstanceTypeR7i2xlarge = "r7i.2xlarge" + + // InstanceTypeR7i4xlarge is a InstanceType enum value + InstanceTypeR7i4xlarge = "r7i.4xlarge" + + // InstanceTypeR7i8xlarge is a InstanceType enum value + InstanceTypeR7i8xlarge = "r7i.8xlarge" + + // InstanceTypeR7i12xlarge is a InstanceType enum value + InstanceTypeR7i12xlarge = "r7i.12xlarge" + + // InstanceTypeR7i16xlarge is a InstanceType enum value + InstanceTypeR7i16xlarge = "r7i.16xlarge" + + // InstanceTypeR7i24xlarge is a InstanceType enum value + InstanceTypeR7i24xlarge = "r7i.24xlarge" + + // InstanceTypeR7i48xlarge is a InstanceType enum value + InstanceTypeR7i48xlarge = "r7i.48xlarge" + + // InstanceTypeDl2q24xlarge is a InstanceType enum value + InstanceTypeDl2q24xlarge = "dl2q.24xlarge" ) // InstanceType_Values returns all elements of the InstanceType enum @@ -188670,6 +195092,38 @@ InstanceTypeC7i16xlarge, InstanceTypeC7i24xlarge, InstanceTypeC7i48xlarge, + InstanceTypeMac2M2proMetal, + InstanceTypeR7izLarge, + InstanceTypeR7izXlarge, + InstanceTypeR7iz2xlarge, + InstanceTypeR7iz4xlarge, + InstanceTypeR7iz8xlarge, + InstanceTypeR7iz12xlarge, + InstanceTypeR7iz16xlarge, + InstanceTypeR7iz32xlarge, + InstanceTypeC7aMedium, + InstanceTypeC7aLarge, + InstanceTypeC7aXlarge, + InstanceTypeC7a2xlarge, + InstanceTypeC7a4xlarge, + InstanceTypeC7a8xlarge, + InstanceTypeC7a12xlarge, + InstanceTypeC7a16xlarge, + InstanceTypeC7a24xlarge, + InstanceTypeC7a32xlarge, + InstanceTypeC7a48xlarge, + InstanceTypeC7aMetal48xl, + InstanceTypeR7aMetal48xl, + InstanceTypeR7iLarge, + InstanceTypeR7iXlarge, + InstanceTypeR7i2xlarge, + InstanceTypeR7i4xlarge, + InstanceTypeR7i8xlarge, + InstanceTypeR7i12xlarge, + InstanceTypeR7i16xlarge, + InstanceTypeR7i24xlarge, + InstanceTypeR7i48xlarge, + InstanceTypeDl2q24xlarge, } } @@ -188881,6 +195335,9 @@ // IpamPoolAllocationResourceTypeCustom is a IpamPoolAllocationResourceType enum value IpamPoolAllocationResourceTypeCustom = "custom" + + // IpamPoolAllocationResourceTypeSubnet is a IpamPoolAllocationResourceType enum value + IpamPoolAllocationResourceTypeSubnet = "subnet" ) // IpamPoolAllocationResourceType_Values returns all elements of the IpamPoolAllocationResourceType enum @@ -188890,6 +195347,7 @@ IpamPoolAllocationResourceTypeVpc, IpamPoolAllocationResourceTypeEc2PublicIpv4Pool, IpamPoolAllocationResourceTypeCustom, + IpamPoolAllocationResourceTypeSubnet, } } @@ -188978,6 +195436,18 @@ } const ( + // IpamPoolSourceResourceTypeVpc is a IpamPoolSourceResourceType enum value + IpamPoolSourceResourceTypeVpc = "vpc" +) + +// IpamPoolSourceResourceType_Values returns all elements of the IpamPoolSourceResourceType enum +func IpamPoolSourceResourceType_Values() []string { + return []string{ + IpamPoolSourceResourceTypeVpc, + } +} + +const ( // IpamPoolStateCreateInProgress is a IpamPoolState enum value IpamPoolStateCreateInProgress = "create-in-progress" @@ -189034,6 +195504,94 @@ } const ( + // IpamPublicAddressAssociationStatusAssociated is a IpamPublicAddressAssociationStatus enum value + IpamPublicAddressAssociationStatusAssociated = "associated" + + // IpamPublicAddressAssociationStatusDisassociated is a IpamPublicAddressAssociationStatus enum value + IpamPublicAddressAssociationStatusDisassociated = "disassociated" +) + +// IpamPublicAddressAssociationStatus_Values returns all elements of the IpamPublicAddressAssociationStatus enum +func IpamPublicAddressAssociationStatus_Values() []string { + return []string{ + IpamPublicAddressAssociationStatusAssociated, + IpamPublicAddressAssociationStatusDisassociated, + } +} + +const ( + // IpamPublicAddressAwsServiceNatGateway is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceNatGateway = "nat-gateway" + + // IpamPublicAddressAwsServiceDatabaseMigrationService is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceDatabaseMigrationService = "database-migration-service" + + // IpamPublicAddressAwsServiceRedshift is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceRedshift = "redshift" + + // IpamPublicAddressAwsServiceElasticContainerService is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceElasticContainerService = "elastic-container-service" + + // IpamPublicAddressAwsServiceRelationalDatabaseService is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceRelationalDatabaseService = "relational-database-service" + + // IpamPublicAddressAwsServiceSiteToSiteVpn is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceSiteToSiteVpn = "site-to-site-vpn" + + // IpamPublicAddressAwsServiceLoadBalancer is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceLoadBalancer = "load-balancer" + + // IpamPublicAddressAwsServiceGlobalAccelerator is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceGlobalAccelerator = "global-accelerator" + + // IpamPublicAddressAwsServiceOther is a IpamPublicAddressAwsService enum value + IpamPublicAddressAwsServiceOther = "other" +) + +// IpamPublicAddressAwsService_Values returns all elements of the IpamPublicAddressAwsService enum +func IpamPublicAddressAwsService_Values() []string { + return []string{ + IpamPublicAddressAwsServiceNatGateway, + IpamPublicAddressAwsServiceDatabaseMigrationService, + IpamPublicAddressAwsServiceRedshift, + IpamPublicAddressAwsServiceElasticContainerService, + IpamPublicAddressAwsServiceRelationalDatabaseService, + IpamPublicAddressAwsServiceSiteToSiteVpn, + IpamPublicAddressAwsServiceLoadBalancer, + IpamPublicAddressAwsServiceGlobalAccelerator, + IpamPublicAddressAwsServiceOther, + } +} + +const ( + // IpamPublicAddressTypeServiceManagedIp is a IpamPublicAddressType enum value + IpamPublicAddressTypeServiceManagedIp = "service-managed-ip" + + // IpamPublicAddressTypeServiceManagedByoip is a IpamPublicAddressType enum value + IpamPublicAddressTypeServiceManagedByoip = "service-managed-byoip" + + // IpamPublicAddressTypeAmazonOwnedEip is a IpamPublicAddressType enum value + IpamPublicAddressTypeAmazonOwnedEip = "amazon-owned-eip" + + // IpamPublicAddressTypeByoip is a IpamPublicAddressType enum value + IpamPublicAddressTypeByoip = "byoip" + + // IpamPublicAddressTypeEc2PublicIp is a IpamPublicAddressType enum value + IpamPublicAddressTypeEc2PublicIp = "ec2-public-ip" +) + +// IpamPublicAddressType_Values returns all elements of the IpamPublicAddressType enum +func IpamPublicAddressType_Values() []string { + return []string{ + IpamPublicAddressTypeServiceManagedIp, + IpamPublicAddressTypeServiceManagedByoip, + IpamPublicAddressTypeAmazonOwnedEip, + IpamPublicAddressTypeByoip, + IpamPublicAddressTypeEc2PublicIp, + } +} + +const ( // IpamResourceDiscoveryAssociationStateAssociateInProgress is a IpamResourceDiscoveryAssociationState enum value IpamResourceDiscoveryAssociationStateAssociateInProgress = "associate-in-progress" @@ -189148,6 +195706,9 @@ // IpamResourceTypeIpv6Pool is a IpamResourceType enum value IpamResourceTypeIpv6Pool = "ipv6-pool" + + // IpamResourceTypeEni is a IpamResourceType enum value + IpamResourceTypeEni = "eni" ) // IpamResourceType_Values returns all elements of the IpamResourceType enum @@ -189158,6 +195719,7 @@ IpamResourceTypeEip, IpamResourceTypePublicIpv4Pool, IpamResourceTypeIpv6Pool, + IpamResourceTypeEni, } } @@ -189290,6 +195852,22 @@ } const ( + // IpamTierFree is a IpamTier enum value + IpamTierFree = "free" + + // IpamTierAdvanced is a IpamTier enum value + IpamTierAdvanced = "advanced" +) + +// IpamTier_Values returns all elements of the IpamTier enum +func IpamTier_Values() []string { + return []string{ + IpamTierFree, + IpamTierAdvanced, + } +} + +const ( // Ipv6SupportValueEnable is a Ipv6SupportValue enum value Ipv6SupportValueEnable = "enable" @@ -189634,6 +196212,46 @@ } const ( + // LockModeCompliance is a LockMode enum value + LockModeCompliance = "compliance" + + // LockModeGovernance is a LockMode enum value + LockModeGovernance = "governance" +) + +// LockMode_Values returns all elements of the LockMode enum +func LockMode_Values() []string { + return []string{ + LockModeCompliance, + LockModeGovernance, + } +} + +const ( + // LockStateCompliance is a LockState enum value + LockStateCompliance = "compliance" + + // LockStateGovernance is a LockState enum value + LockStateGovernance = "governance" + + // LockStateComplianceCooloff is a LockState enum value + LockStateComplianceCooloff = "compliance-cooloff" + + // LockStateExpired is a LockState enum value + LockStateExpired = "expired" +) + +// LockState_Values returns all elements of the LockState enum +func LockState_Values() []string { + return []string{ + LockStateCompliance, + LockStateGovernance, + LockStateComplianceCooloff, + LockStateExpired, + } +} + +const ( // LogDestinationTypeCloudWatchLogs is a LogDestinationType enum value LogDestinationTypeCloudWatchLogs = "cloud-watch-logs" @@ -189656,12 +196274,16 @@ const ( // MarketTypeSpot is a MarketType enum value MarketTypeSpot = "spot" + + // MarketTypeCapacityBlock is a MarketType enum value + MarketTypeCapacityBlock = "capacity-block" ) // MarketType_Values returns all elements of the MarketType enum func MarketType_Values() []string { return []string{ MarketTypeSpot, + MarketTypeCapacityBlock, } } @@ -191126,6 +197748,22 @@ } const ( + // SecurityGroupReferencingSupportValueEnable is a SecurityGroupReferencingSupportValue enum value + SecurityGroupReferencingSupportValueEnable = "enable" + + // SecurityGroupReferencingSupportValueDisable is a SecurityGroupReferencingSupportValue enum value + SecurityGroupReferencingSupportValueDisable = "disable" +) + +// SecurityGroupReferencingSupportValue_Values returns all elements of the SecurityGroupReferencingSupportValue enum +func SecurityGroupReferencingSupportValue_Values() []string { + return []string{ + SecurityGroupReferencingSupportValueEnable, + SecurityGroupReferencingSupportValueDisable, + } +} + +const ( // SelfServicePortalEnabled is a SelfServicePortal enum value SelfServicePortalEnabled = "enabled" @@ -191238,6 +197876,26 @@ } const ( + // SnapshotBlockPublicAccessStateBlockAllSharing is a SnapshotBlockPublicAccessState enum value + SnapshotBlockPublicAccessStateBlockAllSharing = "block-all-sharing" + + // SnapshotBlockPublicAccessStateBlockNewSharing is a SnapshotBlockPublicAccessState enum value + SnapshotBlockPublicAccessStateBlockNewSharing = "block-new-sharing" + + // SnapshotBlockPublicAccessStateUnblocked is a SnapshotBlockPublicAccessState enum value + SnapshotBlockPublicAccessStateUnblocked = "unblocked" +) + +// SnapshotBlockPublicAccessState_Values returns all elements of the SnapshotBlockPublicAccessState enum +func SnapshotBlockPublicAccessState_Values() []string { + return []string{ + SnapshotBlockPublicAccessStateBlockAllSharing, + SnapshotBlockPublicAccessStateBlockNewSharing, + SnapshotBlockPublicAccessStateUnblocked, + } +} + +const ( // SnapshotStatePending is a SnapshotState enum value SnapshotStatePending = "pending" @@ -192391,6 +199049,9 @@ // UsageClassTypeOnDemand is a UsageClassType enum value UsageClassTypeOnDemand = "on-demand" + + // UsageClassTypeCapacityBlock is a UsageClassType enum value + UsageClassTypeCapacityBlock = "capacity-block" ) // UsageClassType_Values returns all elements of the UsageClassType enum @@ -192398,6 +199059,7 @@ return []string{ UsageClassTypeSpot, UsageClassTypeOnDemand, + UsageClassTypeCapacityBlock, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ec2/ec2iface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ec2/ec2iface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ec2/ec2iface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ec2/ec2iface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -144,6 +144,10 @@ AssociateInstanceEventWindowWithContext(aws.Context, *ec2.AssociateInstanceEventWindowInput, ...request.Option) (*ec2.AssociateInstanceEventWindowOutput, error) AssociateInstanceEventWindowRequest(*ec2.AssociateInstanceEventWindowInput) (*request.Request, *ec2.AssociateInstanceEventWindowOutput) + AssociateIpamByoasn(*ec2.AssociateIpamByoasnInput) (*ec2.AssociateIpamByoasnOutput, error) + AssociateIpamByoasnWithContext(aws.Context, *ec2.AssociateIpamByoasnInput, ...request.Option) (*ec2.AssociateIpamByoasnOutput, error) + AssociateIpamByoasnRequest(*ec2.AssociateIpamByoasnInput) (*request.Request, *ec2.AssociateIpamByoasnOutput) + AssociateIpamResourceDiscovery(*ec2.AssociateIpamResourceDiscoveryInput) (*ec2.AssociateIpamResourceDiscoveryOutput, error) AssociateIpamResourceDiscoveryWithContext(aws.Context, *ec2.AssociateIpamResourceDiscoveryInput, ...request.Option) (*ec2.AssociateIpamResourceDiscoveryOutput, error) AssociateIpamResourceDiscoveryRequest(*ec2.AssociateIpamResourceDiscoveryInput) (*request.Request, *ec2.AssociateIpamResourceDiscoveryOutput) @@ -904,6 +908,10 @@ DeprovisionByoipCidrWithContext(aws.Context, *ec2.DeprovisionByoipCidrInput, ...request.Option) (*ec2.DeprovisionByoipCidrOutput, error) DeprovisionByoipCidrRequest(*ec2.DeprovisionByoipCidrInput) (*request.Request, *ec2.DeprovisionByoipCidrOutput) + DeprovisionIpamByoasn(*ec2.DeprovisionIpamByoasnInput) (*ec2.DeprovisionIpamByoasnOutput, error) + DeprovisionIpamByoasnWithContext(aws.Context, *ec2.DeprovisionIpamByoasnInput, ...request.Option) (*ec2.DeprovisionIpamByoasnOutput, error) + DeprovisionIpamByoasnRequest(*ec2.DeprovisionIpamByoasnInput) (*request.Request, *ec2.DeprovisionIpamByoasnOutput) + DeprovisionIpamPoolCidr(*ec2.DeprovisionIpamPoolCidrInput) (*ec2.DeprovisionIpamPoolCidrOutput, error) DeprovisionIpamPoolCidrWithContext(aws.Context, *ec2.DeprovisionIpamPoolCidrInput, ...request.Option) (*ec2.DeprovisionIpamPoolCidrOutput, error) DeprovisionIpamPoolCidrRequest(*ec2.DeprovisionIpamPoolCidrInput) (*request.Request, *ec2.DeprovisionIpamPoolCidrOutput) @@ -976,6 +984,13 @@ DescribeByoipCidrsPages(*ec2.DescribeByoipCidrsInput, func(*ec2.DescribeByoipCidrsOutput, bool) bool) error DescribeByoipCidrsPagesWithContext(aws.Context, *ec2.DescribeByoipCidrsInput, func(*ec2.DescribeByoipCidrsOutput, bool) bool, ...request.Option) error + DescribeCapacityBlockOfferings(*ec2.DescribeCapacityBlockOfferingsInput) (*ec2.DescribeCapacityBlockOfferingsOutput, error) + DescribeCapacityBlockOfferingsWithContext(aws.Context, *ec2.DescribeCapacityBlockOfferingsInput, ...request.Option) (*ec2.DescribeCapacityBlockOfferingsOutput, error) + DescribeCapacityBlockOfferingsRequest(*ec2.DescribeCapacityBlockOfferingsInput) (*request.Request, *ec2.DescribeCapacityBlockOfferingsOutput) + + DescribeCapacityBlockOfferingsPages(*ec2.DescribeCapacityBlockOfferingsInput, func(*ec2.DescribeCapacityBlockOfferingsOutput, bool) bool) error + DescribeCapacityBlockOfferingsPagesWithContext(aws.Context, *ec2.DescribeCapacityBlockOfferingsInput, func(*ec2.DescribeCapacityBlockOfferingsOutput, bool) bool, ...request.Option) error + DescribeCapacityReservationFleets(*ec2.DescribeCapacityReservationFleetsInput) (*ec2.DescribeCapacityReservationFleetsOutput, error) DescribeCapacityReservationFleetsWithContext(aws.Context, *ec2.DescribeCapacityReservationFleetsInput, ...request.Option) (*ec2.DescribeCapacityReservationFleetsOutput, error) DescribeCapacityReservationFleetsRequest(*ec2.DescribeCapacityReservationFleetsInput) (*request.Request, *ec2.DescribeCapacityReservationFleetsOutput) @@ -1227,6 +1242,13 @@ DescribeInstanceStatusPages(*ec2.DescribeInstanceStatusInput, func(*ec2.DescribeInstanceStatusOutput, bool) bool) error DescribeInstanceStatusPagesWithContext(aws.Context, *ec2.DescribeInstanceStatusInput, func(*ec2.DescribeInstanceStatusOutput, bool) bool, ...request.Option) error + DescribeInstanceTopology(*ec2.DescribeInstanceTopologyInput) (*ec2.DescribeInstanceTopologyOutput, error) + DescribeInstanceTopologyWithContext(aws.Context, *ec2.DescribeInstanceTopologyInput, ...request.Option) (*ec2.DescribeInstanceTopologyOutput, error) + DescribeInstanceTopologyRequest(*ec2.DescribeInstanceTopologyInput) (*request.Request, *ec2.DescribeInstanceTopologyOutput) + + DescribeInstanceTopologyPages(*ec2.DescribeInstanceTopologyInput, func(*ec2.DescribeInstanceTopologyOutput, bool) bool) error + DescribeInstanceTopologyPagesWithContext(aws.Context, *ec2.DescribeInstanceTopologyInput, func(*ec2.DescribeInstanceTopologyOutput, bool) bool, ...request.Option) error + DescribeInstanceTypeOfferings(*ec2.DescribeInstanceTypeOfferingsInput) (*ec2.DescribeInstanceTypeOfferingsOutput, error) DescribeInstanceTypeOfferingsWithContext(aws.Context, *ec2.DescribeInstanceTypeOfferingsInput, ...request.Option) (*ec2.DescribeInstanceTypeOfferingsOutput, error) DescribeInstanceTypeOfferingsRequest(*ec2.DescribeInstanceTypeOfferingsInput) (*request.Request, *ec2.DescribeInstanceTypeOfferingsOutput) @@ -1255,6 +1277,10 @@ DescribeInternetGatewaysPages(*ec2.DescribeInternetGatewaysInput, func(*ec2.DescribeInternetGatewaysOutput, bool) bool) error DescribeInternetGatewaysPagesWithContext(aws.Context, *ec2.DescribeInternetGatewaysInput, func(*ec2.DescribeInternetGatewaysOutput, bool) bool, ...request.Option) error + DescribeIpamByoasn(*ec2.DescribeIpamByoasnInput) (*ec2.DescribeIpamByoasnOutput, error) + DescribeIpamByoasnWithContext(aws.Context, *ec2.DescribeIpamByoasnInput, ...request.Option) (*ec2.DescribeIpamByoasnOutput, error) + DescribeIpamByoasnRequest(*ec2.DescribeIpamByoasnInput) (*request.Request, *ec2.DescribeIpamByoasnOutput) + DescribeIpamPools(*ec2.DescribeIpamPoolsInput) (*ec2.DescribeIpamPoolsOutput, error) DescribeIpamPoolsWithContext(aws.Context, *ec2.DescribeIpamPoolsInput, ...request.Option) (*ec2.DescribeIpamPoolsOutput, error) DescribeIpamPoolsRequest(*ec2.DescribeIpamPoolsInput) (*request.Request, *ec2.DescribeIpamPoolsOutput) @@ -1357,6 +1383,10 @@ DescribeLocalGatewaysPages(*ec2.DescribeLocalGatewaysInput, func(*ec2.DescribeLocalGatewaysOutput, bool) bool) error DescribeLocalGatewaysPagesWithContext(aws.Context, *ec2.DescribeLocalGatewaysInput, func(*ec2.DescribeLocalGatewaysOutput, bool) bool, ...request.Option) error + DescribeLockedSnapshots(*ec2.DescribeLockedSnapshotsInput) (*ec2.DescribeLockedSnapshotsOutput, error) + DescribeLockedSnapshotsWithContext(aws.Context, *ec2.DescribeLockedSnapshotsInput, ...request.Option) (*ec2.DescribeLockedSnapshotsOutput, error) + DescribeLockedSnapshotsRequest(*ec2.DescribeLockedSnapshotsInput) (*request.Request, *ec2.DescribeLockedSnapshotsOutput) + DescribeManagedPrefixLists(*ec2.DescribeManagedPrefixListsInput) (*ec2.DescribeManagedPrefixListsOutput, error) DescribeManagedPrefixListsWithContext(aws.Context, *ec2.DescribeManagedPrefixListsInput, ...request.Option) (*ec2.DescribeManagedPrefixListsOutput, error) DescribeManagedPrefixListsRequest(*ec2.DescribeManagedPrefixListsInput) (*request.Request, *ec2.DescribeManagedPrefixListsOutput) @@ -1885,6 +1915,10 @@ DisableFastSnapshotRestoresWithContext(aws.Context, *ec2.DisableFastSnapshotRestoresInput, ...request.Option) (*ec2.DisableFastSnapshotRestoresOutput, error) DisableFastSnapshotRestoresRequest(*ec2.DisableFastSnapshotRestoresInput) (*request.Request, *ec2.DisableFastSnapshotRestoresOutput) + DisableImage(*ec2.DisableImageInput) (*ec2.DisableImageOutput, error) + DisableImageWithContext(aws.Context, *ec2.DisableImageInput, ...request.Option) (*ec2.DisableImageOutput, error) + DisableImageRequest(*ec2.DisableImageInput) (*request.Request, *ec2.DisableImageOutput) + DisableImageBlockPublicAccess(*ec2.DisableImageBlockPublicAccessInput) (*ec2.DisableImageBlockPublicAccessOutput, error) DisableImageBlockPublicAccessWithContext(aws.Context, *ec2.DisableImageBlockPublicAccessInput, ...request.Option) (*ec2.DisableImageBlockPublicAccessOutput, error) DisableImageBlockPublicAccessRequest(*ec2.DisableImageBlockPublicAccessInput) (*request.Request, *ec2.DisableImageBlockPublicAccessOutput) @@ -1901,6 +1935,10 @@ DisableSerialConsoleAccessWithContext(aws.Context, *ec2.DisableSerialConsoleAccessInput, ...request.Option) (*ec2.DisableSerialConsoleAccessOutput, error) DisableSerialConsoleAccessRequest(*ec2.DisableSerialConsoleAccessInput) (*request.Request, *ec2.DisableSerialConsoleAccessOutput) + DisableSnapshotBlockPublicAccess(*ec2.DisableSnapshotBlockPublicAccessInput) (*ec2.DisableSnapshotBlockPublicAccessOutput, error) + DisableSnapshotBlockPublicAccessWithContext(aws.Context, *ec2.DisableSnapshotBlockPublicAccessInput, ...request.Option) (*ec2.DisableSnapshotBlockPublicAccessOutput, error) + DisableSnapshotBlockPublicAccessRequest(*ec2.DisableSnapshotBlockPublicAccessInput) (*request.Request, *ec2.DisableSnapshotBlockPublicAccessOutput) + DisableTransitGatewayRouteTablePropagation(*ec2.DisableTransitGatewayRouteTablePropagationInput) (*ec2.DisableTransitGatewayRouteTablePropagationOutput, error) DisableTransitGatewayRouteTablePropagationWithContext(aws.Context, *ec2.DisableTransitGatewayRouteTablePropagationInput, ...request.Option) (*ec2.DisableTransitGatewayRouteTablePropagationOutput, error) DisableTransitGatewayRouteTablePropagationRequest(*ec2.DisableTransitGatewayRouteTablePropagationInput) (*request.Request, *ec2.DisableTransitGatewayRouteTablePropagationOutput) @@ -1937,6 +1975,10 @@ DisassociateInstanceEventWindowWithContext(aws.Context, *ec2.DisassociateInstanceEventWindowInput, ...request.Option) (*ec2.DisassociateInstanceEventWindowOutput, error) DisassociateInstanceEventWindowRequest(*ec2.DisassociateInstanceEventWindowInput) (*request.Request, *ec2.DisassociateInstanceEventWindowOutput) + DisassociateIpamByoasn(*ec2.DisassociateIpamByoasnInput) (*ec2.DisassociateIpamByoasnOutput, error) + DisassociateIpamByoasnWithContext(aws.Context, *ec2.DisassociateIpamByoasnInput, ...request.Option) (*ec2.DisassociateIpamByoasnOutput, error) + DisassociateIpamByoasnRequest(*ec2.DisassociateIpamByoasnInput) (*request.Request, *ec2.DisassociateIpamByoasnOutput) + DisassociateIpamResourceDiscovery(*ec2.DisassociateIpamResourceDiscoveryInput) (*ec2.DisassociateIpamResourceDiscoveryOutput, error) DisassociateIpamResourceDiscoveryWithContext(aws.Context, *ec2.DisassociateIpamResourceDiscoveryInput, ...request.Option) (*ec2.DisassociateIpamResourceDiscoveryOutput, error) DisassociateIpamResourceDiscoveryRequest(*ec2.DisassociateIpamResourceDiscoveryInput) (*request.Request, *ec2.DisassociateIpamResourceDiscoveryOutput) @@ -1993,6 +2035,10 @@ EnableFastSnapshotRestoresWithContext(aws.Context, *ec2.EnableFastSnapshotRestoresInput, ...request.Option) (*ec2.EnableFastSnapshotRestoresOutput, error) EnableFastSnapshotRestoresRequest(*ec2.EnableFastSnapshotRestoresInput) (*request.Request, *ec2.EnableFastSnapshotRestoresOutput) + EnableImage(*ec2.EnableImageInput) (*ec2.EnableImageOutput, error) + EnableImageWithContext(aws.Context, *ec2.EnableImageInput, ...request.Option) (*ec2.EnableImageOutput, error) + EnableImageRequest(*ec2.EnableImageInput) (*request.Request, *ec2.EnableImageOutput) + EnableImageBlockPublicAccess(*ec2.EnableImageBlockPublicAccessInput) (*ec2.EnableImageBlockPublicAccessOutput, error) EnableImageBlockPublicAccessWithContext(aws.Context, *ec2.EnableImageBlockPublicAccessInput, ...request.Option) (*ec2.EnableImageBlockPublicAccessOutput, error) EnableImageBlockPublicAccessRequest(*ec2.EnableImageBlockPublicAccessInput) (*request.Request, *ec2.EnableImageBlockPublicAccessOutput) @@ -2013,6 +2059,10 @@ EnableSerialConsoleAccessWithContext(aws.Context, *ec2.EnableSerialConsoleAccessInput, ...request.Option) (*ec2.EnableSerialConsoleAccessOutput, error) EnableSerialConsoleAccessRequest(*ec2.EnableSerialConsoleAccessInput) (*request.Request, *ec2.EnableSerialConsoleAccessOutput) + EnableSnapshotBlockPublicAccess(*ec2.EnableSnapshotBlockPublicAccessInput) (*ec2.EnableSnapshotBlockPublicAccessOutput, error) + EnableSnapshotBlockPublicAccessWithContext(aws.Context, *ec2.EnableSnapshotBlockPublicAccessInput, ...request.Option) (*ec2.EnableSnapshotBlockPublicAccessOutput, error) + EnableSnapshotBlockPublicAccessRequest(*ec2.EnableSnapshotBlockPublicAccessInput) (*request.Request, *ec2.EnableSnapshotBlockPublicAccessOutput) + EnableTransitGatewayRouteTablePropagation(*ec2.EnableTransitGatewayRouteTablePropagationInput) (*ec2.EnableTransitGatewayRouteTablePropagationOutput, error) EnableTransitGatewayRouteTablePropagationWithContext(aws.Context, *ec2.EnableTransitGatewayRouteTablePropagationInput, ...request.Option) (*ec2.EnableTransitGatewayRouteTablePropagationOutput, error) EnableTransitGatewayRouteTablePropagationRequest(*ec2.EnableTransitGatewayRouteTablePropagationInput) (*request.Request, *ec2.EnableTransitGatewayRouteTablePropagationOutput) @@ -2139,6 +2189,10 @@ GetIpamDiscoveredAccountsPages(*ec2.GetIpamDiscoveredAccountsInput, func(*ec2.GetIpamDiscoveredAccountsOutput, bool) bool) error GetIpamDiscoveredAccountsPagesWithContext(aws.Context, *ec2.GetIpamDiscoveredAccountsInput, func(*ec2.GetIpamDiscoveredAccountsOutput, bool) bool, ...request.Option) error + GetIpamDiscoveredPublicAddresses(*ec2.GetIpamDiscoveredPublicAddressesInput) (*ec2.GetIpamDiscoveredPublicAddressesOutput, error) + GetIpamDiscoveredPublicAddressesWithContext(aws.Context, *ec2.GetIpamDiscoveredPublicAddressesInput, ...request.Option) (*ec2.GetIpamDiscoveredPublicAddressesOutput, error) + GetIpamDiscoveredPublicAddressesRequest(*ec2.GetIpamDiscoveredPublicAddressesInput) (*request.Request, *ec2.GetIpamDiscoveredPublicAddressesOutput) + GetIpamDiscoveredResourceCidrs(*ec2.GetIpamDiscoveredResourceCidrsInput) (*ec2.GetIpamDiscoveredResourceCidrsOutput, error) GetIpamDiscoveredResourceCidrsWithContext(aws.Context, *ec2.GetIpamDiscoveredResourceCidrsInput, ...request.Option) (*ec2.GetIpamDiscoveredResourceCidrsOutput, error) GetIpamDiscoveredResourceCidrsRequest(*ec2.GetIpamDiscoveredResourceCidrsInput) (*request.Request, *ec2.GetIpamDiscoveredResourceCidrsOutput) @@ -2204,10 +2258,21 @@ GetReservedInstancesExchangeQuoteWithContext(aws.Context, *ec2.GetReservedInstancesExchangeQuoteInput, ...request.Option) (*ec2.GetReservedInstancesExchangeQuoteOutput, error) GetReservedInstancesExchangeQuoteRequest(*ec2.GetReservedInstancesExchangeQuoteInput) (*request.Request, *ec2.GetReservedInstancesExchangeQuoteOutput) + GetSecurityGroupsForVpc(*ec2.GetSecurityGroupsForVpcInput) (*ec2.GetSecurityGroupsForVpcOutput, error) + GetSecurityGroupsForVpcWithContext(aws.Context, *ec2.GetSecurityGroupsForVpcInput, ...request.Option) (*ec2.GetSecurityGroupsForVpcOutput, error) + GetSecurityGroupsForVpcRequest(*ec2.GetSecurityGroupsForVpcInput) (*request.Request, *ec2.GetSecurityGroupsForVpcOutput) + + GetSecurityGroupsForVpcPages(*ec2.GetSecurityGroupsForVpcInput, func(*ec2.GetSecurityGroupsForVpcOutput, bool) bool) error + GetSecurityGroupsForVpcPagesWithContext(aws.Context, *ec2.GetSecurityGroupsForVpcInput, func(*ec2.GetSecurityGroupsForVpcOutput, bool) bool, ...request.Option) error + GetSerialConsoleAccessStatus(*ec2.GetSerialConsoleAccessStatusInput) (*ec2.GetSerialConsoleAccessStatusOutput, error) GetSerialConsoleAccessStatusWithContext(aws.Context, *ec2.GetSerialConsoleAccessStatusInput, ...request.Option) (*ec2.GetSerialConsoleAccessStatusOutput, error) GetSerialConsoleAccessStatusRequest(*ec2.GetSerialConsoleAccessStatusInput) (*request.Request, *ec2.GetSerialConsoleAccessStatusOutput) + GetSnapshotBlockPublicAccessState(*ec2.GetSnapshotBlockPublicAccessStateInput) (*ec2.GetSnapshotBlockPublicAccessStateOutput, error) + GetSnapshotBlockPublicAccessStateWithContext(aws.Context, *ec2.GetSnapshotBlockPublicAccessStateInput, ...request.Option) (*ec2.GetSnapshotBlockPublicAccessStateOutput, error) + GetSnapshotBlockPublicAccessStateRequest(*ec2.GetSnapshotBlockPublicAccessStateInput) (*request.Request, *ec2.GetSnapshotBlockPublicAccessStateOutput) + GetSpotPlacementScores(*ec2.GetSpotPlacementScoresInput) (*ec2.GetSpotPlacementScoresOutput, error) GetSpotPlacementScoresWithContext(aws.Context, *ec2.GetSpotPlacementScoresInput, ...request.Option) (*ec2.GetSpotPlacementScoresOutput, error) GetSpotPlacementScoresRequest(*ec2.GetSpotPlacementScoresInput) (*request.Request, *ec2.GetSpotPlacementScoresOutput) @@ -2326,6 +2391,10 @@ ListSnapshotsInRecycleBinPages(*ec2.ListSnapshotsInRecycleBinInput, func(*ec2.ListSnapshotsInRecycleBinOutput, bool) bool) error ListSnapshotsInRecycleBinPagesWithContext(aws.Context, *ec2.ListSnapshotsInRecycleBinInput, func(*ec2.ListSnapshotsInRecycleBinOutput, bool) bool, ...request.Option) error + LockSnapshot(*ec2.LockSnapshotInput) (*ec2.LockSnapshotOutput, error) + LockSnapshotWithContext(aws.Context, *ec2.LockSnapshotInput, ...request.Option) (*ec2.LockSnapshotOutput, error) + LockSnapshotRequest(*ec2.LockSnapshotInput) (*request.Request, *ec2.LockSnapshotOutput) + ModifyAddressAttribute(*ec2.ModifyAddressAttributeInput) (*ec2.ModifyAddressAttributeOutput, error) ModifyAddressAttributeWithContext(aws.Context, *ec2.ModifyAddressAttributeInput, ...request.Option) (*ec2.ModifyAddressAttributeOutput, error) ModifyAddressAttributeRequest(*ec2.ModifyAddressAttributeInput) (*request.Request, *ec2.ModifyAddressAttributeOutput) @@ -2598,6 +2667,10 @@ ProvisionByoipCidrWithContext(aws.Context, *ec2.ProvisionByoipCidrInput, ...request.Option) (*ec2.ProvisionByoipCidrOutput, error) ProvisionByoipCidrRequest(*ec2.ProvisionByoipCidrInput) (*request.Request, *ec2.ProvisionByoipCidrOutput) + ProvisionIpamByoasn(*ec2.ProvisionIpamByoasnInput) (*ec2.ProvisionIpamByoasnOutput, error) + ProvisionIpamByoasnWithContext(aws.Context, *ec2.ProvisionIpamByoasnInput, ...request.Option) (*ec2.ProvisionIpamByoasnOutput, error) + ProvisionIpamByoasnRequest(*ec2.ProvisionIpamByoasnInput) (*request.Request, *ec2.ProvisionIpamByoasnOutput) + ProvisionIpamPoolCidr(*ec2.ProvisionIpamPoolCidrInput) (*ec2.ProvisionIpamPoolCidrOutput, error) ProvisionIpamPoolCidrWithContext(aws.Context, *ec2.ProvisionIpamPoolCidrInput, ...request.Option) (*ec2.ProvisionIpamPoolCidrOutput, error) ProvisionIpamPoolCidrRequest(*ec2.ProvisionIpamPoolCidrInput) (*request.Request, *ec2.ProvisionIpamPoolCidrOutput) @@ -2606,6 +2679,10 @@ ProvisionPublicIpv4PoolCidrWithContext(aws.Context, *ec2.ProvisionPublicIpv4PoolCidrInput, ...request.Option) (*ec2.ProvisionPublicIpv4PoolCidrOutput, error) ProvisionPublicIpv4PoolCidrRequest(*ec2.ProvisionPublicIpv4PoolCidrInput) (*request.Request, *ec2.ProvisionPublicIpv4PoolCidrOutput) + PurchaseCapacityBlock(*ec2.PurchaseCapacityBlockInput) (*ec2.PurchaseCapacityBlockOutput, error) + PurchaseCapacityBlockWithContext(aws.Context, *ec2.PurchaseCapacityBlockInput, ...request.Option) (*ec2.PurchaseCapacityBlockOutput, error) + PurchaseCapacityBlockRequest(*ec2.PurchaseCapacityBlockInput) (*request.Request, *ec2.PurchaseCapacityBlockOutput) + PurchaseHostReservation(*ec2.PurchaseHostReservationInput) (*ec2.PurchaseHostReservationOutput, error) PurchaseHostReservationWithContext(aws.Context, *ec2.PurchaseHostReservationInput, ...request.Option) (*ec2.PurchaseHostReservationOutput, error) PurchaseHostReservationRequest(*ec2.PurchaseHostReservationInput) (*request.Request, *ec2.PurchaseHostReservationOutput) @@ -2840,6 +2917,10 @@ UnassignPrivateNatGatewayAddressWithContext(aws.Context, *ec2.UnassignPrivateNatGatewayAddressInput, ...request.Option) (*ec2.UnassignPrivateNatGatewayAddressOutput, error) UnassignPrivateNatGatewayAddressRequest(*ec2.UnassignPrivateNatGatewayAddressInput) (*request.Request, *ec2.UnassignPrivateNatGatewayAddressOutput) + UnlockSnapshot(*ec2.UnlockSnapshotInput) (*ec2.UnlockSnapshotOutput, error) + UnlockSnapshotWithContext(aws.Context, *ec2.UnlockSnapshotInput, ...request.Option) (*ec2.UnlockSnapshotOutput, error) + UnlockSnapshotRequest(*ec2.UnlockSnapshotInput) (*request.Request, *ec2.UnlockSnapshotOutput) + UnmonitorInstances(*ec2.UnmonitorInstancesInput) (*ec2.UnmonitorInstancesOutput, error) UnmonitorInstancesWithContext(aws.Context, *ec2.UnmonitorInstancesInput, ...request.Option) (*ec2.UnmonitorInstancesOutput, error) UnmonitorInstancesRequest(*ec2.UnmonitorInstancesInput) (*request.Request, *ec2.UnmonitorInstancesOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecr/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ecr/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecr/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecr/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -272,6 +272,16 @@ // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // +// - LimitExceededException +// The operation did not succeed because it would have exceeded a service limit +// for your account. For more information, see Amazon ECR service quotas (https://docs.aws.amazon.com/AmazonECR/latest/userguide/service-quotas.html) +// in the Amazon Elastic Container Registry User Guide. +// +// - UnableToGetUpstreamImageException +// The image or images were unable to be pulled using the pull through cache +// rule. This is usually caused because of an issue with the Secrets Manager +// secret containing the credentials for the upstream registry. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/BatchGetImage func (c *ECR) BatchGetImage(input *BatchGetImageInput) (*BatchGetImageOutput, error) { req, out := c.BatchGetImageRequest(input) @@ -544,8 +554,9 @@ // CreatePullThroughCacheRule API operation for Amazon EC2 Container Registry. // // Creates a pull through cache rule. A pull through cache rule provides a way -// to cache images from an external public registry in your Amazon ECR private -// registry. +// to cache images from an upstream registry source in your Amazon ECR private +// registry. For more information, see Using pull through cache rules (https://docs.aws.amazon.com/AmazonECR/latest/userguide/pull-through-cache.html) +// in the Amazon Elastic Container Registry User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -578,6 +589,18 @@ // for your account. For more information, see Amazon ECR service quotas (https://docs.aws.amazon.com/AmazonECR/latest/userguide/service-quotas.html) // in the Amazon Elastic Container Registry User Guide. // +// - UnableToAccessSecretException +// The secret is unable to be accessed. Verify the resource permissions for +// the secret and try again. +// +// - SecretNotFoundException +// The ARN of the secret specified in the pull through cache rule was not found. +// Update the pull through cache rule with a valid secret ARN and try again. +// +// - UnableToDecryptSecretValueException +// The secret is accessible but is unable to be decrypted. Verify the resource +// permisisons and try again. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/CreatePullThroughCacheRule func (c *ECR) CreatePullThroughCacheRule(input *CreatePullThroughCacheRuleInput) (*CreatePullThroughCacheRuleOutput, error) { req, out := c.CreatePullThroughCacheRuleRequest(input) @@ -1019,9 +1042,9 @@ // DeleteRepository API operation for Amazon EC2 Container Registry. // -// Deletes a repository. If the repository contains images, you must either -// delete all images in the repository or use the force option to delete the -// repository. +// Deletes a repository. If the repository isn't empty, you must either delete +// the contents of the repository or use the force option to delete the repository +// and have Amazon ECR delete all of its contents on your behalf. // // 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 @@ -2114,6 +2137,10 @@ // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // +// - UnableToGetUpstreamLayerException +// There was an issue getting the upstream layer matching the pull through cache +// rule. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetDownloadUrlForLayer func (c *ECR) GetDownloadUrlForLayer(input *GetDownloadUrlForLayerInput) (*GetDownloadUrlForLayerOutput, error) { req, out := c.GetDownloadUrlForLayerRequest(input) @@ -4138,6 +4165,108 @@ return out, req.Send() } +const opUpdatePullThroughCacheRule = "UpdatePullThroughCacheRule" + +// UpdatePullThroughCacheRuleRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePullThroughCacheRule 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 UpdatePullThroughCacheRule for more information on using the UpdatePullThroughCacheRule +// 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 UpdatePullThroughCacheRuleRequest method. +// req, resp := client.UpdatePullThroughCacheRuleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/UpdatePullThroughCacheRule +func (c *ECR) UpdatePullThroughCacheRuleRequest(input *UpdatePullThroughCacheRuleInput) (req *request.Request, output *UpdatePullThroughCacheRuleOutput) { + op := &request.Operation{ + Name: opUpdatePullThroughCacheRule, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdatePullThroughCacheRuleInput{} + } + + output = &UpdatePullThroughCacheRuleOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePullThroughCacheRule API operation for Amazon EC2 Container Registry. +// +// Updates an existing pull through cache rule. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon EC2 Container Registry's +// API operation UpdatePullThroughCacheRule for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ValidationException +// There was an exception validating this request. +// +// - UnableToAccessSecretException +// The secret is unable to be accessed. Verify the resource permissions for +// the secret and try again. +// +// - PullThroughCacheRuleNotFoundException +// The pull through cache rule was not found. Specify a valid pull through cache +// rule and try again. +// +// - SecretNotFoundException +// The ARN of the secret specified in the pull through cache rule was not found. +// Update the pull through cache rule with a valid secret ARN and try again. +// +// - UnableToDecryptSecretValueException +// The secret is accessible but is unable to be decrypted. Verify the resource +// permisisons and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/UpdatePullThroughCacheRule +func (c *ECR) UpdatePullThroughCacheRule(input *UpdatePullThroughCacheRuleInput) (*UpdatePullThroughCacheRuleOutput, error) { + req, out := c.UpdatePullThroughCacheRuleRequest(input) + return out, req.Send() +} + +// UpdatePullThroughCacheRuleWithContext is the same as UpdatePullThroughCacheRule with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePullThroughCacheRule 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 *ECR) UpdatePullThroughCacheRuleWithContext(ctx aws.Context, input *UpdatePullThroughCacheRuleInput, opts ...request.Option) (*UpdatePullThroughCacheRuleOutput, error) { + req, out := c.UpdatePullThroughCacheRuleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUploadLayerPart = "UploadLayerPart" // UploadLayerPartRequest generates a "aws/request.Request" representing the @@ -4249,6 +4378,99 @@ return out, req.Send() } +const opValidatePullThroughCacheRule = "ValidatePullThroughCacheRule" + +// ValidatePullThroughCacheRuleRequest generates a "aws/request.Request" representing the +// client's request for the ValidatePullThroughCacheRule 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 ValidatePullThroughCacheRule for more information on using the ValidatePullThroughCacheRule +// 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 ValidatePullThroughCacheRuleRequest method. +// req, resp := client.ValidatePullThroughCacheRuleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/ValidatePullThroughCacheRule +func (c *ECR) ValidatePullThroughCacheRuleRequest(input *ValidatePullThroughCacheRuleInput) (req *request.Request, output *ValidatePullThroughCacheRuleOutput) { + op := &request.Operation{ + Name: opValidatePullThroughCacheRule, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ValidatePullThroughCacheRuleInput{} + } + + output = &ValidatePullThroughCacheRuleOutput{} + req = c.newRequest(op, input, output) + return +} + +// ValidatePullThroughCacheRule API operation for Amazon EC2 Container Registry. +// +// Validates an existing pull through cache rule for an upstream registry that +// requires authentication. This will retrieve the contents of the Amazon Web +// Services Secrets Manager secret, verify the syntax, and then validate that +// authentication to the upstream registry is successful. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon EC2 Container Registry's +// API operation ValidatePullThroughCacheRule for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ValidationException +// There was an exception validating this request. +// +// - PullThroughCacheRuleNotFoundException +// The pull through cache rule was not found. Specify a valid pull through cache +// rule and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/ValidatePullThroughCacheRule +func (c *ECR) ValidatePullThroughCacheRule(input *ValidatePullThroughCacheRuleInput) (*ValidatePullThroughCacheRuleOutput, error) { + req, out := c.ValidatePullThroughCacheRuleRequest(input) + return out, req.Send() +} + +// ValidatePullThroughCacheRuleWithContext is the same as ValidatePullThroughCacheRule with the addition of +// the ability to pass a context and additional request options. +// +// See ValidatePullThroughCacheRule 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 *ECR) ValidatePullThroughCacheRuleWithContext(ctx aws.Context, input *ValidatePullThroughCacheRuleInput, opts ...request.Option) (*ValidatePullThroughCacheRuleOutput, error) { + req, out := c.ValidatePullThroughCacheRuleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // This data type is used in the ImageScanFinding data type. type Attribute struct { _ struct{} `type:"structure"` @@ -5075,6 +5297,10 @@ type CreatePullThroughCacheRuleInput struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager + // secret that identifies the credentials to authenticate to the upstream registry. + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string"` + // The repository name prefix to use when caching images from the source registry. // // EcrRepositoryPrefix is a required field @@ -5085,8 +5311,24 @@ // registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` + // The name of the upstream registry. + UpstreamRegistry *string `locationName:"upstreamRegistry" type:"string" enum:"UpstreamRegistry"` + // The registry URL of the upstream public registry to use as the source for - // the pull through cache rule. + // the pull through cache rule. The following is the syntax to use for each + // supported upstream registry. + // + // * Amazon ECR Public (ecr-public) - public.ecr.aws + // + // * Docker Hub (docker-hub) - registry-1.docker.io + // + // * Quay (quay) - quay.io + // + // * Kubernetes (k8s) - registry.k8s.io + // + // * GitHub Container Registry (github-container-registry) - ghcr.io + // + // * Microsoft Azure Container Registry (azure-container-registry) - .azurecr.io // // UpstreamRegistryUrl is a required field UpstreamRegistryUrl *string `locationName:"upstreamRegistryUrl" type:"string" required:"true"` @@ -5113,6 +5355,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePullThroughCacheRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePullThroughCacheRuleInput"} + if s.CredentialArn != nil && len(*s.CredentialArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("CredentialArn", 50)) + } if s.EcrRepositoryPrefix == nil { invalidParams.Add(request.NewErrParamRequired("EcrRepositoryPrefix")) } @@ -5129,6 +5374,12 @@ return nil } +// SetCredentialArn sets the CredentialArn field's value. +func (s *CreatePullThroughCacheRuleInput) SetCredentialArn(v string) *CreatePullThroughCacheRuleInput { + s.CredentialArn = &v + return s +} + // SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. func (s *CreatePullThroughCacheRuleInput) SetEcrRepositoryPrefix(v string) *CreatePullThroughCacheRuleInput { s.EcrRepositoryPrefix = &v @@ -5141,6 +5392,12 @@ return s } +// SetUpstreamRegistry sets the UpstreamRegistry field's value. +func (s *CreatePullThroughCacheRuleInput) SetUpstreamRegistry(v string) *CreatePullThroughCacheRuleInput { + s.UpstreamRegistry = &v + return s +} + // SetUpstreamRegistryUrl sets the UpstreamRegistryUrl field's value. func (s *CreatePullThroughCacheRuleInput) SetUpstreamRegistryUrl(v string) *CreatePullThroughCacheRuleInput { s.UpstreamRegistryUrl = &v @@ -5154,12 +5411,20 @@ // rule was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager + // secret associated with the pull through cache rule. + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string"` + // The Amazon ECR repository prefix associated with the pull through cache rule. EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string"` // The registry ID associated with the request. RegistryId *string `locationName:"registryId" type:"string"` + // The name of the upstream registry associated with the pull through cache + // rule. + UpstreamRegistry *string `locationName:"upstreamRegistry" type:"string" enum:"UpstreamRegistry"` + // The upstream registry URL associated with the pull through cache rule. UpstreamRegistryUrl *string `locationName:"upstreamRegistryUrl" type:"string"` } @@ -5188,6 +5453,12 @@ return s } +// SetCredentialArn sets the CredentialArn field's value. +func (s *CreatePullThroughCacheRuleOutput) SetCredentialArn(v string) *CreatePullThroughCacheRuleOutput { + s.CredentialArn = &v + return s +} + // SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. func (s *CreatePullThroughCacheRuleOutput) SetEcrRepositoryPrefix(v string) *CreatePullThroughCacheRuleOutput { s.EcrRepositoryPrefix = &v @@ -5200,6 +5471,12 @@ return s } +// SetUpstreamRegistry sets the UpstreamRegistry field's value. +func (s *CreatePullThroughCacheRuleOutput) SetUpstreamRegistry(v string) *CreatePullThroughCacheRuleOutput { + s.UpstreamRegistry = &v + return s +} + // SetUpstreamRegistryUrl sets the UpstreamRegistryUrl field's value. func (s *CreatePullThroughCacheRuleOutput) SetUpstreamRegistryUrl(v string) *CreatePullThroughCacheRuleOutput { s.UpstreamRegistryUrl = &v @@ -5715,6 +5992,10 @@ // The timestamp associated with the pull through cache rule. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager + // secret associated with the pull through cache rule. + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string"` + // The Amazon ECR repository prefix associated with the request. EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string"` @@ -5749,6 +6030,12 @@ return s } +// SetCredentialArn sets the CredentialArn field's value. +func (s *DeletePullThroughCacheRuleOutput) SetCredentialArn(v string) *DeletePullThroughCacheRuleOutput { + s.CredentialArn = &v + return s +} + // SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. func (s *DeletePullThroughCacheRuleOutput) SetEcrRepositoryPrefix(v string) *DeletePullThroughCacheRuleOutput { s.EcrRepositoryPrefix = &v @@ -5832,7 +6119,8 @@ type DeleteRepositoryInput struct { _ struct{} `type:"structure"` - // If a repository contains images, forces the deletion. + // If true, deleting the repository force deletes the contents of the repository. + // If false, the repository must be empty before attempting to delete it. Force *bool `locationName:"force" type:"boolean"` // The Amazon Web Services account ID associated with the registry that contains @@ -10473,6 +10761,10 @@ // The date and time the pull through cache was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + // The ARN of the Secrets Manager secret associated with the pull through cache + // rule. + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string"` + // The Amazon ECR repository prefix associated with the pull through cache rule. EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string"` @@ -10480,6 +10772,14 @@ // through cache rule is associated with. RegistryId *string `locationName:"registryId" type:"string"` + // The date and time, in JavaScript date format, when the pull through cache + // rule was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The name of the upstream source registry associated with the pull through + // cache rule. + UpstreamRegistry *string `locationName:"upstreamRegistry" type:"string" enum:"UpstreamRegistry"` + // The upstream registry URL associated with the pull through cache rule. UpstreamRegistryUrl *string `locationName:"upstreamRegistryUrl" type:"string"` } @@ -10508,6 +10808,12 @@ return s } +// SetCredentialArn sets the CredentialArn field's value. +func (s *PullThroughCacheRule) SetCredentialArn(v string) *PullThroughCacheRule { + s.CredentialArn = &v + return s +} + // SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. func (s *PullThroughCacheRule) SetEcrRepositoryPrefix(v string) *PullThroughCacheRule { s.EcrRepositoryPrefix = &v @@ -10520,6 +10826,18 @@ return s } +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *PullThroughCacheRule) SetUpdatedAt(v time.Time) *PullThroughCacheRule { + s.UpdatedAt = &v + return s +} + +// SetUpstreamRegistry sets the UpstreamRegistry field's value. +func (s *PullThroughCacheRule) SetUpstreamRegistry(v string) *PullThroughCacheRule { + s.UpstreamRegistry = &v + return s +} + // SetUpstreamRegistryUrl sets the UpstreamRegistryUrl field's value. func (s *PullThroughCacheRule) SetUpstreamRegistryUrl(v string) *PullThroughCacheRule { s.UpstreamRegistryUrl = &v @@ -12782,6 +13100,71 @@ return s } +// The ARN of the secret specified in the pull through cache rule was not found. +// Update the pull through cache rule with a valid secret ARN and try again. +type SecretNotFoundException 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 SecretNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecretNotFoundException) GoString() string { + return s.String() +} + +func newErrorSecretNotFoundException(v protocol.ResponseMetadata) error { + return &SecretNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *SecretNotFoundException) Code() string { + return "SecretNotFoundException" +} + +// Message returns the exception's message. +func (s *SecretNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *SecretNotFoundException) OrigErr() error { + return nil +} + +func (s *SecretNotFoundException) 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 *SecretNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *SecretNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + // These errors are usually caused by a server-side issue. type ServerException struct { _ struct{} `type:"structure"` @@ -13476,6 +13859,267 @@ return s.RespMetadata.RequestID } +// The secret is unable to be accessed. Verify the resource permissions for +// the secret and try again. +type UnableToAccessSecretException 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 UnableToAccessSecretException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnableToAccessSecretException) GoString() string { + return s.String() +} + +func newErrorUnableToAccessSecretException(v protocol.ResponseMetadata) error { + return &UnableToAccessSecretException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnableToAccessSecretException) Code() string { + return "UnableToAccessSecretException" +} + +// Message returns the exception's message. +func (s *UnableToAccessSecretException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnableToAccessSecretException) OrigErr() error { + return nil +} + +func (s *UnableToAccessSecretException) 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 *UnableToAccessSecretException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnableToAccessSecretException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The secret is accessible but is unable to be decrypted. Verify the resource +// permisisons and try again. +type UnableToDecryptSecretValueException 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 UnableToDecryptSecretValueException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnableToDecryptSecretValueException) GoString() string { + return s.String() +} + +func newErrorUnableToDecryptSecretValueException(v protocol.ResponseMetadata) error { + return &UnableToDecryptSecretValueException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnableToDecryptSecretValueException) Code() string { + return "UnableToDecryptSecretValueException" +} + +// Message returns the exception's message. +func (s *UnableToDecryptSecretValueException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnableToDecryptSecretValueException) OrigErr() error { + return nil +} + +func (s *UnableToDecryptSecretValueException) 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 *UnableToDecryptSecretValueException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnableToDecryptSecretValueException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The image or images were unable to be pulled using the pull through cache +// rule. This is usually caused because of an issue with the Secrets Manager +// secret containing the credentials for the upstream registry. +type UnableToGetUpstreamImageException 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 UnableToGetUpstreamImageException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnableToGetUpstreamImageException) GoString() string { + return s.String() +} + +func newErrorUnableToGetUpstreamImageException(v protocol.ResponseMetadata) error { + return &UnableToGetUpstreamImageException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnableToGetUpstreamImageException) Code() string { + return "UnableToGetUpstreamImageException" +} + +// Message returns the exception's message. +func (s *UnableToGetUpstreamImageException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnableToGetUpstreamImageException) OrigErr() error { + return nil +} + +func (s *UnableToGetUpstreamImageException) 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 *UnableToGetUpstreamImageException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnableToGetUpstreamImageException) RequestID() string { + return s.RespMetadata.RequestID +} + +// There was an issue getting the upstream layer matching the pull through cache +// rule. +type UnableToGetUpstreamLayerException 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 UnableToGetUpstreamLayerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnableToGetUpstreamLayerException) GoString() string { + return s.String() +} + +func newErrorUnableToGetUpstreamLayerException(v protocol.ResponseMetadata) error { + return &UnableToGetUpstreamLayerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnableToGetUpstreamLayerException) Code() string { + return "UnableToGetUpstreamLayerException" +} + +// Message returns the exception's message. +func (s *UnableToGetUpstreamLayerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnableToGetUpstreamLayerException) OrigErr() error { + return nil +} + +func (s *UnableToGetUpstreamLayerException) 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 *UnableToGetUpstreamLayerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnableToGetUpstreamLayerException) RequestID() string { + return s.RespMetadata.RequestID +} + // The image is of a type that cannot be scanned. type UnsupportedImageTypeException struct { _ struct{} `type:"structure"` @@ -13687,6 +14331,144 @@ return s.String() } +type UpdatePullThroughCacheRuleInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager + // secret that identifies the credentials to authenticate to the upstream registry. + // + // CredentialArn is a required field + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string" required:"true"` + + // The repository name prefix to use when caching images from the source registry. + // + // EcrRepositoryPrefix is a required field + EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string" required:"true"` + + // The Amazon Web Services account ID associated with the registry associated + // with the pull through cache rule. If you do not specify a registry, the default + // registry is assumed. + RegistryId *string `locationName:"registryId" 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 UpdatePullThroughCacheRuleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePullThroughCacheRuleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePullThroughCacheRuleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePullThroughCacheRuleInput"} + if s.CredentialArn == nil { + invalidParams.Add(request.NewErrParamRequired("CredentialArn")) + } + if s.CredentialArn != nil && len(*s.CredentialArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("CredentialArn", 50)) + } + if s.EcrRepositoryPrefix == nil { + invalidParams.Add(request.NewErrParamRequired("EcrRepositoryPrefix")) + } + if s.EcrRepositoryPrefix != nil && len(*s.EcrRepositoryPrefix) < 2 { + invalidParams.Add(request.NewErrParamMinLen("EcrRepositoryPrefix", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCredentialArn sets the CredentialArn field's value. +func (s *UpdatePullThroughCacheRuleInput) SetCredentialArn(v string) *UpdatePullThroughCacheRuleInput { + s.CredentialArn = &v + return s +} + +// SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. +func (s *UpdatePullThroughCacheRuleInput) SetEcrRepositoryPrefix(v string) *UpdatePullThroughCacheRuleInput { + s.EcrRepositoryPrefix = &v + return s +} + +// SetRegistryId sets the RegistryId field's value. +func (s *UpdatePullThroughCacheRuleInput) SetRegistryId(v string) *UpdatePullThroughCacheRuleInput { + s.RegistryId = &v + return s +} + +type UpdatePullThroughCacheRuleOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager + // secret associated with the pull through cache rule. + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string"` + + // The Amazon ECR repository prefix associated with the pull through cache rule. + EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string"` + + // The registry ID associated with the request. + RegistryId *string `locationName:"registryId" type:"string"` + + // The date and time, in JavaScript date format, when the pull through cache + // rule was updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 UpdatePullThroughCacheRuleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePullThroughCacheRuleOutput) GoString() string { + return s.String() +} + +// SetCredentialArn sets the CredentialArn field's value. +func (s *UpdatePullThroughCacheRuleOutput) SetCredentialArn(v string) *UpdatePullThroughCacheRuleOutput { + s.CredentialArn = &v + return s +} + +// SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. +func (s *UpdatePullThroughCacheRuleOutput) SetEcrRepositoryPrefix(v string) *UpdatePullThroughCacheRuleOutput { + s.EcrRepositoryPrefix = &v + return s +} + +// SetRegistryId sets the RegistryId field's value. +func (s *UpdatePullThroughCacheRuleOutput) SetRegistryId(v string) *UpdatePullThroughCacheRuleOutput { + s.RegistryId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdatePullThroughCacheRuleOutput) SetUpdatedAt(v time.Time) *UpdatePullThroughCacheRuleOutput { + s.UpdatedAt = &v + return s +} + type UploadLayerPartInput struct { _ struct{} `type:"structure"` @@ -13931,6 +14713,147 @@ return s.RespMetadata.RequestID } +type ValidatePullThroughCacheRuleInput struct { + _ struct{} `type:"structure"` + + // The repository name prefix associated with the pull through cache rule. + // + // EcrRepositoryPrefix is a required field + EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string" required:"true"` + + // The registry ID associated with the pull through cache rule. If you do not + // specify a registry, the default registry is assumed. + RegistryId *string `locationName:"registryId" 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 ValidatePullThroughCacheRuleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidatePullThroughCacheRuleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ValidatePullThroughCacheRuleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ValidatePullThroughCacheRuleInput"} + if s.EcrRepositoryPrefix == nil { + invalidParams.Add(request.NewErrParamRequired("EcrRepositoryPrefix")) + } + if s.EcrRepositoryPrefix != nil && len(*s.EcrRepositoryPrefix) < 2 { + invalidParams.Add(request.NewErrParamMinLen("EcrRepositoryPrefix", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. +func (s *ValidatePullThroughCacheRuleInput) SetEcrRepositoryPrefix(v string) *ValidatePullThroughCacheRuleInput { + s.EcrRepositoryPrefix = &v + return s +} + +// SetRegistryId sets the RegistryId field's value. +func (s *ValidatePullThroughCacheRuleInput) SetRegistryId(v string) *ValidatePullThroughCacheRuleInput { + s.RegistryId = &v + return s +} + +type ValidatePullThroughCacheRuleOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager + // secret associated with the pull through cache rule. + CredentialArn *string `locationName:"credentialArn" min:"50" type:"string"` + + // The Amazon ECR repository prefix associated with the pull through cache rule. + EcrRepositoryPrefix *string `locationName:"ecrRepositoryPrefix" min:"2" type:"string"` + + // The reason the validation failed. For more details about possible causes + // and how to address them, see Using pull through cache rules (https://docs.aws.amazon.com/AmazonECR/latest/userguide/pull-through-cache.html) + // in the Amazon Elastic Container Registry User Guide. + Failure *string `locationName:"failure" type:"string"` + + // Whether or not the pull through cache rule was validated. If true, Amazon + // ECR was able to reach the upstream registry and authentication was successful. + // If false, there was an issue and validation failed. The failure reason indicates + // the cause. + IsValid *bool `locationName:"isValid" type:"boolean"` + + // The registry ID associated with the request. + RegistryId *string `locationName:"registryId" type:"string"` + + // The upstream registry URL associated with the pull through cache rule. + UpstreamRegistryUrl *string `locationName:"upstreamRegistryUrl" 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 ValidatePullThroughCacheRuleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidatePullThroughCacheRuleOutput) GoString() string { + return s.String() +} + +// SetCredentialArn sets the CredentialArn field's value. +func (s *ValidatePullThroughCacheRuleOutput) SetCredentialArn(v string) *ValidatePullThroughCacheRuleOutput { + s.CredentialArn = &v + return s +} + +// SetEcrRepositoryPrefix sets the EcrRepositoryPrefix field's value. +func (s *ValidatePullThroughCacheRuleOutput) SetEcrRepositoryPrefix(v string) *ValidatePullThroughCacheRuleOutput { + s.EcrRepositoryPrefix = &v + return s +} + +// SetFailure sets the Failure field's value. +func (s *ValidatePullThroughCacheRuleOutput) SetFailure(v string) *ValidatePullThroughCacheRuleOutput { + s.Failure = &v + return s +} + +// SetIsValid sets the IsValid field's value. +func (s *ValidatePullThroughCacheRuleOutput) SetIsValid(v bool) *ValidatePullThroughCacheRuleOutput { + s.IsValid = &v + return s +} + +// SetRegistryId sets the RegistryId field's value. +func (s *ValidatePullThroughCacheRuleOutput) SetRegistryId(v string) *ValidatePullThroughCacheRuleOutput { + s.RegistryId = &v + return s +} + +// SetUpstreamRegistryUrl sets the UpstreamRegistryUrl field's value. +func (s *ValidatePullThroughCacheRuleOutput) SetUpstreamRegistryUrl(v string) *ValidatePullThroughCacheRuleOutput { + s.UpstreamRegistryUrl = &v + return s +} + // There was an exception validating this request. type ValidationException struct { _ struct{} `type:"structure"` @@ -14171,6 +15094,15 @@ // ImageFailureCodeKmsError is a ImageFailureCode enum value ImageFailureCodeKmsError = "KmsError" + + // ImageFailureCodeUpstreamAccessDenied is a ImageFailureCode enum value + ImageFailureCodeUpstreamAccessDenied = "UpstreamAccessDenied" + + // ImageFailureCodeUpstreamTooManyRequests is a ImageFailureCode enum value + ImageFailureCodeUpstreamTooManyRequests = "UpstreamTooManyRequests" + + // ImageFailureCodeUpstreamUnavailable is a ImageFailureCode enum value + ImageFailureCodeUpstreamUnavailable = "UpstreamUnavailable" ) // ImageFailureCode_Values returns all elements of the ImageFailureCode enum @@ -14183,6 +15115,9 @@ ImageFailureCodeMissingDigestAndTag, ImageFailureCodeImageReferencedByManifestList, ImageFailureCodeKmsError, + ImageFailureCodeUpstreamAccessDenied, + ImageFailureCodeUpstreamTooManyRequests, + ImageFailureCodeUpstreamUnavailable, } } @@ -14409,3 +15344,35 @@ TagStatusAny, } } + +const ( + // UpstreamRegistryEcrPublic is a UpstreamRegistry enum value + UpstreamRegistryEcrPublic = "ecr-public" + + // UpstreamRegistryQuay is a UpstreamRegistry enum value + UpstreamRegistryQuay = "quay" + + // UpstreamRegistryK8s is a UpstreamRegistry enum value + UpstreamRegistryK8s = "k8s" + + // UpstreamRegistryDockerHub is a UpstreamRegistry enum value + UpstreamRegistryDockerHub = "docker-hub" + + // UpstreamRegistryGithubContainerRegistry is a UpstreamRegistry enum value + UpstreamRegistryGithubContainerRegistry = "github-container-registry" + + // UpstreamRegistryAzureContainerRegistry is a UpstreamRegistry enum value + UpstreamRegistryAzureContainerRegistry = "azure-container-registry" +) + +// UpstreamRegistry_Values returns all elements of the UpstreamRegistry enum +func UpstreamRegistry_Values() []string { + return []string{ + UpstreamRegistryEcrPublic, + UpstreamRegistryQuay, + UpstreamRegistryK8s, + UpstreamRegistryDockerHub, + UpstreamRegistryGithubContainerRegistry, + UpstreamRegistryAzureContainerRegistry, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecr/ecriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ecr/ecriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecr/ecriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecr/ecriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -238,10 +238,18 @@ UntagResourceWithContext(aws.Context, *ecr.UntagResourceInput, ...request.Option) (*ecr.UntagResourceOutput, error) UntagResourceRequest(*ecr.UntagResourceInput) (*request.Request, *ecr.UntagResourceOutput) + UpdatePullThroughCacheRule(*ecr.UpdatePullThroughCacheRuleInput) (*ecr.UpdatePullThroughCacheRuleOutput, error) + UpdatePullThroughCacheRuleWithContext(aws.Context, *ecr.UpdatePullThroughCacheRuleInput, ...request.Option) (*ecr.UpdatePullThroughCacheRuleOutput, error) + UpdatePullThroughCacheRuleRequest(*ecr.UpdatePullThroughCacheRuleInput) (*request.Request, *ecr.UpdatePullThroughCacheRuleOutput) + UploadLayerPart(*ecr.UploadLayerPartInput) (*ecr.UploadLayerPartOutput, error) UploadLayerPartWithContext(aws.Context, *ecr.UploadLayerPartInput, ...request.Option) (*ecr.UploadLayerPartOutput, error) UploadLayerPartRequest(*ecr.UploadLayerPartInput) (*request.Request, *ecr.UploadLayerPartOutput) + ValidatePullThroughCacheRule(*ecr.ValidatePullThroughCacheRuleInput) (*ecr.ValidatePullThroughCacheRuleOutput, error) + ValidatePullThroughCacheRuleWithContext(aws.Context, *ecr.ValidatePullThroughCacheRuleInput, ...request.Option) (*ecr.ValidatePullThroughCacheRuleOutput, error) + ValidatePullThroughCacheRuleRequest(*ecr.ValidatePullThroughCacheRuleInput) (*request.Request, *ecr.ValidatePullThroughCacheRuleOutput) + WaitUntilImageScanComplete(*ecr.DescribeImageScanFindingsInput) error WaitUntilImageScanCompleteWithContext(aws.Context, *ecr.DescribeImageScanFindingsInput, ...request.WaiterOption) error diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecr/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/ecr/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecr/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecr/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -189,6 +189,13 @@ // enabled on the repository and try again. ErrCodeScanNotFoundException = "ScanNotFoundException" + // ErrCodeSecretNotFoundException for service response error code + // "SecretNotFoundException". + // + // The ARN of the secret specified in the pull through cache rule was not found. + // Update the pull through cache rule with a valid secret ARN and try again. + ErrCodeSecretNotFoundException = "SecretNotFoundException" + // ErrCodeServerException for service response error code // "ServerException". // @@ -202,6 +209,35 @@ // of tags that can be applied to a repository is 50. ErrCodeTooManyTagsException = "TooManyTagsException" + // ErrCodeUnableToAccessSecretException for service response error code + // "UnableToAccessSecretException". + // + // The secret is unable to be accessed. Verify the resource permissions for + // the secret and try again. + ErrCodeUnableToAccessSecretException = "UnableToAccessSecretException" + + // ErrCodeUnableToDecryptSecretValueException for service response error code + // "UnableToDecryptSecretValueException". + // + // The secret is accessible but is unable to be decrypted. Verify the resource + // permisisons and try again. + ErrCodeUnableToDecryptSecretValueException = "UnableToDecryptSecretValueException" + + // ErrCodeUnableToGetUpstreamImageException for service response error code + // "UnableToGetUpstreamImageException". + // + // The image or images were unable to be pulled using the pull through cache + // rule. This is usually caused because of an issue with the Secrets Manager + // secret containing the credentials for the upstream registry. + ErrCodeUnableToGetUpstreamImageException = "UnableToGetUpstreamImageException" + + // ErrCodeUnableToGetUpstreamLayerException for service response error code + // "UnableToGetUpstreamLayerException". + // + // There was an issue getting the upstream layer matching the pull through cache + // rule. + ErrCodeUnableToGetUpstreamLayerException = "UnableToGetUpstreamLayerException" + // ErrCodeUnsupportedImageTypeException for service response error code // "UnsupportedImageTypeException". // @@ -256,8 +292,13 @@ "RepositoryNotFoundException": newErrorRepositoryNotFoundException, "RepositoryPolicyNotFoundException": newErrorRepositoryPolicyNotFoundException, "ScanNotFoundException": newErrorScanNotFoundException, + "SecretNotFoundException": newErrorSecretNotFoundException, "ServerException": newErrorServerException, "TooManyTagsException": newErrorTooManyTagsException, + "UnableToAccessSecretException": newErrorUnableToAccessSecretException, + "UnableToDecryptSecretValueException": newErrorUnableToDecryptSecretValueException, + "UnableToGetUpstreamImageException": newErrorUnableToGetUpstreamImageException, + "UnableToGetUpstreamLayerException": newErrorUnableToGetUpstreamLayerException, "UnsupportedImageTypeException": newErrorUnsupportedImageTypeException, "UnsupportedUpstreamRegistryException": newErrorUnsupportedUpstreamRegistryException, "UploadNotFoundException": newErrorUploadNotFoundException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecr/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/ecr/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecr/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecr/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -87,6 +87,10 @@ fmt.Println(ecr.ErrCodeInvalidParameterException, aerr.Error()) case ecr.ErrCodeRepositoryNotFoundException: fmt.Println(ecr.ErrCodeRepositoryNotFoundException, aerr.Error()) + case ecr.ErrCodeLimitExceededException: + fmt.Println(ecr.ErrCodeLimitExceededException, aerr.Error()) + case ecr.ErrCodeUnableToGetUpstreamImageException: + fmt.Println(ecr.ErrCodeUnableToGetUpstreamImageException, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecs/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ecs/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecs/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecs/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,8 +80,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -189,8 +189,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -377,8 +377,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -489,8 +489,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -607,8 +607,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -799,8 +799,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -895,8 +895,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1025,8 +1025,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1145,8 +1145,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1240,8 +1240,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1366,8 +1366,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1478,8 +1478,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1567,8 +1567,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1656,8 +1656,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1746,8 +1746,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1839,8 +1839,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -1937,8 +1937,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -2029,8 +2029,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -2143,8 +2143,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -2239,8 +2239,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DiscoverPollEndpoint func (c *ECS) DiscoverPollEndpoint(input *DiscoverPollEndpointInput) (*DiscoverPollEndpointOutput, error) { @@ -2333,8 +2333,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -2444,8 +2444,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -2552,8 +2552,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -2845,8 +2845,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -2995,8 +2995,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -3146,8 +3146,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -3301,8 +3301,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -3444,8 +3444,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -3549,8 +3549,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -3697,8 +3697,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -3847,8 +3847,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4025,6 +4025,12 @@ // (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-maintenance.html) // in the Amazon ECS Developer Guide. // +// The guardDutyActivate parameter is read-only in Amazon ECS and indicates +// whether Amazon ECS Runtime Monitoring is enabled or disabled by your security +// administrator in your Amazon ECS account. Amazon GuardDuty controls this +// account setting on your behalf. For more information, see Protecting Amazon +// ECS workloads with Amazon ECS Runtime Monitoring (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-guard-duty-integration.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. @@ -4040,8 +4046,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4131,8 +4137,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4334,8 +4340,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4441,8 +4447,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4550,8 +4556,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4676,8 +4682,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4704,6 +4710,17 @@ // Your Amazon Web Services account was blocked. For more information, contact // Amazon Web Services Support (http://aws.amazon.com/contact-us/). // +// - ConflictException +// The RunTask request could not be processed due to conflicts. The provided +// clientToken is already in use with a different RunTask request. The resourceIds +// are the existing task ARNs which are already associated with the clientToken. +// +// To fix this issue: +// +// - Run RunTask with a unique clientToken. +// +// - Run RunTask with the clientToken and the original set of parameters +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/RunTask func (c *ECS) RunTask(input *RunTaskInput) (*RunTaskOutput, error) { req, out := c.RunTaskRequest(input) @@ -4799,8 +4816,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -4904,8 +4921,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -5000,8 +5017,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - AccessDeniedException // You don't have authorization to perform the requested action. @@ -5095,8 +5112,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - AccessDeniedException // You don't have authorization to perform the requested action. @@ -5186,8 +5203,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - AccessDeniedException // You don't have authorization to perform the requested action. @@ -5282,8 +5299,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -5379,8 +5396,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -5475,8 +5492,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -5564,8 +5581,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -5660,8 +5677,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -5773,8 +5790,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -5931,8 +5948,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -6126,8 +6143,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -6244,8 +6261,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -6381,8 +6398,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - ClusterNotFoundException // The specified cluster wasn't found. You can view your available clusters @@ -6485,8 +6502,8 @@ // - ClientException // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. // // - InvalidParameterException // The specified parameter isn't valid. Review the available parameters for @@ -7402,8 +7419,8 @@ // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions -// to use the action or resource,. Or, it might be specifying an identifier -// that isn't valid. +// to use the action or resource. Or, it might be specifying an identifier that +// isn't valid. type ClientException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8117,7 +8134,7 @@ // Command Line Interface. Other types of instance discovery aren't used by // Service Connect. // - // If you update the service with an empty string "" for the namespace name, + // If you update the cluster with an empty string "" for the namespace name, // the cluster configuration for Service Connect is removed. Note that the namespace // will remain in Cloud Map and must be deleted separately. // @@ -8214,6 +8231,81 @@ return s } +// The RunTask request could not be processed due to conflicts. The provided +// clientToken is already in use with a different RunTask request. The resourceIds +// are the existing task ARNs which are already associated with the clientToken. +// +// To fix this issue: +// +// - Run RunTask with a unique clientToken. +// +// - Run RunTask with the clientToken and the original set of parameters +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The existing task ARNs which are already associated with the clientToken. + ResourceIds []*string `locationName:"resourceIds" 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 ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + // A Docker container that's part of a task. type Container struct { _ struct{} `type:"structure"` @@ -10411,7 +10503,8 @@ CapacityProviderStrategy []*CapacityProviderStrategyItem `locationName:"capacityProviderStrategy" type:"list"` // An identifier that you provide to ensure the idempotency of the request. - // It must be unique and is case sensitive. Up to 32 ASCII characters are allowed. + // It must be unique and is case sensitive. Up to 36 ASCII characters in the + // range of 33-126 (inclusive) are allowed. ClientToken *string `locationName:"clientToken" type:"string"` // The short name or full Amazon Resource Name (ARN) of the cluster that you @@ -10960,9 +11053,9 @@ // of available capacity providers for a cluster after the cluster is created. CapacityProviderStrategy []*CapacityProviderStrategyItem `locationName:"capacityProviderStrategy" type:"list"` - // The identifier that you provide to ensure the idempotency of the request. - // It's case sensitive and must be unique. It can be up to 32 ASCII characters - // are allowed. + // An identifier that you provide to ensure the idempotency of the request. + // It must be unique and is case sensitive. Up to 36 ASCII characters in the + // range of 33-126 (inclusive) are allowed. ClientToken *string `locationName:"clientToken" type:"string"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts @@ -13899,8 +13992,7 @@ // You can specify up to ten environment files. The file must have a .env file // extension. Each line in an environment file should contain an environment // variable in VARIABLE=VALUE format. Lines beginning with # are treated as -// comments and are ignored. For more information about the environment variable -// file syntax, see Declare default environment variables in file (https://docs.docker.com/compose/env-file/). +// comments and are ignored. // // If there are environment variables specified using the environment parameter // in a container definition, they take precedence over the variables contained @@ -13915,6 +14007,14 @@ // - Linux platform version 1.4.0 or later. // // - Windows platform version 1.0.0 or later. +// +// Consider the following when using the Fargate launch type: +// +// - The file is handled like a native Docker env-file. +// +// - There is no support for shell escape handling. +// +// - The container entry point interperts the VARIABLE values. type EnvironmentFile struct { _ struct{} `type:"structure"` @@ -14749,22 +14849,56 @@ // // - UNHEALTHY-The container health check has failed. // -// - UNKNOWN-The container health check is being evaluated or there's no -// container health check defined. +// - UNKNOWN-The container health check is being evaluated, there's no container +// health check defined, or Amazon ECS doesn't have the health status of +// the container. +// +// The following describes the possible healthStatus values based on the container +// health checker status of essential containers in the task with the following +// priority order (high to low): +// +// - UNHEALTHY-One or more essential containers have failed their health +// check. // -// The following describes the possible healthStatus values for a task. The -// container health check status of non-essential containers don't have an effect -// on the health status of a task. +// - UNKNOWN-Any essential container running within the task is in an UNKNOWN +// state and no other essential containers have an UNHEALTHY state. // // - HEALTHY-All essential containers within the task have passed their health // checks. // -// - UNHEALTHY-One or more essential containers have failed their health -// check. +// Consider the following task health example with 2 containers. +// +// - If Container1 is UNHEALTHY and Container2 is UNKNOWN, the task health +// is UNHEALTHY. +// +// - If Container1 is UNHEALTHY and Container2 is HEALTHY, the task health +// is UNHEALTHY. +// +// - If Container1 is HEALTHY and Container2 is UNKNOWN, the task health +// is UNKNOWN. +// +// - If Container1 is HEALTHY and Container2 is HEALTHY, the task health +// is HEALTHY. +// +// Consider the following task health example with 3 containers. // -// - UNKNOWN-The essential containers within the task are still having their -// health checks evaluated, there are only nonessential containers with health -// checks defined, or there are no container health checks defined. +// - If Container1 is UNHEALTHY and Container2 is UNKNOWN, and Container3 +// is UNKNOWN, the task health is UNHEALTHY. +// +// - If Container1 is UNHEALTHY and Container2 is UNKNOWN, and Container3 +// is HEALTHY, the task health is UNHEALTHY. +// +// - If Container1 is UNHEALTHY and Container2 is HEALTHY, and Container3 +// is HEALTHY, the task health is UNHEALTHY. +// +// - If Container1 is HEALTHY and Container2 is UNKNOWN, and Container3 is +// HEALTHY, the task health is UNKNOWN. +// +// - If Container1 is HEALTHY and Container2 is UNKNOWN, and Container3 is +// UNKNOWN, the task health is UNKNOWN. +// +// - If Container1 is HEALTHY and Container2 is HEALTHY, and Container3 is +// HEALTHY, the task health is HEALTHY. // // If a task is run manually, and not as part of a service, the task will continue // its lifecycle regardless of its health status. For tasks that are part of @@ -17582,10 +17716,11 @@ // // * You do not specify a hostPortRange. The value of the hostPortRange is // set as follows: For containers in a task with the awsvpc network mode, - // the hostPort is set to the same value as the containerPort. This is a - // static mapping strategy. For containers in a task with the bridge network - // mode, the Amazon ECS agent finds open host ports from the default ephemeral - // range and passes it to docker to bind them to the container ports. + // the hostPortRange is set to the same value as the containerPortRange. + // This is a static mapping strategy. For containers in a task with the bridge + // network mode, the Amazon ECS agent finds open host ports from the default + // ephemeral range and passes it to docker to bind them to the container + // ports. // // * The containerPortRange valid values are between 1 and 65535. // @@ -18172,6 +18307,9 @@ // If you don't set a value for this parameter, then TCP is used. However, Amazon // ECS doesn't add protocol-specific telemetry for TCP. // + // appProtocol is immutable in a Service Connect service. Updating this field + // requires a service deletion and redeployment. + // // Tasks that run in a namespace can use short names to connect to services // in the namespace. Tasks can connect to services across all of the clusters // in the namespace. Tasks connect through a managed proxy container that collects @@ -18213,10 +18351,11 @@ // // * You do not specify a hostPortRange. The value of the hostPortRange is // set as follows: For containers in a task with the awsvpc network mode, - // the hostPort is set to the same value as the containerPort. This is a - // static mapping strategy. For containers in a task with the bridge network - // mode, the Amazon ECS agent finds open host ports from the default ephemeral - // range and passes it to docker to bind them to the container ports. + // the hostPortRange is set to the same value as the containerPortRange. + // This is a static mapping strategy. For containers in a task with the bridge + // network mode, the Amazon ECS agent finds open host ports from the default + // ephemeral range and passes it to docker to bind them to the container + // ports. // // * The containerPortRange valid values are between 1 and 65535. // @@ -18290,7 +18429,8 @@ Name *string `locationName:"name" type:"string"` // The protocol used for the port mapping. Valid values are tcp and udp. The - // default is tcp. + // default is tcp. protocol is immutable in a Service Connect service. Updating + // this field requires a service deletion and redeployment. Protocol *string `locationName:"protocol" type:"string" enum:"TransportProtocol"` } @@ -18533,6 +18673,12 @@ // maintenance (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-maintenance.html) // in the Amazon ECS Developer Guide. // + // The guardDutyActivate parameter is read-only in Amazon ECS and indicates + // whether Amazon ECS Runtime Monitoring is enabled or disabled by your security + // administrator in your Amazon ECS account. Amazon GuardDuty controls this + // account setting on your behalf. For more information, see Protecting Amazon + // ECS workloads with Amazon ECS Runtime Monitoring (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-guard-duty-integration.html). + // // Name is a required field Name *string `locationName:"name" type:"string" required:"true" enum:"SettingName"` @@ -18650,6 +18796,12 @@ // in the Amazon ECS Developer Guide. If you specify fargateTaskRetirementWaitPeriod, // the wait time to retire a Fargate task is affected. // + // The guardDutyActivate parameter is read-only in Amazon ECS and indicates + // whether Amazon ECS Runtime Monitoring is enabled or disabled by your security + // administrator in your Amazon ECS account. Amazon GuardDuty controls this + // account setting on your behalf. For more information, see Protecting Amazon + // ECS workloads with Amazon ECS Runtime Monitoring (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-guard-duty-integration.html). + // // Name is a required field Name *string `locationName:"name" type:"string" required:"true" enum:"SettingName"` @@ -20075,6 +20227,12 @@ // A capacity provider strategy may contain a maximum of 6 capacity providers. CapacityProviderStrategy []*CapacityProviderStrategyItem `locationName:"capacityProviderStrategy" type:"list"` + // An identifier that you provide to ensure the idempotency of the request. + // It must be unique and is case sensitive. Up to 64 characters are allowed. + // The valid characters are characters in the range of 33-126, inclusive. For + // more information, see Ensuring idempotency (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/ECS_Idempotency.html). + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + // The short name or full Amazon Resource Name (ARN) of the cluster to run your // task on. If you do not specify a cluster, the default cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` @@ -20175,7 +20333,7 @@ // trigger a task to run a batch process job, you could apply a unique identifier // for that job to your task with the startedBy parameter. You can then identify // which tasks belong to that job by filtering the results of a ListTasks call - // with the startedBy value. Up to 36 letters (uppercase and lowercase), numbers, + // with the startedBy value. Up to 128 letters (uppercase and lowercase), numbers, // hyphens (-), and underscores (_) are allowed. // // If a task is started by an Amazon ECS service, then the startedBy parameter @@ -20302,6 +20460,12 @@ return s } +// SetClientToken sets the ClientToken field's value. +func (s *RunTaskInput) SetClientToken(v string) *RunTaskInput { + s.ClientToken = &v + return s +} + // SetCluster sets the Cluster field's value. func (s *RunTaskInput) SetCluster(v string) *RunTaskInput { s.Cluster = &v @@ -21800,6 +21964,14 @@ // field is omitted, the authenticated user is assumed. PrincipalArn *string `locationName:"principalArn" type:"string"` + // Indicates whether Amazon Web Services manages the account setting, or if + // the user manages it. + // + // aws_managed account settings are read-only, as Amazon Web Services manages + // such on the customer's behalf. Currently, the guardDutyActivate account setting + // is the only one Amazon Web Services manages. + Type *string `locationName:"type" type:"string" enum:"SettingType"` + // Determines whether the account setting is on or off for the specified resource. Value *string `locationName:"value" type:"string"` } @@ -21834,6 +22006,12 @@ return s } +// SetType sets the Type field's value. +func (s *Setting) SetType(v string) *Setting { + s.Type = &v + return s +} + // SetValue sets the Value field's value. func (s *Setting) SetValue(v string) *Setting { s.Value = &v @@ -27236,6 +27414,9 @@ // SettingNameFargateTaskRetirementWaitPeriod is a SettingName enum value SettingNameFargateTaskRetirementWaitPeriod = "fargateTaskRetirementWaitPeriod" + + // SettingNameGuardDutyActivate is a SettingName enum value + SettingNameGuardDutyActivate = "guardDutyActivate" ) // SettingName_Values returns all elements of the SettingName enum @@ -27249,6 +27430,23 @@ SettingNameFargateFipsmode, SettingNameTagResourceAuthorization, SettingNameFargateTaskRetirementWaitPeriod, + SettingNameGuardDutyActivate, + } +} + +const ( + // SettingTypeUser is a SettingType enum value + SettingTypeUser = "user" + + // SettingTypeAwsManaged is a SettingType enum value + SettingTypeAwsManaged = "aws_managed" +) + +// SettingType_Values returns all elements of the SettingType enum +func SettingType_Values() []string { + return []string{ + SettingTypeUser, + SettingTypeAwsManaged, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecs/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/ecs/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecs/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecs/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -34,8 +34,8 @@ // // These errors are usually caused by a client action. This client action might // be using an action or resource on behalf of a user that doesn't have permissions - // to use the action or resource,. Or, it might be specifying an identifier - // that isn't valid. + // to use the action or resource. Or, it might be specifying an identifier that + // isn't valid. ErrCodeClientException = "ClientException" // ErrCodeClusterContainsContainerInstancesException for service response error code @@ -67,6 +67,20 @@ // with ListClusters. Amazon ECS clusters are Region specific. ErrCodeClusterNotFoundException = "ClusterNotFoundException" + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // The RunTask request could not be processed due to conflicts. The provided + // clientToken is already in use with a different RunTask request. The resourceIds + // are the existing task ARNs which are already associated with the clientToken. + // + // To fix this issue: + // + // * Run RunTask with a unique clientToken. + // + // * Run RunTask with the clientToken and the original set of parameters + ErrCodeConflictException = "ConflictException" + // ErrCodeInvalidParameterException for service response error code // "InvalidParameterException". // @@ -208,6 +222,7 @@ "ClusterContainsServicesException": newErrorClusterContainsServicesException, "ClusterContainsTasksException": newErrorClusterContainsTasksException, "ClusterNotFoundException": newErrorClusterNotFoundException, + "ConflictException": newErrorConflictException, "InvalidParameterException": newErrorInvalidParameterException, "LimitExceededException": newErrorLimitExceededException, "MissingVersionException": newErrorMissingVersionException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ecs/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/ecs/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ecs/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ecs/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -1147,6 +1147,8 @@ fmt.Println(ecs.ErrCodeAccessDeniedException, aerr.Error()) case ecs.ErrCodeBlockedException: fmt.Println(ecs.ErrCodeBlockedException, aerr.Error()) + case ecs.ErrCodeConflictException: + fmt.Println(ecs.ErrCodeConflictException, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/efs/api.go golang-github-aws-aws-sdk-go-1.48.14/service/efs/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/efs/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/efs/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -218,12 +218,18 @@ // system state. // // This operation accepts an optional PerformanceMode parameter that you choose -// for your file system. We recommend generalPurpose performance mode for most -// file systems. File systems using the maxIO performance mode can scale to -// higher levels of aggregate throughput and operations per second with a tradeoff -// of slightly higher latencies for most file operations. The performance mode -// can't be changed after the file system has been created. For more information, -// see Amazon EFS performance modes (https://docs.aws.amazon.com/efs/latest/ug/performance.html#performancemodes.html). +// for your file system. We recommend generalPurpose performance mode for all +// file systems. File systems using the maxIO mode is a previous generation +// performance type that is designed for highly parallelized workloads that +// can tolerate higher latencies than the General Purpose mode. Max I/O mode +// is not supported for One Zone file systems or file systems that use Elastic +// throughput. +// +// Due to the higher per-operation latencies with Max I/O, we recommend using +// General Purpose performance mode for all file systems. +// +// The performance mode can't be changed after the file system has been created. +// For more information, see Amazon EFS performance modes (https://docs.aws.amazon.com/efs/latest/ug/performance.html#performancemodes.html). // // You can set the throughput mode for the file system using the ThroughputMode // parameter. @@ -360,12 +366,12 @@ // need to be in the same subnet as the mount target in order to access their // file system. // -// You can create only one mount target for an EFS file system using One Zone -// storage classes. You must create that mount target in the same Availability -// Zone in which the file system is located. Use the AvailabilityZoneName and -// AvailabiltyZoneId properties in the DescribeFileSystems response object to -// get this information. Use the subnetId associated with the file system's -// Availability Zone when creating the mount target. +// You can create only one mount target for a One Zone file system. You must +// create that mount target in the same Availability Zone in which the file +// system is located. Use the AvailabilityZoneName and AvailabiltyZoneId properties +// in the DescribeFileSystems response object to get this information. Use the +// subnetId associated with the file system's Availability Zone when creating +// the mount target. // // For more information, see Amazon EFS: How it Works (https://docs.aws.amazon.com/efs/latest/ug/how-it-works.html). // @@ -583,31 +589,39 @@ // in the Amazon EFS User Guide. The replication configuration specifies the // following: // -// - Source file system - An existing EFS file system that you want replicated. +// - Source file system – The EFS file system that you want replicated. // The source file system cannot be a destination file system in an existing // replication configuration. // -// - Destination file system configuration - The configuration of the destination +// - Amazon Web Services Region – The Amazon Web Services Region in which +// the destination file system is created. Amazon EFS replication is available +// in all Amazon Web Services Regions in which EFS is available. The Region +// must be enabled. For more information, see Managing Amazon Web Services +// Regions (https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable) +// in the Amazon Web Services General Reference Reference Guide. +// +// - Destination file system configuration – The configuration of the destination // file system to which the source file system will be replicated. There // can only be one destination file system in a replication configuration. -// The destination file system configuration consists of the following properties: -// Amazon Web Services Region - The Amazon Web Services Region in which the -// destination file system is created. Amazon EFS replication is available -// in all Amazon Web Services Regions that Amazon EFS is available in, except -// Africa (Cape Town), Asia Pacific (Hong Kong), Asia Pacific (Jakarta), -// Europe (Milan), and Middle East (Bahrain). Availability Zone - If you -// want the destination file system to use EFS One Zone availability and -// durability, you must specify the Availability Zone to create the file -// system in. For more information about EFS storage classes, see Amazon -// EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) -// in the Amazon EFS User Guide. Encryption - All destination file systems +// Parameters for the replication configuration include: File system ID – +// The ID of the destination file system for the replication. If no ID is +// provided, then EFS creates a new file system with the default settings. +// For existing file systems, the file system's replication overwrite protection +// must be disabled. For more information, see Replicating to an existing +// file system (https://docs.aws.amazon.com/efs/latest/ug/efs-replication#replicate-existing-destination). +// Availability Zone – If you want the destination file system to use One +// Zone storage, you must specify the Availability Zone to create the file +// system in. For more information, see EFS file system types (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) +// in the Amazon EFS User Guide. Encryption – All destination file systems // are created with encryption at rest enabled. You can specify the Key Management // Service (KMS) key that is used to encrypt the destination file system. // If you don't specify a KMS key, your service-managed KMS key for Amazon // EFS is used. After the file system is created, you cannot change the KMS // key. // -// The following properties are set by default: +// After the file system is created, you cannot change the KMS key. +// +// For new destination file systems, the following properties are set by default: // // - Performance mode - The destination file system's performance mode matches // that of the source file system, unless the destination file system uses @@ -618,14 +632,11 @@ // that of the source file system. After the file system is created, you // can modify the throughput mode. // -// The following properties are turned off by default: +// - Lifecycle management – Lifecycle management is not enabled on the +// destination file system. After the destination file system is created, +// you can enable lifecycle management. // -// - Lifecycle management - EFS lifecycle management and EFS Intelligent-Tiering -// are not enabled on the destination file system. After the destination -// file system is created, you can enable EFS lifecycle management and EFS -// Intelligent-Tiering. -// -// - Automatic backups - Automatic daily backups not enabled on the destination +// - Automatic backups – Automatic daily backups are enabled on the destination // file system. After the file system is created, you can change this setting. // // For more information, see Amazon EFS replication (https://docs.aws.amazon.com/efs/latest/ug/efs-replication.html) @@ -678,6 +689,10 @@ // Returned if the throughput mode or amount of provisioned throughput can't // be changed because the throughput limit of 1024 MiB/s has been reached. // +// - ConflictException +// Returned if the source file system in a replication is encrypted but the +// destination file system is unencrypted. +// // - InternalServerError // Returned if an error occurred on the server side. // @@ -1273,12 +1288,14 @@ // DeleteReplicationConfiguration API operation for Amazon Elastic File System. // -// Deletes an existing replication configuration. To delete a replication configuration, -// you must make the request from the Amazon Web Services Region in which the -// destination file system is located. Deleting a replication configuration +// Deletes a replication configuration. Deleting a replication configuration // ends the replication process. After a replication configuration is deleted, -// the destination file system is no longer read-only. You can write to the -// destination file system after its status becomes Writeable. +// the destination file system becomes Writeable and its replication overwrite +// protection is re-enabled. For more information, see Delete a replication +// configuration (https://docs.aws.amazon.com/efs/latest/ug/delete-replications.html). +// +// This operation requires permissions for the elasticfilesystem:DeleteReplicationConfiguration +// action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1631,7 +1648,7 @@ // // Returns the account preferences settings for the Amazon Web Services account // associated with the user making the request, in the current Amazon Web Services -// Region. For more information, see Managing Amazon EFS resource IDs (efs/latest/ug/manage-efs-resource-ids.html). +// Region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2067,13 +2084,10 @@ // DescribeLifecycleConfiguration API operation for Amazon Elastic File System. // // Returns the current LifecycleConfiguration object for the specified Amazon -// EFS file system. EFS lifecycle management uses the LifecycleConfiguration -// object to identify which files to move to the EFS Infrequent Access (IA) -// storage class. For a file system without a LifecycleConfiguration object, -// the call returns an empty array in the response. -// -// When EFS Intelligent-Tiering is enabled, TransitionToPrimaryStorageClass -// has a value of AFTER_1_ACCESS. +// EFS file system. Lifecycle management uses the LifecycleConfiguration object +// to identify when to move files between storage classes. For a file system +// without a LifecycleConfiguration object, the call returns an empty array +// in the response. // // This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration // operation. @@ -2250,6 +2264,12 @@ Name: opDescribeMountTargets, HTTPMethod: "GET", HTTPPath: "/2015-02-01/mount-targets", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"NextMarker"}, + LimitToken: "MaxItems", + TruncationToken: "", + }, } if input == nil { @@ -2321,6 +2341,57 @@ return out, req.Send() } +// DescribeMountTargetsPages iterates over the pages of a DescribeMountTargets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeMountTargets 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 DescribeMountTargets operation. +// pageNum := 0 +// err := client.DescribeMountTargetsPages(params, +// func(page *efs.DescribeMountTargetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EFS) DescribeMountTargetsPages(input *DescribeMountTargetsInput, fn func(*DescribeMountTargetsOutput, bool) bool) error { + return c.DescribeMountTargetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeMountTargetsPagesWithContext same as DescribeMountTargetsPages 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 *EFS) DescribeMountTargetsPagesWithContext(ctx aws.Context, input *DescribeMountTargetsInput, fn func(*DescribeMountTargetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeMountTargetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeMountTargetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeMountTargetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeReplicationConfigurations = "DescribeReplicationConfigurations" // DescribeReplicationConfigurationsRequest generates a "aws/request.Request" representing the @@ -2351,6 +2422,12 @@ Name: opDescribeReplicationConfigurations, HTTPMethod: "GET", HTTPPath: "/2015-02-01/file-systems/replication-configurations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -2417,6 +2494,57 @@ return out, req.Send() } +// DescribeReplicationConfigurationsPages iterates over the pages of a DescribeReplicationConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeReplicationConfigurations 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 DescribeReplicationConfigurations operation. +// pageNum := 0 +// err := client.DescribeReplicationConfigurationsPages(params, +// func(page *efs.DescribeReplicationConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EFS) DescribeReplicationConfigurationsPages(input *DescribeReplicationConfigurationsInput, fn func(*DescribeReplicationConfigurationsOutput, bool) bool) error { + return c.DescribeReplicationConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeReplicationConfigurationsPagesWithContext same as DescribeReplicationConfigurationsPages 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 *EFS) DescribeReplicationConfigurationsPagesWithContext(ctx aws.Context, input *DescribeReplicationConfigurationsInput, fn func(*DescribeReplicationConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeReplicationConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeReplicationConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeReplicationConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the @@ -3187,39 +3315,40 @@ // PutLifecycleConfiguration API operation for Amazon Elastic File System. // -// Use this action to manage EFS lifecycle management and EFS Intelligent-Tiering. -// A LifecycleConfiguration consists of one or more LifecyclePolicy objects -// that define the following: -// -// - EFS Lifecycle management - When Amazon EFS automatically transitions -// files in a file system into the lower-cost EFS Infrequent Access (IA) -// storage class. To enable EFS Lifecycle management, set the value of TransitionToIA -// to one of the available options. -// -// - EFS Intelligent-Tiering - When Amazon EFS automatically transitions -// files from IA back into the file system's primary storage class (EFS Standard -// or EFS One Zone Standard). To enable EFS Intelligent-Tiering, set the -// value of TransitionToPrimaryStorageClass to AFTER_1_ACCESS. +// Use this action to manage storage for your file system. A LifecycleConfiguration +// consists of one or more LifecyclePolicy objects that define the following: +// +// - TransitionToIA – When to move files in the file system from primary +// storage (Standard storage class) into the Infrequent Access (IA) storage. // -// For more information, see EFS Lifecycle Management (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). +// - TransitionToArchive – When to move files in the file system from their +// current storage class (either IA or Standard storage) into the Archive +// storage. File systems cannot transition into Archive storage before transitioning +// into IA storage. Therefore, TransitionToArchive must either not be set +// or must be later than TransitionToIA. The Archive storage class is available +// only for file systems that use the Elastic Throughput mode and the General +// Purpose Performance mode. +// +// - TransitionToPrimaryStorageClass – Whether to move files in the file +// system back to primary storage (Standard storage class) after they are +// accessed in IA or Archive storage. +// +// For more information, see Managing file system storage (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). // // Each Amazon EFS file system supports one lifecycle configuration, which applies // to all files in the file system. If a LifecycleConfiguration object already // exists for the specified file system, a PutLifecycleConfiguration call modifies // the existing configuration. A PutLifecycleConfiguration call with an empty -// LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration -// and turns off lifecycle management and EFS Intelligent-Tiering for the file -// system. -// +// LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration. // In the request, specify the following: // // - The ID for the file system for which you are enabling, disabling, or -// modifying lifecycle management and EFS Intelligent-Tiering. +// modifying Lifecycle management. // // - A LifecyclePolicies array of LifecyclePolicy objects that define when -// files are moved into IA storage, and when they are moved back to Standard -// storage. Amazon EFS requires that each LifecyclePolicy object have only -// have a single transition, so the LifecyclePolicies array needs to be structured +// to move files to IA storage, to Archive storage, and back to primary storage. +// Amazon EFS requires that each LifecyclePolicy object have only have a +// single transition, so the LifecyclePolicies array needs to be structured // with separate LifecyclePolicy objects. See the example requests in the // following section for more information. // @@ -3574,6 +3703,118 @@ return out, req.Send() } +const opUpdateFileSystemProtection = "UpdateFileSystemProtection" + +// UpdateFileSystemProtectionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateFileSystemProtection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateFileSystemProtection for more information on using the UpdateFileSystemProtection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateFileSystemProtectionRequest method. +// req, resp := client.UpdateFileSystemProtectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UpdateFileSystemProtection +func (c *EFS) UpdateFileSystemProtectionRequest(input *UpdateFileSystemProtectionInput) (req *request.Request, output *UpdateFileSystemProtectionOutput) { + op := &request.Operation{ + Name: opUpdateFileSystemProtection, + HTTPMethod: "PUT", + HTTPPath: "/2015-02-01/file-systems/{FileSystemId}/protection", + } + + if input == nil { + input = &UpdateFileSystemProtectionInput{} + } + + output = &UpdateFileSystemProtectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateFileSystemProtection API operation for Amazon Elastic File System. +// +// Updates protection on the file system. +// +// This operation requires permissions for the elasticfilesystem:UpdateFileSystemProtection +// action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic File System's +// API operation UpdateFileSystemProtection for usage and error information. +// +// Returned Error Types: +// +// - BadRequest +// Returned if the request is malformed or contains an error such as an invalid +// parameter value or a missing required parameter. +// +// - FileSystemNotFound +// Returned if the specified FileSystemId value doesn't exist in the requester's +// Amazon Web Services account. +// +// - IncorrectFileSystemLifeCycleState +// Returned if the file system's lifecycle state is not "available". +// +// - InsufficientThroughputCapacity +// Returned if there's not enough capacity to provision additional throughput. +// This value might be returned when you try to create a file system in provisioned +// throughput mode, when you attempt to increase the provisioned throughput +// of an existing file system, or when you attempt to change an existing file +// system from Bursting Throughput to Provisioned Throughput mode. Try again +// later. +// +// - InternalServerError +// Returned if an error occurred on the server side. +// +// - ThroughputLimitExceeded +// Returned if the throughput mode or amount of provisioned throughput can't +// be changed because the throughput limit of 1024 MiB/s has been reached. +// +// - ReplicationAlreadyExists +// Returned if the file system is already included in a replication configuration.> +// +// - TooManyRequests +// Returned if you don’t wait at least 24 hours before either changing the +// throughput mode, or decreasing the Provisioned Throughput value. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UpdateFileSystemProtection +func (c *EFS) UpdateFileSystemProtection(input *UpdateFileSystemProtectionInput) (*UpdateFileSystemProtectionOutput, error) { + req, out := c.UpdateFileSystemProtectionRequest(input) + return out, req.Send() +} + +// UpdateFileSystemProtectionWithContext is the same as UpdateFileSystemProtection with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateFileSystemProtection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EFS) UpdateFileSystemProtectionWithContext(ctx aws.Context, input *UpdateFileSystemProtectionInput, opts ...request.Option) (*UpdateFileSystemProtectionOutput, error) { + req, out := c.UpdateFileSystemProtectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // Returned if the access point that you are trying to create already exists, // with the creation token you provided in the request. type AccessPointAlreadyExists struct { @@ -3685,8 +3926,8 @@ // using the access point. PosixUser *PosixUser `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. + // The directory on the EFS file system that the access point exposes as the + // root directory to NFS clients using the access point. RootDirectory *RootDirectory `type:"structure"` // The tags associated with the access point, presented as an array of Tag objects. @@ -4014,13 +4255,13 @@ // Describes the status of the file system's backup policy. // - // * ENABLED - EFS is automatically backing up the file system. + // * ENABLED – EFS is automatically backing up the file system. // - // * ENABLING - EFS is turning on automatic backups for the file system. + // * ENABLING – EFS is turning on automatic backups for the file system. // - // * DISABLED - Automatic back ups are turned off for the file system. + // * DISABLED – Automatic back ups are turned off for the file system. // - // * DISABLING - EFS is turning off automatic backups for the file system. + // * DISABLING – EFS is turning off automatic backups for the file system. // // Status is a required field Status *string `type:"string" required:"true" enum:"Status"` @@ -4141,6 +4382,82 @@ return s.RespMetadata.RequestID } +// Returned if the source file system in a replication is encrypted but the +// destination file system is unencrypted. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The error code is a string that uniquely identifies an error condition. It + // is meant to be read and understood by programs that detect and handle errors + // by type. + ErrorCode *string `min:"1" type:"string"` + + // The error message contains a generic description of the error condition in + // English. It is intended for a human audience. Simple programs display the + // message directly to the end user if they encounter an error condition they + // don't know how or don't care to handle. Sophisticated programs with more + // exhaustive error handling and proper internationalization are more likely + // to ignore the error message. + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + type CreateAccessPointInput struct { _ struct{} `type:"structure"` @@ -4157,13 +4474,13 @@ // using the access point. PosixUser *PosixUser `type:"structure"` - // Specifies the directory on the Amazon EFS file system that the access point - // exposes as the root directory of your file system to NFS clients using the - // access point. The clients using the access point can only access the root - // directory and below. If the RootDirectory > Path specified does not exist, - // EFS creates it and applies the CreationInfo settings when a client connects - // to an access point. When specifying a RootDirectory, you must provide the - // Path, and the CreationInfo. + // Specifies the directory on the EFS file system that the access point exposes + // as the root directory of your file system to NFS clients using the access + // point. The clients using the access point can only access the root directory + // and below. If the RootDirectory > Path specified does not exist, Amazon EFS + // creates it and applies the CreationInfo settings when a client connects to + // an access point. When specifying a RootDirectory, you must provide the Path, + // and the CreationInfo. // // Amazon EFS creates a root directory only if you have provided the CreationInfo: // OwnUid, OwnGID, and permissions for the directory. If you do not provide @@ -4292,8 +4609,8 @@ // using the access point. PosixUser *PosixUser `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. + // The directory on the EFS file system that the access point exposes as the + // root directory to NFS clients using the access point. RootDirectory *RootDirectory `type:"structure"` // The tags associated with the access point, presented as an array of Tag objects. @@ -4381,20 +4698,20 @@ type CreateFileSystemInput struct { _ struct{} `type:"structure"` - // Used to create a file system that uses One Zone storage classes. It specifies - // the Amazon Web Services Availability Zone in which to create the file system. - // Use the format us-east-1a to specify the Availability Zone. For more information - // about One Zone storage classes, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) + // Used to create a One Zone file system. It specifies the Amazon Web Services + // Availability Zone in which to create the file system. Use the format us-east-1a + // to specify the Availability Zone. For more information about One Zone file + // systems, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) // in the Amazon EFS User Guide. // - // One Zone storage classes are not available in all Availability Zones in Amazon + // One Zone file systems are not available in all Availability Zones in Amazon // Web Services Regions where Amazon EFS is available. AvailabilityZoneName *string `min:"1" type:"string"` // Specifies whether automatic backups are enabled on the file system that you // are creating. Set the value to true to enable automatic backups. If you are - // creating a file system that uses One Zone storage classes, automatic backups - // are enabled by default. For more information, see Automatic backups (https://docs.aws.amazon.com/efs/latest/ug/awsbackup.html#automatic-backups) + // creating a One Zone file system, automatic backups are enabled by default. + // For more information, see Automatic backups (https://docs.aws.amazon.com/efs/latest/ug/awsbackup.html#automatic-backups) // in the Amazon EFS User Guide. // // Default is false. However, if you specify an AvailabilityZoneName, the default @@ -4436,21 +4753,26 @@ // Amazon EFS file systems. KmsKeyId *string `type:"string"` - // The performance mode of the file system. We recommend generalPurpose performance - // mode for most file systems. File systems using the maxIO performance mode + // The Performance mode of the file system. We recommend generalPurpose performance + // mode for all file systems. File systems using the maxIO performance mode // can scale to higher levels of aggregate throughput and operations per second // with a tradeoff of slightly higher latencies for most file operations. The // performance mode can't be changed after the file system has been created. + // The maxIO mode is not supported on One Zone file systems. // - // The maxIO mode is not supported on file systems using One Zone storage classes. + // Due to the higher per-operation latencies with Max I/O, we recommend using + // General Purpose performance mode for all file systems. + // + // Default is generalPurpose. PerformanceMode *string `type:"string" enum:"PerformanceMode"` - // The throughput, measured in MiB/s, that you want to provision for a file - // system that you're creating. Valid values are 1-1024. Required if ThroughputMode - // is set to provisioned. The upper limit for throughput is 1024 MiB/s. To increase - // this limit, contact Amazon Web Services Support. For more information, see - // Amazon EFS quotas that you can increase (https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits) - // in the Amazon EFS User Guide. + // The throughput, measured in mebibytes per second (MiBps), that you want to + // provision for a file system that you're creating. Required if ThroughputMode + // is set to provisioned. Valid values are 1-3414 MiBps, with the upper limit + // depending on Region. To increase this limit, contact Amazon Web Services + // Support. For more information, see Amazon EFS quotas that you can increase + // (https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits) in the + // Amazon EFS User Guide. ProvisionedThroughputInMibps *float64 `min:"1" type:"double"` // Use to create one or more tags associated with the file system. Each tag @@ -4463,9 +4785,9 @@ // Specifies the throughput mode for the file system. The mode can be bursting, // provisioned, or elastic. If you set ThroughputMode to provisioned, you must // also set a value for ProvisionedThroughputInMibps. After you create the file - // system, you can decrease your file system's throughput in Provisioned Throughput - // mode or change between the throughput modes, with certain time restrictions. - // For more information, see Specifying throughput with provisioned mode (https://docs.aws.amazon.com/efs/latest/ug/performance.html#provisioned-throughput) + // system, you can decrease your file system's Provisioned throughput or change + // between the throughput modes, with certain time restrictions. For more information, + // see Specifying throughput with provisioned mode (https://docs.aws.amazon.com/efs/latest/ug/performance.html#provisioned-throughput) // in the Amazon EFS User Guide. // // Default is bursting. @@ -4588,9 +4910,8 @@ // for the same VPC as subnet specified. SecurityGroups []*string `type:"list"` - // The ID of the subnet to add the mount target in. For file systems that use - // One Zone storage classes, use the subnet that is associated with the file - // system's Availability Zone. + // The ID of the subnet to add the mount target in. For One Zone file systems, + // use the subnet that is associated with the file system's Availability Zone. // // SubnetId is a required field SubnetId *string `min:"15" type:"string" required:"true"` @@ -4736,6 +5057,7 @@ return s } +// Describes the replication configuration for a specific file system. type CreateReplicationConfigurationOutput struct { _ struct{} `type:"structure"` @@ -4749,8 +5071,8 @@ // Destinations is a required field Destinations []*Destination `type:"list" required:"true"` - // The Amazon Resource Name (ARN) of the original source Amazon EFS file system - // in the replication configuration. + // The Amazon Resource Name (ARN) of the original source EFS file system in + // the replication configuration. // // OriginalSourceFileSystemArn is a required field OriginalSourceFileSystemArn *string `type:"string" required:"true"` @@ -4766,8 +5088,7 @@ // SourceFileSystemId is a required field SourceFileSystemId *string `type:"string" required:"true"` - // The Amazon Web Services Region in which the source Amazon EFS file system - // is located. + // The Amazon Web Services Region in which the source EFS file system is located. // // SourceFileSystemRegion is a required field SourceFileSystemRegion *string `min:"1" type:"string" required:"true"` @@ -5764,7 +6085,7 @@ type DescribeBackupPolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Specifies which EFS file system to retrieve the BackupPolicy for. + // Specifies which EFS file system for which to retrieve the BackupPolicy. // // FileSystemId is a required field FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` @@ -6639,7 +6960,7 @@ // Region is a required field Region *string `min:"1" type:"string" required:"true"` - // Describes the status of the destination Amazon EFS file system. + // Describes the status of the destination EFS file system. // // * The Paused state occurs as a result of opting out of the source or destination // Region after the replication configuration was created. To resume replication @@ -6701,15 +7022,21 @@ return s } -// Describes the destination file system to create in the replication configuration. +// Describes the new or existing destination file system for the replication +// configuration. type DestinationToCreate struct { _ struct{} `type:"structure"` - // To create a file system that uses EFS One Zone storage, specify the name - // of the Availability Zone in which to create the destination file system. + // To create a file system that uses One Zone storage, specify the name of the + // Availability Zone in which to create the destination file system. AvailabilityZoneName *string `min:"1" type:"string"` - // Specifies the Key Management Service (KMS) key that you want to use to encrypt + // The ID of the file system to use for the destination. The file system's replication + // overwrite replication must be disabled. If you do not provide an ID, then + // EFS creates a new file system for the replication destination. + FileSystemId *string `type:"string"` + + // Specify the Key Management Service (KMS) key that you want to use to encrypt // the destination file system. If you do not specify a KMS key, Amazon EFS // uses your default KMS key for Amazon EFS, /aws/elasticfilesystem. This ID // can be in one of the following formats: @@ -6769,6 +7096,12 @@ return s } +// SetFileSystemId sets the FileSystemId field's value. +func (s *DestinationToCreate) SetFileSystemId(v string) *DestinationToCreate { + s.FileSystemId = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DestinationToCreate) SetKmsKeyId(v string) *DestinationToCreate { s.KmsKeyId = &v @@ -6867,14 +7200,15 @@ _ struct{} `type:"structure"` // The unique and consistent identifier of the Availability Zone in which the - // file system's One Zone storage classes exist. For example, use1-az1 is an - // Availability Zone ID for the us-east-1 Amazon Web Services Region, and it - // has the same location in every Amazon Web Services account. + // file system is located, and is valid only for One Zone file systems. For + // example, use1-az1 is an Availability Zone ID for the us-east-1 Amazon Web + // Services Region, and it has the same location in every Amazon Web Services + // account. AvailabilityZoneId *string `type:"string"` // Describes the Amazon Web Services Availability Zone in which the file system - // is located, and is valid only for file systems using One Zone storage classes. - // For more information, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) + // is located, and is valid only for One Zone file systems. For more information, + // see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) // in the Amazon EFS User Guide. AvailabilityZoneName *string `min:"1" type:"string"` @@ -6900,6 +7234,9 @@ // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` + // Describes the protection on the file system. + FileSystemProtection *FileSystemProtectionDescription `type:"structure"` + // The ID of an KMS key used to protect the encrypted file system. KmsKeyId *string `type:"string"` @@ -6924,12 +7261,12 @@ // OwnerId is a required field OwnerId *string `type:"string" required:"true"` - // The performance mode of the file system. + // The Performance mode of the file system. // // PerformanceMode is a required field PerformanceMode *string `type:"string" required:"true" enum:"PerformanceMode"` - // The amount of provisioned throughput, measured in MiB/s, for the file system. + // The amount of provisioned throughput, measured in MiBps, for the file system. // Valid for file systems using ThroughputMode set to provisioned. ProvisionedThroughputInMibps *float64 `min:"1" type:"double"` @@ -7017,6 +7354,12 @@ return s } +// SetFileSystemProtection sets the FileSystemProtection field's value. +func (s *FileSystemDescription) SetFileSystemProtection(v *FileSystemProtectionDescription) *FileSystemDescription { + s.FileSystemProtection = v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *FileSystemDescription) SetKmsKeyId(v string) *FileSystemDescription { s.KmsKeyId = &v @@ -7310,6 +7653,53 @@ return s.RespMetadata.RequestID } +// Describes the protection on a file system. +type FileSystemProtectionDescription struct { + _ struct{} `type:"structure"` + + // The status of the file system's replication overwrite protection. + // + // * ENABLED – The file system cannot be used as the destination file system + // in a replication configuration. The file system is writeable. Replication + // overwrite protection is ENABLED by default. + // + // * DISABLED – The file system can be used as the destination file system + // in a replication configuration. The file system is read-only and can only + // be modified by EFS replication. + // + // * REPLICATING – The file system is being used as the destination file + // system in a replication configuration. The file system is read-only and + // is only modified only by EFS replication. + // + // If the replication configuration is deleted, the file system's replication + // overwrite protection is re-enabled, the file system becomes writeable. + ReplicationOverwriteProtection *string `type:"string" enum:"ReplicationOverwriteProtection"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FileSystemProtectionDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FileSystemProtectionDescription) GoString() string { + return s.String() +} + +// SetReplicationOverwriteProtection sets the ReplicationOverwriteProtection field's value. +func (s *FileSystemProtectionDescription) SetReplicationOverwriteProtection(v string) *FileSystemProtectionDescription { + s.ReplicationOverwriteProtection = &v + return s +} + // The latest known metered size (in bytes) of data stored in the file system, // in its Value field, and the time at which that size was determined in its // Timestamp field. The value doesn't represent the size of a consistent snapshot @@ -7330,6 +7720,10 @@ // Value is a required field Value *int64 `type:"long" required:"true"` + // The latest known metered size (in bytes) of data stored in the Archive storage + // class. + ValueInArchive *int64 `type:"long"` + // The latest known metered size (in bytes) of data stored in the Infrequent // Access storage class. ValueInIA *int64 `type:"long"` @@ -7369,6 +7763,12 @@ return s } +// SetValueInArchive sets the ValueInArchive field's value. +func (s *FileSystemSize) SetValueInArchive(v int64) *FileSystemSize { + s.ValueInArchive = &v + return s +} + // SetValueInIA sets the ValueInIA field's value. func (s *FileSystemSize) SetValueInIA(v int64) *FileSystemSize { s.ValueInIA = &v @@ -7849,28 +8249,33 @@ return s.RespMetadata.RequestID } -// Describes a policy used by EFS lifecycle management and EFS Intelligent-Tiering -// that specifies when to transition files into and out of the file system's -// Infrequent Access (IA) storage class. For more information, see EFS Intelligent‐Tiering -// and EFS Lifecycle Management (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). +// Describes a policy used by Lifecycle management that specifies when to transition +// files into and out of storage classes. For more information, see Managing +// file system storage (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). // // When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration // API action, Amazon EFS requires that each LifecyclePolicy object have only // a single transition. This means that in a request body, LifecyclePolicies // must be structured as an array of LifecyclePolicy objects, one object for -// each transition, TransitionToIA, TransitionToPrimaryStorageClass. For more -// information, see the request examples in PutLifecycleConfiguration. +// each transition. For more information, see the request examples in PutLifecycleConfiguration. type LifecyclePolicy struct { _ struct{} `type:"structure"` - // Describes the period of time that a file is not accessed, after which it - // transitions to IA storage. Metadata operations such as listing the contents - // of a directory don't count as file access events. - TransitionToIA *string `type:"string" enum:"TransitionToIARules"` - - // Describes when to transition a file from IA storage to primary storage. Metadata + // The number of days after files were last accessed in primary storage (the + // Standard storage class) files at which to move them to Archive storage. Metadata // operations such as listing the contents of a directory don't count as file // access events. + TransitionToArchive *string `type:"string" enum:"TransitionToArchiveRules"` + + // The number of days after files were last accessed in primary storage (the + // Standard storage class) at which to move them to Infrequent Access (IA) storage. + // Metadata operations such as listing the contents of a directory don't count + // as file access events. + TransitionToIA *string `type:"string" enum:"TransitionToIARules"` + + // Whether to move files back to primary (Standard) storage after they are accessed + // in IA or Archive storage. Metadata operations such as listing the contents + // of a directory don't count as file access events. TransitionToPrimaryStorageClass *string `type:"string" enum:"TransitionToPrimaryStorageClassRules"` } @@ -7892,6 +8297,12 @@ return s.String() } +// SetTransitionToArchive sets the TransitionToArchive field's value. +func (s *LifecyclePolicy) SetTransitionToArchive(v string) *LifecyclePolicy { + s.TransitionToArchive = &v + return s +} + // SetTransitionToIA sets the TransitionToIA field's value. func (s *LifecyclePolicy) SetTransitionToIA(v string) *LifecyclePolicy { s.TransitionToIA = &v @@ -9014,20 +9425,30 @@ FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` // An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration - // object. A LifecycleConfiguration object informs EFS lifecycle management - // and EFS Intelligent-Tiering of the following: + // object. A LifecycleConfiguration object informs EFS Lifecycle management + // of the following: // - // * When to move files in the file system from primary storage to the IA - // storage class. + // * TransitionToIA – When to move files in the file system from primary + // storage (Standard storage class) into the Infrequent Access (IA) storage. // - // * When to move files that are in IA storage to primary storage. + // * TransitionToArchive – When to move files in the file system from their + // current storage class (either IA or Standard storage) into the Archive + // storage. File systems cannot transition into Archive storage before transitioning + // into IA storage. Therefore, TransitionToArchive must either not be set + // or must be later than TransitionToIA. The Archive storage class is available + // only for file systems that use the Elastic Throughput mode and the General + // Purpose Performance mode. + // + // * TransitionToPrimaryStorageClass – Whether to move files in the file + // system back to primary storage (Standard storage class) after they are + // accessed in IA or Archive storage. // // When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration // API action, Amazon EFS requires that each LifecyclePolicy object have only // a single transition. This means that in a request body, LifecyclePolicies // must be structured as an array of LifecyclePolicy objects, one object for - // each transition, TransitionToIA, TransitionToPrimaryStorageClass. See the - // example requests in the following section for more information. + // each storage transition. See the example requests in the following section + // for more information. // // LifecyclePolicies is a required field LifecyclePolicies []*LifecyclePolicy `type:"list" required:"true"` @@ -9114,6 +9535,82 @@ return s } +// Returned if the file system is already included in a replication configuration.> +type ReplicationAlreadyExists struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The error code is a string that uniquely identifies an error condition. It + // is meant to be read and understood by programs that detect and handle errors + // by type. + ErrorCode *string `min:"1" type:"string"` + + // The error message contains a generic description of the error condition in + // English. It is intended for a human audience. Simple programs display the + // message directly to the end user if they encounter an error condition they + // don't know how or don't care to handle. Sophisticated programs with more + // exhaustive error handling and proper internationalization are more likely + // to ignore the error message. + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationAlreadyExists) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationAlreadyExists) GoString() string { + return s.String() +} + +func newErrorReplicationAlreadyExists(v protocol.ResponseMetadata) error { + return &ReplicationAlreadyExists{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ReplicationAlreadyExists) Code() string { + return "ReplicationAlreadyExists" +} + +// Message returns the exception's message. +func (s *ReplicationAlreadyExists) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ReplicationAlreadyExists) OrigErr() error { + return nil +} + +func (s *ReplicationAlreadyExists) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ReplicationAlreadyExists) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ReplicationAlreadyExists) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes the replication configuration for a specific file system. type ReplicationConfigurationDescription struct { _ struct{} `type:"structure"` @@ -9127,8 +9624,8 @@ // Destinations is a required field Destinations []*Destination `type:"list" required:"true"` - // The Amazon Resource Name (ARN) of the original source Amazon EFS file system - // in the replication configuration. + // The Amazon Resource Name (ARN) of the original source EFS file system in + // the replication configuration. // // OriginalSourceFileSystemArn is a required field OriginalSourceFileSystemArn *string `type:"string" required:"true"` @@ -9144,8 +9641,7 @@ // SourceFileSystemId is a required field SourceFileSystemId *string `type:"string" required:"true"` - // The Amazon Web Services Region in which the source Amazon EFS file system - // is located. + // The Amazon Web Services Region in which the source EFS file system is located. // // SourceFileSystemRegion is a required field SourceFileSystemRegion *string `min:"1" type:"string" required:"true"` @@ -10198,10 +10694,13 @@ // FileSystemId is a required field FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` - // (Optional) Sets the amount of provisioned throughput, in MiB/s, for the file - // system. Valid values are 1-1024. If you are changing the throughput mode - // to provisioned, you must also provide the amount of provisioned throughput. - // Required if ThroughputMode is changed to provisioned on update. + // (Optional) The throughput, measured in mebibytes per second (MiBps), that + // you want to provision for a file system that you're creating. Required if + // ThroughputMode is set to provisioned. Valid values are 1-3414 MiBps, with + // the upper limit depending on Region. To increase this limit, contact Amazon + // Web Services Support. For more information, see Amazon EFS quotas that you + // can increase (https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits) + // in the Amazon EFS User Guide. ProvisionedThroughputInMibps *float64 `min:"1" type:"double"` // (Optional) Updates the file system's throughput mode. If you're not updating @@ -10271,14 +10770,15 @@ _ struct{} `type:"structure"` // The unique and consistent identifier of the Availability Zone in which the - // file system's One Zone storage classes exist. For example, use1-az1 is an - // Availability Zone ID for the us-east-1 Amazon Web Services Region, and it - // has the same location in every Amazon Web Services account. + // file system is located, and is valid only for One Zone file systems. For + // example, use1-az1 is an Availability Zone ID for the us-east-1 Amazon Web + // Services Region, and it has the same location in every Amazon Web Services + // account. AvailabilityZoneId *string `type:"string"` // Describes the Amazon Web Services Availability Zone in which the file system - // is located, and is valid only for file systems using One Zone storage classes. - // For more information, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) + // is located, and is valid only for One Zone file systems. For more information, + // see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) // in the Amazon EFS User Guide. AvailabilityZoneName *string `min:"1" type:"string"` @@ -10304,6 +10804,9 @@ // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` + // Describes the protection on the file system. + FileSystemProtection *FileSystemProtectionDescription `type:"structure"` + // The ID of an KMS key used to protect the encrypted file system. KmsKeyId *string `type:"string"` @@ -10328,12 +10831,12 @@ // OwnerId is a required field OwnerId *string `type:"string" required:"true"` - // The performance mode of the file system. + // The Performance mode of the file system. // // PerformanceMode is a required field PerformanceMode *string `type:"string" required:"true" enum:"PerformanceMode"` - // The amount of provisioned throughput, measured in MiB/s, for the file system. + // The amount of provisioned throughput, measured in MiBps, for the file system. // Valid for file systems using ThroughputMode set to provisioned. ProvisionedThroughputInMibps *float64 `min:"1" type:"double"` @@ -10421,6 +10924,12 @@ return s } +// SetFileSystemProtection sets the FileSystemProtection field's value. +func (s *UpdateFileSystemOutput) SetFileSystemProtection(v *FileSystemProtectionDescription) *UpdateFileSystemOutput { + s.FileSystemProtection = v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *UpdateFileSystemOutput) SetKmsKeyId(v string) *UpdateFileSystemOutput { s.KmsKeyId = &v @@ -10481,6 +10990,126 @@ return s } +type UpdateFileSystemProtectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the file system to update. + // + // FileSystemId is a required field + FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` + + // The status of the file system's replication overwrite protection. + // + // * ENABLED – The file system cannot be used as the destination file system + // in a replication configuration. The file system is writeable. Replication + // overwrite protection is ENABLED by default. + // + // * DISABLED – The file system can be used as the destination file system + // in a replication configuration. The file system is read-only and can only + // be modified by EFS replication. + // + // * REPLICATING – The file system is being used as the destination file + // system in a replication configuration. The file system is read-only and + // is only modified only by EFS replication. + // + // If the replication configuration is deleted, the file system's replication + // overwrite protection is re-enabled, the file system becomes writeable. + ReplicationOverwriteProtection *string `type:"string" enum:"ReplicationOverwriteProtection"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFileSystemProtectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFileSystemProtectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateFileSystemProtectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemProtectionInput"} + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *UpdateFileSystemProtectionInput) SetFileSystemId(v string) *UpdateFileSystemProtectionInput { + s.FileSystemId = &v + return s +} + +// SetReplicationOverwriteProtection sets the ReplicationOverwriteProtection field's value. +func (s *UpdateFileSystemProtectionInput) SetReplicationOverwriteProtection(v string) *UpdateFileSystemProtectionInput { + s.ReplicationOverwriteProtection = &v + return s +} + +// Describes the protection on a file system. +type UpdateFileSystemProtectionOutput struct { + _ struct{} `type:"structure"` + + // The status of the file system's replication overwrite protection. + // + // * ENABLED – The file system cannot be used as the destination file system + // in a replication configuration. The file system is writeable. Replication + // overwrite protection is ENABLED by default. + // + // * DISABLED – The file system can be used as the destination file system + // in a replication configuration. The file system is read-only and can only + // be modified by EFS replication. + // + // * REPLICATING – The file system is being used as the destination file + // system in a replication configuration. The file system is read-only and + // is only modified only by EFS replication. + // + // If the replication configuration is deleted, the file system's replication + // overwrite protection is re-enabled, the file system becomes writeable. + ReplicationOverwriteProtection *string `type:"string" enum:"ReplicationOverwriteProtection"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFileSystemProtectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFileSystemProtectionOutput) GoString() string { + return s.String() +} + +// SetReplicationOverwriteProtection sets the ReplicationOverwriteProtection field's value. +func (s *UpdateFileSystemProtectionOutput) SetReplicationOverwriteProtection(v string) *UpdateFileSystemProtectionOutput { + s.ReplicationOverwriteProtection = &v + return s +} + // Returned if the Backup service is not available in the Amazon Web Services // Region in which the request was made. type ValidationException struct { @@ -10608,6 +11237,26 @@ } const ( + // ReplicationOverwriteProtectionEnabled is a ReplicationOverwriteProtection enum value + ReplicationOverwriteProtectionEnabled = "ENABLED" + + // ReplicationOverwriteProtectionDisabled is a ReplicationOverwriteProtection enum value + ReplicationOverwriteProtectionDisabled = "DISABLED" + + // ReplicationOverwriteProtectionReplicating is a ReplicationOverwriteProtection enum value + ReplicationOverwriteProtectionReplicating = "REPLICATING" +) + +// ReplicationOverwriteProtection_Values returns all elements of the ReplicationOverwriteProtection enum +func ReplicationOverwriteProtection_Values() []string { + return []string{ + ReplicationOverwriteProtectionEnabled, + ReplicationOverwriteProtectionDisabled, + ReplicationOverwriteProtectionReplicating, + } +} + +const ( // ReplicationStatusEnabled is a ReplicationStatus enum value ReplicationStatusEnabled = "ENABLED" @@ -10719,6 +11368,50 @@ } const ( + // TransitionToArchiveRulesAfter1Day is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter1Day = "AFTER_1_DAY" + + // TransitionToArchiveRulesAfter7Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter7Days = "AFTER_7_DAYS" + + // TransitionToArchiveRulesAfter14Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter14Days = "AFTER_14_DAYS" + + // TransitionToArchiveRulesAfter30Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter30Days = "AFTER_30_DAYS" + + // TransitionToArchiveRulesAfter60Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter60Days = "AFTER_60_DAYS" + + // TransitionToArchiveRulesAfter90Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter90Days = "AFTER_90_DAYS" + + // TransitionToArchiveRulesAfter180Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter180Days = "AFTER_180_DAYS" + + // TransitionToArchiveRulesAfter270Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter270Days = "AFTER_270_DAYS" + + // TransitionToArchiveRulesAfter365Days is a TransitionToArchiveRules enum value + TransitionToArchiveRulesAfter365Days = "AFTER_365_DAYS" +) + +// TransitionToArchiveRules_Values returns all elements of the TransitionToArchiveRules enum +func TransitionToArchiveRules_Values() []string { + return []string{ + TransitionToArchiveRulesAfter1Day, + TransitionToArchiveRulesAfter7Days, + TransitionToArchiveRulesAfter14Days, + TransitionToArchiveRulesAfter30Days, + TransitionToArchiveRulesAfter60Days, + TransitionToArchiveRulesAfter90Days, + TransitionToArchiveRulesAfter180Days, + TransitionToArchiveRulesAfter270Days, + TransitionToArchiveRulesAfter365Days, + } +} + +const ( // TransitionToIARulesAfter7Days is a TransitionToIARules enum value TransitionToIARulesAfter7Days = "AFTER_7_DAYS" @@ -10736,6 +11429,15 @@ // TransitionToIARulesAfter1Day is a TransitionToIARules enum value TransitionToIARulesAfter1Day = "AFTER_1_DAY" + + // TransitionToIARulesAfter180Days is a TransitionToIARules enum value + TransitionToIARulesAfter180Days = "AFTER_180_DAYS" + + // TransitionToIARulesAfter270Days is a TransitionToIARules enum value + TransitionToIARulesAfter270Days = "AFTER_270_DAYS" + + // TransitionToIARulesAfter365Days is a TransitionToIARules enum value + TransitionToIARulesAfter365Days = "AFTER_365_DAYS" ) // TransitionToIARules_Values returns all elements of the TransitionToIARules enum @@ -10747,6 +11449,9 @@ TransitionToIARulesAfter60Days, TransitionToIARulesAfter90Days, TransitionToIARulesAfter1Day, + TransitionToIARulesAfter180Days, + TransitionToIARulesAfter270Days, + TransitionToIARulesAfter365Days, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/efs/efsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/efs/efsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/efs/efsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/efs/efsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -142,10 +142,16 @@ DescribeMountTargetsWithContext(aws.Context, *efs.DescribeMountTargetsInput, ...request.Option) (*efs.DescribeMountTargetsOutput, error) DescribeMountTargetsRequest(*efs.DescribeMountTargetsInput) (*request.Request, *efs.DescribeMountTargetsOutput) + DescribeMountTargetsPages(*efs.DescribeMountTargetsInput, func(*efs.DescribeMountTargetsOutput, bool) bool) error + DescribeMountTargetsPagesWithContext(aws.Context, *efs.DescribeMountTargetsInput, func(*efs.DescribeMountTargetsOutput, bool) bool, ...request.Option) error + DescribeReplicationConfigurations(*efs.DescribeReplicationConfigurationsInput) (*efs.DescribeReplicationConfigurationsOutput, error) DescribeReplicationConfigurationsWithContext(aws.Context, *efs.DescribeReplicationConfigurationsInput, ...request.Option) (*efs.DescribeReplicationConfigurationsOutput, error) DescribeReplicationConfigurationsRequest(*efs.DescribeReplicationConfigurationsInput) (*request.Request, *efs.DescribeReplicationConfigurationsOutput) + DescribeReplicationConfigurationsPages(*efs.DescribeReplicationConfigurationsInput, func(*efs.DescribeReplicationConfigurationsOutput, bool) bool) error + DescribeReplicationConfigurationsPagesWithContext(aws.Context, *efs.DescribeReplicationConfigurationsInput, func(*efs.DescribeReplicationConfigurationsOutput, bool) bool, ...request.Option) error + DescribeTags(*efs.DescribeTagsInput) (*efs.DescribeTagsOutput, error) DescribeTagsWithContext(aws.Context, *efs.DescribeTagsInput, ...request.Option) (*efs.DescribeTagsOutput, error) DescribeTagsRequest(*efs.DescribeTagsInput) (*request.Request, *efs.DescribeTagsOutput) @@ -191,6 +197,10 @@ UpdateFileSystem(*efs.UpdateFileSystemInput) (*efs.UpdateFileSystemOutput, error) UpdateFileSystemWithContext(aws.Context, *efs.UpdateFileSystemInput, ...request.Option) (*efs.UpdateFileSystemOutput, error) UpdateFileSystemRequest(*efs.UpdateFileSystemInput) (*request.Request, *efs.UpdateFileSystemOutput) + + UpdateFileSystemProtection(*efs.UpdateFileSystemProtectionInput) (*efs.UpdateFileSystemProtectionOutput, error) + UpdateFileSystemProtectionWithContext(aws.Context, *efs.UpdateFileSystemProtectionInput, ...request.Option) (*efs.UpdateFileSystemProtectionOutput, error) + UpdateFileSystemProtectionRequest(*efs.UpdateFileSystemProtectionInput) (*request.Request, *efs.UpdateFileSystemProtectionOutput) } var _ EFSAPI = (*efs.EFS)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/efs/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/efs/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/efs/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/efs/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -46,6 +46,13 @@ // parameter value or a missing required parameter. ErrCodeBadRequest = "BadRequest" + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Returned if the source file system in a replication is encrypted but the + // destination file system is unencrypted. + ErrCodeConflictException = "ConflictException" + // ErrCodeDependencyTimeout for service response error code // "DependencyTimeout". // @@ -163,6 +170,12 @@ // system specified. ErrCodePolicyNotFound = "PolicyNotFound" + // ErrCodeReplicationAlreadyExists for service response error code + // "ReplicationAlreadyExists". + // + // Returned if the file system is already included in a replication configuration.> + ErrCodeReplicationAlreadyExists = "ReplicationAlreadyExists" + // ErrCodeReplicationNotFound for service response error code // "ReplicationNotFound". // @@ -232,6 +245,7 @@ "AccessPointNotFound": newErrorAccessPointNotFound, "AvailabilityZonesMismatch": newErrorAvailabilityZonesMismatch, "BadRequest": newErrorBadRequest, + "ConflictException": newErrorConflictException, "DependencyTimeout": newErrorDependencyTimeout, "FileSystemAlreadyExists": newErrorFileSystemAlreadyExists, "FileSystemInUse": newErrorFileSystemInUse, @@ -248,6 +262,7 @@ "NetworkInterfaceLimitExceeded": newErrorNetworkInterfaceLimitExceeded, "NoFreeAddressesInSubnet": newErrorNoFreeAddressesInSubnet, "PolicyNotFound": newErrorPolicyNotFound, + "ReplicationAlreadyExists": newErrorReplicationAlreadyExists, "ReplicationNotFound": newErrorReplicationNotFound, "SecurityGroupLimitExceeded": newErrorSecurityGroupLimitExceeded, "SecurityGroupNotFound": newErrorSecurityGroupNotFound, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eks/api.go golang-github-aws-aws-sdk-go-1.48.14/service/eks/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eks/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eks/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -77,8 +77,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -185,8 +186,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -302,8 +304,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -392,6 +395,23 @@ // cluster's control plane over the Kubernetes API server endpoint and a certificate // file that is created for your cluster. // +// You can use the endpointPublicAccess and endpointPrivateAccess parameters +// to enable or disable public and private access to your cluster's Kubernetes +// API server endpoint. By default, public access is enabled, and private access +// is disabled. For more information, see Amazon EKS Cluster Endpoint Access +// Control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) +// in the Amazon EKS User Guide . +// +// You can use the logging parameter to enable or disable exporting the Kubernetes +// control plane logs for your cluster to CloudWatch Logs. By default, cluster +// control plane logs aren't exported to CloudWatch Logs. For more information, +// see Amazon EKS Cluster Control Plane Logs (https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html) +// in the Amazon EKS User Guide . +// +// CloudWatch Logs ingestion, archive storage, and data scanning rates apply +// to exported control plane logs. For more information, see CloudWatch Pricing +// (http://aws.amazon.com/cloudwatch/pricing/). +// // In most cases, it takes several minutes to create a cluster. After you create // an Amazon EKS cluster, you must configure your Kubernetes tooling to communicate // with the API server and launch nodes into your cluster. For more information, @@ -420,8 +440,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -457,6 +478,105 @@ return out, req.Send() } +const opCreateEksAnywhereSubscription = "CreateEksAnywhereSubscription" + +// CreateEksAnywhereSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the CreateEksAnywhereSubscription 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 CreateEksAnywhereSubscription for more information on using the CreateEksAnywhereSubscription +// 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 CreateEksAnywhereSubscriptionRequest method. +// req, resp := client.CreateEksAnywhereSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateEksAnywhereSubscription +func (c *EKS) CreateEksAnywhereSubscriptionRequest(input *CreateEksAnywhereSubscriptionInput) (req *request.Request, output *CreateEksAnywhereSubscriptionOutput) { + op := &request.Operation{ + Name: opCreateEksAnywhereSubscription, + HTTPMethod: "POST", + HTTPPath: "/eks-anywhere-subscriptions", + } + + if input == nil { + input = &CreateEksAnywhereSubscriptionInput{} + } + + output = &CreateEksAnywhereSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEksAnywhereSubscription API operation for Amazon Elastic Kubernetes Service. +// +// Creates an EKS Anywhere subscription. When a subscription is created, it +// is a contract agreement for the length of the term specified in the request. +// Licenses that are used to validate support are provisioned in Amazon Web +// Services License Manager and the caller account is granted access to EKS +// Anywhere Curated Packages. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation CreateEksAnywhereSubscription for usage and error information. +// +// Returned Error Types: +// +// - ResourceLimitExceededException +// You have encountered a service limit on the specified resource. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ServiceUnavailableException +// The service is unavailable. Back off and retry the operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateEksAnywhereSubscription +func (c *EKS) CreateEksAnywhereSubscription(input *CreateEksAnywhereSubscriptionInput) (*CreateEksAnywhereSubscriptionOutput, error) { + req, out := c.CreateEksAnywhereSubscriptionRequest(input) + return out, req.Send() +} + +// CreateEksAnywhereSubscriptionWithContext is the same as CreateEksAnywhereSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEksAnywhereSubscription 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 *EKS) CreateEksAnywhereSubscriptionWithContext(ctx aws.Context, input *CreateEksAnywhereSubscriptionInput, opts ...request.Option) (*CreateEksAnywhereSubscriptionOutput, error) { + req, out := c.CreateEksAnywhereSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateFargateProfile = "CreateFargateProfile" // CreateFargateProfileRequest generates a "aws/request.Request" representing the @@ -514,7 +634,7 @@ // // When you create a Fargate profile, you must specify a pod execution role // to use with the pods that are scheduled with the profile. This role is added -// to the cluster's Kubernetes Role Based Access Control (https://kubernetes.io/docs/admin/authorization/rbac/) +// to the cluster's Kubernetes Role Based Access Control (https://kubernetes.io/docs/reference/access-authn-authz/rbac/) // (RBAC) for authorization so that the kubelet that is running on the Fargate // infrastructure can register with your Amazon EKS cluster so that it can appear // in your cluster as a node. The pod execution role also provides IAM permissions @@ -552,8 +672,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -634,10 +755,7 @@ // // Creates a managed node group for an Amazon EKS cluster. You can only create // a node group for your cluster that is equal to the current Kubernetes version -// for the cluster. All node groups are created with the latest AMI release -// version for the respective minor Kubernetes version of the cluster, unless -// you deploy a custom AMI using a launch template. For more information about -// using launch templates, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html). +// for the cluster. // // An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and // associated Amazon EC2 instances that are managed by Amazon Web Services for @@ -672,8 +790,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -703,6 +822,119 @@ return out, req.Send() } +const opCreatePodIdentityAssociation = "CreatePodIdentityAssociation" + +// CreatePodIdentityAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreatePodIdentityAssociation 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 CreatePodIdentityAssociation for more information on using the CreatePodIdentityAssociation +// 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 CreatePodIdentityAssociationRequest method. +// req, resp := client.CreatePodIdentityAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreatePodIdentityAssociation +func (c *EKS) CreatePodIdentityAssociationRequest(input *CreatePodIdentityAssociationInput) (req *request.Request, output *CreatePodIdentityAssociationOutput) { + op := &request.Operation{ + Name: opCreatePodIdentityAssociation, + HTTPMethod: "POST", + HTTPPath: "/clusters/{name}/pod-identity-associations", + } + + if input == nil { + input = &CreatePodIdentityAssociationInput{} + } + + output = &CreatePodIdentityAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePodIdentityAssociation API operation for Amazon Elastic Kubernetes Service. +// +// Creates an EKS Pod Identity association between a service account in an Amazon +// EKS cluster and an IAM role with EKS Pod Identity. Use EKS Pod Identity to +// give temporary IAM credentials to pods and the credentials are rotated automatically. +// +// Amazon EKS Pod Identity associations provide the ability to manage credentials +// for your applications, similar to the way that 7EC2l instance profiles provide +// credentials to Amazon EC2 instances. +// +// If a pod uses a service account that has an association, Amazon EKS sets +// environment variables in the containers of the pod. The environment variables +// configure the Amazon Web Services SDKs, including the Command Line Interface, +// to use the EKS Pod Identity credentials. +// +// Pod Identity is a simpler method than IAM roles for service accounts, as +// this method doesn't use OIDC identity providers. Additionally, you can configure +// a role for Pod Identity once, and reuse it across clusters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation CreatePodIdentityAssociation for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ResourceLimitExceededException +// You have encountered a service limit on the specified resource. +// +// - ResourceInUseException +// The specified resource is in use. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreatePodIdentityAssociation +func (c *EKS) CreatePodIdentityAssociation(input *CreatePodIdentityAssociationInput) (*CreatePodIdentityAssociationOutput, error) { + req, out := c.CreatePodIdentityAssociationRequest(input) + return out, req.Send() +} + +// CreatePodIdentityAssociationWithContext is the same as CreatePodIdentityAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePodIdentityAssociation 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 *EKS) CreatePodIdentityAssociationWithContext(ctx aws.Context, input *CreatePodIdentityAssociationInput, opts ...request.Option) (*CreatePodIdentityAssociationOutput, error) { + req, out := c.CreatePodIdentityAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAddon = "DeleteAddon" // DeleteAddonRequest generates a "aws/request.Request" representing the @@ -775,8 +1007,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -878,8 +1111,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -909,6 +1143,104 @@ return out, req.Send() } +const opDeleteEksAnywhereSubscription = "DeleteEksAnywhereSubscription" + +// DeleteEksAnywhereSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEksAnywhereSubscription 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 DeleteEksAnywhereSubscription for more information on using the DeleteEksAnywhereSubscription +// 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 DeleteEksAnywhereSubscriptionRequest method. +// req, resp := client.DeleteEksAnywhereSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteEksAnywhereSubscription +func (c *EKS) DeleteEksAnywhereSubscriptionRequest(input *DeleteEksAnywhereSubscriptionInput) (req *request.Request, output *DeleteEksAnywhereSubscriptionOutput) { + op := &request.Operation{ + Name: opDeleteEksAnywhereSubscription, + HTTPMethod: "DELETE", + HTTPPath: "/eks-anywhere-subscriptions/{id}", + } + + if input == nil { + input = &DeleteEksAnywhereSubscriptionInput{} + } + + output = &DeleteEksAnywhereSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteEksAnywhereSubscription API operation for Amazon Elastic Kubernetes Service. +// +// Deletes an expired or inactive subscription. Deleting inactive subscriptions +// removes them from the Amazon Web Services Management Console view and from +// list/describe API responses. Subscriptions can only be cancelled within 7 +// days of creation and are cancelled by creating a ticket in the Amazon Web +// Services Support Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DeleteEksAnywhereSubscription for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteEksAnywhereSubscription +func (c *EKS) DeleteEksAnywhereSubscription(input *DeleteEksAnywhereSubscriptionInput) (*DeleteEksAnywhereSubscriptionOutput, error) { + req, out := c.DeleteEksAnywhereSubscriptionRequest(input) + return out, req.Send() +} + +// DeleteEksAnywhereSubscriptionWithContext is the same as DeleteEksAnywhereSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEksAnywhereSubscription 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 *EKS) DeleteEksAnywhereSubscriptionWithContext(ctx aws.Context, input *DeleteEksAnywhereSubscriptionInput, opts ...request.Option) (*DeleteEksAnywhereSubscriptionOutput, error) { + req, out := c.DeleteEksAnywhereSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteFargateProfile = "DeleteFargateProfile" // DeleteFargateProfileRequest generates a "aws/request.Request" representing the @@ -979,8 +1311,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1080,8 +1413,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1111,6 +1445,103 @@ return out, req.Send() } +const opDeletePodIdentityAssociation = "DeletePodIdentityAssociation" + +// DeletePodIdentityAssociationRequest generates a "aws/request.Request" representing the +// client's request for the DeletePodIdentityAssociation 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 DeletePodIdentityAssociation for more information on using the DeletePodIdentityAssociation +// 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 DeletePodIdentityAssociationRequest method. +// req, resp := client.DeletePodIdentityAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeletePodIdentityAssociation +func (c *EKS) DeletePodIdentityAssociationRequest(input *DeletePodIdentityAssociationInput) (req *request.Request, output *DeletePodIdentityAssociationOutput) { + op := &request.Operation{ + Name: opDeletePodIdentityAssociation, + HTTPMethod: "DELETE", + HTTPPath: "/clusters/{name}/pod-identity-associations/{associationId}", + } + + if input == nil { + input = &DeletePodIdentityAssociationInput{} + } + + output = &DeletePodIdentityAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeletePodIdentityAssociation API operation for Amazon Elastic Kubernetes Service. +// +// Deletes a EKS Pod Identity association. +// +// The temporary Amazon Web Services credentials from the previous IAM role +// session might still be valid until the session expiry. If you need to immediately +// revoke the temporary session credentials, then go to the role in the IAM +// console. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DeletePodIdentityAssociation for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeletePodIdentityAssociation +func (c *EKS) DeletePodIdentityAssociation(input *DeletePodIdentityAssociationInput) (*DeletePodIdentityAssociationOutput, error) { + req, out := c.DeletePodIdentityAssociationRequest(input) + return out, req.Send() +} + +// DeletePodIdentityAssociationWithContext is the same as DeletePodIdentityAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See DeletePodIdentityAssociation 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 *EKS) DeletePodIdentityAssociationWithContext(ctx aws.Context, input *DeletePodIdentityAssociationInput, opts ...request.Option) (*DeletePodIdentityAssociationOutput, error) { + req, out := c.DeletePodIdentityAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeregisterCluster = "DeregisterCluster" // DeregisterClusterRequest generates a "aws/request.Request" representing the @@ -1176,8 +1607,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1186,11 +1618,12 @@ // The service is unavailable. Back off and retry the operation. // // - AccessDeniedException -// You don't have permissions to perform the requested operation. The user or -// role that is making the request must have at least one IAM permissions policy -// attached that grants the required permissions. For more information, see -// Access Management (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) -// in the IAM User Guide. +// You don't have permissions to perform the requested operation. The IAM principal +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// making the request must have at least one IAM permissions policy attached +// that grants the required permissions. For more information, see Access management +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM +// User Guide. // // See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeregisterCluster func (c *EKS) DeregisterCluster(input *DeregisterClusterInput) (*DeregisterClusterOutput, error) { @@ -1283,8 +1716,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1615,8 +2049,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1646,6 +2081,99 @@ return out, req.Send() } +const opDescribeEksAnywhereSubscription = "DescribeEksAnywhereSubscription" + +// DescribeEksAnywhereSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the DescribeEksAnywhereSubscription 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 DescribeEksAnywhereSubscription for more information on using the DescribeEksAnywhereSubscription +// 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 DescribeEksAnywhereSubscriptionRequest method. +// req, resp := client.DescribeEksAnywhereSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeEksAnywhereSubscription +func (c *EKS) DescribeEksAnywhereSubscriptionRequest(input *DescribeEksAnywhereSubscriptionInput) (req *request.Request, output *DescribeEksAnywhereSubscriptionOutput) { + op := &request.Operation{ + Name: opDescribeEksAnywhereSubscription, + HTTPMethod: "GET", + HTTPPath: "/eks-anywhere-subscriptions/{id}", + } + + if input == nil { + input = &DescribeEksAnywhereSubscriptionInput{} + } + + output = &DescribeEksAnywhereSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeEksAnywhereSubscription API operation for Amazon Elastic Kubernetes Service. +// +// Returns descriptive information about a subscription. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DescribeEksAnywhereSubscription for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ServiceUnavailableException +// The service is unavailable. Back off and retry the operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeEksAnywhereSubscription +func (c *EKS) DescribeEksAnywhereSubscription(input *DescribeEksAnywhereSubscriptionInput) (*DescribeEksAnywhereSubscriptionOutput, error) { + req, out := c.DescribeEksAnywhereSubscriptionRequest(input) + return out, req.Send() +} + +// DescribeEksAnywhereSubscriptionWithContext is the same as DescribeEksAnywhereSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeEksAnywhereSubscription 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 *EKS) DescribeEksAnywhereSubscriptionWithContext(ctx aws.Context, input *DescribeEksAnywhereSubscriptionInput, opts ...request.Option) (*DescribeEksAnywhereSubscriptionOutput, error) { + req, out := c.DescribeEksAnywhereSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeFargateProfile = "DescribeFargateProfile" // DescribeFargateProfileRequest generates a "aws/request.Request" representing the @@ -1706,8 +2234,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1804,8 +2333,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1900,8 +2430,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -1931,6 +2462,103 @@ return out, req.Send() } +const opDescribePodIdentityAssociation = "DescribePodIdentityAssociation" + +// DescribePodIdentityAssociationRequest generates a "aws/request.Request" representing the +// client's request for the DescribePodIdentityAssociation 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 DescribePodIdentityAssociation for more information on using the DescribePodIdentityAssociation +// 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 DescribePodIdentityAssociationRequest method. +// req, resp := client.DescribePodIdentityAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribePodIdentityAssociation +func (c *EKS) DescribePodIdentityAssociationRequest(input *DescribePodIdentityAssociationInput) (req *request.Request, output *DescribePodIdentityAssociationOutput) { + op := &request.Operation{ + Name: opDescribePodIdentityAssociation, + HTTPMethod: "GET", + HTTPPath: "/clusters/{name}/pod-identity-associations/{associationId}", + } + + if input == nil { + input = &DescribePodIdentityAssociationInput{} + } + + output = &DescribePodIdentityAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribePodIdentityAssociation API operation for Amazon Elastic Kubernetes Service. +// +// Returns descriptive information about an EKS Pod Identity association. +// +// This action requires the ID of the association. You can get the ID from the +// response to the CreatePodIdentityAssocation for newly created associations. +// Or, you can list the IDs for associations with ListPodIdentityAssociations +// and filter the list by namespace or service account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DescribePodIdentityAssociation for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribePodIdentityAssociation +func (c *EKS) DescribePodIdentityAssociation(input *DescribePodIdentityAssociationInput) (*DescribePodIdentityAssociationOutput, error) { + req, out := c.DescribePodIdentityAssociationRequest(input) + return out, req.Send() +} + +// DescribePodIdentityAssociationWithContext is the same as DescribePodIdentityAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See DescribePodIdentityAssociation 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 *EKS) DescribePodIdentityAssociationWithContext(ctx aws.Context, input *DescribePodIdentityAssociationInput, opts ...request.Option) (*DescribePodIdentityAssociationOutput, error) { + req, out := c.DescribePodIdentityAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeUpdate = "DescribeUpdate" // DescribeUpdateRequest generates a "aws/request.Request" representing the @@ -1996,8 +2624,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -2075,7 +2704,7 @@ // Disassociates an identity provider configuration from a cluster. If you disassociate // an identity provider from your cluster, users included in the provider can // no longer access the cluster. However, you can still access the cluster with -// Amazon Web Services IAM users. +// IAM principals (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.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 @@ -2092,8 +2721,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -2181,7 +2811,7 @@ // ListAddons API operation for Amazon Elastic Kubernetes Service. // -// Lists the available add-ons. +// Lists the installed add-ons. // // 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 @@ -2202,8 +2832,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ResourceNotFoundException // The specified resource could not be found. You can view your available clusters @@ -2353,8 +2984,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -2435,6 +3067,155 @@ return p.Err() } +const opListEksAnywhereSubscriptions = "ListEksAnywhereSubscriptions" + +// ListEksAnywhereSubscriptionsRequest generates a "aws/request.Request" representing the +// client's request for the ListEksAnywhereSubscriptions 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 ListEksAnywhereSubscriptions for more information on using the ListEksAnywhereSubscriptions +// 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 ListEksAnywhereSubscriptionsRequest method. +// req, resp := client.ListEksAnywhereSubscriptionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListEksAnywhereSubscriptions +func (c *EKS) ListEksAnywhereSubscriptionsRequest(input *ListEksAnywhereSubscriptionsInput) (req *request.Request, output *ListEksAnywhereSubscriptionsOutput) { + op := &request.Operation{ + Name: opListEksAnywhereSubscriptions, + HTTPMethod: "GET", + HTTPPath: "/eks-anywhere-subscriptions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEksAnywhereSubscriptionsInput{} + } + + output = &ListEksAnywhereSubscriptionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEksAnywhereSubscriptions API operation for Amazon Elastic Kubernetes Service. +// +// Displays the full description of the subscription. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation ListEksAnywhereSubscriptions for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ServiceUnavailableException +// The service is unavailable. Back off and retry the operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListEksAnywhereSubscriptions +func (c *EKS) ListEksAnywhereSubscriptions(input *ListEksAnywhereSubscriptionsInput) (*ListEksAnywhereSubscriptionsOutput, error) { + req, out := c.ListEksAnywhereSubscriptionsRequest(input) + return out, req.Send() +} + +// ListEksAnywhereSubscriptionsWithContext is the same as ListEksAnywhereSubscriptions with the addition of +// the ability to pass a context and additional request options. +// +// See ListEksAnywhereSubscriptions 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 *EKS) ListEksAnywhereSubscriptionsWithContext(ctx aws.Context, input *ListEksAnywhereSubscriptionsInput, opts ...request.Option) (*ListEksAnywhereSubscriptionsOutput, error) { + req, out := c.ListEksAnywhereSubscriptionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEksAnywhereSubscriptionsPages iterates over the pages of a ListEksAnywhereSubscriptions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEksAnywhereSubscriptions 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 ListEksAnywhereSubscriptions operation. +// pageNum := 0 +// err := client.ListEksAnywhereSubscriptionsPages(params, +// func(page *eks.ListEksAnywhereSubscriptionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EKS) ListEksAnywhereSubscriptionsPages(input *ListEksAnywhereSubscriptionsInput, fn func(*ListEksAnywhereSubscriptionsOutput, bool) bool) error { + return c.ListEksAnywhereSubscriptionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEksAnywhereSubscriptionsPagesWithContext same as ListEksAnywhereSubscriptionsPages 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 *EKS) ListEksAnywhereSubscriptionsPagesWithContext(ctx aws.Context, input *ListEksAnywhereSubscriptionsInput, fn func(*ListEksAnywhereSubscriptionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEksAnywhereSubscriptionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEksAnywhereSubscriptionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEksAnywhereSubscriptionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListFargateProfiles = "ListFargateProfiles" // ListFargateProfilesRequest generates a "aws/request.Request" representing the @@ -2507,8 +3288,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -2652,8 +3434,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -2807,8 +3590,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -2894,6 +3678,157 @@ return p.Err() } +const opListPodIdentityAssociations = "ListPodIdentityAssociations" + +// ListPodIdentityAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListPodIdentityAssociations 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 ListPodIdentityAssociations for more information on using the ListPodIdentityAssociations +// 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 ListPodIdentityAssociationsRequest method. +// req, resp := client.ListPodIdentityAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListPodIdentityAssociations +func (c *EKS) ListPodIdentityAssociationsRequest(input *ListPodIdentityAssociationsInput) (req *request.Request, output *ListPodIdentityAssociationsOutput) { + op := &request.Operation{ + Name: opListPodIdentityAssociations, + HTTPMethod: "GET", + HTTPPath: "/clusters/{name}/pod-identity-associations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPodIdentityAssociationsInput{} + } + + output = &ListPodIdentityAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPodIdentityAssociations API operation for Amazon Elastic Kubernetes Service. +// +// List the EKS Pod Identity associations in a cluster. You can filter the list +// by the namespace that the association is in or the service account that the +// association uses. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation ListPodIdentityAssociations for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListPodIdentityAssociations +func (c *EKS) ListPodIdentityAssociations(input *ListPodIdentityAssociationsInput) (*ListPodIdentityAssociationsOutput, error) { + req, out := c.ListPodIdentityAssociationsRequest(input) + return out, req.Send() +} + +// ListPodIdentityAssociationsWithContext is the same as ListPodIdentityAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListPodIdentityAssociations 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 *EKS) ListPodIdentityAssociationsWithContext(ctx aws.Context, input *ListPodIdentityAssociationsInput, opts ...request.Option) (*ListPodIdentityAssociationsOutput, error) { + req, out := c.ListPodIdentityAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPodIdentityAssociationsPages iterates over the pages of a ListPodIdentityAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPodIdentityAssociations 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 ListPodIdentityAssociations operation. +// pageNum := 0 +// err := client.ListPodIdentityAssociationsPages(params, +// func(page *eks.ListPodIdentityAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EKS) ListPodIdentityAssociationsPages(input *ListPodIdentityAssociationsInput, fn func(*ListPodIdentityAssociationsOutput, bool) bool) error { + return c.ListPodIdentityAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPodIdentityAssociationsPagesWithContext same as ListPodIdentityAssociationsPages 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 *EKS) ListPodIdentityAssociationsPagesWithContext(ctx aws.Context, input *ListPodIdentityAssociationsInput, fn func(*ListPodIdentityAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPodIdentityAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPodIdentityAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPodIdentityAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -3045,8 +3980,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3207,8 +4143,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3217,11 +4154,12 @@ // The service is unavailable. Back off and retry the operation. // // - AccessDeniedException -// You don't have permissions to perform the requested operation. The user or -// role that is making the request must have at least one IAM permissions policy -// attached that grants the required permissions. For more information, see -// Access Management (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) -// in the IAM User Guide. +// You don't have permissions to perform the requested operation. The IAM principal +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// making the request must have at least one IAM permissions policy attached +// that grants the required permissions. For more information, see Access management +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM +// User Guide. // // - ResourceInUseException // The specified resource is in use. @@ -3500,8 +4438,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3592,7 +4531,13 @@ // see Amazon EKS cluster endpoint access control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) // in the Amazon EKS User Guide . // -// You can't update the subnets or security group IDs for an existing cluster. +// You can also use this API operation to choose different subnets and security +// groups for the cluster. You must specify at least two subnets that are in +// different Availability Zones. You can't change which VPC the subnets are +// from, the subnets must be in the same VPC as the subnets that the cluster +// was created with. For more information about the VPC requirements, see https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html +// (https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) in the +// Amazon EKS User Guide . // // Cluster updates are asynchronous, and they should finish within a few minutes. // During an update, the cluster status moves to UPDATING (this status transition @@ -3614,8 +4559,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3726,8 +4672,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3766,6 +4713,105 @@ return out, req.Send() } +const opUpdateEksAnywhereSubscription = "UpdateEksAnywhereSubscription" + +// UpdateEksAnywhereSubscriptionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEksAnywhereSubscription 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 UpdateEksAnywhereSubscription for more information on using the UpdateEksAnywhereSubscription +// 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 UpdateEksAnywhereSubscriptionRequest method. +// req, resp := client.UpdateEksAnywhereSubscriptionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateEksAnywhereSubscription +func (c *EKS) UpdateEksAnywhereSubscriptionRequest(input *UpdateEksAnywhereSubscriptionInput) (req *request.Request, output *UpdateEksAnywhereSubscriptionOutput) { + op := &request.Operation{ + Name: opUpdateEksAnywhereSubscription, + HTTPMethod: "POST", + HTTPPath: "/eks-anywhere-subscriptions/{id}", + } + + if input == nil { + input = &UpdateEksAnywhereSubscriptionInput{} + } + + output = &UpdateEksAnywhereSubscriptionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEksAnywhereSubscription API operation for Amazon Elastic Kubernetes Service. +// +// Update an EKS Anywhere Subscription. Only auto renewal and tags can be updated +// after subscription creation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation UpdateEksAnywhereSubscription for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateEksAnywhereSubscription +func (c *EKS) UpdateEksAnywhereSubscription(input *UpdateEksAnywhereSubscriptionInput) (*UpdateEksAnywhereSubscriptionOutput, error) { + req, out := c.UpdateEksAnywhereSubscriptionRequest(input) + return out, req.Send() +} + +// UpdateEksAnywhereSubscriptionWithContext is the same as UpdateEksAnywhereSubscription with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEksAnywhereSubscription 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 *EKS) UpdateEksAnywhereSubscriptionWithContext(ctx aws.Context, input *UpdateEksAnywhereSubscriptionInput, opts ...request.Option) (*UpdateEksAnywhereSubscriptionOutput, error) { + req, out := c.UpdateEksAnywhereSubscriptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateNodegroupConfig = "UpdateNodegroupConfig" // UpdateNodegroupConfigRequest generates a "aws/request.Request" representing the @@ -3830,8 +4876,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3956,8 +5003,9 @@ // // - ClientException // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. // // - ServerException // These errors are usually caused by a server-side issue. @@ -3996,15 +5044,112 @@ return out, req.Send() } -// You don't have permissions to perform the requested operation. The user or -// role that is making the request must have at least one IAM permissions policy -// attached that grants the required permissions. For more information, see -// Access Management (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) -// in the IAM User Guide. +const opUpdatePodIdentityAssociation = "UpdatePodIdentityAssociation" + +// UpdatePodIdentityAssociationRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePodIdentityAssociation 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 UpdatePodIdentityAssociation for more information on using the UpdatePodIdentityAssociation +// 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 UpdatePodIdentityAssociationRequest method. +// req, resp := client.UpdatePodIdentityAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdatePodIdentityAssociation +func (c *EKS) UpdatePodIdentityAssociationRequest(input *UpdatePodIdentityAssociationInput) (req *request.Request, output *UpdatePodIdentityAssociationOutput) { + op := &request.Operation{ + Name: opUpdatePodIdentityAssociation, + HTTPMethod: "POST", + HTTPPath: "/clusters/{name}/pod-identity-associations/{associationId}", + } + + if input == nil { + input = &UpdatePodIdentityAssociationInput{} + } + + output = &UpdatePodIdentityAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePodIdentityAssociation API operation for Amazon Elastic Kubernetes Service. +// +// Updates a EKS Pod Identity association. Only the IAM role can be changed; +// an association can't be moved between clusters, namespaces, or service accounts. +// If you need to edit the namespace or service account, you need to remove +// the association and then create a new association with your desired 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 Amazon Elastic Kubernetes Service's +// API operation UpdatePodIdentityAssociation for usage and error information. +// +// Returned Error Types: +// +// - ServerException +// These errors are usually caused by a server-side issue. +// +// - ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// - InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdatePodIdentityAssociation +func (c *EKS) UpdatePodIdentityAssociation(input *UpdatePodIdentityAssociationInput) (*UpdatePodIdentityAssociationOutput, error) { + req, out := c.UpdatePodIdentityAssociationRequest(input) + return out, req.Send() +} + +// UpdatePodIdentityAssociationWithContext is the same as UpdatePodIdentityAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePodIdentityAssociation 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 *EKS) UpdatePodIdentityAssociationWithContext(ctx aws.Context, input *UpdatePodIdentityAssociationInput, opts ...request.Option) (*UpdatePodIdentityAssociationOutput, error) { + req, out := c.UpdatePodIdentityAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You don't have permissions to perform the requested operation. The IAM principal +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// making the request must have at least one IAM permissions policy attached +// that grants the required permissions. For more information, see Access management +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM +// User Guide. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // You do not have sufficient access to perform this action. Message_ *string `locationName:"message" type:"string"` } @@ -4712,6 +5857,8 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // This exception is thrown if the request contains a semantic error. The precise + // meaning will depend on the API, and will be documented in the error message. Message_ *string `locationName:"message" type:"string"` } @@ -4806,21 +5953,30 @@ } // These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. +// an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) +// that doesn't have permissions to use the action or resource or specifying +// an identifier that is not valid. type ClientException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The Amazon EKS add-on name associated with the exception. AddonName *string `locationName:"addonName" type:"string"` // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` + // These errors are usually caused by a client action. Actions can include using + // an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) + // that doesn't have permissions to use the action or resource or specifying + // an identifier that is not valid. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. NodegroupName *string `locationName:"nodegroupName" type:"string"` + + // The Amazon EKS subscription ID with the exception. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` } // String returns the string representation. @@ -5372,7 +6528,7 @@ // The placement configuration for all the control plane instances of your local // Amazon EKS cluster on an Amazon Web Services Outpost. For more information, // see Capacity considerations (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html) -// in the Amazon EKS User Guide +// in the Amazon EKS User Guide. type ControlPlanePlacementRequest struct { _ struct{} `type:"structure"` @@ -5480,8 +6636,11 @@ // existing value, Amazon EKS changes the value to the Amazon EKS default // value. // - // * Preserve – Not supported. You can set this value when updating an - // add-on though. For more information, see UpdateAddon (https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html). + // * Preserve – This is similar to the NONE option. If the self-managed + // version of the add-on is installed on your cluster Amazon EKS doesn't + // change the add-on resource properties. Creation of the add-on might fail + // if conflicts are detected. This option works differently during the update + // operation. For more information, see UpdateAddon (https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html). // // If you don't currently have the self-managed version of the add-on installed // on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all @@ -5836,6 +6995,162 @@ return s } +type CreateEksAnywhereSubscriptionInput struct { + _ struct{} `type:"structure"` + + // A boolean indicating whether the subscription auto renews at the end of the + // term. + AutoRenew *bool `locationName:"autoRenew" type:"boolean"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` + + // The number of licenses to purchase with the subscription. Valid values are + // between 1 and 100. This value can't be changed after creating the subscription. + LicenseQuantity *int64 `locationName:"licenseQuantity" type:"integer"` + + // The license type for all licenses in the subscription. Valid value is CLUSTER. + // With the CLUSTER license type, each license covers support for a single EKS + // Anywhere cluster. + LicenseType *string `locationName:"licenseType" type:"string" enum:"EksAnywhereSubscriptionLicenseType"` + + // The unique name for your subscription. It must be unique in your Amazon Web + // Services account in the Amazon Web Services Region you're creating the subscription + // in. The name can contain only alphanumeric characters (case-sensitive), hyphens, + // and underscores. It must start with an alphabetic character and can't be + // longer than 100 characters. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The metadata for a subscription to assist with categorization and organization. + // Each tag consists of a key and an optional value. Subscription tags don't + // propagate to any other resources associated with the subscription. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` + + // An object representing the term duration and term unit type of your subscription. + // This determines the term length of your subscription. Valid values are MONTHS + // for term unit and 12 or 36 for term duration, indicating a 12 month or 36 + // month subscription. This value cannot be changed after creating the subscription. + // + // Term is a required field + Term *EksAnywhereSubscriptionTerm `locationName:"term" 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 CreateEksAnywhereSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEksAnywhereSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEksAnywhereSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEksAnywhereSubscriptionInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Term == nil { + invalidParams.Add(request.NewErrParamRequired("Term")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoRenew sets the AutoRenew field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetAutoRenew(v bool) *CreateEksAnywhereSubscriptionInput { + s.AutoRenew = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetClientRequestToken(v string) *CreateEksAnywhereSubscriptionInput { + s.ClientRequestToken = &v + return s +} + +// SetLicenseQuantity sets the LicenseQuantity field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetLicenseQuantity(v int64) *CreateEksAnywhereSubscriptionInput { + s.LicenseQuantity = &v + return s +} + +// SetLicenseType sets the LicenseType field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetLicenseType(v string) *CreateEksAnywhereSubscriptionInput { + s.LicenseType = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetName(v string) *CreateEksAnywhereSubscriptionInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetTags(v map[string]*string) *CreateEksAnywhereSubscriptionInput { + s.Tags = v + return s +} + +// SetTerm sets the Term field's value. +func (s *CreateEksAnywhereSubscriptionInput) SetTerm(v *EksAnywhereSubscriptionTerm) *CreateEksAnywhereSubscriptionInput { + s.Term = v + return s +} + +type CreateEksAnywhereSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The full description of the subscription. + Subscription *EksAnywhereSubscription `locationName:"subscription" 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 CreateEksAnywhereSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEksAnywhereSubscriptionOutput) GoString() string { + return s.String() +} + +// SetSubscription sets the Subscription field's value. +func (s *CreateEksAnywhereSubscriptionOutput) SetSubscription(v *EksAnywhereSubscription) *CreateEksAnywhereSubscriptionOutput { + s.Subscription = v + return s +} + type CreateFargateProfileInput struct { _ struct{} `type:"structure"` @@ -6339,6 +7654,183 @@ return s } +type CreatePodIdentityAssociationInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` + + // The name of the cluster to create the association in. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` + + // The name of the Kubernetes namespace inside the cluster to create the association + // in. The service account and the pods that use the service account must be + // in this namespace. + // + // Namespace is a required field + Namespace *string `locationName:"namespace" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role to associate with the service + // account. The EKS Pod Identity agent manages credentials to assume this role + // for applications in the containers in the pods that use this service account. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The name of the Kubernetes service account inside the cluster to associate + // the IAM credentials with. + // + // ServiceAccount is a required field + ServiceAccount *string `locationName:"serviceAccount" type:"string" required:"true"` + + // The metadata that you apply to a resource to assist with categorization and + // organization. Each tag consists of a key and an optional value. You define + // both. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource – 50 + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length – 128 Unicode characters in UTF-8 + // + // * Maximum value length – 256 Unicode characters in UTF-8 + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case-sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for either keys or values as it is reserved for Amazon Web + // Services use. You cannot edit or delete tag keys or values with this prefix. + // Tags with this prefix do not count against your tags per resource limit. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePodIdentityAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePodIdentityAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePodIdentityAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePodIdentityAssociationInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.ServiceAccount == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceAccount")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreatePodIdentityAssociationInput) SetClientRequestToken(v string) *CreatePodIdentityAssociationInput { + s.ClientRequestToken = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *CreatePodIdentityAssociationInput) SetClusterName(v string) *CreatePodIdentityAssociationInput { + s.ClusterName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *CreatePodIdentityAssociationInput) SetNamespace(v string) *CreatePodIdentityAssociationInput { + s.Namespace = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreatePodIdentityAssociationInput) SetRoleArn(v string) *CreatePodIdentityAssociationInput { + s.RoleArn = &v + return s +} + +// SetServiceAccount sets the ServiceAccount field's value. +func (s *CreatePodIdentityAssociationInput) SetServiceAccount(v string) *CreatePodIdentityAssociationInput { + s.ServiceAccount = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreatePodIdentityAssociationInput) SetTags(v map[string]*string) *CreatePodIdentityAssociationInput { + s.Tags = v + return s +} + +type CreatePodIdentityAssociationOutput struct { + _ struct{} `type:"structure"` + + // The full description of your new association. + // + // The description includes an ID for the association. Use the ID of the association + // in further actions to manage the association. + Association *PodIdentityAssociation `locationName:"association" 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 CreatePodIdentityAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePodIdentityAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociation sets the Association field's value. +func (s *CreatePodIdentityAssociationOutput) SetAssociation(v *PodIdentityAssociation) *CreatePodIdentityAssociationOutput { + s.Association = v + return s +} + type DeleteAddonInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6529,6 +8021,86 @@ return s } +type DeleteEksAnywhereSubscriptionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the subscription. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEksAnywhereSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEksAnywhereSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEksAnywhereSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEksAnywhereSubscriptionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *DeleteEksAnywhereSubscriptionInput) SetId(v string) *DeleteEksAnywhereSubscriptionInput { + s.Id = &v + return s +} + +type DeleteEksAnywhereSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The full description of the subscription to be deleted. + Subscription *EksAnywhereSubscription `locationName:"subscription" 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 DeleteEksAnywhereSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEksAnywhereSubscriptionOutput) GoString() string { + return s.String() +} + +// SetSubscription sets the Subscription field's value. +func (s *DeleteEksAnywhereSubscriptionOutput) SetSubscription(v *EksAnywhereSubscription) *DeleteEksAnywhereSubscriptionOutput { + s.Subscription = v + return s +} + type DeleteFargateProfileInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6724,6 +8296,103 @@ return s } +type DeletePodIdentityAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the association to be deleted. + // + // AssociationId is a required field + AssociationId *string `location:"uri" locationName:"associationId" type:"string" required:"true"` + + // The cluster name that + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" 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 DeletePodIdentityAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePodIdentityAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeletePodIdentityAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeletePodIdentityAssociationInput"} + if s.AssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("AssociationId")) + } + if s.AssociationId != nil && len(*s.AssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssociationId", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociationId sets the AssociationId field's value. +func (s *DeletePodIdentityAssociationInput) SetAssociationId(v string) *DeletePodIdentityAssociationInput { + s.AssociationId = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *DeletePodIdentityAssociationInput) SetClusterName(v string) *DeletePodIdentityAssociationInput { + s.ClusterName = &v + return s +} + +type DeletePodIdentityAssociationOutput struct { + _ struct{} `type:"structure"` + + // The full description of the EKS Pod Identity association that was deleted. + Association *PodIdentityAssociation `locationName:"association" 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 DeletePodIdentityAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePodIdentityAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociation sets the Association field's value. +func (s *DeletePodIdentityAssociationOutput) SetAssociation(v *PodIdentityAssociation) *DeletePodIdentityAssociationOutput { + s.Association = v + return s +} + type DeregisterClusterInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -7131,10 +8800,10 @@ // other properties. Addons []*AddonInfo `locationName:"addons" type:"list"` - // The nextToken value returned from a previous paginated DescribeAddonVersionsResponse - // where maxResults was used and the results exceeded the value of that parameter. - // Pagination continues from the end of the previous results that returned the - // nextToken value. + // The nextToken value to include in a future DescribeAddonVersions request. + // When the results of a DescribeAddonVersions request exceed maxResults, you + // can use this value to retrieve the next page of results. This value is null + // when there are no more results to return. // // This token should be treated as an opaque identifier that is used only to // retrieve the next items in a list and not for other programmatic purposes. @@ -7251,6 +8920,86 @@ return s } +type DescribeEksAnywhereSubscriptionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the subscription. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeEksAnywhereSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeEksAnywhereSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeEksAnywhereSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeEksAnywhereSubscriptionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *DescribeEksAnywhereSubscriptionInput) SetId(v string) *DescribeEksAnywhereSubscriptionInput { + s.Id = &v + return s +} + +type DescribeEksAnywhereSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The full description of the subscription. + Subscription *EksAnywhereSubscription `locationName:"subscription" 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 DescribeEksAnywhereSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeEksAnywhereSubscriptionOutput) GoString() string { + return s.String() +} + +// SetSubscription sets the Subscription field's value. +func (s *DescribeEksAnywhereSubscriptionOutput) SetSubscription(v *EksAnywhereSubscription) *DescribeEksAnywhereSubscriptionOutput { + s.Subscription = v + return s +} + type DescribeFargateProfileInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -7544,6 +9293,103 @@ return s } +type DescribePodIdentityAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the association that you want the description of. + // + // AssociationId is a required field + AssociationId *string `location:"uri" locationName:"associationId" type:"string" required:"true"` + + // The name of the cluster that the association is in. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" 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 DescribePodIdentityAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribePodIdentityAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribePodIdentityAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribePodIdentityAssociationInput"} + if s.AssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("AssociationId")) + } + if s.AssociationId != nil && len(*s.AssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssociationId", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociationId sets the AssociationId field's value. +func (s *DescribePodIdentityAssociationInput) SetAssociationId(v string) *DescribePodIdentityAssociationInput { + s.AssociationId = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *DescribePodIdentityAssociationInput) SetClusterName(v string) *DescribePodIdentityAssociationInput { + s.ClusterName = &v + return s +} + +type DescribePodIdentityAssociationOutput struct { + _ struct{} `type:"structure"` + + // The full description of the EKS Pod Identity association. + Association *PodIdentityAssociation `locationName:"association" 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 DescribePodIdentityAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribePodIdentityAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociation sets the Association field's value. +func (s *DescribePodIdentityAssociationOutput) SetAssociation(v *PodIdentityAssociation) *DescribePodIdentityAssociationOutput { + s.Association = v + return s +} + type DescribeUpdateInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -7771,6 +9617,190 @@ return s } +// An EKS Anywhere subscription authorizing the customer to support for licensed +// clusters and access to EKS Anywhere Curated Packages. +type EksAnywhereSubscription struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the subscription. + Arn *string `locationName:"arn" type:"string"` + + // A boolean indicating whether or not a subscription will auto renew when it + // expires. + AutoRenew *bool `locationName:"autoRenew" type:"boolean"` + + // The Unix timestamp in seconds for when the subscription was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Unix timestamp in seconds for when the subscription is effective. + EffectiveDate *time.Time `locationName:"effectiveDate" type:"timestamp"` + + // The Unix timestamp in seconds for when the subscription will expire or auto + // renew, depending on the auto renew configuration of the subscription object. + ExpirationDate *time.Time `locationName:"expirationDate" type:"timestamp"` + + // UUID identifying a subscription. + Id *string `locationName:"id" type:"string"` + + // Amazon Web Services License Manager ARN associated with the subscription. + LicenseArns []*string `locationName:"licenseArns" type:"list"` + + // The number of licenses included in a subscription. Valid values are between + // 1 and 100. + LicenseQuantity *int64 `locationName:"licenseQuantity" type:"integer"` + + // The type of licenses included in the subscription. Valid value is CLUSTER. + // With the CLUSTER license type, each license covers support for a single EKS + // Anywhere cluster. + LicenseType *string `locationName:"licenseType" type:"string" enum:"EksAnywhereSubscriptionLicenseType"` + + // The status of a subscription. + Status *string `locationName:"status" type:"string"` + + // The metadata for a subscription to assist with categorization and organization. + // Each tag consists of a key and an optional value. Subscription tags do not + // propagate to any other resources associated with the subscription. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` + + // An EksAnywhereSubscriptionTerm object. + Term *EksAnywhereSubscriptionTerm `locationName:"term" 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 EksAnywhereSubscription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EksAnywhereSubscription) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EksAnywhereSubscription) SetArn(v string) *EksAnywhereSubscription { + s.Arn = &v + return s +} + +// SetAutoRenew sets the AutoRenew field's value. +func (s *EksAnywhereSubscription) SetAutoRenew(v bool) *EksAnywhereSubscription { + s.AutoRenew = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EksAnywhereSubscription) SetCreatedAt(v time.Time) *EksAnywhereSubscription { + s.CreatedAt = &v + return s +} + +// SetEffectiveDate sets the EffectiveDate field's value. +func (s *EksAnywhereSubscription) SetEffectiveDate(v time.Time) *EksAnywhereSubscription { + s.EffectiveDate = &v + return s +} + +// SetExpirationDate sets the ExpirationDate field's value. +func (s *EksAnywhereSubscription) SetExpirationDate(v time.Time) *EksAnywhereSubscription { + s.ExpirationDate = &v + return s +} + +// SetId sets the Id field's value. +func (s *EksAnywhereSubscription) SetId(v string) *EksAnywhereSubscription { + s.Id = &v + return s +} + +// SetLicenseArns sets the LicenseArns field's value. +func (s *EksAnywhereSubscription) SetLicenseArns(v []*string) *EksAnywhereSubscription { + s.LicenseArns = v + return s +} + +// SetLicenseQuantity sets the LicenseQuantity field's value. +func (s *EksAnywhereSubscription) SetLicenseQuantity(v int64) *EksAnywhereSubscription { + s.LicenseQuantity = &v + return s +} + +// SetLicenseType sets the LicenseType field's value. +func (s *EksAnywhereSubscription) SetLicenseType(v string) *EksAnywhereSubscription { + s.LicenseType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EksAnywhereSubscription) SetStatus(v string) *EksAnywhereSubscription { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *EksAnywhereSubscription) SetTags(v map[string]*string) *EksAnywhereSubscription { + s.Tags = v + return s +} + +// SetTerm sets the Term field's value. +func (s *EksAnywhereSubscription) SetTerm(v *EksAnywhereSubscriptionTerm) *EksAnywhereSubscription { + s.Term = v + return s +} + +// An object representing the term duration and term unit type of your subscription. +// This determines the term length of your subscription. Valid values are MONTHS +// for term unit and 12 or 36 for term duration, indicating a 12 month or 36 +// month subscription. +type EksAnywhereSubscriptionTerm struct { + _ struct{} `type:"structure"` + + // The duration of the subscription term. Valid values are 12 and 36, indicating + // a 12 month or 36 month subscription. + Duration *int64 `locationName:"duration" type:"integer"` + + // The term unit of the subscription. Valid value is MONTHS. + Unit *string `locationName:"unit" type:"string" enum:"EksAnywhereSubscriptionTermUnit"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EksAnywhereSubscriptionTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EksAnywhereSubscriptionTerm) GoString() string { + return s.String() +} + +// SetDuration sets the Duration field's value. +func (s *EksAnywhereSubscriptionTerm) SetDuration(v int64) *EksAnywhereSubscriptionTerm { + s.Duration = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *EksAnywhereSubscriptionTerm) SetUnit(v string) *EksAnywhereSubscriptionTerm { + s.Unit = &v + return s +} + // The encryption configuration for the cluster. type EncryptionConfig struct { _ struct{} `type:"structure"` @@ -8167,6 +10197,8 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The specified parameter for the add-on name is invalid. Review the available + // parameters for the API request AddonName *string `locationName:"addonName" type:"string"` // The Amazon EKS cluster associated with the exception. @@ -8175,10 +10207,15 @@ // The Fargate profile associated with the exception. FargateProfileName *string `locationName:"fargateProfileName" type:"string"` + // The specified parameter is invalid. Review the available parameters for the + // API request. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. NodegroupName *string `locationName:"nodegroupName" type:"string"` + + // The Amazon EKS subscription ID with the exception. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` } // String returns the string representation. @@ -8243,15 +10280,21 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The request is invalid given the state of the add-on name. Check the state + // of the cluster and the associated operations. AddonName *string `locationName:"addonName" type:"string"` // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` + // The Amazon EKS add-on name associated with the exception. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. NodegroupName *string `locationName:"nodegroupName" type:"string"` + + // The Amazon EKS subscription ID with the exception. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` } // String returns the string representation. @@ -8712,13 +10755,13 @@ type ListAddonsOutput struct { _ struct{} `type:"structure"` - // A list of available add-ons. + // A list of installed add-ons. Addons []*string `locationName:"addons" type:"list"` - // The nextToken value returned from a previous paginated ListAddonsResponse - // where maxResults was used and the results exceeded the value of that parameter. - // Pagination continues from the end of the previous results that returned the - // nextToken value. + // The nextToken value to include in a future ListAddons request. When the results + // of a ListAddons request exceed maxResults, you can use this value to retrieve + // the next page of results. This value is null when there are no more results + // to return. // // This token should be treated as an opaque identifier that is used only to // retrieve the next items in a list and not for other programmatic purposes. @@ -8874,6 +10917,122 @@ return s } +type ListEksAnywhereSubscriptionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // An array of subscription statuses to filter on. + IncludeStatus []*string `location:"querystring" locationName:"includeStatus" type:"list" enum:"EksAnywhereSubscriptionStatus"` + + // The maximum number of cluster results returned by ListEksAnywhereSubscriptions + // in paginated output. When you use this parameter, ListEksAnywhereSubscriptions + // returns only maxResults results in a single page along with a nextToken response + // element. You can see the remaining results of the initial request by sending + // another ListEksAnywhereSubscriptions request with the returned nextToken + // value. This value can be between 1 and 100. If you don't use this parameter, + // ListEksAnywhereSubscriptions returns up to 10 results and a nextToken value + // if applicable. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The nextToken value returned from a previous paginated ListEksAnywhereSubscriptions + // request where maxResults was used and the results exceeded the value of that + // parameter. Pagination continues from the end of the previous results that + // returned the nextToken value. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEksAnywhereSubscriptionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEksAnywhereSubscriptionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEksAnywhereSubscriptionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEksAnywhereSubscriptionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeStatus sets the IncludeStatus field's value. +func (s *ListEksAnywhereSubscriptionsInput) SetIncludeStatus(v []*string) *ListEksAnywhereSubscriptionsInput { + s.IncludeStatus = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEksAnywhereSubscriptionsInput) SetMaxResults(v int64) *ListEksAnywhereSubscriptionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEksAnywhereSubscriptionsInput) SetNextToken(v string) *ListEksAnywhereSubscriptionsInput { + s.NextToken = &v + return s +} + +type ListEksAnywhereSubscriptionsOutput struct { + _ struct{} `type:"structure"` + + // The nextToken value to include in a future ListEksAnywhereSubscriptions request. + // When the results of a ListEksAnywhereSubscriptions request exceed maxResults, + // you can use this value to retrieve the next page of results. This value is + // null when there are no more results to return. + NextToken *string `locationName:"nextToken" type:"string"` + + // A list of all subscription objects in the region, filtered by includeStatus + // and paginated by nextToken and maxResults. + Subscriptions []*EksAnywhereSubscription `locationName:"subscriptions" 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 ListEksAnywhereSubscriptionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEksAnywhereSubscriptionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEksAnywhereSubscriptionsOutput) SetNextToken(v string) *ListEksAnywhereSubscriptionsOutput { + s.NextToken = &v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *ListEksAnywhereSubscriptionsOutput) SetSubscriptions(v []*EksAnywhereSubscription) *ListEksAnywhereSubscriptionsOutput { + s.Subscriptions = v + return s +} + type ListFargateProfilesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9082,10 +11241,10 @@ // The identity provider configurations for the cluster. IdentityProviderConfigs []*IdentityProviderConfig `locationName:"identityProviderConfigs" type:"list"` - // The nextToken value returned from a previous paginated ListIdentityProviderConfigsResponse - // where maxResults was used and the results exceeded the value of that parameter. - // Pagination continues from the end of the previous results that returned the - // nextToken value. + // The nextToken value to include in a future ListIdentityProviderConfigsResponse + // request. When the results of a ListIdentityProviderConfigsResponse request + // exceed maxResults, you can use this value to retrieve the next page of results. + // This value is null when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } @@ -9242,6 +11401,165 @@ return s } +type ListPodIdentityAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the cluster that the associations are in. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` + + // The maximum number of EKS Pod Identity association results returned by ListPodIdentityAssociations + // in paginated output. When you use this parameter, ListPodIdentityAssociations + // returns only maxResults results in a single page along with a nextToken response + // element. You can see the remaining results of the initial request by sending + // another ListPodIdentityAssociations request with the returned nextToken value. + // This value can be between 1 and 100. If you don't use this parameter, ListPodIdentityAssociations + // returns up to 100 results and a nextToken value if applicable. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The name of the Kubernetes namespace inside the cluster that the associations + // are in. + Namespace *string `location:"querystring" locationName:"namespace" type:"string"` + + // The nextToken value returned from a previous paginated ListUpdates request + // where maxResults was used and the results exceeded the value of that parameter. + // Pagination continues from the end of the previous results that returned the + // nextToken value. + // + // This token should be treated as an opaque identifier that is used only to + // retrieve the next items in a list and not for other programmatic purposes. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The name of the Kubernetes service account that the associations use. + ServiceAccount *string `location:"querystring" locationName:"serviceAccount" 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 ListPodIdentityAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPodIdentityAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPodIdentityAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPodIdentityAssociationsInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *ListPodIdentityAssociationsInput) SetClusterName(v string) *ListPodIdentityAssociationsInput { + s.ClusterName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPodIdentityAssociationsInput) SetMaxResults(v int64) *ListPodIdentityAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *ListPodIdentityAssociationsInput) SetNamespace(v string) *ListPodIdentityAssociationsInput { + s.Namespace = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPodIdentityAssociationsInput) SetNextToken(v string) *ListPodIdentityAssociationsInput { + s.NextToken = &v + return s +} + +// SetServiceAccount sets the ServiceAccount field's value. +func (s *ListPodIdentityAssociationsInput) SetServiceAccount(v string) *ListPodIdentityAssociationsInput { + s.ServiceAccount = &v + return s +} + +type ListPodIdentityAssociationsOutput struct { + _ struct{} `type:"structure"` + + // The list of summarized descriptions of the associations that are in the cluster + // and match any filters that you provided. + // + // Each summary is simplified by removing these fields compared to the full + // PodIdentityAssociation : + // + // * The IAM role: roleArn + // + // * The timestamp that the association was created at: createdAt + // + // * The most recent timestamp that the association was modified at:. modifiedAt + // + // * The tags on the association: tags + Associations []*PodIdentityAssociationSummary `locationName:"associations" type:"list"` + + // The nextToken value to include in a future ListPodIdentityAssociations request. + // When the results of a ListPodIdentityAssociations request exceed maxResults, + // you can use this value to retrieve the next page of results. This value is + // null when there are no more results to return. + // + // This token should be treated as an opaque identifier that is used only to + // retrieve the next items in a list and not for other programmatic purposes. + 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 ListPodIdentityAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPodIdentityAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *ListPodIdentityAssociationsOutput) SetAssociations(v []*PodIdentityAssociationSummary) *ListPodIdentityAssociationsOutput { + s.Associations = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPodIdentityAssociationsOutput) SetNextToken(v string) *ListPodIdentityAssociationsOutput { + s.NextToken = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10072,6 +12390,8 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // A service resource associated with the request could not be found. Clients + // should not retry such requests. Message_ *string `locationName:"message" type:"string"` } @@ -10595,14 +12915,233 @@ return s } +// Amazon EKS Pod Identity associations provide the ability to manage credentials +// for your applications, similar to the way that 7EC2l instance profiles provide +// credentials to Amazon EC2 instances. +type PodIdentityAssociation struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the association. + AssociationArn *string `locationName:"associationArn" type:"string"` + + // The ID of the association. + AssociationId *string `locationName:"associationId" type:"string"` + + // The name of the cluster that the association is in. + ClusterName *string `locationName:"clusterName" type:"string"` + + // The timestamp that the association was created at. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The most recent timestamp that the association was modified at + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp"` + + // The name of the Kubernetes namespace inside the cluster to create the association + // in. The service account and the pods that use the service account must be + // in this namespace. + Namespace *string `locationName:"namespace" type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role to associate with the service + // account. The EKS Pod Identity agent manages credentials to assume this role + // for applications in the containers in the pods that use this service account. + RoleArn *string `locationName:"roleArn" type:"string"` + + // The name of the Kubernetes service account inside the cluster to associate + // the IAM credentials with. + ServiceAccount *string `locationName:"serviceAccount" type:"string"` + + // The metadata that you apply to a resource to assist with categorization and + // organization. Each tag consists of a key and an optional value. You define + // both. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource – 50 + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length – 128 Unicode characters in UTF-8 + // + // * Maximum value length – 256 Unicode characters in UTF-8 + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case-sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for either keys or values as it is reserved for Amazon Web + // Services use. You cannot edit or delete tag keys or values with this prefix. + // Tags with this prefix do not count against your tags per resource limit. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PodIdentityAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PodIdentityAssociation) GoString() string { + return s.String() +} + +// SetAssociationArn sets the AssociationArn field's value. +func (s *PodIdentityAssociation) SetAssociationArn(v string) *PodIdentityAssociation { + s.AssociationArn = &v + return s +} + +// SetAssociationId sets the AssociationId field's value. +func (s *PodIdentityAssociation) SetAssociationId(v string) *PodIdentityAssociation { + s.AssociationId = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *PodIdentityAssociation) SetClusterName(v string) *PodIdentityAssociation { + s.ClusterName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *PodIdentityAssociation) SetCreatedAt(v time.Time) *PodIdentityAssociation { + s.CreatedAt = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *PodIdentityAssociation) SetModifiedAt(v time.Time) *PodIdentityAssociation { + s.ModifiedAt = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *PodIdentityAssociation) SetNamespace(v string) *PodIdentityAssociation { + s.Namespace = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *PodIdentityAssociation) SetRoleArn(v string) *PodIdentityAssociation { + s.RoleArn = &v + return s +} + +// SetServiceAccount sets the ServiceAccount field's value. +func (s *PodIdentityAssociation) SetServiceAccount(v string) *PodIdentityAssociation { + s.ServiceAccount = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *PodIdentityAssociation) SetTags(v map[string]*string) *PodIdentityAssociation { + s.Tags = v + return s +} + +// The summarized description of the association. +// +// Each summary is simplified by removing these fields compared to the full +// PodIdentityAssociation : +// +// - The IAM role: roleArn +// +// - The timestamp that the association was created at: createdAt +// +// - The most recent timestamp that the association was modified at:. modifiedAt +// +// - The tags on the association: tags +type PodIdentityAssociationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the association. + AssociationArn *string `locationName:"associationArn" type:"string"` + + // The ID of the association. + AssociationId *string `locationName:"associationId" type:"string"` + + // The name of the cluster that the association is in. + ClusterName *string `locationName:"clusterName" type:"string"` + + // The name of the Kubernetes namespace inside the cluster to create the association + // in. The service account and the pods that use the service account must be + // in this namespace. + Namespace *string `locationName:"namespace" type:"string"` + + // The name of the Kubernetes service account inside the cluster to associate + // the IAM credentials with. + ServiceAccount *string `locationName:"serviceAccount" 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 PodIdentityAssociationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PodIdentityAssociationSummary) GoString() string { + return s.String() +} + +// SetAssociationArn sets the AssociationArn field's value. +func (s *PodIdentityAssociationSummary) SetAssociationArn(v string) *PodIdentityAssociationSummary { + s.AssociationArn = &v + return s +} + +// SetAssociationId sets the AssociationId field's value. +func (s *PodIdentityAssociationSummary) SetAssociationId(v string) *PodIdentityAssociationSummary { + s.AssociationId = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *PodIdentityAssociationSummary) SetClusterName(v string) *PodIdentityAssociationSummary { + s.ClusterName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *PodIdentityAssociationSummary) SetNamespace(v string) *PodIdentityAssociationSummary { + s.Namespace = &v + return s +} + +// SetServiceAccount sets the ServiceAccount field's value. +func (s *PodIdentityAssociationSummary) SetServiceAccount(v string) *PodIdentityAssociationSummary { + s.ServiceAccount = &v + return s +} + // Identifies the Key Management Service (KMS) key used to encrypt the secrets. type Provider struct { _ struct{} `type:"structure"` - // Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, - // created in the same region as the cluster, and if the KMS key was created - // in a different account, the user must have access to the KMS key. For more - // information, see Allowing Users in Other Accounts to Use a KMS key (https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html) + // Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric + // and created in the same Amazon Web Services Region as the cluster. If the + // KMS key was created in a different account, the IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) + // must have access to the KMS key. For more information, see Allowing users + // in other accounts to use a KMS key (https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html) // in the Key Management Service Developer Guide. KeyArn *string `locationName:"keyArn" type:"string"` } @@ -10814,11 +13353,13 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The specified add-on name is in use. AddonName *string `locationName:"addonName" type:"string"` // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` + // The Amazon EKS message associated with the exception. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. @@ -10889,10 +13430,14 @@ // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` + // The Amazon EKS message associated with the exception. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. NodegroupName *string `locationName:"nodegroupName" type:"string"` + + // The Amazon EKS subscription ID with the exception. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` } // String returns the string representation. @@ -10958,6 +13503,7 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The Amazon EKS add-on name associated with the exception. AddonName *string `locationName:"addonName" type:"string"` // The Amazon EKS cluster associated with the exception. @@ -10966,10 +13512,14 @@ // The Fargate profile associated with the exception. FargateProfileName *string `locationName:"fargateProfileName" type:"string"` + // The Amazon EKS message associated with the exception. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. NodegroupName *string `locationName:"nodegroupName" type:"string"` + + // The Amazon EKS subscription ID with the exception. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` } // String returns the string representation. @@ -11034,6 +13584,8 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Required resources (such as service-linked roles) were created and are still + // propagating. Retry later. Message_ *string `locationName:"message" type:"string"` } @@ -11098,15 +13650,20 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The Amazon EKS add-on name associated with the exception. AddonName *string `locationName:"addonName" type:"string"` // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` + // These errors are usually caused by a server-side issue. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. NodegroupName *string `locationName:"nodegroupName" type:"string"` + + // The Amazon EKS subscription ID with the exception. + SubscriptionId *string `locationName:"subscriptionId" type:"string"` } // String returns the string representation. @@ -11170,6 +13727,7 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The request has failed due to a temporary failure of the server. Message_ *string `locationName:"message" type:"string"` } @@ -11393,6 +13951,10 @@ // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` + // At least one of your specified cluster subnets is in an Availability Zone + // that does not support Amazon EKS. The exception output specifies the supported + // Availability Zones for your account, from which you can choose subnets for + // your cluster. Message_ *string `locationName:"message" type:"string"` // The Amazon EKS managed node group associated with the exception. @@ -12017,6 +14579,109 @@ return s } +type UpdateEksAnywhereSubscriptionInput struct { + _ struct{} `type:"structure"` + + // A boolean indicating whether or not to automatically renew the subscription. + // + // AutoRenew is a required field + AutoRenew *bool `locationName:"autoRenew" type:"boolean" required:"true"` + + // Unique, case-sensitive identifier to ensure the idempotency of the request. + ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` + + // The ID of the subscription. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEksAnywhereSubscriptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEksAnywhereSubscriptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEksAnywhereSubscriptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEksAnywhereSubscriptionInput"} + if s.AutoRenew == nil { + invalidParams.Add(request.NewErrParamRequired("AutoRenew")) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoRenew sets the AutoRenew field's value. +func (s *UpdateEksAnywhereSubscriptionInput) SetAutoRenew(v bool) *UpdateEksAnywhereSubscriptionInput { + s.AutoRenew = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpdateEksAnywhereSubscriptionInput) SetClientRequestToken(v string) *UpdateEksAnywhereSubscriptionInput { + s.ClientRequestToken = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateEksAnywhereSubscriptionInput) SetId(v string) *UpdateEksAnywhereSubscriptionInput { + s.Id = &v + return s +} + +type UpdateEksAnywhereSubscriptionOutput struct { + _ struct{} `type:"structure"` + + // The full description of the updated subscription. + Subscription *EksAnywhereSubscription `locationName:"subscription" 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 UpdateEksAnywhereSubscriptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEksAnywhereSubscriptionOutput) GoString() string { + return s.String() +} + +// SetSubscription sets the Subscription field's value. +func (s *UpdateEksAnywhereSubscriptionOutput) SetSubscription(v *EksAnywhereSubscription) *UpdateEksAnywhereSubscriptionOutput { + s.Subscription = v + return s +} + // An object representing a Kubernetes label change for a managed node group. type UpdateLabelsPayload struct { _ struct{} `type:"structure"` @@ -12429,6 +15094,122 @@ return s } +type UpdatePodIdentityAssociationInput struct { + _ struct{} `type:"structure"` + + // The ID of the association to be updated. + // + // AssociationId is a required field + AssociationId *string `location:"uri" locationName:"associationId" type:"string" required:"true"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` + + // The name of the cluster that you want to update the association in. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" type:"string" required:"true"` + + // The new IAM role to change the + RoleArn *string `locationName:"roleArn" 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 UpdatePodIdentityAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePodIdentityAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePodIdentityAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePodIdentityAssociationInput"} + if s.AssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("AssociationId")) + } + if s.AssociationId != nil && len(*s.AssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssociationId", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociationId sets the AssociationId field's value. +func (s *UpdatePodIdentityAssociationInput) SetAssociationId(v string) *UpdatePodIdentityAssociationInput { + s.AssociationId = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpdatePodIdentityAssociationInput) SetClientRequestToken(v string) *UpdatePodIdentityAssociationInput { + s.ClientRequestToken = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *UpdatePodIdentityAssociationInput) SetClusterName(v string) *UpdatePodIdentityAssociationInput { + s.ClusterName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdatePodIdentityAssociationInput) SetRoleArn(v string) *UpdatePodIdentityAssociationInput { + s.RoleArn = &v + return s +} + +type UpdatePodIdentityAssociationOutput struct { + _ struct{} `type:"structure"` + + // The full description of the EKS Pod Identity association that was updated. + Association *PodIdentityAssociation `locationName:"association" 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 UpdatePodIdentityAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePodIdentityAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociation sets the Association field's value. +func (s *UpdatePodIdentityAssociationOutput) SetAssociation(v *PodIdentityAssociation) *UpdatePodIdentityAssociationOutput { + s.Association = v + return s +} + // An object representing the details of an update to a taints payload. For // more information, see Node taints on managed node groups (https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html). type UpdateTaintsPayload struct { @@ -12874,6 +15655,45 @@ // ClusterIssueCodeResourceNotFound is a ClusterIssueCode enum value ClusterIssueCodeResourceNotFound = "ResourceNotFound" + + // ClusterIssueCodeIamRoleNotFound is a ClusterIssueCode enum value + ClusterIssueCodeIamRoleNotFound = "IamRoleNotFound" + + // ClusterIssueCodeVpcNotFound is a ClusterIssueCode enum value + ClusterIssueCodeVpcNotFound = "VpcNotFound" + + // ClusterIssueCodeInsufficientFreeAddresses is a ClusterIssueCode enum value + ClusterIssueCodeInsufficientFreeAddresses = "InsufficientFreeAddresses" + + // ClusterIssueCodeEc2serviceNotSubscribed is a ClusterIssueCode enum value + ClusterIssueCodeEc2serviceNotSubscribed = "Ec2ServiceNotSubscribed" + + // ClusterIssueCodeEc2subnetNotFound is a ClusterIssueCode enum value + ClusterIssueCodeEc2subnetNotFound = "Ec2SubnetNotFound" + + // ClusterIssueCodeEc2securityGroupNotFound is a ClusterIssueCode enum value + ClusterIssueCodeEc2securityGroupNotFound = "Ec2SecurityGroupNotFound" + + // ClusterIssueCodeKmsGrantRevoked is a ClusterIssueCode enum value + ClusterIssueCodeKmsGrantRevoked = "KmsGrantRevoked" + + // ClusterIssueCodeKmsKeyNotFound is a ClusterIssueCode enum value + ClusterIssueCodeKmsKeyNotFound = "KmsKeyNotFound" + + // ClusterIssueCodeKmsKeyMarkedForDeletion is a ClusterIssueCode enum value + ClusterIssueCodeKmsKeyMarkedForDeletion = "KmsKeyMarkedForDeletion" + + // ClusterIssueCodeKmsKeyDisabled is a ClusterIssueCode enum value + ClusterIssueCodeKmsKeyDisabled = "KmsKeyDisabled" + + // ClusterIssueCodeStsRegionalEndpointDisabled is a ClusterIssueCode enum value + ClusterIssueCodeStsRegionalEndpointDisabled = "StsRegionalEndpointDisabled" + + // ClusterIssueCodeUnsupportedVersion is a ClusterIssueCode enum value + ClusterIssueCodeUnsupportedVersion = "UnsupportedVersion" + + // ClusterIssueCodeOther is a ClusterIssueCode enum value + ClusterIssueCodeOther = "Other" ) // ClusterIssueCode_Values returns all elements of the ClusterIssueCode enum @@ -12885,6 +15705,19 @@ ClusterIssueCodeInternalFailure, ClusterIssueCodeResourceLimitExceeded, ClusterIssueCodeResourceNotFound, + ClusterIssueCodeIamRoleNotFound, + ClusterIssueCodeVpcNotFound, + ClusterIssueCodeInsufficientFreeAddresses, + ClusterIssueCodeEc2serviceNotSubscribed, + ClusterIssueCodeEc2subnetNotFound, + ClusterIssueCodeEc2securityGroupNotFound, + ClusterIssueCodeKmsGrantRevoked, + ClusterIssueCodeKmsKeyNotFound, + ClusterIssueCodeKmsKeyMarkedForDeletion, + ClusterIssueCodeKmsKeyDisabled, + ClusterIssueCodeStsRegionalEndpointDisabled, + ClusterIssueCodeUnsupportedVersion, + ClusterIssueCodeOther, } } @@ -12985,6 +15818,62 @@ } const ( + // EksAnywhereSubscriptionLicenseTypeCluster is a EksAnywhereSubscriptionLicenseType enum value + EksAnywhereSubscriptionLicenseTypeCluster = "Cluster" +) + +// EksAnywhereSubscriptionLicenseType_Values returns all elements of the EksAnywhereSubscriptionLicenseType enum +func EksAnywhereSubscriptionLicenseType_Values() []string { + return []string{ + EksAnywhereSubscriptionLicenseTypeCluster, + } +} + +const ( + // EksAnywhereSubscriptionStatusCreating is a EksAnywhereSubscriptionStatus enum value + EksAnywhereSubscriptionStatusCreating = "CREATING" + + // EksAnywhereSubscriptionStatusActive is a EksAnywhereSubscriptionStatus enum value + EksAnywhereSubscriptionStatusActive = "ACTIVE" + + // EksAnywhereSubscriptionStatusUpdating is a EksAnywhereSubscriptionStatus enum value + EksAnywhereSubscriptionStatusUpdating = "UPDATING" + + // EksAnywhereSubscriptionStatusExpiring is a EksAnywhereSubscriptionStatus enum value + EksAnywhereSubscriptionStatusExpiring = "EXPIRING" + + // EksAnywhereSubscriptionStatusExpired is a EksAnywhereSubscriptionStatus enum value + EksAnywhereSubscriptionStatusExpired = "EXPIRED" + + // EksAnywhereSubscriptionStatusDeleting is a EksAnywhereSubscriptionStatus enum value + EksAnywhereSubscriptionStatusDeleting = "DELETING" +) + +// EksAnywhereSubscriptionStatus_Values returns all elements of the EksAnywhereSubscriptionStatus enum +func EksAnywhereSubscriptionStatus_Values() []string { + return []string{ + EksAnywhereSubscriptionStatusCreating, + EksAnywhereSubscriptionStatusActive, + EksAnywhereSubscriptionStatusUpdating, + EksAnywhereSubscriptionStatusExpiring, + EksAnywhereSubscriptionStatusExpired, + EksAnywhereSubscriptionStatusDeleting, + } +} + +const ( + // EksAnywhereSubscriptionTermUnitMonths is a EksAnywhereSubscriptionTermUnit enum value + EksAnywhereSubscriptionTermUnitMonths = "MONTHS" +) + +// EksAnywhereSubscriptionTermUnit_Values returns all elements of the EksAnywhereSubscriptionTermUnit enum +func EksAnywhereSubscriptionTermUnit_Values() []string { + return []string{ + EksAnywhereSubscriptionTermUnitMonths, + } +} + +const ( // ErrorCodeSubnetNotFound is a ErrorCode enum value ErrorCodeSubnetNotFound = "SubnetNotFound" @@ -13417,6 +16306,15 @@ // UpdateParamTypeMaxUnavailablePercentage is a UpdateParamType enum value UpdateParamTypeMaxUnavailablePercentage = "MaxUnavailablePercentage" + + // UpdateParamTypeConfigurationValues is a UpdateParamType enum value + UpdateParamTypeConfigurationValues = "ConfigurationValues" + + // UpdateParamTypeSecurityGroups is a UpdateParamType enum value + UpdateParamTypeSecurityGroups = "SecurityGroups" + + // UpdateParamTypeSubnets is a UpdateParamType enum value + UpdateParamTypeSubnets = "Subnets" ) // UpdateParamType_Values returns all elements of the UpdateParamType enum @@ -13445,6 +16343,9 @@ UpdateParamTypeResolveConflicts, UpdateParamTypeMaxUnavailable, UpdateParamTypeMaxUnavailablePercentage, + UpdateParamTypeConfigurationValues, + UpdateParamTypeSecurityGroups, + UpdateParamTypeSubnets, } } @@ -13496,6 +16397,9 @@ // UpdateTypeAddonUpdate is a UpdateType enum value UpdateTypeAddonUpdate = "AddonUpdate" + + // UpdateTypeVpcConfigUpdate is a UpdateType enum value + UpdateTypeVpcConfigUpdate = "VpcConfigUpdate" ) // UpdateType_Values returns all elements of the UpdateType enum @@ -13509,5 +16413,6 @@ UpdateTypeDisassociateIdentityProviderConfig, UpdateTypeAssociateEncryptionConfig, UpdateTypeAddonUpdate, + UpdateTypeVpcConfigUpdate, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eks/eksiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/eks/eksiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eks/eksiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eks/eksiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -76,6 +76,10 @@ CreateClusterWithContext(aws.Context, *eks.CreateClusterInput, ...request.Option) (*eks.CreateClusterOutput, error) CreateClusterRequest(*eks.CreateClusterInput) (*request.Request, *eks.CreateClusterOutput) + CreateEksAnywhereSubscription(*eks.CreateEksAnywhereSubscriptionInput) (*eks.CreateEksAnywhereSubscriptionOutput, error) + CreateEksAnywhereSubscriptionWithContext(aws.Context, *eks.CreateEksAnywhereSubscriptionInput, ...request.Option) (*eks.CreateEksAnywhereSubscriptionOutput, error) + CreateEksAnywhereSubscriptionRequest(*eks.CreateEksAnywhereSubscriptionInput) (*request.Request, *eks.CreateEksAnywhereSubscriptionOutput) + CreateFargateProfile(*eks.CreateFargateProfileInput) (*eks.CreateFargateProfileOutput, error) CreateFargateProfileWithContext(aws.Context, *eks.CreateFargateProfileInput, ...request.Option) (*eks.CreateFargateProfileOutput, error) CreateFargateProfileRequest(*eks.CreateFargateProfileInput) (*request.Request, *eks.CreateFargateProfileOutput) @@ -84,6 +88,10 @@ CreateNodegroupWithContext(aws.Context, *eks.CreateNodegroupInput, ...request.Option) (*eks.CreateNodegroupOutput, error) CreateNodegroupRequest(*eks.CreateNodegroupInput) (*request.Request, *eks.CreateNodegroupOutput) + CreatePodIdentityAssociation(*eks.CreatePodIdentityAssociationInput) (*eks.CreatePodIdentityAssociationOutput, error) + CreatePodIdentityAssociationWithContext(aws.Context, *eks.CreatePodIdentityAssociationInput, ...request.Option) (*eks.CreatePodIdentityAssociationOutput, error) + CreatePodIdentityAssociationRequest(*eks.CreatePodIdentityAssociationInput) (*request.Request, *eks.CreatePodIdentityAssociationOutput) + DeleteAddon(*eks.DeleteAddonInput) (*eks.DeleteAddonOutput, error) DeleteAddonWithContext(aws.Context, *eks.DeleteAddonInput, ...request.Option) (*eks.DeleteAddonOutput, error) DeleteAddonRequest(*eks.DeleteAddonInput) (*request.Request, *eks.DeleteAddonOutput) @@ -92,6 +100,10 @@ DeleteClusterWithContext(aws.Context, *eks.DeleteClusterInput, ...request.Option) (*eks.DeleteClusterOutput, error) DeleteClusterRequest(*eks.DeleteClusterInput) (*request.Request, *eks.DeleteClusterOutput) + DeleteEksAnywhereSubscription(*eks.DeleteEksAnywhereSubscriptionInput) (*eks.DeleteEksAnywhereSubscriptionOutput, error) + DeleteEksAnywhereSubscriptionWithContext(aws.Context, *eks.DeleteEksAnywhereSubscriptionInput, ...request.Option) (*eks.DeleteEksAnywhereSubscriptionOutput, error) + DeleteEksAnywhereSubscriptionRequest(*eks.DeleteEksAnywhereSubscriptionInput) (*request.Request, *eks.DeleteEksAnywhereSubscriptionOutput) + DeleteFargateProfile(*eks.DeleteFargateProfileInput) (*eks.DeleteFargateProfileOutput, error) DeleteFargateProfileWithContext(aws.Context, *eks.DeleteFargateProfileInput, ...request.Option) (*eks.DeleteFargateProfileOutput, error) DeleteFargateProfileRequest(*eks.DeleteFargateProfileInput) (*request.Request, *eks.DeleteFargateProfileOutput) @@ -100,6 +112,10 @@ DeleteNodegroupWithContext(aws.Context, *eks.DeleteNodegroupInput, ...request.Option) (*eks.DeleteNodegroupOutput, error) DeleteNodegroupRequest(*eks.DeleteNodegroupInput) (*request.Request, *eks.DeleteNodegroupOutput) + DeletePodIdentityAssociation(*eks.DeletePodIdentityAssociationInput) (*eks.DeletePodIdentityAssociationOutput, error) + DeletePodIdentityAssociationWithContext(aws.Context, *eks.DeletePodIdentityAssociationInput, ...request.Option) (*eks.DeletePodIdentityAssociationOutput, error) + DeletePodIdentityAssociationRequest(*eks.DeletePodIdentityAssociationInput) (*request.Request, *eks.DeletePodIdentityAssociationOutput) + DeregisterCluster(*eks.DeregisterClusterInput) (*eks.DeregisterClusterOutput, error) DeregisterClusterWithContext(aws.Context, *eks.DeregisterClusterInput, ...request.Option) (*eks.DeregisterClusterOutput, error) DeregisterClusterRequest(*eks.DeregisterClusterInput) (*request.Request, *eks.DeregisterClusterOutput) @@ -123,6 +139,10 @@ DescribeClusterWithContext(aws.Context, *eks.DescribeClusterInput, ...request.Option) (*eks.DescribeClusterOutput, error) DescribeClusterRequest(*eks.DescribeClusterInput) (*request.Request, *eks.DescribeClusterOutput) + DescribeEksAnywhereSubscription(*eks.DescribeEksAnywhereSubscriptionInput) (*eks.DescribeEksAnywhereSubscriptionOutput, error) + DescribeEksAnywhereSubscriptionWithContext(aws.Context, *eks.DescribeEksAnywhereSubscriptionInput, ...request.Option) (*eks.DescribeEksAnywhereSubscriptionOutput, error) + DescribeEksAnywhereSubscriptionRequest(*eks.DescribeEksAnywhereSubscriptionInput) (*request.Request, *eks.DescribeEksAnywhereSubscriptionOutput) + DescribeFargateProfile(*eks.DescribeFargateProfileInput) (*eks.DescribeFargateProfileOutput, error) DescribeFargateProfileWithContext(aws.Context, *eks.DescribeFargateProfileInput, ...request.Option) (*eks.DescribeFargateProfileOutput, error) DescribeFargateProfileRequest(*eks.DescribeFargateProfileInput) (*request.Request, *eks.DescribeFargateProfileOutput) @@ -135,6 +155,10 @@ DescribeNodegroupWithContext(aws.Context, *eks.DescribeNodegroupInput, ...request.Option) (*eks.DescribeNodegroupOutput, error) DescribeNodegroupRequest(*eks.DescribeNodegroupInput) (*request.Request, *eks.DescribeNodegroupOutput) + DescribePodIdentityAssociation(*eks.DescribePodIdentityAssociationInput) (*eks.DescribePodIdentityAssociationOutput, error) + DescribePodIdentityAssociationWithContext(aws.Context, *eks.DescribePodIdentityAssociationInput, ...request.Option) (*eks.DescribePodIdentityAssociationOutput, error) + DescribePodIdentityAssociationRequest(*eks.DescribePodIdentityAssociationInput) (*request.Request, *eks.DescribePodIdentityAssociationOutput) + DescribeUpdate(*eks.DescribeUpdateInput) (*eks.DescribeUpdateOutput, error) DescribeUpdateWithContext(aws.Context, *eks.DescribeUpdateInput, ...request.Option) (*eks.DescribeUpdateOutput, error) DescribeUpdateRequest(*eks.DescribeUpdateInput) (*request.Request, *eks.DescribeUpdateOutput) @@ -157,6 +181,13 @@ ListClustersPages(*eks.ListClustersInput, func(*eks.ListClustersOutput, bool) bool) error ListClustersPagesWithContext(aws.Context, *eks.ListClustersInput, func(*eks.ListClustersOutput, bool) bool, ...request.Option) error + ListEksAnywhereSubscriptions(*eks.ListEksAnywhereSubscriptionsInput) (*eks.ListEksAnywhereSubscriptionsOutput, error) + ListEksAnywhereSubscriptionsWithContext(aws.Context, *eks.ListEksAnywhereSubscriptionsInput, ...request.Option) (*eks.ListEksAnywhereSubscriptionsOutput, error) + ListEksAnywhereSubscriptionsRequest(*eks.ListEksAnywhereSubscriptionsInput) (*request.Request, *eks.ListEksAnywhereSubscriptionsOutput) + + ListEksAnywhereSubscriptionsPages(*eks.ListEksAnywhereSubscriptionsInput, func(*eks.ListEksAnywhereSubscriptionsOutput, bool) bool) error + ListEksAnywhereSubscriptionsPagesWithContext(aws.Context, *eks.ListEksAnywhereSubscriptionsInput, func(*eks.ListEksAnywhereSubscriptionsOutput, bool) bool, ...request.Option) error + ListFargateProfiles(*eks.ListFargateProfilesInput) (*eks.ListFargateProfilesOutput, error) ListFargateProfilesWithContext(aws.Context, *eks.ListFargateProfilesInput, ...request.Option) (*eks.ListFargateProfilesOutput, error) ListFargateProfilesRequest(*eks.ListFargateProfilesInput) (*request.Request, *eks.ListFargateProfilesOutput) @@ -178,6 +209,13 @@ ListNodegroupsPages(*eks.ListNodegroupsInput, func(*eks.ListNodegroupsOutput, bool) bool) error ListNodegroupsPagesWithContext(aws.Context, *eks.ListNodegroupsInput, func(*eks.ListNodegroupsOutput, bool) bool, ...request.Option) error + ListPodIdentityAssociations(*eks.ListPodIdentityAssociationsInput) (*eks.ListPodIdentityAssociationsOutput, error) + ListPodIdentityAssociationsWithContext(aws.Context, *eks.ListPodIdentityAssociationsInput, ...request.Option) (*eks.ListPodIdentityAssociationsOutput, error) + ListPodIdentityAssociationsRequest(*eks.ListPodIdentityAssociationsInput) (*request.Request, *eks.ListPodIdentityAssociationsOutput) + + ListPodIdentityAssociationsPages(*eks.ListPodIdentityAssociationsInput, func(*eks.ListPodIdentityAssociationsOutput, bool) bool) error + ListPodIdentityAssociationsPagesWithContext(aws.Context, *eks.ListPodIdentityAssociationsInput, func(*eks.ListPodIdentityAssociationsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*eks.ListTagsForResourceInput) (*eks.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *eks.ListTagsForResourceInput, ...request.Option) (*eks.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*eks.ListTagsForResourceInput) (*request.Request, *eks.ListTagsForResourceOutput) @@ -213,6 +251,10 @@ UpdateClusterVersionWithContext(aws.Context, *eks.UpdateClusterVersionInput, ...request.Option) (*eks.UpdateClusterVersionOutput, error) UpdateClusterVersionRequest(*eks.UpdateClusterVersionInput) (*request.Request, *eks.UpdateClusterVersionOutput) + UpdateEksAnywhereSubscription(*eks.UpdateEksAnywhereSubscriptionInput) (*eks.UpdateEksAnywhereSubscriptionOutput, error) + UpdateEksAnywhereSubscriptionWithContext(aws.Context, *eks.UpdateEksAnywhereSubscriptionInput, ...request.Option) (*eks.UpdateEksAnywhereSubscriptionOutput, error) + UpdateEksAnywhereSubscriptionRequest(*eks.UpdateEksAnywhereSubscriptionInput) (*request.Request, *eks.UpdateEksAnywhereSubscriptionOutput) + UpdateNodegroupConfig(*eks.UpdateNodegroupConfigInput) (*eks.UpdateNodegroupConfigOutput, error) UpdateNodegroupConfigWithContext(aws.Context, *eks.UpdateNodegroupConfigInput, ...request.Option) (*eks.UpdateNodegroupConfigOutput, error) UpdateNodegroupConfigRequest(*eks.UpdateNodegroupConfigInput) (*request.Request, *eks.UpdateNodegroupConfigOutput) @@ -221,6 +263,10 @@ UpdateNodegroupVersionWithContext(aws.Context, *eks.UpdateNodegroupVersionInput, ...request.Option) (*eks.UpdateNodegroupVersionOutput, error) UpdateNodegroupVersionRequest(*eks.UpdateNodegroupVersionInput) (*request.Request, *eks.UpdateNodegroupVersionOutput) + UpdatePodIdentityAssociation(*eks.UpdatePodIdentityAssociationInput) (*eks.UpdatePodIdentityAssociationOutput, error) + UpdatePodIdentityAssociationWithContext(aws.Context, *eks.UpdatePodIdentityAssociationInput, ...request.Option) (*eks.UpdatePodIdentityAssociationOutput, error) + UpdatePodIdentityAssociationRequest(*eks.UpdatePodIdentityAssociationInput) (*request.Request, *eks.UpdatePodIdentityAssociationOutput) + WaitUntilAddonActive(*eks.DescribeAddonInput) error WaitUntilAddonActiveWithContext(aws.Context, *eks.DescribeAddonInput, ...request.WaiterOption) error diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eks/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/eks/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eks/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eks/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -11,11 +11,12 @@ // ErrCodeAccessDeniedException for service response error code // "AccessDeniedException". // - // You don't have permissions to perform the requested operation. The user or - // role that is making the request must have at least one IAM permissions policy - // attached that grants the required permissions. For more information, see - // Access Management (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) - // in the IAM User Guide. + // You don't have permissions to perform the requested operation. The IAM principal + // (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) + // making the request must have at least one IAM permissions policy attached + // that grants the required permissions. For more information, see Access management + // (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM + // User Guide. ErrCodeAccessDeniedException = "AccessDeniedException" // ErrCodeBadRequestException for service response error code @@ -29,8 +30,9 @@ // "ClientException". // // These errors are usually caused by a client action. Actions can include using - // an action or resource on behalf of a user that doesn't have permissions to - // use the action or resource or specifying an identifier that is not valid. + // an action or resource on behalf of an IAM principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) + // that doesn't have permissions to use the action or resource or specifying + // an identifier that is not valid. ErrCodeClientException = "ClientException" // ErrCodeInvalidParameterException for service response error code diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/api.go golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1088 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package eksauth + +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" +) + +const opAssumeRoleForPodIdentity = "AssumeRoleForPodIdentity" + +// AssumeRoleForPodIdentityRequest generates a "aws/request.Request" representing the +// client's request for the AssumeRoleForPodIdentity 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 AssumeRoleForPodIdentity for more information on using the AssumeRoleForPodIdentity +// 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 AssumeRoleForPodIdentityRequest method. +// req, resp := client.AssumeRoleForPodIdentityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-auth-2023-11-26/AssumeRoleForPodIdentity +func (c *EKSAuth) AssumeRoleForPodIdentityRequest(input *AssumeRoleForPodIdentityInput) (req *request.Request, output *AssumeRoleForPodIdentityOutput) { + op := &request.Operation{ + Name: opAssumeRoleForPodIdentity, + HTTPMethod: "POST", + HTTPPath: "/clusters/{clusterName}/assume-role-for-pod-identity", + } + + if input == nil { + input = &AssumeRoleForPodIdentityInput{} + } + + output = &AssumeRoleForPodIdentityOutput{} + req = c.newRequest(op, input, output) + return +} + +// AssumeRoleForPodIdentity API operation for Amazon EKS Auth. +// +// The Amazon EKS Auth API and the AssumeRoleForPodIdentity action are only +// used by the EKS Pod Identity Agent. +// +// We recommend that applications use the Amazon Web Services SDKs to connect +// to Amazon Web Services services; if credentials from an EKS Pod Identity +// association are available in the pod, the latest versions of the SDKs use +// them automatically. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon EKS Auth's +// API operation AssumeRoleForPodIdentity for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied because your request rate is too high. Reduce the +// frequency of requests. +// +// - InvalidRequestException +// This exception is thrown if the request contains a semantic error. The precise +// meaning will depend on the API, and will be documented in the error message. +// +// - AccessDeniedException +// You don't have permissions to perform the requested operation. The IAM principal +// making the request must have at least one IAM permissions policy attached +// that grants the required permissions. For more information, see Access management +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM +// User Guide. +// +// - InternalServerException +// These errors are usually caused by a server-side issue. +// +// - InvalidTokenException +// The specified Kubernetes service account token is invalid. +// +// - InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// - ExpiredTokenException +// The specified Kubernetes service account token is expired. +// +// - ResourceNotFoundException +// The specified resource could not be found. +// +// - ServiceUnavailableException +// The service is unavailable. Back off and retry the operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-auth-2023-11-26/AssumeRoleForPodIdentity +func (c *EKSAuth) AssumeRoleForPodIdentity(input *AssumeRoleForPodIdentityInput) (*AssumeRoleForPodIdentityOutput, error) { + req, out := c.AssumeRoleForPodIdentityRequest(input) + return out, req.Send() +} + +// AssumeRoleForPodIdentityWithContext is the same as AssumeRoleForPodIdentity with the addition of +// the ability to pass a context and additional request options. +// +// See AssumeRoleForPodIdentity 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 *EKSAuth) AssumeRoleForPodIdentityWithContext(ctx aws.Context, input *AssumeRoleForPodIdentityInput, opts ...request.Option) (*AssumeRoleForPodIdentityOutput, error) { + req, out := c.AssumeRoleForPodIdentityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You don't have permissions to perform the requested operation. The IAM principal +// making the request must have at least one IAM permissions policy attached +// that grants the required permissions. For more information, see Access management +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM +// User Guide. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +type AssumeRoleForPodIdentityInput struct { + _ struct{} `type:"structure"` + + // The name of the cluster for the request. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"clusterName" min:"1" type:"string" required:"true"` + + // The token of the Kubernetes service account for the pod. + // + // Token is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssumeRoleForPodIdentityInput's + // String and GoString methods. + // + // Token is a required field + Token *string `locationName:"token" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssumeRoleForPodIdentityInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssumeRoleForPodIdentityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssumeRoleForPodIdentityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssumeRoleForPodIdentityInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.Token == nil { + invalidParams.Add(request.NewErrParamRequired("Token")) + } + if s.Token != nil && len(*s.Token) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Token", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *AssumeRoleForPodIdentityInput) SetClusterName(v string) *AssumeRoleForPodIdentityInput { + s.ClusterName = &v + return s +} + +// SetToken sets the Token field's value. +func (s *AssumeRoleForPodIdentityInput) SetToken(v string) *AssumeRoleForPodIdentityInput { + s.Token = &v + return s +} + +type AssumeRoleForPodIdentityOutput struct { + _ struct{} `type:"structure"` + + // An object with the permanent IAM role identity and the temporary session + // name. + // + // The ARN of the IAM role that the temporary credentials authenticate to. + // + // The session name of the temporary session requested to STS. The value is + // a unique identifier that contains the role ID, a colon (:), and the role + // session name of the role that is being assumed. The role ID is generated + // by IAM when the role is created. The role session name part of the value + // follows this format: eks-clustername-podname-random UUID + // + // AssumedRoleUser is a required field + AssumedRoleUser *AssumedRoleUser `locationName:"assumedRoleUser" type:"structure" required:"true"` + + // The identity that is allowed to use the credentials. This value is always + // pods.eks.amazonaws.com. + // + // Audience is a required field + Audience *string `locationName:"audience" type:"string" required:"true"` + + // The Amazon Web Services Signature Version 4 type of temporary credentials. + // + // Credentials is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssumeRoleForPodIdentityOutput's + // String and GoString methods. + // + // Credentials is a required field + Credentials *Credentials `locationName:"credentials" type:"structure" required:"true" sensitive:"true"` + + // The Amazon Resource Name (ARN) and ID of the EKS Pod Identity association. + // + // PodIdentityAssociation is a required field + PodIdentityAssociation *PodIdentityAssociation `locationName:"podIdentityAssociation" type:"structure" required:"true"` + + // The name of the Kubernetes service account inside the cluster to associate + // the IAM credentials with. + // + // Subject is a required field + Subject *Subject `locationName:"subject" 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 AssumeRoleForPodIdentityOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssumeRoleForPodIdentityOutput) GoString() string { + return s.String() +} + +// SetAssumedRoleUser sets the AssumedRoleUser field's value. +func (s *AssumeRoleForPodIdentityOutput) SetAssumedRoleUser(v *AssumedRoleUser) *AssumeRoleForPodIdentityOutput { + s.AssumedRoleUser = v + return s +} + +// SetAudience sets the Audience field's value. +func (s *AssumeRoleForPodIdentityOutput) SetAudience(v string) *AssumeRoleForPodIdentityOutput { + s.Audience = &v + return s +} + +// SetCredentials sets the Credentials field's value. +func (s *AssumeRoleForPodIdentityOutput) SetCredentials(v *Credentials) *AssumeRoleForPodIdentityOutput { + s.Credentials = v + return s +} + +// SetPodIdentityAssociation sets the PodIdentityAssociation field's value. +func (s *AssumeRoleForPodIdentityOutput) SetPodIdentityAssociation(v *PodIdentityAssociation) *AssumeRoleForPodIdentityOutput { + s.PodIdentityAssociation = v + return s +} + +// SetSubject sets the Subject field's value. +func (s *AssumeRoleForPodIdentityOutput) SetSubject(v *Subject) *AssumeRoleForPodIdentityOutput { + s.Subject = v + return s +} + +// An object with the permanent IAM role identity and the temporary session +// name. +type AssumedRoleUser struct { + _ struct{} `type:"structure"` + + // The ARN of the IAM role that the temporary credentials authenticate to. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The session name of the temporary session requested to STS. The value is + // a unique identifier that contains the role ID, a colon (:), and the role + // session name of the role that is being assumed. The role ID is generated + // by IAM when the role is created. The role session name part of the value + // follows this format: eks-clustername-podname-random UUID + // + // AssumeRoleId is a required field + AssumeRoleId *string `locationName:"assumeRoleId" 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 AssumedRoleUser) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssumedRoleUser) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *AssumedRoleUser) SetArn(v string) *AssumedRoleUser { + s.Arn = &v + return s +} + +// SetAssumeRoleId sets the AssumeRoleId field's value. +func (s *AssumedRoleUser) SetAssumeRoleId(v string) *AssumedRoleUser { + s.AssumeRoleId = &v + return s +} + +// The Amazon Web Services Signature Version 4 type of temporary credentials. +type Credentials struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The access key ID that identifies the temporary security credentials. + // + // AccessKeyId is a required field + AccessKeyId *string `locationName:"accessKeyId" type:"string" required:"true"` + + // The Unix epoch timestamp in seconds when the current credentials expire. + // + // Expiration is a required field + Expiration *time.Time `locationName:"expiration" type:"timestamp" required:"true"` + + // The secret access key that applications inside the pods use to sign requests. + // + // SecretAccessKey is a required field + SecretAccessKey *string `locationName:"secretAccessKey" type:"string" required:"true"` + + // The token that applications inside the pods must pass to any service API + // to use the temporary credentials. + // + // SessionToken is a required field + SessionToken *string `locationName:"sessionToken" 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 Credentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Credentials) GoString() string { + return s.String() +} + +// SetAccessKeyId sets the AccessKeyId field's value. +func (s *Credentials) SetAccessKeyId(v string) *Credentials { + s.AccessKeyId = &v + return s +} + +// SetExpiration sets the Expiration field's value. +func (s *Credentials) SetExpiration(v time.Time) *Credentials { + s.Expiration = &v + return s +} + +// SetSecretAccessKey sets the SecretAccessKey field's value. +func (s *Credentials) SetSecretAccessKey(v string) *Credentials { + s.SecretAccessKey = &v + return s +} + +// SetSessionToken sets the SessionToken field's value. +func (s *Credentials) SetSessionToken(v string) *Credentials { + s.SessionToken = &v + return s +} + +// The specified Kubernetes service account token is expired. +type ExpiredTokenException 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 ExpiredTokenException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExpiredTokenException) GoString() string { + return s.String() +} + +func newErrorExpiredTokenException(v protocol.ResponseMetadata) error { + return &ExpiredTokenException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ExpiredTokenException) Code() string { + return "ExpiredTokenException" +} + +// Message returns the exception's message. +func (s *ExpiredTokenException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ExpiredTokenException) OrigErr() error { + return nil +} + +func (s *ExpiredTokenException) 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 *ExpiredTokenException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ExpiredTokenException) RequestID() string { + return s.RespMetadata.RequestID +} + +// These errors are usually caused by a server-side issue. +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 specified parameter is invalid. Review the available parameters for the +// API request. +type InvalidParameterException 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 InvalidParameterException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidParameterException) GoString() string { + return s.String() +} + +func newErrorInvalidParameterException(v protocol.ResponseMetadata) error { + return &InvalidParameterException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidParameterException) Code() string { + return "InvalidParameterException" +} + +// Message returns the exception's message. +func (s *InvalidParameterException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidParameterException) OrigErr() error { + return nil +} + +func (s *InvalidParameterException) 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 *InvalidParameterException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidParameterException) RequestID() string { + return s.RespMetadata.RequestID +} + +// This exception is thrown if the request contains a semantic error. The precise +// meaning will depend on the API, and will be documented in the error message. +type InvalidRequestException 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 InvalidRequestException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidRequestException) GoString() string { + return s.String() +} + +func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { + return &InvalidRequestException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidRequestException) Code() string { + return "InvalidRequestException" +} + +// Message returns the exception's message. +func (s *InvalidRequestException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidRequestException) OrigErr() error { + return nil +} + +func (s *InvalidRequestException) 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 *InvalidRequestException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidRequestException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified Kubernetes service account token is invalid. +type InvalidTokenException 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 InvalidTokenException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidTokenException) GoString() string { + return s.String() +} + +func newErrorInvalidTokenException(v protocol.ResponseMetadata) error { + return &InvalidTokenException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidTokenException) Code() string { + return "InvalidTokenException" +} + +// Message returns the exception's message. +func (s *InvalidTokenException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidTokenException) OrigErr() error { + return nil +} + +func (s *InvalidTokenException) 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 *InvalidTokenException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidTokenException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Amazon EKS Pod Identity associations provide the ability to manage credentials +// for your applications, similar to the way that Amazon EC2 instance profiles +// provide credentials to Amazon EC2 instances. +type PodIdentityAssociation struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the EKS Pod Identity association. + // + // AssociationArn is a required field + AssociationArn *string `locationName:"associationArn" type:"string" required:"true"` + + // The ID of the association. + // + // AssociationId is a required field + AssociationId *string `locationName:"associationId" 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 PodIdentityAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PodIdentityAssociation) GoString() string { + return s.String() +} + +// SetAssociationArn sets the AssociationArn field's value. +func (s *PodIdentityAssociation) SetAssociationArn(v string) *PodIdentityAssociation { + s.AssociationArn = &v + return s +} + +// SetAssociationId sets the AssociationId field's value. +func (s *PodIdentityAssociation) SetAssociationId(v string) *PodIdentityAssociation { + s.AssociationId = &v + return s +} + +// The specified resource could not be found. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The service is unavailable. Back off and retry the operation. +type ServiceUnavailableException 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 ServiceUnavailableException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceUnavailableException) GoString() string { + return s.String() +} + +func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { + return &ServiceUnavailableException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceUnavailableException) Code() string { + return "ServiceUnavailableException" +} + +// Message returns the exception's message. +func (s *ServiceUnavailableException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceUnavailableException) OrigErr() error { + return nil +} + +func (s *ServiceUnavailableException) 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 *ServiceUnavailableException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceUnavailableException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An object containing the name of the Kubernetes service account inside the +// cluster to associate the IAM credentials with. +type Subject struct { + _ struct{} `type:"structure"` + + // The name of the Kubernetes namespace inside the cluster to create the association + // in. The service account and the pods that use the service account must be + // in this namespace. + // + // Namespace is a required field + Namespace *string `locationName:"namespace" type:"string" required:"true"` + + // The name of the Kubernetes service account inside the cluster to associate + // the IAM credentials with. + // + // ServiceAccount is a required field + ServiceAccount *string `locationName:"serviceAccount" 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 Subject) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Subject) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *Subject) SetNamespace(v string) *Subject { + s.Namespace = &v + return s +} + +// SetServiceAccount sets the ServiceAccount field's value. +func (s *Subject) SetServiceAccount(v string) *Subject { + s.ServiceAccount = &v + return s +} + +// The request was denied because your request rate is too high. Reduce the +// frequency of requests. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,29 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package eksauth provides the client and types for making API +// requests to Amazon EKS Auth. +// +// The Amazon EKS Auth API and the AssumeRoleForPodIdentity action are only +// used by the EKS Pod Identity Agent. +// +// See https://docs.aws.amazon.com/goto/WebAPI/eks-auth-2023-11-26 for more information on this service. +// +// See eksauth package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/eksauth/ +// +// # Using the Client +// +// To contact Amazon EKS Auth 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 Amazon EKS Auth client EKSAuth for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/eksauth/#New +package eksauth diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/eksauthiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/eksauthiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/eksauthiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/eksauthiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,68 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package eksauthiface provides an interface to enable mocking the Amazon EKS Auth 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 eksauthiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/eksauth" +) + +// EKSAuthAPI provides an interface to enable mocking the +// eksauth.EKSAuth 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 +// // Amazon EKS Auth. +// func myFunc(svc eksauthiface.EKSAuthAPI) bool { +// // Make svc.AssumeRoleForPodIdentity request +// } +// +// func main() { +// sess := session.New() +// svc := eksauth.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockEKSAuthClient struct { +// eksauthiface.EKSAuthAPI +// } +// func (m *mockEKSAuthClient) AssumeRoleForPodIdentity(input *eksauth.AssumeRoleForPodIdentityInput) (*eksauth.AssumeRoleForPodIdentityOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockEKSAuthClient{} +// +// 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 EKSAuthAPI interface { + AssumeRoleForPodIdentity(*eksauth.AssumeRoleForPodIdentityInput) (*eksauth.AssumeRoleForPodIdentityOutput, error) + AssumeRoleForPodIdentityWithContext(aws.Context, *eksauth.AssumeRoleForPodIdentityInput, ...request.Option) (*eksauth.AssumeRoleForPodIdentityOutput, error) + AssumeRoleForPodIdentityRequest(*eksauth.AssumeRoleForPodIdentityInput) (*request.Request, *eksauth.AssumeRoleForPodIdentityOutput) +} + +var _ EKSAuthAPI = (*eksauth.EKSAuth)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,83 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package eksauth + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You don't have permissions to perform the requested operation. The IAM principal + // making the request must have at least one IAM permissions policy attached + // that grants the required permissions. For more information, see Access management + // (https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM + // User Guide. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeExpiredTokenException for service response error code + // "ExpiredTokenException". + // + // The specified Kubernetes service account token is expired. + ErrCodeExpiredTokenException = "ExpiredTokenException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // These errors are usually caused by a server-side issue. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeInvalidParameterException for service response error code + // "InvalidParameterException". + // + // The specified parameter is invalid. Review the available parameters for the + // API request. + ErrCodeInvalidParameterException = "InvalidParameterException" + + // ErrCodeInvalidRequestException for service response error code + // "InvalidRequestException". + // + // This exception is thrown if the request contains a semantic error. The precise + // meaning will depend on the API, and will be documented in the error message. + ErrCodeInvalidRequestException = "InvalidRequestException" + + // ErrCodeInvalidTokenException for service response error code + // "InvalidTokenException". + // + // The specified Kubernetes service account token is invalid. + ErrCodeInvalidTokenException = "InvalidTokenException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified resource could not be found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceUnavailableException for service response error code + // "ServiceUnavailableException". + // + // The service is unavailable. Back off and retry the operation. + ErrCodeServiceUnavailableException = "ServiceUnavailableException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied because your request rate is too high. Reduce the + // frequency of requests. + ErrCodeThrottlingException = "ThrottlingException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ExpiredTokenException": newErrorExpiredTokenException, + "InternalServerException": newErrorInternalServerException, + "InvalidParameterException": newErrorInvalidParameterException, + "InvalidRequestException": newErrorInvalidRequestException, + "InvalidTokenException": newErrorInvalidTokenException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceUnavailableException": newErrorServiceUnavailableException, + "ThrottlingException": newErrorThrottlingException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/service.go golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eksauth/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eksauth/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package eksauth + +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/restjson" +) + +// EKSAuth provides the API operation methods for making requests to +// Amazon EKS Auth. See this package's package overview docs +// for details on the service. +// +// EKSAuth methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type EKSAuth 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 = "EKS Auth" // Name of service. + EndpointsID = "eks-auth" // ID to lookup a service endpoint with. + ServiceID = "EKS Auth" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the EKSAuth 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 EKSAuth client from just a session. +// svc := eksauth.New(mySession) +// +// // Create a EKSAuth client with additional configuration +// svc := eksauth.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *EKSAuth { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "eks-auth" + } + 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) *EKSAuth { + svc := &EKSAuth{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-11-26", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a EKSAuth operation and runs any +// custom request initialization. +func (c *EKSAuth) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/api.go golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -114,6 +114,20 @@ // - ErrCodeUserGroupNotFoundFault "UserGroupNotFound" // The user group was not found or does not exist // +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeInvalidServerlessCacheSnapshotStateFault "InvalidServerlessCacheSnapshotStateFault" +// The state of the serverless cache snapshot was not received. Available for +// Redis only. +// // - ErrCodeTagQuotaPerResourceExceeded "TagQuotaPerResourceExceeded" // The request cannot be processed because it would cause the resource to have // more than the allowed number of tags. The maximum number of tags permitted @@ -493,6 +507,113 @@ return out, req.Send() } +const opCopyServerlessCacheSnapshot = "CopyServerlessCacheSnapshot" + +// CopyServerlessCacheSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the CopyServerlessCacheSnapshot 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 CopyServerlessCacheSnapshot for more information on using the CopyServerlessCacheSnapshot +// 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 CopyServerlessCacheSnapshotRequest method. +// req, resp := client.CopyServerlessCacheSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CopyServerlessCacheSnapshot +func (c *ElastiCache) CopyServerlessCacheSnapshotRequest(input *CopyServerlessCacheSnapshotInput) (req *request.Request, output *CopyServerlessCacheSnapshotOutput) { + op := &request.Operation{ + Name: opCopyServerlessCacheSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CopyServerlessCacheSnapshotInput{} + } + + output = &CopyServerlessCacheSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// CopyServerlessCacheSnapshot API operation for Amazon ElastiCache. +// +// Creates a copy of an existing serverless cache’s snapshot. Available for +// Redis only. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation CopyServerlessCacheSnapshot for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheSnapshotAlreadyExistsFault "ServerlessCacheSnapshotAlreadyExistsFault" +// A serverless cache snapshot with this name already exists. Available for +// Redis only. +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeServerlessCacheSnapshotQuotaExceededFault "ServerlessCacheSnapshotQuotaExceededFault" +// The number of serverless cache snapshots exceeds the customer snapshot quota. +// Available for Redis only. +// +// - ErrCodeInvalidServerlessCacheSnapshotStateFault "InvalidServerlessCacheSnapshotStateFault" +// The state of the serverless cache snapshot was not received. Available for +// Redis only. +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// - ErrCodeTagQuotaPerResourceExceeded "TagQuotaPerResourceExceeded" +// The request cannot be processed because it would cause the resource to have +// more than the allowed number of tags. The maximum number of tags permitted +// on a resource is 50. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CopyServerlessCacheSnapshot +func (c *ElastiCache) CopyServerlessCacheSnapshot(input *CopyServerlessCacheSnapshotInput) (*CopyServerlessCacheSnapshotOutput, error) { + req, out := c.CopyServerlessCacheSnapshotRequest(input) + return out, req.Send() +} + +// CopyServerlessCacheSnapshotWithContext is the same as CopyServerlessCacheSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See CopyServerlessCacheSnapshot 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 *ElastiCache) CopyServerlessCacheSnapshotWithContext(ctx aws.Context, input *CopyServerlessCacheSnapshotInput, opts ...request.Option) (*CopyServerlessCacheSnapshotOutput, error) { + req, out := c.CopyServerlessCacheSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCopySnapshot = "CopySnapshot" // CopySnapshotRequest generates a "aws/request.Request" representing the @@ -1376,6 +1497,222 @@ return out, req.Send() } +const opCreateServerlessCache = "CreateServerlessCache" + +// CreateServerlessCacheRequest generates a "aws/request.Request" representing the +// client's request for the CreateServerlessCache 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 CreateServerlessCache for more information on using the CreateServerlessCache +// 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 CreateServerlessCacheRequest method. +// req, resp := client.CreateServerlessCacheRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateServerlessCache +func (c *ElastiCache) CreateServerlessCacheRequest(input *CreateServerlessCacheInput) (req *request.Request, output *CreateServerlessCacheOutput) { + op := &request.Operation{ + Name: opCreateServerlessCache, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateServerlessCacheInput{} + } + + output = &CreateServerlessCacheOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateServerlessCache API operation for Amazon ElastiCache. +// +// Creates a serverless cache. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation CreateServerlessCache for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeServerlessCacheAlreadyExistsFault "ServerlessCacheAlreadyExistsFault" +// A serverless cache with this name already exists. +// +// - ErrCodeServerlessCacheQuotaForCustomerExceededFault "ServerlessCacheQuotaForCustomerExceededFault" +// The number of serverless caches exceeds the customer quota. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// - ErrCodeInvalidCredentialsException "InvalidCredentialsException" +// You must enter valid credentials. +// +// - ErrCodeInvalidUserGroupStateFault "InvalidUserGroupState" +// The user group is not in an active state. +// +// - ErrCodeUserGroupNotFoundFault "UserGroupNotFound" +// The user group was not found or does not exist +// +// - ErrCodeTagQuotaPerResourceExceeded "TagQuotaPerResourceExceeded" +// The request cannot be processed because it would cause the resource to have +// more than the allowed number of tags. The maximum number of tags permitted +// on a resource is 50. +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateServerlessCache +func (c *ElastiCache) CreateServerlessCache(input *CreateServerlessCacheInput) (*CreateServerlessCacheOutput, error) { + req, out := c.CreateServerlessCacheRequest(input) + return out, req.Send() +} + +// CreateServerlessCacheWithContext is the same as CreateServerlessCache with the addition of +// the ability to pass a context and additional request options. +// +// See CreateServerlessCache 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 *ElastiCache) CreateServerlessCacheWithContext(ctx aws.Context, input *CreateServerlessCacheInput, opts ...request.Option) (*CreateServerlessCacheOutput, error) { + req, out := c.CreateServerlessCacheRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateServerlessCacheSnapshot = "CreateServerlessCacheSnapshot" + +// CreateServerlessCacheSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the CreateServerlessCacheSnapshot 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 CreateServerlessCacheSnapshot for more information on using the CreateServerlessCacheSnapshot +// 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 CreateServerlessCacheSnapshotRequest method. +// req, resp := client.CreateServerlessCacheSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateServerlessCacheSnapshot +func (c *ElastiCache) CreateServerlessCacheSnapshotRequest(input *CreateServerlessCacheSnapshotInput) (req *request.Request, output *CreateServerlessCacheSnapshotOutput) { + op := &request.Operation{ + Name: opCreateServerlessCacheSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateServerlessCacheSnapshotInput{} + } + + output = &CreateServerlessCacheSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateServerlessCacheSnapshot API operation for Amazon ElastiCache. +// +// This API creates a copy of an entire ServerlessCache at a specific moment +// in time. Available for Redis only. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation CreateServerlessCacheSnapshot for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheSnapshotAlreadyExistsFault "ServerlessCacheSnapshotAlreadyExistsFault" +// A serverless cache snapshot with this name already exists. Available for +// Redis only. +// +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeServerlessCacheSnapshotQuotaExceededFault "ServerlessCacheSnapshotQuotaExceededFault" +// The number of serverless cache snapshots exceeds the customer snapshot quota. +// Available for Redis only. +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// - ErrCodeTagQuotaPerResourceExceeded "TagQuotaPerResourceExceeded" +// The request cannot be processed because it would cause the resource to have +// more than the allowed number of tags. The maximum number of tags permitted +// on a resource is 50. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateServerlessCacheSnapshot +func (c *ElastiCache) CreateServerlessCacheSnapshot(input *CreateServerlessCacheSnapshotInput) (*CreateServerlessCacheSnapshotOutput, error) { + req, out := c.CreateServerlessCacheSnapshotRequest(input) + return out, req.Send() +} + +// CreateServerlessCacheSnapshotWithContext is the same as CreateServerlessCacheSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See CreateServerlessCacheSnapshot 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 *ElastiCache) CreateServerlessCacheSnapshotWithContext(ctx aws.Context, input *CreateServerlessCacheSnapshotInput, opts ...request.Option) (*CreateServerlessCacheSnapshotOutput, error) { + req, out := c.CreateServerlessCacheSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateSnapshot = "CreateSnapshot" // CreateSnapshotRequest generates a "aws/request.Request" representing the @@ -2522,6 +2859,194 @@ return out, req.Send() } +const opDeleteServerlessCache = "DeleteServerlessCache" + +// DeleteServerlessCacheRequest generates a "aws/request.Request" representing the +// client's request for the DeleteServerlessCache 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 DeleteServerlessCache for more information on using the DeleteServerlessCache +// 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 DeleteServerlessCacheRequest method. +// req, resp := client.DeleteServerlessCacheRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteServerlessCache +func (c *ElastiCache) DeleteServerlessCacheRequest(input *DeleteServerlessCacheInput) (req *request.Request, output *DeleteServerlessCacheOutput) { + op := &request.Operation{ + Name: opDeleteServerlessCache, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteServerlessCacheInput{} + } + + output = &DeleteServerlessCacheOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteServerlessCache API operation for Amazon ElastiCache. +// +// Deletes a specified existing serverless cache. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation DeleteServerlessCache for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeServerlessCacheSnapshotAlreadyExistsFault "ServerlessCacheSnapshotAlreadyExistsFault" +// A serverless cache snapshot with this name already exists. Available for +// Redis only. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// - ErrCodeInvalidCredentialsException "InvalidCredentialsException" +// You must enter valid credentials. +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteServerlessCache +func (c *ElastiCache) DeleteServerlessCache(input *DeleteServerlessCacheInput) (*DeleteServerlessCacheOutput, error) { + req, out := c.DeleteServerlessCacheRequest(input) + return out, req.Send() +} + +// DeleteServerlessCacheWithContext is the same as DeleteServerlessCache with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteServerlessCache 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 *ElastiCache) DeleteServerlessCacheWithContext(ctx aws.Context, input *DeleteServerlessCacheInput, opts ...request.Option) (*DeleteServerlessCacheOutput, error) { + req, out := c.DeleteServerlessCacheRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteServerlessCacheSnapshot = "DeleteServerlessCacheSnapshot" + +// DeleteServerlessCacheSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the DeleteServerlessCacheSnapshot 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 DeleteServerlessCacheSnapshot for more information on using the DeleteServerlessCacheSnapshot +// 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 DeleteServerlessCacheSnapshotRequest method. +// req, resp := client.DeleteServerlessCacheSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteServerlessCacheSnapshot +func (c *ElastiCache) DeleteServerlessCacheSnapshotRequest(input *DeleteServerlessCacheSnapshotInput) (req *request.Request, output *DeleteServerlessCacheSnapshotOutput) { + op := &request.Operation{ + Name: opDeleteServerlessCacheSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteServerlessCacheSnapshotInput{} + } + + output = &DeleteServerlessCacheSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteServerlessCacheSnapshot API operation for Amazon ElastiCache. +// +// Deletes an existing serverless cache snapshot. Available for Redis only. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation DeleteServerlessCacheSnapshot for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeInvalidServerlessCacheSnapshotStateFault "InvalidServerlessCacheSnapshotStateFault" +// The state of the serverless cache snapshot was not received. Available for +// Redis only. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteServerlessCacheSnapshot +func (c *ElastiCache) DeleteServerlessCacheSnapshot(input *DeleteServerlessCacheSnapshotInput) (*DeleteServerlessCacheSnapshotOutput, error) { + req, out := c.DeleteServerlessCacheSnapshotRequest(input) + return out, req.Send() +} + +// DeleteServerlessCacheSnapshotWithContext is the same as DeleteServerlessCacheSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteServerlessCacheSnapshot 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 *ElastiCache) DeleteServerlessCacheSnapshotWithContext(ctx aws.Context, input *DeleteServerlessCacheSnapshotInput, opts ...request.Option) (*DeleteServerlessCacheSnapshotOutput, error) { + req, out := c.DeleteServerlessCacheSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteSnapshot = "DeleteSnapshot" // DeleteSnapshotRequest generates a "aws/request.Request" representing the @@ -4521,6 +5046,299 @@ return p.Err() } +const opDescribeServerlessCacheSnapshots = "DescribeServerlessCacheSnapshots" + +// DescribeServerlessCacheSnapshotsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeServerlessCacheSnapshots 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 DescribeServerlessCacheSnapshots for more information on using the DescribeServerlessCacheSnapshots +// 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 DescribeServerlessCacheSnapshotsRequest method. +// req, resp := client.DescribeServerlessCacheSnapshotsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeServerlessCacheSnapshots +func (c *ElastiCache) DescribeServerlessCacheSnapshotsRequest(input *DescribeServerlessCacheSnapshotsInput) (req *request.Request, output *DescribeServerlessCacheSnapshotsOutput) { + op := &request.Operation{ + Name: opDescribeServerlessCacheSnapshots, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeServerlessCacheSnapshotsInput{} + } + + output = &DescribeServerlessCacheSnapshotsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeServerlessCacheSnapshots API operation for Amazon ElastiCache. +// +// Returns information about serverless cache snapshots. By default, this API +// lists all of the customer’s serverless cache snapshots. It can also describe +// a single serverless cache snapshot, or the snapshots associated with a particular +// serverless cache. Available for Redis only. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation DescribeServerlessCacheSnapshots for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeServerlessCacheSnapshots +func (c *ElastiCache) DescribeServerlessCacheSnapshots(input *DescribeServerlessCacheSnapshotsInput) (*DescribeServerlessCacheSnapshotsOutput, error) { + req, out := c.DescribeServerlessCacheSnapshotsRequest(input) + return out, req.Send() +} + +// DescribeServerlessCacheSnapshotsWithContext is the same as DescribeServerlessCacheSnapshots with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeServerlessCacheSnapshots 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 *ElastiCache) DescribeServerlessCacheSnapshotsWithContext(ctx aws.Context, input *DescribeServerlessCacheSnapshotsInput, opts ...request.Option) (*DescribeServerlessCacheSnapshotsOutput, error) { + req, out := c.DescribeServerlessCacheSnapshotsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeServerlessCacheSnapshotsPages iterates over the pages of a DescribeServerlessCacheSnapshots operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeServerlessCacheSnapshots 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 DescribeServerlessCacheSnapshots operation. +// pageNum := 0 +// err := client.DescribeServerlessCacheSnapshotsPages(params, +// func(page *elasticache.DescribeServerlessCacheSnapshotsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ElastiCache) DescribeServerlessCacheSnapshotsPages(input *DescribeServerlessCacheSnapshotsInput, fn func(*DescribeServerlessCacheSnapshotsOutput, bool) bool) error { + return c.DescribeServerlessCacheSnapshotsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeServerlessCacheSnapshotsPagesWithContext same as DescribeServerlessCacheSnapshotsPages 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 *ElastiCache) DescribeServerlessCacheSnapshotsPagesWithContext(ctx aws.Context, input *DescribeServerlessCacheSnapshotsInput, fn func(*DescribeServerlessCacheSnapshotsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeServerlessCacheSnapshotsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeServerlessCacheSnapshotsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeServerlessCacheSnapshotsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeServerlessCaches = "DescribeServerlessCaches" + +// DescribeServerlessCachesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeServerlessCaches 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 DescribeServerlessCaches for more information on using the DescribeServerlessCaches +// 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 DescribeServerlessCachesRequest method. +// req, resp := client.DescribeServerlessCachesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeServerlessCaches +func (c *ElastiCache) DescribeServerlessCachesRequest(input *DescribeServerlessCachesInput) (req *request.Request, output *DescribeServerlessCachesOutput) { + op := &request.Operation{ + Name: opDescribeServerlessCaches, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeServerlessCachesInput{} + } + + output = &DescribeServerlessCachesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeServerlessCaches API operation for Amazon ElastiCache. +// +// Returns information about a specific serverless cache. If no identifier is +// specified, then the API returns information on all the serverless caches +// belonging to this Amazon Web Services account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation DescribeServerlessCaches for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeServerlessCaches +func (c *ElastiCache) DescribeServerlessCaches(input *DescribeServerlessCachesInput) (*DescribeServerlessCachesOutput, error) { + req, out := c.DescribeServerlessCachesRequest(input) + return out, req.Send() +} + +// DescribeServerlessCachesWithContext is the same as DescribeServerlessCaches with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeServerlessCaches 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 *ElastiCache) DescribeServerlessCachesWithContext(ctx aws.Context, input *DescribeServerlessCachesInput, opts ...request.Option) (*DescribeServerlessCachesOutput, error) { + req, out := c.DescribeServerlessCachesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeServerlessCachesPages iterates over the pages of a DescribeServerlessCaches operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeServerlessCaches 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 DescribeServerlessCaches operation. +// pageNum := 0 +// err := client.DescribeServerlessCachesPages(params, +// func(page *elasticache.DescribeServerlessCachesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ElastiCache) DescribeServerlessCachesPages(input *DescribeServerlessCachesInput, fn func(*DescribeServerlessCachesOutput, bool) bool) error { + return c.DescribeServerlessCachesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeServerlessCachesPagesWithContext same as DescribeServerlessCachesPages 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 *ElastiCache) DescribeServerlessCachesPagesWithContext(ctx aws.Context, input *DescribeServerlessCachesInput, fn func(*DescribeServerlessCachesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeServerlessCachesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeServerlessCachesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeServerlessCachesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeServiceUpdates = "DescribeServiceUpdates" // DescribeServiceUpdatesRequest generates a "aws/request.Request" representing the @@ -5326,6 +6144,97 @@ return out, req.Send() } +const opExportServerlessCacheSnapshot = "ExportServerlessCacheSnapshot" + +// ExportServerlessCacheSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the ExportServerlessCacheSnapshot 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 ExportServerlessCacheSnapshot for more information on using the ExportServerlessCacheSnapshot +// 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 ExportServerlessCacheSnapshotRequest method. +// req, resp := client.ExportServerlessCacheSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ExportServerlessCacheSnapshot +func (c *ElastiCache) ExportServerlessCacheSnapshotRequest(input *ExportServerlessCacheSnapshotInput) (req *request.Request, output *ExportServerlessCacheSnapshotOutput) { + op := &request.Operation{ + Name: opExportServerlessCacheSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ExportServerlessCacheSnapshotInput{} + } + + output = &ExportServerlessCacheSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// ExportServerlessCacheSnapshot API operation for Amazon ElastiCache. +// +// Provides the functionality to export the serverless cache snapshot data to +// Amazon S3. Available for Redis only. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation ExportServerlessCacheSnapshot for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeInvalidServerlessCacheSnapshotStateFault "InvalidServerlessCacheSnapshotStateFault" +// The state of the serverless cache snapshot was not received. Available for +// Redis only. +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ExportServerlessCacheSnapshot +func (c *ElastiCache) ExportServerlessCacheSnapshot(input *ExportServerlessCacheSnapshotInput) (*ExportServerlessCacheSnapshotOutput, error) { + req, out := c.ExportServerlessCacheSnapshotRequest(input) + return out, req.Send() +} + +// ExportServerlessCacheSnapshotWithContext is the same as ExportServerlessCacheSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See ExportServerlessCacheSnapshot 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 *ElastiCache) ExportServerlessCacheSnapshotWithContext(ctx aws.Context, input *ExportServerlessCacheSnapshotInput, opts ...request.Option) (*ExportServerlessCacheSnapshotOutput, error) { + req, out := c.ExportServerlessCacheSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opFailoverGlobalReplicationGroup = "FailoverGlobalReplicationGroup" // FailoverGlobalReplicationGroupRequest generates a "aws/request.Request" representing the @@ -5810,6 +6719,20 @@ // - ErrCodeUserGroupNotFoundFault "UserGroupNotFound" // The user group was not found or does not exist // +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeInvalidServerlessCacheSnapshotStateFault "InvalidServerlessCacheSnapshotStateFault" +// The state of the serverless cache snapshot was not received. Available for +// Redis only. +// // - ErrCodeInvalidARNFault "InvalidARN" // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // @@ -6271,7 +7194,8 @@ // ModifyReplicationGroup API operation for Amazon ElastiCache. // -// Modifies the settings for a replication group. +// Modifies the settings for a replication group. This is limited to Redis 7 +// and newer. // // - Scaling for Amazon ElastiCache for Redis (cluster mode enabled) (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/scaling-redis-cluster-mode-enabled.html) // in the ElastiCache User Guide @@ -6478,6 +7402,106 @@ return out, req.Send() } +const opModifyServerlessCache = "ModifyServerlessCache" + +// ModifyServerlessCacheRequest generates a "aws/request.Request" representing the +// client's request for the ModifyServerlessCache 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 ModifyServerlessCache for more information on using the ModifyServerlessCache +// 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 ModifyServerlessCacheRequest method. +// req, resp := client.ModifyServerlessCacheRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyServerlessCache +func (c *ElastiCache) ModifyServerlessCacheRequest(input *ModifyServerlessCacheInput) (req *request.Request, output *ModifyServerlessCacheOutput) { + op := &request.Operation{ + Name: opModifyServerlessCache, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ModifyServerlessCacheInput{} + } + + output = &ModifyServerlessCacheOutput{} + req = c.newRequest(op, input, output) + return +} + +// ModifyServerlessCache API operation for Amazon ElastiCache. +// +// This API modifies the attributes of a serverless cache. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon ElastiCache's +// API operation ModifyServerlessCache for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeInvalidParameterValueException "InvalidParameterValue" +// The value for a parameter is invalid. +// +// - ErrCodeInvalidParameterCombinationException "InvalidParameterCombination" +// Two or more incompatible parameters were specified. +// +// - ErrCodeInvalidCredentialsException "InvalidCredentialsException" +// You must enter valid credentials. +// +// - ErrCodeInvalidUserGroupStateFault "InvalidUserGroupState" +// The user group is not in an active state. +// +// - ErrCodeUserGroupNotFoundFault "UserGroupNotFound" +// The user group was not found or does not exist +// +// - ErrCodeServiceLinkedRoleNotFoundFault "ServiceLinkedRoleNotFoundFault" +// The specified service linked role (SLR) was not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyServerlessCache +func (c *ElastiCache) ModifyServerlessCache(input *ModifyServerlessCacheInput) (*ModifyServerlessCacheOutput, error) { + req, out := c.ModifyServerlessCacheRequest(input) + return out, req.Send() +} + +// ModifyServerlessCacheWithContext is the same as ModifyServerlessCache with the addition of +// the ability to pass a context and additional request options. +// +// See ModifyServerlessCache 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 *ElastiCache) ModifyServerlessCacheWithContext(ctx aws.Context, input *ModifyServerlessCacheInput, opts ...request.Option) (*ModifyServerlessCacheOutput, error) { + req, out := c.ModifyServerlessCacheRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opModifyUser = "ModifyUser" // ModifyUserRequest generates a "aws/request.Request" representing the @@ -7046,6 +8070,20 @@ // - ErrCodeUserGroupNotFoundFault "UserGroupNotFound" // The user group was not found or does not exist // +// - ErrCodeServerlessCacheNotFoundFault "ServerlessCacheNotFoundFault" +// The serverless cache was not found or does not exist. +// +// - ErrCodeInvalidServerlessCacheStateFault "InvalidServerlessCacheStateFault" +// The account for these credentials is not currently active. +// +// - ErrCodeServerlessCacheSnapshotNotFoundFault "ServerlessCacheSnapshotNotFoundFault" +// This serverless cache snapshot could not be found or does not exist. Available +// for Redis only. +// +// - ErrCodeInvalidServerlessCacheSnapshotStateFault "InvalidServerlessCacheSnapshotStateFault" +// The state of the serverless cache snapshot was not received. Available for +// Redis only. +// // - ErrCodeInvalidARNFault "InvalidARN" // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // @@ -8151,39 +9189,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -8617,39 +9661,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // -// - General purpose: Current generation: M6g node types (available only -// for Redis engine version 5.0.6 onward and for Memcached engine version -// 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, -// cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge -// For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) -// M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, -// cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, -// cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available -// only for Redis engine version 5.0.6 onward and Memcached engine version -// 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 -// node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: -// cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not -// recommended. Existing clusters are still supported but creation of new -// clusters is not supported for these types.) T1 node types: cache.t1.micro -// M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge -// M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge +// - General purpose: Current generation: M7g node types: cache.m7g.large, +// cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, +// cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported +// Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) +// M6g node types (available only for Redis engine version 5.0.6 onward and +// for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, +// cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, +// cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, +// cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: +// cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge +// T4g node types (available only for Redis engine version 5.0.6 onward and +// Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, +// cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium +// T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous +// generation: (not recommended. Existing clusters are still supported but +// creation of new clusters is not supported for these types.) T1 node types: +// cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, +// cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, +// cache.m3.2xlarge // // - Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // -// - Memory optimized: Current generation: R6g node types (available only -// for Redis engine version 5.0.6 onward and for Memcached engine version -// 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, -// cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge -// For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) -// R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, -// cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, -// cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge -// Previous generation: (not recommended. Existing clusters are still supported -// but creation of new clusters is not supported for these types.) M2 node -// types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: -// cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge +// - Memory optimized: Current generation: R7g node types: cache.r7g.large, +// cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, +// cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported +// Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) +// R6g node types (available only for Redis engine version 5.0.6 onward and +// for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, +// cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, +// cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, +// cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: +// cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, +// cache.r4.16xlarge Previous generation: (not recommended. Existing clusters +// are still supported but creation of new clusters is not supported for +// these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge +// R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, +// cache.r3.8xlarge // // Additional node type info // @@ -9368,6 +10418,68 @@ return s } +// The usage limits for storage and ElastiCache Processing Units for the cache. +type CacheUsageLimits struct { + _ struct{} `type:"structure"` + + // The maximum data storage limit in the cache, expressed in Gigabytes. + DataStorage *DataStorage `type:"structure"` + + // The configuration for the number of ElastiCache Processing Units (ECPU) the + // cache can consume per second. + ECPUPerSecond *ECPUPerSecond `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 CacheUsageLimits) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CacheUsageLimits) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CacheUsageLimits) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CacheUsageLimits"} + if s.DataStorage != nil { + if err := s.DataStorage.Validate(); err != nil { + invalidParams.AddNested("DataStorage", err.(request.ErrInvalidParams)) + } + } + if s.ECPUPerSecond != nil { + if err := s.ECPUPerSecond.Validate(); err != nil { + invalidParams.AddNested("ECPUPerSecond", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataStorage sets the DataStorage field's value. +func (s *CacheUsageLimits) SetDataStorage(v *DataStorage) *CacheUsageLimits { + s.DataStorage = v + return s +} + +// SetECPUPerSecond sets the ECPUPerSecond field's value. +func (s *CacheUsageLimits) SetECPUPerSecond(v *ECPUPerSecond) *CacheUsageLimits { + s.ECPUPerSecond = v + return s +} + // The configuration details of the CloudWatch Logs destination. type CloudWatchLogsDestinationDetails struct { _ struct{} `type:"structure"` @@ -9588,6 +10700,119 @@ return s } +type CopyServerlessCacheSnapshotInput struct { + _ struct{} `type:"structure"` + + // The identifier of the KMS key used to encrypt the target snapshot. Available + // for Redis only. + KmsKeyId *string `type:"string"` + + // The identifier of the existing serverless cache’s snapshot to be copied. + // Available for Redis only. + // + // SourceServerlessCacheSnapshotName is a required field + SourceServerlessCacheSnapshotName *string `type:"string" required:"true"` + + // A list of tags to be added to the target snapshot resource. A tag is a key-value + // pair. Available for Redis only. Default: NULL + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The identifier for the snapshot to be created. Available for Redis only. + // + // TargetServerlessCacheSnapshotName is a required field + TargetServerlessCacheSnapshotName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyServerlessCacheSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyServerlessCacheSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyServerlessCacheSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyServerlessCacheSnapshotInput"} + if s.SourceServerlessCacheSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("SourceServerlessCacheSnapshotName")) + } + if s.TargetServerlessCacheSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("TargetServerlessCacheSnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CopyServerlessCacheSnapshotInput) SetKmsKeyId(v string) *CopyServerlessCacheSnapshotInput { + s.KmsKeyId = &v + return s +} + +// SetSourceServerlessCacheSnapshotName sets the SourceServerlessCacheSnapshotName field's value. +func (s *CopyServerlessCacheSnapshotInput) SetSourceServerlessCacheSnapshotName(v string) *CopyServerlessCacheSnapshotInput { + s.SourceServerlessCacheSnapshotName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CopyServerlessCacheSnapshotInput) SetTags(v []*Tag) *CopyServerlessCacheSnapshotInput { + s.Tags = v + return s +} + +// SetTargetServerlessCacheSnapshotName sets the TargetServerlessCacheSnapshotName field's value. +func (s *CopyServerlessCacheSnapshotInput) SetTargetServerlessCacheSnapshotName(v string) *CopyServerlessCacheSnapshotInput { + s.TargetServerlessCacheSnapshotName = &v + return s +} + +type CopyServerlessCacheSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The response for the attempt to copy the serverless cache snapshot. Available + // for Redis only. + ServerlessCacheSnapshot *ServerlessCacheSnapshot `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 CopyServerlessCacheSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyServerlessCacheSnapshotOutput) GoString() string { + return s.String() +} + +// SetServerlessCacheSnapshot sets the ServerlessCacheSnapshot field's value. +func (s *CopyServerlessCacheSnapshotOutput) SetServerlessCacheSnapshot(v *ServerlessCacheSnapshot) *CopyServerlessCacheSnapshotOutput { + s.ServerlessCacheSnapshot = v + return s +} + // Represents the input of a CopySnapshotMessage operation. type CopySnapshotInput struct { _ struct{} `type:"structure"` @@ -9775,39 +11000,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -10769,39 +12000,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -11013,6 +12250,10 @@ // Virtual Private Cloud (Amazon VPC). SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` + // The name of the snapshot used to create a replication group. Available for + // Redis only. + ServerlessCacheSnapshotName *string `type:"string"` + // A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB // snapshot files stored in Amazon S3. The snapshot files are used to populate // the new replication group. The Amazon S3 object name in the ARN cannot contain @@ -11315,6 +12556,12 @@ return s } +// SetServerlessCacheSnapshotName sets the ServerlessCacheSnapshotName field's value. +func (s *CreateReplicationGroupInput) SetServerlessCacheSnapshotName(v string) *CreateReplicationGroupInput { + s.ServerlessCacheSnapshotName = &v + return s +} + // SetSnapshotArns sets the SnapshotArns field's value. func (s *CreateReplicationGroupInput) SetSnapshotArns(v []*string) *CreateReplicationGroupInput { s.SnapshotArns = v @@ -11394,6 +12641,332 @@ return s } +type CreateServerlessCacheInput struct { + _ struct{} `type:"structure"` + + // Sets the cache usage limits for storage and ElastiCache Processing Units + // for the cache. + CacheUsageLimits *CacheUsageLimits `type:"structure"` + + // The daily time that snapshots will be created from the new serverless cache. + // By default this number is populated with 0, i.e. no snapshots will be created + // on an automatic daily basis. Available for Redis only. + DailySnapshotTime *string `type:"string"` + + // User-provided description for the serverless cache. The default is NULL, + // i.e. if no description is provided then an empty string will be returned. + // The maximum length is 255 characters. + Description *string `type:"string"` + + // The name of the cache engine to be used for creating the serverless cache. + // + // Engine is a required field + Engine *string `type:"string" required:"true"` + + // ARN of the customer managed key for encrypting the data at rest. If no KMS + // key is provided, a default service key is used. + KmsKeyId *string `type:"string"` + + // The version of the cache engine that will be used to create the serverless + // cache. + MajorEngineVersion *string `type:"string"` + + // A list of the one or more VPC security groups to be associated with the serverless + // cache. The security group will authorize traffic access for the VPC end-point + // (private-link). If no other information is given this will be the VPC’s + // Default Security Group that is associated with the cluster VPC end-point. + SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` + + // User-provided identifier for the serverless cache. This parameter is stored + // as a lowercase string. + // + // ServerlessCacheName is a required field + ServerlessCacheName *string `type:"string" required:"true"` + + // The ARN(s) of the snapshot that the new serverless cache will be created + // from. Available for Redis only. + SnapshotArnsToRestore []*string `locationNameList:"SnapshotArn" type:"list"` + + // The number of snapshots that will be retained for the serverless cache that + // is being created. As new snapshots beyond this limit are added, the oldest + // snapshots will be deleted on a rolling basis. Available for Redis only. + SnapshotRetentionLimit *int64 `type:"integer"` + + // A list of the identifiers of the subnets where the VPC endpoint for the serverless + // cache will be deployed. All the subnetIds must belong to the same VPC. + SubnetIds []*string `locationNameList:"SubnetId" type:"list"` + + // The list of tags (key, value) pairs to be added to the serverless cache resource. + // Default is NULL. + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The identifier of the UserGroup to be associated with the serverless cache. + // Available for Redis only. Default is NULL. + UserGroupId *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 CreateServerlessCacheInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateServerlessCacheInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateServerlessCacheInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateServerlessCacheInput"} + if s.Engine == nil { + invalidParams.Add(request.NewErrParamRequired("Engine")) + } + if s.ServerlessCacheName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheName")) + } + if s.CacheUsageLimits != nil { + if err := s.CacheUsageLimits.Validate(); err != nil { + invalidParams.AddNested("CacheUsageLimits", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCacheUsageLimits sets the CacheUsageLimits field's value. +func (s *CreateServerlessCacheInput) SetCacheUsageLimits(v *CacheUsageLimits) *CreateServerlessCacheInput { + s.CacheUsageLimits = v + return s +} + +// SetDailySnapshotTime sets the DailySnapshotTime field's value. +func (s *CreateServerlessCacheInput) SetDailySnapshotTime(v string) *CreateServerlessCacheInput { + s.DailySnapshotTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateServerlessCacheInput) SetDescription(v string) *CreateServerlessCacheInput { + s.Description = &v + return s +} + +// SetEngine sets the Engine field's value. +func (s *CreateServerlessCacheInput) SetEngine(v string) *CreateServerlessCacheInput { + s.Engine = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateServerlessCacheInput) SetKmsKeyId(v string) *CreateServerlessCacheInput { + s.KmsKeyId = &v + return s +} + +// SetMajorEngineVersion sets the MajorEngineVersion field's value. +func (s *CreateServerlessCacheInput) SetMajorEngineVersion(v string) *CreateServerlessCacheInput { + s.MajorEngineVersion = &v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *CreateServerlessCacheInput) SetSecurityGroupIds(v []*string) *CreateServerlessCacheInput { + s.SecurityGroupIds = v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *CreateServerlessCacheInput) SetServerlessCacheName(v string) *CreateServerlessCacheInput { + s.ServerlessCacheName = &v + return s +} + +// SetSnapshotArnsToRestore sets the SnapshotArnsToRestore field's value. +func (s *CreateServerlessCacheInput) SetSnapshotArnsToRestore(v []*string) *CreateServerlessCacheInput { + s.SnapshotArnsToRestore = v + return s +} + +// SetSnapshotRetentionLimit sets the SnapshotRetentionLimit field's value. +func (s *CreateServerlessCacheInput) SetSnapshotRetentionLimit(v int64) *CreateServerlessCacheInput { + s.SnapshotRetentionLimit = &v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *CreateServerlessCacheInput) SetSubnetIds(v []*string) *CreateServerlessCacheInput { + s.SubnetIds = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateServerlessCacheInput) SetTags(v []*Tag) *CreateServerlessCacheInput { + s.Tags = v + return s +} + +// SetUserGroupId sets the UserGroupId field's value. +func (s *CreateServerlessCacheInput) SetUserGroupId(v string) *CreateServerlessCacheInput { + s.UserGroupId = &v + return s +} + +type CreateServerlessCacheOutput struct { + _ struct{} `type:"structure"` + + // The response for the attempt to create the serverless cache. + ServerlessCache *ServerlessCache `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 CreateServerlessCacheOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateServerlessCacheOutput) GoString() string { + return s.String() +} + +// SetServerlessCache sets the ServerlessCache field's value. +func (s *CreateServerlessCacheOutput) SetServerlessCache(v *ServerlessCache) *CreateServerlessCacheOutput { + s.ServerlessCache = v + return s +} + +type CreateServerlessCacheSnapshotInput struct { + _ struct{} `type:"structure"` + + // The ID of the KMS key used to encrypt the snapshot. Available for Redis only. + // Default: NULL + KmsKeyId *string `type:"string"` + + // The name of an existing serverless cache. The snapshot is created from this + // cache. Available for Redis only. + // + // ServerlessCacheName is a required field + ServerlessCacheName *string `type:"string" required:"true"` + + // The name for the snapshot being created. Must be unique for the customer + // account. Available for Redis only. Must be between 1 and 255 characters. + // + // ServerlessCacheSnapshotName is a required field + ServerlessCacheSnapshotName *string `type:"string" required:"true"` + + // A list of tags to be added to the snapshot resource. A tag is a key-value + // pair. Available for Redis only. + Tags []*Tag `locationNameList:"Tag" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateServerlessCacheSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateServerlessCacheSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateServerlessCacheSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateServerlessCacheSnapshotInput"} + if s.ServerlessCacheName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheName")) + } + if s.ServerlessCacheSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheSnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateServerlessCacheSnapshotInput) SetKmsKeyId(v string) *CreateServerlessCacheSnapshotInput { + s.KmsKeyId = &v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *CreateServerlessCacheSnapshotInput) SetServerlessCacheName(v string) *CreateServerlessCacheSnapshotInput { + s.ServerlessCacheName = &v + return s +} + +// SetServerlessCacheSnapshotName sets the ServerlessCacheSnapshotName field's value. +func (s *CreateServerlessCacheSnapshotInput) SetServerlessCacheSnapshotName(v string) *CreateServerlessCacheSnapshotInput { + s.ServerlessCacheSnapshotName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateServerlessCacheSnapshotInput) SetTags(v []*Tag) *CreateServerlessCacheSnapshotInput { + s.Tags = v + return s +} + +type CreateServerlessCacheSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The state of a serverless cache snapshot at a specific point in time, to + // the millisecond. Available for Redis only. + ServerlessCacheSnapshot *ServerlessCacheSnapshot `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 CreateServerlessCacheSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateServerlessCacheSnapshotOutput) GoString() string { + return s.String() +} + +// SetServerlessCacheSnapshot sets the ServerlessCacheSnapshot field's value. +func (s *CreateServerlessCacheSnapshotOutput) SetServerlessCacheSnapshot(v *ServerlessCacheSnapshot) *CreateServerlessCacheSnapshotOutput { + s.ServerlessCacheSnapshot = v + return s +} + // Represents the input of a CreateSnapshot operation. type CreateSnapshotInput struct { _ struct{} `type:"structure"` @@ -11521,7 +13094,8 @@ Engine *string `type:"string" required:"true"` // A list of tags to be added to this resource. A tag is a key-value pair. A - // tag key must be accompanied by a tag value, although null is accepted. + // tag key must be accompanied by a tag value, although null is accepted. Available + // for Redis only. Tags []*Tag `locationNameList:"Tag" type:"list"` // The ID of the user group. @@ -11612,6 +13186,10 @@ // A list of replication groups that the user group can access. ReplicationGroups []*string `type:"list"` + // Indicates which serverless caches the specified user group is associated + // with. Available for Redis only. + ServerlessCaches []*string `type:"list"` + // Indicates user group status. Can be "creating", "active", "modifying", "deleting". Status *string `type:"string"` @@ -11670,6 +13248,12 @@ return s } +// SetServerlessCaches sets the ServerlessCaches field's value. +func (s *CreateUserGroupOutput) SetServerlessCaches(v []*string) *CreateUserGroupOutput { + s.ServerlessCaches = v + return s +} + // SetStatus sets the Status field's value. func (s *CreateUserGroupOutput) SetStatus(v string) *CreateUserGroupOutput { s.Status = &v @@ -11972,6 +13556,67 @@ return s } +// The data storage limit. +type DataStorage struct { + _ struct{} `type:"structure"` + + // The upper limit for data storage the cache is set to use. + // + // Maximum is a required field + Maximum *int64 `type:"integer" required:"true"` + + // The unit that the storage is measured in, in GB. + // + // Unit is a required field + Unit *string `type:"string" required:"true" enum:"DataStorageUnit"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataStorage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataStorage) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataStorage) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataStorage"} + if s.Maximum == nil { + invalidParams.Add(request.NewErrParamRequired("Maximum")) + } + if s.Unit == nil { + invalidParams.Add(request.NewErrParamRequired("Unit")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaximum sets the Maximum field's value. +func (s *DataStorage) SetMaximum(v int64) *DataStorage { + s.Maximum = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *DataStorage) SetUnit(v string) *DataStorage { + s.Unit = &v + return s +} + type DecreaseNodeGroupsInGlobalReplicationGroupInput struct { _ struct{} `type:"structure"` @@ -12756,6 +14401,171 @@ return s } +type DeleteServerlessCacheInput struct { + _ struct{} `type:"structure"` + + // Name of the final snapshot to be taken before the serverless cache is deleted. + // Available for Redis only. Default: NULL, i.e. a final snapshot is not taken. + FinalSnapshotName *string `type:"string"` + + // The identifier of the serverless cache to be deleted. + // + // ServerlessCacheName is a required field + ServerlessCacheName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteServerlessCacheInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteServerlessCacheInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteServerlessCacheInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteServerlessCacheInput"} + if s.ServerlessCacheName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFinalSnapshotName sets the FinalSnapshotName field's value. +func (s *DeleteServerlessCacheInput) SetFinalSnapshotName(v string) *DeleteServerlessCacheInput { + s.FinalSnapshotName = &v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *DeleteServerlessCacheInput) SetServerlessCacheName(v string) *DeleteServerlessCacheInput { + s.ServerlessCacheName = &v + return s +} + +type DeleteServerlessCacheOutput struct { + _ struct{} `type:"structure"` + + // Provides the details of the specified serverless cache that is about to be + // deleted. + ServerlessCache *ServerlessCache `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 DeleteServerlessCacheOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteServerlessCacheOutput) GoString() string { + return s.String() +} + +// SetServerlessCache sets the ServerlessCache field's value. +func (s *DeleteServerlessCacheOutput) SetServerlessCache(v *ServerlessCache) *DeleteServerlessCacheOutput { + s.ServerlessCache = v + return s +} + +type DeleteServerlessCacheSnapshotInput struct { + _ struct{} `type:"structure"` + + // Idenfitier of the snapshot to be deleted. Available for Redis only. + // + // ServerlessCacheSnapshotName is a required field + ServerlessCacheSnapshotName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteServerlessCacheSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteServerlessCacheSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteServerlessCacheSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteServerlessCacheSnapshotInput"} + if s.ServerlessCacheSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheSnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetServerlessCacheSnapshotName sets the ServerlessCacheSnapshotName field's value. +func (s *DeleteServerlessCacheSnapshotInput) SetServerlessCacheSnapshotName(v string) *DeleteServerlessCacheSnapshotInput { + s.ServerlessCacheSnapshotName = &v + return s +} + +type DeleteServerlessCacheSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The snapshot to be deleted. Available for Redis only. + ServerlessCacheSnapshot *ServerlessCacheSnapshot `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 DeleteServerlessCacheSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteServerlessCacheSnapshotOutput) GoString() string { + return s.String() +} + +// SetServerlessCacheSnapshot sets the ServerlessCacheSnapshot field's value. +func (s *DeleteServerlessCacheSnapshotOutput) SetServerlessCacheSnapshot(v *ServerlessCacheSnapshot) *DeleteServerlessCacheSnapshotOutput { + s.ServerlessCacheSnapshot = v + return s +} + // Represents the input of a DeleteSnapshot operation. type DeleteSnapshotInput struct { _ struct{} `type:"structure"` @@ -12899,6 +14709,10 @@ // A list of replication groups that the user group can access. ReplicationGroups []*string `type:"list"` + // Indicates which serverless caches the specified user group is associated + // with. Available for Redis only. + ServerlessCaches []*string `type:"list"` + // Indicates user group status. Can be "creating", "active", "modifying", "deleting". Status *string `type:"string"` @@ -12957,6 +14771,12 @@ return s } +// SetServerlessCaches sets the ServerlessCaches field's value. +func (s *DeleteUserGroupOutput) SetServerlessCaches(v []*string) *DeleteUserGroupOutput { + s.ServerlessCaches = v + return s +} + // SetStatus sets the Status field's value. func (s *DeleteUserGroupOutput) SetStatus(v string) *DeleteUserGroupOutput { s.Status = &v @@ -14297,39 +16117,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -14460,39 +16286,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -14688,6 +16520,223 @@ return s } +type DescribeServerlessCacheSnapshotsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of records to include in the response. If more records + // exist than the specified max-results value, a market is included in the response + // so that remaining results can be retrieved. Available for Redis only.The + // default is 50. The Validation Constraints are a maximum of 50. + MaxResults *int64 `type:"integer"` + + // An optional marker returned from a prior request to support pagination of + // results from this operation. If this parameter is specified, the response + // includes only records beyond the marker, up to the value specified by max-results. + // Available for Redis only. + NextToken *string `type:"string"` + + // The identifier of serverless cache. If this parameter is specified, only + // snapshots associated with that specific serverless cache are described. Available + // for Redis only. + ServerlessCacheName *string `type:"string"` + + // The identifier of the serverless cache’s snapshot. If this parameter is + // specified, only this snapshot is described. Available for Redis only. + ServerlessCacheSnapshotName *string `type:"string"` + + // The type of snapshot that is being described. Available for Redis only. + SnapshotType *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 DescribeServerlessCacheSnapshotsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeServerlessCacheSnapshotsInput) GoString() string { + return s.String() +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeServerlessCacheSnapshotsInput) SetMaxResults(v int64) *DescribeServerlessCacheSnapshotsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeServerlessCacheSnapshotsInput) SetNextToken(v string) *DescribeServerlessCacheSnapshotsInput { + s.NextToken = &v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *DescribeServerlessCacheSnapshotsInput) SetServerlessCacheName(v string) *DescribeServerlessCacheSnapshotsInput { + s.ServerlessCacheName = &v + return s +} + +// SetServerlessCacheSnapshotName sets the ServerlessCacheSnapshotName field's value. +func (s *DescribeServerlessCacheSnapshotsInput) SetServerlessCacheSnapshotName(v string) *DescribeServerlessCacheSnapshotsInput { + s.ServerlessCacheSnapshotName = &v + return s +} + +// SetSnapshotType sets the SnapshotType field's value. +func (s *DescribeServerlessCacheSnapshotsInput) SetSnapshotType(v string) *DescribeServerlessCacheSnapshotsInput { + s.SnapshotType = &v + return s +} + +type DescribeServerlessCacheSnapshotsOutput struct { + _ struct{} `type:"structure"` + + // An optional marker returned from a prior request to support pagination of + // results from this operation. If this parameter is specified, the response + // includes only records beyond the marker, up to the value specified by max-results. + // Available for Redis only. + NextToken *string `type:"string"` + + // The serverless caches snapshots associated with a given description request. + // Available for Redis only. + ServerlessCacheSnapshots []*ServerlessCacheSnapshot `locationNameList:"ServerlessCacheSnapshot" 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 DescribeServerlessCacheSnapshotsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeServerlessCacheSnapshotsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeServerlessCacheSnapshotsOutput) SetNextToken(v string) *DescribeServerlessCacheSnapshotsOutput { + s.NextToken = &v + return s +} + +// SetServerlessCacheSnapshots sets the ServerlessCacheSnapshots field's value. +func (s *DescribeServerlessCacheSnapshotsOutput) SetServerlessCacheSnapshots(v []*ServerlessCacheSnapshot) *DescribeServerlessCacheSnapshotsOutput { + s.ServerlessCacheSnapshots = v + return s +} + +type DescribeServerlessCachesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of records in the response. If more records exist than + // the specified max-records value, the next token is included in the response + // so that remaining results can be retrieved. The default is 50. + MaxResults *int64 `type:"integer"` + + // An optional marker returned from a prior request to support pagination of + // results from this operation. If this parameter is specified, the response + // includes only records beyond the marker, up to the value specified by MaxResults. + NextToken *string `type:"string"` + + // The identifier for the serverless cache. If this parameter is specified, + // only information about that specific serverless cache is returned. Default: + // NULL + ServerlessCacheName *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 DescribeServerlessCachesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeServerlessCachesInput) GoString() string { + return s.String() +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeServerlessCachesInput) SetMaxResults(v int64) *DescribeServerlessCachesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeServerlessCachesInput) SetNextToken(v string) *DescribeServerlessCachesInput { + s.NextToken = &v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *DescribeServerlessCachesInput) SetServerlessCacheName(v string) *DescribeServerlessCachesInput { + s.ServerlessCacheName = &v + return s +} + +type DescribeServerlessCachesOutput struct { + _ struct{} `type:"structure"` + + // An optional marker returned from a prior request to support pagination of + // results from this operation. If this parameter is specified, the response + // includes only records beyond the marker, up to the value specified by MaxResults. + NextToken *string `type:"string"` + + // The serverless caches associated with a given description request. + ServerlessCaches []*ServerlessCache `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 DescribeServerlessCachesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeServerlessCachesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeServerlessCachesOutput) SetNextToken(v string) *DescribeServerlessCachesOutput { + s.NextToken = &v + return s +} + +// SetServerlessCaches sets the ServerlessCaches field's value. +func (s *DescribeServerlessCachesOutput) SetServerlessCaches(v []*ServerlessCache) *DescribeServerlessCachesOutput { + s.ServerlessCaches = v + return s +} + type DescribeServiceUpdatesInput struct { _ struct{} `type:"structure"` @@ -15531,6 +17580,55 @@ return s } +// The configuration for the number of ElastiCache Processing Units (ECPU) the +// cache can consume per second. +type ECPUPerSecond struct { + _ struct{} `type:"structure"` + + // The configuration for the maximum number of ECPUs the cache can consume per + // second. + // + // Maximum is a required field + Maximum *int64 `type:"integer" 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 ECPUPerSecond) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ECPUPerSecond) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ECPUPerSecond) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ECPUPerSecond"} + if s.Maximum == nil { + invalidParams.Add(request.NewErrParamRequired("Maximum")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaximum sets the Maximum field's value. +func (s *ECPUPerSecond) SetMaximum(v int64) *ECPUPerSecond { + s.Maximum = &v + return s +} + // Represents the information required for client programs to connect to a cache // node. type Endpoint struct { @@ -15700,6 +17798,100 @@ return s } +type ExportServerlessCacheSnapshotInput struct { + _ struct{} `type:"structure"` + + // Name of the Amazon S3 bucket to export the snapshot to. The Amazon S3 bucket + // must also be in same region as the snapshot. Available for Redis only. + // + // S3BucketName is a required field + S3BucketName *string `type:"string" required:"true"` + + // The identifier of the serverless cache snapshot to be exported to S3. Available + // for Redis only. + // + // ServerlessCacheSnapshotName is a required field + ServerlessCacheSnapshotName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportServerlessCacheSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportServerlessCacheSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExportServerlessCacheSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExportServerlessCacheSnapshotInput"} + if s.S3BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("S3BucketName")) + } + if s.ServerlessCacheSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheSnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3BucketName sets the S3BucketName field's value. +func (s *ExportServerlessCacheSnapshotInput) SetS3BucketName(v string) *ExportServerlessCacheSnapshotInput { + s.S3BucketName = &v + return s +} + +// SetServerlessCacheSnapshotName sets the ServerlessCacheSnapshotName field's value. +func (s *ExportServerlessCacheSnapshotInput) SetServerlessCacheSnapshotName(v string) *ExportServerlessCacheSnapshotInput { + s.ServerlessCacheSnapshotName = &v + return s +} + +type ExportServerlessCacheSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The state of a serverless cache at a specific point in time, to the millisecond. + // Available for Redis only. + ServerlessCacheSnapshot *ServerlessCacheSnapshot `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 ExportServerlessCacheSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportServerlessCacheSnapshotOutput) GoString() string { + return s.String() +} + +// SetServerlessCacheSnapshot sets the ServerlessCacheSnapshot field's value. +func (s *ExportServerlessCacheSnapshotOutput) SetServerlessCacheSnapshot(v *ServerlessCacheSnapshot) *ExportServerlessCacheSnapshotOutput { + s.ServerlessCacheSnapshot = v + return s +} + type FailoverGlobalReplicationGroupInput struct { _ struct{} `type:"structure"` @@ -18147,6 +20339,165 @@ return s } +type ModifyServerlessCacheInput struct { + _ struct{} `type:"structure"` + + // Modify the cache usage limit for the serverless cache. + CacheUsageLimits *CacheUsageLimits `type:"structure"` + + // The daily time during which Elasticache begins taking a daily snapshot of + // the serverless cache. Available for Redis only. The default is NULL, i.e. + // the existing snapshot time configured for the cluster is not removed. + DailySnapshotTime *string `type:"string"` + + // User provided description for the serverless cache. Default = NULL, i.e. + // the existing description is not removed/modified. The description has a maximum + // length of 255 characters. + Description *string `type:"string"` + + // The identifier of the UserGroup to be removed from association with the Redis + // serverless cache. Available for Redis only. Default is NULL. + RemoveUserGroup *bool `type:"boolean"` + + // The new list of VPC security groups to be associated with the serverless + // cache. Populating this list means the current VPC security groups will be + // removed. This security group is used to authorize traffic access for the + // VPC end-point (private-link). Default = NULL - the existing list of VPC security + // groups is not removed. + SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` + + // User-provided identifier for the serverless cache to be modified. + // + // ServerlessCacheName is a required field + ServerlessCacheName *string `type:"string" required:"true"` + + // The number of days for which Elasticache retains automatic snapshots before + // deleting them. Available for Redis only. Default = NULL, i.e. the existing + // snapshot-retention-limit will not be removed or modified. The maximum value + // allowed is 35 days. + SnapshotRetentionLimit *int64 `type:"integer"` + + // The identifier of the UserGroup to be associated with the serverless cache. + // Available for Redis only. Default is NULL - the existing UserGroup is not + // removed. + UserGroupId *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 ModifyServerlessCacheInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyServerlessCacheInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModifyServerlessCacheInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModifyServerlessCacheInput"} + if s.ServerlessCacheName == nil { + invalidParams.Add(request.NewErrParamRequired("ServerlessCacheName")) + } + if s.CacheUsageLimits != nil { + if err := s.CacheUsageLimits.Validate(); err != nil { + invalidParams.AddNested("CacheUsageLimits", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCacheUsageLimits sets the CacheUsageLimits field's value. +func (s *ModifyServerlessCacheInput) SetCacheUsageLimits(v *CacheUsageLimits) *ModifyServerlessCacheInput { + s.CacheUsageLimits = v + return s +} + +// SetDailySnapshotTime sets the DailySnapshotTime field's value. +func (s *ModifyServerlessCacheInput) SetDailySnapshotTime(v string) *ModifyServerlessCacheInput { + s.DailySnapshotTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ModifyServerlessCacheInput) SetDescription(v string) *ModifyServerlessCacheInput { + s.Description = &v + return s +} + +// SetRemoveUserGroup sets the RemoveUserGroup field's value. +func (s *ModifyServerlessCacheInput) SetRemoveUserGroup(v bool) *ModifyServerlessCacheInput { + s.RemoveUserGroup = &v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *ModifyServerlessCacheInput) SetSecurityGroupIds(v []*string) *ModifyServerlessCacheInput { + s.SecurityGroupIds = v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *ModifyServerlessCacheInput) SetServerlessCacheName(v string) *ModifyServerlessCacheInput { + s.ServerlessCacheName = &v + return s +} + +// SetSnapshotRetentionLimit sets the SnapshotRetentionLimit field's value. +func (s *ModifyServerlessCacheInput) SetSnapshotRetentionLimit(v int64) *ModifyServerlessCacheInput { + s.SnapshotRetentionLimit = &v + return s +} + +// SetUserGroupId sets the UserGroupId field's value. +func (s *ModifyServerlessCacheInput) SetUserGroupId(v string) *ModifyServerlessCacheInput { + s.UserGroupId = &v + return s +} + +type ModifyServerlessCacheOutput struct { + _ struct{} `type:"structure"` + + // The response for the attempt to modify the serverless cache. + ServerlessCache *ServerlessCache `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 ModifyServerlessCacheOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyServerlessCacheOutput) GoString() string { + return s.String() +} + +// SetServerlessCache sets the ServerlessCache field's value. +func (s *ModifyServerlessCacheOutput) SetServerlessCache(v *ServerlessCache) *ModifyServerlessCacheOutput { + s.ServerlessCache = v + return s +} + type ModifyUserGroupInput struct { _ struct{} `type:"structure"` @@ -18235,6 +20586,10 @@ // A list of replication groups that the user group can access. ReplicationGroups []*string `type:"list"` + // Indicates which serverless caches the specified user group is associated + // with. Available for Redis only. + ServerlessCaches []*string `type:"list"` + // Indicates user group status. Can be "creating", "active", "modifying", "deleting". Status *string `type:"string"` @@ -18293,6 +20648,12 @@ return s } +// SetServerlessCaches sets the ServerlessCaches field's value. +func (s *ModifyUserGroupOutput) SetServerlessCaches(v []*string) *ModifyUserGroupOutput { + s.ServerlessCaches = v + return s +} + // SetStatus sets the Status field's value. func (s *ModifyUserGroupOutput) SetStatus(v string) *ModifyUserGroupOutput { s.Status = &v @@ -20422,39 +22783,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -20610,39 +22977,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -21060,6 +23433,355 @@ return s } +// The resource representing a serverless cache. +type ServerlessCache struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the serverless cache. + ARN *string `type:"string"` + + // The cache usage limit for the serverless cache. + CacheUsageLimits *CacheUsageLimits `type:"structure"` + + // When the serverless cache was created. + CreateTime *time.Time `type:"timestamp"` + + // The daily time that a cache snapshot will be created. Default is NULL, i.e. + // snapshots will not be created at a specific time on a daily basis. Available + // for Redis only. + DailySnapshotTime *string `type:"string"` + + // A description of the serverless cache. + Description *string `type:"string"` + + // Represents the information required for client programs to connect to a cache + // node. + Endpoint *Endpoint `type:"structure"` + + // The engine the serverless cache is compatible with. + Engine *string `type:"string"` + + // The name and version number of the engine the serverless cache is compatible + // with. + FullEngineVersion *string `type:"string"` + + // The ID of the Amazon Web Services Key Management Service (KMS) key that is + // used to encrypt data at rest in the serverless cache. + KmsKeyId *string `type:"string"` + + // The version number of the engine the serverless cache is compatible with. + MajorEngineVersion *string `type:"string"` + + // Represents the information required for client programs to connect to a cache + // node. + ReaderEndpoint *Endpoint `type:"structure"` + + // The IDs of the EC2 security groups associated with the serverless cache. + SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` + + // The unique identifier of the serverless cache. + ServerlessCacheName *string `type:"string"` + + // The current setting for the number of serverless cache snapshots the system + // will retain. Available for Redis only. + SnapshotRetentionLimit *int64 `type:"integer"` + + // The current status of the serverless cache. The allowed values are CREATING, + // AVAILABLE, DELETING, CREATE-FAILED and MODIFYING. + Status *string `type:"string"` + + // If no subnet IDs are given and your VPC is in SFO, then ElastiCache will + // select 2 default subnets across AZs in your VPC. For all other Regions, if + // no subnet IDs are given then ElastiCache will select 3 default subnets across + // AZs in your default VPC. + SubnetIds []*string `locationNameList:"SubnetId" type:"list"` + + // The identifier of the user group associated with the serverless cache. Available + // for Redis only. Default is NULL. + UserGroupId *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 ServerlessCache) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServerlessCache) GoString() string { + return s.String() +} + +// SetARN sets the ARN field's value. +func (s *ServerlessCache) SetARN(v string) *ServerlessCache { + s.ARN = &v + return s +} + +// SetCacheUsageLimits sets the CacheUsageLimits field's value. +func (s *ServerlessCache) SetCacheUsageLimits(v *CacheUsageLimits) *ServerlessCache { + s.CacheUsageLimits = v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *ServerlessCache) SetCreateTime(v time.Time) *ServerlessCache { + s.CreateTime = &v + return s +} + +// SetDailySnapshotTime sets the DailySnapshotTime field's value. +func (s *ServerlessCache) SetDailySnapshotTime(v string) *ServerlessCache { + s.DailySnapshotTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ServerlessCache) SetDescription(v string) *ServerlessCache { + s.Description = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *ServerlessCache) SetEndpoint(v *Endpoint) *ServerlessCache { + s.Endpoint = v + return s +} + +// SetEngine sets the Engine field's value. +func (s *ServerlessCache) SetEngine(v string) *ServerlessCache { + s.Engine = &v + return s +} + +// SetFullEngineVersion sets the FullEngineVersion field's value. +func (s *ServerlessCache) SetFullEngineVersion(v string) *ServerlessCache { + s.FullEngineVersion = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *ServerlessCache) SetKmsKeyId(v string) *ServerlessCache { + s.KmsKeyId = &v + return s +} + +// SetMajorEngineVersion sets the MajorEngineVersion field's value. +func (s *ServerlessCache) SetMajorEngineVersion(v string) *ServerlessCache { + s.MajorEngineVersion = &v + return s +} + +// SetReaderEndpoint sets the ReaderEndpoint field's value. +func (s *ServerlessCache) SetReaderEndpoint(v *Endpoint) *ServerlessCache { + s.ReaderEndpoint = v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *ServerlessCache) SetSecurityGroupIds(v []*string) *ServerlessCache { + s.SecurityGroupIds = v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *ServerlessCache) SetServerlessCacheName(v string) *ServerlessCache { + s.ServerlessCacheName = &v + return s +} + +// SetSnapshotRetentionLimit sets the SnapshotRetentionLimit field's value. +func (s *ServerlessCache) SetSnapshotRetentionLimit(v int64) *ServerlessCache { + s.SnapshotRetentionLimit = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ServerlessCache) SetStatus(v string) *ServerlessCache { + s.Status = &v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *ServerlessCache) SetSubnetIds(v []*string) *ServerlessCache { + s.SubnetIds = v + return s +} + +// SetUserGroupId sets the UserGroupId field's value. +func (s *ServerlessCache) SetUserGroupId(v string) *ServerlessCache { + s.UserGroupId = &v + return s +} + +// The configuration settings for a specific serverless cache. +type ServerlessCacheConfiguration struct { + _ struct{} `type:"structure"` + + // The engine that the serverless cache is configured with. + Engine *string `type:"string"` + + // The engine version number that the serverless cache is configured with. + MajorEngineVersion *string `type:"string"` + + // The identifier of a serverless cache. + ServerlessCacheName *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 ServerlessCacheConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServerlessCacheConfiguration) GoString() string { + return s.String() +} + +// SetEngine sets the Engine field's value. +func (s *ServerlessCacheConfiguration) SetEngine(v string) *ServerlessCacheConfiguration { + s.Engine = &v + return s +} + +// SetMajorEngineVersion sets the MajorEngineVersion field's value. +func (s *ServerlessCacheConfiguration) SetMajorEngineVersion(v string) *ServerlessCacheConfiguration { + s.MajorEngineVersion = &v + return s +} + +// SetServerlessCacheName sets the ServerlessCacheName field's value. +func (s *ServerlessCacheConfiguration) SetServerlessCacheName(v string) *ServerlessCacheConfiguration { + s.ServerlessCacheName = &v + return s +} + +// The resource representing a serverless cache snapshot. Available for Redis +// only. +type ServerlessCacheSnapshot struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of a serverless cache snapshot. Available + // for Redis only. + ARN *string `type:"string"` + + // The total size of a serverless cache snapshot, in bytes. Available for Redis + // only. + BytesUsedForCache *string `type:"string"` + + // The date and time that the source serverless cache's metadata and cache data + // set was obtained for the snapshot. Available for Redis only. + CreateTime *time.Time `type:"timestamp"` + + // The time that the serverless cache snapshot will expire. Available for Redis + // only. + ExpiryTime *time.Time `type:"timestamp"` + + // The ID of the Amazon Web Services Key Management Service (KMS) key of a serverless + // cache snapshot. Available for Redis only. + KmsKeyId *string `type:"string"` + + // The configuration of the serverless cache, at the time the snapshot was taken. + // Available for Redis only. + ServerlessCacheConfiguration *ServerlessCacheConfiguration `type:"structure"` + + // The identifier of a serverless cache snapshot. Available for Redis only. + ServerlessCacheSnapshotName *string `type:"string"` + + // The type of snapshot of serverless cache. Available for Redis only. + SnapshotType *string `type:"string"` + + // The current status of the serverless cache. Available for Redis only. + Status *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 ServerlessCacheSnapshot) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServerlessCacheSnapshot) GoString() string { + return s.String() +} + +// SetARN sets the ARN field's value. +func (s *ServerlessCacheSnapshot) SetARN(v string) *ServerlessCacheSnapshot { + s.ARN = &v + return s +} + +// SetBytesUsedForCache sets the BytesUsedForCache field's value. +func (s *ServerlessCacheSnapshot) SetBytesUsedForCache(v string) *ServerlessCacheSnapshot { + s.BytesUsedForCache = &v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *ServerlessCacheSnapshot) SetCreateTime(v time.Time) *ServerlessCacheSnapshot { + s.CreateTime = &v + return s +} + +// SetExpiryTime sets the ExpiryTime field's value. +func (s *ServerlessCacheSnapshot) SetExpiryTime(v time.Time) *ServerlessCacheSnapshot { + s.ExpiryTime = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *ServerlessCacheSnapshot) SetKmsKeyId(v string) *ServerlessCacheSnapshot { + s.KmsKeyId = &v + return s +} + +// SetServerlessCacheConfiguration sets the ServerlessCacheConfiguration field's value. +func (s *ServerlessCacheSnapshot) SetServerlessCacheConfiguration(v *ServerlessCacheConfiguration) *ServerlessCacheSnapshot { + s.ServerlessCacheConfiguration = v + return s +} + +// SetServerlessCacheSnapshotName sets the ServerlessCacheSnapshotName field's value. +func (s *ServerlessCacheSnapshot) SetServerlessCacheSnapshotName(v string) *ServerlessCacheSnapshot { + s.ServerlessCacheSnapshotName = &v + return s +} + +// SetSnapshotType sets the SnapshotType field's value. +func (s *ServerlessCacheSnapshot) SetSnapshotType(v string) *ServerlessCacheSnapshot { + s.SnapshotType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ServerlessCacheSnapshot) SetStatus(v string) *ServerlessCacheSnapshot { + s.Status = &v + return s +} + // An update that you can apply to your Redis clusters. type ServiceUpdate struct { _ struct{} `type:"structure"` @@ -21256,39 +23978,45 @@ // the current generation types provide more memory and computational power // at lower cost when compared to their equivalent previous generation counterparts. // - // * General purpose: Current generation: M6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, - // cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, - // cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, - // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available - // only for Redis engine version 5.0.6 onward and Memcached engine version - // 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 - // node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: - // cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not - // recommended. Existing clusters are still supported but creation of new - // clusters is not supported for these types.) T1 node types: cache.t1.micro - // M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge - // M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge + // * General purpose: Current generation: M7g node types: cache.m7g.large, + // cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, + // cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // M6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, + // cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, + // cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, + // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: + // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge + // T4g node types (available only for Redis engine version 5.0.6 onward and + // Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, + // cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium + // T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous + // generation: (not recommended. Existing clusters are still supported but + // creation of new clusters is not supported for these types.) T1 node types: + // cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, + // cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, + // cache.m3.2xlarge // // * Compute optimized: Previous generation: (not recommended. Existing clusters // are still supported but creation of new clusters is not supported for // these types.) C1 node types: cache.c1.xlarge // - // * Memory optimized: Current generation: R6g node types (available only - // for Redis engine version 5.0.6 onward and for Memcached engine version - // 1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, - // cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge - // For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) - // R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, - // cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, - // cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge - // Previous generation: (not recommended. Existing clusters are still supported - // but creation of new clusters is not supported for these types.) M2 node - // types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: - // cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge + // * Memory optimized: Current generation: R7g node types: cache.r7g.large, + // cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, + // cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported + // Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) + // R6g node types (available only for Redis engine version 5.0.6 onward and + // for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, + // cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, + // cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, + // cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: + // cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, + // cache.r4.16xlarge Previous generation: (not recommended. Existing clusters + // are still supported but creation of new clusters is not supported for + // these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge + // R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, + // cache.r3.8xlarge // // Additional node type info // @@ -22465,6 +25193,10 @@ // A list of replication groups that the user group can access. ReplicationGroups []*string `type:"list"` + // Indicates which serverless caches the specified user group is associated + // with. Available for Redis only. + ServerlessCaches []*string `type:"list"` + // Indicates user group status. Can be "creating", "active", "modifying", "deleting". Status *string `type:"string"` @@ -22523,6 +25255,12 @@ return s } +// SetServerlessCaches sets the ServerlessCaches field's value. +func (s *UserGroup) SetServerlessCaches(v []*string) *UserGroup { + s.ServerlessCaches = v + return s +} + // SetStatus sets the Status field's value. func (s *UserGroup) SetStatus(v string) *UserGroup { s.Status = &v @@ -22756,6 +25494,18 @@ } const ( + // DataStorageUnitGb is a DataStorageUnit enum value + DataStorageUnitGb = "GB" +) + +// DataStorageUnit_Values returns all elements of the DataStorageUnit enum +func DataStorageUnit_Values() []string { + return []string{ + DataStorageUnitGb, + } +} + +const ( // DataTieringStatusEnabled is a DataTieringStatus enum value DataTieringStatusEnabled = "enabled" @@ -23091,6 +25841,12 @@ // SourceTypeReplicationGroup is a SourceType enum value SourceTypeReplicationGroup = "replication-group" + // SourceTypeServerlessCache is a SourceType enum value + SourceTypeServerlessCache = "serverless-cache" + + // SourceTypeServerlessCacheSnapshot is a SourceType enum value + SourceTypeServerlessCacheSnapshot = "serverless-cache-snapshot" + // SourceTypeUser is a SourceType enum value SourceTypeUser = "user" @@ -23106,6 +25862,8 @@ SourceTypeCacheSecurityGroup, SourceTypeCacheSubnetGroup, SourceTypeReplicationGroup, + SourceTypeServerlessCache, + SourceTypeServerlessCacheSnapshot, SourceTypeUser, SourceTypeUserGroup, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/elasticacheiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/elasticacheiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/elasticacheiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/elasticacheiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,10 @@ CompleteMigrationWithContext(aws.Context, *elasticache.CompleteMigrationInput, ...request.Option) (*elasticache.CompleteMigrationOutput, error) CompleteMigrationRequest(*elasticache.CompleteMigrationInput) (*request.Request, *elasticache.CompleteMigrationOutput) + CopyServerlessCacheSnapshot(*elasticache.CopyServerlessCacheSnapshotInput) (*elasticache.CopyServerlessCacheSnapshotOutput, error) + CopyServerlessCacheSnapshotWithContext(aws.Context, *elasticache.CopyServerlessCacheSnapshotInput, ...request.Option) (*elasticache.CopyServerlessCacheSnapshotOutput, error) + CopyServerlessCacheSnapshotRequest(*elasticache.CopyServerlessCacheSnapshotInput) (*request.Request, *elasticache.CopyServerlessCacheSnapshotOutput) + CopySnapshot(*elasticache.CopySnapshotInput) (*elasticache.CopySnapshotOutput, error) CopySnapshotWithContext(aws.Context, *elasticache.CopySnapshotInput, ...request.Option) (*elasticache.CopySnapshotOutput, error) CopySnapshotRequest(*elasticache.CopySnapshotInput) (*request.Request, *elasticache.CopySnapshotOutput) @@ -108,6 +112,14 @@ CreateReplicationGroupWithContext(aws.Context, *elasticache.CreateReplicationGroupInput, ...request.Option) (*elasticache.CreateReplicationGroupOutput, error) CreateReplicationGroupRequest(*elasticache.CreateReplicationGroupInput) (*request.Request, *elasticache.CreateReplicationGroupOutput) + CreateServerlessCache(*elasticache.CreateServerlessCacheInput) (*elasticache.CreateServerlessCacheOutput, error) + CreateServerlessCacheWithContext(aws.Context, *elasticache.CreateServerlessCacheInput, ...request.Option) (*elasticache.CreateServerlessCacheOutput, error) + CreateServerlessCacheRequest(*elasticache.CreateServerlessCacheInput) (*request.Request, *elasticache.CreateServerlessCacheOutput) + + CreateServerlessCacheSnapshot(*elasticache.CreateServerlessCacheSnapshotInput) (*elasticache.CreateServerlessCacheSnapshotOutput, error) + CreateServerlessCacheSnapshotWithContext(aws.Context, *elasticache.CreateServerlessCacheSnapshotInput, ...request.Option) (*elasticache.CreateServerlessCacheSnapshotOutput, error) + CreateServerlessCacheSnapshotRequest(*elasticache.CreateServerlessCacheSnapshotInput) (*request.Request, *elasticache.CreateServerlessCacheSnapshotOutput) + CreateSnapshot(*elasticache.CreateSnapshotInput) (*elasticache.CreateSnapshotOutput, error) CreateSnapshotWithContext(aws.Context, *elasticache.CreateSnapshotInput, ...request.Option) (*elasticache.CreateSnapshotOutput, error) CreateSnapshotRequest(*elasticache.CreateSnapshotInput) (*request.Request, *elasticache.CreateSnapshotOutput) @@ -152,6 +164,14 @@ DeleteReplicationGroupWithContext(aws.Context, *elasticache.DeleteReplicationGroupInput, ...request.Option) (*elasticache.DeleteReplicationGroupOutput, error) DeleteReplicationGroupRequest(*elasticache.DeleteReplicationGroupInput) (*request.Request, *elasticache.DeleteReplicationGroupOutput) + DeleteServerlessCache(*elasticache.DeleteServerlessCacheInput) (*elasticache.DeleteServerlessCacheOutput, error) + DeleteServerlessCacheWithContext(aws.Context, *elasticache.DeleteServerlessCacheInput, ...request.Option) (*elasticache.DeleteServerlessCacheOutput, error) + DeleteServerlessCacheRequest(*elasticache.DeleteServerlessCacheInput) (*request.Request, *elasticache.DeleteServerlessCacheOutput) + + DeleteServerlessCacheSnapshot(*elasticache.DeleteServerlessCacheSnapshotInput) (*elasticache.DeleteServerlessCacheSnapshotOutput, error) + DeleteServerlessCacheSnapshotWithContext(aws.Context, *elasticache.DeleteServerlessCacheSnapshotInput, ...request.Option) (*elasticache.DeleteServerlessCacheSnapshotOutput, error) + DeleteServerlessCacheSnapshotRequest(*elasticache.DeleteServerlessCacheSnapshotInput) (*request.Request, *elasticache.DeleteServerlessCacheSnapshotOutput) + DeleteSnapshot(*elasticache.DeleteSnapshotInput) (*elasticache.DeleteSnapshotOutput, error) DeleteSnapshotWithContext(aws.Context, *elasticache.DeleteSnapshotInput, ...request.Option) (*elasticache.DeleteSnapshotOutput, error) DeleteSnapshotRequest(*elasticache.DeleteSnapshotInput) (*request.Request, *elasticache.DeleteSnapshotOutput) @@ -248,6 +268,20 @@ DescribeReservedCacheNodesOfferingsPages(*elasticache.DescribeReservedCacheNodesOfferingsInput, func(*elasticache.DescribeReservedCacheNodesOfferingsOutput, bool) bool) error DescribeReservedCacheNodesOfferingsPagesWithContext(aws.Context, *elasticache.DescribeReservedCacheNodesOfferingsInput, func(*elasticache.DescribeReservedCacheNodesOfferingsOutput, bool) bool, ...request.Option) error + DescribeServerlessCacheSnapshots(*elasticache.DescribeServerlessCacheSnapshotsInput) (*elasticache.DescribeServerlessCacheSnapshotsOutput, error) + DescribeServerlessCacheSnapshotsWithContext(aws.Context, *elasticache.DescribeServerlessCacheSnapshotsInput, ...request.Option) (*elasticache.DescribeServerlessCacheSnapshotsOutput, error) + DescribeServerlessCacheSnapshotsRequest(*elasticache.DescribeServerlessCacheSnapshotsInput) (*request.Request, *elasticache.DescribeServerlessCacheSnapshotsOutput) + + DescribeServerlessCacheSnapshotsPages(*elasticache.DescribeServerlessCacheSnapshotsInput, func(*elasticache.DescribeServerlessCacheSnapshotsOutput, bool) bool) error + DescribeServerlessCacheSnapshotsPagesWithContext(aws.Context, *elasticache.DescribeServerlessCacheSnapshotsInput, func(*elasticache.DescribeServerlessCacheSnapshotsOutput, bool) bool, ...request.Option) error + + DescribeServerlessCaches(*elasticache.DescribeServerlessCachesInput) (*elasticache.DescribeServerlessCachesOutput, error) + DescribeServerlessCachesWithContext(aws.Context, *elasticache.DescribeServerlessCachesInput, ...request.Option) (*elasticache.DescribeServerlessCachesOutput, error) + DescribeServerlessCachesRequest(*elasticache.DescribeServerlessCachesInput) (*request.Request, *elasticache.DescribeServerlessCachesOutput) + + DescribeServerlessCachesPages(*elasticache.DescribeServerlessCachesInput, func(*elasticache.DescribeServerlessCachesOutput, bool) bool) error + DescribeServerlessCachesPagesWithContext(aws.Context, *elasticache.DescribeServerlessCachesInput, func(*elasticache.DescribeServerlessCachesOutput, bool) bool, ...request.Option) error + DescribeServiceUpdates(*elasticache.DescribeServiceUpdatesInput) (*elasticache.DescribeServiceUpdatesOutput, error) DescribeServiceUpdatesWithContext(aws.Context, *elasticache.DescribeServiceUpdatesInput, ...request.Option) (*elasticache.DescribeServiceUpdatesOutput, error) DescribeServiceUpdatesRequest(*elasticache.DescribeServiceUpdatesInput) (*request.Request, *elasticache.DescribeServiceUpdatesOutput) @@ -287,6 +321,10 @@ DisassociateGlobalReplicationGroupWithContext(aws.Context, *elasticache.DisassociateGlobalReplicationGroupInput, ...request.Option) (*elasticache.DisassociateGlobalReplicationGroupOutput, error) DisassociateGlobalReplicationGroupRequest(*elasticache.DisassociateGlobalReplicationGroupInput) (*request.Request, *elasticache.DisassociateGlobalReplicationGroupOutput) + ExportServerlessCacheSnapshot(*elasticache.ExportServerlessCacheSnapshotInput) (*elasticache.ExportServerlessCacheSnapshotOutput, error) + ExportServerlessCacheSnapshotWithContext(aws.Context, *elasticache.ExportServerlessCacheSnapshotInput, ...request.Option) (*elasticache.ExportServerlessCacheSnapshotOutput, error) + ExportServerlessCacheSnapshotRequest(*elasticache.ExportServerlessCacheSnapshotInput) (*request.Request, *elasticache.ExportServerlessCacheSnapshotOutput) + FailoverGlobalReplicationGroup(*elasticache.FailoverGlobalReplicationGroupInput) (*elasticache.FailoverGlobalReplicationGroupOutput, error) FailoverGlobalReplicationGroupWithContext(aws.Context, *elasticache.FailoverGlobalReplicationGroupInput, ...request.Option) (*elasticache.FailoverGlobalReplicationGroupOutput, error) FailoverGlobalReplicationGroupRequest(*elasticache.FailoverGlobalReplicationGroupInput) (*request.Request, *elasticache.FailoverGlobalReplicationGroupOutput) @@ -331,6 +369,10 @@ ModifyReplicationGroupShardConfigurationWithContext(aws.Context, *elasticache.ModifyReplicationGroupShardConfigurationInput, ...request.Option) (*elasticache.ModifyReplicationGroupShardConfigurationOutput, error) ModifyReplicationGroupShardConfigurationRequest(*elasticache.ModifyReplicationGroupShardConfigurationInput) (*request.Request, *elasticache.ModifyReplicationGroupShardConfigurationOutput) + ModifyServerlessCache(*elasticache.ModifyServerlessCacheInput) (*elasticache.ModifyServerlessCacheOutput, error) + ModifyServerlessCacheWithContext(aws.Context, *elasticache.ModifyServerlessCacheInput, ...request.Option) (*elasticache.ModifyServerlessCacheOutput, error) + ModifyServerlessCacheRequest(*elasticache.ModifyServerlessCacheInput) (*request.Request, *elasticache.ModifyServerlessCacheOutput) + ModifyUser(*elasticache.ModifyUserInput) (*elasticache.ModifyUserOutput, error) ModifyUserWithContext(aws.Context, *elasticache.ModifyUserInput, ...request.Option) (*elasticache.ModifyUserOutput, error) ModifyUserRequest(*elasticache.ModifyUserInput) (*request.Request, *elasticache.ModifyUserOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -180,6 +180,12 @@ // The current state of the cache security group does not allow deletion. ErrCodeInvalidCacheSecurityGroupStateFault = "InvalidCacheSecurityGroupState" + // ErrCodeInvalidCredentialsException for service response error code + // "InvalidCredentialsException". + // + // You must enter valid credentials. + ErrCodeInvalidCredentialsException = "InvalidCredentialsException" + // ErrCodeInvalidGlobalReplicationGroupStateFault for service response error code // "InvalidGlobalReplicationGroupState". // @@ -210,6 +216,19 @@ // The requested replication group is not in the available state. ErrCodeInvalidReplicationGroupStateFault = "InvalidReplicationGroupState" + // ErrCodeInvalidServerlessCacheSnapshotStateFault for service response error code + // "InvalidServerlessCacheSnapshotStateFault". + // + // The state of the serverless cache snapshot was not received. Available for + // Redis only. + ErrCodeInvalidServerlessCacheSnapshotStateFault = "InvalidServerlessCacheSnapshotStateFault" + + // ErrCodeInvalidServerlessCacheStateFault for service response error code + // "InvalidServerlessCacheStateFault". + // + // The account for these credentials is not currently active. + ErrCodeInvalidServerlessCacheStateFault = "InvalidServerlessCacheStateFault" + // ErrCodeInvalidSnapshotStateFault for service response error code // "InvalidSnapshotState". // @@ -326,6 +345,45 @@ // The requested cache node offering does not exist. ErrCodeReservedCacheNodesOfferingNotFoundFault = "ReservedCacheNodesOfferingNotFound" + // ErrCodeServerlessCacheAlreadyExistsFault for service response error code + // "ServerlessCacheAlreadyExistsFault". + // + // A serverless cache with this name already exists. + ErrCodeServerlessCacheAlreadyExistsFault = "ServerlessCacheAlreadyExistsFault" + + // ErrCodeServerlessCacheNotFoundFault for service response error code + // "ServerlessCacheNotFoundFault". + // + // The serverless cache was not found or does not exist. + ErrCodeServerlessCacheNotFoundFault = "ServerlessCacheNotFoundFault" + + // ErrCodeServerlessCacheQuotaForCustomerExceededFault for service response error code + // "ServerlessCacheQuotaForCustomerExceededFault". + // + // The number of serverless caches exceeds the customer quota. + ErrCodeServerlessCacheQuotaForCustomerExceededFault = "ServerlessCacheQuotaForCustomerExceededFault" + + // ErrCodeServerlessCacheSnapshotAlreadyExistsFault for service response error code + // "ServerlessCacheSnapshotAlreadyExistsFault". + // + // A serverless cache snapshot with this name already exists. Available for + // Redis only. + ErrCodeServerlessCacheSnapshotAlreadyExistsFault = "ServerlessCacheSnapshotAlreadyExistsFault" + + // ErrCodeServerlessCacheSnapshotNotFoundFault for service response error code + // "ServerlessCacheSnapshotNotFoundFault". + // + // This serverless cache snapshot could not be found or does not exist. Available + // for Redis only. + ErrCodeServerlessCacheSnapshotNotFoundFault = "ServerlessCacheSnapshotNotFoundFault" + + // ErrCodeServerlessCacheSnapshotQuotaExceededFault for service response error code + // "ServerlessCacheSnapshotQuotaExceededFault". + // + // The number of serverless cache snapshots exceeds the customer snapshot quota. + // Available for Redis only. + ErrCodeServerlessCacheSnapshotQuotaExceededFault = "ServerlessCacheSnapshotQuotaExceededFault" + // ErrCodeServiceLinkedRoleNotFoundFault for service response error code // "ServiceLinkedRoleNotFoundFault". // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elasticache/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elasticache/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -67,6 +67,14 @@ fmt.Println(elasticache.ErrCodeUserNotFoundFault, aerr.Error()) case elasticache.ErrCodeUserGroupNotFoundFault: fmt.Println(elasticache.ErrCodeUserGroupNotFoundFault, aerr.Error()) + case elasticache.ErrCodeServerlessCacheNotFoundFault: + fmt.Println(elasticache.ErrCodeServerlessCacheNotFoundFault, aerr.Error()) + case elasticache.ErrCodeInvalidServerlessCacheStateFault: + fmt.Println(elasticache.ErrCodeInvalidServerlessCacheStateFault, aerr.Error()) + case elasticache.ErrCodeServerlessCacheSnapshotNotFoundFault: + fmt.Println(elasticache.ErrCodeServerlessCacheSnapshotNotFoundFault, aerr.Error()) + case elasticache.ErrCodeInvalidServerlessCacheSnapshotStateFault: + fmt.Println(elasticache.ErrCodeInvalidServerlessCacheSnapshotStateFault, aerr.Error()) case elasticache.ErrCodeTagQuotaPerResourceExceeded: fmt.Println(elasticache.ErrCodeTagQuotaPerResourceExceeded, aerr.Error()) case elasticache.ErrCodeInvalidARNFault: @@ -1579,6 +1587,14 @@ fmt.Println(elasticache.ErrCodeUserNotFoundFault, aerr.Error()) case elasticache.ErrCodeUserGroupNotFoundFault: fmt.Println(elasticache.ErrCodeUserGroupNotFoundFault, aerr.Error()) + case elasticache.ErrCodeServerlessCacheNotFoundFault: + fmt.Println(elasticache.ErrCodeServerlessCacheNotFoundFault, aerr.Error()) + case elasticache.ErrCodeInvalidServerlessCacheStateFault: + fmt.Println(elasticache.ErrCodeInvalidServerlessCacheStateFault, aerr.Error()) + case elasticache.ErrCodeServerlessCacheSnapshotNotFoundFault: + fmt.Println(elasticache.ErrCodeServerlessCacheSnapshotNotFoundFault, aerr.Error()) + case elasticache.ErrCodeInvalidServerlessCacheSnapshotStateFault: + fmt.Println(elasticache.ErrCodeInvalidServerlessCacheSnapshotStateFault, aerr.Error()) case elasticache.ErrCodeInvalidARNFault: fmt.Println(elasticache.ErrCodeInvalidARNFault, aerr.Error()) default: @@ -1904,6 +1920,14 @@ fmt.Println(elasticache.ErrCodeUserNotFoundFault, aerr.Error()) case elasticache.ErrCodeUserGroupNotFoundFault: fmt.Println(elasticache.ErrCodeUserGroupNotFoundFault, aerr.Error()) + case elasticache.ErrCodeServerlessCacheNotFoundFault: + fmt.Println(elasticache.ErrCodeServerlessCacheNotFoundFault, aerr.Error()) + case elasticache.ErrCodeInvalidServerlessCacheStateFault: + fmt.Println(elasticache.ErrCodeInvalidServerlessCacheStateFault, aerr.Error()) + case elasticache.ErrCodeServerlessCacheSnapshotNotFoundFault: + fmt.Println(elasticache.ErrCodeServerlessCacheSnapshotNotFoundFault, aerr.Error()) + case elasticache.ErrCodeInvalidServerlessCacheSnapshotStateFault: + fmt.Println(elasticache.ErrCodeInvalidServerlessCacheSnapshotStateFault, aerr.Error()) case elasticache.ErrCodeInvalidARNFault: fmt.Println(elasticache.ErrCodeInvalidARNFault, aerr.Error()) case elasticache.ErrCodeTagNotFoundFault: diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -152,7 +152,7 @@ // // Adds the specified tags to the specified Elastic Load Balancing resource. // You can tag your Application Load Balancers, Network Load Balancers, Gateway -// Load Balancers, target groups, listeners, and rules. +// Load Balancers, target groups, trust stores, listeners, and rules. // // Each tag consists of a key and an optional value. If a resource already has // a tag with the same key, AddTags updates its value. @@ -170,7 +170,7 @@ // A tag key was specified more than once. // // - ErrCodeTooManyTagsException "TooManyTags" -// You've reached the limit on the number of tags per load balancer. +// You've reached the limit on the number of tags for this resource. // // - ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound" // The specified load balancer does not exist. @@ -184,6 +184,9 @@ // - ErrCodeRuleNotFoundException "RuleNotFound" // The specified rule does not exist. // +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTags func (c *ELBV2) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) @@ -206,6 +209,94 @@ return out, req.Send() } +const opAddTrustStoreRevocations = "AddTrustStoreRevocations" + +// AddTrustStoreRevocationsRequest generates a "aws/request.Request" representing the +// client's request for the AddTrustStoreRevocations 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 AddTrustStoreRevocations for more information on using the AddTrustStoreRevocations +// 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 AddTrustStoreRevocationsRequest method. +// req, resp := client.AddTrustStoreRevocationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTrustStoreRevocations +func (c *ELBV2) AddTrustStoreRevocationsRequest(input *AddTrustStoreRevocationsInput) (req *request.Request, output *AddTrustStoreRevocationsOutput) { + op := &request.Operation{ + Name: opAddTrustStoreRevocations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AddTrustStoreRevocationsInput{} + } + + output = &AddTrustStoreRevocationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// AddTrustStoreRevocations API operation for Elastic Load Balancing. +// +// Adds the specified revocation file to the specified trust store. +// +// 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 Elastic Load Balancing's +// API operation AddTrustStoreRevocations for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeInvalidRevocationContentException "InvalidRevocationContent" +// The provided revocation file is an invalid format, or uses an incorrect algorithm. +// +// - ErrCodeTooManyTrustStoreRevocationEntriesException "TooManyTrustStoreRevocationEntries" +// The specified trust store has too many revocation entries. +// +// - ErrCodeRevocationContentNotFoundException "RevocationContentNotFound" +// The specified revocation file does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTrustStoreRevocations +func (c *ELBV2) AddTrustStoreRevocations(input *AddTrustStoreRevocationsInput) (*AddTrustStoreRevocationsOutput, error) { + req, out := c.AddTrustStoreRevocationsRequest(input) + return out, req.Send() +} + +// AddTrustStoreRevocationsWithContext is the same as AddTrustStoreRevocations with the addition of +// the ability to pass a context and additional request options. +// +// See AddTrustStoreRevocations 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 *ELBV2) AddTrustStoreRevocationsWithContext(ctx aws.Context, input *AddTrustStoreRevocationsInput, opts ...request.Option) (*AddTrustStoreRevocationsOutput, error) { + req, out := c.AddTrustStoreRevocationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateListener = "CreateListener" // CreateListenerRequest generates a "aws/request.Request" representing the @@ -328,7 +419,13 @@ // The specified ALPN policy is not supported. // // - ErrCodeTooManyTagsException "TooManyTags" -// You've reached the limit on the number of tags per load balancer. +// You've reached the limit on the number of tags for this resource. +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeTrustStoreNotReadyException "TrustStoreNotReady" +// The specified trust store is not active. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListener func (c *ELBV2) CreateListener(input *CreateListenerInput) (*CreateListenerOutput, error) { @@ -442,7 +539,7 @@ // The requested scheme is not valid. // // - ErrCodeTooManyTagsException "TooManyTags" -// You've reached the limit on the number of tags per load balancer. +// You've reached the limit on the number of tags for this resource. // // - ErrCodeDuplicateTagKeysException "DuplicateTagKeys" // A tag key was specified more than once. @@ -590,7 +687,7 @@ // load balancer, it is counted as only one use. // // - ErrCodeTooManyTagsException "TooManyTags" -// You've reached the limit on the number of tags per load balancer. +// You've reached the limit on the number of tags for this resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRule func (c *ELBV2) CreateRule(input *CreateRuleInput) (*CreateRuleOutput, error) { @@ -691,7 +788,7 @@ // The requested configuration is not valid. // // - ErrCodeTooManyTagsException "TooManyTags" -// You've reached the limit on the number of tags per load balancer. +// You've reached the limit on the number of tags for this resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroup func (c *ELBV2) CreateTargetGroup(input *CreateTargetGroupInput) (*CreateTargetGroupOutput, error) { @@ -715,6 +812,101 @@ return out, req.Send() } +const opCreateTrustStore = "CreateTrustStore" + +// CreateTrustStoreRequest generates a "aws/request.Request" representing the +// client's request for the CreateTrustStore 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 CreateTrustStore for more information on using the CreateTrustStore +// 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 CreateTrustStoreRequest method. +// req, resp := client.CreateTrustStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTrustStore +func (c *ELBV2) CreateTrustStoreRequest(input *CreateTrustStoreInput) (req *request.Request, output *CreateTrustStoreOutput) { + op := &request.Operation{ + Name: opCreateTrustStore, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateTrustStoreInput{} + } + + output = &CreateTrustStoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTrustStore API operation for Elastic Load Balancing. +// +// Creates a trust store. +// +// 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 Elastic Load Balancing's +// API operation CreateTrustStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeDuplicateTrustStoreNameException "DuplicateTrustStoreName" +// A trust store with the specified name already exists. +// +// - ErrCodeTooManyTrustStoresException "TooManyTrustStores" +// You've reached the limit on the number of trust stores for your Amazon Web +// Services account. +// +// - ErrCodeInvalidCaCertificatesBundleException "InvalidCaCertificatesBundle" +// The specified ca certificate bundle is in an invalid format, or corrupt. +// +// - ErrCodeCaCertificatesBundleNotFoundException "CaCertificatesBundleNotFound" +// The specified ca certificate bundle does not exist. +// +// - ErrCodeTooManyTagsException "TooManyTags" +// You've reached the limit on the number of tags for this resource. +// +// - ErrCodeDuplicateTagKeysException "DuplicateTagKeys" +// A tag key was specified more than once. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTrustStore +func (c *ELBV2) CreateTrustStore(input *CreateTrustStoreInput) (*CreateTrustStoreOutput, error) { + req, out := c.CreateTrustStoreRequest(input) + return out, req.Send() +} + +// CreateTrustStoreWithContext is the same as CreateTrustStore with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTrustStore 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 *ELBV2) CreateTrustStoreWithContext(ctx aws.Context, input *CreateTrustStoreInput, opts ...request.Option) (*CreateTrustStoreOutput, error) { + req, out := c.CreateTrustStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteListener = "DeleteListener" // DeleteListenerRequest generates a "aws/request.Request" representing the @@ -1065,6 +1257,89 @@ return out, req.Send() } +const opDeleteTrustStore = "DeleteTrustStore" + +// DeleteTrustStoreRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTrustStore 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 DeleteTrustStore for more information on using the DeleteTrustStore +// 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 DeleteTrustStoreRequest method. +// req, resp := client.DeleteTrustStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTrustStore +func (c *ELBV2) DeleteTrustStoreRequest(input *DeleteTrustStoreInput) (req *request.Request, output *DeleteTrustStoreOutput) { + op := &request.Operation{ + Name: opDeleteTrustStore, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteTrustStoreInput{} + } + + output = &DeleteTrustStoreOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTrustStore API operation for Elastic Load Balancing. +// +// Deletes a trust store. +// +// 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 Elastic Load Balancing's +// API operation DeleteTrustStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeTrustStoreInUseException "TrustStoreInUse" +// The specified trust store is currently in use. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTrustStore +func (c *ELBV2) DeleteTrustStore(input *DeleteTrustStoreInput) (*DeleteTrustStoreOutput, error) { + req, out := c.DeleteTrustStoreRequest(input) + return out, req.Send() +} + +// DeleteTrustStoreWithContext is the same as DeleteTrustStore with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTrustStore 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 *ELBV2) DeleteTrustStoreWithContext(ctx aws.Context, input *DeleteTrustStoreInput, opts ...request.Option) (*DeleteTrustStoreOutput, error) { + req, out := c.DeleteTrustStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeregisterTargets = "DeregisterTargets" // DeregisterTargetsRequest generates a "aws/request.Request" representing the @@ -1943,6 +2218,9 @@ // - ErrCodeRuleNotFoundException "RuleNotFound" // The specified rule does not exist. // +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTags func (c *ELBV2) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) @@ -2283,6 +2561,581 @@ return out, req.Send() } +const opDescribeTrustStoreAssociations = "DescribeTrustStoreAssociations" + +// DescribeTrustStoreAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTrustStoreAssociations 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 DescribeTrustStoreAssociations for more information on using the DescribeTrustStoreAssociations +// 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 DescribeTrustStoreAssociationsRequest method. +// req, resp := client.DescribeTrustStoreAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTrustStoreAssociations +func (c *ELBV2) DescribeTrustStoreAssociationsRequest(input *DescribeTrustStoreAssociationsInput) (req *request.Request, output *DescribeTrustStoreAssociationsOutput) { + op := &request.Operation{ + Name: opDescribeTrustStoreAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"NextMarker"}, + LimitToken: "PageSize", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeTrustStoreAssociationsInput{} + } + + output = &DescribeTrustStoreAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeTrustStoreAssociations API operation for Elastic Load Balancing. +// +// Describes all resources associated with the specified trust store. +// +// 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 Elastic Load Balancing's +// API operation DescribeTrustStoreAssociations for usage and error information. +// +// Returned Error Codes: +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTrustStoreAssociations +func (c *ELBV2) DescribeTrustStoreAssociations(input *DescribeTrustStoreAssociationsInput) (*DescribeTrustStoreAssociationsOutput, error) { + req, out := c.DescribeTrustStoreAssociationsRequest(input) + return out, req.Send() +} + +// DescribeTrustStoreAssociationsWithContext is the same as DescribeTrustStoreAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeTrustStoreAssociations 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 *ELBV2) DescribeTrustStoreAssociationsWithContext(ctx aws.Context, input *DescribeTrustStoreAssociationsInput, opts ...request.Option) (*DescribeTrustStoreAssociationsOutput, error) { + req, out := c.DescribeTrustStoreAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeTrustStoreAssociationsPages iterates over the pages of a DescribeTrustStoreAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeTrustStoreAssociations 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 DescribeTrustStoreAssociations operation. +// pageNum := 0 +// err := client.DescribeTrustStoreAssociationsPages(params, +// func(page *elbv2.DescribeTrustStoreAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ELBV2) DescribeTrustStoreAssociationsPages(input *DescribeTrustStoreAssociationsInput, fn func(*DescribeTrustStoreAssociationsOutput, bool) bool) error { + return c.DescribeTrustStoreAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeTrustStoreAssociationsPagesWithContext same as DescribeTrustStoreAssociationsPages 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 *ELBV2) DescribeTrustStoreAssociationsPagesWithContext(ctx aws.Context, input *DescribeTrustStoreAssociationsInput, fn func(*DescribeTrustStoreAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeTrustStoreAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTrustStoreAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeTrustStoreAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeTrustStoreRevocations = "DescribeTrustStoreRevocations" + +// DescribeTrustStoreRevocationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTrustStoreRevocations 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 DescribeTrustStoreRevocations for more information on using the DescribeTrustStoreRevocations +// 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 DescribeTrustStoreRevocationsRequest method. +// req, resp := client.DescribeTrustStoreRevocationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTrustStoreRevocations +func (c *ELBV2) DescribeTrustStoreRevocationsRequest(input *DescribeTrustStoreRevocationsInput) (req *request.Request, output *DescribeTrustStoreRevocationsOutput) { + op := &request.Operation{ + Name: opDescribeTrustStoreRevocations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"NextMarker"}, + LimitToken: "PageSize", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeTrustStoreRevocationsInput{} + } + + output = &DescribeTrustStoreRevocationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeTrustStoreRevocations API operation for Elastic Load Balancing. +// +// Describes the revocation files in use by the specified trust store arn, or +// revocation ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Elastic Load Balancing's +// API operation DescribeTrustStoreRevocations for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeRevocationIdNotFoundException "RevocationIdNotFound" +// The specified revocation ID does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTrustStoreRevocations +func (c *ELBV2) DescribeTrustStoreRevocations(input *DescribeTrustStoreRevocationsInput) (*DescribeTrustStoreRevocationsOutput, error) { + req, out := c.DescribeTrustStoreRevocationsRequest(input) + return out, req.Send() +} + +// DescribeTrustStoreRevocationsWithContext is the same as DescribeTrustStoreRevocations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeTrustStoreRevocations 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 *ELBV2) DescribeTrustStoreRevocationsWithContext(ctx aws.Context, input *DescribeTrustStoreRevocationsInput, opts ...request.Option) (*DescribeTrustStoreRevocationsOutput, error) { + req, out := c.DescribeTrustStoreRevocationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeTrustStoreRevocationsPages iterates over the pages of a DescribeTrustStoreRevocations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeTrustStoreRevocations 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 DescribeTrustStoreRevocations operation. +// pageNum := 0 +// err := client.DescribeTrustStoreRevocationsPages(params, +// func(page *elbv2.DescribeTrustStoreRevocationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ELBV2) DescribeTrustStoreRevocationsPages(input *DescribeTrustStoreRevocationsInput, fn func(*DescribeTrustStoreRevocationsOutput, bool) bool) error { + return c.DescribeTrustStoreRevocationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeTrustStoreRevocationsPagesWithContext same as DescribeTrustStoreRevocationsPages 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 *ELBV2) DescribeTrustStoreRevocationsPagesWithContext(ctx aws.Context, input *DescribeTrustStoreRevocationsInput, fn func(*DescribeTrustStoreRevocationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeTrustStoreRevocationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTrustStoreRevocationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeTrustStoreRevocationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeTrustStores = "DescribeTrustStores" + +// DescribeTrustStoresRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTrustStores 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 DescribeTrustStores for more information on using the DescribeTrustStores +// 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 DescribeTrustStoresRequest method. +// req, resp := client.DescribeTrustStoresRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTrustStores +func (c *ELBV2) DescribeTrustStoresRequest(input *DescribeTrustStoresInput) (req *request.Request, output *DescribeTrustStoresOutput) { + op := &request.Operation{ + Name: opDescribeTrustStores, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"NextMarker"}, + LimitToken: "PageSize", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeTrustStoresInput{} + } + + output = &DescribeTrustStoresOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeTrustStores API operation for Elastic Load Balancing. +// +// Describes all trust stores for a given account by trust store arn’s or +// 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 Elastic Load Balancing's +// API operation DescribeTrustStores for usage and error information. +// +// Returned Error Codes: +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTrustStores +func (c *ELBV2) DescribeTrustStores(input *DescribeTrustStoresInput) (*DescribeTrustStoresOutput, error) { + req, out := c.DescribeTrustStoresRequest(input) + return out, req.Send() +} + +// DescribeTrustStoresWithContext is the same as DescribeTrustStores with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeTrustStores 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 *ELBV2) DescribeTrustStoresWithContext(ctx aws.Context, input *DescribeTrustStoresInput, opts ...request.Option) (*DescribeTrustStoresOutput, error) { + req, out := c.DescribeTrustStoresRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeTrustStoresPages iterates over the pages of a DescribeTrustStores operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeTrustStores 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 DescribeTrustStores operation. +// pageNum := 0 +// err := client.DescribeTrustStoresPages(params, +// func(page *elbv2.DescribeTrustStoresOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ELBV2) DescribeTrustStoresPages(input *DescribeTrustStoresInput, fn func(*DescribeTrustStoresOutput, bool) bool) error { + return c.DescribeTrustStoresPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeTrustStoresPagesWithContext same as DescribeTrustStoresPages 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 *ELBV2) DescribeTrustStoresPagesWithContext(ctx aws.Context, input *DescribeTrustStoresInput, fn func(*DescribeTrustStoresOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeTrustStoresInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTrustStoresRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeTrustStoresOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opGetTrustStoreCaCertificatesBundle = "GetTrustStoreCaCertificatesBundle" + +// GetTrustStoreCaCertificatesBundleRequest generates a "aws/request.Request" representing the +// client's request for the GetTrustStoreCaCertificatesBundle 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 GetTrustStoreCaCertificatesBundle for more information on using the GetTrustStoreCaCertificatesBundle +// 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 GetTrustStoreCaCertificatesBundleRequest method. +// req, resp := client.GetTrustStoreCaCertificatesBundleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/GetTrustStoreCaCertificatesBundle +func (c *ELBV2) GetTrustStoreCaCertificatesBundleRequest(input *GetTrustStoreCaCertificatesBundleInput) (req *request.Request, output *GetTrustStoreCaCertificatesBundleOutput) { + op := &request.Operation{ + Name: opGetTrustStoreCaCertificatesBundle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTrustStoreCaCertificatesBundleInput{} + } + + output = &GetTrustStoreCaCertificatesBundleOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTrustStoreCaCertificatesBundle API operation for Elastic Load Balancing. +// +// Retrieves the ca certificate bundle. +// +// This action returns a pre-signed S3 URI which is active for ten minutes. +// +// 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 Elastic Load Balancing's +// API operation GetTrustStoreCaCertificatesBundle for usage and error information. +// +// Returned Error Codes: +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/GetTrustStoreCaCertificatesBundle +func (c *ELBV2) GetTrustStoreCaCertificatesBundle(input *GetTrustStoreCaCertificatesBundleInput) (*GetTrustStoreCaCertificatesBundleOutput, error) { + req, out := c.GetTrustStoreCaCertificatesBundleRequest(input) + return out, req.Send() +} + +// GetTrustStoreCaCertificatesBundleWithContext is the same as GetTrustStoreCaCertificatesBundle with the addition of +// the ability to pass a context and additional request options. +// +// See GetTrustStoreCaCertificatesBundle 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 *ELBV2) GetTrustStoreCaCertificatesBundleWithContext(ctx aws.Context, input *GetTrustStoreCaCertificatesBundleInput, opts ...request.Option) (*GetTrustStoreCaCertificatesBundleOutput, error) { + req, out := c.GetTrustStoreCaCertificatesBundleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTrustStoreRevocationContent = "GetTrustStoreRevocationContent" + +// GetTrustStoreRevocationContentRequest generates a "aws/request.Request" representing the +// client's request for the GetTrustStoreRevocationContent 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 GetTrustStoreRevocationContent for more information on using the GetTrustStoreRevocationContent +// 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 GetTrustStoreRevocationContentRequest method. +// req, resp := client.GetTrustStoreRevocationContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/GetTrustStoreRevocationContent +func (c *ELBV2) GetTrustStoreRevocationContentRequest(input *GetTrustStoreRevocationContentInput) (req *request.Request, output *GetTrustStoreRevocationContentOutput) { + op := &request.Operation{ + Name: opGetTrustStoreRevocationContent, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTrustStoreRevocationContentInput{} + } + + output = &GetTrustStoreRevocationContentOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTrustStoreRevocationContent API operation for Elastic Load Balancing. +// +// Retrieves the specified revocation file. +// +// This action returns a pre-signed S3 URI which is active for ten minutes. +// +// 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 Elastic Load Balancing's +// API operation GetTrustStoreRevocationContent for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeRevocationIdNotFoundException "RevocationIdNotFound" +// The specified revocation ID does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/GetTrustStoreRevocationContent +func (c *ELBV2) GetTrustStoreRevocationContent(input *GetTrustStoreRevocationContentInput) (*GetTrustStoreRevocationContentOutput, error) { + req, out := c.GetTrustStoreRevocationContentRequest(input) + return out, req.Send() +} + +// GetTrustStoreRevocationContentWithContext is the same as GetTrustStoreRevocationContent with the addition of +// the ability to pass a context and additional request options. +// +// See GetTrustStoreRevocationContent 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 *ELBV2) GetTrustStoreRevocationContentWithContext(ctx aws.Context, input *GetTrustStoreRevocationContentInput, opts ...request.Option) (*GetTrustStoreRevocationContentOutput, error) { + req, out := c.GetTrustStoreRevocationContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opModifyListener = "ModifyListener" // ModifyListenerRequest generates a "aws/request.Request" representing the @@ -2401,6 +3254,12 @@ // - ErrCodeALPNPolicyNotSupportedException "ALPNPolicyNotFound" // The specified ALPN policy is not supported. // +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeTrustStoreNotReadyException "TrustStoreNotReady" +// The specified trust store is not active. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListener func (c *ELBV2) ModifyListener(input *ModifyListenerInput) (*ModifyListenerOutput, error) { req, out := c.ModifyListenerRequest(input) @@ -2792,6 +3651,91 @@ return out, req.Send() } +const opModifyTrustStore = "ModifyTrustStore" + +// ModifyTrustStoreRequest generates a "aws/request.Request" representing the +// client's request for the ModifyTrustStore 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 ModifyTrustStore for more information on using the ModifyTrustStore +// 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 ModifyTrustStoreRequest method. +// req, resp := client.ModifyTrustStoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTrustStore +func (c *ELBV2) ModifyTrustStoreRequest(input *ModifyTrustStoreInput) (req *request.Request, output *ModifyTrustStoreOutput) { + op := &request.Operation{ + Name: opModifyTrustStore, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ModifyTrustStoreInput{} + } + + output = &ModifyTrustStoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// ModifyTrustStore API operation for Elastic Load Balancing. +// +// Update the ca certificate bundle for a given trust store. +// +// 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 Elastic Load Balancing's +// API operation ModifyTrustStore for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeInvalidCaCertificatesBundleException "InvalidCaCertificatesBundle" +// The specified ca certificate bundle is in an invalid format, or corrupt. +// +// - ErrCodeCaCertificatesBundleNotFoundException "CaCertificatesBundleNotFound" +// The specified ca certificate bundle does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTrustStore +func (c *ELBV2) ModifyTrustStore(input *ModifyTrustStoreInput) (*ModifyTrustStoreOutput, error) { + req, out := c.ModifyTrustStoreRequest(input) + return out, req.Send() +} + +// ModifyTrustStoreWithContext is the same as ModifyTrustStore with the addition of +// the ability to pass a context and additional request options. +// +// See ModifyTrustStore 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 *ELBV2) ModifyTrustStoreWithContext(ctx aws.Context, input *ModifyTrustStoreInput, opts ...request.Option) (*ModifyTrustStoreOutput, error) { + req, out := c.ModifyTrustStoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opRegisterTargets = "RegisterTargets" // RegisterTargetsRequest generates a "aws/request.Request" representing the @@ -3050,7 +3994,10 @@ // The specified rule does not exist. // // - ErrCodeTooManyTagsException "TooManyTags" -// You've reached the limit on the number of tags per load balancer. +// You've reached the limit on the number of tags for this resource. +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTags func (c *ELBV2) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { @@ -3074,6 +4021,89 @@ return out, req.Send() } +const opRemoveTrustStoreRevocations = "RemoveTrustStoreRevocations" + +// RemoveTrustStoreRevocationsRequest generates a "aws/request.Request" representing the +// client's request for the RemoveTrustStoreRevocations 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 RemoveTrustStoreRevocations for more information on using the RemoveTrustStoreRevocations +// 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 RemoveTrustStoreRevocationsRequest method. +// req, resp := client.RemoveTrustStoreRevocationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTrustStoreRevocations +func (c *ELBV2) RemoveTrustStoreRevocationsRequest(input *RemoveTrustStoreRevocationsInput) (req *request.Request, output *RemoveTrustStoreRevocationsOutput) { + op := &request.Operation{ + Name: opRemoveTrustStoreRevocations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RemoveTrustStoreRevocationsInput{} + } + + output = &RemoveTrustStoreRevocationsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// RemoveTrustStoreRevocations API operation for Elastic Load Balancing. +// +// Removes the specified revocation file from the specified trust store. +// +// 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 Elastic Load Balancing's +// API operation RemoveTrustStoreRevocations for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeTrustStoreNotFoundException "TrustStoreNotFound" +// The specified trust store does not exist. +// +// - ErrCodeRevocationIdNotFoundException "RevocationIdNotFound" +// The specified revocation ID does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTrustStoreRevocations +func (c *ELBV2) RemoveTrustStoreRevocations(input *RemoveTrustStoreRevocationsInput) (*RemoveTrustStoreRevocationsOutput, error) { + req, out := c.RemoveTrustStoreRevocationsRequest(input) + return out, req.Send() +} + +// RemoveTrustStoreRevocationsWithContext is the same as RemoveTrustStoreRevocations with the addition of +// the ability to pass a context and additional request options. +// +// See RemoveTrustStoreRevocations 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 *ELBV2) RemoveTrustStoreRevocationsWithContext(ctx aws.Context, input *RemoveTrustStoreRevocationsInput, opts ...request.Option) (*RemoveTrustStoreRevocationsOutput, error) { + req, out := c.RemoveTrustStoreRevocationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opSetIpAddressType = "SetIpAddressType" // SetIpAddressTypeRequest generates a "aws/request.Request" representing the @@ -3384,12 +4414,12 @@ // SetSubnets API operation for Elastic Load Balancing. // // Enables the Availability Zones for the specified public subnets for the specified -// Application Load Balancer or Network Load Balancer. The specified subnets -// replace the previously enabled subnets. +// Application Load Balancer, Network Load Balancer or Gateway Load Balancer. +// The specified subnets replace the previously enabled subnets. // -// When you specify subnets for a Network Load Balancer, you must include all -// subnets that were enabled previously, with their existing configurations, -// plus any additional subnets. +// When you specify subnets for a Network Load Balancer, or Gateway Load Balancer +// you must include all subnets that were enabled previously, with their existing +// configurations, plus any additional subnets. // // 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 @@ -3774,6 +4804,133 @@ return s.String() } +type AddTrustStoreRevocationsInput struct { + _ struct{} `type:"structure"` + + // The revocation file to add. + RevocationContents []*RevocationContent `type:"list"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AddTrustStoreRevocationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AddTrustStoreRevocationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AddTrustStoreRevocationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AddTrustStoreRevocationsInput"} + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRevocationContents sets the RevocationContents field's value. +func (s *AddTrustStoreRevocationsInput) SetRevocationContents(v []*RevocationContent) *AddTrustStoreRevocationsInput { + s.RevocationContents = v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *AddTrustStoreRevocationsInput) SetTrustStoreArn(v string) *AddTrustStoreRevocationsInput { + s.TrustStoreArn = &v + return s +} + +type AddTrustStoreRevocationsOutput struct { + _ struct{} `type:"structure"` + + // Information about the revocation file added to the trust store. + TrustStoreRevocations []*TrustStoreRevocation `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 AddTrustStoreRevocationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AddTrustStoreRevocationsOutput) GoString() string { + return s.String() +} + +// SetTrustStoreRevocations sets the TrustStoreRevocations field's value. +func (s *AddTrustStoreRevocationsOutput) SetTrustStoreRevocations(v []*TrustStoreRevocation) *AddTrustStoreRevocationsOutput { + s.TrustStoreRevocations = v + return s +} + +// Information about anomaly detection and mitigation. +type AnomalyDetection struct { + _ struct{} `type:"structure"` + + // Indicates whether anomaly mitigation is in progress. + MitigationInEffect *string `type:"string" enum:"MitigationInEffectEnum"` + + // The latest anomaly detection result. + Result *string `type:"string" enum:"AnomalyResultEnum"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyDetection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyDetection) GoString() string { + return s.String() +} + +// SetMitigationInEffect sets the MitigationInEffect field's value. +func (s *AnomalyDetection) SetMitigationInEffect(v string) *AnomalyDetection { + s.MitigationInEffect = &v + return s +} + +// SetResult sets the Result field's value. +func (s *AnomalyDetection) SetResult(v string) *AnomalyDetection { + s.Result = &v + return s +} + // Request parameters to use when integrating with Amazon Cognito to authenticate // users. type AuthenticateCognitoActionConfig struct { @@ -4280,6 +5437,9 @@ // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` + // The mutual authentication configuration information. + MutualAuthentication *MutualAuthenticationAttributes `type:"structure"` + // The port on which the load balancer is listening. You cannot specify a port // for a Gateway Load Balancer. Port *int64 `min:"1" type:"integer"` @@ -4387,6 +5547,12 @@ return s } +// SetMutualAuthentication sets the MutualAuthentication field's value. +func (s *CreateListenerInput) SetMutualAuthentication(v *MutualAuthenticationAttributes) *CreateListenerInput { + s.MutualAuthentication = v + return s +} + // SetPort sets the Port field's value. func (s *CreateListenerInput) SetPort(v int64) *CreateListenerInput { s.Port = &v @@ -5131,6 +6297,148 @@ return s } +type CreateTrustStoreInput struct { + _ struct{} `type:"structure"` + + // The Amazon S3 bucket for the ca certificates bundle. + // + // CaCertificatesBundleS3Bucket is a required field + CaCertificatesBundleS3Bucket *string `type:"string" required:"true"` + + // The Amazon S3 path for the ca certificates bundle. + // + // CaCertificatesBundleS3Key is a required field + CaCertificatesBundleS3Key *string `type:"string" required:"true"` + + // The Amazon S3 object version for the ca certificates bundle. If undefined + // the current version is used. + CaCertificatesBundleS3ObjectVersion *string `type:"string"` + + // The name of the trust store. + // + // This name must be unique per region and cannot be changed after creation. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The tags to assign to the trust store. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTrustStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTrustStoreInput"} + if s.CaCertificatesBundleS3Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("CaCertificatesBundleS3Bucket")) + } + if s.CaCertificatesBundleS3Key == nil { + invalidParams.Add(request.NewErrParamRequired("CaCertificatesBundleS3Key")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCaCertificatesBundleS3Bucket sets the CaCertificatesBundleS3Bucket field's value. +func (s *CreateTrustStoreInput) SetCaCertificatesBundleS3Bucket(v string) *CreateTrustStoreInput { + s.CaCertificatesBundleS3Bucket = &v + return s +} + +// SetCaCertificatesBundleS3Key sets the CaCertificatesBundleS3Key field's value. +func (s *CreateTrustStoreInput) SetCaCertificatesBundleS3Key(v string) *CreateTrustStoreInput { + s.CaCertificatesBundleS3Key = &v + return s +} + +// SetCaCertificatesBundleS3ObjectVersion sets the CaCertificatesBundleS3ObjectVersion field's value. +func (s *CreateTrustStoreInput) SetCaCertificatesBundleS3ObjectVersion(v string) *CreateTrustStoreInput { + s.CaCertificatesBundleS3ObjectVersion = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTrustStoreInput) SetName(v string) *CreateTrustStoreInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTrustStoreInput) SetTags(v []*Tag) *CreateTrustStoreInput { + s.Tags = v + return s +} + +type CreateTrustStoreOutput struct { + _ struct{} `type:"structure"` + + // Information about the trust store created. + TrustStores []*TrustStore `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 CreateTrustStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustStoreOutput) GoString() string { + return s.String() +} + +// SetTrustStores sets the TrustStores field's value. +func (s *CreateTrustStoreOutput) SetTrustStores(v []*TrustStore) *CreateTrustStoreOutput { + s.TrustStores = v + return s +} + type DeleteListenerInput struct { _ struct{} `type:"structure"` @@ -5403,6 +6711,74 @@ return s.String() } +type DeleteTrustStoreInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrustStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrustStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTrustStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTrustStoreInput"} + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *DeleteTrustStoreInput) SetTrustStoreArn(v string) *DeleteTrustStoreInput { + s.TrustStoreArn = &v + return s +} + +type DeleteTrustStoreOutput 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 DeleteTrustStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrustStoreOutput) GoString() string { + return s.String() +} + type DeregisterTargetsInput struct { _ struct{} `type:"structure"` @@ -6511,6 +7887,9 @@ type DescribeTargetHealthInput struct { _ struct{} `type:"structure"` + // Used to inclue anomaly detection information. + Include []*string `type:"list" enum:"DescribeTargetHealthInputIncludeEnum"` + // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field @@ -6561,6 +7940,12 @@ return nil } +// SetInclude sets the Include field's value. +func (s *DescribeTargetHealthInput) SetInclude(v []*string) *DescribeTargetHealthInput { + s.Include = v + return s +} + // SetTargetGroupArn sets the TargetGroupArn field's value. func (s *DescribeTargetHealthInput) SetTargetGroupArn(v string) *DescribeTargetHealthInput { s.TargetGroupArn = &v @@ -6604,6 +7989,405 @@ return s } +type DescribeTrustStoreAssociationsInput struct { + _ struct{} `type:"structure"` + + // The marker for the next set of results. (You received this marker from a + // previous call.) + Marker *string `type:"string"` + + // The maximum number of results to return with this call. + PageSize *int64 `min:"1" type:"integer"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeTrustStoreAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTrustStoreAssociationsInput"} + if s.PageSize != nil && *s.PageSize < 1 { + invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) + } + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMarker sets the Marker field's value. +func (s *DescribeTrustStoreAssociationsInput) SetMarker(v string) *DescribeTrustStoreAssociationsInput { + s.Marker = &v + return s +} + +// SetPageSize sets the PageSize field's value. +func (s *DescribeTrustStoreAssociationsInput) SetPageSize(v int64) *DescribeTrustStoreAssociationsInput { + s.PageSize = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *DescribeTrustStoreAssociationsInput) SetTrustStoreArn(v string) *DescribeTrustStoreAssociationsInput { + s.TrustStoreArn = &v + return s +} + +type DescribeTrustStoreAssociationsOutput struct { + _ struct{} `type:"structure"` + + // If there are additional results, this is the marker for the next set of results. + // Otherwise, this is null. + NextMarker *string `type:"string"` + + // Information about the resources the trust store is associated to. + TrustStoreAssociations []*TrustStoreAssociation `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 DescribeTrustStoreAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreAssociationsOutput) GoString() string { + return s.String() +} + +// SetNextMarker sets the NextMarker field's value. +func (s *DescribeTrustStoreAssociationsOutput) SetNextMarker(v string) *DescribeTrustStoreAssociationsOutput { + s.NextMarker = &v + return s +} + +// SetTrustStoreAssociations sets the TrustStoreAssociations field's value. +func (s *DescribeTrustStoreAssociationsOutput) SetTrustStoreAssociations(v []*TrustStoreAssociation) *DescribeTrustStoreAssociationsOutput { + s.TrustStoreAssociations = v + return s +} + +// Information about the revocations used by a trust store. +type DescribeTrustStoreRevocation struct { + _ struct{} `type:"structure"` + + // The number of revoked certificates. + NumberOfRevokedEntries *int64 `type:"long"` + + // The revocation ID of a revocation file in use. + RevocationId *int64 `type:"long"` + + // The type of revocation file. + RevocationType *string `type:"string" enum:"RevocationType"` + + // The Amazon Resource Name (ARN) of the trust store. + TrustStoreArn *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 DescribeTrustStoreRevocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreRevocation) GoString() string { + return s.String() +} + +// SetNumberOfRevokedEntries sets the NumberOfRevokedEntries field's value. +func (s *DescribeTrustStoreRevocation) SetNumberOfRevokedEntries(v int64) *DescribeTrustStoreRevocation { + s.NumberOfRevokedEntries = &v + return s +} + +// SetRevocationId sets the RevocationId field's value. +func (s *DescribeTrustStoreRevocation) SetRevocationId(v int64) *DescribeTrustStoreRevocation { + s.RevocationId = &v + return s +} + +// SetRevocationType sets the RevocationType field's value. +func (s *DescribeTrustStoreRevocation) SetRevocationType(v string) *DescribeTrustStoreRevocation { + s.RevocationType = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *DescribeTrustStoreRevocation) SetTrustStoreArn(v string) *DescribeTrustStoreRevocation { + s.TrustStoreArn = &v + return s +} + +type DescribeTrustStoreRevocationsInput struct { + _ struct{} `type:"structure"` + + // The marker for the next set of results. (You received this marker from a + // previous call.) + Marker *string `type:"string"` + + // The maximum number of results to return with this call. + PageSize *int64 `min:"1" type:"integer"` + + // The revocation IDs of the revocation files you want to describe. + RevocationIds []*int64 `type:"list"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreRevocationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreRevocationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeTrustStoreRevocationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTrustStoreRevocationsInput"} + if s.PageSize != nil && *s.PageSize < 1 { + invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) + } + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMarker sets the Marker field's value. +func (s *DescribeTrustStoreRevocationsInput) SetMarker(v string) *DescribeTrustStoreRevocationsInput { + s.Marker = &v + return s +} + +// SetPageSize sets the PageSize field's value. +func (s *DescribeTrustStoreRevocationsInput) SetPageSize(v int64) *DescribeTrustStoreRevocationsInput { + s.PageSize = &v + return s +} + +// SetRevocationIds sets the RevocationIds field's value. +func (s *DescribeTrustStoreRevocationsInput) SetRevocationIds(v []*int64) *DescribeTrustStoreRevocationsInput { + s.RevocationIds = v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *DescribeTrustStoreRevocationsInput) SetTrustStoreArn(v string) *DescribeTrustStoreRevocationsInput { + s.TrustStoreArn = &v + return s +} + +type DescribeTrustStoreRevocationsOutput struct { + _ struct{} `type:"structure"` + + // If there are additional results, this is the marker for the next set of results. + // Otherwise, this is null. + NextMarker *string `type:"string"` + + // Information about the revocation file in the trust store. + TrustStoreRevocations []*DescribeTrustStoreRevocation `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 DescribeTrustStoreRevocationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoreRevocationsOutput) GoString() string { + return s.String() +} + +// SetNextMarker sets the NextMarker field's value. +func (s *DescribeTrustStoreRevocationsOutput) SetNextMarker(v string) *DescribeTrustStoreRevocationsOutput { + s.NextMarker = &v + return s +} + +// SetTrustStoreRevocations sets the TrustStoreRevocations field's value. +func (s *DescribeTrustStoreRevocationsOutput) SetTrustStoreRevocations(v []*DescribeTrustStoreRevocation) *DescribeTrustStoreRevocationsOutput { + s.TrustStoreRevocations = v + return s +} + +type DescribeTrustStoresInput struct { + _ struct{} `type:"structure"` + + // The marker for the next set of results. (You received this marker from a + // previous call.) + Marker *string `type:"string"` + + // The names of the trust stores. + Names []*string `type:"list"` + + // The maximum number of results to return with this call. + PageSize *int64 `min:"1" type:"integer"` + + // The Amazon Resource Name (ARN) of the trust store. + TrustStoreArns []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoresInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoresInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeTrustStoresInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTrustStoresInput"} + if s.PageSize != nil && *s.PageSize < 1 { + invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMarker sets the Marker field's value. +func (s *DescribeTrustStoresInput) SetMarker(v string) *DescribeTrustStoresInput { + s.Marker = &v + return s +} + +// SetNames sets the Names field's value. +func (s *DescribeTrustStoresInput) SetNames(v []*string) *DescribeTrustStoresInput { + s.Names = v + return s +} + +// SetPageSize sets the PageSize field's value. +func (s *DescribeTrustStoresInput) SetPageSize(v int64) *DescribeTrustStoresInput { + s.PageSize = &v + return s +} + +// SetTrustStoreArns sets the TrustStoreArns field's value. +func (s *DescribeTrustStoresInput) SetTrustStoreArns(v []*string) *DescribeTrustStoresInput { + s.TrustStoreArns = v + return s +} + +type DescribeTrustStoresOutput struct { + _ struct{} `type:"structure"` + + // If there are additional results, this is the marker for the next set of results. + // Otherwise, this is null. + NextMarker *string `type:"string"` + + // Information about the trust stores. + TrustStores []*TrustStore `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 DescribeTrustStoresOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustStoresOutput) GoString() string { + return s.String() +} + +// SetNextMarker sets the NextMarker field's value. +func (s *DescribeTrustStoresOutput) SetNextMarker(v string) *DescribeTrustStoresOutput { + s.NextMarker = &v + return s +} + +// SetTrustStores sets the TrustStores field's value. +func (s *DescribeTrustStoresOutput) SetTrustStores(v []*TrustStore) *DescribeTrustStoresOutput { + s.TrustStores = v + return s +} + // Information about an action that returns a custom HTTP response. type FixedResponseActionConfig struct { _ struct{} `type:"structure"` @@ -6714,6 +8498,174 @@ return s } +type GetTrustStoreCaCertificatesBundleInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrustStoreCaCertificatesBundleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrustStoreCaCertificatesBundleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTrustStoreCaCertificatesBundleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTrustStoreCaCertificatesBundleInput"} + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *GetTrustStoreCaCertificatesBundleInput) SetTrustStoreArn(v string) *GetTrustStoreCaCertificatesBundleInput { + s.TrustStoreArn = &v + return s +} + +type GetTrustStoreCaCertificatesBundleOutput struct { + _ struct{} `type:"structure"` + + // The ca certificate bundles Amazon S3 URI. + Location *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 GetTrustStoreCaCertificatesBundleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrustStoreCaCertificatesBundleOutput) GoString() string { + return s.String() +} + +// SetLocation sets the Location field's value. +func (s *GetTrustStoreCaCertificatesBundleOutput) SetLocation(v string) *GetTrustStoreCaCertificatesBundleOutput { + s.Location = &v + return s +} + +type GetTrustStoreRevocationContentInput struct { + _ struct{} `type:"structure"` + + // The revocation ID of the revocation file. + // + // RevocationId is a required field + RevocationId *int64 `type:"long" required:"true"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrustStoreRevocationContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrustStoreRevocationContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTrustStoreRevocationContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTrustStoreRevocationContentInput"} + if s.RevocationId == nil { + invalidParams.Add(request.NewErrParamRequired("RevocationId")) + } + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRevocationId sets the RevocationId field's value. +func (s *GetTrustStoreRevocationContentInput) SetRevocationId(v int64) *GetTrustStoreRevocationContentInput { + s.RevocationId = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *GetTrustStoreRevocationContentInput) SetTrustStoreArn(v string) *GetTrustStoreRevocationContentInput { + s.TrustStoreArn = &v + return s +} + +type GetTrustStoreRevocationContentOutput struct { + _ struct{} `type:"structure"` + + // The revocation files Amazon S3 URI. + Location *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 GetTrustStoreRevocationContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTrustStoreRevocationContentOutput) GoString() string { + return s.String() +} + +// SetLocation sets the Location field's value. +func (s *GetTrustStoreRevocationContentOutput) SetLocation(v string) *GetTrustStoreRevocationContentOutput { + s.Location = &v + return s +} + // Information about a host header condition. type HostHeaderConditionConfig struct { _ struct{} `type:"structure"` @@ -6960,6 +8912,9 @@ // The Amazon Resource Name (ARN) of the load balancer. LoadBalancerArn *string `type:"string"` + // The mutual authentication configuration information. + MutualAuthentication *MutualAuthenticationAttributes `type:"structure"` + // The port on which the load balancer is listening. Port *int64 `min:"1" type:"integer"` @@ -7019,6 +8974,12 @@ return s } +// SetMutualAuthentication sets the MutualAuthentication field's value. +func (s *Listener) SetMutualAuthentication(v *MutualAuthenticationAttributes) *Listener { + s.MutualAuthentication = v + return s +} + // SetPort sets the Port field's value. func (s *Listener) SetPort(v int64) *Listener { s.Port = &v @@ -7298,6 +9259,17 @@ // * idle_timeout.timeout_seconds - The idle timeout value, in seconds. The // valid range is 1-4000 seconds. The default is 60 seconds. // + // * connection_logs.s3.enabled - Indicates whether connection logs are enabled. + // The value is true or false. The default is false. + // + // * connection_logs.s3.bucket - The name of the S3 bucket for the connection + // logs. This attribute is required if connection logs are enabled. The bucket + // must exist in the same region as the load balancer and have a bucket policy + // that grants Elastic Load Balancing permissions to write to the bucket. + // + // * connection_logs.s3.prefix - The prefix for the location in the S3 bucket + // for the connection logs. + // // * routing.http.desync_mitigation_mode - Determines how the load balancer // handles requests that might pose a security risk to your application. // The possible values are monitor, defensive, and strictest. The default @@ -7348,6 +9320,14 @@ // balancer to route requests to targets if it is unable to forward the request // to Amazon Web Services WAF. The possible values are true and false. The // default is false. + // + // The following attributes are supported by only Network Load Balancers: + // + // * dns_record.client_routing_policy - Indicates how traffic is distributed + // among the load balancer Availability Zones. The possible values are availability_zone_affinity + // with 100 percent zonal affinity, partial_availability_zone_affinity with + // 85 percent zonal affinity, and any_availability_zone with 0 percent zonal + // affinity. Key *string `type:"string"` // The value of the attribute. @@ -7518,6 +9498,9 @@ // ListenerArn is a required field ListenerArn *string `type:"string" required:"true"` + // The mutual authentication configuration information. + MutualAuthentication *MutualAuthenticationAttributes `type:"structure"` + // The port for connections from clients to the load balancer. You cannot specify // a port for a Gateway Load Balancer. Port *int64 `min:"1" type:"integer"` @@ -7606,6 +9589,12 @@ return s } +// SetMutualAuthentication sets the MutualAuthentication field's value. +func (s *ModifyListenerInput) SetMutualAuthentication(v *MutualAuthenticationAttributes) *ModifyListenerInput { + s.MutualAuthentication = v + return s +} + // SetPort sets the Port field's value. func (s *ModifyListenerInput) SetPort(v int64) *ModifyListenerInput { s.Port = &v @@ -8134,6 +10123,172 @@ return s } +type ModifyTrustStoreInput struct { + _ struct{} `type:"structure"` + + // The Amazon S3 bucket for the ca certificates bundle. + // + // CaCertificatesBundleS3Bucket is a required field + CaCertificatesBundleS3Bucket *string `type:"string" required:"true"` + + // The Amazon S3 path for the ca certificates bundle. + // + // CaCertificatesBundleS3Key is a required field + CaCertificatesBundleS3Key *string `type:"string" required:"true"` + + // The Amazon S3 object version for the ca certificates bundle. If undefined + // the current version is used. + CaCertificatesBundleS3ObjectVersion *string `type:"string"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyTrustStoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyTrustStoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModifyTrustStoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModifyTrustStoreInput"} + if s.CaCertificatesBundleS3Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("CaCertificatesBundleS3Bucket")) + } + if s.CaCertificatesBundleS3Key == nil { + invalidParams.Add(request.NewErrParamRequired("CaCertificatesBundleS3Key")) + } + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCaCertificatesBundleS3Bucket sets the CaCertificatesBundleS3Bucket field's value. +func (s *ModifyTrustStoreInput) SetCaCertificatesBundleS3Bucket(v string) *ModifyTrustStoreInput { + s.CaCertificatesBundleS3Bucket = &v + return s +} + +// SetCaCertificatesBundleS3Key sets the CaCertificatesBundleS3Key field's value. +func (s *ModifyTrustStoreInput) SetCaCertificatesBundleS3Key(v string) *ModifyTrustStoreInput { + s.CaCertificatesBundleS3Key = &v + return s +} + +// SetCaCertificatesBundleS3ObjectVersion sets the CaCertificatesBundleS3ObjectVersion field's value. +func (s *ModifyTrustStoreInput) SetCaCertificatesBundleS3ObjectVersion(v string) *ModifyTrustStoreInput { + s.CaCertificatesBundleS3ObjectVersion = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *ModifyTrustStoreInput) SetTrustStoreArn(v string) *ModifyTrustStoreInput { + s.TrustStoreArn = &v + return s +} + +type ModifyTrustStoreOutput struct { + _ struct{} `type:"structure"` + + // Information about the modified trust store. + TrustStores []*TrustStore `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 ModifyTrustStoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyTrustStoreOutput) GoString() string { + return s.String() +} + +// SetTrustStores sets the TrustStores field's value. +func (s *ModifyTrustStoreOutput) SetTrustStores(v []*TrustStore) *ModifyTrustStoreOutput { + s.TrustStores = v + return s +} + +// Information about the mutual authentication attributes of a listener. +type MutualAuthenticationAttributes struct { + _ struct{} `type:"structure"` + + // Indicates whether expired client certificates are ignored. + IgnoreClientCertificateExpiry *bool `type:"boolean"` + + // The client certificate handling method. Options are off, passthrough or verify. + // The default value is off. + Mode *string `type:"string"` + + // The Amazon Resource Name (ARN) of the trust store. + TrustStoreArn *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 MutualAuthenticationAttributes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MutualAuthenticationAttributes) GoString() string { + return s.String() +} + +// SetIgnoreClientCertificateExpiry sets the IgnoreClientCertificateExpiry field's value. +func (s *MutualAuthenticationAttributes) SetIgnoreClientCertificateExpiry(v bool) *MutualAuthenticationAttributes { + s.IgnoreClientCertificateExpiry = &v + return s +} + +// SetMode sets the Mode field's value. +func (s *MutualAuthenticationAttributes) SetMode(v string) *MutualAuthenticationAttributes { + s.Mode = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *MutualAuthenticationAttributes) SetTrustStoreArn(v string) *MutualAuthenticationAttributes { + s.TrustStoreArn = &v + return s +} + // Information about a path pattern condition. type PathPatternConditionConfig struct { _ struct{} `type:"structure"` @@ -8642,6 +10797,147 @@ return s.String() } +type RemoveTrustStoreRevocationsInput struct { + _ struct{} `type:"structure"` + + // The revocation IDs of the revocation files you want to remove. + // + // RevocationIds is a required field + RevocationIds []*int64 `type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the trust store. + // + // TrustStoreArn is a required field + TrustStoreArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RemoveTrustStoreRevocationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RemoveTrustStoreRevocationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RemoveTrustStoreRevocationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RemoveTrustStoreRevocationsInput"} + if s.RevocationIds == nil { + invalidParams.Add(request.NewErrParamRequired("RevocationIds")) + } + if s.TrustStoreArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustStoreArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRevocationIds sets the RevocationIds field's value. +func (s *RemoveTrustStoreRevocationsInput) SetRevocationIds(v []*int64) *RemoveTrustStoreRevocationsInput { + s.RevocationIds = v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *RemoveTrustStoreRevocationsInput) SetTrustStoreArn(v string) *RemoveTrustStoreRevocationsInput { + s.TrustStoreArn = &v + return s +} + +type RemoveTrustStoreRevocationsOutput 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 RemoveTrustStoreRevocationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RemoveTrustStoreRevocationsOutput) GoString() string { + return s.String() +} + +// Information about a revocation file. +type RevocationContent struct { + _ struct{} `type:"structure"` + + // The type of revocation file. + RevocationType *string `type:"string" enum:"RevocationType"` + + // The Amazon S3 bucket for the revocation file. + S3Bucket *string `type:"string"` + + // The Amazon S3 path for the revocation file. + S3Key *string `type:"string"` + + // The Amazon S3 object version of the revocation file. + S3ObjectVersion *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 RevocationContent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RevocationContent) GoString() string { + return s.String() +} + +// SetRevocationType sets the RevocationType field's value. +func (s *RevocationContent) SetRevocationType(v string) *RevocationContent { + s.RevocationType = &v + return s +} + +// SetS3Bucket sets the S3Bucket field's value. +func (s *RevocationContent) SetS3Bucket(v string) *RevocationContent { + s.S3Bucket = &v + return s +} + +// SetS3Key sets the S3Key field's value. +func (s *RevocationContent) SetS3Key(v string) *RevocationContent { + s.S3Key = &v + return s +} + +// SetS3ObjectVersion sets the S3ObjectVersion field's value. +func (s *RevocationContent) SetS3ObjectVersion(v string) *RevocationContent { + s.S3ObjectVersion = &v + return s +} + // Information about a rule. type Rule struct { _ struct{} `type:"structure"` @@ -9212,6 +11508,10 @@ // your load balancer. The possible values are ipv4 (for IPv4 addresses) and // dualstack (for IPv4 and IPv6 addresses). You can’t specify dualstack for // a load balancer with a UDP or TCP_UDP listener. + // + // [Gateway Load Balancers] The type of IP addresses used by the subnets for + // your load balancer. The possible values are ipv4 (for IPv4 addresses) and + // dualstack (for IPv4 and IPv6 addresses). IpAddressType *string `type:"string" enum:"IpAddressType"` // The Amazon Resource Name (ARN) of the load balancer. @@ -9236,6 +11536,9 @@ // you can specify one private IP address per subnet from the IPv4 range of // the subnet. For internet-facing load balancer, you can specify one IPv6 address // per subnet. + // + // [Gateway Load Balancers] You can specify subnets from one or more Availability + // Zones. SubnetMappings []*SubnetMapping `type:"list"` // The IDs of the public subnets. You can specify only one subnet per Availability @@ -9251,6 +11554,9 @@ // // [Network Load Balancers] You can specify subnets from one or more Availability // Zones. + // + // [Gateway Load Balancers] You can specify subnets from one or more Availability + // Zones. Subnets []*string `type:"list"` } @@ -9316,6 +11622,8 @@ AvailabilityZones []*AvailabilityZone `type:"list"` // [Network Load Balancers] The IP address type. + // + // [Gateway Load Balancers] The IP address type. IpAddressType *string `type:"string" enum:"IpAddressType"` } @@ -9966,7 +12274,12 @@ // // * load_balancing.algorithm.type - The load balancing algorithm determines // how the load balancer selects targets when routing requests. The value - // is round_robin or least_outstanding_requests. The default is round_robin. + // is round_robin, least_outstanding_requests, or weighted_random. The default + // is round_robin. + // + // * load_balancing.algorithm.anomaly_mitigation - Only available when load_balancing.algorithm.type + // is weighted_random. Indicates whether anomaly mitigation is enabled. The + // value is on or off. The default is off. // // * slow_start.duration_seconds - The time period, in seconds, during which // a newly registered target receives an increasing share of the traffic @@ -10267,6 +12580,13 @@ type TargetHealthDescription struct { _ struct{} `type:"structure"` + // The anomaly detection result for the target. + // + // If no anomalies were detected, the result is normal. + // + // If anomalies were detected, the result is anomalous. + AnomalyDetection *AnomalyDetection `type:"structure"` + // The port to use to connect with the target. HealthCheckPort *string `type:"string"` @@ -10295,6 +12615,12 @@ return s.String() } +// SetAnomalyDetection sets the AnomalyDetection field's value. +func (s *TargetHealthDescription) SetAnomalyDetection(v *AnomalyDetection) *TargetHealthDescription { + s.AnomalyDetection = v + return s +} + // SetHealthCheckPort sets the HealthCheckPort field's value. func (s *TargetHealthDescription) SetHealthCheckPort(v string) *TargetHealthDescription { s.HealthCheckPort = &v @@ -10313,6 +12639,165 @@ return s } +// Information about a trust store. +type TrustStore struct { + _ struct{} `type:"structure"` + + // The name of the trust store. + Name *string `min:"1" type:"string"` + + // The number of ca certificates in the trust store. + NumberOfCaCertificates *int64 `type:"integer"` + + // The current status of the trust store. + Status *string `type:"string" enum:"TrustStoreStatus"` + + // The number of revoked certificates in the trust store. + TotalRevokedEntries *int64 `type:"long"` + + // The Amazon Resource Name (ARN) of the trust store. + TrustStoreArn *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 TrustStore) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustStore) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *TrustStore) SetName(v string) *TrustStore { + s.Name = &v + return s +} + +// SetNumberOfCaCertificates sets the NumberOfCaCertificates field's value. +func (s *TrustStore) SetNumberOfCaCertificates(v int64) *TrustStore { + s.NumberOfCaCertificates = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *TrustStore) SetStatus(v string) *TrustStore { + s.Status = &v + return s +} + +// SetTotalRevokedEntries sets the TotalRevokedEntries field's value. +func (s *TrustStore) SetTotalRevokedEntries(v int64) *TrustStore { + s.TotalRevokedEntries = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *TrustStore) SetTrustStoreArn(v string) *TrustStore { + s.TrustStoreArn = &v + return s +} + +// Information about the resources a trust store is associated with. +type TrustStoreAssociation struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource. + ResourceArn *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 TrustStoreAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustStoreAssociation) GoString() string { + return s.String() +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TrustStoreAssociation) SetResourceArn(v string) *TrustStoreAssociation { + s.ResourceArn = &v + return s +} + +// Information about a revocation file in use by a trust store. +type TrustStoreRevocation struct { + _ struct{} `type:"structure"` + + // The number of revoked certificates. + NumberOfRevokedEntries *int64 `type:"long"` + + // The revocation ID of the revocation file. + RevocationId *int64 `type:"long"` + + // The type of revocation file. + RevocationType *string `type:"string" enum:"RevocationType"` + + // The Amazon Resource Name (ARN) of the trust store. + TrustStoreArn *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 TrustStoreRevocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustStoreRevocation) GoString() string { + return s.String() +} + +// SetNumberOfRevokedEntries sets the NumberOfRevokedEntries field's value. +func (s *TrustStoreRevocation) SetNumberOfRevokedEntries(v int64) *TrustStoreRevocation { + s.NumberOfRevokedEntries = &v + return s +} + +// SetRevocationId sets the RevocationId field's value. +func (s *TrustStoreRevocation) SetRevocationId(v int64) *TrustStoreRevocation { + s.RevocationId = &v + return s +} + +// SetRevocationType sets the RevocationType field's value. +func (s *TrustStoreRevocation) SetRevocationType(v string) *TrustStoreRevocation { + s.RevocationType = &v + return s +} + +// SetTrustStoreArn sets the TrustStoreArn field's value. +func (s *TrustStoreRevocation) SetTrustStoreArn(v string) *TrustStoreRevocation { + s.TrustStoreArn = &v + return s +} + const ( // ActionTypeEnumForward is a ActionTypeEnum enum value ActionTypeEnumForward = "forward" @@ -10342,6 +12827,22 @@ } const ( + // AnomalyResultEnumAnomalous is a AnomalyResultEnum enum value + AnomalyResultEnumAnomalous = "anomalous" + + // AnomalyResultEnumNormal is a AnomalyResultEnum enum value + AnomalyResultEnumNormal = "normal" +) + +// AnomalyResultEnum_Values returns all elements of the AnomalyResultEnum enum +func AnomalyResultEnum_Values() []string { + return []string{ + AnomalyResultEnumAnomalous, + AnomalyResultEnumNormal, + } +} + +const ( // AuthenticateCognitoActionConditionalBehaviorEnumDeny is a AuthenticateCognitoActionConditionalBehaviorEnum enum value AuthenticateCognitoActionConditionalBehaviorEnumDeny = "deny" @@ -10382,6 +12883,22 @@ } const ( + // DescribeTargetHealthInputIncludeEnumAnomalyDetection is a DescribeTargetHealthInputIncludeEnum enum value + DescribeTargetHealthInputIncludeEnumAnomalyDetection = "AnomalyDetection" + + // DescribeTargetHealthInputIncludeEnumAll is a DescribeTargetHealthInputIncludeEnum enum value + DescribeTargetHealthInputIncludeEnumAll = "All" +) + +// DescribeTargetHealthInputIncludeEnum_Values returns all elements of the DescribeTargetHealthInputIncludeEnum enum +func DescribeTargetHealthInputIncludeEnum_Values() []string { + return []string{ + DescribeTargetHealthInputIncludeEnumAnomalyDetection, + DescribeTargetHealthInputIncludeEnumAll, + } +} + +const ( // EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnumOn is a EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnum enum value EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnumOn = "on" @@ -10474,6 +12991,22 @@ } const ( + // MitigationInEffectEnumYes is a MitigationInEffectEnum enum value + MitigationInEffectEnumYes = "yes" + + // MitigationInEffectEnumNo is a MitigationInEffectEnum enum value + MitigationInEffectEnumNo = "no" +) + +// MitigationInEffectEnum_Values returns all elements of the MitigationInEffectEnum enum +func MitigationInEffectEnum_Values() []string { + return []string{ + MitigationInEffectEnumYes, + MitigationInEffectEnumNo, + } +} + +const ( // ProtocolEnumHttp is a ProtocolEnum enum value ProtocolEnumHttp = "HTTP" @@ -10526,6 +13059,18 @@ } const ( + // RevocationTypeCrl is a RevocationType enum value + RevocationTypeCrl = "CRL" +) + +// RevocationType_Values returns all elements of the RevocationType enum +func RevocationType_Values() []string { + return []string{ + RevocationTypeCrl, + } +} + +const ( // TargetGroupIpAddressTypeEnumIpv4 is a TargetGroupIpAddressTypeEnum enum value TargetGroupIpAddressTypeEnumIpv4 = "ipv4" @@ -10652,3 +13197,19 @@ TargetTypeEnumAlb, } } + +const ( + // TrustStoreStatusActive is a TrustStoreStatus enum value + TrustStoreStatusActive = "ACTIVE" + + // TrustStoreStatusCreating is a TrustStoreStatus enum value + TrustStoreStatusCreating = "CREATING" +) + +// TrustStoreStatus_Values returns all elements of the TrustStoreStatus enum +func TrustStoreStatus_Values() []string { + return []string{ + TrustStoreStatusActive, + TrustStoreStatusCreating, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/elbv2iface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/elbv2iface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/elbv2iface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/elbv2iface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -68,6 +68,10 @@ AddTagsWithContext(aws.Context, *elbv2.AddTagsInput, ...request.Option) (*elbv2.AddTagsOutput, error) AddTagsRequest(*elbv2.AddTagsInput) (*request.Request, *elbv2.AddTagsOutput) + AddTrustStoreRevocations(*elbv2.AddTrustStoreRevocationsInput) (*elbv2.AddTrustStoreRevocationsOutput, error) + AddTrustStoreRevocationsWithContext(aws.Context, *elbv2.AddTrustStoreRevocationsInput, ...request.Option) (*elbv2.AddTrustStoreRevocationsOutput, error) + AddTrustStoreRevocationsRequest(*elbv2.AddTrustStoreRevocationsInput) (*request.Request, *elbv2.AddTrustStoreRevocationsOutput) + CreateListener(*elbv2.CreateListenerInput) (*elbv2.CreateListenerOutput, error) CreateListenerWithContext(aws.Context, *elbv2.CreateListenerInput, ...request.Option) (*elbv2.CreateListenerOutput, error) CreateListenerRequest(*elbv2.CreateListenerInput) (*request.Request, *elbv2.CreateListenerOutput) @@ -84,6 +88,10 @@ CreateTargetGroupWithContext(aws.Context, *elbv2.CreateTargetGroupInput, ...request.Option) (*elbv2.CreateTargetGroupOutput, error) CreateTargetGroupRequest(*elbv2.CreateTargetGroupInput) (*request.Request, *elbv2.CreateTargetGroupOutput) + CreateTrustStore(*elbv2.CreateTrustStoreInput) (*elbv2.CreateTrustStoreOutput, error) + CreateTrustStoreWithContext(aws.Context, *elbv2.CreateTrustStoreInput, ...request.Option) (*elbv2.CreateTrustStoreOutput, error) + CreateTrustStoreRequest(*elbv2.CreateTrustStoreInput) (*request.Request, *elbv2.CreateTrustStoreOutput) + DeleteListener(*elbv2.DeleteListenerInput) (*elbv2.DeleteListenerOutput, error) DeleteListenerWithContext(aws.Context, *elbv2.DeleteListenerInput, ...request.Option) (*elbv2.DeleteListenerOutput, error) DeleteListenerRequest(*elbv2.DeleteListenerInput) (*request.Request, *elbv2.DeleteListenerOutput) @@ -100,6 +108,10 @@ DeleteTargetGroupWithContext(aws.Context, *elbv2.DeleteTargetGroupInput, ...request.Option) (*elbv2.DeleteTargetGroupOutput, error) DeleteTargetGroupRequest(*elbv2.DeleteTargetGroupInput) (*request.Request, *elbv2.DeleteTargetGroupOutput) + DeleteTrustStore(*elbv2.DeleteTrustStoreInput) (*elbv2.DeleteTrustStoreOutput, error) + DeleteTrustStoreWithContext(aws.Context, *elbv2.DeleteTrustStoreInput, ...request.Option) (*elbv2.DeleteTrustStoreOutput, error) + DeleteTrustStoreRequest(*elbv2.DeleteTrustStoreInput) (*request.Request, *elbv2.DeleteTrustStoreOutput) + DeregisterTargets(*elbv2.DeregisterTargetsInput) (*elbv2.DeregisterTargetsOutput, error) DeregisterTargetsWithContext(aws.Context, *elbv2.DeregisterTargetsInput, ...request.Option) (*elbv2.DeregisterTargetsOutput, error) DeregisterTargetsRequest(*elbv2.DeregisterTargetsInput) (*request.Request, *elbv2.DeregisterTargetsOutput) @@ -157,6 +169,35 @@ DescribeTargetHealthWithContext(aws.Context, *elbv2.DescribeTargetHealthInput, ...request.Option) (*elbv2.DescribeTargetHealthOutput, error) DescribeTargetHealthRequest(*elbv2.DescribeTargetHealthInput) (*request.Request, *elbv2.DescribeTargetHealthOutput) + DescribeTrustStoreAssociations(*elbv2.DescribeTrustStoreAssociationsInput) (*elbv2.DescribeTrustStoreAssociationsOutput, error) + DescribeTrustStoreAssociationsWithContext(aws.Context, *elbv2.DescribeTrustStoreAssociationsInput, ...request.Option) (*elbv2.DescribeTrustStoreAssociationsOutput, error) + DescribeTrustStoreAssociationsRequest(*elbv2.DescribeTrustStoreAssociationsInput) (*request.Request, *elbv2.DescribeTrustStoreAssociationsOutput) + + DescribeTrustStoreAssociationsPages(*elbv2.DescribeTrustStoreAssociationsInput, func(*elbv2.DescribeTrustStoreAssociationsOutput, bool) bool) error + DescribeTrustStoreAssociationsPagesWithContext(aws.Context, *elbv2.DescribeTrustStoreAssociationsInput, func(*elbv2.DescribeTrustStoreAssociationsOutput, bool) bool, ...request.Option) error + + DescribeTrustStoreRevocations(*elbv2.DescribeTrustStoreRevocationsInput) (*elbv2.DescribeTrustStoreRevocationsOutput, error) + DescribeTrustStoreRevocationsWithContext(aws.Context, *elbv2.DescribeTrustStoreRevocationsInput, ...request.Option) (*elbv2.DescribeTrustStoreRevocationsOutput, error) + DescribeTrustStoreRevocationsRequest(*elbv2.DescribeTrustStoreRevocationsInput) (*request.Request, *elbv2.DescribeTrustStoreRevocationsOutput) + + DescribeTrustStoreRevocationsPages(*elbv2.DescribeTrustStoreRevocationsInput, func(*elbv2.DescribeTrustStoreRevocationsOutput, bool) bool) error + DescribeTrustStoreRevocationsPagesWithContext(aws.Context, *elbv2.DescribeTrustStoreRevocationsInput, func(*elbv2.DescribeTrustStoreRevocationsOutput, bool) bool, ...request.Option) error + + DescribeTrustStores(*elbv2.DescribeTrustStoresInput) (*elbv2.DescribeTrustStoresOutput, error) + DescribeTrustStoresWithContext(aws.Context, *elbv2.DescribeTrustStoresInput, ...request.Option) (*elbv2.DescribeTrustStoresOutput, error) + DescribeTrustStoresRequest(*elbv2.DescribeTrustStoresInput) (*request.Request, *elbv2.DescribeTrustStoresOutput) + + DescribeTrustStoresPages(*elbv2.DescribeTrustStoresInput, func(*elbv2.DescribeTrustStoresOutput, bool) bool) error + DescribeTrustStoresPagesWithContext(aws.Context, *elbv2.DescribeTrustStoresInput, func(*elbv2.DescribeTrustStoresOutput, bool) bool, ...request.Option) error + + GetTrustStoreCaCertificatesBundle(*elbv2.GetTrustStoreCaCertificatesBundleInput) (*elbv2.GetTrustStoreCaCertificatesBundleOutput, error) + GetTrustStoreCaCertificatesBundleWithContext(aws.Context, *elbv2.GetTrustStoreCaCertificatesBundleInput, ...request.Option) (*elbv2.GetTrustStoreCaCertificatesBundleOutput, error) + GetTrustStoreCaCertificatesBundleRequest(*elbv2.GetTrustStoreCaCertificatesBundleInput) (*request.Request, *elbv2.GetTrustStoreCaCertificatesBundleOutput) + + GetTrustStoreRevocationContent(*elbv2.GetTrustStoreRevocationContentInput) (*elbv2.GetTrustStoreRevocationContentOutput, error) + GetTrustStoreRevocationContentWithContext(aws.Context, *elbv2.GetTrustStoreRevocationContentInput, ...request.Option) (*elbv2.GetTrustStoreRevocationContentOutput, error) + GetTrustStoreRevocationContentRequest(*elbv2.GetTrustStoreRevocationContentInput) (*request.Request, *elbv2.GetTrustStoreRevocationContentOutput) + ModifyListener(*elbv2.ModifyListenerInput) (*elbv2.ModifyListenerOutput, error) ModifyListenerWithContext(aws.Context, *elbv2.ModifyListenerInput, ...request.Option) (*elbv2.ModifyListenerOutput, error) ModifyListenerRequest(*elbv2.ModifyListenerInput) (*request.Request, *elbv2.ModifyListenerOutput) @@ -177,6 +218,10 @@ ModifyTargetGroupAttributesWithContext(aws.Context, *elbv2.ModifyTargetGroupAttributesInput, ...request.Option) (*elbv2.ModifyTargetGroupAttributesOutput, error) ModifyTargetGroupAttributesRequest(*elbv2.ModifyTargetGroupAttributesInput) (*request.Request, *elbv2.ModifyTargetGroupAttributesOutput) + ModifyTrustStore(*elbv2.ModifyTrustStoreInput) (*elbv2.ModifyTrustStoreOutput, error) + ModifyTrustStoreWithContext(aws.Context, *elbv2.ModifyTrustStoreInput, ...request.Option) (*elbv2.ModifyTrustStoreOutput, error) + ModifyTrustStoreRequest(*elbv2.ModifyTrustStoreInput) (*request.Request, *elbv2.ModifyTrustStoreOutput) + RegisterTargets(*elbv2.RegisterTargetsInput) (*elbv2.RegisterTargetsOutput, error) RegisterTargetsWithContext(aws.Context, *elbv2.RegisterTargetsInput, ...request.Option) (*elbv2.RegisterTargetsOutput, error) RegisterTargetsRequest(*elbv2.RegisterTargetsInput) (*request.Request, *elbv2.RegisterTargetsOutput) @@ -189,6 +234,10 @@ RemoveTagsWithContext(aws.Context, *elbv2.RemoveTagsInput, ...request.Option) (*elbv2.RemoveTagsOutput, error) RemoveTagsRequest(*elbv2.RemoveTagsInput) (*request.Request, *elbv2.RemoveTagsOutput) + RemoveTrustStoreRevocations(*elbv2.RemoveTrustStoreRevocationsInput) (*elbv2.RemoveTrustStoreRevocationsOutput, error) + RemoveTrustStoreRevocationsWithContext(aws.Context, *elbv2.RemoveTrustStoreRevocationsInput, ...request.Option) (*elbv2.RemoveTrustStoreRevocationsOutput, error) + RemoveTrustStoreRevocationsRequest(*elbv2.RemoveTrustStoreRevocationsInput) (*request.Request, *elbv2.RemoveTrustStoreRevocationsOutput) + SetIpAddressType(*elbv2.SetIpAddressTypeInput) (*elbv2.SetIpAddressTypeOutput, error) SetIpAddressTypeWithContext(aws.Context, *elbv2.SetIpAddressTypeInput, ...request.Option) (*elbv2.SetIpAddressTypeOutput, error) SetIpAddressTypeRequest(*elbv2.SetIpAddressTypeInput) (*request.Request, *elbv2.SetIpAddressTypeOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -22,6 +22,12 @@ // The specified Availability Zone is not supported. ErrCodeAvailabilityZoneNotSupportedException = "AvailabilityZoneNotSupported" + // ErrCodeCaCertificatesBundleNotFoundException for service response error code + // "CaCertificatesBundleNotFound". + // + // The specified ca certificate bundle does not exist. + ErrCodeCaCertificatesBundleNotFoundException = "CaCertificatesBundleNotFound" + // ErrCodeCertificateNotFoundException for service response error code // "CertificateNotFound". // @@ -52,6 +58,12 @@ // A target group with the specified name already exists. ErrCodeDuplicateTargetGroupNameException = "DuplicateTargetGroupName" + // ErrCodeDuplicateTrustStoreNameException for service response error code + // "DuplicateTrustStoreName". + // + // A trust store with the specified name already exists. + ErrCodeDuplicateTrustStoreNameException = "DuplicateTrustStoreName" + // ErrCodeHealthUnavailableException for service response error code // "HealthUnavailable". // @@ -65,6 +77,12 @@ // The specified configuration is not valid with this protocol. ErrCodeIncompatibleProtocolsException = "IncompatibleProtocols" + // ErrCodeInvalidCaCertificatesBundleException for service response error code + // "InvalidCaCertificatesBundle". + // + // The specified ca certificate bundle is in an invalid format, or corrupt. + ErrCodeInvalidCaCertificatesBundleException = "InvalidCaCertificatesBundle" + // ErrCodeInvalidConfigurationRequestException for service response error code // "InvalidConfigurationRequest". // @@ -77,6 +95,12 @@ // The requested action is not valid. ErrCodeInvalidLoadBalancerActionException = "InvalidLoadBalancerAction" + // ErrCodeInvalidRevocationContentException for service response error code + // "InvalidRevocationContent". + // + // The provided revocation file is an invalid format, or uses an incorrect algorithm. + ErrCodeInvalidRevocationContentException = "InvalidRevocationContent" + // ErrCodeInvalidSchemeException for service response error code // "InvalidScheme". // @@ -132,6 +156,18 @@ // A specified resource is in use. ErrCodeResourceInUseException = "ResourceInUse" + // ErrCodeRevocationContentNotFoundException for service response error code + // "RevocationContentNotFound". + // + // The specified revocation file does not exist. + ErrCodeRevocationContentNotFoundException = "RevocationContentNotFound" + + // ErrCodeRevocationIdNotFoundException for service response error code + // "RevocationIdNotFound". + // + // The specified revocation ID does not exist. + ErrCodeRevocationIdNotFoundException = "RevocationIdNotFound" + // ErrCodeRuleNotFoundException for service response error code // "RuleNotFound". // @@ -203,7 +239,7 @@ // ErrCodeTooManyTagsException for service response error code // "TooManyTags". // - // You've reached the limit on the number of tags per load balancer. + // You've reached the limit on the number of tags for this resource. ErrCodeTooManyTagsException = "TooManyTags" // ErrCodeTooManyTargetGroupsException for service response error code @@ -219,6 +255,19 @@ // You've reached the limit on the number of targets. ErrCodeTooManyTargetsException = "TooManyTargets" + // ErrCodeTooManyTrustStoreRevocationEntriesException for service response error code + // "TooManyTrustStoreRevocationEntries". + // + // The specified trust store has too many revocation entries. + ErrCodeTooManyTrustStoreRevocationEntriesException = "TooManyTrustStoreRevocationEntries" + + // ErrCodeTooManyTrustStoresException for service response error code + // "TooManyTrustStores". + // + // You've reached the limit on the number of trust stores for your Amazon Web + // Services account. + ErrCodeTooManyTrustStoresException = "TooManyTrustStores" + // ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException for service response error code // "TooManyUniqueTargetGroupsPerLoadBalancer". // @@ -227,6 +276,24 @@ // load balancer, it is counted as only one use. ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException = "TooManyUniqueTargetGroupsPerLoadBalancer" + // ErrCodeTrustStoreInUseException for service response error code + // "TrustStoreInUse". + // + // The specified trust store is currently in use. + ErrCodeTrustStoreInUseException = "TrustStoreInUse" + + // ErrCodeTrustStoreNotFoundException for service response error code + // "TrustStoreNotFound". + // + // The specified trust store does not exist. + ErrCodeTrustStoreNotFoundException = "TrustStoreNotFound" + + // ErrCodeTrustStoreNotReadyException for service response error code + // "TrustStoreNotReady". + // + // The specified trust store is not active. + ErrCodeTrustStoreNotReadyException = "TrustStoreNotReady" + // ErrCodeUnsupportedProtocolException for service response error code // "UnsupportedProtocol". // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/elbv2/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/elbv2/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -61,6 +61,8 @@ fmt.Println(elbv2.ErrCodeListenerNotFoundException, aerr.Error()) case elbv2.ErrCodeRuleNotFoundException: fmt.Println(elbv2.ErrCodeRuleNotFoundException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -132,6 +134,10 @@ fmt.Println(elbv2.ErrCodeALPNPolicyNotSupportedException, aerr.Error()) case elbv2.ErrCodeTooManyTagsException: fmt.Println(elbv2.ErrCodeTooManyTagsException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotReadyException: + fmt.Println(elbv2.ErrCodeTrustStoreNotReadyException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -213,6 +219,10 @@ fmt.Println(elbv2.ErrCodeALPNPolicyNotSupportedException, aerr.Error()) case elbv2.ErrCodeTooManyTagsException: fmt.Println(elbv2.ErrCodeTooManyTagsException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotReadyException: + fmt.Println(elbv2.ErrCodeTrustStoreNotReadyException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -785,6 +795,8 @@ fmt.Println(elbv2.ErrCodeListenerNotFoundException, aerr.Error()) case elbv2.ErrCodeRuleNotFoundException: fmt.Println(elbv2.ErrCodeRuleNotFoundException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -983,6 +995,10 @@ fmt.Println(elbv2.ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException, aerr.Error()) case elbv2.ErrCodeALPNPolicyNotSupportedException: fmt.Println(elbv2.ErrCodeALPNPolicyNotSupportedException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotReadyException: + fmt.Println(elbv2.ErrCodeTrustStoreNotReadyException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1048,6 +1064,10 @@ fmt.Println(elbv2.ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException, aerr.Error()) case elbv2.ErrCodeALPNPolicyNotSupportedException: fmt.Println(elbv2.ErrCodeALPNPolicyNotSupportedException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotReadyException: + fmt.Println(elbv2.ErrCodeTrustStoreNotReadyException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1422,6 +1442,8 @@ fmt.Println(elbv2.ErrCodeRuleNotFoundException, aerr.Error()) case elbv2.ErrCodeTooManyTagsException: fmt.Println(elbv2.ErrCodeTooManyTagsException, aerr.Error()) + case elbv2.ErrCodeTrustStoreNotFoundException: + fmt.Println(elbv2.ErrCodeTrustStoreNotFoundException, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/emr/api.go golang-github-aws-aws-sdk-go-1.48.14/service/emr/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/emr/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/emr/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -6618,11 +6618,21 @@ // Amazon EBS-backed Linux AMI if the cluster uses a custom AMI. CustomAmiId *string `type:"string"` + // The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used + // for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and + // later. + EbsRootVolumeIops *int64 `type:"integer"` + // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that // is used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x // and later. EbsRootVolumeSize *int64 `type:"integer"` + // The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux + // AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases + // 6.15.0 and later. + EbsRootVolumeThroughput *int64 `type:"integer"` + // Provides information about the Amazon EC2 instances in a cluster grouped // by category. For example, key name, subnet ID, IAM instance profile, and // so on. @@ -6803,12 +6813,24 @@ return s } +// SetEbsRootVolumeIops sets the EbsRootVolumeIops field's value. +func (s *Cluster) SetEbsRootVolumeIops(v int64) *Cluster { + s.EbsRootVolumeIops = &v + return s +} + // SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. func (s *Cluster) SetEbsRootVolumeSize(v int64) *Cluster { s.EbsRootVolumeSize = &v return s } +// SetEbsRootVolumeThroughput sets the EbsRootVolumeThroughput field's value. +func (s *Cluster) SetEbsRootVolumeThroughput(v int64) *Cluster { + s.EbsRootVolumeThroughput = &v + return s +} + // SetEc2InstanceAttributes sets the Ec2InstanceAttributes field's value. func (s *Cluster) SetEc2InstanceAttributes(v *Ec2InstanceAttributes) *Cluster { s.Ec2InstanceAttributes = v @@ -7531,6 +7553,10 @@ // A detailed description of the Amazon EMR Studio. Description *string `type:"string"` + // The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace + // and notebook files when backed up to Amazon S3. + EncryptionKeyArn *string `type:"string"` + // The ID of the Amazon EMR Studio Engine security group. The Engine security // group allows inbound network traffic from the Workspace security group, and // it must be in the same VPC specified by VpcId. @@ -7538,6 +7564,14 @@ // EngineSecurityGroupId is a required field EngineSecurityGroupId *string `type:"string" required:"true"` + // The ARN of the IAM Identity Center instance to create the Studio application. + IdcInstanceArn *string `min:"20" type:"string"` + + // Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. + // If the value is set to REQUIRED, users must be explicitly assigned to the + // Studio application to access the Studio. + IdcUserAssignment *string `type:"string" enum:"IdcUserAssignment"` + // The authentication endpoint of your identity provider (IdP). Specify this // value when you use IAM authentication and want to let federated users log // in to a Studio with the Studio URL and credentials from your IdP. Amazon @@ -7574,6 +7608,10 @@ // characters, and an optional value string with a maximum of 256 characters. Tags []*Tag `type:"list"` + // A Boolean indicating whether to enable Trusted identity propagation for the + // Studio. The default value is false. + TrustedIdentityPropagationEnabled *bool `type:"boolean"` + // The IAM user role that users and groups assume when logged in to an Amazon // EMR Studio. Only specify a UserRole when you use IAM Identity Center authentication. // The permissions attached to the UserRole can be scoped down for each user @@ -7624,6 +7662,9 @@ if s.EngineSecurityGroupId == nil { invalidParams.Add(request.NewErrParamRequired("EngineSecurityGroupId")) } + if s.IdcInstanceArn != nil && len(*s.IdcInstanceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("IdcInstanceArn", 20)) + } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -7664,12 +7705,30 @@ return s } +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *CreateStudioInput) SetEncryptionKeyArn(v string) *CreateStudioInput { + s.EncryptionKeyArn = &v + return s +} + // SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. func (s *CreateStudioInput) SetEngineSecurityGroupId(v string) *CreateStudioInput { s.EngineSecurityGroupId = &v return s } +// SetIdcInstanceArn sets the IdcInstanceArn field's value. +func (s *CreateStudioInput) SetIdcInstanceArn(v string) *CreateStudioInput { + s.IdcInstanceArn = &v + return s +} + +// SetIdcUserAssignment sets the IdcUserAssignment field's value. +func (s *CreateStudioInput) SetIdcUserAssignment(v string) *CreateStudioInput { + s.IdcUserAssignment = &v + return s +} + // SetIdpAuthUrl sets the IdpAuthUrl field's value. func (s *CreateStudioInput) SetIdpAuthUrl(v string) *CreateStudioInput { s.IdpAuthUrl = &v @@ -7706,6 +7765,12 @@ return s } +// SetTrustedIdentityPropagationEnabled sets the TrustedIdentityPropagationEnabled field's value. +func (s *CreateStudioInput) SetTrustedIdentityPropagationEnabled(v bool) *CreateStudioInput { + s.TrustedIdentityPropagationEnabled = &v + return s +} + // SetUserRole sets the UserRole field's value. func (s *CreateStudioInput) SetUserRole(v string) *CreateStudioInput { s.UserRole = &v @@ -9530,9 +9595,7 @@ // submission on the cluster. The runtime role can be a cross-account IAM role. // The runtime role ARN is a combination of account ID, role name, and role // type using the following format: arn:partition:service:region:account:resource. - // - // ExecutionRoleArn is a required field - ExecutionRoleArn *string `min:"20" type:"string" required:"true"` + ExecutionRoleArn *string `min:"20" type:"string"` } // String returns the string representation. @@ -9559,9 +9622,6 @@ if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } - if s.ExecutionRoleArn == nil { - invalidParams.Add(request.NewErrParamRequired("ExecutionRoleArn")) - } if s.ExecutionRoleArn != nil && len(*s.ExecutionRoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleArn", 20)) } @@ -16357,11 +16417,21 @@ // about finding an AMI ID, see Finding a Linux AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html). CustomAmiId *string `type:"string"` + // The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used + // for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and + // later. + EbsRootVolumeIops *int64 `type:"integer"` + // The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that // is used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x // and later. EbsRootVolumeSize *int64 `type:"integer"` + // The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux + // AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases + // 6.15.0 and later. + EbsRootVolumeThroughput *int64 `type:"integer"` + // A specification of the number and type of Amazon EC2 instances. // // Instances is a required field @@ -16641,12 +16711,24 @@ return s } +// SetEbsRootVolumeIops sets the EbsRootVolumeIops field's value. +func (s *RunJobFlowInput) SetEbsRootVolumeIops(v int64) *RunJobFlowInput { + s.EbsRootVolumeIops = &v + return s +} + // SetEbsRootVolumeSize sets the EbsRootVolumeSize field's value. func (s *RunJobFlowInput) SetEbsRootVolumeSize(v int64) *RunJobFlowInput { s.EbsRootVolumeSize = &v return s } +// SetEbsRootVolumeThroughput sets the EbsRootVolumeThroughput field's value. +func (s *RunJobFlowInput) SetEbsRootVolumeThroughput(v int64) *RunJobFlowInput { + s.EbsRootVolumeThroughput = &v + return s +} + // SetInstances sets the Instances field's value. func (s *RunJobFlowInput) SetInstances(v *JobFlowInstancesConfig) *RunJobFlowInput { s.Instances = v @@ -17720,10 +17802,15 @@ type SpotProvisioningSpecification struct { _ struct{} `type:"structure"` - // Specifies the strategy to use in launching Spot Instance fleets. Currently, - // the only option is capacity-optimized (the default), which launches instances - // from Spot Instance pools with optimal capacity for the number of instances - // that are launching. + // Specifies one of the following strategies to launch Spot Instance fleets: + // price-capacity-optimized, capacity-optimized, lowest-price, or diversified. + // For more information on the provisioning strategies, see Allocation strategies + // for Spot Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html) + // in the Amazon EC2 User Guide for Linux Instances. + // + // When you launch a Spot Instance fleet with the old console, it automatically + // launches with the capacity-optimized strategy. You can't change the allocation + // strategy from the old console. AllocationStrategy *string `type:"string" enum:"SpotProvisioningAllocationStrategy"` // The defined duration for Spot Instances (also known as Spot blocks) in minutes. @@ -18696,11 +18783,24 @@ // The detailed description of the Amazon EMR Studio. Description *string `type:"string"` + // The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace + // and notebook files when backed up to Amazon S3. + EncryptionKeyArn *string `type:"string"` + // The ID of the Engine security group associated with the Amazon EMR Studio. // The Engine security group allows inbound network traffic from resources in // the Workspace security group. EngineSecurityGroupId *string `type:"string"` + // The ARN of the IAM Identity Center instance the Studio application belongs + // to. + IdcInstanceArn *string `min:"20" type:"string"` + + // Indicates whether the Studio has REQUIRED or OPTIONAL IAM Identity Center + // user assignment. If the value is set to REQUIRED, users must be explicitly + // assigned to the Studio application to access the Studio. + IdcUserAssignment *string `type:"string" enum:"IdcUserAssignment"` + // Your identity provider's authentication endpoint. Amazon EMR Studio redirects // federated users to this endpoint for authentication when logging in to a // Studio with the Studio URL. @@ -18727,6 +18827,10 @@ // A list of tags associated with the Amazon EMR Studio. Tags []*Tag `type:"list"` + // Indicates whether the Studio has Trusted identity propagation enabled. The + // default value is false. + TrustedIdentityPropagationEnabled *bool `type:"boolean"` + // The unique access URL of the Amazon EMR Studio. Url *string `type:"string"` @@ -18785,12 +18889,30 @@ return s } +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *Studio) SetEncryptionKeyArn(v string) *Studio { + s.EncryptionKeyArn = &v + return s +} + // SetEngineSecurityGroupId sets the EngineSecurityGroupId field's value. func (s *Studio) SetEngineSecurityGroupId(v string) *Studio { s.EngineSecurityGroupId = &v return s } +// SetIdcInstanceArn sets the IdcInstanceArn field's value. +func (s *Studio) SetIdcInstanceArn(v string) *Studio { + s.IdcInstanceArn = &v + return s +} + +// SetIdcUserAssignment sets the IdcUserAssignment field's value. +func (s *Studio) SetIdcUserAssignment(v string) *Studio { + s.IdcUserAssignment = &v + return s +} + // SetIdpAuthUrl sets the IdpAuthUrl field's value. func (s *Studio) SetIdpAuthUrl(v string) *Studio { s.IdpAuthUrl = &v @@ -18839,6 +18961,12 @@ return s } +// SetTrustedIdentityPropagationEnabled sets the TrustedIdentityPropagationEnabled field's value. +func (s *Studio) SetTrustedIdentityPropagationEnabled(v bool) *Studio { + s.TrustedIdentityPropagationEnabled = &v + return s +} + // SetUrl sets the Url field's value. func (s *Studio) SetUrl(v string) *Studio { s.Url = &v @@ -18864,8 +18992,8 @@ } // Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. -// The details do not include subnets, IAM roles, security groups, or tags associated -// with the Studio. +// To fetch additional details such as subnets, IAM roles, security groups, +// and tags for the Studio, use the DescribeStudio API. type StudioSummary struct { _ struct{} `type:"structure"` @@ -19249,6 +19377,10 @@ // A detailed description to assign to the Amazon EMR Studio. Description *string `type:"string"` + // The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace + // and notebook files when backed up to Amazon S3. + EncryptionKeyArn *string `type:"string"` + // A descriptive name for the Amazon EMR Studio. Name *string `type:"string"` @@ -19308,6 +19440,12 @@ return s } +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *UpdateStudioInput) SetEncryptionKeyArn(v string) *UpdateStudioInput { + s.EncryptionKeyArn = &v + return s +} + // SetName sets the Name field's value. func (s *UpdateStudioInput) SetName(v string) *UpdateStudioInput { s.Name = &v @@ -19858,6 +19996,22 @@ } } +const ( + // IdcUserAssignmentRequired is a IdcUserAssignment enum value + IdcUserAssignmentRequired = "REQUIRED" + + // IdcUserAssignmentOptional is a IdcUserAssignment enum value + IdcUserAssignmentOptional = "OPTIONAL" +) + +// IdcUserAssignment_Values returns all elements of the IdcUserAssignment enum +func IdcUserAssignment_Values() []string { + return []string{ + IdcUserAssignmentRequired, + IdcUserAssignmentOptional, + } +} + const ( // IdentityTypeUser is a IdentityType enum value IdentityTypeUser = "USER" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/emrserverless/api.go golang-github-aws-aws-sdk-go-1.48.14/service/emrserverless/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/emrserverless/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/emrserverless/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1487,6 +1487,9 @@ // No new resources will be created once any one of the defined limits is hit. MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"` + // The configuration setting for monitoring. + MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"` + // The name of the application. Name *string `locationName:"name" min:"1" type:"string"` @@ -1498,6 +1501,14 @@ // ReleaseLabel is a required field ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"` + // The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) + // specifications of an application. Each configuration consists of a classification + // and properties. You use this parameter when creating or updating an application. + // To see the runtimeConfiguration object of an application, run the GetApplication + // (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) + // API operation. + RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"` + // The state of the application. // // State is a required field @@ -1595,6 +1606,12 @@ return s } +// SetMonitoringConfiguration sets the MonitoringConfiguration field's value. +func (s *Application) SetMonitoringConfiguration(v *MonitoringConfiguration) *Application { + s.MonitoringConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *Application) SetName(v string) *Application { s.Name = &v @@ -1613,6 +1630,12 @@ return s } +// SetRuntimeConfiguration sets the RuntimeConfiguration field's value. +func (s *Application) SetRuntimeConfiguration(v []*Configuration) *Application { + s.RuntimeConfiguration = v + return s +} + // SetState sets the State field's value. func (s *Application) SetState(v string) *Application { s.State = &v @@ -2327,6 +2350,9 @@ // the defined limits is hit. MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"` + // The configuration setting for monitoring. + MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"` + // The name of the application. Name *string `locationName:"name" min:"1" type:"string"` @@ -2338,6 +2364,12 @@ // ReleaseLabel is a required field ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"` + // The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) + // specifications to use when creating an application. Each configuration consists + // of a classification and properties. This configuration is applied to all + // the job runs submitted under the application. + RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"` + // The tags assigned to the application. Tags map[string]*string `locationName:"tags" type:"map"` @@ -2419,6 +2451,21 @@ invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams)) } } + if s.MonitoringConfiguration != nil { + if err := s.MonitoringConfiguration.Validate(); err != nil { + invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RuntimeConfiguration != nil { + for i, v := range s.RuntimeConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } if s.WorkerTypeSpecifications != nil { for i, v := range s.WorkerTypeSpecifications { if v == nil { @@ -2478,6 +2525,12 @@ return s } +// SetMonitoringConfiguration sets the MonitoringConfiguration field's value. +func (s *CreateApplicationInput) SetMonitoringConfiguration(v *MonitoringConfiguration) *CreateApplicationInput { + s.MonitoringConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput { s.Name = &v @@ -2496,6 +2549,12 @@ return s } +// SetRuntimeConfiguration sets the RuntimeConfiguration field's value. +func (s *CreateApplicationInput) SetRuntimeConfiguration(v []*Configuration) *CreateApplicationInput { + s.RuntimeConfiguration = v + return s +} + // SetTags sets the Tags field's value. func (s *CreateApplicationInput) SetTags(v map[string]*string) *CreateApplicationInput { s.Tags = v @@ -5172,6 +5231,9 @@ // defined limits is hit. MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"` + // The configuration setting for monitoring. + MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"` + // The network configuration for customer VPC connectivity. NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"` @@ -5179,6 +5241,12 @@ // label to use a different release of Amazon EMR. ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string"` + // The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) + // specifications to use when updating an application. Each configuration consists + // of a classification and properties. This configuration is applied across + // all the job runs submitted under the application. + RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"` + // The key-value pairs that specify worker type to WorkerTypeSpecificationInput. // This parameter must contain all valid worker types for a Spark or Hive application. // Valid worker types include Driver and Executor for Spark applications and @@ -5246,6 +5314,21 @@ invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams)) } } + if s.MonitoringConfiguration != nil { + if err := s.MonitoringConfiguration.Validate(); err != nil { + invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RuntimeConfiguration != nil { + for i, v := range s.RuntimeConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } if s.WorkerTypeSpecifications != nil { for i, v := range s.WorkerTypeSpecifications { if v == nil { @@ -5311,6 +5394,12 @@ return s } +// SetMonitoringConfiguration sets the MonitoringConfiguration field's value. +func (s *UpdateApplicationInput) SetMonitoringConfiguration(v *MonitoringConfiguration) *UpdateApplicationInput { + s.MonitoringConfiguration = v + return s +} + // SetNetworkConfiguration sets the NetworkConfiguration field's value. func (s *UpdateApplicationInput) SetNetworkConfiguration(v *NetworkConfiguration) *UpdateApplicationInput { s.NetworkConfiguration = v @@ -5323,6 +5412,12 @@ return s } +// SetRuntimeConfiguration sets the RuntimeConfiguration field's value. +func (s *UpdateApplicationInput) SetRuntimeConfiguration(v []*Configuration) *UpdateApplicationInput { + s.RuntimeConfiguration = v + return s +} + // SetWorkerTypeSpecifications sets the WorkerTypeSpecifications field's value. func (s *UpdateApplicationInput) SetWorkerTypeSpecifications(v map[string]*WorkerTypeSpecificationInput_) *UpdateApplicationInput { s.WorkerTypeSpecifications = v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/entityresolution/api.go golang-github-aws-aws-sdk-go-1.48.14/service/entityresolution/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/entityresolution/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/entityresolution/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,110 @@ "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateIdMappingWorkflow = "CreateIdMappingWorkflow" + +// CreateIdMappingWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the CreateIdMappingWorkflow 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 CreateIdMappingWorkflow for more information on using the CreateIdMappingWorkflow +// 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 CreateIdMappingWorkflowRequest method. +// req, resp := client.CreateIdMappingWorkflowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/CreateIdMappingWorkflow +func (c *EntityResolution) CreateIdMappingWorkflowRequest(input *CreateIdMappingWorkflowInput) (req *request.Request, output *CreateIdMappingWorkflowOutput) { + op := &request.Operation{ + Name: opCreateIdMappingWorkflow, + HTTPMethod: "POST", + HTTPPath: "/idmappingworkflows", + } + + if input == nil { + input = &CreateIdMappingWorkflowInput{} + } + + output = &CreateIdMappingWorkflowOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateIdMappingWorkflow API operation for AWS EntityResolution. +// +// Creates an IdMappingWorkflow object which stores the configuration of the +// data processing job to be run. Each IdMappingWorkflow must have a unique +// workflow name. To modify an existing workflow, use the UpdateIdMappingWorkflow +// API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation CreateIdMappingWorkflow for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ExceedsLimitException +// The request was rejected because it attempted to create resources beyond +// the current Entity Resolution account limits. The error message describes +// the limit exceeded. HTTP Status Code: 402 +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. Example: Workflow already exists, Schema already exists, +// Workflow is currently running, etc. HTTP Status Code: 400 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/CreateIdMappingWorkflow +func (c *EntityResolution) CreateIdMappingWorkflow(input *CreateIdMappingWorkflowInput) (*CreateIdMappingWorkflowOutput, error) { + req, out := c.CreateIdMappingWorkflowRequest(input) + return out, req.Send() +} + +// CreateIdMappingWorkflowWithContext is the same as CreateIdMappingWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See CreateIdMappingWorkflow 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 *EntityResolution) CreateIdMappingWorkflowWithContext(ctx aws.Context, input *CreateIdMappingWorkflowInput, opts ...request.Option) (*CreateIdMappingWorkflowOutput, error) { + req, out := c.CreateIdMappingWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateMatchingWorkflow = "CreateMatchingWorkflow" // CreateMatchingWorkflowRequest generates a "aws/request.Request" representing the @@ -221,6 +325,98 @@ return out, req.Send() } +const opDeleteIdMappingWorkflow = "DeleteIdMappingWorkflow" + +// DeleteIdMappingWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the DeleteIdMappingWorkflow 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 DeleteIdMappingWorkflow for more information on using the DeleteIdMappingWorkflow +// 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 DeleteIdMappingWorkflowRequest method. +// req, resp := client.DeleteIdMappingWorkflowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/DeleteIdMappingWorkflow +func (c *EntityResolution) DeleteIdMappingWorkflowRequest(input *DeleteIdMappingWorkflowInput) (req *request.Request, output *DeleteIdMappingWorkflowOutput) { + op := &request.Operation{ + Name: opDeleteIdMappingWorkflow, + HTTPMethod: "DELETE", + HTTPPath: "/idmappingworkflows/{workflowName}", + } + + if input == nil { + input = &DeleteIdMappingWorkflowInput{} + } + + output = &DeleteIdMappingWorkflowOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteIdMappingWorkflow API operation for AWS EntityResolution. +// +// Deletes the IdMappingWorkflow with a given name. This operation will succeed +// even if a workflow with the given name does not exist. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation DeleteIdMappingWorkflow for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/DeleteIdMappingWorkflow +func (c *EntityResolution) DeleteIdMappingWorkflow(input *DeleteIdMappingWorkflowInput) (*DeleteIdMappingWorkflowOutput, error) { + req, out := c.DeleteIdMappingWorkflowRequest(input) + return out, req.Send() +} + +// DeleteIdMappingWorkflowWithContext is the same as DeleteIdMappingWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteIdMappingWorkflow 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 *EntityResolution) DeleteIdMappingWorkflowWithContext(ctx aws.Context, input *DeleteIdMappingWorkflowInput, opts ...request.Option) (*DeleteIdMappingWorkflowOutput, error) { + req, out := c.DeleteIdMappingWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMatchingWorkflow = "DeleteMatchingWorkflow" // DeleteMatchingWorkflowRequest generates a "aws/request.Request" representing the @@ -358,7 +554,7 @@ // // Deletes the SchemaMapping with a given name. This operation will succeed // even if a schema with the given name does not exist. This operation will -// fail if there is a DataIntegrationWorkflow object that references the SchemaMapping +// fail if there is a MatchingWorkflow object that references the SchemaMapping // in the workflow's InputSourceConfig. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -412,6 +608,195 @@ return out, req.Send() } +const opGetIdMappingJob = "GetIdMappingJob" + +// GetIdMappingJobRequest generates a "aws/request.Request" representing the +// client's request for the GetIdMappingJob 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 GetIdMappingJob for more information on using the GetIdMappingJob +// 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 GetIdMappingJobRequest method. +// req, resp := client.GetIdMappingJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetIdMappingJob +func (c *EntityResolution) GetIdMappingJobRequest(input *GetIdMappingJobInput) (req *request.Request, output *GetIdMappingJobOutput) { + op := &request.Operation{ + Name: opGetIdMappingJob, + HTTPMethod: "GET", + HTTPPath: "/idmappingworkflows/{workflowName}/jobs/{jobId}", + } + + if input == nil { + input = &GetIdMappingJobInput{} + } + + output = &GetIdMappingJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetIdMappingJob API operation for AWS EntityResolution. +// +// Gets the status, metrics, and errors (if there are any) that are associated +// with a job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation GetIdMappingJob for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - ResourceNotFoundException +// The resource could not be found. HTTP Status Code: 404 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetIdMappingJob +func (c *EntityResolution) GetIdMappingJob(input *GetIdMappingJobInput) (*GetIdMappingJobOutput, error) { + req, out := c.GetIdMappingJobRequest(input) + return out, req.Send() +} + +// GetIdMappingJobWithContext is the same as GetIdMappingJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetIdMappingJob 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 *EntityResolution) GetIdMappingJobWithContext(ctx aws.Context, input *GetIdMappingJobInput, opts ...request.Option) (*GetIdMappingJobOutput, error) { + req, out := c.GetIdMappingJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetIdMappingWorkflow = "GetIdMappingWorkflow" + +// GetIdMappingWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the GetIdMappingWorkflow 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 GetIdMappingWorkflow for more information on using the GetIdMappingWorkflow +// 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 GetIdMappingWorkflowRequest method. +// req, resp := client.GetIdMappingWorkflowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetIdMappingWorkflow +func (c *EntityResolution) GetIdMappingWorkflowRequest(input *GetIdMappingWorkflowInput) (req *request.Request, output *GetIdMappingWorkflowOutput) { + op := &request.Operation{ + Name: opGetIdMappingWorkflow, + HTTPMethod: "GET", + HTTPPath: "/idmappingworkflows/{workflowName}", + } + + if input == nil { + input = &GetIdMappingWorkflowInput{} + } + + output = &GetIdMappingWorkflowOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetIdMappingWorkflow API operation for AWS EntityResolution. +// +// Returns the IdMappingWorkflow with a given name, if it exists. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation GetIdMappingWorkflow for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - ResourceNotFoundException +// The resource could not be found. HTTP Status Code: 404 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetIdMappingWorkflow +func (c *EntityResolution) GetIdMappingWorkflow(input *GetIdMappingWorkflowInput) (*GetIdMappingWorkflowOutput, error) { + req, out := c.GetIdMappingWorkflowRequest(input) + return out, req.Send() +} + +// GetIdMappingWorkflowWithContext is the same as GetIdMappingWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See GetIdMappingWorkflow 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 *EntityResolution) GetIdMappingWorkflowWithContext(ctx aws.Context, input *GetIdMappingWorkflowInput, opts ...request.Option) (*GetIdMappingWorkflowOutput, error) { + req, out := c.GetIdMappingWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMatchId = "GetMatchId" // GetMatchIdRequest generates a "aws/request.Request" representing the @@ -790,6 +1175,306 @@ return out, req.Send() } +const opListIdMappingJobs = "ListIdMappingJobs" + +// ListIdMappingJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListIdMappingJobs 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 ListIdMappingJobs for more information on using the ListIdMappingJobs +// 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 ListIdMappingJobsRequest method. +// req, resp := client.ListIdMappingJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListIdMappingJobs +func (c *EntityResolution) ListIdMappingJobsRequest(input *ListIdMappingJobsInput) (req *request.Request, output *ListIdMappingJobsOutput) { + op := &request.Operation{ + Name: opListIdMappingJobs, + HTTPMethod: "GET", + HTTPPath: "/idmappingworkflows/{workflowName}/jobs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIdMappingJobsInput{} + } + + output = &ListIdMappingJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIdMappingJobs API operation for AWS EntityResolution. +// +// Lists all ID mapping jobs for a given workflow. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation ListIdMappingJobs for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - ResourceNotFoundException +// The resource could not be found. HTTP Status Code: 404 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListIdMappingJobs +func (c *EntityResolution) ListIdMappingJobs(input *ListIdMappingJobsInput) (*ListIdMappingJobsOutput, error) { + req, out := c.ListIdMappingJobsRequest(input) + return out, req.Send() +} + +// ListIdMappingJobsWithContext is the same as ListIdMappingJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListIdMappingJobs 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 *EntityResolution) ListIdMappingJobsWithContext(ctx aws.Context, input *ListIdMappingJobsInput, opts ...request.Option) (*ListIdMappingJobsOutput, error) { + req, out := c.ListIdMappingJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIdMappingJobsPages iterates over the pages of a ListIdMappingJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIdMappingJobs 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 ListIdMappingJobs operation. +// pageNum := 0 +// err := client.ListIdMappingJobsPages(params, +// func(page *entityresolution.ListIdMappingJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EntityResolution) ListIdMappingJobsPages(input *ListIdMappingJobsInput, fn func(*ListIdMappingJobsOutput, bool) bool) error { + return c.ListIdMappingJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIdMappingJobsPagesWithContext same as ListIdMappingJobsPages 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 *EntityResolution) ListIdMappingJobsPagesWithContext(ctx aws.Context, input *ListIdMappingJobsInput, fn func(*ListIdMappingJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListIdMappingJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListIdMappingJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListIdMappingJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListIdMappingWorkflows = "ListIdMappingWorkflows" + +// ListIdMappingWorkflowsRequest generates a "aws/request.Request" representing the +// client's request for the ListIdMappingWorkflows 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 ListIdMappingWorkflows for more information on using the ListIdMappingWorkflows +// 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 ListIdMappingWorkflowsRequest method. +// req, resp := client.ListIdMappingWorkflowsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListIdMappingWorkflows +func (c *EntityResolution) ListIdMappingWorkflowsRequest(input *ListIdMappingWorkflowsInput) (req *request.Request, output *ListIdMappingWorkflowsOutput) { + op := &request.Operation{ + Name: opListIdMappingWorkflows, + HTTPMethod: "GET", + HTTPPath: "/idmappingworkflows", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIdMappingWorkflowsInput{} + } + + output = &ListIdMappingWorkflowsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIdMappingWorkflows API operation for AWS EntityResolution. +// +// Returns a list of all the IdMappingWorkflows that have been created for an +// Amazon Web Services account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation ListIdMappingWorkflows for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListIdMappingWorkflows +func (c *EntityResolution) ListIdMappingWorkflows(input *ListIdMappingWorkflowsInput) (*ListIdMappingWorkflowsOutput, error) { + req, out := c.ListIdMappingWorkflowsRequest(input) + return out, req.Send() +} + +// ListIdMappingWorkflowsWithContext is the same as ListIdMappingWorkflows with the addition of +// the ability to pass a context and additional request options. +// +// See ListIdMappingWorkflows 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 *EntityResolution) ListIdMappingWorkflowsWithContext(ctx aws.Context, input *ListIdMappingWorkflowsInput, opts ...request.Option) (*ListIdMappingWorkflowsOutput, error) { + req, out := c.ListIdMappingWorkflowsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIdMappingWorkflowsPages iterates over the pages of a ListIdMappingWorkflows operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIdMappingWorkflows 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 ListIdMappingWorkflows operation. +// pageNum := 0 +// err := client.ListIdMappingWorkflowsPages(params, +// func(page *entityresolution.ListIdMappingWorkflowsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EntityResolution) ListIdMappingWorkflowsPages(input *ListIdMappingWorkflowsInput, fn func(*ListIdMappingWorkflowsOutput, bool) bool) error { + return c.ListIdMappingWorkflowsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIdMappingWorkflowsPagesWithContext same as ListIdMappingWorkflowsPages 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 *EntityResolution) ListIdMappingWorkflowsPagesWithContext(ctx aws.Context, input *ListIdMappingWorkflowsInput, fn func(*ListIdMappingWorkflowsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListIdMappingWorkflowsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListIdMappingWorkflowsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListIdMappingWorkflowsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMatchingJobs = "ListMatchingJobs" // ListMatchingJobsRequest generates a "aws/request.Request" representing the @@ -1090,6 +1775,155 @@ return p.Err() } +const opListProviderServices = "ListProviderServices" + +// ListProviderServicesRequest generates a "aws/request.Request" representing the +// client's request for the ListProviderServices 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 ListProviderServices for more information on using the ListProviderServices +// 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 ListProviderServicesRequest method. +// req, resp := client.ListProviderServicesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListProviderServices +func (c *EntityResolution) ListProviderServicesRequest(input *ListProviderServicesInput) (req *request.Request, output *ListProviderServicesOutput) { + op := &request.Operation{ + Name: opListProviderServices, + HTTPMethod: "GET", + HTTPPath: "/providerservices", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListProviderServicesInput{} + } + + output = &ListProviderServicesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListProviderServices API operation for AWS EntityResolution. +// +// Returns a list of all the ProviderServices that are available in this Amazon +// Web Services Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation ListProviderServices for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListProviderServices +func (c *EntityResolution) ListProviderServices(input *ListProviderServicesInput) (*ListProviderServicesOutput, error) { + req, out := c.ListProviderServicesRequest(input) + return out, req.Send() +} + +// ListProviderServicesWithContext is the same as ListProviderServices with the addition of +// the ability to pass a context and additional request options. +// +// See ListProviderServices 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 *EntityResolution) ListProviderServicesWithContext(ctx aws.Context, input *ListProviderServicesInput, opts ...request.Option) (*ListProviderServicesOutput, error) { + req, out := c.ListProviderServicesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListProviderServicesPages iterates over the pages of a ListProviderServices operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProviderServices 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 ListProviderServices operation. +// pageNum := 0 +// err := client.ListProviderServicesPages(params, +// func(page *entityresolution.ListProviderServicesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *EntityResolution) ListProviderServicesPages(input *ListProviderServicesInput, fn func(*ListProviderServicesOutput, bool) bool) error { + return c.ListProviderServicesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListProviderServicesPagesWithContext same as ListProviderServicesPages 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 *EntityResolution) ListProviderServicesPagesWithContext(ctx aws.Context, input *ListProviderServicesInput, fn func(*ListProviderServicesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProviderServicesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProviderServicesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProviderServicesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSchemaMappings = "ListSchemaMappings" // ListSchemaMappingsRequest generates a "aws/request.Request" representing the @@ -1327,6 +2161,111 @@ return out, req.Send() } +const opStartIdMappingJob = "StartIdMappingJob" + +// StartIdMappingJobRequest generates a "aws/request.Request" representing the +// client's request for the StartIdMappingJob 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 StartIdMappingJob for more information on using the StartIdMappingJob +// 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 StartIdMappingJobRequest method. +// req, resp := client.StartIdMappingJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/StartIdMappingJob +func (c *EntityResolution) StartIdMappingJobRequest(input *StartIdMappingJobInput) (req *request.Request, output *StartIdMappingJobOutput) { + op := &request.Operation{ + Name: opStartIdMappingJob, + HTTPMethod: "POST", + HTTPPath: "/idmappingworkflows/{workflowName}/jobs", + } + + if input == nil { + input = &StartIdMappingJobInput{} + } + + output = &StartIdMappingJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartIdMappingJob API operation for AWS EntityResolution. +// +// Starts the IdMappingJob of a workflow. The workflow must have previously +// been created using the CreateIdMappingWorkflow 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 AWS EntityResolution's +// API operation StartIdMappingJob for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - ResourceNotFoundException +// The resource could not be found. HTTP Status Code: 404 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ExceedsLimitException +// The request was rejected because it attempted to create resources beyond +// the current Entity Resolution account limits. The error message describes +// the limit exceeded. HTTP Status Code: 402 +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. Example: Workflow already exists, Schema already exists, +// Workflow is currently running, etc. HTTP Status Code: 400 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/StartIdMappingJob +func (c *EntityResolution) StartIdMappingJob(input *StartIdMappingJobInput) (*StartIdMappingJobOutput, error) { + req, out := c.StartIdMappingJobRequest(input) + return out, req.Send() +} + +// StartIdMappingJobWithContext is the same as StartIdMappingJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartIdMappingJob 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 *EntityResolution) StartIdMappingJobWithContext(ctx aws.Context, input *StartIdMappingJobInput, opts ...request.Option) (*StartIdMappingJobOutput, error) { + req, out := c.StartIdMappingJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartMatchingJob = "StartMatchingJob" // StartMatchingJobRequest generates a "aws/request.Request" representing the @@ -1615,6 +2554,102 @@ return out, req.Send() } +const opUpdateIdMappingWorkflow = "UpdateIdMappingWorkflow" + +// UpdateIdMappingWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the UpdateIdMappingWorkflow 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 UpdateIdMappingWorkflow for more information on using the UpdateIdMappingWorkflow +// 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 UpdateIdMappingWorkflowRequest method. +// req, resp := client.UpdateIdMappingWorkflowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/UpdateIdMappingWorkflow +func (c *EntityResolution) UpdateIdMappingWorkflowRequest(input *UpdateIdMappingWorkflowInput) (req *request.Request, output *UpdateIdMappingWorkflowOutput) { + op := &request.Operation{ + Name: opUpdateIdMappingWorkflow, + HTTPMethod: "PUT", + HTTPPath: "/idmappingworkflows/{workflowName}", + } + + if input == nil { + input = &UpdateIdMappingWorkflowInput{} + } + + output = &UpdateIdMappingWorkflowOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateIdMappingWorkflow API operation for AWS EntityResolution. +// +// Updates an existing IdMappingWorkflow. This method is identical to CreateIdMappingWorkflow, +// except it uses an HTTP PUT request instead of a POST request, and the IdMappingWorkflow +// must already exist for the method to succeed. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation UpdateIdMappingWorkflow for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - ResourceNotFoundException +// The resource could not be found. HTTP Status Code: 404 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/UpdateIdMappingWorkflow +func (c *EntityResolution) UpdateIdMappingWorkflow(input *UpdateIdMappingWorkflowInput) (*UpdateIdMappingWorkflowOutput, error) { + req, out := c.UpdateIdMappingWorkflowRequest(input) + return out, req.Send() +} + +// UpdateIdMappingWorkflowWithContext is the same as UpdateIdMappingWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateIdMappingWorkflow 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 *EntityResolution) UpdateIdMappingWorkflowWithContext(ctx aws.Context, input *UpdateIdMappingWorkflowInput, opts ...request.Option) (*UpdateIdMappingWorkflowOutput, error) { + req, out := c.UpdateIdMappingWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateMatchingWorkflow = "UpdateMatchingWorkflow" // UpdateMatchingWorkflowRequest generates a "aws/request.Request" representing the @@ -1711,6 +2746,108 @@ return out, req.Send() } +const opUpdateSchemaMapping = "UpdateSchemaMapping" + +// UpdateSchemaMappingRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSchemaMapping 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 UpdateSchemaMapping for more information on using the UpdateSchemaMapping +// 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 UpdateSchemaMappingRequest method. +// req, resp := client.UpdateSchemaMappingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/UpdateSchemaMapping +func (c *EntityResolution) UpdateSchemaMappingRequest(input *UpdateSchemaMappingInput) (req *request.Request, output *UpdateSchemaMappingOutput) { + op := &request.Operation{ + Name: opUpdateSchemaMapping, + HTTPMethod: "PUT", + HTTPPath: "/schemas/{schemaName}", + } + + if input == nil { + input = &UpdateSchemaMappingInput{} + } + + output = &UpdateSchemaMappingOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSchemaMapping API operation for AWS EntityResolution. +// +// Updates a schema mapping. +// +// A schema is immutable if it is being used by a workflow. Therefore, you can't +// update a schema mapping if it's associated with a workflow. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS EntityResolution's +// API operation UpdateSchemaMapping for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. HTTP Status Code: 429 +// +// - InternalServerException +// This exception occurs when there is an internal failure in the Entity Resolution +// service. HTTP Status Code: 500 +// +// - ResourceNotFoundException +// The resource could not be found. HTTP Status Code: 404 +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. HTTP Status Code: +// 403 +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. Example: Workflow already exists, Schema already exists, +// Workflow is currently running, etc. HTTP Status Code: 400 +// +// - ValidationException +// The input fails to satisfy the constraints specified by Entity Resolution. +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/UpdateSchemaMapping +func (c *EntityResolution) UpdateSchemaMapping(input *UpdateSchemaMappingInput) (*UpdateSchemaMappingOutput, error) { + req, out := c.UpdateSchemaMappingRequest(input) + return out, req.Send() +} + +// UpdateSchemaMappingWithContext is the same as UpdateSchemaMapping with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSchemaMapping 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 *EntityResolution) UpdateSchemaMappingWithContext(ctx aws.Context, input *UpdateSchemaMappingInput, opts ...request.Option) (*UpdateSchemaMappingOutput, error) { + req, out := c.UpdateSchemaMappingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // You do not have sufficient access to perform this action. HTTP Status Code: // 403 type AccessDeniedException struct { @@ -1842,6 +2979,262 @@ return s.RespMetadata.RequestID } +type CreateIdMappingWorkflowInput struct { + _ struct{} `type:"structure"` + + // A description of the workflow. + Description *string `locationName:"description" type:"string"` + + // An object which defines the idMappingType and the providerProperties. + // + // IdMappingTechniques is a required field + IdMappingTechniques *IdMappingTechniques `locationName:"idMappingTechniques" type:"structure" required:"true"` + + // A list of InputSource objects, which have the fields InputSourceARN and SchemaName. + // + // InputSourceConfig is a required field + InputSourceConfig []*IdMappingWorkflowInputSource `locationName:"inputSourceConfig" min:"1" type:"list" required:"true"` + + // A list of IdMappingWorkflowOutputSource objects, each of which contains fields + // OutputS3Path and Output. + // + // OutputSourceConfig is a required field + OutputSourceConfig []*IdMappingWorkflowOutputSource `locationName:"outputSourceConfig" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes + // this role to create resources on your behalf as part of workflow execution. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The name of the workflow. There can't be multiple IdMappingWorkflows with + // the same name. + // + // WorkflowName is a required field + WorkflowName *string `locationName:"workflowName" 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 CreateIdMappingWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIdMappingWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateIdMappingWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateIdMappingWorkflowInput"} + if s.IdMappingTechniques == nil { + invalidParams.Add(request.NewErrParamRequired("IdMappingTechniques")) + } + if s.InputSourceConfig == nil { + invalidParams.Add(request.NewErrParamRequired("InputSourceConfig")) + } + if s.InputSourceConfig != nil && len(s.InputSourceConfig) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InputSourceConfig", 1)) + } + if s.OutputSourceConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputSourceConfig")) + } + if s.OutputSourceConfig != nil && len(s.OutputSourceConfig) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputSourceConfig", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + if s.IdMappingTechniques != nil { + if err := s.IdMappingTechniques.Validate(); err != nil { + invalidParams.AddNested("IdMappingTechniques", err.(request.ErrInvalidParams)) + } + } + if s.InputSourceConfig != nil { + for i, v := range s.InputSourceConfig { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputSourceConfig", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OutputSourceConfig != nil { + for i, v := range s.OutputSourceConfig { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputSourceConfig", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateIdMappingWorkflowInput) SetDescription(v string) *CreateIdMappingWorkflowInput { + s.Description = &v + return s +} + +// SetIdMappingTechniques sets the IdMappingTechniques field's value. +func (s *CreateIdMappingWorkflowInput) SetIdMappingTechniques(v *IdMappingTechniques) *CreateIdMappingWorkflowInput { + s.IdMappingTechniques = v + return s +} + +// SetInputSourceConfig sets the InputSourceConfig field's value. +func (s *CreateIdMappingWorkflowInput) SetInputSourceConfig(v []*IdMappingWorkflowInputSource) *CreateIdMappingWorkflowInput { + s.InputSourceConfig = v + return s +} + +// SetOutputSourceConfig sets the OutputSourceConfig field's value. +func (s *CreateIdMappingWorkflowInput) SetOutputSourceConfig(v []*IdMappingWorkflowOutputSource) *CreateIdMappingWorkflowInput { + s.OutputSourceConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateIdMappingWorkflowInput) SetRoleArn(v string) *CreateIdMappingWorkflowInput { + s.RoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateIdMappingWorkflowInput) SetTags(v map[string]*string) *CreateIdMappingWorkflowInput { + s.Tags = v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *CreateIdMappingWorkflowInput) SetWorkflowName(v string) *CreateIdMappingWorkflowInput { + s.WorkflowName = &v + return s +} + +type CreateIdMappingWorkflowOutput struct { + _ struct{} `type:"structure"` + + // A description of the workflow. + Description *string `locationName:"description" type:"string"` + + // An object which defines the idMappingType and the providerProperties. + // + // IdMappingTechniques is a required field + IdMappingTechniques *IdMappingTechniques `locationName:"idMappingTechniques" type:"structure" required:"true"` + + // A list of InputSource objects, which have the fields InputSourceARN and SchemaName. + // + // InputSourceConfig is a required field + InputSourceConfig []*IdMappingWorkflowInputSource `locationName:"inputSourceConfig" min:"1" type:"list" required:"true"` + + // A list of IdMappingWorkflowOutputSource objects, each of which contains fields + // OutputS3Path and Output. + // + // OutputSourceConfig is a required field + OutputSourceConfig []*IdMappingWorkflowOutputSource `locationName:"outputSourceConfig" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes + // this role to create resources on your behalf as part of workflow execution. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The ARN (Amazon Resource Name) that Entity Resolution generated for the IDMappingWorkflow. + // + // WorkflowArn is a required field + WorkflowArn *string `locationName:"workflowArn" type:"string" required:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `locationName:"workflowName" 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 CreateIdMappingWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIdMappingWorkflowOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *CreateIdMappingWorkflowOutput) SetDescription(v string) *CreateIdMappingWorkflowOutput { + s.Description = &v + return s +} + +// SetIdMappingTechniques sets the IdMappingTechniques field's value. +func (s *CreateIdMappingWorkflowOutput) SetIdMappingTechniques(v *IdMappingTechniques) *CreateIdMappingWorkflowOutput { + s.IdMappingTechniques = v + return s +} + +// SetInputSourceConfig sets the InputSourceConfig field's value. +func (s *CreateIdMappingWorkflowOutput) SetInputSourceConfig(v []*IdMappingWorkflowInputSource) *CreateIdMappingWorkflowOutput { + s.InputSourceConfig = v + return s +} + +// SetOutputSourceConfig sets the OutputSourceConfig field's value. +func (s *CreateIdMappingWorkflowOutput) SetOutputSourceConfig(v []*IdMappingWorkflowOutputSource) *CreateIdMappingWorkflowOutput { + s.OutputSourceConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateIdMappingWorkflowOutput) SetRoleArn(v string) *CreateIdMappingWorkflowOutput { + s.RoleArn = &v + return s +} + +// SetWorkflowArn sets the WorkflowArn field's value. +func (s *CreateIdMappingWorkflowOutput) SetWorkflowArn(v string) *CreateIdMappingWorkflowOutput { + s.WorkflowArn = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *CreateIdMappingWorkflowOutput) SetWorkflowName(v string) *CreateIdMappingWorkflowOutput { + s.WorkflowName = &v + return s +} + type CreateMatchingWorkflowInput struct { _ struct{} `type:"structure"` @@ -1877,11 +3270,11 @@ // The tags used to organize, track, or control access for this resource. Tags map[string]*string `locationName:"tags" type:"map"` - // The name of the workflow. There cannot be multiple DataIntegrationWorkflows - // with the same name. + // The name of the workflow. There can't be multiple MatchingWorkflows with + // the same name. // // WorkflowName is a required field - WorkflowName *string `locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -1926,6 +3319,9 @@ if s.WorkflowName == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowName")) } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } if s.InputSourceConfig != nil { for i, v := range s.InputSourceConfig { if v == nil { @@ -2046,7 +3442,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2128,11 +3524,11 @@ // MappedInputFields is a required field MappedInputFields []*SchemaInputAttribute `locationName:"mappedInputFields" min:"2" type:"list" required:"true"` - // The name of the schema. There cannot be multiple SchemaMappings with the - // same name. + // The name of the schema. There can't be multiple SchemaMappings with the same + // name. // // SchemaName is a required field - SchemaName *string `locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `locationName:"schemaName" min:"1" type:"string" required:"true"` // The tags used to organize, track, or control access for this resource. Tags map[string]*string `locationName:"tags" type:"map"` @@ -2168,6 +3564,9 @@ if s.SchemaName == nil { invalidParams.Add(request.NewErrParamRequired("SchemaName")) } + if s.SchemaName != nil && len(*s.SchemaName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SchemaName", 1)) + } if s.MappedInputFields != nil { for i, v := range s.MappedInputFields { if v == nil { @@ -2232,7 +3631,7 @@ // The name of the schema. // // SchemaName is a required field - SchemaName *string `locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `locationName:"schemaName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2277,13 +3676,95 @@ return s } +type DeleteIdMappingWorkflowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the workflow to be deleted. + // + // WorkflowName is a required field + WorkflowName *string `location:"uri" locationName:"workflowName" 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 DeleteIdMappingWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIdMappingWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteIdMappingWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteIdMappingWorkflowInput"} + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *DeleteIdMappingWorkflowInput) SetWorkflowName(v string) *DeleteIdMappingWorkflowInput { + s.WorkflowName = &v + return s +} + +type DeleteIdMappingWorkflowOutput struct { + _ struct{} `type:"structure"` + + // A successful operation message. + // + // Message is a required field + Message *string `locationName:"message" 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 DeleteIdMappingWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIdMappingWorkflowOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *DeleteIdMappingWorkflowOutput) SetMessage(v string) *DeleteIdMappingWorkflowOutput { + s.Message = &v + return s +} + type DeleteMatchingWorkflowInput struct { _ struct{} `type:"structure" nopayload:"true"` // The name of the workflow to be retrieved. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2365,7 +3846,7 @@ // The name of the schema to delete. // // SchemaName is a required field - SchemaName *string `location:"uri" locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `location:"uri" locationName:"schemaName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2545,6 +4026,334 @@ return s.RespMetadata.RequestID } +type GetIdMappingJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the job. + // + // JobId is a required field + JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `location:"uri" locationName:"workflowName" 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 GetIdMappingJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIdMappingJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetIdMappingJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetIdMappingJobInput"} + if s.JobId == nil { + invalidParams.Add(request.NewErrParamRequired("JobId")) + } + if s.JobId != nil && len(*s.JobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) + } + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobId sets the JobId field's value. +func (s *GetIdMappingJobInput) SetJobId(v string) *GetIdMappingJobInput { + s.JobId = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *GetIdMappingJobInput) SetWorkflowName(v string) *GetIdMappingJobInput { + s.WorkflowName = &v + return s +} + +type GetIdMappingJobOutput struct { + _ struct{} `type:"structure"` + + // The time at which the job has finished. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // An object containing an error message, if there was an error. + ErrorDetails *ErrorDetails `locationName:"errorDetails" type:"structure"` + + // The ID of the job. + // + // JobId is a required field + JobId *string `locationName:"jobId" type:"string" required:"true"` + + // Metrics associated with the execution, specifically total records processed, + // unique IDs generated, and records the execution skipped. + Metrics *IdMappingJobMetrics `locationName:"metrics" type:"structure"` + + // The time at which the job was started. + // + // StartTime is a required field + StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` + + // The current status of the job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"JobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIdMappingJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIdMappingJobOutput) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *GetIdMappingJobOutput) SetEndTime(v time.Time) *GetIdMappingJobOutput { + s.EndTime = &v + return s +} + +// SetErrorDetails sets the ErrorDetails field's value. +func (s *GetIdMappingJobOutput) SetErrorDetails(v *ErrorDetails) *GetIdMappingJobOutput { + s.ErrorDetails = v + return s +} + +// SetJobId sets the JobId field's value. +func (s *GetIdMappingJobOutput) SetJobId(v string) *GetIdMappingJobOutput { + s.JobId = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *GetIdMappingJobOutput) SetMetrics(v *IdMappingJobMetrics) *GetIdMappingJobOutput { + s.Metrics = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *GetIdMappingJobOutput) SetStartTime(v time.Time) *GetIdMappingJobOutput { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetIdMappingJobOutput) SetStatus(v string) *GetIdMappingJobOutput { + s.Status = &v + return s +} + +type GetIdMappingWorkflowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `location:"uri" locationName:"workflowName" 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 GetIdMappingWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIdMappingWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetIdMappingWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetIdMappingWorkflowInput"} + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *GetIdMappingWorkflowInput) SetWorkflowName(v string) *GetIdMappingWorkflowInput { + s.WorkflowName = &v + return s +} + +type GetIdMappingWorkflowOutput struct { + _ struct{} `type:"structure"` + + // The timestamp of when the workflow was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the workflow. + Description *string `locationName:"description" type:"string"` + + // An object which defines the idMappingType and the providerProperties. + // + // IdMappingTechniques is a required field + IdMappingTechniques *IdMappingTechniques `locationName:"idMappingTechniques" type:"structure" required:"true"` + + // A list of InputSource objects, which have the fields InputSourceARN and SchemaName. + // + // InputSourceConfig is a required field + InputSourceConfig []*IdMappingWorkflowInputSource `locationName:"inputSourceConfig" min:"1" type:"list" required:"true"` + + // A list of OutputSource objects, each of which contains fields OutputS3Path + // and KMSArn. + // + // OutputSourceConfig is a required field + OutputSourceConfig []*IdMappingWorkflowOutputSource `locationName:"outputSourceConfig" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes + // this role to access resources on your behalf. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The timestamp of when the workflow was last updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The ARN (Amazon Resource Name) that Entity Resolution generated for the IdMappingWorkflow . + // + // WorkflowArn is a required field + WorkflowArn *string `locationName:"workflowArn" type:"string" required:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `locationName:"workflowName" 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 GetIdMappingWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIdMappingWorkflowOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetIdMappingWorkflowOutput) SetCreatedAt(v time.Time) *GetIdMappingWorkflowOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetIdMappingWorkflowOutput) SetDescription(v string) *GetIdMappingWorkflowOutput { + s.Description = &v + return s +} + +// SetIdMappingTechniques sets the IdMappingTechniques field's value. +func (s *GetIdMappingWorkflowOutput) SetIdMappingTechniques(v *IdMappingTechniques) *GetIdMappingWorkflowOutput { + s.IdMappingTechniques = v + return s +} + +// SetInputSourceConfig sets the InputSourceConfig field's value. +func (s *GetIdMappingWorkflowOutput) SetInputSourceConfig(v []*IdMappingWorkflowInputSource) *GetIdMappingWorkflowOutput { + s.InputSourceConfig = v + return s +} + +// SetOutputSourceConfig sets the OutputSourceConfig field's value. +func (s *GetIdMappingWorkflowOutput) SetOutputSourceConfig(v []*IdMappingWorkflowOutputSource) *GetIdMappingWorkflowOutput { + s.OutputSourceConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *GetIdMappingWorkflowOutput) SetRoleArn(v string) *GetIdMappingWorkflowOutput { + s.RoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetIdMappingWorkflowOutput) SetTags(v map[string]*string) *GetIdMappingWorkflowOutput { + s.Tags = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetIdMappingWorkflowOutput) SetUpdatedAt(v time.Time) *GetIdMappingWorkflowOutput { + s.UpdatedAt = &v + return s +} + +// SetWorkflowArn sets the WorkflowArn field's value. +func (s *GetIdMappingWorkflowOutput) SetWorkflowArn(v string) *GetIdMappingWorkflowOutput { + s.WorkflowArn = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *GetIdMappingWorkflowOutput) SetWorkflowName(v string) *GetIdMappingWorkflowOutput { + s.WorkflowName = &v + return s +} + type GetMatchIdInput struct { _ struct{} `type:"structure"` @@ -2560,7 +4369,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2654,7 +4463,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2798,7 +4607,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2894,7 +4703,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -2987,7 +4796,7 @@ // The name of the schema to be retrieved. // // SchemaName is a required field - SchemaName *string `location:"uri" locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `location:"uri" locationName:"schemaName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -3041,6 +4850,11 @@ // A description of the schema. Description *string `locationName:"description" type:"string"` + // Specifies whether the schema mapping has been applied to a workflow. + // + // HasWorkflows is a required field + HasWorkflows *bool `locationName:"hasWorkflows" type:"boolean" required:"true"` + // A list of MappedInputFields. Each MappedInputField corresponds to a column // the source data table, and contains column name plus additional information // Venice uses for matching. @@ -3056,7 +4870,7 @@ // The name of the schema. // // SchemaName is a required field - SchemaName *string `locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `locationName:"schemaName" min:"1" type:"string" required:"true"` // The tags used to organize, track, or control access for this resource. Tags map[string]*string `locationName:"tags" type:"map"` @@ -3097,6 +4911,12 @@ return s } +// SetHasWorkflows sets the HasWorkflows field's value. +func (s *GetSchemaMappingOutput) SetHasWorkflows(v bool) *GetSchemaMappingOutput { + s.HasWorkflows = &v + return s +} + // SetMappedInputFields sets the MappedInputFields field's value. func (s *GetSchemaMappingOutput) SetMappedInputFields(v []*SchemaInputAttribute) *GetSchemaMappingOutput { s.MappedInputFields = v @@ -3127,6 +4947,315 @@ return s } +// An object containing InputRecords, TotalRecordsProcessed, MatchIDs, and RecordsNotProcessed. +type IdMappingJobMetrics struct { + _ struct{} `type:"structure"` + + // The total number of input records. + InputRecords *int64 `locationName:"inputRecords" type:"integer"` + + // The total number of records that did not get processed. + RecordsNotProcessed *int64 `locationName:"recordsNotProcessed" type:"integer"` + + // The total number of records processed. + TotalRecordsProcessed *int64 `locationName:"totalRecordsProcessed" 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 IdMappingJobMetrics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdMappingJobMetrics) GoString() string { + return s.String() +} + +// SetInputRecords sets the InputRecords field's value. +func (s *IdMappingJobMetrics) SetInputRecords(v int64) *IdMappingJobMetrics { + s.InputRecords = &v + return s +} + +// SetRecordsNotProcessed sets the RecordsNotProcessed field's value. +func (s *IdMappingJobMetrics) SetRecordsNotProcessed(v int64) *IdMappingJobMetrics { + s.RecordsNotProcessed = &v + return s +} + +// SetTotalRecordsProcessed sets the TotalRecordsProcessed field's value. +func (s *IdMappingJobMetrics) SetTotalRecordsProcessed(v int64) *IdMappingJobMetrics { + s.TotalRecordsProcessed = &v + return s +} + +// An object which defines the ID mapping techniques and provider configurations. +type IdMappingTechniques struct { + _ struct{} `type:"structure"` + + // The type of ID mapping. + // + // IdMappingType is a required field + IdMappingType *string `locationName:"idMappingType" type:"string" required:"true" enum:"IdMappingType"` + + // An object which defines any additional configurations required by the provider + // service. + // + // ProviderProperties is a required field + ProviderProperties *ProviderProperties `locationName:"providerProperties" 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 IdMappingTechniques) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdMappingTechniques) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IdMappingTechniques) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IdMappingTechniques"} + if s.IdMappingType == nil { + invalidParams.Add(request.NewErrParamRequired("IdMappingType")) + } + if s.ProviderProperties == nil { + invalidParams.Add(request.NewErrParamRequired("ProviderProperties")) + } + if s.ProviderProperties != nil { + if err := s.ProviderProperties.Validate(); err != nil { + invalidParams.AddNested("ProviderProperties", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdMappingType sets the IdMappingType field's value. +func (s *IdMappingTechniques) SetIdMappingType(v string) *IdMappingTechniques { + s.IdMappingType = &v + return s +} + +// SetProviderProperties sets the ProviderProperties field's value. +func (s *IdMappingTechniques) SetProviderProperties(v *ProviderProperties) *IdMappingTechniques { + s.ProviderProperties = v + return s +} + +// An object containing InputSourceARN and SchemaName. +type IdMappingWorkflowInputSource struct { + _ struct{} `type:"structure"` + + // An Gluetable ARN for the input source table. + // + // InputSourceARN is a required field + InputSourceARN *string `locationName:"inputSourceARN" type:"string" required:"true"` + + // The name of the schema to be retrieved. + // + // SchemaName is a required field + SchemaName *string `locationName:"schemaName" 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 IdMappingWorkflowInputSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdMappingWorkflowInputSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IdMappingWorkflowInputSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IdMappingWorkflowInputSource"} + if s.InputSourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("InputSourceARN")) + } + if s.SchemaName == nil { + invalidParams.Add(request.NewErrParamRequired("SchemaName")) + } + if s.SchemaName != nil && len(*s.SchemaName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SchemaName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInputSourceARN sets the InputSourceARN field's value. +func (s *IdMappingWorkflowInputSource) SetInputSourceARN(v string) *IdMappingWorkflowInputSource { + s.InputSourceARN = &v + return s +} + +// SetSchemaName sets the SchemaName field's value. +func (s *IdMappingWorkflowInputSource) SetSchemaName(v string) *IdMappingWorkflowInputSource { + s.SchemaName = &v + return s +} + +// The output source for the ID mapping workflow. +type IdMappingWorkflowOutputSource struct { + _ struct{} `type:"structure"` + + // Customer KMS ARN for encryption at rest. If not provided, system will use + // an Entity Resolution managed KMS key. + KMSArn *string `type:"string"` + + // The S3 path to which Entity Resolution will write the output table. + // + // OutputS3Path is a required field + OutputS3Path *string `locationName:"outputS3Path" 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 IdMappingWorkflowOutputSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdMappingWorkflowOutputSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IdMappingWorkflowOutputSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IdMappingWorkflowOutputSource"} + if s.OutputS3Path == nil { + invalidParams.Add(request.NewErrParamRequired("OutputS3Path")) + } + if s.OutputS3Path != nil && len(*s.OutputS3Path) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputS3Path", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKMSArn sets the KMSArn field's value. +func (s *IdMappingWorkflowOutputSource) SetKMSArn(v string) *IdMappingWorkflowOutputSource { + s.KMSArn = &v + return s +} + +// SetOutputS3Path sets the OutputS3Path field's value. +func (s *IdMappingWorkflowOutputSource) SetOutputS3Path(v string) *IdMappingWorkflowOutputSource { + s.OutputS3Path = &v + return s +} + +// A list of IdMappingWorkflowSummary objects, each of which contain the fields +// WorkflowName, WorkflowArn, CreatedAt, and UpdatedAt. +type IdMappingWorkflowSummary struct { + _ struct{} `type:"structure"` + + // The timestamp of when the workflow was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The timestamp of when the workflow was last updated. + // + // UpdatedAt is a required field + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"` + + // The ARN (Amazon Resource Name) that Entity Resolution generated for the IdMappingWorkflow. + // + // WorkflowArn is a required field + WorkflowArn *string `locationName:"workflowArn" type:"string" required:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `locationName:"workflowName" 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 IdMappingWorkflowSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdMappingWorkflowSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *IdMappingWorkflowSummary) SetCreatedAt(v time.Time) *IdMappingWorkflowSummary { + s.CreatedAt = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *IdMappingWorkflowSummary) SetUpdatedAt(v time.Time) *IdMappingWorkflowSummary { + s.UpdatedAt = &v + return s +} + +// SetWorkflowArn sets the WorkflowArn field's value. +func (s *IdMappingWorkflowSummary) SetWorkflowArn(v string) *IdMappingWorkflowSummary { + s.WorkflowArn = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *IdMappingWorkflowSummary) SetWorkflowName(v string) *IdMappingWorkflowSummary { + s.WorkflowName = &v + return s +} + // An object which defines an incremental run type and has only incrementalRunType // as a field. type IncrementalRunConfig struct { @@ -3178,7 +5307,7 @@ // The name of the schema to be retrieved. // // SchemaName is a required field - SchemaName *string `locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `locationName:"schemaName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -3208,6 +5337,9 @@ if s.SchemaName == nil { invalidParams.Add(request.NewErrParamRequired("SchemaName")) } + if s.SchemaName != nil && len(*s.SchemaName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SchemaName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -3233,6 +5365,57 @@ return s } +// The Amazon S3 location that temporarily stores your data while it processes. +// Your information won't be saved permanently. +type IntermediateSourceConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon S3 location (bucket and prefix). For example: s3://provider_bucket/DOC-EXAMPLE-BUCKET + // + // IntermediateS3Path is a required field + IntermediateS3Path *string `locationName:"intermediateS3Path" 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 IntermediateSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntermediateSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IntermediateSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IntermediateSourceConfiguration"} + if s.IntermediateS3Path == nil { + invalidParams.Add(request.NewErrParamRequired("IntermediateS3Path")) + } + if s.IntermediateS3Path != nil && len(*s.IntermediateS3Path) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntermediateS3Path", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIntermediateS3Path sets the IntermediateS3Path field's value. +func (s *IntermediateSourceConfiguration) SetIntermediateS3Path(v string) *IntermediateSourceConfiguration { + s.IntermediateS3Path = &v + return s +} + // This exception occurs when there is an internal failure in the Entity Resolution // service. HTTP Status Code: 500 type InternalServerException struct { @@ -3422,19 +5605,225 @@ return s } +type ListIdMappingJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of objects returned per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token from the previous API call. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The name of the workflow to be retrieved. + // + // WorkflowName is a required field + WorkflowName *string `location:"uri" locationName:"workflowName" 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 ListIdMappingJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdMappingJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIdMappingJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIdMappingJobsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIdMappingJobsInput) SetMaxResults(v int64) *ListIdMappingJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIdMappingJobsInput) SetNextToken(v string) *ListIdMappingJobsInput { + s.NextToken = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *ListIdMappingJobsInput) SetWorkflowName(v string) *ListIdMappingJobsInput { + s.WorkflowName = &v + return s +} + +type ListIdMappingJobsOutput struct { + _ struct{} `type:"structure"` + + // A list of JobSummary objects. + Jobs []*JobSummary `locationName:"jobs" type:"list"` + + // The pagination token from the previous API call. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdMappingJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdMappingJobsOutput) GoString() string { + return s.String() +} + +// SetJobs sets the Jobs field's value. +func (s *ListIdMappingJobsOutput) SetJobs(v []*JobSummary) *ListIdMappingJobsOutput { + s.Jobs = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIdMappingJobsOutput) SetNextToken(v string) *ListIdMappingJobsOutput { + s.NextToken = &v + return s +} + +type ListIdMappingWorkflowsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of objects returned per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // The pagination token from the previous API call. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdMappingWorkflowsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdMappingWorkflowsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIdMappingWorkflowsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIdMappingWorkflowsInput"} + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIdMappingWorkflowsInput) SetMaxResults(v int64) *ListIdMappingWorkflowsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIdMappingWorkflowsInput) SetNextToken(v string) *ListIdMappingWorkflowsInput { + s.NextToken = &v + return s +} + +type ListIdMappingWorkflowsOutput struct { + _ struct{} `type:"structure"` + + // The pagination token from the previous API call. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of IdMappingWorkflowSummary objects. + WorkflowSummaries []*IdMappingWorkflowSummary `locationName:"workflowSummaries" 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 ListIdMappingWorkflowsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdMappingWorkflowsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIdMappingWorkflowsOutput) SetNextToken(v string) *ListIdMappingWorkflowsOutput { + s.NextToken = &v + return s +} + +// SetWorkflowSummaries sets the WorkflowSummaries field's value. +func (s *ListIdMappingWorkflowsOutput) SetWorkflowSummaries(v []*IdMappingWorkflowSummary) *ListIdMappingWorkflowsOutput { + s.WorkflowSummaries = v + return s +} + type ListMatchingJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of objects returned per page. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // The pagination token from the previous ListSchemaMappings API call. + // The pagination token from the previous API call. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` // The name of the workflow to be retrieved. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -3502,7 +5891,7 @@ // time, and end time of a job. Jobs []*JobSummary `locationName:"jobs" type:"list"` - // The pagination token from the previous ListSchemaMappings API call. + // The pagination token from the previous API call. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -3542,7 +5931,7 @@ // The maximum number of objects returned per page. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` - // The pagination token from the previous ListSchemaMappings API call. + // The pagination token from the previous API call. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } @@ -3592,7 +5981,7 @@ type ListMatchingWorkflowsOutput struct { _ struct{} `type:"structure"` - // The pagination token from the previous ListSchemaMappings API call. + // The pagination token from the previous API call. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // A list of MatchingWorkflowSummary objects, each of which contain the fields @@ -3630,13 +6019,121 @@ return s } +type ListProviderServicesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of objects returned per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"15" type:"integer"` + + // The pagination token from the previous API call. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The name of the provider. This name is typically the company name. + ProviderName *string `location:"querystring" locationName:"providerName" 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 ListProviderServicesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProviderServicesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProviderServicesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProviderServicesInput"} + if s.MaxResults != nil && *s.MaxResults < 15 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 15)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ProviderName != nil && len(*s.ProviderName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProviderName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProviderServicesInput) SetMaxResults(v int64) *ListProviderServicesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProviderServicesInput) SetNextToken(v string) *ListProviderServicesInput { + s.NextToken = &v + return s +} + +// SetProviderName sets the ProviderName field's value. +func (s *ListProviderServicesInput) SetProviderName(v string) *ListProviderServicesInput { + s.ProviderName = &v + return s +} + +type ListProviderServicesOutput struct { + _ struct{} `type:"structure"` + + // The pagination token from the previous API call. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of ProviderServices objects. + ProviderServiceSummaries []*ProviderServiceSummary `locationName:"providerServiceSummaries" 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 ListProviderServicesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProviderServicesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProviderServicesOutput) SetNextToken(v string) *ListProviderServicesOutput { + s.NextToken = &v + return s +} + +// SetProviderServiceSummaries sets the ProviderServiceSummaries field's value. +func (s *ListProviderServicesOutput) SetProviderServiceSummaries(v []*ProviderServiceSummary) *ListProviderServicesOutput { + s.ProviderServiceSummaries = v + return s +} + type ListSchemaMappingsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of objects returned per page. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` - // The pagination token from the previous ListSchemaMappings API call. + // The pagination token from the previous API call. NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` } @@ -3686,7 +6183,7 @@ type ListSchemaMappingsOutput struct { _ struct{} `type:"structure"` - // The pagination token from the previous ListDomains API call. + // The pagination token from the previous API call. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // A list of SchemaMappingSummary objects, each of which contain the fields @@ -3816,6 +6313,12 @@ // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + // The method that has been specified for data matching, either using matching + // provided by Entity Resolution or through a provider service. + // + // ResolutionType is a required field + ResolutionType *string `locationName:"resolutionType" type:"string" required:"true" enum:"ResolutionType"` + // The timestamp of when the workflow was last updated. // // UpdatedAt is a required field @@ -3829,7 +6332,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -3856,6 +6359,12 @@ return s } +// SetResolutionType sets the ResolutionType field's value. +func (s *MatchingWorkflowSummary) SetResolutionType(v string) *MatchingWorkflowSummary { + s.ResolutionType = &v + return s +} + // SetUpdatedAt sets the UpdatedAt field's value. func (s *MatchingWorkflowSummary) SetUpdatedAt(v time.Time) *MatchingWorkflowSummary { s.UpdatedAt = &v @@ -3959,7 +6468,7 @@ // The S3 path to which Entity Resolution will write the output table. // // OutputS3Path is a required field - OutputS3Path *string `locationName:"outputS3Path" type:"string" required:"true"` + OutputS3Path *string `locationName:"outputS3Path" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -3989,6 +6498,9 @@ if s.OutputS3Path == nil { invalidParams.Add(request.NewErrParamRequired("OutputS3Path")) } + if s.OutputS3Path != nil && len(*s.OutputS3Path) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputS3Path", 1)) + } if s.Output != nil { for i, v := range s.Output { if v == nil { @@ -4030,10 +6542,158 @@ return s } +// An object containing the providerServiceARN, intermediateSourceConfiguration, +// and providerConfiguration. +type ProviderProperties struct { + _ struct{} `type:"structure"` + + // The Amazon S3 location that temporarily stores your data while it processes. + // Your information won't be saved permanently. + IntermediateSourceConfiguration *IntermediateSourceConfiguration `locationName:"intermediateSourceConfiguration" type:"structure"` + + // The ARN of the provider service. + // + // ProviderServiceArn is a required field + ProviderServiceArn *string `locationName:"providerServiceArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProviderProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProviderProperties) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProviderProperties) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProviderProperties"} + if s.ProviderServiceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProviderServiceArn")) + } + if s.ProviderServiceArn != nil && len(*s.ProviderServiceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ProviderServiceArn", 20)) + } + if s.IntermediateSourceConfiguration != nil { + if err := s.IntermediateSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("IntermediateSourceConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIntermediateSourceConfiguration sets the IntermediateSourceConfiguration field's value. +func (s *ProviderProperties) SetIntermediateSourceConfiguration(v *IntermediateSourceConfiguration) *ProviderProperties { + s.IntermediateSourceConfiguration = v + return s +} + +// SetProviderServiceArn sets the ProviderServiceArn field's value. +func (s *ProviderProperties) SetProviderServiceArn(v string) *ProviderProperties { + s.ProviderServiceArn = &v + return s +} + +// A list of ProviderService objects, each of which contain the fields providerName, +// providerServiceArn, providerServiceName, and providerServiceType. +type ProviderServiceSummary struct { + _ struct{} `type:"structure"` + + // The name of the provider. This name is typically the company name. + // + // ProviderName is a required field + ProviderName *string `locationName:"providerName" min:"1" type:"string" required:"true"` + + // The ARN (Amazon Resource Name) that Entity Resolution generated for the providerService. + // + // ProviderServiceArn is a required field + ProviderServiceArn *string `locationName:"providerServiceArn" min:"20" type:"string" required:"true"` + + // The display name of the provider service. + // + // ProviderServiceDisplayName is a required field + ProviderServiceDisplayName *string `locationName:"providerServiceDisplayName" type:"string" required:"true"` + + // The name of the product that the provider service provides. + // + // ProviderServiceName is a required field + ProviderServiceName *string `locationName:"providerServiceName" min:"1" type:"string" required:"true"` + + // The type of provider service. + // + // ProviderServiceType is a required field + ProviderServiceType *string `locationName:"providerServiceType" type:"string" required:"true" enum:"ServiceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProviderServiceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProviderServiceSummary) GoString() string { + return s.String() +} + +// SetProviderName sets the ProviderName field's value. +func (s *ProviderServiceSummary) SetProviderName(v string) *ProviderServiceSummary { + s.ProviderName = &v + return s +} + +// SetProviderServiceArn sets the ProviderServiceArn field's value. +func (s *ProviderServiceSummary) SetProviderServiceArn(v string) *ProviderServiceSummary { + s.ProviderServiceArn = &v + return s +} + +// SetProviderServiceDisplayName sets the ProviderServiceDisplayName field's value. +func (s *ProviderServiceSummary) SetProviderServiceDisplayName(v string) *ProviderServiceSummary { + s.ProviderServiceDisplayName = &v + return s +} + +// SetProviderServiceName sets the ProviderServiceName field's value. +func (s *ProviderServiceSummary) SetProviderServiceName(v string) *ProviderServiceSummary { + s.ProviderServiceName = &v + return s +} + +// SetProviderServiceType sets the ProviderServiceType field's value. +func (s *ProviderServiceSummary) SetProviderServiceType(v string) *ProviderServiceSummary { + s.ProviderServiceType = &v + return s +} + // An object which defines the resolutionType and the ruleBasedProperties. type ResolutionTechniques struct { _ struct{} `type:"structure"` + // The properties of the provider service. + ProviderProperties *ProviderProperties `locationName:"providerProperties" type:"structure"` + // The type of matching. There are two types of matching: RULE_MATCHING and // ML_MATCHING. // @@ -4069,6 +6729,11 @@ if s.ResolutionType == nil { invalidParams.Add(request.NewErrParamRequired("ResolutionType")) } + if s.ProviderProperties != nil { + if err := s.ProviderProperties.Validate(); err != nil { + invalidParams.AddNested("ProviderProperties", err.(request.ErrInvalidParams)) + } + } if s.RuleBasedProperties != nil { if err := s.RuleBasedProperties.Validate(); err != nil { invalidParams.AddNested("RuleBasedProperties", err.(request.ErrInvalidParams)) @@ -4081,6 +6746,12 @@ return nil } +// SetProviderProperties sets the ProviderProperties field's value. +func (s *ResolutionTechniques) SetProviderProperties(v *ProviderProperties) *ResolutionTechniques { + s.ProviderProperties = v + return s +} + // SetResolutionType sets the ResolutionType field's value. func (s *ResolutionTechniques) SetResolutionType(v string) *ResolutionTechniques { s.ResolutionType = &v @@ -4306,7 +6977,7 @@ return s } -// An object containing FieldField, Type, GroupName, and MatchKey. +// An object containing FieldName, Type, GroupName, and MatchKey. type SchemaInputAttribute struct { _ struct{} `type:"structure"` @@ -4330,6 +7001,9 @@ // will still be included in the output table. MatchKey *string `locationName:"matchKey" type:"string"` + // The subtype of the attribute, selected from a list of values. + SubType *string `locationName:"subType" type:"string"` + // The type of the attribute, selected from a list of values. // // Type is a required field @@ -4388,6 +7062,12 @@ return s } +// SetSubType sets the SubType field's value. +func (s *SchemaInputAttribute) SetSubType(v string) *SchemaInputAttribute { + s.SubType = &v + return s +} + // SetType sets the Type field's value. func (s *SchemaInputAttribute) SetType(v string) *SchemaInputAttribute { s.Type = &v @@ -4403,6 +7083,11 @@ // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + // Specifies whether the schema mapping has been applied to a workflow. + // + // HasWorkflows is a required field + HasWorkflows *bool `locationName:"hasWorkflows" type:"boolean" required:"true"` + // The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping. // // SchemaArn is a required field @@ -4411,7 +7096,7 @@ // The name of the schema. // // SchemaName is a required field - SchemaName *string `locationName:"schemaName" type:"string" required:"true"` + SchemaName *string `locationName:"schemaName" min:"1" type:"string" required:"true"` // The timestamp of when the SchemaMapping was last updated. // @@ -4443,6 +7128,12 @@ return s } +// SetHasWorkflows sets the HasWorkflows field's value. +func (s *SchemaMappingSummary) SetHasWorkflows(v bool) *SchemaMappingSummary { + s.HasWorkflows = &v + return s +} + // SetSchemaArn sets the SchemaArn field's value. func (s *SchemaMappingSummary) SetSchemaArn(v string) *SchemaMappingSummary { s.SchemaArn = &v @@ -4461,13 +7152,95 @@ return s } +type StartIdMappingJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the ID mapping job to be retrieved. + // + // WorkflowName is a required field + WorkflowName *string `location:"uri" locationName:"workflowName" 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 StartIdMappingJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartIdMappingJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartIdMappingJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartIdMappingJobInput"} + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *StartIdMappingJobInput) SetWorkflowName(v string) *StartIdMappingJobInput { + s.WorkflowName = &v + return s +} + +type StartIdMappingJobOutput struct { + _ struct{} `type:"structure"` + + // The ID of the job. + // + // JobId is a required field + JobId *string `locationName:"jobId" 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 StartIdMappingJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartIdMappingJobOutput) GoString() string { + return s.String() +} + +// SetJobId sets the JobId field's value. +func (s *StartIdMappingJobOutput) SetJobId(v string) *StartIdMappingJobOutput { + s.JobId = &v + return s +} + type StartMatchingJobInput struct { _ struct{} `type:"structure" nopayload:"true"` // The name of the matching job to be retrieved. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -4777,6 +7550,253 @@ return s.String() } +type UpdateIdMappingWorkflowInput struct { + _ struct{} `type:"structure"` + + // A description of the workflow. + Description *string `locationName:"description" type:"string"` + + // An object which defines the idMappingType and the providerProperties. + // + // IdMappingTechniques is a required field + IdMappingTechniques *IdMappingTechniques `locationName:"idMappingTechniques" type:"structure" required:"true"` + + // A list of InputSource objects, which have the fields InputSourceARN and SchemaName. + // + // InputSourceConfig is a required field + InputSourceConfig []*IdMappingWorkflowInputSource `locationName:"inputSourceConfig" min:"1" type:"list" required:"true"` + + // A list of OutputSource objects, each of which contains fields OutputS3Path + // and KMSArn. + // + // OutputSourceConfig is a required field + OutputSourceConfig []*IdMappingWorkflowOutputSource `locationName:"outputSourceConfig" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes + // this role to access resources on your behalf. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `location:"uri" locationName:"workflowName" 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 UpdateIdMappingWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIdMappingWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateIdMappingWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateIdMappingWorkflowInput"} + if s.IdMappingTechniques == nil { + invalidParams.Add(request.NewErrParamRequired("IdMappingTechniques")) + } + if s.InputSourceConfig == nil { + invalidParams.Add(request.NewErrParamRequired("InputSourceConfig")) + } + if s.InputSourceConfig != nil && len(s.InputSourceConfig) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InputSourceConfig", 1)) + } + if s.OutputSourceConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputSourceConfig")) + } + if s.OutputSourceConfig != nil && len(s.OutputSourceConfig) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputSourceConfig", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.WorkflowName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowName")) + } + if s.WorkflowName != nil && len(*s.WorkflowName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowName", 1)) + } + if s.IdMappingTechniques != nil { + if err := s.IdMappingTechniques.Validate(); err != nil { + invalidParams.AddNested("IdMappingTechniques", err.(request.ErrInvalidParams)) + } + } + if s.InputSourceConfig != nil { + for i, v := range s.InputSourceConfig { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputSourceConfig", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OutputSourceConfig != nil { + for i, v := range s.OutputSourceConfig { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputSourceConfig", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateIdMappingWorkflowInput) SetDescription(v string) *UpdateIdMappingWorkflowInput { + s.Description = &v + return s +} + +// SetIdMappingTechniques sets the IdMappingTechniques field's value. +func (s *UpdateIdMappingWorkflowInput) SetIdMappingTechniques(v *IdMappingTechniques) *UpdateIdMappingWorkflowInput { + s.IdMappingTechniques = v + return s +} + +// SetInputSourceConfig sets the InputSourceConfig field's value. +func (s *UpdateIdMappingWorkflowInput) SetInputSourceConfig(v []*IdMappingWorkflowInputSource) *UpdateIdMappingWorkflowInput { + s.InputSourceConfig = v + return s +} + +// SetOutputSourceConfig sets the OutputSourceConfig field's value. +func (s *UpdateIdMappingWorkflowInput) SetOutputSourceConfig(v []*IdMappingWorkflowOutputSource) *UpdateIdMappingWorkflowInput { + s.OutputSourceConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateIdMappingWorkflowInput) SetRoleArn(v string) *UpdateIdMappingWorkflowInput { + s.RoleArn = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *UpdateIdMappingWorkflowInput) SetWorkflowName(v string) *UpdateIdMappingWorkflowInput { + s.WorkflowName = &v + return s +} + +type UpdateIdMappingWorkflowOutput struct { + _ struct{} `type:"structure"` + + // A description of the workflow. + Description *string `locationName:"description" type:"string"` + + // An object which defines the idMappingType and the providerProperties. + // + // IdMappingTechniques is a required field + IdMappingTechniques *IdMappingTechniques `locationName:"idMappingTechniques" type:"structure" required:"true"` + + // A list of InputSource objects, which have the fields InputSourceARN and SchemaName. + // + // InputSourceConfig is a required field + InputSourceConfig []*IdMappingWorkflowInputSource `locationName:"inputSourceConfig" min:"1" type:"list" required:"true"` + + // A list of OutputSource objects, each of which contains fields OutputS3Path + // and KMSArn. + // + // OutputSourceConfig is a required field + OutputSourceConfig []*IdMappingWorkflowOutputSource `locationName:"outputSourceConfig" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes + // this role to access resources on your behalf. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the workflow role. Entity Resolution assumes + // this role to access resources on your behalf. + // + // WorkflowArn is a required field + WorkflowArn *string `locationName:"workflowArn" type:"string" required:"true"` + + // The name of the workflow. + // + // WorkflowName is a required field + WorkflowName *string `locationName:"workflowName" 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 UpdateIdMappingWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIdMappingWorkflowOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *UpdateIdMappingWorkflowOutput) SetDescription(v string) *UpdateIdMappingWorkflowOutput { + s.Description = &v + return s +} + +// SetIdMappingTechniques sets the IdMappingTechniques field's value. +func (s *UpdateIdMappingWorkflowOutput) SetIdMappingTechniques(v *IdMappingTechniques) *UpdateIdMappingWorkflowOutput { + s.IdMappingTechniques = v + return s +} + +// SetInputSourceConfig sets the InputSourceConfig field's value. +func (s *UpdateIdMappingWorkflowOutput) SetInputSourceConfig(v []*IdMappingWorkflowInputSource) *UpdateIdMappingWorkflowOutput { + s.InputSourceConfig = v + return s +} + +// SetOutputSourceConfig sets the OutputSourceConfig field's value. +func (s *UpdateIdMappingWorkflowOutput) SetOutputSourceConfig(v []*IdMappingWorkflowOutputSource) *UpdateIdMappingWorkflowOutput { + s.OutputSourceConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateIdMappingWorkflowOutput) SetRoleArn(v string) *UpdateIdMappingWorkflowOutput { + s.RoleArn = &v + return s +} + +// SetWorkflowArn sets the WorkflowArn field's value. +func (s *UpdateIdMappingWorkflowOutput) SetWorkflowArn(v string) *UpdateIdMappingWorkflowOutput { + s.WorkflowArn = &v + return s +} + +// SetWorkflowName sets the WorkflowName field's value. +func (s *UpdateIdMappingWorkflowOutput) SetWorkflowName(v string) *UpdateIdMappingWorkflowOutput { + s.WorkflowName = &v + return s +} + type UpdateMatchingWorkflowInput struct { _ struct{} `type:"structure"` @@ -4812,7 +7832,7 @@ // The name of the workflow to be retrieved. // // WorkflowName is a required field - WorkflowName *string `location:"uri" locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `location:"uri" locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -4969,7 +7989,7 @@ // The name of the workflow. // // WorkflowName is a required field - WorkflowName *string `locationName:"workflowName" type:"string" required:"true"` + WorkflowName *string `locationName:"workflowName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -5032,6 +8052,160 @@ return s } +type UpdateSchemaMappingInput struct { + _ struct{} `type:"structure"` + + // A description of the schema. + Description *string `locationName:"description" type:"string"` + + // A list of MappedInputFields. Each MappedInputField corresponds to a column + // the source data table, and contains column name plus additional information + // that Entity Resolution uses for matching. + // + // MappedInputFields is a required field + MappedInputFields []*SchemaInputAttribute `locationName:"mappedInputFields" min:"2" type:"list" required:"true"` + + // The name of the schema. There can't be multiple SchemaMappings with the same + // name. + // + // SchemaName is a required field + SchemaName *string `location:"uri" locationName:"schemaName" 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 UpdateSchemaMappingInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSchemaMappingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSchemaMappingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSchemaMappingInput"} + if s.MappedInputFields == nil { + invalidParams.Add(request.NewErrParamRequired("MappedInputFields")) + } + if s.MappedInputFields != nil && len(s.MappedInputFields) < 2 { + invalidParams.Add(request.NewErrParamMinLen("MappedInputFields", 2)) + } + if s.SchemaName == nil { + invalidParams.Add(request.NewErrParamRequired("SchemaName")) + } + if s.SchemaName != nil && len(*s.SchemaName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SchemaName", 1)) + } + if s.MappedInputFields != nil { + for i, v := range s.MappedInputFields { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MappedInputFields", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateSchemaMappingInput) SetDescription(v string) *UpdateSchemaMappingInput { + s.Description = &v + return s +} + +// SetMappedInputFields sets the MappedInputFields field's value. +func (s *UpdateSchemaMappingInput) SetMappedInputFields(v []*SchemaInputAttribute) *UpdateSchemaMappingInput { + s.MappedInputFields = v + return s +} + +// SetSchemaName sets the SchemaName field's value. +func (s *UpdateSchemaMappingInput) SetSchemaName(v string) *UpdateSchemaMappingInput { + s.SchemaName = &v + return s +} + +type UpdateSchemaMappingOutput struct { + _ struct{} `type:"structure"` + + // A description of the schema. + Description *string `locationName:"description" type:"string"` + + // A list of MappedInputFields. Each MappedInputField corresponds to a column + // the source data table, and contains column name plus additional information + // that Entity Resolution uses for matching. + // + // MappedInputFields is a required field + MappedInputFields []*SchemaInputAttribute `locationName:"mappedInputFields" min:"2" type:"list" required:"true"` + + // The ARN (Amazon Resource Name) that Entity Resolution generated for the SchemaMapping. + // + // SchemaArn is a required field + SchemaArn *string `locationName:"schemaArn" type:"string" required:"true"` + + // The name of the schema. + // + // SchemaName is a required field + SchemaName *string `locationName:"schemaName" 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 UpdateSchemaMappingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSchemaMappingOutput) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *UpdateSchemaMappingOutput) SetDescription(v string) *UpdateSchemaMappingOutput { + s.Description = &v + return s +} + +// SetMappedInputFields sets the MappedInputFields field's value. +func (s *UpdateSchemaMappingOutput) SetMappedInputFields(v []*SchemaInputAttribute) *UpdateSchemaMappingOutput { + s.MappedInputFields = v + return s +} + +// SetSchemaArn sets the SchemaArn field's value. +func (s *UpdateSchemaMappingOutput) SetSchemaArn(v string) *UpdateSchemaMappingOutput { + s.SchemaArn = &v + return s +} + +// SetSchemaName sets the SchemaName field's value. +func (s *UpdateSchemaMappingOutput) SetSchemaName(v string) *UpdateSchemaMappingOutput { + s.SchemaName = &v + return s +} + // The input fails to satisfy the constraints specified by Entity Resolution. // HTTP Status Code: 400 type ValidationException struct { @@ -5114,6 +8288,18 @@ } const ( + // IdMappingTypeProvider is a IdMappingType enum value + IdMappingTypeProvider = "PROVIDER" +) + +// IdMappingType_Values returns all elements of the IdMappingType enum +func IdMappingType_Values() []string { + return []string{ + IdMappingTypeProvider, + } +} + +const ( // IncrementalRunTypeImmediate is a IncrementalRunType enum value IncrementalRunTypeImmediate = "IMMEDIATE" ) @@ -5155,6 +8341,9 @@ // ResolutionTypeMlMatching is a ResolutionType enum value ResolutionTypeMlMatching = "ML_MATCHING" + + // ResolutionTypeProvider is a ResolutionType enum value + ResolutionTypeProvider = "PROVIDER" ) // ResolutionType_Values returns all elements of the ResolutionType enum @@ -5162,6 +8351,7 @@ return []string{ ResolutionTypeRuleMatching, ResolutionTypeMlMatching, + ResolutionTypeProvider, } } @@ -5222,6 +8412,9 @@ // SchemaAttributeTypeString is a SchemaAttributeType enum value SchemaAttributeTypeString = "STRING" + + // SchemaAttributeTypeProviderId is a SchemaAttributeType enum value + SchemaAttributeTypeProviderId = "PROVIDER_ID" ) // SchemaAttributeType_Values returns all elements of the SchemaAttributeType enum @@ -5246,5 +8439,22 @@ SchemaAttributeTypeUniqueId, SchemaAttributeTypeDate, SchemaAttributeTypeString, + SchemaAttributeTypeProviderId, + } +} + +const ( + // ServiceTypeAssignment is a ServiceType enum value + ServiceTypeAssignment = "ASSIGNMENT" + + // ServiceTypeIdMapping is a ServiceType enum value + ServiceTypeIdMapping = "ID_MAPPING" +) + +// ServiceType_Values returns all elements of the ServiceType enum +func ServiceType_Values() []string { + return []string{ + ServiceTypeAssignment, + ServiceTypeIdMapping, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/entityresolution/entityresolutioniface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/entityresolution/entityresolutioniface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/entityresolution/entityresolutioniface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/entityresolution/entityresolutioniface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // AWS EntityResolution. // func myFunc(svc entityresolutioniface.EntityResolutionAPI) bool { -// // Make svc.CreateMatchingWorkflow request +// // Make svc.CreateIdMappingWorkflow request // } // // func main() { @@ -42,7 +42,7 @@ // type mockEntityResolutionClient struct { // entityresolutioniface.EntityResolutionAPI // } -// func (m *mockEntityResolutionClient) CreateMatchingWorkflow(input *entityresolution.CreateMatchingWorkflowInput) (*entityresolution.CreateMatchingWorkflowOutput, error) { +// func (m *mockEntityResolutionClient) CreateIdMappingWorkflow(input *entityresolution.CreateIdMappingWorkflowInput) (*entityresolution.CreateIdMappingWorkflowOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type EntityResolutionAPI interface { + CreateIdMappingWorkflow(*entityresolution.CreateIdMappingWorkflowInput) (*entityresolution.CreateIdMappingWorkflowOutput, error) + CreateIdMappingWorkflowWithContext(aws.Context, *entityresolution.CreateIdMappingWorkflowInput, ...request.Option) (*entityresolution.CreateIdMappingWorkflowOutput, error) + CreateIdMappingWorkflowRequest(*entityresolution.CreateIdMappingWorkflowInput) (*request.Request, *entityresolution.CreateIdMappingWorkflowOutput) + CreateMatchingWorkflow(*entityresolution.CreateMatchingWorkflowInput) (*entityresolution.CreateMatchingWorkflowOutput, error) CreateMatchingWorkflowWithContext(aws.Context, *entityresolution.CreateMatchingWorkflowInput, ...request.Option) (*entityresolution.CreateMatchingWorkflowOutput, error) CreateMatchingWorkflowRequest(*entityresolution.CreateMatchingWorkflowInput) (*request.Request, *entityresolution.CreateMatchingWorkflowOutput) @@ -68,6 +72,10 @@ CreateSchemaMappingWithContext(aws.Context, *entityresolution.CreateSchemaMappingInput, ...request.Option) (*entityresolution.CreateSchemaMappingOutput, error) CreateSchemaMappingRequest(*entityresolution.CreateSchemaMappingInput) (*request.Request, *entityresolution.CreateSchemaMappingOutput) + DeleteIdMappingWorkflow(*entityresolution.DeleteIdMappingWorkflowInput) (*entityresolution.DeleteIdMappingWorkflowOutput, error) + DeleteIdMappingWorkflowWithContext(aws.Context, *entityresolution.DeleteIdMappingWorkflowInput, ...request.Option) (*entityresolution.DeleteIdMappingWorkflowOutput, error) + DeleteIdMappingWorkflowRequest(*entityresolution.DeleteIdMappingWorkflowInput) (*request.Request, *entityresolution.DeleteIdMappingWorkflowOutput) + DeleteMatchingWorkflow(*entityresolution.DeleteMatchingWorkflowInput) (*entityresolution.DeleteMatchingWorkflowOutput, error) DeleteMatchingWorkflowWithContext(aws.Context, *entityresolution.DeleteMatchingWorkflowInput, ...request.Option) (*entityresolution.DeleteMatchingWorkflowOutput, error) DeleteMatchingWorkflowRequest(*entityresolution.DeleteMatchingWorkflowInput) (*request.Request, *entityresolution.DeleteMatchingWorkflowOutput) @@ -76,6 +84,14 @@ DeleteSchemaMappingWithContext(aws.Context, *entityresolution.DeleteSchemaMappingInput, ...request.Option) (*entityresolution.DeleteSchemaMappingOutput, error) DeleteSchemaMappingRequest(*entityresolution.DeleteSchemaMappingInput) (*request.Request, *entityresolution.DeleteSchemaMappingOutput) + GetIdMappingJob(*entityresolution.GetIdMappingJobInput) (*entityresolution.GetIdMappingJobOutput, error) + GetIdMappingJobWithContext(aws.Context, *entityresolution.GetIdMappingJobInput, ...request.Option) (*entityresolution.GetIdMappingJobOutput, error) + GetIdMappingJobRequest(*entityresolution.GetIdMappingJobInput) (*request.Request, *entityresolution.GetIdMappingJobOutput) + + GetIdMappingWorkflow(*entityresolution.GetIdMappingWorkflowInput) (*entityresolution.GetIdMappingWorkflowOutput, error) + GetIdMappingWorkflowWithContext(aws.Context, *entityresolution.GetIdMappingWorkflowInput, ...request.Option) (*entityresolution.GetIdMappingWorkflowOutput, error) + GetIdMappingWorkflowRequest(*entityresolution.GetIdMappingWorkflowInput) (*request.Request, *entityresolution.GetIdMappingWorkflowOutput) + GetMatchId(*entityresolution.GetMatchIdInput) (*entityresolution.GetMatchIdOutput, error) GetMatchIdWithContext(aws.Context, *entityresolution.GetMatchIdInput, ...request.Option) (*entityresolution.GetMatchIdOutput, error) GetMatchIdRequest(*entityresolution.GetMatchIdInput) (*request.Request, *entityresolution.GetMatchIdOutput) @@ -92,6 +108,20 @@ GetSchemaMappingWithContext(aws.Context, *entityresolution.GetSchemaMappingInput, ...request.Option) (*entityresolution.GetSchemaMappingOutput, error) GetSchemaMappingRequest(*entityresolution.GetSchemaMappingInput) (*request.Request, *entityresolution.GetSchemaMappingOutput) + ListIdMappingJobs(*entityresolution.ListIdMappingJobsInput) (*entityresolution.ListIdMappingJobsOutput, error) + ListIdMappingJobsWithContext(aws.Context, *entityresolution.ListIdMappingJobsInput, ...request.Option) (*entityresolution.ListIdMappingJobsOutput, error) + ListIdMappingJobsRequest(*entityresolution.ListIdMappingJobsInput) (*request.Request, *entityresolution.ListIdMappingJobsOutput) + + ListIdMappingJobsPages(*entityresolution.ListIdMappingJobsInput, func(*entityresolution.ListIdMappingJobsOutput, bool) bool) error + ListIdMappingJobsPagesWithContext(aws.Context, *entityresolution.ListIdMappingJobsInput, func(*entityresolution.ListIdMappingJobsOutput, bool) bool, ...request.Option) error + + ListIdMappingWorkflows(*entityresolution.ListIdMappingWorkflowsInput) (*entityresolution.ListIdMappingWorkflowsOutput, error) + ListIdMappingWorkflowsWithContext(aws.Context, *entityresolution.ListIdMappingWorkflowsInput, ...request.Option) (*entityresolution.ListIdMappingWorkflowsOutput, error) + ListIdMappingWorkflowsRequest(*entityresolution.ListIdMappingWorkflowsInput) (*request.Request, *entityresolution.ListIdMappingWorkflowsOutput) + + ListIdMappingWorkflowsPages(*entityresolution.ListIdMappingWorkflowsInput, func(*entityresolution.ListIdMappingWorkflowsOutput, bool) bool) error + ListIdMappingWorkflowsPagesWithContext(aws.Context, *entityresolution.ListIdMappingWorkflowsInput, func(*entityresolution.ListIdMappingWorkflowsOutput, bool) bool, ...request.Option) error + ListMatchingJobs(*entityresolution.ListMatchingJobsInput) (*entityresolution.ListMatchingJobsOutput, error) ListMatchingJobsWithContext(aws.Context, *entityresolution.ListMatchingJobsInput, ...request.Option) (*entityresolution.ListMatchingJobsOutput, error) ListMatchingJobsRequest(*entityresolution.ListMatchingJobsInput) (*request.Request, *entityresolution.ListMatchingJobsOutput) @@ -106,6 +136,13 @@ ListMatchingWorkflowsPages(*entityresolution.ListMatchingWorkflowsInput, func(*entityresolution.ListMatchingWorkflowsOutput, bool) bool) error ListMatchingWorkflowsPagesWithContext(aws.Context, *entityresolution.ListMatchingWorkflowsInput, func(*entityresolution.ListMatchingWorkflowsOutput, bool) bool, ...request.Option) error + ListProviderServices(*entityresolution.ListProviderServicesInput) (*entityresolution.ListProviderServicesOutput, error) + ListProviderServicesWithContext(aws.Context, *entityresolution.ListProviderServicesInput, ...request.Option) (*entityresolution.ListProviderServicesOutput, error) + ListProviderServicesRequest(*entityresolution.ListProviderServicesInput) (*request.Request, *entityresolution.ListProviderServicesOutput) + + ListProviderServicesPages(*entityresolution.ListProviderServicesInput, func(*entityresolution.ListProviderServicesOutput, bool) bool) error + ListProviderServicesPagesWithContext(aws.Context, *entityresolution.ListProviderServicesInput, func(*entityresolution.ListProviderServicesOutput, bool) bool, ...request.Option) error + ListSchemaMappings(*entityresolution.ListSchemaMappingsInput) (*entityresolution.ListSchemaMappingsOutput, error) ListSchemaMappingsWithContext(aws.Context, *entityresolution.ListSchemaMappingsInput, ...request.Option) (*entityresolution.ListSchemaMappingsOutput, error) ListSchemaMappingsRequest(*entityresolution.ListSchemaMappingsInput) (*request.Request, *entityresolution.ListSchemaMappingsOutput) @@ -117,6 +154,10 @@ ListTagsForResourceWithContext(aws.Context, *entityresolution.ListTagsForResourceInput, ...request.Option) (*entityresolution.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*entityresolution.ListTagsForResourceInput) (*request.Request, *entityresolution.ListTagsForResourceOutput) + StartIdMappingJob(*entityresolution.StartIdMappingJobInput) (*entityresolution.StartIdMappingJobOutput, error) + StartIdMappingJobWithContext(aws.Context, *entityresolution.StartIdMappingJobInput, ...request.Option) (*entityresolution.StartIdMappingJobOutput, error) + StartIdMappingJobRequest(*entityresolution.StartIdMappingJobInput) (*request.Request, *entityresolution.StartIdMappingJobOutput) + StartMatchingJob(*entityresolution.StartMatchingJobInput) (*entityresolution.StartMatchingJobOutput, error) StartMatchingJobWithContext(aws.Context, *entityresolution.StartMatchingJobInput, ...request.Option) (*entityresolution.StartMatchingJobOutput, error) StartMatchingJobRequest(*entityresolution.StartMatchingJobInput) (*request.Request, *entityresolution.StartMatchingJobOutput) @@ -129,9 +170,17 @@ UntagResourceWithContext(aws.Context, *entityresolution.UntagResourceInput, ...request.Option) (*entityresolution.UntagResourceOutput, error) UntagResourceRequest(*entityresolution.UntagResourceInput) (*request.Request, *entityresolution.UntagResourceOutput) + UpdateIdMappingWorkflow(*entityresolution.UpdateIdMappingWorkflowInput) (*entityresolution.UpdateIdMappingWorkflowOutput, error) + UpdateIdMappingWorkflowWithContext(aws.Context, *entityresolution.UpdateIdMappingWorkflowInput, ...request.Option) (*entityresolution.UpdateIdMappingWorkflowOutput, error) + UpdateIdMappingWorkflowRequest(*entityresolution.UpdateIdMappingWorkflowInput) (*request.Request, *entityresolution.UpdateIdMappingWorkflowOutput) + UpdateMatchingWorkflow(*entityresolution.UpdateMatchingWorkflowInput) (*entityresolution.UpdateMatchingWorkflowOutput, error) UpdateMatchingWorkflowWithContext(aws.Context, *entityresolution.UpdateMatchingWorkflowInput, ...request.Option) (*entityresolution.UpdateMatchingWorkflowOutput, error) UpdateMatchingWorkflowRequest(*entityresolution.UpdateMatchingWorkflowInput) (*request.Request, *entityresolution.UpdateMatchingWorkflowOutput) + + UpdateSchemaMapping(*entityresolution.UpdateSchemaMappingInput) (*entityresolution.UpdateSchemaMappingOutput, error) + UpdateSchemaMappingWithContext(aws.Context, *entityresolution.UpdateSchemaMappingInput, ...request.Option) (*entityresolution.UpdateSchemaMappingOutput, error) + UpdateSchemaMappingRequest(*entityresolution.UpdateSchemaMappingInput) (*request.Request, *entityresolution.UpdateSchemaMappingOutput) } var _ EntityResolutionAPI = (*entityresolution.EntityResolution)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/eventbridge/api.go golang-github-aws-aws-sdk-go-1.48.14/service/eventbridge/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/eventbridge/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/eventbridge/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -241,6 +241,12 @@ // Creates an API destination, which is an HTTP invocation endpoint configured // as a target for events. // +// API destinations do not support private destinations, such as interface VPC +// endpoints. +// +// For more information, see API destinations (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-api-destinations.html) +// in the EventBridge User Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -727,13 +733,21 @@ // // partner_name/event_namespace/event_name // -// partner_name is determined during partner registration and identifies the -// partner to Amazon Web Services customers. event_namespace is determined by -// the partner and is a way for the partner to categorize their events. event_name -// is determined by the partner, and should uniquely identify an event-generating -// resource within the partner system. The combination of event_namespace and -// event_name should help Amazon Web Services customers decide whether to create -// an event bus to receive these events. +// - partner_name is determined during partner registration, and identifies +// the partner to Amazon Web Services customers. +// +// - event_namespace is determined by the partner, and is a way for the partner +// to categorize their events. +// +// - event_name is determined by the partner, and should uniquely identify +// an event-generating resource within the partner system. The event_name +// must be unique across all Amazon Web Services customers. This is because +// the event source is a shared resource between the partner and customer +// accounts, and each partner event source unique in the partner account. +// +// The combination of event_namespace and event_name should help Amazon Web +// Services customers decide whether to create an event bus to receive these +// events. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1893,7 +1907,7 @@ // Get the information about an existing global endpoint. For more information // about global endpoints, see Making applications Regional-fault tolerant with // global endpoints and event replication (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-global-endpoints.html) -// in the Amazon EventBridge User Guide.. +// in the Amazon EventBridge User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2854,7 +2868,7 @@ // List the global endpoints associated with this account. For more information // about global endpoints, see Making applications Regional-fault tolerant with // global endpoints and event replication (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-global-endpoints.html) -// in the Amazon EventBridge User Guide.. +// in the Amazon EventBridge User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3348,6 +3362,8 @@ // Lists the rules for the specified target. You can see which of the rules // in Amazon EventBridge can invoke a specific target in your account. // +// The maximum number of results per page for requests is 100. +// // 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. @@ -3431,6 +3447,8 @@ // Lists your Amazon EventBridge rules. You can either list all the rules or // you can provide a prefix to match to the rule names. // +// The maximum number of results per page for requests is 100. +// // ListRules does not list the targets of a rule. To see the targets associated // with a rule, use ListTargetsByRule (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ListTargetsByRule.html). // @@ -3599,6 +3617,8 @@ // // Lists the targets assigned to the specified rule. // +// The maximum number of results per page for requests is 100. +// // 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. @@ -3682,6 +3702,15 @@ // Sends custom events to Amazon EventBridge so that they can be matched to // rules. // +// The maximum size for a PutEvents event entry is 256 KB. Entry size is calculated +// including the event and any necessary characters and keys of the JSON representation +// of the event. To learn more, see Calculating PutEvents event entry size (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-putevent-size.html) +// in the Amazon EventBridge User Guide +// +// PutEvents accepts the data in JSON format. For the JSON number (integer) +// data type, the constraints are: a minimum value of -9,223,372,036,854,775,808 +// and a maximum value of 9,223,372,036,854,775,807. +// // PutEvents will only process nested JSON up to 1100 levels deep. // // This AWS SDK does not support calling multi-region endpoints with SigV4a authentication. @@ -3765,6 +3794,10 @@ // This is used by SaaS partners to write events to a customer's partner event // bus. Amazon Web Services customers do not use this operation. // +// For information on calculating event batch size, see Calculating EventBridge +// PutEvents event entry size (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-putevent-size.html) +// in the EventBridge User Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -4117,72 +4150,24 @@ // // Targets are the resources that are invoked when a rule is triggered. // -// Each rule can have up to five (5) targets associated with it at one time. -// -// You can configure the following as targets for Events: -// -// - API destination (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-api-destinations.html) -// -// - API Gateway (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-api-gateway-target.html) -// -// - Batch job queue -// -// - CloudWatch group -// -// - CodeBuild project -// -// - CodePipeline -// -// - EC2 CreateSnapshot API call +// The maximum number of entries per request is 10. // -// - EC2 Image Builder -// -// - EC2 RebootInstances API call -// -// - EC2 StopInstances API call -// -// - EC2 TerminateInstances API call -// -// - ECS task -// -// - Event bus in a different account or Region (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-cross-account.html) -// -// - Event bus in the same account and Region (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-bus-to-bus.html) -// -// - Firehose delivery stream -// -// - Glue workflow -// -// - Incident Manager response plan (https://docs.aws.amazon.com/incident-manager/latest/userguide/incident-creation.html#incident-tracking-auto-eventbridge) -// -// - Inspector assessment template -// -// - Kinesis stream -// -// - Lambda function -// -// - Redshift cluster -// -// - Redshift Serverless workgroup -// -// - SageMaker Pipeline +// Each rule can have up to five (5) targets associated with it at one time. // -// - SNS topic +// For a list of services you can configure as targets for events, see EventBridge +// targets (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-targets.html) +// in the Amazon EventBridge User Guide. // -// - SQS queue +// Creating rules with built-in targets is supported only in the Amazon Web +// Services Management Console. The built-in targets are: // -// - Step Functions state machine +// - Amazon EBS CreateSnapshot API call // -// - Systems Manager Automation +// - Amazon EC2 RebootInstances API call // -// - Systems Manager OpsItem +// - Amazon EC2 StopInstances API call // -// - Systems Manager Run Command -// -// Creating rules with built-in targets is supported only in the Amazon Web -// Services Management Console. The built-in targets are EC2 CreateSnapshot -// API call, EC2 RebootInstances API call, EC2 StopInstances API call, and EC2 -// TerminateInstances API call. +// - Amazon EC2 TerminateInstances API call // // For some target types, PutTargets provides target-specific parameters. If // the target is a Kinesis data stream, you can optionally specify which shard @@ -4191,11 +4176,16 @@ // field. // // To be able to make API calls against the resources that you own, Amazon EventBridge -// needs the appropriate permissions. For Lambda and Amazon SNS resources, EventBridge -// relies on resource-based policies. For EC2 instances, Kinesis Data Streams, -// Step Functions state machines and API Gateway APIs, EventBridge relies on -// IAM roles that you specify in the RoleARN argument in PutTargets. For more -// information, see Authentication and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html) +// needs the appropriate permissions: +// +// - For Lambda and Amazon SNS resources, EventBridge relies on resource-based +// policies. +// +// - For EC2 instances, Kinesis Data Streams, Step Functions state machines +// and API Gateway APIs, EventBridge relies on IAM roles that you specify +// in the RoleARN argument in PutTargets. +// +// For more information, see Authentication and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html) // in the Amazon EventBridge User Guide. // // If another Amazon Web Services account is in the same region and has granted @@ -4218,6 +4208,10 @@ // Receiving Events Between Amazon Web Services Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html) // in the Amazon EventBridge User Guide. // +// If you have an IAM role on a cross-account event bus target, a PutTargets +// call without a role on the same target (same Id and Arn) will not remove +// the role. +// // For more information about enabling cross-account events, see PutPermission // (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutPermission.html). // @@ -4456,6 +4450,8 @@ // entry in FailedEntries provides the ID of the failed target and the error // code. // +// The maximum number of entries per request is 10. +// // 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. @@ -5212,7 +5208,7 @@ // Update an existing endpoint. For more information about global endpoints, // see Making applications Regional-fault tolerant with global endpoints and // event replication (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-global-endpoints.html) -// in the Amazon EventBridge User Guide.. +// in the Amazon EventBridge User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -13669,21 +13665,34 @@ _ struct{} `type:"structure"` // A valid JSON object. There is no other schema imposed. The JSON object may - // contain fields and nested subobjects. + // contain fields and nested sub-objects. + // + // Detail, DetailType, and Source are required for EventBridge to successfully + // send an event to an event bus. If you include event entries in a request + // that do not include each of those properties, EventBridge fails that entry. + // If you submit a request in which none of the entries have each of these properties, + // EventBridge fails the entire request. Detail *string `type:"string"` // Free-form string, with a maximum of 128 characters, used to decide what fields // to expect in the event detail. + // + // Detail, DetailType, and Source are required for EventBridge to successfully + // send an event to an event bus. If you include event entries in a request + // that do not include each of those properties, EventBridge fails that entry. + // If you submit a request in which none of the entries have each of these properties, + // EventBridge fails the entire request. DetailType *string `type:"string"` // The name or ARN of the event bus to receive the event. Only the rules that // are associated with this event bus are used to match the event. If you omit // this, the default event bus is used. // - // If you're using a global endpoint with a custom bus, you must enter the name, - // not the ARN, of the event bus in either the primary or secondary Region here - // and the corresponding event bus in the other Region will be determined based - // on the endpoint referenced by the EndpointId. + // If you're using a global endpoint with a custom bus, you can enter either + // the name or Amazon Resource Name (ARN) of the event bus in either the primary + // or secondary Region here. EventBridge then determines the corresponding event + // bus in the other Region based on the endpoint referenced by the EndpointId. + // Specifying the event bus ARN is preferred. EventBusName *string `min:"1" type:"string"` // Amazon Web Services resources, identified by Amazon Resource Name (ARN), @@ -13691,6 +13700,12 @@ Resources []*string `type:"list"` // The source of the event. + // + // Detail, DetailType, and Source are required for EventBridge to successfully + // send an event to an event bus. If you include event entries in a request + // that do not include each of those properties, EventBridge fails that entry. + // If you submit a request in which none of the entries have each of these properties, + // EventBridge fails the entire request. Source *string `type:"string"` // The time stamp of the event, per RFC3339 (https://www.rfc-editor.org/rfc/rfc3339.txt). @@ -13782,12 +13797,46 @@ return s } -// Represents an event that failed to be submitted. For information about the -// errors that are common to all actions, see Common Errors (https://docs.aws.amazon.com/eventbridge/latest/APIReference/CommonErrors.html). +// Represents the results of an event submitted to an event bus. +// +// If the submission was successful, the entry has the event ID in it. Otherwise, +// you can use the error code and error message to identify the problem with +// the entry. +// +// For information about the errors that are common to all actions, see Common +// Errors (https://docs.aws.amazon.com/eventbridge/latest/APIReference/CommonErrors.html). type PutEventsResultEntry struct { _ struct{} `type:"structure"` // The error code that indicates why the event submission failed. + // + // Retryable errors include: + // + // * InternalFailure (https://docs.aws.amazon.com/eventbridge/latest/APIReference/CommonErrors.html) + // The request processing has failed because of an unknown error, exception + // or failure. + // + // * ThrottlingException (https://docs.aws.amazon.com/eventbridge/latest/APIReference/CommonErrors.html) + // The request was denied due to request throttling. + // + // Non-retryable errors include: + // + // * AccessDeniedException (https://docs.aws.amazon.com/eventbridge/latest/APIReference/CommonErrors.html) + // You do not have sufficient access to perform this action. + // + // * InvalidAccountIdException The account ID provided is not valid. + // + // * InvalidArgument A specified parameter is not valid. + // + // * MalformedDetail The JSON provided is not valid. + // + // * RedactionFailure Redacting the CloudTrail event failed. + // + // * NotAuthorizedForSourceException You do not have permissions to publish + // events with this source onto this event bus. + // + // * NotAuthorizedForDetailTypeException You do not have permissions to publish + // events with this detail type onto this event bus. ErrorCode *string `type:"string"` // The error message that explains why the event submission failed. @@ -13895,8 +13944,13 @@ type PutPartnerEventsOutput struct { _ struct{} `type:"structure"` - // The list of events from this operation that were successfully written to - // the partner event bus. + // The results for each event entry the partner submitted in this request. If + // the event was successfully submitted, the entry has the event ID in it. Otherwise, + // you can use the error code and error message to identify the problem with + // the entry. + // + // For each record, the index of the response element is the same as the index + // in the request array. Entries []*PutPartnerEventsResultEntry `type:"list"` // The number of events from this operation that could not be written to the @@ -13939,11 +13993,23 @@ _ struct{} `type:"structure"` // A valid JSON string. There is no other schema imposed. The JSON string may - // contain fields and nested subobjects. + // contain fields and nested sub-objects. + // + // Detail, DetailType, and Source are required for EventBridge to successfully + // send an event to an event bus. If you include event entries in a request + // that do not include each of those properties, EventBridge fails that entry. + // If you submit a request in which none of the entries have each of these properties, + // EventBridge fails the entire request. Detail *string `type:"string"` // A free-form string, with a maximum of 128 characters, used to decide what // fields to expect in the event detail. + // + // Detail, DetailType, and Source are required for EventBridge to successfully + // send an event to an event bus. If you include event entries in a request + // that do not include each of those properties, EventBridge fails that entry. + // If you submit a request in which none of the entries have each of these properties, + // EventBridge fails the entire request. DetailType *string `type:"string"` // Amazon Web Services resources, identified by Amazon Resource Name (ARN), @@ -13951,6 +14017,12 @@ Resources []*string `type:"list"` // The event source that is generating the entry. + // + // Detail, DetailType, and Source are required for EventBridge to successfully + // send an event to an event bus. If you include event entries in a request + // that do not include each of those properties, EventBridge fails that entry. + // If you submit a request in which none of the entries have each of these properties, + // EventBridge fails the entire request. Source *string `min:"1" type:"string"` // The date and time of the event. @@ -14018,7 +14090,10 @@ return s } -// Represents an event that a partner tried to generate, but failed. +// The result of an event entry the partner submitted in this request. If the +// event was successfully submitted, the entry has the event ID in it. Otherwise, +// you can use the error code and error message to identify the problem with +// the entry. type PutPartnerEventsResultEntry struct { _ struct{} `type:"structure"` @@ -14249,7 +14324,29 @@ // The scheduling expression. For example, "cron(0 20 * * ? *)" or "rate(5 minutes)". ScheduleExpression *string `type:"string"` - // Indicates whether the rule is enabled or disabled. + // The state of the rule. + // + // Valid values include: + // + // * DISABLED: The rule is disabled. EventBridge does not match any events + // against the rule. + // + // * ENABLED: The rule is enabled. EventBridge matches events against the + // rule, except for Amazon Web Services management events delivered through + // CloudTrail. + // + // * ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS: The rule is enabled for + // all events, including Amazon Web Services management events delivered + // through CloudTrail. Management events provide visibility into management + // operations that are performed on resources in your Amazon Web Services + // account. These are also known as control plane operations. For more information, + // see Logging management events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html#logging-management-events) + // in the CloudTrail User Guide, and Filtering management events from Amazon + // Web Services services (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-service-event.html#eb-service-event-cloudtrail) + // in the Amazon EventBridge User Guide. This value is only valid for rules + // on the default (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is-how-it-works-concepts.html#eb-bus-concepts-buses) + // event bus or custom event buses (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-event-bus.html). + // It does not apply to partner event buses (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-saas.html). State *string `type:"string" enum:"RuleState"` // The list of key-value pairs to associate with the rule. @@ -14567,8 +14664,8 @@ } // These are custom parameters to be used when the target is a Amazon Redshift -// cluster or Redshift Serverless workgroup to invoke the Amazon Redshift Data -// API ExecuteStatement based on EventBridge events. +// cluster to invoke the Amazon Redshift Data API ExecuteStatement based on +// EventBridge events. type RedshiftDataParameters struct { _ struct{} `type:"structure"` @@ -14578,8 +14675,6 @@ Database *string `min:"1" type:"string" required:"true"` // The database user name. Required when authenticating using temporary credentials. - // - // Do not provide this parameter when connecting to a Redshift Serverless workgroup. DbUser *string `min:"1" type:"string"` // The name or ARN of the secret that enables access to the database. Required @@ -14593,7 +14688,11 @@ // String and GoString methods. Sql *string `min:"1" type:"string" sensitive:"true"` - // A list of SQLs. + // One or more SQL statements to run. The SQL statements are run as a single + // transaction. They run serially in the order of the array. Subsequent SQL + // statements don't start until the previous statement in the array completes. + // If any SQL statement fails, then because they are run as one transaction, + // all work is rolled back. // // Sqls is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by RedshiftDataParameters's @@ -15446,6 +15545,28 @@ ScheduleExpression *string `type:"string"` // The state of the rule. + // + // Valid values include: + // + // * DISABLED: The rule is disabled. EventBridge does not match any events + // against the rule. + // + // * ENABLED: The rule is enabled. EventBridge matches events against the + // rule, except for Amazon Web Services management events delivered through + // CloudTrail. + // + // * ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS: The rule is enabled for + // all events, including Amazon Web Services management events delivered + // through CloudTrail. Management events provide visibility into management + // operations that are performed on resources in your Amazon Web Services + // account. These are also known as control plane operations. For more information, + // see Logging management events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html#logging-management-events) + // in the CloudTrail User Guide, and Filtering management events from Amazon + // Web Services services (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-service-event.html#eb-service-event-cloudtrail) + // in the Amazon EventBridge User Guide. This value is only valid for rules + // on the default (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is-how-it-works-concepts.html#eb-bus-concepts-buses) + // event bus or custom event buses (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-event-bus.html). + // It does not apply to partner event buses (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-saas.html). State *string `type:"string" enum:"RuleState"` } @@ -18052,6 +18173,9 @@ // RuleStateDisabled is a RuleState enum value RuleStateDisabled = "DISABLED" + + // RuleStateEnabledWithAllCloudtrailManagementEvents is a RuleState enum value + RuleStateEnabledWithAllCloudtrailManagementEvents = "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS" ) // RuleState_Values returns all elements of the RuleState enum @@ -18059,5 +18183,6 @@ return []string{ RuleStateEnabled, RuleStateDisabled, + RuleStateEnabledWithAllCloudtrailManagementEvents, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/finspace/api.go golang-github-aws-aws-sdk-go-1.48.14/service/finspace/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/finspace/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/finspace/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -38,7 +38,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/CreateEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *CreateEnvironmentOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, CreateEnvironment, has been deprecated") + } op := &request.Operation{ Name: opCreateEnvironment, HTTPMethod: "POST", @@ -89,6 +94,8 @@ // A service limit or quota is exceeded. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/CreateEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) CreateEnvironment(input *CreateEnvironmentInput) (*CreateEnvironmentOutput, error) { req, out := c.CreateEnvironmentRequest(input) return out, req.Send() @@ -103,6 +110,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *Finspace) CreateEnvironmentWithContext(ctx aws.Context, input *CreateEnvironmentInput, opts ...request.Option) (*CreateEnvironmentOutput, error) { req, out := c.CreateEnvironmentRequest(input) req.SetContext(ctx) @@ -637,7 +646,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/DeleteEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) DeleteEnvironmentRequest(input *DeleteEnvironmentInput) (req *request.Request, output *DeleteEnvironmentOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, DeleteEnvironment, has been deprecated") + } op := &request.Operation{ Name: opDeleteEnvironment, HTTPMethod: "DELETE", @@ -684,6 +698,8 @@ // The input fails to satisfy the constraints specified by an AWS service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/DeleteEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) DeleteEnvironment(input *DeleteEnvironmentInput) (*DeleteEnvironmentOutput, error) { req, out := c.DeleteEnvironmentRequest(input) return out, req.Send() @@ -698,6 +714,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *Finspace) DeleteEnvironmentWithContext(ctx aws.Context, input *DeleteEnvironmentInput, opts ...request.Option) (*DeleteEnvironmentOutput, error) { req, out := c.DeleteEnvironmentRequest(input) req.SetContext(ctx) @@ -1115,7 +1133,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/GetEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) GetEnvironmentRequest(input *GetEnvironmentInput) (req *request.Request, output *GetEnvironmentOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetEnvironment, has been deprecated") + } op := &request.Operation{ Name: opGetEnvironment, HTTPMethod: "GET", @@ -1158,6 +1181,8 @@ // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/GetEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) GetEnvironment(input *GetEnvironmentInput) (*GetEnvironmentOutput, error) { req, out := c.GetEnvironmentRequest(input) return out, req.Send() @@ -1172,6 +1197,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *Finspace) GetEnvironmentWithContext(ctx aws.Context, input *GetEnvironmentInput, opts ...request.Option) (*GetEnvironmentOutput, error) { req, out := c.GetEnvironmentRequest(input) req.SetContext(ctx) @@ -1761,7 +1788,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/ListEnvironments +// +// Deprecated: This method will be discontinued. func (c *Finspace) ListEnvironmentsRequest(input *ListEnvironmentsInput) (req *request.Request, output *ListEnvironmentsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListEnvironments, has been deprecated") + } op := &request.Operation{ Name: opListEnvironments, HTTPMethod: "GET", @@ -1798,6 +1830,8 @@ // The input fails to satisfy the constraints specified by an AWS service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/ListEnvironments +// +// Deprecated: This method will be discontinued. func (c *Finspace) ListEnvironments(input *ListEnvironmentsInput) (*ListEnvironmentsOutput, error) { req, out := c.ListEnvironmentsRequest(input) return out, req.Send() @@ -1812,6 +1846,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *Finspace) ListEnvironmentsWithContext(ctx aws.Context, input *ListEnvironmentsInput, opts ...request.Option) (*ListEnvironmentsOutput, error) { req, out := c.ListEnvironmentsRequest(input) req.SetContext(ctx) @@ -2884,7 +2920,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/UpdateEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *UpdateEnvironmentOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, UpdateEnvironment, has been deprecated") + } op := &request.Operation{ Name: opUpdateEnvironment, HTTPMethod: "PUT", @@ -2930,6 +2971,8 @@ // The input fails to satisfy the constraints specified by an AWS service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/UpdateEnvironment +// +// Deprecated: This method will be discontinued. func (c *Finspace) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { req, out := c.UpdateEnvironmentRequest(input) return out, req.Send() @@ -2944,6 +2987,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *Finspace) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*UpdateEnvironmentOutput, error) { req, out := c.UpdateEnvironmentRequest(input) req.SetContext(ctx) @@ -2951,6 +2996,108 @@ return out, req.Send() } +const opUpdateKxClusterCodeConfiguration = "UpdateKxClusterCodeConfiguration" + +// UpdateKxClusterCodeConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateKxClusterCodeConfiguration 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 UpdateKxClusterCodeConfiguration for more information on using the UpdateKxClusterCodeConfiguration +// 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 UpdateKxClusterCodeConfigurationRequest method. +// req, resp := client.UpdateKxClusterCodeConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/UpdateKxClusterCodeConfiguration +func (c *Finspace) UpdateKxClusterCodeConfigurationRequest(input *UpdateKxClusterCodeConfigurationInput) (req *request.Request, output *UpdateKxClusterCodeConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateKxClusterCodeConfiguration, + HTTPMethod: "PUT", + HTTPPath: "/kx/environments/{environmentId}/clusters/{clusterName}/configuration/code", + } + + if input == nil { + input = &UpdateKxClusterCodeConfigurationInput{} + } + + output = &UpdateKxClusterCodeConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateKxClusterCodeConfiguration API operation for FinSpace User Environment Management service. +// +// Allows you to update code configuration on a running cluster. By using this +// API you can update the code, the initialization script path, and the command +// line arguments for a specific cluster. The configuration that you want to +// update will override any existing configurations on the cluster. +// +// 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 FinSpace User Environment Management service's +// API operation UpdateKxClusterCodeConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - LimitExceededException +// A service limit or quota is exceeded. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ConflictException +// There was a conflict with this action, and it could not be completed. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2021-03-12/UpdateKxClusterCodeConfiguration +func (c *Finspace) UpdateKxClusterCodeConfiguration(input *UpdateKxClusterCodeConfigurationInput) (*UpdateKxClusterCodeConfigurationOutput, error) { + req, out := c.UpdateKxClusterCodeConfigurationRequest(input) + return out, req.Send() +} + +// UpdateKxClusterCodeConfigurationWithContext is the same as UpdateKxClusterCodeConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateKxClusterCodeConfiguration 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 *Finspace) UpdateKxClusterCodeConfigurationWithContext(ctx aws.Context, input *UpdateKxClusterCodeConfigurationInput, opts ...request.Option) (*UpdateKxClusterCodeConfigurationOutput, error) { + req, out := c.UpdateKxClusterCodeConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateKxClusterDatabases = "UpdateKxClusterDatabases" // UpdateKxClusterDatabasesRequest generates a "aws/request.Request" representing the @@ -4115,7 +4262,7 @@ _ struct{} `type:"structure"` // A list of change request objects that are run in order. A change request - // object consists of changeType , s3Path, and a dbPath. A changeType can has + // object consists of changeType , s3Path, and dbPath. A changeType can has // the following values: // // * PUT – Adds or updates files in a database. @@ -4123,20 +4270,38 @@ // * DELETE – Deletes files in a database. // // All the change requests require a mandatory dbPath attribute that defines - // the path within the database directory. The s3Path attribute defines the - // s3 source file path and is required for a PUT change type. + // the path within the database directory. All database paths must start with + // a leading / and end with a trailing /. The s3Path attribute defines the s3 + // source file path and is required for a PUT change type. The s3path must end + // with a trailing / if it is a directory and must end without a trailing / + // if it is a file. + // + // Here are few examples of how you can use the change request object: + // + // This request adds a single sym file at database root location. // - // Here is an example of how you can use the change request object: + // { "changeType": "PUT", "s3Path":"s3://bucket/db/sym", "dbPath":"/"} // - // [ { "changeType": "PUT", "s3Path":"s3://bucket/db/2020.01.02/", "dbPath":"/2020.01.02/"}, - // { "changeType": "PUT", "s3Path":"s3://bucket/db/sym", "dbPath":"/"}, { "changeType": - // "DELETE", "dbPath": "/2020.01.01/"} ] - // - // In this example, the first request with PUT change type allows you to add - // files in the given s3Path under the 2020.01.02 partition of the database. - // The second request with PUT change type allows you to add a single sym file - // at database root location. The last request with DELETE change type allows - // you to delete the files under the 2020.01.01 partition of the database. + // This request adds files in the given s3Path under the 2020.01.02 partition + // of the database. + // + // { "changeType": "PUT", "s3Path":"s3://bucket/db/2020.01.02/", "dbPath":"/2020.01.02/"} + // + // This request adds files in the given s3Path under the taq table partition + // of the database. + // + // [ { "changeType": "PUT", "s3Path":"s3://bucket/db/2020.01.02/taq/", "dbPath":"/2020.01.02/taq/"}] + // + // This request deletes the 2020.01.02 partition of the database. + // + // [{ "changeType": "DELETE", "dbPath": "/2020.01.02/"} ] + // + // The DELETE request allows you to delete the existing files under the 2020.01.02 + // partition of the database, and the PUT request adds a new taq table under + // it. + // + // [ {"changeType": "DELETE", "dbPath":"/2020.01.02/"}, {"changeType": "PUT", + // "s3Path":"s3://bucket/db/2020.01.02/taq/", "dbPath":"/2020.01.02/taq/"}] // // ChangeRequests is a required field ChangeRequests []*ChangeRequest `locationName:"changeRequests" min:"1" type:"list" required:"true"` @@ -4405,6 +4570,13 @@ // initialization scripts and custom code. This type of cluster does not // require a writable local storage. // + // * GP – A general purpose cluster allows you to quickly iterate on code + // during development by granting greater access to system commands and enabling + // a fast reload of custom code. This cluster type can optionally mount databases + // including cache and savedown storage. For this cluster type, the node + // count is fixed at 1. It does not support autoscaling and supports only + // SINGLE AZ mode. + // // ClusterType is a required field ClusterType *string `locationName:"clusterType" type:"string" required:"true" enum:"KxClusterType"` @@ -4743,6 +4915,13 @@ // in kdb systems. It allows you to create your own routing logic using the // initialization scripts and custom code. This type of cluster does not // require a writable local storage. + // + // * GP – A general purpose cluster allows you to quickly iterate on code + // during development by granting greater access to system commands and enabling + // a fast reload of custom code. This cluster type can optionally mount databases + // including cache and savedown storage. For this cluster type, the node + // count is fixed at 1. It does not support autoscaling and supports only + // SINGLE AZ mode. ClusterType *string `locationName:"clusterType" type:"string" enum:"KxClusterType"` // The details of the custom code that you want to use inside a cluster when @@ -6672,6 +6851,13 @@ // in kdb systems. It allows you to create your own routing logic using the // initialization scripts and custom code. This type of cluster does not // require a writable local storage. + // + // * GP – A general purpose cluster allows you to quickly iterate on code + // during development by granting greater access to system commands and enabling + // a fast reload of custom code. This cluster type can optionally mount databases + // including cache and savedown storage. For this cluster type, the node + // count is fixed at 1. It does not support autoscaling and supports only + // SINGLE AZ mode. ClusterType *string `locationName:"clusterType" type:"string" enum:"KxClusterType"` // The details of the custom code that you want to use inside a cluster when @@ -7733,10 +7919,18 @@ // Size is a required field Size *int64 `locationName:"size" min:"1200" type:"integer" required:"true"` - // The type of cache storage . The valid values are: + // The type of cache storage. The valid values are: // // * CACHE_1000 – This type provides at least 1000 MB/s disk access throughput. // + // * CACHE_250 – This type provides at least 250 MB/s disk access throughput. + // + // * CACHE_12 – This type provides at least 12 MB/s disk access throughput. + // + // For cache type CACHE_1000 and CACHE_250 you can select cache size as 1200 + // GB or increments of 2400 GB. For cache type CACHE_12 you can select the cache + // size in increments of 6000 GB. + // // Type is a required field Type *string `locationName:"type" min:"8" type:"string" required:"true"` } @@ -7914,6 +8108,13 @@ // in kdb systems. It allows you to create your own routing logic using the // initialization scripts and custom code. This type of cluster does not // require a writable local storage. + // + // * GP – A general purpose cluster allows you to quickly iterate on code + // during development by granting greater access to system commands and enabling + // a fast reload of custom code. This cluster type can optionally mount databases + // including cache and savedown storage. For this cluster type, the node + // count is fixed at 1. It does not support autoscaling and supports only + // SINGLE AZ mode. ClusterType *string `locationName:"clusterType" type:"string" enum:"KxClusterType"` // The timestamp at which the cluster was created in FinSpace. The value is @@ -8051,6 +8252,67 @@ return s } +// The configuration that allows you to choose how you want to update code on +// a cluster. Depending on the option you choose, you can reduce the time it +// takes to update the cluster. +type KxClusterCodeDeploymentConfiguration struct { + _ struct{} `type:"structure"` + + // The type of deployment that you want on a cluster. + // + // * ROLLING – This options updates the cluster by stopping the exiting + // q process and starting a new q process with updated configuration. + // + // * NO_RESTART – This option updates the cluster without stopping the + // running q process. It is only available for GP type cluster. This option + // is quicker as it reduces the turn around time to update configuration + // on a cluster. With this deployment mode, you cannot update the initializationScript + // and commandLineArguments parameters. + // + // * FORCE – This option updates the cluster by immediately stopping all + // the running processes before starting up new ones with the updated configuration. + // + // DeploymentStrategy is a required field + DeploymentStrategy *string `locationName:"deploymentStrategy" type:"string" required:"true" enum:"KxClusterCodeDeploymentStrategy"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KxClusterCodeDeploymentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KxClusterCodeDeploymentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KxClusterCodeDeploymentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KxClusterCodeDeploymentConfiguration"} + if s.DeploymentStrategy == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentStrategy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentStrategy sets the DeploymentStrategy field's value. +func (s *KxClusterCodeDeploymentConfiguration) SetDeploymentStrategy(v string) *KxClusterCodeDeploymentConfiguration { + s.DeploymentStrategy = &v + return s +} + // Defines the key-value pairs to make them available inside the cluster. type KxCommandLineArgument struct { _ struct{} `type:"structure"` @@ -8316,19 +8578,20 @@ // The configuration that allows you to choose how you want to update the databases // on a cluster. Depending on the option you choose, you can reduce the time -// it takes to update the database changesets on to a cluster. +// it takes to update the cluster. type KxDeploymentConfiguration struct { _ struct{} `type:"structure"` // The type of deployment that you want on a cluster. // - // * ROLLING – This options loads the updated database by stopping the - // exiting q process and starting a new q process with updated configuration. + // * ROLLING – This options updates the cluster by stopping the exiting + // q process and starting a new q process with updated configuration. // - // * NO_RESTART – This option loads the updated database on the running - // q process without stopping it. This option is quicker as it reduces the - // turn around time to update a kdb database changeset configuration on a - // cluster. + // * NO_RESTART – This option updates the cluster without stopping the + // running q process. It is only available for HDB type cluster. This option + // is quicker as it reduces the turn around time to update configuration + // on a cluster. With this deployment mode, you cannot update the initializationScript + // and commandLineArguments parameters. // // DeploymentStrategy is a required field DeploymentStrategy *string `locationName:"deploymentStrategy" type:"string" required:"true" enum:"KxDeploymentStrategy"` @@ -9201,6 +9464,13 @@ // in kdb systems. It allows you to create your own routing logic using the // initialization scripts and custom code. This type of cluster does not // require a writable local storage. + // + // * GP – A general purpose cluster allows you to quickly iterate on code + // during development by granting greater access to system commands and enabling + // a fast reload of custom code. This cluster type can optionally mount databases + // including cache and savedown storage. For this cluster type, the node + // count is fixed at 1. It does not support autoscaling and supports only + // SINGLE AZ mode. ClusterType *string `location:"querystring" locationName:"clusterType" type:"string" enum:"KxClusterType"` // A unique identifier for the kdb environment. @@ -10652,6 +10922,177 @@ return s } +type UpdateKxClusterCodeConfigurationInput struct { + _ struct{} `type:"structure"` + + // A token that ensures idempotency. This token expires in 10 minutes. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The name of the cluster. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"clusterName" min:"3" type:"string" required:"true"` + + // The structure of the customer code available within the running cluster. + // + // Code is a required field + Code *CodeConfiguration `locationName:"code" type:"structure" required:"true"` + + // Specifies the key-value pairs to make them available inside the cluster. + // + // You cannot update this parameter for a NO_RESTART deployment. + CommandLineArguments []*KxCommandLineArgument `locationName:"commandLineArguments" type:"list"` + + // The configuration that allows you to choose how you want to update the code + // on a cluster. + DeploymentConfiguration *KxClusterCodeDeploymentConfiguration `locationName:"deploymentConfiguration" type:"structure"` + + // A unique identifier of the kdb environment. + // + // EnvironmentId is a required field + EnvironmentId *string `location:"uri" locationName:"environmentId" min:"1" type:"string" required:"true"` + + // Specifies a Q program that will be run at launch of a cluster. It is a relative + // path within .zip file that contains the custom code, which will be loaded + // on the cluster. It must include the file name itself. For example, somedir/init.q. + // + // You cannot update this parameter for a NO_RESTART deployment. + InitializationScript *string `locationName:"initializationScript" 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 UpdateKxClusterCodeConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKxClusterCodeConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateKxClusterCodeConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateKxClusterCodeConfigurationInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 3)) + } + if s.Code == nil { + invalidParams.Add(request.NewErrParamRequired("Code")) + } + if s.EnvironmentId == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentId")) + } + if s.EnvironmentId != nil && len(*s.EnvironmentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentId", 1)) + } + if s.InitializationScript != nil && len(*s.InitializationScript) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InitializationScript", 1)) + } + if s.Code != nil { + if err := s.Code.Validate(); err != nil { + invalidParams.AddNested("Code", err.(request.ErrInvalidParams)) + } + } + if s.CommandLineArguments != nil { + for i, v := range s.CommandLineArguments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CommandLineArguments", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DeploymentConfiguration != nil { + if err := s.DeploymentConfiguration.Validate(); err != nil { + invalidParams.AddNested("DeploymentConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetClientToken(v string) *UpdateKxClusterCodeConfigurationInput { + s.ClientToken = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetClusterName(v string) *UpdateKxClusterCodeConfigurationInput { + s.ClusterName = &v + return s +} + +// SetCode sets the Code field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetCode(v *CodeConfiguration) *UpdateKxClusterCodeConfigurationInput { + s.Code = v + return s +} + +// SetCommandLineArguments sets the CommandLineArguments field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetCommandLineArguments(v []*KxCommandLineArgument) *UpdateKxClusterCodeConfigurationInput { + s.CommandLineArguments = v + return s +} + +// SetDeploymentConfiguration sets the DeploymentConfiguration field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetDeploymentConfiguration(v *KxClusterCodeDeploymentConfiguration) *UpdateKxClusterCodeConfigurationInput { + s.DeploymentConfiguration = v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetEnvironmentId(v string) *UpdateKxClusterCodeConfigurationInput { + s.EnvironmentId = &v + return s +} + +// SetInitializationScript sets the InitializationScript field's value. +func (s *UpdateKxClusterCodeConfigurationInput) SetInitializationScript(v string) *UpdateKxClusterCodeConfigurationInput { + s.InitializationScript = &v + return s +} + +type UpdateKxClusterCodeConfigurationOutput 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 UpdateKxClusterCodeConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKxClusterCodeConfigurationOutput) GoString() string { + return s.String() +} + type UpdateKxClusterDatabasesInput struct { _ struct{} `type:"structure"` @@ -11982,6 +12423,26 @@ } const ( + // KxClusterCodeDeploymentStrategyNoRestart is a KxClusterCodeDeploymentStrategy enum value + KxClusterCodeDeploymentStrategyNoRestart = "NO_RESTART" + + // KxClusterCodeDeploymentStrategyRolling is a KxClusterCodeDeploymentStrategy enum value + KxClusterCodeDeploymentStrategyRolling = "ROLLING" + + // KxClusterCodeDeploymentStrategyForce is a KxClusterCodeDeploymentStrategy enum value + KxClusterCodeDeploymentStrategyForce = "FORCE" +) + +// KxClusterCodeDeploymentStrategy_Values returns all elements of the KxClusterCodeDeploymentStrategy enum +func KxClusterCodeDeploymentStrategy_Values() []string { + return []string{ + KxClusterCodeDeploymentStrategyNoRestart, + KxClusterCodeDeploymentStrategyRolling, + KxClusterCodeDeploymentStrategyForce, + } +} + +const ( // KxClusterStatusPending is a KxClusterStatus enum value KxClusterStatusPending = "PENDING" @@ -12030,6 +12491,9 @@ // KxClusterTypeGateway is a KxClusterType enum value KxClusterTypeGateway = "GATEWAY" + + // KxClusterTypeGp is a KxClusterType enum value + KxClusterTypeGp = "GP" ) // KxClusterType_Values returns all elements of the KxClusterType enum @@ -12038,6 +12502,7 @@ KxClusterTypeHdb, KxClusterTypeRdb, KxClusterTypeGateway, + KxClusterTypeGp, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/finspace/finspaceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/finspace/finspaceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/finspace/finspaceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/finspace/finspaceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -188,6 +188,10 @@ UpdateEnvironmentWithContext(aws.Context, *finspace.UpdateEnvironmentInput, ...request.Option) (*finspace.UpdateEnvironmentOutput, error) UpdateEnvironmentRequest(*finspace.UpdateEnvironmentInput) (*request.Request, *finspace.UpdateEnvironmentOutput) + UpdateKxClusterCodeConfiguration(*finspace.UpdateKxClusterCodeConfigurationInput) (*finspace.UpdateKxClusterCodeConfigurationOutput, error) + UpdateKxClusterCodeConfigurationWithContext(aws.Context, *finspace.UpdateKxClusterCodeConfigurationInput, ...request.Option) (*finspace.UpdateKxClusterCodeConfigurationOutput, error) + UpdateKxClusterCodeConfigurationRequest(*finspace.UpdateKxClusterCodeConfigurationInput) (*request.Request, *finspace.UpdateKxClusterCodeConfigurationOutput) + UpdateKxClusterDatabases(*finspace.UpdateKxClusterDatabasesInput) (*finspace.UpdateKxClusterDatabasesOutput, error) UpdateKxClusterDatabasesWithContext(aws.Context, *finspace.UpdateKxClusterDatabasesInput, ...request.Option) (*finspace.UpdateKxClusterDatabasesOutput, error) UpdateKxClusterDatabasesRequest(*finspace.UpdateKxClusterDatabasesInput) (*request.Request, *finspace.UpdateKxClusterDatabasesOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/finspacedata/api.go golang-github-aws-aws-sdk-go-1.48.14/service/finspacedata/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/finspacedata/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/finspacedata/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -36,7 +36,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/AssociateUserToPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) AssociateUserToPermissionGroupRequest(input *AssociateUserToPermissionGroupInput) (req *request.Request, output *AssociateUserToPermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, AssociateUserToPermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opAssociateUserToPermissionGroup, HTTPMethod: "POST", @@ -54,8 +59,8 @@ // AssociateUserToPermissionGroup API operation for FinSpace Public API. // -// Adds a user account to a permission group to grant permissions for actions -// a user can perform in FinSpace. +// Adds a user to a permission group to grant permissions for actions a user +// can perform in FinSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -86,6 +91,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/AssociateUserToPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) AssociateUserToPermissionGroup(input *AssociateUserToPermissionGroupInput) (*AssociateUserToPermissionGroupOutput, error) { req, out := c.AssociateUserToPermissionGroupRequest(input) return out, req.Send() @@ -100,6 +107,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) AssociateUserToPermissionGroupWithContext(ctx aws.Context, input *AssociateUserToPermissionGroupInput, opts ...request.Option) (*AssociateUserToPermissionGroupOutput, error) { req, out := c.AssociateUserToPermissionGroupRequest(input) req.SetContext(ctx) @@ -132,7 +141,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateChangeset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateChangesetRequest(input *CreateChangesetInput) (req *request.Request, output *CreateChangesetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, CreateChangeset, has been deprecated") + } op := &request.Operation{ Name: opCreateChangeset, HTTPMethod: "POST", @@ -184,6 +198,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateChangeset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateChangeset(input *CreateChangesetInput) (*CreateChangesetOutput, error) { req, out := c.CreateChangesetRequest(input) return out, req.Send() @@ -198,6 +214,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateChangesetWithContext(ctx aws.Context, input *CreateChangesetInput, opts ...request.Option) (*CreateChangesetOutput, error) { req, out := c.CreateChangesetRequest(input) req.SetContext(ctx) @@ -230,7 +248,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateDataView +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateDataViewRequest(input *CreateDataViewInput) (req *request.Request, output *CreateDataViewOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, CreateDataView, has been deprecated") + } op := &request.Operation{ Name: opCreateDataView, HTTPMethod: "POST", @@ -279,6 +302,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateDataView +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateDataView(input *CreateDataViewInput) (*CreateDataViewOutput, error) { req, out := c.CreateDataViewRequest(input) return out, req.Send() @@ -293,6 +318,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateDataViewWithContext(ctx aws.Context, input *CreateDataViewInput, opts ...request.Option) (*CreateDataViewOutput, error) { req, out := c.CreateDataViewRequest(input) req.SetContext(ctx) @@ -325,7 +352,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateDatasetRequest(input *CreateDatasetInput) (req *request.Request, output *CreateDatasetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, CreateDataset, has been deprecated") + } op := &request.Operation{ Name: opCreateDataset, HTTPMethod: "POST", @@ -377,6 +409,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateDataset(input *CreateDatasetInput) (*CreateDatasetOutput, error) { req, out := c.CreateDatasetRequest(input) return out, req.Send() @@ -391,6 +425,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateDatasetWithContext(ctx aws.Context, input *CreateDatasetInput, opts ...request.Option) (*CreateDatasetOutput, error) { req, out := c.CreateDatasetRequest(input) req.SetContext(ctx) @@ -423,7 +459,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreatePermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreatePermissionGroupRequest(input *CreatePermissionGroupInput) (req *request.Request, output *CreatePermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, CreatePermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opCreatePermissionGroup, HTTPMethod: "POST", @@ -473,6 +514,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreatePermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreatePermissionGroup(input *CreatePermissionGroupInput) (*CreatePermissionGroupOutput, error) { req, out := c.CreatePermissionGroupRequest(input) return out, req.Send() @@ -487,6 +530,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreatePermissionGroupWithContext(ctx aws.Context, input *CreatePermissionGroupInput, opts ...request.Option) (*CreatePermissionGroupOutput, error) { req, out := c.CreatePermissionGroupRequest(input) req.SetContext(ctx) @@ -519,7 +564,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, CreateUser, has been deprecated") + } op := &request.Operation{ Name: opCreateUser, HTTPMethod: "POST", @@ -568,6 +618,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/CreateUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) { req, out := c.CreateUserRequest(input) return out, req.Send() @@ -582,6 +634,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) CreateUserWithContext(ctx aws.Context, input *CreateUserInput, opts ...request.Option) (*CreateUserOutput, error) { req, out := c.CreateUserRequest(input) req.SetContext(ctx) @@ -614,7 +668,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DeleteDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DeleteDatasetRequest(input *DeleteDatasetInput) (req *request.Request, output *DeleteDatasetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, DeleteDataset, has been deprecated") + } op := &request.Operation{ Name: opDeleteDataset, HTTPMethod: "DELETE", @@ -666,6 +725,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DeleteDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DeleteDataset(input *DeleteDatasetInput) (*DeleteDatasetOutput, error) { req, out := c.DeleteDatasetRequest(input) return out, req.Send() @@ -680,6 +741,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DeleteDatasetWithContext(ctx aws.Context, input *DeleteDatasetInput, opts ...request.Option) (*DeleteDatasetOutput, error) { req, out := c.DeleteDatasetRequest(input) req.SetContext(ctx) @@ -712,7 +775,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DeletePermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DeletePermissionGroupRequest(input *DeletePermissionGroupInput) (req *request.Request, output *DeletePermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, DeletePermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opDeletePermissionGroup, HTTPMethod: "DELETE", @@ -764,6 +832,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DeletePermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DeletePermissionGroup(input *DeletePermissionGroupInput) (*DeletePermissionGroupOutput, error) { req, out := c.DeletePermissionGroupRequest(input) return out, req.Send() @@ -778,6 +848,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DeletePermissionGroupWithContext(ctx aws.Context, input *DeletePermissionGroupInput, opts ...request.Option) (*DeletePermissionGroupOutput, error) { req, out := c.DeletePermissionGroupRequest(input) req.SetContext(ctx) @@ -810,7 +882,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisableUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DisableUserRequest(input *DisableUserInput) (req *request.Request, output *DisableUserOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, DisableUser, has been deprecated") + } op := &request.Operation{ Name: opDisableUser, HTTPMethod: "POST", @@ -859,6 +936,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisableUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DisableUser(input *DisableUserInput) (*DisableUserOutput, error) { req, out := c.DisableUserRequest(input) return out, req.Send() @@ -873,6 +952,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DisableUserWithContext(ctx aws.Context, input *DisableUserInput, opts ...request.Option) (*DisableUserOutput, error) { req, out := c.DisableUserRequest(input) req.SetContext(ctx) @@ -905,7 +986,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisassociateUserFromPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DisassociateUserFromPermissionGroupRequest(input *DisassociateUserFromPermissionGroupInput) (req *request.Request, output *DisassociateUserFromPermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, DisassociateUserFromPermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opDisassociateUserFromPermissionGroup, HTTPMethod: "DELETE", @@ -923,7 +1009,7 @@ // DisassociateUserFromPermissionGroup API operation for FinSpace Public API. // -// Removes a user account from a permission group. +// Removes a user from a permission group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -954,6 +1040,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisassociateUserFromPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DisassociateUserFromPermissionGroup(input *DisassociateUserFromPermissionGroupInput) (*DisassociateUserFromPermissionGroupOutput, error) { req, out := c.DisassociateUserFromPermissionGroupRequest(input) return out, req.Send() @@ -968,6 +1056,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) DisassociateUserFromPermissionGroupWithContext(ctx aws.Context, input *DisassociateUserFromPermissionGroupInput, opts ...request.Option) (*DisassociateUserFromPermissionGroupOutput, error) { req, out := c.DisassociateUserFromPermissionGroupRequest(input) req.SetContext(ctx) @@ -1000,7 +1090,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/EnableUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) EnableUserRequest(input *EnableUserInput) (req *request.Request, output *EnableUserOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, EnableUser, has been deprecated") + } op := &request.Operation{ Name: opEnableUser, HTTPMethod: "POST", @@ -1052,6 +1147,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/EnableUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) EnableUser(input *EnableUserInput) (*EnableUserOutput, error) { req, out := c.EnableUserRequest(input) return out, req.Send() @@ -1066,6 +1163,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) EnableUserWithContext(ctx aws.Context, input *EnableUserInput, opts ...request.Option) (*EnableUserOutput, error) { req, out := c.EnableUserRequest(input) req.SetContext(ctx) @@ -1098,7 +1197,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetChangeset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetChangesetRequest(input *GetChangesetInput) (req *request.Request, output *GetChangesetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetChangeset, has been deprecated") + } op := &request.Operation{ Name: opGetChangeset, HTTPMethod: "GET", @@ -1147,6 +1251,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetChangeset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetChangeset(input *GetChangesetInput) (*GetChangesetOutput, error) { req, out := c.GetChangesetRequest(input) return out, req.Send() @@ -1161,6 +1267,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetChangesetWithContext(ctx aws.Context, input *GetChangesetInput, opts ...request.Option) (*GetChangesetOutput, error) { req, out := c.GetChangesetRequest(input) req.SetContext(ctx) @@ -1193,7 +1301,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetDataView +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetDataViewRequest(input *GetDataViewInput) (req *request.Request, output *GetDataViewOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetDataView, has been deprecated") + } op := &request.Operation{ Name: opGetDataView, HTTPMethod: "GET", @@ -1239,6 +1352,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetDataView +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetDataView(input *GetDataViewInput) (*GetDataViewOutput, error) { req, out := c.GetDataViewRequest(input) return out, req.Send() @@ -1253,6 +1368,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetDataViewWithContext(ctx aws.Context, input *GetDataViewInput, opts ...request.Option) (*GetDataViewOutput, error) { req, out := c.GetDataViewRequest(input) req.SetContext(ctx) @@ -1285,7 +1402,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetDatasetRequest(input *GetDatasetInput) (req *request.Request, output *GetDatasetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetDataset, has been deprecated") + } op := &request.Operation{ Name: opGetDataset, HTTPMethod: "GET", @@ -1334,6 +1456,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetDataset(input *GetDatasetInput) (*GetDatasetOutput, error) { req, out := c.GetDatasetRequest(input) return out, req.Send() @@ -1348,6 +1472,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetDatasetWithContext(ctx aws.Context, input *GetDatasetInput, opts ...request.Option) (*GetDatasetOutput, error) { req, out := c.GetDatasetRequest(input) req.SetContext(ctx) @@ -1380,7 +1506,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetExternalDataViewAccessDetails +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetExternalDataViewAccessDetailsRequest(input *GetExternalDataViewAccessDetailsInput) (req *request.Request, output *GetExternalDataViewAccessDetailsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetExternalDataViewAccessDetails, has been deprecated") + } op := &request.Operation{ Name: opGetExternalDataViewAccessDetails, HTTPMethod: "POST", @@ -1432,6 +1563,8 @@ // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetExternalDataViewAccessDetails +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetExternalDataViewAccessDetails(input *GetExternalDataViewAccessDetailsInput) (*GetExternalDataViewAccessDetailsOutput, error) { req, out := c.GetExternalDataViewAccessDetailsRequest(input) return out, req.Send() @@ -1446,6 +1579,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetExternalDataViewAccessDetailsWithContext(ctx aws.Context, input *GetExternalDataViewAccessDetailsInput, opts ...request.Option) (*GetExternalDataViewAccessDetailsOutput, error) { req, out := c.GetExternalDataViewAccessDetailsRequest(input) req.SetContext(ctx) @@ -1478,7 +1613,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetPermissionGroupRequest(input *GetPermissionGroupInput) (req *request.Request, output *GetPermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetPermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opGetPermissionGroup, HTTPMethod: "GET", @@ -1524,6 +1664,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetPermissionGroup(input *GetPermissionGroupInput) (*GetPermissionGroupOutput, error) { req, out := c.GetPermissionGroupRequest(input) return out, req.Send() @@ -1538,6 +1680,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetPermissionGroupWithContext(ctx aws.Context, input *GetPermissionGroupInput, opts ...request.Option) (*GetPermissionGroupOutput, error) { req, out := c.GetPermissionGroupRequest(input) req.SetContext(ctx) @@ -1570,7 +1714,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetProgrammaticAccessCredentials +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetProgrammaticAccessCredentialsRequest(input *GetProgrammaticAccessCredentialsInput) (req *request.Request, output *GetProgrammaticAccessCredentialsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetProgrammaticAccessCredentials, has been deprecated") + } op := &request.Operation{ Name: opGetProgrammaticAccessCredentials, HTTPMethod: "GET", @@ -1588,7 +1737,9 @@ // GetProgrammaticAccessCredentials API operation for FinSpace Public API. // -// Request programmatic credentials to use with FinSpace SDK. +// Request programmatic credentials to use with FinSpace SDK. For more information, +// see Step 2. Access credentials programmatically using IAM access key id and +// secret access key (https://docs.aws.amazon.com/finspace/latest/data-api/fs-using-the-finspace-api.html#accessing-credentials). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1613,6 +1764,8 @@ // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetProgrammaticAccessCredentials +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetProgrammaticAccessCredentials(input *GetProgrammaticAccessCredentialsInput) (*GetProgrammaticAccessCredentialsOutput, error) { req, out := c.GetProgrammaticAccessCredentialsRequest(input) return out, req.Send() @@ -1627,6 +1780,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetProgrammaticAccessCredentialsWithContext(ctx aws.Context, input *GetProgrammaticAccessCredentialsInput, opts ...request.Option) (*GetProgrammaticAccessCredentialsOutput, error) { req, out := c.GetProgrammaticAccessCredentialsRequest(input) req.SetContext(ctx) @@ -1659,7 +1814,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetUserRequest(input *GetUserInput) (req *request.Request, output *GetUserOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetUser, has been deprecated") + } op := &request.Operation{ Name: opGetUser, HTTPMethod: "GET", @@ -1705,6 +1865,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetUser(input *GetUserInput) (*GetUserOutput, error) { req, out := c.GetUserRequest(input) return out, req.Send() @@ -1719,6 +1881,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetUserWithContext(ctx aws.Context, input *GetUserInput, opts ...request.Option) (*GetUserOutput, error) { req, out := c.GetUserRequest(input) req.SetContext(ctx) @@ -1751,7 +1915,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetWorkingLocation +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetWorkingLocationRequest(input *GetWorkingLocationInput) (req *request.Request, output *GetWorkingLocationOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, GetWorkingLocation, has been deprecated") + } op := &request.Operation{ Name: opGetWorkingLocation, HTTPMethod: "POST", @@ -1795,6 +1964,8 @@ // The input fails to satisfy the constraints specified by an AWS service. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetWorkingLocation +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetWorkingLocation(input *GetWorkingLocationInput) (*GetWorkingLocationOutput, error) { req, out := c.GetWorkingLocationRequest(input) return out, req.Send() @@ -1809,6 +1980,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) GetWorkingLocationWithContext(ctx aws.Context, input *GetWorkingLocationInput, opts ...request.Option) (*GetWorkingLocationOutput, error) { req, out := c.GetWorkingLocationRequest(input) req.SetContext(ctx) @@ -1841,7 +2014,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListChangesets +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListChangesetsRequest(input *ListChangesetsInput) (req *request.Request, output *ListChangesetsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListChangesets, has been deprecated") + } op := &request.Operation{ Name: opListChangesets, HTTPMethod: "GET", @@ -1896,6 +2074,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListChangesets +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListChangesets(input *ListChangesetsInput) (*ListChangesetsOutput, error) { req, out := c.ListChangesetsRequest(input) return out, req.Send() @@ -1910,6 +2090,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListChangesetsWithContext(ctx aws.Context, input *ListChangesetsInput, opts ...request.Option) (*ListChangesetsOutput, error) { req, out := c.ListChangesetsRequest(input) req.SetContext(ctx) @@ -1933,6 +2115,8 @@ // fmt.Println(page) // return pageNum <= 3 // }) +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListChangesetsPages(input *ListChangesetsInput, fn func(*ListChangesetsOutput, bool) bool) error { return c.ListChangesetsPagesWithContext(aws.BackgroundContext(), input, fn) } @@ -1944,6 +2128,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListChangesetsPagesWithContext(ctx aws.Context, input *ListChangesetsInput, fn func(*ListChangesetsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { @@ -1993,7 +2179,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListDataViews +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDataViewsRequest(input *ListDataViewsInput) (req *request.Request, output *ListDataViewsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListDataViews, has been deprecated") + } op := &request.Operation{ Name: opListDataViews, HTTPMethod: "GET", @@ -2045,6 +2236,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListDataViews +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDataViews(input *ListDataViewsInput) (*ListDataViewsOutput, error) { req, out := c.ListDataViewsRequest(input) return out, req.Send() @@ -2059,6 +2252,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDataViewsWithContext(ctx aws.Context, input *ListDataViewsInput, opts ...request.Option) (*ListDataViewsOutput, error) { req, out := c.ListDataViewsRequest(input) req.SetContext(ctx) @@ -2082,6 +2277,8 @@ // fmt.Println(page) // return pageNum <= 3 // }) +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDataViewsPages(input *ListDataViewsInput, fn func(*ListDataViewsOutput, bool) bool) error { return c.ListDataViewsPagesWithContext(aws.BackgroundContext(), input, fn) } @@ -2093,6 +2290,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDataViewsPagesWithContext(ctx aws.Context, input *ListDataViewsInput, fn func(*ListDataViewsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { @@ -2142,7 +2341,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListDatasets +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDatasetsRequest(input *ListDatasetsInput) (req *request.Request, output *ListDatasetsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListDatasets, has been deprecated") + } op := &request.Operation{ Name: opListDatasets, HTTPMethod: "GET", @@ -2194,6 +2398,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListDatasets +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDatasets(input *ListDatasetsInput) (*ListDatasetsOutput, error) { req, out := c.ListDatasetsRequest(input) return out, req.Send() @@ -2208,6 +2414,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDatasetsWithContext(ctx aws.Context, input *ListDatasetsInput, opts ...request.Option) (*ListDatasetsOutput, error) { req, out := c.ListDatasetsRequest(input) req.SetContext(ctx) @@ -2231,6 +2439,8 @@ // fmt.Println(page) // return pageNum <= 3 // }) +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDatasetsPages(input *ListDatasetsInput, fn func(*ListDatasetsOutput, bool) bool) error { return c.ListDatasetsPagesWithContext(aws.BackgroundContext(), input, fn) } @@ -2242,6 +2452,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListDatasetsPagesWithContext(ctx aws.Context, input *ListDatasetsInput, fn func(*ListDatasetsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { @@ -2291,7 +2503,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroups +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsRequest(input *ListPermissionGroupsInput) (req *request.Request, output *ListPermissionGroupsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListPermissionGroups, has been deprecated") + } op := &request.Operation{ Name: opListPermissionGroups, HTTPMethod: "GET", @@ -2340,6 +2557,8 @@ // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroups +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroups(input *ListPermissionGroupsInput) (*ListPermissionGroupsOutput, error) { req, out := c.ListPermissionGroupsRequest(input) return out, req.Send() @@ -2354,6 +2573,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsWithContext(ctx aws.Context, input *ListPermissionGroupsInput, opts ...request.Option) (*ListPermissionGroupsOutput, error) { req, out := c.ListPermissionGroupsRequest(input) req.SetContext(ctx) @@ -2377,6 +2598,8 @@ // fmt.Println(page) // return pageNum <= 3 // }) +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsPages(input *ListPermissionGroupsInput, fn func(*ListPermissionGroupsOutput, bool) bool) error { return c.ListPermissionGroupsPagesWithContext(aws.BackgroundContext(), input, fn) } @@ -2388,6 +2611,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsPagesWithContext(ctx aws.Context, input *ListPermissionGroupsInput, fn func(*ListPermissionGroupsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { @@ -2437,7 +2662,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroupsByUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsByUserRequest(input *ListPermissionGroupsByUserInput) (req *request.Request, output *ListPermissionGroupsByUserOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListPermissionGroupsByUser, has been deprecated") + } op := &request.Operation{ Name: opListPermissionGroupsByUser, HTTPMethod: "GET", @@ -2455,8 +2685,7 @@ // ListPermissionGroupsByUser API operation for FinSpace Public API. // -// Lists all the permission groups that are associated with a specific user -// account. +// Lists all the permission groups that are associated with a specific user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2484,6 +2713,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroupsByUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsByUser(input *ListPermissionGroupsByUserInput) (*ListPermissionGroupsByUserOutput, error) { req, out := c.ListPermissionGroupsByUserRequest(input) return out, req.Send() @@ -2498,6 +2729,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListPermissionGroupsByUserWithContext(ctx aws.Context, input *ListPermissionGroupsByUserInput, opts ...request.Option) (*ListPermissionGroupsByUserOutput, error) { req, out := c.ListPermissionGroupsByUserRequest(input) req.SetContext(ctx) @@ -2530,7 +2763,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsers +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListUsers, has been deprecated") + } op := &request.Operation{ Name: opListUsers, HTTPMethod: "GET", @@ -2554,7 +2792,7 @@ // ListUsers API operation for FinSpace Public API. // -// Lists all available user accounts in FinSpace. +// Lists all available users in FinSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2579,6 +2817,8 @@ // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsers +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { req, out := c.ListUsersRequest(input) return out, req.Send() @@ -2593,6 +2833,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersWithContext(ctx aws.Context, input *ListUsersInput, opts ...request.Option) (*ListUsersOutput, error) { req, out := c.ListUsersRequest(input) req.SetContext(ctx) @@ -2616,6 +2858,8 @@ // fmt.Println(page) // return pageNum <= 3 // }) +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersPages(input *ListUsersInput, fn func(*ListUsersOutput, bool) bool) error { return c.ListUsersPagesWithContext(aws.BackgroundContext(), input, fn) } @@ -2627,6 +2871,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersPagesWithContext(ctx aws.Context, input *ListUsersInput, fn func(*ListUsersOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { @@ -2676,7 +2922,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsersByPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersByPermissionGroupRequest(input *ListUsersByPermissionGroupInput) (req *request.Request, output *ListUsersByPermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ListUsersByPermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opListUsersByPermissionGroup, HTTPMethod: "GET", @@ -2722,6 +2973,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsersByPermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersByPermissionGroup(input *ListUsersByPermissionGroupInput) (*ListUsersByPermissionGroupOutput, error) { req, out := c.ListUsersByPermissionGroupRequest(input) return out, req.Send() @@ -2736,6 +2989,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ListUsersByPermissionGroupWithContext(ctx aws.Context, input *ListUsersByPermissionGroupInput, opts ...request.Option) (*ListUsersByPermissionGroupOutput, error) { req, out := c.ListUsersByPermissionGroupRequest(input) req.SetContext(ctx) @@ -2768,7 +3023,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ResetUserPassword +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ResetUserPasswordRequest(input *ResetUserPasswordInput) (req *request.Request, output *ResetUserPasswordOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, ResetUserPassword, has been deprecated") + } op := &request.Operation{ Name: opResetUserPassword, HTTPMethod: "POST", @@ -2819,6 +3079,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ResetUserPassword +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ResetUserPassword(input *ResetUserPasswordInput) (*ResetUserPasswordOutput, error) { req, out := c.ResetUserPasswordRequest(input) return out, req.Send() @@ -2833,6 +3095,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) ResetUserPasswordWithContext(ctx aws.Context, input *ResetUserPasswordInput, opts ...request.Option) (*ResetUserPasswordOutput, error) { req, out := c.ResetUserPasswordRequest(input) req.SetContext(ctx) @@ -2865,7 +3129,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateChangeset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateChangesetRequest(input *UpdateChangesetInput) (req *request.Request, output *UpdateChangesetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, UpdateChangeset, has been deprecated") + } op := &request.Operation{ Name: opUpdateChangeset, HTTPMethod: "PUT", @@ -2914,6 +3183,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateChangeset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateChangeset(input *UpdateChangesetInput) (*UpdateChangesetOutput, error) { req, out := c.UpdateChangesetRequest(input) return out, req.Send() @@ -2928,6 +3199,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateChangesetWithContext(ctx aws.Context, input *UpdateChangesetInput, opts ...request.Option) (*UpdateChangesetOutput, error) { req, out := c.UpdateChangesetRequest(input) req.SetContext(ctx) @@ -2960,7 +3233,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateDatasetRequest(input *UpdateDatasetInput) (req *request.Request, output *UpdateDatasetOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, UpdateDataset, has been deprecated") + } op := &request.Operation{ Name: opUpdateDataset, HTTPMethod: "PUT", @@ -3009,6 +3287,8 @@ // One or more resources can't be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateDataset +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateDataset(input *UpdateDatasetInput) (*UpdateDatasetOutput, error) { req, out := c.UpdateDatasetRequest(input) return out, req.Send() @@ -3023,6 +3303,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateDatasetWithContext(ctx aws.Context, input *UpdateDatasetInput, opts ...request.Option) (*UpdateDatasetOutput, error) { req, out := c.UpdateDatasetRequest(input) req.SetContext(ctx) @@ -3055,7 +3337,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdatePermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdatePermissionGroupRequest(input *UpdatePermissionGroupInput) (req *request.Request, output *UpdatePermissionGroupOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, UpdatePermissionGroup, has been deprecated") + } op := &request.Operation{ Name: opUpdatePermissionGroup, HTTPMethod: "PUT", @@ -3104,6 +3391,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdatePermissionGroup +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdatePermissionGroup(input *UpdatePermissionGroupInput) (*UpdatePermissionGroupOutput, error) { req, out := c.UpdatePermissionGroupRequest(input) return out, req.Send() @@ -3118,6 +3407,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdatePermissionGroupWithContext(ctx aws.Context, input *UpdatePermissionGroupInput, opts ...request.Option) (*UpdatePermissionGroupOutput, error) { req, out := c.UpdatePermissionGroupRequest(input) req.SetContext(ctx) @@ -3150,7 +3441,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, UpdateUser, has been deprecated") + } op := &request.Operation{ Name: opUpdateUser, HTTPMethod: "PUT", @@ -3168,8 +3464,8 @@ // UpdateUser API operation for FinSpace Public API. // -// Modifies the details of the specified user account. You cannot update the -// userId for a user. +// Modifies the details of the specified user. You cannot update the userId +// for a user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3200,6 +3496,8 @@ // The request conflicts with an existing resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateUser +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { req, out := c.UpdateUserRequest(input) return out, req.Send() @@ -3214,6 +3512,8 @@ // 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. +// +// Deprecated: This method will be discontinued. func (c *FinSpaceData) UpdateUserWithContext(ctx aws.Context, input *UpdateUserInput, opts ...request.Option) (*UpdateUserOutput, error) { req, out := c.UpdateUserRequest(input) req.SetContext(ctx) @@ -3396,7 +3696,7 @@ // The credentials required to access the external Dataview from the S3 location. type AwsCredentials struct { - _ struct{} `type:"structure"` + _ struct{} `type:"structure" sensitive:"true"` // The unique identifier for the security credentials. AccessKeyId *string `locationName:"accessKeyId" min:"1" type:"string"` @@ -4498,7 +4798,7 @@ // * ENABLED – The user has permissions to use the APIs. // // * DISABLED – The user does not have permissions to use any APIs. - ApiAccess *string `type:"string" enum:"ApiAccess"` + ApiAccess *string `locationName:"apiAccess" type:"string" enum:"ApiAccess"` // The ARN identifier of an AWS user or role that is allowed to call the GetProgrammaticAccessCredentials // API to obtain a credentials token for a specific FinSpace user. This must @@ -4670,7 +4970,7 @@ // Short term API credentials. type Credentials struct { - _ struct{} `type:"structure"` + _ struct{} `type:"structure" sensitive:"true"` // The access key identifier. AccessKeyId *string `locationName:"accessKeyId" min:"1" type:"string"` @@ -5394,7 +5694,7 @@ // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The unique identifier for the user account that you want to disable. + // The unique identifier for the user that you want to deactivate. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` @@ -5452,7 +5752,7 @@ type DisableUserOutput struct { _ struct{} `type:"structure"` - // The unique identifier for the disabled user account. + // The unique identifier for the deactivated user. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -5595,7 +5895,7 @@ // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The unique identifier for the user account that you want to enable. + // The unique identifier for the user that you want to activate. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` @@ -5653,7 +5953,7 @@ type EnableUserOutput struct { _ struct{} `type:"structure"` - // The unique identifier for the enabled user account. + // The unique identifier for the active user. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -6375,7 +6675,11 @@ _ struct{} `type:"structure"` // The credentials required to access the external Dataview from the S3 location. - Credentials *AwsCredentials `locationName:"credentials" type:"structure"` + // + // Credentials is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetExternalDataViewAccessDetailsOutput's + // String and GoString methods. + Credentials *AwsCredentials `locationName:"credentials" type:"structure" sensitive:"true"` // The location where the external Dataview is stored. S3Location *S3Location `locationName:"s3Location" type:"structure"` @@ -6496,7 +6800,7 @@ _ struct{} `type:"structure" nopayload:"true"` // The time duration in which the credentials remain valid. - DurationInMinutes *int64 `location:"querystring" locationName:"durationInMinutes" min:"60" type:"long"` + DurationInMinutes *int64 `location:"querystring" locationName:"durationInMinutes" min:"1" type:"long"` // The FinSpace environment identifier. // @@ -6525,8 +6829,8 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *GetProgrammaticAccessCredentialsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetProgrammaticAccessCredentialsInput"} - if s.DurationInMinutes != nil && *s.DurationInMinutes < 60 { - invalidParams.Add(request.NewErrParamMinValue("DurationInMinutes", 60)) + if s.DurationInMinutes != nil && *s.DurationInMinutes < 1 { + invalidParams.Add(request.NewErrParamMinValue("DurationInMinutes", 1)) } if s.EnvironmentId == nil { invalidParams.Add(request.NewErrParamRequired("EnvironmentId")) @@ -6558,10 +6862,14 @@ _ struct{} `type:"structure"` // Returns the programmatic credentials. - Credentials *Credentials `locationName:"credentials" type:"structure"` + // + // Credentials is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProgrammaticAccessCredentialsOutput's + // String and GoString methods. + Credentials *Credentials `locationName:"credentials" type:"structure" sensitive:"true"` // Returns the duration in which the credentials will remain valid. - DurationInMinutes *int64 `locationName:"durationInMinutes" min:"60" type:"long"` + DurationInMinutes *int64 `locationName:"durationInMinutes" min:"1" type:"long"` } // String returns the string representation. @@ -6660,8 +6968,8 @@ // be an IAM role within your FinSpace account. ApiAccessPrincipalArn *string `locationName:"apiAccessPrincipalArn" min:"20" type:"string"` - // The timestamp at which the user account was created in FinSpace. The value - // is determined as epoch time in milliseconds. + // The timestamp at which the user was created in FinSpace. The value is determined + // as epoch time in milliseconds. CreateTime *int64 `locationName:"createTime" type:"long"` // The email address that is associated with the user. @@ -6678,19 +6986,19 @@ // String and GoString methods. FirstName *string `locationName:"firstName" min:"1" type:"string" sensitive:"true"` - // Describes the last time the user account was disabled. The value is determined + // Describes the last time the user was deactivated. The value is determined // as epoch time in milliseconds. LastDisabledTime *int64 `locationName:"lastDisabledTime" type:"long"` - // Describes the last time the user account was enabled. The value is determined - // as epoch time in milliseconds. + // Describes the last time the user was activated. The value is determined as + // epoch time in milliseconds. LastEnabledTime *int64 `locationName:"lastEnabledTime" type:"long"` // Describes the last time that the user logged into their account. The value // is determined as epoch time in milliseconds. LastLoginTime *int64 `locationName:"lastLoginTime" type:"long"` - // Describes the last time the user account was updated. The value is determined + // Describes the last time the user details were updated. The value is determined // as epoch time in milliseconds. LastModifiedTime *int64 `locationName:"lastModifiedTime" type:"long"` @@ -6701,13 +7009,13 @@ // String and GoString methods. LastName *string `locationName:"lastName" min:"1" type:"string" sensitive:"true"` - // The current status of the user account. + // The current status of the user. // - // * CREATING – The user account creation is in progress. + // * CREATING – The creation is in progress. // - // * ENABLED – The user account is created and is currently active. + // * ENABLED – The user is created and is currently active. // - // * DISABLED – The user account is currently inactive. + // * DISABLED – The user is currently inactive. Status *string `locationName:"status" type:"string" enum:"UserStatus"` // Indicates the type of user. @@ -6719,7 +7027,7 @@ // are assigned permissions by adding them to a permission group. Type *string `locationName:"type" type:"string" enum:"UserType"` - // The unique identifier for the user account that is retrieved. + // The unique identifier for the user that is retrieved. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -7747,7 +8055,7 @@ // A token that indicates where a results page should begin. NextToken *string `locationName:"nextToken" type:"string"` - // A list of all the user accounts. + // A list of all the users. Users []*User `locationName:"users" type:"list"` } @@ -7827,12 +8135,12 @@ // as epoch time in milliseconds. LastModifiedTime *int64 `locationName:"lastModifiedTime" type:"long"` - // Indicates the status of the user account within a permission group. + // Indicates the status of the user within a permission group. // - // * ADDITION_IN_PROGRESS – The user account is currently being added to - // the permission group. + // * ADDITION_IN_PROGRESS – The user is currently being added to the permission + // group. // - // * ADDITION_SUCCESS – The user account is successfully added to the permission + // * ADDITION_SUCCESS – The user is successfully added to the permission // group. // // * REMOVAL_IN_PROGRESS – The user is currently being removed from the @@ -7910,16 +8218,16 @@ return s } -// The structure of a permission group associated with a user account. +// The structure of a permission group associated with a user. type PermissionGroupByUser struct { _ struct{} `type:"structure"` - // Indicates the status of the user account within a permission group. + // Indicates the status of the user within a permission group. // - // * ADDITION_IN_PROGRESS – The user account is currently being added to - // the permission group. + // * ADDITION_IN_PROGRESS – The user is currently being added to the permission + // group. // - // * ADDITION_SUCCESS – The user account is successfully added to the permission + // * ADDITION_SUCCESS – The user is successfully added to the permission // group. // // * REMOVAL_IN_PROGRESS – The user is currently being removed from the @@ -8108,8 +8416,8 @@ type ResetUserPasswordOutput struct { _ struct{} `type:"structure"` - // A randomly generated temporary password for the requested user account. This - // password expires in 7 days. + // A randomly generated temporary password for the requested user. This password + // expires in 7 days. // // TemporaryPassword is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by ResetUserPasswordOutput's @@ -9011,7 +9319,7 @@ // are assigned permissions by adding them to a permission group. Type *string `locationName:"type" type:"string" enum:"UserType"` - // The unique identifier for the user account to update. + // The unique identifier for the user that you want to update. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` @@ -9108,7 +9416,7 @@ type UpdateUserOutput struct { _ struct{} `type:"structure"` - // The unique identifier of the updated user account. + // The unique identifier of the updated user. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -9136,7 +9444,7 @@ return s } -// The details of the user account. +// The details of the user. type User struct { _ struct{} `type:"structure"` @@ -9154,8 +9462,8 @@ // be an IAM role within your FinSpace account. ApiAccessPrincipalArn *string `locationName:"apiAccessPrincipalArn" min:"20" type:"string"` - // The timestamp at which the user account was created in FinSpace. The value - // is determined as epoch time in milliseconds. + // The timestamp at which the user was created in FinSpace. The value is determined + // as epoch time in milliseconds. CreateTime *int64 `locationName:"createTime" type:"long"` // The email address of the user. The email address serves as a uniquer identifier @@ -9173,20 +9481,20 @@ // String and GoString methods. FirstName *string `locationName:"firstName" min:"1" type:"string" sensitive:"true"` - // Describes the last time the user account was disabled. The value is determined + // Describes the last time the user was deactivated. The value is determined // as epoch time in milliseconds. LastDisabledTime *int64 `locationName:"lastDisabledTime" type:"long"` - // Describes the last time the user account was enabled. The value is determined - // as epoch time in milliseconds. + // Describes the last time the user was activated. The value is determined as + // epoch time in milliseconds. LastEnabledTime *int64 `locationName:"lastEnabledTime" type:"long"` // Describes the last time that the user logged into their account. The value // is determined as epoch time in milliseconds. LastLoginTime *int64 `locationName:"lastLoginTime" type:"long"` - // Describes the last time the user account was updated. The value is determined - // as epoch time in milliseconds. + // Describes the last time the user was updated. The value is determined as + // epoch time in milliseconds. LastModifiedTime *int64 `locationName:"lastModifiedTime" type:"long"` // The last name of the user. @@ -9196,13 +9504,13 @@ // String and GoString methods. LastName *string `locationName:"lastName" min:"1" type:"string" sensitive:"true"` - // The current status of the user account. + // The current status of the user. // - // * CREATING – The user account creation is in progress. + // * CREATING – The user creation is in progress. // - // * ENABLED – The user account is created and is currently active. + // * ENABLED – The user is created and is currently active. // - // * DISABLED – The user account is currently inactive. + // * DISABLED – The user is currently inactive. Status *string `locationName:"status" type:"string" enum:"UserStatus"` // Indicates the type of user. @@ -9314,7 +9622,7 @@ return s } -// The structure of a user account associated with a permission group. +// The structure of a user associated with a permission group. type UserByPermissionGroup struct { _ struct{} `type:"structure"` @@ -9350,25 +9658,25 @@ // String and GoString methods. LastName *string `locationName:"lastName" min:"1" type:"string" sensitive:"true"` - // Indicates the status of the user account within a permission group. + // Indicates the status of the user within a permission group. // - // * ADDITION_IN_PROGRESS – The user account is currently being added to - // the permission group. + // * ADDITION_IN_PROGRESS – The user is currently being added to the permission + // group. // - // * ADDITION_SUCCESS – The user account is successfully added to the permission + // * ADDITION_SUCCESS – The user is successfully added to the permission // group. // // * REMOVAL_IN_PROGRESS – The user is currently being removed from the // permission group. MembershipStatus *string `locationName:"membershipStatus" type:"string" enum:"PermissionGroupMembershipStatus"` - // The current status of the user account. + // The current status of the user. // - // * CREATING – The user account creation is in progress. + // * CREATING – The user creation is in progress. // - // * ENABLED – The user account is created and is currently active. + // * ENABLED – The user is created and is currently active. // - // * DISABLED – The user account is currently inactive. + // * DISABLED – The user is currently inactive. Status *string `locationName:"status" type:"string" enum:"UserStatus"` // Indicates the type of user. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/firehose/api.go golang-github-aws-aws-sdk-go-1.48.14/service/firehose/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/firehose/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/firehose/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -572,6 +572,12 @@ // for each delivery stream. For more information about limits and how to request // an increase, see Amazon Kinesis Data Firehose Limits (https://docs.aws.amazon.com/firehose/latest/dev/limits.html). // +// Kinesis Data Firehose accumulates and publishes a particular metric for a +// customer account in one minute intervals. It is possible that the bursts +// of incoming bytes/records ingested to a delivery stream last only for a few +// seconds. Due to this, the actual spikes in the traffic might not be fully +// visible in the customer's 1 minute CloudWatch metrics. +// // You must specify the name of the delivery stream and the data record when // using PutRecord. The data record consists of a data blob that can be up to // 1,000 KiB in size, and any kind of data. For example, it can be a segment @@ -588,9 +594,14 @@ // to each record. Producer applications can use this ID for purposes such as // auditability and investigation. // -// If the PutRecord operation throws a ServiceUnavailableException, back off -// and retry. If the exception persists, it is possible that the throughput -// limits have been exceeded for the delivery stream. +// If the PutRecord operation throws a ServiceUnavailableException, the API +// is automatically reinvoked (retried) 3 times. If the exception persists, +// it is possible that the throughput limits have been exceeded for the delivery +// stream. +// +// Re-invoking the Put API operations (for example, PutRecord and PutRecordBatch) +// can result in data duplicates. For larger data assets, allow for a longer +// time out before retrying Put API operations. // // Data records sent to Kinesis Data Firehose are stored for 24 hours from the // time they are added to a delivery stream as it tries to send the records @@ -697,6 +708,12 @@ // To write single data records into a delivery stream, use PutRecord. Applications // using these operations are referred to as producers. // +// Kinesis Data Firehose accumulates and publishes a particular metric for a +// customer account in one minute intervals. It is possible that the bursts +// of incoming bytes/records ingested to a delivery stream last only for a few +// seconds. Due to this, the actual spikes in the traffic might not be fully +// visible in the customer's 1 minute CloudWatch metrics. +// // For information about service quota, see Amazon Kinesis Data Firehose Quota // (https://docs.aws.amazon.com/firehose/latest/dev/limits.html). // @@ -741,9 +758,13 @@ // corresponding charges). We recommend that you handle any duplicates at the // destination. // -// If PutRecordBatch throws ServiceUnavailableException, back off and retry. -// If the exception persists, it is possible that the throughput limits have -// been exceeded for the delivery stream. +// If PutRecordBatch throws ServiceUnavailableException, the API is automatically +// reinvoked (retried) 3 times. If the exception persists, it is possible that +// the throughput limits have been exceeded for the delivery stream. +// +// Re-invoking the Put API operations (for example, PutRecord and PutRecordBatch) +// can result in data duplicates. For larger data assets, allow for a longer +// time out before retrying Put API operations. // // Data records sent to Kinesis Data Firehose are stored for 24 hours from the // time they are added to a delivery stream as it attempts to send the records @@ -870,6 +891,10 @@ // Kinesis Data Firehose creates a grant that enables it to use the new CMK // to encrypt and decrypt data and to manage the grant. // +// For the KMS grant creation to be successful, Kinesis Data Firehose APIs StartDeliveryStreamEncryption +// and CreateDeliveryStream should not be called with session credentials that +// are more than 6 hours old. +// // If a delivery stream already has encryption enabled and then you invoke this // operation to change the ARN of the CMK or both its type and ARN and you get // ENABLING_FAILED, this only means that the attempt to change the CMK failed. @@ -2572,6 +2597,70 @@ return s } +// The authentication configuration of the Amazon MSK cluster. +type AuthenticationConfiguration struct { + _ struct{} `type:"structure"` + + // The type of connectivity used to access the Amazon MSK cluster. + // + // Connectivity is a required field + Connectivity *string `type:"string" required:"true" enum:"Connectivity"` + + // The ARN of the role used to access the Amazon MSK cluster. + // + // RoleARN is a required field + RoleARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthenticationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthenticationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuthenticationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuthenticationConfiguration"} + if s.Connectivity == nil { + invalidParams.Add(request.NewErrParamRequired("Connectivity")) + } + if s.RoleARN == nil { + invalidParams.Add(request.NewErrParamRequired("RoleARN")) + } + if s.RoleARN != nil && len(*s.RoleARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectivity sets the Connectivity field's value. +func (s *AuthenticationConfiguration) SetConnectivity(v string) *AuthenticationConfiguration { + s.Connectivity = &v + return s +} + +// SetRoleARN sets the RoleARN field's value. +func (s *AuthenticationConfiguration) SetRoleARN(v string) *AuthenticationConfiguration { + s.RoleARN = &v + return s +} + // Describes hints for the buffering to perform before delivering data to the // destination. These options are treated as hints, and therefore Kinesis Data // Firehose might choose to use different values when it is optimal. The SizeInMBs @@ -2894,6 +2983,10 @@ // Resource Name (ARN) and the role ARN for the source stream. KinesisStreamSourceConfiguration *KinesisStreamSourceConfiguration `type:"structure"` + // The configuration for the Amazon MSK cluster to be used as the source for + // a delivery stream. + MSKSourceConfiguration *MSKSourceConfiguration `type:"structure"` + // The destination in Amazon Redshift. You can specify only one destination. RedshiftDestinationConfiguration *RedshiftDestinationConfiguration `type:"structure"` @@ -2981,6 +3074,11 @@ invalidParams.AddNested("KinesisStreamSourceConfiguration", err.(request.ErrInvalidParams)) } } + if s.MSKSourceConfiguration != nil { + if err := s.MSKSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("MSKSourceConfiguration", err.(request.ErrInvalidParams)) + } + } if s.RedshiftDestinationConfiguration != nil { if err := s.RedshiftDestinationConfiguration.Validate(); err != nil { invalidParams.AddNested("RedshiftDestinationConfiguration", err.(request.ErrInvalidParams)) @@ -3067,6 +3165,12 @@ return s } +// SetMSKSourceConfiguration sets the MSKSourceConfiguration field's value. +func (s *CreateDeliveryStreamInput) SetMSKSourceConfiguration(v *MSKSourceConfiguration) *CreateDeliveryStreamInput { + s.MSKSourceConfiguration = v + return s +} + // SetRedshiftDestinationConfiguration sets the RedshiftDestinationConfiguration field's value. func (s *CreateDeliveryStreamInput) SetRedshiftDestinationConfiguration(v *RedshiftDestinationConfiguration) *CreateDeliveryStreamInput { s.RedshiftDestinationConfiguration = v @@ -6858,6 +6962,154 @@ return s } +// The configuration for the Amazon MSK cluster to be used as the source for +// a delivery stream. +type MSKSourceConfiguration struct { + _ struct{} `type:"structure"` + + // The authentication configuration of the Amazon MSK cluster. + // + // AuthenticationConfiguration is a required field + AuthenticationConfiguration *AuthenticationConfiguration `type:"structure" required:"true"` + + // The ARN of the Amazon MSK cluster. + // + // MSKClusterARN is a required field + MSKClusterARN *string `min:"1" type:"string" required:"true"` + + // The topic name within the Amazon MSK cluster. + // + // TopicName is a required field + TopicName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MSKSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MSKSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MSKSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MSKSourceConfiguration"} + if s.AuthenticationConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationConfiguration")) + } + if s.MSKClusterARN == nil { + invalidParams.Add(request.NewErrParamRequired("MSKClusterARN")) + } + if s.MSKClusterARN != nil && len(*s.MSKClusterARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MSKClusterARN", 1)) + } + if s.TopicName == nil { + invalidParams.Add(request.NewErrParamRequired("TopicName")) + } + if s.TopicName != nil && len(*s.TopicName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TopicName", 1)) + } + if s.AuthenticationConfiguration != nil { + if err := s.AuthenticationConfiguration.Validate(); err != nil { + invalidParams.AddNested("AuthenticationConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. +func (s *MSKSourceConfiguration) SetAuthenticationConfiguration(v *AuthenticationConfiguration) *MSKSourceConfiguration { + s.AuthenticationConfiguration = v + return s +} + +// SetMSKClusterARN sets the MSKClusterARN field's value. +func (s *MSKSourceConfiguration) SetMSKClusterARN(v string) *MSKSourceConfiguration { + s.MSKClusterARN = &v + return s +} + +// SetTopicName sets the TopicName field's value. +func (s *MSKSourceConfiguration) SetTopicName(v string) *MSKSourceConfiguration { + s.TopicName = &v + return s +} + +// Details about the Amazon MSK cluster used as the source for a Kinesis Data +// Firehose delivery stream. +type MSKSourceDescription struct { + _ struct{} `type:"structure"` + + // The authentication configuration of the Amazon MSK cluster. + AuthenticationConfiguration *AuthenticationConfiguration `type:"structure"` + + // Kinesis Data Firehose starts retrieving records from the topic within the + // Amazon MSK cluster starting with this timestamp. + DeliveryStartTimestamp *time.Time `type:"timestamp"` + + // The ARN of the Amazon MSK cluster. + MSKClusterARN *string `min:"1" type:"string"` + + // The topic name within the Amazon MSK cluster. + TopicName *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MSKSourceDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MSKSourceDescription) GoString() string { + return s.String() +} + +// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. +func (s *MSKSourceDescription) SetAuthenticationConfiguration(v *AuthenticationConfiguration) *MSKSourceDescription { + s.AuthenticationConfiguration = v + return s +} + +// SetDeliveryStartTimestamp sets the DeliveryStartTimestamp field's value. +func (s *MSKSourceDescription) SetDeliveryStartTimestamp(v time.Time) *MSKSourceDescription { + s.DeliveryStartTimestamp = &v + return s +} + +// SetMSKClusterARN sets the MSKClusterARN field's value. +func (s *MSKSourceDescription) SetMSKClusterARN(v string) *MSKSourceDescription { + s.MSKClusterARN = &v + return s +} + +// SetTopicName sets the TopicName field's value. +func (s *MSKSourceDescription) SetTopicName(v string) *MSKSourceDescription { + s.TopicName = &v + return s +} + // The OpenX SerDe. Used by Kinesis Data Firehose for deserializing data, which // means converting it from the JSON format in preparation for serializing it // to the Parquet or ORC format. This is one of two deserializers you can choose, @@ -9160,6 +9412,10 @@ // The KinesisStreamSourceDescription value for the source Kinesis data stream. KinesisStreamSourceDescription *KinesisStreamSourceDescription `type:"structure"` + + // The configuration description for the Amazon MSK cluster to be used as the + // source for a delivery stream. + MSKSourceDescription *MSKSourceDescription `type:"structure"` } // String returns the string representation. @@ -9186,6 +9442,12 @@ return s } +// SetMSKSourceDescription sets the MSKSourceDescription field's value. +func (s *SourceDescription) SetMSKSourceDescription(v *MSKSourceDescription) *SourceDescription { + s.MSKSourceDescription = v + return s +} + // Describes the configuration of a destination in Splunk. type SplunkDestinationConfiguration struct { _ struct{} `type:"structure"` @@ -10605,6 +10867,22 @@ } const ( + // ConnectivityPublic is a Connectivity enum value + ConnectivityPublic = "PUBLIC" + + // ConnectivityPrivate is a Connectivity enum value + ConnectivityPrivate = "PRIVATE" +) + +// Connectivity_Values returns all elements of the Connectivity enum +func Connectivity_Values() []string { + return []string{ + ConnectivityPublic, + ConnectivityPrivate, + } +} + +const ( // ContentEncodingNone is a ContentEncoding enum value ContentEncodingNone = "NONE" @@ -10770,6 +11048,9 @@ // DeliveryStreamTypeKinesisStreamAsSource is a DeliveryStreamType enum value DeliveryStreamTypeKinesisStreamAsSource = "KinesisStreamAsSource" + + // DeliveryStreamTypeMskasSource is a DeliveryStreamType enum value + DeliveryStreamTypeMskasSource = "MSKAsSource" ) // DeliveryStreamType_Values returns all elements of the DeliveryStreamType enum @@ -10777,6 +11058,7 @@ return []string{ DeliveryStreamTypeDirectPut, DeliveryStreamTypeKinesisStreamAsSource, + DeliveryStreamTypeMskasSource, } } @@ -10983,6 +11265,9 @@ // ProcessorParameterNameDelimiter is a ProcessorParameterName enum value ProcessorParameterNameDelimiter = "Delimiter" + + // ProcessorParameterNameCompressionFormat is a ProcessorParameterName enum value + ProcessorParameterNameCompressionFormat = "CompressionFormat" ) // ProcessorParameterName_Values returns all elements of the ProcessorParameterName enum @@ -10997,6 +11282,7 @@ ProcessorParameterNameBufferIntervalInSeconds, ProcessorParameterNameSubRecordType, ProcessorParameterNameDelimiter, + ProcessorParameterNameCompressionFormat, } } @@ -11004,6 +11290,9 @@ // ProcessorTypeRecordDeAggregation is a ProcessorType enum value ProcessorTypeRecordDeAggregation = "RecordDeAggregation" + // ProcessorTypeDecompression is a ProcessorType enum value + ProcessorTypeDecompression = "Decompression" + // ProcessorTypeLambda is a ProcessorType enum value ProcessorTypeLambda = "Lambda" @@ -11018,6 +11307,7 @@ func ProcessorType_Values() []string { return []string{ ProcessorTypeRecordDeAggregation, + ProcessorTypeDecompression, ProcessorTypeLambda, ProcessorTypeMetadataExtraction, ProcessorTypeAppendDelimiterToRecord, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/fis/api.go golang-github-aws-aws-sdk-go-1.48.14/service/fis/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/fis/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/fis/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,7 +72,7 @@ // is running, the experiment is automatically stopped. You can define a // stop condition as a CloudWatch alarm. // -// For more information, see Experiment templates (https://docs.aws.amazon.com/fis/latest/userguide/experiment-templates.html) +// For more information, see experiment templates (https://docs.aws.amazon.com/fis/latest/userguide/experiment-templates.html) // in the Fault Injection Simulator User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -119,6 +119,98 @@ return out, req.Send() } +const opCreateTargetAccountConfiguration = "CreateTargetAccountConfiguration" + +// CreateTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateTargetAccountConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateTargetAccountConfiguration for more information on using the CreateTargetAccountConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateTargetAccountConfigurationRequest method. +// req, resp := client.CreateTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateTargetAccountConfiguration +func (c *FIS) CreateTargetAccountConfigurationRequest(input *CreateTargetAccountConfigurationInput) (req *request.Request, output *CreateTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opCreateTargetAccountConfiguration, + HTTPMethod: "POST", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &CreateTargetAccountConfigurationInput{} + } + + output = &CreateTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Creates a target account configuration for the experiment template. A target +// account configuration is required when accountTargeting of experimentOptions +// is set to multi-account. For more information, see experiment options (https://docs.aws.amazon.com/fis/latest/userguide/experiment-options.html) +// in the Fault Injection Simulator User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation CreateTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ConflictException +// The request could not be processed because of a conflict. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ServiceQuotaExceededException +// You have exceeded your service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateTargetAccountConfiguration +func (c *FIS) CreateTargetAccountConfiguration(input *CreateTargetAccountConfigurationInput) (*CreateTargetAccountConfigurationOutput, error) { + req, out := c.CreateTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// CreateTargetAccountConfigurationWithContext is the same as CreateTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTargetAccountConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) CreateTargetAccountConfigurationWithContext(ctx aws.Context, input *CreateTargetAccountConfigurationInput, opts ...request.Option) (*CreateTargetAccountConfigurationOutput, error) { + req, out := c.CreateTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteExperimentTemplate = "DeleteExperimentTemplate" // DeleteExperimentTemplateRequest generates a "aws/request.Request" representing the @@ -202,6 +294,89 @@ return out, req.Send() } +const opDeleteTargetAccountConfiguration = "DeleteTargetAccountConfiguration" + +// DeleteTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTargetAccountConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteTargetAccountConfiguration for more information on using the DeleteTargetAccountConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteTargetAccountConfigurationRequest method. +// req, resp := client.DeleteTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/DeleteTargetAccountConfiguration +func (c *FIS) DeleteTargetAccountConfigurationRequest(input *DeleteTargetAccountConfigurationInput) (req *request.Request, output *DeleteTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteTargetAccountConfiguration, + HTTPMethod: "DELETE", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &DeleteTargetAccountConfigurationInput{} + } + + output = &DeleteTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Deletes the specified target account configuration of the experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation DeleteTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/DeleteTargetAccountConfiguration +func (c *FIS) DeleteTargetAccountConfiguration(input *DeleteTargetAccountConfigurationInput) (*DeleteTargetAccountConfigurationOutput, error) { + req, out := c.DeleteTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// DeleteTargetAccountConfigurationWithContext is the same as DeleteTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTargetAccountConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) DeleteTargetAccountConfigurationWithContext(ctx aws.Context, input *DeleteTargetAccountConfigurationInput, opts ...request.Option) (*DeleteTargetAccountConfigurationOutput, error) { + req, out := c.DeleteTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAction = "GetAction" // GetActionRequest generates a "aws/request.Request" representing the @@ -368,6 +543,90 @@ return out, req.Send() } +const opGetExperimentTargetAccountConfiguration = "GetExperimentTargetAccountConfiguration" + +// GetExperimentTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetExperimentTargetAccountConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetExperimentTargetAccountConfiguration for more information on using the GetExperimentTargetAccountConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetExperimentTargetAccountConfigurationRequest method. +// req, resp := client.GetExperimentTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentTargetAccountConfiguration +func (c *FIS) GetExperimentTargetAccountConfigurationRequest(input *GetExperimentTargetAccountConfigurationInput) (req *request.Request, output *GetExperimentTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opGetExperimentTargetAccountConfiguration, + HTTPMethod: "GET", + HTTPPath: "/experiments/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &GetExperimentTargetAccountConfigurationInput{} + } + + output = &GetExperimentTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetExperimentTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Gets information about the specified target account configuration of the +// experiment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation GetExperimentTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentTargetAccountConfiguration +func (c *FIS) GetExperimentTargetAccountConfiguration(input *GetExperimentTargetAccountConfigurationInput) (*GetExperimentTargetAccountConfigurationOutput, error) { + req, out := c.GetExperimentTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// GetExperimentTargetAccountConfigurationWithContext is the same as GetExperimentTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetExperimentTargetAccountConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) GetExperimentTargetAccountConfigurationWithContext(ctx aws.Context, input *GetExperimentTargetAccountConfigurationInput, opts ...request.Option) (*GetExperimentTargetAccountConfigurationOutput, error) { + req, out := c.GetExperimentTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetExperimentTemplate = "GetExperimentTemplate" // GetExperimentTemplateRequest generates a "aws/request.Request" representing the @@ -451,6 +710,90 @@ return out, req.Send() } +const opGetTargetAccountConfiguration = "GetTargetAccountConfiguration" + +// GetTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetTargetAccountConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetTargetAccountConfiguration for more information on using the GetTargetAccountConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetTargetAccountConfigurationRequest method. +// req, resp := client.GetTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetTargetAccountConfiguration +func (c *FIS) GetTargetAccountConfigurationRequest(input *GetTargetAccountConfigurationInput) (req *request.Request, output *GetTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opGetTargetAccountConfiguration, + HTTPMethod: "GET", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &GetTargetAccountConfigurationInput{} + } + + output = &GetTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Gets information about the specified target account configuration of the +// experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation GetTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetTargetAccountConfiguration +func (c *FIS) GetTargetAccountConfiguration(input *GetTargetAccountConfigurationInput) (*GetTargetAccountConfigurationOutput, error) { + req, out := c.GetTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// GetTargetAccountConfigurationWithContext is the same as GetTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetTargetAccountConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) GetTargetAccountConfigurationWithContext(ctx aws.Context, input *GetTargetAccountConfigurationInput, opts ...request.Option) (*GetTargetAccountConfigurationOutput, error) { + req, out := c.GetTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetTargetResourceType = "GetTargetResourceType" // GetTargetResourceTypeRequest generates a "aws/request.Request" representing the @@ -670,6 +1013,229 @@ return p.Err() } +const opListExperimentResolvedTargets = "ListExperimentResolvedTargets" + +// ListExperimentResolvedTargetsRequest generates a "aws/request.Request" representing the +// client's request for the ListExperimentResolvedTargets operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListExperimentResolvedTargets for more information on using the ListExperimentResolvedTargets +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListExperimentResolvedTargetsRequest method. +// req, resp := client.ListExperimentResolvedTargetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentResolvedTargets +func (c *FIS) ListExperimentResolvedTargetsRequest(input *ListExperimentResolvedTargetsInput) (req *request.Request, output *ListExperimentResolvedTargetsOutput) { + op := &request.Operation{ + Name: opListExperimentResolvedTargets, + HTTPMethod: "GET", + HTTPPath: "/experiments/{id}/resolvedTargets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListExperimentResolvedTargetsInput{} + } + + output = &ListExperimentResolvedTargetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExperimentResolvedTargets API operation for AWS Fault Injection Simulator. +// +// Lists the resolved targets information of the specified experiment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation ListExperimentResolvedTargets for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentResolvedTargets +func (c *FIS) ListExperimentResolvedTargets(input *ListExperimentResolvedTargetsInput) (*ListExperimentResolvedTargetsOutput, error) { + req, out := c.ListExperimentResolvedTargetsRequest(input) + return out, req.Send() +} + +// ListExperimentResolvedTargetsWithContext is the same as ListExperimentResolvedTargets with the addition of +// the ability to pass a context and additional request options. +// +// See ListExperimentResolvedTargets for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) ListExperimentResolvedTargetsWithContext(ctx aws.Context, input *ListExperimentResolvedTargetsInput, opts ...request.Option) (*ListExperimentResolvedTargetsOutput, error) { + req, out := c.ListExperimentResolvedTargetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListExperimentResolvedTargetsPages iterates over the pages of a ListExperimentResolvedTargets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListExperimentResolvedTargets method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListExperimentResolvedTargets operation. +// pageNum := 0 +// err := client.ListExperimentResolvedTargetsPages(params, +// func(page *fis.ListExperimentResolvedTargetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *FIS) ListExperimentResolvedTargetsPages(input *ListExperimentResolvedTargetsInput, fn func(*ListExperimentResolvedTargetsOutput, bool) bool) error { + return c.ListExperimentResolvedTargetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListExperimentResolvedTargetsPagesWithContext same as ListExperimentResolvedTargetsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) ListExperimentResolvedTargetsPagesWithContext(ctx aws.Context, input *ListExperimentResolvedTargetsInput, fn func(*ListExperimentResolvedTargetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListExperimentResolvedTargetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListExperimentResolvedTargetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListExperimentResolvedTargetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListExperimentTargetAccountConfigurations = "ListExperimentTargetAccountConfigurations" + +// ListExperimentTargetAccountConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListExperimentTargetAccountConfigurations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListExperimentTargetAccountConfigurations for more information on using the ListExperimentTargetAccountConfigurations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListExperimentTargetAccountConfigurationsRequest method. +// req, resp := client.ListExperimentTargetAccountConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentTargetAccountConfigurations +func (c *FIS) ListExperimentTargetAccountConfigurationsRequest(input *ListExperimentTargetAccountConfigurationsInput) (req *request.Request, output *ListExperimentTargetAccountConfigurationsOutput) { + op := &request.Operation{ + Name: opListExperimentTargetAccountConfigurations, + HTTPMethod: "GET", + HTTPPath: "/experiments/{id}/targetAccountConfigurations", + } + + if input == nil { + input = &ListExperimentTargetAccountConfigurationsInput{} + } + + output = &ListExperimentTargetAccountConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExperimentTargetAccountConfigurations API operation for AWS Fault Injection Simulator. +// +// Lists the target account configurations of the specified experiment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation ListExperimentTargetAccountConfigurations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentTargetAccountConfigurations +func (c *FIS) ListExperimentTargetAccountConfigurations(input *ListExperimentTargetAccountConfigurationsInput) (*ListExperimentTargetAccountConfigurationsOutput, error) { + req, out := c.ListExperimentTargetAccountConfigurationsRequest(input) + return out, req.Send() +} + +// ListExperimentTargetAccountConfigurationsWithContext is the same as ListExperimentTargetAccountConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListExperimentTargetAccountConfigurations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) ListExperimentTargetAccountConfigurationsWithContext(ctx aws.Context, input *ListExperimentTargetAccountConfigurationsInput, opts ...request.Option) (*ListExperimentTargetAccountConfigurationsOutput, error) { + req, out := c.ListExperimentTargetAccountConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListExperimentTemplates = "ListExperimentTemplates" // ListExperimentTemplatesRequest generates a "aws/request.Request" representing the @@ -1015,6 +1581,146 @@ return out, req.Send() } +const opListTargetAccountConfigurations = "ListTargetAccountConfigurations" + +// ListTargetAccountConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListTargetAccountConfigurations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTargetAccountConfigurations for more information on using the ListTargetAccountConfigurations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTargetAccountConfigurationsRequest method. +// req, resp := client.ListTargetAccountConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetAccountConfigurations +func (c *FIS) ListTargetAccountConfigurationsRequest(input *ListTargetAccountConfigurationsInput) (req *request.Request, output *ListTargetAccountConfigurationsOutput) { + op := &request.Operation{ + Name: opListTargetAccountConfigurations, + HTTPMethod: "GET", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTargetAccountConfigurationsInput{} + } + + output = &ListTargetAccountConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTargetAccountConfigurations API operation for AWS Fault Injection Simulator. +// +// Lists the target account configurations of the specified experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation ListTargetAccountConfigurations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetAccountConfigurations +func (c *FIS) ListTargetAccountConfigurations(input *ListTargetAccountConfigurationsInput) (*ListTargetAccountConfigurationsOutput, error) { + req, out := c.ListTargetAccountConfigurationsRequest(input) + return out, req.Send() +} + +// ListTargetAccountConfigurationsWithContext is the same as ListTargetAccountConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListTargetAccountConfigurations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) ListTargetAccountConfigurationsWithContext(ctx aws.Context, input *ListTargetAccountConfigurationsInput, opts ...request.Option) (*ListTargetAccountConfigurationsOutput, error) { + req, out := c.ListTargetAccountConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTargetAccountConfigurationsPages iterates over the pages of a ListTargetAccountConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTargetAccountConfigurations method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTargetAccountConfigurations operation. +// pageNum := 0 +// err := client.ListTargetAccountConfigurationsPages(params, +// func(page *fis.ListTargetAccountConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *FIS) ListTargetAccountConfigurationsPages(input *ListTargetAccountConfigurationsInput, fn func(*ListTargetAccountConfigurationsOutput, bool) bool) error { + return c.ListTargetAccountConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTargetAccountConfigurationsPagesWithContext same as ListTargetAccountConfigurationsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) ListTargetAccountConfigurationsPagesWithContext(ctx aws.Context, input *ListTargetAccountConfigurationsInput, fn func(*ListTargetAccountConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTargetAccountConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTargetAccountConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTargetAccountConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTargetResourceTypes = "ListTargetResourceTypes" // ListTargetResourceTypesRequest generates a "aws/request.Request" representing the @@ -1557,6 +2263,89 @@ return out, req.Send() } +const opUpdateTargetAccountConfiguration = "UpdateTargetAccountConfiguration" + +// UpdateTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTargetAccountConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateTargetAccountConfiguration for more information on using the UpdateTargetAccountConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateTargetAccountConfigurationRequest method. +// req, resp := client.UpdateTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateTargetAccountConfiguration +func (c *FIS) UpdateTargetAccountConfigurationRequest(input *UpdateTargetAccountConfigurationInput) (req *request.Request, output *UpdateTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateTargetAccountConfiguration, + HTTPMethod: "PATCH", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &UpdateTargetAccountConfigurationInput{} + } + + output = &UpdateTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Updates the target account configuration for the specified experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation UpdateTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateTargetAccountConfiguration +func (c *FIS) UpdateTargetAccountConfiguration(input *UpdateTargetAccountConfigurationInput) (*UpdateTargetAccountConfigurationOutput, error) { + req, out := c.UpdateTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// UpdateTargetAccountConfigurationWithContext is the same as UpdateTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTargetAccountConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *FIS) UpdateTargetAccountConfigurationWithContext(ctx aws.Context, input *UpdateTargetAccountConfigurationInput, opts ...request.Option) (*UpdateTargetAccountConfigurationOutput, error) { + req, out := c.UpdateTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // Describes an action. For more information, see FIS actions (https://docs.aws.amazon.com/fis/latest/userguide/fis-actions-reference.html) // in the Fault Injection Simulator User Guide. type Action struct { @@ -1909,6 +2698,47 @@ return s } +// Specifies experiment options for an experiment template. +type CreateExperimentTemplateExperimentOptionsInput_ struct { + _ struct{} `type:"structure"` + + // Specifies the account targeting setting for experiment options. + AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + + // Specifies the empty target resolution mode for experiment options. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateExperimentTemplateExperimentOptionsInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateExperimentTemplateExperimentOptionsInput_) GoString() string { + return s.String() +} + +// SetAccountTargeting sets the AccountTargeting field's value. +func (s *CreateExperimentTemplateExperimentOptionsInput_) SetAccountTargeting(v string) *CreateExperimentTemplateExperimentOptionsInput_ { + s.AccountTargeting = &v + return s +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *CreateExperimentTemplateExperimentOptionsInput_) SetEmptyTargetResolutionMode(v string) *CreateExperimentTemplateExperimentOptionsInput_ { + s.EmptyTargetResolutionMode = &v + return s +} + type CreateExperimentTemplateInput struct { _ struct{} `type:"structure"` @@ -1926,6 +2756,9 @@ // Description is a required field Description *string `locationName:"description" type:"string" required:"true"` + // The experiment options for the experiment template. + ExperimentOptions *CreateExperimentTemplateExperimentOptionsInput_ `locationName:"experimentOptions" type:"structure"` + // The configuration for experiment logging. LogConfiguration *CreateExperimentTemplateLogConfigurationInput_ `locationName:"logConfiguration" type:"structure"` @@ -2046,6 +2879,12 @@ return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *CreateExperimentTemplateInput) SetExperimentOptions(v *CreateExperimentTemplateExperimentOptionsInput_) *CreateExperimentTemplateInput { + s.ExperimentOptions = v + return s +} + // SetLogConfiguration sets the LogConfiguration field's value. func (s *CreateExperimentTemplateInput) SetLogConfiguration(v *CreateExperimentTemplateLogConfigurationInput_) *CreateExperimentTemplateInput { s.LogConfiguration = v @@ -2369,6 +3208,142 @@ return s } +type CreateTargetAccountConfigurationInput struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The experiment template ID. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTargetAccountConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateTargetAccountConfigurationInput) SetAccountId(v string) *CreateTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTargetAccountConfigurationInput) SetClientToken(v string) *CreateTargetAccountConfigurationInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateTargetAccountConfigurationInput) SetDescription(v string) *CreateTargetAccountConfigurationInput { + s.Description = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *CreateTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *CreateTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateTargetAccountConfigurationInput) SetRoleArn(v string) *CreateTargetAccountConfigurationInput { + s.RoleArn = &v + return s +} + +type CreateTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTargetAccountConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *CreateTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *CreateTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + type DeleteExperimentTemplateInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -2449,6 +3424,103 @@ return s } +type DeleteTargetAccountConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTargetAccountConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteTargetAccountConfigurationInput) SetAccountId(v string) *DeleteTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *DeleteTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *DeleteTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +type DeleteTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTargetAccountConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *DeleteTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *DeleteTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + // Describes an experiment. type Experiment struct { _ struct{} `type:"structure"` @@ -2462,6 +3534,9 @@ // The time that the experiment ended. EndTime *time.Time `locationName:"endTime" type:"timestamp"` + // The experiment options for the experiment. + ExperimentOptions *ExperimentOptions `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. ExperimentTemplateId *string `locationName:"experimentTemplateId" type:"string"` @@ -2487,6 +3562,9 @@ // The tags for the experiment. Tags map[string]*string `locationName:"tags" type:"map"` + // The count of target account configurations for the experiment. + TargetAccountConfigurationsCount *int64 `locationName:"targetAccountConfigurationsCount" type:"long"` + // The targets for the experiment. Targets map[string]*ExperimentTarget `locationName:"targets" type:"map"` } @@ -2527,6 +3605,12 @@ return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *Experiment) SetExperimentOptions(v *ExperimentOptions) *Experiment { + s.ExperimentOptions = v + return s +} + // SetExperimentTemplateId sets the ExperimentTemplateId field's value. func (s *Experiment) SetExperimentTemplateId(v string) *Experiment { s.ExperimentTemplateId = &v @@ -2575,6 +3659,12 @@ return s } +// SetTargetAccountConfigurationsCount sets the TargetAccountConfigurationsCount field's value. +func (s *Experiment) SetTargetAccountConfigurationsCount(v int64) *Experiment { + s.TargetAccountConfigurationsCount = &v + return s +} + // SetTargets sets the Targets field's value. func (s *Experiment) SetTargets(v map[string]*ExperimentTarget) *Experiment { s.Targets = v @@ -2800,6 +3890,47 @@ return s } +// Describes the options for an experiment. +type ExperimentOptions struct { + _ struct{} `type:"structure"` + + // The account targeting setting for an experiment. + AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + + // The empty target resolution mode for an experiment. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentOptions) GoString() string { + return s.String() +} + +// SetAccountTargeting sets the AccountTargeting field's value. +func (s *ExperimentOptions) SetAccountTargeting(v string) *ExperimentOptions { + s.AccountTargeting = &v + return s +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *ExperimentOptions) SetEmptyTargetResolutionMode(v string) *ExperimentOptions { + s.EmptyTargetResolutionMode = &v + return s +} + // Describes the configuration for experiment logging to Amazon S3. type ExperimentS3LogConfiguration struct { _ struct{} `type:"structure"` @@ -3068,6 +4199,106 @@ return s } +// Describes a target account configuration for an experiment. +type ExperimentTargetAccountConfiguration struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentTargetAccountConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentTargetAccountConfiguration) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *ExperimentTargetAccountConfiguration) SetAccountId(v string) *ExperimentTargetAccountConfiguration { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ExperimentTargetAccountConfiguration) SetDescription(v string) *ExperimentTargetAccountConfiguration { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ExperimentTargetAccountConfiguration) SetRoleArn(v string) *ExperimentTargetAccountConfiguration { + s.RoleArn = &v + return s +} + +// Provides a summary of a target account configuration. +type ExperimentTargetAccountConfigurationSummary struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentTargetAccountConfigurationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentTargetAccountConfigurationSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *ExperimentTargetAccountConfigurationSummary) SetAccountId(v string) *ExperimentTargetAccountConfigurationSummary { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ExperimentTargetAccountConfigurationSummary) SetDescription(v string) *ExperimentTargetAccountConfigurationSummary { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ExperimentTargetAccountConfigurationSummary) SetRoleArn(v string) *ExperimentTargetAccountConfigurationSummary { + s.RoleArn = &v + return s +} + // Describes a filter used for the target resources in an experiment. type ExperimentTargetFilter struct { _ struct{} `type:"structure"` @@ -3122,6 +4353,9 @@ // The description for the experiment template. Description *string `locationName:"description" type:"string"` + // The experiment options for an experiment template. + ExperimentOptions *ExperimentTemplateExperimentOptions `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. Id *string `locationName:"id" type:"string"` @@ -3140,6 +4374,9 @@ // The tags for the experiment template. Tags map[string]*string `locationName:"tags" type:"map"` + // The count of target account configurations for the experiment template. + TargetAccountConfigurationsCount *int64 `locationName:"targetAccountConfigurationsCount" type:"long"` + // The targets for the experiment. Targets map[string]*ExperimentTemplateTarget `locationName:"targets" type:"map"` } @@ -3180,6 +4417,12 @@ return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *ExperimentTemplate) SetExperimentOptions(v *ExperimentTemplateExperimentOptions) *ExperimentTemplate { + s.ExperimentOptions = v + return s +} + // SetId sets the Id field's value. func (s *ExperimentTemplate) SetId(v string) *ExperimentTemplate { s.Id = &v @@ -3216,6 +4459,12 @@ return s } +// SetTargetAccountConfigurationsCount sets the TargetAccountConfigurationsCount field's value. +func (s *ExperimentTemplate) SetTargetAccountConfigurationsCount(v int64) *ExperimentTemplate { + s.TargetAccountConfigurationsCount = &v + return s +} + // SetTargets sets the Targets field's value. func (s *ExperimentTemplate) SetTargets(v map[string]*ExperimentTemplateTarget) *ExperimentTemplate { s.Targets = v @@ -3374,6 +4623,47 @@ return s } +// Describes the experiment options for an experiment template. +type ExperimentTemplateExperimentOptions struct { + _ struct{} `type:"structure"` + + // The account targeting setting for an experiment template. + AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + + // The empty target resolution mode for an experiment template. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentTemplateExperimentOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExperimentTemplateExperimentOptions) GoString() string { + return s.String() +} + +// SetAccountTargeting sets the AccountTargeting field's value. +func (s *ExperimentTemplateExperimentOptions) SetAccountTargeting(v string) *ExperimentTemplateExperimentOptions { + s.AccountTargeting = &v + return s +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *ExperimentTemplateExperimentOptions) SetEmptyTargetResolutionMode(v string) *ExperimentTemplateExperimentOptions { + s.EmptyTargetResolutionMode = &v + return s +} + // Describes the configuration for experiment logging. type ExperimentTemplateLogConfiguration struct { _ struct{} `type:"structure"` @@ -3978,6 +5268,103 @@ return s } +type GetExperimentTargetAccountConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The ID of the experiment. + // + // ExperimentId is a required field + ExperimentId *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExperimentTargetAccountConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExperimentTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetExperimentTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExperimentTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentId")) + } + if s.ExperimentId != nil && len(*s.ExperimentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetExperimentTargetAccountConfigurationInput) SetAccountId(v string) *GetExperimentTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetExperimentId sets the ExperimentId field's value. +func (s *GetExperimentTargetAccountConfigurationInput) SetExperimentId(v string) *GetExperimentTargetAccountConfigurationInput { + s.ExperimentId = &v + return s +} + +type GetExperimentTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *ExperimentTargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExperimentTargetAccountConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetExperimentTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *GetExperimentTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *ExperimentTargetAccountConfiguration) *GetExperimentTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + type GetExperimentTemplateInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4058,6 +5445,103 @@ return s } +type GetTargetAccountConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTargetAccountConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetTargetAccountConfigurationInput) SetAccountId(v string) *GetTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *GetTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *GetTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +type GetTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTargetAccountConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *GetTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *GetTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + type GetTargetResourceTypeInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4236,6 +5720,232 @@ return s } +type ListExperimentResolvedTargetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment. + // + // ExperimentId is a required field + ExperimentId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The name of the target. + TargetName *string `location:"querystring" locationName:"targetName" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentResolvedTargetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentResolvedTargetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExperimentResolvedTargetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExperimentResolvedTargetsInput"} + if s.ExperimentId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentId")) + } + if s.ExperimentId != nil && len(*s.ExperimentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExperimentId sets the ExperimentId field's value. +func (s *ListExperimentResolvedTargetsInput) SetExperimentId(v string) *ListExperimentResolvedTargetsInput { + s.ExperimentId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListExperimentResolvedTargetsInput) SetMaxResults(v int64) *ListExperimentResolvedTargetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentResolvedTargetsInput) SetNextToken(v string) *ListExperimentResolvedTargetsInput { + s.NextToken = &v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *ListExperimentResolvedTargetsInput) SetTargetName(v string) *ListExperimentResolvedTargetsInput { + s.TargetName = &v + return s +} + +type ListExperimentResolvedTargetsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The resolved targets. + ResolvedTargets []*ResolvedTarget `locationName:"resolvedTargets" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentResolvedTargetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentResolvedTargetsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentResolvedTargetsOutput) SetNextToken(v string) *ListExperimentResolvedTargetsOutput { + s.NextToken = &v + return s +} + +// SetResolvedTargets sets the ResolvedTargets field's value. +func (s *ListExperimentResolvedTargetsOutput) SetResolvedTargets(v []*ResolvedTarget) *ListExperimentResolvedTargetsOutput { + s.ResolvedTargets = v + return s +} + +type ListExperimentTargetAccountConfigurationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment. + // + // ExperimentId is a required field + ExperimentId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentTargetAccountConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentTargetAccountConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExperimentTargetAccountConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExperimentTargetAccountConfigurationsInput"} + if s.ExperimentId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentId")) + } + if s.ExperimentId != nil && len(*s.ExperimentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentId", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExperimentId sets the ExperimentId field's value. +func (s *ListExperimentTargetAccountConfigurationsInput) SetExperimentId(v string) *ListExperimentTargetAccountConfigurationsInput { + s.ExperimentId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentTargetAccountConfigurationsInput) SetNextToken(v string) *ListExperimentTargetAccountConfigurationsInput { + s.NextToken = &v + return s +} + +type ListExperimentTargetAccountConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The target account configurations. + TargetAccountConfigurations []*ExperimentTargetAccountConfigurationSummary `locationName:"targetAccountConfigurations" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentTargetAccountConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentTargetAccountConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentTargetAccountConfigurationsOutput) SetNextToken(v string) *ListExperimentTargetAccountConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetTargetAccountConfigurations sets the TargetAccountConfigurations field's value. +func (s *ListExperimentTargetAccountConfigurationsOutput) SetTargetAccountConfigurations(v []*ExperimentTargetAccountConfigurationSummary) *ListExperimentTargetAccountConfigurationsOutput { + s.TargetAccountConfigurations = v + return s +} + type ListExperimentTemplatesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4512,6 +6222,121 @@ return s } +type ListTargetAccountConfigurationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetAccountConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetAccountConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTargetAccountConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTargetAccountConfigurationsInput"} + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *ListTargetAccountConfigurationsInput) SetExperimentTemplateId(v string) *ListTargetAccountConfigurationsInput { + s.ExperimentTemplateId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTargetAccountConfigurationsInput) SetMaxResults(v int64) *ListTargetAccountConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTargetAccountConfigurationsInput) SetNextToken(v string) *ListTargetAccountConfigurationsInput { + s.NextToken = &v + return s +} + +type ListTargetAccountConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The target account configurations. + TargetAccountConfigurations []*TargetAccountConfigurationSummary `locationName:"targetAccountConfigurations" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetAccountConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetAccountConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTargetAccountConfigurationsOutput) SetNextToken(v string) *ListTargetAccountConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetTargetAccountConfigurations sets the TargetAccountConfigurations field's value. +func (s *ListTargetAccountConfigurationsOutput) SetTargetAccountConfigurations(v []*TargetAccountConfigurationSummary) *ListTargetAccountConfigurationsOutput { + s.TargetAccountConfigurations = v + return s +} + type ListTargetResourceTypesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4610,6 +6435,56 @@ return s } +// Describes a resolved target. +type ResolvedTarget struct { + _ struct{} `type:"structure"` + + // The resource type of the target. + ResourceType *string `locationName:"resourceType" type:"string"` + + // Information about the target. + TargetInformation map[string]*string `locationName:"targetInformation" type:"map"` + + // The name of the target. + TargetName *string `locationName:"targetName" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResolvedTarget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResolvedTarget) GoString() string { + return s.String() +} + +// SetResourceType sets the ResourceType field's value. +func (s *ResolvedTarget) SetResourceType(v string) *ResolvedTarget { + s.ResourceType = &v + return s +} + +// SetTargetInformation sets the TargetInformation field's value. +func (s *ResolvedTarget) SetTargetInformation(v map[string]*string) *ResolvedTarget { + s.TargetInformation = v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *ResolvedTarget) SetTargetName(v string) *ResolvedTarget { + s.TargetName = &v + return s +} + // The specified resource cannot be found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -5002,6 +6877,106 @@ return s.String() } +// Describes a target account configuration. +type TargetAccountConfiguration struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetAccountConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetAccountConfiguration) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *TargetAccountConfiguration) SetAccountId(v string) *TargetAccountConfiguration { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *TargetAccountConfiguration) SetDescription(v string) *TargetAccountConfiguration { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *TargetAccountConfiguration) SetRoleArn(v string) *TargetAccountConfiguration { + s.RoleArn = &v + return s +} + +// Provides a summary of a target account configuration. +type TargetAccountConfigurationSummary struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetAccountConfigurationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetAccountConfigurationSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *TargetAccountConfigurationSummary) SetAccountId(v string) *TargetAccountConfigurationSummary { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *TargetAccountConfigurationSummary) SetDescription(v string) *TargetAccountConfigurationSummary { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *TargetAccountConfigurationSummary) SetRoleArn(v string) *TargetAccountConfigurationSummary { + s.RoleArn = &v + return s +} + // Describes a resource type. type TargetResourceType struct { _ struct{} `type:"structure"` @@ -5284,6 +7259,38 @@ return s } +// Specifies an experiment option for an experiment template. +type UpdateExperimentTemplateExperimentOptionsInput_ struct { + _ struct{} `type:"structure"` + + // The empty target resolution mode of the experiment template. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExperimentTemplateExperimentOptionsInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateExperimentTemplateExperimentOptionsInput_) GoString() string { + return s.String() +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *UpdateExperimentTemplateExperimentOptionsInput_) SetEmptyTargetResolutionMode(v string) *UpdateExperimentTemplateExperimentOptionsInput_ { + s.EmptyTargetResolutionMode = &v + return s +} + type UpdateExperimentTemplateInput struct { _ struct{} `type:"structure"` @@ -5293,6 +7300,9 @@ // A description for the template. Description *string `locationName:"description" type:"string"` + // The experiment options for the experiment template. + ExperimentOptions *UpdateExperimentTemplateExperimentOptionsInput_ `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. // // Id is a required field @@ -5386,6 +7396,12 @@ return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *UpdateExperimentTemplateInput) SetExperimentOptions(v *UpdateExperimentTemplateExperimentOptionsInput_) *UpdateExperimentTemplateInput { + s.ExperimentOptions = v + return s +} + // SetId sets the Id field's value. func (s *UpdateExperimentTemplateInput) SetId(v string) *UpdateExperimentTemplateInput { s.Id = &v @@ -5688,6 +7704,124 @@ return s } +type UpdateTargetAccountConfigurationInput struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTargetAccountConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *UpdateTargetAccountConfigurationInput) SetAccountId(v string) *UpdateTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateTargetAccountConfigurationInput) SetDescription(v string) *UpdateTargetAccountConfigurationInput { + s.Description = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *UpdateTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *UpdateTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateTargetAccountConfigurationInput) SetRoleArn(v string) *UpdateTargetAccountConfigurationInput { + s.RoleArn = &v + return s +} + +type UpdateTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTargetAccountConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *UpdateTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *UpdateTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + // The specified input is not valid, or fails to satisfy the constraints for // the request. type ValidationException struct { @@ -5754,6 +7888,38 @@ } const ( + // AccountTargetingSingleAccount is a AccountTargeting enum value + AccountTargetingSingleAccount = "single-account" + + // AccountTargetingMultiAccount is a AccountTargeting enum value + AccountTargetingMultiAccount = "multi-account" +) + +// AccountTargeting_Values returns all elements of the AccountTargeting enum +func AccountTargeting_Values() []string { + return []string{ + AccountTargetingSingleAccount, + AccountTargetingMultiAccount, + } +} + +const ( + // EmptyTargetResolutionModeFail is a EmptyTargetResolutionMode enum value + EmptyTargetResolutionModeFail = "fail" + + // EmptyTargetResolutionModeSkip is a EmptyTargetResolutionMode enum value + EmptyTargetResolutionModeSkip = "skip" +) + +// EmptyTargetResolutionMode_Values returns all elements of the EmptyTargetResolutionMode enum +func EmptyTargetResolutionMode_Values() []string { + return []string{ + EmptyTargetResolutionModeFail, + EmptyTargetResolutionModeSkip, + } +} + +const ( // ExperimentActionStatusPending is a ExperimentActionStatus enum value ExperimentActionStatusPending = "pending" @@ -5777,6 +7943,9 @@ // ExperimentActionStatusFailed is a ExperimentActionStatus enum value ExperimentActionStatusFailed = "failed" + + // ExperimentActionStatusSkipped is a ExperimentActionStatus enum value + ExperimentActionStatusSkipped = "skipped" ) // ExperimentActionStatus_Values returns all elements of the ExperimentActionStatus enum @@ -5790,6 +7959,7 @@ ExperimentActionStatusStopping, ExperimentActionStatusStopped, ExperimentActionStatusFailed, + ExperimentActionStatusSkipped, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/fis/fisiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/fis/fisiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/fis/fisiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/fis/fisiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,10 +64,18 @@ CreateExperimentTemplateWithContext(aws.Context, *fis.CreateExperimentTemplateInput, ...request.Option) (*fis.CreateExperimentTemplateOutput, error) CreateExperimentTemplateRequest(*fis.CreateExperimentTemplateInput) (*request.Request, *fis.CreateExperimentTemplateOutput) + CreateTargetAccountConfiguration(*fis.CreateTargetAccountConfigurationInput) (*fis.CreateTargetAccountConfigurationOutput, error) + CreateTargetAccountConfigurationWithContext(aws.Context, *fis.CreateTargetAccountConfigurationInput, ...request.Option) (*fis.CreateTargetAccountConfigurationOutput, error) + CreateTargetAccountConfigurationRequest(*fis.CreateTargetAccountConfigurationInput) (*request.Request, *fis.CreateTargetAccountConfigurationOutput) + DeleteExperimentTemplate(*fis.DeleteExperimentTemplateInput) (*fis.DeleteExperimentTemplateOutput, error) DeleteExperimentTemplateWithContext(aws.Context, *fis.DeleteExperimentTemplateInput, ...request.Option) (*fis.DeleteExperimentTemplateOutput, error) DeleteExperimentTemplateRequest(*fis.DeleteExperimentTemplateInput) (*request.Request, *fis.DeleteExperimentTemplateOutput) + DeleteTargetAccountConfiguration(*fis.DeleteTargetAccountConfigurationInput) (*fis.DeleteTargetAccountConfigurationOutput, error) + DeleteTargetAccountConfigurationWithContext(aws.Context, *fis.DeleteTargetAccountConfigurationInput, ...request.Option) (*fis.DeleteTargetAccountConfigurationOutput, error) + DeleteTargetAccountConfigurationRequest(*fis.DeleteTargetAccountConfigurationInput) (*request.Request, *fis.DeleteTargetAccountConfigurationOutput) + GetAction(*fis.GetActionInput) (*fis.GetActionOutput, error) GetActionWithContext(aws.Context, *fis.GetActionInput, ...request.Option) (*fis.GetActionOutput, error) GetActionRequest(*fis.GetActionInput) (*request.Request, *fis.GetActionOutput) @@ -76,10 +84,18 @@ GetExperimentWithContext(aws.Context, *fis.GetExperimentInput, ...request.Option) (*fis.GetExperimentOutput, error) GetExperimentRequest(*fis.GetExperimentInput) (*request.Request, *fis.GetExperimentOutput) + GetExperimentTargetAccountConfiguration(*fis.GetExperimentTargetAccountConfigurationInput) (*fis.GetExperimentTargetAccountConfigurationOutput, error) + GetExperimentTargetAccountConfigurationWithContext(aws.Context, *fis.GetExperimentTargetAccountConfigurationInput, ...request.Option) (*fis.GetExperimentTargetAccountConfigurationOutput, error) + GetExperimentTargetAccountConfigurationRequest(*fis.GetExperimentTargetAccountConfigurationInput) (*request.Request, *fis.GetExperimentTargetAccountConfigurationOutput) + GetExperimentTemplate(*fis.GetExperimentTemplateInput) (*fis.GetExperimentTemplateOutput, error) GetExperimentTemplateWithContext(aws.Context, *fis.GetExperimentTemplateInput, ...request.Option) (*fis.GetExperimentTemplateOutput, error) GetExperimentTemplateRequest(*fis.GetExperimentTemplateInput) (*request.Request, *fis.GetExperimentTemplateOutput) + GetTargetAccountConfiguration(*fis.GetTargetAccountConfigurationInput) (*fis.GetTargetAccountConfigurationOutput, error) + GetTargetAccountConfigurationWithContext(aws.Context, *fis.GetTargetAccountConfigurationInput, ...request.Option) (*fis.GetTargetAccountConfigurationOutput, error) + GetTargetAccountConfigurationRequest(*fis.GetTargetAccountConfigurationInput) (*request.Request, *fis.GetTargetAccountConfigurationOutput) + GetTargetResourceType(*fis.GetTargetResourceTypeInput) (*fis.GetTargetResourceTypeOutput, error) GetTargetResourceTypeWithContext(aws.Context, *fis.GetTargetResourceTypeInput, ...request.Option) (*fis.GetTargetResourceTypeOutput, error) GetTargetResourceTypeRequest(*fis.GetTargetResourceTypeInput) (*request.Request, *fis.GetTargetResourceTypeOutput) @@ -91,6 +107,17 @@ ListActionsPages(*fis.ListActionsInput, func(*fis.ListActionsOutput, bool) bool) error ListActionsPagesWithContext(aws.Context, *fis.ListActionsInput, func(*fis.ListActionsOutput, bool) bool, ...request.Option) error + ListExperimentResolvedTargets(*fis.ListExperimentResolvedTargetsInput) (*fis.ListExperimentResolvedTargetsOutput, error) + ListExperimentResolvedTargetsWithContext(aws.Context, *fis.ListExperimentResolvedTargetsInput, ...request.Option) (*fis.ListExperimentResolvedTargetsOutput, error) + ListExperimentResolvedTargetsRequest(*fis.ListExperimentResolvedTargetsInput) (*request.Request, *fis.ListExperimentResolvedTargetsOutput) + + ListExperimentResolvedTargetsPages(*fis.ListExperimentResolvedTargetsInput, func(*fis.ListExperimentResolvedTargetsOutput, bool) bool) error + ListExperimentResolvedTargetsPagesWithContext(aws.Context, *fis.ListExperimentResolvedTargetsInput, func(*fis.ListExperimentResolvedTargetsOutput, bool) bool, ...request.Option) error + + ListExperimentTargetAccountConfigurations(*fis.ListExperimentTargetAccountConfigurationsInput) (*fis.ListExperimentTargetAccountConfigurationsOutput, error) + ListExperimentTargetAccountConfigurationsWithContext(aws.Context, *fis.ListExperimentTargetAccountConfigurationsInput, ...request.Option) (*fis.ListExperimentTargetAccountConfigurationsOutput, error) + ListExperimentTargetAccountConfigurationsRequest(*fis.ListExperimentTargetAccountConfigurationsInput) (*request.Request, *fis.ListExperimentTargetAccountConfigurationsOutput) + ListExperimentTemplates(*fis.ListExperimentTemplatesInput) (*fis.ListExperimentTemplatesOutput, error) ListExperimentTemplatesWithContext(aws.Context, *fis.ListExperimentTemplatesInput, ...request.Option) (*fis.ListExperimentTemplatesOutput, error) ListExperimentTemplatesRequest(*fis.ListExperimentTemplatesInput) (*request.Request, *fis.ListExperimentTemplatesOutput) @@ -109,6 +136,13 @@ ListTagsForResourceWithContext(aws.Context, *fis.ListTagsForResourceInput, ...request.Option) (*fis.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*fis.ListTagsForResourceInput) (*request.Request, *fis.ListTagsForResourceOutput) + ListTargetAccountConfigurations(*fis.ListTargetAccountConfigurationsInput) (*fis.ListTargetAccountConfigurationsOutput, error) + ListTargetAccountConfigurationsWithContext(aws.Context, *fis.ListTargetAccountConfigurationsInput, ...request.Option) (*fis.ListTargetAccountConfigurationsOutput, error) + ListTargetAccountConfigurationsRequest(*fis.ListTargetAccountConfigurationsInput) (*request.Request, *fis.ListTargetAccountConfigurationsOutput) + + ListTargetAccountConfigurationsPages(*fis.ListTargetAccountConfigurationsInput, func(*fis.ListTargetAccountConfigurationsOutput, bool) bool) error + ListTargetAccountConfigurationsPagesWithContext(aws.Context, *fis.ListTargetAccountConfigurationsInput, func(*fis.ListTargetAccountConfigurationsOutput, bool) bool, ...request.Option) error + ListTargetResourceTypes(*fis.ListTargetResourceTypesInput) (*fis.ListTargetResourceTypesOutput, error) ListTargetResourceTypesWithContext(aws.Context, *fis.ListTargetResourceTypesInput, ...request.Option) (*fis.ListTargetResourceTypesOutput, error) ListTargetResourceTypesRequest(*fis.ListTargetResourceTypesInput) (*request.Request, *fis.ListTargetResourceTypesOutput) @@ -135,6 +169,10 @@ UpdateExperimentTemplate(*fis.UpdateExperimentTemplateInput) (*fis.UpdateExperimentTemplateOutput, error) UpdateExperimentTemplateWithContext(aws.Context, *fis.UpdateExperimentTemplateInput, ...request.Option) (*fis.UpdateExperimentTemplateOutput, error) UpdateExperimentTemplateRequest(*fis.UpdateExperimentTemplateInput) (*request.Request, *fis.UpdateExperimentTemplateOutput) + + UpdateTargetAccountConfiguration(*fis.UpdateTargetAccountConfigurationInput) (*fis.UpdateTargetAccountConfigurationOutput, error) + UpdateTargetAccountConfigurationWithContext(aws.Context, *fis.UpdateTargetAccountConfigurationInput, ...request.Option) (*fis.UpdateTargetAccountConfigurationOutput, error) + UpdateTargetAccountConfigurationRequest(*fis.UpdateTargetAccountConfigurationInput) (*request.Request, *fis.UpdateTargetAccountConfigurationOutput) } var _ FISAPI = (*fis.FIS)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/fms/api.go golang-github-aws-aws-sdk-go-1.48.14/service/fms/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/fms/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/fms/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4046,32 +4046,41 @@ // // Creates an Firewall Manager policy. // -// Firewall Manager provides the following types of policies: -// -// - An WAF policy (type WAFV2), which defines rule groups to run first in -// the corresponding WAF web ACL and rule groups to run last in the web ACL. -// -// - An WAF Classic policy (type WAF), which defines a rule group. -// -// - A Shield Advanced policy, which applies Shield Advanced protection to -// specified accounts and resources. -// -// - A security group policy, which manages VPC security groups across your -// Amazon Web Services organization. -// -// - An Network Firewall policy, which provides firewall rules to filter -// network traffic in specified Amazon VPCs. +// A Firewall Manager policy is specific to the individual policy type. If you +// want to enforce multiple policy types across accounts, you can create multiple +// policies. You can create more than one policy for each type. +// +// If you add a new account to an organization that you created with Organizations, +// Firewall Manager automatically applies the policy to the resources in that +// account that are within scope of the policy. // -// - A DNS Firewall policy, which provides Route 53 Resolver DNS Firewall -// rules to filter DNS queries for specified VPCs. +// Firewall Manager provides the following types of policies: // -// Each policy is specific to one of the types. If you want to enforce more -// than one policy type across accounts, create multiple policies. You can create -// multiple policies for each type. +// - Shield Advanced policy - This policy applies Shield Advanced protection +// to specified accounts and resources. // -// You must be subscribed to Shield Advanced to create a Shield Advanced policy. -// For more information about subscribing to Shield Advanced, see CreateSubscription -// (https://docs.aws.amazon.com/waf/latest/DDOSAPIReference/API_CreateSubscription.html). +// - Security Groups policy - This type of policy gives you control over +// security groups that are in use throughout your organization in Organizations +// and lets you enforce a baseline set of rules across your organization. +// +// - Network Firewall policy - This policy applies Network Firewall protection +// to your organization's VPCs. +// +// - DNS Firewall policy - This policy applies Amazon Route 53 Resolver DNS +// Firewall protections to your organization's VPCs. +// +// - Third-party firewall policy - This policy applies third-party firewall +// protections. Third-party firewalls are available by subscription through +// the Amazon Web Services Marketplace console at Amazon Web Services Marketplace +// (https://aws.amazon.com/marketplace). Palo Alto Networks Cloud NGFW policy +// +// - This policy applies Palo Alto Networks Cloud Next Generation Firewall +// (NGFW) protections and Palo Alto Networks Cloud NGFW rulestacks to your +// organization's VPCs. Fortigate CNF policy - This policy applies Fortigate +// Cloud Native Firewall (CNF) protections. Fortigate CNF is a cloud-centered +// solution that blocks Zero-Day threats and secures cloud infrastructures +// with industry-leading advanced threat prevention, smart web application +// firewalls (WAF), and API protection. // // 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 @@ -5771,6 +5780,10 @@ // * Deletes the security group if it was created through Firewall Manager // and if it's no longer associated with any resources through another policy // + // For security group common policies, even if set to False, Firewall Manager + // deletes all security groups created by Firewall Manager that aren't associated + // with any other resources through another policy. + // // After the cleanup, in-scope resources are no longer protected by web ACLs // in this policy. Protection of out-of-scope resources remains unchanged. Scope // is determined by tags that you create and accounts that you associate with @@ -8190,8 +8203,18 @@ // MemberAccount is a required field MemberAccount *string `min:"1" type:"string" required:"true"` - // The ID of the Firewall Manager policy that you want the details for. This - // currently only supports security group content audit policies. + // The ID of the Firewall Manager policy that you want the details for. You + // can get violation details for the following policy types: + // + // * DNS Firewall + // + // * Imported Network Firewall + // + // * Network Firewall + // + // * Security group content audit + // + // * Third-party firewall // // PolicyId is a required field PolicyId *string `min:"36" type:"string" required:"true"` @@ -11248,13 +11271,23 @@ // To apply this policy to multiple resource types, specify a resource type // of ResourceTypeList and then specify the resource types in a ResourceTypeList. // - // For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer, - // AWS::ElasticLoadBalancing::LoadBalancer, AWS::EC2::EIP, and AWS::CloudFront::Distribution. - // For a security group common policy, valid values are AWS::EC2::NetworkInterface - // and AWS::EC2::Instance. For a security group content audit policy, valid - // values are AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, and AWS::EC2::Instance. - // For a security group usage audit policy, the value is AWS::EC2::SecurityGroup. - // For an Network Firewall policy or DNS Firewall policy, the value is AWS::EC2::VPC. + // The following are valid resource types for each Firewall Manager policy type: + // + // * Amazon Web Services WAF Classic - AWS::ApiGateway::Stage, AWS::CloudFront::Distribution, + // and AWS::ElasticLoadBalancingV2::LoadBalancer. + // + // * WAF - AWS::ApiGateway::Stage, AWS::ElasticLoadBalancingV2::LoadBalancer, + // and AWS::CloudFront::Distribution. + // + // * DNS Firewall, Network Firewall, and third-party firewall - AWS::EC2::VPC. + // + // * Shield Advanced - AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::ElasticLoadBalancing::LoadBalancer, + // AWS::EC2::EIP, and AWS::CloudFront::Distribution. + // + // * Security group content audit - AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, + // and AWS::EC2::Instance. + // + // * Security group usage audit - AWS::EC2::SecurityGroup. // // ResourceType is a required field ResourceType *string `min:"1" type:"string" required:"true"` @@ -13928,13 +13961,6 @@ // To use the distributed deployment model, you must set PolicyOption (https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_PolicyOption.html) // to NULL. // - // * Example: THIRD_PARTY_FIREWALL "{ "type":"THIRD_PARTY_FIREWALL", "thirdPartyFirewall":"PALO_ALTO_NETWORKS_CLOUD_NGFW", - // "thirdPartyFirewallConfig":{ "thirdPartyFirewallPolicyList":["global-1"] - // }, "firewallDeploymentModel":{ "distributedFirewallDeploymentModel":{ - // "distributedFirewallOrchestrationConfig":{ "firewallCreationConfig":{ - // "endpointLocation":{ "availabilityZoneConfigList":[ { "availabilityZoneName":"${AvailabilityZone}" - // } ] } }, "allowedIPV4CidrList":[ ] } } } }" - // // * Example: SECURITY_GROUPS_COMMON "{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, // \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" sg-000e55995d61a06bd\"}]}" // @@ -13963,10 +13989,27 @@ // // * Example: SECURITY_GROUPS_USAGE_AUDIT "{\"type\":\"SECURITY_GROUPS_USAGE_AUDIT\",\"deleteUnusedSecurityGroups\":true,\"coalesceRedundantSecurityGroups\":true}" // + // * Example: SHIELD_ADVANCED with web ACL management "{\"type\":\"SHIELD_ADVANCED\",\"optimizeUnassociatedWebACL\":true}" + // If you set optimizeUnassociatedWebACL to true, Firewall Manager creates + // web ACLs in accounts within the policy scope if the web ACLs will be used + // by at least one resource. Firewall Manager creates web ACLs in the accounts + // within policy scope only if the web ACLs will be used by at least one + // resource. If at any time an account comes into policy scope, Firewall + // Manager automatically creates a web ACL in the account if at least one + // resource will use the web ACL. Upon enablement, Firewall Manager performs + // a one-time cleanup of unused web ACLs in your account. The cleanup process + // can take several hours. If a resource leaves policy scope after Firewall + // Manager creates a web ACL, Firewall Manager doesn't disassociate the resource + // from the web ACL. If you want Firewall Manager to clean up the web ACL, + // you must first manually disassociate the resources from the web ACL, and + // then enable the manage unused web ACLs option in your policy. If you set + // optimizeUnassociatedWebACL to false, and Firewall Manager automatically + // creates an empty web ACL in each account that's within policy scope. + // // * Specification for SHIELD_ADVANCED for Amazon CloudFront distributions // "{\"type\":\"SHIELD_ADVANCED\",\"automaticResponseConfiguration\": {\"automaticResponseStatus\":\"ENABLED|IGNORED|DISABLED\", - // \"automaticResponseAction\":\"BLOCK|COUNT\"}, \"overrideCustomerWebaclClassic\":true|false}" - // For example: "{\"type\":\"SHIELD_ADVANCED\",\"automaticResponseConfiguration\": + // \"automaticResponseAction\":\"BLOCK|COUNT\"}, \"overrideCustomerWebaclClassic\":true|false, + // \"optimizeUnassociatedWebACL\":true|false}" For example: "{\"type\":\"SHIELD_ADVANCED\",\"automaticResponseConfiguration\": // {\"automaticResponseStatus\":\"ENABLED\", \"automaticResponseAction\":\"COUNT\"}}" // The default value for automaticResponseStatus is IGNORED. The value for // automaticResponseAction is only required when automaticResponseStatus @@ -13974,28 +14017,60 @@ // is false. For other resource types that you can protect with a Shield // Advanced policy, this ManagedServiceData configuration is an empty string. // - // * Example: WAFV2 - Account takeover prevention and Bot Control managed - // rule groups, and rule action override "{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"versionEnabled\":null,\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesATPRuleSet\",\"managedRuleGroupConfigs\":[{\"awsmanagedRulesATPRuleSet\":{\"loginPath\":\"/loginpath\",\"requestInspection\":{\"payloadType\":\"FORM_ENCODED|JSON\",\"usernameField\":{\"identifier\":\"/form/username\"},\"passwordField\":{\"identifier\":\"/form/password\"}}}}]},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[],\"sampledRequestsEnabled\":true},{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"versionEnabled\":null,\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesBotControlRuleSet\",\"managedRuleGroupConfigs\":[{\"awsmanagedRulesBotControlRuleSet\":{\"inspectionLevel\":\"TARGETED|COMMON\"}}]},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[],\"sampledRequestsEnabled\":true,\"ruleActionOverrides\":[{\"name\":\"Rule1\",\"actionToUse\":{\"allow|block|count|captcha|challenge\":{}}},{\"name\":\"Rule2\",\"actionToUse\":{\"allow|block|count|captcha|challenge\":{}}}]}],\"postProcessRuleGroups\":[],\"defaultAction\":{\"type\":\"ALLOW\"},\"customRequestHandling\":null,\"customResponse\":null,\"overrideCustomerWebACLAssociation\":false,\"loggingConfiguration\":null,\"sampledRequestsEnabledForDefaultActions\":true}" - // Fraud Control account takeover prevention (ATP) - For information about - // the properties available for AWSManagedRulesATPRuleSet managed rule groups, - // see AWSManagedRulesATPRuleSet (https://docs.aws.amazon.com/waf/latest/APIReference/API_AWSManagedRulesATPRuleSet.html) - // in the WAF API Reference. Bot Control - For information about AWSManagedRulesBotControlRuleSet - // managed rule groups, see AWSManagedRulesBotControlRuleSet (https://docs.aws.amazon.com/waf/latest/APIReference/API_AWSManagedRulesBotControlRuleSet.html) - // in the WAF API Reference. Rule action overrides - Firewall Manager supports - // rule action overrides only for managed rule groups. To configure a RuleActionOverrides - // add the Name of the rule to override, and ActionToUse, which is the new - // action to use for the rule. For information about using rule action override, - // see RuleActionOverride (https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleActionOverride.html) + // * Example: THIRD_PARTY_FIREWALL Replace THIRD_PARTY_FIREWALL_NAME with + // the name of the third-party firewall. "{ "type":"THIRD_PARTY_FIREWALL", + // "thirdPartyFirewall":"THIRD_PARTY_FIREWALL_NAME", "thirdPartyFirewallConfig":{ + // "thirdPartyFirewallPolicyList":["global-1"] }, "firewallDeploymentModel":{ + // "distributedFirewallDeploymentModel":{ "distributedFirewallOrchestrationConfig":{ + // "firewallCreationConfig":{ "endpointLocation":{ "availabilityZoneConfigList":[ + // { "availabilityZoneName":"${AvailabilityZone}" } ] } }, "allowedIPV4CidrList":[ + // ] } } } }" + // + // * Example: WAFV2 - Account takeover prevention, Bot Control managed rule + // groups, optimize unassociated web ACL, and rule action override "{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"versionEnabled\":null,\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesATPRuleSet\",\"managedRuleGroupConfigs\":[{\"awsmanagedRulesATPRuleSet\":{\"loginPath\":\"/loginpath\",\"requestInspection\":{\"payloadType\":\"FORM_ENCODED|JSON\",\"usernameField\":{\"identifier\":\"/form/username\"},\"passwordField\":{\"identifier\":\"/form/password\"}}}}]},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[],\"sampledRequestsEnabled\":true},{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"versionEnabled\":null,\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesBotControlRuleSet\",\"managedRuleGroupConfigs\":[{\"awsmanagedRulesBotControlRuleSet\":{\"inspectionLevel\":\"TARGETED|COMMON\"}}]},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[],\"sampledRequestsEnabled\":true,\"ruleActionOverrides\":[{\"name\":\"Rule1\",\"actionToUse\":{\"allow|block|count|captcha|challenge\":{}}},{\"name\":\"Rule2\",\"actionToUse\":{\"allow|block|count|captcha|challenge\":{}}}]}],\"postProcessRuleGroups\":[],\"defaultAction\":{\"type\":\"ALLOW\"},\"customRequestHandling\":null,\"customResponse\":null,\"overrideCustomerWebACLAssociation\":false,\"loggingConfiguration\":null,\"sampledRequestsEnabledForDefaultActions\":true,\"optimizeUnassociatedWebACL\":true}" + // Bot Control - For information about AWSManagedRulesBotControlRuleSet managed + // rule groups, see AWSManagedRulesBotControlRuleSet (https://docs.aws.amazon.com/waf/latest/APIReference/API_AWSManagedRulesBotControlRuleSet.html) + // in the WAF API Reference. Fraud Control account takeover prevention (ATP) + // - For information about the properties available for AWSManagedRulesATPRuleSet + // managed rule groups, see AWSManagedRulesATPRuleSet (https://docs.aws.amazon.com/waf/latest/APIReference/API_AWSManagedRulesATPRuleSet.html) + // in the WAF API Reference. Optimize unassociated web ACL - If you set optimizeUnassociatedWebACL + // to true, Firewall Manager creates web ACLs in accounts within the policy + // scope if the web ACLs will be used by at least one resource. Firewall + // Manager creates web ACLs in the accounts within policy scope only if the + // web ACLs will be used by at least one resource. If at any time an account + // comes into policy scope, Firewall Manager automatically creates a web + // ACL in the account if at least one resource will use the web ACL. Upon + // enablement, Firewall Manager performs a one-time cleanup of unused web + // ACLs in your account. The cleanup process can take several hours. If a + // resource leaves policy scope after Firewall Manager creates a web ACL, + // Firewall Manager disassociates the resource from the web ACL, but won't + // clean up the unused web ACL. Firewall Manager only cleans up unused web + // ACLs when you first enable management of unused web ACLs in a policy. + // If you set optimizeUnassociatedWebACL to false Firewall Manager doesn't + // manage unused web ACLs, and Firewall Manager automatically creates an + // empty web ACL in each account that's within policy scope. Rule action + // overrides - Firewall Manager supports rule action overrides only for managed + // rule groups. To configure a RuleActionOverrides add the Name of the rule + // to override, and ActionToUse, which is the new action to use for the rule. + // For information about using rule action override, see RuleActionOverride + // (https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleActionOverride.html) // in the WAF API Reference. // - // * Example: WAFV2 - CAPTCHA and Challenge configs "{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"versionEnabled\":null,\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\"},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[],\"sampledRequestsEnabled\":true}],\"postProcessRuleGroups\":[],\"defaultAction\":{\"type\":\"ALLOW\"},\"customRequestHandling\":null,\"customResponse\":null,\"overrideCustomerWebACLAssociation\":false,\"loggingConfiguration\":null,\"sampledRequestsEnabledForDefaultActions\":true,\"captchaConfig\":{\"immunityTimeProperty\":{\"immunityTime\":500}},\"challengeConfig\":{\"immunityTimeProperty\":{\"immunityTime\":800}},\"tokenDomains\":[\"google.com\",\"amazon.com\"]}" - // If you update the policy's values for captchaConfig, challengeConfig, - // or tokenDomains, Firewall Manager will overwrite your local web ACLs to - // contain the new value(s). However, if you don't update the policy's captchaConfig, + // * Example: WAFV2 - CAPTCHA and Challenge configs "{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"versionEnabled\":null,\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\"},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[],\"sampledRequestsEnabled\":true}],\"postProcessRuleGroups\":[],\"defaultAction\":{\"type\":\"ALLOW\"},\"customRequestHandling\":null,\"customResponse\":null,\"overrideCustomerWebACLAssociation\":false,\"loggingConfiguration\":null,\"sampledRequestsEnabledForDefaultActions\":true,\"captchaConfig\":{\"immunityTimeProperty\":{\"immunityTime\":500}},\"challengeConfig\":{\"immunityTimeProperty\":{\"immunityTime\":800}},\"tokenDomains\":[\"google.com\",\"amazon.com\"],\"associationConfig\":{\"requestBody\":{\"CLOUDFRONT\":{\"defaultSizeInspectionLimit\":\"KB_16\"}}}}" + // CAPTCHA and Challenge configs - If you update the policy's values for + // associationConfig, captchaConfig, challengeConfig, or tokenDomains, Firewall + // Manager will overwrite your local web ACLs to contain the new value(s). + // However, if you don't update the policy's associationConfig, captchaConfig, // challengeConfig, or tokenDomains values, the values in your local web - // ACLs will remain unchanged. For information about CAPTCHA and Challenge - // configs, see CaptchaConfig (https://docs.aws.amazon.com/waf/latest/APIReference/API_CaptchaConfig.html) + // ACLs will remain unchanged. For information about association configs, + // see AssociationConfig (https://docs.aws.amazon.com/waf/latest/APIReference/API_AssociationConfig.html). + // For information about CAPTCHA and Challenge configs, see CaptchaConfig + // (https://docs.aws.amazon.com/waf/latest/APIReference/API_CaptchaConfig.html) // and ChallengeConfig (https://docs.aws.amazon.com/waf/latest/APIReference/API_ChallengeConfig.html) + // in the WAF API Reference. defaultSizeInspectionLimit - Specifies the maximum + // size of the web request body component that an associated Amazon CloudFront + // distribution should send to WAF for inspection. For more information, + // see DefaultSizeInspectionLimit (https://docs.aws.amazon.com/waf/latest/APIReference/API_RequestBodyAssociatedResourceTypeConfig.html#WAF-Type-RequestBodyAssociatedResourceTypeConfig-DefaultSizeInspectionLimit) // in the WAF API Reference. // // * Example: WAFV2 - Firewall Manager support for WAF managed rule group diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/freetier/api.go golang-github-aws-aws-sdk-go-1.48.14/service/freetier/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/freetier/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/freetier/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,852 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package freetier + +import ( + "fmt" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" +) + +const opGetFreeTierUsage = "GetFreeTierUsage" + +// GetFreeTierUsageRequest generates a "aws/request.Request" representing the +// client's request for the GetFreeTierUsage 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 GetFreeTierUsage for more information on using the GetFreeTierUsage +// 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 GetFreeTierUsageRequest method. +// req, resp := client.GetFreeTierUsageRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/freetier-2023-09-07/GetFreeTierUsage +func (c *FreeTier) GetFreeTierUsageRequest(input *GetFreeTierUsageInput) (req *request.Request, output *GetFreeTierUsageOutput) { + op := &request.Operation{ + Name: opGetFreeTierUsage, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetFreeTierUsageInput{} + } + + output = &GetFreeTierUsageOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetFreeTierUsage API operation for AWS Free Tier. +// +// Returns a list of all Free Tier usage objects that match your filters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Free Tier's +// API operation GetFreeTierUsage for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error occurred during the processing of your request. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Service. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/freetier-2023-09-07/GetFreeTierUsage +func (c *FreeTier) GetFreeTierUsage(input *GetFreeTierUsageInput) (*GetFreeTierUsageOutput, error) { + req, out := c.GetFreeTierUsageRequest(input) + return out, req.Send() +} + +// GetFreeTierUsageWithContext is the same as GetFreeTierUsage with the addition of +// the ability to pass a context and additional request options. +// +// See GetFreeTierUsage 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 *FreeTier) GetFreeTierUsageWithContext(ctx aws.Context, input *GetFreeTierUsageInput, opts ...request.Option) (*GetFreeTierUsageOutput, error) { + req, out := c.GetFreeTierUsageRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetFreeTierUsagePages iterates over the pages of a GetFreeTierUsage operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetFreeTierUsage 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 GetFreeTierUsage operation. +// pageNum := 0 +// err := client.GetFreeTierUsagePages(params, +// func(page *freetier.GetFreeTierUsageOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *FreeTier) GetFreeTierUsagePages(input *GetFreeTierUsageInput, fn func(*GetFreeTierUsageOutput, bool) bool) error { + return c.GetFreeTierUsagePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetFreeTierUsagePagesWithContext same as GetFreeTierUsagePages 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 *FreeTier) GetFreeTierUsagePagesWithContext(ctx aws.Context, input *GetFreeTierUsageInput, fn func(*GetFreeTierUsageOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetFreeTierUsageInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetFreeTierUsageRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetFreeTierUsageOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +// Contains the specifications for the filters to use for your request. +type DimensionValues struct { + _ struct{} `type:"structure"` + + // The name of the dimension that you want to filter on. + // + // Key is a required field + Key *string `type:"string" required:"true" enum:"Dimension"` + + // The match options that you can use to filter your results. You can specify + // only one of these values in the array. + // + // MatchOptions is a required field + MatchOptions []*string `type:"list" required:"true" enum:"MatchOption"` + + // The metadata values you can specify to filter upon, so that the results all + // match at least one of the specified values. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DimensionValues) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DimensionValues) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DimensionValues) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DimensionValues"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.MatchOptions == nil { + invalidParams.Add(request.NewErrParamRequired("MatchOptions")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *DimensionValues) SetKey(v string) *DimensionValues { + s.Key = &v + return s +} + +// SetMatchOptions sets the MatchOptions field's value. +func (s *DimensionValues) SetMatchOptions(v []*string) *DimensionValues { + s.MatchOptions = v + return s +} + +// SetValues sets the Values field's value. +func (s *DimensionValues) SetValues(v []*string) *DimensionValues { + s.Values = v + return s +} + +// Use Expression to filter in the GetFreeTierUsage API operation. +// +// You can use the following patterns: +// +// - Simple dimension values (Dimensions root operator) +// +// - Complex expressions with logical operators (AND, NOT, and OR root operators). +// +// For simple dimension values, you can set the dimension name, values, and +// match type for the filters that you plan to use. +// +// # Example for simple dimension values +// +// You can filter to match exactly for REGION==us-east-1 OR REGION==us-west-1. +// +// The corresponding Expression appears like the following: { "Dimensions": +// { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ], "MatchOptions": +// ["EQUALS"] } } +// +// As shown in the previous example, lists of dimension values are combined +// with OR when you apply the filter. +// +// For complex expressions with logical operators, you can have nested expressions +// to use the logical operators and specify advanced filtering. +// +// # Example for complex expressions with logical operators +// +// You can filter by ((REGION == us-east-1 OR REGION == us-west-1) OR (SERVICE +// CONTAINS AWSLambda)) AND (USAGE_TYPE !CONTAINS DataTransfer). +// +// The corresponding Expression appears like the following: { "And": [ {"Or": +// [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" +// ], "MatchOptions": ["EQUALS"] }}, {"Dimensions": { "Key": "SERVICE", "Values": +// ["AWSLambda"], "MatchOptions": ["CONTAINS"] } } ]}, {"Not": {"Dimensions": +// { "Key": "USAGE_TYPE", "Values": ["DataTransfer"], "MatchOptions": ["CONTAINS"] +// }}} ] } +// +// In the following Contents, you must specify exactly one of the following +// root operators. +type Expression struct { + _ struct{} `type:"structure"` + + // Return results that match all Expressions that you specified in the array. + And []*Expression `type:"list"` + + // The specific dimension, values, and match type to filter objects with. + Dimensions *DimensionValues `type:"structure"` + + // Return results that don’t match the Expression that you specified. + Not *Expression `type:"structure"` + + // Return results that match any of the Expressions that you specified. in the + // array. + Or []*Expression `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 Expression) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Expression) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Expression) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Expression"} + if s.Dimensions != nil { + if err := s.Dimensions.Validate(); err != nil { + invalidParams.AddNested("Dimensions", err.(request.ErrInvalidParams)) + } + } + if s.Not != nil { + if err := s.Not.Validate(); err != nil { + invalidParams.AddNested("Not", err.(request.ErrInvalidParams)) + } + } + if s.Or != nil { + for i, v := range s.Or { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Or", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnd sets the And field's value. +func (s *Expression) SetAnd(v []*Expression) *Expression { + s.And = v + return s +} + +// SetDimensions sets the Dimensions field's value. +func (s *Expression) SetDimensions(v *DimensionValues) *Expression { + s.Dimensions = v + return s +} + +// SetNot sets the Not field's value. +func (s *Expression) SetNot(v *Expression) *Expression { + s.Not = v + return s +} + +// SetOr sets the Or field's value. +func (s *Expression) SetOr(v []*Expression) *Expression { + s.Or = v + return s +} + +// Consists of a Amazon Web Services Free Tier offer’s metadata and your data +// usage for the offer. +type FreeTierUsage struct { + _ struct{} `type:"structure"` + + // Describes the actual usage accrued month-to-day (MTD) that you've used so + // far. + ActualUsageAmount *float64 `locationName:"actualUsageAmount" type:"double"` + + // The description of the Free Tier offer. + Description *string `locationName:"description" type:"string"` + + // Describes the forecasted usage by the month that you're expected to use. + ForecastedUsageAmount *float64 `locationName:"forecastedUsageAmount" type:"double"` + + // Describes the type of the Free Tier offer. For example, the offer can be + // "12 Months Free", "Always Free", and "Free Trial". + FreeTierType *string `locationName:"freeTierType" type:"string"` + + // Describes the maximum usage allowed in Free Tier. + Limit *float64 `locationName:"limit" type:"double"` + + // Describes usageType more granularly with the specific Amazon Web Service + // API operation. For example, this can be the RunInstances API operation for + // Amazon Elastic Compute Cloud. + Operation *string `locationName:"operation" type:"string"` + + // Describes the Amazon Web Services Region for which this offer is applicable + Region *string `locationName:"region" type:"string"` + + // The name of the Amazon Web Service providing the Free Tier offer. For example, + // this can be Amazon Elastic Compute Cloud. + Service *string `locationName:"service" type:"string"` + + // Describes the unit of the usageType, such as Hrs. + Unit *string `locationName:"unit" type:"string"` + + // Describes the usage details of the offer. For example, this might be Global-BoxUsage:freetrial. + UsageType *string `locationName:"usageType" 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 FreeTierUsage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FreeTierUsage) GoString() string { + return s.String() +} + +// SetActualUsageAmount sets the ActualUsageAmount field's value. +func (s *FreeTierUsage) SetActualUsageAmount(v float64) *FreeTierUsage { + s.ActualUsageAmount = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *FreeTierUsage) SetDescription(v string) *FreeTierUsage { + s.Description = &v + return s +} + +// SetForecastedUsageAmount sets the ForecastedUsageAmount field's value. +func (s *FreeTierUsage) SetForecastedUsageAmount(v float64) *FreeTierUsage { + s.ForecastedUsageAmount = &v + return s +} + +// SetFreeTierType sets the FreeTierType field's value. +func (s *FreeTierUsage) SetFreeTierType(v string) *FreeTierUsage { + s.FreeTierType = &v + return s +} + +// SetLimit sets the Limit field's value. +func (s *FreeTierUsage) SetLimit(v float64) *FreeTierUsage { + s.Limit = &v + return s +} + +// SetOperation sets the Operation field's value. +func (s *FreeTierUsage) SetOperation(v string) *FreeTierUsage { + s.Operation = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *FreeTierUsage) SetRegion(v string) *FreeTierUsage { + s.Region = &v + return s +} + +// SetService sets the Service field's value. +func (s *FreeTierUsage) SetService(v string) *FreeTierUsage { + s.Service = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *FreeTierUsage) SetUnit(v string) *FreeTierUsage { + s.Unit = &v + return s +} + +// SetUsageType sets the UsageType field's value. +func (s *FreeTierUsage) SetUsageType(v string) *FreeTierUsage { + s.UsageType = &v + return s +} + +type GetFreeTierUsageInput struct { + _ struct{} `type:"structure"` + + // An expression that specifies the conditions that you want each FreeTierUsage + // object to meet. + Filter *Expression `locationName:"filter" type:"structure"` + + // The maximum number of results to return in the response. MaxResults means + // that there can be up to the specified number of values, but there might be + // fewer results based on your filters. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token that indicates the next set of results to retrieve. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFreeTierUsageInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFreeTierUsageInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetFreeTierUsageInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetFreeTierUsageInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *GetFreeTierUsageInput) SetFilter(v *Expression) *GetFreeTierUsageInput { + s.Filter = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetFreeTierUsageInput) SetMaxResults(v int64) *GetFreeTierUsageInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetFreeTierUsageInput) SetNextToken(v string) *GetFreeTierUsageInput { + s.NextToken = &v + return s +} + +type GetFreeTierUsageOutput struct { + _ struct{} `type:"structure"` + + // The list of Free Tier usage objects that meet your filter expression. + // + // FreeTierUsages is a required field + FreeTierUsages []*FreeTierUsage `locationName:"freeTierUsages" type:"list" required:"true"` + + // The pagination token that indicates the next set of results to retrieve. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFreeTierUsageOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFreeTierUsageOutput) GoString() string { + return s.String() +} + +// SetFreeTierUsages sets the FreeTierUsages field's value. +func (s *GetFreeTierUsageOutput) SetFreeTierUsages(v []*FreeTierUsage) *GetFreeTierUsageOutput { + s.FreeTierUsages = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetFreeTierUsageOutput) SetNextToken(v string) *GetFreeTierUsageOutput { + s.NextToken = &v + return s +} + +// An unexpected error occurred during the processing of your request. +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 request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input fails to satisfy the constraints specified by an Amazon Web 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 +} + +const ( + // DimensionService is a Dimension enum value + DimensionService = "SERVICE" + + // DimensionOperation is a Dimension enum value + DimensionOperation = "OPERATION" + + // DimensionUsageType is a Dimension enum value + DimensionUsageType = "USAGE_TYPE" + + // DimensionRegion is a Dimension enum value + DimensionRegion = "REGION" + + // DimensionFreeTierType is a Dimension enum value + DimensionFreeTierType = "FREE_TIER_TYPE" + + // DimensionDescription is a Dimension enum value + DimensionDescription = "DESCRIPTION" + + // DimensionUsagePercentage is a Dimension enum value + DimensionUsagePercentage = "USAGE_PERCENTAGE" +) + +// Dimension_Values returns all elements of the Dimension enum +func Dimension_Values() []string { + return []string{ + DimensionService, + DimensionOperation, + DimensionUsageType, + DimensionRegion, + DimensionFreeTierType, + DimensionDescription, + DimensionUsagePercentage, + } +} + +const ( + // MatchOptionEquals is a MatchOption enum value + MatchOptionEquals = "EQUALS" + + // MatchOptionStartsWith is a MatchOption enum value + MatchOptionStartsWith = "STARTS_WITH" + + // MatchOptionEndsWith is a MatchOption enum value + MatchOptionEndsWith = "ENDS_WITH" + + // MatchOptionContains is a MatchOption enum value + MatchOptionContains = "CONTAINS" + + // MatchOptionGreaterThanOrEqual is a MatchOption enum value + MatchOptionGreaterThanOrEqual = "GREATER_THAN_OR_EQUAL" +) + +// MatchOption_Values returns all elements of the MatchOption enum +func MatchOption_Values() []string { + return []string{ + MatchOptionEquals, + MatchOptionStartsWith, + MatchOptionEndsWith, + MatchOptionContains, + MatchOptionGreaterThanOrEqual, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/freetier/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/freetier/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/freetier/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/freetier/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,42 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package freetier provides the client and types for making API +// requests to AWS Free Tier. +// +// You can use the Amazon Web Services Free Tier API to query programmatically +// your Free Tier usage data. +// +// Free Tier tracks your monthly usage data for all free tier offers that are +// associated with your Amazon Web Services account. You can use the Free Tier +// API to filter and show only the data that you want. +// +// # Service endpoint +// +// The Free Tier API provides the following endpoint: +// +// - https://freetier.us-east-1.api.aws +// +// For more information, see Using the Amazon Web Services Free Tier (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-free-tier.html) +// in the Billing User Guide. +// +// See https://docs.aws.amazon.com/goto/WebAPI/freetier-2023-09-07 for more information on this service. +// +// See freetier package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/freetier/ +// +// # Using the Client +// +// To contact AWS Free Tier with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Free Tier client FreeTier for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/freetier/#New +package freetier diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/freetier/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/freetier/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/freetier/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/freetier/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,34 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package freetier + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An unexpected error occurred during the processing of your request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an Amazon Web Service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "InternalServerException": newErrorInternalServerException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/freetier/freetieriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/freetier/freetieriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/freetier/freetieriface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/freetier/freetieriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,71 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package freetieriface provides an interface to enable mocking the AWS Free Tier 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 freetieriface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/freetier" +) + +// FreeTierAPI provides an interface to enable mocking the +// freetier.FreeTier service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Free Tier. +// func myFunc(svc freetieriface.FreeTierAPI) bool { +// // Make svc.GetFreeTierUsage request +// } +// +// func main() { +// sess := session.New() +// svc := freetier.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockFreeTierClient struct { +// freetieriface.FreeTierAPI +// } +// func (m *mockFreeTierClient) GetFreeTierUsage(input *freetier.GetFreeTierUsageInput) (*freetier.GetFreeTierUsageOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockFreeTierClient{} +// +// 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 FreeTierAPI interface { + GetFreeTierUsage(*freetier.GetFreeTierUsageInput) (*freetier.GetFreeTierUsageOutput, error) + GetFreeTierUsageWithContext(aws.Context, *freetier.GetFreeTierUsageInput, ...request.Option) (*freetier.GetFreeTierUsageOutput, error) + GetFreeTierUsageRequest(*freetier.GetFreeTierUsageInput) (*request.Request, *freetier.GetFreeTierUsageOutput) + + GetFreeTierUsagePages(*freetier.GetFreeTierUsageInput, func(*freetier.GetFreeTierUsageOutput, bool) bool) error + GetFreeTierUsagePagesWithContext(aws.Context, *freetier.GetFreeTierUsageInput, func(*freetier.GetFreeTierUsageOutput, bool) bool, ...request.Option) error +} + +var _ FreeTierAPI = (*freetier.FreeTier)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/freetier/service.go golang-github-aws-aws-sdk-go-1.48.14/service/freetier/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/freetier/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/freetier/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package freetier + +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" +) + +// FreeTier provides the API operation methods for making requests to +// AWS Free Tier. See this package's package overview docs +// for details on the service. +// +// FreeTier methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type FreeTier 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 = "FreeTier" // Name of service. + EndpointsID = "freetier" // ID to lookup a service endpoint with. + ServiceID = "FreeTier" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the FreeTier 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 FreeTier client from just a session. +// svc := freetier.New(mySession) +// +// // Create a FreeTier client with additional configuration +// svc := freetier.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *FreeTier { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "freetier" + } + 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) *FreeTier { + svc := &FreeTier{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-09-07", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "AWSFreeTierService", + }, + 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 FreeTier operation and runs any +// custom request initialization. +func (c *FreeTier) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/fsx/api.go golang-github-aws-aws-sdk-go-1.48.14/service/fsx/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/fsx/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/fsx/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -356,6 +356,100 @@ return out, req.Send() } +const opCopySnapshotAndUpdateVolume = "CopySnapshotAndUpdateVolume" + +// CopySnapshotAndUpdateVolumeRequest generates a "aws/request.Request" representing the +// client's request for the CopySnapshotAndUpdateVolume 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 CopySnapshotAndUpdateVolume for more information on using the CopySnapshotAndUpdateVolume +// 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 CopySnapshotAndUpdateVolumeRequest method. +// req, resp := client.CopySnapshotAndUpdateVolumeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CopySnapshotAndUpdateVolume +func (c *FSx) CopySnapshotAndUpdateVolumeRequest(input *CopySnapshotAndUpdateVolumeInput) (req *request.Request, output *CopySnapshotAndUpdateVolumeOutput) { + op := &request.Operation{ + Name: opCopySnapshotAndUpdateVolume, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CopySnapshotAndUpdateVolumeInput{} + } + + output = &CopySnapshotAndUpdateVolumeOutput{} + req = c.newRequest(op, input, output) + return +} + +// CopySnapshotAndUpdateVolume API operation for Amazon FSx. +// +// Updates an existing volume by using a snapshot from another Amazon FSx for +// OpenZFS file system. For more information, see on-demand data replication +// (https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/on-demand-replication.html) +// in the Amazon FSx for OpenZFS User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon FSx's +// API operation CopySnapshotAndUpdateVolume for usage and error information. +// +// Returned Error Types: +// +// - BadRequest +// A generic error indicating a failure with a client request. +// +// - IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// - InternalServerError +// A generic error indicating a server-side failure. +// +// - ServiceLimitExceeded +// An error indicating that a particular service limit was exceeded. You can +// increase some service limits by contacting Amazon Web Services Support. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CopySnapshotAndUpdateVolume +func (c *FSx) CopySnapshotAndUpdateVolume(input *CopySnapshotAndUpdateVolumeInput) (*CopySnapshotAndUpdateVolumeOutput, error) { + req, out := c.CopySnapshotAndUpdateVolumeRequest(input) + return out, req.Send() +} + +// CopySnapshotAndUpdateVolumeWithContext is the same as CopySnapshotAndUpdateVolume with the addition of +// the ability to pass a context and additional request options. +// +// See CopySnapshotAndUpdateVolume 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 *FSx) CopySnapshotAndUpdateVolumeWithContext(ctx aws.Context, input *CopySnapshotAndUpdateVolumeInput, opts ...request.Option) (*CopySnapshotAndUpdateVolumeOutput, error) { + req, out := c.CopySnapshotAndUpdateVolumeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateBackup = "CreateBackup" // CreateBackupRequest generates a "aws/request.Request" representing the @@ -3257,6 +3351,91 @@ return p.Err() } +const opDescribeSharedVpcConfiguration = "DescribeSharedVpcConfiguration" + +// DescribeSharedVpcConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DescribeSharedVpcConfiguration 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 DescribeSharedVpcConfiguration for more information on using the DescribeSharedVpcConfiguration +// 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 DescribeSharedVpcConfigurationRequest method. +// req, resp := client.DescribeSharedVpcConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeSharedVpcConfiguration +func (c *FSx) DescribeSharedVpcConfigurationRequest(input *DescribeSharedVpcConfigurationInput) (req *request.Request, output *DescribeSharedVpcConfigurationOutput) { + op := &request.Operation{ + Name: opDescribeSharedVpcConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeSharedVpcConfigurationInput{} + } + + output = &DescribeSharedVpcConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeSharedVpcConfiguration API operation for Amazon FSx. +// +// Indicates whether participant accounts in your organization can create Amazon +// FSx for NetApp ONTAP Multi-AZ file systems in subnets that are shared by +// a virtual private cloud (VPC) owner. For more information, see the Amazon +// FSx for NetApp ONTAP User Guide (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/maz-shared-vpc.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 Amazon FSx's +// API operation DescribeSharedVpcConfiguration for usage and error information. +// +// Returned Error Types: +// +// - BadRequest +// A generic error indicating a failure with a client request. +// +// - InternalServerError +// A generic error indicating a server-side failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeSharedVpcConfiguration +func (c *FSx) DescribeSharedVpcConfiguration(input *DescribeSharedVpcConfigurationInput) (*DescribeSharedVpcConfigurationOutput, error) { + req, out := c.DescribeSharedVpcConfigurationRequest(input) + return out, req.Send() +} + +// DescribeSharedVpcConfigurationWithContext is the same as DescribeSharedVpcConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeSharedVpcConfiguration 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 *FSx) DescribeSharedVpcConfigurationWithContext(ctx aws.Context, input *DescribeSharedVpcConfigurationInput, opts ...request.Option) (*DescribeSharedVpcConfigurationOutput, error) { + req, out := c.DescribeSharedVpcConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeSnapshots = "DescribeSnapshots" // DescribeSnapshotsRequest generates a "aws/request.Request" representing the @@ -3754,8 +3933,8 @@ // Use this action to disassociate, or remove, one or more Domain Name Service // (DNS) aliases from an Amazon FSx for Windows File Server file system. If // you attempt to disassociate a DNS alias that is not associated with the file -// system, Amazon FSx responds with a 400 Bad Request. For more information, -// see Working with DNS Aliases (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-dns-aliases.html). +// system, Amazon FSx responds with an HTTP status code 400 (Bad Request). For +// more information, see Working with DNS Aliases (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-dns-aliases.html). // // The system generated response showing the DNS aliases that Amazon FSx is // attempting to disassociate from the file system. Use the API operation to @@ -4151,6 +4330,93 @@ return out, req.Send() } +const opStartMisconfiguredStateRecovery = "StartMisconfiguredStateRecovery" + +// StartMisconfiguredStateRecoveryRequest generates a "aws/request.Request" representing the +// client's request for the StartMisconfiguredStateRecovery 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 StartMisconfiguredStateRecovery for more information on using the StartMisconfiguredStateRecovery +// 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 StartMisconfiguredStateRecoveryRequest method. +// req, resp := client.StartMisconfiguredStateRecoveryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/StartMisconfiguredStateRecovery +func (c *FSx) StartMisconfiguredStateRecoveryRequest(input *StartMisconfiguredStateRecoveryInput) (req *request.Request, output *StartMisconfiguredStateRecoveryOutput) { + op := &request.Operation{ + Name: opStartMisconfiguredStateRecovery, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartMisconfiguredStateRecoveryInput{} + } + + output = &StartMisconfiguredStateRecoveryOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartMisconfiguredStateRecovery API operation for Amazon FSx. +// +// After performing steps to repair the Active Directory configuration of an +// FSx for Windows File Server file system, use this action to initiate the +// process of Amazon FSx attempting to reconnect to the file system. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon FSx's +// API operation StartMisconfiguredStateRecovery for usage and error information. +// +// Returned Error Types: +// +// - BadRequest +// A generic error indicating a failure with a client request. +// +// - FileSystemNotFound +// No Amazon FSx file systems were found based upon supplied parameters. +// +// - InternalServerError +// A generic error indicating a server-side failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/StartMisconfiguredStateRecovery +func (c *FSx) StartMisconfiguredStateRecovery(input *StartMisconfiguredStateRecoveryInput) (*StartMisconfiguredStateRecoveryOutput, error) { + req, out := c.StartMisconfiguredStateRecoveryRequest(input) + return out, req.Send() +} + +// StartMisconfiguredStateRecoveryWithContext is the same as StartMisconfiguredStateRecovery with the addition of +// the ability to pass a context and additional request options. +// +// See StartMisconfiguredStateRecovery 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 *FSx) StartMisconfiguredStateRecoveryWithContext(ctx aws.Context, input *StartMisconfiguredStateRecoveryInput, opts ...request.Option) (*StartMisconfiguredStateRecoveryOutput, error) { + req, out := c.StartMisconfiguredStateRecoveryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -4616,6 +4882,8 @@ // // - LustreRootSquashConfiguration // +// - PerUnitStorageThroughput +// // - StorageCapacity // // - WeeklyMaintenanceStartTime @@ -4632,12 +4900,16 @@ // // - FsxAdminPassword // +// - HAPairs +// // - RemoveRouteTableIds // // - StorageCapacity // // - ThroughputCapacity // +// - ThroughputCapacityPerHAPair +// // - WeeklyMaintenanceStartTime // // For FSx for OpenZFS file systems, you can update the following properties: @@ -4720,6 +4992,102 @@ return out, req.Send() } +const opUpdateSharedVpcConfiguration = "UpdateSharedVpcConfiguration" + +// UpdateSharedVpcConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSharedVpcConfiguration 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 UpdateSharedVpcConfiguration for more information on using the UpdateSharedVpcConfiguration +// 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 UpdateSharedVpcConfigurationRequest method. +// req, resp := client.UpdateSharedVpcConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateSharedVpcConfiguration +func (c *FSx) UpdateSharedVpcConfigurationRequest(input *UpdateSharedVpcConfigurationInput) (req *request.Request, output *UpdateSharedVpcConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateSharedVpcConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSharedVpcConfigurationInput{} + } + + output = &UpdateSharedVpcConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSharedVpcConfiguration API operation for Amazon FSx. +// +// Configures whether participant accounts in your organization can create Amazon +// FSx for NetApp ONTAP Multi-AZ file systems in subnets that are shared by +// a virtual private cloud (VPC) owner. For more information, see the Amazon +// FSx for NetApp ONTAP User Guide (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/maz-shared-vpc.html). +// +// We strongly recommend that participant-created Multi-AZ file systems in the +// shared VPC are deleted before you disable this feature. Once the feature +// is disabled, these file systems will enter a MISCONFIGURED state and behave +// like Single-AZ file systems. For more information, see Important considerations +// before disabling shared VPC support for Multi-AZ file systems (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/maz-shared-vpc.html#disabling-maz-vpc-sharing). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon FSx's +// API operation UpdateSharedVpcConfiguration for usage and error information. +// +// Returned Error Types: +// +// - BadRequest +// A generic error indicating a failure with a client request. +// +// - IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// - InternalServerError +// A generic error indicating a server-side failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateSharedVpcConfiguration +func (c *FSx) UpdateSharedVpcConfiguration(input *UpdateSharedVpcConfigurationInput) (*UpdateSharedVpcConfigurationOutput, error) { + req, out := c.UpdateSharedVpcConfigurationRequest(input) + return out, req.Send() +} + +// UpdateSharedVpcConfigurationWithContext is the same as UpdateSharedVpcConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSharedVpcConfiguration 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 *FSx) UpdateSharedVpcConfigurationWithContext(ctx aws.Context, input *UpdateSharedVpcConfigurationInput, opts ...request.Option) (*UpdateSharedVpcConfigurationOutput, error) { + req, out := c.UpdateSharedVpcConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSnapshot = "UpdateSnapshot" // UpdateSnapshotRequest generates a "aws/request.Request" representing the @@ -5122,7 +5490,7 @@ } // Describes a specific Amazon FSx administrative action for the current Windows, -// Lustre, or OpenZFS file system. +// Lustre, OpenZFS, or ONTAP file system or volume. type AdministrativeAction struct { _ struct{} `type:"structure"` @@ -5150,7 +5518,7 @@ // completed successfully, the parent FILE_SYSTEM_UPDATE action status changes // to COMPLETED. For more information, see Managing storage capacity (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-storage-capacity.html) // in the Amazon FSx for Windows File Server User Guide, Managing storage - // and throughput capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-storage-capacity.html) + // capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-storage-capacity.html) // in the Amazon FSx for Lustre User Guide, and Managing storage capacity // and provisioned IOPS (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-storage-capacity.html) // in the Amazon FSx for NetApp ONTAP User Guide. @@ -5178,9 +5546,8 @@ // has been completed successfully, the parent FILE_SYSTEM_UPDATE action // status changes to COMPLETED. // - // * VOLUME_UPDATE - A volume update to an Amazon FSx for NetApp ONTAP or - // Amazon FSx for OpenZFS volume initiated from the Amazon FSx console, API - // (UpdateVolume), or CLI (update-volume). + // * VOLUME_UPDATE - A volume update to an Amazon FSx for OpenZFS volume + // initiated from the Amazon FSx console, API (UpdateVolume), or CLI (update-volume). // // * VOLUME_RESTORE - An Amazon FSx for OpenZFS volume is returned to the // state saved by the specified snapshot, initiated from an API (RestoreVolumeFromSnapshot) @@ -5191,6 +5558,15 @@ // // * RELEASE_NFS_V3_LOCKS - Tracks the release of Network File System (NFS) // V3 locks on an Amazon FSx for OpenZFS file system. + // + // * VOLUME_INITIALIZE_WITH_SNAPSHOT - A volume is being created from a snapshot + // on a different FSx for OpenZFS file system. You can initiate this from + // the Amazon FSx console, API (CreateVolume), or CLI (create-volume) when + // using the using the FULL_COPY strategy. + // + // * VOLUME_UPDATE_WITH_SNAPSHOT - A volume is being updated from a snapshot + // on a different FSx for OpenZFS file system. You can initiate this from + // the Amazon FSx console, API (CopySnapshotAndUpdateVolume), or CLI (copy-snapshot-and-update-volume). AdministrativeActionType *string `type:"string" enum:"AdministrativeActionType"` // Provides information about a failed administrative action. @@ -5200,10 +5576,14 @@ // Does not apply to any other administrative action type. ProgressPercent *int64 `type:"integer"` + // The remaining bytes to transfer for the FSx for OpenZFS snapshot that you're + // copying. + RemainingTransferBytes *int64 `type:"long"` + // The time that the administrative action request was received. RequestTime *time.Time `type:"timestamp"` - // Describes the status of the administrative action, as follows: + // The status of the administrative action, as follows: // // * FAILED - Amazon FSx failed to process the administrative action successfully. // @@ -5218,16 +5598,19 @@ // now performing the storage-optimization process. Status *string `type:"string" enum:"Status"` - // Describes the target value for the administration action, provided in the - // UpdateFileSystem operation. Returned for FILE_SYSTEM_UPDATE administrative - // actions. + // The target value for the administration action, provided in the UpdateFileSystem + // operation. Returned for FILE_SYSTEM_UPDATE administrative actions. TargetFileSystemValues *FileSystem `type:"structure"` // A snapshot of an Amazon FSx for OpenZFS volume. TargetSnapshotValues *Snapshot `type:"structure"` - // Describes an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume. + // Describes an Amazon FSx volume. TargetVolumeValues *Volume `type:"structure"` + + // The number of bytes that have transferred for the FSx for OpenZFS snapshot + // that you're copying. + TotalTransferBytes *int64 `type:"long"` } // String returns the string representation. @@ -5266,6 +5649,12 @@ return s } +// SetRemainingTransferBytes sets the RemainingTransferBytes field's value. +func (s *AdministrativeAction) SetRemainingTransferBytes(v int64) *AdministrativeAction { + s.RemainingTransferBytes = &v + return s +} + // SetRequestTime sets the RequestTime field's value. func (s *AdministrativeAction) SetRequestTime(v time.Time) *AdministrativeAction { s.RequestTime = &v @@ -5296,6 +5685,12 @@ return s } +// SetTotalTransferBytes sets the TotalTransferBytes field's value. +func (s *AdministrativeAction) SetTotalTransferBytes(v int64) *AdministrativeAction { + s.TotalTransferBytes = &v + return s +} + // Provides information about a failed administrative action. type AdministrativeActionFailureDetails struct { _ struct{} `type:"structure"` @@ -5328,6 +5723,64 @@ return s } +// Used to specify configuration options for a volume’s storage aggregate +// or aggregates. +type AggregateConfiguration struct { + _ struct{} `type:"structure"` + + // The list of aggregates that this volume resides on. Aggregates are storage + // pools which make up your primary storage tier. Each high-availability (HA) + // pair has one aggregate. The names of the aggregates map to the names of the + // aggregates in the ONTAP CLI and REST API. For FlexVols, there will always + // be a single entry. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The strings in the value of Aggregates are not are not formatted as + // aggrX, where X is a number between 1 and 6. + // + // * The value of Aggregates contains aggregates that are not present. + // + // * One or more of the aggregates supplied are too close to the volume limit + // to support adding more volumes. + Aggregates []*string `type:"list"` + + // The total number of constituents this FlexGroup volume has. Not applicable + // for FlexVols. + TotalConstituents *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregateConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregateConfiguration) GoString() string { + return s.String() +} + +// SetAggregates sets the Aggregates field's value. +func (s *AggregateConfiguration) SetAggregates(v []*string) *AggregateConfiguration { + s.Aggregates = v + return s +} + +// SetTotalConstituents sets the TotalConstituents field's value. +func (s *AggregateConfiguration) SetTotalConstituents(v int64) *AggregateConfiguration { + s.TotalConstituents = &v + return s +} + // A DNS alias that is associated with the file system. You can use a DNS alias // to access a file system using user-defined DNS names, in addition to the // default DNS name that Amazon FSx assigns to the file system. For more information, @@ -5789,7 +6242,7 @@ // Type is a required field Type *string `type:"string" required:"true" enum:"BackupType"` - // Describes an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume. + // Describes an Amazon FSx volume. Volume *Volume `type:"structure"` } @@ -6650,6 +7103,240 @@ return s } +type CopySnapshotAndUpdateVolumeInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 63 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Specifies the strategy to use when copying data from a snapshot to the volume. + // + // * FULL_COPY - Copies all data from the snapshot to the volume. + // + // * INCREMENTAL_COPY - Copies only the snapshot data that's changed since + // the previous replication. + // + // CLONE isn't a valid copy strategy option for the CopySnapshotAndUpdateVolume + // operation. + CopyStrategy *string `type:"string" enum:"OpenZFSCopyStrategy"` + + // Confirms that you want to delete data on the destination volume that wasn’t + // there during the previous snapshot replication. + // + // Your replication will fail if you don’t include an option for a specific + // type of data and that data is on your destination. For example, if you don’t + // include DELETE_INTERMEDIATE_SNAPSHOTS and there are intermediate snapshots + // on the destination, you can’t copy the snapshot. + // + // * DELETE_INTERMEDIATE_SNAPSHOTS - Deletes snapshots on the destination + // volume that aren’t on the source volume. + // + // * DELETE_CLONED_VOLUMES - Deletes snapshot clones on the destination volume + // that aren't on the source volume. + // + // * DELETE_INTERMEDIATE_DATA - Overwrites snapshots on the destination volume + // that don’t match the source snapshot that you’re copying. + Options []*string `type:"list" enum:"UpdateOpenZFSVolumeOption"` + + // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify + // Amazon Web Services resources. We require an ARN when you need to specify + // a resource unambiguously across all of Amazon Web Services. For more information, + // see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // SourceSnapshotARN is a required field + SourceSnapshotARN *string `min:"8" type:"string" required:"true"` + + // Specifies the ID of the volume that you are copying the snapshot to. + // + // VolumeId is a required field + VolumeId *string `min:"23" 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 CopySnapshotAndUpdateVolumeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopySnapshotAndUpdateVolumeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopySnapshotAndUpdateVolumeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopySnapshotAndUpdateVolumeInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.SourceSnapshotARN == nil { + invalidParams.Add(request.NewErrParamRequired("SourceSnapshotARN")) + } + if s.SourceSnapshotARN != nil && len(*s.SourceSnapshotARN) < 8 { + invalidParams.Add(request.NewErrParamMinLen("SourceSnapshotARN", 8)) + } + if s.VolumeId == nil { + invalidParams.Add(request.NewErrParamRequired("VolumeId")) + } + if s.VolumeId != nil && len(*s.VolumeId) < 23 { + invalidParams.Add(request.NewErrParamMinLen("VolumeId", 23)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CopySnapshotAndUpdateVolumeInput) SetClientRequestToken(v string) *CopySnapshotAndUpdateVolumeInput { + s.ClientRequestToken = &v + return s +} + +// SetCopyStrategy sets the CopyStrategy field's value. +func (s *CopySnapshotAndUpdateVolumeInput) SetCopyStrategy(v string) *CopySnapshotAndUpdateVolumeInput { + s.CopyStrategy = &v + return s +} + +// SetOptions sets the Options field's value. +func (s *CopySnapshotAndUpdateVolumeInput) SetOptions(v []*string) *CopySnapshotAndUpdateVolumeInput { + s.Options = v + return s +} + +// SetSourceSnapshotARN sets the SourceSnapshotARN field's value. +func (s *CopySnapshotAndUpdateVolumeInput) SetSourceSnapshotARN(v string) *CopySnapshotAndUpdateVolumeInput { + s.SourceSnapshotARN = &v + return s +} + +// SetVolumeId sets the VolumeId field's value. +func (s *CopySnapshotAndUpdateVolumeInput) SetVolumeId(v string) *CopySnapshotAndUpdateVolumeInput { + s.VolumeId = &v + return s +} + +type CopySnapshotAndUpdateVolumeOutput struct { + _ struct{} `type:"structure"` + + // A list of administrative actions for the file system that are in process + // or waiting to be processed. Administrative actions describe changes to the + // Amazon FSx system. + AdministrativeActions []*AdministrativeAction `type:"list"` + + // The lifecycle state of the destination volume. + Lifecycle *string `type:"string" enum:"VolumeLifecycle"` + + // The ID of the volume that you copied the snapshot to. + VolumeId *string `min:"23" 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 CopySnapshotAndUpdateVolumeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopySnapshotAndUpdateVolumeOutput) GoString() string { + return s.String() +} + +// SetAdministrativeActions sets the AdministrativeActions field's value. +func (s *CopySnapshotAndUpdateVolumeOutput) SetAdministrativeActions(v []*AdministrativeAction) *CopySnapshotAndUpdateVolumeOutput { + s.AdministrativeActions = v + return s +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *CopySnapshotAndUpdateVolumeOutput) SetLifecycle(v string) *CopySnapshotAndUpdateVolumeOutput { + s.Lifecycle = &v + return s +} + +// SetVolumeId sets the VolumeId field's value. +func (s *CopySnapshotAndUpdateVolumeOutput) SetVolumeId(v string) *CopySnapshotAndUpdateVolumeOutput { + s.VolumeId = &v + return s +} + +// Used to specify the configuration options for a volume's storage aggregate +// or aggregates. +type CreateAggregateConfiguration struct { + _ struct{} `type:"structure"` + + // Used to specify the names of aggregates on which the volume will be created. + Aggregates []*string `type:"list"` + + // Used to explicitly set the number of constituents within the FlexGroup per + // storage aggregate. This field is optional when creating a FlexGroup volume. + // If unspecified, the default value will be 8. This field cannot be provided + // when creating a FlexVol volume. + ConstituentsPerAggregate *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAggregateConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAggregateConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAggregateConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAggregateConfiguration"} + if s.ConstituentsPerAggregate != nil && *s.ConstituentsPerAggregate < 1 { + invalidParams.Add(request.NewErrParamMinValue("ConstituentsPerAggregate", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAggregates sets the Aggregates field's value. +func (s *CreateAggregateConfiguration) SetAggregates(v []*string) *CreateAggregateConfiguration { + s.Aggregates = v + return s +} + +// SetConstituentsPerAggregate sets the ConstituentsPerAggregate field's value. +func (s *CreateAggregateConfiguration) SetConstituentsPerAggregate(v int64) *CreateAggregateConfiguration { + s.ConstituentsPerAggregate = &v + return s +} + // The request object for the CreateBackup operation. type CreateBackupInput struct { _ struct{} `type:"structure"` @@ -7610,7 +8297,7 @@ // // * ExportPath // - // * ImportedChunkSize + // * ImportedFileChunkSize // // * ImportPath LustreConfiguration *CreateFileSystemLustreConfiguration `type:"structure"` @@ -7632,7 +8319,7 @@ // // If used to create a file system other than OpenZFS, you must provide a value // that matches the backup's StorageCapacity value. If you provide any other - // value, Amazon FSx responds with a 400 Bad Request. + // value, Amazon FSx responds with with an HTTP status code 400 Bad Request. StorageCapacity *int64 `type:"integer"` // Sets the storage type for the Windows or OpenZFS file system that you're @@ -7910,7 +8597,7 @@ // // * ExportPath // - // * ImportedChunkSize + // * ImportedFileChunkSize // // * ImportPath LustreConfiguration *CreateFileSystemLustreConfiguration `type:"structure"` @@ -7946,7 +8633,9 @@ // and increments of 3600 GiB. // // FSx for ONTAP file systems - The amount of storage capacity that you can - // configure is from 1024 GiB up to 196,608 GiB (192 TiB). + // configure depends on the value of the HAPairs property. The minimum value + // is calculated as 1,024 * HAPairs and the maxium is calculated as 524,288 + // * HAPairs.. // // FSx for OpenZFS file systems - The amount of storage capacity that you can // configure is from 64 GiB up to 524,288 GiB (512 TiB). @@ -8170,7 +8859,7 @@ // // - ExportPath // -// - ImportedChunkSize +// - ImportedFileChunkSize // // - ImportPath type CreateFileSystemLustreConfiguration struct { @@ -8523,6 +9212,9 @@ // // * SINGLE_AZ_1 - A file system configured for Single-AZ redundancy. // + // * SINGLE_AZ_2 - A file system configured with multiple high-availability + // (HA) pairs for Single-AZ redundancy. + // // For information about the use cases for Multi-AZ and Single-AZ deployments, // refer to Choosing a file system deployment type (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/high-availability-AZ.html). // @@ -8550,6 +9242,21 @@ // String and GoString methods. FsxAdminPassword *string `min:"8" type:"string" sensitive:"true"` + // Specifies how many high-availability (HA) pairs the file system will have. + // The default value is 1. The value of this property affects the values of + // StorageCapacity, Iops, and ThroughputCapacity. For more information, see + // High-availability (HA) pairs (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/HA-pairs.html) + // in the FSx for ONTAP user guide. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The value of HAPairs is less than 1 or greater than 6. + // + // * The value of HAPairs is greater than 1 and the value of DeploymentType + // is SINGLE_AZ_1 or MULTI_AZ_1. + HAPairs *int64 `min:"1" type:"integer"` + // Required when DeploymentType is set to MULTI_AZ_1. This specifies the subnet // in which you want the preferred file server to be located. PreferredSubnetId *string `min:"15" type:"string"` @@ -8561,11 +9268,43 @@ // default route table. RouteTableIds []*string `type:"list"` - // Sets the throughput capacity for the file system that you're creating. Valid - // values are 128, 256, 512, 1024, 2048, and 4096 MBps. + // Sets the throughput capacity for the file system that you're creating in + // megabytes per second (MBps). For more information, see Managing throughput + // capacity (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-throughput-capacity.html) + // in the FSx for ONTAP User Guide. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The value of ThroughputCapacity and ThroughputCapacityPerHAPair are + // not the same value. + // + // * The value of ThroughputCapacity when divided by the value of HAPairs + // is outside of the valid range for ThroughputCapacity. + ThroughputCapacity *int64 `min:"8" type:"integer"` + + // Use to choose the throughput capacity per HA pair, rather than the total + // throughput for the file system. // - // ThroughputCapacity is a required field - ThroughputCapacity *int64 `min:"8" type:"integer" required:"true"` + // This field and ThroughputCapacity cannot be defined in the same API call, + // but one is required. + // + // This field and ThroughputCapacity are the same for file systems with one + // HA pair. + // + // * For SINGLE_AZ_1 and MULTI_AZ_1, valid values are 128, 256, 512, 1024, + // 2048, or 4096 MBps. + // + // * For SINGLE_AZ_2, valid values are 3072 or 6144 MBps. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The value of ThroughputCapacity and ThroughputCapacityPerHAPair are + // not the same value + // + // * The value of ThroughputCapacityPerHAPair is not a valid value. + ThroughputCapacityPerHAPair *int64 `min:"128" type:"integer"` // A recurring weekly time, in the format D:HH:MM. // @@ -8613,15 +9352,18 @@ if s.FsxAdminPassword != nil && len(*s.FsxAdminPassword) < 8 { invalidParams.Add(request.NewErrParamMinLen("FsxAdminPassword", 8)) } + if s.HAPairs != nil && *s.HAPairs < 1 { + invalidParams.Add(request.NewErrParamMinValue("HAPairs", 1)) + } if s.PreferredSubnetId != nil && len(*s.PreferredSubnetId) < 15 { invalidParams.Add(request.NewErrParamMinLen("PreferredSubnetId", 15)) } - if s.ThroughputCapacity == nil { - invalidParams.Add(request.NewErrParamRequired("ThroughputCapacity")) - } if s.ThroughputCapacity != nil && *s.ThroughputCapacity < 8 { invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacity", 8)) } + if s.ThroughputCapacityPerHAPair != nil && *s.ThroughputCapacityPerHAPair < 128 { + invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacityPerHAPair", 128)) + } if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) } @@ -8668,6 +9410,12 @@ return s } +// SetHAPairs sets the HAPairs field's value. +func (s *CreateFileSystemOntapConfiguration) SetHAPairs(v int64) *CreateFileSystemOntapConfiguration { + s.HAPairs = &v + return s +} + // SetPreferredSubnetId sets the PreferredSubnetId field's value. func (s *CreateFileSystemOntapConfiguration) SetPreferredSubnetId(v string) *CreateFileSystemOntapConfiguration { s.PreferredSubnetId = &v @@ -8686,6 +9434,12 @@ return s } +// SetThroughputCapacityPerHAPair sets the ThroughputCapacityPerHAPair field's value. +func (s *CreateFileSystemOntapConfiguration) SetThroughputCapacityPerHAPair(v int64) *CreateFileSystemOntapConfiguration { + s.ThroughputCapacityPerHAPair = &v + return s +} + // SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. func (s *CreateFileSystemOntapConfiguration) SetWeeklyMaintenanceStartTime(v string) *CreateFileSystemOntapConfiguration { s.WeeklyMaintenanceStartTime = &v @@ -9215,6 +9969,10 @@ type CreateOntapVolumeConfiguration struct { _ struct{} `type:"structure"` + // Use to specify configuration options for a volume’s storage aggregate or + // aggregates. + AggregateConfiguration *CreateAggregateConfiguration `type:"structure"` + // A boolean flag indicating whether tags for the volume should be copied to // backups. This value defaults to false. If it's set to true, all tags for // the volume are copied to all automatic and user-initiated backups where the @@ -9260,10 +10018,13 @@ // and users consist of both NFS and SMB clients. SecurityStyle *string `type:"string" enum:"SecurityStyle"` + // The configured size of the volume, in bytes. + SizeInBytes *int64 `type:"long"` + // Specifies the size of the volume, in megabytes (MB), that you are creating. // - // SizeInMegabytes is a required field - SizeInMegabytes *int64 `type:"integer" required:"true"` + // Deprecated: This property is deprecated, use SizeInBytes instead + SizeInMegabytes *int64 `deprecated:"true" type:"integer"` // Specifies the SnapLock configuration for an FSx for ONTAP volume. SnaplockConfiguration *CreateSnaplockConfiguration `type:"structure"` @@ -9318,6 +10079,11 @@ // * NONE - keeps a volume's data in the primary storage tier, preventing // it from being moved to the capacity pool tier. TieringPolicy *TieringPolicy `type:"structure"` + + // Use to specify the style of an ONTAP volume. For more information about FlexVols + // and FlexGroups, see Volume types (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/volume-types.html) + // in Amazon FSx for NetApp ONTAP User Guide. + VolumeStyle *string `type:"string" enum:"VolumeStyle"` } // String returns the string representation. @@ -9344,9 +10110,6 @@ if s.JunctionPath != nil && len(*s.JunctionPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("JunctionPath", 1)) } - if s.SizeInMegabytes == nil { - invalidParams.Add(request.NewErrParamRequired("SizeInMegabytes")) - } if s.SnapshotPolicy != nil && len(*s.SnapshotPolicy) < 1 { invalidParams.Add(request.NewErrParamMinLen("SnapshotPolicy", 1)) } @@ -9356,6 +10119,11 @@ if s.StorageVirtualMachineId != nil && len(*s.StorageVirtualMachineId) < 21 { invalidParams.Add(request.NewErrParamMinLen("StorageVirtualMachineId", 21)) } + if s.AggregateConfiguration != nil { + if err := s.AggregateConfiguration.Validate(); err != nil { + invalidParams.AddNested("AggregateConfiguration", err.(request.ErrInvalidParams)) + } + } if s.SnaplockConfiguration != nil { if err := s.SnaplockConfiguration.Validate(); err != nil { invalidParams.AddNested("SnaplockConfiguration", err.(request.ErrInvalidParams)) @@ -9373,6 +10141,12 @@ return nil } +// SetAggregateConfiguration sets the AggregateConfiguration field's value. +func (s *CreateOntapVolumeConfiguration) SetAggregateConfiguration(v *CreateAggregateConfiguration) *CreateOntapVolumeConfiguration { + s.AggregateConfiguration = v + return s +} + // SetCopyTagsToBackups sets the CopyTagsToBackups field's value. func (s *CreateOntapVolumeConfiguration) SetCopyTagsToBackups(v bool) *CreateOntapVolumeConfiguration { s.CopyTagsToBackups = &v @@ -9397,6 +10171,12 @@ return s } +// SetSizeInBytes sets the SizeInBytes field's value. +func (s *CreateOntapVolumeConfiguration) SetSizeInBytes(v int64) *CreateOntapVolumeConfiguration { + s.SizeInBytes = &v + return s +} + // SetSizeInMegabytes sets the SizeInMegabytes field's value. func (s *CreateOntapVolumeConfiguration) SetSizeInMegabytes(v int64) *CreateOntapVolumeConfiguration { s.SizeInMegabytes = &v @@ -9433,19 +10213,32 @@ return s } -// The snapshot configuration to use when creating an OpenZFS volume from a -// snapshot. +// SetVolumeStyle sets the VolumeStyle field's value. +func (s *CreateOntapVolumeConfiguration) SetVolumeStyle(v string) *CreateOntapVolumeConfiguration { + s.VolumeStyle = &v + return s +} + +// The snapshot configuration to use when creating an Amazon FSx for OpenZFS +// volume from a snapshot. type CreateOpenZFSOriginSnapshotConfiguration struct { _ struct{} `type:"structure"` - // The strategy used when copying data from the snapshot to the new volume. + // Specifies the strategy used when copying data from the snapshot to the new + // volume. // // * CLONE - The new volume references the data in the origin snapshot. Cloning // a snapshot is faster than copying data from the snapshot to a new volume // and doesn't consume disk throughput. However, the origin snapshot can't // be deleted if there is a volume using its copied data. // - // * FULL_COPY - Copies all data from the snapshot to the new volume. + // * FULL_COPY - Copies all data from the snapshot to the new volume. Specify + // this option to create the volume from a snapshot on another FSx for OpenZFS + // file system. + // + // The INCREMENTAL_COPY option is only for updating an existing volume by using + // a snapshot from another FSx for OpenZFS file system. For more information, + // see CopySnapshotAndUpdateVolume (https://docs.aws.amazon.com/fsx/latest/APIReference/API_CopySnapshotAndUpdateVolume.html). // // CopyStrategy is a required field CopyStrategy *string `type:"string" required:"true" enum:"OpenZFSCopyStrategy"` @@ -13747,6 +14540,60 @@ return s } +type DescribeSharedVpcConfigurationInput 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 DescribeSharedVpcConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeSharedVpcConfigurationInput) GoString() string { + return s.String() +} + +type DescribeSharedVpcConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Indicates whether participant accounts can create FSx for ONTAP Multi-AZ + // file systems in shared subnets. + EnableFsxRouteTableUpdatesFromParticipantAccounts *string `min:"4" 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 DescribeSharedVpcConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeSharedVpcConfigurationOutput) GoString() string { + return s.String() +} + +// SetEnableFsxRouteTableUpdatesFromParticipantAccounts sets the EnableFsxRouteTableUpdatesFromParticipantAccounts field's value. +func (s *DescribeSharedVpcConfigurationOutput) SetEnableFsxRouteTableUpdatesFromParticipantAccounts(v string) *DescribeSharedVpcConfigurationOutput { + s.EnableFsxRouteTableUpdatesFromParticipantAccounts = &v + return s +} + type DescribeSnapshotsInput struct { _ struct{} `type:"structure"` @@ -14232,6 +15079,14 @@ _ struct{} `type:"structure"` // The total number of SSD IOPS provisioned for the file system. + // + // The minimum and maximum values for this property depend on the value of HAPairs + // and StorageCapacity. The minimum value is calculated as StorageCapacity * + // 3 * HAPairs (3 IOPS per GB of StorageCapacity). The maximum value is calculated + // as 200,000 * HAPairs. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) if the value + // of Iops is outside of the minimum or maximum values. Iops *int64 `type:"long"` // Specifies whether the file system is using the AUTOMATIC setting of SSD IOPS @@ -15256,6 +16111,9 @@ ResourceARN *string `min:"8" type:"string"` // The storage capacity of the file system in gibibytes (GiB). + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) if the value + // of StorageCapacity is outside of the minimum or maximum values. StorageCapacity *int64 `type:"integer"` // The type of storage the file system is using. If set to SSD, the file system @@ -17318,6 +18176,9 @@ // // * SINGLE_AZ_1 - A file system configured for Single-AZ redundancy. // + // * SINGLE_AZ_2 - A file system configured with multiple high-availability + // (HA) pairs for Single-AZ redundancy. + // // For information about the use cases for Multi-AZ and Single-AZ deployments, // refer to Choosing Multi-AZ or Single-AZ file system deployment (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/high-availability-multiAZ.html). DeploymentType *string `type:"string" enum:"OntapDeploymentType"` @@ -17348,6 +18209,21 @@ // String and GoString methods. FsxAdminPassword *string `min:"8" type:"string" sensitive:"true"` + // Specifies how many high-availability (HA) file server pairs the file system + // will have. The default value is 1. The value of this property affects the + // values of StorageCapacity, Iops, and ThroughputCapacity. For more information, + // see High-availability (HA) pairs (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/HA-pairs.html) + // in the FSx for ONTAP user guide. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The value of HAPairs is less than 1 or greater than 6. + // + // * The value of HAPairs is greater than 1 and the value of DeploymentType + // is SINGLE_AZ_1 or MULTI_AZ_1. + HAPairs *int64 `min:"1" type:"integer"` + // The ID for a subnet. A subnet is a range of IP addresses in your virtual // private cloud (VPC). For more information, see VPC and subnets (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) // in the Amazon VPC User Guide. @@ -17361,6 +18237,34 @@ // (MBps). ThroughputCapacity *int64 `min:"8" type:"integer"` + // Use to choose the throughput capacity per HA pair. When the value of HAPairs + // is equal to 1, the value of ThroughputCapacityPerHAPair is the total throughput + // for the file system. + // + // This field and ThroughputCapacity cannot be defined in the same API call, + // but one is required. + // + // This field and ThroughputCapacity are the same for file systems with one + // HA pair. + // + // * For SINGLE_AZ_1 and MULTI_AZ_1, valid values are 128, 256, 512, 1024, + // 2048, or 4096 MBps. + // + // * For SINGLE_AZ_2, valid values are 3072 or 6144 MBps. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The value of ThroughputCapacity and ThroughputCapacityPerHAPair are + // not the same value. + // + // * The value of deployment type is SINGLE_AZ_2 and ThroughputCapacity / + // ThroughputCapacityPerHAPair is a valid HA pair (a value between 2 and + // 6). + // + // * The value of ThroughputCapacityPerHAPair is not a valid value. + ThroughputCapacityPerHAPair *int64 `min:"128" type:"integer"` + // A recurring weekly time, in the format D:HH:MM. // // D is the day of the week, for which 1 represents Monday and 7 represents @@ -17434,6 +18338,12 @@ return s } +// SetHAPairs sets the HAPairs field's value. +func (s *OntapFileSystemConfiguration) SetHAPairs(v int64) *OntapFileSystemConfiguration { + s.HAPairs = &v + return s +} + // SetPreferredSubnetId sets the PreferredSubnetId field's value. func (s *OntapFileSystemConfiguration) SetPreferredSubnetId(v string) *OntapFileSystemConfiguration { s.PreferredSubnetId = &v @@ -17452,6 +18362,12 @@ return s } +// SetThroughputCapacityPerHAPair sets the ThroughputCapacityPerHAPair field's value. +func (s *OntapFileSystemConfiguration) SetThroughputCapacityPerHAPair(v int64) *OntapFileSystemConfiguration { + s.ThroughputCapacityPerHAPair = &v + return s +} + // SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. func (s *OntapFileSystemConfiguration) SetWeeklyMaintenanceStartTime(v string) *OntapFileSystemConfiguration { s.WeeklyMaintenanceStartTime = &v @@ -17462,6 +18378,10 @@ type OntapVolumeConfiguration struct { _ struct{} `type:"structure"` + // This structure specifies configuration options for a volume’s storage aggregate + // or aggregates. + AggregateConfiguration *AggregateConfiguration `type:"structure"` + // A boolean flag indicating whether tags for the volume should be copied to // backups. This value defaults to false. If it's set to true, all tags for // the volume are copied to all automatic and user-initiated backups where the @@ -17507,6 +18427,9 @@ // The security style for the volume, which can be UNIX, NTFS, or MIXED. SecurityStyle *string `type:"string" enum:"SecurityStyle"` + // The configured size of the volume, in bytes. + SizeInBytes *int64 `type:"long"` + // The configured size of the volume, in megabytes (MBs). SizeInMegabytes *int64 `type:"integer"` @@ -17555,6 +18478,11 @@ // The volume's universally unique identifier (UUID). UUID *string `type:"string"` + + // Use to specify the style of an ONTAP volume. For more information about FlexVols + // and FlexGroups, see Volume types (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/volume-types.html) + // in Amazon FSx for NetApp ONTAP User Guide. + VolumeStyle *string `type:"string" enum:"VolumeStyle"` } // String returns the string representation. @@ -17575,6 +18503,12 @@ return s.String() } +// SetAggregateConfiguration sets the AggregateConfiguration field's value. +func (s *OntapVolumeConfiguration) SetAggregateConfiguration(v *AggregateConfiguration) *OntapVolumeConfiguration { + s.AggregateConfiguration = v + return s +} + // SetCopyTagsToBackups sets the CopyTagsToBackups field's value. func (s *OntapVolumeConfiguration) SetCopyTagsToBackups(v bool) *OntapVolumeConfiguration { s.CopyTagsToBackups = &v @@ -17605,6 +18539,12 @@ return s } +// SetSizeInBytes sets the SizeInBytes field's value. +func (s *OntapVolumeConfiguration) SetSizeInBytes(v int64) *OntapVolumeConfiguration { + s.SizeInBytes = &v + return s +} + // SetSizeInMegabytes sets the SizeInMegabytes field's value. func (s *OntapVolumeConfiguration) SetSizeInMegabytes(v int64) *OntapVolumeConfiguration { s.SizeInMegabytes = &v @@ -17653,6 +18593,12 @@ return s } +// SetVolumeStyle sets the VolumeStyle field's value. +func (s *OntapVolumeConfiguration) SetVolumeStyle(v string) *OntapVolumeConfiguration { + s.VolumeStyle = &v + return s +} + // Specifies who can mount an OpenZFS file system and the options available // while mounting the file system. type OpenZFSClientConfiguration struct { @@ -18105,8 +19051,8 @@ return s } -// The snapshot configuration to use when creating an OpenZFS volume from a -// snapshot. +// The snapshot configuration used when creating an Amazon FSx for OpenZFS volume +// from a snapshot. type OpenZFSOriginSnapshotConfiguration struct { _ struct{} `type:"structure"` @@ -18118,6 +19064,10 @@ // be deleted if there is a volume using its copied data. // // * FULL_COPY - Copies all data from the snapshot to the new volume. + // + // The INCREMENTAL_COPY option is only for updating an existing volume by using + // a snapshot from another FSx for OpenZFS file system. For more information, + // see CopySnapshotAndUpdateVolume (https://docs.aws.amazon.com/fsx/latest/APIReference/API_CopySnapshotAndUpdateVolume.html). CopyStrategy *string `type:"string" enum:"OpenZFSCopyStrategy"` // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify @@ -18263,10 +19213,19 @@ // snapshots should be deleted when a volume is restored from snapshot. DeleteClonedVolumes *bool `type:"boolean"` + // A Boolean value indicating whether snapshot data that differs between the + // current state and the specified snapshot should be overwritten when a volume + // is restored from a snapshot. + DeleteIntermediateData *bool `type:"boolean"` + // A Boolean value indicating whether snapshots between the current state and // the specified snapshot should be deleted when a volume is restored from snapshot. DeleteIntermediateSnaphots *bool `type:"boolean"` + // The ID of the snapshot that's being copied or was most recently copied to + // the destination volume. + DestinationSnapshot *string `min:"11" type:"string"` + // The configuration object for mounting a Network File System (NFS) file system. NfsExports []*OpenZFSNfsExport `type:"list"` @@ -18289,6 +19248,13 @@ // Specifies the ID of the snapshot to which the volume was restored. RestoreToSnapshot *string `min:"11" type:"string"` + // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify + // Amazon Web Services resources. We require an ARN when you need to specify + // a resource unambiguously across all of Amazon Web Services. For more information, + // see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + SourceSnapshotARN *string `min:"8" type:"string"` + // The maximum amount of storage in gibibtyes (GiB) that the volume can use // from its parent. You can specify a quota larger than the storage on the parent // volume. @@ -18341,12 +19307,24 @@ return s } +// SetDeleteIntermediateData sets the DeleteIntermediateData field's value. +func (s *OpenZFSVolumeConfiguration) SetDeleteIntermediateData(v bool) *OpenZFSVolumeConfiguration { + s.DeleteIntermediateData = &v + return s +} + // SetDeleteIntermediateSnaphots sets the DeleteIntermediateSnaphots field's value. func (s *OpenZFSVolumeConfiguration) SetDeleteIntermediateSnaphots(v bool) *OpenZFSVolumeConfiguration { s.DeleteIntermediateSnaphots = &v return s } +// SetDestinationSnapshot sets the DestinationSnapshot field's value. +func (s *OpenZFSVolumeConfiguration) SetDestinationSnapshot(v string) *OpenZFSVolumeConfiguration { + s.DestinationSnapshot = &v + return s +} + // SetNfsExports sets the NfsExports field's value. func (s *OpenZFSVolumeConfiguration) SetNfsExports(v []*OpenZFSNfsExport) *OpenZFSVolumeConfiguration { s.NfsExports = v @@ -18383,6 +19361,12 @@ return s } +// SetSourceSnapshotARN sets the SourceSnapshotARN field's value. +func (s *OpenZFSVolumeConfiguration) SetSourceSnapshotARN(v string) *OpenZFSVolumeConfiguration { + s.SourceSnapshotARN = &v + return s +} + // SetStorageCapacityQuotaGiB sets the StorageCapacityQuotaGiB field's value. func (s *OpenZFSVolumeConfiguration) SetStorageCapacityQuotaGiB(v int64) *OpenZFSVolumeConfiguration { s.StorageCapacityQuotaGiB = &v @@ -19893,6 +20877,100 @@ return s.RespMetadata.RequestID } +type StartMisconfiguredStateRecoveryInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 63 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The globally unique ID of the file system, assigned by Amazon FSx. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" 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 StartMisconfiguredStateRecoveryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMisconfiguredStateRecoveryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartMisconfiguredStateRecoveryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartMisconfiguredStateRecoveryInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *StartMisconfiguredStateRecoveryInput) SetClientRequestToken(v string) *StartMisconfiguredStateRecoveryInput { + s.ClientRequestToken = &v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *StartMisconfiguredStateRecoveryInput) SetFileSystemId(v string) *StartMisconfiguredStateRecoveryInput { + s.FileSystemId = &v + return s +} + +type StartMisconfiguredStateRecoveryOutput struct { + _ struct{} `type:"structure"` + + // A description of a specific Amazon FSx file system. + FileSystem *FileSystem `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 StartMisconfiguredStateRecoveryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMisconfiguredStateRecoveryOutput) GoString() string { + return s.String() +} + +// SetFileSystem sets the FileSystem field's value. +func (s *StartMisconfiguredStateRecoveryOutput) SetFileSystem(v *FileSystem) *StartMisconfiguredStateRecoveryOutput { + s.FileSystem = v + return s +} + // Describes the Amazon FSx for NetApp ONTAP storage virtual machine (SVM) configuration. type StorageVirtualMachine struct { _ struct{} `type:"structure"` @@ -21252,6 +22330,20 @@ // Logs. LogConfiguration *LustreLogCreateConfiguration `type:"structure"` + // The throughput of an Amazon FSx for Lustre Persistent SSD-based file system, + // measured in megabytes per second per tebibyte (MB/s/TiB). You can increase + // or decrease your file system's throughput. Valid values depend on the deployment + // type of the file system, as follows: + // + // * For PERSISTENT_1 SSD-based deployment types, valid values are 50, 100, + // and 200 MB/s/TiB. + // + // * For PERSISTENT_2 SSD-based deployment types, valid values are 125, 250, + // 500, and 1000 MB/s/TiB. + // + // For more information, see Managing throughput capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-throughput-capacity.html). + PerUnitStorageThroughput *int64 `min:"12" type:"integer"` + // The Lustre root squash configuration used when updating an Amazon FSx for // Lustre file system. When enabled, root squash restricts root-level access // from clients that try to access your file system as a root user. @@ -21287,6 +22379,9 @@ if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) } + if s.PerUnitStorageThroughput != nil && *s.PerUnitStorageThroughput < 12 { + invalidParams.Add(request.NewErrParamMinValue("PerUnitStorageThroughput", 12)) + } if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) } @@ -21337,6 +22432,12 @@ return s } +// SetPerUnitStorageThroughput sets the PerUnitStorageThroughput field's value. +func (s *UpdateFileSystemLustreConfiguration) SetPerUnitStorageThroughput(v int64) *UpdateFileSystemLustreConfiguration { + s.PerUnitStorageThroughput = &v + return s +} + // SetRootSquashConfiguration sets the RootSquashConfiguration field's value. func (s *UpdateFileSystemLustreConfiguration) SetRootSquashConfiguration(v *LustreRootSquashConfiguration) *UpdateFileSystemLustreConfiguration { s.RootSquashConfiguration = v @@ -21392,12 +22493,43 @@ RemoveRouteTableIds []*string `type:"list"` // Enter a new value to change the amount of throughput capacity for the file - // system. Throughput capacity is measured in megabytes per second (MBps). Valid - // values are 128, 256, 512, 1024, 2048, and 4096 MBps. For more information, - // see Managing throughput capacity (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-throughput-capacity.html) + // system in megabytes per second (MBps). For more information, see Managing + // throughput capacity (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-throughput-capacity.html) // in the FSx for ONTAP User Guide. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // * The value of ThroughputCapacity and ThroughputCapacityPerHAPair are + // not the same value. + // + // * The value of ThroughputCapacity when divided by the value of HAPairs + // is outside of the valid range for ThroughputCapacity. ThroughputCapacity *int64 `min:"8" type:"integer"` + // Use to choose the throughput capacity per HA pair, rather than the total + // throughput for the file system. + // + // This field and ThroughputCapacity cannot be defined in the same API call, + // but one is required. + // + // This field and ThroughputCapacity are the same for file systems with one + // HA pair. + // + // * For SINGLE_AZ_1 and MULTI_AZ_1, valid values are 128, 256, 512, 1024, + // 2048, or 4096 MBps. + // + // * For SINGLE_AZ_2, valid values are 3072 or 6144 MBps. + // + // Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following + // conditions: + // + // The value of ThroughputCapacity and ThroughputCapacityPerHAPair are not the + // same value. + // + // The value of ThroughputCapacityPerHAPair is not a valid value. + ThroughputCapacityPerHAPair *int64 `min:"128" type:"integer"` + // A recurring weekly time, in the format D:HH:MM. // // D is the day of the week, for which 1 represents Monday and 7 represents @@ -21441,6 +22573,9 @@ if s.ThroughputCapacity != nil && *s.ThroughputCapacity < 8 { invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacity", 8)) } + if s.ThroughputCapacityPerHAPair != nil && *s.ThroughputCapacityPerHAPair < 128 { + invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacityPerHAPair", 128)) + } if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) } @@ -21493,6 +22628,12 @@ return s } +// SetThroughputCapacityPerHAPair sets the ThroughputCapacityPerHAPair field's value. +func (s *UpdateFileSystemOntapConfiguration) SetThroughputCapacityPerHAPair(v int64) *UpdateFileSystemOntapConfiguration { + s.ThroughputCapacityPerHAPair = &v + return s +} + // SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. func (s *UpdateFileSystemOntapConfiguration) SetWeeklyMaintenanceStartTime(v string) *UpdateFileSystemOntapConfiguration { s.WeeklyMaintenanceStartTime = &v @@ -21553,7 +22694,7 @@ // as follows: // // * For MULTI_AZ_1 and SINGLE_AZ_2, valid values are 160, 320, 640, 1280, - // 2560, 3840, 5120, 7680, or 10240 MBps. + // 2560, 3840, 5120, 7680, or 10240 MB/s. // // * For SINGLE_AZ_1, valid values are 64, 128, 256, 512, 1024, 2048, 3072, // or 4096 MB/s. @@ -21852,6 +22993,9 @@ // The security style for the volume, which can be UNIX, NTFS, or MIXED. SecurityStyle *string `type:"string" enum:"SecurityStyle"` + // The configured size of the volume, in bytes. + SizeInBytes *int64 `type:"long"` + // Specifies the size of the volume in megabytes. SizeInMegabytes *int64 `type:"integer"` @@ -21950,6 +23094,12 @@ return s } +// SetSizeInBytes sets the SizeInBytes field's value. +func (s *UpdateOntapVolumeConfiguration) SetSizeInBytes(v int64) *UpdateOntapVolumeConfiguration { + s.SizeInBytes = &v + return s +} + // SetSizeInMegabytes sets the SizeInMegabytes field's value. func (s *UpdateOntapVolumeConfiguration) SetSizeInMegabytes(v int64) *UpdateOntapVolumeConfiguration { s.SizeInMegabytes = &v @@ -22128,6 +23278,97 @@ return s } +type UpdateSharedVpcConfigurationInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 63 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Specifies whether participant accounts can create FSx for ONTAP Multi-AZ + // file systems in shared subnets. Set to true to enable or false to disable. + EnableFsxRouteTableUpdatesFromParticipantAccounts *string `min:"4" 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 UpdateSharedVpcConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSharedVpcConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSharedVpcConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSharedVpcConfigurationInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.EnableFsxRouteTableUpdatesFromParticipantAccounts != nil && len(*s.EnableFsxRouteTableUpdatesFromParticipantAccounts) < 4 { + invalidParams.Add(request.NewErrParamMinLen("EnableFsxRouteTableUpdatesFromParticipantAccounts", 4)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpdateSharedVpcConfigurationInput) SetClientRequestToken(v string) *UpdateSharedVpcConfigurationInput { + s.ClientRequestToken = &v + return s +} + +// SetEnableFsxRouteTableUpdatesFromParticipantAccounts sets the EnableFsxRouteTableUpdatesFromParticipantAccounts field's value. +func (s *UpdateSharedVpcConfigurationInput) SetEnableFsxRouteTableUpdatesFromParticipantAccounts(v string) *UpdateSharedVpcConfigurationInput { + s.EnableFsxRouteTableUpdatesFromParticipantAccounts = &v + return s +} + +type UpdateSharedVpcConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Indicates whether participant accounts can create FSx for ONTAP Multi-AZ + // file systems in shared subnets. + EnableFsxRouteTableUpdatesFromParticipantAccounts *string `min:"4" 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 UpdateSharedVpcConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSharedVpcConfigurationOutput) GoString() string { + return s.String() +} + +// SetEnableFsxRouteTableUpdatesFromParticipantAccounts sets the EnableFsxRouteTableUpdatesFromParticipantAccounts field's value. +func (s *UpdateSharedVpcConfigurationOutput) SetEnableFsxRouteTableUpdatesFromParticipantAccounts(v string) *UpdateSharedVpcConfigurationOutput { + s.EnableFsxRouteTableUpdatesFromParticipantAccounts = &v + return s +} + // Updates the SnapLock configuration for an existing FSx for ONTAP volume. type UpdateSnaplockConfiguration struct { _ struct{} `type:"structure"` @@ -22670,7 +23911,7 @@ return s } -// Describes an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume. +// Describes an Amazon FSx volume. type Volume struct { _ struct{} `type:"structure"` @@ -23408,7 +24649,7 @@ // completed successfully, the parent FILE_SYSTEM_UPDATE action status changes // to COMPLETED. For more information, see Managing storage capacity (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-storage-capacity.html) // in the Amazon FSx for Windows File Server User Guide, Managing storage -// and throughput capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-storage-capacity.html) +// capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-storage-capacity.html) // in the Amazon FSx for Lustre User Guide, and Managing storage capacity // and provisioned IOPS (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-storage-capacity.html) // in the Amazon FSx for NetApp ONTAP User Guide. @@ -23436,9 +24677,8 @@ // has been completed successfully, the parent FILE_SYSTEM_UPDATE action // status changes to COMPLETED. // -// - VOLUME_UPDATE - A volume update to an Amazon FSx for NetApp ONTAP or -// Amazon FSx for OpenZFS volume initiated from the Amazon FSx console, API -// (UpdateVolume), or CLI (update-volume). +// - VOLUME_UPDATE - A volume update to an Amazon FSx for OpenZFS volume +// initiated from the Amazon FSx console, API (UpdateVolume), or CLI (update-volume). // // - VOLUME_RESTORE - An Amazon FSx for OpenZFS volume is returned to the // state saved by the specified snapshot, initiated from an API (RestoreVolumeFromSnapshot) @@ -23449,6 +24689,15 @@ // // - RELEASE_NFS_V3_LOCKS - Tracks the release of Network File System (NFS) // V3 locks on an Amazon FSx for OpenZFS file system. +// +// - VOLUME_INITIALIZE_WITH_SNAPSHOT - A volume is being created from a snapshot +// on a different FSx for OpenZFS file system. You can initiate this from +// the Amazon FSx console, API (CreateVolume), or CLI (create-volume) when +// using the using the FULL_COPY strategy. +// +// - VOLUME_UPDATE_WITH_SNAPSHOT - A volume is being updated from a snapshot +// on a different FSx for OpenZFS file system. You can initiate this from +// the Amazon FSx console, API (CopySnapshotAndUpdateVolume), or CLI (copy-snapshot-and-update-volume). const ( // AdministrativeActionTypeFileSystemUpdate is a AdministrativeActionType enum value AdministrativeActionTypeFileSystemUpdate = "FILE_SYSTEM_UPDATE" @@ -23482,6 +24731,15 @@ // AdministrativeActionTypeStorageTypeOptimization is a AdministrativeActionType enum value AdministrativeActionTypeStorageTypeOptimization = "STORAGE_TYPE_OPTIMIZATION" + + // AdministrativeActionTypeMisconfiguredStateRecovery is a AdministrativeActionType enum value + AdministrativeActionTypeMisconfiguredStateRecovery = "MISCONFIGURED_STATE_RECOVERY" + + // AdministrativeActionTypeVolumeUpdateWithSnapshot is a AdministrativeActionType enum value + AdministrativeActionTypeVolumeUpdateWithSnapshot = "VOLUME_UPDATE_WITH_SNAPSHOT" + + // AdministrativeActionTypeVolumeInitializeWithSnapshot is a AdministrativeActionType enum value + AdministrativeActionTypeVolumeInitializeWithSnapshot = "VOLUME_INITIALIZE_WITH_SNAPSHOT" ) // AdministrativeActionType_Values returns all elements of the AdministrativeActionType enum @@ -23498,6 +24756,9 @@ AdministrativeActionTypeThroughputOptimization, AdministrativeActionTypeIopsOptimization, AdministrativeActionTypeStorageTypeOptimization, + AdministrativeActionTypeMisconfiguredStateRecovery, + AdministrativeActionTypeVolumeUpdateWithSnapshot, + AdministrativeActionTypeVolumeInitializeWithSnapshot, } } @@ -24133,6 +25394,9 @@ // OntapDeploymentTypeSingleAz1 is a OntapDeploymentType enum value OntapDeploymentTypeSingleAz1 = "SINGLE_AZ_1" + + // OntapDeploymentTypeSingleAz2 is a OntapDeploymentType enum value + OntapDeploymentTypeSingleAz2 = "SINGLE_AZ_2" ) // OntapDeploymentType_Values returns all elements of the OntapDeploymentType enum @@ -24140,6 +25404,7 @@ return []string{ OntapDeploymentTypeMultiAz1, OntapDeploymentTypeSingleAz1, + OntapDeploymentTypeSingleAz2, } } @@ -24169,6 +25434,9 @@ // OpenZFSCopyStrategyFullCopy is a OpenZFSCopyStrategy enum value OpenZFSCopyStrategyFullCopy = "FULL_COPY" + + // OpenZFSCopyStrategyIncrementalCopy is a OpenZFSCopyStrategy enum value + OpenZFSCopyStrategyIncrementalCopy = "INCREMENTAL_COPY" ) // OpenZFSCopyStrategy_Values returns all elements of the OpenZFSCopyStrategy enum @@ -24176,6 +25444,7 @@ return []string{ OpenZFSCopyStrategyClone, OpenZFSCopyStrategyFullCopy, + OpenZFSCopyStrategyIncrementalCopy, } } @@ -24650,6 +25919,26 @@ } const ( + // UpdateOpenZFSVolumeOptionDeleteIntermediateSnapshots is a UpdateOpenZFSVolumeOption enum value + UpdateOpenZFSVolumeOptionDeleteIntermediateSnapshots = "DELETE_INTERMEDIATE_SNAPSHOTS" + + // UpdateOpenZFSVolumeOptionDeleteClonedVolumes is a UpdateOpenZFSVolumeOption enum value + UpdateOpenZFSVolumeOptionDeleteClonedVolumes = "DELETE_CLONED_VOLUMES" + + // UpdateOpenZFSVolumeOptionDeleteIntermediateData is a UpdateOpenZFSVolumeOption enum value + UpdateOpenZFSVolumeOptionDeleteIntermediateData = "DELETE_INTERMEDIATE_DATA" +) + +// UpdateOpenZFSVolumeOption_Values returns all elements of the UpdateOpenZFSVolumeOption enum +func UpdateOpenZFSVolumeOption_Values() []string { + return []string{ + UpdateOpenZFSVolumeOptionDeleteIntermediateSnapshots, + UpdateOpenZFSVolumeOptionDeleteClonedVolumes, + UpdateOpenZFSVolumeOptionDeleteIntermediateData, + } +} + +const ( // VolumeFilterNameFileSystemId is a VolumeFilterName enum value VolumeFilterNameFileSystemId = "file-system-id" @@ -24701,6 +25990,22 @@ } } +const ( + // VolumeStyleFlexvol is a VolumeStyle enum value + VolumeStyleFlexvol = "FLEXVOL" + + // VolumeStyleFlexgroup is a VolumeStyle enum value + VolumeStyleFlexgroup = "FLEXGROUP" +) + +// VolumeStyle_Values returns all elements of the VolumeStyle enum +func VolumeStyle_Values() []string { + return []string{ + VolumeStyleFlexvol, + VolumeStyleFlexgroup, + } +} + const ( // VolumeTypeOntap is a VolumeType enum value VolumeTypeOntap = "ONTAP" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/fsx/fsxiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/fsx/fsxiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/fsx/fsxiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/fsx/fsxiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,6 +72,10 @@ CopyBackupWithContext(aws.Context, *fsx.CopyBackupInput, ...request.Option) (*fsx.CopyBackupOutput, error) CopyBackupRequest(*fsx.CopyBackupInput) (*request.Request, *fsx.CopyBackupOutput) + CopySnapshotAndUpdateVolume(*fsx.CopySnapshotAndUpdateVolumeInput) (*fsx.CopySnapshotAndUpdateVolumeOutput, error) + CopySnapshotAndUpdateVolumeWithContext(aws.Context, *fsx.CopySnapshotAndUpdateVolumeInput, ...request.Option) (*fsx.CopySnapshotAndUpdateVolumeOutput, error) + CopySnapshotAndUpdateVolumeRequest(*fsx.CopySnapshotAndUpdateVolumeInput) (*request.Request, *fsx.CopySnapshotAndUpdateVolumeOutput) + CreateBackup(*fsx.CreateBackupInput) (*fsx.CreateBackupOutput, error) CreateBackupWithContext(aws.Context, *fsx.CreateBackupInput, ...request.Option) (*fsx.CreateBackupOutput, error) CreateBackupRequest(*fsx.CreateBackupInput) (*request.Request, *fsx.CreateBackupOutput) @@ -182,6 +186,10 @@ DescribeFileSystemsPages(*fsx.DescribeFileSystemsInput, func(*fsx.DescribeFileSystemsOutput, bool) bool) error DescribeFileSystemsPagesWithContext(aws.Context, *fsx.DescribeFileSystemsInput, func(*fsx.DescribeFileSystemsOutput, bool) bool, ...request.Option) error + DescribeSharedVpcConfiguration(*fsx.DescribeSharedVpcConfigurationInput) (*fsx.DescribeSharedVpcConfigurationOutput, error) + DescribeSharedVpcConfigurationWithContext(aws.Context, *fsx.DescribeSharedVpcConfigurationInput, ...request.Option) (*fsx.DescribeSharedVpcConfigurationOutput, error) + DescribeSharedVpcConfigurationRequest(*fsx.DescribeSharedVpcConfigurationInput) (*request.Request, *fsx.DescribeSharedVpcConfigurationOutput) + DescribeSnapshots(*fsx.DescribeSnapshotsInput) (*fsx.DescribeSnapshotsOutput, error) DescribeSnapshotsWithContext(aws.Context, *fsx.DescribeSnapshotsInput, ...request.Option) (*fsx.DescribeSnapshotsOutput, error) DescribeSnapshotsRequest(*fsx.DescribeSnapshotsInput) (*request.Request, *fsx.DescribeSnapshotsOutput) @@ -222,6 +230,10 @@ RestoreVolumeFromSnapshotWithContext(aws.Context, *fsx.RestoreVolumeFromSnapshotInput, ...request.Option) (*fsx.RestoreVolumeFromSnapshotOutput, error) RestoreVolumeFromSnapshotRequest(*fsx.RestoreVolumeFromSnapshotInput) (*request.Request, *fsx.RestoreVolumeFromSnapshotOutput) + StartMisconfiguredStateRecovery(*fsx.StartMisconfiguredStateRecoveryInput) (*fsx.StartMisconfiguredStateRecoveryOutput, error) + StartMisconfiguredStateRecoveryWithContext(aws.Context, *fsx.StartMisconfiguredStateRecoveryInput, ...request.Option) (*fsx.StartMisconfiguredStateRecoveryOutput, error) + StartMisconfiguredStateRecoveryRequest(*fsx.StartMisconfiguredStateRecoveryInput) (*request.Request, *fsx.StartMisconfiguredStateRecoveryOutput) + TagResource(*fsx.TagResourceInput) (*fsx.TagResourceOutput, error) TagResourceWithContext(aws.Context, *fsx.TagResourceInput, ...request.Option) (*fsx.TagResourceOutput, error) TagResourceRequest(*fsx.TagResourceInput) (*request.Request, *fsx.TagResourceOutput) @@ -242,6 +254,10 @@ UpdateFileSystemWithContext(aws.Context, *fsx.UpdateFileSystemInput, ...request.Option) (*fsx.UpdateFileSystemOutput, error) UpdateFileSystemRequest(*fsx.UpdateFileSystemInput) (*request.Request, *fsx.UpdateFileSystemOutput) + UpdateSharedVpcConfiguration(*fsx.UpdateSharedVpcConfigurationInput) (*fsx.UpdateSharedVpcConfigurationOutput, error) + UpdateSharedVpcConfigurationWithContext(aws.Context, *fsx.UpdateSharedVpcConfigurationInput, ...request.Option) (*fsx.UpdateSharedVpcConfigurationOutput, error) + UpdateSharedVpcConfigurationRequest(*fsx.UpdateSharedVpcConfigurationInput) (*request.Request, *fsx.UpdateSharedVpcConfigurationOutput) + UpdateSnapshot(*fsx.UpdateSnapshotInput) (*fsx.UpdateSnapshotOutput, error) UpdateSnapshotWithContext(aws.Context, *fsx.UpdateSnapshotInput, ...request.Option) (*fsx.UpdateSnapshotOutput, error) UpdateSnapshotRequest(*fsx.UpdateSnapshotInput) (*request.Request, *fsx.UpdateSnapshotOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/gamelift/api.go golang-github-aws-aws-sdk-go-1.48.14/service/gamelift/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/gamelift/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/gamelift/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -605,6 +605,14 @@ // If successful, this operation creates a new Fleet resource and places it // in NEW status, which prompts Amazon GameLift to initiate the fleet creation // workflow (https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-all.html#fleets-creation-workflow). +// You can track fleet creation by checking fleet status using DescribeFleetAttributes +// and DescribeFleetLocationAttributes/, or by monitoring fleet creation events +// using DescribeFleetEvents. +// +// When the fleet status changes to ACTIVE, you can enable automatic scaling +// with PutScalingPolicy and set capacity for the home Region with UpdateFleetCapacity. +// When the status of each remote location reaches ACTIVE, you can set capacity +// by location using UpdateFleetCapacity. // // # Learn more // @@ -2935,8 +2943,8 @@ // Deletes a custom location. // // Before deleting a custom location, review any fleets currently using the -// custom location and deregister the location if it is in use. For more information -// see, DeregisterCompute (https://docs.aws.amazon.com/gamelift/latest/apireference/API_DeregisterCompute.html). +// custom location and deregister the location if it is in use. For more information, +// see DeregisterCompute (https://docs.aws.amazon.com/gamelift/latest/apireference/API_DeregisterCompute.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 @@ -9858,6 +9866,10 @@ // the request. Clients can retry such requests immediately or after a waiting // period. // +// - LimitExceededException +// The requested operation would cause the resource to exceed the allowed service +// limit. Resolve the issue before retrying. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/RegisterCompute func (c *GameLift) RegisterCompute(input *RegisterComputeInput) (*RegisterComputeOutput, error) { req, out := c.RegisterComputeRequest(input) @@ -13150,8 +13162,12 @@ // A unique identifier for a player delivering the response. This parameter // can include one or multiple player IDs. // + // PlayerIds is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AcceptMatchInput's + // String and GoString methods. + // // PlayerIds is a required field - PlayerIds []*string `type:"list" required:"true"` + PlayerIds []*string `type:"list" required:"true" sensitive:"true"` // A unique identifier for a matchmaking ticket. The ticket must be in status // REQUIRES_ACCEPTANCE; otherwise this request will fail. @@ -13911,7 +13927,11 @@ // The IP address of a compute resource. Amazon GameLift requires a DNS name // or IP address for a compute. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Compute's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // The name of the custom location you added to the fleet that this compute // resource resides in. @@ -14415,8 +14435,8 @@ // The unique identifier for a custom game server build to be deployed on fleet // instances. You can use either the build ID or ARN. The build must be uploaded - // to Amazon GameLift and in READY status. This fleet property cannot be changed - // later. + // to Amazon GameLift and in READY status. This fleet property can't be changed + // after the fleet is created. BuildId *string `type:"string"` // Prompts Amazon GameLift to generate a TLS/SSL certificate for the fleet. @@ -14462,20 +14482,28 @@ // Indicates whether to use On-Demand or Spot instances for this fleet. By default, // this property is set to ON_DEMAND. Learn more about when to use On-Demand // versus Spot Instances (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-ec2-instances.html#gamelift-ec2-instances-spot). - // This property cannot be changed after the fleet is created. + // This fleet property can't be changed after the fleet is created. FleetType *string `type:"string" enum:"FleetType"` - // A unique identifier for an IAM role that manages access to your Amazon Web - // Services services. With an instance role ARN set, any application that runs - // on an instance in this fleet can assume the role, including install scripts, - // server processes, and daemons (background processes). Create a role or look - // up a role's ARN by using the IAM dashboard (https://console.aws.amazon.com/iam/) - // in the Amazon Web Services Management Console. Learn more about using on-box - // credentials for your game servers at Access external resources from a game - // server (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html). - // This property cannot be changed after the fleet is created. + // A unique identifier for an IAM role with access permissions to other Amazon + // Web Services services. Any application that runs on an instance in the fleet--including + // install scripts, server processes, and other processes--can use these permissions + // to interact with Amazon Web Services resources that you own or have access + // to. For more information about using the role with your game server builds, + // see Communicate with other Amazon Web Services resources from your fleets + // (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html). + // This fleet property can't be changed after the fleet is created. InstanceRoleArn *string `min:"1" type:"string"` + // Prompts Amazon GameLift to generate a shared credentials file for the IAM + // role defined in InstanceRoleArn. The shared credentials file is stored on + // each fleet instance and refreshed as needed. Use shared credentials for applications + // that are deployed along with the game server executable, if the game server + // is integrated with server SDK version 5.x. For more information about using + // shared credentials, see Communicate with other Amazon Web Services resources + // from your fleets (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html). + InstanceRoleCredentialsProvider *string `type:"string" enum:"InstanceRoleCredentialsProvider"` + // A set of remote locations to deploy additional instances to and manage as // part of the fleet. This parameter can only be used when creating fleets in // Amazon Web Services Regions that support multiple locations. You can add @@ -14547,7 +14575,7 @@ // The unique identifier for a Realtime configuration script to be deployed // on fleet instances. You can use either the script ID or ARN. Scripts must // be uploaded to Amazon GameLift prior to creating the fleet. This fleet property - // cannot be changed later. + // can't be changed after the fleet is created. ScriptId *string `type:"string"` // This parameter is no longer used. Specify server launch parameters using @@ -14722,6 +14750,12 @@ return s } +// SetInstanceRoleCredentialsProvider sets the InstanceRoleCredentialsProvider field's value. +func (s *CreateFleetInput) SetInstanceRoleCredentialsProvider(v string) *CreateFleetInput { + s.InstanceRoleCredentialsProvider = &v + return s +} + // SetLocations sets the Locations field's value. func (s *CreateFleetInput) SetLocations(v []*LocationConfiguration) *CreateFleetInput { s.Locations = v @@ -16264,8 +16298,12 @@ // A unique identifier for a player. Player IDs are developer-defined. // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePlayerSessionInput's + // String and GoString methods. + // // PlayerId is a required field - PlayerId *string `min:"1" type:"string" required:"true"` + PlayerId *string `min:"1" type:"string" required:"true" sensitive:"true"` } // String returns the string representation. @@ -16376,8 +16414,12 @@ // List of unique identifiers for the players to be added. // + // PlayerIds is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePlayerSessionsInput's + // String and GoString methods. + // // PlayerIds is a required field - PlayerIds []*string `min:"1" type:"list" required:"true"` + PlayerIds []*string `min:"1" type:"list" required:"true" sensitive:"true"` } // String returns the string representation. @@ -20686,7 +20728,11 @@ NextToken *string `min:"1" type:"string"` // A unique identifier for a player to retrieve player sessions for. - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DescribePlayerSessionsInput's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` // A unique identifier for a player session to retrieve. PlayerSessionId *string `type:"string"` @@ -21270,7 +21316,11 @@ PlayerData *string `min:"1" type:"string"` // A unique identifier for a player to associate with the player session. - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DesiredPlayerSession's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` } // String returns the string representation. @@ -21814,19 +21864,27 @@ // Indicates whether to use On-Demand or Spot instances for this fleet. By default, // this property is set to ON_DEMAND. Learn more about when to use On-Demand // versus Spot Instances (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-ec2-instances.html#gamelift-ec2-instances-spot). - // This property cannot be changed after the fleet is created. + // This fleet property can't be changed after the fleet is created. FleetType *string `type:"string" enum:"FleetType"` - // A unique identifier for an IAM role that manages access to your Amazon Web - // Services services. With an instance role ARN set, any application that runs - // on an instance in this fleet can assume the role, including install scripts, - // server processes, and daemons (background processes). Create a role or look - // up a role's ARN by using the IAM dashboard (https://console.aws.amazon.com/iam/) - // in the Amazon Web Services Management Console. Learn more about using on-box - // credentials for your game servers at Access external resources from a game - // server (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html). + // A unique identifier for an IAM role with access permissions to other Amazon + // Web Services services. Any application that runs on an instance in the fleet--including + // install scripts, server processes, and other processes--can use these permissions + // to interact with Amazon Web Services resources that you own or have access + // to. For more information about using the role with your game server builds, + // see Communicate with other Amazon Web Services resources from your fleets + // (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html). InstanceRoleArn *string `min:"1" type:"string"` + // Indicates that fleet instances maintain a shared credentials file for the + // IAM role defined in InstanceRoleArn. Shared credentials allow applications + // that are deployed with the game server executable to communicate with other + // Amazon Web Services resources. This property is used only when the game server + // is integrated with the server SDK version 5.x. For more information about + // using shared credentials, see Communicate with other Amazon Web Services + // resources from your fleets (https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html). + InstanceRoleCredentialsProvider *string `type:"string" enum:"InstanceRoleCredentialsProvider"` + // The Amazon EC2 instance type that determines the computing resources of each // instance in the fleet. Instance type defines the CPU, memory, storage, and // networking capacity. See Amazon Elastic Compute Cloud Instance Types (http://aws.amazon.com/ec2/instance-types/) @@ -22004,6 +22062,12 @@ return s } +// SetInstanceRoleCredentialsProvider sets the InstanceRoleCredentialsProvider field's value. +func (s *FleetAttributes) SetInstanceRoleCredentialsProvider(v string) *FleetAttributes { + s.InstanceRoleCredentialsProvider = &v + return s +} + // SetInstanceType sets the InstanceType field's value. func (s *FleetAttributes) SetInstanceType(v string) *FleetAttributes { s.InstanceType = &v @@ -22959,7 +23023,11 @@ // The IP address of the game session. To connect to a Amazon GameLift game // server, an app needs both the IP address and port number. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GameSession's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // The fleet location where the game session is running. This value might specify // the fleet's home Region or a remote location. Location is expressed as an @@ -22987,7 +23055,11 @@ // The port number for the game session. To connect to a Amazon GameLift game // server, an app needs both the IP address and port number. - Port *int64 `min:"1" type:"integer"` + // + // Port is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GameSession's + // String and GoString methods. + Port *int64 `min:"1" type:"integer" sensitive:"true"` // Current status of the game session. A game session must have an ACTIVE status // to have player sessions. @@ -23160,7 +23232,11 @@ // The IP address of the game session. To connect to a Amazon GameLift game // server, an app needs both the IP address and port number. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GameSessionConnectionInfo's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // A collection of player session IDs, one for each player ID that was included // in the original matchmaking request. @@ -23394,7 +23470,11 @@ // The IP address of the game session. To connect to a Amazon GameLift game // server, an app needs both the IP address and port number. This value isn't // final until placement status is FULFILLED. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GameSessionPlacement's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // Information on the matchmaking process for this game. Data is in JSON syntax, // formatted as a string. It identifies the matchmaking configuration used to @@ -23424,7 +23504,11 @@ // The port number for the game session. To connect to a Amazon GameLift game // server, an app needs both the IP address and port number. This value isn't // final until placement status is FULFILLED. - Port *int64 `min:"1" type:"integer"` + // + // Port is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GameSessionPlacement's + // String and GoString methods. + Port *int64 `min:"1" type:"integer" sensitive:"true"` // Time stamp indicating when this request was placed in the queue. Format is // a number expressed in Unix time as milliseconds (for example "1469498468.057"). @@ -24313,7 +24397,11 @@ InstanceId *string `type:"string"` // IP address that is assigned to the instance. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Instance's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // The fleet location of the instance, expressed as an Amazon Web Services Region // code, such as us-west-2. @@ -24439,7 +24527,11 @@ InstanceId *string `type:"string"` // IP address assigned to the instance. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InstanceAccess's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // Operating system that is running on the instance. OperatingSystem *string `type:"string" enum:"OperatingSystem"` @@ -24887,15 +24979,23 @@ // // For fleets using Windows builds, only ports 1026-60000 are valid. // + // FromPort is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by IpPermission's + // String and GoString methods. + // // FromPort is a required field - FromPort *int64 `min:"1" type:"integer" required:"true"` + FromPort *int64 `min:"1" type:"integer" required:"true" sensitive:"true"` // A range of allowed IP addresses. This value must be expressed in CIDR notation. // Example: "000.000.000.000/[subnet mask]" or optionally the shortened version // "0.0.0.0/[subnet mask]". // + // IpRange is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by IpPermission's + // String and GoString methods. + // // IpRange is a required field - IpRange *string `type:"string" required:"true"` + IpRange *string `type:"string" required:"true" sensitive:"true"` // The network communication protocol used by the fleet. // @@ -24909,8 +25009,12 @@ // // For fleets using Windows builds, only ports 1026-60000 are valid. // + // ToPort is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by IpPermission's + // String and GoString methods. + // // ToPort is a required field - ToPort *int64 `min:"1" type:"integer" required:"true"` + ToPort *int64 `min:"1" type:"integer" required:"true" sensitive:"true"` } // String returns the string representation. @@ -26381,7 +26485,11 @@ _ struct{} `type:"structure"` // A unique identifier for a player - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by MatchedPlayerSession's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` // A unique identifier for a player session PlayerSessionId *string `type:"string"` @@ -27052,7 +27160,11 @@ _ struct{} `type:"structure"` // A unique identifier for a player that is associated with this player session. - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PlacedPlayerSession's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` // A unique identifier for a player session. PlayerSessionId *string `type:"string"` @@ -27114,7 +27226,11 @@ PlayerAttributes map[string]*AttributeValue `type:"map"` // A unique identifier for a player - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Player's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` // Name of the team that the player is assigned to in a match. Team names are // defined in a matchmaking rule set. @@ -27202,7 +27318,11 @@ LatencyInMilliseconds *float64 `type:"float"` // A unique identifier for a player associated with the latency data. - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PlayerLatency's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` // Name of the Region that is associated with the latency value. RegionIdentifier *string `min:"1" type:"string"` @@ -27355,21 +27475,33 @@ // The IP address of the game session. To connect to a Amazon GameLift game // server, an app needs both the IP address and port number. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PlayerSession's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // Developer-defined information related to a player. Amazon GameLift does not // use this data, so it can be formatted as needed for use in the game. PlayerData *string `min:"1" type:"string"` // A unique identifier for a player that is associated with this player session. - PlayerId *string `min:"1" type:"string"` + // + // PlayerId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PlayerSession's + // String and GoString methods. + PlayerId *string `min:"1" type:"string" sensitive:"true"` // A unique identifier for a player session. PlayerSessionId *string `type:"string"` // Port number for the game session. To connect to a Amazon GameLift server // process, an app needs both the IP address and port number. - Port *int64 `min:"1" type:"integer"` + // + // Port is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PlayerSession's + // String and GoString methods. + Port *int64 `min:"1" type:"integer" sensitive:"true"` // Current status of the player session. // @@ -27833,7 +27965,11 @@ // The IP address of the compute resource. Amazon GameLift requires either a // DNS name or IP address. - IpAddress *string `min:"1" type:"string"` + // + // IpAddress is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterComputeInput's + // String and GoString methods. + IpAddress *string `min:"1" type:"string" sensitive:"true"` // The name of a custom location to associate with the compute resource being // registered. @@ -34700,6 +34836,18 @@ } } +const ( + // InstanceRoleCredentialsProviderSharedCredentialFile is a InstanceRoleCredentialsProvider enum value + InstanceRoleCredentialsProviderSharedCredentialFile = "SHARED_CREDENTIAL_FILE" +) + +// InstanceRoleCredentialsProvider_Values returns all elements of the InstanceRoleCredentialsProvider enum +func InstanceRoleCredentialsProvider_Values() []string { + return []string{ + InstanceRoleCredentialsProviderSharedCredentialFile, + } +} + const ( // InstanceStatusPending is a InstanceStatus enum value InstanceStatusPending = "PENDING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/api.go golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/api.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,8773 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -package gamesparks - -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/restjson" -) - -const opCreateGame = "CreateGame" - -// CreateGameRequest generates a "aws/request.Request" representing the -// client's request for the CreateGame 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 CreateGame for more information on using the CreateGame -// 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 CreateGameRequest method. -// req, resp := client.CreateGameRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/CreateGame -func (c *GameSparks) CreateGameRequest(input *CreateGameInput) (req *request.Request, output *CreateGameOutput) { - op := &request.Operation{ - Name: opCreateGame, - HTTPMethod: "POST", - HTTPPath: "/game", - } - - if input == nil { - input = &CreateGameInput{} - } - - output = &CreateGameOutput{} - req = c.newRequest(op, input, output) - return -} - -// CreateGame API operation for GameSparks. -// -// Creates a new game with an empty configuration. After creating your game, -// you can update the configuration using UpdateGameConfiguration or ImportGameConfiguration. -// -// 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 GameSparks's -// API operation CreateGame for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ConflictException -// The resource already exists, or another operation is in progress. -// -// - InternalServerException -// The service encountered an internal error. -// -// - ServiceQuotaExceededException -// The request would result in exceeding service quota. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/CreateGame -func (c *GameSparks) CreateGame(input *CreateGameInput) (*CreateGameOutput, error) { - req, out := c.CreateGameRequest(input) - return out, req.Send() -} - -// CreateGameWithContext is the same as CreateGame with the addition of -// the ability to pass a context and additional request options. -// -// See CreateGame 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 *GameSparks) CreateGameWithContext(ctx aws.Context, input *CreateGameInput, opts ...request.Option) (*CreateGameOutput, error) { - req, out := c.CreateGameRequest(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/gamesparks-2021-08-17/CreateSnapshot -func (c *GameSparks) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Request, output *CreateSnapshotOutput) { - op := &request.Operation{ - Name: opCreateSnapshot, - HTTPMethod: "POST", - HTTPPath: "/game/{GameName}/snapshot", - } - - if input == nil { - input = &CreateSnapshotInput{} - } - - output = &CreateSnapshotOutput{} - req = c.newRequest(op, input, output) - return -} - -// CreateSnapshot API operation for GameSparks. -// -// Creates a snapshot of the game configuration. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for GameSparks's -// API operation CreateSnapshot for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ConflictException -// The resource already exists, or another operation is in progress. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/CreateSnapshot -func (c *GameSparks) 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 *GameSparks) 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 opCreateStage = "CreateStage" - -// CreateStageRequest generates a "aws/request.Request" representing the -// client's request for the CreateStage 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 CreateStage for more information on using the CreateStage -// 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 CreateStageRequest method. -// req, resp := client.CreateStageRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/CreateStage -func (c *GameSparks) CreateStageRequest(input *CreateStageInput) (req *request.Request, output *CreateStageOutput) { - op := &request.Operation{ - Name: opCreateStage, - HTTPMethod: "POST", - HTTPPath: "/game/{GameName}/stage", - } - - if input == nil { - input = &CreateStageInput{} - } - - output = &CreateStageOutput{} - req = c.newRequest(op, input, output) - return -} - -// CreateStage API operation for GameSparks. -// -// Creates a new stage for stage-by-stage game development and deployment. -// -// 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 GameSparks's -// API operation CreateStage for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ConflictException -// The resource already exists, or another operation is in progress. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/CreateStage -func (c *GameSparks) CreateStage(input *CreateStageInput) (*CreateStageOutput, error) { - req, out := c.CreateStageRequest(input) - return out, req.Send() -} - -// CreateStageWithContext is the same as CreateStage with the addition of -// the ability to pass a context and additional request options. -// -// See CreateStage 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 *GameSparks) CreateStageWithContext(ctx aws.Context, input *CreateStageInput, opts ...request.Option) (*CreateStageOutput, error) { - req, out := c.CreateStageRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opDeleteGame = "DeleteGame" - -// DeleteGameRequest generates a "aws/request.Request" representing the -// client's request for the DeleteGame 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 DeleteGame for more information on using the DeleteGame -// 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 DeleteGameRequest method. -// req, resp := client.DeleteGameRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/DeleteGame -func (c *GameSparks) DeleteGameRequest(input *DeleteGameInput) (req *request.Request, output *DeleteGameOutput) { - op := &request.Operation{ - Name: opDeleteGame, - HTTPMethod: "DELETE", - HTTPPath: "/game/{GameName}", - } - - if input == nil { - input = &DeleteGameInput{} - } - - output = &DeleteGameOutput{} - req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - return -} - -// DeleteGame API operation for GameSparks. -// -// Deletes a game. -// -// 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 GameSparks's -// API operation DeleteGame for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ConflictException -// The resource already exists, or another operation is in progress. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/DeleteGame -func (c *GameSparks) DeleteGame(input *DeleteGameInput) (*DeleteGameOutput, error) { - req, out := c.DeleteGameRequest(input) - return out, req.Send() -} - -// DeleteGameWithContext is the same as DeleteGame with the addition of -// the ability to pass a context and additional request options. -// -// See DeleteGame 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 *GameSparks) DeleteGameWithContext(ctx aws.Context, input *DeleteGameInput, opts ...request.Option) (*DeleteGameOutput, error) { - req, out := c.DeleteGameRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opDeleteStage = "DeleteStage" - -// DeleteStageRequest generates a "aws/request.Request" representing the -// client's request for the DeleteStage 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 DeleteStage for more information on using the DeleteStage -// 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 DeleteStageRequest method. -// req, resp := client.DeleteStageRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/DeleteStage -func (c *GameSparks) DeleteStageRequest(input *DeleteStageInput) (req *request.Request, output *DeleteStageOutput) { - op := &request.Operation{ - Name: opDeleteStage, - HTTPMethod: "DELETE", - HTTPPath: "/game/{GameName}/stage/{StageName}", - } - - if input == nil { - input = &DeleteStageInput{} - } - - output = &DeleteStageOutput{} - req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - return -} - -// DeleteStage API operation for GameSparks. -// -// Deletes a stage from a game, along with the associated game runtime. -// -// 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 GameSparks's -// API operation DeleteStage for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ConflictException -// The resource already exists, or another operation is in progress. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/DeleteStage -func (c *GameSparks) DeleteStage(input *DeleteStageInput) (*DeleteStageOutput, error) { - req, out := c.DeleteStageRequest(input) - return out, req.Send() -} - -// DeleteStageWithContext is the same as DeleteStage with the addition of -// the ability to pass a context and additional request options. -// -// See DeleteStage 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 *GameSparks) DeleteStageWithContext(ctx aws.Context, input *DeleteStageInput, opts ...request.Option) (*DeleteStageOutput, error) { - req, out := c.DeleteStageRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opDisconnectPlayer = "DisconnectPlayer" - -// DisconnectPlayerRequest generates a "aws/request.Request" representing the -// client's request for the DisconnectPlayer 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 DisconnectPlayer for more information on using the DisconnectPlayer -// 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 DisconnectPlayerRequest method. -// req, resp := client.DisconnectPlayerRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/DisconnectPlayer -func (c *GameSparks) DisconnectPlayerRequest(input *DisconnectPlayerInput) (req *request.Request, output *DisconnectPlayerOutput) { - op := &request.Operation{ - Name: opDisconnectPlayer, - HTTPMethod: "POST", - HTTPPath: "/runtime/game/{GameName}/stage/{StageName}/player/{PlayerId}/disconnect", - } - - if input == nil { - input = &DisconnectPlayerInput{} - } - - output = &DisconnectPlayerOutput{} - req = c.newRequest(op, input, output) - return -} - -// DisconnectPlayer API operation for GameSparks. -// -// Disconnects a player from the game runtime. -// -// If a player has multiple connections, this operation attempts to close all -// of them. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for GameSparks's -// API operation DisconnectPlayer for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/DisconnectPlayer -func (c *GameSparks) DisconnectPlayer(input *DisconnectPlayerInput) (*DisconnectPlayerOutput, error) { - req, out := c.DisconnectPlayerRequest(input) - return out, req.Send() -} - -// DisconnectPlayerWithContext is the same as DisconnectPlayer with the addition of -// the ability to pass a context and additional request options. -// -// See DisconnectPlayer 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 *GameSparks) DisconnectPlayerWithContext(ctx aws.Context, input *DisconnectPlayerInput, opts ...request.Option) (*DisconnectPlayerOutput, error) { - req, out := c.DisconnectPlayerRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opExportSnapshot = "ExportSnapshot" - -// ExportSnapshotRequest generates a "aws/request.Request" representing the -// client's request for the ExportSnapshot 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 ExportSnapshot for more information on using the ExportSnapshot -// 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 ExportSnapshotRequest method. -// req, resp := client.ExportSnapshotRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ExportSnapshot -func (c *GameSparks) ExportSnapshotRequest(input *ExportSnapshotInput) (req *request.Request, output *ExportSnapshotOutput) { - op := &request.Operation{ - Name: opExportSnapshot, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/snapshot/{SnapshotId}/export", - } - - if input == nil { - input = &ExportSnapshotInput{} - } - - output = &ExportSnapshotOutput{} - req = c.newRequest(op, input, output) - return -} - -// ExportSnapshot API operation for GameSparks. -// -// Exports a game configuration 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 GameSparks's -// API operation ExportSnapshot for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ExportSnapshot -func (c *GameSparks) ExportSnapshot(input *ExportSnapshotInput) (*ExportSnapshotOutput, error) { - req, out := c.ExportSnapshotRequest(input) - return out, req.Send() -} - -// ExportSnapshotWithContext is the same as ExportSnapshot with the addition of -// the ability to pass a context and additional request options. -// -// See ExportSnapshot 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 *GameSparks) ExportSnapshotWithContext(ctx aws.Context, input *ExportSnapshotInput, opts ...request.Option) (*ExportSnapshotOutput, error) { - req, out := c.ExportSnapshotRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetExtension = "GetExtension" - -// GetExtensionRequest generates a "aws/request.Request" representing the -// client's request for the GetExtension 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 GetExtension for more information on using the GetExtension -// 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 GetExtensionRequest method. -// req, resp := client.GetExtensionRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetExtension -func (c *GameSparks) GetExtensionRequest(input *GetExtensionInput) (req *request.Request, output *GetExtensionOutput) { - op := &request.Operation{ - Name: opGetExtension, - HTTPMethod: "GET", - HTTPPath: "/extension/{Namespace}/{Name}", - } - - if input == nil { - input = &GetExtensionInput{} - } - - output = &GetExtensionOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetExtension API operation for GameSparks. -// -// Gets details about a specified extension. -// -// 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 GameSparks's -// API operation GetExtension for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetExtension -func (c *GameSparks) GetExtension(input *GetExtensionInput) (*GetExtensionOutput, error) { - req, out := c.GetExtensionRequest(input) - return out, req.Send() -} - -// GetExtensionWithContext is the same as GetExtension with the addition of -// the ability to pass a context and additional request options. -// -// See GetExtension 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 *GameSparks) GetExtensionWithContext(ctx aws.Context, input *GetExtensionInput, opts ...request.Option) (*GetExtensionOutput, error) { - req, out := c.GetExtensionRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetExtensionVersion = "GetExtensionVersion" - -// GetExtensionVersionRequest generates a "aws/request.Request" representing the -// client's request for the GetExtensionVersion 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 GetExtensionVersion for more information on using the GetExtensionVersion -// 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 GetExtensionVersionRequest method. -// req, resp := client.GetExtensionVersionRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetExtensionVersion -func (c *GameSparks) GetExtensionVersionRequest(input *GetExtensionVersionInput) (req *request.Request, output *GetExtensionVersionOutput) { - op := &request.Operation{ - Name: opGetExtensionVersion, - HTTPMethod: "GET", - HTTPPath: "/extension/{Namespace}/{Name}/version/{ExtensionVersion}", - } - - if input == nil { - input = &GetExtensionVersionInput{} - } - - output = &GetExtensionVersionOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetExtensionVersion API operation for GameSparks. -// -// Gets details about a specified extension version. -// -// 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 GameSparks's -// API operation GetExtensionVersion for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetExtensionVersion -func (c *GameSparks) GetExtensionVersion(input *GetExtensionVersionInput) (*GetExtensionVersionOutput, error) { - req, out := c.GetExtensionVersionRequest(input) - return out, req.Send() -} - -// GetExtensionVersionWithContext is the same as GetExtensionVersion with the addition of -// the ability to pass a context and additional request options. -// -// See GetExtensionVersion 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 *GameSparks) GetExtensionVersionWithContext(ctx aws.Context, input *GetExtensionVersionInput, opts ...request.Option) (*GetExtensionVersionOutput, error) { - req, out := c.GetExtensionVersionRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetGame = "GetGame" - -// GetGameRequest generates a "aws/request.Request" representing the -// client's request for the GetGame 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 GetGame for more information on using the GetGame -// 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 GetGameRequest method. -// req, resp := client.GetGameRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetGame -func (c *GameSparks) GetGameRequest(input *GetGameInput) (req *request.Request, output *GetGameOutput) { - op := &request.Operation{ - Name: opGetGame, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}", - } - - if input == nil { - input = &GetGameInput{} - } - - output = &GetGameOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetGame API operation for GameSparks. -// -// Gets details about a game. -// -// 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 GameSparks's -// API operation GetGame for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetGame -func (c *GameSparks) GetGame(input *GetGameInput) (*GetGameOutput, error) { - req, out := c.GetGameRequest(input) - return out, req.Send() -} - -// GetGameWithContext is the same as GetGame with the addition of -// the ability to pass a context and additional request options. -// -// See GetGame 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 *GameSparks) GetGameWithContext(ctx aws.Context, input *GetGameInput, opts ...request.Option) (*GetGameOutput, error) { - req, out := c.GetGameRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetGameConfiguration = "GetGameConfiguration" - -// GetGameConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the GetGameConfiguration 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 GetGameConfiguration for more information on using the GetGameConfiguration -// 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 GetGameConfigurationRequest method. -// req, resp := client.GetGameConfigurationRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetGameConfiguration -func (c *GameSparks) GetGameConfigurationRequest(input *GetGameConfigurationInput) (req *request.Request, output *GetGameConfigurationOutput) { - op := &request.Operation{ - Name: opGetGameConfiguration, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/configuration", - } - - if input == nil { - input = &GetGameConfigurationInput{} - } - - output = &GetGameConfigurationOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetGameConfiguration API operation for GameSparks. -// -// Gets the configuration of the game. -// -// 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 GameSparks's -// API operation GetGameConfiguration for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetGameConfiguration -func (c *GameSparks) GetGameConfiguration(input *GetGameConfigurationInput) (*GetGameConfigurationOutput, error) { - req, out := c.GetGameConfigurationRequest(input) - return out, req.Send() -} - -// GetGameConfigurationWithContext is the same as GetGameConfiguration with the addition of -// the ability to pass a context and additional request options. -// -// See GetGameConfiguration 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 *GameSparks) GetGameConfigurationWithContext(ctx aws.Context, input *GetGameConfigurationInput, opts ...request.Option) (*GetGameConfigurationOutput, error) { - req, out := c.GetGameConfigurationRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetGeneratedCodeJob = "GetGeneratedCodeJob" - -// GetGeneratedCodeJobRequest generates a "aws/request.Request" representing the -// client's request for the GetGeneratedCodeJob 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 GetGeneratedCodeJob for more information on using the GetGeneratedCodeJob -// 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 GetGeneratedCodeJobRequest method. -// req, resp := client.GetGeneratedCodeJobRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetGeneratedCodeJob -func (c *GameSparks) GetGeneratedCodeJobRequest(input *GetGeneratedCodeJobInput) (req *request.Request, output *GetGeneratedCodeJobOutput) { - op := &request.Operation{ - Name: opGetGeneratedCodeJob, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/snapshot/{SnapshotId}/generated-sdk-code-job/{JobId}", - } - - if input == nil { - input = &GetGeneratedCodeJobInput{} - } - - output = &GetGeneratedCodeJobOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetGeneratedCodeJob API operation for GameSparks. -// -// Gets details about a job that is generating code for 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 GameSparks's -// API operation GetGeneratedCodeJob for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetGeneratedCodeJob -func (c *GameSparks) GetGeneratedCodeJob(input *GetGeneratedCodeJobInput) (*GetGeneratedCodeJobOutput, error) { - req, out := c.GetGeneratedCodeJobRequest(input) - return out, req.Send() -} - -// GetGeneratedCodeJobWithContext is the same as GetGeneratedCodeJob with the addition of -// the ability to pass a context and additional request options. -// -// See GetGeneratedCodeJob 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 *GameSparks) GetGeneratedCodeJobWithContext(ctx aws.Context, input *GetGeneratedCodeJobInput, opts ...request.Option) (*GetGeneratedCodeJobOutput, error) { - req, out := c.GetGeneratedCodeJobRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetPlayerConnectionStatus = "GetPlayerConnectionStatus" - -// GetPlayerConnectionStatusRequest generates a "aws/request.Request" representing the -// client's request for the GetPlayerConnectionStatus 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 GetPlayerConnectionStatus for more information on using the GetPlayerConnectionStatus -// 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 GetPlayerConnectionStatusRequest method. -// req, resp := client.GetPlayerConnectionStatusRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetPlayerConnectionStatus -func (c *GameSparks) GetPlayerConnectionStatusRequest(input *GetPlayerConnectionStatusInput) (req *request.Request, output *GetPlayerConnectionStatusOutput) { - op := &request.Operation{ - Name: opGetPlayerConnectionStatus, - HTTPMethod: "GET", - HTTPPath: "/runtime/game/{GameName}/stage/{StageName}/player/{PlayerId}/connection", - } - - if input == nil { - input = &GetPlayerConnectionStatusInput{} - } - - output = &GetPlayerConnectionStatusOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetPlayerConnectionStatus API operation for GameSparks. -// -// Gets the status of a player's connection to the game runtime. -// -// It's possible for a single player to have multiple connections to the game -// runtime. If a player is not connected, this operation returns an empty list. -// -// 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 GameSparks's -// API operation GetPlayerConnectionStatus for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetPlayerConnectionStatus -func (c *GameSparks) GetPlayerConnectionStatus(input *GetPlayerConnectionStatusInput) (*GetPlayerConnectionStatusOutput, error) { - req, out := c.GetPlayerConnectionStatusRequest(input) - return out, req.Send() -} - -// GetPlayerConnectionStatusWithContext is the same as GetPlayerConnectionStatus with the addition of -// the ability to pass a context and additional request options. -// -// See GetPlayerConnectionStatus 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 *GameSparks) GetPlayerConnectionStatusWithContext(ctx aws.Context, input *GetPlayerConnectionStatusInput, opts ...request.Option) (*GetPlayerConnectionStatusOutput, error) { - req, out := c.GetPlayerConnectionStatusRequest(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/gamesparks-2021-08-17/GetSnapshot -func (c *GameSparks) GetSnapshotRequest(input *GetSnapshotInput) (req *request.Request, output *GetSnapshotOutput) { - op := &request.Operation{ - Name: opGetSnapshot, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/snapshot/{SnapshotId}", - } - - if input == nil { - input = &GetSnapshotInput{} - } - - output = &GetSnapshotOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetSnapshot API operation for GameSparks. -// -// Gets a copy of the game configuration in 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 GameSparks's -// API operation GetSnapshot for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetSnapshot -func (c *GameSparks) 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 *GameSparks) 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 opGetStage = "GetStage" - -// GetStageRequest generates a "aws/request.Request" representing the -// client's request for the GetStage 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 GetStage for more information on using the GetStage -// 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 GetStageRequest method. -// req, resp := client.GetStageRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetStage -func (c *GameSparks) GetStageRequest(input *GetStageInput) (req *request.Request, output *GetStageOutput) { - op := &request.Operation{ - Name: opGetStage, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/stage/{StageName}", - } - - if input == nil { - input = &GetStageInput{} - } - - output = &GetStageOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetStage API operation for GameSparks. -// -// Gets information about a stage. -// -// 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 GameSparks's -// API operation GetStage for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetStage -func (c *GameSparks) GetStage(input *GetStageInput) (*GetStageOutput, error) { - req, out := c.GetStageRequest(input) - return out, req.Send() -} - -// GetStageWithContext is the same as GetStage with the addition of -// the ability to pass a context and additional request options. -// -// See GetStage 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 *GameSparks) GetStageWithContext(ctx aws.Context, input *GetStageInput, opts ...request.Option) (*GetStageOutput, error) { - req, out := c.GetStageRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opGetStageDeployment = "GetStageDeployment" - -// GetStageDeploymentRequest generates a "aws/request.Request" representing the -// client's request for the GetStageDeployment 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 GetStageDeployment for more information on using the GetStageDeployment -// 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 GetStageDeploymentRequest method. -// req, resp := client.GetStageDeploymentRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetStageDeployment -func (c *GameSparks) GetStageDeploymentRequest(input *GetStageDeploymentInput) (req *request.Request, output *GetStageDeploymentOutput) { - op := &request.Operation{ - Name: opGetStageDeployment, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/stage/{StageName}/deployment", - } - - if input == nil { - input = &GetStageDeploymentInput{} - } - - output = &GetStageDeploymentOutput{} - req = c.newRequest(op, input, output) - return -} - -// GetStageDeployment API operation for GameSparks. -// -// Gets information about a stage deployment. -// -// 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 GameSparks's -// API operation GetStageDeployment for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/GetStageDeployment -func (c *GameSparks) GetStageDeployment(input *GetStageDeploymentInput) (*GetStageDeploymentOutput, error) { - req, out := c.GetStageDeploymentRequest(input) - return out, req.Send() -} - -// GetStageDeploymentWithContext is the same as GetStageDeployment with the addition of -// the ability to pass a context and additional request options. -// -// See GetStageDeployment 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 *GameSparks) GetStageDeploymentWithContext(ctx aws.Context, input *GetStageDeploymentInput, opts ...request.Option) (*GetStageDeploymentOutput, error) { - req, out := c.GetStageDeploymentRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opImportGameConfiguration = "ImportGameConfiguration" - -// ImportGameConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the ImportGameConfiguration 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 ImportGameConfiguration for more information on using the ImportGameConfiguration -// 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 ImportGameConfigurationRequest method. -// req, resp := client.ImportGameConfigurationRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ImportGameConfiguration -func (c *GameSparks) ImportGameConfigurationRequest(input *ImportGameConfigurationInput) (req *request.Request, output *ImportGameConfigurationOutput) { - op := &request.Operation{ - Name: opImportGameConfiguration, - HTTPMethod: "PUT", - HTTPPath: "/game/{GameName}/configuration", - } - - if input == nil { - input = &ImportGameConfigurationInput{} - } - - output = &ImportGameConfigurationOutput{} - req = c.newRequest(op, input, output) - return -} - -// ImportGameConfiguration API operation for GameSparks. -// -// Imports a game configuration. -// -// This operation replaces the current configuration of the game with the provided -// input. This is not a reversible operation. If you want to preserve the previous -// configuration, use CreateSnapshot to make a new snapshot before importing. -// -// 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 GameSparks's -// API operation ImportGameConfiguration for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// - ServiceQuotaExceededException -// The request would result in exceeding service quota. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ImportGameConfiguration -func (c *GameSparks) ImportGameConfiguration(input *ImportGameConfigurationInput) (*ImportGameConfigurationOutput, error) { - req, out := c.ImportGameConfigurationRequest(input) - return out, req.Send() -} - -// ImportGameConfigurationWithContext is the same as ImportGameConfiguration with the addition of -// the ability to pass a context and additional request options. -// -// See ImportGameConfiguration 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 *GameSparks) ImportGameConfigurationWithContext(ctx aws.Context, input *ImportGameConfigurationInput, opts ...request.Option) (*ImportGameConfigurationOutput, error) { - req, out := c.ImportGameConfigurationRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opListExtensionVersions = "ListExtensionVersions" - -// ListExtensionVersionsRequest generates a "aws/request.Request" representing the -// client's request for the ListExtensionVersions 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 ListExtensionVersions for more information on using the ListExtensionVersions -// 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 ListExtensionVersionsRequest method. -// req, resp := client.ListExtensionVersionsRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListExtensionVersions -func (c *GameSparks) ListExtensionVersionsRequest(input *ListExtensionVersionsInput) (req *request.Request, output *ListExtensionVersionsOutput) { - op := &request.Operation{ - Name: opListExtensionVersions, - HTTPMethod: "GET", - HTTPPath: "/extension/{Namespace}/{Name}/version", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListExtensionVersionsInput{} - } - - output = &ListExtensionVersionsOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListExtensionVersions API operation for GameSparks. -// -// Gets a paginated list of available versions for the extension. -// -// Each time an API change is made to an extension, the version is incremented. -// The list retrieved by this operation shows the versions that are currently -// available. -// -// 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 GameSparks's -// API operation ListExtensionVersions for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListExtensionVersions -func (c *GameSparks) ListExtensionVersions(input *ListExtensionVersionsInput) (*ListExtensionVersionsOutput, error) { - req, out := c.ListExtensionVersionsRequest(input) - return out, req.Send() -} - -// ListExtensionVersionsWithContext is the same as ListExtensionVersions with the addition of -// the ability to pass a context and additional request options. -// -// See ListExtensionVersions 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 *GameSparks) ListExtensionVersionsWithContext(ctx aws.Context, input *ListExtensionVersionsInput, opts ...request.Option) (*ListExtensionVersionsOutput, error) { - req, out := c.ListExtensionVersionsRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListExtensionVersionsPages iterates over the pages of a ListExtensionVersions operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListExtensionVersions 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 ListExtensionVersions operation. -// pageNum := 0 -// err := client.ListExtensionVersionsPages(params, -// func(page *gamesparks.ListExtensionVersionsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) ListExtensionVersionsPages(input *ListExtensionVersionsInput, fn func(*ListExtensionVersionsOutput, bool) bool) error { - return c.ListExtensionVersionsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListExtensionVersionsPagesWithContext same as ListExtensionVersionsPages 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 *GameSparks) ListExtensionVersionsPagesWithContext(ctx aws.Context, input *ListExtensionVersionsInput, fn func(*ListExtensionVersionsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListExtensionVersionsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListExtensionVersionsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListExtensionVersionsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListExtensions = "ListExtensions" - -// ListExtensionsRequest generates a "aws/request.Request" representing the -// client's request for the ListExtensions 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 ListExtensions for more information on using the ListExtensions -// 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 ListExtensionsRequest method. -// req, resp := client.ListExtensionsRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListExtensions -func (c *GameSparks) ListExtensionsRequest(input *ListExtensionsInput) (req *request.Request, output *ListExtensionsOutput) { - op := &request.Operation{ - Name: opListExtensions, - HTTPMethod: "GET", - HTTPPath: "/extension", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListExtensionsInput{} - } - - output = &ListExtensionsOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListExtensions API operation for GameSparks. -// -// Gets a paginated list of available extensions. -// -// Extensions provide features that games can use from scripts. -// -// 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 GameSparks's -// API operation ListExtensions for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListExtensions -func (c *GameSparks) ListExtensions(input *ListExtensionsInput) (*ListExtensionsOutput, error) { - req, out := c.ListExtensionsRequest(input) - return out, req.Send() -} - -// ListExtensionsWithContext is the same as ListExtensions with the addition of -// the ability to pass a context and additional request options. -// -// See ListExtensions 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 *GameSparks) ListExtensionsWithContext(ctx aws.Context, input *ListExtensionsInput, opts ...request.Option) (*ListExtensionsOutput, error) { - req, out := c.ListExtensionsRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListExtensionsPages iterates over the pages of a ListExtensions operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListExtensions 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 ListExtensions operation. -// pageNum := 0 -// err := client.ListExtensionsPages(params, -// func(page *gamesparks.ListExtensionsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) ListExtensionsPages(input *ListExtensionsInput, fn func(*ListExtensionsOutput, bool) bool) error { - return c.ListExtensionsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListExtensionsPagesWithContext same as ListExtensionsPages 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 *GameSparks) ListExtensionsPagesWithContext(ctx aws.Context, input *ListExtensionsInput, fn func(*ListExtensionsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListExtensionsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListExtensionsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListExtensionsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListGames = "ListGames" - -// ListGamesRequest generates a "aws/request.Request" representing the -// client's request for the ListGames 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 ListGames for more information on using the ListGames -// 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 ListGamesRequest method. -// req, resp := client.ListGamesRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListGames -func (c *GameSparks) ListGamesRequest(input *ListGamesInput) (req *request.Request, output *ListGamesOutput) { - op := &request.Operation{ - Name: opListGames, - HTTPMethod: "GET", - HTTPPath: "/game", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListGamesInput{} - } - - output = &ListGamesOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListGames API operation for GameSparks. -// -// Gets a paginated list of games. -// -// 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 GameSparks's -// API operation ListGames for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListGames -func (c *GameSparks) ListGames(input *ListGamesInput) (*ListGamesOutput, error) { - req, out := c.ListGamesRequest(input) - return out, req.Send() -} - -// ListGamesWithContext is the same as ListGames with the addition of -// the ability to pass a context and additional request options. -// -// See ListGames 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 *GameSparks) ListGamesWithContext(ctx aws.Context, input *ListGamesInput, opts ...request.Option) (*ListGamesOutput, error) { - req, out := c.ListGamesRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListGamesPages iterates over the pages of a ListGames operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListGames 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 ListGames operation. -// pageNum := 0 -// err := client.ListGamesPages(params, -// func(page *gamesparks.ListGamesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) ListGamesPages(input *ListGamesInput, fn func(*ListGamesOutput, bool) bool) error { - return c.ListGamesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListGamesPagesWithContext same as ListGamesPages 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 *GameSparks) ListGamesPagesWithContext(ctx aws.Context, input *ListGamesInput, fn func(*ListGamesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListGamesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListGamesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListGamesOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListGeneratedCodeJobs = "ListGeneratedCodeJobs" - -// ListGeneratedCodeJobsRequest generates a "aws/request.Request" representing the -// client's request for the ListGeneratedCodeJobs 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 ListGeneratedCodeJobs for more information on using the ListGeneratedCodeJobs -// 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 ListGeneratedCodeJobsRequest method. -// req, resp := client.ListGeneratedCodeJobsRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListGeneratedCodeJobs -func (c *GameSparks) ListGeneratedCodeJobsRequest(input *ListGeneratedCodeJobsInput) (req *request.Request, output *ListGeneratedCodeJobsOutput) { - op := &request.Operation{ - Name: opListGeneratedCodeJobs, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/snapshot/{SnapshotId}/generated-sdk-code-jobs", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListGeneratedCodeJobsInput{} - } - - output = &ListGeneratedCodeJobsOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListGeneratedCodeJobs API operation for GameSparks. -// -// Gets a paginated list of code generation jobs for 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 GameSparks's -// API operation ListGeneratedCodeJobs for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListGeneratedCodeJobs -func (c *GameSparks) ListGeneratedCodeJobs(input *ListGeneratedCodeJobsInput) (*ListGeneratedCodeJobsOutput, error) { - req, out := c.ListGeneratedCodeJobsRequest(input) - return out, req.Send() -} - -// ListGeneratedCodeJobsWithContext is the same as ListGeneratedCodeJobs with the addition of -// the ability to pass a context and additional request options. -// -// See ListGeneratedCodeJobs 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 *GameSparks) ListGeneratedCodeJobsWithContext(ctx aws.Context, input *ListGeneratedCodeJobsInput, opts ...request.Option) (*ListGeneratedCodeJobsOutput, error) { - req, out := c.ListGeneratedCodeJobsRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListGeneratedCodeJobsPages iterates over the pages of a ListGeneratedCodeJobs operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListGeneratedCodeJobs 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 ListGeneratedCodeJobs operation. -// pageNum := 0 -// err := client.ListGeneratedCodeJobsPages(params, -// func(page *gamesparks.ListGeneratedCodeJobsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) ListGeneratedCodeJobsPages(input *ListGeneratedCodeJobsInput, fn func(*ListGeneratedCodeJobsOutput, bool) bool) error { - return c.ListGeneratedCodeJobsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListGeneratedCodeJobsPagesWithContext same as ListGeneratedCodeJobsPages 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 *GameSparks) ListGeneratedCodeJobsPagesWithContext(ctx aws.Context, input *ListGeneratedCodeJobsInput, fn func(*ListGeneratedCodeJobsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListGeneratedCodeJobsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListGeneratedCodeJobsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListGeneratedCodeJobsOutput), !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/gamesparks-2021-08-17/ListSnapshots -func (c *GameSparks) ListSnapshotsRequest(input *ListSnapshotsInput) (req *request.Request, output *ListSnapshotsOutput) { - op := &request.Operation{ - Name: opListSnapshots, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/snapshot", - 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 GameSparks. -// -// Gets a paginated list of snapshot summaries from the game. -// -// 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 GameSparks's -// API operation ListSnapshots for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListSnapshots -func (c *GameSparks) 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 *GameSparks) 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 *gamesparks.ListSnapshotsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) 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 *GameSparks) 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 opListStageDeployments = "ListStageDeployments" - -// ListStageDeploymentsRequest generates a "aws/request.Request" representing the -// client's request for the ListStageDeployments 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 ListStageDeployments for more information on using the ListStageDeployments -// 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 ListStageDeploymentsRequest method. -// req, resp := client.ListStageDeploymentsRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListStageDeployments -func (c *GameSparks) ListStageDeploymentsRequest(input *ListStageDeploymentsInput) (req *request.Request, output *ListStageDeploymentsOutput) { - op := &request.Operation{ - Name: opListStageDeployments, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/stage/{StageName}/deployments", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListStageDeploymentsInput{} - } - - output = &ListStageDeploymentsOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListStageDeployments API operation for GameSparks. -// -// Gets a paginated list of stage deployment summaries from the game. -// -// 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 GameSparks's -// API operation ListStageDeployments for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListStageDeployments -func (c *GameSparks) ListStageDeployments(input *ListStageDeploymentsInput) (*ListStageDeploymentsOutput, error) { - req, out := c.ListStageDeploymentsRequest(input) - return out, req.Send() -} - -// ListStageDeploymentsWithContext is the same as ListStageDeployments with the addition of -// the ability to pass a context and additional request options. -// -// See ListStageDeployments 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 *GameSparks) ListStageDeploymentsWithContext(ctx aws.Context, input *ListStageDeploymentsInput, opts ...request.Option) (*ListStageDeploymentsOutput, error) { - req, out := c.ListStageDeploymentsRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListStageDeploymentsPages iterates over the pages of a ListStageDeployments operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListStageDeployments 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 ListStageDeployments operation. -// pageNum := 0 -// err := client.ListStageDeploymentsPages(params, -// func(page *gamesparks.ListStageDeploymentsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) ListStageDeploymentsPages(input *ListStageDeploymentsInput, fn func(*ListStageDeploymentsOutput, bool) bool) error { - return c.ListStageDeploymentsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListStageDeploymentsPagesWithContext same as ListStageDeploymentsPages 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 *GameSparks) ListStageDeploymentsPagesWithContext(ctx aws.Context, input *ListStageDeploymentsInput, fn func(*ListStageDeploymentsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListStageDeploymentsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListStageDeploymentsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListStageDeploymentsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListStages = "ListStages" - -// ListStagesRequest generates a "aws/request.Request" representing the -// client's request for the ListStages 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 ListStages for more information on using the ListStages -// 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 ListStagesRequest method. -// req, resp := client.ListStagesRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListStages -func (c *GameSparks) ListStagesRequest(input *ListStagesInput) (req *request.Request, output *ListStagesOutput) { - op := &request.Operation{ - Name: opListStages, - HTTPMethod: "GET", - HTTPPath: "/game/{GameName}/stage", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListStagesInput{} - } - - output = &ListStagesOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListStages API operation for GameSparks. -// -// Gets a paginated list of stage summaries from the game. -// -// 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 GameSparks's -// API operation ListStages for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListStages -func (c *GameSparks) ListStages(input *ListStagesInput) (*ListStagesOutput, error) { - req, out := c.ListStagesRequest(input) - return out, req.Send() -} - -// ListStagesWithContext is the same as ListStages with the addition of -// the ability to pass a context and additional request options. -// -// See ListStages 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 *GameSparks) ListStagesWithContext(ctx aws.Context, input *ListStagesInput, opts ...request.Option) (*ListStagesOutput, error) { - req, out := c.ListStagesRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListStagesPages iterates over the pages of a ListStages operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListStages 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 ListStages operation. -// pageNum := 0 -// err := client.ListStagesPages(params, -// func(page *gamesparks.ListStagesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *GameSparks) ListStagesPages(input *ListStagesInput, fn func(*ListStagesOutput, bool) bool) error { - return c.ListStagesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListStagesPagesWithContext same as ListStagesPages 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 *GameSparks) ListStagesPagesWithContext(ctx aws.Context, input *ListStagesInput, fn func(*ListStagesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListStagesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListStagesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListStagesOutput), !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/gamesparks-2021-08-17/ListTagsForResource -func (c *GameSparks) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { - op := &request.Operation{ - Name: opListTagsForResource, - HTTPMethod: "GET", - HTTPPath: "/tags/{ResourceArn}", - } - - if input == nil { - input = &ListTagsForResourceInput{} - } - - output = &ListTagsForResourceOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListTagsForResource API operation for GameSparks. -// -// Lists the tags associated with a GameSparks 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 GameSparks's -// API operation ListTagsForResource for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/ListTagsForResource -func (c *GameSparks) 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 *GameSparks) 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 opStartGeneratedCodeJob = "StartGeneratedCodeJob" - -// StartGeneratedCodeJobRequest generates a "aws/request.Request" representing the -// client's request for the StartGeneratedCodeJob 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 StartGeneratedCodeJob for more information on using the StartGeneratedCodeJob -// 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 StartGeneratedCodeJobRequest method. -// req, resp := client.StartGeneratedCodeJobRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/StartGeneratedCodeJob -func (c *GameSparks) StartGeneratedCodeJobRequest(input *StartGeneratedCodeJobInput) (req *request.Request, output *StartGeneratedCodeJobOutput) { - op := &request.Operation{ - Name: opStartGeneratedCodeJob, - HTTPMethod: "POST", - HTTPPath: "/game/{GameName}/snapshot/{SnapshotId}/generated-sdk-code-job", - } - - if input == nil { - input = &StartGeneratedCodeJobInput{} - } - - output = &StartGeneratedCodeJobOutput{} - req = c.newRequest(op, input, output) - return -} - -// StartGeneratedCodeJob API operation for GameSparks. -// -// Starts an asynchronous process that generates client code for system-defined -// and custom messages. The resulting code is collected as a .zip file and uploaded -// to a pre-signed Amazon S3 URL. -// -// 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 GameSparks's -// API operation StartGeneratedCodeJob for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/StartGeneratedCodeJob -func (c *GameSparks) StartGeneratedCodeJob(input *StartGeneratedCodeJobInput) (*StartGeneratedCodeJobOutput, error) { - req, out := c.StartGeneratedCodeJobRequest(input) - return out, req.Send() -} - -// StartGeneratedCodeJobWithContext is the same as StartGeneratedCodeJob with the addition of -// the ability to pass a context and additional request options. -// -// See StartGeneratedCodeJob 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 *GameSparks) StartGeneratedCodeJobWithContext(ctx aws.Context, input *StartGeneratedCodeJobInput, opts ...request.Option) (*StartGeneratedCodeJobOutput, error) { - req, out := c.StartGeneratedCodeJobRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opStartStageDeployment = "StartStageDeployment" - -// StartStageDeploymentRequest generates a "aws/request.Request" representing the -// client's request for the StartStageDeployment 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 StartStageDeployment for more information on using the StartStageDeployment -// 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 StartStageDeploymentRequest method. -// req, resp := client.StartStageDeploymentRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/StartStageDeployment -func (c *GameSparks) StartStageDeploymentRequest(input *StartStageDeploymentInput) (req *request.Request, output *StartStageDeploymentOutput) { - op := &request.Operation{ - Name: opStartStageDeployment, - HTTPMethod: "POST", - HTTPPath: "/game/{GameName}/stage/{StageName}/deployment", - } - - if input == nil { - input = &StartStageDeploymentInput{} - } - - output = &StartStageDeploymentOutput{} - req = c.newRequest(op, input, output) - return -} - -// StartStageDeployment API operation for GameSparks. -// -// Deploys a snapshot to the stage and creates a new game runtime. -// -// After you call this operation, you can check the deployment status by using -// GetStageDeployment. -// -// If there are any players connected to the previous game runtime, then both -// runtimes persist. Existing connections to the previous runtime are maintained. -// When players disconnect and reconnect, they connect to the new runtime. After -// there are no connections to the previous game runtime, it is deleted. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for GameSparks's -// API operation StartStageDeployment for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ConflictException -// The resource already exists, or another operation is in progress. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/StartStageDeployment -func (c *GameSparks) StartStageDeployment(input *StartStageDeploymentInput) (*StartStageDeploymentOutput, error) { - req, out := c.StartStageDeploymentRequest(input) - return out, req.Send() -} - -// StartStageDeploymentWithContext is the same as StartStageDeployment with the addition of -// the ability to pass a context and additional request options. -// -// See StartStageDeployment 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 *GameSparks) StartStageDeploymentWithContext(ctx aws.Context, input *StartStageDeploymentInput, opts ...request.Option) (*StartStageDeploymentOutput, error) { - req, out := c.StartStageDeploymentRequest(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/gamesparks-2021-08-17/TagResource -func (c *GameSparks) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { - op := &request.Operation{ - Name: opTagResource, - HTTPMethod: "POST", - HTTPPath: "/tags/{ResourceArn}", - } - - if input == nil { - input = &TagResourceInput{} - } - - output = &TagResourceOutput{} - req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - return -} - -// TagResource API operation for GameSparks. -// -// Adds tags to a GameSparks 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 GameSparks's -// API operation TagResource for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/TagResource -func (c *GameSparks) 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 *GameSparks) 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/gamesparks-2021-08-17/UntagResource -func (c *GameSparks) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { - op := &request.Operation{ - Name: opUntagResource, - HTTPMethod: "DELETE", - HTTPPath: "/tags/{ResourceArn}", - } - - if input == nil { - input = &UntagResourceInput{} - } - - output = &UntagResourceOutput{} - req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - return -} - -// UntagResource API operation for GameSparks. -// -// Removes tags from a GameSparks 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 GameSparks's -// API operation UntagResource for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UntagResource -func (c *GameSparks) 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 *GameSparks) 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 opUpdateGame = "UpdateGame" - -// UpdateGameRequest generates a "aws/request.Request" representing the -// client's request for the UpdateGame 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 UpdateGame for more information on using the UpdateGame -// 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 UpdateGameRequest method. -// req, resp := client.UpdateGameRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateGame -func (c *GameSparks) UpdateGameRequest(input *UpdateGameInput) (req *request.Request, output *UpdateGameOutput) { - op := &request.Operation{ - Name: opUpdateGame, - HTTPMethod: "PATCH", - HTTPPath: "/game/{GameName}", - } - - if input == nil { - input = &UpdateGameInput{} - } - - output = &UpdateGameOutput{} - req = c.newRequest(op, input, output) - return -} - -// UpdateGame API operation for GameSparks. -// -// Updates details of the game. -// -// 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 GameSparks's -// API operation UpdateGame for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateGame -func (c *GameSparks) UpdateGame(input *UpdateGameInput) (*UpdateGameOutput, error) { - req, out := c.UpdateGameRequest(input) - return out, req.Send() -} - -// UpdateGameWithContext is the same as UpdateGame with the addition of -// the ability to pass a context and additional request options. -// -// See UpdateGame 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 *GameSparks) UpdateGameWithContext(ctx aws.Context, input *UpdateGameInput, opts ...request.Option) (*UpdateGameOutput, error) { - req, out := c.UpdateGameRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opUpdateGameConfiguration = "UpdateGameConfiguration" - -// UpdateGameConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the UpdateGameConfiguration 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 UpdateGameConfiguration for more information on using the UpdateGameConfiguration -// 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 UpdateGameConfigurationRequest method. -// req, resp := client.UpdateGameConfigurationRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateGameConfiguration -func (c *GameSparks) UpdateGameConfigurationRequest(input *UpdateGameConfigurationInput) (req *request.Request, output *UpdateGameConfigurationOutput) { - op := &request.Operation{ - Name: opUpdateGameConfiguration, - HTTPMethod: "PATCH", - HTTPPath: "/game/{GameName}/configuration", - } - - if input == nil { - input = &UpdateGameConfigurationInput{} - } - - output = &UpdateGameConfigurationOutput{} - req = c.newRequest(op, input, output) - return -} - -// UpdateGameConfiguration API operation for GameSparks. -// -// Updates one or more sections of the game configuration. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for GameSparks's -// API operation UpdateGameConfiguration for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// - ServiceQuotaExceededException -// The request would result in exceeding service quota. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateGameConfiguration -func (c *GameSparks) UpdateGameConfiguration(input *UpdateGameConfigurationInput) (*UpdateGameConfigurationOutput, error) { - req, out := c.UpdateGameConfigurationRequest(input) - return out, req.Send() -} - -// UpdateGameConfigurationWithContext is the same as UpdateGameConfiguration with the addition of -// the ability to pass a context and additional request options. -// -// See UpdateGameConfiguration 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 *GameSparks) UpdateGameConfigurationWithContext(ctx aws.Context, input *UpdateGameConfigurationInput, opts ...request.Option) (*UpdateGameConfigurationOutput, error) { - req, out := c.UpdateGameConfigurationRequest(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/gamesparks-2021-08-17/UpdateSnapshot -func (c *GameSparks) UpdateSnapshotRequest(input *UpdateSnapshotInput) (req *request.Request, output *UpdateSnapshotOutput) { - op := &request.Operation{ - Name: opUpdateSnapshot, - HTTPMethod: "PATCH", - HTTPPath: "/game/{GameName}/snapshot/{SnapshotId}", - } - - if input == nil { - input = &UpdateSnapshotInput{} - } - - output = &UpdateSnapshotOutput{} - req = c.newRequest(op, input, output) - return -} - -// UpdateSnapshot API operation for GameSparks. -// -// Updates the metadata of a GameSparks 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 GameSparks's -// API operation UpdateSnapshot for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateSnapshot -func (c *GameSparks) 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 *GameSparks) 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 opUpdateStage = "UpdateStage" - -// UpdateStageRequest generates a "aws/request.Request" representing the -// client's request for the UpdateStage 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 UpdateStage for more information on using the UpdateStage -// 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 UpdateStageRequest method. -// req, resp := client.UpdateStageRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateStage -func (c *GameSparks) UpdateStageRequest(input *UpdateStageInput) (req *request.Request, output *UpdateStageOutput) { - op := &request.Operation{ - Name: opUpdateStage, - HTTPMethod: "PATCH", - HTTPPath: "/game/{GameName}/stage/{StageName}", - } - - if input == nil { - input = &UpdateStageInput{} - } - - output = &UpdateStageOutput{} - req = c.newRequest(op, input, output) - return -} - -// UpdateStage API operation for GameSparks. -// -// Updates the metadata of a stage. -// -// 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 GameSparks's -// API operation UpdateStage for usage and error information. -// -// Returned Error Types: -// -// - ValidationException -// One of the parameters in the request is invalid. -// -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ThrottlingException -// The request throughput limit was exceeded. -// -// - ResourceNotFoundException -// The resource specified in the request does not exist. -// -// - InternalServerException -// The service encountered an internal error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17/UpdateStage -func (c *GameSparks) UpdateStage(input *UpdateStageInput) (*UpdateStageOutput, error) { - req, out := c.UpdateStageRequest(input) - return out, req.Send() -} - -// UpdateStageWithContext is the same as UpdateStage with the addition of -// the ability to pass a context and additional request options. -// -// See UpdateStage 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 *GameSparks) UpdateStageWithContext(ctx aws.Context, input *UpdateStageInput, opts ...request.Option) (*UpdateStageOutput, error) { - req, out := c.UpdateStageRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// You do not have sufficient access to perform this action. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AccessDeniedException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AccessDeniedException) GoString() string { - return s.String() -} - -func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { - return &AccessDeniedException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *AccessDeniedException) Code() string { - return "AccessDeniedException" -} - -// Message returns the exception's message. -func (s *AccessDeniedException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil -} - -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID -} - -// The resource already exists, or another operation is in progress. -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 -} - -// Details about a WebSocket connection. -type Connection struct { - _ struct{} `type:"structure"` - - // The date and time when the connection was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The identifier used to indicate a specific WebSocket connection. - Id *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s Connection) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s Connection) GoString() string { - return s.String() -} - -// SetCreated sets the Created field's value. -func (s *Connection) SetCreated(v time.Time) *Connection { - s.Created = &v - return s -} - -// SetId sets the Id field's value. -func (s *Connection) SetId(v string) *Connection { - s.Id = &v - return s -} - -type CreateGameInput struct { - _ struct{} `type:"structure"` - - // A client-defined token. With an active client token in the request, this - // action is idempotent. - ClientToken *string `min:"33" type:"string"` - - // The description of the game. - Description *string `type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `min:"1" type:"string" required:"true"` - - // The list of tags to apply to the game. - Tags map[string]*string `min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateGameInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateGameInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateGameInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateGameInput"} - if s.ClientToken != nil && len(*s.ClientToken) < 33 { - invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) - } - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetClientToken sets the ClientToken field's value. -func (s *CreateGameInput) SetClientToken(v string) *CreateGameInput { - s.ClientToken = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *CreateGameInput) SetDescription(v string) *CreateGameInput { - s.Description = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *CreateGameInput) SetGameName(v string) *CreateGameInput { - s.GameName = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateGameInput) SetTags(v map[string]*string) *CreateGameInput { - s.Tags = v - return s -} - -type CreateGameOutput struct { - _ struct{} `type:"structure"` - - // Details about the game that was created. - Game *GameDetails `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 CreateGameOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateGameOutput) GoString() string { - return s.String() -} - -// SetGame sets the Game field's value. -func (s *CreateGameOutput) SetGame(v *GameDetails) *CreateGameOutput { - s.Game = v - return s -} - -type CreateSnapshotInput struct { - _ struct{} `type:"structure"` - - // The description of the snapshot. - Description *string `type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" 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 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.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDescription sets the Description field's value. -func (s *CreateSnapshotInput) SetDescription(v string) *CreateSnapshotInput { - s.Description = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *CreateSnapshotInput) SetGameName(v string) *CreateSnapshotInput { - s.GameName = &v - return s -} - -type CreateSnapshotOutput struct { - _ struct{} `type:"structure"` - - // Properties that provide details of the created snapshot. - Snapshot *SnapshotDetails `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 *SnapshotDetails) *CreateSnapshotOutput { - s.Snapshot = v - return s -} - -type CreateStageInput struct { - _ struct{} `type:"structure"` - - // A client-defined token. With an active client token in the request, this - // action is idempotent. - ClientToken *string `min:"33" type:"string"` - - // The description of the stage. - Description *string `type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The Amazon Resource Name (ARN) of the role to run the game with. This role - // can be a game-defined role or the default role that GameSparks created. - // - // Role is a required field - Role *string `min:"20" type:"string" required:"true"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `min:"1" type:"string" required:"true"` - - // The list of tags to apply to the stage. - Tags map[string]*string `min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateStageInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateStageInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateStageInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateStageInput"} - if s.ClientToken != nil && len(*s.ClientToken) < 33 { - invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) - } - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Role == nil { - invalidParams.Add(request.NewErrParamRequired("Role")) - } - if s.Role != nil && len(*s.Role) < 20 { - invalidParams.Add(request.NewErrParamMinLen("Role", 20)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetClientToken sets the ClientToken field's value. -func (s *CreateStageInput) SetClientToken(v string) *CreateStageInput { - s.ClientToken = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *CreateStageInput) SetDescription(v string) *CreateStageInput { - s.Description = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *CreateStageInput) SetGameName(v string) *CreateStageInput { - s.GameName = &v - return s -} - -// SetRole sets the Role field's value. -func (s *CreateStageInput) SetRole(v string) *CreateStageInput { - s.Role = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *CreateStageInput) SetStageName(v string) *CreateStageInput { - s.StageName = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateStageInput) SetTags(v map[string]*string) *CreateStageInput { - s.Tags = v - return s -} - -type CreateStageOutput struct { - _ struct{} `type:"structure"` - - // Properties that describe the stage. - Stage *StageDetails `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 CreateStageOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateStageOutput) GoString() string { - return s.String() -} - -// SetStage sets the Stage field's value. -func (s *CreateStageOutput) SetStage(v *StageDetails) *CreateStageOutput { - s.Stage = v - return s -} - -type DeleteGameInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game to delete. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" 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 DeleteGameInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteGameInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteGameInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteGameInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *DeleteGameInput) SetGameName(v string) *DeleteGameInput { - s.GameName = &v - return s -} - -type DeleteGameOutput 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 DeleteGameOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteGameOutput) GoString() string { - return s.String() -} - -type DeleteStageInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The name of the stage to delete. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 DeleteStageInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteStageInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteStageInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteStageInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *DeleteStageInput) SetGameName(v string) *DeleteStageInput { - s.GameName = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *DeleteStageInput) SetStageName(v string) *DeleteStageInput { - s.StageName = &v - return s -} - -type DeleteStageOutput 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 DeleteStageOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteStageOutput) GoString() string { - return s.String() -} - -// The result of the deployment. -type DeploymentResult struct { - _ struct{} `type:"structure"` - - // Details about the deployment result. - Message *string `type:"string"` - - // The type of deployment result. - ResultCode *string `type:"string" enum:"ResultCode"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeploymentResult) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeploymentResult) GoString() string { - return s.String() -} - -// SetMessage sets the Message field's value. -func (s *DeploymentResult) SetMessage(v string) *DeploymentResult { - s.Message = &v - return s -} - -// SetResultCode sets the ResultCode field's value. -func (s *DeploymentResult) SetResultCode(v string) *DeploymentResult { - s.ResultCode = &v - return s -} - -type DisconnectPlayerInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The unique identifier representing a player. - // - // PlayerId is a required field - PlayerId *string `location:"uri" locationName:"PlayerId" min:"1" type:"string" required:"true"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 DisconnectPlayerInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisconnectPlayerInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisconnectPlayerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisconnectPlayerInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.PlayerId == nil { - invalidParams.Add(request.NewErrParamRequired("PlayerId")) - } - if s.PlayerId != nil && len(*s.PlayerId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PlayerId", 1)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *DisconnectPlayerInput) SetGameName(v string) *DisconnectPlayerInput { - s.GameName = &v - return s -} - -// SetPlayerId sets the PlayerId field's value. -func (s *DisconnectPlayerInput) SetPlayerId(v string) *DisconnectPlayerInput { - s.PlayerId = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *DisconnectPlayerInput) SetStageName(v string) *DisconnectPlayerInput { - s.StageName = &v - return s -} - -type DisconnectPlayerOutput struct { - _ struct{} `type:"structure"` - - // The list of the connection ids that could not be disconnected. - DisconnectFailures []*string `type:"list"` - - // The list of the connection ids that were disconnected. - DisconnectSuccesses []*string `type:"list"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisconnectPlayerOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisconnectPlayerOutput) GoString() string { - return s.String() -} - -// SetDisconnectFailures sets the DisconnectFailures field's value. -func (s *DisconnectPlayerOutput) SetDisconnectFailures(v []*string) *DisconnectPlayerOutput { - s.DisconnectFailures = v - return s -} - -// SetDisconnectSuccesses sets the DisconnectSuccesses field's value. -func (s *DisconnectPlayerOutput) SetDisconnectSuccesses(v []*string) *DisconnectPlayerOutput { - s.DisconnectSuccesses = v - return s -} - -type ExportSnapshotInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The identifier of the snapshot to export. - // - // SnapshotId is a required field - SnapshotId *string `location:"uri" locationName:"SnapshotId" min:"33" 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 ExportSnapshotInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExportSnapshotInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ExportSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ExportSnapshotInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *ExportSnapshotInput) SetGameName(v string) *ExportSnapshotInput { - s.GameName = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *ExportSnapshotInput) SetSnapshotId(v string) *ExportSnapshotInput { - s.SnapshotId = &v - return s -} - -type ExportSnapshotOutput struct { - _ struct{} `type:"structure"` - - // The presigned URL for the snapshot data. - // - // This URL will be available for 10 minutes, and can be used to download the - // snapshot content. If the URL expires, a new one can be requested using the - // same operation. - S3Url *string `min:"10" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExportSnapshotOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExportSnapshotOutput) GoString() string { - return s.String() -} - -// SetS3Url sets the S3Url field's value. -func (s *ExportSnapshotOutput) SetS3Url(v string) *ExportSnapshotOutput { - s.S3Url = &v - return s -} - -// Details about the extension. -type ExtensionDetails struct { - _ struct{} `type:"structure"` - - // The description of the extension. - Description *string `type:"string"` - - // The name of the extension. - Name *string `min:"1" type:"string"` - - // The namespace (qualifier) of the extension. - Namespace *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExtensionDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExtensionDetails) GoString() string { - return s.String() -} - -// SetDescription sets the Description field's value. -func (s *ExtensionDetails) SetDescription(v string) *ExtensionDetails { - s.Description = &v - return s -} - -// SetName sets the Name field's value. -func (s *ExtensionDetails) SetName(v string) *ExtensionDetails { - s.Name = &v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *ExtensionDetails) SetNamespace(v string) *ExtensionDetails { - s.Namespace = &v - return s -} - -// Details about the extension version. -type ExtensionVersionDetails struct { - _ struct{} `type:"structure"` - - // The name of the extension. - Name *string `min:"1" type:"string"` - - // The namespace (qualifier) of the extension. - Namespace *string `min:"1" type:"string"` - - // The model that defines the interface for this extension version. - Schema *string `type:"string"` - - // The version of the extension. - Version *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 ExtensionVersionDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExtensionVersionDetails) GoString() string { - return s.String() -} - -// SetName sets the Name field's value. -func (s *ExtensionVersionDetails) SetName(v string) *ExtensionVersionDetails { - s.Name = &v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *ExtensionVersionDetails) SetNamespace(v string) *ExtensionVersionDetails { - s.Namespace = &v - return s -} - -// SetSchema sets the Schema field's value. -func (s *ExtensionVersionDetails) SetSchema(v string) *ExtensionVersionDetails { - s.Schema = &v - return s -} - -// SetVersion sets the Version field's value. -func (s *ExtensionVersionDetails) SetVersion(v string) *ExtensionVersionDetails { - s.Version = &v - return s -} - -// Details about the game configuration. -// -// The game configuration is organized into named sections, where the schema -// of each section is defined by an extension. The schema for these sections -// can be retrieved using the GetExtensionVersion operation. -type GameConfigurationDetails struct { - _ struct{} `type:"structure"` - - // The date when the game was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The date when the game was last modified. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // Configuration data, organized by section name. - Sections map[string]*Section `type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GameConfigurationDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GameConfigurationDetails) GoString() string { - return s.String() -} - -// SetCreated sets the Created field's value. -func (s *GameConfigurationDetails) SetCreated(v time.Time) *GameConfigurationDetails { - s.Created = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *GameConfigurationDetails) SetLastUpdated(v time.Time) *GameConfigurationDetails { - s.LastUpdated = &v - return s -} - -// SetSections sets the Sections field's value. -func (s *GameConfigurationDetails) SetSections(v map[string]*Section) *GameConfigurationDetails { - s.Sections = v - return s -} - -// Details about a game. -type GameDetails struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of this game. - Arn *string `min:"20" type:"string"` - - // The date when the game was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The description of the game. - Description *string `type:"string"` - - // Determines if the game can be deleted. - EnableTerminationProtection *bool `type:"boolean"` - - // The date when the game was last modified. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The name of the game. - Name *string `min:"1" type:"string"` - - // The state of the game. - State *string `type:"string" enum:"GameState"` - - // The tags associated with the game. - Tags map[string]*string `min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GameDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GameDetails) GoString() string { - return s.String() -} - -// SetArn sets the Arn field's value. -func (s *GameDetails) SetArn(v string) *GameDetails { - s.Arn = &v - return s -} - -// SetCreated sets the Created field's value. -func (s *GameDetails) SetCreated(v time.Time) *GameDetails { - s.Created = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *GameDetails) SetDescription(v string) *GameDetails { - s.Description = &v - return s -} - -// SetEnableTerminationProtection sets the EnableTerminationProtection field's value. -func (s *GameDetails) SetEnableTerminationProtection(v bool) *GameDetails { - s.EnableTerminationProtection = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *GameDetails) SetLastUpdated(v time.Time) *GameDetails { - s.LastUpdated = &v - return s -} - -// SetName sets the Name field's value. -func (s *GameDetails) SetName(v string) *GameDetails { - s.Name = &v - return s -} - -// SetState sets the State field's value. -func (s *GameDetails) SetState(v string) *GameDetails { - s.State = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *GameDetails) SetTags(v map[string]*string) *GameDetails { - s.Tags = v - return s -} - -// The summary of the properties of a game. -type GameSummary struct { - _ struct{} `type:"structure"` - - // The description of the game. - Description *string `type:"string"` - - // The name of the game. - Name *string `min:"1" type:"string"` - - // The state of the game. - State *string `type:"string" enum:"GameState"` - - // The tags associated with the game. - Tags map[string]*string `min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GameSummary) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GameSummary) GoString() string { - return s.String() -} - -// SetDescription sets the Description field's value. -func (s *GameSummary) SetDescription(v string) *GameSummary { - s.Description = &v - return s -} - -// SetName sets the Name field's value. -func (s *GameSummary) SetName(v string) *GameSummary { - s.Name = &v - return s -} - -// SetState sets the State field's value. -func (s *GameSummary) SetState(v string) *GameSummary { - s.State = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *GameSummary) SetTags(v map[string]*string) *GameSummary { - s.Tags = v - return s -} - -// Details about a generated code job. -type GeneratedCodeJobDetails struct { - _ struct{} `type:"structure"` - - // The description of the generated code job. - Description *string `type:"string"` - - // The expiration date and time for the download URL. - // - // The download URL us guaranteed to be available until at least this time. - ExpirationTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The identifier for the generated code job. - GeneratedCodeJobId *string `type:"string"` - - // A presigned URL that can be used to download the generated code. - S3Url *string `min:"10" type:"string"` - - // The status of the generated code job - Status *string `type:"string" enum:"GeneratedCodeJobState"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GeneratedCodeJobDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GeneratedCodeJobDetails) GoString() string { - return s.String() -} - -// SetDescription sets the Description field's value. -func (s *GeneratedCodeJobDetails) SetDescription(v string) *GeneratedCodeJobDetails { - s.Description = &v - return s -} - -// SetExpirationTime sets the ExpirationTime field's value. -func (s *GeneratedCodeJobDetails) SetExpirationTime(v time.Time) *GeneratedCodeJobDetails { - s.ExpirationTime = &v - return s -} - -// SetGeneratedCodeJobId sets the GeneratedCodeJobId field's value. -func (s *GeneratedCodeJobDetails) SetGeneratedCodeJobId(v string) *GeneratedCodeJobDetails { - s.GeneratedCodeJobId = &v - return s -} - -// SetS3Url sets the S3Url field's value. -func (s *GeneratedCodeJobDetails) SetS3Url(v string) *GeneratedCodeJobDetails { - s.S3Url = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *GeneratedCodeJobDetails) SetStatus(v string) *GeneratedCodeJobDetails { - s.Status = &v - return s -} - -// Properties that specify the code generator for a generated code job. -type Generator struct { - _ struct{} `type:"structure"` - - // The target version of the GameSparks Game SDK. - GameSdkVersion *string `min:"5" type:"string"` - - // The programming language for the generated code. - // - // Not all languages are supported for each platform. For cases where multiple - // languages are supported, this parameter specifies the language to be used. - // If this value is omitted, the default language for the target platform will - // be used. - Language *string `min:"1" type:"string"` - - // The platform that will be used to run the generated code. - TargetPlatform *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s Generator) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s Generator) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *Generator) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Generator"} - if s.GameSdkVersion != nil && len(*s.GameSdkVersion) < 5 { - invalidParams.Add(request.NewErrParamMinLen("GameSdkVersion", 5)) - } - if s.Language != nil && len(*s.Language) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Language", 1)) - } - if s.TargetPlatform != nil && len(*s.TargetPlatform) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TargetPlatform", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameSdkVersion sets the GameSdkVersion field's value. -func (s *Generator) SetGameSdkVersion(v string) *Generator { - s.GameSdkVersion = &v - return s -} - -// SetLanguage sets the Language field's value. -func (s *Generator) SetLanguage(v string) *Generator { - s.Language = &v - return s -} - -// SetTargetPlatform sets the TargetPlatform field's value. -func (s *Generator) SetTargetPlatform(v string) *Generator { - s.TargetPlatform = &v - return s -} - -type GetExtensionInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the extension. - // - // Name is a required field - Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"` - - // The namespace (qualifier) of the extension. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" 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 GetExtensionInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetExtensionInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetExtensionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetExtensionInput"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetName sets the Name field's value. -func (s *GetExtensionInput) SetName(v string) *GetExtensionInput { - s.Name = &v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *GetExtensionInput) SetNamespace(v string) *GetExtensionInput { - s.Namespace = &v - return s -} - -type GetExtensionOutput struct { - _ struct{} `type:"structure"` - - // Details about the extension. - Extension *ExtensionDetails `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 GetExtensionOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetExtensionOutput) GoString() string { - return s.String() -} - -// SetExtension sets the Extension field's value. -func (s *GetExtensionOutput) SetExtension(v *ExtensionDetails) *GetExtensionOutput { - s.Extension = v - return s -} - -type GetExtensionVersionInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The version of the extension. - // - // ExtensionVersion is a required field - ExtensionVersion *string `location:"uri" locationName:"ExtensionVersion" type:"string" required:"true"` - - // The name of the extension. - // - // Name is a required field - Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"` - - // The namespace (qualifier) of the extension. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" 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 GetExtensionVersionInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetExtensionVersionInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetExtensionVersionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetExtensionVersionInput"} - if s.ExtensionVersion == nil { - invalidParams.Add(request.NewErrParamRequired("ExtensionVersion")) - } - if s.ExtensionVersion != nil && len(*s.ExtensionVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ExtensionVersion", 1)) - } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetExtensionVersion sets the ExtensionVersion field's value. -func (s *GetExtensionVersionInput) SetExtensionVersion(v string) *GetExtensionVersionInput { - s.ExtensionVersion = &v - return s -} - -// SetName sets the Name field's value. -func (s *GetExtensionVersionInput) SetName(v string) *GetExtensionVersionInput { - s.Name = &v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *GetExtensionVersionInput) SetNamespace(v string) *GetExtensionVersionInput { - s.Namespace = &v - return s -} - -type GetExtensionVersionOutput struct { - _ struct{} `type:"structure"` - - // The version of the extension. - ExtensionVersion *ExtensionVersionDetails `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 GetExtensionVersionOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetExtensionVersionOutput) GoString() string { - return s.String() -} - -// SetExtensionVersion sets the ExtensionVersion field's value. -func (s *GetExtensionVersionOutput) SetExtensionVersion(v *ExtensionVersionDetails) *GetExtensionVersionOutput { - s.ExtensionVersion = v - return s -} - -type GetGameConfigurationInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The list of sections to return. - Sections []*string `location:"querystring" locationName:"Sections" 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 GetGameConfigurationInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetGameConfigurationInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetGameConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetGameConfigurationInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Sections != nil && len(s.Sections) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Sections", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *GetGameConfigurationInput) SetGameName(v string) *GetGameConfigurationInput { - s.GameName = &v - return s -} - -// SetSections sets the Sections field's value. -func (s *GetGameConfigurationInput) SetSections(v []*string) *GetGameConfigurationInput { - s.Sections = v - return s -} - -type GetGameConfigurationOutput struct { - _ struct{} `type:"structure"` - - // Details about the game configuration. - GameConfiguration *GameConfigurationDetails `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 GetGameConfigurationOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetGameConfigurationOutput) GoString() string { - return s.String() -} - -// SetGameConfiguration sets the GameConfiguration field's value. -func (s *GetGameConfigurationOutput) SetGameConfiguration(v *GameConfigurationDetails) *GetGameConfigurationOutput { - s.GameConfiguration = v - return s -} - -type GetGameInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" 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 GetGameInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetGameInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetGameInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetGameInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *GetGameInput) SetGameName(v string) *GetGameInput { - s.GameName = &v - return s -} - -type GetGameOutput struct { - _ struct{} `type:"structure"` - - // The details of the game. - Game *GameDetails `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 GetGameOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetGameOutput) GoString() string { - return s.String() -} - -// SetGame sets the Game field's value. -func (s *GetGameOutput) SetGame(v *GameDetails) *GetGameOutput { - s.Game = v - return s -} - -type GetGeneratedCodeJobInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The identifier of the code generation job. - // - // JobId is a required field - JobId *string `location:"uri" locationName:"JobId" type:"string" required:"true"` - - // The identifier of the snapshot for the code generation job. - // - // SnapshotId is a required field - SnapshotId *string `location:"uri" locationName:"SnapshotId" min:"33" 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 GetGeneratedCodeJobInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetGeneratedCodeJobInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetGeneratedCodeJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetGeneratedCodeJobInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.JobId == nil { - invalidParams.Add(request.NewErrParamRequired("JobId")) - } - if s.JobId != nil && len(*s.JobId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *GetGeneratedCodeJobInput) SetGameName(v string) *GetGeneratedCodeJobInput { - s.GameName = &v - return s -} - -// SetJobId sets the JobId field's value. -func (s *GetGeneratedCodeJobInput) SetJobId(v string) *GetGeneratedCodeJobInput { - s.JobId = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *GetGeneratedCodeJobInput) SetSnapshotId(v string) *GetGeneratedCodeJobInput { - s.SnapshotId = &v - return s -} - -type GetGeneratedCodeJobOutput struct { - _ struct{} `type:"structure"` - - // Details about the generated code job. - GeneratedCodeJob *GeneratedCodeJobDetails `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 GetGeneratedCodeJobOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetGeneratedCodeJobOutput) GoString() string { - return s.String() -} - -// SetGeneratedCodeJob sets the GeneratedCodeJob field's value. -func (s *GetGeneratedCodeJobOutput) SetGeneratedCodeJob(v *GeneratedCodeJobDetails) *GetGeneratedCodeJobOutput { - s.GeneratedCodeJob = v - return s -} - -type GetPlayerConnectionStatusInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The unique identifier representing a player. - // - // PlayerId is a required field - PlayerId *string `location:"uri" locationName:"PlayerId" min:"1" type:"string" required:"true"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 GetPlayerConnectionStatusInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetPlayerConnectionStatusInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetPlayerConnectionStatusInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetPlayerConnectionStatusInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.PlayerId == nil { - invalidParams.Add(request.NewErrParamRequired("PlayerId")) - } - if s.PlayerId != nil && len(*s.PlayerId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PlayerId", 1)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *GetPlayerConnectionStatusInput) SetGameName(v string) *GetPlayerConnectionStatusInput { - s.GameName = &v - return s -} - -// SetPlayerId sets the PlayerId field's value. -func (s *GetPlayerConnectionStatusInput) SetPlayerId(v string) *GetPlayerConnectionStatusInput { - s.PlayerId = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *GetPlayerConnectionStatusInput) SetStageName(v string) *GetPlayerConnectionStatusInput { - s.StageName = &v - return s -} - -type GetPlayerConnectionStatusOutput struct { - _ struct{} `type:"structure"` - - // The list of connection ids, one for each connection in use by the player. - Connections []*Connection `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 GetPlayerConnectionStatusOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetPlayerConnectionStatusOutput) GoString() string { - return s.String() -} - -// SetConnections sets the Connections field's value. -func (s *GetPlayerConnectionStatusOutput) SetConnections(v []*Connection) *GetPlayerConnectionStatusOutput { - s.Connections = v - return s -} - -type GetSnapshotInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The list of game configuration sections to be described. - Sections []*string `location:"querystring" locationName:"Sections" min:"1" type:"list"` - - // The identifier of the snapshot. - // - // SnapshotId is a required field - SnapshotId *string `location:"uri" locationName:"SnapshotId" min:"33" 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 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() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetSnapshotInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Sections != nil && len(s.Sections) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Sections", 1)) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *GetSnapshotInput) SetGameName(v string) *GetSnapshotInput { - s.GameName = &v - return s -} - -// SetSections sets the Sections field's value. -func (s *GetSnapshotInput) SetSections(v []*string) *GetSnapshotInput { - s.Sections = v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *GetSnapshotInput) SetSnapshotId(v string) *GetSnapshotInput { - s.SnapshotId = &v - return s -} - -type GetSnapshotOutput struct { - _ struct{} `type:"structure"` - - // Properties that provide details of the snapshot. - Snapshot *SnapshotDetails `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 *SnapshotDetails) *GetSnapshotOutput { - s.Snapshot = v - return s -} - -type GetStageDeploymentInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The identifier of the stage deployment. StartStageDeployment returns the - // identifier that you use here. - DeploymentId *string `location:"querystring" locationName:"DeploymentId" min:"1" type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 GetStageDeploymentInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetStageDeploymentInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetStageDeploymentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetStageDeploymentInput"} - if s.DeploymentId != nil && len(*s.DeploymentId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DeploymentId", 1)) - } - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDeploymentId sets the DeploymentId field's value. -func (s *GetStageDeploymentInput) SetDeploymentId(v string) *GetStageDeploymentInput { - s.DeploymentId = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *GetStageDeploymentInput) SetGameName(v string) *GetStageDeploymentInput { - s.GameName = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *GetStageDeploymentInput) SetStageName(v string) *GetStageDeploymentInput { - s.StageName = &v - return s -} - -type GetStageDeploymentOutput struct { - _ struct{} `type:"structure"` - - // Properties that provide details of the stage deployment. - StageDeployment *StageDeploymentDetails `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 GetStageDeploymentOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetStageDeploymentOutput) GoString() string { - return s.String() -} - -// SetStageDeployment sets the StageDeployment field's value. -func (s *GetStageDeploymentOutput) SetStageDeployment(v *StageDeploymentDetails) *GetStageDeploymentOutput { - s.StageDeployment = v - return s -} - -type GetStageInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 GetStageInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetStageInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetStageInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetStageInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *GetStageInput) SetGameName(v string) *GetStageInput { - s.GameName = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *GetStageInput) SetStageName(v string) *GetStageInput { - s.StageName = &v - return s -} - -type GetStageOutput struct { - _ struct{} `type:"structure"` - - // Properties that provide details of the stage. - Stage *StageDetails `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 GetStageOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetStageOutput) GoString() string { - return s.String() -} - -// SetStage sets the Stage field's value. -func (s *GetStageOutput) SetStage(v *StageDetails) *GetStageOutput { - s.Stage = v - return s -} - -type ImportGameConfigurationInput struct { - _ struct{} `type:"structure"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The source used to import configuration sections. - // - // ImportSource is a required field - ImportSource *ImportGameConfigurationSource `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 ImportGameConfigurationInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ImportGameConfigurationInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ImportGameConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ImportGameConfigurationInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.ImportSource == nil { - invalidParams.Add(request.NewErrParamRequired("ImportSource")) - } - if s.ImportSource != nil { - if err := s.ImportSource.Validate(); err != nil { - invalidParams.AddNested("ImportSource", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *ImportGameConfigurationInput) SetGameName(v string) *ImportGameConfigurationInput { - s.GameName = &v - return s -} - -// SetImportSource sets the ImportSource field's value. -func (s *ImportGameConfigurationInput) SetImportSource(v *ImportGameConfigurationSource) *ImportGameConfigurationInput { - s.ImportSource = v - return s -} - -type ImportGameConfigurationOutput struct { - _ struct{} `type:"structure"` - - // Details about the game configuration. - GameConfiguration *GameConfigurationDetails `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 ImportGameConfigurationOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ImportGameConfigurationOutput) GoString() string { - return s.String() -} - -// SetGameConfiguration sets the GameConfiguration field's value. -func (s *ImportGameConfigurationOutput) SetGameConfiguration(v *GameConfigurationDetails) *ImportGameConfigurationOutput { - s.GameConfiguration = v - return s -} - -// The source used to import configuration sections. -type ImportGameConfigurationSource struct { - _ struct{} `type:"structure"` - - // The JSON string containing the configuration sections. - // File is automatically base64 encoded/decoded by the SDK. - // - // File is a required field - File []byte `min:"10" type:"blob" 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 ImportGameConfigurationSource) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ImportGameConfigurationSource) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ImportGameConfigurationSource) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ImportGameConfigurationSource"} - if s.File == nil { - invalidParams.Add(request.NewErrParamRequired("File")) - } - if s.File != nil && len(s.File) < 10 { - invalidParams.Add(request.NewErrParamMinLen("File", 10)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetFile sets the File field's value. -func (s *ImportGameConfigurationSource) SetFile(v []byte) *ImportGameConfigurationSource { - s.File = v - return s -} - -// The service encountered an internal error. -type InternalServerException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s InternalServerException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s InternalServerException) GoString() string { - return s.String() -} - -func newErrorInternalServerException(v protocol.ResponseMetadata) error { - return &InternalServerException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *InternalServerException) Code() string { - return "InternalServerException" -} - -// Message returns the exception's message. -func (s *InternalServerException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InternalServerException) OrigErr() error { - return nil -} - -func (s *InternalServerException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *InternalServerException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *InternalServerException) RequestID() string { - return s.RespMetadata.RequestID -} - -type ListExtensionVersionsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The name of the extension. - // - // Name is a required field - Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"` - - // The namespace (qualifier) of the extension. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" min:"1" type:"string" required:"true"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionVersionsInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionVersionsInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListExtensionVersionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListExtensionVersionsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListExtensionVersionsInput) SetMaxResults(v int64) *ListExtensionVersionsInput { - s.MaxResults = &v - return s -} - -// SetName sets the Name field's value. -func (s *ListExtensionVersionsInput) SetName(v string) *ListExtensionVersionsInput { - s.Name = &v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *ListExtensionVersionsInput) SetNamespace(v string) *ListExtensionVersionsInput { - s.Namespace = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListExtensionVersionsInput) SetNextToken(v string) *ListExtensionVersionsInput { - s.NextToken = &v - return s -} - -type ListExtensionVersionsOutput struct { - _ struct{} `type:"structure"` - - // The list of extension versions. - ExtensionVersions []*ExtensionVersionDetails `type:"list"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionVersionsOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionVersionsOutput) GoString() string { - return s.String() -} - -// SetExtensionVersions sets the ExtensionVersions field's value. -func (s *ListExtensionVersionsOutput) SetExtensionVersions(v []*ExtensionVersionDetails) *ListExtensionVersionsOutput { - s.ExtensionVersions = v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListExtensionVersionsOutput) SetNextToken(v string) *ListExtensionVersionsOutput { - s.NextToken = &v - return s -} - -type ListExtensionsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionsInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionsInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListExtensionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListExtensionsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListExtensionsInput) SetMaxResults(v int64) *ListExtensionsInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListExtensionsInput) SetNextToken(v string) *ListExtensionsInput { - s.NextToken = &v - return s -} - -type ListExtensionsOutput struct { - _ struct{} `type:"structure"` - - // The list of extensions. - Extensions []*ExtensionDetails `type:"list"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionsOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListExtensionsOutput) GoString() string { - return s.String() -} - -// SetExtensions sets the Extensions field's value. -func (s *ListExtensionsOutput) SetExtensions(v []*ExtensionDetails) *ListExtensionsOutput { - s.Extensions = v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListExtensionsOutput) SetNextToken(v string) *ListExtensionsOutput { - s.NextToken = &v - return s -} - -type ListGamesInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGamesInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGamesInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListGamesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListGamesInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListGamesInput) SetMaxResults(v int64) *ListGamesInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListGamesInput) SetNextToken(v string) *ListGamesInput { - s.NextToken = &v - return s -} - -type ListGamesOutput struct { - _ struct{} `type:"structure"` - - // The list of games. - Games []*GameSummary `type:"list"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGamesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGamesOutput) GoString() string { - return s.String() -} - -// SetGames sets the Games field's value. -func (s *ListGamesOutput) SetGames(v []*GameSummary) *ListGamesOutput { - s.Games = v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListGamesOutput) SetNextToken(v string) *ListGamesOutput { - s.NextToken = &v - return s -} - -type ListGeneratedCodeJobsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` - - // The identifier of the snapshot. - // - // SnapshotId is a required field - SnapshotId *string `location:"uri" locationName:"SnapshotId" min:"33" 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 ListGeneratedCodeJobsInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGeneratedCodeJobsInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListGeneratedCodeJobsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListGeneratedCodeJobsInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *ListGeneratedCodeJobsInput) SetGameName(v string) *ListGeneratedCodeJobsInput { - s.GameName = &v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListGeneratedCodeJobsInput) SetMaxResults(v int64) *ListGeneratedCodeJobsInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListGeneratedCodeJobsInput) SetNextToken(v string) *ListGeneratedCodeJobsInput { - s.NextToken = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *ListGeneratedCodeJobsInput) SetSnapshotId(v string) *ListGeneratedCodeJobsInput { - s.SnapshotId = &v - return s -} - -type ListGeneratedCodeJobsOutput struct { - _ struct{} `type:"structure"` - - // The list of generated code jobs. - GeneratedCodeJobs []*GeneratedCodeJobDetails `type:"list"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGeneratedCodeJobsOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListGeneratedCodeJobsOutput) GoString() string { - return s.String() -} - -// SetGeneratedCodeJobs sets the GeneratedCodeJobs field's value. -func (s *ListGeneratedCodeJobsOutput) SetGeneratedCodeJobs(v []*GeneratedCodeJobDetails) *ListGeneratedCodeJobsOutput { - s.GeneratedCodeJobs = v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListGeneratedCodeJobsOutput) SetNextToken(v string) *ListGeneratedCodeJobsOutput { - s.NextToken = &v - return s -} - -type ListSnapshotsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s 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.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *ListSnapshotsInput) SetGameName(v string) *ListSnapshotsInput { - s.GameName = &v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListSnapshotsInput) SetMaxResults(v int64) *ListSnapshotsInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListSnapshotsInput) SetNextToken(v string) *ListSnapshotsInput { - s.NextToken = &v - return s -} - -type ListSnapshotsOutput struct { - _ struct{} `type:"structure"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` - - // A list of snapshot summaries. You can use the returned snapshot IDs in the - // UpdateSnapshot and GetSnapshot operations. - Snapshots []*SnapshotSummary `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 []*SnapshotSummary) *ListSnapshotsOutput { - s.Snapshots = v - return s -} - -type ListStageDeploymentsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 ListStageDeploymentsInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListStageDeploymentsInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListStageDeploymentsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListStageDeploymentsInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *ListStageDeploymentsInput) SetGameName(v string) *ListStageDeploymentsInput { - s.GameName = &v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListStageDeploymentsInput) SetMaxResults(v int64) *ListStageDeploymentsInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListStageDeploymentsInput) SetNextToken(v string) *ListStageDeploymentsInput { - s.NextToken = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *ListStageDeploymentsInput) SetStageName(v string) *ListStageDeploymentsInput { - s.StageName = &v - return s -} - -type ListStageDeploymentsOutput struct { - _ struct{} `type:"structure"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` - - // A list of stage deployment summaries. You can use the deployment IDs in the - // UpdateStageDeployment and GetStageDeployment actions. - StageDeployments []*StageDeploymentSummary `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 ListStageDeploymentsOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListStageDeploymentsOutput) GoString() string { - return s.String() -} - -// SetNextToken sets the NextToken field's value. -func (s *ListStageDeploymentsOutput) SetNextToken(v string) *ListStageDeploymentsOutput { - s.NextToken = &v - return s -} - -// SetStageDeployments sets the StageDeployments field's value. -func (s *ListStageDeploymentsOutput) SetStageDeployments(v []*StageDeploymentSummary) *ListStageDeploymentsOutput { - s.StageDeployments = v - return s -} - -type ListStagesInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The maximum number of results to return. - // - // Use this parameter with NextToken to get results as a set of sequential pages. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token that indicates the start of the next sequential page of results. - // - // Use the token that is returned with a previous call to this operation. To - // start at the beginning of the result set, do not specify a value. - NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListStagesInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListStagesInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListStagesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListStagesInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *ListStagesInput) SetGameName(v string) *ListStagesInput { - s.GameName = &v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListStagesInput) SetMaxResults(v int64) *ListStagesInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListStagesInput) SetNextToken(v string) *ListStagesInput { - s.NextToken = &v - return s -} - -type ListStagesOutput struct { - _ struct{} `type:"structure"` - - // The token that indicates the start of the next sequential page of results. - // - // Use this value when making the next call to this operation to continue where - // the last one finished. - NextToken *string `min:"1" type:"string"` - - // A list of stage summaries. You can use the stage names in the UpdateStage - // and GetStage actions. - Stages []*StageSummary `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 ListStagesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListStagesOutput) GoString() string { - return s.String() -} - -// SetNextToken sets the NextToken field's value. -func (s *ListStagesOutput) SetNextToken(v string) *ListStagesOutput { - s.NextToken = &v - return s -} - -// SetStages sets the Stages field's value. -func (s *ListStagesOutput) SetStages(v []*StageSummary) *ListStagesOutput { - s.Stages = v - return s -} - -type ListTagsForResourceInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The Amazon Resource Name (ARN) of the GameSparks resource. - // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"20" type:"string" required:"true"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s 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) < 20 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) - } - - 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"` - - // The tags associated with the resource. - Tags map[string]*string `locationName:"tags" min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListTagsForResourceOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListTagsForResourceOutput) GoString() string { - return s.String() -} - -// SetTags sets the Tags field's value. -func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { - s.Tags = v - return s -} - -// The resource specified in the request does not exist. -type ResourceNotFoundException 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 ResourceNotFoundException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ResourceNotFoundException) GoString() string { - return s.String() -} - -func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { - return &ResourceNotFoundException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ResourceNotFoundException) Code() string { - return "ResourceNotFoundException" -} - -// Message returns the exception's message. -func (s *ResourceNotFoundException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceNotFoundException) OrigErr() error { - return nil -} - -func (s *ResourceNotFoundException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *ResourceNotFoundException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *ResourceNotFoundException) RequestID() string { - return s.RespMetadata.RequestID -} - -// The configuration section. -type Section struct { - _ struct{} `type:"structure"` - - // The name of the section. - Name *string `min:"1" type:"string"` - - // The size, in bytes, of the section contents. - Size *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 Section) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s Section) GoString() string { - return s.String() -} - -// SetName sets the Name field's value. -func (s *Section) SetName(v string) *Section { - s.Name = &v - return s -} - -// SetSize sets the Size field's value. -func (s *Section) SetSize(v int64) *Section { - s.Size = &v - return s -} - -// A single modification to the configuration section. -type SectionModification struct { - _ struct{} `type:"structure"` - - // The operation to be performed on a configuration section. - // - // Content can be added, deleted, or replaced within a section. - // - // Operation is a required field - Operation *string `type:"string" required:"true" enum:"Operation"` - - // The path within the section content to be modified. - // - // Path is a required field - Path *string `min:"1" type:"string" required:"true"` - - // The name of the section to be modified. - // - // Section is a required field - Section *string `min:"1" type:"string" required:"true"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s SectionModification) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s SectionModification) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *SectionModification) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SectionModification"} - if s.Operation == nil { - invalidParams.Add(request.NewErrParamRequired("Operation")) - } - if s.Path == nil { - invalidParams.Add(request.NewErrParamRequired("Path")) - } - if s.Path != nil && len(*s.Path) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Path", 1)) - } - if s.Section == nil { - invalidParams.Add(request.NewErrParamRequired("Section")) - } - if s.Section != nil && len(*s.Section) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Section", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetOperation sets the Operation field's value. -func (s *SectionModification) SetOperation(v string) *SectionModification { - s.Operation = &v - return s -} - -// SetPath sets the Path field's value. -func (s *SectionModification) SetPath(v string) *SectionModification { - s.Path = &v - return s -} - -// SetSection sets the Section field's value. -func (s *SectionModification) SetSection(v string) *SectionModification { - s.Section = &v - return s -} - -// The request would result in exceeding service quota. -type ServiceQuotaExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ServiceQuotaExceededException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ServiceQuotaExceededException) GoString() string { - return s.String() -} - -func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { - return &ServiceQuotaExceededException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ServiceQuotaExceededException) Code() string { - return "ServiceQuotaExceededException" -} - -// Message returns the exception's message. -func (s *ServiceQuotaExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ServiceQuotaExceededException) OrigErr() error { - return nil -} - -func (s *ServiceQuotaExceededException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *ServiceQuotaExceededException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *ServiceQuotaExceededException) RequestID() string { - return s.RespMetadata.RequestID -} - -// Properties that provide details of a snapshot. -type SnapshotDetails struct { - _ struct{} `type:"structure"` - - // The timestamp of when the snapshot was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The description of the snapshot. - Description *string `type:"string"` - - // The identifier of the snapshot. - Id *string `min:"33" type:"string"` - - // The timestamp of when the snapshot was last updated. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The sections in the snapshot. - Sections map[string]*Section `type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s SnapshotDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s SnapshotDetails) GoString() string { - return s.String() -} - -// SetCreated sets the Created field's value. -func (s *SnapshotDetails) SetCreated(v time.Time) *SnapshotDetails { - s.Created = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *SnapshotDetails) SetDescription(v string) *SnapshotDetails { - s.Description = &v - return s -} - -// SetId sets the Id field's value. -func (s *SnapshotDetails) SetId(v string) *SnapshotDetails { - s.Id = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *SnapshotDetails) SetLastUpdated(v time.Time) *SnapshotDetails { - s.LastUpdated = &v - return s -} - -// SetSections sets the Sections field's value. -func (s *SnapshotDetails) SetSections(v map[string]*Section) *SnapshotDetails { - s.Sections = v - return s -} - -// The summary of the properties of a snapshot. -type SnapshotSummary struct { - _ struct{} `type:"structure"` - - // The timestamp of when the snapshot was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The description of the snapshot. - Description *string `type:"string"` - - // The identifier of the snapshot. - Id *string `min:"33" type:"string"` - - // Then timestamp of when the snapshot was last updated. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s SnapshotSummary) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s SnapshotSummary) GoString() string { - return s.String() -} - -// SetCreated sets the Created field's value. -func (s *SnapshotSummary) SetCreated(v time.Time) *SnapshotSummary { - s.Created = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *SnapshotSummary) SetDescription(v string) *SnapshotSummary { - s.Description = &v - return s -} - -// SetId sets the Id field's value. -func (s *SnapshotSummary) SetId(v string) *SnapshotSummary { - s.Id = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *SnapshotSummary) SetLastUpdated(v time.Time) *SnapshotSummary { - s.LastUpdated = &v - return s -} - -// Properties that provide details of a stage deployment. -type StageDeploymentDetails struct { - _ struct{} `type:"structure"` - - // The timestamp of when the stage deployment was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The type of action of the stage deployment. - DeploymentAction *string `type:"string" enum:"DeploymentAction"` - - // The identifier of the deployment. - DeploymentId *string `min:"1" type:"string"` - - // The result of the deployment. - DeploymentResult *DeploymentResult `type:"structure"` - - // The state of the deployment. - DeploymentState *string `type:"string" enum:"DeploymentState"` - - // The timestamp of when the deployment was last updated. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The identifier of the snapshot associated with the stage deployment. - SnapshotId *string `min:"33" 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 StageDeploymentDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StageDeploymentDetails) GoString() string { - return s.String() -} - -// SetCreated sets the Created field's value. -func (s *StageDeploymentDetails) SetCreated(v time.Time) *StageDeploymentDetails { - s.Created = &v - return s -} - -// SetDeploymentAction sets the DeploymentAction field's value. -func (s *StageDeploymentDetails) SetDeploymentAction(v string) *StageDeploymentDetails { - s.DeploymentAction = &v - return s -} - -// SetDeploymentId sets the DeploymentId field's value. -func (s *StageDeploymentDetails) SetDeploymentId(v string) *StageDeploymentDetails { - s.DeploymentId = &v - return s -} - -// SetDeploymentResult sets the DeploymentResult field's value. -func (s *StageDeploymentDetails) SetDeploymentResult(v *DeploymentResult) *StageDeploymentDetails { - s.DeploymentResult = v - return s -} - -// SetDeploymentState sets the DeploymentState field's value. -func (s *StageDeploymentDetails) SetDeploymentState(v string) *StageDeploymentDetails { - s.DeploymentState = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *StageDeploymentDetails) SetLastUpdated(v time.Time) *StageDeploymentDetails { - s.LastUpdated = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *StageDeploymentDetails) SetSnapshotId(v string) *StageDeploymentDetails { - s.SnapshotId = &v - return s -} - -// The summary of the properties of a stage deployment. -type StageDeploymentSummary struct { - _ struct{} `type:"structure"` - - // The type of action of the deployment. - DeploymentAction *string `type:"string" enum:"DeploymentAction"` - - // The identifier of the deployment. - DeploymentId *string `min:"1" type:"string"` - - // The result of the deployment. - DeploymentResult *DeploymentResult `type:"structure"` - - // The state of the deployment. - DeploymentState *string `type:"string" enum:"DeploymentState"` - - // The timestamp of when the deployment was last updated. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The identifier of the snapshot associated with the stage deployment. - SnapshotId *string `min:"33" 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 StageDeploymentSummary) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StageDeploymentSummary) GoString() string { - return s.String() -} - -// SetDeploymentAction sets the DeploymentAction field's value. -func (s *StageDeploymentSummary) SetDeploymentAction(v string) *StageDeploymentSummary { - s.DeploymentAction = &v - return s -} - -// SetDeploymentId sets the DeploymentId field's value. -func (s *StageDeploymentSummary) SetDeploymentId(v string) *StageDeploymentSummary { - s.DeploymentId = &v - return s -} - -// SetDeploymentResult sets the DeploymentResult field's value. -func (s *StageDeploymentSummary) SetDeploymentResult(v *DeploymentResult) *StageDeploymentSummary { - s.DeploymentResult = v - return s -} - -// SetDeploymentState sets the DeploymentState field's value. -func (s *StageDeploymentSummary) SetDeploymentState(v string) *StageDeploymentSummary { - s.DeploymentState = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *StageDeploymentSummary) SetLastUpdated(v time.Time) *StageDeploymentSummary { - s.LastUpdated = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *StageDeploymentSummary) SetSnapshotId(v string) *StageDeploymentSummary { - s.SnapshotId = &v - return s -} - -// Properties that provide details of a stage. -type StageDetails struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the stage. - Arn *string `min:"20" type:"string"` - - // The timestamp of when the stage was created. - Created *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The description of the stage. - Description *string `type:"string"` - - // The game key associated with the stage. - // - // The game key is a unique identifier that the game client uses to connect - // to the GameSparks backend. - GameKey *string `min:"1" type:"string"` - - // The timestamp of when the stage was last updated. - LastUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` - - // The Amazon CloudWatch log group for game runtimes deployed to the stage. - LogGroup *string `min:"1" type:"string"` - - // The name of the stage. - Name *string `min:"1" type:"string"` - - // The Amazon Resource Name (ARN) of the role used to run the game runtimes - // deployed to the stage. - Role *string `min:"20" type:"string"` - - // The state of the stage. - State *string `type:"string" enum:"StageState"` - - // The tags associated with the stage. - Tags map[string]*string `min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StageDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StageDetails) GoString() string { - return s.String() -} - -// SetArn sets the Arn field's value. -func (s *StageDetails) SetArn(v string) *StageDetails { - s.Arn = &v - return s -} - -// SetCreated sets the Created field's value. -func (s *StageDetails) SetCreated(v time.Time) *StageDetails { - s.Created = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *StageDetails) SetDescription(v string) *StageDetails { - s.Description = &v - return s -} - -// SetGameKey sets the GameKey field's value. -func (s *StageDetails) SetGameKey(v string) *StageDetails { - s.GameKey = &v - return s -} - -// SetLastUpdated sets the LastUpdated field's value. -func (s *StageDetails) SetLastUpdated(v time.Time) *StageDetails { - s.LastUpdated = &v - return s -} - -// SetLogGroup sets the LogGroup field's value. -func (s *StageDetails) SetLogGroup(v string) *StageDetails { - s.LogGroup = &v - return s -} - -// SetName sets the Name field's value. -func (s *StageDetails) SetName(v string) *StageDetails { - s.Name = &v - return s -} - -// SetRole sets the Role field's value. -func (s *StageDetails) SetRole(v string) *StageDetails { - s.Role = &v - return s -} - -// SetState sets the State field's value. -func (s *StageDetails) SetState(v string) *StageDetails { - s.State = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *StageDetails) SetTags(v map[string]*string) *StageDetails { - s.Tags = v - return s -} - -// The summary of the properties of a stage. -type StageSummary struct { - _ struct{} `type:"structure"` - - // The description of the stage. - Description *string `type:"string"` - - // The game key associated with the stage. - // - // The game key is a unique identifier that the game client uses to connect - // to the GameSparks backend. - GameKey *string `min:"1" type:"string"` - - // The name of the stage. - Name *string `min:"1" type:"string"` - - // The state of the stage. - State *string `type:"string" enum:"StageState"` - - // The tags associated with the stage. - Tags map[string]*string `min:"1" type:"map"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StageSummary) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StageSummary) GoString() string { - return s.String() -} - -// SetDescription sets the Description field's value. -func (s *StageSummary) SetDescription(v string) *StageSummary { - s.Description = &v - return s -} - -// SetGameKey sets the GameKey field's value. -func (s *StageSummary) SetGameKey(v string) *StageSummary { - s.GameKey = &v - return s -} - -// SetName sets the Name field's value. -func (s *StageSummary) SetName(v string) *StageSummary { - s.Name = &v - return s -} - -// SetState sets the State field's value. -func (s *StageSummary) SetState(v string) *StageSummary { - s.State = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *StageSummary) SetTags(v map[string]*string) *StageSummary { - s.Tags = v - return s -} - -type StartGeneratedCodeJobInput struct { - _ struct{} `type:"structure"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // Properties of the generator to use for the job. - // - // Generator is a required field - Generator *Generator `type:"structure" required:"true"` - - // The identifier of the snapshot for which to generate code. - // - // SnapshotId is a required field - SnapshotId *string `location:"uri" locationName:"SnapshotId" min:"33" 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 StartGeneratedCodeJobInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StartGeneratedCodeJobInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *StartGeneratedCodeJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "StartGeneratedCodeJobInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Generator == nil { - invalidParams.Add(request.NewErrParamRequired("Generator")) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - if s.Generator != nil { - if err := s.Generator.Validate(); err != nil { - invalidParams.AddNested("Generator", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *StartGeneratedCodeJobInput) SetGameName(v string) *StartGeneratedCodeJobInput { - s.GameName = &v - return s -} - -// SetGenerator sets the Generator field's value. -func (s *StartGeneratedCodeJobInput) SetGenerator(v *Generator) *StartGeneratedCodeJobInput { - s.Generator = v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *StartGeneratedCodeJobInput) SetSnapshotId(v string) *StartGeneratedCodeJobInput { - s.SnapshotId = &v - return s -} - -type StartGeneratedCodeJobOutput struct { - _ struct{} `type:"structure"` - - // The identifier of the code generation job. You can use this identifier in - // the GetGeneratedCodeJob operation. - GeneratedCodeJobId *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 StartGeneratedCodeJobOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StartGeneratedCodeJobOutput) GoString() string { - return s.String() -} - -// SetGeneratedCodeJobId sets the GeneratedCodeJobId field's value. -func (s *StartGeneratedCodeJobOutput) SetGeneratedCodeJobId(v string) *StartGeneratedCodeJobOutput { - s.GeneratedCodeJobId = &v - return s -} - -type StartStageDeploymentInput struct { - _ struct{} `type:"structure"` - - // A client-defined token. With an active client token in the request, this - // action is idempotent. - ClientToken *string `min:"33" type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The identifier of the snapshot to deploy. - // - // SnapshotId is a required field - SnapshotId *string `min:"33" type:"string" required:"true"` - - // The name of the stage to deploy the snapshot onto. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 StartStageDeploymentInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StartStageDeploymentInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *StartStageDeploymentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "StartStageDeploymentInput"} - if s.ClientToken != nil && len(*s.ClientToken) < 33 { - invalidParams.Add(request.NewErrParamMinLen("ClientToken", 33)) - } - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetClientToken sets the ClientToken field's value. -func (s *StartStageDeploymentInput) SetClientToken(v string) *StartStageDeploymentInput { - s.ClientToken = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *StartStageDeploymentInput) SetGameName(v string) *StartStageDeploymentInput { - s.GameName = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *StartStageDeploymentInput) SetSnapshotId(v string) *StartStageDeploymentInput { - s.SnapshotId = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *StartStageDeploymentInput) SetStageName(v string) *StartStageDeploymentInput { - s.StageName = &v - return s -} - -type StartStageDeploymentOutput struct { - _ struct{} `type:"structure"` - - // Properties that describe the stage deployment. - StageDeployment *StageDeploymentDetails `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 StartStageDeploymentOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s StartStageDeploymentOutput) GoString() string { - return s.String() -} - -// SetStageDeployment sets the StageDeployment field's value. -func (s *StartStageDeploymentOutput) SetStageDeployment(v *StageDeploymentDetails) *StartStageDeploymentOutput { - s.StageDeployment = v - return s -} - -type TagResourceInput struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the resource to add the tags to. - // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"20" type:"string" required:"true"` - - // The tags to add to the resource. - // - // Tags is a required field - Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s TagResourceInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s TagResourceInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *TagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) - } - if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) - } - if s.Tags == nil { - invalidParams.Add(request.NewErrParamRequired("Tags")) - } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetResourceArn sets the ResourceArn field's value. -func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { - s.ResourceArn = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { - s.Tags = v - return s -} - -type TagResourceOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s TagResourceOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s TagResourceOutput) GoString() string { - return s.String() -} - -// The request throughput limit was exceeded. -type ThrottlingException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ThrottlingException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ThrottlingException) GoString() string { - return s.String() -} - -func newErrorThrottlingException(v protocol.ResponseMetadata) error { - return &ThrottlingException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ThrottlingException) Code() string { - return "ThrottlingException" -} - -// Message returns the exception's message. -func (s *ThrottlingException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ThrottlingException) OrigErr() error { - return nil -} - -func (s *ThrottlingException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *ThrottlingException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *ThrottlingException) RequestID() string { - return s.RespMetadata.RequestID -} - -type UntagResourceInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The Amazon Resource Name (ARN) of the resource to remove the tags from. - // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"20" type:"string" required:"true"` - - // The keys of the tags to remove. - // - // TagKeys is a required field - TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UntagResourceInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UntagResourceInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *UntagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) - } - if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) - } - if s.TagKeys == nil { - invalidParams.Add(request.NewErrParamRequired("TagKeys")) - } - if s.TagKeys != nil && len(s.TagKeys) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetResourceArn sets the ResourceArn field's value. -func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { - s.ResourceArn = &v - return s -} - -// SetTagKeys sets the TagKeys field's value. -func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { - s.TagKeys = v - return s -} - -type UntagResourceOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UntagResourceOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UntagResourceOutput) GoString() string { - return s.String() -} - -type UpdateGameConfigurationInput struct { - _ struct{} `type:"structure"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The list of modifications to make. - // - // Modifications is a required field - Modifications []*SectionModification `min:"1" type:"list" required:"true"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGameConfigurationInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGameConfigurationInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateGameConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateGameConfigurationInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Modifications == nil { - invalidParams.Add(request.NewErrParamRequired("Modifications")) - } - if s.Modifications != nil && len(s.Modifications) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Modifications", 1)) - } - if s.Modifications != nil { - for i, v := range s.Modifications { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Modifications", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetGameName sets the GameName field's value. -func (s *UpdateGameConfigurationInput) SetGameName(v string) *UpdateGameConfigurationInput { - s.GameName = &v - return s -} - -// SetModifications sets the Modifications field's value. -func (s *UpdateGameConfigurationInput) SetModifications(v []*SectionModification) *UpdateGameConfigurationInput { - s.Modifications = v - return s -} - -type UpdateGameConfigurationOutput struct { - _ struct{} `type:"structure"` - - // Details about the game configuration. - GameConfiguration *GameConfigurationDetails `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 UpdateGameConfigurationOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGameConfigurationOutput) GoString() string { - return s.String() -} - -// SetGameConfiguration sets the GameConfiguration field's value. -func (s *UpdateGameConfigurationOutput) SetGameConfiguration(v *GameConfigurationDetails) *UpdateGameConfigurationOutput { - s.GameConfiguration = v - return s -} - -type UpdateGameInput struct { - _ struct{} `type:"structure"` - - // The description of the game. - Description *string `type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" 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 UpdateGameInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGameInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateGameInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateGameInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDescription sets the Description field's value. -func (s *UpdateGameInput) SetDescription(v string) *UpdateGameInput { - s.Description = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *UpdateGameInput) SetGameName(v string) *UpdateGameInput { - s.GameName = &v - return s -} - -type UpdateGameOutput struct { - _ struct{} `type:"structure"` - - // The details of the game. - Game *GameDetails `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 UpdateGameOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGameOutput) GoString() string { - return s.String() -} - -// SetGame sets the Game field's value. -func (s *UpdateGameOutput) SetGame(v *GameDetails) *UpdateGameOutput { - s.Game = v - return s -} - -type UpdateSnapshotInput struct { - _ struct{} `type:"structure"` - - // The description of the snapshot. - Description *string `type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The identifier of the snapshot. - // - // SnapshotId is a required field - SnapshotId *string `location:"uri" locationName:"SnapshotId" min:"33" 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.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.SnapshotId == nil { - invalidParams.Add(request.NewErrParamRequired("SnapshotId")) - } - if s.SnapshotId != nil && len(*s.SnapshotId) < 33 { - invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 33)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDescription sets the Description field's value. -func (s *UpdateSnapshotInput) SetDescription(v string) *UpdateSnapshotInput { - s.Description = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *UpdateSnapshotInput) SetGameName(v string) *UpdateSnapshotInput { - s.GameName = &v - return s -} - -// SetSnapshotId sets the SnapshotId field's value. -func (s *UpdateSnapshotInput) SetSnapshotId(v string) *UpdateSnapshotInput { - s.SnapshotId = &v - return s -} - -type UpdateSnapshotOutput struct { - _ struct{} `type:"structure"` - - // Properties that provide details of the updated snapshot. - Snapshot *SnapshotDetails `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 *SnapshotDetails) *UpdateSnapshotOutput { - s.Snapshot = v - return s -} - -type UpdateStageInput struct { - _ struct{} `type:"structure"` - - // The description of the stage. - Description *string `type:"string"` - - // The name of the game. - // - // GameName is a required field - GameName *string `location:"uri" locationName:"GameName" min:"1" type:"string" required:"true"` - - // The Amazon Resource Name (ARN) of the role to use for the game snapshots - // deployed to this stage. - Role *string `min:"20" type:"string"` - - // The name of the stage. - // - // StageName is a required field - StageName *string `location:"uri" locationName:"StageName" 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 UpdateStageInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateStageInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateStageInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateStageInput"} - if s.GameName == nil { - invalidParams.Add(request.NewErrParamRequired("GameName")) - } - if s.GameName != nil && len(*s.GameName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GameName", 1)) - } - if s.Role != nil && len(*s.Role) < 20 { - invalidParams.Add(request.NewErrParamMinLen("Role", 20)) - } - if s.StageName == nil { - invalidParams.Add(request.NewErrParamRequired("StageName")) - } - if s.StageName != nil && len(*s.StageName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDescription sets the Description field's value. -func (s *UpdateStageInput) SetDescription(v string) *UpdateStageInput { - s.Description = &v - return s -} - -// SetGameName sets the GameName field's value. -func (s *UpdateStageInput) SetGameName(v string) *UpdateStageInput { - s.GameName = &v - return s -} - -// SetRole sets the Role field's value. -func (s *UpdateStageInput) SetRole(v string) *UpdateStageInput { - s.Role = &v - return s -} - -// SetStageName sets the StageName field's value. -func (s *UpdateStageInput) SetStageName(v string) *UpdateStageInput { - s.StageName = &v - return s -} - -type UpdateStageOutput struct { - _ struct{} `type:"structure"` - - // Properties that provide details of the updated stage. - Stage *StageDetails `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 UpdateStageOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateStageOutput) GoString() string { - return s.String() -} - -// SetStage sets the Stage field's value. -func (s *UpdateStageOutput) SetStage(v *StageDetails) *UpdateStageOutput { - s.Stage = v - return s -} - -// One of the parameters in the request is invalid. -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 -} - -const ( - // DeploymentActionDeploy is a DeploymentAction enum value - DeploymentActionDeploy = "DEPLOY" - - // DeploymentActionUndeploy is a DeploymentAction enum value - DeploymentActionUndeploy = "UNDEPLOY" -) - -// DeploymentAction_Values returns all elements of the DeploymentAction enum -func DeploymentAction_Values() []string { - return []string{ - DeploymentActionDeploy, - DeploymentActionUndeploy, - } -} - -const ( - // DeploymentStatePending is a DeploymentState enum value - DeploymentStatePending = "PENDING" - - // DeploymentStateInProgress is a DeploymentState enum value - DeploymentStateInProgress = "IN_PROGRESS" - - // DeploymentStateCompleted is a DeploymentState enum value - DeploymentStateCompleted = "COMPLETED" - - // DeploymentStateFailed is a DeploymentState enum value - DeploymentStateFailed = "FAILED" -) - -// DeploymentState_Values returns all elements of the DeploymentState enum -func DeploymentState_Values() []string { - return []string{ - DeploymentStatePending, - DeploymentStateInProgress, - DeploymentStateCompleted, - DeploymentStateFailed, - } -} - -const ( - // GameStateActive is a GameState enum value - GameStateActive = "ACTIVE" - - // GameStateDeleting is a GameState enum value - GameStateDeleting = "DELETING" -) - -// GameState_Values returns all elements of the GameState enum -func GameState_Values() []string { - return []string{ - GameStateActive, - GameStateDeleting, - } -} - -const ( - // GeneratedCodeJobStateInProgress is a GeneratedCodeJobState enum value - GeneratedCodeJobStateInProgress = "IN_PROGRESS" - - // GeneratedCodeJobStateCompleted is a GeneratedCodeJobState enum value - GeneratedCodeJobStateCompleted = "COMPLETED" - - // GeneratedCodeJobStateFailed is a GeneratedCodeJobState enum value - GeneratedCodeJobStateFailed = "FAILED" - - // GeneratedCodeJobStatePending is a GeneratedCodeJobState enum value - GeneratedCodeJobStatePending = "PENDING" -) - -// GeneratedCodeJobState_Values returns all elements of the GeneratedCodeJobState enum -func GeneratedCodeJobState_Values() []string { - return []string{ - GeneratedCodeJobStateInProgress, - GeneratedCodeJobStateCompleted, - GeneratedCodeJobStateFailed, - GeneratedCodeJobStatePending, - } -} - -const ( - // OperationAdd is a Operation enum value - OperationAdd = "ADD" - - // OperationRemove is a Operation enum value - OperationRemove = "REMOVE" - - // OperationReplace is a Operation enum value - OperationReplace = "REPLACE" -) - -// Operation_Values returns all elements of the Operation enum -func Operation_Values() []string { - return []string{ - OperationAdd, - OperationRemove, - OperationReplace, - } -} - -const ( - // ResultCodeSuccess is a ResultCode enum value - ResultCodeSuccess = "SUCCESS" - - // ResultCodeInvalidRoleFailure is a ResultCode enum value - ResultCodeInvalidRoleFailure = "INVALID_ROLE_FAILURE" - - // ResultCodeUnspecifiedFailure is a ResultCode enum value - ResultCodeUnspecifiedFailure = "UNSPECIFIED_FAILURE" -) - -// ResultCode_Values returns all elements of the ResultCode enum -func ResultCode_Values() []string { - return []string{ - ResultCodeSuccess, - ResultCodeInvalidRoleFailure, - ResultCodeUnspecifiedFailure, - } -} - -const ( - // StageStateActive is a StageState enum value - StageStateActive = "ACTIVE" - - // StageStateDeleting is a StageState enum value - StageStateDeleting = "DELETING" -) - -// StageState_Values returns all elements of the StageState enum -func StageState_Values() []string { - return []string{ - StageStateActive, - StageStateDeleting, - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/doc.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -// Package gamesparks provides the client and types for making API -// requests to GameSparks. -// -// See https://docs.aws.amazon.com/goto/WebAPI/gamesparks-2021-08-17 for more information on this service. -// -// See gamesparks package documentation for more information. -// https://docs.aws.amazon.com/sdk-for-go/api/service/gamesparks/ -// -// # Using the Client -// -// To contact GameSparks 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 GameSparks client GameSparks for more -// information on creating client for this service. -// https://docs.aws.amazon.com/sdk-for-go/api/service/gamesparks/#New -package gamesparks diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/errors.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,62 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -package gamesparks - -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 resource already exists, or another operation is in progress. - ErrCodeConflictException = "ConflictException" - - // ErrCodeInternalServerException for service response error code - // "InternalServerException". - // - // The service encountered an internal error. - ErrCodeInternalServerException = "InternalServerException" - - // ErrCodeResourceNotFoundException for service response error code - // "ResourceNotFoundException". - // - // The resource specified in the request does not exist. - ErrCodeResourceNotFoundException = "ResourceNotFoundException" - - // ErrCodeServiceQuotaExceededException for service response error code - // "ServiceQuotaExceededException". - // - // The request would result in exceeding service quota. - ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" - - // ErrCodeThrottlingException for service response error code - // "ThrottlingException". - // - // The request throughput limit was exceeded. - ErrCodeThrottlingException = "ThrottlingException" - - // ErrCodeValidationException for service response error code - // "ValidationException". - // - // One of the parameters in the request is invalid. - ErrCodeValidationException = "ValidationException" -) - -var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ - "AccessDeniedException": newErrorAccessDeniedException, - "ConflictException": newErrorConflictException, - "InternalServerException": newErrorInternalServerException, - "ResourceNotFoundException": newErrorResourceNotFoundException, - "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, - "ThrottlingException": newErrorThrottlingException, - "ValidationException": newErrorValidationException, -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/gamesparksiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/gamesparksiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/gamesparksiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/gamesparksiface/interface.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,217 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -// Package gamesparksiface provides an interface to enable mocking the GameSparks 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 gamesparksiface - -import ( - "github.com/aws/aws-sdk-go/aws" - "github.com/aws/aws-sdk-go/aws/request" - "github.com/aws/aws-sdk-go/service/gamesparks" -) - -// GameSparksAPI provides an interface to enable mocking the -// gamesparks.GameSparks 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 -// // GameSparks. -// func myFunc(svc gamesparksiface.GameSparksAPI) bool { -// // Make svc.CreateGame request -// } -// -// func main() { -// sess := session.New() -// svc := gamesparks.New(sess) -// -// myFunc(svc) -// } -// -// In your _test.go file: -// -// // Define a mock struct to be used in your unit tests of myFunc. -// type mockGameSparksClient struct { -// gamesparksiface.GameSparksAPI -// } -// func (m *mockGameSparksClient) CreateGame(input *gamesparks.CreateGameInput) (*gamesparks.CreateGameOutput, error) { -// // mock response/functionality -// } -// -// func TestMyFunc(t *testing.T) { -// // Setup Test -// mockSvc := &mockGameSparksClient{} -// -// 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 GameSparksAPI interface { - CreateGame(*gamesparks.CreateGameInput) (*gamesparks.CreateGameOutput, error) - CreateGameWithContext(aws.Context, *gamesparks.CreateGameInput, ...request.Option) (*gamesparks.CreateGameOutput, error) - CreateGameRequest(*gamesparks.CreateGameInput) (*request.Request, *gamesparks.CreateGameOutput) - - CreateSnapshot(*gamesparks.CreateSnapshotInput) (*gamesparks.CreateSnapshotOutput, error) - CreateSnapshotWithContext(aws.Context, *gamesparks.CreateSnapshotInput, ...request.Option) (*gamesparks.CreateSnapshotOutput, error) - CreateSnapshotRequest(*gamesparks.CreateSnapshotInput) (*request.Request, *gamesparks.CreateSnapshotOutput) - - CreateStage(*gamesparks.CreateStageInput) (*gamesparks.CreateStageOutput, error) - CreateStageWithContext(aws.Context, *gamesparks.CreateStageInput, ...request.Option) (*gamesparks.CreateStageOutput, error) - CreateStageRequest(*gamesparks.CreateStageInput) (*request.Request, *gamesparks.CreateStageOutput) - - DeleteGame(*gamesparks.DeleteGameInput) (*gamesparks.DeleteGameOutput, error) - DeleteGameWithContext(aws.Context, *gamesparks.DeleteGameInput, ...request.Option) (*gamesparks.DeleteGameOutput, error) - DeleteGameRequest(*gamesparks.DeleteGameInput) (*request.Request, *gamesparks.DeleteGameOutput) - - DeleteStage(*gamesparks.DeleteStageInput) (*gamesparks.DeleteStageOutput, error) - DeleteStageWithContext(aws.Context, *gamesparks.DeleteStageInput, ...request.Option) (*gamesparks.DeleteStageOutput, error) - DeleteStageRequest(*gamesparks.DeleteStageInput) (*request.Request, *gamesparks.DeleteStageOutput) - - DisconnectPlayer(*gamesparks.DisconnectPlayerInput) (*gamesparks.DisconnectPlayerOutput, error) - DisconnectPlayerWithContext(aws.Context, *gamesparks.DisconnectPlayerInput, ...request.Option) (*gamesparks.DisconnectPlayerOutput, error) - DisconnectPlayerRequest(*gamesparks.DisconnectPlayerInput) (*request.Request, *gamesparks.DisconnectPlayerOutput) - - ExportSnapshot(*gamesparks.ExportSnapshotInput) (*gamesparks.ExportSnapshotOutput, error) - ExportSnapshotWithContext(aws.Context, *gamesparks.ExportSnapshotInput, ...request.Option) (*gamesparks.ExportSnapshotOutput, error) - ExportSnapshotRequest(*gamesparks.ExportSnapshotInput) (*request.Request, *gamesparks.ExportSnapshotOutput) - - GetExtension(*gamesparks.GetExtensionInput) (*gamesparks.GetExtensionOutput, error) - GetExtensionWithContext(aws.Context, *gamesparks.GetExtensionInput, ...request.Option) (*gamesparks.GetExtensionOutput, error) - GetExtensionRequest(*gamesparks.GetExtensionInput) (*request.Request, *gamesparks.GetExtensionOutput) - - GetExtensionVersion(*gamesparks.GetExtensionVersionInput) (*gamesparks.GetExtensionVersionOutput, error) - GetExtensionVersionWithContext(aws.Context, *gamesparks.GetExtensionVersionInput, ...request.Option) (*gamesparks.GetExtensionVersionOutput, error) - GetExtensionVersionRequest(*gamesparks.GetExtensionVersionInput) (*request.Request, *gamesparks.GetExtensionVersionOutput) - - GetGame(*gamesparks.GetGameInput) (*gamesparks.GetGameOutput, error) - GetGameWithContext(aws.Context, *gamesparks.GetGameInput, ...request.Option) (*gamesparks.GetGameOutput, error) - GetGameRequest(*gamesparks.GetGameInput) (*request.Request, *gamesparks.GetGameOutput) - - GetGameConfiguration(*gamesparks.GetGameConfigurationInput) (*gamesparks.GetGameConfigurationOutput, error) - GetGameConfigurationWithContext(aws.Context, *gamesparks.GetGameConfigurationInput, ...request.Option) (*gamesparks.GetGameConfigurationOutput, error) - GetGameConfigurationRequest(*gamesparks.GetGameConfigurationInput) (*request.Request, *gamesparks.GetGameConfigurationOutput) - - GetGeneratedCodeJob(*gamesparks.GetGeneratedCodeJobInput) (*gamesparks.GetGeneratedCodeJobOutput, error) - GetGeneratedCodeJobWithContext(aws.Context, *gamesparks.GetGeneratedCodeJobInput, ...request.Option) (*gamesparks.GetGeneratedCodeJobOutput, error) - GetGeneratedCodeJobRequest(*gamesparks.GetGeneratedCodeJobInput) (*request.Request, *gamesparks.GetGeneratedCodeJobOutput) - - GetPlayerConnectionStatus(*gamesparks.GetPlayerConnectionStatusInput) (*gamesparks.GetPlayerConnectionStatusOutput, error) - GetPlayerConnectionStatusWithContext(aws.Context, *gamesparks.GetPlayerConnectionStatusInput, ...request.Option) (*gamesparks.GetPlayerConnectionStatusOutput, error) - GetPlayerConnectionStatusRequest(*gamesparks.GetPlayerConnectionStatusInput) (*request.Request, *gamesparks.GetPlayerConnectionStatusOutput) - - GetSnapshot(*gamesparks.GetSnapshotInput) (*gamesparks.GetSnapshotOutput, error) - GetSnapshotWithContext(aws.Context, *gamesparks.GetSnapshotInput, ...request.Option) (*gamesparks.GetSnapshotOutput, error) - GetSnapshotRequest(*gamesparks.GetSnapshotInput) (*request.Request, *gamesparks.GetSnapshotOutput) - - GetStage(*gamesparks.GetStageInput) (*gamesparks.GetStageOutput, error) - GetStageWithContext(aws.Context, *gamesparks.GetStageInput, ...request.Option) (*gamesparks.GetStageOutput, error) - GetStageRequest(*gamesparks.GetStageInput) (*request.Request, *gamesparks.GetStageOutput) - - GetStageDeployment(*gamesparks.GetStageDeploymentInput) (*gamesparks.GetStageDeploymentOutput, error) - GetStageDeploymentWithContext(aws.Context, *gamesparks.GetStageDeploymentInput, ...request.Option) (*gamesparks.GetStageDeploymentOutput, error) - GetStageDeploymentRequest(*gamesparks.GetStageDeploymentInput) (*request.Request, *gamesparks.GetStageDeploymentOutput) - - ImportGameConfiguration(*gamesparks.ImportGameConfigurationInput) (*gamesparks.ImportGameConfigurationOutput, error) - ImportGameConfigurationWithContext(aws.Context, *gamesparks.ImportGameConfigurationInput, ...request.Option) (*gamesparks.ImportGameConfigurationOutput, error) - ImportGameConfigurationRequest(*gamesparks.ImportGameConfigurationInput) (*request.Request, *gamesparks.ImportGameConfigurationOutput) - - ListExtensionVersions(*gamesparks.ListExtensionVersionsInput) (*gamesparks.ListExtensionVersionsOutput, error) - ListExtensionVersionsWithContext(aws.Context, *gamesparks.ListExtensionVersionsInput, ...request.Option) (*gamesparks.ListExtensionVersionsOutput, error) - ListExtensionVersionsRequest(*gamesparks.ListExtensionVersionsInput) (*request.Request, *gamesparks.ListExtensionVersionsOutput) - - ListExtensionVersionsPages(*gamesparks.ListExtensionVersionsInput, func(*gamesparks.ListExtensionVersionsOutput, bool) bool) error - ListExtensionVersionsPagesWithContext(aws.Context, *gamesparks.ListExtensionVersionsInput, func(*gamesparks.ListExtensionVersionsOutput, bool) bool, ...request.Option) error - - ListExtensions(*gamesparks.ListExtensionsInput) (*gamesparks.ListExtensionsOutput, error) - ListExtensionsWithContext(aws.Context, *gamesparks.ListExtensionsInput, ...request.Option) (*gamesparks.ListExtensionsOutput, error) - ListExtensionsRequest(*gamesparks.ListExtensionsInput) (*request.Request, *gamesparks.ListExtensionsOutput) - - ListExtensionsPages(*gamesparks.ListExtensionsInput, func(*gamesparks.ListExtensionsOutput, bool) bool) error - ListExtensionsPagesWithContext(aws.Context, *gamesparks.ListExtensionsInput, func(*gamesparks.ListExtensionsOutput, bool) bool, ...request.Option) error - - ListGames(*gamesparks.ListGamesInput) (*gamesparks.ListGamesOutput, error) - ListGamesWithContext(aws.Context, *gamesparks.ListGamesInput, ...request.Option) (*gamesparks.ListGamesOutput, error) - ListGamesRequest(*gamesparks.ListGamesInput) (*request.Request, *gamesparks.ListGamesOutput) - - ListGamesPages(*gamesparks.ListGamesInput, func(*gamesparks.ListGamesOutput, bool) bool) error - ListGamesPagesWithContext(aws.Context, *gamesparks.ListGamesInput, func(*gamesparks.ListGamesOutput, bool) bool, ...request.Option) error - - ListGeneratedCodeJobs(*gamesparks.ListGeneratedCodeJobsInput) (*gamesparks.ListGeneratedCodeJobsOutput, error) - ListGeneratedCodeJobsWithContext(aws.Context, *gamesparks.ListGeneratedCodeJobsInput, ...request.Option) (*gamesparks.ListGeneratedCodeJobsOutput, error) - ListGeneratedCodeJobsRequest(*gamesparks.ListGeneratedCodeJobsInput) (*request.Request, *gamesparks.ListGeneratedCodeJobsOutput) - - ListGeneratedCodeJobsPages(*gamesparks.ListGeneratedCodeJobsInput, func(*gamesparks.ListGeneratedCodeJobsOutput, bool) bool) error - ListGeneratedCodeJobsPagesWithContext(aws.Context, *gamesparks.ListGeneratedCodeJobsInput, func(*gamesparks.ListGeneratedCodeJobsOutput, bool) bool, ...request.Option) error - - ListSnapshots(*gamesparks.ListSnapshotsInput) (*gamesparks.ListSnapshotsOutput, error) - ListSnapshotsWithContext(aws.Context, *gamesparks.ListSnapshotsInput, ...request.Option) (*gamesparks.ListSnapshotsOutput, error) - ListSnapshotsRequest(*gamesparks.ListSnapshotsInput) (*request.Request, *gamesparks.ListSnapshotsOutput) - - ListSnapshotsPages(*gamesparks.ListSnapshotsInput, func(*gamesparks.ListSnapshotsOutput, bool) bool) error - ListSnapshotsPagesWithContext(aws.Context, *gamesparks.ListSnapshotsInput, func(*gamesparks.ListSnapshotsOutput, bool) bool, ...request.Option) error - - ListStageDeployments(*gamesparks.ListStageDeploymentsInput) (*gamesparks.ListStageDeploymentsOutput, error) - ListStageDeploymentsWithContext(aws.Context, *gamesparks.ListStageDeploymentsInput, ...request.Option) (*gamesparks.ListStageDeploymentsOutput, error) - ListStageDeploymentsRequest(*gamesparks.ListStageDeploymentsInput) (*request.Request, *gamesparks.ListStageDeploymentsOutput) - - ListStageDeploymentsPages(*gamesparks.ListStageDeploymentsInput, func(*gamesparks.ListStageDeploymentsOutput, bool) bool) error - ListStageDeploymentsPagesWithContext(aws.Context, *gamesparks.ListStageDeploymentsInput, func(*gamesparks.ListStageDeploymentsOutput, bool) bool, ...request.Option) error - - ListStages(*gamesparks.ListStagesInput) (*gamesparks.ListStagesOutput, error) - ListStagesWithContext(aws.Context, *gamesparks.ListStagesInput, ...request.Option) (*gamesparks.ListStagesOutput, error) - ListStagesRequest(*gamesparks.ListStagesInput) (*request.Request, *gamesparks.ListStagesOutput) - - ListStagesPages(*gamesparks.ListStagesInput, func(*gamesparks.ListStagesOutput, bool) bool) error - ListStagesPagesWithContext(aws.Context, *gamesparks.ListStagesInput, func(*gamesparks.ListStagesOutput, bool) bool, ...request.Option) error - - ListTagsForResource(*gamesparks.ListTagsForResourceInput) (*gamesparks.ListTagsForResourceOutput, error) - ListTagsForResourceWithContext(aws.Context, *gamesparks.ListTagsForResourceInput, ...request.Option) (*gamesparks.ListTagsForResourceOutput, error) - ListTagsForResourceRequest(*gamesparks.ListTagsForResourceInput) (*request.Request, *gamesparks.ListTagsForResourceOutput) - - StartGeneratedCodeJob(*gamesparks.StartGeneratedCodeJobInput) (*gamesparks.StartGeneratedCodeJobOutput, error) - StartGeneratedCodeJobWithContext(aws.Context, *gamesparks.StartGeneratedCodeJobInput, ...request.Option) (*gamesparks.StartGeneratedCodeJobOutput, error) - StartGeneratedCodeJobRequest(*gamesparks.StartGeneratedCodeJobInput) (*request.Request, *gamesparks.StartGeneratedCodeJobOutput) - - StartStageDeployment(*gamesparks.StartStageDeploymentInput) (*gamesparks.StartStageDeploymentOutput, error) - StartStageDeploymentWithContext(aws.Context, *gamesparks.StartStageDeploymentInput, ...request.Option) (*gamesparks.StartStageDeploymentOutput, error) - StartStageDeploymentRequest(*gamesparks.StartStageDeploymentInput) (*request.Request, *gamesparks.StartStageDeploymentOutput) - - TagResource(*gamesparks.TagResourceInput) (*gamesparks.TagResourceOutput, error) - TagResourceWithContext(aws.Context, *gamesparks.TagResourceInput, ...request.Option) (*gamesparks.TagResourceOutput, error) - TagResourceRequest(*gamesparks.TagResourceInput) (*request.Request, *gamesparks.TagResourceOutput) - - UntagResource(*gamesparks.UntagResourceInput) (*gamesparks.UntagResourceOutput, error) - UntagResourceWithContext(aws.Context, *gamesparks.UntagResourceInput, ...request.Option) (*gamesparks.UntagResourceOutput, error) - UntagResourceRequest(*gamesparks.UntagResourceInput) (*request.Request, *gamesparks.UntagResourceOutput) - - UpdateGame(*gamesparks.UpdateGameInput) (*gamesparks.UpdateGameOutput, error) - UpdateGameWithContext(aws.Context, *gamesparks.UpdateGameInput, ...request.Option) (*gamesparks.UpdateGameOutput, error) - UpdateGameRequest(*gamesparks.UpdateGameInput) (*request.Request, *gamesparks.UpdateGameOutput) - - UpdateGameConfiguration(*gamesparks.UpdateGameConfigurationInput) (*gamesparks.UpdateGameConfigurationOutput, error) - UpdateGameConfigurationWithContext(aws.Context, *gamesparks.UpdateGameConfigurationInput, ...request.Option) (*gamesparks.UpdateGameConfigurationOutput, error) - UpdateGameConfigurationRequest(*gamesparks.UpdateGameConfigurationInput) (*request.Request, *gamesparks.UpdateGameConfigurationOutput) - - UpdateSnapshot(*gamesparks.UpdateSnapshotInput) (*gamesparks.UpdateSnapshotOutput, error) - UpdateSnapshotWithContext(aws.Context, *gamesparks.UpdateSnapshotInput, ...request.Option) (*gamesparks.UpdateSnapshotOutput, error) - UpdateSnapshotRequest(*gamesparks.UpdateSnapshotInput) (*request.Request, *gamesparks.UpdateSnapshotOutput) - - UpdateStage(*gamesparks.UpdateStageInput) (*gamesparks.UpdateStageOutput, error) - UpdateStageWithContext(aws.Context, *gamesparks.UpdateStageInput, ...request.Option) (*gamesparks.UpdateStageOutput, error) - UpdateStageRequest(*gamesparks.UpdateStageInput) (*request.Request, *gamesparks.UpdateStageOutput) -} - -var _ GameSparksAPI = (*gamesparks.GameSparks)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/service.go golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/gamesparks/service.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/gamesparks/service.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,106 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -package gamesparks - -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/restjson" -) - -// GameSparks provides the API operation methods for making requests to -// GameSparks. See this package's package overview docs -// for details on the service. -// -// GameSparks methods are safe to use concurrently. It is not safe to -// modify mutate any of the struct's properties though. -type GameSparks 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 = "GameSparks" // Name of service. - EndpointsID = "gamesparks" // ID to lookup a service endpoint with. - ServiceID = "GameSparks" // ServiceID is a unique identifier of a specific service. -) - -// New creates a new instance of the GameSparks 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 GameSparks client from just a session. -// svc := gamesparks.New(mySession) -// -// // Create a GameSparks client with additional configuration -// svc := gamesparks.New(mySession, aws.NewConfig().WithRegion("us-west-2")) -func New(p client.ConfigProvider, cfgs ...*aws.Config) *GameSparks { - c := p.ClientConfig(EndpointsID, cfgs...) - if c.SigningNameDerived || len(c.SigningName) == 0 { - c.SigningName = "gamesparks" - } - 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) *GameSparks { - svc := &GameSparks{ - Client: client.New( - cfg, - metadata.ClientInfo{ - ServiceName: ServiceName, - ServiceID: ServiceID, - SigningName: signingName, - SigningRegion: signingRegion, - PartitionID: partitionID, - Endpoint: endpoint, - APIVersion: "2021-08-17", - ResolvedRegion: resolvedRegion, - }, - handlers, - ), - } - - // Handlers - svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) - svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) - svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) - svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) - svc.Handlers.UnmarshalError.PushBackNamed( - protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), - ) - - // Run custom client initialization if present - if initClient != nil { - initClient(svc.Client) - } - - return svc -} - -// newRequest creates a new request for a GameSparks operation and runs any -// custom request initialization. -func (c *GameSparks) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/api.go golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -526,6 +526,109 @@ return out, req.Send() } +const opCreateCrossAccountAttachment = "CreateCrossAccountAttachment" + +// CreateCrossAccountAttachmentRequest generates a "aws/request.Request" representing the +// client's request for the CreateCrossAccountAttachment 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 CreateCrossAccountAttachment for more information on using the CreateCrossAccountAttachment +// 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 CreateCrossAccountAttachmentRequest method. +// req, resp := client.CreateCrossAccountAttachmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCrossAccountAttachment +func (c *GlobalAccelerator) CreateCrossAccountAttachmentRequest(input *CreateCrossAccountAttachmentInput) (req *request.Request, output *CreateCrossAccountAttachmentOutput) { + op := &request.Operation{ + Name: opCreateCrossAccountAttachment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateCrossAccountAttachmentInput{} + } + + output = &CreateCrossAccountAttachmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCrossAccountAttachment API operation for AWS Global Accelerator. +// +// Create a cross-account attachment in Global Accelerator. You create a cross-account +// attachment to specify the principals who have permission to add to accelerators +// in their own account the resources in your account that you also list in +// the attachment. +// +// A principal can be an Amazon Web Services account number or the Amazon Resource +// Name (ARN) for an accelerator. For account numbers that are listed as principals, +// to add a resource listed in the attachment to an accelerator, you must sign +// in to an account specified as a principal. Then you can add the resources +// that are listed to any of your accelerators. If an accelerator ARN is listed +// in the cross-account attachment as a principal, anyone with permission to +// make updates to the accelerator can add as endpoints resources that are listed +// in the attachment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation CreateCrossAccountAttachment for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// - InvalidArgumentException +// An argument that you specified is invalid. +// +// - LimitExceededException +// Processing your request would cause you to exceed an Global Accelerator limit. +// +// - AccessDeniedException +// You don't have access permission. +// +// - TransactionInProgressException +// There's already a transaction in progress. Another transaction can't be processed. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateCrossAccountAttachment +func (c *GlobalAccelerator) CreateCrossAccountAttachment(input *CreateCrossAccountAttachmentInput) (*CreateCrossAccountAttachmentOutput, error) { + req, out := c.CreateCrossAccountAttachmentRequest(input) + return out, req.Send() +} + +// CreateCrossAccountAttachmentWithContext is the same as CreateCrossAccountAttachment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCrossAccountAttachment 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 *GlobalAccelerator) CreateCrossAccountAttachmentWithContext(ctx aws.Context, input *CreateCrossAccountAttachmentInput, opts ...request.Option) (*CreateCrossAccountAttachmentOutput, error) { + req, out := c.CreateCrossAccountAttachmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateCustomRoutingAccelerator = "CreateCustomRoutingAccelerator" // CreateCustomRoutingAcceleratorRequest generates a "aws/request.Request" representing the @@ -1133,6 +1236,115 @@ return out, req.Send() } +const opDeleteCrossAccountAttachment = "DeleteCrossAccountAttachment" + +// DeleteCrossAccountAttachmentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCrossAccountAttachment 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 DeleteCrossAccountAttachment for more information on using the DeleteCrossAccountAttachment +// 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 DeleteCrossAccountAttachmentRequest method. +// req, resp := client.DeleteCrossAccountAttachmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteCrossAccountAttachment +func (c *GlobalAccelerator) DeleteCrossAccountAttachmentRequest(input *DeleteCrossAccountAttachmentInput) (req *request.Request, output *DeleteCrossAccountAttachmentOutput) { + op := &request.Operation{ + Name: opDeleteCrossAccountAttachment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteCrossAccountAttachmentInput{} + } + + output = &DeleteCrossAccountAttachmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteCrossAccountAttachment API operation for AWS Global Accelerator. +// +// Delete a cross-account attachment. When you delete an attachment, Global +// Accelerator revokes the permission to use the resources in the attachment +// from all principals in the list of principals. Global Accelerator revokes +// the permission for specific resources by doing the following: +// +// - If the principal is an account ID, Global Accelerator reviews every +// accelerator in the account and removes cross-account endpoints from all +// accelerators. +// +// - If the principal is an accelerator, Global Accelerator reviews just +// that accelerator and removes cross-account endpoints from it. +// +// If there are overlapping permissions provided by multiple cross-account attachments, +// Global Accelerator only removes endpoints if there are no current cross-account +// attachments that provide access permission. For example, if you delete a +// cross-account attachment that lists an accelerator as a principal, but another +// cross-account attachment includes the account ID that owns that accelerator, +// endpoints will not be removed from the accelerator. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation DeleteCrossAccountAttachment for usage and error information. +// +// Returned Error Types: +// +// - AttachmentNotFoundException +// No cross-account attachment was found. +// +// - AccessDeniedException +// You don't have access permission. +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// - InvalidArgumentException +// An argument that you specified is invalid. +// +// - TransactionInProgressException +// There's already a transaction in progress. Another transaction can't be processed. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteCrossAccountAttachment +func (c *GlobalAccelerator) DeleteCrossAccountAttachment(input *DeleteCrossAccountAttachmentInput) (*DeleteCrossAccountAttachmentOutput, error) { + req, out := c.DeleteCrossAccountAttachmentRequest(input) + return out, req.Send() +} + +// DeleteCrossAccountAttachmentWithContext is the same as DeleteCrossAccountAttachment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCrossAccountAttachment 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 *GlobalAccelerator) DeleteCrossAccountAttachmentWithContext(ctx aws.Context, input *DeleteCrossAccountAttachmentInput, opts ...request.Option) (*DeleteCrossAccountAttachmentOutput, error) { + req, out := c.DeleteCrossAccountAttachmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteCustomRoutingAccelerator = "DeleteCustomRoutingAccelerator" // DeleteCustomRoutingAcceleratorRequest generates a "aws/request.Request" representing the @@ -1963,6 +2175,94 @@ return out, req.Send() } +const opDescribeCrossAccountAttachment = "DescribeCrossAccountAttachment" + +// DescribeCrossAccountAttachmentRequest generates a "aws/request.Request" representing the +// client's request for the DescribeCrossAccountAttachment 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 DescribeCrossAccountAttachment for more information on using the DescribeCrossAccountAttachment +// 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 DescribeCrossAccountAttachmentRequest method. +// req, resp := client.DescribeCrossAccountAttachmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCrossAccountAttachment +func (c *GlobalAccelerator) DescribeCrossAccountAttachmentRequest(input *DescribeCrossAccountAttachmentInput) (req *request.Request, output *DescribeCrossAccountAttachmentOutput) { + op := &request.Operation{ + Name: opDescribeCrossAccountAttachment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeCrossAccountAttachmentInput{} + } + + output = &DescribeCrossAccountAttachmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeCrossAccountAttachment API operation for AWS Global Accelerator. +// +// Gets configuration information about a cross-account attachment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation DescribeCrossAccountAttachment for usage and error information. +// +// Returned Error Types: +// +// - AttachmentNotFoundException +// No cross-account attachment was found. +// +// - AccessDeniedException +// You don't have access permission. +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// - InvalidArgumentException +// An argument that you specified is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeCrossAccountAttachment +func (c *GlobalAccelerator) DescribeCrossAccountAttachment(input *DescribeCrossAccountAttachmentInput) (*DescribeCrossAccountAttachmentOutput, error) { + req, out := c.DescribeCrossAccountAttachmentRequest(input) + return out, req.Send() +} + +// DescribeCrossAccountAttachmentWithContext is the same as DescribeCrossAccountAttachment with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeCrossAccountAttachment 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 *GlobalAccelerator) DescribeCrossAccountAttachmentWithContext(ctx aws.Context, input *DescribeCrossAccountAttachmentInput, opts ...request.Option) (*DescribeCrossAccountAttachmentOutput, error) { + req, out := c.DescribeCrossAccountAttachmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeCustomRoutingAccelerator = "DescribeCustomRoutingAccelerator" // DescribeCustomRoutingAcceleratorRequest generates a "aws/request.Request" representing the @@ -2762,6 +3062,381 @@ return p.Err() } +const opListCrossAccountAttachments = "ListCrossAccountAttachments" + +// ListCrossAccountAttachmentsRequest generates a "aws/request.Request" representing the +// client's request for the ListCrossAccountAttachments 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 ListCrossAccountAttachments for more information on using the ListCrossAccountAttachments +// 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 ListCrossAccountAttachmentsRequest method. +// req, resp := client.ListCrossAccountAttachmentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCrossAccountAttachments +func (c *GlobalAccelerator) ListCrossAccountAttachmentsRequest(input *ListCrossAccountAttachmentsInput) (req *request.Request, output *ListCrossAccountAttachmentsOutput) { + op := &request.Operation{ + Name: opListCrossAccountAttachments, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCrossAccountAttachmentsInput{} + } + + output = &ListCrossAccountAttachmentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCrossAccountAttachments API operation for AWS Global Accelerator. +// +// List the cross-account attachments that have been created in Global Accelerator. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation ListCrossAccountAttachments for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access permission. +// +// - InvalidArgumentException +// An argument that you specified is invalid. +// +// - InvalidNextTokenException +// There isn't another item to return. +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCrossAccountAttachments +func (c *GlobalAccelerator) ListCrossAccountAttachments(input *ListCrossAccountAttachmentsInput) (*ListCrossAccountAttachmentsOutput, error) { + req, out := c.ListCrossAccountAttachmentsRequest(input) + return out, req.Send() +} + +// ListCrossAccountAttachmentsWithContext is the same as ListCrossAccountAttachments with the addition of +// the ability to pass a context and additional request options. +// +// See ListCrossAccountAttachments 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 *GlobalAccelerator) ListCrossAccountAttachmentsWithContext(ctx aws.Context, input *ListCrossAccountAttachmentsInput, opts ...request.Option) (*ListCrossAccountAttachmentsOutput, error) { + req, out := c.ListCrossAccountAttachmentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCrossAccountAttachmentsPages iterates over the pages of a ListCrossAccountAttachments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCrossAccountAttachments 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 ListCrossAccountAttachments operation. +// pageNum := 0 +// err := client.ListCrossAccountAttachmentsPages(params, +// func(page *globalaccelerator.ListCrossAccountAttachmentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *GlobalAccelerator) ListCrossAccountAttachmentsPages(input *ListCrossAccountAttachmentsInput, fn func(*ListCrossAccountAttachmentsOutput, bool) bool) error { + return c.ListCrossAccountAttachmentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCrossAccountAttachmentsPagesWithContext same as ListCrossAccountAttachmentsPages 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 *GlobalAccelerator) ListCrossAccountAttachmentsPagesWithContext(ctx aws.Context, input *ListCrossAccountAttachmentsInput, fn func(*ListCrossAccountAttachmentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCrossAccountAttachmentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCrossAccountAttachmentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCrossAccountAttachmentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListCrossAccountResourceAccounts = "ListCrossAccountResourceAccounts" + +// ListCrossAccountResourceAccountsRequest generates a "aws/request.Request" representing the +// client's request for the ListCrossAccountResourceAccounts 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 ListCrossAccountResourceAccounts for more information on using the ListCrossAccountResourceAccounts +// 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 ListCrossAccountResourceAccountsRequest method. +// req, resp := client.ListCrossAccountResourceAccountsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCrossAccountResourceAccounts +func (c *GlobalAccelerator) ListCrossAccountResourceAccountsRequest(input *ListCrossAccountResourceAccountsInput) (req *request.Request, output *ListCrossAccountResourceAccountsOutput) { + op := &request.Operation{ + Name: opListCrossAccountResourceAccounts, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListCrossAccountResourceAccountsInput{} + } + + output = &ListCrossAccountResourceAccountsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCrossAccountResourceAccounts API operation for AWS Global Accelerator. +// +// List the accounts that have cross-account endpoints. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation ListCrossAccountResourceAccounts for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access permission. +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCrossAccountResourceAccounts +func (c *GlobalAccelerator) ListCrossAccountResourceAccounts(input *ListCrossAccountResourceAccountsInput) (*ListCrossAccountResourceAccountsOutput, error) { + req, out := c.ListCrossAccountResourceAccountsRequest(input) + return out, req.Send() +} + +// ListCrossAccountResourceAccountsWithContext is the same as ListCrossAccountResourceAccounts with the addition of +// the ability to pass a context and additional request options. +// +// See ListCrossAccountResourceAccounts 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 *GlobalAccelerator) ListCrossAccountResourceAccountsWithContext(ctx aws.Context, input *ListCrossAccountResourceAccountsInput, opts ...request.Option) (*ListCrossAccountResourceAccountsOutput, error) { + req, out := c.ListCrossAccountResourceAccountsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListCrossAccountResources = "ListCrossAccountResources" + +// ListCrossAccountResourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListCrossAccountResources 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 ListCrossAccountResources for more information on using the ListCrossAccountResources +// 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 ListCrossAccountResourcesRequest method. +// req, resp := client.ListCrossAccountResourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCrossAccountResources +func (c *GlobalAccelerator) ListCrossAccountResourcesRequest(input *ListCrossAccountResourcesInput) (req *request.Request, output *ListCrossAccountResourcesOutput) { + op := &request.Operation{ + Name: opListCrossAccountResources, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCrossAccountResourcesInput{} + } + + output = &ListCrossAccountResourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCrossAccountResources API operation for AWS Global Accelerator. +// +// List the cross-account endpoints available to add to an accelerator. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation ListCrossAccountResources for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// - InvalidArgumentException +// An argument that you specified is invalid. +// +// - InvalidNextTokenException +// There isn't another item to return. +// +// - AccessDeniedException +// You don't have access permission. +// +// - AcceleratorNotFoundException +// The accelerator that you specified doesn't exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListCrossAccountResources +func (c *GlobalAccelerator) ListCrossAccountResources(input *ListCrossAccountResourcesInput) (*ListCrossAccountResourcesOutput, error) { + req, out := c.ListCrossAccountResourcesRequest(input) + return out, req.Send() +} + +// ListCrossAccountResourcesWithContext is the same as ListCrossAccountResources with the addition of +// the ability to pass a context and additional request options. +// +// See ListCrossAccountResources 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 *GlobalAccelerator) ListCrossAccountResourcesWithContext(ctx aws.Context, input *ListCrossAccountResourcesInput, opts ...request.Option) (*ListCrossAccountResourcesOutput, error) { + req, out := c.ListCrossAccountResourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCrossAccountResourcesPages iterates over the pages of a ListCrossAccountResources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCrossAccountResources 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 ListCrossAccountResources operation. +// pageNum := 0 +// err := client.ListCrossAccountResourcesPages(params, +// func(page *globalaccelerator.ListCrossAccountResourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *GlobalAccelerator) ListCrossAccountResourcesPages(input *ListCrossAccountResourcesInput, fn func(*ListCrossAccountResourcesOutput, bool) bool) error { + return c.ListCrossAccountResourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCrossAccountResourcesPagesWithContext same as ListCrossAccountResourcesPages 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 *GlobalAccelerator) ListCrossAccountResourcesPagesWithContext(ctx aws.Context, input *ListCrossAccountResourcesInput, fn func(*ListCrossAccountResourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCrossAccountResourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCrossAccountResourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCrossAccountResourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListCustomRoutingAccelerators = "ListCustomRoutingAccelerators" // ListCustomRoutingAcceleratorsRequest generates a "aws/request.Request" representing the @@ -4562,6 +5237,117 @@ return out, req.Send() } +const opUpdateCrossAccountAttachment = "UpdateCrossAccountAttachment" + +// UpdateCrossAccountAttachmentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateCrossAccountAttachment 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 UpdateCrossAccountAttachment for more information on using the UpdateCrossAccountAttachment +// 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 UpdateCrossAccountAttachmentRequest method. +// req, resp := client.UpdateCrossAccountAttachmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCrossAccountAttachment +func (c *GlobalAccelerator) UpdateCrossAccountAttachmentRequest(input *UpdateCrossAccountAttachmentInput) (req *request.Request, output *UpdateCrossAccountAttachmentOutput) { + op := &request.Operation{ + Name: opUpdateCrossAccountAttachment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateCrossAccountAttachmentInput{} + } + + output = &UpdateCrossAccountAttachmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateCrossAccountAttachment API operation for AWS Global Accelerator. +// +// Update a cross-account attachment to add or remove principals or resources. +// When you update an attachment to remove a principal (account ID or accelerator) +// or a resource, Global Accelerator revokes the permission for specific resources +// by doing the following: +// +// - If the principal is an account ID, Global Accelerator reviews every +// accelerator in the account and removes cross-account endpoints from all +// accelerators. +// +// - If the principal is an accelerator, Global Accelerator reviews just +// that accelerator and removes cross-account endpoints from it. +// +// If there are overlapping permissions provided by multiple cross-account attachments, +// Global Accelerator only removes endpoints if there are no current cross-account +// attachments that provide access permission. For example, if you delete a +// cross-account attachment that lists an accelerator as a principal, but another +// cross-account attachment includes the account ID that owns that accelerator, +// endpoints will not be removed from the accelerator. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Global Accelerator's +// API operation UpdateCrossAccountAttachment for usage and error information. +// +// Returned Error Types: +// +// - AttachmentNotFoundException +// No cross-account attachment was found. +// +// - AccessDeniedException +// You don't have access permission. +// +// - InternalServiceErrorException +// There was an internal error for Global Accelerator. +// +// - InvalidArgumentException +// An argument that you specified is invalid. +// +// - LimitExceededException +// Processing your request would cause you to exceed an Global Accelerator limit. +// +// - TransactionInProgressException +// There's already a transaction in progress. Another transaction can't be processed. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateCrossAccountAttachment +func (c *GlobalAccelerator) UpdateCrossAccountAttachment(input *UpdateCrossAccountAttachmentInput) (*UpdateCrossAccountAttachmentOutput, error) { + req, out := c.UpdateCrossAccountAttachmentRequest(input) + return out, req.Send() +} + +// UpdateCrossAccountAttachmentWithContext is the same as UpdateCrossAccountAttachment with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateCrossAccountAttachment 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 *GlobalAccelerator) UpdateCrossAccountAttachmentWithContext(ctx aws.Context, input *UpdateCrossAccountAttachmentInput, opts ...request.Option) (*UpdateCrossAccountAttachmentOutput, error) { + req, out := c.UpdateCrossAccountAttachmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateCustomRoutingAccelerator = "UpdateCustomRoutingAccelerator" // UpdateCustomRoutingAcceleratorRequest generates a "aws/request.Request" representing the @@ -6113,6 +6899,149 @@ return s.RespMetadata.RequestID } +// A cross-account attachment in Global Accelerator. A cross-account attachment +// specifies the principals who have permission to add to accelerators in their +// own account the resources in your account that you also list in the attachment. +type Attachment struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the cross-account attachment. + AttachmentArn *string `type:"string"` + + // The date and time that the cross-account attachment was created. + CreatedTime *time.Time `type:"timestamp"` + + // The date and time that the cross-account attachment was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + + // The name of the cross-account attachment. + Name *string `type:"string"` + + // The principals included in the cross-account attachment. + Principals []*string `type:"list"` + + // The resources included in the cross-account attachment. + Resources []*Resource `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 Attachment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Attachment) GoString() string { + return s.String() +} + +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *Attachment) SetAttachmentArn(v string) *Attachment { + s.AttachmentArn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *Attachment) SetCreatedTime(v time.Time) *Attachment { + s.CreatedTime = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *Attachment) SetLastModifiedTime(v time.Time) *Attachment { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *Attachment) SetName(v string) *Attachment { + s.Name = &v + return s +} + +// SetPrincipals sets the Principals field's value. +func (s *Attachment) SetPrincipals(v []*string) *Attachment { + s.Principals = v + return s +} + +// SetResources sets the Resources field's value. +func (s *Attachment) SetResources(v []*Resource) *Attachment { + s.Resources = v + return s +} + +// No cross-account attachment was found. +type AttachmentNotFoundException 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 AttachmentNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttachmentNotFoundException) GoString() string { + return s.String() +} + +func newErrorAttachmentNotFoundException(v protocol.ResponseMetadata) error { + return &AttachmentNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AttachmentNotFoundException) Code() string { + return "AttachmentNotFoundException" +} + +// Message returns the exception's message. +func (s *AttachmentNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AttachmentNotFoundException) OrigErr() error { + return nil +} + +func (s *AttachmentNotFoundException) 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 *AttachmentNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AttachmentNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + // Information about an IP address range that is provisioned for use with your // Amazon Web Services resources through bring your own IP address (BYOIP). // @@ -6611,6 +7540,147 @@ return s } +type CreateCrossAccountAttachmentInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency—that + // is, the uniqueness—of the request. + IdempotencyToken *string `type:"string" idempotencyToken:"true"` + + // The name of the cross-account attachment. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // The principals to list in the cross-account attachment. A principal can be + // an Amazon Web Services account number or the Amazon Resource Name (ARN) for + // an accelerator. + Principals []*string `type:"list"` + + // The Amazon Resource Names (ARNs) for the resources to list in the cross-account + // attachment. A resource can be any supported Amazon Web Services resource + // type for Global Accelerator. + Resources []*Resource `type:"list"` + + // Create tags for cross-account attachment. + // + // For more information, see Tagging in Global Accelerator (https://docs.aws.amazon.com/global-accelerator/latest/dg/tagging-in-global-accelerator.html) + // in the Global Accelerator Developer Guide. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCrossAccountAttachmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCrossAccountAttachmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateCrossAccountAttachmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCrossAccountAttachmentInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Resources != nil { + for i, v := range s.Resources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Resources", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdempotencyToken sets the IdempotencyToken field's value. +func (s *CreateCrossAccountAttachmentInput) SetIdempotencyToken(v string) *CreateCrossAccountAttachmentInput { + s.IdempotencyToken = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCrossAccountAttachmentInput) SetName(v string) *CreateCrossAccountAttachmentInput { + s.Name = &v + return s +} + +// SetPrincipals sets the Principals field's value. +func (s *CreateCrossAccountAttachmentInput) SetPrincipals(v []*string) *CreateCrossAccountAttachmentInput { + s.Principals = v + return s +} + +// SetResources sets the Resources field's value. +func (s *CreateCrossAccountAttachmentInput) SetResources(v []*Resource) *CreateCrossAccountAttachmentInput { + s.Resources = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateCrossAccountAttachmentInput) SetTags(v []*Tag) *CreateCrossAccountAttachmentInput { + s.Tags = v + return s +} + +type CreateCrossAccountAttachmentOutput struct { + _ struct{} `type:"structure"` + + // Information about the cross-account attachment. + CrossAccountAttachment *Attachment `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 CreateCrossAccountAttachmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCrossAccountAttachmentOutput) GoString() string { + return s.String() +} + +// SetCrossAccountAttachment sets the CrossAccountAttachment field's value. +func (s *CreateCrossAccountAttachmentOutput) SetCrossAccountAttachment(v *Attachment) *CreateCrossAccountAttachmentOutput { + s.CrossAccountAttachment = v + return s +} + type CreateCustomRoutingAcceleratorInput struct { _ struct{} `type:"structure"` @@ -7390,6 +8460,52 @@ return s } +// An endpoint (Amazon Web Services resource) that is listed in a cross-account +// attachment and can be added to an accelerator by specified principals, that +// are also listed in the attachment. +type CrossAccountResource struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the cross-account attachment that specifies + // the endpoints (resources) that can be added to accelerators and principals + // that have permission to add the endpoints to accelerators. + AttachmentArn *string `type:"string"` + + // The endpoint ID for the endpoint that is listed in a cross-account attachment + // and can be added to an accelerator by specified principals. + EndpointId *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 CrossAccountResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CrossAccountResource) GoString() string { + return s.String() +} + +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *CrossAccountResource) SetAttachmentArn(v string) *CrossAccountResource { + s.AttachmentArn = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *CrossAccountResource) SetEndpointId(v string) *CrossAccountResource { + s.EndpointId = &v + return s +} + // Attributes of a custom routing accelerator. type CustomRoutingAccelerator struct { _ struct{} `type:"structure"` @@ -7725,6 +8841,11 @@ type CustomRoutingEndpointConfiguration struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the cross-account attachment that specifies + // the endpoints (resources) that can be added to accelerators and principals + // that have permission to add the endpoints to accelerators. + AttachmentArn *string `type:"string"` + // An ID for the endpoint. For custom routing accelerators, this is the virtual // private cloud (VPC) subnet ID. EndpointId *string `type:"string"` @@ -7748,6 +8869,12 @@ return s.String() } +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *CustomRoutingEndpointConfiguration) SetAttachmentArn(v string) *CustomRoutingEndpointConfiguration { + s.AttachmentArn = &v + return s +} + // SetEndpointId sets the EndpointId field's value. func (s *CustomRoutingEndpointConfiguration) SetEndpointId(v string) *CustomRoutingEndpointConfiguration { s.EndpointId = &v @@ -7965,6 +9092,74 @@ return s.String() } +type DeleteCrossAccountAttachmentInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the cross-account attachment to delete. + // + // AttachmentArn is a required field + AttachmentArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCrossAccountAttachmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCrossAccountAttachmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteCrossAccountAttachmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCrossAccountAttachmentInput"} + if s.AttachmentArn == nil { + invalidParams.Add(request.NewErrParamRequired("AttachmentArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *DeleteCrossAccountAttachmentInput) SetAttachmentArn(v string) *DeleteCrossAccountAttachmentInput { + s.AttachmentArn = &v + return s +} + +type DeleteCrossAccountAttachmentOutput 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 DeleteCrossAccountAttachmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCrossAccountAttachmentOutput) GoString() string { + return s.String() +} + type DeleteCustomRoutingAcceleratorInput struct { _ struct{} `type:"structure"` @@ -8665,6 +9860,83 @@ return s } +type DescribeCrossAccountAttachmentInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the cross-account attachment to describe. + // + // AttachmentArn is a required field + AttachmentArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeCrossAccountAttachmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeCrossAccountAttachmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeCrossAccountAttachmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeCrossAccountAttachmentInput"} + if s.AttachmentArn == nil { + invalidParams.Add(request.NewErrParamRequired("AttachmentArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *DescribeCrossAccountAttachmentInput) SetAttachmentArn(v string) *DescribeCrossAccountAttachmentInput { + s.AttachmentArn = &v + return s +} + +type DescribeCrossAccountAttachmentOutput struct { + _ struct{} `type:"structure"` + + // Information about the cross-account attachment. + CrossAccountAttachment *Attachment `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 DescribeCrossAccountAttachmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeCrossAccountAttachmentOutput) GoString() string { + return s.String() +} + +// SetCrossAccountAttachment sets the CrossAccountAttachment field's value. +func (s *DescribeCrossAccountAttachmentOutput) SetCrossAccountAttachment(v *Attachment) *DescribeCrossAccountAttachmentOutput { + s.CrossAccountAttachment = v + return s +} + type DescribeCustomRoutingAcceleratorAttributesInput struct { _ struct{} `type:"structure"` @@ -9298,8 +10570,14 @@ type EndpointConfiguration struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the cross-account attachment that specifies + // the endpoints (resources) that can be added to accelerators and principals + // that have permission to add the endpoints to accelerators. + AttachmentArn *string `type:"string"` + // Indicates whether client IP address preservation is enabled for an endpoint. - // The value is true or false. The default value is true for new accelerators. + // The value is true or false. The default value is true for Application Load + // Balancer endpoints. // // If the value is set to true, the client's IP address is preserved in the // X-Forwarded-For request header as traffic travels to applications on the @@ -9307,7 +10585,7 @@ // // Client IP address preservation is supported, in specific Amazon Web Services // Regions, for endpoints that are Application Load Balancers, Amazon EC2 instances, - // and Network Load Balancers with Security Groups. IMPORTANT: You cannot use + // and Network Load Balancers with security groups. IMPORTANT: You cannot use // client IP address preservation with Network Load Balancers with TLS listeners. // // For more information, see Preserve client IP addresses in Global Accelerator @@ -9353,6 +10631,12 @@ return s.String() } +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *EndpointConfiguration) SetAttachmentArn(v string) *EndpointConfiguration { + s.AttachmentArn = &v + return s +} + // SetClientIPPreservationEnabled sets the ClientIPPreservationEnabled field's value. func (s *EndpointConfiguration) SetClientIPPreservationEnabled(v bool) *EndpointConfiguration { s.ClientIPPreservationEnabled = &v @@ -9377,7 +10661,8 @@ _ struct{} `type:"structure"` // Indicates whether client IP address preservation is enabled for an endpoint. - // The value is true or false. The default value is true for new accelerators. + // The value is true or false. The default value is true for Application Load + // Balancers endpoints. // // If the value is set to true, the client's IP address is preserved in the // X-Forwarded-For request header as traffic travels to applications on the @@ -9385,7 +10670,7 @@ // // Client IP address preservation is supported, in specific Amazon Web Services // Regions, for endpoints that are Application Load Balancers, Amazon EC2 instances, - // and Network Load Balancers with Security Groups. IMPORTANT: You cannot use + // and Network Load Balancers with security groups. IMPORTANT: You cannot use // client IP address preservation with Network Load Balancers with TLS listeners. // // For more information, see Preserve client IP addresses in Global Accelerator @@ -10489,6 +11774,278 @@ return s } +type ListCrossAccountAttachmentsInput struct { + _ struct{} `type:"structure"` + + // The number of cross-account attachment objects that you want to return with + // this call. The default value is 10. + MaxResults *int64 `min:"1" type:"integer"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountAttachmentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountAttachmentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCrossAccountAttachmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCrossAccountAttachmentsInput"} + 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 *ListCrossAccountAttachmentsInput) SetMaxResults(v int64) *ListCrossAccountAttachmentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCrossAccountAttachmentsInput) SetNextToken(v string) *ListCrossAccountAttachmentsInput { + s.NextToken = &v + return s +} + +type ListCrossAccountAttachmentsOutput struct { + _ struct{} `type:"structure"` + + // Information about the cross-account attachments. + CrossAccountAttachments []*Attachment `type:"list"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountAttachmentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountAttachmentsOutput) GoString() string { + return s.String() +} + +// SetCrossAccountAttachments sets the CrossAccountAttachments field's value. +func (s *ListCrossAccountAttachmentsOutput) SetCrossAccountAttachments(v []*Attachment) *ListCrossAccountAttachmentsOutput { + s.CrossAccountAttachments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCrossAccountAttachmentsOutput) SetNextToken(v string) *ListCrossAccountAttachmentsOutput { + s.NextToken = &v + return s +} + +type ListCrossAccountResourceAccountsInput 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 ListCrossAccountResourceAccountsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountResourceAccountsInput) GoString() string { + return s.String() +} + +type ListCrossAccountResourceAccountsOutput struct { + _ struct{} `type:"structure"` + + // The account IDs of principals (resource owners) in a cross-account attachment + // who can add endpoints (resources) listed in the same attachment. + ResourceOwnerAwsAccountIds []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountResourceAccountsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountResourceAccountsOutput) GoString() string { + return s.String() +} + +// SetResourceOwnerAwsAccountIds sets the ResourceOwnerAwsAccountIds field's value. +func (s *ListCrossAccountResourceAccountsOutput) SetResourceOwnerAwsAccountIds(v []*string) *ListCrossAccountResourceAccountsOutput { + s.ResourceOwnerAwsAccountIds = v + return s +} + +type ListCrossAccountResourcesInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an accelerator in a cross-account attachment. + AcceleratorArn *string `type:"string"` + + // The number of cross-account endpoints objects that you want to return with + // this call. The default value is 10. + MaxResults *int64 `min:"1" type:"integer"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `type:"string"` + + // The account ID of a resource owner in a cross-account attachment. + // + // ResourceOwnerAwsAccountId is a required field + ResourceOwnerAwsAccountId *string `min:"12" 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 ListCrossAccountResourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountResourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCrossAccountResourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCrossAccountResourcesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ResourceOwnerAwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceOwnerAwsAccountId")) + } + if s.ResourceOwnerAwsAccountId != nil && len(*s.ResourceOwnerAwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("ResourceOwnerAwsAccountId", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAcceleratorArn sets the AcceleratorArn field's value. +func (s *ListCrossAccountResourcesInput) SetAcceleratorArn(v string) *ListCrossAccountResourcesInput { + s.AcceleratorArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCrossAccountResourcesInput) SetMaxResults(v int64) *ListCrossAccountResourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCrossAccountResourcesInput) SetNextToken(v string) *ListCrossAccountResourcesInput { + s.NextToken = &v + return s +} + +// SetResourceOwnerAwsAccountId sets the ResourceOwnerAwsAccountId field's value. +func (s *ListCrossAccountResourcesInput) SetResourceOwnerAwsAccountId(v string) *ListCrossAccountResourcesInput { + s.ResourceOwnerAwsAccountId = &v + return s +} + +type ListCrossAccountResourcesOutput struct { + _ struct{} `type:"structure"` + + // The endpoints attached to an accelerator in a cross-account attachment. + CrossAccountResources []*CrossAccountResource `type:"list"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountResourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCrossAccountResourcesOutput) GoString() string { + return s.String() +} + +// SetCrossAccountResources sets the CrossAccountResources field's value. +func (s *ListCrossAccountResourcesOutput) SetCrossAccountResources(v []*CrossAccountResource) *ListCrossAccountResourcesOutput { + s.CrossAccountResources = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCrossAccountResourcesOutput) SetNextToken(v string) *ListCrossAccountResourcesOutput { + s.NextToken = &v + return s +} + type ListCustomRoutingAcceleratorsInput struct { _ struct{} `type:"structure"` @@ -11981,6 +13538,63 @@ return s.String() } +// An Amazon Web Services resource that is supported by Global Accelerator and +// can be added as an endpoint for an accelerator. +type Resource struct { + _ struct{} `type:"structure"` + + // The endpoint ID for the endpoint (Amazon Web Services resource). + // + // EndpointId is a required field + EndpointId *string `type:"string" required:"true"` + + // The Amazon Web Services Region where a resource is located. + Region *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 Resource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Resource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Resource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Resource"} + if s.EndpointId == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndpointId sets the EndpointId field's value. +func (s *Resource) SetEndpointId(v string) *Resource { + s.EndpointId = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *Resource) SetRegion(v string) *Resource { + s.Region = &v + return s +} + // An IP address/port combination. type SocketAddress struct { _ struct{} `type:"structure"` @@ -12560,6 +14174,168 @@ return s } +type UpdateCrossAccountAttachmentInput struct { + _ struct{} `type:"structure"` + + // The principals to add to the cross-account attachment. A principal is an + // account or the Amazon Resource Name (ARN) of an accelerator that the attachment + // gives permission to add the resources from another account, listed in the + // attachment. + // + // To add more than one principal, separate the account numbers or accelerator + // ARNs, or both, with commas. + AddPrincipals []*string `type:"list"` + + // The resources to add to the cross-account attachment. A resource listed in + // a cross-account attachment can be added to an accelerator by the principals + // that are listed in the attachment. + // + // To add more than one resource, separate the resource ARNs with commas. + AddResources []*Resource `type:"list"` + + // The Amazon Resource Name (ARN) of the cross-account attachment to update. + // + // AttachmentArn is a required field + AttachmentArn *string `type:"string" required:"true"` + + // The name of the cross-account attachment. + Name *string `type:"string"` + + // The principals to remove from the cross-account attachment. A principal is + // an account or the Amazon Resource Name (ARN) of an accelerator that is given + // permission to add the resources from another account, listed in the cross-account + // attachment. + // + // To remove more than one principal, separate the account numbers or accelerator + // ARNs, or both, with commas. + RemovePrincipals []*string `type:"list"` + + // The resources to remove from the cross-account attachment. A resource listed + // in a cross-account attachment can be added to an accelerator fy principals + // that are listed in the cross-account attachment. + // + // To remove more than one resource, separate the resource ARNs with commas. + RemoveResources []*Resource `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 UpdateCrossAccountAttachmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCrossAccountAttachmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateCrossAccountAttachmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateCrossAccountAttachmentInput"} + if s.AttachmentArn == nil { + invalidParams.Add(request.NewErrParamRequired("AttachmentArn")) + } + if s.AddResources != nil { + for i, v := range s.AddResources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddResources", i), err.(request.ErrInvalidParams)) + } + } + } + if s.RemoveResources != nil { + for i, v := range s.RemoveResources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RemoveResources", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddPrincipals sets the AddPrincipals field's value. +func (s *UpdateCrossAccountAttachmentInput) SetAddPrincipals(v []*string) *UpdateCrossAccountAttachmentInput { + s.AddPrincipals = v + return s +} + +// SetAddResources sets the AddResources field's value. +func (s *UpdateCrossAccountAttachmentInput) SetAddResources(v []*Resource) *UpdateCrossAccountAttachmentInput { + s.AddResources = v + return s +} + +// SetAttachmentArn sets the AttachmentArn field's value. +func (s *UpdateCrossAccountAttachmentInput) SetAttachmentArn(v string) *UpdateCrossAccountAttachmentInput { + s.AttachmentArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCrossAccountAttachmentInput) SetName(v string) *UpdateCrossAccountAttachmentInput { + s.Name = &v + return s +} + +// SetRemovePrincipals sets the RemovePrincipals field's value. +func (s *UpdateCrossAccountAttachmentInput) SetRemovePrincipals(v []*string) *UpdateCrossAccountAttachmentInput { + s.RemovePrincipals = v + return s +} + +// SetRemoveResources sets the RemoveResources field's value. +func (s *UpdateCrossAccountAttachmentInput) SetRemoveResources(v []*Resource) *UpdateCrossAccountAttachmentInput { + s.RemoveResources = v + return s +} + +type UpdateCrossAccountAttachmentOutput struct { + _ struct{} `type:"structure"` + + // Information about the updated cross-account attachment. + CrossAccountAttachment *Attachment `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 UpdateCrossAccountAttachmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCrossAccountAttachmentOutput) GoString() string { + return s.String() +} + +// SetCrossAccountAttachment sets the CrossAccountAttachment field's value. +func (s *UpdateCrossAccountAttachmentOutput) SetCrossAccountAttachment(v *Attachment) *UpdateCrossAccountAttachmentOutput { + s.CrossAccountAttachment = v + return s +} + type UpdateCustomRoutingAcceleratorAttributesInput struct { _ struct{} `type:"structure"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -33,7 +33,7 @@ // total of four addresses: two static IPv4 addresses and two static IPv6 addresses. // With a standard accelerator for IPv4, instead of using the addresses that // Global Accelerator provides, you can configure these entry points to be IPv4 -// addresses from your own IP address ranges that you bring toGlobal Accelerator +// addresses from your own IP address ranges that you bring to Global Accelerator // (BYOIP). // // For a standard accelerator, they distribute incoming application traffic diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -42,6 +42,12 @@ // it. ErrCodeAssociatedListenerFoundException = "AssociatedListenerFoundException" + // ErrCodeAttachmentNotFoundException for service response error code + // "AttachmentNotFoundException". + // + // No cross-account attachment was found. + ErrCodeAttachmentNotFoundException = "AttachmentNotFoundException" + // ErrCodeByoipCidrNotFoundException for service response error code // "ByoipCidrNotFoundException". // @@ -135,6 +141,7 @@ "AccessDeniedException": newErrorAccessDeniedException, "AssociatedEndpointGroupFoundException": newErrorAssociatedEndpointGroupFoundException, "AssociatedListenerFoundException": newErrorAssociatedListenerFoundException, + "AttachmentNotFoundException": newErrorAttachmentNotFoundException, "ByoipCidrNotFoundException": newErrorByoipCidrNotFoundException, "ConflictException": newErrorConflictException, "EndpointAlreadyExistsException": newErrorEndpointAlreadyExistsException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/globalacceleratoriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/globalacceleratoriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/globalaccelerator/globalacceleratoriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/globalaccelerator/globalacceleratoriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,10 @@ CreateAcceleratorWithContext(aws.Context, *globalaccelerator.CreateAcceleratorInput, ...request.Option) (*globalaccelerator.CreateAcceleratorOutput, error) CreateAcceleratorRequest(*globalaccelerator.CreateAcceleratorInput) (*request.Request, *globalaccelerator.CreateAcceleratorOutput) + CreateCrossAccountAttachment(*globalaccelerator.CreateCrossAccountAttachmentInput) (*globalaccelerator.CreateCrossAccountAttachmentOutput, error) + CreateCrossAccountAttachmentWithContext(aws.Context, *globalaccelerator.CreateCrossAccountAttachmentInput, ...request.Option) (*globalaccelerator.CreateCrossAccountAttachmentOutput, error) + CreateCrossAccountAttachmentRequest(*globalaccelerator.CreateCrossAccountAttachmentInput) (*request.Request, *globalaccelerator.CreateCrossAccountAttachmentOutput) + CreateCustomRoutingAccelerator(*globalaccelerator.CreateCustomRoutingAcceleratorInput) (*globalaccelerator.CreateCustomRoutingAcceleratorOutput, error) CreateCustomRoutingAcceleratorWithContext(aws.Context, *globalaccelerator.CreateCustomRoutingAcceleratorInput, ...request.Option) (*globalaccelerator.CreateCustomRoutingAcceleratorOutput, error) CreateCustomRoutingAcceleratorRequest(*globalaccelerator.CreateCustomRoutingAcceleratorInput) (*request.Request, *globalaccelerator.CreateCustomRoutingAcceleratorOutput) @@ -104,6 +108,10 @@ DeleteAcceleratorWithContext(aws.Context, *globalaccelerator.DeleteAcceleratorInput, ...request.Option) (*globalaccelerator.DeleteAcceleratorOutput, error) DeleteAcceleratorRequest(*globalaccelerator.DeleteAcceleratorInput) (*request.Request, *globalaccelerator.DeleteAcceleratorOutput) + DeleteCrossAccountAttachment(*globalaccelerator.DeleteCrossAccountAttachmentInput) (*globalaccelerator.DeleteCrossAccountAttachmentOutput, error) + DeleteCrossAccountAttachmentWithContext(aws.Context, *globalaccelerator.DeleteCrossAccountAttachmentInput, ...request.Option) (*globalaccelerator.DeleteCrossAccountAttachmentOutput, error) + DeleteCrossAccountAttachmentRequest(*globalaccelerator.DeleteCrossAccountAttachmentInput) (*request.Request, *globalaccelerator.DeleteCrossAccountAttachmentOutput) + DeleteCustomRoutingAccelerator(*globalaccelerator.DeleteCustomRoutingAcceleratorInput) (*globalaccelerator.DeleteCustomRoutingAcceleratorOutput, error) DeleteCustomRoutingAcceleratorWithContext(aws.Context, *globalaccelerator.DeleteCustomRoutingAcceleratorInput, ...request.Option) (*globalaccelerator.DeleteCustomRoutingAcceleratorOutput, error) DeleteCustomRoutingAcceleratorRequest(*globalaccelerator.DeleteCustomRoutingAcceleratorInput) (*request.Request, *globalaccelerator.DeleteCustomRoutingAcceleratorOutput) @@ -140,6 +148,10 @@ DescribeAcceleratorAttributesWithContext(aws.Context, *globalaccelerator.DescribeAcceleratorAttributesInput, ...request.Option) (*globalaccelerator.DescribeAcceleratorAttributesOutput, error) DescribeAcceleratorAttributesRequest(*globalaccelerator.DescribeAcceleratorAttributesInput) (*request.Request, *globalaccelerator.DescribeAcceleratorAttributesOutput) + DescribeCrossAccountAttachment(*globalaccelerator.DescribeCrossAccountAttachmentInput) (*globalaccelerator.DescribeCrossAccountAttachmentOutput, error) + DescribeCrossAccountAttachmentWithContext(aws.Context, *globalaccelerator.DescribeCrossAccountAttachmentInput, ...request.Option) (*globalaccelerator.DescribeCrossAccountAttachmentOutput, error) + DescribeCrossAccountAttachmentRequest(*globalaccelerator.DescribeCrossAccountAttachmentInput) (*request.Request, *globalaccelerator.DescribeCrossAccountAttachmentOutput) + DescribeCustomRoutingAccelerator(*globalaccelerator.DescribeCustomRoutingAcceleratorInput) (*globalaccelerator.DescribeCustomRoutingAcceleratorOutput, error) DescribeCustomRoutingAcceleratorWithContext(aws.Context, *globalaccelerator.DescribeCustomRoutingAcceleratorInput, ...request.Option) (*globalaccelerator.DescribeCustomRoutingAcceleratorOutput, error) DescribeCustomRoutingAcceleratorRequest(*globalaccelerator.DescribeCustomRoutingAcceleratorInput) (*request.Request, *globalaccelerator.DescribeCustomRoutingAcceleratorOutput) @@ -178,6 +190,24 @@ ListByoipCidrsPages(*globalaccelerator.ListByoipCidrsInput, func(*globalaccelerator.ListByoipCidrsOutput, bool) bool) error ListByoipCidrsPagesWithContext(aws.Context, *globalaccelerator.ListByoipCidrsInput, func(*globalaccelerator.ListByoipCidrsOutput, bool) bool, ...request.Option) error + ListCrossAccountAttachments(*globalaccelerator.ListCrossAccountAttachmentsInput) (*globalaccelerator.ListCrossAccountAttachmentsOutput, error) + ListCrossAccountAttachmentsWithContext(aws.Context, *globalaccelerator.ListCrossAccountAttachmentsInput, ...request.Option) (*globalaccelerator.ListCrossAccountAttachmentsOutput, error) + ListCrossAccountAttachmentsRequest(*globalaccelerator.ListCrossAccountAttachmentsInput) (*request.Request, *globalaccelerator.ListCrossAccountAttachmentsOutput) + + ListCrossAccountAttachmentsPages(*globalaccelerator.ListCrossAccountAttachmentsInput, func(*globalaccelerator.ListCrossAccountAttachmentsOutput, bool) bool) error + ListCrossAccountAttachmentsPagesWithContext(aws.Context, *globalaccelerator.ListCrossAccountAttachmentsInput, func(*globalaccelerator.ListCrossAccountAttachmentsOutput, bool) bool, ...request.Option) error + + ListCrossAccountResourceAccounts(*globalaccelerator.ListCrossAccountResourceAccountsInput) (*globalaccelerator.ListCrossAccountResourceAccountsOutput, error) + ListCrossAccountResourceAccountsWithContext(aws.Context, *globalaccelerator.ListCrossAccountResourceAccountsInput, ...request.Option) (*globalaccelerator.ListCrossAccountResourceAccountsOutput, error) + ListCrossAccountResourceAccountsRequest(*globalaccelerator.ListCrossAccountResourceAccountsInput) (*request.Request, *globalaccelerator.ListCrossAccountResourceAccountsOutput) + + ListCrossAccountResources(*globalaccelerator.ListCrossAccountResourcesInput) (*globalaccelerator.ListCrossAccountResourcesOutput, error) + ListCrossAccountResourcesWithContext(aws.Context, *globalaccelerator.ListCrossAccountResourcesInput, ...request.Option) (*globalaccelerator.ListCrossAccountResourcesOutput, error) + ListCrossAccountResourcesRequest(*globalaccelerator.ListCrossAccountResourcesInput) (*request.Request, *globalaccelerator.ListCrossAccountResourcesOutput) + + ListCrossAccountResourcesPages(*globalaccelerator.ListCrossAccountResourcesInput, func(*globalaccelerator.ListCrossAccountResourcesOutput, bool) bool) error + ListCrossAccountResourcesPagesWithContext(aws.Context, *globalaccelerator.ListCrossAccountResourcesInput, func(*globalaccelerator.ListCrossAccountResourcesOutput, bool) bool, ...request.Option) error + ListCustomRoutingAccelerators(*globalaccelerator.ListCustomRoutingAcceleratorsInput) (*globalaccelerator.ListCustomRoutingAcceleratorsOutput, error) ListCustomRoutingAcceleratorsWithContext(aws.Context, *globalaccelerator.ListCustomRoutingAcceleratorsInput, ...request.Option) (*globalaccelerator.ListCustomRoutingAcceleratorsOutput, error) ListCustomRoutingAcceleratorsRequest(*globalaccelerator.ListCustomRoutingAcceleratorsInput) (*request.Request, *globalaccelerator.ListCustomRoutingAcceleratorsOutput) @@ -259,6 +289,10 @@ UpdateAcceleratorAttributesWithContext(aws.Context, *globalaccelerator.UpdateAcceleratorAttributesInput, ...request.Option) (*globalaccelerator.UpdateAcceleratorAttributesOutput, error) UpdateAcceleratorAttributesRequest(*globalaccelerator.UpdateAcceleratorAttributesInput) (*request.Request, *globalaccelerator.UpdateAcceleratorAttributesOutput) + UpdateCrossAccountAttachment(*globalaccelerator.UpdateCrossAccountAttachmentInput) (*globalaccelerator.UpdateCrossAccountAttachmentOutput, error) + UpdateCrossAccountAttachmentWithContext(aws.Context, *globalaccelerator.UpdateCrossAccountAttachmentInput, ...request.Option) (*globalaccelerator.UpdateCrossAccountAttachmentOutput, error) + UpdateCrossAccountAttachmentRequest(*globalaccelerator.UpdateCrossAccountAttachmentInput) (*request.Request, *globalaccelerator.UpdateCrossAccountAttachmentOutput) + UpdateCustomRoutingAccelerator(*globalaccelerator.UpdateCustomRoutingAcceleratorInput) (*globalaccelerator.UpdateCustomRoutingAcceleratorOutput, error) UpdateCustomRoutingAcceleratorWithContext(aws.Context, *globalaccelerator.UpdateCustomRoutingAcceleratorInput, ...request.Option) (*globalaccelerator.UpdateCustomRoutingAcceleratorOutput, error) UpdateCustomRoutingAcceleratorRequest(*globalaccelerator.UpdateCustomRoutingAcceleratorInput) (*request.Request, *globalaccelerator.UpdateCustomRoutingAcceleratorOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/glue/api.go golang-github-aws-aws-sdk-go-1.48.14/service/glue/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/glue/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/glue/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1089,6 +1089,84 @@ return out, req.Send() } +const opBatchGetTableOptimizer = "BatchGetTableOptimizer" + +// BatchGetTableOptimizerRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetTableOptimizer 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 BatchGetTableOptimizer for more information on using the BatchGetTableOptimizer +// 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 BatchGetTableOptimizerRequest method. +// req, resp := client.BatchGetTableOptimizerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/BatchGetTableOptimizer +func (c *Glue) BatchGetTableOptimizerRequest(input *BatchGetTableOptimizerInput) (req *request.Request, output *BatchGetTableOptimizerOutput) { + op := &request.Operation{ + Name: opBatchGetTableOptimizer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchGetTableOptimizerInput{} + } + + output = &BatchGetTableOptimizerOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetTableOptimizer API operation for AWS Glue. +// +// Returns the configuration for the specified table optimizers. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation BatchGetTableOptimizer for usage and error information. +// +// Returned Error Types: +// - InternalServiceException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/BatchGetTableOptimizer +func (c *Glue) BatchGetTableOptimizer(input *BatchGetTableOptimizerInput) (*BatchGetTableOptimizerOutput, error) { + req, out := c.BatchGetTableOptimizerRequest(input) + return out, req.Send() +} + +// BatchGetTableOptimizerWithContext is the same as BatchGetTableOptimizer with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetTableOptimizer 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 *Glue) BatchGetTableOptimizerWithContext(ctx aws.Context, input *BatchGetTableOptimizerInput, opts ...request.Option) (*BatchGetTableOptimizerOutput, error) { + req, out := c.BatchGetTableOptimizerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchGetTriggers = "BatchGetTriggers" // BatchGetTriggersRequest generates a "aws/request.Request" representing the @@ -3641,6 +3719,99 @@ return out, req.Send() } +const opCreateTableOptimizer = "CreateTableOptimizer" + +// CreateTableOptimizerRequest generates a "aws/request.Request" representing the +// client's request for the CreateTableOptimizer 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 CreateTableOptimizer for more information on using the CreateTableOptimizer +// 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 CreateTableOptimizerRequest method. +// req, resp := client.CreateTableOptimizerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateTableOptimizer +func (c *Glue) CreateTableOptimizerRequest(input *CreateTableOptimizerInput) (req *request.Request, output *CreateTableOptimizerOutput) { + op := &request.Operation{ + Name: opCreateTableOptimizer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateTableOptimizerInput{} + } + + output = &CreateTableOptimizerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// CreateTableOptimizer API operation for AWS Glue. +// +// Creates a new table optimizer for a specific function. compaction is the +// only currently supported optimizer type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation CreateTableOptimizer for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - InvalidInputException +// The input provided was not valid. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - AlreadyExistsException +// A resource to be created or added already exists. +// +// - InternalServiceException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateTableOptimizer +func (c *Glue) CreateTableOptimizer(input *CreateTableOptimizerInput) (*CreateTableOptimizerOutput, error) { + req, out := c.CreateTableOptimizerRequest(input) + return out, req.Send() +} + +// CreateTableOptimizerWithContext is the same as CreateTableOptimizer with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTableOptimizer 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 *Glue) CreateTableOptimizerWithContext(ctx aws.Context, input *CreateTableOptimizerInput, opts ...request.Option) (*CreateTableOptimizerOutput, error) { + req, out := c.CreateTableOptimizerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateTrigger = "CreateTrigger" // CreateTriggerRequest generates a "aws/request.Request" representing the @@ -5864,6 +6035,96 @@ return out, req.Send() } +const opDeleteTableOptimizer = "DeleteTableOptimizer" + +// DeleteTableOptimizerRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTableOptimizer 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 DeleteTableOptimizer for more information on using the DeleteTableOptimizer +// 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 DeleteTableOptimizerRequest method. +// req, resp := client.DeleteTableOptimizerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteTableOptimizer +func (c *Glue) DeleteTableOptimizerRequest(input *DeleteTableOptimizerInput) (req *request.Request, output *DeleteTableOptimizerOutput) { + op := &request.Operation{ + Name: opDeleteTableOptimizer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteTableOptimizerInput{} + } + + output = &DeleteTableOptimizerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTableOptimizer API operation for AWS Glue. +// +// Deletes an optimizer and all associated metadata for a table. The optimization +// will no longer be performed on the table. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation DeleteTableOptimizer for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - InvalidInputException +// The input provided was not valid. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - InternalServiceException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteTableOptimizer +func (c *Glue) DeleteTableOptimizer(input *DeleteTableOptimizerInput) (*DeleteTableOptimizerOutput, error) { + req, out := c.DeleteTableOptimizerRequest(input) + return out, req.Send() +} + +// DeleteTableOptimizerWithContext is the same as DeleteTableOptimizer with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTableOptimizer 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 *Glue) DeleteTableOptimizerWithContext(ctx aws.Context, input *DeleteTableOptimizerInput, opts ...request.Option) (*DeleteTableOptimizerOutput, error) { + req, out := c.DeleteTableOptimizerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteTableVersion = "DeleteTableVersion" // DeleteTableVersionRequest generates a "aws/request.Request" representing the @@ -7024,6 +7285,227 @@ return out, req.Send() } +const opGetColumnStatisticsTaskRun = "GetColumnStatisticsTaskRun" + +// GetColumnStatisticsTaskRunRequest generates a "aws/request.Request" representing the +// client's request for the GetColumnStatisticsTaskRun 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 GetColumnStatisticsTaskRun for more information on using the GetColumnStatisticsTaskRun +// 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 GetColumnStatisticsTaskRunRequest method. +// req, resp := client.GetColumnStatisticsTaskRunRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetColumnStatisticsTaskRun +func (c *Glue) GetColumnStatisticsTaskRunRequest(input *GetColumnStatisticsTaskRunInput) (req *request.Request, output *GetColumnStatisticsTaskRunOutput) { + op := &request.Operation{ + Name: opGetColumnStatisticsTaskRun, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetColumnStatisticsTaskRunInput{} + } + + output = &GetColumnStatisticsTaskRunOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetColumnStatisticsTaskRun API operation for AWS Glue. +// +// Get the associated metadata/information for a task run, given a task run +// ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation GetColumnStatisticsTaskRun for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - OperationTimeoutException +// The operation timed out. +// +// - InvalidInputException +// The input provided was not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetColumnStatisticsTaskRun +func (c *Glue) GetColumnStatisticsTaskRun(input *GetColumnStatisticsTaskRunInput) (*GetColumnStatisticsTaskRunOutput, error) { + req, out := c.GetColumnStatisticsTaskRunRequest(input) + return out, req.Send() +} + +// GetColumnStatisticsTaskRunWithContext is the same as GetColumnStatisticsTaskRun with the addition of +// the ability to pass a context and additional request options. +// +// See GetColumnStatisticsTaskRun 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 *Glue) GetColumnStatisticsTaskRunWithContext(ctx aws.Context, input *GetColumnStatisticsTaskRunInput, opts ...request.Option) (*GetColumnStatisticsTaskRunOutput, error) { + req, out := c.GetColumnStatisticsTaskRunRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetColumnStatisticsTaskRuns = "GetColumnStatisticsTaskRuns" + +// GetColumnStatisticsTaskRunsRequest generates a "aws/request.Request" representing the +// client's request for the GetColumnStatisticsTaskRuns 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 GetColumnStatisticsTaskRuns for more information on using the GetColumnStatisticsTaskRuns +// 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 GetColumnStatisticsTaskRunsRequest method. +// req, resp := client.GetColumnStatisticsTaskRunsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetColumnStatisticsTaskRuns +func (c *Glue) GetColumnStatisticsTaskRunsRequest(input *GetColumnStatisticsTaskRunsInput) (req *request.Request, output *GetColumnStatisticsTaskRunsOutput) { + op := &request.Operation{ + Name: opGetColumnStatisticsTaskRuns, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetColumnStatisticsTaskRunsInput{} + } + + output = &GetColumnStatisticsTaskRunsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetColumnStatisticsTaskRuns API operation for AWS Glue. +// +// Retrieves information about all runs associated with the specified table. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation GetColumnStatisticsTaskRuns for usage and error information. +// +// Returned Error Types: +// - OperationTimeoutException +// The operation timed out. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetColumnStatisticsTaskRuns +func (c *Glue) GetColumnStatisticsTaskRuns(input *GetColumnStatisticsTaskRunsInput) (*GetColumnStatisticsTaskRunsOutput, error) { + req, out := c.GetColumnStatisticsTaskRunsRequest(input) + return out, req.Send() +} + +// GetColumnStatisticsTaskRunsWithContext is the same as GetColumnStatisticsTaskRuns with the addition of +// the ability to pass a context and additional request options. +// +// See GetColumnStatisticsTaskRuns 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 *Glue) GetColumnStatisticsTaskRunsWithContext(ctx aws.Context, input *GetColumnStatisticsTaskRunsInput, opts ...request.Option) (*GetColumnStatisticsTaskRunsOutput, error) { + req, out := c.GetColumnStatisticsTaskRunsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetColumnStatisticsTaskRunsPages iterates over the pages of a GetColumnStatisticsTaskRuns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetColumnStatisticsTaskRuns 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 GetColumnStatisticsTaskRuns operation. +// pageNum := 0 +// err := client.GetColumnStatisticsTaskRunsPages(params, +// func(page *glue.GetColumnStatisticsTaskRunsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Glue) GetColumnStatisticsTaskRunsPages(input *GetColumnStatisticsTaskRunsInput, fn func(*GetColumnStatisticsTaskRunsOutput, bool) bool) error { + return c.GetColumnStatisticsTaskRunsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetColumnStatisticsTaskRunsPagesWithContext same as GetColumnStatisticsTaskRunsPages 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 *Glue) GetColumnStatisticsTaskRunsPagesWithContext(ctx aws.Context, input *GetColumnStatisticsTaskRunsInput, fn func(*GetColumnStatisticsTaskRunsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetColumnStatisticsTaskRunsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetColumnStatisticsTaskRunsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetColumnStatisticsTaskRunsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opGetConnection = "GetConnection" // GetConnectionRequest generates a "aws/request.Request" representing the @@ -11536,6 +12018,94 @@ return out, req.Send() } +const opGetTableOptimizer = "GetTableOptimizer" + +// GetTableOptimizerRequest generates a "aws/request.Request" representing the +// client's request for the GetTableOptimizer 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 GetTableOptimizer for more information on using the GetTableOptimizer +// 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 GetTableOptimizerRequest method. +// req, resp := client.GetTableOptimizerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetTableOptimizer +func (c *Glue) GetTableOptimizerRequest(input *GetTableOptimizerInput) (req *request.Request, output *GetTableOptimizerOutput) { + op := &request.Operation{ + Name: opGetTableOptimizer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTableOptimizerInput{} + } + + output = &GetTableOptimizerOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTableOptimizer API operation for AWS Glue. +// +// Returns the configuration of all optimizers associated with a specified table. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation GetTableOptimizer for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - InvalidInputException +// The input provided was not valid. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - InternalServiceException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetTableOptimizer +func (c *Glue) GetTableOptimizer(input *GetTableOptimizerInput) (*GetTableOptimizerOutput, error) { + req, out := c.GetTableOptimizerRequest(input) + return out, req.Send() +} + +// GetTableOptimizerWithContext is the same as GetTableOptimizer with the addition of +// the ability to pass a context and additional request options. +// +// See GetTableOptimizer 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 *Glue) GetTableOptimizerWithContext(ctx aws.Context, input *GetTableOptimizerInput, opts ...request.Option) (*GetTableOptimizerOutput, error) { + req, out := c.GetTableOptimizerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetTableVersion = "GetTableVersion" // GetTableVersionRequest generates a "aws/request.Request" representing the @@ -13488,6 +14058,141 @@ return p.Err() } +const opListColumnStatisticsTaskRuns = "ListColumnStatisticsTaskRuns" + +// ListColumnStatisticsTaskRunsRequest generates a "aws/request.Request" representing the +// client's request for the ListColumnStatisticsTaskRuns 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 ListColumnStatisticsTaskRuns for more information on using the ListColumnStatisticsTaskRuns +// 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 ListColumnStatisticsTaskRunsRequest method. +// req, resp := client.ListColumnStatisticsTaskRunsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListColumnStatisticsTaskRuns +func (c *Glue) ListColumnStatisticsTaskRunsRequest(input *ListColumnStatisticsTaskRunsInput) (req *request.Request, output *ListColumnStatisticsTaskRunsOutput) { + op := &request.Operation{ + Name: opListColumnStatisticsTaskRuns, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListColumnStatisticsTaskRunsInput{} + } + + output = &ListColumnStatisticsTaskRunsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListColumnStatisticsTaskRuns API operation for AWS Glue. +// +// List all task runs for a particular account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation ListColumnStatisticsTaskRuns for usage and error information. +// +// Returned Error Types: +// - OperationTimeoutException +// The operation timed out. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListColumnStatisticsTaskRuns +func (c *Glue) ListColumnStatisticsTaskRuns(input *ListColumnStatisticsTaskRunsInput) (*ListColumnStatisticsTaskRunsOutput, error) { + req, out := c.ListColumnStatisticsTaskRunsRequest(input) + return out, req.Send() +} + +// ListColumnStatisticsTaskRunsWithContext is the same as ListColumnStatisticsTaskRuns with the addition of +// the ability to pass a context and additional request options. +// +// See ListColumnStatisticsTaskRuns 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 *Glue) ListColumnStatisticsTaskRunsWithContext(ctx aws.Context, input *ListColumnStatisticsTaskRunsInput, opts ...request.Option) (*ListColumnStatisticsTaskRunsOutput, error) { + req, out := c.ListColumnStatisticsTaskRunsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListColumnStatisticsTaskRunsPages iterates over the pages of a ListColumnStatisticsTaskRuns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListColumnStatisticsTaskRuns 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 ListColumnStatisticsTaskRuns operation. +// pageNum := 0 +// err := client.ListColumnStatisticsTaskRunsPages(params, +// func(page *glue.ListColumnStatisticsTaskRunsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Glue) ListColumnStatisticsTaskRunsPages(input *ListColumnStatisticsTaskRunsInput, fn func(*ListColumnStatisticsTaskRunsOutput, bool) bool) error { + return c.ListColumnStatisticsTaskRunsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListColumnStatisticsTaskRunsPagesWithContext same as ListColumnStatisticsTaskRunsPages 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 *Glue) ListColumnStatisticsTaskRunsPagesWithContext(ctx aws.Context, input *ListColumnStatisticsTaskRunsInput, fn func(*ListColumnStatisticsTaskRunsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListColumnStatisticsTaskRunsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListColumnStatisticsTaskRunsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListColumnStatisticsTaskRunsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListCrawlers = "ListCrawlers" // ListCrawlersRequest generates a "aws/request.Request" representing the @@ -15572,6 +16277,151 @@ return out, req.Send() } +const opListTableOptimizerRuns = "ListTableOptimizerRuns" + +// ListTableOptimizerRunsRequest generates a "aws/request.Request" representing the +// client's request for the ListTableOptimizerRuns 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 ListTableOptimizerRuns for more information on using the ListTableOptimizerRuns +// 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 ListTableOptimizerRunsRequest method. +// req, resp := client.ListTableOptimizerRunsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListTableOptimizerRuns +func (c *Glue) ListTableOptimizerRunsRequest(input *ListTableOptimizerRunsInput) (req *request.Request, output *ListTableOptimizerRunsOutput) { + op := &request.Operation{ + Name: opListTableOptimizerRuns, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTableOptimizerRunsInput{} + } + + output = &ListTableOptimizerRunsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTableOptimizerRuns API operation for AWS Glue. +// +// Lists the history of previous optimizer runs for a specific table. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation ListTableOptimizerRuns for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListTableOptimizerRuns +func (c *Glue) ListTableOptimizerRuns(input *ListTableOptimizerRunsInput) (*ListTableOptimizerRunsOutput, error) { + req, out := c.ListTableOptimizerRunsRequest(input) + return out, req.Send() +} + +// ListTableOptimizerRunsWithContext is the same as ListTableOptimizerRuns with the addition of +// the ability to pass a context and additional request options. +// +// See ListTableOptimizerRuns 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 *Glue) ListTableOptimizerRunsWithContext(ctx aws.Context, input *ListTableOptimizerRunsInput, opts ...request.Option) (*ListTableOptimizerRunsOutput, error) { + req, out := c.ListTableOptimizerRunsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTableOptimizerRunsPages iterates over the pages of a ListTableOptimizerRuns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTableOptimizerRuns 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 ListTableOptimizerRuns operation. +// pageNum := 0 +// err := client.ListTableOptimizerRunsPages(params, +// func(page *glue.ListTableOptimizerRunsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Glue) ListTableOptimizerRunsPages(input *ListTableOptimizerRunsInput, fn func(*ListTableOptimizerRunsOutput, bool) bool) error { + return c.ListTableOptimizerRunsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTableOptimizerRunsPagesWithContext same as ListTableOptimizerRunsPages 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 *Glue) ListTableOptimizerRunsPagesWithContext(ctx aws.Context, input *ListTableOptimizerRunsInput, fn func(*ListTableOptimizerRunsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTableOptimizerRunsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTableOptimizerRunsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTableOptimizerRunsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTriggers = "ListTriggers" // ListTriggersRequest generates a "aws/request.Request" representing the @@ -17051,6 +17901,101 @@ return out, req.Send() } +const opStartColumnStatisticsTaskRun = "StartColumnStatisticsTaskRun" + +// StartColumnStatisticsTaskRunRequest generates a "aws/request.Request" representing the +// client's request for the StartColumnStatisticsTaskRun 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 StartColumnStatisticsTaskRun for more information on using the StartColumnStatisticsTaskRun +// 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 StartColumnStatisticsTaskRunRequest method. +// req, resp := client.StartColumnStatisticsTaskRunRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/StartColumnStatisticsTaskRun +func (c *Glue) StartColumnStatisticsTaskRunRequest(input *StartColumnStatisticsTaskRunInput) (req *request.Request, output *StartColumnStatisticsTaskRunOutput) { + op := &request.Operation{ + Name: opStartColumnStatisticsTaskRun, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartColumnStatisticsTaskRunInput{} + } + + output = &StartColumnStatisticsTaskRunOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartColumnStatisticsTaskRun API operation for AWS Glue. +// +// Starts a column statistics task run, for a specified table and columns. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation StartColumnStatisticsTaskRun for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - ColumnStatisticsTaskRunningException +// An exception thrown when you try to start another job while running a column +// stats generation job. +// +// - OperationTimeoutException +// The operation timed out. +// +// - ResourceNumberLimitExceededException +// A resource numerical limit was exceeded. +// +// - InvalidInputException +// The input provided was not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/StartColumnStatisticsTaskRun +func (c *Glue) StartColumnStatisticsTaskRun(input *StartColumnStatisticsTaskRunInput) (*StartColumnStatisticsTaskRunOutput, error) { + req, out := c.StartColumnStatisticsTaskRunRequest(input) + return out, req.Send() +} + +// StartColumnStatisticsTaskRunWithContext is the same as StartColumnStatisticsTaskRun with the addition of +// the ability to pass a context and additional request options. +// +// See StartColumnStatisticsTaskRun 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 *Glue) StartColumnStatisticsTaskRunWithContext(ctx aws.Context, input *StartColumnStatisticsTaskRunInput, opts ...request.Option) (*StartColumnStatisticsTaskRunOutput, error) { + req, out := c.StartColumnStatisticsTaskRunRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartCrawler = "StartCrawler" // StartCrawlerRequest generates a "aws/request.Request" representing the @@ -17279,6 +18224,8 @@ // with recommendations for a potential ruleset. You can then triage the ruleset // and modify the generated ruleset to your liking. // +// Recommendation runs are automatically deleted after 90 days. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -18116,6 +19063,96 @@ return out, req.Send() } +const opStopColumnStatisticsTaskRun = "StopColumnStatisticsTaskRun" + +// StopColumnStatisticsTaskRunRequest generates a "aws/request.Request" representing the +// client's request for the StopColumnStatisticsTaskRun 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 StopColumnStatisticsTaskRun for more information on using the StopColumnStatisticsTaskRun +// 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 StopColumnStatisticsTaskRunRequest method. +// req, resp := client.StopColumnStatisticsTaskRunRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/StopColumnStatisticsTaskRun +func (c *Glue) StopColumnStatisticsTaskRunRequest(input *StopColumnStatisticsTaskRunInput) (req *request.Request, output *StopColumnStatisticsTaskRunOutput) { + op := &request.Operation{ + Name: opStopColumnStatisticsTaskRun, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StopColumnStatisticsTaskRunInput{} + } + + output = &StopColumnStatisticsTaskRunOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StopColumnStatisticsTaskRun API operation for AWS Glue. +// +// Stops a task run for the specified table. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation StopColumnStatisticsTaskRun for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - ColumnStatisticsTaskNotRunningException +// An exception thrown when you try to stop a task run when there is no task +// running. +// +// - ColumnStatisticsTaskStoppingException +// An exception thrown when you try to stop a task run. +// +// - OperationTimeoutException +// The operation timed out. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/StopColumnStatisticsTaskRun +func (c *Glue) StopColumnStatisticsTaskRun(input *StopColumnStatisticsTaskRunInput) (*StopColumnStatisticsTaskRunOutput, error) { + req, out := c.StopColumnStatisticsTaskRunRequest(input) + return out, req.Send() +} + +// StopColumnStatisticsTaskRunWithContext is the same as StopColumnStatisticsTaskRun with the addition of +// the ability to pass a context and additional request options. +// +// See StopColumnStatisticsTaskRun 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 *Glue) StopColumnStatisticsTaskRunWithContext(ctx aws.Context, input *StopColumnStatisticsTaskRunInput, opts ...request.Option) (*StopColumnStatisticsTaskRunOutput, error) { + req, out := c.StopColumnStatisticsTaskRunRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStopCrawler = "StopCrawler" // StopCrawlerRequest generates a "aws/request.Request" representing the @@ -20464,6 +21501,95 @@ return out, req.Send() } +const opUpdateTableOptimizer = "UpdateTableOptimizer" + +// UpdateTableOptimizerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTableOptimizer 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 UpdateTableOptimizer for more information on using the UpdateTableOptimizer +// 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 UpdateTableOptimizerRequest method. +// req, resp := client.UpdateTableOptimizerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateTableOptimizer +func (c *Glue) UpdateTableOptimizerRequest(input *UpdateTableOptimizerInput) (req *request.Request, output *UpdateTableOptimizerOutput) { + op := &request.Operation{ + Name: opUpdateTableOptimizer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateTableOptimizerInput{} + } + + output = &UpdateTableOptimizerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateTableOptimizer API operation for AWS Glue. +// +// Updates the configuration for an existing table optimizer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation UpdateTableOptimizer for usage and error information. +// +// Returned Error Types: +// +// - EntityNotFoundException +// A specified entity does not exist +// +// - InvalidInputException +// The input provided was not valid. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - InternalServiceException +// An internal service error occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateTableOptimizer +func (c *Glue) UpdateTableOptimizer(input *UpdateTableOptimizerInput) (*UpdateTableOptimizerOutput, error) { + req, out := c.UpdateTableOptimizerRequest(input) + return out, req.Send() +} + +// UpdateTableOptimizerWithContext is the same as UpdateTableOptimizer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTableOptimizer 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 *Glue) UpdateTableOptimizerWithContext(ctx aws.Context, input *UpdateTableOptimizerInput, opts ...request.Option) (*UpdateTableOptimizerOutput, error) { + req, out := c.UpdateTableOptimizerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateTrigger = "UpdateTrigger" // UpdateTriggerRequest generates a "aws/request.Request" representing the @@ -23301,6 +24427,250 @@ return s } +// Represents a table optimizer to retrieve in the BatchGetTableOptimizer operation. +type BatchGetTableOptimizerEntry struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + CatalogId *string `locationName:"catalogId" min:"1" type:"string"` + + // The name of the database in the catalog in which the table resides. + DatabaseName *string `locationName:"databaseName" min:"1" type:"string"` + + // The name of the table. + TableName *string `locationName:"tableName" min:"1" type:"string"` + + // The type of table optimizer. + Type *string `locationName:"type" type:"string" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetTableOptimizerEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetTableOptimizerEntry) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetTableOptimizerEntry) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetTableOptimizerEntry"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *BatchGetTableOptimizerEntry) SetCatalogId(v string) *BatchGetTableOptimizerEntry { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *BatchGetTableOptimizerEntry) SetDatabaseName(v string) *BatchGetTableOptimizerEntry { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *BatchGetTableOptimizerEntry) SetTableName(v string) *BatchGetTableOptimizerEntry { + s.TableName = &v + return s +} + +// SetType sets the Type field's value. +func (s *BatchGetTableOptimizerEntry) SetType(v string) *BatchGetTableOptimizerEntry { + s.Type = &v + return s +} + +// Contains details on one of the errors in the error list returned by the BatchGetTableOptimizer +// operation. +type BatchGetTableOptimizerError struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + CatalogId *string `locationName:"catalogId" min:"1" type:"string"` + + // The name of the database in the catalog in which the table resides. + DatabaseName *string `locationName:"databaseName" min:"1" type:"string"` + + // An ErrorDetail object containing code and message details about the error. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The name of the table. + TableName *string `locationName:"tableName" min:"1" type:"string"` + + // The type of table optimizer. + Type *string `locationName:"type" type:"string" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetTableOptimizerError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetTableOptimizerError) GoString() string { + return s.String() +} + +// SetCatalogId sets the CatalogId field's value. +func (s *BatchGetTableOptimizerError) SetCatalogId(v string) *BatchGetTableOptimizerError { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *BatchGetTableOptimizerError) SetDatabaseName(v string) *BatchGetTableOptimizerError { + s.DatabaseName = &v + return s +} + +// SetError sets the Error field's value. +func (s *BatchGetTableOptimizerError) SetError(v *ErrorDetail) *BatchGetTableOptimizerError { + s.Error = v + return s +} + +// SetTableName sets the TableName field's value. +func (s *BatchGetTableOptimizerError) SetTableName(v string) *BatchGetTableOptimizerError { + s.TableName = &v + return s +} + +// SetType sets the Type field's value. +func (s *BatchGetTableOptimizerError) SetType(v string) *BatchGetTableOptimizerError { + s.Type = &v + return s +} + +type BatchGetTableOptimizerInput struct { + _ struct{} `type:"structure"` + + // A list of BatchGetTableOptimizerEntry objects specifying the table optimizers + // to retrieve. + // + // Entries is a required field + Entries []*BatchGetTableOptimizerEntry `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 BatchGetTableOptimizerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetTableOptimizerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetTableOptimizerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetTableOptimizerInput"} + if s.Entries == nil { + invalidParams.Add(request.NewErrParamRequired("Entries")) + } + if s.Entries != nil { + for i, v := range s.Entries { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntries sets the Entries field's value. +func (s *BatchGetTableOptimizerInput) SetEntries(v []*BatchGetTableOptimizerEntry) *BatchGetTableOptimizerInput { + s.Entries = v + return s +} + +type BatchGetTableOptimizerOutput struct { + _ struct{} `type:"structure"` + + // A list of errors from the operation. + Failures []*BatchGetTableOptimizerError `type:"list"` + + // A list of BatchTableOptimizer objects. + TableOptimizers []*BatchTableOptimizer `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 BatchGetTableOptimizerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetTableOptimizerOutput) GoString() string { + return s.String() +} + +// SetFailures sets the Failures field's value. +func (s *BatchGetTableOptimizerOutput) SetFailures(v []*BatchGetTableOptimizerError) *BatchGetTableOptimizerOutput { + s.Failures = v + return s +} + +// SetTableOptimizers sets the TableOptimizers field's value. +func (s *BatchGetTableOptimizerOutput) SetTableOptimizers(v []*BatchTableOptimizer) *BatchGetTableOptimizerOutput { + s.TableOptimizers = v + return s +} + type BatchGetTriggersInput struct { _ struct{} `type:"structure"` @@ -23686,6 +25056,67 @@ return s } +// Contains details for one of the table optimizers returned by the BatchGetTableOptimizer +// operation. +type BatchTableOptimizer struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + CatalogId *string `locationName:"catalogId" min:"1" type:"string"` + + // The name of the database in the catalog in which the table resides. + DatabaseName *string `locationName:"databaseName" min:"1" type:"string"` + + // The name of the table. + TableName *string `locationName:"tableName" min:"1" type:"string"` + + // A TableOptimizer object that contains details on the configuration and last + // run of a table optimzer. + TableOptimizer *TableOptimizer `locationName:"tableOptimizer" 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 BatchTableOptimizer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchTableOptimizer) GoString() string { + return s.String() +} + +// SetCatalogId sets the CatalogId field's value. +func (s *BatchTableOptimizer) SetCatalogId(v string) *BatchTableOptimizer { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *BatchTableOptimizer) SetDatabaseName(v string) *BatchTableOptimizer { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *BatchTableOptimizer) SetTableName(v string) *BatchTableOptimizer { + s.TableName = &v + return s +} + +// SetTableOptimizer sets the TableOptimizer field's value. +func (s *BatchTableOptimizer) SetTableOptimizer(v *TableOptimizer) *BatchTableOptimizer { + s.TableOptimizer = v + return s +} + // Contains information about a batch update partition error. type BatchUpdatePartitionFailureEntry struct { _ struct{} `type:"structure"` @@ -25750,6 +27181,12 @@ // Specifies a target that uses a Glue Data Catalog table. CatalogTarget *BasicCatalogTarget `type:"structure"` + // Specifies a source generated with standard connection options. + ConnectorDataSource *ConnectorDataSource `type:"structure"` + + // Specifies a target generated with standard connection options. + ConnectorDataTarget *ConnectorDataTarget `type:"structure"` + // Specifies a transform that uses custom code you provide to perform the data // transformation. The output is a collection of DynamicFrames. CustomCode *CustomCode `type:"structure"` @@ -26021,6 +27458,16 @@ invalidParams.AddNested("CatalogTarget", err.(request.ErrInvalidParams)) } } + if s.ConnectorDataSource != nil { + if err := s.ConnectorDataSource.Validate(); err != nil { + invalidParams.AddNested("ConnectorDataSource", err.(request.ErrInvalidParams)) + } + } + if s.ConnectorDataTarget != nil { + if err := s.ConnectorDataTarget.Validate(); err != nil { + invalidParams.AddNested("ConnectorDataTarget", err.(request.ErrInvalidParams)) + } + } if s.CustomCode != nil { if err := s.CustomCode.Validate(); err != nil { invalidParams.AddNested("CustomCode", err.(request.ErrInvalidParams)) @@ -26384,6 +27831,18 @@ return s } +// SetConnectorDataSource sets the ConnectorDataSource field's value. +func (s *CodeGenConfigurationNode) SetConnectorDataSource(v *ConnectorDataSource) *CodeGenConfigurationNode { + s.ConnectorDataSource = v + return s +} + +// SetConnectorDataTarget sets the ConnectorDataTarget field's value. +func (s *CodeGenConfigurationNode) SetConnectorDataTarget(v *ConnectorDataTarget) *CodeGenConfigurationNode { + s.ConnectorDataTarget = v + return s +} + // SetCustomCode sets the CustomCode field's value. func (s *CodeGenConfigurationNode) SetCustomCode(v *CustomCode) *CodeGenConfigurationNode { s.CustomCode = v @@ -27465,6 +28924,393 @@ return s } +// An exception thrown when you try to stop a task run when there is no task +// running. +type ColumnStatisticsTaskNotRunningException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A message describing the problem. + 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 ColumnStatisticsTaskNotRunningException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnStatisticsTaskNotRunningException) GoString() string { + return s.String() +} + +func newErrorColumnStatisticsTaskNotRunningException(v protocol.ResponseMetadata) error { + return &ColumnStatisticsTaskNotRunningException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ColumnStatisticsTaskNotRunningException) Code() string { + return "ColumnStatisticsTaskNotRunningException" +} + +// Message returns the exception's message. +func (s *ColumnStatisticsTaskNotRunningException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ColumnStatisticsTaskNotRunningException) OrigErr() error { + return nil +} + +func (s *ColumnStatisticsTaskNotRunningException) 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 *ColumnStatisticsTaskNotRunningException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ColumnStatisticsTaskNotRunningException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The object that shows the details of the column stats run. +type ColumnStatisticsTaskRun struct { + _ struct{} `type:"structure"` + + // The ID of the Data Catalog where the table resides. If none is supplied, + // the Amazon Web Services account ID is used by default. + CatalogID *string `min:"1" type:"string"` + + // A list of the column names. If none is supplied, all column names for the + // table will be used by default. + ColumnNameList []*string `type:"list"` + + // The identifier for the particular column statistics task run. + ColumnStatisticsTaskRunId *string `min:"1" type:"string"` + + // The time that this task was created. + CreationTime *time.Time `type:"timestamp"` + + // The Amazon Web Services account ID. + CustomerId *string `type:"string"` + + // The calculated DPU usage in seconds for all autoscaled workers. + DPUSeconds *float64 `type:"double"` + + // The database where the table resides. + DatabaseName *string `type:"string"` + + // The end time of the task. + EndTime *time.Time `type:"timestamp"` + + // The error message for the job. + ErrorMessage *string `type:"string"` + + // The last point in time when this task was modified. + LastUpdated *time.Time `type:"timestamp"` + + // The number of workers used to generate column statistics. The job is preconfigured + // to autoscale up to 25 instances. + NumberOfWorkers *int64 `min:"1" type:"integer"` + + // The IAM role that the service assumes to generate statistics. + Role *string `type:"string"` + + // The percentage of rows used to generate statistics. If none is supplied, + // the entire table will be used to generate stats. + SampleSize *float64 `type:"double"` + + // Name of the security configuration that is used to encrypt CloudWatch logs + // for the column stats task run. + SecurityConfiguration *string `type:"string"` + + // The start time of the task. + StartTime *time.Time `type:"timestamp"` + + // The status of the task run. + Status *string `type:"string" enum:"ColumnStatisticsState"` + + // The name of the table for which column statistics is generated. + TableName *string `type:"string"` + + // The type of workers being used for generating stats. The default is g.1x. + WorkerType *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnStatisticsTaskRun) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnStatisticsTaskRun) GoString() string { + return s.String() +} + +// SetCatalogID sets the CatalogID field's value. +func (s *ColumnStatisticsTaskRun) SetCatalogID(v string) *ColumnStatisticsTaskRun { + s.CatalogID = &v + return s +} + +// SetColumnNameList sets the ColumnNameList field's value. +func (s *ColumnStatisticsTaskRun) SetColumnNameList(v []*string) *ColumnStatisticsTaskRun { + s.ColumnNameList = v + return s +} + +// SetColumnStatisticsTaskRunId sets the ColumnStatisticsTaskRunId field's value. +func (s *ColumnStatisticsTaskRun) SetColumnStatisticsTaskRunId(v string) *ColumnStatisticsTaskRun { + s.ColumnStatisticsTaskRunId = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *ColumnStatisticsTaskRun) SetCreationTime(v time.Time) *ColumnStatisticsTaskRun { + s.CreationTime = &v + return s +} + +// SetCustomerId sets the CustomerId field's value. +func (s *ColumnStatisticsTaskRun) SetCustomerId(v string) *ColumnStatisticsTaskRun { + s.CustomerId = &v + return s +} + +// SetDPUSeconds sets the DPUSeconds field's value. +func (s *ColumnStatisticsTaskRun) SetDPUSeconds(v float64) *ColumnStatisticsTaskRun { + s.DPUSeconds = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *ColumnStatisticsTaskRun) SetDatabaseName(v string) *ColumnStatisticsTaskRun { + s.DatabaseName = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *ColumnStatisticsTaskRun) SetEndTime(v time.Time) *ColumnStatisticsTaskRun { + s.EndTime = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ColumnStatisticsTaskRun) SetErrorMessage(v string) *ColumnStatisticsTaskRun { + s.ErrorMessage = &v + return s +} + +// SetLastUpdated sets the LastUpdated field's value. +func (s *ColumnStatisticsTaskRun) SetLastUpdated(v time.Time) *ColumnStatisticsTaskRun { + s.LastUpdated = &v + return s +} + +// SetNumberOfWorkers sets the NumberOfWorkers field's value. +func (s *ColumnStatisticsTaskRun) SetNumberOfWorkers(v int64) *ColumnStatisticsTaskRun { + s.NumberOfWorkers = &v + return s +} + +// SetRole sets the Role field's value. +func (s *ColumnStatisticsTaskRun) SetRole(v string) *ColumnStatisticsTaskRun { + s.Role = &v + return s +} + +// SetSampleSize sets the SampleSize field's value. +func (s *ColumnStatisticsTaskRun) SetSampleSize(v float64) *ColumnStatisticsTaskRun { + s.SampleSize = &v + return s +} + +// SetSecurityConfiguration sets the SecurityConfiguration field's value. +func (s *ColumnStatisticsTaskRun) SetSecurityConfiguration(v string) *ColumnStatisticsTaskRun { + s.SecurityConfiguration = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ColumnStatisticsTaskRun) SetStartTime(v time.Time) *ColumnStatisticsTaskRun { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ColumnStatisticsTaskRun) SetStatus(v string) *ColumnStatisticsTaskRun { + s.Status = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *ColumnStatisticsTaskRun) SetTableName(v string) *ColumnStatisticsTaskRun { + s.TableName = &v + return s +} + +// SetWorkerType sets the WorkerType field's value. +func (s *ColumnStatisticsTaskRun) SetWorkerType(v string) *ColumnStatisticsTaskRun { + s.WorkerType = &v + return s +} + +// An exception thrown when you try to start another job while running a column +// stats generation job. +type ColumnStatisticsTaskRunningException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A message describing the problem. + 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 ColumnStatisticsTaskRunningException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnStatisticsTaskRunningException) GoString() string { + return s.String() +} + +func newErrorColumnStatisticsTaskRunningException(v protocol.ResponseMetadata) error { + return &ColumnStatisticsTaskRunningException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ColumnStatisticsTaskRunningException) Code() string { + return "ColumnStatisticsTaskRunningException" +} + +// Message returns the exception's message. +func (s *ColumnStatisticsTaskRunningException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ColumnStatisticsTaskRunningException) OrigErr() error { + return nil +} + +func (s *ColumnStatisticsTaskRunningException) 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 *ColumnStatisticsTaskRunningException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ColumnStatisticsTaskRunningException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An exception thrown when you try to stop a task run. +type ColumnStatisticsTaskStoppingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A message describing the problem. + 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 ColumnStatisticsTaskStoppingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnStatisticsTaskStoppingException) GoString() string { + return s.String() +} + +func newErrorColumnStatisticsTaskStoppingException(v protocol.ResponseMetadata) error { + return &ColumnStatisticsTaskStoppingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ColumnStatisticsTaskStoppingException) Code() string { + return "ColumnStatisticsTaskStoppingException" +} + +// Message returns the exception's message. +func (s *ColumnStatisticsTaskStoppingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ColumnStatisticsTaskStoppingException) OrigErr() error { + return nil +} + +func (s *ColumnStatisticsTaskStoppingException) 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 *ColumnStatisticsTaskStoppingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ColumnStatisticsTaskStoppingException) RequestID() string { + return s.RespMetadata.RequestID +} + // Two processes are trying to modify a resource simultaneously. type ConcurrentModificationException struct { _ struct{} `type:"structure"` @@ -28385,6 +30231,223 @@ return s } +// Specifies a source generated with standard connection options. +type ConnectorDataSource struct { + _ struct{} `type:"structure"` + + // The connectionType, as provided to the underlying Glue library. This node + // type supports the following connection types: + // + // * opensearch + // + // * azuresql + // + // * azurecosmos + // + // * bigquery + // + // * saphana + // + // * teradata + // + // * vertica + // + // ConnectionType is a required field + ConnectionType *string `type:"string" required:"true"` + + // A map specifying connection options for the node. You can find standard connection + // options for the corresponding connection type in the Connection parameters + // (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect.html) + // section of the Glue documentation. + // + // Data is a required field + Data map[string]*string `type:"map" required:"true"` + + // The name of this source node. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Specifies the data schema for this source. + OutputSchemas []*GlueSchema `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 ConnectorDataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorDataSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConnectorDataSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConnectorDataSource"} + if s.ConnectionType == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectionType")) + } + if s.Data == nil { + invalidParams.Add(request.NewErrParamRequired("Data")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.OutputSchemas != nil { + for i, v := range s.OutputSchemas { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputSchemas", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectionType sets the ConnectionType field's value. +func (s *ConnectorDataSource) SetConnectionType(v string) *ConnectorDataSource { + s.ConnectionType = &v + return s +} + +// SetData sets the Data field's value. +func (s *ConnectorDataSource) SetData(v map[string]*string) *ConnectorDataSource { + s.Data = v + return s +} + +// SetName sets the Name field's value. +func (s *ConnectorDataSource) SetName(v string) *ConnectorDataSource { + s.Name = &v + return s +} + +// SetOutputSchemas sets the OutputSchemas field's value. +func (s *ConnectorDataSource) SetOutputSchemas(v []*GlueSchema) *ConnectorDataSource { + s.OutputSchemas = v + return s +} + +// Specifies a target generated with standard connection options. +type ConnectorDataTarget struct { + _ struct{} `type:"structure"` + + // The connectionType, as provided to the underlying Glue library. This node + // type supports the following connection types: + // + // * opensearch + // + // * azuresql + // + // * azurecosmos + // + // * bigquery + // + // * saphana + // + // * teradata + // + // * vertica + // + // ConnectionType is a required field + ConnectionType *string `type:"string" required:"true"` + + // A map specifying connection options for the node. You can find standard connection + // options for the corresponding connection type in the Connection parameters + // (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect.html) + // section of the Glue documentation. + // + // Data is a required field + Data map[string]*string `type:"map" required:"true"` + + // The nodes that are inputs to the data target. + Inputs []*string `min:"1" type:"list"` + + // The name of this target node. + // + // Name is a required field + Name *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorDataTarget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorDataTarget) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConnectorDataTarget) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConnectorDataTarget"} + if s.ConnectionType == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectionType")) + } + if s.Data == nil { + invalidParams.Add(request.NewErrParamRequired("Data")) + } + if s.Inputs != nil && len(s.Inputs) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Inputs", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectionType sets the ConnectionType field's value. +func (s *ConnectorDataTarget) SetConnectionType(v string) *ConnectorDataTarget { + s.ConnectionType = &v + return s +} + +// SetData sets the Data field's value. +func (s *ConnectorDataTarget) SetData(v map[string]*string) *ConnectorDataTarget { + s.Data = v + return s +} + +// SetInputs sets the Inputs field's value. +func (s *ConnectorDataTarget) SetInputs(v []*string) *ConnectorDataTarget { + s.Inputs = v + return s +} + +// SetName sets the Name field's value. +func (s *ConnectorDataTarget) SetName(v string) *ConnectorDataTarget { + s.Name = &v + return s +} + // The details of a crawl in the workflow. type Crawl struct { _ struct{} `type:"structure"` @@ -33003,6 +35066,145 @@ return s } +type CreateTableOptimizerInput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + // + // CatalogId is a required field + CatalogId *string `min:"1" type:"string" required:"true"` + + // The name of the database in the catalog in which the table resides. + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` + + // A TableOptimizerConfiguration object representing the configuration of a + // table optimizer. + // + // TableOptimizerConfiguration is a required field + TableOptimizerConfiguration *TableOptimizerConfiguration `type:"structure" required:"true"` + + // The type of table optimizer. Currently, the only valid value is compaction. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTableOptimizerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTableOptimizerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTableOptimizerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTableOptimizerInput"} + if s.CatalogId == nil { + invalidParams.Add(request.NewErrParamRequired("CatalogId")) + } + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + if s.TableOptimizerConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("TableOptimizerConfiguration")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.TableOptimizerConfiguration != nil { + if err := s.TableOptimizerConfiguration.Validate(); err != nil { + invalidParams.AddNested("TableOptimizerConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *CreateTableOptimizerInput) SetCatalogId(v string) *CreateTableOptimizerInput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *CreateTableOptimizerInput) SetDatabaseName(v string) *CreateTableOptimizerInput { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *CreateTableOptimizerInput) SetTableName(v string) *CreateTableOptimizerInput { + s.TableName = &v + return s +} + +// SetTableOptimizerConfiguration sets the TableOptimizerConfiguration field's value. +func (s *CreateTableOptimizerInput) SetTableOptimizerConfiguration(v *TableOptimizerConfiguration) *CreateTableOptimizerInput { + s.TableOptimizerConfiguration = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateTableOptimizerInput) SetType(v string) *CreateTableOptimizerInput { + s.Type = &v + return s +} + +type CreateTableOptimizerOutput 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 CreateTableOptimizerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTableOptimizerOutput) GoString() string { + return s.String() +} + type CreateTableOutput struct { _ struct{} `type:"structure"` } @@ -34054,6 +36256,65 @@ return s } +// Describes the result of the evaluation of a data quality analyzer. +type DataQualityAnalyzerResult struct { + _ struct{} `type:"structure"` + + // A description of the data quality analyzer. + Description *string `type:"string"` + + // A map of metrics associated with the evaluation of the analyzer. + EvaluatedMetrics map[string]*float64 `type:"map"` + + // An evaluation message. + EvaluationMessage *string `type:"string"` + + // The name of the data quality analyzer. + Name *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataQualityAnalyzerResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataQualityAnalyzerResult) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *DataQualityAnalyzerResult) SetDescription(v string) *DataQualityAnalyzerResult { + s.Description = &v + return s +} + +// SetEvaluatedMetrics sets the EvaluatedMetrics field's value. +func (s *DataQualityAnalyzerResult) SetEvaluatedMetrics(v map[string]*float64) *DataQualityAnalyzerResult { + s.EvaluatedMetrics = v + return s +} + +// SetEvaluationMessage sets the EvaluationMessage field's value. +func (s *DataQualityAnalyzerResult) SetEvaluationMessage(v string) *DataQualityAnalyzerResult { + s.EvaluationMessage = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataQualityAnalyzerResult) SetName(v string) *DataQualityAnalyzerResult { + s.Name = &v + return s +} + // Additional run options you can specify for an evaluation run. type DataQualityEvaluationRunAdditionalRunOptions struct { _ struct{} `type:"structure"` @@ -34095,10 +36356,119 @@ return s } +// Describes the data quality metric value according to the analysis of historical +// data. +type DataQualityMetricValues struct { + _ struct{} `type:"structure"` + + // The actual value of the data quality metric. + ActualValue *float64 `type:"double"` + + // The expected value of the data quality metric according to the analysis of + // historical data. + ExpectedValue *float64 `type:"double"` + + // The lower limit of the data quality metric value according to the analysis + // of historical data. + LowerLimit *float64 `type:"double"` + + // The upper limit of the data quality metric value according to the analysis + // of historical data. + UpperLimit *float64 `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 DataQualityMetricValues) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataQualityMetricValues) GoString() string { + return s.String() +} + +// SetActualValue sets the ActualValue field's value. +func (s *DataQualityMetricValues) SetActualValue(v float64) *DataQualityMetricValues { + s.ActualValue = &v + return s +} + +// SetExpectedValue sets the ExpectedValue field's value. +func (s *DataQualityMetricValues) SetExpectedValue(v float64) *DataQualityMetricValues { + s.ExpectedValue = &v + return s +} + +// SetLowerLimit sets the LowerLimit field's value. +func (s *DataQualityMetricValues) SetLowerLimit(v float64) *DataQualityMetricValues { + s.LowerLimit = &v + return s +} + +// SetUpperLimit sets the UpperLimit field's value. +func (s *DataQualityMetricValues) SetUpperLimit(v float64) *DataQualityMetricValues { + s.UpperLimit = &v + return s +} + +// Describes the observation generated after evaluating the rules and analyzers. +type DataQualityObservation struct { + _ struct{} `type:"structure"` + + // A description of the data quality observation. + Description *string `type:"string"` + + // An object of type MetricBasedObservation representing the observation that + // is based on evaluated data quality metrics. + MetricBasedObservation *MetricBasedObservation `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 DataQualityObservation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataQualityObservation) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *DataQualityObservation) SetDescription(v string) *DataQualityObservation { + s.Description = &v + return s +} + +// SetMetricBasedObservation sets the MetricBasedObservation field's value. +func (s *DataQualityObservation) SetMetricBasedObservation(v *MetricBasedObservation) *DataQualityObservation { + s.MetricBasedObservation = v + return s +} + // Describes a data quality result. type DataQualityResult struct { _ struct{} `type:"structure"` + // A list of DataQualityAnalyzerResult objects representing the results for + // each analyzer. + AnalyzerResults []*DataQualityAnalyzerResult `type:"list"` + // The date and time when this data quality run completed. CompletedOn *time.Time `type:"timestamp"` @@ -34116,12 +36486,16 @@ // The job run ID associated with the data quality result, if any. JobRunId *string `min:"1" type:"string"` + // A list of DataQualityObservation objects representing the observations generated + // after evaluating the rules and analyzers. + Observations []*DataQualityObservation `type:"list"` + // A unique result ID for the data quality result. ResultId *string `min:"1" type:"string"` // A list of DataQualityRuleResult objects representing the results for each // rule. - RuleResults []*DataQualityRuleResult `min:"1" type:"list"` + RuleResults []*DataQualityRuleResult `type:"list"` // The unique run ID for the ruleset evaluation for this data quality result. RulesetEvaluationRunId *string `min:"1" type:"string"` @@ -34155,6 +36529,12 @@ return s.String() } +// SetAnalyzerResults sets the AnalyzerResults field's value. +func (s *DataQualityResult) SetAnalyzerResults(v []*DataQualityAnalyzerResult) *DataQualityResult { + s.AnalyzerResults = v + return s +} + // SetCompletedOn sets the CompletedOn field's value. func (s *DataQualityResult) SetCompletedOn(v time.Time) *DataQualityResult { s.CompletedOn = &v @@ -34185,6 +36565,12 @@ return s } +// SetObservations sets the Observations field's value. +func (s *DataQualityResult) SetObservations(v []*DataQualityObservation) *DataQualityResult { + s.Observations = v + return s +} + // SetResultId sets the ResultId field's value. func (s *DataQualityResult) SetResultId(v string) *DataQualityResult { s.ResultId = &v @@ -37526,6 +39912,125 @@ return s } +type DeleteTableOptimizerInput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + // + // CatalogId is a required field + CatalogId *string `min:"1" type:"string" required:"true"` + + // The name of the database in the catalog in which the table resides. + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` + + // The type of table optimizer. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTableOptimizerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTableOptimizerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTableOptimizerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTableOptimizerInput"} + if s.CatalogId == nil { + invalidParams.Add(request.NewErrParamRequired("CatalogId")) + } + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *DeleteTableOptimizerInput) SetCatalogId(v string) *DeleteTableOptimizerInput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *DeleteTableOptimizerInput) SetDatabaseName(v string) *DeleteTableOptimizerInput { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *DeleteTableOptimizerInput) SetTableName(v string) *DeleteTableOptimizerInput { + s.TableName = &v + return s +} + +// SetType sets the Type field's value. +func (s *DeleteTableOptimizerInput) SetType(v string) *DeleteTableOptimizerInput { + s.Type = &v + return s +} + +type DeleteTableOptimizerOutput 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 DeleteTableOptimizerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTableOptimizerOutput) GoString() string { + return s.String() +} + type DeleteTableOutput struct { _ struct{} `type:"structure"` } @@ -41827,6 +44332,211 @@ return s } +type GetColumnStatisticsTaskRunInput struct { + _ struct{} `type:"structure"` + + // The identifier for the particular column statistics task run. + // + // ColumnStatisticsTaskRunId is a required field + ColumnStatisticsTaskRunId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetColumnStatisticsTaskRunInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetColumnStatisticsTaskRunInput"} + if s.ColumnStatisticsTaskRunId == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnStatisticsTaskRunId")) + } + if s.ColumnStatisticsTaskRunId != nil && len(*s.ColumnStatisticsTaskRunId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnStatisticsTaskRunId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumnStatisticsTaskRunId sets the ColumnStatisticsTaskRunId field's value. +func (s *GetColumnStatisticsTaskRunInput) SetColumnStatisticsTaskRunId(v string) *GetColumnStatisticsTaskRunInput { + s.ColumnStatisticsTaskRunId = &v + return s +} + +type GetColumnStatisticsTaskRunOutput struct { + _ struct{} `type:"structure"` + + // A ColumnStatisticsTaskRun object representing the details of the column stats + // run. + ColumnStatisticsTaskRun *ColumnStatisticsTaskRun `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 GetColumnStatisticsTaskRunOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunOutput) GoString() string { + return s.String() +} + +// SetColumnStatisticsTaskRun sets the ColumnStatisticsTaskRun field's value. +func (s *GetColumnStatisticsTaskRunOutput) SetColumnStatisticsTaskRun(v *ColumnStatisticsTaskRun) *GetColumnStatisticsTaskRunOutput { + s.ColumnStatisticsTaskRun = v + return s +} + +type GetColumnStatisticsTaskRunsInput struct { + _ struct{} `type:"structure"` + + // The name of the database where the table resides. + // + // DatabaseName is a required field + DatabaseName *string `type:"string" required:"true"` + + // The maximum size of the response. + MaxResults *int64 `min:"1" type:"integer"` + + // A continuation token, if this is a continuation call. + NextToken *string `type:"string"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetColumnStatisticsTaskRunsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetColumnStatisticsTaskRunsInput"} + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *GetColumnStatisticsTaskRunsInput) SetDatabaseName(v string) *GetColumnStatisticsTaskRunsInput { + s.DatabaseName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetColumnStatisticsTaskRunsInput) SetMaxResults(v int64) *GetColumnStatisticsTaskRunsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetColumnStatisticsTaskRunsInput) SetNextToken(v string) *GetColumnStatisticsTaskRunsInput { + s.NextToken = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *GetColumnStatisticsTaskRunsInput) SetTableName(v string) *GetColumnStatisticsTaskRunsInput { + s.TableName = &v + return s +} + +type GetColumnStatisticsTaskRunsOutput struct { + _ struct{} `type:"structure"` + + // A list of column statistics task runs. + ColumnStatisticsTaskRuns []*ColumnStatisticsTaskRun `type:"list"` + + // A continuation token, if not all task runs have yet been returned. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetColumnStatisticsTaskRunsOutput) GoString() string { + return s.String() +} + +// SetColumnStatisticsTaskRuns sets the ColumnStatisticsTaskRuns field's value. +func (s *GetColumnStatisticsTaskRunsOutput) SetColumnStatisticsTaskRuns(v []*ColumnStatisticsTaskRun) *GetColumnStatisticsTaskRunsOutput { + s.ColumnStatisticsTaskRuns = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetColumnStatisticsTaskRunsOutput) SetNextToken(v string) *GetColumnStatisticsTaskRunsOutput { + s.NextToken = &v + return s +} + type GetConnectionInput struct { _ struct{} `type:"structure"` @@ -42611,6 +45321,10 @@ type GetDataQualityResultOutput struct { _ struct{} `type:"structure"` + // A list of DataQualityAnalyzerResult objects representing the results for + // each analyzer. + AnalyzerResults []*DataQualityAnalyzerResult `type:"list"` + // The date and time when the run for this data quality result was completed. CompletedOn *time.Time `type:"timestamp"` @@ -42628,12 +45342,16 @@ // The job run ID associated with the data quality result, if any. JobRunId *string `min:"1" type:"string"` + // A list of DataQualityObservation objects representing the observations generated + // after evaluating the rules and analyzers. + Observations []*DataQualityObservation `type:"list"` + // A unique result ID for the data quality result. ResultId *string `min:"1" type:"string"` // A list of DataQualityRuleResult objects representing the results for each // rule. - RuleResults []*DataQualityRuleResult `min:"1" type:"list"` + RuleResults []*DataQualityRuleResult `type:"list"` // The unique run ID associated with the ruleset evaluation. RulesetEvaluationRunId *string `min:"1" type:"string"` @@ -42667,6 +45385,12 @@ return s.String() } +// SetAnalyzerResults sets the AnalyzerResults field's value. +func (s *GetDataQualityResultOutput) SetAnalyzerResults(v []*DataQualityAnalyzerResult) *GetDataQualityResultOutput { + s.AnalyzerResults = v + return s +} + // SetCompletedOn sets the CompletedOn field's value. func (s *GetDataQualityResultOutput) SetCompletedOn(v time.Time) *GetDataQualityResultOutput { s.CompletedOn = &v @@ -42697,6 +45421,12 @@ return s } +// SetObservations sets the Observations field's value. +func (s *GetDataQualityResultOutput) SetObservations(v []*DataQualityObservation) *GetDataQualityResultOutput { + s.Observations = v + return s +} + // SetResultId sets the ResultId field's value. func (s *GetDataQualityResultOutput) SetResultId(v string) *GetDataQualityResultOutput { s.ResultId = &v @@ -47186,6 +49916,161 @@ return s } +type GetTableOptimizerInput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + // + // CatalogId is a required field + CatalogId *string `min:"1" type:"string" required:"true"` + + // The name of the database in the catalog in which the table resides. + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` + + // The type of table optimizer. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableOptimizerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableOptimizerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTableOptimizerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTableOptimizerInput"} + if s.CatalogId == nil { + invalidParams.Add(request.NewErrParamRequired("CatalogId")) + } + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *GetTableOptimizerInput) SetCatalogId(v string) *GetTableOptimizerInput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *GetTableOptimizerInput) SetDatabaseName(v string) *GetTableOptimizerInput { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *GetTableOptimizerInput) SetTableName(v string) *GetTableOptimizerInput { + s.TableName = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetTableOptimizerInput) SetType(v string) *GetTableOptimizerInput { + s.Type = &v + return s +} + +type GetTableOptimizerOutput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + CatalogId *string `min:"1" type:"string"` + + // The name of the database in the catalog in which the table resides. + DatabaseName *string `min:"1" type:"string"` + + // The name of the table. + TableName *string `min:"1" type:"string"` + + // The optimizer associated with the specified table. + TableOptimizer *TableOptimizer `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 GetTableOptimizerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetTableOptimizerOutput) GoString() string { + return s.String() +} + +// SetCatalogId sets the CatalogId field's value. +func (s *GetTableOptimizerOutput) SetCatalogId(v string) *GetTableOptimizerOutput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *GetTableOptimizerOutput) SetDatabaseName(v string) *GetTableOptimizerOutput { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *GetTableOptimizerOutput) SetTableName(v string) *GetTableOptimizerOutput { + s.TableName = &v + return s +} + +// SetTableOptimizer sets the TableOptimizer field's value. +func (s *GetTableOptimizerOutput) SetTableOptimizer(v *TableOptimizer) *GetTableOptimizerOutput { + s.TableOptimizer = v + return s +} + type GetTableOutput struct { _ struct{} `type:"structure"` @@ -53303,6 +56188,99 @@ return s } +type ListColumnStatisticsTaskRunsInput struct { + _ struct{} `type:"structure"` + + // The maximum size of the response. + MaxResults *int64 `min:"1" type:"integer"` + + // A continuation token, if this is a continuation call. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListColumnStatisticsTaskRunsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListColumnStatisticsTaskRunsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListColumnStatisticsTaskRunsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListColumnStatisticsTaskRunsInput"} + 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 *ListColumnStatisticsTaskRunsInput) SetMaxResults(v int64) *ListColumnStatisticsTaskRunsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListColumnStatisticsTaskRunsInput) SetNextToken(v string) *ListColumnStatisticsTaskRunsInput { + s.NextToken = &v + return s +} + +type ListColumnStatisticsTaskRunsOutput struct { + _ struct{} `type:"structure"` + + // A list of column statistics task run IDs. + ColumnStatisticsTaskRunIds []*string `type:"list"` + + // A continuation token, if not all task run IDs have yet been returned. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListColumnStatisticsTaskRunsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListColumnStatisticsTaskRunsOutput) GoString() string { + return s.String() +} + +// SetColumnStatisticsTaskRunIds sets the ColumnStatisticsTaskRunIds field's value. +func (s *ListColumnStatisticsTaskRunsOutput) SetColumnStatisticsTaskRunIds(v []*string) *ListColumnStatisticsTaskRunsOutput { + s.ColumnStatisticsTaskRunIds = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListColumnStatisticsTaskRunsOutput) SetNextToken(v string) *ListColumnStatisticsTaskRunsOutput { + s.NextToken = &v + return s +} + type ListCrawlersInput struct { _ struct{} `type:"structure"` @@ -54973,6 +57951,189 @@ return s } +type ListTableOptimizerRunsInput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + // + // CatalogId is a required field + CatalogId *string `min:"1" type:"string" required:"true"` + + // The name of the database in the catalog in which the table resides. + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` + + // The maximum number of optimizer runs to return on each call. + MaxResults *int64 `type:"integer"` + + // A continuation token, if this is a continuation call. + NextToken *string `type:"string"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` + + // The type of table optimizer. Currently, the only valid value is compaction. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTableOptimizerRunsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTableOptimizerRunsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTableOptimizerRunsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTableOptimizerRunsInput"} + if s.CatalogId == nil { + invalidParams.Add(request.NewErrParamRequired("CatalogId")) + } + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *ListTableOptimizerRunsInput) SetCatalogId(v string) *ListTableOptimizerRunsInput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *ListTableOptimizerRunsInput) SetDatabaseName(v string) *ListTableOptimizerRunsInput { + s.DatabaseName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTableOptimizerRunsInput) SetMaxResults(v int64) *ListTableOptimizerRunsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTableOptimizerRunsInput) SetNextToken(v string) *ListTableOptimizerRunsInput { + s.NextToken = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *ListTableOptimizerRunsInput) SetTableName(v string) *ListTableOptimizerRunsInput { + s.TableName = &v + return s +} + +// SetType sets the Type field's value. +func (s *ListTableOptimizerRunsInput) SetType(v string) *ListTableOptimizerRunsInput { + s.Type = &v + return s +} + +type ListTableOptimizerRunsOutput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + CatalogId *string `min:"1" type:"string"` + + // The name of the database in the catalog in which the table resides. + DatabaseName *string `min:"1" type:"string"` + + // A continuation token for paginating the returned list of optimizer runs, + // returned if the current segment of the list is not the last. + NextToken *string `type:"string"` + + // The name of the table. + TableName *string `min:"1" type:"string"` + + // A list of the optimizer runs associated with a table. + TableOptimizerRuns []*TableOptimizerRun `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 ListTableOptimizerRunsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTableOptimizerRunsOutput) GoString() string { + return s.String() +} + +// SetCatalogId sets the CatalogId field's value. +func (s *ListTableOptimizerRunsOutput) SetCatalogId(v string) *ListTableOptimizerRunsOutput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *ListTableOptimizerRunsOutput) SetDatabaseName(v string) *ListTableOptimizerRunsOutput { + s.DatabaseName = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTableOptimizerRunsOutput) SetNextToken(v string) *ListTableOptimizerRunsOutput { + s.NextToken = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *ListTableOptimizerRunsOutput) SetTableName(v string) *ListTableOptimizerRunsOutput { + s.TableName = &v + return s +} + +// SetTableOptimizerRuns sets the TableOptimizerRuns field's value. +func (s *ListTableOptimizerRunsOutput) SetTableOptimizerRuns(v []*TableOptimizerRun) *ListTableOptimizerRunsOutput { + s.TableOptimizerRuns = v + return s +} + type ListTriggersInput struct { _ struct{} `type:"structure"` @@ -56120,6 +59281,59 @@ return s } +// Describes the metric based observation generated based on evaluated data +// quality metrics. +type MetricBasedObservation struct { + _ struct{} `type:"structure"` + + // The name of the data quality metric used for generating the observation. + MetricName *string `min:"1" type:"string"` + + // An object of type DataQualityMetricValues representing the analysis of the + // data quality metric value. + MetricValues *DataQualityMetricValues `type:"structure"` + + // A list of new data quality rules generated as part of the observation based + // on the data quality metric value. + NewRules []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricBasedObservation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricBasedObservation) GoString() string { + return s.String() +} + +// SetMetricName sets the MetricName field's value. +func (s *MetricBasedObservation) SetMetricName(v string) *MetricBasedObservation { + s.MetricName = &v + return s +} + +// SetMetricValues sets the MetricValues field's value. +func (s *MetricBasedObservation) SetMetricValues(v *DataQualityMetricValues) *MetricBasedObservation { + s.MetricValues = v + return s +} + +// SetNewRules sets the NewRules field's value. +func (s *MetricBasedObservation) SetNewRules(v []*string) *MetricBasedObservation { + s.NewRules = v + return s +} + // Specifies a Microsoft SQL server data source in the Glue Data Catalog. type MicrosoftSQLServerCatalogSource struct { _ struct{} `type:"structure"` @@ -60415,6 +63629,65 @@ return s } +// Metrics for the optimizer run. +type RunMetrics struct { + _ struct{} `type:"structure"` + + // The duration of the job in hours. + JobDurationInHour *string `type:"string"` + + // The number of bytes removed by the compaction job run. + NumberOfBytesCompacted *string `type:"string"` + + // The number of DPU hours consumed by the job. + NumberOfDpus *string `type:"string"` + + // The number of files removed by the compaction job run. + NumberOfFilesCompacted *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 RunMetrics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RunMetrics) GoString() string { + return s.String() +} + +// SetJobDurationInHour sets the JobDurationInHour field's value. +func (s *RunMetrics) SetJobDurationInHour(v string) *RunMetrics { + s.JobDurationInHour = &v + return s +} + +// SetNumberOfBytesCompacted sets the NumberOfBytesCompacted field's value. +func (s *RunMetrics) SetNumberOfBytesCompacted(v string) *RunMetrics { + s.NumberOfBytesCompacted = &v + return s +} + +// SetNumberOfDpus sets the NumberOfDpus field's value. +func (s *RunMetrics) SetNumberOfDpus(v string) *RunMetrics { + s.NumberOfDpus = &v + return s +} + +// SetNumberOfFilesCompacted sets the NumberOfFilesCompacted field's value. +func (s *RunMetrics) SetNumberOfFilesCompacted(v string) *RunMetrics { + s.NumberOfFilesCompacted = &v + return s +} + type RunStatementInput struct { _ struct{} `type:"structure"` @@ -65530,6 +68803,166 @@ return s } +type StartColumnStatisticsTaskRunInput struct { + _ struct{} `type:"structure"` + + // The ID of the Data Catalog where the table reside. If none is supplied, the + // Amazon Web Services account ID is used by default. + CatalogID *string `min:"1" type:"string"` + + // A list of the column names to generate statistics. If none is supplied, all + // column names for the table will be used by default. + ColumnNameList []*string `type:"list"` + + // The name of the database where the table resides. + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` + + // The IAM role that the service assumes to generate statistics. + // + // Role is a required field + Role *string `min:"1" type:"string" required:"true"` + + // The percentage of rows used to generate statistics. If none is supplied, + // the entire table will be used to generate stats. + SampleSize *float64 `type:"double"` + + // Name of the security configuration that is used to encrypt CloudWatch logs + // for the column stats task run. + SecurityConfiguration *string `min:"1" type:"string"` + + // The name of the table to generate statistics. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartColumnStatisticsTaskRunInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartColumnStatisticsTaskRunInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartColumnStatisticsTaskRunInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartColumnStatisticsTaskRunInput"} + if s.CatalogID != nil && len(*s.CatalogID) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogID", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + if s.SecurityConfiguration != nil && len(*s.SecurityConfiguration) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityConfiguration", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogID sets the CatalogID field's value. +func (s *StartColumnStatisticsTaskRunInput) SetCatalogID(v string) *StartColumnStatisticsTaskRunInput { + s.CatalogID = &v + return s +} + +// SetColumnNameList sets the ColumnNameList field's value. +func (s *StartColumnStatisticsTaskRunInput) SetColumnNameList(v []*string) *StartColumnStatisticsTaskRunInput { + s.ColumnNameList = v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *StartColumnStatisticsTaskRunInput) SetDatabaseName(v string) *StartColumnStatisticsTaskRunInput { + s.DatabaseName = &v + return s +} + +// SetRole sets the Role field's value. +func (s *StartColumnStatisticsTaskRunInput) SetRole(v string) *StartColumnStatisticsTaskRunInput { + s.Role = &v + return s +} + +// SetSampleSize sets the SampleSize field's value. +func (s *StartColumnStatisticsTaskRunInput) SetSampleSize(v float64) *StartColumnStatisticsTaskRunInput { + s.SampleSize = &v + return s +} + +// SetSecurityConfiguration sets the SecurityConfiguration field's value. +func (s *StartColumnStatisticsTaskRunInput) SetSecurityConfiguration(v string) *StartColumnStatisticsTaskRunInput { + s.SecurityConfiguration = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *StartColumnStatisticsTaskRunInput) SetTableName(v string) *StartColumnStatisticsTaskRunInput { + s.TableName = &v + return s +} + +type StartColumnStatisticsTaskRunOutput struct { + _ struct{} `type:"structure"` + + // The identifier for the column statistics task run. + ColumnStatisticsTaskRunId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartColumnStatisticsTaskRunOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartColumnStatisticsTaskRunOutput) GoString() string { + return s.String() +} + +// SetColumnStatisticsTaskRunId sets the ColumnStatisticsTaskRunId field's value. +func (s *StartColumnStatisticsTaskRunOutput) SetColumnStatisticsTaskRunId(v string) *StartColumnStatisticsTaskRunOutput { + s.ColumnStatisticsTaskRunId = &v + return s +} + type StartCrawlerInput struct { _ struct{} `type:"structure"` @@ -67064,6 +70497,91 @@ return s } +type StopColumnStatisticsTaskRunInput struct { + _ struct{} `type:"structure"` + + // The name of the database where the table resides. + // + // DatabaseName is a required field + DatabaseName *string `type:"string" required:"true"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopColumnStatisticsTaskRunInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopColumnStatisticsTaskRunInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopColumnStatisticsTaskRunInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopColumnStatisticsTaskRunInput"} + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *StopColumnStatisticsTaskRunInput) SetDatabaseName(v string) *StopColumnStatisticsTaskRunInput { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *StopColumnStatisticsTaskRunInput) SetTableName(v string) *StopColumnStatisticsTaskRunInput { + s.TableName = &v + return s +} + +type StopColumnStatisticsTaskRunOutput 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 StopColumnStatisticsTaskRunOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopColumnStatisticsTaskRunOutput) GoString() string { + return s.String() +} + type StopCrawlerInput struct { _ struct{} `type:"structure"` @@ -68485,6 +72003,182 @@ return s } +// Contains details about an optimizer associated with a table. +type TableOptimizer struct { + _ struct{} `type:"structure"` + + // A TableOptimizerConfiguration object that was specified when creating or + // updating a table optimizer. + Configuration *TableOptimizerConfiguration `locationName:"configuration" type:"structure"` + + // A TableOptimizerRun object representing the last run of the table optimizer. + LastRun *TableOptimizerRun `locationName:"lastRun" type:"structure"` + + // The type of table optimizer. Currently, the only valid value is compaction. + Type *string `locationName:"type" type:"string" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TableOptimizer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TableOptimizer) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *TableOptimizer) SetConfiguration(v *TableOptimizerConfiguration) *TableOptimizer { + s.Configuration = v + return s +} + +// SetLastRun sets the LastRun field's value. +func (s *TableOptimizer) SetLastRun(v *TableOptimizerRun) *TableOptimizer { + s.LastRun = v + return s +} + +// SetType sets the Type field's value. +func (s *TableOptimizer) SetType(v string) *TableOptimizer { + s.Type = &v + return s +} + +// Contains details on the configuration of a table optimizer. You pass this +// configuration when creating or updating a table optimizer. +type TableOptimizerConfiguration struct { + _ struct{} `type:"structure"` + + // Whether table optimization is enabled. + Enabled *bool `locationName:"enabled" type:"boolean"` + + // A role passed by the caller which gives the service permission to update + // the resources associated with the optimizer on the caller's behalf. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TableOptimizerConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TableOptimizerConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TableOptimizerConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TableOptimizerConfiguration"} + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabled sets the Enabled field's value. +func (s *TableOptimizerConfiguration) SetEnabled(v bool) *TableOptimizerConfiguration { + s.Enabled = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *TableOptimizerConfiguration) SetRoleArn(v string) *TableOptimizerConfiguration { + s.RoleArn = &v + return s +} + +// Contains details for a table optimizer run. +type TableOptimizerRun struct { + _ struct{} `type:"structure"` + + // Represents the epoch timestamp at which the compaction job ended. + EndTimestamp *time.Time `locationName:"endTimestamp" type:"timestamp"` + + // An error that occured during the optimizer run. + Error *string `locationName:"error" type:"string"` + + // An event type representing the status of the table optimizer run. + EventType *string `locationName:"eventType" type:"string" enum:"TableOptimizerEventType"` + + // A RunMetrics object containing metrics for the optimizer run. + Metrics *RunMetrics `locationName:"metrics" type:"structure"` + + // Represents the epoch timestamp at which the compaction job was started within + // Lake Formation. + StartTimestamp *time.Time `locationName:"startTimestamp" 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 TableOptimizerRun) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TableOptimizerRun) GoString() string { + return s.String() +} + +// SetEndTimestamp sets the EndTimestamp field's value. +func (s *TableOptimizerRun) SetEndTimestamp(v time.Time) *TableOptimizerRun { + s.EndTimestamp = &v + return s +} + +// SetError sets the Error field's value. +func (s *TableOptimizerRun) SetError(v string) *TableOptimizerRun { + s.Error = &v + return s +} + +// SetEventType sets the EventType field's value. +func (s *TableOptimizerRun) SetEventType(v string) *TableOptimizerRun { + s.EventType = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *TableOptimizerRun) SetMetrics(v *RunMetrics) *TableOptimizerRun { + s.Metrics = v + return s +} + +// SetStartTimestamp sets the StartTimestamp field's value. +func (s *TableOptimizerRun) SetStartTimestamp(v time.Time) *TableOptimizerRun { + s.StartTimestamp = &v + return s +} + // Specifies a version of a table. type TableVersion struct { _ struct{} `type:"structure"` @@ -71396,10 +75090,12 @@ // The name of the Glue job to be synchronized to or from the remote repository. JobName *string `min:"1" type:"string"` - // The provider for the remote repository. + // The provider for the remote repository. Possible values: GITHUB, AWS_CODE_COMMIT, + // GITLAB, BITBUCKET. Provider *string `type:"string" enum:"SourceControlProvider"` - // The name of the remote repository that contains the job artifacts. + // The name of the remote repository that contains the job artifacts. For BitBucket + // providers, RepositoryName should include WorkspaceName. Use the format /. RepositoryName *string `min:"1" type:"string"` // The owner of the remote repository that contains the job artifacts. @@ -72318,10 +76014,12 @@ // The name of the Glue job to be synchronized to or from the remote repository. JobName *string `min:"1" type:"string"` - // The provider for the remote repository. + // The provider for the remote repository. Possible values: GITHUB, AWS_CODE_COMMIT, + // GITLAB, BITBUCKET. Provider *string `type:"string" enum:"SourceControlProvider"` - // The name of the remote repository that contains the job artifacts. + // The name of the remote repository that contains the job artifacts. For BitBucket + // providers, RepositoryName should include WorkspaceName. Use the format /. RepositoryName *string `min:"1" type:"string"` // The owner of the remote repository that contains the job artifacts. @@ -72579,6 +76277,145 @@ return s } +type UpdateTableOptimizerInput struct { + _ struct{} `type:"structure"` + + // The Catalog ID of the table. + // + // CatalogId is a required field + CatalogId *string `min:"1" type:"string" required:"true"` + + // The name of the database in the catalog in which the table resides. + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` + + // The name of the table. + // + // TableName is a required field + TableName *string `min:"1" type:"string" required:"true"` + + // A TableOptimizerConfiguration object representing the configuration of a + // table optimizer. + // + // TableOptimizerConfiguration is a required field + TableOptimizerConfiguration *TableOptimizerConfiguration `type:"structure" required:"true"` + + // The type of table optimizer. Currently, the only valid value is compaction. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"TableOptimizerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTableOptimizerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTableOptimizerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTableOptimizerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTableOptimizerInput"} + if s.CatalogId == nil { + invalidParams.Add(request.NewErrParamRequired("CatalogId")) + } + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.TableName == nil { + invalidParams.Add(request.NewErrParamRequired("TableName")) + } + if s.TableName != nil && len(*s.TableName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) + } + if s.TableOptimizerConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("TableOptimizerConfiguration")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.TableOptimizerConfiguration != nil { + if err := s.TableOptimizerConfiguration.Validate(); err != nil { + invalidParams.AddNested("TableOptimizerConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *UpdateTableOptimizerInput) SetCatalogId(v string) *UpdateTableOptimizerInput { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *UpdateTableOptimizerInput) SetDatabaseName(v string) *UpdateTableOptimizerInput { + s.DatabaseName = &v + return s +} + +// SetTableName sets the TableName field's value. +func (s *UpdateTableOptimizerInput) SetTableName(v string) *UpdateTableOptimizerInput { + s.TableName = &v + return s +} + +// SetTableOptimizerConfiguration sets the TableOptimizerConfiguration field's value. +func (s *UpdateTableOptimizerInput) SetTableOptimizerConfiguration(v *TableOptimizerConfiguration) *UpdateTableOptimizerInput { + s.TableOptimizerConfiguration = v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateTableOptimizerInput) SetType(v string) *UpdateTableOptimizerInput { + s.Type = &v + return s +} + +type UpdateTableOptimizerOutput 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 UpdateTableOptimizerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTableOptimizerOutput) GoString() string { + return s.String() +} + type UpdateTableOutput struct { _ struct{} `type:"structure"` } @@ -73839,12 +77676,16 @@ const ( // AdditionalOptionKeysPerformanceTuningCaching is a AdditionalOptionKeys enum value AdditionalOptionKeysPerformanceTuningCaching = "performanceTuning.caching" + + // AdditionalOptionKeysObservationsScope is a AdditionalOptionKeys enum value + AdditionalOptionKeysObservationsScope = "observations.scope" ) // AdditionalOptionKeys_Values returns all elements of the AdditionalOptionKeys enum func AdditionalOptionKeys_Values() []string { return []string{ AdditionalOptionKeysPerformanceTuningCaching, + AdditionalOptionKeysObservationsScope, } } @@ -74025,6 +77866,34 @@ } const ( + // ColumnStatisticsStateStarting is a ColumnStatisticsState enum value + ColumnStatisticsStateStarting = "STARTING" + + // ColumnStatisticsStateRunning is a ColumnStatisticsState enum value + ColumnStatisticsStateRunning = "RUNNING" + + // ColumnStatisticsStateSucceeded is a ColumnStatisticsState enum value + ColumnStatisticsStateSucceeded = "SUCCEEDED" + + // ColumnStatisticsStateFailed is a ColumnStatisticsState enum value + ColumnStatisticsStateFailed = "FAILED" + + // ColumnStatisticsStateStopped is a ColumnStatisticsState enum value + ColumnStatisticsStateStopped = "STOPPED" +) + +// ColumnStatisticsState_Values returns all elements of the ColumnStatisticsState enum +func ColumnStatisticsState_Values() []string { + return []string{ + ColumnStatisticsStateStarting, + ColumnStatisticsStateRunning, + ColumnStatisticsStateSucceeded, + ColumnStatisticsStateFailed, + ColumnStatisticsStateStopped, + } +} + +const ( // ColumnStatisticsTypeBoolean is a ColumnStatisticsType enum value ColumnStatisticsTypeBoolean = "BOOLEAN" @@ -75784,6 +79653,12 @@ // SourceControlProviderGithub is a SourceControlProvider enum value SourceControlProviderGithub = "GITHUB" + // SourceControlProviderGitlab is a SourceControlProvider enum value + SourceControlProviderGitlab = "GITLAB" + + // SourceControlProviderBitbucket is a SourceControlProvider enum value + SourceControlProviderBitbucket = "BITBUCKET" + // SourceControlProviderAwsCodeCommit is a SourceControlProvider enum value SourceControlProviderAwsCodeCommit = "AWS_CODE_COMMIT" ) @@ -75792,6 +79667,8 @@ func SourceControlProvider_Values() []string { return []string{ SourceControlProviderGithub, + SourceControlProviderGitlab, + SourceControlProviderBitbucket, SourceControlProviderAwsCodeCommit, } } @@ -75852,6 +79729,42 @@ } } +const ( + // TableOptimizerEventTypeStarting is a TableOptimizerEventType enum value + TableOptimizerEventTypeStarting = "starting" + + // TableOptimizerEventTypeCompleted is a TableOptimizerEventType enum value + TableOptimizerEventTypeCompleted = "completed" + + // TableOptimizerEventTypeFailed is a TableOptimizerEventType enum value + TableOptimizerEventTypeFailed = "failed" + + // TableOptimizerEventTypeInProgress is a TableOptimizerEventType enum value + TableOptimizerEventTypeInProgress = "in_progress" +) + +// TableOptimizerEventType_Values returns all elements of the TableOptimizerEventType enum +func TableOptimizerEventType_Values() []string { + return []string{ + TableOptimizerEventTypeStarting, + TableOptimizerEventTypeCompleted, + TableOptimizerEventTypeFailed, + TableOptimizerEventTypeInProgress, + } +} + +const ( + // TableOptimizerTypeCompaction is a TableOptimizerType enum value + TableOptimizerTypeCompaction = "compaction" +) + +// TableOptimizerType_Values returns all elements of the TableOptimizerType enum +func TableOptimizerType_Values() []string { + return []string{ + TableOptimizerTypeCompaction, + } +} + const ( // TargetFormatJson is a TargetFormat enum value TargetFormatJson = "json" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/glue/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/glue/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/glue/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/glue/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -20,6 +20,26 @@ // A resource to be created or added already exists. ErrCodeAlreadyExistsException = "AlreadyExistsException" + // ErrCodeColumnStatisticsTaskNotRunningException for service response error code + // "ColumnStatisticsTaskNotRunningException". + // + // An exception thrown when you try to stop a task run when there is no task + // running. + ErrCodeColumnStatisticsTaskNotRunningException = "ColumnStatisticsTaskNotRunningException" + + // ErrCodeColumnStatisticsTaskRunningException for service response error code + // "ColumnStatisticsTaskRunningException". + // + // An exception thrown when you try to start another job while running a column + // stats generation job. + ErrCodeColumnStatisticsTaskRunningException = "ColumnStatisticsTaskRunningException" + + // ErrCodeColumnStatisticsTaskStoppingException for service response error code + // "ColumnStatisticsTaskStoppingException". + // + // An exception thrown when you try to stop a task run. + ErrCodeColumnStatisticsTaskStoppingException = "ColumnStatisticsTaskStoppingException" + // ErrCodeConcurrentModificationException for service response error code // "ConcurrentModificationException". // @@ -202,6 +222,9 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessDeniedException": newErrorAccessDeniedException, "AlreadyExistsException": newErrorAlreadyExistsException, + "ColumnStatisticsTaskNotRunningException": newErrorColumnStatisticsTaskNotRunningException, + "ColumnStatisticsTaskRunningException": newErrorColumnStatisticsTaskRunningException, + "ColumnStatisticsTaskStoppingException": newErrorColumnStatisticsTaskStoppingException, "ConcurrentModificationException": newErrorConcurrentModificationException, "ConcurrentRunsExceededException": newErrorConcurrentRunsExceededException, "ConditionCheckFailureException": newErrorConditionCheckFailureException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/glue/glueiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/glue/glueiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/glue/glueiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/glue/glueiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -108,6 +108,10 @@ BatchGetPartitionWithContext(aws.Context, *glue.BatchGetPartitionInput, ...request.Option) (*glue.BatchGetPartitionOutput, error) BatchGetPartitionRequest(*glue.BatchGetPartitionInput) (*request.Request, *glue.BatchGetPartitionOutput) + BatchGetTableOptimizer(*glue.BatchGetTableOptimizerInput) (*glue.BatchGetTableOptimizerOutput, error) + BatchGetTableOptimizerWithContext(aws.Context, *glue.BatchGetTableOptimizerInput, ...request.Option) (*glue.BatchGetTableOptimizerOutput, error) + BatchGetTableOptimizerRequest(*glue.BatchGetTableOptimizerInput) (*request.Request, *glue.BatchGetTableOptimizerOutput) + BatchGetTriggers(*glue.BatchGetTriggersInput) (*glue.BatchGetTriggersOutput, error) BatchGetTriggersWithContext(aws.Context, *glue.BatchGetTriggersInput, ...request.Option) (*glue.BatchGetTriggersOutput, error) BatchGetTriggersRequest(*glue.BatchGetTriggersInput) (*request.Request, *glue.BatchGetTriggersOutput) @@ -216,6 +220,10 @@ CreateTableWithContext(aws.Context, *glue.CreateTableInput, ...request.Option) (*glue.CreateTableOutput, error) CreateTableRequest(*glue.CreateTableInput) (*request.Request, *glue.CreateTableOutput) + CreateTableOptimizer(*glue.CreateTableOptimizerInput) (*glue.CreateTableOptimizerOutput, error) + CreateTableOptimizerWithContext(aws.Context, *glue.CreateTableOptimizerInput, ...request.Option) (*glue.CreateTableOptimizerOutput, error) + CreateTableOptimizerRequest(*glue.CreateTableOptimizerInput) (*request.Request, *glue.CreateTableOptimizerOutput) + CreateTrigger(*glue.CreateTriggerInput) (*glue.CreateTriggerOutput, error) CreateTriggerWithContext(aws.Context, *glue.CreateTriggerInput, ...request.Option) (*glue.CreateTriggerOutput, error) CreateTriggerRequest(*glue.CreateTriggerInput) (*request.Request, *glue.CreateTriggerOutput) @@ -312,6 +320,10 @@ DeleteTableWithContext(aws.Context, *glue.DeleteTableInput, ...request.Option) (*glue.DeleteTableOutput, error) DeleteTableRequest(*glue.DeleteTableInput) (*request.Request, *glue.DeleteTableOutput) + DeleteTableOptimizer(*glue.DeleteTableOptimizerInput) (*glue.DeleteTableOptimizerOutput, error) + DeleteTableOptimizerWithContext(aws.Context, *glue.DeleteTableOptimizerInput, ...request.Option) (*glue.DeleteTableOptimizerOutput, error) + DeleteTableOptimizerRequest(*glue.DeleteTableOptimizerInput) (*request.Request, *glue.DeleteTableOptimizerOutput) + DeleteTableVersion(*glue.DeleteTableVersionInput) (*glue.DeleteTableVersionOutput, error) DeleteTableVersionWithContext(aws.Context, *glue.DeleteTableVersionInput, ...request.Option) (*glue.DeleteTableVersionOutput, error) DeleteTableVersionRequest(*glue.DeleteTableVersionInput) (*request.Request, *glue.DeleteTableVersionOutput) @@ -366,6 +378,17 @@ GetColumnStatisticsForTableWithContext(aws.Context, *glue.GetColumnStatisticsForTableInput, ...request.Option) (*glue.GetColumnStatisticsForTableOutput, error) GetColumnStatisticsForTableRequest(*glue.GetColumnStatisticsForTableInput) (*request.Request, *glue.GetColumnStatisticsForTableOutput) + GetColumnStatisticsTaskRun(*glue.GetColumnStatisticsTaskRunInput) (*glue.GetColumnStatisticsTaskRunOutput, error) + GetColumnStatisticsTaskRunWithContext(aws.Context, *glue.GetColumnStatisticsTaskRunInput, ...request.Option) (*glue.GetColumnStatisticsTaskRunOutput, error) + GetColumnStatisticsTaskRunRequest(*glue.GetColumnStatisticsTaskRunInput) (*request.Request, *glue.GetColumnStatisticsTaskRunOutput) + + GetColumnStatisticsTaskRuns(*glue.GetColumnStatisticsTaskRunsInput) (*glue.GetColumnStatisticsTaskRunsOutput, error) + GetColumnStatisticsTaskRunsWithContext(aws.Context, *glue.GetColumnStatisticsTaskRunsInput, ...request.Option) (*glue.GetColumnStatisticsTaskRunsOutput, error) + GetColumnStatisticsTaskRunsRequest(*glue.GetColumnStatisticsTaskRunsInput) (*request.Request, *glue.GetColumnStatisticsTaskRunsOutput) + + GetColumnStatisticsTaskRunsPages(*glue.GetColumnStatisticsTaskRunsInput, func(*glue.GetColumnStatisticsTaskRunsOutput, bool) bool) error + GetColumnStatisticsTaskRunsPagesWithContext(aws.Context, *glue.GetColumnStatisticsTaskRunsInput, func(*glue.GetColumnStatisticsTaskRunsOutput, bool) bool, ...request.Option) error + GetConnection(*glue.GetConnectionInput) (*glue.GetConnectionOutput, error) GetConnectionWithContext(aws.Context, *glue.GetConnectionInput, ...request.Option) (*glue.GetConnectionOutput, error) GetConnectionRequest(*glue.GetConnectionInput) (*request.Request, *glue.GetConnectionOutput) @@ -573,6 +596,10 @@ GetTableWithContext(aws.Context, *glue.GetTableInput, ...request.Option) (*glue.GetTableOutput, error) GetTableRequest(*glue.GetTableInput) (*request.Request, *glue.GetTableOutput) + GetTableOptimizer(*glue.GetTableOptimizerInput) (*glue.GetTableOptimizerOutput, error) + GetTableOptimizerWithContext(aws.Context, *glue.GetTableOptimizerInput, ...request.Option) (*glue.GetTableOptimizerOutput, error) + GetTableOptimizerRequest(*glue.GetTableOptimizerInput) (*request.Request, *glue.GetTableOptimizerOutput) + GetTableVersion(*glue.GetTableVersionInput) (*glue.GetTableVersionOutput, error) GetTableVersionWithContext(aws.Context, *glue.GetTableVersionInput, ...request.Option) (*glue.GetTableVersionOutput, error) GetTableVersionRequest(*glue.GetTableVersionInput) (*request.Request, *glue.GetTableVersionOutput) @@ -662,6 +689,13 @@ ListBlueprintsPages(*glue.ListBlueprintsInput, func(*glue.ListBlueprintsOutput, bool) bool) error ListBlueprintsPagesWithContext(aws.Context, *glue.ListBlueprintsInput, func(*glue.ListBlueprintsOutput, bool) bool, ...request.Option) error + ListColumnStatisticsTaskRuns(*glue.ListColumnStatisticsTaskRunsInput) (*glue.ListColumnStatisticsTaskRunsOutput, error) + ListColumnStatisticsTaskRunsWithContext(aws.Context, *glue.ListColumnStatisticsTaskRunsInput, ...request.Option) (*glue.ListColumnStatisticsTaskRunsOutput, error) + ListColumnStatisticsTaskRunsRequest(*glue.ListColumnStatisticsTaskRunsInput) (*request.Request, *glue.ListColumnStatisticsTaskRunsOutput) + + ListColumnStatisticsTaskRunsPages(*glue.ListColumnStatisticsTaskRunsInput, func(*glue.ListColumnStatisticsTaskRunsOutput, bool) bool) error + ListColumnStatisticsTaskRunsPagesWithContext(aws.Context, *glue.ListColumnStatisticsTaskRunsInput, func(*glue.ListColumnStatisticsTaskRunsOutput, bool) bool, ...request.Option) error + ListCrawlers(*glue.ListCrawlersInput) (*glue.ListCrawlersOutput, error) ListCrawlersWithContext(aws.Context, *glue.ListCrawlersInput, ...request.Option) (*glue.ListCrawlersOutput, error) ListCrawlersRequest(*glue.ListCrawlersInput) (*request.Request, *glue.ListCrawlersOutput) @@ -761,6 +795,13 @@ ListStatementsWithContext(aws.Context, *glue.ListStatementsInput, ...request.Option) (*glue.ListStatementsOutput, error) ListStatementsRequest(*glue.ListStatementsInput) (*request.Request, *glue.ListStatementsOutput) + ListTableOptimizerRuns(*glue.ListTableOptimizerRunsInput) (*glue.ListTableOptimizerRunsOutput, error) + ListTableOptimizerRunsWithContext(aws.Context, *glue.ListTableOptimizerRunsInput, ...request.Option) (*glue.ListTableOptimizerRunsOutput, error) + ListTableOptimizerRunsRequest(*glue.ListTableOptimizerRunsInput) (*request.Request, *glue.ListTableOptimizerRunsOutput) + + ListTableOptimizerRunsPages(*glue.ListTableOptimizerRunsInput, func(*glue.ListTableOptimizerRunsOutput, bool) bool) error + ListTableOptimizerRunsPagesWithContext(aws.Context, *glue.ListTableOptimizerRunsInput, func(*glue.ListTableOptimizerRunsOutput, bool) bool, ...request.Option) error + ListTriggers(*glue.ListTriggersInput) (*glue.ListTriggersOutput, error) ListTriggersWithContext(aws.Context, *glue.ListTriggersInput, ...request.Option) (*glue.ListTriggersOutput, error) ListTriggersRequest(*glue.ListTriggersInput) (*request.Request, *glue.ListTriggersOutput) @@ -826,6 +867,10 @@ StartBlueprintRunWithContext(aws.Context, *glue.StartBlueprintRunInput, ...request.Option) (*glue.StartBlueprintRunOutput, error) StartBlueprintRunRequest(*glue.StartBlueprintRunInput) (*request.Request, *glue.StartBlueprintRunOutput) + StartColumnStatisticsTaskRun(*glue.StartColumnStatisticsTaskRunInput) (*glue.StartColumnStatisticsTaskRunOutput, error) + StartColumnStatisticsTaskRunWithContext(aws.Context, *glue.StartColumnStatisticsTaskRunInput, ...request.Option) (*glue.StartColumnStatisticsTaskRunOutput, error) + StartColumnStatisticsTaskRunRequest(*glue.StartColumnStatisticsTaskRunInput) (*request.Request, *glue.StartColumnStatisticsTaskRunOutput) + StartCrawler(*glue.StartCrawlerInput) (*glue.StartCrawlerOutput, error) StartCrawlerWithContext(aws.Context, *glue.StartCrawlerInput, ...request.Option) (*glue.StartCrawlerOutput, error) StartCrawlerRequest(*glue.StartCrawlerInput) (*request.Request, *glue.StartCrawlerOutput) @@ -870,6 +915,10 @@ StartWorkflowRunWithContext(aws.Context, *glue.StartWorkflowRunInput, ...request.Option) (*glue.StartWorkflowRunOutput, error) StartWorkflowRunRequest(*glue.StartWorkflowRunInput) (*request.Request, *glue.StartWorkflowRunOutput) + StopColumnStatisticsTaskRun(*glue.StopColumnStatisticsTaskRunInput) (*glue.StopColumnStatisticsTaskRunOutput, error) + StopColumnStatisticsTaskRunWithContext(aws.Context, *glue.StopColumnStatisticsTaskRunInput, ...request.Option) (*glue.StopColumnStatisticsTaskRunOutput, error) + StopColumnStatisticsTaskRunRequest(*glue.StopColumnStatisticsTaskRunInput) (*request.Request, *glue.StopColumnStatisticsTaskRunOutput) + StopCrawler(*glue.StopCrawlerInput) (*glue.StopCrawlerOutput, error) StopCrawlerWithContext(aws.Context, *glue.StopCrawlerInput, ...request.Option) (*glue.StopCrawlerOutput, error) StopCrawlerRequest(*glue.StopCrawlerInput) (*request.Request, *glue.StopCrawlerOutput) @@ -970,6 +1019,10 @@ UpdateTableWithContext(aws.Context, *glue.UpdateTableInput, ...request.Option) (*glue.UpdateTableOutput, error) UpdateTableRequest(*glue.UpdateTableInput) (*request.Request, *glue.UpdateTableOutput) + UpdateTableOptimizer(*glue.UpdateTableOptimizerInput) (*glue.UpdateTableOptimizerOutput, error) + UpdateTableOptimizerWithContext(aws.Context, *glue.UpdateTableOptimizerInput, ...request.Option) (*glue.UpdateTableOptimizerOutput, error) + UpdateTableOptimizerRequest(*glue.UpdateTableOptimizerInput) (*request.Request, *glue.UpdateTableOptimizerOutput) + UpdateTrigger(*glue.UpdateTriggerInput) (*glue.UpdateTriggerOutput, error) UpdateTriggerWithContext(aws.Context, *glue.UpdateTriggerInput, ...request.Option) (*glue.UpdateTriggerOutput, error) UpdateTriggerRequest(*glue.UpdateTriggerInput) (*request.Request, *glue.UpdateTriggerOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/groundstation/api.go golang-github-aws-aws-sdk-go-1.48.14/service/groundstation/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/groundstation/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/groundstation/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -8004,6 +8004,9 @@ // KMS Alias Arn. KmsAliasArn *string `locationName:"kmsAliasArn" min:"1" type:"string"` + // KMS Alias Name. + KmsAliasName *string `locationName:"kmsAliasName" min:"1" type:"string"` + // KMS Key Arn. KmsKeyArn *string `locationName:"kmsKeyArn" type:"string"` } @@ -8032,6 +8035,9 @@ if s.KmsAliasArn != nil && len(*s.KmsAliasArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("KmsAliasArn", 1)) } + if s.KmsAliasName != nil && len(*s.KmsAliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsAliasName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -8045,6 +8051,12 @@ return s } +// SetKmsAliasName sets the KmsAliasName field's value. +func (s *KmsKey) SetKmsAliasName(v string) *KmsKey { + s.KmsAliasName = &v + return s +} + // SetKmsKeyArn sets the KmsKeyArn field's value. func (s *KmsKey) SetKmsKeyArn(v string) *KmsKey { s.KmsKeyArn = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/guardduty/api.go golang-github-aws-aws-sdk-go-1.48.14/service/guardduty/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/guardduty/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/guardduty/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3763,9 +3763,9 @@ // // Invites Amazon Web Services accounts to become members of an organization // administered by the Amazon Web Services account that invokes this API. If -// you are using organizations to manager your GuardDuty environment, this step -// is not needed. For more information, see Managing accounts with organizations -// (https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_organizations.html). +// you are using Amazon Web Services Organizations to manage your GuardDuty +// environment, this step is not needed. For more information, see Managing +// accounts with organizations (https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_organizations.html). // // To invite Amazon Web Services accounts, the first step is to ensure that // GuardDuty has been enabled in the potential member accounts. You can now @@ -4853,7 +4853,7 @@ // ListOrganizationAdminAccounts API operation for Amazon GuardDuty. // -// Lists the accounts configured as GuardDuty delegated administrators. Only +// Lists the accounts designated as GuardDuty delegated administrators. Only // the organization's management account can run this API operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7130,6 +7130,17 @@ // Information about the Kubernetes API call action described in this finding. KubernetesApiCallAction *KubernetesApiCallAction `locationName:"kubernetesApiCallAction" type:"structure"` + // Information whether the user has the permission to use a specific Kubernetes + // API. + KubernetesPermissionCheckedDetails *KubernetesPermissionCheckedDetails `locationName:"kubernetesPermissionCheckedDetails" type:"structure"` + + // Information about the role binding that grants the permission defined in + // a Kubernetes role. + KubernetesRoleBindingDetails *KubernetesRoleBindingDetails `locationName:"kubernetesRoleBindingDetails" type:"structure"` + + // Information about the Kubernetes role name and role type. + KubernetesRoleDetails *KubernetesRoleDetails `locationName:"kubernetesRoleDetails" type:"structure"` + // Information about the NETWORK_CONNECTION action described in this finding. NetworkConnectionAction *NetworkConnectionAction `locationName:"networkConnectionAction" type:"structure"` @@ -7182,6 +7193,24 @@ return s } +// SetKubernetesPermissionCheckedDetails sets the KubernetesPermissionCheckedDetails field's value. +func (s *Action) SetKubernetesPermissionCheckedDetails(v *KubernetesPermissionCheckedDetails) *Action { + s.KubernetesPermissionCheckedDetails = v + return s +} + +// SetKubernetesRoleBindingDetails sets the KubernetesRoleBindingDetails field's value. +func (s *Action) SetKubernetesRoleBindingDetails(v *KubernetesRoleBindingDetails) *Action { + s.KubernetesRoleBindingDetails = v + return s +} + +// SetKubernetesRoleDetails sets the KubernetesRoleDetails field's value. +func (s *Action) SetKubernetesRoleDetails(v *KubernetesRoleDetails) *Action { + s.KubernetesRoleDetails = v + return s +} + // SetNetworkConnectionAction sets the NetworkConnectionAction field's value. func (s *Action) SetNetworkConnectionAction(v *NetworkConnectionAction) *Action { s.NetworkConnectionAction = v @@ -7343,6 +7372,162 @@ return s } +// Information about the installed GuardDuty security agent. +type AgentDetails struct { + _ struct{} `type:"structure"` + + // Version of the installed GuardDuty security agent. + Version *string `locationName:"version" 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 AgentDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentDetails) GoString() string { + return s.String() +} + +// SetVersion sets the Version field's value. +func (s *AgentDetails) SetVersion(v string) *AgentDetails { + s.Version = &v + return s +} + +// Contains information about the anomalies. +type Anomaly struct { + _ struct{} `type:"structure"` + + // Information about the types of profiles. + Profiles map[string]map[string][]*AnomalyObject `locationName:"profiles" type:"map"` + + // Information about the behavior of the anomalies. + Unusual *AnomalyUnusual `locationName:"unusual" 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 Anomaly) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Anomaly) GoString() string { + return s.String() +} + +// SetProfiles sets the Profiles field's value. +func (s *Anomaly) SetProfiles(v map[string]map[string][]*AnomalyObject) *Anomaly { + s.Profiles = v + return s +} + +// SetUnusual sets the Unusual field's value. +func (s *Anomaly) SetUnusual(v *AnomalyUnusual) *Anomaly { + s.Unusual = v + return s +} + +// Contains information about the unusual anomalies. +type AnomalyObject struct { + _ struct{} `type:"structure"` + + // The recorded value. + Observations *Observations `locationName:"observations" type:"structure"` + + // The frequency of the anomaly. + ProfileSubtype *string `locationName:"profileSubtype" type:"string" enum:"ProfileSubtype"` + + // The type of behavior of the profile. + ProfileType *string `locationName:"profileType" type:"string" enum:"ProfileType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyObject) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyObject) GoString() string { + return s.String() +} + +// SetObservations sets the Observations field's value. +func (s *AnomalyObject) SetObservations(v *Observations) *AnomalyObject { + s.Observations = v + return s +} + +// SetProfileSubtype sets the ProfileSubtype field's value. +func (s *AnomalyObject) SetProfileSubtype(v string) *AnomalyObject { + s.ProfileSubtype = &v + return s +} + +// SetProfileType sets the ProfileType field's value. +func (s *AnomalyObject) SetProfileType(v string) *AnomalyObject { + s.ProfileType = &v + return s +} + +// Contains information about the behavior of the anomaly that is new to GuardDuty. +type AnomalyUnusual struct { + _ struct{} `type:"structure"` + + // The behavior of the anomalous activity that caused GuardDuty to generate + // the finding. + Behavior map[string]map[string]*AnomalyObject `locationName:"behavior" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyUnusual) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnomalyUnusual) GoString() string { + return s.String() +} + +// SetBehavior sets the Behavior field's value. +func (s *AnomalyUnusual) SetBehavior(v map[string]map[string]*AnomalyObject) *AnomalyUnusual { + s.Behavior = v + return s +} + type ArchiveFindingsInput struct { _ struct{} `type:"structure"` @@ -8137,6 +8322,49 @@ return s } +// Contains information about the Amazon EC2 instance that is running the Amazon +// ECS container. +type ContainerInstanceDetails struct { + _ struct{} `type:"structure"` + + // Represents total number of nodes in the Amazon ECS cluster. + CompatibleContainerInstances *int64 `locationName:"compatibleContainerInstances" type:"long"` + + // Represents the nodes in the Amazon ECS cluster that has a HEALTHY coverage + // status. + CoveredContainerInstances *int64 `locationName:"coveredContainerInstances" type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerInstanceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerInstanceDetails) GoString() string { + return s.String() +} + +// SetCompatibleContainerInstances sets the CompatibleContainerInstances field's value. +func (s *ContainerInstanceDetails) SetCompatibleContainerInstances(v int64) *ContainerInstanceDetails { + s.CompatibleContainerInstances = &v + return s +} + +// SetCoveredContainerInstances sets the CoveredContainerInstances field's value. +func (s *ContainerInstanceDetails) SetCoveredContainerInstances(v int64) *ContainerInstanceDetails { + s.CoveredContainerInstances = &v + return s +} + // Contains information about the country where the remote IP address is located. type Country struct { _ struct{} `type:"structure"` @@ -8178,6 +8406,136 @@ return s } +// This API is also used when you use GuardDuty Runtime Monitoring for your +// Amazon EC2 instances (currently in preview release) and is subject to change. +// +// Contains information about the Amazon EC2 instance runtime coverage details. +type CoverageEc2InstanceDetails struct { + _ struct{} `type:"structure"` + + // Information about the installed security agent. + AgentDetails *AgentDetails `locationName:"agentDetails" type:"structure"` + + // The cluster ARN of the Amazon ECS cluster running on the Amazon EC2 instance. + ClusterArn *string `locationName:"clusterArn" type:"string"` + + // The Amazon EC2 instance ID. + InstanceId *string `locationName:"instanceId" type:"string"` + + // The instance type of the Amazon EC2 instance. + InstanceType *string `locationName:"instanceType" type:"string"` + + // Indicates how the GuardDuty security agent is managed for this resource. + // + // * AUTO_MANAGED indicates that GuardDuty deploys and manages updates for + // this resource. + // + // * MANUAL indicates that you are responsible to deploy, update, and manage + // the GuardDuty security agent updates for this resource. + // + // The DISABLED status doesn't apply to Amazon EC2 instances and Amazon EKS + // clusters that run on Amazon EC2 instances. + ManagementType *string `locationName:"managementType" type:"string" enum:"ManagementType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CoverageEc2InstanceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CoverageEc2InstanceDetails) GoString() string { + return s.String() +} + +// SetAgentDetails sets the AgentDetails field's value. +func (s *CoverageEc2InstanceDetails) SetAgentDetails(v *AgentDetails) *CoverageEc2InstanceDetails { + s.AgentDetails = v + return s +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *CoverageEc2InstanceDetails) SetClusterArn(v string) *CoverageEc2InstanceDetails { + s.ClusterArn = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *CoverageEc2InstanceDetails) SetInstanceId(v string) *CoverageEc2InstanceDetails { + s.InstanceId = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *CoverageEc2InstanceDetails) SetInstanceType(v string) *CoverageEc2InstanceDetails { + s.InstanceType = &v + return s +} + +// SetManagementType sets the ManagementType field's value. +func (s *CoverageEc2InstanceDetails) SetManagementType(v string) *CoverageEc2InstanceDetails { + s.ManagementType = &v + return s +} + +// Contains information about Amazon ECS cluster runtime coverage details. +type CoverageEcsClusterDetails struct { + _ struct{} `type:"structure"` + + // The name of the Amazon ECS cluster. + ClusterName *string `locationName:"clusterName" type:"string"` + + // Information about the Amazon ECS container running on Amazon EC2 instance. + ContainerInstanceDetails *ContainerInstanceDetails `locationName:"containerInstanceDetails" type:"structure"` + + // Information about the Fargate details associated with the Amazon ECS cluster. + FargateDetails *FargateDetails `locationName:"fargateDetails" 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 CoverageEcsClusterDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CoverageEcsClusterDetails) GoString() string { + return s.String() +} + +// SetClusterName sets the ClusterName field's value. +func (s *CoverageEcsClusterDetails) SetClusterName(v string) *CoverageEcsClusterDetails { + s.ClusterName = &v + return s +} + +// SetContainerInstanceDetails sets the ContainerInstanceDetails field's value. +func (s *CoverageEcsClusterDetails) SetContainerInstanceDetails(v *ContainerInstanceDetails) *CoverageEcsClusterDetails { + s.ContainerInstanceDetails = v + return s +} + +// SetFargateDetails sets the FargateDetails field's value. +func (s *CoverageEcsClusterDetails) SetFargateDetails(v *FargateDetails) *CoverageEcsClusterDetails { + s.FargateDetails = v + return s +} + // Information about the EKS cluster that has a coverage status. type CoverageEksClusterDetails struct { _ struct{} `type:"structure"` @@ -8336,6 +8694,9 @@ _ struct{} `type:"structure"` // An enum value representing possible filter fields. + // + // Replace the enum value CLUSTER_NAME with EKS_CLUSTER_NAME. CLUSTER_NAME has + // been deprecated. CriterionKey *string `locationName:"criterionKey" type:"string" enum:"CoverageFilterCriterionKey"` // Contains information about the condition. @@ -8463,6 +8824,16 @@ type CoverageResourceDetails struct { _ struct{} `type:"structure"` + // + // This API is also used when you use GuardDuty Runtime Monitoring for your + // Amazon EC2 instances (currently in preview release) and is subject to change. + // + // Information about the Amazon EC2 instance assessed for runtime coverage. + Ec2InstanceDetails *CoverageEc2InstanceDetails `locationName:"ec2InstanceDetails" type:"structure"` + + // Information about the Amazon ECS cluster that is assessed for runtime coverage. + EcsClusterDetails *CoverageEcsClusterDetails `locationName:"ecsClusterDetails" type:"structure"` + // EKS cluster details involved in the coverage statistics. EksClusterDetails *CoverageEksClusterDetails `locationName:"eksClusterDetails" type:"structure"` @@ -8488,6 +8859,18 @@ return s.String() } +// SetEc2InstanceDetails sets the Ec2InstanceDetails field's value. +func (s *CoverageResourceDetails) SetEc2InstanceDetails(v *CoverageEc2InstanceDetails) *CoverageResourceDetails { + s.Ec2InstanceDetails = v + return s +} + +// SetEcsClusterDetails sets the EcsClusterDetails field's value. +func (s *CoverageResourceDetails) SetEcsClusterDetails(v *CoverageEcsClusterDetails) *CoverageResourceDetails { + s.EcsClusterDetails = v + return s +} + // SetEksClusterDetails sets the EksClusterDetails field's value. func (s *CoverageResourceDetails) SetEksClusterDetails(v *CoverageEksClusterDetails) *CoverageResourceDetails { s.EksClusterDetails = v @@ -8505,6 +8888,9 @@ _ struct{} `type:"structure"` // Represents the field name used to sort the coverage details. + // + // Replace the enum value CLUSTER_NAME with EKS_CLUSTER_NAME. CLUSTER_NAME has + // been deprecated. AttributeName *string `locationName:"attributeName" type:"string" enum:"CoverageSortKey"` // The order in which the sorted findings are to be displayed. @@ -8841,6 +9227,8 @@ // // * service.action.dnsRequestAction.domain // + // * service.action.dnsRequestAction.domainWithSuffix + // // * service.action.networkConnectionAction.blocked // // * service.action.networkConnectionAction.connectionDirection @@ -8865,8 +9253,14 @@ // // * service.action.kubernetesApiCallAction.remoteIpDetails.ipAddressV4 // + // * service.action.kubernetesApiCallAction.namespace + // + // * service.action.kubernetesApiCallAction.remoteIpDetails.organization.asn + // // * service.action.kubernetesApiCallAction.requestUri // + // * service.action.kubernetesApiCallAction.statusCode + // // * service.action.networkConnectionAction.localIpDetails.ipAddressV4 // // * service.action.networkConnectionAction.protocol @@ -11352,6 +11746,39 @@ return s } +// Contains information about the detected behavior. +type Detection struct { + _ struct{} `type:"structure"` + + // The details about the anomalous activity that caused GuardDuty to generate + // the finding. + Anomaly *Anomaly `locationName:"anomaly" 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 Detection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Detection) GoString() string { + return s.String() +} + +// SetAnomaly sets the Anomaly field's value. +func (s *Detection) SetAnomaly(v *Anomaly) *Detection { + s.Anomaly = v + return s +} + // Information about the additional configuration for a feature in your GuardDuty // account. type DetectorAdditionalConfiguration struct { @@ -11879,6 +12306,10 @@ // The domain information for the DNS query. Domain *string `locationName:"domain" type:"string"` + // The second and top level domain involved in the activity that prompted GuardDuty + // to generate this finding. + DomainWithSuffix *string `locationName:"domainWithSuffix" type:"string"` + // The network connection protocol observed in the activity that prompted GuardDuty // to generate the finding. Protocol *string `locationName:"protocol" type:"string"` @@ -11914,6 +12345,12 @@ return s } +// SetDomainWithSuffix sets the DomainWithSuffix field's value. +func (s *DnsRequestAction) SetDomainWithSuffix(v string) *DnsRequestAction { + s.DomainWithSuffix = &v + return s +} + // SetProtocol sets the Protocol field's value. func (s *DnsRequestAction) SetProtocol(v string) *DnsRequestAction { s.Protocol = &v @@ -12409,7 +12846,7 @@ type EnableOrganizationAdminAccountInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services Account ID for the organization account to be enabled + // The Amazon Web Services account ID for the organization account to be enabled // as a GuardDuty delegated administrator. // // AdminAccountId is a required field @@ -12507,6 +12944,57 @@ return s } +// Contains information about AWS Fargate details associated with an Amazon +// ECS cluster. +type FargateDetails struct { + _ struct{} `type:"structure"` + + // Runtime coverage issues identified for the resource running on AWS Fargate. + Issues []*string `locationName:"issues" type:"list"` + + // Indicates how the GuardDuty security agent is managed for this resource. + // + // * AUTO_MANAGED indicates that GuardDuty deploys and manages updates for + // this resource. + // + // * MANUAL indicates that you are responsible to deploy, update, and manage + // the GuardDuty security agent updates for this resource. + // + // * DISABLED indicates that the deployment of the GuardDuty security agent + // is disabled for this resource. + ManagementType *string `locationName:"managementType" type:"string" enum:"ManagementType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FargateDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FargateDetails) GoString() string { + return s.String() +} + +// SetIssues sets the Issues field's value. +func (s *FargateDetails) SetIssues(v []*string) *FargateDetails { + s.Issues = v + return s +} + +// SetManagementType sets the ManagementType field's value. +func (s *FargateDetails) SetManagementType(v string) *FargateDetails { + s.ManagementType = &v + return s +} + // Contains information about the condition. type FilterCondition struct { _ struct{} `type:"structure"` @@ -12635,6 +13123,9 @@ // An enum value representing possible scan properties to match with given scan // entries. + // + // Replace the enum value CLUSTER_NAME with EKS_CLUSTER_NAME. CLUSTER_NAME has + // been deprecated. CriterionKey *string `locationName:"criterionKey" type:"string" enum:"CriterionKey"` // Contains information about the condition. @@ -12686,8 +13177,8 @@ return s } -// Contains information about the finding, which is generated when abnormal -// or suspicious activity is detected. +// Contains information about the finding that is generated when abnormal or +// suspicious activity is detected. type Finding struct { _ struct{} `type:"structure"` @@ -14862,6 +15353,47 @@ return s } +// Contains information about the impersonated user. +type ImpersonatedUser struct { + _ struct{} `type:"structure"` + + // The group to which the user name belongs. + Groups []*string `locationName:"groups" type:"list"` + + // Information about the username that was being impersonated. + Username *string `locationName:"username" 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 ImpersonatedUser) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImpersonatedUser) GoString() string { + return s.String() +} + +// SetGroups sets the Groups field's value. +func (s *ImpersonatedUser) SetGroups(v []*string) *ImpersonatedUser { + s.Groups = v + return s +} + +// SetUsername sets the Username field's value. +func (s *ImpersonatedUser) SetUsername(v string) *ImpersonatedUser { + s.Username = &v + return s +} + // Contains information about the details of an instance. type InstanceDetails struct { _ struct{} `type:"structure"` @@ -15257,6 +15789,9 @@ type KubernetesApiCallAction struct { _ struct{} `type:"structure"` + // The name of the namespace where the Kubernetes API call action takes place. + Namespace *string `locationName:"namespace" type:"string"` + // Parameters related to the Kubernetes API call action. Parameters *string `locationName:"parameters" type:"string"` @@ -15266,6 +15801,12 @@ // The Kubernetes API request URI. RequestUri *string `locationName:"requestUri" type:"string"` + // The resource component in the Kubernetes API call action. + Resource *string `locationName:"resource" type:"string"` + + // The name of the resource in the Kubernetes API call action. + ResourceName *string `locationName:"resourceName" type:"string"` + // The IP of the Kubernetes API caller and the IPs of any proxies or load balancers // between the caller and the API endpoint. SourceIps []*string `locationName:"sourceIps" type:"list"` @@ -15273,6 +15814,9 @@ // The resulting HTTP response code of the Kubernetes API call action. StatusCode *int64 `locationName:"statusCode" type:"integer"` + // The name of the sub-resource in the Kubernetes API call action. + Subresource *string `locationName:"subresource" type:"string"` + // The user agent of the caller of the Kubernetes API. UserAgent *string `locationName:"userAgent" type:"string"` @@ -15298,6 +15842,12 @@ return s.String() } +// SetNamespace sets the Namespace field's value. +func (s *KubernetesApiCallAction) SetNamespace(v string) *KubernetesApiCallAction { + s.Namespace = &v + return s +} + // SetParameters sets the Parameters field's value. func (s *KubernetesApiCallAction) SetParameters(v string) *KubernetesApiCallAction { s.Parameters = &v @@ -15316,6 +15866,18 @@ return s } +// SetResource sets the Resource field's value. +func (s *KubernetesApiCallAction) SetResource(v string) *KubernetesApiCallAction { + s.Resource = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *KubernetesApiCallAction) SetResourceName(v string) *KubernetesApiCallAction { + s.ResourceName = &v + return s +} + // SetSourceIps sets the SourceIps field's value. func (s *KubernetesApiCallAction) SetSourceIps(v []*string) *KubernetesApiCallAction { s.SourceIps = v @@ -15328,6 +15890,12 @@ return s } +// SetSubresource sets the Subresource field's value. +func (s *KubernetesApiCallAction) SetSubresource(v string) *KubernetesApiCallAction { + s.Subresource = &v + return s +} + // SetUserAgent sets the UserAgent field's value. func (s *KubernetesApiCallAction) SetUserAgent(v string) *KubernetesApiCallAction { s.UserAgent = &v @@ -15583,6 +16151,188 @@ return s } +// Information about the Kubernetes API for which you check if you have permission +// to call. +type KubernetesPermissionCheckedDetails struct { + _ struct{} `type:"structure"` + + // Information whether the user has the permission to call the Kubernetes API. + Allowed *bool `locationName:"allowed" type:"boolean"` + + // The namespace where the Kubernetes API action will take place. + Namespace *string `locationName:"namespace" type:"string"` + + // The Kubernetes resource with which your Kubernetes API call will interact. + Resource *string `locationName:"resource" type:"string"` + + // The verb component of the Kubernetes API call. For example, when you check + // whether or not you have the permission to call the CreatePod API, the verb + // component will be Create. + Verb *string `locationName:"verb" 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 KubernetesPermissionCheckedDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KubernetesPermissionCheckedDetails) GoString() string { + return s.String() +} + +// SetAllowed sets the Allowed field's value. +func (s *KubernetesPermissionCheckedDetails) SetAllowed(v bool) *KubernetesPermissionCheckedDetails { + s.Allowed = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *KubernetesPermissionCheckedDetails) SetNamespace(v string) *KubernetesPermissionCheckedDetails { + s.Namespace = &v + return s +} + +// SetResource sets the Resource field's value. +func (s *KubernetesPermissionCheckedDetails) SetResource(v string) *KubernetesPermissionCheckedDetails { + s.Resource = &v + return s +} + +// SetVerb sets the Verb field's value. +func (s *KubernetesPermissionCheckedDetails) SetVerb(v string) *KubernetesPermissionCheckedDetails { + s.Verb = &v + return s +} + +// Contains information about the role binding that grants the permission defined +// in a Kubernetes role. +type KubernetesRoleBindingDetails struct { + _ struct{} `type:"structure"` + + // The kind of the role. For role binding, this value will be RoleBinding. + Kind *string `locationName:"kind" type:"string"` + + // The name of the RoleBinding. + Name *string `locationName:"name" type:"string"` + + // The type of the role being referenced. This could be either Role or ClusterRole. + RoleRefKind *string `locationName:"roleRefKind" type:"string"` + + // The name of the role being referenced. This must match the name of the Role + // or ClusterRole that you want to bind to. + RoleRefName *string `locationName:"roleRefName" type:"string"` + + // The unique identifier of the role binding. + Uid *string `locationName:"uid" 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 KubernetesRoleBindingDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KubernetesRoleBindingDetails) GoString() string { + return s.String() +} + +// SetKind sets the Kind field's value. +func (s *KubernetesRoleBindingDetails) SetKind(v string) *KubernetesRoleBindingDetails { + s.Kind = &v + return s +} + +// SetName sets the Name field's value. +func (s *KubernetesRoleBindingDetails) SetName(v string) *KubernetesRoleBindingDetails { + s.Name = &v + return s +} + +// SetRoleRefKind sets the RoleRefKind field's value. +func (s *KubernetesRoleBindingDetails) SetRoleRefKind(v string) *KubernetesRoleBindingDetails { + s.RoleRefKind = &v + return s +} + +// SetRoleRefName sets the RoleRefName field's value. +func (s *KubernetesRoleBindingDetails) SetRoleRefName(v string) *KubernetesRoleBindingDetails { + s.RoleRefName = &v + return s +} + +// SetUid sets the Uid field's value. +func (s *KubernetesRoleBindingDetails) SetUid(v string) *KubernetesRoleBindingDetails { + s.Uid = &v + return s +} + +// Information about the Kubernetes role name and role type. +type KubernetesRoleDetails struct { + _ struct{} `type:"structure"` + + // The kind of role. For this API, the value of kind will be Role. + Kind *string `locationName:"kind" type:"string"` + + // The name of the Kubernetes role. + Name *string `locationName:"name" type:"string"` + + // The unique identifier of the Kubernetes role name. + Uid *string `locationName:"uid" 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 KubernetesRoleDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KubernetesRoleDetails) GoString() string { + return s.String() +} + +// SetKind sets the Kind field's value. +func (s *KubernetesRoleDetails) SetKind(v string) *KubernetesRoleDetails { + s.Kind = &v + return s +} + +// SetName sets the Name field's value. +func (s *KubernetesRoleDetails) SetName(v string) *KubernetesRoleDetails { + s.Name = &v + return s +} + +// SetUid sets the Uid field's value. +func (s *KubernetesRoleDetails) SetUid(v string) *KubernetesRoleDetails { + s.Uid = &v + return s +} + // Details about the Kubernetes user involved in a Kubernetes finding. type KubernetesUserDetails struct { _ struct{} `type:"structure"` @@ -15590,6 +16340,9 @@ // The groups that include the user who called the Kubernetes API. Groups []*string `locationName:"groups" type:"list"` + // Information about the impersonated user. + ImpersonatedUser *ImpersonatedUser `locationName:"impersonatedUser" type:"structure"` + // Entity that assumes the IAM role when Kubernetes RBAC permissions are assigned // to that role. SessionName []*string `locationName:"sessionName" type:"list"` @@ -15625,6 +16378,12 @@ return s } +// SetImpersonatedUser sets the ImpersonatedUser field's value. +func (s *KubernetesUserDetails) SetImpersonatedUser(v *ImpersonatedUser) *KubernetesUserDetails { + s.ImpersonatedUser = v + return s +} + // SetSessionName sets the SessionName field's value. func (s *KubernetesUserDetails) SetSessionName(v []*string) *KubernetesUserDetails { s.SessionName = v @@ -15650,15 +16409,24 @@ // Containers running as part of the Kubernetes workload. Containers []*Container `locationName:"containers" type:"list"` + // Whether the host IPC flag is enabled for the pods in the workload. + HostIPC *bool `locationName:"hostIPC" type:"boolean"` + // Whether the hostNetwork flag is enabled for the pods included in the workload. HostNetwork *bool `locationName:"hostNetwork" type:"boolean"` + // Whether the host PID flag is enabled for the pods in the workload. + HostPID *bool `locationName:"hostPID" type:"boolean"` + // Kubernetes workload name. Name *string `locationName:"name" type:"string"` // Kubernetes namespace that the workload is part of. Namespace *string `locationName:"namespace" type:"string"` + // The service account name that is associated with a Kubernetes workload. + ServiceAccountName *string `locationName:"serviceAccountName" type:"string"` + // Kubernetes workload type (e.g. Pod, Deployment, etc.). Type *string `locationName:"type" type:"string"` @@ -15693,12 +16461,24 @@ return s } +// SetHostIPC sets the HostIPC field's value. +func (s *KubernetesWorkloadDetails) SetHostIPC(v bool) *KubernetesWorkloadDetails { + s.HostIPC = &v + return s +} + // SetHostNetwork sets the HostNetwork field's value. func (s *KubernetesWorkloadDetails) SetHostNetwork(v bool) *KubernetesWorkloadDetails { s.HostNetwork = &v return s } +// SetHostPID sets the HostPID field's value. +func (s *KubernetesWorkloadDetails) SetHostPID(v bool) *KubernetesWorkloadDetails { + s.HostPID = &v + return s +} + // SetName sets the Name field's value. func (s *KubernetesWorkloadDetails) SetName(v string) *KubernetesWorkloadDetails { s.Name = &v @@ -15711,6 +16491,12 @@ return s } +// SetServiceAccountName sets the ServiceAccountName field's value. +func (s *KubernetesWorkloadDetails) SetServiceAccountName(v string) *KubernetesWorkloadDetails { + s.ServiceAccountName = &v + return s +} + // SetType sets the Type field's value. func (s *KubernetesWorkloadDetails) SetType(v string) *KubernetesWorkloadDetails { s.Type = &v @@ -16369,6 +17155,8 @@ // // * service.action.dnsRequestAction.domain // + // * service.action.dnsRequestAction.domainWithSuffix + // // * service.action.networkConnectionAction.blocked // // * service.action.networkConnectionAction.connectionDirection @@ -16832,6 +17620,9 @@ _ struct{} `type:"structure"` // A list of members. + // + // The values for email and invitedAt are available only if the member accounts + // are added by invitation. Members []*Member `locationName:"members" type:"list"` // The pagination parameter to be used on the next list operation to retrieve @@ -18147,6 +18938,38 @@ return s } +// Contains information about the observed behavior. +type Observations struct { + _ struct{} `type:"structure"` + + // The text that was unusual. + Text []*string `locationName:"text" 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 Observations) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Observations) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *Observations) SetText(v []*string) *Observations { + s.Text = v + return s +} + // Contains information about the ISP organization of the remote IP address. type Organization struct { _ struct{} `type:"structure"` @@ -18521,9 +19344,9 @@ // The additional information that will be configured for the organization. AdditionalConfiguration []*OrganizationAdditionalConfiguration `locationName:"additionalConfiguration" type:"list"` - // The status of the feature that will be configured for the organization. Use - // one of the following values to configure the feature status for the entire - // organization: + // Describes the status of the feature that is configured for the member accounts + // within the organization. One of the following values is the status for the + // entire organization: // // * NEW: Indicates that when a new account joins the organization, they // will have the feature enabled automatically. @@ -20626,17 +21449,17 @@ return s } -// Represents key, value pair to be matched against given resource property. +// Represents the key:value pair to be matched against given resource property. type ScanConditionPair struct { _ struct{} `type:"structure"` - // Represents key in the map condition. + // Represents the key in the map condition. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` - // Represents optional value in the map condition. If not specified, only key - // will be matched. + // Represents optional value in the map condition. If not specified, only the + // key will be matched. Value *string `locationName:"value" type:"string"` } @@ -21091,6 +21914,10 @@ type SecurityContext struct { _ struct{} `type:"structure"` + // Whether or not a container or a Kubernetes pod is allowed to gain more privileges + // than its parent process. + AllowPrivilegeEscalation *bool `locationName:"allowPrivilegeEscalation" type:"boolean"` + // Whether the container is privileged. Privileged *bool `locationName:"privileged" type:"boolean"` } @@ -21113,6 +21940,12 @@ return s.String() } +// SetAllowPrivilegeEscalation sets the AllowPrivilegeEscalation field's value. +func (s *SecurityContext) SetAllowPrivilegeEscalation(v bool) *SecurityContext { + s.AllowPrivilegeEscalation = &v + return s +} + // SetPrivileged sets the Privileged field's value. func (s *SecurityContext) SetPrivileged(v bool) *SecurityContext { s.Privileged = &v @@ -21176,6 +22009,9 @@ // The total count of the occurrences of this finding type. Count *int64 `locationName:"count" type:"integer"` + // Contains information about the detected unusual behavior. + Detection *Detection `locationName:"detection" type:"structure"` + // The detector ID for the GuardDuty service. DetectorId *string `locationName:"detectorId" min:"1" type:"string"` @@ -21253,6 +22089,12 @@ return s } +// SetDetection sets the Detection field's value. +func (s *Service) SetDetection(v *Detection) *Service { + s.Detection = v + return s +} + // SetDetectorId sets the DetectorId field's value. func (s *Service) SetDetectorId(v string) *Service { s.DetectorId = &v @@ -22996,10 +23838,11 @@ type UpdateOrganizationConfigurationInput struct { _ struct{} `type:"structure"` - // Indicates whether to automatically enable member accounts in the organization. + // Represents whether or not to automatically enable member accounts in the + // organization. // // Even though this is still supported, we recommend using AutoEnableOrganizationMembers - // to achieve the similar results. You must provide the value for either autoEnableOrganizationMembers + // to achieve the similar results. You must provide a value for either autoEnableOrganizationMembers // or autoEnable. // // Deprecated: This field is deprecated, use AutoEnableOrganizationMembers instead @@ -23935,6 +24778,21 @@ // CoverageFilterCriterionKeyManagementType is a CoverageFilterCriterionKey enum value CoverageFilterCriterionKeyManagementType = "MANAGEMENT_TYPE" + + // CoverageFilterCriterionKeyEksClusterName is a CoverageFilterCriterionKey enum value + CoverageFilterCriterionKeyEksClusterName = "EKS_CLUSTER_NAME" + + // CoverageFilterCriterionKeyEcsClusterName is a CoverageFilterCriterionKey enum value + CoverageFilterCriterionKeyEcsClusterName = "ECS_CLUSTER_NAME" + + // CoverageFilterCriterionKeyAgentVersion is a CoverageFilterCriterionKey enum value + CoverageFilterCriterionKeyAgentVersion = "AGENT_VERSION" + + // CoverageFilterCriterionKeyInstanceId is a CoverageFilterCriterionKey enum value + CoverageFilterCriterionKeyInstanceId = "INSTANCE_ID" + + // CoverageFilterCriterionKeyClusterArn is a CoverageFilterCriterionKey enum value + CoverageFilterCriterionKeyClusterArn = "CLUSTER_ARN" ) // CoverageFilterCriterionKey_Values returns all elements of the CoverageFilterCriterionKey enum @@ -23946,6 +24804,11 @@ CoverageFilterCriterionKeyCoverageStatus, CoverageFilterCriterionKeyAddonVersion, CoverageFilterCriterionKeyManagementType, + CoverageFilterCriterionKeyEksClusterName, + CoverageFilterCriterionKeyEcsClusterName, + CoverageFilterCriterionKeyAgentVersion, + CoverageFilterCriterionKeyInstanceId, + CoverageFilterCriterionKeyClusterArn, } } @@ -23967,6 +24830,15 @@ // CoverageSortKeyUpdatedAt is a CoverageSortKey enum value CoverageSortKeyUpdatedAt = "UPDATED_AT" + + // CoverageSortKeyEksClusterName is a CoverageSortKey enum value + CoverageSortKeyEksClusterName = "EKS_CLUSTER_NAME" + + // CoverageSortKeyEcsClusterName is a CoverageSortKey enum value + CoverageSortKeyEcsClusterName = "ECS_CLUSTER_NAME" + + // CoverageSortKeyInstanceId is a CoverageSortKey enum value + CoverageSortKeyInstanceId = "INSTANCE_ID" ) // CoverageSortKey_Values returns all elements of the CoverageSortKey enum @@ -23978,6 +24850,9 @@ CoverageSortKeyIssue, CoverageSortKeyAddonVersion, CoverageSortKeyUpdatedAt, + CoverageSortKeyEksClusterName, + CoverageSortKeyEcsClusterName, + CoverageSortKeyInstanceId, } } @@ -24127,6 +25002,9 @@ // DetectorFeatureLambdaNetworkLogs is a DetectorFeature enum value DetectorFeatureLambdaNetworkLogs = "LAMBDA_NETWORK_LOGS" + + // DetectorFeatureRuntimeMonitoring is a DetectorFeature enum value + DetectorFeatureRuntimeMonitoring = "RUNTIME_MONITORING" ) // DetectorFeature_Values returns all elements of the DetectorFeature enum @@ -24138,6 +25016,7 @@ DetectorFeatureRdsLoginEvents, DetectorFeatureEksRuntimeMonitoring, DetectorFeatureLambdaNetworkLogs, + DetectorFeatureRuntimeMonitoring, } } @@ -24168,6 +25047,9 @@ // DetectorFeatureResultLambdaNetworkLogs is a DetectorFeatureResult enum value DetectorFeatureResultLambdaNetworkLogs = "LAMBDA_NETWORK_LOGS" + + // DetectorFeatureResultRuntimeMonitoring is a DetectorFeatureResult enum value + DetectorFeatureResultRuntimeMonitoring = "RUNTIME_MONITORING" ) // DetectorFeatureResult_Values returns all elements of the DetectorFeatureResult enum @@ -24182,6 +25064,7 @@ DetectorFeatureResultRdsLoginEvents, DetectorFeatureResultEksRuntimeMonitoring, DetectorFeatureResultLambdaNetworkLogs, + DetectorFeatureResultRuntimeMonitoring, } } @@ -24220,12 +25103,16 @@ const ( // FeatureAdditionalConfigurationEksAddonManagement is a FeatureAdditionalConfiguration enum value FeatureAdditionalConfigurationEksAddonManagement = "EKS_ADDON_MANAGEMENT" + + // FeatureAdditionalConfigurationEcsFargateAgentManagement is a FeatureAdditionalConfiguration enum value + FeatureAdditionalConfigurationEcsFargateAgentManagement = "ECS_FARGATE_AGENT_MANAGEMENT" ) // FeatureAdditionalConfiguration_Values returns all elements of the FeatureAdditionalConfiguration enum func FeatureAdditionalConfiguration_Values() []string { return []string{ FeatureAdditionalConfigurationEksAddonManagement, + FeatureAdditionalConfigurationEcsFargateAgentManagement, } } @@ -24336,6 +25223,12 @@ // FreeTrialFeatureResultLambdaNetworkLogs is a FreeTrialFeatureResult enum value FreeTrialFeatureResultLambdaNetworkLogs = "LAMBDA_NETWORK_LOGS" + + // FreeTrialFeatureResultFargateRuntimeMonitoring is a FreeTrialFeatureResult enum value + FreeTrialFeatureResultFargateRuntimeMonitoring = "FARGATE_RUNTIME_MONITORING" + + // FreeTrialFeatureResultEc2RuntimeMonitoring is a FreeTrialFeatureResult enum value + FreeTrialFeatureResultEc2RuntimeMonitoring = "EC2_RUNTIME_MONITORING" ) // FreeTrialFeatureResult_Values returns all elements of the FreeTrialFeatureResult enum @@ -24350,6 +25243,8 @@ FreeTrialFeatureResultRdsLoginEvents, FreeTrialFeatureResultEksRuntimeMonitoring, FreeTrialFeatureResultLambdaNetworkLogs, + FreeTrialFeatureResultFargateRuntimeMonitoring, + FreeTrialFeatureResultEc2RuntimeMonitoring, } } @@ -24427,6 +25322,9 @@ // ManagementTypeManual is a ManagementType enum value ManagementTypeManual = "MANUAL" + + // ManagementTypeDisabled is a ManagementType enum value + ManagementTypeDisabled = "DISABLED" ) // ManagementType_Values returns all elements of the ManagementType enum @@ -24434,6 +25332,7 @@ return []string{ ManagementTypeAutoManaged, ManagementTypeManual, + ManagementTypeDisabled, } } @@ -24471,6 +25370,9 @@ // OrgFeatureLambdaNetworkLogs is a OrgFeature enum value OrgFeatureLambdaNetworkLogs = "LAMBDA_NETWORK_LOGS" + + // OrgFeatureRuntimeMonitoring is a OrgFeature enum value + OrgFeatureRuntimeMonitoring = "RUNTIME_MONITORING" ) // OrgFeature_Values returns all elements of the OrgFeature enum @@ -24482,18 +25384,23 @@ OrgFeatureRdsLoginEvents, OrgFeatureEksRuntimeMonitoring, OrgFeatureLambdaNetworkLogs, + OrgFeatureRuntimeMonitoring, } } const ( // OrgFeatureAdditionalConfigurationEksAddonManagement is a OrgFeatureAdditionalConfiguration enum value OrgFeatureAdditionalConfigurationEksAddonManagement = "EKS_ADDON_MANAGEMENT" + + // OrgFeatureAdditionalConfigurationEcsFargateAgentManagement is a OrgFeatureAdditionalConfiguration enum value + OrgFeatureAdditionalConfigurationEcsFargateAgentManagement = "ECS_FARGATE_AGENT_MANAGEMENT" ) // OrgFeatureAdditionalConfiguration_Values returns all elements of the OrgFeatureAdditionalConfiguration enum func OrgFeatureAdditionalConfiguration_Values() []string { return []string{ OrgFeatureAdditionalConfigurationEksAddonManagement, + OrgFeatureAdditionalConfigurationEcsFargateAgentManagement, } } @@ -24518,6 +25425,42 @@ } const ( + // ProfileSubtypeFrequent is a ProfileSubtype enum value + ProfileSubtypeFrequent = "FREQUENT" + + // ProfileSubtypeInfrequent is a ProfileSubtype enum value + ProfileSubtypeInfrequent = "INFREQUENT" + + // ProfileSubtypeUnseen is a ProfileSubtype enum value + ProfileSubtypeUnseen = "UNSEEN" + + // ProfileSubtypeRare is a ProfileSubtype enum value + ProfileSubtypeRare = "RARE" +) + +// ProfileSubtype_Values returns all elements of the ProfileSubtype enum +func ProfileSubtype_Values() []string { + return []string{ + ProfileSubtypeFrequent, + ProfileSubtypeInfrequent, + ProfileSubtypeUnseen, + ProfileSubtypeRare, + } +} + +const ( + // ProfileTypeFrequency is a ProfileType enum value + ProfileTypeFrequency = "FREQUENCY" +) + +// ProfileType_Values returns all elements of the ProfileType enum +func ProfileType_Values() []string { + return []string{ + ProfileTypeFrequency, + } +} + +const ( // PublishingStatusPendingVerification is a PublishingStatus enum value PublishingStatusPendingVerification = "PENDING_VERIFICATION" @@ -24544,12 +25487,20 @@ const ( // ResourceTypeEks is a ResourceType enum value ResourceTypeEks = "EKS" + + // ResourceTypeEcs is a ResourceType enum value + ResourceTypeEcs = "ECS" + + // ResourceTypeEc2 is a ResourceType enum value + ResourceTypeEc2 = "EC2" ) // ResourceType_Values returns all elements of the ResourceType enum func ResourceType_Values() []string { return []string{ ResourceTypeEks, + ResourceTypeEcs, + ResourceTypeEc2, } } @@ -24718,6 +25669,12 @@ // UsageFeatureEksRuntimeMonitoring is a UsageFeature enum value UsageFeatureEksRuntimeMonitoring = "EKS_RUNTIME_MONITORING" + + // UsageFeatureFargateRuntimeMonitoring is a UsageFeature enum value + UsageFeatureFargateRuntimeMonitoring = "FARGATE_RUNTIME_MONITORING" + + // UsageFeatureEc2RuntimeMonitoring is a UsageFeature enum value + UsageFeatureEc2RuntimeMonitoring = "EC2_RUNTIME_MONITORING" ) // UsageFeature_Values returns all elements of the UsageFeature enum @@ -24732,6 +25689,8 @@ UsageFeatureRdsLoginEvents, UsageFeatureLambdaNetworkLogs, UsageFeatureEksRuntimeMonitoring, + UsageFeatureFargateRuntimeMonitoring, + UsageFeatureEc2RuntimeMonitoring, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/guardduty/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/guardduty/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/guardduty/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/guardduty/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,12 +4,14 @@ // requests to Amazon GuardDuty. // // Amazon GuardDuty is a continuous security monitoring service that analyzes -// and processes the following data sources: VPC flow logs, Amazon Web Services -// CloudTrail management event logs, CloudTrail S3 data event logs, EKS audit -// logs, DNS logs, and Amazon EBS volume data. It uses threat intelligence feeds, -// such as lists of malicious IPs and domains, and machine learning to identify -// unexpected, potentially unauthorized, and malicious activity within your -// Amazon Web Services environment. This can include issues like escalations +// and processes the following foundational data sources - VPC flow logs, Amazon +// Web Services CloudTrail management event logs, CloudTrail S3 data event logs, +// EKS audit logs, DNS logs, Amazon EBS volume data, runtime activity belonging +// to container workloads, such as Amazon EKS, Amazon ECS (including Amazon +// Web Services Fargate), and Amazon EC2 instances. It uses threat intelligence +// feeds, such as lists of malicious IPs and domains, and machine learning to +// identify unexpected, potentially unauthorized, and malicious activity within +// your Amazon Web Services environment. This can include issues like escalations // of privileges, uses of exposed credentials, or communication with malicious // IPs, domains, or presence of malware on your Amazon EC2 instances and container // workloads. For example, GuardDuty can detect compromised EC2 instances and diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iam/api.go golang-github-aws-aws-sdk-go-1.48.14/service/iam/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iam/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iam/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -5476,6 +5476,9 @@ // reports activity for at least the last 400 days, or less if your Region began // supporting this feature within the last year. For more information, see Regions // where data is tracked (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period). +// For more information about services and actions for which action last accessed +// information is displayed, see IAM action last accessed information services +// and actions (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor-action-last-accessed.html). // // The service last accessed data includes all attempts to access an Amazon // Web Services API, not just the successful ones. This includes all attempts @@ -5617,12 +5620,6 @@ // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetAccessKeyLastUsed for usage and error information. -// -// Returned Error Codes: -// - ErrCodeNoSuchEntityException "NoSuchEntity" -// The request was rejected because it referenced a resource entity that does -// not exist. The error message describes the resource. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccessKeyLastUsed func (c *IAM) GetAccessKeyLastUsed(input *GetAccessKeyLastUsedInput) (*GetAccessKeyLastUsedOutput, error) { req, out := c.GetAccessKeyLastUsedRequest(input) @@ -8195,10 +8192,11 @@ // If the UserName is not specified, the user name is determined implicitly // based on the Amazon Web Services access key ID used to sign the request. // If a temporary access key is used, then UserName is required. If a long-term -// key is assigned to the user, then UserName is not required. This operation -// works for access keys under the Amazon Web Services account. Consequently, -// you can use this operation to manage Amazon Web Services account root user -// credentials even if the Amazon Web Services account has no associated users. +// key is assigned to the user, then UserName is not required. +// +// This operation works for access keys under the Amazon Web Services account. +// If the Amazon Web Services account has no associated users, the root user +// returns it's own access key IDs by running this command. // // To ensure the security of your Amazon Web Services account, the secret access // key is accessible only during key and user creation. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/imagebuilder/api.go golang-github-aws-aws-sdk-go-1.48.14/service/imagebuilder/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/imagebuilder/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/imagebuilder/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -118,6 +118,110 @@ return out, req.Send() } +const opCancelLifecycleExecution = "CancelLifecycleExecution" + +// CancelLifecycleExecutionRequest generates a "aws/request.Request" representing the +// client's request for the CancelLifecycleExecution 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 CancelLifecycleExecution for more information on using the CancelLifecycleExecution +// 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 CancelLifecycleExecutionRequest method. +// req, resp := client.CancelLifecycleExecutionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CancelLifecycleExecution +func (c *Imagebuilder) CancelLifecycleExecutionRequest(input *CancelLifecycleExecutionInput) (req *request.Request, output *CancelLifecycleExecutionOutput) { + op := &request.Operation{ + Name: opCancelLifecycleExecution, + HTTPMethod: "PUT", + HTTPPath: "/CancelLifecycleExecution", + } + + if input == nil { + input = &CancelLifecycleExecutionInput{} + } + + output = &CancelLifecycleExecutionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CancelLifecycleExecution API operation for EC2 Image Builder. +// +// Cancel a specific image lifecycle policy runtime instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for EC2 Image Builder's +// API operation CancelLifecycleExecution for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - IdempotentParameterMismatchException +// You have specified a client token for an operation using parameter values +// that differ from a previous request that used the same client token. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// - ResourceInUseException +// The resource that you are trying to operate on is currently in use. Review +// the message details and retry later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CancelLifecycleExecution +func (c *Imagebuilder) CancelLifecycleExecution(input *CancelLifecycleExecutionInput) (*CancelLifecycleExecutionOutput, error) { + req, out := c.CancelLifecycleExecutionRequest(input) + return out, req.Send() +} + +// CancelLifecycleExecutionWithContext is the same as CancelLifecycleExecution with the addition of +// the ability to pass a context and additional request options. +// +// See CancelLifecycleExecution 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 *Imagebuilder) CancelLifecycleExecutionWithContext(ctx aws.Context, input *CancelLifecycleExecutionInput, opts ...request.Option) (*CancelLifecycleExecutionOutput, error) { + req, out := c.CancelLifecycleExecutionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateComponent = "CreateComponent" // CreateComponentRequest generates a "aws/request.Request" representing the @@ -921,6 +1025,117 @@ return out, req.Send() } +const opCreateLifecyclePolicy = "CreateLifecyclePolicy" + +// CreateLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the CreateLifecyclePolicy 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 CreateLifecyclePolicy for more information on using the CreateLifecyclePolicy +// 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 CreateLifecyclePolicyRequest method. +// req, resp := client.CreateLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateLifecyclePolicy +func (c *Imagebuilder) CreateLifecyclePolicyRequest(input *CreateLifecyclePolicyInput) (req *request.Request, output *CreateLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opCreateLifecyclePolicy, + HTTPMethod: "PUT", + HTTPPath: "/CreateLifecyclePolicy", + } + + if input == nil { + input = &CreateLifecyclePolicyInput{} + } + + output = &CreateLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateLifecyclePolicy API operation for EC2 Image Builder. +// +// Create a lifecycle policy 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 EC2 Image Builder's +// API operation CreateLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - IdempotentParameterMismatchException +// You have specified a client token for an operation using parameter values +// that differ from a previous request that used the same client token. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// - ResourceInUseException +// The resource that you are trying to operate on is currently in use. Review +// the message details and retry later. +// +// - ResourceAlreadyExistsException +// The resource that you are trying to create already exists. +// +// - ServiceQuotaExceededException +// You have exceeded the number of permitted resources or operations for this +// service. For service quotas, see EC2 Image Builder endpoints and quotas (https://docs.aws.amazon.com/general/latest/gr/imagebuilder.html#limits_imagebuilder). +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateLifecyclePolicy +func (c *Imagebuilder) CreateLifecyclePolicy(input *CreateLifecyclePolicyInput) (*CreateLifecyclePolicyOutput, error) { + req, out := c.CreateLifecyclePolicyRequest(input) + return out, req.Send() +} + +// CreateLifecyclePolicyWithContext is the same as CreateLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See CreateLifecyclePolicy 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 *Imagebuilder) CreateLifecyclePolicyWithContext(ctx aws.Context, input *CreateLifecyclePolicyInput, opts ...request.Option) (*CreateLifecyclePolicyOutput, error) { + req, out := c.CreateLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteComponent = "DeleteComponent" // DeleteComponentRequest generates a "aws/request.Request" representing the @@ -1633,6 +1848,106 @@ return out, req.Send() } +const opDeleteLifecyclePolicy = "DeleteLifecyclePolicy" + +// DeleteLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLifecyclePolicy 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 DeleteLifecyclePolicy for more information on using the DeleteLifecyclePolicy +// 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 DeleteLifecyclePolicyRequest method. +// req, resp := client.DeleteLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteLifecyclePolicy +func (c *Imagebuilder) DeleteLifecyclePolicyRequest(input *DeleteLifecyclePolicyInput) (req *request.Request, output *DeleteLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opDeleteLifecyclePolicy, + HTTPMethod: "DELETE", + HTTPPath: "/DeleteLifecyclePolicy", + } + + if input == nil { + input = &DeleteLifecyclePolicyInput{} + } + + output = &DeleteLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteLifecyclePolicy API operation for EC2 Image Builder. +// +// Delete the specified lifecycle policy 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 EC2 Image Builder's +// API operation DeleteLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// - ResourceDependencyException +// You have attempted to mutate or delete a resource with a dependency that +// prohibits this action. See the error message for more details. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteLifecyclePolicy +func (c *Imagebuilder) DeleteLifecyclePolicy(input *DeleteLifecyclePolicyInput) (*DeleteLifecyclePolicyOutput, error) { + req, out := c.DeleteLifecyclePolicyRequest(input) + return out, req.Send() +} + +// DeleteLifecyclePolicyWithContext is the same as DeleteLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLifecyclePolicy 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 *Imagebuilder) DeleteLifecyclePolicyWithContext(ctx aws.Context, input *DeleteLifecyclePolicyInput, opts ...request.Option) (*DeleteLifecyclePolicyOutput, error) { + req, out := c.DeleteLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetComponent = "GetComponent" // GetComponentRequest generates a "aws/request.Request" representing the @@ -2681,6 +2996,199 @@ return out, req.Send() } +const opGetLifecycleExecution = "GetLifecycleExecution" + +// GetLifecycleExecutionRequest generates a "aws/request.Request" representing the +// client's request for the GetLifecycleExecution 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 GetLifecycleExecution for more information on using the GetLifecycleExecution +// 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 GetLifecycleExecutionRequest method. +// req, resp := client.GetLifecycleExecutionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetLifecycleExecution +func (c *Imagebuilder) GetLifecycleExecutionRequest(input *GetLifecycleExecutionInput) (req *request.Request, output *GetLifecycleExecutionOutput) { + op := &request.Operation{ + Name: opGetLifecycleExecution, + HTTPMethod: "GET", + HTTPPath: "/GetLifecycleExecution", + } + + if input == nil { + input = &GetLifecycleExecutionInput{} + } + + output = &GetLifecycleExecutionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLifecycleExecution API operation for EC2 Image Builder. +// +// Get the runtime information that was logged for a specific runtime instance +// of the lifecycle 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 EC2 Image Builder's +// API operation GetLifecycleExecution for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetLifecycleExecution +func (c *Imagebuilder) GetLifecycleExecution(input *GetLifecycleExecutionInput) (*GetLifecycleExecutionOutput, error) { + req, out := c.GetLifecycleExecutionRequest(input) + return out, req.Send() +} + +// GetLifecycleExecutionWithContext is the same as GetLifecycleExecution with the addition of +// the ability to pass a context and additional request options. +// +// See GetLifecycleExecution 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 *Imagebuilder) GetLifecycleExecutionWithContext(ctx aws.Context, input *GetLifecycleExecutionInput, opts ...request.Option) (*GetLifecycleExecutionOutput, error) { + req, out := c.GetLifecycleExecutionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetLifecyclePolicy = "GetLifecyclePolicy" + +// GetLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetLifecyclePolicy 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 GetLifecyclePolicy for more information on using the GetLifecyclePolicy +// 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 GetLifecyclePolicyRequest method. +// req, resp := client.GetLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetLifecyclePolicy +func (c *Imagebuilder) GetLifecyclePolicyRequest(input *GetLifecyclePolicyInput) (req *request.Request, output *GetLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opGetLifecyclePolicy, + HTTPMethod: "GET", + HTTPPath: "/GetLifecyclePolicy", + } + + if input == nil { + input = &GetLifecyclePolicyInput{} + } + + output = &GetLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLifecyclePolicy API operation for EC2 Image Builder. +// +// Get details for the specified image lifecycle 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 EC2 Image Builder's +// API operation GetLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetLifecyclePolicy +func (c *Imagebuilder) GetLifecyclePolicy(input *GetLifecyclePolicyInput) (*GetLifecyclePolicyOutput, error) { + req, out := c.GetLifecyclePolicyRequest(input) + return out, req.Send() +} + +// GetLifecyclePolicyWithContext is the same as GetLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetLifecyclePolicy 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 *Imagebuilder) GetLifecyclePolicyWithContext(ctx aws.Context, input *GetLifecyclePolicyInput, opts ...request.Option) (*GetLifecyclePolicyOutput, error) { + req, out := c.GetLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetWorkflowExecution = "GetWorkflowExecution" // GetWorkflowExecutionRequest generates a "aws/request.Request" representing the @@ -5149,6 +5657,475 @@ return p.Err() } +const opListLifecycleExecutionResources = "ListLifecycleExecutionResources" + +// ListLifecycleExecutionResourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListLifecycleExecutionResources 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 ListLifecycleExecutionResources for more information on using the ListLifecycleExecutionResources +// 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 ListLifecycleExecutionResourcesRequest method. +// req, resp := client.ListLifecycleExecutionResourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecycleExecutionResources +func (c *Imagebuilder) ListLifecycleExecutionResourcesRequest(input *ListLifecycleExecutionResourcesInput) (req *request.Request, output *ListLifecycleExecutionResourcesOutput) { + op := &request.Operation{ + Name: opListLifecycleExecutionResources, + HTTPMethod: "POST", + HTTPPath: "/ListLifecycleExecutionResources", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLifecycleExecutionResourcesInput{} + } + + output = &ListLifecycleExecutionResourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLifecycleExecutionResources API operation for EC2 Image Builder. +// +// List resources that the runtime instance of the image lifecycle identified +// for lifecycle actions. +// +// 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 EC2 Image Builder's +// API operation ListLifecycleExecutionResources for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - InvalidPaginationTokenException +// You have provided an invalid pagination token in your request. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecycleExecutionResources +func (c *Imagebuilder) ListLifecycleExecutionResources(input *ListLifecycleExecutionResourcesInput) (*ListLifecycleExecutionResourcesOutput, error) { + req, out := c.ListLifecycleExecutionResourcesRequest(input) + return out, req.Send() +} + +// ListLifecycleExecutionResourcesWithContext is the same as ListLifecycleExecutionResources with the addition of +// the ability to pass a context and additional request options. +// +// See ListLifecycleExecutionResources 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 *Imagebuilder) ListLifecycleExecutionResourcesWithContext(ctx aws.Context, input *ListLifecycleExecutionResourcesInput, opts ...request.Option) (*ListLifecycleExecutionResourcesOutput, error) { + req, out := c.ListLifecycleExecutionResourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLifecycleExecutionResourcesPages iterates over the pages of a ListLifecycleExecutionResources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLifecycleExecutionResources 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 ListLifecycleExecutionResources operation. +// pageNum := 0 +// err := client.ListLifecycleExecutionResourcesPages(params, +// func(page *imagebuilder.ListLifecycleExecutionResourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Imagebuilder) ListLifecycleExecutionResourcesPages(input *ListLifecycleExecutionResourcesInput, fn func(*ListLifecycleExecutionResourcesOutput, bool) bool) error { + return c.ListLifecycleExecutionResourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLifecycleExecutionResourcesPagesWithContext same as ListLifecycleExecutionResourcesPages 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 *Imagebuilder) ListLifecycleExecutionResourcesPagesWithContext(ctx aws.Context, input *ListLifecycleExecutionResourcesInput, fn func(*ListLifecycleExecutionResourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLifecycleExecutionResourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLifecycleExecutionResourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLifecycleExecutionResourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListLifecycleExecutions = "ListLifecycleExecutions" + +// ListLifecycleExecutionsRequest generates a "aws/request.Request" representing the +// client's request for the ListLifecycleExecutions 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 ListLifecycleExecutions for more information on using the ListLifecycleExecutions +// 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 ListLifecycleExecutionsRequest method. +// req, resp := client.ListLifecycleExecutionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecycleExecutions +func (c *Imagebuilder) ListLifecycleExecutionsRequest(input *ListLifecycleExecutionsInput) (req *request.Request, output *ListLifecycleExecutionsOutput) { + op := &request.Operation{ + Name: opListLifecycleExecutions, + HTTPMethod: "POST", + HTTPPath: "/ListLifecycleExecutions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLifecycleExecutionsInput{} + } + + output = &ListLifecycleExecutionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLifecycleExecutions API operation for EC2 Image Builder. +// +// Get the lifecycle runtime history for the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for EC2 Image Builder's +// API operation ListLifecycleExecutions for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - InvalidPaginationTokenException +// You have provided an invalid pagination token in your request. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecycleExecutions +func (c *Imagebuilder) ListLifecycleExecutions(input *ListLifecycleExecutionsInput) (*ListLifecycleExecutionsOutput, error) { + req, out := c.ListLifecycleExecutionsRequest(input) + return out, req.Send() +} + +// ListLifecycleExecutionsWithContext is the same as ListLifecycleExecutions with the addition of +// the ability to pass a context and additional request options. +// +// See ListLifecycleExecutions 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 *Imagebuilder) ListLifecycleExecutionsWithContext(ctx aws.Context, input *ListLifecycleExecutionsInput, opts ...request.Option) (*ListLifecycleExecutionsOutput, error) { + req, out := c.ListLifecycleExecutionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLifecycleExecutionsPages iterates over the pages of a ListLifecycleExecutions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLifecycleExecutions 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 ListLifecycleExecutions operation. +// pageNum := 0 +// err := client.ListLifecycleExecutionsPages(params, +// func(page *imagebuilder.ListLifecycleExecutionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Imagebuilder) ListLifecycleExecutionsPages(input *ListLifecycleExecutionsInput, fn func(*ListLifecycleExecutionsOutput, bool) bool) error { + return c.ListLifecycleExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLifecycleExecutionsPagesWithContext same as ListLifecycleExecutionsPages 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 *Imagebuilder) ListLifecycleExecutionsPagesWithContext(ctx aws.Context, input *ListLifecycleExecutionsInput, fn func(*ListLifecycleExecutionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLifecycleExecutionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLifecycleExecutionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLifecycleExecutionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListLifecyclePolicies = "ListLifecyclePolicies" + +// ListLifecyclePoliciesRequest generates a "aws/request.Request" representing the +// client's request for the ListLifecyclePolicies 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 ListLifecyclePolicies for more information on using the ListLifecyclePolicies +// 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 ListLifecyclePoliciesRequest method. +// req, resp := client.ListLifecyclePoliciesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecyclePolicies +func (c *Imagebuilder) ListLifecyclePoliciesRequest(input *ListLifecyclePoliciesInput) (req *request.Request, output *ListLifecyclePoliciesOutput) { + op := &request.Operation{ + Name: opListLifecyclePolicies, + HTTPMethod: "POST", + HTTPPath: "/ListLifecyclePolicies", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLifecyclePoliciesInput{} + } + + output = &ListLifecyclePoliciesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLifecyclePolicies API operation for EC2 Image Builder. +// +// Get a list of lifecycle policies in your Amazon Web Services account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for EC2 Image Builder's +// API operation ListLifecyclePolicies for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - InvalidPaginationTokenException +// You have provided an invalid pagination token in your request. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecyclePolicies +func (c *Imagebuilder) ListLifecyclePolicies(input *ListLifecyclePoliciesInput) (*ListLifecyclePoliciesOutput, error) { + req, out := c.ListLifecyclePoliciesRequest(input) + return out, req.Send() +} + +// ListLifecyclePoliciesWithContext is the same as ListLifecyclePolicies with the addition of +// the ability to pass a context and additional request options. +// +// See ListLifecyclePolicies 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 *Imagebuilder) ListLifecyclePoliciesWithContext(ctx aws.Context, input *ListLifecyclePoliciesInput, opts ...request.Option) (*ListLifecyclePoliciesOutput, error) { + req, out := c.ListLifecyclePoliciesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLifecyclePoliciesPages iterates over the pages of a ListLifecyclePolicies operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLifecyclePolicies 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 ListLifecyclePolicies operation. +// pageNum := 0 +// err := client.ListLifecyclePoliciesPages(params, +// func(page *imagebuilder.ListLifecyclePoliciesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Imagebuilder) ListLifecyclePoliciesPages(input *ListLifecyclePoliciesInput, fn func(*ListLifecyclePoliciesOutput, bool) bool) error { + return c.ListLifecyclePoliciesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLifecyclePoliciesPagesWithContext same as ListLifecyclePoliciesPages 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 *Imagebuilder) ListLifecyclePoliciesPagesWithContext(ctx aws.Context, input *ListLifecyclePoliciesInput, fn func(*ListLifecyclePoliciesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLifecyclePoliciesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLifecyclePoliciesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLifecyclePoliciesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -6084,6 +7061,114 @@ return out, req.Send() } +const opStartResourceStateUpdate = "StartResourceStateUpdate" + +// StartResourceStateUpdateRequest generates a "aws/request.Request" representing the +// client's request for the StartResourceStateUpdate 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 StartResourceStateUpdate for more information on using the StartResourceStateUpdate +// 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 StartResourceStateUpdateRequest method. +// req, resp := client.StartResourceStateUpdateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/StartResourceStateUpdate +func (c *Imagebuilder) StartResourceStateUpdateRequest(input *StartResourceStateUpdateInput) (req *request.Request, output *StartResourceStateUpdateOutput) { + op := &request.Operation{ + Name: opStartResourceStateUpdate, + HTTPMethod: "PUT", + HTTPPath: "/StartResourceStateUpdate", + } + + if input == nil { + input = &StartResourceStateUpdateInput{} + } + + output = &StartResourceStateUpdateOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartResourceStateUpdate API operation for EC2 Image Builder. +// +// Begin asynchronous resource state update for lifecycle changes to the specified +// image resources. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for EC2 Image Builder's +// API operation StartResourceStateUpdate for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - ResourceNotFoundException +// At least one of the resources referenced by your request does not exist. +// +// - IdempotentParameterMismatchException +// You have specified a client token for an operation using parameter values +// that differ from a previous request that used the same client token. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// - ResourceInUseException +// The resource that you are trying to operate on is currently in use. Review +// the message details and retry later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/StartResourceStateUpdate +func (c *Imagebuilder) StartResourceStateUpdate(input *StartResourceStateUpdateInput) (*StartResourceStateUpdateOutput, error) { + req, out := c.StartResourceStateUpdateRequest(input) + return out, req.Send() +} + +// StartResourceStateUpdateWithContext is the same as StartResourceStateUpdate with the addition of +// the ability to pass a context and additional request options. +// +// See StartResourceStateUpdate 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 *Imagebuilder) StartResourceStateUpdateWithContext(ctx aws.Context, input *StartResourceStateUpdateInput, opts ...request.Option) (*StartResourceStateUpdateOutput, error) { + req, out := c.StartResourceStateUpdateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -6581,6 +7666,114 @@ return out, req.Send() } +const opUpdateLifecyclePolicy = "UpdateLifecyclePolicy" + +// UpdateLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLifecyclePolicy 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 UpdateLifecyclePolicy for more information on using the UpdateLifecyclePolicy +// 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 UpdateLifecyclePolicyRequest method. +// req, resp := client.UpdateLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/UpdateLifecyclePolicy +func (c *Imagebuilder) UpdateLifecyclePolicyRequest(input *UpdateLifecyclePolicyInput) (req *request.Request, output *UpdateLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opUpdateLifecyclePolicy, + HTTPMethod: "PUT", + HTTPPath: "/UpdateLifecyclePolicy", + } + + if input == nil { + input = &UpdateLifecyclePolicyInput{} + } + + output = &UpdateLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateLifecyclePolicy API operation for EC2 Image Builder. +// +// Update the specified lifecycle 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 EC2 Image Builder's +// API operation UpdateLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - ServiceException +// This exception is thrown when the service encounters an unrecoverable exception. +// +// - ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permissions to use the +// action or resource, or specifying an invalid resource identifier. +// +// - ServiceUnavailableException +// The service is unable to process your request at this time. +// +// - InvalidRequestException +// You have requested an action that that the service doesn't support. +// +// - IdempotentParameterMismatchException +// You have specified a client token for an operation using parameter values +// that differ from a previous request that used the same client token. +// +// - ForbiddenException +// You are not authorized to perform the requested operation. +// +// - CallRateLimitExceededException +// You have exceeded the permitted request rate for the specific operation. +// +// - ResourceInUseException +// The resource that you are trying to operate on is currently in use. Review +// the message details and retry later. +// +// - InvalidParameterCombinationException +// You have specified two or more mutually exclusive parameters. Review the +// error message for details. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/UpdateLifecyclePolicy +func (c *Imagebuilder) UpdateLifecyclePolicy(input *UpdateLifecyclePolicyInput) (*UpdateLifecyclePolicyOutput, error) { + req, out := c.UpdateLifecyclePolicyRequest(input) + return out, req.Send() +} + +// UpdateLifecyclePolicyWithContext is the same as UpdateLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLifecyclePolicy 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 *Imagebuilder) UpdateLifecyclePolicyWithContext(ctx aws.Context, input *UpdateLifecyclePolicyInput, opts ...request.Option) (*UpdateLifecyclePolicyOutput, error) { + req, out := c.UpdateLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // Contains counts of vulnerability findings from image scans that run when // you create new Image Builder images, or build new versions of existing images. // The vulnerability counts are grouped by severity level. The counts are aggregated @@ -7020,7 +8213,7 @@ type CancelImageCreationOutput struct { _ struct{} `type:"structure"` - // The idempotency token that was used for this request. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The ARN of the image whose creation this request canceled. @@ -7066,6 +8259,97 @@ return s } +type CancelLifecycleExecutionInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Identifies the specific runtime instance of the image lifecycle to cancel. + // + // LifecycleExecutionId is a required field + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" 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 CancelLifecycleExecutionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelLifecycleExecutionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelLifecycleExecutionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelLifecycleExecutionInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.LifecycleExecutionId == nil { + invalidParams.Add(request.NewErrParamRequired("LifecycleExecutionId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CancelLifecycleExecutionInput) SetClientToken(v string) *CancelLifecycleExecutionInput { + s.ClientToken = &v + return s +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *CancelLifecycleExecutionInput) SetLifecycleExecutionId(v string) *CancelLifecycleExecutionInput { + s.LifecycleExecutionId = &v + return s +} + +type CancelLifecycleExecutionOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the image lifecycle runtime instance that was canceled. + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" 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 CancelLifecycleExecutionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelLifecycleExecutionOutput) GoString() string { + return s.String() +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *CancelLifecycleExecutionOutput) SetLifecycleExecutionId(v string) *CancelLifecycleExecutionOutput { + s.LifecycleExecutionId = &v + return s +} + // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the // action or resource, or specifying an invalid resource identifier. @@ -8288,7 +9572,9 @@ // of this component. ChangeDescription *string `locationName:"changeDescription" min:"1" type:"string"` - // The idempotency token of the component. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // Component data contains inline YAML document content for the component. Alternatively, @@ -8475,10 +9761,10 @@ type CreateComponentOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` - // The Amazon Resource Name (ARN) of the component that this request created. + // The Amazon Resource Name (ARN) of the component that the request created. ComponentBuildVersionArn *string `locationName:"componentBuildVersionArn" type:"string"` // The request ID that uniquely identifies this request. @@ -8524,7 +9810,9 @@ type CreateContainerRecipeInput struct { _ struct{} `type:"structure"` - // The client token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // Components for build and test that are included in the container recipe. @@ -8794,7 +10082,7 @@ type CreateContainerRecipeOutput struct { _ struct{} `type:"structure"` - // The client token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // Returns the Amazon Resource Name (ARN) of the container recipe that the request @@ -8844,7 +10132,9 @@ type CreateDistributionConfigurationInput struct { _ struct{} `type:"structure"` - // The idempotency token of the distribution configuration. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The description of the distribution configuration. @@ -8950,7 +10240,7 @@ type CreateDistributionConfigurationOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the distribution configuration that was @@ -9000,7 +10290,9 @@ type CreateImageInput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the container recipe that defines how images @@ -9141,10 +10433,10 @@ type CreateImageOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` - // The Amazon Resource Name (ARN) of the image that this request created. + // The Amazon Resource Name (ARN) of the image that the request created. ImageBuildVersionArn *string `locationName:"imageBuildVersionArn" type:"string"` // The request ID that uniquely identifies this request. @@ -9190,7 +10482,9 @@ type CreateImagePipelineInput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the container recipe that is used to configure @@ -9380,7 +10674,7 @@ type CreateImagePipelineOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the image pipeline that was created by @@ -9436,7 +10730,9 @@ // The block device mappings of the image recipe. BlockDeviceMappings []*InstanceBlockDeviceMapping `locationName:"blockDeviceMappings" type:"list"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The components included in the image recipe. @@ -9634,7 +10930,7 @@ type CreateImageRecipeOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the image recipe that was created by this @@ -9684,7 +10980,9 @@ type CreateInfrastructureConfigurationInput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The description of the infrastructure configuration. @@ -9898,7 +11196,7 @@ type CreateInfrastructureConfigurationOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the infrastructure configuration that was @@ -9945,6 +11243,217 @@ return s } +type CreateLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Optional description for the lifecycle policy. + Description *string `locationName:"description" min:"1" type:"string"` + + // The role name or Amazon Resource Name (ARN) for the IAM role that grants + // Image Builder access to run lifecycle actions. + // + // ExecutionRole is a required field + ExecutionRole *string `locationName:"executionRole" min:"1" type:"string" required:"true"` + + // The name of the lifecycle policy to create. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // Configuration details for the lifecycle policy rules. + // + // PolicyDetails is a required field + PolicyDetails []*LifecyclePolicyDetail `locationName:"policyDetails" min:"1" type:"list" required:"true"` + + // Selection criteria for the resources that the lifecycle policy applies to. + // + // ResourceSelection is a required field + ResourceSelection *LifecyclePolicyResourceSelection `locationName:"resourceSelection" type:"structure" required:"true"` + + // The type of Image Builder resource that the lifecycle policy applies to. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"LifecyclePolicyResourceType"` + + // Indicates whether the lifecycle policy resource is enabled. + Status *string `locationName:"status" type:"string" enum:"LifecyclePolicyStatus"` + + // Tags to apply to the lifecycle policy resource. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLifecyclePolicyInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.ExecutionRole == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionRole")) + } + if s.ExecutionRole != nil && len(*s.ExecutionRole) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionRole", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.PolicyDetails == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyDetails")) + } + if s.PolicyDetails != nil && len(s.PolicyDetails) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PolicyDetails", 1)) + } + if s.ResourceSelection == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceSelection")) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.PolicyDetails != nil { + for i, v := range s.PolicyDetails { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PolicyDetails", i), err.(request.ErrInvalidParams)) + } + } + } + if s.ResourceSelection != nil { + if err := s.ResourceSelection.Validate(); err != nil { + invalidParams.AddNested("ResourceSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateLifecyclePolicyInput) SetClientToken(v string) *CreateLifecyclePolicyInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateLifecyclePolicyInput) SetDescription(v string) *CreateLifecyclePolicyInput { + s.Description = &v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *CreateLifecyclePolicyInput) SetExecutionRole(v string) *CreateLifecyclePolicyInput { + s.ExecutionRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateLifecyclePolicyInput) SetName(v string) *CreateLifecyclePolicyInput { + s.Name = &v + return s +} + +// SetPolicyDetails sets the PolicyDetails field's value. +func (s *CreateLifecyclePolicyInput) SetPolicyDetails(v []*LifecyclePolicyDetail) *CreateLifecyclePolicyInput { + s.PolicyDetails = v + return s +} + +// SetResourceSelection sets the ResourceSelection field's value. +func (s *CreateLifecyclePolicyInput) SetResourceSelection(v *LifecyclePolicyResourceSelection) *CreateLifecyclePolicyInput { + s.ResourceSelection = v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *CreateLifecyclePolicyInput) SetResourceType(v string) *CreateLifecyclePolicyInput { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateLifecyclePolicyInput) SetStatus(v string) *CreateLifecyclePolicyInput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateLifecyclePolicyInput) SetTags(v map[string]*string) *CreateLifecyclePolicyInput { + s.Tags = v + return s +} + +type CreateLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // The client token that uniquely identifies the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the lifecycle policy that the request created. + LifecyclePolicyArn *string `locationName:"lifecyclePolicyArn" 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 CreateLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateLifecyclePolicyOutput) SetClientToken(v string) *CreateLifecyclePolicyOutput { + s.ClientToken = &v + return s +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *CreateLifecyclePolicyOutput) SetLifecyclePolicyArn(v string) *CreateLifecyclePolicyOutput { + s.LifecyclePolicyArn = &v + return s +} + // Amazon Inspector generates a risk score for each finding. This score helps // you to prioritize findings, to focus on the most critical findings and the // most vulnerable resources. The score uses the Common Vulnerability Scoring @@ -10736,6 +12245,83 @@ return s } +type DeleteLifecyclePolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the lifecycle policy resource to delete. + // + // LifecyclePolicyArn is a required field + LifecyclePolicyArn *string `location:"querystring" locationName:"lifecyclePolicyArn" 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 DeleteLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLifecyclePolicyInput"} + if s.LifecyclePolicyArn == nil { + invalidParams.Add(request.NewErrParamRequired("LifecyclePolicyArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *DeleteLifecyclePolicyInput) SetLifecyclePolicyArn(v string) *DeleteLifecyclePolicyInput { + s.LifecyclePolicyArn = &v + return s +} + +type DeleteLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the lifecycle policy that was deleted. + LifecyclePolicyArn *string `locationName:"lifecyclePolicyArn" 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 DeleteLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *DeleteLifecyclePolicyOutput) SetLifecyclePolicyArn(v string) *DeleteLifecyclePolicyOutput { + s.LifecyclePolicyArn = &v + return s +} + // Defines the settings for a specific Region. type Distribution struct { _ struct{} `type:"structure"` @@ -12546,6 +14132,162 @@ return s } +type GetLifecycleExecutionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Use the unique identifier for a runtime instance of the lifecycle policy + // to get runtime details. + // + // LifecycleExecutionId is a required field + LifecycleExecutionId *string `location:"querystring" locationName:"lifecycleExecutionId" 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 GetLifecycleExecutionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLifecycleExecutionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLifecycleExecutionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLifecycleExecutionInput"} + if s.LifecycleExecutionId == nil { + invalidParams.Add(request.NewErrParamRequired("LifecycleExecutionId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *GetLifecycleExecutionInput) SetLifecycleExecutionId(v string) *GetLifecycleExecutionInput { + s.LifecycleExecutionId = &v + return s +} + +type GetLifecycleExecutionOutput struct { + _ struct{} `type:"structure"` + + // Runtime details for the specified runtime instance of the lifecycle policy. + LifecycleExecution *LifecycleExecution `locationName:"lifecycleExecution" 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 GetLifecycleExecutionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLifecycleExecutionOutput) GoString() string { + return s.String() +} + +// SetLifecycleExecution sets the LifecycleExecution field's value. +func (s *GetLifecycleExecutionOutput) SetLifecycleExecution(v *LifecycleExecution) *GetLifecycleExecutionOutput { + s.LifecycleExecution = v + return s +} + +type GetLifecyclePolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Specifies the Amazon Resource Name (ARN) of the image lifecycle policy resource + // to get. + // + // LifecyclePolicyArn is a required field + LifecyclePolicyArn *string `location:"querystring" locationName:"lifecyclePolicyArn" 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 GetLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLifecyclePolicyInput"} + if s.LifecyclePolicyArn == nil { + invalidParams.Add(request.NewErrParamRequired("LifecyclePolicyArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *GetLifecyclePolicyInput) SetLifecyclePolicyArn(v string) *GetLifecyclePolicyInput { + s.LifecyclePolicyArn = &v + return s +} + +type GetLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the image lifecycle policy resource that was returned. + LifecyclePolicy *LifecyclePolicy `locationName:"lifecyclePolicy" 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 GetLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicy sets the LifecyclePolicy field's value. +func (s *GetLifecyclePolicyOutput) SetLifecyclePolicy(v *LifecyclePolicy) *GetLifecyclePolicyOutput { + s.LifecyclePolicy = v + return s +} + type GetWorkflowExecutionInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -13077,6 +14819,10 @@ // The date on which Image Builder created this image. DateCreated *string `locationName:"dateCreated" type:"string"` + // The time when deprecation occurs for an image resource. This can be a past + // or future date. + DeprecationTime *time.Time `locationName:"deprecationTime" type:"timestamp"` + // The distribution configuration that Image Builder used to create this image. DistributionConfiguration *DistributionConfiguration `locationName:"distributionConfiguration" type:"structure"` @@ -13100,6 +14846,10 @@ // The infrastructure that Image Builder used to create this image. InfrastructureConfiguration *InfrastructureConfiguration `locationName:"infrastructureConfiguration" type:"structure"` + // Identifies the last runtime instance of the lifecycle policy to take action + // on the image. + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" type:"string"` + // The name of the image. Name *string `locationName:"name" type:"string"` @@ -13194,6 +14944,12 @@ return s } +// SetDeprecationTime sets the DeprecationTime field's value. +func (s *Image) SetDeprecationTime(v time.Time) *Image { + s.DeprecationTime = &v + return s +} + // SetDistributionConfiguration sets the DistributionConfiguration field's value. func (s *Image) SetDistributionConfiguration(v *DistributionConfiguration) *Image { s.DistributionConfiguration = v @@ -13236,6 +14992,12 @@ return s } +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *Image) SetLifecycleExecutionId(v string) *Image { + s.LifecycleExecutionId = &v + return s +} + // SetName sets the Name field's value. func (s *Image) SetName(v string) *Image { s.Name = &v @@ -14294,9 +16056,17 @@ // The date on which Image Builder created this image. DateCreated *string `locationName:"dateCreated" type:"string"` + // The time when deprecation occurs for an image resource. This can be a past + // or future date. + DeprecationTime *time.Time `locationName:"deprecationTime" type:"timestamp"` + // The origin of the base image that Image Builder used to build this image. ImageSource *string `locationName:"imageSource" type:"string" enum:"ImageSource"` + // Identifies the last runtime instance of the lifecycle policy to take action + // on the image. + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" type:"string"` + // The name of the image. Name *string `locationName:"name" type:"string"` @@ -14362,12 +16132,24 @@ return s } +// SetDeprecationTime sets the DeprecationTime field's value. +func (s *ImageSummary) SetDeprecationTime(v time.Time) *ImageSummary { + s.DeprecationTime = &v + return s +} + // SetImageSource sets the ImageSource field's value. func (s *ImageSummary) SetImageSource(v string) *ImageSummary { s.ImageSource = &v return s } +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *ImageSummary) SetLifecycleExecutionId(v string) *ImageSummary { + s.LifecycleExecutionId = &v + return s +} + // SetName sets the Name field's value. func (s *ImageSummary) SetName(v string) *ImageSummary { s.Name = &v @@ -14644,7 +16426,9 @@ // from other versions of this component. ChangeDescription *string `locationName:"changeDescription" min:"1" type:"string"` - // The idempotency token of the component. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The data of the component. Used to specify the data inline. Either data or @@ -14838,7 +16622,7 @@ type ImportComponentOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the imported component. @@ -15047,7 +16831,7 @@ type ImportVmImageOutput struct { _ struct{} `type:"structure"` - // The idempotency token that was used for this request. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the AMI that was created during the VM @@ -16164,6 +17948,1271 @@ return s } +// Contains metadata from a runtime instance of a lifecycle policy. +type LifecycleExecution struct { + _ struct{} `type:"structure"` + + // The timestamp when the lifecycle runtime instance completed. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // Identifies the lifecycle policy runtime instance. + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" type:"string"` + + // The Amazon Resource Name (ARN) of the lifecycle policy that ran. + LifecyclePolicyArn *string `locationName:"lifecyclePolicyArn" type:"string"` + + // Contains information about associated resources that are identified for action + // by the runtime instance of the lifecycle policy. + ResourcesImpactedSummary *LifecycleExecutionResourcesImpactedSummary `locationName:"resourcesImpactedSummary" type:"structure"` + + // The timestamp when the lifecycle runtime instance started. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // Runtime state that reports if the policy action ran successfully, failed, + // or was skipped. + State *LifecycleExecutionState `locationName:"state" 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 LifecycleExecution) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecution) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *LifecycleExecution) SetEndTime(v time.Time) *LifecycleExecution { + s.EndTime = &v + return s +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *LifecycleExecution) SetLifecycleExecutionId(v string) *LifecycleExecution { + s.LifecycleExecutionId = &v + return s +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *LifecycleExecution) SetLifecyclePolicyArn(v string) *LifecycleExecution { + s.LifecyclePolicyArn = &v + return s +} + +// SetResourcesImpactedSummary sets the ResourcesImpactedSummary field's value. +func (s *LifecycleExecution) SetResourcesImpactedSummary(v *LifecycleExecutionResourcesImpactedSummary) *LifecycleExecution { + s.ResourcesImpactedSummary = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *LifecycleExecution) SetStartTime(v time.Time) *LifecycleExecution { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *LifecycleExecution) SetState(v *LifecycleExecutionState) *LifecycleExecution { + s.State = v + return s +} + +// Contains details for a resource that the runtime instance of the lifecycle +// policy identified for action. +type LifecycleExecutionResource struct { + _ struct{} `type:"structure"` + + // The account that owns the impacted resource. + AccountId *string `locationName:"accountId" min:"1" type:"string"` + + // The action to take for the identified resource. + Action *LifecycleExecutionResourceAction `locationName:"action" type:"structure"` + + // For an impacted container image, this identifies a list of URIs for associated + // container images distributed to ECR repositories. + ImageUris []*string `locationName:"imageUris" type:"list"` + + // The Amazon Web Services Region where the lifecycle execution resource is + // stored. + Region *string `locationName:"region" min:"1" type:"string"` + + // Identifies the impacted resource. The resource ID depends on the type of + // resource, as follows. + // + // * Image Builder image resources: Amazon Resource Name (ARN) + // + // * Distributed AMIs: AMI ID + // + // * Container images distributed to an ECR repository: image URI or SHA + // Digest + ResourceId *string `locationName:"resourceId" min:"1" type:"string"` + + // A list of associated resource snapshots for the impacted resource if it’s + // an AMI. + Snapshots []*LifecycleExecutionSnapshotResource `locationName:"snapshots" type:"list"` + + // The runtime state for the lifecycle execution. + State *LifecycleExecutionResourceState `locationName:"state" 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 LifecycleExecutionResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionResource) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *LifecycleExecutionResource) SetAccountId(v string) *LifecycleExecutionResource { + s.AccountId = &v + return s +} + +// SetAction sets the Action field's value. +func (s *LifecycleExecutionResource) SetAction(v *LifecycleExecutionResourceAction) *LifecycleExecutionResource { + s.Action = v + return s +} + +// SetImageUris sets the ImageUris field's value. +func (s *LifecycleExecutionResource) SetImageUris(v []*string) *LifecycleExecutionResource { + s.ImageUris = v + return s +} + +// SetRegion sets the Region field's value. +func (s *LifecycleExecutionResource) SetRegion(v string) *LifecycleExecutionResource { + s.Region = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *LifecycleExecutionResource) SetResourceId(v string) *LifecycleExecutionResource { + s.ResourceId = &v + return s +} + +// SetSnapshots sets the Snapshots field's value. +func (s *LifecycleExecutionResource) SetSnapshots(v []*LifecycleExecutionSnapshotResource) *LifecycleExecutionResource { + s.Snapshots = v + return s +} + +// SetState sets the State field's value. +func (s *LifecycleExecutionResource) SetState(v *LifecycleExecutionResourceState) *LifecycleExecutionResource { + s.State = v + return s +} + +// The lifecycle policy action that was identified for the impacted resource. +type LifecycleExecutionResourceAction struct { + _ struct{} `type:"structure"` + + // The name of the resource that was identified for a lifecycle policy action. + Name *string `locationName:"name" type:"string" enum:"LifecycleExecutionResourceActionName"` + + // The reason why the lifecycle policy action is taken. + Reason *string `locationName:"reason" 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 LifecycleExecutionResourceAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionResourceAction) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *LifecycleExecutionResourceAction) SetName(v string) *LifecycleExecutionResourceAction { + s.Name = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *LifecycleExecutionResourceAction) SetReason(v string) *LifecycleExecutionResourceAction { + s.Reason = &v + return s +} + +// Contains the state of an impacted resource that the runtime instance of the +// lifecycle policy identified for action. +type LifecycleExecutionResourceState struct { + _ struct{} `type:"structure"` + + // Messaging that clarifies the reason for the assigned status. + Reason *string `locationName:"reason" min:"1" type:"string"` + + // The runtime status of the lifecycle action taken for the impacted resource. + Status *string `locationName:"status" type:"string" enum:"LifecycleExecutionResourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionResourceState) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionResourceState) GoString() string { + return s.String() +} + +// SetReason sets the Reason field's value. +func (s *LifecycleExecutionResourceState) SetReason(v string) *LifecycleExecutionResourceState { + s.Reason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LifecycleExecutionResourceState) SetStatus(v string) *LifecycleExecutionResourceState { + s.Status = &v + return s +} + +// Contains details for an image resource that was identified for a lifecycle +// action. +type LifecycleExecutionResourcesImpactedSummary struct { + _ struct{} `type:"structure"` + + // Indicates whether an image resource that was identified for a lifecycle action + // has associated resources that are also impacted. + HasImpactedResources *bool `locationName:"hasImpactedResources" 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 LifecycleExecutionResourcesImpactedSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionResourcesImpactedSummary) GoString() string { + return s.String() +} + +// SetHasImpactedResources sets the HasImpactedResources field's value. +func (s *LifecycleExecutionResourcesImpactedSummary) SetHasImpactedResources(v bool) *LifecycleExecutionResourcesImpactedSummary { + s.HasImpactedResources = &v + return s +} + +// Contains the state of an impacted snapshot resource that the runtime instance +// of the lifecycle policy identified for action. +type LifecycleExecutionSnapshotResource struct { + _ struct{} `type:"structure"` + + // Identifies the impacted snapshot resource. + SnapshotId *string `locationName:"snapshotId" min:"1" type:"string"` + + // The runtime status of the lifecycle action taken for the snapshot. + State *LifecycleExecutionResourceState `locationName:"state" 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 LifecycleExecutionSnapshotResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionSnapshotResource) GoString() string { + return s.String() +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *LifecycleExecutionSnapshotResource) SetSnapshotId(v string) *LifecycleExecutionSnapshotResource { + s.SnapshotId = &v + return s +} + +// SetState sets the State field's value. +func (s *LifecycleExecutionSnapshotResource) SetState(v *LifecycleExecutionResourceState) *LifecycleExecutionSnapshotResource { + s.State = v + return s +} + +// The current state of the runtime instance of the lifecycle policy. +type LifecycleExecutionState struct { + _ struct{} `type:"structure"` + + // The reason for the current status. + Reason *string `locationName:"reason" min:"1" type:"string"` + + // The runtime status of the lifecycle execution. + Status *string `locationName:"status" type:"string" enum:"LifecycleExecutionStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionState) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecycleExecutionState) GoString() string { + return s.String() +} + +// SetReason sets the Reason field's value. +func (s *LifecycleExecutionState) SetReason(v string) *LifecycleExecutionState { + s.Reason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LifecycleExecutionState) SetStatus(v string) *LifecycleExecutionState { + s.Status = &v + return s +} + +// The configuration details for a lifecycle policy resource. +type LifecyclePolicy struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the lifecycle policy resource. + Arn *string `locationName:"arn" type:"string"` + + // The timestamp when Image Builder created the lifecycle policy resource. + DateCreated *time.Time `locationName:"dateCreated" type:"timestamp"` + + // The timestamp for the last time Image Builder ran the lifecycle policy. + DateLastRun *time.Time `locationName:"dateLastRun" type:"timestamp"` + + // The timestamp when Image Builder updated the lifecycle policy resource. + DateUpdated *time.Time `locationName:"dateUpdated" type:"timestamp"` + + // Optional description for the lifecycle policy. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the IAM role that Image Builder uses to run the lifecycle policy. + // This is a custom role that you create. + ExecutionRole *string `locationName:"executionRole" min:"1" type:"string"` + + // The name of the lifecycle policy. + Name *string `locationName:"name" type:"string"` + + // The configuration details for a lifecycle policy resource. + PolicyDetails []*LifecyclePolicyDetail `locationName:"policyDetails" min:"1" type:"list"` + + // Resource selection criteria used to run the lifecycle policy. + ResourceSelection *LifecyclePolicyResourceSelection `locationName:"resourceSelection" type:"structure"` + + // The type of resources the lifecycle policy targets. + ResourceType *string `locationName:"resourceType" type:"string" enum:"LifecyclePolicyResourceType"` + + // Indicates whether the lifecycle policy resource is enabled. + Status *string `locationName:"status" type:"string" enum:"LifecyclePolicyStatus"` + + // To help manage your lifecycle policy resources, you can assign your own metadata + // to each resource in the form of tags. Each tag consists of a key and an optional + // value, both of which you define. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicy) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *LifecyclePolicy) SetArn(v string) *LifecyclePolicy { + s.Arn = &v + return s +} + +// SetDateCreated sets the DateCreated field's value. +func (s *LifecyclePolicy) SetDateCreated(v time.Time) *LifecyclePolicy { + s.DateCreated = &v + return s +} + +// SetDateLastRun sets the DateLastRun field's value. +func (s *LifecyclePolicy) SetDateLastRun(v time.Time) *LifecyclePolicy { + s.DateLastRun = &v + return s +} + +// SetDateUpdated sets the DateUpdated field's value. +func (s *LifecyclePolicy) SetDateUpdated(v time.Time) *LifecyclePolicy { + s.DateUpdated = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *LifecyclePolicy) SetDescription(v string) *LifecyclePolicy { + s.Description = &v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *LifecyclePolicy) SetExecutionRole(v string) *LifecyclePolicy { + s.ExecutionRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicy) SetName(v string) *LifecyclePolicy { + s.Name = &v + return s +} + +// SetPolicyDetails sets the PolicyDetails field's value. +func (s *LifecyclePolicy) SetPolicyDetails(v []*LifecyclePolicyDetail) *LifecyclePolicy { + s.PolicyDetails = v + return s +} + +// SetResourceSelection sets the ResourceSelection field's value. +func (s *LifecyclePolicy) SetResourceSelection(v *LifecyclePolicyResourceSelection) *LifecyclePolicy { + s.ResourceSelection = v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *LifecyclePolicy) SetResourceType(v string) *LifecyclePolicy { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LifecyclePolicy) SetStatus(v string) *LifecyclePolicy { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *LifecyclePolicy) SetTags(v map[string]*string) *LifecyclePolicy { + s.Tags = v + return s +} + +// The configuration details for a lifecycle policy resource. +type LifecyclePolicyDetail struct { + _ struct{} `type:"structure"` + + // Configuration details for the policy action. + // + // Action is a required field + Action *LifecyclePolicyDetailAction `locationName:"action" type:"structure" required:"true"` + + // Additional rules to specify resources that should be exempt from policy actions. + ExclusionRules *LifecyclePolicyDetailExclusionRules `locationName:"exclusionRules" type:"structure"` + + // Specifies the resources that the lifecycle policy applies to. + // + // Filter is a required field + Filter *LifecyclePolicyDetailFilter `locationName:"filter" 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 LifecyclePolicyDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetail) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyDetail) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyDetail"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.Filter == nil { + invalidParams.Add(request.NewErrParamRequired("Filter")) + } + if s.Action != nil { + if err := s.Action.Validate(); err != nil { + invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) + } + } + if s.ExclusionRules != nil { + if err := s.ExclusionRules.Validate(); err != nil { + invalidParams.AddNested("ExclusionRules", err.(request.ErrInvalidParams)) + } + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *LifecyclePolicyDetail) SetAction(v *LifecyclePolicyDetailAction) *LifecyclePolicyDetail { + s.Action = v + return s +} + +// SetExclusionRules sets the ExclusionRules field's value. +func (s *LifecyclePolicyDetail) SetExclusionRules(v *LifecyclePolicyDetailExclusionRules) *LifecyclePolicyDetail { + s.ExclusionRules = v + return s +} + +// SetFilter sets the Filter field's value. +func (s *LifecyclePolicyDetail) SetFilter(v *LifecyclePolicyDetailFilter) *LifecyclePolicyDetail { + s.Filter = v + return s +} + +// Contains selection criteria for the lifecycle policy. +type LifecyclePolicyDetailAction struct { + _ struct{} `type:"structure"` + + // Specifies the resources that the lifecycle policy applies to. + IncludeResources *LifecyclePolicyDetailActionIncludeResources `locationName:"includeResources" type:"structure"` + + // Specifies the lifecycle action to take. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyDetailActionType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailAction) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyDetailAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyDetailAction"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeResources sets the IncludeResources field's value. +func (s *LifecyclePolicyDetailAction) SetIncludeResources(v *LifecyclePolicyDetailActionIncludeResources) *LifecyclePolicyDetailAction { + s.IncludeResources = v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicyDetailAction) SetType(v string) *LifecyclePolicyDetailAction { + s.Type = &v + return s +} + +// Specifies how the lifecycle policy should apply actions to selected resources. +type LifecyclePolicyDetailActionIncludeResources struct { + _ struct{} `type:"structure"` + + // Specifies whether the lifecycle action should apply to distributed AMIs. + Amis *bool `locationName:"amis" type:"boolean"` + + // Specifies whether the lifecycle action should apply to distributed containers. + Containers *bool `locationName:"containers" type:"boolean"` + + // Specifies whether the lifecycle action should apply to snapshots associated + // with distributed AMIs. + Snapshots *bool `locationName:"snapshots" 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 LifecyclePolicyDetailActionIncludeResources) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailActionIncludeResources) GoString() string { + return s.String() +} + +// SetAmis sets the Amis field's value. +func (s *LifecyclePolicyDetailActionIncludeResources) SetAmis(v bool) *LifecyclePolicyDetailActionIncludeResources { + s.Amis = &v + return s +} + +// SetContainers sets the Containers field's value. +func (s *LifecyclePolicyDetailActionIncludeResources) SetContainers(v bool) *LifecyclePolicyDetailActionIncludeResources { + s.Containers = &v + return s +} + +// SetSnapshots sets the Snapshots field's value. +func (s *LifecyclePolicyDetailActionIncludeResources) SetSnapshots(v bool) *LifecyclePolicyDetailActionIncludeResources { + s.Snapshots = &v + return s +} + +// Specifies resources that lifecycle policy actions should not apply to. +type LifecyclePolicyDetailExclusionRules struct { + _ struct{} `type:"structure"` + + // Lists configuration values that apply to AMIs that Image Builder should exclude + // from the lifecycle action. + Amis *LifecyclePolicyDetailExclusionRulesAmis `locationName:"amis" type:"structure"` + + // Contains a list of tags that Image Builder uses to skip lifecycle actions + // for AMIs that have them. + TagMap map[string]*string `locationName:"tagMap" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailExclusionRules) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailExclusionRules) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyDetailExclusionRules) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyDetailExclusionRules"} + if s.TagMap != nil && len(s.TagMap) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagMap", 1)) + } + if s.Amis != nil { + if err := s.Amis.Validate(); err != nil { + invalidParams.AddNested("Amis", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmis sets the Amis field's value. +func (s *LifecyclePolicyDetailExclusionRules) SetAmis(v *LifecyclePolicyDetailExclusionRulesAmis) *LifecyclePolicyDetailExclusionRules { + s.Amis = v + return s +} + +// SetTagMap sets the TagMap field's value. +func (s *LifecyclePolicyDetailExclusionRules) SetTagMap(v map[string]*string) *LifecyclePolicyDetailExclusionRules { + s.TagMap = v + return s +} + +// Defines criteria for AMIs that are excluded from lifecycle actions. +type LifecyclePolicyDetailExclusionRulesAmis struct { + _ struct{} `type:"structure"` + + // Configures whether public AMIs are excluded from the lifecycle action. + IsPublic *bool `locationName:"isPublic" type:"boolean"` + + // Configures Amazon Web Services Regions that are excluded from the lifecycle + // action. + LastLaunched *LifecyclePolicyDetailExclusionRulesAmisLastLaunched `locationName:"lastLaunched" type:"structure"` + + // Specifies Amazon Web Services accounts whose resources are excluded from + // the lifecycle action. + Regions []*string `locationName:"regions" type:"list"` + + // Specifies configuration details for Image Builder to exclude the most recent + // resources from lifecycle actions. + SharedAccounts []*string `locationName:"sharedAccounts" min:"1" type:"list"` + + // Lists tags that should be excluded from lifecycle actions for the AMIs that + // have them. + TagMap map[string]*string `locationName:"tagMap" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailExclusionRulesAmis) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailExclusionRulesAmis) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyDetailExclusionRulesAmis) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyDetailExclusionRulesAmis"} + if s.SharedAccounts != nil && len(s.SharedAccounts) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SharedAccounts", 1)) + } + if s.TagMap != nil && len(s.TagMap) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagMap", 1)) + } + if s.LastLaunched != nil { + if err := s.LastLaunched.Validate(); err != nil { + invalidParams.AddNested("LastLaunched", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIsPublic sets the IsPublic field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmis) SetIsPublic(v bool) *LifecyclePolicyDetailExclusionRulesAmis { + s.IsPublic = &v + return s +} + +// SetLastLaunched sets the LastLaunched field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmis) SetLastLaunched(v *LifecyclePolicyDetailExclusionRulesAmisLastLaunched) *LifecyclePolicyDetailExclusionRulesAmis { + s.LastLaunched = v + return s +} + +// SetRegions sets the Regions field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmis) SetRegions(v []*string) *LifecyclePolicyDetailExclusionRulesAmis { + s.Regions = v + return s +} + +// SetSharedAccounts sets the SharedAccounts field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmis) SetSharedAccounts(v []*string) *LifecyclePolicyDetailExclusionRulesAmis { + s.SharedAccounts = v + return s +} + +// SetTagMap sets the TagMap field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmis) SetTagMap(v map[string]*string) *LifecyclePolicyDetailExclusionRulesAmis { + s.TagMap = v + return s +} + +// Defines criteria to exclude AMIs from lifecycle actions based on the last +// time they were used to launch an instance. +type LifecyclePolicyDetailExclusionRulesAmisLastLaunched struct { + _ struct{} `type:"structure"` + + // Defines the unit of time that the lifecycle policy uses to calculate elapsed + // time since the last instance launched from the AMI. For example: days, weeks, + // months, or years. + // + // Unit is a required field + Unit *string `locationName:"unit" type:"string" required:"true" enum:"LifecyclePolicyTimeUnit"` + + // The integer number of units for the time period. For example 6 (months). + // + // Value is a required field + Value *int64 `locationName:"value" min:"1" type:"integer" 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 LifecyclePolicyDetailExclusionRulesAmisLastLaunched) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailExclusionRulesAmisLastLaunched) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyDetailExclusionRulesAmisLastLaunched) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyDetailExclusionRulesAmisLastLaunched"} + if s.Unit == nil { + invalidParams.Add(request.NewErrParamRequired("Unit")) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && *s.Value < 1 { + invalidParams.Add(request.NewErrParamMinValue("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetUnit sets the Unit field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmisLastLaunched) SetUnit(v string) *LifecyclePolicyDetailExclusionRulesAmisLastLaunched { + s.Unit = &v + return s +} + +// SetValue sets the Value field's value. +func (s *LifecyclePolicyDetailExclusionRulesAmisLastLaunched) SetValue(v int64) *LifecyclePolicyDetailExclusionRulesAmisLastLaunched { + s.Value = &v + return s +} + +// Defines filters that the lifecycle policy uses to determine impacted resource. +type LifecyclePolicyDetailFilter struct { + _ struct{} `type:"structure"` + + // For age-based filters, this is the number of resources to keep on hand after + // the lifecycle DELETE action is applied. Impacted resources are only deleted + // if you have more than this number of resources. If you have fewer resources + // than this number, the impacted resource is not deleted. + RetainAtLeast *int64 `locationName:"retainAtLeast" min:"1" type:"integer"` + + // Filter resources based on either age or count. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyDetailFilterType"` + + // Defines the unit of time that the lifecycle policy uses to determine impacted + // resources. This is required for age-based rules. + Unit *string `locationName:"unit" type:"string" enum:"LifecyclePolicyTimeUnit"` + + // The number of units for the time period or for the count. For example, a + // value of 6 might refer to six months or six AMIs. + // + // For count-based filters, this value represents the minimum number of resources + // to keep on hand. If you have fewer resources than this number, the resource + // is excluded from lifecycle actions. + // + // Value is a required field + Value *int64 `locationName:"value" min:"1" type:"integer" 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 LifecyclePolicyDetailFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetailFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyDetailFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyDetailFilter"} + if s.RetainAtLeast != nil && *s.RetainAtLeast < 1 { + invalidParams.Add(request.NewErrParamMinValue("RetainAtLeast", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && *s.Value < 1 { + invalidParams.Add(request.NewErrParamMinValue("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRetainAtLeast sets the RetainAtLeast field's value. +func (s *LifecyclePolicyDetailFilter) SetRetainAtLeast(v int64) *LifecyclePolicyDetailFilter { + s.RetainAtLeast = &v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicyDetailFilter) SetType(v string) *LifecyclePolicyDetailFilter { + s.Type = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *LifecyclePolicyDetailFilter) SetUnit(v string) *LifecyclePolicyDetailFilter { + s.Unit = &v + return s +} + +// SetValue sets the Value field's value. +func (s *LifecyclePolicyDetailFilter) SetValue(v int64) *LifecyclePolicyDetailFilter { + s.Value = &v + return s +} + +// Resource selection criteria for the lifecycle policy. +type LifecyclePolicyResourceSelection struct { + _ struct{} `type:"structure"` + + // A list of recipes that are used as selection criteria for the output images + // that the lifecycle policy applies to. + Recipes []*LifecyclePolicyResourceSelectionRecipe `locationName:"recipes" min:"1" type:"list"` + + // A list of tags that are used as selection criteria for the resources that + // the lifecycle policy applies to. + TagMap map[string]*string `locationName:"tagMap" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyResourceSelection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyResourceSelection) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyResourceSelection) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyResourceSelection"} + if s.Recipes != nil && len(s.Recipes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Recipes", 1)) + } + if s.TagMap != nil && len(s.TagMap) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagMap", 1)) + } + if s.Recipes != nil { + for i, v := range s.Recipes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Recipes", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecipes sets the Recipes field's value. +func (s *LifecyclePolicyResourceSelection) SetRecipes(v []*LifecyclePolicyResourceSelectionRecipe) *LifecyclePolicyResourceSelection { + s.Recipes = v + return s +} + +// SetTagMap sets the TagMap field's value. +func (s *LifecyclePolicyResourceSelection) SetTagMap(v map[string]*string) *LifecyclePolicyResourceSelection { + s.TagMap = v + return s +} + +// Specifies an Image Builder recipe that the lifecycle policy uses for resource +// selection. +type LifecyclePolicyResourceSelectionRecipe struct { + _ struct{} `type:"structure"` + + // The name of an Image Builder recipe that the lifecycle policy uses for resource + // selection. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The version of the Image Builder recipe specified by the name field. + // + // SemanticVersion is a required field + SemanticVersion *string `locationName:"semanticVersion" 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 LifecyclePolicyResourceSelectionRecipe) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyResourceSelectionRecipe) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyResourceSelectionRecipe) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyResourceSelectionRecipe"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.SemanticVersion == nil { + invalidParams.Add(request.NewErrParamRequired("SemanticVersion")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicyResourceSelectionRecipe) SetName(v string) *LifecyclePolicyResourceSelectionRecipe { + s.Name = &v + return s +} + +// SetSemanticVersion sets the SemanticVersion field's value. +func (s *LifecyclePolicyResourceSelectionRecipe) SetSemanticVersion(v string) *LifecyclePolicyResourceSelectionRecipe { + s.SemanticVersion = &v + return s +} + +// Contains a summary of lifecycle policy resources. +type LifecyclePolicySummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the lifecycle policy summary resource. + Arn *string `locationName:"arn" type:"string"` + + // The timestamp when Image Builder created the lifecycle policy resource. + DateCreated *time.Time `locationName:"dateCreated" type:"timestamp"` + + // The timestamp for the last time Image Builder ran the lifecycle policy. + DateLastRun *time.Time `locationName:"dateLastRun" type:"timestamp"` + + // The timestamp when Image Builder updated the lifecycle policy resource. + DateUpdated *time.Time `locationName:"dateUpdated" type:"timestamp"` + + // Optional description for the lifecycle policy. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the IAM role that Image Builder uses to run the lifecycle policy. + ExecutionRole *string `locationName:"executionRole" min:"1" type:"string"` + + // The name of the lifecycle policy. + Name *string `locationName:"name" type:"string"` + + // The type of resources the lifecycle policy targets. + ResourceType *string `locationName:"resourceType" type:"string" enum:"LifecyclePolicyResourceType"` + + // The lifecycle policy resource status. + Status *string `locationName:"status" type:"string" enum:"LifecyclePolicyStatus"` + + // To help manage your lifecycle policy resources, you can assign your own metadata + // to each resource in the form of tags. Each tag consists of a key and an optional + // value, both of which you define. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicySummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicySummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *LifecyclePolicySummary) SetArn(v string) *LifecyclePolicySummary { + s.Arn = &v + return s +} + +// SetDateCreated sets the DateCreated field's value. +func (s *LifecyclePolicySummary) SetDateCreated(v time.Time) *LifecyclePolicySummary { + s.DateCreated = &v + return s +} + +// SetDateLastRun sets the DateLastRun field's value. +func (s *LifecyclePolicySummary) SetDateLastRun(v time.Time) *LifecyclePolicySummary { + s.DateLastRun = &v + return s +} + +// SetDateUpdated sets the DateUpdated field's value. +func (s *LifecyclePolicySummary) SetDateUpdated(v time.Time) *LifecyclePolicySummary { + s.DateUpdated = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *LifecyclePolicySummary) SetDescription(v string) *LifecyclePolicySummary { + s.Description = &v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *LifecyclePolicySummary) SetExecutionRole(v string) *LifecyclePolicySummary { + s.ExecutionRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicySummary) SetName(v string) *LifecyclePolicySummary { + s.Name = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *LifecyclePolicySummary) SetResourceType(v string) *LifecyclePolicySummary { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LifecyclePolicySummary) SetStatus(v string) *LifecyclePolicySummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *LifecyclePolicySummary) SetTags(v map[string]*string) *LifecyclePolicySummary { + s.Tags = v + return s +} + type ListComponentBuildVersionsInput struct { _ struct{} `type:"structure"` @@ -16176,7 +19225,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -16243,7 +19292,7 @@ ComponentSummaryList []*ComponentSummary `locationName:"componentSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16311,7 +19360,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16410,7 +19459,7 @@ ComponentVersionList []*ComponentVersion `locationName:"componentVersionList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16471,7 +19520,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16559,7 +19608,7 @@ ContainerRecipeSummaryList []*ContainerRecipeSummary `locationName:"containerRecipeSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16612,7 +19661,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -16689,7 +19738,7 @@ DistributionConfigurationSummaryList []*DistributionConfigurationSummary `locationName:"distributionConfigurationSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16758,7 +19807,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -16844,7 +19893,7 @@ ImageSummaryList []*ImageSummary `locationName:"imageSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -16900,7 +19949,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -16967,7 +20016,7 @@ ImagePackageList []*ImagePackage `locationName:"imagePackageList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17030,7 +20079,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -17116,7 +20165,7 @@ ImageSummaryList []*ImageSummary `locationName:"imageSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17181,7 +20230,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -17258,7 +20307,7 @@ ImagePipelineList []*ImagePipeline `locationName:"imagePipelineList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17317,7 +20366,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17406,7 +20455,7 @@ ImageRecipeSummaryList []*ImageRecipeSummary `locationName:"imageRecipeSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17458,7 +20507,7 @@ // by specific criteria, such as tags, attributes, or IDs. Filter *Filter `locationName:"filter" type:"structure"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -17534,7 +20583,7 @@ AggregationType *string `locationName:"aggregationType" min:"1" type:"string"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17607,7 +20656,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -17684,7 +20733,7 @@ Findings []*ImageScanFinding `locationName:"findings" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17753,7 +20802,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17862,7 +20911,7 @@ ImageVersionList []*ImageVersion `locationName:"imageVersionList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -17915,7 +20964,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -17992,7 +21041,7 @@ InfrastructureConfigurationSummaryList []*InfrastructureConfigurationSummary `locationName:"infrastructureConfigurationSummaryList" type:"list"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -18036,6 +21085,392 @@ return s } +type ListLifecycleExecutionResourcesInput struct { + _ struct{} `type:"structure"` + + // Use the unique identifier for a runtime instance of the lifecycle policy + // to get runtime details. + // + // LifecycleExecutionId is a required field + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" type:"string" required:"true"` + + // The maximum items to return in a request. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to specify where to start paginating. This is the nextToken from + // a previously truncated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // You can leave this empty to get a list of Image Builder resources that were + // identified for lifecycle actions. + // + // To get a list of associated resources that are impacted for an individual + // resource (the parent), specify its Amazon Resource Name (ARN). Associated + // resources are produced from your image and distributed when you run a build, + // such as AMIs or container images stored in ECR repositories. + ParentResourceId *string `locationName:"parentResourceId" 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 ListLifecycleExecutionResourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecycleExecutionResourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLifecycleExecutionResourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLifecycleExecutionResourcesInput"} + if s.LifecycleExecutionId == nil { + invalidParams.Add(request.NewErrParamRequired("LifecycleExecutionId")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ParentResourceId != nil && len(*s.ParentResourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ParentResourceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *ListLifecycleExecutionResourcesInput) SetLifecycleExecutionId(v string) *ListLifecycleExecutionResourcesInput { + s.LifecycleExecutionId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListLifecycleExecutionResourcesInput) SetMaxResults(v int64) *ListLifecycleExecutionResourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecycleExecutionResourcesInput) SetNextToken(v string) *ListLifecycleExecutionResourcesInput { + s.NextToken = &v + return s +} + +// SetParentResourceId sets the ParentResourceId field's value. +func (s *ListLifecycleExecutionResourcesInput) SetParentResourceId(v string) *ListLifecycleExecutionResourcesInput { + s.ParentResourceId = &v + return s +} + +type ListLifecycleExecutionResourcesOutput struct { + _ struct{} `type:"structure"` + + // Runtime details for the specified runtime instance of the lifecycle policy. + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" type:"string"` + + // The current state of the lifecycle runtime instance. + LifecycleExecutionState *LifecycleExecutionState `locationName:"lifecycleExecutionState" type:"structure"` + + // The next token used for paginated responses. When this field isn't empty, + // there are additional elements that the service hasn't included in this request. + // Use this token with the next request to retrieve additional objects. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of resources that were identified for lifecycle actions. + Resources []*LifecycleExecutionResource `locationName:"resources" 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 ListLifecycleExecutionResourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecycleExecutionResourcesOutput) GoString() string { + return s.String() +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *ListLifecycleExecutionResourcesOutput) SetLifecycleExecutionId(v string) *ListLifecycleExecutionResourcesOutput { + s.LifecycleExecutionId = &v + return s +} + +// SetLifecycleExecutionState sets the LifecycleExecutionState field's value. +func (s *ListLifecycleExecutionResourcesOutput) SetLifecycleExecutionState(v *LifecycleExecutionState) *ListLifecycleExecutionResourcesOutput { + s.LifecycleExecutionState = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecycleExecutionResourcesOutput) SetNextToken(v string) *ListLifecycleExecutionResourcesOutput { + s.NextToken = &v + return s +} + +// SetResources sets the Resources field's value. +func (s *ListLifecycleExecutionResourcesOutput) SetResources(v []*LifecycleExecutionResource) *ListLifecycleExecutionResourcesOutput { + s.Resources = v + return s +} + +type ListLifecycleExecutionsInput struct { + _ struct{} `type:"structure"` + + // The maximum items to return in a request. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to specify where to start paginating. This is the nextToken from + // a previously truncated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the resource for which to get a list of + // lifecycle runtime instances. + // + // 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 ListLifecycleExecutionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecycleExecutionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLifecycleExecutionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLifecycleExecutionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListLifecycleExecutionsInput) SetMaxResults(v int64) *ListLifecycleExecutionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecycleExecutionsInput) SetNextToken(v string) *ListLifecycleExecutionsInput { + s.NextToken = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListLifecycleExecutionsInput) SetResourceArn(v string) *ListLifecycleExecutionsInput { + s.ResourceArn = &v + return s +} + +type ListLifecycleExecutionsOutput struct { + _ struct{} `type:"structure"` + + // A list of lifecycle runtime instances for the specified resource. + LifecycleExecutions []*LifecycleExecution `locationName:"lifecycleExecutions" type:"list"` + + // The next token used for paginated responses. When this field isn't empty, + // there are additional elements that the service hasn't included in this request. + // Use this token with the next request to retrieve additional objects. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecycleExecutionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecycleExecutionsOutput) GoString() string { + return s.String() +} + +// SetLifecycleExecutions sets the LifecycleExecutions field's value. +func (s *ListLifecycleExecutionsOutput) SetLifecycleExecutions(v []*LifecycleExecution) *ListLifecycleExecutionsOutput { + s.LifecycleExecutions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecycleExecutionsOutput) SetNextToken(v string) *ListLifecycleExecutionsOutput { + s.NextToken = &v + return s +} + +type ListLifecyclePoliciesInput struct { + _ struct{} `type:"structure"` + + // Streamline results based on one of the following values: Name, Status. + Filters []*Filter `locationName:"filters" min:"1" type:"list"` + + // The maximum items to return in a request. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to specify where to start paginating. This is the nextToken from + // a previously truncated response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLifecyclePoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLifecyclePoliciesInput"} + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListLifecyclePoliciesInput) SetFilters(v []*Filter) *ListLifecyclePoliciesInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListLifecyclePoliciesInput) SetMaxResults(v int64) *ListLifecyclePoliciesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecyclePoliciesInput) SetNextToken(v string) *ListLifecyclePoliciesInput { + s.NextToken = &v + return s +} + +type ListLifecyclePoliciesOutput struct { + _ struct{} `type:"structure"` + + // A list of lifecycle policies in your Amazon Web Services account that meet + // the criteria specified in the request. + LifecyclePolicySummaryList []*LifecyclePolicySummary `locationName:"lifecyclePolicySummaryList" type:"list"` + + // The next token used for paginated responses. When this field isn't empty, + // there are additional elements that the service hasn't included in this request. + // Use this token with the next request to retrieve additional objects. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicySummaryList sets the LifecyclePolicySummaryList field's value. +func (s *ListLifecyclePoliciesOutput) SetLifecyclePolicySummaryList(v []*LifecyclePolicySummary) *ListLifecyclePoliciesOutput { + s.LifecyclePolicySummaryList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecyclePoliciesOutput) SetNextToken(v string) *ListLifecyclePoliciesOutput { + s.NextToken = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -18128,7 +21563,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -18199,7 +21634,7 @@ Message *string `locationName:"message" type:"string"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -18265,7 +21700,7 @@ // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token to specify where to start paginating. This is the NextToken from + // A token to specify where to start paginating. This is the nextToken from // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -18342,7 +21777,7 @@ Message *string `locationName:"message" type:"string"` // The next token used for paginated responses. When this field isn't empty, - // there are additional elements that the service has'ot included in this request. + // there are additional elements that the service hasn't included in this request. // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` @@ -19382,6 +22817,138 @@ return s.RespMetadata.RequestID } +// The current state of an impacted resource. +type ResourceState struct { + _ struct{} `type:"structure"` + + // Shows the current lifecycle policy action that was applied to an impacted + // resource. + Status *string `locationName:"status" type:"string" enum:"ResourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceState) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceState) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *ResourceState) SetStatus(v string) *ResourceState { + s.Status = &v + return s +} + +// Additional rules to specify resources that should be exempt from ad-hoc lifecycle +// actions. +type ResourceStateUpdateExclusionRules struct { + _ struct{} `type:"structure"` + + // Defines criteria for AMIs that are excluded from lifecycle actions. + Amis *LifecyclePolicyDetailExclusionRulesAmis `locationName:"amis" 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 ResourceStateUpdateExclusionRules) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceStateUpdateExclusionRules) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResourceStateUpdateExclusionRules) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResourceStateUpdateExclusionRules"} + if s.Amis != nil { + if err := s.Amis.Validate(); err != nil { + invalidParams.AddNested("Amis", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmis sets the Amis field's value. +func (s *ResourceStateUpdateExclusionRules) SetAmis(v *LifecyclePolicyDetailExclusionRulesAmis) *ResourceStateUpdateExclusionRules { + s.Amis = v + return s +} + +// Specifies if the lifecycle policy should apply actions to selected resources. +type ResourceStateUpdateIncludeResources struct { + _ struct{} `type:"structure"` + + // Specifies whether the lifecycle action should apply to distributed AMIs + Amis *bool `locationName:"amis" type:"boolean"` + + // Specifies whether the lifecycle action should apply to distributed containers. + Containers *bool `locationName:"containers" type:"boolean"` + + // Specifies whether the lifecycle action should apply to snapshots associated + // with distributed AMIs. + Snapshots *bool `locationName:"snapshots" 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 ResourceStateUpdateIncludeResources) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceStateUpdateIncludeResources) GoString() string { + return s.String() +} + +// SetAmis sets the Amis field's value. +func (s *ResourceStateUpdateIncludeResources) SetAmis(v bool) *ResourceStateUpdateIncludeResources { + s.Amis = &v + return s +} + +// SetContainers sets the Containers field's value. +func (s *ResourceStateUpdateIncludeResources) SetContainers(v bool) *ResourceStateUpdateIncludeResources { + s.Containers = &v + return s +} + +// SetSnapshots sets the Snapshots field's value. +func (s *ResourceStateUpdateIncludeResources) SetSnapshots(v bool) *ResourceStateUpdateIncludeResources { + s.Snapshots = &v + return s +} + // Properties that configure export from your build instance to a compatible // file format for your VM. type S3ExportConfiguration struct { @@ -19881,7 +23448,9 @@ type StartImagePipelineExecutionInput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the image pipeline that you want to manually @@ -19940,10 +23509,10 @@ type StartImagePipelineExecutionOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` - // The Amazon Resource Name (ARN) of the image that was created by this request. + // The Amazon Resource Name (ARN) of the image that the request created. ImageBuildVersionArn *string `locationName:"imageBuildVersionArn" type:"string"` // The request ID that uniquely identifies this request. @@ -19986,6 +23555,168 @@ return s } +type StartResourceStateUpdateInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Skip action on the image resource and associated resources if specified exclusion + // rules are met. + ExclusionRules *ResourceStateUpdateExclusionRules `locationName:"exclusionRules" type:"structure"` + + // The name or Amazon Resource Name (ARN) of the IAM role that’s used to update + // image state. + ExecutionRole *string `locationName:"executionRole" min:"1" type:"string"` + + // A list of image resources to update state for. + IncludeResources *ResourceStateUpdateIncludeResources `locationName:"includeResources" type:"structure"` + + // The ARN of the Image Builder resource that is updated. The state update might + // also impact associated resources. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` + + // Indicates the lifecycle action to take for this request. + // + // State is a required field + State *ResourceState `locationName:"state" type:"structure" required:"true"` + + // The timestamp that indicates when resources are updated by a lifecycle action. + UpdateAt *time.Time `locationName:"updateAt" 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 StartResourceStateUpdateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartResourceStateUpdateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartResourceStateUpdateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartResourceStateUpdateInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ExecutionRole != nil && len(*s.ExecutionRole) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionRole", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.State == nil { + invalidParams.Add(request.NewErrParamRequired("State")) + } + if s.ExclusionRules != nil { + if err := s.ExclusionRules.Validate(); err != nil { + invalidParams.AddNested("ExclusionRules", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartResourceStateUpdateInput) SetClientToken(v string) *StartResourceStateUpdateInput { + s.ClientToken = &v + return s +} + +// SetExclusionRules sets the ExclusionRules field's value. +func (s *StartResourceStateUpdateInput) SetExclusionRules(v *ResourceStateUpdateExclusionRules) *StartResourceStateUpdateInput { + s.ExclusionRules = v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *StartResourceStateUpdateInput) SetExecutionRole(v string) *StartResourceStateUpdateInput { + s.ExecutionRole = &v + return s +} + +// SetIncludeResources sets the IncludeResources field's value. +func (s *StartResourceStateUpdateInput) SetIncludeResources(v *ResourceStateUpdateIncludeResources) *StartResourceStateUpdateInput { + s.IncludeResources = v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *StartResourceStateUpdateInput) SetResourceArn(v string) *StartResourceStateUpdateInput { + s.ResourceArn = &v + return s +} + +// SetState sets the State field's value. +func (s *StartResourceStateUpdateInput) SetState(v *ResourceState) *StartResourceStateUpdateInput { + s.State = v + return s +} + +// SetUpdateAt sets the UpdateAt field's value. +func (s *StartResourceStateUpdateInput) SetUpdateAt(v time.Time) *StartResourceStateUpdateInput { + s.UpdateAt = &v + return s +} + +type StartResourceStateUpdateOutput struct { + _ struct{} `type:"structure"` + + // Identifies the lifecycle runtime instance that started the resource state + // update. + LifecycleExecutionId *string `locationName:"lifecycleExecutionId" type:"string"` + + // The requested ARN of the Image Builder resource for the asynchronous update. + 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 StartResourceStateUpdateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartResourceStateUpdateOutput) GoString() string { + return s.String() +} + +// SetLifecycleExecutionId sets the LifecycleExecutionId field's value. +func (s *StartResourceStateUpdateOutput) SetLifecycleExecutionId(v string) *StartResourceStateUpdateOutput { + s.LifecycleExecutionId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *StartResourceStateUpdateOutput) SetResourceArn(v string) *StartResourceStateUpdateOutput { + s.ResourceArn = &v + return s +} + // Contains settings for the Systems Manager agent on your build instance. type SystemsManagerAgent struct { _ struct{} `type:"structure"` @@ -20265,7 +23996,9 @@ type UpdateDistributionConfigurationInput struct { _ struct{} `type:"structure"` - // The idempotency token of the distribution configuration. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The description of the distribution configuration. @@ -20360,7 +24093,7 @@ type UpdateDistributionConfigurationOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the distribution configuration that was @@ -20410,7 +24143,9 @@ type UpdateImagePipelineInput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the container pipeline to update. @@ -20588,7 +24323,7 @@ type UpdateImagePipelineOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the image pipeline that was updated by @@ -20638,7 +24373,9 @@ type UpdateInfrastructureConfigurationInput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // The description of the infrastructure configuration. @@ -20848,7 +24585,7 @@ type UpdateInfrastructureConfigurationOutput struct { _ struct{} `type:"structure"` - // The idempotency token used to make this request idempotent. + // The client token that uniquely identifies the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the infrastructure configuration that was @@ -20895,6 +24632,196 @@ return s } +type UpdateLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier you provide to ensure idempotency of the + // request. For more information, see Ensuring idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) + // in the Amazon EC2 API Reference. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Optional description for the lifecycle policy. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the IAM role that Image Builder should use to update the lifecycle + // policy. + // + // ExecutionRole is a required field + ExecutionRole *string `locationName:"executionRole" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the lifecycle policy resource. + // + // LifecyclePolicyArn is a required field + LifecyclePolicyArn *string `locationName:"lifecyclePolicyArn" type:"string" required:"true"` + + // The configuration details for a lifecycle policy resource. + // + // PolicyDetails is a required field + PolicyDetails []*LifecyclePolicyDetail `locationName:"policyDetails" min:"1" type:"list" required:"true"` + + // Selection criteria for resources that the lifecycle policy applies to. + // + // ResourceSelection is a required field + ResourceSelection *LifecyclePolicyResourceSelection `locationName:"resourceSelection" type:"structure" required:"true"` + + // The type of image resource that the lifecycle policy applies to. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"LifecyclePolicyResourceType"` + + // Indicates whether the lifecycle policy resource is enabled. + Status *string `locationName:"status" type:"string" enum:"LifecyclePolicyStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateLifecyclePolicyInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.ExecutionRole == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionRole")) + } + if s.ExecutionRole != nil && len(*s.ExecutionRole) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionRole", 1)) + } + if s.LifecyclePolicyArn == nil { + invalidParams.Add(request.NewErrParamRequired("LifecyclePolicyArn")) + } + if s.PolicyDetails == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyDetails")) + } + if s.PolicyDetails != nil && len(s.PolicyDetails) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PolicyDetails", 1)) + } + if s.ResourceSelection == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceSelection")) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + if s.PolicyDetails != nil { + for i, v := range s.PolicyDetails { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PolicyDetails", i), err.(request.ErrInvalidParams)) + } + } + } + if s.ResourceSelection != nil { + if err := s.ResourceSelection.Validate(); err != nil { + invalidParams.AddNested("ResourceSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateLifecyclePolicyInput) SetClientToken(v string) *UpdateLifecyclePolicyInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateLifecyclePolicyInput) SetDescription(v string) *UpdateLifecyclePolicyInput { + s.Description = &v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *UpdateLifecyclePolicyInput) SetExecutionRole(v string) *UpdateLifecyclePolicyInput { + s.ExecutionRole = &v + return s +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *UpdateLifecyclePolicyInput) SetLifecyclePolicyArn(v string) *UpdateLifecyclePolicyInput { + s.LifecyclePolicyArn = &v + return s +} + +// SetPolicyDetails sets the PolicyDetails field's value. +func (s *UpdateLifecyclePolicyInput) SetPolicyDetails(v []*LifecyclePolicyDetail) *UpdateLifecyclePolicyInput { + s.PolicyDetails = v + return s +} + +// SetResourceSelection sets the ResourceSelection field's value. +func (s *UpdateLifecyclePolicyInput) SetResourceSelection(v *LifecyclePolicyResourceSelection) *UpdateLifecyclePolicyInput { + s.ResourceSelection = v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *UpdateLifecyclePolicyInput) SetResourceType(v string) *UpdateLifecyclePolicyInput { + s.ResourceType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateLifecyclePolicyInput) SetStatus(v string) *UpdateLifecyclePolicyInput { + s.Status = &v + return s +} + +type UpdateLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the image lifecycle policy resource that was updated. + LifecyclePolicyArn *string `locationName:"lifecyclePolicyArn" 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 UpdateLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicyArn sets the LifecyclePolicyArn field's value. +func (s *UpdateLifecyclePolicyOutput) SetLifecyclePolicyArn(v string) *UpdateLifecyclePolicyOutput { + s.LifecyclePolicyArn = &v + return s +} + // Includes counts of image and pipeline resource findings by vulnerability. type VulnerabilityIdAggregation struct { _ struct{} `type:"structure"` @@ -21534,6 +25461,9 @@ // ImageStatusDeleted is a ImageStatus enum value ImageStatusDeleted = "DELETED" + + // ImageStatusDisabled is a ImageStatus enum value + ImageStatusDisabled = "DISABLED" ) // ImageStatus_Values returns all elements of the ImageStatus enum @@ -21550,6 +25480,7 @@ ImageStatusFailed, ImageStatusDeprecated, ImageStatusDeleted, + ImageStatusDisabled, } } @@ -21570,6 +25501,174 @@ } const ( + // LifecycleExecutionResourceActionNameAvailable is a LifecycleExecutionResourceActionName enum value + LifecycleExecutionResourceActionNameAvailable = "AVAILABLE" + + // LifecycleExecutionResourceActionNameDelete is a LifecycleExecutionResourceActionName enum value + LifecycleExecutionResourceActionNameDelete = "DELETE" + + // LifecycleExecutionResourceActionNameDeprecate is a LifecycleExecutionResourceActionName enum value + LifecycleExecutionResourceActionNameDeprecate = "DEPRECATE" + + // LifecycleExecutionResourceActionNameDisable is a LifecycleExecutionResourceActionName enum value + LifecycleExecutionResourceActionNameDisable = "DISABLE" +) + +// LifecycleExecutionResourceActionName_Values returns all elements of the LifecycleExecutionResourceActionName enum +func LifecycleExecutionResourceActionName_Values() []string { + return []string{ + LifecycleExecutionResourceActionNameAvailable, + LifecycleExecutionResourceActionNameDelete, + LifecycleExecutionResourceActionNameDeprecate, + LifecycleExecutionResourceActionNameDisable, + } +} + +const ( + // LifecycleExecutionResourceStatusFailed is a LifecycleExecutionResourceStatus enum value + LifecycleExecutionResourceStatusFailed = "FAILED" + + // LifecycleExecutionResourceStatusInProgress is a LifecycleExecutionResourceStatus enum value + LifecycleExecutionResourceStatusInProgress = "IN_PROGRESS" + + // LifecycleExecutionResourceStatusSkipped is a LifecycleExecutionResourceStatus enum value + LifecycleExecutionResourceStatusSkipped = "SKIPPED" + + // LifecycleExecutionResourceStatusSuccess is a LifecycleExecutionResourceStatus enum value + LifecycleExecutionResourceStatusSuccess = "SUCCESS" +) + +// LifecycleExecutionResourceStatus_Values returns all elements of the LifecycleExecutionResourceStatus enum +func LifecycleExecutionResourceStatus_Values() []string { + return []string{ + LifecycleExecutionResourceStatusFailed, + LifecycleExecutionResourceStatusInProgress, + LifecycleExecutionResourceStatusSkipped, + LifecycleExecutionResourceStatusSuccess, + } +} + +const ( + // LifecycleExecutionStatusInProgress is a LifecycleExecutionStatus enum value + LifecycleExecutionStatusInProgress = "IN_PROGRESS" + + // LifecycleExecutionStatusCancelled is a LifecycleExecutionStatus enum value + LifecycleExecutionStatusCancelled = "CANCELLED" + + // LifecycleExecutionStatusCancelling is a LifecycleExecutionStatus enum value + LifecycleExecutionStatusCancelling = "CANCELLING" + + // LifecycleExecutionStatusFailed is a LifecycleExecutionStatus enum value + LifecycleExecutionStatusFailed = "FAILED" + + // LifecycleExecutionStatusSuccess is a LifecycleExecutionStatus enum value + LifecycleExecutionStatusSuccess = "SUCCESS" +) + +// LifecycleExecutionStatus_Values returns all elements of the LifecycleExecutionStatus enum +func LifecycleExecutionStatus_Values() []string { + return []string{ + LifecycleExecutionStatusInProgress, + LifecycleExecutionStatusCancelled, + LifecycleExecutionStatusCancelling, + LifecycleExecutionStatusFailed, + LifecycleExecutionStatusSuccess, + } +} + +const ( + // LifecyclePolicyDetailActionTypeDelete is a LifecyclePolicyDetailActionType enum value + LifecyclePolicyDetailActionTypeDelete = "DELETE" + + // LifecyclePolicyDetailActionTypeDeprecate is a LifecyclePolicyDetailActionType enum value + LifecyclePolicyDetailActionTypeDeprecate = "DEPRECATE" + + // LifecyclePolicyDetailActionTypeDisable is a LifecyclePolicyDetailActionType enum value + LifecyclePolicyDetailActionTypeDisable = "DISABLE" +) + +// LifecyclePolicyDetailActionType_Values returns all elements of the LifecyclePolicyDetailActionType enum +func LifecyclePolicyDetailActionType_Values() []string { + return []string{ + LifecyclePolicyDetailActionTypeDelete, + LifecyclePolicyDetailActionTypeDeprecate, + LifecyclePolicyDetailActionTypeDisable, + } +} + +const ( + // LifecyclePolicyDetailFilterTypeAge is a LifecyclePolicyDetailFilterType enum value + LifecyclePolicyDetailFilterTypeAge = "AGE" + + // LifecyclePolicyDetailFilterTypeCount is a LifecyclePolicyDetailFilterType enum value + LifecyclePolicyDetailFilterTypeCount = "COUNT" +) + +// LifecyclePolicyDetailFilterType_Values returns all elements of the LifecyclePolicyDetailFilterType enum +func LifecyclePolicyDetailFilterType_Values() []string { + return []string{ + LifecyclePolicyDetailFilterTypeAge, + LifecyclePolicyDetailFilterTypeCount, + } +} + +const ( + // LifecyclePolicyResourceTypeAmiImage is a LifecyclePolicyResourceType enum value + LifecyclePolicyResourceTypeAmiImage = "AMI_IMAGE" + + // LifecyclePolicyResourceTypeContainerImage is a LifecyclePolicyResourceType enum value + LifecyclePolicyResourceTypeContainerImage = "CONTAINER_IMAGE" +) + +// LifecyclePolicyResourceType_Values returns all elements of the LifecyclePolicyResourceType enum +func LifecyclePolicyResourceType_Values() []string { + return []string{ + LifecyclePolicyResourceTypeAmiImage, + LifecyclePolicyResourceTypeContainerImage, + } +} + +const ( + // LifecyclePolicyStatusDisabled is a LifecyclePolicyStatus enum value + LifecyclePolicyStatusDisabled = "DISABLED" + + // LifecyclePolicyStatusEnabled is a LifecyclePolicyStatus enum value + LifecyclePolicyStatusEnabled = "ENABLED" +) + +// LifecyclePolicyStatus_Values returns all elements of the LifecyclePolicyStatus enum +func LifecyclePolicyStatus_Values() []string { + return []string{ + LifecyclePolicyStatusDisabled, + LifecyclePolicyStatusEnabled, + } +} + +const ( + // LifecyclePolicyTimeUnitDays is a LifecyclePolicyTimeUnit enum value + LifecyclePolicyTimeUnitDays = "DAYS" + + // LifecyclePolicyTimeUnitWeeks is a LifecyclePolicyTimeUnit enum value + LifecyclePolicyTimeUnitWeeks = "WEEKS" + + // LifecyclePolicyTimeUnitMonths is a LifecyclePolicyTimeUnit enum value + LifecyclePolicyTimeUnitMonths = "MONTHS" + + // LifecyclePolicyTimeUnitYears is a LifecyclePolicyTimeUnit enum value + LifecyclePolicyTimeUnitYears = "YEARS" +) + +// LifecyclePolicyTimeUnit_Values returns all elements of the LifecyclePolicyTimeUnit enum +func LifecyclePolicyTimeUnit_Values() []string { + return []string{ + LifecyclePolicyTimeUnitDays, + LifecyclePolicyTimeUnitWeeks, + LifecyclePolicyTimeUnitMonths, + LifecyclePolicyTimeUnitYears, + } +} + +const ( // OwnershipSelf is a Ownership enum value OwnershipSelf = "Self" @@ -21641,6 +25740,30 @@ } } +const ( + // ResourceStatusAvailable is a ResourceStatus enum value + ResourceStatusAvailable = "AVAILABLE" + + // ResourceStatusDeleted is a ResourceStatus enum value + ResourceStatusDeleted = "DELETED" + + // ResourceStatusDeprecated is a ResourceStatus enum value + ResourceStatusDeprecated = "DEPRECATED" + + // ResourceStatusDisabled is a ResourceStatus enum value + ResourceStatusDisabled = "DISABLED" +) + +// ResourceStatus_Values returns all elements of the ResourceStatus enum +func ResourceStatus_Values() []string { + return []string{ + ResourceStatusAvailable, + ResourceStatusDeleted, + ResourceStatusDeprecated, + ResourceStatusDisabled, + } +} + const ( // WorkflowExecutionStatusPending is a WorkflowExecutionStatus enum value WorkflowExecutionStatusPending = "PENDING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/imagebuilder/imagebuilderiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/imagebuilder/imagebuilderiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/imagebuilder/imagebuilderiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/imagebuilder/imagebuilderiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ CancelImageCreationWithContext(aws.Context, *imagebuilder.CancelImageCreationInput, ...request.Option) (*imagebuilder.CancelImageCreationOutput, error) CancelImageCreationRequest(*imagebuilder.CancelImageCreationInput) (*request.Request, *imagebuilder.CancelImageCreationOutput) + CancelLifecycleExecution(*imagebuilder.CancelLifecycleExecutionInput) (*imagebuilder.CancelLifecycleExecutionOutput, error) + CancelLifecycleExecutionWithContext(aws.Context, *imagebuilder.CancelLifecycleExecutionInput, ...request.Option) (*imagebuilder.CancelLifecycleExecutionOutput, error) + CancelLifecycleExecutionRequest(*imagebuilder.CancelLifecycleExecutionInput) (*request.Request, *imagebuilder.CancelLifecycleExecutionOutput) + CreateComponent(*imagebuilder.CreateComponentInput) (*imagebuilder.CreateComponentOutput, error) CreateComponentWithContext(aws.Context, *imagebuilder.CreateComponentInput, ...request.Option) (*imagebuilder.CreateComponentOutput, error) CreateComponentRequest(*imagebuilder.CreateComponentInput) (*request.Request, *imagebuilder.CreateComponentOutput) @@ -92,6 +96,10 @@ CreateInfrastructureConfigurationWithContext(aws.Context, *imagebuilder.CreateInfrastructureConfigurationInput, ...request.Option) (*imagebuilder.CreateInfrastructureConfigurationOutput, error) CreateInfrastructureConfigurationRequest(*imagebuilder.CreateInfrastructureConfigurationInput) (*request.Request, *imagebuilder.CreateInfrastructureConfigurationOutput) + CreateLifecyclePolicy(*imagebuilder.CreateLifecyclePolicyInput) (*imagebuilder.CreateLifecyclePolicyOutput, error) + CreateLifecyclePolicyWithContext(aws.Context, *imagebuilder.CreateLifecyclePolicyInput, ...request.Option) (*imagebuilder.CreateLifecyclePolicyOutput, error) + CreateLifecyclePolicyRequest(*imagebuilder.CreateLifecyclePolicyInput) (*request.Request, *imagebuilder.CreateLifecyclePolicyOutput) + DeleteComponent(*imagebuilder.DeleteComponentInput) (*imagebuilder.DeleteComponentOutput, error) DeleteComponentWithContext(aws.Context, *imagebuilder.DeleteComponentInput, ...request.Option) (*imagebuilder.DeleteComponentOutput, error) DeleteComponentRequest(*imagebuilder.DeleteComponentInput) (*request.Request, *imagebuilder.DeleteComponentOutput) @@ -120,6 +128,10 @@ DeleteInfrastructureConfigurationWithContext(aws.Context, *imagebuilder.DeleteInfrastructureConfigurationInput, ...request.Option) (*imagebuilder.DeleteInfrastructureConfigurationOutput, error) DeleteInfrastructureConfigurationRequest(*imagebuilder.DeleteInfrastructureConfigurationInput) (*request.Request, *imagebuilder.DeleteInfrastructureConfigurationOutput) + DeleteLifecyclePolicy(*imagebuilder.DeleteLifecyclePolicyInput) (*imagebuilder.DeleteLifecyclePolicyOutput, error) + DeleteLifecyclePolicyWithContext(aws.Context, *imagebuilder.DeleteLifecyclePolicyInput, ...request.Option) (*imagebuilder.DeleteLifecyclePolicyOutput, error) + DeleteLifecyclePolicyRequest(*imagebuilder.DeleteLifecyclePolicyInput) (*request.Request, *imagebuilder.DeleteLifecyclePolicyOutput) + GetComponent(*imagebuilder.GetComponentInput) (*imagebuilder.GetComponentOutput, error) GetComponentWithContext(aws.Context, *imagebuilder.GetComponentInput, ...request.Option) (*imagebuilder.GetComponentOutput, error) GetComponentRequest(*imagebuilder.GetComponentInput) (*request.Request, *imagebuilder.GetComponentOutput) @@ -164,6 +176,14 @@ GetInfrastructureConfigurationWithContext(aws.Context, *imagebuilder.GetInfrastructureConfigurationInput, ...request.Option) (*imagebuilder.GetInfrastructureConfigurationOutput, error) GetInfrastructureConfigurationRequest(*imagebuilder.GetInfrastructureConfigurationInput) (*request.Request, *imagebuilder.GetInfrastructureConfigurationOutput) + GetLifecycleExecution(*imagebuilder.GetLifecycleExecutionInput) (*imagebuilder.GetLifecycleExecutionOutput, error) + GetLifecycleExecutionWithContext(aws.Context, *imagebuilder.GetLifecycleExecutionInput, ...request.Option) (*imagebuilder.GetLifecycleExecutionOutput, error) + GetLifecycleExecutionRequest(*imagebuilder.GetLifecycleExecutionInput) (*request.Request, *imagebuilder.GetLifecycleExecutionOutput) + + GetLifecyclePolicy(*imagebuilder.GetLifecyclePolicyInput) (*imagebuilder.GetLifecyclePolicyOutput, error) + GetLifecyclePolicyWithContext(aws.Context, *imagebuilder.GetLifecyclePolicyInput, ...request.Option) (*imagebuilder.GetLifecyclePolicyOutput, error) + GetLifecyclePolicyRequest(*imagebuilder.GetLifecyclePolicyInput) (*request.Request, *imagebuilder.GetLifecyclePolicyOutput) + GetWorkflowExecution(*imagebuilder.GetWorkflowExecutionInput) (*imagebuilder.GetWorkflowExecutionOutput, error) GetWorkflowExecutionWithContext(aws.Context, *imagebuilder.GetWorkflowExecutionInput, ...request.Option) (*imagebuilder.GetWorkflowExecutionOutput, error) GetWorkflowExecutionRequest(*imagebuilder.GetWorkflowExecutionInput) (*request.Request, *imagebuilder.GetWorkflowExecutionOutput) @@ -271,6 +291,27 @@ ListInfrastructureConfigurationsPages(*imagebuilder.ListInfrastructureConfigurationsInput, func(*imagebuilder.ListInfrastructureConfigurationsOutput, bool) bool) error ListInfrastructureConfigurationsPagesWithContext(aws.Context, *imagebuilder.ListInfrastructureConfigurationsInput, func(*imagebuilder.ListInfrastructureConfigurationsOutput, bool) bool, ...request.Option) error + ListLifecycleExecutionResources(*imagebuilder.ListLifecycleExecutionResourcesInput) (*imagebuilder.ListLifecycleExecutionResourcesOutput, error) + ListLifecycleExecutionResourcesWithContext(aws.Context, *imagebuilder.ListLifecycleExecutionResourcesInput, ...request.Option) (*imagebuilder.ListLifecycleExecutionResourcesOutput, error) + ListLifecycleExecutionResourcesRequest(*imagebuilder.ListLifecycleExecutionResourcesInput) (*request.Request, *imagebuilder.ListLifecycleExecutionResourcesOutput) + + ListLifecycleExecutionResourcesPages(*imagebuilder.ListLifecycleExecutionResourcesInput, func(*imagebuilder.ListLifecycleExecutionResourcesOutput, bool) bool) error + ListLifecycleExecutionResourcesPagesWithContext(aws.Context, *imagebuilder.ListLifecycleExecutionResourcesInput, func(*imagebuilder.ListLifecycleExecutionResourcesOutput, bool) bool, ...request.Option) error + + ListLifecycleExecutions(*imagebuilder.ListLifecycleExecutionsInput) (*imagebuilder.ListLifecycleExecutionsOutput, error) + ListLifecycleExecutionsWithContext(aws.Context, *imagebuilder.ListLifecycleExecutionsInput, ...request.Option) (*imagebuilder.ListLifecycleExecutionsOutput, error) + ListLifecycleExecutionsRequest(*imagebuilder.ListLifecycleExecutionsInput) (*request.Request, *imagebuilder.ListLifecycleExecutionsOutput) + + ListLifecycleExecutionsPages(*imagebuilder.ListLifecycleExecutionsInput, func(*imagebuilder.ListLifecycleExecutionsOutput, bool) bool) error + ListLifecycleExecutionsPagesWithContext(aws.Context, *imagebuilder.ListLifecycleExecutionsInput, func(*imagebuilder.ListLifecycleExecutionsOutput, bool) bool, ...request.Option) error + + ListLifecyclePolicies(*imagebuilder.ListLifecyclePoliciesInput) (*imagebuilder.ListLifecyclePoliciesOutput, error) + ListLifecyclePoliciesWithContext(aws.Context, *imagebuilder.ListLifecyclePoliciesInput, ...request.Option) (*imagebuilder.ListLifecyclePoliciesOutput, error) + ListLifecyclePoliciesRequest(*imagebuilder.ListLifecyclePoliciesInput) (*request.Request, *imagebuilder.ListLifecyclePoliciesOutput) + + ListLifecyclePoliciesPages(*imagebuilder.ListLifecyclePoliciesInput, func(*imagebuilder.ListLifecyclePoliciesOutput, bool) bool) error + ListLifecyclePoliciesPagesWithContext(aws.Context, *imagebuilder.ListLifecyclePoliciesInput, func(*imagebuilder.ListLifecyclePoliciesOutput, bool) bool, ...request.Option) error + ListTagsForResource(*imagebuilder.ListTagsForResourceInput) (*imagebuilder.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *imagebuilder.ListTagsForResourceInput, ...request.Option) (*imagebuilder.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*imagebuilder.ListTagsForResourceInput) (*request.Request, *imagebuilder.ListTagsForResourceOutput) @@ -309,6 +350,10 @@ StartImagePipelineExecutionWithContext(aws.Context, *imagebuilder.StartImagePipelineExecutionInput, ...request.Option) (*imagebuilder.StartImagePipelineExecutionOutput, error) StartImagePipelineExecutionRequest(*imagebuilder.StartImagePipelineExecutionInput) (*request.Request, *imagebuilder.StartImagePipelineExecutionOutput) + StartResourceStateUpdate(*imagebuilder.StartResourceStateUpdateInput) (*imagebuilder.StartResourceStateUpdateOutput, error) + StartResourceStateUpdateWithContext(aws.Context, *imagebuilder.StartResourceStateUpdateInput, ...request.Option) (*imagebuilder.StartResourceStateUpdateOutput, error) + StartResourceStateUpdateRequest(*imagebuilder.StartResourceStateUpdateInput) (*request.Request, *imagebuilder.StartResourceStateUpdateOutput) + TagResource(*imagebuilder.TagResourceInput) (*imagebuilder.TagResourceOutput, error) TagResourceWithContext(aws.Context, *imagebuilder.TagResourceInput, ...request.Option) (*imagebuilder.TagResourceOutput, error) TagResourceRequest(*imagebuilder.TagResourceInput) (*request.Request, *imagebuilder.TagResourceOutput) @@ -328,6 +373,10 @@ UpdateInfrastructureConfiguration(*imagebuilder.UpdateInfrastructureConfigurationInput) (*imagebuilder.UpdateInfrastructureConfigurationOutput, error) UpdateInfrastructureConfigurationWithContext(aws.Context, *imagebuilder.UpdateInfrastructureConfigurationInput, ...request.Option) (*imagebuilder.UpdateInfrastructureConfigurationOutput, error) UpdateInfrastructureConfigurationRequest(*imagebuilder.UpdateInfrastructureConfigurationInput) (*request.Request, *imagebuilder.UpdateInfrastructureConfigurationOutput) + + UpdateLifecyclePolicy(*imagebuilder.UpdateLifecyclePolicyInput) (*imagebuilder.UpdateLifecyclePolicyOutput, error) + UpdateLifecyclePolicyWithContext(aws.Context, *imagebuilder.UpdateLifecyclePolicyInput, ...request.Option) (*imagebuilder.UpdateLifecyclePolicyOutput, error) + UpdateLifecyclePolicyRequest(*imagebuilder.UpdateLifecyclePolicyInput) (*request.Request, *imagebuilder.UpdateLifecyclePolicyOutput) } var _ ImagebuilderAPI = (*imagebuilder.Imagebuilder)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/inspector2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/inspector2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/inspector2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/inspector2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -889,7 +889,8 @@ // CreateFilter API operation for Inspector2. // -// Creates a filter resource using specified filter criteria. +// Creates a filter resource using specified filter criteria. When the filter +// action is set to SUPPRESS this action creates a suppression rule. // // 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 @@ -7718,7 +7719,9 @@ // for. The values can be AWS_EC2_INSTANCE, AWS_LAMBDA_FUNCTION or AWS_ECR_REPOSITORY. ResourceType []*CoverageStringFilter `locationName:"resourceType" min:"1" type:"list"` - // The scan status code to filter on. + // The scan status code to filter on. Valid values are: ValidationException, + // InternalServerException, ResourceNotFoundException, BadRequestException, + // and ThrottlingException. ScanStatusCode []*CoverageStringFilter `locationName:"scanStatusCode" min:"1" type:"list"` // The scan status reason to filter on. @@ -11571,12 +11574,18 @@ // Remediation is a required field Remediation *Remediation `locationName:"remediation" type:"structure" required:"true"` - // Contains information on the resources involved in a finding. + // Contains information on the resources involved in a finding. The resource + // value determines the valid values for type in your request. For more information, + // see Finding types (https://docs.aws.amazon.com/inspector/latest/user/findings-types.html) + // in the Amazon Inspector user guide. // // Resources is a required field Resources []*Resource `locationName:"resources" min:"1" type:"list" required:"true"` - // The severity of the finding. + // The severity of the finding. UNTRIAGED applies to PACKAGE_VULNERABILITY type + // findings that the vendor has not assigned a severity yet. For more information, + // see Severity levels for findings (https://docs.aws.amazon.com/inspector/latest/user/findings-understanding-severity.html) + // in the Amazon Inspector user guide. // // Severity is a required field Severity *string `locationName:"severity" type:"string" required:"true" enum:"Severity"` @@ -11589,7 +11598,9 @@ // The title of the finding. Title *string `locationName:"title" min:"1" type:"string"` - // The type of the finding. + // The type of the finding. The type value determines the valid values for resource + // in your request. For more information, see Finding types (https://docs.aws.amazon.com/inspector/latest/user/findings-types.html) + // in the Amazon Inspector user guide. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"FindingType"` @@ -13618,13 +13629,16 @@ type ListAccountPermissionsInput struct { _ struct{} `type:"structure"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the NextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` // The service scan type to check permissions for. @@ -13732,13 +13746,16 @@ // for your environment. FilterCriteria *CoverageFilterCriteria `locationName:"filterCriteria" type:"structure"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` } @@ -13964,13 +13981,16 @@ type ListDelegatedAdminAccountsInput struct { _ struct{} `type:"structure"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` } @@ -14069,13 +14089,16 @@ // The Amazon resource number (ARN) of the filter. Arns []*string `locationName:"arns" type:"list"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` } @@ -14195,13 +14218,16 @@ // AggregationType is a required field AggregationType *string `locationName:"aggregationType" type:"string" required:"true" enum:"AggregationType"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` } @@ -14347,13 +14373,16 @@ // Details on the filters to apply to your finding results. FilterCriteria *FilterCriteria `locationName:"filterCriteria" type:"structure"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` // Details on the sort criteria to apply to your finding results. @@ -14471,13 +14500,16 @@ type ListMembersInput struct { _ struct{} `type:"structure"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" type:"string"` // Specifies whether to list only currently associated members if True or to @@ -14661,13 +14693,16 @@ // The Amazon Web Services account IDs to retrieve usage totals for. AccountIds []*string `locationName:"accountIds" min:"1" type:"list"` - // The maximum number of results to return in the response. + // The maximum number of results the response can return. If your request would + // return more than the maximum the response will return a nextToken value, + // use this value when you call the action again to get the remaining results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // A token to use for paginating results that are returned in the response. // Set the value of this parameter to null for the first request to a list action. - // For subsequent calls, use the NextToken value returned from the previous - // request to continue listing results after the first page. + // If your response returns more than the maxResults maximum value it will also + // return a nextToken value. For subsequent calls, use the nextToken value returned + // from the previous request to continue listing results after the first page. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } @@ -16689,7 +16724,99 @@ type ScanStatus struct { _ struct{} `type:"structure"` - // The reason for the scan. + // The scan status. Possible return values and descriptions are: + // + // PENDING_INITIAL_SCAN - This resource has been identified for scanning, results + // will be available soon. + // + // ACCESS_DENIED - Resource access policy restricting Amazon Inspector access. + // Please update the IAM policy. + // + // INTERNAL_ERROR - Amazon Inspector has encountered an internal error for this + // resource. Amazon Inspector service will automatically resolve the issue and + // resume the scanning. No action required from the user. + // + // UNMANAGED_EC2_INSTANCE - The EC2 instance is not managed by SSM, please use + // the following SSM automation to remediate the issue: https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/automation-awssupport-troubleshoot-managed-instance.html + // (https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/automation-awssupport-troubleshoot-managed-instance.html). + // Once the instance becomes managed by SSM, Inspector will automatically begin + // scanning this instance. + // + // UNSUPPORTED_OS - Amazon Inspector does not support this OS, architecture, + // or image manifest type at this time. To see a complete list of supported + // operating systems see: https://docs.aws.amazon.com/inspector/latest/user/supported.html + // (https://docs.aws.amazon.com/inspector/latest/user/supported.html). + // + // SCAN_ELIGIBILITY_EXPIRED - The configured scan duration has lapsed for this + // image. + // + // RESOURCE_TERMINATED - This resource has been terminated. The findings and + // coverage associated with this resource are in the process of being cleaned + // up. + // + // SUCCESSFUL - The scan was successful. + // + // NO_RESOURCES_FOUND - Reserved for future use. + // + // IMAGE_SIZE_EXCEEDED - Reserved for future use. + // + // SCAN_FREQUENCY_MANUAL - This image will not be covered by Amazon Inspector + // due to the repository scan frequency configuration. + // + // SCAN_FREQUENCY_SCAN_ON_PUSH - This image will be scanned one time and will + // not new findings because of the scan frequency configuration. + // + // EC2_INSTANCE_STOPPED - This EC2 instance is in a stopped state, therefore, + // Amazon Inspector will pause scanning. The existing findings will continue + // to exist until the instance is terminated. Once the instance is re-started, + // Inspector will automatically start scanning the instance again. Please note + // that you will not be charged for this instance while it’s in a stopped + // state. + // + // PENDING_DISABLE - This resource is pending cleanup during disablement. The + // customer will not be billed while a resource is in the pending disable status. + // + // NO INVENTORY - Amazon Inspector couldn’t find software application inventory + // to scan for vulnerabilities. This might be caused due to required Amazon + // Inspector associations being deleted or failing to run on your resource. + // Please verify the status of InspectorInventoryCollection-do-not-delete association + // in the SSM console for the resource. Additionally, you can verify the instance’s + // inventory in the SSM Fleet Manager console. + // + // STALE_INVENTORY - Amazon Inspector wasn’t able to collect an updated software + // application inventory in the last 7 days. Please confirm the required Amazon + // Inspector associations still exist and you can still see an updated inventory + // in the SSM console. + // + // EXCLUDED_BY_TAG - This resource was not scanned because it has been excluded + // by a tag. + // + // UNSUPPORTED_RUNTIME - The function was not scanned because it has an unsupported + // runtime. To see a complete list of supported runtimes see: https://docs.aws.amazon.com/inspector/latest/user/supported.html + // (https://docs.aws.amazon.com/inspector/latest/user/supported.html). + // + // UNSUPPORTED_MEDIA_TYPE - The ECR image has an unsupported media type. + // + // UNSUPPORTED_CONFIG_FILE - Reserved for future use. + // + // DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED - The instance has exceeded + // the 5000 package limit for Amazon Inspector Deep inspection. To resume Deep + // inspection for this instance you can try to adjust the custom paths associated + // with the account. + // + // DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED - The SSM agent couldn't + // send inventory to Amazon Inspector because the SSM quota for Inventory data + // collected per instance per day has already been reached for this instance. + // + // DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED - Amazon Inspector failed + // to extract the package inventory because the package collection time exceeding + // the maximum threshold of 15 minutes. + // + // DEEP_INSPECTION_NO_INVENTORY The Amazon Inspector plugin hasn't yet been + // able to collect an inventory of packages for this instance. This is usually + // the result of a pending scan, however, if this status persists after 6 hours, + // use SSM to ensure that the required Amazon Inspector associations exist and + // are running for the instance. // // Reason is a required field Reason *string `locationName:"reason" type:"string" required:"true" enum:"ScanStatusReason"` @@ -18530,7 +18657,8 @@ // A list of related vulnerabilities. RelatedVulnerabilities []*string `locationName:"relatedVulnerabilities" type:"list"` - // The source of the vulnerability information. + // The source of the vulnerability information. Possible results are RHEL, AMAZON_CVE, + // DEBIAN or NVD. Source *string `locationName:"source" type:"string" enum:"VulnerabilitySource"` // A link to the official source material for this vulnerability. @@ -19126,6 +19254,9 @@ // Ec2PlatformUnknown is a Ec2Platform enum value Ec2PlatformUnknown = "UNKNOWN" + + // Ec2PlatformMacos is a Ec2Platform enum value + Ec2PlatformMacos = "MACOS" ) // Ec2Platform_Values returns all elements of the Ec2Platform enum @@ -19134,6 +19265,7 @@ Ec2PlatformWindows, Ec2PlatformLinux, Ec2PlatformUnknown, + Ec2PlatformMacos, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/inspector2/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/inspector2/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/inspector2/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/inspector2/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,8 +4,8 @@ // requests to Inspector2. // // Amazon Inspector is a vulnerability discovery service that automates continuous -// scanning for security vulnerabilities within your Amazon EC2 and Amazon ECR -// environments. +// scanning for security vulnerabilities within your Amazon EC2, Amazon ECR, +// and Amazon Web Services Lambda environments. // // See https://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/internetmonitor/api.go golang-github-aws-aws-sdk-go-1.48.14/service/internetmonitor/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/internetmonitor/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/internetmonitor/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -402,6 +402,264 @@ return out, req.Send() } +const opGetQueryResults = "GetQueryResults" + +// GetQueryResultsRequest generates a "aws/request.Request" representing the +// client's request for the GetQueryResults 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 GetQueryResults for more information on using the GetQueryResults +// 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 GetQueryResultsRequest method. +// req, resp := client.GetQueryResultsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/GetQueryResults +func (c *InternetMonitor) GetQueryResultsRequest(input *GetQueryResultsInput) (req *request.Request, output *GetQueryResultsOutput) { + op := &request.Operation{ + Name: opGetQueryResults, + HTTPMethod: "GET", + HTTPPath: "/v20210603/Monitors/{MonitorName}/Queries/{QueryId}/Results", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetQueryResultsInput{} + } + + output = &GetQueryResultsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetQueryResults API operation for Amazon CloudWatch Internet Monitor. +// +// Return the data for a query with the Amazon CloudWatch Internet Monitor query +// interface. Specify the query that you want to return results for by providing +// a QueryId and a monitor name. +// +// For more information about using the query interface, including examples, +// see Using the Amazon CloudWatch Internet Monitor query interface (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html) +// in the Amazon CloudWatch Internet Monitor User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Internet Monitor's +// API operation GetQueryResults for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error occurred. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - LimitExceededException +// The request exceeded a service quota. +// +// - ValidationException +// Invalid request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/GetQueryResults +func (c *InternetMonitor) GetQueryResults(input *GetQueryResultsInput) (*GetQueryResultsOutput, error) { + req, out := c.GetQueryResultsRequest(input) + return out, req.Send() +} + +// GetQueryResultsWithContext is the same as GetQueryResults with the addition of +// the ability to pass a context and additional request options. +// +// See GetQueryResults 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 *InternetMonitor) GetQueryResultsWithContext(ctx aws.Context, input *GetQueryResultsInput, opts ...request.Option) (*GetQueryResultsOutput, error) { + req, out := c.GetQueryResultsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetQueryResultsPages iterates over the pages of a GetQueryResults operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetQueryResults 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 GetQueryResults operation. +// pageNum := 0 +// err := client.GetQueryResultsPages(params, +// func(page *internetmonitor.GetQueryResultsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *InternetMonitor) GetQueryResultsPages(input *GetQueryResultsInput, fn func(*GetQueryResultsOutput, bool) bool) error { + return c.GetQueryResultsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetQueryResultsPagesWithContext same as GetQueryResultsPages 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 *InternetMonitor) GetQueryResultsPagesWithContext(ctx aws.Context, input *GetQueryResultsInput, fn func(*GetQueryResultsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetQueryResultsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetQueryResultsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetQueryResultsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opGetQueryStatus = "GetQueryStatus" + +// GetQueryStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetQueryStatus 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 GetQueryStatus for more information on using the GetQueryStatus +// 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 GetQueryStatusRequest method. +// req, resp := client.GetQueryStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/GetQueryStatus +func (c *InternetMonitor) GetQueryStatusRequest(input *GetQueryStatusInput) (req *request.Request, output *GetQueryStatusOutput) { + op := &request.Operation{ + Name: opGetQueryStatus, + HTTPMethod: "GET", + HTTPPath: "/v20210603/Monitors/{MonitorName}/Queries/{QueryId}/Status", + } + + if input == nil { + input = &GetQueryStatusInput{} + } + + output = &GetQueryStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetQueryStatus API operation for Amazon CloudWatch Internet Monitor. +// +// Returns the current status of a query for the Amazon CloudWatch Internet +// Monitor query interface, for a specified query ID and monitor. When you run +// a query, check the status to make sure that the query has SUCCEEDED before +// you review the results. +// +// - QUEUED: The query is scheduled to run. +// +// - RUNNING: The query is in progress but not complete. +// +// - SUCCEEDED: The query completed sucessfully. +// +// - FAILED: The query failed due to an error. +// +// - CANCELED: The query was canceled. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Internet Monitor's +// API operation GetQueryStatus for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error occurred. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - LimitExceededException +// The request exceeded a service quota. +// +// - ValidationException +// Invalid request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/GetQueryStatus +func (c *InternetMonitor) GetQueryStatus(input *GetQueryStatusInput) (*GetQueryStatusOutput, error) { + req, out := c.GetQueryStatusRequest(input) + return out, req.Send() +} + +// GetQueryStatusWithContext is the same as GetQueryStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetQueryStatus 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 *InternetMonitor) GetQueryStatusWithContext(ctx aws.Context, input *GetQueryStatusInput, opts ...request.Option) (*GetQueryStatusOutput, error) { + req, out := c.GetQueryStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListHealthEvents = "ListHealthEvents" // ListHealthEventsRequest generates a "aws/request.Request" representing the @@ -790,6 +1048,196 @@ return out, req.Send() } +const opStartQuery = "StartQuery" + +// StartQueryRequest generates a "aws/request.Request" representing the +// client's request for the StartQuery 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 StartQuery for more information on using the StartQuery +// 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 StartQueryRequest method. +// req, resp := client.StartQueryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/StartQuery +func (c *InternetMonitor) StartQueryRequest(input *StartQueryInput) (req *request.Request, output *StartQueryOutput) { + op := &request.Operation{ + Name: opStartQuery, + HTTPMethod: "POST", + HTTPPath: "/v20210603/Monitors/{MonitorName}/Queries", + } + + if input == nil { + input = &StartQueryInput{} + } + + output = &StartQueryOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartQuery API operation for Amazon CloudWatch Internet Monitor. +// +// Start a query to return data for a specific query type for the Amazon CloudWatch +// Internet Monitor query interface. Specify a time period for the data that +// you want returned by using StartTime and EndTime. You filter the query results +// to return by providing parameters that you specify with FilterParameters. +// +// For more information about using the query interface, including examples, +// see Using the Amazon CloudWatch Internet Monitor query interface (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html) +// in the Amazon CloudWatch Internet Monitor User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Internet Monitor's +// API operation StartQuery for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error occurred. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - LimitExceededException +// The request exceeded a service quota. +// +// - ValidationException +// Invalid request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/StartQuery +func (c *InternetMonitor) StartQuery(input *StartQueryInput) (*StartQueryOutput, error) { + req, out := c.StartQueryRequest(input) + return out, req.Send() +} + +// StartQueryWithContext is the same as StartQuery with the addition of +// the ability to pass a context and additional request options. +// +// See StartQuery 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 *InternetMonitor) StartQueryWithContext(ctx aws.Context, input *StartQueryInput, opts ...request.Option) (*StartQueryOutput, error) { + req, out := c.StartQueryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopQuery = "StopQuery" + +// StopQueryRequest generates a "aws/request.Request" representing the +// client's request for the StopQuery 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 StopQuery for more information on using the StopQuery +// 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 StopQueryRequest method. +// req, resp := client.StopQueryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/StopQuery +func (c *InternetMonitor) StopQueryRequest(input *StopQueryInput) (req *request.Request, output *StopQueryOutput) { + op := &request.Operation{ + Name: opStopQuery, + HTTPMethod: "DELETE", + HTTPPath: "/v20210603/Monitors/{MonitorName}/Queries/{QueryId}", + } + + if input == nil { + input = &StopQueryInput{} + } + + output = &StopQueryOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StopQuery API operation for Amazon CloudWatch Internet Monitor. +// +// Stop a query that is progress for a specific monitor. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Internet Monitor's +// API operation StopQuery for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error occurred. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - LimitExceededException +// The request exceeded a service quota. +// +// - ValidationException +// Invalid request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/StopQuery +func (c *InternetMonitor) StopQuery(input *StopQueryInput) (*StopQueryOutput, error) { + req, out := c.StopQueryRequest(input) + return out, req.Send() +} + +// StopQueryWithContext is the same as StopQuery with the addition of +// the ability to pass a context and additional request options. +// +// See StopQuery 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 *InternetMonitor) StopQueryWithContext(ctx aws.Context, input *StopQueryInput, opts ...request.Option) (*StopQueryOutput, error) { + req, out := c.StopQueryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -1643,10 +2091,81 @@ return s.String() } +// A filter that you use with the results of a Amazon CloudWatch Internet Monitor +// query that you created and ran. The query sets up a repository of data that +// is a subset of your application's Internet Monitor data. FilterParameter +// is a string that defines how you want to filter the repository of data to +// return a set of results, based on your criteria. +// +// The filter parameters that you can specify depend on the query type that +// you used to create the repository, since each query type returns a different +// set of Internet Monitor data. +// +// For each filter, you specify a field (such as city), an operator (such as +// not_equals, and a value or array of values (such as ["Seattle", "Redmond"]). +// Separate values in the array with commas. +// +// For more information about specifying filter parameters, see Using the Amazon +// CloudWatch Internet Monitor query interface (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html) +// in the Amazon CloudWatch Internet Monitor User Guide. +type FilterParameter struct { + _ struct{} `type:"structure"` + + // A data field that you want to filter, to further scope your application's + // Internet Monitor data in a repository that you created by running a query. + // A field might be city, for example. The field must be one of the fields that + // was returned by the specific query that you used to create the repository. + Field *string `type:"string"` + + // The operator to use with the filter field and a value, such as not_equals. + Operator *string `type:"string" enum:"Operator"` + + // One or more values to be used, together with the specified operator, to filter + // data for a query. For example, you could specify an array of values such + // as ["Seattle", "Redmond"]. Values in the array are separated by commas. + Values []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterParameter) GoString() string { + return s.String() +} + +// SetField sets the Field field's value. +func (s *FilterParameter) SetField(v string) *FilterParameter { + s.Field = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *FilterParameter) SetOperator(v string) *FilterParameter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *FilterParameter) SetValues(v []*string) *FilterParameter { + s.Values = v + return s +} + type GetHealthEventInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The internally generated identifier of a health event. Because EventID contains + // The internally-generated identifier of a health event. Because EventID contains // the forward slash (“/”) character, you must URL-encode the EventID field // in the request URL. // @@ -1726,7 +2245,7 @@ // EventArn is a required field EventArn *string `min:"20" type:"string" required:"true"` - // The internally generated identifier of a health event. + // The internally-generated identifier of a health event. // // EventId is a required field EventId *string `min:"1" type:"string" required:"true"` @@ -2077,6 +2596,253 @@ return s } +type GetQueryResultsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The number of query results that you want to return with this call. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The name of the monitor to return data for. + // + // MonitorName is a required field + MonitorName *string `location:"uri" locationName:"MonitorName" min:"1" type:"string" required:"true"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // The ID of the query that you want to return data results for. A QueryId is + // an internally-generated identifier for a specific query. + // + // QueryId is a required field + QueryId *string `location:"uri" locationName:"QueryId" 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 GetQueryResultsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQueryResultsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetQueryResultsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetQueryResultsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.MonitorName == nil { + invalidParams.Add(request.NewErrParamRequired("MonitorName")) + } + if s.MonitorName != nil && len(*s.MonitorName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MonitorName", 1)) + } + if s.QueryId == nil { + invalidParams.Add(request.NewErrParamRequired("QueryId")) + } + if s.QueryId != nil && len(*s.QueryId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QueryId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetQueryResultsInput) SetMaxResults(v int64) *GetQueryResultsInput { + s.MaxResults = &v + return s +} + +// SetMonitorName sets the MonitorName field's value. +func (s *GetQueryResultsInput) SetMonitorName(v string) *GetQueryResultsInput { + s.MonitorName = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetQueryResultsInput) SetNextToken(v string) *GetQueryResultsInput { + s.NextToken = &v + return s +} + +// SetQueryId sets the QueryId field's value. +func (s *GetQueryResultsInput) SetQueryId(v string) *GetQueryResultsInput { + s.QueryId = &v + return s +} + +type GetQueryResultsOutput struct { + _ struct{} `type:"structure"` + + // The data results that the query returns. Data is returned in arrays, aligned + // with the Fields for the query, which creates a repository of Amazon CloudWatch + // Internet Monitor information for your application. Then, you can filter the + // information in the repository by using FilterParameters that you define. + // + // Data is a required field + Data [][]*string `type:"list" required:"true"` + + // The fields that the query returns data for. Fields are name-data type pairs, + // such as availability_score-float. + // + // Fields is a required field + Fields []*QueryField `type:"list" required:"true"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQueryResultsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQueryResultsOutput) GoString() string { + return s.String() +} + +// SetData sets the Data field's value. +func (s *GetQueryResultsOutput) SetData(v [][]*string) *GetQueryResultsOutput { + s.Data = v + return s +} + +// SetFields sets the Fields field's value. +func (s *GetQueryResultsOutput) SetFields(v []*QueryField) *GetQueryResultsOutput { + s.Fields = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetQueryResultsOutput) SetNextToken(v string) *GetQueryResultsOutput { + s.NextToken = &v + return s +} + +type GetQueryStatusInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the monitor. + // + // MonitorName is a required field + MonitorName *string `location:"uri" locationName:"MonitorName" min:"1" type:"string" required:"true"` + + // The ID of the query that you want to return the status for. A QueryId is + // an internally-generated dentifier for a specific query. + // + // QueryId is a required field + QueryId *string `location:"uri" locationName:"QueryId" 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 GetQueryStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQueryStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetQueryStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetQueryStatusInput"} + if s.MonitorName == nil { + invalidParams.Add(request.NewErrParamRequired("MonitorName")) + } + if s.MonitorName != nil && len(*s.MonitorName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MonitorName", 1)) + } + if s.QueryId == nil { + invalidParams.Add(request.NewErrParamRequired("QueryId")) + } + if s.QueryId != nil && len(*s.QueryId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QueryId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMonitorName sets the MonitorName field's value. +func (s *GetQueryStatusInput) SetMonitorName(v string) *GetQueryStatusInput { + s.MonitorName = &v + return s +} + +// SetQueryId sets the QueryId field's value. +func (s *GetQueryStatusInput) SetQueryId(v string) *GetQueryStatusInput { + s.QueryId = &v + return s +} + +type GetQueryStatusOutput struct { + _ struct{} `type:"structure"` + + // The current status for a query. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"QueryStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQueryStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQueryStatusOutput) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *GetQueryStatusOutput) SetStatus(v string) *GetQueryStatusOutput { + s.Status = &v + return s +} + // Information about a health event created in a monitor in Amazon CloudWatch // Internet Monitor. type HealthEvent struct { @@ -2094,7 +2860,7 @@ // EventArn is a required field EventArn *string `min:"20" type:"string" required:"true"` - // The internally generated identifier of a specific network traffic impairment + // The internally-generated identifier of a specific network traffic impairment // health event. // // EventId is a required field @@ -3133,6 +3899,8 @@ // issue before Internet Monitor creates an event when a threshold is crossed // for a local health score. // +// If you don't set a local health event threshold, the default value is 60%. +// // For more information, see Change health event thresholds (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-overview.html#IMUpdateThresholdFromOverview) // in the Internet Monitor section of the CloudWatch User Guide. type LocalHealthEventsConfig struct { @@ -3144,6 +3912,9 @@ // The minimum percentage of overall traffic for an application that must be // impacted by an issue before Internet Monitor creates an event when a threshold // is crossed for a local health score. + // + // If you don't set a minimum traffic impact threshold, the default value is + // 0.01%. MinTrafficImpact *float64 `type:"double"` // The status of whether Internet Monitor creates a health event based on a @@ -3535,6 +4306,53 @@ return s } +// Defines a field to query for your application's Amazon CloudWatch Internet +// Monitor data. You create a data repository by running a query of a specific +// type. Each QueryType includes a specific set of fields and datatypes to retrieve +// data for. +type QueryField struct { + _ struct{} `type:"structure"` + + // The name of a field to query your application's Amazon CloudWatch Internet + // Monitor data for, such as availability_score. + Name *string `type:"string"` + + // The data type for a query field, which must correspond to the field you're + // defining for QueryField. For example, if the query field name is availability_score, + // the data type is float. + 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 QueryField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryField) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *QueryField) SetName(v string) *QueryField { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *QueryField) SetType(v string) *QueryField { + s.Type = &v + return s +} + // The request specifies a resource that doesn't exist. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -3719,6 +4537,249 @@ return s } +type StartQueryInput struct { + _ struct{} `type:"structure"` + + // The timestamp that is the end of the period that you want to retrieve data + // for with your query. + // + // EndTime is a required field + EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The FilterParameters field that you use with Amazon CloudWatch Internet Monitor + // queries is a string the defines how you want a query to be filtered. The + // filter parameters that you can specify depend on the query type, since each + // query type returns a different set of Internet Monitor data. + // + // For more information about specifying filter parameters, see Using the Amazon + // CloudWatch Internet Monitor query interface (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html) + // in the Amazon CloudWatch Internet Monitor User Guide. + FilterParameters []*FilterParameter `type:"list"` + + // The name of the monitor to query. + // + // MonitorName is a required field + MonitorName *string `location:"uri" locationName:"MonitorName" min:"1" type:"string" required:"true"` + + // The type of query to run. The following are the three types of queries that + // you can run using the Internet Monitor query interface: + // + // * MEASUREMENTS: TBD definition + // + // * TOP_LOCATIONS: TBD definition + // + // * TOP_LOCATION_DETAILS: TBD definition + // + // For lists of the fields returned with each query type and more information + // about how each type of query is performed, see Using the Amazon CloudWatch + // Internet Monitor query interface (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html) + // in the Amazon CloudWatch Internet Monitor User Guide. + // + // QueryType is a required field + QueryType *string `type:"string" required:"true" enum:"QueryType"` + + // The timestamp that is the beginning of the period that you want to retrieve + // data for with your query. + // + // StartTime is a required field + StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601" 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 StartQueryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartQueryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartQueryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartQueryInput"} + if s.EndTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndTime")) + } + if s.MonitorName == nil { + invalidParams.Add(request.NewErrParamRequired("MonitorName")) + } + if s.MonitorName != nil && len(*s.MonitorName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MonitorName", 1)) + } + if s.QueryType == nil { + invalidParams.Add(request.NewErrParamRequired("QueryType")) + } + if s.StartTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartTime")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndTime sets the EndTime field's value. +func (s *StartQueryInput) SetEndTime(v time.Time) *StartQueryInput { + s.EndTime = &v + return s +} + +// SetFilterParameters sets the FilterParameters field's value. +func (s *StartQueryInput) SetFilterParameters(v []*FilterParameter) *StartQueryInput { + s.FilterParameters = v + return s +} + +// SetMonitorName sets the MonitorName field's value. +func (s *StartQueryInput) SetMonitorName(v string) *StartQueryInput { + s.MonitorName = &v + return s +} + +// SetQueryType sets the QueryType field's value. +func (s *StartQueryInput) SetQueryType(v string) *StartQueryInput { + s.QueryType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *StartQueryInput) SetStartTime(v time.Time) *StartQueryInput { + s.StartTime = &v + return s +} + +type StartQueryOutput struct { + _ struct{} `type:"structure"` + + // The internally-generated identifier of a specific query. + // + // QueryId is a required field + QueryId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartQueryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartQueryOutput) GoString() string { + return s.String() +} + +// SetQueryId sets the QueryId field's value. +func (s *StartQueryOutput) SetQueryId(v string) *StartQueryOutput { + s.QueryId = &v + return s +} + +type StopQueryInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the monitor. + // + // MonitorName is a required field + MonitorName *string `location:"uri" locationName:"MonitorName" min:"1" type:"string" required:"true"` + + // The ID of the query that you want to stop. A QueryId is an internally-generated + // identifier for a specific query. + // + // QueryId is a required field + QueryId *string `location:"uri" locationName:"QueryId" 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 StopQueryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopQueryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopQueryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopQueryInput"} + if s.MonitorName == nil { + invalidParams.Add(request.NewErrParamRequired("MonitorName")) + } + if s.MonitorName != nil && len(*s.MonitorName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MonitorName", 1)) + } + if s.QueryId == nil { + invalidParams.Add(request.NewErrParamRequired("QueryId")) + } + if s.QueryId != nil && len(*s.QueryId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QueryId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMonitorName sets the MonitorName field's value. +func (s *StopQueryInput) SetMonitorName(v string) *StopQueryInput { + s.MonitorName = &v + return s +} + +// SetQueryId sets the QueryId field's value. +func (s *StopQueryInput) SetQueryId(v string) *StopQueryInput { + s.QueryId = &v + return s +} + +type StopQueryOutput 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 StopQueryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopQueryOutput) GoString() string { + return s.String() +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -4421,6 +5482,70 @@ } } +const ( + // OperatorEquals is a Operator enum value + OperatorEquals = "EQUALS" + + // OperatorNotEquals is a Operator enum value + OperatorNotEquals = "NOT_EQUALS" +) + +// Operator_Values returns all elements of the Operator enum +func Operator_Values() []string { + return []string{ + OperatorEquals, + OperatorNotEquals, + } +} + +const ( + // QueryStatusQueued is a QueryStatus enum value + QueryStatusQueued = "QUEUED" + + // QueryStatusRunning is a QueryStatus enum value + QueryStatusRunning = "RUNNING" + + // QueryStatusSucceeded is a QueryStatus enum value + QueryStatusSucceeded = "SUCCEEDED" + + // QueryStatusFailed is a QueryStatus enum value + QueryStatusFailed = "FAILED" + + // QueryStatusCanceled is a QueryStatus enum value + QueryStatusCanceled = "CANCELED" +) + +// QueryStatus_Values returns all elements of the QueryStatus enum +func QueryStatus_Values() []string { + return []string{ + QueryStatusQueued, + QueryStatusRunning, + QueryStatusSucceeded, + QueryStatusFailed, + QueryStatusCanceled, + } +} + +const ( + // QueryTypeMeasurements is a QueryType enum value + QueryTypeMeasurements = "MEASUREMENTS" + + // QueryTypeTopLocations is a QueryType enum value + QueryTypeTopLocations = "TOP_LOCATIONS" + + // QueryTypeTopLocationDetails is a QueryType enum value + QueryTypeTopLocationDetails = "TOP_LOCATION_DETAILS" +) + +// QueryType_Values returns all elements of the QueryType enum +func QueryType_Values() []string { + return []string{ + QueryTypeMeasurements, + QueryTypeTopLocations, + QueryTypeTopLocationDetails, + } +} + const ( // TriangulationEventTypeAws is a TriangulationEventType enum value TriangulationEventTypeAws = "AWS" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/internetmonitor/internetmonitoriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/internetmonitor/internetmonitoriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/internetmonitor/internetmonitoriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/internetmonitor/internetmonitoriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -76,6 +76,17 @@ GetMonitorWithContext(aws.Context, *internetmonitor.GetMonitorInput, ...request.Option) (*internetmonitor.GetMonitorOutput, error) GetMonitorRequest(*internetmonitor.GetMonitorInput) (*request.Request, *internetmonitor.GetMonitorOutput) + GetQueryResults(*internetmonitor.GetQueryResultsInput) (*internetmonitor.GetQueryResultsOutput, error) + GetQueryResultsWithContext(aws.Context, *internetmonitor.GetQueryResultsInput, ...request.Option) (*internetmonitor.GetQueryResultsOutput, error) + GetQueryResultsRequest(*internetmonitor.GetQueryResultsInput) (*request.Request, *internetmonitor.GetQueryResultsOutput) + + GetQueryResultsPages(*internetmonitor.GetQueryResultsInput, func(*internetmonitor.GetQueryResultsOutput, bool) bool) error + GetQueryResultsPagesWithContext(aws.Context, *internetmonitor.GetQueryResultsInput, func(*internetmonitor.GetQueryResultsOutput, bool) bool, ...request.Option) error + + GetQueryStatus(*internetmonitor.GetQueryStatusInput) (*internetmonitor.GetQueryStatusOutput, error) + GetQueryStatusWithContext(aws.Context, *internetmonitor.GetQueryStatusInput, ...request.Option) (*internetmonitor.GetQueryStatusOutput, error) + GetQueryStatusRequest(*internetmonitor.GetQueryStatusInput) (*request.Request, *internetmonitor.GetQueryStatusOutput) + ListHealthEvents(*internetmonitor.ListHealthEventsInput) (*internetmonitor.ListHealthEventsOutput, error) ListHealthEventsWithContext(aws.Context, *internetmonitor.ListHealthEventsInput, ...request.Option) (*internetmonitor.ListHealthEventsOutput, error) ListHealthEventsRequest(*internetmonitor.ListHealthEventsInput) (*request.Request, *internetmonitor.ListHealthEventsOutput) @@ -94,6 +105,14 @@ ListTagsForResourceWithContext(aws.Context, *internetmonitor.ListTagsForResourceInput, ...request.Option) (*internetmonitor.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*internetmonitor.ListTagsForResourceInput) (*request.Request, *internetmonitor.ListTagsForResourceOutput) + StartQuery(*internetmonitor.StartQueryInput) (*internetmonitor.StartQueryOutput, error) + StartQueryWithContext(aws.Context, *internetmonitor.StartQueryInput, ...request.Option) (*internetmonitor.StartQueryOutput, error) + StartQueryRequest(*internetmonitor.StartQueryInput) (*request.Request, *internetmonitor.StartQueryOutput) + + StopQuery(*internetmonitor.StopQueryInput) (*internetmonitor.StopQueryOutput, error) + StopQueryWithContext(aws.Context, *internetmonitor.StopQueryInput, ...request.Option) (*internetmonitor.StopQueryOutput, error) + StopQueryRequest(*internetmonitor.StopQueryInput) (*request.Request, *internetmonitor.StopQueryOutput) + TagResource(*internetmonitor.TagResourceInput) (*internetmonitor.TagResourceOutput, error) TagResourceWithContext(aws.Context, *internetmonitor.TagResourceInput, ...request.Option) (*internetmonitor.TagResourceOutput, error) TagResourceRequest(*internetmonitor.TagResourceInput) (*request.Request, *internetmonitor.TagResourceOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iot/api.go golang-github-aws-aws-sdk-go-1.48.14/service/iot/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iot/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iot/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1859,9 +1859,9 @@ // action. // // The CSR must include a public key that is either an RSA key with a length -// of at least 2048 bits or an ECC key from NIST P-256 or NIST P-384 curves. -// For supported certificates, consult Certificate signing algorithms supported -// by IoT (https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms). +// of at least 2048 bits or an ECC key from NIST P-256, NIST P-384, or NIST +// P-521 curves. For supported certificates, consult Certificate signing algorithms +// supported by IoT (https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms). // // Reusing the same certificate signing request (CSR) results in a distinct // certificate. @@ -4098,6 +4098,9 @@ // This is a control plane operation. See Authorization (https://docs.aws.amazon.com/iot/latest/developerguide/iot-authorization.html) // for information about authorizing control plane actions. // +// If the ThingGroup that you create has the exact same attributes as an existing +// ThingGroup, you will get a 200 success response. +// // Requires permission to access the CreateThingGroup (https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) // action. // @@ -6040,7 +6043,7 @@ // Deletes a specific version from a software package. // // Note: If a package version is designated as default, you must remove the -// designation from the package using the UpdatePackage action. +// designation from the software package using the UpdatePackage action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -25280,7 +25283,7 @@ // UpdatePackage API operation for AWS IoT. // -// Updates the supported fields for a specific package. +// Updates the supported fields for a specific software package. // // Requires permission to access the UpdatePackage (https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) // and GetIndexingConfiguration (https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) @@ -25370,7 +25373,7 @@ // UpdatePackageConfiguration API operation for AWS IoT. // -// Updates the package configuration. +// Updates the software package configuration. // // Requires permission to access the UpdatePackageConfiguration (https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) // and iam:PassRole (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) @@ -29753,8 +29756,14 @@ // The criteria that determine if a device is behaving normally in regard to // the metric. + // + // In the IoT console, you can choose to be sent an alert through Amazon SNS + // when IoT Device Defender detects that a device is behaving anomalously. Criteria *BehaviorCriteria `locationName:"criteria" type:"structure"` + // Value indicates exporting metrics related to the behavior when it is true. + ExportMetric *bool `locationName:"exportMetric" type:"boolean"` + // What is measured by the behavior. Metric *string `locationName:"metric" type:"string"` @@ -29823,6 +29832,12 @@ return s } +// SetExportMetric sets the ExportMetric field's value. +func (s *Behavior) SetExportMetric(v bool) *Behavior { + s.ExportMetric = &v + return s +} + // SetMetric sets the Metric field's value. func (s *Behavior) SetMetric(v string) *Behavior { s.Metric = &v @@ -33605,8 +33620,8 @@ // The package version Amazon Resource Names (ARNs) that are installed on the // device when the job successfully completes. // - // Note:The following Length Constraints relates to a single string. Up to five - // strings are allowed. + // Note:The following Length Constraints relates to a single ARN. Up to 25 package + // version ARNs are allowed. DestinationPackageVersions []*string `locationName:"destinationPackageVersions" type:"list"` // The job document. Required if you don't specify a value for documentSource. @@ -33935,25 +33950,19 @@ // The package version Amazon Resource Names (ARNs) that are installed on the // device when the job successfully completes. // - // Note:The following Length Constraints relates to a single string. Up to five - // strings are allowed. + // Note:The following Length Constraints relates to a single ARN. Up to 25 package + // version ARNs are allowed. DestinationPackageVersions []*string `locationName:"destinationPackageVersions" type:"list"` // The job document. Required if you don't specify a value for documentSource. Document *string `locationName:"document" type:"string"` - // An S3 link to the job document to use in the template. Required if you don't - // specify a value for document. - // - // If the job document resides in an S3 bucket, you must use a placeholder link - // when specifying the document. - // - // The placeholder link is of the following form: + // An S3 link, or S3 object URL, to the job document. The link is an Amazon + // S3 object URL and is required if you don't specify a value for document. // - // ${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key} + // For example, --document-source https://s3.region-code.amazonaws.com/example-firmware/device-firmware.1.0 // - // where bucket is your bucket name and key is the object in the bucket to which - // you are linking. + // For more information, see Methods for accessing a bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-bucket-intro.html). DocumentSource *string `locationName:"documentSource" min:"1" type:"string"` // The ARN of the job to use as the basis for the job template. @@ -34429,7 +34438,8 @@ type CreateOTAUpdateInput struct { _ struct{} `type:"structure"` - // A list of additional OTA update parameters which are name-value pairs. + // A list of additional OTA update parameters, which are name-value pairs. They + // won't be sent to devices as a part of the Job document. AdditionalParameters map[string]*string `locationName:"additionalParameters" type:"map"` // The criteria that determine when and how a job abort takes place. @@ -34735,7 +34745,7 @@ // String and GoString methods. Description *string `locationName:"description" type:"string" sensitive:"true"` - // The name of the new package. + // The name of the new software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -34821,7 +34831,7 @@ // The Amazon Resource Name (ARN) for the package. PackageArn *string `locationName:"packageArn" type:"string"` - // The name of the package. + // The name of the software package. PackageName *string `locationName:"packageName" min:"1" type:"string"` } @@ -34889,7 +34899,7 @@ // String and GoString methods. Description *string `locationName:"description" type:"string" sensitive:"true"` - // The name of the associated package. + // The name of the associated software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -35006,7 +35016,7 @@ // Error reason for a package version failure during creation or update. ErrorReason *string `locationName:"errorReason" type:"string"` - // The name of the associated package. + // The name of the associated software package. PackageName *string `locationName:"packageName" min:"1" type:"string"` // The Amazon Resource Name (ARN) for the package. @@ -36132,6 +36142,9 @@ // alert. Behaviors []*Behavior `locationName:"behaviors" type:"list"` + // Specifies the MQTT topic and role ARN required for metric export. + MetricsExportConfig *MetricsExportConfig `locationName:"metricsExportConfig" type:"structure"` + // A description of the security profile. SecurityProfileDescription *string `locationName:"securityProfileDescription" type:"string"` @@ -36201,6 +36214,11 @@ } } } + if s.MetricsExportConfig != nil { + if err := s.MetricsExportConfig.Validate(); err != nil { + invalidParams.AddNested("MetricsExportConfig", err.(request.ErrInvalidParams)) + } + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -36242,6 +36260,12 @@ return s } +// SetMetricsExportConfig sets the MetricsExportConfig field's value. +func (s *CreateSecurityProfileInput) SetMetricsExportConfig(v *MetricsExportConfig) *CreateSecurityProfileInput { + s.MetricsExportConfig = v + return s +} + // SetSecurityProfileDescription sets the SecurityProfileDescription field's value. func (s *CreateSecurityProfileInput) SetSecurityProfileDescription(v string) *CreateSecurityProfileInput { s.SecurityProfileDescription = &v @@ -38522,7 +38546,7 @@ // is required. ClientToken *string `location:"querystring" locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The name of the target package. + // The name of the target software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -38607,7 +38631,7 @@ // is required. ClientToken *string `location:"querystring" locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The name of the associated package. + // The name of the associated software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -41451,7 +41475,8 @@ // // We strongly recommend that customers use the newer iot:Data-ATS endpoint // type to avoid issues related to the widespread distrust of Symantec certificate - // authorities. + // authorities. ATS Signed Certificates are more secure and are trusted by most + // popular browsers. EndpointType *string `location:"querystring" locationName:"endpointType" type:"string"` } @@ -42145,8 +42170,8 @@ // The package version Amazon Resource Names (ARNs) that are installed on the // device when the job successfully completes. // - // Note:The following Length Constraints relates to a single string. Up to five - // strings are allowed. + // Note:The following Length Constraints relates to a single ARN. Up to 25 package + // version ARNs are allowed. DestinationPackageVersions []*string `locationName:"destinationPackageVersions" type:"list"` // The job document. @@ -43158,6 +43183,9 @@ // The time the security profile was last modified. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"` + // Specifies the MQTT topic and role ARN required for metric export. + MetricsExportConfig *MetricsExportConfig `locationName:"metricsExportConfig" type:"structure"` + // The ARN of the security profile. SecurityProfileArn *string `locationName:"securityProfileArn" type:"string"` @@ -43227,6 +43255,12 @@ return s } +// SetMetricsExportConfig sets the MetricsExportConfig field's value. +func (s *DescribeSecurityProfileOutput) SetMetricsExportConfig(v *MetricsExportConfig) *DescribeSecurityProfileOutput { + s.MetricsExportConfig = v + return s +} + // SetSecurityProfileArn sets the SecurityProfileArn field's value. func (s *DescribeSecurityProfileOutput) SetSecurityProfileArn(v string) *DescribeSecurityProfileOutput { s.SecurityProfileArn = &v @@ -45816,6 +45850,50 @@ return s } +// A geolocation target that you select to index. Each geolocation target contains +// a name and order key-value pair that specifies the geolocation target fields. +type GeoLocationTarget struct { + _ struct{} `type:"structure"` + + // The name of the geolocation target field. If the target field is part of + // a named shadow, you must select the named shadow using the namedShadow filter. + Name *string `locationName:"name" type:"string"` + + // The order of the geolocation target field. This field is optional. The default + // value is LatLon. + Order *string `locationName:"order" type:"string" enum:"TargetFieldOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GeoLocationTarget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GeoLocationTarget) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *GeoLocationTarget) SetName(v string) *GeoLocationTarget { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *GeoLocationTarget) SetOrder(v string) *GeoLocationTarget { + s.Order = &v + return s +} + type GetBehaviorModelTrainingSummariesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -46625,7 +46703,7 @@ type GetPackageInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The name of the target package. + // The name of the target software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -46693,7 +46771,7 @@ // The ARN for the package. PackageArn *string `locationName:"packageArn" type:"string"` - // The name of the package. + // The name of the software package. PackageName *string `locationName:"packageName" min:"1" type:"string"` } @@ -46844,7 +46922,7 @@ // The date when the package version was last updated. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"` - // The name of the package. + // The name of the software package. PackageName *string `locationName:"packageName" min:"1" type:"string"` // The ARN for the package version. @@ -48277,13 +48355,30 @@ return s.RespMetadata.RequestID } -// Provides additional filters for specific data sources. Named shadow is the -// only data source that currently supports and requires a filter. To add named -// shadows to your fleet indexing configuration, set namedShadowIndexingMode -// to be ON and specify your shadow names in filter. +// Provides additional selections for named shadows and geolocation data. +// +// To add named shadows to your fleet indexing configuration, set namedShadowIndexingMode +// to be ON and specify your shadow names in namedShadowNames filter. +// +// To add geolocation data to your fleet indexing configuration: +// +// - If you store geolocation data in a class/unnamed shadow, set thingIndexingMode +// to be REGISTRY_AND_SHADOW and specify your geolocation data in geoLocations +// filter. +// +// - If you store geolocation data in a named shadow, set namedShadowIndexingMode +// to be ON, add the shadow name in namedShadowNames filter, and specify +// your geolocation data in geoLocations filter. For more information, see +// Managing fleet indexing (https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html). type IndexingFilter struct { _ struct{} `type:"structure"` + // The list of geolocation targets that you select to index. The default maximum + // number of geolocation targets for indexing is 1. To increase the limit, see + // Amazon Web Services IoT Device Management Quotas (https://docs.aws.amazon.com/general/latest/gr/iot_device_management.html#fleet-indexing-limits) + // in the Amazon Web Services General Reference. + GeoLocations []*GeoLocationTarget `locationName:"geoLocations" type:"list"` + // The shadow names that you select to index. The default maximum number of // shadow names for indexing is 10. To increase the limit, see Amazon Web Services // IoT Device Management Quotas (https://docs.aws.amazon.com/general/latest/gr/iot_device_management.html#fleet-indexing-limits) @@ -48309,6 +48404,12 @@ return s.String() } +// SetGeoLocations sets the GeoLocations field's value. +func (s *IndexingFilter) SetGeoLocations(v []*GeoLocationTarget) *IndexingFilter { + s.GeoLocations = v + return s +} + // SetNamedShadowNames sets the NamedShadowNames field's value. func (s *IndexingFilter) SetNamedShadowNames(v []*string) *IndexingFilter { s.NamedShadowNames = v @@ -49148,8 +49249,8 @@ // The package version Amazon Resource Names (ARNs) that are installed on the // device when the job successfully completes. // - // Note:The following Length Constraints relates to a single string. Up to five - // strings are allowed. + // Note:The following Length Constraints relates to a single ARN. Up to 25 package + // version ARNs are allowed. DestinationPackageVersions []*string `locationName:"destinationPackageVersions" type:"list"` // A key-value map that pairs the patterns that need to be replaced in a managed @@ -50155,6 +50256,9 @@ // DestinationArn is a required field DestinationArn *string `locationName:"destinationArn" type:"string" required:"true"` + // The list of Kafka headers that you specify. + Headers []*KafkaActionHeader `locationName:"headers" min:"1" type:"list"` + // The Kafka message key. Key *string `locationName:"key" type:"string"` @@ -50194,9 +50298,22 @@ if s.DestinationArn == nil { invalidParams.Add(request.NewErrParamRequired("DestinationArn")) } + if s.Headers != nil && len(s.Headers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Headers", 1)) + } if s.Topic == nil { invalidParams.Add(request.NewErrParamRequired("Topic")) } + if s.Headers != nil { + for i, v := range s.Headers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Headers", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -50216,6 +50333,12 @@ return s } +// SetHeaders sets the Headers field's value. +func (s *KafkaAction) SetHeaders(v []*KafkaActionHeader) *KafkaAction { + s.Headers = v + return s +} + // SetKey sets the Key field's value. func (s *KafkaAction) SetKey(v string) *KafkaAction { s.Key = &v @@ -50234,6 +50357,71 @@ return s } +// Specifies a Kafka header using key-value pairs when you create a Rule’s +// Kafka Action. You can use these headers to route data from IoT clients to +// downstream Kafka clusters without modifying your message payload. +// +// For more information about Rule's Kafka action, see Apache Kafka (https://docs.aws.amazon.com/iot/latest/developerguide/apache-kafka-rule-action.html). +type KafkaActionHeader struct { + _ struct{} `type:"structure"` + + // The key of the Kafka header. + // + // Key is a required field + Key *string `locationName:"key" type:"string" required:"true"` + + // The value of the Kafka header. + // + // 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 KafkaActionHeader) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KafkaActionHeader) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KafkaActionHeader) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KafkaActionHeader"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + 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 *KafkaActionHeader) SetKey(v string) *KafkaActionHeader { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *KafkaActionHeader) SetValue(v string) *KafkaActionHeader { + s.Value = &v + return s +} + // Describes a key pair. type KeyPair struct { _ struct{} `type:"structure"` @@ -53907,7 +54095,7 @@ // The token for the next set of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` - // The name of the target package. + // The name of the target software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -58083,6 +58271,10 @@ type MetricToRetain struct { _ struct{} `type:"structure"` + // Value added in both Behavior and AdditionalMetricsToRetainV2 to indicate + // if Device Defender Detect should export the corresponding metrics. + ExportMetric *bool `locationName:"exportMetric" type:"boolean"` + // What is measured by the behavior. // // Metric is a required field @@ -58128,6 +58320,12 @@ return nil } +// SetExportMetric sets the ExportMetric field's value. +func (s *MetricToRetain) SetExportMetric(v bool) *MetricToRetain { + s.ExportMetric = &v + return s +} + // SetMetric sets the Metric field's value. func (s *MetricToRetain) SetMetric(v string) *MetricToRetain { s.Metric = &v @@ -58220,6 +58418,75 @@ return s } +// Set configurations for metrics export. +type MetricsExportConfig struct { + _ struct{} `type:"structure"` + + // The MQTT topic that Device Defender Detect should publish messages to for + // metrics export. + // + // MqttTopic is a required field + MqttTopic *string `locationName:"mqttTopic" min:"1" type:"string" required:"true"` + + // This role ARN has permission to publish MQTT messages, after which Device + // Defender Detect can assume the role and publish messages on your behalf. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricsExportConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricsExportConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MetricsExportConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MetricsExportConfig"} + if s.MqttTopic == nil { + invalidParams.Add(request.NewErrParamRequired("MqttTopic")) + } + if s.MqttTopic != nil && len(*s.MqttTopic) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MqttTopic", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMqttTopic sets the MqttTopic field's value. +func (s *MetricsExportConfig) SetMqttTopic(v string) *MetricsExportConfig { + s.MqttTopic = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *MetricsExportConfig) SetRoleArn(v string) *MetricsExportConfig { + s.RoleArn = &v + return s +} + // Describes which changes should be applied as part of a mitigation action. type MitigationAction struct { _ struct{} `type:"structure"` @@ -58784,7 +59051,8 @@ type OTAUpdateFile struct { _ struct{} `type:"structure"` - // A list of name/attribute pairs. + // A list of name-attribute pairs. They won't be sent to devices as a part of + // the Job document. Attributes map[string]*string `locationName:"attributes" type:"map"` // The code signing method of the file. @@ -59296,7 +59564,7 @@ // The date that the package was last updated. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"` - // The name for the target package. + // The name for the target software package. PackageName *string `locationName:"packageName" min:"1" type:"string"` } @@ -62292,6 +62560,9 @@ // minutes. The maximum duration between startTime and endTime is two years. // The date and time format for the endTime is YYYY-MM-DD for the date and HH:MM // for the time. + // + // For more information on the syntax for endTime when using an API command + // or the Command Line Interface, see Timestamp (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-types.html#parameter-type-timestamp). EndTime *string `locationName:"endTime" min:"1" type:"string"` // An optional configuration within the SchedulingConfig to setup a recurring @@ -62304,6 +62575,9 @@ // and must be scheduled a minimum of thirty minutes from the current time. // The date and time format for the startTime is YYYY-MM-DD for the date and // HH:MM for the time. + // + // For more information on the syntax for startTime when using an API command + // or the Command Line Interface, see Timestamp (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-types.html#parameter-type-timestamp). StartTime *string `locationName:"startTime" min:"1" type:"string"` } @@ -62381,7 +62655,8 @@ // The search index name. IndexName *string `locationName:"indexName" min:"1" type:"string"` - // The maximum number of results to return at one time. + // The maximum number of results to return per page at one time. The response + // might contain fewer results but will never contain more. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // The token used to get the next set of results, or null if there are no additional @@ -65727,6 +66002,8 @@ // Fleet Indexing service. This is an optional field. For more information, // see Managed fields (https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html#managed-field) // in the Amazon Web Services IoT Core Developer Guide. + // + // You can't modify managed fields by updating fleet indexing configuration. ManagedFields []*Field `locationName:"managedFields" type:"list"` // Thing group indexing mode. @@ -65895,14 +66172,29 @@ // Detect. (https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html) DeviceDefenderIndexingMode *string `locationName:"deviceDefenderIndexingMode" type:"string" enum:"DeviceDefenderIndexingMode"` - // Provides additional filters for specific data sources. Named shadow is the - // only data source that currently supports and requires a filter. To add named - // shadows to your fleet indexing configuration, set namedShadowIndexingMode - // to be ON and specify your shadow names in filter. + // Provides additional selections for named shadows and geolocation data. + // + // To add named shadows to your fleet indexing configuration, set namedShadowIndexingMode + // to be ON and specify your shadow names in namedShadowNames filter. + // + // To add geolocation data to your fleet indexing configuration: + // + // * If you store geolocation data in a class/unnamed shadow, set thingIndexingMode + // to be REGISTRY_AND_SHADOW and specify your geolocation data in geoLocations + // filter. + // + // * If you store geolocation data in a named shadow, set namedShadowIndexingMode + // to be ON, add the shadow name in namedShadowNames filter, and specify + // your geolocation data in geoLocations filter. For more information, see + // Managing fleet indexing (https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html). Filter *IndexingFilter `locationName:"filter" type:"structure"` // Contains fields that are indexed and whose types are already known by the - // Fleet Indexing service. + // Fleet Indexing service. This is an optional field. For more information, + // see Managed fields (https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html#managed-field) + // in the Amazon Web Services IoT Core Developer Guide. + // + // You can't modify managed fields by updating fleet indexing configuration. ManagedFields []*Field `locationName:"managedFields" type:"list"` // Named shadow indexing mode. Valid values are: @@ -69667,7 +69959,7 @@ // String and GoString methods. Description *string `locationName:"description" type:"string" sensitive:"true"` - // The name of the target package. + // The name of the target software package. // // PackageName is a required field PackageName *string `location:"uri" locationName:"packageName" min:"1" type:"string" required:"true"` @@ -69780,8 +70072,8 @@ Action *string `locationName:"action" type:"string" enum:"PackageVersionAction"` // Metadata that can be used to define a package version’s configuration. - // For example, the S3 file location, configuration options that are being sent - // to the device or fleet. + // For example, the Amazon S3 file location, configuration options that are + // being sent to the device or fleet. // // Note: Attributes can be updated only when the package version is in a draft // state. @@ -70334,11 +70626,17 @@ // are defined in the current invocation, an exception occurs. DeleteBehaviors *bool `locationName:"deleteBehaviors" type:"boolean"` + // Set the value as true to delete metrics export related configurations. + DeleteMetricsExportConfig *bool `locationName:"deleteMetricsExportConfig" type:"boolean"` + // The expected version of the security profile. A new version is generated // whenever the security profile is updated. If you specify a value that is // different from the actual version, a VersionConflictException is thrown. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"` + // Specifies the MQTT topic and role ARN required for metric export. + MetricsExportConfig *MetricsExportConfig `locationName:"metricsExportConfig" type:"structure"` + // A description of the security profile. SecurityProfileDescription *string `locationName:"securityProfileDescription" type:"string"` @@ -70405,6 +70703,11 @@ } } } + if s.MetricsExportConfig != nil { + if err := s.MetricsExportConfig.Validate(); err != nil { + invalidParams.AddNested("MetricsExportConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -70454,12 +70757,24 @@ return s } +// SetDeleteMetricsExportConfig sets the DeleteMetricsExportConfig field's value. +func (s *UpdateSecurityProfileInput) SetDeleteMetricsExportConfig(v bool) *UpdateSecurityProfileInput { + s.DeleteMetricsExportConfig = &v + return s +} + // SetExpectedVersion sets the ExpectedVersion field's value. func (s *UpdateSecurityProfileInput) SetExpectedVersion(v int64) *UpdateSecurityProfileInput { s.ExpectedVersion = &v return s } +// SetMetricsExportConfig sets the MetricsExportConfig field's value. +func (s *UpdateSecurityProfileInput) SetMetricsExportConfig(v *MetricsExportConfig) *UpdateSecurityProfileInput { + s.MetricsExportConfig = v + return s +} + // SetSecurityProfileDescription sets the SecurityProfileDescription field's value. func (s *UpdateSecurityProfileInput) SetSecurityProfileDescription(v string) *UpdateSecurityProfileInput { s.SecurityProfileDescription = &v @@ -70503,6 +70818,9 @@ // The time the security profile was last modified. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"` + // Specifies the MQTT topic and role ARN required for metric export. + MetricsExportConfig *MetricsExportConfig `locationName:"metricsExportConfig" type:"structure"` + // The ARN of the security profile that was updated. SecurityProfileArn *string `locationName:"securityProfileArn" type:"string"` @@ -70570,6 +70888,12 @@ return s } +// SetMetricsExportConfig sets the MetricsExportConfig field's value. +func (s *UpdateSecurityProfileOutput) SetMetricsExportConfig(v *MetricsExportConfig) *UpdateSecurityProfileOutput { + s.MetricsExportConfig = v + return s +} + // SetSecurityProfileArn sets the SecurityProfileArn field's value. func (s *UpdateSecurityProfileOutput) SetSecurityProfileArn(v string) *UpdateSecurityProfileOutput { s.SecurityProfileArn = &v @@ -73181,6 +73505,12 @@ // LogTargetTypePrincipalId is a LogTargetType enum value LogTargetTypePrincipalId = "PRINCIPAL_ID" + + // LogTargetTypeEventType is a LogTargetType enum value + LogTargetTypeEventType = "EVENT_TYPE" + + // LogTargetTypeDeviceDefender is a LogTargetType enum value + LogTargetTypeDeviceDefender = "DEVICE_DEFENDER" ) // LogTargetType_Values returns all elements of the LogTargetType enum @@ -73191,6 +73521,8 @@ LogTargetTypeClientId, LogTargetTypeSourceIp, LogTargetTypePrincipalId, + LogTargetTypeEventType, + LogTargetTypeDeviceDefender, } } @@ -73518,6 +73850,22 @@ } } +const ( + // TargetFieldOrderLatLon is a TargetFieldOrder enum value + TargetFieldOrderLatLon = "LatLon" + + // TargetFieldOrderLonLat is a TargetFieldOrder enum value + TargetFieldOrderLonLat = "LonLat" +) + +// TargetFieldOrder_Values returns all elements of the TargetFieldOrder enum +func TargetFieldOrder_Values() []string { + return []string{ + TargetFieldOrderLatLon, + TargetFieldOrderLonLat, + } +} + const ( // TargetSelectionContinuous is a TargetSelection enum value TargetSelectionContinuous = "CONTINUOUS" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iotfleetwise/api.go golang-github-aws-aws-sdk-go-1.48.14/service/iotfleetwise/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iotfleetwise/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iotfleetwise/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -74,6 +74,9 @@ // - ResourceNotFoundException // The resource wasn't found. // +// - LimitExceededException +// A service quota was exceeded. +// // - ThrottlingException // The request couldn't be completed due to throttling. // @@ -1791,6 +1794,99 @@ return out, req.Send() } +const opGetEncryptionConfiguration = "GetEncryptionConfiguration" + +// GetEncryptionConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetEncryptionConfiguration 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 GetEncryptionConfiguration for more information on using the GetEncryptionConfiguration +// 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 GetEncryptionConfigurationRequest method. +// req, resp := client.GetEncryptionConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetEncryptionConfiguration +func (c *IoTFleetWise) GetEncryptionConfigurationRequest(input *GetEncryptionConfigurationInput) (req *request.Request, output *GetEncryptionConfigurationOutput) { + op := &request.Operation{ + Name: opGetEncryptionConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEncryptionConfigurationInput{} + } + + output = &GetEncryptionConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEncryptionConfiguration API operation for AWS IoT FleetWise. +// +// Retrieves the encryption configuration for resources and data in Amazon Web +// Services IoT FleetWise. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetEncryptionConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetEncryptionConfiguration +func (c *IoTFleetWise) GetEncryptionConfiguration(input *GetEncryptionConfigurationInput) (*GetEncryptionConfigurationOutput, error) { + req, out := c.GetEncryptionConfigurationRequest(input) + return out, req.Send() +} + +// GetEncryptionConfigurationWithContext is the same as GetEncryptionConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetEncryptionConfiguration 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 *IoTFleetWise) GetEncryptionConfigurationWithContext(ctx aws.Context, input *GetEncryptionConfigurationInput, opts ...request.Option) (*GetEncryptionConfigurationOutput, error) { + req, out := c.GetEncryptionConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetFleet = "GetFleet" // GetFleetRequest generates a "aws/request.Request" representing the @@ -4611,6 +4707,106 @@ return p.Err() } +const opPutEncryptionConfiguration = "PutEncryptionConfiguration" + +// PutEncryptionConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the PutEncryptionConfiguration 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 PutEncryptionConfiguration for more information on using the PutEncryptionConfiguration +// 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 PutEncryptionConfigurationRequest method. +// req, resp := client.PutEncryptionConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/PutEncryptionConfiguration +func (c *IoTFleetWise) PutEncryptionConfigurationRequest(input *PutEncryptionConfigurationInput) (req *request.Request, output *PutEncryptionConfigurationOutput) { + op := &request.Operation{ + Name: opPutEncryptionConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutEncryptionConfigurationInput{} + } + + output = &PutEncryptionConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutEncryptionConfiguration API operation for AWS IoT FleetWise. +// +// Creates or updates the encryption configuration. Amazon Web Services IoT +// FleetWise can encrypt your data and resources using an Amazon Web Services +// managed key. Or, you can use a KMS key that you own and manage. For more +// information, see Data encryption (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/data-encryption.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation PutEncryptionConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/PutEncryptionConfiguration +func (c *IoTFleetWise) PutEncryptionConfiguration(input *PutEncryptionConfigurationInput) (*PutEncryptionConfigurationOutput, error) { + req, out := c.PutEncryptionConfigurationRequest(input) + return out, req.Send() +} + +// PutEncryptionConfigurationWithContext is the same as PutEncryptionConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See PutEncryptionConfiguration 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 *IoTFleetWise) PutEncryptionConfigurationWithContext(ctx aws.Context, input *PutEncryptionConfigurationInput, opts ...request.Option) (*PutEncryptionConfigurationOutput, error) { + req, out := c.PutEncryptionConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPutLoggingOptions = "PutLoggingOptions" // PutLoggingOptionsRequest generates a "aws/request.Request" representing the @@ -4769,17 +4965,18 @@ // DeleteServiceLinkedRole (https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteServiceLinkedRole.html) // in the Identity and Access Management API Reference. // -//

    Registers your Amazon Web Services account, IAM, and Amazon Timestream -// resources so Amazon Web Services IoT FleetWise can transfer your vehicle -// data to the Amazon Web Services Cloud. For more information, including -// step-by-step procedures, see Setting -// up Amazon Web Services IoT FleetWise.

    An Amazon Web -// Services account is not the same thing as a "user." An Amazon -// Web Services user is an identity that you create using Identity and -// Access Management (IAM) and takes the form of either an IAM -// user or an IAM -// role, both with credentials. A single Amazon Web Services account -// can, and typically does, contain many users and roles.

    +// Registers your Amazon Web Services account, IAM, and Amazon Timestream resources +// so Amazon Web Services IoT FleetWise can transfer your vehicle data to the +// Amazon Web Services Cloud. For more information, including step-by-step procedures, +// see Setting up Amazon Web Services IoT FleetWise (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html). +// +// An Amazon Web Services account is not the same thing as a "user." An Amazon +// Web Services user (https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users) +// is an identity that you create using Identity and Access Management (IAM) +// and takes the form of either an IAM user (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html) +// or an IAM role, both with credentials (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html). +// A single Amazon Web Services account can, and typically does, contain many +// users and roles. // // 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 @@ -5731,6 +5928,11 @@ // The specified possible minimum value of an actuator. Min *float64 `locationName:"min" type:"double"` + // The fully qualified name of the struct node for the actuator if the data + // type of the actuator is Struct or StructArray. For example, the struct fully + // qualified name of an actuator might be Vehicle.Door.LockStruct. + StructFullyQualifiedName *string `locationName:"structFullyQualifiedName" min:"1" type:"string"` + // The scientific unit for the actuator. Unit *string `locationName:"unit" type:"string"` } @@ -5771,6 +5973,9 @@ if s.FullyQualifiedName == nil { invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) } + if s.StructFullyQualifiedName != nil && len(*s.StructFullyQualifiedName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StructFullyQualifiedName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -5832,6 +6037,12 @@ return s } +// SetStructFullyQualifiedName sets the StructFullyQualifiedName field's value. +func (s *Actuator) SetStructFullyQualifiedName(v string) *Actuator { + s.StructFullyQualifiedName = &v + return s +} + // SetUnit sets the Unit field's value. func (s *Actuator) SetUnit(v string) *Actuator { s.Unit = &v @@ -6489,7 +6700,8 @@ _ struct{} `type:"structure"` // A list of DBC files. You can upload only one DBC file for each network interface - // and specify up to five (inclusive) files in the list. + // and specify up to five (inclusive) files in the list. The DBC file can be + // a maximum size of 200 MB. // // CanDbcFiles is a required field CanDbcFiles [][]byte `locationName:"canDbcFiles" min:"1" type:"list" required:"true"` @@ -7093,7 +7305,9 @@ // // Amazon S3 optimizes the cost of data storage and provides additional mechanisms // to use vehicle data, such as data lakes, centralized data storage, data processing - // pipelines, and analytics. + // pipelines, and analytics. Amazon Web Services IoT FleetWise supports at-least-once + // file delivery to S3. Your vehicle data is stored on multiple Amazon Web Services + // IoT FleetWise servers for redundancy and high availability. // // You can use Amazon Timestream to access and analyze time series data, and // Timestream to query vehicle data so that you can identify trends and patterns. @@ -8402,6 +8616,211 @@ return s } +// Represents a member of the complex data structure. The data type of the property +// can be either primitive or another struct. +type CustomProperty struct { + _ struct{} `type:"structure"` + + // A comment in addition to the description. + Comment *string `locationName:"comment" min:"1" type:"string"` + + // Indicates whether the property is binary data. + DataEncoding *string `locationName:"dataEncoding" type:"string" enum:"NodeDataEncoding"` + + // The data type for the custom property. + // + // DataType is a required field + DataType *string `locationName:"dataType" type:"string" required:"true" enum:"NodeDataType"` + + // The deprecation message for the node or the branch that was moved or deleted. + DeprecationMessage *string `locationName:"deprecationMessage" min:"1" type:"string"` + + // A brief description of the custom property. + Description *string `locationName:"description" min:"1" type:"string"` + + // The fully qualified name of the custom property. For example, the fully qualified + // name of a custom property might be ComplexDataTypes.VehicleDataTypes.SVMCamera.FPS. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" type:"string" required:"true"` + + // The fully qualified name of the struct node for the custom property if the + // data type of the custom property is Struct or StructArray. + StructFullyQualifiedName *string `locationName:"structFullyQualifiedName" 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 CustomProperty) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomProperty) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomProperty) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomProperty"} + if s.Comment != nil && len(*s.Comment) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Comment", 1)) + } + if s.DataType == nil { + invalidParams.Add(request.NewErrParamRequired("DataType")) + } + if s.DeprecationMessage != nil && len(*s.DeprecationMessage) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeprecationMessage", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + if s.StructFullyQualifiedName != nil && len(*s.StructFullyQualifiedName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StructFullyQualifiedName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComment sets the Comment field's value. +func (s *CustomProperty) SetComment(v string) *CustomProperty { + s.Comment = &v + return s +} + +// SetDataEncoding sets the DataEncoding field's value. +func (s *CustomProperty) SetDataEncoding(v string) *CustomProperty { + s.DataEncoding = &v + return s +} + +// SetDataType sets the DataType field's value. +func (s *CustomProperty) SetDataType(v string) *CustomProperty { + s.DataType = &v + return s +} + +// SetDeprecationMessage sets the DeprecationMessage field's value. +func (s *CustomProperty) SetDeprecationMessage(v string) *CustomProperty { + s.DeprecationMessage = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CustomProperty) SetDescription(v string) *CustomProperty { + s.Description = &v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *CustomProperty) SetFullyQualifiedName(v string) *CustomProperty { + s.FullyQualifiedName = &v + return s +} + +// SetStructFullyQualifiedName sets the StructFullyQualifiedName field's value. +func (s *CustomProperty) SetStructFullyQualifiedName(v string) *CustomProperty { + s.StructFullyQualifiedName = &v + return s +} + +// The custom structure represents a complex or higher-order data structure. +type CustomStruct struct { + _ struct{} `type:"structure"` + + // A comment in addition to the description. + Comment *string `locationName:"comment" min:"1" type:"string"` + + // The deprecation message for the node or the branch that was moved or deleted. + DeprecationMessage *string `locationName:"deprecationMessage" min:"1" type:"string"` + + // A brief description of the custom structure. + Description *string `locationName:"description" min:"1" type:"string"` + + // The fully qualified name of the custom structure. For example, the fully + // qualified name of a custom structure might be ComplexDataTypes.VehicleDataTypes.SVMCamera. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" 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 CustomStruct) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomStruct) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomStruct) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomStruct"} + if s.Comment != nil && len(*s.Comment) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Comment", 1)) + } + if s.DeprecationMessage != nil && len(*s.DeprecationMessage) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeprecationMessage", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComment sets the Comment field's value. +func (s *CustomStruct) SetComment(v string) *CustomStruct { + s.Comment = &v + return s +} + +// SetDeprecationMessage sets the DeprecationMessage field's value. +func (s *CustomStruct) SetDeprecationMessage(v string) *CustomStruct { + s.DeprecationMessage = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CustomStruct) SetDescription(v string) *CustomStruct { + s.Description = &v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *CustomStruct) SetFullyQualifiedName(v string) *CustomStruct { + s.FullyQualifiedName = &v + return s +} + // The destination where the Amazon Web Services IoT FleetWise campaign sends // data. You can send data to be stored in Amazon S3 or Amazon Timestream. type DataDestinationConfig struct { @@ -8488,6 +8907,10 @@ // LastModificationTime is a required field LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + // The detailed message for the decoder manifest. When a decoder manifest is + // in an INVALID status, the message contains detailed reason and help information. + Message *string `locationName:"message" min:"1" type:"string"` + // The ARN of a vehicle model (model manifest) associated with the decoder manifest. ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` @@ -8542,6 +8965,12 @@ return s } +// SetMessage sets the Message field's value. +func (s *DecoderManifestSummary) SetMessage(v string) *DecoderManifestSummary { + s.Message = &v + return s +} + // SetModelManifestArn sets the ModelManifestArn field's value. func (s *DecoderManifestSummary) SetModelManifestArn(v string) *DecoderManifestSummary { s.ModelManifestArn = &v @@ -9728,6 +10157,10 @@ // LastModificationTime is a required field LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + // The detailed message for the decoder manifest. When a decoder manifest is + // in an INVALID status, the message contains detailed reason and help information. + Message *string `locationName:"message" min:"1" type:"string"` + // The ARN of a vehicle model (model manifest) associated with the decoder manifest. ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` @@ -9784,6 +10217,12 @@ return s } +// SetMessage sets the Message field's value. +func (s *GetDecoderManifestOutput) SetMessage(v string) *GetDecoderManifestOutput { + s.Message = &v + return s +} + // SetModelManifestArn sets the ModelManifestArn field's value. func (s *GetDecoderManifestOutput) SetModelManifestArn(v string) *GetDecoderManifestOutput { s.ModelManifestArn = &v @@ -9802,6 +10241,114 @@ return s } +type GetEncryptionConfigurationInput 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 GetEncryptionConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEncryptionConfigurationInput) GoString() string { + return s.String() +} + +type GetEncryptionConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The time when encryption was configured in seconds since epoch (January 1, + // 1970 at midnight UTC time). + CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + + // The encryption status. + // + // EncryptionStatus is a required field + EncryptionStatus *string `locationName:"encryptionStatus" type:"string" required:"true" enum:"EncryptionStatus"` + + // The type of encryption. Set to KMS_BASED_ENCRYPTION to use a KMS key that + // you own and manage. Set to FLEETWISE_DEFAULT_ENCRYPTION to use an Amazon + // Web Services managed key that is owned by the Amazon Web Services IoT FleetWise + // service account. + // + // EncryptionType is a required field + EncryptionType *string `locationName:"encryptionType" type:"string" required:"true" enum:"EncryptionType"` + + // The error message that describes why encryption settings couldn't be configured, + // if applicable. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // The ID of the KMS key that is used for encryption. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The time when encryption was last updated in seconds since epoch (January + // 1, 1970 at midnight UTC time). + LastModificationTime *time.Time `locationName:"lastModificationTime" 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 GetEncryptionConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEncryptionConfigurationOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetEncryptionConfigurationOutput) SetCreationTime(v time.Time) *GetEncryptionConfigurationOutput { + s.CreationTime = &v + return s +} + +// SetEncryptionStatus sets the EncryptionStatus field's value. +func (s *GetEncryptionConfigurationOutput) SetEncryptionStatus(v string) *GetEncryptionConfigurationOutput { + s.EncryptionStatus = &v + return s +} + +// SetEncryptionType sets the EncryptionType field's value. +func (s *GetEncryptionConfigurationOutput) SetEncryptionType(v string) *GetEncryptionConfigurationOutput { + s.EncryptionType = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *GetEncryptionConfigurationOutput) SetErrorMessage(v string) *GetEncryptionConfigurationOutput { + s.ErrorMessage = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *GetEncryptionConfigurationOutput) SetKmsKeyId(v string) *GetEncryptionConfigurationOutput { + s.KmsKeyId = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetEncryptionConfigurationOutput) SetLastModificationTime(v time.Time) *GetEncryptionConfigurationOutput { + s.LastModificationTime = &v + return s +} + type GetFleetInput struct { _ struct{} `type:"structure"` @@ -11239,6 +11786,9 @@ type InvalidSignalDecoder struct { _ struct{} `type:"structure"` + // The possible cause for the invalid signal decoder. + Hint *string `locationName:"hint" min:"1" type:"string"` + // The name of a signal decoder that isn't valid. Name *string `locationName:"name" min:"1" type:"string"` @@ -11264,6 +11814,12 @@ return s.String() } +// SetHint sets the Hint field's value. +func (s *InvalidSignalDecoder) SetHint(v string) *InvalidSignalDecoder { + s.Hint = &v + return s +} + // SetName sets the Name field's value. func (s *InvalidSignalDecoder) SetName(v string) *InvalidSignalDecoder { s.Name = &v @@ -12878,6 +13434,78 @@ return s } +// The decoding information for a specific message which support higher order +// data types. +type MessageSignal struct { + _ struct{} `type:"structure"` + + // The structured message for the message signal. It can be defined with either + // a primitiveMessageDefinition, structuredMessageListDefinition, or structuredMessageDefinition + // recursively. + // + // StructuredMessage is a required field + StructuredMessage *StructuredMessage `locationName:"structuredMessage" type:"structure" required:"true"` + + // The topic name for the message signal. It corresponds to topics in ROS 2. + // + // TopicName is a required field + TopicName *string `locationName:"topicName" 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 MessageSignal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MessageSignal) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MessageSignal) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MessageSignal"} + if s.StructuredMessage == nil { + invalidParams.Add(request.NewErrParamRequired("StructuredMessage")) + } + if s.TopicName == nil { + invalidParams.Add(request.NewErrParamRequired("TopicName")) + } + if s.TopicName != nil && len(*s.TopicName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TopicName", 1)) + } + if s.StructuredMessage != nil { + if err := s.StructuredMessage.Validate(); err != nil { + invalidParams.AddNested("StructuredMessage", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStructuredMessage sets the StructuredMessage field's value. +func (s *MessageSignal) SetStructuredMessage(v *StructuredMessage) *MessageSignal { + s.StructuredMessage = v + return s +} + +// SetTopicName sets the TopicName field's value. +func (s *MessageSignal) SetTopicName(v string) *MessageSignal { + s.TopicName = &v + return s +} + // Information about a vehicle model (model manifest). You can use the API operation // to return this information about multiple vehicle models. type ModelManifestSummary struct { @@ -13048,6 +13676,10 @@ // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"NetworkInterfaceType"` + + // The vehicle middleware defined as a type of network interface. Examples of + // vehicle middleware include ROS2 and SOME/IP. + VehicleMiddleware *VehicleMiddleware `locationName:"vehicleMiddleware" type:"structure"` } // String returns the string representation. @@ -13090,6 +13722,11 @@ invalidParams.AddNested("ObdInterface", err.(request.ErrInvalidParams)) } } + if s.VehicleMiddleware != nil { + if err := s.VehicleMiddleware.Validate(); err != nil { + invalidParams.AddNested("VehicleMiddleware", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -13121,6 +13758,12 @@ return s } +// SetVehicleMiddleware sets the VehicleMiddleware field's value. +func (s *NetworkInterface) SetVehicleMiddleware(v *VehicleMiddleware) *NetworkInterface { + s.VehicleMiddleware = v + return s +} + // A general abstraction of a signal. A node can be specified as an actuator, // attribute, branch, or sensor. type Node struct { @@ -13141,11 +13784,18 @@ // A group of signals that are defined in a hierarchical structure. Branch *Branch `locationName:"branch" type:"structure"` + // Represents a member of the complex data structure. The datatype of the property + // can be either primitive or another struct. + Property *CustomProperty `locationName:"property" type:"structure"` + // An input component that reports the environmental condition of a vehicle. // // You can collect data about fluid levels, temperatures, vibrations, or battery // voltage from sensors. Sensor *Sensor `locationName:"sensor" type:"structure"` + + // Represents a complex or higher-order data structure. + Struct *CustomStruct `locationName:"struct" type:"structure"` } // String returns the string representation. @@ -13184,11 +13834,21 @@ invalidParams.AddNested("Branch", err.(request.ErrInvalidParams)) } } + if s.Property != nil { + if err := s.Property.Validate(); err != nil { + invalidParams.AddNested("Property", err.(request.ErrInvalidParams)) + } + } if s.Sensor != nil { if err := s.Sensor.Validate(); err != nil { invalidParams.AddNested("Sensor", err.(request.ErrInvalidParams)) } } + if s.Struct != nil { + if err := s.Struct.Validate(); err != nil { + invalidParams.AddNested("Struct", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -13214,12 +13874,24 @@ return s } +// SetProperty sets the Property field's value. +func (s *Node) SetProperty(v *CustomProperty) *Node { + s.Property = v + return s +} + // SetSensor sets the Sensor field's value. func (s *Node) SetSensor(v *Sensor) *Node { s.Sensor = v return s } +// SetStruct sets the Struct field's value. +func (s *Node) SetStruct(v *CustomStruct) *Node { + s.Struct = v + return s +} + // Information about the number of nodes and node types in a vehicle network. type NodeCounts struct { _ struct{} `type:"structure"` @@ -13236,8 +13908,14 @@ // The total number of nodes in a vehicle network. TotalNodes *int64 `locationName:"totalNodes" type:"integer"` + // The total properties for the node. + TotalProperties *int64 `locationName:"totalProperties" type:"integer"` + // The total number of nodes in a vehicle network that represent sensors. TotalSensors *int64 `locationName:"totalSensors" type:"integer"` + + // The total structure for the node. + TotalStructs *int64 `locationName:"totalStructs" type:"integer"` } // String returns the string representation. @@ -13282,12 +13960,24 @@ return s } +// SetTotalProperties sets the TotalProperties field's value. +func (s *NodeCounts) SetTotalProperties(v int64) *NodeCounts { + s.TotalProperties = &v + return s +} + // SetTotalSensors sets the TotalSensors field's value. func (s *NodeCounts) SetTotalSensors(v int64) *NodeCounts { s.TotalSensors = &v return s } +// SetTotalStructs sets the TotalStructs field's value. +func (s *NodeCounts) SetTotalStructs(v int64) *NodeCounts { + s.TotalStructs = &v + return s +} + // A network interface that specifies the On-board diagnostic (OBD) II network // protocol. type ObdInterface struct { @@ -13561,6 +14251,166 @@ return s } +// Represents a primitive type node of the complex data structure. +type PrimitiveMessageDefinition struct { + _ struct{} `type:"structure"` + + // Information about a PrimitiveMessage using a ROS 2 compliant primitive type + // message of the complex data structure. + Ros2PrimitiveMessageDefinition *ROS2PrimitiveMessageDefinition `locationName:"ros2PrimitiveMessageDefinition" 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 PrimitiveMessageDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrimitiveMessageDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrimitiveMessageDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrimitiveMessageDefinition"} + if s.Ros2PrimitiveMessageDefinition != nil { + if err := s.Ros2PrimitiveMessageDefinition.Validate(); err != nil { + invalidParams.AddNested("Ros2PrimitiveMessageDefinition", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRos2PrimitiveMessageDefinition sets the Ros2PrimitiveMessageDefinition field's value. +func (s *PrimitiveMessageDefinition) SetRos2PrimitiveMessageDefinition(v *ROS2PrimitiveMessageDefinition) *PrimitiveMessageDefinition { + s.Ros2PrimitiveMessageDefinition = v + return s +} + +type PutEncryptionConfigurationInput struct { + _ struct{} `type:"structure"` + + // The type of encryption. Choose KMS_BASED_ENCRYPTION to use a KMS key or FLEETWISE_DEFAULT_ENCRYPTION + // to use an Amazon Web Services managed key. + // + // EncryptionType is a required field + EncryptionType *string `locationName:"encryptionType" type:"string" required:"true" enum:"EncryptionType"` + + // The ID of the KMS key that is used for encryption. + KmsKeyId *string `locationName:"kmsKeyId" 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 PutEncryptionConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutEncryptionConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutEncryptionConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutEncryptionConfigurationInput"} + if s.EncryptionType == nil { + invalidParams.Add(request.NewErrParamRequired("EncryptionType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEncryptionType sets the EncryptionType field's value. +func (s *PutEncryptionConfigurationInput) SetEncryptionType(v string) *PutEncryptionConfigurationInput { + s.EncryptionType = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *PutEncryptionConfigurationInput) SetKmsKeyId(v string) *PutEncryptionConfigurationInput { + s.KmsKeyId = &v + return s +} + +type PutEncryptionConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The encryption status. + // + // EncryptionStatus is a required field + EncryptionStatus *string `locationName:"encryptionStatus" type:"string" required:"true" enum:"EncryptionStatus"` + + // The type of encryption. Set to KMS_BASED_ENCRYPTION to use an KMS key that + // you own and manage. Set to FLEETWISE_DEFAULT_ENCRYPTION to use an Amazon + // Web Services managed key that is owned by the Amazon Web Services IoT FleetWise + // service account. + // + // EncryptionType is a required field + EncryptionType *string `locationName:"encryptionType" type:"string" required:"true" enum:"EncryptionType"` + + // The ID of the KMS key that is used for encryption. + KmsKeyId *string `locationName:"kmsKeyId" 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 PutEncryptionConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutEncryptionConfigurationOutput) GoString() string { + return s.String() +} + +// SetEncryptionStatus sets the EncryptionStatus field's value. +func (s *PutEncryptionConfigurationOutput) SetEncryptionStatus(v string) *PutEncryptionConfigurationOutput { + s.EncryptionStatus = &v + return s +} + +// SetEncryptionType sets the EncryptionType field's value. +func (s *PutEncryptionConfigurationOutput) SetEncryptionType(v string) *PutEncryptionConfigurationOutput { + s.EncryptionType = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *PutEncryptionConfigurationOutput) SetKmsKeyId(v string) *PutEncryptionConfigurationOutput { + s.KmsKeyId = &v + return s +} + type PutLoggingOptionsInput struct { _ struct{} `type:"structure"` @@ -13634,6 +14484,82 @@ return s.String() } +// Represents a ROS 2 compliant primitive type message of the complex data structure. +type ROS2PrimitiveMessageDefinition struct { + _ struct{} `type:"structure"` + + // The offset used to calculate the signal value. Combined with scaling, the + // calculation is value = raw_value * scaling + offset. + Offset *float64 `locationName:"offset" type:"double"` + + // The primitive type (integer, floating point, boolean, etc.) for the ROS 2 + // primitive message definition. + // + // PrimitiveType is a required field + PrimitiveType *string `locationName:"primitiveType" type:"string" required:"true" enum:"ROS2PrimitiveType"` + + // A multiplier used to decode the message. + Scaling *float64 `locationName:"scaling" type:"double"` + + // An optional attribute specifying the upper bound for STRING and WSTRING. + UpperBound *int64 `locationName:"upperBound" type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ROS2PrimitiveMessageDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ROS2PrimitiveMessageDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ROS2PrimitiveMessageDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ROS2PrimitiveMessageDefinition"} + if s.PrimitiveType == nil { + invalidParams.Add(request.NewErrParamRequired("PrimitiveType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOffset sets the Offset field's value. +func (s *ROS2PrimitiveMessageDefinition) SetOffset(v float64) *ROS2PrimitiveMessageDefinition { + s.Offset = &v + return s +} + +// SetPrimitiveType sets the PrimitiveType field's value. +func (s *ROS2PrimitiveMessageDefinition) SetPrimitiveType(v string) *ROS2PrimitiveMessageDefinition { + s.PrimitiveType = &v + return s +} + +// SetScaling sets the Scaling field's value. +func (s *ROS2PrimitiveMessageDefinition) SetScaling(v float64) *ROS2PrimitiveMessageDefinition { + s.Scaling = &v + return s +} + +// SetUpperBound sets the UpperBound field's value. +func (s *ROS2PrimitiveMessageDefinition) SetUpperBound(v int64) *ROS2PrimitiveMessageDefinition { + s.UpperBound = &v + return s +} + type RegisterAccountInput struct { _ struct{} `type:"structure"` @@ -13991,6 +14917,11 @@ // The specified possible minimum value of the sensor. Min *float64 `locationName:"min" type:"double"` + // The fully qualified name of the struct node for a sensor if the data type + // of the actuator is Struct or StructArray. For example, the struct fully qualified + // name of a sensor might be Vehicle.ADAS.CameraStruct. + StructFullyQualifiedName *string `locationName:"structFullyQualifiedName" min:"1" type:"string"` + // The scientific unit of measurement for data collected by the sensor. Unit *string `locationName:"unit" type:"string"` } @@ -14031,6 +14962,9 @@ if s.FullyQualifiedName == nil { invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) } + if s.StructFullyQualifiedName != nil && len(*s.StructFullyQualifiedName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StructFullyQualifiedName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -14086,6 +15020,12 @@ return s } +// SetStructFullyQualifiedName sets the StructFullyQualifiedName field's value. +func (s *Sensor) SetStructFullyQualifiedName(v string) *Sensor { + s.StructFullyQualifiedName = &v + return s +} + // SetUnit sets the Unit field's value. func (s *Sensor) SetUnit(v string) *Sensor { s.Unit = &v @@ -14173,6 +15113,10 @@ // InterfaceId is a required field InterfaceId *string `locationName:"interfaceId" min:"1" type:"string" required:"true"` + // The decoding information for a specific message which supports higher order + // data types. + MessageSignal *MessageSignal `locationName:"messageSignal" type:"structure"` + // Information about signal decoder using the On-board diagnostic (OBD) II protocol. ObdSignal *ObdSignal `locationName:"obdSignal" type:"structure"` @@ -14226,6 +15170,11 @@ invalidParams.AddNested("CanSignal", err.(request.ErrInvalidParams)) } } + if s.MessageSignal != nil { + if err := s.MessageSignal.Validate(); err != nil { + invalidParams.AddNested("MessageSignal", err.(request.ErrInvalidParams)) + } + } if s.ObdSignal != nil { if err := s.ObdSignal.Validate(); err != nil { invalidParams.AddNested("ObdSignal", err.(request.ErrInvalidParams)) @@ -14256,6 +15205,12 @@ return s } +// SetMessageSignal sets the MessageSignal field's value. +func (s *SignalDecoder) SetMessageSignal(v *MessageSignal) *SignalDecoder { + s.MessageSignal = v + return s +} + // SetObdSignal sets the ObdSignal field's value. func (s *SignalDecoder) SetObdSignal(v *ObdSignal) *SignalDecoder { s.ObdSignal = v @@ -14342,6 +15297,254 @@ return s } +// The structured message for the message signal. It can be defined with either +// a primitiveMessageDefinition, structuredMessageListDefinition, or structuredMessageDefinition +// recursively. +type StructuredMessage struct { + _ struct{} `type:"structure"` + + // Represents a primitive type node of the complex data structure. + PrimitiveMessageDefinition *PrimitiveMessageDefinition `locationName:"primitiveMessageDefinition" type:"structure"` + + // Represents a struct type node of the complex data structure. + StructuredMessageDefinition []*StructuredMessageFieldNameAndDataTypePair `locationName:"structuredMessageDefinition" min:"1" type:"list"` + + // Represents a list type node of the complex data structure. + StructuredMessageListDefinition *StructuredMessageListDefinition `locationName:"structuredMessageListDefinition" 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 StructuredMessage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StructuredMessage) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StructuredMessage) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StructuredMessage"} + if s.StructuredMessageDefinition != nil && len(s.StructuredMessageDefinition) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StructuredMessageDefinition", 1)) + } + if s.PrimitiveMessageDefinition != nil { + if err := s.PrimitiveMessageDefinition.Validate(); err != nil { + invalidParams.AddNested("PrimitiveMessageDefinition", err.(request.ErrInvalidParams)) + } + } + if s.StructuredMessageDefinition != nil { + for i, v := range s.StructuredMessageDefinition { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StructuredMessageDefinition", i), err.(request.ErrInvalidParams)) + } + } + } + if s.StructuredMessageListDefinition != nil { + if err := s.StructuredMessageListDefinition.Validate(); err != nil { + invalidParams.AddNested("StructuredMessageListDefinition", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPrimitiveMessageDefinition sets the PrimitiveMessageDefinition field's value. +func (s *StructuredMessage) SetPrimitiveMessageDefinition(v *PrimitiveMessageDefinition) *StructuredMessage { + s.PrimitiveMessageDefinition = v + return s +} + +// SetStructuredMessageDefinition sets the StructuredMessageDefinition field's value. +func (s *StructuredMessage) SetStructuredMessageDefinition(v []*StructuredMessageFieldNameAndDataTypePair) *StructuredMessage { + s.StructuredMessageDefinition = v + return s +} + +// SetStructuredMessageListDefinition sets the StructuredMessageListDefinition field's value. +func (s *StructuredMessage) SetStructuredMessageListDefinition(v *StructuredMessageListDefinition) *StructuredMessage { + s.StructuredMessageListDefinition = v + return s +} + +// Represents a StructureMessageName to DataType map element. +type StructuredMessageFieldNameAndDataTypePair struct { + _ struct{} `type:"structure"` + + // The data type. + // + // DataType is a required field + DataType *StructuredMessage `locationName:"dataType" type:"structure" required:"true"` + + // The field name of the structured message. It determines how a data value + // is referenced in the target language. + // + // FieldName is a required field + FieldName *string `locationName:"fieldName" 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 StructuredMessageFieldNameAndDataTypePair) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StructuredMessageFieldNameAndDataTypePair) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StructuredMessageFieldNameAndDataTypePair) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StructuredMessageFieldNameAndDataTypePair"} + if s.DataType == nil { + invalidParams.Add(request.NewErrParamRequired("DataType")) + } + if s.FieldName == nil { + invalidParams.Add(request.NewErrParamRequired("FieldName")) + } + if s.FieldName != nil && len(*s.FieldName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FieldName", 1)) + } + if s.DataType != nil { + if err := s.DataType.Validate(); err != nil { + invalidParams.AddNested("DataType", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataType sets the DataType field's value. +func (s *StructuredMessageFieldNameAndDataTypePair) SetDataType(v *StructuredMessage) *StructuredMessageFieldNameAndDataTypePair { + s.DataType = v + return s +} + +// SetFieldName sets the FieldName field's value. +func (s *StructuredMessageFieldNameAndDataTypePair) SetFieldName(v string) *StructuredMessageFieldNameAndDataTypePair { + s.FieldName = &v + return s +} + +// Represents a list type node of the complex data structure. +type StructuredMessageListDefinition struct { + _ struct{} `type:"structure"` + + // The capacity of the structured message list definition when the list type + // is FIXED_CAPACITY or DYNAMIC_BOUNDED_CAPACITY. + Capacity *int64 `locationName:"capacity" type:"integer"` + + // The type of list of the structured message list definition. + // + // ListType is a required field + ListType *string `locationName:"listType" type:"string" required:"true" enum:"StructuredMessageListType"` + + // The member type of the structured message list definition. + // + // MemberType is a required field + MemberType *StructuredMessage `locationName:"memberType" type:"structure" required:"true"` + + // The name of the structured message list definition. + // + // Name is a required field + Name *string `locationName:"name" 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 StructuredMessageListDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StructuredMessageListDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StructuredMessageListDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StructuredMessageListDefinition"} + if s.ListType == nil { + invalidParams.Add(request.NewErrParamRequired("ListType")) + } + if s.MemberType == nil { + invalidParams.Add(request.NewErrParamRequired("MemberType")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.MemberType != nil { + if err := s.MemberType.Validate(); err != nil { + invalidParams.AddNested("MemberType", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapacity sets the Capacity field's value. +func (s *StructuredMessageListDefinition) SetCapacity(v int64) *StructuredMessageListDefinition { + s.Capacity = &v + return s +} + +// SetListType sets the ListType field's value. +func (s *StructuredMessageListDefinition) SetListType(v string) *StructuredMessageListDefinition { + s.ListType = &v + return s +} + +// SetMemberType sets the MemberType field's value. +func (s *StructuredMessageListDefinition) SetMemberType(v *StructuredMessage) *StructuredMessageListDefinition { + s.MemberType = v + return s +} + +// SetName sets the Name field's value. +func (s *StructuredMessageListDefinition) SetName(v string) *StructuredMessageListDefinition { + s.Name = &v + return s +} + // A set of key/value pairs that are used to manage the resource. type Tag struct { _ struct{} `type:"structure"` @@ -16158,6 +17361,71 @@ return s } +// The vehicle middleware defined as a type of network interface. Examples of +// vehicle middleware include ROS2 and SOME/IP. +type VehicleMiddleware struct { + _ struct{} `type:"structure"` + + // The name of the vehicle middleware. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The protocol name of the vehicle middleware. + // + // ProtocolName is a required field + ProtocolName *string `locationName:"protocolName" type:"string" required:"true" enum:"VehicleMiddlewareProtocol"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VehicleMiddleware) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VehicleMiddleware) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VehicleMiddleware) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VehicleMiddleware"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ProtocolName == nil { + invalidParams.Add(request.NewErrParamRequired("ProtocolName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *VehicleMiddleware) SetName(v string) *VehicleMiddleware { + s.Name = &v + return s +} + +// SetProtocolName sets the ProtocolName field's value. +func (s *VehicleMiddleware) SetProtocolName(v string) *VehicleMiddleware { + s.ProtocolName = &v + return s +} + // Information about the state of a vehicle and how it relates to the status // of a campaign. type VehicleStatus struct { @@ -16389,6 +17657,42 @@ } const ( + // EncryptionStatusPending is a EncryptionStatus enum value + EncryptionStatusPending = "PENDING" + + // EncryptionStatusSuccess is a EncryptionStatus enum value + EncryptionStatusSuccess = "SUCCESS" + + // EncryptionStatusFailure is a EncryptionStatus enum value + EncryptionStatusFailure = "FAILURE" +) + +// EncryptionStatus_Values returns all elements of the EncryptionStatus enum +func EncryptionStatus_Values() []string { + return []string{ + EncryptionStatusPending, + EncryptionStatusSuccess, + EncryptionStatusFailure, + } +} + +const ( + // EncryptionTypeKmsBasedEncryption is a EncryptionType enum value + EncryptionTypeKmsBasedEncryption = "KMS_BASED_ENCRYPTION" + + // EncryptionTypeFleetwiseDefaultEncryption is a EncryptionType enum value + EncryptionTypeFleetwiseDefaultEncryption = "FLEETWISE_DEFAULT_ENCRYPTION" +) + +// EncryptionType_Values returns all elements of the EncryptionType enum +func EncryptionType_Values() []string { + return []string{ + EncryptionTypeKmsBasedEncryption, + EncryptionTypeFleetwiseDefaultEncryption, + } +} + +const ( // LogTypeOff is a LogType enum value LogTypeOff = "OFF" @@ -16410,6 +17714,12 @@ // ManifestStatusDraft is a ManifestStatus enum value ManifestStatusDraft = "DRAFT" + + // ManifestStatusInvalid is a ManifestStatus enum value + ManifestStatusInvalid = "INVALID" + + // ManifestStatusValidating is a ManifestStatus enum value + ManifestStatusValidating = "VALIDATING" ) // ManifestStatus_Values returns all elements of the ManifestStatus enum @@ -16417,6 +17727,8 @@ return []string{ ManifestStatusActive, ManifestStatusDraft, + ManifestStatusInvalid, + ManifestStatusValidating, } } @@ -16438,6 +17750,12 @@ // NetworkInterfaceFailureReasonNetworkInterfaceToRemoveAssociatedWithSignals is a NetworkInterfaceFailureReason enum value NetworkInterfaceFailureReasonNetworkInterfaceToRemoveAssociatedWithSignals = "NETWORK_INTERFACE_TO_REMOVE_ASSOCIATED_WITH_SIGNALS" + + // NetworkInterfaceFailureReasonVehicleMiddlewareNetworkInterfaceInfoIsNull is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonVehicleMiddlewareNetworkInterfaceInfoIsNull = "VEHICLE_MIDDLEWARE_NETWORK_INTERFACE_INFO_IS_NULL" + + // NetworkInterfaceFailureReasonCustomerDecodedSignalNetworkInterfaceInfoIsNull is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonCustomerDecodedSignalNetworkInterfaceInfoIsNull = "CUSTOMER_DECODED_SIGNAL_NETWORK_INTERFACE_INFO_IS_NULL" ) // NetworkInterfaceFailureReason_Values returns all elements of the NetworkInterfaceFailureReason enum @@ -16449,6 +17767,8 @@ NetworkInterfaceFailureReasonCanNetworkInterfaceInfoIsNull, NetworkInterfaceFailureReasonObdNetworkInterfaceInfoIsNull, NetworkInterfaceFailureReasonNetworkInterfaceToRemoveAssociatedWithSignals, + NetworkInterfaceFailureReasonVehicleMiddlewareNetworkInterfaceInfoIsNull, + NetworkInterfaceFailureReasonCustomerDecodedSignalNetworkInterfaceInfoIsNull, } } @@ -16458,6 +17778,12 @@ // NetworkInterfaceTypeObdInterface is a NetworkInterfaceType enum value NetworkInterfaceTypeObdInterface = "OBD_INTERFACE" + + // NetworkInterfaceTypeVehicleMiddleware is a NetworkInterfaceType enum value + NetworkInterfaceTypeVehicleMiddleware = "VEHICLE_MIDDLEWARE" + + // NetworkInterfaceTypeCustomerDecodedInterface is a NetworkInterfaceType enum value + NetworkInterfaceTypeCustomerDecodedInterface = "CUSTOMER_DECODED_INTERFACE" ) // NetworkInterfaceType_Values returns all elements of the NetworkInterfaceType enum @@ -16465,6 +17791,24 @@ return []string{ NetworkInterfaceTypeCanInterface, NetworkInterfaceTypeObdInterface, + NetworkInterfaceTypeVehicleMiddleware, + NetworkInterfaceTypeCustomerDecodedInterface, + } +} + +const ( + // NodeDataEncodingBinary is a NodeDataEncoding enum value + NodeDataEncodingBinary = "BINARY" + + // NodeDataEncodingTyped is a NodeDataEncoding enum value + NodeDataEncodingTyped = "TYPED" +) + +// NodeDataEncoding_Values returns all elements of the NodeDataEncoding enum +func NodeDataEncoding_Values() []string { + return []string{ + NodeDataEncodingBinary, + NodeDataEncodingTyped, } } @@ -16549,6 +17893,12 @@ // NodeDataTypeUnknown is a NodeDataType enum value NodeDataTypeUnknown = "UNKNOWN" + + // NodeDataTypeStruct is a NodeDataType enum value + NodeDataTypeStruct = "STRUCT" + + // NodeDataTypeStructArray is a NodeDataType enum value + NodeDataTypeStructArray = "STRUCT_ARRAY" ) // NodeDataType_Values returns all elements of the NodeDataType enum @@ -16581,6 +17931,76 @@ NodeDataTypeStringArray, NodeDataTypeUnixTimestampArray, NodeDataTypeUnknown, + NodeDataTypeStruct, + NodeDataTypeStructArray, + } +} + +const ( + // ROS2PrimitiveTypeBool is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeBool = "BOOL" + + // ROS2PrimitiveTypeByte is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeByte = "BYTE" + + // ROS2PrimitiveTypeChar is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeChar = "CHAR" + + // ROS2PrimitiveTypeFloat32 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeFloat32 = "FLOAT32" + + // ROS2PrimitiveTypeFloat64 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeFloat64 = "FLOAT64" + + // ROS2PrimitiveTypeInt8 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeInt8 = "INT8" + + // ROS2PrimitiveTypeUint8 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeUint8 = "UINT8" + + // ROS2PrimitiveTypeInt16 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeInt16 = "INT16" + + // ROS2PrimitiveTypeUint16 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeUint16 = "UINT16" + + // ROS2PrimitiveTypeInt32 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeInt32 = "INT32" + + // ROS2PrimitiveTypeUint32 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeUint32 = "UINT32" + + // ROS2PrimitiveTypeInt64 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeInt64 = "INT64" + + // ROS2PrimitiveTypeUint64 is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeUint64 = "UINT64" + + // ROS2PrimitiveTypeString is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeString = "STRING" + + // ROS2PrimitiveTypeWstring is a ROS2PrimitiveType enum value + ROS2PrimitiveTypeWstring = "WSTRING" +) + +// ROS2PrimitiveType_Values returns all elements of the ROS2PrimitiveType enum +func ROS2PrimitiveType_Values() []string { + return []string{ + ROS2PrimitiveTypeBool, + ROS2PrimitiveTypeByte, + ROS2PrimitiveTypeChar, + ROS2PrimitiveTypeFloat32, + ROS2PrimitiveTypeFloat64, + ROS2PrimitiveTypeInt8, + ROS2PrimitiveTypeUint8, + ROS2PrimitiveTypeInt16, + ROS2PrimitiveTypeUint16, + ROS2PrimitiveTypeInt32, + ROS2PrimitiveTypeUint32, + ROS2PrimitiveTypeInt64, + ROS2PrimitiveTypeUint64, + ROS2PrimitiveTypeString, + ROS2PrimitiveTypeWstring, } } @@ -16631,6 +18051,27 @@ // SignalDecoderFailureReasonNoDecoderInfoForSignalInModel is a SignalDecoderFailureReason enum value SignalDecoderFailureReasonNoDecoderInfoForSignalInModel = "NO_DECODER_INFO_FOR_SIGNAL_IN_MODEL" + + // SignalDecoderFailureReasonMessageSignalInfoIsNull is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonMessageSignalInfoIsNull = "MESSAGE_SIGNAL_INFO_IS_NULL" + + // SignalDecoderFailureReasonSignalDecoderTypeIncompatibleWithMessageSignalType is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonSignalDecoderTypeIncompatibleWithMessageSignalType = "SIGNAL_DECODER_TYPE_INCOMPATIBLE_WITH_MESSAGE_SIGNAL_TYPE" + + // SignalDecoderFailureReasonStructSizeMismatch is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonStructSizeMismatch = "STRUCT_SIZE_MISMATCH" + + // SignalDecoderFailureReasonNoSignalInCatalogForDecoderSignal is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonNoSignalInCatalogForDecoderSignal = "NO_SIGNAL_IN_CATALOG_FOR_DECODER_SIGNAL" + + // SignalDecoderFailureReasonSignalDecoderIncompatibleWithSignalCatalog is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonSignalDecoderIncompatibleWithSignalCatalog = "SIGNAL_DECODER_INCOMPATIBLE_WITH_SIGNAL_CATALOG" + + // SignalDecoderFailureReasonEmptyMessageSignal is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonEmptyMessageSignal = "EMPTY_MESSAGE_SIGNAL" + + // SignalDecoderFailureReasonCustomerDecodedSignalInfoIsNull is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonCustomerDecodedSignalInfoIsNull = "CUSTOMER_DECODED_SIGNAL_INFO_IS_NULL" ) // SignalDecoderFailureReason_Values returns all elements of the SignalDecoderFailureReason enum @@ -16645,6 +18086,13 @@ SignalDecoderFailureReasonCanSignalInfoIsNull, SignalDecoderFailureReasonObdSignalInfoIsNull, SignalDecoderFailureReasonNoDecoderInfoForSignalInModel, + SignalDecoderFailureReasonMessageSignalInfoIsNull, + SignalDecoderFailureReasonSignalDecoderTypeIncompatibleWithMessageSignalType, + SignalDecoderFailureReasonStructSizeMismatch, + SignalDecoderFailureReasonNoSignalInCatalogForDecoderSignal, + SignalDecoderFailureReasonSignalDecoderIncompatibleWithSignalCatalog, + SignalDecoderFailureReasonEmptyMessageSignal, + SignalDecoderFailureReasonCustomerDecodedSignalInfoIsNull, } } @@ -16654,6 +18102,12 @@ // SignalDecoderTypeObdSignal is a SignalDecoderType enum value SignalDecoderTypeObdSignal = "OBD_SIGNAL" + + // SignalDecoderTypeMessageSignal is a SignalDecoderType enum value + SignalDecoderTypeMessageSignal = "MESSAGE_SIGNAL" + + // SignalDecoderTypeCustomerDecodedSignal is a SignalDecoderType enum value + SignalDecoderTypeCustomerDecodedSignal = "CUSTOMER_DECODED_SIGNAL" ) // SignalDecoderType_Values returns all elements of the SignalDecoderType enum @@ -16661,6 +18115,8 @@ return []string{ SignalDecoderTypeCanSignal, SignalDecoderTypeObdSignal, + SignalDecoderTypeMessageSignal, + SignalDecoderTypeCustomerDecodedSignal, } } @@ -16697,6 +18153,26 @@ } const ( + // StructuredMessageListTypeFixedCapacity is a StructuredMessageListType enum value + StructuredMessageListTypeFixedCapacity = "FIXED_CAPACITY" + + // StructuredMessageListTypeDynamicUnboundedCapacity is a StructuredMessageListType enum value + StructuredMessageListTypeDynamicUnboundedCapacity = "DYNAMIC_UNBOUNDED_CAPACITY" + + // StructuredMessageListTypeDynamicBoundedCapacity is a StructuredMessageListType enum value + StructuredMessageListTypeDynamicBoundedCapacity = "DYNAMIC_BOUNDED_CAPACITY" +) + +// StructuredMessageListType_Values returns all elements of the StructuredMessageListType enum +func StructuredMessageListType_Values() []string { + return []string{ + StructuredMessageListTypeFixedCapacity, + StructuredMessageListTypeDynamicUnboundedCapacity, + StructuredMessageListTypeDynamicBoundedCapacity, + } +} + +const ( // TriggerModeAlways is a TriggerMode enum value TriggerModeAlways = "ALWAYS" @@ -16792,6 +18268,18 @@ } } +const ( + // VehicleMiddlewareProtocolRos2 is a VehicleMiddlewareProtocol enum value + VehicleMiddlewareProtocolRos2 = "ROS_2" +) + +// VehicleMiddlewareProtocol_Values returns all elements of the VehicleMiddlewareProtocol enum +func VehicleMiddlewareProtocol_Values() []string { + return []string{ + VehicleMiddlewareProtocolRos2, + } +} + const ( // VehicleStateCreated is a VehicleState enum value VehicleStateCreated = "CREATED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iotfleetwise/iotfleetwiseiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/iotfleetwise/iotfleetwiseiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iotfleetwise/iotfleetwiseiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iotfleetwise/iotfleetwiseiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -132,6 +132,10 @@ GetDecoderManifestWithContext(aws.Context, *iotfleetwise.GetDecoderManifestInput, ...request.Option) (*iotfleetwise.GetDecoderManifestOutput, error) GetDecoderManifestRequest(*iotfleetwise.GetDecoderManifestInput) (*request.Request, *iotfleetwise.GetDecoderManifestOutput) + GetEncryptionConfiguration(*iotfleetwise.GetEncryptionConfigurationInput) (*iotfleetwise.GetEncryptionConfigurationOutput, error) + GetEncryptionConfigurationWithContext(aws.Context, *iotfleetwise.GetEncryptionConfigurationInput, ...request.Option) (*iotfleetwise.GetEncryptionConfigurationOutput, error) + GetEncryptionConfigurationRequest(*iotfleetwise.GetEncryptionConfigurationInput) (*request.Request, *iotfleetwise.GetEncryptionConfigurationOutput) + GetFleet(*iotfleetwise.GetFleetInput) (*iotfleetwise.GetFleetOutput, error) GetFleetWithContext(aws.Context, *iotfleetwise.GetFleetInput, ...request.Option) (*iotfleetwise.GetFleetOutput, error) GetFleetRequest(*iotfleetwise.GetFleetInput) (*request.Request, *iotfleetwise.GetFleetOutput) @@ -259,6 +263,10 @@ ListVehiclesInFleetPages(*iotfleetwise.ListVehiclesInFleetInput, func(*iotfleetwise.ListVehiclesInFleetOutput, bool) bool) error ListVehiclesInFleetPagesWithContext(aws.Context, *iotfleetwise.ListVehiclesInFleetInput, func(*iotfleetwise.ListVehiclesInFleetOutput, bool) bool, ...request.Option) error + PutEncryptionConfiguration(*iotfleetwise.PutEncryptionConfigurationInput) (*iotfleetwise.PutEncryptionConfigurationOutput, error) + PutEncryptionConfigurationWithContext(aws.Context, *iotfleetwise.PutEncryptionConfigurationInput, ...request.Option) (*iotfleetwise.PutEncryptionConfigurationOutput, error) + PutEncryptionConfigurationRequest(*iotfleetwise.PutEncryptionConfigurationInput) (*request.Request, *iotfleetwise.PutEncryptionConfigurationOutput) + PutLoggingOptions(*iotfleetwise.PutLoggingOptionsInput) (*iotfleetwise.PutLoggingOptionsOutput, error) PutLoggingOptionsWithContext(aws.Context, *iotfleetwise.PutLoggingOptionsInput, ...request.Option) (*iotfleetwise.PutLoggingOptionsOutput, error) PutLoggingOptionsRequest(*iotfleetwise.PutLoggingOptionsInput) (*request.Request, *iotfleetwise.PutLoggingOptionsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iotsitewise/api.go golang-github-aws-aws-sdk-go-1.48.14/service/iotsitewise/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iotsitewise/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iotsitewise/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1299,6 +1299,15 @@ // For more information, see Defining asset models (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/define-models.html) // in the IoT SiteWise User Guide. // +// You can create two types of asset models, ASSET_MODEL or COMPONENT_MODEL. +// +// - ASSET_MODEL – (default) An asset model that you can use to create +// assets. Can't be included as a component in another asset model. +// +// - COMPONENT_MODEL – A reusable component that you can include in the +// composite models of other asset models. You can't create assets directly +// from this type of asset model. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1363,6 +1372,137 @@ return out, req.Send() } +const opCreateAssetModelCompositeModel = "CreateAssetModelCompositeModel" + +// CreateAssetModelCompositeModelRequest generates a "aws/request.Request" representing the +// client's request for the CreateAssetModelCompositeModel 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 CreateAssetModelCompositeModel for more information on using the CreateAssetModelCompositeModel +// 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 CreateAssetModelCompositeModelRequest method. +// req, resp := client.CreateAssetModelCompositeModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/CreateAssetModelCompositeModel +func (c *IoTSiteWise) CreateAssetModelCompositeModelRequest(input *CreateAssetModelCompositeModelInput) (req *request.Request, output *CreateAssetModelCompositeModelOutput) { + op := &request.Operation{ + Name: opCreateAssetModelCompositeModel, + HTTPMethod: "POST", + HTTPPath: "/asset-models/{assetModelId}/composite-models", + } + + if input == nil { + input = &CreateAssetModelCompositeModelInput{} + } + + output = &CreateAssetModelCompositeModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CreateAssetModelCompositeModel API operation for AWS IoT SiteWise. +// +// Creates a custom composite model from specified property and hierarchy definitions. +// There are two types of custom composite models, inline and component-model-based. +// +// Use component-model-based custom composite models to define standard, reusable +// components. A component-model-based custom composite model consists of a +// name, a description, and the ID of the component model it references. A component-model-based +// custom composite model has no properties of its own; its referenced component +// model provides its associated properties to any created assets. For more +// information, see Custom composite models (Components) (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html) +// in the IoT SiteWise User Guide. +// +// Use inline custom composite models to organize the properties of an asset +// model. The properties of inline custom composite models are local to the +// asset model where they are included and can't be used to create multiple +// assets. +// +// To create a component-model-based model, specify the composedAssetModelId +// of an existing asset model with assetModelType of COMPONENT_MODEL. +// +// To create an inline model, specify the assetModelCompositeModelProperties +// and don't include an composedAssetModelId. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation CreateAssetModelCompositeModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictingOperationException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceAlreadyExistsException +// The resource already exists. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - LimitExceededException +// You've reached the limit for a resource. For example, this can occur if you're +// trying to associate more than the allowed number of child assets or attempting +// to create more than the allowed number of properties for an asset model. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/CreateAssetModelCompositeModel +func (c *IoTSiteWise) CreateAssetModelCompositeModel(input *CreateAssetModelCompositeModelInput) (*CreateAssetModelCompositeModelOutput, error) { + req, out := c.CreateAssetModelCompositeModelRequest(input) + return out, req.Send() +} + +// CreateAssetModelCompositeModelWithContext is the same as CreateAssetModelCompositeModel with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAssetModelCompositeModel 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 *IoTSiteWise) CreateAssetModelCompositeModelWithContext(ctx aws.Context, input *CreateAssetModelCompositeModelInput, opts ...request.Option) (*CreateAssetModelCompositeModelOutput, error) { + req, out := c.CreateAssetModelCompositeModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateBulkImportJob = "CreateBulkImportJob" // CreateBulkImportJobRequest generates a "aws/request.Request" representing the @@ -1412,9 +1552,13 @@ // see Create a bulk import job (CLI) (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/CreateBulkImportJob.html) // in the Amazon Simple Storage Service User Guide. // -// You must enable IoT SiteWise to export data to Amazon S3 before you create -// a bulk import job. For more information about how to configure storage settings, -// see PutStorageConfiguration (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_PutStorageConfiguration.html). +// Before you create a bulk import job, you must enable IoT SiteWise warm tier +// or IoT SiteWise cold tier. For more information about how to configure storage +// settings, see PutStorageConfiguration (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_PutStorageConfiguration.html). +// +// Bulk import is designed to store historical data to IoT SiteWise. It does +// not trigger computations or notifications on IoT SiteWise warm or cold tier +// storage. // // 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 @@ -2218,6 +2362,111 @@ return out, req.Send() } +const opDeleteAssetModelCompositeModel = "DeleteAssetModelCompositeModel" + +// DeleteAssetModelCompositeModelRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAssetModelCompositeModel 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 DeleteAssetModelCompositeModel for more information on using the DeleteAssetModelCompositeModel +// 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 DeleteAssetModelCompositeModelRequest method. +// req, resp := client.DeleteAssetModelCompositeModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DeleteAssetModelCompositeModel +func (c *IoTSiteWise) DeleteAssetModelCompositeModelRequest(input *DeleteAssetModelCompositeModelInput) (req *request.Request, output *DeleteAssetModelCompositeModelOutput) { + op := &request.Operation{ + Name: opDeleteAssetModelCompositeModel, + HTTPMethod: "DELETE", + HTTPPath: "/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}", + } + + if input == nil { + input = &DeleteAssetModelCompositeModelInput{} + } + + output = &DeleteAssetModelCompositeModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeleteAssetModelCompositeModel API operation for AWS IoT SiteWise. +// +// Deletes a composite model. This action can't be undone. You must delete all +// assets created from a composite model before you can delete the model. Also, +// you can't delete a composite model if a parent asset model exists that contains +// a property formula expression that depends on the asset model that you want +// to delete. For more information, see Deleting assets and models (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/delete-assets-and-models.html) +// in the IoT SiteWise User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation DeleteAssetModelCompositeModel for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - ConflictingOperationException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DeleteAssetModelCompositeModel +func (c *IoTSiteWise) DeleteAssetModelCompositeModel(input *DeleteAssetModelCompositeModelInput) (*DeleteAssetModelCompositeModelOutput, error) { + req, out := c.DeleteAssetModelCompositeModelRequest(input) + return out, req.Send() +} + +// DeleteAssetModelCompositeModelWithContext is the same as DeleteAssetModelCompositeModel with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAssetModelCompositeModel 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 *IoTSiteWise) DeleteAssetModelCompositeModelWithContext(ctx aws.Context, input *DeleteAssetModelCompositeModelInput, opts ...request.Option) (*DeleteAssetModelCompositeModelOutput, error) { + req, out := c.DeleteAssetModelCompositeModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDashboard = "DeleteDashboard" // DeleteDashboardRequest generates a "aws/request.Request" representing the @@ -2819,6 +3068,102 @@ return out, req.Send() } +const opDescribeAction = "DescribeAction" + +// DescribeActionRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAction 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 DescribeAction for more information on using the DescribeAction +// 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 DescribeActionRequest method. +// req, resp := client.DescribeActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DescribeAction +func (c *IoTSiteWise) DescribeActionRequest(input *DescribeActionInput) (req *request.Request, output *DescribeActionOutput) { + op := &request.Operation{ + Name: opDescribeAction, + HTTPMethod: "GET", + HTTPPath: "/actions/{actionId}", + } + + if input == nil { + input = &DescribeActionInput{} + } + + output = &DescribeActionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DescribeAction API operation for AWS IoT SiteWise. +// +// Retrieves information about an action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation DescribeAction for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DescribeAction +func (c *IoTSiteWise) DescribeAction(input *DescribeActionInput) (*DescribeActionOutput, error) { + req, out := c.DescribeActionRequest(input) + return out, req.Send() +} + +// DescribeActionWithContext is the same as DescribeAction with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeAction 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 *IoTSiteWise) DescribeActionWithContext(ctx aws.Context, input *DescribeActionInput, opts ...request.Option) (*DescribeActionOutput, error) { + req, out := c.DescribeActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAsset = "DescribeAsset" // DescribeAssetRequest generates a "aws/request.Request" representing the @@ -2915,6 +3260,105 @@ return out, req.Send() } +const opDescribeAssetCompositeModel = "DescribeAssetCompositeModel" + +// DescribeAssetCompositeModelRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAssetCompositeModel 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 DescribeAssetCompositeModel for more information on using the DescribeAssetCompositeModel +// 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 DescribeAssetCompositeModelRequest method. +// req, resp := client.DescribeAssetCompositeModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DescribeAssetCompositeModel +func (c *IoTSiteWise) DescribeAssetCompositeModelRequest(input *DescribeAssetCompositeModelInput) (req *request.Request, output *DescribeAssetCompositeModelOutput) { + op := &request.Operation{ + Name: opDescribeAssetCompositeModel, + HTTPMethod: "GET", + HTTPPath: "/assets/{assetId}/composite-models/{assetCompositeModelId}", + } + + if input == nil { + input = &DescribeAssetCompositeModelInput{} + } + + output = &DescribeAssetCompositeModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DescribeAssetCompositeModel API operation for AWS IoT SiteWise. +// +// Retrieves information about an asset composite model (also known as an asset +// component). An AssetCompositeModel is an instance of an AssetModelCompositeModel. +// If you want to see information about the model this is based on, call DescribeAssetModelCompositeModel +// (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModelCompositeModel.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation DescribeAssetCompositeModel for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DescribeAssetCompositeModel +func (c *IoTSiteWise) DescribeAssetCompositeModel(input *DescribeAssetCompositeModelInput) (*DescribeAssetCompositeModelOutput, error) { + req, out := c.DescribeAssetCompositeModelRequest(input) + return out, req.Send() +} + +// DescribeAssetCompositeModelWithContext is the same as DescribeAssetCompositeModel with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeAssetCompositeModel 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 *IoTSiteWise) DescribeAssetCompositeModelWithContext(ctx aws.Context, input *DescribeAssetCompositeModelInput, opts ...request.Option) (*DescribeAssetCompositeModelOutput, error) { + req, out := c.DescribeAssetCompositeModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAssetModel = "DescribeAssetModel" // DescribeAssetModelRequest generates a "aws/request.Request" representing the @@ -3011,6 +3455,105 @@ return out, req.Send() } +const opDescribeAssetModelCompositeModel = "DescribeAssetModelCompositeModel" + +// DescribeAssetModelCompositeModelRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAssetModelCompositeModel 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 DescribeAssetModelCompositeModel for more information on using the DescribeAssetModelCompositeModel +// 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 DescribeAssetModelCompositeModelRequest method. +// req, resp := client.DescribeAssetModelCompositeModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DescribeAssetModelCompositeModel +func (c *IoTSiteWise) DescribeAssetModelCompositeModelRequest(input *DescribeAssetModelCompositeModelInput) (req *request.Request, output *DescribeAssetModelCompositeModelOutput) { + op := &request.Operation{ + Name: opDescribeAssetModelCompositeModel, + HTTPMethod: "GET", + HTTPPath: "/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}", + } + + if input == nil { + input = &DescribeAssetModelCompositeModelInput{} + } + + output = &DescribeAssetModelCompositeModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DescribeAssetModelCompositeModel API operation for AWS IoT SiteWise. +// +// Retrieves information about an asset model composite model (also known as +// an asset model component). For more information, see Custom composite models +// (Components) (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html) +// in the IoT SiteWise User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation DescribeAssetModelCompositeModel for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/DescribeAssetModelCompositeModel +func (c *IoTSiteWise) DescribeAssetModelCompositeModel(input *DescribeAssetModelCompositeModelInput) (*DescribeAssetModelCompositeModelOutput, error) { + req, out := c.DescribeAssetModelCompositeModelRequest(input) + return out, req.Send() +} + +// DescribeAssetModelCompositeModelWithContext is the same as DescribeAssetModelCompositeModel with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeAssetModelCompositeModel 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 *IoTSiteWise) DescribeAssetModelCompositeModelWithContext(ctx aws.Context, input *DescribeAssetModelCompositeModelInput, opts ...request.Option) (*DescribeAssetModelCompositeModelOutput, error) { + req, out := c.DescribeAssetModelCompositeModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAssetProperty = "DescribeAssetProperty" // DescribeAssetPropertyRequest generates a "aws/request.Request" representing the @@ -4306,6 +4849,277 @@ return out, req.Send() } +const opExecuteAction = "ExecuteAction" + +// ExecuteActionRequest generates a "aws/request.Request" representing the +// client's request for the ExecuteAction 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 ExecuteAction for more information on using the ExecuteAction +// 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 ExecuteActionRequest method. +// req, resp := client.ExecuteActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ExecuteAction +func (c *IoTSiteWise) ExecuteActionRequest(input *ExecuteActionInput) (req *request.Request, output *ExecuteActionOutput) { + op := &request.Operation{ + Name: opExecuteAction, + HTTPMethod: "POST", + HTTPPath: "/actions", + } + + if input == nil { + input = &ExecuteActionInput{} + } + + output = &ExecuteActionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ExecuteAction API operation for AWS IoT SiteWise. +// +// Executes an action on a target resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation ExecuteAction for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - LimitExceededException +// You've reached the limit for a resource. For example, this can occur if you're +// trying to associate more than the allowed number of child assets or attempting +// to create more than the allowed number of properties for an asset model. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - ConflictingOperationException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ExecuteAction +func (c *IoTSiteWise) ExecuteAction(input *ExecuteActionInput) (*ExecuteActionOutput, error) { + req, out := c.ExecuteActionRequest(input) + return out, req.Send() +} + +// ExecuteActionWithContext is the same as ExecuteAction with the addition of +// the ability to pass a context and additional request options. +// +// See ExecuteAction 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 *IoTSiteWise) ExecuteActionWithContext(ctx aws.Context, input *ExecuteActionInput, opts ...request.Option) (*ExecuteActionOutput, error) { + req, out := c.ExecuteActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opExecuteQuery = "ExecuteQuery" + +// ExecuteQueryRequest generates a "aws/request.Request" representing the +// client's request for the ExecuteQuery 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 ExecuteQuery for more information on using the ExecuteQuery +// 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 ExecuteQueryRequest method. +// req, resp := client.ExecuteQueryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ExecuteQuery +func (c *IoTSiteWise) ExecuteQueryRequest(input *ExecuteQueryInput) (req *request.Request, output *ExecuteQueryOutput) { + op := &request.Operation{ + Name: opExecuteQuery, + HTTPMethod: "POST", + HTTPPath: "/queries/execution", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ExecuteQueryInput{} + } + + output = &ExecuteQueryOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("data.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ExecuteQuery API operation for AWS IoT SiteWise. +// +// Run SQL queries to retrieve metadata and time-series data from asset models, +// assets, measurements, metrics, transforms, and aggregates. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation ExecuteQuery for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - AccessDeniedException +// Access is denied. +// +// - ValidationException +// The validation failed for this query. +// +// - QueryTimeoutException +// The query timed out. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ServiceUnavailableException +// The requested service is unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ExecuteQuery +func (c *IoTSiteWise) ExecuteQuery(input *ExecuteQueryInput) (*ExecuteQueryOutput, error) { + req, out := c.ExecuteQueryRequest(input) + return out, req.Send() +} + +// ExecuteQueryWithContext is the same as ExecuteQuery with the addition of +// the ability to pass a context and additional request options. +// +// See ExecuteQuery 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 *IoTSiteWise) ExecuteQueryWithContext(ctx aws.Context, input *ExecuteQueryInput, opts ...request.Option) (*ExecuteQueryOutput, error) { + req, out := c.ExecuteQueryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ExecuteQueryPages iterates over the pages of a ExecuteQuery operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ExecuteQuery 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 ExecuteQuery operation. +// pageNum := 0 +// err := client.ExecuteQueryPages(params, +// func(page *iotsitewise.ExecuteQueryOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTSiteWise) ExecuteQueryPages(input *ExecuteQueryInput, fn func(*ExecuteQueryOutput, bool) bool) error { + return c.ExecuteQueryPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ExecuteQueryPagesWithContext same as ExecuteQueryPages 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 *IoTSiteWise) ExecuteQueryPagesWithContext(ctx aws.Context, input *ExecuteQueryInput, fn func(*ExecuteQueryOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ExecuteQueryInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ExecuteQueryRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ExecuteQueryOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opGetAssetPropertyAggregates = "GetAssetPropertyAggregates" // GetAssetPropertyAggregatesRequest generates a "aws/request.Request" representing the @@ -5065,6 +5879,313 @@ return p.Err() } +const opListActions = "ListActions" + +// ListActionsRequest generates a "aws/request.Request" representing the +// client's request for the ListActions 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 ListActions for more information on using the ListActions +// 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 ListActionsRequest method. +// req, resp := client.ListActionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ListActions +func (c *IoTSiteWise) ListActionsRequest(input *ListActionsInput) (req *request.Request, output *ListActionsOutput) { + op := &request.Operation{ + Name: opListActions, + HTTPMethod: "GET", + HTTPPath: "/actions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListActionsInput{} + } + + output = &ListActionsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListActions API operation for AWS IoT SiteWise. +// +// Retrieves a paginated list of actions for a specific target resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation ListActions for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ListActions +func (c *IoTSiteWise) ListActions(input *ListActionsInput) (*ListActionsOutput, error) { + req, out := c.ListActionsRequest(input) + return out, req.Send() +} + +// ListActionsWithContext is the same as ListActions with the addition of +// the ability to pass a context and additional request options. +// +// See ListActions 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 *IoTSiteWise) ListActionsWithContext(ctx aws.Context, input *ListActionsInput, opts ...request.Option) (*ListActionsOutput, error) { + req, out := c.ListActionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListActionsPages iterates over the pages of a ListActions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListActions 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 ListActions operation. +// pageNum := 0 +// err := client.ListActionsPages(params, +// func(page *iotsitewise.ListActionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTSiteWise) ListActionsPages(input *ListActionsInput, fn func(*ListActionsOutput, bool) bool) error { + return c.ListActionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListActionsPagesWithContext same as ListActionsPages 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 *IoTSiteWise) ListActionsPagesWithContext(ctx aws.Context, input *ListActionsInput, fn func(*ListActionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListActionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListActionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListActionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAssetModelCompositeModels = "ListAssetModelCompositeModels" + +// ListAssetModelCompositeModelsRequest generates a "aws/request.Request" representing the +// client's request for the ListAssetModelCompositeModels 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 ListAssetModelCompositeModels for more information on using the ListAssetModelCompositeModels +// 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 ListAssetModelCompositeModelsRequest method. +// req, resp := client.ListAssetModelCompositeModelsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ListAssetModelCompositeModels +func (c *IoTSiteWise) ListAssetModelCompositeModelsRequest(input *ListAssetModelCompositeModelsInput) (req *request.Request, output *ListAssetModelCompositeModelsOutput) { + op := &request.Operation{ + Name: opListAssetModelCompositeModels, + HTTPMethod: "GET", + HTTPPath: "/asset-models/{assetModelId}/composite-models", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAssetModelCompositeModelsInput{} + } + + output = &ListAssetModelCompositeModelsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListAssetModelCompositeModels API operation for AWS IoT SiteWise. +// +// Retrieves a paginated list of composite models associated with the asset +// model +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation ListAssetModelCompositeModels for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ListAssetModelCompositeModels +func (c *IoTSiteWise) ListAssetModelCompositeModels(input *ListAssetModelCompositeModelsInput) (*ListAssetModelCompositeModelsOutput, error) { + req, out := c.ListAssetModelCompositeModelsRequest(input) + return out, req.Send() +} + +// ListAssetModelCompositeModelsWithContext is the same as ListAssetModelCompositeModels with the addition of +// the ability to pass a context and additional request options. +// +// See ListAssetModelCompositeModels 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 *IoTSiteWise) ListAssetModelCompositeModelsWithContext(ctx aws.Context, input *ListAssetModelCompositeModelsInput, opts ...request.Option) (*ListAssetModelCompositeModelsOutput, error) { + req, out := c.ListAssetModelCompositeModelsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAssetModelCompositeModelsPages iterates over the pages of a ListAssetModelCompositeModels operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAssetModelCompositeModels 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 ListAssetModelCompositeModels operation. +// pageNum := 0 +// err := client.ListAssetModelCompositeModelsPages(params, +// func(page *iotsitewise.ListAssetModelCompositeModelsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTSiteWise) ListAssetModelCompositeModelsPages(input *ListAssetModelCompositeModelsInput, fn func(*ListAssetModelCompositeModelsOutput, bool) bool) error { + return c.ListAssetModelCompositeModelsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAssetModelCompositeModelsPagesWithContext same as ListAssetModelCompositeModelsPages 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 *IoTSiteWise) ListAssetModelCompositeModelsPagesWithContext(ctx aws.Context, input *ListAssetModelCompositeModelsInput, fn func(*ListAssetModelCompositeModelsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAssetModelCompositeModelsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAssetModelCompositeModelsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAssetModelCompositeModelsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListAssetModelProperties = "ListAssetModelProperties" // ListAssetModelPropertiesRequest generates a "aws/request.Request" representing the @@ -6159,6 +7280,160 @@ return p.Err() } +const opListCompositionRelationships = "ListCompositionRelationships" + +// ListCompositionRelationshipsRequest generates a "aws/request.Request" representing the +// client's request for the ListCompositionRelationships 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 ListCompositionRelationships for more information on using the ListCompositionRelationships +// 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 ListCompositionRelationshipsRequest method. +// req, resp := client.ListCompositionRelationshipsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ListCompositionRelationships +func (c *IoTSiteWise) ListCompositionRelationshipsRequest(input *ListCompositionRelationshipsInput) (req *request.Request, output *ListCompositionRelationshipsOutput) { + op := &request.Operation{ + Name: opListCompositionRelationships, + HTTPMethod: "GET", + HTTPPath: "/asset-models/{assetModelId}/composition-relationships", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCompositionRelationshipsInput{} + } + + output = &ListCompositionRelationshipsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListCompositionRelationships API operation for AWS IoT SiteWise. +// +// Retrieves a paginated list of composition relationships for an asset model +// of type COMPONENT_MODEL. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation ListCompositionRelationships for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/ListCompositionRelationships +func (c *IoTSiteWise) ListCompositionRelationships(input *ListCompositionRelationshipsInput) (*ListCompositionRelationshipsOutput, error) { + req, out := c.ListCompositionRelationshipsRequest(input) + return out, req.Send() +} + +// ListCompositionRelationshipsWithContext is the same as ListCompositionRelationships with the addition of +// the ability to pass a context and additional request options. +// +// See ListCompositionRelationships 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 *IoTSiteWise) ListCompositionRelationshipsWithContext(ctx aws.Context, input *ListCompositionRelationshipsInput, opts ...request.Option) (*ListCompositionRelationshipsOutput, error) { + req, out := c.ListCompositionRelationshipsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCompositionRelationshipsPages iterates over the pages of a ListCompositionRelationships operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCompositionRelationships 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 ListCompositionRelationships operation. +// pageNum := 0 +// err := client.ListCompositionRelationshipsPages(params, +// func(page *iotsitewise.ListCompositionRelationshipsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTSiteWise) ListCompositionRelationshipsPages(input *ListCompositionRelationshipsInput, fn func(*ListCompositionRelationshipsOutput, bool) bool) error { + return c.ListCompositionRelationshipsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCompositionRelationshipsPagesWithContext same as ListCompositionRelationshipsPages 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 *IoTSiteWise) ListCompositionRelationshipsPagesWithContext(ctx aws.Context, input *ListCompositionRelationshipsInput, fn func(*ListCompositionRelationshipsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCompositionRelationshipsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCompositionRelationshipsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCompositionRelationshipsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDashboards = "ListDashboards" // ListDashboardsRequest generates a "aws/request.Request" representing the @@ -8051,6 +9326,135 @@ return out, req.Send() } +const opUpdateAssetModelCompositeModel = "UpdateAssetModelCompositeModel" + +// UpdateAssetModelCompositeModelRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAssetModelCompositeModel 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 UpdateAssetModelCompositeModel for more information on using the UpdateAssetModelCompositeModel +// 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 UpdateAssetModelCompositeModelRequest method. +// req, resp := client.UpdateAssetModelCompositeModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/UpdateAssetModelCompositeModel +func (c *IoTSiteWise) UpdateAssetModelCompositeModelRequest(input *UpdateAssetModelCompositeModelInput) (req *request.Request, output *UpdateAssetModelCompositeModelOutput) { + op := &request.Operation{ + Name: opUpdateAssetModelCompositeModel, + HTTPMethod: "PUT", + HTTPPath: "/asset-models/{assetModelId}/composite-models/{assetModelCompositeModelId}", + } + + if input == nil { + input = &UpdateAssetModelCompositeModelInput{} + } + + output = &UpdateAssetModelCompositeModelOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UpdateAssetModelCompositeModel API operation for AWS IoT SiteWise. +// +// Updates a composite model and all of the assets that were created from the +// model. Each asset created from the model inherits the updated asset model's +// property and hierarchy definitions. For more information, see Updating assets +// and models (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-assets-and-models.html) +// in the IoT SiteWise User Guide. +// +// If you remove a property from a composite asset model, IoT SiteWise deletes +// all previous data for that property. You can’t change the type or data +// type of an existing property. +// +// To replace an existing composite asset model property with a new one with +// the same name, do the following: +// +// Submit an UpdateAssetModelCompositeModel request with the entire existing +// property removed. +// +// Submit a second UpdateAssetModelCompositeModel request that includes the +// new property. The new asset property will have the same name as the previous +// one and IoT SiteWise will generate a new unique id. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT SiteWise's +// API operation UpdateAssetModelCompositeModel for usage and error information. +// +// Returned Error Types: +// +// - ConflictingOperationException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time. +// +// - InternalFailureException +// IoT SiteWise can't process your request right now. Try again later. +// +// - InvalidRequestException +// The request isn't valid. This can occur if your request contains malformed +// JSON or unsupported characters. Check your request and try again. +// +// - ResourceAlreadyExistsException +// The resource already exists. +// +// - ResourceNotFoundException +// The requested resource can't be found. +// +// - ThrottlingException +// Your request exceeded a rate limit. For example, you might have exceeded +// the number of IoT SiteWise assets that can be created per second, the allowed +// number of messages per second, and so on. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// - LimitExceededException +// You've reached the limit for a resource. For example, this can occur if you're +// trying to associate more than the allowed number of child assets or attempting +// to create more than the allowed number of properties for an asset model. +// +// For more information, see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) +// in the IoT SiteWise User Guide. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotsitewise-2019-12-02/UpdateAssetModelCompositeModel +func (c *IoTSiteWise) UpdateAssetModelCompositeModel(input *UpdateAssetModelCompositeModelInput) (*UpdateAssetModelCompositeModelOutput, error) { + req, out := c.UpdateAssetModelCompositeModelRequest(input) + return out, req.Send() +} + +// UpdateAssetModelCompositeModelWithContext is the same as UpdateAssetModelCompositeModel with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAssetModelCompositeModel 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 *IoTSiteWise) UpdateAssetModelCompositeModelWithContext(ctx aws.Context, input *UpdateAssetModelCompositeModelInput, opts ...request.Option) (*UpdateAssetModelCompositeModelOutput, error) { + req, out := c.UpdateAssetModelCompositeModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateAssetProperty = "UpdateAssetProperty" // UpdateAssetPropertyRequest generates a "aws/request.Request" representing the @@ -8665,6 +10069,70 @@ return out, req.Send() } +// Access is denied. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + // Contains an access policy that defines an identity's access to an IoT SiteWise // Monitor resource. type AccessPolicySummary struct { @@ -8753,6 +10221,159 @@ return s } +// Contains a definition for an action. +type ActionDefinition struct { + _ struct{} `type:"structure"` + + // The ID of the action definition. + // + // ActionDefinitionId is a required field + ActionDefinitionId *string `locationName:"actionDefinitionId" min:"36" type:"string" required:"true"` + + // The name of the action definition. + // + // ActionName is a required field + ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"` + + // The type of the action definition. + // + // ActionType is a required field + ActionType *string `locationName:"actionType" 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 ActionDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionDefinition) GoString() string { + return s.String() +} + +// SetActionDefinitionId sets the ActionDefinitionId field's value. +func (s *ActionDefinition) SetActionDefinitionId(v string) *ActionDefinition { + s.ActionDefinitionId = &v + return s +} + +// SetActionName sets the ActionName field's value. +func (s *ActionDefinition) SetActionName(v string) *ActionDefinition { + s.ActionName = &v + return s +} + +// SetActionType sets the ActionType field's value. +func (s *ActionDefinition) SetActionType(v string) *ActionDefinition { + s.ActionType = &v + return s +} + +// The JSON payload of the action. +type ActionPayload struct { + _ struct{} `type:"structure"` + + // The payload of the action in a JSON string. + // + // StringValue is a required field + StringValue *string `locationName:"stringValue" 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 ActionPayload) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionPayload) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ActionPayload) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ActionPayload"} + if s.StringValue == nil { + invalidParams.Add(request.NewErrParamRequired("StringValue")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStringValue sets the StringValue field's value. +func (s *ActionPayload) SetStringValue(v string) *ActionPayload { + s.StringValue = &v + return s +} + +// Contains the summary of the actions. +type ActionSummary struct { + _ struct{} `type:"structure"` + + // The ID of the action definition. + ActionDefinitionId *string `locationName:"actionDefinitionId" min:"36" type:"string"` + + // The ID of the action. + ActionId *string `locationName:"actionId" min:"36" type:"string"` + + // The resource the action will be taken on. + TargetResource *TargetResource `locationName:"targetResource" 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 ActionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionSummary) GoString() string { + return s.String() +} + +// SetActionDefinitionId sets the ActionDefinitionId field's value. +func (s *ActionSummary) SetActionDefinitionId(v string) *ActionSummary { + s.ActionDefinitionId = &v + return s +} + +// SetActionId sets the ActionId field's value. +func (s *ActionSummary) SetActionId(v string) *ActionSummary { + s.ActionId = &v + return s +} + +// SetTargetResource sets the TargetResource field's value. +func (s *ActionSummary) SetTargetResource(v *TargetResource) *ActionSummary { + s.TargetResource = v + return s +} + // Contains aggregated asset property values (for example, average, minimum, // and maximum). type AggregatedValue struct { @@ -8964,6 +10585,11 @@ // The description of the composite model. Description *string `locationName:"description" min:"1" type:"string"` + // The external ID of the asset composite model. For more information, see Using + // external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the asset composite model. Id *string `locationName:"id" min:"36" type:"string"` @@ -9008,6 +10634,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetCompositeModel) SetExternalId(v string) *AssetCompositeModel { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetCompositeModel) SetId(v string) *AssetCompositeModel { s.Id = &v @@ -9032,11 +10664,151 @@ return s } +// Represents one level between a composite model and the root of the asset. +type AssetCompositeModelPathSegment struct { + _ struct{} `type:"structure"` + + // The ID of the path segment. + Id *string `locationName:"id" min:"36" type:"string"` + + // The name of the path segment. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetCompositeModelPathSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetCompositeModelPathSegment) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *AssetCompositeModelPathSegment) SetId(v string) *AssetCompositeModelPathSegment { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetCompositeModelPathSegment) SetName(v string) *AssetCompositeModelPathSegment { + s.Name = &v + return s +} + +// Contains a summary of the composite model for a specific asset. +type AssetCompositeModelSummary struct { + _ struct{} `type:"structure"` + + // A description of the composite model that this summary describes. + // + // Description is a required field + Description *string `locationName:"description" min:"1" type:"string" required:"true"` + + // An external ID to assign to the asset model. + // + // If the composite model is a derived composite model, or one nested inside + // a component model, you can only set the external ID using UpdateAssetModelCompositeModel + // and specifying the derived ID of the model or property from the created model + // it's a part of. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + + // The ID of the composite model that this summary describes. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The name of the composite model that this summary describes. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The path that includes all the components of the asset model for the asset. + // + // Path is a required field + Path []*AssetCompositeModelPathSegment `locationName:"path" type:"list" required:"true"` + + // The type of asset model. + // + // * ASSET_MODEL – (default) An asset model that you can use to create + // assets. Can't be included as a component in another asset model. + // + // * COMPONENT_MODEL – A reusable component that you can include in the + // composite models of other asset models. You can't create assets directly + // from this type of asset model. + // + // Type is a required field + Type *string `locationName:"type" 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 AssetCompositeModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetCompositeModelSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *AssetCompositeModelSummary) SetDescription(v string) *AssetCompositeModelSummary { + s.Description = &v + return s +} + +// SetExternalId sets the ExternalId field's value. +func (s *AssetCompositeModelSummary) SetExternalId(v string) *AssetCompositeModelSummary { + s.ExternalId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AssetCompositeModelSummary) SetId(v string) *AssetCompositeModelSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetCompositeModelSummary) SetName(v string) *AssetCompositeModelSummary { + s.Name = &v + return s +} + +// SetPath sets the Path field's value. +func (s *AssetCompositeModelSummary) SetPath(v []*AssetCompositeModelPathSegment) *AssetCompositeModelSummary { + s.Path = v + return s +} + +// SetType sets the Type field's value. +func (s *AssetCompositeModelSummary) SetType(v string) *AssetCompositeModelSummary { + s.Type = &v + return s +} + // Contains error details for the requested associate project asset action. type AssetErrorDetails struct { _ struct{} `type:"structure"` - // The ID of the asset. + // The ID of the asset, in UUID format. // // AssetId is a required field AssetId *string `locationName:"assetId" min:"36" type:"string" required:"true"` @@ -9092,6 +10864,13 @@ type AssetHierarchy struct { _ struct{} `type:"structure"` + // The external ID of the hierarchy, if it has one. When you update an asset + // hierarchy, you may assign an external ID if it doesn't already have one. + // You can't change the external ID of an asset hierarchy that already has one. + // For more information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the hierarchy. This ID is a hierarchyId. Id *string `locationName:"id" min:"36" type:"string"` @@ -9121,6 +10900,12 @@ return s.String() } +// SetExternalId sets the ExternalId field's value. +func (s *AssetHierarchy) SetExternalId(v string) *AssetHierarchy { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetHierarchy) SetId(v string) *AssetHierarchy { s.Id = &v @@ -9184,8 +10969,13 @@ // The description of the composite model. Description *string `locationName:"description" min:"1" type:"string"` + // The external ID of the asset model composite model. For more information, + // see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the asset model composite model. - Id *string `locationName:"id" min:"36" type:"string"` + Id *string `locationName:"id" min:"13" type:"string"` // The name of the composite model. // @@ -9226,8 +11016,11 @@ if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } - if s.Id != nil && len(*s.Id) < 36 { - invalidParams.Add(request.NewErrParamMinLen("Id", 36)) + if s.ExternalId != nil && len(*s.ExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) + } + if s.Id != nil && len(*s.Id) < 13 { + invalidParams.Add(request.NewErrParamMinLen("Id", 13)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) @@ -9264,6 +11057,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelCompositeModel) SetExternalId(v string) *AssetModelCompositeModel { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetModelCompositeModel) SetId(v string) *AssetModelCompositeModel { s.Id = &v @@ -9296,6 +11095,18 @@ // The description of the composite model. Description *string `locationName:"description" min:"1" type:"string"` + // An external ID to assign to the composite model. The external ID must be + // unique among composite models within this asset model. For more information, + // see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + + // The ID to assign to the composite model, if desired. IoT SiteWise automatically + // generates a unique ID for you, so this parameter is never required. However, + // if you prefer to supply your own ID instead, you can specify it here in UUID + // format. If you specify your own ID, it must be globally unique. + Id *string `locationName:"id" min:"36" type:"string"` + // The name of the composite model. // // Name is a required field @@ -9335,6 +11146,12 @@ if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } + if s.ExternalId != nil && len(*s.ExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) + } + if s.Id != nil && len(*s.Id) < 36 { + invalidParams.Add(request.NewErrParamMinLen("Id", 36)) + } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -9370,6 +11187,18 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelCompositeModelDefinition) SetExternalId(v string) *AssetModelCompositeModelDefinition { + s.ExternalId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AssetModelCompositeModelDefinition) SetId(v string) *AssetModelCompositeModelDefinition { + s.Id = &v + return s +} + // SetName sets the Name field's value. func (s *AssetModelCompositeModelDefinition) SetName(v string) *AssetModelCompositeModelDefinition { s.Name = &v @@ -9388,19 +11217,181 @@ return s } +// Represents one level between a composite model and the root of the asset +// model. +type AssetModelCompositeModelPathSegment struct { + _ struct{} `type:"structure"` + + // The ID of the path segment. + Id *string `locationName:"id" min:"36" type:"string"` + + // The name of the path segment. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetModelCompositeModelPathSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetModelCompositeModelPathSegment) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *AssetModelCompositeModelPathSegment) SetId(v string) *AssetModelCompositeModelPathSegment { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetModelCompositeModelPathSegment) SetName(v string) *AssetModelCompositeModelPathSegment { + s.Name = &v + return s +} + +// Contains a summary of the composite model. +type AssetModelCompositeModelSummary struct { + _ struct{} `type:"structure"` + + // The description of the the composite model that this summary describes.. + Description *string `locationName:"description" min:"1" type:"string"` + + // The external ID of a composite model on this asset model. For more information, + // see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + + // The ID of the the composite model that this summary describes.. + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` + + // The name of the the composite model that this summary describes.. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The path that includes all the pieces that make up the composite model. + Path []*AssetModelCompositeModelPathSegment `locationName:"path" type:"list"` + + // The type of asset model. + // + // * ASSET_MODEL – (default) An asset model that you can use to create + // assets. Can't be included as a component in another asset model. + // + // * COMPONENT_MODEL – A reusable component that you can include in the + // composite models of other asset models. You can't create assets directly + // from this type of asset model. + // + // Type is a required field + Type *string `locationName:"type" 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 AssetModelCompositeModelSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetModelCompositeModelSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *AssetModelCompositeModelSummary) SetDescription(v string) *AssetModelCompositeModelSummary { + s.Description = &v + return s +} + +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelCompositeModelSummary) SetExternalId(v string) *AssetModelCompositeModelSummary { + s.ExternalId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AssetModelCompositeModelSummary) SetId(v string) *AssetModelCompositeModelSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetModelCompositeModelSummary) SetName(v string) *AssetModelCompositeModelSummary { + s.Name = &v + return s +} + +// SetPath sets the Path field's value. +func (s *AssetModelCompositeModelSummary) SetPath(v []*AssetModelCompositeModelPathSegment) *AssetModelCompositeModelSummary { + s.Path = v + return s +} + +// SetType sets the Type field's value. +func (s *AssetModelCompositeModelSummary) SetType(v string) *AssetModelCompositeModelSummary { + s.Type = &v + return s +} + // Describes an asset hierarchy that contains a hierarchy's name, ID, and child // asset model ID that specifies the type of asset that can be in this hierarchy. type AssetModelHierarchy struct { _ struct{} `type:"structure"` - // The ID of the asset model. All assets in this hierarchy must be instances - // of the childAssetModelId asset model. + // The ID of the asset model, in UUID format. All assets in this hierarchy must + // be instances of the childAssetModelId asset model. IoT SiteWise will always + // return the actual asset model ID for this value. However, when you are specifying + // this value as part of a call to UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html), + // you may provide either the asset model ID or else externalId: followed by + // the asset model's external ID. For more information, see Using external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. // // ChildAssetModelId is a required field - ChildAssetModelId *string `locationName:"childAssetModelId" min:"36" type:"string" required:"true"` + ChildAssetModelId *string `locationName:"childAssetModelId" min:"13" type:"string" required:"true"` + + // The external ID (if any) provided in the CreateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html) + // or UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html) + // operation. You can assign an external ID by specifying this value as part + // of a call to UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html). + // However, you can't change the external ID if one is already assigned. For + // more information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` // The ID of the asset model hierarchy. This ID is a hierarchyId. - Id *string `locationName:"id" min:"36" type:"string"` + // + // * If you are callling UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html) + // to create a new hierarchy: You can specify its ID here, if desired. IoT + // SiteWise automatically generates a unique ID for you, so this parameter + // is never required. However, if you prefer to supply your own ID instead, + // you can specify it here in UUID format. If you specify your own ID, it + // must be globally unique. + // + // * If you are calling UpdateAssetModel to modify an existing hierarchy: + // This can be either the actual ID in UUID format, or else externalId: followed + // by the external ID, if it has one. For more information, see Referencing + // objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + Id *string `locationName:"id" min:"13" type:"string"` // The name of the asset model hierarchy that you specify by using the CreateAssetModel // (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html) @@ -9435,11 +11426,14 @@ if s.ChildAssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("ChildAssetModelId")) } - if s.ChildAssetModelId != nil && len(*s.ChildAssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("ChildAssetModelId", 36)) + if s.ChildAssetModelId != nil && len(*s.ChildAssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("ChildAssetModelId", 13)) } - if s.Id != nil && len(*s.Id) < 36 { - invalidParams.Add(request.NewErrParamMinLen("Id", 36)) + if s.ExternalId != nil && len(*s.ExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) + } + if s.Id != nil && len(*s.Id) < 13 { + invalidParams.Add(request.NewErrParamMinLen("Id", 13)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) @@ -9460,6 +11454,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelHierarchy) SetExternalId(v string) *AssetModelHierarchy { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetModelHierarchy) SetId(v string) *AssetModelHierarchy { s.Id = &v @@ -9478,10 +11478,26 @@ type AssetModelHierarchyDefinition struct { _ struct{} `type:"structure"` - // The ID of an asset model for this hierarchy. + // The ID of an asset model for this hierarchy. This can be either the actual + // ID in UUID format, or else externalId: followed by the external ID, if it + // has one. For more information, see Referencing objects with external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // ChildAssetModelId is a required field - ChildAssetModelId *string `locationName:"childAssetModelId" min:"36" type:"string" required:"true"` + ChildAssetModelId *string `locationName:"childAssetModelId" min:"13" type:"string" required:"true"` + + // An external ID to assign to the asset model hierarchy. The external ID must + // be unique among asset model hierarchies within this asset model. For more + // information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + + // The ID to assign to the asset model hierarchy, if desired. IoT SiteWise automatically + // generates a unique ID for you, so this parameter is never required. However, + // if you prefer to supply your own ID instead, you can specify it here in UUID + // format. If you specify your own ID, it must be globally unique. + Id *string `locationName:"id" min:"36" type:"string"` // The name of the asset model hierarchy definition (as specified in the CreateAssetModel // (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html) @@ -9516,8 +11532,14 @@ if s.ChildAssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("ChildAssetModelId")) } - if s.ChildAssetModelId != nil && len(*s.ChildAssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("ChildAssetModelId", 36)) + if s.ChildAssetModelId != nil && len(*s.ChildAssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("ChildAssetModelId", 13)) + } + if s.ExternalId != nil && len(*s.ExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) + } + if s.Id != nil && len(*s.Id) < 36 { + invalidParams.Add(request.NewErrParamMinLen("Id", 36)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) @@ -9538,6 +11560,18 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelHierarchyDefinition) SetExternalId(v string) *AssetModelHierarchyDefinition { + s.ExternalId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AssetModelHierarchyDefinition) SetId(v string) *AssetModelHierarchyDefinition { + s.Id = &v + return s +} + // SetName sets the Name field's value. func (s *AssetModelHierarchyDefinition) SetName(v string) *AssetModelHierarchyDefinition { s.Name = &v @@ -9557,14 +11591,39 @@ // properties that have the STRUCT data type. DataTypeSpec *string `locationName:"dataTypeSpec" min:"1" type:"string"` + // The external ID (if any) provided in the CreateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModel.html) + // or UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html) + // operation. You can assign an external ID by specifying this value as part + // of a call to UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html). + // However, you can't change the external ID if one is already assigned. For + // more information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the asset model property. - Id *string `locationName:"id" min:"36" type:"string"` + // + // * If you are callling UpdateAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html) + // to create a new property: You can specify its ID here, if desired. IoT + // SiteWise automatically generates a unique ID for you, so this parameter + // is never required. However, if you prefer to supply your own ID instead, + // you can specify it here in UUID format. If you specify your own ID, it + // must be globally unique. + // + // * If you are calling UpdateAssetModel to modify an existing property: + // This can be either the actual ID in UUID format, or else externalId: followed + // by the external ID, if it has one. For more information, see Referencing + // objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + Id *string `locationName:"id" min:"13" type:"string"` // The name of the asset model property. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` + // The structured path to the property from the root of the asset model. + Path []*AssetModelPropertyPathSegment `locationName:"path" type:"list"` + // The property type (see PropertyType). // // Type is a required field @@ -9601,8 +11660,11 @@ if s.DataTypeSpec != nil && len(*s.DataTypeSpec) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataTypeSpec", 1)) } - if s.Id != nil && len(*s.Id) < 36 { - invalidParams.Add(request.NewErrParamMinLen("Id", 36)) + if s.ExternalId != nil && len(*s.ExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) + } + if s.Id != nil && len(*s.Id) < 13 { + invalidParams.Add(request.NewErrParamMinLen("Id", 13)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) @@ -9616,6 +11678,16 @@ if s.Unit != nil && len(*s.Unit) < 1 { invalidParams.Add(request.NewErrParamMinLen("Unit", 1)) } + if s.Path != nil { + for i, v := range s.Path { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Path", i), err.(request.ErrInvalidParams)) + } + } + } if s.Type != nil { if err := s.Type.Validate(); err != nil { invalidParams.AddNested("Type", err.(request.ErrInvalidParams)) @@ -9640,6 +11712,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelProperty) SetExternalId(v string) *AssetModelProperty { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetModelProperty) SetId(v string) *AssetModelProperty { s.Id = &v @@ -9652,6 +11730,12 @@ return s } +// SetPath sets the Path field's value. +func (s *AssetModelProperty) SetPath(v []*AssetModelPropertyPathSegment) *AssetModelProperty { + s.Path = v + return s +} + // SetType sets the Type field's value. func (s *AssetModelProperty) SetType(v *PropertyType) *AssetModelProperty { s.Type = v @@ -9685,6 +11769,18 @@ // alarm composite models. DataTypeSpec *string `locationName:"dataTypeSpec" min:"1" type:"string"` + // An external ID to assign to the property definition. The external ID must + // be unique among property definitions within this asset model. For more information, + // see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + + // The ID to assign to the asset model property, if desired. IoT SiteWise automatically + // generates a unique ID for you, so this parameter is never required. However, + // if you prefer to supply your own ID instead, you can specify it here in UUID + // format. If you specify your own ID, it must be globally unique. + Id *string `locationName:"id" min:"36" type:"string"` + // The name of the property definition. // // Name is a required field @@ -9727,6 +11823,12 @@ if s.DataTypeSpec != nil && len(*s.DataTypeSpec) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataTypeSpec", 1)) } + if s.ExternalId != nil && len(*s.ExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) + } + if s.Id != nil && len(*s.Id) < 36 { + invalidParams.Add(request.NewErrParamMinLen("Id", 36)) + } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -9763,6 +11865,18 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelPropertyDefinition) SetExternalId(v string) *AssetModelPropertyDefinition { + s.ExternalId = &v + return s +} + +// SetId sets the Id field's value. +func (s *AssetModelPropertyDefinition) SetId(v string) *AssetModelPropertyDefinition { + s.Id = &v + return s +} + // SetName sets the Name field's value. func (s *AssetModelPropertyDefinition) SetName(v string) *AssetModelPropertyDefinition { s.Name = &v @@ -9781,6 +11895,63 @@ return s } +// Represents one level between a property and the root of the asset model. +type AssetModelPropertyPathSegment struct { + _ struct{} `type:"structure"` + + // The ID of the path segment. + Id *string `locationName:"id" min:"36" type:"string"` + + // The name of the path segment. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetModelPropertyPathSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetModelPropertyPathSegment) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetModelPropertyPathSegment) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetModelPropertyPathSegment"} + if s.Id != nil && len(*s.Id) < 36 { + invalidParams.Add(request.NewErrParamMinLen("Id", 36)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *AssetModelPropertyPathSegment) SetId(v string) *AssetModelPropertyPathSegment { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetModelPropertyPathSegment) SetName(v string) *AssetModelPropertyPathSegment { + s.Name = &v + return s +} + // Contains a summary of a property associated with a model. type AssetModelPropertySummary struct { _ struct{} `type:"structure"` @@ -9797,6 +11968,11 @@ // properties that have the STRUCT data type. DataTypeSpec *string `locationName:"dataTypeSpec" min:"1" type:"string"` + // The external ID of the property. For more information, see Using external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the property. Id *string `locationName:"id" min:"36" type:"string"` @@ -9805,6 +11981,9 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` + // The structured path to the property from the root of the asset model. + Path []*AssetModelPropertyPathSegment `locationName:"path" type:"list"` + // Contains a property type, which can be one of attribute, measurement, metric, // or transform. // @@ -9851,6 +12030,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelPropertySummary) SetExternalId(v string) *AssetModelPropertySummary { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetModelPropertySummary) SetId(v string) *AssetModelPropertySummary { s.Id = &v @@ -9863,6 +12048,12 @@ return s } +// SetPath sets the Path field's value. +func (s *AssetModelPropertySummary) SetPath(v []*AssetModelPropertyPathSegment) *AssetModelPropertySummary { + s.Path = v + return s +} + // SetType sets the Type field's value. func (s *AssetModelPropertySummary) SetType(v *PropertyType) *AssetModelPropertySummary { s.Type = v @@ -9932,6 +12123,16 @@ // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + // The type of asset model. + // + // * ASSET_MODEL – (default) An asset model that you can use to create + // assets. Can't be included as a component in another asset model. + // + // * COMPONENT_MODEL – A reusable component that you can include in the + // composite models of other asset models. You can't create assets directly + // from this type of asset model. + AssetModelType *string `locationName:"assetModelType" type:"string" enum:"AssetModelType"` + // The date the asset model was created, in Unix epoch time. // // CreationDate is a required field @@ -9942,7 +12143,12 @@ // Description is a required field Description *string `locationName:"description" min:"1" type:"string" required:"true"` - // The ID of the asset model (used with IoT SiteWise APIs). + // The external ID of the asset model. For more information, see Using external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + + // The ID of the asset model (used with IoT SiteWise API operations). // // Id is a required field Id *string `locationName:"id" min:"36" type:"string" required:"true"` @@ -9987,6 +12193,12 @@ return s } +// SetAssetModelType sets the AssetModelType field's value. +func (s *AssetModelSummary) SetAssetModelType(v string) *AssetModelSummary { + s.AssetModelType = &v + return s +} + // SetCreationDate sets the CreationDate field's value. func (s *AssetModelSummary) SetCreationDate(v time.Time) *AssetModelSummary { s.CreationDate = &v @@ -9999,6 +12211,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetModelSummary) SetExternalId(v string) *AssetModelSummary { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetModelSummary) SetId(v string) *AssetModelSummary { s.Id = &v @@ -10042,6 +12260,11 @@ // properties that have the STRUCT data type. DataTypeSpec *string `locationName:"dataTypeSpec" min:"1" type:"string"` + // The external ID of the asset property. For more information, see Using external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the asset property. // // Id is a required field @@ -10056,6 +12279,9 @@ // see UpdateAssetProperty (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetProperty.html). Notification *PropertyNotification `locationName:"notification" type:"structure"` + // The structured path to the property from the root of the asset. + Path []*AssetPropertyPathSegment `locationName:"path" type:"list"` + // The unit (such as Newtons or RPM) of the asset property. Unit *string `locationName:"unit" min:"1" type:"string"` } @@ -10096,6 +12322,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetProperty) SetExternalId(v string) *AssetProperty { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetProperty) SetId(v string) *AssetProperty { s.Id = &v @@ -10114,12 +12346,59 @@ return s } +// SetPath sets the Path field's value. +func (s *AssetProperty) SetPath(v []*AssetPropertyPathSegment) *AssetProperty { + s.Path = v + return s +} + // SetUnit sets the Unit field's value. func (s *AssetProperty) SetUnit(v string) *AssetProperty { s.Unit = &v return s } +// Represents one level between a property and the root of the asset. +type AssetPropertyPathSegment struct { + _ struct{} `type:"structure"` + + // The ID of the path segment. + Id *string `locationName:"id" min:"36" type:"string"` + + // The name of the path segment. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetPropertyPathSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetPropertyPathSegment) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *AssetPropertyPathSegment) SetId(v string) *AssetPropertyPathSegment { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AssetPropertyPathSegment) SetName(v string) *AssetPropertyPathSegment { + s.Name = &v + return s +} + // Contains a summary of a property associated with an asset. type AssetPropertySummary struct { _ struct{} `type:"structure"` @@ -10133,8 +12412,15 @@ // The ID of the composite model that contains the asset property. AssetCompositeModelId *string `locationName:"assetCompositeModelId" min:"36" type:"string"` + // The external ID of the property. For more information, see Using external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the property. - Id *string `locationName:"id" min:"36" type:"string"` + // + // Id is a required field + Id *string `locationName:"id" min:"36" type:"string" required:"true"` // Contains asset property value notification information. When the notification // state is enabled, IoT SiteWise publishes property value updates to a unique @@ -10142,6 +12428,9 @@ // in the IoT SiteWise User Guide. Notification *PropertyNotification `locationName:"notification" type:"structure"` + // The structured path to the property from the root of the asset. + Path []*AssetPropertyPathSegment `locationName:"path" type:"list"` + // The unit of measure (such as Newtons or RPM) of the asset property. Unit *string `locationName:"unit" min:"1" type:"string"` } @@ -10176,6 +12465,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetPropertySummary) SetExternalId(v string) *AssetPropertySummary { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *AssetPropertySummary) SetId(v string) *AssetPropertySummary { s.Id = &v @@ -10188,6 +12483,12 @@ return s } +// SetPath sets the Path field's value. +func (s *AssetPropertySummary) SetPath(v []*AssetPropertyPathSegment) *AssetPropertySummary { + s.Path = v + return s +} + // SetUnit sets the Unit field's value. func (s *AssetPropertySummary) SetUnit(v string) *AssetPropertySummary { s.Unit = &v @@ -10389,13 +12690,18 @@ // A description for the asset. Description *string `locationName:"description" min:"1" type:"string"` + // The external ID of the asset. For more information, see Using external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // A list of asset hierarchies that each contain a hierarchyId. A hierarchy // specifies allowed parent/child asset relationships. // // Hierarchies is a required field Hierarchies []*AssetHierarchy `locationName:"hierarchies" type:"list" required:"true"` - // The ID of the asset. + // The ID of the asset, in UUID format. // // Id is a required field Id *string `locationName:"id" min:"36" type:"string" required:"true"` @@ -10458,6 +12764,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssetSummary) SetExternalId(v string) *AssetSummary { + s.ExternalId = &v + return s +} + // SetHierarchies sets the Hierarchies field's value. func (s *AssetSummary) SetHierarchies(v []*AssetHierarchy) *AssetSummary { s.Hierarchies = v @@ -10491,28 +12803,39 @@ type AssociateAssetsInput struct { _ struct{} `type:"structure"` - // The ID of the parent asset. + // The ID of the parent asset. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` - // The ID of the child asset to be associated. + // The ID of the child asset to be associated. This can be either the actual + // ID in UUID format, or else externalId: followed by the external ID, if it + // has one. For more information, see Referencing objects with external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // ChildAssetId is a required field - ChildAssetId *string `locationName:"childAssetId" min:"36" type:"string" required:"true"` + ChildAssetId *string `locationName:"childAssetId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request // is required. ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The ID of a hierarchy in the parent asset's model. Hierarchies allow different - // groupings of assets to be formed that all come from the same asset model. - // For more information, see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) + // The ID of a hierarchy in the parent asset's model. (This can be either the + // actual ID in UUID format, or else externalId: followed by the external ID, + // if it has one. For more information, see Referencing objects with external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide.) Hierarchies allow different groupings of + // assets to be formed that all come from the same asset model. For more information, + // see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) // in the IoT SiteWise User Guide. // // HierarchyId is a required field - HierarchyId *string `locationName:"hierarchyId" min:"36" type:"string" required:"true"` + HierarchyId *string `locationName:"hierarchyId" min:"13" type:"string" required:"true"` } // String returns the string representation. @@ -10539,14 +12862,14 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ChildAssetId == nil { invalidParams.Add(request.NewErrParamRequired("ChildAssetId")) } - if s.ChildAssetId != nil && len(*s.ChildAssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("ChildAssetId", 36)) + if s.ChildAssetId != nil && len(*s.ChildAssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("ChildAssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -10554,8 +12877,8 @@ if s.HierarchyId == nil { invalidParams.Add(request.NewErrParamRequired("HierarchyId")) } - if s.HierarchyId != nil && len(*s.HierarchyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 36)) + if s.HierarchyId != nil && len(*s.HierarchyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 13)) } if invalidParams.Len() > 0 { @@ -10618,20 +12941,27 @@ // Alias is a required field Alias *string `location:"querystring" locationName:"alias" min:"1" type:"string" required:"true"` - // The ID of the asset in which the asset property was created. + // The ID of the asset in which the asset property was created. This can be + // either the actual ID in UUID format, or else externalId: followed by the + // external ID, if it has one. For more information, see Referencing objects + // with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"querystring" locationName:"assetId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request // is required. ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The ID of the asset property. + // The ID of the asset property. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // PropertyId is a required field - PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string" required:"true"` + PropertyId *string `location:"querystring" locationName:"propertyId" min:"13" type:"string" required:"true"` } // String returns the string representation. @@ -10664,8 +12994,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -10673,8 +13003,8 @@ if s.PropertyId == nil { invalidParams.Add(request.NewErrParamRequired("PropertyId")) } - if s.PropertyId != nil && len(*s.PropertyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("PropertyId", 36)) + if s.PropertyId != nil && len(*s.PropertyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("PropertyId", 13)) } if invalidParams.Len() > 0 { @@ -10754,13 +13084,18 @@ // A description for the asset. Description *string `locationName:"description" min:"1" type:"string"` + // The external ID of the asset. For more information, see Using external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // A list of asset hierarchies that each contain a hierarchyId. A hierarchy // specifies allowed parent/child asset relationships. // // Hierarchies is a required field Hierarchies []*AssetHierarchy `locationName:"hierarchies" type:"list" required:"true"` - // The ID of the asset. + // The ID of the asset, in UUID format. // // Id is a required field Id *string `locationName:"id" min:"36" type:"string" required:"true"` @@ -10823,6 +13158,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *AssociatedAssetsSummary) SetExternalId(v string) *AssociatedAssetsSummary { + s.ExternalId = &v + return s +} + // SetHierarchies sets the Hierarchies field's value. func (s *AssociatedAssetsSummary) SetHierarchies(v []*AssetHierarchy) *AssociatedAssetsSummary { s.Hierarchies = v @@ -10864,7 +13205,7 @@ // an attribute's value after you create an asset. For more information, see // Updating attribute values (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-attribute-values.html) // in the IoT SiteWise User Guide. - DefaultValue *string `locationName:"defaultValue" min:"1" type:"string"` + DefaultValue *string `locationName:"defaultValue" type:"string"` } // String returns the string representation. @@ -10885,19 +13226,6 @@ return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *Attribute) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Attribute"} - if s.DefaultValue != nil && len(*s.DefaultValue) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DefaultValue", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - // SetDefaultValue sets the DefaultValue field's value. func (s *Attribute) SetDefaultValue(v string) *Attribute { s.DefaultValue = &v @@ -11164,7 +13492,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `locationName:"propertyId" min:"36" type:"string"` // The quality by which to filter asset data. @@ -11706,7 +14034,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `locationName:"propertyId" min:"36" type:"string"` } @@ -11911,7 +14239,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `locationName:"propertyId" min:"36" type:"string"` // The quality by which to filter asset data. @@ -12821,6 +15149,79 @@ return s } +// A description of the column in the query results. +type ColumnInfo struct { + _ struct{} `type:"structure"` + + // The name of the column description. + Name *string `locationName:"name" type:"string"` + + // The type of the column description. + Type *ColumnType `locationName:"type" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnInfo) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ColumnInfo) SetName(v string) *ColumnInfo { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *ColumnInfo) SetType(v *ColumnType) *ColumnInfo { + s.Type = v + return s +} + +// The data type of the column. +type ColumnType struct { + _ struct{} `type:"structure"` + + // The allowed data types that the column has as it's value. + ScalarType *string `locationName:"scalarType" type:"string" enum:"ScalarType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColumnType) GoString() string { + return s.String() +} + +// SetScalarType sets the ScalarType field's value. +func (s *ColumnType) SetScalarType(v string) *ColumnType { + s.ScalarType = &v + return s +} + // Contains information about a composite model property on an asset. type CompositeModelProperty struct { _ struct{} `type:"structure"` @@ -12830,6 +15231,11 @@ // AssetProperty is a required field AssetProperty *Property `locationName:"assetProperty" type:"structure" required:"true"` + // The external ID of the composite model that contains the property. For more + // information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the composite model that contains the property. Id *string `locationName:"id" min:"36" type:"string"` @@ -12868,6 +15274,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *CompositeModelProperty) SetExternalId(v string) *CompositeModelProperty { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *CompositeModelProperty) SetId(v string) *CompositeModelProperty { s.Id = &v @@ -12886,6 +15298,127 @@ return s } +// Metadata for the composition relationship established by using composedAssetModelId +// in CreateAssetModelCompositeModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html). +type CompositionDetails struct { + _ struct{} `type:"structure"` + + // An array detailing the composition relationship for this composite model. + CompositionRelationship []*CompositionRelationshipItem `locationName:"compositionRelationship" 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 CompositionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositionDetails) GoString() string { + return s.String() +} + +// SetCompositionRelationship sets the CompositionRelationship field's value. +func (s *CompositionDetails) SetCompositionRelationship(v []*CompositionRelationshipItem) *CompositionDetails { + s.CompositionRelationship = v + return s +} + +// Represents a composite model that composed an asset model of type COMPONENT_MODEL. +type CompositionRelationshipItem struct { + _ struct{} `type:"structure"` + + // The ID of the component. + Id *string `locationName:"id" min:"36" 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 CompositionRelationshipItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositionRelationshipItem) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *CompositionRelationshipItem) SetId(v string) *CompositionRelationshipItem { + s.Id = &v + return s +} + +// Contains a summary of the components of the composite model. +type CompositionRelationshipSummary struct { + _ struct{} `type:"structure"` + + // The ID of a composite model on this asset model. + // + // AssetModelCompositeModelId is a required field + AssetModelCompositeModelId *string `locationName:"assetModelCompositeModelId" min:"36" type:"string" required:"true"` + + // The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY. + // + // AssetModelCompositeModelType is a required field + AssetModelCompositeModelType *string `locationName:"assetModelCompositeModelType" min:"1" type:"string" required:"true"` + + // The ID of the asset model, in UUID format. + // + // AssetModelId is a required field + AssetModelId *string `locationName:"assetModelId" min:"36" 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 CompositionRelationshipSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositionRelationshipSummary) GoString() string { + return s.String() +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *CompositionRelationshipSummary) SetAssetModelCompositeModelId(v string) *CompositionRelationshipSummary { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelCompositeModelType sets the AssetModelCompositeModelType field's value. +func (s *CompositionRelationshipSummary) SetAssetModelCompositeModelType(v string) *CompositionRelationshipSummary { + s.AssetModelCompositeModelType = &v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *CompositionRelationshipSummary) SetAssetModelId(v string) *CompositionRelationshipSummary { + s.AssetModelId = &v + return s +} + // Contains the details of an IoT SiteWise configuration error. type ConfigurationErrorDetails struct { _ struct{} `type:"structure"` @@ -13217,10 +15750,26 @@ // A description for the asset. AssetDescription *string `locationName:"assetDescription" min:"1" type:"string"` - // The ID of the asset model from which to create the asset. + // An external ID to assign to the asset. The external ID must be unique within + // your Amazon Web Services account. For more information, see Using external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + AssetExternalId *string `locationName:"assetExternalId" min:"2" type:"string"` + + // The ID to assign to the asset, if desired. IoT SiteWise automatically generates + // a unique ID for you, so this parameter is never required. However, if you + // prefer to supply your own ID instead, you can specify it here in UUID format. + // If you specify your own ID, it must be globally unique. + AssetId *string `locationName:"assetId" min:"36" type:"string"` + + // The ID of the asset model from which to create the asset. This can be either + // the actual ID in UUID format, or else externalId: followed by the external + // ID, if it has one. For more information, see Referencing objects with external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetModelId is a required field - AssetModelId *string `locationName:"assetModelId" min:"36" type:"string" required:"true"` + AssetModelId *string `locationName:"assetModelId" min:"13" type:"string" required:"true"` // A friendly name for the asset. // @@ -13262,11 +15811,17 @@ if s.AssetDescription != nil && len(*s.AssetDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssetDescription", 1)) } + if s.AssetExternalId != nil && len(*s.AssetExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetExternalId", 2)) + } + if s.AssetId != nil && len(*s.AssetId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + } if s.AssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelId")) } - if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) } if s.AssetName == nil { invalidParams.Add(request.NewErrParamRequired("AssetName")) @@ -13293,6 +15848,18 @@ return s } +// SetAssetExternalId sets the AssetExternalId field's value. +func (s *CreateAssetInput) SetAssetExternalId(v string) *CreateAssetInput { + s.AssetExternalId = &v + return s +} + +// SetAssetId sets the AssetId field's value. +func (s *CreateAssetInput) SetAssetId(v string) *CreateAssetInput { + s.AssetId = &v + return s +} + // SetAssetModelId sets the AssetModelId field's value. func (s *CreateAssetInput) SetAssetModelId(v string) *CreateAssetInput { s.AssetModelId = &v @@ -13317,18 +15884,276 @@ return s } +type CreateAssetModelCompositeModelInput struct { + _ struct{} `type:"structure"` + + // A description for the composite model. + AssetModelCompositeModelDescription *string `locationName:"assetModelCompositeModelDescription" min:"1" type:"string"` + + // An external ID to assign to the composite model. + // + // If the composite model is a derived composite model, or one nested inside + // a component model, you can only set the external ID using UpdateAssetModelCompositeModel + // and specifying the derived ID of the model or property from the created model + // it's a part of. + AssetModelCompositeModelExternalId *string `locationName:"assetModelCompositeModelExternalId" min:"2" type:"string"` + + // The ID of the composite model. IoT SiteWise automatically generates a unique + // ID for you, so this parameter is never required. However, if you prefer to + // supply your own ID instead, you can specify it here in UUID format. If you + // specify your own ID, it must be globally unique. + AssetModelCompositeModelId *string `locationName:"assetModelCompositeModelId" min:"36" type:"string"` + + // A unique, friendly name for the composite model. + // + // AssetModelCompositeModelName is a required field + AssetModelCompositeModelName *string `locationName:"assetModelCompositeModelName" min:"1" type:"string" required:"true"` + + // The property definitions of the composite model. For more information, see + // . + // + // You can specify up to 200 properties per composite model. For more information, + // see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) + // in the IoT SiteWise User Guide. + AssetModelCompositeModelProperties []*AssetModelPropertyDefinition `locationName:"assetModelCompositeModelProperties" type:"list"` + + // The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY. + // + // AssetModelCompositeModelType is a required field + AssetModelCompositeModelType *string `locationName:"assetModelCompositeModelType" min:"1" type:"string" required:"true"` + + // The ID of the asset model this composite model is a part of. + // + // AssetModelId is a required field + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` + + // A unique case-sensitive identifier that you can provide to ensure the idempotency + // of the request. Don't reuse this client token if a new idempotent request + // is required. + ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` + + // The ID of a composite model on this asset. + ComposedAssetModelId *string `locationName:"composedAssetModelId" min:"13" type:"string"` + + // The ID of the parent composite model in this asset model relationship. + ParentAssetModelCompositeModelId *string `locationName:"parentAssetModelCompositeModelId" min:"13" 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 CreateAssetModelCompositeModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetModelCompositeModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAssetModelCompositeModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAssetModelCompositeModelInput"} + if s.AssetModelCompositeModelDescription != nil && len(*s.AssetModelCompositeModelDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelDescription", 1)) + } + if s.AssetModelCompositeModelExternalId != nil && len(*s.AssetModelCompositeModelExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelExternalId", 2)) + } + if s.AssetModelCompositeModelId != nil && len(*s.AssetModelCompositeModelId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelId", 36)) + } + if s.AssetModelCompositeModelName == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelCompositeModelName")) + } + if s.AssetModelCompositeModelName != nil && len(*s.AssetModelCompositeModelName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelName", 1)) + } + if s.AssetModelCompositeModelType == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelCompositeModelType")) + } + if s.AssetModelCompositeModelType != nil && len(*s.AssetModelCompositeModelType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelType", 1)) + } + if s.AssetModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelId")) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) + } + if s.ComposedAssetModelId != nil && len(*s.ComposedAssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("ComposedAssetModelId", 13)) + } + if s.ParentAssetModelCompositeModelId != nil && len(*s.ParentAssetModelCompositeModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("ParentAssetModelCompositeModelId", 13)) + } + if s.AssetModelCompositeModelProperties != nil { + for i, v := range s.AssetModelCompositeModelProperties { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetModelCompositeModelProperties", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelCompositeModelDescription sets the AssetModelCompositeModelDescription field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelCompositeModelDescription(v string) *CreateAssetModelCompositeModelInput { + s.AssetModelCompositeModelDescription = &v + return s +} + +// SetAssetModelCompositeModelExternalId sets the AssetModelCompositeModelExternalId field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelCompositeModelExternalId(v string) *CreateAssetModelCompositeModelInput { + s.AssetModelCompositeModelExternalId = &v + return s +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelCompositeModelId(v string) *CreateAssetModelCompositeModelInput { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelCompositeModelName sets the AssetModelCompositeModelName field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelCompositeModelName(v string) *CreateAssetModelCompositeModelInput { + s.AssetModelCompositeModelName = &v + return s +} + +// SetAssetModelCompositeModelProperties sets the AssetModelCompositeModelProperties field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelCompositeModelProperties(v []*AssetModelPropertyDefinition) *CreateAssetModelCompositeModelInput { + s.AssetModelCompositeModelProperties = v + return s +} + +// SetAssetModelCompositeModelType sets the AssetModelCompositeModelType field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelCompositeModelType(v string) *CreateAssetModelCompositeModelInput { + s.AssetModelCompositeModelType = &v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *CreateAssetModelCompositeModelInput) SetAssetModelId(v string) *CreateAssetModelCompositeModelInput { + s.AssetModelId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAssetModelCompositeModelInput) SetClientToken(v string) *CreateAssetModelCompositeModelInput { + s.ClientToken = &v + return s +} + +// SetComposedAssetModelId sets the ComposedAssetModelId field's value. +func (s *CreateAssetModelCompositeModelInput) SetComposedAssetModelId(v string) *CreateAssetModelCompositeModelInput { + s.ComposedAssetModelId = &v + return s +} + +// SetParentAssetModelCompositeModelId sets the ParentAssetModelCompositeModelId field's value. +func (s *CreateAssetModelCompositeModelInput) SetParentAssetModelCompositeModelId(v string) *CreateAssetModelCompositeModelInput { + s.ParentAssetModelCompositeModelId = &v + return s +} + +type CreateAssetModelCompositeModelOutput struct { + _ struct{} `type:"structure"` + + // The ID of the composed asset model. You can use this ID when you call other + // IoT SiteWise APIs. + // + // AssetModelCompositeModelId is a required field + AssetModelCompositeModelId *string `locationName:"assetModelCompositeModelId" min:"36" type:"string" required:"true"` + + // The path to the composite model listing the parent composite models. + // + // AssetModelCompositeModelPath is a required field + AssetModelCompositeModelPath []*AssetModelCompositeModelPathSegment `locationName:"assetModelCompositeModelPath" type:"list" required:"true"` + + // Contains current status information for an asset model. For more information, + // see Asset and model states (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-and-model-states.html) + // in the IoT SiteWise User Guide. + // + // AssetModelStatus is a required field + AssetModelStatus *AssetModelStatus `locationName:"assetModelStatus" 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 CreateAssetModelCompositeModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssetModelCompositeModelOutput) GoString() string { + return s.String() +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *CreateAssetModelCompositeModelOutput) SetAssetModelCompositeModelId(v string) *CreateAssetModelCompositeModelOutput { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelCompositeModelPath sets the AssetModelCompositeModelPath field's value. +func (s *CreateAssetModelCompositeModelOutput) SetAssetModelCompositeModelPath(v []*AssetModelCompositeModelPathSegment) *CreateAssetModelCompositeModelOutput { + s.AssetModelCompositeModelPath = v + return s +} + +// SetAssetModelStatus sets the AssetModelStatus field's value. +func (s *CreateAssetModelCompositeModelOutput) SetAssetModelStatus(v *AssetModelStatus) *CreateAssetModelCompositeModelOutput { + s.AssetModelStatus = v + return s +} + type CreateAssetModelInput struct { _ struct{} `type:"structure"` - // The composite asset models that are part of this asset model. Composite asset - // models are asset models that contain specific properties. Each composite - // model has a type that defines the properties that the composite model supports. - // Use composite asset models to define alarms on this asset model. + // The composite models that are part of this asset model. It groups properties + // (such as attributes, measurements, transforms, and metrics) and child composite + // models that model parts of your industrial equipment. Each composite model + // has a type that defines the properties that the composite model supports. + // Use composite models to define alarms on this asset model. + // + // When creating custom composite models, you need to use CreateAssetModelCompositeModel + // (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html). + // For more information, see . AssetModelCompositeModels []*AssetModelCompositeModelDefinition `locationName:"assetModelCompositeModels" type:"list"` // A description for the asset model. AssetModelDescription *string `locationName:"assetModelDescription" min:"1" type:"string"` + // An external ID to assign to the asset model. The external ID must be unique + // within your Amazon Web Services account. For more information, see Using + // external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + AssetModelExternalId *string `locationName:"assetModelExternalId" min:"2" type:"string"` + // The hierarchy definitions of the asset model. Each hierarchy specifies an // asset model whose assets can be children of any other assets created from // this asset model. For more information, see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) @@ -13339,6 +16164,12 @@ // in the IoT SiteWise User Guide. AssetModelHierarchies []*AssetModelHierarchyDefinition `locationName:"assetModelHierarchies" type:"list"` + // The ID to assign to the asset model, if desired. IoT SiteWise automatically + // generates a unique ID for you, so this parameter is never required. However, + // if you prefer to supply your own ID instead, you can specify it here in UUID + // format. If you specify your own ID, it must be globally unique. + AssetModelId *string `locationName:"assetModelId" min:"36" type:"string"` + // A unique, friendly name for the asset model. // // AssetModelName is a required field @@ -13353,6 +16184,16 @@ // in the IoT SiteWise User Guide. AssetModelProperties []*AssetModelPropertyDefinition `locationName:"assetModelProperties" type:"list"` + // The type of asset model. + // + // * ASSET_MODEL – (default) An asset model that you can use to create + // assets. Can't be included as a component in another asset model. + // + // * COMPONENT_MODEL – A reusable component that you can include in the + // composite models of other asset models. You can't create assets directly + // from this type of asset model. + AssetModelType *string `locationName:"assetModelType" type:"string" enum:"AssetModelType"` + // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request // is required. @@ -13388,6 +16229,12 @@ if s.AssetModelDescription != nil && len(*s.AssetModelDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssetModelDescription", 1)) } + if s.AssetModelExternalId != nil && len(*s.AssetModelExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelExternalId", 2)) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + } if s.AssetModelName == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelName")) } @@ -13449,12 +16296,24 @@ return s } +// SetAssetModelExternalId sets the AssetModelExternalId field's value. +func (s *CreateAssetModelInput) SetAssetModelExternalId(v string) *CreateAssetModelInput { + s.AssetModelExternalId = &v + return s +} + // SetAssetModelHierarchies sets the AssetModelHierarchies field's value. func (s *CreateAssetModelInput) SetAssetModelHierarchies(v []*AssetModelHierarchyDefinition) *CreateAssetModelInput { s.AssetModelHierarchies = v return s } +// SetAssetModelId sets the AssetModelId field's value. +func (s *CreateAssetModelInput) SetAssetModelId(v string) *CreateAssetModelInput { + s.AssetModelId = &v + return s +} + // SetAssetModelName sets the AssetModelName field's value. func (s *CreateAssetModelInput) SetAssetModelName(v string) *CreateAssetModelInput { s.AssetModelName = &v @@ -13467,6 +16326,12 @@ return s } +// SetAssetModelType sets the AssetModelType field's value. +func (s *CreateAssetModelInput) SetAssetModelType(v string) *CreateAssetModelInput { + s.AssetModelType = &v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *CreateAssetModelInput) SetClientToken(v string) *CreateAssetModelInput { s.ClientToken = &v @@ -13490,8 +16355,8 @@ // AssetModelArn is a required field AssetModelArn *string `locationName:"assetModelArn" min:"1" type:"string" required:"true"` - // The ID of the asset model. You can use this ID when you call other IoT SiteWise - // APIs. + // The ID of the asset model, in UUID format. You can use this ID when you call + // other IoT SiteWise API operations. // // AssetModelId is a required field AssetModelId *string `locationName:"assetModelId" min:"36" type:"string" required:"true"` @@ -13550,8 +16415,8 @@ // AssetArn is a required field AssetArn *string `locationName:"assetArn" min:"1" type:"string" required:"true"` - // The ID of the asset. This ID uniquely identifies the asset within IoT SiteWise - // and can be used with other IoT SiteWise APIs. + // The ID of the asset, in UUID format. This ID uniquely identifies the asset + // within IoT SiteWise and can be used with other IoT SiteWise API operations. // // AssetId is a required field AssetId *string `locationName:"assetId" min:"36" type:"string" required:"true"` @@ -13602,6 +16467,15 @@ type CreateBulkImportJobInput struct { _ struct{} `type:"structure"` + // If set to true, ingest new data into IoT SiteWise storage. Measurements with + // notifications, metrics and transforms are computed. If set to false, historical + // data is ingested into IoT SiteWise as is. + AdaptiveIngestion *bool `locationName:"adaptiveIngestion" type:"boolean"` + + // If set to true, your data files is deleted from S3, after ingestion into + // IoT SiteWise storage. + DeleteFilesAfterImport *bool `locationName:"deleteFilesAfterImport" type:"boolean"` + // The Amazon S3 destination where errors associated with the job creation request // are saved. // @@ -13700,6 +16574,18 @@ return nil } +// SetAdaptiveIngestion sets the AdaptiveIngestion field's value. +func (s *CreateBulkImportJobInput) SetAdaptiveIngestion(v bool) *CreateBulkImportJobInput { + s.AdaptiveIngestion = &v + return s +} + +// SetDeleteFilesAfterImport sets the DeleteFilesAfterImport field's value. +func (s *CreateBulkImportJobInput) SetDeleteFilesAfterImport(v bool) *CreateBulkImportJobInput { + s.DeleteFilesAfterImport = &v + return s +} + // SetErrorReportLocation sets the ErrorReportLocation field's value. func (s *CreateBulkImportJobInput) SetErrorReportLocation(v *ErrorReportLocation) *CreateBulkImportJobInput { s.ErrorReportLocation = v @@ -13743,7 +16629,7 @@ // JobName is a required field JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"` - // The status of the bulk import job can be one of following values. + // The status of the bulk import job can be one of following values: // // * PENDING – IoT SiteWise is waiting for the current bulk import job // to finish. @@ -14067,7 +16953,7 @@ GatewayArn *string `locationName:"gatewayArn" min:"1" type:"string" required:"true"` // The ID of the gateway device. You can use this ID when you call other IoT - // SiteWise APIs. + // SiteWise API operations. // // GatewayId is a required field GatewayId *string `locationName:"gatewayId" min:"36" type:"string" required:"true"` @@ -14128,10 +17014,10 @@ // The service to use to authenticate users to the portal. Choose from the following // options: // - // * SSO – The portal uses IAM Identity Center (successor to Single Sign-On) - // to authenticate users and manage user permissions. Before you can create - // a portal that uses IAM Identity Center, you must enable IAM Identity Center. - // For more information, see Enabling IAM Identity Center (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-get-started.html#mon-gs-sso) + // * SSO – The portal uses IAM Identity Center to authenticate users and + // manage user permissions. Before you can create a portal that uses IAM + // Identity Center, you must enable IAM Identity Center. For more information, + // see Enabling IAM Identity Center (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-get-started.html#mon-gs-sso) // in the IoT SiteWise User Guide. This option is only available in Amazon // Web Services Regions other than the China Regions. // @@ -14541,12 +17427,14 @@ return s } -// A .csv file. +// A .CSV file. type Csv struct { _ struct{} `type:"structure"` // The column names specified in the .csv file. - ColumnNames []*string `locationName:"columnNames" type:"list" enum:"ColumnName"` + // + // ColumnNames is a required field + ColumnNames []*string `locationName:"columnNames" type:"list" required:"true" enum:"ColumnName"` } // String returns the string representation. @@ -14567,6 +17455,19 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *Csv) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Csv"} + if s.ColumnNames == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnNames")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetColumnNames sets the ColumnNames field's value. func (s *Csv) SetColumnNames(v []*string) *Csv { s.ColumnNames = v @@ -14717,6 +17618,66 @@ return s } +// Represents a single data point in a query result. +type Datum struct { + _ struct{} `type:"structure"` + + // Indicates if the data point is an array. + ArrayValue []*Datum `locationName:"arrayValue" type:"list"` + + // Indicates if the data point is null. + NullValue *bool `locationName:"nullValue" type:"boolean"` + + // Indicates if the data point is a row. + RowValue *Row `locationName:"rowValue" type:"structure"` + + // Indicates if the data point is a scalar value such as integer, string, double, + // or Boolean. + ScalarValue *string `locationName:"scalarValue" 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 Datum) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Datum) GoString() string { + return s.String() +} + +// SetArrayValue sets the ArrayValue field's value. +func (s *Datum) SetArrayValue(v []*Datum) *Datum { + s.ArrayValue = v + return s +} + +// SetNullValue sets the NullValue field's value. +func (s *Datum) SetNullValue(v bool) *Datum { + s.NullValue = &v + return s +} + +// SetRowValue sets the RowValue field's value. +func (s *Datum) SetRowValue(v *Row) *Datum { + s.RowValue = v + return s +} + +// SetScalarValue sets the ScalarValue field's value. +func (s *Datum) SetScalarValue(v string) *Datum { + s.ScalarValue = &v + return s +} + type DeleteAccessPolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -14805,10 +17766,13 @@ type DeleteAssetInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset to delete. + // The ID of the asset to delete. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request @@ -14840,8 +17804,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -14865,13 +17829,131 @@ return s } +type DeleteAssetModelCompositeModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of a composite model on this asset model. + // + // AssetModelCompositeModelId is a required field + AssetModelCompositeModelId *string `location:"uri" locationName:"assetModelCompositeModelId" min:"13" type:"string" required:"true"` + + // The ID of the asset model, in UUID format. + // + // AssetModelId is a required field + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` + + // A unique case-sensitive identifier that you can provide to ensure the idempotency + // of the request. Don't reuse this client token if a new idempotent request + // is required. + ClientToken *string `location:"querystring" locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetModelCompositeModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetModelCompositeModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAssetModelCompositeModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAssetModelCompositeModelInput"} + if s.AssetModelCompositeModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelCompositeModelId")) + } + if s.AssetModelCompositeModelId != nil && len(*s.AssetModelCompositeModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelId", 13)) + } + if s.AssetModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelId")) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *DeleteAssetModelCompositeModelInput) SetAssetModelCompositeModelId(v string) *DeleteAssetModelCompositeModelInput { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *DeleteAssetModelCompositeModelInput) SetAssetModelId(v string) *DeleteAssetModelCompositeModelInput { + s.AssetModelId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteAssetModelCompositeModelInput) SetClientToken(v string) *DeleteAssetModelCompositeModelInput { + s.ClientToken = &v + return s +} + +type DeleteAssetModelCompositeModelOutput struct { + _ struct{} `type:"structure"` + + // Contains current status information for an asset model. For more information, + // see Asset and model states (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-and-model-states.html) + // in the IoT SiteWise User Guide. + // + // AssetModelStatus is a required field + AssetModelStatus *AssetModelStatus `locationName:"assetModelStatus" 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 DeleteAssetModelCompositeModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssetModelCompositeModelOutput) GoString() string { + return s.String() +} + +// SetAssetModelStatus sets the AssetModelStatus field's value. +func (s *DeleteAssetModelCompositeModelOutput) SetAssetModelStatus(v *AssetModelStatus) *DeleteAssetModelCompositeModelOutput { + s.AssetModelStatus = v + return s +} + type DeleteAssetModelInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset model to delete. + // The ID of the asset model to delete. This can be either the actual ID in + // UUID format, or else externalId: followed by the external ID, if it has one. + // For more information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetModelId is a required field - AssetModelId *string `location:"uri" locationName:"assetModelId" min:"36" type:"string" required:"true"` + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request @@ -14903,8 +17985,8 @@ if s.AssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelId")) } - if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -15340,16 +18422,23 @@ // The alias that identifies the time series. Alias *string `location:"querystring" locationName:"alias" min:"1" type:"string"` - // The ID of the asset in which the asset property was created. - AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` + // The ID of the asset in which the asset property was created. This can be + // either the actual ID in UUID format, or else externalId: followed by the + // external ID, if it has one. For more information, see Referencing objects + // with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + AssetId *string `location:"querystring" locationName:"assetId" min:"13" type:"string"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request // is required. ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The ID of the asset property. - PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string"` + // The ID of the asset property. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + PropertyId *string `location:"querystring" locationName:"propertyId" min:"13" type:"string"` } // String returns the string representation. @@ -15376,14 +18465,14 @@ if s.Alias != nil && len(*s.Alias) < 1 { invalidParams.Add(request.NewErrParamMinLen("Alias", 1)) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) } - if s.PropertyId != nil && len(*s.PropertyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("PropertyId", 36)) + if s.PropertyId != nil && len(*s.PropertyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("PropertyId", 13)) } if invalidParams.Len() > 0 { @@ -15592,13 +18681,350 @@ return s } +type DescribeActionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the action. + // + // ActionId is a required field + ActionId *string `location:"uri" locationName:"actionId" min:"36" 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 DescribeActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeActionInput"} + if s.ActionId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionId")) + } + if s.ActionId != nil && len(*s.ActionId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ActionId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionId sets the ActionId field's value. +func (s *DescribeActionInput) SetActionId(v string) *DescribeActionInput { + s.ActionId = &v + return s +} + +type DescribeActionOutput struct { + _ struct{} `type:"structure"` + + // The ID of the action definition. + // + // ActionDefinitionId is a required field + ActionDefinitionId *string `locationName:"actionDefinitionId" min:"36" type:"string" required:"true"` + + // The ID of the action. + // + // ActionId is a required field + ActionId *string `locationName:"actionId" min:"36" type:"string" required:"true"` + + // The JSON payload of the action. + // + // ActionPayload is a required field + ActionPayload *ActionPayload `locationName:"actionPayload" type:"structure" required:"true"` + + // The time the action was executed. + // + // ExecutionTime is a required field + ExecutionTime *time.Time `locationName:"executionTime" type:"timestamp" required:"true"` + + // The resource the action will be taken on. + // + // TargetResource is a required field + TargetResource *TargetResource `locationName:"targetResource" 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 DescribeActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeActionOutput) GoString() string { + return s.String() +} + +// SetActionDefinitionId sets the ActionDefinitionId field's value. +func (s *DescribeActionOutput) SetActionDefinitionId(v string) *DescribeActionOutput { + s.ActionDefinitionId = &v + return s +} + +// SetActionId sets the ActionId field's value. +func (s *DescribeActionOutput) SetActionId(v string) *DescribeActionOutput { + s.ActionId = &v + return s +} + +// SetActionPayload sets the ActionPayload field's value. +func (s *DescribeActionOutput) SetActionPayload(v *ActionPayload) *DescribeActionOutput { + s.ActionPayload = v + return s +} + +// SetExecutionTime sets the ExecutionTime field's value. +func (s *DescribeActionOutput) SetExecutionTime(v time.Time) *DescribeActionOutput { + s.ExecutionTime = &v + return s +} + +// SetTargetResource sets the TargetResource field's value. +func (s *DescribeActionOutput) SetTargetResource(v *TargetResource) *DescribeActionOutput { + s.TargetResource = v + return s +} + +type DescribeAssetCompositeModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of a composite model on this asset. This can be either the actual + // ID in UUID format, or else externalId: followed by the external ID, if it + // has one. For more information, see Referencing objects with external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + // + // AssetCompositeModelId is a required field + AssetCompositeModelId *string `location:"uri" locationName:"assetCompositeModelId" min:"13" type:"string" required:"true"` + + // The ID of the asset. This can be either the actual ID in UUID format, or + // else externalId: followed by the external ID, if it has one. For more information, + // see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + // + // AssetId is a required field + AssetId *string `location:"uri" locationName:"assetId" min:"13" 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 DescribeAssetCompositeModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAssetCompositeModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAssetCompositeModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAssetCompositeModelInput"} + if s.AssetCompositeModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetCompositeModelId")) + } + if s.AssetCompositeModelId != nil && len(*s.AssetCompositeModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetCompositeModelId", 13)) + } + if s.AssetId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetId")) + } + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetCompositeModelId sets the AssetCompositeModelId field's value. +func (s *DescribeAssetCompositeModelInput) SetAssetCompositeModelId(v string) *DescribeAssetCompositeModelInput { + s.AssetCompositeModelId = &v + return s +} + +// SetAssetId sets the AssetId field's value. +func (s *DescribeAssetCompositeModelInput) SetAssetId(v string) *DescribeAssetCompositeModelInput { + s.AssetId = &v + return s +} + +type DescribeAssetCompositeModelOutput struct { + _ struct{} `type:"structure"` + + // The available actions for a composite model on this asset. + ActionDefinitions []*ActionDefinition `locationName:"actionDefinitions" type:"list"` + + // A description for the composite model. + // + // AssetCompositeModelDescription is a required field + AssetCompositeModelDescription *string `locationName:"assetCompositeModelDescription" min:"1" type:"string" required:"true"` + + // An external ID to assign to the asset model. + // + // If the composite model is a component-based composite model, or one nested + // inside a component model, you can only set the external ID using UpdateAssetModelCompositeModel + // and specifying the derived ID of the model or property from the created model + // it's a part of. + AssetCompositeModelExternalId *string `locationName:"assetCompositeModelExternalId" min:"2" type:"string"` + + // The ID of a composite model on this asset. + // + // AssetCompositeModelId is a required field + AssetCompositeModelId *string `locationName:"assetCompositeModelId" min:"36" type:"string" required:"true"` + + // The unique, friendly name for the composite model. + // + // AssetCompositeModelName is a required field + AssetCompositeModelName *string `locationName:"assetCompositeModelName" min:"1" type:"string" required:"true"` + + // The path to the composite model listing the parent composite models. + // + // AssetCompositeModelPath is a required field + AssetCompositeModelPath []*AssetCompositeModelPathSegment `locationName:"assetCompositeModelPath" type:"list" required:"true"` + + // The property definitions of the composite model that was used to create the + // asset. + // + // AssetCompositeModelProperties is a required field + AssetCompositeModelProperties []*AssetProperty `locationName:"assetCompositeModelProperties" type:"list" required:"true"` + + // The list of composite model summaries. + // + // AssetCompositeModelSummaries is a required field + AssetCompositeModelSummaries []*AssetCompositeModelSummary `locationName:"assetCompositeModelSummaries" type:"list" required:"true"` + + // The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY. + // + // AssetCompositeModelType is a required field + AssetCompositeModelType *string `locationName:"assetCompositeModelType" min:"1" type:"string" required:"true"` + + // The ID of the asset, in UUID format. This ID uniquely identifies the asset + // within IoT SiteWise and can be used with other IoT SiteWise APIs. + // + // AssetId is a required field + AssetId *string `locationName:"assetId" min:"36" 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 DescribeAssetCompositeModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAssetCompositeModelOutput) GoString() string { + return s.String() +} + +// SetActionDefinitions sets the ActionDefinitions field's value. +func (s *DescribeAssetCompositeModelOutput) SetActionDefinitions(v []*ActionDefinition) *DescribeAssetCompositeModelOutput { + s.ActionDefinitions = v + return s +} + +// SetAssetCompositeModelDescription sets the AssetCompositeModelDescription field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelDescription(v string) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelDescription = &v + return s +} + +// SetAssetCompositeModelExternalId sets the AssetCompositeModelExternalId field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelExternalId(v string) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelExternalId = &v + return s +} + +// SetAssetCompositeModelId sets the AssetCompositeModelId field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelId(v string) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelId = &v + return s +} + +// SetAssetCompositeModelName sets the AssetCompositeModelName field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelName(v string) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelName = &v + return s +} + +// SetAssetCompositeModelPath sets the AssetCompositeModelPath field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelPath(v []*AssetCompositeModelPathSegment) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelPath = v + return s +} + +// SetAssetCompositeModelProperties sets the AssetCompositeModelProperties field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelProperties(v []*AssetProperty) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelProperties = v + return s +} + +// SetAssetCompositeModelSummaries sets the AssetCompositeModelSummaries field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelSummaries(v []*AssetCompositeModelSummary) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelSummaries = v + return s +} + +// SetAssetCompositeModelType sets the AssetCompositeModelType field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetCompositeModelType(v string) *DescribeAssetCompositeModelOutput { + s.AssetCompositeModelType = &v + return s +} + +// SetAssetId sets the AssetId field's value. +func (s *DescribeAssetCompositeModelOutput) SetAssetId(v string) *DescribeAssetCompositeModelOutput { + s.AssetId = &v + return s +} + type DescribeAssetInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset. This can be either the actual ID in UUID format, or + // else externalId: followed by the external ID, if it has one. For more information, + // see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // Whether or not to exclude asset properties from the response. ExcludeProperties *bool `location:"querystring" locationName:"excludeProperties" type:"boolean"` @@ -15628,8 +19054,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if invalidParams.Len() > 0 { @@ -15650,13 +19076,229 @@ return s } +type DescribeAssetModelCompositeModelInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of a composite model on this asset model. This can be either the actual + // ID in UUID format, or else externalId: followed by the external ID, if it + // has one. For more information, see Referencing objects with external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + // + // AssetModelCompositeModelId is a required field + AssetModelCompositeModelId *string `location:"uri" locationName:"assetModelCompositeModelId" min:"13" type:"string" required:"true"` + + // The ID of the asset model. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + // + // AssetModelId is a required field + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" 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 DescribeAssetModelCompositeModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAssetModelCompositeModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAssetModelCompositeModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAssetModelCompositeModelInput"} + if s.AssetModelCompositeModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelCompositeModelId")) + } + if s.AssetModelCompositeModelId != nil && len(*s.AssetModelCompositeModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelId", 13)) + } + if s.AssetModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelId")) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *DescribeAssetModelCompositeModelInput) SetAssetModelCompositeModelId(v string) *DescribeAssetModelCompositeModelInput { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *DescribeAssetModelCompositeModelInput) SetAssetModelId(v string) *DescribeAssetModelCompositeModelInput { + s.AssetModelId = &v + return s +} + +type DescribeAssetModelCompositeModelOutput struct { + _ struct{} `type:"structure"` + + // The available actions for a composite model on this asset model. + ActionDefinitions []*ActionDefinition `locationName:"actionDefinitions" type:"list"` + + // The description for the composite model. + // + // AssetModelCompositeModelDescription is a required field + AssetModelCompositeModelDescription *string `locationName:"assetModelCompositeModelDescription" min:"1" type:"string" required:"true"` + + // The external ID of a composite model on this asset model. + AssetModelCompositeModelExternalId *string `locationName:"assetModelCompositeModelExternalId" min:"2" type:"string"` + + // The ID of a composite model on this asset model. + // + // AssetModelCompositeModelId is a required field + AssetModelCompositeModelId *string `locationName:"assetModelCompositeModelId" min:"36" type:"string" required:"true"` + + // The unique, friendly name for the composite model. + // + // AssetModelCompositeModelName is a required field + AssetModelCompositeModelName *string `locationName:"assetModelCompositeModelName" min:"1" type:"string" required:"true"` + + // The path to the composite model listing the parent composite models. + // + // AssetModelCompositeModelPath is a required field + AssetModelCompositeModelPath []*AssetModelCompositeModelPathSegment `locationName:"assetModelCompositeModelPath" type:"list" required:"true"` + + // The property definitions of the composite model. + // + // AssetModelCompositeModelProperties is a required field + AssetModelCompositeModelProperties []*AssetModelProperty `locationName:"assetModelCompositeModelProperties" type:"list" required:"true"` + + // The list of composite model summaries for the composite model. + // + // AssetModelCompositeModelSummaries is a required field + AssetModelCompositeModelSummaries []*AssetModelCompositeModelSummary `locationName:"assetModelCompositeModelSummaries" type:"list" required:"true"` + + // The composite model type. Valid values are AWS/ALARM, CUSTOM, or AWS/L4E_ANOMALY. + // + // AssetModelCompositeModelType is a required field + AssetModelCompositeModelType *string `locationName:"assetModelCompositeModelType" min:"1" type:"string" required:"true"` + + // The ID of the asset model, in UUID format. + // + // AssetModelId is a required field + AssetModelId *string `locationName:"assetModelId" min:"36" type:"string" required:"true"` + + // Metadata for the composition relationship established by using composedAssetModelId + // in CreateAssetModelCompositeModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html). + // For instance, an array detailing the path of the composition relationship + // for this composite model. + CompositionDetails *CompositionDetails `locationName:"compositionDetails" 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 DescribeAssetModelCompositeModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAssetModelCompositeModelOutput) GoString() string { + return s.String() +} + +// SetActionDefinitions sets the ActionDefinitions field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetActionDefinitions(v []*ActionDefinition) *DescribeAssetModelCompositeModelOutput { + s.ActionDefinitions = v + return s +} + +// SetAssetModelCompositeModelDescription sets the AssetModelCompositeModelDescription field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelDescription(v string) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelDescription = &v + return s +} + +// SetAssetModelCompositeModelExternalId sets the AssetModelCompositeModelExternalId field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelExternalId(v string) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelExternalId = &v + return s +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelId(v string) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelCompositeModelName sets the AssetModelCompositeModelName field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelName(v string) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelName = &v + return s +} + +// SetAssetModelCompositeModelPath sets the AssetModelCompositeModelPath field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelPath(v []*AssetModelCompositeModelPathSegment) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelPath = v + return s +} + +// SetAssetModelCompositeModelProperties sets the AssetModelCompositeModelProperties field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelProperties(v []*AssetModelProperty) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelProperties = v + return s +} + +// SetAssetModelCompositeModelSummaries sets the AssetModelCompositeModelSummaries field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelSummaries(v []*AssetModelCompositeModelSummary) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelSummaries = v + return s +} + +// SetAssetModelCompositeModelType sets the AssetModelCompositeModelType field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelCompositeModelType(v string) *DescribeAssetModelCompositeModelOutput { + s.AssetModelCompositeModelType = &v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetAssetModelId(v string) *DescribeAssetModelCompositeModelOutput { + s.AssetModelId = &v + return s +} + +// SetCompositionDetails sets the CompositionDetails field's value. +func (s *DescribeAssetModelCompositeModelOutput) SetCompositionDetails(v *CompositionDetails) *DescribeAssetModelCompositeModelOutput { + s.CompositionDetails = v + return s +} + type DescribeAssetModelInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset model. + // The ID of the asset model. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetModelId is a required field - AssetModelId *string `location:"uri" locationName:"assetModelId" min:"36" type:"string" required:"true"` + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` // Whether or not to exclude asset model properties from the response. ExcludeProperties *bool `location:"querystring" locationName:"excludeProperties" type:"boolean"` @@ -15686,8 +19328,8 @@ if s.AssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelId")) } - if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) } if invalidParams.Len() > 0 { @@ -15719,7 +19361,12 @@ // AssetModelArn is a required field AssetModelArn *string `locationName:"assetModelArn" min:"1" type:"string" required:"true"` - // The list of composite asset models for the asset model. + // The list of the immediate child custom composite model summaries for the + // asset model. + AssetModelCompositeModelSummaries []*AssetModelCompositeModelSummary `locationName:"assetModelCompositeModelSummaries" type:"list"` + + // The list of built-in composite models for the asset model, such as those + // with those of type AWS/ALARMS. AssetModelCompositeModels []*AssetModelCompositeModel `locationName:"assetModelCompositeModels" type:"list"` // The date the asset model was created, in Unix epoch time. @@ -15732,6 +19379,9 @@ // AssetModelDescription is a required field AssetModelDescription *string `locationName:"assetModelDescription" min:"1" type:"string" required:"true"` + // The external ID of the asset model, if any. + AssetModelExternalId *string `locationName:"assetModelExternalId" min:"2" type:"string"` + // A list of asset model hierarchies that each contain a childAssetModelId and // a hierarchyId (named id). A hierarchy specifies allowed parent/child asset // relationships for an asset model. @@ -15739,7 +19389,7 @@ // AssetModelHierarchies is a required field AssetModelHierarchies []*AssetModelHierarchy `locationName:"assetModelHierarchies" type:"list" required:"true"` - // The ID of the asset model. + // The ID of the asset model, in UUID format. // // AssetModelId is a required field AssetModelId *string `locationName:"assetModelId" min:"36" type:"string" required:"true"` @@ -15768,6 +19418,16 @@ // // AssetModelStatus is a required field AssetModelStatus *AssetModelStatus `locationName:"assetModelStatus" type:"structure" required:"true"` + + // The type of asset model. + // + // * ASSET_MODEL – (default) An asset model that you can use to create + // assets. Can't be included as a component in another asset model. + // + // * COMPONENT_MODEL – A reusable component that you can include in the + // composite models of other asset models. You can't create assets directly + // from this type of asset model. + AssetModelType *string `locationName:"assetModelType" type:"string" enum:"AssetModelType"` } // String returns the string representation. @@ -15794,6 +19454,12 @@ return s } +// SetAssetModelCompositeModelSummaries sets the AssetModelCompositeModelSummaries field's value. +func (s *DescribeAssetModelOutput) SetAssetModelCompositeModelSummaries(v []*AssetModelCompositeModelSummary) *DescribeAssetModelOutput { + s.AssetModelCompositeModelSummaries = v + return s +} + // SetAssetModelCompositeModels sets the AssetModelCompositeModels field's value. func (s *DescribeAssetModelOutput) SetAssetModelCompositeModels(v []*AssetModelCompositeModel) *DescribeAssetModelOutput { s.AssetModelCompositeModels = v @@ -15812,6 +19478,12 @@ return s } +// SetAssetModelExternalId sets the AssetModelExternalId field's value. +func (s *DescribeAssetModelOutput) SetAssetModelExternalId(v string) *DescribeAssetModelOutput { + s.AssetModelExternalId = &v + return s +} + // SetAssetModelHierarchies sets the AssetModelHierarchies field's value. func (s *DescribeAssetModelOutput) SetAssetModelHierarchies(v []*AssetModelHierarchy) *DescribeAssetModelOutput { s.AssetModelHierarchies = v @@ -15848,6 +19520,12 @@ return s } +// SetAssetModelType sets the AssetModelType field's value. +func (s *DescribeAssetModelOutput) SetAssetModelType(v string) *DescribeAssetModelOutput { + s.AssetModelType = &v + return s +} + type DescribeAssetOutput struct { _ struct{} `type:"structure"` @@ -15859,6 +19537,10 @@ // AssetArn is a required field AssetArn *string `locationName:"assetArn" min:"1" type:"string" required:"true"` + // The list of the immediate child custom composite model summaries for the + // asset. + AssetCompositeModelSummaries []*AssetCompositeModelSummary `locationName:"assetCompositeModelSummaries" type:"list"` + // The composite models for the asset. AssetCompositeModels []*AssetCompositeModel `locationName:"assetCompositeModels" type:"list"` @@ -15870,13 +19552,16 @@ // A description for the asset. AssetDescription *string `locationName:"assetDescription" min:"1" type:"string"` + // The external ID of the asset, if any. + AssetExternalId *string `locationName:"assetExternalId" min:"2" type:"string"` + // A list of asset hierarchies that each contain a hierarchyId. A hierarchy // specifies allowed parent/child asset relationships. // // AssetHierarchies is a required field AssetHierarchies []*AssetHierarchy `locationName:"assetHierarchies" type:"list" required:"true"` - // The ID of the asset. + // The ID of the asset, in UUID format. // // AssetId is a required field AssetId *string `locationName:"assetId" min:"36" type:"string" required:"true"` @@ -15934,6 +19619,12 @@ return s } +// SetAssetCompositeModelSummaries sets the AssetCompositeModelSummaries field's value. +func (s *DescribeAssetOutput) SetAssetCompositeModelSummaries(v []*AssetCompositeModelSummary) *DescribeAssetOutput { + s.AssetCompositeModelSummaries = v + return s +} + // SetAssetCompositeModels sets the AssetCompositeModels field's value. func (s *DescribeAssetOutput) SetAssetCompositeModels(v []*AssetCompositeModel) *DescribeAssetOutput { s.AssetCompositeModels = v @@ -15952,6 +19643,12 @@ return s } +// SetAssetExternalId sets the AssetExternalId field's value. +func (s *DescribeAssetOutput) SetAssetExternalId(v string) *DescribeAssetOutput { + s.AssetExternalId = &v + return s +} + // SetAssetHierarchies sets the AssetHierarchies field's value. func (s *DescribeAssetOutput) SetAssetHierarchies(v []*AssetHierarchy) *DescribeAssetOutput { s.AssetHierarchies = v @@ -15997,15 +19694,21 @@ type DescribeAssetPropertyInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset. This can be either the actual ID in UUID format, or + // else externalId: followed by the external ID, if it has one. For more information, + // see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` - // The ID of the asset property. + // The ID of the asset property. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // PropertyId is a required field - PropertyId *string `location:"uri" locationName:"propertyId" min:"36" type:"string" required:"true"` + PropertyId *string `location:"uri" locationName:"propertyId" min:"13" type:"string" required:"true"` } // String returns the string representation. @@ -16032,14 +19735,14 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.PropertyId == nil { invalidParams.Add(request.NewErrParamRequired("PropertyId")) } - if s.PropertyId != nil && len(*s.PropertyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("PropertyId", 36)) + if s.PropertyId != nil && len(*s.PropertyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("PropertyId", 13)) } if invalidParams.Len() > 0 { @@ -16063,12 +19766,17 @@ type DescribeAssetPropertyOutput struct { _ struct{} `type:"structure"` - // The ID of the asset. + // The external ID of the asset. For more information, see Using external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + AssetExternalId *string `locationName:"assetExternalId" min:"2" type:"string"` + + // The ID of the asset, in UUID format. // // AssetId is a required field AssetId *string `locationName:"assetId" min:"36" type:"string" required:"true"` - // The ID of the asset model. + // The ID of the asset model, in UUID format. // // AssetModelId is a required field AssetModelId *string `locationName:"assetModelId" min:"36" type:"string" required:"true"` @@ -16085,8 +19793,8 @@ // property information in compositeModel. AssetProperty *Property `locationName:"assetProperty" type:"structure"` - // The composite asset model that declares this asset property, if this asset - // property exists in a composite model. + // The composite model that declares this asset property, if this asset property + // exists in a composite model. CompositeModel *CompositeModelProperty `locationName:"compositeModel" type:"structure"` } @@ -16108,6 +19816,12 @@ return s.String() } +// SetAssetExternalId sets the AssetExternalId field's value. +func (s *DescribeAssetPropertyOutput) SetAssetExternalId(v string) *DescribeAssetPropertyOutput { + s.AssetExternalId = &v + return s +} + // SetAssetId sets the AssetId field's value. func (s *DescribeAssetPropertyOutput) SetAssetId(v string) *DescribeAssetPropertyOutput { s.AssetId = &v @@ -16190,6 +19904,15 @@ type DescribeBulkImportJobOutput struct { _ struct{} `type:"structure"` + // If set to true, ingest new data into IoT SiteWise storage. Measurements with + // notifications, metrics and transforms are computed. If set to false, historical + // data is ingested into IoT SiteWise as is. + AdaptiveIngestion *bool `locationName:"adaptiveIngestion" type:"boolean"` + + // If set to true, your data files is deleted from S3, after ingestion into + // IoT SiteWise storage. + DeleteFilesAfterImport *bool `locationName:"deleteFilesAfterImport" type:"boolean"` + // The Amazon S3 destination where errors associated with the job creation request // are saved. // @@ -16233,7 +19956,7 @@ // JobRoleArn is a required field JobRoleArn *string `locationName:"jobRoleArn" min:"1" type:"string" required:"true"` - // The status of the bulk import job can be one of following values. + // The status of the bulk import job can be one of following values: // // * PENDING – IoT SiteWise is waiting for the current bulk import job // to finish. @@ -16276,6 +19999,18 @@ return s.String() } +// SetAdaptiveIngestion sets the AdaptiveIngestion field's value. +func (s *DescribeBulkImportJobOutput) SetAdaptiveIngestion(v bool) *DescribeBulkImportJobOutput { + s.AdaptiveIngestion = &v + return s +} + +// SetDeleteFilesAfterImport sets the DeleteFilesAfterImport field's value. +func (s *DescribeBulkImportJobOutput) SetDeleteFilesAfterImport(v bool) *DescribeBulkImportJobOutput { + s.DeleteFilesAfterImport = &v + return s +} + // SetErrorReportLocation sets the ErrorReportLocation field's value. func (s *DescribeBulkImportJobOutput) SetErrorReportLocation(v *ErrorReportLocation) *DescribeBulkImportJobOutput { s.ErrorReportLocation = v @@ -16991,8 +20726,8 @@ PortalAuthMode *string `locationName:"portalAuthMode" type:"string" enum:"AuthMode"` // The IAM Identity Center application generated client ID (used with IAM Identity - // Center APIs). IoT SiteWise includes portalClientId for only portals that - // use IAM Identity Center to authenticate users. + // Center API operations). IoT SiteWise includes portalClientId for only portals + // that use IAM Identity Center to authenticate users. // // PortalClientId is a required field PortalClientId *string `locationName:"portalClientId" min:"1" type:"string" required:"true"` @@ -17357,8 +21092,8 @@ // Contains information about the storage destination. MultiLayerStorage *MultiLayerStorage `locationName:"multiLayerStorage" type:"structure"` - // How many days your data is kept in the hot tier. By default, your data is - // kept indefinitely in the hot tier. + // The number of days your data is kept in the hot tier. By default, your data + // is kept indefinitely in the hot tier. RetentionPeriod *RetentionPeriod `locationName:"retentionPeriod" type:"structure"` // The storage tier that you specified for your data. The storageType parameter @@ -17372,6 +21107,15 @@ // // StorageType is a required field StorageType *string `locationName:"storageType" type:"string" required:"true" enum:"StorageType"` + + // A service managed storage tier optimized for analytical queries. It stores + // periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob + // API. + WarmTier *string `locationName:"warmTier" type:"string" enum:"WarmTierState"` + + // Set this period to specify how long your data is stored in the warm tier + // before it is deleted. You can set this only if cold tier is enabled. + WarmTierRetentionPeriod *WarmTierRetentionPeriod `locationName:"warmTierRetentionPeriod" type:"structure"` } // String returns the string representation. @@ -17428,17 +21172,36 @@ return s } +// SetWarmTier sets the WarmTier field's value. +func (s *DescribeStorageConfigurationOutput) SetWarmTier(v string) *DescribeStorageConfigurationOutput { + s.WarmTier = &v + return s +} + +// SetWarmTierRetentionPeriod sets the WarmTierRetentionPeriod field's value. +func (s *DescribeStorageConfigurationOutput) SetWarmTierRetentionPeriod(v *WarmTierRetentionPeriod) *DescribeStorageConfigurationOutput { + s.WarmTierRetentionPeriod = v + return s +} + type DescribeTimeSeriesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The alias that identifies the time series. Alias *string `location:"querystring" locationName:"alias" min:"1" type:"string"` - // The ID of the asset in which the asset property was created. - AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` + // The ID of the asset in which the asset property was created. This can be + // either the actual ID in UUID format, or else externalId: followed by the + // external ID, if it has one. For more information, see Referencing objects + // with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + AssetId *string `location:"querystring" locationName:"assetId" min:"13" type:"string"` - // The ID of the asset property. - PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string"` + // The ID of the asset property. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + PropertyId *string `location:"querystring" locationName:"propertyId" min:"13" type:"string"` } // String returns the string representation. @@ -17465,11 +21228,11 @@ if s.Alias != nil && len(*s.Alias) < 1 { invalidParams.Add(request.NewErrParamMinLen("Alias", 1)) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } - if s.PropertyId != nil && len(*s.PropertyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("PropertyId", 36)) + if s.PropertyId != nil && len(*s.PropertyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("PropertyId", 13)) } if invalidParams.Len() > 0 { @@ -17521,7 +21284,7 @@ // series. Use AWS/ALARM_STATE for alarm state in alarm composite models. DataTypeSpec *string `locationName:"dataTypeSpec" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `locationName:"propertyId" min:"36" type:"string"` // The ARN (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) @@ -17668,29 +21431,41 @@ type DisassociateAssetsInput struct { _ struct{} `type:"structure"` - // The ID of the parent asset from which to disassociate the child asset. + // The ID of the parent asset from which to disassociate the child asset. This + // can be either the actual ID in UUID format, or else externalId: followed + // by the external ID, if it has one. For more information, see Referencing + // objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` - // The ID of the child asset to disassociate. + // The ID of the child asset to disassociate. This can be either the actual + // ID in UUID format, or else externalId: followed by the external ID, if it + // has one. For more information, see Referencing objects with external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // ChildAssetId is a required field - ChildAssetId *string `locationName:"childAssetId" min:"36" type:"string" required:"true"` + ChildAssetId *string `locationName:"childAssetId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request // is required. ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The ID of a hierarchy in the parent asset's model. Hierarchies allow different - // groupings of assets to be formed that all come from the same asset model. - // You can use the hierarchy ID to identify the correct asset to disassociate. - // For more information, see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) + // The ID of a hierarchy in the parent asset's model. (This can be either the + // actual ID in UUID format, or else externalId: followed by the external ID, + // if it has one. For more information, see Referencing objects with external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide.) Hierarchies allow different groupings of + // assets to be formed that all come from the same asset model. You can use + // the hierarchy ID to identify the correct asset to disassociate. For more + // information, see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) // in the IoT SiteWise User Guide. // // HierarchyId is a required field - HierarchyId *string `locationName:"hierarchyId" min:"36" type:"string" required:"true"` + HierarchyId *string `locationName:"hierarchyId" min:"13" type:"string" required:"true"` } // String returns the string representation. @@ -17717,14 +21492,14 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ChildAssetId == nil { invalidParams.Add(request.NewErrParamRequired("ChildAssetId")) } - if s.ChildAssetId != nil && len(*s.ChildAssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("ChildAssetId", 36)) + if s.ChildAssetId != nil && len(*s.ChildAssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("ChildAssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -17732,8 +21507,8 @@ if s.HierarchyId == nil { invalidParams.Add(request.NewErrParamRequired("HierarchyId")) } - if s.HierarchyId != nil && len(*s.HierarchyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 36)) + if s.HierarchyId != nil && len(*s.HierarchyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 13)) } if invalidParams.Len() > 0 { @@ -17796,20 +21571,27 @@ // Alias is a required field Alias *string `location:"querystring" locationName:"alias" min:"1" type:"string" required:"true"` - // The ID of the asset in which the asset property was created. + // The ID of the asset in which the asset property was created. This can be + // either the actual ID in UUID format, or else externalId: followed by the + // external ID, if it has one. For more information, see Referencing objects + // with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"querystring" locationName:"assetId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request // is required. ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` - // The ID of the asset property. + // The ID of the asset property. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // PropertyId is a required field - PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string" required:"true"` + PropertyId *string `location:"querystring" locationName:"propertyId" min:"13" type:"string" required:"true"` } // String returns the string representation. @@ -17842,8 +21624,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -17851,8 +21633,8 @@ if s.PropertyId == nil { invalidParams.Add(request.NewErrParamRequired("PropertyId")) } - if s.PropertyId != nil && len(*s.PropertyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("PropertyId", 36)) + if s.PropertyId != nil && len(*s.PropertyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("PropertyId", 13)) } if invalidParams.Len() > 0 { @@ -18031,6 +21813,262 @@ return s } +type ExecuteActionInput struct { + _ struct{} `type:"structure"` + + // The ID of the action definition. + // + // ActionDefinitionId is a required field + ActionDefinitionId *string `locationName:"actionDefinitionId" min:"36" type:"string" required:"true"` + + // The JSON payload of the action. + // + // ActionPayload is a required field + ActionPayload *ActionPayload `locationName:"actionPayload" type:"structure" required:"true"` + + // A unique case-sensitive identifier that you can provide to ensure the idempotency + // of the request. Don't reuse this client token if a new idempotent request + // is required. + ClientToken *string `locationName:"clientToken" min:"36" type:"string"` + + // The resource the action will be taken on. + // + // TargetResource is a required field + TargetResource *TargetResource `locationName:"targetResource" 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 ExecuteActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecuteActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExecuteActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExecuteActionInput"} + if s.ActionDefinitionId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionDefinitionId")) + } + if s.ActionDefinitionId != nil && len(*s.ActionDefinitionId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ActionDefinitionId", 36)) + } + if s.ActionPayload == nil { + invalidParams.Add(request.NewErrParamRequired("ActionPayload")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) + } + if s.TargetResource == nil { + invalidParams.Add(request.NewErrParamRequired("TargetResource")) + } + if s.ActionPayload != nil { + if err := s.ActionPayload.Validate(); err != nil { + invalidParams.AddNested("ActionPayload", err.(request.ErrInvalidParams)) + } + } + if s.TargetResource != nil { + if err := s.TargetResource.Validate(); err != nil { + invalidParams.AddNested("TargetResource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionDefinitionId sets the ActionDefinitionId field's value. +func (s *ExecuteActionInput) SetActionDefinitionId(v string) *ExecuteActionInput { + s.ActionDefinitionId = &v + return s +} + +// SetActionPayload sets the ActionPayload field's value. +func (s *ExecuteActionInput) SetActionPayload(v *ActionPayload) *ExecuteActionInput { + s.ActionPayload = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *ExecuteActionInput) SetClientToken(v string) *ExecuteActionInput { + s.ClientToken = &v + return s +} + +// SetTargetResource sets the TargetResource field's value. +func (s *ExecuteActionInput) SetTargetResource(v *TargetResource) *ExecuteActionInput { + s.TargetResource = v + return s +} + +type ExecuteActionOutput struct { + _ struct{} `type:"structure"` + + // The ID of the action. + // + // ActionId is a required field + ActionId *string `locationName:"actionId" min:"36" 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 ExecuteActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecuteActionOutput) GoString() string { + return s.String() +} + +// SetActionId sets the ActionId field's value. +func (s *ExecuteActionOutput) SetActionId(v string) *ExecuteActionOutput { + s.ActionId = &v + return s +} + +type ExecuteQueryInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return at one time. The default is 25. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The IoT SiteWise query statement. + // + // QueryStatement is a required field + QueryStatement *string `locationName:"queryStatement" 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 ExecuteQueryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecuteQueryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExecuteQueryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExecuteQueryInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.QueryStatement == nil { + invalidParams.Add(request.NewErrParamRequired("QueryStatement")) + } + if s.QueryStatement != nil && len(*s.QueryStatement) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QueryStatement", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ExecuteQueryInput) SetMaxResults(v int64) *ExecuteQueryInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ExecuteQueryInput) SetNextToken(v string) *ExecuteQueryInput { + s.NextToken = &v + return s +} + +// SetQueryStatement sets the QueryStatement field's value. +func (s *ExecuteQueryInput) SetQueryStatement(v string) *ExecuteQueryInput { + s.QueryStatement = &v + return s +} + +type ExecuteQueryOutput struct { + _ struct{} `type:"structure"` + + // Represents a single column in the query results. + Columns []*ColumnInfo `locationName:"columns" type:"list"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Represents a single row in the query results. + Rows []*Row `locationName:"rows" 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 ExecuteQueryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecuteQueryOutput) GoString() string { + return s.String() +} + +// SetColumns sets the Columns field's value. +func (s *ExecuteQueryOutput) SetColumns(v []*ColumnInfo) *ExecuteQueryOutput { + s.Columns = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ExecuteQueryOutput) SetNextToken(v string) *ExecuteQueryOutput { + s.NextToken = &v + return s +} + +// SetRows sets the Rows field's value. +func (s *ExecuteQueryOutput) SetRows(v []*Row) *ExecuteQueryOutput { + s.Rows = v + return s +} + // Contains expression variable information. type ExpressionVariable struct { _ struct{} `type:"structure"` @@ -18175,12 +22213,15 @@ return s } -// The file format of the data. +// The file format of the data in S3. type FileFormat struct { _ struct{} `type:"structure"` - // The .csv file format. + // The file is in .CSV format. Csv *Csv `locationName:"csv" type:"structure"` + + // The file is in parquet format. + Parquet *Parquet `locationName:"parquet" type:"structure"` } // String returns the string representation. @@ -18201,12 +22242,33 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *FileFormat) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FileFormat"} + if s.Csv != nil { + if err := s.Csv.Validate(); err != nil { + invalidParams.AddNested("Csv", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetCsv sets the Csv field's value. func (s *FileFormat) SetCsv(v *Csv) *FileFormat { s.Csv = v return s } +// SetParquet sets the Parquet field's value. +func (s *FileFormat) SetParquet(v *Parquet) *FileFormat { + s.Parquet = v + return s +} + // The forwarding configuration for a given property. type ForwardingConfig struct { _ struct{} `type:"structure"` @@ -18466,7 +22528,7 @@ // AggregateTypes is a required field AggregateTypes []*string `location:"querystring" locationName:"aggregateTypes" min:"1" type:"list" required:"true" enum:"AggregateType"` - // The ID of the asset. + // The ID of the asset, in UUID format. AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` // The inclusive end of the range from which to query historical data, expressed @@ -18481,7 +22543,7 @@ // * The size of the result set is equal to 1 MB. // // * The number of data points in the result set is equal to the value of - // maxResults. The maximum value of maxResults is 250. + // maxResults. The maximum value of maxResults is 2500. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token to be used for the next set of paginated results. @@ -18493,7 +22555,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `location:"querystring" locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string"` // The quality by which to filter asset data. @@ -18692,7 +22754,7 @@ type GetAssetPropertyValueHistoryInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset, in UUID format. AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` // The inclusive end of the range from which to query historical data, expressed @@ -18717,7 +22779,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `location:"querystring" locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string"` // The quality by which to filter asset data. @@ -18879,7 +22941,7 @@ type GetAssetPropertyValueInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset, in UUID format. AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` // The alias that identifies the property, such as an OPC-UA server data stream @@ -18888,7 +22950,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `location:"querystring" locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string"` } @@ -18981,7 +23043,7 @@ type GetInterpolatedAssetPropertyValuesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset, in UUID format. AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` // The inclusive end of the range from which to interpolate data, expressed @@ -19034,7 +23096,7 @@ // in the IoT SiteWise User Guide. PropertyAlias *string `location:"querystring" locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `location:"querystring" locationName:"propertyId" min:"36" type:"string"` // The quality of the asset property value. You can use this parameter as a @@ -19547,9 +23609,10 @@ // Contains an identity that can access an IoT SiteWise Monitor resource. // -// Currently, you can't use Amazon Web Services APIs to retrieve IAM Identity -// Center identity IDs. You can find the IAM Identity Center identity IDs in -// the URL of user and group pages in the IAM Identity Center console (https://console.aws.amazon.com/singlesignon). +// Currently, you can't use Amazon Web Services API operations to retrieve IAM +// Identity Center identity IDs. You can find the IAM Identity Center identity +// IDs in the URL of user and group pages in the IAM Identity Center console +// (https://console.aws.amazon.com/singlesignon). type Identity struct { _ struct{} `type:"structure"` @@ -19993,7 +24056,7 @@ type JobConfiguration struct { _ struct{} `type:"structure"` - // The file format of the data in Amazon S3. + // The file format of the data in S3. // // FileFormat is a required field FileFormat *FileFormat `locationName:"fileFormat" type:"structure" required:"true"` @@ -20023,6 +24086,11 @@ if s.FileFormat == nil { invalidParams.Add(request.NewErrParamRequired("FileFormat")) } + if s.FileFormat != nil { + if err := s.FileFormat.Validate(); err != nil { + invalidParams.AddNested("FileFormat", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -20036,7 +24104,7 @@ return s } -// Contains a job summary information. +// Contains the job summary information. type JobSummary struct { _ struct{} `type:"structure"` @@ -20050,7 +24118,7 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` - // The status of the bulk import job can be one of following values. + // The status of the bulk import job can be one of following values: // // * PENDING – IoT SiteWise is waiting for the current bulk import job // to finish. @@ -20340,13 +24408,269 @@ return s } +type ListActionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return for each paginated request. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The ID of the target resource. + // + // TargetResourceId is a required field + TargetResourceId *string `location:"querystring" locationName:"targetResourceId" min:"13" type:"string" required:"true"` + + // The type of resource. + // + // TargetResourceType is a required field + TargetResourceType *string `location:"querystring" locationName:"targetResourceType" type:"string" required:"true" enum:"TargetResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListActionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListActionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListActionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListActionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.TargetResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("TargetResourceId")) + } + if s.TargetResourceId != nil && len(*s.TargetResourceId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("TargetResourceId", 13)) + } + if s.TargetResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("TargetResourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListActionsInput) SetMaxResults(v int64) *ListActionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListActionsInput) SetNextToken(v string) *ListActionsInput { + s.NextToken = &v + return s +} + +// SetTargetResourceId sets the TargetResourceId field's value. +func (s *ListActionsInput) SetTargetResourceId(v string) *ListActionsInput { + s.TargetResourceId = &v + return s +} + +// SetTargetResourceType sets the TargetResourceType field's value. +func (s *ListActionsInput) SetTargetResourceType(v string) *ListActionsInput { + s.TargetResourceType = &v + return s +} + +type ListActionsOutput struct { + _ struct{} `type:"structure"` + + // A list that summarizes the actions associated with the specified asset. + // + // ActionSummaries is a required field + ActionSummaries []*ActionSummary `locationName:"actionSummaries" type:"list" required:"true"` + + // The token for the next set of results, or null if there are no additional + // results. + // + // NextToken is a required field + NextToken *string `locationName:"nextToken" 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 ListActionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListActionsOutput) GoString() string { + return s.String() +} + +// SetActionSummaries sets the ActionSummaries field's value. +func (s *ListActionsOutput) SetActionSummaries(v []*ActionSummary) *ListActionsOutput { + s.ActionSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListActionsOutput) SetNextToken(v string) *ListActionsOutput { + s.NextToken = &v + return s +} + +type ListAssetModelCompositeModelsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the asset model. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + // + // AssetModelId is a required field + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` + + // The maximum number of results to return for each paginated request. + // + // Default: 50 + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetModelCompositeModelsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetModelCompositeModelsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAssetModelCompositeModelsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAssetModelCompositeModelsInput"} + if s.AssetModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelId")) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *ListAssetModelCompositeModelsInput) SetAssetModelId(v string) *ListAssetModelCompositeModelsInput { + s.AssetModelId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAssetModelCompositeModelsInput) SetMaxResults(v int64) *ListAssetModelCompositeModelsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssetModelCompositeModelsInput) SetNextToken(v string) *ListAssetModelCompositeModelsInput { + s.NextToken = &v + return s +} + +type ListAssetModelCompositeModelsOutput struct { + _ struct{} `type:"structure"` + + // A list that summarizes each composite model. + // + // AssetModelCompositeModelSummaries is a required field + AssetModelCompositeModelSummaries []*AssetModelCompositeModelSummary `locationName:"assetModelCompositeModelSummaries" type:"list" required:"true"` + + // The token for the next set of results, or null if there are no additional + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetModelCompositeModelsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetModelCompositeModelsOutput) GoString() string { + return s.String() +} + +// SetAssetModelCompositeModelSummaries sets the AssetModelCompositeModelSummaries field's value. +func (s *ListAssetModelCompositeModelsOutput) SetAssetModelCompositeModelSummaries(v []*AssetModelCompositeModelSummary) *ListAssetModelCompositeModelsOutput { + s.AssetModelCompositeModelSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssetModelCompositeModelsOutput) SetNextToken(v string) *ListAssetModelCompositeModelsOutput { + s.NextToken = &v + return s +} + type ListAssetModelPropertiesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset model. + // The ID of the asset model. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetModelId is a required field - AssetModelId *string `location:"uri" locationName:"assetModelId" min:"36" type:"string" required:"true"` + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` // Filters the requested list of asset model properties. You can choose one // of the following options: @@ -20392,8 +24716,8 @@ if s.AssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelId")) } - if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -20479,6 +24803,16 @@ type ListAssetModelsInput struct { _ struct{} `type:"structure" nopayload:"true"` + // The type of asset model. + // + // * ASSET_MODEL – (default) An asset model that you can use to create + // assets. Can't be included as a component in another asset model. + // + // * COMPONENT_MODEL – A reusable component that you can include in the + // composite models of other asset models. You can't create assets directly + // from this type of asset model. + AssetModelTypes []*string `location:"querystring" locationName:"assetModelTypes" type:"list" enum:"AssetModelType"` + // The maximum number of results to return for each paginated request. // // Default: 50 @@ -20522,6 +24856,12 @@ return nil } +// SetAssetModelTypes sets the AssetModelTypes field's value. +func (s *ListAssetModelsInput) SetAssetModelTypes(v []*string) *ListAssetModelsInput { + s.AssetModelTypes = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListAssetModelsInput) SetMaxResults(v int64) *ListAssetModelsInput { s.MaxResults = &v @@ -20580,10 +24920,13 @@ type ListAssetPropertiesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset. This can be either the actual ID in UUID format, or + // else externalId: followed by the external ID, if it has one. For more information, + // see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // Filters the requested list of asset properties. You can choose one of the // following options: @@ -20629,8 +24972,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -20715,10 +25058,13 @@ type ListAssetRelationshipsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset. + // The ID of the asset. This can be either the actual ID in UUID format, or + // else externalId: followed by the external ID, if it has one. For more information, + // see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // The maximum number of results to return for each paginated request. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` @@ -20761,8 +25107,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -20851,8 +25197,11 @@ _ struct{} `type:"structure" nopayload:"true"` // The ID of the asset model by which to filter the list of assets. This parameter - // is required if you choose ALL for filter. - AssetModelId *string `location:"querystring" locationName:"assetModelId" min:"36" type:"string"` + // is required if you choose ALL for filter. This can be either the actual ID + // in UUID format, or else externalId: followed by the external ID, if it has + // one. For more information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + AssetModelId *string `location:"querystring" locationName:"assetModelId" min:"13" type:"string"` // The filter for the requested list of assets. Choose one of the following // options: @@ -20896,8 +25245,8 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ListAssetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAssetsInput"} - if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -20982,19 +25331,26 @@ type ListAssociatedAssetsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the asset to query. + // The ID of the asset to query. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // The ID of the hierarchy by which child assets are associated to the asset. - // To find a hierarchy ID, use the DescribeAsset (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAsset.html) + // (This can be either the actual ID in UUID format, or else externalId: followed + // by the external ID, if it has one. For more information, see Referencing + // objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide.) To find a hierarchy ID, use the DescribeAsset + // (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAsset.html) // or DescribeAssetModel (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html) // operations. This parameter is required if you choose CHILD for traversalDirection. // // For more information, see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) // in the IoT SiteWise User Guide. - HierarchyId *string `location:"querystring" locationName:"hierarchyId" min:"36" type:"string"` + HierarchyId *string `location:"querystring" locationName:"hierarchyId" min:"13" type:"string"` // The maximum number of results to return for each paginated request. // @@ -21039,11 +25395,11 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } - if s.HierarchyId != nil && len(*s.HierarchyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 36)) + if s.HierarchyId != nil && len(*s.HierarchyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 13)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -21239,6 +25595,127 @@ return s } +type ListCompositionRelationshipsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the asset model. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + // + // AssetModelId is a required field + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"36" type:"string" required:"true"` + + // The maximum number of results to return for each paginated request. + // + // Default: 50 + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCompositionRelationshipsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCompositionRelationshipsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCompositionRelationshipsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCompositionRelationshipsInput"} + if s.AssetModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelId")) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *ListCompositionRelationshipsInput) SetAssetModelId(v string) *ListCompositionRelationshipsInput { + s.AssetModelId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCompositionRelationshipsInput) SetMaxResults(v int64) *ListCompositionRelationshipsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCompositionRelationshipsInput) SetNextToken(v string) *ListCompositionRelationshipsInput { + s.NextToken = &v + return s +} + +type ListCompositionRelationshipsOutput struct { + _ struct{} `type:"structure"` + + // A list that summarizes each composition relationship. + // + // CompositionRelationshipSummaries is a required field + CompositionRelationshipSummaries []*CompositionRelationshipSummary `locationName:"compositionRelationshipSummaries" type:"list" required:"true"` + + // The token for the next set of results, or null if there are no additional + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCompositionRelationshipsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCompositionRelationshipsOutput) GoString() string { + return s.String() +} + +// SetCompositionRelationshipSummaries sets the CompositionRelationshipSummaries field's value. +func (s *ListCompositionRelationshipsOutput) SetCompositionRelationshipSummaries(v []*CompositionRelationshipSummary) *ListCompositionRelationshipsOutput { + s.CompositionRelationshipSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCompositionRelationshipsOutput) SetNextToken(v string) *ListCompositionRelationshipsOutput { + s.NextToken = &v + return s +} + type ListDashboardsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -21882,8 +26359,12 @@ // The alias prefix of the time series. AliasPrefix *string `location:"querystring" locationName:"aliasPrefix" min:"1" type:"string"` - // The ID of the asset in which the asset property was created. - AssetId *string `location:"querystring" locationName:"assetId" min:"36" type:"string"` + // The ID of the asset in which the asset property was created. This can be + // either the actual ID in UUID format, or else externalId: followed by the + // external ID, if it has one. For more information, see Referencing objects + // with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. + AssetId *string `location:"querystring" locationName:"assetId" min:"13" type:"string"` // The maximum number of results to return for each paginated request. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` @@ -21924,8 +26405,8 @@ if s.AliasPrefix != nil && len(*s.AliasPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("AliasPrefix", 1)) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -22482,6 +26963,29 @@ return s } +// A parquet file. +type Parquet 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 Parquet) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Parquet) GoString() string { + return s.String() +} + // Identifies an IoT SiteWise Monitor portal. type PortalResource struct { _ struct{} `type:"structure"` @@ -22822,6 +27326,11 @@ // DataType is a required field DataType *string `locationName:"dataType" type:"string" required:"true" enum:"PropertyDataType"` + // The external ID of the asset property. For more information, see Using external + // IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + ExternalId *string `locationName:"externalId" min:"2" type:"string"` + // The ID of the asset property. // // Id is a required field @@ -22836,6 +27345,9 @@ // see UpdateAssetProperty (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetProperty.html). Notification *PropertyNotification `locationName:"notification" type:"structure"` + // The structured path to the property from the root of the asset. + Path []*AssetPropertyPathSegment `locationName:"path" type:"list"` + // The property type (see PropertyType). A property contains one type. Type *PropertyType `locationName:"type" type:"structure"` @@ -22873,6 +27385,12 @@ return s } +// SetExternalId sets the ExternalId field's value. +func (s *Property) SetExternalId(v string) *Property { + s.ExternalId = &v + return s +} + // SetId sets the Id field's value. func (s *Property) SetId(v string) *Property { s.Id = &v @@ -22891,6 +27409,12 @@ return s } +// SetPath sets the Path field's value. +func (s *Property) SetPath(v []*AssetPropertyPathSegment) *Property { + s.Path = v + return s +} + // SetType sets the Type field's value. func (s *Property) SetType(v *PropertyType) *Property { s.Type = v @@ -22999,11 +27523,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *PropertyType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PropertyType"} - if s.Attribute != nil { - if err := s.Attribute.Validate(); err != nil { - invalidParams.AddNested("Attribute", err.(request.ErrInvalidParams)) - } - } if s.Measurement != nil { if err := s.Measurement.Validate(); err != nil { invalidParams.AddNested("Measurement", err.(request.ErrInvalidParams)) @@ -23375,8 +27894,8 @@ // the storage type, you must specify a MultiLayerStorage object. MultiLayerStorage *MultiLayerStorage `locationName:"multiLayerStorage" type:"structure"` - // How many days your data is kept in the hot tier. By default, your data is - // kept indefinitely in the hot tier. + // The number of days your data is kept in the hot tier. By default, your data + // is kept indefinitely in the hot tier. RetentionPeriod *RetentionPeriod `locationName:"retentionPeriod" type:"structure"` // The storage tier that you specified for your data. The storageType parameter @@ -23390,6 +27909,15 @@ // // StorageType is a required field StorageType *string `locationName:"storageType" type:"string" required:"true" enum:"StorageType"` + + // A service managed storage tier optimized for analytical queries. It stores + // periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob + // API. + WarmTier *string `locationName:"warmTier" type:"string" enum:"WarmTierState"` + + // Set this period to specify how long your data is stored in the warm tier + // before it is deleted. You can set this only if cold tier is enabled. + WarmTierRetentionPeriod *WarmTierRetentionPeriod `locationName:"warmTierRetentionPeriod" type:"structure"` } // String returns the string representation. @@ -23426,6 +27954,11 @@ invalidParams.AddNested("RetentionPeriod", err.(request.ErrInvalidParams)) } } + if s.WarmTierRetentionPeriod != nil { + if err := s.WarmTierRetentionPeriod.Validate(); err != nil { + invalidParams.AddNested("WarmTierRetentionPeriod", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -23457,6 +27990,18 @@ return s } +// SetWarmTier sets the WarmTier field's value. +func (s *PutStorageConfigurationInput) SetWarmTier(v string) *PutStorageConfigurationInput { + s.WarmTier = &v + return s +} + +// SetWarmTierRetentionPeriod sets the WarmTierRetentionPeriod field's value. +func (s *PutStorageConfigurationInput) SetWarmTierRetentionPeriod(v *WarmTierRetentionPeriod) *PutStorageConfigurationInput { + s.WarmTierRetentionPeriod = v + return s +} + type PutStorageConfigurationOutput struct { _ struct{} `type:"structure"` @@ -23483,8 +28028,8 @@ // Contains information about the storage destination. MultiLayerStorage *MultiLayerStorage `locationName:"multiLayerStorage" type:"structure"` - // How many days your data is kept in the hot tier. By default, your data is - // kept indefinitely in the hot tier. + // The number of days your data is kept in the hot tier. By default, your data + // is kept indefinitely in the hot tier. RetentionPeriod *RetentionPeriod `locationName:"retentionPeriod" type:"structure"` // The storage tier that you specified for your data. The storageType parameter @@ -23498,6 +28043,15 @@ // // StorageType is a required field StorageType *string `locationName:"storageType" type:"string" required:"true" enum:"StorageType"` + + // A service managed storage tier optimized for analytical queries. It stores + // periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob + // API. + WarmTier *string `locationName:"warmTier" type:"string" enum:"WarmTierState"` + + // Set this period to specify how long your data is stored in the warm tier + // before it is deleted. You can set this only if cold tier is enabled. + WarmTierRetentionPeriod *WarmTierRetentionPeriod `locationName:"warmTierRetentionPeriod" type:"structure"` } // String returns the string representation. @@ -23548,6 +28102,82 @@ return s } +// SetWarmTier sets the WarmTier field's value. +func (s *PutStorageConfigurationOutput) SetWarmTier(v string) *PutStorageConfigurationOutput { + s.WarmTier = &v + return s +} + +// SetWarmTierRetentionPeriod sets the WarmTierRetentionPeriod field's value. +func (s *PutStorageConfigurationOutput) SetWarmTierRetentionPeriod(v *WarmTierRetentionPeriod) *PutStorageConfigurationOutput { + s.WarmTierRetentionPeriod = v + return s +} + +// The query timed out. +type QueryTimeoutException 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 QueryTimeoutException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryTimeoutException) GoString() string { + return s.String() +} + +func newErrorQueryTimeoutException(v protocol.ResponseMetadata) error { + return &QueryTimeoutException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *QueryTimeoutException) Code() string { + return "QueryTimeoutException" +} + +// Message returns the exception's message. +func (s *QueryTimeoutException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *QueryTimeoutException) OrigErr() error { + return nil +} + +func (s *QueryTimeoutException) 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 *QueryTimeoutException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *QueryTimeoutException) RequestID() string { + return s.RespMetadata.RequestID +} + // Contains an IoT SiteWise Monitor resource ID for a portal or project. type Resource struct { _ struct{} `type:"structure"` @@ -23747,8 +28377,8 @@ return s.RespMetadata.RequestID } -// How many days your data is kept in the hot tier. By default, your data is -// kept indefinitely in the hot tier. +// The number of days your data is kept in the hot tier. By default, your data +// is kept indefinitely in the hot tier. type RetentionPeriod struct { _ struct{} `type:"structure"` @@ -23808,6 +28438,40 @@ return s } +// Represents a single row in the query results. +type Row struct { + _ struct{} `type:"structure"` + + // List of data points in a single row of the result set. + // + // Data is a required field + Data []*Datum `locationName:"data" 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 Row) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Row) GoString() string { + return s.String() +} + +// SetData sets the Data field's value. +func (s *Row) SetData(v []*Datum) *Row { + s.Data = v + return s +} + // The requested service is unavailable. type ServiceUnavailableException struct { _ struct{} `type:"structure"` @@ -23963,6 +28627,56 @@ return s.String() } +// The resource the action will be taken on. +type TargetResource struct { + _ struct{} `type:"structure"` + + // The ID of the asset, in UUID format. + // + // AssetId is a required field + AssetId *string `locationName:"assetId" min:"13" 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 TargetResource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetResource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TargetResource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TargetResource"} + if s.AssetId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetId")) + } + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetId sets the AssetId field's value. +func (s *TargetResource) SetAssetId(v string) *TargetResource { + s.AssetId = &v + return s +} + // Your request exceeded a rate limit. For example, you might have exceeded // the number of IoT SiteWise assets that can be created per second, the allowed // number of messages per second, and so on. @@ -24118,7 +28832,7 @@ // series. Use AWS/ALARM_STATE for alarm state in alarm composite models. DataTypeSpec *string `locationName:"dataTypeSpec" min:"1" type:"string"` - // The ID of the asset property. + // The ID of the asset property, in UUID format. PropertyId *string `locationName:"propertyId" min:"36" type:"string"` // The ARN (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) @@ -24857,10 +29571,19 @@ // A description for the asset. AssetDescription *string `locationName:"assetDescription" min:"1" type:"string"` - // The ID of the asset to update. + // An external ID to assign to the asset. The asset must not already have an + // external ID. The external ID must be unique within your Amazon Web Services + // account. For more information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + AssetExternalId *string `locationName:"assetExternalId" min:"2" type:"string"` + + // The ID of the asset to update. This can be either the actual ID in UUID format, + // or else externalId: followed by the external ID, if it has one. For more + // information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // A friendly name for the asset. // @@ -24897,11 +29620,14 @@ if s.AssetDescription != nil && len(*s.AssetDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssetDescription", 1)) } + if s.AssetExternalId != nil && len(*s.AssetExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetExternalId", 2)) + } if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.AssetName == nil { invalidParams.Add(request.NewErrParamRequired("AssetName")) @@ -24925,6 +29651,12 @@ return s } +// SetAssetExternalId sets the AssetExternalId field's value. +func (s *UpdateAssetInput) SetAssetExternalId(v string) *UpdateAssetInput { + s.AssetExternalId = &v + return s +} + // SetAssetId sets the AssetId field's value. func (s *UpdateAssetInput) SetAssetId(v string) *UpdateAssetInput { s.AssetId = &v @@ -24943,18 +29675,222 @@ return s } +type UpdateAssetModelCompositeModelInput struct { + _ struct{} `type:"structure"` + + // A description for the composite model. + AssetModelCompositeModelDescription *string `locationName:"assetModelCompositeModelDescription" min:"1" type:"string"` + + // An external ID to assign to the asset model. You can only set the external + // ID of the asset model if it wasn't set when it was created, or you're setting + // it to the exact same thing as when it was created. + AssetModelCompositeModelExternalId *string `locationName:"assetModelCompositeModelExternalId" min:"2" type:"string"` + + // The ID of a composite model on this asset model. + // + // AssetModelCompositeModelId is a required field + AssetModelCompositeModelId *string `location:"uri" locationName:"assetModelCompositeModelId" min:"13" type:"string" required:"true"` + + // A unique, friendly name for the composite model. + // + // AssetModelCompositeModelName is a required field + AssetModelCompositeModelName *string `locationName:"assetModelCompositeModelName" min:"1" type:"string" required:"true"` + + // The property definitions of the composite model. For more information, see + // . + // + // You can specify up to 200 properties per composite model. For more information, + // see Quotas (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) + // in the IoT SiteWise User Guide. + AssetModelCompositeModelProperties []*AssetModelProperty `locationName:"assetModelCompositeModelProperties" type:"list"` + + // The ID of the asset model, in UUID format. + // + // AssetModelId is a required field + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` + + // A unique case-sensitive identifier that you can provide to ensure the idempotency + // of the request. Don't reuse this client token if a new idempotent request + // is required. + ClientToken *string `locationName:"clientToken" min:"36" type:"string" idempotencyToken:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAssetModelCompositeModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAssetModelCompositeModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAssetModelCompositeModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAssetModelCompositeModelInput"} + if s.AssetModelCompositeModelDescription != nil && len(*s.AssetModelCompositeModelDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelDescription", 1)) + } + if s.AssetModelCompositeModelExternalId != nil && len(*s.AssetModelCompositeModelExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelExternalId", 2)) + } + if s.AssetModelCompositeModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelCompositeModelId")) + } + if s.AssetModelCompositeModelId != nil && len(*s.AssetModelCompositeModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelId", 13)) + } + if s.AssetModelCompositeModelName == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelCompositeModelName")) + } + if s.AssetModelCompositeModelName != nil && len(*s.AssetModelCompositeModelName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelCompositeModelName", 1)) + } + if s.AssetModelId == nil { + invalidParams.Add(request.NewErrParamRequired("AssetModelId")) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) + } + if s.AssetModelCompositeModelProperties != nil { + for i, v := range s.AssetModelCompositeModelProperties { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetModelCompositeModelProperties", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelCompositeModelDescription sets the AssetModelCompositeModelDescription field's value. +func (s *UpdateAssetModelCompositeModelInput) SetAssetModelCompositeModelDescription(v string) *UpdateAssetModelCompositeModelInput { + s.AssetModelCompositeModelDescription = &v + return s +} + +// SetAssetModelCompositeModelExternalId sets the AssetModelCompositeModelExternalId field's value. +func (s *UpdateAssetModelCompositeModelInput) SetAssetModelCompositeModelExternalId(v string) *UpdateAssetModelCompositeModelInput { + s.AssetModelCompositeModelExternalId = &v + return s +} + +// SetAssetModelCompositeModelId sets the AssetModelCompositeModelId field's value. +func (s *UpdateAssetModelCompositeModelInput) SetAssetModelCompositeModelId(v string) *UpdateAssetModelCompositeModelInput { + s.AssetModelCompositeModelId = &v + return s +} + +// SetAssetModelCompositeModelName sets the AssetModelCompositeModelName field's value. +func (s *UpdateAssetModelCompositeModelInput) SetAssetModelCompositeModelName(v string) *UpdateAssetModelCompositeModelInput { + s.AssetModelCompositeModelName = &v + return s +} + +// SetAssetModelCompositeModelProperties sets the AssetModelCompositeModelProperties field's value. +func (s *UpdateAssetModelCompositeModelInput) SetAssetModelCompositeModelProperties(v []*AssetModelProperty) *UpdateAssetModelCompositeModelInput { + s.AssetModelCompositeModelProperties = v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *UpdateAssetModelCompositeModelInput) SetAssetModelId(v string) *UpdateAssetModelCompositeModelInput { + s.AssetModelId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateAssetModelCompositeModelInput) SetClientToken(v string) *UpdateAssetModelCompositeModelInput { + s.ClientToken = &v + return s +} + +type UpdateAssetModelCompositeModelOutput struct { + _ struct{} `type:"structure"` + + // The path to the composite model listing the parent composite models. + // + // AssetModelCompositeModelPath is a required field + AssetModelCompositeModelPath []*AssetModelCompositeModelPathSegment `locationName:"assetModelCompositeModelPath" type:"list" required:"true"` + + // Contains current status information for an asset model. For more information, + // see Asset and model states (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-and-model-states.html) + // in the IoT SiteWise User Guide. + // + // AssetModelStatus is a required field + AssetModelStatus *AssetModelStatus `locationName:"assetModelStatus" 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 UpdateAssetModelCompositeModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAssetModelCompositeModelOutput) GoString() string { + return s.String() +} + +// SetAssetModelCompositeModelPath sets the AssetModelCompositeModelPath field's value. +func (s *UpdateAssetModelCompositeModelOutput) SetAssetModelCompositeModelPath(v []*AssetModelCompositeModelPathSegment) *UpdateAssetModelCompositeModelOutput { + s.AssetModelCompositeModelPath = v + return s +} + +// SetAssetModelStatus sets the AssetModelStatus field's value. +func (s *UpdateAssetModelCompositeModelOutput) SetAssetModelStatus(v *AssetModelStatus) *UpdateAssetModelCompositeModelOutput { + s.AssetModelStatus = v + return s +} + type UpdateAssetModelInput struct { _ struct{} `type:"structure"` - // The composite asset models that are part of this asset model. Composite asset - // models are asset models that contain specific properties. Each composite - // model has a type that defines the properties that the composite model supports. - // Use composite asset models to define alarms on this asset model. + // The composite models that are part of this asset model. It groups properties + // (such as attributes, measurements, transforms, and metrics) and child composite + // models that model parts of your industrial equipment. Each composite model + // has a type that defines the properties that the composite model supports. + // Use composite models to define alarms on this asset model. + // + // When creating custom composite models, you need to use CreateAssetModelCompositeModel + // (https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html). + // For more information, see . AssetModelCompositeModels []*AssetModelCompositeModel `locationName:"assetModelCompositeModels" type:"list"` // A description for the asset model. AssetModelDescription *string `locationName:"assetModelDescription" min:"1" type:"string"` + // An external ID to assign to the asset model. The asset model must not already + // have an external ID. The external ID must be unique within your Amazon Web + // Services account. For more information, see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + AssetModelExternalId *string `locationName:"assetModelExternalId" min:"2" type:"string"` + // The updated hierarchy definitions of the asset model. Each hierarchy specifies // an asset model whose assets can be children of any other assets created from // this asset model. For more information, see Asset hierarchies (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) @@ -24965,10 +29901,13 @@ // in the IoT SiteWise User Guide. AssetModelHierarchies []*AssetModelHierarchy `locationName:"assetModelHierarchies" type:"list"` - // The ID of the asset model to update. + // The ID of the asset model to update. This can be either the actual ID in + // UUID format, or else externalId: followed by the external ID, if it has one. + // For more information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetModelId is a required field - AssetModelId *string `location:"uri" locationName:"assetModelId" min:"36" type:"string" required:"true"` + AssetModelId *string `location:"uri" locationName:"assetModelId" min:"13" type:"string" required:"true"` // A unique, friendly name for the asset model. // @@ -25014,11 +29953,14 @@ if s.AssetModelDescription != nil && len(*s.AssetModelDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssetModelDescription", 1)) } + if s.AssetModelExternalId != nil && len(*s.AssetModelExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelExternalId", 2)) + } if s.AssetModelId == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelId")) } - if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + if s.AssetModelId != nil && len(*s.AssetModelId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 13)) } if s.AssetModelName == nil { invalidParams.Add(request.NewErrParamRequired("AssetModelName")) @@ -25078,6 +30020,12 @@ return s } +// SetAssetModelExternalId sets the AssetModelExternalId field's value. +func (s *UpdateAssetModelInput) SetAssetModelExternalId(v string) *UpdateAssetModelInput { + s.AssetModelExternalId = &v + return s +} + // SetAssetModelHierarchies sets the AssetModelHierarchies field's value. func (s *UpdateAssetModelInput) SetAssetModelHierarchies(v []*AssetModelHierarchy) *UpdateAssetModelInput { s.AssetModelHierarchies = v @@ -25179,10 +30127,13 @@ type UpdateAssetPropertyInput struct { _ struct{} `type:"structure"` - // The ID of the asset to be updated. + // The ID of the asset to be updated. This can be either the actual ID in UUID + // format, or else externalId: followed by the external ID, if it has one. For + // more information, see Referencing objects with external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // AssetId is a required field - AssetId *string `location:"uri" locationName:"assetId" min:"36" type:"string" required:"true"` + AssetId *string `location:"uri" locationName:"assetId" min:"13" type:"string" required:"true"` // A unique case-sensitive identifier that you can provide to ensure the idempotency // of the request. Don't reuse this client token if a new idempotent request @@ -25197,10 +30148,14 @@ // If you omit this parameter, the alias is removed from the property. PropertyAlias *string `locationName:"propertyAlias" min:"1" type:"string"` - // The ID of the asset property to be updated. + // The ID of the asset property to be updated. This can be either the actual + // ID in UUID format, or else externalId: followed by the external ID, if it + // has one. For more information, see Referencing objects with external IDs + // (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references) + // in the IoT SiteWise User Guide. // // PropertyId is a required field - PropertyId *string `location:"uri" locationName:"propertyId" min:"36" type:"string" required:"true"` + PropertyId *string `location:"uri" locationName:"propertyId" min:"13" type:"string" required:"true"` // The MQTT notification state (enabled or disabled) for this asset property. // When the notification state is enabled, IoT SiteWise publishes property value @@ -25241,8 +30196,8 @@ if s.AssetId == nil { invalidParams.Add(request.NewErrParamRequired("AssetId")) } - if s.AssetId != nil && len(*s.AssetId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + if s.AssetId != nil && len(*s.AssetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 13)) } if s.ClientToken != nil && len(*s.ClientToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36)) @@ -25253,8 +30208,8 @@ if s.PropertyId == nil { invalidParams.Add(request.NewErrParamRequired("PropertyId")) } - if s.PropertyId != nil && len(*s.PropertyId) < 36 { - invalidParams.Add(request.NewErrParamMinLen("PropertyId", 36)) + if s.PropertyId != nil && len(*s.PropertyId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("PropertyId", 13)) } if s.PropertyUnit != nil && len(*s.PropertyUnit) < 1 { invalidParams.Add(request.NewErrParamMinLen("PropertyUnit", 1)) @@ -26061,12 +31016,79 @@ return s } +// The validation failed for this query. +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 +} + // Identifies a property value used in an expression. type VariableValue struct { _ struct{} `type:"structure"` // The ID of the hierarchy to query for the property ID. You can use the hierarchy's - // name instead of the hierarchy's ID. + // name instead of the hierarchy's ID. If the hierarchy has an external ID, + // you can specify externalId: followed by the external ID. For more information, + // see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. // // You use a hierarchy ID instead of a model ID because you can have several // hierarchies using the same model and therefore the same propertyId. For example, @@ -26076,10 +31098,14 @@ HierarchyId *string `locationName:"hierarchyId" min:"1" type:"string"` // The ID of the property to use as the variable. You can use the property name - // if it's from the same asset model. - // - // PropertyId is a required field - PropertyId *string `locationName:"propertyId" min:"1" type:"string" required:"true"` + // if it's from the same asset model. If the property has an external ID, you + // can specify externalId: followed by the external ID. For more information, + // see Using external IDs (https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids) + // in the IoT SiteWise User Guide. + PropertyId *string `locationName:"propertyId" min:"1" type:"string"` + + // The path of the property. + PropertyPath []*AssetModelPropertyPathSegment `locationName:"propertyPath" type:"list"` } // String returns the string representation. @@ -26106,12 +31132,19 @@ if s.HierarchyId != nil && len(*s.HierarchyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("HierarchyId", 1)) } - if s.PropertyId == nil { - invalidParams.Add(request.NewErrParamRequired("PropertyId")) - } if s.PropertyId != nil && len(*s.PropertyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PropertyId", 1)) } + if s.PropertyPath != nil { + for i, v := range s.PropertyPath { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PropertyPath", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -26131,6 +31164,12 @@ return s } +// SetPropertyPath sets the PropertyPath field's value. +func (s *VariableValue) SetPropertyPath(v []*AssetModelPropertyPathSegment) *VariableValue { + s.PropertyPath = v + return s +} + // Contains an asset property value (of a single type only). type Variant struct { _ struct{} `type:"structure"` @@ -26141,7 +31180,8 @@ // Asset property data of type double (floating point number). DoubleValue *float64 `locationName:"doubleValue" type:"double"` - // Asset property data of type integer (whole number). + // Asset property data of type integer (number that's greater than or equal + // to zero). IntegerValue *int64 `locationName:"integerValue" type:"integer"` // Asset property data of type string (sequence of characters). @@ -26190,6 +31230,61 @@ return s } +// Set this period to specify how long your data is stored in the warm tier +// before it is deleted. You can set this only if cold tier is enabled. +type WarmTierRetentionPeriod struct { + _ struct{} `type:"structure"` + + // The number of days the data is stored in the warm tier. + NumberOfDays *int64 `locationName:"numberOfDays" min:"30" type:"integer"` + + // If set to true, the data is stored indefinitely in the warm tier. + Unlimited *bool `locationName:"unlimited" 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 WarmTierRetentionPeriod) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WarmTierRetentionPeriod) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *WarmTierRetentionPeriod) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "WarmTierRetentionPeriod"} + if s.NumberOfDays != nil && *s.NumberOfDays < 30 { + invalidParams.Add(request.NewErrParamMinValue("NumberOfDays", 30)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNumberOfDays sets the NumberOfDays field's value. +func (s *WarmTierRetentionPeriod) SetNumberOfDays(v int64) *WarmTierRetentionPeriod { + s.NumberOfDays = &v + return s +} + +// SetUnlimited sets the Unlimited field's value. +func (s *WarmTierRetentionPeriod) SetUnlimited(v bool) *WarmTierRetentionPeriod { + s.Unlimited = &v + return s +} + const ( // AggregateTypeAverage is a AggregateType enum value AggregateTypeAverage = "AVERAGE" @@ -26267,6 +31362,22 @@ } const ( + // AssetModelTypeAssetModel is a AssetModelType enum value + AssetModelTypeAssetModel = "ASSET_MODEL" + + // AssetModelTypeComponentModel is a AssetModelType enum value + AssetModelTypeComponentModel = "COMPONENT_MODEL" +) + +// AssetModelType_Values returns all elements of the AssetModelType enum +func AssetModelType_Values() []string { + return []string{ + AssetModelTypeAssetModel, + AssetModelTypeComponentModel, + } +} + +const ( // AssetRelationshipTypeHierarchy is a AssetRelationshipType enum value AssetRelationshipTypeHierarchy = "HIERARCHY" ) @@ -26951,6 +32062,34 @@ } const ( + // ScalarTypeBoolean is a ScalarType enum value + ScalarTypeBoolean = "BOOLEAN" + + // ScalarTypeInt is a ScalarType enum value + ScalarTypeInt = "INT" + + // ScalarTypeDouble is a ScalarType enum value + ScalarTypeDouble = "DOUBLE" + + // ScalarTypeTimestamp is a ScalarType enum value + ScalarTypeTimestamp = "TIMESTAMP" + + // ScalarTypeString is a ScalarType enum value + ScalarTypeString = "STRING" +) + +// ScalarType_Values returns all elements of the ScalarType enum +func ScalarType_Values() []string { + return []string{ + ScalarTypeBoolean, + ScalarTypeInt, + ScalarTypeDouble, + ScalarTypeTimestamp, + ScalarTypeString, + } +} + +const ( // StorageTypeSitewiseDefaultStorage is a StorageType enum value StorageTypeSitewiseDefaultStorage = "SITEWISE_DEFAULT_STORAGE" @@ -26967,6 +32106,18 @@ } const ( + // TargetResourceTypeAsset is a TargetResourceType enum value + TargetResourceTypeAsset = "ASSET" +) + +// TargetResourceType_Values returns all elements of the TargetResourceType enum +func TargetResourceType_Values() []string { + return []string{ + TargetResourceTypeAsset, + } +} + +const ( // TimeOrderingAscending is a TimeOrdering enum value TimeOrderingAscending = "ASCENDING" @@ -27009,3 +32160,19 @@ TraversalTypePathToRoot, } } + +const ( + // WarmTierStateEnabled is a WarmTierState enum value + WarmTierStateEnabled = "ENABLED" + + // WarmTierStateDisabled is a WarmTierState enum value + WarmTierStateDisabled = "DISABLED" +) + +// WarmTierState_Values returns all elements of the WarmTierState enum +func WarmTierState_Values() []string { + return []string{ + WarmTierStateEnabled, + WarmTierStateDisabled, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iotsitewise/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/iotsitewise/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iotsitewise/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iotsitewise/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -8,6 +8,12 @@ const ( + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // Access is denied. + ErrCodeAccessDeniedException = "AccessDeniedException" + // ErrCodeConflictingOperationException for service response error code // "ConflictingOperationException". // @@ -39,6 +45,12 @@ // in the IoT SiteWise User Guide. ErrCodeLimitExceededException = "LimitExceededException" + // ErrCodeQueryTimeoutException for service response error code + // "QueryTimeoutException". + // + // The query timed out. + ErrCodeQueryTimeoutException = "QueryTimeoutException" + // ErrCodeResourceAlreadyExistsException for service response error code // "ResourceAlreadyExistsException". // @@ -81,17 +93,26 @@ // // You are not authorized. ErrCodeUnauthorizedException = "UnauthorizedException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The validation failed for this query. + ErrCodeValidationException = "ValidationException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, "ConflictingOperationException": newErrorConflictingOperationException, "InternalFailureException": newErrorInternalFailureException, "InvalidRequestException": newErrorInvalidRequestException, "LimitExceededException": newErrorLimitExceededException, + "QueryTimeoutException": newErrorQueryTimeoutException, "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ServiceUnavailableException": newErrorServiceUnavailableException, "ThrottlingException": newErrorThrottlingException, "TooManyTagsException": newErrorTooManyTagsException, "UnauthorizedException": newErrorUnauthorizedException, + "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iotsitewise/iotsitewiseiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/iotsitewise/iotsitewiseiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iotsitewise/iotsitewiseiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iotsitewise/iotsitewiseiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -113,6 +113,10 @@ CreateAssetModelWithContext(aws.Context, *iotsitewise.CreateAssetModelInput, ...request.Option) (*iotsitewise.CreateAssetModelOutput, error) CreateAssetModelRequest(*iotsitewise.CreateAssetModelInput) (*request.Request, *iotsitewise.CreateAssetModelOutput) + CreateAssetModelCompositeModel(*iotsitewise.CreateAssetModelCompositeModelInput) (*iotsitewise.CreateAssetModelCompositeModelOutput, error) + CreateAssetModelCompositeModelWithContext(aws.Context, *iotsitewise.CreateAssetModelCompositeModelInput, ...request.Option) (*iotsitewise.CreateAssetModelCompositeModelOutput, error) + CreateAssetModelCompositeModelRequest(*iotsitewise.CreateAssetModelCompositeModelInput) (*request.Request, *iotsitewise.CreateAssetModelCompositeModelOutput) + CreateBulkImportJob(*iotsitewise.CreateBulkImportJobInput) (*iotsitewise.CreateBulkImportJobOutput, error) CreateBulkImportJobWithContext(aws.Context, *iotsitewise.CreateBulkImportJobInput, ...request.Option) (*iotsitewise.CreateBulkImportJobOutput, error) CreateBulkImportJobRequest(*iotsitewise.CreateBulkImportJobInput) (*request.Request, *iotsitewise.CreateBulkImportJobOutput) @@ -145,6 +149,10 @@ DeleteAssetModelWithContext(aws.Context, *iotsitewise.DeleteAssetModelInput, ...request.Option) (*iotsitewise.DeleteAssetModelOutput, error) DeleteAssetModelRequest(*iotsitewise.DeleteAssetModelInput) (*request.Request, *iotsitewise.DeleteAssetModelOutput) + DeleteAssetModelCompositeModel(*iotsitewise.DeleteAssetModelCompositeModelInput) (*iotsitewise.DeleteAssetModelCompositeModelOutput, error) + DeleteAssetModelCompositeModelWithContext(aws.Context, *iotsitewise.DeleteAssetModelCompositeModelInput, ...request.Option) (*iotsitewise.DeleteAssetModelCompositeModelOutput, error) + DeleteAssetModelCompositeModelRequest(*iotsitewise.DeleteAssetModelCompositeModelInput) (*request.Request, *iotsitewise.DeleteAssetModelCompositeModelOutput) + DeleteDashboard(*iotsitewise.DeleteDashboardInput) (*iotsitewise.DeleteDashboardOutput, error) DeleteDashboardWithContext(aws.Context, *iotsitewise.DeleteDashboardInput, ...request.Option) (*iotsitewise.DeleteDashboardOutput, error) DeleteDashboardRequest(*iotsitewise.DeleteDashboardInput) (*request.Request, *iotsitewise.DeleteDashboardOutput) @@ -169,14 +177,26 @@ DescribeAccessPolicyWithContext(aws.Context, *iotsitewise.DescribeAccessPolicyInput, ...request.Option) (*iotsitewise.DescribeAccessPolicyOutput, error) DescribeAccessPolicyRequest(*iotsitewise.DescribeAccessPolicyInput) (*request.Request, *iotsitewise.DescribeAccessPolicyOutput) + DescribeAction(*iotsitewise.DescribeActionInput) (*iotsitewise.DescribeActionOutput, error) + DescribeActionWithContext(aws.Context, *iotsitewise.DescribeActionInput, ...request.Option) (*iotsitewise.DescribeActionOutput, error) + DescribeActionRequest(*iotsitewise.DescribeActionInput) (*request.Request, *iotsitewise.DescribeActionOutput) + DescribeAsset(*iotsitewise.DescribeAssetInput) (*iotsitewise.DescribeAssetOutput, error) DescribeAssetWithContext(aws.Context, *iotsitewise.DescribeAssetInput, ...request.Option) (*iotsitewise.DescribeAssetOutput, error) DescribeAssetRequest(*iotsitewise.DescribeAssetInput) (*request.Request, *iotsitewise.DescribeAssetOutput) + DescribeAssetCompositeModel(*iotsitewise.DescribeAssetCompositeModelInput) (*iotsitewise.DescribeAssetCompositeModelOutput, error) + DescribeAssetCompositeModelWithContext(aws.Context, *iotsitewise.DescribeAssetCompositeModelInput, ...request.Option) (*iotsitewise.DescribeAssetCompositeModelOutput, error) + DescribeAssetCompositeModelRequest(*iotsitewise.DescribeAssetCompositeModelInput) (*request.Request, *iotsitewise.DescribeAssetCompositeModelOutput) + DescribeAssetModel(*iotsitewise.DescribeAssetModelInput) (*iotsitewise.DescribeAssetModelOutput, error) DescribeAssetModelWithContext(aws.Context, *iotsitewise.DescribeAssetModelInput, ...request.Option) (*iotsitewise.DescribeAssetModelOutput, error) DescribeAssetModelRequest(*iotsitewise.DescribeAssetModelInput) (*request.Request, *iotsitewise.DescribeAssetModelOutput) + DescribeAssetModelCompositeModel(*iotsitewise.DescribeAssetModelCompositeModelInput) (*iotsitewise.DescribeAssetModelCompositeModelOutput, error) + DescribeAssetModelCompositeModelWithContext(aws.Context, *iotsitewise.DescribeAssetModelCompositeModelInput, ...request.Option) (*iotsitewise.DescribeAssetModelCompositeModelOutput, error) + DescribeAssetModelCompositeModelRequest(*iotsitewise.DescribeAssetModelCompositeModelInput) (*request.Request, *iotsitewise.DescribeAssetModelCompositeModelOutput) + DescribeAssetProperty(*iotsitewise.DescribeAssetPropertyInput) (*iotsitewise.DescribeAssetPropertyOutput, error) DescribeAssetPropertyWithContext(aws.Context, *iotsitewise.DescribeAssetPropertyInput, ...request.Option) (*iotsitewise.DescribeAssetPropertyOutput, error) DescribeAssetPropertyRequest(*iotsitewise.DescribeAssetPropertyInput) (*request.Request, *iotsitewise.DescribeAssetPropertyOutput) @@ -229,6 +249,17 @@ DisassociateTimeSeriesFromAssetPropertyWithContext(aws.Context, *iotsitewise.DisassociateTimeSeriesFromAssetPropertyInput, ...request.Option) (*iotsitewise.DisassociateTimeSeriesFromAssetPropertyOutput, error) DisassociateTimeSeriesFromAssetPropertyRequest(*iotsitewise.DisassociateTimeSeriesFromAssetPropertyInput) (*request.Request, *iotsitewise.DisassociateTimeSeriesFromAssetPropertyOutput) + ExecuteAction(*iotsitewise.ExecuteActionInput) (*iotsitewise.ExecuteActionOutput, error) + ExecuteActionWithContext(aws.Context, *iotsitewise.ExecuteActionInput, ...request.Option) (*iotsitewise.ExecuteActionOutput, error) + ExecuteActionRequest(*iotsitewise.ExecuteActionInput) (*request.Request, *iotsitewise.ExecuteActionOutput) + + ExecuteQuery(*iotsitewise.ExecuteQueryInput) (*iotsitewise.ExecuteQueryOutput, error) + ExecuteQueryWithContext(aws.Context, *iotsitewise.ExecuteQueryInput, ...request.Option) (*iotsitewise.ExecuteQueryOutput, error) + ExecuteQueryRequest(*iotsitewise.ExecuteQueryInput) (*request.Request, *iotsitewise.ExecuteQueryOutput) + + ExecuteQueryPages(*iotsitewise.ExecuteQueryInput, func(*iotsitewise.ExecuteQueryOutput, bool) bool) error + ExecuteQueryPagesWithContext(aws.Context, *iotsitewise.ExecuteQueryInput, func(*iotsitewise.ExecuteQueryOutput, bool) bool, ...request.Option) error + GetAssetPropertyAggregates(*iotsitewise.GetAssetPropertyAggregatesInput) (*iotsitewise.GetAssetPropertyAggregatesOutput, error) GetAssetPropertyAggregatesWithContext(aws.Context, *iotsitewise.GetAssetPropertyAggregatesInput, ...request.Option) (*iotsitewise.GetAssetPropertyAggregatesOutput, error) GetAssetPropertyAggregatesRequest(*iotsitewise.GetAssetPropertyAggregatesInput) (*request.Request, *iotsitewise.GetAssetPropertyAggregatesOutput) @@ -261,6 +292,20 @@ ListAccessPoliciesPages(*iotsitewise.ListAccessPoliciesInput, func(*iotsitewise.ListAccessPoliciesOutput, bool) bool) error ListAccessPoliciesPagesWithContext(aws.Context, *iotsitewise.ListAccessPoliciesInput, func(*iotsitewise.ListAccessPoliciesOutput, bool) bool, ...request.Option) error + ListActions(*iotsitewise.ListActionsInput) (*iotsitewise.ListActionsOutput, error) + ListActionsWithContext(aws.Context, *iotsitewise.ListActionsInput, ...request.Option) (*iotsitewise.ListActionsOutput, error) + ListActionsRequest(*iotsitewise.ListActionsInput) (*request.Request, *iotsitewise.ListActionsOutput) + + ListActionsPages(*iotsitewise.ListActionsInput, func(*iotsitewise.ListActionsOutput, bool) bool) error + ListActionsPagesWithContext(aws.Context, *iotsitewise.ListActionsInput, func(*iotsitewise.ListActionsOutput, bool) bool, ...request.Option) error + + ListAssetModelCompositeModels(*iotsitewise.ListAssetModelCompositeModelsInput) (*iotsitewise.ListAssetModelCompositeModelsOutput, error) + ListAssetModelCompositeModelsWithContext(aws.Context, *iotsitewise.ListAssetModelCompositeModelsInput, ...request.Option) (*iotsitewise.ListAssetModelCompositeModelsOutput, error) + ListAssetModelCompositeModelsRequest(*iotsitewise.ListAssetModelCompositeModelsInput) (*request.Request, *iotsitewise.ListAssetModelCompositeModelsOutput) + + ListAssetModelCompositeModelsPages(*iotsitewise.ListAssetModelCompositeModelsInput, func(*iotsitewise.ListAssetModelCompositeModelsOutput, bool) bool) error + ListAssetModelCompositeModelsPagesWithContext(aws.Context, *iotsitewise.ListAssetModelCompositeModelsInput, func(*iotsitewise.ListAssetModelCompositeModelsOutput, bool) bool, ...request.Option) error + ListAssetModelProperties(*iotsitewise.ListAssetModelPropertiesInput) (*iotsitewise.ListAssetModelPropertiesOutput, error) ListAssetModelPropertiesWithContext(aws.Context, *iotsitewise.ListAssetModelPropertiesInput, ...request.Option) (*iotsitewise.ListAssetModelPropertiesOutput, error) ListAssetModelPropertiesRequest(*iotsitewise.ListAssetModelPropertiesInput) (*request.Request, *iotsitewise.ListAssetModelPropertiesOutput) @@ -310,6 +355,13 @@ ListBulkImportJobsPages(*iotsitewise.ListBulkImportJobsInput, func(*iotsitewise.ListBulkImportJobsOutput, bool) bool) error ListBulkImportJobsPagesWithContext(aws.Context, *iotsitewise.ListBulkImportJobsInput, func(*iotsitewise.ListBulkImportJobsOutput, bool) bool, ...request.Option) error + ListCompositionRelationships(*iotsitewise.ListCompositionRelationshipsInput) (*iotsitewise.ListCompositionRelationshipsOutput, error) + ListCompositionRelationshipsWithContext(aws.Context, *iotsitewise.ListCompositionRelationshipsInput, ...request.Option) (*iotsitewise.ListCompositionRelationshipsOutput, error) + ListCompositionRelationshipsRequest(*iotsitewise.ListCompositionRelationshipsInput) (*request.Request, *iotsitewise.ListCompositionRelationshipsOutput) + + ListCompositionRelationshipsPages(*iotsitewise.ListCompositionRelationshipsInput, func(*iotsitewise.ListCompositionRelationshipsOutput, bool) bool) error + ListCompositionRelationshipsPagesWithContext(aws.Context, *iotsitewise.ListCompositionRelationshipsInput, func(*iotsitewise.ListCompositionRelationshipsOutput, bool) bool, ...request.Option) error + ListDashboards(*iotsitewise.ListDashboardsInput) (*iotsitewise.ListDashboardsOutput, error) ListDashboardsWithContext(aws.Context, *iotsitewise.ListDashboardsInput, ...request.Option) (*iotsitewise.ListDashboardsOutput, error) ListDashboardsRequest(*iotsitewise.ListDashboardsInput) (*request.Request, *iotsitewise.ListDashboardsOutput) @@ -388,6 +440,10 @@ UpdateAssetModelWithContext(aws.Context, *iotsitewise.UpdateAssetModelInput, ...request.Option) (*iotsitewise.UpdateAssetModelOutput, error) UpdateAssetModelRequest(*iotsitewise.UpdateAssetModelInput) (*request.Request, *iotsitewise.UpdateAssetModelOutput) + UpdateAssetModelCompositeModel(*iotsitewise.UpdateAssetModelCompositeModelInput) (*iotsitewise.UpdateAssetModelCompositeModelOutput, error) + UpdateAssetModelCompositeModelWithContext(aws.Context, *iotsitewise.UpdateAssetModelCompositeModelInput, ...request.Option) (*iotsitewise.UpdateAssetModelCompositeModelOutput, error) + UpdateAssetModelCompositeModelRequest(*iotsitewise.UpdateAssetModelCompositeModelInput) (*request.Request, *iotsitewise.UpdateAssetModelCompositeModelOutput) + UpdateAssetProperty(*iotsitewise.UpdateAssetPropertyInput) (*iotsitewise.UpdateAssetPropertyOutput, error) UpdateAssetPropertyWithContext(aws.Context, *iotsitewise.UpdateAssetPropertyInput, ...request.Option) (*iotsitewise.UpdateAssetPropertyOutput, error) UpdateAssetPropertyRequest(*iotsitewise.UpdateAssetPropertyInput) (*request.Request, *iotsitewise.UpdateAssetPropertyOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iottwinmaker/api.go golang-github-aws-aws-sdk-go-1.48.14/service/iottwinmaker/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iottwinmaker/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iottwinmaker/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -103,6 +103,102 @@ return out, req.Send() } +const opCancelMetadataTransferJob = "CancelMetadataTransferJob" + +// CancelMetadataTransferJobRequest generates a "aws/request.Request" representing the +// client's request for the CancelMetadataTransferJob 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 CancelMetadataTransferJob for more information on using the CancelMetadataTransferJob +// 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 CancelMetadataTransferJobRequest method. +// req, resp := client.CancelMetadataTransferJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/CancelMetadataTransferJob +func (c *IoTTwinMaker) CancelMetadataTransferJobRequest(input *CancelMetadataTransferJobInput) (req *request.Request, output *CancelMetadataTransferJobOutput) { + op := &request.Operation{ + Name: opCancelMetadataTransferJob, + HTTPMethod: "PUT", + HTTPPath: "/metadata-transfer-jobs/{metadataTransferJobId}/cancel", + } + + if input == nil { + input = &CancelMetadataTransferJobInput{} + } + + output = &CancelMetadataTransferJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CancelMetadataTransferJob API operation for AWS IoT TwinMaker. +// +// Cancels the metadata transfer job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT TwinMaker's +// API operation CancelMetadataTransferJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// - ConflictException +// A conflict occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/CancelMetadataTransferJob +func (c *IoTTwinMaker) CancelMetadataTransferJob(input *CancelMetadataTransferJobInput) (*CancelMetadataTransferJobOutput, error) { + req, out := c.CancelMetadataTransferJobRequest(input) + return out, req.Send() +} + +// CancelMetadataTransferJobWithContext is the same as CancelMetadataTransferJob with the addition of +// the ability to pass a context and additional request options. +// +// See CancelMetadataTransferJob 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 *IoTTwinMaker) CancelMetadataTransferJobWithContext(ctx aws.Context, input *CancelMetadataTransferJobInput, opts ...request.Option) (*CancelMetadataTransferJobOutput, error) { + req, out := c.CancelMetadataTransferJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateComponentType = "CreateComponentType" // CreateComponentTypeRequest generates a "aws/request.Request" representing the @@ -295,6 +391,105 @@ return out, req.Send() } +const opCreateMetadataTransferJob = "CreateMetadataTransferJob" + +// CreateMetadataTransferJobRequest generates a "aws/request.Request" representing the +// client's request for the CreateMetadataTransferJob 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 CreateMetadataTransferJob for more information on using the CreateMetadataTransferJob +// 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 CreateMetadataTransferJobRequest method. +// req, resp := client.CreateMetadataTransferJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/CreateMetadataTransferJob +func (c *IoTTwinMaker) CreateMetadataTransferJobRequest(input *CreateMetadataTransferJobInput) (req *request.Request, output *CreateMetadataTransferJobOutput) { + op := &request.Operation{ + Name: opCreateMetadataTransferJob, + HTTPMethod: "POST", + HTTPPath: "/metadata-transfer-jobs", + } + + if input == nil { + input = &CreateMetadataTransferJobInput{} + } + + output = &CreateMetadataTransferJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CreateMetadataTransferJob API operation for AWS IoT TwinMaker. +// +// Creates a new metadata transfer job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT TwinMaker's +// API operation CreateMetadataTransferJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// - ConflictException +// A conflict occurred. +// +// - ServiceQuotaExceededException +// The service quota was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/CreateMetadataTransferJob +func (c *IoTTwinMaker) CreateMetadataTransferJob(input *CreateMetadataTransferJobInput) (*CreateMetadataTransferJobOutput, error) { + req, out := c.CreateMetadataTransferJobRequest(input) + return out, req.Send() +} + +// CreateMetadataTransferJobWithContext is the same as CreateMetadataTransferJob with the addition of +// the ability to pass a context and additional request options. +// +// See CreateMetadataTransferJob 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 *IoTTwinMaker) CreateMetadataTransferJobWithContext(ctx aws.Context, input *CreateMetadataTransferJobInput, opts ...request.Option) (*CreateMetadataTransferJobOutput, error) { + req, out := c.CreateMetadataTransferJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateScene = "CreateScene" // CreateSceneRequest generates a "aws/request.Request" representing the @@ -997,7 +1192,6 @@ output = &DeleteWorkspaceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1107,6 +1301,10 @@ // Run queries to access information from your knowledge graph of entities within // individual workspaces. // +// The ExecuteQuery action only works with Amazon Web Services Java SDK2 (https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/home.html). +// ExecuteQuery will not work with any Amazon Web Services Java SDK version +// < 2.x. +// // 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. @@ -1393,6 +1591,99 @@ return out, req.Send() } +const opGetMetadataTransferJob = "GetMetadataTransferJob" + +// GetMetadataTransferJobRequest generates a "aws/request.Request" representing the +// client's request for the GetMetadataTransferJob 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 GetMetadataTransferJob for more information on using the GetMetadataTransferJob +// 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 GetMetadataTransferJobRequest method. +// req, resp := client.GetMetadataTransferJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/GetMetadataTransferJob +func (c *IoTTwinMaker) GetMetadataTransferJobRequest(input *GetMetadataTransferJobInput) (req *request.Request, output *GetMetadataTransferJobOutput) { + op := &request.Operation{ + Name: opGetMetadataTransferJob, + HTTPMethod: "GET", + HTTPPath: "/metadata-transfer-jobs/{metadataTransferJobId}", + } + + if input == nil { + input = &GetMetadataTransferJobInput{} + } + + output = &GetMetadataTransferJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetMetadataTransferJob API operation for AWS IoT TwinMaker. +// +// Gets a nmetadata transfer job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT TwinMaker's +// API operation GetMetadataTransferJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/GetMetadataTransferJob +func (c *IoTTwinMaker) GetMetadataTransferJob(input *GetMetadataTransferJobInput) (*GetMetadataTransferJobOutput, error) { + req, out := c.GetMetadataTransferJobRequest(input) + return out, req.Send() +} + +// GetMetadataTransferJobWithContext is the same as GetMetadataTransferJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetMetadataTransferJob 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 *IoTTwinMaker) GetMetadataTransferJobWithContext(ctx aws.Context, input *GetMetadataTransferJobInput, opts ...request.Option) (*GetMetadataTransferJobOutput, error) { + req, out := c.GetMetadataTransferJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetPricingPlan = "GetPricingPlan" // GetPricingPlanRequest generates a "aws/request.Request" representing the @@ -2232,6 +2523,156 @@ return p.Err() } +const opListComponents = "ListComponents" + +// ListComponentsRequest generates a "aws/request.Request" representing the +// client's request for the ListComponents 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 ListComponents for more information on using the ListComponents +// 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 ListComponentsRequest method. +// req, resp := client.ListComponentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListComponents +func (c *IoTTwinMaker) ListComponentsRequest(input *ListComponentsInput) (req *request.Request, output *ListComponentsOutput) { + op := &request.Operation{ + Name: opListComponents, + HTTPMethod: "POST", + HTTPPath: "/workspaces/{workspaceId}/entities/{entityId}/components-list", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListComponentsInput{} + } + + output = &ListComponentsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListComponents API operation for AWS IoT TwinMaker. +// +// This API lists the components of an entity. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT TwinMaker's +// API operation ListComponents for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListComponents +func (c *IoTTwinMaker) ListComponents(input *ListComponentsInput) (*ListComponentsOutput, error) { + req, out := c.ListComponentsRequest(input) + return out, req.Send() +} + +// ListComponentsWithContext is the same as ListComponents with the addition of +// the ability to pass a context and additional request options. +// +// See ListComponents 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 *IoTTwinMaker) ListComponentsWithContext(ctx aws.Context, input *ListComponentsInput, opts ...request.Option) (*ListComponentsOutput, error) { + req, out := c.ListComponentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListComponentsPages iterates over the pages of a ListComponents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListComponents 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 ListComponents operation. +// pageNum := 0 +// err := client.ListComponentsPages(params, +// func(page *iottwinmaker.ListComponentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTTwinMaker) ListComponentsPages(input *ListComponentsInput, fn func(*ListComponentsOutput, bool) bool) error { + return c.ListComponentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListComponentsPagesWithContext same as ListComponentsPages 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 *IoTTwinMaker) ListComponentsPagesWithContext(ctx aws.Context, input *ListComponentsInput, fn func(*ListComponentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListComponentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListComponentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListComponentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEntities = "ListEntities" // ListEntitiesRequest generates a "aws/request.Request" representing the @@ -2379,6 +2820,303 @@ return p.Err() } +const opListMetadataTransferJobs = "ListMetadataTransferJobs" + +// ListMetadataTransferJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListMetadataTransferJobs 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 ListMetadataTransferJobs for more information on using the ListMetadataTransferJobs +// 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 ListMetadataTransferJobsRequest method. +// req, resp := client.ListMetadataTransferJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListMetadataTransferJobs +func (c *IoTTwinMaker) ListMetadataTransferJobsRequest(input *ListMetadataTransferJobsInput) (req *request.Request, output *ListMetadataTransferJobsOutput) { + op := &request.Operation{ + Name: opListMetadataTransferJobs, + HTTPMethod: "POST", + HTTPPath: "/metadata-transfer-jobs-list", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMetadataTransferJobsInput{} + } + + output = &ListMetadataTransferJobsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListMetadataTransferJobs API operation for AWS IoT TwinMaker. +// +// Lists the metadata transfer jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT TwinMaker's +// API operation ListMetadataTransferJobs for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListMetadataTransferJobs +func (c *IoTTwinMaker) ListMetadataTransferJobs(input *ListMetadataTransferJobsInput) (*ListMetadataTransferJobsOutput, error) { + req, out := c.ListMetadataTransferJobsRequest(input) + return out, req.Send() +} + +// ListMetadataTransferJobsWithContext is the same as ListMetadataTransferJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListMetadataTransferJobs 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 *IoTTwinMaker) ListMetadataTransferJobsWithContext(ctx aws.Context, input *ListMetadataTransferJobsInput, opts ...request.Option) (*ListMetadataTransferJobsOutput, error) { + req, out := c.ListMetadataTransferJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMetadataTransferJobsPages iterates over the pages of a ListMetadataTransferJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMetadataTransferJobs 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 ListMetadataTransferJobs operation. +// pageNum := 0 +// err := client.ListMetadataTransferJobsPages(params, +// func(page *iottwinmaker.ListMetadataTransferJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTTwinMaker) ListMetadataTransferJobsPages(input *ListMetadataTransferJobsInput, fn func(*ListMetadataTransferJobsOutput, bool) bool) error { + return c.ListMetadataTransferJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMetadataTransferJobsPagesWithContext same as ListMetadataTransferJobsPages 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 *IoTTwinMaker) ListMetadataTransferJobsPagesWithContext(ctx aws.Context, input *ListMetadataTransferJobsInput, fn func(*ListMetadataTransferJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMetadataTransferJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMetadataTransferJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMetadataTransferJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProperties = "ListProperties" + +// ListPropertiesRequest generates a "aws/request.Request" representing the +// client's request for the ListProperties 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 ListProperties for more information on using the ListProperties +// 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 ListPropertiesRequest method. +// req, resp := client.ListPropertiesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListProperties +func (c *IoTTwinMaker) ListPropertiesRequest(input *ListPropertiesInput) (req *request.Request, output *ListPropertiesOutput) { + op := &request.Operation{ + Name: opListProperties, + HTTPMethod: "POST", + HTTPPath: "/workspaces/{workspaceId}/properties-list", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPropertiesInput{} + } + + output = &ListPropertiesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListProperties API operation for AWS IoT TwinMaker. +// +// This API lists the properties of a component. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT TwinMaker's +// API operation ListProperties for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An unexpected error has occurred. +// +// - AccessDeniedException +// Access is denied. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The rate exceeds the limit. +// +// - ValidationException +// Failed +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iottwinmaker-2021-11-29/ListProperties +func (c *IoTTwinMaker) ListProperties(input *ListPropertiesInput) (*ListPropertiesOutput, error) { + req, out := c.ListPropertiesRequest(input) + return out, req.Send() +} + +// ListPropertiesWithContext is the same as ListProperties with the addition of +// the ability to pass a context and additional request options. +// +// See ListProperties 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 *IoTTwinMaker) ListPropertiesWithContext(ctx aws.Context, input *ListPropertiesInput, opts ...request.Option) (*ListPropertiesOutput, error) { + req, out := c.ListPropertiesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPropertiesPages iterates over the pages of a ListProperties operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProperties 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 ListProperties operation. +// pageNum := 0 +// err := client.ListPropertiesPages(params, +// func(page *iottwinmaker.ListPropertiesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTTwinMaker) ListPropertiesPages(input *ListPropertiesInput, fn func(*ListPropertiesOutput, bool) bool) error { + return c.ListPropertiesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPropertiesPagesWithContext same as ListPropertiesPages 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 *IoTTwinMaker) ListPropertiesPagesWithContext(ctx aws.Context, input *ListPropertiesInput, fn func(*ListPropertiesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPropertiesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPropertiesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPropertiesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListScenes = "ListScenes" // ListScenesRequest generates a "aws/request.Request" representing the @@ -4014,6 +4752,130 @@ return s } +type CancelMetadataTransferJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The metadata transfer job Id. + // + // MetadataTransferJobId is a required field + MetadataTransferJobId *string `location:"uri" locationName:"metadataTransferJobId" 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 CancelMetadataTransferJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelMetadataTransferJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelMetadataTransferJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelMetadataTransferJobInput"} + if s.MetadataTransferJobId == nil { + invalidParams.Add(request.NewErrParamRequired("MetadataTransferJobId")) + } + if s.MetadataTransferJobId != nil && len(*s.MetadataTransferJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MetadataTransferJobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *CancelMetadataTransferJobInput) SetMetadataTransferJobId(v string) *CancelMetadataTransferJobInput { + s.MetadataTransferJobId = &v + return s +} + +type CancelMetadataTransferJobOutput struct { + _ struct{} `type:"structure"` + + // The metadata transfer job ARN. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The metadata transfer job Id. + // + // MetadataTransferJobId is a required field + MetadataTransferJobId *string `locationName:"metadataTransferJobId" min:"1" type:"string" required:"true"` + + // The metadata transfer job's progress. + Progress *MetadataTransferJobProgress `locationName:"progress" type:"structure"` + + // The metadata transfer job's status. + // + // Status is a required field + Status *MetadataTransferJobStatus `locationName:"status" type:"structure" required:"true"` + + // Used to update the DateTime property. + // + // UpdateDateTime is a required field + UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelMetadataTransferJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CancelMetadataTransferJobOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CancelMetadataTransferJobOutput) SetArn(v string) *CancelMetadataTransferJobOutput { + s.Arn = &v + return s +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *CancelMetadataTransferJobOutput) SetMetadataTransferJobId(v string) *CancelMetadataTransferJobOutput { + s.MetadataTransferJobId = &v + return s +} + +// SetProgress sets the Progress field's value. +func (s *CancelMetadataTransferJobOutput) SetProgress(v *MetadataTransferJobProgress) *CancelMetadataTransferJobOutput { + s.Progress = v + return s +} + +// SetStatus sets the Status field's value. +func (s *CancelMetadataTransferJobOutput) SetStatus(v *MetadataTransferJobStatus) *CancelMetadataTransferJobOutput { + s.Status = v + return s +} + +// SetUpdateDateTime sets the UpdateDateTime field's value. +func (s *CancelMetadataTransferJobOutput) SetUpdateDateTime(v time.Time) *CancelMetadataTransferJobOutput { + s.UpdateDateTime = &v + return s +} + // A description of the column in the query results. type ColumnDescription struct { _ struct{} `type:"structure"` @@ -4250,12 +5112,22 @@ type ComponentResponse struct { _ struct{} `type:"structure"` + // This flag notes whether all compositeComponents are returned in the API response. + AreAllCompositeComponentsReturned *bool `locationName:"areAllCompositeComponentsReturned" type:"boolean"` + + // This flag notes whether all properties of the component are returned in the + // API response. The maximum number of properties returned is 800. + AreAllPropertiesReturned *bool `locationName:"areAllPropertiesReturned" type:"boolean"` + // The name of the component. ComponentName *string `locationName:"componentName" min:"1" type:"string"` // The ID of the component type. ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string"` + // This lists objects that contain information about the compositeComponents. + CompositeComponents map[string]*ComponentSummary `locationName:"compositeComponents" type:"map"` + // The name of the property definition set in the request. DefinedIn *string `locationName:"definedIn" min:"1" type:"string"` @@ -4294,6 +5166,18 @@ return s.String() } +// SetAreAllCompositeComponentsReturned sets the AreAllCompositeComponentsReturned field's value. +func (s *ComponentResponse) SetAreAllCompositeComponentsReturned(v bool) *ComponentResponse { + s.AreAllCompositeComponentsReturned = &v + return s +} + +// SetAreAllPropertiesReturned sets the AreAllPropertiesReturned field's value. +func (s *ComponentResponse) SetAreAllPropertiesReturned(v bool) *ComponentResponse { + s.AreAllPropertiesReturned = &v + return s +} + // SetComponentName sets the ComponentName field's value. func (s *ComponentResponse) SetComponentName(v string) *ComponentResponse { s.ComponentName = &v @@ -4306,6 +5190,12 @@ return s } +// SetCompositeComponents sets the CompositeComponents field's value. +func (s *ComponentResponse) SetCompositeComponents(v map[string]*ComponentSummary) *ComponentResponse { + s.CompositeComponents = v + return s +} + // SetDefinedIn sets the DefinedIn field's value. func (s *ComponentResponse) SetDefinedIn(v string) *ComponentResponse { s.DefinedIn = &v @@ -4342,6 +5232,108 @@ return s } +// An object that returns information about a component summary. +type ComponentSummary struct { + _ struct{} `type:"structure"` + + // The name of the component. + // + // ComponentName is a required field + ComponentName *string `locationName:"componentName" min:"1" type:"string" required:"true"` + + // This string specifies the path to the composite component, starting from + // the top-level component. + ComponentPath *string `locationName:"componentPath" min:"1" type:"string"` + + // The ID of the component type. + // + // ComponentTypeId is a required field + ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string" required:"true"` + + // The name of the property definition set in the request. + DefinedIn *string `locationName:"definedIn" min:"1" type:"string"` + + // The description of the component request. + Description *string `locationName:"description" type:"string"` + + // The property groups. + PropertyGroups map[string]*ComponentPropertyGroupResponse `locationName:"propertyGroups" type:"map"` + + // The status of the component type. + // + // Status is a required field + Status *Status `locationName:"status" type:"structure" required:"true"` + + // The syncSource of the sync job, if this entity was created by a sync job. + SyncSource *string `locationName:"syncSource" 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 ComponentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ComponentSummary) GoString() string { + return s.String() +} + +// SetComponentName sets the ComponentName field's value. +func (s *ComponentSummary) SetComponentName(v string) *ComponentSummary { + s.ComponentName = &v + return s +} + +// SetComponentPath sets the ComponentPath field's value. +func (s *ComponentSummary) SetComponentPath(v string) *ComponentSummary { + s.ComponentPath = &v + return s +} + +// SetComponentTypeId sets the ComponentTypeId field's value. +func (s *ComponentSummary) SetComponentTypeId(v string) *ComponentSummary { + s.ComponentTypeId = &v + return s +} + +// SetDefinedIn sets the DefinedIn field's value. +func (s *ComponentSummary) SetDefinedIn(v string) *ComponentSummary { + s.DefinedIn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ComponentSummary) SetDescription(v string) *ComponentSummary { + s.Description = &v + return s +} + +// SetPropertyGroups sets the PropertyGroups field's value. +func (s *ComponentSummary) SetPropertyGroups(v map[string]*ComponentPropertyGroupResponse) *ComponentSummary { + s.PropertyGroups = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ComponentSummary) SetStatus(v *Status) *ComponentSummary { + s.Status = v + return s +} + +// SetSyncSource sets the SyncSource field's value. +func (s *ComponentSummary) SetSyncSource(v string) *ComponentSummary { + s.SyncSource = &v + return s +} + // An object that contains information about a component type. type ComponentTypeSummary struct { _ struct{} `type:"structure"` @@ -4528,6 +5520,246 @@ return s } +// An object that sets information about the composite component update request. +type CompositeComponentRequest struct { + _ struct{} `type:"structure"` + + // The description of the component type. + Description *string `locationName:"description" type:"string"` + + // This is an object that maps strings to the properties to set in the component + // type. Each string in the mapping must be unique to this object. + Properties map[string]*PropertyRequest `locationName:"properties" type:"map"` + + // The property groups. + PropertyGroups map[string]*ComponentPropertyGroupRequest `locationName:"propertyGroups" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositeComponentRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositeComponentRequest) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CompositeComponentRequest) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CompositeComponentRequest"} + if s.Properties != nil { + for i, v := range s.Properties { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Properties", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CompositeComponentRequest) SetDescription(v string) *CompositeComponentRequest { + s.Description = &v + return s +} + +// SetProperties sets the Properties field's value. +func (s *CompositeComponentRequest) SetProperties(v map[string]*PropertyRequest) *CompositeComponentRequest { + s.Properties = v + return s +} + +// SetPropertyGroups sets the PropertyGroups field's value. +func (s *CompositeComponentRequest) SetPropertyGroups(v map[string]*ComponentPropertyGroupRequest) *CompositeComponentRequest { + s.PropertyGroups = v + return s +} + +// An object that sets information about the composite component types of a +// component type. +type CompositeComponentTypeRequest struct { + _ struct{} `type:"structure"` + + // This is the componentTypeId that the compositeComponentType refers to. + ComponentTypeId *string `locationName:"componentTypeId" 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 CompositeComponentTypeRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositeComponentTypeRequest) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CompositeComponentTypeRequest) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CompositeComponentTypeRequest"} + if s.ComponentTypeId != nil && len(*s.ComponentTypeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentTypeId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComponentTypeId sets the ComponentTypeId field's value. +func (s *CompositeComponentTypeRequest) SetComponentTypeId(v string) *CompositeComponentTypeRequest { + s.ComponentTypeId = &v + return s +} + +// An object that returns information about the composite component types of +// a component type. +type CompositeComponentTypeResponse struct { + _ struct{} `type:"structure"` + + // This is the componentTypeId that this compositeComponentType refers to. + ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string"` + + // This boolean indicates whether this compositeComponentType is inherited from + // its parent. + IsInherited *bool `locationName:"isInherited" 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 CompositeComponentTypeResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositeComponentTypeResponse) GoString() string { + return s.String() +} + +// SetComponentTypeId sets the ComponentTypeId field's value. +func (s *CompositeComponentTypeResponse) SetComponentTypeId(v string) *CompositeComponentTypeResponse { + s.ComponentTypeId = &v + return s +} + +// SetIsInherited sets the IsInherited field's value. +func (s *CompositeComponentTypeResponse) SetIsInherited(v bool) *CompositeComponentTypeResponse { + s.IsInherited = &v + return s +} + +// An object that sets information about the composite component update request. +type CompositeComponentUpdateRequest struct { + _ struct{} `type:"structure"` + + // The description of the component type. + Description *string `locationName:"description" type:"string"` + + // The property group updates. + PropertyGroupUpdates map[string]*ComponentPropertyGroupRequest `locationName:"propertyGroupUpdates" type:"map"` + + // An object that maps strings to the properties to set in the component type + // update. Each string in the mapping must be unique to this object. + PropertyUpdates map[string]*PropertyRequest `locationName:"propertyUpdates" type:"map"` + + // The update type of the component update request. + UpdateType *string `locationName:"updateType" type:"string" enum:"ComponentUpdateType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositeComponentUpdateRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositeComponentUpdateRequest) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CompositeComponentUpdateRequest) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CompositeComponentUpdateRequest"} + if s.PropertyUpdates != nil { + for i, v := range s.PropertyUpdates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PropertyUpdates", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CompositeComponentUpdateRequest) SetDescription(v string) *CompositeComponentUpdateRequest { + s.Description = &v + return s +} + +// SetPropertyGroupUpdates sets the PropertyGroupUpdates field's value. +func (s *CompositeComponentUpdateRequest) SetPropertyGroupUpdates(v map[string]*ComponentPropertyGroupRequest) *CompositeComponentUpdateRequest { + s.PropertyGroupUpdates = v + return s +} + +// SetPropertyUpdates sets the PropertyUpdates field's value. +func (s *CompositeComponentUpdateRequest) SetPropertyUpdates(v map[string]*PropertyRequest) *CompositeComponentUpdateRequest { + s.PropertyUpdates = v + return s +} + +// SetUpdateType sets the UpdateType field's value. +func (s *CompositeComponentUpdateRequest) SetUpdateType(v string) *CompositeComponentUpdateRequest { + s.UpdateType = &v + return s +} + // A conflict occurred. type ConflictException struct { _ struct{} `type:"structure"` @@ -4731,6 +5963,10 @@ // A friendly name for the component type. ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // This is an object that maps strings to compositeComponentTypes of the componentType. + // CompositeComponentType is referenced by componentTypeId. + CompositeComponentTypes map[string]*CompositeComponentTypeRequest `locationName:"compositeComponentTypes" type:"map"` + // The description of the component type. Description *string `locationName:"description" type:"string"` @@ -4793,6 +6029,16 @@ if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) } + if s.CompositeComponentTypes != nil { + for i, v := range s.CompositeComponentTypes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CompositeComponentTypes", i), err.(request.ErrInvalidParams)) + } + } + } if s.Functions != nil { for i, v := range s.Functions { if v == nil { @@ -4832,6 +6078,12 @@ return s } +// SetCompositeComponentTypes sets the CompositeComponentTypes field's value. +func (s *CreateComponentTypeInput) SetCompositeComponentTypes(v map[string]*CompositeComponentTypeRequest) *CreateComponentTypeInput { + s.CompositeComponentTypes = v + return s +} + // SetDescription sets the Description field's value. func (s *CreateComponentTypeInput) SetDescription(v string) *CreateComponentTypeInput { s.Description = &v @@ -4942,6 +6194,10 @@ // in the mapping must be unique to this object. Components map[string]*ComponentRequest `locationName:"components" type:"map"` + // This is an object that maps strings to compositeComponent updates in the + // request. Each key of the map represents the componentPath of the compositeComponent. + CompositeComponents map[string]*CompositeComponentRequest `locationName:"compositeComponents" type:"map"` + // The description of the entity. Description *string `locationName:"description" type:"string"` @@ -5014,6 +6270,16 @@ } } } + if s.CompositeComponents != nil { + for i, v := range s.CompositeComponents { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CompositeComponents", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -5027,6 +6293,12 @@ return s } +// SetCompositeComponents sets the CompositeComponents field's value. +func (s *CreateEntityInput) SetCompositeComponents(v map[string]*CompositeComponentRequest) *CreateEntityInput { + s.CompositeComponents = v + return s +} + // SetDescription sets the Description field's value. func (s *CreateEntityInput) SetDescription(v string) *CreateEntityInput { s.Description = &v @@ -5129,6 +6401,171 @@ return s } +type CreateMetadataTransferJobInput struct { + _ struct{} `type:"structure"` + + // The metadata transfer job description. + Description *string `locationName:"description" type:"string"` + + // The metadata transfer job destination. + // + // Destination is a required field + Destination *DestinationConfiguration `locationName:"destination" type:"structure" required:"true"` + + // The metadata transfer job Id. + MetadataTransferJobId *string `locationName:"metadataTransferJobId" min:"1" type:"string"` + + // The metadata transfer job sources. + // + // Sources is a required field + Sources []*SourceConfiguration `locationName:"sources" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMetadataTransferJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMetadataTransferJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMetadataTransferJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMetadataTransferJobInput"} + if s.Destination == nil { + invalidParams.Add(request.NewErrParamRequired("Destination")) + } + if s.MetadataTransferJobId != nil && len(*s.MetadataTransferJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MetadataTransferJobId", 1)) + } + if s.Sources == nil { + invalidParams.Add(request.NewErrParamRequired("Sources")) + } + if s.Sources != nil && len(s.Sources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sources", 1)) + } + if s.Destination != nil { + if err := s.Destination.Validate(); err != nil { + invalidParams.AddNested("Destination", err.(request.ErrInvalidParams)) + } + } + if s.Sources != nil { + for i, v := range s.Sources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateMetadataTransferJobInput) SetDescription(v string) *CreateMetadataTransferJobInput { + s.Description = &v + return s +} + +// SetDestination sets the Destination field's value. +func (s *CreateMetadataTransferJobInput) SetDestination(v *DestinationConfiguration) *CreateMetadataTransferJobInput { + s.Destination = v + return s +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *CreateMetadataTransferJobInput) SetMetadataTransferJobId(v string) *CreateMetadataTransferJobInput { + s.MetadataTransferJobId = &v + return s +} + +// SetSources sets the Sources field's value. +func (s *CreateMetadataTransferJobInput) SetSources(v []*SourceConfiguration) *CreateMetadataTransferJobInput { + s.Sources = v + return s +} + +type CreateMetadataTransferJobOutput struct { + _ struct{} `type:"structure"` + + // The metadata transfer job ARN. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The The metadata transfer job creation DateTime property. + // + // CreationDateTime is a required field + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp" required:"true"` + + // The metadata transfer job Id. + // + // MetadataTransferJobId is a required field + MetadataTransferJobId *string `locationName:"metadataTransferJobId" min:"1" type:"string" required:"true"` + + // The metadata transfer job response status. + // + // Status is a required field + Status *MetadataTransferJobStatus `locationName:"status" 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 CreateMetadataTransferJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMetadataTransferJobOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateMetadataTransferJobOutput) SetArn(v string) *CreateMetadataTransferJobOutput { + s.Arn = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *CreateMetadataTransferJobOutput) SetCreationDateTime(v time.Time) *CreateMetadataTransferJobOutput { + s.CreationDateTime = &v + return s +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *CreateMetadataTransferJobOutput) SetMetadataTransferJobId(v string) *CreateMetadataTransferJobOutput { + s.MetadataTransferJobId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateMetadataTransferJobOutput) SetStatus(v *MetadataTransferJobStatus) *CreateMetadataTransferJobOutput { + s.Status = v + return s +} + type CreateSceneInput struct { _ struct{} `type:"structure"` @@ -5446,15 +6883,11 @@ Description *string `locationName:"description" type:"string"` // The ARN of the execution role associated with the workspace. - // - // Role is a required field - Role *string `locationName:"role" min:"20" type:"string" required:"true"` + Role *string `locationName:"role" min:"20" type:"string"` // The ARN of the S3 bucket where resources associated with the workspace are // stored. - // - // S3Location is a required field - S3Location *string `locationName:"s3Location" type:"string" required:"true"` + S3Location *string `locationName:"s3Location" type:"string"` // Metadata that you can use to manage the workspace Tags map[string]*string `locationName:"tags" type:"map"` @@ -5486,15 +6919,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreateWorkspaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateWorkspaceInput"} - if s.Role == nil { - invalidParams.Add(request.NewErrParamRequired("Role")) - } if s.Role != nil && len(*s.Role) < 20 { invalidParams.Add(request.NewErrParamMinLen("Role", 20)) } - if s.S3Location == nil { - invalidParams.Add(request.NewErrParamRequired("S3Location")) - } if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } @@ -6337,6 +7764,9 @@ type DeleteWorkspaceOutput struct { _ struct{} `type:"structure"` + + // The string that specifies the delete result for the workspace. + Message *string `locationName:"message" type:"string"` } // String returns the string representation. @@ -6357,6 +7787,87 @@ return s.String() } +// SetMessage sets the Message field's value. +func (s *DeleteWorkspaceOutput) SetMessage(v string) *DeleteWorkspaceOutput { + s.Message = &v + return s +} + +// The [link to action] metadata transfer job destination configuration. +type DestinationConfiguration struct { + _ struct{} `type:"structure"` + + // The metadata transfer job Amazon Web Services IoT TwinMaker configuration. + IotTwinMakerConfiguration *IotTwinMakerDestinationConfiguration `locationName:"iotTwinMakerConfiguration" type:"structure"` + + // The metadata transfer job S3 configuration. [need to add S3 entity] + S3Configuration *S3DestinationConfiguration `locationName:"s3Configuration" type:"structure"` + + // The destination type. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"DestinationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DestinationConfiguration"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.IotTwinMakerConfiguration != nil { + if err := s.IotTwinMakerConfiguration.Validate(); err != nil { + invalidParams.AddNested("IotTwinMakerConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.S3Configuration != nil { + if err := s.S3Configuration.Validate(); err != nil { + invalidParams.AddNested("S3Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIotTwinMakerConfiguration sets the IotTwinMakerConfiguration field's value. +func (s *DestinationConfiguration) SetIotTwinMakerConfiguration(v *IotTwinMakerDestinationConfiguration) *DestinationConfiguration { + s.IotTwinMakerConfiguration = v + return s +} + +// SetS3Configuration sets the S3Configuration field's value. +func (s *DestinationConfiguration) SetS3Configuration(v *S3DestinationConfiguration) *DestinationConfiguration { + s.S3Configuration = v + return s +} + +// SetType sets the Type field's value. +func (s *DestinationConfiguration) SetType(v string) *DestinationConfiguration { + s.Type = &v + return s +} + // An object that uniquely identifies an entity property. type EntityPropertyReference struct { _ struct{} `type:"structure"` @@ -6364,6 +7875,10 @@ // The name of the component. ComponentName *string `locationName:"componentName" min:"1" type:"string"` + // This string specifies the path to the composite component, starting from + // the top-level component. + ComponentPath *string `locationName:"componentPath" min:"1" type:"string"` + // The ID of the entity. EntityId *string `locationName:"entityId" min:"1" type:"string"` @@ -6401,6 +7916,9 @@ if s.ComponentName != nil && len(*s.ComponentName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1)) } + if s.ComponentPath != nil && len(*s.ComponentPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentPath", 1)) + } if s.EntityId != nil && len(*s.EntityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("EntityId", 1)) } @@ -6423,6 +7941,12 @@ return s } +// SetComponentPath sets the ComponentPath field's value. +func (s *EntityPropertyReference) SetComponentPath(v string) *EntityPropertyReference { + s.ComponentPath = &v + return s +} + // SetEntityId sets the EntityId field's value. func (s *EntityPropertyReference) SetEntityId(v string) *EntityPropertyReference { s.EntityId = &v @@ -6468,7 +7992,8 @@ // EntityName is a required field EntityName *string `locationName:"entityName" min:"1" type:"string" required:"true"` - // A Boolean value that specifies whether the entity has child entities or not. + // An eventual Boolean value that specifies whether the entity has child entities + // or not. HasChildEntities *bool `locationName:"hasChildEntities" type:"boolean"` // The ID of the parent entity. @@ -6601,9 +8126,7 @@ type ExecuteQueryInput struct { _ struct{} `type:"structure"` - // The maximum number of results to return at one time. The default is 25. - // - // Valid Range: Minimum value of 1. Maximum value of 250. + // The maximum number of results to return at one time. The default is 50. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // The string that specifies the next page of results. @@ -6736,6 +8259,256 @@ return s } +// Filter by asset. [TwinMaker asset] +type FilterByAsset struct { + _ struct{} `type:"structure"` + + // The external-Id property of an asset. + AssetExternalId *string `locationName:"assetExternalId" min:"2" type:"string"` + + // Filter by asset Id. + AssetId *string `locationName:"assetId" min:"36" type:"string"` + + // Boolean to include the asset model. + IncludeAssetModel *bool `locationName:"includeAssetModel" type:"boolean"` + + // Includes sub-assets.[need description hekp for this] + IncludeOffspring *bool `locationName:"includeOffspring" 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 FilterByAsset) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterByAsset) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterByAsset) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterByAsset"} + if s.AssetExternalId != nil && len(*s.AssetExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetExternalId", 2)) + } + if s.AssetId != nil && len(*s.AssetId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AssetId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetExternalId sets the AssetExternalId field's value. +func (s *FilterByAsset) SetAssetExternalId(v string) *FilterByAsset { + s.AssetExternalId = &v + return s +} + +// SetAssetId sets the AssetId field's value. +func (s *FilterByAsset) SetAssetId(v string) *FilterByAsset { + s.AssetId = &v + return s +} + +// SetIncludeAssetModel sets the IncludeAssetModel field's value. +func (s *FilterByAsset) SetIncludeAssetModel(v bool) *FilterByAsset { + s.IncludeAssetModel = &v + return s +} + +// SetIncludeOffspring sets the IncludeOffspring field's value. +func (s *FilterByAsset) SetIncludeOffspring(v bool) *FilterByAsset { + s.IncludeOffspring = &v + return s +} + +// Filter by asset model. +type FilterByAssetModel struct { + _ struct{} `type:"structure"` + + // The external-Id property of an asset model. + AssetModelExternalId *string `locationName:"assetModelExternalId" min:"2" type:"string"` + + // The asset model Id. + AssetModelId *string `locationName:"assetModelId" min:"36" type:"string"` + + // Bolean to include assets. + IncludeAssets *bool `locationName:"includeAssets" type:"boolean"` + + // Include asset offspring. [need desc.] + IncludeOffspring *bool `locationName:"includeOffspring" 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 FilterByAssetModel) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterByAssetModel) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterByAssetModel) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterByAssetModel"} + if s.AssetModelExternalId != nil && len(*s.AssetModelExternalId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelExternalId", 2)) + } + if s.AssetModelId != nil && len(*s.AssetModelId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("AssetModelId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetModelExternalId sets the AssetModelExternalId field's value. +func (s *FilterByAssetModel) SetAssetModelExternalId(v string) *FilterByAssetModel { + s.AssetModelExternalId = &v + return s +} + +// SetAssetModelId sets the AssetModelId field's value. +func (s *FilterByAssetModel) SetAssetModelId(v string) *FilterByAssetModel { + s.AssetModelId = &v + return s +} + +// SetIncludeAssets sets the IncludeAssets field's value. +func (s *FilterByAssetModel) SetIncludeAssets(v bool) *FilterByAssetModel { + s.IncludeAssets = &v + return s +} + +// SetIncludeOffspring sets the IncludeOffspring field's value. +func (s *FilterByAssetModel) SetIncludeOffspring(v bool) *FilterByAssetModel { + s.IncludeOffspring = &v + return s +} + +// Filter by component type. +type FilterByComponentType struct { + _ struct{} `type:"structure"` + + // The component type Id. + // + // ComponentTypeId is a required field + ComponentTypeId *string `locationName:"componentTypeId" 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 FilterByComponentType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterByComponentType) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterByComponentType) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterByComponentType"} + if s.ComponentTypeId == nil { + invalidParams.Add(request.NewErrParamRequired("ComponentTypeId")) + } + if s.ComponentTypeId != nil && len(*s.ComponentTypeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentTypeId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComponentTypeId sets the ComponentTypeId field's value. +func (s *FilterByComponentType) SetComponentTypeId(v string) *FilterByComponentType { + s.ComponentTypeId = &v + return s +} + +// Vilter by entity. +type FilterByEntity struct { + _ struct{} `type:"structure"` + + // The entity Id. + // + // EntityId is a required field + EntityId *string `locationName:"entityId" 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 FilterByEntity) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterByEntity) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterByEntity) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterByEntity"} + if s.EntityId == nil { + invalidParams.Add(request.NewErrParamRequired("EntityId")) + } + if s.EntityId != nil && len(*s.EntityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EntityId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntityId sets the EntityId field's value. +func (s *FilterByEntity) SetEntityId(v string) *FilterByEntity { + s.EntityId = &v + return s +} + // The function request body. type FunctionRequest struct { _ struct{} `type:"structure"` @@ -6942,6 +8715,10 @@ // The component type name. ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // This is an object that maps strings to compositeComponentTypes of the componentType. + // CompositeComponentType is referenced by componentTypeId. + CompositeComponentTypes map[string]*CompositeComponentTypeResponse `locationName:"compositeComponentTypes" type:"map"` + // The date and time when the component type was created. // // CreationDateTime is a required field @@ -7030,6 +8807,12 @@ return s } +// SetCompositeComponentTypes sets the CompositeComponentTypes field's value. +func (s *GetComponentTypeOutput) SetCompositeComponentTypes(v map[string]*CompositeComponentTypeResponse) *GetComponentTypeOutput { + s.CompositeComponentTypes = v + return s +} + // SetCreationDateTime sets the CreationDateTime field's value. func (s *GetComponentTypeOutput) SetCreationDateTime(v time.Time) *GetComponentTypeOutput { s.CreationDateTime = &v @@ -7177,6 +8960,10 @@ type GetEntityOutput struct { _ struct{} `type:"structure"` + // This flag notes whether all components are returned in the API response. + // The maximum number of components returned is 30. + AreAllComponentsReturned *bool `locationName:"areAllComponentsReturned" type:"boolean"` + // The ARN of the entity. // // Arn is a required field @@ -7251,6 +9038,12 @@ return s.String() } +// SetAreAllComponentsReturned sets the AreAllComponentsReturned field's value. +func (s *GetEntityOutput) SetAreAllComponentsReturned(v bool) *GetEntityOutput { + s.AreAllComponentsReturned = &v + return s +} + // SetArn sets the Arn field's value. func (s *GetEntityOutput) SetArn(v string) *GetEntityOutput { s.Arn = &v @@ -7323,6 +9116,192 @@ return s } +type GetMetadataTransferJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The metadata transfer job Id. + // + // MetadataTransferJobId is a required field + MetadataTransferJobId *string `location:"uri" locationName:"metadataTransferJobId" 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 GetMetadataTransferJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMetadataTransferJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMetadataTransferJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMetadataTransferJobInput"} + if s.MetadataTransferJobId == nil { + invalidParams.Add(request.NewErrParamRequired("MetadataTransferJobId")) + } + if s.MetadataTransferJobId != nil && len(*s.MetadataTransferJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MetadataTransferJobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *GetMetadataTransferJobInput) SetMetadataTransferJobId(v string) *GetMetadataTransferJobInput { + s.MetadataTransferJobId = &v + return s +} + +type GetMetadataTransferJobOutput struct { + _ struct{} `type:"structure"` + + // The metadata transfer job ARN. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The metadata transfer job's creation DateTime property. + // + // CreationDateTime is a required field + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp" required:"true"` + + // The metadata transfer job description. + Description *string `locationName:"description" type:"string"` + + // The metadata transfer job's destination. + // + // Destination is a required field + Destination *DestinationConfiguration `locationName:"destination" type:"structure" required:"true"` + + // The metadata transfer job Id. + // + // MetadataTransferJobId is a required field + MetadataTransferJobId *string `locationName:"metadataTransferJobId" min:"1" type:"string" required:"true"` + + // The metadata transfer job's role. + // + // MetadataTransferJobRole is a required field + MetadataTransferJobRole *string `locationName:"metadataTransferJobRole" min:"20" type:"string" required:"true"` + + // The metadata transfer job's progress. + Progress *MetadataTransferJobProgress `locationName:"progress" type:"structure"` + + // The metadata transfer job's report URL. + ReportUrl *string `locationName:"reportUrl" min:"1" type:"string"` + + // The metadata transfer job's sources. + // + // Sources is a required field + Sources []*SourceConfiguration `locationName:"sources" min:"1" type:"list" required:"true"` + + // The metadata transfer job's status. + // + // Status is a required field + Status *MetadataTransferJobStatus `locationName:"status" type:"structure" required:"true"` + + // The metadata transfer job's update DateTime property. + // + // UpdateDateTime is a required field + UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMetadataTransferJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMetadataTransferJobOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetMetadataTransferJobOutput) SetArn(v string) *GetMetadataTransferJobOutput { + s.Arn = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *GetMetadataTransferJobOutput) SetCreationDateTime(v time.Time) *GetMetadataTransferJobOutput { + s.CreationDateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetMetadataTransferJobOutput) SetDescription(v string) *GetMetadataTransferJobOutput { + s.Description = &v + return s +} + +// SetDestination sets the Destination field's value. +func (s *GetMetadataTransferJobOutput) SetDestination(v *DestinationConfiguration) *GetMetadataTransferJobOutput { + s.Destination = v + return s +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *GetMetadataTransferJobOutput) SetMetadataTransferJobId(v string) *GetMetadataTransferJobOutput { + s.MetadataTransferJobId = &v + return s +} + +// SetMetadataTransferJobRole sets the MetadataTransferJobRole field's value. +func (s *GetMetadataTransferJobOutput) SetMetadataTransferJobRole(v string) *GetMetadataTransferJobOutput { + s.MetadataTransferJobRole = &v + return s +} + +// SetProgress sets the Progress field's value. +func (s *GetMetadataTransferJobOutput) SetProgress(v *MetadataTransferJobProgress) *GetMetadataTransferJobOutput { + s.Progress = v + return s +} + +// SetReportUrl sets the ReportUrl field's value. +func (s *GetMetadataTransferJobOutput) SetReportUrl(v string) *GetMetadataTransferJobOutput { + s.ReportUrl = &v + return s +} + +// SetSources sets the Sources field's value. +func (s *GetMetadataTransferJobOutput) SetSources(v []*SourceConfiguration) *GetMetadataTransferJobOutput { + s.Sources = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetMetadataTransferJobOutput) SetStatus(v *MetadataTransferJobStatus) *GetMetadataTransferJobOutput { + s.Status = v + return s +} + +// SetUpdateDateTime sets the UpdateDateTime field's value. +func (s *GetMetadataTransferJobOutput) SetUpdateDateTime(v time.Time) *GetMetadataTransferJobOutput { + s.UpdateDateTime = &v + return s +} + type GetPricingPlanInput struct { _ struct{} `type:"structure" nopayload:"true"` } @@ -7393,6 +9372,10 @@ // The name of the component. ComponentName *string `locationName:"componentName" min:"1" type:"string"` + // This string specifies the path to the composite component, starting from + // the top-level component. + ComponentPath *string `locationName:"componentPath" min:"1" type:"string"` + // The ID of the component type. ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string"` @@ -7474,6 +9457,9 @@ if s.ComponentName != nil && len(*s.ComponentName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1)) } + if s.ComponentPath != nil && len(*s.ComponentPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentPath", 1)) + } if s.ComponentTypeId != nil && len(*s.ComponentTypeId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComponentTypeId", 1)) } @@ -7524,6 +9510,12 @@ return s } +// SetComponentPath sets the ComponentPath field's value. +func (s *GetPropertyValueHistoryInput) SetComponentPath(v string) *GetPropertyValueHistoryInput { + s.ComponentPath = &v + return s +} + // SetComponentTypeId sets the ComponentTypeId field's value. func (s *GetPropertyValueHistoryInput) SetComponentTypeId(v string) *GetPropertyValueHistoryInput { s.ComponentTypeId = &v @@ -7651,6 +9643,10 @@ // The name of the component whose property values the operation returns. ComponentName *string `locationName:"componentName" min:"1" type:"string"` + // This string specifies the path to the composite component, starting from + // the top-level component. + ComponentPath *string `locationName:"componentPath" min:"1" type:"string"` + // The ID of the component type whose property values the operation returns. ComponentTypeId *string `locationName:"componentTypeId" min:"1" type:"string"` @@ -7706,6 +9702,9 @@ if s.ComponentName != nil && len(*s.ComponentName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1)) } + if s.ComponentPath != nil && len(*s.ComponentPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentPath", 1)) + } if s.ComponentTypeId != nil && len(*s.ComponentTypeId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComponentTypeId", 1)) } @@ -7745,6 +9744,12 @@ return s } +// SetComponentPath sets the ComponentPath field's value. +func (s *GetPropertyValueInput) SetComponentPath(v string) *GetPropertyValueInput { + s.ComponentPath = &v + return s +} + // SetComponentTypeId sets the ComponentTypeId field's value. func (s *GetPropertyValueInput) SetComponentTypeId(v string) *GetPropertyValueInput { s.ComponentTypeId = &v @@ -8271,16 +10276,15 @@ // The description of the workspace. Description *string `locationName:"description" type:"string"` + // A list of services that are linked to the workspace. + LinkedServices []*string `locationName:"linkedServices" type:"list"` + // The ARN of the execution role associated with the workspace. - // - // Role is a required field - Role *string `locationName:"role" min:"20" type:"string" required:"true"` + Role *string `locationName:"role" min:"20" type:"string"` // The ARN of the S3 bucket where resources associated with the workspace are // stored. - // - // S3Location is a required field - S3Location *string `locationName:"s3Location" type:"string" required:"true"` + S3Location *string `locationName:"s3Location" type:"string"` // The date and time when the workspace was last updated. // @@ -8329,6 +10333,12 @@ return s } +// SetLinkedServices sets the LinkedServices field's value. +func (s *GetWorkspaceOutput) SetLinkedServices(v []*string) *GetWorkspaceOutput { + s.LinkedServices = v + return s +} + // SetRole sets the Role field's value. func (s *GetWorkspaceOutput) SetRole(v string) *GetWorkspaceOutput { s.Role = &v @@ -8458,6 +10468,299 @@ return s } +// The metadata transfer job AWS IoT SiteWise source configuration. +type IotSiteWiseSourceConfiguration struct { + _ struct{} `type:"structure"` + + // The AWS IoT SiteWise soucre configuration filters. + Filters []*IotSiteWiseSourceConfigurationFilter `locationName:"filters" 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 IotSiteWiseSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotSiteWiseSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IotSiteWiseSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IotSiteWiseSourceConfiguration"} + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *IotSiteWiseSourceConfiguration) SetFilters(v []*IotSiteWiseSourceConfigurationFilter) *IotSiteWiseSourceConfiguration { + s.Filters = v + return s +} + +// The AWS IoT SiteWise soucre configuration filter.[need held with desc here] +type IotSiteWiseSourceConfigurationFilter struct { + _ struct{} `type:"structure"` + + // Filter by asset. + FilterByAsset *FilterByAsset `locationName:"filterByAsset" type:"structure"` + + // Filter by asset model. + FilterByAssetModel *FilterByAssetModel `locationName:"filterByAssetModel" 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 IotSiteWiseSourceConfigurationFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotSiteWiseSourceConfigurationFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IotSiteWiseSourceConfigurationFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IotSiteWiseSourceConfigurationFilter"} + if s.FilterByAsset != nil { + if err := s.FilterByAsset.Validate(); err != nil { + invalidParams.AddNested("FilterByAsset", err.(request.ErrInvalidParams)) + } + } + if s.FilterByAssetModel != nil { + if err := s.FilterByAssetModel.Validate(); err != nil { + invalidParams.AddNested("FilterByAssetModel", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilterByAsset sets the FilterByAsset field's value. +func (s *IotSiteWiseSourceConfigurationFilter) SetFilterByAsset(v *FilterByAsset) *IotSiteWiseSourceConfigurationFilter { + s.FilterByAsset = v + return s +} + +// SetFilterByAssetModel sets the FilterByAssetModel field's value. +func (s *IotSiteWiseSourceConfigurationFilter) SetFilterByAssetModel(v *FilterByAssetModel) *IotSiteWiseSourceConfigurationFilter { + s.FilterByAssetModel = v + return s +} + +// The metadata transfer job AWS IoT TwinMaker destination configuration. +type IotTwinMakerDestinationConfiguration struct { + _ struct{} `type:"structure"` + + // The IoT TwinMaker workspace. + // + // Workspace is a required field + Workspace *string `locationName:"workspace" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotTwinMakerDestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotTwinMakerDestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IotTwinMakerDestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IotTwinMakerDestinationConfiguration"} + if s.Workspace == nil { + invalidParams.Add(request.NewErrParamRequired("Workspace")) + } + if s.Workspace != nil && len(*s.Workspace) < 20 { + invalidParams.Add(request.NewErrParamMinLen("Workspace", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkspace sets the Workspace field's value. +func (s *IotTwinMakerDestinationConfiguration) SetWorkspace(v string) *IotTwinMakerDestinationConfiguration { + s.Workspace = &v + return s +} + +// The metadata transfer job AWS IoT TwinMaker source configuration. +type IotTwinMakerSourceConfiguration struct { + _ struct{} `type:"structure"` + + // The metadata transfer job AWS IoT TwinMaker source configuration filters. + Filters []*IotTwinMakerSourceConfigurationFilter `locationName:"filters" type:"list"` + + // The IoT TwinMaker workspace. + // + // Workspace is a required field + Workspace *string `locationName:"workspace" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotTwinMakerSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotTwinMakerSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IotTwinMakerSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IotTwinMakerSourceConfiguration"} + if s.Workspace == nil { + invalidParams.Add(request.NewErrParamRequired("Workspace")) + } + if s.Workspace != nil && len(*s.Workspace) < 20 { + invalidParams.Add(request.NewErrParamMinLen("Workspace", 20)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *IotTwinMakerSourceConfiguration) SetFilters(v []*IotTwinMakerSourceConfigurationFilter) *IotTwinMakerSourceConfiguration { + s.Filters = v + return s +} + +// SetWorkspace sets the Workspace field's value. +func (s *IotTwinMakerSourceConfiguration) SetWorkspace(v string) *IotTwinMakerSourceConfiguration { + s.Workspace = &v + return s +} + +// The metadata transfer job AWS IoT TwinMaker source configuration filter. +type IotTwinMakerSourceConfigurationFilter struct { + _ struct{} `type:"structure"` + + // Filter by component type. + FilterByComponentType *FilterByComponentType `locationName:"filterByComponentType" type:"structure"` + + // Filter by entity. + FilterByEntity *FilterByEntity `locationName:"filterByEntity" 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 IotTwinMakerSourceConfigurationFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IotTwinMakerSourceConfigurationFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IotTwinMakerSourceConfigurationFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IotTwinMakerSourceConfigurationFilter"} + if s.FilterByComponentType != nil { + if err := s.FilterByComponentType.Validate(); err != nil { + invalidParams.AddNested("FilterByComponentType", err.(request.ErrInvalidParams)) + } + } + if s.FilterByEntity != nil { + if err := s.FilterByEntity.Validate(); err != nil { + invalidParams.AddNested("FilterByEntity", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilterByComponentType sets the FilterByComponentType field's value. +func (s *IotTwinMakerSourceConfigurationFilter) SetFilterByComponentType(v *FilterByComponentType) *IotTwinMakerSourceConfigurationFilter { + s.FilterByComponentType = v + return s +} + +// SetFilterByEntity sets the FilterByEntity field's value. +func (s *IotTwinMakerSourceConfigurationFilter) SetFilterByEntity(v *FilterByEntity) *IotTwinMakerSourceConfigurationFilter { + s.FilterByEntity = v + return s +} + // The Lambda function. type LambdaFunction struct { _ struct{} `type:"structure"` @@ -8727,6 +11030,146 @@ return s } +type ListComponentsInput struct { + _ struct{} `type:"structure"` + + // This string specifies the path to the composite component, starting from + // the top-level component. + ComponentPath *string `locationName:"componentPath" min:"1" type:"string"` + + // The ID for the entity whose metadata (component/properties) is returned by + // the operation. + // + // EntityId is a required field + EntityId *string `location:"uri" locationName:"entityId" min:"1" type:"string" required:"true"` + + // The maximum number of results returned at one time. The default is 25. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The workspace ID. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 ListComponentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListComponentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListComponentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListComponentsInput"} + if s.ComponentPath != nil && len(*s.ComponentPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentPath", 1)) + } + if s.EntityId == nil { + invalidParams.Add(request.NewErrParamRequired("EntityId")) + } + if s.EntityId != nil && len(*s.EntityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EntityId", 1)) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComponentPath sets the ComponentPath field's value. +func (s *ListComponentsInput) SetComponentPath(v string) *ListComponentsInput { + s.ComponentPath = &v + return s +} + +// SetEntityId sets the EntityId field's value. +func (s *ListComponentsInput) SetEntityId(v string) *ListComponentsInput { + s.EntityId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListComponentsInput) SetMaxResults(v int64) *ListComponentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListComponentsInput) SetNextToken(v string) *ListComponentsInput { + s.NextToken = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *ListComponentsInput) SetWorkspaceId(v string) *ListComponentsInput { + s.WorkspaceId = &v + return s +} + +type ListComponentsOutput struct { + _ struct{} `type:"structure"` + + // A list of objects that contain information about the components. + // + // ComponentSummaries is a required field + ComponentSummaries []*ComponentSummary `locationName:"componentSummaries" type:"list" required:"true"` + + // The string that specifies the next page of component results. + 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 ListComponentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListComponentsOutput) GoString() string { + return s.String() +} + +// SetComponentSummaries sets the ComponentSummaries field's value. +func (s *ListComponentsOutput) SetComponentSummaries(v []*ComponentSummary) *ListComponentsOutput { + s.ComponentSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListComponentsOutput) SetNextToken(v string) *ListComponentsOutput { + s.NextToken = &v + return s +} + // An object that filters items in a list of entities. type ListEntitiesFilter struct { _ struct{} `type:"structure"` @@ -8927,6 +11370,351 @@ return s } +// The ListMetadataTransferJobs filter. +type ListMetadataTransferJobsFilter struct { + _ struct{} `type:"structure"` + + // The filter state. + State *string `locationName:"state" type:"string" enum:"MetadataTransferJobState"` + + // The workspace Id. + WorkspaceId *string `locationName:"workspaceId" 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 ListMetadataTransferJobsFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMetadataTransferJobsFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMetadataTransferJobsFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMetadataTransferJobsFilter"} + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetState sets the State field's value. +func (s *ListMetadataTransferJobsFilter) SetState(v string) *ListMetadataTransferJobsFilter { + s.State = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *ListMetadataTransferJobsFilter) SetWorkspaceId(v string) *ListMetadataTransferJobsFilter { + s.WorkspaceId = &v + return s +} + +type ListMetadataTransferJobsInput struct { + _ struct{} `type:"structure"` + + // The metadata transfer job's destination type. + // + // DestinationType is a required field + DestinationType *string `locationName:"destinationType" type:"string" required:"true" enum:"DestinationType"` + + // An object that filters metadata transfer jobs. + Filters []*ListMetadataTransferJobsFilter `locationName:"filters" type:"list"` + + // The maximum number of results to return at one time. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The metadata transfer job's source type. + // + // SourceType is a required field + SourceType *string `locationName:"sourceType" type:"string" required:"true" enum:"SourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMetadataTransferJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMetadataTransferJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMetadataTransferJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMetadataTransferJobsInput"} + if s.DestinationType == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationType")) + } + if s.SourceType == nil { + invalidParams.Add(request.NewErrParamRequired("SourceType")) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationType sets the DestinationType field's value. +func (s *ListMetadataTransferJobsInput) SetDestinationType(v string) *ListMetadataTransferJobsInput { + s.DestinationType = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListMetadataTransferJobsInput) SetFilters(v []*ListMetadataTransferJobsFilter) *ListMetadataTransferJobsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMetadataTransferJobsInput) SetMaxResults(v int64) *ListMetadataTransferJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMetadataTransferJobsInput) SetNextToken(v string) *ListMetadataTransferJobsInput { + s.NextToken = &v + return s +} + +// SetSourceType sets the SourceType field's value. +func (s *ListMetadataTransferJobsInput) SetSourceType(v string) *ListMetadataTransferJobsInput { + s.SourceType = &v + return s +} + +type ListMetadataTransferJobsOutput struct { + _ struct{} `type:"structure"` + + // The metadata transfer job summaries. + // + // MetadataTransferJobSummaries is a required field + MetadataTransferJobSummaries []*MetadataTransferJobSummary `locationName:"metadataTransferJobSummaries" type:"list" required:"true"` + + // The string that specifies the next page of results. + 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 ListMetadataTransferJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMetadataTransferJobsOutput) GoString() string { + return s.String() +} + +// SetMetadataTransferJobSummaries sets the MetadataTransferJobSummaries field's value. +func (s *ListMetadataTransferJobsOutput) SetMetadataTransferJobSummaries(v []*MetadataTransferJobSummary) *ListMetadataTransferJobsOutput { + s.MetadataTransferJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMetadataTransferJobsOutput) SetNextToken(v string) *ListMetadataTransferJobsOutput { + s.NextToken = &v + return s +} + +type ListPropertiesInput struct { + _ struct{} `type:"structure"` + + // The name of the component whose properties are returned by the operation. + ComponentName *string `locationName:"componentName" min:"1" type:"string"` + + // This string specifies the path to the composite component, starting from + // the top-level component. + ComponentPath *string `locationName:"componentPath" min:"1" type:"string"` + + // The ID for the entity whose metadata (component/properties) is returned by + // the operation. + // + // EntityId is a required field + EntityId *string `locationName:"entityId" min:"1" type:"string" required:"true"` + + // The maximum number of results returned at one time. The default is 25. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The string that specifies the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The workspace ID. + // + // WorkspaceId is a required field + WorkspaceId *string `location:"uri" locationName:"workspaceId" 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 ListPropertiesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPropertiesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPropertiesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPropertiesInput"} + if s.ComponentName != nil && len(*s.ComponentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1)) + } + if s.ComponentPath != nil && len(*s.ComponentPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComponentPath", 1)) + } + if s.EntityId == nil { + invalidParams.Add(request.NewErrParamRequired("EntityId")) + } + if s.EntityId != nil && len(*s.EntityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EntityId", 1)) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComponentName sets the ComponentName field's value. +func (s *ListPropertiesInput) SetComponentName(v string) *ListPropertiesInput { + s.ComponentName = &v + return s +} + +// SetComponentPath sets the ComponentPath field's value. +func (s *ListPropertiesInput) SetComponentPath(v string) *ListPropertiesInput { + s.ComponentPath = &v + return s +} + +// SetEntityId sets the EntityId field's value. +func (s *ListPropertiesInput) SetEntityId(v string) *ListPropertiesInput { + s.EntityId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPropertiesInput) SetMaxResults(v int64) *ListPropertiesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPropertiesInput) SetNextToken(v string) *ListPropertiesInput { + s.NextToken = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *ListPropertiesInput) SetWorkspaceId(v string) *ListPropertiesInput { + s.WorkspaceId = &v + return s +} + +type ListPropertiesOutput struct { + _ struct{} `type:"structure"` + + // The string that specifies the next page of property results. + NextToken *string `locationName:"nextToken" type:"string"` + + // A list of objects that contain information about the properties. + // + // PropertySummaries is a required field + PropertySummaries []*PropertySummary `locationName:"propertySummaries" 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 ListPropertiesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPropertiesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPropertiesOutput) SetNextToken(v string) *ListPropertiesOutput { + s.NextToken = &v + return s +} + +// SetPropertySummaries sets the PropertySummaries field's value. +func (s *ListPropertiesOutput) SetPropertySummaries(v []*PropertySummary) *ListPropertiesOutput { + s.PropertySummaries = v + return s +} + type ListScenesInput struct { _ struct{} `type:"structure"` @@ -9489,6 +12277,202 @@ return s } +// The metadata transfer job's progress. +type MetadataTransferJobProgress struct { + _ struct{} `type:"structure"` + + // The failed count. + FailedCount *int64 `locationName:"failedCount" type:"integer"` + + // The skipped count. + SkippedCount *int64 `locationName:"skippedCount" type:"integer"` + + // The succeeded count. + SucceededCount *int64 `locationName:"succeededCount" type:"integer"` + + // The total count. [of what] + TotalCount *int64 `locationName:"totalCount" 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 MetadataTransferJobProgress) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataTransferJobProgress) GoString() string { + return s.String() +} + +// SetFailedCount sets the FailedCount field's value. +func (s *MetadataTransferJobProgress) SetFailedCount(v int64) *MetadataTransferJobProgress { + s.FailedCount = &v + return s +} + +// SetSkippedCount sets the SkippedCount field's value. +func (s *MetadataTransferJobProgress) SetSkippedCount(v int64) *MetadataTransferJobProgress { + s.SkippedCount = &v + return s +} + +// SetSucceededCount sets the SucceededCount field's value. +func (s *MetadataTransferJobProgress) SetSucceededCount(v int64) *MetadataTransferJobProgress { + s.SucceededCount = &v + return s +} + +// SetTotalCount sets the TotalCount field's value. +func (s *MetadataTransferJobProgress) SetTotalCount(v int64) *MetadataTransferJobProgress { + s.TotalCount = &v + return s +} + +// The metadata transfer job status. +type MetadataTransferJobStatus struct { + _ struct{} `type:"structure"` + + // The metadata transfer job error. + Error *ErrorDetails `locationName:"error" type:"structure"` + + // The queued position. + QueuedPosition *int64 `locationName:"queuedPosition" type:"integer"` + + // The metadata transfer job state. + State *string `locationName:"state" type:"string" enum:"MetadataTransferJobState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataTransferJobStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataTransferJobStatus) GoString() string { + return s.String() +} + +// SetError sets the Error field's value. +func (s *MetadataTransferJobStatus) SetError(v *ErrorDetails) *MetadataTransferJobStatus { + s.Error = v + return s +} + +// SetQueuedPosition sets the QueuedPosition field's value. +func (s *MetadataTransferJobStatus) SetQueuedPosition(v int64) *MetadataTransferJobStatus { + s.QueuedPosition = &v + return s +} + +// SetState sets the State field's value. +func (s *MetadataTransferJobStatus) SetState(v string) *MetadataTransferJobStatus { + s.State = &v + return s +} + +// The metadata transfer job summary. +type MetadataTransferJobSummary struct { + _ struct{} `type:"structure"` + + // The metadata transfer job summary ARN. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The metadata transfer job summary creation DateTime object. + // + // CreationDateTime is a required field + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp" required:"true"` + + // The metadata transfer job summary Id. + // + // MetadataTransferJobId is a required field + MetadataTransferJobId *string `locationName:"metadataTransferJobId" min:"1" type:"string" required:"true"` + + // The metadata transfer job summary progess. + Progress *MetadataTransferJobProgress `locationName:"progress" type:"structure"` + + // The metadata transfer job summary status. + // + // Status is a required field + Status *MetadataTransferJobStatus `locationName:"status" type:"structure" required:"true"` + + // The metadata transfer job summary update DateTime object + // + // UpdateDateTime is a required field + UpdateDateTime *time.Time `locationName:"updateDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataTransferJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataTransferJobSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *MetadataTransferJobSummary) SetArn(v string) *MetadataTransferJobSummary { + s.Arn = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *MetadataTransferJobSummary) SetCreationDateTime(v time.Time) *MetadataTransferJobSummary { + s.CreationDateTime = &v + return s +} + +// SetMetadataTransferJobId sets the MetadataTransferJobId field's value. +func (s *MetadataTransferJobSummary) SetMetadataTransferJobId(v string) *MetadataTransferJobSummary { + s.MetadataTransferJobId = &v + return s +} + +// SetProgress sets the Progress field's value. +func (s *MetadataTransferJobSummary) SetProgress(v *MetadataTransferJobProgress) *MetadataTransferJobSummary { + s.Progress = v + return s +} + +// SetStatus sets the Status field's value. +func (s *MetadataTransferJobSummary) SetStatus(v *MetadataTransferJobStatus) *MetadataTransferJobSummary { + s.Status = v + return s +} + +// SetUpdateDateTime sets the UpdateDateTime field's value. +func (s *MetadataTransferJobSummary) SetUpdateDateTime(v time.Time) *MetadataTransferJobSummary { + s.UpdateDateTime = &v + return s +} + // Filter criteria that orders the return output. It can be sorted in ascending // or descending order. type OrderBy struct { @@ -10239,6 +13223,11 @@ type PropertyResponse struct { _ struct{} `type:"structure"` + // This flag notes whether all values of a list or map type property are returned + // in the API response. The maximum number of values per property returned is + // 50. + AreAllPropertyValuesReturned *bool `locationName:"areAllPropertyValuesReturned" type:"boolean"` + // An object that specifies information about a property. Definition *PropertyDefinitionResponse `locationName:"definition" type:"structure"` @@ -10264,6 +13253,12 @@ return s.String() } +// SetAreAllPropertyValuesReturned sets the AreAllPropertyValuesReturned field's value. +func (s *PropertyResponse) SetAreAllPropertyValuesReturned(v bool) *PropertyResponse { + s.AreAllPropertyValuesReturned = &v + return s +} + // SetDefinition sets the Definition field's value. func (s *PropertyResponse) SetDefinition(v *PropertyDefinitionResponse) *PropertyResponse { s.Definition = v @@ -10276,6 +13271,69 @@ return s } +// This is an object that contains the information of a property. +type PropertySummary struct { + _ struct{} `type:"structure"` + + // This flag notes whether all values of a list or map type property are returned + // in the API response. The maximum number of values per property returned is + // 50. + AreAllPropertyValuesReturned *bool `locationName:"areAllPropertyValuesReturned" type:"boolean"` + + // This is the schema for the property. + Definition *PropertyDefinitionResponse `locationName:"definition" type:"structure"` + + // This is the name of the property. + // + // PropertyName is a required field + PropertyName *string `locationName:"propertyName" min:"1" type:"string" required:"true"` + + // This is the value for the property. + Value *DataValue `locationName:"value" 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 PropertySummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PropertySummary) GoString() string { + return s.String() +} + +// SetAreAllPropertyValuesReturned sets the AreAllPropertyValuesReturned field's value. +func (s *PropertySummary) SetAreAllPropertyValuesReturned(v bool) *PropertySummary { + s.AreAllPropertyValuesReturned = &v + return s +} + +// SetDefinition sets the Definition field's value. +func (s *PropertySummary) SetDefinition(v *PropertyDefinitionResponse) *PropertySummary { + s.Definition = v + return s +} + +// SetPropertyName sets the PropertyName field's value. +func (s *PropertySummary) SetPropertyName(v string) *PropertySummary { + s.PropertyName = &v + return s +} + +// SetValue sets the Value field's value. +func (s *PropertySummary) SetValue(v *DataValue) *PropertySummary { + s.Value = v + return s +} + // An object that contains information about a value for a time series property. type PropertyValue struct { _ struct{} `type:"structure"` @@ -10759,6 +13817,100 @@ return s.String() } +// The S3 destination configuration. +type S3DestinationConfiguration struct { + _ struct{} `type:"structure"` + + // The S3 destination configuration location. + // + // Location is a required field + Location *string `locationName:"location" 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 S3DestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3DestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3DestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3DestinationConfiguration"} + if s.Location == nil { + invalidParams.Add(request.NewErrParamRequired("Location")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLocation sets the Location field's value. +func (s *S3DestinationConfiguration) SetLocation(v string) *S3DestinationConfiguration { + s.Location = &v + return s +} + +// The S3 destination source configuration. +type S3SourceConfiguration struct { + _ struct{} `type:"structure"` + + // The S3 destination source configuration location. + // + // Location is a required field + Location *string `locationName:"location" 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 S3SourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3SourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3SourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3SourceConfiguration"} + if s.Location == nil { + invalidParams.Add(request.NewErrParamRequired("Location")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLocation sets the Location field's value. +func (s *S3SourceConfiguration) SetLocation(v string) *S3SourceConfiguration { + s.Location = &v + return s +} + // The scene error. type SceneError struct { _ struct{} `type:"structure"` @@ -10951,6 +14103,95 @@ return s.RespMetadata.RequestID } +// The source configuration. +type SourceConfiguration struct { + _ struct{} `type:"structure"` + + // The source configuration IoT SiteWise configuration. + IotSiteWiseConfiguration *IotSiteWiseSourceConfiguration `locationName:"iotSiteWiseConfiguration" type:"structure"` + + // The source configuration IoT TwinMaker configuration. + IotTwinMakerConfiguration *IotTwinMakerSourceConfiguration `locationName:"iotTwinMakerConfiguration" type:"structure"` + + // The source configuration S3 configuration. + S3Configuration *S3SourceConfiguration `locationName:"s3Configuration" type:"structure"` + + // The source configuration type. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"SourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SourceConfiguration"} + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.IotSiteWiseConfiguration != nil { + if err := s.IotSiteWiseConfiguration.Validate(); err != nil { + invalidParams.AddNested("IotSiteWiseConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.IotTwinMakerConfiguration != nil { + if err := s.IotTwinMakerConfiguration.Validate(); err != nil { + invalidParams.AddNested("IotTwinMakerConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.S3Configuration != nil { + if err := s.S3Configuration.Validate(); err != nil { + invalidParams.AddNested("S3Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIotSiteWiseConfiguration sets the IotSiteWiseConfiguration field's value. +func (s *SourceConfiguration) SetIotSiteWiseConfiguration(v *IotSiteWiseSourceConfiguration) *SourceConfiguration { + s.IotSiteWiseConfiguration = v + return s +} + +// SetIotTwinMakerConfiguration sets the IotTwinMakerConfiguration field's value. +func (s *SourceConfiguration) SetIotTwinMakerConfiguration(v *IotTwinMakerSourceConfiguration) *SourceConfiguration { + s.IotTwinMakerConfiguration = v + return s +} + +// SetS3Configuration sets the S3Configuration field's value. +func (s *SourceConfiguration) SetS3Configuration(v *S3SourceConfiguration) *SourceConfiguration { + s.S3Configuration = v + return s +} + +// SetType sets the Type field's value. +func (s *SourceConfiguration) SetType(v string) *SourceConfiguration { + s.Type = &v + return s +} + // An object that represents the status of an entity, component, component type, // or workspace. type Status struct { @@ -11686,6 +14927,10 @@ // The component type name. ComponentTypeName *string `locationName:"componentTypeName" type:"string"` + // This is an object that maps strings to compositeComponentTypes of the componentType. + // CompositeComponentType is referenced by componentTypeId. + CompositeComponentTypes map[string]*CompositeComponentTypeRequest `locationName:"compositeComponentTypes" type:"map"` + // The description of the component type. Description *string `locationName:"description" type:"string"` @@ -11746,6 +14991,16 @@ if s.WorkspaceId != nil && len(*s.WorkspaceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceId", 1)) } + if s.CompositeComponentTypes != nil { + for i, v := range s.CompositeComponentTypes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CompositeComponentTypes", i), err.(request.ErrInvalidParams)) + } + } + } if s.Functions != nil { for i, v := range s.Functions { if v == nil { @@ -11785,6 +15040,12 @@ return s } +// SetCompositeComponentTypes sets the CompositeComponentTypes field's value. +func (s *UpdateComponentTypeInput) SetCompositeComponentTypes(v map[string]*CompositeComponentTypeRequest) *UpdateComponentTypeInput { + s.CompositeComponentTypes = v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateComponentTypeInput) SetDescription(v string) *UpdateComponentTypeInput { s.Description = &v @@ -11900,6 +15161,10 @@ // string in the mapping must be unique to this object. ComponentUpdates map[string]*ComponentUpdateRequest `locationName:"componentUpdates" type:"map"` + // This is an object that maps strings to compositeComponent updates in the + // request. Each key of the map represents the componentPath of the compositeComponent. + CompositeComponentUpdates map[string]*CompositeComponentUpdateRequest `locationName:"compositeComponentUpdates" type:"map"` + // The description of the entity. Description *string `locationName:"description" type:"string"` @@ -11966,6 +15231,16 @@ } } } + if s.CompositeComponentUpdates != nil { + for i, v := range s.CompositeComponentUpdates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CompositeComponentUpdates", i), err.(request.ErrInvalidParams)) + } + } + } if s.ParentEntityUpdate != nil { if err := s.ParentEntityUpdate.Validate(); err != nil { invalidParams.AddNested("ParentEntityUpdate", err.(request.ErrInvalidParams)) @@ -11984,6 +15259,12 @@ return s } +// SetCompositeComponentUpdates sets the CompositeComponentUpdates field's value. +func (s *UpdateEntityInput) SetCompositeComponentUpdates(v map[string]*CompositeComponentUpdateRequest) *UpdateEntityInput { + s.CompositeComponentUpdates = v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateEntityInput) SetDescription(v string) *UpdateEntityInput { s.Description = &v @@ -12302,6 +15583,10 @@ // The ARN of the execution role associated with the workspace. Role *string `locationName:"role" min:"20" type:"string"` + // The ARN of the S3 bucket where resources associated with the workspace are + // stored. + S3Location *string `locationName:"s3Location" type:"string"` + // The ID of the workspace. // // WorkspaceId is a required field @@ -12357,6 +15642,12 @@ return s } +// SetS3Location sets the S3Location field's value. +func (s *UpdateWorkspaceInput) SetS3Location(v string) *UpdateWorkspaceInput { + s.S3Location = &v + return s +} + // SetWorkspaceId sets the WorkspaceId field's value. func (s *UpdateWorkspaceInput) SetWorkspaceId(v string) *UpdateWorkspaceInput { s.WorkspaceId = &v @@ -12477,6 +15768,9 @@ // The description of the workspace. Description *string `locationName:"description" type:"string"` + // A list of services that are linked to the workspace. + LinkedServices []*string `locationName:"linkedServices" type:"list"` + // The date and time when the workspace was last updated. // // UpdateDateTime is a required field @@ -12524,6 +15818,12 @@ return s } +// SetLinkedServices sets the LinkedServices field's value. +func (s *WorkspaceSummary) SetLinkedServices(v []*string) *WorkspaceSummary { + s.LinkedServices = v + return s +} + // SetUpdateDateTime sets the UpdateDateTime field's value. func (s *WorkspaceSummary) SetUpdateDateTime(v time.Time) *WorkspaceSummary { s.UpdateDateTime = &v @@ -12577,6 +15877,26 @@ } const ( + // DestinationTypeS3 is a DestinationType enum value + DestinationTypeS3 = "s3" + + // DestinationTypeIotsitewise is a DestinationType enum value + DestinationTypeIotsitewise = "iotsitewise" + + // DestinationTypeIottwinmaker is a DestinationType enum value + DestinationTypeIottwinmaker = "iottwinmaker" +) + +// DestinationType_Values returns all elements of the DestinationType enum +func DestinationType_Values() []string { + return []string{ + DestinationTypeS3, + DestinationTypeIotsitewise, + DestinationTypeIottwinmaker, + } +} + +const ( // ErrorCodeValidationError is a ErrorCode enum value ErrorCodeValidationError = "VALIDATION_ERROR" @@ -12591,6 +15911,15 @@ // ErrorCodeSyncProcessingError is a ErrorCode enum value ErrorCodeSyncProcessingError = "SYNC_PROCESSING_ERROR" + + // ErrorCodeSyncDeletingError is a ErrorCode enum value + ErrorCodeSyncDeletingError = "SYNC_DELETING_ERROR" + + // ErrorCodeProcessingError is a ErrorCode enum value + ErrorCodeProcessingError = "PROCESSING_ERROR" + + // ErrorCodeCompositeComponentFailure is a ErrorCode enum value + ErrorCodeCompositeComponentFailure = "COMPOSITE_COMPONENT_FAILURE" ) // ErrorCode_Values returns all elements of the ErrorCode enum @@ -12601,6 +15930,9 @@ ErrorCodeSyncInitializingError, ErrorCodeSyncCreatingError, ErrorCodeSyncProcessingError, + ErrorCodeSyncDeletingError, + ErrorCodeProcessingError, + ErrorCodeCompositeComponentFailure, } } @@ -12629,6 +15961,42 @@ } const ( + // MetadataTransferJobStateValidating is a MetadataTransferJobState enum value + MetadataTransferJobStateValidating = "VALIDATING" + + // MetadataTransferJobStatePending is a MetadataTransferJobState enum value + MetadataTransferJobStatePending = "PENDING" + + // MetadataTransferJobStateRunning is a MetadataTransferJobState enum value + MetadataTransferJobStateRunning = "RUNNING" + + // MetadataTransferJobStateCancelling is a MetadataTransferJobState enum value + MetadataTransferJobStateCancelling = "CANCELLING" + + // MetadataTransferJobStateError is a MetadataTransferJobState enum value + MetadataTransferJobStateError = "ERROR" + + // MetadataTransferJobStateCompleted is a MetadataTransferJobState enum value + MetadataTransferJobStateCompleted = "COMPLETED" + + // MetadataTransferJobStateCancelled is a MetadataTransferJobState enum value + MetadataTransferJobStateCancelled = "CANCELLED" +) + +// MetadataTransferJobState_Values returns all elements of the MetadataTransferJobState enum +func MetadataTransferJobState_Values() []string { + return []string{ + MetadataTransferJobStateValidating, + MetadataTransferJobStatePending, + MetadataTransferJobStateRunning, + MetadataTransferJobStateCancelling, + MetadataTransferJobStateError, + MetadataTransferJobStateCompleted, + MetadataTransferJobStateCancelled, + } +} + +const ( // OrderAscending is a Order enum value OrderAscending = "ASCENDING" @@ -12788,6 +16156,26 @@ } } +const ( + // SourceTypeS3 is a SourceType enum value + SourceTypeS3 = "s3" + + // SourceTypeIotsitewise is a SourceType enum value + SourceTypeIotsitewise = "iotsitewise" + + // SourceTypeIottwinmaker is a SourceType enum value + SourceTypeIottwinmaker = "iottwinmaker" +) + +// SourceType_Values returns all elements of the SourceType enum +func SourceType_Values() []string { + return []string{ + SourceTypeS3, + SourceTypeIotsitewise, + SourceTypeIottwinmaker, + } +} + const ( // StateCreating is a State enum value StateCreating = "CREATING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iottwinmaker/iottwinmakeriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/iottwinmaker/iottwinmakeriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iottwinmaker/iottwinmakeriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iottwinmaker/iottwinmakeriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ BatchPutPropertyValuesWithContext(aws.Context, *iottwinmaker.BatchPutPropertyValuesInput, ...request.Option) (*iottwinmaker.BatchPutPropertyValuesOutput, error) BatchPutPropertyValuesRequest(*iottwinmaker.BatchPutPropertyValuesInput) (*request.Request, *iottwinmaker.BatchPutPropertyValuesOutput) + CancelMetadataTransferJob(*iottwinmaker.CancelMetadataTransferJobInput) (*iottwinmaker.CancelMetadataTransferJobOutput, error) + CancelMetadataTransferJobWithContext(aws.Context, *iottwinmaker.CancelMetadataTransferJobInput, ...request.Option) (*iottwinmaker.CancelMetadataTransferJobOutput, error) + CancelMetadataTransferJobRequest(*iottwinmaker.CancelMetadataTransferJobInput) (*request.Request, *iottwinmaker.CancelMetadataTransferJobOutput) + CreateComponentType(*iottwinmaker.CreateComponentTypeInput) (*iottwinmaker.CreateComponentTypeOutput, error) CreateComponentTypeWithContext(aws.Context, *iottwinmaker.CreateComponentTypeInput, ...request.Option) (*iottwinmaker.CreateComponentTypeOutput, error) CreateComponentTypeRequest(*iottwinmaker.CreateComponentTypeInput) (*request.Request, *iottwinmaker.CreateComponentTypeOutput) @@ -72,6 +76,10 @@ CreateEntityWithContext(aws.Context, *iottwinmaker.CreateEntityInput, ...request.Option) (*iottwinmaker.CreateEntityOutput, error) CreateEntityRequest(*iottwinmaker.CreateEntityInput) (*request.Request, *iottwinmaker.CreateEntityOutput) + CreateMetadataTransferJob(*iottwinmaker.CreateMetadataTransferJobInput) (*iottwinmaker.CreateMetadataTransferJobOutput, error) + CreateMetadataTransferJobWithContext(aws.Context, *iottwinmaker.CreateMetadataTransferJobInput, ...request.Option) (*iottwinmaker.CreateMetadataTransferJobOutput, error) + CreateMetadataTransferJobRequest(*iottwinmaker.CreateMetadataTransferJobInput) (*request.Request, *iottwinmaker.CreateMetadataTransferJobOutput) + CreateScene(*iottwinmaker.CreateSceneInput) (*iottwinmaker.CreateSceneOutput, error) CreateSceneWithContext(aws.Context, *iottwinmaker.CreateSceneInput, ...request.Option) (*iottwinmaker.CreateSceneOutput, error) CreateSceneRequest(*iottwinmaker.CreateSceneInput) (*request.Request, *iottwinmaker.CreateSceneOutput) @@ -119,6 +127,10 @@ GetEntityWithContext(aws.Context, *iottwinmaker.GetEntityInput, ...request.Option) (*iottwinmaker.GetEntityOutput, error) GetEntityRequest(*iottwinmaker.GetEntityInput) (*request.Request, *iottwinmaker.GetEntityOutput) + GetMetadataTransferJob(*iottwinmaker.GetMetadataTransferJobInput) (*iottwinmaker.GetMetadataTransferJobOutput, error) + GetMetadataTransferJobWithContext(aws.Context, *iottwinmaker.GetMetadataTransferJobInput, ...request.Option) (*iottwinmaker.GetMetadataTransferJobOutput, error) + GetMetadataTransferJobRequest(*iottwinmaker.GetMetadataTransferJobInput) (*request.Request, *iottwinmaker.GetMetadataTransferJobOutput) + GetPricingPlan(*iottwinmaker.GetPricingPlanInput) (*iottwinmaker.GetPricingPlanOutput, error) GetPricingPlanWithContext(aws.Context, *iottwinmaker.GetPricingPlanInput, ...request.Option) (*iottwinmaker.GetPricingPlanOutput, error) GetPricingPlanRequest(*iottwinmaker.GetPricingPlanInput) (*request.Request, *iottwinmaker.GetPricingPlanOutput) @@ -156,6 +168,13 @@ ListComponentTypesPages(*iottwinmaker.ListComponentTypesInput, func(*iottwinmaker.ListComponentTypesOutput, bool) bool) error ListComponentTypesPagesWithContext(aws.Context, *iottwinmaker.ListComponentTypesInput, func(*iottwinmaker.ListComponentTypesOutput, bool) bool, ...request.Option) error + ListComponents(*iottwinmaker.ListComponentsInput) (*iottwinmaker.ListComponentsOutput, error) + ListComponentsWithContext(aws.Context, *iottwinmaker.ListComponentsInput, ...request.Option) (*iottwinmaker.ListComponentsOutput, error) + ListComponentsRequest(*iottwinmaker.ListComponentsInput) (*request.Request, *iottwinmaker.ListComponentsOutput) + + ListComponentsPages(*iottwinmaker.ListComponentsInput, func(*iottwinmaker.ListComponentsOutput, bool) bool) error + ListComponentsPagesWithContext(aws.Context, *iottwinmaker.ListComponentsInput, func(*iottwinmaker.ListComponentsOutput, bool) bool, ...request.Option) error + ListEntities(*iottwinmaker.ListEntitiesInput) (*iottwinmaker.ListEntitiesOutput, error) ListEntitiesWithContext(aws.Context, *iottwinmaker.ListEntitiesInput, ...request.Option) (*iottwinmaker.ListEntitiesOutput, error) ListEntitiesRequest(*iottwinmaker.ListEntitiesInput) (*request.Request, *iottwinmaker.ListEntitiesOutput) @@ -163,6 +182,20 @@ ListEntitiesPages(*iottwinmaker.ListEntitiesInput, func(*iottwinmaker.ListEntitiesOutput, bool) bool) error ListEntitiesPagesWithContext(aws.Context, *iottwinmaker.ListEntitiesInput, func(*iottwinmaker.ListEntitiesOutput, bool) bool, ...request.Option) error + ListMetadataTransferJobs(*iottwinmaker.ListMetadataTransferJobsInput) (*iottwinmaker.ListMetadataTransferJobsOutput, error) + ListMetadataTransferJobsWithContext(aws.Context, *iottwinmaker.ListMetadataTransferJobsInput, ...request.Option) (*iottwinmaker.ListMetadataTransferJobsOutput, error) + ListMetadataTransferJobsRequest(*iottwinmaker.ListMetadataTransferJobsInput) (*request.Request, *iottwinmaker.ListMetadataTransferJobsOutput) + + ListMetadataTransferJobsPages(*iottwinmaker.ListMetadataTransferJobsInput, func(*iottwinmaker.ListMetadataTransferJobsOutput, bool) bool) error + ListMetadataTransferJobsPagesWithContext(aws.Context, *iottwinmaker.ListMetadataTransferJobsInput, func(*iottwinmaker.ListMetadataTransferJobsOutput, bool) bool, ...request.Option) error + + ListProperties(*iottwinmaker.ListPropertiesInput) (*iottwinmaker.ListPropertiesOutput, error) + ListPropertiesWithContext(aws.Context, *iottwinmaker.ListPropertiesInput, ...request.Option) (*iottwinmaker.ListPropertiesOutput, error) + ListPropertiesRequest(*iottwinmaker.ListPropertiesInput) (*request.Request, *iottwinmaker.ListPropertiesOutput) + + ListPropertiesPages(*iottwinmaker.ListPropertiesInput, func(*iottwinmaker.ListPropertiesOutput, bool) bool) error + ListPropertiesPagesWithContext(aws.Context, *iottwinmaker.ListPropertiesInput, func(*iottwinmaker.ListPropertiesOutput, bool) bool, ...request.Option) error + ListScenes(*iottwinmaker.ListScenesInput) (*iottwinmaker.ListScenesOutput, error) ListScenesWithContext(aws.Context, *iottwinmaker.ListScenesInput, ...request.Option) (*iottwinmaker.ListScenesOutput, error) ListScenesRequest(*iottwinmaker.ListScenesInput) (*request.Request, *iottwinmaker.ListScenesOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/iotwireless/api.go golang-github-aws-aws-sdk-go-1.48.14/service/iotwireless/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/iotwireless/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/iotwireless/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13115,7 +13115,7 @@ // use to manage a resource. Tags []*Tag `type:"list"` - // Trace content for your wireless gateway and wireless device resources. + // Trace content for your wireless devices, gateways, and multicast groups. TraceContent *TraceContent `type:"structure"` // Wireless device resources to add to the network analyzer configuration. Provide @@ -17044,10 +17044,10 @@ // Name of the network analyzer configuration. Name *string `min:"1" type:"string"` - // Trace content for your wireless gateway and wireless device resources. + // Trace content for your wireless devices, gateways, and multicast groups. TraceContent *TraceContent `type:"structure"` - // List of wireless gateway resources that have been added to the network analyzer + // List of wireless device resources that have been added to the network analyzer // configuration. WirelessDevices []*string `type:"list"` @@ -17439,8 +17439,11 @@ _ struct{} `type:"structure" payload:"GeoJsonPayload"` // The position information of the resource, displayed as a JSON payload. The - // payload uses the GeoJSON format, which a format that's used to encode geographic - // data structures. For more information, see GeoJSON (https://geojson.org/). + // payload is of type blob and uses the GeoJSON (https://geojson.org/) format, + // which a format that's used to encode geographic data structures. A sample + // payload contains the timestamp information, the WGS84 coordinates of the + // location, and the accuracy and confidence level. For more information and + // examples, see Resolve device location (console) (https://docs.aws.amazon.com/iot/latest/developerguide/location-resolve-console.html). GeoJsonPayload []byte `type:"blob"` } @@ -21882,7 +21885,7 @@ // profile. MacVersion *string `type:"string"` - // The MaxDutyCycle value. + // The MaxDutyCycle value. It ranges from 0 to 15. MaxDutyCycle *int64 `type:"integer"` // The MaxEIRP value. @@ -23874,6 +23877,9 @@ // The GenAppKey value. GenAppKey *string `type:"string"` + + // The JoinEUI value. + JoinEui *string `type:"string"` } // String returns the string representation. @@ -23912,6 +23918,12 @@ return s } +// SetJoinEui sets the JoinEui field's value. +func (s *OtaaV10X) SetJoinEui(v string) *OtaaV10X { + s.JoinEui = &v + return s +} + // OTAA device object for v1.1 type OtaaV11 struct { _ struct{} `type:"structure"` @@ -27375,7 +27387,7 @@ return s.RespMetadata.RequestID } -// Trace content for your wireless gateway and wireless device resources. +// Trace content for your wireless devices, gateways, and multicast groups. type TraceContent struct { _ struct{} `type:"structure"` @@ -27385,8 +27397,8 @@ LogLevel *string `type:"string" enum:"LogLevel"` // FrameInfo of your multicast group resources for the trace content. Use FrameInfo - // to debug the multicast communication between your LoRaWAN end devices and - // the network server. + // to debug the multicast communication between your multicast groups and the + // network server. MulticastFrameInfo *string `type:"string" enum:"MulticastFrameInfo"` // FrameInfo of your wireless device resources for the trace content. Use FrameInfo @@ -28233,10 +28245,10 @@ MulticastGroupsToAdd []*string `type:"list"` // Multicast group resources to remove from the network analyzer configuration. - // Provide the MulticastGroupId of the resource to remove in the input array. + // Provide the MulticastGroupId of the resources to remove in the input array. MulticastGroupsToRemove []*string `type:"list"` - // Trace content for your wireless gateway and wireless device resources. + // Trace content for your wireless devices, gateways, and multicast groups. TraceContent *TraceContent `type:"structure"` // Wireless device resources to add to the network analyzer configuration. Provide @@ -30796,8 +30808,8 @@ } // FrameInfo of your multicast group resources for the trace content. Use FrameInfo -// to debug the multicast communication between your LoRaWAN end devices and -// the network server. +// to debug the multicast communication between your multicast groups and the +// network server. const ( // MulticastFrameInfoEnabled is a MulticastFrameInfo enum value MulticastFrameInfoEnabled = "ENABLED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ivschat/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ivschat/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ivschat/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ivschat/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1778,7 +1778,11 @@ // Application-provided attributes to encode into the token and attach to a // chat session. Map keys and values can contain UTF-8 encoded text. The maximum // length of this field is 1 KB total. - Attributes map[string]*string `locationName:"attributes" type:"map"` + // + // Attributes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateChatTokenInput's + // String and GoString methods. + Attributes map[string]*string `locationName:"attributes" type:"map" sensitive:"true"` // Set of capabilities that the user is allowed to perform in the room. Default: // None (the capability to view messages is implicitly included in all requests). @@ -1797,8 +1801,12 @@ // Application-provided ID that uniquely identifies the user associated with // this token. This can be any UTF-8 encoded text. // + // UserId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateChatTokenInput's + // String and GoString methods. + // // UserId is a required field - UserId *string `locationName:"userId" min:"1" type:"string" required:"true"` + UserId *string `locationName:"userId" min:"1" type:"string" required:"true" sensitive:"true"` } // String returns the string representation. @@ -1882,7 +1890,11 @@ SessionExpirationTime *time.Time `locationName:"sessionExpirationTime" type:"timestamp" timestampFormat:"iso8601"` // The issued client token, encrypted. - Token *string `locationName:"token" type:"string"` + // + // Token is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateChatTokenOutput's + // String and GoString methods. + Token *string `locationName:"token" type:"string" sensitive:"true"` // Time after which the token is no longer valid and cannot be used to connect // to a room. This is an ISO 8601 timestamp; note that this is returned as a @@ -2666,8 +2678,12 @@ // ID of the user (connection) to disconnect from the room. // + // UserId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DisconnectUserInput's + // String and GoString methods. + // // UserId is a required field - UserId *string `locationName:"userId" min:"1" type:"string" required:"true"` + UserId *string `locationName:"userId" min:"1" type:"string" required:"true" sensitive:"true"` } // String returns the string representation. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ivsrealtime/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ivsrealtime/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ivsrealtime/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ivsrealtime/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,96 @@ "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateEncoderConfiguration = "CreateEncoderConfiguration" + +// CreateEncoderConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateEncoderConfiguration 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 CreateEncoderConfiguration for more information on using the CreateEncoderConfiguration +// 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 CreateEncoderConfigurationRequest method. +// req, resp := client.CreateEncoderConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateEncoderConfiguration +func (c *IVSRealTime) CreateEncoderConfigurationRequest(input *CreateEncoderConfigurationInput) (req *request.Request, output *CreateEncoderConfigurationOutput) { + op := &request.Operation{ + Name: opCreateEncoderConfiguration, + HTTPMethod: "POST", + HTTPPath: "/CreateEncoderConfiguration", + } + + if input == nil { + input = &CreateEncoderConfigurationInput{} + } + + output = &CreateEncoderConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEncoderConfiguration API operation for Amazon Interactive Video Service RealTime. +// +// Creates an EncoderConfiguration object. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation CreateEncoderConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// - PendingVerification +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateEncoderConfiguration +func (c *IVSRealTime) CreateEncoderConfiguration(input *CreateEncoderConfigurationInput) (*CreateEncoderConfigurationOutput, error) { + req, out := c.CreateEncoderConfigurationRequest(input) + return out, req.Send() +} + +// CreateEncoderConfigurationWithContext is the same as CreateEncoderConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEncoderConfiguration 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 *IVSRealTime) CreateEncoderConfigurationWithContext(ctx aws.Context, input *CreateEncoderConfigurationInput, opts ...request.Option) (*CreateEncoderConfigurationOutput, error) { + req, out := c.CreateEncoderConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateParticipantToken = "CreateParticipantToken" // CreateParticipantTokenRequest generates a "aws/request.Request" representing the @@ -187,6 +277,189 @@ return out, req.Send() } +const opCreateStorageConfiguration = "CreateStorageConfiguration" + +// CreateStorageConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateStorageConfiguration 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 CreateStorageConfiguration for more information on using the CreateStorageConfiguration +// 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 CreateStorageConfigurationRequest method. +// req, resp := client.CreateStorageConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateStorageConfiguration +func (c *IVSRealTime) CreateStorageConfigurationRequest(input *CreateStorageConfigurationInput) (req *request.Request, output *CreateStorageConfigurationOutput) { + op := &request.Operation{ + Name: opCreateStorageConfiguration, + HTTPMethod: "POST", + HTTPPath: "/CreateStorageConfiguration", + } + + if input == nil { + input = &CreateStorageConfigurationInput{} + } + + output = &CreateStorageConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateStorageConfiguration API operation for Amazon Interactive Video Service RealTime. +// +// Creates a new storage configuration, used to enable recording to Amazon S3. +// When a StorageConfiguration is created, IVS will modify the S3 bucketPolicy +// of the provided bucket. This will ensure that IVS has sufficient permissions +// to write content to the provided bucket. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation CreateStorageConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// - PendingVerification +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateStorageConfiguration +func (c *IVSRealTime) CreateStorageConfiguration(input *CreateStorageConfigurationInput) (*CreateStorageConfigurationOutput, error) { + req, out := c.CreateStorageConfigurationRequest(input) + return out, req.Send() +} + +// CreateStorageConfigurationWithContext is the same as CreateStorageConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateStorageConfiguration 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 *IVSRealTime) CreateStorageConfigurationWithContext(ctx aws.Context, input *CreateStorageConfigurationInput, opts ...request.Option) (*CreateStorageConfigurationOutput, error) { + req, out := c.CreateStorageConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEncoderConfiguration = "DeleteEncoderConfiguration" + +// DeleteEncoderConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEncoderConfiguration 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 DeleteEncoderConfiguration for more information on using the DeleteEncoderConfiguration +// 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 DeleteEncoderConfigurationRequest method. +// req, resp := client.DeleteEncoderConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteEncoderConfiguration +func (c *IVSRealTime) DeleteEncoderConfigurationRequest(input *DeleteEncoderConfigurationInput) (req *request.Request, output *DeleteEncoderConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteEncoderConfiguration, + HTTPMethod: "POST", + HTTPPath: "/DeleteEncoderConfiguration", + } + + if input == nil { + input = &DeleteEncoderConfigurationInput{} + } + + output = &DeleteEncoderConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteEncoderConfiguration API operation for Amazon Interactive Video Service RealTime. +// +// Deletes an EncoderConfiguration resource. Ensures that no Compositions are +// using this template; otherwise, returns an error. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation DeleteEncoderConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteEncoderConfiguration +func (c *IVSRealTime) DeleteEncoderConfiguration(input *DeleteEncoderConfigurationInput) (*DeleteEncoderConfigurationOutput, error) { + req, out := c.DeleteEncoderConfigurationRequest(input) + return out, req.Send() +} + +// DeleteEncoderConfigurationWithContext is the same as DeleteEncoderConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEncoderConfiguration 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 *IVSRealTime) DeleteEncoderConfigurationWithContext(ctx aws.Context, input *DeleteEncoderConfigurationInput, opts ...request.Option) (*DeleteEncoderConfigurationOutput, error) { + req, out := c.DeleteEncoderConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteStage = "DeleteStage" // DeleteStageRequest generates a "aws/request.Request" representing the @@ -274,6 +547,100 @@ return out, req.Send() } +const opDeleteStorageConfiguration = "DeleteStorageConfiguration" + +// DeleteStorageConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteStorageConfiguration 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 DeleteStorageConfiguration for more information on using the DeleteStorageConfiguration +// 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 DeleteStorageConfigurationRequest method. +// req, resp := client.DeleteStorageConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteStorageConfiguration +func (c *IVSRealTime) DeleteStorageConfigurationRequest(input *DeleteStorageConfigurationInput) (req *request.Request, output *DeleteStorageConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteStorageConfiguration, + HTTPMethod: "POST", + HTTPPath: "/DeleteStorageConfiguration", + } + + if input == nil { + input = &DeleteStorageConfigurationInput{} + } + + output = &DeleteStorageConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteStorageConfiguration API operation for Amazon Interactive Video Service RealTime. +// +// Deletes the storage configuration for the specified ARN. +// +// If you try to delete a storage configuration that is used by a Composition, +// you will get an error (409 ConflictException). To avoid this, for all Compositions +// that reference the storage configuration, first use StopComposition and wait +// for it to complete, then use DeleteStorageConfiguration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation DeleteStorageConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteStorageConfiguration +func (c *IVSRealTime) DeleteStorageConfiguration(input *DeleteStorageConfigurationInput) (*DeleteStorageConfigurationOutput, error) { + req, out := c.DeleteStorageConfigurationRequest(input) + return out, req.Send() +} + +// DeleteStorageConfigurationWithContext is the same as DeleteStorageConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteStorageConfiguration 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 *IVSRealTime) DeleteStorageConfigurationWithContext(ctx aws.Context, input *DeleteStorageConfigurationInput, opts ...request.Option) (*DeleteStorageConfigurationOutput, error) { + req, out := c.DeleteStorageConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisconnectParticipant = "DisconnectParticipant" // DisconnectParticipantRequest generates a "aws/request.Request" representing the @@ -360,6 +727,182 @@ return out, req.Send() } +const opGetComposition = "GetComposition" + +// GetCompositionRequest generates a "aws/request.Request" representing the +// client's request for the GetComposition 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 GetComposition for more information on using the GetComposition +// 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 GetCompositionRequest method. +// req, resp := client.GetCompositionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetComposition +func (c *IVSRealTime) GetCompositionRequest(input *GetCompositionInput) (req *request.Request, output *GetCompositionOutput) { + op := &request.Operation{ + Name: opGetComposition, + HTTPMethod: "POST", + HTTPPath: "/GetComposition", + } + + if input == nil { + input = &GetCompositionInput{} + } + + output = &GetCompositionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetComposition API operation for Amazon Interactive Video Service RealTime. +// +// Get information about the specified Composition 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 Amazon Interactive Video Service RealTime's +// API operation GetComposition for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetComposition +func (c *IVSRealTime) GetComposition(input *GetCompositionInput) (*GetCompositionOutput, error) { + req, out := c.GetCompositionRequest(input) + return out, req.Send() +} + +// GetCompositionWithContext is the same as GetComposition with the addition of +// the ability to pass a context and additional request options. +// +// See GetComposition 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 *IVSRealTime) GetCompositionWithContext(ctx aws.Context, input *GetCompositionInput, opts ...request.Option) (*GetCompositionOutput, error) { + req, out := c.GetCompositionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEncoderConfiguration = "GetEncoderConfiguration" + +// GetEncoderConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetEncoderConfiguration 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 GetEncoderConfiguration for more information on using the GetEncoderConfiguration +// 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 GetEncoderConfigurationRequest method. +// req, resp := client.GetEncoderConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetEncoderConfiguration +func (c *IVSRealTime) GetEncoderConfigurationRequest(input *GetEncoderConfigurationInput) (req *request.Request, output *GetEncoderConfigurationOutput) { + op := &request.Operation{ + Name: opGetEncoderConfiguration, + HTTPMethod: "POST", + HTTPPath: "/GetEncoderConfiguration", + } + + if input == nil { + input = &GetEncoderConfigurationInput{} + } + + output = &GetEncoderConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEncoderConfiguration API operation for Amazon Interactive Video Service RealTime. +// +// Gets information about the specified EncoderConfiguration 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 Amazon Interactive Video Service RealTime's +// API operation GetEncoderConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetEncoderConfiguration +func (c *IVSRealTime) GetEncoderConfiguration(input *GetEncoderConfigurationInput) (*GetEncoderConfigurationOutput, error) { + req, out := c.GetEncoderConfigurationRequest(input) + return out, req.Send() +} + +// GetEncoderConfigurationWithContext is the same as GetEncoderConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetEncoderConfiguration 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 *IVSRealTime) GetEncoderConfigurationWithContext(ctx aws.Context, input *GetEncoderConfigurationInput, opts ...request.Option) (*GetEncoderConfigurationOutput, error) { + req, out := c.GetEncoderConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetParticipant = "GetParticipant" // GetParticipantRequest generates a "aws/request.Request" representing the @@ -606,6 +1149,382 @@ return out, req.Send() } +const opGetStorageConfiguration = "GetStorageConfiguration" + +// GetStorageConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetStorageConfiguration 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 GetStorageConfiguration for more information on using the GetStorageConfiguration +// 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 GetStorageConfigurationRequest method. +// req, resp := client.GetStorageConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStorageConfiguration +func (c *IVSRealTime) GetStorageConfigurationRequest(input *GetStorageConfigurationInput) (req *request.Request, output *GetStorageConfigurationOutput) { + op := &request.Operation{ + Name: opGetStorageConfiguration, + HTTPMethod: "POST", + HTTPPath: "/GetStorageConfiguration", + } + + if input == nil { + input = &GetStorageConfigurationInput{} + } + + output = &GetStorageConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetStorageConfiguration API operation for Amazon Interactive Video Service RealTime. +// +// Gets the storage configuration for the specified ARN. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation GetStorageConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStorageConfiguration +func (c *IVSRealTime) GetStorageConfiguration(input *GetStorageConfigurationInput) (*GetStorageConfigurationOutput, error) { + req, out := c.GetStorageConfigurationRequest(input) + return out, req.Send() +} + +// GetStorageConfigurationWithContext is the same as GetStorageConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetStorageConfiguration 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 *IVSRealTime) GetStorageConfigurationWithContext(ctx aws.Context, input *GetStorageConfigurationInput, opts ...request.Option) (*GetStorageConfigurationOutput, error) { + req, out := c.GetStorageConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListCompositions = "ListCompositions" + +// ListCompositionsRequest generates a "aws/request.Request" representing the +// client's request for the ListCompositions 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 ListCompositions for more information on using the ListCompositions +// 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 ListCompositionsRequest method. +// req, resp := client.ListCompositionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListCompositions +func (c *IVSRealTime) ListCompositionsRequest(input *ListCompositionsInput) (req *request.Request, output *ListCompositionsOutput) { + op := &request.Operation{ + Name: opListCompositions, + HTTPMethod: "POST", + HTTPPath: "/ListCompositions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCompositionsInput{} + } + + output = &ListCompositionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCompositions API operation for Amazon Interactive Video Service RealTime. +// +// Gets summary information about all Compositions in your account, in the AWS +// region where the API request is processed. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation ListCompositions for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListCompositions +func (c *IVSRealTime) ListCompositions(input *ListCompositionsInput) (*ListCompositionsOutput, error) { + req, out := c.ListCompositionsRequest(input) + return out, req.Send() +} + +// ListCompositionsWithContext is the same as ListCompositions with the addition of +// the ability to pass a context and additional request options. +// +// See ListCompositions 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 *IVSRealTime) ListCompositionsWithContext(ctx aws.Context, input *ListCompositionsInput, opts ...request.Option) (*ListCompositionsOutput, error) { + req, out := c.ListCompositionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCompositionsPages iterates over the pages of a ListCompositions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCompositions 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 ListCompositions operation. +// pageNum := 0 +// err := client.ListCompositionsPages(params, +// func(page *ivsrealtime.ListCompositionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IVSRealTime) ListCompositionsPages(input *ListCompositionsInput, fn func(*ListCompositionsOutput, bool) bool) error { + return c.ListCompositionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCompositionsPagesWithContext same as ListCompositionsPages 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 *IVSRealTime) ListCompositionsPagesWithContext(ctx aws.Context, input *ListCompositionsInput, fn func(*ListCompositionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCompositionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCompositionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCompositionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEncoderConfigurations = "ListEncoderConfigurations" + +// ListEncoderConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListEncoderConfigurations 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 ListEncoderConfigurations for more information on using the ListEncoderConfigurations +// 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 ListEncoderConfigurationsRequest method. +// req, resp := client.ListEncoderConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListEncoderConfigurations +func (c *IVSRealTime) ListEncoderConfigurationsRequest(input *ListEncoderConfigurationsInput) (req *request.Request, output *ListEncoderConfigurationsOutput) { + op := &request.Operation{ + Name: opListEncoderConfigurations, + HTTPMethod: "POST", + HTTPPath: "/ListEncoderConfigurations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEncoderConfigurationsInput{} + } + + output = &ListEncoderConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEncoderConfigurations API operation for Amazon Interactive Video Service RealTime. +// +// Gets summary information about all EncoderConfigurations in your account, +// in the AWS region where the API request is processed. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation ListEncoderConfigurations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListEncoderConfigurations +func (c *IVSRealTime) ListEncoderConfigurations(input *ListEncoderConfigurationsInput) (*ListEncoderConfigurationsOutput, error) { + req, out := c.ListEncoderConfigurationsRequest(input) + return out, req.Send() +} + +// ListEncoderConfigurationsWithContext is the same as ListEncoderConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListEncoderConfigurations 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 *IVSRealTime) ListEncoderConfigurationsWithContext(ctx aws.Context, input *ListEncoderConfigurationsInput, opts ...request.Option) (*ListEncoderConfigurationsOutput, error) { + req, out := c.ListEncoderConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEncoderConfigurationsPages iterates over the pages of a ListEncoderConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEncoderConfigurations 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 ListEncoderConfigurations operation. +// pageNum := 0 +// err := client.ListEncoderConfigurationsPages(params, +// func(page *ivsrealtime.ListEncoderConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IVSRealTime) ListEncoderConfigurationsPages(input *ListEncoderConfigurationsInput, fn func(*ListEncoderConfigurationsOutput, bool) bool) error { + return c.ListEncoderConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEncoderConfigurationsPagesWithContext same as ListEncoderConfigurationsPages 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 *IVSRealTime) ListEncoderConfigurationsPagesWithContext(ctx aws.Context, input *ListEncoderConfigurationsInput, fn func(*ListEncoderConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEncoderConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEncoderConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEncoderConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListParticipantEvents = "ListParticipantEvents" // ListParticipantEventsRequest generates a "aws/request.Request" representing the @@ -1158,6 +2077,150 @@ return p.Err() } +const opListStorageConfigurations = "ListStorageConfigurations" + +// ListStorageConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListStorageConfigurations 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 ListStorageConfigurations for more information on using the ListStorageConfigurations +// 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 ListStorageConfigurationsRequest method. +// req, resp := client.ListStorageConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListStorageConfigurations +func (c *IVSRealTime) ListStorageConfigurationsRequest(input *ListStorageConfigurationsInput) (req *request.Request, output *ListStorageConfigurationsOutput) { + op := &request.Operation{ + Name: opListStorageConfigurations, + HTTPMethod: "POST", + HTTPPath: "/ListStorageConfigurations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListStorageConfigurationsInput{} + } + + output = &ListStorageConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListStorageConfigurations API operation for Amazon Interactive Video Service RealTime. +// +// Gets summary information about all storage configurations in your account, +// in the AWS region where the API request is processed. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation ListStorageConfigurations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListStorageConfigurations +func (c *IVSRealTime) ListStorageConfigurations(input *ListStorageConfigurationsInput) (*ListStorageConfigurationsOutput, error) { + req, out := c.ListStorageConfigurationsRequest(input) + return out, req.Send() +} + +// ListStorageConfigurationsWithContext is the same as ListStorageConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListStorageConfigurations 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 *IVSRealTime) ListStorageConfigurationsWithContext(ctx aws.Context, input *ListStorageConfigurationsInput, opts ...request.Option) (*ListStorageConfigurationsOutput, error) { + req, out := c.ListStorageConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListStorageConfigurationsPages iterates over the pages of a ListStorageConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListStorageConfigurations 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 ListStorageConfigurations operation. +// pageNum := 0 +// err := client.ListStorageConfigurationsPages(params, +// func(page *ivsrealtime.ListStorageConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IVSRealTime) ListStorageConfigurationsPages(input *ListStorageConfigurationsInput, fn func(*ListStorageConfigurationsOutput, bool) bool) error { + return c.ListStorageConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListStorageConfigurationsPagesWithContext same as ListStorageConfigurationsPages 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 *IVSRealTime) ListStorageConfigurationsPagesWithContext(ctx aws.Context, input *ListStorageConfigurationsInput, fn func(*ListStorageConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListStorageConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListStorageConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListStorageConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -1240,6 +2303,203 @@ return out, req.Send() } +const opStartComposition = "StartComposition" + +// StartCompositionRequest generates a "aws/request.Request" representing the +// client's request for the StartComposition 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 StartComposition for more information on using the StartComposition +// 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 StartCompositionRequest method. +// req, resp := client.StartCompositionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StartComposition +func (c *IVSRealTime) StartCompositionRequest(input *StartCompositionInput) (req *request.Request, output *StartCompositionOutput) { + op := &request.Operation{ + Name: opStartComposition, + HTTPMethod: "POST", + HTTPPath: "/StartComposition", + } + + if input == nil { + input = &StartCompositionInput{} + } + + output = &StartCompositionOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartComposition API operation for Amazon Interactive Video Service RealTime. +// +// Starts a Composition from a stage based on the configuration provided in +// the request. +// +// A Composition is an ephemeral resource that exists after this endpoint returns +// successfully. Composition stops and the resource is deleted: +// +// - When StopComposition is called. +// +// - After a 1-minute timeout, when all participants are disconnected from +// the stage. +// +// - After a 1-minute timeout, if there are no participants in the stage +// when StartComposition is called. +// +// - When broadcasting to the IVS channel fails and all retries are exhausted. +// +// - When broadcasting is disconnected and all attempts to reconnect are +// exhausted. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation StartComposition for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// - PendingVerification +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StartComposition +func (c *IVSRealTime) StartComposition(input *StartCompositionInput) (*StartCompositionOutput, error) { + req, out := c.StartCompositionRequest(input) + return out, req.Send() +} + +// StartCompositionWithContext is the same as StartComposition with the addition of +// the ability to pass a context and additional request options. +// +// See StartComposition 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 *IVSRealTime) StartCompositionWithContext(ctx aws.Context, input *StartCompositionInput, opts ...request.Option) (*StartCompositionOutput, error) { + req, out := c.StartCompositionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopComposition = "StopComposition" + +// StopCompositionRequest generates a "aws/request.Request" representing the +// client's request for the StopComposition 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 StopComposition for more information on using the StopComposition +// 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 StopCompositionRequest method. +// req, resp := client.StopCompositionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StopComposition +func (c *IVSRealTime) StopCompositionRequest(input *StopCompositionInput) (req *request.Request, output *StopCompositionOutput) { + op := &request.Operation{ + Name: opStopComposition, + HTTPMethod: "POST", + HTTPPath: "/StopComposition", + } + + if input == nil { + input = &StopCompositionInput{} + } + + output = &StopCompositionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StopComposition API operation for Amazon Interactive Video Service RealTime. +// +// Stops and deletes a Composition resource. Any broadcast from the Composition +// resource is stopped. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Interactive Video Service RealTime's +// API operation StopComposition for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// +// - ValidationException +// +// - AccessDeniedException +// +// - InternalServerException +// +// - ServiceQuotaExceededException +// +// - ConflictException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StopComposition +func (c *IVSRealTime) StopComposition(input *StopCompositionInput) (*StopCompositionOutput, error) { + req, out := c.StopCompositionRequest(input) + return out, req.Send() +} + +// StopCompositionWithContext is the same as StopComposition with the addition of +// the ability to pass a context and additional request options. +// +// See StopComposition 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 *IVSRealTime) StopCompositionWithContext(ctx aws.Context, input *StopCompositionInput, opts ...request.Option) (*StopCompositionOutput, error) { + req, out := c.StopCompositionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -1558,6 +2818,283 @@ return s.RespMetadata.RequestID } +// Object specifying a channel as a destination. +type ChannelDestinationConfiguration struct { + _ struct{} `type:"structure"` + + // ARN of the channel to use for broadcasting. The channel and stage resources + // must be in the same AWS account and region. The channel must be offline (not + // broadcasting). + // + // ChannelArn is a required field + ChannelArn *string `locationName:"channelArn" min:"1" type:"string" required:"true"` + + // ARN of the EncoderConfiguration resource. The encoder configuration and stage + // resources must be in the same AWS account and region. + EncoderConfigurationArn *string `locationName:"encoderConfigurationArn" 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 ChannelDestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelDestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChannelDestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChannelDestinationConfiguration"} + if s.ChannelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelArn")) + } + if s.ChannelArn != nil && len(*s.ChannelArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 1)) + } + if s.EncoderConfigurationArn != nil && len(*s.EncoderConfigurationArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EncoderConfigurationArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *ChannelDestinationConfiguration) SetChannelArn(v string) *ChannelDestinationConfiguration { + s.ChannelArn = &v + return s +} + +// SetEncoderConfigurationArn sets the EncoderConfigurationArn field's value. +func (s *ChannelDestinationConfiguration) SetEncoderConfigurationArn(v string) *ChannelDestinationConfiguration { + s.EncoderConfigurationArn = &v + return s +} + +// Object specifying a Composition resource. +type Composition struct { + _ struct{} `type:"structure"` + + // ARN of the Composition resource. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // Array of Destination objects. A Composition can contain either one destination + // (channel or s3) or two (one channel and one s3). + // + // Destinations is a required field + Destinations []*Destination `locationName:"destinations" min:"1" type:"list" required:"true"` + + // UTC time of the Composition end. This is an ISO 8601 timestamp; note that + // this is returned as a string. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // Layout object to configure composition parameters. + // + // Layout is a required field + Layout *LayoutConfiguration `locationName:"layout" type:"structure" required:"true"` + + // ARN of the stage used as input + // + // StageArn is a required field + StageArn *string `locationName:"stageArn" min:"1" type:"string" required:"true"` + + // UTC time of the Composition start. This is an ISO 8601 timestamp; note that + // this is returned as a string. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // State of the Composition. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"CompositionState"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Composition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Composition) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Composition) SetArn(v string) *Composition { + s.Arn = &v + return s +} + +// SetDestinations sets the Destinations field's value. +func (s *Composition) SetDestinations(v []*Destination) *Composition { + s.Destinations = v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *Composition) SetEndTime(v time.Time) *Composition { + s.EndTime = &v + return s +} + +// SetLayout sets the Layout field's value. +func (s *Composition) SetLayout(v *LayoutConfiguration) *Composition { + s.Layout = v + return s +} + +// SetStageArn sets the StageArn field's value. +func (s *Composition) SetStageArn(v string) *Composition { + s.StageArn = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *Composition) SetStartTime(v time.Time) *Composition { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *Composition) SetState(v string) *Composition { + s.State = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Composition) SetTags(v map[string]*string) *Composition { + s.Tags = v + return s +} + +// Summary information about a Composition. +type CompositionSummary struct { + _ struct{} `type:"structure"` + + // ARN of the Composition resource. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // Array of Destination objects. + // + // Destinations is a required field + Destinations []*DestinationSummary `locationName:"destinations" min:"1" type:"list" required:"true"` + + // UTC time of the Composition end. This is an ISO 8601 timestamp; note that + // this is returned as a string. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // ARN of the attached stage. + // + // StageArn is a required field + StageArn *string `locationName:"stageArn" min:"1" type:"string" required:"true"` + + // UTC time of the Composition start. This is an ISO 8601 timestamp; note that + // this is returned as a string. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // State of the Composition resource. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"CompositionState"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CompositionSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CompositionSummary) SetArn(v string) *CompositionSummary { + s.Arn = &v + return s +} + +// SetDestinations sets the Destinations field's value. +func (s *CompositionSummary) SetDestinations(v []*DestinationSummary) *CompositionSummary { + s.Destinations = v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *CompositionSummary) SetEndTime(v time.Time) *CompositionSummary { + s.EndTime = &v + return s +} + +// SetStageArn sets the StageArn field's value. +func (s *CompositionSummary) SetStageArn(v string) *CompositionSummary { + s.StageArn = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CompositionSummary) SetStartTime(v time.Time) *CompositionSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *CompositionSummary) SetState(v string) *CompositionSummary { + s.State = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CompositionSummary) SetTags(v map[string]*string) *CompositionSummary { + s.Tags = v + return s +} + type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1624,6 +3161,106 @@ return s.RespMetadata.RequestID } +type CreateEncoderConfigurationInput struct { + _ struct{} `type:"structure"` + + // Optional name to identify the resource. + Name *string `locationName:"name" type:"string"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` + + // Video configuration. Default: video resolution 1280x720, bitrate 2500 kbps, + // 30 fps. + Video *Video `locationName:"video" 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 CreateEncoderConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEncoderConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEncoderConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEncoderConfigurationInput"} + if s.Video != nil { + if err := s.Video.Validate(); err != nil { + invalidParams.AddNested("Video", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *CreateEncoderConfigurationInput) SetName(v string) *CreateEncoderConfigurationInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateEncoderConfigurationInput) SetTags(v map[string]*string) *CreateEncoderConfigurationInput { + s.Tags = v + return s +} + +// SetVideo sets the Video field's value. +func (s *CreateEncoderConfigurationInput) SetVideo(v *Video) *CreateEncoderConfigurationInput { + s.Video = v + return s +} + +type CreateEncoderConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The EncoderConfiguration that was created. + EncoderConfiguration *EncoderConfiguration `locationName:"encoderConfiguration" 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 CreateEncoderConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEncoderConfigurationOutput) GoString() string { + return s.String() +} + +// SetEncoderConfiguration sets the EncoderConfiguration field's value. +func (s *CreateEncoderConfigurationOutput) SetEncoderConfiguration(v *EncoderConfiguration) *CreateEncoderConfigurationOutput { + s.EncoderConfiguration = v + return s +} + type CreateParticipantTokenInput struct { _ struct{} `type:"structure"` @@ -1864,6 +3501,182 @@ return s } +type CreateStorageConfigurationInput struct { + _ struct{} `type:"structure"` + + // Storage configuration name. The value does not need to be unique. + Name *string `locationName:"name" type:"string"` + + // A complex type that contains a storage configuration for where recorded video + // will be stored. + // + // S3 is a required field + S3 *S3StorageConfiguration `locationName:"s3" type:"structure" required:"true"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateStorageConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateStorageConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateStorageConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateStorageConfigurationInput"} + if s.S3 == nil { + invalidParams.Add(request.NewErrParamRequired("S3")) + } + if s.S3 != nil { + if err := s.S3.Validate(); err != nil { + invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *CreateStorageConfigurationInput) SetName(v string) *CreateStorageConfigurationInput { + s.Name = &v + return s +} + +// SetS3 sets the S3 field's value. +func (s *CreateStorageConfigurationInput) SetS3(v *S3StorageConfiguration) *CreateStorageConfigurationInput { + s.S3 = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateStorageConfigurationInput) SetTags(v map[string]*string) *CreateStorageConfigurationInput { + s.Tags = v + return s +} + +type CreateStorageConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The StorageConfiguration that was created. + StorageConfiguration *StorageConfiguration `locationName:"storageConfiguration" 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 CreateStorageConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateStorageConfigurationOutput) GoString() string { + return s.String() +} + +// SetStorageConfiguration sets the StorageConfiguration field's value. +func (s *CreateStorageConfigurationOutput) SetStorageConfiguration(v *StorageConfiguration) *CreateStorageConfigurationOutput { + s.StorageConfiguration = v + return s +} + +type DeleteEncoderConfigurationInput struct { + _ struct{} `type:"structure"` + + // ARN of the EncoderConfiguration. + // + // Arn is a required field + Arn *string `locationName:"arn" 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 DeleteEncoderConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEncoderConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEncoderConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEncoderConfigurationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *DeleteEncoderConfigurationInput) SetArn(v string) *DeleteEncoderConfigurationInput { + s.Arn = &v + return s +} + +type DeleteEncoderConfigurationOutput 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 DeleteEncoderConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEncoderConfigurationOutput) GoString() string { + return s.String() +} + type DeleteStageInput struct { _ struct{} `type:"structure"` @@ -1935,6 +3748,331 @@ return s.String() } +type DeleteStorageConfigurationInput struct { + _ struct{} `type:"structure"` + + // ARN of the storage configuration to be deleted. + // + // Arn is a required field + Arn *string `locationName:"arn" 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 DeleteStorageConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteStorageConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteStorageConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteStorageConfigurationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *DeleteStorageConfigurationInput) SetArn(v string) *DeleteStorageConfigurationInput { + s.Arn = &v + return s +} + +type DeleteStorageConfigurationOutput 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 DeleteStorageConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteStorageConfigurationOutput) GoString() string { + return s.String() +} + +// Object specifying the status of a Destination. +type Destination struct { + _ struct{} `type:"structure"` + + // Configuration used to create this destination. + // + // Configuration is a required field + Configuration *DestinationConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Optional details regarding the status of the destination. + Detail *DestinationDetail `locationName:"detail" type:"structure"` + + // UTC time of the destination end. This is an ISO 8601 timestamp; note that + // this is returned as a string. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // Unique identifier for this destination, assigned by IVS. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // UTC time of the destination start. This is an ISO 8601 timestamp; note that + // this is returned as a string. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // State of the Composition Destination. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"DestinationState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Destination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Destination) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *Destination) SetConfiguration(v *DestinationConfiguration) *Destination { + s.Configuration = v + return s +} + +// SetDetail sets the Detail field's value. +func (s *Destination) SetDetail(v *DestinationDetail) *Destination { + s.Detail = v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *Destination) SetEndTime(v time.Time) *Destination { + s.EndTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *Destination) SetId(v string) *Destination { + s.Id = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *Destination) SetStartTime(v time.Time) *Destination { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *Destination) SetState(v string) *Destination { + s.State = &v + return s +} + +// Complex data type that defines destination-configuration objects. +type DestinationConfiguration struct { + _ struct{} `type:"structure"` + + // An IVS channel to be used for broadcasting, for server-side composition. + // Either a channel or an s3 must be specified. + Channel *ChannelDestinationConfiguration `locationName:"channel" type:"structure"` + + // Name that can be specified to help identify the destination. + Name *string `locationName:"name" type:"string"` + + // An S3 storage configuration to be used for recording video data. Either a + // channel or an s3 must be specified. + S3 *S3DestinationConfiguration `locationName:"s3" 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 DestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DestinationConfiguration"} + if s.Channel != nil { + if err := s.Channel.Validate(); err != nil { + invalidParams.AddNested("Channel", err.(request.ErrInvalidParams)) + } + } + if s.S3 != nil { + if err := s.S3.Validate(); err != nil { + invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannel sets the Channel field's value. +func (s *DestinationConfiguration) SetChannel(v *ChannelDestinationConfiguration) *DestinationConfiguration { + s.Channel = v + return s +} + +// SetName sets the Name field's value. +func (s *DestinationConfiguration) SetName(v string) *DestinationConfiguration { + s.Name = &v + return s +} + +// SetS3 sets the S3 field's value. +func (s *DestinationConfiguration) SetS3(v *S3DestinationConfiguration) *DestinationConfiguration { + s.S3 = v + return s +} + +// Complex data type that defines destination-detail objects. +type DestinationDetail struct { + _ struct{} `type:"structure"` + + // An S3 detail object to return information about the S3 destination. + S3 *S3Detail `locationName:"s3" 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 DestinationDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationDetail) GoString() string { + return s.String() +} + +// SetS3 sets the S3 field's value. +func (s *DestinationDetail) SetS3(v *S3Detail) *DestinationDetail { + s.S3 = v + return s +} + +// Summary information about a Destination. +type DestinationSummary struct { + _ struct{} `type:"structure"` + + // UTC time of the destination end. This is an ISO 8601 timestamp; note that + // this is returned as a string. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // Unique identifier for this destination, assigned by IVS. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // UTC time of the destination start. This is an ISO 8601 timestamp; note that + // this is returned as a string. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // State of the Composition Destination. + // + // State is a required field + State *string `locationName:"state" type:"string" required:"true" enum:"DestinationState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationSummary) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *DestinationSummary) SetEndTime(v time.Time) *DestinationSummary { + s.EndTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *DestinationSummary) SetId(v string) *DestinationSummary { + s.Id = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *DestinationSummary) SetStartTime(v time.Time) *DestinationSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *DestinationSummary) SetState(v string) *DestinationSummary { + s.State = &v + return s +} + type DisconnectParticipantInput struct { _ struct{} `type:"structure"` @@ -2030,6 +4168,128 @@ return s.String() } +// Settings for transcoding. +type EncoderConfiguration struct { + _ struct{} `type:"structure"` + + // ARN of the EncoderConfiguration resource. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // Optional name to identify the resource. + Name *string `locationName:"name" type:"string"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` + + // Video configuration. Default: video resolution 1280x720, bitrate 2500 kbps, + // 30 fps + Video *Video `locationName:"video" 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 EncoderConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EncoderConfiguration) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EncoderConfiguration) SetArn(v string) *EncoderConfiguration { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *EncoderConfiguration) SetName(v string) *EncoderConfiguration { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *EncoderConfiguration) SetTags(v map[string]*string) *EncoderConfiguration { + s.Tags = v + return s +} + +// SetVideo sets the Video field's value. +func (s *EncoderConfiguration) SetVideo(v *Video) *EncoderConfiguration { + s.Video = v + return s +} + +// Summary information about an EncoderConfiguration. +type EncoderConfigurationSummary struct { + _ struct{} `type:"structure"` + + // ARN of the EncoderConfiguration resource. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // Optional name to identify the resource. + Name *string `locationName:"name" type:"string"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EncoderConfigurationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EncoderConfigurationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EncoderConfigurationSummary) SetArn(v string) *EncoderConfigurationSummary { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *EncoderConfigurationSummary) SetName(v string) *EncoderConfigurationSummary { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *EncoderConfigurationSummary) SetTags(v map[string]*string) *EncoderConfigurationSummary { + s.Tags = v + return s +} + // An occurrence during a stage session. type Event struct { _ struct{} `type:"structure"` @@ -2110,6 +4370,166 @@ return s } +type GetCompositionInput struct { + _ struct{} `type:"structure"` + + // ARN of the Composition resource. + // + // Arn is a required field + Arn *string `locationName:"arn" 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 GetCompositionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCompositionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCompositionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCompositionInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *GetCompositionInput) SetArn(v string) *GetCompositionInput { + s.Arn = &v + return s +} + +type GetCompositionOutput struct { + _ struct{} `type:"structure"` + + // The Composition that was returned. + Composition *Composition `locationName:"composition" 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 GetCompositionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCompositionOutput) GoString() string { + return s.String() +} + +// SetComposition sets the Composition field's value. +func (s *GetCompositionOutput) SetComposition(v *Composition) *GetCompositionOutput { + s.Composition = v + return s +} + +type GetEncoderConfigurationInput struct { + _ struct{} `type:"structure"` + + // ARN of the EncoderConfiguration resource. + // + // Arn is a required field + Arn *string `locationName:"arn" 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 GetEncoderConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEncoderConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEncoderConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEncoderConfigurationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *GetEncoderConfigurationInput) SetArn(v string) *GetEncoderConfigurationInput { + s.Arn = &v + return s +} + +type GetEncoderConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The EncoderConfiguration that was returned. + EncoderConfiguration *EncoderConfiguration `locationName:"encoderConfiguration" 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 GetEncoderConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEncoderConfigurationOutput) GoString() string { + return s.String() +} + +// SetEncoderConfiguration sets the EncoderConfiguration field's value. +func (s *GetEncoderConfigurationOutput) SetEncoderConfiguration(v *EncoderConfiguration) *GetEncoderConfigurationOutput { + s.EncoderConfiguration = v + return s +} + type GetParticipantInput struct { _ struct{} `type:"structure"` @@ -2399,6 +4819,121 @@ return s } +type GetStorageConfigurationInput struct { + _ struct{} `type:"structure"` + + // ARN of the storage configuration to be retrieved. + // + // Arn is a required field + Arn *string `locationName:"arn" 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 GetStorageConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetStorageConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetStorageConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetStorageConfigurationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *GetStorageConfigurationInput) SetArn(v string) *GetStorageConfigurationInput { + s.Arn = &v + return s +} + +type GetStorageConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The StorageConfiguration that was returned. + StorageConfiguration *StorageConfiguration `locationName:"storageConfiguration" 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 GetStorageConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetStorageConfigurationOutput) GoString() string { + return s.String() +} + +// SetStorageConfiguration sets the StorageConfiguration field's value. +func (s *GetStorageConfigurationOutput) SetStorageConfiguration(v *StorageConfiguration) *GetStorageConfigurationOutput { + s.StorageConfiguration = v + return s +} + +// Configuration information specific to Grid layout, for server-side composition. +// See "Layouts" in Server-Side Composition (https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/server-side-composition.html). +type GridConfiguration struct { + _ struct{} `type:"structure"` + + // This attribute name identifies the featured slot. A participant with this + // attribute set to "true" (as a string value) in ParticipantTokenConfiguration + // is placed in the featured slot. + FeaturedParticipantAttribute *string `locationName:"featuredParticipantAttribute" 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 GridConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GridConfiguration) GoString() string { + return s.String() +} + +// SetFeaturedParticipantAttribute sets the FeaturedParticipantAttribute field's value. +func (s *GridConfiguration) SetFeaturedParticipantAttribute(v string) *GridConfiguration { + s.FeaturedParticipantAttribute = &v + return s +} + type InternalServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2465,14 +5000,265 @@ return s.RespMetadata.RequestID } +// Configuration information of supported layouts for server-side composition. +type LayoutConfiguration struct { + _ struct{} `type:"structure"` + + // Configuration related to grid layout. Default: Grid layout. + Grid *GridConfiguration `locationName:"grid" 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 LayoutConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LayoutConfiguration) GoString() string { + return s.String() +} + +// SetGrid sets the Grid field's value. +func (s *LayoutConfiguration) SetGrid(v *GridConfiguration) *LayoutConfiguration { + s.Grid = v + return s +} + +type ListCompositionsInput struct { + _ struct{} `type:"structure"` + + // Filters the Composition list to match the specified EncoderConfiguration + // attached to at least one of its output. + FilterByEncoderConfigurationArn *string `locationName:"filterByEncoderConfigurationArn" min:"1" type:"string"` + + // Filters the Composition list to match the specified Stage ARN. + FilterByStageArn *string `locationName:"filterByStageArn" min:"1" type:"string"` + + // Maximum number of results to return. Default: 100. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The first Composition to retrieve. This is used for pagination; see the nextToken + // response field. + 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 ListCompositionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCompositionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCompositionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCompositionsInput"} + if s.FilterByEncoderConfigurationArn != nil && len(*s.FilterByEncoderConfigurationArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FilterByEncoderConfigurationArn", 1)) + } + if s.FilterByStageArn != nil && len(*s.FilterByStageArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FilterByStageArn", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilterByEncoderConfigurationArn sets the FilterByEncoderConfigurationArn field's value. +func (s *ListCompositionsInput) SetFilterByEncoderConfigurationArn(v string) *ListCompositionsInput { + s.FilterByEncoderConfigurationArn = &v + return s +} + +// SetFilterByStageArn sets the FilterByStageArn field's value. +func (s *ListCompositionsInput) SetFilterByStageArn(v string) *ListCompositionsInput { + s.FilterByStageArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCompositionsInput) SetMaxResults(v int64) *ListCompositionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCompositionsInput) SetNextToken(v string) *ListCompositionsInput { + s.NextToken = &v + return s +} + +type ListCompositionsOutput struct { + _ struct{} `type:"structure"` + + // List of the matching Compositions (summary information only). + // + // Compositions is a required field + Compositions []*CompositionSummary `locationName:"compositions" type:"list" required:"true"` + + // If there are more compositions than maxResults, use nextToken in the request + // to get the next set. + 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 ListCompositionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCompositionsOutput) GoString() string { + return s.String() +} + +// SetCompositions sets the Compositions field's value. +func (s *ListCompositionsOutput) SetCompositions(v []*CompositionSummary) *ListCompositionsOutput { + s.Compositions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCompositionsOutput) SetNextToken(v string) *ListCompositionsOutput { + s.NextToken = &v + return s +} + +type ListEncoderConfigurationsInput struct { + _ struct{} `type:"structure"` + + // Maximum number of results to return. Default: 100. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The first encoder configuration to retrieve. This is used for pagination; + // see the nextToken response field. + 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 ListEncoderConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEncoderConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEncoderConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEncoderConfigurationsInput"} + 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 *ListEncoderConfigurationsInput) SetMaxResults(v int64) *ListEncoderConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEncoderConfigurationsInput) SetNextToken(v string) *ListEncoderConfigurationsInput { + s.NextToken = &v + return s +} + +type ListEncoderConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // List of the matching EncoderConfigurations (summary information only). + // + // EncoderConfigurations is a required field + EncoderConfigurations []*EncoderConfigurationSummary `locationName:"encoderConfigurations" type:"list" required:"true"` + + // If there are more encoder configurations than maxResults, use nextToken in + // the request to get the next set. + 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 ListEncoderConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEncoderConfigurationsOutput) GoString() string { + return s.String() +} + +// SetEncoderConfigurations sets the EncoderConfigurations field's value. +func (s *ListEncoderConfigurationsOutput) SetEncoderConfigurations(v []*EncoderConfigurationSummary) *ListEncoderConfigurationsOutput { + s.EncoderConfigurations = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEncoderConfigurationsOutput) SetNextToken(v string) *ListEncoderConfigurationsOutput { + s.NextToken = &v + return s +} + type ListParticipantEventsInput struct { _ struct{} `type:"structure"` // Maximum number of results to return. Default: 50. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The first participant to retrieve. This is used for pagination; see the nextToken - // response field. + // The first participant event to retrieve. This is used for pagination; see + // the nextToken response field. NextToken *string `locationName:"nextToken" type:"string"` // Unique identifier for this participant. This is assigned by IVS and returned @@ -2576,7 +5362,7 @@ // Events is a required field Events []*Event `locationName:"events" type:"list" required:"true"` - // If there are more rooms than maxResults, use nextToken in the request to + // If there are more events than maxResults, use nextToken in the request to // get the next set. NextToken *string `locationName:"nextToken" type:"string"` } @@ -2736,8 +5522,8 @@ type ListParticipantsOutput struct { _ struct{} `type:"structure"` - // If there are more rooms than maxResults, use nextToken in the request to - // get the next set. + // If there are more participants than maxResults, use nextToken in the request + // to get the next set. NextToken *string `locationName:"nextToken" type:"string"` // List of the matching participants (summary information only). @@ -2782,8 +5568,8 @@ // Maximum number of results to return. Default: 50. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The first stage to retrieve. This is used for pagination; see the nextToken - // response field. + // The first stage session to retrieve. This is used for pagination; see the + // nextToken response field. NextToken *string `locationName:"nextToken" type:"string"` // Stage ARN. @@ -2850,8 +5636,8 @@ type ListStageSessionsOutput struct { _ struct{} `type:"structure"` - // If there are more rooms than maxResults, use nextToken in the request to - // get the next set. + // If there are more stage sessions than maxResults, use nextToken in the request + // to get the next set. NextToken *string `locationName:"nextToken" type:"string"` // List of matching stage sessions. @@ -2947,7 +5733,7 @@ type ListStagesOutput struct { _ struct{} `type:"structure"` - // If there are more rooms than maxResults, use nextToken in the request to + // If there are more stages than maxResults, use nextToken in the request to // get the next set. NextToken *string `locationName:"nextToken" type:"string"` @@ -2987,6 +5773,104 @@ return s } +type ListStorageConfigurationsInput struct { + _ struct{} `type:"structure"` + + // Maximum number of storage configurations to return. Default: your service + // quota or 100, whichever is smaller. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The first storage configuration to retrieve. This is used for pagination; + // see the nextToken response field. + 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 ListStorageConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListStorageConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListStorageConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListStorageConfigurationsInput"} + 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 *ListStorageConfigurationsInput) SetMaxResults(v int64) *ListStorageConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListStorageConfigurationsInput) SetNextToken(v string) *ListStorageConfigurationsInput { + s.NextToken = &v + return s +} + +type ListStorageConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // If there are more storage configurations than maxResults, use nextToken in + // the request to get the next set. + NextToken *string `locationName:"nextToken" type:"string"` + + // List of the matching storage configurations. + // + // StorageConfigurations is a required field + StorageConfigurations []*StorageConfigurationSummary `locationName:"storageConfigurations" 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 ListStorageConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListStorageConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListStorageConfigurationsOutput) SetNextToken(v string) *ListStorageConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetStorageConfigurations sets the StorageConfigurations field's value. +func (s *ListStorageConfigurationsOutput) SetStorageConfigurations(v []*StorageConfigurationSummary) *ListStorageConfigurationsOutput { + s.StorageConfigurations = v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3081,16 +5965,34 @@ // information. Attributes map[string]*string `locationName:"attributes" type:"map"` + // The participant’s browser. + BrowserName *string `locationName:"browserName" type:"string"` + + // The participant’s browser version. + BrowserVersion *string `locationName:"browserVersion" type:"string"` + // ISO 8601 timestamp (returned as a string) when the participant first joined // the stage session. FirstJoinTime *time.Time `locationName:"firstJoinTime" type:"timestamp" timestampFormat:"iso8601"` + // The participant’s Internet Service Provider. + IspName *string `locationName:"ispName" type:"string"` + + // The participant’s operating system. + OsName *string `locationName:"osName" type:"string"` + + // The participant’s operating system version. + OsVersion *string `locationName:"osVersion" type:"string"` + // Unique identifier for this participant, assigned by IVS. ParticipantId *string `locationName:"participantId" type:"string"` // Whether the participant ever published to the stage session. Published *bool `locationName:"published" type:"boolean"` + // The participant’s SDK version. + SdkVersion *string `locationName:"sdkVersion" type:"string"` + // Whether the participant is connected to or disconnected from the stage. State *string `locationName:"state" type:"string" enum:"ParticipantState"` @@ -3125,12 +6027,42 @@ return s } +// SetBrowserName sets the BrowserName field's value. +func (s *Participant) SetBrowserName(v string) *Participant { + s.BrowserName = &v + return s +} + +// SetBrowserVersion sets the BrowserVersion field's value. +func (s *Participant) SetBrowserVersion(v string) *Participant { + s.BrowserVersion = &v + return s +} + // SetFirstJoinTime sets the FirstJoinTime field's value. func (s *Participant) SetFirstJoinTime(v time.Time) *Participant { s.FirstJoinTime = &v return s } +// SetIspName sets the IspName field's value. +func (s *Participant) SetIspName(v string) *Participant { + s.IspName = &v + return s +} + +// SetOsName sets the OsName field's value. +func (s *Participant) SetOsName(v string) *Participant { + s.OsName = &v + return s +} + +// SetOsVersion sets the OsVersion field's value. +func (s *Participant) SetOsVersion(v string) *Participant { + s.OsVersion = &v + return s +} + // SetParticipantId sets the ParticipantId field's value. func (s *Participant) SetParticipantId(v string) *Participant { s.ParticipantId = &v @@ -3143,6 +6075,12 @@ return s } +// SetSdkVersion sets the SdkVersion field's value. +func (s *Participant) SetSdkVersion(v string) *Participant { + s.SdkVersion = &v + return s +} + // SetState sets the State field's value. func (s *Participant) SetState(v string) *Participant { s.State = &v @@ -3472,6 +6410,38 @@ return s.RespMetadata.RequestID } +// An object representing a configuration to record a stage stream. +type RecordingConfiguration struct { + _ struct{} `type:"structure"` + + // The recording format for storing a recording in Amazon S3. + Format *string `locationName:"format" type:"string" enum:"RecordingConfigurationFormat"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecordingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecordingConfiguration) GoString() string { + return s.String() +} + +// SetFormat sets the Format field's value. +func (s *RecordingConfiguration) SetFormat(v string) *RecordingConfiguration { + s.Format = &v + return s +} + type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -3538,6 +6508,173 @@ return s.RespMetadata.RequestID } +// A complex type that describes an S3 location where recorded videos will be +// stored. +type S3DestinationConfiguration struct { + _ struct{} `type:"structure"` + + // ARNs of the EncoderConfiguration resource. The encoder configuration and + // stage resources must be in the same AWS account and region. + // + // EncoderConfigurationArns is a required field + EncoderConfigurationArns []*string `locationName:"encoderConfigurationArns" min:"1" type:"list" required:"true"` + + // Array of maps, each of the form string:string (key:value). This is an optional + // customer specification, currently used only to specify the recording format + // for storing a recording in Amazon S3. + RecordingConfiguration *RecordingConfiguration `locationName:"recordingConfiguration" type:"structure"` + + // ARN of the StorageConfiguration where recorded videos will be stored. + // + // StorageConfigurationArn is a required field + StorageConfigurationArn *string `locationName:"storageConfigurationArn" 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 S3DestinationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3DestinationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3DestinationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3DestinationConfiguration"} + if s.EncoderConfigurationArns == nil { + invalidParams.Add(request.NewErrParamRequired("EncoderConfigurationArns")) + } + if s.EncoderConfigurationArns != nil && len(s.EncoderConfigurationArns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EncoderConfigurationArns", 1)) + } + if s.StorageConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("StorageConfigurationArn")) + } + if s.StorageConfigurationArn != nil && len(*s.StorageConfigurationArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StorageConfigurationArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEncoderConfigurationArns sets the EncoderConfigurationArns field's value. +func (s *S3DestinationConfiguration) SetEncoderConfigurationArns(v []*string) *S3DestinationConfiguration { + s.EncoderConfigurationArns = v + return s +} + +// SetRecordingConfiguration sets the RecordingConfiguration field's value. +func (s *S3DestinationConfiguration) SetRecordingConfiguration(v *RecordingConfiguration) *S3DestinationConfiguration { + s.RecordingConfiguration = v + return s +} + +// SetStorageConfigurationArn sets the StorageConfigurationArn field's value. +func (s *S3DestinationConfiguration) SetStorageConfigurationArn(v string) *S3DestinationConfiguration { + s.StorageConfigurationArn = &v + return s +} + +// Complex data type that defines S3Detail objects. +type S3Detail struct { + _ struct{} `type:"structure"` + + // The S3 bucket prefix under which the recording is stored. + // + // RecordingPrefix is a required field + RecordingPrefix *string `locationName:"recordingPrefix" 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 S3Detail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Detail) GoString() string { + return s.String() +} + +// SetRecordingPrefix sets the RecordingPrefix field's value. +func (s *S3Detail) SetRecordingPrefix(v string) *S3Detail { + s.RecordingPrefix = &v + return s +} + +// A complex type that describes an S3 location where recorded videos will be +// stored. +type S3StorageConfiguration struct { + _ struct{} `type:"structure"` + + // Location (S3 bucket name) where recorded videos will be stored. Note that + // the StorageConfiguration and S3 bucket must be in the same region as the + // Composition. + // + // BucketName is a required field + BucketName *string `locationName:"bucketName" 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 S3StorageConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3StorageConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3StorageConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3StorageConfiguration"} + if s.BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("BucketName")) + } + if s.BucketName != nil && len(*s.BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketName sets the BucketName field's value. +func (s *S3StorageConfiguration) SetBucketName(v string) *S3StorageConfiguration { + s.BucketName = &v + return s +} + type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -3839,6 +6976,348 @@ return s } +type StartCompositionInput struct { + _ struct{} `type:"structure"` + + // Array of destination configuration. + // + // Destinations is a required field + Destinations []*DestinationConfiguration `locationName:"destinations" min:"1" type:"list" required:"true"` + + // Idempotency token. + IdempotencyToken *string `locationName:"idempotencyToken" min:"1" type:"string" idempotencyToken:"true"` + + // Layout object to configure composition parameters. + Layout *LayoutConfiguration `locationName:"layout" type:"structure"` + + // ARN of the stage to be used for compositing. + // + // StageArn is a required field + StageArn *string `locationName:"stageArn" min:"1" type:"string" required:"true"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartCompositionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartCompositionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartCompositionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartCompositionInput"} + if s.Destinations == nil { + invalidParams.Add(request.NewErrParamRequired("Destinations")) + } + if s.Destinations != nil && len(s.Destinations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Destinations", 1)) + } + if s.IdempotencyToken != nil && len(*s.IdempotencyToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdempotencyToken", 1)) + } + if s.StageArn == nil { + invalidParams.Add(request.NewErrParamRequired("StageArn")) + } + if s.StageArn != nil && len(*s.StageArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StageArn", 1)) + } + if s.Destinations != nil { + for i, v := range s.Destinations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Destinations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinations sets the Destinations field's value. +func (s *StartCompositionInput) SetDestinations(v []*DestinationConfiguration) *StartCompositionInput { + s.Destinations = v + return s +} + +// SetIdempotencyToken sets the IdempotencyToken field's value. +func (s *StartCompositionInput) SetIdempotencyToken(v string) *StartCompositionInput { + s.IdempotencyToken = &v + return s +} + +// SetLayout sets the Layout field's value. +func (s *StartCompositionInput) SetLayout(v *LayoutConfiguration) *StartCompositionInput { + s.Layout = v + return s +} + +// SetStageArn sets the StageArn field's value. +func (s *StartCompositionInput) SetStageArn(v string) *StartCompositionInput { + s.StageArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *StartCompositionInput) SetTags(v map[string]*string) *StartCompositionInput { + s.Tags = v + return s +} + +type StartCompositionOutput struct { + _ struct{} `type:"structure"` + + // The Composition that was created. + Composition *Composition `locationName:"composition" 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 StartCompositionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartCompositionOutput) GoString() string { + return s.String() +} + +// SetComposition sets the Composition field's value. +func (s *StartCompositionOutput) SetComposition(v *Composition) *StartCompositionOutput { + s.Composition = v + return s +} + +type StopCompositionInput struct { + _ struct{} `type:"structure"` + + // ARN of the Composition. + // + // Arn is a required field + Arn *string `locationName:"arn" 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 StopCompositionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopCompositionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopCompositionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopCompositionInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *StopCompositionInput) SetArn(v string) *StopCompositionInput { + s.Arn = &v + return s +} + +type StopCompositionOutput 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 StopCompositionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopCompositionOutput) GoString() string { + return s.String() +} + +// A complex type that describes a location where recorded videos will be stored. +type StorageConfiguration struct { + _ struct{} `type:"structure"` + + // ARN of the storage configuration. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // Name of the storage configuration. + Name *string `locationName:"name" type:"string"` + + // An S3 destination configuration where recorded videos will be stored. + S3 *S3StorageConfiguration `locationName:"s3" type:"structure"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfiguration) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *StorageConfiguration) SetArn(v string) *StorageConfiguration { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *StorageConfiguration) SetName(v string) *StorageConfiguration { + s.Name = &v + return s +} + +// SetS3 sets the S3 field's value. +func (s *StorageConfiguration) SetS3(v *S3StorageConfiguration) *StorageConfiguration { + s.S3 = v + return s +} + +// SetTags sets the Tags field's value. +func (s *StorageConfiguration) SetTags(v map[string]*string) *StorageConfiguration { + s.Tags = v + return s +} + +// Summary information about a storage configuration. +type StorageConfigurationSummary struct { + _ struct{} `type:"structure"` + + // ARN of the storage configuration. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // Name of the storage configuration. + Name *string `locationName:"name" type:"string"` + + // An S3 destination configuration where recorded videos will be stored. + S3 *S3StorageConfiguration `locationName:"s3" type:"structure"` + + // Tags attached to the resource. Array of maps, each of the form string:string + // (key:value). See Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // for details, including restrictions that apply to tags and "Tag naming limits + // and requirements"; Amazon IVS has no constraints on tags beyond what is documented + // there. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfigurationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageConfigurationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *StorageConfigurationSummary) SetArn(v string) *StorageConfigurationSummary { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *StorageConfigurationSummary) SetName(v string) *StorageConfigurationSummary { + s.Name = &v + return s +} + +// SetS3 sets the S3 field's value. +func (s *StorageConfigurationSummary) SetS3(v *S3StorageConfiguration) *StorageConfigurationSummary { + s.S3 = v + return s +} + +// SetTags sets the Tags field's value. +func (s *StorageConfigurationSummary) SetTags(v map[string]*string) *StorageConfigurationSummary { + s.Tags = v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -4173,6 +7652,151 @@ return s.RespMetadata.RequestID } +// Settings for video. +type Video struct { + _ struct{} `type:"structure"` + + // Bitrate for generated output, in bps. Default: 2500000. + Bitrate *int64 `locationName:"bitrate" min:"1" type:"integer"` + + // Video frame rate, in fps. Default: 30. + Framerate *float64 `locationName:"framerate" min:"1" type:"float"` + + // Video-resolution height. Note that the maximum value is determined by width + // times height, such that the maximum total pixels is 2073600 (1920x1080 or + // 1080x1920). Default: 720. + Height *int64 `locationName:"height" min:"1" type:"integer"` + + // Video-resolution width. Note that the maximum value is determined by width + // times height, such that the maximum total pixels is 2073600 (1920x1080 or + // 1080x1920). Default: 1280. + Width *int64 `locationName:"width" min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Video) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Video) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Video) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Video"} + if s.Bitrate != nil && *s.Bitrate < 1 { + invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1)) + } + if s.Framerate != nil && *s.Framerate < 1 { + invalidParams.Add(request.NewErrParamMinValue("Framerate", 1)) + } + if s.Height != nil && *s.Height < 1 { + invalidParams.Add(request.NewErrParamMinValue("Height", 1)) + } + if s.Width != nil && *s.Width < 1 { + invalidParams.Add(request.NewErrParamMinValue("Width", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBitrate sets the Bitrate field's value. +func (s *Video) SetBitrate(v int64) *Video { + s.Bitrate = &v + return s +} + +// SetFramerate sets the Framerate field's value. +func (s *Video) SetFramerate(v float64) *Video { + s.Framerate = &v + return s +} + +// SetHeight sets the Height field's value. +func (s *Video) SetHeight(v int64) *Video { + s.Height = &v + return s +} + +// SetWidth sets the Width field's value. +func (s *Video) SetWidth(v int64) *Video { + s.Width = &v + return s +} + +const ( + // CompositionStateStarting is a CompositionState enum value + CompositionStateStarting = "STARTING" + + // CompositionStateActive is a CompositionState enum value + CompositionStateActive = "ACTIVE" + + // CompositionStateStopping is a CompositionState enum value + CompositionStateStopping = "STOPPING" + + // CompositionStateFailed is a CompositionState enum value + CompositionStateFailed = "FAILED" + + // CompositionStateStopped is a CompositionState enum value + CompositionStateStopped = "STOPPED" +) + +// CompositionState_Values returns all elements of the CompositionState enum +func CompositionState_Values() []string { + return []string{ + CompositionStateStarting, + CompositionStateActive, + CompositionStateStopping, + CompositionStateFailed, + CompositionStateStopped, + } +} + +const ( + // DestinationStateStarting is a DestinationState enum value + DestinationStateStarting = "STARTING" + + // DestinationStateActive is a DestinationState enum value + DestinationStateActive = "ACTIVE" + + // DestinationStateStopping is a DestinationState enum value + DestinationStateStopping = "STOPPING" + + // DestinationStateReconnecting is a DestinationState enum value + DestinationStateReconnecting = "RECONNECTING" + + // DestinationStateFailed is a DestinationState enum value + DestinationStateFailed = "FAILED" + + // DestinationStateStopped is a DestinationState enum value + DestinationStateStopped = "STOPPED" +) + +// DestinationState_Values returns all elements of the DestinationState enum +func DestinationState_Values() []string { + return []string{ + DestinationStateStarting, + DestinationStateActive, + DestinationStateStopping, + DestinationStateReconnecting, + DestinationStateFailed, + DestinationStateStopped, + } +} + const ( // EventErrorCodeInsufficientCapabilities is a EventErrorCode enum value EventErrorCodeInsufficientCapabilities = "INSUFFICIENT_CAPABILITIES" @@ -4268,3 +7892,15 @@ ParticipantTokenCapabilitySubscribe, } } + +const ( + // RecordingConfigurationFormatHls is a RecordingConfigurationFormat enum value + RecordingConfigurationFormatHls = "HLS" +) + +// RecordingConfigurationFormat_Values returns all elements of the RecordingConfigurationFormat enum +func RecordingConfigurationFormat_Values() []string { + return []string{ + RecordingConfigurationFormatHls, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ivsrealtime/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/ivsrealtime/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ivsrealtime/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ivsrealtime/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -20,9 +20,16 @@ // - A participant object represents participants (people) in the stage and // contains information about them. When a token is created, it includes // a participant ID; when a participant uses that token to join a stage, -// the participant is associated with that participant ID There is a 1:1 +// the participant is associated with that participant ID. There is a 1:1 // mapping between participant tokens and participants. // +// - Server-side composition: The composition process composites participants +// of a stage into a single video and forwards it to a set of outputs (e.g., +// IVS channels). Composition endpoints support this process. +// +// - Server-side composition: A composition controls the look of the outputs, +// including how participants are positioned in the video. +// // # Resources // // The following resources contain information about your IVS live stream (see @@ -82,6 +89,49 @@ // // - UpdateStage — Updates a stage’s configuration. // +// Composition Endpoints +// +// - GetComposition — Gets information about the specified Composition +// resource. +// +// - ListCompositions — Gets summary information about all Compositions +// in your account, in the AWS region where the API request is processed. +// +// - StartComposition — Starts a Composition from a stage based on the +// configuration provided in the request. +// +// - StopComposition — Stops and deletes a Composition resource. Any broadcast +// from the Composition resource is stopped. +// +// EncoderConfiguration Endpoints +// +// - CreateEncoderConfiguration — Creates an EncoderConfiguration object. +// +// - DeleteEncoderConfiguration — Deletes an EncoderConfiguration resource. +// Ensures that no Compositions are using this template; otherwise, returns +// an error. +// +// - GetEncoderConfiguration — Gets information about the specified EncoderConfiguration +// resource. +// +// - ListEncoderConfigurations — Gets summary information about all EncoderConfigurations +// in your account, in the AWS region where the API request is processed. +// +// StorageConfiguration Endpoints +// +// - CreateStorageConfiguration — Creates a new storage configuration, +// used to enable recording to Amazon S3. +// +// - DeleteStorageConfiguration — Deletes the storage configuration for +// the specified ARN. +// +// - GetStorageConfiguration — Gets the storage configuration for the specified +// ARN. +// +// - ListStorageConfigurations — Gets summary information about all storage +// configurations in your account, in the AWS region where the API request +// is processed. +// // Tags Endpoints // // - ListTagsForResource — Gets information about AWS tags for the specified diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ivsrealtime/ivsrealtimeiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ivsrealtime/ivsrealtimeiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ivsrealtime/ivsrealtimeiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ivsrealtime/ivsrealtimeiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // Amazon Interactive Video Service RealTime. // func myFunc(svc ivsrealtimeiface.IVSRealTimeAPI) bool { -// // Make svc.CreateParticipantToken request +// // Make svc.CreateEncoderConfiguration request // } // // func main() { @@ -42,7 +42,7 @@ // type mockIVSRealTimeClient struct { // ivsrealtimeiface.IVSRealTimeAPI // } -// func (m *mockIVSRealTimeClient) CreateParticipantToken(input *ivsrealtime.CreateParticipantTokenInput) (*ivsrealtime.CreateParticipantTokenOutput, error) { +// func (m *mockIVSRealTimeClient) CreateEncoderConfiguration(input *ivsrealtime.CreateEncoderConfigurationInput) (*ivsrealtime.CreateEncoderConfigurationOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type IVSRealTimeAPI interface { + CreateEncoderConfiguration(*ivsrealtime.CreateEncoderConfigurationInput) (*ivsrealtime.CreateEncoderConfigurationOutput, error) + CreateEncoderConfigurationWithContext(aws.Context, *ivsrealtime.CreateEncoderConfigurationInput, ...request.Option) (*ivsrealtime.CreateEncoderConfigurationOutput, error) + CreateEncoderConfigurationRequest(*ivsrealtime.CreateEncoderConfigurationInput) (*request.Request, *ivsrealtime.CreateEncoderConfigurationOutput) + CreateParticipantToken(*ivsrealtime.CreateParticipantTokenInput) (*ivsrealtime.CreateParticipantTokenOutput, error) CreateParticipantTokenWithContext(aws.Context, *ivsrealtime.CreateParticipantTokenInput, ...request.Option) (*ivsrealtime.CreateParticipantTokenOutput, error) CreateParticipantTokenRequest(*ivsrealtime.CreateParticipantTokenInput) (*request.Request, *ivsrealtime.CreateParticipantTokenOutput) @@ -68,14 +72,34 @@ CreateStageWithContext(aws.Context, *ivsrealtime.CreateStageInput, ...request.Option) (*ivsrealtime.CreateStageOutput, error) CreateStageRequest(*ivsrealtime.CreateStageInput) (*request.Request, *ivsrealtime.CreateStageOutput) + CreateStorageConfiguration(*ivsrealtime.CreateStorageConfigurationInput) (*ivsrealtime.CreateStorageConfigurationOutput, error) + CreateStorageConfigurationWithContext(aws.Context, *ivsrealtime.CreateStorageConfigurationInput, ...request.Option) (*ivsrealtime.CreateStorageConfigurationOutput, error) + CreateStorageConfigurationRequest(*ivsrealtime.CreateStorageConfigurationInput) (*request.Request, *ivsrealtime.CreateStorageConfigurationOutput) + + DeleteEncoderConfiguration(*ivsrealtime.DeleteEncoderConfigurationInput) (*ivsrealtime.DeleteEncoderConfigurationOutput, error) + DeleteEncoderConfigurationWithContext(aws.Context, *ivsrealtime.DeleteEncoderConfigurationInput, ...request.Option) (*ivsrealtime.DeleteEncoderConfigurationOutput, error) + DeleteEncoderConfigurationRequest(*ivsrealtime.DeleteEncoderConfigurationInput) (*request.Request, *ivsrealtime.DeleteEncoderConfigurationOutput) + DeleteStage(*ivsrealtime.DeleteStageInput) (*ivsrealtime.DeleteStageOutput, error) DeleteStageWithContext(aws.Context, *ivsrealtime.DeleteStageInput, ...request.Option) (*ivsrealtime.DeleteStageOutput, error) DeleteStageRequest(*ivsrealtime.DeleteStageInput) (*request.Request, *ivsrealtime.DeleteStageOutput) + DeleteStorageConfiguration(*ivsrealtime.DeleteStorageConfigurationInput) (*ivsrealtime.DeleteStorageConfigurationOutput, error) + DeleteStorageConfigurationWithContext(aws.Context, *ivsrealtime.DeleteStorageConfigurationInput, ...request.Option) (*ivsrealtime.DeleteStorageConfigurationOutput, error) + DeleteStorageConfigurationRequest(*ivsrealtime.DeleteStorageConfigurationInput) (*request.Request, *ivsrealtime.DeleteStorageConfigurationOutput) + DisconnectParticipant(*ivsrealtime.DisconnectParticipantInput) (*ivsrealtime.DisconnectParticipantOutput, error) DisconnectParticipantWithContext(aws.Context, *ivsrealtime.DisconnectParticipantInput, ...request.Option) (*ivsrealtime.DisconnectParticipantOutput, error) DisconnectParticipantRequest(*ivsrealtime.DisconnectParticipantInput) (*request.Request, *ivsrealtime.DisconnectParticipantOutput) + GetComposition(*ivsrealtime.GetCompositionInput) (*ivsrealtime.GetCompositionOutput, error) + GetCompositionWithContext(aws.Context, *ivsrealtime.GetCompositionInput, ...request.Option) (*ivsrealtime.GetCompositionOutput, error) + GetCompositionRequest(*ivsrealtime.GetCompositionInput) (*request.Request, *ivsrealtime.GetCompositionOutput) + + GetEncoderConfiguration(*ivsrealtime.GetEncoderConfigurationInput) (*ivsrealtime.GetEncoderConfigurationOutput, error) + GetEncoderConfigurationWithContext(aws.Context, *ivsrealtime.GetEncoderConfigurationInput, ...request.Option) (*ivsrealtime.GetEncoderConfigurationOutput, error) + GetEncoderConfigurationRequest(*ivsrealtime.GetEncoderConfigurationInput) (*request.Request, *ivsrealtime.GetEncoderConfigurationOutput) + GetParticipant(*ivsrealtime.GetParticipantInput) (*ivsrealtime.GetParticipantOutput, error) GetParticipantWithContext(aws.Context, *ivsrealtime.GetParticipantInput, ...request.Option) (*ivsrealtime.GetParticipantOutput, error) GetParticipantRequest(*ivsrealtime.GetParticipantInput) (*request.Request, *ivsrealtime.GetParticipantOutput) @@ -88,6 +112,24 @@ GetStageSessionWithContext(aws.Context, *ivsrealtime.GetStageSessionInput, ...request.Option) (*ivsrealtime.GetStageSessionOutput, error) GetStageSessionRequest(*ivsrealtime.GetStageSessionInput) (*request.Request, *ivsrealtime.GetStageSessionOutput) + GetStorageConfiguration(*ivsrealtime.GetStorageConfigurationInput) (*ivsrealtime.GetStorageConfigurationOutput, error) + GetStorageConfigurationWithContext(aws.Context, *ivsrealtime.GetStorageConfigurationInput, ...request.Option) (*ivsrealtime.GetStorageConfigurationOutput, error) + GetStorageConfigurationRequest(*ivsrealtime.GetStorageConfigurationInput) (*request.Request, *ivsrealtime.GetStorageConfigurationOutput) + + ListCompositions(*ivsrealtime.ListCompositionsInput) (*ivsrealtime.ListCompositionsOutput, error) + ListCompositionsWithContext(aws.Context, *ivsrealtime.ListCompositionsInput, ...request.Option) (*ivsrealtime.ListCompositionsOutput, error) + ListCompositionsRequest(*ivsrealtime.ListCompositionsInput) (*request.Request, *ivsrealtime.ListCompositionsOutput) + + ListCompositionsPages(*ivsrealtime.ListCompositionsInput, func(*ivsrealtime.ListCompositionsOutput, bool) bool) error + ListCompositionsPagesWithContext(aws.Context, *ivsrealtime.ListCompositionsInput, func(*ivsrealtime.ListCompositionsOutput, bool) bool, ...request.Option) error + + ListEncoderConfigurations(*ivsrealtime.ListEncoderConfigurationsInput) (*ivsrealtime.ListEncoderConfigurationsOutput, error) + ListEncoderConfigurationsWithContext(aws.Context, *ivsrealtime.ListEncoderConfigurationsInput, ...request.Option) (*ivsrealtime.ListEncoderConfigurationsOutput, error) + ListEncoderConfigurationsRequest(*ivsrealtime.ListEncoderConfigurationsInput) (*request.Request, *ivsrealtime.ListEncoderConfigurationsOutput) + + ListEncoderConfigurationsPages(*ivsrealtime.ListEncoderConfigurationsInput, func(*ivsrealtime.ListEncoderConfigurationsOutput, bool) bool) error + ListEncoderConfigurationsPagesWithContext(aws.Context, *ivsrealtime.ListEncoderConfigurationsInput, func(*ivsrealtime.ListEncoderConfigurationsOutput, bool) bool, ...request.Option) error + ListParticipantEvents(*ivsrealtime.ListParticipantEventsInput) (*ivsrealtime.ListParticipantEventsOutput, error) ListParticipantEventsWithContext(aws.Context, *ivsrealtime.ListParticipantEventsInput, ...request.Option) (*ivsrealtime.ListParticipantEventsOutput, error) ListParticipantEventsRequest(*ivsrealtime.ListParticipantEventsInput) (*request.Request, *ivsrealtime.ListParticipantEventsOutput) @@ -116,10 +158,25 @@ ListStagesPages(*ivsrealtime.ListStagesInput, func(*ivsrealtime.ListStagesOutput, bool) bool) error ListStagesPagesWithContext(aws.Context, *ivsrealtime.ListStagesInput, func(*ivsrealtime.ListStagesOutput, bool) bool, ...request.Option) error + ListStorageConfigurations(*ivsrealtime.ListStorageConfigurationsInput) (*ivsrealtime.ListStorageConfigurationsOutput, error) + ListStorageConfigurationsWithContext(aws.Context, *ivsrealtime.ListStorageConfigurationsInput, ...request.Option) (*ivsrealtime.ListStorageConfigurationsOutput, error) + ListStorageConfigurationsRequest(*ivsrealtime.ListStorageConfigurationsInput) (*request.Request, *ivsrealtime.ListStorageConfigurationsOutput) + + ListStorageConfigurationsPages(*ivsrealtime.ListStorageConfigurationsInput, func(*ivsrealtime.ListStorageConfigurationsOutput, bool) bool) error + ListStorageConfigurationsPagesWithContext(aws.Context, *ivsrealtime.ListStorageConfigurationsInput, func(*ivsrealtime.ListStorageConfigurationsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*ivsrealtime.ListTagsForResourceInput) (*ivsrealtime.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *ivsrealtime.ListTagsForResourceInput, ...request.Option) (*ivsrealtime.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*ivsrealtime.ListTagsForResourceInput) (*request.Request, *ivsrealtime.ListTagsForResourceOutput) + StartComposition(*ivsrealtime.StartCompositionInput) (*ivsrealtime.StartCompositionOutput, error) + StartCompositionWithContext(aws.Context, *ivsrealtime.StartCompositionInput, ...request.Option) (*ivsrealtime.StartCompositionOutput, error) + StartCompositionRequest(*ivsrealtime.StartCompositionInput) (*request.Request, *ivsrealtime.StartCompositionOutput) + + StopComposition(*ivsrealtime.StopCompositionInput) (*ivsrealtime.StopCompositionOutput, error) + StopCompositionWithContext(aws.Context, *ivsrealtime.StopCompositionInput, ...request.Option) (*ivsrealtime.StopCompositionOutput, error) + StopCompositionRequest(*ivsrealtime.StopCompositionInput) (*request.Request, *ivsrealtime.StopCompositionOutput) + TagResource(*ivsrealtime.TagResourceInput) (*ivsrealtime.TagResourceOutput, error) TagResourceWithContext(aws.Context, *ivsrealtime.TagResourceInput, ...request.Option) (*ivsrealtime.TagResourceOutput, error) TagResourceRequest(*ivsrealtime.TagResourceInput) (*request.Request, *ivsrealtime.TagResourceOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/kafka/api.go golang-github-aws-aws-sdk-go-1.48.14/service/kafka/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/kafka/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/kafka/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -499,6 +499,106 @@ return out, req.Send() } +const opCreateReplicator = "CreateReplicator" + +// CreateReplicatorRequest generates a "aws/request.Request" representing the +// client's request for the CreateReplicator 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 CreateReplicator for more information on using the CreateReplicator +// 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 CreateReplicatorRequest method. +// req, resp := client.CreateReplicatorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/CreateReplicator +func (c *Kafka) CreateReplicatorRequest(input *CreateReplicatorInput) (req *request.Request, output *CreateReplicatorOutput) { + op := &request.Operation{ + Name: opCreateReplicator, + HTTPMethod: "POST", + HTTPPath: "/replication/v1/replicators", + } + + if input == nil { + input = &CreateReplicatorInput{} + } + + output = &CreateReplicatorOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateReplicator API operation for Managed Streaming for Kafka. +// +// Creates a new Kafka Replicator. +// +// 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 Managed Streaming for Kafka's +// API operation CreateReplicator for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Returns information about an error. +// +// - UnauthorizedException +// Returns information about an error. +// +// - InternalServerErrorException +// Returns information about an error. +// +// - ForbiddenException +// Returns information about an error. +// +// - NotFoundException +// Returns information about an error. +// +// - ServiceUnavailableException +// Returns information about an error. +// +// - TooManyRequestsException +// Returns information about an error. +// +// - ConflictException +// Returns information about an error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/CreateReplicator +func (c *Kafka) CreateReplicator(input *CreateReplicatorInput) (*CreateReplicatorOutput, error) { + req, out := c.CreateReplicatorRequest(input) + return out, req.Send() +} + +// CreateReplicatorWithContext is the same as CreateReplicator with the addition of +// the ability to pass a context and additional request options. +// +// See CreateReplicator 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 *Kafka) CreateReplicatorWithContext(ctx aws.Context, input *CreateReplicatorInput, opts ...request.Option) (*CreateReplicatorOutput, error) { + req, out := c.CreateReplicatorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateVpcConnection = "CreateVpcConnection" // CreateVpcConnectionRequest generates a "aws/request.Request" representing the @@ -867,6 +967,103 @@ return out, req.Send() } +const opDeleteReplicator = "DeleteReplicator" + +// DeleteReplicatorRequest generates a "aws/request.Request" representing the +// client's request for the DeleteReplicator 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 DeleteReplicator for more information on using the DeleteReplicator +// 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 DeleteReplicatorRequest method. +// req, resp := client.DeleteReplicatorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/DeleteReplicator +func (c *Kafka) DeleteReplicatorRequest(input *DeleteReplicatorInput) (req *request.Request, output *DeleteReplicatorOutput) { + op := &request.Operation{ + Name: opDeleteReplicator, + HTTPMethod: "DELETE", + HTTPPath: "/replication/v1/replicators/{replicatorArn}", + } + + if input == nil { + input = &DeleteReplicatorInput{} + } + + output = &DeleteReplicatorOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteReplicator API operation for Managed Streaming for Kafka. +// +// Deletes a replicator. +// +// 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 Managed Streaming for Kafka's +// API operation DeleteReplicator for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Returns information about an error. +// +// - UnauthorizedException +// Returns information about an error. +// +// - InternalServerErrorException +// Returns information about an error. +// +// - ForbiddenException +// Returns information about an error. +// +// - NotFoundException +// Returns information about an error. +// +// - ServiceUnavailableException +// Returns information about an error. +// +// - TooManyRequestsException +// Returns information about an error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/DeleteReplicator +func (c *Kafka) DeleteReplicator(input *DeleteReplicatorInput) (*DeleteReplicatorOutput, error) { + req, out := c.DeleteReplicatorRequest(input) + return out, req.Send() +} + +// DeleteReplicatorWithContext is the same as DeleteReplicator with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteReplicator 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 *Kafka) DeleteReplicatorWithContext(ctx aws.Context, input *DeleteReplicatorInput, opts ...request.Option) (*DeleteReplicatorOutput, error) { + req, out := c.DeleteReplicatorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteVpcConnection = "DeleteVpcConnection" // DeleteVpcConnectionRequest generates a "aws/request.Request" representing the @@ -1515,6 +1712,104 @@ return out, req.Send() } +const opDescribeReplicator = "DescribeReplicator" + +// DescribeReplicatorRequest generates a "aws/request.Request" representing the +// client's request for the DescribeReplicator 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 DescribeReplicator for more information on using the DescribeReplicator +// 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 DescribeReplicatorRequest method. +// req, resp := client.DescribeReplicatorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/DescribeReplicator +func (c *Kafka) DescribeReplicatorRequest(input *DescribeReplicatorInput) (req *request.Request, output *DescribeReplicatorOutput) { + op := &request.Operation{ + Name: opDescribeReplicator, + HTTPMethod: "GET", + HTTPPath: "/replication/v1/replicators/{replicatorArn}", + } + + if input == nil { + input = &DescribeReplicatorInput{} + } + + output = &DescribeReplicatorOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeReplicator API operation for Managed Streaming for Kafka. +// +// Returns a description of the Kafka Replicator whose Amazon Resource Name +// (ARN) is specified in the request. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Managed Streaming for Kafka's +// API operation DescribeReplicator for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Returns information about an error. +// +// - UnauthorizedException +// Returns information about an error. +// +// - InternalServerErrorException +// Returns information about an error. +// +// - ForbiddenException +// Returns information about an error. +// +// - NotFoundException +// Returns information about an error. +// +// - ServiceUnavailableException +// Returns information about an error. +// +// - TooManyRequestsException +// Returns information about an error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/DescribeReplicator +func (c *Kafka) DescribeReplicator(input *DescribeReplicatorInput) (*DescribeReplicatorOutput, error) { + req, out := c.DescribeReplicatorRequest(input) + return out, req.Send() +} + +// DescribeReplicatorWithContext is the same as DescribeReplicator with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeReplicator 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 *Kafka) DescribeReplicatorWithContext(ctx aws.Context, input *DescribeReplicatorInput, opts ...request.Option) (*DescribeReplicatorOutput, error) { + req, out := c.DescribeReplicatorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeVpcConnection = "DescribeVpcConnection" // DescribeVpcConnectionRequest generates a "aws/request.Request" representing the @@ -3216,6 +3511,160 @@ return p.Err() } +const opListReplicators = "ListReplicators" + +// ListReplicatorsRequest generates a "aws/request.Request" representing the +// client's request for the ListReplicators 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 ListReplicators for more information on using the ListReplicators +// 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 ListReplicatorsRequest method. +// req, resp := client.ListReplicatorsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ListReplicators +func (c *Kafka) ListReplicatorsRequest(input *ListReplicatorsInput) (req *request.Request, output *ListReplicatorsOutput) { + op := &request.Operation{ + Name: opListReplicators, + HTTPMethod: "GET", + HTTPPath: "/replication/v1/replicators", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListReplicatorsInput{} + } + + output = &ListReplicatorsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListReplicators API operation for Managed Streaming for Kafka. +// +// Lists the replicators. +// +// 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 Managed Streaming for Kafka's +// API operation ListReplicators for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Returns information about an error. +// +// - UnauthorizedException +// Returns information about an error. +// +// - InternalServerErrorException +// Returns information about an error. +// +// - ForbiddenException +// Returns information about an error. +// +// - NotFoundException +// Returns information about an error. +// +// - ServiceUnavailableException +// Returns information about an error. +// +// - TooManyRequestsException +// Returns information about an error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ListReplicators +func (c *Kafka) ListReplicators(input *ListReplicatorsInput) (*ListReplicatorsOutput, error) { + req, out := c.ListReplicatorsRequest(input) + return out, req.Send() +} + +// ListReplicatorsWithContext is the same as ListReplicators with the addition of +// the ability to pass a context and additional request options. +// +// See ListReplicators 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 *Kafka) ListReplicatorsWithContext(ctx aws.Context, input *ListReplicatorsInput, opts ...request.Option) (*ListReplicatorsOutput, error) { + req, out := c.ListReplicatorsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListReplicatorsPages iterates over the pages of a ListReplicators operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListReplicators 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 ListReplicators operation. +// pageNum := 0 +// err := client.ListReplicatorsPages(params, +// func(page *kafka.ListReplicatorsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Kafka) ListReplicatorsPages(input *ListReplicatorsInput, fn func(*ListReplicatorsOutput, bool) bool) error { + return c.ListReplicatorsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListReplicatorsPagesWithContext same as ListReplicatorsPages 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 *Kafka) ListReplicatorsPagesWithContext(ctx aws.Context, input *ListReplicatorsInput, fn func(*ListReplicatorsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListReplicatorsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListReplicatorsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListReplicatorsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListScramSecrets = "ListScramSecrets" // ListScramSecretsRequest generates a "aws/request.Request" representing the @@ -4809,6 +5258,103 @@ return out, req.Send() } +const opUpdateReplicationInfo = "UpdateReplicationInfo" + +// UpdateReplicationInfoRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReplicationInfo 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 UpdateReplicationInfo for more information on using the UpdateReplicationInfo +// 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 UpdateReplicationInfoRequest method. +// req, resp := client.UpdateReplicationInfoRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/UpdateReplicationInfo +func (c *Kafka) UpdateReplicationInfoRequest(input *UpdateReplicationInfoInput) (req *request.Request, output *UpdateReplicationInfoOutput) { + op := &request.Operation{ + Name: opUpdateReplicationInfo, + HTTPMethod: "PUT", + HTTPPath: "/replication/v1/replicators/{replicatorArn}/replication-info", + } + + if input == nil { + input = &UpdateReplicationInfoInput{} + } + + output = &UpdateReplicationInfoOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReplicationInfo API operation for Managed Streaming for Kafka. +// +// Updates replication info of a replicator. +// +// 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 Managed Streaming for Kafka's +// API operation UpdateReplicationInfo for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Returns information about an error. +// +// - UnauthorizedException +// Returns information about an error. +// +// - InternalServerErrorException +// Returns information about an error. +// +// - ForbiddenException +// Returns information about an error. +// +// - NotFoundException +// Returns information about an error. +// +// - ServiceUnavailableException +// Returns information about an error. +// +// - TooManyRequestsException +// Returns information about an error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/UpdateReplicationInfo +func (c *Kafka) UpdateReplicationInfo(input *UpdateReplicationInfoInput) (*UpdateReplicationInfoOutput, error) { + req, out := c.UpdateReplicationInfoRequest(input) + return out, req.Send() +} + +// UpdateReplicationInfoWithContext is the same as UpdateReplicationInfo with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReplicationInfo 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 *Kafka) UpdateReplicationInfoWithContext(ctx aws.Context, input *UpdateReplicationInfoInput, opts ...request.Option) (*UpdateReplicationInfoOutput, error) { + req, out := c.UpdateReplicationInfoRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSecurity = "UpdateSecurity" // UpdateSecurityRequest generates a "aws/request.Request" representing the @@ -5004,6 +5550,53 @@ return out, req.Send() } +// Details of an Amazon MSK Cluster. +type AmazonMskCluster struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an Amazon MSK cluster. + // + // MskClusterArn is a required field + MskClusterArn *string `locationName:"mskClusterArn" 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 AmazonMskCluster) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmazonMskCluster) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmazonMskCluster) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmazonMskCluster"} + if s.MskClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("MskClusterArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMskClusterArn sets the MskClusterArn field's value. +func (s *AmazonMskCluster) SetMskClusterArn(v string) *AmazonMskCluster { + s.MskClusterArn = &v + return s +} + // Returns information about an error. type BadRequestException struct { _ struct{} `type:"structure"` @@ -5993,6 +6586,9 @@ // version is KTVPDKIKX0DER. CurrentVersion *string `locationName:"currentVersion" type:"string"` + // Determines if there is an action required from the customer. + CustomerActionStatus *string `locationName:"customerActionStatus" type:"string" enum:"CustomerActionStatus"` + // Includes all encryption-related information. EncryptionInfo *EncryptionInfo `locationName:"encryptionInfo" type:"structure"` @@ -6099,6 +6695,12 @@ return s } +// SetCustomerActionStatus sets the CustomerActionStatus field's value. +func (s *ClusterInfo) SetCustomerActionStatus(v string) *ClusterInfo { + s.CustomerActionStatus = &v + return s +} + // SetEncryptionInfo sets the EncryptionInfo field's value. func (s *ClusterInfo) SetEncryptionInfo(v *EncryptionInfo) *ClusterInfo { s.EncryptionInfo = v @@ -7003,6 +7605,173 @@ return s } +// Details about consumer group replication. +type ConsumerGroupReplication struct { + _ struct{} `type:"structure"` + + // List of regular expression patterns indicating the consumer groups that should + // not be replicated. + ConsumerGroupsToExclude []*string `locationName:"consumerGroupsToExclude" type:"list"` + + // List of regular expression patterns indicating the consumer groups to copy. + // + // ConsumerGroupsToReplicate is a required field + ConsumerGroupsToReplicate []*string `locationName:"consumerGroupsToReplicate" type:"list" required:"true"` + + // Enables synchronization of consumer groups to target cluster. + DetectAndCopyNewConsumerGroups *bool `locationName:"detectAndCopyNewConsumerGroups" type:"boolean"` + + // Enables synchronization of consumer group offsets to target cluster. The + // translated offsets will be written to topic __consumer_offsets. + SynchroniseConsumerGroupOffsets *bool `locationName:"synchroniseConsumerGroupOffsets" 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 ConsumerGroupReplication) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConsumerGroupReplication) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConsumerGroupReplication) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConsumerGroupReplication"} + if s.ConsumerGroupsToReplicate == nil { + invalidParams.Add(request.NewErrParamRequired("ConsumerGroupsToReplicate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConsumerGroupsToExclude sets the ConsumerGroupsToExclude field's value. +func (s *ConsumerGroupReplication) SetConsumerGroupsToExclude(v []*string) *ConsumerGroupReplication { + s.ConsumerGroupsToExclude = v + return s +} + +// SetConsumerGroupsToReplicate sets the ConsumerGroupsToReplicate field's value. +func (s *ConsumerGroupReplication) SetConsumerGroupsToReplicate(v []*string) *ConsumerGroupReplication { + s.ConsumerGroupsToReplicate = v + return s +} + +// SetDetectAndCopyNewConsumerGroups sets the DetectAndCopyNewConsumerGroups field's value. +func (s *ConsumerGroupReplication) SetDetectAndCopyNewConsumerGroups(v bool) *ConsumerGroupReplication { + s.DetectAndCopyNewConsumerGroups = &v + return s +} + +// SetSynchroniseConsumerGroupOffsets sets the SynchroniseConsumerGroupOffsets field's value. +func (s *ConsumerGroupReplication) SetSynchroniseConsumerGroupOffsets(v bool) *ConsumerGroupReplication { + s.SynchroniseConsumerGroupOffsets = &v + return s +} + +// Details about consumer group replication. +type ConsumerGroupReplicationUpdate struct { + _ struct{} `type:"structure"` + + // List of regular expression patterns indicating the consumer groups that should + // not be replicated. + // + // ConsumerGroupsToExclude is a required field + ConsumerGroupsToExclude []*string `locationName:"consumerGroupsToExclude" type:"list" required:"true"` + + // List of regular expression patterns indicating the consumer groups to copy. + // + // ConsumerGroupsToReplicate is a required field + ConsumerGroupsToReplicate []*string `locationName:"consumerGroupsToReplicate" type:"list" required:"true"` + + // Enables synchronization of consumer groups to target cluster. + // + // DetectAndCopyNewConsumerGroups is a required field + DetectAndCopyNewConsumerGroups *bool `locationName:"detectAndCopyNewConsumerGroups" type:"boolean" required:"true"` + + // Enables synchronization of consumer group offsets to target cluster. The + // translated offsets will be written to topic __consumer_offsets. + // + // SynchroniseConsumerGroupOffsets is a required field + SynchroniseConsumerGroupOffsets *bool `locationName:"synchroniseConsumerGroupOffsets" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConsumerGroupReplicationUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConsumerGroupReplicationUpdate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConsumerGroupReplicationUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConsumerGroupReplicationUpdate"} + if s.ConsumerGroupsToExclude == nil { + invalidParams.Add(request.NewErrParamRequired("ConsumerGroupsToExclude")) + } + if s.ConsumerGroupsToReplicate == nil { + invalidParams.Add(request.NewErrParamRequired("ConsumerGroupsToReplicate")) + } + if s.DetectAndCopyNewConsumerGroups == nil { + invalidParams.Add(request.NewErrParamRequired("DetectAndCopyNewConsumerGroups")) + } + if s.SynchroniseConsumerGroupOffsets == nil { + invalidParams.Add(request.NewErrParamRequired("SynchroniseConsumerGroupOffsets")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConsumerGroupsToExclude sets the ConsumerGroupsToExclude field's value. +func (s *ConsumerGroupReplicationUpdate) SetConsumerGroupsToExclude(v []*string) *ConsumerGroupReplicationUpdate { + s.ConsumerGroupsToExclude = v + return s +} + +// SetConsumerGroupsToReplicate sets the ConsumerGroupsToReplicate field's value. +func (s *ConsumerGroupReplicationUpdate) SetConsumerGroupsToReplicate(v []*string) *ConsumerGroupReplicationUpdate { + s.ConsumerGroupsToReplicate = v + return s +} + +// SetDetectAndCopyNewConsumerGroups sets the DetectAndCopyNewConsumerGroups field's value. +func (s *ConsumerGroupReplicationUpdate) SetDetectAndCopyNewConsumerGroups(v bool) *ConsumerGroupReplicationUpdate { + s.DetectAndCopyNewConsumerGroups = &v + return s +} + +// SetSynchroniseConsumerGroupOffsets sets the SynchroniseConsumerGroupOffsets field's value. +func (s *ConsumerGroupReplicationUpdate) SetSynchroniseConsumerGroupOffsets(v bool) *ConsumerGroupReplicationUpdate { + s.SynchroniseConsumerGroupOffsets = &v + return s +} + // Creates a cluster. type CreateClusterInput struct { _ struct{} `type:"structure"` @@ -7543,6 +8312,188 @@ return s } +// Request body for replicator. +type CreateReplicatorInput struct { + _ struct{} `type:"structure"` + + // A summary description of the replicator. + Description *string `locationName:"description" type:"string"` + + // Kafka Clusters to use in setting up sources / targets for replication. + // + // KafkaClusters is a required field + KafkaClusters []*KafkaCluster `locationName:"kafkaClusters" type:"list" required:"true"` + + // A list of replication configurations, where each configuration targets a + // given source cluster to target cluster replication flow. + // + // ReplicationInfoList is a required field + ReplicationInfoList []*ReplicationInfo `locationName:"replicationInfoList" type:"list" required:"true"` + + // The name of the replicator. Alpha-numeric characters with '-' are allowed. + // + // ReplicatorName is a required field + ReplicatorName *string `locationName:"replicatorName" min:"1" type:"string" required:"true"` + + // The ARN of the IAM role used by the replicator to access resources in the + // customer's account (e.g source and target clusters) + // + // ServiceExecutionRoleArn is a required field + ServiceExecutionRoleArn *string `locationName:"serviceExecutionRoleArn" type:"string" required:"true"` + + // List of tags to attach to created Replicator. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReplicatorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReplicatorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateReplicatorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateReplicatorInput"} + if s.KafkaClusters == nil { + invalidParams.Add(request.NewErrParamRequired("KafkaClusters")) + } + if s.ReplicationInfoList == nil { + invalidParams.Add(request.NewErrParamRequired("ReplicationInfoList")) + } + if s.ReplicatorName == nil { + invalidParams.Add(request.NewErrParamRequired("ReplicatorName")) + } + if s.ReplicatorName != nil && len(*s.ReplicatorName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReplicatorName", 1)) + } + if s.ServiceExecutionRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceExecutionRoleArn")) + } + if s.KafkaClusters != nil { + for i, v := range s.KafkaClusters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "KafkaClusters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.ReplicationInfoList != nil { + for i, v := range s.ReplicationInfoList { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ReplicationInfoList", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateReplicatorInput) SetDescription(v string) *CreateReplicatorInput { + s.Description = &v + return s +} + +// SetKafkaClusters sets the KafkaClusters field's value. +func (s *CreateReplicatorInput) SetKafkaClusters(v []*KafkaCluster) *CreateReplicatorInput { + s.KafkaClusters = v + return s +} + +// SetReplicationInfoList sets the ReplicationInfoList field's value. +func (s *CreateReplicatorInput) SetReplicationInfoList(v []*ReplicationInfo) *CreateReplicatorInput { + s.ReplicationInfoList = v + return s +} + +// SetReplicatorName sets the ReplicatorName field's value. +func (s *CreateReplicatorInput) SetReplicatorName(v string) *CreateReplicatorInput { + s.ReplicatorName = &v + return s +} + +// SetServiceExecutionRoleArn sets the ServiceExecutionRoleArn field's value. +func (s *CreateReplicatorInput) SetServiceExecutionRoleArn(v string) *CreateReplicatorInput { + s.ServiceExecutionRoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateReplicatorInput) SetTags(v map[string]*string) *CreateReplicatorInput { + s.Tags = v + return s +} + +// Returns information about the created replicator. +type CreateReplicatorOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the replicator. + ReplicatorArn *string `locationName:"replicatorArn" type:"string"` + + // Name of the replicator provided by the customer. + ReplicatorName *string `locationName:"replicatorName" type:"string"` + + // State of the replicator. + ReplicatorState *string `locationName:"replicatorState" type:"string" enum:"ReplicatorState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReplicatorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReplicatorOutput) GoString() string { + return s.String() +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *CreateReplicatorOutput) SetReplicatorArn(v string) *CreateReplicatorOutput { + s.ReplicatorArn = &v + return s +} + +// SetReplicatorName sets the ReplicatorName field's value. +func (s *CreateReplicatorOutput) SetReplicatorName(v string) *CreateReplicatorOutput { + s.ReplicatorName = &v + return s +} + +// SetReplicatorState sets the ReplicatorState field's value. +func (s *CreateReplicatorOutput) SetReplicatorState(v string) *CreateReplicatorOutput { + s.ReplicatorState = &v + return s +} + // Request body for CreateVpcConnection. type CreateVpcConnectionInput struct { _ struct{} `type:"structure"` @@ -8007,6 +8958,102 @@ return s } +type DeleteReplicatorInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + CurrentVersion *string `location:"querystring" locationName:"currentVersion" type:"string"` + + // ReplicatorArn is a required field + ReplicatorArn *string `location:"uri" locationName:"replicatorArn" 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 DeleteReplicatorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReplicatorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteReplicatorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteReplicatorInput"} + if s.ReplicatorArn == nil { + invalidParams.Add(request.NewErrParamRequired("ReplicatorArn")) + } + if s.ReplicatorArn != nil && len(*s.ReplicatorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReplicatorArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *DeleteReplicatorInput) SetCurrentVersion(v string) *DeleteReplicatorInput { + s.CurrentVersion = &v + return s +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *DeleteReplicatorInput) SetReplicatorArn(v string) *DeleteReplicatorInput { + s.ReplicatorArn = &v + return s +} + +// Returns information about the deleted replicator. +type DeleteReplicatorOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the replicator. + ReplicatorArn *string `locationName:"replicatorArn" type:"string"` + + // The state of the replicator. + ReplicatorState *string `locationName:"replicatorState" type:"string" enum:"ReplicatorState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReplicatorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReplicatorOutput) GoString() string { + return s.String() +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *DeleteReplicatorOutput) SetReplicatorArn(v string) *DeleteReplicatorOutput { + s.ReplicatorArn = &v + return s +} + +// SetReplicatorState sets the ReplicatorState field's value. +func (s *DeleteReplicatorOutput) SetReplicatorState(v string) *DeleteReplicatorOutput { + s.ReplicatorState = &v + return s +} + // Request body for DeleteVpcConnection. type DeleteVpcConnectionInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -8675,6 +9722,196 @@ return s } +type DescribeReplicatorInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // ReplicatorArn is a required field + ReplicatorArn *string `location:"uri" locationName:"replicatorArn" 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 DescribeReplicatorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeReplicatorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeReplicatorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeReplicatorInput"} + if s.ReplicatorArn == nil { + invalidParams.Add(request.NewErrParamRequired("ReplicatorArn")) + } + if s.ReplicatorArn != nil && len(*s.ReplicatorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReplicatorArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *DescribeReplicatorInput) SetReplicatorArn(v string) *DescribeReplicatorInput { + s.ReplicatorArn = &v + return s +} + +// Response body for DescribeReplicator. +type DescribeReplicatorOutput struct { + _ struct{} `type:"structure"` + + // The time when the replicator was created. + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601"` + + // The current version number of the replicator. + CurrentVersion *string `locationName:"currentVersion" type:"string"` + + // Whether this resource is a replicator reference. + IsReplicatorReference *bool `locationName:"isReplicatorReference" type:"boolean"` + + // Kafka Clusters used in setting up sources / targets for replication. + KafkaClusters []*KafkaClusterDescription `locationName:"kafkaClusters" type:"list"` + + // A list of replication configurations, where each configuration targets a + // given source cluster to target cluster replication flow. + ReplicationInfoList []*ReplicationInfoDescription `locationName:"replicationInfoList" type:"list"` + + // The Amazon Resource Name (ARN) of the replicator. + ReplicatorArn *string `locationName:"replicatorArn" type:"string"` + + // The description of the replicator. + ReplicatorDescription *string `locationName:"replicatorDescription" type:"string"` + + // The name of the replicator. + ReplicatorName *string `locationName:"replicatorName" type:"string"` + + // The Amazon Resource Name (ARN) of the replicator resource in the region where + // the replicator was created. + ReplicatorResourceArn *string `locationName:"replicatorResourceArn" type:"string"` + + // State of the replicator. + ReplicatorState *string `locationName:"replicatorState" type:"string" enum:"ReplicatorState"` + + // The Amazon Resource Name (ARN) of the IAM role used by the replicator to + // access resources in the customer's account (e.g source and target clusters) + ServiceExecutionRoleArn *string `locationName:"serviceExecutionRoleArn" type:"string"` + + // Details about the state of the replicator. + StateInfo *ReplicationStateInfo `locationName:"stateInfo" type:"structure"` + + // List of tags attached to the Replicator. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeReplicatorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeReplicatorOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *DescribeReplicatorOutput) SetCreationTime(v time.Time) *DescribeReplicatorOutput { + s.CreationTime = &v + return s +} + +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *DescribeReplicatorOutput) SetCurrentVersion(v string) *DescribeReplicatorOutput { + s.CurrentVersion = &v + return s +} + +// SetIsReplicatorReference sets the IsReplicatorReference field's value. +func (s *DescribeReplicatorOutput) SetIsReplicatorReference(v bool) *DescribeReplicatorOutput { + s.IsReplicatorReference = &v + return s +} + +// SetKafkaClusters sets the KafkaClusters field's value. +func (s *DescribeReplicatorOutput) SetKafkaClusters(v []*KafkaClusterDescription) *DescribeReplicatorOutput { + s.KafkaClusters = v + return s +} + +// SetReplicationInfoList sets the ReplicationInfoList field's value. +func (s *DescribeReplicatorOutput) SetReplicationInfoList(v []*ReplicationInfoDescription) *DescribeReplicatorOutput { + s.ReplicationInfoList = v + return s +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *DescribeReplicatorOutput) SetReplicatorArn(v string) *DescribeReplicatorOutput { + s.ReplicatorArn = &v + return s +} + +// SetReplicatorDescription sets the ReplicatorDescription field's value. +func (s *DescribeReplicatorOutput) SetReplicatorDescription(v string) *DescribeReplicatorOutput { + s.ReplicatorDescription = &v + return s +} + +// SetReplicatorName sets the ReplicatorName field's value. +func (s *DescribeReplicatorOutput) SetReplicatorName(v string) *DescribeReplicatorOutput { + s.ReplicatorName = &v + return s +} + +// SetReplicatorResourceArn sets the ReplicatorResourceArn field's value. +func (s *DescribeReplicatorOutput) SetReplicatorResourceArn(v string) *DescribeReplicatorOutput { + s.ReplicatorResourceArn = &v + return s +} + +// SetReplicatorState sets the ReplicatorState field's value. +func (s *DescribeReplicatorOutput) SetReplicatorState(v string) *DescribeReplicatorOutput { + s.ReplicatorState = &v + return s +} + +// SetServiceExecutionRoleArn sets the ServiceExecutionRoleArn field's value. +func (s *DescribeReplicatorOutput) SetServiceExecutionRoleArn(v string) *DescribeReplicatorOutput { + s.ServiceExecutionRoleArn = &v + return s +} + +// SetStateInfo sets the StateInfo field's value. +func (s *DescribeReplicatorOutput) SetStateInfo(v *ReplicationStateInfo) *DescribeReplicatorOutput { + s.StateInfo = v + return s +} + +// SetTags sets the Tags field's value. +func (s *DescribeReplicatorOutput) SetTags(v map[string]*string) *DescribeReplicatorOutput { + s.Tags = v + return s +} + type DescribeVpcConnectionInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -9712,6 +10949,226 @@ return s } +// Information about Kafka Cluster to be used as source / target for replication. +type KafkaCluster struct { + _ struct{} `type:"structure"` + + // Details of an Amazon MSK Cluster. + // + // AmazonMskCluster is a required field + AmazonMskCluster *AmazonMskCluster `locationName:"amazonMskCluster" type:"structure" required:"true"` + + // Details of an Amazon VPC which has network connectivity to the Apache Kafka + // cluster. + // + // VpcConfig is a required field + VpcConfig *KafkaClusterClientVpcConfig `locationName:"vpcConfig" 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 KafkaCluster) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KafkaCluster) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KafkaCluster) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KafkaCluster"} + if s.AmazonMskCluster == nil { + invalidParams.Add(request.NewErrParamRequired("AmazonMskCluster")) + } + if s.VpcConfig == nil { + invalidParams.Add(request.NewErrParamRequired("VpcConfig")) + } + if s.AmazonMskCluster != nil { + if err := s.AmazonMskCluster.Validate(); err != nil { + invalidParams.AddNested("AmazonMskCluster", err.(request.ErrInvalidParams)) + } + } + if s.VpcConfig != nil { + if err := s.VpcConfig.Validate(); err != nil { + invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmazonMskCluster sets the AmazonMskCluster field's value. +func (s *KafkaCluster) SetAmazonMskCluster(v *AmazonMskCluster) *KafkaCluster { + s.AmazonMskCluster = v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *KafkaCluster) SetVpcConfig(v *KafkaClusterClientVpcConfig) *KafkaCluster { + s.VpcConfig = v + return s +} + +type KafkaClusterClientVpcConfig struct { + _ struct{} `type:"structure"` + + // The security groups to attach to the ENIs for the broker nodes. + SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` + + // The list of subnets in the client VPC to connect to. + // + // SubnetIds is a required field + SubnetIds []*string `locationName:"subnetIds" 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 KafkaClusterClientVpcConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KafkaClusterClientVpcConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KafkaClusterClientVpcConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KafkaClusterClientVpcConfig"} + if s.SubnetIds == nil { + invalidParams.Add(request.NewErrParamRequired("SubnetIds")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *KafkaClusterClientVpcConfig) SetSecurityGroupIds(v []*string) *KafkaClusterClientVpcConfig { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *KafkaClusterClientVpcConfig) SetSubnetIds(v []*string) *KafkaClusterClientVpcConfig { + s.SubnetIds = v + return s +} + +// Information about Kafka Cluster used as source / target for replication. +type KafkaClusterDescription struct { + _ struct{} `type:"structure"` + + // Details of an Amazon MSK Cluster. + AmazonMskCluster *AmazonMskCluster `locationName:"amazonMskCluster" type:"structure"` + + // The alias of the Kafka cluster. Used to prefix names of replicated topics. + KafkaClusterAlias *string `locationName:"kafkaClusterAlias" type:"string"` + + // Details of an Amazon VPC which has network connectivity to the Apache Kafka + // cluster. + VpcConfig *KafkaClusterClientVpcConfig `locationName:"vpcConfig" 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 KafkaClusterDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KafkaClusterDescription) GoString() string { + return s.String() +} + +// SetAmazonMskCluster sets the AmazonMskCluster field's value. +func (s *KafkaClusterDescription) SetAmazonMskCluster(v *AmazonMskCluster) *KafkaClusterDescription { + s.AmazonMskCluster = v + return s +} + +// SetKafkaClusterAlias sets the KafkaClusterAlias field's value. +func (s *KafkaClusterDescription) SetKafkaClusterAlias(v string) *KafkaClusterDescription { + s.KafkaClusterAlias = &v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *KafkaClusterDescription) SetVpcConfig(v *KafkaClusterClientVpcConfig) *KafkaClusterDescription { + s.VpcConfig = v + return s +} + +// Summarized information about Kafka Cluster used as source / target for replication. +type KafkaClusterSummary struct { + _ struct{} `type:"structure"` + + // Details of an Amazon MSK Cluster + // . + AmazonMskCluster *AmazonMskCluster `locationName:"amazonMskCluster" type:"structure"` + + // The alias of the Kafka cluster. Used to prefix names of replicated topics. + KafkaClusterAlias *string `locationName:"kafkaClusterAlias" 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 KafkaClusterSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KafkaClusterSummary) GoString() string { + return s.String() +} + +// SetAmazonMskCluster sets the AmazonMskCluster field's value. +func (s *KafkaClusterSummary) SetAmazonMskCluster(v *AmazonMskCluster) *KafkaClusterSummary { + s.AmazonMskCluster = v + return s +} + +// SetKafkaClusterAlias sets the KafkaClusterAlias field's value. +func (s *KafkaClusterSummary) SetKafkaClusterAlias(v string) *KafkaClusterSummary { + s.KafkaClusterAlias = &v + return s +} + // Information about a Apache Kafka version. type KafkaVersion struct { _ struct{} `type:"structure"` @@ -10694,6 +12151,109 @@ return s } +type ListReplicatorsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + ReplicatorNameFilter *string `location:"querystring" locationName:"replicatorNameFilter" 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 ListReplicatorsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReplicatorsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListReplicatorsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReplicatorsInput"} + 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 *ListReplicatorsInput) SetMaxResults(v int64) *ListReplicatorsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListReplicatorsInput) SetNextToken(v string) *ListReplicatorsInput { + s.NextToken = &v + return s +} + +// SetReplicatorNameFilter sets the ReplicatorNameFilter field's value. +func (s *ListReplicatorsInput) SetReplicatorNameFilter(v string) *ListReplicatorsInput { + s.ReplicatorNameFilter = &v + return s +} + +// The response contains an array containing replicator information and a NextToken +// if the response is truncated. +type ListReplicatorsOutput struct { + _ struct{} `type:"structure"` + + // If the response of ListReplicators is truncated, it returns a NextToken in + // the response. This NextToken should be sent in the subsequent request to + // ListReplicators. + NextToken *string `locationName:"nextToken" type:"string"` + + // List containing information of each of the replicators in the account. + Replicators []*ReplicatorSummary `locationName:"replicators" 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 ListReplicatorsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReplicatorsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListReplicatorsOutput) SetNextToken(v string) *ListReplicatorsOutput { + s.NextToken = &v + return s +} + +// SetReplicators sets the Replicators field's value. +func (s *ListReplicatorsOutput) SetReplicators(v []*ReplicatorSummary) *ListReplicatorsOutput { + s.Replicators = v + return s +} + type ListScramSecretsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -11590,6 +13150,9 @@ // Kafka brokers in the cluster. CurrentBrokerSoftwareInfo *BrokerSoftwareInfo `locationName:"currentBrokerSoftwareInfo" type:"structure"` + // Determines if there is an action required from the customer. + CustomerActionStatus *string `locationName:"customerActionStatus" type:"string" enum:"CustomerActionStatus"` + // Includes all encryption-related information. EncryptionInfo *EncryptionInfo `locationName:"encryptionInfo" type:"structure"` @@ -11654,6 +13217,12 @@ return s } +// SetCustomerActionStatus sets the CustomerActionStatus field's value. +func (s *Provisioned) SetCustomerActionStatus(v string) *Provisioned { + s.CustomerActionStatus = &v + return s +} + // SetEncryptionInfo sets the EncryptionInfo field's value. func (s *Provisioned) SetEncryptionInfo(v *EncryptionInfo) *Provisioned { s.EncryptionInfo = v @@ -12230,6 +13799,377 @@ return s.String() } +// Specifies configuration for replication between a source and target Kafka +// cluster. +type ReplicationInfo struct { + _ struct{} `type:"structure"` + + // Configuration relating to consumer group replication. + // + // ConsumerGroupReplication is a required field + ConsumerGroupReplication *ConsumerGroupReplication `locationName:"consumerGroupReplication" type:"structure" required:"true"` + + // The ARN of the source Kafka cluster. + // + // SourceKafkaClusterArn is a required field + SourceKafkaClusterArn *string `locationName:"sourceKafkaClusterArn" type:"string" required:"true"` + + // The compression type to use when producing records to target cluster. + // + // TargetCompressionType is a required field + TargetCompressionType *string `locationName:"targetCompressionType" type:"string" required:"true" enum:"TargetCompressionType"` + + // The ARN of the target Kafka cluster. + // + // TargetKafkaClusterArn is a required field + TargetKafkaClusterArn *string `locationName:"targetKafkaClusterArn" type:"string" required:"true"` + + // Configuration relating to topic replication. + // + // TopicReplication is a required field + TopicReplication *TopicReplication `locationName:"topicReplication" 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 ReplicationInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationInfo) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ReplicationInfo) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReplicationInfo"} + if s.ConsumerGroupReplication == nil { + invalidParams.Add(request.NewErrParamRequired("ConsumerGroupReplication")) + } + if s.SourceKafkaClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceKafkaClusterArn")) + } + if s.TargetCompressionType == nil { + invalidParams.Add(request.NewErrParamRequired("TargetCompressionType")) + } + if s.TargetKafkaClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("TargetKafkaClusterArn")) + } + if s.TopicReplication == nil { + invalidParams.Add(request.NewErrParamRequired("TopicReplication")) + } + if s.ConsumerGroupReplication != nil { + if err := s.ConsumerGroupReplication.Validate(); err != nil { + invalidParams.AddNested("ConsumerGroupReplication", err.(request.ErrInvalidParams)) + } + } + if s.TopicReplication != nil { + if err := s.TopicReplication.Validate(); err != nil { + invalidParams.AddNested("TopicReplication", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConsumerGroupReplication sets the ConsumerGroupReplication field's value. +func (s *ReplicationInfo) SetConsumerGroupReplication(v *ConsumerGroupReplication) *ReplicationInfo { + s.ConsumerGroupReplication = v + return s +} + +// SetSourceKafkaClusterArn sets the SourceKafkaClusterArn field's value. +func (s *ReplicationInfo) SetSourceKafkaClusterArn(v string) *ReplicationInfo { + s.SourceKafkaClusterArn = &v + return s +} + +// SetTargetCompressionType sets the TargetCompressionType field's value. +func (s *ReplicationInfo) SetTargetCompressionType(v string) *ReplicationInfo { + s.TargetCompressionType = &v + return s +} + +// SetTargetKafkaClusterArn sets the TargetKafkaClusterArn field's value. +func (s *ReplicationInfo) SetTargetKafkaClusterArn(v string) *ReplicationInfo { + s.TargetKafkaClusterArn = &v + return s +} + +// SetTopicReplication sets the TopicReplication field's value. +func (s *ReplicationInfo) SetTopicReplication(v *TopicReplication) *ReplicationInfo { + s.TopicReplication = v + return s +} + +// Specifies configuration for replication between a source and target Kafka +// cluster (sourceKafkaClusterAlias -> targetKafkaClusterAlias) +type ReplicationInfoDescription struct { + _ struct{} `type:"structure"` + + // Configuration relating to consumer group replication + // . + ConsumerGroupReplication *ConsumerGroupReplication `locationName:"consumerGroupReplication" type:"structure"` + + // The alias of the source Kafka cluster. + SourceKafkaClusterAlias *string `locationName:"sourceKafkaClusterAlias" type:"string"` + + // The compression type to use when producing records to target cluster. + TargetCompressionType *string `locationName:"targetCompressionType" type:"string" enum:"TargetCompressionType"` + + // The alias of the target Kafka cluster. + TargetKafkaClusterAlias *string `locationName:"targetKafkaClusterAlias" type:"string"` + + // Configuration relating to topic replication. + TopicReplication *TopicReplication `locationName:"topicReplication" 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 ReplicationInfoDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationInfoDescription) GoString() string { + return s.String() +} + +// SetConsumerGroupReplication sets the ConsumerGroupReplication field's value. +func (s *ReplicationInfoDescription) SetConsumerGroupReplication(v *ConsumerGroupReplication) *ReplicationInfoDescription { + s.ConsumerGroupReplication = v + return s +} + +// SetSourceKafkaClusterAlias sets the SourceKafkaClusterAlias field's value. +func (s *ReplicationInfoDescription) SetSourceKafkaClusterAlias(v string) *ReplicationInfoDescription { + s.SourceKafkaClusterAlias = &v + return s +} + +// SetTargetCompressionType sets the TargetCompressionType field's value. +func (s *ReplicationInfoDescription) SetTargetCompressionType(v string) *ReplicationInfoDescription { + s.TargetCompressionType = &v + return s +} + +// SetTargetKafkaClusterAlias sets the TargetKafkaClusterAlias field's value. +func (s *ReplicationInfoDescription) SetTargetKafkaClusterAlias(v string) *ReplicationInfoDescription { + s.TargetKafkaClusterAlias = &v + return s +} + +// SetTopicReplication sets the TopicReplication field's value. +func (s *ReplicationInfoDescription) SetTopicReplication(v *TopicReplication) *ReplicationInfoDescription { + s.TopicReplication = v + return s +} + +// Summarized information of replication between clusters. +type ReplicationInfoSummary struct { + _ struct{} `type:"structure"` + + // The alias of the source Kafka cluster. + SourceKafkaClusterAlias *string `locationName:"sourceKafkaClusterAlias" type:"string"` + + // The alias of the target Kafka cluster. + TargetKafkaClusterAlias *string `locationName:"targetKafkaClusterAlias" 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 ReplicationInfoSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationInfoSummary) GoString() string { + return s.String() +} + +// SetSourceKafkaClusterAlias sets the SourceKafkaClusterAlias field's value. +func (s *ReplicationInfoSummary) SetSourceKafkaClusterAlias(v string) *ReplicationInfoSummary { + s.SourceKafkaClusterAlias = &v + return s +} + +// SetTargetKafkaClusterAlias sets the TargetKafkaClusterAlias field's value. +func (s *ReplicationInfoSummary) SetTargetKafkaClusterAlias(v string) *ReplicationInfoSummary { + s.TargetKafkaClusterAlias = &v + return s +} + +// Details about the state of a replicator +type ReplicationStateInfo struct { + _ struct{} `type:"structure"` + + // Code that describes the current state of the replicator. + Code *string `locationName:"code" type:"string"` + + // Message that describes the state of the replicator. + 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 ReplicationStateInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationStateInfo) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *ReplicationStateInfo) SetCode(v string) *ReplicationStateInfo { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *ReplicationStateInfo) SetMessage(v string) *ReplicationStateInfo { + s.Message = &v + return s +} + +// Information about a replicator. +type ReplicatorSummary struct { + _ struct{} `type:"structure"` + + // The time the replicator was created. + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601"` + + // The current version of the replicator. + CurrentVersion *string `locationName:"currentVersion" type:"string"` + + // Whether this resource is a replicator reference. + IsReplicatorReference *bool `locationName:"isReplicatorReference" type:"boolean"` + + // Kafka Clusters used in setting up sources / targets for replication. + KafkaClustersSummary []*KafkaClusterSummary `locationName:"kafkaClustersSummary" type:"list"` + + // A list of summarized information of replications between clusters. + ReplicationInfoSummaryList []*ReplicationInfoSummary `locationName:"replicationInfoSummaryList" type:"list"` + + // The Amazon Resource Name (ARN) of the replicator. + ReplicatorArn *string `locationName:"replicatorArn" type:"string"` + + // The name of the replicator. + ReplicatorName *string `locationName:"replicatorName" type:"string"` + + // The Amazon Resource Name (ARN) of the replicator resource in the region where + // the replicator was created. + ReplicatorResourceArn *string `locationName:"replicatorResourceArn" type:"string"` + + // State of the replicator. + ReplicatorState *string `locationName:"replicatorState" type:"string" enum:"ReplicatorState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicatorSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicatorSummary) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *ReplicatorSummary) SetCreationTime(v time.Time) *ReplicatorSummary { + s.CreationTime = &v + return s +} + +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *ReplicatorSummary) SetCurrentVersion(v string) *ReplicatorSummary { + s.CurrentVersion = &v + return s +} + +// SetIsReplicatorReference sets the IsReplicatorReference field's value. +func (s *ReplicatorSummary) SetIsReplicatorReference(v bool) *ReplicatorSummary { + s.IsReplicatorReference = &v + return s +} + +// SetKafkaClustersSummary sets the KafkaClustersSummary field's value. +func (s *ReplicatorSummary) SetKafkaClustersSummary(v []*KafkaClusterSummary) *ReplicatorSummary { + s.KafkaClustersSummary = v + return s +} + +// SetReplicationInfoSummaryList sets the ReplicationInfoSummaryList field's value. +func (s *ReplicatorSummary) SetReplicationInfoSummaryList(v []*ReplicationInfoSummary) *ReplicatorSummary { + s.ReplicationInfoSummaryList = v + return s +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *ReplicatorSummary) SetReplicatorArn(v string) *ReplicatorSummary { + s.ReplicatorArn = &v + return s +} + +// SetReplicatorName sets the ReplicatorName field's value. +func (s *ReplicatorSummary) SetReplicatorName(v string) *ReplicatorSummary { + s.ReplicatorName = &v + return s +} + +// SetReplicatorResourceArn sets the ReplicatorResourceArn field's value. +func (s *ReplicatorSummary) SetReplicatorResourceArn(v string) *ReplicatorSummary { + s.ReplicatorResourceArn = &v + return s +} + +// SetReplicatorState sets the ReplicatorState field's value. +func (s *ReplicatorSummary) SetReplicatorState(v string) *ReplicatorSummary { + s.ReplicatorState = &v + return s +} + // The details of the Amazon S3 destination for broker logs. type S3 struct { _ struct{} `type:"structure"` @@ -12883,6 +14823,198 @@ return s.RespMetadata.RequestID } +// Details about topic replication. +type TopicReplication struct { + _ struct{} `type:"structure"` + + // Whether to periodically configure remote topic ACLs to match their corresponding + // upstream topics. + CopyAccessControlListsForTopics *bool `locationName:"copyAccessControlListsForTopics" type:"boolean"` + + // Whether to periodically configure remote topics to match their corresponding + // upstream topics. + CopyTopicConfigurations *bool `locationName:"copyTopicConfigurations" type:"boolean"` + + // Whether to periodically check for new topics and partitions. + DetectAndCopyNewTopics *bool `locationName:"detectAndCopyNewTopics" type:"boolean"` + + // List of regular expression patterns indicating the topics that should not + // be replicated. + TopicsToExclude []*string `locationName:"topicsToExclude" type:"list"` + + // List of regular expression patterns indicating the topics to copy. + // + // TopicsToReplicate is a required field + TopicsToReplicate []*string `locationName:"topicsToReplicate" 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 TopicReplication) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TopicReplication) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TopicReplication) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TopicReplication"} + if s.TopicsToReplicate == nil { + invalidParams.Add(request.NewErrParamRequired("TopicsToReplicate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCopyAccessControlListsForTopics sets the CopyAccessControlListsForTopics field's value. +func (s *TopicReplication) SetCopyAccessControlListsForTopics(v bool) *TopicReplication { + s.CopyAccessControlListsForTopics = &v + return s +} + +// SetCopyTopicConfigurations sets the CopyTopicConfigurations field's value. +func (s *TopicReplication) SetCopyTopicConfigurations(v bool) *TopicReplication { + s.CopyTopicConfigurations = &v + return s +} + +// SetDetectAndCopyNewTopics sets the DetectAndCopyNewTopics field's value. +func (s *TopicReplication) SetDetectAndCopyNewTopics(v bool) *TopicReplication { + s.DetectAndCopyNewTopics = &v + return s +} + +// SetTopicsToExclude sets the TopicsToExclude field's value. +func (s *TopicReplication) SetTopicsToExclude(v []*string) *TopicReplication { + s.TopicsToExclude = v + return s +} + +// SetTopicsToReplicate sets the TopicsToReplicate field's value. +func (s *TopicReplication) SetTopicsToReplicate(v []*string) *TopicReplication { + s.TopicsToReplicate = v + return s +} + +// Details for updating the topic replication of a replicator. +type TopicReplicationUpdate struct { + _ struct{} `type:"structure"` + + // Whether to periodically configure remote topic ACLs to match their corresponding + // upstream topics. + // + // CopyAccessControlListsForTopics is a required field + CopyAccessControlListsForTopics *bool `locationName:"copyAccessControlListsForTopics" type:"boolean" required:"true"` + + // Whether to periodically configure remote topics to match their corresponding + // upstream topics. + // + // CopyTopicConfigurations is a required field + CopyTopicConfigurations *bool `locationName:"copyTopicConfigurations" type:"boolean" required:"true"` + + // Whether to periodically check for new topics and partitions. + // + // DetectAndCopyNewTopics is a required field + DetectAndCopyNewTopics *bool `locationName:"detectAndCopyNewTopics" type:"boolean" required:"true"` + + // List of regular expression patterns indicating the topics that should not + // be replicated. + // + // TopicsToExclude is a required field + TopicsToExclude []*string `locationName:"topicsToExclude" type:"list" required:"true"` + + // List of regular expression patterns indicating the topics to copy. + // + // TopicsToReplicate is a required field + TopicsToReplicate []*string `locationName:"topicsToReplicate" 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 TopicReplicationUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TopicReplicationUpdate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TopicReplicationUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TopicReplicationUpdate"} + if s.CopyAccessControlListsForTopics == nil { + invalidParams.Add(request.NewErrParamRequired("CopyAccessControlListsForTopics")) + } + if s.CopyTopicConfigurations == nil { + invalidParams.Add(request.NewErrParamRequired("CopyTopicConfigurations")) + } + if s.DetectAndCopyNewTopics == nil { + invalidParams.Add(request.NewErrParamRequired("DetectAndCopyNewTopics")) + } + if s.TopicsToExclude == nil { + invalidParams.Add(request.NewErrParamRequired("TopicsToExclude")) + } + if s.TopicsToReplicate == nil { + invalidParams.Add(request.NewErrParamRequired("TopicsToReplicate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCopyAccessControlListsForTopics sets the CopyAccessControlListsForTopics field's value. +func (s *TopicReplicationUpdate) SetCopyAccessControlListsForTopics(v bool) *TopicReplicationUpdate { + s.CopyAccessControlListsForTopics = &v + return s +} + +// SetCopyTopicConfigurations sets the CopyTopicConfigurations field's value. +func (s *TopicReplicationUpdate) SetCopyTopicConfigurations(v bool) *TopicReplicationUpdate { + s.CopyTopicConfigurations = &v + return s +} + +// SetDetectAndCopyNewTopics sets the DetectAndCopyNewTopics field's value. +func (s *TopicReplicationUpdate) SetDetectAndCopyNewTopics(v bool) *TopicReplicationUpdate { + s.DetectAndCopyNewTopics = &v + return s +} + +// SetTopicsToExclude sets the TopicsToExclude field's value. +func (s *TopicReplicationUpdate) SetTopicsToExclude(v []*string) *TopicReplicationUpdate { + s.TopicsToExclude = v + return s +} + +// SetTopicsToReplicate sets the TopicsToReplicate field's value. +func (s *TopicReplicationUpdate) SetTopicsToReplicate(v []*string) *TopicReplicationUpdate { + s.TopicsToReplicate = v + return s +} + // Contains information about unauthenticated traffic to the cluster. type Unauthenticated struct { _ struct{} `type:"structure"` @@ -14108,6 +16240,166 @@ return s } +// Parameters for updating replication information between source and target +// Kafka clusters of a replicator. +type UpdateReplicationInfoInput struct { + _ struct{} `type:"structure"` + + // Updated consumer group replication information. + ConsumerGroupReplication *ConsumerGroupReplicationUpdate `locationName:"consumerGroupReplication" type:"structure"` + + // Current replicator version. + // + // CurrentVersion is a required field + CurrentVersion *string `locationName:"currentVersion" type:"string" required:"true"` + + // ReplicatorArn is a required field + ReplicatorArn *string `location:"uri" locationName:"replicatorArn" type:"string" required:"true"` + + // The ARN of the source Kafka cluster. + // + // SourceKafkaClusterArn is a required field + SourceKafkaClusterArn *string `locationName:"sourceKafkaClusterArn" type:"string" required:"true"` + + // The ARN of the target Kafka cluster. + // + // TargetKafkaClusterArn is a required field + TargetKafkaClusterArn *string `locationName:"targetKafkaClusterArn" type:"string" required:"true"` + + // Updated topic replication information. + TopicReplication *TopicReplicationUpdate `locationName:"topicReplication" 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 UpdateReplicationInfoInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReplicationInfoInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateReplicationInfoInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReplicationInfoInput"} + if s.CurrentVersion == nil { + invalidParams.Add(request.NewErrParamRequired("CurrentVersion")) + } + if s.ReplicatorArn == nil { + invalidParams.Add(request.NewErrParamRequired("ReplicatorArn")) + } + if s.ReplicatorArn != nil && len(*s.ReplicatorArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReplicatorArn", 1)) + } + if s.SourceKafkaClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceKafkaClusterArn")) + } + if s.TargetKafkaClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("TargetKafkaClusterArn")) + } + if s.ConsumerGroupReplication != nil { + if err := s.ConsumerGroupReplication.Validate(); err != nil { + invalidParams.AddNested("ConsumerGroupReplication", err.(request.ErrInvalidParams)) + } + } + if s.TopicReplication != nil { + if err := s.TopicReplication.Validate(); err != nil { + invalidParams.AddNested("TopicReplication", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConsumerGroupReplication sets the ConsumerGroupReplication field's value. +func (s *UpdateReplicationInfoInput) SetConsumerGroupReplication(v *ConsumerGroupReplicationUpdate) *UpdateReplicationInfoInput { + s.ConsumerGroupReplication = v + return s +} + +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *UpdateReplicationInfoInput) SetCurrentVersion(v string) *UpdateReplicationInfoInput { + s.CurrentVersion = &v + return s +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *UpdateReplicationInfoInput) SetReplicatorArn(v string) *UpdateReplicationInfoInput { + s.ReplicatorArn = &v + return s +} + +// SetSourceKafkaClusterArn sets the SourceKafkaClusterArn field's value. +func (s *UpdateReplicationInfoInput) SetSourceKafkaClusterArn(v string) *UpdateReplicationInfoInput { + s.SourceKafkaClusterArn = &v + return s +} + +// SetTargetKafkaClusterArn sets the TargetKafkaClusterArn field's value. +func (s *UpdateReplicationInfoInput) SetTargetKafkaClusterArn(v string) *UpdateReplicationInfoInput { + s.TargetKafkaClusterArn = &v + return s +} + +// SetTopicReplication sets the TopicReplication field's value. +func (s *UpdateReplicationInfoInput) SetTopicReplication(v *TopicReplicationUpdate) *UpdateReplicationInfoInput { + s.TopicReplication = v + return s +} + +// Updated Replication information of a replicator. +type UpdateReplicationInfoOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the replicator. + ReplicatorArn *string `locationName:"replicatorArn" type:"string"` + + // State of the replicator. + ReplicatorState *string `locationName:"replicatorState" type:"string" enum:"ReplicatorState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReplicationInfoOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReplicationInfoOutput) GoString() string { + return s.String() +} + +// SetReplicatorArn sets the ReplicatorArn field's value. +func (s *UpdateReplicationInfoOutput) SetReplicatorArn(v string) *UpdateReplicationInfoOutput { + s.ReplicatorArn = &v + return s +} + +// SetReplicatorState sets the ReplicatorState field's value. +func (s *UpdateReplicationInfoOutput) SetReplicatorState(v string) *UpdateReplicationInfoOutput { + s.ReplicatorState = &v + return s +} + // Request body for UpdateSecurity. type UpdateSecurityInput struct { _ struct{} `type:"structure"` @@ -15037,6 +17329,27 @@ } } +// A type of an action required from the customer. +const ( + // CustomerActionStatusCriticalActionRequired is a CustomerActionStatus enum value + CustomerActionStatusCriticalActionRequired = "CRITICAL_ACTION_REQUIRED" + + // CustomerActionStatusActionRecommended is a CustomerActionStatus enum value + CustomerActionStatusActionRecommended = "ACTION_RECOMMENDED" + + // CustomerActionStatusNone is a CustomerActionStatus enum value + CustomerActionStatusNone = "NONE" +) + +// CustomerActionStatus_Values returns all elements of the CustomerActionStatus enum +func CustomerActionStatus_Values() []string { + return []string{ + CustomerActionStatusCriticalActionRequired, + CustomerActionStatusActionRecommended, + CustomerActionStatusNone, + } +} + // Specifies which metrics are gathered for the MSK cluster. This property has // the following possible values: DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, // and PER_TOPIC_PER_PARTITION. For a list of the metrics associated with each @@ -15095,6 +17408,35 @@ } } +// The state of a replicator. +const ( + // ReplicatorStateRunning is a ReplicatorState enum value + ReplicatorStateRunning = "RUNNING" + + // ReplicatorStateCreating is a ReplicatorState enum value + ReplicatorStateCreating = "CREATING" + + // ReplicatorStateUpdating is a ReplicatorState enum value + ReplicatorStateUpdating = "UPDATING" + + // ReplicatorStateDeleting is a ReplicatorState enum value + ReplicatorStateDeleting = "DELETING" + + // ReplicatorStateFailed is a ReplicatorState enum value + ReplicatorStateFailed = "FAILED" +) + +// ReplicatorState_Values returns all elements of the ReplicatorState enum +func ReplicatorState_Values() []string { + return []string{ + ReplicatorStateRunning, + ReplicatorStateCreating, + ReplicatorStateUpdating, + ReplicatorStateDeleting, + ReplicatorStateFailed, + } +} + // Controls storage mode for various supported storage tiers. const ( // StorageModeLocal is a StorageMode enum value @@ -15112,6 +17454,35 @@ } } +// The type of compression to use producing records to the target cluster. +const ( + // TargetCompressionTypeNone is a TargetCompressionType enum value + TargetCompressionTypeNone = "NONE" + + // TargetCompressionTypeGzip is a TargetCompressionType enum value + TargetCompressionTypeGzip = "GZIP" + + // TargetCompressionTypeSnappy is a TargetCompressionType enum value + TargetCompressionTypeSnappy = "SNAPPY" + + // TargetCompressionTypeLz4 is a TargetCompressionType enum value + TargetCompressionTypeLz4 = "LZ4" + + // TargetCompressionTypeZstd is a TargetCompressionType enum value + TargetCompressionTypeZstd = "ZSTD" +) + +// TargetCompressionType_Values returns all elements of the TargetCompressionType enum +func TargetCompressionType_Values() []string { + return []string{ + TargetCompressionTypeNone, + TargetCompressionTypeGzip, + TargetCompressionTypeSnappy, + TargetCompressionTypeLz4, + TargetCompressionTypeZstd, + } +} + // The identity type of the requester that calls the API operation. const ( // UserIdentityTypeAwsaccount is a UserIdentityType enum value diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/kafka/kafkaiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/kafka/kafkaiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/kafka/kafkaiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/kafka/kafkaiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,10 @@ CreateConfigurationWithContext(aws.Context, *kafka.CreateConfigurationInput, ...request.Option) (*kafka.CreateConfigurationOutput, error) CreateConfigurationRequest(*kafka.CreateConfigurationInput) (*request.Request, *kafka.CreateConfigurationOutput) + CreateReplicator(*kafka.CreateReplicatorInput) (*kafka.CreateReplicatorOutput, error) + CreateReplicatorWithContext(aws.Context, *kafka.CreateReplicatorInput, ...request.Option) (*kafka.CreateReplicatorOutput, error) + CreateReplicatorRequest(*kafka.CreateReplicatorInput) (*request.Request, *kafka.CreateReplicatorOutput) + CreateVpcConnection(*kafka.CreateVpcConnectionInput) (*kafka.CreateVpcConnectionOutput, error) CreateVpcConnectionWithContext(aws.Context, *kafka.CreateVpcConnectionInput, ...request.Option) (*kafka.CreateVpcConnectionOutput, error) CreateVpcConnectionRequest(*kafka.CreateVpcConnectionInput) (*request.Request, *kafka.CreateVpcConnectionOutput) @@ -96,6 +100,10 @@ DeleteConfigurationWithContext(aws.Context, *kafka.DeleteConfigurationInput, ...request.Option) (*kafka.DeleteConfigurationOutput, error) DeleteConfigurationRequest(*kafka.DeleteConfigurationInput) (*request.Request, *kafka.DeleteConfigurationOutput) + DeleteReplicator(*kafka.DeleteReplicatorInput) (*kafka.DeleteReplicatorOutput, error) + DeleteReplicatorWithContext(aws.Context, *kafka.DeleteReplicatorInput, ...request.Option) (*kafka.DeleteReplicatorOutput, error) + DeleteReplicatorRequest(*kafka.DeleteReplicatorInput) (*request.Request, *kafka.DeleteReplicatorOutput) + DeleteVpcConnection(*kafka.DeleteVpcConnectionInput) (*kafka.DeleteVpcConnectionOutput, error) DeleteVpcConnectionWithContext(aws.Context, *kafka.DeleteVpcConnectionInput, ...request.Option) (*kafka.DeleteVpcConnectionOutput, error) DeleteVpcConnectionRequest(*kafka.DeleteVpcConnectionInput) (*request.Request, *kafka.DeleteVpcConnectionOutput) @@ -124,6 +132,10 @@ DescribeConfigurationRevisionWithContext(aws.Context, *kafka.DescribeConfigurationRevisionInput, ...request.Option) (*kafka.DescribeConfigurationRevisionOutput, error) DescribeConfigurationRevisionRequest(*kafka.DescribeConfigurationRevisionInput) (*request.Request, *kafka.DescribeConfigurationRevisionOutput) + DescribeReplicator(*kafka.DescribeReplicatorInput) (*kafka.DescribeReplicatorOutput, error) + DescribeReplicatorWithContext(aws.Context, *kafka.DescribeReplicatorInput, ...request.Option) (*kafka.DescribeReplicatorOutput, error) + DescribeReplicatorRequest(*kafka.DescribeReplicatorInput) (*request.Request, *kafka.DescribeReplicatorOutput) + DescribeVpcConnection(*kafka.DescribeVpcConnectionInput) (*kafka.DescribeVpcConnectionOutput, error) DescribeVpcConnectionWithContext(aws.Context, *kafka.DescribeVpcConnectionInput, ...request.Option) (*kafka.DescribeVpcConnectionOutput, error) DescribeVpcConnectionRequest(*kafka.DescribeVpcConnectionInput) (*request.Request, *kafka.DescribeVpcConnectionOutput) @@ -203,6 +215,13 @@ ListNodesPages(*kafka.ListNodesInput, func(*kafka.ListNodesOutput, bool) bool) error ListNodesPagesWithContext(aws.Context, *kafka.ListNodesInput, func(*kafka.ListNodesOutput, bool) bool, ...request.Option) error + ListReplicators(*kafka.ListReplicatorsInput) (*kafka.ListReplicatorsOutput, error) + ListReplicatorsWithContext(aws.Context, *kafka.ListReplicatorsInput, ...request.Option) (*kafka.ListReplicatorsOutput, error) + ListReplicatorsRequest(*kafka.ListReplicatorsInput) (*request.Request, *kafka.ListReplicatorsOutput) + + ListReplicatorsPages(*kafka.ListReplicatorsInput, func(*kafka.ListReplicatorsOutput, bool) bool) error + ListReplicatorsPagesWithContext(aws.Context, *kafka.ListReplicatorsInput, func(*kafka.ListReplicatorsOutput, bool) bool, ...request.Option) error + ListScramSecrets(*kafka.ListScramSecretsInput) (*kafka.ListScramSecretsOutput, error) ListScramSecretsWithContext(aws.Context, *kafka.ListScramSecretsInput, ...request.Option) (*kafka.ListScramSecretsOutput, error) ListScramSecretsRequest(*kafka.ListScramSecretsInput) (*request.Request, *kafka.ListScramSecretsOutput) @@ -273,6 +292,10 @@ UpdateMonitoringWithContext(aws.Context, *kafka.UpdateMonitoringInput, ...request.Option) (*kafka.UpdateMonitoringOutput, error) UpdateMonitoringRequest(*kafka.UpdateMonitoringInput) (*request.Request, *kafka.UpdateMonitoringOutput) + UpdateReplicationInfo(*kafka.UpdateReplicationInfoInput) (*kafka.UpdateReplicationInfoOutput, error) + UpdateReplicationInfoWithContext(aws.Context, *kafka.UpdateReplicationInfoInput, ...request.Option) (*kafka.UpdateReplicationInfoOutput, error) + UpdateReplicationInfoRequest(*kafka.UpdateReplicationInfoInput) (*request.Request, *kafka.UpdateReplicationInfoOutput) + UpdateSecurity(*kafka.UpdateSecurityInput) (*kafka.UpdateSecurityOutput, error) UpdateSecurityWithContext(aws.Context, *kafka.UpdateSecurityInput, ...request.Option) (*kafka.UpdateSecurityOutput, error) UpdateSecurityRequest(*kafka.UpdateSecurityInput) (*request.Request, *kafka.UpdateSecurityOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/kendra/api.go golang-github-aws-aws-sdk-go-1.48.14/service/kendra/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/kendra/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/kendra/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -6112,6 +6112,13 @@ // // Searches an index given an input query. // +// If you are working with large language models (LLMs) or implementing retrieval +// augmented generation (RAG) systems, you can use Amazon Kendra's Retrieve +// (https://docs.aws.amazon.com/kendra/latest/APIReference/API_Retrieve.html) +// API, which can return longer semantically relevant passages. We recommend +// using the Retrieve API instead of filing a service limit increase to increase +// the Query API document excerpt length. +// // You can configure boosting or relevance tuning at the query level to override // boosting at the index level, filter based on document fields/attributes and // faceted search, and filter based on the user or their group access to documents. @@ -6260,6 +6267,11 @@ // // - Filter based on the user or their group access to documents // +// - View the confidence score bucket for a retrieved passage result. The +// confidence bucket provides a relative ranking that indicates how confident +// Amazon Kendra is that the response is relevant to the query. Confidence +// score buckets are currently available only for English. +// // You can also include certain fields in the response that might provide useful // additional information. // @@ -10305,6 +10317,165 @@ return s } +// Specifies how to group results by document attribute value, and how to display +// them collapsed/expanded under a designated primary document for each group. +type CollapseConfiguration struct { + _ struct{} `type:"structure"` + + // The document attribute used to group search results. You can use any attribute + // that has the Sortable flag set to true. You can also sort by any of the following + // built-in attributes:"_category","_created_at", "_last_updated_at", "_version", + // "_view_count". + // + // DocumentAttributeKey is a required field + DocumentAttributeKey *string `min:"1" type:"string" required:"true"` + + // Specifies whether to expand the collapsed results. + Expand *bool `type:"boolean"` + + // Provides configuration information to customize expansion options for a collapsed + // group. + ExpandConfiguration *ExpandConfiguration `type:"structure"` + + // Specifies the behavior for documents without a value for the collapse attribute. + // + // Amazon Kendra offers three customization options: + // + // * Choose to COLLAPSE all documents with null or missing values in one + // group. This is the default configuration. + // + // * Choose to IGNORE documents with null or missing values. Ignored documents + // will not appear in query results. + // + // * Choose to EXPAND each document with a null or missing value into a group + // of its own. + MissingAttributeKeyStrategy *string `type:"string" enum:"MissingAttributeKeyStrategy"` + + // A prioritized list of document attributes/fields that determine the primary + // document among those in a collapsed group. + SortingConfigurations []*SortingConfiguration `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 CollapseConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollapseConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CollapseConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CollapseConfiguration"} + if s.DocumentAttributeKey == nil { + invalidParams.Add(request.NewErrParamRequired("DocumentAttributeKey")) + } + if s.DocumentAttributeKey != nil && len(*s.DocumentAttributeKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DocumentAttributeKey", 1)) + } + if s.SortingConfigurations != nil && len(s.SortingConfigurations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SortingConfigurations", 1)) + } + if s.SortingConfigurations != nil { + for i, v := range s.SortingConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortingConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDocumentAttributeKey sets the DocumentAttributeKey field's value. +func (s *CollapseConfiguration) SetDocumentAttributeKey(v string) *CollapseConfiguration { + s.DocumentAttributeKey = &v + return s +} + +// SetExpand sets the Expand field's value. +func (s *CollapseConfiguration) SetExpand(v bool) *CollapseConfiguration { + s.Expand = &v + return s +} + +// SetExpandConfiguration sets the ExpandConfiguration field's value. +func (s *CollapseConfiguration) SetExpandConfiguration(v *ExpandConfiguration) *CollapseConfiguration { + s.ExpandConfiguration = v + return s +} + +// SetMissingAttributeKeyStrategy sets the MissingAttributeKeyStrategy field's value. +func (s *CollapseConfiguration) SetMissingAttributeKeyStrategy(v string) *CollapseConfiguration { + s.MissingAttributeKeyStrategy = &v + return s +} + +// SetSortingConfigurations sets the SortingConfigurations field's value. +func (s *CollapseConfiguration) SetSortingConfigurations(v []*SortingConfiguration) *CollapseConfiguration { + s.SortingConfigurations = v + return s +} + +// Provides details about a collapsed group of search results. +type CollapsedResultDetail struct { + _ struct{} `type:"structure"` + + // The value of the document attribute that results are collapsed on. + // + // DocumentAttribute is a required field + DocumentAttribute *DocumentAttribute `type:"structure" required:"true"` + + // A list of results in the collapsed group. + ExpandedResults []*ExpandedResultItem `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 CollapsedResultDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollapsedResultDetail) GoString() string { + return s.String() +} + +// SetDocumentAttribute sets the DocumentAttribute field's value. +func (s *CollapsedResultDetail) SetDocumentAttribute(v *DocumentAttribute) *CollapsedResultDetail { + s.DocumentAttribute = v + return s +} + +// SetExpandedResults sets the ExpandedResults field's value. +func (s *CollapsedResultDetail) SetExpandedResults(v []*ExpandedResultItem) *CollapsedResultDetail { + s.ExpandedResults = v + return s +} + // Provides information about how Amazon Kendra should use the columns of a // database in an index. type ColumnConfiguration struct { @@ -12093,9 +12264,9 @@ // The Amazon Resource Name (ARN) of an IAM role with permission to access Query // API, GetQuerySuggestions API, and other required APIs. The role also must - // include permission to access IAM Identity Center (successor to Single Sign-On) - // that stores your user and group information. For more information, see IAM - // access roles for Amazon Kendra (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). + // include permission to access IAM Identity Center that stores your user and + // group information. For more information, see IAM access roles for Amazon + // Kendra (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). RoleArn *string `type:"string"` } @@ -12673,9 +12844,8 @@ // to the user will be searchable and displayable. UserContextPolicy *string `type:"string" enum:"UserContextPolicy"` - // Gets users and groups from IAM Identity Center (successor to Single Sign-On) - // identity source. To configure this, see UserGroupResolutionConfiguration - // (https://docs.aws.amazon.com/kendra/latest/dg/API_UserGroupResolutionConfiguration.html). + // Gets users and groups from IAM Identity Center identity source. To configure + // this, see UserGroupResolutionConfiguration (https://docs.aws.amazon.com/kendra/latest/dg/API_UserGroupResolutionConfiguration.html). UserGroupResolutionConfiguration *UserGroupResolutionConfiguration `type:"structure"` // The user token configuration. @@ -16101,8 +16271,7 @@ UserContextPolicy *string `type:"string" enum:"UserContextPolicy"` // Whether you have enabled the configuration for fetching access levels of - // groups and users from an IAM Identity Center (successor to Single Sign-On) - // identity source. + // groups and users from an IAM Identity Center identity source. UserGroupResolutionConfiguration *UserGroupResolutionConfiguration `type:"structure"` // The user token configuration for the Amazon Kendra index. @@ -18344,6 +18513,136 @@ return s } +// Specifies the configuration information needed to customize how collapsed +// search result groups expand. +type ExpandConfiguration struct { + _ struct{} `type:"structure"` + + // The number of expanded results to show per collapsed primary document. For + // instance, if you set this value to 3, then at most 3 results per collapsed + // group will be displayed. + MaxExpandedResultsPerItem *int64 `type:"integer"` + + // The number of collapsed search result groups to expand. If you set this value + // to 10, for example, only the first 10 out of 100 result groups will have + // expand functionality. + MaxResultItemsToExpand *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 ExpandConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExpandConfiguration) GoString() string { + return s.String() +} + +// SetMaxExpandedResultsPerItem sets the MaxExpandedResultsPerItem field's value. +func (s *ExpandConfiguration) SetMaxExpandedResultsPerItem(v int64) *ExpandConfiguration { + s.MaxExpandedResultsPerItem = &v + return s +} + +// SetMaxResultItemsToExpand sets the MaxResultItemsToExpand field's value. +func (s *ExpandConfiguration) SetMaxResultItemsToExpand(v int64) *ExpandConfiguration { + s.MaxResultItemsToExpand = &v + return s +} + +// A single expanded result in a collapsed group of search results. +// +// An expanded result item contains information about an expanded result document +// within a collapsed group of search results. This includes the original location +// of the document, a list of attributes assigned to the document, and relevant +// text from the document that satisfies the query. +type ExpandedResultItem struct { + _ struct{} `type:"structure"` + + // An array of document attributes assigned to a document in the search results. + // For example, the document author ("_author") or the source URI ("_source_uri") + // of the document. + DocumentAttributes []*DocumentAttribute `type:"list"` + + // Provides text and information about where to highlight the text. + DocumentExcerpt *TextWithHighlights `type:"structure"` + + // The idenitifier of the document. + DocumentId *string `min:"1" type:"string"` + + // Provides text and information about where to highlight the text. + DocumentTitle *TextWithHighlights `type:"structure"` + + // The URI of the original location of the document. + DocumentURI *string `min:"1" type:"string"` + + // The identifier for the expanded result. + Id *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExpandedResultItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExpandedResultItem) GoString() string { + return s.String() +} + +// SetDocumentAttributes sets the DocumentAttributes field's value. +func (s *ExpandedResultItem) SetDocumentAttributes(v []*DocumentAttribute) *ExpandedResultItem { + s.DocumentAttributes = v + return s +} + +// SetDocumentExcerpt sets the DocumentExcerpt field's value. +func (s *ExpandedResultItem) SetDocumentExcerpt(v *TextWithHighlights) *ExpandedResultItem { + s.DocumentExcerpt = v + return s +} + +// SetDocumentId sets the DocumentId field's value. +func (s *ExpandedResultItem) SetDocumentId(v string) *ExpandedResultItem { + s.DocumentId = &v + return s +} + +// SetDocumentTitle sets the DocumentTitle field's value. +func (s *ExpandedResultItem) SetDocumentTitle(v *TextWithHighlights) *ExpandedResultItem { + s.DocumentTitle = v + return s +} + +// SetDocumentURI sets the DocumentURI field's value. +func (s *ExpandedResultItem) SetDocumentURI(v string) *ExpandedResultItem { + s.DocumentURI = &v + return s +} + +// SetId sets the Id field's value. +func (s *ExpandedResultItem) SetId(v string) *ExpandedResultItem { + s.Id = &v + return s +} + // Provides the configuration information for your Amazon Kendra experience. // This includes the data source IDs and/or FAQ IDs, and user or group information // to grant access to your Amazon Kendra experience. @@ -24280,6 +24579,11 @@ // that a document must satisfy to be included in the query results. AttributeFilter *AttributeFilter `type:"structure"` + // Provides configuration to determine how to group results by document attribute + // value, and how to display them (collapsed or expanded) under a designated + // primary document for each group. + CollapseConfiguration *CollapseConfiguration `type:"structure"` + // Overrides relevance tuning configurations of fields/attributes set at the // index level. // @@ -24335,6 +24639,18 @@ // relevance that Amazon Kendra determines for the result. SortingConfiguration *SortingConfiguration `type:"structure"` + // Provides configuration information to determine how the results of a query + // are sorted. + // + // You can set upto 3 fields that Amazon Kendra should sort the results on, + // and specify whether the results should be sorted in ascending or descending + // order. The sort field quota can be increased. + // + // If you don't provide a sorting configuration, the results are sorted by the + // relevance that Amazon Kendra determines for the result. In the case of ties + // in sorting the results, the results are sorted by relevance. + SortingConfigurations []*SortingConfiguration `min:"1" type:"list"` + // Enables suggested spell corrections for queries. SpellCorrectionConfiguration *SpellCorrectionConfiguration `type:"structure"` @@ -24377,6 +24693,9 @@ if s.RequestedDocumentAttributes != nil && len(s.RequestedDocumentAttributes) < 1 { invalidParams.Add(request.NewErrParamMinLen("RequestedDocumentAttributes", 1)) } + if s.SortingConfigurations != nil && len(s.SortingConfigurations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SortingConfigurations", 1)) + } if s.VisitorId != nil && len(*s.VisitorId) < 1 { invalidParams.Add(request.NewErrParamMinLen("VisitorId", 1)) } @@ -24385,6 +24704,11 @@ invalidParams.AddNested("AttributeFilter", err.(request.ErrInvalidParams)) } } + if s.CollapseConfiguration != nil { + if err := s.CollapseConfiguration.Validate(); err != nil { + invalidParams.AddNested("CollapseConfiguration", err.(request.ErrInvalidParams)) + } + } if s.DocumentRelevanceOverrideConfigurations != nil { for i, v := range s.DocumentRelevanceOverrideConfigurations { if v == nil { @@ -24410,6 +24734,16 @@ invalidParams.AddNested("SortingConfiguration", err.(request.ErrInvalidParams)) } } + if s.SortingConfigurations != nil { + for i, v := range s.SortingConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortingConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } if s.SpellCorrectionConfiguration != nil { if err := s.SpellCorrectionConfiguration.Validate(); err != nil { invalidParams.AddNested("SpellCorrectionConfiguration", err.(request.ErrInvalidParams)) @@ -24433,6 +24767,12 @@ return s } +// SetCollapseConfiguration sets the CollapseConfiguration field's value. +func (s *QueryInput) SetCollapseConfiguration(v *CollapseConfiguration) *QueryInput { + s.CollapseConfiguration = v + return s +} + // SetDocumentRelevanceOverrideConfigurations sets the DocumentRelevanceOverrideConfigurations field's value. func (s *QueryInput) SetDocumentRelevanceOverrideConfigurations(v []*DocumentRelevanceConfiguration) *QueryInput { s.DocumentRelevanceOverrideConfigurations = v @@ -24487,6 +24827,12 @@ return s } +// SetSortingConfigurations sets the SortingConfigurations field's value. +func (s *QueryInput) SetSortingConfigurations(v []*SortingConfiguration) *QueryInput { + s.SortingConfigurations = v + return s +} + // SetSpellCorrectionConfiguration sets the SpellCorrectionConfiguration field's value. func (s *QueryInput) SetSpellCorrectionConfiguration(v *SpellCorrectionConfiguration) *QueryInput { s.SpellCorrectionConfiguration = v @@ -24614,6 +24960,9 @@ // One or more additional fields/attributes associated with the query result. AdditionalAttributes []*AdditionalResultAttribute `type:"list"` + // Provides details about a collapsed group of search results. + CollapsedResultDetail *CollapsedResultDetail `type:"structure"` + // An array of document fields/attributes assigned to a document in the search // results. For example, the document author (_author) or the source URI (_source_uri) // of the document. @@ -24688,6 +25037,12 @@ return s } +// SetCollapsedResultDetail sets the CollapsedResultDetail field's value. +func (s *QueryResultItem) SetCollapsedResultDetail(v *CollapsedResultDetail) *QueryResultItem { + s.CollapsedResultDetail = v + return s +} + // SetDocumentAttributes sets the DocumentAttributes field's value. func (s *QueryResultItem) SetDocumentAttributes(v []*DocumentAttribute) *QueryResultItem { s.DocumentAttributes = v @@ -30348,7 +30703,7 @@ UserContextPolicy *string `type:"string" enum:"UserContextPolicy"` // Enables fetching access levels of groups and users from an IAM Identity Center - // (successor to Single Sign-On) identity source. To configure this, see UserGroupResolutionConfiguration + // identity source. To configure this, see UserGroupResolutionConfiguration // (https://docs.aws.amazon.com/kendra/latest/dg/API_UserGroupResolutionConfiguration.html). UserGroupResolutionConfiguration *UserGroupResolutionConfiguration `type:"structure"` @@ -31140,10 +31495,9 @@ } // Provides the configuration information to get users and groups from an IAM -// Identity Center (successor to Single Sign-On) identity source. This is useful -// for user context filtering, where search results are filtered based on the -// user or their group access to documents. You can also use the PutPrincipalMapping -// (https://docs.aws.amazon.com/kendra/latest/dg/API_PutPrincipalMapping.html) +// Identity Center identity source. This is useful for user context filtering, +// where search results are filtered based on the user or their group access +// to documents. You can also use the PutPrincipalMapping (https://docs.aws.amazon.com/kendra/latest/dg/API_PutPrincipalMapping.html) // API to map users to their groups so that you only need to provide the user // ID when you issue the query. // @@ -31162,9 +31516,9 @@ _ struct{} `type:"structure"` // The identity store provider (mode) you want to use to get users and groups. - // IAM Identity Center (successor to Single Sign-On) is currently the only available - // mode. Your users and groups must exist in an IAM Identity Center identity - // source in order to use this mode. + // IAM Identity Center is currently the only available mode. Your users and + // groups must exist in an IAM Identity Center identity source in order to use + // this mode. // // UserGroupResolutionMode is a required field UserGroupResolutionMode *string `type:"string" required:"true" enum:"UserGroupResolutionMode"` @@ -32661,6 +33015,26 @@ } } +const ( + // MissingAttributeKeyStrategyIgnore is a MissingAttributeKeyStrategy enum value + MissingAttributeKeyStrategyIgnore = "IGNORE" + + // MissingAttributeKeyStrategyCollapse is a MissingAttributeKeyStrategy enum value + MissingAttributeKeyStrategyCollapse = "COLLAPSE" + + // MissingAttributeKeyStrategyExpand is a MissingAttributeKeyStrategy enum value + MissingAttributeKeyStrategyExpand = "EXPAND" +) + +// MissingAttributeKeyStrategy_Values returns all elements of the MissingAttributeKeyStrategy enum +func MissingAttributeKeyStrategy_Values() []string { + return []string{ + MissingAttributeKeyStrategyIgnore, + MissingAttributeKeyStrategyCollapse, + MissingAttributeKeyStrategyExpand, + } +} + const ( // ModeEnabled is a Mode enum value ModeEnabled = "ENABLED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/kinesis/api.go golang-github-aws-aws-sdk-go-1.48.14/service/kinesis/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/kinesis/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/kinesis/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -68,8 +68,9 @@ // Adds or updates tags for the specified Kinesis data stream. You can assign // up to 50 tags to a data stream. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // If tags have already been assigned to the stream, AddTagsToStream overwrites // any existing tags that correspond to the specified tag keys. @@ -307,8 +308,9 @@ // of time data records are accessible after they are added to the stream. The // minimum value of a stream's retention period is 24 hours. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // This operation may result in lost data. For example, if the stream's retention // period is 48 hours and is decreased to 24 hours, any data already in the @@ -364,6 +366,107 @@ 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/kinesis-2013-12-02/DeleteResourcePolicy +func (c *Kinesis) DeleteResourcePolicyRequest(input *DeleteResourcePolicyInput) (req *request.Request, output *DeleteResourcePolicyOutput) { + op := &request.Operation{ + Name: opDeleteResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteResourcePolicyInput{} + } + + output = &DeleteResourcePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteResourcePolicy API operation for Amazon Kinesis. +// +// Delete a policy for the specified data stream or consumer. Request patterns +// can be one of the following: +// +// - Data stream pattern: arn:aws.*:kinesis:.*:\d{12}:.*stream/\S+ +// +// - Consumer pattern: ^(arn):aws.*:kinesis:.*:\d{12}:.*stream\/[a-zA-Z0-9_.-]+\/consumer\/[a-zA-Z0-9_.-]+:[0-9]+ +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Kinesis's +// API operation DeleteResourcePolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// +// - ResourceNotFoundException +// The requested resource could not be found. The stream might not be specified +// correctly. +// +// - LimitExceededException +// The requested resource exceeds the maximum number allowed, or the number +// of concurrent stream requests exceeds the maximum number allowed. +// +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// +// - ResourceInUseException +// The resource is not available for this operation. For successful operation, +// the resource must be in the ACTIVE state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DeleteResourcePolicy +func (c *Kinesis) 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 *Kinesis) 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 opDeleteStream = "DeleteStream" // DeleteStreamRequest generates a "aws/request.Request" representing the @@ -413,8 +516,9 @@ // the stream. If an application attempts to operate on a deleted stream, it // receives the exception ResourceNotFoundException. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // If the stream is in the ACTIVE state, you can delete it. After a DeleteStream // request, the specified stream is in the DELETING state until Kinesis Data @@ -720,8 +824,9 @@ // and the ListShards API to list the shards in a specified data stream and // obtain information about each shard. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // The information returned includes the stream name, Amazon Resource Name (ARN), // creation time, enhanced metric configuration, and shard map. The shard map @@ -891,6 +996,9 @@ // // This operation has a limit of 20 transactions per second per stream. // +// When making a cross-account call with DescribeStreamConsumer, make sure to +// provide the ARN of the consumer. +// // 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. @@ -980,8 +1088,9 @@ // Provides a summarized description of the specified Kinesis data stream without // the shard list. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // The information returned includes the stream name, Amazon Resource Name (ARN), // status, record retention period, approximate creation time, monitoring, encryption @@ -1080,8 +1189,9 @@ // // Disables enhanced monitoring. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // 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 @@ -1178,8 +1288,9 @@ // // Enables enhanced Kinesis data stream monitoring for shard-level metrics. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // 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 @@ -1276,8 +1387,9 @@ // // Gets data records from a Kinesis data stream's shard. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// in addition to the ShardIterator parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // Specify a shard iterator using the ShardIterator parameter. The shard iterator // specifies the position in the shard from which you want to start reading @@ -1416,6 +1528,102 @@ 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/kinesis-2013-12-02/GetResourcePolicy +func (c *Kinesis) 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 Amazon Kinesis. +// +// Returns a policy attached to the specified data stream or consumer. Request +// patterns can be one of the following: +// +// - Data stream pattern: arn:aws.*:kinesis:.*:\d{12}:.*stream/\S+ +// +// - Consumer pattern: ^(arn):aws.*:kinesis:.*:\d{12}:.*stream\/[a-zA-Z0-9_.-]+\/consumer\/[a-zA-Z0-9_.-]+:[0-9]+ +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Kinesis's +// API operation GetResourcePolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// +// - ResourceNotFoundException +// The requested resource could not be found. The stream might not be specified +// correctly. +// +// - LimitExceededException +// The requested resource exceeds the maximum number allowed, or the number +// of concurrent stream requests exceeds the maximum number allowed. +// +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/GetResourcePolicy +func (c *Kinesis) 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 *Kinesis) 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 opGetShardIterator = "GetShardIterator" // GetShardIteratorRequest generates a "aws/request.Request" representing the @@ -1462,8 +1670,9 @@ // Gets an Amazon Kinesis shard iterator. A shard iterator expires 5 minutes // after it is returned to the requester. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // A shard iterator specifies the shard position from which to start reading // data records sequentially. The position is specified using the sequence number @@ -1600,8 +1809,9 @@ // of time data records are accessible after they are added to the stream. The // maximum value of a stream's retention period is 8760 hours (365 days). // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // If you choose a longer stream retention period, this operation increases // the time period during which records that have not yet expired are accessible. @@ -1707,8 +1917,9 @@ // Lists the shards in a stream and provides information about each shard. This // operation has a limit of 1000 transactions per second per data stream. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // This action does not list expired shards. For information about expired shards, // see Data Routing, Data Persistence, and Shard State after a Reshard (https://docs.aws.amazon.com/streams/latest/dev/kinesis-using-sdk-java-after-resharding.html#kinesis-using-sdk-java-resharding-data-routing). @@ -2132,8 +2343,9 @@ // Lists the tags for the specified Kinesis data stream. This operation has // a limit of five transactions per second per account. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // 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 @@ -2236,8 +2448,9 @@ // the single child shard receives data for all hash key values covered by the // two parent shards. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // MergeShards is called when there is a need to reduce the overall capacity // of a stream because of excess capacity that is not being used. You must specify @@ -2369,8 +2582,9 @@ // one record at a time. Each shard can support writes up to 1,000 records per // second, up to a maximum data write total of 1 MiB per second. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // You must specify the name of the stream that captures, stores, and transports // the data; a partition key; and the data blob itself. @@ -2533,8 +2747,9 @@ // (also referred to as a PutRecords request). Use this operation to send data // into the stream for data ingestion and processing. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // Each PutRecords request can support up to 500 records. Each record in the // request can be as large as 1 MiB, up to a limit of 5 MiB for the entire request, @@ -2674,6 +2889,118 @@ return out, req.Send() } +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/kinesis-2013-12-02/PutResourcePolicy +func (c *Kinesis) 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) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutResourcePolicy API operation for Amazon Kinesis. +// +// Attaches a resource-based policy to a data stream or registered consumer. +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the resource, the calling identity must have the PutResourcePolicy +// permissions on the specified Kinesis Data Streams resource and belong to +// the owner's account in order to use this operation. If you don't have PutResourcePolicy +// permissions, Amazon Kinesis Data Streams returns a 403 Access Denied error. +// If you receive a ResourceNotFoundException, check to see if you passed a +// valid stream or consumer resource. +// +// Request patterns can be one of the following: +// +// - Data stream pattern: arn:aws.*:kinesis:.*:\d{12}:.*stream/\S+ +// +// - Consumer pattern: ^(arn):aws.*:kinesis:.*:\d{12}:.*stream\/[a-zA-Z0-9_.-]+\/consumer\/[a-zA-Z0-9_.-]+:[0-9]+ +// +// For more information, see Controlling Access to Amazon Kinesis Data Streams +// Resources Using IAM (https://docs.aws.amazon.com/streams/latest/dev/controlling-access.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 Amazon Kinesis's +// API operation PutResourcePolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Specifies that you do not have the permissions required to perform this operation. +// +// - ResourceNotFoundException +// The requested resource could not be found. The stream might not be specified +// correctly. +// +// - LimitExceededException +// The requested resource exceeds the maximum number allowed, or the number +// of concurrent stream requests exceeds the maximum number allowed. +// +// - InvalidArgumentException +// A specified parameter exceeds its restrictions, is not supported, or can't +// be used. For more information, see the returned message. +// +// - ResourceInUseException +// The resource is not available for this operation. For successful operation, +// the resource must be in the ACTIVE state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutResourcePolicy +func (c *Kinesis) 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 *Kinesis) 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 opRegisterStreamConsumer = "RegisterStreamConsumer" // RegisterStreamConsumerRequest generates a "aws/request.Request" representing the @@ -2829,8 +3156,9 @@ // Removes tags from the specified Kinesis data stream. Removed tags are deleted // and cannot be recovered after this operation successfully completes. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // If you specify a tag that does not exist, it is ignored. // @@ -2937,8 +3265,9 @@ // API is only supported for the data streams with the provisioned capacity // mode. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // You can also use SplitShard when a shard appears to be approaching its maximum // utilization; for example, the producers sending data into the specific shard @@ -3083,6 +3412,10 @@ // Enables or updates server-side encryption using an Amazon Web Services KMS // key for a specified stream. // +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. +// // Starting encryption is an asynchronous operation. Upon receiving the request, // Kinesis Data Streams returns immediately and sets the status of the stream // to UPDATING. After the update is complete, Kinesis Data Streams sets the @@ -3100,9 +3433,6 @@ // encryption, you can verify that encryption is applied by inspecting the API // response from PutRecord or PutRecords. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3225,8 +3555,9 @@ // // Disables server-side encryption for a specified stream. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // Stopping encryption is an asynchronous operation. Upon receiving the request, // Kinesis Data Streams returns immediately and sets the status of the stream @@ -3678,8 +4009,9 @@ // shards. This API is only supported for the data streams with the provisioned // capacity mode. // -// When invoking this API, it is recommended you use the StreamARN input parameter -// rather than the StreamName input parameter. +// When invoking this API, you must use either the StreamARN or the StreamName +// parameter, or both. It is recommended that you use the StreamARN input parameter +// when you invoke this API. // // Updating the shard count is an asynchronous operation. Upon receiving the // request, Kinesis Data Streams returns immediately and sets the status of @@ -3714,6 +4046,8 @@ // // - Scale up to more than the shard limit for your account // +// - Make over 10 TPS. TPS over 10 will trigger the LimitExceededException +// // For the default limits for an Amazon Web Services account, see Streams Limits // (https://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Data Streams Developer Guide. To request an increase @@ -4444,6 +4778,77 @@ return s.String() } +type DeleteResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the data stream or consumer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 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 *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() +} + // Represents the input for DeleteStream. type DeleteStreamInput struct { _ struct{} `type:"structure"` @@ -5618,6 +6023,88 @@ return s } +type GetResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the data stream or consumer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 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 *GetResourcePolicyInput) SetResourceARN(v string) *GetResourcePolicyInput { + s.ResourceARN = &v + return s +} + +type GetResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // Details of the resource policy. This is formatted as a JSON string. + // + // Policy is a required field + Policy *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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() +} + +// SetPolicy sets the Policy field's value. +func (s *GetResourcePolicyOutput) SetPolicy(v string) *GetResourcePolicyOutput { + s.Policy = &v + return s +} + // Represents the input for GetShardIterator. type GetShardIteratorInput struct { _ struct{} `type:"structure"` @@ -8036,6 +8523,92 @@ return s } +type PutResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // Details of the resource policy. It must include the identity of the principal + // and the actions allowed on this resource. This is formatted as a JSON string. + // + // Policy is a required field + Policy *string `type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the data stream or consumer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + + 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"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API 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() +} + // The unit of data of the Kinesis data stream, which is composed of a sequence // number, a partition key, and a data blob. type Record struct { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/kinesis/kinesisiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/kinesis/kinesisiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/kinesis/kinesisiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/kinesis/kinesisiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,6 +72,10 @@ DecreaseStreamRetentionPeriodWithContext(aws.Context, *kinesis.DecreaseStreamRetentionPeriodInput, ...request.Option) (*kinesis.DecreaseStreamRetentionPeriodOutput, error) DecreaseStreamRetentionPeriodRequest(*kinesis.DecreaseStreamRetentionPeriodInput) (*request.Request, *kinesis.DecreaseStreamRetentionPeriodOutput) + DeleteResourcePolicy(*kinesis.DeleteResourcePolicyInput) (*kinesis.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyWithContext(aws.Context, *kinesis.DeleteResourcePolicyInput, ...request.Option) (*kinesis.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyRequest(*kinesis.DeleteResourcePolicyInput) (*request.Request, *kinesis.DeleteResourcePolicyOutput) + DeleteStream(*kinesis.DeleteStreamInput) (*kinesis.DeleteStreamOutput, error) DeleteStreamWithContext(aws.Context, *kinesis.DeleteStreamInput, ...request.Option) (*kinesis.DeleteStreamOutput, error) DeleteStreamRequest(*kinesis.DeleteStreamInput) (*request.Request, *kinesis.DeleteStreamOutput) @@ -111,6 +115,10 @@ GetRecordsWithContext(aws.Context, *kinesis.GetRecordsInput, ...request.Option) (*kinesis.GetRecordsOutput, error) GetRecordsRequest(*kinesis.GetRecordsInput) (*request.Request, *kinesis.GetRecordsOutput) + GetResourcePolicy(*kinesis.GetResourcePolicyInput) (*kinesis.GetResourcePolicyOutput, error) + GetResourcePolicyWithContext(aws.Context, *kinesis.GetResourcePolicyInput, ...request.Option) (*kinesis.GetResourcePolicyOutput, error) + GetResourcePolicyRequest(*kinesis.GetResourcePolicyInput) (*request.Request, *kinesis.GetResourcePolicyOutput) + GetShardIterator(*kinesis.GetShardIteratorInput) (*kinesis.GetShardIteratorOutput, error) GetShardIteratorWithContext(aws.Context, *kinesis.GetShardIteratorInput, ...request.Option) (*kinesis.GetShardIteratorOutput, error) GetShardIteratorRequest(*kinesis.GetShardIteratorInput) (*request.Request, *kinesis.GetShardIteratorOutput) @@ -153,6 +161,10 @@ PutRecordsWithContext(aws.Context, *kinesis.PutRecordsInput, ...request.Option) (*kinesis.PutRecordsOutput, error) PutRecordsRequest(*kinesis.PutRecordsInput) (*request.Request, *kinesis.PutRecordsOutput) + PutResourcePolicy(*kinesis.PutResourcePolicyInput) (*kinesis.PutResourcePolicyOutput, error) + PutResourcePolicyWithContext(aws.Context, *kinesis.PutResourcePolicyInput, ...request.Option) (*kinesis.PutResourcePolicyOutput, error) + PutResourcePolicyRequest(*kinesis.PutResourcePolicyInput) (*request.Request, *kinesis.PutResourcePolicyOutput) + RegisterStreamConsumer(*kinesis.RegisterStreamConsumerInput) (*kinesis.RegisterStreamConsumerOutput, error) RegisterStreamConsumerWithContext(aws.Context, *kinesis.RegisterStreamConsumerInput, ...request.Option) (*kinesis.RegisterStreamConsumerOutput, error) RegisterStreamConsumerRequest(*kinesis.RegisterStreamConsumerInput) (*request.Request, *kinesis.RegisterStreamConsumerOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/kinesisvideo/api.go golang-github-aws-aws-sdk-go-1.48.14/service/kinesisvideo/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/kinesisvideo/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/kinesisvideo/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -954,9 +954,6 @@ // DescribeMediaStorageConfiguration API operation for Amazon Kinesis Video Streams. // -// This API is related to WebRTC Ingestion (https://docs.aws.amazon.com/kinesisvideostreams-webrtc-dg/latest/devguide/webrtc-ingestion.html) -// and is only available in the us-west-2 region. -// // Returns the most current information about the channel. Specify the ChannelName // or ChannelARN in the input. // @@ -2671,8 +2668,6 @@ // retention period, specify the Operation parameter in the request body. In // the request, you must specify either the StreamName or the StreamARN. // -// The retention period that you specify replaces the current value. -// // This operation requires permission for the KinesisVideo:UpdateDataRetention // action. // @@ -2902,17 +2897,15 @@ // UpdateMediaStorageConfiguration API operation for Amazon Kinesis Video Streams. // -// This API is related to WebRTC Ingestion (https://docs.aws.amazon.com/kinesisvideostreams-webrtc-dg/latest/devguide/webrtc-ingestion.html) -// and is only available in the us-west-2 region. -// // Associates a SignalingChannel to a stream to store the media. There are two -// signaling modes that can specified : +// signaling modes that you can specify : // -// - If the StorageStatus is disabled, no data will be stored, and the StreamARN -// parameter will not be needed. +// - If StorageStatus is enabled, the data will be stored in the StreamARN +// provided. In order for WebRTC Ingestion to work, the stream must have +// data retention enabled. // -// - If the StorageStatus is enabled, the data will be stored in the StreamARN -// provided. +// - If StorageStatus is disabled, no data will be stored, and the StreamARN +// parameter will not be needed. // // If StorageStatus is enabled, direct peer-to-peer (master-viewer) connections // no longer occur. Peers connect directly to the storage session. You must @@ -6844,6 +6837,13 @@ // A structure that encapsulates, or contains, the media storage configuration // properties. +// +// - If StorageStatus is enabled, the data will be stored in the StreamARN +// provided. In order for WebRTC Ingestion to work, the stream must have +// data retention enabled. +// +// - If StorageStatus is disabled, no data will be stored, and the StreamARN +// parameter will not be needed. type MediaStorageConfiguration struct { _ struct{} `type:"structure"` @@ -6852,7 +6852,7 @@ // Status is a required field Status *string `type:"string" required:"true" enum:"MediaStorageConfigurationStatus"` - // The Amazon Resource Name (ARN) of the stream + // The Amazon Resource Name (ARN) of the stream. StreamARN *string `min:"1" type:"string"` } @@ -8512,8 +8512,11 @@ // CurrentVersion is a required field CurrentVersion *string `min:"1" type:"string" required:"true"` - // The retention period, in hours. The value you specify replaces the current - // value. The maximum value for this parameter is 87600 (ten years). + // The number of hours to adjust the current retention by. The value you specify + // is added to or subtracted from the current value, depending on the operation. + // + // The minimum value for data retention is 0 and the maximum value is 87600 + // (ten years). // // DataRetentionChangeInHours is a required field DataRetentionChangeInHours *int64 `min:"1" type:"integer" required:"true"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lakeformation/api.go golang-github-aws-aws-sdk-go-1.48.14/service/lakeformation/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lakeformation/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lakeformation/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -766,6 +766,196 @@ return out, req.Send() } +const opCreateLakeFormationIdentityCenterConfiguration = "CreateLakeFormationIdentityCenterConfiguration" + +// CreateLakeFormationIdentityCenterConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateLakeFormationIdentityCenterConfiguration 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 CreateLakeFormationIdentityCenterConfiguration for more information on using the CreateLakeFormationIdentityCenterConfiguration +// 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 CreateLakeFormationIdentityCenterConfigurationRequest method. +// req, resp := client.CreateLakeFormationIdentityCenterConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) CreateLakeFormationIdentityCenterConfigurationRequest(input *CreateLakeFormationIdentityCenterConfigurationInput) (req *request.Request, output *CreateLakeFormationIdentityCenterConfigurationOutput) { + op := &request.Operation{ + Name: opCreateLakeFormationIdentityCenterConfiguration, + HTTPMethod: "POST", + HTTPPath: "/CreateLakeFormationIdentityCenterConfiguration", + } + + if input == nil { + input = &CreateLakeFormationIdentityCenterConfigurationInput{} + } + + output = &CreateLakeFormationIdentityCenterConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateLakeFormationIdentityCenterConfiguration API operation for AWS Lake Formation. +// +// Creates an IAM Identity Center connection with Lake Formation to allow IAM +// Identity Center users and groups to access Data Catalog resources. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation CreateLakeFormationIdentityCenterConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - AlreadyExistsException +// A resource to be created or added already exists. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) CreateLakeFormationIdentityCenterConfiguration(input *CreateLakeFormationIdentityCenterConfigurationInput) (*CreateLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.CreateLakeFormationIdentityCenterConfigurationRequest(input) + return out, req.Send() +} + +// CreateLakeFormationIdentityCenterConfigurationWithContext is the same as CreateLakeFormationIdentityCenterConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateLakeFormationIdentityCenterConfiguration 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 *LakeFormation) CreateLakeFormationIdentityCenterConfigurationWithContext(ctx aws.Context, input *CreateLakeFormationIdentityCenterConfigurationInput, opts ...request.Option) (*CreateLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.CreateLakeFormationIdentityCenterConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateLakeFormationOptIn = "CreateLakeFormationOptIn" + +// CreateLakeFormationOptInRequest generates a "aws/request.Request" representing the +// client's request for the CreateLakeFormationOptIn 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 CreateLakeFormationOptIn for more information on using the CreateLakeFormationOptIn +// 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 CreateLakeFormationOptInRequest method. +// req, resp := client.CreateLakeFormationOptInRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateLakeFormationOptIn +func (c *LakeFormation) CreateLakeFormationOptInRequest(input *CreateLakeFormationOptInInput) (req *request.Request, output *CreateLakeFormationOptInOutput) { + op := &request.Operation{ + Name: opCreateLakeFormationOptIn, + HTTPMethod: "POST", + HTTPPath: "/CreateLakeFormationOptIn", + } + + if input == nil { + input = &CreateLakeFormationOptInInput{} + } + + output = &CreateLakeFormationOptInOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// CreateLakeFormationOptIn API operation for AWS Lake Formation. +// +// Enforce Lake Formation permissions for the given databases, tables, and principals. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation CreateLakeFormationOptIn for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateLakeFormationOptIn +func (c *LakeFormation) CreateLakeFormationOptIn(input *CreateLakeFormationOptInInput) (*CreateLakeFormationOptInOutput, error) { + req, out := c.CreateLakeFormationOptInRequest(input) + return out, req.Send() +} + +// CreateLakeFormationOptInWithContext is the same as CreateLakeFormationOptIn with the addition of +// the ability to pass a context and additional request options. +// +// See CreateLakeFormationOptIn 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 *LakeFormation) CreateLakeFormationOptInWithContext(ctx aws.Context, input *CreateLakeFormationOptInInput, opts ...request.Option) (*CreateLakeFormationOptInOutput, error) { + req, out := c.CreateLakeFormationOptInRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDataCellsFilter = "DeleteDataCellsFilter" // DeleteDataCellsFilterRequest generates a "aws/request.Request" representing the @@ -954,6 +1144,197 @@ return out, req.Send() } +const opDeleteLakeFormationIdentityCenterConfiguration = "DeleteLakeFormationIdentityCenterConfiguration" + +// DeleteLakeFormationIdentityCenterConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLakeFormationIdentityCenterConfiguration 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 DeleteLakeFormationIdentityCenterConfiguration for more information on using the DeleteLakeFormationIdentityCenterConfiguration +// 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 DeleteLakeFormationIdentityCenterConfigurationRequest method. +// req, resp := client.DeleteLakeFormationIdentityCenterConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) DeleteLakeFormationIdentityCenterConfigurationRequest(input *DeleteLakeFormationIdentityCenterConfigurationInput) (req *request.Request, output *DeleteLakeFormationIdentityCenterConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteLakeFormationIdentityCenterConfiguration, + HTTPMethod: "POST", + HTTPPath: "/DeleteLakeFormationIdentityCenterConfiguration", + } + + if input == nil { + input = &DeleteLakeFormationIdentityCenterConfigurationInput{} + } + + output = &DeleteLakeFormationIdentityCenterConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteLakeFormationIdentityCenterConfiguration API operation for AWS Lake Formation. +// +// Deletes an IAM Identity Center connection with Lake Formation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation DeleteLakeFormationIdentityCenterConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) DeleteLakeFormationIdentityCenterConfiguration(input *DeleteLakeFormationIdentityCenterConfigurationInput) (*DeleteLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.DeleteLakeFormationIdentityCenterConfigurationRequest(input) + return out, req.Send() +} + +// DeleteLakeFormationIdentityCenterConfigurationWithContext is the same as DeleteLakeFormationIdentityCenterConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLakeFormationIdentityCenterConfiguration 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 *LakeFormation) DeleteLakeFormationIdentityCenterConfigurationWithContext(ctx aws.Context, input *DeleteLakeFormationIdentityCenterConfigurationInput, opts ...request.Option) (*DeleteLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.DeleteLakeFormationIdentityCenterConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteLakeFormationOptIn = "DeleteLakeFormationOptIn" + +// DeleteLakeFormationOptInRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLakeFormationOptIn 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 DeleteLakeFormationOptIn for more information on using the DeleteLakeFormationOptIn +// 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 DeleteLakeFormationOptInRequest method. +// req, resp := client.DeleteLakeFormationOptInRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLakeFormationOptIn +func (c *LakeFormation) DeleteLakeFormationOptInRequest(input *DeleteLakeFormationOptInInput) (req *request.Request, output *DeleteLakeFormationOptInOutput) { + op := &request.Operation{ + Name: opDeleteLakeFormationOptIn, + HTTPMethod: "POST", + HTTPPath: "/DeleteLakeFormationOptIn", + } + + if input == nil { + input = &DeleteLakeFormationOptInInput{} + } + + output = &DeleteLakeFormationOptInOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteLakeFormationOptIn API operation for AWS Lake Formation. +// +// Remove the Lake Formation permissions enforcement of the given databases, +// tables, and principals. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation DeleteLakeFormationOptIn for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLakeFormationOptIn +func (c *LakeFormation) DeleteLakeFormationOptIn(input *DeleteLakeFormationOptInInput) (*DeleteLakeFormationOptInOutput, error) { + req, out := c.DeleteLakeFormationOptInRequest(input) + return out, req.Send() +} + +// DeleteLakeFormationOptInWithContext is the same as DeleteLakeFormationOptIn with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLakeFormationOptIn 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 *LakeFormation) DeleteLakeFormationOptInWithContext(ctx aws.Context, input *DeleteLakeFormationOptInInput, opts ...request.Option) (*DeleteLakeFormationOptInOutput, error) { + req, out := c.DeleteLakeFormationOptInRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteObjectsOnCancel = "DeleteObjectsOnCancel" // DeleteObjectsOnCancelRequest generates a "aws/request.Request" representing the @@ -1156,6 +1537,97 @@ return out, req.Send() } +const opDescribeLakeFormationIdentityCenterConfiguration = "DescribeLakeFormationIdentityCenterConfiguration" + +// DescribeLakeFormationIdentityCenterConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DescribeLakeFormationIdentityCenterConfiguration 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 DescribeLakeFormationIdentityCenterConfiguration for more information on using the DescribeLakeFormationIdentityCenterConfiguration +// 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 DescribeLakeFormationIdentityCenterConfigurationRequest method. +// req, resp := client.DescribeLakeFormationIdentityCenterConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DescribeLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) DescribeLakeFormationIdentityCenterConfigurationRequest(input *DescribeLakeFormationIdentityCenterConfigurationInput) (req *request.Request, output *DescribeLakeFormationIdentityCenterConfigurationOutput) { + op := &request.Operation{ + Name: opDescribeLakeFormationIdentityCenterConfiguration, + HTTPMethod: "POST", + HTTPPath: "/DescribeLakeFormationIdentityCenterConfiguration", + } + + if input == nil { + input = &DescribeLakeFormationIdentityCenterConfigurationInput{} + } + + output = &DescribeLakeFormationIdentityCenterConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeLakeFormationIdentityCenterConfiguration API operation for AWS Lake Formation. +// +// Retrieves the instance ARN and application ARN for the connection. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation DescribeLakeFormationIdentityCenterConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DescribeLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) DescribeLakeFormationIdentityCenterConfiguration(input *DescribeLakeFormationIdentityCenterConfigurationInput) (*DescribeLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.DescribeLakeFormationIdentityCenterConfigurationRequest(input) + return out, req.Send() +} + +// DescribeLakeFormationIdentityCenterConfigurationWithContext is the same as DescribeLakeFormationIdentityCenterConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeLakeFormationIdentityCenterConfiguration 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 *LakeFormation) DescribeLakeFormationIdentityCenterConfigurationWithContext(ctx aws.Context, input *DescribeLakeFormationIdentityCenterConfigurationInput, opts ...request.Option) (*DescribeLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.DescribeLakeFormationIdentityCenterConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeResource = "DescribeResource" // DescribeResourceRequest generates a "aws/request.Request" representing the @@ -3116,6 +3588,152 @@ return p.Err() } +const opListLakeFormationOptIns = "ListLakeFormationOptIns" + +// ListLakeFormationOptInsRequest generates a "aws/request.Request" representing the +// client's request for the ListLakeFormationOptIns 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 ListLakeFormationOptIns for more information on using the ListLakeFormationOptIns +// 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 ListLakeFormationOptInsRequest method. +// req, resp := client.ListLakeFormationOptInsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListLakeFormationOptIns +func (c *LakeFormation) ListLakeFormationOptInsRequest(input *ListLakeFormationOptInsInput) (req *request.Request, output *ListLakeFormationOptInsOutput) { + op := &request.Operation{ + Name: opListLakeFormationOptIns, + HTTPMethod: "POST", + HTTPPath: "/ListLakeFormationOptIns", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLakeFormationOptInsInput{} + } + + output = &ListLakeFormationOptInsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLakeFormationOptIns API operation for AWS Lake Formation. +// +// Retrieve the current list of resources and principals that are opt in to +// enforce Lake Formation permissions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation ListLakeFormationOptIns for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListLakeFormationOptIns +func (c *LakeFormation) ListLakeFormationOptIns(input *ListLakeFormationOptInsInput) (*ListLakeFormationOptInsOutput, error) { + req, out := c.ListLakeFormationOptInsRequest(input) + return out, req.Send() +} + +// ListLakeFormationOptInsWithContext is the same as ListLakeFormationOptIns with the addition of +// the ability to pass a context and additional request options. +// +// See ListLakeFormationOptIns 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 *LakeFormation) ListLakeFormationOptInsWithContext(ctx aws.Context, input *ListLakeFormationOptInsInput, opts ...request.Option) (*ListLakeFormationOptInsOutput, error) { + req, out := c.ListLakeFormationOptInsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLakeFormationOptInsPages iterates over the pages of a ListLakeFormationOptIns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLakeFormationOptIns 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 ListLakeFormationOptIns operation. +// pageNum := 0 +// err := client.ListLakeFormationOptInsPages(params, +// func(page *lakeformation.ListLakeFormationOptInsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LakeFormation) ListLakeFormationOptInsPages(input *ListLakeFormationOptInsInput, fn func(*ListLakeFormationOptInsOutput, bool) bool) error { + return c.ListLakeFormationOptInsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLakeFormationOptInsPagesWithContext same as ListLakeFormationOptInsPages 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 *LakeFormation) ListLakeFormationOptInsPagesWithContext(ctx aws.Context, input *ListLakeFormationOptInsInput, fn func(*ListLakeFormationOptInsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLakeFormationOptInsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLakeFormationOptInsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLakeFormationOptInsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListPermissions = "ListPermissions" // ListPermissionsRequest generates a "aws/request.Request" representing the @@ -4772,6 +5390,101 @@ return out, req.Send() } +const opUpdateLakeFormationIdentityCenterConfiguration = "UpdateLakeFormationIdentityCenterConfiguration" + +// UpdateLakeFormationIdentityCenterConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLakeFormationIdentityCenterConfiguration 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 UpdateLakeFormationIdentityCenterConfiguration for more information on using the UpdateLakeFormationIdentityCenterConfiguration +// 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 UpdateLakeFormationIdentityCenterConfigurationRequest method. +// req, resp := client.UpdateLakeFormationIdentityCenterConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) UpdateLakeFormationIdentityCenterConfigurationRequest(input *UpdateLakeFormationIdentityCenterConfigurationInput) (req *request.Request, output *UpdateLakeFormationIdentityCenterConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateLakeFormationIdentityCenterConfiguration, + HTTPMethod: "POST", + HTTPPath: "/UpdateLakeFormationIdentityCenterConfiguration", + } + + if input == nil { + input = &UpdateLakeFormationIdentityCenterConfigurationInput{} + } + + output = &UpdateLakeFormationIdentityCenterConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateLakeFormationIdentityCenterConfiguration API operation for AWS Lake Formation. +// +// Updates the IAM Identity Center connection parameters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Lake Formation's +// API operation UpdateLakeFormationIdentityCenterConfiguration for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateLakeFormationIdentityCenterConfiguration +func (c *LakeFormation) UpdateLakeFormationIdentityCenterConfiguration(input *UpdateLakeFormationIdentityCenterConfigurationInput) (*UpdateLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.UpdateLakeFormationIdentityCenterConfigurationRequest(input) + return out, req.Send() +} + +// UpdateLakeFormationIdentityCenterConfigurationWithContext is the same as UpdateLakeFormationIdentityCenterConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLakeFormationIdentityCenterConfiguration 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 *LakeFormation) UpdateLakeFormationIdentityCenterConfigurationWithContext(ctx aws.Context, input *UpdateLakeFormationIdentityCenterConfigurationInput, opts ...request.Option) (*UpdateLakeFormationIdentityCenterConfigurationOutput, error) { + req, out := c.UpdateLakeFormationIdentityCenterConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateResource = "UpdateResource" // UpdateResourceRequest generates a "aws/request.Request" representing the @@ -6455,6 +7168,203 @@ return s.String() } +type CreateLakeFormationIdentityCenterConfigurationInput struct { + _ struct{} `type:"structure"` + + // The identifier for the Data Catalog. By default, the account ID. The Data + // Catalog is the persistent metadata store. It contains database definitions, + // table definitions, view definitions, and other control information to manage + // your Lake Formation environment. + CatalogId *string `min:"1" type:"string"` + + // A list of the account IDs of Amazon Web Services accounts of third-party + // applications that are allowed to to access data managed by Lake Formation. + ExternalFiltering *ExternalFilteringConfiguration `type:"structure"` + + // The ARN of the IAM Identity Center instance for which the operation will + // be executed. For more information about ARNs, see Amazon Resource Names (ARNs) + // and Amazon Web Services Service Namespaces in the Amazon Web Services General + // Reference. + InstanceArn *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 CreateLakeFormationIdentityCenterConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLakeFormationIdentityCenterConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLakeFormationIdentityCenterConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLakeFormationIdentityCenterConfigurationInput"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.ExternalFiltering != nil { + if err := s.ExternalFiltering.Validate(); err != nil { + invalidParams.AddNested("ExternalFiltering", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *CreateLakeFormationIdentityCenterConfigurationInput) SetCatalogId(v string) *CreateLakeFormationIdentityCenterConfigurationInput { + s.CatalogId = &v + return s +} + +// SetExternalFiltering sets the ExternalFiltering field's value. +func (s *CreateLakeFormationIdentityCenterConfigurationInput) SetExternalFiltering(v *ExternalFilteringConfiguration) *CreateLakeFormationIdentityCenterConfigurationInput { + s.ExternalFiltering = v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *CreateLakeFormationIdentityCenterConfigurationInput) SetInstanceArn(v string) *CreateLakeFormationIdentityCenterConfigurationInput { + s.InstanceArn = &v + return s +} + +type CreateLakeFormationIdentityCenterConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the integrated application. + ApplicationArn *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 CreateLakeFormationIdentityCenterConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLakeFormationIdentityCenterConfigurationOutput) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *CreateLakeFormationIdentityCenterConfigurationOutput) SetApplicationArn(v string) *CreateLakeFormationIdentityCenterConfigurationOutput { + s.ApplicationArn = &v + return s +} + +type CreateLakeFormationOptInInput struct { + _ struct{} `type:"structure"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + // + // Principal is a required field + Principal *DataLakePrincipal `type:"structure" required:"true"` + + // A structure for the resource. + // + // Resource is a required field + Resource *Resource `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 CreateLakeFormationOptInInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLakeFormationOptInInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLakeFormationOptInInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLakeFormationOptInInput"} + if s.Principal == nil { + invalidParams.Add(request.NewErrParamRequired("Principal")) + } + if s.Resource == nil { + invalidParams.Add(request.NewErrParamRequired("Resource")) + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPrincipal sets the Principal field's value. +func (s *CreateLakeFormationOptInInput) SetPrincipal(v *DataLakePrincipal) *CreateLakeFormationOptInInput { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *CreateLakeFormationOptInInput) SetResource(v *Resource) *CreateLakeFormationOptInInput { + s.Resource = v + return s +} + +type CreateLakeFormationOptInOutput 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 CreateLakeFormationOptInOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLakeFormationOptInOutput) GoString() string { + return s.String() +} + // A structure that describes certain columns on certain rows. type DataCellsFilter struct { _ struct{} `type:"structure"` @@ -6795,8 +7705,8 @@ ExternalDataFilteringAllowList []*DataLakePrincipal `type:"list"` // A key-value map that provides an additional configuration on your data lake. - // CrossAccountVersion is the key you can configure in the Parameters field. - // Accepted values for the CrossAccountVersion key are 1, 2, and 3. + // CROSS_ACCOUNT_VERSION is the key you can configure in the Parameters field. + // Accepted values for the CrossAccountVersion key are 1, 2, 3, and 4. Parameters map[string]*string `type:"map"` // A list of Lake Formation principals with only view access to the resources, @@ -7263,6 +8173,167 @@ return s.String() } +type DeleteLakeFormationIdentityCenterConfigurationInput struct { + _ struct{} `type:"structure"` + + // The identifier for the Data Catalog. By default, the account ID. The Data + // Catalog is the persistent metadata store. It contains database definitions, + // table definitions, view definition, and other control information to manage + // your Lake Formation environment. + CatalogId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationIdentityCenterConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationIdentityCenterConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLakeFormationIdentityCenterConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLakeFormationIdentityCenterConfigurationInput"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *DeleteLakeFormationIdentityCenterConfigurationInput) SetCatalogId(v string) *DeleteLakeFormationIdentityCenterConfigurationInput { + s.CatalogId = &v + return s +} + +type DeleteLakeFormationIdentityCenterConfigurationOutput 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 DeleteLakeFormationIdentityCenterConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationIdentityCenterConfigurationOutput) GoString() string { + return s.String() +} + +type DeleteLakeFormationOptInInput struct { + _ struct{} `type:"structure"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + // + // Principal is a required field + Principal *DataLakePrincipal `type:"structure" required:"true"` + + // A structure for the resource. + // + // Resource is a required field + Resource *Resource `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 DeleteLakeFormationOptInInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationOptInInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLakeFormationOptInInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLakeFormationOptInInput"} + if s.Principal == nil { + invalidParams.Add(request.NewErrParamRequired("Principal")) + } + if s.Resource == nil { + invalidParams.Add(request.NewErrParamRequired("Resource")) + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPrincipal sets the Principal field's value. +func (s *DeleteLakeFormationOptInInput) SetPrincipal(v *DataLakePrincipal) *DeleteLakeFormationOptInInput { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *DeleteLakeFormationOptInInput) SetResource(v *Resource) *DeleteLakeFormationOptInInput { + s.Resource = v + return s +} + +type DeleteLakeFormationOptInOutput 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 DeleteLakeFormationOptInOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationOptInOutput) GoString() string { + return s.String() +} + // An object to delete from the governed table. type DeleteObjectInput_ struct { _ struct{} `type:"structure"` @@ -7553,6 +8624,114 @@ return s.String() } +type DescribeLakeFormationIdentityCenterConfigurationInput struct { + _ struct{} `type:"structure"` + + // The identifier for the Data Catalog. By default, the account ID. The Data + // Catalog is the persistent metadata store. It contains database definitions, + // table definitions, and other control information to manage your Lake Formation + // environment. + CatalogId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeLakeFormationIdentityCenterConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeLakeFormationIdentityCenterConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeLakeFormationIdentityCenterConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeLakeFormationIdentityCenterConfigurationInput"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *DescribeLakeFormationIdentityCenterConfigurationInput) SetCatalogId(v string) *DescribeLakeFormationIdentityCenterConfigurationInput { + s.CatalogId = &v + return s +} + +type DescribeLakeFormationIdentityCenterConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the integrated application. + ApplicationArn *string `type:"string"` + + // The identifier for the Data Catalog. By default, the account ID. The Data + // Catalog is the persistent metadata store. It contains database definitions, + // table definitions, and other control information to manage your Lake Formation + // environment. + CatalogId *string `min:"1" type:"string"` + + // Indicates if external filtering is enabled. + ExternalFiltering *ExternalFilteringConfiguration `type:"structure"` + + // The Amazon Resource Name (ARN) of the connection. + InstanceArn *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 DescribeLakeFormationIdentityCenterConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeLakeFormationIdentityCenterConfigurationOutput) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DescribeLakeFormationIdentityCenterConfigurationOutput) SetApplicationArn(v string) *DescribeLakeFormationIdentityCenterConfigurationOutput { + s.ApplicationArn = &v + return s +} + +// SetCatalogId sets the CatalogId field's value. +func (s *DescribeLakeFormationIdentityCenterConfigurationOutput) SetCatalogId(v string) *DescribeLakeFormationIdentityCenterConfigurationOutput { + s.CatalogId = &v + return s +} + +// SetExternalFiltering sets the ExternalFiltering field's value. +func (s *DescribeLakeFormationIdentityCenterConfigurationOutput) SetExternalFiltering(v *ExternalFilteringConfiguration) *DescribeLakeFormationIdentityCenterConfigurationOutput { + s.ExternalFiltering = v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *DescribeLakeFormationIdentityCenterConfigurationOutput) SetInstanceArn(v string) *DescribeLakeFormationIdentityCenterConfigurationOutput { + s.InstanceArn = &v + return s +} + type DescribeResourceInput struct { _ struct{} `type:"structure"` @@ -8034,6 +9213,69 @@ return s.String() } +// Configuration for enabling external data filtering for third-party applications +// to access data managed by Lake Formation . +type ExternalFilteringConfiguration struct { + _ struct{} `type:"structure"` + + // List of third-party application ARNs integrated with Lake Formation. + // + // AuthorizedTargets is a required field + AuthorizedTargets []*string `type:"list" required:"true"` + + // Allows to enable or disable the third-party applications that are allowed + // to access data managed by Lake Formation. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"EnableStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalFilteringConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalFilteringConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExternalFilteringConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExternalFilteringConfiguration"} + if s.AuthorizedTargets == nil { + invalidParams.Add(request.NewErrParamRequired("AuthorizedTargets")) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizedTargets sets the AuthorizedTargets field's value. +func (s *ExternalFilteringConfiguration) SetAuthorizedTargets(v []*string) *ExternalFilteringConfiguration { + s.AuthorizedTargets = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ExternalFilteringConfiguration) SetStatus(v string) *ExternalFilteringConfiguration { + s.Status = &v + return s +} + // This structure describes the filtering of columns in a table based on a filter // condition. type FilterCondition struct { @@ -9957,6 +11199,10 @@ // A list of possible values an attribute can take. // + // The maximum number of values that can be defined for a LF-Tag is 1000. A + // single API call supports 50 values. You can use multiple API calls to add + // more values. + // // TagValues is a required field TagValues []*string `min:"1" type:"list" required:"true"` } @@ -10306,6 +11552,65 @@ return s } +// A single principal-resource pair that has Lake Formation permissins enforced. +type LakeFormationOptInsInfo struct { + _ struct{} `type:"structure"` + + // The last modified date and time of the record. + LastModified *time.Time `type:"timestamp"` + + // The user who updated the record. + LastUpdatedBy *string `min:"1" type:"string"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + Principal *DataLakePrincipal `type:"structure"` + + // A structure for the resource. + Resource *Resource `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 LakeFormationOptInsInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationOptInsInfo) GoString() string { + return s.String() +} + +// SetLastModified sets the LastModified field's value. +func (s *LakeFormationOptInsInfo) SetLastModified(v time.Time) *LakeFormationOptInsInfo { + s.LastModified = &v + return s +} + +// SetLastUpdatedBy sets the LastUpdatedBy field's value. +func (s *LakeFormationOptInsInfo) SetLastUpdatedBy(v string) *LakeFormationOptInsInfo { + s.LastUpdatedBy = &v + return s +} + +// SetPrincipal sets the Principal field's value. +func (s *LakeFormationOptInsInfo) SetPrincipal(v *DataLakePrincipal) *LakeFormationOptInsInfo { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *LakeFormationOptInsInfo) SetResource(v *Resource) *LakeFormationOptInsInfo { + s.Resource = v + return s +} + type ListDataCellsFilterInput struct { _ struct{} `type:"structure"` @@ -10534,6 +11839,127 @@ return s } +type ListLakeFormationOptInsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return. + MaxResults *int64 `min:"1" type:"integer"` + + // A continuation token, if this is not the first call to retrieve this list. + NextToken *string `type:"string"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + Principal *DataLakePrincipal `type:"structure"` + + // A structure for the resource. + Resource *Resource `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 ListLakeFormationOptInsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLakeFormationOptInsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLakeFormationOptInsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListLakeFormationOptInsInput) SetMaxResults(v int64) *ListLakeFormationOptInsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLakeFormationOptInsInput) SetNextToken(v string) *ListLakeFormationOptInsInput { + s.NextToken = &v + return s +} + +// SetPrincipal sets the Principal field's value. +func (s *ListLakeFormationOptInsInput) SetPrincipal(v *DataLakePrincipal) *ListLakeFormationOptInsInput { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *ListLakeFormationOptInsInput) SetResource(v *Resource) *ListLakeFormationOptInsInput { + s.Resource = v + return s +} + +type ListLakeFormationOptInsOutput struct { + _ struct{} `type:"structure"` + + // A list of principal-resource pairs that have Lake Formation permissins enforced. + LakeFormationOptInsInfoList []*LakeFormationOptInsInfo `type:"list"` + + // A continuation token, if this is not the first call to retrieve this list. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsOutput) GoString() string { + return s.String() +} + +// SetLakeFormationOptInsInfoList sets the LakeFormationOptInsInfoList field's value. +func (s *ListLakeFormationOptInsOutput) SetLakeFormationOptInsInfoList(v []*LakeFormationOptInsInfo) *ListLakeFormationOptInsOutput { + s.LakeFormationOptInsInfoList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLakeFormationOptInsOutput) SetNextToken(v string) *ListLakeFormationOptInsOutput { + s.NextToken = &v + return s +} + type ListPermissionsInput struct { _ struct{} `type:"structure"` @@ -11415,6 +12841,12 @@ // Currently returns only as a RAM resource share ARN. AdditionalDetails *DetailsMap `type:"structure"` + // The date and time when the resource was last updated. + LastUpdated *time.Time `type:"timestamp"` + + // The user who updated the record. + LastUpdatedBy *string `min:"1" type:"string"` + // The permissions to be granted or revoked on the resource. Permissions []*string `type:"list" enum:"Permission"` @@ -11453,6 +12885,18 @@ return s } +// SetLastUpdated sets the LastUpdated field's value. +func (s *PrincipalResourcePermissions) SetLastUpdated(v time.Time) *PrincipalResourcePermissions { + s.LastUpdated = &v + return s +} + +// SetLastUpdatedBy sets the LastUpdatedBy field's value. +func (s *PrincipalResourcePermissions) SetLastUpdatedBy(v string) *PrincipalResourcePermissions { + s.LastUpdatedBy = &v + return s +} + // SetPermissions sets the Permissions field's value. func (s *PrincipalResourcePermissions) SetPermissions(v []*string) *PrincipalResourcePermissions { s.Permissions = v @@ -11667,6 +13111,11 @@ type RegisterResourceInput struct { _ struct{} `type:"structure"` + // Specifies whether the data access of tables pointing to the location can + // be managed by both Lake Formation permissions as well as Amazon S3 bucket + // policies. + HybridAccessEnabled *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the resource that you want to register. // // ResourceArn is a required field @@ -11717,6 +13166,12 @@ return nil } +// SetHybridAccessEnabled sets the HybridAccessEnabled field's value. +func (s *RegisterResourceInput) SetHybridAccessEnabled(v bool) *RegisterResourceInput { + s.HybridAccessEnabled = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *RegisterResourceInput) SetResourceArn(v string) *RegisterResourceInput { s.ResourceArn = &v @@ -12039,6 +13494,11 @@ type ResourceInfo struct { _ struct{} `type:"structure"` + // Indicates whether the data access of tables pointing to the location can + // be managed by both Lake Formation permissions as well as Amazon S3 bucket + // policies. + HybridAccessEnabled *bool `type:"boolean"` + // The date and time the resource was last modified. LastModified *time.Time `type:"timestamp"` @@ -12070,6 +13530,12 @@ return s.String() } +// SetHybridAccessEnabled sets the HybridAccessEnabled field's value. +func (s *ResourceInfo) SetHybridAccessEnabled(v bool) *ResourceInfo { + s.HybridAccessEnabled = &v + return s +} + // SetLastModified sets the LastModified field's value. func (s *ResourceInfo) SetLastModified(v time.Time) *ResourceInfo { s.LastModified = &v @@ -12626,6 +14092,8 @@ _ struct{} `type:"structure"` // A continuation token, present if the current list segment is not the last. + // On the first run, if you include a not null (a value) token you can get empty + // pages. NextToken *string `type:"string"` // A list of tables that meet the LF-tag conditions. @@ -13849,9 +15317,107 @@ return s.String() } +type UpdateLakeFormationIdentityCenterConfigurationInput struct { + _ struct{} `type:"structure"` + + // Allows to enable or disable the IAM Identity Center connection. + ApplicationStatus *string `type:"string" enum:"ApplicationStatus"` + + // The identifier for the Data Catalog. By default, the account ID. The Data + // Catalog is the persistent metadata store. It contains database definitions, + // table definitions, view definitions, and other control information to manage + // your Lake Formation environment. + CatalogId *string `min:"1" type:"string"` + + // A list of the account IDs of Amazon Web Services accounts of third-party + // applications that are allowed to access data managed by Lake Formation. + ExternalFiltering *ExternalFilteringConfiguration `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 UpdateLakeFormationIdentityCenterConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLakeFormationIdentityCenterConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateLakeFormationIdentityCenterConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateLakeFormationIdentityCenterConfigurationInput"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.ExternalFiltering != nil { + if err := s.ExternalFiltering.Validate(); err != nil { + invalidParams.AddNested("ExternalFiltering", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationStatus sets the ApplicationStatus field's value. +func (s *UpdateLakeFormationIdentityCenterConfigurationInput) SetApplicationStatus(v string) *UpdateLakeFormationIdentityCenterConfigurationInput { + s.ApplicationStatus = &v + return s +} + +// SetCatalogId sets the CatalogId field's value. +func (s *UpdateLakeFormationIdentityCenterConfigurationInput) SetCatalogId(v string) *UpdateLakeFormationIdentityCenterConfigurationInput { + s.CatalogId = &v + return s +} + +// SetExternalFiltering sets the ExternalFiltering field's value. +func (s *UpdateLakeFormationIdentityCenterConfigurationInput) SetExternalFiltering(v *ExternalFilteringConfiguration) *UpdateLakeFormationIdentityCenterConfigurationInput { + s.ExternalFiltering = v + return s +} + +type UpdateLakeFormationIdentityCenterConfigurationOutput 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 UpdateLakeFormationIdentityCenterConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLakeFormationIdentityCenterConfigurationOutput) GoString() string { + return s.String() +} + type UpdateResourceInput struct { _ struct{} `type:"structure"` + // Specifies whether the data access of tables pointing to the location can + // be managed by both Lake Formation permissions as well as Amazon S3 bucket + // policies. + HybridAccessEnabled *bool `type:"boolean"` + // The resource ARN. // // ResourceArn is a required field @@ -13900,6 +15466,12 @@ return nil } +// SetHybridAccessEnabled sets the HybridAccessEnabled field's value. +func (s *UpdateResourceInput) SetHybridAccessEnabled(v bool) *UpdateResourceInput { + s.HybridAccessEnabled = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *UpdateResourceInput) SetResourceArn(v string) *UpdateResourceInput { s.ResourceArn = &v @@ -14450,6 +16022,22 @@ } const ( + // ApplicationStatusEnabled is a ApplicationStatus enum value + ApplicationStatusEnabled = "ENABLED" + + // ApplicationStatusDisabled is a ApplicationStatus enum value + ApplicationStatusDisabled = "DISABLED" +) + +// ApplicationStatus_Values returns all elements of the ApplicationStatus enum +func ApplicationStatus_Values() []string { + return []string{ + ApplicationStatusEnabled, + ApplicationStatusDisabled, + } +} + +const ( // ComparisonOperatorEq is a ComparisonOperator enum value ComparisonOperatorEq = "EQ" @@ -14541,6 +16129,22 @@ } } +const ( + // EnableStatusEnabled is a EnableStatus enum value + EnableStatusEnabled = "ENABLED" + + // EnableStatusDisabled is a EnableStatus enum value + EnableStatusDisabled = "DISABLED" +) + +// EnableStatus_Values returns all elements of the EnableStatus enum +func EnableStatus_Values() []string { + return []string{ + EnableStatusEnabled, + EnableStatusDisabled, + } +} + const ( // FieldNameStringResourceArn is a FieldNameString enum value FieldNameStringResourceArn = "RESOURCE_ARN" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lakeformation/lakeformationiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/lakeformation/lakeformationiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lakeformation/lakeformationiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lakeformation/lakeformationiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -92,6 +92,14 @@ CreateLFTagWithContext(aws.Context, *lakeformation.CreateLFTagInput, ...request.Option) (*lakeformation.CreateLFTagOutput, error) CreateLFTagRequest(*lakeformation.CreateLFTagInput) (*request.Request, *lakeformation.CreateLFTagOutput) + CreateLakeFormationIdentityCenterConfiguration(*lakeformation.CreateLakeFormationIdentityCenterConfigurationInput) (*lakeformation.CreateLakeFormationIdentityCenterConfigurationOutput, error) + CreateLakeFormationIdentityCenterConfigurationWithContext(aws.Context, *lakeformation.CreateLakeFormationIdentityCenterConfigurationInput, ...request.Option) (*lakeformation.CreateLakeFormationIdentityCenterConfigurationOutput, error) + CreateLakeFormationIdentityCenterConfigurationRequest(*lakeformation.CreateLakeFormationIdentityCenterConfigurationInput) (*request.Request, *lakeformation.CreateLakeFormationIdentityCenterConfigurationOutput) + + CreateLakeFormationOptIn(*lakeformation.CreateLakeFormationOptInInput) (*lakeformation.CreateLakeFormationOptInOutput, error) + CreateLakeFormationOptInWithContext(aws.Context, *lakeformation.CreateLakeFormationOptInInput, ...request.Option) (*lakeformation.CreateLakeFormationOptInOutput, error) + CreateLakeFormationOptInRequest(*lakeformation.CreateLakeFormationOptInInput) (*request.Request, *lakeformation.CreateLakeFormationOptInOutput) + DeleteDataCellsFilter(*lakeformation.DeleteDataCellsFilterInput) (*lakeformation.DeleteDataCellsFilterOutput, error) DeleteDataCellsFilterWithContext(aws.Context, *lakeformation.DeleteDataCellsFilterInput, ...request.Option) (*lakeformation.DeleteDataCellsFilterOutput, error) DeleteDataCellsFilterRequest(*lakeformation.DeleteDataCellsFilterInput) (*request.Request, *lakeformation.DeleteDataCellsFilterOutput) @@ -100,6 +108,14 @@ DeleteLFTagWithContext(aws.Context, *lakeformation.DeleteLFTagInput, ...request.Option) (*lakeformation.DeleteLFTagOutput, error) DeleteLFTagRequest(*lakeformation.DeleteLFTagInput) (*request.Request, *lakeformation.DeleteLFTagOutput) + DeleteLakeFormationIdentityCenterConfiguration(*lakeformation.DeleteLakeFormationIdentityCenterConfigurationInput) (*lakeformation.DeleteLakeFormationIdentityCenterConfigurationOutput, error) + DeleteLakeFormationIdentityCenterConfigurationWithContext(aws.Context, *lakeformation.DeleteLakeFormationIdentityCenterConfigurationInput, ...request.Option) (*lakeformation.DeleteLakeFormationIdentityCenterConfigurationOutput, error) + DeleteLakeFormationIdentityCenterConfigurationRequest(*lakeformation.DeleteLakeFormationIdentityCenterConfigurationInput) (*request.Request, *lakeformation.DeleteLakeFormationIdentityCenterConfigurationOutput) + + DeleteLakeFormationOptIn(*lakeformation.DeleteLakeFormationOptInInput) (*lakeformation.DeleteLakeFormationOptInOutput, error) + DeleteLakeFormationOptInWithContext(aws.Context, *lakeformation.DeleteLakeFormationOptInInput, ...request.Option) (*lakeformation.DeleteLakeFormationOptInOutput, error) + DeleteLakeFormationOptInRequest(*lakeformation.DeleteLakeFormationOptInInput) (*request.Request, *lakeformation.DeleteLakeFormationOptInOutput) + DeleteObjectsOnCancel(*lakeformation.DeleteObjectsOnCancelInput) (*lakeformation.DeleteObjectsOnCancelOutput, error) DeleteObjectsOnCancelWithContext(aws.Context, *lakeformation.DeleteObjectsOnCancelInput, ...request.Option) (*lakeformation.DeleteObjectsOnCancelOutput, error) DeleteObjectsOnCancelRequest(*lakeformation.DeleteObjectsOnCancelInput) (*request.Request, *lakeformation.DeleteObjectsOnCancelOutput) @@ -108,6 +124,10 @@ DeregisterResourceWithContext(aws.Context, *lakeformation.DeregisterResourceInput, ...request.Option) (*lakeformation.DeregisterResourceOutput, error) DeregisterResourceRequest(*lakeformation.DeregisterResourceInput) (*request.Request, *lakeformation.DeregisterResourceOutput) + DescribeLakeFormationIdentityCenterConfiguration(*lakeformation.DescribeLakeFormationIdentityCenterConfigurationInput) (*lakeformation.DescribeLakeFormationIdentityCenterConfigurationOutput, error) + DescribeLakeFormationIdentityCenterConfigurationWithContext(aws.Context, *lakeformation.DescribeLakeFormationIdentityCenterConfigurationInput, ...request.Option) (*lakeformation.DescribeLakeFormationIdentityCenterConfigurationOutput, error) + DescribeLakeFormationIdentityCenterConfigurationRequest(*lakeformation.DescribeLakeFormationIdentityCenterConfigurationInput) (*request.Request, *lakeformation.DescribeLakeFormationIdentityCenterConfigurationOutput) + DescribeResource(*lakeformation.DescribeResourceInput) (*lakeformation.DescribeResourceOutput, error) DescribeResourceWithContext(aws.Context, *lakeformation.DescribeResourceInput, ...request.Option) (*lakeformation.DescribeResourceOutput, error) DescribeResourceRequest(*lakeformation.DescribeResourceInput) (*request.Request, *lakeformation.DescribeResourceOutput) @@ -195,6 +215,13 @@ ListLFTagsPages(*lakeformation.ListLFTagsInput, func(*lakeformation.ListLFTagsOutput, bool) bool) error ListLFTagsPagesWithContext(aws.Context, *lakeformation.ListLFTagsInput, func(*lakeformation.ListLFTagsOutput, bool) bool, ...request.Option) error + ListLakeFormationOptIns(*lakeformation.ListLakeFormationOptInsInput) (*lakeformation.ListLakeFormationOptInsOutput, error) + ListLakeFormationOptInsWithContext(aws.Context, *lakeformation.ListLakeFormationOptInsInput, ...request.Option) (*lakeformation.ListLakeFormationOptInsOutput, error) + ListLakeFormationOptInsRequest(*lakeformation.ListLakeFormationOptInsInput) (*request.Request, *lakeformation.ListLakeFormationOptInsOutput) + + ListLakeFormationOptInsPages(*lakeformation.ListLakeFormationOptInsInput, func(*lakeformation.ListLakeFormationOptInsOutput, bool) bool) error + ListLakeFormationOptInsPagesWithContext(aws.Context, *lakeformation.ListLakeFormationOptInsInput, func(*lakeformation.ListLakeFormationOptInsOutput, bool) bool, ...request.Option) error + ListPermissions(*lakeformation.ListPermissionsInput) (*lakeformation.ListPermissionsOutput, error) ListPermissionsWithContext(aws.Context, *lakeformation.ListPermissionsInput, ...request.Option) (*lakeformation.ListPermissionsOutput, error) ListPermissionsRequest(*lakeformation.ListPermissionsInput) (*request.Request, *lakeformation.ListPermissionsOutput) @@ -269,6 +296,10 @@ UpdateLFTagWithContext(aws.Context, *lakeformation.UpdateLFTagInput, ...request.Option) (*lakeformation.UpdateLFTagOutput, error) UpdateLFTagRequest(*lakeformation.UpdateLFTagInput) (*request.Request, *lakeformation.UpdateLFTagOutput) + UpdateLakeFormationIdentityCenterConfiguration(*lakeformation.UpdateLakeFormationIdentityCenterConfigurationInput) (*lakeformation.UpdateLakeFormationIdentityCenterConfigurationOutput, error) + UpdateLakeFormationIdentityCenterConfigurationWithContext(aws.Context, *lakeformation.UpdateLakeFormationIdentityCenterConfigurationInput, ...request.Option) (*lakeformation.UpdateLakeFormationIdentityCenterConfigurationOutput, error) + UpdateLakeFormationIdentityCenterConfigurationRequest(*lakeformation.UpdateLakeFormationIdentityCenterConfigurationInput) (*request.Request, *lakeformation.UpdateLakeFormationIdentityCenterConfigurationOutput) + UpdateResource(*lakeformation.UpdateResourceInput) (*lakeformation.UpdateResourceOutput, error) UpdateResourceWithContext(aws.Context, *lakeformation.UpdateResourceInput, ...request.Option) (*lakeformation.UpdateResourceOutput, error) UpdateResourceRequest(*lakeformation.UpdateResourceInput) (*request.Request, *lakeformation.UpdateResourceOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lambda/api.go golang-github-aws-aws-sdk-go-1.48.14/service/lambda/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lambda/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lambda/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3254,8 +3254,10 @@ // Invoke API operation for AWS Lambda. // // Invokes a Lambda function. You can invoke a function synchronously (and wait -// for the response), or asynchronously. To invoke a function asynchronously, -// set InvocationType to Event. +// for the response), or asynchronously. By default, Lambda invokes your function +// synchronously (i.e. theInvocationType is RequestResponse). To invoke a function +// asynchronously, set InvocationType to Event. Lambda passes the ClientContext +// object to your function for synchronous invocations only. // // For synchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-sync.html), // details about the function response, including errors, are included in the @@ -9274,6 +9276,9 @@ // ARN, including the version. Layers []*string `type:"list"` + // The function's Amazon CloudWatch Logs configuration settings. + LoggingConfig *LoggingConfig `type:"structure"` + // The amount of memory available to the function (https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-memory-console) // at runtime. Increasing the function memory also increases its CPU allocation. // The default value is 128 MB. The value can be any multiple of 1 MB. @@ -9385,6 +9390,11 @@ } } } + if s.LoggingConfig != nil { + if err := s.LoggingConfig.Validate(); err != nil { + invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -9470,6 +9480,12 @@ return s } +// SetLoggingConfig sets the LoggingConfig field's value. +func (s *CreateFunctionInput) SetLoggingConfig(v *LoggingConfig) *CreateFunctionInput { + s.LoggingConfig = v + return s +} + // SetMemorySize sets the MemorySize field's value. func (s *CreateFunctionInput) SetMemorySize(v int64) *CreateFunctionInput { s.MemorySize = &v @@ -12132,6 +12148,9 @@ // The function's layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). Layers []*Layer `type:"list"` + // The function's Amazon CloudWatch Logs configuration settings. + LoggingConfig *LoggingConfig `type:"structure"` + // For Lambda@Edge functions, the ARN of the main function. MasterArn *string `type:"string"` @@ -12320,6 +12339,12 @@ return s } +// SetLoggingConfig sets the LoggingConfig field's value. +func (s *FunctionConfiguration) SetLoggingConfig(v *LoggingConfig) *FunctionConfiguration { + s.LoggingConfig = v + return s +} + // SetMasterArn sets the MasterArn field's value. func (s *FunctionConfiguration) SetMasterArn(v string) *FunctionConfiguration { s.MasterArn = &v @@ -17889,6 +17914,86 @@ return s } +// The function's Amazon CloudWatch Logs configuration settings. +type LoggingConfig struct { + _ struct{} `type:"structure"` + + // Set this property to filter the application logs for your function that Lambda + // sends to CloudWatch. Lambda only sends application logs at the selected level + // and lower. + ApplicationLogLevel *string `type:"string" enum:"ApplicationLogLevel"` + + // The format in which Lambda sends your function's application and system logs + // to CloudWatch. Select between plain text and structured JSON. + LogFormat *string `type:"string" enum:"LogFormat"` + + // The name of the Amazon CloudWatch log group the function sends logs to. By + // default, Lambda functions send logs to a default log group named /aws/lambda/. To use a different log group, enter an existing log group or enter + // a new log group name. + LogGroup *string `min:"1" type:"string"` + + // Set this property to filter the system logs for your function that Lambda + // sends to CloudWatch. Lambda only sends system logs at the selected level + // and lower. + SystemLogLevel *string `type:"string" enum:"SystemLogLevel"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LoggingConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LoggingConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LoggingConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"} + if s.LogGroup != nil && len(*s.LogGroup) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogGroup", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationLogLevel sets the ApplicationLogLevel field's value. +func (s *LoggingConfig) SetApplicationLogLevel(v string) *LoggingConfig { + s.ApplicationLogLevel = &v + return s +} + +// SetLogFormat sets the LogFormat field's value. +func (s *LoggingConfig) SetLogFormat(v string) *LoggingConfig { + s.LogFormat = &v + return s +} + +// SetLogGroup sets the LogGroup field's value. +func (s *LoggingConfig) SetLogGroup(v string) *LoggingConfig { + s.LogGroup = &v + return s +} + +// SetSystemLogLevel sets the SystemLogLevel field's value. +func (s *LoggingConfig) SetSystemLogLevel(v string) *LoggingConfig { + s.SystemLogLevel = &v + return s +} + // A destination for events that failed processing. type OnFailure struct { _ struct{} `type:"structure"` @@ -21837,6 +21942,9 @@ // ARN, including the version. Layers []*string `type:"list"` + // The function's Amazon CloudWatch Logs configuration settings. + LoggingConfig *LoggingConfig `type:"structure"` + // The amount of memory available to the function (https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-memory-console) // at runtime. Increasing the function memory also increases its CPU allocation. // The default value is 128 MB. The value can be any multiple of 1 MB. @@ -21926,6 +22034,11 @@ } } } + if s.LoggingConfig != nil { + if err := s.LoggingConfig.Validate(); err != nil { + invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -21993,6 +22106,12 @@ return s } +// SetLoggingConfig sets the LoggingConfig field's value. +func (s *UpdateFunctionConfigurationInput) SetLoggingConfig(v *LoggingConfig) *UpdateFunctionConfigurationInput { + s.LoggingConfig = v + return s +} + // SetMemorySize sets the MemorySize field's value. func (s *UpdateFunctionConfigurationInput) SetMemorySize(v int64) *UpdateFunctionConfigurationInput { s.MemorySize = &v @@ -22459,6 +22578,10 @@ type VpcConfig struct { _ struct{} `type:"structure"` + // Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack + // subnets. + Ipv6AllowedForDualStack *bool `type:"boolean"` + // A list of VPC security group IDs. SecurityGroupIds []*string `type:"list"` @@ -22484,6 +22607,12 @@ return s.String() } +// SetIpv6AllowedForDualStack sets the Ipv6AllowedForDualStack field's value. +func (s *VpcConfig) SetIpv6AllowedForDualStack(v bool) *VpcConfig { + s.Ipv6AllowedForDualStack = &v + return s +} + // SetSecurityGroupIds sets the SecurityGroupIds field's value. func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig { s.SecurityGroupIds = v @@ -22500,6 +22629,10 @@ type VpcConfigResponse struct { _ struct{} `type:"structure"` + // Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack + // subnets. + Ipv6AllowedForDualStack *bool `type:"boolean"` + // A list of VPC security group IDs. SecurityGroupIds []*string `type:"list"` @@ -22528,6 +22661,12 @@ return s.String() } +// SetIpv6AllowedForDualStack sets the Ipv6AllowedForDualStack field's value. +func (s *VpcConfigResponse) SetIpv6AllowedForDualStack(v bool) *VpcConfigResponse { + s.Ipv6AllowedForDualStack = &v + return s +} + // SetSecurityGroupIds sets the SecurityGroupIds field's value. func (s *VpcConfigResponse) SetSecurityGroupIds(v []*string) *VpcConfigResponse { s.SecurityGroupIds = v @@ -22547,6 +22686,38 @@ } const ( + // ApplicationLogLevelTrace is a ApplicationLogLevel enum value + ApplicationLogLevelTrace = "TRACE" + + // ApplicationLogLevelDebug is a ApplicationLogLevel enum value + ApplicationLogLevelDebug = "DEBUG" + + // ApplicationLogLevelInfo is a ApplicationLogLevel enum value + ApplicationLogLevelInfo = "INFO" + + // ApplicationLogLevelWarn is a ApplicationLogLevel enum value + ApplicationLogLevelWarn = "WARN" + + // ApplicationLogLevelError is a ApplicationLogLevel enum value + ApplicationLogLevelError = "ERROR" + + // ApplicationLogLevelFatal is a ApplicationLogLevel enum value + ApplicationLogLevelFatal = "FATAL" +) + +// ApplicationLogLevel_Values returns all elements of the ApplicationLogLevel enum +func ApplicationLogLevel_Values() []string { + return []string{ + ApplicationLogLevelTrace, + ApplicationLogLevelDebug, + ApplicationLogLevelInfo, + ApplicationLogLevelWarn, + ApplicationLogLevelError, + ApplicationLogLevelFatal, + } +} + +const ( // ArchitectureX8664 is a Architecture enum value ArchitectureX8664 = "x86_64" @@ -22815,6 +22986,22 @@ } const ( + // LogFormatJson is a LogFormat enum value + LogFormatJson = "JSON" + + // LogFormatText is a LogFormat enum value + LogFormatText = "Text" +) + +// LogFormat_Values returns all elements of the LogFormat enum +func LogFormat_Values() []string { + return []string{ + LogFormatJson, + LogFormatText, + } +} + +const ( // LogTypeNone is a LogType enum value LogTypeNone = "None" @@ -22978,6 +23165,18 @@ // RuntimePython311 is a Runtime enum value RuntimePython311 = "python3.11" + + // RuntimeNodejs20X is a Runtime enum value + RuntimeNodejs20X = "nodejs20.x" + + // RuntimeProvidedAl2023 is a Runtime enum value + RuntimeProvidedAl2023 = "provided.al2023" + + // RuntimePython312 is a Runtime enum value + RuntimePython312 = "python3.12" + + // RuntimeJava21 is a Runtime enum value + RuntimeJava21 = "java21" ) // Runtime_Values returns all elements of the Runtime enum @@ -23015,6 +23214,10 @@ RuntimeJava17, RuntimeRuby32, RuntimePython311, + RuntimeNodejs20X, + RuntimeProvidedAl2023, + RuntimePython312, + RuntimeJava21, } } @@ -23218,6 +23421,26 @@ } } +const ( + // SystemLogLevelDebug is a SystemLogLevel enum value + SystemLogLevelDebug = "DEBUG" + + // SystemLogLevelInfo is a SystemLogLevel enum value + SystemLogLevelInfo = "INFO" + + // SystemLogLevelWarn is a SystemLogLevel enum value + SystemLogLevelWarn = "WARN" +) + +// SystemLogLevel_Values returns all elements of the SystemLogLevel enum +func SystemLogLevel_Values() []string { + return []string{ + SystemLogLevelDebug, + SystemLogLevelInfo, + SystemLogLevelWarn, + } +} + const ( // ThrottleReasonConcurrentInvocationLimitExceeded is a ThrottleReason enum value ThrottleReasonConcurrentInvocationLimitExceeded = "ConcurrentInvocationLimitExceeded" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/api.go golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,2703 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package launchwizard + +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" +) + +const opCreateDeployment = "CreateDeployment" + +// CreateDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the CreateDeployment 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 CreateDeployment for more information on using the CreateDeployment +// 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 CreateDeploymentRequest method. +// req, resp := client.CreateDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/CreateDeployment +func (c *LaunchWizard) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request.Request, output *CreateDeploymentOutput) { + op := &request.Operation{ + Name: opCreateDeployment, + HTTPMethod: "POST", + HTTPPath: "/createDeployment", + } + + if input == nil { + input = &CreateDeploymentInput{} + } + + output = &CreateDeploymentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDeployment API operation for AWS Launch Wizard. +// +// Creates a deployment for the given workload. Deployments created by this +// operation are not available in the Launch Wizard console to use the Clone +// deployment action on. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation CreateDeployment for usage and error information. +// +// Returned Error Types: +// +// - ResourceLimitException +// You have exceeded an Launch Wizard resource limit. For example, you might +// have too many deployments in progress. +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified workload or deployment resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/CreateDeployment +func (c *LaunchWizard) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) { + req, out := c.CreateDeploymentRequest(input) + return out, req.Send() +} + +// CreateDeploymentWithContext is the same as CreateDeployment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDeployment 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 *LaunchWizard) CreateDeploymentWithContext(ctx aws.Context, input *CreateDeploymentInput, opts ...request.Option) (*CreateDeploymentOutput, error) { + req, out := c.CreateDeploymentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDeployment = "DeleteDeployment" + +// DeleteDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDeployment 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 DeleteDeployment for more information on using the DeleteDeployment +// 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 DeleteDeploymentRequest method. +// req, resp := client.DeleteDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/DeleteDeployment +func (c *LaunchWizard) DeleteDeploymentRequest(input *DeleteDeploymentInput) (req *request.Request, output *DeleteDeploymentOutput) { + op := &request.Operation{ + Name: opDeleteDeployment, + HTTPMethod: "POST", + HTTPPath: "/deleteDeployment", + } + + if input == nil { + input = &DeleteDeploymentInput{} + } + + output = &DeleteDeploymentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDeployment API operation for AWS Launch Wizard. +// +// Deletes a deployment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation DeleteDeployment for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified workload or deployment resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/DeleteDeployment +func (c *LaunchWizard) DeleteDeployment(input *DeleteDeploymentInput) (*DeleteDeploymentOutput, error) { + req, out := c.DeleteDeploymentRequest(input) + return out, req.Send() +} + +// DeleteDeploymentWithContext is the same as DeleteDeployment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDeployment 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 *LaunchWizard) DeleteDeploymentWithContext(ctx aws.Context, input *DeleteDeploymentInput, opts ...request.Option) (*DeleteDeploymentOutput, error) { + req, out := c.DeleteDeploymentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDeployment = "GetDeployment" + +// GetDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the GetDeployment 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 GetDeployment for more information on using the GetDeployment +// 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 GetDeploymentRequest method. +// req, resp := client.GetDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/GetDeployment +func (c *LaunchWizard) GetDeploymentRequest(input *GetDeploymentInput) (req *request.Request, output *GetDeploymentOutput) { + op := &request.Operation{ + Name: opGetDeployment, + HTTPMethod: "POST", + HTTPPath: "/getDeployment", + } + + if input == nil { + input = &GetDeploymentInput{} + } + + output = &GetDeploymentOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDeployment API operation for AWS Launch Wizard. +// +// Returns information about the deployment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation GetDeployment for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified workload or deployment resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/GetDeployment +func (c *LaunchWizard) GetDeployment(input *GetDeploymentInput) (*GetDeploymentOutput, error) { + req, out := c.GetDeploymentRequest(input) + return out, req.Send() +} + +// GetDeploymentWithContext is the same as GetDeployment with the addition of +// the ability to pass a context and additional request options. +// +// See GetDeployment 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 *LaunchWizard) GetDeploymentWithContext(ctx aws.Context, input *GetDeploymentInput, opts ...request.Option) (*GetDeploymentOutput, error) { + req, out := c.GetDeploymentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetWorkload = "GetWorkload" + +// GetWorkloadRequest generates a "aws/request.Request" representing the +// client's request for the GetWorkload 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 GetWorkload for more information on using the GetWorkload +// 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 GetWorkloadRequest method. +// req, resp := client.GetWorkloadRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/GetWorkload +func (c *LaunchWizard) GetWorkloadRequest(input *GetWorkloadInput) (req *request.Request, output *GetWorkloadOutput) { + op := &request.Operation{ + Name: opGetWorkload, + HTTPMethod: "POST", + HTTPPath: "/getWorkload", + } + + if input == nil { + input = &GetWorkloadInput{} + } + + output = &GetWorkloadOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetWorkload API operation for AWS Launch Wizard. +// +// Returns information about a workload. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation GetWorkload for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified workload or deployment resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/GetWorkload +func (c *LaunchWizard) GetWorkload(input *GetWorkloadInput) (*GetWorkloadOutput, error) { + req, out := c.GetWorkloadRequest(input) + return out, req.Send() +} + +// GetWorkloadWithContext is the same as GetWorkload with the addition of +// the ability to pass a context and additional request options. +// +// See GetWorkload 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 *LaunchWizard) GetWorkloadWithContext(ctx aws.Context, input *GetWorkloadInput, opts ...request.Option) (*GetWorkloadOutput, error) { + req, out := c.GetWorkloadRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDeploymentEvents = "ListDeploymentEvents" + +// ListDeploymentEventsRequest generates a "aws/request.Request" representing the +// client's request for the ListDeploymentEvents 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 ListDeploymentEvents for more information on using the ListDeploymentEvents +// 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 ListDeploymentEventsRequest method. +// req, resp := client.ListDeploymentEventsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListDeploymentEvents +func (c *LaunchWizard) ListDeploymentEventsRequest(input *ListDeploymentEventsInput) (req *request.Request, output *ListDeploymentEventsOutput) { + op := &request.Operation{ + Name: opListDeploymentEvents, + HTTPMethod: "POST", + HTTPPath: "/listDeploymentEvents", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDeploymentEventsInput{} + } + + output = &ListDeploymentEventsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDeploymentEvents API operation for AWS Launch Wizard. +// +// Lists the events of a deployment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation ListDeploymentEvents for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified workload or deployment resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListDeploymentEvents +func (c *LaunchWizard) ListDeploymentEvents(input *ListDeploymentEventsInput) (*ListDeploymentEventsOutput, error) { + req, out := c.ListDeploymentEventsRequest(input) + return out, req.Send() +} + +// ListDeploymentEventsWithContext is the same as ListDeploymentEvents with the addition of +// the ability to pass a context and additional request options. +// +// See ListDeploymentEvents 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 *LaunchWizard) ListDeploymentEventsWithContext(ctx aws.Context, input *ListDeploymentEventsInput, opts ...request.Option) (*ListDeploymentEventsOutput, error) { + req, out := c.ListDeploymentEventsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDeploymentEventsPages iterates over the pages of a ListDeploymentEvents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDeploymentEvents 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 ListDeploymentEvents operation. +// pageNum := 0 +// err := client.ListDeploymentEventsPages(params, +// func(page *launchwizard.ListDeploymentEventsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LaunchWizard) ListDeploymentEventsPages(input *ListDeploymentEventsInput, fn func(*ListDeploymentEventsOutput, bool) bool) error { + return c.ListDeploymentEventsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDeploymentEventsPagesWithContext same as ListDeploymentEventsPages 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 *LaunchWizard) ListDeploymentEventsPagesWithContext(ctx aws.Context, input *ListDeploymentEventsInput, fn func(*ListDeploymentEventsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDeploymentEventsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDeploymentEventsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDeploymentEventsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDeployments = "ListDeployments" + +// ListDeploymentsRequest generates a "aws/request.Request" representing the +// client's request for the ListDeployments 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 ListDeployments for more information on using the ListDeployments +// 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 ListDeploymentsRequest method. +// req, resp := client.ListDeploymentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListDeployments +func (c *LaunchWizard) ListDeploymentsRequest(input *ListDeploymentsInput) (req *request.Request, output *ListDeploymentsOutput) { + op := &request.Operation{ + Name: opListDeployments, + HTTPMethod: "POST", + HTTPPath: "/listDeployments", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDeploymentsInput{} + } + + output = &ListDeploymentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDeployments API operation for AWS Launch Wizard. +// +// Lists the deployments that have been created. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation ListDeployments for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListDeployments +func (c *LaunchWizard) ListDeployments(input *ListDeploymentsInput) (*ListDeploymentsOutput, error) { + req, out := c.ListDeploymentsRequest(input) + return out, req.Send() +} + +// ListDeploymentsWithContext is the same as ListDeployments with the addition of +// the ability to pass a context and additional request options. +// +// See ListDeployments 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 *LaunchWizard) ListDeploymentsWithContext(ctx aws.Context, input *ListDeploymentsInput, opts ...request.Option) (*ListDeploymentsOutput, error) { + req, out := c.ListDeploymentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDeploymentsPages iterates over the pages of a ListDeployments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDeployments 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 ListDeployments operation. +// pageNum := 0 +// err := client.ListDeploymentsPages(params, +// func(page *launchwizard.ListDeploymentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LaunchWizard) ListDeploymentsPages(input *ListDeploymentsInput, fn func(*ListDeploymentsOutput, bool) bool) error { + return c.ListDeploymentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDeploymentsPagesWithContext same as ListDeploymentsPages 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 *LaunchWizard) ListDeploymentsPagesWithContext(ctx aws.Context, input *ListDeploymentsInput, fn func(*ListDeploymentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDeploymentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDeploymentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDeploymentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListWorkloadDeploymentPatterns = "ListWorkloadDeploymentPatterns" + +// ListWorkloadDeploymentPatternsRequest generates a "aws/request.Request" representing the +// client's request for the ListWorkloadDeploymentPatterns 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 ListWorkloadDeploymentPatterns for more information on using the ListWorkloadDeploymentPatterns +// 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 ListWorkloadDeploymentPatternsRequest method. +// req, resp := client.ListWorkloadDeploymentPatternsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListWorkloadDeploymentPatterns +func (c *LaunchWizard) ListWorkloadDeploymentPatternsRequest(input *ListWorkloadDeploymentPatternsInput) (req *request.Request, output *ListWorkloadDeploymentPatternsOutput) { + op := &request.Operation{ + Name: opListWorkloadDeploymentPatterns, + HTTPMethod: "POST", + HTTPPath: "/listWorkloadDeploymentPatterns", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListWorkloadDeploymentPatternsInput{} + } + + output = &ListWorkloadDeploymentPatternsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListWorkloadDeploymentPatterns API operation for AWS Launch Wizard. +// +// Lists the workload deployment patterns. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation ListWorkloadDeploymentPatterns for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ResourceNotFoundException +// The specified workload or deployment resource can't be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListWorkloadDeploymentPatterns +func (c *LaunchWizard) ListWorkloadDeploymentPatterns(input *ListWorkloadDeploymentPatternsInput) (*ListWorkloadDeploymentPatternsOutput, error) { + req, out := c.ListWorkloadDeploymentPatternsRequest(input) + return out, req.Send() +} + +// ListWorkloadDeploymentPatternsWithContext is the same as ListWorkloadDeploymentPatterns with the addition of +// the ability to pass a context and additional request options. +// +// See ListWorkloadDeploymentPatterns 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 *LaunchWizard) ListWorkloadDeploymentPatternsWithContext(ctx aws.Context, input *ListWorkloadDeploymentPatternsInput, opts ...request.Option) (*ListWorkloadDeploymentPatternsOutput, error) { + req, out := c.ListWorkloadDeploymentPatternsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListWorkloadDeploymentPatternsPages iterates over the pages of a ListWorkloadDeploymentPatterns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWorkloadDeploymentPatterns 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 ListWorkloadDeploymentPatterns operation. +// pageNum := 0 +// err := client.ListWorkloadDeploymentPatternsPages(params, +// func(page *launchwizard.ListWorkloadDeploymentPatternsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LaunchWizard) ListWorkloadDeploymentPatternsPages(input *ListWorkloadDeploymentPatternsInput, fn func(*ListWorkloadDeploymentPatternsOutput, bool) bool) error { + return c.ListWorkloadDeploymentPatternsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListWorkloadDeploymentPatternsPagesWithContext same as ListWorkloadDeploymentPatternsPages 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 *LaunchWizard) ListWorkloadDeploymentPatternsPagesWithContext(ctx aws.Context, input *ListWorkloadDeploymentPatternsInput, fn func(*ListWorkloadDeploymentPatternsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWorkloadDeploymentPatternsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWorkloadDeploymentPatternsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWorkloadDeploymentPatternsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListWorkloads = "ListWorkloads" + +// ListWorkloadsRequest generates a "aws/request.Request" representing the +// client's request for the ListWorkloads 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 ListWorkloads for more information on using the ListWorkloads +// 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 ListWorkloadsRequest method. +// req, resp := client.ListWorkloadsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListWorkloads +func (c *LaunchWizard) ListWorkloadsRequest(input *ListWorkloadsInput) (req *request.Request, output *ListWorkloadsOutput) { + op := &request.Operation{ + Name: opListWorkloads, + HTTPMethod: "POST", + HTTPPath: "/listWorkloads", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListWorkloadsInput{} + } + + output = &ListWorkloadsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListWorkloads API operation for AWS Launch Wizard. +// +// Lists the workloads. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Launch Wizard's +// API operation ListWorkloads for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10/ListWorkloads +func (c *LaunchWizard) ListWorkloads(input *ListWorkloadsInput) (*ListWorkloadsOutput, error) { + req, out := c.ListWorkloadsRequest(input) + return out, req.Send() +} + +// ListWorkloadsWithContext is the same as ListWorkloads with the addition of +// the ability to pass a context and additional request options. +// +// See ListWorkloads 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 *LaunchWizard) ListWorkloadsWithContext(ctx aws.Context, input *ListWorkloadsInput, opts ...request.Option) (*ListWorkloadsOutput, error) { + req, out := c.ListWorkloadsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListWorkloadsPages iterates over the pages of a ListWorkloads operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWorkloads 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 ListWorkloads operation. +// pageNum := 0 +// err := client.ListWorkloadsPages(params, +// func(page *launchwizard.ListWorkloadsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LaunchWizard) ListWorkloadsPages(input *ListWorkloadsInput, fn func(*ListWorkloadsOutput, bool) bool) error { + return c.ListWorkloadsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListWorkloadsPagesWithContext same as ListWorkloadsPages 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 *LaunchWizard) ListWorkloadsPagesWithContext(ctx aws.Context, input *ListWorkloadsInput, fn func(*ListWorkloadsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWorkloadsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWorkloadsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWorkloadsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +type CreateDeploymentInput struct { + _ struct{} `type:"structure"` + + // The name of the deployment pattern supported by a given workload. You can + // use the ListWorkloadDeploymentPatterns (https://docs.aws.amazon.com/launchwizard/latest/APIReference/API_ListWorkloadDeploymentPatterns.html) + // operation to discover supported values for this parameter. + // + // DeploymentPatternName is a required field + DeploymentPatternName *string `locationName:"deploymentPatternName" min:"1" type:"string" required:"true"` + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have + // the required permissions, the error response is DryRunOperation. Otherwise, + // it is UnauthorizedOperation. + DryRun *bool `locationName:"dryRun" type:"boolean"` + + // The name of the deployment. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The settings specified for the deployment. For more information on the specifications + // required for creating a deployment, see Workload specifications (https://docs.aws.amazon.com/launchwizard/latest/APIReference/launch-wizard-specifications.html). + // + // Specifications is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDeploymentInput's + // String and GoString methods. + // + // Specifications is a required field + Specifications map[string]*string `locationName:"specifications" min:"1" type:"map" required:"true" sensitive:"true"` + + // The name of the workload. You can use the ListWorkloadDeploymentPatterns + // (https://docs.aws.amazon.com/launchwizard/latest/APIReference/API_ListWorkloadDeploymentPatterns.html) + // operation to discover supported values for this parameter. + // + // WorkloadName is a required field + WorkloadName *string `locationName:"workloadName" 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 CreateDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDeploymentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDeploymentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentInput"} + if s.DeploymentPatternName == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentPatternName")) + } + if s.DeploymentPatternName != nil && len(*s.DeploymentPatternName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeploymentPatternName", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Specifications == nil { + invalidParams.Add(request.NewErrParamRequired("Specifications")) + } + if s.Specifications != nil && len(s.Specifications) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Specifications", 1)) + } + if s.WorkloadName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadName")) + } + if s.WorkloadName != nil && len(*s.WorkloadName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentPatternName sets the DeploymentPatternName field's value. +func (s *CreateDeploymentInput) SetDeploymentPatternName(v string) *CreateDeploymentInput { + s.DeploymentPatternName = &v + return s +} + +// SetDryRun sets the DryRun field's value. +func (s *CreateDeploymentInput) SetDryRun(v bool) *CreateDeploymentInput { + s.DryRun = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDeploymentInput) SetName(v string) *CreateDeploymentInput { + s.Name = &v + return s +} + +// SetSpecifications sets the Specifications field's value. +func (s *CreateDeploymentInput) SetSpecifications(v map[string]*string) *CreateDeploymentInput { + s.Specifications = v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *CreateDeploymentInput) SetWorkloadName(v string) *CreateDeploymentInput { + s.WorkloadName = &v + return s +} + +type CreateDeploymentOutput struct { + _ struct{} `type:"structure"` + + // The ID of the deployment. + DeploymentId *string `locationName:"deploymentId" min:"2" 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 CreateDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDeploymentOutput) GoString() string { + return s.String() +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *CreateDeploymentOutput) SetDeploymentId(v string) *CreateDeploymentOutput { + s.DeploymentId = &v + return s +} + +type DeleteDeploymentInput struct { + _ struct{} `type:"structure"` + + // The ID of the deployment. + // + // DeploymentId is a required field + DeploymentId *string `locationName:"deploymentId" min:"2" 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 DeleteDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeploymentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDeploymentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDeploymentInput"} + if s.DeploymentId == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentId")) + } + if s.DeploymentId != nil && len(*s.DeploymentId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("DeploymentId", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *DeleteDeploymentInput) SetDeploymentId(v string) *DeleteDeploymentInput { + s.DeploymentId = &v + return s +} + +type DeleteDeploymentOutput struct { + _ struct{} `type:"structure"` + + // The status of the deployment. + Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"` + + // The reason for the deployment status. + StatusReason *string `locationName:"statusReason" 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 DeleteDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeploymentOutput) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *DeleteDeploymentOutput) SetStatus(v string) *DeleteDeploymentOutput { + s.Status = &v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *DeleteDeploymentOutput) SetStatusReason(v string) *DeleteDeploymentOutput { + s.StatusReason = &v + return s +} + +// The data associated with a deployment. +type DeploymentData struct { + _ struct{} `type:"structure"` + + // The time the deployment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The time the deployment was deleted. + DeletedAt *time.Time `locationName:"deletedAt" type:"timestamp"` + + // The ID of the deployment. + Id *string `locationName:"id" min:"2" type:"string"` + + // The name of the deployment. + Name *string `locationName:"name" type:"string"` + + // The pattern name of the deployment. + PatternName *string `locationName:"patternName" min:"1" type:"string"` + + // The resource group of the deployment. + ResourceGroup *string `locationName:"resourceGroup" type:"string"` + + // The specifications of the deployment. For more information on specifications + // for each deployment, see Workload specifications (https://docs.aws.amazon.com/launchwizard/latest/APIReference/launch-wizard-specifications.html). + // + // Specifications is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeploymentData's + // String and GoString methods. + Specifications map[string]*string `locationName:"specifications" min:"1" type:"map" sensitive:"true"` + + // The status of the deployment. + Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"` + + // The name of the workload. + WorkloadName *string `locationName:"workloadName" 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 DeploymentData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentData) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DeploymentData) SetCreatedAt(v time.Time) *DeploymentData { + s.CreatedAt = &v + return s +} + +// SetDeletedAt sets the DeletedAt field's value. +func (s *DeploymentData) SetDeletedAt(v time.Time) *DeploymentData { + s.DeletedAt = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeploymentData) SetId(v string) *DeploymentData { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeploymentData) SetName(v string) *DeploymentData { + s.Name = &v + return s +} + +// SetPatternName sets the PatternName field's value. +func (s *DeploymentData) SetPatternName(v string) *DeploymentData { + s.PatternName = &v + return s +} + +// SetResourceGroup sets the ResourceGroup field's value. +func (s *DeploymentData) SetResourceGroup(v string) *DeploymentData { + s.ResourceGroup = &v + return s +} + +// SetSpecifications sets the Specifications field's value. +func (s *DeploymentData) SetSpecifications(v map[string]*string) *DeploymentData { + s.Specifications = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeploymentData) SetStatus(v string) *DeploymentData { + s.Status = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *DeploymentData) SetWorkloadName(v string) *DeploymentData { + s.WorkloadName = &v + return s +} + +// A summary of the deployment data. +type DeploymentDataSummary struct { + _ struct{} `type:"structure"` + + // The time the deployment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The ID of the deployment. + Id *string `locationName:"id" min:"2" type:"string"` + + // The name of the deployment + Name *string `locationName:"name" type:"string"` + + // The name of the workload deployment pattern. + PatternName *string `locationName:"patternName" min:"1" type:"string"` + + // The status of the deployment. + Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"` + + // The name of the workload. + WorkloadName *string `locationName:"workloadName" 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 DeploymentDataSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentDataSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DeploymentDataSummary) SetCreatedAt(v time.Time) *DeploymentDataSummary { + s.CreatedAt = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeploymentDataSummary) SetId(v string) *DeploymentDataSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeploymentDataSummary) SetName(v string) *DeploymentDataSummary { + s.Name = &v + return s +} + +// SetPatternName sets the PatternName field's value. +func (s *DeploymentDataSummary) SetPatternName(v string) *DeploymentDataSummary { + s.PatternName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeploymentDataSummary) SetStatus(v string) *DeploymentDataSummary { + s.Status = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *DeploymentDataSummary) SetWorkloadName(v string) *DeploymentDataSummary { + s.WorkloadName = &v + return s +} + +// A summary of the deployment event data. +type DeploymentEventDataSummary struct { + _ struct{} `type:"structure"` + + // The description of the deployment event. + Description *string `locationName:"description" type:"string"` + + // The name of the deployment event. + Name *string `locationName:"name" type:"string"` + + // The status of the deployment event. + Status *string `locationName:"status" type:"string" enum:"EventStatus"` + + // The reason of the deployment event status. + StatusReason *string `locationName:"statusReason" type:"string"` + + // The timestamp of the deployment event. + Timestamp *time.Time `locationName:"timestamp" 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 DeploymentEventDataSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentEventDataSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *DeploymentEventDataSummary) SetDescription(v string) *DeploymentEventDataSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeploymentEventDataSummary) SetName(v string) *DeploymentEventDataSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeploymentEventDataSummary) SetStatus(v string) *DeploymentEventDataSummary { + s.Status = &v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *DeploymentEventDataSummary) SetStatusReason(v string) *DeploymentEventDataSummary { + s.StatusReason = &v + return s +} + +// SetTimestamp sets the Timestamp field's value. +func (s *DeploymentEventDataSummary) SetTimestamp(v time.Time) *DeploymentEventDataSummary { + s.Timestamp = &v + return s +} + +// A filter name and value pair that is used to return more specific results +// from a describe operation. Filters can be used to match a set of resources +// by specific criteria. +type DeploymentFilter struct { + _ struct{} `type:"structure"` + + // The name of the filter. Filter names are case-sensitive. + Name *string `locationName:"name" type:"string" enum:"DeploymentFilterKey"` + + // The filter values. Filter values are case-sensitive. If you specify multiple + // values for a filter, the values are joined with an OR, and the request returns + // all results that match any of the specified values. + Values []*string `locationName:"values" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentFilter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *DeploymentFilter) SetName(v string) *DeploymentFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *DeploymentFilter) SetValues(v []*string) *DeploymentFilter { + s.Values = v + return s +} + +type GetDeploymentInput struct { + _ struct{} `type:"structure"` + + // The ID of the deployment. + // + // DeploymentId is a required field + DeploymentId *string `locationName:"deploymentId" min:"2" 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 GetDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeploymentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDeploymentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDeploymentInput"} + if s.DeploymentId == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentId")) + } + if s.DeploymentId != nil && len(*s.DeploymentId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("DeploymentId", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *GetDeploymentInput) SetDeploymentId(v string) *GetDeploymentInput { + s.DeploymentId = &v + return s +} + +type GetDeploymentOutput struct { + _ struct{} `type:"structure"` + + // An object that details the deployment. + Deployment *DeploymentData `locationName:"deployment" 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 GetDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeploymentOutput) GoString() string { + return s.String() +} + +// SetDeployment sets the Deployment field's value. +func (s *GetDeploymentOutput) SetDeployment(v *DeploymentData) *GetDeploymentOutput { + s.Deployment = v + return s +} + +type GetWorkloadInput struct { + _ struct{} `type:"structure"` + + // The name of the workload. + // + // WorkloadName is a required field + WorkloadName *string `locationName:"workloadName" 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 GetWorkloadInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetWorkloadInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetWorkloadInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetWorkloadInput"} + if s.WorkloadName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadName")) + } + if s.WorkloadName != nil && len(*s.WorkloadName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *GetWorkloadInput) SetWorkloadName(v string) *GetWorkloadInput { + s.WorkloadName = &v + return s +} + +type GetWorkloadOutput struct { + _ struct{} `type:"structure"` + + // Information about the workload. + Workload *WorkloadData `locationName:"workload" 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 GetWorkloadOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetWorkloadOutput) GoString() string { + return s.String() +} + +// SetWorkload sets the Workload field's value. +func (s *GetWorkloadOutput) SetWorkload(v *WorkloadData) *GetWorkloadOutput { + s.Workload = v + return s +} + +// An internal error has occurred. Retry your request, but if the problem persists, +// contact us with details by posting a question on re:Post (https://repost.aws/). +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListDeploymentEventsInput struct { + _ struct{} `type:"structure"` + + // The ID of the deployment. + // + // DeploymentId is a required field + DeploymentId *string `locationName:"deploymentId" min:"2" type:"string" required:"true"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentEventsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentEventsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDeploymentEventsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDeploymentEventsInput"} + if s.DeploymentId == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentId")) + } + if s.DeploymentId != nil && len(*s.DeploymentId) < 2 { + invalidParams.Add(request.NewErrParamMinLen("DeploymentId", 2)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *ListDeploymentEventsInput) SetDeploymentId(v string) *ListDeploymentEventsInput { + s.DeploymentId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDeploymentEventsInput) SetMaxResults(v int64) *ListDeploymentEventsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDeploymentEventsInput) SetNextToken(v string) *ListDeploymentEventsInput { + s.NextToken = &v + return s +} + +type ListDeploymentEventsOutput struct { + _ struct{} `type:"structure"` + + // Lists the deployment events. + DeploymentEvents []*DeploymentEventDataSummary `locationName:"deploymentEvents" type:"list"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentEventsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentEventsOutput) GoString() string { + return s.String() +} + +// SetDeploymentEvents sets the DeploymentEvents field's value. +func (s *ListDeploymentEventsOutput) SetDeploymentEvents(v []*DeploymentEventDataSummary) *ListDeploymentEventsOutput { + s.DeploymentEvents = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDeploymentEventsOutput) SetNextToken(v string) *ListDeploymentEventsOutput { + s.NextToken = &v + return s +} + +type ListDeploymentsInput struct { + _ struct{} `type:"structure"` + + // Filters to scope the results. The following filters are supported: + // + // * WORKLOAD_NAME + // + // * DEPLOYMENT_STATUS + Filters []*DeploymentFilter `locationName:"filters" min:"1" type:"list"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDeploymentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDeploymentsInput"} + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListDeploymentsInput) SetFilters(v []*DeploymentFilter) *ListDeploymentsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDeploymentsInput) SetMaxResults(v int64) *ListDeploymentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDeploymentsInput) SetNextToken(v string) *ListDeploymentsInput { + s.NextToken = &v + return s +} + +type ListDeploymentsOutput struct { + _ struct{} `type:"structure"` + + // Lists the deployments. + Deployments []*DeploymentDataSummary `locationName:"deployments" type:"list"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDeploymentsOutput) GoString() string { + return s.String() +} + +// SetDeployments sets the Deployments field's value. +func (s *ListDeploymentsOutput) SetDeployments(v []*DeploymentDataSummary) *ListDeploymentsOutput { + s.Deployments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDeploymentsOutput) SetNextToken(v string) *ListDeploymentsOutput { + s.NextToken = &v + return s +} + +type ListWorkloadDeploymentPatternsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The name of the workload. + // + // WorkloadName is a required field + WorkloadName *string `locationName:"workloadName" 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 ListWorkloadDeploymentPatternsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkloadDeploymentPatternsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListWorkloadDeploymentPatternsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWorkloadDeploymentPatternsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.WorkloadName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadName")) + } + if s.WorkloadName != nil && len(*s.WorkloadName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListWorkloadDeploymentPatternsInput) SetMaxResults(v int64) *ListWorkloadDeploymentPatternsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkloadDeploymentPatternsInput) SetNextToken(v string) *ListWorkloadDeploymentPatternsInput { + s.NextToken = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *ListWorkloadDeploymentPatternsInput) SetWorkloadName(v string) *ListWorkloadDeploymentPatternsInput { + s.WorkloadName = &v + return s +} + +type ListWorkloadDeploymentPatternsOutput struct { + _ struct{} `type:"structure"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Describes the workload deployment patterns. + WorkloadDeploymentPatterns []*WorkloadDeploymentPatternDataSummary `locationName:"workloadDeploymentPatterns" 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 ListWorkloadDeploymentPatternsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkloadDeploymentPatternsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkloadDeploymentPatternsOutput) SetNextToken(v string) *ListWorkloadDeploymentPatternsOutput { + s.NextToken = &v + return s +} + +// SetWorkloadDeploymentPatterns sets the WorkloadDeploymentPatterns field's value. +func (s *ListWorkloadDeploymentPatternsOutput) SetWorkloadDeploymentPatterns(v []*WorkloadDeploymentPatternDataSummary) *ListWorkloadDeploymentPatternsOutput { + s.WorkloadDeploymentPatterns = v + return s +} + +type ListWorkloadsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return for this request. To get the next page + // of items, make another request with the token returned in the output. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token returned from a previous paginated request. Pagination continues + // from the end of the items returned by the previous request. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkloadsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkloadsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListWorkloadsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWorkloadsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListWorkloadsInput) SetMaxResults(v int64) *ListWorkloadsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkloadsInput) SetNextToken(v string) *ListWorkloadsInput { + s.NextToken = &v + return s +} + +type ListWorkloadsOutput struct { + _ struct{} `type:"structure"` + + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Information about the workloads. + Workloads []*WorkloadDataSummary `locationName:"workloads" 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 ListWorkloadsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkloadsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkloadsOutput) SetNextToken(v string) *ListWorkloadsOutput { + s.NextToken = &v + return s +} + +// SetWorkloads sets the Workloads field's value. +func (s *ListWorkloadsOutput) SetWorkloads(v []*WorkloadDataSummary) *ListWorkloadsOutput { + s.Workloads = v + return s +} + +// You have exceeded an Launch Wizard resource limit. For example, you might +// have too many deployments in progress. +type ResourceLimitException 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 ResourceLimitException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceLimitException) GoString() string { + return s.String() +} + +func newErrorResourceLimitException(v protocol.ResponseMetadata) error { + return &ResourceLimitException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceLimitException) Code() string { + return "ResourceLimitException" +} + +// Message returns the exception's message. +func (s *ResourceLimitException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceLimitException) OrigErr() error { + return nil +} + +func (s *ResourceLimitException) 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 *ResourceLimitException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceLimitException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified workload or deployment resource can't be found. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input fails to satisfy the constraints specified by an Amazon Web Services +// 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 +} + +// Describes a workload. +type WorkloadData struct { + _ struct{} `type:"structure"` + + // The description of a workload. + Description *string `locationName:"description" type:"string"` + + // The display name of a workload. + DisplayName *string `locationName:"displayName" type:"string"` + + // The URL of a workload document. + DocumentationUrl *string `locationName:"documentationUrl" type:"string"` + + // The URL of a workload icon. + IconUrl *string `locationName:"iconUrl" type:"string"` + + // The status of a workload. + Status *string `locationName:"status" type:"string" enum:"WorkloadStatus"` + + // The message about a workload's status. + StatusMessage *string `locationName:"statusMessage" type:"string"` + + // The name of the workload. + WorkloadName *string `locationName:"workloadName" 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 WorkloadData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkloadData) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *WorkloadData) SetDescription(v string) *WorkloadData { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *WorkloadData) SetDisplayName(v string) *WorkloadData { + s.DisplayName = &v + return s +} + +// SetDocumentationUrl sets the DocumentationUrl field's value. +func (s *WorkloadData) SetDocumentationUrl(v string) *WorkloadData { + s.DocumentationUrl = &v + return s +} + +// SetIconUrl sets the IconUrl field's value. +func (s *WorkloadData) SetIconUrl(v string) *WorkloadData { + s.IconUrl = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *WorkloadData) SetStatus(v string) *WorkloadData { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *WorkloadData) SetStatusMessage(v string) *WorkloadData { + s.StatusMessage = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *WorkloadData) SetWorkloadName(v string) *WorkloadData { + s.WorkloadName = &v + return s +} + +// Describes workload data. +type WorkloadDataSummary struct { + _ struct{} `type:"structure"` + + // The display name of the workload data. + DisplayName *string `locationName:"displayName" type:"string"` + + // The name of the workload. + WorkloadName *string `locationName:"workloadName" 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 WorkloadDataSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkloadDataSummary) GoString() string { + return s.String() +} + +// SetDisplayName sets the DisplayName field's value. +func (s *WorkloadDataSummary) SetDisplayName(v string) *WorkloadDataSummary { + s.DisplayName = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *WorkloadDataSummary) SetWorkloadName(v string) *WorkloadDataSummary { + s.WorkloadName = &v + return s +} + +// Describes a workload deployment pattern. +type WorkloadDeploymentPatternDataSummary struct { + _ struct{} `type:"structure"` + + // The name of a workload deployment pattern. + DeploymentPatternName *string `locationName:"deploymentPatternName" min:"1" type:"string"` + + // The description of a workload deployment pattern. + Description *string `locationName:"description" type:"string"` + + // The display name of a workload deployment pattern. + DisplayName *string `locationName:"displayName" type:"string"` + + // The status of a workload deployment pattern. + Status *string `locationName:"status" type:"string" enum:"WorkloadDeploymentPatternStatus"` + + // A message about a workload deployment pattern's status. + StatusMessage *string `locationName:"statusMessage" type:"string"` + + // The name of the workload. + WorkloadName *string `locationName:"workloadName" min:"1" type:"string"` + + // The name of the workload deployment pattern version. + WorkloadVersionName *string `locationName:"workloadVersionName" min:"5" 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 WorkloadDeploymentPatternDataSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkloadDeploymentPatternDataSummary) GoString() string { + return s.String() +} + +// SetDeploymentPatternName sets the DeploymentPatternName field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetDeploymentPatternName(v string) *WorkloadDeploymentPatternDataSummary { + s.DeploymentPatternName = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetDescription(v string) *WorkloadDeploymentPatternDataSummary { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetDisplayName(v string) *WorkloadDeploymentPatternDataSummary { + s.DisplayName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetStatus(v string) *WorkloadDeploymentPatternDataSummary { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetStatusMessage(v string) *WorkloadDeploymentPatternDataSummary { + s.StatusMessage = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetWorkloadName(v string) *WorkloadDeploymentPatternDataSummary { + s.WorkloadName = &v + return s +} + +// SetWorkloadVersionName sets the WorkloadVersionName field's value. +func (s *WorkloadDeploymentPatternDataSummary) SetWorkloadVersionName(v string) *WorkloadDeploymentPatternDataSummary { + s.WorkloadVersionName = &v + return s +} + +const ( + // DeploymentFilterKeyWorkloadName is a DeploymentFilterKey enum value + DeploymentFilterKeyWorkloadName = "WORKLOAD_NAME" + + // DeploymentFilterKeyDeploymentStatus is a DeploymentFilterKey enum value + DeploymentFilterKeyDeploymentStatus = "DEPLOYMENT_STATUS" +) + +// DeploymentFilterKey_Values returns all elements of the DeploymentFilterKey enum +func DeploymentFilterKey_Values() []string { + return []string{ + DeploymentFilterKeyWorkloadName, + DeploymentFilterKeyDeploymentStatus, + } +} + +const ( + // DeploymentStatusCompleted is a DeploymentStatus enum value + DeploymentStatusCompleted = "COMPLETED" + + // DeploymentStatusCreating is a DeploymentStatus enum value + DeploymentStatusCreating = "CREATING" + + // DeploymentStatusDeleteInProgress is a DeploymentStatus enum value + DeploymentStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // DeploymentStatusDeleteInitiating is a DeploymentStatus enum value + DeploymentStatusDeleteInitiating = "DELETE_INITIATING" + + // DeploymentStatusDeleteFailed is a DeploymentStatus enum value + DeploymentStatusDeleteFailed = "DELETE_FAILED" + + // DeploymentStatusDeleted is a DeploymentStatus enum value + DeploymentStatusDeleted = "DELETED" + + // DeploymentStatusFailed is a DeploymentStatus enum value + DeploymentStatusFailed = "FAILED" + + // DeploymentStatusInProgress is a DeploymentStatus enum value + DeploymentStatusInProgress = "IN_PROGRESS" + + // DeploymentStatusValidating is a DeploymentStatus enum value + DeploymentStatusValidating = "VALIDATING" +) + +// DeploymentStatus_Values returns all elements of the DeploymentStatus enum +func DeploymentStatus_Values() []string { + return []string{ + DeploymentStatusCompleted, + DeploymentStatusCreating, + DeploymentStatusDeleteInProgress, + DeploymentStatusDeleteInitiating, + DeploymentStatusDeleteFailed, + DeploymentStatusDeleted, + DeploymentStatusFailed, + DeploymentStatusInProgress, + DeploymentStatusValidating, + } +} + +const ( + // EventStatusCanceled is a EventStatus enum value + EventStatusCanceled = "CANCELED" + + // EventStatusCanceling is a EventStatus enum value + EventStatusCanceling = "CANCELING" + + // EventStatusCompleted is a EventStatus enum value + EventStatusCompleted = "COMPLETED" + + // EventStatusCreated is a EventStatus enum value + EventStatusCreated = "CREATED" + + // EventStatusFailed is a EventStatus enum value + EventStatusFailed = "FAILED" + + // EventStatusInProgress is a EventStatus enum value + EventStatusInProgress = "IN_PROGRESS" + + // EventStatusPending is a EventStatus enum value + EventStatusPending = "PENDING" + + // EventStatusTimedOut is a EventStatus enum value + EventStatusTimedOut = "TIMED_OUT" +) + +// EventStatus_Values returns all elements of the EventStatus enum +func EventStatus_Values() []string { + return []string{ + EventStatusCanceled, + EventStatusCanceling, + EventStatusCompleted, + EventStatusCreated, + EventStatusFailed, + EventStatusInProgress, + EventStatusPending, + EventStatusTimedOut, + } +} + +const ( + // WorkloadDeploymentPatternStatusActive is a WorkloadDeploymentPatternStatus enum value + WorkloadDeploymentPatternStatusActive = "ACTIVE" + + // WorkloadDeploymentPatternStatusInactive is a WorkloadDeploymentPatternStatus enum value + WorkloadDeploymentPatternStatusInactive = "INACTIVE" + + // WorkloadDeploymentPatternStatusDisabled is a WorkloadDeploymentPatternStatus enum value + WorkloadDeploymentPatternStatusDisabled = "DISABLED" + + // WorkloadDeploymentPatternStatusDeleted is a WorkloadDeploymentPatternStatus enum value + WorkloadDeploymentPatternStatusDeleted = "DELETED" +) + +// WorkloadDeploymentPatternStatus_Values returns all elements of the WorkloadDeploymentPatternStatus enum +func WorkloadDeploymentPatternStatus_Values() []string { + return []string{ + WorkloadDeploymentPatternStatusActive, + WorkloadDeploymentPatternStatusInactive, + WorkloadDeploymentPatternStatusDisabled, + WorkloadDeploymentPatternStatusDeleted, + } +} + +const ( + // WorkloadStatusActive is a WorkloadStatus enum value + WorkloadStatusActive = "ACTIVE" + + // WorkloadStatusInactive is a WorkloadStatus enum value + WorkloadStatusInactive = "INACTIVE" + + // WorkloadStatusDisabled is a WorkloadStatus enum value + WorkloadStatusDisabled = "DISABLED" + + // WorkloadStatusDeleted is a WorkloadStatus enum value + WorkloadStatusDeleted = "DELETED" +) + +// WorkloadStatus_Values returns all elements of the WorkloadStatus enum +func WorkloadStatus_Values() []string { + return []string{ + WorkloadStatusActive, + WorkloadStatusInactive, + WorkloadStatusDisabled, + WorkloadStatusDeleted, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,31 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package launchwizard provides the client and types for making API +// requests to AWS Launch Wizard. +// +// Launch Wizard offers a guided way of sizing, configuring, and deploying Amazon +// Web Services resources for third party applications, such as Microsoft SQL +// Server Always On and HANA based SAP systems, without the need to manually +// identify and provision individual Amazon Web Services resources. +// +// See https://docs.aws.amazon.com/goto/WebAPI/launch-wizard-2018-05-10 for more information on this service. +// +// See launchwizard package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/launchwizard/ +// +// # Using the Client +// +// To contact AWS Launch Wizard with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Launch Wizard client LaunchWizard for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/launchwizard/#New +package launchwizard diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,44 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package launchwizard + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An internal error has occurred. Retry your request, but if the problem persists, + // contact us with details by posting a question on re:Post (https://repost.aws/). + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceLimitException for service response error code + // "ResourceLimitException". + // + // You have exceeded an Launch Wizard resource limit. For example, you might + // have too many deployments in progress. + ErrCodeResourceLimitException = "ResourceLimitException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified workload or deployment resource can't be found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an Amazon Web Services + // service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "InternalServerException": newErrorInternalServerException, + "ResourceLimitException": newErrorResourceLimitException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/launchwizardiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/launchwizardiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/launchwizardiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/launchwizardiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package launchwizardiface provides an interface to enable mocking the AWS Launch Wizard 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 launchwizardiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/launchwizard" +) + +// LaunchWizardAPI provides an interface to enable mocking the +// launchwizard.LaunchWizard service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Launch Wizard. +// func myFunc(svc launchwizardiface.LaunchWizardAPI) bool { +// // Make svc.CreateDeployment request +// } +// +// func main() { +// sess := session.New() +// svc := launchwizard.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockLaunchWizardClient struct { +// launchwizardiface.LaunchWizardAPI +// } +// func (m *mockLaunchWizardClient) CreateDeployment(input *launchwizard.CreateDeploymentInput) (*launchwizard.CreateDeploymentOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockLaunchWizardClient{} +// +// 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 LaunchWizardAPI interface { + CreateDeployment(*launchwizard.CreateDeploymentInput) (*launchwizard.CreateDeploymentOutput, error) + CreateDeploymentWithContext(aws.Context, *launchwizard.CreateDeploymentInput, ...request.Option) (*launchwizard.CreateDeploymentOutput, error) + CreateDeploymentRequest(*launchwizard.CreateDeploymentInput) (*request.Request, *launchwizard.CreateDeploymentOutput) + + DeleteDeployment(*launchwizard.DeleteDeploymentInput) (*launchwizard.DeleteDeploymentOutput, error) + DeleteDeploymentWithContext(aws.Context, *launchwizard.DeleteDeploymentInput, ...request.Option) (*launchwizard.DeleteDeploymentOutput, error) + DeleteDeploymentRequest(*launchwizard.DeleteDeploymentInput) (*request.Request, *launchwizard.DeleteDeploymentOutput) + + GetDeployment(*launchwizard.GetDeploymentInput) (*launchwizard.GetDeploymentOutput, error) + GetDeploymentWithContext(aws.Context, *launchwizard.GetDeploymentInput, ...request.Option) (*launchwizard.GetDeploymentOutput, error) + GetDeploymentRequest(*launchwizard.GetDeploymentInput) (*request.Request, *launchwizard.GetDeploymentOutput) + + GetWorkload(*launchwizard.GetWorkloadInput) (*launchwizard.GetWorkloadOutput, error) + GetWorkloadWithContext(aws.Context, *launchwizard.GetWorkloadInput, ...request.Option) (*launchwizard.GetWorkloadOutput, error) + GetWorkloadRequest(*launchwizard.GetWorkloadInput) (*request.Request, *launchwizard.GetWorkloadOutput) + + ListDeploymentEvents(*launchwizard.ListDeploymentEventsInput) (*launchwizard.ListDeploymentEventsOutput, error) + ListDeploymentEventsWithContext(aws.Context, *launchwizard.ListDeploymentEventsInput, ...request.Option) (*launchwizard.ListDeploymentEventsOutput, error) + ListDeploymentEventsRequest(*launchwizard.ListDeploymentEventsInput) (*request.Request, *launchwizard.ListDeploymentEventsOutput) + + ListDeploymentEventsPages(*launchwizard.ListDeploymentEventsInput, func(*launchwizard.ListDeploymentEventsOutput, bool) bool) error + ListDeploymentEventsPagesWithContext(aws.Context, *launchwizard.ListDeploymentEventsInput, func(*launchwizard.ListDeploymentEventsOutput, bool) bool, ...request.Option) error + + ListDeployments(*launchwizard.ListDeploymentsInput) (*launchwizard.ListDeploymentsOutput, error) + ListDeploymentsWithContext(aws.Context, *launchwizard.ListDeploymentsInput, ...request.Option) (*launchwizard.ListDeploymentsOutput, error) + ListDeploymentsRequest(*launchwizard.ListDeploymentsInput) (*request.Request, *launchwizard.ListDeploymentsOutput) + + ListDeploymentsPages(*launchwizard.ListDeploymentsInput, func(*launchwizard.ListDeploymentsOutput, bool) bool) error + ListDeploymentsPagesWithContext(aws.Context, *launchwizard.ListDeploymentsInput, func(*launchwizard.ListDeploymentsOutput, bool) bool, ...request.Option) error + + ListWorkloadDeploymentPatterns(*launchwizard.ListWorkloadDeploymentPatternsInput) (*launchwizard.ListWorkloadDeploymentPatternsOutput, error) + ListWorkloadDeploymentPatternsWithContext(aws.Context, *launchwizard.ListWorkloadDeploymentPatternsInput, ...request.Option) (*launchwizard.ListWorkloadDeploymentPatternsOutput, error) + ListWorkloadDeploymentPatternsRequest(*launchwizard.ListWorkloadDeploymentPatternsInput) (*request.Request, *launchwizard.ListWorkloadDeploymentPatternsOutput) + + ListWorkloadDeploymentPatternsPages(*launchwizard.ListWorkloadDeploymentPatternsInput, func(*launchwizard.ListWorkloadDeploymentPatternsOutput, bool) bool) error + ListWorkloadDeploymentPatternsPagesWithContext(aws.Context, *launchwizard.ListWorkloadDeploymentPatternsInput, func(*launchwizard.ListWorkloadDeploymentPatternsOutput, bool) bool, ...request.Option) error + + ListWorkloads(*launchwizard.ListWorkloadsInput) (*launchwizard.ListWorkloadsOutput, error) + ListWorkloadsWithContext(aws.Context, *launchwizard.ListWorkloadsInput, ...request.Option) (*launchwizard.ListWorkloadsOutput, error) + ListWorkloadsRequest(*launchwizard.ListWorkloadsInput) (*request.Request, *launchwizard.ListWorkloadsOutput) + + ListWorkloadsPages(*launchwizard.ListWorkloadsInput, func(*launchwizard.ListWorkloadsOutput, bool) bool) error + ListWorkloadsPagesWithContext(aws.Context, *launchwizard.ListWorkloadsInput, func(*launchwizard.ListWorkloadsOutput, bool) bool, ...request.Option) error +} + +var _ LaunchWizardAPI = (*launchwizard.LaunchWizard)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/service.go golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/launchwizard/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/launchwizard/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package launchwizard + +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/restjson" +) + +// LaunchWizard provides the API operation methods for making requests to +// AWS Launch Wizard. See this package's package overview docs +// for details on the service. +// +// LaunchWizard methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type LaunchWizard 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 = "Launch Wizard" // Name of service. + EndpointsID = "launchwizard" // ID to lookup a service endpoint with. + ServiceID = "Launch Wizard" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the LaunchWizard 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 LaunchWizard client from just a session. +// svc := launchwizard.New(mySession) +// +// // Create a LaunchWizard client with additional configuration +// svc := launchwizard.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *LaunchWizard { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "launchwizard" + } + 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) *LaunchWizard { + svc := &LaunchWizard{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2018-05-10", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a LaunchWizard operation and runs any +// custom request initialization. +func (c *LaunchWizard) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lexmodelsv2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/lexmodelsv2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lexmodelsv2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lexmodelsv2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -740,12 +740,11 @@ // CreateBotVersion API operation for Amazon Lex Model Building V2. // -// Creates a new version of the bot based on the DRAFT version. If the DRAFT -// version of this resource hasn't changed since you created the last version, -// Amazon Lex doesn't create a new version, it returns the last created version. -// -// When you create the first version of a bot, Amazon Lex sets the version to -// 1. Subsequent versions increment by 1. +// Creates an immutable version of the bot. When you create the first version +// of a bot, Amazon Lex sets the version number to 1. Subsequent bot versions +// increase in an increment of 1. The version number will always represent the +// total number of versions created of the bot, not the current number of versions. +// If a bot version is deleted, that bot version number will not be reused. // // 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 @@ -3379,6 +3378,99 @@ return out, req.Send() } +const opDescribeBotResourceGeneration = "DescribeBotResourceGeneration" + +// DescribeBotResourceGenerationRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBotResourceGeneration 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 DescribeBotResourceGeneration for more information on using the DescribeBotResourceGeneration +// 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 DescribeBotResourceGenerationRequest method. +// req, resp := client.DescribeBotResourceGenerationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeBotResourceGeneration +func (c *LexModelsV2) DescribeBotResourceGenerationRequest(input *DescribeBotResourceGenerationInput) (req *request.Request, output *DescribeBotResourceGenerationOutput) { + op := &request.Operation{ + Name: opDescribeBotResourceGeneration, + HTTPMethod: "GET", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/generations/{generationId}", + } + + if input == nil { + input = &DescribeBotResourceGenerationInput{} + } + + output = &DescribeBotResourceGenerationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeBotResourceGeneration API operation for Amazon Lex Model Building V2. +// +// Returns information about a request to generate a bot through natural language +// description, made through the StartBotResource API. Use the generatedBotLocaleUrl +// to retrieve the Amazon S3 object containing the bot locale configuration. +// You can then modify and import this configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation DescribeBotResourceGeneration for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeBotResourceGeneration +func (c *LexModelsV2) DescribeBotResourceGeneration(input *DescribeBotResourceGenerationInput) (*DescribeBotResourceGenerationOutput, error) { + req, out := c.DescribeBotResourceGenerationRequest(input) + return out, req.Send() +} + +// DescribeBotResourceGenerationWithContext is the same as DescribeBotResourceGeneration with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeBotResourceGeneration 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 *LexModelsV2) DescribeBotResourceGenerationWithContext(ctx aws.Context, input *DescribeBotResourceGenerationInput, opts ...request.Option) (*DescribeBotResourceGenerationOutput, error) { + req, out := c.DescribeBotResourceGenerationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeBotVersion = "DescribeBotVersion" // DescribeBotVersionRequest generates a "aws/request.Request" representing the @@ -4482,6 +4574,113 @@ return out, req.Send() } +const opGenerateBotElement = "GenerateBotElement" + +// GenerateBotElementRequest generates a "aws/request.Request" representing the +// client's request for the GenerateBotElement 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 GenerateBotElement for more information on using the GenerateBotElement +// 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 GenerateBotElementRequest method. +// req, resp := client.GenerateBotElementRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/GenerateBotElement +func (c *LexModelsV2) GenerateBotElementRequest(input *GenerateBotElementInput) (req *request.Request, output *GenerateBotElementOutput) { + op := &request.Operation{ + Name: opGenerateBotElement, + HTTPMethod: "POST", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/generate", + } + + if input == nil { + input = &GenerateBotElementInput{} + } + + output = &GenerateBotElementOutput{} + req = c.newRequest(op, input, output) + return +} + +// GenerateBotElement API operation for Amazon Lex Model Building V2. +// +// Generates sample utterances for an intent. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation GenerateBotElement for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/GenerateBotElement +func (c *LexModelsV2) GenerateBotElement(input *GenerateBotElementInput) (*GenerateBotElementOutput, error) { + req, out := c.GenerateBotElementRequest(input) + return out, req.Send() +} + +// GenerateBotElementWithContext is the same as GenerateBotElement with the addition of +// the ability to pass a context and additional request options. +// +// See GenerateBotElement 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 *LexModelsV2) GenerateBotElementWithContext(ctx aws.Context, input *GenerateBotElementInput, opts ...request.Option) (*GenerateBotElementOutput, error) { + req, out := c.GenerateBotElementRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetTestExecutionArtifactsUrl = "GetTestExecutionArtifactsUrl" // GetTestExecutionArtifactsUrlRequest generates a "aws/request.Request" representing the @@ -5181,6 +5380,153 @@ return p.Err() } +const opListBotResourceGenerations = "ListBotResourceGenerations" + +// ListBotResourceGenerationsRequest generates a "aws/request.Request" representing the +// client's request for the ListBotResourceGenerations 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 ListBotResourceGenerations for more information on using the ListBotResourceGenerations +// 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 ListBotResourceGenerationsRequest method. +// req, resp := client.ListBotResourceGenerationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListBotResourceGenerations +func (c *LexModelsV2) ListBotResourceGenerationsRequest(input *ListBotResourceGenerationsInput) (req *request.Request, output *ListBotResourceGenerationsOutput) { + op := &request.Operation{ + Name: opListBotResourceGenerations, + HTTPMethod: "POST", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/generations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListBotResourceGenerationsInput{} + } + + output = &ListBotResourceGenerationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListBotResourceGenerations API operation for Amazon Lex Model Building V2. +// +// Lists the generation requests made for a bot locale. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation ListBotResourceGenerations for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListBotResourceGenerations +func (c *LexModelsV2) ListBotResourceGenerations(input *ListBotResourceGenerationsInput) (*ListBotResourceGenerationsOutput, error) { + req, out := c.ListBotResourceGenerationsRequest(input) + return out, req.Send() +} + +// ListBotResourceGenerationsWithContext is the same as ListBotResourceGenerations with the addition of +// the ability to pass a context and additional request options. +// +// See ListBotResourceGenerations 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 *LexModelsV2) ListBotResourceGenerationsWithContext(ctx aws.Context, input *ListBotResourceGenerationsInput, opts ...request.Option) (*ListBotResourceGenerationsOutput, error) { + req, out := c.ListBotResourceGenerationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListBotResourceGenerationsPages iterates over the pages of a ListBotResourceGenerations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListBotResourceGenerations 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 ListBotResourceGenerations operation. +// pageNum := 0 +// err := client.ListBotResourceGenerationsPages(params, +// func(page *lexmodelsv2.ListBotResourceGenerationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListBotResourceGenerationsPages(input *ListBotResourceGenerationsInput, fn func(*ListBotResourceGenerationsOutput, bool) bool) error { + return c.ListBotResourceGenerationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListBotResourceGenerationsPagesWithContext same as ListBotResourceGenerationsPages 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 *LexModelsV2) ListBotResourceGenerationsPagesWithContext(ctx aws.Context, input *ListBotResourceGenerationsInput, fn func(*ListBotResourceGenerationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListBotResourceGenerationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListBotResourceGenerationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListBotResourceGenerationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListBotVersions = "ListBotVersions" // ListBotVersionsRequest generates a "aws/request.Request" representing the @@ -8822,6 +9168,109 @@ return out, req.Send() } +const opStartBotResourceGeneration = "StartBotResourceGeneration" + +// StartBotResourceGenerationRequest generates a "aws/request.Request" representing the +// client's request for the StartBotResourceGeneration 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 StartBotResourceGeneration for more information on using the StartBotResourceGeneration +// 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 StartBotResourceGenerationRequest method. +// req, resp := client.StartBotResourceGenerationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartBotResourceGeneration +func (c *LexModelsV2) StartBotResourceGenerationRequest(input *StartBotResourceGenerationInput) (req *request.Request, output *StartBotResourceGenerationOutput) { + op := &request.Operation{ + Name: opStartBotResourceGeneration, + HTTPMethod: "PUT", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/startgeneration", + } + + if input == nil { + input = &StartBotResourceGenerationInput{} + } + + output = &StartBotResourceGenerationOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartBotResourceGeneration API operation for Amazon Lex Model Building V2. +// +// Starts a request for the descriptive bot builder to generate a bot locale +// configuration based on the prompt you provide it. After you make this call, +// use the DescribeBotResourceGeneration operation to check on the status of +// the generation and for the generatedBotLocaleUrl when the generation is complete. +// Use that value to retrieve the Amazon S3 object containing the bot locale +// configuration. You can then modify and import this configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation StartBotResourceGeneration for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartBotResourceGeneration +func (c *LexModelsV2) StartBotResourceGeneration(input *StartBotResourceGenerationInput) (*StartBotResourceGenerationOutput, error) { + req, out := c.StartBotResourceGenerationRequest(input) + return out, req.Send() +} + +// StartBotResourceGenerationWithContext is the same as StartBotResourceGeneration with the addition of +// the ability to pass a context and additional request options. +// +// See StartBotResourceGeneration 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 *LexModelsV2) StartBotResourceGenerationWithContext(ctx aws.Context, input *StartBotResourceGenerationInput, opts ...request.Option) (*StartBotResourceGenerationOutput, error) { + req, out := c.StartBotResourceGenerationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartImport = "StartImport" // StartImportRequest generates a "aws/request.Request" representing the @@ -13368,6 +13817,9 @@ // // Enabled is a required field Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` + + // The option to enable selective conversation log capture for audio. + SelectiveLoggingEnabled *bool `locationName:"selectiveLoggingEnabled" type:"boolean"` } // String returns the string representation. @@ -13421,6 +13873,12 @@ return s } +// SetSelectiveLoggingEnabled sets the SelectiveLoggingEnabled field's value. +func (s *AudioLogSetting) SetSelectiveLoggingEnabled(v bool) *AudioLogSetting { + s.SelectiveLoggingEnabled = &v + return s +} + // Specifies the audio input specifications. type AudioSpecification struct { _ struct{} `type:"structure"` @@ -14042,6 +14500,54 @@ return s } +// Contains information about the Amazon Bedrock model used to interpret the +// prompt used in descriptive bot building. +type BedrockModelSpecification struct { + _ struct{} `type:"structure"` + + // The ARN of the foundation model used in descriptive bot building. + // + // ModelArn is a required field + ModelArn *string `locationName:"modelArn" 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 BedrockModelSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BedrockModelSpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BedrockModelSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BedrockModelSpecification"} + if s.ModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ModelArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetModelArn sets the ModelArn field's value. +func (s *BedrockModelSpecification) SetModelArn(v string) *BedrockModelSpecification { + s.ModelArn = &v + return s +} + // Provides a record of an event that affects a bot alias. For example, when // the version of a bot that the alias points to changes. type BotAliasHistoryEvent struct { @@ -15849,6 +16355,68 @@ return s } +// Contains specifications about the Amazon Lex build time generative AI capabilities +// from Amazon Bedrock that you can turn on for your bot. +type BuildtimeSettings struct { + _ struct{} `type:"structure"` + + // An object containing specifications for the descriptive bot building feature. + DescriptiveBotBuilder *DescriptiveBotBuilderSpecification `locationName:"descriptiveBotBuilder" type:"structure"` + + // Contains specifications for the sample utterance generation feature. + SampleUtteranceGeneration *SampleUtteranceGenerationSpecification `locationName:"sampleUtteranceGeneration" 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 BuildtimeSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BuildtimeSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BuildtimeSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BuildtimeSettings"} + if s.DescriptiveBotBuilder != nil { + if err := s.DescriptiveBotBuilder.Validate(); err != nil { + invalidParams.AddNested("DescriptiveBotBuilder", err.(request.ErrInvalidParams)) + } + } + if s.SampleUtteranceGeneration != nil { + if err := s.SampleUtteranceGeneration.Validate(); err != nil { + invalidParams.AddNested("SampleUtteranceGeneration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescriptiveBotBuilder sets the DescriptiveBotBuilder field's value. +func (s *BuildtimeSettings) SetDescriptiveBotBuilder(v *DescriptiveBotBuilderSpecification) *BuildtimeSettings { + s.DescriptiveBotBuilder = v + return s +} + +// SetSampleUtteranceGeneration sets the SampleUtteranceGeneration field's value. +func (s *BuildtimeSettings) SetSampleUtteranceGeneration(v *SampleUtteranceGenerationSpecification) *BuildtimeSettings { + s.SampleUtteranceGeneration = v + return s +} + // Specifies attributes for sorting a list of built-in intents. type BuiltInIntentSortBy struct { _ struct{} `type:"structure"` @@ -17637,6 +18205,10 @@ // in lists. Description *string `locationName:"description" type:"string"` + // Contains specifications about the generative AI capabilities from Amazon + // Bedrock that you can turn on for your bot. + GenerativeAISettings *GenerativeAISettings `locationName:"generativeAISettings" type:"structure"` + // The identifier of the language and locale that the bot will be used in. The // string must match one of the supported locales. All of the intents, slot // types, and slots used in the bot must have the same locale. For more information, @@ -17710,6 +18282,11 @@ if s.NluIntentConfidenceThreshold == nil { invalidParams.Add(request.NewErrParamRequired("NluIntentConfidenceThreshold")) } + if s.GenerativeAISettings != nil { + if err := s.GenerativeAISettings.Validate(); err != nil { + invalidParams.AddNested("GenerativeAISettings", err.(request.ErrInvalidParams)) + } + } if s.VoiceSettings != nil { if err := s.VoiceSettings.Validate(); err != nil { invalidParams.AddNested("VoiceSettings", err.(request.ErrInvalidParams)) @@ -17740,6 +18317,12 @@ return s } +// SetGenerativeAISettings sets the GenerativeAISettings field's value. +func (s *CreateBotLocaleInput) SetGenerativeAISettings(v *GenerativeAISettings) *CreateBotLocaleInput { + s.GenerativeAISettings = v + return s +} + // SetLocaleId sets the LocaleId field's value. func (s *CreateBotLocaleInput) SetLocaleId(v string) *CreateBotLocaleInput { s.LocaleId = &v @@ -17786,6 +18369,10 @@ // The specified description of the bot locale. Description *string `locationName:"description" type:"string"` + // Contains specifications about the generative AI capabilities from Amazon + // Bedrock that you can turn on for your bot. + GenerativeAISettings *GenerativeAISettings `locationName:"generativeAISettings" type:"structure"` + // The specified locale identifier. LocaleId *string `locationName:"localeId" type:"string"` @@ -17849,6 +18436,12 @@ return s } +// SetGenerativeAISettings sets the GenerativeAISettings field's value. +func (s *CreateBotLocaleOutput) SetGenerativeAISettings(v *GenerativeAISettings) *CreateBotLocaleOutput { + s.GenerativeAISettings = v + return s +} + // SetLocaleId sets the LocaleId field's value. func (s *CreateBotLocaleOutput) SetLocaleId(v string) *CreateBotLocaleOutput { s.LocaleId = &v @@ -22664,6 +23257,10 @@ // the bot. FailureReasons []*string `locationName:"failureReasons" type:"list"` + // Contains settings for Amazon Bedrock's generative AI features for your bot + // locale. + GenerativeAISettings *GenerativeAISettings `locationName:"generativeAISettings" type:"structure"` + // The number of intents defined for the locale. IntentsCount *int64 `locationName:"intentsCount" type:"integer"` @@ -22754,6 +23351,12 @@ return s } +// SetGenerativeAISettings sets the GenerativeAISettings field's value. +func (s *DescribeBotLocaleOutput) SetGenerativeAISettings(v *GenerativeAISettings) *DescribeBotLocaleOutput { + s.GenerativeAISettings = v + return s +} + // SetIntentsCount sets the IntentsCount field's value. func (s *DescribeBotLocaleOutput) SetIntentsCount(v int64) *DescribeBotLocaleOutput { s.IntentsCount = &v @@ -23171,6 +23774,229 @@ return s } +type DescribeBotResourceGenerationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The unique identifier of the bot for which to return the generation details. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The version of the bot for which to return the generation details. + // + // BotVersion is a required field + BotVersion *string `location:"uri" locationName:"botVersion" min:"1" type:"string" required:"true"` + + // The unique identifier of the generation request for which to return the generation + // details. + // + // GenerationId is a required field + GenerationId *string `location:"uri" locationName:"generationId" min:"10" type:"string" required:"true"` + + // The locale of the bot for which to return the generation details. + // + // LocaleId is a required field + LocaleId *string `location:"uri" locationName:"localeId" 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 DescribeBotResourceGenerationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBotResourceGenerationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeBotResourceGenerationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBotResourceGenerationInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.BotVersion == nil { + invalidParams.Add(request.NewErrParamRequired("BotVersion")) + } + if s.BotVersion != nil && len(*s.BotVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BotVersion", 1)) + } + if s.GenerationId == nil { + invalidParams.Add(request.NewErrParamRequired("GenerationId")) + } + if s.GenerationId != nil && len(*s.GenerationId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("GenerationId", 10)) + } + if s.LocaleId == nil { + invalidParams.Add(request.NewErrParamRequired("LocaleId")) + } + if s.LocaleId != nil && len(*s.LocaleId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LocaleId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *DescribeBotResourceGenerationInput) SetBotId(v string) *DescribeBotResourceGenerationInput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *DescribeBotResourceGenerationInput) SetBotVersion(v string) *DescribeBotResourceGenerationInput { + s.BotVersion = &v + return s +} + +// SetGenerationId sets the GenerationId field's value. +func (s *DescribeBotResourceGenerationInput) SetGenerationId(v string) *DescribeBotResourceGenerationInput { + s.GenerationId = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *DescribeBotResourceGenerationInput) SetLocaleId(v string) *DescribeBotResourceGenerationInput { + s.LocaleId = &v + return s +} + +type DescribeBotResourceGenerationOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot for which the generation request was made. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // The version of the bot for which the generation request was made. + BotVersion *string `locationName:"botVersion" min:"1" type:"string"` + + // The date and time at which the item was generated. + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"` + + // A list of reasons why the generation of bot resources through natural language + // description failed. + FailureReasons []*string `locationName:"failureReasons" type:"list"` + + // The Amazon S3 location of the generated bot locale configuration. + GeneratedBotLocaleUrl *string `locationName:"generatedBotLocaleUrl" min:"1" type:"string"` + + // The generation ID for which to return the generation details. + GenerationId *string `locationName:"generationId" min:"10" type:"string"` + + // The prompt used in the generation request. + GenerationInputPrompt *string `locationName:"generationInputPrompt" min:"100" type:"string"` + + // The status of the generation request. + GenerationStatus *string `locationName:"generationStatus" type:"string" enum:"GenerationStatus"` + + // The date and time at which the generated item was updated. + LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"` + + // The locale of the bot for which the generation request was made. + LocaleId *string `locationName:"localeId" type:"string"` + + // The ARN of the model used to generate the bot resources. + ModelArn *string `locationName:"modelArn" 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 DescribeBotResourceGenerationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBotResourceGenerationOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *DescribeBotResourceGenerationOutput) SetBotId(v string) *DescribeBotResourceGenerationOutput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *DescribeBotResourceGenerationOutput) SetBotVersion(v string) *DescribeBotResourceGenerationOutput { + s.BotVersion = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *DescribeBotResourceGenerationOutput) SetCreationDateTime(v time.Time) *DescribeBotResourceGenerationOutput { + s.CreationDateTime = &v + return s +} + +// SetFailureReasons sets the FailureReasons field's value. +func (s *DescribeBotResourceGenerationOutput) SetFailureReasons(v []*string) *DescribeBotResourceGenerationOutput { + s.FailureReasons = v + return s +} + +// SetGeneratedBotLocaleUrl sets the GeneratedBotLocaleUrl field's value. +func (s *DescribeBotResourceGenerationOutput) SetGeneratedBotLocaleUrl(v string) *DescribeBotResourceGenerationOutput { + s.GeneratedBotLocaleUrl = &v + return s +} + +// SetGenerationId sets the GenerationId field's value. +func (s *DescribeBotResourceGenerationOutput) SetGenerationId(v string) *DescribeBotResourceGenerationOutput { + s.GenerationId = &v + return s +} + +// SetGenerationInputPrompt sets the GenerationInputPrompt field's value. +func (s *DescribeBotResourceGenerationOutput) SetGenerationInputPrompt(v string) *DescribeBotResourceGenerationOutput { + s.GenerationInputPrompt = &v + return s +} + +// SetGenerationStatus sets the GenerationStatus field's value. +func (s *DescribeBotResourceGenerationOutput) SetGenerationStatus(v string) *DescribeBotResourceGenerationOutput { + s.GenerationStatus = &v + return s +} + +// SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value. +func (s *DescribeBotResourceGenerationOutput) SetLastUpdatedDateTime(v time.Time) *DescribeBotResourceGenerationOutput { + s.LastUpdatedDateTime = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *DescribeBotResourceGenerationOutput) SetLocaleId(v string) *DescribeBotResourceGenerationOutput { + s.LocaleId = &v + return s +} + +// SetModelArn sets the ModelArn field's value. +func (s *DescribeBotResourceGenerationOutput) SetModelArn(v string) *DescribeBotResourceGenerationOutput { + s.ModelArn = &v + return s +} + type DescribeBotVersionInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -25411,6 +26237,68 @@ return s } +// Contains specifications for the descriptive bot building feature. +type DescriptiveBotBuilderSpecification struct { + _ struct{} `type:"structure"` + + // An object containing information about the Amazon Bedrock model used to interpret + // the prompt used in descriptive bot building. + BedrockModelSpecification *BedrockModelSpecification `locationName:"bedrockModelSpecification" type:"structure"` + + // Specifies whether the descriptive bot building feature is activated or not. + // + // Enabled is a required field + Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescriptiveBotBuilderSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescriptiveBotBuilderSpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescriptiveBotBuilderSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescriptiveBotBuilderSpecification"} + if s.Enabled == nil { + invalidParams.Add(request.NewErrParamRequired("Enabled")) + } + if s.BedrockModelSpecification != nil { + if err := s.BedrockModelSpecification.Validate(); err != nil { + invalidParams.AddNested("BedrockModelSpecification", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBedrockModelSpecification sets the BedrockModelSpecification field's value. +func (s *DescriptiveBotBuilderSpecification) SetBedrockModelSpecification(v *BedrockModelSpecification) *DescriptiveBotBuilderSpecification { + s.BedrockModelSpecification = v + return s +} + +// SetEnabled sets the Enabled field's value. +func (s *DescriptiveBotBuilderSpecification) SetEnabled(v bool) *DescriptiveBotBuilderSpecification { + s.Enabled = &v + return s +} + // Defines the action that the bot executes at runtime when the conversation // reaches this step. type DialogAction struct { @@ -26654,6 +27542,364 @@ return s } +type GenerateBotElementInput struct { + _ struct{} `type:"structure"` + + // The bot unique Id for the bot request to generate utterances. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The bot version for the bot request to generate utterances. + // + // BotVersion is a required field + BotVersion *string `location:"uri" locationName:"botVersion" min:"1" type:"string" required:"true"` + + // The intent unique Id for the bot request to generate utterances. + // + // IntentId is a required field + IntentId *string `locationName:"intentId" min:"10" type:"string" required:"true"` + + // The unique locale Id for the bot request to generate utterances. + // + // LocaleId is a required field + LocaleId *string `location:"uri" locationName:"localeId" 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 GenerateBotElementInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerateBotElementInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GenerateBotElementInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GenerateBotElementInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.BotVersion == nil { + invalidParams.Add(request.NewErrParamRequired("BotVersion")) + } + if s.BotVersion != nil && len(*s.BotVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BotVersion", 1)) + } + if s.IntentId == nil { + invalidParams.Add(request.NewErrParamRequired("IntentId")) + } + if s.IntentId != nil && len(*s.IntentId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("IntentId", 10)) + } + if s.LocaleId == nil { + invalidParams.Add(request.NewErrParamRequired("LocaleId")) + } + if s.LocaleId != nil && len(*s.LocaleId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LocaleId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *GenerateBotElementInput) SetBotId(v string) *GenerateBotElementInput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *GenerateBotElementInput) SetBotVersion(v string) *GenerateBotElementInput { + s.BotVersion = &v + return s +} + +// SetIntentId sets the IntentId field's value. +func (s *GenerateBotElementInput) SetIntentId(v string) *GenerateBotElementInput { + s.IntentId = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *GenerateBotElementInput) SetLocaleId(v string) *GenerateBotElementInput { + s.LocaleId = &v + return s +} + +type GenerateBotElementOutput struct { + _ struct{} `type:"structure"` + + // The unique bot Id for the bot which received the response. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // The unique bot version for the bot which received the response. + BotVersion *string `locationName:"botVersion" min:"5" type:"string"` + + // The unique intent Id for the bot which received the response. + IntentId *string `locationName:"intentId" min:"10" type:"string"` + + // The unique locale Id for the bot which received the response. + LocaleId *string `locationName:"localeId" type:"string"` + + // The sample utterances for the bot which received the response. + SampleUtterances []*SampleUtterance `locationName:"sampleUtterances" 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 GenerateBotElementOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerateBotElementOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *GenerateBotElementOutput) SetBotId(v string) *GenerateBotElementOutput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *GenerateBotElementOutput) SetBotVersion(v string) *GenerateBotElementOutput { + s.BotVersion = &v + return s +} + +// SetIntentId sets the IntentId field's value. +func (s *GenerateBotElementOutput) SetIntentId(v string) *GenerateBotElementOutput { + s.IntentId = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *GenerateBotElementOutput) SetLocaleId(v string) *GenerateBotElementOutput { + s.LocaleId = &v + return s +} + +// SetSampleUtterances sets the SampleUtterances field's value. +func (s *GenerateBotElementOutput) SetSampleUtterances(v []*SampleUtterance) *GenerateBotElementOutput { + s.SampleUtterances = v + return s +} + +// Specifies the attribute and method by which to sort the generation request +// information. +type GenerationSortBy struct { + _ struct{} `type:"structure"` + + // The attribute by which to sort the generation request information. You can + // sort by the following attributes. + // + // * creationStartTime – The time at which the generation request was created. + // + // * lastUpdatedTime – The time at which the generation request was last + // updated. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"GenerationSortByAttribute"` + + // The order by which to sort the generation request information. + // + // Order is a required field + Order *string `locationName:"order" type:"string" required:"true" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerationSortBy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerationSortBy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GenerationSortBy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GenerationSortBy"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Order == nil { + invalidParams.Add(request.NewErrParamRequired("Order")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *GenerationSortBy) SetAttribute(v string) *GenerationSortBy { + s.Attribute = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *GenerationSortBy) SetOrder(v string) *GenerationSortBy { + s.Order = &v + return s +} + +// Contains information about a generation request made for the bot locale. +type GenerationSummary struct { + _ struct{} `type:"structure"` + + // The date and time at which the generation request was made. + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"` + + // The unique identifier of the generation request. + GenerationId *string `locationName:"generationId" min:"10" type:"string"` + + // The status of the generation request. + GenerationStatus *string `locationName:"generationStatus" type:"string" enum:"GenerationStatus"` + + // The date and time at which the generation request was last updated. + LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" 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 GenerationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerationSummary) GoString() string { + return s.String() +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *GenerationSummary) SetCreationDateTime(v time.Time) *GenerationSummary { + s.CreationDateTime = &v + return s +} + +// SetGenerationId sets the GenerationId field's value. +func (s *GenerationSummary) SetGenerationId(v string) *GenerationSummary { + s.GenerationId = &v + return s +} + +// SetGenerationStatus sets the GenerationStatus field's value. +func (s *GenerationSummary) SetGenerationStatus(v string) *GenerationSummary { + s.GenerationStatus = &v + return s +} + +// SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value. +func (s *GenerationSummary) SetLastUpdatedDateTime(v time.Time) *GenerationSummary { + s.LastUpdatedDateTime = &v + return s +} + +// Contains specifications about the generative AI capabilities from Amazon +// Bedrock that you can turn on for your bot. +type GenerativeAISettings struct { + _ struct{} `type:"structure"` + + // Contains specifications about the Amazon Lex build time generative AI capabilities + // from Amazon Bedrock that you can turn on for your bot. + BuildtimeSettings *BuildtimeSettings `locationName:"buildtimeSettings" type:"structure"` + + // Contains specifications about the Amazon Lex runtime generative AI capabilities + // from Amazon Bedrock that you can turn on for your bot. + RuntimeSettings *RuntimeSettings `locationName:"runtimeSettings" 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 GenerativeAISettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeAISettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GenerativeAISettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GenerativeAISettings"} + if s.BuildtimeSettings != nil { + if err := s.BuildtimeSettings.Validate(); err != nil { + invalidParams.AddNested("BuildtimeSettings", err.(request.ErrInvalidParams)) + } + } + if s.RuntimeSettings != nil { + if err := s.RuntimeSettings.Validate(); err != nil { + invalidParams.AddNested("RuntimeSettings", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBuildtimeSettings sets the BuildtimeSettings field's value. +func (s *GenerativeAISettings) SetBuildtimeSettings(v *BuildtimeSettings) *GenerativeAISettings { + s.BuildtimeSettings = v + return s +} + +// SetRuntimeSettings sets the RuntimeSettings field's value. +func (s *GenerativeAISettings) SetRuntimeSettings(v *RuntimeSettings) *GenerativeAISettings { + s.RuntimeSettings = v + return s +} + type GetTestExecutionArtifactsUrlInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -29498,6 +30744,197 @@ return s } +type ListBotResourceGenerationsInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot whose generation requests you want to view. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The version of the bot whose generation requests you want to view. + // + // BotVersion is a required field + BotVersion *string `location:"uri" locationName:"botVersion" min:"1" type:"string" required:"true"` + + // The locale of the bot whose generation requests you want to view. + // + // LocaleId is a required field + LocaleId *string `location:"uri" locationName:"localeId" type:"string" required:"true"` + + // The maximum number of results to return in the response. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If the total number of results is greater than the number specified in the + // maxResults, the response returns a token in the nextToken field. Use this + // token when making a request to return the next batch of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // An object containing information about the attribute and the method by which + // to sort the results + SortBy *GenerationSortBy `locationName:"sortBy" 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 ListBotResourceGenerationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListBotResourceGenerationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBotResourceGenerationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBotResourceGenerationsInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.BotVersion == nil { + invalidParams.Add(request.NewErrParamRequired("BotVersion")) + } + if s.BotVersion != nil && len(*s.BotVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BotVersion", 1)) + } + if s.LocaleId == nil { + invalidParams.Add(request.NewErrParamRequired("LocaleId")) + } + if s.LocaleId != nil && len(*s.LocaleId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LocaleId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.SortBy != nil { + if err := s.SortBy.Validate(); err != nil { + invalidParams.AddNested("SortBy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *ListBotResourceGenerationsInput) SetBotId(v string) *ListBotResourceGenerationsInput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *ListBotResourceGenerationsInput) SetBotVersion(v string) *ListBotResourceGenerationsInput { + s.BotVersion = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *ListBotResourceGenerationsInput) SetLocaleId(v string) *ListBotResourceGenerationsInput { + s.LocaleId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListBotResourceGenerationsInput) SetMaxResults(v int64) *ListBotResourceGenerationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListBotResourceGenerationsInput) SetNextToken(v string) *ListBotResourceGenerationsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListBotResourceGenerationsInput) SetSortBy(v *GenerationSortBy) *ListBotResourceGenerationsInput { + s.SortBy = v + return s +} + +type ListBotResourceGenerationsOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot for which the generation requests were made. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // The version of the bot for which the generation requests were made. + BotVersion *string `locationName:"botVersion" min:"1" type:"string"` + + // A list of objects, each containing information about a generation request + // for the bot locale. + GenerationSummaries []*GenerationSummary `locationName:"generationSummaries" type:"list"` + + // The locale of the bot for which the generation requests were made. + LocaleId *string `locationName:"localeId" type:"string"` + + // If the total number of results is greater than the number specified in the + // maxResults, the response returns a token in the nextToken field. Use this + // token when making a request to return the next batch of results. + 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 ListBotResourceGenerationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListBotResourceGenerationsOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListBotResourceGenerationsOutput) SetBotId(v string) *ListBotResourceGenerationsOutput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *ListBotResourceGenerationsOutput) SetBotVersion(v string) *ListBotResourceGenerationsOutput { + s.BotVersion = &v + return s +} + +// SetGenerationSummaries sets the GenerationSummaries field's value. +func (s *ListBotResourceGenerationsOutput) SetGenerationSummaries(v []*GenerationSummary) *ListBotResourceGenerationsOutput { + s.GenerationSummaries = v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *ListBotResourceGenerationsOutput) SetLocaleId(v string) *ListBotResourceGenerationsOutput { + s.LocaleId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListBotResourceGenerationsOutput) SetNextToken(v string) *ListBotResourceGenerationsOutput { + s.NextToken = &v + return s +} + type ListBotVersionsInput struct { _ struct{} `type:"structure"` @@ -35522,6 +36959,54 @@ return s } +// Contains specifications about the Amazon Lex runtime generative AI capabilities +// from Amazon Bedrock that you can turn on for your bot. +type RuntimeSettings struct { + _ struct{} `type:"structure"` + + // An object containing specifications for the assisted slot resolution feature. + SlotResolutionImprovement *SlotResolutionImprovementSpecification `locationName:"slotResolutionImprovement" 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 RuntimeSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RuntimeSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RuntimeSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RuntimeSettings"} + if s.SlotResolutionImprovement != nil { + if err := s.SlotResolutionImprovement.Validate(); err != nil { + invalidParams.AddNested("SlotResolutionImprovement", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSlotResolutionImprovement sets the SlotResolutionImprovement field's value. +func (s *RuntimeSettings) SetSlotResolutionImprovement(v *SlotResolutionImprovementSpecification) *RuntimeSettings { + s.SlotResolutionImprovement = v + return s +} + // Specifies an Amazon S3 bucket for logging audio conversations type S3BucketLogDestination struct { _ struct{} `type:"structure"` @@ -35812,6 +37297,68 @@ return s } +// Contains specifications for the sample utterance generation feature. +type SampleUtteranceGenerationSpecification struct { + _ struct{} `type:"structure"` + + // Contains information about the Amazon Bedrock model used to interpret the + // prompt used in descriptive bot building. + BedrockModelSpecification *BedrockModelSpecification `locationName:"bedrockModelSpecification" type:"structure"` + + // Specifies whether to enable sample utterance generation or not. + // + // Enabled is a required field + Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SampleUtteranceGenerationSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SampleUtteranceGenerationSpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SampleUtteranceGenerationSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SampleUtteranceGenerationSpecification"} + if s.Enabled == nil { + invalidParams.Add(request.NewErrParamRequired("Enabled")) + } + if s.BedrockModelSpecification != nil { + if err := s.BedrockModelSpecification.Validate(); err != nil { + invalidParams.AddNested("BedrockModelSpecification", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBedrockModelSpecification sets the BedrockModelSpecification field's value. +func (s *SampleUtteranceGenerationSpecification) SetBedrockModelSpecification(v *BedrockModelSpecification) *SampleUtteranceGenerationSpecification { + s.BedrockModelSpecification = v + return s +} + +// SetEnabled sets the Enabled field's value. +func (s *SampleUtteranceGenerationSpecification) SetEnabled(v bool) *SampleUtteranceGenerationSpecification { + s.Enabled = &v + return s +} + // Defines one of the values for a slot type. type SampleValue struct { _ struct{} `type:"structure"` @@ -36863,6 +38410,119 @@ return s } +// Contains specifications for the assisted slot resolution feature. +type SlotResolutionImprovementSpecification struct { + _ struct{} `type:"structure"` + + // An object containing information about the Amazon Bedrock model used to assist + // slot resolution. + BedrockModelSpecification *BedrockModelSpecification `locationName:"bedrockModelSpecification" type:"structure"` + + // Specifies whether assisted slot resolution is turned on or off. + // + // Enabled is a required field + Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SlotResolutionImprovementSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SlotResolutionImprovementSpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SlotResolutionImprovementSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SlotResolutionImprovementSpecification"} + if s.Enabled == nil { + invalidParams.Add(request.NewErrParamRequired("Enabled")) + } + if s.BedrockModelSpecification != nil { + if err := s.BedrockModelSpecification.Validate(); err != nil { + invalidParams.AddNested("BedrockModelSpecification", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBedrockModelSpecification sets the BedrockModelSpecification field's value. +func (s *SlotResolutionImprovementSpecification) SetBedrockModelSpecification(v *BedrockModelSpecification) *SlotResolutionImprovementSpecification { + s.BedrockModelSpecification = v + return s +} + +// SetEnabled sets the Enabled field's value. +func (s *SlotResolutionImprovementSpecification) SetEnabled(v bool) *SlotResolutionImprovementSpecification { + s.Enabled = &v + return s +} + +// Contains information about whether assisted slot resolution is turned on +// for the slot or not. +type SlotResolutionSetting struct { + _ struct{} `type:"structure"` + + // Specifies whether assisted slot resolution is turned on for the slot or not. + // If the value is EnhancedFallback, assisted slot resolution is activated when + // Amazon Lex defaults to the AMAZON.FallbackIntent. If the value is Default, + // assisted slot resolution is turned off. + // + // SlotResolutionStrategy is a required field + SlotResolutionStrategy *string `locationName:"slotResolutionStrategy" type:"string" required:"true" enum:"SlotResolutionStrategy"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SlotResolutionSetting) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SlotResolutionSetting) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SlotResolutionSetting) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SlotResolutionSetting"} + if s.SlotResolutionStrategy == nil { + invalidParams.Add(request.NewErrParamRequired("SlotResolutionStrategy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSlotResolutionStrategy sets the SlotResolutionStrategy field's value. +func (s *SlotResolutionSetting) SetSlotResolutionStrategy(v string) *SlotResolutionSetting { + s.SlotResolutionStrategy = &v + return s +} + // Information about the success and failure rate of slot resolution in the // results of a test execution. type SlotResolutionTestResultItem struct { @@ -37521,6 +39181,10 @@ // SlotConstraint is a required field SlotConstraint *string `locationName:"slotConstraint" type:"string" required:"true" enum:"SlotConstraint"` + // An object containing information about whether assisted slot resolution is + // turned on for the slot or not. + SlotResolutionSetting *SlotResolutionSetting `locationName:"slotResolutionSetting" type:"structure"` + // Specifies the prompts that Amazon Lex uses while a bot is waiting for customer // input. WaitAndContinueSpecification *WaitAndContinueSpecification `locationName:"waitAndContinueSpecification" type:"structure"` @@ -37575,6 +39239,11 @@ invalidParams.AddNested("SlotCaptureSetting", err.(request.ErrInvalidParams)) } } + if s.SlotResolutionSetting != nil { + if err := s.SlotResolutionSetting.Validate(); err != nil { + invalidParams.AddNested("SlotResolutionSetting", err.(request.ErrInvalidParams)) + } + } if s.WaitAndContinueSpecification != nil { if err := s.WaitAndContinueSpecification.Validate(); err != nil { invalidParams.AddNested("WaitAndContinueSpecification", err.(request.ErrInvalidParams)) @@ -37617,6 +39286,12 @@ return s } +// SetSlotResolutionSetting sets the SlotResolutionSetting field's value. +func (s *SlotValueElicitationSetting) SetSlotResolutionSetting(v *SlotResolutionSetting) *SlotValueElicitationSetting { + s.SlotResolutionSetting = v + return s +} + // SetWaitAndContinueSpecification sets the WaitAndContinueSpecification field's value. func (s *SlotValueElicitationSetting) SetWaitAndContinueSpecification(v *WaitAndContinueSpecification) *SlotValueElicitationSetting { s.WaitAndContinueSpecification = v @@ -38146,6 +39821,194 @@ return s } +type StartBotResourceGenerationInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot for which to generate intents and slot types. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The version of the bot for which to generate intents and slot types. + // + // BotVersion is a required field + BotVersion *string `location:"uri" locationName:"botVersion" min:"1" type:"string" required:"true"` + + // The prompt to generate intents and slot types for the bot locale. Your description + // should be both detailed and precise to help generate appropriate and sufficient + // intents for your bot. Include a list of actions to improve the intent creation + // process. + // + // GenerationInputPrompt is a required field + GenerationInputPrompt *string `locationName:"generationInputPrompt" min:"100" type:"string" required:"true"` + + // The locale of the bot for which to generate intents and slot types. + // + // LocaleId is a required field + LocaleId *string `location:"uri" locationName:"localeId" 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 StartBotResourceGenerationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartBotResourceGenerationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartBotResourceGenerationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartBotResourceGenerationInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.BotVersion == nil { + invalidParams.Add(request.NewErrParamRequired("BotVersion")) + } + if s.BotVersion != nil && len(*s.BotVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BotVersion", 1)) + } + if s.GenerationInputPrompt == nil { + invalidParams.Add(request.NewErrParamRequired("GenerationInputPrompt")) + } + if s.GenerationInputPrompt != nil && len(*s.GenerationInputPrompt) < 100 { + invalidParams.Add(request.NewErrParamMinLen("GenerationInputPrompt", 100)) + } + if s.LocaleId == nil { + invalidParams.Add(request.NewErrParamRequired("LocaleId")) + } + if s.LocaleId != nil && len(*s.LocaleId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LocaleId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *StartBotResourceGenerationInput) SetBotId(v string) *StartBotResourceGenerationInput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *StartBotResourceGenerationInput) SetBotVersion(v string) *StartBotResourceGenerationInput { + s.BotVersion = &v + return s +} + +// SetGenerationInputPrompt sets the GenerationInputPrompt field's value. +func (s *StartBotResourceGenerationInput) SetGenerationInputPrompt(v string) *StartBotResourceGenerationInput { + s.GenerationInputPrompt = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *StartBotResourceGenerationInput) SetLocaleId(v string) *StartBotResourceGenerationInput { + s.LocaleId = &v + return s +} + +type StartBotResourceGenerationOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot for which the generation request was made. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // The version of the bot for which the generation request was made. + BotVersion *string `locationName:"botVersion" min:"1" type:"string"` + + // The date and time at which the generation request was made. + CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"` + + // The unique identifier of the generation request. + GenerationId *string `locationName:"generationId" min:"10" type:"string"` + + // The prompt that was used generate intents and slot types for the bot locale. + GenerationInputPrompt *string `locationName:"generationInputPrompt" min:"100" type:"string"` + + // The status of the generation request. + GenerationStatus *string `locationName:"generationStatus" type:"string" enum:"GenerationStatus"` + + // The locale of the bot for which the generation request was made. + LocaleId *string `locationName:"localeId" 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 StartBotResourceGenerationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartBotResourceGenerationOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *StartBotResourceGenerationOutput) SetBotId(v string) *StartBotResourceGenerationOutput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *StartBotResourceGenerationOutput) SetBotVersion(v string) *StartBotResourceGenerationOutput { + s.BotVersion = &v + return s +} + +// SetCreationDateTime sets the CreationDateTime field's value. +func (s *StartBotResourceGenerationOutput) SetCreationDateTime(v time.Time) *StartBotResourceGenerationOutput { + s.CreationDateTime = &v + return s +} + +// SetGenerationId sets the GenerationId field's value. +func (s *StartBotResourceGenerationOutput) SetGenerationId(v string) *StartBotResourceGenerationOutput { + s.GenerationId = &v + return s +} + +// SetGenerationInputPrompt sets the GenerationInputPrompt field's value. +func (s *StartBotResourceGenerationOutput) SetGenerationInputPrompt(v string) *StartBotResourceGenerationOutput { + s.GenerationInputPrompt = &v + return s +} + +// SetGenerationStatus sets the GenerationStatus field's value. +func (s *StartBotResourceGenerationOutput) SetGenerationStatus(v string) *StartBotResourceGenerationOutput { + s.GenerationStatus = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *StartBotResourceGenerationOutput) SetLocaleId(v string) *StartBotResourceGenerationOutput { + s.LocaleId = &v + return s +} + type StartImportInput struct { _ struct{} `type:"structure"` @@ -40756,6 +42619,9 @@ // // Enabled is a required field Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` + + // The option to enable selective conversation log capture for text. + SelectiveLoggingEnabled *bool `locationName:"selectiveLoggingEnabled" type:"boolean"` } // String returns the string representation. @@ -40809,6 +42675,12 @@ return s } +// SetSelectiveLoggingEnabled sets the SelectiveLoggingEnabled field's value. +func (s *TextLogSetting) SetSelectiveLoggingEnabled(v bool) *TextLogSetting { + s.SelectiveLoggingEnabled = &v + return s +} + // Your request rate is too high. Reduce the frequency of requests. type ThrottlingException struct { _ struct{} `type:"structure"` @@ -41564,6 +43436,11 @@ // The new description of the locale. Description *string `locationName:"description" type:"string"` + // Contains settings for generative AI features powered by Amazon Bedrock for + // your bot locale. Use this object to turn generative AI features on and off. + // Pricing may differ if you turn a feature on. For more information, see LINK. + GenerativeAISettings *GenerativeAISettings `locationName:"generativeAISettings" type:"structure"` + // The identifier of the language and locale to update. The string must match // one of the supported locales. For more information, see Supported languages // (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html). @@ -41625,6 +43502,11 @@ if s.NluIntentConfidenceThreshold == nil { invalidParams.Add(request.NewErrParamRequired("NluIntentConfidenceThreshold")) } + if s.GenerativeAISettings != nil { + if err := s.GenerativeAISettings.Validate(); err != nil { + invalidParams.AddNested("GenerativeAISettings", err.(request.ErrInvalidParams)) + } + } if s.VoiceSettings != nil { if err := s.VoiceSettings.Validate(); err != nil { invalidParams.AddNested("VoiceSettings", err.(request.ErrInvalidParams)) @@ -41655,6 +43537,12 @@ return s } +// SetGenerativeAISettings sets the GenerativeAISettings field's value. +func (s *UpdateBotLocaleInput) SetGenerativeAISettings(v *GenerativeAISettings) *UpdateBotLocaleInput { + s.GenerativeAISettings = v + return s +} + // SetLocaleId sets the LocaleId field's value. func (s *UpdateBotLocaleInput) SetLocaleId(v string) *UpdateBotLocaleInput { s.LocaleId = &v @@ -41696,6 +43584,10 @@ // that occurred while building the bot. FailureReasons []*string `locationName:"failureReasons" type:"list"` + // Contains settings for generative AI features powered by Amazon Bedrock for + // your bot locale. + GenerativeAISettings *GenerativeAISettings `locationName:"generativeAISettings" type:"structure"` + // A timestamp of the date and time that the locale was last updated. LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"` @@ -41771,6 +43663,12 @@ return s } +// SetGenerativeAISettings sets the GenerativeAISettings field's value. +func (s *UpdateBotLocaleOutput) SetGenerativeAISettings(v *GenerativeAISettings) *UpdateBotLocaleOutput { + s.GenerativeAISettings = v + return s +} + // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value. func (s *UpdateBotLocaleOutput) SetLastUpdatedDateTime(v time.Time) *UpdateBotLocaleOutput { s.LastUpdatedDateTime = &v @@ -46176,6 +48074,42 @@ } const ( + // GenerationSortByAttributeCreationStartTime is a GenerationSortByAttribute enum value + GenerationSortByAttributeCreationStartTime = "creationStartTime" + + // GenerationSortByAttributeLastUpdatedTime is a GenerationSortByAttribute enum value + GenerationSortByAttributeLastUpdatedTime = "lastUpdatedTime" +) + +// GenerationSortByAttribute_Values returns all elements of the GenerationSortByAttribute enum +func GenerationSortByAttribute_Values() []string { + return []string{ + GenerationSortByAttributeCreationStartTime, + GenerationSortByAttributeLastUpdatedTime, + } +} + +const ( + // GenerationStatusFailed is a GenerationStatus enum value + GenerationStatusFailed = "Failed" + + // GenerationStatusComplete is a GenerationStatus enum value + GenerationStatusComplete = "Complete" + + // GenerationStatusInProgress is a GenerationStatus enum value + GenerationStatusInProgress = "InProgress" +) + +// GenerationStatus_Values returns all elements of the GenerationStatus enum +func GenerationStatus_Values() []string { + return []string{ + GenerationStatusFailed, + GenerationStatusComplete, + GenerationStatusInProgress, + } +} + +const ( // ImportExportFileFormatLexJson is a ImportExportFileFormat enum value ImportExportFileFormatLexJson = "LexJson" @@ -46504,6 +48438,22 @@ } } +const ( + // SlotResolutionStrategyEnhancedFallback is a SlotResolutionStrategy enum value + SlotResolutionStrategyEnhancedFallback = "EnhancedFallback" + + // SlotResolutionStrategyDefault is a SlotResolutionStrategy enum value + SlotResolutionStrategyDefault = "Default" +) + +// SlotResolutionStrategy_Values returns all elements of the SlotResolutionStrategy enum +func SlotResolutionStrategy_Values() []string { + return []string{ + SlotResolutionStrategyEnhancedFallback, + SlotResolutionStrategyDefault, + } +} + const ( // SlotShapeScalar is a SlotShape enum value SlotShapeScalar = "Scalar" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lexmodelsv2/lexmodelsv2iface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/lexmodelsv2/lexmodelsv2iface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lexmodelsv2/lexmodelsv2iface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lexmodelsv2/lexmodelsv2iface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -196,6 +196,10 @@ DescribeBotRecommendationWithContext(aws.Context, *lexmodelsv2.DescribeBotRecommendationInput, ...request.Option) (*lexmodelsv2.DescribeBotRecommendationOutput, error) DescribeBotRecommendationRequest(*lexmodelsv2.DescribeBotRecommendationInput) (*request.Request, *lexmodelsv2.DescribeBotRecommendationOutput) + DescribeBotResourceGeneration(*lexmodelsv2.DescribeBotResourceGenerationInput) (*lexmodelsv2.DescribeBotResourceGenerationOutput, error) + DescribeBotResourceGenerationWithContext(aws.Context, *lexmodelsv2.DescribeBotResourceGenerationInput, ...request.Option) (*lexmodelsv2.DescribeBotResourceGenerationOutput, error) + DescribeBotResourceGenerationRequest(*lexmodelsv2.DescribeBotResourceGenerationInput) (*request.Request, *lexmodelsv2.DescribeBotResourceGenerationOutput) + DescribeBotVersion(*lexmodelsv2.DescribeBotVersionInput) (*lexmodelsv2.DescribeBotVersionOutput, error) DescribeBotVersionWithContext(aws.Context, *lexmodelsv2.DescribeBotVersionInput, ...request.Option) (*lexmodelsv2.DescribeBotVersionOutput, error) DescribeBotVersionRequest(*lexmodelsv2.DescribeBotVersionInput) (*request.Request, *lexmodelsv2.DescribeBotVersionOutput) @@ -244,6 +248,10 @@ DescribeTestSetGenerationWithContext(aws.Context, *lexmodelsv2.DescribeTestSetGenerationInput, ...request.Option) (*lexmodelsv2.DescribeTestSetGenerationOutput, error) DescribeTestSetGenerationRequest(*lexmodelsv2.DescribeTestSetGenerationInput) (*request.Request, *lexmodelsv2.DescribeTestSetGenerationOutput) + GenerateBotElement(*lexmodelsv2.GenerateBotElementInput) (*lexmodelsv2.GenerateBotElementOutput, error) + GenerateBotElementWithContext(aws.Context, *lexmodelsv2.GenerateBotElementInput, ...request.Option) (*lexmodelsv2.GenerateBotElementOutput, error) + GenerateBotElementRequest(*lexmodelsv2.GenerateBotElementInput) (*request.Request, *lexmodelsv2.GenerateBotElementOutput) + GetTestExecutionArtifactsUrl(*lexmodelsv2.GetTestExecutionArtifactsUrlInput) (*lexmodelsv2.GetTestExecutionArtifactsUrlOutput, error) GetTestExecutionArtifactsUrlWithContext(aws.Context, *lexmodelsv2.GetTestExecutionArtifactsUrlInput, ...request.Option) (*lexmodelsv2.GetTestExecutionArtifactsUrlOutput, error) GetTestExecutionArtifactsUrlRequest(*lexmodelsv2.GetTestExecutionArtifactsUrlInput) (*request.Request, *lexmodelsv2.GetTestExecutionArtifactsUrlOutput) @@ -276,6 +284,13 @@ ListBotRecommendationsPages(*lexmodelsv2.ListBotRecommendationsInput, func(*lexmodelsv2.ListBotRecommendationsOutput, bool) bool) error ListBotRecommendationsPagesWithContext(aws.Context, *lexmodelsv2.ListBotRecommendationsInput, func(*lexmodelsv2.ListBotRecommendationsOutput, bool) bool, ...request.Option) error + ListBotResourceGenerations(*lexmodelsv2.ListBotResourceGenerationsInput) (*lexmodelsv2.ListBotResourceGenerationsOutput, error) + ListBotResourceGenerationsWithContext(aws.Context, *lexmodelsv2.ListBotResourceGenerationsInput, ...request.Option) (*lexmodelsv2.ListBotResourceGenerationsOutput, error) + ListBotResourceGenerationsRequest(*lexmodelsv2.ListBotResourceGenerationsInput) (*request.Request, *lexmodelsv2.ListBotResourceGenerationsOutput) + + ListBotResourceGenerationsPages(*lexmodelsv2.ListBotResourceGenerationsInput, func(*lexmodelsv2.ListBotResourceGenerationsOutput, bool) bool) error + ListBotResourceGenerationsPagesWithContext(aws.Context, *lexmodelsv2.ListBotResourceGenerationsInput, func(*lexmodelsv2.ListBotResourceGenerationsOutput, bool) bool, ...request.Option) error + ListBotVersions(*lexmodelsv2.ListBotVersionsInput) (*lexmodelsv2.ListBotVersionsOutput, error) ListBotVersionsWithContext(aws.Context, *lexmodelsv2.ListBotVersionsInput, ...request.Option) (*lexmodelsv2.ListBotVersionsOutput, error) ListBotVersionsRequest(*lexmodelsv2.ListBotVersionsInput) (*request.Request, *lexmodelsv2.ListBotVersionsOutput) @@ -439,6 +454,10 @@ StartBotRecommendationWithContext(aws.Context, *lexmodelsv2.StartBotRecommendationInput, ...request.Option) (*lexmodelsv2.StartBotRecommendationOutput, error) StartBotRecommendationRequest(*lexmodelsv2.StartBotRecommendationInput) (*request.Request, *lexmodelsv2.StartBotRecommendationOutput) + StartBotResourceGeneration(*lexmodelsv2.StartBotResourceGenerationInput) (*lexmodelsv2.StartBotResourceGenerationOutput, error) + StartBotResourceGenerationWithContext(aws.Context, *lexmodelsv2.StartBotResourceGenerationInput, ...request.Option) (*lexmodelsv2.StartBotResourceGenerationOutput, error) + StartBotResourceGenerationRequest(*lexmodelsv2.StartBotResourceGenerationInput) (*request.Request, *lexmodelsv2.StartBotResourceGenerationOutput) + StartImport(*lexmodelsv2.StartImportInput) (*lexmodelsv2.StartImportOutput, error) StartImportWithContext(aws.Context, *lexmodelsv2.StartImportInput, ...request.Option) (*lexmodelsv2.StartImportOutput, error) StartImportRequest(*lexmodelsv2.StartImportInput) (*request.Request, *lexmodelsv2.StartImportOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lexruntimev2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/lexruntimev2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lexruntimev2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lexruntimev2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2213,7 +2213,7 @@ // // * Spell by word - "b as in boy" "o as in oscar" "b as in boy" // - // For more information, see Using spelling to enter slot values (https://docs.aws.amazon.com/lexv2/latest/dg/using-spelling.html). + // For more information, see Using spelling to enter slot values (https://docs.aws.amazon.com/lexv2/latest/dg/spelling-styles.html). SlotElicitationStyle *string `locationName:"slotElicitationStyle" type:"string" enum:"StyleType"` // The name of the slot that should be elicited from the user. @@ -2224,21 +2224,21 @@ SubSlotToElicit *ElicitSubSlot `locationName:"subSlotToElicit" type:"structure"` // The next action that the bot should take in its interaction with the user. - // The possible values are: + // The following values are possible: // - // * Close - Indicates that there will not be a response from the user. For - // example, the statement "Your order has been placed" does not require a - // response. + // * Close – Indicates that there will not be a response from the user. + // For example, the statement "Your order has been placed" does not require + // a response. // - // * ConfirmIntent - The next action is asking the user if the intent is + // * ConfirmIntent – The next action is asking the user if the intent is // complete and ready to be fulfilled. This is a yes/no question such as // "Place the order?" // - // * Delegate - The next action is determined by Amazon Lex V2. + // * Delegate – The next action is determined by Amazon Lex V2. // - // * ElicitIntent - The next action is to elicit an intent from the user. + // * ElicitIntent – The next action is to elicit an intent from the user. // - // * ElicitSlot - The next action is to elicit a slot value from the user. + // * ElicitSlot – The next action is to elicit a slot value from the user. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"DialogActionType"` @@ -2784,7 +2784,8 @@ type Intent struct { _ struct{} `type:"structure"` - // Contains information about whether fulfillment of the intent has been confirmed. + // Indicates whether the intent has been Confirmed, Denied, or None if the confirmation + // stage has not yet been reached. ConfirmationState *string `locationName:"confirmationState" type:"string" enum:"ConfirmationState"` // The name of the intent. @@ -2796,7 +2797,24 @@ // value of the slot. If a slot has not been filled, the value is null. Slots map[string]*Slot `locationName:"slots" type:"map"` - // Contains fulfillment information for the intent. + // Indicates the fulfillment state for the intent. The meanings of each value + // are as follows: + // + // * Failed – The bot failed to fulfill the intent. + // + // * Fulfilled – The bot has completed fulfillment of the intent. + // + // * FulfillmentInProgress – The bot is in the middle of fulfilling the + // intent. + // + // * InProgress – The bot is in the middle of eliciting the slot values + // that are necessary to fulfill the intent. + // + // * ReadyForFulfillment – The bot has elicited all the slot values for + // the intent and is ready to fulfill the intent. + // + // * Waiting – The bot is waiting for a response from the user (limited + // to streaming conversations). State *string `locationName:"state" type:"string" enum:"IntentState"` } @@ -2878,7 +2896,8 @@ // for each event sent by Amazon Lex V2 in the current session. EventId *string `locationName:"eventId" min:"2" type:"string"` - // Indicates whether the input to the operation was text or speech. + // Indicates whether the input to the operation was text, speech, or from a + // touch-tone keypad. InputMode *string `locationName:"inputMode" type:"string" enum:"InputMode"` // A list of intents that Amazon Lex V2 determined might satisfy the user's @@ -3083,8 +3102,9 @@ return s.RespMetadata.RequestID } -// An intent that Amazon Lex V2 determined might satisfy the user's utterance. -// The intents are ordered by the confidence score. +// An object containing information about an intent that Amazon Lex V2 determined +// might satisfy the user's utterance. The intents are ordered by the confidence +// score. type Interpretation struct { _ struct{} `type:"structure"` @@ -3092,6 +3112,9 @@ // ordered by the confidence score. Intent *Intent `locationName:"intent" type:"structure"` + // Specifies the service that interpreted the input. + InterpretationSource *string `locationName:"interpretationSource" type:"string" enum:"InterpretationSource"` + // Determines the threshold where Amazon Lex V2 will insert the AMAZON.FallbackIntent, // AMAZON.KendraSearchIntent, or both when returning alternative intents in // a response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only @@ -3129,6 +3152,12 @@ return s } +// SetInterpretationSource sets the InterpretationSource field's value. +func (s *Interpretation) SetInterpretationSource(v string) *Interpretation { + s.InterpretationSource = &v + return s +} + // SetNluConfidence sets the NluConfidence field's value. func (s *Interpretation) SetNluConfidence(v *ConfidenceScore) *Interpretation { s.NluConfidence = v @@ -3570,18 +3599,17 @@ // that the messages are defined in the bot. Messages *string `location:"header" locationName:"x-amz-lex-messages" min:"1" type:"string"` - // Request-specific information passed between the client application and Amazon - // Lex V2. These are the same as the requestAttribute parameter in the call - // to the PutSession operation. + // A base-64-encoded gzipped field that provides request-specific information + // passed between the client application and Amazon Lex V2. These are the same + // as the requestAttribute parameter in the call to the PutSession operation. RequestAttributes *string `location:"header" locationName:"x-amz-lex-request-attributes" min:"1" type:"string"` // The identifier of the session that received the data. SessionId *string `location:"header" locationName:"x-amz-lex-session-id" min:"2" type:"string"` - // Represents the current state of the dialog between the user and the bot. - // - // Use this to determine the progress of the conversation and what the next - // action may be. + // A base-64-encoded gzipped field that represents the current state of the + // dialog between the user and the bot. Use this to determine the progress of + // the conversation and what the next action may be. SessionState *string `location:"header" locationName:"x-amz-lex-session-state" min:"1" type:"string"` } @@ -4096,7 +4124,8 @@ // Content type as specified in the responseContentType in the request. ContentType *string `location:"header" locationName:"Content-Type" min:"1" type:"string"` - // Indicates whether the input mode to the operation was text or speech. + // Indicates whether the input mode to the operation was text, speech, or from + // a touch-tone keypad. InputMode *string `location:"header" locationName:"x-amz-lex-input-mode" min:"1" type:"string"` // The text used to process the request. @@ -5639,22 +5668,24 @@ return s.RespMetadata.RequestID } -// The value of a slot. +// Information about the value provided for a slot and Amazon Lex V2's interpretation. type Value struct { _ struct{} `type:"structure"` - // The value that Amazon Lex V2 determines for the slot. The actual value depends - // on the setting of the value selection strategy for the bot. You can choose - // to use the value entered by the user, or you can have Amazon Lex V2 choose - // the first value in the resolvedValues list. + // The value that Amazon Lex V2 determines for the slot, given the user input. + // The actual value depends on the setting of the value selection strategy for + // the bot. You can choose to use the value entered by the user, or you can + // have Amazon Lex V2 choose the first value in the resolvedValues list. // // InterpretedValue is a required field InterpretedValue *string `locationName:"interpretedValue" min:"1" type:"string" required:"true"` - // The text of the utterance from the user that was entered for the slot. + // The part of the user's response to the slot elicitation that Amazon Lex V2 + // determines is relevant to the slot value. OriginalValue *string `locationName:"originalValue" min:"1" type:"string"` - // A list of additional values that have been recognized for the slot. + // A list of values that Amazon Lex V2 determines are possible resolutions for + // the user input. The first value matches the interpretedValue. ResolvedValues []*string `locationName:"resolvedValues" type:"list"` } @@ -5833,6 +5864,22 @@ } } +const ( + // InterpretationSourceBedrock is a InterpretationSource enum value + InterpretationSourceBedrock = "Bedrock" + + // InterpretationSourceLex is a InterpretationSource enum value + InterpretationSourceLex = "Lex" +) + +// InterpretationSource_Values returns all elements of the InterpretationSource enum +func InterpretationSource_Values() []string { + return []string{ + InterpretationSourceBedrock, + InterpretationSourceLex, + } +} + const ( // MessageContentTypeCustomPayload is a MessageContentType enum value MessageContentTypeCustomPayload = "CustomPayload" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/lexruntimev2/eventstream_test.go golang-github-aws-aws-sdk-go-1.48.14/service/lexruntimev2/eventstream_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/lexruntimev2/eventstream_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/lexruntimev2/eventstream_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -285,6 +285,7 @@ }, State: aws.String("string value goes here"), }, + InterpretationSource: aws.String("string value goes here"), NluConfidence: &ConfidenceScore{ Score: aws.Float64(123.45), }, @@ -348,6 +349,7 @@ }, State: aws.String("string value goes here"), }, + InterpretationSource: aws.String("string value goes here"), NluConfidence: &ConfidenceScore{ Score: aws.Float64(123.45), }, @@ -411,6 +413,7 @@ }, State: aws.String("string value goes here"), }, + InterpretationSource: aws.String("string value goes here"), NluConfidence: &ConfidenceScore{ Score: aws.Float64(123.45), }, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/locationservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/locationservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/locationservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/locationservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -52,7 +52,7 @@ output = &AssociateTrackerConsumerOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1020,7 +1020,7 @@ output = &CreateGeofenceCollectionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("geofencing.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.geofencing.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1120,7 +1120,7 @@ output = &CreateKeyOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1223,7 +1223,7 @@ output = &CreateMapOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("maps.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.maps.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1329,7 +1329,7 @@ output = &CreatePlaceIndexOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("places.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.places.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1438,7 +1438,7 @@ output = &CreateRouteCalculatorOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("routes.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.routes.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1547,7 +1547,7 @@ output = &CreateTrackerOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1649,7 +1649,7 @@ output = &DeleteGeofenceCollectionOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("geofencing.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.geofencing.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1748,7 +1748,7 @@ output = &DeleteKeyOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1845,7 +1845,7 @@ output = &DeleteMapOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("maps.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.maps.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -1944,7 +1944,7 @@ output = &DeletePlaceIndexOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("places.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.places.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2042,7 +2042,7 @@ output = &DeleteRouteCalculatorOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("routes.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.routes.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2140,7 +2140,7 @@ output = &DeleteTrackerOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2239,7 +2239,7 @@ output = &DescribeGeofenceCollectionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("geofencing.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.geofencing.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2334,7 +2334,7 @@ output = &DescribeKeyOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2429,7 +2429,7 @@ output = &DescribeMapOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("maps.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.maps.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2524,7 +2524,7 @@ output = &DescribePlaceIndexOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("places.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.places.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2619,7 +2619,7 @@ output = &DescribeRouteCalculatorOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("routes.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.routes.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2714,7 +2714,7 @@ output = &DescribeTrackerOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -2810,7 +2810,7 @@ output = &DisassociateTrackerConsumerOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -3907,7 +3907,7 @@ output = &ListGeofenceCollectionsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("geofencing.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.geofencing.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -4208,7 +4208,7 @@ output = &ListKeysOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -4357,7 +4357,7 @@ output = &ListMapsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("maps.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.maps.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -4506,7 +4506,7 @@ output = &ListPlaceIndexesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("places.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.places.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -4655,7 +4655,7 @@ output = &ListRouteCalculatorsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("routes.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.routes.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -4798,7 +4798,7 @@ output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -4900,7 +4900,7 @@ output = &ListTrackerConsumersOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -5052,7 +5052,7 @@ output = &ListTrackersOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -5601,7 +5601,7 @@ output = &TagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -5710,7 +5710,7 @@ output = &UntagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -5805,7 +5805,7 @@ output = &UpdateGeofenceCollectionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("geofencing.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.geofencing.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -5900,7 +5900,7 @@ output = &UpdateKeyOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("metadata.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.metadata.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -5995,7 +5995,7 @@ output = &UpdateMapOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("maps.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.maps.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -6090,7 +6090,7 @@ output = &UpdatePlaceIndexOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("places.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.places.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -6185,7 +6185,7 @@ output = &UpdateRouteCalculatorOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("routes.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.routes.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -6280,7 +6280,7 @@ output = &UpdateTrackerOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tracking.", nil)) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("cp.tracking.", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return } @@ -9883,6 +9883,22 @@ // with this tracker. Those events are always sent to EventBridge. EventBridgeEnabled *bool `type:"boolean"` + // Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS + // customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). + // + // This parameter is only used if you are using a KMS customer managed key. + // + // If you wish to encrypt your data using your own KMS customer managed key, + // then the Bounding Polygon Queries feature will be disabled by default. This + // is because by using this feature, a representation of your device positions + // will not be encrypted using the your KMS managed key. The exact device position, + // however; is still encrypted using your managed key. + // + // You can choose to opt-in to the Bounding Polygon Quseries feature. This is + // done by setting the KmsKeyEnableGeospatialQueries parameter to true when + // creating or updating a Tracker. + KmsKeyEnableGeospatialQueries *bool `type:"boolean"` + // A key identifier for an Amazon Web Services KMS customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). // Enter a key ID, key ARN, alias name, or alias ARN. KmsKeyId *string `min:"1" type:"string"` @@ -10010,6 +10026,12 @@ return s } +// SetKmsKeyEnableGeospatialQueries sets the KmsKeyEnableGeospatialQueries field's value. +func (s *CreateTrackerInput) SetKmsKeyEnableGeospatialQueries(v bool) *CreateTrackerInput { + s.KmsKeyEnableGeospatialQueries = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *CreateTrackerInput) SetKmsKeyId(v string) *CreateTrackerInput { s.KmsKeyId = &v @@ -10659,6 +10681,9 @@ // Description is a required field Description *string `type:"string" required:"true"` + // The number of geofences in the geofence collection. + GeofenceCount *int64 `type:"integer"` + // A key identifier for an Amazon Web Services KMS customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) // assigned to the Amazon Location resource KmsKeyId *string `min:"1" type:"string"` @@ -10725,6 +10750,12 @@ return s } +// SetGeofenceCount sets the GeofenceCount field's value. +func (s *DescribeGeofenceCollectionOutput) SetGeofenceCount(v int64) *DescribeGeofenceCollectionOutput { + s.GeofenceCount = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DescribeGeofenceCollectionOutput) SetKmsKeyId(v string) *DescribeGeofenceCollectionOutput { s.KmsKeyId = &v @@ -11530,6 +11561,22 @@ // to true these events will be sent to EventBridge. EventBridgeEnabled *bool `type:"boolean"` + // Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS + // customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). + // + // This parameter is only used if you are using a KMS customer managed key. + // + // If you wish to encrypt your data using your own KMS customer managed key, + // then the Bounding Polygon Queries feature will be disabled by default. This + // is because by using this feature, a representation of your device positions + // will not be encrypted using the your KMS managed key. The exact device position, + // however; is still encrypted using your managed key. + // + // You can choose to opt-in to the Bounding Polygon Quseries feature. This is + // done by setting the KmsKeyEnableGeospatialQueries parameter to true when + // creating or updating a Tracker. + KmsKeyEnableGeospatialQueries *bool `type:"boolean"` + // A key identifier for an Amazon Web Services KMS customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) // assigned to the Amazon Location resource. KmsKeyId *string `min:"1" type:"string"` @@ -11606,6 +11653,12 @@ return s } +// SetKmsKeyEnableGeospatialQueries sets the KmsKeyEnableGeospatialQueries field's value. +func (s *DescribeTrackerOutput) SetKmsKeyEnableGeospatialQueries(v bool) *DescribeTrackerOutput { + s.KmsKeyEnableGeospatialQueries = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DescribeTrackerOutput) SetKmsKeyId(v string) *DescribeTrackerOutput { s.KmsKeyId = &v @@ -12548,7 +12601,7 @@ // A comma-separated list of fonts to load glyphs from in order of preference. // For example, Noto Sans Regular, Arial Unicode. // - // Valid fonts stacks for Esri (https://docs.aws.amazon.com/location/latest/developerguide/esri.html) + // Valid font stacks for Esri (https://docs.aws.amazon.com/location/latest/developerguide/esri.html) // styles: // // * VectorEsriDarkGrayCanvas – Ubuntu Medium Italic | Ubuntu Medium | @@ -13531,6 +13584,9 @@ type ListDevicePositionsInput struct { _ struct{} `type:"structure"` + // The geomerty used to filter device positions. + FilterGeometry *TrackingFilterGeometry `type:"structure"` + // An optional limit for the number of entries returned in a single call. // // Default value: 100 @@ -13581,6 +13637,11 @@ if s.TrackerName != nil && len(*s.TrackerName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TrackerName", 1)) } + if s.FilterGeometry != nil { + if err := s.FilterGeometry.Validate(); err != nil { + invalidParams.AddNested("FilterGeometry", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -13588,6 +13649,12 @@ return nil } +// SetFilterGeometry sets the FilterGeometry field's value. +func (s *ListDevicePositionsInput) SetFilterGeometry(v *TrackingFilterGeometry) *ListDevicePositionsInput { + s.FilterGeometry = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListDevicePositionsInput) SetMaxResults(v int64) *ListDevicePositionsInput { s.MaxResults = &v @@ -13609,9 +13676,7 @@ type ListDevicePositionsOutput struct { _ struct{} `type:"structure"` - // Contains details about each device's last known position. These details includes - // the device ID, the time when the position was sampled on the device, the - // time that the service received the update, and the most recent coordinates. + // Contains details about each device's last known position. // // Entries is a required field Entries []*ListDevicePositionsResponseEntry `type:"list" required:"true"` @@ -17865,6 +17930,52 @@ return s } +// The geomerty used to filter device positions. +type TrackingFilterGeometry struct { + _ struct{} `type:"structure"` + + // The set of arrays which define the polygon. A polygon can have between 4 + // and 1000 vertices. + Polygon [][][]*float64 `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 TrackingFilterGeometry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrackingFilterGeometry) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrackingFilterGeometry) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrackingFilterGeometry"} + if s.Polygon != nil && len(s.Polygon) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Polygon", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolygon sets the Polygon field's value. +func (s *TrackingFilterGeometry) SetPolygon(v [][][]*float64) *TrackingFilterGeometry { + s.Polygon = v + return s +} + // Contains details about the truck dimensions in the unit of measurement that // you specify. Used to filter out roads that can't support or allow the specified // dimensions for requests that specify TravelMode as Truck. @@ -18803,6 +18914,12 @@ // with this tracker. Those events are always sent to EventBridge. EventBridgeEnabled *bool `type:"boolean"` + // Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS + // customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). + // + // This parameter is only used if you are using a KMS customer managed key. + KmsKeyEnableGeospatialQueries *bool `type:"boolean"` + // Updates the position filtering for the tracker resource. // // Valid values: @@ -18892,6 +19009,12 @@ return s } +// SetKmsKeyEnableGeospatialQueries sets the KmsKeyEnableGeospatialQueries field's value. +func (s *UpdateTrackerInput) SetKmsKeyEnableGeospatialQueries(v bool) *UpdateTrackerInput { + s.KmsKeyEnableGeospatialQueries = &v + return s +} + // SetPositionFiltering sets the PositionFiltering field's value. func (s *UpdateTrackerInput) SetPositionFiltering(v string) *UpdateTrackerInput { s.PositionFiltering = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/m2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/m2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/m2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/m2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1110,12 +1110,22 @@ // - ResourceNotFoundException // The specified resource was not found. // +// - ExecutionTimeoutException +// Failed to connect to server, or didn’t receive response within expected +// time period. +// +// - ServiceUnavailableException +// Server cannot process the request at the moment. +// // - ThrottlingException // The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // +// - ConflictException +// The parameters provided in the request conflict with existing resources. +// // - ValidationException // One or more parameters provided in the request is not valid. // @@ -2312,12 +2322,22 @@ // - ResourceNotFoundException // The specified resource was not found. // +// - ExecutionTimeoutException +// Failed to connect to server, or didn’t receive response within expected +// time period. +// +// - ServiceUnavailableException +// Server cannot process the request at the moment. +// // - ThrottlingException // The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // +// - ConflictException +// The parameters provided in the request conflict with existing resources. +// // - ValidationException // One or more parameters provided in the request is not valid. // @@ -4135,6 +4155,10 @@ // Specifies a file associated with a specific batch job. FileBatchJobIdentifier *FileBatchJobIdentifier `locationName:"fileBatchJobIdentifier" type:"structure"` + // Specifies an Amazon S3 location that identifies the batch jobs that you want + // to run. Use this identifier to run ad hoc batch jobs. + S3BatchJobIdentifier *S3BatchJobIdentifier `locationName:"s3BatchJobIdentifier" type:"structure"` + // A batch job identifier in which the batch job to run is identified by the // script name. ScriptBatchJobIdentifier *ScriptBatchJobIdentifier `locationName:"scriptBatchJobIdentifier" type:"structure"` @@ -4166,6 +4190,11 @@ invalidParams.AddNested("FileBatchJobIdentifier", err.(request.ErrInvalidParams)) } } + if s.S3BatchJobIdentifier != nil { + if err := s.S3BatchJobIdentifier.Validate(); err != nil { + invalidParams.AddNested("S3BatchJobIdentifier", err.(request.ErrInvalidParams)) + } + } if s.ScriptBatchJobIdentifier != nil { if err := s.ScriptBatchJobIdentifier.Validate(); err != nil { invalidParams.AddNested("ScriptBatchJobIdentifier", err.(request.ErrInvalidParams)) @@ -4184,6 +4213,12 @@ return s } +// SetS3BatchJobIdentifier sets the S3BatchJobIdentifier field's value. +func (s *BatchJobIdentifier) SetS3BatchJobIdentifier(v *S3BatchJobIdentifier) *BatchJobIdentifier { + s.S3BatchJobIdentifier = v + return s +} + // SetScriptBatchJobIdentifier sets the ScriptBatchJobIdentifier field's value. func (s *BatchJobIdentifier) SetScriptBatchJobIdentifier(v *ScriptBatchJobIdentifier) *BatchJobIdentifier { s.ScriptBatchJobIdentifier = v @@ -4817,8 +4852,12 @@ // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // Configures the maintenance window you want for the runtime environment. If - // you do not provide a value, a random system-generated value will be assigned. + // Configures the maintenance window that you want for the runtime environment. + // The maintenance window must have the format ddd:hh24:mi-ddd:hh24:mi and must + // be less than 24 hours. The following two examples are valid maintenance windows: + // sun:23:45-mon:00:15 or sat:01:00-sat:03:00. + // + // If you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` // Specifies whether the runtime environment is publicly accessible. @@ -5330,6 +5369,9 @@ // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"DataSetTaskLifecycle"` + // If dataset import failed, the failure reason will show here. + StatusReason *string `locationName:"statusReason" type:"string"` + // A summary of the data set import task. // // Summary is a required field @@ -5365,6 +5407,12 @@ return s } +// SetStatusReason sets the StatusReason field's value. +func (s *DataSetImportTask) SetStatusReason(v string) *DataSetImportTask { + s.StatusReason = &v + return s +} + // SetSummary sets the Summary field's value. func (s *DataSetImportTask) SetSummary(v *DataSetImportSummary) *DataSetImportTask { s.Summary = v @@ -6259,6 +6307,71 @@ return s } +// Failed to connect to server, or didn’t receive response within expected +// time period. +type ExecutionTimeoutException 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 ExecutionTimeoutException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecutionTimeoutException) GoString() string { + return s.String() +} + +func newErrorExecutionTimeoutException(v protocol.ResponseMetadata) error { + return &ExecutionTimeoutException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ExecutionTimeoutException) Code() string { + return "ExecutionTimeoutException" +} + +// Message returns the exception's message. +func (s *ExecutionTimeoutException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ExecutionTimeoutException) OrigErr() error { + return nil +} + +func (s *ExecutionTimeoutException) 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 *ExecutionTimeoutException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ExecutionTimeoutException) RequestID() string { + return s.RespMetadata.RequestID +} + // Defines an external storage location. type ExternalLocation struct { _ struct{} `type:"structure"` @@ -7268,6 +7381,9 @@ // The type of data set. The only supported value is VSAM. DataSetOrg *DatasetDetailOrgAttributes `locationName:"dataSetOrg" type:"structure"` + // File size of the dataset. + FileSize *int64 `locationName:"fileSize" type:"long"` + // The last time the data set was referenced. LastReferencedTime *time.Time `locationName:"lastReferencedTime" type:"timestamp"` @@ -7323,6 +7439,12 @@ return s } +// SetFileSize sets the FileSize field's value. +func (s *GetDataSetDetailsOutput) SetFileSize(v int64) *GetDataSetDetailsOutput { + s.FileSize = &v + return s +} + // SetLastReferencedTime sets the LastReferencedTime field's value. func (s *GetDataSetDetailsOutput) SetLastReferencedTime(v time.Time) *GetDataSetDetailsOutput { s.LastReferencedTime = &v @@ -7682,7 +7804,7 @@ _ struct{} `type:"structure"` // The number of instances included in the runtime environment. A standalone - // runtime environment has a maxiumum of one instance. Currently, a high availability + // runtime environment has a maximum of one instance. Currently, a high availability // runtime environment has a maximum of two instances. ActualCapacity *int64 `locationName:"actualCapacity" type:"integer"` @@ -7738,8 +7860,8 @@ // Indicates the pending maintenance scheduled on this environment. PendingMaintenance *PendingMaintenance `locationName:"pendingMaintenance" type:"structure"` - // Configures the maintenance window you want for the runtime environment. If - // you do not provide a value, a random system-generated value will be assigned. + // The maintenance window for the runtime environment. If you don't provide + // a value for the maintenance window, the service assigns a random value. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` // Whether applications running in this runtime environment are publicly accessible. @@ -8095,6 +8217,47 @@ return s.RespMetadata.RequestID } +// Identifies a specific batch job. +type JobIdentifier struct { + _ struct{} `type:"structure"` + + // The name of the file that contains the batch job definition. + FileName *string `locationName:"fileName" type:"string"` + + // The name of the script that contains the batch job definition. + ScriptName *string `locationName:"scriptName" 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 JobIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JobIdentifier) GoString() string { + return s.String() +} + +// SetFileName sets the FileName field's value. +func (s *JobIdentifier) SetFileName(v string) *JobIdentifier { + s.FileName = &v + return s +} + +// SetScriptName sets the ScriptName field's value. +func (s *JobIdentifier) SetScriptName(v string) *JobIdentifier { + s.ScriptName = &v + return s +} + type ListApplicationVersionsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -8743,6 +8906,10 @@ // The maximum number of objects to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + // Filter dataset name matching the specified pattern. Can use * and % as wild + // cards. + NameFilter *string `location:"querystring" locationName:"nameFilter" type:"string"` + // A pagination token returned from a previous call to this operation. This // specifies the next item to return. To return to the beginning of the list, // exclude this parameter. @@ -8802,6 +8969,12 @@ return s } +// SetNameFilter sets the NameFilter field's value. +func (s *ListDataSetsInput) SetNameFilter(v string) *ListDataSetsInput { + s.NameFilter = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *ListDataSetsInput) SetNextToken(v string) *ListDataSetsInput { s.NextToken = &v @@ -9835,6 +10008,80 @@ return s.RespMetadata.RequestID } +// A batch job identifier in which the batch jobs to run are identified by an +// Amazon S3 location. +type S3BatchJobIdentifier struct { + _ struct{} `type:"structure"` + + // The Amazon S3 bucket that contains the batch job definitions. + // + // Bucket is a required field + Bucket *string `locationName:"bucket" type:"string" required:"true"` + + // Identifies the batch job definition. This identifier can also point to any + // batch job definition that already exists in the application or to one of + // the batch job definitions within the directory that is specified in keyPrefix. + // + // Identifier is a required field + Identifier *JobIdentifier `locationName:"identifier" type:"structure" required:"true"` + + // The key prefix that specifies the path to the folder in the S3 bucket that + // has the batch job definitions. + KeyPrefix *string `locationName:"keyPrefix" 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 S3BatchJobIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3BatchJobIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3BatchJobIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3BatchJobIdentifier"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *S3BatchJobIdentifier) SetBucket(v string) *S3BatchJobIdentifier { + s.Bucket = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *S3BatchJobIdentifier) SetIdentifier(v *JobIdentifier) *S3BatchJobIdentifier { + s.Identifier = v + return s +} + +// SetKeyPrefix sets the KeyPrefix field's value. +func (s *S3BatchJobIdentifier) SetKeyPrefix(v string) *S3BatchJobIdentifier { + s.KeyPrefix = &v + return s +} + // A batch job definition contained in a script. type ScriptBatchJobDefinition struct { _ struct{} `type:"structure"` @@ -9995,6 +10242,70 @@ return s.RespMetadata.RequestID } +// Server cannot process the request at the moment. +type ServiceUnavailableException 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 ServiceUnavailableException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceUnavailableException) GoString() string { + return s.String() +} + +func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { + return &ServiceUnavailableException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceUnavailableException) Code() string { + return "ServiceUnavailableException" +} + +// Message returns the exception's message. +func (s *ServiceUnavailableException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceUnavailableException) OrigErr() error { + return nil +} + +func (s *ServiceUnavailableException) 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 *ServiceUnavailableException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceUnavailableException) RequestID() string { + return s.RespMetadata.RequestID +} + type StartApplicationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10413,7 +10724,7 @@ Message_ *string `locationName:"message" type:"string"` - // The identifier of the throttled reuqest. + // The identifier of the throttled request. QuotaCode *string `locationName:"quotaCode" type:"string"` // The number of seconds to wait before retrying the request. @@ -10709,11 +11020,26 @@ // EnvironmentId is a required field EnvironmentId *string `location:"uri" locationName:"environmentId" type:"string" required:"true"` + // Forces the updates on the environment. This option is needed if the applications + // in the environment are not stopped or if there are ongoing application-related + // activities in the environment. + // + // If you use this option, be aware that it could lead to data corruption in + // the applications, and that you might need to perform repair and recovery + // procedures for the applications. + // + // This option is not needed if the attribute being updated is preferredMaintenanceWindow. + ForceUpdate *bool `locationName:"forceUpdate" type:"boolean"` + // The instance type for the runtime environment to update. InstanceType *string `locationName:"instanceType" type:"string"` - // Configures the maintenance window you want for the runtime environment. If - // you do not provide a value, a random system-generated value will be assigned. + // Configures the maintenance window that you want for the runtime environment. + // The maintenance window must have the format ddd:hh24:mi-ddd:hh24:mi and must + // be less than 24 hours. The following two examples are valid maintenance windows: + // sun:23:45-mon:00:15 or sat:01:00-sat:03:00. + // + // If you do not provide a value, a random system-generated value will be assigned. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` } @@ -10775,6 +11101,12 @@ return s } +// SetForceUpdate sets the ForceUpdate field's value. +func (s *UpdateEnvironmentInput) SetForceUpdate(v bool) *UpdateEnvironmentInput { + s.ForceUpdate = &v + return s +} + // SetInstanceType sets the InstanceType field's value. func (s *UpdateEnvironmentInput) SetInstanceType(v string) *UpdateEnvironmentInput { s.InstanceType = &v @@ -11280,6 +11612,9 @@ // DataSetTaskLifecycleCompleted is a DataSetTaskLifecycle enum value DataSetTaskLifecycleCompleted = "Completed" + + // DataSetTaskLifecycleFailed is a DataSetTaskLifecycle enum value + DataSetTaskLifecycleFailed = "Failed" ) // DataSetTaskLifecycle_Values returns all elements of the DataSetTaskLifecycle enum @@ -11288,6 +11623,7 @@ DataSetTaskLifecycleCreating, DataSetTaskLifecycleRunning, DataSetTaskLifecycleCompleted, + DataSetTaskLifecycleFailed, } } @@ -11300,6 +11636,9 @@ // DeploymentLifecycleFailed is a DeploymentLifecycle enum value DeploymentLifecycleFailed = "Failed" + + // DeploymentLifecycleUpdatingDeployment is a DeploymentLifecycle enum value + DeploymentLifecycleUpdatingDeployment = "Updating Deployment" ) // DeploymentLifecycle_Values returns all elements of the DeploymentLifecycle enum @@ -11308,6 +11647,7 @@ DeploymentLifecycleDeploying, DeploymentLifecycleSucceeded, DeploymentLifecycleFailed, + DeploymentLifecycleUpdatingDeployment, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/m2/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/m2/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/m2/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/m2/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -20,6 +20,13 @@ // The parameters provided in the request conflict with existing resources. ErrCodeConflictException = "ConflictException" + // ErrCodeExecutionTimeoutException for service response error code + // "ExecutionTimeoutException". + // + // Failed to connect to server, or didn’t receive response within expected + // time period. + ErrCodeExecutionTimeoutException = "ExecutionTimeoutException" + // ErrCodeInternalServerException for service response error code // "InternalServerException". // @@ -39,6 +46,12 @@ // the limit. ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + // ErrCodeServiceUnavailableException for service response error code + // "ServiceUnavailableException". + // + // Server cannot process the request at the moment. + ErrCodeServiceUnavailableException = "ServiceUnavailableException" + // ErrCodeThrottlingException for service response error code // "ThrottlingException". // @@ -55,9 +68,11 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessDeniedException": newErrorAccessDeniedException, "ConflictException": newErrorConflictException, + "ExecutionTimeoutException": newErrorExecutionTimeoutException, "InternalServerException": newErrorInternalServerException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ServiceUnavailableException": newErrorServiceUnavailableException, "ThrottlingException": newErrorThrottlingException, "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/machinelearning/api.go golang-github-aws-aws-sdk-go-1.48.14/service/machinelearning/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/machinelearning/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/machinelearning/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -8450,8 +8450,12 @@ // instance. The password should have sufficient permissions to execute the // RDSSelectQuery query. // + // Password is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RDSDatabaseCredentials's + // String and GoString methods. + // // Password is a required field - Password *string `min:"8" type:"string" required:"true"` + Password *string `min:"8" type:"string" required:"true" sensitive:"true"` // The username to be used by Amazon ML to connect to database on an Amazon // RDS instance. The username should have sufficient permissions to execute @@ -8968,8 +8972,12 @@ // a RedshiftSelectSqlQuery query. The password should be valid for an Amazon // Redshift USER (https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_USER.html). // + // Password is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RedshiftDatabaseCredentials's + // String and GoString methods. + // // Password is a required field - Password *string `min:"8" type:"string" required:"true"` + Password *string `min:"8" type:"string" required:"true" sensitive:"true"` // A username to be used by Amazon Machine Learning (Amazon ML)to connect to // a database on an Amazon Redshift cluster. The username should have sufficient diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/macie/api.go golang-github-aws-aws-sdk-go-1.48.14/service/macie/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/macie/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/macie/api.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,2093 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -package macie - -import ( - "fmt" - - "github.com/aws/aws-sdk-go/aws" - "github.com/aws/aws-sdk-go/aws/awsutil" - "github.com/aws/aws-sdk-go/aws/request" - "github.com/aws/aws-sdk-go/private/protocol" - "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" -) - -const opAssociateMemberAccount = "AssociateMemberAccount" - -// AssociateMemberAccountRequest generates a "aws/request.Request" representing the -// client's request for the AssociateMemberAccount 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 AssociateMemberAccount for more information on using the AssociateMemberAccount -// 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 AssociateMemberAccountRequest method. -// req, resp := client.AssociateMemberAccountRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateMemberAccount -func (c *Macie) AssociateMemberAccountRequest(input *AssociateMemberAccountInput) (req *request.Request, output *AssociateMemberAccountOutput) { - op := &request.Operation{ - Name: opAssociateMemberAccount, - HTTPMethod: "POST", - HTTPPath: "/", - } - - if input == nil { - input = &AssociateMemberAccountInput{} - } - - output = &AssociateMemberAccountOutput{} - req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - return -} - -// AssociateMemberAccount API operation for Amazon Macie. -// -// (Discontinued) Associates a specified Amazon Web Services account with Amazon -// Macie Classic as a member account. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation AssociateMemberAccount for usage and error information. -// -// Returned Error Types: -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// - LimitExceededException -// (Discontinued) The request was rejected because it attempted to create resources -// beyond the current Amazon Web Services account quotas. The error code describes -// the quota exceeded. -// -// - InternalException -// (Discontinued) Internal server error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateMemberAccount -func (c *Macie) AssociateMemberAccount(input *AssociateMemberAccountInput) (*AssociateMemberAccountOutput, error) { - req, out := c.AssociateMemberAccountRequest(input) - return out, req.Send() -} - -// AssociateMemberAccountWithContext is the same as AssociateMemberAccount with the addition of -// the ability to pass a context and additional request options. -// -// See AssociateMemberAccount 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 *Macie) AssociateMemberAccountWithContext(ctx aws.Context, input *AssociateMemberAccountInput, opts ...request.Option) (*AssociateMemberAccountOutput, error) { - req, out := c.AssociateMemberAccountRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opAssociateS3Resources = "AssociateS3Resources" - -// AssociateS3ResourcesRequest generates a "aws/request.Request" representing the -// client's request for the AssociateS3Resources 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 AssociateS3Resources for more information on using the AssociateS3Resources -// 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 AssociateS3ResourcesRequest method. -// req, resp := client.AssociateS3ResourcesRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateS3Resources -func (c *Macie) AssociateS3ResourcesRequest(input *AssociateS3ResourcesInput) (req *request.Request, output *AssociateS3ResourcesOutput) { - op := &request.Operation{ - Name: opAssociateS3Resources, - HTTPMethod: "POST", - HTTPPath: "/", - } - - if input == nil { - input = &AssociateS3ResourcesInput{} - } - - output = &AssociateS3ResourcesOutput{} - req = c.newRequest(op, input, output) - return -} - -// AssociateS3Resources API operation for Amazon Macie. -// -// (Discontinued) Associates specified S3 resources with Amazon Macie Classic -// for monitoring and data classification. If memberAccountId isn't specified, -// the action associates specified S3 resources with Macie Classic for the current -// Macie Classic administrator account. If memberAccountId is specified, the -// action associates specified S3 resources with Macie Classic for the specified -// member account. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation AssociateS3Resources for usage and error information. -// -// Returned Error Types: -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// - AccessDeniedException -// (Discontinued) You do not have required permissions to access the requested -// resource. -// -// - LimitExceededException -// (Discontinued) The request was rejected because it attempted to create resources -// beyond the current Amazon Web Services account quotas. The error code describes -// the quota exceeded. -// -// - InternalException -// (Discontinued) Internal server error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateS3Resources -func (c *Macie) AssociateS3Resources(input *AssociateS3ResourcesInput) (*AssociateS3ResourcesOutput, error) { - req, out := c.AssociateS3ResourcesRequest(input) - return out, req.Send() -} - -// AssociateS3ResourcesWithContext is the same as AssociateS3Resources with the addition of -// the ability to pass a context and additional request options. -// -// See AssociateS3Resources 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 *Macie) AssociateS3ResourcesWithContext(ctx aws.Context, input *AssociateS3ResourcesInput, opts ...request.Option) (*AssociateS3ResourcesOutput, error) { - req, out := c.AssociateS3ResourcesRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opDisassociateMemberAccount = "DisassociateMemberAccount" - -// DisassociateMemberAccountRequest generates a "aws/request.Request" representing the -// client's request for the DisassociateMemberAccount 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 DisassociateMemberAccount for more information on using the DisassociateMemberAccount -// 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 DisassociateMemberAccountRequest method. -// req, resp := client.DisassociateMemberAccountRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateMemberAccount -func (c *Macie) DisassociateMemberAccountRequest(input *DisassociateMemberAccountInput) (req *request.Request, output *DisassociateMemberAccountOutput) { - op := &request.Operation{ - Name: opDisassociateMemberAccount, - HTTPMethod: "POST", - HTTPPath: "/", - } - - if input == nil { - input = &DisassociateMemberAccountInput{} - } - - output = &DisassociateMemberAccountOutput{} - req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) - return -} - -// DisassociateMemberAccount API operation for Amazon Macie. -// -// (Discontinued) Removes the specified member account from Amazon Macie Classic. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation DisassociateMemberAccount for usage and error information. -// -// Returned Error Types: -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// - InternalException -// (Discontinued) Internal server error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateMemberAccount -func (c *Macie) DisassociateMemberAccount(input *DisassociateMemberAccountInput) (*DisassociateMemberAccountOutput, error) { - req, out := c.DisassociateMemberAccountRequest(input) - return out, req.Send() -} - -// DisassociateMemberAccountWithContext is the same as DisassociateMemberAccount with the addition of -// the ability to pass a context and additional request options. -// -// See DisassociateMemberAccount 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 *Macie) DisassociateMemberAccountWithContext(ctx aws.Context, input *DisassociateMemberAccountInput, opts ...request.Option) (*DisassociateMemberAccountOutput, error) { - req, out := c.DisassociateMemberAccountRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opDisassociateS3Resources = "DisassociateS3Resources" - -// DisassociateS3ResourcesRequest generates a "aws/request.Request" representing the -// client's request for the DisassociateS3Resources 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 DisassociateS3Resources for more information on using the DisassociateS3Resources -// 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 DisassociateS3ResourcesRequest method. -// req, resp := client.DisassociateS3ResourcesRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateS3Resources -func (c *Macie) DisassociateS3ResourcesRequest(input *DisassociateS3ResourcesInput) (req *request.Request, output *DisassociateS3ResourcesOutput) { - op := &request.Operation{ - Name: opDisassociateS3Resources, - HTTPMethod: "POST", - HTTPPath: "/", - } - - if input == nil { - input = &DisassociateS3ResourcesInput{} - } - - output = &DisassociateS3ResourcesOutput{} - req = c.newRequest(op, input, output) - return -} - -// DisassociateS3Resources API operation for Amazon Macie. -// -// (Discontinued) Removes specified S3 resources from being monitored by Amazon -// Macie Classic. If memberAccountId isn't specified, the action removes specified -// S3 resources from Macie Classic for the current Macie Classic administrator -// account. If memberAccountId is specified, the action removes specified S3 -// resources from Macie Classic for the specified member account. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation DisassociateS3Resources for usage and error information. -// -// Returned Error Types: -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// - AccessDeniedException -// (Discontinued) You do not have required permissions to access the requested -// resource. -// -// - InternalException -// (Discontinued) Internal server error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateS3Resources -func (c *Macie) DisassociateS3Resources(input *DisassociateS3ResourcesInput) (*DisassociateS3ResourcesOutput, error) { - req, out := c.DisassociateS3ResourcesRequest(input) - return out, req.Send() -} - -// DisassociateS3ResourcesWithContext is the same as DisassociateS3Resources with the addition of -// the ability to pass a context and additional request options. -// -// See DisassociateS3Resources 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 *Macie) DisassociateS3ResourcesWithContext(ctx aws.Context, input *DisassociateS3ResourcesInput, opts ...request.Option) (*DisassociateS3ResourcesOutput, error) { - req, out := c.DisassociateS3ResourcesRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -const opListMemberAccounts = "ListMemberAccounts" - -// ListMemberAccountsRequest generates a "aws/request.Request" representing the -// client's request for the ListMemberAccounts 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 ListMemberAccounts for more information on using the ListMemberAccounts -// 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 ListMemberAccountsRequest method. -// req, resp := client.ListMemberAccountsRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListMemberAccounts -func (c *Macie) ListMemberAccountsRequest(input *ListMemberAccountsInput) (req *request.Request, output *ListMemberAccountsOutput) { - op := &request.Operation{ - Name: opListMemberAccounts, - HTTPMethod: "POST", - HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "maxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListMemberAccountsInput{} - } - - output = &ListMemberAccountsOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListMemberAccounts API operation for Amazon Macie. -// -// (Discontinued) Lists all Amazon Macie Classic member accounts for the current -// Macie Classic administrator account. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation ListMemberAccounts for usage and error information. -// -// Returned Error Types: -// -// - InternalException -// (Discontinued) Internal server error. -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListMemberAccounts -func (c *Macie) ListMemberAccounts(input *ListMemberAccountsInput) (*ListMemberAccountsOutput, error) { - req, out := c.ListMemberAccountsRequest(input) - return out, req.Send() -} - -// ListMemberAccountsWithContext is the same as ListMemberAccounts with the addition of -// the ability to pass a context and additional request options. -// -// See ListMemberAccounts 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 *Macie) ListMemberAccountsWithContext(ctx aws.Context, input *ListMemberAccountsInput, opts ...request.Option) (*ListMemberAccountsOutput, error) { - req, out := c.ListMemberAccountsRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListMemberAccountsPages iterates over the pages of a ListMemberAccounts operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListMemberAccounts 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 ListMemberAccounts operation. -// pageNum := 0 -// err := client.ListMemberAccountsPages(params, -// func(page *macie.ListMemberAccountsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *Macie) ListMemberAccountsPages(input *ListMemberAccountsInput, fn func(*ListMemberAccountsOutput, bool) bool) error { - return c.ListMemberAccountsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListMemberAccountsPagesWithContext same as ListMemberAccountsPages 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 *Macie) ListMemberAccountsPagesWithContext(ctx aws.Context, input *ListMemberAccountsInput, fn func(*ListMemberAccountsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListMemberAccountsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListMemberAccountsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListMemberAccountsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListS3Resources = "ListS3Resources" - -// ListS3ResourcesRequest generates a "aws/request.Request" representing the -// client's request for the ListS3Resources 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 ListS3Resources for more information on using the ListS3Resources -// 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 ListS3ResourcesRequest method. -// req, resp := client.ListS3ResourcesRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListS3Resources -func (c *Macie) ListS3ResourcesRequest(input *ListS3ResourcesInput) (req *request.Request, output *ListS3ResourcesOutput) { - op := &request.Operation{ - Name: opListS3Resources, - HTTPMethod: "POST", - HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "maxResults", - TruncationToken: "", - }, - } - - if input == nil { - input = &ListS3ResourcesInput{} - } - - output = &ListS3ResourcesOutput{} - req = c.newRequest(op, input, output) - return -} - -// ListS3Resources API operation for Amazon Macie. -// -// (Discontinued) Lists all the S3 resources associated with Amazon Macie Classic. -// If memberAccountId isn't specified, the action lists the S3 resources associated -// with Macie Classic for the current Macie Classic administrator account. If -// memberAccountId is specified, the action lists the S3 resources associated -// with Macie Classic for the specified member account. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation ListS3Resources for usage and error information. -// -// Returned Error Types: -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// - AccessDeniedException -// (Discontinued) You do not have required permissions to access the requested -// resource. -// -// - InternalException -// (Discontinued) Internal server error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListS3Resources -func (c *Macie) ListS3Resources(input *ListS3ResourcesInput) (*ListS3ResourcesOutput, error) { - req, out := c.ListS3ResourcesRequest(input) - return out, req.Send() -} - -// ListS3ResourcesWithContext is the same as ListS3Resources with the addition of -// the ability to pass a context and additional request options. -// -// See ListS3Resources 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 *Macie) ListS3ResourcesWithContext(ctx aws.Context, input *ListS3ResourcesInput, opts ...request.Option) (*ListS3ResourcesOutput, error) { - req, out := c.ListS3ResourcesRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// ListS3ResourcesPages iterates over the pages of a ListS3Resources operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListS3Resources 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 ListS3Resources operation. -// pageNum := 0 -// err := client.ListS3ResourcesPages(params, -// func(page *macie.ListS3ResourcesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *Macie) ListS3ResourcesPages(input *ListS3ResourcesInput, fn func(*ListS3ResourcesOutput, bool) bool) error { - return c.ListS3ResourcesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListS3ResourcesPagesWithContext same as ListS3ResourcesPages 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 *Macie) ListS3ResourcesPagesWithContext(ctx aws.Context, input *ListS3ResourcesInput, fn func(*ListS3ResourcesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListS3ResourcesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListS3ResourcesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListS3ResourcesOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opUpdateS3Resources = "UpdateS3Resources" - -// UpdateS3ResourcesRequest generates a "aws/request.Request" representing the -// client's request for the UpdateS3Resources 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 UpdateS3Resources for more information on using the UpdateS3Resources -// 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 UpdateS3ResourcesRequest method. -// req, resp := client.UpdateS3ResourcesRequest(params) -// -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/UpdateS3Resources -func (c *Macie) UpdateS3ResourcesRequest(input *UpdateS3ResourcesInput) (req *request.Request, output *UpdateS3ResourcesOutput) { - op := &request.Operation{ - Name: opUpdateS3Resources, - HTTPMethod: "POST", - HTTPPath: "/", - } - - if input == nil { - input = &UpdateS3ResourcesInput{} - } - - output = &UpdateS3ResourcesOutput{} - req = c.newRequest(op, input, output) - return -} - -// UpdateS3Resources API operation for Amazon Macie. -// -// (Discontinued) Updates the classification types for the specified S3 resources. -// If memberAccountId isn't specified, the action updates the classification -// types of the S3 resources associated with Amazon Macie Classic for the current -// Macie Classic administrator account. If memberAccountId is specified, the -// action updates the classification types of the S3 resources associated with -// Macie Classic for the specified member account. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Macie's -// API operation UpdateS3Resources for usage and error information. -// -// Returned Error Types: -// -// - InvalidInputException -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -// -// - AccessDeniedException -// (Discontinued) You do not have required permissions to access the requested -// resource. -// -// - InternalException -// (Discontinued) Internal server error. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/UpdateS3Resources -func (c *Macie) UpdateS3Resources(input *UpdateS3ResourcesInput) (*UpdateS3ResourcesOutput, error) { - req, out := c.UpdateS3ResourcesRequest(input) - return out, req.Send() -} - -// UpdateS3ResourcesWithContext is the same as UpdateS3Resources with the addition of -// the ability to pass a context and additional request options. -// -// See UpdateS3Resources 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 *Macie) UpdateS3ResourcesWithContext(ctx aws.Context, input *UpdateS3ResourcesInput, opts ...request.Option) (*UpdateS3ResourcesOutput, error) { - req, out := c.UpdateS3ResourcesRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() -} - -// (Discontinued) You do not have required permissions to access the requested -// resource. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"message" type:"string"` - - // Resource type that caused the exception - ResourceType *string `locationName:"resourceType" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s 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 -} - -type AssociateMemberAccountInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) The ID of the Amazon Web Services account that you want to - // associate with Amazon Macie Classic as a member account. - // - // MemberAccountId is a required field - MemberAccountId *string `locationName:"memberAccountId" 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 AssociateMemberAccountInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AssociateMemberAccountInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *AssociateMemberAccountInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AssociateMemberAccountInput"} - if s.MemberAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("MemberAccountId")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMemberAccountId sets the MemberAccountId field's value. -func (s *AssociateMemberAccountInput) SetMemberAccountId(v string) *AssociateMemberAccountInput { - s.MemberAccountId = &v - return s -} - -type AssociateMemberAccountOutput 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 AssociateMemberAccountOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AssociateMemberAccountOutput) GoString() string { - return s.String() -} - -type AssociateS3ResourcesInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) The ID of the Amazon Macie Classic member account whose resources - // you want to associate with Macie Classic. - MemberAccountId *string `locationName:"memberAccountId" type:"string"` - - // (Discontinued) The S3 resources that you want to associate with Amazon Macie - // Classic for monitoring and data classification. - // - // S3Resources is a required field - S3Resources []*S3ResourceClassification `locationName:"s3Resources" 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 AssociateS3ResourcesInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AssociateS3ResourcesInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *AssociateS3ResourcesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AssociateS3ResourcesInput"} - if s.S3Resources == nil { - invalidParams.Add(request.NewErrParamRequired("S3Resources")) - } - if s.S3Resources != nil { - for i, v := range s.S3Resources { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3Resources", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMemberAccountId sets the MemberAccountId field's value. -func (s *AssociateS3ResourcesInput) SetMemberAccountId(v string) *AssociateS3ResourcesInput { - s.MemberAccountId = &v - return s -} - -// SetS3Resources sets the S3Resources field's value. -func (s *AssociateS3ResourcesInput) SetS3Resources(v []*S3ResourceClassification) *AssociateS3ResourcesInput { - s.S3Resources = v - return s -} - -type AssociateS3ResourcesOutput struct { - _ struct{} `type:"structure"` - - // (Discontinued) S3 resources that couldn't be associated with Amazon Macie - // Classic. An error code and an error message are provided for each failed - // item. - FailedS3Resources []*FailedS3Resource `locationName:"failedS3Resources" 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 AssociateS3ResourcesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AssociateS3ResourcesOutput) GoString() string { - return s.String() -} - -// SetFailedS3Resources sets the FailedS3Resources field's value. -func (s *AssociateS3ResourcesOutput) SetFailedS3Resources(v []*FailedS3Resource) *AssociateS3ResourcesOutput { - s.FailedS3Resources = v - return s -} - -// (Discontinued) The classification type that Amazon Macie Classic applies -// to the associated S3 resources. -type ClassificationType struct { - _ struct{} `type:"structure"` - - // (Discontinued) A continuous classification of the objects that are added - // to a specified S3 bucket. Amazon Macie Classic begins performing continuous - // classification after a bucket is successfully associated with Macie Classic. - // - // Continuous is a required field - Continuous *string `locationName:"continuous" type:"string" required:"true" enum:"S3ContinuousClassificationType"` - - // (Discontinued) A one-time classification of all of the existing objects in - // a specified S3 bucket. - // - // OneTime is a required field - OneTime *string `locationName:"oneTime" type:"string" required:"true" enum:"S3OneTimeClassificationType"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ClassificationType) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ClassificationType) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ClassificationType) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ClassificationType"} - if s.Continuous == nil { - invalidParams.Add(request.NewErrParamRequired("Continuous")) - } - if s.OneTime == nil { - invalidParams.Add(request.NewErrParamRequired("OneTime")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetContinuous sets the Continuous field's value. -func (s *ClassificationType) SetContinuous(v string) *ClassificationType { - s.Continuous = &v - return s -} - -// SetOneTime sets the OneTime field's value. -func (s *ClassificationType) SetOneTime(v string) *ClassificationType { - s.OneTime = &v - return s -} - -// (Discontinued) The classification type that Amazon Macie Classic applies -// to the associated S3 resources. At least one of the classification types -// (oneTime or continuous) must be specified. -type ClassificationTypeUpdate struct { - _ struct{} `type:"structure"` - - // (Discontinued) A continuous classification of the objects that are added - // to a specified S3 bucket. Amazon Macie Classic begins performing continuous - // classification after a bucket is successfully associated with Macie Classic. - Continuous *string `locationName:"continuous" type:"string" enum:"S3ContinuousClassificationType"` - - // (Discontinued) A one-time classification of all of the existing objects in - // a specified S3 bucket. - OneTime *string `locationName:"oneTime" type:"string" enum:"S3OneTimeClassificationType"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ClassificationTypeUpdate) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ClassificationTypeUpdate) GoString() string { - return s.String() -} - -// SetContinuous sets the Continuous field's value. -func (s *ClassificationTypeUpdate) SetContinuous(v string) *ClassificationTypeUpdate { - s.Continuous = &v - return s -} - -// SetOneTime sets the OneTime field's value. -func (s *ClassificationTypeUpdate) SetOneTime(v string) *ClassificationTypeUpdate { - s.OneTime = &v - return s -} - -type DisassociateMemberAccountInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) The ID of the member account that you want to remove from - // Amazon Macie Classic. - // - // MemberAccountId is a required field - MemberAccountId *string `locationName:"memberAccountId" 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 DisassociateMemberAccountInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateMemberAccountInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateMemberAccountInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateMemberAccountInput"} - if s.MemberAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("MemberAccountId")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMemberAccountId sets the MemberAccountId field's value. -func (s *DisassociateMemberAccountInput) SetMemberAccountId(v string) *DisassociateMemberAccountInput { - s.MemberAccountId = &v - return s -} - -type DisassociateMemberAccountOutput 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 DisassociateMemberAccountOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateMemberAccountOutput) GoString() string { - return s.String() -} - -type DisassociateS3ResourcesInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) The S3 resources (buckets or prefixes) that you want to remove - // from being monitored and classified by Amazon Macie Classic. - // - // AssociatedS3Resources is a required field - AssociatedS3Resources []*S3Resource `locationName:"associatedS3Resources" type:"list" required:"true"` - - // (Discontinued) The ID of the Amazon Macie Classic member account whose resources - // you want to remove from being monitored by Macie Classic. - MemberAccountId *string `locationName:"memberAccountId" 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 DisassociateS3ResourcesInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateS3ResourcesInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateS3ResourcesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateS3ResourcesInput"} - if s.AssociatedS3Resources == nil { - invalidParams.Add(request.NewErrParamRequired("AssociatedS3Resources")) - } - if s.AssociatedS3Resources != nil { - for i, v := range s.AssociatedS3Resources { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssociatedS3Resources", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetAssociatedS3Resources sets the AssociatedS3Resources field's value. -func (s *DisassociateS3ResourcesInput) SetAssociatedS3Resources(v []*S3Resource) *DisassociateS3ResourcesInput { - s.AssociatedS3Resources = v - return s -} - -// SetMemberAccountId sets the MemberAccountId field's value. -func (s *DisassociateS3ResourcesInput) SetMemberAccountId(v string) *DisassociateS3ResourcesInput { - s.MemberAccountId = &v - return s -} - -type DisassociateS3ResourcesOutput struct { - _ struct{} `type:"structure"` - - // (Discontinued) S3 resources that couldn't be removed from being monitored - // and classified by Amazon Macie Classic. An error code and an error message - // are provided for each failed item. - FailedS3Resources []*FailedS3Resource `locationName:"failedS3Resources" 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 DisassociateS3ResourcesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateS3ResourcesOutput) GoString() string { - return s.String() -} - -// SetFailedS3Resources sets the FailedS3Resources field's value. -func (s *DisassociateS3ResourcesOutput) SetFailedS3Resources(v []*FailedS3Resource) *DisassociateS3ResourcesOutput { - s.FailedS3Resources = v - return s -} - -// (Discontinued) Includes details about the failed S3 resources. -type FailedS3Resource struct { - _ struct{} `type:"structure"` - - // (Discontinued) The status code of a failed item. - ErrorCode *string `locationName:"errorCode" type:"string"` - - // (Discontinued) The error message of a failed item. - ErrorMessage *string `locationName:"errorMessage" type:"string"` - - // (Discontinued) The failed S3 resources. - FailedItem *S3Resource `locationName:"failedItem" 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 FailedS3Resource) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s FailedS3Resource) GoString() string { - return s.String() -} - -// SetErrorCode sets the ErrorCode field's value. -func (s *FailedS3Resource) SetErrorCode(v string) *FailedS3Resource { - s.ErrorCode = &v - return s -} - -// SetErrorMessage sets the ErrorMessage field's value. -func (s *FailedS3Resource) SetErrorMessage(v string) *FailedS3Resource { - s.ErrorMessage = &v - return s -} - -// SetFailedItem sets the FailedItem field's value. -func (s *FailedS3Resource) SetFailedItem(v *S3Resource) *FailedS3Resource { - s.FailedItem = v - return s -} - -// (Discontinued) Internal server error. -type InternalException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Error code for the exception - ErrorCode *string `locationName:"errorCode" 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 InternalException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s InternalException) GoString() string { - return s.String() -} - -func newErrorInternalException(v protocol.ResponseMetadata) error { - return &InternalException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *InternalException) Code() string { - return "InternalException" -} - -// Message returns the exception's message. -func (s *InternalException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InternalException) OrigErr() error { - return nil -} - -func (s *InternalException) 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 *InternalException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *InternalException) RequestID() string { - return s.RespMetadata.RequestID -} - -// (Discontinued) The request was rejected because an invalid or out-of-range -// value was supplied for an input parameter. -type InvalidInputException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Error code for the exception - ErrorCode *string `locationName:"errorCode" type:"string"` - - // Field that has invalid input - FieldName *string `locationName:"fieldName" 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 InvalidInputException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s InvalidInputException) GoString() string { - return s.String() -} - -func newErrorInvalidInputException(v protocol.ResponseMetadata) error { - return &InvalidInputException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *InvalidInputException) Code() string { - return "InvalidInputException" -} - -// Message returns the exception's message. -func (s *InvalidInputException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidInputException) OrigErr() error { - return nil -} - -func (s *InvalidInputException) 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 *InvalidInputException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *InvalidInputException) RequestID() string { - return s.RespMetadata.RequestID -} - -// (Discontinued) The request was rejected because it attempted to create resources -// beyond the current Amazon Web Services account quotas. The error code describes -// the quota exceeded. -type LimitExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Error code for the exception - ErrorCode *string `locationName:"errorCode" type:"string"` - - Message_ *string `locationName:"message" type:"string"` - - // Resource type that caused the exception - ResourceType *string `locationName:"resourceType" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s LimitExceededException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s LimitExceededException) GoString() string { - return s.String() -} - -func newErrorLimitExceededException(v protocol.ResponseMetadata) error { - return &LimitExceededException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *LimitExceededException) Code() string { - return "LimitExceededException" -} - -// Message returns the exception's message. -func (s *LimitExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *LimitExceededException) OrigErr() error { - return nil -} - -func (s *LimitExceededException) 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 *LimitExceededException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *LimitExceededException) RequestID() string { - return s.RespMetadata.RequestID -} - -type ListMemberAccountsInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) Use this parameter to indicate the maximum number of items - // that you want in the response. The default value is 250. - MaxResults *int64 `locationName:"maxResults" type:"integer"` - - // (Discontinued) Use this parameter when paginating results. Set the value - // of this parameter to null on your first call to the ListMemberAccounts action. - // Subsequent calls to the action fill nextToken in the request with the value - // of nextToken from the previous response to continue listing data. - NextToken *string `locationName:"nextToken" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListMemberAccountsInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListMemberAccountsInput) GoString() string { - return s.String() -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListMemberAccountsInput) SetMaxResults(v int64) *ListMemberAccountsInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListMemberAccountsInput) SetNextToken(v string) *ListMemberAccountsInput { - s.NextToken = &v - return s -} - -type ListMemberAccountsOutput struct { - _ struct{} `type:"structure"` - - // (Discontinued) A list of the Amazon Macie Classic member accounts returned - // by the action. The current Macie Classic administrator account is also included - // in this list. - MemberAccounts []*MemberAccount `locationName:"memberAccounts" type:"list"` - - // (Discontinued) When a response is generated, if there is more data to be - // listed, this parameter is present in the response and contains the value - // to use for the nextToken parameter in a subsequent pagination request. If - // there is no more data to be listed, this parameter is set to null. - 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 ListMemberAccountsOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListMemberAccountsOutput) GoString() string { - return s.String() -} - -// SetMemberAccounts sets the MemberAccounts field's value. -func (s *ListMemberAccountsOutput) SetMemberAccounts(v []*MemberAccount) *ListMemberAccountsOutput { - s.MemberAccounts = v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListMemberAccountsOutput) SetNextToken(v string) *ListMemberAccountsOutput { - s.NextToken = &v - return s -} - -type ListS3ResourcesInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) Use this parameter to indicate the maximum number of items - // that you want in the response. The default value is 250. - MaxResults *int64 `locationName:"maxResults" type:"integer"` - - // (Discontinued) The Amazon Macie Classic member account ID whose associated - // S3 resources you want to list. - MemberAccountId *string `locationName:"memberAccountId" type:"string"` - - // (Discontinued) Use this parameter when paginating results. Set its value - // to null on your first call to the ListS3Resources action. Subsequent calls - // to the action fill nextToken in the request with the value of nextToken from - // the previous response to continue listing data. - NextToken *string `locationName:"nextToken" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListS3ResourcesInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListS3ResourcesInput) GoString() string { - return s.String() -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListS3ResourcesInput) SetMaxResults(v int64) *ListS3ResourcesInput { - s.MaxResults = &v - return s -} - -// SetMemberAccountId sets the MemberAccountId field's value. -func (s *ListS3ResourcesInput) SetMemberAccountId(v string) *ListS3ResourcesInput { - s.MemberAccountId = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListS3ResourcesInput) SetNextToken(v string) *ListS3ResourcesInput { - s.NextToken = &v - return s -} - -type ListS3ResourcesOutput struct { - _ struct{} `type:"structure"` - - // (Discontinued) When a response is generated, if there is more data to be - // listed, this parameter is present in the response and contains the value - // to use for the nextToken parameter in a subsequent pagination request. If - // there is no more data to be listed, this parameter is set to null. - NextToken *string `locationName:"nextToken" type:"string"` - - // (Discontinued) A list of the associated S3 resources returned by the action. - S3Resources []*S3ResourceClassification `locationName:"s3Resources" 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 ListS3ResourcesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListS3ResourcesOutput) GoString() string { - return s.String() -} - -// SetNextToken sets the NextToken field's value. -func (s *ListS3ResourcesOutput) SetNextToken(v string) *ListS3ResourcesOutput { - s.NextToken = &v - return s -} - -// SetS3Resources sets the S3Resources field's value. -func (s *ListS3ResourcesOutput) SetS3Resources(v []*S3ResourceClassification) *ListS3ResourcesOutput { - s.S3Resources = v - return s -} - -// (Discontinued) Contains information about the Amazon Macie Classic member -// account. -type MemberAccount struct { - _ struct{} `type:"structure"` - - // (Discontinued) The Amazon Web Services account ID of the Amazon Macie Classic - // member account. - AccountId *string `locationName:"accountId" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s MemberAccount) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s MemberAccount) GoString() string { - return s.String() -} - -// SetAccountId sets the AccountId field's value. -func (s *MemberAccount) SetAccountId(v string) *MemberAccount { - s.AccountId = &v - return s -} - -// (Discontinued) Contains information about the S3 resource. This data type -// is used as a request parameter in the DisassociateS3Resources action and -// can be used as a response parameter in the AssociateS3Resources and UpdateS3Resources -// actions. -type S3Resource struct { - _ struct{} `type:"structure"` - - // (Discontinued) The name of the S3 bucket. - // - // BucketName is a required field - BucketName *string `locationName:"bucketName" type:"string" required:"true"` - - // (Discontinued) The prefix of the S3 bucket. - Prefix *string `locationName:"prefix" 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 S3Resource) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s S3Resource) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *S3Resource) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "S3Resource"} - if s.BucketName == nil { - invalidParams.Add(request.NewErrParamRequired("BucketName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetBucketName sets the BucketName field's value. -func (s *S3Resource) SetBucketName(v string) *S3Resource { - s.BucketName = &v - return s -} - -// SetPrefix sets the Prefix field's value. -func (s *S3Resource) SetPrefix(v string) *S3Resource { - s.Prefix = &v - return s -} - -// (Discontinued) The S3 resources that you want to associate with Amazon Macie -// Classic for monitoring and data classification. This data type is used as -// a request parameter in the AssociateS3Resources action and a response parameter -// in the ListS3Resources action. -type S3ResourceClassification struct { - _ struct{} `type:"structure"` - - // (Discontinued) The name of the S3 bucket that you want to associate with - // Amazon Macie Classic. - // - // BucketName is a required field - BucketName *string `locationName:"bucketName" type:"string" required:"true"` - - // (Discontinued) The classification type that you want to specify for the resource - // associated with Amazon Macie Classic. - // - // ClassificationType is a required field - ClassificationType *ClassificationType `locationName:"classificationType" type:"structure" required:"true"` - - // (Discontinued) The prefix of the S3 bucket that you want to associate with - // Amazon Macie Classic. - Prefix *string `locationName:"prefix" 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 S3ResourceClassification) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s S3ResourceClassification) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *S3ResourceClassification) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "S3ResourceClassification"} - if s.BucketName == nil { - invalidParams.Add(request.NewErrParamRequired("BucketName")) - } - if s.ClassificationType == nil { - invalidParams.Add(request.NewErrParamRequired("ClassificationType")) - } - if s.ClassificationType != nil { - if err := s.ClassificationType.Validate(); err != nil { - invalidParams.AddNested("ClassificationType", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetBucketName sets the BucketName field's value. -func (s *S3ResourceClassification) SetBucketName(v string) *S3ResourceClassification { - s.BucketName = &v - return s -} - -// SetClassificationType sets the ClassificationType field's value. -func (s *S3ResourceClassification) SetClassificationType(v *ClassificationType) *S3ResourceClassification { - s.ClassificationType = v - return s -} - -// SetPrefix sets the Prefix field's value. -func (s *S3ResourceClassification) SetPrefix(v string) *S3ResourceClassification { - s.Prefix = &v - return s -} - -// (Discontinued) The S3 resources whose classification types you want to update. -// This data type is used as a request parameter in the UpdateS3Resources action. -type S3ResourceClassificationUpdate struct { - _ struct{} `type:"structure"` - - // (Discontinued) The name of the S3 bucket whose classification types you want - // to update. - // - // BucketName is a required field - BucketName *string `locationName:"bucketName" type:"string" required:"true"` - - // (Discontinued) The classification type that you want to update for the resource - // associated with Amazon Macie Classic. - // - // ClassificationTypeUpdate is a required field - ClassificationTypeUpdate *ClassificationTypeUpdate `locationName:"classificationTypeUpdate" type:"structure" required:"true"` - - // (Discontinued) The prefix of the S3 bucket whose classification types you - // want to update. - Prefix *string `locationName:"prefix" 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 S3ResourceClassificationUpdate) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s S3ResourceClassificationUpdate) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *S3ResourceClassificationUpdate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "S3ResourceClassificationUpdate"} - if s.BucketName == nil { - invalidParams.Add(request.NewErrParamRequired("BucketName")) - } - if s.ClassificationTypeUpdate == nil { - invalidParams.Add(request.NewErrParamRequired("ClassificationTypeUpdate")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetBucketName sets the BucketName field's value. -func (s *S3ResourceClassificationUpdate) SetBucketName(v string) *S3ResourceClassificationUpdate { - s.BucketName = &v - return s -} - -// SetClassificationTypeUpdate sets the ClassificationTypeUpdate field's value. -func (s *S3ResourceClassificationUpdate) SetClassificationTypeUpdate(v *ClassificationTypeUpdate) *S3ResourceClassificationUpdate { - s.ClassificationTypeUpdate = v - return s -} - -// SetPrefix sets the Prefix field's value. -func (s *S3ResourceClassificationUpdate) SetPrefix(v string) *S3ResourceClassificationUpdate { - s.Prefix = &v - return s -} - -type UpdateS3ResourcesInput struct { - _ struct{} `type:"structure"` - - // (Discontinued) The Amazon Web Services account ID of the Amazon Macie Classic - // member account whose S3 resources' classification types you want to update. - MemberAccountId *string `locationName:"memberAccountId" type:"string"` - - // (Discontinued) The S3 resources whose classification types you want to update. - // - // S3ResourcesUpdate is a required field - S3ResourcesUpdate []*S3ResourceClassificationUpdate `locationName:"s3ResourcesUpdate" 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 UpdateS3ResourcesInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateS3ResourcesInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateS3ResourcesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateS3ResourcesInput"} - if s.S3ResourcesUpdate == nil { - invalidParams.Add(request.NewErrParamRequired("S3ResourcesUpdate")) - } - if s.S3ResourcesUpdate != nil { - for i, v := range s.S3ResourcesUpdate { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3ResourcesUpdate", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMemberAccountId sets the MemberAccountId field's value. -func (s *UpdateS3ResourcesInput) SetMemberAccountId(v string) *UpdateS3ResourcesInput { - s.MemberAccountId = &v - return s -} - -// SetS3ResourcesUpdate sets the S3ResourcesUpdate field's value. -func (s *UpdateS3ResourcesInput) SetS3ResourcesUpdate(v []*S3ResourceClassificationUpdate) *UpdateS3ResourcesInput { - s.S3ResourcesUpdate = v - return s -} - -type UpdateS3ResourcesOutput struct { - _ struct{} `type:"structure"` - - // (Discontinued) The S3 resources whose classification types can't be updated. - // An error code and an error message are provided for each failed item. - FailedS3Resources []*FailedS3Resource `locationName:"failedS3Resources" 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 UpdateS3ResourcesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateS3ResourcesOutput) GoString() string { - return s.String() -} - -// SetFailedS3Resources sets the FailedS3Resources field's value. -func (s *UpdateS3ResourcesOutput) SetFailedS3Resources(v []*FailedS3Resource) *UpdateS3ResourcesOutput { - s.FailedS3Resources = v - return s -} - -const ( - // S3ContinuousClassificationTypeFull is a S3ContinuousClassificationType enum value - S3ContinuousClassificationTypeFull = "FULL" -) - -// S3ContinuousClassificationType_Values returns all elements of the S3ContinuousClassificationType enum -func S3ContinuousClassificationType_Values() []string { - return []string{ - S3ContinuousClassificationTypeFull, - } -} - -const ( - // S3OneTimeClassificationTypeFull is a S3OneTimeClassificationType enum value - S3OneTimeClassificationTypeFull = "FULL" - - // S3OneTimeClassificationTypeNone is a S3OneTimeClassificationType enum value - S3OneTimeClassificationTypeNone = "NONE" -) - -// S3OneTimeClassificationType_Values returns all elements of the S3OneTimeClassificationType enum -func S3OneTimeClassificationType_Values() []string { - return []string{ - S3OneTimeClassificationTypeFull, - S3OneTimeClassificationTypeNone, - } -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/macie/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/macie/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/macie/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/macie/doc.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,35 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -// Package macie provides the client and types for making API -// requests to Amazon Macie. -// -// Amazon Macie Classic has been discontinued and is no longer available. -// -// A new Amazon Macie is now available with significant design improvements -// and additional features, at a lower price and in most Amazon Web Services -// Regions. We encourage you to take advantage of the new and improved features, -// and benefit from the reduced cost. To learn about features and pricing for -// the new Macie, see Amazon Macie (http://aws.amazon.com/macie/). To learn -// how to use the new Macie, see the Amazon Macie User Guide (https://docs.aws.amazon.com/macie/latest/user/what-is-macie.html). -// -// See https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19 for more information on this service. -// -// See macie package documentation for more information. -// https://docs.aws.amazon.com/sdk-for-go/api/service/macie/ -// -// # Using the Client -// -// To contact Amazon Macie 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 Amazon Macie client Macie for more -// information on creating client for this service. -// https://docs.aws.amazon.com/sdk-for-go/api/service/macie/#New -package macie diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/macie/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/macie/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/macie/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/macie/errors.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -package macie - -import ( - "github.com/aws/aws-sdk-go/private/protocol" -) - -const ( - - // ErrCodeAccessDeniedException for service response error code - // "AccessDeniedException". - // - // (Discontinued) You do not have required permissions to access the requested - // resource. - ErrCodeAccessDeniedException = "AccessDeniedException" - - // ErrCodeInternalException for service response error code - // "InternalException". - // - // (Discontinued) Internal server error. - ErrCodeInternalException = "InternalException" - - // ErrCodeInvalidInputException for service response error code - // "InvalidInputException". - // - // (Discontinued) The request was rejected because an invalid or out-of-range - // value was supplied for an input parameter. - ErrCodeInvalidInputException = "InvalidInputException" - - // ErrCodeLimitExceededException for service response error code - // "LimitExceededException". - // - // (Discontinued) The request was rejected because it attempted to create resources - // beyond the current Amazon Web Services account quotas. The error code describes - // the quota exceeded. - ErrCodeLimitExceededException = "LimitExceededException" -) - -var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ - "AccessDeniedException": newErrorAccessDeniedException, - "InternalException": newErrorInternalException, - "InvalidInputException": newErrorInvalidInputException, - "LimitExceededException": newErrorLimitExceededException, -} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/macie/macieiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/macie/macieiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/macie/macieiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/macie/macieiface/interface.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,98 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -// Package macieiface provides an interface to enable mocking the Amazon Macie 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 macieiface - -import ( - "github.com/aws/aws-sdk-go/aws" - "github.com/aws/aws-sdk-go/aws/request" - "github.com/aws/aws-sdk-go/service/macie" -) - -// MacieAPI provides an interface to enable mocking the -// macie.Macie 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 -// // Amazon Macie. -// func myFunc(svc macieiface.MacieAPI) bool { -// // Make svc.AssociateMemberAccount request -// } -// -// func main() { -// sess := session.New() -// svc := macie.New(sess) -// -// myFunc(svc) -// } -// -// In your _test.go file: -// -// // Define a mock struct to be used in your unit tests of myFunc. -// type mockMacieClient struct { -// macieiface.MacieAPI -// } -// func (m *mockMacieClient) AssociateMemberAccount(input *macie.AssociateMemberAccountInput) (*macie.AssociateMemberAccountOutput, error) { -// // mock response/functionality -// } -// -// func TestMyFunc(t *testing.T) { -// // Setup Test -// mockSvc := &mockMacieClient{} -// -// 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 MacieAPI interface { - AssociateMemberAccount(*macie.AssociateMemberAccountInput) (*macie.AssociateMemberAccountOutput, error) - AssociateMemberAccountWithContext(aws.Context, *macie.AssociateMemberAccountInput, ...request.Option) (*macie.AssociateMemberAccountOutput, error) - AssociateMemberAccountRequest(*macie.AssociateMemberAccountInput) (*request.Request, *macie.AssociateMemberAccountOutput) - - AssociateS3Resources(*macie.AssociateS3ResourcesInput) (*macie.AssociateS3ResourcesOutput, error) - AssociateS3ResourcesWithContext(aws.Context, *macie.AssociateS3ResourcesInput, ...request.Option) (*macie.AssociateS3ResourcesOutput, error) - AssociateS3ResourcesRequest(*macie.AssociateS3ResourcesInput) (*request.Request, *macie.AssociateS3ResourcesOutput) - - DisassociateMemberAccount(*macie.DisassociateMemberAccountInput) (*macie.DisassociateMemberAccountOutput, error) - DisassociateMemberAccountWithContext(aws.Context, *macie.DisassociateMemberAccountInput, ...request.Option) (*macie.DisassociateMemberAccountOutput, error) - DisassociateMemberAccountRequest(*macie.DisassociateMemberAccountInput) (*request.Request, *macie.DisassociateMemberAccountOutput) - - DisassociateS3Resources(*macie.DisassociateS3ResourcesInput) (*macie.DisassociateS3ResourcesOutput, error) - DisassociateS3ResourcesWithContext(aws.Context, *macie.DisassociateS3ResourcesInput, ...request.Option) (*macie.DisassociateS3ResourcesOutput, error) - DisassociateS3ResourcesRequest(*macie.DisassociateS3ResourcesInput) (*request.Request, *macie.DisassociateS3ResourcesOutput) - - ListMemberAccounts(*macie.ListMemberAccountsInput) (*macie.ListMemberAccountsOutput, error) - ListMemberAccountsWithContext(aws.Context, *macie.ListMemberAccountsInput, ...request.Option) (*macie.ListMemberAccountsOutput, error) - ListMemberAccountsRequest(*macie.ListMemberAccountsInput) (*request.Request, *macie.ListMemberAccountsOutput) - - ListMemberAccountsPages(*macie.ListMemberAccountsInput, func(*macie.ListMemberAccountsOutput, bool) bool) error - ListMemberAccountsPagesWithContext(aws.Context, *macie.ListMemberAccountsInput, func(*macie.ListMemberAccountsOutput, bool) bool, ...request.Option) error - - ListS3Resources(*macie.ListS3ResourcesInput) (*macie.ListS3ResourcesOutput, error) - ListS3ResourcesWithContext(aws.Context, *macie.ListS3ResourcesInput, ...request.Option) (*macie.ListS3ResourcesOutput, error) - ListS3ResourcesRequest(*macie.ListS3ResourcesInput) (*request.Request, *macie.ListS3ResourcesOutput) - - ListS3ResourcesPages(*macie.ListS3ResourcesInput, func(*macie.ListS3ResourcesOutput, bool) bool) error - ListS3ResourcesPagesWithContext(aws.Context, *macie.ListS3ResourcesInput, func(*macie.ListS3ResourcesOutput, bool) bool, ...request.Option) error - - UpdateS3Resources(*macie.UpdateS3ResourcesInput) (*macie.UpdateS3ResourcesOutput, error) - UpdateS3ResourcesWithContext(aws.Context, *macie.UpdateS3ResourcesInput, ...request.Option) (*macie.UpdateS3ResourcesOutput, error) - UpdateS3ResourcesRequest(*macie.UpdateS3ResourcesInput) (*request.Request, *macie.UpdateS3ResourcesOutput) -} - -var _ MacieAPI = (*macie.Macie)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/macie/service.go golang-github-aws-aws-sdk-go-1.48.14/service/macie/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/macie/service.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/macie/service.go 1970-01-01 00:00:00.000000000 +0000 @@ -1,109 +0,0 @@ -// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. - -package macie - -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" -) - -// Macie provides the API operation methods for making requests to -// Amazon Macie. See this package's package overview docs -// for details on the service. -// -// Macie methods are safe to use concurrently. It is not safe to -// modify mutate any of the struct's properties though. -type Macie 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 = "Macie" // Name of service. - EndpointsID = "macie" // ID to lookup a service endpoint with. - ServiceID = "Macie" // ServiceID is a unique identifier of a specific service. -) - -// New creates a new instance of the Macie 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 Macie client from just a session. -// svc := macie.New(mySession) -// -// // Create a Macie client with additional configuration -// svc := macie.New(mySession, aws.NewConfig().WithRegion("us-west-2")) -func New(p client.ConfigProvider, cfgs ...*aws.Config) *Macie { - c := p.ClientConfig(EndpointsID, cfgs...) - if c.SigningNameDerived || len(c.SigningName) == 0 { - c.SigningName = EndpointsID - // No Fallback - } - 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) *Macie { - svc := &Macie{ - Client: client.New( - cfg, - metadata.ClientInfo{ - ServiceName: ServiceName, - ServiceID: ServiceID, - SigningName: signingName, - SigningRegion: signingRegion, - PartitionID: partitionID, - Endpoint: endpoint, - APIVersion: "2017-12-19", - ResolvedRegion: resolvedRegion, - JSONVersion: "1.1", - TargetPrefix: "MacieService", - }, - 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 Macie operation and runs any -// custom request initialization. -func (c *Macie) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/macie2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/macie2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/macie2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/macie2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -16090,13 +16090,16 @@ type GetRevealConfigurationOutput struct { _ struct{} `type:"structure"` - // Specifies the configuration settings for retrieving occurrences of sensitive - // data reported by findings, and the status of the configuration for an Amazon - // Macie account. When you enable the configuration for the first time, your - // request must specify an Key Management Service (KMS) key. Otherwise, an error - // occurs. Macie uses the specified key to encrypt the sensitive data that you - // retrieve. + // Specifies the status of the Amazon Macie configuration for retrieving occurrences + // of sensitive data reported by findings, and the Key Management Service (KMS) + // key to use to encrypt sensitive data that's retrieved. When you enable the + // configuration for the first time, your request must specify an KMS key. Otherwise, + // an error occurs. Configuration *RevealConfiguration `locationName:"configuration" type:"structure"` + + // Provides information about the access method and settings that are used to + // retrieve occurrences of sensitive data reported by findings. + RetrievalConfiguration *RetrievalConfiguration `locationName:"retrievalConfiguration" type:"structure"` } // String returns the string representation. @@ -16123,6 +16126,12 @@ return s } +// SetRetrievalConfiguration sets the RetrievalConfiguration field's value. +func (s *GetRevealConfigurationOutput) SetRetrievalConfiguration(v *RetrievalConfiguration) *GetRevealConfigurationOutput { + s.RetrievalConfiguration = v + return s +} + type GetSensitiveDataOccurrencesAvailabilityInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -20095,12 +20104,63 @@ return s } -// Specifies the configuration settings for retrieving occurrences of sensitive -// data reported by findings, and the status of the configuration for an Amazon -// Macie account. When you enable the configuration for the first time, your -// request must specify an Key Management Service (KMS) key. Otherwise, an error -// occurs. Macie uses the specified key to encrypt the sensitive data that you -// retrieve. +// Provides information about the access method and settings that are used to +// retrieve occurrences of sensitive data reported by findings. +type RetrievalConfiguration struct { + _ struct{} `type:"structure"` + + ExternalId *string `locationName:"externalId" type:"string"` + + // The access method to use when retrieving occurrences of sensitive data reported + // by findings. Valid values are: + // + // RetrievalMode is a required field + RetrievalMode *string `locationName:"retrievalMode" type:"string" required:"true" enum:"RetrievalMode"` + + RoleName *string `locationName:"roleName" 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 RetrievalConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrievalConfiguration) GoString() string { + return s.String() +} + +// SetExternalId sets the ExternalId field's value. +func (s *RetrievalConfiguration) SetExternalId(v string) *RetrievalConfiguration { + s.ExternalId = &v + return s +} + +// SetRetrievalMode sets the RetrievalMode field's value. +func (s *RetrievalConfiguration) SetRetrievalMode(v string) *RetrievalConfiguration { + s.RetrievalMode = &v + return s +} + +// SetRoleName sets the RoleName field's value. +func (s *RetrievalConfiguration) SetRoleName(v string) *RetrievalConfiguration { + s.RoleName = &v + return s +} + +// Specifies the status of the Amazon Macie configuration for retrieving occurrences +// of sensitive data reported by findings, and the Key Management Service (KMS) +// key to use to encrypt sensitive data that's retrieved. When you enable the +// configuration for the first time, your request must specify an KMS key. Otherwise, +// an error occurs. type RevealConfiguration struct { _ struct{} `type:"structure"` @@ -23839,21 +23899,101 @@ return s.String() } -// Specifies the configuration settings for retrieving occurrences of sensitive +// Specifies the access method and settings to use when retrieving occurrences +// of sensitive data reported by findings. If your request specifies an Identity +// and Access Management (IAM) role to assume when retrieving the sensitive +// data, Amazon Macie verifies that the role exists and the attached policies +// are configured correctly. If there's an issue, Macie returns an error. For +// information about addressing the issue, see Retrieving sensitive data samples +// with findings (https://docs.aws.amazon.com/macie/latest/user/findings-retrieve-sd.html) +// in the Amazon Macie User Guide. +type UpdateRetrievalConfiguration struct { + _ struct{} `type:"structure"` + + // The access method to use when retrieving occurrences of sensitive data reported + // by findings. Valid values are: + // + // RetrievalMode is a required field + RetrievalMode *string `locationName:"retrievalMode" type:"string" required:"true" enum:"RetrievalMode"` + + RoleName *string `locationName:"roleName" 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 UpdateRetrievalConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRetrievalConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRetrievalConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRetrievalConfiguration"} + if s.RetrievalMode == nil { + invalidParams.Add(request.NewErrParamRequired("RetrievalMode")) + } + if s.RoleName != nil && len(*s.RoleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRetrievalMode sets the RetrievalMode field's value. +func (s *UpdateRetrievalConfiguration) SetRetrievalMode(v string) *UpdateRetrievalConfiguration { + s.RetrievalMode = &v + return s +} + +// SetRoleName sets the RoleName field's value. +func (s *UpdateRetrievalConfiguration) SetRoleName(v string) *UpdateRetrievalConfiguration { + s.RoleName = &v + return s +} + +// Specifies configuration settings for retrieving occurrences of sensitive // data reported by findings, and the status of the configuration for an Amazon -// Macie account. +// Macie account. If you don't specify retrievalConfiguration values for an +// existing configuration, Macie sets the access method to CALLER_CREDENTIALS. +// If your current access method is ASSUME_ROLE, Macie also deletes the external +// ID and role name currently specified for the configuration. To keep these +// settings for an existing configuration, specify the current retrievalConfiguration +// values in your request. type UpdateRevealConfigurationInput struct { _ struct{} `type:"structure"` - // Specifies the configuration settings for retrieving occurrences of sensitive - // data reported by findings, and the status of the configuration for an Amazon - // Macie account. When you enable the configuration for the first time, your - // request must specify an Key Management Service (KMS) key. Otherwise, an error - // occurs. Macie uses the specified key to encrypt the sensitive data that you - // retrieve. + // Specifies the status of the Amazon Macie configuration for retrieving occurrences + // of sensitive data reported by findings, and the Key Management Service (KMS) + // key to use to encrypt sensitive data that's retrieved. When you enable the + // configuration for the first time, your request must specify an KMS key. Otherwise, + // an error occurs. // // Configuration is a required field Configuration *RevealConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Specifies the access method and settings to use when retrieving occurrences + // of sensitive data reported by findings. If your request specifies an Identity + // and Access Management (IAM) role to assume when retrieving the sensitive + // data, Amazon Macie verifies that the role exists and the attached policies + // are configured correctly. If there's an issue, Macie returns an error. For + // information about addressing the issue, see Retrieving sensitive data samples + // with findings (https://docs.aws.amazon.com/macie/latest/user/findings-retrieve-sd.html) + // in the Amazon Macie User Guide. + RetrievalConfiguration *UpdateRetrievalConfiguration `locationName:"retrievalConfiguration" type:"structure"` } // String returns the string representation. @@ -23885,6 +24025,11 @@ invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) } } + if s.RetrievalConfiguration != nil { + if err := s.RetrievalConfiguration.Validate(); err != nil { + invalidParams.AddNested("RetrievalConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -23898,19 +24043,28 @@ return s } +// SetRetrievalConfiguration sets the RetrievalConfiguration field's value. +func (s *UpdateRevealConfigurationInput) SetRetrievalConfiguration(v *UpdateRetrievalConfiguration) *UpdateRevealConfigurationInput { + s.RetrievalConfiguration = v + return s +} + // Provides information about updated configuration settings for retrieving // occurrences of sensitive data reported by findings, and the status of the // configuration for an Amazon Macie account. type UpdateRevealConfigurationOutput struct { _ struct{} `type:"structure"` - // Specifies the configuration settings for retrieving occurrences of sensitive - // data reported by findings, and the status of the configuration for an Amazon - // Macie account. When you enable the configuration for the first time, your - // request must specify an Key Management Service (KMS) key. Otherwise, an error - // occurs. Macie uses the specified key to encrypt the sensitive data that you - // retrieve. + // Specifies the status of the Amazon Macie configuration for retrieving occurrences + // of sensitive data reported by findings, and the Key Management Service (KMS) + // key to use to encrypt sensitive data that's retrieved. When you enable the + // configuration for the first time, your request must specify an KMS key. Otherwise, + // an error occurs. Configuration *RevealConfiguration `locationName:"configuration" type:"structure"` + + // Provides information about the access method and settings that are used to + // retrieve occurrences of sensitive data reported by findings. + RetrievalConfiguration *RetrievalConfiguration `locationName:"retrievalConfiguration" type:"structure"` } // String returns the string representation. @@ -23937,6 +24091,12 @@ return s } +// SetRetrievalConfiguration sets the RetrievalConfiguration field's value. +func (s *UpdateRevealConfigurationOutput) SetRetrievalConfiguration(v *RetrievalConfiguration) *UpdateRevealConfigurationOutput { + s.RetrievalConfiguration = v + return s +} + // Specifies settings for the sensitivity inspection template for an Amazon // Macie account. Macie uses the template's settings when it performs automated // sensitive data discovery for the account. To update the settings, automated @@ -25416,6 +25576,24 @@ } } +// The access method to use when retrieving occurrences of sensitive data reported +// by findings. Valid values are: +const ( + // RetrievalModeCallerCredentials is a RetrievalMode enum value + RetrievalModeCallerCredentials = "CALLER_CREDENTIALS" + + // RetrievalModeAssumeRole is a RetrievalMode enum value + RetrievalModeAssumeRole = "ASSUME_ROLE" +) + +// RetrievalMode_Values returns all elements of the RetrievalMode enum +func RetrievalMode_Values() []string { + return []string{ + RetrievalModeCallerCredentials, + RetrievalModeAssumeRole, + } +} + // The status of a request to retrieve occurrences of sensitive data reported // by a finding. Possible values are: const ( @@ -25763,6 +25941,24 @@ // UnavailabilityReasonCodeObjectUnavailable is a UnavailabilityReasonCode enum value UnavailabilityReasonCodeObjectUnavailable = "OBJECT_UNAVAILABLE" + + // UnavailabilityReasonCodeAccountNotInOrganization is a UnavailabilityReasonCode enum value + UnavailabilityReasonCodeAccountNotInOrganization = "ACCOUNT_NOT_IN_ORGANIZATION" + + // UnavailabilityReasonCodeMissingGetMemberPermission is a UnavailabilityReasonCode enum value + UnavailabilityReasonCodeMissingGetMemberPermission = "MISSING_GET_MEMBER_PERMISSION" + + // UnavailabilityReasonCodeRoleTooPermissive is a UnavailabilityReasonCode enum value + UnavailabilityReasonCodeRoleTooPermissive = "ROLE_TOO_PERMISSIVE" + + // UnavailabilityReasonCodeMemberRoleTooPermissive is a UnavailabilityReasonCode enum value + UnavailabilityReasonCodeMemberRoleTooPermissive = "MEMBER_ROLE_TOO_PERMISSIVE" + + // UnavailabilityReasonCodeInvalidResultSignature is a UnavailabilityReasonCode enum value + UnavailabilityReasonCodeInvalidResultSignature = "INVALID_RESULT_SIGNATURE" + + // UnavailabilityReasonCodeResultNotSigned is a UnavailabilityReasonCode enum value + UnavailabilityReasonCodeResultNotSigned = "RESULT_NOT_SIGNED" ) // UnavailabilityReasonCode_Values returns all elements of the UnavailabilityReasonCode enum @@ -25773,6 +25969,12 @@ UnavailabilityReasonCodeUnsupportedFindingType, UnavailabilityReasonCodeInvalidClassificationResult, UnavailabilityReasonCodeObjectUnavailable, + UnavailabilityReasonCodeAccountNotInOrganization, + UnavailabilityReasonCodeMissingGetMemberPermission, + UnavailabilityReasonCodeRoleTooPermissive, + UnavailabilityReasonCodeMemberRoleTooPermissive, + UnavailabilityReasonCodeInvalidResultSignature, + UnavailabilityReasonCodeResultNotSigned, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/managedblockchain/api.go golang-github-aws-aws-sdk-go-1.48.14/service/managedblockchain/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/managedblockchain/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/managedblockchain/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -56,9 +56,9 @@ // CreateAccessor API operation for Amazon Managed Blockchain. // -// Creates a new accessor for use with Managed Blockchain Ethereum nodes. An -// accessor contains information required for token based access to your Ethereum -// nodes. +// Creates a new accessor for use with Amazon Managed Blockchain service that +// supports token based access. The accessor contains information required for +// token based access. // // 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 @@ -3234,9 +3234,9 @@ // in the Amazon Web Services General Reference. Arn *string `min:"1" type:"string"` - // The billing token is a property of the accessor. Use this token to make Ethereum - // API calls to your Ethereum node. The billing token is used to track your - // accessor object for billing Ethereum API requests made to your Ethereum nodes. + // The billing token is a property of the Accessor. Use this token to when making + // calls to the blockchain network. The billing token is used to track your + // accessor token for billing requests. BillingToken *string `min:"42" type:"string"` // The creation date and time of the accessor. @@ -3245,6 +3245,9 @@ // The unique identifier of the accessor. Id *string `min:"1" type:"string"` + // The blockchain network that the Accessor token is created for. + NetworkType *string `type:"string" enum:"AccessorNetworkType"` + // The current status of the accessor. Status *string `type:"string" enum:"AccessorStatus"` @@ -3304,6 +3307,12 @@ return s } +// SetNetworkType sets the NetworkType field's value. +func (s *Accessor) SetNetworkType(v string) *Accessor { + s.NetworkType = &v + return s +} + // SetStatus sets the Status field's value. func (s *Accessor) SetStatus(v string) *Accessor { s.Status = &v @@ -3337,6 +3346,9 @@ // The unique identifier of the accessor. Id *string `min:"1" type:"string"` + // The blockchain network that the Accessor token is created for. + NetworkType *string `type:"string" enum:"AccessorNetworkType"` + // The current status of the accessor. Status *string `type:"string" enum:"AccessorStatus"` @@ -3382,6 +3394,12 @@ return s } +// SetNetworkType sets the NetworkType field's value. +func (s *AccessorSummary) SetNetworkType(v string) *AccessorSummary { + s.NetworkType = &v + return s +} + // SetStatus sets the Status field's value. func (s *AccessorSummary) SetStatus(v string) *AccessorSummary { s.Status = &v @@ -3410,7 +3428,7 @@ ProposalDurationInHours *int64 `min:"1" type:"integer"` // Determines whether the vote percentage must be greater than the ThresholdPercentage - // or must be greater than or equal to the ThreholdPercentage to be approved. + // or must be greater than or equal to the ThresholdPercentage to be approved. ThresholdComparator *string `type:"string" enum:"ThresholdComparator"` // The percentage of votes among all members that must be YES for a proposal @@ -3488,6 +3506,20 @@ // Web Services SDK or the Amazon Web Services CLI. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + // The blockchain network that the Accessor token is created for. + // + // We recommend using the appropriate networkType value for the blockchain network + // that you are creating the Accessor token for. You cannnot use the value ETHEREUM_MAINNET_AND_GOERLI + // to specify a networkType for your Accessor token. + // + // The default value of ETHEREUM_MAINNET_AND_GOERLI is only applied: + // + // * when the CreateAccessor action does not set a networkType. + // + // * to all existing Accessor tokens that were created before the networkType + // property was introduced. + NetworkType *string `type:"string" enum:"AccessorNetworkType"` + // Tags to assign to the Accessor. // // Each tag consists of a key and an optional value. You can specify multiple @@ -3547,6 +3579,12 @@ return s } +// SetNetworkType sets the NetworkType field's value. +func (s *CreateAccessorInput) SetNetworkType(v string) *CreateAccessorInput { + s.NetworkType = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateAccessorInput) SetTags(v map[string]*string) *CreateAccessorInput { s.Tags = v @@ -3559,10 +3597,13 @@ // The unique identifier of the accessor. AccessorId *string `min:"1" type:"string"` - // The billing token is a property of the Accessor. Use this token to make Ethereum - // API calls to your Ethereum node. The billing token is used to track your - // accessor object for billing Ethereum API requests made to your Ethereum nodes. + // The billing token is a property of the Accessor. Use this token to when making + // calls to the blockchain network. The billing token is used to track your + // accessor token for billing requests. BillingToken *string `min:"42" type:"string"` + + // The blockchain network that the accessor token is created for. + NetworkType *string `type:"string" enum:"AccessorNetworkType"` } // String returns the string representation. @@ -3595,6 +3636,12 @@ return s } +// SetNetworkType sets the NetworkType field's value. +func (s *CreateAccessorOutput) SetNetworkType(v string) *CreateAccessorOutput { + s.NetworkType = &v + return s +} + type CreateMemberInput struct { _ struct{} `type:"structure"` @@ -3967,8 +4014,6 @@ // // * n-ethereum-goerli // - // * n-ethereum-rinkeby - // // NetworkId is a required field NetworkId *string `location:"uri" locationName:"networkId" min:"1" type:"string" required:"true"` @@ -4438,8 +4483,6 @@ // // * n-ethereum-goerli // - // * n-ethereum-rinkeby - // // NetworkId is a required field NetworkId *string `location:"uri" locationName:"networkId" min:"1" type:"string" required:"true"` @@ -5346,6 +5389,12 @@ // The maximum number of accessors to list. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + // The blockchain network that the Accessor token is created for. + // + // Use the value ETHEREUM_MAINNET_AND_GOERLI for all existing Accessors tokens + // that were created before the networkType property was introduced. + NetworkType *string `location:"querystring" locationName:"networkType" type:"string" enum:"AccessorNetworkType"` + // The pagination token that indicates the next set of results to retrieve. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } @@ -5387,6 +5436,12 @@ return s } +// SetNetworkType sets the NetworkType field's value. +func (s *ListAccessorsInput) SetNetworkType(v string) *ListAccessorsInput { + s.NetworkType = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *ListAccessorsInput) SetNextToken(v string) *ListAccessorsInput { s.NextToken = &v @@ -7156,8 +7211,6 @@ // * mainnet = 1 // // * goerli = 5 - // - // * rinkeby = 4 ChainId *string `type:"string"` } @@ -9540,6 +9593,34 @@ } const ( + // AccessorNetworkTypeEthereumGoerli is a AccessorNetworkType enum value + AccessorNetworkTypeEthereumGoerli = "ETHEREUM_GOERLI" + + // AccessorNetworkTypeEthereumMainnet is a AccessorNetworkType enum value + AccessorNetworkTypeEthereumMainnet = "ETHEREUM_MAINNET" + + // AccessorNetworkTypeEthereumMainnetAndGoerli is a AccessorNetworkType enum value + AccessorNetworkTypeEthereumMainnetAndGoerli = "ETHEREUM_MAINNET_AND_GOERLI" + + // AccessorNetworkTypePolygonMainnet is a AccessorNetworkType enum value + AccessorNetworkTypePolygonMainnet = "POLYGON_MAINNET" + + // AccessorNetworkTypePolygonMumbai is a AccessorNetworkType enum value + AccessorNetworkTypePolygonMumbai = "POLYGON_MUMBAI" +) + +// AccessorNetworkType_Values returns all elements of the AccessorNetworkType enum +func AccessorNetworkType_Values() []string { + return []string{ + AccessorNetworkTypeEthereumGoerli, + AccessorNetworkTypeEthereumMainnet, + AccessorNetworkTypeEthereumMainnetAndGoerli, + AccessorNetworkTypePolygonMainnet, + AccessorNetworkTypePolygonMumbai, + } +} + +const ( // AccessorStatusAvailable is a AccessorStatus enum value AccessorStatusAvailable = "AVAILABLE" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/managedblockchainquery/api.go golang-github-aws-aws-sdk-go-1.48.14/service/managedblockchainquery/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/managedblockchainquery/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/managedblockchainquery/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -55,7 +55,7 @@ // BatchGetTokenBalance API operation for Amazon Managed Blockchain Query. // -// Gets the token balance for a batch of tokens by using the GetTokenBalance +// Gets the token balance for a batch of tokens by using the BatchGetTokenBalance // action for every token in the request. // // Only the native tokens BTC,ETH, and the ERC-20, ERC-721, and ERC 1155 token @@ -113,6 +113,108 @@ return out, req.Send() } +const opGetAssetContract = "GetAssetContract" + +// GetAssetContractRequest generates a "aws/request.Request" representing the +// client's request for the GetAssetContract 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 GetAssetContract for more information on using the GetAssetContract +// 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 GetAssetContractRequest method. +// req, resp := client.GetAssetContractRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/managedblockchain-query-2023-05-04/GetAssetContract +func (c *ManagedBlockchainQuery) GetAssetContractRequest(input *GetAssetContractInput) (req *request.Request, output *GetAssetContractOutput) { + op := &request.Operation{ + Name: opGetAssetContract, + HTTPMethod: "POST", + HTTPPath: "/get-asset-contract", + } + + if input == nil { + input = &GetAssetContractInput{} + } + + output = &GetAssetContractOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAssetContract API operation for Amazon Managed Blockchain Query. +// +// Gets the information about a specific contract deployed on the blockchain. +// +// - The Bitcoin blockchain networks do not support this operation. +// +// - Metadata is currently only available for some ERC-20 contracts. Metadata +// will be available for additional contracts in the future. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Managed Blockchain Query's +// API operation GetAssetContract for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request or operation couldn't be performed because a service is throttling +// requests. The most common source of throttling errors is when you create +// resources that exceed your service limit for this resource type. Request +// a limit increase or delete unused resources, if possible. +// +// - ValidationException +// The resource passed is invalid. +// +// - ResourceNotFoundException +// The resource was not found. +// +// - AccessDeniedException +// The Amazon Web Services account doesn’t have access to this resource. +// +// - InternalServerException +// The request processing has failed because of an internal error in the service. +// +// - ServiceQuotaExceededException +// The service quota has been exceeded for this resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/managedblockchain-query-2023-05-04/GetAssetContract +func (c *ManagedBlockchainQuery) GetAssetContract(input *GetAssetContractInput) (*GetAssetContractOutput, error) { + req, out := c.GetAssetContractRequest(input) + return out, req.Send() +} + +// GetAssetContractWithContext is the same as GetAssetContract with the addition of +// the ability to pass a context and additional request options. +// +// See GetAssetContract 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 *ManagedBlockchainQuery) GetAssetContractWithContext(ctx aws.Context, input *GetAssetContractInput, opts ...request.Option) (*GetAssetContractOutput, error) { + req, out := c.GetAssetContractRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetTokenBalance = "GetTokenBalance" // GetTokenBalanceRequest generates a "aws/request.Request" representing the @@ -311,6 +413,160 @@ return out, req.Send() } +const opListAssetContracts = "ListAssetContracts" + +// ListAssetContractsRequest generates a "aws/request.Request" representing the +// client's request for the ListAssetContracts 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 ListAssetContracts for more information on using the ListAssetContracts +// 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 ListAssetContractsRequest method. +// req, resp := client.ListAssetContractsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/managedblockchain-query-2023-05-04/ListAssetContracts +func (c *ManagedBlockchainQuery) ListAssetContractsRequest(input *ListAssetContractsInput) (req *request.Request, output *ListAssetContractsOutput) { + op := &request.Operation{ + Name: opListAssetContracts, + HTTPMethod: "POST", + HTTPPath: "/list-asset-contracts", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAssetContractsInput{} + } + + output = &ListAssetContractsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAssetContracts API operation for Amazon Managed Blockchain Query. +// +// Lists all the contracts for a given contract type deployed by an address +// (either a contract address or a wallet address). +// +// The Bitcoin blockchain networks do not support this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Managed Blockchain Query's +// API operation ListAssetContracts for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request or operation couldn't be performed because a service is throttling +// requests. The most common source of throttling errors is when you create +// resources that exceed your service limit for this resource type. Request +// a limit increase or delete unused resources, if possible. +// +// - ValidationException +// The resource passed is invalid. +// +// - AccessDeniedException +// The Amazon Web Services account doesn’t have access to this resource. +// +// - InternalServerException +// The request processing has failed because of an internal error in the service. +// +// - ServiceQuotaExceededException +// The service quota has been exceeded for this resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/managedblockchain-query-2023-05-04/ListAssetContracts +func (c *ManagedBlockchainQuery) ListAssetContracts(input *ListAssetContractsInput) (*ListAssetContractsOutput, error) { + req, out := c.ListAssetContractsRequest(input) + return out, req.Send() +} + +// ListAssetContractsWithContext is the same as ListAssetContracts with the addition of +// the ability to pass a context and additional request options. +// +// See ListAssetContracts 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 *ManagedBlockchainQuery) ListAssetContractsWithContext(ctx aws.Context, input *ListAssetContractsInput, opts ...request.Option) (*ListAssetContractsOutput, error) { + req, out := c.ListAssetContractsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAssetContractsPages iterates over the pages of a ListAssetContracts operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAssetContracts 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 ListAssetContracts operation. +// pageNum := 0 +// err := client.ListAssetContractsPages(params, +// func(page *managedblockchainquery.ListAssetContractsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ManagedBlockchainQuery) ListAssetContractsPages(input *ListAssetContractsInput, fn func(*ListAssetContractsOutput, bool) bool) error { + return c.ListAssetContractsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAssetContractsPagesWithContext same as ListAssetContractsPages 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 *ManagedBlockchainQuery) ListAssetContractsPagesWithContext(ctx aws.Context, input *ListAssetContractsInput, fn func(*ListAssetContractsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAssetContractsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAssetContractsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAssetContractsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTokenBalances = "ListTokenBalances" // ListTokenBalancesRequest generates a "aws/request.Request" representing the @@ -360,9 +616,9 @@ // ListTokenBalances API operation for Amazon Managed Blockchain Query. // -// This action returns the following for a given a blockchain network: +// This action returns the following for a given blockchain network: // -// - Lists all token balances owned by an address (either a contact address +// - Lists all token balances owned by an address (either a contract address // or a wallet address). // // - Lists all token balances for all tokens created by a contract. @@ -841,6 +1097,63 @@ return s.RespMetadata.RequestID } +// This container contains information about an contract. +type AssetContract struct { + _ struct{} `type:"structure"` + + // The container for the contract identifier containing its blockchain network + // and address. + // + // ContractIdentifier is a required field + ContractIdentifier *ContractIdentifier `locationName:"contractIdentifier" type:"structure" required:"true"` + + // The address of the contract deployer. + // + // DeployerAddress is a required field + DeployerAddress *string `locationName:"deployerAddress" type:"string" required:"true"` + + // The token standard of the contract. + // + // TokenStandard is a required field + TokenStandard *string `locationName:"tokenStandard" type:"string" required:"true" enum:"QueryTokenStandard"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetContract) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetContract) GoString() string { + return s.String() +} + +// SetContractIdentifier sets the ContractIdentifier field's value. +func (s *AssetContract) SetContractIdentifier(v *ContractIdentifier) *AssetContract { + s.ContractIdentifier = v + return s +} + +// SetDeployerAddress sets the DeployerAddress field's value. +func (s *AssetContract) SetDeployerAddress(v string) *AssetContract { + s.DeployerAddress = &v + return s +} + +// SetTokenStandard sets the TokenStandard field's value. +func (s *AssetContract) SetTokenStandard(v string) *AssetContract { + s.TokenStandard = &v + return s +} + // Error generated from a failed BatchGetTokenBalance request. type BatchGetTokenBalanceErrorItem struct { _ struct{} `type:"structure"` @@ -931,7 +1244,8 @@ type BatchGetTokenBalanceInput struct { _ struct{} `type:"structure"` - // An array of GetTokenBalanceInput objects whose balance is being requested. + // An array of BatchGetTokenBalanceInputItem objects whose balance is being + // requested. GetTokenBalanceInputs []*BatchGetTokenBalanceInputItem `locationName:"getTokenBalanceInputs" min:"1" type:"list"` } @@ -1220,6 +1534,307 @@ return s } +// The contract or wallet address by which to filter the request. +type ContractFilter struct { + _ struct{} `type:"structure"` + + // The network address of the deployer. + // + // DeployerAddress is a required field + DeployerAddress *string `locationName:"deployerAddress" type:"string" required:"true"` + + // The blockchain network of the contract. + // + // Network is a required field + Network *string `locationName:"network" type:"string" required:"true" enum:"QueryNetwork"` + + // The container for the token standard. + // + // TokenStandard is a required field + TokenStandard *string `locationName:"tokenStandard" type:"string" required:"true" enum:"QueryTokenStandard"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContractFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContractFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContractFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContractFilter"} + if s.DeployerAddress == nil { + invalidParams.Add(request.NewErrParamRequired("DeployerAddress")) + } + if s.Network == nil { + invalidParams.Add(request.NewErrParamRequired("Network")) + } + if s.TokenStandard == nil { + invalidParams.Add(request.NewErrParamRequired("TokenStandard")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeployerAddress sets the DeployerAddress field's value. +func (s *ContractFilter) SetDeployerAddress(v string) *ContractFilter { + s.DeployerAddress = &v + return s +} + +// SetNetwork sets the Network field's value. +func (s *ContractFilter) SetNetwork(v string) *ContractFilter { + s.Network = &v + return s +} + +// SetTokenStandard sets the TokenStandard field's value. +func (s *ContractFilter) SetTokenStandard(v string) *ContractFilter { + s.TokenStandard = &v + return s +} + +// Container for the blockchain address and network information about a contract. +type ContractIdentifier struct { + _ struct{} `type:"structure"` + + // Container for the blockchain address about a contract. + // + // ContractAddress is a required field + ContractAddress *string `locationName:"contractAddress" type:"string" required:"true"` + + // The blockchain network of the contract. + // + // Network is a required field + Network *string `locationName:"network" type:"string" required:"true" enum:"QueryNetwork"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContractIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContractIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContractIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContractIdentifier"} + if s.ContractAddress == nil { + invalidParams.Add(request.NewErrParamRequired("ContractAddress")) + } + if s.Network == nil { + invalidParams.Add(request.NewErrParamRequired("Network")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContractAddress sets the ContractAddress field's value. +func (s *ContractIdentifier) SetContractAddress(v string) *ContractIdentifier { + s.ContractAddress = &v + return s +} + +// SetNetwork sets the Network field's value. +func (s *ContractIdentifier) SetNetwork(v string) *ContractIdentifier { + s.Network = &v + return s +} + +// The metadata of the contract. +type ContractMetadata struct { + _ struct{} `type:"structure"` + + // The decimals used by the token contract. + Decimals *int64 `locationName:"decimals" type:"integer"` + + // The name of the token contract. + Name *string `locationName:"name" type:"string"` + + // The symbol of the token contract. + Symbol *string `locationName:"symbol" 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 ContractMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContractMetadata) GoString() string { + return s.String() +} + +// SetDecimals sets the Decimals field's value. +func (s *ContractMetadata) SetDecimals(v int64) *ContractMetadata { + s.Decimals = &v + return s +} + +// SetName sets the Name field's value. +func (s *ContractMetadata) SetName(v string) *ContractMetadata { + s.Name = &v + return s +} + +// SetSymbol sets the Symbol field's value. +func (s *ContractMetadata) SetSymbol(v string) *ContractMetadata { + s.Symbol = &v + return s +} + +type GetAssetContractInput struct { + _ struct{} `type:"structure"` + + // Contains the blockchain address and network information about the contract. + // + // ContractIdentifier is a required field + ContractIdentifier *ContractIdentifier `locationName:"contractIdentifier" 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 GetAssetContractInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetContractInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAssetContractInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAssetContractInput"} + if s.ContractIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ContractIdentifier")) + } + if s.ContractIdentifier != nil { + if err := s.ContractIdentifier.Validate(); err != nil { + invalidParams.AddNested("ContractIdentifier", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContractIdentifier sets the ContractIdentifier field's value. +func (s *GetAssetContractInput) SetContractIdentifier(v *ContractIdentifier) *GetAssetContractInput { + s.ContractIdentifier = v + return s +} + +type GetAssetContractOutput struct { + _ struct{} `type:"structure"` + + // Contains the blockchain address and network information about the contract. + // + // ContractIdentifier is a required field + ContractIdentifier *ContractIdentifier `locationName:"contractIdentifier" type:"structure" required:"true"` + + // The address of the deployer of contract. + // + // DeployerAddress is a required field + DeployerAddress *string `locationName:"deployerAddress" type:"string" required:"true"` + + // The metadata of the contract. + Metadata *ContractMetadata `locationName:"metadata" type:"structure"` + + // The token standard of the contract requested. + // + // TokenStandard is a required field + TokenStandard *string `locationName:"tokenStandard" type:"string" required:"true" enum:"QueryTokenStandard"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetContractOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssetContractOutput) GoString() string { + return s.String() +} + +// SetContractIdentifier sets the ContractIdentifier field's value. +func (s *GetAssetContractOutput) SetContractIdentifier(v *ContractIdentifier) *GetAssetContractOutput { + s.ContractIdentifier = v + return s +} + +// SetDeployerAddress sets the DeployerAddress field's value. +func (s *GetAssetContractOutput) SetDeployerAddress(v string) *GetAssetContractOutput { + s.DeployerAddress = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *GetAssetContractOutput) SetMetadata(v *ContractMetadata) *GetAssetContractOutput { + s.Metadata = v + return s +} + +// SetTokenStandard sets the TokenStandard field's value. +func (s *GetAssetContractOutput) SetTokenStandard(v string) *GetAssetContractOutput { + s.TokenStandard = &v + return s +} + type GetTokenBalanceInput struct { _ struct{} `type:"structure"` @@ -1540,6 +2155,120 @@ return s.RespMetadata.RequestID } +type ListAssetContractsInput struct { + _ struct{} `type:"structure"` + + // Contains the filter parameter for the request. + // + // ContractFilter is a required field + ContractFilter *ContractFilter `locationName:"contractFilter" type:"structure" required:"true"` + + // The maximum number of contracts to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token that indicates the next set of results to retrieve. + 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 ListAssetContractsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetContractsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAssetContractsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAssetContractsInput"} + if s.ContractFilter == nil { + invalidParams.Add(request.NewErrParamRequired("ContractFilter")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ContractFilter != nil { + if err := s.ContractFilter.Validate(); err != nil { + invalidParams.AddNested("ContractFilter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContractFilter sets the ContractFilter field's value. +func (s *ListAssetContractsInput) SetContractFilter(v *ContractFilter) *ListAssetContractsInput { + s.ContractFilter = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAssetContractsInput) SetMaxResults(v int64) *ListAssetContractsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssetContractsInput) SetNextToken(v string) *ListAssetContractsInput { + s.NextToken = &v + return s +} + +type ListAssetContractsOutput struct { + _ struct{} `type:"structure"` + + // An array of contract objects that contain the properties for each contract. + // + // Contracts is a required field + Contracts []*AssetContract `locationName:"contracts" type:"list" required:"true"` + + // The pagination token that indicates the next set of results to retrieve. + 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 ListAssetContractsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssetContractsOutput) GoString() string { + return s.String() +} + +// SetContracts sets the Contracts field's value. +func (s *ListAssetContractsOutput) SetContracts(v []*AssetContract) *ListAssetContractsOutput { + s.Contracts = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssetContractsOutput) SetNextToken(v string) *ListAssetContractsOutput { + s.NextToken = &v + return s +} + type ListTokenBalancesInput struct { _ struct{} `type:"structure"` @@ -2361,7 +3090,7 @@ // Balance is a required field Balance *string `locationName:"balance" type:"string" required:"true"` - // The timestamp of the last transaction at which the balance for the token + // The Timestamp of the last transaction at which the balance for the token // in the wallet was updated. LastUpdatedTime *BlockchainInstant `locationName:"lastUpdatedTime" type:"structure"` @@ -2507,6 +3236,10 @@ Network *string `locationName:"network" type:"string" required:"true" enum:"QueryNetwork"` // The unique identifier of the token. + // + // You must specify this container with btc for the native BTC token, and eth + // for the native ETH token. For all other token types you must specify the + // tokenId in the 64 character hexadecimal tokenid format. TokenId *string `locationName:"tokenId" type:"string"` } @@ -2594,7 +3327,7 @@ // The amount of gas used for the transaction. GasUsed *string `locationName:"gasUsed" type:"string"` - // The blockchain network where the transaction occured. + // The blockchain network where the transaction occurred. // // Network is a required field Network *string `locationName:"network" type:"string" required:"true" enum:"QueryNetwork"` @@ -3112,6 +3845,12 @@ // QueryNetworkBitcoinMainnet is a QueryNetwork enum value QueryNetworkBitcoinMainnet = "BITCOIN_MAINNET" + + // QueryNetworkBitcoinTestnet is a QueryNetwork enum value + QueryNetworkBitcoinTestnet = "BITCOIN_TESTNET" + + // QueryNetworkEthereumSepoliaTestnet is a QueryNetwork enum value + QueryNetworkEthereumSepoliaTestnet = "ETHEREUM_SEPOLIA_TESTNET" ) // QueryNetwork_Values returns all elements of the QueryNetwork enum @@ -3119,6 +3858,28 @@ return []string{ QueryNetworkEthereumMainnet, QueryNetworkBitcoinMainnet, + QueryNetworkBitcoinTestnet, + QueryNetworkEthereumSepoliaTestnet, + } +} + +const ( + // QueryTokenStandardErc20 is a QueryTokenStandard enum value + QueryTokenStandardErc20 = "ERC20" + + // QueryTokenStandardErc721 is a QueryTokenStandard enum value + QueryTokenStandardErc721 = "ERC721" + + // QueryTokenStandardErc1155 is a QueryTokenStandard enum value + QueryTokenStandardErc1155 = "ERC1155" +) + +// QueryTokenStandard_Values returns all elements of the QueryTokenStandard enum +func QueryTokenStandard_Values() []string { + return []string{ + QueryTokenStandardErc20, + QueryTokenStandardErc721, + QueryTokenStandardErc1155, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/managedblockchainquery/managedblockchainqueryiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/managedblockchainquery/managedblockchainqueryiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/managedblockchainquery/managedblockchainqueryiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/managedblockchainquery/managedblockchainqueryiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ BatchGetTokenBalanceWithContext(aws.Context, *managedblockchainquery.BatchGetTokenBalanceInput, ...request.Option) (*managedblockchainquery.BatchGetTokenBalanceOutput, error) BatchGetTokenBalanceRequest(*managedblockchainquery.BatchGetTokenBalanceInput) (*request.Request, *managedblockchainquery.BatchGetTokenBalanceOutput) + GetAssetContract(*managedblockchainquery.GetAssetContractInput) (*managedblockchainquery.GetAssetContractOutput, error) + GetAssetContractWithContext(aws.Context, *managedblockchainquery.GetAssetContractInput, ...request.Option) (*managedblockchainquery.GetAssetContractOutput, error) + GetAssetContractRequest(*managedblockchainquery.GetAssetContractInput) (*request.Request, *managedblockchainquery.GetAssetContractOutput) + GetTokenBalance(*managedblockchainquery.GetTokenBalanceInput) (*managedblockchainquery.GetTokenBalanceOutput, error) GetTokenBalanceWithContext(aws.Context, *managedblockchainquery.GetTokenBalanceInput, ...request.Option) (*managedblockchainquery.GetTokenBalanceOutput, error) GetTokenBalanceRequest(*managedblockchainquery.GetTokenBalanceInput) (*request.Request, *managedblockchainquery.GetTokenBalanceOutput) @@ -72,6 +76,13 @@ GetTransactionWithContext(aws.Context, *managedblockchainquery.GetTransactionInput, ...request.Option) (*managedblockchainquery.GetTransactionOutput, error) GetTransactionRequest(*managedblockchainquery.GetTransactionInput) (*request.Request, *managedblockchainquery.GetTransactionOutput) + ListAssetContracts(*managedblockchainquery.ListAssetContractsInput) (*managedblockchainquery.ListAssetContractsOutput, error) + ListAssetContractsWithContext(aws.Context, *managedblockchainquery.ListAssetContractsInput, ...request.Option) (*managedblockchainquery.ListAssetContractsOutput, error) + ListAssetContractsRequest(*managedblockchainquery.ListAssetContractsInput) (*request.Request, *managedblockchainquery.ListAssetContractsOutput) + + ListAssetContractsPages(*managedblockchainquery.ListAssetContractsInput, func(*managedblockchainquery.ListAssetContractsOutput, bool) bool) error + ListAssetContractsPagesWithContext(aws.Context, *managedblockchainquery.ListAssetContractsInput, func(*managedblockchainquery.ListAssetContractsOutput, bool) bool, ...request.Option) error + ListTokenBalances(*managedblockchainquery.ListTokenBalancesInput) (*managedblockchainquery.ListTokenBalancesOutput, error) ListTokenBalancesWithContext(aws.Context, *managedblockchainquery.ListTokenBalancesInput, ...request.Option) (*managedblockchainquery.ListTokenBalancesOutput, error) ListTokenBalancesRequest(*managedblockchainquery.ListTokenBalancesInput) (*request.Request, *managedblockchainquery.ListTokenBalancesOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/api.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,3109 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package marketplaceagreement + +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" +) + +const opDescribeAgreement = "DescribeAgreement" + +// DescribeAgreementRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAgreement 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 DescribeAgreement for more information on using the DescribeAgreement +// 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 DescribeAgreementRequest method. +// req, resp := client.DescribeAgreementRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01/DescribeAgreement +func (c *MarketplaceAgreement) DescribeAgreementRequest(input *DescribeAgreementInput) (req *request.Request, output *DescribeAgreementOutput) { + op := &request.Operation{ + Name: opDescribeAgreement, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeAgreementInput{} + } + + output = &DescribeAgreementOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeAgreement API operation for AWS Marketplace Agreement Service. +// +// Provides details about an agreement, such as the proposer, acceptor, start +// date, and end date. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Marketplace Agreement Service's +// API operation DescribeAgreement for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by the service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01/DescribeAgreement +func (c *MarketplaceAgreement) DescribeAgreement(input *DescribeAgreementInput) (*DescribeAgreementOutput, error) { + req, out := c.DescribeAgreementRequest(input) + return out, req.Send() +} + +// DescribeAgreementWithContext is the same as DescribeAgreement with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeAgreement 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 *MarketplaceAgreement) DescribeAgreementWithContext(ctx aws.Context, input *DescribeAgreementInput, opts ...request.Option) (*DescribeAgreementOutput, error) { + req, out := c.DescribeAgreementRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAgreementTerms = "GetAgreementTerms" + +// GetAgreementTermsRequest generates a "aws/request.Request" representing the +// client's request for the GetAgreementTerms 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 GetAgreementTerms for more information on using the GetAgreementTerms +// 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 GetAgreementTermsRequest method. +// req, resp := client.GetAgreementTermsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01/GetAgreementTerms +func (c *MarketplaceAgreement) GetAgreementTermsRequest(input *GetAgreementTermsInput) (req *request.Request, output *GetAgreementTermsOutput) { + op := &request.Operation{ + Name: opGetAgreementTerms, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetAgreementTermsInput{} + } + + output = &GetAgreementTermsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAgreementTerms API operation for AWS Marketplace Agreement Service. +// +// Obtains details about the terms in an agreement that you participated in +// as proposer or acceptor. +// +// The details include: +// +// - TermType – The type of term, such as LegalTerm, RenewalTerm, or ConfigurableUpfrontPricingTerm. +// +// - TermID – The ID of the particular term, which is common between offer +// and agreement. +// +// - TermPayload – The key information contained in the term, such as the +// EULA for LegalTerm or pricing and dimensions for various pricing terms, +// such as ConfigurableUpfrontPricingTerm or UsageBasedPricingTerm. +// +// - Configuration – The buyer/acceptor's selection at the time of agreement +// creation, such as the number of units purchased for a dimension or setting +// the EnableAutoRenew flag. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Marketplace Agreement Service's +// API operation GetAgreementTerms for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by the service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01/GetAgreementTerms +func (c *MarketplaceAgreement) GetAgreementTerms(input *GetAgreementTermsInput) (*GetAgreementTermsOutput, error) { + req, out := c.GetAgreementTermsRequest(input) + return out, req.Send() +} + +// GetAgreementTermsWithContext is the same as GetAgreementTerms with the addition of +// the ability to pass a context and additional request options. +// +// See GetAgreementTerms 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 *MarketplaceAgreement) GetAgreementTermsWithContext(ctx aws.Context, input *GetAgreementTermsInput, opts ...request.Option) (*GetAgreementTermsOutput, error) { + req, out := c.GetAgreementTermsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetAgreementTermsPages iterates over the pages of a GetAgreementTerms operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetAgreementTerms 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 GetAgreementTerms operation. +// pageNum := 0 +// err := client.GetAgreementTermsPages(params, +// func(page *marketplaceagreement.GetAgreementTermsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MarketplaceAgreement) GetAgreementTermsPages(input *GetAgreementTermsInput, fn func(*GetAgreementTermsOutput, bool) bool) error { + return c.GetAgreementTermsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetAgreementTermsPagesWithContext same as GetAgreementTermsPages 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 *MarketplaceAgreement) GetAgreementTermsPagesWithContext(ctx aws.Context, input *GetAgreementTermsInput, fn func(*GetAgreementTermsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetAgreementTermsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetAgreementTermsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetAgreementTermsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchAgreements = "SearchAgreements" + +// SearchAgreementsRequest generates a "aws/request.Request" representing the +// client's request for the SearchAgreements 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 SearchAgreements for more information on using the SearchAgreements +// 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 SearchAgreementsRequest method. +// req, resp := client.SearchAgreementsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01/SearchAgreements +func (c *MarketplaceAgreement) SearchAgreementsRequest(input *SearchAgreementsInput) (req *request.Request, output *SearchAgreementsOutput) { + op := &request.Operation{ + Name: opSearchAgreements, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchAgreementsInput{} + } + + output = &SearchAgreementsOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchAgreements API operation for AWS Marketplace Agreement Service. +// +// Searches across all agreements that a proposer or an acceptor has in AWS +// Marketplace. The search returns a list of agreements with basic agreement +// information. +// +// The following filter combinations are supported: +// +// - PartyType as Proposer + AgreementType + ResourceIdentifier +// +// - PartyType as Proposer + AgreementType + OfferId +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId +// +// - PartyType as Proposer + AgreementType + Status +// +// - PartyType as Proposer + AgreementType + ResourceIdentifier + Status +// +// - PartyType as Proposer + AgreementType + OfferId + Status +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + Status +// +// - PartyType as Proposer + AgreementType + ResourceType + Status +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceType +// +// - Status +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + OfferId +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + OfferId +// +// - Status +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceIdentifier +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceIdentifier +// +// - Status +// +// - PartyType as Proposer + AgreementType + AcceptorAccountId + ResourceType +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Marketplace Agreement Service's +// API operation SearchAgreements for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by the service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01/SearchAgreements +func (c *MarketplaceAgreement) SearchAgreements(input *SearchAgreementsInput) (*SearchAgreementsOutput, error) { + req, out := c.SearchAgreementsRequest(input) + return out, req.Send() +} + +// SearchAgreementsWithContext is the same as SearchAgreements with the addition of +// the ability to pass a context and additional request options. +// +// See SearchAgreements 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 *MarketplaceAgreement) SearchAgreementsWithContext(ctx aws.Context, input *SearchAgreementsInput, opts ...request.Option) (*SearchAgreementsOutput, error) { + req, out := c.SearchAgreementsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchAgreementsPages iterates over the pages of a SearchAgreements operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchAgreements 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 SearchAgreements operation. +// pageNum := 0 +// err := client.SearchAgreementsPages(params, +// func(page *marketplaceagreement.SearchAgreementsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MarketplaceAgreement) SearchAgreementsPages(input *SearchAgreementsInput, fn func(*SearchAgreementsOutput, bool) bool) error { + return c.SearchAgreementsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchAgreementsPagesWithContext same as SearchAgreementsPages 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 *MarketplaceAgreement) SearchAgreementsPagesWithContext(ctx aws.Context, input *SearchAgreementsInput, fn func(*SearchAgreementsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchAgreementsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchAgreementsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchAgreementsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +// A subset of terms proposed by the proposer, which have been accepted by the +// acceptor as part of agreement creation. +type AcceptedTerm struct { + _ struct{} `type:"structure"` + + // Enables you and your customers to move your existing agreements to AWS Marketplace. + // The customer won't be charged for product usage in AWS Marketplace because + // they already paid for the product outside of AWS Marketplace. + ByolPricingTerm *ByolPricingTerm `locationName:"byolPricingTerm" type:"structure"` + + // Defines a prepaid payment model that allows buyers to configure the entitlements + // they want to purchase and the duration. + ConfigurableUpfrontPricingTerm *ConfigurableUpfrontPricingTerm `locationName:"configurableUpfrontPricingTerm" type:"structure"` + + // Defines a pre-paid pricing model where the customers are charged a fixed + // upfront amount. + FixedUpfrontPricingTerm *FixedUpfrontPricingTerm `locationName:"fixedUpfrontPricingTerm" type:"structure"` + + // Defines a short-term free pricing model where the buyers aren’t charged + // anything within a specified limit. + FreeTrialPricingTerm *FreeTrialPricingTerm `locationName:"freeTrialPricingTerm" type:"structure"` + + // Defines the list of text agreements proposed to the acceptors. An example + // is the end user license agreement (EULA). + LegalTerm *LegalTerm `locationName:"legalTerm" type:"structure"` + + // Defines an installment-based pricing model where customers are charged a + // fixed price on different dates during the agreement validity period. This + // is used most commonly for flexible payment schedule pricing. + PaymentScheduleTerm *PaymentScheduleTerm `locationName:"paymentScheduleTerm" type:"structure"` + + // Defines a pricing model where customers are charged a fixed recurring price + // at the end of each billing period. + RecurringPaymentTerm *RecurringPaymentTerm `locationName:"recurringPaymentTerm" type:"structure"` + + // Defines that on graceful expiration of the agreement (when the agreement + // ends on its pre-defined end date), a new agreement will be created using + // the accepted terms on the existing agreement. In other words, the agreement + // will be renewed. Presence of RenewalTerm in the offer document means that + // auto-renewal is allowed. Buyers will have the option to accept or decline + // auto-renewal at the offer acceptance/agreement creation. Buyers can also + // change this flag from True to False or False to True at anytime during the + // agreement's lifecycle. + RenewalTerm *RenewalTerm `locationName:"renewalTerm" type:"structure"` + + // Defines the customer support available for the acceptors when they purchase + // the software. + SupportTerm *SupportTerm `locationName:"supportTerm" type:"structure"` + + // Defines a usage-based pricing model (typically, pay-as-you-go pricing), where + // the customers are charged based on product usage. + UsageBasedPricingTerm *UsageBasedPricingTerm `locationName:"usageBasedPricingTerm" type:"structure"` + + // Defines the conditions that will keep an agreement created from this offer + // valid. + ValidityTerm *ValidityTerm `locationName:"validityTerm" 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 AcceptedTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AcceptedTerm) GoString() string { + return s.String() +} + +// SetByolPricingTerm sets the ByolPricingTerm field's value. +func (s *AcceptedTerm) SetByolPricingTerm(v *ByolPricingTerm) *AcceptedTerm { + s.ByolPricingTerm = v + return s +} + +// SetConfigurableUpfrontPricingTerm sets the ConfigurableUpfrontPricingTerm field's value. +func (s *AcceptedTerm) SetConfigurableUpfrontPricingTerm(v *ConfigurableUpfrontPricingTerm) *AcceptedTerm { + s.ConfigurableUpfrontPricingTerm = v + return s +} + +// SetFixedUpfrontPricingTerm sets the FixedUpfrontPricingTerm field's value. +func (s *AcceptedTerm) SetFixedUpfrontPricingTerm(v *FixedUpfrontPricingTerm) *AcceptedTerm { + s.FixedUpfrontPricingTerm = v + return s +} + +// SetFreeTrialPricingTerm sets the FreeTrialPricingTerm field's value. +func (s *AcceptedTerm) SetFreeTrialPricingTerm(v *FreeTrialPricingTerm) *AcceptedTerm { + s.FreeTrialPricingTerm = v + return s +} + +// SetLegalTerm sets the LegalTerm field's value. +func (s *AcceptedTerm) SetLegalTerm(v *LegalTerm) *AcceptedTerm { + s.LegalTerm = v + return s +} + +// SetPaymentScheduleTerm sets the PaymentScheduleTerm field's value. +func (s *AcceptedTerm) SetPaymentScheduleTerm(v *PaymentScheduleTerm) *AcceptedTerm { + s.PaymentScheduleTerm = v + return s +} + +// SetRecurringPaymentTerm sets the RecurringPaymentTerm field's value. +func (s *AcceptedTerm) SetRecurringPaymentTerm(v *RecurringPaymentTerm) *AcceptedTerm { + s.RecurringPaymentTerm = v + return s +} + +// SetRenewalTerm sets the RenewalTerm field's value. +func (s *AcceptedTerm) SetRenewalTerm(v *RenewalTerm) *AcceptedTerm { + s.RenewalTerm = v + return s +} + +// SetSupportTerm sets the SupportTerm field's value. +func (s *AcceptedTerm) SetSupportTerm(v *SupportTerm) *AcceptedTerm { + s.SupportTerm = v + return s +} + +// SetUsageBasedPricingTerm sets the UsageBasedPricingTerm field's value. +func (s *AcceptedTerm) SetUsageBasedPricingTerm(v *UsageBasedPricingTerm) *AcceptedTerm { + s.UsageBasedPricingTerm = v + return s +} + +// SetValidityTerm sets the ValidityTerm field's value. +func (s *AcceptedTerm) SetValidityTerm(v *ValidityTerm) *AcceptedTerm { + s.ValidityTerm = v + return s +} + +// The details of the party accepting the agreement terms. This is commonly +// the buyer for PurchaseAgreement. +type Acceptor struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the acceptor. + AccountId *string `locationName:"accountId" 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 Acceptor) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Acceptor) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *Acceptor) SetAccountId(v string) *Acceptor { + s.AccountId = &v + return s +} + +// User does not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The unique identifier for the error. + RequestId *string `locationName:"requestId" 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 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 +} + +// A summary of the agreement, including top-level attributes (for example, +// the agreement ID, version, proposer, and acceptor). +type AgreementViewSummary struct { + _ struct{} `type:"structure"` + + // The date and time that the agreement was accepted. + AcceptanceTime *time.Time `locationName:"acceptanceTime" type:"timestamp"` + + // Details of the party accepting the agreement terms. This is commonly the + // buyer for PurchaseAgreement. + Acceptor *Acceptor `locationName:"acceptor" type:"structure"` + + // The unique identifier of the agreement. + AgreementId *string `locationName:"agreementId" min:"1" type:"string"` + + // The type of agreement. Values are PurchaseAgreement or VendorInsightsAgreement. + AgreementType *string `locationName:"agreementType" min:"1" type:"string"` + + // The date and time when the agreement ends. The field is null for pay-as-you-go + // agreements, which don’t have end dates. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // A summary of the proposal + ProposalSummary *ProposalSummary `locationName:"proposalSummary" type:"structure"` + + // Details of the party proposing the agreement terms, most commonly the seller + // for PurchaseAgreement. + Proposer *Proposer `locationName:"proposer" type:"structure"` + + // The date and time when the agreement starts. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The current status of the agreement. + Status *string `locationName:"status" type:"string" enum:"AgreementStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgreementViewSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgreementViewSummary) GoString() string { + return s.String() +} + +// SetAcceptanceTime sets the AcceptanceTime field's value. +func (s *AgreementViewSummary) SetAcceptanceTime(v time.Time) *AgreementViewSummary { + s.AcceptanceTime = &v + return s +} + +// SetAcceptor sets the Acceptor field's value. +func (s *AgreementViewSummary) SetAcceptor(v *Acceptor) *AgreementViewSummary { + s.Acceptor = v + return s +} + +// SetAgreementId sets the AgreementId field's value. +func (s *AgreementViewSummary) SetAgreementId(v string) *AgreementViewSummary { + s.AgreementId = &v + return s +} + +// SetAgreementType sets the AgreementType field's value. +func (s *AgreementViewSummary) SetAgreementType(v string) *AgreementViewSummary { + s.AgreementType = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *AgreementViewSummary) SetEndTime(v time.Time) *AgreementViewSummary { + s.EndTime = &v + return s +} + +// SetProposalSummary sets the ProposalSummary field's value. +func (s *AgreementViewSummary) SetProposalSummary(v *ProposalSummary) *AgreementViewSummary { + s.ProposalSummary = v + return s +} + +// SetProposer sets the Proposer field's value. +func (s *AgreementViewSummary) SetProposer(v *Proposer) *AgreementViewSummary { + s.Proposer = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *AgreementViewSummary) SetStartTime(v time.Time) *AgreementViewSummary { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AgreementViewSummary) SetStatus(v string) *AgreementViewSummary { + s.Status = &v + return s +} + +// Enables you and your customers to move your existing agreements to AWS Marketplace. +// The customer won't be charged for product usage in AWS Marketplace because +// they already paid for the product outside of AWS Marketplace. +type ByolPricingTerm struct { + _ struct{} `type:"structure"` + + // Type of the term being updated. + Type *string `locationName:"type" 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 ByolPricingTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ByolPricingTerm) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *ByolPricingTerm) SetType(v string) *ByolPricingTerm { + s.Type = &v + return s +} + +// Defines a prepaid payment model that allows buyers to configure the entitlements +// they want to purchase and the duration. +type ConfigurableUpfrontPricingTerm struct { + _ struct{} `type:"structure"` + + // Additional parameters specified by the acceptor while accepting the term. + Configuration *ConfigurableUpfrontPricingTermConfiguration `locationName:"configuration" type:"structure"` + + // Defines the currency for the prices mentioned in the term. + CurrencyCode *string `locationName:"currencyCode" min:"3" type:"string"` + + // A rate card defines the per unit rates for product dimensions. + RateCards []*ConfigurableUpfrontRateCardItem `locationName:"rateCards" type:"list"` + + // Category of selector. + Type *string `locationName:"type" 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 ConfigurableUpfrontPricingTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurableUpfrontPricingTerm) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *ConfigurableUpfrontPricingTerm) SetConfiguration(v *ConfigurableUpfrontPricingTermConfiguration) *ConfigurableUpfrontPricingTerm { + s.Configuration = v + return s +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *ConfigurableUpfrontPricingTerm) SetCurrencyCode(v string) *ConfigurableUpfrontPricingTerm { + s.CurrencyCode = &v + return s +} + +// SetRateCards sets the RateCards field's value. +func (s *ConfigurableUpfrontPricingTerm) SetRateCards(v []*ConfigurableUpfrontRateCardItem) *ConfigurableUpfrontPricingTerm { + s.RateCards = v + return s +} + +// SetType sets the Type field's value. +func (s *ConfigurableUpfrontPricingTerm) SetType(v string) *ConfigurableUpfrontPricingTerm { + s.Type = &v + return s +} + +// Defines a prepaid payment model that allows buyers to configure the entitlements +// they want to purchase and the duration. +type ConfigurableUpfrontPricingTermConfiguration struct { + _ struct{} `type:"structure"` + + // Defines the dimensions that the acceptor has purchased from the overall set + // of dimensions presented in the rate card. + // + // Dimensions is a required field + Dimensions []*Dimension `locationName:"dimensions" min:"1" type:"list" required:"true"` + + // Defines the length of time for which the particular pricing/dimension is + // being purchased by the acceptor. + // + // SelectorValue is a required field + SelectorValue *string `locationName:"selectorValue" 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 ConfigurableUpfrontPricingTermConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurableUpfrontPricingTermConfiguration) GoString() string { + return s.String() +} + +// SetDimensions sets the Dimensions field's value. +func (s *ConfigurableUpfrontPricingTermConfiguration) SetDimensions(v []*Dimension) *ConfigurableUpfrontPricingTermConfiguration { + s.Dimensions = v + return s +} + +// SetSelectorValue sets the SelectorValue field's value. +func (s *ConfigurableUpfrontPricingTermConfiguration) SetSelectorValue(v string) *ConfigurableUpfrontPricingTermConfiguration { + s.SelectorValue = &v + return s +} + +// Within the prepaid payment model defined under ConfigurableUpfrontPricingTerm, +// the RateCardItem defines all the various rate cards (including pricing and +// dimensions) that have been proposed. +type ConfigurableUpfrontRateCardItem struct { + _ struct{} `type:"structure"` + + // Defines limits on how the term can be configured by acceptors. + Constraints *Constraints `locationName:"constraints" type:"structure"` + + // Defines the per unit rates for product dimensions. + RateCard []*RateCardItem `locationName:"rateCard" type:"list"` + + // Differentiates between the mutually exclusive rate cards in the same pricing + // term to be selected by the buyer. + Selector *Selector `locationName:"selector" 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 ConfigurableUpfrontRateCardItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurableUpfrontRateCardItem) GoString() string { + return s.String() +} + +// SetConstraints sets the Constraints field's value. +func (s *ConfigurableUpfrontRateCardItem) SetConstraints(v *Constraints) *ConfigurableUpfrontRateCardItem { + s.Constraints = v + return s +} + +// SetRateCard sets the RateCard field's value. +func (s *ConfigurableUpfrontRateCardItem) SetRateCard(v []*RateCardItem) *ConfigurableUpfrontRateCardItem { + s.RateCard = v + return s +} + +// SetSelector sets the Selector field's value. +func (s *ConfigurableUpfrontRateCardItem) SetSelector(v *Selector) *ConfigurableUpfrontRateCardItem { + s.Selector = v + return s +} + +// Defines limits on how the term can be configured by acceptors. +type Constraints struct { + _ struct{} `type:"structure"` + + // Determines if buyers are allowed to select multiple dimensions in the rate + // card. The possible values are Allowed and Disallowed. The default value is + // Allowed. + MultipleDimensionSelection *string `locationName:"multipleDimensionSelection" min:"1" type:"string"` + + // Determines if acceptors are allowed to configure quantity for each dimension + // in rate card. The possible values are Allowed and Disallowed. The default + // value is Allowed. + QuantityConfiguration *string `locationName:"quantityConfiguration" 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 Constraints) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Constraints) GoString() string { + return s.String() +} + +// SetMultipleDimensionSelection sets the MultipleDimensionSelection field's value. +func (s *Constraints) SetMultipleDimensionSelection(v string) *Constraints { + s.MultipleDimensionSelection = &v + return s +} + +// SetQuantityConfiguration sets the QuantityConfiguration field's value. +func (s *Constraints) SetQuantityConfiguration(v string) *Constraints { + s.QuantityConfiguration = &v + return s +} + +type DescribeAgreementInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the agreement. + // + // AgreementId is a required field + AgreementId *string `locationName:"agreementId" 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 DescribeAgreementInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAgreementInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAgreementInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAgreementInput"} + if s.AgreementId == nil { + invalidParams.Add(request.NewErrParamRequired("AgreementId")) + } + if s.AgreementId != nil && len(*s.AgreementId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgreementId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgreementId sets the AgreementId field's value. +func (s *DescribeAgreementInput) SetAgreementId(v string) *DescribeAgreementInput { + s.AgreementId = &v + return s +} + +type DescribeAgreementOutput struct { + _ struct{} `type:"structure"` + + // The date and time the offer was accepted or the agreement was created. + // + // AcceptanceTime and StartTime can differ for future dated agreements (FDAs). + AcceptanceTime *time.Time `locationName:"acceptanceTime" type:"timestamp"` + + // The details of the party accepting the agreement terms. This is commonly + // the buyer for PurchaseAgreement. + Acceptor *Acceptor `locationName:"acceptor" type:"structure"` + + // The unique identifier of the agreement. + AgreementId *string `locationName:"agreementId" min:"1" type:"string"` + + // The type of agreement. Values are PurchaseAgreement or VendorInsightsAgreement. + AgreementType *string `locationName:"agreementType" min:"1" type:"string"` + + // The date and time when the agreement ends. The field is null for pay-as-you-go + // agreements, which don’t have end dates. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The estimated cost of the agreement. + EstimatedCharges *EstimatedCharges `locationName:"estimatedCharges" type:"structure"` + + // A summary of the proposal received from the proposer. + ProposalSummary *ProposalSummary `locationName:"proposalSummary" type:"structure"` + + // The details of the party proposing the agreement terms. This is commonly + // the seller for PurchaseAgreement. + Proposer *Proposer `locationName:"proposer" type:"structure"` + + // The date and time when the agreement starts. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The current status of the agreement. + // + // Statuses include: + // + // * ACTIVE – The terms of the agreement are active. + // + // * ARCHIVED – The agreement ended without a specified reason. + // + // * CANCELLED – The acceptor ended the agreement before the defined end + // date. + // + // * EXPIRED – The agreement ended on the defined end date. + // + // * RENEWED – The agreement was renewed into a new agreement (for example, + // an auto-renewal). + // + // * REPLACED – The agreement was replaced using an agreement replacement + // offer. + // + // * ROLLED_BACK (Only applicable to inactive agreement revisions) – The + // agreement revision has been rolled back because of an error. An earlier + // revision is now active. + // + // * SUPERCEDED (Only applicable to inactive agreement revisions) – The + // agreement revision is no longer active and another agreement revision + // is now active. + // + // * TERMINATED – The agreement ended before the defined end date because + // of an AWS termination (for example, a payment failure). + Status *string `locationName:"status" type:"string" enum:"AgreementStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAgreementOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeAgreementOutput) GoString() string { + return s.String() +} + +// SetAcceptanceTime sets the AcceptanceTime field's value. +func (s *DescribeAgreementOutput) SetAcceptanceTime(v time.Time) *DescribeAgreementOutput { + s.AcceptanceTime = &v + return s +} + +// SetAcceptor sets the Acceptor field's value. +func (s *DescribeAgreementOutput) SetAcceptor(v *Acceptor) *DescribeAgreementOutput { + s.Acceptor = v + return s +} + +// SetAgreementId sets the AgreementId field's value. +func (s *DescribeAgreementOutput) SetAgreementId(v string) *DescribeAgreementOutput { + s.AgreementId = &v + return s +} + +// SetAgreementType sets the AgreementType field's value. +func (s *DescribeAgreementOutput) SetAgreementType(v string) *DescribeAgreementOutput { + s.AgreementType = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *DescribeAgreementOutput) SetEndTime(v time.Time) *DescribeAgreementOutput { + s.EndTime = &v + return s +} + +// SetEstimatedCharges sets the EstimatedCharges field's value. +func (s *DescribeAgreementOutput) SetEstimatedCharges(v *EstimatedCharges) *DescribeAgreementOutput { + s.EstimatedCharges = v + return s +} + +// SetProposalSummary sets the ProposalSummary field's value. +func (s *DescribeAgreementOutput) SetProposalSummary(v *ProposalSummary) *DescribeAgreementOutput { + s.ProposalSummary = v + return s +} + +// SetProposer sets the Proposer field's value. +func (s *DescribeAgreementOutput) SetProposer(v *Proposer) *DescribeAgreementOutput { + s.Proposer = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *DescribeAgreementOutput) SetStartTime(v time.Time) *DescribeAgreementOutput { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribeAgreementOutput) SetStatus(v string) *DescribeAgreementOutput { + s.Status = &v + return s +} + +// Defines the dimensions that the acceptor has purchased from the overall set +// of dimensions presented in the rate card. +type Dimension struct { + _ struct{} `type:"structure"` + + // The name of key value of the dimension. + // + // DimensionKey is a required field + DimensionKey *string `locationName:"dimensionKey" min:"1" type:"string" required:"true"` + + // The number of units of the dimension the acceptor has purchased. + // + // For Agreements with ConfigurableUpfrontPricingTerm, the RateCard section + // will define the prices and dimensions defined by the seller (proposer), whereas + // the Configuration section will define the actual dimensions, prices, and + // units the buyer has chosen to accept. + // + // DimensionValue is a required field + DimensionValue *int64 `locationName:"dimensionValue" type:"integer" 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 Dimension) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Dimension) GoString() string { + return s.String() +} + +// SetDimensionKey sets the DimensionKey field's value. +func (s *Dimension) SetDimensionKey(v string) *Dimension { + s.DimensionKey = &v + return s +} + +// SetDimensionValue sets the DimensionValue field's value. +func (s *Dimension) SetDimensionValue(v int64) *Dimension { + s.DimensionValue = &v + return s +} + +// Includes the list of references to legal resources proposed by the proposer +// to the acceptor. Each DocumentItem refers to an individual reference. +type DocumentItem struct { + _ struct{} `type:"structure"` + + // Category of the document. Document types include: + // + // * CustomEula – A custom EULA provided by you as seller. A URL for a + // EULA stored in an accessible Amazon S3 bucket is required for this document + // type. + // + // * CustomDsa – A custom Data Subscription Agreement (DSA) provided by + // you as seller. A URL for a DSA stored in an accessible Amazon S3 bucket + // is required for this document type. + // + // * StandardEula – The Standard Contract for AWS Marketplace (SCMP). For + // more information about SCMP, see the AWS Marketplace Seller Guide. You + // don’t provide a URL for this type because it’s managed by AWS Marketplace. + // + // * StandardDsa – DSA for AWS Marketplace. For more information about + // the DSA, see the AWS Data Exchange User Guide. You don’t provide a URL + // for this type because it’s managed by AWS Marketplace. + Type *string `locationName:"type" min:"1" type:"string"` + + // A URL to the legal document for buyers to read. Required when Type is CustomEula. + Url *string `locationName:"url" min:"1" type:"string"` + + // Version of standard contracts provided by AWS Marketplace. Required when + // Type is StandardEula or StandardDsa. + Version *string `locationName:"version" 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 DocumentItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentItem) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *DocumentItem) SetType(v string) *DocumentItem { + s.Type = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *DocumentItem) SetUrl(v string) *DocumentItem { + s.Url = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *DocumentItem) SetVersion(v string) *DocumentItem { + s.Version = &v + return s +} + +// Estimated cost of the agreement. +type EstimatedCharges struct { + _ struct{} `type:"structure"` + + // The total known amount customer has to pay across the lifecycle of the agreement. + // + // This is the total contract value if accepted terms contain ConfigurableUpfrontPricingTerm + // or FixedUpfrontPricingTerm. In the case of pure contract pricing, this will + // be the total value of the contract. In the case of contracts with consumption + // pricing, this will only include the committed value and not include any overages + // that occur. + // + // If the accepted terms contain PaymentScheduleTerm, it will be the total payment + // schedule amount. This occurs when flexible payment schedule is used, and + // is the sum of all invoice charges in the payment schedule. + // + // In case a customer has amended an agreement, by purchasing more units of + // any dimension, this will include both the original cost as well as the added + // cost incurred due to addition of new units. + // + // This is 0 if the accepted terms contain UsageBasedPricingTerm without ConfigurableUpfrontPricingTerm + // or RecurringPaymentTerm. This occurs for usage-based pricing (such as SaaS + // metered or AMI/container hourly or monthly), because the exact usage is not + // known upfront. + AgreementValue *string `locationName:"agreementValue" min:"1" type:"string"` + + // Defines the currency code for the charge. + CurrencyCode *string `locationName:"currencyCode" 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 EstimatedCharges) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EstimatedCharges) GoString() string { + return s.String() +} + +// SetAgreementValue sets the AgreementValue field's value. +func (s *EstimatedCharges) SetAgreementValue(v string) *EstimatedCharges { + s.AgreementValue = &v + return s +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *EstimatedCharges) SetCurrencyCode(v string) *EstimatedCharges { + s.CurrencyCode = &v + return s +} + +// The filter name and value pair that is used to return a more specific list +// of results. Filters can be used to match a set of resources by various criteria, +// such as offerId or productId. +type Filter struct { + _ struct{} `type:"structure"` + + // The name of the filter. + Name *string `locationName:"name" min:"1" type:"string"` + + // The filter value. + Values []*string `locationName:"values" 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 Filter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Filter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Filter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Filter"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *Filter) SetName(v string) *Filter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *Filter) SetValues(v []*string) *Filter { + s.Values = v + return s +} + +// Defines a prepaid pricing model where the customers are charged a fixed upfront +// amount. +type FixedUpfrontPricingTerm struct { + _ struct{} `type:"structure"` + + // Defines the currency for the prices mentioned in this term. + CurrencyCode *string `locationName:"currencyCode" min:"3" type:"string"` + + // Contract duration for the terms. + Duration *string `locationName:"duration" min:"1" type:"string"` + + // Entitlements granted to the acceptor of fixed upfront as part of agreement + // execution. + Grants []*GrantItem `locationName:"grants" type:"list"` + + // Fixed amount to be charged to the customer when this term is accepted. + Price *string `locationName:"price" min:"1" type:"string"` + + // Category of the term being updated. + Type *string `locationName:"type" 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 FixedUpfrontPricingTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FixedUpfrontPricingTerm) GoString() string { + return s.String() +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *FixedUpfrontPricingTerm) SetCurrencyCode(v string) *FixedUpfrontPricingTerm { + s.CurrencyCode = &v + return s +} + +// SetDuration sets the Duration field's value. +func (s *FixedUpfrontPricingTerm) SetDuration(v string) *FixedUpfrontPricingTerm { + s.Duration = &v + return s +} + +// SetGrants sets the Grants field's value. +func (s *FixedUpfrontPricingTerm) SetGrants(v []*GrantItem) *FixedUpfrontPricingTerm { + s.Grants = v + return s +} + +// SetPrice sets the Price field's value. +func (s *FixedUpfrontPricingTerm) SetPrice(v string) *FixedUpfrontPricingTerm { + s.Price = &v + return s +} + +// SetType sets the Type field's value. +func (s *FixedUpfrontPricingTerm) SetType(v string) *FixedUpfrontPricingTerm { + s.Type = &v + return s +} + +// Defines a short-term free pricing model where the buyers aren’t charged +// anything within a specified limit. +type FreeTrialPricingTerm struct { + _ struct{} `type:"structure"` + + // Duration of the free trial period (5–31 days). + Duration *string `locationName:"duration" min:"1" type:"string"` + + // Entitlements granted to the acceptor of a free trial as part of an agreement + // execution. + Grants []*GrantItem `locationName:"grants" type:"list"` + + // Category of the term. + Type *string `locationName:"type" 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 FreeTrialPricingTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FreeTrialPricingTerm) GoString() string { + return s.String() +} + +// SetDuration sets the Duration field's value. +func (s *FreeTrialPricingTerm) SetDuration(v string) *FreeTrialPricingTerm { + s.Duration = &v + return s +} + +// SetGrants sets the Grants field's value. +func (s *FreeTrialPricingTerm) SetGrants(v []*GrantItem) *FreeTrialPricingTerm { + s.Grants = v + return s +} + +// SetType sets the Type field's value. +func (s *FreeTrialPricingTerm) SetType(v string) *FreeTrialPricingTerm { + s.Type = &v + return s +} + +type GetAgreementTermsInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the agreement. + // + // AgreementId is a required field + AgreementId *string `locationName:"agreementId" min:"1" type:"string" required:"true"` + + // The maximum number of agreements to return in the response. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to specify where to start pagination + 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 GetAgreementTermsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgreementTermsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAgreementTermsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAgreementTermsInput"} + if s.AgreementId == nil { + invalidParams.Add(request.NewErrParamRequired("AgreementId")) + } + if s.AgreementId != nil && len(*s.AgreementId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgreementId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgreementId sets the AgreementId field's value. +func (s *GetAgreementTermsInput) SetAgreementId(v string) *GetAgreementTermsInput { + s.AgreementId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetAgreementTermsInput) SetMaxResults(v int64) *GetAgreementTermsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetAgreementTermsInput) SetNextToken(v string) *GetAgreementTermsInput { + s.NextToken = &v + return s +} + +type GetAgreementTermsOutput struct { + _ struct{} `type:"structure"` + + // A subset of terms proposed by the proposer that have been accepted by the + // acceptor as part of the agreement creation. + AcceptedTerms []*AcceptedTerm `locationName:"acceptedTerms" type:"list"` + + // A token to specify where to start pagination + 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 GetAgreementTermsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAgreementTermsOutput) GoString() string { + return s.String() +} + +// SetAcceptedTerms sets the AcceptedTerms field's value. +func (s *GetAgreementTermsOutput) SetAcceptedTerms(v []*AcceptedTerm) *GetAgreementTermsOutput { + s.AcceptedTerms = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetAgreementTermsOutput) SetNextToken(v string) *GetAgreementTermsOutput { + s.NextToken = &v + return s +} + +// Entitlements granted to the acceptor of fixed upfront as part of agreement +// execution. +type GrantItem struct { + _ struct{} `type:"structure"` + + // Unique dimension key defined in the product document. Dimensions represent + // categories of capacity in a product and are specified when the product is + // listed in AWS Marketplace. + DimensionKey *string `locationName:"dimensionKey" min:"1" type:"string"` + + // Maximum amount of capacity that the buyer can be entitled to the given dimension + // of the product. If MaxQuantity is not provided, the buyer will be able to + // use an unlimited amount of the given dimension. + MaxQuantity *int64 `locationName:"maxQuantity" min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrantItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrantItem) GoString() string { + return s.String() +} + +// SetDimensionKey sets the DimensionKey field's value. +func (s *GrantItem) SetDimensionKey(v string) *GrantItem { + s.DimensionKey = &v + return s +} + +// SetMaxQuantity sets the MaxQuantity field's value. +func (s *GrantItem) SetMaxQuantity(v int64) *GrantItem { + s.MaxQuantity = &v + return s +} + +// Unexpected error during processing of request. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The unique identifier for the error. + RequestId *string `locationName:"requestId" 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 InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Defines the list of text agreements proposed to the acceptors. An example +// is the end user license agreement (EULA). +type LegalTerm struct { + _ struct{} `type:"structure"` + + // List of references to legal resources proposed to the buyers. An example + // is the EULA. + Documents []*DocumentItem `locationName:"documents" type:"list"` + + // Category of the term being updated. + Type *string `locationName:"type" 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 LegalTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LegalTerm) GoString() string { + return s.String() +} + +// SetDocuments sets the Documents field's value. +func (s *LegalTerm) SetDocuments(v []*DocumentItem) *LegalTerm { + s.Documents = v + return s +} + +// SetType sets the Type field's value. +func (s *LegalTerm) SetType(v string) *LegalTerm { + s.Type = &v + return s +} + +// Defines an installment-based pricing model where customers are charged a +// fixed price on different dates during the agreement validity period. This +// is used most commonly for flexible payment schedule pricing. +type PaymentScheduleTerm struct { + _ struct{} `type:"structure"` + + // Defines the currency for the prices mentioned in the term. + CurrencyCode *string `locationName:"currencyCode" min:"3" type:"string"` + + // List of the payment schedule where each element defines one installment of + // payment. It contains the information necessary for calculating the price. + Schedule []*ScheduleItem `locationName:"schedule" type:"list"` + + // Type of the term. + Type *string `locationName:"type" 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 PaymentScheduleTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PaymentScheduleTerm) GoString() string { + return s.String() +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *PaymentScheduleTerm) SetCurrencyCode(v string) *PaymentScheduleTerm { + s.CurrencyCode = &v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *PaymentScheduleTerm) SetSchedule(v []*ScheduleItem) *PaymentScheduleTerm { + s.Schedule = v + return s +} + +// SetType sets the Type field's value. +func (s *PaymentScheduleTerm) SetType(v string) *PaymentScheduleTerm { + s.Type = &v + return s +} + +// A summary of the proposal received from the proposer. +type ProposalSummary struct { + _ struct{} `type:"structure"` + + // The unique identifier of the offer in AWS Marketplace. + OfferId *string `locationName:"offerId" min:"1" type:"string"` + + // The list of resources involved in the agreement. + Resources []*Resource `locationName:"resources" 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 ProposalSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProposalSummary) GoString() string { + return s.String() +} + +// SetOfferId sets the OfferId field's value. +func (s *ProposalSummary) SetOfferId(v string) *ProposalSummary { + s.OfferId = &v + return s +} + +// SetResources sets the Resources field's value. +func (s *ProposalSummary) SetResources(v []*Resource) *ProposalSummary { + s.Resources = v + return s +} + +// Details of the party proposing the agreement terms,. This is commonly the +// seller for PurchaseAgreement. +type Proposer struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the proposer. + AccountId *string `locationName:"accountId" 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 Proposer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Proposer) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *Proposer) SetAccountId(v string) *Proposer { + s.AccountId = &v + return s +} + +// Defines the per unit rates for each individual product dimension. +type RateCardItem struct { + _ struct{} `type:"structure"` + + // Dimension for which the given entitlement applies. Dimensions represent categories + // of capacity in a product and are specified when the product is listed in + // AWS Marketplace. + DimensionKey *string `locationName:"dimensionKey" min:"1" type:"string"` + + // Per unit price for the product dimension that’s used for calculating the + // amount to be charged. + Price *string `locationName:"price" 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 RateCardItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RateCardItem) GoString() string { + return s.String() +} + +// SetDimensionKey sets the DimensionKey field's value. +func (s *RateCardItem) SetDimensionKey(v string) *RateCardItem { + s.DimensionKey = &v + return s +} + +// SetPrice sets the Price field's value. +func (s *RateCardItem) SetPrice(v string) *RateCardItem { + s.Price = &v + return s +} + +// Defines a pricing model where customers are charged a fixed recurring price +// at the end of each billing period. +type RecurringPaymentTerm struct { + _ struct{} `type:"structure"` + + // Defines the recurrence at which buyers are charged. + BillingPeriod *string `locationName:"billingPeriod" min:"1" type:"string"` + + // Defines the currency for the prices mentioned in this term. + CurrencyCode *string `locationName:"currencyCode" min:"3" type:"string"` + + // Amount charged to the buyer every billing period. + Price *string `locationName:"price" min:"1" type:"string"` + + // Type of the term being updated. + Type *string `locationName:"type" 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 RecurringPaymentTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecurringPaymentTerm) GoString() string { + return s.String() +} + +// SetBillingPeriod sets the BillingPeriod field's value. +func (s *RecurringPaymentTerm) SetBillingPeriod(v string) *RecurringPaymentTerm { + s.BillingPeriod = &v + return s +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *RecurringPaymentTerm) SetCurrencyCode(v string) *RecurringPaymentTerm { + s.CurrencyCode = &v + return s +} + +// SetPrice sets the Price field's value. +func (s *RecurringPaymentTerm) SetPrice(v string) *RecurringPaymentTerm { + s.Price = &v + return s +} + +// SetType sets the Type field's value. +func (s *RecurringPaymentTerm) SetType(v string) *RecurringPaymentTerm { + s.Type = &v + return s +} + +// Defines that on graceful expiration of the agreement (when the agreement +// ends on its pre-defined end date), a new agreement will be created using +// the accepted terms on the existing agreement. In other words, the agreement +// will be renewed. The presence of RenewalTerm in the offer document means +// that auto-renewal is allowed. Buyers will have the option to accept or decline +// auto-renewal at the offer acceptance/agreement creation. Buyers can also +// change this flag from True to False or False to True at anytime during the +// agreement's lifecycle. +type RenewalTerm struct { + _ struct{} `type:"structure"` + + // Additional parameters specified by the acceptor while accepting the term. + Configuration *RenewalTermConfiguration `locationName:"configuration" type:"structure"` + + // Category of the term being updated. + Type *string `locationName:"type" 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 RenewalTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RenewalTerm) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *RenewalTerm) SetConfiguration(v *RenewalTermConfiguration) *RenewalTerm { + s.Configuration = v + return s +} + +// SetType sets the Type field's value. +func (s *RenewalTerm) SetType(v string) *RenewalTerm { + s.Type = &v + return s +} + +// Additional parameters specified by the acceptor while accepting the term. +type RenewalTermConfiguration struct { + _ struct{} `type:"structure"` + + // Defines whether the acceptor has chosen to auto-renew the agreement at the + // end of its lifecycle. Can be set to True or False. + // + // EnableAutoRenew is a required field + EnableAutoRenew *bool `locationName:"enableAutoRenew" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RenewalTermConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RenewalTermConfiguration) GoString() string { + return s.String() +} + +// SetEnableAutoRenew sets the EnableAutoRenew field's value. +func (s *RenewalTermConfiguration) SetEnableAutoRenew(v bool) *RenewalTermConfiguration { + s.EnableAutoRenew = &v + return s +} + +// The list of resources involved in the agreement. +type Resource struct { + _ struct{} `type:"structure"` + + // The unique identifier of the resource. + // + // We mention the term resource, which is most commonly a product, so a resourceId + // is also a productId. + Id *string `locationName:"id" min:"1" type:"string"` + + // Type of the resource, which is the product. Values include SaaSProduct or + // AmiProduct. + Type *string `locationName:"type" 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 Resource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Resource) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *Resource) SetId(v string) *Resource { + s.Id = &v + return s +} + +// SetType sets the Type field's value. +func (s *Resource) SetType(v string) *Resource { + s.Type = &v + return s +} + +// Request references a resource which does not exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The unique identifier for the error. + RequestId *string `locationName:"requestId" min:"1" type:"string"` + + // The unique identifier for the resource. + ResourceId *string `locationName:"resourceId" min:"1" type:"string"` + + // The type of resource. + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API 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 +} + +// An individual installment of the payment that includes the date and amount +// of the charge. +type ScheduleItem struct { + _ struct{} `type:"structure"` + + // The price that the customer would pay on the scheduled date (chargeDate). + ChargeAmount *string `locationName:"chargeAmount" min:"1" type:"string"` + + // The date that the customer would pay the price defined in this payment schedule + // term. Invoices are generated on the date provided. + ChargeDate *time.Time `locationName:"chargeDate" 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 ScheduleItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScheduleItem) GoString() string { + return s.String() +} + +// SetChargeAmount sets the ChargeAmount field's value. +func (s *ScheduleItem) SetChargeAmount(v string) *ScheduleItem { + s.ChargeAmount = &v + return s +} + +// SetChargeDate sets the ChargeDate field's value. +func (s *ScheduleItem) SetChargeDate(v time.Time) *ScheduleItem { + s.ChargeDate = &v + return s +} + +type SearchAgreementsInput struct { + _ struct{} `type:"structure"` + + // The catalog in which the agreement was created. + Catalog *string `locationName:"catalog" min:"1" type:"string"` + + // The filter name and value pair used to return a specific list of results. + // + // The following filters are supported: + // + // * ResourceIdentifier – The unique identifier of the resource. + // + // * ResourceType – Type of the resource, which is the product (AmiProduct, + // ContainerProduct, or SaaSProduct). + // + // * PartyType – The party type (either Acceptor or Proposer) of the caller. + // For agreements where the caller is the proposer, use the Proposer filter. + // For agreements where the caller is the acceptor, use the Acceptor filter. + // + // * AcceptorAccountId – The AWS account ID of the party accepting the + // agreement terms. + // + // * OfferId – The unique identifier of the offer in which the terms are + // registered in the agreement token. + // + // * Status – The current status of the agreement. Values include ACTIVE, + // ARCHIVED, CANCELLED, EXPIRED, RENEWED, REPLACED, and TERMINATED. + // + // * BeforeEndTime – A date used to filter agreements with a date before + // the endTime of an agreement. + // + // * AfterEndTime – A date used to filter agreements with a date after + // the endTime of an agreement. + // + // * AgreementType – The type of agreement. Values include PurchaseAgreement + // or VendorInsightsAgreement. + Filters []*Filter `locationName:"filters" min:"1" type:"list"` + + // The maximum number of agreements to return in the response. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to specify where to start pagination. + NextToken *string `locationName:"nextToken" type:"string"` + + // An object that contains the SortBy and SortOrder attributes. + Sort *Sort `locationName:"sort" 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 SearchAgreementsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchAgreementsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchAgreementsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchAgreementsInput"} + if s.Catalog != nil && len(*s.Catalog) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Catalog", 1)) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Sort != nil { + if err := s.Sort.Validate(); err != nil { + invalidParams.AddNested("Sort", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalog sets the Catalog field's value. +func (s *SearchAgreementsInput) SetCatalog(v string) *SearchAgreementsInput { + s.Catalog = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *SearchAgreementsInput) SetFilters(v []*Filter) *SearchAgreementsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchAgreementsInput) SetMaxResults(v int64) *SearchAgreementsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchAgreementsInput) SetNextToken(v string) *SearchAgreementsInput { + s.NextToken = &v + return s +} + +// SetSort sets the Sort field's value. +func (s *SearchAgreementsInput) SetSort(v *Sort) *SearchAgreementsInput { + s.Sort = v + return s +} + +type SearchAgreementsOutput struct { + _ struct{} `type:"structure"` + + // A summary of the agreement, including top-level attributes (for example, + // the agreement ID, version, proposer, and acceptor). + AgreementViewSummaries []*AgreementViewSummary `locationName:"agreementViewSummaries" type:"list"` + + // The token used for pagination. The field is null if there are no more results. + 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 SearchAgreementsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchAgreementsOutput) GoString() string { + return s.String() +} + +// SetAgreementViewSummaries sets the AgreementViewSummaries field's value. +func (s *SearchAgreementsOutput) SetAgreementViewSummaries(v []*AgreementViewSummary) *SearchAgreementsOutput { + s.AgreementViewSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchAgreementsOutput) SetNextToken(v string) *SearchAgreementsOutput { + s.NextToken = &v + return s +} + +// Differentiates between the mutually exclusive rate cards in the same pricing +// term to be selected by the buyer. +type Selector struct { + _ struct{} `type:"structure"` + + // Category of selector. + Type *string `locationName:"type" min:"1" type:"string"` + + // Contract duration. This field supports the ISO 8601 format. + Value *string `locationName:"value" 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 Selector) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Selector) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *Selector) SetType(v string) *Selector { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Selector) SetValue(v string) *Selector { + s.Value = &v + return s +} + +// An object that contains the SortBy and SortOrder attributes. +type Sort struct { + _ struct{} `type:"structure"` + + // The attribute on which the data is grouped, which can be by StartTime and + // EndTime. The default value is EndTime. + SortBy *string `locationName:"sortBy" min:"1" type:"string"` + + // The sorting order, which can be ASCENDING or DESCENDING. The default value + // is DESCENDING. + SortOrder *string `locationName:"sortOrder" type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Sort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Sort) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Sort) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Sort"} + if s.SortBy != nil && len(*s.SortBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SortBy", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSortBy sets the SortBy field's value. +func (s *Sort) SetSortBy(v string) *Sort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *Sort) SetSortOrder(v string) *Sort { + s.SortOrder = &v + return s +} + +// Defines the customer support available for the acceptors when they purchase +// the software. +type SupportTerm struct { + _ struct{} `type:"structure"` + + // Free-text field about the refund policy description that will be shown to + // customers as is on the website and console. + RefundPolicy *string `locationName:"refundPolicy" min:"1" type:"string"` + + // Category of the term being updated. + Type *string `locationName:"type" 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 SupportTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SupportTerm) GoString() string { + return s.String() +} + +// SetRefundPolicy sets the RefundPolicy field's value. +func (s *SupportTerm) SetRefundPolicy(v string) *SupportTerm { + s.RefundPolicy = &v + return s +} + +// SetType sets the Type field's value. +func (s *SupportTerm) SetType(v string) *SupportTerm { + s.Type = &v + return s +} + +// Request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The unique identifier for the error. + RequestId *string `locationName:"requestId" 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 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 +} + +// Defines a usage-based pricing model (typically, pay-as-you-go pricing), where +// the customers are charged based on product usage. +type UsageBasedPricingTerm struct { + _ struct{} `type:"structure"` + + // Defines the currency for the prices mentioned in the term. + CurrencyCode *string `locationName:"currencyCode" min:"3" type:"string"` + + // List of rate cards. + RateCards []*UsageBasedRateCardItem `locationName:"rateCards" type:"list"` + + // Category of the term. + Type *string `locationName:"type" 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 UsageBasedPricingTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UsageBasedPricingTerm) GoString() string { + return s.String() +} + +// SetCurrencyCode sets the CurrencyCode field's value. +func (s *UsageBasedPricingTerm) SetCurrencyCode(v string) *UsageBasedPricingTerm { + s.CurrencyCode = &v + return s +} + +// SetRateCards sets the RateCards field's value. +func (s *UsageBasedPricingTerm) SetRateCards(v []*UsageBasedRateCardItem) *UsageBasedPricingTerm { + s.RateCards = v + return s +} + +// SetType sets the Type field's value. +func (s *UsageBasedPricingTerm) SetType(v string) *UsageBasedPricingTerm { + s.Type = &v + return s +} + +// Within the pay-as-you-go model defined under UsageBasedPricingTerm, the UsageBasedRateCardItem +// defines an individual rate for a product dimension. +type UsageBasedRateCardItem struct { + _ struct{} `type:"structure"` + + // Defines the per unit rates for product dimensions. + RateCard []*RateCardItem `locationName:"rateCard" 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 UsageBasedRateCardItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UsageBasedRateCardItem) GoString() string { + return s.String() +} + +// SetRateCard sets the RateCard field's value. +func (s *UsageBasedRateCardItem) SetRateCard(v []*RateCardItem) *UsageBasedRateCardItem { + s.RateCard = v + return s +} + +// The input fails to satisfy the constraints specified by the service. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The fields associated with the error. + Fields []*ValidationExceptionField `locationName:"fields" type:"list"` + + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The reason associated with the error. + Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"` + + // The unique identifier associated with the error. + RequestId *string `locationName:"requestId" 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 ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input fails to satisfy the constraints specified by the service. +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // See applicable actions. + // + // Message is a required field + Message *string `locationName:"message" min:"1" type:"string" required:"true"` + + // The name of the field associated with the error. + // + // Name is a required field + Name *string `locationName:"name" 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 ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +// Defines the conditions that will keep an agreement created from this offer +// valid. +type ValidityTerm struct { + _ struct{} `type:"structure"` + + // Defines the duration that the agreement remains active. If AgreementStartDate + // isn’t provided, the agreement duration is relative to the agreement signature + // time. The duration is represented in the ISO_8601 format. + AgreementDuration *string `locationName:"agreementDuration" min:"1" type:"string"` + + // Defines the date when the agreement ends. The agreement ends at 23:59:59.999 + // UTC on the date provided. If AgreementEndDate isn’t provided, the agreement + // end date is determined by the validity of individual terms. + AgreementEndDate *time.Time `locationName:"agreementEndDate" type:"timestamp"` + + // Defines the date when agreement starts. The agreement starts at 00:00:00.000 + // UTC on the date provided. If AgreementStartDate isn’t provided, the agreement + // start date is determined based on agreement signature time. + AgreementStartDate *time.Time `locationName:"agreementStartDate" type:"timestamp"` + + // Category of the term being updated. + Type *string `locationName:"type" 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 ValidityTerm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidityTerm) GoString() string { + return s.String() +} + +// SetAgreementDuration sets the AgreementDuration field's value. +func (s *ValidityTerm) SetAgreementDuration(v string) *ValidityTerm { + s.AgreementDuration = &v + return s +} + +// SetAgreementEndDate sets the AgreementEndDate field's value. +func (s *ValidityTerm) SetAgreementEndDate(v time.Time) *ValidityTerm { + s.AgreementEndDate = &v + return s +} + +// SetAgreementStartDate sets the AgreementStartDate field's value. +func (s *ValidityTerm) SetAgreementStartDate(v time.Time) *ValidityTerm { + s.AgreementStartDate = &v + return s +} + +// SetType sets the Type field's value. +func (s *ValidityTerm) SetType(v string) *ValidityTerm { + s.Type = &v + return s +} + +const ( + // AgreementStatusActive is a AgreementStatus enum value + AgreementStatusActive = "ACTIVE" + + // AgreementStatusArchived is a AgreementStatus enum value + AgreementStatusArchived = "ARCHIVED" + + // AgreementStatusCancelled is a AgreementStatus enum value + AgreementStatusCancelled = "CANCELLED" + + // AgreementStatusExpired is a AgreementStatus enum value + AgreementStatusExpired = "EXPIRED" + + // AgreementStatusRenewed is a AgreementStatus enum value + AgreementStatusRenewed = "RENEWED" + + // AgreementStatusReplaced is a AgreementStatus enum value + AgreementStatusReplaced = "REPLACED" + + // AgreementStatusRolledBack is a AgreementStatus enum value + AgreementStatusRolledBack = "ROLLED_BACK" + + // AgreementStatusSuperseded is a AgreementStatus enum value + AgreementStatusSuperseded = "SUPERSEDED" + + // AgreementStatusTerminated is a AgreementStatus enum value + AgreementStatusTerminated = "TERMINATED" +) + +// AgreementStatus_Values returns all elements of the AgreementStatus enum +func AgreementStatus_Values() []string { + return []string{ + AgreementStatusActive, + AgreementStatusArchived, + AgreementStatusCancelled, + AgreementStatusExpired, + AgreementStatusRenewed, + AgreementStatusReplaced, + AgreementStatusRolledBack, + AgreementStatusSuperseded, + AgreementStatusTerminated, + } +} + +const ( + // ResourceTypeAgreement is a ResourceType enum value + ResourceTypeAgreement = "Agreement" +) + +// ResourceType_Values returns all elements of the ResourceType enum +func ResourceType_Values() []string { + return []string{ + ResourceTypeAgreement, + } +} + +const ( + // SortOrderAscending is a SortOrder enum value + SortOrderAscending = "ASCENDING" + + // SortOrderDescending is a SortOrder enum value + SortOrderDescending = "DESCENDING" +) + +// SortOrder_Values returns all elements of the SortOrder enum +func SortOrder_Values() []string { + return []string{ + SortOrderAscending, + SortOrderDescending, + } +} + +const ( + // ValidationExceptionReasonInvalidAgreementId is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidAgreementId = "INVALID_AGREEMENT_ID" + + // ValidationExceptionReasonMissingAgreementId is a ValidationExceptionReason enum value + ValidationExceptionReasonMissingAgreementId = "MISSING_AGREEMENT_ID" + + // ValidationExceptionReasonInvalidCatalog is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidCatalog = "INVALID_CATALOG" + + // ValidationExceptionReasonInvalidFilterName is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidFilterName = "INVALID_FILTER_NAME" + + // ValidationExceptionReasonInvalidFilterValues is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidFilterValues = "INVALID_FILTER_VALUES" + + // ValidationExceptionReasonInvalidSortBy is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidSortBy = "INVALID_SORT_BY" + + // ValidationExceptionReasonInvalidSortOrder is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidSortOrder = "INVALID_SORT_ORDER" + + // ValidationExceptionReasonInvalidNextToken is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidNextToken = "INVALID_NEXT_TOKEN" + + // ValidationExceptionReasonInvalidMaxResults is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidMaxResults = "INVALID_MAX_RESULTS" + + // ValidationExceptionReasonUnsupportedFilters is a ValidationExceptionReason enum value + ValidationExceptionReasonUnsupportedFilters = "UNSUPPORTED_FILTERS" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "OTHER" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonInvalidAgreementId, + ValidationExceptionReasonMissingAgreementId, + ValidationExceptionReasonInvalidCatalog, + ValidationExceptionReasonInvalidFilterName, + ValidationExceptionReasonInvalidFilterValues, + ValidationExceptionReasonInvalidSortBy, + ValidationExceptionReasonInvalidSortOrder, + ValidationExceptionReasonInvalidNextToken, + ValidationExceptionReasonInvalidMaxResults, + ValidationExceptionReasonUnsupportedFilters, + ValidationExceptionReasonOther, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,46 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package marketplaceagreement provides the client and types for making API +// requests to AWS Marketplace Agreement Service. +// +// AWS Marketplace is a curated digital catalog that customers can use to find, +// buy, deploy, and manage third-party software, data, and services to build +// solutions and run their businesses. The AWS Marketplace Agreement Service +// provides an API interface that helps AWS Marketplace sellers manage their +// product-related agreements, including listing, searching, and filtering agreements. +// +// To manage agreements in AWS Marketplace, you must ensure that your AWS Identity +// and Access Management (IAM) policies and roles are set up. The user must +// have the required policies/permissions that allow them to carry out the actions +// in AWS: +// +// - DescribeAgreement – Grants permission to users to obtain detailed +// meta data about any of their agreements. +// +// - GetAgreementTerms – Grants permission to users to obtain details about +// the terms of an agreement. +// +// - SearchAgreements – Grants permission to users to search through all +// their agreements. +// +// See https://docs.aws.amazon.com/goto/WebAPI/marketplace-agreement-2020-03-01 for more information on this service. +// +// See marketplaceagreement package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/marketplaceagreement/ +// +// # Using the Client +// +// To contact AWS Marketplace Agreement Service with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Marketplace Agreement Service client MarketplaceAgreement for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/marketplaceagreement/#New +package marketplaceagreement diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,48 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package marketplaceagreement + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // User does not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // Unexpected error during processing of request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Request references a resource which does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // Request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by the service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/marketplaceagreementiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/marketplaceagreementiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/marketplaceagreementiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/marketplaceagreementiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,82 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package marketplaceagreementiface provides an interface to enable mocking the AWS Marketplace Agreement Service 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 marketplaceagreementiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/marketplaceagreement" +) + +// MarketplaceAgreementAPI provides an interface to enable mocking the +// marketplaceagreement.MarketplaceAgreement service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Marketplace Agreement Service. +// func myFunc(svc marketplaceagreementiface.MarketplaceAgreementAPI) bool { +// // Make svc.DescribeAgreement request +// } +// +// func main() { +// sess := session.New() +// svc := marketplaceagreement.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockMarketplaceAgreementClient struct { +// marketplaceagreementiface.MarketplaceAgreementAPI +// } +// func (m *mockMarketplaceAgreementClient) DescribeAgreement(input *marketplaceagreement.DescribeAgreementInput) (*marketplaceagreement.DescribeAgreementOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockMarketplaceAgreementClient{} +// +// 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 MarketplaceAgreementAPI interface { + DescribeAgreement(*marketplaceagreement.DescribeAgreementInput) (*marketplaceagreement.DescribeAgreementOutput, error) + DescribeAgreementWithContext(aws.Context, *marketplaceagreement.DescribeAgreementInput, ...request.Option) (*marketplaceagreement.DescribeAgreementOutput, error) + DescribeAgreementRequest(*marketplaceagreement.DescribeAgreementInput) (*request.Request, *marketplaceagreement.DescribeAgreementOutput) + + GetAgreementTerms(*marketplaceagreement.GetAgreementTermsInput) (*marketplaceagreement.GetAgreementTermsOutput, error) + GetAgreementTermsWithContext(aws.Context, *marketplaceagreement.GetAgreementTermsInput, ...request.Option) (*marketplaceagreement.GetAgreementTermsOutput, error) + GetAgreementTermsRequest(*marketplaceagreement.GetAgreementTermsInput) (*request.Request, *marketplaceagreement.GetAgreementTermsOutput) + + GetAgreementTermsPages(*marketplaceagreement.GetAgreementTermsInput, func(*marketplaceagreement.GetAgreementTermsOutput, bool) bool) error + GetAgreementTermsPagesWithContext(aws.Context, *marketplaceagreement.GetAgreementTermsInput, func(*marketplaceagreement.GetAgreementTermsOutput, bool) bool, ...request.Option) error + + SearchAgreements(*marketplaceagreement.SearchAgreementsInput) (*marketplaceagreement.SearchAgreementsOutput, error) + SearchAgreementsWithContext(aws.Context, *marketplaceagreement.SearchAgreementsInput, ...request.Option) (*marketplaceagreement.SearchAgreementsOutput, error) + SearchAgreementsRequest(*marketplaceagreement.SearchAgreementsInput) (*request.Request, *marketplaceagreement.SearchAgreementsOutput) + + SearchAgreementsPages(*marketplaceagreement.SearchAgreementsInput, func(*marketplaceagreement.SearchAgreementsOutput, bool) bool) error + SearchAgreementsPagesWithContext(aws.Context, *marketplaceagreement.SearchAgreementsInput, func(*marketplaceagreement.SearchAgreementsOutput, bool) bool, ...request.Option) error +} + +var _ MarketplaceAgreementAPI = (*marketplaceagreement.MarketplaceAgreement)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/service.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceagreement/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceagreement/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package marketplaceagreement + +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" +) + +// MarketplaceAgreement provides the API operation methods for making requests to +// AWS Marketplace Agreement Service. See this package's package overview docs +// for details on the service. +// +// MarketplaceAgreement methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type MarketplaceAgreement 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 = "Marketplace Agreement" // Name of service. + EndpointsID = "agreement-marketplace" // ID to lookup a service endpoint with. + ServiceID = "Marketplace Agreement" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the MarketplaceAgreement 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 MarketplaceAgreement client from just a session. +// svc := marketplaceagreement.New(mySession) +// +// // Create a MarketplaceAgreement client with additional configuration +// svc := marketplaceagreement.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *MarketplaceAgreement { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "aws-marketplace" + } + 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) *MarketplaceAgreement { + svc := &MarketplaceAgreement{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2020-03-01", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "AWSMPCommerceService_v20200301", + }, + 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 MarketplaceAgreement operation and runs any +// custom request initialization. +func (c *MarketplaceAgreement) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacecatalog/api.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacecatalog/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacecatalog/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacecatalog/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -163,7 +163,7 @@ // DeleteResourcePolicy API operation for AWS Marketplace Catalog Service. // -// Deletes a resource-based policy on an Entity that is identified by its resource +// Deletes a resource-based policy on an entity that is identified by its resource // ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -470,7 +470,7 @@ // GetResourcePolicy API operation for AWS Marketplace Catalog Service. // -// Gets a resource-based policy of an Entity that is identified by its resource +// Gets a resource-based policy of an entity that is identified by its resource // ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -992,7 +992,7 @@ // PutResourcePolicy API operation for AWS Marketplace Catalog Service. // -// Attaches a resource-based policy to an Entity. Examples of an entity include: +// Attaches a resource-based policy to an entity. Examples of an entity include: // AmiProduct and ContainerProduct. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1108,10 +1108,10 @@ // // For more information about working with change sets, see Working with change // sets (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html#working-with-change-sets). -// For information on change types for single-AMI products, see Working with +// For information about change types for single-AMI products, see Working with // single-AMI products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/ami-products.html#working-with-single-AMI-products). -// Als, for more information on change types available for container-based products, -// see Working with container products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/container-products.html#working-with-container-products). +// Also, for more information about change types available for container-based +// products, see Working with container products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/container-products.html#working-with-container-products). // // 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 @@ -1447,6 +1447,434 @@ return s.RespMetadata.RequestID } +// Object that allows filtering on entity id of an AMI product. +type AmiProductEntityIdFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique entity id values to be filtered on. + ValueList []*string `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 AmiProductEntityIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductEntityIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmiProductEntityIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmiProductEntityIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *AmiProductEntityIdFilter) SetValueList(v []*string) *AmiProductEntityIdFilter { + s.ValueList = v + return s +} + +// Object containing all the filter fields for AMI products. Client can add +// a maximum of 8 filters in a single ListEntities request. +type AmiProductFilters struct { + _ struct{} `type:"structure"` + + // Unique identifier for the AMI product. + EntityId *AmiProductEntityIdFilter `type:"structure"` + + // The last date on which the AMI product was modified. + LastModifiedDate *AmiProductLastModifiedDateFilter `type:"structure"` + + // The title of the AMI product. + ProductTitle *AmiProductTitleFilter `type:"structure"` + + // The visibility of the AMI product. + Visibility *AmiProductVisibilityFilter `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 AmiProductFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmiProductFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmiProductFilters"} + if s.EntityId != nil { + if err := s.EntityId.Validate(); err != nil { + invalidParams.AddNested("EntityId", err.(request.ErrInvalidParams)) + } + } + if s.LastModifiedDate != nil { + if err := s.LastModifiedDate.Validate(); err != nil { + invalidParams.AddNested("LastModifiedDate", err.(request.ErrInvalidParams)) + } + } + if s.ProductTitle != nil { + if err := s.ProductTitle.Validate(); err != nil { + invalidParams.AddNested("ProductTitle", err.(request.ErrInvalidParams)) + } + } + if s.Visibility != nil { + if err := s.Visibility.Validate(); err != nil { + invalidParams.AddNested("Visibility", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntityId sets the EntityId field's value. +func (s *AmiProductFilters) SetEntityId(v *AmiProductEntityIdFilter) *AmiProductFilters { + s.EntityId = v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *AmiProductFilters) SetLastModifiedDate(v *AmiProductLastModifiedDateFilter) *AmiProductFilters { + s.LastModifiedDate = v + return s +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *AmiProductFilters) SetProductTitle(v *AmiProductTitleFilter) *AmiProductFilters { + s.ProductTitle = v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *AmiProductFilters) SetVisibility(v *AmiProductVisibilityFilter) *AmiProductFilters { + s.Visibility = v + return s +} + +// Object that allows filtering based on the last modified date of AMI products. +type AmiProductLastModifiedDateFilter struct { + _ struct{} `type:"structure"` + + // Dates between which the AMI product was last modified. + DateRange *AmiProductLastModifiedDateFilterDateRange `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 AmiProductLastModifiedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductLastModifiedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmiProductLastModifiedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmiProductLastModifiedDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *AmiProductLastModifiedDateFilter) SetDateRange(v *AmiProductLastModifiedDateFilterDateRange) *AmiProductLastModifiedDateFilter { + s.DateRange = v + return s +} + +// Object that contains date range of the last modified date to be filtered +// on. You can optionally provide a BeforeValue and/or AfterValue. Both are +// inclusive. +type AmiProductLastModifiedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Date after which the AMI product was last modified. + AfterValue *string `min:"20" type:"string"` + + // Date before which the AMI product was last modified. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductLastModifiedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductLastModifiedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmiProductLastModifiedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmiProductLastModifiedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *AmiProductLastModifiedDateFilterDateRange) SetAfterValue(v string) *AmiProductLastModifiedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *AmiProductLastModifiedDateFilterDateRange) SetBeforeValue(v string) *AmiProductLastModifiedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Objects that allows sorting on AMI products based on certain fields and sorting +// order. +type AmiProductSort struct { + _ struct{} `type:"structure"` + + // Field to sort the AMI products by. + SortBy *string `type:"string" enum:"AmiProductSortBy"` + + // The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductSort) GoString() string { + return s.String() +} + +// SetSortBy sets the SortBy field's value. +func (s *AmiProductSort) SetSortBy(v string) *AmiProductSort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *AmiProductSort) SetSortOrder(v string) *AmiProductSort { + s.SortOrder = &v + return s +} + +// Object that contains summarized information about an AMI product. +type AmiProductSummary struct { + _ struct{} `type:"structure"` + + // The title of the AMI product. + ProductTitle *string `min:"1" type:"string"` + + // The lifecycle of the AMI product. + Visibility *string `type:"string" enum:"AmiProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductSummary) GoString() string { + return s.String() +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *AmiProductSummary) SetProductTitle(v string) *AmiProductSummary { + s.ProductTitle = &v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *AmiProductSummary) SetVisibility(v string) *AmiProductSummary { + s.Visibility = &v + return s +} + +// Object that allows filtering on product title. +type AmiProductTitleFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique product title values to be filtered on. + ValueList []*string `min:"1" type:"list"` + + // A string that will be the wildCard input for product tile filter. It matches + // the provided value as a substring in the actual value. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductTitleFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductTitleFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmiProductTitleFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmiProductTitleFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *AmiProductTitleFilter) SetValueList(v []*string) *AmiProductTitleFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *AmiProductTitleFilter) SetWildCardValue(v string) *AmiProductTitleFilter { + s.WildCardValue = &v + return s +} + +// Object that allows filtering on the visibility of the product in the AWS +// Marketplace. +type AmiProductVisibilityFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique visibility values to be filtered on. + ValueList []*string `min:"1" type:"list" enum:"AmiProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductVisibilityFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmiProductVisibilityFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmiProductVisibilityFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmiProductVisibilityFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *AmiProductVisibilityFilter) SetValueList(v []*string) *AmiProductVisibilityFilter { + s.ValueList = v + return s +} + type CancelChangeSetInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -1565,20 +1993,18 @@ // change. Each change type is unique for each EntityType provided in the change's // scope. For more information on change types available for single-AMI products, // see Working with single-AMI products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/ami-products.html#working-with-single-AMI-products). - // Also, for more information on change types available for container-based + // Also, for more information about change types available for container-based // products, see Working with container products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/container-products.html#working-with-container-products). // // ChangeType is a required field ChangeType *string `min:"1" type:"string" required:"true"` // This object contains details specific to the change type of the requested - // change. For more information on change types available for single-AMI products, - // see Working with single-AMI products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/ami-products.html#working-with-single-AMI-products). - // Also, for more information on change types available for container-based + // change. For more information about change types available for single-AMI + // products, see Working with single-AMI products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/ami-products.html#working-with-single-AMI-products). + // Also, for more information about change types available for container-based // products, see Working with container products (https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/container-products.html#working-with-container-products). - // - // Details is a required field - Details *string `min:"2" type:"string" required:"true"` + Details *string `min:"2" type:"string"` // The entity to be changed. // @@ -1619,9 +2045,6 @@ if s.ChangeType != nil && len(*s.ChangeType) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeType", 1)) } - if s.Details == nil { - invalidParams.Add(request.NewErrParamRequired("Details")) - } if s.Details != nil && len(*s.Details) < 2 { invalidParams.Add(request.NewErrParamMinLen("Details", 2)) } @@ -1857,10 +2280,867 @@ return s } +// Object that allows filtering on entity id of a container product. +type ContainerProductEntityIdFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique entity id values to be filtered on. + ValueList []*string `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 ContainerProductEntityIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductEntityIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContainerProductEntityIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContainerProductEntityIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ContainerProductEntityIdFilter) SetValueList(v []*string) *ContainerProductEntityIdFilter { + s.ValueList = v + return s +} + +// Object containing all the filter fields for container products. Client can +// add a maximum of 8 filters in a single ListEntities request. +type ContainerProductFilters struct { + _ struct{} `type:"structure"` + + // Unique identifier for the container product. + EntityId *ContainerProductEntityIdFilter `type:"structure"` + + // The last date on which the container product was modified. + LastModifiedDate *ContainerProductLastModifiedDateFilter `type:"structure"` + + // The title of the container product. + ProductTitle *ContainerProductTitleFilter `type:"structure"` + + // The visibility of the container product. + Visibility *ContainerProductVisibilityFilter `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 ContainerProductFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContainerProductFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContainerProductFilters"} + if s.EntityId != nil { + if err := s.EntityId.Validate(); err != nil { + invalidParams.AddNested("EntityId", err.(request.ErrInvalidParams)) + } + } + if s.LastModifiedDate != nil { + if err := s.LastModifiedDate.Validate(); err != nil { + invalidParams.AddNested("LastModifiedDate", err.(request.ErrInvalidParams)) + } + } + if s.ProductTitle != nil { + if err := s.ProductTitle.Validate(); err != nil { + invalidParams.AddNested("ProductTitle", err.(request.ErrInvalidParams)) + } + } + if s.Visibility != nil { + if err := s.Visibility.Validate(); err != nil { + invalidParams.AddNested("Visibility", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntityId sets the EntityId field's value. +func (s *ContainerProductFilters) SetEntityId(v *ContainerProductEntityIdFilter) *ContainerProductFilters { + s.EntityId = v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *ContainerProductFilters) SetLastModifiedDate(v *ContainerProductLastModifiedDateFilter) *ContainerProductFilters { + s.LastModifiedDate = v + return s +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *ContainerProductFilters) SetProductTitle(v *ContainerProductTitleFilter) *ContainerProductFilters { + s.ProductTitle = v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *ContainerProductFilters) SetVisibility(v *ContainerProductVisibilityFilter) *ContainerProductFilters { + s.Visibility = v + return s +} + +// Object that allows filtering based on the last modified date of container +// products. +type ContainerProductLastModifiedDateFilter struct { + _ struct{} `type:"structure"` + + // Dates between which the container product was last modified. + DateRange *ContainerProductLastModifiedDateFilterDateRange `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 ContainerProductLastModifiedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductLastModifiedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContainerProductLastModifiedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContainerProductLastModifiedDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *ContainerProductLastModifiedDateFilter) SetDateRange(v *ContainerProductLastModifiedDateFilterDateRange) *ContainerProductLastModifiedDateFilter { + s.DateRange = v + return s +} + +// Object that contains date range of the last modified date to be filtered +// on. You can optionally provide a BeforeValue and/or AfterValue. Both are +// inclusive. +type ContainerProductLastModifiedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Date after which the container product was last modified. + AfterValue *string `min:"20" type:"string"` + + // Date before which the container product was last modified. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductLastModifiedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductLastModifiedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContainerProductLastModifiedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContainerProductLastModifiedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *ContainerProductLastModifiedDateFilterDateRange) SetAfterValue(v string) *ContainerProductLastModifiedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *ContainerProductLastModifiedDateFilterDateRange) SetBeforeValue(v string) *ContainerProductLastModifiedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Objects that allows sorting on container products based on certain fields +// and sorting order. +type ContainerProductSort struct { + _ struct{} `type:"structure"` + + // Field to sort the container products by. + SortBy *string `type:"string" enum:"ContainerProductSortBy"` + + // The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductSort) GoString() string { + return s.String() +} + +// SetSortBy sets the SortBy field's value. +func (s *ContainerProductSort) SetSortBy(v string) *ContainerProductSort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ContainerProductSort) SetSortOrder(v string) *ContainerProductSort { + s.SortOrder = &v + return s +} + +// Object that contains summarized information about a container product. +type ContainerProductSummary struct { + _ struct{} `type:"structure"` + + // The title of the container product. + ProductTitle *string `min:"1" type:"string"` + + // The lifecycle of the product. + Visibility *string `type:"string" enum:"ContainerProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductSummary) GoString() string { + return s.String() +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *ContainerProductSummary) SetProductTitle(v string) *ContainerProductSummary { + s.ProductTitle = &v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *ContainerProductSummary) SetVisibility(v string) *ContainerProductSummary { + s.Visibility = &v + return s +} + +// Object that allows filtering on product title. +type ContainerProductTitleFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique product title values to be filtered on. + ValueList []*string `min:"1" type:"list"` + + // A string that will be the wildCard input for product tile filter. It matches + // the provided value as a substring in the actual value. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductTitleFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductTitleFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContainerProductTitleFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContainerProductTitleFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ContainerProductTitleFilter) SetValueList(v []*string) *ContainerProductTitleFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ContainerProductTitleFilter) SetWildCardValue(v string) *ContainerProductTitleFilter { + s.WildCardValue = &v + return s +} + +// Object that allows filtering on the visibility of the product in the AWS +// Marketplace. +type ContainerProductVisibilityFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique visibility values to be filtered on. + ValueList []*string `min:"1" type:"list" enum:"ContainerProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductVisibilityFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerProductVisibilityFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContainerProductVisibilityFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContainerProductVisibilityFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ContainerProductVisibilityFilter) SetValueList(v []*string) *ContainerProductVisibilityFilter { + s.ValueList = v + return s +} + +// Object that allows filtering on entity id of a data product. +type DataProductEntityIdFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique entity id values to be filtered on. + ValueList []*string `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 DataProductEntityIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductEntityIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataProductEntityIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataProductEntityIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *DataProductEntityIdFilter) SetValueList(v []*string) *DataProductEntityIdFilter { + s.ValueList = v + return s +} + +// Object containing all the filter fields for data products. Client can add +// a maximum of 8 filters in a single ListEntities request. +type DataProductFilters struct { + _ struct{} `type:"structure"` + + // Unique identifier for the data product. + EntityId *DataProductEntityIdFilter `type:"structure"` + + // The last date on which the data product was modified. + LastModifiedDate *DataProductLastModifiedDateFilter `type:"structure"` + + // The title of the data product. + ProductTitle *DataProductTitleFilter `type:"structure"` + + // The visibility of the data product. + Visibility *DataProductVisibilityFilter `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 DataProductFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataProductFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataProductFilters"} + if s.EntityId != nil { + if err := s.EntityId.Validate(); err != nil { + invalidParams.AddNested("EntityId", err.(request.ErrInvalidParams)) + } + } + if s.LastModifiedDate != nil { + if err := s.LastModifiedDate.Validate(); err != nil { + invalidParams.AddNested("LastModifiedDate", err.(request.ErrInvalidParams)) + } + } + if s.ProductTitle != nil { + if err := s.ProductTitle.Validate(); err != nil { + invalidParams.AddNested("ProductTitle", err.(request.ErrInvalidParams)) + } + } + if s.Visibility != nil { + if err := s.Visibility.Validate(); err != nil { + invalidParams.AddNested("Visibility", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntityId sets the EntityId field's value. +func (s *DataProductFilters) SetEntityId(v *DataProductEntityIdFilter) *DataProductFilters { + s.EntityId = v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *DataProductFilters) SetLastModifiedDate(v *DataProductLastModifiedDateFilter) *DataProductFilters { + s.LastModifiedDate = v + return s +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *DataProductFilters) SetProductTitle(v *DataProductTitleFilter) *DataProductFilters { + s.ProductTitle = v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *DataProductFilters) SetVisibility(v *DataProductVisibilityFilter) *DataProductFilters { + s.Visibility = v + return s +} + +// Object that allows filtering based on the last modified date of data products. +type DataProductLastModifiedDateFilter struct { + _ struct{} `type:"structure"` + + // Dates between which the data product was last modified. + DateRange *DataProductLastModifiedDateFilterDateRange `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 DataProductLastModifiedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductLastModifiedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataProductLastModifiedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataProductLastModifiedDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *DataProductLastModifiedDateFilter) SetDateRange(v *DataProductLastModifiedDateFilterDateRange) *DataProductLastModifiedDateFilter { + s.DateRange = v + return s +} + +// Object that contains date range of the last modified date to be filtered +// on. You can optionally provide a BeforeValue and/or AfterValue. Both are +// inclusive. +type DataProductLastModifiedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Date after which the data product was last modified. + AfterValue *string `min:"20" type:"string"` + + // Date before which the data product was last modified. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductLastModifiedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductLastModifiedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataProductLastModifiedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataProductLastModifiedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *DataProductLastModifiedDateFilterDateRange) SetAfterValue(v string) *DataProductLastModifiedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *DataProductLastModifiedDateFilterDateRange) SetBeforeValue(v string) *DataProductLastModifiedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Objects that allows sorting on data products based on certain fields and +// sorting order. +type DataProductSort struct { + _ struct{} `type:"structure"` + + // Field to sort the data products by. + SortBy *string `type:"string" enum:"DataProductSortBy"` + + // The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductSort) GoString() string { + return s.String() +} + +// SetSortBy sets the SortBy field's value. +func (s *DataProductSort) SetSortBy(v string) *DataProductSort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *DataProductSort) SetSortOrder(v string) *DataProductSort { + s.SortOrder = &v + return s +} + +// Object that contains summarized information about a data product. +type DataProductSummary struct { + _ struct{} `type:"structure"` + + // The title of the data product. + ProductTitle *string `min:"1" type:"string"` + + // The lifecycle of the data product. + Visibility *string `type:"string" enum:"DataProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductSummary) GoString() string { + return s.String() +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *DataProductSummary) SetProductTitle(v string) *DataProductSummary { + s.ProductTitle = &v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *DataProductSummary) SetVisibility(v string) *DataProductSummary { + s.Visibility = &v + return s +} + +// Object that allows filtering on product title. +type DataProductTitleFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique product title values to be filtered on. + ValueList []*string `min:"1" type:"list"` + + // A string that will be the wildCard input for product tile filter. It matches + // the provided value as a substring in the actual value. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductTitleFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductTitleFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataProductTitleFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataProductTitleFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *DataProductTitleFilter) SetValueList(v []*string) *DataProductTitleFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *DataProductTitleFilter) SetWildCardValue(v string) *DataProductTitleFilter { + s.WildCardValue = &v + return s +} + +// Object that allows filtering on the visibility of the product in the AWS +// Marketplace. +type DataProductVisibilityFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique visibility values to be filtered on. + ValueList []*string `min:"1" type:"list" enum:"DataProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductVisibilityFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataProductVisibilityFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataProductVisibilityFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataProductVisibilityFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *DataProductVisibilityFilter) SetValueList(v []*string) *DataProductVisibilityFilter { + s.ValueList = v + return s +} + type DeleteResourcePolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The Amazon Resource Name (ARN) of the Entity resource that is associated + // The Amazon Resource Name (ARN) of the entity resource that is associated // with the resource policy. // // ResourceArn is a required field @@ -2311,6 +3591,15 @@ type EntitySummary struct { _ struct{} `type:"structure"` + // An object that contains summary information about the AMI product. + AmiProductSummary *AmiProductSummary `type:"structure"` + + // An object that contains summary information about the container product. + ContainerProductSummary *ContainerProductSummary `type:"structure"` + + // An object that contains summary information about the data product. + DataProductSummary *DataProductSummary `type:"structure"` + // The ARN associated with the unique identifier for the entity. EntityArn *string `min:"1" type:"string"` @@ -2326,6 +3615,15 @@ // The name for the entity. This value is not unique. It is defined by the seller. Name *string `min:"1" type:"string"` + // An object that contains summary information about the offer. + OfferSummary *OfferSummary `type:"structure"` + + // An object that contains summary information about the Resale Authorization. + ResaleAuthorizationSummary *ResaleAuthorizationSummary `type:"structure"` + + // An object that contains summary information about the SaaS product. + SaaSProductSummary *SaaSProductSummary `type:"structure"` + // The visibility status of the entity to buyers. This value can be Public (everyone // can view the entity), Limited (the entity is visible to limited accounts // only), or Restricted (the entity was published and then unpublished and only @@ -2351,6 +3649,24 @@ return s.String() } +// SetAmiProductSummary sets the AmiProductSummary field's value. +func (s *EntitySummary) SetAmiProductSummary(v *AmiProductSummary) *EntitySummary { + s.AmiProductSummary = v + return s +} + +// SetContainerProductSummary sets the ContainerProductSummary field's value. +func (s *EntitySummary) SetContainerProductSummary(v *ContainerProductSummary) *EntitySummary { + s.ContainerProductSummary = v + return s +} + +// SetDataProductSummary sets the DataProductSummary field's value. +func (s *EntitySummary) SetDataProductSummary(v *DataProductSummary) *EntitySummary { + s.DataProductSummary = v + return s +} + // SetEntityArn sets the EntityArn field's value. func (s *EntitySummary) SetEntityArn(v string) *EntitySummary { s.EntityArn = &v @@ -2381,12 +3697,224 @@ return s } +// SetOfferSummary sets the OfferSummary field's value. +func (s *EntitySummary) SetOfferSummary(v *OfferSummary) *EntitySummary { + s.OfferSummary = v + return s +} + +// SetResaleAuthorizationSummary sets the ResaleAuthorizationSummary field's value. +func (s *EntitySummary) SetResaleAuthorizationSummary(v *ResaleAuthorizationSummary) *EntitySummary { + s.ResaleAuthorizationSummary = v + return s +} + +// SetSaaSProductSummary sets the SaaSProductSummary field's value. +func (s *EntitySummary) SetSaaSProductSummary(v *SaaSProductSummary) *EntitySummary { + s.SaaSProductSummary = v + return s +} + // SetVisibility sets the Visibility field's value. func (s *EntitySummary) SetVisibility(v string) *EntitySummary { s.Visibility = &v return s } +// Object containing all the filter fields per entity type. +type EntityTypeFilters struct { + _ struct{} `type:"structure"` + + // A filter for AMI products. + AmiProductFilters *AmiProductFilters `type:"structure"` + + // A filter for container products. + ContainerProductFilters *ContainerProductFilters `type:"structure"` + + // A filter for data products. + DataProductFilters *DataProductFilters `type:"structure"` + + // A filter for offers. + OfferFilters *OfferFilters `type:"structure"` + + // A filter for Resale Authorizations. + ResaleAuthorizationFilters *ResaleAuthorizationFilters `type:"structure"` + + // A filter for SaaS products. + SaaSProductFilters *SaaSProductFilters `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 EntityTypeFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EntityTypeFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EntityTypeFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EntityTypeFilters"} + if s.AmiProductFilters != nil { + if err := s.AmiProductFilters.Validate(); err != nil { + invalidParams.AddNested("AmiProductFilters", err.(request.ErrInvalidParams)) + } + } + if s.ContainerProductFilters != nil { + if err := s.ContainerProductFilters.Validate(); err != nil { + invalidParams.AddNested("ContainerProductFilters", err.(request.ErrInvalidParams)) + } + } + if s.DataProductFilters != nil { + if err := s.DataProductFilters.Validate(); err != nil { + invalidParams.AddNested("DataProductFilters", err.(request.ErrInvalidParams)) + } + } + if s.OfferFilters != nil { + if err := s.OfferFilters.Validate(); err != nil { + invalidParams.AddNested("OfferFilters", err.(request.ErrInvalidParams)) + } + } + if s.ResaleAuthorizationFilters != nil { + if err := s.ResaleAuthorizationFilters.Validate(); err != nil { + invalidParams.AddNested("ResaleAuthorizationFilters", err.(request.ErrInvalidParams)) + } + } + if s.SaaSProductFilters != nil { + if err := s.SaaSProductFilters.Validate(); err != nil { + invalidParams.AddNested("SaaSProductFilters", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmiProductFilters sets the AmiProductFilters field's value. +func (s *EntityTypeFilters) SetAmiProductFilters(v *AmiProductFilters) *EntityTypeFilters { + s.AmiProductFilters = v + return s +} + +// SetContainerProductFilters sets the ContainerProductFilters field's value. +func (s *EntityTypeFilters) SetContainerProductFilters(v *ContainerProductFilters) *EntityTypeFilters { + s.ContainerProductFilters = v + return s +} + +// SetDataProductFilters sets the DataProductFilters field's value. +func (s *EntityTypeFilters) SetDataProductFilters(v *DataProductFilters) *EntityTypeFilters { + s.DataProductFilters = v + return s +} + +// SetOfferFilters sets the OfferFilters field's value. +func (s *EntityTypeFilters) SetOfferFilters(v *OfferFilters) *EntityTypeFilters { + s.OfferFilters = v + return s +} + +// SetResaleAuthorizationFilters sets the ResaleAuthorizationFilters field's value. +func (s *EntityTypeFilters) SetResaleAuthorizationFilters(v *ResaleAuthorizationFilters) *EntityTypeFilters { + s.ResaleAuthorizationFilters = v + return s +} + +// SetSaaSProductFilters sets the SaaSProductFilters field's value. +func (s *EntityTypeFilters) SetSaaSProductFilters(v *SaaSProductFilters) *EntityTypeFilters { + s.SaaSProductFilters = v + return s +} + +// Object containing all the sort fields per entity type. +type EntityTypeSort struct { + _ struct{} `type:"structure"` + + // A sort for AMI products. + AmiProductSort *AmiProductSort `type:"structure"` + + // A sort for container products. + ContainerProductSort *ContainerProductSort `type:"structure"` + + // A sort for data products. + DataProductSort *DataProductSort `type:"structure"` + + // A sort for offers. + OfferSort *OfferSort `type:"structure"` + + // A sort for Resale Authorizations. + ResaleAuthorizationSort *ResaleAuthorizationSort `type:"structure"` + + // A sort for SaaS products. + SaaSProductSort *SaaSProductSort `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 EntityTypeSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EntityTypeSort) GoString() string { + return s.String() +} + +// SetAmiProductSort sets the AmiProductSort field's value. +func (s *EntityTypeSort) SetAmiProductSort(v *AmiProductSort) *EntityTypeSort { + s.AmiProductSort = v + return s +} + +// SetContainerProductSort sets the ContainerProductSort field's value. +func (s *EntityTypeSort) SetContainerProductSort(v *ContainerProductSort) *EntityTypeSort { + s.ContainerProductSort = v + return s +} + +// SetDataProductSort sets the DataProductSort field's value. +func (s *EntityTypeSort) SetDataProductSort(v *DataProductSort) *EntityTypeSort { + s.DataProductSort = v + return s +} + +// SetOfferSort sets the OfferSort field's value. +func (s *EntityTypeSort) SetOfferSort(v *OfferSort) *EntityTypeSort { + s.OfferSort = v + return s +} + +// SetResaleAuthorizationSort sets the ResaleAuthorizationSort field's value. +func (s *EntityTypeSort) SetResaleAuthorizationSort(v *ResaleAuthorizationSort) *EntityTypeSort { + s.ResaleAuthorizationSort = v + return s +} + +// SetSaaSProductSort sets the SaaSProductSort field's value. +func (s *EntityTypeSort) SetSaaSProductSort(v *SaaSProductSort) *EntityTypeSort { + s.SaaSProductSort = v + return s +} + // Details about the error. type ErrorDetail struct { _ struct{} `type:"structure"` @@ -2514,7 +4042,7 @@ type GetResourcePolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The Amazon Resource Name (ARN) of the Entity resource that is associated + // The Amazon Resource Name (ARN) of the entity resource that is associated // with the resource policy. // // ResourceArn is a required field @@ -2818,11 +4346,23 @@ // Catalog is a required field Catalog *string `min:"1" type:"string" required:"true"` - // The type of entities to retrieve. + // The type of entities to retrieve. Valid values are: ServerProduct, AmiProduct, + // ContainerProduct, DataProduct, SaaSProduct, ProcurementPolicy, Experience, + // Audience, BrandingSettings, Offer, Seller, ResaleAuthorization. // // EntityType is a required field EntityType *string `min:"1" type:"string" required:"true"` + // A Union object containing filter shapes for all EntityTypes. Each EntityTypeFilter + // shape will have filters applicable for that EntityType that can be used to + // search or filter entities. + EntityTypeFilters *EntityTypeFilters `type:"structure"` + + // A Union object containing Sort shapes for all EntityTypes. Each EntityTypeSort + // shape will have SortBy and SortOrder applicable for fields on that EntityType. + // This can be used to sort the results of the filter query. + EntityTypeSort *EntityTypeSort `type:"structure"` + // An array of filter objects. Each filter object contains two attributes, filterName // and filterValues. FilterList []*Filter `min:"1" type:"list"` @@ -2834,6 +4374,10 @@ // The value of the next token, if it exists. Null if there are no more results. NextToken *string `min:"1" type:"string"` + // Filters the returned set of entities based on their owner. The default is + // SELF. To list entities shared with you through AWS Resource Access Manager + // (AWS RAM), set to SHARED. Entities shared through the AWS Marketplace Catalog + // API PutResourcePolicy operation can't be discovered through the SHARED parameter. OwnershipType *string `type:"string" enum:"OwnershipType"` // An object that contains two attributes, SortBy and SortOrder. @@ -2882,6 +4426,11 @@ if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } + if s.EntityTypeFilters != nil { + if err := s.EntityTypeFilters.Validate(); err != nil { + invalidParams.AddNested("EntityTypeFilters", err.(request.ErrInvalidParams)) + } + } if s.FilterList != nil { for i, v := range s.FilterList { if v == nil { @@ -2916,6 +4465,18 @@ return s } +// SetEntityTypeFilters sets the EntityTypeFilters field's value. +func (s *ListEntitiesInput) SetEntityTypeFilters(v *EntityTypeFilters) *ListEntitiesInput { + s.EntityTypeFilters = v + return s +} + +// SetEntityTypeSort sets the EntityTypeSort field's value. +func (s *ListEntitiesInput) SetEntityTypeSort(v *EntityTypeSort) *ListEntitiesInput { + s.EntityTypeSort = v + return s +} + // SetFilterList sets the FilterList field's value. func (s *ListEntitiesInput) SetFilterList(v []*Filter) *ListEntitiesInput { s.FilterList = v @@ -2949,7 +4510,7 @@ type ListEntitiesOutput struct { _ struct{} `type:"structure"` - // Array of EntitySummary object. + // Array of EntitySummary objects. EntitySummaryList []*EntitySummary `type:"list"` // The value of the next token if it exists. Null if there is no more result. @@ -3077,6 +4638,888 @@ return s } +// Allows filtering on the AvailabilityEndDate of an offer. +type OfferAvailabilityEndDateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the AvailabilityEndDate of an offer with date range as + // input. + DateRange *OfferAvailabilityEndDateFilterDateRange `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 OfferAvailabilityEndDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferAvailabilityEndDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferAvailabilityEndDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferAvailabilityEndDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *OfferAvailabilityEndDateFilter) SetDateRange(v *OfferAvailabilityEndDateFilterDateRange) *OfferAvailabilityEndDateFilter { + s.DateRange = v + return s +} + +// Allows filtering on the AvailabilityEndDate of an offer with date range as +// input. +type OfferAvailabilityEndDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Allows filtering on the AvailabilityEndDate of an offer after a date. + AfterValue *string `min:"20" type:"string"` + + // Allows filtering on the AvailabilityEndDate of an offer before a date. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferAvailabilityEndDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferAvailabilityEndDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferAvailabilityEndDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferAvailabilityEndDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *OfferAvailabilityEndDateFilterDateRange) SetAfterValue(v string) *OfferAvailabilityEndDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *OfferAvailabilityEndDateFilterDateRange) SetBeforeValue(v string) *OfferAvailabilityEndDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Allows filtering on the BuyerAccounts of an offer. +type OfferBuyerAccountsFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the BuyerAccounts of an offer with wild card input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferBuyerAccountsFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferBuyerAccountsFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferBuyerAccountsFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferBuyerAccountsFilter"} + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *OfferBuyerAccountsFilter) SetWildCardValue(v string) *OfferBuyerAccountsFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the entity id of an offer. +type OfferEntityIdFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on entity id of an offer with list input. + ValueList []*string `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 OfferEntityIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferEntityIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferEntityIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferEntityIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *OfferEntityIdFilter) SetValueList(v []*string) *OfferEntityIdFilter { + s.ValueList = v + return s +} + +// A filter for offers entity. +type OfferFilters struct { + _ struct{} `type:"structure"` + + // Allows filtering on the AvailabilityEndDate of an offer. + AvailabilityEndDate *OfferAvailabilityEndDateFilter `type:"structure"` + + // Allows filtering on the BuyerAccounts of an offer. + BuyerAccounts *OfferBuyerAccountsFilter `type:"structure"` + + // Allows filtering on EntityId of an offer. + EntityId *OfferEntityIdFilter `type:"structure"` + + // Allows filtering on the LastModifiedDate of an offer. + LastModifiedDate *OfferLastModifiedDateFilter `type:"structure"` + + // Allows filtering on the Name of an offer. + Name *OfferNameFilter `type:"structure"` + + // Allows filtering on the ProductId of an offer. + ProductId *OfferProductIdFilter `type:"structure"` + + // Allows filtering on the ReleaseDate of an offer. + ReleaseDate *OfferReleaseDateFilter `type:"structure"` + + // Allows filtering on the State of an offer. + State *OfferStateFilter `type:"structure"` + + // Allows filtering on the Targeting of an offer. + Targeting *OfferTargetingFilter `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 OfferFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferFilters"} + if s.AvailabilityEndDate != nil { + if err := s.AvailabilityEndDate.Validate(); err != nil { + invalidParams.AddNested("AvailabilityEndDate", err.(request.ErrInvalidParams)) + } + } + if s.BuyerAccounts != nil { + if err := s.BuyerAccounts.Validate(); err != nil { + invalidParams.AddNested("BuyerAccounts", err.(request.ErrInvalidParams)) + } + } + if s.EntityId != nil { + if err := s.EntityId.Validate(); err != nil { + invalidParams.AddNested("EntityId", err.(request.ErrInvalidParams)) + } + } + if s.LastModifiedDate != nil { + if err := s.LastModifiedDate.Validate(); err != nil { + invalidParams.AddNested("LastModifiedDate", err.(request.ErrInvalidParams)) + } + } + if s.Name != nil { + if err := s.Name.Validate(); err != nil { + invalidParams.AddNested("Name", err.(request.ErrInvalidParams)) + } + } + if s.ProductId != nil { + if err := s.ProductId.Validate(); err != nil { + invalidParams.AddNested("ProductId", err.(request.ErrInvalidParams)) + } + } + if s.ReleaseDate != nil { + if err := s.ReleaseDate.Validate(); err != nil { + invalidParams.AddNested("ReleaseDate", err.(request.ErrInvalidParams)) + } + } + if s.State != nil { + if err := s.State.Validate(); err != nil { + invalidParams.AddNested("State", err.(request.ErrInvalidParams)) + } + } + if s.Targeting != nil { + if err := s.Targeting.Validate(); err != nil { + invalidParams.AddNested("Targeting", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAvailabilityEndDate sets the AvailabilityEndDate field's value. +func (s *OfferFilters) SetAvailabilityEndDate(v *OfferAvailabilityEndDateFilter) *OfferFilters { + s.AvailabilityEndDate = v + return s +} + +// SetBuyerAccounts sets the BuyerAccounts field's value. +func (s *OfferFilters) SetBuyerAccounts(v *OfferBuyerAccountsFilter) *OfferFilters { + s.BuyerAccounts = v + return s +} + +// SetEntityId sets the EntityId field's value. +func (s *OfferFilters) SetEntityId(v *OfferEntityIdFilter) *OfferFilters { + s.EntityId = v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *OfferFilters) SetLastModifiedDate(v *OfferLastModifiedDateFilter) *OfferFilters { + s.LastModifiedDate = v + return s +} + +// SetName sets the Name field's value. +func (s *OfferFilters) SetName(v *OfferNameFilter) *OfferFilters { + s.Name = v + return s +} + +// SetProductId sets the ProductId field's value. +func (s *OfferFilters) SetProductId(v *OfferProductIdFilter) *OfferFilters { + s.ProductId = v + return s +} + +// SetReleaseDate sets the ReleaseDate field's value. +func (s *OfferFilters) SetReleaseDate(v *OfferReleaseDateFilter) *OfferFilters { + s.ReleaseDate = v + return s +} + +// SetState sets the State field's value. +func (s *OfferFilters) SetState(v *OfferStateFilter) *OfferFilters { + s.State = v + return s +} + +// SetTargeting sets the Targeting field's value. +func (s *OfferFilters) SetTargeting(v *OfferTargetingFilter) *OfferFilters { + s.Targeting = v + return s +} + +// Allows filtering on the LastModifiedDate of an offer. +type OfferLastModifiedDateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the LastModifiedDate of an offer with date range as input. + DateRange *OfferLastModifiedDateFilterDateRange `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 OfferLastModifiedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferLastModifiedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferLastModifiedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferLastModifiedDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *OfferLastModifiedDateFilter) SetDateRange(v *OfferLastModifiedDateFilterDateRange) *OfferLastModifiedDateFilter { + s.DateRange = v + return s +} + +// Allows filtering on the LastModifiedDate of an offer with date range as input. +type OfferLastModifiedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Allows filtering on the LastModifiedDate of an offer after a date. + AfterValue *string `min:"20" type:"string"` + + // Allows filtering on the LastModifiedDate of an offer before a date. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferLastModifiedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferLastModifiedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferLastModifiedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferLastModifiedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *OfferLastModifiedDateFilterDateRange) SetAfterValue(v string) *OfferLastModifiedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *OfferLastModifiedDateFilterDateRange) SetBeforeValue(v string) *OfferLastModifiedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Allows filtering on the Name of an offer. +type OfferNameFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the Name of an offer with list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the Name of an offer with wild card input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferNameFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferNameFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferNameFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferNameFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *OfferNameFilter) SetValueList(v []*string) *OfferNameFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *OfferNameFilter) SetWildCardValue(v string) *OfferNameFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the ProductId of an offer. +type OfferProductIdFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ProductId of an offer with list input. + ValueList []*string `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 OfferProductIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferProductIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferProductIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferProductIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *OfferProductIdFilter) SetValueList(v []*string) *OfferProductIdFilter { + s.ValueList = v + return s +} + +// Allows filtering on the ReleaseDate of an offer. +type OfferReleaseDateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ReleaseDate of an offer with date range as input. + DateRange *OfferReleaseDateFilterDateRange `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 OfferReleaseDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferReleaseDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferReleaseDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferReleaseDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *OfferReleaseDateFilter) SetDateRange(v *OfferReleaseDateFilterDateRange) *OfferReleaseDateFilter { + s.DateRange = v + return s +} + +// Allows filtering on the ReleaseDate of an offer with date range as input. +type OfferReleaseDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ReleaseDate of offers after a date. + AfterValue *string `min:"20" type:"string"` + + // Allows filtering on the ReleaseDate of offers before a date. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferReleaseDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferReleaseDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferReleaseDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferReleaseDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *OfferReleaseDateFilterDateRange) SetAfterValue(v string) *OfferReleaseDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *OfferReleaseDateFilterDateRange) SetBeforeValue(v string) *OfferReleaseDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Allows to sort offers. +type OfferSort struct { + _ struct{} `type:"structure"` + + // Allows to sort offers. + SortBy *string `type:"string" enum:"OfferSortBy"` + + // Allows to sort offers. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferSort) GoString() string { + return s.String() +} + +// SetSortBy sets the SortBy field's value. +func (s *OfferSort) SetSortBy(v string) *OfferSort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *OfferSort) SetSortOrder(v string) *OfferSort { + s.SortOrder = &v + return s +} + +// Allows filtering on the State of an offer. +type OfferStateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the State of an offer with list input. + ValueList []*string `min:"1" type:"list" enum:"OfferStateString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferStateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferStateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferStateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferStateFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *OfferStateFilter) SetValueList(v []*string) *OfferStateFilter { + s.ValueList = v + return s +} + +// Summarized information about an offer. +type OfferSummary struct { + _ struct{} `type:"structure"` + + // The availability end date of the offer. + AvailabilityEndDate *string `min:"20" type:"string"` + + // The buyer accounts in the offer. + BuyerAccounts []*string `type:"list"` + + // The name of the offer. + Name *string `min:"1" type:"string"` + + // The product ID of the offer. + ProductId *string `min:"1" type:"string"` + + // The release date of the offer. + ReleaseDate *string `min:"20" type:"string"` + + // The status of the offer. + State *string `type:"string" enum:"OfferStateString"` + + // The targeting in the offer. + Targeting []*string `type:"list" enum:"OfferTargetingString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferSummary) GoString() string { + return s.String() +} + +// SetAvailabilityEndDate sets the AvailabilityEndDate field's value. +func (s *OfferSummary) SetAvailabilityEndDate(v string) *OfferSummary { + s.AvailabilityEndDate = &v + return s +} + +// SetBuyerAccounts sets the BuyerAccounts field's value. +func (s *OfferSummary) SetBuyerAccounts(v []*string) *OfferSummary { + s.BuyerAccounts = v + return s +} + +// SetName sets the Name field's value. +func (s *OfferSummary) SetName(v string) *OfferSummary { + s.Name = &v + return s +} + +// SetProductId sets the ProductId field's value. +func (s *OfferSummary) SetProductId(v string) *OfferSummary { + s.ProductId = &v + return s +} + +// SetReleaseDate sets the ReleaseDate field's value. +func (s *OfferSummary) SetReleaseDate(v string) *OfferSummary { + s.ReleaseDate = &v + return s +} + +// SetState sets the State field's value. +func (s *OfferSummary) SetState(v string) *OfferSummary { + s.State = &v + return s +} + +// SetTargeting sets the Targeting field's value. +func (s *OfferSummary) SetTargeting(v []*string) *OfferSummary { + s.Targeting = v + return s +} + +// Allows filtering on the Targeting of an offer. +type OfferTargetingFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the Targeting of an offer with list input. + ValueList []*string `min:"1" type:"list" enum:"OfferTargetingString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferTargetingFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OfferTargetingFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OfferTargetingFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OfferTargetingFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *OfferTargetingFilter) SetValueList(v []*string) *OfferTargetingFilter { + s.ValueList = v + return s +} + type PutResourcePolicyInput struct { _ struct{} `type:"structure"` @@ -3085,7 +5528,7 @@ // Policy is a required field Policy *string `min:"1" type:"string" required:"true"` - // The Amazon Resource Name (ARN) of the Entity resource you want to associate + // The Amazon Resource Name (ARN) of the entity resource you want to associate // with a resource policy. // // ResourceArn is a required field @@ -3166,6 +5609,1277 @@ return s.String() } +// Allows filtering on AvailabilityEndDate of a ResaleAuthorization. +type ResaleAuthorizationAvailabilityEndDateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on AvailabilityEndDate of a ResaleAuthorization with date + // range as input + DateRange *ResaleAuthorizationAvailabilityEndDateFilterDateRange `type:"structure"` + + // Allows filtering on AvailabilityEndDate of a ResaleAuthorization with date + // value as input. + ValueList []*string `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 ResaleAuthorizationAvailabilityEndDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationAvailabilityEndDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationAvailabilityEndDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationAvailabilityEndDateFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *ResaleAuthorizationAvailabilityEndDateFilter) SetDateRange(v *ResaleAuthorizationAvailabilityEndDateFilterDateRange) *ResaleAuthorizationAvailabilityEndDateFilter { + s.DateRange = v + return s +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationAvailabilityEndDateFilter) SetValueList(v []*string) *ResaleAuthorizationAvailabilityEndDateFilter { + s.ValueList = v + return s +} + +// Allows filtering on AvailabilityEndDate of a ResaleAuthorization with date +// range as input. +type ResaleAuthorizationAvailabilityEndDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Allows filtering on AvailabilityEndDate of a ResaleAuthorization after a + // date. + AfterValue *string `min:"20" type:"string"` + + // Allows filtering on AvailabilityEndDate of a ResaleAuthorization before a + // date. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationAvailabilityEndDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationAvailabilityEndDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationAvailabilityEndDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationAvailabilityEndDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *ResaleAuthorizationAvailabilityEndDateFilterDateRange) SetAfterValue(v string) *ResaleAuthorizationAvailabilityEndDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *ResaleAuthorizationAvailabilityEndDateFilterDateRange) SetBeforeValue(v string) *ResaleAuthorizationAvailabilityEndDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Allows filtering on CreatedDate of a ResaleAuthorization. +type ResaleAuthorizationCreatedDateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on CreatedDate of a ResaleAuthorization with date range + // as input. + DateRange *ResaleAuthorizationCreatedDateFilterDateRange `type:"structure"` + + // Allows filtering on CreatedDate of a ResaleAuthorization with date value + // as input. + ValueList []*string `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 ResaleAuthorizationCreatedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationCreatedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationCreatedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationCreatedDateFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *ResaleAuthorizationCreatedDateFilter) SetDateRange(v *ResaleAuthorizationCreatedDateFilterDateRange) *ResaleAuthorizationCreatedDateFilter { + s.DateRange = v + return s +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationCreatedDateFilter) SetValueList(v []*string) *ResaleAuthorizationCreatedDateFilter { + s.ValueList = v + return s +} + +// Allows filtering on CreatedDate of a ResaleAuthorization with date range +// as input. +type ResaleAuthorizationCreatedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Allows filtering on CreatedDate of a ResaleAuthorization after a date. + AfterValue *string `min:"20" type:"string"` + + // Allows filtering on CreatedDate of a ResaleAuthorization before a date. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationCreatedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationCreatedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationCreatedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationCreatedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *ResaleAuthorizationCreatedDateFilterDateRange) SetAfterValue(v string) *ResaleAuthorizationCreatedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *ResaleAuthorizationCreatedDateFilterDateRange) SetBeforeValue(v string) *ResaleAuthorizationCreatedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Allows filtering on EntityId of a ResaleAuthorization. +type ResaleAuthorizationEntityIdFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on EntityId of a ResaleAuthorization with list input. + ValueList []*string `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 ResaleAuthorizationEntityIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationEntityIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationEntityIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationEntityIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationEntityIdFilter) SetValueList(v []*string) *ResaleAuthorizationEntityIdFilter { + s.ValueList = v + return s +} + +// A filter for ResaleAuthorization entity. +type ResaleAuthorizationFilters struct { + _ struct{} `type:"structure"` + + // Allows filtering on the AvailabilityEndDate of a ResaleAuthorization. + AvailabilityEndDate *ResaleAuthorizationAvailabilityEndDateFilter `type:"structure"` + + // Allows filtering on the CreatedDate of a ResaleAuthorization. + CreatedDate *ResaleAuthorizationCreatedDateFilter `type:"structure"` + + // Allows filtering on the EntityId of a ResaleAuthorization. + EntityId *ResaleAuthorizationEntityIdFilter `type:"structure"` + + // Allows filtering on the LastModifiedDate of a ResaleAuthorization. + LastModifiedDate *ResaleAuthorizationLastModifiedDateFilter `type:"structure"` + + // Allows filtering on the ManufacturerAccountId of a ResaleAuthorization. + ManufacturerAccountId *ResaleAuthorizationManufacturerAccountIdFilter `type:"structure"` + + // Allows filtering on the ManufacturerLegalName of a ResaleAuthorization. + ManufacturerLegalName *ResaleAuthorizationManufacturerLegalNameFilter `type:"structure"` + + // Allows filtering on the Name of a ResaleAuthorization. + Name *ResaleAuthorizationNameFilter `type:"structure"` + + // Allows filtering on the OfferExtendedStatus of a ResaleAuthorization. + OfferExtendedStatus *ResaleAuthorizationOfferExtendedStatusFilter `type:"structure"` + + // Allows filtering on the ProductId of a ResaleAuthorization. + ProductId *ResaleAuthorizationProductIdFilter `type:"structure"` + + // Allows filtering on the ProductName of a ResaleAuthorization. + ProductName *ResaleAuthorizationProductNameFilter `type:"structure"` + + // Allows filtering on the ResellerAccountID of a ResaleAuthorization. + ResellerAccountID *ResaleAuthorizationResellerAccountIDFilter `type:"structure"` + + // Allows filtering on the ResellerLegalName of a ResaleAuthorization. + ResellerLegalName *ResaleAuthorizationResellerLegalNameFilter `type:"structure"` + + // Allows filtering on the Status of a ResaleAuthorization. + Status *ResaleAuthorizationStatusFilter `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 ResaleAuthorizationFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationFilters"} + if s.AvailabilityEndDate != nil { + if err := s.AvailabilityEndDate.Validate(); err != nil { + invalidParams.AddNested("AvailabilityEndDate", err.(request.ErrInvalidParams)) + } + } + if s.CreatedDate != nil { + if err := s.CreatedDate.Validate(); err != nil { + invalidParams.AddNested("CreatedDate", err.(request.ErrInvalidParams)) + } + } + if s.EntityId != nil { + if err := s.EntityId.Validate(); err != nil { + invalidParams.AddNested("EntityId", err.(request.ErrInvalidParams)) + } + } + if s.LastModifiedDate != nil { + if err := s.LastModifiedDate.Validate(); err != nil { + invalidParams.AddNested("LastModifiedDate", err.(request.ErrInvalidParams)) + } + } + if s.ManufacturerAccountId != nil { + if err := s.ManufacturerAccountId.Validate(); err != nil { + invalidParams.AddNested("ManufacturerAccountId", err.(request.ErrInvalidParams)) + } + } + if s.ManufacturerLegalName != nil { + if err := s.ManufacturerLegalName.Validate(); err != nil { + invalidParams.AddNested("ManufacturerLegalName", err.(request.ErrInvalidParams)) + } + } + if s.Name != nil { + if err := s.Name.Validate(); err != nil { + invalidParams.AddNested("Name", err.(request.ErrInvalidParams)) + } + } + if s.OfferExtendedStatus != nil { + if err := s.OfferExtendedStatus.Validate(); err != nil { + invalidParams.AddNested("OfferExtendedStatus", err.(request.ErrInvalidParams)) + } + } + if s.ProductId != nil { + if err := s.ProductId.Validate(); err != nil { + invalidParams.AddNested("ProductId", err.(request.ErrInvalidParams)) + } + } + if s.ProductName != nil { + if err := s.ProductName.Validate(); err != nil { + invalidParams.AddNested("ProductName", err.(request.ErrInvalidParams)) + } + } + if s.ResellerAccountID != nil { + if err := s.ResellerAccountID.Validate(); err != nil { + invalidParams.AddNested("ResellerAccountID", err.(request.ErrInvalidParams)) + } + } + if s.ResellerLegalName != nil { + if err := s.ResellerLegalName.Validate(); err != nil { + invalidParams.AddNested("ResellerLegalName", err.(request.ErrInvalidParams)) + } + } + if s.Status != nil { + if err := s.Status.Validate(); err != nil { + invalidParams.AddNested("Status", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAvailabilityEndDate sets the AvailabilityEndDate field's value. +func (s *ResaleAuthorizationFilters) SetAvailabilityEndDate(v *ResaleAuthorizationAvailabilityEndDateFilter) *ResaleAuthorizationFilters { + s.AvailabilityEndDate = v + return s +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *ResaleAuthorizationFilters) SetCreatedDate(v *ResaleAuthorizationCreatedDateFilter) *ResaleAuthorizationFilters { + s.CreatedDate = v + return s +} + +// SetEntityId sets the EntityId field's value. +func (s *ResaleAuthorizationFilters) SetEntityId(v *ResaleAuthorizationEntityIdFilter) *ResaleAuthorizationFilters { + s.EntityId = v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *ResaleAuthorizationFilters) SetLastModifiedDate(v *ResaleAuthorizationLastModifiedDateFilter) *ResaleAuthorizationFilters { + s.LastModifiedDate = v + return s +} + +// SetManufacturerAccountId sets the ManufacturerAccountId field's value. +func (s *ResaleAuthorizationFilters) SetManufacturerAccountId(v *ResaleAuthorizationManufacturerAccountIdFilter) *ResaleAuthorizationFilters { + s.ManufacturerAccountId = v + return s +} + +// SetManufacturerLegalName sets the ManufacturerLegalName field's value. +func (s *ResaleAuthorizationFilters) SetManufacturerLegalName(v *ResaleAuthorizationManufacturerLegalNameFilter) *ResaleAuthorizationFilters { + s.ManufacturerLegalName = v + return s +} + +// SetName sets the Name field's value. +func (s *ResaleAuthorizationFilters) SetName(v *ResaleAuthorizationNameFilter) *ResaleAuthorizationFilters { + s.Name = v + return s +} + +// SetOfferExtendedStatus sets the OfferExtendedStatus field's value. +func (s *ResaleAuthorizationFilters) SetOfferExtendedStatus(v *ResaleAuthorizationOfferExtendedStatusFilter) *ResaleAuthorizationFilters { + s.OfferExtendedStatus = v + return s +} + +// SetProductId sets the ProductId field's value. +func (s *ResaleAuthorizationFilters) SetProductId(v *ResaleAuthorizationProductIdFilter) *ResaleAuthorizationFilters { + s.ProductId = v + return s +} + +// SetProductName sets the ProductName field's value. +func (s *ResaleAuthorizationFilters) SetProductName(v *ResaleAuthorizationProductNameFilter) *ResaleAuthorizationFilters { + s.ProductName = v + return s +} + +// SetResellerAccountID sets the ResellerAccountID field's value. +func (s *ResaleAuthorizationFilters) SetResellerAccountID(v *ResaleAuthorizationResellerAccountIDFilter) *ResaleAuthorizationFilters { + s.ResellerAccountID = v + return s +} + +// SetResellerLegalName sets the ResellerLegalName field's value. +func (s *ResaleAuthorizationFilters) SetResellerLegalName(v *ResaleAuthorizationResellerLegalNameFilter) *ResaleAuthorizationFilters { + s.ResellerLegalName = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ResaleAuthorizationFilters) SetStatus(v *ResaleAuthorizationStatusFilter) *ResaleAuthorizationFilters { + s.Status = v + return s +} + +// Allows filtering on the LastModifiedDate of a ResaleAuthorization. +type ResaleAuthorizationLastModifiedDateFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the LastModifiedDate of a ResaleAuthorization with date + // range as input. + DateRange *ResaleAuthorizationLastModifiedDateFilterDateRange `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 ResaleAuthorizationLastModifiedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationLastModifiedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationLastModifiedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationLastModifiedDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *ResaleAuthorizationLastModifiedDateFilter) SetDateRange(v *ResaleAuthorizationLastModifiedDateFilterDateRange) *ResaleAuthorizationLastModifiedDateFilter { + s.DateRange = v + return s +} + +// Allows filtering on the LastModifiedDate of a ResaleAuthorization with date +// range as input. +type ResaleAuthorizationLastModifiedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Allows filtering on the LastModifiedDate of a ResaleAuthorization after a + // date. + AfterValue *string `min:"20" type:"string"` + + // Allows filtering on the LastModifiedDate of a ResaleAuthorization before + // a date. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationLastModifiedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationLastModifiedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationLastModifiedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationLastModifiedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *ResaleAuthorizationLastModifiedDateFilterDateRange) SetAfterValue(v string) *ResaleAuthorizationLastModifiedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *ResaleAuthorizationLastModifiedDateFilterDateRange) SetBeforeValue(v string) *ResaleAuthorizationLastModifiedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Allows filtering on the ManufacturerAccountId of a ResaleAuthorization. +type ResaleAuthorizationManufacturerAccountIdFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ManufacturerAccountId of a ResaleAuthorization with + // list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the ManufacturerAccountId of a ResaleAuthorization with + // wild card input. + WildCardValue *string `min:"12" 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 ResaleAuthorizationManufacturerAccountIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationManufacturerAccountIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationManufacturerAccountIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationManufacturerAccountIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 12 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationManufacturerAccountIdFilter) SetValueList(v []*string) *ResaleAuthorizationManufacturerAccountIdFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationManufacturerAccountIdFilter) SetWildCardValue(v string) *ResaleAuthorizationManufacturerAccountIdFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the ManufacturerLegalName of a ResaleAuthorization. +type ResaleAuthorizationManufacturerLegalNameFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ManufacturerLegalName of a ResaleAuthorization with + // list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the ManufacturerLegalName of a ResaleAuthorization with + // wild card input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationManufacturerLegalNameFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationManufacturerLegalNameFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationManufacturerLegalNameFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationManufacturerLegalNameFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationManufacturerLegalNameFilter) SetValueList(v []*string) *ResaleAuthorizationManufacturerLegalNameFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationManufacturerLegalNameFilter) SetWildCardValue(v string) *ResaleAuthorizationManufacturerLegalNameFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the Name of a ResaleAuthorization. +type ResaleAuthorizationNameFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the Name of a ResaleAuthorization with list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the Name of a ResaleAuthorization with wild card input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationNameFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationNameFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationNameFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationNameFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationNameFilter) SetValueList(v []*string) *ResaleAuthorizationNameFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationNameFilter) SetWildCardValue(v string) *ResaleAuthorizationNameFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the OfferExtendedStatus of a ResaleAuthorization. +type ResaleAuthorizationOfferExtendedStatusFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the OfferExtendedStatus of a ResaleAuthorization with + // list input. + ValueList []*string `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 ResaleAuthorizationOfferExtendedStatusFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationOfferExtendedStatusFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationOfferExtendedStatusFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationOfferExtendedStatusFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationOfferExtendedStatusFilter) SetValueList(v []*string) *ResaleAuthorizationOfferExtendedStatusFilter { + s.ValueList = v + return s +} + +// Allows filtering on the ProductId of a ResaleAuthorization. +type ResaleAuthorizationProductIdFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ProductId of a ResaleAuthorization with list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the ProductId of a ResaleAuthorization with wild card + // input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationProductIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationProductIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationProductIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationProductIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationProductIdFilter) SetValueList(v []*string) *ResaleAuthorizationProductIdFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationProductIdFilter) SetWildCardValue(v string) *ResaleAuthorizationProductIdFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the ProductName of a ResaleAuthorization. +type ResaleAuthorizationProductNameFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ProductName of a ResaleAuthorization with list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the ProductName of a ResaleAuthorization with wild card + // input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationProductNameFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationProductNameFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationProductNameFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationProductNameFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationProductNameFilter) SetValueList(v []*string) *ResaleAuthorizationProductNameFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationProductNameFilter) SetWildCardValue(v string) *ResaleAuthorizationProductNameFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the ResellerAccountID of a ResaleAuthorization. +type ResaleAuthorizationResellerAccountIDFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ResellerAccountID of a ResaleAuthorization with list + // input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the ResellerAccountID of a ResaleAuthorization with wild + // card input. + WildCardValue *string `min:"12" 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 ResaleAuthorizationResellerAccountIDFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationResellerAccountIDFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationResellerAccountIDFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationResellerAccountIDFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 12 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationResellerAccountIDFilter) SetValueList(v []*string) *ResaleAuthorizationResellerAccountIDFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationResellerAccountIDFilter) SetWildCardValue(v string) *ResaleAuthorizationResellerAccountIDFilter { + s.WildCardValue = &v + return s +} + +// Allows filtering on the ResellerLegalName of a ResaleAuthorization. +type ResaleAuthorizationResellerLegalNameFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the ResellerLegalNameProductName of a ResaleAuthorization + // with list input. + ValueList []*string `min:"1" type:"list"` + + // Allows filtering on the ResellerLegalName of a ResaleAuthorization with wild + // card input. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationResellerLegalNameFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationResellerLegalNameFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationResellerLegalNameFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationResellerLegalNameFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationResellerLegalNameFilter) SetValueList(v []*string) *ResaleAuthorizationResellerLegalNameFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *ResaleAuthorizationResellerLegalNameFilter) SetWildCardValue(v string) *ResaleAuthorizationResellerLegalNameFilter { + s.WildCardValue = &v + return s +} + +// Allows to sort ResaleAuthorization. +type ResaleAuthorizationSort struct { + _ struct{} `type:"structure"` + + // Allows to sort ResaleAuthorization. + SortBy *string `type:"string" enum:"ResaleAuthorizationSortBy"` + + // Allows to sort ResaleAuthorization. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationSort) GoString() string { + return s.String() +} + +// SetSortBy sets the SortBy field's value. +func (s *ResaleAuthorizationSort) SetSortBy(v string) *ResaleAuthorizationSort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ResaleAuthorizationSort) SetSortOrder(v string) *ResaleAuthorizationSort { + s.SortOrder = &v + return s +} + +// Allows filtering on the Status of a ResaleAuthorization. +type ResaleAuthorizationStatusFilter struct { + _ struct{} `type:"structure"` + + // Allows filtering on the Status of a ResaleAuthorization with list input. + ValueList []*string `min:"1" type:"list" enum:"ResaleAuthorizationStatusString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationStatusFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationStatusFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResaleAuthorizationStatusFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResaleAuthorizationStatusFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *ResaleAuthorizationStatusFilter) SetValueList(v []*string) *ResaleAuthorizationStatusFilter { + s.ValueList = v + return s +} + +// Summarized information about a Resale Authorization. +type ResaleAuthorizationSummary struct { + _ struct{} `type:"structure"` + + // The availability end date of the ResaleAuthorization. + AvailabilityEndDate *string `min:"20" type:"string"` + + // The created date of the ResaleAuthorization. + CreatedDate *string `min:"20" type:"string"` + + // The manufacturer account ID of the ResaleAuthorization. + ManufacturerAccountId *string `min:"12" type:"string"` + + // The manufacturer legal name of the ResaleAuthorization. + ManufacturerLegalName *string `min:"1" type:"string"` + + // The name of the ResaleAuthorization. + Name *string `min:"1" type:"string"` + + // The offer extended status of the ResaleAuthorization + OfferExtendedStatus *string `min:"1" type:"string"` + + // The product ID of the ResaleAuthorization. + ProductId *string `min:"1" type:"string"` + + // The product name of the ResaleAuthorization. + ProductName *string `min:"1" type:"string"` + + // The reseller account ID of the ResaleAuthorization. + ResellerAccountID *string `min:"12" type:"string"` + + // The reseller legal name of the ResaleAuthorization + ResellerLegalName *string `min:"1" type:"string"` + + // The status of the ResaleAuthorization. + Status *string `type:"string" enum:"ResaleAuthorizationStatusString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResaleAuthorizationSummary) GoString() string { + return s.String() +} + +// SetAvailabilityEndDate sets the AvailabilityEndDate field's value. +func (s *ResaleAuthorizationSummary) SetAvailabilityEndDate(v string) *ResaleAuthorizationSummary { + s.AvailabilityEndDate = &v + return s +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *ResaleAuthorizationSummary) SetCreatedDate(v string) *ResaleAuthorizationSummary { + s.CreatedDate = &v + return s +} + +// SetManufacturerAccountId sets the ManufacturerAccountId field's value. +func (s *ResaleAuthorizationSummary) SetManufacturerAccountId(v string) *ResaleAuthorizationSummary { + s.ManufacturerAccountId = &v + return s +} + +// SetManufacturerLegalName sets the ManufacturerLegalName field's value. +func (s *ResaleAuthorizationSummary) SetManufacturerLegalName(v string) *ResaleAuthorizationSummary { + s.ManufacturerLegalName = &v + return s +} + +// SetName sets the Name field's value. +func (s *ResaleAuthorizationSummary) SetName(v string) *ResaleAuthorizationSummary { + s.Name = &v + return s +} + +// SetOfferExtendedStatus sets the OfferExtendedStatus field's value. +func (s *ResaleAuthorizationSummary) SetOfferExtendedStatus(v string) *ResaleAuthorizationSummary { + s.OfferExtendedStatus = &v + return s +} + +// SetProductId sets the ProductId field's value. +func (s *ResaleAuthorizationSummary) SetProductId(v string) *ResaleAuthorizationSummary { + s.ProductId = &v + return s +} + +// SetProductName sets the ProductName field's value. +func (s *ResaleAuthorizationSummary) SetProductName(v string) *ResaleAuthorizationSummary { + s.ProductName = &v + return s +} + +// SetResellerAccountID sets the ResellerAccountID field's value. +func (s *ResaleAuthorizationSummary) SetResellerAccountID(v string) *ResaleAuthorizationSummary { + s.ResellerAccountID = &v + return s +} + +// SetResellerLegalName sets the ResellerLegalName field's value. +func (s *ResaleAuthorizationSummary) SetResellerLegalName(v string) *ResaleAuthorizationSummary { + s.ResellerLegalName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ResaleAuthorizationSummary) SetStatus(v string) *ResaleAuthorizationSummary { + s.Status = &v + return s +} + // The resource is currently in use. type ResourceInUseException struct { _ struct{} `type:"structure"` @@ -3360,6 +7074,434 @@ return s.RespMetadata.RequestID } +// Object that allows filtering on entity id of a SaaS product. +type SaaSProductEntityIdFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique entity id values to be filtered on. + ValueList []*string `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 SaaSProductEntityIdFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductEntityIdFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SaaSProductEntityIdFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SaaSProductEntityIdFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *SaaSProductEntityIdFilter) SetValueList(v []*string) *SaaSProductEntityIdFilter { + s.ValueList = v + return s +} + +// Object containing all the filter fields for SaaS products. Client can add +// a maximum of 8 filters in a single ListEntities request. +type SaaSProductFilters struct { + _ struct{} `type:"structure"` + + // Unique identifier for the SaaS product. + EntityId *SaaSProductEntityIdFilter `type:"structure"` + + // The last date on which the SaaS product was modified. + LastModifiedDate *SaaSProductLastModifiedDateFilter `type:"structure"` + + // The title of the SaaS product. + ProductTitle *SaaSProductTitleFilter `type:"structure"` + + // The visibility of the SaaS product. + Visibility *SaaSProductVisibilityFilter `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 SaaSProductFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductFilters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SaaSProductFilters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SaaSProductFilters"} + if s.EntityId != nil { + if err := s.EntityId.Validate(); err != nil { + invalidParams.AddNested("EntityId", err.(request.ErrInvalidParams)) + } + } + if s.LastModifiedDate != nil { + if err := s.LastModifiedDate.Validate(); err != nil { + invalidParams.AddNested("LastModifiedDate", err.(request.ErrInvalidParams)) + } + } + if s.ProductTitle != nil { + if err := s.ProductTitle.Validate(); err != nil { + invalidParams.AddNested("ProductTitle", err.(request.ErrInvalidParams)) + } + } + if s.Visibility != nil { + if err := s.Visibility.Validate(); err != nil { + invalidParams.AddNested("Visibility", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntityId sets the EntityId field's value. +func (s *SaaSProductFilters) SetEntityId(v *SaaSProductEntityIdFilter) *SaaSProductFilters { + s.EntityId = v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *SaaSProductFilters) SetLastModifiedDate(v *SaaSProductLastModifiedDateFilter) *SaaSProductFilters { + s.LastModifiedDate = v + return s +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *SaaSProductFilters) SetProductTitle(v *SaaSProductTitleFilter) *SaaSProductFilters { + s.ProductTitle = v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *SaaSProductFilters) SetVisibility(v *SaaSProductVisibilityFilter) *SaaSProductFilters { + s.Visibility = v + return s +} + +// Object that allows filtering based on the last modified date of SaaS products +type SaaSProductLastModifiedDateFilter struct { + _ struct{} `type:"structure"` + + // Dates between which the SaaS product was last modified. + DateRange *SaaSProductLastModifiedDateFilterDateRange `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 SaaSProductLastModifiedDateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductLastModifiedDateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SaaSProductLastModifiedDateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SaaSProductLastModifiedDateFilter"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateRange sets the DateRange field's value. +func (s *SaaSProductLastModifiedDateFilter) SetDateRange(v *SaaSProductLastModifiedDateFilterDateRange) *SaaSProductLastModifiedDateFilter { + s.DateRange = v + return s +} + +// Object that contains date range of the last modified date to be filtered +// on. You can optionally provide a BeforeValue and/or AfterValue. Both are +// inclusive. +type SaaSProductLastModifiedDateFilterDateRange struct { + _ struct{} `type:"structure"` + + // Date after which the SaaS product was last modified. + AfterValue *string `min:"20" type:"string"` + + // Date before which the SaaS product was last modified. + BeforeValue *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductLastModifiedDateFilterDateRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductLastModifiedDateFilterDateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SaaSProductLastModifiedDateFilterDateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SaaSProductLastModifiedDateFilterDateRange"} + if s.AfterValue != nil && len(*s.AfterValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("AfterValue", 20)) + } + if s.BeforeValue != nil && len(*s.BeforeValue) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BeforeValue", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterValue sets the AfterValue field's value. +func (s *SaaSProductLastModifiedDateFilterDateRange) SetAfterValue(v string) *SaaSProductLastModifiedDateFilterDateRange { + s.AfterValue = &v + return s +} + +// SetBeforeValue sets the BeforeValue field's value. +func (s *SaaSProductLastModifiedDateFilterDateRange) SetBeforeValue(v string) *SaaSProductLastModifiedDateFilterDateRange { + s.BeforeValue = &v + return s +} + +// Objects that allows sorting on SaaS products based on certain fields and +// sorting order. +type SaaSProductSort struct { + _ struct{} `type:"structure"` + + // Field to sort the SaaS products by. + SortBy *string `type:"string" enum:"SaaSProductSortBy"` + + // The sorting order. Can be ASCENDING or DESCENDING. The default value is DESCENDING. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductSort) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductSort) GoString() string { + return s.String() +} + +// SetSortBy sets the SortBy field's value. +func (s *SaaSProductSort) SetSortBy(v string) *SaaSProductSort { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *SaaSProductSort) SetSortOrder(v string) *SaaSProductSort { + s.SortOrder = &v + return s +} + +// Object that contains summarized information about a SaaS product. +type SaaSProductSummary struct { + _ struct{} `type:"structure"` + + // The title of the SaaS product. + ProductTitle *string `min:"1" type:"string"` + + // The lifecycle of the SaaS product. + Visibility *string `type:"string" enum:"SaaSProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductSummary) GoString() string { + return s.String() +} + +// SetProductTitle sets the ProductTitle field's value. +func (s *SaaSProductSummary) SetProductTitle(v string) *SaaSProductSummary { + s.ProductTitle = &v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *SaaSProductSummary) SetVisibility(v string) *SaaSProductSummary { + s.Visibility = &v + return s +} + +// Object that allows filtering on product title. +type SaaSProductTitleFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique product title values to be filtered on. + ValueList []*string `min:"1" type:"list"` + + // A string that will be the wildCard input for product tile filter. It matches + // the provided value as a substring in the actual value. + WildCardValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductTitleFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductTitleFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SaaSProductTitleFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SaaSProductTitleFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + if s.WildCardValue != nil && len(*s.WildCardValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WildCardValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *SaaSProductTitleFilter) SetValueList(v []*string) *SaaSProductTitleFilter { + s.ValueList = v + return s +} + +// SetWildCardValue sets the WildCardValue field's value. +func (s *SaaSProductTitleFilter) SetWildCardValue(v string) *SaaSProductTitleFilter { + s.WildCardValue = &v + return s +} + +// Object that allows filtering on the visibility of the product in the AWS +// Marketplace. +type SaaSProductVisibilityFilter struct { + _ struct{} `type:"structure"` + + // A string array of unique visibility values to be filtered on. + ValueList []*string `min:"1" type:"list" enum:"SaaSProductVisibilityString"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductVisibilityFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SaaSProductVisibilityFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SaaSProductVisibilityFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SaaSProductVisibilityFilter"} + if s.ValueList != nil && len(s.ValueList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ValueList", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValueList sets the ValueList field's value. +func (s *SaaSProductVisibilityFilter) SetValueList(v []*string) *SaaSProductVisibilityFilter { + s.ValueList = v + return s +} + // The maximum number of open requests per account has been exceeded. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -3428,8 +7570,9 @@ type Sort struct { _ struct{} `type:"structure"` - // For ListEntities, supported attributes include LastModifiedDate (default), - // Visibility, EntityId, and Name. + // For ListEntities, supported attributes include LastModifiedDate (default) + // and EntityId. In addition to LastModifiedDate and EntityId, each EntityType + // might support additional fields. // // For ListChangeSets, supported attributes include StartTime and EndTime. SortBy *string `min:"1" type:"string"` @@ -4032,6 +8175,54 @@ } const ( + // AmiProductSortByEntityId is a AmiProductSortBy enum value + AmiProductSortByEntityId = "EntityId" + + // AmiProductSortByLastModifiedDate is a AmiProductSortBy enum value + AmiProductSortByLastModifiedDate = "LastModifiedDate" + + // AmiProductSortByProductTitle is a AmiProductSortBy enum value + AmiProductSortByProductTitle = "ProductTitle" + + // AmiProductSortByVisibility is a AmiProductSortBy enum value + AmiProductSortByVisibility = "Visibility" +) + +// AmiProductSortBy_Values returns all elements of the AmiProductSortBy enum +func AmiProductSortBy_Values() []string { + return []string{ + AmiProductSortByEntityId, + AmiProductSortByLastModifiedDate, + AmiProductSortByProductTitle, + AmiProductSortByVisibility, + } +} + +const ( + // AmiProductVisibilityStringLimited is a AmiProductVisibilityString enum value + AmiProductVisibilityStringLimited = "Limited" + + // AmiProductVisibilityStringPublic is a AmiProductVisibilityString enum value + AmiProductVisibilityStringPublic = "Public" + + // AmiProductVisibilityStringRestricted is a AmiProductVisibilityString enum value + AmiProductVisibilityStringRestricted = "Restricted" + + // AmiProductVisibilityStringDraft is a AmiProductVisibilityString enum value + AmiProductVisibilityStringDraft = "Draft" +) + +// AmiProductVisibilityString_Values returns all elements of the AmiProductVisibilityString enum +func AmiProductVisibilityString_Values() []string { + return []string{ + AmiProductVisibilityStringLimited, + AmiProductVisibilityStringPublic, + AmiProductVisibilityStringRestricted, + AmiProductVisibilityStringDraft, + } +} + +const ( // ChangeStatusPreparing is a ChangeStatus enum value ChangeStatusPreparing = "PREPARING" @@ -4060,6 +8251,106 @@ } const ( + // ContainerProductSortByEntityId is a ContainerProductSortBy enum value + ContainerProductSortByEntityId = "EntityId" + + // ContainerProductSortByLastModifiedDate is a ContainerProductSortBy enum value + ContainerProductSortByLastModifiedDate = "LastModifiedDate" + + // ContainerProductSortByProductTitle is a ContainerProductSortBy enum value + ContainerProductSortByProductTitle = "ProductTitle" + + // ContainerProductSortByVisibility is a ContainerProductSortBy enum value + ContainerProductSortByVisibility = "Visibility" +) + +// ContainerProductSortBy_Values returns all elements of the ContainerProductSortBy enum +func ContainerProductSortBy_Values() []string { + return []string{ + ContainerProductSortByEntityId, + ContainerProductSortByLastModifiedDate, + ContainerProductSortByProductTitle, + ContainerProductSortByVisibility, + } +} + +const ( + // ContainerProductVisibilityStringLimited is a ContainerProductVisibilityString enum value + ContainerProductVisibilityStringLimited = "Limited" + + // ContainerProductVisibilityStringPublic is a ContainerProductVisibilityString enum value + ContainerProductVisibilityStringPublic = "Public" + + // ContainerProductVisibilityStringRestricted is a ContainerProductVisibilityString enum value + ContainerProductVisibilityStringRestricted = "Restricted" + + // ContainerProductVisibilityStringDraft is a ContainerProductVisibilityString enum value + ContainerProductVisibilityStringDraft = "Draft" +) + +// ContainerProductVisibilityString_Values returns all elements of the ContainerProductVisibilityString enum +func ContainerProductVisibilityString_Values() []string { + return []string{ + ContainerProductVisibilityStringLimited, + ContainerProductVisibilityStringPublic, + ContainerProductVisibilityStringRestricted, + ContainerProductVisibilityStringDraft, + } +} + +const ( + // DataProductSortByEntityId is a DataProductSortBy enum value + DataProductSortByEntityId = "EntityId" + + // DataProductSortByProductTitle is a DataProductSortBy enum value + DataProductSortByProductTitle = "ProductTitle" + + // DataProductSortByVisibility is a DataProductSortBy enum value + DataProductSortByVisibility = "Visibility" + + // DataProductSortByLastModifiedDate is a DataProductSortBy enum value + DataProductSortByLastModifiedDate = "LastModifiedDate" +) + +// DataProductSortBy_Values returns all elements of the DataProductSortBy enum +func DataProductSortBy_Values() []string { + return []string{ + DataProductSortByEntityId, + DataProductSortByProductTitle, + DataProductSortByVisibility, + DataProductSortByLastModifiedDate, + } +} + +const ( + // DataProductVisibilityStringLimited is a DataProductVisibilityString enum value + DataProductVisibilityStringLimited = "Limited" + + // DataProductVisibilityStringPublic is a DataProductVisibilityString enum value + DataProductVisibilityStringPublic = "Public" + + // DataProductVisibilityStringRestricted is a DataProductVisibilityString enum value + DataProductVisibilityStringRestricted = "Restricted" + + // DataProductVisibilityStringUnavailable is a DataProductVisibilityString enum value + DataProductVisibilityStringUnavailable = "Unavailable" + + // DataProductVisibilityStringDraft is a DataProductVisibilityString enum value + DataProductVisibilityStringDraft = "Draft" +) + +// DataProductVisibilityString_Values returns all elements of the DataProductVisibilityString enum +func DataProductVisibilityString_Values() []string { + return []string{ + DataProductVisibilityStringLimited, + DataProductVisibilityStringPublic, + DataProductVisibilityStringRestricted, + DataProductVisibilityStringUnavailable, + DataProductVisibilityStringDraft, + } +} + +const ( // FailureCodeClientError is a FailureCode enum value FailureCodeClientError = "CLIENT_ERROR" @@ -4076,6 +8367,90 @@ } const ( + // OfferSortByEntityId is a OfferSortBy enum value + OfferSortByEntityId = "EntityId" + + // OfferSortByName is a OfferSortBy enum value + OfferSortByName = "Name" + + // OfferSortByProductId is a OfferSortBy enum value + OfferSortByProductId = "ProductId" + + // OfferSortByReleaseDate is a OfferSortBy enum value + OfferSortByReleaseDate = "ReleaseDate" + + // OfferSortByAvailabilityEndDate is a OfferSortBy enum value + OfferSortByAvailabilityEndDate = "AvailabilityEndDate" + + // OfferSortByBuyerAccounts is a OfferSortBy enum value + OfferSortByBuyerAccounts = "BuyerAccounts" + + // OfferSortByState is a OfferSortBy enum value + OfferSortByState = "State" + + // OfferSortByTargeting is a OfferSortBy enum value + OfferSortByTargeting = "Targeting" + + // OfferSortByLastModifiedDate is a OfferSortBy enum value + OfferSortByLastModifiedDate = "LastModifiedDate" +) + +// OfferSortBy_Values returns all elements of the OfferSortBy enum +func OfferSortBy_Values() []string { + return []string{ + OfferSortByEntityId, + OfferSortByName, + OfferSortByProductId, + OfferSortByReleaseDate, + OfferSortByAvailabilityEndDate, + OfferSortByBuyerAccounts, + OfferSortByState, + OfferSortByTargeting, + OfferSortByLastModifiedDate, + } +} + +const ( + // OfferStateStringDraft is a OfferStateString enum value + OfferStateStringDraft = "Draft" + + // OfferStateStringReleased is a OfferStateString enum value + OfferStateStringReleased = "Released" +) + +// OfferStateString_Values returns all elements of the OfferStateString enum +func OfferStateString_Values() []string { + return []string{ + OfferStateStringDraft, + OfferStateStringReleased, + } +} + +const ( + // OfferTargetingStringBuyerAccounts is a OfferTargetingString enum value + OfferTargetingStringBuyerAccounts = "BuyerAccounts" + + // OfferTargetingStringParticipatingPrograms is a OfferTargetingString enum value + OfferTargetingStringParticipatingPrograms = "ParticipatingPrograms" + + // OfferTargetingStringCountryCodes is a OfferTargetingString enum value + OfferTargetingStringCountryCodes = "CountryCodes" + + // OfferTargetingStringNone is a OfferTargetingString enum value + OfferTargetingStringNone = "None" +) + +// OfferTargetingString_Values returns all elements of the OfferTargetingString enum +func OfferTargetingString_Values() []string { + return []string{ + OfferTargetingStringBuyerAccounts, + OfferTargetingStringParticipatingPrograms, + OfferTargetingStringCountryCodes, + OfferTargetingStringNone, + } +} + +const ( // OwnershipTypeSelf is a OwnershipType enum value OwnershipTypeSelf = "SELF" @@ -4091,6 +8466,134 @@ } } +const ( + // ResaleAuthorizationSortByEntityId is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByEntityId = "EntityId" + + // ResaleAuthorizationSortByName is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByName = "Name" + + // ResaleAuthorizationSortByProductId is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByProductId = "ProductId" + + // ResaleAuthorizationSortByProductName is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByProductName = "ProductName" + + // ResaleAuthorizationSortByManufacturerAccountId is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByManufacturerAccountId = "ManufacturerAccountId" + + // ResaleAuthorizationSortByManufacturerLegalName is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByManufacturerLegalName = "ManufacturerLegalName" + + // ResaleAuthorizationSortByResellerAccountId is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByResellerAccountId = "ResellerAccountID" + + // ResaleAuthorizationSortByResellerLegalName is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByResellerLegalName = "ResellerLegalName" + + // ResaleAuthorizationSortByStatus is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByStatus = "Status" + + // ResaleAuthorizationSortByOfferExtendedStatus is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByOfferExtendedStatus = "OfferExtendedStatus" + + // ResaleAuthorizationSortByCreatedDate is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByCreatedDate = "CreatedDate" + + // ResaleAuthorizationSortByAvailabilityEndDate is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByAvailabilityEndDate = "AvailabilityEndDate" + + // ResaleAuthorizationSortByLastModifiedDate is a ResaleAuthorizationSortBy enum value + ResaleAuthorizationSortByLastModifiedDate = "LastModifiedDate" +) + +// ResaleAuthorizationSortBy_Values returns all elements of the ResaleAuthorizationSortBy enum +func ResaleAuthorizationSortBy_Values() []string { + return []string{ + ResaleAuthorizationSortByEntityId, + ResaleAuthorizationSortByName, + ResaleAuthorizationSortByProductId, + ResaleAuthorizationSortByProductName, + ResaleAuthorizationSortByManufacturerAccountId, + ResaleAuthorizationSortByManufacturerLegalName, + ResaleAuthorizationSortByResellerAccountId, + ResaleAuthorizationSortByResellerLegalName, + ResaleAuthorizationSortByStatus, + ResaleAuthorizationSortByOfferExtendedStatus, + ResaleAuthorizationSortByCreatedDate, + ResaleAuthorizationSortByAvailabilityEndDate, + ResaleAuthorizationSortByLastModifiedDate, + } +} + +const ( + // ResaleAuthorizationStatusStringDraft is a ResaleAuthorizationStatusString enum value + ResaleAuthorizationStatusStringDraft = "Draft" + + // ResaleAuthorizationStatusStringActive is a ResaleAuthorizationStatusString enum value + ResaleAuthorizationStatusStringActive = "Active" + + // ResaleAuthorizationStatusStringRestricted is a ResaleAuthorizationStatusString enum value + ResaleAuthorizationStatusStringRestricted = "Restricted" +) + +// ResaleAuthorizationStatusString_Values returns all elements of the ResaleAuthorizationStatusString enum +func ResaleAuthorizationStatusString_Values() []string { + return []string{ + ResaleAuthorizationStatusStringDraft, + ResaleAuthorizationStatusStringActive, + ResaleAuthorizationStatusStringRestricted, + } +} + +const ( + // SaaSProductSortByEntityId is a SaaSProductSortBy enum value + SaaSProductSortByEntityId = "EntityId" + + // SaaSProductSortByProductTitle is a SaaSProductSortBy enum value + SaaSProductSortByProductTitle = "ProductTitle" + + // SaaSProductSortByVisibility is a SaaSProductSortBy enum value + SaaSProductSortByVisibility = "Visibility" + + // SaaSProductSortByLastModifiedDate is a SaaSProductSortBy enum value + SaaSProductSortByLastModifiedDate = "LastModifiedDate" +) + +// SaaSProductSortBy_Values returns all elements of the SaaSProductSortBy enum +func SaaSProductSortBy_Values() []string { + return []string{ + SaaSProductSortByEntityId, + SaaSProductSortByProductTitle, + SaaSProductSortByVisibility, + SaaSProductSortByLastModifiedDate, + } +} + +const ( + // SaaSProductVisibilityStringLimited is a SaaSProductVisibilityString enum value + SaaSProductVisibilityStringLimited = "Limited" + + // SaaSProductVisibilityStringPublic is a SaaSProductVisibilityString enum value + SaaSProductVisibilityStringPublic = "Public" + + // SaaSProductVisibilityStringRestricted is a SaaSProductVisibilityString enum value + SaaSProductVisibilityStringRestricted = "Restricted" + + // SaaSProductVisibilityStringDraft is a SaaSProductVisibilityString enum value + SaaSProductVisibilityStringDraft = "Draft" +) + +// SaaSProductVisibilityString_Values returns all elements of the SaaSProductVisibilityString enum +func SaaSProductVisibilityString_Values() []string { + return []string{ + SaaSProductVisibilityStringLimited, + SaaSProductVisibilityStringPublic, + SaaSProductVisibilityStringRestricted, + SaaSProductVisibilityStringDraft, + } +} + const ( // SortOrderAscending is a SortOrder enum value SortOrderAscending = "ASCENDING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacecommerceanalytics/api.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacecommerceanalytics/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacecommerceanalytics/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacecommerceanalytics/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -124,7 +124,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/marketplacecommerceanalytics-2015-07-01/StartSupportDataExport +// +// Deprecated: This target has been deprecated. As of December 2022 Product Support Connection is no longer supported. func (c *MarketplaceCommerceAnalytics) StartSupportDataExportRequest(input *StartSupportDataExportInput) (req *request.Request, output *StartSupportDataExportOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, StartSupportDataExport, has been deprecated") + } op := &request.Operation{ Name: opStartSupportDataExport, HTTPMethod: "POST", @@ -142,17 +147,17 @@ // StartSupportDataExport API operation for AWS Marketplace Commerce Analytics. // -// Given a data set type and a from date, asynchronously publishes the requested -// customer support data to the specified S3 bucket and notifies the specified -// SNS topic once the data is available. Returns a unique request identifier -// that can be used to correlate requests with notifications from the SNS topic. -// Data sets will be published in comma-separated values (CSV) format with the -// file name {data_set_type}_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. If a file with the -// same name already exists (e.g. if the same data set is requested twice), -// the original file will be overwritten by the new file. Requires a Role with -// an attached permissions policy providing Allow permissions for the following -// actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, -// iam:GetRolePolicy. +// This target has been deprecated. Given a data set type and a from date, asynchronously +// publishes the requested customer support data to the specified S3 bucket +// and notifies the specified SNS topic once the data is available. Returns +// a unique request identifier that can be used to correlate requests with notifications +// from the SNS topic. Data sets will be published in comma-separated values +// (CSV) format with the file name {data_set_type}_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. +// If a file with the same name already exists (e.g. if the same data set is +// requested twice), the original file will be overwritten by the new file. +// Requires a Role with an attached permissions policy providing Allow permissions +// for the following actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, +// sns:Publish, iam:GetRolePolicy. // // 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 @@ -166,6 +171,8 @@ // This exception is thrown when an internal service error occurs. // // See also, https://docs.aws.amazon.com/goto/WebAPI/marketplacecommerceanalytics-2015-07-01/StartSupportDataExport +// +// Deprecated: This target has been deprecated. As of December 2022 Product Support Connection is no longer supported. func (c *MarketplaceCommerceAnalytics) StartSupportDataExport(input *StartSupportDataExportInput) (*StartSupportDataExportOutput, error) { req, out := c.StartSupportDataExportRequest(input) return out, req.Send() @@ -180,6 +187,8 @@ // 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. +// +// Deprecated: This target has been deprecated. As of December 2022 Product Support Connection is no longer supported. func (c *MarketplaceCommerceAnalytics) StartSupportDataExportWithContext(ctx aws.Context, input *StartSupportDataExportInput, opts ...request.Option) (*StartSupportDataExportOutput, error) { req, out := c.StartSupportDataExportRequest(input) req.SetContext(ctx) @@ -517,20 +526,25 @@ return s } -// Container for the parameters to the StartSupportDataExport operation. +// This target has been deprecated. Container for the parameters to the StartSupportDataExport +// operation. +// +// Deprecated: This target has been deprecated. As of December 2022 Product Support Connection is no longer supported. type StartSupportDataExportInput struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` - // (Optional) Key-value pairs which will be returned, unmodified, in the Amazon - // SNS notification message and the data set metadata file. + // This target has been deprecated. (Optional) Key-value pairs which will be + // returned, unmodified, in the Amazon SNS notification message and the data + // set metadata file. CustomerDefinedValues map[string]*string `locationName:"customerDefinedValues" min:"1" type:"map"` - // Specifies the data set type to be written to the output csv file. The data - // set types customer_support_contacts_data and test_customer_support_contacts_data - // both result in a csv file containing the following fields: Product Id, Product - // Code, Customer Guid, Subscription Guid, Subscription Start Date, Organization, - // AWS Account Id, Given Name, Surname, Telephone Number, Email, Title, Country - // Code, ZIP Code, Operation Type, and Operation Time. + // This target has been deprecated. Specifies the data set type to be written + // to the output csv file. The data set types customer_support_contacts_data + // and test_customer_support_contacts_data both result in a csv file containing + // the following fields: Product Id, Product Code, Customer Guid, Subscription + // Guid, Subscription Start Date, Organization, AWS Account Id, Given Name, + // Surname, Telephone Number, Email, Title, Country Code, ZIP Code, Operation + // Type, and Operation Time. // // * customer_support_contacts_data Customer support contact data. The data // set will contain all changes (Creates, Updates, and Deletes) to customer @@ -542,33 +556,36 @@ // DataSetType is a required field DataSetType *string `locationName:"dataSetType" min:"1" type:"string" required:"true" enum:"SupportDataSetType"` - // The name (friendly name, not ARN) of the destination S3 bucket. + // This target has been deprecated. The name (friendly name, not ARN) of the + // destination S3 bucket. // // DestinationS3BucketName is a required field DestinationS3BucketName *string `locationName:"destinationS3BucketName" min:"1" type:"string" required:"true"` - // (Optional) The desired S3 prefix for the published data set, similar to a - // directory path in standard file systems. For example, if given the bucket - // name "mybucket" and the prefix "myprefix/mydatasets", the output file "outputfile" - // would be published to "s3://mybucket/myprefix/mydatasets/outputfile". If - // the prefix directory structure does not exist, it will be created. If no - // prefix is provided, the data set will be published to the S3 bucket root. + // This target has been deprecated. (Optional) The desired S3 prefix for the + // published data set, similar to a directory path in standard file systems. + // For example, if given the bucket name "mybucket" and the prefix "myprefix/mydatasets", + // the output file "outputfile" would be published to "s3://mybucket/myprefix/mydatasets/outputfile". + // If the prefix directory structure does not exist, it will be created. If + // no prefix is provided, the data set will be published to the S3 bucket root. DestinationS3Prefix *string `locationName:"destinationS3Prefix" type:"string"` - // The start date from which to retrieve the data set in UTC. This parameter - // only affects the customer_support_contacts_data data set type. + // This target has been deprecated. The start date from which to retrieve the + // data set in UTC. This parameter only affects the customer_support_contacts_data + // data set type. // // FromDate is a required field FromDate *time.Time `locationName:"fromDate" type:"timestamp" required:"true"` - // The Amazon Resource Name (ARN) of the Role with an attached permissions policy - // to interact with the provided AWS services. + // This target has been deprecated. The Amazon Resource Name (ARN) of the Role + // with an attached permissions policy to interact with the provided AWS services. // // RoleNameArn is a required field RoleNameArn *string `locationName:"roleNameArn" min:"1" type:"string" required:"true"` - // Amazon Resource Name (ARN) for the SNS Topic that will be notified when the - // data set has been published or if an error has occurred. + // This target has been deprecated. Amazon Resource Name (ARN) for the SNS Topic + // that will be notified when the data set has been published or if an error + // has occurred. // // SnsTopicArn is a required field SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string" required:"true"` @@ -674,13 +691,16 @@ return s } -// Container for the result of the StartSupportDataExport operation. +// This target has been deprecated. Container for the result of the StartSupportDataExport +// operation. +// +// Deprecated: This target has been deprecated. As of December 2022 Product Support Connection is no longer supported. type StartSupportDataExportOutput struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` - // A unique identifier representing a specific request to the StartSupportDataExport - // operation. This identifier can be used to correlate a request with notifications - // from the SNS topic. + // This target has been deprecated. A unique identifier representing a specific + // request to the StartSupportDataExport operation. This identifier can be used + // to correlate a request with notifications from the SNS topic. DataSetRequestId *string `locationName:"dataSetRequestId" type:"string"` } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/api.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,1382 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package marketplacedeployment + +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/restjson" +) + +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/marketplace-deployment-2023-01-25/ListTagsForResource +func (c *MarketplaceDeployment) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Marketplace Deployment Service. +// +// Lists all tags that have been added to a deployment parameter resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Marketplace Deployment Service's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Too many requests. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource wasn't found. +// +// - ValidationException +// An error occurred during validation. +// +// - InternalServerException +// There was an internal service exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-deployment-2023-01-25/ListTagsForResource +func (c *MarketplaceDeployment) 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 *MarketplaceDeployment) 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 opPutDeploymentParameter = "PutDeploymentParameter" + +// PutDeploymentParameterRequest generates a "aws/request.Request" representing the +// client's request for the PutDeploymentParameter 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 PutDeploymentParameter for more information on using the PutDeploymentParameter +// 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 PutDeploymentParameterRequest method. +// req, resp := client.PutDeploymentParameterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-deployment-2023-01-25/PutDeploymentParameter +func (c *MarketplaceDeployment) PutDeploymentParameterRequest(input *PutDeploymentParameterInput) (req *request.Request, output *PutDeploymentParameterOutput) { + op := &request.Operation{ + Name: opPutDeploymentParameter, + HTTPMethod: "POST", + HTTPPath: "/catalogs/{catalog}/products/{productId}/deployment-parameters", + } + + if input == nil { + input = &PutDeploymentParameterInput{} + } + + output = &PutDeploymentParameterOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutDeploymentParameter API operation for AWS Marketplace Deployment Service. +// +// Creates or updates a deployment parameter and is targeted by catalog and +// agreementId. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Marketplace Deployment Service's +// API operation PutDeploymentParameter for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Too many requests. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource wasn't found. +// +// - ServiceQuotaExceededException +// The maximum number of requests per account has been exceeded. +// +// - ConflictException +// The request configuration has conflicts. For details, see the accompanying +// error message. +// +// - ValidationException +// An error occurred during validation. +// +// - InternalServerException +// There was an internal service exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-deployment-2023-01-25/PutDeploymentParameter +func (c *MarketplaceDeployment) PutDeploymentParameter(input *PutDeploymentParameterInput) (*PutDeploymentParameterOutput, error) { + req, out := c.PutDeploymentParameterRequest(input) + return out, req.Send() +} + +// PutDeploymentParameterWithContext is the same as PutDeploymentParameter with the addition of +// the ability to pass a context and additional request options. +// +// See PutDeploymentParameter 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 *MarketplaceDeployment) PutDeploymentParameterWithContext(ctx aws.Context, input *PutDeploymentParameterInput, opts ...request.Option) (*PutDeploymentParameterOutput, error) { + req, out := c.PutDeploymentParameterRequest(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/marketplace-deployment-2023-01-25/TagResource +func (c *MarketplaceDeployment) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Marketplace Deployment Service. +// +// Tags 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 AWS Marketplace Deployment Service's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Too many requests. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource wasn't found. +// +// - ConflictException +// The request configuration has conflicts. For details, see the accompanying +// error message. +// +// - ValidationException +// An error occurred during validation. +// +// - InternalServerException +// There was an internal service exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-deployment-2023-01-25/TagResource +func (c *MarketplaceDeployment) 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 *MarketplaceDeployment) 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/marketplace-deployment-2023-01-25/UntagResource +func (c *MarketplaceDeployment) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Marketplace Deployment Service. +// +// Removes a tag or list 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 AWS Marketplace Deployment Service's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Too many requests. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource wasn't found. +// +// - ConflictException +// The request configuration has conflicts. For details, see the accompanying +// error message. +// +// - ValidationException +// An error occurred during validation. +// +// - InternalServerException +// There was an internal service exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/marketplace-deployment-2023-01-25/UntagResource +func (c *MarketplaceDeployment) 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 *MarketplaceDeployment) 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() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request configuration has conflicts. For details, see the accompanying +// error message. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The unique identifier for the resource associated with the error. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" 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 ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The shape containing the requested deployment parameter name and secretString. +type DeploymentParameterInput_ struct { + _ struct{} `type:"structure"` + + // The desired name of the deployment parameter. This is the identifier on which + // deployment parameters are keyed for a given buyer and product. If this name + // matches an existing deployment parameter, this request will update the existing + // resource. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The text to encrypt and store in the secret. + // + // SecretString is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeploymentParameterInput_'s + // String and GoString methods. + // + // SecretString is a required field + SecretString *string `locationName:"secretString" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentParameterInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeploymentParameterInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeploymentParameterInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeploymentParameterInput_"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SecretString == nil { + invalidParams.Add(request.NewErrParamRequired("SecretString")) + } + if s.SecretString != nil && len(*s.SecretString) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecretString", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeploymentParameterInput_) SetName(v string) *DeploymentParameterInput_ { + s.Name = &v + return s +} + +// SetSecretString sets the SecretString field's value. +func (s *DeploymentParameterInput_) SetSecretString(v string) *DeploymentParameterInput_ { + s.SecretString = &v + return s +} + +// There was an internal service exception. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) associated with the deployment parameter resource + // you want to list tags on. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" 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 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 key-value pairs, where each pair represents a tag present on the + // resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type PutDeploymentParameterInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the agreement. + // + // AgreementId is a required field + AgreementId *string `locationName:"agreementId" min:"1" type:"string" required:"true"` + + // The catalog related to the request. Fixed value: AWS Marketplace + // + // Catalog is a required field + Catalog *string `location:"uri" locationName:"catalog" min:"1" type:"string" required:"true"` + + // The idempotency token for deployment parameters. A unique identifier for + // the new version. + ClientToken *string `locationName:"clientToken" min:"32" type:"string" idempotencyToken:"true"` + + // The deployment parameter targeted to the acceptor of an agreement for which + // to create the AWS Secret Manager resource. + // + // DeploymentParameter is a required field + DeploymentParameter *DeploymentParameterInput_ `locationName:"deploymentParameter" type:"structure" required:"true"` + + // The date when deployment parameters expire and are scheduled for deletion. + ExpirationDate *time.Time `locationName:"expirationDate" type:"timestamp" timestampFormat:"iso8601"` + + // The product for which AWS Marketplace will save secrets for the buyer’s + // account. + // + // ProductId is a required field + ProductId *string `location:"uri" locationName:"productId" min:"1" type:"string" required:"true"` + + // A map of key-value pairs, where each pair represents a tag saved to the resource. + // Tags will only be applied for create operations, and they'll be ignored if + // the resource already exists. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeploymentParameterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeploymentParameterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutDeploymentParameterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutDeploymentParameterInput"} + if s.AgreementId == nil { + invalidParams.Add(request.NewErrParamRequired("AgreementId")) + } + if s.AgreementId != nil && len(*s.AgreementId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AgreementId", 1)) + } + if s.Catalog == nil { + invalidParams.Add(request.NewErrParamRequired("Catalog")) + } + if s.Catalog != nil && len(*s.Catalog) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Catalog", 1)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 32 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 32)) + } + if s.DeploymentParameter == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentParameter")) + } + if s.ProductId == nil { + invalidParams.Add(request.NewErrParamRequired("ProductId")) + } + if s.ProductId != nil && len(*s.ProductId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProductId", 1)) + } + if s.DeploymentParameter != nil { + if err := s.DeploymentParameter.Validate(); err != nil { + invalidParams.AddNested("DeploymentParameter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAgreementId sets the AgreementId field's value. +func (s *PutDeploymentParameterInput) SetAgreementId(v string) *PutDeploymentParameterInput { + s.AgreementId = &v + return s +} + +// SetCatalog sets the Catalog field's value. +func (s *PutDeploymentParameterInput) SetCatalog(v string) *PutDeploymentParameterInput { + s.Catalog = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *PutDeploymentParameterInput) SetClientToken(v string) *PutDeploymentParameterInput { + s.ClientToken = &v + return s +} + +// SetDeploymentParameter sets the DeploymentParameter field's value. +func (s *PutDeploymentParameterInput) SetDeploymentParameter(v *DeploymentParameterInput_) *PutDeploymentParameterInput { + s.DeploymentParameter = v + return s +} + +// SetExpirationDate sets the ExpirationDate field's value. +func (s *PutDeploymentParameterInput) SetExpirationDate(v time.Time) *PutDeploymentParameterInput { + s.ExpirationDate = &v + return s +} + +// SetProductId sets the ProductId field's value. +func (s *PutDeploymentParameterInput) SetProductId(v string) *PutDeploymentParameterInput { + s.ProductId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *PutDeploymentParameterInput) SetTags(v map[string]*string) *PutDeploymentParameterInput { + s.Tags = v + return s +} + +type PutDeploymentParameterOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the agreement. + // + // AgreementId is a required field + AgreementId *string `locationName:"agreementId" min:"1" type:"string" required:"true"` + + // The unique identifier of the deployment parameter. + // + // DeploymentParameterId is a required field + DeploymentParameterId *string `locationName:"deploymentParameterId" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) associated with the deployment parameter resource + // you want to create or update. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // A map of key-value pairs, where each pair represents a tag saved to the resource. + // Tags will only be applied for create operations, and they'll be ignored if + // the resource already exists. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeploymentParameterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutDeploymentParameterOutput) GoString() string { + return s.String() +} + +// SetAgreementId sets the AgreementId field's value. +func (s *PutDeploymentParameterOutput) SetAgreementId(v string) *PutDeploymentParameterOutput { + s.AgreementId = &v + return s +} + +// SetDeploymentParameterId sets the DeploymentParameterId field's value. +func (s *PutDeploymentParameterOutput) SetDeploymentParameterId(v string) *PutDeploymentParameterOutput { + s.DeploymentParameterId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *PutDeploymentParameterOutput) SetResourceArn(v string) *PutDeploymentParameterOutput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *PutDeploymentParameterOutput) SetTags(v map[string]*string) *PutDeploymentParameterOutput { + s.Tags = v + return s +} + +// The specified resource wasn't found. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The maximum number of requests per account has been 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 +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) associated with the resource you want to tag. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // A map of key-value pairs, where each pair represents a tag present on the + // resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// Too many requests. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) associated with the resource you want to remove + // the tag from. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // A list of key names of tags to be removed. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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() +} + +// An error occurred during validation. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The field name associated with the error. + // + // FieldName is a required field + FieldName *string `locationName:"fieldName" type:"string" required:"true"` + + 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\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,34 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package marketplacedeployment provides the client and types for making API +// requests to AWS Marketplace Deployment Service. +// +// The AWS Marketplace Deployment Service supports the Quick Launch experience, +// which is a deployment option for software as a service (SaaS) products. Quick +// Launch simplifies and reduces the time, resources, and steps required to +// configure, deploy, and launch a products. The AWS Marketplace Deployment +// Service provides sellers with a secure method for passing deployment parameters +// (for example, API keys and external IDs) to buyers during the Quick Launch +// experience. +// +// See https://docs.aws.amazon.com/goto/WebAPI/marketplace-deployment-2023-01-25 for more information on this service. +// +// See marketplacedeployment package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/marketplacedeployment/ +// +// # Using the Client +// +// To contact AWS Marketplace Deployment Service with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Marketplace Deployment Service client MarketplaceDeployment for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/marketplacedeployment/#New +package marketplacedeployment diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,63 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package marketplacedeployment + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // The request configuration has conflicts. For details, see the accompanying + // error message. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // There was an internal service exception. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified resource wasn't found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The maximum number of requests per account has been exceeded. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // Too many requests. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // An error occurred during validation. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/marketplacedeploymentiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/marketplacedeploymentiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/marketplacedeploymentiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/marketplacedeploymentiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,80 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package marketplacedeploymentiface provides an interface to enable mocking the AWS Marketplace Deployment Service 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 marketplacedeploymentiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/marketplacedeployment" +) + +// MarketplaceDeploymentAPI provides an interface to enable mocking the +// marketplacedeployment.MarketplaceDeployment service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Marketplace Deployment Service. +// func myFunc(svc marketplacedeploymentiface.MarketplaceDeploymentAPI) bool { +// // Make svc.ListTagsForResource request +// } +// +// func main() { +// sess := session.New() +// svc := marketplacedeployment.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockMarketplaceDeploymentClient struct { +// marketplacedeploymentiface.MarketplaceDeploymentAPI +// } +// func (m *mockMarketplaceDeploymentClient) ListTagsForResource(input *marketplacedeployment.ListTagsForResourceInput) (*marketplacedeployment.ListTagsForResourceOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockMarketplaceDeploymentClient{} +// +// 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 MarketplaceDeploymentAPI interface { + ListTagsForResource(*marketplacedeployment.ListTagsForResourceInput) (*marketplacedeployment.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *marketplacedeployment.ListTagsForResourceInput, ...request.Option) (*marketplacedeployment.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*marketplacedeployment.ListTagsForResourceInput) (*request.Request, *marketplacedeployment.ListTagsForResourceOutput) + + PutDeploymentParameter(*marketplacedeployment.PutDeploymentParameterInput) (*marketplacedeployment.PutDeploymentParameterOutput, error) + PutDeploymentParameterWithContext(aws.Context, *marketplacedeployment.PutDeploymentParameterInput, ...request.Option) (*marketplacedeployment.PutDeploymentParameterOutput, error) + PutDeploymentParameterRequest(*marketplacedeployment.PutDeploymentParameterInput) (*request.Request, *marketplacedeployment.PutDeploymentParameterOutput) + + TagResource(*marketplacedeployment.TagResourceInput) (*marketplacedeployment.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *marketplacedeployment.TagResourceInput, ...request.Option) (*marketplacedeployment.TagResourceOutput, error) + TagResourceRequest(*marketplacedeployment.TagResourceInput) (*request.Request, *marketplacedeployment.TagResourceOutput) + + UntagResource(*marketplacedeployment.UntagResourceInput) (*marketplacedeployment.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *marketplacedeployment.UntagResourceInput, ...request.Option) (*marketplacedeployment.UntagResourceOutput, error) + UntagResourceRequest(*marketplacedeployment.UntagResourceInput) (*request.Request, *marketplacedeployment.UntagResourceOutput) +} + +var _ MarketplaceDeploymentAPI = (*marketplacedeployment.MarketplaceDeployment)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/service.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplacedeployment/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplacedeployment/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package marketplacedeployment + +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/restjson" +) + +// MarketplaceDeployment provides the API operation methods for making requests to +// AWS Marketplace Deployment Service. See this package's package overview docs +// for details on the service. +// +// MarketplaceDeployment methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type MarketplaceDeployment 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 = "Marketplace Deployment" // Name of service. + EndpointsID = "deployment-marketplace" // ID to lookup a service endpoint with. + ServiceID = "Marketplace Deployment" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the MarketplaceDeployment 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 MarketplaceDeployment client from just a session. +// svc := marketplacedeployment.New(mySession) +// +// // Create a MarketplaceDeployment client with additional configuration +// svc := marketplacedeployment.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *MarketplaceDeployment { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "aws-marketplace" + } + 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) *MarketplaceDeployment { + svc := &MarketplaceDeployment{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-01-25", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a MarketplaceDeployment operation and runs any +// custom request initialization. +func (c *MarketplaceDeployment) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceentitlementservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceentitlementservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceentitlementservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceentitlementservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -42,6 +42,12 @@ Name: opGetEntitlements, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -99,6 +105,57 @@ return out, req.Send() } +// GetEntitlementsPages iterates over the pages of a GetEntitlements operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetEntitlements 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 GetEntitlements operation. +// pageNum := 0 +// err := client.GetEntitlementsPages(params, +// func(page *marketplaceentitlementservice.GetEntitlementsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MarketplaceEntitlementService) GetEntitlementsPages(input *GetEntitlementsInput, fn func(*GetEntitlementsOutput, bool) bool) error { + return c.GetEntitlementsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetEntitlementsPagesWithContext same as GetEntitlementsPages 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 *MarketplaceEntitlementService) GetEntitlementsPagesWithContext(ctx aws.Context, input *GetEntitlementsInput, fn func(*GetEntitlementsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetEntitlementsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetEntitlementsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetEntitlementsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + // An entitlement represents capacity in a product owned by the customer. For // example, a customer might own some number of users or seats in an SaaS application // or some amount of data capacity in a multi-tenant database. @@ -255,7 +312,7 @@ // The maximum number of items to retrieve from the GetEntitlements operation. // For pagination, use the NextToken field in subsequent calls to GetEntitlements. - MaxResults *int64 `type:"integer"` + MaxResults *int64 `min:"1" type:"integer"` // For paginated calls to GetEntitlements, pass the NextToken from the previous // GetEntitlementsResult. @@ -290,6 +347,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *GetEntitlementsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetEntitlementsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } if s.ProductCode == nil { invalidParams.Add(request.NewErrParamRequired("ProductCode")) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceentitlementservice/marketplaceentitlementserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceentitlementservice/marketplaceentitlementserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/marketplaceentitlementservice/marketplaceentitlementserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/marketplaceentitlementservice/marketplaceentitlementserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -63,6 +63,9 @@ GetEntitlements(*marketplaceentitlementservice.GetEntitlementsInput) (*marketplaceentitlementservice.GetEntitlementsOutput, error) GetEntitlementsWithContext(aws.Context, *marketplaceentitlementservice.GetEntitlementsInput, ...request.Option) (*marketplaceentitlementservice.GetEntitlementsOutput, error) GetEntitlementsRequest(*marketplaceentitlementservice.GetEntitlementsInput) (*request.Request, *marketplaceentitlementservice.GetEntitlementsOutput) + + GetEntitlementsPages(*marketplaceentitlementservice.GetEntitlementsInput, func(*marketplaceentitlementservice.GetEntitlementsOutput, bool) bool) error + GetEntitlementsPagesWithContext(aws.Context, *marketplaceentitlementservice.GetEntitlementsInput, func(*marketplaceentitlementservice.GetEntitlementsOutput, bool) bool, ...request.Option) error } var _ MarketplaceEntitlementServiceAPI = (*marketplaceentitlementservice.MarketplaceEntitlementService)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mediaconvert/api.go golang-github-aws-aws-sdk-go-1.48.14/service/mediaconvert/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mediaconvert/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mediaconvert/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3221,7 +3221,7 @@ // 1 and even numbers up to 64. For example, 1, 2, 4, 6, and so on, up to 64. Channels *int64 `locationName:"channels" min:"1" type:"integer"` - // Sample rate in hz. + // Sample rate in Hz. SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer"` } @@ -3496,21 +3496,29 @@ return s.String() } -// When you mimic a multi-channel audio layout with multiple mono-channel tracks, -// you can tag each channel layout manually. For example, you would tag the -// tracks that contain your left, right, and center audio with Left (L), Right -// (R), and Center (C), respectively. When you don't specify a value, MediaConvert -// labels your track as Center (C) by default. To use audio layout tagging, -// your output must be in a QuickTime (.mov) container; your audio codec must -// be AAC, WAV, or AIFF; and you must set up your audio track to have only one -// channel. +// Specify the QuickTime audio channel layout tags for the audio channels in +// this audio track. When you don't specify a value, MediaConvert labels your +// track as Center (C) by default. To use Audio layout tagging, your output +// must be in a QuickTime (MOV) container and your audio codec must be AAC, +// WAV, or AIFF. type AudioChannelTaggingSettings struct { _ struct{} `type:"structure"` - // You can add a tag for this mono-channel audio track to mimic its placement - // in a multi-channel layout. For example, if this track is the left surround - // channel, choose Left surround (LS). + // Specify the QuickTime audio channel layout tags for the audio channels in + // this audio track. Enter channel layout tags in the same order as your output's + // audio channel order. For example, if your output audio track has a left and + // a right channel, enter Left (L) for the first channel and Right (R) for the + // second. If your output has multiple single-channel audio tracks, enter a + // single channel layout tag for each track. ChannelTag *string `locationName:"channelTag" type:"string" enum:"AudioChannelTag"` + + // Specify the QuickTime audio channel layout tags for the audio channels in + // this audio track. Enter channel layout tags in the same order as your output's + // audio channel order. For example, if your output audio track has a left and + // a right channel, enter Left (L) for the first channel and Right (R) for the + // second. If your output has multiple single-channel audio tracks, enter a + // single channel layout tag for each track. + ChannelTags []*string `locationName:"channelTags" type:"list" enum:"AudioChannelTag"` } // String returns the string representation. @@ -3537,6 +3545,12 @@ return s } +// SetChannelTags sets the ChannelTags field's value. +func (s *AudioChannelTaggingSettings) SetChannelTags(v []*string) *AudioChannelTaggingSettings { + s.ChannelTags = v + return s +} + // Settings related to audio encoding. The settings in this group vary depending // on the value that you choose for your audio codec. type AudioCodecSettings struct { @@ -3758,14 +3772,11 @@ type AudioDescription struct { _ struct{} `type:"structure"` - // When you mimic a multi-channel audio layout with multiple mono-channel tracks, - // you can tag each channel layout manually. For example, you would tag the - // tracks that contain your left, right, and center audio with Left (L), Right - // (R), and Center (C), respectively. When you don't specify a value, MediaConvert - // labels your track as Center (C) by default. To use audio layout tagging, - // your output must be in a QuickTime (.mov) container; your audio codec must - // be AAC, WAV, or AIFF; and you must set up your audio track to have only one - // channel. + // Specify the QuickTime audio channel layout tags for the audio channels in + // this audio track. When you don't specify a value, MediaConvert labels your + // track as Center (C) by default. To use Audio layout tagging, your output + // must be in a QuickTime (MOV) container and your audio codec must be AAC, + // WAV, or AIFF. AudioChannelTaggingSettings *AudioChannelTaggingSettings `locationName:"audioChannelTaggingSettings" type:"structure"` // Advanced audio normalization settings. Ignore these settings unless you need @@ -7213,10 +7224,13 @@ // Use this setting to control the values that MediaConvert puts in your HLS // parent playlist to control how the client player selects which audio track - // to play. The other options for this setting determine the values that MediaConvert - // writes for the DEFAULT and AUTOSELECT attributes of the EXT-X-MEDIA entry - // for the audio variant. For more information about these attributes, see the - // Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. + // to play. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for + // any variant that you want to prohibit the client from playing with video. + // This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF + // in the HLS manifest. The other options for this setting determine the values + // that MediaConvert writes for the DEFAULT and AUTOSELECT attributes of the + // EXT-X-MEDIA entry for the audio variant. For more information about these + // attributes, see the Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. // Choose Alternate audio, auto select, default to set DEFAULT=YES and AUTOSELECT=YES. // Choose this value for only one variant in your output group. Choose Alternate // audio, auto select, not default to set DEFAULT=NO and AUTOSELECT=YES. Choose @@ -11306,9 +11320,9 @@ type F4vSettings struct { _ struct{} `type:"structure"` - // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning - // of the archive as required for progressive downloading. Otherwise it is placed - // normally at the end. + // To place the MOOV atom at the beginning of your output, which is useful for + // progressive downloading: Leave blank or choose Progressive download. To place + // the MOOV at the end of your output: Choose Normal. MoovPlacement *string `locationName:"moovPlacement" type:"string" enum:"F4vMoovPlacement"` } @@ -11525,7 +11539,7 @@ // the API, valid values are between 1 and 8. Channels *int64 `locationName:"channels" min:"1" type:"integer"` - // Sample rate in hz. + // Sample rate in Hz. SampleRate *int64 `locationName:"sampleRate" min:"22050" type:"integer"` } @@ -12333,6 +12347,13 @@ // Static. DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H264DynamicSubGop"` + // Optionally include or suppress markers at the end of your output that signal + // the end of the video stream. To include end of stream markers: Leave blank + // or keep the default value, Include. To not include end of stream markers: + // Choose Suppress. This is useful when your output will be inserted into another + // stream. + EndOfStreamMarkers *string `locationName:"endOfStreamMarkers" type:"string" enum:"H264EndOfStreamMarkers"` + // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. EntropyEncoding *string `locationName:"entropyEncoding" type:"string" enum:"H264EntropyEncoding"` @@ -12732,6 +12753,12 @@ return s } +// SetEndOfStreamMarkers sets the EndOfStreamMarkers field's value. +func (s *H264Settings) SetEndOfStreamMarkers(v string) *H264Settings { + s.EndOfStreamMarkers = &v + return s +} + // SetEntropyEncoding sets the EntropyEncoding field's value. func (s *H264Settings) SetEntropyEncoding(v string) *H264Settings { s.EntropyEncoding = &v @@ -13086,6 +13113,13 @@ // Static. DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H265DynamicSubGop"` + // Optionally include or suppress markers at the end of your output that signal + // the end of the video stream. To include end of stream markers: Leave blank + // or keep the default value, Include. To not include end of stream markers: + // Choose Suppress. This is useful when your output will be inserted into another + // stream. + EndOfStreamMarkers *string `locationName:"endOfStreamMarkers" type:"string" enum:"H265EndOfStreamMarkers"` + // Enable this setting to have the encoder reduce I-frame pop. I-frame pop appears // as a visual flicker that can arise when the encoder saves bits by copying // some macroblocks many times from frame to frame, and then refreshes them @@ -13467,6 +13501,12 @@ return s } +// SetEndOfStreamMarkers sets the EndOfStreamMarkers field's value. +func (s *H265Settings) SetEndOfStreamMarkers(v string) *H265Settings { + s.EndOfStreamMarkers = &v + return s +} + // SetFlickerAdaptiveQuantization sets the FlickerAdaptiveQuantization field's value. func (s *H265Settings) SetFlickerAdaptiveQuantization(v string) *H265Settings { s.FlickerAdaptiveQuantization = &v @@ -15270,6 +15310,9 @@ // both. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-generator.html VideoGenerator *InputVideoGenerator `locationName:"videoGenerator" type:"structure"` + // Contains an array of video overlays. + VideoOverlays []*VideoOverlay `locationName:"videoOverlays" type:"list"` + // Input video selectors contain the video settings for the input. Each of your // inputs can have up to one video selector. VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` @@ -15350,6 +15393,16 @@ invalidParams.AddNested("VideoGenerator", err.(request.ErrInvalidParams)) } } + if s.VideoOverlays != nil { + for i, v := range s.VideoOverlays { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VideoOverlays", i), err.(request.ErrInvalidParams)) + } + } + } if s.VideoSelector != nil { if err := s.VideoSelector.Validate(); err != nil { invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) @@ -15500,6 +15553,12 @@ return s } +// SetVideoOverlays sets the VideoOverlays field's value. +func (s *Input) SetVideoOverlays(v []*VideoOverlay) *Input { + s.VideoOverlays = v + return s +} + // SetVideoSelector sets the VideoSelector field's value. func (s *Input) SetVideoSelector(v *VideoSelector) *Input { s.VideoSelector = v @@ -15788,6 +15847,9 @@ // timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode. TimecodeStart *string `locationName:"timecodeStart" min:"11" type:"string"` + // Contains an array of video overlays. + VideoOverlays []*VideoOverlay `locationName:"videoOverlays" type:"list"` + // Input video selectors contain the video settings for the input. Each of your // inputs can have up to one video selector. VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` @@ -15858,6 +15920,16 @@ invalidParams.AddNested("Position", err.(request.ErrInvalidParams)) } } + if s.VideoOverlays != nil { + for i, v := range s.VideoOverlays { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VideoOverlays", i), err.(request.ErrInvalidParams)) + } + } + } if s.VideoSelector != nil { if err := s.VideoSelector.Validate(); err != nil { invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) @@ -15984,6 +16056,12 @@ return s } +// SetVideoOverlays sets the VideoOverlays field's value. +func (s *InputTemplate) SetVideoOverlays(v []*VideoOverlay) *InputTemplate { + s.VideoOverlays = v + return s +} + // SetVideoSelector sets the VideoSelector field's value. func (s *InputTemplate) SetVideoSelector(v *VideoSelector) *InputTemplate { s.VideoSelector = v @@ -16638,6 +16716,16 @@ // 05h Content Advisory. ExtendedDataServices *ExtendedDataServices `locationName:"extendedDataServices" type:"structure"` + // Specify the input that MediaConvert references for your default output settings. + // MediaConvert uses this input's Resolution, Frame rate, and Pixel aspect ratio + // for all outputs that you don't manually specify different output settings + // for. Enabling this setting will disable "Follow source" for all other inputs. + // If MediaConvert cannot follow your source, for example if you specify an + // audio-only input, MediaConvert uses the first followable input instead. In + // your JSON job specification, enter an integer from 1 to 150 corresponding + // to the order of your inputs. + FollowSource *int64 `locationName:"followSource" min:"1" type:"integer"` + // Use Inputs to define source file used in the transcode job. There can be // multiple inputs add in a job. These inputs will be concantenated together // to create the output. @@ -16713,6 +16801,9 @@ if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 { invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000)) } + if s.FollowSource != nil && *s.FollowSource < 1 { + invalidParams.Add(request.NewErrParamMinValue("FollowSource", 1)) + } if s.AvailBlanking != nil { if err := s.AvailBlanking.Validate(); err != nil { invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams)) @@ -16784,6 +16875,12 @@ return s } +// SetFollowSource sets the FollowSource field's value. +func (s *JobSettings) SetFollowSource(v int64) *JobSettings { + s.FollowSource = &v + return s +} + // SetInputs sets the Inputs field's value. func (s *JobSettings) SetInputs(v []*Input) *JobSettings { s.Inputs = v @@ -17009,6 +17106,16 @@ // 05h Content Advisory. ExtendedDataServices *ExtendedDataServices `locationName:"extendedDataServices" type:"structure"` + // Specify the input that MediaConvert references for your default output settings. + // MediaConvert uses this input's Resolution, Frame rate, and Pixel aspect ratio + // for all outputs that you don't manually specify different output settings + // for. Enabling this setting will disable "Follow source" for all other inputs. + // If MediaConvert cannot follow your source, for example if you specify an + // audio-only input, MediaConvert uses the first followable input instead. In + // your JSON job specification, enter an integer from 1 to 150 corresponding + // to the order of your inputs. + FollowSource *int64 `locationName:"followSource" min:"1" type:"integer"` + // Use Inputs to define the source file used in the transcode job. There can // only be one input in a job template. Using the API, you can include multiple // inputs when referencing a job template. @@ -17084,6 +17191,9 @@ if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 { invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000)) } + if s.FollowSource != nil && *s.FollowSource < 1 { + invalidParams.Add(request.NewErrParamMinValue("FollowSource", 1)) + } if s.AvailBlanking != nil { if err := s.AvailBlanking.Validate(); err != nil { invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams)) @@ -17155,6 +17265,12 @@ return s } +// SetFollowSource sets the FollowSource field's value. +func (s *JobTemplateSettings) SetFollowSource(v int64) *JobTemplateSettings { + s.FollowSource = &v + return s +} + // SetInputs sets the Inputs field's value. func (s *JobTemplateSettings) SetInputs(v []*InputTemplate) *JobTemplateSettings { s.Inputs = v @@ -19334,7 +19450,7 @@ // you 2. In the API, valid values are 1 and 2. Channels *int64 `locationName:"channels" min:"1" type:"integer"` - // Sample rate in hz. + // Sample rate in Hz. SampleRate *int64 `locationName:"sampleRate" min:"32000" type:"integer"` } @@ -19410,7 +19526,7 @@ // bitrate (CBR) or a variable bitrate (VBR). RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"Mp3RateControlMode"` - // Sample rate in hz. + // Sample rate in Hz. SampleRate *int64 `locationName:"sampleRate" min:"22050" type:"integer"` // Required when you set Bitrate control mode to VBR. Specify the audio quality @@ -19522,9 +19638,9 @@ // Inserts a free-space box immediately after the moov box. FreeSpaceBox *string `locationName:"freeSpaceBox" type:"string" enum:"Mp4FreeSpaceBox"` - // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning - // of the archive as required for progressive downloading. Otherwise it is placed - // normally at the end. + // To place the MOOV atom at the beginning of your output, which is useful for + // progressive downloading: Leave blank or choose Progressive download. To place + // the MOOV at the end of your output: Choose Normal. MoovPlacement *string `locationName:"moovPlacement" type:"string" enum:"Mp4MoovPlacement"` // Overrides the "Major Brand" field in the output file. Usually not necessary @@ -21281,7 +21397,7 @@ // values are 1 and 2. Channels *int64 `locationName:"channels" min:"1" type:"integer"` - // Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The + // Optional. Sample rate in Hz. Valid values are 16000, 24000, and 48000. The // default value is 48000. SampleRate *int64 `locationName:"sampleRate" min:"16000" type:"integer"` } @@ -23100,7 +23216,9 @@ // S3. Encryption *S3EncryptionSettings `locationName:"encryption" type:"structure"` - // Specify the S3 storage class to use for this destination. + // Specify the S3 storage class to use for this output. To use your destination's + // default storage class: Keep the default value, Not set. For more information + // about S3 storage classes, see https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html StorageClass *string `locationName:"storageClass" type:"string" enum:"S3StorageClass"` } @@ -25052,11 +25170,8 @@ // * Choose None to remove all input AFD values from this output. RespondToAfd *string `locationName:"respondToAfd" type:"string" enum:"RespondToAfd"` - // Specify how the service handles outputs that have a different aspect ratio - // from the input aspect ratio. Choose Stretch to output to have the service - // stretch your video image to fit. Keep the setting Default to have the service - // letterbox your video instead. This setting overrides any value that you specify - // for the setting Selection placement in this output. + // Specify the video Scaling behavior when your output has a different resolution + // than your input. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-scaling.html ScalingBehavior *string `locationName:"scalingBehavior" type:"string" enum:"ScalingBehavior"` // Use Sharpness setting to specify the strength of anti-aliasing. This setting @@ -25275,6 +25390,218 @@ return s } +// Overlay one or more videos on top of your input video. For more information, +// see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-overlays.html +type VideoOverlay struct { + _ struct{} `type:"structure"` + + // Enter the end timecode in the underlying input video for this overlay. Your + // overlay will be active through this frame. To display your video overlay + // for the duration of the underlying video: Leave blank. Use the format HH:MM:SS:FF + // or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, + // and FF is the frame number. When entering this value, take into account your + // choice for the underlying Input timecode source. For example, if you have + // embedded timecodes that start at 01:00:00:00 and you want your overlay to + // end ten minutes into the video, enter 01:10:00:00. + EndTimecode *string `locationName:"endTimecode" type:"string"` + + // Input settings for Video overlay. You can include one or more video overlays + // in sequence at different times that you specify. + Input *VideoOverlayInput_ `locationName:"input" type:"structure"` + + // Enter the start timecode in the underlying input video for this overlay. + // Your overlay will be active starting with this frame. To display your video + // overlay starting at the beginning of the underlying video: Leave blank. Use + // the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, + // SS is the second, and FF is the frame number. When entering this value, take + // into account your choice for the underlying Input timecode source. For example, + // if you have embedded timecodes that start at 01:00:00:00 and you want your + // overlay to begin five minutes into the video, enter 01:05:00:00. + StartTimecode *string `locationName:"startTimecode" 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 VideoOverlay) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlay) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VideoOverlay) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VideoOverlay"} + if s.Input != nil { + if err := s.Input.Validate(); err != nil { + invalidParams.AddNested("Input", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndTimecode sets the EndTimecode field's value. +func (s *VideoOverlay) SetEndTimecode(v string) *VideoOverlay { + s.EndTimecode = &v + return s +} + +// SetInput sets the Input field's value. +func (s *VideoOverlay) SetInput(v *VideoOverlayInput_) *VideoOverlay { + s.Input = v + return s +} + +// SetStartTimecode sets the StartTimecode field's value. +func (s *VideoOverlay) SetStartTimecode(v string) *VideoOverlay { + s.StartTimecode = &v + return s +} + +// To transcode only portions of your video overlay, include one input clip +// for each part of your video overlay that you want in your output. +type VideoOverlayInputClipping struct { + _ struct{} `type:"structure"` + + // Specify the timecode of the last frame to include in your video overlay's + // clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM + // is the minute, SS is the second, and FF is the frame number. When entering + // this value, take into account your choice for Timecode source. + EndTimecode *string `locationName:"endTimecode" type:"string"` + + // Specify the timecode of the first frame to include in your video overlay's + // clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM + // is the minute, SS is the second, and FF is the frame number. When entering + // this value, take into account your choice for Timecode source. + StartTimecode *string `locationName:"startTimecode" 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 VideoOverlayInputClipping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlayInputClipping) GoString() string { + return s.String() +} + +// SetEndTimecode sets the EndTimecode field's value. +func (s *VideoOverlayInputClipping) SetEndTimecode(v string) *VideoOverlayInputClipping { + s.EndTimecode = &v + return s +} + +// SetStartTimecode sets the StartTimecode field's value. +func (s *VideoOverlayInputClipping) SetStartTimecode(v string) *VideoOverlayInputClipping { + s.StartTimecode = &v + return s +} + +// Input settings for Video overlay. You can include one or more video overlays +// in sequence at different times that you specify. +type VideoOverlayInput_ struct { + _ struct{} `type:"structure"` + + // Specify the input file S3, HTTP, or HTTPS URI for your video overlay. For + // consistency in color and formatting in your output video image, we recommend + // that you specify a video with similar characteristics as the underlying input + // video. + FileInput *string `locationName:"fileInput" type:"string"` + + // Specify one or more clips to use from your video overlay. When you include + // an input clip, you must also specify its start timecode, end timecode, or + // both start and end timecode. + InputClippings []*VideoOverlayInputClipping `locationName:"inputClippings" type:"list"` + + // Specify the timecode source for your video overlay input clips. To use the + // timecode present in your video overlay: Choose Embedded. To use a zerobased + // timecode: Choose Start at 0. To choose a timecode: Choose Specified start. + // When you do, enter the starting timecode in Start timecode. If you don't + // specify a value for Timecode source, MediaConvert uses Embedded by default. + TimecodeSource *string `locationName:"timecodeSource" type:"string" enum:"InputTimecodeSource"` + + // Specify the starting timecode for this video overlay. To use this setting, + // you must set Timecode source to Specified start. + TimecodeStart *string `locationName:"timecodeStart" min:"11" 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 VideoOverlayInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlayInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VideoOverlayInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VideoOverlayInput_"} + if s.TimecodeStart != nil && len(*s.TimecodeStart) < 11 { + invalidParams.Add(request.NewErrParamMinLen("TimecodeStart", 11)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileInput sets the FileInput field's value. +func (s *VideoOverlayInput_) SetFileInput(v string) *VideoOverlayInput_ { + s.FileInput = &v + return s +} + +// SetInputClippings sets the InputClippings field's value. +func (s *VideoOverlayInput_) SetInputClippings(v []*VideoOverlayInputClipping) *VideoOverlayInput_ { + s.InputClippings = v + return s +} + +// SetTimecodeSource sets the TimecodeSource field's value. +func (s *VideoOverlayInput_) SetTimecodeSource(v string) *VideoOverlayInput_ { + s.TimecodeSource = &v + return s +} + +// SetTimecodeStart sets the TimecodeStart field's value. +func (s *VideoOverlayInput_) SetTimecodeStart(v string) *VideoOverlayInput_ { + s.TimecodeStart = &v + return s +} + // Find additional transcoding features under Preprocessors. Enable the features // at each output individually. These features are disabled by default. type VideoPreprocessor struct { @@ -27637,9 +27964,12 @@ } } -// You can add a tag for this mono-channel audio track to mimic its placement -// in a multi-channel layout. For example, if this track is the left surround -// channel, choose Left surround (LS). +// Specify the QuickTime audio channel layout tags for the audio channels in +// this audio track. Enter channel layout tags in the same order as your output's +// audio channel order. For example, if your output audio track has a left and +// a right channel, enter Left (L) for the first channel and Right (R) for the +// second. If your output has multiple single-channel audio tracks, enter a +// single channel layout tag for each track. const ( // AudioChannelTagL is a AudioChannelTag enum value AudioChannelTagL = "L" @@ -29368,10 +29698,13 @@ // Use this setting to control the values that MediaConvert puts in your HLS // parent playlist to control how the client player selects which audio track -// to play. The other options for this setting determine the values that MediaConvert -// writes for the DEFAULT and AUTOSELECT attributes of the EXT-X-MEDIA entry -// for the audio variant. For more information about these attributes, see the -// Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. +// to play. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for +// any variant that you want to prohibit the client from playing with video. +// This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF +// in the HLS manifest. The other options for this setting determine the values +// that MediaConvert writes for the DEFAULT and AUTOSELECT attributes of the +// EXT-X-MEDIA entry for the audio variant. For more information about these +// attributes, see the Apple documentation article https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/adding_alternate_media_to_a_playlist. // Choose Alternate audio, auto select, default to set DEFAULT=YES and AUTOSELECT=YES. // Choose this value for only one variant in your output group. Choose Alternate // audio, auto select, not default to set DEFAULT=NO and AUTOSELECT=YES. Choose @@ -29388,6 +29721,9 @@ // CmfcAudioTrackTypeAlternateAudioNotAutoSelect is a CmfcAudioTrackType enum value CmfcAudioTrackTypeAlternateAudioNotAutoSelect = "ALTERNATE_AUDIO_NOT_AUTO_SELECT" + + // CmfcAudioTrackTypeAudioOnlyVariantStream is a CmfcAudioTrackType enum value + CmfcAudioTrackTypeAudioOnlyVariantStream = "AUDIO_ONLY_VARIANT_STREAM" ) // CmfcAudioTrackType_Values returns all elements of the CmfcAudioTrackType enum @@ -29396,6 +29732,7 @@ CmfcAudioTrackTypeAlternateAudioAutoSelectDefault, CmfcAudioTrackTypeAlternateAudioAutoSelect, CmfcAudioTrackTypeAlternateAudioNotAutoSelect, + CmfcAudioTrackTypeAudioOnlyVariantStream, } } @@ -31283,9 +31620,9 @@ } } -// If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning -// of the archive as required for progressive downloading. Otherwise it is placed -// normally at the end. +// To place the MOOV atom at the beginning of your output, which is useful for +// progressive downloading: Leave blank or choose Progressive download. To place +// the MOOV at the end of your output: Choose Normal. const ( // F4vMoovPlacementProgressiveDownload is a F4vMoovPlacement enum value F4vMoovPlacementProgressiveDownload = "PROGRESSIVE_DOWNLOAD" @@ -31544,6 +31881,27 @@ } } +// Optionally include or suppress markers at the end of your output that signal +// the end of the video stream. To include end of stream markers: Leave blank +// or keep the default value, Include. To not include end of stream markers: +// Choose Suppress. This is useful when your output will be inserted into another +// stream. +const ( + // H264EndOfStreamMarkersInclude is a H264EndOfStreamMarkers enum value + H264EndOfStreamMarkersInclude = "INCLUDE" + + // H264EndOfStreamMarkersSuppress is a H264EndOfStreamMarkers enum value + H264EndOfStreamMarkersSuppress = "SUPPRESS" +) + +// H264EndOfStreamMarkers_Values returns all elements of the H264EndOfStreamMarkers enum +func H264EndOfStreamMarkers_Values() []string { + return []string{ + H264EndOfStreamMarkersInclude, + H264EndOfStreamMarkersSuppress, + } +} + // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. const ( // H264EntropyEncodingCabac is a H264EntropyEncoding enum value @@ -32244,6 +32602,27 @@ } } +// Optionally include or suppress markers at the end of your output that signal +// the end of the video stream. To include end of stream markers: Leave blank +// or keep the default value, Include. To not include end of stream markers: +// Choose Suppress. This is useful when your output will be inserted into another +// stream. +const ( + // H265EndOfStreamMarkersInclude is a H265EndOfStreamMarkers enum value + H265EndOfStreamMarkersInclude = "INCLUDE" + + // H265EndOfStreamMarkersSuppress is a H265EndOfStreamMarkers enum value + H265EndOfStreamMarkersSuppress = "SUPPRESS" +) + +// H265EndOfStreamMarkers_Values returns all elements of the H265EndOfStreamMarkers enum +func H265EndOfStreamMarkers_Values() []string { + return []string{ + H265EndOfStreamMarkersInclude, + H265EndOfStreamMarkersSuppress, + } +} + // Enable this setting to have the encoder reduce I-frame pop. I-frame pop appears // as a visual flicker that can arise when the encoder saves bits by copying // some macroblocks many times from frame to frame, and then refreshes them @@ -35072,9 +35451,9 @@ } } -// If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning -// of the archive as required for progressive downloading. Otherwise it is placed -// normally at the end. +// To place the MOOV atom at the beginning of your output, which is useful for +// progressive downloading: Leave blank or choose Progressive download. To place +// the MOOV at the end of your output: Choose Normal. const ( // Mp4MoovPlacementProgressiveDownload is a Mp4MoovPlacement enum value Mp4MoovPlacementProgressiveDownload = "PROGRESSIVE_DOWNLOAD" @@ -36663,7 +37042,9 @@ } } -// Specify the S3 storage class to use for this destination. +// Specify the S3 storage class to use for this output. To use your destination's +// default storage class: Keep the default value, Not set. For more information +// about S3 storage classes, see https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html const ( // S3StorageClassStandard is a S3StorageClass enum value S3StorageClassStandard = "STANDARD" @@ -36734,17 +37115,23 @@ } } -// Specify how the service handles outputs that have a different aspect ratio -// from the input aspect ratio. Choose Stretch to output to have the service -// stretch your video image to fit. Keep the setting Default to have the service -// letterbox your video instead. This setting overrides any value that you specify -// for the setting Selection placement in this output. +// Specify the video Scaling behavior when your output has a different resolution +// than your input. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-scaling.html const ( // ScalingBehaviorDefault is a ScalingBehavior enum value ScalingBehaviorDefault = "DEFAULT" // ScalingBehaviorStretchToOutput is a ScalingBehavior enum value ScalingBehaviorStretchToOutput = "STRETCH_TO_OUTPUT" + + // ScalingBehaviorFit is a ScalingBehavior enum value + ScalingBehaviorFit = "FIT" + + // ScalingBehaviorFitNoUpscale is a ScalingBehavior enum value + ScalingBehaviorFitNoUpscale = "FIT_NO_UPSCALE" + + // ScalingBehaviorFill is a ScalingBehavior enum value + ScalingBehaviorFill = "FILL" ) // ScalingBehavior_Values returns all elements of the ScalingBehavior enum @@ -36752,6 +37139,9 @@ return []string{ ScalingBehaviorDefault, ScalingBehaviorStretchToOutput, + ScalingBehaviorFit, + ScalingBehaviorFitNoUpscale, + ScalingBehaviorFill, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/medialive/api.go golang-github-aws-aws-sdk-go-1.48.14/service/medialive/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/medialive/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/medialive/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -2063,7 +2063,7 @@ // DescribeAccountConfiguration API operation for AWS Elemental MediaLive. // -// # Get account configuration +// # Describe account configuration // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6715,6 +6715,9 @@ type AccountConfiguration struct { _ struct{} `type:"structure"` + // Specifies the KMS key to use for all features that use key encryption. Specify + // the ARN of a KMS key that you have created. Or leave blank to use the key + // that MediaLive creates and manages for you. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` } @@ -10804,6 +10807,147 @@ return s.String() } +// Property of ColorCorrectionSettings. Used for custom color space conversion. +// The object identifies one 3D LUT file and specifies the input/output color +// space combination that the file will be used for. +type ColorCorrection struct { + _ struct{} `type:"structure"` + + // The color space of the input. + // + // InputColorSpace is a required field + InputColorSpace *string `locationName:"inputColorSpace" type:"string" required:"true" enum:"ColorSpace"` + + // The color space of the output. + // + // OutputColorSpace is a required field + OutputColorSpace *string `locationName:"outputColorSpace" type:"string" required:"true" enum:"ColorSpace"` + + // The URI of the 3D LUT file. The protocol must be 's3:' or 's3ssl:':. + // + // Uri is a required field + Uri *string `locationName:"uri" 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 ColorCorrection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColorCorrection) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ColorCorrection) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ColorCorrection"} + if s.InputColorSpace == nil { + invalidParams.Add(request.NewErrParamRequired("InputColorSpace")) + } + if s.OutputColorSpace == nil { + invalidParams.Add(request.NewErrParamRequired("OutputColorSpace")) + } + if s.Uri == nil { + invalidParams.Add(request.NewErrParamRequired("Uri")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInputColorSpace sets the InputColorSpace field's value. +func (s *ColorCorrection) SetInputColorSpace(v string) *ColorCorrection { + s.InputColorSpace = &v + return s +} + +// SetOutputColorSpace sets the OutputColorSpace field's value. +func (s *ColorCorrection) SetOutputColorSpace(v string) *ColorCorrection { + s.OutputColorSpace = &v + return s +} + +// SetUri sets the Uri field's value. +func (s *ColorCorrection) SetUri(v string) *ColorCorrection { + s.Uri = &v + return s +} + +// Property of encoderSettings. Controls color conversion when you are using +// 3D LUT files to perform color conversion on video. +type ColorCorrectionSettings struct { + _ struct{} `type:"structure"` + + // An array of colorCorrections that applies when you are using 3D LUT files + // to perform color conversion on video. Each colorCorrection contains one 3D + // LUT file (that defines the color mapping for converting an input color space + // to an output color space), and the input/output combination that this 3D + // LUT file applies to. MediaLive reads the color space in the input metadata, + // determines the color space that you have specified for the output, and finds + // and uses the LUT file that applies to this combination. + // + // GlobalColorCorrections is a required field + GlobalColorCorrections []*ColorCorrection `locationName:"globalColorCorrections" 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 ColorCorrectionSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ColorCorrectionSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ColorCorrectionSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ColorCorrectionSettings"} + if s.GlobalColorCorrections == nil { + invalidParams.Add(request.NewErrParamRequired("GlobalColorCorrections")) + } + if s.GlobalColorCorrections != nil { + for i, v := range s.GlobalColorCorrections { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GlobalColorCorrections", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGlobalColorCorrections sets the GlobalColorCorrections field's value. +func (s *ColorCorrectionSettings) SetGlobalColorCorrections(v []*ColorCorrection) *ColorCorrectionSettings { + s.GlobalColorCorrections = v + return s +} + // Passthrough applies no color space conversion to the output type ColorSpacePassthroughSettings struct { _ struct{} `type:"structure"` @@ -15627,6 +15771,9 @@ // Settings for caption decriptions CaptionDescriptions []*CaptionDescription `locationName:"captionDescriptions" type:"list"` + // Color correction settings + ColorCorrectionSettings *ColorCorrectionSettings `locationName:"colorCorrectionSettings" type:"structure"` + // Feature Activations FeatureActivations *FeatureActivations `locationName:"featureActivations" type:"structure"` @@ -15722,6 +15869,11 @@ } } } + if s.ColorCorrectionSettings != nil { + if err := s.ColorCorrectionSettings.Validate(); err != nil { + invalidParams.AddNested("ColorCorrectionSettings", err.(request.ErrInvalidParams)) + } + } if s.GlobalConfiguration != nil { if err := s.GlobalConfiguration.Validate(); err != nil { invalidParams.AddNested("GlobalConfiguration", err.(request.ErrInvalidParams)) @@ -15799,6 +15951,12 @@ return s } +// SetColorCorrectionSettings sets the ColorCorrectionSettings field's value. +func (s *EncoderSettings) SetColorCorrectionSettings(v *ColorCorrectionSettings) *EncoderSettings { + s.ColorCorrectionSettings = v + return s +} + // SetFeatureActivations sets the FeatureActivations field's value. func (s *EncoderSettings) SetFeatureActivations(v *FeatureActivations) *EncoderSettings { s.FeatureActivations = v @@ -16141,6 +16299,11 @@ // an existing schedule, make sure that you first delete all input prepare actions // from the schedule. InputPrepareScheduleActions *string `locationName:"inputPrepareScheduleActions" type:"string" enum:"FeatureActivationsInputPrepareScheduleActions"` + + // Enables the output static image overlay feature. Enabling this feature allows + // you to send channel schedule updatesto display/clear/modify image overlays + // on an output-by-output bases. + OutputStaticImageOverlayScheduleActions *string `locationName:"outputStaticImageOverlayScheduleActions" type:"string" enum:"FeatureActivationsOutputStaticImageOverlayScheduleActions"` } // String returns the string representation. @@ -16167,6 +16330,12 @@ return s } +// SetOutputStaticImageOverlayScheduleActions sets the OutputStaticImageOverlayScheduleActions field's value. +func (s *FeatureActivations) SetOutputStaticImageOverlayScheduleActions(v string) *FeatureActivations { + s.OutputStaticImageOverlayScheduleActions = &v + return s +} + // Fec Output Settings type FecOutputSettings struct { _ struct{} `type:"structure"` @@ -28206,6 +28375,12 @@ // Action to deactivate a static image overlay StaticImageDeactivateSettings *StaticImageDeactivateScheduleActionSettings `locationName:"staticImageDeactivateSettings" type:"structure"` + + // Action to activate a static image overlay in one or more specified outputs + StaticImageOutputActivateSettings *StaticImageOutputActivateScheduleActionSettings `locationName:"staticImageOutputActivateSettings" type:"structure"` + + // Action to deactivate a static image overlay in one or more specified outputs + StaticImageOutputDeactivateSettings *StaticImageOutputDeactivateScheduleActionSettings `locationName:"staticImageOutputDeactivateSettings" type:"structure"` } // String returns the string representation. @@ -28274,6 +28449,16 @@ invalidParams.AddNested("StaticImageActivateSettings", err.(request.ErrInvalidParams)) } } + if s.StaticImageOutputActivateSettings != nil { + if err := s.StaticImageOutputActivateSettings.Validate(); err != nil { + invalidParams.AddNested("StaticImageOutputActivateSettings", err.(request.ErrInvalidParams)) + } + } + if s.StaticImageOutputDeactivateSettings != nil { + if err := s.StaticImageOutputDeactivateSettings.Validate(); err != nil { + invalidParams.AddNested("StaticImageOutputDeactivateSettings", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -28359,6 +28544,18 @@ return s } +// SetStaticImageOutputActivateSettings sets the StaticImageOutputActivateSettings field's value. +func (s *ScheduleActionSettings) SetStaticImageOutputActivateSettings(v *StaticImageOutputActivateScheduleActionSettings) *ScheduleActionSettings { + s.StaticImageOutputActivateSettings = v + return s +} + +// SetStaticImageOutputDeactivateSettings sets the StaticImageOutputDeactivateSettings field's value. +func (s *ScheduleActionSettings) SetStaticImageOutputDeactivateSettings(v *StaticImageOutputDeactivateScheduleActionSettings) *ScheduleActionSettings { + s.StaticImageOutputDeactivateSettings = v + return s +} + // Settings to specify when an action should occur. Only one of the options // must be selected. type ScheduleActionStartSettings struct { @@ -30136,6 +30333,245 @@ return s } +// Settings for the action to activate a static image. +type StaticImageOutputActivateScheduleActionSettings struct { + _ struct{} `type:"structure"` + + // The duration in milliseconds for the image to remain on the video. If omitted + // or set to 0 the duration is unlimited and the image will remain until it + // is explicitly deactivated. + Duration *int64 `locationName:"duration" type:"integer"` + + // The time in milliseconds for the image to fade in. The fade-in starts at + // the start time of the overlay. Default is 0 (no fade-in). + FadeIn *int64 `locationName:"fadeIn" type:"integer"` + + // Applies only if a duration is specified. The time in milliseconds for the + // image to fade out. The fade-out starts when the duration time is hit, so + // it effectively extends the duration. Default is 0 (no fade-out). + FadeOut *int64 `locationName:"fadeOut" type:"integer"` + + // The height of the image when inserted into the video, in pixels. The overlay + // will be scaled up or down to the specified height. Leave blank to use the + // native height of the overlay. + Height *int64 `locationName:"height" min:"1" type:"integer"` + + // The location and filename of the image file to overlay on the video. The + // file must be a 32-bit BMP, PNG, or TGA file, and must not be larger (in pixels) + // than the input video. + // + // Image is a required field + Image *InputLocation `locationName:"image" type:"structure" required:"true"` + + // Placement of the left edge of the overlay relative to the left edge of the + // video frame, in pixels. 0 (the default) is the left edge of the frame. If + // the placement causes the overlay to extend beyond the right edge of the underlying + // video, then the overlay is cropped on the right. + ImageX *int64 `locationName:"imageX" type:"integer"` + + // Placement of the top edge of the overlay relative to the top edge of the + // video frame, in pixels. 0 (the default) is the top edge of the frame. If + // the placement causes the overlay to extend beyond the bottom edge of the + // underlying video, then the overlay is cropped on the bottom. + ImageY *int64 `locationName:"imageY" type:"integer"` + + // The number of the layer, 0 to 7. There are 8 layers that can be overlaid + // on the video, each layer with a different image. The layers are in Z order, + // which means that overlays with higher values of layer are inserted on top + // of overlays with lower values of layer. Default is 0. + Layer *int64 `locationName:"layer" type:"integer"` + + // Opacity of image where 0 is transparent and 100 is fully opaque. Default + // is 100. + Opacity *int64 `locationName:"opacity" type:"integer"` + + // The name(s) of the output(s) the activation should apply to. + // + // OutputNames is a required field + OutputNames []*string `locationName:"outputNames" type:"list" required:"true"` + + // The width of the image when inserted into the video, in pixels. The overlay + // will be scaled up or down to the specified width. Leave blank to use the + // native width of the overlay. + Width *int64 `locationName:"width" min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StaticImageOutputActivateScheduleActionSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StaticImageOutputActivateScheduleActionSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StaticImageOutputActivateScheduleActionSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StaticImageOutputActivateScheduleActionSettings"} + if s.Height != nil && *s.Height < 1 { + invalidParams.Add(request.NewErrParamMinValue("Height", 1)) + } + if s.Image == nil { + invalidParams.Add(request.NewErrParamRequired("Image")) + } + if s.OutputNames == nil { + invalidParams.Add(request.NewErrParamRequired("OutputNames")) + } + if s.Width != nil && *s.Width < 1 { + invalidParams.Add(request.NewErrParamMinValue("Width", 1)) + } + if s.Image != nil { + if err := s.Image.Validate(); err != nil { + invalidParams.AddNested("Image", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDuration sets the Duration field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetDuration(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.Duration = &v + return s +} + +// SetFadeIn sets the FadeIn field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetFadeIn(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.FadeIn = &v + return s +} + +// SetFadeOut sets the FadeOut field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetFadeOut(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.FadeOut = &v + return s +} + +// SetHeight sets the Height field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetHeight(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.Height = &v + return s +} + +// SetImage sets the Image field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetImage(v *InputLocation) *StaticImageOutputActivateScheduleActionSettings { + s.Image = v + return s +} + +// SetImageX sets the ImageX field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetImageX(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.ImageX = &v + return s +} + +// SetImageY sets the ImageY field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetImageY(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.ImageY = &v + return s +} + +// SetLayer sets the Layer field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetLayer(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.Layer = &v + return s +} + +// SetOpacity sets the Opacity field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetOpacity(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.Opacity = &v + return s +} + +// SetOutputNames sets the OutputNames field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetOutputNames(v []*string) *StaticImageOutputActivateScheduleActionSettings { + s.OutputNames = v + return s +} + +// SetWidth sets the Width field's value. +func (s *StaticImageOutputActivateScheduleActionSettings) SetWidth(v int64) *StaticImageOutputActivateScheduleActionSettings { + s.Width = &v + return s +} + +// Settings for the action to deactivate the image in a specific layer. +type StaticImageOutputDeactivateScheduleActionSettings struct { + _ struct{} `type:"structure"` + + // The time in milliseconds for the image to fade out. Default is 0 (no fade-out). + FadeOut *int64 `locationName:"fadeOut" type:"integer"` + + // The image overlay layer to deactivate, 0 to 7. Default is 0. + Layer *int64 `locationName:"layer" type:"integer"` + + // The name(s) of the output(s) the deactivation should apply to. + // + // OutputNames is a required field + OutputNames []*string `locationName:"outputNames" 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 StaticImageOutputDeactivateScheduleActionSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StaticImageOutputDeactivateScheduleActionSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StaticImageOutputDeactivateScheduleActionSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StaticImageOutputDeactivateScheduleActionSettings"} + if s.OutputNames == nil { + invalidParams.Add(request.NewErrParamRequired("OutputNames")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFadeOut sets the FadeOut field's value. +func (s *StaticImageOutputDeactivateScheduleActionSettings) SetFadeOut(v int64) *StaticImageOutputDeactivateScheduleActionSettings { + s.FadeOut = &v + return s +} + +// SetLayer sets the Layer field's value. +func (s *StaticImageOutputDeactivateScheduleActionSettings) SetLayer(v int64) *StaticImageOutputDeactivateScheduleActionSettings { + s.Layer = &v + return s +} + +// SetOutputNames sets the OutputNames field's value. +func (s *StaticImageOutputDeactivateScheduleActionSettings) SetOutputNames(v []*string) *StaticImageOutputDeactivateScheduleActionSettings { + s.OutputNames = v + return s +} + // Static Key Settings type StaticKeySettings struct { _ struct{} `type:"structure"` @@ -30871,7 +31307,9 @@ type ThumbnailConfiguration struct { _ struct{} `type:"structure"` - // Whether Thumbnail is enabled. + // Enables the thumbnail feature. The feature generates thumbnails of the incoming + // video in each pipeline in the channel. AUTO turns the feature on, DISABLE + // turns the feature off. // // State is a required field State *string `locationName:"state" type:"string" required:"true" enum:"ThumbnailState"` @@ -34223,6 +34661,32 @@ } } +// Property of colorCorrections. When you are using 3D LUT files to perform +// color conversion on video, these are the supported color spaces. +const ( + // ColorSpaceHdr10 is a ColorSpace enum value + ColorSpaceHdr10 = "HDR10" + + // ColorSpaceHlg2020 is a ColorSpace enum value + ColorSpaceHlg2020 = "HLG_2020" + + // ColorSpaceRec601 is a ColorSpace enum value + ColorSpaceRec601 = "REC_601" + + // ColorSpaceRec709 is a ColorSpace enum value + ColorSpaceRec709 = "REC_709" +) + +// ColorSpace_Values returns all elements of the ColorSpace enum +func ColorSpace_Values() []string { + return []string{ + ColorSpaceHdr10, + ColorSpaceHlg2020, + ColorSpaceRec601, + ColorSpaceRec709, + } +} + const ( // ContentTypeImageJpeg is a ContentType enum value ContentTypeImageJpeg = "image/jpeg" @@ -35000,6 +35464,23 @@ } } +// Feature Activations Output Static Image Overlay Schedule Actions +const ( + // FeatureActivationsOutputStaticImageOverlayScheduleActionsDisabled is a FeatureActivationsOutputStaticImageOverlayScheduleActions enum value + FeatureActivationsOutputStaticImageOverlayScheduleActionsDisabled = "DISABLED" + + // FeatureActivationsOutputStaticImageOverlayScheduleActionsEnabled is a FeatureActivationsOutputStaticImageOverlayScheduleActions enum value + FeatureActivationsOutputStaticImageOverlayScheduleActionsEnabled = "ENABLED" +) + +// FeatureActivationsOutputStaticImageOverlayScheduleActions_Values returns all elements of the FeatureActivationsOutputStaticImageOverlayScheduleActions enum +func FeatureActivationsOutputStaticImageOverlayScheduleActions_Values() []string { + return []string{ + FeatureActivationsOutputStaticImageOverlayScheduleActionsDisabled, + FeatureActivationsOutputStaticImageOverlayScheduleActionsEnabled, + } +} + // Fec Output Include Fec const ( // FecOutputIncludeFecColumn is a FecOutputIncludeFec enum value diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mediapackage/api.go golang-github-aws-aws-sdk-go-1.48.14/service/mediapackage/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mediapackage/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mediapackage/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3166,7 +3166,9 @@ // Determines the position of some tags in the Media Presentation Description // (MPD). When set to FULL, elements like SegmentTemplate and ContentProtection // are included in each Representation. When set to COMPACT, duplicate elements - // are combined and presented at the AdaptationSet level. + // are combined and presented at the AdaptationSet level. When set to DRM_TOP_LEVEL_COMPACT, + // content protection elements are placed the MPD level and referenced at the + // AdaptationSet level. ManifestLayout *string `locationName:"manifestLayout" type:"string" enum:"ManifestLayout"` // Time window (in seconds) contained in each manifest. @@ -7170,6 +7172,9 @@ // ManifestLayoutCompact is a ManifestLayout enum value ManifestLayoutCompact = "COMPACT" + + // ManifestLayoutDrmTopLevelCompact is a ManifestLayout enum value + ManifestLayoutDrmTopLevelCompact = "DRM_TOP_LEVEL_COMPACT" ) // ManifestLayout_Values returns all elements of the ManifestLayout enum @@ -7177,6 +7182,7 @@ return []string{ ManifestLayoutFull, ManifestLayoutCompact, + ManifestLayoutDrmTopLevelCompact, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mediapackagev2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/mediapackagev2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mediapackagev2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mediapackagev2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1527,6 +1527,9 @@ // - ValidationException // The input failed to meet the constraints specified by the AWS service. // +// - ResourceNotFoundException +// The specified resource doesn't exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/mediapackagev2-2022-12-25/ListChannels func (c *MediaPackageV2) ListChannels(input *ListChannelsInput) (*ListChannelsOutput, error) { req, out := c.ListChannelsRequest(input) @@ -3222,6 +3225,11 @@ // the manifestName you provided on the originEndpoint object. ChildManifestName *string `min:"1" type:"string"` + // Filter configuration includes settings for manifest filtering, start and + // end times, and time delay that apply to all of your egress requests for this + // manifest. + FilterConfiguration *FilterConfiguration `type:"structure"` + // A short short string that's appended to the endpoint URL. The manifest name // creates a unique path to this endpoint. If you don't enter a value, MediaPackage // uses the default manifest name, index. MediaPackage automatically inserts @@ -3287,6 +3295,11 @@ if s.ProgramDateTimeIntervalSeconds != nil && *s.ProgramDateTimeIntervalSeconds < 1 { invalidParams.Add(request.NewErrParamMinValue("ProgramDateTimeIntervalSeconds", 1)) } + if s.FilterConfiguration != nil { + if err := s.FilterConfiguration.Validate(); err != nil { + invalidParams.AddNested("FilterConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -3300,6 +3313,12 @@ return s } +// SetFilterConfiguration sets the FilterConfiguration field's value. +func (s *CreateHlsManifestConfiguration) SetFilterConfiguration(v *FilterConfiguration) *CreateHlsManifestConfiguration { + s.FilterConfiguration = v + return s +} + // SetManifestName sets the ManifestName field's value. func (s *CreateHlsManifestConfiguration) SetManifestName(v string) *CreateHlsManifestConfiguration { s.ManifestName = &v @@ -3335,6 +3354,11 @@ // the manifestName you provided on the originEndpoint object. ChildManifestName *string `min:"1" type:"string"` + // Filter configuration includes settings for manifest filtering, start and + // end times, and time delay that apply to all of your egress requests for this + // manifest. + FilterConfiguration *FilterConfiguration `type:"structure"` + // A short short string that's appended to the endpoint URL. The manifest name // creates a unique path to this endpoint. If you don't enter a value, MediaPackage // uses the default manifest name, index. MediaPackage automatically inserts @@ -3400,6 +3424,11 @@ if s.ProgramDateTimeIntervalSeconds != nil && *s.ProgramDateTimeIntervalSeconds < 1 { invalidParams.Add(request.NewErrParamMinValue("ProgramDateTimeIntervalSeconds", 1)) } + if s.FilterConfiguration != nil { + if err := s.FilterConfiguration.Validate(); err != nil { + invalidParams.AddNested("FilterConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -3413,6 +3442,12 @@ return s } +// SetFilterConfiguration sets the FilterConfiguration field's value. +func (s *CreateLowLatencyHlsManifestConfiguration) SetFilterConfiguration(v *FilterConfiguration) *CreateLowLatencyHlsManifestConfiguration { + s.FilterConfiguration = v + return s +} + // SetManifestName sets the ManifestName field's value. func (s *CreateLowLatencyHlsManifestConfiguration) SetManifestName(v string) *CreateLowLatencyHlsManifestConfiguration { s.ManifestName = &v @@ -4545,6 +4580,90 @@ return s } +// Filter configuration includes settings for manifest filtering, start and +// end times, and time delay that apply to all of your egress requests for this +// manifest. +type FilterConfiguration struct { + _ struct{} `type:"structure"` + + // Optionally specify the end time for all of your manifest egress requests. + // When you include end time, note that you cannot use end time query parameters + // for this manifest's endpoint URL. + End *time.Time `type:"timestamp"` + + // Optionally specify one or more manifest filters for all of your manifest + // egress requests. When you include a manifest filter, note that you cannot + // use an identical manifest filter query parameter for this manifest's endpoint + // URL. + ManifestFilter *string `min:"1" type:"string"` + + // Optionally specify the start time for all of your manifest egress requests. + // When you include start time, note that you cannot use start time query parameters + // for this manifest's endpoint URL. + Start *time.Time `type:"timestamp"` + + // Optionally specify the time delay for all of your manifest egress requests. + // Enter a value that is smaller than your endpoint's startover window. When + // you include time delay, note that you cannot use time delay query parameters + // for this manifest's endpoint URL. + TimeDelaySeconds *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 FilterConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilterConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterConfiguration"} + if s.ManifestFilter != nil && len(*s.ManifestFilter) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ManifestFilter", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnd sets the End field's value. +func (s *FilterConfiguration) SetEnd(v time.Time) *FilterConfiguration { + s.End = &v + return s +} + +// SetManifestFilter sets the ManifestFilter field's value. +func (s *FilterConfiguration) SetManifestFilter(v string) *FilterConfiguration { + s.ManifestFilter = &v + return s +} + +// SetStart sets the Start field's value. +func (s *FilterConfiguration) SetStart(v time.Time) *FilterConfiguration { + s.Start = &v + return s +} + +// SetTimeDelaySeconds sets the TimeDelaySeconds field's value. +func (s *FilterConfiguration) SetTimeDelaySeconds(v int64) *FilterConfiguration { + s.TimeDelaySeconds = &v + return s +} + type GetChannelGroupInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -5005,6 +5124,11 @@ // object overrides the manifestName you provided on the originEndpoint object. ChildManifestName *string `min:"1" type:"string"` + // Filter configuration includes settings for manifest filtering, start and + // end times, and time delay that apply to all of your egress requests for this + // manifest. + FilterConfiguration *FilterConfiguration `type:"structure"` + // A short short string that's appended to the endpoint URL. The manifest name // creates a unique path to this endpoint. If you don't enter a value, MediaPackage // uses the default manifest name, index. MediaPackage automatically inserts @@ -5063,6 +5187,12 @@ return s } +// SetFilterConfiguration sets the FilterConfiguration field's value. +func (s *GetHlsManifestConfiguration) SetFilterConfiguration(v *FilterConfiguration) *GetHlsManifestConfiguration { + s.FilterConfiguration = v + return s +} + // SetManifestName sets the ManifestName field's value. func (s *GetHlsManifestConfiguration) SetManifestName(v string) *GetHlsManifestConfiguration { s.ManifestName = &v @@ -5103,6 +5233,11 @@ // object overrides the manifestName you provided on the originEndpoint object. ChildManifestName *string `min:"1" type:"string"` + // Filter configuration includes settings for manifest filtering, start and + // end times, and time delay that apply to all of your egress requests for this + // manifest. + FilterConfiguration *FilterConfiguration `type:"structure"` + // A short short string that's appended to the endpoint URL. The manifest name // creates a unique path to this endpoint. If you don't enter a value, MediaPackage // uses the default manifest name, index. MediaPackage automatically inserts @@ -5161,6 +5296,12 @@ return s } +// SetFilterConfiguration sets the FilterConfiguration field's value. +func (s *GetLowLatencyHlsManifestConfiguration) SetFilterConfiguration(v *FilterConfiguration) *GetLowLatencyHlsManifestConfiguration { + s.FilterConfiguration = v + return s +} + // SetManifestName sets the ManifestName field's value. func (s *GetLowLatencyHlsManifestConfiguration) SetManifestName(v string) *GetLowLatencyHlsManifestConfiguration { s.ManifestName = &v @@ -5537,21 +5678,21 @@ // for the channel group, and must be unique for your account in the AWS Region. // // ChannelGroupName is a required field - ChannelGroupName *string `type:"string" required:"true"` + ChannelGroupName *string `min:"1" type:"string" required:"true"` // The name that describes the channel. The name is the primary identifier for // the channel, and must be unique for your account in the AWS Region and channel // group. // // ChannelName is a required field - ChannelName *string `type:"string" required:"true"` + ChannelName *string `min:"1" type:"string" required:"true"` // The name that describes the origin endpoint. The name is the primary identifier // for the origin endpoint, and and must be unique for your account in the AWS // Region and channel. // // OriginEndpointName is a required field - OriginEndpointName *string `type:"string" required:"true"` + OriginEndpointName *string `min:"1" type:"string" required:"true"` // The policy assigned to the origin endpoint. // @@ -8418,6 +8559,15 @@ // ValidationExceptionTypeMemberDoesNotMatchPattern is a ValidationExceptionType enum value ValidationExceptionTypeMemberDoesNotMatchPattern = "MEMBER_DOES_NOT_MATCH_PATTERN" + + // ValidationExceptionTypeInvalidManifestFilter is a ValidationExceptionType enum value + ValidationExceptionTypeInvalidManifestFilter = "INVALID_MANIFEST_FILTER" + + // ValidationExceptionTypeInvalidTimeDelaySeconds is a ValidationExceptionType enum value + ValidationExceptionTypeInvalidTimeDelaySeconds = "INVALID_TIME_DELAY_SECONDS" + + // ValidationExceptionTypeEndTimeEarlierThanStartTime is a ValidationExceptionType enum value + ValidationExceptionTypeEndTimeEarlierThanStartTime = "END_TIME_EARLIER_THAN_START_TIME" ) // ValidationExceptionType_Values returns all elements of the ValidationExceptionType enum @@ -8457,5 +8607,8 @@ ValidationExceptionTypeMemberMaxLength, ValidationExceptionTypeMemberInvalidEnumValue, ValidationExceptionTypeMemberDoesNotMatchPattern, + ValidationExceptionTypeInvalidManifestFilter, + ValidationExceptionTypeInvalidTimeDelaySeconds, + ValidationExceptionTypeEndTimeEarlierThanStartTime, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mediatailor/api.go golang-github-aws-aws-sdk-go-1.48.14/service/mediatailor/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mediatailor/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mediatailor/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3973,6 +3973,42 @@ return s } +// A location at which a zero-duration ad marker was detected in a VOD source +// manifest. +type AdBreakOpportunity struct { + _ struct{} `type:"structure"` + + // The offset in milliseconds from the start of the VOD source at which an ad + // marker was detected. + // + // OffsetMillis is a required field + OffsetMillis *int64 `type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdBreakOpportunity) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdBreakOpportunity) GoString() string { + return s.String() +} + +// SetOffsetMillis sets the OffsetMillis field's value. +func (s *AdBreakOpportunity) SetOffsetMillis(v int64) *AdBreakOpportunity { + s.OffsetMillis = &v + return s +} + // For HLS, when set to true, MediaTailor passes through EXT-X-CUE-IN, EXT-X-CUE-OUT, // and EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the MediaTailor // personalized manifest. @@ -7710,6 +7746,9 @@ type DescribeVodSourceOutput struct { _ struct{} `type:"structure"` + // The ad break opportunities within the VOD source. + AdBreakOpportunities []*AdBreakOpportunity `type:"list"` + // The ARN of the VOD source. Arn *string `type:"string"` @@ -7753,6 +7792,12 @@ return s.String() } +// SetAdBreakOpportunities sets the AdBreakOpportunities field's value. +func (s *DescribeVodSourceOutput) SetAdBreakOpportunities(v []*AdBreakOpportunity) *DescribeVodSourceOutput { + s.AdBreakOpportunities = v + return s +} + // SetArn sets the Arn field's value. func (s *DescribeVodSourceOutput) SetArn(v string) *DescribeVodSourceOutput { s.Arn = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/medicalimaging/api.go golang-github-aws-aws-sdk-go-1.48.14/service/medicalimaging/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/medicalimaging/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/medicalimaging/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,7 +80,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -177,7 +177,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -274,7 +274,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -370,7 +370,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -464,7 +464,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -555,7 +555,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -651,7 +651,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -747,7 +747,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -843,7 +843,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -922,7 +922,7 @@ // ListDICOMImportJobs API operation for AWS Health Imaging. // -// List import jobs created by this AWS account for a specific data store. +// List import jobs created for a specific data store. // // 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 @@ -943,7 +943,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1073,7 +1073,7 @@ // ListDatastores API operation for AWS Health Imaging. // -// List data stores created by this AWS account. +// List data stores. // // 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 @@ -1091,7 +1091,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1241,7 +1241,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1383,7 +1383,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1466,6 +1466,13 @@ // // Search image sets based on defined input attributes. // +// SearchImageSets accepts a single search query parameter and returns a paginated +// response of all image sets that have the matching criteria. All range queries +// must be input as (lowerBound, upperBound). +// +// SearchImageSets uses the updatedAt field for sorting in decreasing order +// from latest to oldest. +// // 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. @@ -1485,7 +1492,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1633,7 +1640,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1728,7 +1735,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1820,7 +1827,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -1916,7 +1923,7 @@ // The user does not have sufficient access to perform this action. // // - ValidationException -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. // // - InternalServerException // An unexpected error occurred during processing of the request. @@ -2580,8 +2587,8 @@ // The data store name. DatastoreName *string `locationName:"datastoreName" min:"1" type:"string"` - // The Amazon Resource Name (ARN) assigned to the AWS Key Management Service - // (AWS KMS) key for accessing encrypted data. + // The Amazon Resource Name (ARN) assigned to the Key Management Service (KMS) + // key for accessing encrypted data. KmsKeyArn *string `locationName:"kmsKeyArn" min:"1" type:"string"` // The tags provided when creating a data store. @@ -3258,8 +3265,8 @@ // DatastoreStatus is a required field DatastoreStatus *string `locationName:"datastoreStatus" type:"string" required:"true" enum:"DatastoreStatus"` - // The Amazon Resource Name (ARN) assigned to the AWS Key Management Service - // (AWS KMS) key for accessing encrypted data. + // The Amazon Resource Name (ARN) assigned to the Key Management Service (KMS) + // key for accessing encrypted data. KmsKeyArn *string `locationName:"kmsKeyArn" min:"1" type:"string"` // The timestamp when the data store was last updated. @@ -4417,8 +4424,8 @@ type ImageSetsMetadataSummary struct { _ struct{} `type:"structure"` - // The time an image set is created in AWS HealthImaging. Sample creation date - // is provided in 1985-04-12T23:20:50.52Z format. + // The time an image set is created. Sample creation date is provided in 1985-04-12T23:20:50.52Z + // format. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The DICOM tags associated with the image set. @@ -4429,7 +4436,7 @@ // ImageSetId is a required field ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` - // The time when an image was last updated in AWS HealthImaging. + // The time an image set was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` // The image set version. @@ -6175,7 +6182,7 @@ return s } -// The input fails to satisfy the constraints specified by an AWS service. +// The input fails to satisfy the constraints set by the service. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/medicalimaging/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/medicalimaging/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/medicalimaging/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/medicalimaging/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,90 +3,91 @@ // Package medicalimaging provides the client and types for making API // requests to AWS Health Imaging. // -// This is the AWS HealthImaging API Reference. AWS HealthImaging is an AWS -// service for storing, accessing, and analyzing medical images. For an introduction -// to the service, see the AWS HealthImaging Developer Guide (https://docs.aws.amazon.com/medical-imaging/latest/devguide). +// This is the AWS HealthImaging API Reference. AWS HealthImaging is a HIPAA-eligible +// service that helps health care providers and their medical imaging ISV partners +// store, transform, and apply machine learning to medical images. For an introduction +// to the service, see the AWS HealthImaging Developer Guide (https://docs.aws.amazon.com/healthimaging/latest/devguide/what-is.html). // // We recommend using one of the AWS Software Development Kits (SDKs) for your // programming language, as they take care of request authentication, serialization, // and connection management. For more information, see Tools to build on AWS // (http://aws.amazon.com/developer/tools). // -// For information about using AWS HealthImaging API actions in one of the language-specific +// For information about using HealthImaging API actions in one of the language-specific // AWS SDKs, refer to the See Also link at the end of each section that describes // an API action or data type. // // The following sections list AWS HealthImaging API actions categorized according // to functionality. Links are provided to actions within this Reference, along // with links back to corresponding sections in the AWS HealthImaging Developer -// Guide so you can view console procedures and CLI/SDK code examples. +// Guide where you can view console procedures and CLI/SDK code examples. // // Data store actions // -// - CreateDatastore (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_CreateDatastore.html) -// – See Creating a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/create-data-store.html). +// - CreateDatastore (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_CreateDatastore.html) +// – See Creating a data store (https://docs.aws.amazon.com/healthimaging/latest/devguide/create-data-store.html). // -// - GetDatastore (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetDatastore.html) -// – See Getting data store properties (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-data-store.html). +// - GetDatastore (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_GetDatastore.html) +// – See Getting data store properties (https://docs.aws.amazon.com/healthimaging/latest/devguide/get-data-store.html). // -// - ListDatastores (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListDatastores.html) -// – See Listing data stores (https://docs.aws.amazon.com/medical-imaging/latest/devguide/list-data-stores.html). +// - ListDatastores (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_ListDatastores.html) +// – See Listing data stores (https://docs.aws.amazon.com/healthimaging/latest/devguide/list-data-stores.html). // -// - DeleteDatastore (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_DeleteDatastore.html) -// – See Deleting a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/delete-data-store.html). +// - DeleteDatastore (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_DeleteDatastore.html) +// – See Deleting a data store (https://docs.aws.amazon.com/healthimaging/latest/devguide/delete-data-store.html). // // Import job actions // -// - StartDICOMImportJob (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_StartDICOMImportJob.html) -// – See Starting an import job (https://docs.aws.amazon.com/medical-imaging/latest/devguide/start-dicom-import-job.html). +// - StartDICOMImportJob (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_StartDICOMImportJob.html) +// – See Starting an import job (https://docs.aws.amazon.com/healthimaging/latest/devguide/start-dicom-import-job.html). // -// - GetDICOMImportJob (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetDICOMImportJob.html) -// – See Getting import job properties (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-dicom-import-job.html). +// - GetDICOMImportJob (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_GetDICOMImportJob.html) +// – See Getting import job properties (https://docs.aws.amazon.com/healthimaging/latest/devguide/get-dicom-import-job.html). // -// - ListDICOMImportJobs (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListDICOMImportJobs.html) -// – See Listing import jobs (https://docs.aws.amazon.com/medical-imaging/latest/devguide/list-dicom-import-jobs.html). +// - ListDICOMImportJobs (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_ListDICOMImportJobs.html) +// – See Listing import jobs (https://docs.aws.amazon.com/healthimaging/latest/devguide/list-dicom-import-jobs.html). // // Image set access actions // -// - SearchImageSets (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_SearchImageSets.html) -// – See Searching image sets (https://docs.aws.amazon.com/medical-imaging/latest/devguide/search-image-sets.html). +// - SearchImageSets (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_SearchImageSets.html) +// – See Searching image sets (https://docs.aws.amazon.com/healthimaging/latest/devguide/search-image-sets.html). // -// - GetImageSet (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetImageSet.html) -// – See Getting image set properties (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-image-set-properties.html). +// - GetImageSet (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_GetImageSet.html) +// – See Getting image set properties (https://docs.aws.amazon.com/healthimaging/latest/devguide/get-image-set-properties.html). // -// - GetImageSetMetadata (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetImageSetMetadata.html) -// – See Getting image set metadata (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-image-set-metadata.html). +// - GetImageSetMetadata (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_GetImageSetMetadata.html) +// – See Getting image set metadata (https://docs.aws.amazon.com/healthimaging/latest/devguide/get-image-set-metadata.html). // -// - GetImageFrame (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetImageFrame.html) -// – See Getting image set pixel data (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-image-frame.html). +// - GetImageFrame (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_GetImageFrame.html) +// – See Getting image set pixel data (https://docs.aws.amazon.com/healthimaging/latest/devguide/get-image-frame.html). // // Image set modification actions // -// - ListImageSetVersions (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListImageSetVersions.html) -// – See Listing image set versions (https://docs.aws.amazon.com/medical-imaging/latest/devguide/list-image-set-versions.html). +// - ListImageSetVersions (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_ListImageSetVersions.html) +// – See Listing image set versions (https://docs.aws.amazon.com/healthimaging/latest/devguide/list-image-set-versions.html). // -// - UpdateImageSetMetadata (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_UpdateImageSetMetadata.html) -// – See Updating image set metadata (https://docs.aws.amazon.com/medical-imaging/latest/devguide/update-image-set-metadata.html). +// - UpdateImageSetMetadata (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_UpdateImageSetMetadata.html) +// – See Updating image set metadata (https://docs.aws.amazon.com/healthimaging/latest/devguide/update-image-set-metadata.html). // -// - CopyImageSet (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_CopyImageSet.html) -// – See Copying an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/copy-image-set.html). +// - CopyImageSet (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_CopyImageSet.html) +// – See Copying an image set (https://docs.aws.amazon.com/healthimaging/latest/devguide/copy-image-set.html). // -// - DeleteImageSet (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_DeleteImageSet.html) -// – See Deleting an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/delete-image-set.html). +// - DeleteImageSet (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_DeleteImageSet.html) +// – See Deleting an image set (https://docs.aws.amazon.com/healthimaging/latest/devguide/delete-image-set.html). // // Tagging actions // -// - TagResource (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_TagResource.html) -// – See Tagging a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-data-store.html) -// and Tagging an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-image-set.html). -// -// - ListTagsForResource (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListTagsForResource.html) -// – See Tagging a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-data-store.html) -// and Tagging an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-image-set.html). -// -// - UntagResource (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_UntagResource.html) -// – See Tagging a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-data-store.html) -// and Tagging an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-image-set.html). +// - TagResource (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_TagResource.html) +// – See Tagging a data store (https://docs.aws.amazon.com/healthimaging/latest/devguide/tag-list-untag-data-store.html) +// and Tagging an image set (https://docs.aws.amazon.com/healthimaging/latest/devguide/tag-list-untag-image-set.html). +// +// - ListTagsForResource (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_ListTagsForResource.html) +// – See Tagging a data store (https://docs.aws.amazon.com/healthimaging/latest/devguide/tag-list-untag-data-store.html) +// and Tagging an image set (https://docs.aws.amazon.com/healthimaging/latest/devguide/tag-list-untag-image-set.html). +// +// - UntagResource (https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_UntagResource.html) +// – See Tagging a data store (https://docs.aws.amazon.com/healthimaging/latest/devguide/tag-list-untag-data-store.html) +// and Tagging an image set (https://docs.aws.amazon.com/healthimaging/latest/devguide/tag-list-untag-image-set.html). // // See https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/medicalimaging/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/medicalimaging/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/medicalimaging/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/medicalimaging/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -47,7 +47,7 @@ // ErrCodeValidationException for service response error code // "ValidationException". // - // The input fails to satisfy the constraints specified by an AWS service. + // The input fails to satisfy the constraints set by the service. ErrCodeValidationException = "ValidationException" ) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mgn/api.go golang-github-aws-aws-sdk-go-1.48.14/service/mgn/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mgn/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mgn/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -548,6 +548,88 @@ return out, req.Send() } +const opCreateConnector = "CreateConnector" + +// CreateConnectorRequest generates a "aws/request.Request" representing the +// client's request for the CreateConnector 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 CreateConnector for more information on using the CreateConnector +// 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 CreateConnectorRequest method. +// req, resp := client.CreateConnectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/CreateConnector +func (c *Mgn) CreateConnectorRequest(input *CreateConnectorInput) (req *request.Request, output *CreateConnectorOutput) { + op := &request.Operation{ + Name: opCreateConnector, + HTTPMethod: "POST", + HTTPPath: "/CreateConnector", + } + + if input == nil { + input = &CreateConnectorInput{} + } + + output = &CreateConnectorOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateConnector API operation for Application Migration Service. +// +// Create Connector. +// +// 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 Application Migration Service's +// API operation CreateConnector for usage and error information. +// +// Returned Error Types: +// +// - UninitializedAccountException +// Uninitialized account exception. +// +// - ValidationException +// Validate exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/CreateConnector +func (c *Mgn) CreateConnector(input *CreateConnectorInput) (*CreateConnectorOutput, error) { + req, out := c.CreateConnectorRequest(input) + return out, req.Send() +} + +// CreateConnectorWithContext is the same as CreateConnector with the addition of +// the ability to pass a context and additional request options. +// +// See CreateConnector 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 *Mgn) CreateConnectorWithContext(ctx aws.Context, input *CreateConnectorInput, opts ...request.Option) (*CreateConnectorOutput, error) { + req, out := c.CreateConnectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateLaunchConfigurationTemplate = "CreateLaunchConfigurationTemplate" // CreateLaunchConfigurationTemplateRequest generates a "aws/request.Request" representing the @@ -891,6 +973,92 @@ return out, req.Send() } +const opDeleteConnector = "DeleteConnector" + +// DeleteConnectorRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConnector 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 DeleteConnector for more information on using the DeleteConnector +// 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 DeleteConnectorRequest method. +// req, resp := client.DeleteConnectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteConnector +func (c *Mgn) DeleteConnectorRequest(input *DeleteConnectorInput) (req *request.Request, output *DeleteConnectorOutput) { + op := &request.Operation{ + Name: opDeleteConnector, + HTTPMethod: "POST", + HTTPPath: "/DeleteConnector", + } + + if input == nil { + input = &DeleteConnectorInput{} + } + + output = &DeleteConnectorOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConnector API operation for Application Migration Service. +// +// Delete Connector. +// +// 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 Application Migration Service's +// API operation DeleteConnector for usage and error information. +// +// Returned Error Types: +// +// - UninitializedAccountException +// Uninitialized account exception. +// +// - ResourceNotFoundException +// Resource not found exception. +// +// - ValidationException +// Validate exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteConnector +func (c *Mgn) DeleteConnector(input *DeleteConnectorInput) (*DeleteConnectorOutput, error) { + req, out := c.DeleteConnectorRequest(input) + return out, req.Send() +} + +// DeleteConnectorWithContext is the same as DeleteConnector with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConnector 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 *Mgn) DeleteConnectorWithContext(ctx aws.Context, input *DeleteConnectorInput, opts ...request.Option) (*DeleteConnectorOutput, error) { + req, out := c.DeleteConnectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteJob = "DeleteJob" // DeleteJobRequest generates a "aws/request.Request" representing the @@ -3012,6 +3180,145 @@ return p.Err() } +const opListConnectors = "ListConnectors" + +// ListConnectorsRequest generates a "aws/request.Request" representing the +// client's request for the ListConnectors operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListConnectors for more information on using the ListConnectors +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListConnectorsRequest method. +// req, resp := client.ListConnectorsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ListConnectors +func (c *Mgn) ListConnectorsRequest(input *ListConnectorsInput) (req *request.Request, output *ListConnectorsOutput) { + op := &request.Operation{ + Name: opListConnectors, + HTTPMethod: "POST", + HTTPPath: "/ListConnectors", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConnectorsInput{} + } + + output = &ListConnectorsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConnectors API operation for Application Migration Service. +// +// List Connectors. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Application Migration Service's +// API operation ListConnectors for usage and error information. +// +// Returned Error Types: +// +// - UninitializedAccountException +// Uninitialized account exception. +// +// - ValidationException +// Validate exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ListConnectors +func (c *Mgn) ListConnectors(input *ListConnectorsInput) (*ListConnectorsOutput, error) { + req, out := c.ListConnectorsRequest(input) + return out, req.Send() +} + +// ListConnectorsWithContext is the same as ListConnectors with the addition of +// the ability to pass a context and additional request options. +// +// See ListConnectors for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Mgn) ListConnectorsWithContext(ctx aws.Context, input *ListConnectorsInput, opts ...request.Option) (*ListConnectorsOutput, error) { + req, out := c.ListConnectorsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConnectorsPages iterates over the pages of a ListConnectors operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConnectors method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListConnectors operation. +// pageNum := 0 +// err := client.ListConnectorsPages(params, +// func(page *mgn.ListConnectorsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Mgn) ListConnectorsPages(input *ListConnectorsInput, fn func(*ListConnectorsOutput, bool) bool) error { + return c.ListConnectorsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConnectorsPagesWithContext same as ListConnectorsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Mgn) ListConnectorsPagesWithContext(ctx aws.Context, input *ListConnectorsInput, fn func(*ListConnectorsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConnectorsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConnectorsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConnectorsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListExportErrors = "ListExportErrors" // ListExportErrorsRequest generates a "aws/request.Request" representing the @@ -5989,6 +6296,91 @@ return out, req.Send() } +const opUpdateConnector = "UpdateConnector" + +// UpdateConnectorRequest generates a "aws/request.Request" representing the +// client's request for the UpdateConnector 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 UpdateConnector for more information on using the UpdateConnector +// 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 UpdateConnectorRequest method. +// req, resp := client.UpdateConnectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateConnector +func (c *Mgn) UpdateConnectorRequest(input *UpdateConnectorInput) (req *request.Request, output *UpdateConnectorOutput) { + op := &request.Operation{ + Name: opUpdateConnector, + HTTPMethod: "POST", + HTTPPath: "/UpdateConnector", + } + + if input == nil { + input = &UpdateConnectorInput{} + } + + output = &UpdateConnectorOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateConnector API operation for Application Migration Service. +// +// Update Connector. +// +// 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 Application Migration Service's +// API operation UpdateConnector for usage and error information. +// +// Returned Error Types: +// +// - UninitializedAccountException +// Uninitialized account exception. +// +// - ResourceNotFoundException +// Resource not found exception. +// +// - ValidationException +// Validate exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateConnector +func (c *Mgn) UpdateConnector(input *UpdateConnectorInput) (*UpdateConnectorOutput, error) { + req, out := c.UpdateConnectorRequest(input) + return out, req.Send() +} + +// UpdateConnectorWithContext is the same as UpdateConnector with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateConnector 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 *Mgn) UpdateConnectorWithContext(ctx aws.Context, input *UpdateConnectorInput, opts ...request.Option) (*UpdateConnectorOutput, error) { + req, out := c.UpdateConnectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateLaunchConfiguration = "UpdateLaunchConfiguration" // UpdateLaunchConfigurationRequest generates a "aws/request.Request" representing the @@ -6347,6 +6739,92 @@ return out, req.Send() } +const opUpdateSourceServer = "UpdateSourceServer" + +// UpdateSourceServerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSourceServer 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 UpdateSourceServer for more information on using the UpdateSourceServer +// 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 UpdateSourceServerRequest method. +// req, resp := client.UpdateSourceServerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateSourceServer +func (c *Mgn) UpdateSourceServerRequest(input *UpdateSourceServerInput) (req *request.Request, output *UpdateSourceServerOutput) { + op := &request.Operation{ + Name: opUpdateSourceServer, + HTTPMethod: "POST", + HTTPPath: "/UpdateSourceServer", + } + + if input == nil { + input = &UpdateSourceServerInput{} + } + + output = &UpdateSourceServerOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSourceServer API operation for Application Migration Service. +// +// Update Source Server. +// +// 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 Application Migration Service's +// API operation UpdateSourceServer for usage and error information. +// +// Returned Error Types: +// +// - UninitializedAccountException +// Uninitialized account exception. +// +// - ResourceNotFoundException +// Resource not found exception. +// +// - ConflictException +// The request could not be completed due to a conflict with the current state +// of the target resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateSourceServer +func (c *Mgn) UpdateSourceServer(input *UpdateSourceServerInput) (*UpdateSourceServerOutput, error) { + req, out := c.UpdateSourceServerRequest(input) + return out, req.Send() +} + +// UpdateSourceServerWithContext is the same as UpdateSourceServer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSourceServer 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 *Mgn) UpdateSourceServerWithContext(ctx aws.Context, input *UpdateSourceServerInput, opts ...request.Option) (*UpdateSourceServerOutput, error) { + req, out := c.UpdateSourceServerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSourceServerReplicationType = "UpdateSourceServerReplicationType" // UpdateSourceServerReplicationTypeRequest generates a "aws/request.Request" representing the @@ -7440,6 +7918,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -7508,6 +7989,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *ChangeServerLifeCycleStateOutput) SetConnectorAction(v *SourceServerConnectorAction) *ChangeServerLifeCycleStateOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *ChangeServerLifeCycleStateOutput) SetDataReplicationInfo(v *DataReplicationInfo) *ChangeServerLifeCycleStateOutput { s.DataReplicationInfo = v @@ -7697,6 +8184,168 @@ return s.RespMetadata.RequestID } +type Connector struct { + _ struct{} `type:"structure"` + + // Connector arn. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // Connector ID. + ConnectorID *string `locationName:"connectorID" min:"27" type:"string"` + + // Connector name. + Name *string `locationName:"name" min:"1" type:"string"` + + // Connector SSM command config. + SsmCommandConfig *ConnectorSsmCommandConfig `locationName:"ssmCommandConfig" type:"structure"` + + // Connector SSM instance ID. + SsmInstanceID *string `locationName:"ssmInstanceID" min:"19" type:"string"` + + // Connector tags. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Connector's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Connector) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Connector) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Connector) SetArn(v string) *Connector { + s.Arn = &v + return s +} + +// SetConnectorID sets the ConnectorID field's value. +func (s *Connector) SetConnectorID(v string) *Connector { + s.ConnectorID = &v + return s +} + +// SetName sets the Name field's value. +func (s *Connector) SetName(v string) *Connector { + s.Name = &v + return s +} + +// SetSsmCommandConfig sets the SsmCommandConfig field's value. +func (s *Connector) SetSsmCommandConfig(v *ConnectorSsmCommandConfig) *Connector { + s.SsmCommandConfig = v + return s +} + +// SetSsmInstanceID sets the SsmInstanceID field's value. +func (s *Connector) SetSsmInstanceID(v string) *Connector { + s.SsmInstanceID = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Connector) SetTags(v map[string]*string) *Connector { + s.Tags = v + return s +} + +// Connector SSM command config. +type ConnectorSsmCommandConfig struct { + _ struct{} `type:"structure"` + + // Connector SSM command config CloudWatch log group name. + CloudWatchLogGroupName *string `locationName:"cloudWatchLogGroupName" min:"1" type:"string"` + + // Connector SSM command config CloudWatch output enabled. + // + // CloudWatchOutputEnabled is a required field + CloudWatchOutputEnabled *bool `locationName:"cloudWatchOutputEnabled" type:"boolean" required:"true"` + + // Connector SSM command config output S3 bucket name. + OutputS3BucketName *string `locationName:"outputS3BucketName" type:"string"` + + // Connector SSM command config S3 output enabled. + // + // S3OutputEnabled is a required field + S3OutputEnabled *bool `locationName:"s3OutputEnabled" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorSsmCommandConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorSsmCommandConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConnectorSsmCommandConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConnectorSsmCommandConfig"} + if s.CloudWatchLogGroupName != nil && len(*s.CloudWatchLogGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CloudWatchLogGroupName", 1)) + } + if s.CloudWatchOutputEnabled == nil { + invalidParams.Add(request.NewErrParamRequired("CloudWatchOutputEnabled")) + } + if s.S3OutputEnabled == nil { + invalidParams.Add(request.NewErrParamRequired("S3OutputEnabled")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value. +func (s *ConnectorSsmCommandConfig) SetCloudWatchLogGroupName(v string) *ConnectorSsmCommandConfig { + s.CloudWatchLogGroupName = &v + return s +} + +// SetCloudWatchOutputEnabled sets the CloudWatchOutputEnabled field's value. +func (s *ConnectorSsmCommandConfig) SetCloudWatchOutputEnabled(v bool) *ConnectorSsmCommandConfig { + s.CloudWatchOutputEnabled = &v + return s +} + +// SetOutputS3BucketName sets the OutputS3BucketName field's value. +func (s *ConnectorSsmCommandConfig) SetOutputS3BucketName(v string) *ConnectorSsmCommandConfig { + s.OutputS3BucketName = &v + return s +} + +// SetS3OutputEnabled sets the S3OutputEnabled field's value. +func (s *ConnectorSsmCommandConfig) SetS3OutputEnabled(v bool) *ConnectorSsmCommandConfig { + s.S3OutputEnabled = &v + return s +} + type CreateApplicationInput struct { _ struct{} `type:"structure"` @@ -7896,6 +8545,179 @@ return s } +type CreateConnectorInput struct { + _ struct{} `type:"structure"` + + // Create Connector request name. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Create Connector request SSM command config. + SsmCommandConfig *ConnectorSsmCommandConfig `locationName:"ssmCommandConfig" type:"structure"` + + // Create Connector request SSM instance ID. + // + // SsmInstanceID is a required field + SsmInstanceID *string `locationName:"ssmInstanceID" min:"19" type:"string" required:"true"` + + // Create Connector request tags. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateConnectorInput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConnectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConnectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateConnectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateConnectorInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SsmInstanceID == nil { + invalidParams.Add(request.NewErrParamRequired("SsmInstanceID")) + } + if s.SsmInstanceID != nil && len(*s.SsmInstanceID) < 19 { + invalidParams.Add(request.NewErrParamMinLen("SsmInstanceID", 19)) + } + if s.SsmCommandConfig != nil { + if err := s.SsmCommandConfig.Validate(); err != nil { + invalidParams.AddNested("SsmCommandConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *CreateConnectorInput) SetName(v string) *CreateConnectorInput { + s.Name = &v + return s +} + +// SetSsmCommandConfig sets the SsmCommandConfig field's value. +func (s *CreateConnectorInput) SetSsmCommandConfig(v *ConnectorSsmCommandConfig) *CreateConnectorInput { + s.SsmCommandConfig = v + return s +} + +// SetSsmInstanceID sets the SsmInstanceID field's value. +func (s *CreateConnectorInput) SetSsmInstanceID(v string) *CreateConnectorInput { + s.SsmInstanceID = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateConnectorInput) SetTags(v map[string]*string) *CreateConnectorInput { + s.Tags = v + return s +} + +type CreateConnectorOutput struct { + _ struct{} `type:"structure"` + + // Connector arn. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // Connector ID. + ConnectorID *string `locationName:"connectorID" min:"27" type:"string"` + + // Connector name. + Name *string `locationName:"name" min:"1" type:"string"` + + // Connector SSM command config. + SsmCommandConfig *ConnectorSsmCommandConfig `locationName:"ssmCommandConfig" type:"structure"` + + // Connector SSM instance ID. + SsmInstanceID *string `locationName:"ssmInstanceID" min:"19" type:"string"` + + // Connector tags. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateConnectorOutput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConnectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConnectorOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateConnectorOutput) SetArn(v string) *CreateConnectorOutput { + s.Arn = &v + return s +} + +// SetConnectorID sets the ConnectorID field's value. +func (s *CreateConnectorOutput) SetConnectorID(v string) *CreateConnectorOutput { + s.ConnectorID = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateConnectorOutput) SetName(v string) *CreateConnectorOutput { + s.Name = &v + return s +} + +// SetSsmCommandConfig sets the SsmCommandConfig field's value. +func (s *CreateConnectorOutput) SetSsmCommandConfig(v *ConnectorSsmCommandConfig) *CreateConnectorOutput { + s.SsmCommandConfig = v + return s +} + +// SetSsmInstanceID sets the SsmInstanceID field's value. +func (s *CreateConnectorOutput) SetSsmInstanceID(v string) *CreateConnectorOutput { + s.SsmInstanceID = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateConnectorOutput) SetTags(v map[string]*string) *CreateConnectorOutput { + s.Tags = v + return s +} + type CreateLaunchConfigurationTemplateInput struct { _ struct{} `type:"structure"` @@ -9225,6 +10047,77 @@ return s.String() } +type DeleteConnectorInput struct { + _ struct{} `type:"structure"` + + // Delete Connector request connector ID. + // + // ConnectorID is a required field + ConnectorID *string `locationName:"connectorID" min:"27" 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 DeleteConnectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConnectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConnectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConnectorInput"} + if s.ConnectorID == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectorID")) + } + if s.ConnectorID != nil && len(*s.ConnectorID) < 27 { + invalidParams.Add(request.NewErrParamMinLen("ConnectorID", 27)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectorID sets the ConnectorID field's value. +func (s *DeleteConnectorInput) SetConnectorID(v string) *DeleteConnectorInput { + s.ConnectorID = &v + return s +} + +type DeleteConnectorOutput 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 DeleteConnectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConnectorOutput) GoString() string { + return s.String() +} + type DeleteJobInput struct { _ struct{} `type:"structure"` @@ -10745,6 +11638,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -10813,6 +11709,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *DisconnectFromServiceOutput) SetConnectorAction(v *SourceServerConnectorAction) *DisconnectFromServiceOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *DisconnectFromServiceOutput) SetDataReplicationInfo(v *DataReplicationInfo) *DisconnectFromServiceOutput { s.DataReplicationInfo = v @@ -11276,6 +12178,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -11344,6 +12249,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *FinalizeCutoverOutput) SetConnectorAction(v *SourceServerConnectorAction) *FinalizeCutoverOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *FinalizeCutoverOutput) SetDataReplicationInfo(v *DataReplicationInfo) *FinalizeCutoverOutput { s.DataReplicationInfo = v @@ -13585,6 +14496,140 @@ return s } +type ListConnectorsInput struct { + _ struct{} `type:"structure"` + + // List Connectors Request filters. + Filters *ListConnectorsRequestFilters `locationName:"filters" type:"structure"` + + // List Connectors Request max results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // List Connectors Request next token. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConnectorsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConnectorsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListConnectorsInput) SetFilters(v *ListConnectorsRequestFilters) *ListConnectorsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConnectorsInput) SetMaxResults(v int64) *ListConnectorsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConnectorsInput) SetNextToken(v string) *ListConnectorsInput { + s.NextToken = &v + return s +} + +type ListConnectorsOutput struct { + _ struct{} `type:"structure"` + + // List connectors response items. + Items []*Connector `locationName:"items" type:"list"` + + // List connectors response next token. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListConnectorsOutput) SetItems(v []*Connector) *ListConnectorsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConnectorsOutput) SetNextToken(v string) *ListConnectorsOutput { + s.NextToken = &v + return s +} + +// List Connectors Request Filters. +type ListConnectorsRequestFilters struct { + _ struct{} `type:"structure"` + + // List Connectors Request Filters connector IDs. + ConnectorIDs []*string `locationName:"connectorIDs" 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 ListConnectorsRequestFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsRequestFilters) GoString() string { + return s.String() +} + +// SetConnectorIDs sets the ConnectorIDs field's value. +func (s *ListConnectorsRequestFilters) SetConnectorIDs(v []*string) *ListConnectorsRequestFilters { + s.ConnectorIDs = v + return s +} + // List export errors request. type ListExportErrorsInput struct { _ struct{} `type:"structure"` @@ -14771,6 +15816,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -14839,6 +15887,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *MarkAsArchivedOutput) SetConnectorAction(v *SourceServerConnectorAction) *MarkAsArchivedOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *MarkAsArchivedOutput) SetDataReplicationInfo(v *DataReplicationInfo) *MarkAsArchivedOutput { s.DataReplicationInfo = v @@ -15118,6 +16172,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -15186,6 +16243,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *PauseReplicationOutput) SetConnectorAction(v *SourceServerConnectorAction) *PauseReplicationOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *PauseReplicationOutput) SetDataReplicationInfo(v *DataReplicationInfo) *PauseReplicationOutput { s.DataReplicationInfo = v @@ -16648,6 +17711,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -16716,6 +17782,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *ResumeReplicationOutput) SetConnectorAction(v *SourceServerConnectorAction) *ResumeReplicationOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *ResumeReplicationOutput) SetDataReplicationInfo(v *DataReplicationInfo) *ResumeReplicationOutput { s.DataReplicationInfo = v @@ -16852,6 +17924,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -16920,6 +17995,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *RetryDataReplicationOutput) SetConnectorAction(v *SourceServerConnectorAction) *RetryDataReplicationOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *RetryDataReplicationOutput) SetDataReplicationInfo(v *DataReplicationInfo) *RetryDataReplicationOutput { s.DataReplicationInfo = v @@ -17244,6 +18325,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -17312,6 +18396,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *SourceServer) SetConnectorAction(v *SourceServerConnectorAction) *SourceServer { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *SourceServer) SetDataReplicationInfo(v *DataReplicationInfo) *SourceServer { s.DataReplicationInfo = v @@ -17540,6 +18630,63 @@ return s } +// Source Server connector action. +type SourceServerConnectorAction struct { + _ struct{} `type:"structure"` + + // Source Server connector action connector arn. + ConnectorArn *string `locationName:"connectorArn" min:"27" type:"string"` + + // Source Server connector action credentials secret arn. + CredentialsSecretArn *string `locationName:"credentialsSecretArn" min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceServerConnectorAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceServerConnectorAction) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SourceServerConnectorAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SourceServerConnectorAction"} + if s.ConnectorArn != nil && len(*s.ConnectorArn) < 27 { + invalidParams.Add(request.NewErrParamMinLen("ConnectorArn", 27)) + } + if s.CredentialsSecretArn != nil && len(*s.CredentialsSecretArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("CredentialsSecretArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectorArn sets the ConnectorArn field's value. +func (s *SourceServerConnectorAction) SetConnectorArn(v string) *SourceServerConnectorAction { + s.ConnectorArn = &v + return s +} + +// SetCredentialsSecretArn sets the CredentialsSecretArn field's value. +func (s *SourceServerConnectorAction) SetCredentialsSecretArn(v string) *SourceServerConnectorAction { + s.CredentialsSecretArn = &v + return s +} + // AWS Systems Manager Document. type SsmDocument struct { _ struct{} `type:"structure"` @@ -18116,6 +19263,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -18184,6 +19334,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *StartReplicationOutput) SetConnectorAction(v *SourceServerConnectorAction) *StartReplicationOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *StartReplicationOutput) SetDataReplicationInfo(v *DataReplicationInfo) *StartReplicationOutput { s.DataReplicationInfo = v @@ -18425,6 +19581,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -18493,6 +19652,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *StopReplicationOutput) SetConnectorAction(v *SourceServerConnectorAction) *StopReplicationOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *StopReplicationOutput) SetDataReplicationInfo(v *DataReplicationInfo) *StopReplicationOutput { s.DataReplicationInfo = v @@ -19695,6 +20860,161 @@ return s } +type UpdateConnectorInput struct { + _ struct{} `type:"structure"` + + // Update Connector request connector ID. + // + // ConnectorID is a required field + ConnectorID *string `locationName:"connectorID" min:"27" type:"string" required:"true"` + + // Update Connector request name. + Name *string `locationName:"name" min:"1" type:"string"` + + // Update Connector request SSM command config. + SsmCommandConfig *ConnectorSsmCommandConfig `locationName:"ssmCommandConfig" 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 UpdateConnectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConnectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateConnectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateConnectorInput"} + if s.ConnectorID == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectorID")) + } + if s.ConnectorID != nil && len(*s.ConnectorID) < 27 { + invalidParams.Add(request.NewErrParamMinLen("ConnectorID", 27)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SsmCommandConfig != nil { + if err := s.SsmCommandConfig.Validate(); err != nil { + invalidParams.AddNested("SsmCommandConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectorID sets the ConnectorID field's value. +func (s *UpdateConnectorInput) SetConnectorID(v string) *UpdateConnectorInput { + s.ConnectorID = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConnectorInput) SetName(v string) *UpdateConnectorInput { + s.Name = &v + return s +} + +// SetSsmCommandConfig sets the SsmCommandConfig field's value. +func (s *UpdateConnectorInput) SetSsmCommandConfig(v *ConnectorSsmCommandConfig) *UpdateConnectorInput { + s.SsmCommandConfig = v + return s +} + +type UpdateConnectorOutput struct { + _ struct{} `type:"structure"` + + // Connector arn. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // Connector ID. + ConnectorID *string `locationName:"connectorID" min:"27" type:"string"` + + // Connector name. + Name *string `locationName:"name" min:"1" type:"string"` + + // Connector SSM command config. + SsmCommandConfig *ConnectorSsmCommandConfig `locationName:"ssmCommandConfig" type:"structure"` + + // Connector SSM instance ID. + SsmInstanceID *string `locationName:"ssmInstanceID" min:"19" type:"string"` + + // Connector tags. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateConnectorOutput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConnectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConnectorOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateConnectorOutput) SetArn(v string) *UpdateConnectorOutput { + s.Arn = &v + return s +} + +// SetConnectorID sets the ConnectorID field's value. +func (s *UpdateConnectorOutput) SetConnectorID(v string) *UpdateConnectorOutput { + s.ConnectorID = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConnectorOutput) SetName(v string) *UpdateConnectorOutput { + s.Name = &v + return s +} + +// SetSsmCommandConfig sets the SsmCommandConfig field's value. +func (s *UpdateConnectorOutput) SetSsmCommandConfig(v *ConnectorSsmCommandConfig) *UpdateConnectorOutput { + s.SsmCommandConfig = v + return s +} + +// SetSsmInstanceID sets the SsmInstanceID field's value. +func (s *UpdateConnectorOutput) SetSsmInstanceID(v string) *UpdateConnectorOutput { + s.SsmInstanceID = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *UpdateConnectorOutput) SetTags(v map[string]*string) *UpdateConnectorOutput { + s.Tags = v + return s +} + type UpdateLaunchConfigurationInput struct { _ struct{} `type:"structure"` @@ -21085,6 +22405,233 @@ return s } +type UpdateSourceServerInput struct { + _ struct{} `type:"structure"` + + // Update Source Server request account ID. + AccountID *string `locationName:"accountID" min:"12" type:"string"` + + // Update Source Server request connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + + // Update Source Server request source server ID. + // + // SourceServerID is a required field + SourceServerID *string `locationName:"sourceServerID" min:"19" 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 UpdateSourceServerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSourceServerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSourceServerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSourceServerInput"} + if s.AccountID != nil && len(*s.AccountID) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountID", 12)) + } + if s.SourceServerID == nil { + invalidParams.Add(request.NewErrParamRequired("SourceServerID")) + } + if s.SourceServerID != nil && len(*s.SourceServerID) < 19 { + invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19)) + } + if s.ConnectorAction != nil { + if err := s.ConnectorAction.Validate(); err != nil { + invalidParams.AddNested("ConnectorAction", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountID sets the AccountID field's value. +func (s *UpdateSourceServerInput) SetAccountID(v string) *UpdateSourceServerInput { + s.AccountID = &v + return s +} + +// SetConnectorAction sets the ConnectorAction field's value. +func (s *UpdateSourceServerInput) SetConnectorAction(v *SourceServerConnectorAction) *UpdateSourceServerInput { + s.ConnectorAction = v + return s +} + +// SetSourceServerID sets the SourceServerID field's value. +func (s *UpdateSourceServerInput) SetSourceServerID(v string) *UpdateSourceServerInput { + s.SourceServerID = &v + return s +} + +type UpdateSourceServerOutput struct { + _ struct{} `type:"structure"` + + // Source server application ID. + ApplicationID *string `locationName:"applicationID" min:"21" type:"string"` + + // Source server ARN. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + + // Source server data replication info. + DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` + + // Source server fqdn for action framework. + FqdnForActionFramework *string `locationName:"fqdnForActionFramework" type:"string"` + + // Source server archived status. + IsArchived *bool `locationName:"isArchived" type:"boolean"` + + // Source server launched instance. + LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"` + + // Source server lifecycle state. + LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"` + + // Source server replication type. + ReplicationType *string `locationName:"replicationType" type:"string" enum:"ReplicationType"` + + // Source server properties. + SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"` + + // Source server ID. + SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"` + + // Source server Tags. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSourceServerOutput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` + + // Source server user provided ID. + UserProvidedID *string `locationName:"userProvidedID" type:"string"` + + // Source server vCenter client id. + VcenterClientID *string `locationName:"vcenterClientID" min:"21" 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 UpdateSourceServerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSourceServerOutput) GoString() string { + return s.String() +} + +// SetApplicationID sets the ApplicationID field's value. +func (s *UpdateSourceServerOutput) SetApplicationID(v string) *UpdateSourceServerOutput { + s.ApplicationID = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *UpdateSourceServerOutput) SetArn(v string) *UpdateSourceServerOutput { + s.Arn = &v + return s +} + +// SetConnectorAction sets the ConnectorAction field's value. +func (s *UpdateSourceServerOutput) SetConnectorAction(v *SourceServerConnectorAction) *UpdateSourceServerOutput { + s.ConnectorAction = v + return s +} + +// SetDataReplicationInfo sets the DataReplicationInfo field's value. +func (s *UpdateSourceServerOutput) SetDataReplicationInfo(v *DataReplicationInfo) *UpdateSourceServerOutput { + s.DataReplicationInfo = v + return s +} + +// SetFqdnForActionFramework sets the FqdnForActionFramework field's value. +func (s *UpdateSourceServerOutput) SetFqdnForActionFramework(v string) *UpdateSourceServerOutput { + s.FqdnForActionFramework = &v + return s +} + +// SetIsArchived sets the IsArchived field's value. +func (s *UpdateSourceServerOutput) SetIsArchived(v bool) *UpdateSourceServerOutput { + s.IsArchived = &v + return s +} + +// SetLaunchedInstance sets the LaunchedInstance field's value. +func (s *UpdateSourceServerOutput) SetLaunchedInstance(v *LaunchedInstance) *UpdateSourceServerOutput { + s.LaunchedInstance = v + return s +} + +// SetLifeCycle sets the LifeCycle field's value. +func (s *UpdateSourceServerOutput) SetLifeCycle(v *LifeCycle) *UpdateSourceServerOutput { + s.LifeCycle = v + return s +} + +// SetReplicationType sets the ReplicationType field's value. +func (s *UpdateSourceServerOutput) SetReplicationType(v string) *UpdateSourceServerOutput { + s.ReplicationType = &v + return s +} + +// SetSourceProperties sets the SourceProperties field's value. +func (s *UpdateSourceServerOutput) SetSourceProperties(v *SourceProperties) *UpdateSourceServerOutput { + s.SourceProperties = v + return s +} + +// SetSourceServerID sets the SourceServerID field's value. +func (s *UpdateSourceServerOutput) SetSourceServerID(v string) *UpdateSourceServerOutput { + s.SourceServerID = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *UpdateSourceServerOutput) SetTags(v map[string]*string) *UpdateSourceServerOutput { + s.Tags = v + return s +} + +// SetUserProvidedID sets the UserProvidedID field's value. +func (s *UpdateSourceServerOutput) SetUserProvidedID(v string) *UpdateSourceServerOutput { + s.UserProvidedID = &v + return s +} + +// SetVcenterClientID sets the VcenterClientID field's value. +func (s *UpdateSourceServerOutput) SetVcenterClientID(v string) *UpdateSourceServerOutput { + s.VcenterClientID = &v + return s +} + type UpdateSourceServerReplicationTypeInput struct { _ struct{} `type:"structure"` @@ -21169,6 +22716,9 @@ // Source server ARN. Arn *string `locationName:"arn" min:"20" type:"string"` + // Source Server connector action. + ConnectorAction *SourceServerConnectorAction `locationName:"connectorAction" type:"structure"` + // Source server data replication info. DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"` @@ -21237,6 +22787,12 @@ return s } +// SetConnectorAction sets the ConnectorAction field's value. +func (s *UpdateSourceServerReplicationTypeOutput) SetConnectorAction(v *SourceServerConnectorAction) *UpdateSourceServerReplicationTypeOutput { + s.ConnectorAction = v + return s +} + // SetDataReplicationInfo sets the DataReplicationInfo field's value. func (s *UpdateSourceServerReplicationTypeOutput) SetDataReplicationInfo(v *DataReplicationInfo) *UpdateSourceServerReplicationTypeOutput { s.DataReplicationInfo = v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mgn/mgniface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/mgn/mgniface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mgn/mgniface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mgn/mgniface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -84,6 +84,10 @@ CreateApplicationWithContext(aws.Context, *mgn.CreateApplicationInput, ...request.Option) (*mgn.CreateApplicationOutput, error) CreateApplicationRequest(*mgn.CreateApplicationInput) (*request.Request, *mgn.CreateApplicationOutput) + CreateConnector(*mgn.CreateConnectorInput) (*mgn.CreateConnectorOutput, error) + CreateConnectorWithContext(aws.Context, *mgn.CreateConnectorInput, ...request.Option) (*mgn.CreateConnectorOutput, error) + CreateConnectorRequest(*mgn.CreateConnectorInput) (*request.Request, *mgn.CreateConnectorOutput) + CreateLaunchConfigurationTemplate(*mgn.CreateLaunchConfigurationTemplateInput) (*mgn.CreateLaunchConfigurationTemplateOutput, error) CreateLaunchConfigurationTemplateWithContext(aws.Context, *mgn.CreateLaunchConfigurationTemplateInput, ...request.Option) (*mgn.CreateLaunchConfigurationTemplateOutput, error) CreateLaunchConfigurationTemplateRequest(*mgn.CreateLaunchConfigurationTemplateInput) (*request.Request, *mgn.CreateLaunchConfigurationTemplateOutput) @@ -100,6 +104,10 @@ DeleteApplicationWithContext(aws.Context, *mgn.DeleteApplicationInput, ...request.Option) (*mgn.DeleteApplicationOutput, error) DeleteApplicationRequest(*mgn.DeleteApplicationInput) (*request.Request, *mgn.DeleteApplicationOutput) + DeleteConnector(*mgn.DeleteConnectorInput) (*mgn.DeleteConnectorOutput, error) + DeleteConnectorWithContext(aws.Context, *mgn.DeleteConnectorInput, ...request.Option) (*mgn.DeleteConnectorOutput, error) + DeleteConnectorRequest(*mgn.DeleteConnectorInput) (*request.Request, *mgn.DeleteConnectorOutput) + DeleteJob(*mgn.DeleteJobInput) (*mgn.DeleteJobOutput, error) DeleteJobWithContext(aws.Context, *mgn.DeleteJobInput, ...request.Option) (*mgn.DeleteJobOutput, error) DeleteJobRequest(*mgn.DeleteJobInput) (*request.Request, *mgn.DeleteJobOutput) @@ -201,6 +209,13 @@ ListApplicationsPages(*mgn.ListApplicationsInput, func(*mgn.ListApplicationsOutput, bool) bool) error ListApplicationsPagesWithContext(aws.Context, *mgn.ListApplicationsInput, func(*mgn.ListApplicationsOutput, bool) bool, ...request.Option) error + ListConnectors(*mgn.ListConnectorsInput) (*mgn.ListConnectorsOutput, error) + ListConnectorsWithContext(aws.Context, *mgn.ListConnectorsInput, ...request.Option) (*mgn.ListConnectorsOutput, error) + ListConnectorsRequest(*mgn.ListConnectorsInput) (*request.Request, *mgn.ListConnectorsOutput) + + ListConnectorsPages(*mgn.ListConnectorsInput, func(*mgn.ListConnectorsOutput, bool) bool) error + ListConnectorsPagesWithContext(aws.Context, *mgn.ListConnectorsInput, func(*mgn.ListConnectorsOutput, bool) bool, ...request.Option) error + ListExportErrors(*mgn.ListExportErrorsInput) (*mgn.ListExportErrorsOutput, error) ListExportErrorsWithContext(aws.Context, *mgn.ListExportErrorsInput, ...request.Option) (*mgn.ListExportErrorsOutput, error) ListExportErrorsRequest(*mgn.ListExportErrorsInput) (*request.Request, *mgn.ListExportErrorsOutput) @@ -341,6 +356,10 @@ UpdateApplicationWithContext(aws.Context, *mgn.UpdateApplicationInput, ...request.Option) (*mgn.UpdateApplicationOutput, error) UpdateApplicationRequest(*mgn.UpdateApplicationInput) (*request.Request, *mgn.UpdateApplicationOutput) + UpdateConnector(*mgn.UpdateConnectorInput) (*mgn.UpdateConnectorOutput, error) + UpdateConnectorWithContext(aws.Context, *mgn.UpdateConnectorInput, ...request.Option) (*mgn.UpdateConnectorOutput, error) + UpdateConnectorRequest(*mgn.UpdateConnectorInput) (*request.Request, *mgn.UpdateConnectorOutput) + UpdateLaunchConfiguration(*mgn.UpdateLaunchConfigurationInput) (*mgn.UpdateLaunchConfigurationOutput, error) UpdateLaunchConfigurationWithContext(aws.Context, *mgn.UpdateLaunchConfigurationInput, ...request.Option) (*mgn.UpdateLaunchConfigurationOutput, error) UpdateLaunchConfigurationRequest(*mgn.UpdateLaunchConfigurationInput) (*request.Request, *mgn.UpdateLaunchConfigurationOutput) @@ -357,6 +376,10 @@ UpdateReplicationConfigurationTemplateWithContext(aws.Context, *mgn.UpdateReplicationConfigurationTemplateInput, ...request.Option) (*mgn.UpdateReplicationConfigurationTemplateOutput, error) UpdateReplicationConfigurationTemplateRequest(*mgn.UpdateReplicationConfigurationTemplateInput) (*request.Request, *mgn.UpdateReplicationConfigurationTemplateOutput) + UpdateSourceServer(*mgn.UpdateSourceServerInput) (*mgn.UpdateSourceServerOutput, error) + UpdateSourceServerWithContext(aws.Context, *mgn.UpdateSourceServerInput, ...request.Option) (*mgn.UpdateSourceServerOutput, error) + UpdateSourceServerRequest(*mgn.UpdateSourceServerInput) (*request.Request, *mgn.UpdateSourceServerOutput) + UpdateSourceServerReplicationType(*mgn.UpdateSourceServerReplicationTypeInput) (*mgn.UpdateSourceServerReplicationTypeOutput, error) UpdateSourceServerReplicationTypeWithContext(aws.Context, *mgn.UpdateSourceServerReplicationTypeInput, ...request.Option) (*mgn.UpdateSourceServerReplicationTypeOutput, error) UpdateSourceServerReplicationTypeRequest(*mgn.UpdateSourceServerReplicationTypeInput) (*request.Request, *mgn.UpdateSourceServerReplicationTypeOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubconfig/api.go golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubconfig/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubconfig/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubconfig/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -10,6 +10,7 @@ "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 opCreateHomeRegionControl = "CreateHomeRegionControl" @@ -110,6 +111,103 @@ return out, req.Send() } +const opDeleteHomeRegionControl = "DeleteHomeRegionControl" + +// DeleteHomeRegionControlRequest generates a "aws/request.Request" representing the +// client's request for the DeleteHomeRegionControl 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 DeleteHomeRegionControl for more information on using the DeleteHomeRegionControl +// 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 DeleteHomeRegionControlRequest method. +// req, resp := client.DeleteHomeRegionControlRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhub-config-2019-06-30/DeleteHomeRegionControl +func (c *MigrationHubConfig) DeleteHomeRegionControlRequest(input *DeleteHomeRegionControlInput) (req *request.Request, output *DeleteHomeRegionControlOutput) { + op := &request.Operation{ + Name: opDeleteHomeRegionControl, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteHomeRegionControlInput{} + } + + output = &DeleteHomeRegionControlOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteHomeRegionControl API operation for AWS Migration Hub Config. +// +// This operation deletes the home region configuration for the calling account. +// The operation does not delete discovery or migration tracking data in the +// home region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Migration Hub Config's +// API operation DeleteHomeRegionControl for usage and error information. +// +// Returned Error Types: +// +// - InternalServerError +// Exception raised when an internal, configuration, or dependency error is +// encountered. +// +// - ServiceUnavailableException +// Exception raised when a request fails due to temporary unavailability of +// the service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InvalidInputException +// Exception raised when the provided input violates a policy constraint or +// is entered in the wrong format or data type. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhub-config-2019-06-30/DeleteHomeRegionControl +func (c *MigrationHubConfig) DeleteHomeRegionControl(input *DeleteHomeRegionControlInput) (*DeleteHomeRegionControlOutput, error) { + req, out := c.DeleteHomeRegionControlRequest(input) + return out, req.Send() +} + +// DeleteHomeRegionControlWithContext is the same as DeleteHomeRegionControl with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteHomeRegionControl 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 *MigrationHubConfig) DeleteHomeRegionControlWithContext(ctx aws.Context, input *DeleteHomeRegionControlInput, opts ...request.Option) (*DeleteHomeRegionControlOutput, error) { + req, out := c.DeleteHomeRegionControlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeHomeRegionControls = "DescribeHomeRegionControls" // DescribeHomeRegionControlsRequest generates a "aws/request.Request" representing the @@ -534,6 +632,78 @@ return s } +type DeleteHomeRegionControlInput struct { + _ struct{} `type:"structure"` + + // A unique identifier that's generated for each home region control. It's always + // a string that begins with "hrc-" followed by 12 lowercase letters and numbers. + // + // ControlId is a required field + ControlId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteHomeRegionControlInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteHomeRegionControlInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteHomeRegionControlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteHomeRegionControlInput"} + if s.ControlId == nil { + invalidParams.Add(request.NewErrParamRequired("ControlId")) + } + if s.ControlId != nil && len(*s.ControlId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ControlId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetControlId sets the ControlId field's value. +func (s *DeleteHomeRegionControlInput) SetControlId(v string) *DeleteHomeRegionControlInput { + s.ControlId = &v + return s +} + +type DeleteHomeRegionControlOutput 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 DeleteHomeRegionControlOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteHomeRegionControlOutput) GoString() string { + return s.String() +} + type DescribeHomeRegionControlsInput struct { _ struct{} `type:"structure"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubconfig/migrationhubconfigiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubconfig/migrationhubconfigiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubconfig/migrationhubconfigiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubconfig/migrationhubconfigiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ CreateHomeRegionControlWithContext(aws.Context, *migrationhubconfig.CreateHomeRegionControlInput, ...request.Option) (*migrationhubconfig.CreateHomeRegionControlOutput, error) CreateHomeRegionControlRequest(*migrationhubconfig.CreateHomeRegionControlInput) (*request.Request, *migrationhubconfig.CreateHomeRegionControlOutput) + DeleteHomeRegionControl(*migrationhubconfig.DeleteHomeRegionControlInput) (*migrationhubconfig.DeleteHomeRegionControlOutput, error) + DeleteHomeRegionControlWithContext(aws.Context, *migrationhubconfig.DeleteHomeRegionControlInput, ...request.Option) (*migrationhubconfig.DeleteHomeRegionControlOutput, error) + DeleteHomeRegionControlRequest(*migrationhubconfig.DeleteHomeRegionControlInput) (*request.Request, *migrationhubconfig.DeleteHomeRegionControlOutput) + DescribeHomeRegionControls(*migrationhubconfig.DescribeHomeRegionControlsInput) (*migrationhubconfig.DescribeHomeRegionControlsOutput, error) DescribeHomeRegionControlsWithContext(aws.Context, *migrationhubconfig.DescribeHomeRegionControlsInput, ...request.Option) (*migrationhubconfig.DescribeHomeRegionControlsOutput, error) DescribeHomeRegionControlsRequest(*migrationhubconfig.DescribeHomeRegionControlsInput) (*request.Request, *migrationhubconfig.DescribeHomeRegionControlsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubstrategyrecommendations/api.go golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubstrategyrecommendations/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubstrategyrecommendations/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubstrategyrecommendations/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -963,6 +963,153 @@ return out, req.Send() } +const opListAnalyzableServers = "ListAnalyzableServers" + +// ListAnalyzableServersRequest generates a "aws/request.Request" representing the +// client's request for the ListAnalyzableServers 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 ListAnalyzableServers for more information on using the ListAnalyzableServers +// 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 ListAnalyzableServersRequest method. +// req, resp := client.ListAnalyzableServersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhubstrategy-2020-02-19/ListAnalyzableServers +func (c *MigrationHubStrategyRecommendations) ListAnalyzableServersRequest(input *ListAnalyzableServersInput) (req *request.Request, output *ListAnalyzableServersOutput) { + op := &request.Operation{ + Name: opListAnalyzableServers, + HTTPMethod: "POST", + HTTPPath: "/list-analyzable-servers", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAnalyzableServersInput{} + } + + output = &ListAnalyzableServersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAnalyzableServers API operation for Migration Hub Strategy Recommendations. +// +// Retrieves a list of all the servers fetched from customer vCenter using Strategy +// Recommendation Collector. +// +// 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 Migration Hub Strategy Recommendations's +// API operation ListAnalyzableServers for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user does not have permission to perform the action. Check the AWS Identity +// and Access Management (IAM) policy associated with this user. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The request body isn't valid. +// +// - InternalServerException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhubstrategy-2020-02-19/ListAnalyzableServers +func (c *MigrationHubStrategyRecommendations) ListAnalyzableServers(input *ListAnalyzableServersInput) (*ListAnalyzableServersOutput, error) { + req, out := c.ListAnalyzableServersRequest(input) + return out, req.Send() +} + +// ListAnalyzableServersWithContext is the same as ListAnalyzableServers with the addition of +// the ability to pass a context and additional request options. +// +// See ListAnalyzableServers 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 *MigrationHubStrategyRecommendations) ListAnalyzableServersWithContext(ctx aws.Context, input *ListAnalyzableServersInput, opts ...request.Option) (*ListAnalyzableServersOutput, error) { + req, out := c.ListAnalyzableServersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAnalyzableServersPages iterates over the pages of a ListAnalyzableServers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAnalyzableServers 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 ListAnalyzableServers operation. +// pageNum := 0 +// err := client.ListAnalyzableServersPages(params, +// func(page *migrationhubstrategyrecommendations.ListAnalyzableServersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MigrationHubStrategyRecommendations) ListAnalyzableServersPages(input *ListAnalyzableServersInput, fn func(*ListAnalyzableServersOutput, bool) bool) error { + return c.ListAnalyzableServersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAnalyzableServersPagesWithContext same as ListAnalyzableServersPages 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 *MigrationHubStrategyRecommendations) ListAnalyzableServersPagesWithContext(ctx aws.Context, input *ListAnalyzableServersInput, fn func(*ListAnalyzableServersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAnalyzableServersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAnalyzableServersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAnalyzableServersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListApplicationComponents = "ListApplicationComponents" // ListApplicationComponentsRequest generates a "aws/request.Request" representing the @@ -2291,6 +2438,65 @@ return s } +// Summary information about an analyzable server. +type AnalyzableServerSummary struct { + _ struct{} `type:"structure"` + + // The host name of the analyzable server. + Hostname *string `locationName:"hostname" type:"string"` + + // The ip address of the analyzable server. + IpAddress *string `locationName:"ipAddress" type:"string"` + + // The data source of the analyzable server. + Source *string `locationName:"source" type:"string"` + + // The virtual machine id of the analyzable server. + VmId *string `locationName:"vmId" 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 AnalyzableServerSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyzableServerSummary) GoString() string { + return s.String() +} + +// SetHostname sets the Hostname field's value. +func (s *AnalyzableServerSummary) SetHostname(v string) *AnalyzableServerSummary { + s.Hostname = &v + return s +} + +// SetIpAddress sets the IpAddress field's value. +func (s *AnalyzableServerSummary) SetIpAddress(v string) *AnalyzableServerSummary { + s.IpAddress = &v + return s +} + +// SetSource sets the Source field's value. +func (s *AnalyzableServerSummary) SetSource(v string) *AnalyzableServerSummary { + s.Source = &v + return s +} + +// SetVmId sets the VmId field's value. +func (s *AnalyzableServerSummary) SetVmId(v string) *AnalyzableServerSummary { + s.VmId = &v + return s +} + // The combination of the existing analyzers. type AnalyzerNameUnion struct { _ struct{} `type:"structure"` @@ -5107,6 +5313,102 @@ return s.RespMetadata.RequestID } +// Represents input for ListAnalyzableServers operation. +type ListAnalyzableServersInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to include in the response. The maximum value + // is 100. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The token from a previous call that you use to retrieve the next set of results. + // For example, if a previous call to this action returned 100 items, but you + // set maxResults to 10. You'll receive a set of 10 results along with a token. + // You then use the returned token to retrieve the next set of 10. + NextToken *string `locationName:"nextToken" type:"string"` + + // Specifies whether to sort by ascending (ASC) or descending (DESC) order. + Sort *string `locationName:"sort" type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnalyzableServersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnalyzableServersInput) GoString() string { + return s.String() +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAnalyzableServersInput) SetMaxResults(v int64) *ListAnalyzableServersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAnalyzableServersInput) SetNextToken(v string) *ListAnalyzableServersInput { + s.NextToken = &v + return s +} + +// SetSort sets the Sort field's value. +func (s *ListAnalyzableServersInput) SetSort(v string) *ListAnalyzableServersInput { + s.Sort = &v + return s +} + +// Represents output for ListAnalyzableServers operation. +type ListAnalyzableServersOutput struct { + _ struct{} `type:"structure"` + + // The list of analyzable servers with summary information about each server. + AnalyzableServers []*AnalyzableServerSummary `locationName:"analyzableServers" type:"list"` + + // The token you use to retrieve the next set of results, or null if there are + // no more results. + 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 ListAnalyzableServersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAnalyzableServersOutput) GoString() string { + return s.String() +} + +// SetAnalyzableServers sets the AnalyzableServers field's value. +func (s *ListAnalyzableServersOutput) SetAnalyzableServers(v []*AnalyzableServerSummary) *ListAnalyzableServersOutput { + s.AnalyzableServers = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAnalyzableServersOutput) SetNextToken(v string) *ListAnalyzableServersOutput { + s.NextToken = &v + return s +} + type ListApplicationComponentsInput struct { _ struct{} `type:"structure"` @@ -6975,6 +7277,9 @@ type StartAssessmentInput struct { _ struct{} `type:"structure"` + // The data source type of an assessment to be started. + AssessmentDataSourceType *string `locationName:"assessmentDataSourceType" type:"string" enum:"AssessmentDataSourceType"` + // List of criteria for assessment. AssessmentTargets []*AssessmentTarget `locationName:"assessmentTargets" type:"list"` @@ -7025,6 +7330,12 @@ return nil } +// SetAssessmentDataSourceType sets the AssessmentDataSourceType field's value. +func (s *StartAssessmentInput) SetAssessmentDataSourceType(v string) *StartAssessmentInput { + s.AssessmentDataSourceType = &v + return s +} + // SetAssessmentTargets sets the AssessmentTargets field's value. func (s *StartAssessmentInput) SetAssessmentTargets(v []*AssessmentTarget) *StartAssessmentInput { s.AssessmentTargets = v @@ -8231,6 +8542,26 @@ } const ( + // AssessmentDataSourceTypeStrategyRecommendationsApplicationDataCollector is a AssessmentDataSourceType enum value + AssessmentDataSourceTypeStrategyRecommendationsApplicationDataCollector = "StrategyRecommendationsApplicationDataCollector" + + // AssessmentDataSourceTypeManualImport is a AssessmentDataSourceType enum value + AssessmentDataSourceTypeManualImport = "ManualImport" + + // AssessmentDataSourceTypeApplicationDiscoveryService is a AssessmentDataSourceType enum value + AssessmentDataSourceTypeApplicationDiscoveryService = "ApplicationDiscoveryService" +) + +// AssessmentDataSourceType_Values returns all elements of the AssessmentDataSourceType enum +func AssessmentDataSourceType_Values() []string { + return []string{ + AssessmentDataSourceTypeStrategyRecommendationsApplicationDataCollector, + AssessmentDataSourceTypeManualImport, + AssessmentDataSourceTypeApplicationDiscoveryService, + } +} + +const ( // AssessmentStatusInProgress is a AssessmentStatus enum value AssessmentStatusInProgress = "IN_PROGRESS" @@ -8359,6 +8690,9 @@ // DataSourceTypeImport is a DataSourceType enum value DataSourceTypeImport = "Import" + + // DataSourceTypeStrategyRecommendationsApplicationDataCollector is a DataSourceType enum value + DataSourceTypeStrategyRecommendationsApplicationDataCollector = "StrategyRecommendationsApplicationDataCollector" ) // DataSourceType_Values returns all elements of the DataSourceType enum @@ -8367,6 +8701,7 @@ DataSourceTypeApplicationDiscoveryService, DataSourceTypeMpa, DataSourceTypeImport, + DataSourceTypeStrategyRecommendationsApplicationDataCollector, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/migrationhubstrategyrecommendations/migrationhubstrategyrecommendationsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -103,6 +103,13 @@ GetServerStrategiesWithContext(aws.Context, *migrationhubstrategyrecommendations.GetServerStrategiesInput, ...request.Option) (*migrationhubstrategyrecommendations.GetServerStrategiesOutput, error) GetServerStrategiesRequest(*migrationhubstrategyrecommendations.GetServerStrategiesInput) (*request.Request, *migrationhubstrategyrecommendations.GetServerStrategiesOutput) + ListAnalyzableServers(*migrationhubstrategyrecommendations.ListAnalyzableServersInput) (*migrationhubstrategyrecommendations.ListAnalyzableServersOutput, error) + ListAnalyzableServersWithContext(aws.Context, *migrationhubstrategyrecommendations.ListAnalyzableServersInput, ...request.Option) (*migrationhubstrategyrecommendations.ListAnalyzableServersOutput, error) + ListAnalyzableServersRequest(*migrationhubstrategyrecommendations.ListAnalyzableServersInput) (*request.Request, *migrationhubstrategyrecommendations.ListAnalyzableServersOutput) + + ListAnalyzableServersPages(*migrationhubstrategyrecommendations.ListAnalyzableServersInput, func(*migrationhubstrategyrecommendations.ListAnalyzableServersOutput, bool) bool) error + ListAnalyzableServersPagesWithContext(aws.Context, *migrationhubstrategyrecommendations.ListAnalyzableServersInput, func(*migrationhubstrategyrecommendations.ListAnalyzableServersOutput, bool) bool, ...request.Option) error + ListApplicationComponents(*migrationhubstrategyrecommendations.ListApplicationComponentsInput) (*migrationhubstrategyrecommendations.ListApplicationComponentsOutput, error) ListApplicationComponentsWithContext(aws.Context, *migrationhubstrategyrecommendations.ListApplicationComponentsInput, ...request.Option) (*migrationhubstrategyrecommendations.ListApplicationComponentsOutput, error) ListApplicationComponentsRequest(*migrationhubstrategyrecommendations.ListApplicationComponentsInput) (*request.Request, *migrationhubstrategyrecommendations.ListApplicationComponentsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mwaa/api.go golang-github-aws-aws-sdk-go-1.48.14/service/mwaa/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mwaa/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mwaa/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -699,7 +699,12 @@ // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mwaa-2020-07-01/PublishMetrics +// +// Deprecated: This API is for internal use and not meant for public use, and is no longer available. func (c *MWAA) PublishMetricsRequest(input *PublishMetricsInput) (req *request.Request, output *PublishMetricsOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, PublishMetrics, has been deprecated") + } op := &request.Operation{ Name: opPublishMetrics, HTTPMethod: "POST", @@ -738,6 +743,8 @@ // InternalServerException: An internal error has occurred. // // See also, https://docs.aws.amazon.com/goto/WebAPI/mwaa-2020-07-01/PublishMetrics +// +// Deprecated: This API is for internal use and not meant for public use, and is no longer available. func (c *MWAA) PublishMetrics(input *PublishMetricsInput) (*PublishMetricsOutput, error) { req, out := c.PublishMetricsRequest(input) return out, req.Send() @@ -752,6 +759,8 @@ // 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. +// +// Deprecated: This API is for internal use and not meant for public use, and is no longer available. func (c *MWAA) PublishMetricsWithContext(ctx aws.Context, input *PublishMetricsInput, opts ...request.Option) (*PublishMetricsOutput, error) { req, out := c.PublishMetricsRequest(input) req.SetContext(ctx) @@ -1198,9 +1207,10 @@ AirflowConfigurationOptions map[string]*string `type:"map" sensitive:"true"` // The Apache Airflow version for your environment. If no value is specified, - // it defaults to the latest version. Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, - // and 2.5.1. For more information, see Apache Airflow versions on Amazon Managed - // Workflows for Apache Airflow (MWAA) (https://docs.aws.amazon.com/mwaa/latest/userguide/airflow-versions.html). + // it defaults to the latest version. For more information, see Apache Airflow + // versions on Amazon Managed Workflows for Apache Airflow (MWAA) (https://docs.aws.amazon.com/mwaa/latest/userguide/airflow-versions.html). + // + // Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, 2.5.1, 2.6.3, 2.7.2 AirflowVersion *string `min:"1" type:"string"` // The relative path to the DAGs folder on your Amazon S3 bucket. For example, @@ -1209,6 +1219,17 @@ // DagS3Path is a required field DagS3Path *string `min:"1" type:"string" required:"true"` + // Defines whether the VPC endpoints configured for the environment are created, + // and managed, by the customer or by Amazon MWAA. If set to SERVICE, Amazon + // MWAA will create and manage the required VPC endpoints in your VPC. If set + // to CUSTOMER, you must create, and manage, the VPC endpoints for your VPC. + // If you choose to create an environment in a shared VPC, you must set this + // value to CUSTOMER. In a shared VPC deployment, the environment will remain + // in PENDING status until you create the VPC endpoints. If you do not take + // action to create the endpoints within 72 hours, the status will change to + // CREATE_FAILED. You can delete the failed environment and create a new one. + EndpointManagement *string `type:"string" enum:"EndpointManagement"` + // The environment class type. Valid values: mw1.small, mw1.medium, mw1.large. // For more information, see Amazon MWAA environment class (https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html). EnvironmentClass *string `min:"1" type:"string"` @@ -1319,8 +1340,8 @@ // resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). Tags map[string]*string `min:"1" type:"map"` - // The Apache Airflow Web server access mode. For more information, see Apache - // Airflow access modes (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html). + // Defines the access mode for the Apache Airflow web server. For more information, + // see Apache Airflow access modes (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html). WebserverAccessMode *string `type:"string" enum:"WebserverAccessMode"` // The day and time of the week in Coordinated Universal Time (UTC) 24-hour @@ -1452,6 +1473,12 @@ return s } +// SetEndpointManagement sets the EndpointManagement field's value. +func (s *CreateEnvironmentInput) SetEndpointManagement(v string) *CreateEnvironmentInput { + s.EndpointManagement = &v + return s +} + // SetEnvironmentClass sets the EnvironmentClass field's value. func (s *CreateEnvironmentInput) SetEnvironmentClass(v string) *CreateEnvironmentInput { s.EnvironmentClass = &v @@ -1764,8 +1791,10 @@ // Internal only. Represents the dimensions of a metric. To learn more about // the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics // in Amazon CloudWatch (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). +// +// Deprecated: This type is for internal use and not meant for public use. Data set for this type will be ignored. type Dimension struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` // Internal only. The name of the dimension. // @@ -1837,13 +1866,20 @@ // String and GoString methods. AirflowConfigurationOptions map[string]*string `type:"map" sensitive:"true"` - // The Apache Airflow version on your environment. Valid values: 1.10.12, 2.0.2, - // 2.2.2, 2.4.3, and 2.5.1. + // The Apache Airflow version on your environment. + // + // Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, 2.5.1, 2.6.3, 2.7.2. AirflowVersion *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the Amazon MWAA environment. Arn *string `min:"1" type:"string"` + // The queue ARN for the environment's Celery Executor (https://airflow.apache.org/docs/apache-airflow/stable/core-concepts/executor/celery.html). + // Amazon MWAA uses a Celery Executor to distribute tasks across multiple workers. + // When you create an environment in a shared VPC, you must provide access to + // the Celery Executor queue from your VPC. + CeleryExecutorQueue *string `min:"1" type:"string"` + // The day and time the environment was created. CreatedAt *time.Time `type:"timestamp"` @@ -1852,6 +1888,15 @@ // DAGs (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html). DagS3Path *string `min:"1" type:"string"` + // The VPC endpoint for the environment's Amazon RDS database. + DatabaseVpcEndpointService *string `min:"1" type:"string"` + + // Defines whether the VPC endpoints configured for the environment are created, + // and managed, by the customer or by Amazon MWAA. If set to SERVICE, Amazon + // MWAA will create and manage the required VPC endpoints in your VPC. If set + // to CUSTOMER, you must create, and manage, the VPC endpoints in your VPC. + EndpointManagement *string `type:"string" enum:"EndpointManagement"` + // The environment class type. Valid values: mw1.small, mw1.medium, mw1.large. // For more information, see Amazon MWAA environment class (https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html). EnvironmentClass *string `min:"1" type:"string"` @@ -1954,7 +1999,9 @@ // For more information, see Using a startup script (https://docs.aws.amazon.com/mwaa/latest/userguide/using-startup-script.html). StartupScriptS3Path *string `type:"string"` - // The status of the Amazon MWAA environment. Valid values: + // The status of the Amazon MWAA environment. + // + // Valid values: // // * CREATING - Indicates the request to create the environment is in progress. // @@ -1971,6 +2018,10 @@ // * AVAILABLE - Indicates the request was successful and the environment // is ready to use. // + // * PENDING - Indicates the request was successful, but the process to create + // the environment is paused until you create the required VPC endpoints + // in your VPC. After you create the VPC endpoints, the process resumes. + // // * UPDATING - Indicates the request to update the environment is in progress. // // * ROLLING_BACK - Indicates the request to update environment details, @@ -1998,7 +2049,7 @@ // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). Tags map[string]*string `min:"1" type:"map"` - // The Apache Airflow Web server access mode. For more information, see Apache + // The Apache Airflow web server access mode. For more information, see Apache // Airflow access modes (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html). WebserverAccessMode *string `type:"string" enum:"WebserverAccessMode"` @@ -2006,6 +2057,9 @@ // For more information, see Accessing the Apache Airflow UI (https://docs.aws.amazon.com/mwaa/latest/userguide/access-airflow-ui.html). WebserverUrl *string `min:"1" type:"string"` + // The VPC endpoint for the environment's web server. + WebserverVpcEndpointService *string `min:"1" type:"string"` + // The day and time of the week in Coordinated Universal Time (UTC) 24-hour // standard time that weekly maintenance updates are scheduled. For example: // TUE:03:30. @@ -2048,6 +2102,12 @@ return s } +// SetCeleryExecutorQueue sets the CeleryExecutorQueue field's value. +func (s *Environment) SetCeleryExecutorQueue(v string) *Environment { + s.CeleryExecutorQueue = &v + return s +} + // SetCreatedAt sets the CreatedAt field's value. func (s *Environment) SetCreatedAt(v time.Time) *Environment { s.CreatedAt = &v @@ -2060,6 +2120,18 @@ return s } +// SetDatabaseVpcEndpointService sets the DatabaseVpcEndpointService field's value. +func (s *Environment) SetDatabaseVpcEndpointService(v string) *Environment { + s.DatabaseVpcEndpointService = &v + return s +} + +// SetEndpointManagement sets the EndpointManagement field's value. +func (s *Environment) SetEndpointManagement(v string) *Environment { + s.EndpointManagement = &v + return s +} + // SetEnvironmentClass sets the EnvironmentClass field's value. func (s *Environment) SetEnvironmentClass(v string) *Environment { s.EnvironmentClass = &v @@ -2192,6 +2264,12 @@ return s } +// SetWebserverVpcEndpointService sets the WebserverVpcEndpointService field's value. +func (s *Environment) SetWebserverVpcEndpointService(v string) *Environment { + s.WebserverVpcEndpointService = &v + return s +} + // SetWeeklyMaintenanceWindowStart sets the WeeklyMaintenanceWindowStart field's value. func (s *Environment) SetWeeklyMaintenanceWindowStart(v string) *Environment { s.WeeklyMaintenanceWindowStart = &v @@ -2756,11 +2834,13 @@ // Internal only. Collects Apache Airflow metrics. To learn more about the metrics // published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon // CloudWatch (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). +// +// Deprecated: This type is for internal use and not meant for public use. Data set for this type will be ignored. type MetricDatum struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` // Internal only. The dimensions associated with the metric. - Dimensions []*Dimension `type:"list"` + Dimensions []*Dimension `deprecated:"true" type:"list"` // Internal only. The name of the metric. // @@ -2768,7 +2848,7 @@ MetricName *string `type:"string" required:"true"` // Internal only. The statistical values for the metric. - StatisticValues *StatisticSet `type:"structure"` + StatisticValues *StatisticSet `deprecated:"true" type:"structure"` // Internal only. The time the metric data was received. // @@ -3037,8 +3117,9 @@ return s } +// Deprecated: This type is for internal use and not meant for public use. Data set for this type will be ignored. type PublishMetricsInput struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` // Internal only. The name of the environment. // @@ -3050,7 +3131,7 @@ // in Amazon CloudWatch (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). // // MetricData is a required field - MetricData []*MetricDatum `type:"list" required:"true"` + MetricData []*MetricDatum `deprecated:"true" type:"list" required:"true"` } // String returns the string representation. @@ -3112,8 +3193,9 @@ return s } +// Deprecated: This type is for internal use and not meant for public use. Data set for this type will be ignored. type PublishMetricsOutput struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` } // String returns the string representation. @@ -3201,8 +3283,10 @@ // Internal only. Represents a set of statistics that describe a specific metric. // To learn more about the metrics published to Amazon CloudWatch, see Amazon // MWAA performance metrics in Amazon CloudWatch (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). +// +// Deprecated: This type is for internal use and not meant for public use. Data set for this type will be ignored. type StatisticSet struct { - _ struct{} `type:"structure"` + _ struct{} `deprecated:"true" type:"structure"` // Internal only. The maximum value of the sample set. Maximum *float64 `type:"double"` @@ -3456,7 +3540,7 @@ // Airflow version. For more information about updating your resources, see // Upgrading an Amazon MWAA environment (https://docs.aws.amazon.com/mwaa/latest/userguide/upgrading-environment.html). // - // Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, and 2.5.1. + // Valid values: 1.10.12, 2.0.2, 2.2.2, 2.4.3, 2.5.1, 2.6.3, 2.7.2. AirflowVersion *string `min:"1" type:"string"` // The relative path to the DAGs folder on your Amazon S3 bucket. For example, @@ -3959,6 +4043,22 @@ } const ( + // EndpointManagementCustomer is a EndpointManagement enum value + EndpointManagementCustomer = "CUSTOMER" + + // EndpointManagementService is a EndpointManagement enum value + EndpointManagementService = "SERVICE" +) + +// EndpointManagement_Values returns all elements of the EndpointManagement enum +func EndpointManagement_Values() []string { + return []string{ + EndpointManagementCustomer, + EndpointManagementService, + } +} + +const ( // EnvironmentStatusCreating is a EnvironmentStatus enum value EnvironmentStatusCreating = "CREATING" @@ -3988,6 +4088,9 @@ // EnvironmentStatusCreatingSnapshot is a EnvironmentStatus enum value EnvironmentStatusCreatingSnapshot = "CREATING_SNAPSHOT" + + // EnvironmentStatusPending is a EnvironmentStatus enum value + EnvironmentStatusPending = "PENDING" ) // EnvironmentStatus_Values returns all elements of the EnvironmentStatus enum @@ -4003,6 +4106,7 @@ EnvironmentStatusUpdateFailed, EnvironmentStatusRollingBack, EnvironmentStatusCreatingSnapshot, + EnvironmentStatusPending, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/mwaa/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/mwaa/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/mwaa/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/mwaa/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -23,14 +23,10 @@ // the Airflow environment. CreateCliToken (https://docs.aws.amazon.com/mwaa/latest/API/API_CreateCliToken.html) // CreateWebLoginToken (https://docs.aws.amazon.com/mwaa/latest/API/API_CreateWebLoginToken.html) // -// - ops.airflow.{region}.amazonaws.com - This endpoint is used to push environment -// metrics that track environment health. PublishMetrics (https://docs.aws.amazon.com/mwaa/latest/API/API_PublishMetrics.html) -// // # Regions // -// For a list of regions that Amazon MWAA supports, see Region availability -// (https://docs.aws.amazon.com/mwaa/latest/userguide/what-is-mwaa.html#regions-mwaa) -// in the Amazon MWAA User Guide. +// For a list of supported regions, see Amazon MWAA endpoints and quotas (https://docs.aws.amazon.com/general/latest/gr/mwaa.html) +// in the Amazon Web Services General Reference. // // See https://docs.aws.amazon.com/goto/WebAPI/mwaa-2020-07-01 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/neptune/api.go golang-github-aws-aws-sdk-go-1.48.14/service/neptune/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/neptune/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/neptune/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -7286,8 +7286,7 @@ DBClusterIdentifier *string `type:"string" required:"true"` // The name of the feature for the Neptune DB cluster that the IAM role is to - // be associated with. For the list of supported feature names, see DBEngineVersion - // (neptune/latest/userguide/api-other-apis.html#DBEngineVersion). + // be associated with. For the list of supported feature names, see DBEngineVersion. FeatureName *string `type:"string"` // The Amazon Resource Name (ARN) of the IAM role to associate with the Neptune @@ -8740,8 +8739,8 @@ // backups are enabled using the BackupRetentionPeriod parameter. // // The default is a 30-minute window selected at random from an 8-hour block - // of time for each Amazon Region. To see the time blocks available, see Adjusting - // the Preferred Maintenance Window (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) + // of time for each Amazon Region. To see the time blocks available, see Neptune + // Maintenance Window (https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-maintaining.html#manage-console-maintaining-window) // in the Amazon Neptune User Guide. // // Constraints: @@ -8762,8 +8761,7 @@ // // The default is a 30-minute window selected at random from an 8-hour block // of time for each Amazon Region, occurring on a random day of the week. To - // see the time blocks available, see Adjusting the Preferred Maintenance Window - // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) + // see the time blocks available, see Neptune Maintenance Window (https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-maintaining.html#manage-console-maintaining-window) // in the Amazon Neptune User Guide. // // Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. @@ -9012,7 +9010,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -9546,7 +9544,11 @@ // The password for the given ARN from the key store in order to access the // device. - TdeCredentialPassword *string `type:"string"` + // + // TdeCredentialPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDBInstanceInput's + // String and GoString methods. + TdeCredentialPassword *string `type:"string" sensitive:"true"` // The time zone of the DB instance. Timezone *string `type:"string"` @@ -10448,7 +10450,7 @@ // Contains the details of an Amazon Neptune DB cluster. // -// This data type is used as a response element in the DescribeDBClusters action. +// This data type is used as a response element in the DescribeDBClusters. type DBCluster struct { _ struct{} `type:"structure"` @@ -11202,8 +11204,7 @@ _ struct{} `type:"structure"` // The name of the feature associated with the Amazon Identity and Access Management - // (IAM) role. For the list of supported feature names, see DescribeDBEngineVersions - // (https://docs.aws.amazon.com/neptune/latest/userguide/api-other-apis.html#DescribeDBEngineVersions). + // (IAM) role. For the list of supported feature names, see DescribeDBEngineVersions. FeatureName *string `type:"string"` // The Amazon Resource Name (ARN) of the IAM role that is associated with the @@ -12837,7 +12838,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -16756,7 +16757,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -17513,7 +17514,7 @@ // // For a list of valid engine versions, see Engine Releases for Amazon Neptune // (https://docs.aws.amazon.com/neptune/latest/userguide/engine-releases.html), - // or call DescribeDBEngineVersions (https://docs.aws.amazon.com/neptune/latest/userguide/api-other-apis.html#DescribeDBEngineVersions). + // or call DescribeDBEngineVersions. EngineVersion *string `type:"string"` // Not supported by Neptune. @@ -17733,7 +17734,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -18211,7 +18212,11 @@ // The password for the given ARN from the key store in order to access the // device. - TdeCredentialPassword *string `type:"string"` + // + // TdeCredentialPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ModifyDBInstanceInput's + // String and GoString methods. + TdeCredentialPassword *string `type:"string" sensitive:"true"` // A list of EC2 VPC security groups to authorize on this DB instance. This // change is asynchronously applied as soon as possible. @@ -19675,7 +19680,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -19960,8 +19965,7 @@ DBClusterIdentifier *string `type:"string" required:"true"` // The name of the feature for the DB cluster that the IAM role is to be disassociated - // from. For the list of supported feature names, see DescribeDBEngineVersions - // (https://docs.aws.amazon.com/neptune/latest/userguide/api-other-apis.html#DescribeDBEngineVersions). + // from. For the list of supported feature names, see DescribeDBEngineVersions. FeatureName *string `type:"string"` // The Amazon Resource Name (ARN) of the IAM role to disassociate from the DB @@ -20757,7 +20761,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -21061,7 +21065,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -21237,7 +21241,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } @@ -21317,7 +21321,7 @@ // Contains the details of an Amazon Neptune DB cluster. // - // This data type is used as a response element in the DescribeDBClusters action. + // This data type is used as a response element in the DescribeDBClusters. DBCluster *DBCluster `type:"structure"` } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/neptunedata/api.go golang-github-aws-aws-sdk-go-1.48.14/service/neptunedata/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/neptunedata/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/neptunedata/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -58,6 +58,11 @@ // Cancels a Gremlin query. See Gremlin query cancellation (https://docs.aws.amazon.com/neptune/latest/userguide/gremlin-api-status-cancel.html) // for more information. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CancelQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#cancelquery) +// IAM action in that cluster. +// // 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. @@ -175,11 +180,15 @@ // CancelLoaderJob API operation for Amazon NeptuneData. // -// Cancels a specified load job. This is an HTTP DELETE request. -// -// See Neptune Loader Get-Status API (https://docs.aws.amazon.com/neptune/latest/userguide/load-api-reference-status.htm) +// Cancels a specified load job. This is an HTTP DELETE request. See Neptune +// Loader Get-Status API (https://docs.aws.amazon.com/neptune/latest/userguide/load-api-reference-status.htm) // for more information. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CancelLoaderJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#cancelloaderjob) +// IAM action in that cluster.. +// // 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. @@ -296,6 +305,11 @@ // Cancels a Neptune ML data processing job. See The dataprocessing command // (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-dataprocessing.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CancelMLDataProcessingJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#cancelmldataprocessingjob) +// IAM action in that cluster. +// // 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. @@ -406,6 +420,11 @@ // Cancels a Neptune ML model training job. See Model training using the modeltraining // command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-modeltraining.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CancelMLModelTrainingJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#cancelmlmodeltrainingjob) +// IAM action in that cluster. +// // 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. @@ -516,6 +535,11 @@ // Cancels a specified model transform job. See Use a trained model to generate // new model artifacts (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-model-transform.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CancelMLModelTransformJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#cancelmlmodeltransformjob) +// IAM action in that cluster. +// // 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. @@ -627,6 +651,11 @@ // (https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-opencypher-status.html) // for more information. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CancelQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#cancelquery) +// IAM action in that cluster. +// // 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. @@ -751,6 +780,11 @@ // model that the model-training process constructed. See Managing inference // endpoints using the endpoints command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-endpoints.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:CreateMLEndpoint (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#createmlendpoint) +// IAM action in that cluster. +// // 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. @@ -861,6 +895,11 @@ // Cancels the creation of a Neptune ML inference endpoint. See Managing inference // endpoints using the endpoints command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-endpoints.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:DeleteMLEndpoint (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#deletemlendpoint) +// IAM action in that cluster. +// // 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. @@ -970,6 +1009,11 @@ // // Deletes statistics for Gremlin and openCypher (property graph) data. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:DeleteStatistics (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#deletestatistics) +// IAM action in that cluster. +// // 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. @@ -1085,6 +1129,11 @@ // // # Deletes SPARQL statistics // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:DeleteStatistics (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#deletestatistics) +// IAM action in that cluster. +// // 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. @@ -1206,6 +1255,11 @@ // you then include when calling ExecuteFastReset again with action set to performDatabaseReset. // See Empty an Amazon Neptune DB cluster using the fast reset API (https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-fast-reset.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ResetDatabase (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#resetdatabase) +// IAM action in that cluster. +// // 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. @@ -1333,6 +1387,22 @@ // Gremlin queries (https://docs.aws.amazon.com/neptune/latest/userguide/gremlin-traversal-tuning.html). // You can also use query hints to improve query execution plans. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows one of the following IAM actions in that cluster, depending on +// the query: +// +// - neptune-db:ReadDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#readdataviaquery) +// +// - neptune-db:WriteDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#writedataviaquery) +// +// - neptune-db:DeleteDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#deletedataviaquery) +// +// Note that the neptune-db:QueryLanguage:Gremlin (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of Gremlin queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -1476,6 +1546,16 @@ // Gremlin profile API in Neptune (https://docs.aws.amazon.com/neptune/latest/userguide/gremlin-profile-api.html) // for details. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ReadDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#readdataviaquery) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:Gremlin (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of Gremlin queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -1620,6 +1700,22 @@ // in the Apache TinkerPop3 documentation. More details can also be found in // Accessing a Neptune graph with Gremlin (https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-gremlin.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that enables one of the following IAM actions in that cluster, depending +// on the query: +// +// - neptune-db:ReadDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#readdataviaquery) +// +// - neptune-db:WriteDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#writedataviaquery) +// +// - neptune-db:DeleteDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#deletedataviaquery) +// +// Note that the neptune-db:QueryLanguage:Gremlin (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of Gremlin queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -1762,6 +1858,16 @@ // (https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-opencypher-explain.html) // for more information. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ReadDataViaQuery (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#readdataviaquery) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:OpenCypher (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of openCypher queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -1903,7 +2009,12 @@ // GetEngineStatus API operation for Amazon NeptuneData. // -// Check the status of the graph database on the host. +// Retrieves the status of the graph database on the host. +// +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetEngineStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getenginestatus) +// IAM action in that cluster. // // 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 @@ -2005,6 +2116,16 @@ // // Gets the status of a specified Gremlin query. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetQueryStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getquerystatus) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:Gremlin (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of Gremlin queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -2131,6 +2252,11 @@ // Retrieves information about a specified data processing job. See The dataprocessing // command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-dataprocessing.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:neptune-db:GetMLDataProcessingJobStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getmldataprocessingjobstatus) +// IAM action in that cluster. +// // 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. @@ -2241,6 +2367,11 @@ // Retrieves details about an inference endpoint. See Managing inference endpoints // using the endpoints command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-endpoints.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetMLEndpointStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getmlendpointstatus) +// IAM action in that cluster. +// // 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. @@ -2351,6 +2482,11 @@ // Retrieves information about a Neptune ML model training job. See Model training // using the modeltraining command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-modeltraining.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetMLModelTrainingJobStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getmlmodeltrainingjobstatus) +// IAM action in that cluster. +// // 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. @@ -2461,6 +2597,11 @@ // Gets information about a specified model transform job. See Use a trained // model to generate new model artifacts (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-model-transform.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetMLModelTransformJobStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getmlmodeltransformjobstatus) +// IAM action in that cluster. +// // 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. @@ -2570,6 +2711,16 @@ // // Retrieves the status of a specified openCypher query. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetQueryStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getquerystatus) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:OpenCypher (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of openCypher queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -2698,6 +2849,11 @@ // // Gets property graph statistics (Gremlin and openCypher). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetStatisticsStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getstatisticsstatus) +// IAM action in that cluster. +// // 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. @@ -2813,6 +2969,11 @@ // // Gets a graph summary for a property graph. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetGraphSummary (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getgraphsummary) +// IAM action in that cluster. +// // 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. @@ -2928,6 +3089,11 @@ // // Gets a graph summary for an RDF graph. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetGraphSummary (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getgraphsummary) +// IAM action in that cluster. +// // 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. @@ -3169,6 +3335,16 @@ // // See Capturing graph changes in real time using Neptune streams (https://docs.aws.amazon.com/neptune/latest/userguide/streams.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetStreamRecords (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getstreamrecords) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:Sparql (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of SPARQL queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -3284,6 +3460,16 @@ // Lists active Gremlin queries. See Gremlin query status API (https://docs.aws.amazon.com/neptune/latest/userguide/gremlin-api-status.html) // for details about the output. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetQueryStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getquerystatus) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:Gremlin (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of Gremlin queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -3409,6 +3595,11 @@ // // Retrieves a list of the loadIds for all active loader jobs. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ListLoaderJobs (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#listloaderjobs) +// IAM action in that cluster.. +// // 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. @@ -3522,6 +3713,11 @@ // Returns a list of Neptune ML data processing jobs. See Listing active data-processing // jobs using the Neptune ML dataprocessing command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-dataprocessing.html#machine-learning-api-dataprocessing-list-jobs). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ListMLDataProcessingJobs (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#listmldataprocessingjobs) +// IAM action in that cluster. +// // 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. @@ -3632,6 +3828,11 @@ // Lists existing inference endpoints. See Managing inference endpoints using // the endpoints command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-endpoints.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ListMLEndpoints (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#listmlendpoints) +// IAM action in that cluster. +// // 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. @@ -3742,6 +3943,11 @@ // Lists Neptune ML model-training jobs. See Model training using the modeltraining // command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-modeltraining.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:neptune-db:ListMLModelTrainingJobs (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#neptune-db:listmlmodeltrainingjobs) +// IAM action in that cluster. +// // 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. @@ -3852,6 +4058,11 @@ // Returns a list of model transform job IDs. See Use a trained model to generate // new model artifacts (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-model-transform.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ListMLModelTransformJobs (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#listmlmodeltransformjobs) +// IAM action in that cluster. +// // 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. @@ -3962,6 +4173,16 @@ // Lists active openCypher queries. See Neptune openCypher status endpoint (https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-opencypher-status.html) // for more information. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:GetQueryStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getquerystatus) +// IAM action in that cluster. +// +// Note that the neptune-db:QueryLanguage:OpenCypher (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.html#iam-neptune-condition-keys) +// IAM condition key can be used in the policy document to restrict the use +// of openCypher queries (see Condition keys available in Neptune IAM data-access +// policy statements (https://docs.aws.amazon.com/neptune/latest/userguide/iam-data-condition-keys.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. @@ -4090,6 +4311,11 @@ // // Manages the generation and use of property graph statistics. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ManageStatistics (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#managestatistics) +// IAM action in that cluster. +// // 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. @@ -4205,6 +4431,11 @@ // // Manages the generation and use of RDF graph statistics. // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:ManageStatistics (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#managestatistics) +// IAM action in that cluster. +// // 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. @@ -4322,6 +4553,11 @@ // a Neptune DB instance. See Using the Amazon Neptune Bulk Loader to Ingest // Data (https://docs.aws.amazon.com/neptune/latest/userguide/bulk-load.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:StartLoaderJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#startloaderjob) +// IAM action in that cluster. +// // 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. @@ -4441,6 +4677,11 @@ // Creates a new Neptune ML data processing job for processing the graph data // exported from Neptune for training. See The dataprocessing command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-dataprocessing.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:StartMLModelDataProcessingJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#startmlmodeldataprocessingjob) +// IAM action in that cluster. +// // 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. @@ -4551,6 +4792,11 @@ // Creates a new Neptune ML model training job. See Model training using the // modeltraining command (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-modeltraining.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:StartMLModelTrainingJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#startmlmodeltrainingjob) +// IAM action in that cluster. +// // 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. @@ -4661,6 +4907,11 @@ // Creates a new model transform job. See Use a trained model to generate new // model artifacts (https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-model-transform.html). // +// When invoking this operation in a Neptune cluster that has IAM authentication +// enabled, the IAM user or role making the request must have a policy attached +// that allows the neptune-db:StartMLModelTransformJob (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#startmlmodeltransformjob) +// IAM action in that cluster. +// // 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. @@ -8039,7 +8290,7 @@ Payload *Statistics `locationName:"payload" type:"structure" required:"true"` // The HTTP return code of the request. If the request succeeded, the code is - // 200. See Common error codes for DFE statistics request (docs.aws.amazon.comneptune/latest/userguide/neptune-dfe-statistics.html#neptune-dfe-statistics-errors) + // 200. See Common error codes for DFE statistics request (https://docs.aws.amazon.com/neptune/latest/userguide/neptune-dfe-statistics.html#neptune-dfe-statistics-errors) // for a list of common errors. // // Status is a required field @@ -8251,9 +8502,14 @@ Payload *Statistics `locationName:"payload" type:"structure" required:"true"` // The HTTP return code of the request. If the request succeeded, the code is - // 200. See Common error codes for DFE statistics request (docs.aws.amazon.comneptune/latest/userguide/neptune-dfe-statistics.html#neptune-dfe-statistics-errors) + // 200. See Common error codes for DFE statistics request (https://docs.aws.amazon.com/neptune/latest/userguide/neptune-dfe-statistics.html#neptune-dfe-statistics-errors) // for a list of common errors. // + // When invoking this operation in a Neptune cluster that has IAM authentication + // enabled, the IAM user or role making the request must have a policy attached + // that allows the neptune-db:GetStatisticsStatus (https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getstatisticsstatus) + // IAM action in that cluster. + // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` } @@ -11145,7 +11401,7 @@ _ struct{} `type:"structure"` // The graph summary of an RDF graph. See Graph summary response for an RDF - // graph (https://docs.aws.amazon.com/neptune-graph-summary.html#neptune-graph-summary-rdf-response). + // graph (https://docs.aws.amazon.com/neptune/latest/userguide/neptune-graph-summary.html#neptune-graph-summary-rdf-response). GraphSummary *RDFGraphSummary `locationName:"graphSummary" type:"structure"` // The timestamp, in ISO 8601 format, of the time at which Neptune last computed @@ -11720,7 +11976,8 @@ // // You don't have to wait for one load job to complete before issuing the next // one, because Neptune can queue up as many as 64 jobs at a time, provided - // that their queueRequest parameters are all set to "TRUE". + // that their queueRequest parameters are all set to "TRUE". The queue order + // of the jobs will be first-in-first-out (FIFO). // // If the queueRequest parameter is omitted or set to "FALSE", the load request // will fail if another load job is already running. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/networkfirewall/api.go golang-github-aws-aws-sdk-go-1.48.14/service/networkfirewall/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/networkfirewall/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/networkfirewall/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -84,7 +84,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -194,7 +194,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -323,7 +323,7 @@ // Unable to perform the operation because doing so would violate a limit setting. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ThrottlingException @@ -435,7 +435,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - InsufficientCapacityException @@ -540,7 +540,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - InsufficientCapacityException @@ -613,11 +613,12 @@ // CreateTLSInspectionConfiguration API operation for AWS Network Firewall. // // Creates an Network Firewall TLS inspection configuration. A TLS inspection -// configuration contains the Certificate Manager certificate references that -// Network Firewall uses to decrypt and re-encrypt inbound traffic. +// configuration contains Certificate Manager certificate associations between +// and the scope configurations that Network Firewall uses to decrypt and re-encrypt +// traffic traveling through your firewall. // -// After you create a TLS inspection configuration, you associate it with a -// new firewall policy. +// After you create a TLS inspection configuration, you can associate it with +// a new firewall policy. // // To update the settings for a TLS inspection configuration, use UpdateTLSInspectionConfiguration. // @@ -628,7 +629,7 @@ // To retrieve information about TLS inspection configurations, use ListTLSInspectionConfigurations // and DescribeTLSInspectionConfiguration. // -// For more information about TLS inspection configurations, see Decrypting +// For more information about TLS inspection configurations, see Inspecting // SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) // in the Network Firewall Developer Guide. // @@ -656,7 +657,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - LimitExceededException @@ -765,7 +766,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -875,7 +876,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - UnsupportedOperationException @@ -974,7 +975,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -1080,7 +1081,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - UnsupportedOperationException @@ -1178,7 +1179,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -1279,7 +1280,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -1382,7 +1383,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeFirewallPolicy @@ -1473,7 +1474,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -1570,7 +1571,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -1673,7 +1674,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroup @@ -1773,7 +1774,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroupMetadata @@ -1864,7 +1865,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -1963,7 +1964,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -2078,7 +2079,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ListFirewallPolicies @@ -2231,7 +2232,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ThrottlingException @@ -2387,7 +2388,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ListRuleGroups @@ -2537,7 +2538,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ThrottlingException @@ -2687,7 +2688,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -2867,7 +2868,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -2967,7 +2968,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3072,7 +3073,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3180,7 +3181,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3284,7 +3285,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3384,7 +3385,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3493,7 +3494,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - InvalidTokenException @@ -3590,7 +3591,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3714,7 +3715,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -3829,7 +3830,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - InvalidTokenException @@ -3921,7 +3922,7 @@ // a resource that isn't valid in the context of the request. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - ResourceNotFoundException @@ -4002,8 +4003,8 @@ // UpdateTLSInspectionConfiguration API operation for AWS Network Firewall. // // Updates the TLS inspection configuration settings for the specified TLS inspection -// configuration. You use a TLS inspection configuration by reference in one -// or more firewall policies. When you modify a TLS inspection configuration, +// configuration. You use a TLS inspection configuration by referencing it in +// one or more firewall policies. When you modify a TLS inspection configuration, // you modify all firewall policies that use the TLS inspection configuration. // // To update a TLS inspection configuration, first call DescribeTLSInspectionConfiguration @@ -4037,7 +4038,7 @@ // Unable to process the request due to throttling limitations. // // - InternalServerError -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. // // - InvalidTokenException @@ -4191,6 +4192,83 @@ return s } +// The analysis result for Network Firewall's stateless rule group analyzer. +// Every time you call CreateRuleGroup, UpdateRuleGroup, or DescribeRuleGroup +// on a stateless rule group, Network Firewall analyzes the stateless rule groups +// in your account and identifies the rules that might adversely effect your +// firewall's functionality. For example, if Network Firewall detects a rule +// that's routing traffic asymmetrically, which impacts the service's ability +// to properly process traffic, the service includes the rule in a list of analysis +// results. +type AnalysisResult struct { + _ struct{} `type:"structure"` + + // Provides analysis details for the identified rule. + AnalysisDetail *string `type:"string"` + + // The priority number of the stateless rules identified in the analysis. + IdentifiedRuleIds []*string `type:"list"` + + // The types of rule configurations that Network Firewall analyzes your rule + // groups for. Network Firewall analyzes stateless rule groups for the following + // types of rule configurations: + // + // * STATELESS_RULE_FORWARDING_ASYMMETRICALLY Cause: One or more stateless + // rules with the action pass or forward are forwarding traffic asymmetrically. + // Specifically, the rule's set of source IP addresses or their associated + // port numbers, don't match the set of destination IP addresses or their + // associated port numbers. To mitigate: Make sure that there's an existing + // return path. For example, if the rule allows traffic from source 10.1.0.0/24 + // to destination 20.1.0.0/24, you should allow return traffic from source + // 20.1.0.0/24 to destination 10.1.0.0/24. + // + // * STATELESS_RULE_CONTAINS_TCP_FLAGS Cause: At least one stateless rule + // with the action pass orforward contains TCP flags that are inconsistent + // in the forward and return directions. To mitigate: Prevent asymmetric + // routing issues caused by TCP flags by following these actions: Remove + // unnecessary TCP flag inspections from the rules. If you need to inspect + // TCP flags, check that the rules correctly account for changes in TCP flags + // throughout the TCP connection cycle, for example SYN and ACK flags used + // in a 3-way TCP handshake. + IdentifiedType *string `type:"string" enum:"IdentifiedType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalysisResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalysisResult) GoString() string { + return s.String() +} + +// SetAnalysisDetail sets the AnalysisDetail field's value. +func (s *AnalysisResult) SetAnalysisDetail(v string) *AnalysisResult { + s.AnalysisDetail = &v + return s +} + +// SetIdentifiedRuleIds sets the IdentifiedRuleIds field's value. +func (s *AnalysisResult) SetIdentifiedRuleIds(v []*string) *AnalysisResult { + s.IdentifiedRuleIds = v + return s +} + +// SetIdentifiedType sets the IdentifiedType field's value. +func (s *AnalysisResult) SetIdentifiedType(v string) *AnalysisResult { + s.IdentifiedType = &v + return s +} + type AssociateFirewallPolicyInput struct { _ struct{} `type:"structure"` @@ -4710,6 +4788,74 @@ return s } +// Defines the actions to take on the SSL/TLS connection if the certificate +// presented by the server in the connection has a revoked or unknown status. +type CheckCertificateRevocationStatusActions struct { + _ struct{} `type:"structure"` + + // Configures how Network Firewall processes traffic when it determines that + // the certificate presented by the server in the SSL/TLS connection has a revoked + // status. + // + // * PASS - Allow the connection to continue, and pass subsequent packets + // to the stateful engine for inspection. + // + // * DROP - Network Firewall closes the connection and drops subsequent packets + // for that connection. + // + // * REJECT - Network Firewall sends a TCP reject packet back to your client. + // The service closes the connection and drops subsequent packets for that + // connection. REJECT is available only for TCP traffic. + RevokedStatusAction *string `type:"string" enum:"RevocationCheckAction"` + + // Configures how Network Firewall processes traffic when it determines that + // the certificate presented by the server in the SSL/TLS connection has an + // unknown status, or a status that cannot be determined for any other reason, + // including when the service is unable to connect to the OCSP and CRL endpoints + // for the certificate. + // + // * PASS - Allow the connection to continue, and pass subsequent packets + // to the stateful engine for inspection. + // + // * DROP - Network Firewall closes the connection and drops subsequent packets + // for that connection. + // + // * REJECT - Network Firewall sends a TCP reject packet back to your client. + // The service closes the connection and drops subsequent packets for that + // connection. REJECT is available only for TCP traffic. + UnknownStatusAction *string `type:"string" enum:"RevocationCheckAction"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckCertificateRevocationStatusActions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckCertificateRevocationStatusActions) GoString() string { + return s.String() +} + +// SetRevokedStatusAction sets the RevokedStatusAction field's value. +func (s *CheckCertificateRevocationStatusActions) SetRevokedStatusAction(v string) *CheckCertificateRevocationStatusActions { + s.RevokedStatusAction = &v + return s +} + +// SetUnknownStatusAction sets the UnknownStatusAction field's value. +func (s *CheckCertificateRevocationStatusActions) SetUnknownStatusAction(v string) *CheckCertificateRevocationStatusActions { + s.UnknownStatusAction = &v + return s +} + type CreateFirewallInput struct { _ struct{} `type:"structure"` @@ -5140,6 +5286,13 @@ type CreateRuleGroupInput struct { _ struct{} `type:"structure"` + // Indicates whether you want Network Firewall to analyze the stateless rules + // in the rule group for rule behavior such as asymmetric routing. If set to + // TRUE, Network Firewall runs the analysis and then creates the rule group + // for you. To run the stateless rule group analyzer without creating the rule + // group, set DryRun to TRUE. + AnalyzeRuleGroup *bool `type:"boolean"` + // The maximum operating resources that this rule group can use. Rule group // capacity is fixed at creation. When you update a rule group, you are limited // to this capacity. When you reference a rule group from a firewall policy, @@ -5312,6 +5465,12 @@ return nil } +// SetAnalyzeRuleGroup sets the AnalyzeRuleGroup field's value. +func (s *CreateRuleGroupInput) SetAnalyzeRuleGroup(v bool) *CreateRuleGroupInput { + s.AnalyzeRuleGroup = &v + return s +} + // SetCapacity sets the Capacity field's value. func (s *CreateRuleGroupInput) SetCapacity(v int64) *CreateRuleGroupInput { s.Capacity = &v @@ -5453,11 +5612,11 @@ // // To use a TLS inspection configuration, you add it to a new Network Firewall // firewall policy, then you apply the firewall policy to a firewall. Network - // Firewall acts as a proxy service to decrypt and inspect inbound traffic. - // You can reference a TLS inspection configuration from more than one firewall - // policy, and you can use a firewall policy in more than one firewall. For - // more information about using TLS inspection configurations, see Decrypting - // SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) + // Firewall acts as a proxy service to decrypt and inspect the traffic traveling + // through your firewalls. You can reference a TLS inspection configuration + // from more than one firewall policy, and you can use a firewall policy in + // more than one firewall. For more information about using TLS inspection configurations, + // see Inspecting SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) // in the Network Firewall Developer Guide. // // TLSInspectionConfiguration is a required field @@ -6627,6 +6786,11 @@ type DescribeRuleGroupInput struct { _ struct{} `type:"structure"` + // Indicates whether you want Network Firewall to analyze the stateless rules + // in the rule group for rule behavior such as asymmetric routing. If set to + // TRUE, Network Firewall runs the analysis. + AnalyzeRuleGroup *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the rule group. // // You must specify the ARN or the name, and you can specify both. @@ -6680,6 +6844,12 @@ return nil } +// SetAnalyzeRuleGroup sets the AnalyzeRuleGroup field's value. +func (s *DescribeRuleGroupInput) SetAnalyzeRuleGroup(v bool) *DescribeRuleGroupInput { + s.AnalyzeRuleGroup = &v + return s +} + // SetRuleGroupArn sets the RuleGroupArn field's value. func (s *DescribeRuleGroupInput) SetRuleGroupArn(v string) *DescribeRuleGroupInput { s.RuleGroupArn = &v @@ -7028,11 +7198,11 @@ // // To use a TLS inspection configuration, you add it to a new Network Firewall // firewall policy, then you apply the firewall policy to a firewall. Network - // Firewall acts as a proxy service to decrypt and inspect inbound traffic. - // You can reference a TLS inspection configuration from more than one firewall - // policy, and you can use a firewall policy in more than one firewall. For - // more information about using TLS inspection configurations, see Decrypting - // SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) + // Firewall acts as a proxy service to decrypt and inspect the traffic traveling + // through your firewalls. You can reference a TLS inspection configuration + // from more than one firewall policy, and you can use a firewall policy in + // more than one firewall. For more information about using TLS inspection configurations, + // see Inspecting SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) // in the Network Firewall Developer Guide. TLSInspectionConfiguration *TLSInspectionConfiguration `type:"structure"` @@ -8474,7 +8644,7 @@ return s.RespMetadata.RequestID } -// Your request is valid, but Network Firewall couldn’t perform the operation +// Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. type InternalServerError struct { _ struct{} `type:"structure"` @@ -10525,7 +10695,9 @@ // Additional options governing how Network Firewall handles stateful rules. // The policies where you use your stateful rule group must have stateful rule - // options settings that are compatible with these settings. + // options settings that are compatible with these settings. Some limitations + // apply; for more information, see Strict evaluation order (https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-limitations-caveats.html) + // in the Network Firewall Developer Guide. StatefulRuleOptions *StatefulRuleOptions `type:"structure"` } @@ -10649,6 +10821,15 @@ type RuleGroupResponse struct { _ struct{} `type:"structure"` + // The list of analysis results for AnalyzeRuleGroup. If you set AnalyzeRuleGroup + // to TRUE in CreateRuleGroup, UpdateRuleGroup, or DescribeRuleGroup, Network + // Firewall analyzes the rule group and identifies the rules that might adversely + // effect your firewall's functionality. For example, if Network Firewall detects + // a rule that's routing traffic asymmetrically, which impacts the service's + // ability to properly process traffic, the service includes the rule in the + // list of analysis results. + AnalysisResults []*AnalysisResult `type:"list"` + // The maximum operating resources that this rule group can use. Rule group // capacity is fixed at creation. When you update a rule group, you are limited // to this capacity. When you reference a rule group from a firewall policy, @@ -10736,6 +10917,12 @@ return s.String() } +// SetAnalysisResults sets the AnalysisResults field's value. +func (s *RuleGroupResponse) SetAnalysisResults(v []*AnalysisResult) *RuleGroupResponse { + s.AnalysisResults = v + return s +} + // SetCapacity sets the Capacity field's value. func (s *RuleGroupResponse) SetCapacity(v int64) *RuleGroupResponse { s.Capacity = &v @@ -10957,13 +11144,16 @@ // Stateful inspection criteria for a domain list rule group. RulesSourceList *RulesSourceList `type:"structure"` - // Stateful inspection criteria, provided in Suricata compatible intrusion prevention - // system (IPS) rules. Suricata is an open-source network IPS that includes - // a standard rule-based language for network traffic inspection. + // Stateful inspection criteria, provided in Suricata compatible rules. Suricata + // is an open-source threat detection framework that includes a standard rule-based + // language for network traffic inspection. // // These rules contain the inspection criteria and the action to take for traffic // that matches the criteria, so this type of rule group doesn't have a separate // action setting. + // + // You can't use the priority keyword if the RuleOrder option in StatefulRuleOptions + // is set to STRICT_ORDER. RulesString *string `type:"string"` // An array of individual stateful rules inspection criteria to be used together @@ -11143,21 +11333,21 @@ return s } -// Any Certificate Manager Secure Sockets Layer/Transport Layer Security (SSL/TLS) -// server certificate that's associated with a ServerCertificateConfiguration -// used in a TLSInspectionConfiguration. You must request or import a SSL/TLS -// certificate into ACM for each domain Network Firewall needs to decrypt and -// inspect. Network Firewall uses the SSL/TLS certificates to decrypt specified -// inbound SSL/TLS traffic going to your firewall. For information about working -// with certificates in Certificate Manager, see Request a public certificate -// (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html) +// Any Certificate Manager (ACM) Secure Sockets Layer/Transport Layer Security +// (SSL/TLS) server certificate that's associated with a ServerCertificateConfiguration. +// Used in a TLSInspectionConfiguration for inspection of inbound traffic to +// your firewall. You must request or import a SSL/TLS certificate into ACM +// for each domain Network Firewall needs to decrypt and inspect. Network Firewall +// uses the SSL/TLS certificates to decrypt specified inbound SSL/TLS traffic +// going to your firewall. For information about working with certificates in +// Certificate Manager, see Request a public certificate (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html) // or Importing certificates (https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) // in the Certificate Manager User Guide. type ServerCertificate struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Certificate Manager SSL/TLS server - // certificate. + // certificate that's used for inbound SSL/TLS inspection. ResourceArn *string `min:"1" type:"string"` } @@ -11198,12 +11388,12 @@ return s } -// Configures the associated Certificate Manager Secure Sockets Layer/Transport -// Layer Security (SSL/TLS) server certificates and scope settings Network Firewall -// uses to decrypt traffic in a TLSInspectionConfiguration. For information -// about working with SSL/TLS certificates for TLS inspection, see Requirements -// for using SSL/TLS server certficiates with TLS inspection configurations -// (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection-certificate-requirements.html) +// Configures the Certificate Manager certificates and scope that Network Firewall +// uses to decrypt and re-encrypt traffic using a TLSInspectionConfiguration. +// You can configure ServerCertificates for inbound SSL/TLS inspection, a CertificateAuthorityArn +// for outbound SSL/TLS inspection, or both. For information about working with +// certificates for TLS inspection, see Using SSL/TLS server certficiates with +// TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection-certificate-requirements.html) // in the Network Firewall Developer Guide. // // If a server certificate that's associated with your TLSInspectionConfiguration @@ -11211,11 +11401,38 @@ type ServerCertificateConfiguration struct { _ struct{} `type:"structure"` - // A list of a server certificate configuration's scopes. + // The Amazon Resource Name (ARN) of the imported certificate authority (CA) + // certificate within Certificate Manager (ACM) to use for outbound SSL/TLS + // inspection. + // + // The following limitations apply: + // + // * You can use CA certificates that you imported into ACM, but you can't + // generate CA certificates with ACM. + // + // * You can't use certificates issued by Private Certificate Authority. + // + // For more information about configuring certificates for outbound inspection, + // see Using SSL/TLS certificates with certificates with TLS inspection configurations + // (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection-certificate-requirements.html) + // in the Network Firewall Developer Guide. + // + // For information about working with certificates in ACM, see Importing certificates + // (https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) + // in the Certificate Manager User Guide. + CertificateAuthorityArn *string `min:"1" type:"string"` + + // When enabled, Network Firewall checks if the server certificate presented + // by the server in the SSL/TLS connection has a revoked or unkown status. If + // the certificate has an unknown or revoked status, you must specify the actions + // that Network Firewall takes on outbound traffic. To check the certificate + // revocation status, you must also specify a CertificateAuthorityArn in ServerCertificateConfiguration. + CheckCertificateRevocationStatus *CheckCertificateRevocationStatusActions `type:"structure"` + + // A list of scopes. Scopes []*ServerCertificateScope `type:"list"` - // The list of a server certificate configuration's Certificate Manager SSL/TLS - // certificates. + // The list of server certificates to use for inbound SSL/TLS inspection. ServerCertificates []*ServerCertificate `type:"list"` } @@ -11240,6 +11457,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ServerCertificateConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ServerCertificateConfiguration"} + if s.CertificateAuthorityArn != nil && len(*s.CertificateAuthorityArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArn", 1)) + } if s.Scopes != nil { for i, v := range s.Scopes { if v == nil { @@ -11267,6 +11487,18 @@ return nil } +// SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value. +func (s *ServerCertificateConfiguration) SetCertificateAuthorityArn(v string) *ServerCertificateConfiguration { + s.CertificateAuthorityArn = &v + return s +} + +// SetCheckCertificateRevocationStatus sets the CheckCertificateRevocationStatus field's value. +func (s *ServerCertificateConfiguration) SetCheckCertificateRevocationStatus(v *CheckCertificateRevocationStatusActions) *ServerCertificateConfiguration { + s.CheckCertificateRevocationStatus = v + return s +} + // SetScopes sets the Scopes field's value. func (s *ServerCertificateConfiguration) SetScopes(v []*ServerCertificateScope) *ServerCertificateConfiguration { s.Scopes = v @@ -11481,10 +11713,15 @@ _ struct{} `type:"structure"` // Indicates how to manage the order of stateful rule evaluation for the policy. - // DEFAULT_ACTION_ORDER is the default behavior. Stateful rules are provided - // to the rule engine as Suricata compatible strings, and Suricata evaluates - // them based on certain settings. For more information, see Evaluation order - // for stateful rules (https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-rule-evaluation-order.html) + // STRICT_ORDER is the default and recommended option. With STRICT_ORDER, provide + // your rules in the order that you want them to be evaluated. You can then + // choose one or more default actions for packets that don't match any rules. + // Choose STRICT_ORDER to have the stateful rules engine determine the evaluation + // order of your rules. The default action for this rule order is PASS, followed + // by DROP, REJECT, and ALERT actions. Stateful rules are provided to the rule + // engine as Suricata compatible strings, and Suricata evaluates them based + // on your settings. For more information, see Evaluation order for stateful + // rules (https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-rule-evaluation-order.html) // in the Network Firewall Developer Guide. RuleOrder *string `type:"string" enum:"RuleOrder"` @@ -11562,11 +11799,11 @@ // sends an alert log message, if alert logging is configured in the Firewall // LoggingConfiguration. // - // * ALERT - Permits the packets to go to the intended destination and sends - // an alert log message, if alert logging is configured in the Firewall LoggingConfiguration. - // You can use this action to test a rule that you intend to use to drop - // traffic. You can enable the rule with ALERT action, verify in the logs - // that the rule is filtering as you want, then change the action to DROP. + // * ALERT - Sends an alert log message, if alert logging is configured in + // the Firewall LoggingConfiguration. You can use this action to test a rule + // that you intend to use to drop traffic. You can enable the rule with ALERT + // action, verify in the logs that the rule is filtering as you want, then + // change the action to DROP. // // Action is a required field Action *string `type:"string" required:"true" enum:"StatefulAction"` @@ -12242,11 +12479,11 @@ // // To use a TLS inspection configuration, you add it to a new Network Firewall // firewall policy, then you apply the firewall policy to a firewall. Network -// Firewall acts as a proxy service to decrypt and inspect inbound traffic. -// You can reference a TLS inspection configuration from more than one firewall -// policy, and you can use a firewall policy in more than one firewall. For -// more information about using TLS inspection configurations, see Decrypting -// SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) +// Firewall acts as a proxy service to decrypt and inspect the traffic traveling +// through your firewalls. You can reference a TLS inspection configuration +// from more than one firewall policy, and you can use a firewall policy in +// more than one firewall. For more information about using TLS inspection configurations, +// see Inspecting SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) // in the Network Firewall Developer Guide. type TLSInspectionConfiguration struct { _ struct{} `type:"structure"` @@ -12351,6 +12588,9 @@ type TLSInspectionConfigurationResponse struct { _ struct{} `type:"structure"` + // Contains metadata about an Certificate Manager certificate. + CertificateAuthority *TlsCertificateData `type:"structure"` + // A list of the certificates associated with the TLS inspection configuration. Certificates []*TlsCertificateData `type:"list"` @@ -12412,6 +12652,12 @@ return s.String() } +// SetCertificateAuthority sets the CertificateAuthority field's value. +func (s *TLSInspectionConfigurationResponse) SetCertificateAuthority(v *TlsCertificateData) *TLSInspectionConfigurationResponse { + s.CertificateAuthority = v + return s +} + // SetCertificates sets the Certificates field's value. func (s *TLSInspectionConfigurationResponse) SetCertificates(v []*TlsCertificateData) *TLSInspectionConfigurationResponse { s.Certificates = v @@ -13954,6 +14200,13 @@ type UpdateRuleGroupInput struct { _ struct{} `type:"structure"` + // Indicates whether you want Network Firewall to analyze the stateless rules + // in the rule group for rule behavior such as asymmetric routing. If set to + // TRUE, Network Firewall runs the analysis and then updates the rule group + // for you. To run the stateless rule group analyzer without updating the rule + // group, set DryRun to TRUE. + AnalyzeRuleGroup *bool `type:"boolean"` + // A description of the rule group. Description *string `type:"string"` @@ -14085,6 +14338,12 @@ return nil } +// SetAnalyzeRuleGroup sets the AnalyzeRuleGroup field's value. +func (s *UpdateRuleGroupInput) SetAnalyzeRuleGroup(v bool) *UpdateRuleGroupInput { + s.AnalyzeRuleGroup = &v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateRuleGroupInput) SetDescription(v string) *UpdateRuleGroupInput { s.Description = &v @@ -14398,11 +14657,11 @@ // // To use a TLS inspection configuration, you add it to a new Network Firewall // firewall policy, then you apply the firewall policy to a firewall. Network - // Firewall acts as a proxy service to decrypt and inspect inbound traffic. - // You can reference a TLS inspection configuration from more than one firewall - // policy, and you can use a firewall policy in more than one firewall. For - // more information about using TLS inspection configurations, see Decrypting - // SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) + // Firewall acts as a proxy service to decrypt and inspect the traffic traveling + // through your firewalls. You can reference a TLS inspection configuration + // from more than one firewall policy, and you can use a firewall policy in + // more than one firewall. For more information about using TLS inspection configurations, + // see Inspecting SSL/TLS traffic with TLS inspection configurations (https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html) // in the Network Firewall Developer Guide. // // TLSInspectionConfiguration is a required field @@ -14704,6 +14963,22 @@ } const ( + // IdentifiedTypeStatelessRuleForwardingAsymmetrically is a IdentifiedType enum value + IdentifiedTypeStatelessRuleForwardingAsymmetrically = "STATELESS_RULE_FORWARDING_ASYMMETRICALLY" + + // IdentifiedTypeStatelessRuleContainsTcpFlags is a IdentifiedType enum value + IdentifiedTypeStatelessRuleContainsTcpFlags = "STATELESS_RULE_CONTAINS_TCP_FLAGS" +) + +// IdentifiedType_Values returns all elements of the IdentifiedType enum +func IdentifiedType_Values() []string { + return []string{ + IdentifiedTypeStatelessRuleForwardingAsymmetrically, + IdentifiedTypeStatelessRuleContainsTcpFlags, + } +} + +const ( // LogDestinationTypeS3 is a LogDestinationType enum value LogDestinationTypeS3 = "S3" @@ -14809,6 +15084,9 @@ // ResourceStatusDeleting is a ResourceStatus enum value ResourceStatusDeleting = "DELETING" + + // ResourceStatusError is a ResourceStatus enum value + ResourceStatusError = "ERROR" ) // ResourceStatus_Values returns all elements of the ResourceStatus enum @@ -14816,6 +15094,27 @@ return []string{ ResourceStatusActive, ResourceStatusDeleting, + ResourceStatusError, + } +} + +const ( + // RevocationCheckActionPass is a RevocationCheckAction enum value + RevocationCheckActionPass = "PASS" + + // RevocationCheckActionDrop is a RevocationCheckAction enum value + RevocationCheckActionDrop = "DROP" + + // RevocationCheckActionReject is a RevocationCheckAction enum value + RevocationCheckActionReject = "REJECT" +) + +// RevocationCheckAction_Values returns all elements of the RevocationCheckAction enum +func RevocationCheckAction_Values() []string { + return []string{ + RevocationCheckActionPass, + RevocationCheckActionDrop, + RevocationCheckActionReject, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/networkfirewall/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/networkfirewall/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/networkfirewall/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/networkfirewall/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -18,7 +18,7 @@ // ErrCodeInternalServerError for service response error code // "InternalServerError". // - // Your request is valid, but Network Firewall couldn’t perform the operation + // Your request is valid, but Network Firewall couldn't perform the operation // because of a system problem. Retry your request. ErrCodeInternalServerError = "InternalServerError" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/networkmanager/api.go golang-github-aws-aws-sdk-go-1.48.14/service/networkmanager/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/networkmanager/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/networkmanager/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -10341,6 +10341,9 @@ // The state of the Connect peer. State *string `type:"string" enum:"ConnectPeerState"` + // The subnet ARN for the Connect peer. + SubnetArn *string `type:"string"` + // The list of key-value tags associated with the Connect peer. Tags []*Tag `type:"list"` } @@ -10405,6 +10408,12 @@ return s } +// SetSubnetArn sets the SubnetArn field's value. +func (s *ConnectPeer) SetSubnetArn(v string) *ConnectPeer { + s.SubnetArn = &v + return s +} + // SetTags sets the Tags field's value. func (s *ConnectPeer) SetTags(v []*Tag) *ConnectPeer { s.Tags = v @@ -10628,6 +10637,9 @@ // The Region where the edge is located. EdgeLocation *string `min:"1" type:"string"` + // The subnet ARN for the Connect peer summary. + SubnetArn *string `type:"string"` + // The list of key-value tags associated with the Connect peer summary. Tags []*Tag `type:"list"` } @@ -10686,6 +10698,12 @@ return s } +// SetSubnetArn sets the SubnetArn field's value. +func (s *ConnectPeerSummary) SetSubnetArn(v string) *ConnectPeerSummary { + s.SubnetArn = &v + return s +} + // SetTags sets the Tags field's value. func (s *ConnectPeerSummary) SetTags(v []*Tag) *ConnectPeerSummary { s.Tags = v @@ -11973,15 +11991,16 @@ CoreNetworkAddress *string `min:"1" type:"string"` // The inside IP addresses used for BGP peering. - // - // InsideCidrBlocks is a required field - InsideCidrBlocks []*string `type:"list" required:"true"` + InsideCidrBlocks []*string `type:"list"` // The Connect peer address. // // PeerAddress is a required field PeerAddress *string `min:"1" type:"string" required:"true"` + // The subnet ARN for the Connect peer. + SubnetArn *string `type:"string"` + // The tags associated with the peer request. Tags []*Tag `type:"list"` } @@ -12013,9 +12032,6 @@ if s.CoreNetworkAddress != nil && len(*s.CoreNetworkAddress) < 1 { invalidParams.Add(request.NewErrParamMinLen("CoreNetworkAddress", 1)) } - if s.InsideCidrBlocks == nil { - invalidParams.Add(request.NewErrParamRequired("InsideCidrBlocks")) - } if s.PeerAddress == nil { invalidParams.Add(request.NewErrParamRequired("PeerAddress")) } @@ -12065,6 +12081,12 @@ return s } +// SetSubnetArn sets the SubnetArn field's value. +func (s *CreateConnectPeerInput) SetSubnetArn(v string) *CreateConnectPeerInput { + s.SubnetArn = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateConnectPeerInput) SetTags(v []*Tag) *CreateConnectPeerInput { s.Tags = v @@ -21251,7 +21273,8 @@ // The segment edge in a core network. CoreNetworkSegmentEdge *CoreNetworkSegmentEdgeIdentifier `type:"structure"` - // The ARN of the transit gateway route table. + // The ARN of the transit gateway route table for the attachment request. For + // example, "TransitGatewayRouteTableArn": "arn:aws:ec2:us-west-2:123456789012:transit-gateway-route-table/tgw-rtb-9876543210123456". TransitGatewayRouteTableArn *string `type:"string"` } @@ -24170,12 +24193,16 @@ const ( // TunnelProtocolGre is a TunnelProtocol enum value TunnelProtocolGre = "GRE" + + // TunnelProtocolNoEncap is a TunnelProtocol enum value + TunnelProtocolNoEncap = "NO_ENCAP" ) // TunnelProtocol_Values returns all elements of the TunnelProtocol enum func TunnelProtocol_Values() []string { return []string{ TunnelProtocolGre, + TunnelProtocolNoEncap, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/oam/api.go golang-github-aws-aws-sdk-go-1.48.14/service/oam/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/oam/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/oam/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1252,6 +1252,8 @@ // // - Traces - Specify with AWS::XRay::Trace // +// - Application Insights - Applications - Specify with AWS::ApplicationInsights::Application +// // See the examples in this section to see how to specify permitted source accounts // and data types. // @@ -3937,6 +3939,9 @@ // ResourceTypeAwsXrayTrace is a ResourceType enum value ResourceTypeAwsXrayTrace = "AWS::XRay::Trace" + + // ResourceTypeAwsApplicationInsightsApplication is a ResourceType enum value + ResourceTypeAwsApplicationInsightsApplication = "AWS::ApplicationInsights::Application" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -3945,5 +3950,6 @@ ResourceTypeAwsCloudWatchMetric, ResourceTypeAwsLogsLogGroup, ResourceTypeAwsXrayTrace, + ResourceTypeAwsApplicationInsightsApplication, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/oam/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/oam/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/oam/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/oam/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -7,18 +7,19 @@ // between source accounts and monitoring accounts by using CloudWatch cross-account // observability. With CloudWatch cross-account observability, you can monitor // and troubleshoot applications that span multiple accounts within a Region. -// Seamlessly search, visualize, and analyze your metrics, logs, and traces -// in any of the linked accounts without account boundaries. +// Seamlessly search, visualize, and analyze your metrics, logs, traces, and +// Application Insights applications in any of the linked accounts without account +// boundaries. // -//

    Set up one or more Amazon Web Services accounts as monitoring accounts -// and link them with multiple source accounts. A monitoring account -// is a central Amazon Web Services account that can view and interact with -// observability data generated from source accounts. A source account is -// an individual Amazon Web Services account that generates observability -// data for the resources that reside in it. Source accounts share their -// observability data with the monitoring account. The shared observability -// data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch -// Logs, and traces in X-Ray.

    +// Set up one or more Amazon Web Services accounts as monitoring accounts and +// link them with multiple source accounts. A monitoring account is a central +// Amazon Web Services account that can view and interact with observability +// data generated from source accounts. A source account is an individual Amazon +// Web Services account that generates observability data for the resources +// that reside in it. Source accounts share their observability data with the +// monitoring account. The shared observability data can include metrics in +// Amazon CloudWatch, logs in Amazon CloudWatch Logs, traces in X-Ray, and applications +// in Amazon CloudWatch Application Insights. // // See https://docs.aws.amazon.com/goto/WebAPI/oam-2022-06-10 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/omics/api.go golang-github-aws-aws-sdk-go-1.48.14/service/omics/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/omics/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/omics/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -53,7 +53,6 @@ output = &AbortMultipartReadSetUploadOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -157,7 +156,6 @@ output = &AcceptShareOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -257,7 +255,6 @@ output = &BatchDeleteReadSetOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -354,7 +351,6 @@ output = &CancelAnnotationImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -449,7 +445,6 @@ output = &CancelRunOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -553,7 +548,6 @@ output = &CancelVariantImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -648,7 +642,6 @@ output = &CompleteMultipartReadSetUploadOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -751,7 +744,6 @@ output = &CreateAnnotationStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -851,7 +843,6 @@ output = &CreateAnnotationStoreVersionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -951,7 +942,6 @@ output = &CreateMultipartReadSetUploadOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1054,7 +1044,6 @@ output = &CreateReferenceStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1151,7 +1140,6 @@ output = &CreateRunGroupOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1254,7 +1242,6 @@ output = &CreateSequenceStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1351,7 +1338,6 @@ output = &CreateShareOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1452,7 +1438,6 @@ output = &CreateVariantStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1552,7 +1537,6 @@ output = &CreateWorkflowOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1655,7 +1639,6 @@ output = &DeleteAnnotationStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1752,7 +1735,6 @@ output = &DeleteAnnotationStoreVersionsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -1849,7 +1831,6 @@ output = &DeleteReferenceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -1950,7 +1931,6 @@ output = &DeleteReferenceStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -2051,7 +2031,6 @@ output = &DeleteRunOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -2155,7 +2134,6 @@ output = &DeleteRunGroupOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -2259,7 +2237,6 @@ output = &DeleteSequenceStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -2360,7 +2337,6 @@ output = &DeleteShareOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -2460,7 +2436,6 @@ output = &DeleteVariantStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -2557,7 +2532,6 @@ output = &DeleteWorkflowOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -2661,7 +2635,6 @@ output = &GetAnnotationImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -2755,7 +2728,6 @@ output = &GetAnnotationStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -2849,7 +2821,6 @@ output = &GetAnnotationStoreVersionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -2943,7 +2914,6 @@ output = &GetReadSetOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3046,7 +3016,6 @@ output = &GetReadSetActivationJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3143,7 +3112,6 @@ output = &GetReadSetExportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3240,7 +3208,6 @@ output = &GetReadSetImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3337,7 +3304,6 @@ output = &GetReadSetMetadataOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3434,7 +3400,6 @@ output = &GetReferenceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3534,7 +3499,6 @@ output = &GetReferenceImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3631,7 +3595,6 @@ output = &GetReferenceMetadataOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3728,7 +3691,6 @@ output = &GetReferenceStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3825,7 +3787,6 @@ output = &GetRunOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -3928,7 +3889,6 @@ output = &GetRunGroupOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4031,7 +3991,6 @@ output = &GetRunTaskOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4134,7 +4093,6 @@ output = &GetSequenceStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4231,7 +4189,6 @@ output = &GetShareOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4331,7 +4288,6 @@ output = &GetVariantImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4425,7 +4381,6 @@ output = &GetVariantStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4519,7 +4474,6 @@ output = &GetWorkflowOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4628,7 +4582,6 @@ output = &ListAnnotationImportJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4779,7 +4732,6 @@ output = &ListAnnotationStoreVersionsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -4930,7 +4882,6 @@ output = &ListAnnotationStoresOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -5081,7 +5032,6 @@ output = &ListMultipartReadSetUploadsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -5241,7 +5191,6 @@ output = &ListReadSetActivationJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -5395,7 +5344,6 @@ output = &ListReadSetExportJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -5549,7 +5497,6 @@ output = &ListReadSetImportJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -5703,7 +5650,6 @@ output = &ListReadSetUploadPartsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -5864,7 +5810,6 @@ output = &ListReadSetsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6018,7 +5963,6 @@ output = &ListReferenceImportJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6172,7 +6116,6 @@ output = &ListReferenceStoresOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6323,7 +6266,6 @@ output = &ListReferencesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6477,7 +6419,6 @@ output = &ListRunGroupsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6637,7 +6578,6 @@ output = &ListRunTasksOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6797,7 +6737,6 @@ output = &ListRunsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -6957,7 +6896,6 @@ output = &ListSequenceStoresOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7108,7 +7046,6 @@ output = &ListSharesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7259,7 +7196,6 @@ output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tags-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7368,7 +7304,6 @@ output = &ListVariantImportJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7519,7 +7454,6 @@ output = &ListVariantStoresOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7670,7 +7604,6 @@ output = &ListWorkflowsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7824,7 +7757,6 @@ output = &StartAnnotationImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -7921,7 +7853,6 @@ output = &StartReadSetActivationJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8022,7 +7953,6 @@ output = &StartReadSetExportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8122,7 +8052,6 @@ output = &StartReadSetImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8222,7 +8151,6 @@ output = &StartReferenceImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("control-storage-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8322,7 +8250,6 @@ output = &StartRunOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8431,7 +8358,6 @@ output = &StartVariantImportJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8528,7 +8454,6 @@ output = &TagResourceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tags-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -8632,7 +8557,6 @@ output = &UntagResourceOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("tags-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -8736,7 +8660,6 @@ output = &UpdateAnnotationStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8830,7 +8753,6 @@ output = &UpdateAnnotationStoreVersionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -8924,7 +8846,6 @@ output = &UpdateRunGroupOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -9028,7 +8949,6 @@ output = &UpdateVariantStoreOutput{} req = c.newRequest(op, input, output) - req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("analytics-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) return @@ -9122,7 +9042,6 @@ output = &UpdateWorkflowOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("workflows-", nil)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) @@ -11255,9 +11174,7 @@ Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The ARN of the reference. - // - // ReferenceArn is a required field - ReferenceArn *string `locationName:"referenceArn" min:"1" type:"string" required:"true"` + ReferenceArn *string `locationName:"referenceArn" min:"1" type:"string"` // The source's sample ID. // @@ -11320,9 +11237,6 @@ if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.ReferenceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ReferenceArn")) - } if s.ReferenceArn != nil && len(*s.ReferenceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReferenceArn", 1)) } @@ -13406,6 +13320,56 @@ return s.String() } +// The entity tag (ETag) is a hash of the object representing its semantic content. +type ETag struct { + _ struct{} `type:"structure"` + + // The algorithm used to calculate the read set’s ETag(s). + Algorithm *string `locationName:"algorithm" type:"string" enum:"ETagAlgorithm"` + + // The ETag hash calculated on Source1 of the read set. + Source1 *string `locationName:"source1" type:"string"` + + // The ETag hash calculated on Source2 of the read set. + Source2 *string `locationName:"source2" 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 ETag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ETag) GoString() string { + return s.String() +} + +// SetAlgorithm sets the Algorithm field's value. +func (s *ETag) SetAlgorithm(v string) *ETag { + s.Algorithm = &v + return s +} + +// SetSource1 sets the Source1 field's value. +func (s *ETag) SetSource1(v string) *ETag { + s.Source1 = &v + return s +} + +// SetSource2 sets the Source2 field's value. +func (s *ETag) SetSource2(v string) *ETag { + s.Source2 = &v + return s +} + // A read set. type ExportReadSet struct { _ struct{} `type:"structure"` @@ -15159,6 +15123,10 @@ // The read set's description. Description *string `locationName:"description" min:"1" type:"string"` + // The entity tag (ETag) is a hash of the object meant to represent its semantic + // content. + Etag *ETag `locationName:"etag" type:"structure"` + // The read set's file type. // // FileType is a required field @@ -15244,6 +15212,12 @@ return s } +// SetEtag sets the Etag field's value. +func (s *GetReadSetMetadataOutput) SetEtag(v *ETag) *GetReadSetMetadataOutput { + s.Etag = v + return s +} + // SetFileType sets the FileType field's value. func (s *GetReadSetMetadataOutput) SetFileType(v string) *GetReadSetMetadataOutput { s.FileType = &v @@ -16197,12 +16171,18 @@ // The run's digest. Digest *string `locationName:"digest" min:"1" type:"string"` + // The reason a run has failed. + FailureReason *string `locationName:"failureReason" min:"1" type:"string"` + // The run's ID. Id *string `locationName:"id" min:"1" type:"string"` // The run's log level. LogLevel *string `locationName:"logLevel" min:"1" type:"string" enum:"RunLogLevel"` + // The location of the run log. + LogLocation *RunLogLocation `locationName:"logLocation" type:"structure"` + // The run's name. Name *string `locationName:"name" min:"1" type:"string"` @@ -16227,6 +16207,9 @@ // The run's ID. RunId *string `locationName:"runId" min:"1" type:"string"` + // The destination for workflow outputs. + RunOutputUri *string `locationName:"runOutputUri" min:"1" type:"string"` + // When the run started. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` @@ -16248,6 +16231,9 @@ // The run's tags. Tags map[string]*string `locationName:"tags" type:"map"` + // The universally unique identifier for a run. + Uuid *string `locationName:"uuid" min:"1" type:"string"` + // The run's workflow ID. WorkflowId *string `locationName:"workflowId" min:"1" type:"string"` @@ -16303,6 +16289,12 @@ return s } +// SetFailureReason sets the FailureReason field's value. +func (s *GetRunOutput) SetFailureReason(v string) *GetRunOutput { + s.FailureReason = &v + return s +} + // SetId sets the Id field's value. func (s *GetRunOutput) SetId(v string) *GetRunOutput { s.Id = &v @@ -16315,6 +16307,12 @@ return s } +// SetLogLocation sets the LogLocation field's value. +func (s *GetRunOutput) SetLogLocation(v *RunLogLocation) *GetRunOutput { + s.LogLocation = v + return s +} + // SetName sets the Name field's value. func (s *GetRunOutput) SetName(v string) *GetRunOutput { s.Name = &v @@ -16363,6 +16361,12 @@ return s } +// SetRunOutputUri sets the RunOutputUri field's value. +func (s *GetRunOutput) SetRunOutputUri(v string) *GetRunOutput { + s.RunOutputUri = &v + return s +} + // SetStartTime sets the StartTime field's value. func (s *GetRunOutput) SetStartTime(v time.Time) *GetRunOutput { s.StartTime = &v @@ -16405,6 +16409,12 @@ return s } +// SetUuid sets the Uuid field's value. +func (s *GetRunOutput) SetUuid(v string) *GetRunOutput { + s.Uuid = &v + return s +} + // SetWorkflowId sets the WorkflowId field's value. func (s *GetRunOutput) SetWorkflowId(v string) *GetRunOutput { s.WorkflowId = &v @@ -16420,7 +16430,7 @@ type GetRunTaskInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The task's ID. + // The workflow run ID. // // Id is a required field Id *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` @@ -16492,6 +16502,9 @@ // When the task was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601"` + // The reason a task has failed. + FailureReason *string `locationName:"failureReason" min:"1" type:"string"` + // The number of Graphics Processing Units (GPU) specified in the task. Gpus *int64 `locationName:"gpus" type:"integer"` @@ -16553,6 +16566,12 @@ return s } +// SetFailureReason sets the FailureReason field's value. +func (s *GetRunTaskOutput) SetFailureReason(v string) *GetRunTaskOutput { + s.FailureReason = &v + return s +} + // SetGpus sets the Gpus field's value. func (s *GetRunTaskOutput) SetGpus(v int64) *GetRunTaskOutput { s.Gpus = &v @@ -21262,7 +21281,7 @@ Name *string `locationName:"name" min:"1" type:"string"` // A genome reference ARN to filter on. - ReferenceArn *string `locationName:"referenceArn" min:"1" type:"string"` + ReferenceArn *string `locationName:"referenceArn" type:"string"` // The read set source's sample ID. SampleId *string `locationName:"sampleId" min:"1" type:"string"` @@ -21301,9 +21320,6 @@ if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.ReferenceArn != nil && len(*s.ReferenceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ReferenceArn", 1)) - } if s.SampleId != nil && len(*s.SampleId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SampleId", 1)) } @@ -21391,6 +21407,9 @@ // The read set's description. Description *string `locationName:"description" min:"1" type:"string"` + // The entity tag (ETag) is a hash of the object representing its semantic content. + Etag *ETag `locationName:"etag" type:"structure"` + // The read set's file type. // // FileType is a required field @@ -21473,6 +21492,12 @@ return s } +// SetEtag sets the Etag field's value. +func (s *ReadSetListItem) SetEtag(v *ETag) *ReadSetListItem { + s.Etag = v + return s +} + // SetFileType sets the FileType field's value. func (s *ReadSetListItem) SetFileType(v string) *ReadSetListItem { s.FileType = &v @@ -22421,6 +22446,47 @@ return s } +// The URI for the run log. +type RunLogLocation struct { + _ struct{} `type:"structure"` + + // The log stream ARN for the engine log. + EngineLogStream *string `locationName:"engineLogStream" type:"string"` + + // The log stream ARN for the run log. + RunLogStream *string `locationName:"runLogStream" 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 RunLogLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RunLogLocation) GoString() string { + return s.String() +} + +// SetEngineLogStream sets the EngineLogStream field's value. +func (s *RunLogLocation) SetEngineLogStream(v string) *RunLogLocation { + s.EngineLogStream = &v + return s +} + +// SetRunLogStream sets the RunLogStream field's value. +func (s *RunLogLocation) SetRunLogStream(v string) *RunLogLocation { + s.RunLogStream = &v + return s +} + // Details about a sequence. type SequenceInformation struct { _ struct{} `type:"structure"` @@ -23689,9 +23755,7 @@ Name *string `locationName:"name" min:"1" type:"string"` // The source's reference ARN. - // - // ReferenceArn is a required field - ReferenceArn *string `locationName:"referenceArn" min:"1" type:"string" required:"true"` + ReferenceArn *string `locationName:"referenceArn" min:"1" type:"string"` // The source's sample ID. // @@ -23747,9 +23811,6 @@ if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.ReferenceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ReferenceArn")) - } if s.ReferenceArn != nil && len(*s.ReferenceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReferenceArn", 1)) } @@ -24299,11 +24360,17 @@ // The run's ID. Id *string `locationName:"id" min:"1" type:"string"` + // The destination for workflow outputs. + RunOutputUri *string `locationName:"runOutputUri" min:"1" type:"string"` + // The run's status. Status *string `locationName:"status" min:"1" type:"string" enum:"RunStatus"` // The run's tags. Tags map[string]*string `locationName:"tags" type:"map"` + + // The universally unique identifier for a run. + Uuid *string `locationName:"uuid" min:"1" type:"string"` } // String returns the string representation. @@ -24336,6 +24403,12 @@ return s } +// SetRunOutputUri sets the RunOutputUri field's value. +func (s *StartRunOutput) SetRunOutputUri(v string) *StartRunOutput { + s.RunOutputUri = &v + return s +} + // SetStatus sets the Status field's value. func (s *StartRunOutput) SetStatus(v string) *StartRunOutput { s.Status = &v @@ -24348,6 +24421,12 @@ return s } +// SetUuid sets the Uuid field's value. +func (s *StartRunOutput) SetUuid(v string) *StartRunOutput { + s.Uuid = &v + return s +} + type StartVariantImportJobInput struct { _ struct{} `type:"structure"` @@ -26712,6 +26791,26 @@ } const ( + // ETagAlgorithmFastqMd5up is a ETagAlgorithm enum value + ETagAlgorithmFastqMd5up = "FASTQ_MD5up" + + // ETagAlgorithmBamMd5up is a ETagAlgorithm enum value + ETagAlgorithmBamMd5up = "BAM_MD5up" + + // ETagAlgorithmCramMd5up is a ETagAlgorithm enum value + ETagAlgorithmCramMd5up = "CRAM_MD5up" +) + +// ETagAlgorithm_Values returns all elements of the ETagAlgorithm enum +func ETagAlgorithm_Values() []string { + return []string{ + ETagAlgorithmFastqMd5up, + ETagAlgorithmBamMd5up, + ETagAlgorithmCramMd5up, + } +} + +const ( // EncryptionTypeKms is a EncryptionType enum value EncryptionTypeKms = "KMS" ) @@ -26732,6 +26831,9 @@ // FileTypeCram is a FileType enum value FileTypeCram = "CRAM" + + // FileTypeUbam is a FileType enum value + FileTypeUbam = "UBAM" ) // FileType_Values returns all elements of the FileType enum @@ -26740,6 +26842,7 @@ FileTypeFastq, FileTypeBam, FileTypeCram, + FileTypeUbam, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/opensearchserverless/api.go golang-github-aws-aws-sdk-go-1.48.14/service/opensearchserverless/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/opensearchserverless/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/opensearchserverless/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -97,6 +97,174 @@ return out, req.Send() } +const opBatchGetEffectiveLifecyclePolicy = "BatchGetEffectiveLifecyclePolicy" + +// BatchGetEffectiveLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetEffectiveLifecyclePolicy 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 BatchGetEffectiveLifecyclePolicy for more information on using the BatchGetEffectiveLifecyclePolicy +// 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 BatchGetEffectiveLifecyclePolicyRequest method. +// req, resp := client.BatchGetEffectiveLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/BatchGetEffectiveLifecyclePolicy +func (c *OpenSearchServerless) BatchGetEffectiveLifecyclePolicyRequest(input *BatchGetEffectiveLifecyclePolicyInput) (req *request.Request, output *BatchGetEffectiveLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opBatchGetEffectiveLifecyclePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchGetEffectiveLifecyclePolicyInput{} + } + + output = &BatchGetEffectiveLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetEffectiveLifecyclePolicy API operation for OpenSearch Service Serverless. +// +// Returns a list of successful and failed retrievals for the OpenSearch Serverless +// indexes. For more information, see Viewing data lifecycle policies (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html#serverless-lifecycle-list). +// +// 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 OpenSearch Service Serverless's +// API operation BatchGetEffectiveLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// Thrown when an error internal to the service occurs while processing a request. +// +// - ValidationException +// Thrown when the HTTP request contains invalid input or is missing required +// input. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/BatchGetEffectiveLifecyclePolicy +func (c *OpenSearchServerless) BatchGetEffectiveLifecyclePolicy(input *BatchGetEffectiveLifecyclePolicyInput) (*BatchGetEffectiveLifecyclePolicyOutput, error) { + req, out := c.BatchGetEffectiveLifecyclePolicyRequest(input) + return out, req.Send() +} + +// BatchGetEffectiveLifecyclePolicyWithContext is the same as BatchGetEffectiveLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetEffectiveLifecyclePolicy 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 *OpenSearchServerless) BatchGetEffectiveLifecyclePolicyWithContext(ctx aws.Context, input *BatchGetEffectiveLifecyclePolicyInput, opts ...request.Option) (*BatchGetEffectiveLifecyclePolicyOutput, error) { + req, out := c.BatchGetEffectiveLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchGetLifecyclePolicy = "BatchGetLifecyclePolicy" + +// BatchGetLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetLifecyclePolicy 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 BatchGetLifecyclePolicy for more information on using the BatchGetLifecyclePolicy +// 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 BatchGetLifecyclePolicyRequest method. +// req, resp := client.BatchGetLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/BatchGetLifecyclePolicy +func (c *OpenSearchServerless) BatchGetLifecyclePolicyRequest(input *BatchGetLifecyclePolicyInput) (req *request.Request, output *BatchGetLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opBatchGetLifecyclePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchGetLifecyclePolicyInput{} + } + + output = &BatchGetLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetLifecyclePolicy API operation for OpenSearch Service Serverless. +// +// Returns one or more configured OpenSearch Serverless lifecycle policies. +// For more information, see Viewing data lifecycle policies (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html#serverless-lifecycle-list). +// +// 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 OpenSearch Service Serverless's +// API operation BatchGetLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// Thrown when an error internal to the service occurs while processing a request. +// +// - ValidationException +// Thrown when the HTTP request contains invalid input or is missing required +// input. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/BatchGetLifecyclePolicy +func (c *OpenSearchServerless) BatchGetLifecyclePolicy(input *BatchGetLifecyclePolicyInput) (*BatchGetLifecyclePolicyOutput, error) { + req, out := c.BatchGetLifecyclePolicyRequest(input) + return out, req.Send() +} + +// BatchGetLifecyclePolicyWithContext is the same as BatchGetLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetLifecyclePolicy 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 *OpenSearchServerless) BatchGetLifecyclePolicyWithContext(ctx aws.Context, input *BatchGetLifecyclePolicyInput, opts ...request.Option) (*BatchGetLifecyclePolicyOutput, error) { + req, out := c.BatchGetLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchGetVpcEndpoint = "BatchGetVpcEndpoint" // BatchGetVpcEndpointRequest generates a "aws/request.Request" representing the @@ -375,6 +543,101 @@ return out, req.Send() } +const opCreateLifecyclePolicy = "CreateLifecyclePolicy" + +// CreateLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the CreateLifecyclePolicy 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 CreateLifecyclePolicy for more information on using the CreateLifecyclePolicy +// 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 CreateLifecyclePolicyRequest method. +// req, resp := client.CreateLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/CreateLifecyclePolicy +func (c *OpenSearchServerless) CreateLifecyclePolicyRequest(input *CreateLifecyclePolicyInput) (req *request.Request, output *CreateLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opCreateLifecyclePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateLifecyclePolicyInput{} + } + + output = &CreateLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateLifecyclePolicy API operation for OpenSearch Service Serverless. +// +// Creates a lifecyle policy to be applied to OpenSearch Serverless indexes. +// Lifecycle policies define the number of days or hours to retain the data +// on an OpenSearch Serverless index. For more information, see Creating data +// lifecycle policies (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html#serverless-lifecycle-create). +// +// 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 OpenSearch Service Serverless's +// API operation CreateLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// Thrown when an error internal to the service occurs while processing a request. +// +// - ConflictException +// When creating a resource, thrown when a resource with the same name already +// exists or is being created. When deleting a resource, thrown when the resource +// is not in the ACTIVE or FAILED state. +// +// - ValidationException +// Thrown when the HTTP request contains invalid input or is missing required +// input. +// +// - ServiceQuotaExceededException +// Thrown when you attempt to create more resources than the service allows +// based on service quotas. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/CreateLifecyclePolicy +func (c *OpenSearchServerless) CreateLifecyclePolicy(input *CreateLifecyclePolicyInput) (*CreateLifecyclePolicyOutput, error) { + req, out := c.CreateLifecyclePolicyRequest(input) + return out, req.Send() +} + +// CreateLifecyclePolicyWithContext is the same as CreateLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See CreateLifecyclePolicy 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 *OpenSearchServerless) CreateLifecyclePolicyWithContext(ctx aws.Context, input *CreateLifecyclePolicyInput, opts ...request.Option) (*CreateLifecyclePolicyOutput, error) { + req, out := c.CreateLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateSecurityConfig = "CreateSecurityConfig" // CreateSecurityConfigRequest generates a "aws/request.Request" representing the @@ -844,6 +1107,99 @@ return out, req.Send() } +const opDeleteLifecyclePolicy = "DeleteLifecyclePolicy" + +// DeleteLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLifecyclePolicy 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 DeleteLifecyclePolicy for more information on using the DeleteLifecyclePolicy +// 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 DeleteLifecyclePolicyRequest method. +// req, resp := client.DeleteLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/DeleteLifecyclePolicy +func (c *OpenSearchServerless) DeleteLifecyclePolicyRequest(input *DeleteLifecyclePolicyInput) (req *request.Request, output *DeleteLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opDeleteLifecyclePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteLifecyclePolicyInput{} + } + + output = &DeleteLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteLifecyclePolicy API operation for OpenSearch Service Serverless. +// +// Deletes an OpenSearch Serverless lifecycle policy. For more information, +// see Deleting data lifecycle policies (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html#serverless-lifecycle-delete). +// +// 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 OpenSearch Service Serverless's +// API operation DeleteLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// Thrown when an error internal to the service occurs while processing a request. +// +// - ResourceNotFoundException +// Thrown when accessing or deleting a resource that does not exist. +// +// - ConflictException +// When creating a resource, thrown when a resource with the same name already +// exists or is being created. When deleting a resource, thrown when the resource +// is not in the ACTIVE or FAILED state. +// +// - ValidationException +// Thrown when the HTTP request contains invalid input or is missing required +// input. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/DeleteLifecyclePolicy +func (c *OpenSearchServerless) DeleteLifecyclePolicy(input *DeleteLifecyclePolicyInput) (*DeleteLifecyclePolicyOutput, error) { + req, out := c.DeleteLifecyclePolicyRequest(input) + return out, req.Send() +} + +// DeleteLifecyclePolicyWithContext is the same as DeleteLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLifecyclePolicy 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 *OpenSearchServerless) DeleteLifecyclePolicyWithContext(ctx aws.Context, input *DeleteLifecyclePolicyInput, opts ...request.Option) (*DeleteLifecyclePolicyOutput, error) { + req, out := c.DeleteLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteSecurityConfig = "DeleteSecurityConfig" // DeleteSecurityConfigRequest generates a "aws/request.Request" representing the @@ -1831,6 +2187,147 @@ return p.Err() } +const opListLifecyclePolicies = "ListLifecyclePolicies" + +// ListLifecyclePoliciesRequest generates a "aws/request.Request" representing the +// client's request for the ListLifecyclePolicies 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 ListLifecyclePolicies for more information on using the ListLifecyclePolicies +// 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 ListLifecyclePoliciesRequest method. +// req, resp := client.ListLifecyclePoliciesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/ListLifecyclePolicies +func (c *OpenSearchServerless) ListLifecyclePoliciesRequest(input *ListLifecyclePoliciesInput) (req *request.Request, output *ListLifecyclePoliciesOutput) { + op := &request.Operation{ + Name: opListLifecyclePolicies, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLifecyclePoliciesInput{} + } + + output = &ListLifecyclePoliciesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLifecyclePolicies API operation for OpenSearch Service Serverless. +// +// Returns a list of OpenSearch Serverless lifecycle policies. For more information, +// see Viewing data lifecycle policies (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html#serverless-lifecycle-list). +// +// 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 OpenSearch Service Serverless's +// API operation ListLifecyclePolicies for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// Thrown when an error internal to the service occurs while processing a request. +// +// - ValidationException +// Thrown when the HTTP request contains invalid input or is missing required +// input. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/ListLifecyclePolicies +func (c *OpenSearchServerless) ListLifecyclePolicies(input *ListLifecyclePoliciesInput) (*ListLifecyclePoliciesOutput, error) { + req, out := c.ListLifecyclePoliciesRequest(input) + return out, req.Send() +} + +// ListLifecyclePoliciesWithContext is the same as ListLifecyclePolicies with the addition of +// the ability to pass a context and additional request options. +// +// See ListLifecyclePolicies 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 *OpenSearchServerless) ListLifecyclePoliciesWithContext(ctx aws.Context, input *ListLifecyclePoliciesInput, opts ...request.Option) (*ListLifecyclePoliciesOutput, error) { + req, out := c.ListLifecyclePoliciesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLifecyclePoliciesPages iterates over the pages of a ListLifecyclePolicies operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLifecyclePolicies 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 ListLifecyclePolicies operation. +// pageNum := 0 +// err := client.ListLifecyclePoliciesPages(params, +// func(page *opensearchserverless.ListLifecyclePoliciesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *OpenSearchServerless) ListLifecyclePoliciesPages(input *ListLifecyclePoliciesInput, fn func(*ListLifecyclePoliciesOutput, bool) bool) error { + return c.ListLifecyclePoliciesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLifecyclePoliciesPagesWithContext same as ListLifecyclePoliciesPages 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 *OpenSearchServerless) ListLifecyclePoliciesPagesWithContext(ctx aws.Context, input *ListLifecyclePoliciesInput, fn func(*ListLifecyclePoliciesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLifecyclePoliciesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLifecyclePoliciesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLifecyclePoliciesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSecurityConfigs = "ListSecurityConfigs" // ListSecurityConfigsRequest generates a "aws/request.Request" representing the @@ -2797,6 +3294,102 @@ return out, req.Send() } +const opUpdateLifecyclePolicy = "UpdateLifecyclePolicy" + +// UpdateLifecyclePolicyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLifecyclePolicy 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 UpdateLifecyclePolicy for more information on using the UpdateLifecyclePolicy +// 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 UpdateLifecyclePolicyRequest method. +// req, resp := client.UpdateLifecyclePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/UpdateLifecyclePolicy +func (c *OpenSearchServerless) UpdateLifecyclePolicyRequest(input *UpdateLifecyclePolicyInput) (req *request.Request, output *UpdateLifecyclePolicyOutput) { + op := &request.Operation{ + Name: opUpdateLifecyclePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateLifecyclePolicyInput{} + } + + output = &UpdateLifecyclePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateLifecyclePolicy API operation for OpenSearch Service Serverless. +// +// Updates an OpenSearch Serverless access policy. For more information, see +// Updating data lifecycle policies (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html#serverless-lifecycle-update). +// +// 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 OpenSearch Service Serverless's +// API operation UpdateLifecyclePolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// Thrown when an error internal to the service occurs while processing a request. +// +// - ResourceNotFoundException +// Thrown when accessing or deleting a resource that does not exist. +// +// - ConflictException +// When creating a resource, thrown when a resource with the same name already +// exists or is being created. When deleting a resource, thrown when the resource +// is not in the ACTIVE or FAILED state. +// +// - ValidationException +// Thrown when the HTTP request contains invalid input or is missing required +// input. +// +// - ServiceQuotaExceededException +// Thrown when you attempt to create more resources than the service allows +// based on service quotas. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearchserverless-2021-11-01/UpdateLifecyclePolicy +func (c *OpenSearchServerless) UpdateLifecyclePolicy(input *UpdateLifecyclePolicyInput) (*UpdateLifecyclePolicyOutput, error) { + req, out := c.UpdateLifecyclePolicyRequest(input) + return out, req.Send() +} + +// UpdateLifecyclePolicyWithContext is the same as UpdateLifecyclePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLifecyclePolicy 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 *OpenSearchServerless) UpdateLifecyclePolicyWithContext(ctx aws.Context, input *UpdateLifecyclePolicyInput, opts ...request.Option) (*UpdateLifecyclePolicyOutput, error) { + req, out := c.UpdateLifecyclePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSecurityConfig = "UpdateSecurityConfig" // UpdateSecurityConfigRequest generates a "aws/request.Request" representing the @@ -3203,7 +3796,7 @@ // The version of the policy. PolicyVersion *string `locationName:"policyVersion" min:"20" type:"string"` - // The type of access policy. Currently the only available type is data. + // The type of access policy. Currently, the only available type is data. Type *string `locationName:"type" type:"string" enum:"AccessPolicyType"` } @@ -3395,6 +3988,205 @@ return s } +type BatchGetEffectiveLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // The unique identifiers of policy types and resource names. + // + // ResourceIdentifiers is a required field + ResourceIdentifiers []*LifecyclePolicyResourceIdentifier `locationName:"resourceIdentifiers" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetEffectiveLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetEffectiveLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetEffectiveLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetEffectiveLifecyclePolicyInput"} + if s.ResourceIdentifiers == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifiers")) + } + if s.ResourceIdentifiers != nil && len(s.ResourceIdentifiers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifiers", 1)) + } + if s.ResourceIdentifiers != nil { + for i, v := range s.ResourceIdentifiers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceIdentifiers", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceIdentifiers sets the ResourceIdentifiers field's value. +func (s *BatchGetEffectiveLifecyclePolicyInput) SetResourceIdentifiers(v []*LifecyclePolicyResourceIdentifier) *BatchGetEffectiveLifecyclePolicyInput { + s.ResourceIdentifiers = v + return s +} + +type BatchGetEffectiveLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // A list of lifecycle policies applied to the OpenSearch Serverless indexes. + EffectiveLifecyclePolicyDetails []*EffectiveLifecyclePolicyDetail `locationName:"effectiveLifecyclePolicyDetails" type:"list"` + + // A list of resources for which retrieval failed. + EffectiveLifecyclePolicyErrorDetails []*EffectiveLifecyclePolicyErrorDetail `locationName:"effectiveLifecyclePolicyErrorDetails" 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 BatchGetEffectiveLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetEffectiveLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetEffectiveLifecyclePolicyDetails sets the EffectiveLifecyclePolicyDetails field's value. +func (s *BatchGetEffectiveLifecyclePolicyOutput) SetEffectiveLifecyclePolicyDetails(v []*EffectiveLifecyclePolicyDetail) *BatchGetEffectiveLifecyclePolicyOutput { + s.EffectiveLifecyclePolicyDetails = v + return s +} + +// SetEffectiveLifecyclePolicyErrorDetails sets the EffectiveLifecyclePolicyErrorDetails field's value. +func (s *BatchGetEffectiveLifecyclePolicyOutput) SetEffectiveLifecyclePolicyErrorDetails(v []*EffectiveLifecyclePolicyErrorDetail) *BatchGetEffectiveLifecyclePolicyOutput { + s.EffectiveLifecyclePolicyErrorDetails = v + return s +} + +type BatchGetLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // The unique identifiers of policy types and policy names. + // + // Identifiers is a required field + Identifiers []*LifecyclePolicyIdentifier `locationName:"identifiers" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetLifecyclePolicyInput"} + if s.Identifiers == nil { + invalidParams.Add(request.NewErrParamRequired("Identifiers")) + } + if s.Identifiers != nil && len(s.Identifiers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifiers", 1)) + } + if s.Identifiers != nil { + for i, v := range s.Identifiers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Identifiers", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifiers sets the Identifiers field's value. +func (s *BatchGetLifecyclePolicyInput) SetIdentifiers(v []*LifecyclePolicyIdentifier) *BatchGetLifecyclePolicyInput { + s.Identifiers = v + return s +} + +type BatchGetLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // A list of lifecycle policies matched to the input policy name and policy + // type. + LifecyclePolicyDetails []*LifecyclePolicyDetail `locationName:"lifecyclePolicyDetails" type:"list"` + + // A list of lifecycle policy names and policy types for which retrieval failed. + LifecyclePolicyErrorDetails []*LifecyclePolicyErrorDetail `locationName:"lifecyclePolicyErrorDetails" 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 BatchGetLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicyDetails sets the LifecyclePolicyDetails field's value. +func (s *BatchGetLifecyclePolicyOutput) SetLifecyclePolicyDetails(v []*LifecyclePolicyDetail) *BatchGetLifecyclePolicyOutput { + s.LifecyclePolicyDetails = v + return s +} + +// SetLifecyclePolicyErrorDetails sets the LifecyclePolicyErrorDetails field's value. +func (s *BatchGetLifecyclePolicyOutput) SetLifecyclePolicyErrorDetails(v []*LifecyclePolicyErrorDetail) *BatchGetLifecyclePolicyOutput { + s.LifecyclePolicyErrorDetails = v + return s +} + type BatchGetVpcEndpointInput struct { _ struct{} `type:"structure"` @@ -3577,6 +4369,9 @@ // The name of the collection. Name *string `locationName:"name" min:"3" type:"string"` + // Details about an OpenSearch Serverless collection. + StandbyReplicas *string `locationName:"standbyReplicas" type:"string" enum:"StandbyReplicas"` + // The current status of the collection. Status *string `locationName:"status" type:"string" enum:"CollectionStatus"` @@ -3656,6 +4451,12 @@ return s } +// SetStandbyReplicas sets the StandbyReplicas field's value. +func (s *CollectionDetail) SetStandbyReplicas(v string) *CollectionDetail { + s.StandbyReplicas = &v + return s +} + // SetStatus sets the Status field's value. func (s *CollectionDetail) SetStatus(v string) *CollectionDetail { s.Status = &v @@ -3730,7 +4531,7 @@ return s } -// List of filter keys that you can use for LIST, UPDATE, and DELETE requests +// A list of filter keys that you can use for LIST, UPDATE, and DELETE requests // to OpenSearch Serverless collections. type CollectionFilters struct { _ struct{} `type:"structure"` @@ -4068,6 +4869,9 @@ // The name of the collection. Name *string `locationName:"name" min:"3" type:"string"` + // Creates details about an OpenSearch Serverless collection. + StandbyReplicas *string `locationName:"standbyReplicas" type:"string" enum:"StandbyReplicas"` + // The current status of the collection. Status *string `locationName:"status" type:"string" enum:"CollectionStatus"` @@ -4135,6 +4939,12 @@ return s } +// SetStandbyReplicas sets the StandbyReplicas field's value. +func (s *CreateCollectionDetail) SetStandbyReplicas(v string) *CreateCollectionDetail { + s.StandbyReplicas = &v + return s +} + // SetStatus sets the Status field's value. func (s *CreateCollectionDetail) SetStatus(v string) *CreateCollectionDetail { s.Status = &v @@ -4161,6 +4971,9 @@ // Name is a required field Name *string `locationName:"name" min:"3" type:"string" required:"true"` + // Indicates whether standby replicas should be used for a collection. + StandbyReplicas *string `locationName:"standbyReplicas" type:"string" enum:"StandbyReplicas"` + // An arbitrary set of tags (key–value pairs) to associate with the OpenSearch // Serverless collection. Tags []*Tag `locationName:"tags" type:"list"` @@ -4234,6 +5047,12 @@ return s } +// SetStandbyReplicas sets the StandbyReplicas field's value. +func (s *CreateCollectionInput) SetStandbyReplicas(v string) *CreateCollectionInput { + s.StandbyReplicas = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateCollectionInput) SetTags(v []*Tag) *CreateCollectionInput { s.Tags = v @@ -4277,6 +5096,138 @@ return s } +type CreateLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier to ensure idempotency of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // A description of the lifecycle policy. + Description *string `locationName:"description" type:"string"` + + // The name of the lifecycle policy. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The JSON policy document to use as the content for the lifecycle policy. + // + // Policy is a required field + Policy *string `locationName:"policy" min:"1" type:"string" required:"true"` + + // The type of lifecycle policy. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLifecyclePolicyInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.Policy == nil { + invalidParams.Add(request.NewErrParamRequired("Policy")) + } + if s.Policy != nil && len(*s.Policy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateLifecyclePolicyInput) SetClientToken(v string) *CreateLifecyclePolicyInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateLifecyclePolicyInput) SetDescription(v string) *CreateLifecyclePolicyInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateLifecyclePolicyInput) SetName(v string) *CreateLifecyclePolicyInput { + s.Name = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *CreateLifecyclePolicyInput) SetPolicy(v string) *CreateLifecyclePolicyInput { + s.Policy = &v + return s +} + +// SetType sets the Type field's value. +func (s *CreateLifecyclePolicyInput) SetType(v string) *CreateLifecyclePolicyInput { + s.Type = &v + return s +} + +type CreateLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // Details about the created lifecycle policy. + LifecyclePolicyDetail *LifecyclePolicyDetail `locationName:"lifecyclePolicyDetail" 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 CreateLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicyDetail sets the LifecyclePolicyDetail field's value. +func (s *CreateLifecyclePolicyOutput) SetLifecyclePolicyDetail(v *LifecyclePolicyDetail) *CreateLifecyclePolicyOutput { + s.LifecyclePolicyDetail = v + return s +} + type CreateSecurityConfigInput struct { _ struct{} `type:"structure"` @@ -4976,6 +5927,103 @@ return s } +type DeleteLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier to ensure idempotency of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The name of the policy to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The type of lifecycle policy. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLifecyclePolicyInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteLifecyclePolicyInput) SetClientToken(v string) *DeleteLifecyclePolicyInput { + s.ClientToken = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteLifecyclePolicyInput) SetName(v string) *DeleteLifecyclePolicyInput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *DeleteLifecyclePolicyInput) SetType(v string) *DeleteLifecyclePolicyInput { + s.Type = &v + return s +} + +type DeleteLifecyclePolicyOutput 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 DeleteLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLifecyclePolicyOutput) GoString() string { + return s.String() +} + type DeleteSecurityConfigInput struct { _ struct{} `type:"structure"` @@ -5299,6 +6347,147 @@ return s } +// Error information for an OpenSearch Serverless request. +type EffectiveLifecyclePolicyDetail struct { + _ struct{} `type:"structure"` + + // The minimum number of index retention days set. That is an optional param + // that will return as true if the minimum number of days or hours is not set + // to a index resource. + NoMinRetentionPeriod *bool `locationName:"noMinRetentionPeriod" type:"boolean"` + + // The name of the lifecycle policy. + PolicyName *string `locationName:"policyName" min:"3" type:"string"` + + // The name of the OpenSearch Serverless index resource. + Resource *string `locationName:"resource" type:"string"` + + // The type of OpenSearch Serverless resource. Currently, the only supported + // resource is index. + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // The minimum number of index retention in days or hours. This is an optional + // parameter that will return only if it’s set. + RetentionPeriod *string `locationName:"retentionPeriod" type:"string"` + + // The type of lifecycle policy. + Type *string `locationName:"type" type:"string" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EffectiveLifecyclePolicyDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EffectiveLifecyclePolicyDetail) GoString() string { + return s.String() +} + +// SetNoMinRetentionPeriod sets the NoMinRetentionPeriod field's value. +func (s *EffectiveLifecyclePolicyDetail) SetNoMinRetentionPeriod(v bool) *EffectiveLifecyclePolicyDetail { + s.NoMinRetentionPeriod = &v + return s +} + +// SetPolicyName sets the PolicyName field's value. +func (s *EffectiveLifecyclePolicyDetail) SetPolicyName(v string) *EffectiveLifecyclePolicyDetail { + s.PolicyName = &v + return s +} + +// SetResource sets the Resource field's value. +func (s *EffectiveLifecyclePolicyDetail) SetResource(v string) *EffectiveLifecyclePolicyDetail { + s.Resource = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *EffectiveLifecyclePolicyDetail) SetResourceType(v string) *EffectiveLifecyclePolicyDetail { + s.ResourceType = &v + return s +} + +// SetRetentionPeriod sets the RetentionPeriod field's value. +func (s *EffectiveLifecyclePolicyDetail) SetRetentionPeriod(v string) *EffectiveLifecyclePolicyDetail { + s.RetentionPeriod = &v + return s +} + +// SetType sets the Type field's value. +func (s *EffectiveLifecyclePolicyDetail) SetType(v string) *EffectiveLifecyclePolicyDetail { + s.Type = &v + return s +} + +// Error information for an OpenSearch Serverless request. +type EffectiveLifecyclePolicyErrorDetail struct { + _ struct{} `type:"structure"` + + // The error code for the request. + ErrorCode *string `locationName:"errorCode" type:"string"` + + // A description of the error. For example, The specified Index resource is + // not found. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // The name of OpenSearch Serverless index resource. + Resource *string `locationName:"resource" type:"string"` + + // The type of lifecycle policy. + Type *string `locationName:"type" type:"string" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EffectiveLifecyclePolicyErrorDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EffectiveLifecyclePolicyErrorDetail) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *EffectiveLifecyclePolicyErrorDetail) SetErrorCode(v string) *EffectiveLifecyclePolicyErrorDetail { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *EffectiveLifecyclePolicyErrorDetail) SetErrorMessage(v string) *EffectiveLifecyclePolicyErrorDetail { + s.ErrorMessage = &v + return s +} + +// SetResource sets the Resource field's value. +func (s *EffectiveLifecyclePolicyErrorDetail) SetResource(v string) *EffectiveLifecyclePolicyErrorDetail { + s.Resource = &v + return s +} + +// SetType sets the Type field's value. +func (s *EffectiveLifecyclePolicyErrorDetail) SetType(v string) *EffectiveLifecyclePolicyErrorDetail { + s.Type = &v + return s +} + type GetAccessPolicyInput struct { _ struct{} `type:"structure"` @@ -5307,7 +6496,7 @@ // Name is a required field Name *string `locationName:"name" min:"3" type:"string" required:"true"` - // Tye type of policy. Currently the only supported value is data. + // Tye type of policy. Currently, the only supported value is data. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"AccessPolicyType"` @@ -5474,6 +6663,9 @@ // Information about the data access policies in your account. AccessPolicyStats *AccessPolicyStats `type:"structure"` + // Information about the lifecycle policies in your account. + LifecyclePolicyStats *LifecyclePolicyStats `type:"structure"` + // Information about the security configurations in your account. SecurityConfigStats *SecurityConfigStats `type:"structure"` @@ -5509,6 +6701,12 @@ return s } +// SetLifecyclePolicyStats sets the LifecyclePolicyStats field's value. +func (s *GetPoliciesStatsOutput) SetLifecyclePolicyStats(v *LifecyclePolicyStats) *GetPoliciesStatsOutput { + s.LifecyclePolicyStats = v + return s +} + // SetSecurityConfigStats sets the SecurityConfigStats field's value. func (s *GetPoliciesStatsOutput) SetSecurityConfigStats(v *SecurityConfigStats) *GetPoliciesStatsOutput { s.SecurityConfigStats = v @@ -5765,6 +6963,377 @@ return s.RespMetadata.RequestID } +// Details about an OpenSearch Serverless lifecycle policy. +type LifecyclePolicyDetail struct { + _ struct{} `type:"structure"` + + // The date the lifecycle policy was created. + CreatedDate *int64 `locationName:"createdDate" type:"long"` + + // The description of the lifecycle policy. + Description *string `locationName:"description" type:"string"` + + // The timestamp of when the lifecycle policy was last modified. + LastModifiedDate *int64 `locationName:"lastModifiedDate" type:"long"` + + // The name of the lifecycle policy. + Name *string `locationName:"name" min:"3" type:"string"` + + // The version of the lifecycle policy. + PolicyVersion *string `locationName:"policyVersion" min:"20" type:"string"` + + // The type of lifecycle policy. + Type *string `locationName:"type" type:"string" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyDetail) GoString() string { + return s.String() +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *LifecyclePolicyDetail) SetCreatedDate(v int64) *LifecyclePolicyDetail { + s.CreatedDate = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *LifecyclePolicyDetail) SetDescription(v string) *LifecyclePolicyDetail { + s.Description = &v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *LifecyclePolicyDetail) SetLastModifiedDate(v int64) *LifecyclePolicyDetail { + s.LastModifiedDate = &v + return s +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicyDetail) SetName(v string) *LifecyclePolicyDetail { + s.Name = &v + return s +} + +// SetPolicyVersion sets the PolicyVersion field's value. +func (s *LifecyclePolicyDetail) SetPolicyVersion(v string) *LifecyclePolicyDetail { + s.PolicyVersion = &v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicyDetail) SetType(v string) *LifecyclePolicyDetail { + s.Type = &v + return s +} + +// Error information for an OpenSearch Serverless request. +type LifecyclePolicyErrorDetail struct { + _ struct{} `type:"structure"` + + // The error code for the request. For example, NOT_FOUND. + ErrorCode *string `locationName:"errorCode" type:"string"` + + // A description of the error. For example, The specified Lifecycle Policy is + // not found. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // The name of the lifecycle policy. + Name *string `locationName:"name" min:"3" type:"string"` + + // The type of lifecycle policy. + Type *string `locationName:"type" type:"string" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyErrorDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyErrorDetail) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *LifecyclePolicyErrorDetail) SetErrorCode(v string) *LifecyclePolicyErrorDetail { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *LifecyclePolicyErrorDetail) SetErrorMessage(v string) *LifecyclePolicyErrorDetail { + s.ErrorMessage = &v + return s +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicyErrorDetail) SetName(v string) *LifecyclePolicyErrorDetail { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicyErrorDetail) SetType(v string) *LifecyclePolicyErrorDetail { + s.Type = &v + return s +} + +// The unique identifiers of policy types and policy names. +type LifecyclePolicyIdentifier struct { + _ struct{} `type:"structure"` + + // The name of the lifecycle policy. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The type of lifecycle policy. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyIdentifier"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicyIdentifier) SetName(v string) *LifecyclePolicyIdentifier { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicyIdentifier) SetType(v string) *LifecyclePolicyIdentifier { + s.Type = &v + return s +} + +// The unique identifiers of policy types and resource names. +type LifecyclePolicyResourceIdentifier struct { + _ struct{} `type:"structure"` + + // The name of the OpenSearch Serverless ilndex resource. + // + // Resource is a required field + Resource *string `locationName:"resource" type:"string" required:"true"` + + // The type of lifecycle policy. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyResourceIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyResourceIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LifecyclePolicyResourceIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LifecyclePolicyResourceIdentifier"} + if s.Resource == nil { + invalidParams.Add(request.NewErrParamRequired("Resource")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResource sets the Resource field's value. +func (s *LifecyclePolicyResourceIdentifier) SetResource(v string) *LifecyclePolicyResourceIdentifier { + s.Resource = &v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicyResourceIdentifier) SetType(v string) *LifecyclePolicyResourceIdentifier { + s.Type = &v + return s +} + +// Statistics for an OpenSearch Serverless lifecycle policy. +type LifecyclePolicyStats struct { + _ struct{} `type:"structure"` + + // The number of retention lifecycle policies in the current account. + RetentionPolicyCount *int64 `type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyStats) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicyStats) GoString() string { + return s.String() +} + +// SetRetentionPolicyCount sets the RetentionPolicyCount field's value. +func (s *LifecyclePolicyStats) SetRetentionPolicyCount(v int64) *LifecyclePolicyStats { + s.RetentionPolicyCount = &v + return s +} + +// A summary of the lifecycle policy. +type LifecyclePolicySummary struct { + _ struct{} `type:"structure"` + + // The Epoch time when the lifecycle policy was created. + CreatedDate *int64 `locationName:"createdDate" type:"long"` + + // The description of the lifecycle policy. + Description *string `locationName:"description" type:"string"` + + // The date and time when the lifecycle policy was last modified. + LastModifiedDate *int64 `locationName:"lastModifiedDate" type:"long"` + + // The name of the lifecycle policy. + Name *string `locationName:"name" min:"3" type:"string"` + + // The version of the lifecycle policy. + PolicyVersion *string `locationName:"policyVersion" min:"20" type:"string"` + + // The type of lifecycle policy. + Type *string `locationName:"type" type:"string" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicySummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LifecyclePolicySummary) GoString() string { + return s.String() +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *LifecyclePolicySummary) SetCreatedDate(v int64) *LifecyclePolicySummary { + s.CreatedDate = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *LifecyclePolicySummary) SetDescription(v string) *LifecyclePolicySummary { + s.Description = &v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *LifecyclePolicySummary) SetLastModifiedDate(v int64) *LifecyclePolicySummary { + s.LastModifiedDate = &v + return s +} + +// SetName sets the Name field's value. +func (s *LifecyclePolicySummary) SetName(v string) *LifecyclePolicySummary { + s.Name = &v + return s +} + +// SetPolicyVersion sets the PolicyVersion field's value. +func (s *LifecyclePolicySummary) SetPolicyVersion(v string) *LifecyclePolicySummary { + s.PolicyVersion = &v + return s +} + +// SetType sets the Type field's value. +func (s *LifecyclePolicySummary) SetType(v string) *LifecyclePolicySummary { + s.Type = &v + return s +} + type ListAccessPoliciesInput struct { _ struct{} `type:"structure"` @@ -5893,7 +7462,7 @@ type ListCollectionsInput struct { _ struct{} `type:"structure"` - // List of filter names and values that you can use for requests. + // A list of filter names and values that you can use for requests. CollectionFilters *CollectionFilters `locationName:"collectionFilters" type:"structure"` // The maximum number of results to return. Default is 20. You can use nextToken @@ -6002,6 +7571,132 @@ return s } +type ListLifecyclePoliciesInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use use nextToken to get the next page of results. The default is + // 10. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If your initial ListLifecyclePolicies operation returns a nextToken, you + // can include the returned nextToken in subsequent ListLifecyclePolicies operations, + // which returns results in the next page. + NextToken *string `locationName:"nextToken" type:"string"` + + // Resource filters that policies can apply to. Currently, the only supported + // resource type is index. + Resources []*string `locationName:"resources" min:"1" type:"list"` + + // The type of lifecycle policy. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLifecyclePoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLifecyclePoliciesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Resources != nil && len(s.Resources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Resources", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListLifecyclePoliciesInput) SetMaxResults(v int64) *ListLifecyclePoliciesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecyclePoliciesInput) SetNextToken(v string) *ListLifecyclePoliciesInput { + s.NextToken = &v + return s +} + +// SetResources sets the Resources field's value. +func (s *ListLifecyclePoliciesInput) SetResources(v []*string) *ListLifecyclePoliciesInput { + s.Resources = v + return s +} + +// SetType sets the Type field's value. +func (s *ListLifecyclePoliciesInput) SetType(v string) *ListLifecyclePoliciesInput { + s.Type = &v + return s +} + +type ListLifecyclePoliciesOutput struct { + _ struct{} `type:"structure"` + + // Details about the requested lifecycle policies. + LifecyclePolicySummaries []*LifecyclePolicySummary `locationName:"lifecyclePolicySummaries" type:"list"` + + // 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 ListLifecyclePoliciesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLifecyclePoliciesOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicySummaries sets the LifecyclePolicySummaries field's value. +func (s *ListLifecyclePoliciesOutput) SetLifecyclePolicySummaries(v []*LifecyclePolicySummary) *ListLifecyclePoliciesOutput { + s.LifecyclePolicySummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLifecyclePoliciesOutput) SetNextToken(v string) *ListLifecyclePoliciesOutput { + s.NextToken = &v + return s +} + type ListSecurityConfigsInput struct { _ struct{} `type:"structure"` @@ -7787,6 +9482,150 @@ return s } +type UpdateLifecyclePolicyInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier to ensure idempotency of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // A description of the lifecycle policy. + Description *string `locationName:"description" type:"string"` + + // The name of the policy. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The JSON policy document to use as the content for the lifecycle policy. + Policy *string `locationName:"policy" min:"1" type:"string"` + + // The version of the policy being updated. + // + // PolicyVersion is a required field + PolicyVersion *string `locationName:"policyVersion" min:"20" type:"string" required:"true"` + + // The type of lifecycle policy. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"LifecyclePolicyType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLifecyclePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLifecyclePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateLifecyclePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateLifecyclePolicyInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.Policy != nil && len(*s.Policy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) + } + if s.PolicyVersion == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyVersion")) + } + if s.PolicyVersion != nil && len(*s.PolicyVersion) < 20 { + invalidParams.Add(request.NewErrParamMinLen("PolicyVersion", 20)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateLifecyclePolicyInput) SetClientToken(v string) *UpdateLifecyclePolicyInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateLifecyclePolicyInput) SetDescription(v string) *UpdateLifecyclePolicyInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateLifecyclePolicyInput) SetName(v string) *UpdateLifecyclePolicyInput { + s.Name = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *UpdateLifecyclePolicyInput) SetPolicy(v string) *UpdateLifecyclePolicyInput { + s.Policy = &v + return s +} + +// SetPolicyVersion sets the PolicyVersion field's value. +func (s *UpdateLifecyclePolicyInput) SetPolicyVersion(v string) *UpdateLifecyclePolicyInput { + s.PolicyVersion = &v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateLifecyclePolicyInput) SetType(v string) *UpdateLifecyclePolicyInput { + s.Type = &v + return s +} + +type UpdateLifecyclePolicyOutput struct { + _ struct{} `type:"structure"` + + // Details about the updated lifecycle policy. + LifecyclePolicyDetail *LifecyclePolicyDetail `locationName:"lifecyclePolicyDetail" 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 UpdateLifecyclePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateLifecyclePolicyOutput) GoString() string { + return s.String() +} + +// SetLifecyclePolicyDetail sets the LifecyclePolicyDetail field's value. +func (s *UpdateLifecyclePolicyOutput) SetLifecyclePolicyDetail(v *LifecyclePolicyDetail) *UpdateLifecyclePolicyOutput { + s.LifecyclePolicyDetail = v + return s +} + type UpdateSecurityConfigInput struct { _ struct{} `type:"structure"` @@ -8631,6 +10470,30 @@ } const ( + // LifecyclePolicyTypeRetention is a LifecyclePolicyType enum value + LifecyclePolicyTypeRetention = "retention" +) + +// LifecyclePolicyType_Values returns all elements of the LifecyclePolicyType enum +func LifecyclePolicyType_Values() []string { + return []string{ + LifecyclePolicyTypeRetention, + } +} + +const ( + // ResourceTypeIndex is a ResourceType enum value + ResourceTypeIndex = "index" +) + +// ResourceType_Values returns all elements of the ResourceType enum +func ResourceType_Values() []string { + return []string{ + ResourceTypeIndex, + } +} + +const ( // SecurityConfigTypeSaml is a SecurityConfigType enum value SecurityConfigTypeSaml = "saml" ) @@ -8658,6 +10521,22 @@ } } +const ( + // StandbyReplicasEnabled is a StandbyReplicas enum value + StandbyReplicasEnabled = "ENABLED" + + // StandbyReplicasDisabled is a StandbyReplicas enum value + StandbyReplicasDisabled = "DISABLED" +) + +// StandbyReplicas_Values returns all elements of the StandbyReplicas enum +func StandbyReplicas_Values() []string { + return []string{ + StandbyReplicasEnabled, + StandbyReplicasDisabled, + } +} + const ( // VpcEndpointStatusPending is a VpcEndpointStatus enum value VpcEndpointStatusPending = "PENDING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/opensearchserverless/opensearchserverlessiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/opensearchserverless/opensearchserverlessiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/opensearchserverless/opensearchserverlessiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/opensearchserverless/opensearchserverlessiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,14 @@ BatchGetCollectionWithContext(aws.Context, *opensearchserverless.BatchGetCollectionInput, ...request.Option) (*opensearchserverless.BatchGetCollectionOutput, error) BatchGetCollectionRequest(*opensearchserverless.BatchGetCollectionInput) (*request.Request, *opensearchserverless.BatchGetCollectionOutput) + BatchGetEffectiveLifecyclePolicy(*opensearchserverless.BatchGetEffectiveLifecyclePolicyInput) (*opensearchserverless.BatchGetEffectiveLifecyclePolicyOutput, error) + BatchGetEffectiveLifecyclePolicyWithContext(aws.Context, *opensearchserverless.BatchGetEffectiveLifecyclePolicyInput, ...request.Option) (*opensearchserverless.BatchGetEffectiveLifecyclePolicyOutput, error) + BatchGetEffectiveLifecyclePolicyRequest(*opensearchserverless.BatchGetEffectiveLifecyclePolicyInput) (*request.Request, *opensearchserverless.BatchGetEffectiveLifecyclePolicyOutput) + + BatchGetLifecyclePolicy(*opensearchserverless.BatchGetLifecyclePolicyInput) (*opensearchserverless.BatchGetLifecyclePolicyOutput, error) + BatchGetLifecyclePolicyWithContext(aws.Context, *opensearchserverless.BatchGetLifecyclePolicyInput, ...request.Option) (*opensearchserverless.BatchGetLifecyclePolicyOutput, error) + BatchGetLifecyclePolicyRequest(*opensearchserverless.BatchGetLifecyclePolicyInput) (*request.Request, *opensearchserverless.BatchGetLifecyclePolicyOutput) + BatchGetVpcEndpoint(*opensearchserverless.BatchGetVpcEndpointInput) (*opensearchserverless.BatchGetVpcEndpointOutput, error) BatchGetVpcEndpointWithContext(aws.Context, *opensearchserverless.BatchGetVpcEndpointInput, ...request.Option) (*opensearchserverless.BatchGetVpcEndpointOutput, error) BatchGetVpcEndpointRequest(*opensearchserverless.BatchGetVpcEndpointInput) (*request.Request, *opensearchserverless.BatchGetVpcEndpointOutput) @@ -76,6 +84,10 @@ CreateCollectionWithContext(aws.Context, *opensearchserverless.CreateCollectionInput, ...request.Option) (*opensearchserverless.CreateCollectionOutput, error) CreateCollectionRequest(*opensearchserverless.CreateCollectionInput) (*request.Request, *opensearchserverless.CreateCollectionOutput) + CreateLifecyclePolicy(*opensearchserverless.CreateLifecyclePolicyInput) (*opensearchserverless.CreateLifecyclePolicyOutput, error) + CreateLifecyclePolicyWithContext(aws.Context, *opensearchserverless.CreateLifecyclePolicyInput, ...request.Option) (*opensearchserverless.CreateLifecyclePolicyOutput, error) + CreateLifecyclePolicyRequest(*opensearchserverless.CreateLifecyclePolicyInput) (*request.Request, *opensearchserverless.CreateLifecyclePolicyOutput) + CreateSecurityConfig(*opensearchserverless.CreateSecurityConfigInput) (*opensearchserverless.CreateSecurityConfigOutput, error) CreateSecurityConfigWithContext(aws.Context, *opensearchserverless.CreateSecurityConfigInput, ...request.Option) (*opensearchserverless.CreateSecurityConfigOutput, error) CreateSecurityConfigRequest(*opensearchserverless.CreateSecurityConfigInput) (*request.Request, *opensearchserverless.CreateSecurityConfigOutput) @@ -96,6 +108,10 @@ DeleteCollectionWithContext(aws.Context, *opensearchserverless.DeleteCollectionInput, ...request.Option) (*opensearchserverless.DeleteCollectionOutput, error) DeleteCollectionRequest(*opensearchserverless.DeleteCollectionInput) (*request.Request, *opensearchserverless.DeleteCollectionOutput) + DeleteLifecyclePolicy(*opensearchserverless.DeleteLifecyclePolicyInput) (*opensearchserverless.DeleteLifecyclePolicyOutput, error) + DeleteLifecyclePolicyWithContext(aws.Context, *opensearchserverless.DeleteLifecyclePolicyInput, ...request.Option) (*opensearchserverless.DeleteLifecyclePolicyOutput, error) + DeleteLifecyclePolicyRequest(*opensearchserverless.DeleteLifecyclePolicyInput) (*request.Request, *opensearchserverless.DeleteLifecyclePolicyOutput) + DeleteSecurityConfig(*opensearchserverless.DeleteSecurityConfigInput) (*opensearchserverless.DeleteSecurityConfigOutput, error) DeleteSecurityConfigWithContext(aws.Context, *opensearchserverless.DeleteSecurityConfigInput, ...request.Option) (*opensearchserverless.DeleteSecurityConfigOutput, error) DeleteSecurityConfigRequest(*opensearchserverless.DeleteSecurityConfigInput) (*request.Request, *opensearchserverless.DeleteSecurityConfigOutput) @@ -142,6 +158,13 @@ ListCollectionsPages(*opensearchserverless.ListCollectionsInput, func(*opensearchserverless.ListCollectionsOutput, bool) bool) error ListCollectionsPagesWithContext(aws.Context, *opensearchserverless.ListCollectionsInput, func(*opensearchserverless.ListCollectionsOutput, bool) bool, ...request.Option) error + ListLifecyclePolicies(*opensearchserverless.ListLifecyclePoliciesInput) (*opensearchserverless.ListLifecyclePoliciesOutput, error) + ListLifecyclePoliciesWithContext(aws.Context, *opensearchserverless.ListLifecyclePoliciesInput, ...request.Option) (*opensearchserverless.ListLifecyclePoliciesOutput, error) + ListLifecyclePoliciesRequest(*opensearchserverless.ListLifecyclePoliciesInput) (*request.Request, *opensearchserverless.ListLifecyclePoliciesOutput) + + ListLifecyclePoliciesPages(*opensearchserverless.ListLifecyclePoliciesInput, func(*opensearchserverless.ListLifecyclePoliciesOutput, bool) bool) error + ListLifecyclePoliciesPagesWithContext(aws.Context, *opensearchserverless.ListLifecyclePoliciesInput, func(*opensearchserverless.ListLifecyclePoliciesOutput, bool) bool, ...request.Option) error + ListSecurityConfigs(*opensearchserverless.ListSecurityConfigsInput) (*opensearchserverless.ListSecurityConfigsOutput, error) ListSecurityConfigsWithContext(aws.Context, *opensearchserverless.ListSecurityConfigsInput, ...request.Option) (*opensearchserverless.ListSecurityConfigsOutput, error) ListSecurityConfigsRequest(*opensearchserverless.ListSecurityConfigsInput) (*request.Request, *opensearchserverless.ListSecurityConfigsOutput) @@ -187,6 +210,10 @@ UpdateCollectionWithContext(aws.Context, *opensearchserverless.UpdateCollectionInput, ...request.Option) (*opensearchserverless.UpdateCollectionOutput, error) UpdateCollectionRequest(*opensearchserverless.UpdateCollectionInput) (*request.Request, *opensearchserverless.UpdateCollectionOutput) + UpdateLifecyclePolicy(*opensearchserverless.UpdateLifecyclePolicyInput) (*opensearchserverless.UpdateLifecyclePolicyOutput, error) + UpdateLifecyclePolicyWithContext(aws.Context, *opensearchserverless.UpdateLifecyclePolicyInput, ...request.Option) (*opensearchserverless.UpdateLifecyclePolicyOutput, error) + UpdateLifecyclePolicyRequest(*opensearchserverless.UpdateLifecyclePolicyInput) (*request.Request, *opensearchserverless.UpdateLifecyclePolicyOutput) + UpdateSecurityConfig(*opensearchserverless.UpdateSecurityConfigInput) (*opensearchserverless.UpdateSecurityConfigOutput, error) UpdateSecurityConfigWithContext(aws.Context, *opensearchserverless.UpdateSecurityConfigInput, ...request.Option) (*opensearchserverless.UpdateSecurityConfigOutput, error) UpdateSecurityConfigRequest(*opensearchserverless.UpdateSecurityConfigInput) (*request.Request, *opensearchserverless.UpdateSecurityConfigOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/opensearchservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/opensearchservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/opensearchservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/opensearchservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -101,6 +101,106 @@ return out, req.Send() } +const opAddDataSource = "AddDataSource" + +// AddDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the AddDataSource 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 AddDataSource for more information on using the AddDataSource +// 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 AddDataSourceRequest method. +// req, resp := client.AddDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/AddDataSource +func (c *OpenSearchService) AddDataSourceRequest(input *AddDataSourceInput) (req *request.Request, output *AddDataSourceOutput) { + op := &request.Operation{ + Name: opAddDataSource, + HTTPMethod: "POST", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/dataSource", + } + + if input == nil { + input = &AddDataSourceInput{} + } + + output = &AddDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// AddDataSource API operation for Amazon OpenSearch Service. +// +// Adds the data source on the domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation AddDataSource for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// - DependencyFailureException +// An exception for when a failure in one of the dependencies results in the +// service being unable to fetch details about the resource. +// +// - LimitExceededException +// An exception for trying to create more than the allowed number of resources +// or sub-resources. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/AddDataSource +func (c *OpenSearchService) AddDataSource(input *AddDataSourceInput) (*AddDataSourceOutput, error) { + req, out := c.AddDataSourceRequest(input) + return out, req.Send() +} + +// AddDataSourceWithContext is the same as AddDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See AddDataSource 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 *OpenSearchService) AddDataSourceWithContext(ctx aws.Context, input *AddDataSourceInput, opts ...request.Option) (*AddDataSourceOutput, error) { + req, out := c.AddDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the @@ -871,6 +971,102 @@ return out, req.Send() } +const opDeleteDataSource = "DeleteDataSource" + +// DeleteDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDataSource 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 DeleteDataSource for more information on using the DeleteDataSource +// 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 DeleteDataSourceRequest method. +// req, resp := client.DeleteDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/DeleteDataSource +func (c *OpenSearchService) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) { + op := &request.Operation{ + Name: opDeleteDataSource, + HTTPMethod: "DELETE", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{DataSourceName}", + } + + if input == nil { + input = &DeleteDataSourceInput{} + } + + output = &DeleteDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDataSource API operation for Amazon OpenSearch Service. +// +// Deletes the data source. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation DeleteDataSource for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// - DependencyFailureException +// An exception for when a failure in one of the dependencies results in the +// service being unable to fetch details about the resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/DeleteDataSource +func (c *OpenSearchService) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + return out, req.Send() +} + +// DeleteDataSourceWithContext is the same as DeleteDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDataSource 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 *OpenSearchService) DeleteDataSourceWithContext(ctx aws.Context, input *DeleteDataSourceInput, opts ...request.Option) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDomain = "DeleteDomain" // DeleteDomainRequest generates a "aws/request.Request" representing the @@ -3213,6 +3409,194 @@ return out, req.Send() } +const opGetDataSource = "GetDataSource" + +// GetDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSource 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 GetDataSource for more information on using the GetDataSource +// 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 GetDataSourceRequest method. +// req, resp := client.GetDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/GetDataSource +func (c *OpenSearchService) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) { + op := &request.Operation{ + Name: opGetDataSource, + HTTPMethod: "GET", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{DataSourceName}", + } + + if input == nil { + input = &GetDataSourceInput{} + } + + output = &GetDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSource API operation for Amazon OpenSearch Service. +// +// Describes the data source details. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation GetDataSource for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// - DependencyFailureException +// An exception for when a failure in one of the dependencies results in the +// service being unable to fetch details about the resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/GetDataSource +func (c *OpenSearchService) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + return out, req.Send() +} + +// GetDataSourceWithContext is the same as GetDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSource 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 *OpenSearchService) GetDataSourceWithContext(ctx aws.Context, input *GetDataSourceInput, opts ...request.Option) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDomainMaintenanceStatus = "GetDomainMaintenanceStatus" + +// GetDomainMaintenanceStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetDomainMaintenanceStatus 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 GetDomainMaintenanceStatus for more information on using the GetDomainMaintenanceStatus +// 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 GetDomainMaintenanceStatusRequest method. +// req, resp := client.GetDomainMaintenanceStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/GetDomainMaintenanceStatus +func (c *OpenSearchService) GetDomainMaintenanceStatusRequest(input *GetDomainMaintenanceStatusInput) (req *request.Request, output *GetDomainMaintenanceStatusOutput) { + op := &request.Operation{ + Name: opGetDomainMaintenanceStatus, + HTTPMethod: "GET", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/domainMaintenance", + } + + if input == nil { + input = &GetDomainMaintenanceStatusInput{} + } + + output = &GetDomainMaintenanceStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDomainMaintenanceStatus API operation for Amazon OpenSearch Service. +// +// The status of the maintenance action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation GetDomainMaintenanceStatus for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/GetDomainMaintenanceStatus +func (c *OpenSearchService) GetDomainMaintenanceStatus(input *GetDomainMaintenanceStatusInput) (*GetDomainMaintenanceStatusOutput, error) { + req, out := c.GetDomainMaintenanceStatusRequest(input) + return out, req.Send() +} + +// GetDomainMaintenanceStatusWithContext is the same as GetDomainMaintenanceStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetDomainMaintenanceStatus 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 *OpenSearchService) GetDomainMaintenanceStatusWithContext(ctx aws.Context, input *GetDomainMaintenanceStatusInput, opts ...request.Option) (*GetDomainMaintenanceStatusOutput, error) { + req, out := c.GetDomainMaintenanceStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetPackageVersionHistory = "GetPackageVersionHistory" // GetPackageVersionHistoryRequest generates a "aws/request.Request" representing the @@ -3608,6 +3992,251 @@ return out, req.Send() } +const opListDataSources = "ListDataSources" + +// ListDataSourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSources 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 ListDataSources for more information on using the ListDataSources +// 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 ListDataSourcesRequest method. +// req, resp := client.ListDataSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/ListDataSources +func (c *OpenSearchService) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { + op := &request.Operation{ + Name: opListDataSources, + HTTPMethod: "GET", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/dataSource", + } + + if input == nil { + input = &ListDataSourcesInput{} + } + + output = &ListDataSourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSources API operation for Amazon OpenSearch Service. +// +// A list of the data source details of the domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation ListDataSources for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// - DependencyFailureException +// An exception for when a failure in one of the dependencies results in the +// service being unable to fetch details about the resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/ListDataSources +func (c *OpenSearchService) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + return out, req.Send() +} + +// ListDataSourcesWithContext is the same as ListDataSources with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSources 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 *OpenSearchService) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDomainMaintenances = "ListDomainMaintenances" + +// ListDomainMaintenancesRequest generates a "aws/request.Request" representing the +// client's request for the ListDomainMaintenances 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 ListDomainMaintenances for more information on using the ListDomainMaintenances +// 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 ListDomainMaintenancesRequest method. +// req, resp := client.ListDomainMaintenancesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/ListDomainMaintenances +func (c *OpenSearchService) ListDomainMaintenancesRequest(input *ListDomainMaintenancesInput) (req *request.Request, output *ListDomainMaintenancesOutput) { + op := &request.Operation{ + Name: opListDomainMaintenances, + HTTPMethod: "GET", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/domainMaintenances", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDomainMaintenancesInput{} + } + + output = &ListDomainMaintenancesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDomainMaintenances API operation for Amazon OpenSearch Service. +// +// A list of maintenance actions for the domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation ListDomainMaintenances for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/ListDomainMaintenances +func (c *OpenSearchService) ListDomainMaintenances(input *ListDomainMaintenancesInput) (*ListDomainMaintenancesOutput, error) { + req, out := c.ListDomainMaintenancesRequest(input) + return out, req.Send() +} + +// ListDomainMaintenancesWithContext is the same as ListDomainMaintenances with the addition of +// the ability to pass a context and additional request options. +// +// See ListDomainMaintenances 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 *OpenSearchService) ListDomainMaintenancesWithContext(ctx aws.Context, input *ListDomainMaintenancesInput, opts ...request.Option) (*ListDomainMaintenancesOutput, error) { + req, out := c.ListDomainMaintenancesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDomainMaintenancesPages iterates over the pages of a ListDomainMaintenances operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDomainMaintenances 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 ListDomainMaintenances operation. +// pageNum := 0 +// err := client.ListDomainMaintenancesPages(params, +// func(page *opensearchservice.ListDomainMaintenancesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *OpenSearchService) ListDomainMaintenancesPages(input *ListDomainMaintenancesInput, fn func(*ListDomainMaintenancesOutput, bool) bool) error { + return c.ListDomainMaintenancesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDomainMaintenancesPagesWithContext same as ListDomainMaintenancesPages 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 *OpenSearchService) ListDomainMaintenancesPagesWithContext(ctx aws.Context, input *ListDomainMaintenancesInput, fn func(*ListDomainMaintenancesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDomainMaintenancesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDomainMaintenancesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDomainMaintenancesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDomainNames = "ListDomainNames" // ListDomainNamesRequest generates a "aws/request.Request" representing the @@ -5155,6 +5784,100 @@ return out, req.Send() } +const opStartDomainMaintenance = "StartDomainMaintenance" + +// StartDomainMaintenanceRequest generates a "aws/request.Request" representing the +// client's request for the StartDomainMaintenance 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 StartDomainMaintenance for more information on using the StartDomainMaintenance +// 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 StartDomainMaintenanceRequest method. +// req, resp := client.StartDomainMaintenanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/StartDomainMaintenance +func (c *OpenSearchService) StartDomainMaintenanceRequest(input *StartDomainMaintenanceInput) (req *request.Request, output *StartDomainMaintenanceOutput) { + op := &request.Operation{ + Name: opStartDomainMaintenance, + HTTPMethod: "POST", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/domainMaintenance", + } + + if input == nil { + input = &StartDomainMaintenanceInput{} + } + + output = &StartDomainMaintenanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDomainMaintenance API operation for Amazon OpenSearch Service. +// +// Starts the node maintenance process on the data node. These processes can +// include a node reboot, an Opensearch or Elasticsearch process restart, or +// a Dashboard or Kibana restart. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation StartDomainMaintenance for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/StartDomainMaintenance +func (c *OpenSearchService) StartDomainMaintenance(input *StartDomainMaintenanceInput) (*StartDomainMaintenanceOutput, error) { + req, out := c.StartDomainMaintenanceRequest(input) + return out, req.Send() +} + +// StartDomainMaintenanceWithContext is the same as StartDomainMaintenance with the addition of +// the ability to pass a context and additional request options. +// +// See StartDomainMaintenance 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 *OpenSearchService) StartDomainMaintenanceWithContext(ctx aws.Context, input *StartDomainMaintenanceInput, opts ...request.Option) (*StartDomainMaintenanceOutput, error) { + req, out := c.StartDomainMaintenanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartServiceSoftwareUpdate = "StartServiceSoftwareUpdate" // StartServiceSoftwareUpdateRequest generates a "aws/request.Request" representing the @@ -5246,6 +5969,102 @@ return out, req.Send() } +const opUpdateDataSource = "UpdateDataSource" + +// UpdateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSource 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 UpdateDataSource for more information on using the UpdateDataSource +// 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 UpdateDataSourceRequest method. +// req, resp := client.UpdateDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/UpdateDataSource +func (c *OpenSearchService) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { + op := &request.Operation{ + Name: opUpdateDataSource, + HTTPMethod: "PUT", + HTTPPath: "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{DataSourceName}", + } + + if input == nil { + input = &UpdateDataSourceInput{} + } + + output = &UpdateDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDataSource API operation for Amazon OpenSearch Service. +// +// Updates the data source on the domain. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon OpenSearch Service's +// API operation UpdateDataSource for usage and error information. +// +// Returned Error Types: +// +// - BaseException +// An error occurred while processing the request. +// +// - InternalException +// Request processing failed because of an unknown error, exception, or internal +// failure. +// +// - ResourceNotFoundException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - ValidationException +// An exception for accessing or deleting a resource that doesn't exist. +// +// - DisabledOperationException +// An error occured because the client wanted to access an unsupported operation. +// +// - DependencyFailureException +// An exception for when a failure in one of the dependencies results in the +// service being unable to fetch details about the resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/UpdateDataSource +func (c *OpenSearchService) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + return out, req.Send() +} + +// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDataSource 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 *OpenSearchService) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateDomainConfig = "UpdateDomainConfig" // UpdateDomainConfigRequest generates a "aws/request.Request" representing the @@ -5290,7 +6109,7 @@ // UpdateDomainConfig API operation for Amazon OpenSearch Service. // // Modifies the cluster configuration of the specified Amazon OpenSearch Service -// domain.sl +// domain. // // 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 @@ -6004,6 +6823,133 @@ return s } +// Container for the parameters to the AddDataSource operation. +type AddDataSourceInput struct { + _ struct{} `type:"structure"` + + // The type of data source. + // + // DataSourceType is a required field + DataSourceType *DataSourceType `type:"structure" required:"true"` + + // A description of the data source. + Description *string `type:"string"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // The name of the data source. + // + // Name is a required field + Name *string `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 AddDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AddDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AddDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AddDataSourceInput"} + if s.DataSourceType == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceType")) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.DataSourceType != nil { + if err := s.DataSourceType.Validate(); err != nil { + invalidParams.AddNested("DataSourceType", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceType sets the DataSourceType field's value. +func (s *AddDataSourceInput) SetDataSourceType(v *DataSourceType) *AddDataSourceInput { + s.DataSourceType = v + return s +} + +// SetDescription sets the Description field's value. +func (s *AddDataSourceInput) SetDescription(v string) *AddDataSourceInput { + s.Description = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *AddDataSourceInput) SetDomainName(v string) *AddDataSourceInput { + s.DomainName = &v + return s +} + +// SetName sets the Name field's value. +func (s *AddDataSourceInput) SetName(v string) *AddDataSourceInput { + s.Name = &v + return s +} + +// The result of an AddDataSource operation. +type AddDataSourceOutput struct { + _ struct{} `type:"structure"` + + // A message associated with the data source. + 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 AddDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AddDataSourceOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *AddDataSourceOutput) SetMessage(v string) *AddDataSourceOutput { + s.Message = &v + return s +} + // Container for the parameters to the AddTags operation. Specifies the tags // to attach to the domain. type AddTagsInput struct { @@ -7596,8 +8542,8 @@ // OpenSearch Service instance type of the dedicated master nodes in the cluster. DedicatedMasterType *string `type:"string" enum:"OpenSearchPartitionInstanceType"` - // Number of dedicated master nodes in the cluster. This number must be greater - // than 1, otherwise you receive a validation exception. + // Number of data nodes in the cluster. This number must be greater than 1, + // otherwise you receive a validation exception. InstanceCount *int64 `type:"integer"` // Instance type of data nodes in the cluster. @@ -8176,6 +9122,9 @@ // OpenSearch Service domains (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomains). EngineVersion *string `min:"14" type:"string"` + // The type of IP addresses supported by the endpoint for the domain. + IPAddressType *string `type:"string" enum:"IPAddressType"` + // Key-value pairs to configure log publishing. LogPublishingOptions map[string]*LogPublishingOption `type:"map"` @@ -8364,6 +9313,12 @@ return s } +// SetIPAddressType sets the IPAddressType field's value. +func (s *CreateDomainInput) SetIPAddressType(v string) *CreateDomainInput { + s.IPAddressType = &v + return s +} + // SetLogPublishingOptions sets the LogPublishingOptions field's value. func (s *CreateDomainInput) SetLogPublishingOptions(v map[string]*LogPublishingOption) *CreateDomainInput { s.LogPublishingOptions = v @@ -8865,11 +9820,14 @@ return s } -// Cross cluster search specific connection properties. +// Cross-cluster search specific connection properties. type CrossClusterSearchConnectionProperties struct { _ struct{} `type:"structure"` - // Status of SkipUnavailable param for outbound connection. + // The status of the SkipUnavailable setting for the outbound connection. This + // feature allows you to specify some clusters as optional and ensure that your + // cross-cluster queries return partial results despite failures on one or more + // remote clusters. SkipUnavailable *string `type:"string" enum:"SkipUnavailableStatus"` } @@ -8897,6 +9855,202 @@ return s } +// Details about the data sources. +type DataSourceDetails struct { + _ struct{} `type:"structure"` + + // The type of data source. + DataSourceType *DataSourceType `type:"structure"` + + // A description of the data source. + Description *string `type:"string"` + + // The name of the data source. + Name *string `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 DataSourceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceDetails) GoString() string { + return s.String() +} + +// SetDataSourceType sets the DataSourceType field's value. +func (s *DataSourceDetails) SetDataSourceType(v *DataSourceType) *DataSourceDetails { + s.DataSourceType = v + return s +} + +// SetDescription sets the Description field's value. +func (s *DataSourceDetails) SetDescription(v string) *DataSourceDetails { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceDetails) SetName(v string) *DataSourceDetails { + s.Name = &v + return s +} + +// Information about the data source. +type DataSourceType struct { + _ struct{} `type:"structure"` + + // The data source for the AWS S3 Glue Data Catalog. + S3GlueDataCatalog *S3GlueDataCatalog `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 DataSourceType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceType) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSourceType) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceType"} + if s.S3GlueDataCatalog != nil { + if err := s.S3GlueDataCatalog.Validate(); err != nil { + invalidParams.AddNested("S3GlueDataCatalog", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3GlueDataCatalog sets the S3GlueDataCatalog field's value. +func (s *DataSourceType) SetS3GlueDataCatalog(v *S3GlueDataCatalog) *DataSourceType { + s.S3GlueDataCatalog = v + return s +} + +// Container for the parameters to the DeleteDataSource operation. +type DeleteDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // The name of the data source. + // + // Name is a required field + Name *string `location:"uri" locationName:"DataSourceName" 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 DeleteDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DeleteDataSourceInput) SetDomainName(v string) *DeleteDataSourceInput { + s.DomainName = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteDataSourceInput) SetName(v string) *DeleteDataSourceInput { + s.Name = &v + return s +} + +// The result of a GetDataSource operation. +type DeleteDataSourceOutput struct { + _ struct{} `type:"structure"` + + // A message associated with the initiated request. + 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 DeleteDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *DeleteDataSourceOutput) SetMessage(v string) *DeleteDataSourceOutput { + s.Message = &v + return s +} + // Container for the parameters to the DeleteDomain operation. type DeleteDomainInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10065,8 +11219,7 @@ _ struct{} `type:"structure"` // Array of OpenSearch Service domain names that you want information about. - // If you don't specify any domains, OpenSearch Service returns information - // about all domains owned by the account. + // You must specify at least one domain name. // // DomainNames is a required field DomainNames []*string `type:"list" required:"true"` @@ -10619,7 +11772,7 @@ Name *string `type:"string" enum:"DescribePackagesFilterName"` // A non-empty list of values for the specified filter field. - Value []*string `type:"list"` + Value []*string `min:"1" type:"list"` } // String returns the string representation. @@ -10640,6 +11793,19 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribePackagesFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribePackagesFilter"} + if s.Value != nil && len(s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetName sets the Name field's value. func (s *DescribePackagesFilter) SetName(v string) *DescribePackagesFilter { s.Name = &v @@ -10687,6 +11853,26 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribePackagesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribePackagesInput"} + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetFilters sets the Filters field's value. func (s *DescribePackagesInput) SetFilters(v []*DescribePackagesFilter) *DescribePackagesInput { s.Filters = v @@ -11264,6 +12450,9 @@ // The OpenSearch or Elasticsearch version that the domain is running. EngineVersion *VersionStatus `type:"structure"` + // The type of IP addresses supported by the endpoint for the domain. + IPAddressType *IPAddressTypeStatus `type:"structure"` + // Key-value pairs to configure log publishing. LogPublishingOptions *LogPublishingOptionsStatus `type:"structure"` @@ -11369,6 +12558,12 @@ return s } +// SetIPAddressType sets the IPAddressType field's value. +func (s *DomainConfig) SetIPAddressType(v *IPAddressTypeStatus) *DomainConfig { + s.IPAddressType = v + return s +} + // SetLogPublishingOptions sets the LogPublishingOptions field's value. func (s *DomainConfig) SetLogPublishingOptions(v *LogPublishingOptionsStatus) *DomainConfig { s.LogPublishingOptions = v @@ -11423,14 +12618,19 @@ EnforceHTTPS *bool `type:"boolean"` // Specify the TLS security policy to apply to the HTTPS endpoint of the domain. - // - // Can be one of the following values: + // The policy can be one of the following values: // // * Policy-Min-TLS-1-0-2019-07: TLS security policy which supports TLS version - // 1.0 and higher. + // 1.0 to TLS version 1.2 // // * Policy-Min-TLS-1-2-2019-07: TLS security policy which supports only // TLS version 1.2 + // + // * Policy-Min-TLS-1-0-2023-10: TLS security policy which supports TLS version + // 1.0 to TLS version 1.3 + // + // * Policy-Min-TLS-1-2-2023-10: TLS security policy which supports TLS version + // 1.2 to TLS version 1.3 with perfect forward secrecy cipher suites TLSSecurityPolicy *string `type:"string" enum:"TLSSecurityPolicy"` } @@ -11632,6 +12832,101 @@ return s } +// Container for the domain maintenance details. +type DomainMaintenanceDetails struct { + _ struct{} `type:"structure"` + + // The name of the action. + Action *string `type:"string" enum:"MaintenanceType"` + + // The time at which the action was created. + CreatedAt *time.Time `type:"timestamp"` + + // The name of the domain. + DomainName *string `min:"3" type:"string"` + + // The ID of the requested action. + MaintenanceId *string `min:"1" type:"string"` + + // The ID of the data node. + NodeId *string `min:"10" type:"string"` + + // The status of the action. + Status *string `type:"string" enum:"MaintenanceStatus"` + + // The status message for the action. + StatusMessage *string `type:"string"` + + // The time at which the action was updated. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DomainMaintenanceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DomainMaintenanceDetails) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *DomainMaintenanceDetails) SetAction(v string) *DomainMaintenanceDetails { + s.Action = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DomainMaintenanceDetails) SetCreatedAt(v time.Time) *DomainMaintenanceDetails { + s.CreatedAt = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *DomainMaintenanceDetails) SetDomainName(v string) *DomainMaintenanceDetails { + s.DomainName = &v + return s +} + +// SetMaintenanceId sets the MaintenanceId field's value. +func (s *DomainMaintenanceDetails) SetMaintenanceId(v string) *DomainMaintenanceDetails { + s.MaintenanceId = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *DomainMaintenanceDetails) SetNodeId(v string) *DomainMaintenanceDetails { + s.NodeId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DomainMaintenanceDetails) SetStatus(v string) *DomainMaintenanceDetails { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *DomainMaintenanceDetails) SetStatusMessage(v string) *DomainMaintenanceDetails { + s.StatusMessage = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DomainMaintenanceDetails) SetUpdatedAt(v time.Time) *DomainMaintenanceDetails { + s.UpdatedAt = &v + return s +} + // Container for information about nodes on the domain. type DomainNodesStatus struct { _ struct{} `type:"structure"` @@ -11904,6 +13199,10 @@ // to the domain. Endpoint *string `type:"string"` + // The domain endpoint to which index and search requests are submitted. For + // example, search-imdb-movies-oopcnjfn6ugo.eu-west-1.es.amazonaws.com or doc-imdb-movies-oopcnjfn6u.eu-west-1.es.amazonaws.com. + EndpointV2 *string `type:"string"` + // The key-value pair that exists if the OpenSearch Service domain uses VPC // endpoints.. Example key, value: 'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'. Endpoints map[string]*string `type:"map"` @@ -11912,6 +13211,9 @@ // format Elasticsearch_X.Y or OpenSearch_X.Y. EngineVersion *string `min:"14" type:"string"` + // The type of IP addresses supported by the endpoint for the domain. + IPAddressType *string `type:"string" enum:"IPAddressType"` + // Log publishing options for the domain. LogPublishingOptions map[string]*LogPublishingOption `type:"map"` @@ -12059,6 +13361,12 @@ return s } +// SetEndpointV2 sets the EndpointV2 field's value. +func (s *DomainStatus) SetEndpointV2(v string) *DomainStatus { + s.EndpointV2 = &v + return s +} + // SetEndpoints sets the Endpoints field's value. func (s *DomainStatus) SetEndpoints(v map[string]*string) *DomainStatus { s.Endpoints = v @@ -12071,6 +13379,12 @@ return s } +// SetIPAddressType sets the IPAddressType field's value. +func (s *DomainStatus) SetIPAddressType(v string) *DomainStatus { + s.IPAddressType = &v + return s +} + // SetLogPublishingOptions sets the LogPublishingOptions field's value. func (s *DomainStatus) SetLogPublishingOptions(v map[string]*LogPublishingOption) *DomainStatus { s.LogPublishingOptions = v @@ -12739,6 +14053,268 @@ return s } +// Container for the parameters to the GetDataSource operation. +type GetDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // The name of the data source. + // + // Name is a required field + Name *string `location:"uri" locationName:"DataSourceName" 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 GetDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *GetDataSourceInput) SetDomainName(v string) *GetDataSourceInput { + s.DomainName = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetDataSourceInput) SetName(v string) *GetDataSourceInput { + s.Name = &v + return s +} + +// The result of a GetDataSource operation. +type GetDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The type of data source. + DataSourceType *DataSourceType `type:"structure"` + + // A description of the data source. + Description *string `type:"string"` + + // The name of the data source. + Name *string `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 GetDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceOutput) GoString() string { + return s.String() +} + +// SetDataSourceType sets the DataSourceType field's value. +func (s *GetDataSourceOutput) SetDataSourceType(v *DataSourceType) *GetDataSourceOutput { + s.DataSourceType = v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetDataSourceOutput) SetDescription(v string) *GetDataSourceOutput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetDataSourceOutput) SetName(v string) *GetDataSourceOutput { + s.Name = &v + return s +} + +// Container for the parameters to the GetDomainMaintenanceStatus operation. +type GetDomainMaintenanceStatusInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // The request ID of the maintenance action. + // + // MaintenanceId is a required field + MaintenanceId *string `location:"querystring" locationName:"maintenanceId" 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 GetDomainMaintenanceStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainMaintenanceStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDomainMaintenanceStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDomainMaintenanceStatusInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.MaintenanceId == nil { + invalidParams.Add(request.NewErrParamRequired("MaintenanceId")) + } + if s.MaintenanceId != nil && len(*s.MaintenanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MaintenanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *GetDomainMaintenanceStatusInput) SetDomainName(v string) *GetDomainMaintenanceStatusInput { + s.DomainName = &v + return s +} + +// SetMaintenanceId sets the MaintenanceId field's value. +func (s *GetDomainMaintenanceStatusInput) SetMaintenanceId(v string) *GetDomainMaintenanceStatusInput { + s.MaintenanceId = &v + return s +} + +// The result of a GetDomainMaintenanceStatus request that information about +// the requested action. +type GetDomainMaintenanceStatusOutput struct { + _ struct{} `type:"structure"` + + // The action name. + Action *string `type:"string" enum:"MaintenanceType"` + + // The time at which the action was created. + CreatedAt *time.Time `type:"timestamp"` + + // The node ID of the maintenance action. + NodeId *string `min:"10" type:"string"` + + // The status of the maintenance action. + Status *string `type:"string" enum:"MaintenanceStatus"` + + // The status message of the maintenance action. + StatusMessage *string `type:"string"` + + // The time at which the action was updated. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainMaintenanceStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDomainMaintenanceStatusOutput) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *GetDomainMaintenanceStatusOutput) SetAction(v string) *GetDomainMaintenanceStatusOutput { + s.Action = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetDomainMaintenanceStatusOutput) SetCreatedAt(v time.Time) *GetDomainMaintenanceStatusOutput { + s.CreatedAt = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *GetDomainMaintenanceStatusOutput) SetNodeId(v string) *GetDomainMaintenanceStatusOutput { + s.NodeId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDomainMaintenanceStatusOutput) SetStatus(v string) *GetDomainMaintenanceStatusOutput { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *GetDomainMaintenanceStatusOutput) SetStatusMessage(v string) *GetDomainMaintenanceStatusOutput { + s.StatusMessage = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetDomainMaintenanceStatusOutput) SetUpdatedAt(v time.Time) *GetDomainMaintenanceStatusOutput { + s.UpdatedAt = &v + return s +} + // Container for the request parameters to the GetPackageVersionHistory operation. type GetPackageVersionHistoryInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -13077,6 +14653,51 @@ return s } +// The IP address type status for the domain. +type IPAddressTypeStatus struct { + _ struct{} `type:"structure"` + + // The IP address options for the domain. + // + // Options is a required field + Options *string `type:"string" required:"true" enum:"IPAddressType"` + + // Provides the current status of an entity. + // + // Status is a required field + Status *OptionStatus `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 IPAddressTypeStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IPAddressTypeStatus) GoString() string { + return s.String() +} + +// SetOptions sets the Options field's value. +func (s *IPAddressTypeStatus) SetOptions(v string) *IPAddressTypeStatus { + s.Options = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *IPAddressTypeStatus) SetStatus(v *OptionStatus) *IPAddressTypeStatus { + s.Status = v + return s +} + // Describes an inbound cross-cluster connection for Amazon OpenSearch Service. // For more information, see Cross-cluster search for Amazon OpenSearch Service // (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html). @@ -13689,6 +15310,221 @@ return s } +// Container for the parameters to the ListDataSources operation. +type ListDataSourcesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *ListDataSourcesInput) SetDomainName(v string) *ListDataSourcesInput { + s.DomainName = &v + return s +} + +// The result of a ListDataSources operation. +type ListDataSourcesOutput struct { + _ struct{} `type:"structure"` + + // A list of the data sources. + DataSources []*DataSourceDetails `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 ListDataSourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) GoString() string { + return s.String() +} + +// SetDataSources sets the DataSources field's value. +func (s *ListDataSourcesOutput) SetDataSources(v []*DataSourceDetails) *ListDataSourcesOutput { + s.DataSources = v + return s +} + +// Container for the parameters to the ListDomainMaintenances operation. +type ListDomainMaintenancesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the action. + Action *string `location:"querystring" locationName:"action" type:"string" enum:"MaintenanceType"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // 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 `location:"querystring" locationName:"maxResults" type:"integer"` + + // If your initial ListDomainMaintenances operation returns a nextToken, include + // the returned nextToken in subsequent ListDomainMaintenances operations, which + // returns results in the next page. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The status of the action. + Status *string `location:"querystring" locationName:"status" type:"string" enum:"MaintenanceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainMaintenancesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainMaintenancesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDomainMaintenancesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDomainMaintenancesInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *ListDomainMaintenancesInput) SetAction(v string) *ListDomainMaintenancesInput { + s.Action = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *ListDomainMaintenancesInput) SetDomainName(v string) *ListDomainMaintenancesInput { + s.DomainName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDomainMaintenancesInput) SetMaxResults(v int64) *ListDomainMaintenancesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDomainMaintenancesInput) SetNextToken(v string) *ListDomainMaintenancesInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListDomainMaintenancesInput) SetStatus(v string) *ListDomainMaintenancesInput { + s.Status = &v + return s +} + +// The result of a ListDomainMaintenances request that contains information +// about the requested actions. +type ListDomainMaintenancesOutput struct { + _ struct{} `type:"structure"` + + // A list of the submitted maintenance actions. + DomainMaintenances []*DomainMaintenanceDetails `type:"list"` + + // 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 `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 ListDomainMaintenancesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainMaintenancesOutput) GoString() string { + return s.String() +} + +// SetDomainMaintenances sets the DomainMaintenances field's value. +func (s *ListDomainMaintenancesOutput) SetDomainMaintenances(v []*DomainMaintenanceDetails) *ListDomainMaintenancesOutput { + s.DomainMaintenances = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDomainMaintenancesOutput) SetNextToken(v string) *ListDomainMaintenancesOutput { + s.NextToken = &v + return s +} + // Container for the parameters to the ListDomainNames operation. type ListDomainNamesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -15362,9 +17198,17 @@ // The package version. AvailablePackageVersion *string `type:"string"` + // If the package is a ZIP-PLUGIN package, additional information about plugin + // properties. + AvailablePluginProperties *PluginProperties `type:"structure"` + // The timestamp when the package was created. CreatedAt *time.Time `type:"timestamp"` + // Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y or + // OpenSearch_X.Y. Defaults to the latest version of OpenSearch. + EngineVersion *string `type:"string"` + // Additional information if the package is in an error state. Null otherwise. ErrorDetails *ErrorDetails `type:"structure"` @@ -15412,12 +17256,24 @@ return s } +// SetAvailablePluginProperties sets the AvailablePluginProperties field's value. +func (s *PackageDetails) SetAvailablePluginProperties(v *PluginProperties) *PackageDetails { + s.AvailablePluginProperties = v + return s +} + // SetCreatedAt sets the CreatedAt field's value. func (s *PackageDetails) SetCreatedAt(v time.Time) *PackageDetails { s.CreatedAt = &v return s } +// SetEngineVersion sets the EngineVersion field's value. +func (s *PackageDetails) SetEngineVersion(v string) *PackageDetails { + s.EngineVersion = &v + return s +} + // SetErrorDetails sets the ErrorDetails field's value. func (s *PackageDetails) SetErrorDetails(v *ErrorDetails) *PackageDetails { s.ErrorDetails = v @@ -15529,6 +17385,10 @@ // The package version. PackageVersion *string `type:"string"` + + // Additional information about plugin properties if the package is a ZIP-PLUGIN + // package. + PluginProperties *PluginProperties `type:"structure"` } // String returns the string representation. @@ -15567,6 +17427,80 @@ return s } +// SetPluginProperties sets the PluginProperties field's value. +func (s *PackageVersionHistory) SetPluginProperties(v *PluginProperties) *PackageVersionHistory { + s.PluginProperties = v + return s +} + +// Basic information about the plugin. +type PluginProperties struct { + _ struct{} `type:"structure"` + + // The name of the class to load. + ClassName *string `type:"string"` + + // The description of the plugin. + Description *string `type:"string"` + + // The name of the plugin. + Name *string `type:"string"` + + // The uncompressed size of the plugin. + UncompressedSizeInBytes *int64 `type:"long"` + + // The version of the plugin. + Version *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 PluginProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PluginProperties) GoString() string { + return s.String() +} + +// SetClassName sets the ClassName field's value. +func (s *PluginProperties) SetClassName(v string) *PluginProperties { + s.ClassName = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *PluginProperties) SetDescription(v string) *PluginProperties { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *PluginProperties) SetName(v string) *PluginProperties { + s.Name = &v + return s +} + +// SetUncompressedSizeInBytes sets the UncompressedSizeInBytes field's value. +func (s *PluginProperties) SetUncompressedSizeInBytes(v int64) *PluginProperties { + s.UncompressedSizeInBytes = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *PluginProperties) SetVersion(v string) *PluginProperties { + s.Version = &v + return s +} + // Container for request parameters to the PurchaseReservedInstanceOffering // operation. type PurchaseReservedInstanceOfferingInput struct { @@ -16363,6 +18297,51 @@ return s.String() } +// Information about the AWS S3 Glue Data Catalog. +type S3GlueDataCatalog struct { + _ struct{} `type:"structure"` + + // The role ARN for the AWS S3 Glue Data Catalog. + RoleArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3GlueDataCatalog) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3GlueDataCatalog) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3GlueDataCatalog) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3GlueDataCatalog"} + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRoleArn sets the RoleArn field's value. +func (s *S3GlueDataCatalog) SetRoleArn(v string) *S3GlueDataCatalog { + s.RoleArn = &v + return s +} + // The SAML identity povider information. type SAMLIdp struct { _ struct{} `type:"structure"` @@ -17110,6 +19089,115 @@ return s } +// Container for the parameters to the StartDomainMaintenance operation. +type StartDomainMaintenanceInput struct { + _ struct{} `type:"structure"` + + // The name of the action. + // + // Action is a required field + Action *string `type:"string" required:"true" enum:"MaintenanceType"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // The ID of the data node. + NodeId *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDomainMaintenanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDomainMaintenanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDomainMaintenanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDomainMaintenanceInput"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.NodeId != nil && len(*s.NodeId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("NodeId", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *StartDomainMaintenanceInput) SetAction(v string) *StartDomainMaintenanceInput { + s.Action = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *StartDomainMaintenanceInput) SetDomainName(v string) *StartDomainMaintenanceInput { + s.DomainName = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *StartDomainMaintenanceInput) SetNodeId(v string) *StartDomainMaintenanceInput { + s.NodeId = &v + return s +} + +// The result of a StartDomainMaintenance request that information about the +// requested action. +type StartDomainMaintenanceOutput struct { + _ struct{} `type:"structure"` + + // The request ID of requested action. + MaintenanceId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDomainMaintenanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDomainMaintenanceOutput) GoString() string { + return s.String() +} + +// SetMaintenanceId sets the MaintenanceId field's value. +func (s *StartDomainMaintenanceOutput) SetMaintenanceId(v string) *StartDomainMaintenanceOutput { + s.MaintenanceId = &v + return s +} + // Container for the request parameters to the StartServiceSoftwareUpdate operation. type StartServiceSoftwareUpdateInput struct { _ struct{} `type:"structure"` @@ -17404,6 +19492,133 @@ return s } +// Container for the parameters to the UpdateDataSource operation. +type UpdateDataSourceInput struct { + _ struct{} `type:"structure"` + + // The type of data source. + // + // DataSourceType is a required field + DataSourceType *DataSourceType `type:"structure" required:"true"` + + // A description of the data source. + Description *string `type:"string"` + + // The name of the domain. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + + // The name of the data source. + // + // Name is a required field + Name *string `location:"uri" locationName:"DataSourceName" 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 UpdateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} + if s.DataSourceType == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceType")) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.DataSourceType != nil { + if err := s.DataSourceType.Validate(); err != nil { + invalidParams.AddNested("DataSourceType", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceType sets the DataSourceType field's value. +func (s *UpdateDataSourceInput) SetDataSourceType(v *DataSourceType) *UpdateDataSourceInput { + s.DataSourceType = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateDataSourceInput) SetDescription(v string) *UpdateDataSourceInput { + s.Description = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *UpdateDataSourceInput) SetDomainName(v string) *UpdateDataSourceInput { + s.DomainName = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDataSourceInput) SetName(v string) *UpdateDataSourceInput { + s.Name = &v + return s +} + +// The result of an UpdateDataSource operation. +type UpdateDataSourceOutput struct { + _ struct{} `type:"structure"` + + // A message associated with the data source. + 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 UpdateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *UpdateDataSourceOutput) SetMessage(v string) *UpdateDataSourceOutput { + s.Message = &v + return s +} + // Container for the request parameters to the UpdateDomain operation. type UpdateDomainConfigInput struct { _ struct{} `type:"structure"` @@ -17475,6 +19690,9 @@ // Encryption at rest options for the domain. EncryptionAtRestOptions *EncryptionAtRestOptions `type:"structure"` + // The type of IP addresses supported by the endpoint for the domain. + IPAddressType *string `type:"string" enum:"IPAddressType"` + // Options to publish OpenSearch logs to Amazon CloudWatch Logs. LogPublishingOptions map[string]*LogPublishingOption `type:"map"` @@ -17648,6 +19866,12 @@ return s } +// SetIPAddressType sets the IPAddressType field's value. +func (s *UpdateDomainConfigInput) SetIPAddressType(v string) *UpdateDomainConfigInput { + s.IPAddressType = &v + return s +} + // SetLogPublishingOptions sets the LogPublishingOptions field's value. func (s *UpdateDomainConfigInput) SetLogPublishingOptions(v map[string]*LogPublishingOption) *UpdateDomainConfigInput { s.LogPublishingOptions = v @@ -19210,6 +21434,12 @@ // DescribePackagesFilterNamePackageStatus is a DescribePackagesFilterName enum value DescribePackagesFilterNamePackageStatus = "PackageStatus" + + // DescribePackagesFilterNamePackageType is a DescribePackagesFilterName enum value + DescribePackagesFilterNamePackageType = "PackageType" + + // DescribePackagesFilterNameEngineVersion is a DescribePackagesFilterName enum value + DescribePackagesFilterNameEngineVersion = "EngineVersion" ) // DescribePackagesFilterName_Values returns all elements of the DescribePackagesFilterName enum @@ -19218,6 +21448,8 @@ DescribePackagesFilterNamePackageId, DescribePackagesFilterNamePackageName, DescribePackagesFilterNamePackageStatus, + DescribePackagesFilterNamePackageType, + DescribePackagesFilterNameEngineVersion, } } @@ -19326,6 +21558,22 @@ } const ( + // IPAddressTypeIpv4 is a IPAddressType enum value + IPAddressTypeIpv4 = "ipv4" + + // IPAddressTypeDualstack is a IPAddressType enum value + IPAddressTypeDualstack = "dualstack" +) + +// IPAddressType_Values returns all elements of the IPAddressType enum +func IPAddressType_Values() []string { + return []string{ + IPAddressTypeIpv4, + IPAddressTypeDualstack, + } +} + +const ( // InboundConnectionStatusCodePendingAcceptance is a InboundConnectionStatusCode enum value InboundConnectionStatusCodePendingAcceptance = "PENDING_ACCEPTANCE" @@ -19404,6 +21652,54 @@ } const ( + // MaintenanceStatusPending is a MaintenanceStatus enum value + MaintenanceStatusPending = "PENDING" + + // MaintenanceStatusInProgress is a MaintenanceStatus enum value + MaintenanceStatusInProgress = "IN_PROGRESS" + + // MaintenanceStatusCompleted is a MaintenanceStatus enum value + MaintenanceStatusCompleted = "COMPLETED" + + // MaintenanceStatusFailed is a MaintenanceStatus enum value + MaintenanceStatusFailed = "FAILED" + + // MaintenanceStatusTimedOut is a MaintenanceStatus enum value + MaintenanceStatusTimedOut = "TIMED_OUT" +) + +// MaintenanceStatus_Values returns all elements of the MaintenanceStatus enum +func MaintenanceStatus_Values() []string { + return []string{ + MaintenanceStatusPending, + MaintenanceStatusInProgress, + MaintenanceStatusCompleted, + MaintenanceStatusFailed, + MaintenanceStatusTimedOut, + } +} + +const ( + // MaintenanceTypeRebootNode is a MaintenanceType enum value + MaintenanceTypeRebootNode = "REBOOT_NODE" + + // MaintenanceTypeRestartSearchProcess is a MaintenanceType enum value + MaintenanceTypeRestartSearchProcess = "RESTART_SEARCH_PROCESS" + + // MaintenanceTypeRestartDashboard is a MaintenanceType enum value + MaintenanceTypeRestartDashboard = "RESTART_DASHBOARD" +) + +// MaintenanceType_Values returns all elements of the MaintenanceType enum +func MaintenanceType_Values() []string { + return []string{ + MaintenanceTypeRebootNode, + MaintenanceTypeRestartSearchProcess, + MaintenanceTypeRestartDashboard, + } +} + +const ( // MasterNodeStatusAvailable is a MasterNodeStatus enum value MasterNodeStatusAvailable = "Available" @@ -20008,12 +22304,16 @@ const ( // PackageTypeTxtDictionary is a PackageType enum value PackageTypeTxtDictionary = "TXT-DICTIONARY" + + // PackageTypeZipPlugin is a PackageType enum value + PackageTypeZipPlugin = "ZIP-PLUGIN" ) // PackageType_Values returns all elements of the PackageType enum func PackageType_Values() []string { return []string{ PackageTypeTxtDictionary, + PackageTypeZipPlugin, } } @@ -20144,11 +22444,11 @@ } } -// Status of SkipUnavailable param for outbound connection. +// The status of SkipUnavailable setting for the outbound connection. // -// - ENABLED - The SkipUnavailable param is enabled for the connection. +// - ENABLED - The SkipUnavailable setting is enabled for the connection. // -// - DISABLED - The SkipUnavailable param is disabled for the connection. +// - DISABLED - The SkipUnavailable setting is disabled for the connection. const ( // SkipUnavailableStatusEnabled is a SkipUnavailableStatus enum value SkipUnavailableStatusEnabled = "ENABLED" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/opensearchservice/opensearchserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/opensearchservice/opensearchserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/opensearchservice/opensearchserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/opensearchservice/opensearchserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ AcceptInboundConnectionWithContext(aws.Context, *opensearchservice.AcceptInboundConnectionInput, ...request.Option) (*opensearchservice.AcceptInboundConnectionOutput, error) AcceptInboundConnectionRequest(*opensearchservice.AcceptInboundConnectionInput) (*request.Request, *opensearchservice.AcceptInboundConnectionOutput) + AddDataSource(*opensearchservice.AddDataSourceInput) (*opensearchservice.AddDataSourceOutput, error) + AddDataSourceWithContext(aws.Context, *opensearchservice.AddDataSourceInput, ...request.Option) (*opensearchservice.AddDataSourceOutput, error) + AddDataSourceRequest(*opensearchservice.AddDataSourceInput) (*request.Request, *opensearchservice.AddDataSourceOutput) + AddTags(*opensearchservice.AddTagsInput) (*opensearchservice.AddTagsOutput, error) AddTagsWithContext(aws.Context, *opensearchservice.AddTagsInput, ...request.Option) (*opensearchservice.AddTagsOutput, error) AddTagsRequest(*opensearchservice.AddTagsInput) (*request.Request, *opensearchservice.AddTagsOutput) @@ -96,6 +100,10 @@ CreateVpcEndpointWithContext(aws.Context, *opensearchservice.CreateVpcEndpointInput, ...request.Option) (*opensearchservice.CreateVpcEndpointOutput, error) CreateVpcEndpointRequest(*opensearchservice.CreateVpcEndpointInput) (*request.Request, *opensearchservice.CreateVpcEndpointOutput) + DeleteDataSource(*opensearchservice.DeleteDataSourceInput) (*opensearchservice.DeleteDataSourceOutput, error) + DeleteDataSourceWithContext(aws.Context, *opensearchservice.DeleteDataSourceInput, ...request.Option) (*opensearchservice.DeleteDataSourceOutput, error) + DeleteDataSourceRequest(*opensearchservice.DeleteDataSourceInput) (*request.Request, *opensearchservice.DeleteDataSourceOutput) + DeleteDomain(*opensearchservice.DeleteDomainInput) (*opensearchservice.DeleteDomainOutput, error) DeleteDomainWithContext(aws.Context, *opensearchservice.DeleteDomainInput, ...request.Option) (*opensearchservice.DeleteDomainOutput, error) DeleteDomainRequest(*opensearchservice.DeleteDomainInput) (*request.Request, *opensearchservice.DeleteDomainOutput) @@ -202,6 +210,14 @@ GetCompatibleVersionsWithContext(aws.Context, *opensearchservice.GetCompatibleVersionsInput, ...request.Option) (*opensearchservice.GetCompatibleVersionsOutput, error) GetCompatibleVersionsRequest(*opensearchservice.GetCompatibleVersionsInput) (*request.Request, *opensearchservice.GetCompatibleVersionsOutput) + GetDataSource(*opensearchservice.GetDataSourceInput) (*opensearchservice.GetDataSourceOutput, error) + GetDataSourceWithContext(aws.Context, *opensearchservice.GetDataSourceInput, ...request.Option) (*opensearchservice.GetDataSourceOutput, error) + GetDataSourceRequest(*opensearchservice.GetDataSourceInput) (*request.Request, *opensearchservice.GetDataSourceOutput) + + GetDomainMaintenanceStatus(*opensearchservice.GetDomainMaintenanceStatusInput) (*opensearchservice.GetDomainMaintenanceStatusOutput, error) + GetDomainMaintenanceStatusWithContext(aws.Context, *opensearchservice.GetDomainMaintenanceStatusInput, ...request.Option) (*opensearchservice.GetDomainMaintenanceStatusOutput, error) + GetDomainMaintenanceStatusRequest(*opensearchservice.GetDomainMaintenanceStatusInput) (*request.Request, *opensearchservice.GetDomainMaintenanceStatusOutput) + GetPackageVersionHistory(*opensearchservice.GetPackageVersionHistoryInput) (*opensearchservice.GetPackageVersionHistoryOutput, error) GetPackageVersionHistoryWithContext(aws.Context, *opensearchservice.GetPackageVersionHistoryInput, ...request.Option) (*opensearchservice.GetPackageVersionHistoryOutput, error) GetPackageVersionHistoryRequest(*opensearchservice.GetPackageVersionHistoryInput) (*request.Request, *opensearchservice.GetPackageVersionHistoryOutput) @@ -220,6 +236,17 @@ GetUpgradeStatusWithContext(aws.Context, *opensearchservice.GetUpgradeStatusInput, ...request.Option) (*opensearchservice.GetUpgradeStatusOutput, error) GetUpgradeStatusRequest(*opensearchservice.GetUpgradeStatusInput) (*request.Request, *opensearchservice.GetUpgradeStatusOutput) + ListDataSources(*opensearchservice.ListDataSourcesInput) (*opensearchservice.ListDataSourcesOutput, error) + ListDataSourcesWithContext(aws.Context, *opensearchservice.ListDataSourcesInput, ...request.Option) (*opensearchservice.ListDataSourcesOutput, error) + ListDataSourcesRequest(*opensearchservice.ListDataSourcesInput) (*request.Request, *opensearchservice.ListDataSourcesOutput) + + ListDomainMaintenances(*opensearchservice.ListDomainMaintenancesInput) (*opensearchservice.ListDomainMaintenancesOutput, error) + ListDomainMaintenancesWithContext(aws.Context, *opensearchservice.ListDomainMaintenancesInput, ...request.Option) (*opensearchservice.ListDomainMaintenancesOutput, error) + ListDomainMaintenancesRequest(*opensearchservice.ListDomainMaintenancesInput) (*request.Request, *opensearchservice.ListDomainMaintenancesOutput) + + ListDomainMaintenancesPages(*opensearchservice.ListDomainMaintenancesInput, func(*opensearchservice.ListDomainMaintenancesOutput, bool) bool) error + ListDomainMaintenancesPagesWithContext(aws.Context, *opensearchservice.ListDomainMaintenancesInput, func(*opensearchservice.ListDomainMaintenancesOutput, bool) bool, ...request.Option) error + ListDomainNames(*opensearchservice.ListDomainNamesInput) (*opensearchservice.ListDomainNamesOutput, error) ListDomainNamesWithContext(aws.Context, *opensearchservice.ListDomainNamesInput, ...request.Option) (*opensearchservice.ListDomainNamesOutput, error) ListDomainNamesRequest(*opensearchservice.ListDomainNamesInput) (*request.Request, *opensearchservice.ListDomainNamesOutput) @@ -291,10 +318,18 @@ RevokeVpcEndpointAccessWithContext(aws.Context, *opensearchservice.RevokeVpcEndpointAccessInput, ...request.Option) (*opensearchservice.RevokeVpcEndpointAccessOutput, error) RevokeVpcEndpointAccessRequest(*opensearchservice.RevokeVpcEndpointAccessInput) (*request.Request, *opensearchservice.RevokeVpcEndpointAccessOutput) + StartDomainMaintenance(*opensearchservice.StartDomainMaintenanceInput) (*opensearchservice.StartDomainMaintenanceOutput, error) + StartDomainMaintenanceWithContext(aws.Context, *opensearchservice.StartDomainMaintenanceInput, ...request.Option) (*opensearchservice.StartDomainMaintenanceOutput, error) + StartDomainMaintenanceRequest(*opensearchservice.StartDomainMaintenanceInput) (*request.Request, *opensearchservice.StartDomainMaintenanceOutput) + StartServiceSoftwareUpdate(*opensearchservice.StartServiceSoftwareUpdateInput) (*opensearchservice.StartServiceSoftwareUpdateOutput, error) StartServiceSoftwareUpdateWithContext(aws.Context, *opensearchservice.StartServiceSoftwareUpdateInput, ...request.Option) (*opensearchservice.StartServiceSoftwareUpdateOutput, error) StartServiceSoftwareUpdateRequest(*opensearchservice.StartServiceSoftwareUpdateInput) (*request.Request, *opensearchservice.StartServiceSoftwareUpdateOutput) + UpdateDataSource(*opensearchservice.UpdateDataSourceInput) (*opensearchservice.UpdateDataSourceOutput, error) + UpdateDataSourceWithContext(aws.Context, *opensearchservice.UpdateDataSourceInput, ...request.Option) (*opensearchservice.UpdateDataSourceOutput, error) + UpdateDataSourceRequest(*opensearchservice.UpdateDataSourceInput) (*request.Request, *opensearchservice.UpdateDataSourceOutput) + UpdateDomainConfig(*opensearchservice.UpdateDomainConfigInput) (*opensearchservice.UpdateDomainConfigOutput, error) UpdateDomainConfigWithContext(aws.Context, *opensearchservice.UpdateDomainConfigInput, ...request.Option) (*opensearchservice.UpdateDomainConfigOutput, error) UpdateDomainConfigRequest(*opensearchservice.UpdateDomainConfigInput) (*request.Request, *opensearchservice.UpdateDomainConfigOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/osis/api.go golang-github-aws-aws-sdk-go-1.48.14/service/osis/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/osis/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/osis/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -84,6 +84,9 @@ // - ResourceAlreadyExistsException // You attempted to create a resource that already exists. // +// - ResourceNotFoundException +// You attempted to access or delete a resource that does not exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/osis-2022-01-01/CreatePipeline func (c *OSIS) CreatePipeline(input *CreatePipelineInput) (*CreatePipelineOutput, error) { req, out := c.CreatePipelineRequest(input) @@ -1418,6 +1421,54 @@ return s.RespMetadata.RequestID } +// Options that specify the configuration of a persistent buffer. To configure +// how OpenSearch Ingestion encrypts this data, set the EncryptionAtRestOptions. +type BufferOptions struct { + _ struct{} `type:"structure"` + + // Whether persistent buffering should be enabled. + // + // PersistentBufferEnabled is a required field + PersistentBufferEnabled *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BufferOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BufferOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BufferOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BufferOptions"} + if s.PersistentBufferEnabled == nil { + invalidParams.Add(request.NewErrParamRequired("PersistentBufferEnabled")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPersistentBufferEnabled sets the PersistentBufferEnabled field's value. +func (s *BufferOptions) SetPersistentBufferEnabled(v bool) *BufferOptions { + s.PersistentBufferEnabled = &v + return s +} + // Progress details for a specific stage of a pipeline configuration change. type ChangeProgressStage struct { _ struct{} `type:"structure"` @@ -1655,6 +1706,13 @@ type CreatePipelineInput struct { _ struct{} `type:"structure"` + // Key-value pairs to configure persistent buffering for the pipeline. + BufferOptions *BufferOptions `type:"structure"` + + // Key-value pairs to configure encryption for data that is written to a persistent + // buffer. + EncryptionAtRestOptions *EncryptionAtRestOptions `type:"structure"` + // Key-value pairs to configure log publishing. LogPublishingOptions *LogPublishingOptions `type:"structure"` @@ -1736,6 +1794,16 @@ if s.PipelineName != nil && len(*s.PipelineName) < 3 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 3)) } + if s.BufferOptions != nil { + if err := s.BufferOptions.Validate(); err != nil { + invalidParams.AddNested("BufferOptions", err.(request.ErrInvalidParams)) + } + } + if s.EncryptionAtRestOptions != nil { + if err := s.EncryptionAtRestOptions.Validate(); err != nil { + invalidParams.AddNested("EncryptionAtRestOptions", err.(request.ErrInvalidParams)) + } + } if s.LogPublishingOptions != nil { if err := s.LogPublishingOptions.Validate(); err != nil { invalidParams.AddNested("LogPublishingOptions", err.(request.ErrInvalidParams)) @@ -1763,6 +1831,18 @@ return nil } +// SetBufferOptions sets the BufferOptions field's value. +func (s *CreatePipelineInput) SetBufferOptions(v *BufferOptions) *CreatePipelineInput { + s.BufferOptions = v + return s +} + +// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. +func (s *CreatePipelineInput) SetEncryptionAtRestOptions(v *EncryptionAtRestOptions) *CreatePipelineInput { + s.EncryptionAtRestOptions = v + return s +} + // SetLogPublishingOptions sets the LogPublishingOptions field's value. func (s *CreatePipelineInput) SetLogPublishingOptions(v *LogPublishingOptions) *CreatePipelineInput { s.LogPublishingOptions = v @@ -1907,6 +1987,57 @@ return s.String() } +// Options to control how OpenSearch encrypts all data-at-rest. +type EncryptionAtRestOptions struct { + _ struct{} `type:"structure"` + + // The ARN of the KMS key used to encrypt data-at-rest in OpenSearch Ingestion. + // By default, data is encrypted using an AWS owned key. + // + // KmsKeyArn is a required field + KmsKeyArn *string `min:"7" 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 EncryptionAtRestOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EncryptionAtRestOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EncryptionAtRestOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EncryptionAtRestOptions"} + if s.KmsKeyArn == nil { + invalidParams.Add(request.NewErrParamRequired("KmsKeyArn")) + } + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 7 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 7)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *EncryptionAtRestOptions) SetKmsKeyArn(v string) *EncryptionAtRestOptions { + s.KmsKeyArn = &v + return s +} + type GetPipelineBlueprintInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -2634,9 +2765,16 @@ type Pipeline struct { _ struct{} `type:"structure"` + // Options that specify the configuration of a persistent buffer. To configure + // how OpenSearch Ingestion encrypts this data, set the EncryptionAtRestOptions. + BufferOptions *BufferOptions `type:"structure"` + // The date and time when the pipeline was created. CreatedAt *time.Time `type:"timestamp"` + // Options to control how OpenSearch encrypts all data-at-rest. + EncryptionAtRestOptions *EncryptionAtRestOptions `type:"structure"` + // The ingestion endpoints for the pipeline, which you can send data to. IngestEndpointUrls []*string `type:"list"` @@ -2661,12 +2799,19 @@ // The name of the pipeline. PipelineName *string `type:"string"` + // A list of VPC endpoints that OpenSearch Ingestion has created to other AWS + // services. + ServiceVpcEndpoints []*ServiceVpcEndpoint `type:"list"` + // The current status of the pipeline. Status *string `type:"string" enum:"PipelineStatus"` // The reason for the current status of the pipeline. StatusReason *PipelineStatusReason `type:"structure"` + // A list of tags associated with the given pipeline. + Tags []*Tag `type:"list"` + // The VPC interface endpoints that have access to the pipeline. VpcEndpoints []*VpcEndpoint `type:"list"` } @@ -2689,12 +2834,24 @@ return s.String() } +// SetBufferOptions sets the BufferOptions field's value. +func (s *Pipeline) SetBufferOptions(v *BufferOptions) *Pipeline { + s.BufferOptions = v + return s +} + // SetCreatedAt sets the CreatedAt field's value. func (s *Pipeline) SetCreatedAt(v time.Time) *Pipeline { s.CreatedAt = &v return s } +// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. +func (s *Pipeline) SetEncryptionAtRestOptions(v *EncryptionAtRestOptions) *Pipeline { + s.EncryptionAtRestOptions = v + return s +} + // SetIngestEndpointUrls sets the IngestEndpointUrls field's value. func (s *Pipeline) SetIngestEndpointUrls(v []*string) *Pipeline { s.IngestEndpointUrls = v @@ -2743,6 +2900,12 @@ return s } +// SetServiceVpcEndpoints sets the ServiceVpcEndpoints field's value. +func (s *Pipeline) SetServiceVpcEndpoints(v []*ServiceVpcEndpoint) *Pipeline { + s.ServiceVpcEndpoints = v + return s +} + // SetStatus sets the Status field's value. func (s *Pipeline) SetStatus(v string) *Pipeline { s.Status = &v @@ -2755,6 +2918,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *Pipeline) SetTags(v []*Tag) *Pipeline { + s.Tags = v + return s +} + // SetVpcEndpoints sets the VpcEndpoints field's value. func (s *Pipeline) SetVpcEndpoints(v []*VpcEndpoint) *Pipeline { s.VpcEndpoints = v @@ -2893,6 +3062,9 @@ // Information about a pipeline's current status. StatusReason *PipelineStatusReason `type:"structure"` + + // A list of tags associated with the given pipeline. + Tags []*Tag `type:"list"` } // String returns the string representation. @@ -2961,6 +3133,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *PipelineSummary) SetTags(v []*Tag) *PipelineSummary { + s.Tags = v + return s +} + // You attempted to create a resource that already exists. type ResourceAlreadyExistsException struct { _ struct{} `type:"structure"` @@ -3089,6 +3267,48 @@ return s.RespMetadata.RequestID } +// A container for information about VPC endpoints that were created to other +// services +type ServiceVpcEndpoint struct { + _ struct{} `type:"structure"` + + // The name of the service for which a VPC endpoint was created. + ServiceName *string `type:"string" enum:"VpcEndpointServiceName"` + + // The ID of the VPC endpoint that was created. + VpcEndpointId *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 ServiceVpcEndpoint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceVpcEndpoint) GoString() string { + return s.String() +} + +// SetServiceName sets the ServiceName field's value. +func (s *ServiceVpcEndpoint) SetServiceName(v string) *ServiceVpcEndpoint { + s.ServiceName = &v + return s +} + +// SetVpcEndpointId sets the VpcEndpointId field's value. +func (s *ServiceVpcEndpoint) SetVpcEndpointId(v string) *ServiceVpcEndpoint { + s.VpcEndpointId = &v + return s +} + type StartPipelineInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3498,6 +3718,13 @@ type UpdatePipelineInput struct { _ struct{} `type:"structure"` + // Key-value pairs to configure persistent buffering for the pipeline. + BufferOptions *BufferOptions `type:"structure"` + + // Key-value pairs to configure encryption for data that is written to a persistent + // buffer. + EncryptionAtRestOptions *EncryptionAtRestOptions `type:"structure"` + // Key-value pairs to configure log publishing. LogPublishingOptions *LogPublishingOptions `type:"structure"` @@ -3554,6 +3781,16 @@ if s.PipelineName != nil && len(*s.PipelineName) < 3 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 3)) } + if s.BufferOptions != nil { + if err := s.BufferOptions.Validate(); err != nil { + invalidParams.AddNested("BufferOptions", err.(request.ErrInvalidParams)) + } + } + if s.EncryptionAtRestOptions != nil { + if err := s.EncryptionAtRestOptions.Validate(); err != nil { + invalidParams.AddNested("EncryptionAtRestOptions", err.(request.ErrInvalidParams)) + } + } if s.LogPublishingOptions != nil { if err := s.LogPublishingOptions.Validate(); err != nil { invalidParams.AddNested("LogPublishingOptions", err.(request.ErrInvalidParams)) @@ -3566,6 +3803,18 @@ return nil } +// SetBufferOptions sets the BufferOptions field's value. +func (s *UpdatePipelineInput) SetBufferOptions(v *BufferOptions) *UpdatePipelineInput { + s.BufferOptions = v + return s +} + +// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. +func (s *UpdatePipelineInput) SetEncryptionAtRestOptions(v *EncryptionAtRestOptions) *UpdatePipelineInput { + s.EncryptionAtRestOptions = v + return s +} + // SetLogPublishingOptions sets the LogPublishingOptions field's value. func (s *UpdatePipelineInput) SetLogPublishingOptions(v *LogPublishingOptions) *UpdatePipelineInput { s.LogPublishingOptions = v @@ -4025,3 +4274,15 @@ PipelineStatusStopped, } } + +const ( + // VpcEndpointServiceNameOpensearchServerless is a VpcEndpointServiceName enum value + VpcEndpointServiceNameOpensearchServerless = "OPENSEARCH_SERVERLESS" +) + +// VpcEndpointServiceName_Values returns all elements of the VpcEndpointServiceName enum +func VpcEndpointServiceName_Values() []string { + return []string{ + VpcEndpointServiceNameOpensearchServerless, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/paymentcryptography/api.go golang-github-aws-aws-sdk-go-1.48.14/service/paymentcryptography/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/paymentcryptography/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/paymentcryptography/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -193,7 +193,7 @@ // key usage, key origin, creation date, description, and key state. // // When you create a key, you specify both immutable and mutable data about -// the key. The immutable data contains key attributes that defines the scope +// the key. The immutable data contains key attributes that define the scope // and cryptographic operations that you can perform using the key, for example // key class (example: SYMMETRIC_KEY), key algorithm (example: TDES_2KEY), key // usage (example: TR31_P0_PIN_ENCRYPTION_KEY) and key modes of use (example: @@ -435,7 +435,7 @@ // DeleteKey API operation for Payment Cryptography Control Plane. // -// Deletes the key material and all metadata associated with Amazon Web Services +// Deletes the key material and metadata associated with Amazon Web Services // Payment Cryptography key. // // Key deletion is irreversible. After a key is deleted, you can't perform cryptographic @@ -444,13 +444,10 @@ // become unrecoverable. Because key deletion is destructive, Amazon Web Services // Payment Cryptography has a safety mechanism to prevent accidental deletion // of a key. When you call this operation, Amazon Web Services Payment Cryptography -// disables the specified key but doesn't delete it until after a waiting period. -// The default waiting period is 7 days. To set a different waiting period, -// set DeleteKeyInDays. During the waiting period, the KeyState is DELETE_PENDING. -// After the key is deleted, the KeyState is DELETE_COMPLETE. -// -// If you delete key material, you can use ImportKey to reimport the same key -// material into the Amazon Web Services Payment Cryptography key. +// disables the specified key but doesn't delete it until after a waiting period +// set using DeleteKeyInDays. The default waiting period is 7 days. During the +// waiting period, the KeyState is DELETE_PENDING. After the key is deleted, +// the KeyState is DELETE_COMPLETE. // // You should delete a key only when you are sure that you don't need to use // it anymore and no other parties are utilizing this key. If you aren't sure, @@ -563,64 +560,109 @@ // ExportKey API operation for Payment Cryptography Control Plane. // -// Exports a key from Amazon Web Services Payment Cryptography using either -// ANSI X9 TR-34 or TR-31 key export standard. +// Exports a key from Amazon Web Services Payment Cryptography. // -// Amazon Web Services Payment Cryptography simplifies main or root key exchange -// process by eliminating the need of a paper-based key exchange process. It -// takes a modern and secure approach based of the ANSI X9 TR-34 key exchange -// standard. -// -// You can use ExportKey to export main or root keys such as KEK (Key Encryption -// Key), using asymmetric key exchange technique following ANSI X9 TR-34 standard. -// The ANSI X9 TR-34 standard uses asymmetric keys to establishes bi-directional -// trust between the two parties exchanging keys. After which you can export -// working keys using the ANSI X9 TR-31 symmetric key exchange standard as mandated -// by PCI PIN. Using this operation, you can share your Amazon Web Services -// Payment Cryptography generated keys with other service partners to perform -// cryptographic operations outside of Amazon Web Services Payment Cryptography -// -// # TR-34 key export -// -// Amazon Web Services Payment Cryptography uses TR-34 asymmetric key exchange -// standard to export main keys such as KEK. In TR-34 terminology, the sending -// party of the key is called Key Distribution Host (KDH) and the receiving -// party of the key is called Key Receiving Host (KRH). In key export process, -// KDH is Amazon Web Services Payment Cryptography which initiates key export. -// KRH is the user receiving the key. Before you initiate TR-34 key export, -// you must obtain an export token by calling GetParametersForExport. This operation -// also returns the signing key certificate that KDH uses to sign the wrapped -// key to generate a TR-34 wrapped key block. The export token expires after -// 7 days. +// Amazon Web Services Payment Cryptography simplifies key exchange by replacing +// the existing paper-based approach with a modern electronic approach. With +// ExportKey you can export symmetric keys using either symmetric and asymmetric +// key exchange mechanisms. Using this operation, you can share your Amazon +// Web Services Payment Cryptography generated keys with other service partners +// to perform cryptographic operations outside of Amazon Web Services Payment +// Cryptography +// +// For symmetric key exchange, Amazon Web Services Payment Cryptography uses +// the ANSI X9 TR-31 norm in accordance with PCI PIN guidelines. And for asymmetric +// key exchange, Amazon Web Services Payment Cryptography supports ANSI X9 TR-34 +// norm . Asymmetric key exchange methods are typically used to establish bi-directional +// trust between the two parties exhanging keys and are used for initial key +// exchange such as Key Encryption Key (KEK). After which you can export working +// keys using symmetric method to perform various cryptographic operations within +// Amazon Web Services Payment Cryptography. +// +// The TR-34 norm is intended for exchanging 3DES keys only and keys are imported +// in a WrappedKeyBlock format. Key attributes (such as KeyUsage, KeyAlgorithm, +// KeyModesOfUse, Exportability) are contained within the key block. +// +// You can also use ExportKey functionality to generate and export an IPEK (Initial +// Pin Encryption Key) from Amazon Web Services Payment Cryptography using either +// TR-31 or TR-34 export key exchange. IPEK is generated from BDK (Base Derivation +// Key) and ExportDukptInitialKey attribute KSN (KeySerialNumber). The generated +// IPEK does not persist within Amazon Web Services Payment Cryptography and +// has to be re-generated each time during export. +// +// # To export KEK or IPEK using TR-34 +// +// Using this operation, you can export initial key using TR-34 asymmetric key +// exchange. You can only export KEK generated within Amazon Web Services Payment +// Cryptography. In TR-34 terminology, the sending party of the key is called +// Key Distribution Host (KDH) and the receiving party of the key is called +// Key Receiving Device (KRD). During key export process, KDH is Amazon Web +// Services Payment Cryptography which initiates key export and KRD is the user +// receiving the key. +// +// To initiate TR-34 key export, the KRD must obtain an export token by calling +// GetParametersForExport. This operation also generates a key pair for the +// purpose of key export, signs the key and returns back the signing public +// key certificate (also known as KDH signing certificate) and root certificate +// chain. The KDH uses the private key to sign the the export payload and the +// signing public key certificate is provided to KRD to verify the signature. +// The KRD can import the root certificate into its Hardware Security Module +// (HSM), as required. The export token and the associated KDH signing certificate +// expires after 7 days. +// +// Next the KRD generates a key pair for the the purpose of encrypting the KDH +// key and provides the public key cerificate (also known as KRD wrapping certificate) +// back to KDH. The KRD will also import the root cerificate chain into Amazon +// Web Services Payment Cryptography by calling ImportKey for RootCertificatePublicKey. +// The KDH, Amazon Web Services Payment Cryptography, will use the KRD wrapping +// cerificate to encrypt (wrap) the key under export and signs it with signing +// private key to generate a TR-34 WrappedKeyBlock. For more information on +// TR-34 key export, see section Exporting symmetric keys (https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-export.html) +// in the Amazon Web Services Payment Cryptography User Guide. // // Set the following parameters: // -// # CertificateAuthorityPublicKeyIdentifier +// - ExportAttributes: Specify export attributes in case of IPEK export. +// This parameter is optional for KEK export. // -// The KeyARN of the certificate chain that will sign the wrapping key certificate. -// This must exist within Amazon Web Services Payment Cryptography before you -// initiate TR-34 key export. If it does not exist, you can import it by calling -// ImportKey for RootCertificatePublicKey. +// - ExportKeyIdentifier: The KeyARN of the KEK or BDK (in case of IPEK) +// under export. // -// # ExportToken +// - KeyMaterial: Use Tr34KeyBlock parameters. // -// Obtained from KDH by calling GetParametersForExport. +// - CertificateAuthorityPublicKeyIdentifier: The KeyARN of the certificate +// chain that signed the KRD wrapping key certificate. // -// # WrappingKeyCertificate +// - ExportToken: Obtained from KDH by calling GetParametersForImport. // -// Amazon Web Services Payment Cryptography uses this to wrap the key under -// export. +// - WrappingKeyCertificate: The public key certificate in PEM format (base64 +// encoded) of the KRD wrapping key Amazon Web Services Payment Cryptography +// uses for encryption of the TR-34 export payload. This certificate must +// be signed by the root certificate (CertificateAuthorityPublicKeyIdentifier) +// imported into Amazon Web Services Payment Cryptography. // // When this operation is successful, Amazon Web Services Payment Cryptography -// returns the TR-34 wrapped key block. +// returns the KEK or IPEK as a TR-34 WrappedKeyBlock. // -// # TR-31 key export +// # To export WK (Working Key) or IPEK using TR-31 // -// Amazon Web Services Payment Cryptography uses TR-31 symmetric key exchange -// standard to export working keys. In TR-31, you must use a main key such as -// KEK to encrypt or wrap the key under export. To establish a KEK, you can -// use CreateKey or ImportKey. When this operation is successful, Amazon Web -// Services Payment Cryptography returns a TR-31 wrapped key block. +// Using this operation, you can export working keys or IPEK using TR-31 symmetric +// key exchange. In TR-31, you must use an initial key such as KEK to encrypt +// or wrap the key under export. To establish a KEK, you can use CreateKey or +// ImportKey. +// +// Set the following parameters: +// +// - ExportAttributes: Specify export attributes in case of IPEK export. +// This parameter is optional for KEK export. +// +// - ExportKeyIdentifier: The KeyARN of the KEK or BDK (in case of IPEK) +// under export. +// +// - KeyMaterial: Use Tr31KeyBlock parameters. +// +// When this operation is successful, Amazon Web Services Payment Cryptography +// returns the WK or IPEK as a TR-31 WrappedKeyBlock. // // Cross-account use: This operation can't be used across different Amazon Web // Services accounts. @@ -1060,14 +1102,13 @@ // GetParametersForImport API operation for Payment Cryptography Control Plane. // -// Gets the import token and the wrapping key certificate to initiate a TR-34 -// key import into Amazon Web Services Payment Cryptography. +// Gets the import token and the wrapping key certificate in PEM format (base64 +// encoded) to initiate a TR-34 WrappedKeyBlock. // -// The wrapping key certificate wraps the key under import within the TR-34 -// key payload. The import token and wrapping key certificate must be in place -// and operational before calling ImportKey. The import token expires in 7 days. -// The same import token can be used to import multiple keys into your service -// account. +// The wrapping key certificate wraps the key under import. The import token +// and wrapping key certificate must be in place and operational before calling +// ImportKey. The import token expires in 7 days. You can use the same import +// token to import multiple keys into your service account. // // Cross-account use: This operation can't be used across different Amazon Web // Services accounts. @@ -1282,27 +1323,36 @@ // ImportKey API operation for Payment Cryptography Control Plane. // -// Imports keys and public key certificates into Amazon Web Services Payment -// Cryptography. +// Imports symmetric keys and public key certificates in PEM format (base64 +// encoded) into Amazon Web Services Payment Cryptography. +// +// Amazon Web Services Payment Cryptography simplifies key exchange by replacing +// the existing paper-based approach with a modern electronic approach. With +// ImportKey you can import symmetric keys using either symmetric and asymmetric +// key exchange mechanisms. +// +// For symmetric key exchange, Amazon Web Services Payment Cryptography uses +// the ANSI X9 TR-31 norm in accordance with PCI PIN guidelines. And for asymmetric +// key exchange, Amazon Web Services Payment Cryptography supports ANSI X9 TR-34 +// norm . Asymmetric key exchange methods are typically used to establish bi-directional +// trust between the two parties exhanging keys and are used for initial key +// exchange such as Key Encryption Key (KEK) or Zone Master Key (ZMK). After +// which you can import working keys using symmetric method to perform various +// cryptographic operations within Amazon Web Services Payment Cryptography. +// +// The TR-34 norm is intended for exchanging 3DES keys only and keys are imported +// in a WrappedKeyBlock format. Key attributes (such as KeyUsage, KeyAlgorithm, +// KeyModesOfUse, Exportability) are contained within the key block. +// +// You can also import a root public key certificate, used to sign other public +// key certificates, or a trusted public key certificate under an already established +// root public key certificate. +// +// # To import a public root key certificate // -// Amazon Web Services Payment Cryptography simplifies main or root key exchange -// process by eliminating the need of a paper-based key exchange process. It -// takes a modern and secure approach based of the ANSI X9 TR-34 key exchange -// standard. -// -// You can use ImportKey to import main or root keys such as KEK (Key Encryption -// Key) using asymmetric key exchange technique following the ANSI X9 TR-34 -// standard. The ANSI X9 TR-34 standard uses asymmetric keys to establishes -// bi-directional trust between the two parties exchanging keys. -// -// After you have imported a main or root key, you can import working keys to -// perform various cryptographic operations within Amazon Web Services Payment -// Cryptography using the ANSI X9 TR-31 symmetric key exchange standard as mandated -// by PCI PIN. -// -// You can also import a root public key certificate, a self-signed certificate -// used to sign other public key certificates, or a trusted public key certificate -// under an already established root public key certificate. +// You can also import a root public key certificate, used to sign other public +// key certificates, or a trusted public key certificate under an already established +// root public key certificate. // // # To import a public root key certificate // @@ -1321,8 +1371,8 @@ // // - KeyUsage: TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE // -// - PublicKeyCertificate: The certificate authority used to sign the root -// public key certificate. +// - PublicKeyCertificate: The public key certificate in PEM format (base64 +// encoded) of the private root key under import. // // # To import a trusted public key certificate // @@ -1337,54 +1387,66 @@ // such as wrap, sign, or encrypt that you will allow the trusted public // key certificate to perform. // -// - PublicKeyCertificate: The certificate authority used to sign the trusted -// public key certificate. +// - PublicKeyCertificate: The trusted public key certificate in PEM format +// (base64 encoded) under import. // -// # Import main keys +// # To import KEK or ZMK using TR-34 // -// Amazon Web Services Payment Cryptography uses TR-34 asymmetric key exchange -// standard to import main keys such as KEK. In TR-34 terminology, the sending -// party of the key is called Key Distribution Host (KDH) and the receiving -// party of the key is called Key Receiving Host (KRH). During the key import -// process, KDH is the user who initiates the key import and KRH is Amazon Web -// Services Payment Cryptography who receives the key. Before initiating TR-34 -// key import, you must obtain an import token by calling GetParametersForImport. -// This operation also returns the wrapping key certificate that KDH uses wrap -// key under import to generate a TR-34 wrapped key block. The import token -// expires after 7 days. +// Using this operation, you can import initial key using TR-34 asymmetric key +// exchange. In TR-34 terminology, the sending party of the key is called Key +// Distribution Host (KDH) and the receiving party of the key is called Key +// Receiving Device (KRD). During the key import process, KDH is the user who +// initiates the key import and KRD is Amazon Web Services Payment Cryptography +// who receives the key. +// +// To initiate TR-34 key import, the KDH must obtain an import token by calling +// GetParametersForImport. This operation generates an encryption keypair for +// the purpose of key import, signs the key and returns back the wrapping key +// certificate (also known as KRD wrapping certificate) and the root certificate +// chain. The KDH must trust and install the KRD wrapping certificate on its +// HSM and use it to encrypt (wrap) the KDH key during TR-34 WrappedKeyBlock +// generation. The import token and associated KRD wrapping certificate expires +// after 7 days. +// +// Next the KDH generates a key pair for the purpose of signing the encrypted +// KDH key and provides the public certificate of the signing key to Amazon +// Web Services Payment Cryptography. The KDH will also need to import the root +// certificate chain of the KDH signing certificate by calling ImportKey for +// RootCertificatePublicKey. For more information on TR-34 key import, see section +// Importing symmetric keys (https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-import.html) +// in the Amazon Web Services Payment Cryptography User Guide. // // Set the following parameters: // -// - CertificateAuthorityPublicKeyIdentifier: The KeyArn of the certificate -// chain that will sign the signing key certificate and should exist within -// Amazon Web Services Payment Cryptography before initiating TR-34 key import. -// If it does not exist, you can import it by calling by calling ImportKey -// for RootCertificatePublicKey. -// -// - ImportToken: Obtained from KRH by calling GetParametersForImport. -// -// - WrappedKeyBlock: The TR-34 wrapped key block from KDH. It contains the -// KDH key under import, wrapped with KRH provided wrapping key certificate -// and signed by the KDH private signing key. This TR-34 key block is generated +// - KeyMaterial: Use Tr34KeyBlock parameters. +// +// - CertificateAuthorityPublicKeyIdentifier: The KeyARN of the certificate +// chain that signed the KDH signing key certificate. +// +// - ImportToken: Obtained from KRD by calling GetParametersForImport. +// +// - WrappedKeyBlock: The TR-34 wrapped key material from KDH. It contains +// the KDH key under import, wrapped with KRD wrapping certificate and signed +// by KDH signing private key. This TR-34 key block is typically generated // by the KDH Hardware Security Module (HSM) outside of Amazon Web Services // Payment Cryptography. // -// - SigningKeyCertificate: The public component of the private key that -// signed the KDH TR-34 wrapped key block. In PEM certificate format. +// - SigningKeyCertificate: The public key certificate in PEM format (base64 +// encoded) of the KDH signing key generated under the root certificate (CertificateAuthorityPublicKeyIdentifier) +// imported in Amazon Web Services Payment Cryptography. // -// TR-34 is intended primarily to exchange 3DES keys. Your ability to export -// AES-128 and larger AES keys may be dependent on your source system. -// -// # Import working keys +// # To import WK (Working Key) using TR-31 // // Amazon Web Services Payment Cryptography uses TR-31 symmetric key exchange -// standard to import working keys. A KEK must be established within Amazon -// Web Services Payment Cryptography by using TR-34 key import. To initiate -// a TR-31 key import, set the following parameters: -// -// - WrappedKeyBlock: The key under import and encrypted using KEK. The TR-31 -// key block generated by your HSM outside of Amazon Web Services Payment -// Cryptography. +// norm to import working keys. A KEK must be established within Amazon Web +// Services Payment Cryptography by using TR-34 key import or by using CreateKey. +// To initiate a TR-31 key import, set the following parameters: +// +// - KeyMaterial: Use Tr31KeyBlock parameters. +// +// - WrappedKeyBlock: The TR-31 wrapped key material. It contains the key +// under import, encrypted using KEK. The TR-31 key block is typically generated +// by a HSM outside of Amazon Web Services Payment Cryptography. // // - WrappingKeyIdentifier: The KeyArn of the KEK that Amazon Web Services // Payment Cryptography uses to decrypt or unwrap the key under import. @@ -2831,13 +2893,13 @@ type CreateAliasInput struct { _ struct{} `type:"structure"` - // A friendly name that you can use to refer a key. An alias must begin with + // A friendly name that you can use to refer to a key. An alias must begin with // alias/ followed by a name, for example alias/ExampleAlias. It can contain // only alphanumeric characters, forward slashes (/), underscores (_), and dashes // (-). // - // Don't include confidential or sensitive information in this field. This field - // may be displayed in plaintext in CloudTrail logs and other output. + // Don't include personal, confidential or sensitive information in this field. + // This field may be displayed in plaintext in CloudTrail logs and other output. // // AliasName is a required field AliasName *string `min:"7" type:"string" required:"true"` @@ -2932,8 +2994,8 @@ _ struct{} `type:"structure"` // Specifies whether to enable the key. If the key is enabled, it is activated - // for use within the service. If the key not enabled, then it is created but - // not activated. The default value is enabled. + // for use within the service. If the key is not enabled, then it is created + // but not activated. The default value is enabled. Enabled *bool `type:"boolean"` // Specifies whether the key is exportable from the service. @@ -2948,24 +3010,26 @@ KeyAttributes *KeyAttributes `type:"structure" required:"true"` // The algorithm that Amazon Web Services Payment Cryptography uses to calculate - // the key check value (KCV) for DES and AES keys. + // the key check value (KCV). It is used to validate the key integrity. // - // For DES key, the KCV is computed by encrypting 8 bytes, each with value '00', - // with the key to be checked and retaining the 3 highest order bytes of the - // encrypted result. For AES key, the KCV is computed by encrypting 8 bytes, - // each with value '01', with the key to be checked and retaining the 3 highest - // order bytes of the encrypted result. + // For TDES keys, the KCV is computed by encrypting 8 bytes, each with value + // of zero, with the key to be checked and retaining the 3 highest order bytes + // of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm + // where the input data is 16 bytes of zero and retaining the 3 highest order + // bytes of the encrypted result. KeyCheckValueAlgorithm *string `type:"string" enum:"KeyCheckValueAlgorithm"` - // The tags to attach to the key. Each tag consists of a tag key and a tag value. - // Both the tag key and the tag value are required, but the tag value can be - // an empty (null) string. You can't have more than one tag on an Amazon Web - // Services Payment Cryptography key with the same tag key. + // Assigns one or more tags to the Amazon Web Services Payment Cryptography + // key. Use this parameter to tag a key when it is created. To tag an existing + // Amazon Web Services Payment Cryptography key, use the TagResource operation. // - // To use this parameter, you must have TagResource permission. + // Each tag consists of a tag key and a tag value. Both the tag key and the + // tag value are required, but the tag value can be an empty (null) string. + // You can't have more than one tag on an Amazon Web Services Payment Cryptography + // key with the same tag key. // - // Don't include confidential or sensitive information in this field. This field - // may be displayed in plaintext in CloudTrail logs and other output. + // Don't include personal, confidential or sensitive information in this field. + // This field may be displayed in plaintext in CloudTrail logs and other output. // // Tagging or untagging an Amazon Web Services Payment Cryptography key can // allow or deny permission to the key. @@ -3250,9 +3314,129 @@ return s } +// The attributes for IPEK generation during export. +type ExportAttributes struct { + _ struct{} `type:"structure"` + + // Parameter information for IPEK export. + ExportDukptInitialKey *ExportDukptInitialKey `type:"structure"` + + // The algorithm that Amazon Web Services Payment Cryptography uses to calculate + // the key check value (KCV). It is used to validate the key integrity. Specify + // KCV for IPEK export only. + // + // For TDES keys, the KCV is computed by encrypting 8 bytes, each with value + // of zero, with the key to be checked and retaining the 3 highest order bytes + // of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm + // where the input data is 16 bytes of zero and retaining the 3 highest order + // bytes of the encrypted result. + KeyCheckValueAlgorithm *string `type:"string" enum:"KeyCheckValueAlgorithm"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportAttributes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportAttributes) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExportAttributes) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExportAttributes"} + if s.ExportDukptInitialKey != nil { + if err := s.ExportDukptInitialKey.Validate(); err != nil { + invalidParams.AddNested("ExportDukptInitialKey", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExportDukptInitialKey sets the ExportDukptInitialKey field's value. +func (s *ExportAttributes) SetExportDukptInitialKey(v *ExportDukptInitialKey) *ExportAttributes { + s.ExportDukptInitialKey = v + return s +} + +// SetKeyCheckValueAlgorithm sets the KeyCheckValueAlgorithm field's value. +func (s *ExportAttributes) SetKeyCheckValueAlgorithm(v string) *ExportAttributes { + s.KeyCheckValueAlgorithm = &v + return s +} + +// Parameter information for IPEK generation during export. +type ExportDukptInitialKey struct { + _ struct{} `type:"structure"` + + // The KSN for IPEK generation using DUKPT. + // + // KSN must be padded before sending to Amazon Web Services Payment Cryptography. + // KSN hex length should be 20 for a TDES_2KEY key or 24 for an AES key. + // + // KeySerialNumber is a required field + KeySerialNumber *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportDukptInitialKey) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExportDukptInitialKey) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExportDukptInitialKey) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExportDukptInitialKey"} + if s.KeySerialNumber == nil { + invalidParams.Add(request.NewErrParamRequired("KeySerialNumber")) + } + if s.KeySerialNumber != nil && len(*s.KeySerialNumber) < 20 { + invalidParams.Add(request.NewErrParamMinLen("KeySerialNumber", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKeySerialNumber sets the KeySerialNumber field's value. +func (s *ExportDukptInitialKey) SetKeySerialNumber(v string) *ExportDukptInitialKey { + s.KeySerialNumber = &v + return s +} + type ExportKeyInput struct { _ struct{} `type:"structure"` + // The attributes for IPEK generation during export. + ExportAttributes *ExportAttributes `type:"structure"` + // The KeyARN of the key under export from Amazon Web Services Payment Cryptography. // // ExportKeyIdentifier is a required field @@ -3295,6 +3479,11 @@ if s.KeyMaterial == nil { invalidParams.Add(request.NewErrParamRequired("KeyMaterial")) } + if s.ExportAttributes != nil { + if err := s.ExportAttributes.Validate(); err != nil { + invalidParams.AddNested("ExportAttributes", err.(request.ErrInvalidParams)) + } + } if s.KeyMaterial != nil { if err := s.KeyMaterial.Validate(); err != nil { invalidParams.AddNested("KeyMaterial", err.(request.ErrInvalidParams)) @@ -3307,6 +3496,12 @@ return nil } +// SetExportAttributes sets the ExportAttributes field's value. +func (s *ExportKeyInput) SetExportAttributes(v *ExportAttributes) *ExportKeyInput { + s.ExportAttributes = v + return s +} + // SetExportKeyIdentifier sets the ExportKeyIdentifier field's value. func (s *ExportKeyInput) SetExportKeyIdentifier(v string) *ExportKeyInput { s.ExportKeyIdentifier = &v @@ -3320,14 +3515,16 @@ } // Parameter information for key material export from Amazon Web Services Payment -// Cryptography. +// Cryptography using TR-31 or TR-34 key exchange method. type ExportKeyMaterial struct { _ struct{} `type:"structure"` - // Parameter information for key material export using TR-31 standard. + // Parameter information for key material export using symmetric TR-31 key exchange + // method. Tr31KeyBlock *ExportTr31KeyBlock `type:"structure"` - // Parameter information for key material export using TR-34 standard. + // Parameter information for key material export using the asymmetric TR-34 + // key exchange method. Tr34KeyBlock *ExportTr34KeyBlock `type:"structure"` } @@ -3384,7 +3581,7 @@ type ExportKeyOutput struct { _ struct{} `type:"structure"` - // The key material under export as a TR-34 or TR-31 wrapped key block. + // The key material under export as a TR-34 WrappedKeyBlock or a TR-31 WrappedKeyBlock. WrappedKey *WrappedKey `type:"structure"` } @@ -3412,7 +3609,8 @@ return s } -// Parameter information for key material export using TR-31 standard. +// Parameter information for key material export using symmetric TR-31 key exchange +// method. type ExportTr31KeyBlock struct { _ struct{} `type:"structure"` @@ -3463,7 +3661,8 @@ return s } -// Parameter information for key material export using TR-34 standard. +// Parameter information for key material export using the asymmetric TR-34 +// key exchange method. type ExportTr34KeyBlock struct { _ struct{} `type:"structure"` @@ -3758,8 +3957,8 @@ KeyMaterialType *string `type:"string" required:"true" enum:"KeyMaterialType"` // The signing key algorithm to generate a signing key certificate. This certificate - // signs the wrapped key under export within the TR-34 key block cryptogram. - // RSA_2048 is the only signing key algorithm allowed. + // signs the wrapped key under export within the TR-34 key block. RSA_2048 is + // the only signing key algorithm allowed. // // SigningKeyAlgorithm is a required field SigningKeyAlgorithm *string `type:"string" required:"true" enum:"KeyAlgorithm"` @@ -3832,8 +4031,9 @@ // SigningKeyAlgorithm is a required field SigningKeyAlgorithm *string `type:"string" required:"true" enum:"KeyAlgorithm"` - // The signing key certificate of the public key for signature within the TR-34 - // key block cryptogram. The certificate expires after 7 days. + // The signing key certificate in PEM format (base64 encoded) of the public + // key for signature within the TR-34 key block. The certificate expires after + // 7 days. // // SigningKeyCertificate is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetParametersForExportOutput's @@ -3842,8 +4042,8 @@ // SigningKeyCertificate is a required field SigningKeyCertificate *string `min:"1" type:"string" required:"true" sensitive:"true"` - // The certificate chain that signed the signing key certificate. This is the - // root certificate authority (CA) within your service account. + // The root certificate authority (CA) that signed the signing key certificate + // in PEM format (base64 encoded). // // SigningKeyCertificateChain is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetParametersForExportOutput's @@ -3904,16 +4104,20 @@ type GetParametersForImportInput struct { _ struct{} `type:"structure"` - // The key block format type such as TR-34 or TR-31 to use during key material - // import. Import token is only required for TR-34 key import TR34_KEY_BLOCK. - // Import token is not required for TR-31 key import. + // The method to use for key material import. Import token is only required + // for TR-34 WrappedKeyBlock (TR34_KEY_BLOCK). + // + // Import token is not required for TR-31, root public key cerificate or trusted + // public key certificate. // // KeyMaterialType is a required field KeyMaterialType *string `type:"string" required:"true" enum:"KeyMaterialType"` // The wrapping key algorithm to generate a wrapping key certificate. This certificate - // wraps the key under import within the TR-34 key block cryptogram. RSA_2048 - // is the only wrapping key algorithm allowed. + // wraps the key under import. + // + // At this time, RSA_2048, RSA_3072, RSA_4096 are the only allowed algorithms + // for TR-34 WrappedKeyBlock import. // // WrappingKeyAlgorithm is a required field WrappingKeyAlgorithm *string `type:"string" required:"true" enum:"KeyAlgorithm"` @@ -3980,14 +4184,13 @@ // ParametersValidUntilTimestamp is a required field ParametersValidUntilTimestamp *time.Time `type:"timestamp" required:"true"` - // The algorithm of the wrapping key for use within TR-34 key block. RSA_2048 - // is the only wrapping key algorithm allowed. + // The algorithm of the wrapping key for use within TR-34 WrappedKeyBlock. // // WrappingKeyAlgorithm is a required field WrappingKeyAlgorithm *string `type:"string" required:"true" enum:"KeyAlgorithm"` - // The wrapping key certificate of the wrapping key for use within the TR-34 - // key block. The certificate expires in 7 days. + // The wrapping key certificate in PEM format (base64 encoded) of the wrapping + // key for use within the TR-34 key block. The certificate expires in 7 days. // // WrappingKeyCertificate is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetParametersForImportOutput's @@ -3996,9 +4199,8 @@ // WrappingKeyCertificate is a required field WrappingKeyCertificate *string `min:"1" type:"string" required:"true" sensitive:"true"` - // The Amazon Web Services Payment Cryptography certificate chain that signed - // the wrapping key certificate. This is the root certificate authority (CA) - // within your service account. + // The Amazon Web Services Payment Cryptography root certificate authority (CA) + // that signed the wrapping key certificate in PEM format (base64 encoded). // // WrappingKeyCertificateChain is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetParametersForImportOutput's @@ -4108,9 +4310,9 @@ type GetPublicKeyCertificateOutput struct { _ struct{} `type:"structure"` - // The public key component of the asymmetric key pair in a certificate (PEM) - // format. It is signed by the root certificate authority (CA) within your service - // account. The certificate expires in 90 days. + // The public key component of the asymmetric key pair in a certificate PEM + // format (base64 encoded). It is signed by the root certificate authority (CA). + // The certificate expires in 90 days. // // KeyCertificate is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetPublicKeyCertificateOutput's @@ -4119,9 +4321,8 @@ // KeyCertificate is a required field KeyCertificate *string `min:"1" type:"string" required:"true" sensitive:"true"` - // The certificate chain that signed the public key certificate of the asymmetric - // key pair. This is the root certificate authority (CA) within your service - // account. + // The root certificate authority (CA) that signed the public key certificate + // in PEM format (base64 encoded) of the asymmetric key pair. // // KeyCertificateChain is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetPublicKeyCertificateOutput's @@ -4168,13 +4369,13 @@ Enabled *bool `type:"boolean"` // The algorithm that Amazon Web Services Payment Cryptography uses to calculate - // the key check value (KCV) for DES and AES keys. + // the key check value (KCV). It is used to validate the key integrity. // - // For DES key, the KCV is computed by encrypting 8 bytes, each with value '00', - // with the key to be checked and retaining the 3 highest order bytes of the - // encrypted result. For AES key, the KCV is computed by encrypting 8 bytes, - // each with value '01', with the key to be checked and retaining the 3 highest - // order bytes of the encrypted result. + // For TDES keys, the KCV is computed by encrypting 8 bytes, each with value + // of zero, with the key to be checked and retaining the 3 highest order bytes + // of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm + // where the input data is 16 bytes of zero and retaining the 3 highest order + // bytes of the encrypted result. KeyCheckValueAlgorithm *string `type:"string" enum:"KeyCheckValueAlgorithm"` // The key or public key certificate type to use during key material import, @@ -4183,20 +4384,19 @@ // KeyMaterial is a required field KeyMaterial *ImportKeyMaterial `type:"structure" required:"true"` - // The tags to attach to the key. Each tag consists of a tag key and a tag value. - // Both the tag key and the tag value are required, but the tag value can be - // an empty (null) string. You can't have more than one tag on an Amazon Web - // Services Payment Cryptography key with the same tag key. + // Assigns one or more tags to the Amazon Web Services Payment Cryptography + // key. Use this parameter to tag a key when it is imported. To tag an existing + // Amazon Web Services Payment Cryptography key, use the TagResource operation. // + // Each tag consists of a tag key and a tag value. Both the tag key and the + // tag value are required, but the tag value can be an empty (null) string. // You can't have more than one tag on an Amazon Web Services Payment Cryptography // key with the same tag key. If you specify an existing tag key with a different // tag value, Amazon Web Services Payment Cryptography replaces the current // tag value with the specified one. // - // To use this parameter, you must have TagResource permission. - // - // Don't include confidential or sensitive information in this field. This field - // may be displayed in plaintext in CloudTrail logs and other output. + // Don't include personal, confidential or sensitive information in this field. + // This field may be displayed in plaintext in CloudTrail logs and other output. // // Tagging or untagging an Amazon Web Services Payment Cryptography key can // allow or deny permission to the key. @@ -4273,17 +4473,20 @@ return s } -// Parameter information for key material import. +// Parameter information for key material import into Amazon Web Services Payment +// Cryptography using TR-31 or TR-34 key exchange method. type ImportKeyMaterial struct { _ struct{} `type:"structure"` // Parameter information for root public key certificate import. RootCertificatePublicKey *RootCertificatePublicKey `type:"structure"` - // Parameter information for key material import using TR-31 standard. + // Parameter information for key material import using symmetric TR-31 key exchange + // method. Tr31KeyBlock *ImportTr31KeyBlock `type:"structure"` - // Parameter information for key material import using TR-34 standard. + // Parameter information for key material import using the asymmetric TR-34 + // key exchange method. Tr34KeyBlock *ImportTr34KeyBlock `type:"structure"` // Parameter information for trusted public key certificate import. @@ -4396,11 +4599,12 @@ return s } -// Parameter information for key material import using TR-31 standard. +// Parameter information for key material import using symmetric TR-31 key exchange +// method. type ImportTr31KeyBlock struct { _ struct{} `type:"structure"` - // The TR-34 wrapped key block to import. + // The TR-31 wrapped key block to import. // // WrappedKeyBlock is a required field WrappedKeyBlock *string `min:"56" type:"string" required:"true"` @@ -4464,7 +4668,8 @@ return s } -// Parameter information for key material import using TR-34 standard. +// Parameter information for key material import using the asymmetric TR-34 +// key exchange method. type ImportTr34KeyBlock struct { _ struct{} `type:"structure"` @@ -4474,9 +4679,10 @@ // CertificateAuthorityPublicKeyIdentifier is a required field CertificateAuthorityPublicKeyIdentifier *string `min:"7" type:"string" required:"true"` - // The import token that initiates key import into Amazon Web Services Payment - // Cryptography. It expires after 7 days. You can use the same import token - // to import multiple keys to the same service account. + // The import token that initiates key import using the asymmetric TR-34 key + // exchange method into Amazon Web Services Payment Cryptography. It expires + // after 7 days. You can use the same import token to import multiple keys to + // the same service account. // // ImportToken is a required field ImportToken *string `type:"string" required:"true"` @@ -4493,7 +4699,7 @@ RandomNonce *string `min:"16" type:"string"` // The public key component in PEM certificate format of the private key that - // signs the KDH TR-34 wrapped key block. + // signs the KDH TR-34 WrappedKeyBlock. // // SigningKeyCertificate is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by ImportTr34KeyBlock's @@ -4706,21 +4912,19 @@ KeyAttributes *KeyAttributes `type:"structure" required:"true"` // The key check value (KCV) is used to check if all parties holding a given - // key have the same key or to detect that a key has changed. Amazon Web Services - // Payment Cryptography calculates the KCV by using standard algorithms, typically - // by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result - // to the first 3 bytes, or 6 hex digits, of the resulting cryptogram. + // key have the same key or to detect that a key has changed. // // KeyCheckValue is a required field KeyCheckValue *string `min:"4" type:"string" required:"true"` - // The algorithm used for calculating key check value (KCV) for DES and AES - // keys. For a DES key, Amazon Web Services Payment Cryptography computes the - // KCV by encrypting 8 bytes, each with value '00', with the key to be checked - // and retaining the 3 highest order bytes of the encrypted result. For an AES - // key, Amazon Web Services Payment Cryptography computes the KCV by encrypting - // 8 bytes, each with value '01', with the key to be checked and retaining the - // 3 highest order bytes of the encrypted result. + // The algorithm that Amazon Web Services Payment Cryptography uses to calculate + // the key check value (KCV). It is used to validate the key integrity. + // + // For TDES keys, the KCV is computed by encrypting 8 bytes, each with value + // of zero, with the key to be checked and retaining the 3 highest order bytes + // of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm + // where the input data is 16 bytes of zero and retaining the 3 highest order + // bytes of the encrypted result. // // KeyCheckValueAlgorithm is a required field KeyCheckValueAlgorithm *string `type:"string" required:"true" enum:"KeyCheckValueAlgorithm"` @@ -5082,10 +5286,7 @@ KeyAttributes *KeyAttributes `type:"structure" required:"true"` // The key check value (KCV) is used to check if all parties holding a given - // key have the same key or to detect that a key has changed. Amazon Web Services - // Payment Cryptography calculates the KCV by using standard algorithms, typically - // by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result - // to the first 3 bytes, or 6 hex digits, of the resulting cryptogram. + // key have the same key or to detect that a key has changed. // // KeyCheckValue is a required field KeyCheckValue *string `min:"4" type:"string" required:"true"` @@ -5266,6 +5467,9 @@ // Use this parameter to specify the maximum number of items to return. When // this value is present, Amazon Web Services Payment Cryptography does not // return more than the specified number of items, but it might return fewer. + // + // This value is optional. If you include a value, it must be between 1 and + // 100, inclusive. If you do not include a value, it defaults to 50. MaxResults *int64 `min:"1" type:"integer"` // Use this parameter in a subsequent request after you receive a response with @@ -5376,6 +5580,9 @@ // Use this parameter to specify the maximum number of items to return. When // this value is present, Amazon Web Services Payment Cryptography does not // return more than the specified number of items, but it might return fewer. + // + // This value is optional. If you include a value, it must be between 1 and + // 100, inclusive. If you do not include a value, it defaults to 50. MaxResults *int64 `min:"1" type:"integer"` // Use this parameter in a subsequent request after you receive a response with @@ -6082,13 +6289,13 @@ // you specify an existing tag key with a different tag value, Amazon Web Services // Payment Cryptography replaces the current tag value with the new one. // - // Don't include confidential or sensitive information in this field. This field - // may be displayed in plaintext in CloudTrail logs and other output. + // Don't include personal, confidential or sensitive information in this field. + // This field may be displayed in plaintext in CloudTrail logs and other output. // // To use this parameter, you must have TagResource permission in an IAM policy. // - // Don't include confidential or sensitive information in this field. This field - // may be displayed in plaintext in CloudTrail logs and other output. + // Don't include personal, confidential or sensitive information in this field. + // This field may be displayed in plaintext in CloudTrail logs and other output. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` @@ -6580,11 +6787,26 @@ return s.RespMetadata.RequestID } -// Parameter information for generating a wrapped key using TR-31 or TR-34 standard. +// Parameter information for generating a WrappedKeyBlock for key exchange. type WrappedKey struct { _ struct{} `type:"structure"` - // Parameter information for generating a wrapped key using TR-31 or TR-34 standard. + // The key check value (KCV) is used to check if all parties holding a given + // key have the same key or to detect that a key has changed. + KeyCheckValue *string `min:"4" type:"string"` + + // The algorithm that Amazon Web Services Payment Cryptography uses to calculate + // the key check value (KCV). It is used to validate the key integrity. + // + // For TDES keys, the KCV is computed by encrypting 8 bytes, each with value + // of zero, with the key to be checked and retaining the 3 highest order bytes + // of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm + // where the input data is 16 bytes of zero and retaining the 3 highest order + // bytes of the encrypted result. + KeyCheckValueAlgorithm *string `type:"string" enum:"KeyCheckValueAlgorithm"` + + // Parameter information for generating a wrapped key using TR-31 or TR-34 skey + // exchange method. // // KeyMaterial is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by WrappedKey's @@ -6622,6 +6844,18 @@ return s.String() } +// SetKeyCheckValue sets the KeyCheckValue field's value. +func (s *WrappedKey) SetKeyCheckValue(v string) *WrappedKey { + s.KeyCheckValue = &v + return s +} + +// SetKeyCheckValueAlgorithm sets the KeyCheckValueAlgorithm field's value. +func (s *WrappedKey) SetKeyCheckValueAlgorithm(v string) *WrappedKey { + s.KeyCheckValueAlgorithm = &v + return s +} + // SetKeyMaterial sets the KeyMaterial field's value. func (s *WrappedKey) SetKeyMaterial(v string) *WrappedKey { s.KeyMaterial = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/paymentcryptography/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/paymentcryptography/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/paymentcryptography/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/paymentcryptography/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,31 +3,31 @@ // Package paymentcryptography provides the client and types for making API // requests to Payment Cryptography Control Plane. // -// You use the Amazon Web Services Payment Cryptography Control Plane to manage -// the encryption keys you use for payment-related cryptographic operations. -// You can create, import, export, share, manage, and delete keys. You can also -// manage Identity and Access Management (IAM) policies for keys. For more information, -// see Identity and access management (https://docs.aws.amazon.com/payment-cryptography/latest/userguide/security-iam.html) +// Amazon Web Services Payment Cryptography Control Plane APIs manage encryption +// keys for use during payment-related cryptographic operations. You can create, +// import, export, share, manage, and delete keys. You can also manage Identity +// and Access Management (IAM) policies for keys. For more information, see +// Identity and access management (https://docs.aws.amazon.com/payment-cryptography/latest/userguide/security-iam.html) // in the Amazon Web Services Payment Cryptography User Guide. // // To use encryption keys for payment-related transaction processing and associated // cryptographic operations, you use the Amazon Web Services Payment Cryptography // Data Plane (https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/Welcome.html). -// You can encrypt, decrypt, generate, verify, and translate payment-related -// cryptographic operations. +// You can perform actions like encrypt, decrypt, generate, and verify payment-related +// data. // // All Amazon Web Services Payment Cryptography API calls must be signed and // transmitted using Transport Layer Security (TLS). We recommend you always // use the latest supported TLS version for logging API requests. // -// Amazon Web Services Payment Cryptography supports CloudTrail, a service that -// logs Amazon Web Services API calls and related events for your Amazon Web -// Services account and delivers them to an Amazon S3 bucket that you specify. -// By using the information collected by CloudTrail, you can determine what -// requests were made to Amazon Web Services Payment Cryptography, who made -// the request, when it was made, and so on. If you don't configure a trail, -// you can still view the most recent events in the CloudTrail console. For -// more information, see the CloudTrail User Guide (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/). +// Amazon Web Services Payment Cryptography supports CloudTrail for control +// plane operations, a service that logs Amazon Web Services API calls and related +// events for your Amazon Web Services account and delivers them to an Amazon +// S3 bucket you specify. By using the information collected by CloudTrail, +// you can determine what requests were made to Amazon Web Services Payment +// Cryptography, who made the request, when it was made, and so on. If you don't +// configure a trail, you can still view the most recent events in the CloudTrail +// console. For more information, see the CloudTrail User Guide (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/). // // See https://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-2021-09-14 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/personalize/api.go golang-github-aws-aws-sdk-go-1.48.14/service/personalize/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/personalize/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/personalize/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -56,9 +56,28 @@ // CreateBatchInferenceJob API operation for Amazon Personalize. // -// Creates a batch inference job. The operation can handle up to 50 million -// records and the input file must be in JSON format. For more information, -// see Creating a batch inference job (https://docs.aws.amazon.com/personalize/latest/dg/creating-batch-inference-job.html). +// Generates batch recommendations based on a list of items or users stored +// in Amazon S3 and exports the recommendations to an Amazon S3 bucket. +// +// To generate batch recommendations, specify the ARN of a solution version +// and an Amazon S3 URI for the input and output data. For user personalization, +// popular items, and personalized ranking solutions, the batch inference job +// generates a list of recommended items for each user ID in the input file. +// For related items solutions, the job generates a list of recommended items +// for each item ID in the input file. +// +// For more information, see Creating a batch inference job (https://docs.aws.amazon.com/personalize/latest/dg/getting-batch-recommendations.html). +// +// If you use the Similar-Items recipe, Amazon Personalize can add descriptive +// themes to batch recommendations. To generate themes, set the job's mode to +// THEME_GENERATION and specify the name of the field that contains item names +// in the input data. +// +// For more information about generating themes, see Batch recommendations with +// themes from Content Generator (https://docs.aws.amazon.com/personalize/latest/dg/themed-batch-recommendations.html). +// +// You can't get batch recommendations with the Trending-Now or Next-Best-Action +// recipes. // // 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 @@ -395,17 +414,21 @@ // CreateDatasetImportJob (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateDatasetImportJob.html) // to import your training data to a dataset. // -// There are three types of datasets: +// There are 5 types of datasets: // -// - Interactions +// - Item interactions // // - Items // // - Users // +// - Action interactions +// +// - Actions +// // Each dataset type has an associated schema with required field types. Only -// the Interactions dataset is required in order to train a model (also referred -// to as creating a solution). +// the Item interactions dataset is required in order to train a model (also +// referred to as creating a solution). // // A dataset can be in one of the following states: // @@ -631,12 +654,16 @@ // Personalize resources. A dataset group can contain at most three datasets, // one for each type of dataset: // -// - Interactions +// - Item interactions // // - Items // // - Users // +// - Actions +// +// - Action interactions +// // A dataset group can be a Domain dataset group, where you specify a domain // and use pre-configured resources like recommenders, or a Custom dataset group, // where you use custom resources, such as a solution with a solution version, @@ -771,6 +798,11 @@ // to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon // S3 Resources (https://docs.aws.amazon.com/personalize/latest/dg/granting-personalize-s3-access.html). // +// If you already created a recommender or deployed a custom solution version +// with a campaign, how new bulk records influence recommendations depends on +// the domain use case or recipe that you use. For more information, see How +// new data influences real-time recommendations (https://docs.aws.amazon.com/personalize/latest/dg/how-new-data-influences-recommendations.html). +// // By default, a dataset import job replaces any existing data in the dataset // that you imported in bulk. To add new records without replacing existing // data, specify INCREMENTAL for the import mode in the CreateDatasetImportJob @@ -899,7 +931,7 @@ // // When you create an event tracker, the response includes a tracking ID, which // you pass as a parameter when you use the PutEvents (https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html) -// operation. Amazon Personalize then appends the event data to the Interactions +// operation. Amazon Personalize then appends the event data to the Item interactions // dataset of the dataset group you specify in your event tracker. // // The event tracker can be in one of the following states: @@ -1993,9 +2025,8 @@ // DeleteEventTracker API operation for Amazon Personalize. // -// Deletes the event tracker. Does not delete the event-interactions dataset -// from the associated dataset group. For more information on event trackers, -// see CreateEventTracker (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateEventTracker.html). +// Deletes the event tracker. Does not delete the dataset from the dataset group. +// For more information on event trackers, see CreateEventTracker (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateEventTracker.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 @@ -6848,8 +6879,9 @@ // UpdateCampaign API operation for Amazon Personalize. // -// Updates a campaign by either deploying a new solution or changing the value -// of the campaign's minProvisionedTPS parameter. +// Updates a campaign to deploy a retrained solution version with an existing +// campaign, change your campaign's minProvisionedTPS, or modify your campaign's +// configuration, such as the exploration configuration. // // To update a campaign, the campaign status must be ACTIVE or CREATE FAILED. // Check the campaign status using the DescribeCampaign (https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeCampaign.html) @@ -6859,7 +6891,9 @@ // The campaign will use the previous solution version and campaign configuration // to generate recommendations until the latest campaign update status is Active. // -// For more information on campaigns, see CreateCampaign (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateCampaign.html). +// For more information about updating a campaign, including code samples, see +// Updating a campaign (https://docs.aws.amazon.com/personalize/latest/dg/update-campaigns.html). +// For more information about campaigns, see Creating a campaign (https://docs.aws.amazon.com/personalize/latest/dg/campaigns.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 @@ -7415,6 +7449,9 @@ // job. BatchInferenceJobConfig *BatchInferenceJobConfig `locationName:"batchInferenceJobConfig" type:"structure"` + // The job's mode. + BatchInferenceJobMode *string `locationName:"batchInferenceJobMode" type:"string" enum:"BatchInferenceJobMode"` + // The time at which the batch inference job was created. CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"` @@ -7461,6 +7498,9 @@ // // * CREATE FAILED Status *string `locationName:"status" type:"string"` + + // The job's theme generation settings. + ThemeGenerationConfig *ThemeGenerationConfig `locationName:"themeGenerationConfig" type:"structure"` } // String returns the string representation. @@ -7493,6 +7533,12 @@ return s } +// SetBatchInferenceJobMode sets the BatchInferenceJobMode field's value. +func (s *BatchInferenceJob) SetBatchInferenceJobMode(v string) *BatchInferenceJob { + s.BatchInferenceJobMode = &v + return s +} + // SetCreationDateTime sets the CreationDateTime field's value. func (s *BatchInferenceJob) SetCreationDateTime(v time.Time) *BatchInferenceJob { s.CreationDateTime = &v @@ -7559,6 +7605,12 @@ return s } +// SetThemeGenerationConfig sets the ThemeGenerationConfig field's value. +func (s *BatchInferenceJob) SetThemeGenerationConfig(v *ThemeGenerationConfig) *BatchInferenceJob { + s.ThemeGenerationConfig = v + return s +} + // The configuration details of a batch inference job. type BatchInferenceJobConfig struct { _ struct{} `type:"structure"` @@ -7709,6 +7761,9 @@ // The Amazon Resource Name (ARN) of the batch inference job. BatchInferenceJobArn *string `locationName:"batchInferenceJobArn" type:"string"` + // The job's mode. + BatchInferenceJobMode *string `locationName:"batchInferenceJobMode" type:"string" enum:"BatchInferenceJobMode"` + // The time at which the batch inference job was created. CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"` @@ -7761,6 +7816,12 @@ return s } +// SetBatchInferenceJobMode sets the BatchInferenceJobMode field's value. +func (s *BatchInferenceJobSummary) SetBatchInferenceJobMode(v string) *BatchInferenceJobSummary { + s.BatchInferenceJobMode = &v + return s +} + // SetCreationDateTime sets the CreationDateTime field's value. func (s *BatchInferenceJobSummary) SetCreationDateTime(v time.Time) *BatchInferenceJobSummary { s.CreationDateTime = &v @@ -8271,6 +8332,15 @@ type CampaignConfig struct { _ struct{} `type:"structure"` + // Whether metadata with recommendations is enabled for the campaign. If enabled, + // you can specify the columns from your Items dataset in your request for recommendations. + // Amazon Personalize returns this data for each item in the recommendation + // response. + // + // If you enable metadata in recommendations, you will incur additional costs. + // For more information, see Amazon Personalize pricing (https://aws.amazon.com/personalize/pricing/). + EnableMetadataWithRecommendations *bool `locationName:"enableMetadataWithRecommendations" type:"boolean"` + // Specifies the exploration configuration hyperparameters, including explorationWeight // and explorationItemAgeCutOff, you want to use to configure the amount of // item exploration Amazon Personalize uses when recommending items. Provide @@ -8298,6 +8368,12 @@ return s.String() } +// SetEnableMetadataWithRecommendations sets the EnableMetadataWithRecommendations field's value. +func (s *CampaignConfig) SetEnableMetadataWithRecommendations(v bool) *CampaignConfig { + s.EnableMetadataWithRecommendations = &v + return s +} + // SetItemExplorationConfig sets the ItemExplorationConfig field's value. func (s *CampaignConfig) SetItemExplorationConfig(v map[string]*string) *CampaignConfig { s.ItemExplorationConfig = v @@ -8597,6 +8673,14 @@ // The configuration details of a batch inference job. BatchInferenceJobConfig *BatchInferenceJobConfig `locationName:"batchInferenceJobConfig" type:"structure"` + // The mode of the batch inference job. To generate descriptive themes for groups + // of similar items, set the job mode to THEME_GENERATION. If you don't want + // to generate themes, use the default BATCH_INFERENCE. + // + // When you get batch recommendations with themes, you will incur additional + // costs. For more information, see Amazon Personalize pricing (https://aws.amazon.com/personalize/pricing/). + BatchInferenceJobMode *string `locationName:"batchInferenceJobMode" type:"string" enum:"BatchInferenceJobMode"` + // The ARN of the filter to apply to the batch inference job. For more information // on using filters, see Filtering batch recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter-batch.html). FilterArn *string `locationName:"filterArn" type:"string"` @@ -8635,6 +8719,10 @@ // A list of tags (https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html) // to apply to the batch inference job. Tags []*Tag `locationName:"tags" type:"list"` + + // For theme generation jobs, specify the name of the column in your Items dataset + // that contains each item's name. + ThemeGenerationConfig *ThemeGenerationConfig `locationName:"themeGenerationConfig" type:"structure"` } // String returns the string representation. @@ -8696,6 +8784,11 @@ } } } + if s.ThemeGenerationConfig != nil { + if err := s.ThemeGenerationConfig.Validate(); err != nil { + invalidParams.AddNested("ThemeGenerationConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -8709,6 +8802,12 @@ return s } +// SetBatchInferenceJobMode sets the BatchInferenceJobMode field's value. +func (s *CreateBatchInferenceJobInput) SetBatchInferenceJobMode(v string) *CreateBatchInferenceJobInput { + s.BatchInferenceJobMode = &v + return s +} + // SetFilterArn sets the FilterArn field's value. func (s *CreateBatchInferenceJobInput) SetFilterArn(v string) *CreateBatchInferenceJobInput { s.FilterArn = &v @@ -8757,6 +8856,12 @@ return s } +// SetThemeGenerationConfig sets the ThemeGenerationConfig field's value. +func (s *CreateBatchInferenceJobInput) SetThemeGenerationConfig(v *ThemeGenerationConfig) *CreateBatchInferenceJobInput { + s.ThemeGenerationConfig = v + return s +} + type CreateBatchInferenceJobOutput struct { _ struct{} `type:"structure"` @@ -9609,6 +9714,10 @@ // // * Users // + // * Actions + // + // * Action_Interactions + // // DatasetType is a required field DatasetType *string `locationName:"datasetType" type:"string" required:"true"` @@ -10605,16 +10714,21 @@ Tags []*Tag `locationName:"tags" type:"list"` // The scope of training to be performed when creating the solution version. - // The FULL option trains the solution version based on the entirety of the - // input solution's training data, while the UPDATE option processes only the - // data that has changed in comparison to the input solution. Choose UPDATE - // when you want to incrementally update your solution version instead of creating - // an entirely new one. + // The default is FULL. This creates a completely new model based on the entirety + // of the training data from the datasets in your dataset group. + // + // If you use User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html), + // you can specify a training mode of UPDATE. This updates the model to consider + // new items for recommendations. It is not a full retraining. You should still + // complete a full retraining weekly. If you specify UPDATE, Amazon Personalize + // will stop automatic updates for the solution version. To resume updates, + // create a new solution with training mode set to FULL and deploy it in a campaign. + // For more information about automatic updates, see Automatic updates (https://docs.aws.amazon.com/personalize/latest/dg/use-case-recipe-features.html#maintaining-with-automatic-updates). // // The UPDATE option can only be used when you already have an active solution // version created from the input solution using the FULL option and the input // solution was trained with the User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html) - // recipe or the HRNN-Coldstart (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-hrnn-coldstart.html) + // recipe or the legacy HRNN-Coldstart (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-hrnn-coldstart.html) // recipe. TrainingMode *string `locationName:"trainingMode" type:"string" enum:"TrainingMode"` } @@ -10773,6 +10887,10 @@ // * Items // // * Users + // + // * Actions + // + // * Action_Interactions DatasetType *string `locationName:"datasetType" type:"string"` // A time stamp that shows when the dataset was updated. @@ -10795,6 +10913,12 @@ // // * DELETE PENDING > DELETE IN_PROGRESS Status *string `locationName:"status" type:"string"` + + // The ID of the event tracker for an Action interactions dataset. You specify + // the tracker's ID in the PutActionInteractions API operation. Amazon Personalize + // uses it to direct new data to the Action interactions dataset in your dataset + // group. + TrackingId *string `locationName:"trackingId" type:"string"` } // String returns the string representation. @@ -10869,6 +10993,12 @@ return s } +// SetTrackingId sets the TrackingId field's value. +func (s *Dataset) SetTrackingId(v string) *Dataset { + s.TrackingId = &v + return s +} + // Describes a job that exports a dataset to an Amazon S3 bucket. For more information, // see CreateDatasetExportJob (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateDatasetExportJob.html). // @@ -11134,8 +11264,9 @@ return s } -// A dataset group is a collection of related datasets (Interactions, User, -// and Item). You create a dataset group by calling CreateDatasetGroup (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateDatasetGroup.html). +// A dataset group is a collection of related datasets (Item interactions, Users, +// Items, Actions, Action interactions). You create a dataset group by calling +// CreateDatasetGroup (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateDatasetGroup.html). // You then create a dataset and add it to a dataset group by calling CreateDataset // (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateDataset.html). // The dataset group is used to create and train a solution by calling CreateSolution @@ -11169,7 +11300,9 @@ // The name of the dataset group. Name *string `locationName:"name" min:"1" type:"string"` - // The ARN of the IAM role that has permissions to create the dataset group. + // The ARN of the Identity and Access Management (IAM) role that has permissions + // to access the Key Management Service (KMS) key. Supplying an IAM role is + // only valid when also specifying a KMS key. RoleArn *string `locationName:"roleArn" type:"string"` // The current status of the dataset group. @@ -14316,6 +14449,54 @@ return s } +// A string to string map of the configuration details for theme generation. +type FieldsForThemeGeneration struct { + _ struct{} `type:"structure"` + + // The name of the Items dataset column that stores the name of each item in + // the dataset. + // + // ItemName is a required field + ItemName *string `locationName:"itemName" 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 FieldsForThemeGeneration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FieldsForThemeGeneration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FieldsForThemeGeneration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FieldsForThemeGeneration"} + if s.ItemName == nil { + invalidParams.Add(request.NewErrParamRequired("ItemName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetItemName sets the ItemName field's value. +func (s *FieldsForThemeGeneration) SetItemName(v string) *FieldsForThemeGeneration { + s.ItemName = &v + return s +} + // Contains information on a recommendation filter, including its ARN, status, // and filter expression. type Filter struct { @@ -15716,8 +15897,8 @@ // The maximum number of datasets to return. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // A token returned from the previous call to ListDatasetImportJobs for getting - // the next set of dataset import jobs (if they exist). + // A token returned from the previous call to ListDatasets for getting the next + // set of dataset import jobs (if they exist). NextToken *string `locationName:"nextToken" type:"string"` } @@ -17532,6 +17713,15 @@ type RecommenderConfig struct { _ struct{} `type:"structure"` + // Whether metadata with recommendations is enabled for the recommender. If + // enabled, you can specify the columns from your Items dataset in your request + // for recommendations. Amazon Personalize returns this data for each item in + // the recommendation response. + // + // If you enable metadata in recommendations, you will incur additional costs. + // For more information, see Amazon Personalize pricing (https://aws.amazon.com/personalize/pricing/). + EnableMetadataWithRecommendations *bool `locationName:"enableMetadataWithRecommendations" type:"boolean"` + // Specifies the exploration configuration hyperparameters, including explorationWeight // and explorationItemAgeCutOff, you want to use to configure the amount of // item exploration Amazon Personalize uses when recommending items. Provide @@ -17581,6 +17771,12 @@ return nil } +// SetEnableMetadataWithRecommendations sets the EnableMetadataWithRecommendations field's value. +func (s *RecommenderConfig) SetEnableMetadataWithRecommendations(v bool) *RecommenderConfig { + s.EnableMetadataWithRecommendations = &v + return s +} + // SetItemExplorationConfig sets the ItemExplorationConfig field's value. func (s *RecommenderConfig) SetItemExplorationConfig(v map[string]*string) *RecommenderConfig { s.ItemExplorationConfig = v @@ -18197,7 +18393,7 @@ type SolutionConfig struct { _ struct{} `type:"structure"` - // Lists the hyperparameter names and ranges. + // Lists the algorithm hyperparameters and their values. AlgorithmHyperParameters map[string]*string `locationName:"algorithmHyperParameters" type:"map"` // The AutoMLConfig (https://docs.aws.amazon.com/personalize/latest/dg/API_AutoMLConfig.html) @@ -19049,6 +19245,58 @@ return s.String() } +// The configuration details for generating themes with a batch inference job. +type ThemeGenerationConfig struct { + _ struct{} `type:"structure"` + + // Fields used to generate descriptive themes for a batch inference job. + // + // FieldsForThemeGeneration is a required field + FieldsForThemeGeneration *FieldsForThemeGeneration `locationName:"fieldsForThemeGeneration" 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 ThemeGenerationConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThemeGenerationConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ThemeGenerationConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ThemeGenerationConfig"} + if s.FieldsForThemeGeneration == nil { + invalidParams.Add(request.NewErrParamRequired("FieldsForThemeGeneration")) + } + if s.FieldsForThemeGeneration != nil { + if err := s.FieldsForThemeGeneration.Validate(); err != nil { + invalidParams.AddNested("FieldsForThemeGeneration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFieldsForThemeGeneration sets the FieldsForThemeGeneration field's value. +func (s *ThemeGenerationConfig) SetFieldsForThemeGeneration(v *FieldsForThemeGeneration) *ThemeGenerationConfig { + s.FieldsForThemeGeneration = v + return s +} + // The request contains more tag keys than can be associated with a resource // (50 tag keys per resource). type TooManyTagKeysException struct { @@ -19744,6 +19992,22 @@ } const ( + // BatchInferenceJobModeBatchInference is a BatchInferenceJobMode enum value + BatchInferenceJobModeBatchInference = "BATCH_INFERENCE" + + // BatchInferenceJobModeThemeGeneration is a BatchInferenceJobMode enum value + BatchInferenceJobModeThemeGeneration = "THEME_GENERATION" +) + +// BatchInferenceJobMode_Values returns all elements of the BatchInferenceJobMode enum +func BatchInferenceJobMode_Values() []string { + return []string{ + BatchInferenceJobModeBatchInference, + BatchInferenceJobModeThemeGeneration, + } +} + +const ( // DomainEcommerce is a Domain enum value DomainEcommerce = "ECOMMERCE" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/personalizeevents/api.go golang-github-aws-aws-sdk-go-1.48.14/service/personalizeevents/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/personalizeevents/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/personalizeevents/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,186 @@ "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opPutActionInteractions = "PutActionInteractions" + +// PutActionInteractionsRequest generates a "aws/request.Request" representing the +// client's request for the PutActionInteractions 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 PutActionInteractions for more information on using the PutActionInteractions +// 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 PutActionInteractionsRequest method. +// req, resp := client.PutActionInteractionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22/PutActionInteractions +func (c *PersonalizeEvents) PutActionInteractionsRequest(input *PutActionInteractionsInput) (req *request.Request, output *PutActionInteractionsOutput) { + op := &request.Operation{ + Name: opPutActionInteractions, + HTTPMethod: "POST", + HTTPPath: "/action-interactions", + } + + if input == nil { + input = &PutActionInteractionsInput{} + } + + output = &PutActionInteractionsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutActionInteractions API operation for Amazon Personalize Events. +// +// Records action interaction event data. An action interaction event is an +// interaction between a user and an action. For example, a user taking an action, +// such a enrolling in a membership program or downloading your app. +// +// For more information about recording action interactions, see Recording action +// interaction events (https://docs.aws.amazon.com/personalize/latest/dg/recording-action-interaction-events.html). +// For more information about actions in an Actions dataset, see Actions dataset +// (https://docs.aws.amazon.com/personalize/latest/dg/actions-datasets.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 Amazon Personalize Events's +// API operation PutActionInteractions for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// Provide a valid value for the field or parameter. +// +// - ResourceNotFoundException +// Could not find the specified resource. +// +// - ResourceInUseException +// The specified resource is in use. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22/PutActionInteractions +func (c *PersonalizeEvents) PutActionInteractions(input *PutActionInteractionsInput) (*PutActionInteractionsOutput, error) { + req, out := c.PutActionInteractionsRequest(input) + return out, req.Send() +} + +// PutActionInteractionsWithContext is the same as PutActionInteractions with the addition of +// the ability to pass a context and additional request options. +// +// See PutActionInteractions 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 *PersonalizeEvents) PutActionInteractionsWithContext(ctx aws.Context, input *PutActionInteractionsInput, opts ...request.Option) (*PutActionInteractionsOutput, error) { + req, out := c.PutActionInteractionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutActions = "PutActions" + +// PutActionsRequest generates a "aws/request.Request" representing the +// client's request for the PutActions 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 PutActions for more information on using the PutActions +// 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 PutActionsRequest method. +// req, resp := client.PutActionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22/PutActions +func (c *PersonalizeEvents) PutActionsRequest(input *PutActionsInput) (req *request.Request, output *PutActionsOutput) { + op := &request.Operation{ + Name: opPutActions, + HTTPMethod: "POST", + HTTPPath: "/actions", + } + + if input == nil { + input = &PutActionsInput{} + } + + output = &PutActionsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutActions API operation for Amazon Personalize Events. +// +// Adds one or more actions to an Actions dataset. For more information see +// Importing actions individually (https://docs.aws.amazon.com/personalize/latest/dg/importing-actions.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 Amazon Personalize Events's +// API operation PutActions for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// Provide a valid value for the field or parameter. +// +// - ResourceNotFoundException +// Could not find the specified resource. +// +// - ResourceInUseException +// The specified resource is in use. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22/PutActions +func (c *PersonalizeEvents) PutActions(input *PutActionsInput) (*PutActionsOutput, error) { + req, out := c.PutActionsRequest(input) + return out, req.Send() +} + +// PutActionsWithContext is the same as PutActions with the addition of +// the ability to pass a context and additional request options. +// +// See PutActions 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 *PersonalizeEvents) PutActionsWithContext(ctx aws.Context, input *PutActionsInput, opts ...request.Option) (*PutActionsOutput, error) { + req, out := c.PutActionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPutEvents = "PutEvents" // PutEventsRequest generates a "aws/request.Request" representing the @@ -57,8 +237,8 @@ // PutEvents API operation for Amazon Personalize Events. // -// Records user interaction event data. For more information see Recording Events -// (https://docs.aws.amazon.com/personalize/latest/dg/recording-events.html). +// Records item interaction event data. For more information see Recording item +// interaction events (https://docs.aws.amazon.com/personalize/latest/dg/recording-item-interaction-events.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 @@ -138,7 +318,7 @@ // PutItems API operation for Amazon Personalize Events. // // Adds one or more items to an Items dataset. For more information see Importing -// Items Incrementally (https://docs.aws.amazon.com/personalize/latest/dg/importing-items.html). +// items individually (https://docs.aws.amazon.com/personalize/latest/dg/importing-items.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 @@ -225,7 +405,7 @@ // PutUsers API operation for Amazon Personalize Events. // // Adds one or more users to a Users dataset. For more information see Importing -// Users Incrementally (https://docs.aws.amazon.com/personalize/latest/dg/importing-users.html). +// users individually (https://docs.aws.amazon.com/personalize/latest/dg/importing-users.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 @@ -267,25 +447,308 @@ return out, req.Send() } -// Represents user interaction event information sent using the PutEvents API. +// Represents action metadata added to an Action dataset using the PutActions +// API. For more information see Importing actions individually (https://docs.aws.amazon.com/personalize/latest/dg/importing-actions.html). +type Action struct { + _ struct{} `type:"structure"` + + // The ID associated with the action. + // + // ActionId is a required field + ActionId *string `locationName:"actionId" min:"1" type:"string" required:"true"` + + // A string map of action-specific metadata. Each element in the map consists + // of a key-value pair. For example, {"value": "100"}. + // + // The keys use camel case names that match the fields in the schema for the + // Actions dataset. In the previous example, the value matches the 'VALUE' field + // defined in the Actions schema. For categorical string data, to include multiple + // categories for a single action, separate each category with a pipe separator + // (|). For example, \"Deluxe|Premium\". + // + // Properties is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Action's + // String and GoString methods. + Properties *string `locationName:"properties" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Action) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Action) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Action) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Action"} + if s.ActionId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionId")) + } + if s.ActionId != nil && len(*s.ActionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionId", 1)) + } + if s.Properties != nil && len(*s.Properties) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Properties", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionId sets the ActionId field's value. +func (s *Action) SetActionId(v string) *Action { + s.ActionId = &v + return s +} + +// SetProperties sets the Properties field's value. +func (s *Action) SetProperties(v string) *Action { + s.Properties = &v + return s +} + +// Represents an action interaction event sent using the PutActionInteractions +// API. +type ActionInteraction struct { + _ struct{} `type:"structure"` + + // The ID of the action the user interacted with. This corresponds to the ACTION_ID + // field of the Action interaction schema. + // + // ActionId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionInteraction's + // String and GoString methods. + // + // ActionId is a required field + ActionId *string `locationName:"actionId" min:"1" type:"string" required:"true" sensitive:"true"` + + // An ID associated with the event. If an event ID is not provided, Amazon Personalize + // generates a unique ID for the event. An event ID is not used as an input + // to the model. Amazon Personalize uses the event ID to distinguish unique + // events. Any subsequent events after the first with the same event ID are + // not used in model training. + EventId *string `locationName:"eventId" min:"1" type:"string"` + + // The type of action interaction event. You can specify Viewed, Taken, and + // Not Taken event types. For more information about action interaction event + // type data, see Event type data (https://docs.aws.amazon.com/personalize/latest/dg/action-interaction-event-type-data.html). + // + // EventType is a required field + EventType *string `locationName:"eventType" min:"1" type:"string" required:"true"` + + // A list of action IDs that represents the sequence of actions you have shown + // the user. For example, ["actionId1", "actionId2", "actionId3"]. Amazon Personalize + // doesn't use impressions data from action interaction events. Instead, record + // multiple events for each action and use the Viewed event type. + Impression []*string `locationName:"impression" min:"1" type:"list"` + + // A string map of event-specific data that you might choose to record. For + // example, if a user takes an action, other than the action ID, you might also + // send the number of actions taken by the user. + // + // Each item in the map consists of a key-value pair. For example, + // + // {"numberOfActions": "12"} + // + // The keys use camel case names that match the fields in the Action interactions + // schema. In the above example, the numberOfActions would match the 'NUMBER_OF_ACTIONS' + // field defined in the Action interactions schema. + // + // The following can't be included as a keyword for properties (case insensitive). + // + // * userId + // + // * sessionId + // + // * eventType + // + // * timestamp + // + // * recommendationId + // + // * impression + // + // Properties is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionInteraction's + // String and GoString methods. + Properties *string `locationName:"properties" min:"1" type:"string" sensitive:"true"` + + // The ID of the list of recommendations that contains the action the user interacted + // with. + RecommendationId *string `locationName:"recommendationId" min:"1" type:"string"` + + // The ID associated with the user's visit. Your application generates a unique + // sessionId when a user first visits your website or uses your application. + // + // SessionId is a required field + SessionId *string `locationName:"sessionId" min:"1" type:"string" required:"true"` + + // The timestamp for when the action interaction event occurred. Timestamps + // must be in Unix epoch time format, in seconds. + // + // Timestamp is a required field + Timestamp *time.Time `locationName:"timestamp" type:"timestamp" required:"true"` + + // The ID of the user who interacted with the action. This corresponds to the + // USER_ID field of the Action interaction schema. + // + // UserId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ActionInteraction's + // String and GoString methods. + UserId *string `locationName:"userId" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionInteraction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionInteraction) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ActionInteraction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ActionInteraction"} + if s.ActionId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionId")) + } + if s.ActionId != nil && len(*s.ActionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionId", 1)) + } + if s.EventId != nil && len(*s.EventId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EventId", 1)) + } + if s.EventType == nil { + invalidParams.Add(request.NewErrParamRequired("EventType")) + } + if s.EventType != nil && len(*s.EventType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EventType", 1)) + } + if s.Impression != nil && len(s.Impression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Impression", 1)) + } + if s.Properties != nil && len(*s.Properties) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Properties", 1)) + } + if s.RecommendationId != nil && len(*s.RecommendationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecommendationId", 1)) + } + if s.SessionId == nil { + invalidParams.Add(request.NewErrParamRequired("SessionId")) + } + if s.SessionId != nil && len(*s.SessionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SessionId", 1)) + } + if s.Timestamp == nil { + invalidParams.Add(request.NewErrParamRequired("Timestamp")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionId sets the ActionId field's value. +func (s *ActionInteraction) SetActionId(v string) *ActionInteraction { + s.ActionId = &v + return s +} + +// SetEventId sets the EventId field's value. +func (s *ActionInteraction) SetEventId(v string) *ActionInteraction { + s.EventId = &v + return s +} + +// SetEventType sets the EventType field's value. +func (s *ActionInteraction) SetEventType(v string) *ActionInteraction { + s.EventType = &v + return s +} + +// SetImpression sets the Impression field's value. +func (s *ActionInteraction) SetImpression(v []*string) *ActionInteraction { + s.Impression = v + return s +} + +// SetProperties sets the Properties field's value. +func (s *ActionInteraction) SetProperties(v string) *ActionInteraction { + s.Properties = &v + return s +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *ActionInteraction) SetRecommendationId(v string) *ActionInteraction { + s.RecommendationId = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *ActionInteraction) SetSessionId(v string) *ActionInteraction { + s.SessionId = &v + return s +} + +// SetTimestamp sets the Timestamp field's value. +func (s *ActionInteraction) SetTimestamp(v time.Time) *ActionInteraction { + s.Timestamp = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *ActionInteraction) SetUserId(v string) *ActionInteraction { + s.UserId = &v + return s +} + +// Represents item interaction event information sent using the PutEvents API. type Event struct { _ struct{} `type:"structure" sensitive:"true"` // An ID associated with the event. If an event ID is not provided, Amazon Personalize // generates a unique ID for the event. An event ID is not used as an input - // to the model. Amazon Personalize uses the event ID to distinquish unique + // to the model. Amazon Personalize uses the event ID to distinguish unique // events. Any subsequent events after the first with the same event ID are // not used in model training. EventId *string `locationName:"eventId" min:"1" type:"string"` // The type of event, such as click or download. This property corresponds to - // the EVENT_TYPE field of your Interactions schema and depends on the types - // of events you are tracking. + // the EVENT_TYPE field of your Item interactions dataset's schema and depends + // on the types of events you are tracking. // // EventType is a required field EventType *string `locationName:"eventType" min:"1" type:"string" required:"true"` - // The event value that corresponds to the EVENT_VALUE field of the Interactions + // The event value that corresponds to the EVENT_VALUE field of the Item interactions // schema. EventValue *float64 `locationName:"eventValue" type:"float"` @@ -295,8 +758,8 @@ // recording impressions data, see Recording impressions data (https://docs.aws.amazon.com/personalize/latest/dg/recording-events.html#putevents-including-impressions-data). Impression []*string `locationName:"impression" min:"1" type:"list"` - // The item ID key that corresponds to the ITEM_ID field of the Interactions - // schema. + // The item ID key that corresponds to the ITEM_ID field of the Item interactions + // dataset's schema. // // ItemId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by Event's @@ -317,9 +780,23 @@ // // {"numberOfRatings": "12"} // - // The keys use camel case names that match the fields in the Interactions schema. - // In the above example, the numberOfRatings would match the 'NUMBER_OF_RATINGS' - // field defined in the Interactions schema. + // The keys use camel case names that match the fields in the Item interactions + // dataset's schema. In the above example, the numberOfRatings would match the + // 'NUMBER_OF_RATINGS' field defined in the Item interactions dataset's schema. + // + // The following can't be included as a keyword for properties (case insensitive). + // + // * userId + // + // * sessionId + // + // * eventType + // + // * timestamp + // + // * recommendationId + // + // * impression Properties aws.JSONValue `locationName:"properties" type:"jsonvalue"` // The ID of the list of recommendations that contains the item the user interacted @@ -513,7 +990,7 @@ } // Represents item metadata added to an Items dataset using the PutItems API. -// For more information see Importing Items Incrementally (https://docs.aws.amazon.com/personalize/latest/dg/importing-items.html). +// For more information see Importing items individually (https://docs.aws.amazon.com/personalize/latest/dg/importing-items.html). type Item struct { _ struct{} `type:"structure"` @@ -628,6 +1105,203 @@ return s } +type PutActionInteractionsInput struct { + _ struct{} `type:"structure"` + + // A list of action interaction events from the session. + // + // ActionInteractions is a required field + ActionInteractions []*ActionInteraction `locationName:"actionInteractions" min:"1" type:"list" required:"true"` + + // The ID of your action interaction event tracker. When you create an Action + // interactions dataset, Amazon Personalize creates an action interaction event + // tracker for you. For more information, see Action interaction event tracker + // ID (https://docs.aws.amazon.com/personalize/latest/dg/action-interaction-tracker-id.html). + // + // TrackingId is a required field + TrackingId *string `locationName:"trackingId" 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 PutActionInteractionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutActionInteractionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutActionInteractionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutActionInteractionsInput"} + if s.ActionInteractions == nil { + invalidParams.Add(request.NewErrParamRequired("ActionInteractions")) + } + if s.ActionInteractions != nil && len(s.ActionInteractions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionInteractions", 1)) + } + if s.TrackingId == nil { + invalidParams.Add(request.NewErrParamRequired("TrackingId")) + } + if s.TrackingId != nil && len(*s.TrackingId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TrackingId", 1)) + } + if s.ActionInteractions != nil { + for i, v := range s.ActionInteractions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ActionInteractions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionInteractions sets the ActionInteractions field's value. +func (s *PutActionInteractionsInput) SetActionInteractions(v []*ActionInteraction) *PutActionInteractionsInput { + s.ActionInteractions = v + return s +} + +// SetTrackingId sets the TrackingId field's value. +func (s *PutActionInteractionsInput) SetTrackingId(v string) *PutActionInteractionsInput { + s.TrackingId = &v + return s +} + +type PutActionInteractionsOutput 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 PutActionInteractionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutActionInteractionsOutput) GoString() string { + return s.String() +} + +type PutActionsInput struct { + _ struct{} `type:"structure"` + + // A list of action data. + // + // Actions is a required field + Actions []*Action `locationName:"actions" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the Actions dataset you are adding the + // action or actions to. + // + // DatasetArn is a required field + DatasetArn *string `locationName:"datasetArn" 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 PutActionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutActionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutActionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutActionsInput"} + if s.Actions == nil { + invalidParams.Add(request.NewErrParamRequired("Actions")) + } + if s.Actions != nil && len(s.Actions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) + } + if s.DatasetArn == nil { + invalidParams.Add(request.NewErrParamRequired("DatasetArn")) + } + if s.Actions != nil { + for i, v := range s.Actions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActions sets the Actions field's value. +func (s *PutActionsInput) SetActions(v []*Action) *PutActionsInput { + s.Actions = v + return s +} + +// SetDatasetArn sets the DatasetArn field's value. +func (s *PutActionsInput) SetDatasetArn(v string) *PutActionsInput { + s.DatasetArn = &v + return s +} + +type PutActionsOutput 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 PutActionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutActionsOutput) GoString() string { + return s.String() +} + type PutEventsInput struct { _ struct{} `type:"structure"` @@ -639,7 +1313,8 @@ // The session ID associated with the user's visit. Your application generates // the sessionId when a user first visits your website or uses your application. // Amazon Personalize uses the sessionId to associate events with the user before - // they log in. For more information, see Recording Events (https://docs.aws.amazon.com/personalize/latest/dg/recording-events.html). + // they log in. For more information, see Recording item interaction events + // (https://docs.aws.amazon.com/personalize/latest/dg/recording-item-interaction-events.html). // // SessionId is a required field SessionId *string `locationName:"sessionId" min:"1" type:"string" required:"true"` @@ -1085,7 +1760,7 @@ } // Represents user metadata added to a Users dataset using the PutUsers API. -// For more information see Importing Users Incrementally (https://docs.aws.amazon.com/personalize/latest/dg/importing-users.html). +// For more information see Importing users individually (https://docs.aws.amazon.com/personalize/latest/dg/importing-users.html). type User struct { _ struct{} `type:"structure"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/personalizeevents/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/personalizeevents/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/personalizeevents/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/personalizeevents/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -5,7 +5,8 @@ // // Amazon Personalize can consume real-time user event data, such as stream // or click data, and use it for model training either alone or combined with -// historical data. For more information see Recording Events (https://docs.aws.amazon.com/personalize/latest/dg/recording-events.html). +// historical data. For more information see Recording item interaction events +// (https://docs.aws.amazon.com/personalize/latest/dg/recording-item-interaction-events.html). // // See https://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/personalizeevents/personalizeeventsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/personalizeevents/personalizeeventsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/personalizeevents/personalizeeventsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/personalizeevents/personalizeeventsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // Amazon Personalize Events. // func myFunc(svc personalizeeventsiface.PersonalizeEventsAPI) bool { -// // Make svc.PutEvents request +// // Make svc.PutActionInteractions request // } // // func main() { @@ -42,7 +42,7 @@ // type mockPersonalizeEventsClient struct { // personalizeeventsiface.PersonalizeEventsAPI // } -// func (m *mockPersonalizeEventsClient) PutEvents(input *personalizeevents.PutEventsInput) (*personalizeevents.PutEventsOutput, error) { +// func (m *mockPersonalizeEventsClient) PutActionInteractions(input *personalizeevents.PutActionInteractionsInput) (*personalizeevents.PutActionInteractionsOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,14 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type PersonalizeEventsAPI interface { + PutActionInteractions(*personalizeevents.PutActionInteractionsInput) (*personalizeevents.PutActionInteractionsOutput, error) + PutActionInteractionsWithContext(aws.Context, *personalizeevents.PutActionInteractionsInput, ...request.Option) (*personalizeevents.PutActionInteractionsOutput, error) + PutActionInteractionsRequest(*personalizeevents.PutActionInteractionsInput) (*request.Request, *personalizeevents.PutActionInteractionsOutput) + + PutActions(*personalizeevents.PutActionsInput) (*personalizeevents.PutActionsOutput, error) + PutActionsWithContext(aws.Context, *personalizeevents.PutActionsInput, ...request.Option) (*personalizeevents.PutActionsOutput, error) + PutActionsRequest(*personalizeevents.PutActionsInput) (*request.Request, *personalizeevents.PutActionsOutput) + PutEvents(*personalizeevents.PutEventsInput) (*personalizeevents.PutEventsOutput, error) PutEventsWithContext(aws.Context, *personalizeevents.PutEventsInput, ...request.Option) (*personalizeevents.PutEventsOutput, error) PutEventsRequest(*personalizeevents.PutEventsInput) (*request.Request, *personalizeevents.PutEventsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/personalizeruntime/api.go golang-github-aws-aws-sdk-go-1.48.14/service/personalizeruntime/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/personalizeruntime/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/personalizeruntime/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -11,6 +11,95 @@ "github.com/aws/aws-sdk-go/private/protocol" ) +const opGetActionRecommendations = "GetActionRecommendations" + +// GetActionRecommendationsRequest generates a "aws/request.Request" representing the +// client's request for the GetActionRecommendations 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 GetActionRecommendations for more information on using the GetActionRecommendations +// 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 GetActionRecommendationsRequest method. +// req, resp := client.GetActionRecommendationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-runtime-2018-05-22/GetActionRecommendations +func (c *PersonalizeRuntime) GetActionRecommendationsRequest(input *GetActionRecommendationsInput) (req *request.Request, output *GetActionRecommendationsOutput) { + op := &request.Operation{ + Name: opGetActionRecommendations, + HTTPMethod: "POST", + HTTPPath: "/action-recommendations", + } + + if input == nil { + input = &GetActionRecommendationsInput{} + } + + output = &GetActionRecommendationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetActionRecommendations API operation for Amazon Personalize Runtime. +// +// Returns a list of recommended actions in sorted in descending order by prediction +// score. Use the GetActionRecommendations API if you have a custom campaign +// that deploys a solution version trained with a PERSONALIZED_ACTIONS recipe. +// +// For more information about PERSONALIZED_ACTIONS recipes, see PERSONALIZED_ACTIONS +// recipes (https://docs.aws.amazon.com/personalize/latest/dg/nexts-best-action-recipes.html). +// For more information about getting action recommendations, see Getting action +// recommendations (https://docs.aws.amazon.com/personalize/latest/dg/get-action-recommendations.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 Amazon Personalize Runtime's +// API operation GetActionRecommendations for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// Provide a valid value for the field or parameter. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-runtime-2018-05-22/GetActionRecommendations +func (c *PersonalizeRuntime) GetActionRecommendations(input *GetActionRecommendationsInput) (*GetActionRecommendationsOutput, error) { + req, out := c.GetActionRecommendationsRequest(input) + return out, req.Send() +} + +// GetActionRecommendationsWithContext is the same as GetActionRecommendations with the addition of +// the ability to pass a context and additional request options. +// +// See GetActionRecommendations 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 *PersonalizeRuntime) GetActionRecommendationsWithContext(ctx aws.Context, input *GetActionRecommendationsInput, opts ...request.Option) (*GetActionRecommendationsOutput, error) { + req, out := c.GetActionRecommendationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetPersonalizedRanking = "GetPersonalizedRanking" // GetPersonalizedRankingRequest generates a "aws/request.Request" representing the @@ -193,6 +282,131 @@ return out, req.Send() } +type GetActionRecommendationsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the campaign to use for getting action + // recommendations. This campaign must deploy a solution version trained with + // a PERSONALIZED_ACTIONS recipe. + CampaignArn *string `locationName:"campaignArn" type:"string"` + + // The ARN of the filter to apply to the returned recommendations. For more + // information, see Filtering Recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter.html). + // + // When using this parameter, be sure the filter resource is ACTIVE. + FilterArn *string `locationName:"filterArn" type:"string"` + + // The values to use when filtering recommendations. For each placeholder parameter + // in your filter expression, provide the parameter name (in matching case) + // as a key and the filter value(s) as the corresponding value. Separate multiple + // values for one parameter with a comma. + // + // For filter expressions that use an INCLUDE element to include actions, you + // must provide values for all parameters that are defined in the expression. + // For filters with expressions that use an EXCLUDE element to exclude actions, + // you can omit the filter-values. In this case, Amazon Personalize doesn't + // use that portion of the expression to filter recommendations. + // + // For more information, see Filtering recommendations and user segments (https://docs.aws.amazon.com/personalize/latest/dg/filter.html). + FilterValues map[string]*string `locationName:"filterValues" type:"map"` + + // The number of results to return. The default is 5. The maximum is 100. + NumResults *int64 `locationName:"numResults" type:"integer"` + + // The user ID of the user to provide action recommendations for. + UserId *string `locationName:"userId" 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 GetActionRecommendationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetActionRecommendationsInput) GoString() string { + return s.String() +} + +// SetCampaignArn sets the CampaignArn field's value. +func (s *GetActionRecommendationsInput) SetCampaignArn(v string) *GetActionRecommendationsInput { + s.CampaignArn = &v + return s +} + +// SetFilterArn sets the FilterArn field's value. +func (s *GetActionRecommendationsInput) SetFilterArn(v string) *GetActionRecommendationsInput { + s.FilterArn = &v + return s +} + +// SetFilterValues sets the FilterValues field's value. +func (s *GetActionRecommendationsInput) SetFilterValues(v map[string]*string) *GetActionRecommendationsInput { + s.FilterValues = v + return s +} + +// SetNumResults sets the NumResults field's value. +func (s *GetActionRecommendationsInput) SetNumResults(v int64) *GetActionRecommendationsInput { + s.NumResults = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *GetActionRecommendationsInput) SetUserId(v string) *GetActionRecommendationsInput { + s.UserId = &v + return s +} + +type GetActionRecommendationsOutput struct { + _ struct{} `type:"structure"` + + // A list of action recommendations sorted in descending order by prediction + // score. There can be a maximum of 100 actions in the list. For information + // about action scores, see How action recommendation scoring works (https://docs.aws.amazon.com/personalize/latest/dg/how-action-recommendation-scoring-works.html). + ActionList []*PredictedAction `locationName:"actionList" type:"list"` + + // The ID of the recommendation. + RecommendationId *string `locationName:"recommendationId" 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 GetActionRecommendationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetActionRecommendationsOutput) GoString() string { + return s.String() +} + +// SetActionList sets the ActionList field's value. +func (s *GetActionRecommendationsOutput) SetActionList(v []*PredictedAction) *GetActionRecommendationsOutput { + s.ActionList = v + return s +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *GetActionRecommendationsOutput) SetRecommendationId(v string) *GetActionRecommendationsOutput { + s.RecommendationId = &v + return s +} + type GetPersonalizedRankingInput struct { _ struct{} `type:"structure"` @@ -227,12 +441,23 @@ FilterValues map[string]*string `locationName:"filterValues" type:"map"` // A list of items (by itemId) to rank. If an item was not included in the training - // dataset, the item is appended to the end of the reranked list. The maximum - // is 500. + // dataset, the item is appended to the end of the reranked list. If you are + // including metadata in recommendations, the maximum is 50. Otherwise, the + // maximum is 500. // // InputList is a required field InputList []*string `locationName:"inputList" type:"list" required:"true"` + // If you enabled metadata in recommendations when you created or updated the + // campaign, specify metadata columns from your Items dataset to include in + // the personalized ranking. The map key is ITEMS and the value is a list of + // column names from your Items dataset. The maximum number of columns you can + // provide is 10. + // + // For information about enabling metadata for a campaign, see Enabling metadata + // in recommendations for a campaign (https://docs.aws.amazon.com/personalize/latest/dg/create-campaign-return-metadata.html). + MetadataColumns map[string][]*string `locationName:"metadataColumns" type:"map"` + // The user for which you want the campaign to provide a personalized ranking. // // UserId is a required field @@ -306,6 +531,12 @@ return s } +// SetMetadataColumns sets the MetadataColumns field's value. +func (s *GetPersonalizedRankingInput) SetMetadataColumns(v map[string][]*string) *GetPersonalizedRankingInput { + s.MetadataColumns = v + return s +} + // SetUserId sets the UserId field's value. func (s *GetPersonalizedRankingInput) SetUserId(v string) *GetPersonalizedRankingInput { s.UserId = &v @@ -389,7 +620,21 @@ // Required for RELATED_ITEMS recipe type. ItemId *string `locationName:"itemId" type:"string"` - // The number of results to return. The default is 25. The maximum is 500. + // If you enabled metadata in recommendations when you created or updated the + // campaign or recommender, specify the metadata columns from your Items dataset + // to include in item recommendations. The map key is ITEMS and the value is + // a list of column names from your Items dataset. The maximum number of columns + // you can provide is 10. + // + // For information about enabling metadata for a campaign, see Enabling metadata + // in recommendations for a campaign (https://docs.aws.amazon.com/personalize/latest/dg/create-campaign-return-metadata.html). + // For information about enabling metadata for a recommender, see Enabling metadata + // in recommendations for a recommender (https://docs.aws.amazon.com/personalize/latest/dg/create-recommender-return-metadata.html). + MetadataColumns map[string][]*string `locationName:"metadataColumns" type:"map"` + + // The number of results to return. The default is 25. If you are including + // metadata in recommendations, the maximum is 50. Otherwise, the maximum is + // 500. NumResults *int64 `locationName:"numResults" type:"integer"` // The promotions to apply to the recommendation request. A promotion defines @@ -476,6 +721,12 @@ return s } +// SetMetadataColumns sets the MetadataColumns field's value. +func (s *GetRecommendationsInput) SetMetadataColumns(v map[string][]*string) *GetRecommendationsInput { + s.MetadataColumns = v + return s +} + // SetNumResults sets the NumResults field's value. func (s *GetRecommendationsInput) SetNumResults(v int64) *GetRecommendationsInput { s.NumResults = &v @@ -605,6 +856,50 @@ return s.RespMetadata.RequestID } +// An object that identifies an action. +// +// The API returns a list of PredictedActions. +type PredictedAction struct { + _ struct{} `type:"structure"` + + // The ID of the recommended action. + ActionId *string `locationName:"actionId" type:"string"` + + // The score of the recommended action. For information about action scores, + // see How action recommendation scoring works (https://docs.aws.amazon.com/personalize/latest/dg/how-action-recommendation-scoring-works.html). + Score *float64 `locationName:"score" 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 PredictedAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PredictedAction) GoString() string { + return s.String() +} + +// SetActionId sets the ActionId field's value. +func (s *PredictedAction) SetActionId(v string) *PredictedAction { + s.ActionId = &v + return s +} + +// SetScore sets the Score field's value. +func (s *PredictedAction) SetScore(v float64) *PredictedAction { + s.Score = &v + return s +} + // An object that identifies an item. // // The and APIs return a list of PredictedItems. @@ -614,6 +909,9 @@ // The recommended item ID. ItemId *string `locationName:"itemId" type:"string"` + // Metadata about the item from your Items dataset. + Metadata map[string]*string `locationName:"metadata" type:"map"` + // The name of the promotion that included the predicted item. PromotionName *string `locationName:"promotionName" min:"1" type:"string"` @@ -646,6 +944,12 @@ return s } +// SetMetadata sets the Metadata field's value. +func (s *PredictedItem) SetMetadata(v map[string]*string) *PredictedItem { + s.Metadata = v + return s +} + // SetPromotionName sets the PromotionName field's value. func (s *PredictedItem) SetPromotionName(v string) *PredictedItem { s.PromotionName = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/personalizeruntime/personalizeruntimeiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/personalizeruntime/personalizeruntimeiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/personalizeruntime/personalizeruntimeiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/personalizeruntime/personalizeruntimeiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // Amazon Personalize Runtime. // func myFunc(svc personalizeruntimeiface.PersonalizeRuntimeAPI) bool { -// // Make svc.GetPersonalizedRanking request +// // Make svc.GetActionRecommendations request // } // // func main() { @@ -42,7 +42,7 @@ // type mockPersonalizeRuntimeClient struct { // personalizeruntimeiface.PersonalizeRuntimeAPI // } -// func (m *mockPersonalizeRuntimeClient) GetPersonalizedRanking(input *personalizeruntime.GetPersonalizedRankingInput) (*personalizeruntime.GetPersonalizedRankingOutput, error) { +// func (m *mockPersonalizeRuntimeClient) GetActionRecommendations(input *personalizeruntime.GetActionRecommendationsInput) (*personalizeruntime.GetActionRecommendationsOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type PersonalizeRuntimeAPI interface { + GetActionRecommendations(*personalizeruntime.GetActionRecommendationsInput) (*personalizeruntime.GetActionRecommendationsOutput, error) + GetActionRecommendationsWithContext(aws.Context, *personalizeruntime.GetActionRecommendationsInput, ...request.Option) (*personalizeruntime.GetActionRecommendationsOutput, error) + GetActionRecommendationsRequest(*personalizeruntime.GetActionRecommendationsInput) (*request.Request, *personalizeruntime.GetActionRecommendationsOutput) + GetPersonalizedRanking(*personalizeruntime.GetPersonalizedRankingInput) (*personalizeruntime.GetPersonalizedRankingOutput, error) GetPersonalizedRankingWithContext(aws.Context, *personalizeruntime.GetPersonalizedRankingInput, ...request.Option) (*personalizeruntime.GetPersonalizedRankingOutput, error) GetPersonalizedRankingRequest(*personalizeruntime.GetPersonalizedRankingInput) (*request.Request, *personalizeruntime.GetPersonalizedRankingOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pinpoint/api.go golang-github-aws-aws-sdk-go-1.48.14/service/pinpoint/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pinpoint/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pinpoint/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -8887,8 +8887,9 @@ // RemoveAttributes API operation for Amazon Pinpoint. // -// Removes one or more attributes, of the same attribute type, from all the -// endpoints that are associated with an application. +// Removes one or more custom attributes, of the same attribute type, from the +// application. Existing endpoints still have the attributes but Amazon Pinpoint +// will stop capturing new or changed values for these attributes. // // 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 @@ -21394,7 +21395,8 @@ // specified by the Address property. EndpointStatus *string `type:"string"` - // The unique identifier for the endpoint in the context of the batch. + // The case insensitive unique identifier for the endpoint in the context of + // the batch. The identifier can't contain $, { or }. Id *string `type:"string"` // The geographic information for the endpoint. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pinpointsmsvoicev2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/pinpointsmsvoicev2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pinpointsmsvoicev2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pinpointsmsvoicev2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -59,11 +59,11 @@ // Associates the specified origination identity with a pool. // // If the origination identity is a phone number and is already associated with -// another pool, an Error is returned. A sender ID can be associated with multiple +// another pool, an error is returned. A sender ID can be associated with multiple // pools. // // If the origination identity configuration doesn't match the pool's configuration, -// an Error is returned. +// an error is returned. // // 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 @@ -388,7 +388,7 @@ // // Creates a new opt-out list. // -// If the opt-out list name already exists, an Error is returned. +// If the opt-out list name already exists, an error is returned. // // An opt-out list is a list of phone numbers that are opted out, meaning you // can't send SMS or voice messages to them. If end user replies with the keyword @@ -505,7 +505,7 @@ // from the origination identity and defaults to false. // // If the origination identity is a phone number and is already associated with -// another pool, an Error is returned. A sender ID can be associated with multiple +// another pool, an error is returned. A sender ID can be associated with multiple // pools. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -566,6 +566,518 @@ return out, req.Send() } +const opCreateRegistration = "CreateRegistration" + +// CreateRegistrationRequest generates a "aws/request.Request" representing the +// client's request for the CreateRegistration 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 CreateRegistration for more information on using the CreateRegistration +// 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 CreateRegistrationRequest method. +// req, resp := client.CreateRegistrationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistration +func (c *PinpointSMSVoiceV2) CreateRegistrationRequest(input *CreateRegistrationInput) (req *request.Request, output *CreateRegistrationOutput) { + op := &request.Operation{ + Name: opCreateRegistration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateRegistrationInput{} + } + + output = &CreateRegistrationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRegistration API operation for Amazon Pinpoint SMS Voice V2. +// +// Creates a new registration based on the RegistrationType field. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation CreateRegistration for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistration +func (c *PinpointSMSVoiceV2) CreateRegistration(input *CreateRegistrationInput) (*CreateRegistrationOutput, error) { + req, out := c.CreateRegistrationRequest(input) + return out, req.Send() +} + +// CreateRegistrationWithContext is the same as CreateRegistration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRegistration 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 *PinpointSMSVoiceV2) CreateRegistrationWithContext(ctx aws.Context, input *CreateRegistrationInput, opts ...request.Option) (*CreateRegistrationOutput, error) { + req, out := c.CreateRegistrationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateRegistrationAssociation = "CreateRegistrationAssociation" + +// CreateRegistrationAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreateRegistrationAssociation 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 CreateRegistrationAssociation for more information on using the CreateRegistrationAssociation +// 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 CreateRegistrationAssociationRequest method. +// req, resp := client.CreateRegistrationAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistrationAssociation +func (c *PinpointSMSVoiceV2) CreateRegistrationAssociationRequest(input *CreateRegistrationAssociationInput) (req *request.Request, output *CreateRegistrationAssociationOutput) { + op := &request.Operation{ + Name: opCreateRegistrationAssociation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateRegistrationAssociationInput{} + } + + output = &CreateRegistrationAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRegistrationAssociation API operation for Amazon Pinpoint SMS Voice V2. +// +// Associate the registration with an origination identity such as a phone number +// or sender ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation CreateRegistrationAssociation for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistrationAssociation +func (c *PinpointSMSVoiceV2) CreateRegistrationAssociation(input *CreateRegistrationAssociationInput) (*CreateRegistrationAssociationOutput, error) { + req, out := c.CreateRegistrationAssociationRequest(input) + return out, req.Send() +} + +// CreateRegistrationAssociationWithContext is the same as CreateRegistrationAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRegistrationAssociation 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 *PinpointSMSVoiceV2) CreateRegistrationAssociationWithContext(ctx aws.Context, input *CreateRegistrationAssociationInput, opts ...request.Option) (*CreateRegistrationAssociationOutput, error) { + req, out := c.CreateRegistrationAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateRegistrationAttachment = "CreateRegistrationAttachment" + +// CreateRegistrationAttachmentRequest generates a "aws/request.Request" representing the +// client's request for the CreateRegistrationAttachment 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 CreateRegistrationAttachment for more information on using the CreateRegistrationAttachment +// 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 CreateRegistrationAttachmentRequest method. +// req, resp := client.CreateRegistrationAttachmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistrationAttachment +func (c *PinpointSMSVoiceV2) CreateRegistrationAttachmentRequest(input *CreateRegistrationAttachmentInput) (req *request.Request, output *CreateRegistrationAttachmentOutput) { + op := &request.Operation{ + Name: opCreateRegistrationAttachment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateRegistrationAttachmentInput{} + } + + output = &CreateRegistrationAttachmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRegistrationAttachment API operation for Amazon Pinpoint SMS Voice V2. +// +// Create a new registration attachment to use for uploading a file or a URL +// to a file. The maximum file size is 1MiB and valid file extensions are PDF, +// JPEG and PNG. For example, many sender ID registrations require a signed +// “letter of authorization” (LOA) to be submitted. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation CreateRegistrationAttachment for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistrationAttachment +func (c *PinpointSMSVoiceV2) CreateRegistrationAttachment(input *CreateRegistrationAttachmentInput) (*CreateRegistrationAttachmentOutput, error) { + req, out := c.CreateRegistrationAttachmentRequest(input) + return out, req.Send() +} + +// CreateRegistrationAttachmentWithContext is the same as CreateRegistrationAttachment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRegistrationAttachment 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 *PinpointSMSVoiceV2) CreateRegistrationAttachmentWithContext(ctx aws.Context, input *CreateRegistrationAttachmentInput, opts ...request.Option) (*CreateRegistrationAttachmentOutput, error) { + req, out := c.CreateRegistrationAttachmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateRegistrationVersion = "CreateRegistrationVersion" + +// CreateRegistrationVersionRequest generates a "aws/request.Request" representing the +// client's request for the CreateRegistrationVersion 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 CreateRegistrationVersion for more information on using the CreateRegistrationVersion +// 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 CreateRegistrationVersionRequest method. +// req, resp := client.CreateRegistrationVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistrationVersion +func (c *PinpointSMSVoiceV2) CreateRegistrationVersionRequest(input *CreateRegistrationVersionInput) (req *request.Request, output *CreateRegistrationVersionOutput) { + op := &request.Operation{ + Name: opCreateRegistrationVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateRegistrationVersionInput{} + } + + output = &CreateRegistrationVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRegistrationVersion API operation for Amazon Pinpoint SMS Voice V2. +// +// Create a new version of the registration and increase the VersionNumber. +// The previous version of the registration becomes read-only. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation CreateRegistrationVersion for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateRegistrationVersion +func (c *PinpointSMSVoiceV2) CreateRegistrationVersion(input *CreateRegistrationVersionInput) (*CreateRegistrationVersionOutput, error) { + req, out := c.CreateRegistrationVersionRequest(input) + return out, req.Send() +} + +// CreateRegistrationVersionWithContext is the same as CreateRegistrationVersion with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRegistrationVersion 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 *PinpointSMSVoiceV2) CreateRegistrationVersionWithContext(ctx aws.Context, input *CreateRegistrationVersionInput, opts ...request.Option) (*CreateRegistrationVersionOutput, error) { + req, out := c.CreateRegistrationVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateVerifiedDestinationNumber = "CreateVerifiedDestinationNumber" + +// CreateVerifiedDestinationNumberRequest generates a "aws/request.Request" representing the +// client's request for the CreateVerifiedDestinationNumber 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 CreateVerifiedDestinationNumber for more information on using the CreateVerifiedDestinationNumber +// 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 CreateVerifiedDestinationNumberRequest method. +// req, resp := client.CreateVerifiedDestinationNumberRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateVerifiedDestinationNumber +func (c *PinpointSMSVoiceV2) CreateVerifiedDestinationNumberRequest(input *CreateVerifiedDestinationNumberInput) (req *request.Request, output *CreateVerifiedDestinationNumberOutput) { + op := &request.Operation{ + Name: opCreateVerifiedDestinationNumber, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateVerifiedDestinationNumberInput{} + } + + output = &CreateVerifiedDestinationNumberOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateVerifiedDestinationNumber API operation for Amazon Pinpoint SMS Voice V2. +// +// You can only send messages to verified destination numbers when your account +// is in the sandbox. You can add up to 10 verified destination numbers. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation CreateVerifiedDestinationNumber for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateVerifiedDestinationNumber +func (c *PinpointSMSVoiceV2) CreateVerifiedDestinationNumber(input *CreateVerifiedDestinationNumberInput) (*CreateVerifiedDestinationNumberOutput, error) { + req, out := c.CreateVerifiedDestinationNumberRequest(input) + return out, req.Send() +} + +// CreateVerifiedDestinationNumberWithContext is the same as CreateVerifiedDestinationNumber with the addition of +// the ability to pass a context and additional request options. +// +// See CreateVerifiedDestinationNumber 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 *PinpointSMSVoiceV2) CreateVerifiedDestinationNumberWithContext(ctx aws.Context, input *CreateVerifiedDestinationNumberInput, opts ...request.Option) (*CreateVerifiedDestinationNumberOutput, error) { + req, out := c.CreateVerifiedDestinationNumberRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteConfigurationSet = "DeleteConfigurationSet" // DeleteConfigurationSetRequest generates a "aws/request.Request" representing the @@ -1116,7 +1628,7 @@ // list are deleted. // // If the specified opt-out list name doesn't exist or is in-use by an origination -// phone number or pool, an Error is returned. +// phone number or pool, an error is returned. // // 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 @@ -1222,7 +1734,7 @@ // Each destination phone number can only be deleted once every 30 days. // // If the specified destination phone number doesn't exist or if the opt-out -// list doesn't exist, an Error is returned. +// list doesn't exist, an error is returned. // // 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 @@ -1326,7 +1838,7 @@ // from that pool. // // If the pool status isn't active or if deletion protection is enabled, an -// Error is returned. +// error is returned. // // A pool is a collection of phone numbers and SenderIds. A pool can include // one or more phone numbers and SenderIds that are associated with your Amazon @@ -1387,6 +1899,306 @@ return out, req.Send() } +const opDeleteRegistration = "DeleteRegistration" + +// DeleteRegistrationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRegistration 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 DeleteRegistration for more information on using the DeleteRegistration +// 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 DeleteRegistrationRequest method. +// req, resp := client.DeleteRegistrationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteRegistration +func (c *PinpointSMSVoiceV2) DeleteRegistrationRequest(input *DeleteRegistrationInput) (req *request.Request, output *DeleteRegistrationOutput) { + op := &request.Operation{ + Name: opDeleteRegistration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteRegistrationInput{} + } + + output = &DeleteRegistrationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteRegistration API operation for Amazon Pinpoint SMS Voice V2. +// +// Permanently delete an existing registration from your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DeleteRegistration for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteRegistration +func (c *PinpointSMSVoiceV2) DeleteRegistration(input *DeleteRegistrationInput) (*DeleteRegistrationOutput, error) { + req, out := c.DeleteRegistrationRequest(input) + return out, req.Send() +} + +// DeleteRegistrationWithContext is the same as DeleteRegistration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRegistration 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 *PinpointSMSVoiceV2) DeleteRegistrationWithContext(ctx aws.Context, input *DeleteRegistrationInput, opts ...request.Option) (*DeleteRegistrationOutput, error) { + req, out := c.DeleteRegistrationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteRegistrationAttachment = "DeleteRegistrationAttachment" + +// DeleteRegistrationAttachmentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRegistrationAttachment 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 DeleteRegistrationAttachment for more information on using the DeleteRegistrationAttachment +// 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 DeleteRegistrationAttachmentRequest method. +// req, resp := client.DeleteRegistrationAttachmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteRegistrationAttachment +func (c *PinpointSMSVoiceV2) DeleteRegistrationAttachmentRequest(input *DeleteRegistrationAttachmentInput) (req *request.Request, output *DeleteRegistrationAttachmentOutput) { + op := &request.Operation{ + Name: opDeleteRegistrationAttachment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteRegistrationAttachmentInput{} + } + + output = &DeleteRegistrationAttachmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteRegistrationAttachment API operation for Amazon Pinpoint SMS Voice V2. +// +// Permanently delete the specified registration attachment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DeleteRegistrationAttachment for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteRegistrationAttachment +func (c *PinpointSMSVoiceV2) DeleteRegistrationAttachment(input *DeleteRegistrationAttachmentInput) (*DeleteRegistrationAttachmentOutput, error) { + req, out := c.DeleteRegistrationAttachmentRequest(input) + return out, req.Send() +} + +// DeleteRegistrationAttachmentWithContext is the same as DeleteRegistrationAttachment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRegistrationAttachment 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 *PinpointSMSVoiceV2) DeleteRegistrationAttachmentWithContext(ctx aws.Context, input *DeleteRegistrationAttachmentInput, opts ...request.Option) (*DeleteRegistrationAttachmentOutput, error) { + req, out := c.DeleteRegistrationAttachmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteRegistrationFieldValue = "DeleteRegistrationFieldValue" + +// DeleteRegistrationFieldValueRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRegistrationFieldValue 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 DeleteRegistrationFieldValue for more information on using the DeleteRegistrationFieldValue +// 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 DeleteRegistrationFieldValueRequest method. +// req, resp := client.DeleteRegistrationFieldValueRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteRegistrationFieldValue +func (c *PinpointSMSVoiceV2) DeleteRegistrationFieldValueRequest(input *DeleteRegistrationFieldValueInput) (req *request.Request, output *DeleteRegistrationFieldValueOutput) { + op := &request.Operation{ + Name: opDeleteRegistrationFieldValue, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteRegistrationFieldValueInput{} + } + + output = &DeleteRegistrationFieldValueOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteRegistrationFieldValue API operation for Amazon Pinpoint SMS Voice V2. +// +// Delete the value in a registration form field. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DeleteRegistrationFieldValue for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteRegistrationFieldValue +func (c *PinpointSMSVoiceV2) DeleteRegistrationFieldValue(input *DeleteRegistrationFieldValueInput) (*DeleteRegistrationFieldValueOutput, error) { + req, out := c.DeleteRegistrationFieldValueRequest(input) + return out, req.Send() +} + +// DeleteRegistrationFieldValueWithContext is the same as DeleteRegistrationFieldValue with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRegistrationFieldValue 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 *PinpointSMSVoiceV2) DeleteRegistrationFieldValueWithContext(ctx aws.Context, input *DeleteRegistrationFieldValueInput, opts ...request.Option) (*DeleteRegistrationFieldValueOutput, error) { + req, out := c.DeleteRegistrationFieldValueRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteTextMessageSpendLimitOverride = "DeleteTextMessageSpendLimitOverride" // DeleteTextMessageSpendLimitOverrideRequest generates a "aws/request.Request" representing the @@ -1482,6 +2294,106 @@ return out, req.Send() } +const opDeleteVerifiedDestinationNumber = "DeleteVerifiedDestinationNumber" + +// DeleteVerifiedDestinationNumberRequest generates a "aws/request.Request" representing the +// client's request for the DeleteVerifiedDestinationNumber 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 DeleteVerifiedDestinationNumber for more information on using the DeleteVerifiedDestinationNumber +// 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 DeleteVerifiedDestinationNumberRequest method. +// req, resp := client.DeleteVerifiedDestinationNumberRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteVerifiedDestinationNumber +func (c *PinpointSMSVoiceV2) DeleteVerifiedDestinationNumberRequest(input *DeleteVerifiedDestinationNumberInput) (req *request.Request, output *DeleteVerifiedDestinationNumberOutput) { + op := &request.Operation{ + Name: opDeleteVerifiedDestinationNumber, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteVerifiedDestinationNumberInput{} + } + + output = &DeleteVerifiedDestinationNumberOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteVerifiedDestinationNumber API operation for Amazon Pinpoint SMS Voice V2. +// +// Delete a verified destination phone number. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DeleteVerifiedDestinationNumber for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteVerifiedDestinationNumber +func (c *PinpointSMSVoiceV2) DeleteVerifiedDestinationNumber(input *DeleteVerifiedDestinationNumberInput) (*DeleteVerifiedDestinationNumberOutput, error) { + req, out := c.DeleteVerifiedDestinationNumberRequest(input) + return out, req.Send() +} + +// DeleteVerifiedDestinationNumberWithContext is the same as DeleteVerifiedDestinationNumber with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteVerifiedDestinationNumber 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 *PinpointSMSVoiceV2) DeleteVerifiedDestinationNumberWithContext(ctx aws.Context, input *DeleteVerifiedDestinationNumberInput, opts ...request.Option) (*DeleteVerifiedDestinationNumberOutput, error) { + req, out := c.DeleteVerifiedDestinationNumberRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteVoiceMessageSpendLimitOverride = "DeleteVoiceMessageSpendLimitOverride" // DeleteVoiceMessageSpendLimitOverrideRequest generates a "aws/request.Request" representing the @@ -2106,7 +3018,7 @@ // offer. When your number receives a message that begins with a keyword, Amazon // Pinpoint responds with a customizable message. // -// If you specify a keyword that isn't valid, an Error is returned. +// If you specify a keyword that isn't valid, an error is returned. // // 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 @@ -2264,7 +3176,7 @@ // filter criteria. If you don't specify opt-out list names or filters, the // output includes information for all opt-out lists. // -// If you specify an opt-out list name that isn't valid, an Error is returned. +// If you specify an opt-out list name that isn't valid, an error is returned. // // 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 @@ -2424,7 +3336,7 @@ // If you don't specify opted out numbers or filters, the output includes information // for all opted out destination numbers in your opt-out list. // -// If you specify an opted out number that isn't valid, an Error is returned. +// If you specify an opted out number that isn't valid, an error is returned. // // 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 @@ -2584,7 +3496,7 @@ // you don't specify phone number IDs or filters, the output includes information // for all phone numbers. // -// If you specify a phone number ID that isn't valid, an Error is returned. +// If you specify a phone number ID that isn't valid, an error is returned. // // 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 @@ -2743,7 +3655,7 @@ // pools that meet the filter criteria. If you don't specify pool IDs or filters, // the output includes information for all pools. // -// If you specify a pool ID that isn't valid, an Error is returned. +// If you specify a pool ID that isn't valid, an error is returned. // // A pool is a collection of phone numbers and SenderIds. A pool can include // one or more phone numbers and SenderIds that are associated with your Amazon @@ -2849,6 +3761,1061 @@ return p.Err() } +const opDescribeRegistrationAttachments = "DescribeRegistrationAttachments" + +// DescribeRegistrationAttachmentsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrationAttachments 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 DescribeRegistrationAttachments for more information on using the DescribeRegistrationAttachments +// 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 DescribeRegistrationAttachmentsRequest method. +// req, resp := client.DescribeRegistrationAttachmentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationAttachments +func (c *PinpointSMSVoiceV2) DescribeRegistrationAttachmentsRequest(input *DescribeRegistrationAttachmentsInput) (req *request.Request, output *DescribeRegistrationAttachmentsOutput) { + op := &request.Operation{ + Name: opDescribeRegistrationAttachments, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationAttachmentsInput{} + } + + output = &DescribeRegistrationAttachmentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrationAttachments API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registration attachments or all registration attachments +// associated with your Amazon Web Services account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrationAttachments for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationAttachments +func (c *PinpointSMSVoiceV2) DescribeRegistrationAttachments(input *DescribeRegistrationAttachmentsInput) (*DescribeRegistrationAttachmentsOutput, error) { + req, out := c.DescribeRegistrationAttachmentsRequest(input) + return out, req.Send() +} + +// DescribeRegistrationAttachmentsWithContext is the same as DescribeRegistrationAttachments with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrationAttachments 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 *PinpointSMSVoiceV2) DescribeRegistrationAttachmentsWithContext(ctx aws.Context, input *DescribeRegistrationAttachmentsInput, opts ...request.Option) (*DescribeRegistrationAttachmentsOutput, error) { + req, out := c.DescribeRegistrationAttachmentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationAttachmentsPages iterates over the pages of a DescribeRegistrationAttachments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrationAttachments 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 DescribeRegistrationAttachments operation. +// pageNum := 0 +// err := client.DescribeRegistrationAttachmentsPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationAttachmentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationAttachmentsPages(input *DescribeRegistrationAttachmentsInput, fn func(*DescribeRegistrationAttachmentsOutput, bool) bool) error { + return c.DescribeRegistrationAttachmentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationAttachmentsPagesWithContext same as DescribeRegistrationAttachmentsPages 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 *PinpointSMSVoiceV2) DescribeRegistrationAttachmentsPagesWithContext(ctx aws.Context, input *DescribeRegistrationAttachmentsInput, fn func(*DescribeRegistrationAttachmentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationAttachmentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationAttachmentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationAttachmentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeRegistrationFieldDefinitions = "DescribeRegistrationFieldDefinitions" + +// DescribeRegistrationFieldDefinitionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrationFieldDefinitions 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 DescribeRegistrationFieldDefinitions for more information on using the DescribeRegistrationFieldDefinitions +// 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 DescribeRegistrationFieldDefinitionsRequest method. +// req, resp := client.DescribeRegistrationFieldDefinitionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationFieldDefinitions +func (c *PinpointSMSVoiceV2) DescribeRegistrationFieldDefinitionsRequest(input *DescribeRegistrationFieldDefinitionsInput) (req *request.Request, output *DescribeRegistrationFieldDefinitionsOutput) { + op := &request.Operation{ + Name: opDescribeRegistrationFieldDefinitions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationFieldDefinitionsInput{} + } + + output = &DescribeRegistrationFieldDefinitionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrationFieldDefinitions API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registration type field definitions. You can use +// DescribeRegistrationFieldDefinitions to view the requirements for creating, +// filling out, and submitting each registration type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrationFieldDefinitions for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationFieldDefinitions +func (c *PinpointSMSVoiceV2) DescribeRegistrationFieldDefinitions(input *DescribeRegistrationFieldDefinitionsInput) (*DescribeRegistrationFieldDefinitionsOutput, error) { + req, out := c.DescribeRegistrationFieldDefinitionsRequest(input) + return out, req.Send() +} + +// DescribeRegistrationFieldDefinitionsWithContext is the same as DescribeRegistrationFieldDefinitions with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrationFieldDefinitions 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 *PinpointSMSVoiceV2) DescribeRegistrationFieldDefinitionsWithContext(ctx aws.Context, input *DescribeRegistrationFieldDefinitionsInput, opts ...request.Option) (*DescribeRegistrationFieldDefinitionsOutput, error) { + req, out := c.DescribeRegistrationFieldDefinitionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationFieldDefinitionsPages iterates over the pages of a DescribeRegistrationFieldDefinitions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrationFieldDefinitions 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 DescribeRegistrationFieldDefinitions operation. +// pageNum := 0 +// err := client.DescribeRegistrationFieldDefinitionsPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationFieldDefinitionsPages(input *DescribeRegistrationFieldDefinitionsInput, fn func(*DescribeRegistrationFieldDefinitionsOutput, bool) bool) error { + return c.DescribeRegistrationFieldDefinitionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationFieldDefinitionsPagesWithContext same as DescribeRegistrationFieldDefinitionsPages 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 *PinpointSMSVoiceV2) DescribeRegistrationFieldDefinitionsPagesWithContext(ctx aws.Context, input *DescribeRegistrationFieldDefinitionsInput, fn func(*DescribeRegistrationFieldDefinitionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationFieldDefinitionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationFieldDefinitionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationFieldDefinitionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeRegistrationFieldValues = "DescribeRegistrationFieldValues" + +// DescribeRegistrationFieldValuesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrationFieldValues 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 DescribeRegistrationFieldValues for more information on using the DescribeRegistrationFieldValues +// 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 DescribeRegistrationFieldValuesRequest method. +// req, resp := client.DescribeRegistrationFieldValuesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationFieldValues +func (c *PinpointSMSVoiceV2) DescribeRegistrationFieldValuesRequest(input *DescribeRegistrationFieldValuesInput) (req *request.Request, output *DescribeRegistrationFieldValuesOutput) { + op := &request.Operation{ + Name: opDescribeRegistrationFieldValues, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationFieldValuesInput{} + } + + output = &DescribeRegistrationFieldValuesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrationFieldValues API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registration field values. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrationFieldValues for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationFieldValues +func (c *PinpointSMSVoiceV2) DescribeRegistrationFieldValues(input *DescribeRegistrationFieldValuesInput) (*DescribeRegistrationFieldValuesOutput, error) { + req, out := c.DescribeRegistrationFieldValuesRequest(input) + return out, req.Send() +} + +// DescribeRegistrationFieldValuesWithContext is the same as DescribeRegistrationFieldValues with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrationFieldValues 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 *PinpointSMSVoiceV2) DescribeRegistrationFieldValuesWithContext(ctx aws.Context, input *DescribeRegistrationFieldValuesInput, opts ...request.Option) (*DescribeRegistrationFieldValuesOutput, error) { + req, out := c.DescribeRegistrationFieldValuesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationFieldValuesPages iterates over the pages of a DescribeRegistrationFieldValues operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrationFieldValues 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 DescribeRegistrationFieldValues operation. +// pageNum := 0 +// err := client.DescribeRegistrationFieldValuesPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationFieldValuesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationFieldValuesPages(input *DescribeRegistrationFieldValuesInput, fn func(*DescribeRegistrationFieldValuesOutput, bool) bool) error { + return c.DescribeRegistrationFieldValuesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationFieldValuesPagesWithContext same as DescribeRegistrationFieldValuesPages 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 *PinpointSMSVoiceV2) DescribeRegistrationFieldValuesPagesWithContext(ctx aws.Context, input *DescribeRegistrationFieldValuesInput, fn func(*DescribeRegistrationFieldValuesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationFieldValuesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationFieldValuesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationFieldValuesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeRegistrationSectionDefinitions = "DescribeRegistrationSectionDefinitions" + +// DescribeRegistrationSectionDefinitionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrationSectionDefinitions 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 DescribeRegistrationSectionDefinitions for more information on using the DescribeRegistrationSectionDefinitions +// 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 DescribeRegistrationSectionDefinitionsRequest method. +// req, resp := client.DescribeRegistrationSectionDefinitionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationSectionDefinitions +func (c *PinpointSMSVoiceV2) DescribeRegistrationSectionDefinitionsRequest(input *DescribeRegistrationSectionDefinitionsInput) (req *request.Request, output *DescribeRegistrationSectionDefinitionsOutput) { + op := &request.Operation{ + Name: opDescribeRegistrationSectionDefinitions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationSectionDefinitionsInput{} + } + + output = &DescribeRegistrationSectionDefinitionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrationSectionDefinitions API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registration section definitions. You can use DescribeRegistrationSectionDefinitions +// to view the requirements for creating, filling out, and submitting each registration +// type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrationSectionDefinitions for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationSectionDefinitions +func (c *PinpointSMSVoiceV2) DescribeRegistrationSectionDefinitions(input *DescribeRegistrationSectionDefinitionsInput) (*DescribeRegistrationSectionDefinitionsOutput, error) { + req, out := c.DescribeRegistrationSectionDefinitionsRequest(input) + return out, req.Send() +} + +// DescribeRegistrationSectionDefinitionsWithContext is the same as DescribeRegistrationSectionDefinitions with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrationSectionDefinitions 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 *PinpointSMSVoiceV2) DescribeRegistrationSectionDefinitionsWithContext(ctx aws.Context, input *DescribeRegistrationSectionDefinitionsInput, opts ...request.Option) (*DescribeRegistrationSectionDefinitionsOutput, error) { + req, out := c.DescribeRegistrationSectionDefinitionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationSectionDefinitionsPages iterates over the pages of a DescribeRegistrationSectionDefinitions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrationSectionDefinitions 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 DescribeRegistrationSectionDefinitions operation. +// pageNum := 0 +// err := client.DescribeRegistrationSectionDefinitionsPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationSectionDefinitionsPages(input *DescribeRegistrationSectionDefinitionsInput, fn func(*DescribeRegistrationSectionDefinitionsOutput, bool) bool) error { + return c.DescribeRegistrationSectionDefinitionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationSectionDefinitionsPagesWithContext same as DescribeRegistrationSectionDefinitionsPages 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 *PinpointSMSVoiceV2) DescribeRegistrationSectionDefinitionsPagesWithContext(ctx aws.Context, input *DescribeRegistrationSectionDefinitionsInput, fn func(*DescribeRegistrationSectionDefinitionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationSectionDefinitionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationSectionDefinitionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationSectionDefinitionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeRegistrationTypeDefinitions = "DescribeRegistrationTypeDefinitions" + +// DescribeRegistrationTypeDefinitionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrationTypeDefinitions 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 DescribeRegistrationTypeDefinitions for more information on using the DescribeRegistrationTypeDefinitions +// 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 DescribeRegistrationTypeDefinitionsRequest method. +// req, resp := client.DescribeRegistrationTypeDefinitionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationTypeDefinitions +func (c *PinpointSMSVoiceV2) DescribeRegistrationTypeDefinitionsRequest(input *DescribeRegistrationTypeDefinitionsInput) (req *request.Request, output *DescribeRegistrationTypeDefinitionsOutput) { + op := &request.Operation{ + Name: opDescribeRegistrationTypeDefinitions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationTypeDefinitionsInput{} + } + + output = &DescribeRegistrationTypeDefinitionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrationTypeDefinitions API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registration type definitions. You can use DescribeRegistrationTypeDefinitions +// to view the requirements for creating, filling out, and submitting each registration +// type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrationTypeDefinitions for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationTypeDefinitions +func (c *PinpointSMSVoiceV2) DescribeRegistrationTypeDefinitions(input *DescribeRegistrationTypeDefinitionsInput) (*DescribeRegistrationTypeDefinitionsOutput, error) { + req, out := c.DescribeRegistrationTypeDefinitionsRequest(input) + return out, req.Send() +} + +// DescribeRegistrationTypeDefinitionsWithContext is the same as DescribeRegistrationTypeDefinitions with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrationTypeDefinitions 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 *PinpointSMSVoiceV2) DescribeRegistrationTypeDefinitionsWithContext(ctx aws.Context, input *DescribeRegistrationTypeDefinitionsInput, opts ...request.Option) (*DescribeRegistrationTypeDefinitionsOutput, error) { + req, out := c.DescribeRegistrationTypeDefinitionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationTypeDefinitionsPages iterates over the pages of a DescribeRegistrationTypeDefinitions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrationTypeDefinitions 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 DescribeRegistrationTypeDefinitions operation. +// pageNum := 0 +// err := client.DescribeRegistrationTypeDefinitionsPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationTypeDefinitionsPages(input *DescribeRegistrationTypeDefinitionsInput, fn func(*DescribeRegistrationTypeDefinitionsOutput, bool) bool) error { + return c.DescribeRegistrationTypeDefinitionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationTypeDefinitionsPagesWithContext same as DescribeRegistrationTypeDefinitionsPages 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 *PinpointSMSVoiceV2) DescribeRegistrationTypeDefinitionsPagesWithContext(ctx aws.Context, input *DescribeRegistrationTypeDefinitionsInput, fn func(*DescribeRegistrationTypeDefinitionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationTypeDefinitionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationTypeDefinitionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationTypeDefinitionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeRegistrationVersions = "DescribeRegistrationVersions" + +// DescribeRegistrationVersionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrationVersions 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 DescribeRegistrationVersions for more information on using the DescribeRegistrationVersions +// 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 DescribeRegistrationVersionsRequest method. +// req, resp := client.DescribeRegistrationVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationVersions +func (c *PinpointSMSVoiceV2) DescribeRegistrationVersionsRequest(input *DescribeRegistrationVersionsInput) (req *request.Request, output *DescribeRegistrationVersionsOutput) { + op := &request.Operation{ + Name: opDescribeRegistrationVersions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationVersionsInput{} + } + + output = &DescribeRegistrationVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrationVersions API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registration version. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrationVersions for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrationVersions +func (c *PinpointSMSVoiceV2) DescribeRegistrationVersions(input *DescribeRegistrationVersionsInput) (*DescribeRegistrationVersionsOutput, error) { + req, out := c.DescribeRegistrationVersionsRequest(input) + return out, req.Send() +} + +// DescribeRegistrationVersionsWithContext is the same as DescribeRegistrationVersions with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrationVersions 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 *PinpointSMSVoiceV2) DescribeRegistrationVersionsWithContext(ctx aws.Context, input *DescribeRegistrationVersionsInput, opts ...request.Option) (*DescribeRegistrationVersionsOutput, error) { + req, out := c.DescribeRegistrationVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationVersionsPages iterates over the pages of a DescribeRegistrationVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrationVersions 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 DescribeRegistrationVersions operation. +// pageNum := 0 +// err := client.DescribeRegistrationVersionsPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationVersionsPages(input *DescribeRegistrationVersionsInput, fn func(*DescribeRegistrationVersionsOutput, bool) bool) error { + return c.DescribeRegistrationVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationVersionsPagesWithContext same as DescribeRegistrationVersionsPages 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 *PinpointSMSVoiceV2) DescribeRegistrationVersionsPagesWithContext(ctx aws.Context, input *DescribeRegistrationVersionsInput, fn func(*DescribeRegistrationVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeRegistrations = "DescribeRegistrations" + +// DescribeRegistrationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRegistrations 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 DescribeRegistrations for more information on using the DescribeRegistrations +// 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 DescribeRegistrationsRequest method. +// req, resp := client.DescribeRegistrationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrations +func (c *PinpointSMSVoiceV2) DescribeRegistrationsRequest(input *DescribeRegistrationsInput) (req *request.Request, output *DescribeRegistrationsOutput) { + op := &request.Operation{ + Name: opDescribeRegistrations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRegistrationsInput{} + } + + output = &DescribeRegistrationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRegistrations API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified registrations. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeRegistrations for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeRegistrations +func (c *PinpointSMSVoiceV2) DescribeRegistrations(input *DescribeRegistrationsInput) (*DescribeRegistrationsOutput, error) { + req, out := c.DescribeRegistrationsRequest(input) + return out, req.Send() +} + +// DescribeRegistrationsWithContext is the same as DescribeRegistrations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRegistrations 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 *PinpointSMSVoiceV2) DescribeRegistrationsWithContext(ctx aws.Context, input *DescribeRegistrationsInput, opts ...request.Option) (*DescribeRegistrationsOutput, error) { + req, out := c.DescribeRegistrationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRegistrationsPages iterates over the pages of a DescribeRegistrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRegistrations 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 DescribeRegistrations operation. +// pageNum := 0 +// err := client.DescribeRegistrationsPages(params, +// func(page *pinpointsmsvoicev2.DescribeRegistrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeRegistrationsPages(input *DescribeRegistrationsInput, fn func(*DescribeRegistrationsOutput, bool) bool) error { + return c.DescribeRegistrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRegistrationsPagesWithContext same as DescribeRegistrationsPages 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 *PinpointSMSVoiceV2) DescribeRegistrationsPagesWithContext(ctx aws.Context, input *DescribeRegistrationsInput, fn func(*DescribeRegistrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRegistrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRegistrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRegistrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeSenderIds = "DescribeSenderIds" // DescribeSenderIdsRequest generates a "aws/request.Request" representing the @@ -2906,7 +4873,7 @@ // those SenderIds that meet the filter criteria. If you don't specify SenderIds // or filters, the output includes information for all SenderIds. // -// f you specify a sender ID that isn't valid, an Error is returned. +// f you specify a sender ID that isn't valid, an error is returned. // // 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 @@ -3163,6 +5130,157 @@ return p.Err() } +const opDescribeVerifiedDestinationNumbers = "DescribeVerifiedDestinationNumbers" + +// DescribeVerifiedDestinationNumbersRequest generates a "aws/request.Request" representing the +// client's request for the DescribeVerifiedDestinationNumbers 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 DescribeVerifiedDestinationNumbers for more information on using the DescribeVerifiedDestinationNumbers +// 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 DescribeVerifiedDestinationNumbersRequest method. +// req, resp := client.DescribeVerifiedDestinationNumbersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeVerifiedDestinationNumbers +func (c *PinpointSMSVoiceV2) DescribeVerifiedDestinationNumbersRequest(input *DescribeVerifiedDestinationNumbersInput) (req *request.Request, output *DescribeVerifiedDestinationNumbersOutput) { + op := &request.Operation{ + Name: opDescribeVerifiedDestinationNumbers, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeVerifiedDestinationNumbersInput{} + } + + output = &DescribeVerifiedDestinationNumbersOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeVerifiedDestinationNumbers API operation for Amazon Pinpoint SMS Voice V2. +// +// Retrieves the specified verified destiona numbers. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DescribeVerifiedDestinationNumbers for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeVerifiedDestinationNumbers +func (c *PinpointSMSVoiceV2) DescribeVerifiedDestinationNumbers(input *DescribeVerifiedDestinationNumbersInput) (*DescribeVerifiedDestinationNumbersOutput, error) { + req, out := c.DescribeVerifiedDestinationNumbersRequest(input) + return out, req.Send() +} + +// DescribeVerifiedDestinationNumbersWithContext is the same as DescribeVerifiedDestinationNumbers with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeVerifiedDestinationNumbers 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 *PinpointSMSVoiceV2) DescribeVerifiedDestinationNumbersWithContext(ctx aws.Context, input *DescribeVerifiedDestinationNumbersInput, opts ...request.Option) (*DescribeVerifiedDestinationNumbersOutput, error) { + req, out := c.DescribeVerifiedDestinationNumbersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeVerifiedDestinationNumbersPages iterates over the pages of a DescribeVerifiedDestinationNumbers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeVerifiedDestinationNumbers 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 DescribeVerifiedDestinationNumbers operation. +// pageNum := 0 +// err := client.DescribeVerifiedDestinationNumbersPages(params, +// func(page *pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) DescribeVerifiedDestinationNumbersPages(input *DescribeVerifiedDestinationNumbersInput, fn func(*DescribeVerifiedDestinationNumbersOutput, bool) bool) error { + return c.DescribeVerifiedDestinationNumbersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeVerifiedDestinationNumbersPagesWithContext same as DescribeVerifiedDestinationNumbersPages 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 *PinpointSMSVoiceV2) DescribeVerifiedDestinationNumbersPagesWithContext(ctx aws.Context, input *DescribeVerifiedDestinationNumbersInput, fn func(*DescribeVerifiedDestinationNumbersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeVerifiedDestinationNumbersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeVerifiedDestinationNumbersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeVerifiedDestinationNumbersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDisassociateOriginationIdentity = "DisassociateOriginationIdentity" // DisassociateOriginationIdentityRequest generates a "aws/request.Request" representing the @@ -3209,7 +5327,7 @@ // Removes the specified origination identity from an existing pool. // // If the origination identity isn't associated with the specified pool, an -// Error is returned. +// error is returned. // // 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 @@ -3266,6 +5384,106 @@ return out, req.Send() } +const opDiscardRegistrationVersion = "DiscardRegistrationVersion" + +// DiscardRegistrationVersionRequest generates a "aws/request.Request" representing the +// client's request for the DiscardRegistrationVersion 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 DiscardRegistrationVersion for more information on using the DiscardRegistrationVersion +// 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 DiscardRegistrationVersionRequest method. +// req, resp := client.DiscardRegistrationVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DiscardRegistrationVersion +func (c *PinpointSMSVoiceV2) DiscardRegistrationVersionRequest(input *DiscardRegistrationVersionInput) (req *request.Request, output *DiscardRegistrationVersionOutput) { + op := &request.Operation{ + Name: opDiscardRegistrationVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DiscardRegistrationVersionInput{} + } + + output = &DiscardRegistrationVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DiscardRegistrationVersion API operation for Amazon Pinpoint SMS Voice V2. +// +// Discard the current version of the registration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation DiscardRegistrationVersion for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DiscardRegistrationVersion +func (c *PinpointSMSVoiceV2) DiscardRegistrationVersion(input *DiscardRegistrationVersionInput) (*DiscardRegistrationVersionOutput, error) { + req, out := c.DiscardRegistrationVersionRequest(input) + return out, req.Send() +} + +// DiscardRegistrationVersionWithContext is the same as DiscardRegistrationVersion with the addition of +// the ability to pass a context and additional request options. +// +// See DiscardRegistrationVersion 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 *PinpointSMSVoiceV2) DiscardRegistrationVersionWithContext(ctx aws.Context, input *DiscardRegistrationVersionInput, opts ...request.Option) (*DiscardRegistrationVersionOutput, error) { + req, out := c.DiscardRegistrationVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListPoolOriginationIdentities = "ListPoolOriginationIdentities" // ListPoolOriginationIdentitiesRequest generates a "aws/request.Request" representing the @@ -3420,6 +5638,157 @@ return p.Err() } +const opListRegistrationAssociations = "ListRegistrationAssociations" + +// ListRegistrationAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListRegistrationAssociations 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 ListRegistrationAssociations for more information on using the ListRegistrationAssociations +// 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 ListRegistrationAssociationsRequest method. +// req, resp := client.ListRegistrationAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ListRegistrationAssociations +func (c *PinpointSMSVoiceV2) ListRegistrationAssociationsRequest(input *ListRegistrationAssociationsInput) (req *request.Request, output *ListRegistrationAssociationsOutput) { + op := &request.Operation{ + Name: opListRegistrationAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRegistrationAssociationsInput{} + } + + output = &ListRegistrationAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRegistrationAssociations API operation for Amazon Pinpoint SMS Voice V2. +// +// Retreive all of the origination identies that are associated with a registration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation ListRegistrationAssociations for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ListRegistrationAssociations +func (c *PinpointSMSVoiceV2) ListRegistrationAssociations(input *ListRegistrationAssociationsInput) (*ListRegistrationAssociationsOutput, error) { + req, out := c.ListRegistrationAssociationsRequest(input) + return out, req.Send() +} + +// ListRegistrationAssociationsWithContext is the same as ListRegistrationAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListRegistrationAssociations 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 *PinpointSMSVoiceV2) ListRegistrationAssociationsWithContext(ctx aws.Context, input *ListRegistrationAssociationsInput, opts ...request.Option) (*ListRegistrationAssociationsOutput, error) { + req, out := c.ListRegistrationAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRegistrationAssociationsPages iterates over the pages of a ListRegistrationAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRegistrationAssociations 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 ListRegistrationAssociations operation. +// pageNum := 0 +// err := client.ListRegistrationAssociationsPages(params, +// func(page *pinpointsmsvoicev2.ListRegistrationAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PinpointSMSVoiceV2) ListRegistrationAssociationsPages(input *ListRegistrationAssociationsInput, fn func(*ListRegistrationAssociationsOutput, bool) bool) error { + return c.ListRegistrationAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRegistrationAssociationsPagesWithContext same as ListRegistrationAssociationsPages 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 *PinpointSMSVoiceV2) ListRegistrationAssociationsPagesWithContext(ctx aws.Context, input *ListRegistrationAssociationsInput, fn func(*ListRegistrationAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRegistrationAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRegistrationAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRegistrationAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -3566,7 +5935,7 @@ // offer. When your number receives a message that begins with a keyword, Amazon // Pinpoint responds with a customizable message. // -// If you specify a keyword that isn't valid, an Error is returned. +// If you specify a keyword that isn't valid, an error is returned. // // 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 @@ -3672,7 +6041,7 @@ // Creates an opted out destination phone number in the opt-out list. // // If the destination phone number isn't valid or if the specified opt-out list -// doesn't exist, an Error is returned. +// doesn't exist, an error is returned. // // 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 @@ -3723,6 +6092,106 @@ return out, req.Send() } +const opPutRegistrationFieldValue = "PutRegistrationFieldValue" + +// PutRegistrationFieldValueRequest generates a "aws/request.Request" representing the +// client's request for the PutRegistrationFieldValue 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 PutRegistrationFieldValue for more information on using the PutRegistrationFieldValue +// 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 PutRegistrationFieldValueRequest method. +// req, resp := client.PutRegistrationFieldValueRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/PutRegistrationFieldValue +func (c *PinpointSMSVoiceV2) PutRegistrationFieldValueRequest(input *PutRegistrationFieldValueInput) (req *request.Request, output *PutRegistrationFieldValueOutput) { + op := &request.Operation{ + Name: opPutRegistrationFieldValue, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutRegistrationFieldValueInput{} + } + + output = &PutRegistrationFieldValueOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutRegistrationFieldValue API operation for Amazon Pinpoint SMS Voice V2. +// +// Creates or updates a field value for a registration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation PutRegistrationFieldValue for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/PutRegistrationFieldValue +func (c *PinpointSMSVoiceV2) PutRegistrationFieldValue(input *PutRegistrationFieldValueInput) (*PutRegistrationFieldValueOutput, error) { + req, out := c.PutRegistrationFieldValueRequest(input) + return out, req.Send() +} + +// PutRegistrationFieldValueWithContext is the same as PutRegistrationFieldValue with the addition of +// the ability to pass a context and additional request options. +// +// See PutRegistrationFieldValue 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 *PinpointSMSVoiceV2) PutRegistrationFieldValueWithContext(ctx aws.Context, input *PutRegistrationFieldValueInput, opts ...request.Option) (*PutRegistrationFieldValueOutput, error) { + req, out := c.PutRegistrationFieldValueRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opReleasePhoneNumber = "ReleasePhoneNumber" // ReleasePhoneNumberRequest generates a "aws/request.Request" representing the @@ -3770,7 +6239,7 @@ // a phone number is no longer available for sending messages. // // If the origination phone number has deletion protection enabled or is associated -// with a pool, an Error is returned. +// with a pool, an error is returned. // // 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 @@ -3827,6 +6296,106 @@ return out, req.Send() } +const opReleaseSenderId = "ReleaseSenderId" + +// ReleaseSenderIdRequest generates a "aws/request.Request" representing the +// client's request for the ReleaseSenderId 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 ReleaseSenderId for more information on using the ReleaseSenderId +// 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 ReleaseSenderIdRequest method. +// req, resp := client.ReleaseSenderIdRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ReleaseSenderId +func (c *PinpointSMSVoiceV2) ReleaseSenderIdRequest(input *ReleaseSenderIdInput) (req *request.Request, output *ReleaseSenderIdOutput) { + op := &request.Operation{ + Name: opReleaseSenderId, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ReleaseSenderIdInput{} + } + + output = &ReleaseSenderIdOutput{} + req = c.newRequest(op, input, output) + return +} + +// ReleaseSenderId API operation for Amazon Pinpoint SMS Voice V2. +// +// Releases an existing sender ID in your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation ReleaseSenderId for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ReleaseSenderId +func (c *PinpointSMSVoiceV2) ReleaseSenderId(input *ReleaseSenderIdInput) (*ReleaseSenderIdOutput, error) { + req, out := c.ReleaseSenderIdRequest(input) + return out, req.Send() +} + +// ReleaseSenderIdWithContext is the same as ReleaseSenderId with the addition of +// the ability to pass a context and additional request options. +// +// See ReleaseSenderId 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 *PinpointSMSVoiceV2) ReleaseSenderIdWithContext(ctx aws.Context, input *ReleaseSenderIdInput, opts ...request.Option) (*ReleaseSenderIdOutput, error) { + req, out := c.ReleaseSenderIdRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opRequestPhoneNumber = "RequestPhoneNumber" // RequestPhoneNumberRequest generates a "aws/request.Request" representing the @@ -3932,6 +6501,213 @@ return out, req.Send() } +const opRequestSenderId = "RequestSenderId" + +// RequestSenderIdRequest generates a "aws/request.Request" representing the +// client's request for the RequestSenderId 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 RequestSenderId for more information on using the RequestSenderId +// 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 RequestSenderIdRequest method. +// req, resp := client.RequestSenderIdRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/RequestSenderId +func (c *PinpointSMSVoiceV2) RequestSenderIdRequest(input *RequestSenderIdInput) (req *request.Request, output *RequestSenderIdOutput) { + op := &request.Operation{ + Name: opRequestSenderId, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RequestSenderIdInput{} + } + + output = &RequestSenderIdOutput{} + req = c.newRequest(op, input, output) + return +} + +// RequestSenderId API operation for Amazon Pinpoint SMS Voice V2. +// +// Request a new sender ID that doesn't require registration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation RequestSenderId for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/RequestSenderId +func (c *PinpointSMSVoiceV2) RequestSenderId(input *RequestSenderIdInput) (*RequestSenderIdOutput, error) { + req, out := c.RequestSenderIdRequest(input) + return out, req.Send() +} + +// RequestSenderIdWithContext is the same as RequestSenderId with the addition of +// the ability to pass a context and additional request options. +// +// See RequestSenderId 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 *PinpointSMSVoiceV2) RequestSenderIdWithContext(ctx aws.Context, input *RequestSenderIdInput, opts ...request.Option) (*RequestSenderIdOutput, error) { + req, out := c.RequestSenderIdRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opSendDestinationNumberVerificationCode = "SendDestinationNumberVerificationCode" + +// SendDestinationNumberVerificationCodeRequest generates a "aws/request.Request" representing the +// client's request for the SendDestinationNumberVerificationCode 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 SendDestinationNumberVerificationCode for more information on using the SendDestinationNumberVerificationCode +// 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 SendDestinationNumberVerificationCodeRequest method. +// req, resp := client.SendDestinationNumberVerificationCodeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SendDestinationNumberVerificationCode +func (c *PinpointSMSVoiceV2) SendDestinationNumberVerificationCodeRequest(input *SendDestinationNumberVerificationCodeInput) (req *request.Request, output *SendDestinationNumberVerificationCodeOutput) { + op := &request.Operation{ + Name: opSendDestinationNumberVerificationCode, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &SendDestinationNumberVerificationCodeInput{} + } + + output = &SendDestinationNumberVerificationCodeOutput{} + req = c.newRequest(op, input, output) + return +} + +// SendDestinationNumberVerificationCode API operation for Amazon Pinpoint SMS Voice V2. +// +// Before you can send test messages to a verified destination phone number +// you need to opt-in the verified destination phone number. Creates a new text +// message with a verification code and send it to a verified destination phone +// number. Once you have the verification code use VerifyDestinationNumber to +// opt-in the verified destination phone number to receive messages. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation SendDestinationNumberVerificationCode for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SendDestinationNumberVerificationCode +func (c *PinpointSMSVoiceV2) SendDestinationNumberVerificationCode(input *SendDestinationNumberVerificationCodeInput) (*SendDestinationNumberVerificationCodeOutput, error) { + req, out := c.SendDestinationNumberVerificationCodeRequest(input) + return out, req.Send() +} + +// SendDestinationNumberVerificationCodeWithContext is the same as SendDestinationNumberVerificationCode with the addition of +// the ability to pass a context and additional request options. +// +// See SendDestinationNumberVerificationCode 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 *PinpointSMSVoiceV2) SendDestinationNumberVerificationCodeWithContext(ctx aws.Context, input *SendDestinationNumberVerificationCodeInput, opts ...request.Option) (*SendDestinationNumberVerificationCodeOutput, error) { + req, out := c.SendDestinationNumberVerificationCodeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opSendTextMessage = "SendTextMessage" // SendTextMessageRequest generates a "aws/request.Request" representing the @@ -4084,7 +6860,7 @@ // SendVoiceMessage API operation for Amazon Pinpoint SMS Voice V2. // -// Allows you to send a request that sends a text message through Amazon Pinpoint. +// Allows you to send a request that sends a voice message through Amazon Pinpoint. // This operation uses Amazon Polly (http://aws.amazon.com/polly/) to convert // a text script into a voice message. // @@ -4531,6 +7307,106 @@ return out, req.Send() } +const opSubmitRegistrationVersion = "SubmitRegistrationVersion" + +// SubmitRegistrationVersionRequest generates a "aws/request.Request" representing the +// client's request for the SubmitRegistrationVersion 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 SubmitRegistrationVersion for more information on using the SubmitRegistrationVersion +// 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 SubmitRegistrationVersionRequest method. +// req, resp := client.SubmitRegistrationVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SubmitRegistrationVersion +func (c *PinpointSMSVoiceV2) SubmitRegistrationVersionRequest(input *SubmitRegistrationVersionInput) (req *request.Request, output *SubmitRegistrationVersionOutput) { + op := &request.Operation{ + Name: opSubmitRegistrationVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &SubmitRegistrationVersionInput{} + } + + output = &SubmitRegistrationVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// SubmitRegistrationVersion API operation for Amazon Pinpoint SMS Voice V2. +// +// Submit the specified registration for review and approval. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation SubmitRegistrationVersion for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SubmitRegistrationVersion +func (c *PinpointSMSVoiceV2) SubmitRegistrationVersion(input *SubmitRegistrationVersionInput) (*SubmitRegistrationVersionOutput, error) { + req, out := c.SubmitRegistrationVersionRequest(input) + return out, req.Send() +} + +// SubmitRegistrationVersionWithContext is the same as SubmitRegistrationVersion with the addition of +// the ability to pass a context and additional request options. +// +// See SubmitRegistrationVersion 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 *PinpointSMSVoiceV2) SubmitRegistrationVersionWithContext(ctx aws.Context, input *SubmitRegistrationVersionInput, opts ...request.Option) (*SubmitRegistrationVersionOutput, error) { + req, out := c.SubmitRegistrationVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -4888,7 +7764,7 @@ // TwoWayChannelArn, enable or disable self-managed opt-outs, and enable or // disable deletion protection. // -// If the origination phone number is associated with a pool, an Error is returned. +// If the origination phone number is associated with a pool, an error is returned. // // 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 @@ -5048,6 +7924,201 @@ return out, req.Send() } +const opUpdateSenderId = "UpdateSenderId" + +// UpdateSenderIdRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSenderId 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 UpdateSenderId for more information on using the UpdateSenderId +// 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 UpdateSenderIdRequest method. +// req, resp := client.UpdateSenderIdRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/UpdateSenderId +func (c *PinpointSMSVoiceV2) UpdateSenderIdRequest(input *UpdateSenderIdInput) (req *request.Request, output *UpdateSenderIdOutput) { + op := &request.Operation{ + Name: opUpdateSenderId, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSenderIdInput{} + } + + output = &UpdateSenderIdOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSenderId API operation for Amazon Pinpoint SMS Voice V2. +// +// Updates the configuration of an existing sender ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation UpdateSenderId for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/UpdateSenderId +func (c *PinpointSMSVoiceV2) UpdateSenderId(input *UpdateSenderIdInput) (*UpdateSenderIdOutput, error) { + req, out := c.UpdateSenderIdRequest(input) + return out, req.Send() +} + +// UpdateSenderIdWithContext is the same as UpdateSenderId with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSenderId 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 *PinpointSMSVoiceV2) UpdateSenderIdWithContext(ctx aws.Context, input *UpdateSenderIdInput, opts ...request.Option) (*UpdateSenderIdOutput, error) { + req, out := c.UpdateSenderIdRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opVerifyDestinationNumber = "VerifyDestinationNumber" + +// VerifyDestinationNumberRequest generates a "aws/request.Request" representing the +// client's request for the VerifyDestinationNumber 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 VerifyDestinationNumber for more information on using the VerifyDestinationNumber +// 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 VerifyDestinationNumberRequest method. +// req, resp := client.VerifyDestinationNumberRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/VerifyDestinationNumber +func (c *PinpointSMSVoiceV2) VerifyDestinationNumberRequest(input *VerifyDestinationNumberInput) (req *request.Request, output *VerifyDestinationNumberOutput) { + op := &request.Operation{ + Name: opVerifyDestinationNumber, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &VerifyDestinationNumberInput{} + } + + output = &VerifyDestinationNumberOutput{} + req = c.newRequest(op, input, output) + return +} + +// VerifyDestinationNumber API operation for Amazon Pinpoint SMS Voice V2. +// +// Use the verification code that was received by the verified destination phone +// number to opt-in the verified destination phone number to receive more messages. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Pinpoint SMS Voice V2's +// API operation VerifyDestinationNumber for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// An error that occurred because too many requests were sent during a certain +// amount of time. +// +// - AccessDeniedException +// The request was denied because you don't have sufficient permissions to access +// the resource. +// +// - ResourceNotFoundException +// A requested resource couldn't be found. +// +// - ValidationException +// A validation exception for a field. +// +// - ConflictException +// Your request has conflicting operations. This can occur if you're trying +// to perform more than one operation on the same resource at the same time +// or it could be that the requested action isn't valid for the current state +// or configuration of the resource. +// +// - InternalServerException +// The API encountered an unexpected error and couldn't complete the request. +// You might be able to successfully issue the request again in the future. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/VerifyDestinationNumber +func (c *PinpointSMSVoiceV2) VerifyDestinationNumber(input *VerifyDestinationNumberInput) (*VerifyDestinationNumberOutput, error) { + req, out := c.VerifyDestinationNumberRequest(input) + return out, req.Send() +} + +// VerifyDestinationNumberWithContext is the same as VerifyDestinationNumber with the addition of +// the ability to pass a context and additional request options. +// +// See VerifyDestinationNumber 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 *PinpointSMSVoiceV2) VerifyDestinationNumberWithContext(ctx aws.Context, input *VerifyDestinationNumberInput, opts ...request.Option) (*VerifyDestinationNumberOutput, error) { + req, out := c.VerifyDestinationNumberRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // The request was denied because you don't have sufficient permissions to access // the resource. type AccessDeniedException struct { @@ -5862,6 +8933,8 @@ // An array of event types that determine which events to log. If "ALL" is used, // then Amazon Pinpoint logs every event type. // + // The TEXT_SENT event type is not supported. + // // MatchingEventTypes is a required field MatchingEventTypes []*string `min:"1" type:"list" required:"true" enum:"EventType"` @@ -6345,6 +9418,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -6434,12 +9511,904 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *CreatePoolOutput) SetTwoWayChannelRole(v string) *CreatePoolOutput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *CreatePoolOutput) SetTwoWayEnabled(v bool) *CreatePoolOutput { s.TwoWayEnabled = &v return s } +type CreateRegistrationAssociationInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` + + // The unique identifier for the origination identity. For example this could + // be a PhoneNumberId or SenderId. + // + // ResourceId is a required field + ResourceId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRegistrationAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRegistrationAssociationInput"} + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + if s.ResourceId != nil && len(*s.ResourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *CreateRegistrationAssociationInput) SetRegistrationId(v string) *CreateRegistrationAssociationInput { + s.RegistrationId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *CreateRegistrationAssociationInput) SetResourceId(v string) *CreateRegistrationAssociationInput { + s.ResourceId = &v + return s +} + +type CreateRegistrationAssociationOutput struct { + _ struct{} `type:"structure"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + IsoCountryCode *string `min:"2" type:"string"` + + // The phone number associated with the registration in E.164 format. + PhoneNumber *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the origination identity that is associated + // with the registration. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` + + // The unique identifier for the origination identity. For example this could + // be a PhoneNumberId or SenderId. + // + // ResourceId is a required field + ResourceId *string `type:"string" required:"true"` + + // The registration type or origination identity type. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAssociationOutput) GoString() string { + return s.String() +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *CreateRegistrationAssociationOutput) SetIsoCountryCode(v string) *CreateRegistrationAssociationOutput { + s.IsoCountryCode = &v + return s +} + +// SetPhoneNumber sets the PhoneNumber field's value. +func (s *CreateRegistrationAssociationOutput) SetPhoneNumber(v string) *CreateRegistrationAssociationOutput { + s.PhoneNumber = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *CreateRegistrationAssociationOutput) SetRegistrationArn(v string) *CreateRegistrationAssociationOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *CreateRegistrationAssociationOutput) SetRegistrationId(v string) *CreateRegistrationAssociationOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *CreateRegistrationAssociationOutput) SetRegistrationType(v string) *CreateRegistrationAssociationOutput { + s.RegistrationType = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *CreateRegistrationAssociationOutput) SetResourceArn(v string) *CreateRegistrationAssociationOutput { + s.ResourceArn = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *CreateRegistrationAssociationOutput) SetResourceId(v string) *CreateRegistrationAssociationOutput { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *CreateRegistrationAssociationOutput) SetResourceType(v string) *CreateRegistrationAssociationOutput { + s.ResourceType = &v + return s +} + +type CreateRegistrationAttachmentInput struct { + _ struct{} `type:"structure"` + + // The registration file to upload. The maximum file size is 1MiB and valid + // file extensions are PDF, JPEG and PNG. + // AttachmentBody is automatically base64 encoded/decoded by the SDK. + AttachmentBody []byte `min:"1" type:"blob"` + + // A URL to the required registration file. For example, you can provide the + // S3 object URL. + AttachmentUrl *string `min:"1" type:"string"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If you don't specify a client token, a randomly generated + // token is used for the request to ensure idempotency. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // An array of tags (key and value pairs) to associate with the registration + // attachment. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAttachmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAttachmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRegistrationAttachmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRegistrationAttachmentInput"} + if s.AttachmentBody != nil && len(s.AttachmentBody) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AttachmentBody", 1)) + } + if s.AttachmentUrl != nil && len(*s.AttachmentUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AttachmentUrl", 1)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttachmentBody sets the AttachmentBody field's value. +func (s *CreateRegistrationAttachmentInput) SetAttachmentBody(v []byte) *CreateRegistrationAttachmentInput { + s.AttachmentBody = v + return s +} + +// SetAttachmentUrl sets the AttachmentUrl field's value. +func (s *CreateRegistrationAttachmentInput) SetAttachmentUrl(v string) *CreateRegistrationAttachmentInput { + s.AttachmentUrl = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateRegistrationAttachmentInput) SetClientToken(v string) *CreateRegistrationAttachmentInput { + s.ClientToken = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRegistrationAttachmentInput) SetTags(v []*Tag) *CreateRegistrationAttachmentInput { + s.Tags = v + return s +} + +type CreateRegistrationAttachmentOutput struct { + _ struct{} `type:"structure"` + + // The status of the registration attachment. + // + // * UPLOAD_IN_PROGRESS The attachment is being uploaded. + // + // * UPLOAD_COMPLETE The attachment has been uploaded. + // + // * UPLOAD_FAILED The attachment failed to uploaded. + // + // * DELETED The attachment has been deleted.. + // + // AttachmentStatus is a required field + AttachmentStatus *string `type:"string" required:"true" enum:"AttachmentStatus"` + + // The time when the registration attachment was created, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) for the registration attachment. + // + // RegistrationAttachmentArn is a required field + RegistrationAttachmentArn *string `type:"string" required:"true"` + + // The unique identifier for the registration attachment. + // + // RegistrationAttachmentId is a required field + RegistrationAttachmentId *string `type:"string" required:"true"` + + // An array of tags (key and value pairs) to associate with the registration + // attachment. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAttachmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationAttachmentOutput) GoString() string { + return s.String() +} + +// SetAttachmentStatus sets the AttachmentStatus field's value. +func (s *CreateRegistrationAttachmentOutput) SetAttachmentStatus(v string) *CreateRegistrationAttachmentOutput { + s.AttachmentStatus = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *CreateRegistrationAttachmentOutput) SetCreatedTimestamp(v time.Time) *CreateRegistrationAttachmentOutput { + s.CreatedTimestamp = &v + return s +} + +// SetRegistrationAttachmentArn sets the RegistrationAttachmentArn field's value. +func (s *CreateRegistrationAttachmentOutput) SetRegistrationAttachmentArn(v string) *CreateRegistrationAttachmentOutput { + s.RegistrationAttachmentArn = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *CreateRegistrationAttachmentOutput) SetRegistrationAttachmentId(v string) *CreateRegistrationAttachmentOutput { + s.RegistrationAttachmentId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRegistrationAttachmentOutput) SetTags(v []*Tag) *CreateRegistrationAttachmentOutput { + s.Tags = v + return s +} + +type CreateRegistrationInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If you don't specify a client token, a randomly generated + // token is used for the request to ensure idempotency. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The type of registration form to create. The list of RegistrationTypes can + // be found using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` + + // An array of tags (key and value pairs) to associate with the registration. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRegistrationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRegistrationInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.RegistrationType == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationType")) + } + if s.RegistrationType != nil && len(*s.RegistrationType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationType", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateRegistrationInput) SetClientToken(v string) *CreateRegistrationInput { + s.ClientToken = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *CreateRegistrationInput) SetRegistrationType(v string) *CreateRegistrationInput { + s.RegistrationType = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRegistrationInput) SetTags(v []*Tag) *CreateRegistrationInput { + s.Tags = v + return s +} + +type CreateRegistrationOutput struct { + _ struct{} `type:"structure"` + + // Metadata about a given registration which is specific to that registration + // type. + AdditionalAttributes map[string]*string `type:"map"` + + // The time when the registration was created, in UNIX epoch time (https://www.epochconverter.com/) + // format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The current version number of the registration. + // + // CurrentVersionNumber is a required field + CurrentVersionNumber *int64 `min:"1" type:"long" required:"true"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The status of the registration. + // + // * CREATED: Your registration is created but not submitted. + // + // * SUBMITTED: Your registration has been submitted and is awaiting review. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * PROVISIONING: Your registration has been approved and your origination + // identity is being created. + // + // * COMPLETE: Your registration has been approved and and your origination + // identity has been created. + // + // * REQUIRES_UPDATES: You must fix your registration and resubmit it. + // + // * CLOSED: The phone number or sender ID has been deleted and you must + // also delete the registration for the number. + // + // * DELETED: The registration has been deleted. + // + // RegistrationStatus is a required field + RegistrationStatus *string `type:"string" required:"true" enum:"RegistrationStatus"` + + // The type of registration form to create. The list of RegistrationTypes can + // be found using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` + + // An array of tags (key and value pairs) to associate with the registration. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationOutput) GoString() string { + return s.String() +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *CreateRegistrationOutput) SetAdditionalAttributes(v map[string]*string) *CreateRegistrationOutput { + s.AdditionalAttributes = v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *CreateRegistrationOutput) SetCreatedTimestamp(v time.Time) *CreateRegistrationOutput { + s.CreatedTimestamp = &v + return s +} + +// SetCurrentVersionNumber sets the CurrentVersionNumber field's value. +func (s *CreateRegistrationOutput) SetCurrentVersionNumber(v int64) *CreateRegistrationOutput { + s.CurrentVersionNumber = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *CreateRegistrationOutput) SetRegistrationArn(v string) *CreateRegistrationOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *CreateRegistrationOutput) SetRegistrationId(v string) *CreateRegistrationOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationStatus sets the RegistrationStatus field's value. +func (s *CreateRegistrationOutput) SetRegistrationStatus(v string) *CreateRegistrationOutput { + s.RegistrationStatus = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *CreateRegistrationOutput) SetRegistrationType(v string) *CreateRegistrationOutput { + s.RegistrationType = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRegistrationOutput) SetTags(v []*Tag) *CreateRegistrationOutput { + s.Tags = v + return s +} + +type CreateRegistrationVersionInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRegistrationVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRegistrationVersionInput"} + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *CreateRegistrationVersionInput) SetRegistrationId(v string) *CreateRegistrationVersionInput { + s.RegistrationId = &v + return s +} + +type CreateRegistrationVersionOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The status of the registration. + // + // * DRAFT: The initial status of a registration version after it’s created. + // + // * SUBMITTED: Your registration has been submitted. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * APPROVED: Your registration has been approved. + // + // * DISCARDED: You've abandon this version of their registration to start + // over with a new version. + // + // * DENIED: You must fix your registration and resubmit it. + // + // * REVOKED: Your previously approved registration has been revoked. + // + // * ARCHIVED: Your previously approved registration version moves into this + // status when a more recently submitted version is approved. + // + // RegistrationVersionStatus is a required field + RegistrationVersionStatus *string `type:"string" required:"true" enum:"RegistrationVersionStatus"` + + // A RegistrationVersionStatusHistory object that contains timestamps for the + // registration. + // + // RegistrationVersionStatusHistory is a required field + RegistrationVersionStatusHistory *RegistrationVersionStatusHistory `type:"structure" required:"true"` + + // The new version number of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRegistrationVersionOutput) GoString() string { + return s.String() +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *CreateRegistrationVersionOutput) SetRegistrationArn(v string) *CreateRegistrationVersionOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *CreateRegistrationVersionOutput) SetRegistrationId(v string) *CreateRegistrationVersionOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationVersionStatus sets the RegistrationVersionStatus field's value. +func (s *CreateRegistrationVersionOutput) SetRegistrationVersionStatus(v string) *CreateRegistrationVersionOutput { + s.RegistrationVersionStatus = &v + return s +} + +// SetRegistrationVersionStatusHistory sets the RegistrationVersionStatusHistory field's value. +func (s *CreateRegistrationVersionOutput) SetRegistrationVersionStatusHistory(v *RegistrationVersionStatusHistory) *CreateRegistrationVersionOutput { + s.RegistrationVersionStatusHistory = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *CreateRegistrationVersionOutput) SetVersionNumber(v int64) *CreateRegistrationVersionOutput { + s.VersionNumber = &v + return s +} + +type CreateVerifiedDestinationNumberInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If you don't specify a client token, a randomly generated + // token is used for the request to ensure idempotency. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The verified destination phone number, in E.164 format. + // + // DestinationPhoneNumber is a required field + DestinationPhoneNumber *string `min:"1" type:"string" required:"true"` + + // An array of tags (key and value pairs) to associate with the destination + // number. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVerifiedDestinationNumberInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVerifiedDestinationNumberInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateVerifiedDestinationNumberInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVerifiedDestinationNumberInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DestinationPhoneNumber == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationPhoneNumber")) + } + if s.DestinationPhoneNumber != nil && len(*s.DestinationPhoneNumber) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DestinationPhoneNumber", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateVerifiedDestinationNumberInput) SetClientToken(v string) *CreateVerifiedDestinationNumberInput { + s.ClientToken = &v + return s +} + +// SetDestinationPhoneNumber sets the DestinationPhoneNumber field's value. +func (s *CreateVerifiedDestinationNumberInput) SetDestinationPhoneNumber(v string) *CreateVerifiedDestinationNumberInput { + s.DestinationPhoneNumber = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateVerifiedDestinationNumberInput) SetTags(v []*Tag) *CreateVerifiedDestinationNumberInput { + s.Tags = v + return s +} + +type CreateVerifiedDestinationNumberOutput struct { + _ struct{} `type:"structure"` + + // The time when the verified phone number was created, in UNIX epoch time (https://www.epochconverter.com/) + // format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The verified destination phone number, in E.164 format. + // + // DestinationPhoneNumber is a required field + DestinationPhoneNumber *string `min:"1" type:"string" required:"true"` + + // The status of the verified destination phone number. + // + // * PENDING: The phone number hasn't been verified yet. + // + // * VERIFIED: The phone number is verified and can receive messages. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"VerificationStatus"` + + // An array of tags (key and value pairs) to associate with the destination + // number. + Tags []*Tag `type:"list"` + + // The Amazon Resource Name (ARN) for the verified destination phone number. + // + // VerifiedDestinationNumberArn is a required field + VerifiedDestinationNumberArn *string `type:"string" required:"true"` + + // The unique identifier for the verified destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVerifiedDestinationNumberOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVerifiedDestinationNumberOutput) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *CreateVerifiedDestinationNumberOutput) SetCreatedTimestamp(v time.Time) *CreateVerifiedDestinationNumberOutput { + s.CreatedTimestamp = &v + return s +} + +// SetDestinationPhoneNumber sets the DestinationPhoneNumber field's value. +func (s *CreateVerifiedDestinationNumberOutput) SetDestinationPhoneNumber(v string) *CreateVerifiedDestinationNumberOutput { + s.DestinationPhoneNumber = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateVerifiedDestinationNumberOutput) SetStatus(v string) *CreateVerifiedDestinationNumberOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateVerifiedDestinationNumberOutput) SetTags(v []*Tag) *CreateVerifiedDestinationNumberOutput { + s.Tags = v + return s +} + +// SetVerifiedDestinationNumberArn sets the VerifiedDestinationNumberArn field's value. +func (s *CreateVerifiedDestinationNumberOutput) SetVerifiedDestinationNumberArn(v string) *CreateVerifiedDestinationNumberOutput { + s.VerifiedDestinationNumberArn = &v + return s +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *CreateVerifiedDestinationNumberOutput) SetVerifiedDestinationNumberId(v string) *CreateVerifiedDestinationNumberOutput { + s.VerifiedDestinationNumberId = &v + return s +} + type DeleteConfigurationSetInput struct { _ struct{} `type:"structure"` @@ -7351,6 +11320,10 @@ // The Amazon Resource Name (ARN) of the TwoWayChannel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -7428,12 +11401,497 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *DeletePoolOutput) SetTwoWayChannelRole(v string) *DeletePoolOutput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *DeletePoolOutput) SetTwoWayEnabled(v bool) *DeletePoolOutput { s.TwoWayEnabled = &v return s } +type DeleteRegistrationAttachmentInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the registration attachment. + // + // RegistrationAttachmentId is a required field + RegistrationAttachmentId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationAttachmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationAttachmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRegistrationAttachmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRegistrationAttachmentInput"} + if s.RegistrationAttachmentId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationAttachmentId")) + } + if s.RegistrationAttachmentId != nil && len(*s.RegistrationAttachmentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationAttachmentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *DeleteRegistrationAttachmentInput) SetRegistrationAttachmentId(v string) *DeleteRegistrationAttachmentInput { + s.RegistrationAttachmentId = &v + return s +} + +type DeleteRegistrationAttachmentOutput struct { + _ struct{} `type:"structure"` + + // The status of the registration attachment. + // + // * UPLOAD_IN_PROGRESS The attachment is being uploaded. + // + // * UPLOAD_COMPLETE The attachment has been uploaded. + // + // * UPLOAD_FAILED The attachment failed to uploaded. + // + // * DELETED The attachment has been deleted.. + // + // AttachmentStatus is a required field + AttachmentStatus *string `type:"string" required:"true" enum:"AttachmentStatus"` + + // The error message if the upload failed. + AttachmentUploadErrorReason *string `type:"string" enum:"AttachmentUploadErrorReason"` + + // The time when the registration attachment was created, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) for the registration attachment. + // + // RegistrationAttachmentArn is a required field + RegistrationAttachmentArn *string `type:"string" required:"true"` + + // The unique identifier for the registration attachment. + // + // RegistrationAttachmentId is a required field + RegistrationAttachmentId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationAttachmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationAttachmentOutput) GoString() string { + return s.String() +} + +// SetAttachmentStatus sets the AttachmentStatus field's value. +func (s *DeleteRegistrationAttachmentOutput) SetAttachmentStatus(v string) *DeleteRegistrationAttachmentOutput { + s.AttachmentStatus = &v + return s +} + +// SetAttachmentUploadErrorReason sets the AttachmentUploadErrorReason field's value. +func (s *DeleteRegistrationAttachmentOutput) SetAttachmentUploadErrorReason(v string) *DeleteRegistrationAttachmentOutput { + s.AttachmentUploadErrorReason = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *DeleteRegistrationAttachmentOutput) SetCreatedTimestamp(v time.Time) *DeleteRegistrationAttachmentOutput { + s.CreatedTimestamp = &v + return s +} + +// SetRegistrationAttachmentArn sets the RegistrationAttachmentArn field's value. +func (s *DeleteRegistrationAttachmentOutput) SetRegistrationAttachmentArn(v string) *DeleteRegistrationAttachmentOutput { + s.RegistrationAttachmentArn = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *DeleteRegistrationAttachmentOutput) SetRegistrationAttachmentId(v string) *DeleteRegistrationAttachmentOutput { + s.RegistrationAttachmentId = &v + return s +} + +type DeleteRegistrationFieldValueInput struct { + _ struct{} `type:"structure"` + + // The path to the registration form field. You can use DescribeRegistrationFieldDefinitions + // for a list of FieldPaths. + // + // FieldPath is a required field + FieldPath *string `min:"1" type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationFieldValueInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationFieldValueInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRegistrationFieldValueInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRegistrationFieldValueInput"} + if s.FieldPath == nil { + invalidParams.Add(request.NewErrParamRequired("FieldPath")) + } + if s.FieldPath != nil && len(*s.FieldPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FieldPath", 1)) + } + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFieldPath sets the FieldPath field's value. +func (s *DeleteRegistrationFieldValueInput) SetFieldPath(v string) *DeleteRegistrationFieldValueInput { + s.FieldPath = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DeleteRegistrationFieldValueInput) SetRegistrationId(v string) *DeleteRegistrationFieldValueInput { + s.RegistrationId = &v + return s +} + +type DeleteRegistrationFieldValueOutput struct { + _ struct{} `type:"structure"` + + // The path to the registration form field. + // + // FieldPath is a required field + FieldPath *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration attachment. + RegistrationAttachmentId *string `type:"string"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // An array of values for the form field. + SelectChoices []*string `type:"list"` + + // The text data for a free form field. + TextValue *string `min:"1" type:"string"` + + // The version number of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationFieldValueOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationFieldValueOutput) GoString() string { + return s.String() +} + +// SetFieldPath sets the FieldPath field's value. +func (s *DeleteRegistrationFieldValueOutput) SetFieldPath(v string) *DeleteRegistrationFieldValueOutput { + s.FieldPath = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *DeleteRegistrationFieldValueOutput) SetRegistrationArn(v string) *DeleteRegistrationFieldValueOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *DeleteRegistrationFieldValueOutput) SetRegistrationAttachmentId(v string) *DeleteRegistrationFieldValueOutput { + s.RegistrationAttachmentId = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DeleteRegistrationFieldValueOutput) SetRegistrationId(v string) *DeleteRegistrationFieldValueOutput { + s.RegistrationId = &v + return s +} + +// SetSelectChoices sets the SelectChoices field's value. +func (s *DeleteRegistrationFieldValueOutput) SetSelectChoices(v []*string) *DeleteRegistrationFieldValueOutput { + s.SelectChoices = v + return s +} + +// SetTextValue sets the TextValue field's value. +func (s *DeleteRegistrationFieldValueOutput) SetTextValue(v string) *DeleteRegistrationFieldValueOutput { + s.TextValue = &v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *DeleteRegistrationFieldValueOutput) SetVersionNumber(v int64) *DeleteRegistrationFieldValueOutput { + s.VersionNumber = &v + return s +} + +type DeleteRegistrationInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRegistrationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRegistrationInput"} + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DeleteRegistrationInput) SetRegistrationId(v string) *DeleteRegistrationInput { + s.RegistrationId = &v + return s +} + +type DeleteRegistrationOutput struct { + _ struct{} `type:"structure"` + + // Metadata about a given registration which is specific to that registration + // type. + AdditionalAttributes map[string]*string `type:"map"` + + // The version number of the registration that was approved. + ApprovedVersionNumber *int64 `min:"1" type:"long"` + + // The time when the registration was created, in UNIX epoch time (https://www.epochconverter.com/) + // format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The current version number of the registration. + // + // CurrentVersionNumber is a required field + CurrentVersionNumber *int64 `min:"1" type:"long" required:"true"` + + // The latest version number of the registration that was denied. + LatestDeniedVersionNumber *int64 `min:"1" type:"long"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The status of the registration. + // + // * CREATED: Your registration is created but not submitted. + // + // * SUBMITTED: Your registration has been submitted and is awaiting review. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * PROVISIONING: Your registration has been approved and your origination + // identity is being created. + // + // * COMPLETE: Your registration has been approved and and your origination + // identity has been created. + // + // * REQUIRES_UPDATES: You must fix your registration and resubmit it. + // + // * CLOSED: The phone number or sender ID has been deleted and you must + // also delete the registration for the number. + // + // * DELETED: The registration has been deleted. + // + // RegistrationStatus is a required field + RegistrationStatus *string `type:"string" required:"true" enum:"RegistrationStatus"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRegistrationOutput) GoString() string { + return s.String() +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *DeleteRegistrationOutput) SetAdditionalAttributes(v map[string]*string) *DeleteRegistrationOutput { + s.AdditionalAttributes = v + return s +} + +// SetApprovedVersionNumber sets the ApprovedVersionNumber field's value. +func (s *DeleteRegistrationOutput) SetApprovedVersionNumber(v int64) *DeleteRegistrationOutput { + s.ApprovedVersionNumber = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *DeleteRegistrationOutput) SetCreatedTimestamp(v time.Time) *DeleteRegistrationOutput { + s.CreatedTimestamp = &v + return s +} + +// SetCurrentVersionNumber sets the CurrentVersionNumber field's value. +func (s *DeleteRegistrationOutput) SetCurrentVersionNumber(v int64) *DeleteRegistrationOutput { + s.CurrentVersionNumber = &v + return s +} + +// SetLatestDeniedVersionNumber sets the LatestDeniedVersionNumber field's value. +func (s *DeleteRegistrationOutput) SetLatestDeniedVersionNumber(v int64) *DeleteRegistrationOutput { + s.LatestDeniedVersionNumber = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *DeleteRegistrationOutput) SetRegistrationArn(v string) *DeleteRegistrationOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DeleteRegistrationOutput) SetRegistrationId(v string) *DeleteRegistrationOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationStatus sets the RegistrationStatus field's value. +func (s *DeleteRegistrationOutput) SetRegistrationStatus(v string) *DeleteRegistrationOutput { + s.RegistrationStatus = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *DeleteRegistrationOutput) SetRegistrationType(v string) *DeleteRegistrationOutput { + s.RegistrationType = &v + return s +} + type DeleteTextMessageSpendLimitOverrideInput struct { _ struct{} `type:"structure"` } @@ -7487,6 +11945,122 @@ return s } +type DeleteVerifiedDestinationNumberInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the verified destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVerifiedDestinationNumberInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVerifiedDestinationNumberInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteVerifiedDestinationNumberInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVerifiedDestinationNumberInput"} + if s.VerifiedDestinationNumberId == nil { + invalidParams.Add(request.NewErrParamRequired("VerifiedDestinationNumberId")) + } + if s.VerifiedDestinationNumberId != nil && len(*s.VerifiedDestinationNumberId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VerifiedDestinationNumberId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *DeleteVerifiedDestinationNumberInput) SetVerifiedDestinationNumberId(v string) *DeleteVerifiedDestinationNumberInput { + s.VerifiedDestinationNumberId = &v + return s +} + +type DeleteVerifiedDestinationNumberOutput struct { + _ struct{} `type:"structure"` + + // The time when the destination phone number was created, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The verified destination phone number, in E.164 format. + // + // DestinationPhoneNumber is a required field + DestinationPhoneNumber *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) for the verified destination phone number. + // + // VerifiedDestinationNumberArn is a required field + VerifiedDestinationNumberArn *string `type:"string" required:"true"` + + // The unique identifier for the verified destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVerifiedDestinationNumberOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVerifiedDestinationNumberOutput) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *DeleteVerifiedDestinationNumberOutput) SetCreatedTimestamp(v time.Time) *DeleteVerifiedDestinationNumberOutput { + s.CreatedTimestamp = &v + return s +} + +// SetDestinationPhoneNumber sets the DestinationPhoneNumber field's value. +func (s *DeleteVerifiedDestinationNumberOutput) SetDestinationPhoneNumber(v string) *DeleteVerifiedDestinationNumberOutput { + s.DestinationPhoneNumber = &v + return s +} + +// SetVerifiedDestinationNumberArn sets the VerifiedDestinationNumberArn field's value. +func (s *DeleteVerifiedDestinationNumberOutput) SetVerifiedDestinationNumberArn(v string) *DeleteVerifiedDestinationNumberOutput { + s.VerifiedDestinationNumberArn = &v + return s +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *DeleteVerifiedDestinationNumberOutput) SetVerifiedDestinationNumberId(v string) *DeleteVerifiedDestinationNumberOutput { + s.VerifiedDestinationNumberId = &v + return s +} + type DeleteVoiceMessageSpendLimitOverrideInput struct { _ struct{} `type:"structure"` } @@ -8555,6 +13129,1036 @@ return s } +type DescribeRegistrationAttachmentsInput struct { + _ struct{} `type:"structure"` + + // An array of RegistrationAttachmentFilter objects to filter the results. + Filters []*RegistrationAttachmentFilter `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The unique identifier of registration attachments to find. This is an array + // of RegistrationAttachmentId. + RegistrationAttachmentIds []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationAttachmentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationAttachmentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationAttachmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationAttachmentsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeRegistrationAttachmentsInput) SetFilters(v []*RegistrationAttachmentFilter) *DescribeRegistrationAttachmentsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationAttachmentsInput) SetMaxResults(v int64) *DescribeRegistrationAttachmentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationAttachmentsInput) SetNextToken(v string) *DescribeRegistrationAttachmentsInput { + s.NextToken = &v + return s +} + +// SetRegistrationAttachmentIds sets the RegistrationAttachmentIds field's value. +func (s *DescribeRegistrationAttachmentsInput) SetRegistrationAttachmentIds(v []*string) *DescribeRegistrationAttachmentsInput { + s.RegistrationAttachmentIds = v + return s +} + +type DescribeRegistrationAttachmentsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of RegistrationAttachments objects that contain the details for + // the requested registration attachments. + // + // RegistrationAttachments is a required field + RegistrationAttachments []*RegistrationAttachmentsInformation `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 DescribeRegistrationAttachmentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationAttachmentsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationAttachmentsOutput) SetNextToken(v string) *DescribeRegistrationAttachmentsOutput { + s.NextToken = &v + return s +} + +// SetRegistrationAttachments sets the RegistrationAttachments field's value. +func (s *DescribeRegistrationAttachmentsOutput) SetRegistrationAttachments(v []*RegistrationAttachmentsInformation) *DescribeRegistrationAttachmentsOutput { + s.RegistrationAttachments = v + return s +} + +type DescribeRegistrationFieldDefinitionsInput struct { + _ struct{} `type:"structure"` + + // An array of paths to the registration form field. + FieldPaths []*string `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` + + // The path to the section of the registration. + SectionPath *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldDefinitionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldDefinitionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationFieldDefinitionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationFieldDefinitionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RegistrationType == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationType")) + } + if s.RegistrationType != nil && len(*s.RegistrationType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationType", 1)) + } + if s.SectionPath != nil && len(*s.SectionPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SectionPath", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFieldPaths sets the FieldPaths field's value. +func (s *DescribeRegistrationFieldDefinitionsInput) SetFieldPaths(v []*string) *DescribeRegistrationFieldDefinitionsInput { + s.FieldPaths = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationFieldDefinitionsInput) SetMaxResults(v int64) *DescribeRegistrationFieldDefinitionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationFieldDefinitionsInput) SetNextToken(v string) *DescribeRegistrationFieldDefinitionsInput { + s.NextToken = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *DescribeRegistrationFieldDefinitionsInput) SetRegistrationType(v string) *DescribeRegistrationFieldDefinitionsInput { + s.RegistrationType = &v + return s +} + +// SetSectionPath sets the SectionPath field's value. +func (s *DescribeRegistrationFieldDefinitionsInput) SetSectionPath(v string) *DescribeRegistrationFieldDefinitionsInput { + s.SectionPath = &v + return s +} + +type DescribeRegistrationFieldDefinitionsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of RegistrationFieldDefinitions objects that contain the details + // for the requested fields. + // + // RegistrationFieldDefinitions is a required field + RegistrationFieldDefinitions []*RegistrationFieldDefinition `type:"list" required:"true"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldDefinitionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldDefinitionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationFieldDefinitionsOutput) SetNextToken(v string) *DescribeRegistrationFieldDefinitionsOutput { + s.NextToken = &v + return s +} + +// SetRegistrationFieldDefinitions sets the RegistrationFieldDefinitions field's value. +func (s *DescribeRegistrationFieldDefinitionsOutput) SetRegistrationFieldDefinitions(v []*RegistrationFieldDefinition) *DescribeRegistrationFieldDefinitionsOutput { + s.RegistrationFieldDefinitions = v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *DescribeRegistrationFieldDefinitionsOutput) SetRegistrationType(v string) *DescribeRegistrationFieldDefinitionsOutput { + s.RegistrationType = &v + return s +} + +type DescribeRegistrationFieldValuesInput struct { + _ struct{} `type:"structure"` + + // An array of paths to the registration form field. + FieldPaths []*string `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` + + // The path to the section of the registration. + SectionPath *string `min:"1" type:"string"` + + // The version number of the registration. + VersionNumber *int64 `min:"1" type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldValuesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldValuesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationFieldValuesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationFieldValuesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + if s.SectionPath != nil && len(*s.SectionPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SectionPath", 1)) + } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFieldPaths sets the FieldPaths field's value. +func (s *DescribeRegistrationFieldValuesInput) SetFieldPaths(v []*string) *DescribeRegistrationFieldValuesInput { + s.FieldPaths = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationFieldValuesInput) SetMaxResults(v int64) *DescribeRegistrationFieldValuesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationFieldValuesInput) SetNextToken(v string) *DescribeRegistrationFieldValuesInput { + s.NextToken = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DescribeRegistrationFieldValuesInput) SetRegistrationId(v string) *DescribeRegistrationFieldValuesInput { + s.RegistrationId = &v + return s +} + +// SetSectionPath sets the SectionPath field's value. +func (s *DescribeRegistrationFieldValuesInput) SetSectionPath(v string) *DescribeRegistrationFieldValuesInput { + s.SectionPath = &v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *DescribeRegistrationFieldValuesInput) SetVersionNumber(v int64) *DescribeRegistrationFieldValuesInput { + s.VersionNumber = &v + return s +} + +type DescribeRegistrationFieldValuesOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // An array of RegistrationFieldValues objects that contain the values for the + // requested registration. + // + // RegistrationFieldValues is a required field + RegistrationFieldValues []*RegistrationFieldValueInformation `type:"list" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The current version of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldValuesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationFieldValuesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationFieldValuesOutput) SetNextToken(v string) *DescribeRegistrationFieldValuesOutput { + s.NextToken = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *DescribeRegistrationFieldValuesOutput) SetRegistrationArn(v string) *DescribeRegistrationFieldValuesOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationFieldValues sets the RegistrationFieldValues field's value. +func (s *DescribeRegistrationFieldValuesOutput) SetRegistrationFieldValues(v []*RegistrationFieldValueInformation) *DescribeRegistrationFieldValuesOutput { + s.RegistrationFieldValues = v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DescribeRegistrationFieldValuesOutput) SetRegistrationId(v string) *DescribeRegistrationFieldValuesOutput { + s.RegistrationId = &v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *DescribeRegistrationFieldValuesOutput) SetVersionNumber(v int64) *DescribeRegistrationFieldValuesOutput { + s.VersionNumber = &v + return s +} + +type DescribeRegistrationSectionDefinitionsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` + + // An array of paths for the registration form section. + SectionPaths []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationSectionDefinitionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationSectionDefinitionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationSectionDefinitionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationSectionDefinitionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RegistrationType == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationType")) + } + if s.RegistrationType != nil && len(*s.RegistrationType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationType", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationSectionDefinitionsInput) SetMaxResults(v int64) *DescribeRegistrationSectionDefinitionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationSectionDefinitionsInput) SetNextToken(v string) *DescribeRegistrationSectionDefinitionsInput { + s.NextToken = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *DescribeRegistrationSectionDefinitionsInput) SetRegistrationType(v string) *DescribeRegistrationSectionDefinitionsInput { + s.RegistrationType = &v + return s +} + +// SetSectionPaths sets the SectionPaths field's value. +func (s *DescribeRegistrationSectionDefinitionsInput) SetSectionPaths(v []*string) *DescribeRegistrationSectionDefinitionsInput { + s.SectionPaths = v + return s +} + +type DescribeRegistrationSectionDefinitionsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of RegistrationSectionDefinition objects. + // + // RegistrationSectionDefinitions is a required field + RegistrationSectionDefinitions []*RegistrationSectionDefinition `type:"list" required:"true"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationSectionDefinitionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationSectionDefinitionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationSectionDefinitionsOutput) SetNextToken(v string) *DescribeRegistrationSectionDefinitionsOutput { + s.NextToken = &v + return s +} + +// SetRegistrationSectionDefinitions sets the RegistrationSectionDefinitions field's value. +func (s *DescribeRegistrationSectionDefinitionsOutput) SetRegistrationSectionDefinitions(v []*RegistrationSectionDefinition) *DescribeRegistrationSectionDefinitionsOutput { + s.RegistrationSectionDefinitions = v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *DescribeRegistrationSectionDefinitionsOutput) SetRegistrationType(v string) *DescribeRegistrationSectionDefinitionsOutput { + s.RegistrationType = &v + return s +} + +type DescribeRegistrationTypeDefinitionsInput struct { + _ struct{} `type:"structure"` + + // An array of RegistrationFilter objects to filter the results. + Filters []*RegistrationTypeFilter `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + RegistrationTypes []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationTypeDefinitionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationTypeDefinitionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationTypeDefinitionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationTypeDefinitionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeRegistrationTypeDefinitionsInput) SetFilters(v []*RegistrationTypeFilter) *DescribeRegistrationTypeDefinitionsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationTypeDefinitionsInput) SetMaxResults(v int64) *DescribeRegistrationTypeDefinitionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationTypeDefinitionsInput) SetNextToken(v string) *DescribeRegistrationTypeDefinitionsInput { + s.NextToken = &v + return s +} + +// SetRegistrationTypes sets the RegistrationTypes field's value. +func (s *DescribeRegistrationTypeDefinitionsInput) SetRegistrationTypes(v []*string) *DescribeRegistrationTypeDefinitionsInput { + s.RegistrationTypes = v + return s +} + +type DescribeRegistrationTypeDefinitionsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationTypeDefinitions is a required field + RegistrationTypeDefinitions []*RegistrationTypeDefinition `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 DescribeRegistrationTypeDefinitionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationTypeDefinitionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationTypeDefinitionsOutput) SetNextToken(v string) *DescribeRegistrationTypeDefinitionsOutput { + s.NextToken = &v + return s +} + +// SetRegistrationTypeDefinitions sets the RegistrationTypeDefinitions field's value. +func (s *DescribeRegistrationTypeDefinitionsOutput) SetRegistrationTypeDefinitions(v []*RegistrationTypeDefinition) *DescribeRegistrationTypeDefinitionsOutput { + s.RegistrationTypeDefinitions = v + return s +} + +type DescribeRegistrationVersionsInput struct { + _ struct{} `type:"structure"` + + // An array of RegistrationVersionFilter objects to filter the results. + Filters []*RegistrationVersionFilter `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` + + // An array of registration version numbers. + VersionNumbers []*int64 `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 DescribeRegistrationVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationVersionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeRegistrationVersionsInput) SetFilters(v []*RegistrationVersionFilter) *DescribeRegistrationVersionsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationVersionsInput) SetMaxResults(v int64) *DescribeRegistrationVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationVersionsInput) SetNextToken(v string) *DescribeRegistrationVersionsInput { + s.NextToken = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DescribeRegistrationVersionsInput) SetRegistrationId(v string) *DescribeRegistrationVersionsInput { + s.RegistrationId = &v + return s +} + +// SetVersionNumbers sets the VersionNumbers field's value. +func (s *DescribeRegistrationVersionsInput) SetVersionNumbers(v []*int64) *DescribeRegistrationVersionsInput { + s.VersionNumbers = v + return s +} + +type DescribeRegistrationVersionsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // An array of RegistrationVersions objects. + // + // RegistrationVersions is a required field + RegistrationVersions []*RegistrationVersionInformation `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 DescribeRegistrationVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationVersionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationVersionsOutput) SetNextToken(v string) *DescribeRegistrationVersionsOutput { + s.NextToken = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *DescribeRegistrationVersionsOutput) SetRegistrationArn(v string) *DescribeRegistrationVersionsOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DescribeRegistrationVersionsOutput) SetRegistrationId(v string) *DescribeRegistrationVersionsOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationVersions sets the RegistrationVersions field's value. +func (s *DescribeRegistrationVersionsOutput) SetRegistrationVersions(v []*RegistrationVersionInformation) *DescribeRegistrationVersionsOutput { + s.RegistrationVersions = v + return s +} + +type DescribeRegistrationsInput struct { + _ struct{} `type:"structure"` + + // An array of RegistrationFilter objects to filter the results. + Filters []*RegistrationFilter `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of unique identifiers for each registration. + RegistrationIds []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRegistrationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRegistrationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeRegistrationsInput) SetFilters(v []*RegistrationFilter) *DescribeRegistrationsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeRegistrationsInput) SetMaxResults(v int64) *DescribeRegistrationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationsInput) SetNextToken(v string) *DescribeRegistrationsInput { + s.NextToken = &v + return s +} + +// SetRegistrationIds sets the RegistrationIds field's value. +func (s *DescribeRegistrationsInput) SetRegistrationIds(v []*string) *DescribeRegistrationsInput { + s.RegistrationIds = v + return s +} + +type DescribeRegistrationsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of RegistrationInformation objects. + // + // Registrations is a required field + Registrations []*RegistrationInformation `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 DescribeRegistrationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRegistrationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeRegistrationsOutput) SetNextToken(v string) *DescribeRegistrationsOutput { + s.NextToken = &v + return s +} + +// SetRegistrations sets the Registrations field's value. +func (s *DescribeRegistrationsOutput) SetRegistrations(v []*RegistrationInformation) *DescribeRegistrationsOutput { + s.Registrations = v + return s +} + type DescribeSenderIdsInput struct { _ struct{} `type:"structure"` @@ -8791,6 +14395,143 @@ return s } +type DescribeVerifiedDestinationNumbersInput struct { + _ struct{} `type:"structure"` + + // An array of verified destination phone number, in E.164 format. + DestinationPhoneNumbers []*string `type:"list"` + + // An array of VerifiedDestinationNumberFilter objects to filter the results. + Filters []*VerifiedDestinationNumberFilter `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of VerifiedDestinationNumberid to retreive. + VerifiedDestinationNumberIds []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeVerifiedDestinationNumbersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeVerifiedDestinationNumbersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeVerifiedDestinationNumbersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeVerifiedDestinationNumbersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationPhoneNumbers sets the DestinationPhoneNumbers field's value. +func (s *DescribeVerifiedDestinationNumbersInput) SetDestinationPhoneNumbers(v []*string) *DescribeVerifiedDestinationNumbersInput { + s.DestinationPhoneNumbers = v + return s +} + +// SetFilters sets the Filters field's value. +func (s *DescribeVerifiedDestinationNumbersInput) SetFilters(v []*VerifiedDestinationNumberFilter) *DescribeVerifiedDestinationNumbersInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeVerifiedDestinationNumbersInput) SetMaxResults(v int64) *DescribeVerifiedDestinationNumbersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeVerifiedDestinationNumbersInput) SetNextToken(v string) *DescribeVerifiedDestinationNumbersInput { + s.NextToken = &v + return s +} + +// SetVerifiedDestinationNumberIds sets the VerifiedDestinationNumberIds field's value. +func (s *DescribeVerifiedDestinationNumbersInput) SetVerifiedDestinationNumberIds(v []*string) *DescribeVerifiedDestinationNumbersInput { + s.VerifiedDestinationNumberIds = v + return s +} + +type DescribeVerifiedDestinationNumbersOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // An array of VerifiedDestinationNumberInformation objects + // + // VerifiedDestinationNumbers is a required field + VerifiedDestinationNumbers []*VerifiedDestinationNumberInformation `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 DescribeVerifiedDestinationNumbersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeVerifiedDestinationNumbersOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeVerifiedDestinationNumbersOutput) SetNextToken(v string) *DescribeVerifiedDestinationNumbersOutput { + s.NextToken = &v + return s +} + +// SetVerifiedDestinationNumbers sets the VerifiedDestinationNumbers field's value. +func (s *DescribeVerifiedDestinationNumbersOutput) SetVerifiedDestinationNumbers(v []*VerifiedDestinationNumberInformation) *DescribeVerifiedDestinationNumbersOutput { + s.VerifiedDestinationNumbers = v + return s +} + type DisassociateOriginationIdentityInput struct { _ struct{} `type:"structure"` @@ -8961,11 +14702,156 @@ return s } +type DiscardRegistrationVersionInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DiscardRegistrationVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DiscardRegistrationVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DiscardRegistrationVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DiscardRegistrationVersionInput"} + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DiscardRegistrationVersionInput) SetRegistrationId(v string) *DiscardRegistrationVersionInput { + s.RegistrationId = &v + return s +} + +type DiscardRegistrationVersionOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The status of the registration version. + // + // * DRAFT: The initial status of a registration version after it’s created. + // + // * SUBMITTED: Your registration has been submitted. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * APPROVED: Your registration has been approved. + // + // * DISCARDED: You've abandon this version of their registration to start + // over with a new version. + // + // * DENIED: You must fix your registration and resubmit it. + // + // * REVOKED: Your previously approved registration has been revoked. + // + // * ARCHIVED: Your previously approved registration version moves into this + // status when a more recently submitted version is approved. + // + // RegistrationVersionStatus is a required field + RegistrationVersionStatus *string `type:"string" required:"true" enum:"RegistrationVersionStatus"` + + // The RegistrationVersionStatusHistory object contains the time stamps for + // when the reservations status changes. + // + // RegistrationVersionStatusHistory is a required field + RegistrationVersionStatusHistory *RegistrationVersionStatusHistory `type:"structure" required:"true"` + + // The version number of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DiscardRegistrationVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DiscardRegistrationVersionOutput) GoString() string { + return s.String() +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *DiscardRegistrationVersionOutput) SetRegistrationArn(v string) *DiscardRegistrationVersionOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *DiscardRegistrationVersionOutput) SetRegistrationId(v string) *DiscardRegistrationVersionOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationVersionStatus sets the RegistrationVersionStatus field's value. +func (s *DiscardRegistrationVersionOutput) SetRegistrationVersionStatus(v string) *DiscardRegistrationVersionOutput { + s.RegistrationVersionStatus = &v + return s +} + +// SetRegistrationVersionStatusHistory sets the RegistrationVersionStatusHistory field's value. +func (s *DiscardRegistrationVersionOutput) SetRegistrationVersionStatusHistory(v *RegistrationVersionStatusHistory) *DiscardRegistrationVersionOutput { + s.RegistrationVersionStatusHistory = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *DiscardRegistrationVersionOutput) SetVersionNumber(v int64) *DiscardRegistrationVersionOutput { + s.VersionNumber = &v + return s +} + // Contains information about an event destination. // // Event destinations are associated with configuration sets, which enable you -// to publish message sending events to Amazon CloudWatch, Amazon Kinesis Data -// Firehose, or Amazon SNS. +// to publish message sending events to CloudWatch, Kinesis Data Firehose,or +// Amazon SNS. type EventDestination struct { _ struct{} `type:"structure"` @@ -8989,6 +14875,8 @@ // An array of event types that determine which events to log. // + // The TEXT_SENT event type is not supported. + // // MatchingEventTypes is a required field MatchingEventTypes []*string `min:"1" type:"list" required:"true" enum:"EventType"` @@ -9465,6 +15353,177 @@ return s } +type ListRegistrationAssociationsInput struct { + _ struct{} `type:"structure"` + + // An array of RegistrationAssociationFilter to apply to the results that are + // returned. + Filters []*RegistrationAssociationFilter `type:"list"` + + // The maximum number of results to return per each request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRegistrationAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRegistrationAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRegistrationAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRegistrationAssociationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListRegistrationAssociationsInput) SetFilters(v []*RegistrationAssociationFilter) *ListRegistrationAssociationsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRegistrationAssociationsInput) SetMaxResults(v int64) *ListRegistrationAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRegistrationAssociationsInput) SetNextToken(v string) *ListRegistrationAssociationsInput { + s.NextToken = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *ListRegistrationAssociationsInput) SetRegistrationId(v string) *ListRegistrationAssociationsInput { + s.RegistrationId = &v + return s +} + +type ListRegistrationAssociationsOutput struct { + _ struct{} `type:"structure"` + + // The token to be used for the next set of paginated results. You don't need + // to supply a value for this field in the initial request. + NextToken *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // An array of RegistrationAssociationMetadata objects. + // + // RegistrationAssociations is a required field + RegistrationAssociations []*RegistrationAssociationMetadata `type:"list" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRegistrationAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRegistrationAssociationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRegistrationAssociationsOutput) SetNextToken(v string) *ListRegistrationAssociationsOutput { + s.NextToken = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *ListRegistrationAssociationsOutput) SetRegistrationArn(v string) *ListRegistrationAssociationsOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationAssociations sets the RegistrationAssociations field's value. +func (s *ListRegistrationAssociationsOutput) SetRegistrationAssociations(v []*RegistrationAssociationMetadata) *ListRegistrationAssociationsOutput { + s.RegistrationAssociations = v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *ListRegistrationAssociationsOutput) SetRegistrationId(v string) *ListRegistrationAssociationsOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *ListRegistrationAssociationsOutput) SetRegistrationType(v string) *ListRegistrationAssociationsOutput { + s.RegistrationType = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure"` @@ -9757,6 +15816,9 @@ // // OriginationIdentityArn is a required field OriginationIdentityArn *string `type:"string" required:"true"` + + // The phone number in E.164 format. + PhoneNumber *string `min:"1" type:"string"` } // String returns the string representation. @@ -9801,6 +15863,12 @@ return s } +// SetPhoneNumber sets the PhoneNumber field's value. +func (s *OriginationIdentityMetadata) SetPhoneNumber(v string) *OriginationIdentityMetadata { + s.PhoneNumber = &v + return s +} + // The information for a phone number that meets a specified criteria. type PhoneNumberFilter struct { _ struct{} `type:"structure"` @@ -9865,7 +15933,8 @@ return s } -// The information for a phone number in an Amazon Web Services account. +// The information for a phone number, in E.164 format, in an Amazon Web Services +// account. type PhoneNumberInformation struct { _ struct{} `type:"structure"` @@ -9930,6 +15999,9 @@ // The unique identifier of the pool associated with the phone number. PoolId *string `type:"string"` + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + // When set to false an end recipient sends a message that begins with HELP // or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies // with a customizable message and adds the end recipient to the OptOutList. @@ -9948,6 +16020,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients using the TwoWayChannelArn. // @@ -10045,6 +16121,12 @@ return s } +// SetRegistrationId sets the RegistrationId field's value. +func (s *PhoneNumberInformation) SetRegistrationId(v string) *PhoneNumberInformation { + s.RegistrationId = &v + return s +} + // SetSelfManagedOptOutsEnabled sets the SelfManagedOptOutsEnabled field's value. func (s *PhoneNumberInformation) SetSelfManagedOptOutsEnabled(v bool) *PhoneNumberInformation { s.SelfManagedOptOutsEnabled = &v @@ -10063,6 +16145,12 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *PhoneNumberInformation) SetTwoWayChannelRole(v string) *PhoneNumberInformation { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *PhoneNumberInformation) SetTwoWayEnabled(v bool) *PhoneNumberInformation { s.TwoWayEnabled = &v @@ -10199,6 +16287,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // When set to true you can receive incoming text messages from your end recipients // using the TwoWayChannelArn. // @@ -10284,6 +16376,12 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *PoolInformation) SetTwoWayChannelRole(v string) *PoolInformation { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *PoolInformation) SetTwoWayEnabled(v bool) *PoolInformation { s.TwoWayEnabled = &v @@ -10364,15 +16462,15 @@ Keyword *string `min:"1" type:"string" required:"true"` // The action to perform for the new keyword when it is received. - KeywordAction *string `type:"string" enum:"KeywordAction"` - - // The message associated with the keyword. // // * AUTOMATIC_RESPONSE: A message is sent to the recipient. // // * OPT_OUT: Keeps the recipient from receiving future messages. // // * OPT_IN: The recipient wants to receive future messages. + KeywordAction *string `type:"string" enum:"KeywordAction"` + + // The message associated with the keyword. // // KeywordMessage is a required field KeywordMessage *string `min:"1" type:"string" required:"true"` @@ -10657,6 +16755,1597 @@ return s } +type PutRegistrationFieldValueInput struct { + _ struct{} `type:"structure"` + + // The path to the registration form field. You can use DescribeRegistrationFieldDefinitions + // for a list of FieldPaths. + // + // FieldPath is a required field + FieldPath *string `min:"1" type:"string" required:"true"` + + // The unique identifier for the registration attachment. + RegistrationAttachmentId *string `min:"1" type:"string"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` + + // An array of values for the form field. + SelectChoices []*string `type:"list"` + + // The text data for a free form field. + TextValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRegistrationFieldValueInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRegistrationFieldValueInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutRegistrationFieldValueInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutRegistrationFieldValueInput"} + if s.FieldPath == nil { + invalidParams.Add(request.NewErrParamRequired("FieldPath")) + } + if s.FieldPath != nil && len(*s.FieldPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FieldPath", 1)) + } + if s.RegistrationAttachmentId != nil && len(*s.RegistrationAttachmentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationAttachmentId", 1)) + } + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + if s.TextValue != nil && len(*s.TextValue) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TextValue", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFieldPath sets the FieldPath field's value. +func (s *PutRegistrationFieldValueInput) SetFieldPath(v string) *PutRegistrationFieldValueInput { + s.FieldPath = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *PutRegistrationFieldValueInput) SetRegistrationAttachmentId(v string) *PutRegistrationFieldValueInput { + s.RegistrationAttachmentId = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *PutRegistrationFieldValueInput) SetRegistrationId(v string) *PutRegistrationFieldValueInput { + s.RegistrationId = &v + return s +} + +// SetSelectChoices sets the SelectChoices field's value. +func (s *PutRegistrationFieldValueInput) SetSelectChoices(v []*string) *PutRegistrationFieldValueInput { + s.SelectChoices = v + return s +} + +// SetTextValue sets the TextValue field's value. +func (s *PutRegistrationFieldValueInput) SetTextValue(v string) *PutRegistrationFieldValueInput { + s.TextValue = &v + return s +} + +type PutRegistrationFieldValueOutput struct { + _ struct{} `type:"structure"` + + // The path to the registration form field. You can use DescribeRegistrationFieldDefinitions + // for a list of FieldPaths. + // + // FieldPath is a required field + FieldPath *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration attachment. + RegistrationAttachmentId *string `type:"string"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // An array of values for the form field. + SelectChoices []*string `type:"list"` + + // The text data for a free form field. + TextValue *string `min:"1" type:"string"` + + // The version number of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRegistrationFieldValueOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutRegistrationFieldValueOutput) GoString() string { + return s.String() +} + +// SetFieldPath sets the FieldPath field's value. +func (s *PutRegistrationFieldValueOutput) SetFieldPath(v string) *PutRegistrationFieldValueOutput { + s.FieldPath = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *PutRegistrationFieldValueOutput) SetRegistrationArn(v string) *PutRegistrationFieldValueOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *PutRegistrationFieldValueOutput) SetRegistrationAttachmentId(v string) *PutRegistrationFieldValueOutput { + s.RegistrationAttachmentId = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *PutRegistrationFieldValueOutput) SetRegistrationId(v string) *PutRegistrationFieldValueOutput { + s.RegistrationId = &v + return s +} + +// SetSelectChoices sets the SelectChoices field's value. +func (s *PutRegistrationFieldValueOutput) SetSelectChoices(v []*string) *PutRegistrationFieldValueOutput { + s.SelectChoices = v + return s +} + +// SetTextValue sets the TextValue field's value. +func (s *PutRegistrationFieldValueOutput) SetTextValue(v string) *PutRegistrationFieldValueOutput { + s.TextValue = &v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *PutRegistrationFieldValueOutput) SetVersionNumber(v int64) *PutRegistrationFieldValueOutput { + s.VersionNumber = &v + return s +} + +// The filter definition for filtering registrations that meets a specified +// criteria. +type RegistrationAssociationFilter struct { + _ struct{} `type:"structure"` + + // The name of the attribute to filter on. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"RegistrationAssociationFilterName"` + + // An array of values to filter for. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAssociationFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAssociationFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegistrationAssociationFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegistrationAssociationFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *RegistrationAssociationFilter) SetName(v string) *RegistrationAssociationFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *RegistrationAssociationFilter) SetValues(v []*string) *RegistrationAssociationFilter { + s.Values = v + return s +} + +// Metadata for the origination identity that is associated with the registration. +type RegistrationAssociationMetadata struct { + _ struct{} `type:"structure"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + IsoCountryCode *string `min:"2" type:"string"` + + // The phone number associated with the registration in E.164 format. + PhoneNumber *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the origination identity that is associated + // with the registration. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` + + // The unique identifier for the origination identity. For example this could + // be a PhoneNumberId or SenderId. + // + // ResourceId is a required field + ResourceId *string `type:"string" required:"true"` + + // The origination identity type. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAssociationMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAssociationMetadata) GoString() string { + return s.String() +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *RegistrationAssociationMetadata) SetIsoCountryCode(v string) *RegistrationAssociationMetadata { + s.IsoCountryCode = &v + return s +} + +// SetPhoneNumber sets the PhoneNumber field's value. +func (s *RegistrationAssociationMetadata) SetPhoneNumber(v string) *RegistrationAssociationMetadata { + s.PhoneNumber = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *RegistrationAssociationMetadata) SetResourceArn(v string) *RegistrationAssociationMetadata { + s.ResourceArn = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *RegistrationAssociationMetadata) SetResourceId(v string) *RegistrationAssociationMetadata { + s.ResourceId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *RegistrationAssociationMetadata) SetResourceType(v string) *RegistrationAssociationMetadata { + s.ResourceType = &v + return s +} + +// The filter definition for filtering registration attachments that meets a +// specified criteria. +type RegistrationAttachmentFilter struct { + _ struct{} `type:"structure"` + + // The name of the attribute to filter on. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"RegistrationAttachmentFilterName"` + + // An array of values to filter on. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAttachmentFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAttachmentFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegistrationAttachmentFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegistrationAttachmentFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *RegistrationAttachmentFilter) SetName(v string) *RegistrationAttachmentFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *RegistrationAttachmentFilter) SetValues(v []*string) *RegistrationAttachmentFilter { + s.Values = v + return s +} + +// Provides information on the specified registration attachments. +type RegistrationAttachmentsInformation struct { + _ struct{} `type:"structure"` + + // The status of the registration attachment. + // + // * UPLOAD_IN_PROGRESS The attachment is being uploaded. + // + // * UPLOAD_COMPLETE The attachment has been uploaded. + // + // * UPLOAD_FAILED The attachment failed to uploaded. + // + // * DELETED The attachment has been deleted.. + // + // AttachmentStatus is a required field + AttachmentStatus *string `type:"string" required:"true" enum:"AttachmentStatus"` + + // A description of why the upload didn't successfully complete. + AttachmentUploadErrorReason *string `type:"string" enum:"AttachmentUploadErrorReason"` + + // The time when the registration attachment was created, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) for the registration attachment. + // + // RegistrationAttachmentArn is a required field + RegistrationAttachmentArn *string `type:"string" required:"true"` + + // The unique identifier for the registration attachment. + // + // RegistrationAttachmentId is a required field + RegistrationAttachmentId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAttachmentsInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationAttachmentsInformation) GoString() string { + return s.String() +} + +// SetAttachmentStatus sets the AttachmentStatus field's value. +func (s *RegistrationAttachmentsInformation) SetAttachmentStatus(v string) *RegistrationAttachmentsInformation { + s.AttachmentStatus = &v + return s +} + +// SetAttachmentUploadErrorReason sets the AttachmentUploadErrorReason field's value. +func (s *RegistrationAttachmentsInformation) SetAttachmentUploadErrorReason(v string) *RegistrationAttachmentsInformation { + s.AttachmentUploadErrorReason = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *RegistrationAttachmentsInformation) SetCreatedTimestamp(v time.Time) *RegistrationAttachmentsInformation { + s.CreatedTimestamp = &v + return s +} + +// SetRegistrationAttachmentArn sets the RegistrationAttachmentArn field's value. +func (s *RegistrationAttachmentsInformation) SetRegistrationAttachmentArn(v string) *RegistrationAttachmentsInformation { + s.RegistrationAttachmentArn = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *RegistrationAttachmentsInformation) SetRegistrationAttachmentId(v string) *RegistrationAttachmentsInformation { + s.RegistrationAttachmentId = &v + return s +} + +// Provides the reason a registration was rejected. +type RegistrationDeniedReasonInformation struct { + _ struct{} `type:"structure"` + + // The link to the document. + DocumentationLink *string `type:"string"` + + // The title of the document. + DocumentationTitle *string `type:"string"` + + // A long description of the rejection reason. + LongDescription *string `type:"string"` + + // The reason a registration was rejected. + // + // Reason is a required field + Reason *string `type:"string" required:"true"` + + // A short description of the rejection reason. + // + // ShortDescription is a required field + ShortDescription *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationDeniedReasonInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationDeniedReasonInformation) GoString() string { + return s.String() +} + +// SetDocumentationLink sets the DocumentationLink field's value. +func (s *RegistrationDeniedReasonInformation) SetDocumentationLink(v string) *RegistrationDeniedReasonInformation { + s.DocumentationLink = &v + return s +} + +// SetDocumentationTitle sets the DocumentationTitle field's value. +func (s *RegistrationDeniedReasonInformation) SetDocumentationTitle(v string) *RegistrationDeniedReasonInformation { + s.DocumentationTitle = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *RegistrationDeniedReasonInformation) SetLongDescription(v string) *RegistrationDeniedReasonInformation { + s.LongDescription = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *RegistrationDeniedReasonInformation) SetReason(v string) *RegistrationDeniedReasonInformation { + s.Reason = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *RegistrationDeniedReasonInformation) SetShortDescription(v string) *RegistrationDeniedReasonInformation { + s.ShortDescription = &v + return s +} + +// Provides a description of the specified field. +type RegistrationFieldDefinition struct { + _ struct{} `type:"structure"` + + // An array of RegistrationFieldDisplayHints objects for the field. + // + // DisplayHints is a required field + DisplayHints *RegistrationFieldDisplayHints `type:"structure" required:"true"` + + // The path to the registration form field. You can use DescribeRegistrationFieldDefinitions + // for a list of FieldPaths. + // + // FieldPath is a required field + FieldPath *string `min:"1" type:"string" required:"true"` + + // Specifies if the field for the registration form is required, conditional + // or optional. + // + // FieldRequirement is a required field + FieldRequirement *string `type:"string" required:"true" enum:"FieldRequirement"` + + // The type of field. + // + // FieldType is a required field + FieldType *string `type:"string" required:"true" enum:"FieldType"` + + // The section path of the field. + // + // SectionPath is a required field + SectionPath *string `min:"1" type:"string" required:"true"` + + // The validation rules for a select field. + SelectValidation *SelectValidation `type:"structure"` + + // The validation rules for a text field. + TextValidation *TextValidation `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 RegistrationFieldDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFieldDefinition) GoString() string { + return s.String() +} + +// SetDisplayHints sets the DisplayHints field's value. +func (s *RegistrationFieldDefinition) SetDisplayHints(v *RegistrationFieldDisplayHints) *RegistrationFieldDefinition { + s.DisplayHints = v + return s +} + +// SetFieldPath sets the FieldPath field's value. +func (s *RegistrationFieldDefinition) SetFieldPath(v string) *RegistrationFieldDefinition { + s.FieldPath = &v + return s +} + +// SetFieldRequirement sets the FieldRequirement field's value. +func (s *RegistrationFieldDefinition) SetFieldRequirement(v string) *RegistrationFieldDefinition { + s.FieldRequirement = &v + return s +} + +// SetFieldType sets the FieldType field's value. +func (s *RegistrationFieldDefinition) SetFieldType(v string) *RegistrationFieldDefinition { + s.FieldType = &v + return s +} + +// SetSectionPath sets the SectionPath field's value. +func (s *RegistrationFieldDefinition) SetSectionPath(v string) *RegistrationFieldDefinition { + s.SectionPath = &v + return s +} + +// SetSelectValidation sets the SelectValidation field's value. +func (s *RegistrationFieldDefinition) SetSelectValidation(v *SelectValidation) *RegistrationFieldDefinition { + s.SelectValidation = v + return s +} + +// SetTextValidation sets the TextValidation field's value. +func (s *RegistrationFieldDefinition) SetTextValidation(v *TextValidation) *RegistrationFieldDefinition { + s.TextValidation = v + return s +} + +// Provides help information on the registration field. +type RegistrationFieldDisplayHints struct { + _ struct{} `type:"structure"` + + // The link to the document the display hint is associated with. + DocumentationLink *string `type:"string"` + + // The title of the document the display hint is associated with. + DocumentationTitle *string `type:"string"` + + // Example text of what the value of a field should contain. + ExampleTextValue *string `type:"string"` + + // A full description of the display hint. + LongDescription *string `type:"string"` + + // An array of SelectOptionDescription objects. + SelectOptionDescriptions []*SelectOptionDescription `type:"list"` + + // A short description of the display hint. + // + // ShortDescription is a required field + ShortDescription *string `type:"string" required:"true"` + + // The validation rules for the text field. + TextValidationDescription *string `type:"string"` + + // The title of the display hint. + // + // Title is a required field + Title *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFieldDisplayHints) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFieldDisplayHints) GoString() string { + return s.String() +} + +// SetDocumentationLink sets the DocumentationLink field's value. +func (s *RegistrationFieldDisplayHints) SetDocumentationLink(v string) *RegistrationFieldDisplayHints { + s.DocumentationLink = &v + return s +} + +// SetDocumentationTitle sets the DocumentationTitle field's value. +func (s *RegistrationFieldDisplayHints) SetDocumentationTitle(v string) *RegistrationFieldDisplayHints { + s.DocumentationTitle = &v + return s +} + +// SetExampleTextValue sets the ExampleTextValue field's value. +func (s *RegistrationFieldDisplayHints) SetExampleTextValue(v string) *RegistrationFieldDisplayHints { + s.ExampleTextValue = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *RegistrationFieldDisplayHints) SetLongDescription(v string) *RegistrationFieldDisplayHints { + s.LongDescription = &v + return s +} + +// SetSelectOptionDescriptions sets the SelectOptionDescriptions field's value. +func (s *RegistrationFieldDisplayHints) SetSelectOptionDescriptions(v []*SelectOptionDescription) *RegistrationFieldDisplayHints { + s.SelectOptionDescriptions = v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *RegistrationFieldDisplayHints) SetShortDescription(v string) *RegistrationFieldDisplayHints { + s.ShortDescription = &v + return s +} + +// SetTextValidationDescription sets the TextValidationDescription field's value. +func (s *RegistrationFieldDisplayHints) SetTextValidationDescription(v string) *RegistrationFieldDisplayHints { + s.TextValidationDescription = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *RegistrationFieldDisplayHints) SetTitle(v string) *RegistrationFieldDisplayHints { + s.Title = &v + return s +} + +// Provides the values of the specified field. +type RegistrationFieldValueInformation struct { + _ struct{} `type:"structure"` + + // A description of why the registration was denied. + DeniedReason *string `type:"string"` + + // The path to the registration form field. You can use DescribeRegistrationFieldDefinitions + // for a list of FieldPaths. + // + // FieldPath is a required field + FieldPath *string `min:"1" type:"string" required:"true"` + + // The unique identifier for the registration attachment. + RegistrationAttachmentId *string `min:"1" type:"string"` + + // An array of values for the form field. + SelectChoices []*string `type:"list"` + + // The text data for a free form field. + TextValue *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFieldValueInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFieldValueInformation) GoString() string { + return s.String() +} + +// SetDeniedReason sets the DeniedReason field's value. +func (s *RegistrationFieldValueInformation) SetDeniedReason(v string) *RegistrationFieldValueInformation { + s.DeniedReason = &v + return s +} + +// SetFieldPath sets the FieldPath field's value. +func (s *RegistrationFieldValueInformation) SetFieldPath(v string) *RegistrationFieldValueInformation { + s.FieldPath = &v + return s +} + +// SetRegistrationAttachmentId sets the RegistrationAttachmentId field's value. +func (s *RegistrationFieldValueInformation) SetRegistrationAttachmentId(v string) *RegistrationFieldValueInformation { + s.RegistrationAttachmentId = &v + return s +} + +// SetSelectChoices sets the SelectChoices field's value. +func (s *RegistrationFieldValueInformation) SetSelectChoices(v []*string) *RegistrationFieldValueInformation { + s.SelectChoices = v + return s +} + +// SetTextValue sets the TextValue field's value. +func (s *RegistrationFieldValueInformation) SetTextValue(v string) *RegistrationFieldValueInformation { + s.TextValue = &v + return s +} + +// The filter definition for filtering registrations that meets a specified +// criteria. +type RegistrationFilter struct { + _ struct{} `type:"structure"` + + // The name of the attribute to filter on. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"RegistrationFilterName"` + + // An array of values to filter on. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegistrationFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegistrationFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *RegistrationFilter) SetName(v string) *RegistrationFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *RegistrationFilter) SetValues(v []*string) *RegistrationFilter { + s.Values = v + return s +} + +// Provides information about the requested registration. +type RegistrationInformation struct { + _ struct{} `type:"structure"` + + // Metadata about a given registration which is specific to that registration + // type. + AdditionalAttributes map[string]*string `type:"map"` + + // The version number of the registration that was approved. + ApprovedVersionNumber *int64 `min:"1" type:"long"` + + // The time when the registration was created, in UNIX epoch time (https://www.epochconverter.com/) + // format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The current version number of the registration. + // + // CurrentVersionNumber is a required field + CurrentVersionNumber *int64 `min:"1" type:"long" required:"true"` + + // The latest version number of the registration that was denied. + LatestDeniedVersionNumber *int64 `min:"1" type:"long"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The status of the registration. + // + // * CREATED: Your registration is created but not submitted. + // + // * SUBMITTED: Your registration has been submitted and is awaiting review. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * PROVISIONING: Your registration has been approved and your origination + // identity is being created. + // + // * COMPLETE: Your registration has been approved and and your origination + // identity has been created. + // + // * REQUIRES_UPDATES: You must fix your registration and resubmit it. + // + // * CLOSED: The phone number or sender ID has been deleted and you must + // also delete the registration for the number. + // + // * DELETED: The registration has been deleted. + // + // RegistrationStatus is a required field + RegistrationStatus *string `type:"string" required:"true" enum:"RegistrationStatus"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationInformation) GoString() string { + return s.String() +} + +// SetAdditionalAttributes sets the AdditionalAttributes field's value. +func (s *RegistrationInformation) SetAdditionalAttributes(v map[string]*string) *RegistrationInformation { + s.AdditionalAttributes = v + return s +} + +// SetApprovedVersionNumber sets the ApprovedVersionNumber field's value. +func (s *RegistrationInformation) SetApprovedVersionNumber(v int64) *RegistrationInformation { + s.ApprovedVersionNumber = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *RegistrationInformation) SetCreatedTimestamp(v time.Time) *RegistrationInformation { + s.CreatedTimestamp = &v + return s +} + +// SetCurrentVersionNumber sets the CurrentVersionNumber field's value. +func (s *RegistrationInformation) SetCurrentVersionNumber(v int64) *RegistrationInformation { + s.CurrentVersionNumber = &v + return s +} + +// SetLatestDeniedVersionNumber sets the LatestDeniedVersionNumber field's value. +func (s *RegistrationInformation) SetLatestDeniedVersionNumber(v int64) *RegistrationInformation { + s.LatestDeniedVersionNumber = &v + return s +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *RegistrationInformation) SetRegistrationArn(v string) *RegistrationInformation { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *RegistrationInformation) SetRegistrationId(v string) *RegistrationInformation { + s.RegistrationId = &v + return s +} + +// SetRegistrationStatus sets the RegistrationStatus field's value. +func (s *RegistrationInformation) SetRegistrationStatus(v string) *RegistrationInformation { + s.RegistrationStatus = &v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *RegistrationInformation) SetRegistrationType(v string) *RegistrationInformation { + s.RegistrationType = &v + return s +} + +// Provides information on the specified section definition. +type RegistrationSectionDefinition struct { + _ struct{} `type:"structure"` + + // The path to the section of the registration. + // + // DisplayHints is a required field + DisplayHints *RegistrationSectionDisplayHints `type:"structure" required:"true"` + + // The path to the section of the registration. + // + // SectionPath is a required field + SectionPath *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationSectionDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationSectionDefinition) GoString() string { + return s.String() +} + +// SetDisplayHints sets the DisplayHints field's value. +func (s *RegistrationSectionDefinition) SetDisplayHints(v *RegistrationSectionDisplayHints) *RegistrationSectionDefinition { + s.DisplayHints = v + return s +} + +// SetSectionPath sets the SectionPath field's value. +func (s *RegistrationSectionDefinition) SetSectionPath(v string) *RegistrationSectionDefinition { + s.SectionPath = &v + return s +} + +// Provides help information on the registration section. +type RegistrationSectionDisplayHints struct { + _ struct{} `type:"structure"` + + // The link to the document the display hint is associated with. + DocumentationLink *string `type:"string"` + + // The title of the document the display hint is associated with. + DocumentationTitle *string `type:"string"` + + // A full description of the display hint. + LongDescription *string `type:"string"` + + // A short description of the display hint. + // + // ShortDescription is a required field + ShortDescription *string `type:"string" required:"true"` + + // The title of the display hint. + // + // Title is a required field + Title *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationSectionDisplayHints) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationSectionDisplayHints) GoString() string { + return s.String() +} + +// SetDocumentationLink sets the DocumentationLink field's value. +func (s *RegistrationSectionDisplayHints) SetDocumentationLink(v string) *RegistrationSectionDisplayHints { + s.DocumentationLink = &v + return s +} + +// SetDocumentationTitle sets the DocumentationTitle field's value. +func (s *RegistrationSectionDisplayHints) SetDocumentationTitle(v string) *RegistrationSectionDisplayHints { + s.DocumentationTitle = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *RegistrationSectionDisplayHints) SetLongDescription(v string) *RegistrationSectionDisplayHints { + s.LongDescription = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *RegistrationSectionDisplayHints) SetShortDescription(v string) *RegistrationSectionDisplayHints { + s.ShortDescription = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *RegistrationSectionDisplayHints) SetTitle(v string) *RegistrationSectionDisplayHints { + s.Title = &v + return s +} + +// Provides information on the supported registration type. +type RegistrationTypeDefinition struct { + _ struct{} `type:"structure"` + + // Provides help information on the registration. + // + // DisplayHints is a required field + DisplayHints *RegistrationTypeDisplayHints `type:"structure" required:"true"` + + // The type of registration form. The list of RegistrationTypes can be found + // using the DescribeRegistrationTypeDefinitions action. + // + // RegistrationType is a required field + RegistrationType *string `min:"1" type:"string" required:"true"` + + // The supported association behavior for the registration type. + SupportedAssociations []*SupportedAssociation `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 RegistrationTypeDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationTypeDefinition) GoString() string { + return s.String() +} + +// SetDisplayHints sets the DisplayHints field's value. +func (s *RegistrationTypeDefinition) SetDisplayHints(v *RegistrationTypeDisplayHints) *RegistrationTypeDefinition { + s.DisplayHints = v + return s +} + +// SetRegistrationType sets the RegistrationType field's value. +func (s *RegistrationTypeDefinition) SetRegistrationType(v string) *RegistrationTypeDefinition { + s.RegistrationType = &v + return s +} + +// SetSupportedAssociations sets the SupportedAssociations field's value. +func (s *RegistrationTypeDefinition) SetSupportedAssociations(v []*SupportedAssociation) *RegistrationTypeDefinition { + s.SupportedAssociations = v + return s +} + +// Provides help information on the registration type. +type RegistrationTypeDisplayHints struct { + _ struct{} `type:"structure"` + + // The link to the document the display hint is associated with. + DocumentationLink *string `type:"string"` + + // The title of the document the display hint is associated with. + DocumentationTitle *string `type:"string"` + + // A full description of the display hint. + LongDescription *string `type:"string"` + + // A short description of the display hint. + ShortDescription *string `type:"string"` + + // The title of the display hint. + // + // Title is a required field + Title *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationTypeDisplayHints) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationTypeDisplayHints) GoString() string { + return s.String() +} + +// SetDocumentationLink sets the DocumentationLink field's value. +func (s *RegistrationTypeDisplayHints) SetDocumentationLink(v string) *RegistrationTypeDisplayHints { + s.DocumentationLink = &v + return s +} + +// SetDocumentationTitle sets the DocumentationTitle field's value. +func (s *RegistrationTypeDisplayHints) SetDocumentationTitle(v string) *RegistrationTypeDisplayHints { + s.DocumentationTitle = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *RegistrationTypeDisplayHints) SetLongDescription(v string) *RegistrationTypeDisplayHints { + s.LongDescription = &v + return s +} + +// SetShortDescription sets the ShortDescription field's value. +func (s *RegistrationTypeDisplayHints) SetShortDescription(v string) *RegistrationTypeDisplayHints { + s.ShortDescription = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *RegistrationTypeDisplayHints) SetTitle(v string) *RegistrationTypeDisplayHints { + s.Title = &v + return s +} + +// The filter definition for filtering registration types that meets a specified +// criteria. +type RegistrationTypeFilter struct { + _ struct{} `type:"structure"` + + // The name of the attribute to filter on. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"RegistrationTypeFilterName"` + + // An array of values to filter on. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationTypeFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationTypeFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegistrationTypeFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegistrationTypeFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *RegistrationTypeFilter) SetName(v string) *RegistrationTypeFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *RegistrationTypeFilter) SetValues(v []*string) *RegistrationTypeFilter { + s.Values = v + return s +} + +// The filter definition for filtering registration versions that meets a specified +// criteria. +type RegistrationVersionFilter struct { + _ struct{} `type:"structure"` + + // The name of the attribute to filter on. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"RegistrationVersionFilterName"` + + // An array of values to filter on. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationVersionFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationVersionFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegistrationVersionFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegistrationVersionFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *RegistrationVersionFilter) SetName(v string) *RegistrationVersionFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *RegistrationVersionFilter) SetValues(v []*string) *RegistrationVersionFilter { + s.Values = v + return s +} + +// Provides information about the specified version of the registration. +type RegistrationVersionInformation struct { + _ struct{} `type:"structure"` + + // An array of RegistrationDeniedReasonInformation objects. + DeniedReasons []*RegistrationDeniedReasonInformation `type:"list"` + + // The status of the registration. + // + // * DRAFT: The initial status of a registration version after it’s created. + // + // * SUBMITTED: Your registration has been submitted. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * APPROVED: Your registration has been approved. + // + // * DISCARDED: You've abandon this version of their registration to start + // over with a new version. + // + // * DENIED: You must fix your registration and resubmit it. + // + // * REVOKED: Your previously approved registration has been revoked. + // + // * ARCHIVED: Your previously approved registration version moves into this + // status when a more recently submitted version is approved. + // + // RegistrationVersionStatus is a required field + RegistrationVersionStatus *string `type:"string" required:"true" enum:"RegistrationVersionStatus"` + + // The RegistrationVersionStatusHistory object contains the time stamps for + // when the reservations status changes. + // + // RegistrationVersionStatusHistory is a required field + RegistrationVersionStatusHistory *RegistrationVersionStatusHistory `type:"structure" required:"true"` + + // The version number of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationVersionInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationVersionInformation) GoString() string { + return s.String() +} + +// SetDeniedReasons sets the DeniedReasons field's value. +func (s *RegistrationVersionInformation) SetDeniedReasons(v []*RegistrationDeniedReasonInformation) *RegistrationVersionInformation { + s.DeniedReasons = v + return s +} + +// SetRegistrationVersionStatus sets the RegistrationVersionStatus field's value. +func (s *RegistrationVersionInformation) SetRegistrationVersionStatus(v string) *RegistrationVersionInformation { + s.RegistrationVersionStatus = &v + return s +} + +// SetRegistrationVersionStatusHistory sets the RegistrationVersionStatusHistory field's value. +func (s *RegistrationVersionInformation) SetRegistrationVersionStatusHistory(v *RegistrationVersionStatusHistory) *RegistrationVersionInformation { + s.RegistrationVersionStatusHistory = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *RegistrationVersionInformation) SetVersionNumber(v int64) *RegistrationVersionInformation { + s.VersionNumber = &v + return s +} + +// The RegistrationVersionStatusHistory object contains the time stamps for +// when the reservations status changes. +type RegistrationVersionStatusHistory struct { + _ struct{} `type:"structure"` + + // The time when the registration was in the approved state, in UNIX epoch time + // (https://www.epochconverter.com/) format. + ApprovedTimestamp *time.Time `type:"timestamp"` + + // The time when the registration was in the archived state, in UNIX epoch time + // (https://www.epochconverter.com/) format. + ArchivedTimestamp *time.Time `type:"timestamp"` + + // The time when the registration was in the denied state, in UNIX epoch time + // (https://www.epochconverter.com/) format. + DeniedTimestamp *time.Time `type:"timestamp"` + + // The time when the registration was in the discarded state, in UNIX epoch + // time (https://www.epochconverter.com/) format. + DiscardedTimestamp *time.Time `type:"timestamp"` + + // The time when the registration was in the draft state, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // DraftTimestamp is a required field + DraftTimestamp *time.Time `type:"timestamp" required:"true"` + + // The time when the registration was in the reviewing state, in UNIX epoch + // time (https://www.epochconverter.com/) format. + ReviewingTimestamp *time.Time `type:"timestamp"` + + // The time when the registration was in the revoked state, in UNIX epoch time + // (https://www.epochconverter.com/) format. + RevokedTimestamp *time.Time `type:"timestamp"` + + // The time when the registration was in the submitted state, in UNIX epoch + // time (https://www.epochconverter.com/) format. + SubmittedTimestamp *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationVersionStatusHistory) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegistrationVersionStatusHistory) GoString() string { + return s.String() +} + +// SetApprovedTimestamp sets the ApprovedTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetApprovedTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.ApprovedTimestamp = &v + return s +} + +// SetArchivedTimestamp sets the ArchivedTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetArchivedTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.ArchivedTimestamp = &v + return s +} + +// SetDeniedTimestamp sets the DeniedTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetDeniedTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.DeniedTimestamp = &v + return s +} + +// SetDiscardedTimestamp sets the DiscardedTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetDiscardedTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.DiscardedTimestamp = &v + return s +} + +// SetDraftTimestamp sets the DraftTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetDraftTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.DraftTimestamp = &v + return s +} + +// SetReviewingTimestamp sets the ReviewingTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetReviewingTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.ReviewingTimestamp = &v + return s +} + +// SetRevokedTimestamp sets the RevokedTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetRevokedTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.RevokedTimestamp = &v + return s +} + +// SetSubmittedTimestamp sets the SubmittedTimestamp field's value. +func (s *RegistrationVersionStatusHistory) SetSubmittedTimestamp(v time.Time) *RegistrationVersionStatusHistory { + s.SubmittedTimestamp = &v + return s +} + type ReleasePhoneNumberInput struct { _ struct{} `type:"structure"` @@ -10742,6 +18431,9 @@ // The PhoneNumberId of the phone number that was released. PhoneNumberId *string `type:"string"` + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + // By default this is set to false. When an end recipient sends a message that // begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint // automatically replies with a customizable message and adds the end recipient @@ -10756,6 +18448,10 @@ // The Amazon Resource Name (ARN) of the TwoWayChannel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -10839,6 +18535,12 @@ return s } +// SetRegistrationId sets the RegistrationId field's value. +func (s *ReleasePhoneNumberOutput) SetRegistrationId(v string) *ReleasePhoneNumberOutput { + s.RegistrationId = &v + return s +} + // SetSelfManagedOptOutsEnabled sets the SelfManagedOptOutsEnabled field's value. func (s *ReleasePhoneNumberOutput) SetSelfManagedOptOutsEnabled(v bool) *ReleasePhoneNumberOutput { s.SelfManagedOptOutsEnabled = &v @@ -10857,12 +18559,185 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *ReleasePhoneNumberOutput) SetTwoWayChannelRole(v string) *ReleasePhoneNumberOutput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *ReleasePhoneNumberOutput) SetTwoWayEnabled(v bool) *ReleasePhoneNumberOutput { s.TwoWayEnabled = &v return s } +type ReleaseSenderIdInput struct { + _ struct{} `type:"structure"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + // + // IsoCountryCode is a required field + IsoCountryCode *string `min:"2" type:"string" required:"true"` + + // The sender ID to release. + // + // SenderId is a required field + SenderId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReleaseSenderIdInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReleaseSenderIdInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ReleaseSenderIdInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReleaseSenderIdInput"} + if s.IsoCountryCode == nil { + invalidParams.Add(request.NewErrParamRequired("IsoCountryCode")) + } + if s.IsoCountryCode != nil && len(*s.IsoCountryCode) < 2 { + invalidParams.Add(request.NewErrParamMinLen("IsoCountryCode", 2)) + } + if s.SenderId == nil { + invalidParams.Add(request.NewErrParamRequired("SenderId")) + } + if s.SenderId != nil && len(*s.SenderId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SenderId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *ReleaseSenderIdInput) SetIsoCountryCode(v string) *ReleaseSenderIdInput { + s.IsoCountryCode = &v + return s +} + +// SetSenderId sets the SenderId field's value. +func (s *ReleaseSenderIdInput) SetSenderId(v string) *ReleaseSenderIdInput { + s.SenderId = &v + return s +} + +type ReleaseSenderIdOutput struct { + _ struct{} `type:"structure"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + // + // IsoCountryCode is a required field + IsoCountryCode *string `min:"2" type:"string" required:"true"` + + // The type of message. Valid values are TRANSACTIONAL for messages that are + // critical or time-sensitive and PROMOTIONAL for messages that aren't critical + // or time-sensitive. + // + // MessageTypes is a required field + MessageTypes []*string `type:"list" required:"true" enum:"MessageType"` + + // The monthly price, in US dollars, to lease the sender ID. + // + // MonthlyLeasingPrice is a required field + MonthlyLeasingPrice *string `type:"string" required:"true"` + + // True if the sender ID is registered. + // + // Registered is a required field + Registered *bool `type:"boolean" required:"true"` + + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + + // The sender ID that was released. + // + // SenderId is a required field + SenderId *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) associated with the SenderId. + // + // SenderIdArn is a required field + SenderIdArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReleaseSenderIdOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReleaseSenderIdOutput) GoString() string { + return s.String() +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *ReleaseSenderIdOutput) SetIsoCountryCode(v string) *ReleaseSenderIdOutput { + s.IsoCountryCode = &v + return s +} + +// SetMessageTypes sets the MessageTypes field's value. +func (s *ReleaseSenderIdOutput) SetMessageTypes(v []*string) *ReleaseSenderIdOutput { + s.MessageTypes = v + return s +} + +// SetMonthlyLeasingPrice sets the MonthlyLeasingPrice field's value. +func (s *ReleaseSenderIdOutput) SetMonthlyLeasingPrice(v string) *ReleaseSenderIdOutput { + s.MonthlyLeasingPrice = &v + return s +} + +// SetRegistered sets the Registered field's value. +func (s *ReleaseSenderIdOutput) SetRegistered(v bool) *ReleaseSenderIdOutput { + s.Registered = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *ReleaseSenderIdOutput) SetRegistrationId(v string) *ReleaseSenderIdOutput { + s.RegistrationId = &v + return s +} + +// SetSenderId sets the SenderId field's value. +func (s *ReleaseSenderIdOutput) SetSenderId(v string) *ReleaseSenderIdOutput { + s.SenderId = &v + return s +} + +// SetSenderIdArn sets the SenderIdArn field's value. +func (s *ReleaseSenderIdOutput) SetSenderIdArn(v string) *ReleaseSenderIdOutput { + s.SenderIdArn = &v + return s +} + type RequestPhoneNumberInput struct { _ struct{} `type:"structure"` @@ -10900,7 +18775,7 @@ NumberType *string `type:"string" required:"true" enum:"RequestableNumberType"` // The name of the OptOutList to associate with the phone number. You can use - // the OutOutListName or OptPutListArn. + // the OptOutListName or OptOutListArn. OptOutListName *string `min:"1" type:"string"` // The pool to associated with the phone number. You can use the PoolId or PoolArn. @@ -11087,6 +18962,9 @@ // The unique identifier of the pool associated with the phone number PoolId *string `type:"string"` + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + // By default this is set to false. When an end recipient sends a message that // begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint // automatically replies with a customizable message and adds the end recipient @@ -11104,6 +18982,10 @@ // The ARN used to identify the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -11199,6 +19081,12 @@ return s } +// SetRegistrationId sets the RegistrationId field's value. +func (s *RequestPhoneNumberOutput) SetRegistrationId(v string) *RequestPhoneNumberOutput { + s.RegistrationId = &v + return s +} + // SetSelfManagedOptOutsEnabled sets the SelfManagedOptOutsEnabled field's value. func (s *RequestPhoneNumberOutput) SetSelfManagedOptOutsEnabled(v bool) *RequestPhoneNumberOutput { s.SelfManagedOptOutsEnabled = &v @@ -11223,12 +19111,251 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *RequestPhoneNumberOutput) SetTwoWayChannelRole(v string) *RequestPhoneNumberOutput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *RequestPhoneNumberOutput) SetTwoWayEnabled(v bool) *RequestPhoneNumberOutput { s.TwoWayEnabled = &v return s } +type RequestSenderIdInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If you don't specify a client token, a randomly generated + // token is used for the request to ensure idempotency. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // By default this is set to false. When set to true the sender ID can't be + // deleted. + DeletionProtectionEnabled *bool `type:"boolean"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + // + // IsoCountryCode is a required field + IsoCountryCode *string `min:"2" type:"string" required:"true"` + + // The type of message. Valid values are TRANSACTIONAL for messages that are + // critical or time-sensitive and PROMOTIONAL for messages that aren't critical + // or time-sensitive. + MessageTypes []*string `type:"list" enum:"MessageType"` + + // The sender ID string to request. + // + // SenderId is a required field + SenderId *string `min:"1" type:"string" required:"true"` + + // An array of tags (key and value pairs) to associate with the sender ID. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestSenderIdInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestSenderIdInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RequestSenderIdInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RequestSenderIdInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.IsoCountryCode == nil { + invalidParams.Add(request.NewErrParamRequired("IsoCountryCode")) + } + if s.IsoCountryCode != nil && len(*s.IsoCountryCode) < 2 { + invalidParams.Add(request.NewErrParamMinLen("IsoCountryCode", 2)) + } + if s.SenderId == nil { + invalidParams.Add(request.NewErrParamRequired("SenderId")) + } + if s.SenderId != nil && len(*s.SenderId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SenderId", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *RequestSenderIdInput) SetClientToken(v string) *RequestSenderIdInput { + s.ClientToken = &v + return s +} + +// SetDeletionProtectionEnabled sets the DeletionProtectionEnabled field's value. +func (s *RequestSenderIdInput) SetDeletionProtectionEnabled(v bool) *RequestSenderIdInput { + s.DeletionProtectionEnabled = &v + return s +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *RequestSenderIdInput) SetIsoCountryCode(v string) *RequestSenderIdInput { + s.IsoCountryCode = &v + return s +} + +// SetMessageTypes sets the MessageTypes field's value. +func (s *RequestSenderIdInput) SetMessageTypes(v []*string) *RequestSenderIdInput { + s.MessageTypes = v + return s +} + +// SetSenderId sets the SenderId field's value. +func (s *RequestSenderIdInput) SetSenderId(v string) *RequestSenderIdInput { + s.SenderId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *RequestSenderIdInput) SetTags(v []*Tag) *RequestSenderIdInput { + s.Tags = v + return s +} + +type RequestSenderIdOutput struct { + _ struct{} `type:"structure"` + + // By default this is set to false. When set to true the sender ID can't be + // deleted. + // + // DeletionProtectionEnabled is a required field + DeletionProtectionEnabled *bool `type:"boolean" required:"true"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + // + // IsoCountryCode is a required field + IsoCountryCode *string `min:"2" type:"string" required:"true"` + + // The type of message. Valid values are TRANSACTIONAL for messages that are + // critical or time-sensitive and PROMOTIONAL for messages that aren't critical + // or time-sensitive. + // + // MessageTypes is a required field + MessageTypes []*string `type:"list" required:"true" enum:"MessageType"` + + // The monthly price, in US dollars, to lease the sender ID. + // + // MonthlyLeasingPrice is a required field + MonthlyLeasingPrice *string `type:"string" required:"true"` + + // True if the sender ID is registered. + // + // Registered is a required field + Registered *bool `type:"boolean" required:"true"` + + // The sender ID that was requested. + // + // SenderId is a required field + SenderId *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) associated with the SenderId. + // + // SenderIdArn is a required field + SenderIdArn *string `type:"string" required:"true"` + + // An array of tags (key and value pairs) to associate with the sender ID. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestSenderIdOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestSenderIdOutput) GoString() string { + return s.String() +} + +// SetDeletionProtectionEnabled sets the DeletionProtectionEnabled field's value. +func (s *RequestSenderIdOutput) SetDeletionProtectionEnabled(v bool) *RequestSenderIdOutput { + s.DeletionProtectionEnabled = &v + return s +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *RequestSenderIdOutput) SetIsoCountryCode(v string) *RequestSenderIdOutput { + s.IsoCountryCode = &v + return s +} + +// SetMessageTypes sets the MessageTypes field's value. +func (s *RequestSenderIdOutput) SetMessageTypes(v []*string) *RequestSenderIdOutput { + s.MessageTypes = v + return s +} + +// SetMonthlyLeasingPrice sets the MonthlyLeasingPrice field's value. +func (s *RequestSenderIdOutput) SetMonthlyLeasingPrice(v string) *RequestSenderIdOutput { + s.MonthlyLeasingPrice = &v + return s +} + +// SetRegistered sets the Registered field's value. +func (s *RequestSenderIdOutput) SetRegistered(v bool) *RequestSenderIdOutput { + s.Registered = &v + return s +} + +// SetSenderId sets the SenderId field's value. +func (s *RequestSenderIdOutput) SetSenderId(v string) *RequestSenderIdOutput { + s.SenderId = &v + return s +} + +// SetSenderIdArn sets the SenderIdArn field's value. +func (s *RequestSenderIdOutput) SetSenderIdArn(v string) *RequestSenderIdOutput { + s.SenderIdArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *RequestSenderIdOutput) SetTags(v []*Tag) *RequestSenderIdOutput { + s.Tags = v + return s +} + // A requested resource couldn't be found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -11299,6 +19426,267 @@ return s.RespMetadata.RequestID } +// A description of each select option. +type SelectOptionDescription struct { + _ struct{} `type:"structure"` + + // A description of the option meaning. + Description *string `type:"string"` + + // The value of the option. + // + // Option is a required field + Option *string `type:"string" required:"true"` + + // The title of the select option. + Title *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SelectOptionDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SelectOptionDescription) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *SelectOptionDescription) SetDescription(v string) *SelectOptionDescription { + s.Description = &v + return s +} + +// SetOption sets the Option field's value. +func (s *SelectOptionDescription) SetOption(v string) *SelectOptionDescription { + s.Option = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *SelectOptionDescription) SetTitle(v string) *SelectOptionDescription { + s.Title = &v + return s +} + +// Validation rules for a select field. +type SelectValidation struct { + _ struct{} `type:"structure"` + + // The maximum number of choices for the select. + // + // MaxChoices is a required field + MaxChoices *int64 `type:"integer" required:"true"` + + // The minimum number of choices for the select. + // + // MinChoices is a required field + MinChoices *int64 `type:"integer" required:"true"` + + // An array of strings for the possible selection options. + // + // Options is a required field + Options []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SelectValidation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SelectValidation) GoString() string { + return s.String() +} + +// SetMaxChoices sets the MaxChoices field's value. +func (s *SelectValidation) SetMaxChoices(v int64) *SelectValidation { + s.MaxChoices = &v + return s +} + +// SetMinChoices sets the MinChoices field's value. +func (s *SelectValidation) SetMinChoices(v int64) *SelectValidation { + s.MinChoices = &v + return s +} + +// SetOptions sets the Options field's value. +func (s *SelectValidation) SetOptions(v []*string) *SelectValidation { + s.Options = v + return s +} + +type SendDestinationNumberVerificationCodeInput struct { + _ struct{} `type:"structure"` + + // The name of the configuration set to use. This can be either the ConfigurationSetName + // or ConfigurationSetArn. + ConfigurationSetName *string `min:"1" type:"string"` + + // You can specify custom data in this field. If you do, that data is logged + // to the event destination. + Context map[string]*string `type:"map"` + + // This field is used for any country-specific registration requirements. Currently, + // this setting is only used when you send messages to recipients in India using + // a sender ID. For more information see Special requirements for sending SMS + // messages to recipients in India (https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-senderid-india.html). + DestinationCountryParameters map[string]*string `type:"map"` + + // Choose the language to use for the message. + LanguageCode *string `type:"string" enum:"LanguageCode"` + + // The origination identity of the message. This can be either the PhoneNumber, + // PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn. + OriginationIdentity *string `min:"1" type:"string"` + + // Choose to send the verification code as an SMS or voice message. + // + // VerificationChannel is a required field + VerificationChannel *string `type:"string" required:"true" enum:"VerificationChannel"` + + // The unique identifier for the verified destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDestinationNumberVerificationCodeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDestinationNumberVerificationCodeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SendDestinationNumberVerificationCodeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SendDestinationNumberVerificationCodeInput"} + if s.ConfigurationSetName != nil && len(*s.ConfigurationSetName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ConfigurationSetName", 1)) + } + if s.OriginationIdentity != nil && len(*s.OriginationIdentity) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OriginationIdentity", 1)) + } + if s.VerificationChannel == nil { + invalidParams.Add(request.NewErrParamRequired("VerificationChannel")) + } + if s.VerifiedDestinationNumberId == nil { + invalidParams.Add(request.NewErrParamRequired("VerifiedDestinationNumberId")) + } + if s.VerifiedDestinationNumberId != nil && len(*s.VerifiedDestinationNumberId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VerifiedDestinationNumberId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationSetName sets the ConfigurationSetName field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetConfigurationSetName(v string) *SendDestinationNumberVerificationCodeInput { + s.ConfigurationSetName = &v + return s +} + +// SetContext sets the Context field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetContext(v map[string]*string) *SendDestinationNumberVerificationCodeInput { + s.Context = v + return s +} + +// SetDestinationCountryParameters sets the DestinationCountryParameters field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetDestinationCountryParameters(v map[string]*string) *SendDestinationNumberVerificationCodeInput { + s.DestinationCountryParameters = v + return s +} + +// SetLanguageCode sets the LanguageCode field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetLanguageCode(v string) *SendDestinationNumberVerificationCodeInput { + s.LanguageCode = &v + return s +} + +// SetOriginationIdentity sets the OriginationIdentity field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetOriginationIdentity(v string) *SendDestinationNumberVerificationCodeInput { + s.OriginationIdentity = &v + return s +} + +// SetVerificationChannel sets the VerificationChannel field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetVerificationChannel(v string) *SendDestinationNumberVerificationCodeInput { + s.VerificationChannel = &v + return s +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *SendDestinationNumberVerificationCodeInput) SetVerifiedDestinationNumberId(v string) *SendDestinationNumberVerificationCodeInput { + s.VerifiedDestinationNumberId = &v + return s +} + +type SendDestinationNumberVerificationCodeOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the message. + // + // MessageId is a required field + MessageId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDestinationNumberVerificationCodeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendDestinationNumberVerificationCodeOutput) GoString() string { + return s.String() +} + +// SetMessageId sets the MessageId field's value. +func (s *SendDestinationNumberVerificationCodeOutput) SetMessageId(v string) *SendDestinationNumberVerificationCodeOutput { + s.MessageId = &v + return s +} + type SendTextMessageInput struct { _ struct{} `type:"structure"` @@ -11336,9 +19724,8 @@ // The body of the text message. MessageBody *string `min:"1" type:"string"` - // The type of message. Valid values are TRANSACTIONAL for messages that are - // critical or time-sensitive and PROMOTIONAL for messages that aren't critical - // or time-sensitive. + // The type of message. Valid values are for messages that are critical or time-sensitive + // and PROMOTIONAL for messages that aren't critical or time-sensitive. MessageType *string `type:"string" enum:"MessageType"` // The origination identity of the message. This can be either the PhoneNumber, @@ -11829,6 +20216,12 @@ type SenderIdInformation struct { _ struct{} `type:"structure"` + // By default this is set to false. When set to true the sender ID can't be + // deleted. + // + // DeletionProtectionEnabled is a required field + DeletionProtectionEnabled *bool `type:"boolean" required:"true"` + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or // region. // @@ -11847,6 +20240,14 @@ // MonthlyLeasingPrice is a required field MonthlyLeasingPrice *string `type:"string" required:"true"` + // True if the sender ID is registered. + // + // Registered is a required field + Registered *bool `type:"boolean" required:"true"` + + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + // The alphanumeric sender ID in a specific country that you'd like to describe. // // SenderId is a required field @@ -11876,6 +20277,12 @@ return s.String() } +// SetDeletionProtectionEnabled sets the DeletionProtectionEnabled field's value. +func (s *SenderIdInformation) SetDeletionProtectionEnabled(v bool) *SenderIdInformation { + s.DeletionProtectionEnabled = &v + return s +} + // SetIsoCountryCode sets the IsoCountryCode field's value. func (s *SenderIdInformation) SetIsoCountryCode(v string) *SenderIdInformation { s.IsoCountryCode = &v @@ -11894,6 +20301,18 @@ return s } +// SetRegistered sets the Registered field's value. +func (s *SenderIdInformation) SetRegistered(v bool) *SenderIdInformation { + s.Registered = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *SenderIdInformation) SetRegistrationId(v string) *SenderIdInformation { + s.RegistrationId = &v + return s +} + // SetSenderId sets the SenderId field's value. func (s *SenderIdInformation) SetSenderId(v string) *SenderIdInformation { s.SenderId = &v @@ -12490,6 +20909,241 @@ return s } +type SubmitRegistrationVersionInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubmitRegistrationVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubmitRegistrationVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SubmitRegistrationVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SubmitRegistrationVersionInput"} + if s.RegistrationId == nil { + invalidParams.Add(request.NewErrParamRequired("RegistrationId")) + } + if s.RegistrationId != nil && len(*s.RegistrationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RegistrationId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *SubmitRegistrationVersionInput) SetRegistrationId(v string) *SubmitRegistrationVersionInput { + s.RegistrationId = &v + return s +} + +type SubmitRegistrationVersionOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the registration. + // + // RegistrationArn is a required field + RegistrationArn *string `type:"string" required:"true"` + + // The unique identifier for the registration. + // + // RegistrationId is a required field + RegistrationId *string `type:"string" required:"true"` + + // The status of the registration version. + // + // * DRAFT: The initial status of a registration version after it’s created. + // + // * SUBMITTED: Your registration has been submitted. + // + // * REVIEWING: Your registration has been accepted and is being reviewed. + // + // * APPROVED: Your registration has been approved. + // + // * DISCARDED: You've abandon this version of their registration to start + // over with a new version. + // + // * DENIED: You must fix your registration and resubmit it. + // + // * REVOKED: Your previously approved registration has been revoked. + // + // * ARCHIVED: Your previously approved registration version moves into this + // status when a more recently submitted version is approved. + // + // RegistrationVersionStatus is a required field + RegistrationVersionStatus *string `type:"string" required:"true" enum:"RegistrationVersionStatus"` + + // The RegistrationVersionStatusHistory object contains the time stamps for + // when the reservations status changes. + // + // RegistrationVersionStatusHistory is a required field + RegistrationVersionStatusHistory *RegistrationVersionStatusHistory `type:"structure" required:"true"` + + // The version number of the registration. + // + // VersionNumber is a required field + VersionNumber *int64 `min:"1" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubmitRegistrationVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SubmitRegistrationVersionOutput) GoString() string { + return s.String() +} + +// SetRegistrationArn sets the RegistrationArn field's value. +func (s *SubmitRegistrationVersionOutput) SetRegistrationArn(v string) *SubmitRegistrationVersionOutput { + s.RegistrationArn = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *SubmitRegistrationVersionOutput) SetRegistrationId(v string) *SubmitRegistrationVersionOutput { + s.RegistrationId = &v + return s +} + +// SetRegistrationVersionStatus sets the RegistrationVersionStatus field's value. +func (s *SubmitRegistrationVersionOutput) SetRegistrationVersionStatus(v string) *SubmitRegistrationVersionOutput { + s.RegistrationVersionStatus = &v + return s +} + +// SetRegistrationVersionStatusHistory sets the RegistrationVersionStatusHistory field's value. +func (s *SubmitRegistrationVersionOutput) SetRegistrationVersionStatusHistory(v *RegistrationVersionStatusHistory) *SubmitRegistrationVersionOutput { + s.RegistrationVersionStatusHistory = v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *SubmitRegistrationVersionOutput) SetVersionNumber(v int64) *SubmitRegistrationVersionOutput { + s.VersionNumber = &v + return s +} + +// The processing rules for when a registration can be associated with an origination +// identity and disassociated from an origination identity. +type SupportedAssociation struct { + _ struct{} `type:"structure"` + + // The association behavior. + // + // * ASSOCIATE_BEFORE_SUBMIT The origination identity has to be supplied + // when creating a registration. + // + // * ASSOCIATE_ON_APPROVAL This applies to all short code registrations. + // The short code will be automatically provisioned once the registration + // is approved. + // + // * ASSOCIATE_AFTER_COMPLETE This applies to phone number registrations + // when you must complete a registration first, then associate one or more + // phone numbers later. For example 10DLC campaigns and long codes. + // + // AssociationBehavior is a required field + AssociationBehavior *string `type:"string" required:"true" enum:"RegistrationAssociationBehavior"` + + // The disassociation behavior. + // + // * DISASSOCIATE_ALL_CLOSES_REGISTRATION All origination identities must + // be disassociated from the registration before the registration can be + // closed. + // + // * DISASSOCIATE_ALL_ALLOWS_DELETE_REGISTRATION All origination identities + // must be disassociated from the registration before the registration can + // be deleted. + // + // * DELETE_REGISTRATION_DISASSOCIATES The registration can be deleted and + // all origination identities will be disasscoiated. + // + // DisassociationBehavior is a required field + DisassociationBehavior *string `type:"string" required:"true" enum:"RegistrationDisassociationBehavior"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + IsoCountryCode *string `min:"2" type:"string"` + + // Defines the behavior of when an origination identity and registration can + // be associated with each other. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SupportedAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SupportedAssociation) GoString() string { + return s.String() +} + +// SetAssociationBehavior sets the AssociationBehavior field's value. +func (s *SupportedAssociation) SetAssociationBehavior(v string) *SupportedAssociation { + s.AssociationBehavior = &v + return s +} + +// SetDisassociationBehavior sets the DisassociationBehavior field's value. +func (s *SupportedAssociation) SetDisassociationBehavior(v string) *SupportedAssociation { + s.DisassociationBehavior = &v + return s +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *SupportedAssociation) SetIsoCountryCode(v string) *SupportedAssociation { + s.IsoCountryCode = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *SupportedAssociation) SetResourceType(v string) *SupportedAssociation { + s.ResourceType = &v + return s +} + // The list of tags to be added to the specified topic. type Tag struct { _ struct{} `type:"structure"` @@ -12652,6 +21306,62 @@ return s.String() } +// Validation rules for a text field. +type TextValidation struct { + _ struct{} `type:"structure"` + + // The maximum number of characters for the text field. + // + // MaxLength is a required field + MaxLength *int64 `type:"integer" required:"true"` + + // The minimum number of characters for the text field. + // + // MinLength is a required field + MinLength *int64 `type:"integer" required:"true"` + + // The regular expression used to validate the text field. + // + // Pattern is a required field + Pattern *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextValidation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextValidation) GoString() string { + return s.String() +} + +// SetMaxLength sets the MaxLength field's value. +func (s *TextValidation) SetMaxLength(v int64) *TextValidation { + s.MaxLength = &v + return s +} + +// SetMinLength sets the MinLength field's value. +func (s *TextValidation) SetMinLength(v int64) *TextValidation { + s.MinLength = &v + return s +} + +// SetPattern sets the Pattern field's value. +func (s *TextValidation) SetPattern(v string) *TextValidation { + s.Pattern = &v + return s +} + // An error that occurred because too many requests were sent during a certain // amount of time. type ThrottlingException struct { @@ -12831,6 +21541,8 @@ KinesisFirehoseDestination *KinesisFirehoseDestination `type:"structure"` // An array of event types that determine which events to log. + // + // The TEXT_SENT event type is not supported. MatchingEventTypes []*string `min:"1" type:"list" enum:"EventType"` // An object that contains information about an event destination that sends @@ -13016,6 +21728,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -13054,6 +21770,9 @@ if s.TwoWayChannelArn != nil && len(*s.TwoWayChannelArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("TwoWayChannelArn", 20)) } + if s.TwoWayChannelRole != nil && len(*s.TwoWayChannelRole) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TwoWayChannelRole", 20)) + } if invalidParams.Len() > 0 { return invalidParams @@ -13091,6 +21810,12 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *UpdatePhoneNumberInput) SetTwoWayChannelRole(v string) *UpdatePhoneNumberInput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *UpdatePhoneNumberInput) SetTwoWayEnabled(v bool) *UpdatePhoneNumberInput { s.TwoWayEnabled = &v @@ -13137,6 +21862,9 @@ // The unique identifier of the phone number. PhoneNumberId *string `type:"string"` + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + // This is true if self managed opt-out are enabled. SelfManagedOptOutsEnabled *bool `type:"boolean"` @@ -13146,6 +21874,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -13235,6 +21967,12 @@ return s } +// SetRegistrationId sets the RegistrationId field's value. +func (s *UpdatePhoneNumberOutput) SetRegistrationId(v string) *UpdatePhoneNumberOutput { + s.RegistrationId = &v + return s +} + // SetSelfManagedOptOutsEnabled sets the SelfManagedOptOutsEnabled field's value. func (s *UpdatePhoneNumberOutput) SetSelfManagedOptOutsEnabled(v bool) *UpdatePhoneNumberOutput { s.SelfManagedOptOutsEnabled = &v @@ -13253,6 +21991,12 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *UpdatePhoneNumberOutput) SetTwoWayChannelRole(v string) *UpdatePhoneNumberOutput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *UpdatePhoneNumberOutput) SetTwoWayEnabled(v bool) *UpdatePhoneNumberOutput { s.TwoWayEnabled = &v @@ -13289,6 +22033,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -13327,6 +22075,9 @@ if s.TwoWayChannelArn != nil && len(*s.TwoWayChannelArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("TwoWayChannelArn", 20)) } + if s.TwoWayChannelRole != nil && len(*s.TwoWayChannelRole) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TwoWayChannelRole", 20)) + } if invalidParams.Len() > 0 { return invalidParams @@ -13370,6 +22121,12 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *UpdatePoolInput) SetTwoWayChannelRole(v string) *UpdatePoolInput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *UpdatePoolInput) SetTwoWayEnabled(v bool) *UpdatePoolInput { s.TwoWayEnabled = &v @@ -13414,6 +22171,10 @@ // The Amazon Resource Name (ARN) of the two way channel. TwoWayChannelArn *string `min:"20" type:"string"` + // An optional IAM Role Arn for a service to assume, to be able to post inbound + // SMS messages. + TwoWayChannelRole *string `min:"20" type:"string"` + // By default this is set to false. When set to true you can receive incoming // text messages from your end recipients. TwoWayEnabled *bool `type:"boolean"` @@ -13497,12 +22258,207 @@ return s } +// SetTwoWayChannelRole sets the TwoWayChannelRole field's value. +func (s *UpdatePoolOutput) SetTwoWayChannelRole(v string) *UpdatePoolOutput { + s.TwoWayChannelRole = &v + return s +} + // SetTwoWayEnabled sets the TwoWayEnabled field's value. func (s *UpdatePoolOutput) SetTwoWayEnabled(v bool) *UpdatePoolOutput { s.TwoWayEnabled = &v return s } +type UpdateSenderIdInput struct { + _ struct{} `type:"structure"` + + // By default this is set to false. When set to true the sender ID can't be + // deleted. + DeletionProtectionEnabled *bool `type:"boolean"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + // + // IsoCountryCode is a required field + IsoCountryCode *string `min:"2" type:"string" required:"true"` + + // The sender ID to update. + // + // SenderId is a required field + SenderId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSenderIdInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSenderIdInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSenderIdInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSenderIdInput"} + if s.IsoCountryCode == nil { + invalidParams.Add(request.NewErrParamRequired("IsoCountryCode")) + } + if s.IsoCountryCode != nil && len(*s.IsoCountryCode) < 2 { + invalidParams.Add(request.NewErrParamMinLen("IsoCountryCode", 2)) + } + if s.SenderId == nil { + invalidParams.Add(request.NewErrParamRequired("SenderId")) + } + if s.SenderId != nil && len(*s.SenderId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SenderId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeletionProtectionEnabled sets the DeletionProtectionEnabled field's value. +func (s *UpdateSenderIdInput) SetDeletionProtectionEnabled(v bool) *UpdateSenderIdInput { + s.DeletionProtectionEnabled = &v + return s +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *UpdateSenderIdInput) SetIsoCountryCode(v string) *UpdateSenderIdInput { + s.IsoCountryCode = &v + return s +} + +// SetSenderId sets the SenderId field's value. +func (s *UpdateSenderIdInput) SetSenderId(v string) *UpdateSenderIdInput { + s.SenderId = &v + return s +} + +type UpdateSenderIdOutput struct { + _ struct{} `type:"structure"` + + // By default this is set to false. When set to true the sender ID can't be + // deleted. + // + // DeletionProtectionEnabled is a required field + DeletionProtectionEnabled *bool `type:"boolean" required:"true"` + + // The two-character code, in ISO 3166-1 alpha-2 format, for the country or + // region. + // + // IsoCountryCode is a required field + IsoCountryCode *string `min:"2" type:"string" required:"true"` + + // The type of message. Valid values are TRANSACTIONAL for messages that are + // critical or time-sensitive and PROMOTIONAL for messages that aren't critical + // or time-sensitive. + // + // MessageTypes is a required field + MessageTypes []*string `type:"list" required:"true" enum:"MessageType"` + + // The monthly price, in US dollars, to lease the sender ID. + // + // MonthlyLeasingPrice is a required field + MonthlyLeasingPrice *string `type:"string" required:"true"` + + // True if the sender ID is registered.. + // + // Registered is a required field + Registered *bool `type:"boolean" required:"true"` + + // The unique identifier for the registration. + RegistrationId *string `type:"string"` + + // The sender ID that was updated. + // + // SenderId is a required field + SenderId *string `min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) associated with the SenderId. + // + // SenderIdArn is a required field + SenderIdArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSenderIdOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSenderIdOutput) GoString() string { + return s.String() +} + +// SetDeletionProtectionEnabled sets the DeletionProtectionEnabled field's value. +func (s *UpdateSenderIdOutput) SetDeletionProtectionEnabled(v bool) *UpdateSenderIdOutput { + s.DeletionProtectionEnabled = &v + return s +} + +// SetIsoCountryCode sets the IsoCountryCode field's value. +func (s *UpdateSenderIdOutput) SetIsoCountryCode(v string) *UpdateSenderIdOutput { + s.IsoCountryCode = &v + return s +} + +// SetMessageTypes sets the MessageTypes field's value. +func (s *UpdateSenderIdOutput) SetMessageTypes(v []*string) *UpdateSenderIdOutput { + s.MessageTypes = v + return s +} + +// SetMonthlyLeasingPrice sets the MonthlyLeasingPrice field's value. +func (s *UpdateSenderIdOutput) SetMonthlyLeasingPrice(v string) *UpdateSenderIdOutput { + s.MonthlyLeasingPrice = &v + return s +} + +// SetRegistered sets the Registered field's value. +func (s *UpdateSenderIdOutput) SetRegistered(v bool) *UpdateSenderIdOutput { + s.Registered = &v + return s +} + +// SetRegistrationId sets the RegistrationId field's value. +func (s *UpdateSenderIdOutput) SetRegistrationId(v string) *UpdateSenderIdOutput { + s.RegistrationId = &v + return s +} + +// SetSenderId sets the SenderId field's value. +func (s *UpdateSenderIdOutput) SetSenderId(v string) *UpdateSenderIdOutput { + s.SenderId = &v + return s +} + +// SetSenderIdArn sets the SenderIdArn field's value. +func (s *UpdateSenderIdOutput) SetSenderIdArn(v string) *UpdateSenderIdOutput { + s.SenderIdArn = &v + return s +} + // A validation exception for a field. type ValidationException struct { _ struct{} `type:"structure"` @@ -13619,6 +22575,299 @@ return s } +// The filter definition for filtering verified destination phone numbers that +// meets a specified criteria. +type VerifiedDestinationNumberFilter struct { + _ struct{} `type:"structure"` + + // The name of the attribute to filter on. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"VerifiedDestinationNumberFilterName"` + + // An array of values to filter on. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifiedDestinationNumberFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifiedDestinationNumberFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VerifiedDestinationNumberFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VerifiedDestinationNumberFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *VerifiedDestinationNumberFilter) SetName(v string) *VerifiedDestinationNumberFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *VerifiedDestinationNumberFilter) SetValues(v []*string) *VerifiedDestinationNumberFilter { + s.Values = v + return s +} + +// Provides information about the requested verified destintion phone number. +type VerifiedDestinationNumberInformation struct { + _ struct{} `type:"structure"` + + // The time when the destination phone number was created, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The verified destination phone number, in E.164 format. + // + // DestinationPhoneNumber is a required field + DestinationPhoneNumber *string `min:"1" type:"string" required:"true"` + + // The status of the verified destination phone number. + // + // * PENDING: The phone number hasn't been verified yet. + // + // * VERIFIED: The phone number is verified and can receive messages. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"VerificationStatus"` + + // The Amazon Resource Name (ARN) for the verified destination phone number. + // + // VerifiedDestinationNumberArn is a required field + VerifiedDestinationNumberArn *string `type:"string" required:"true"` + + // The unique identifier for the verified destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifiedDestinationNumberInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifiedDestinationNumberInformation) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *VerifiedDestinationNumberInformation) SetCreatedTimestamp(v time.Time) *VerifiedDestinationNumberInformation { + s.CreatedTimestamp = &v + return s +} + +// SetDestinationPhoneNumber sets the DestinationPhoneNumber field's value. +func (s *VerifiedDestinationNumberInformation) SetDestinationPhoneNumber(v string) *VerifiedDestinationNumberInformation { + s.DestinationPhoneNumber = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *VerifiedDestinationNumberInformation) SetStatus(v string) *VerifiedDestinationNumberInformation { + s.Status = &v + return s +} + +// SetVerifiedDestinationNumberArn sets the VerifiedDestinationNumberArn field's value. +func (s *VerifiedDestinationNumberInformation) SetVerifiedDestinationNumberArn(v string) *VerifiedDestinationNumberInformation { + s.VerifiedDestinationNumberArn = &v + return s +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *VerifiedDestinationNumberInformation) SetVerifiedDestinationNumberId(v string) *VerifiedDestinationNumberInformation { + s.VerifiedDestinationNumberId = &v + return s +} + +type VerifyDestinationNumberInput struct { + _ struct{} `type:"structure"` + + // The verification code that was received by the verified destination phone + // number. + // + // VerificationCode is a required field + VerificationCode *string `min:"1" type:"string" required:"true"` + + // The unique identifier for the verififed destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifyDestinationNumberInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifyDestinationNumberInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VerifyDestinationNumberInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VerifyDestinationNumberInput"} + if s.VerificationCode == nil { + invalidParams.Add(request.NewErrParamRequired("VerificationCode")) + } + if s.VerificationCode != nil && len(*s.VerificationCode) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VerificationCode", 1)) + } + if s.VerifiedDestinationNumberId == nil { + invalidParams.Add(request.NewErrParamRequired("VerifiedDestinationNumberId")) + } + if s.VerifiedDestinationNumberId != nil && len(*s.VerifiedDestinationNumberId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VerifiedDestinationNumberId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVerificationCode sets the VerificationCode field's value. +func (s *VerifyDestinationNumberInput) SetVerificationCode(v string) *VerifyDestinationNumberInput { + s.VerificationCode = &v + return s +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *VerifyDestinationNumberInput) SetVerifiedDestinationNumberId(v string) *VerifyDestinationNumberInput { + s.VerifiedDestinationNumberId = &v + return s +} + +type VerifyDestinationNumberOutput struct { + _ struct{} `type:"structure"` + + // The time when the destination phone number was created, in UNIX epoch time + // (https://www.epochconverter.com/) format. + // + // CreatedTimestamp is a required field + CreatedTimestamp *time.Time `type:"timestamp" required:"true"` + + // The phone number in E.164 format. + // + // DestinationPhoneNumber is a required field + DestinationPhoneNumber *string `min:"1" type:"string" required:"true"` + + // The status for being able to send messages to the phone number. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"VerificationStatus"` + + // The Amazon Resource Name (ARN) for the verified destination phone number. + // + // VerifiedDestinationNumberArn is a required field + VerifiedDestinationNumberArn *string `type:"string" required:"true"` + + // The unique identifier for the verified destination phone number. + // + // VerifiedDestinationNumberId is a required field + VerifiedDestinationNumberId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifyDestinationNumberOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerifyDestinationNumberOutput) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *VerifyDestinationNumberOutput) SetCreatedTimestamp(v time.Time) *VerifyDestinationNumberOutput { + s.CreatedTimestamp = &v + return s +} + +// SetDestinationPhoneNumber sets the DestinationPhoneNumber field's value. +func (s *VerifyDestinationNumberOutput) SetDestinationPhoneNumber(v string) *VerifyDestinationNumberOutput { + s.DestinationPhoneNumber = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *VerifyDestinationNumberOutput) SetStatus(v string) *VerifyDestinationNumberOutput { + s.Status = &v + return s +} + +// SetVerifiedDestinationNumberArn sets the VerifiedDestinationNumberArn field's value. +func (s *VerifyDestinationNumberOutput) SetVerifiedDestinationNumberArn(v string) *VerifyDestinationNumberOutput { + s.VerifiedDestinationNumberArn = &v + return s +} + +// SetVerifiedDestinationNumberId sets the VerifiedDestinationNumberId field's value. +func (s *VerifyDestinationNumberOutput) SetVerifiedDestinationNumberId(v string) *VerifyDestinationNumberOutput { + s.VerifiedDestinationNumberId = &v + return s +} + const ( // AccessDeniedExceptionReasonInsufficientAccountReputation is a AccessDeniedExceptionReason enum value AccessDeniedExceptionReasonInsufficientAccountReputation = "INSUFFICIENT_ACCOUNT_REPUTATION" @@ -13659,6 +22908,18 @@ // AccountLimitNameOptOutLists is a AccountLimitName enum value AccountLimitNameOptOutLists = "OPT_OUT_LISTS" + + // AccountLimitNameSenderIds is a AccountLimitName enum value + AccountLimitNameSenderIds = "SENDER_IDS" + + // AccountLimitNameRegistrations is a AccountLimitName enum value + AccountLimitNameRegistrations = "REGISTRATIONS" + + // AccountLimitNameRegistrationAttachments is a AccountLimitName enum value + AccountLimitNameRegistrationAttachments = "REGISTRATION_ATTACHMENTS" + + // AccountLimitNameVerifiedDestinationNumbers is a AccountLimitName enum value + AccountLimitNameVerifiedDestinationNumbers = "VERIFIED_DESTINATION_NUMBERS" ) // AccountLimitName_Values returns all elements of the AccountLimitName enum @@ -13668,6 +22929,46 @@ AccountLimitNamePools, AccountLimitNameConfigurationSets, AccountLimitNameOptOutLists, + AccountLimitNameSenderIds, + AccountLimitNameRegistrations, + AccountLimitNameRegistrationAttachments, + AccountLimitNameVerifiedDestinationNumbers, + } +} + +const ( + // AttachmentStatusUploadInProgress is a AttachmentStatus enum value + AttachmentStatusUploadInProgress = "UPLOAD_IN_PROGRESS" + + // AttachmentStatusUploadComplete is a AttachmentStatus enum value + AttachmentStatusUploadComplete = "UPLOAD_COMPLETE" + + // AttachmentStatusUploadFailed is a AttachmentStatus enum value + AttachmentStatusUploadFailed = "UPLOAD_FAILED" + + // AttachmentStatusDeleted is a AttachmentStatus enum value + AttachmentStatusDeleted = "DELETED" +) + +// AttachmentStatus_Values returns all elements of the AttachmentStatus enum +func AttachmentStatus_Values() []string { + return []string{ + AttachmentStatusUploadInProgress, + AttachmentStatusUploadComplete, + AttachmentStatusUploadFailed, + AttachmentStatusDeleted, + } +} + +const ( + // AttachmentUploadErrorReasonInternalError is a AttachmentUploadErrorReason enum value + AttachmentUploadErrorReasonInternalError = "INTERNAL_ERROR" +) + +// AttachmentUploadErrorReason_Values returns all elements of the AttachmentUploadErrorReason enum +func AttachmentUploadErrorReason_Values() []string { + return []string{ + AttachmentUploadErrorReasonInternalError, } } @@ -13696,6 +22997,9 @@ } const ( + // ConflictExceptionReasonCreateRegistrationVersionNotAllowed is a ConflictExceptionReason enum value + ConflictExceptionReasonCreateRegistrationVersionNotAllowed = "CREATE_REGISTRATION_VERSION_NOT_ALLOWED" + // ConflictExceptionReasonDeletionProtectionEnabled is a ConflictExceptionReason enum value ConflictExceptionReasonDeletionProtectionEnabled = "DELETION_PROTECTION_ENABLED" @@ -13705,6 +23009,15 @@ // ConflictExceptionReasonDestinationPhoneNumberOptedOut is a ConflictExceptionReason enum value ConflictExceptionReasonDestinationPhoneNumberOptedOut = "DESTINATION_PHONE_NUMBER_OPTED_OUT" + // ConflictExceptionReasonDisassociateRegistrationNotAllowed is a ConflictExceptionReason enum value + ConflictExceptionReasonDisassociateRegistrationNotAllowed = "DISASSOCIATE_REGISTRATION_NOT_ALLOWED" + + // ConflictExceptionReasonDiscardRegistrationVersionNotAllowed is a ConflictExceptionReason enum value + ConflictExceptionReasonDiscardRegistrationVersionNotAllowed = "DISCARD_REGISTRATION_VERSION_NOT_ALLOWED" + + // ConflictExceptionReasonEditRegistrationFieldValuesNotAllowed is a ConflictExceptionReason enum value + ConflictExceptionReasonEditRegistrationFieldValuesNotAllowed = "EDIT_REGISTRATION_FIELD_VALUES_NOT_ALLOWED" + // ConflictExceptionReasonEventDestinationMismatch is a ConflictExceptionReason enum value ConflictExceptionReasonEventDestinationMismatch = "EVENT_DESTINATION_MISMATCH" @@ -13714,8 +23027,8 @@ // ConflictExceptionReasonLastPhoneNumber is a ConflictExceptionReason enum value ConflictExceptionReasonLastPhoneNumber = "LAST_PHONE_NUMBER" - // ConflictExceptionReasonSelfManagedOptOutsMismatch is a ConflictExceptionReason enum value - ConflictExceptionReasonSelfManagedOptOutsMismatch = "SELF_MANAGED_OPT_OUTS_MISMATCH" + // ConflictExceptionReasonNumberCapabilitiesMismatch is a ConflictExceptionReason enum value + ConflictExceptionReasonNumberCapabilitiesMismatch = "NUMBER_CAPABILITIES_MISMATCH" // ConflictExceptionReasonMessageTypeMismatch is a ConflictExceptionReason enum value ConflictExceptionReasonMessageTypeMismatch = "MESSAGE_TYPE_MISMATCH" @@ -13729,12 +23042,24 @@ // ConflictExceptionReasonPhoneNumberAssociatedToPool is a ConflictExceptionReason enum value ConflictExceptionReasonPhoneNumberAssociatedToPool = "PHONE_NUMBER_ASSOCIATED_TO_POOL" + // ConflictExceptionReasonPhoneNumberAssociatedToRegistration is a ConflictExceptionReason enum value + ConflictExceptionReasonPhoneNumberAssociatedToRegistration = "PHONE_NUMBER_ASSOCIATED_TO_REGISTRATION" + // ConflictExceptionReasonPhoneNumberNotAssociatedToPool is a ConflictExceptionReason enum value ConflictExceptionReasonPhoneNumberNotAssociatedToPool = "PHONE_NUMBER_NOT_ASSOCIATED_TO_POOL" // ConflictExceptionReasonPhoneNumberNotInRegistrationRegion is a ConflictExceptionReason enum value ConflictExceptionReasonPhoneNumberNotInRegistrationRegion = "PHONE_NUMBER_NOT_IN_REGISTRATION_REGION" + // ConflictExceptionReasonRegistrationAlreadySubmitted is a ConflictExceptionReason enum value + ConflictExceptionReasonRegistrationAlreadySubmitted = "REGISTRATION_ALREADY_SUBMITTED" + + // ConflictExceptionReasonRegistrationNotComplete is a ConflictExceptionReason enum value + ConflictExceptionReasonRegistrationNotComplete = "REGISTRATION_NOT_COMPLETE" + + // ConflictExceptionReasonSenderIdAssociatedToPool is a ConflictExceptionReason enum value + ConflictExceptionReasonSenderIdAssociatedToPool = "SENDER_ID_ASSOCIATED_TO_POOL" + // ConflictExceptionReasonResourceAlreadyExists is a ConflictExceptionReason enum value ConflictExceptionReasonResourceAlreadyExists = "RESOURCE_ALREADY_EXISTS" @@ -13750,32 +23075,56 @@ // ConflictExceptionReasonResourceNotEmpty is a ConflictExceptionReason enum value ConflictExceptionReasonResourceNotEmpty = "RESOURCE_NOT_EMPTY" + // ConflictExceptionReasonSelfManagedOptOutsMismatch is a ConflictExceptionReason enum value + ConflictExceptionReasonSelfManagedOptOutsMismatch = "SELF_MANAGED_OPT_OUTS_MISMATCH" + + // ConflictExceptionReasonSubmitRegistrationVersionNotAllowed is a ConflictExceptionReason enum value + ConflictExceptionReasonSubmitRegistrationVersionNotAllowed = "SUBMIT_REGISTRATION_VERSION_NOT_ALLOWED" + // ConflictExceptionReasonTwoWayConfigMismatch is a ConflictExceptionReason enum value ConflictExceptionReasonTwoWayConfigMismatch = "TWO_WAY_CONFIG_MISMATCH" + + // ConflictExceptionReasonVerificationCodeExpired is a ConflictExceptionReason enum value + ConflictExceptionReasonVerificationCodeExpired = "VERIFICATION_CODE_EXPIRED" + + // ConflictExceptionReasonVerificationAlreadyComplete is a ConflictExceptionReason enum value + ConflictExceptionReasonVerificationAlreadyComplete = "VERIFICATION_ALREADY_COMPLETE" ) // ConflictExceptionReason_Values returns all elements of the ConflictExceptionReason enum func ConflictExceptionReason_Values() []string { return []string{ + ConflictExceptionReasonCreateRegistrationVersionNotAllowed, ConflictExceptionReasonDeletionProtectionEnabled, ConflictExceptionReasonDestinationPhoneNumberNotVerified, ConflictExceptionReasonDestinationPhoneNumberOptedOut, + ConflictExceptionReasonDisassociateRegistrationNotAllowed, + ConflictExceptionReasonDiscardRegistrationVersionNotAllowed, + ConflictExceptionReasonEditRegistrationFieldValuesNotAllowed, ConflictExceptionReasonEventDestinationMismatch, ConflictExceptionReasonKeywordMismatch, ConflictExceptionReasonLastPhoneNumber, - ConflictExceptionReasonSelfManagedOptOutsMismatch, + ConflictExceptionReasonNumberCapabilitiesMismatch, ConflictExceptionReasonMessageTypeMismatch, ConflictExceptionReasonNoOriginationIdentitiesFound, ConflictExceptionReasonOptOutListMismatch, ConflictExceptionReasonPhoneNumberAssociatedToPool, + ConflictExceptionReasonPhoneNumberAssociatedToRegistration, ConflictExceptionReasonPhoneNumberNotAssociatedToPool, ConflictExceptionReasonPhoneNumberNotInRegistrationRegion, + ConflictExceptionReasonRegistrationAlreadySubmitted, + ConflictExceptionReasonRegistrationNotComplete, + ConflictExceptionReasonSenderIdAssociatedToPool, ConflictExceptionReasonResourceAlreadyExists, ConflictExceptionReasonResourceDeletionNotAllowed, ConflictExceptionReasonResourceModificationNotAllowed, ConflictExceptionReasonResourceNotActive, ConflictExceptionReasonResourceNotEmpty, + ConflictExceptionReasonSelfManagedOptOutsMismatch, + ConflictExceptionReasonSubmitRegistrationVersionNotAllowed, ConflictExceptionReasonTwoWayConfigMismatch, + ConflictExceptionReasonVerificationCodeExpired, + ConflictExceptionReasonVerificationAlreadyComplete, } } @@ -13904,6 +23253,46 @@ } const ( + // FieldRequirementRequired is a FieldRequirement enum value + FieldRequirementRequired = "REQUIRED" + + // FieldRequirementConditional is a FieldRequirement enum value + FieldRequirementConditional = "CONDITIONAL" + + // FieldRequirementOptional is a FieldRequirement enum value + FieldRequirementOptional = "OPTIONAL" +) + +// FieldRequirement_Values returns all elements of the FieldRequirement enum +func FieldRequirement_Values() []string { + return []string{ + FieldRequirementRequired, + FieldRequirementConditional, + FieldRequirementOptional, + } +} + +const ( + // FieldTypeSelect is a FieldType enum value + FieldTypeSelect = "SELECT" + + // FieldTypeText is a FieldType enum value + FieldTypeText = "TEXT" + + // FieldTypeAttachment is a FieldType enum value + FieldTypeAttachment = "ATTACHMENT" +) + +// FieldType_Values returns all elements of the FieldType enum +func FieldType_Values() []string { + return []string{ + FieldTypeSelect, + FieldTypeText, + FieldTypeAttachment, + } +} + +const ( // KeywordActionAutomaticResponse is a KeywordAction enum value KeywordActionAutomaticResponse = "AUTOMATIC_RESPONSE" @@ -13936,6 +23325,66 @@ } const ( + // LanguageCodeDeDe is a LanguageCode enum value + LanguageCodeDeDe = "DE_DE" + + // LanguageCodeEnGb is a LanguageCode enum value + LanguageCodeEnGb = "EN_GB" + + // LanguageCodeEnUs is a LanguageCode enum value + LanguageCodeEnUs = "EN_US" + + // LanguageCodeEs419 is a LanguageCode enum value + LanguageCodeEs419 = "ES_419" + + // LanguageCodeEsEs is a LanguageCode enum value + LanguageCodeEsEs = "ES_ES" + + // LanguageCodeFrCa is a LanguageCode enum value + LanguageCodeFrCa = "FR_CA" + + // LanguageCodeFrFr is a LanguageCode enum value + LanguageCodeFrFr = "FR_FR" + + // LanguageCodeItIt is a LanguageCode enum value + LanguageCodeItIt = "IT_IT" + + // LanguageCodeJaJp is a LanguageCode enum value + LanguageCodeJaJp = "JA_JP" + + // LanguageCodeKoKr is a LanguageCode enum value + LanguageCodeKoKr = "KO_KR" + + // LanguageCodePtBr is a LanguageCode enum value + LanguageCodePtBr = "PT_BR" + + // LanguageCodeZhCn is a LanguageCode enum value + LanguageCodeZhCn = "ZH_CN" + + // LanguageCodeZhTw is a LanguageCode enum value + LanguageCodeZhTw = "ZH_TW" +) + +// LanguageCode_Values returns all elements of the LanguageCode enum +func LanguageCode_Values() []string { + return []string{ + LanguageCodeDeDe, + LanguageCodeEnGb, + LanguageCodeEnUs, + LanguageCodeEs419, + LanguageCodeEsEs, + LanguageCodeFrCa, + LanguageCodeFrFr, + LanguageCodeItIt, + LanguageCodeJaJp, + LanguageCodeKoKr, + LanguageCodePtBr, + LanguageCodeZhCn, + LanguageCodeZhTw, + } +} + +const ( // MessageTypeTransactional is a MessageType enum value MessageTypeTransactional = "TRANSACTIONAL" @@ -14007,6 +23456,9 @@ // NumberTypeTenDlc is a NumberType enum value NumberTypeTenDlc = "TEN_DLC" + + // NumberTypeSimulator is a NumberType enum value + NumberTypeSimulator = "SIMULATOR" ) // NumberType_Values returns all elements of the NumberType enum @@ -14016,6 +23468,7 @@ NumberTypeLongCode, NumberTypeTollFree, NumberTypeTenDlc, + NumberTypeSimulator, } } @@ -14058,6 +23511,9 @@ // PhoneNumberFilterNameDeletionProtectionEnabled is a PhoneNumberFilterName enum value PhoneNumberFilterNameDeletionProtectionEnabled = "deletion-protection-enabled" + + // PhoneNumberFilterNameTwoWayChannelArn is a PhoneNumberFilterName enum value + PhoneNumberFilterNameTwoWayChannelArn = "two-way-channel-arn" ) // PhoneNumberFilterName_Values returns all elements of the PhoneNumberFilterName enum @@ -14072,6 +23528,7 @@ PhoneNumberFilterNameSelfManagedOptOutsEnabled, PhoneNumberFilterNameOptOutListName, PhoneNumberFilterNameDeletionProtectionEnabled, + PhoneNumberFilterNameTwoWayChannelArn, } } @@ -14096,6 +23553,9 @@ // PoolFilterNameDeletionProtectionEnabled is a PoolFilterName enum value PoolFilterNameDeletionProtectionEnabled = "deletion-protection-enabled" + + // PoolFilterNameTwoWayChannelArn is a PoolFilterName enum value + PoolFilterNameTwoWayChannelArn = "two-way-channel-arn" ) // PoolFilterName_Values returns all elements of the PoolFilterName enum @@ -14108,6 +23568,7 @@ PoolFilterNameOptOutListName, PoolFilterNameSharedRoutesEnabled, PoolFilterNameDeletionProtectionEnabled, + PoolFilterNameTwoWayChannelArn, } } @@ -14148,6 +23609,198 @@ } const ( + // RegistrationAssociationBehaviorAssociateBeforeSubmit is a RegistrationAssociationBehavior enum value + RegistrationAssociationBehaviorAssociateBeforeSubmit = "ASSOCIATE_BEFORE_SUBMIT" + + // RegistrationAssociationBehaviorAssociateOnApproval is a RegistrationAssociationBehavior enum value + RegistrationAssociationBehaviorAssociateOnApproval = "ASSOCIATE_ON_APPROVAL" + + // RegistrationAssociationBehaviorAssociateAfterComplete is a RegistrationAssociationBehavior enum value + RegistrationAssociationBehaviorAssociateAfterComplete = "ASSOCIATE_AFTER_COMPLETE" +) + +// RegistrationAssociationBehavior_Values returns all elements of the RegistrationAssociationBehavior enum +func RegistrationAssociationBehavior_Values() []string { + return []string{ + RegistrationAssociationBehaviorAssociateBeforeSubmit, + RegistrationAssociationBehaviorAssociateOnApproval, + RegistrationAssociationBehaviorAssociateAfterComplete, + } +} + +const ( + // RegistrationAssociationFilterNameResourceType is a RegistrationAssociationFilterName enum value + RegistrationAssociationFilterNameResourceType = "resource-type" + + // RegistrationAssociationFilterNameIsoCountryCode is a RegistrationAssociationFilterName enum value + RegistrationAssociationFilterNameIsoCountryCode = "iso-country-code" +) + +// RegistrationAssociationFilterName_Values returns all elements of the RegistrationAssociationFilterName enum +func RegistrationAssociationFilterName_Values() []string { + return []string{ + RegistrationAssociationFilterNameResourceType, + RegistrationAssociationFilterNameIsoCountryCode, + } +} + +const ( + // RegistrationAttachmentFilterNameAttachmentStatus is a RegistrationAttachmentFilterName enum value + RegistrationAttachmentFilterNameAttachmentStatus = "attachment-status" +) + +// RegistrationAttachmentFilterName_Values returns all elements of the RegistrationAttachmentFilterName enum +func RegistrationAttachmentFilterName_Values() []string { + return []string{ + RegistrationAttachmentFilterNameAttachmentStatus, + } +} + +const ( + // RegistrationDisassociationBehaviorDisassociateAllClosesRegistration is a RegistrationDisassociationBehavior enum value + RegistrationDisassociationBehaviorDisassociateAllClosesRegistration = "DISASSOCIATE_ALL_CLOSES_REGISTRATION" + + // RegistrationDisassociationBehaviorDisassociateAllAllowsDeleteRegistration is a RegistrationDisassociationBehavior enum value + RegistrationDisassociationBehaviorDisassociateAllAllowsDeleteRegistration = "DISASSOCIATE_ALL_ALLOWS_DELETE_REGISTRATION" + + // RegistrationDisassociationBehaviorDeleteRegistrationDisassociates is a RegistrationDisassociationBehavior enum value + RegistrationDisassociationBehaviorDeleteRegistrationDisassociates = "DELETE_REGISTRATION_DISASSOCIATES" +) + +// RegistrationDisassociationBehavior_Values returns all elements of the RegistrationDisassociationBehavior enum +func RegistrationDisassociationBehavior_Values() []string { + return []string{ + RegistrationDisassociationBehaviorDisassociateAllClosesRegistration, + RegistrationDisassociationBehaviorDisassociateAllAllowsDeleteRegistration, + RegistrationDisassociationBehaviorDeleteRegistrationDisassociates, + } +} + +const ( + // RegistrationFilterNameRegistrationType is a RegistrationFilterName enum value + RegistrationFilterNameRegistrationType = "registration-type" + + // RegistrationFilterNameRegistrationStatus is a RegistrationFilterName enum value + RegistrationFilterNameRegistrationStatus = "registration-status" +) + +// RegistrationFilterName_Values returns all elements of the RegistrationFilterName enum +func RegistrationFilterName_Values() []string { + return []string{ + RegistrationFilterNameRegistrationType, + RegistrationFilterNameRegistrationStatus, + } +} + +const ( + // RegistrationStatusCreated is a RegistrationStatus enum value + RegistrationStatusCreated = "CREATED" + + // RegistrationStatusSubmitted is a RegistrationStatus enum value + RegistrationStatusSubmitted = "SUBMITTED" + + // RegistrationStatusReviewing is a RegistrationStatus enum value + RegistrationStatusReviewing = "REVIEWING" + + // RegistrationStatusProvisioning is a RegistrationStatus enum value + RegistrationStatusProvisioning = "PROVISIONING" + + // RegistrationStatusComplete is a RegistrationStatus enum value + RegistrationStatusComplete = "COMPLETE" + + // RegistrationStatusRequiresUpdates is a RegistrationStatus enum value + RegistrationStatusRequiresUpdates = "REQUIRES_UPDATES" + + // RegistrationStatusClosed is a RegistrationStatus enum value + RegistrationStatusClosed = "CLOSED" + + // RegistrationStatusDeleted is a RegistrationStatus enum value + RegistrationStatusDeleted = "DELETED" +) + +// RegistrationStatus_Values returns all elements of the RegistrationStatus enum +func RegistrationStatus_Values() []string { + return []string{ + RegistrationStatusCreated, + RegistrationStatusSubmitted, + RegistrationStatusReviewing, + RegistrationStatusProvisioning, + RegistrationStatusComplete, + RegistrationStatusRequiresUpdates, + RegistrationStatusClosed, + RegistrationStatusDeleted, + } +} + +const ( + // RegistrationTypeFilterNameSupportedAssociationResourceType is a RegistrationTypeFilterName enum value + RegistrationTypeFilterNameSupportedAssociationResourceType = "supported-association-resource-type" + + // RegistrationTypeFilterNameSupportedAssociationIsoCountryCode is a RegistrationTypeFilterName enum value + RegistrationTypeFilterNameSupportedAssociationIsoCountryCode = "supported-association-iso-country-code" +) + +// RegistrationTypeFilterName_Values returns all elements of the RegistrationTypeFilterName enum +func RegistrationTypeFilterName_Values() []string { + return []string{ + RegistrationTypeFilterNameSupportedAssociationResourceType, + RegistrationTypeFilterNameSupportedAssociationIsoCountryCode, + } +} + +const ( + // RegistrationVersionFilterNameRegistrationVersionStatus is a RegistrationVersionFilterName enum value + RegistrationVersionFilterNameRegistrationVersionStatus = "registration-version-status" +) + +// RegistrationVersionFilterName_Values returns all elements of the RegistrationVersionFilterName enum +func RegistrationVersionFilterName_Values() []string { + return []string{ + RegistrationVersionFilterNameRegistrationVersionStatus, + } +} + +const ( + // RegistrationVersionStatusDraft is a RegistrationVersionStatus enum value + RegistrationVersionStatusDraft = "DRAFT" + + // RegistrationVersionStatusSubmitted is a RegistrationVersionStatus enum value + RegistrationVersionStatusSubmitted = "SUBMITTED" + + // RegistrationVersionStatusReviewing is a RegistrationVersionStatus enum value + RegistrationVersionStatusReviewing = "REVIEWING" + + // RegistrationVersionStatusApproved is a RegistrationVersionStatus enum value + RegistrationVersionStatusApproved = "APPROVED" + + // RegistrationVersionStatusDiscarded is a RegistrationVersionStatus enum value + RegistrationVersionStatusDiscarded = "DISCARDED" + + // RegistrationVersionStatusDenied is a RegistrationVersionStatus enum value + RegistrationVersionStatusDenied = "DENIED" + + // RegistrationVersionStatusRevoked is a RegistrationVersionStatus enum value + RegistrationVersionStatusRevoked = "REVOKED" + + // RegistrationVersionStatusArchived is a RegistrationVersionStatus enum value + RegistrationVersionStatusArchived = "ARCHIVED" +) + +// RegistrationVersionStatus_Values returns all elements of the RegistrationVersionStatus enum +func RegistrationVersionStatus_Values() []string { + return []string{ + RegistrationVersionStatusDraft, + RegistrationVersionStatusSubmitted, + RegistrationVersionStatusReviewing, + RegistrationVersionStatusApproved, + RegistrationVersionStatusDiscarded, + RegistrationVersionStatusDenied, + RegistrationVersionStatusRevoked, + RegistrationVersionStatusArchived, + } +} + +const ( // RequestableNumberTypeLongCode is a RequestableNumberType enum value RequestableNumberTypeLongCode = "LONG_CODE" @@ -14156,6 +23809,9 @@ // RequestableNumberTypeTenDlc is a RequestableNumberType enum value RequestableNumberTypeTenDlc = "TEN_DLC" + + // RequestableNumberTypeSimulator is a RequestableNumberType enum value + RequestableNumberTypeSimulator = "SIMULATOR" ) // RequestableNumberType_Values returns all elements of the RequestableNumberType enum @@ -14164,6 +23820,7 @@ RequestableNumberTypeLongCode, RequestableNumberTypeTollFree, RequestableNumberTypeTenDlc, + RequestableNumberTypeSimulator, } } @@ -14197,6 +23854,12 @@ // ResourceTypeRegistration is a ResourceType enum value ResourceTypeRegistration = "registration" + + // ResourceTypeRegistrationAttachment is a ResourceType enum value + ResourceTypeRegistrationAttachment = "registration-attachment" + + // ResourceTypeVerifiedDestinationNumber is a ResourceType enum value + ResourceTypeVerifiedDestinationNumber = "verified-destination-number" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -14212,6 +23875,8 @@ ResourceTypeKeyword, ResourceTypeOptedOutNumber, ResourceTypeRegistration, + ResourceTypeRegistrationAttachment, + ResourceTypeVerifiedDestinationNumber, } } @@ -14224,6 +23889,12 @@ // SenderIdFilterNameMessageType is a SenderIdFilterName enum value SenderIdFilterNameMessageType = "message-type" + + // SenderIdFilterNameDeletionProtectionEnabled is a SenderIdFilterName enum value + SenderIdFilterNameDeletionProtectionEnabled = "deletion-protection-enabled" + + // SenderIdFilterNameRegistered is a SenderIdFilterName enum value + SenderIdFilterNameRegistered = "registered" ) // SenderIdFilterName_Values returns all elements of the SenderIdFilterName enum @@ -14232,10 +23903,15 @@ SenderIdFilterNameSenderId, SenderIdFilterNameIsoCountryCode, SenderIdFilterNameMessageType, + SenderIdFilterNameDeletionProtectionEnabled, + SenderIdFilterNameRegistered, } } const ( + // ServiceQuotaExceededExceptionReasonAssociationsPerRegistration is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonAssociationsPerRegistration = "ASSOCIATIONS_PER_REGISTRATION" + // ServiceQuotaExceededExceptionReasonConfigurationSetsPerAccount is a ServiceQuotaExceededExceptionReason enum value ServiceQuotaExceededExceptionReasonConfigurationSetsPerAccount = "CONFIGURATION_SETS_PER_ACCOUNT" @@ -14272,13 +23948,35 @@ // ServiceQuotaExceededExceptionReasonPoolsPerAccount is a ServiceQuotaExceededExceptionReason enum value ServiceQuotaExceededExceptionReasonPoolsPerAccount = "POOLS_PER_ACCOUNT" + // ServiceQuotaExceededExceptionReasonRegistrationAttachmentsCreatedPerDay is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonRegistrationAttachmentsCreatedPerDay = "REGISTRATION_ATTACHMENTS_CREATED_PER_DAY" + + // ServiceQuotaExceededExceptionReasonRegistrationAttachmentsPerAccount is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonRegistrationAttachmentsPerAccount = "REGISTRATION_ATTACHMENTS_PER_ACCOUNT" + + // ServiceQuotaExceededExceptionReasonRegistrationVersionsCreatedPerDay is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonRegistrationVersionsCreatedPerDay = "REGISTRATION_VERSIONS_CREATED_PER_DAY" + + // ServiceQuotaExceededExceptionReasonRegistrationsPerAccount is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonRegistrationsPerAccount = "REGISTRATIONS_PER_ACCOUNT" + + // ServiceQuotaExceededExceptionReasonSenderIdsPerAccount is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonSenderIdsPerAccount = "SENDER_IDS_PER_ACCOUNT" + // ServiceQuotaExceededExceptionReasonTagsPerResource is a ServiceQuotaExceededExceptionReason enum value ServiceQuotaExceededExceptionReasonTagsPerResource = "TAGS_PER_RESOURCE" + + // ServiceQuotaExceededExceptionReasonVerifiedDestinationNumbersPerAccount is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonVerifiedDestinationNumbersPerAccount = "VERIFIED_DESTINATION_NUMBERS_PER_ACCOUNT" + + // ServiceQuotaExceededExceptionReasonVerificationAttemptsPerDay is a ServiceQuotaExceededExceptionReason enum value + ServiceQuotaExceededExceptionReasonVerificationAttemptsPerDay = "VERIFICATION_ATTEMPTS_PER_DAY" ) // ServiceQuotaExceededExceptionReason_Values returns all elements of the ServiceQuotaExceededExceptionReason enum func ServiceQuotaExceededExceptionReason_Values() []string { return []string{ + ServiceQuotaExceededExceptionReasonAssociationsPerRegistration, ServiceQuotaExceededExceptionReasonConfigurationSetsPerAccount, ServiceQuotaExceededExceptionReasonDailyDestinationCallLimit, ServiceQuotaExceededExceptionReasonEventDestinationsPerConfigurationSet, @@ -14291,7 +23989,14 @@ ServiceQuotaExceededExceptionReasonPhoneNumbersPerAccount, ServiceQuotaExceededExceptionReasonPhoneNumbersPerRegistration, ServiceQuotaExceededExceptionReasonPoolsPerAccount, + ServiceQuotaExceededExceptionReasonRegistrationAttachmentsCreatedPerDay, + ServiceQuotaExceededExceptionReasonRegistrationAttachmentsPerAccount, + ServiceQuotaExceededExceptionReasonRegistrationVersionsCreatedPerDay, + ServiceQuotaExceededExceptionReasonRegistrationsPerAccount, + ServiceQuotaExceededExceptionReasonSenderIdsPerAccount, ServiceQuotaExceededExceptionReasonTagsPerResource, + ServiceQuotaExceededExceptionReasonVerifiedDestinationNumbersPerAccount, + ServiceQuotaExceededExceptionReasonVerificationAttemptsPerDay, } } @@ -14312,41 +24017,47 @@ } const ( - // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value - ValidationExceptionReasonUnknownOperation = "UNKNOWN_OPERATION" + // ValidationExceptionReasonCannotAddOptedOutNumber is a ValidationExceptionReason enum value + ValidationExceptionReasonCannotAddOptedOutNumber = "CANNOT_ADD_OPTED_OUT_NUMBER" // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value ValidationExceptionReasonCannotParse = "CANNOT_PARSE" + // ValidationExceptionReasonCountryCodeMismatch is a ValidationExceptionReason enum value + ValidationExceptionReasonCountryCodeMismatch = "COUNTRY_CODE_MISMATCH" + + // ValidationExceptionReasonDestinationCountryBlocked is a ValidationExceptionReason enum value + ValidationExceptionReasonDestinationCountryBlocked = "DESTINATION_COUNTRY_BLOCKED" + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED" - // ValidationExceptionReasonOther is a ValidationExceptionReason enum value - ValidationExceptionReasonOther = "OTHER" - - // ValidationExceptionReasonInvalidParameter is a ValidationExceptionReason enum value - ValidationExceptionReasonInvalidParameter = "INVALID_PARAMETER" + // ValidationExceptionReasonAttachmentTypeNotSupported is a ValidationExceptionReason enum value + ValidationExceptionReasonAttachmentTypeNotSupported = "ATTACHMENT_TYPE_NOT_SUPPORTED" // ValidationExceptionReasonInvalidArn is a ValidationExceptionReason enum value ValidationExceptionReasonInvalidArn = "INVALID_ARN" + // ValidationExceptionReasonInvalidFilterValues is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidFilterValues = "INVALID_FILTER_VALUES" + // ValidationExceptionReasonInvalidIdentityForDestinationCountry is a ValidationExceptionReason enum value ValidationExceptionReasonInvalidIdentityForDestinationCountry = "INVALID_IDENTITY_FOR_DESTINATION_COUNTRY" - // ValidationExceptionReasonDestinationCountryBlocked is a ValidationExceptionReason enum value - ValidationExceptionReasonDestinationCountryBlocked = "DESTINATION_COUNTRY_BLOCKED" + // ValidationExceptionReasonInvalidNextToken is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidNextToken = "INVALID_NEXT_TOKEN" - // ValidationExceptionReasonCannotAddOptedOutNumber is a ValidationExceptionReason enum value - ValidationExceptionReasonCannotAddOptedOutNumber = "CANNOT_ADD_OPTED_OUT_NUMBER" + // ValidationExceptionReasonInvalidParameter is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidParameter = "INVALID_PARAMETER" - // ValidationExceptionReasonCountryCodeMismatch is a ValidationExceptionReason enum value - ValidationExceptionReasonCountryCodeMismatch = "COUNTRY_CODE_MISMATCH" + // ValidationExceptionReasonInvalidRequest is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidRequest = "INVALID_REQUEST" - // ValidationExceptionReasonInvalidFilterValues is a ValidationExceptionReason enum value - ValidationExceptionReasonInvalidFilterValues = "INVALID_FILTER_VALUES" + // ValidationExceptionReasonInvalidRegistrationAssociation is a ValidationExceptionReason enum value + ValidationExceptionReasonInvalidRegistrationAssociation = "INVALID_REGISTRATION_ASSOCIATION" - // ValidationExceptionReasonInvalidNextToken is a ValidationExceptionReason enum value - ValidationExceptionReasonInvalidNextToken = "INVALID_NEXT_TOKEN" + // ValidationExceptionReasonMaximumSizeExceeded is a ValidationExceptionReason enum value + ValidationExceptionReasonMaximumSizeExceeded = "MAXIMUM_SIZE_EXCEEDED" // ValidationExceptionReasonMissingParameter is a ValidationExceptionReason enum value ValidationExceptionReasonMissingParameter = "MISSING_PARAMETER" @@ -14363,6 +24074,9 @@ // ValidationExceptionReasonPriceOverThreshold is a ValidationExceptionReason enum value ValidationExceptionReasonPriceOverThreshold = "PRICE_OVER_THRESHOLD" + // ValidationExceptionReasonResourceNotAccessible is a ValidationExceptionReason enum value + ValidationExceptionReasonResourceNotAccessible = "RESOURCE_NOT_ACCESSIBLE" + // ValidationExceptionReasonRequestedSpendLimitHigherThanServiceLimit is a ValidationExceptionReason enum value ValidationExceptionReasonRequestedSpendLimitHigherThanServiceLimit = "REQUESTED_SPEND_LIMIT_HIGHER_THAN_SERVICE_LIMIT" @@ -14372,6 +24086,12 @@ // ValidationExceptionReasonSenderIdNotSupported is a ValidationExceptionReason enum value ValidationExceptionReasonSenderIdNotSupported = "SENDER_ID_NOT_SUPPORTED" + // ValidationExceptionReasonSenderIdRequiresRegistration is a ValidationExceptionReason enum value + ValidationExceptionReasonSenderIdRequiresRegistration = "SENDER_ID_REQUIRES_REGISTRATION" + + // ValidationExceptionReasonTwoWayTopicNotPresent is a ValidationExceptionReason enum value + ValidationExceptionReasonTwoWayTopicNotPresent = "TWO_WAY_TOPIC_NOT_PRESENT" + // ValidationExceptionReasonTwoWayNotEnabled is a ValidationExceptionReason enum value ValidationExceptionReasonTwoWayNotEnabled = "TWO_WAY_NOT_ENABLED" @@ -14381,37 +24101,122 @@ // ValidationExceptionReasonTwoWayNotSupportedInRegion is a ValidationExceptionReason enum value ValidationExceptionReasonTwoWayNotSupportedInRegion = "TWO_WAY_NOT_SUPPORTED_IN_REGION" - // ValidationExceptionReasonTwoWayTopicNotPresent is a ValidationExceptionReason enum value - ValidationExceptionReasonTwoWayTopicNotPresent = "TWO_WAY_TOPIC_NOT_PRESENT" + // ValidationExceptionReasonTwoWayChannelNotPresent is a ValidationExceptionReason enum value + ValidationExceptionReasonTwoWayChannelNotPresent = "TWO_WAY_CHANNEL_NOT_PRESENT" + + // ValidationExceptionReasonUnknownRegistrationField is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownRegistrationField = "UNKNOWN_REGISTRATION_FIELD" + + // ValidationExceptionReasonUnknownRegistrationSection is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownRegistrationSection = "UNKNOWN_REGISTRATION_SECTION" + + // ValidationExceptionReasonUnknownRegistrationType is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownRegistrationType = "UNKNOWN_REGISTRATION_TYPE" + + // ValidationExceptionReasonUnknownRegistrationVersion is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownRegistrationVersion = "UNKNOWN_REGISTRATION_VERSION" + + // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownOperation = "UNKNOWN_OPERATION" + + // ValidationExceptionReasonRegistrationFieldCannotBeDeleted is a ValidationExceptionReason enum value + ValidationExceptionReasonRegistrationFieldCannotBeDeleted = "REGISTRATION_FIELD_CANNOT_BE_DELETED" + + // ValidationExceptionReasonVerificationCodeMismatch is a ValidationExceptionReason enum value + ValidationExceptionReasonVerificationCodeMismatch = "VERIFICATION_CODE_MISMATCH" + + // ValidationExceptionReasonVoiceCapabilityNotAvailable is a ValidationExceptionReason enum value + ValidationExceptionReasonVoiceCapabilityNotAvailable = "VOICE_CAPABILITY_NOT_AVAILABLE" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "OTHER" ) // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum func ValidationExceptionReason_Values() []string { return []string{ - ValidationExceptionReasonUnknownOperation, + ValidationExceptionReasonCannotAddOptedOutNumber, ValidationExceptionReasonCannotParse, + ValidationExceptionReasonCountryCodeMismatch, + ValidationExceptionReasonDestinationCountryBlocked, ValidationExceptionReasonFieldValidationFailed, - ValidationExceptionReasonOther, - ValidationExceptionReasonInvalidParameter, + ValidationExceptionReasonAttachmentTypeNotSupported, ValidationExceptionReasonInvalidArn, - ValidationExceptionReasonInvalidIdentityForDestinationCountry, - ValidationExceptionReasonDestinationCountryBlocked, - ValidationExceptionReasonCannotAddOptedOutNumber, - ValidationExceptionReasonCountryCodeMismatch, ValidationExceptionReasonInvalidFilterValues, + ValidationExceptionReasonInvalidIdentityForDestinationCountry, ValidationExceptionReasonInvalidNextToken, + ValidationExceptionReasonInvalidParameter, + ValidationExceptionReasonInvalidRequest, + ValidationExceptionReasonInvalidRegistrationAssociation, + ValidationExceptionReasonMaximumSizeExceeded, ValidationExceptionReasonMissingParameter, ValidationExceptionReasonParametersCannotBeUsedTogether, ValidationExceptionReasonPhoneNumberCannotBeOptedIn, ValidationExceptionReasonPhoneNumberCannotBeReleased, ValidationExceptionReasonPriceOverThreshold, + ValidationExceptionReasonResourceNotAccessible, ValidationExceptionReasonRequestedSpendLimitHigherThanServiceLimit, ValidationExceptionReasonSenderIdNotRegistered, ValidationExceptionReasonSenderIdNotSupported, + ValidationExceptionReasonSenderIdRequiresRegistration, + ValidationExceptionReasonTwoWayTopicNotPresent, ValidationExceptionReasonTwoWayNotEnabled, ValidationExceptionReasonTwoWayNotSupportedInCountry, ValidationExceptionReasonTwoWayNotSupportedInRegion, - ValidationExceptionReasonTwoWayTopicNotPresent, + ValidationExceptionReasonTwoWayChannelNotPresent, + ValidationExceptionReasonUnknownRegistrationField, + ValidationExceptionReasonUnknownRegistrationSection, + ValidationExceptionReasonUnknownRegistrationType, + ValidationExceptionReasonUnknownRegistrationVersion, + ValidationExceptionReasonUnknownOperation, + ValidationExceptionReasonRegistrationFieldCannotBeDeleted, + ValidationExceptionReasonVerificationCodeMismatch, + ValidationExceptionReasonVoiceCapabilityNotAvailable, + ValidationExceptionReasonOther, + } +} + +const ( + // VerificationChannelText is a VerificationChannel enum value + VerificationChannelText = "TEXT" + + // VerificationChannelVoice is a VerificationChannel enum value + VerificationChannelVoice = "VOICE" +) + +// VerificationChannel_Values returns all elements of the VerificationChannel enum +func VerificationChannel_Values() []string { + return []string{ + VerificationChannelText, + VerificationChannelVoice, + } +} + +const ( + // VerificationStatusPending is a VerificationStatus enum value + VerificationStatusPending = "PENDING" + + // VerificationStatusVerified is a VerificationStatus enum value + VerificationStatusVerified = "VERIFIED" +) + +// VerificationStatus_Values returns all elements of the VerificationStatus enum +func VerificationStatus_Values() []string { + return []string{ + VerificationStatusPending, + VerificationStatusVerified, + } +} + +const ( + // VerifiedDestinationNumberFilterNameStatus is a VerifiedDestinationNumberFilterName enum value + VerifiedDestinationNumberFilterNameStatus = "status" +) + +// VerifiedDestinationNumberFilterName_Values returns all elements of the VerifiedDestinationNumberFilterName enum +func VerifiedDestinationNumberFilterName_Values() []string { + return []string{ + VerifiedDestinationNumberFilterNameStatus, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pinpointsmsvoicev2/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/pinpointsmsvoicev2/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pinpointsmsvoicev2/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pinpointsmsvoicev2/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -22,6 +22,25 @@ // Pinpoint integration with other Amazon Web Services services, and the quotas // that apply to use of the service. // +// # Regional availability +// +// The Amazon Pinpoint SMS and Voice, version 2 API Reference is available in +// several Amazon Web Services Regions and it provides an endpoint for each +// of these Regions. For a list of all the Regions and endpoints where the API +// is currently available, see Amazon Web Services Service Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#pinpoint_region) +// and Amazon Pinpoint endpoints and quotas (https://docs.aws.amazon.com/general/latest/gr/pinpoint.html) +// in the Amazon Web Services General Reference. To learn more about Amazon +// Web Services Regions, see Managing Amazon Web Services Regions (https://docs.aws.amazon.com/general/latest/gr/rande-manage.html) +// in the Amazon Web Services General Reference. +// +// In each Region, Amazon Web Services maintains multiple Availability Zones. +// These Availability Zones are physically isolated from each other, but are +// united by private, low-latency, high-throughput, and highly redundant network +// connections. These Availability Zones enable us to provide very high levels +// of availability and redundancy, while also minimizing latency. To learn more +// about the number of Availability Zones that are available in each Region, +// see Amazon Web Services Global Infrastructure. (https://aws.amazon.com/about-aws/global-infrastructure/) +// // See https://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31 for more information on this service. // // See pinpointsmsvoicev2 package documentation for more information. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pinpointsmsvoicev2/pinpointsmsvoicev2iface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/pinpointsmsvoicev2/pinpointsmsvoicev2iface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pinpointsmsvoicev2/pinpointsmsvoicev2iface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pinpointsmsvoicev2/pinpointsmsvoicev2iface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,26 @@ CreatePoolWithContext(aws.Context, *pinpointsmsvoicev2.CreatePoolInput, ...request.Option) (*pinpointsmsvoicev2.CreatePoolOutput, error) CreatePoolRequest(*pinpointsmsvoicev2.CreatePoolInput) (*request.Request, *pinpointsmsvoicev2.CreatePoolOutput) + CreateRegistration(*pinpointsmsvoicev2.CreateRegistrationInput) (*pinpointsmsvoicev2.CreateRegistrationOutput, error) + CreateRegistrationWithContext(aws.Context, *pinpointsmsvoicev2.CreateRegistrationInput, ...request.Option) (*pinpointsmsvoicev2.CreateRegistrationOutput, error) + CreateRegistrationRequest(*pinpointsmsvoicev2.CreateRegistrationInput) (*request.Request, *pinpointsmsvoicev2.CreateRegistrationOutput) + + CreateRegistrationAssociation(*pinpointsmsvoicev2.CreateRegistrationAssociationInput) (*pinpointsmsvoicev2.CreateRegistrationAssociationOutput, error) + CreateRegistrationAssociationWithContext(aws.Context, *pinpointsmsvoicev2.CreateRegistrationAssociationInput, ...request.Option) (*pinpointsmsvoicev2.CreateRegistrationAssociationOutput, error) + CreateRegistrationAssociationRequest(*pinpointsmsvoicev2.CreateRegistrationAssociationInput) (*request.Request, *pinpointsmsvoicev2.CreateRegistrationAssociationOutput) + + CreateRegistrationAttachment(*pinpointsmsvoicev2.CreateRegistrationAttachmentInput) (*pinpointsmsvoicev2.CreateRegistrationAttachmentOutput, error) + CreateRegistrationAttachmentWithContext(aws.Context, *pinpointsmsvoicev2.CreateRegistrationAttachmentInput, ...request.Option) (*pinpointsmsvoicev2.CreateRegistrationAttachmentOutput, error) + CreateRegistrationAttachmentRequest(*pinpointsmsvoicev2.CreateRegistrationAttachmentInput) (*request.Request, *pinpointsmsvoicev2.CreateRegistrationAttachmentOutput) + + CreateRegistrationVersion(*pinpointsmsvoicev2.CreateRegistrationVersionInput) (*pinpointsmsvoicev2.CreateRegistrationVersionOutput, error) + CreateRegistrationVersionWithContext(aws.Context, *pinpointsmsvoicev2.CreateRegistrationVersionInput, ...request.Option) (*pinpointsmsvoicev2.CreateRegistrationVersionOutput, error) + CreateRegistrationVersionRequest(*pinpointsmsvoicev2.CreateRegistrationVersionInput) (*request.Request, *pinpointsmsvoicev2.CreateRegistrationVersionOutput) + + CreateVerifiedDestinationNumber(*pinpointsmsvoicev2.CreateVerifiedDestinationNumberInput) (*pinpointsmsvoicev2.CreateVerifiedDestinationNumberOutput, error) + CreateVerifiedDestinationNumberWithContext(aws.Context, *pinpointsmsvoicev2.CreateVerifiedDestinationNumberInput, ...request.Option) (*pinpointsmsvoicev2.CreateVerifiedDestinationNumberOutput, error) + CreateVerifiedDestinationNumberRequest(*pinpointsmsvoicev2.CreateVerifiedDestinationNumberInput) (*request.Request, *pinpointsmsvoicev2.CreateVerifiedDestinationNumberOutput) + DeleteConfigurationSet(*pinpointsmsvoicev2.DeleteConfigurationSetInput) (*pinpointsmsvoicev2.DeleteConfigurationSetOutput, error) DeleteConfigurationSetWithContext(aws.Context, *pinpointsmsvoicev2.DeleteConfigurationSetInput, ...request.Option) (*pinpointsmsvoicev2.DeleteConfigurationSetOutput, error) DeleteConfigurationSetRequest(*pinpointsmsvoicev2.DeleteConfigurationSetInput) (*request.Request, *pinpointsmsvoicev2.DeleteConfigurationSetOutput) @@ -112,10 +132,26 @@ DeletePoolWithContext(aws.Context, *pinpointsmsvoicev2.DeletePoolInput, ...request.Option) (*pinpointsmsvoicev2.DeletePoolOutput, error) DeletePoolRequest(*pinpointsmsvoicev2.DeletePoolInput) (*request.Request, *pinpointsmsvoicev2.DeletePoolOutput) + DeleteRegistration(*pinpointsmsvoicev2.DeleteRegistrationInput) (*pinpointsmsvoicev2.DeleteRegistrationOutput, error) + DeleteRegistrationWithContext(aws.Context, *pinpointsmsvoicev2.DeleteRegistrationInput, ...request.Option) (*pinpointsmsvoicev2.DeleteRegistrationOutput, error) + DeleteRegistrationRequest(*pinpointsmsvoicev2.DeleteRegistrationInput) (*request.Request, *pinpointsmsvoicev2.DeleteRegistrationOutput) + + DeleteRegistrationAttachment(*pinpointsmsvoicev2.DeleteRegistrationAttachmentInput) (*pinpointsmsvoicev2.DeleteRegistrationAttachmentOutput, error) + DeleteRegistrationAttachmentWithContext(aws.Context, *pinpointsmsvoicev2.DeleteRegistrationAttachmentInput, ...request.Option) (*pinpointsmsvoicev2.DeleteRegistrationAttachmentOutput, error) + DeleteRegistrationAttachmentRequest(*pinpointsmsvoicev2.DeleteRegistrationAttachmentInput) (*request.Request, *pinpointsmsvoicev2.DeleteRegistrationAttachmentOutput) + + DeleteRegistrationFieldValue(*pinpointsmsvoicev2.DeleteRegistrationFieldValueInput) (*pinpointsmsvoicev2.DeleteRegistrationFieldValueOutput, error) + DeleteRegistrationFieldValueWithContext(aws.Context, *pinpointsmsvoicev2.DeleteRegistrationFieldValueInput, ...request.Option) (*pinpointsmsvoicev2.DeleteRegistrationFieldValueOutput, error) + DeleteRegistrationFieldValueRequest(*pinpointsmsvoicev2.DeleteRegistrationFieldValueInput) (*request.Request, *pinpointsmsvoicev2.DeleteRegistrationFieldValueOutput) + DeleteTextMessageSpendLimitOverride(*pinpointsmsvoicev2.DeleteTextMessageSpendLimitOverrideInput) (*pinpointsmsvoicev2.DeleteTextMessageSpendLimitOverrideOutput, error) DeleteTextMessageSpendLimitOverrideWithContext(aws.Context, *pinpointsmsvoicev2.DeleteTextMessageSpendLimitOverrideInput, ...request.Option) (*pinpointsmsvoicev2.DeleteTextMessageSpendLimitOverrideOutput, error) DeleteTextMessageSpendLimitOverrideRequest(*pinpointsmsvoicev2.DeleteTextMessageSpendLimitOverrideInput) (*request.Request, *pinpointsmsvoicev2.DeleteTextMessageSpendLimitOverrideOutput) + DeleteVerifiedDestinationNumber(*pinpointsmsvoicev2.DeleteVerifiedDestinationNumberInput) (*pinpointsmsvoicev2.DeleteVerifiedDestinationNumberOutput, error) + DeleteVerifiedDestinationNumberWithContext(aws.Context, *pinpointsmsvoicev2.DeleteVerifiedDestinationNumberInput, ...request.Option) (*pinpointsmsvoicev2.DeleteVerifiedDestinationNumberOutput, error) + DeleteVerifiedDestinationNumberRequest(*pinpointsmsvoicev2.DeleteVerifiedDestinationNumberInput) (*request.Request, *pinpointsmsvoicev2.DeleteVerifiedDestinationNumberOutput) + DeleteVoiceMessageSpendLimitOverride(*pinpointsmsvoicev2.DeleteVoiceMessageSpendLimitOverrideInput) (*pinpointsmsvoicev2.DeleteVoiceMessageSpendLimitOverrideOutput, error) DeleteVoiceMessageSpendLimitOverrideWithContext(aws.Context, *pinpointsmsvoicev2.DeleteVoiceMessageSpendLimitOverrideInput, ...request.Option) (*pinpointsmsvoicev2.DeleteVoiceMessageSpendLimitOverrideOutput, error) DeleteVoiceMessageSpendLimitOverrideRequest(*pinpointsmsvoicev2.DeleteVoiceMessageSpendLimitOverrideInput) (*request.Request, *pinpointsmsvoicev2.DeleteVoiceMessageSpendLimitOverrideOutput) @@ -176,6 +212,55 @@ DescribePoolsPages(*pinpointsmsvoicev2.DescribePoolsInput, func(*pinpointsmsvoicev2.DescribePoolsOutput, bool) bool) error DescribePoolsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribePoolsInput, func(*pinpointsmsvoicev2.DescribePoolsOutput, bool) bool, ...request.Option) error + DescribeRegistrationAttachments(*pinpointsmsvoicev2.DescribeRegistrationAttachmentsInput) (*pinpointsmsvoicev2.DescribeRegistrationAttachmentsOutput, error) + DescribeRegistrationAttachmentsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationAttachmentsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationAttachmentsOutput, error) + DescribeRegistrationAttachmentsRequest(*pinpointsmsvoicev2.DescribeRegistrationAttachmentsInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationAttachmentsOutput) + + DescribeRegistrationAttachmentsPages(*pinpointsmsvoicev2.DescribeRegistrationAttachmentsInput, func(*pinpointsmsvoicev2.DescribeRegistrationAttachmentsOutput, bool) bool) error + DescribeRegistrationAttachmentsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationAttachmentsInput, func(*pinpointsmsvoicev2.DescribeRegistrationAttachmentsOutput, bool) bool, ...request.Option) error + + DescribeRegistrationFieldDefinitions(*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsInput) (*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsOutput, error) + DescribeRegistrationFieldDefinitionsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsOutput, error) + DescribeRegistrationFieldDefinitionsRequest(*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsOutput) + + DescribeRegistrationFieldDefinitionsPages(*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsOutput, bool) bool) error + DescribeRegistrationFieldDefinitionsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationFieldDefinitionsOutput, bool) bool, ...request.Option) error + + DescribeRegistrationFieldValues(*pinpointsmsvoicev2.DescribeRegistrationFieldValuesInput) (*pinpointsmsvoicev2.DescribeRegistrationFieldValuesOutput, error) + DescribeRegistrationFieldValuesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationFieldValuesInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationFieldValuesOutput, error) + DescribeRegistrationFieldValuesRequest(*pinpointsmsvoicev2.DescribeRegistrationFieldValuesInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationFieldValuesOutput) + + DescribeRegistrationFieldValuesPages(*pinpointsmsvoicev2.DescribeRegistrationFieldValuesInput, func(*pinpointsmsvoicev2.DescribeRegistrationFieldValuesOutput, bool) bool) error + DescribeRegistrationFieldValuesPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationFieldValuesInput, func(*pinpointsmsvoicev2.DescribeRegistrationFieldValuesOutput, bool) bool, ...request.Option) error + + DescribeRegistrationSectionDefinitions(*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsInput) (*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsOutput, error) + DescribeRegistrationSectionDefinitionsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsOutput, error) + DescribeRegistrationSectionDefinitionsRequest(*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsOutput) + + DescribeRegistrationSectionDefinitionsPages(*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsOutput, bool) bool) error + DescribeRegistrationSectionDefinitionsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationSectionDefinitionsOutput, bool) bool, ...request.Option) error + + DescribeRegistrationTypeDefinitions(*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsInput) (*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsOutput, error) + DescribeRegistrationTypeDefinitionsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsOutput, error) + DescribeRegistrationTypeDefinitionsRequest(*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsOutput) + + DescribeRegistrationTypeDefinitionsPages(*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsOutput, bool) bool) error + DescribeRegistrationTypeDefinitionsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationTypeDefinitionsOutput, bool) bool, ...request.Option) error + + DescribeRegistrationVersions(*pinpointsmsvoicev2.DescribeRegistrationVersionsInput) (*pinpointsmsvoicev2.DescribeRegistrationVersionsOutput, error) + DescribeRegistrationVersionsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationVersionsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationVersionsOutput, error) + DescribeRegistrationVersionsRequest(*pinpointsmsvoicev2.DescribeRegistrationVersionsInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationVersionsOutput) + + DescribeRegistrationVersionsPages(*pinpointsmsvoicev2.DescribeRegistrationVersionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationVersionsOutput, bool) bool) error + DescribeRegistrationVersionsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationVersionsInput, func(*pinpointsmsvoicev2.DescribeRegistrationVersionsOutput, bool) bool, ...request.Option) error + + DescribeRegistrations(*pinpointsmsvoicev2.DescribeRegistrationsInput) (*pinpointsmsvoicev2.DescribeRegistrationsOutput, error) + DescribeRegistrationsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeRegistrationsOutput, error) + DescribeRegistrationsRequest(*pinpointsmsvoicev2.DescribeRegistrationsInput) (*request.Request, *pinpointsmsvoicev2.DescribeRegistrationsOutput) + + DescribeRegistrationsPages(*pinpointsmsvoicev2.DescribeRegistrationsInput, func(*pinpointsmsvoicev2.DescribeRegistrationsOutput, bool) bool) error + DescribeRegistrationsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeRegistrationsInput, func(*pinpointsmsvoicev2.DescribeRegistrationsOutput, bool) bool, ...request.Option) error + DescribeSenderIds(*pinpointsmsvoicev2.DescribeSenderIdsInput) (*pinpointsmsvoicev2.DescribeSenderIdsOutput, error) DescribeSenderIdsWithContext(aws.Context, *pinpointsmsvoicev2.DescribeSenderIdsInput, ...request.Option) (*pinpointsmsvoicev2.DescribeSenderIdsOutput, error) DescribeSenderIdsRequest(*pinpointsmsvoicev2.DescribeSenderIdsInput) (*request.Request, *pinpointsmsvoicev2.DescribeSenderIdsOutput) @@ -190,10 +275,21 @@ DescribeSpendLimitsPages(*pinpointsmsvoicev2.DescribeSpendLimitsInput, func(*pinpointsmsvoicev2.DescribeSpendLimitsOutput, bool) bool) error DescribeSpendLimitsPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeSpendLimitsInput, func(*pinpointsmsvoicev2.DescribeSpendLimitsOutput, bool) bool, ...request.Option) error + DescribeVerifiedDestinationNumbers(*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersInput) (*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersOutput, error) + DescribeVerifiedDestinationNumbersWithContext(aws.Context, *pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersInput, ...request.Option) (*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersOutput, error) + DescribeVerifiedDestinationNumbersRequest(*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersInput) (*request.Request, *pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersOutput) + + DescribeVerifiedDestinationNumbersPages(*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersInput, func(*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersOutput, bool) bool) error + DescribeVerifiedDestinationNumbersPagesWithContext(aws.Context, *pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersInput, func(*pinpointsmsvoicev2.DescribeVerifiedDestinationNumbersOutput, bool) bool, ...request.Option) error + DisassociateOriginationIdentity(*pinpointsmsvoicev2.DisassociateOriginationIdentityInput) (*pinpointsmsvoicev2.DisassociateOriginationIdentityOutput, error) DisassociateOriginationIdentityWithContext(aws.Context, *pinpointsmsvoicev2.DisassociateOriginationIdentityInput, ...request.Option) (*pinpointsmsvoicev2.DisassociateOriginationIdentityOutput, error) DisassociateOriginationIdentityRequest(*pinpointsmsvoicev2.DisassociateOriginationIdentityInput) (*request.Request, *pinpointsmsvoicev2.DisassociateOriginationIdentityOutput) + DiscardRegistrationVersion(*pinpointsmsvoicev2.DiscardRegistrationVersionInput) (*pinpointsmsvoicev2.DiscardRegistrationVersionOutput, error) + DiscardRegistrationVersionWithContext(aws.Context, *pinpointsmsvoicev2.DiscardRegistrationVersionInput, ...request.Option) (*pinpointsmsvoicev2.DiscardRegistrationVersionOutput, error) + DiscardRegistrationVersionRequest(*pinpointsmsvoicev2.DiscardRegistrationVersionInput) (*request.Request, *pinpointsmsvoicev2.DiscardRegistrationVersionOutput) + ListPoolOriginationIdentities(*pinpointsmsvoicev2.ListPoolOriginationIdentitiesInput) (*pinpointsmsvoicev2.ListPoolOriginationIdentitiesOutput, error) ListPoolOriginationIdentitiesWithContext(aws.Context, *pinpointsmsvoicev2.ListPoolOriginationIdentitiesInput, ...request.Option) (*pinpointsmsvoicev2.ListPoolOriginationIdentitiesOutput, error) ListPoolOriginationIdentitiesRequest(*pinpointsmsvoicev2.ListPoolOriginationIdentitiesInput) (*request.Request, *pinpointsmsvoicev2.ListPoolOriginationIdentitiesOutput) @@ -201,6 +297,13 @@ ListPoolOriginationIdentitiesPages(*pinpointsmsvoicev2.ListPoolOriginationIdentitiesInput, func(*pinpointsmsvoicev2.ListPoolOriginationIdentitiesOutput, bool) bool) error ListPoolOriginationIdentitiesPagesWithContext(aws.Context, *pinpointsmsvoicev2.ListPoolOriginationIdentitiesInput, func(*pinpointsmsvoicev2.ListPoolOriginationIdentitiesOutput, bool) bool, ...request.Option) error + ListRegistrationAssociations(*pinpointsmsvoicev2.ListRegistrationAssociationsInput) (*pinpointsmsvoicev2.ListRegistrationAssociationsOutput, error) + ListRegistrationAssociationsWithContext(aws.Context, *pinpointsmsvoicev2.ListRegistrationAssociationsInput, ...request.Option) (*pinpointsmsvoicev2.ListRegistrationAssociationsOutput, error) + ListRegistrationAssociationsRequest(*pinpointsmsvoicev2.ListRegistrationAssociationsInput) (*request.Request, *pinpointsmsvoicev2.ListRegistrationAssociationsOutput) + + ListRegistrationAssociationsPages(*pinpointsmsvoicev2.ListRegistrationAssociationsInput, func(*pinpointsmsvoicev2.ListRegistrationAssociationsOutput, bool) bool) error + ListRegistrationAssociationsPagesWithContext(aws.Context, *pinpointsmsvoicev2.ListRegistrationAssociationsInput, func(*pinpointsmsvoicev2.ListRegistrationAssociationsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*pinpointsmsvoicev2.ListTagsForResourceInput) (*pinpointsmsvoicev2.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *pinpointsmsvoicev2.ListTagsForResourceInput, ...request.Option) (*pinpointsmsvoicev2.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*pinpointsmsvoicev2.ListTagsForResourceInput) (*request.Request, *pinpointsmsvoicev2.ListTagsForResourceOutput) @@ -213,14 +316,30 @@ PutOptedOutNumberWithContext(aws.Context, *pinpointsmsvoicev2.PutOptedOutNumberInput, ...request.Option) (*pinpointsmsvoicev2.PutOptedOutNumberOutput, error) PutOptedOutNumberRequest(*pinpointsmsvoicev2.PutOptedOutNumberInput) (*request.Request, *pinpointsmsvoicev2.PutOptedOutNumberOutput) + PutRegistrationFieldValue(*pinpointsmsvoicev2.PutRegistrationFieldValueInput) (*pinpointsmsvoicev2.PutRegistrationFieldValueOutput, error) + PutRegistrationFieldValueWithContext(aws.Context, *pinpointsmsvoicev2.PutRegistrationFieldValueInput, ...request.Option) (*pinpointsmsvoicev2.PutRegistrationFieldValueOutput, error) + PutRegistrationFieldValueRequest(*pinpointsmsvoicev2.PutRegistrationFieldValueInput) (*request.Request, *pinpointsmsvoicev2.PutRegistrationFieldValueOutput) + ReleasePhoneNumber(*pinpointsmsvoicev2.ReleasePhoneNumberInput) (*pinpointsmsvoicev2.ReleasePhoneNumberOutput, error) ReleasePhoneNumberWithContext(aws.Context, *pinpointsmsvoicev2.ReleasePhoneNumberInput, ...request.Option) (*pinpointsmsvoicev2.ReleasePhoneNumberOutput, error) ReleasePhoneNumberRequest(*pinpointsmsvoicev2.ReleasePhoneNumberInput) (*request.Request, *pinpointsmsvoicev2.ReleasePhoneNumberOutput) + ReleaseSenderId(*pinpointsmsvoicev2.ReleaseSenderIdInput) (*pinpointsmsvoicev2.ReleaseSenderIdOutput, error) + ReleaseSenderIdWithContext(aws.Context, *pinpointsmsvoicev2.ReleaseSenderIdInput, ...request.Option) (*pinpointsmsvoicev2.ReleaseSenderIdOutput, error) + ReleaseSenderIdRequest(*pinpointsmsvoicev2.ReleaseSenderIdInput) (*request.Request, *pinpointsmsvoicev2.ReleaseSenderIdOutput) + RequestPhoneNumber(*pinpointsmsvoicev2.RequestPhoneNumberInput) (*pinpointsmsvoicev2.RequestPhoneNumberOutput, error) RequestPhoneNumberWithContext(aws.Context, *pinpointsmsvoicev2.RequestPhoneNumberInput, ...request.Option) (*pinpointsmsvoicev2.RequestPhoneNumberOutput, error) RequestPhoneNumberRequest(*pinpointsmsvoicev2.RequestPhoneNumberInput) (*request.Request, *pinpointsmsvoicev2.RequestPhoneNumberOutput) + RequestSenderId(*pinpointsmsvoicev2.RequestSenderIdInput) (*pinpointsmsvoicev2.RequestSenderIdOutput, error) + RequestSenderIdWithContext(aws.Context, *pinpointsmsvoicev2.RequestSenderIdInput, ...request.Option) (*pinpointsmsvoicev2.RequestSenderIdOutput, error) + RequestSenderIdRequest(*pinpointsmsvoicev2.RequestSenderIdInput) (*request.Request, *pinpointsmsvoicev2.RequestSenderIdOutput) + + SendDestinationNumberVerificationCode(*pinpointsmsvoicev2.SendDestinationNumberVerificationCodeInput) (*pinpointsmsvoicev2.SendDestinationNumberVerificationCodeOutput, error) + SendDestinationNumberVerificationCodeWithContext(aws.Context, *pinpointsmsvoicev2.SendDestinationNumberVerificationCodeInput, ...request.Option) (*pinpointsmsvoicev2.SendDestinationNumberVerificationCodeOutput, error) + SendDestinationNumberVerificationCodeRequest(*pinpointsmsvoicev2.SendDestinationNumberVerificationCodeInput) (*request.Request, *pinpointsmsvoicev2.SendDestinationNumberVerificationCodeOutput) + SendTextMessage(*pinpointsmsvoicev2.SendTextMessageInput) (*pinpointsmsvoicev2.SendTextMessageOutput, error) SendTextMessageWithContext(aws.Context, *pinpointsmsvoicev2.SendTextMessageInput, ...request.Option) (*pinpointsmsvoicev2.SendTextMessageOutput, error) SendTextMessageRequest(*pinpointsmsvoicev2.SendTextMessageInput) (*request.Request, *pinpointsmsvoicev2.SendTextMessageOutput) @@ -245,6 +364,10 @@ SetVoiceMessageSpendLimitOverrideWithContext(aws.Context, *pinpointsmsvoicev2.SetVoiceMessageSpendLimitOverrideInput, ...request.Option) (*pinpointsmsvoicev2.SetVoiceMessageSpendLimitOverrideOutput, error) SetVoiceMessageSpendLimitOverrideRequest(*pinpointsmsvoicev2.SetVoiceMessageSpendLimitOverrideInput) (*request.Request, *pinpointsmsvoicev2.SetVoiceMessageSpendLimitOverrideOutput) + SubmitRegistrationVersion(*pinpointsmsvoicev2.SubmitRegistrationVersionInput) (*pinpointsmsvoicev2.SubmitRegistrationVersionOutput, error) + SubmitRegistrationVersionWithContext(aws.Context, *pinpointsmsvoicev2.SubmitRegistrationVersionInput, ...request.Option) (*pinpointsmsvoicev2.SubmitRegistrationVersionOutput, error) + SubmitRegistrationVersionRequest(*pinpointsmsvoicev2.SubmitRegistrationVersionInput) (*request.Request, *pinpointsmsvoicev2.SubmitRegistrationVersionOutput) + TagResource(*pinpointsmsvoicev2.TagResourceInput) (*pinpointsmsvoicev2.TagResourceOutput, error) TagResourceWithContext(aws.Context, *pinpointsmsvoicev2.TagResourceInput, ...request.Option) (*pinpointsmsvoicev2.TagResourceOutput, error) TagResourceRequest(*pinpointsmsvoicev2.TagResourceInput) (*request.Request, *pinpointsmsvoicev2.TagResourceOutput) @@ -264,6 +387,14 @@ UpdatePool(*pinpointsmsvoicev2.UpdatePoolInput) (*pinpointsmsvoicev2.UpdatePoolOutput, error) UpdatePoolWithContext(aws.Context, *pinpointsmsvoicev2.UpdatePoolInput, ...request.Option) (*pinpointsmsvoicev2.UpdatePoolOutput, error) UpdatePoolRequest(*pinpointsmsvoicev2.UpdatePoolInput) (*request.Request, *pinpointsmsvoicev2.UpdatePoolOutput) + + UpdateSenderId(*pinpointsmsvoicev2.UpdateSenderIdInput) (*pinpointsmsvoicev2.UpdateSenderIdOutput, error) + UpdateSenderIdWithContext(aws.Context, *pinpointsmsvoicev2.UpdateSenderIdInput, ...request.Option) (*pinpointsmsvoicev2.UpdateSenderIdOutput, error) + UpdateSenderIdRequest(*pinpointsmsvoicev2.UpdateSenderIdInput) (*request.Request, *pinpointsmsvoicev2.UpdateSenderIdOutput) + + VerifyDestinationNumber(*pinpointsmsvoicev2.VerifyDestinationNumberInput) (*pinpointsmsvoicev2.VerifyDestinationNumberOutput, error) + VerifyDestinationNumberWithContext(aws.Context, *pinpointsmsvoicev2.VerifyDestinationNumberInput, ...request.Option) (*pinpointsmsvoicev2.VerifyDestinationNumberOutput, error) + VerifyDestinationNumberRequest(*pinpointsmsvoicev2.VerifyDestinationNumberInput) (*request.Request, *pinpointsmsvoicev2.VerifyDestinationNumberOutput) } var _ PinpointSMSVoiceV2API = (*pinpointsmsvoicev2.PinpointSMSVoiceV2)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pipes/api.go golang-github-aws-aws-sdk-go-1.48.14/service/pipes/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pipes/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pipes/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -931,14 +931,15 @@ // UpdatePipe API operation for Amazon EventBridge Pipes. // -// Update an existing pipe. When you call UpdatePipe, only the fields that are -// included in the request are changed, the rest are unchanged. The exception -// to this is if you modify any Amazon Web Services-service specific fields -// in the SourceParameters, EnrichmentParameters, or TargetParameters objects. -// The fields in these objects are updated atomically as one and override existing -// values. This is by design and means that if you don't specify an optional -// field in one of these Parameters objects, that field will be set to its system-default -// value after the update. +// Update an existing pipe. When you call UpdatePipe, EventBridge only the updates +// fields you have specified in the request; the rest remain unchanged. The +// exception to this is if you modify any Amazon Web Services-service specific +// fields in the SourceParameters, EnrichmentParameters, or TargetParameters +// objects. For example, DynamoDBStreamParameters or EventBridgeEventBusParameters. +// EventBridge updates the fields in these objects atomically as one and overrides +// existing values. This is by design, and means that if you don't specify an +// optional field in one of these Parameters objects, EventBridge sets that +// field to its system-default value during the update. // // For more information about pipes, see Amazon EventBridge Pipes (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes.html) // in the Amazon EventBridge User Guide. @@ -1623,6 +1624,90 @@ return s } +// The Amazon CloudWatch Logs logging configuration settings for the pipe. +type CloudwatchLogsLogDestination struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services Resource Name (ARN) for the CloudWatch log group + // to which EventBridge sends the log records. + LogGroupArn *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudwatchLogsLogDestination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudwatchLogsLogDestination) GoString() string { + return s.String() +} + +// SetLogGroupArn sets the LogGroupArn field's value. +func (s *CloudwatchLogsLogDestination) SetLogGroupArn(v string) *CloudwatchLogsLogDestination { + s.LogGroupArn = &v + return s +} + +// The Amazon CloudWatch Logs logging configuration settings for the pipe. +type CloudwatchLogsLogDestinationParameters struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services Resource Name (ARN) for the CloudWatch log group + // to which EventBridge sends the log records. + // + // LogGroupArn is a required field + LogGroupArn *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudwatchLogsLogDestinationParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudwatchLogsLogDestinationParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CloudwatchLogsLogDestinationParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CloudwatchLogsLogDestinationParameters"} + if s.LogGroupArn == nil { + invalidParams.Add(request.NewErrParamRequired("LogGroupArn")) + } + if s.LogGroupArn != nil && len(*s.LogGroupArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogGroupArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLogGroupArn sets the LogGroupArn field's value. +func (s *CloudwatchLogsLogDestinationParameters) SetLogGroupArn(v string) *CloudwatchLogsLogDestinationParameters { + s.LogGroupArn = &v + return s +} + // An action you attempted resulted in an exception. type ConflictException struct { _ struct{} `type:"structure"` @@ -1716,6 +1801,9 @@ // The parameters required to set up enrichment on your pipe. EnrichmentParameters *PipeEnrichmentParameters `type:"structure"` + // The logging configuration settings for the pipe. + LogConfiguration *PipeLogConfigurationParameters `type:"structure"` + // The name of the pipe. // // Name is a required field @@ -1743,6 +1831,10 @@ Target *string `min:"1" type:"string" required:"true"` // The parameters required to set up a target for your pipe. + // + // For more information about pipe target parameters, including how to use dynamic + // path parameters, see Target parameters (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html) + // in the Amazon EventBridge User Guide. TargetParameters *PipeTargetParameters `type:"structure"` } @@ -1794,6 +1886,11 @@ if s.Target != nil && len(*s.Target) < 1 { invalidParams.Add(request.NewErrParamMinLen("Target", 1)) } + if s.LogConfiguration != nil { + if err := s.LogConfiguration.Validate(); err != nil { + invalidParams.AddNested("LogConfiguration", err.(request.ErrInvalidParams)) + } + } if s.SourceParameters != nil { if err := s.SourceParameters.Validate(); err != nil { invalidParams.AddNested("SourceParameters", err.(request.ErrInvalidParams)) @@ -1835,6 +1932,12 @@ return s } +// SetLogConfiguration sets the LogConfiguration field's value. +func (s *CreatePipeInput) SetLogConfiguration(v *PipeLogConfigurationParameters) *CreatePipeInput { + s.LogConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *CreatePipeInput) SetName(v string) *CreatePipeInput { s.Name = &v @@ -1959,8 +2062,10 @@ type DeadLetterConfig struct { _ struct{} `type:"structure"` - // The ARN of the Amazon SQS queue specified as the target for the dead-letter - // queue. + // The ARN of the specified target for the dead-letter queue. + // + // For Amazon Kinesis stream and Amazon DynamoDB stream sources, specify either + // an Amazon SNS topic or Amazon SQS queue ARN. Arn *string `min:"1" type:"string"` } @@ -2208,6 +2313,9 @@ // (YYYY-MM-DDThh:mm:ss.sTZD). LastModifiedTime *time.Time `type:"timestamp"` + // The logging configuration settings for the pipe. + LogConfiguration *PipeLogConfiguration `type:"structure"` + // The name of the pipe. Name *string `min:"1" type:"string"` @@ -2230,6 +2338,10 @@ Target *string `min:"1" type:"string"` // The parameters required to set up a target for your pipe. + // + // For more information about pipe target parameters, including how to use dynamic + // path parameters, see Target parameters (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html) + // in the Amazon EventBridge User Guide. TargetParameters *PipeTargetParameters `type:"structure"` } @@ -2299,6 +2411,12 @@ return s } +// SetLogConfiguration sets the LogConfiguration field's value. +func (s *DescribePipeOutput) SetLogConfiguration(v *PipeLogConfiguration) *DescribePipeOutput { + s.LogConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *DescribePipeOutput) SetName(v string) *DescribePipeOutput { s.Name = &v @@ -2965,8 +3083,12 @@ return s } -// The collection of event patterns used to filter events. For more information, -// see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) +// The collection of event patterns used to filter events. +// +// To remove a filter, specify a FilterCriteria object with an empty array of +// Filter objects. +// +// For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) // in the Amazon EventBridge User Guide. type FilterCriteria struct { _ struct{} `type:"structure"` @@ -2999,6 +3121,90 @@ return s } +// The Amazon Kinesis Data Firehose logging configuration settings for the pipe. +type FirehoseLogDestination struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Kinesis Data Firehose delivery stream + // to which EventBridge delivers the pipe log records. + DeliveryStreamArn *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FirehoseLogDestination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FirehoseLogDestination) GoString() string { + return s.String() +} + +// SetDeliveryStreamArn sets the DeliveryStreamArn field's value. +func (s *FirehoseLogDestination) SetDeliveryStreamArn(v string) *FirehoseLogDestination { + s.DeliveryStreamArn = &v + return s +} + +// The Amazon Kinesis Data Firehose logging configuration settings for the pipe. +type FirehoseLogDestinationParameters struct { + _ struct{} `type:"structure"` + + // Specifies the Amazon Resource Name (ARN) of the Kinesis Data Firehose delivery + // stream to which EventBridge delivers the pipe log records. + // + // DeliveryStreamArn is a required field + DeliveryStreamArn *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FirehoseLogDestinationParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FirehoseLogDestinationParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FirehoseLogDestinationParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FirehoseLogDestinationParameters"} + if s.DeliveryStreamArn == nil { + invalidParams.Add(request.NewErrParamRequired("DeliveryStreamArn")) + } + if s.DeliveryStreamArn != nil && len(*s.DeliveryStreamArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeliveryStreamArn sets the DeliveryStreamArn field's value. +func (s *FirehoseLogDestinationParameters) SetDeliveryStreamArn(v string) *FirehoseLogDestinationParameters { + s.DeliveryStreamArn = &v + return s +} + // This exception occurs due to unexpected causes. type InternalException struct { _ struct{} `type:"structure"` @@ -3721,6 +3927,8 @@ // event itself is passed to the enrichment. For more information, see The JavaScript // Object Notation (JSON) Data Interchange Format (http://www.rfc-editor.org/rfc/rfc7159.txt). // + // To remove an input template, specify an empty string. + // // InputTemplate is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PipeEnrichmentParameters's // String and GoString methods. @@ -3757,6 +3965,208 @@ return s } +// The logging configuration settings for the pipe. +type PipeLogConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon CloudWatch Logs logging configuration settings for the pipe. + CloudwatchLogsLogDestination *CloudwatchLogsLogDestination `type:"structure"` + + // The Amazon Kinesis Data Firehose logging configuration settings for the pipe. + FirehoseLogDestination *FirehoseLogDestination `type:"structure"` + + // Whether the execution data (specifically, the payload, awsRequest, and awsResponse + // fields) is included in the log messages for this pipe. + // + // This applies to all log destinations for the pipe. + // + // For more information, see Including execution data in logs (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-logs.html#eb-pipes-logs-execution-data) + // in the Amazon EventBridge User Guide. + IncludeExecutionData []*string `type:"list" enum:"IncludeExecutionDataOption"` + + // The level of logging detail to include. This applies to all log destinations + // for the pipe. + Level *string `type:"string" enum:"LogLevel"` + + // The Amazon S3 logging configuration settings for the pipe. + S3LogDestination *S3LogDestination `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 PipeLogConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PipeLogConfiguration) GoString() string { + return s.String() +} + +// SetCloudwatchLogsLogDestination sets the CloudwatchLogsLogDestination field's value. +func (s *PipeLogConfiguration) SetCloudwatchLogsLogDestination(v *CloudwatchLogsLogDestination) *PipeLogConfiguration { + s.CloudwatchLogsLogDestination = v + return s +} + +// SetFirehoseLogDestination sets the FirehoseLogDestination field's value. +func (s *PipeLogConfiguration) SetFirehoseLogDestination(v *FirehoseLogDestination) *PipeLogConfiguration { + s.FirehoseLogDestination = v + return s +} + +// SetIncludeExecutionData sets the IncludeExecutionData field's value. +func (s *PipeLogConfiguration) SetIncludeExecutionData(v []*string) *PipeLogConfiguration { + s.IncludeExecutionData = v + return s +} + +// SetLevel sets the Level field's value. +func (s *PipeLogConfiguration) SetLevel(v string) *PipeLogConfiguration { + s.Level = &v + return s +} + +// SetS3LogDestination sets the S3LogDestination field's value. +func (s *PipeLogConfiguration) SetS3LogDestination(v *S3LogDestination) *PipeLogConfiguration { + s.S3LogDestination = v + return s +} + +// Specifies the logging configuration settings for the pipe. +// +// When you call UpdatePipe, EventBridge updates the fields in the PipeLogConfigurationParameters +// object atomically as one and overrides existing values. This is by design. +// If you don't specify an optional field in any of the Amazon Web Services +// service parameters objects (CloudwatchLogsLogDestinationParameters, FirehoseLogDestinationParameters, +// or S3LogDestinationParameters), EventBridge sets that field to its system-default +// value during the update. +// +// For example, suppose when you created the pipe you specified a Kinesis Data +// Firehose stream log destination. You then update the pipe to add an Amazon +// S3 log destination. In addition to specifying the S3LogDestinationParameters +// for the new log destination, you must also specify the fields in the FirehoseLogDestinationParameters +// object in order to retain the Kinesis Data Firehose stream log destination. +// +// For more information on generating pipe log records, see Log EventBridge +// Pipes (eventbridge/latest/userguide/eb-pipes-logs.html) in the Amazon EventBridge +// User Guide. +type PipeLogConfigurationParameters struct { + _ struct{} `type:"structure"` + + // The Amazon CloudWatch Logs logging configuration settings for the pipe. + CloudwatchLogsLogDestination *CloudwatchLogsLogDestinationParameters `type:"structure"` + + // The Amazon Kinesis Data Firehose logging configuration settings for the pipe. + FirehoseLogDestination *FirehoseLogDestinationParameters `type:"structure"` + + // Specify ON to include the execution data (specifically, the payload and awsRequest + // fields) in the log messages for this pipe. + // + // This applies to all log destinations for the pipe. + // + // For more information, see Including execution data in logs (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-logs.html#eb-pipes-logs-execution-data) + // in the Amazon EventBridge User Guide. + // + // The default is OFF. + IncludeExecutionData []*string `type:"list" enum:"IncludeExecutionDataOption"` + + // The level of logging detail to include. This applies to all log destinations + // for the pipe. + // + // For more information, see Specifying EventBridge Pipes log level (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-logs.html#eb-pipes-logs-level) + // in the Amazon EventBridge User Guide. + // + // Level is a required field + Level *string `type:"string" required:"true" enum:"LogLevel"` + + // The Amazon S3 logging configuration settings for the pipe. + S3LogDestination *S3LogDestinationParameters `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 PipeLogConfigurationParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PipeLogConfigurationParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PipeLogConfigurationParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PipeLogConfigurationParameters"} + if s.Level == nil { + invalidParams.Add(request.NewErrParamRequired("Level")) + } + if s.CloudwatchLogsLogDestination != nil { + if err := s.CloudwatchLogsLogDestination.Validate(); err != nil { + invalidParams.AddNested("CloudwatchLogsLogDestination", err.(request.ErrInvalidParams)) + } + } + if s.FirehoseLogDestination != nil { + if err := s.FirehoseLogDestination.Validate(); err != nil { + invalidParams.AddNested("FirehoseLogDestination", err.(request.ErrInvalidParams)) + } + } + if s.S3LogDestination != nil { + if err := s.S3LogDestination.Validate(); err != nil { + invalidParams.AddNested("S3LogDestination", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCloudwatchLogsLogDestination sets the CloudwatchLogsLogDestination field's value. +func (s *PipeLogConfigurationParameters) SetCloudwatchLogsLogDestination(v *CloudwatchLogsLogDestinationParameters) *PipeLogConfigurationParameters { + s.CloudwatchLogsLogDestination = v + return s +} + +// SetFirehoseLogDestination sets the FirehoseLogDestination field's value. +func (s *PipeLogConfigurationParameters) SetFirehoseLogDestination(v *FirehoseLogDestinationParameters) *PipeLogConfigurationParameters { + s.FirehoseLogDestination = v + return s +} + +// SetIncludeExecutionData sets the IncludeExecutionData field's value. +func (s *PipeLogConfigurationParameters) SetIncludeExecutionData(v []*string) *PipeLogConfigurationParameters { + s.IncludeExecutionData = v + return s +} + +// SetLevel sets the Level field's value. +func (s *PipeLogConfigurationParameters) SetLevel(v string) *PipeLogConfigurationParameters { + s.Level = &v + return s +} + +// SetS3LogDestination sets the S3LogDestination field's value. +func (s *PipeLogConfigurationParameters) SetS3LogDestination(v *S3LogDestinationParameters) *PipeLogConfigurationParameters { + s.S3LogDestination = v + return s +} + // The parameters for using an Active MQ broker as a source. type PipeSourceActiveMQBrokerParameters struct { _ struct{} `type:"structure"` @@ -4255,8 +4665,12 @@ // The parameters for using a DynamoDB stream as a source. DynamoDBStreamParameters *PipeSourceDynamoDBStreamParameters `type:"structure"` - // The collection of event patterns used to filter events. For more information, - // see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) + // The collection of event patterns used to filter events. + // + // To remove a filter, specify a FilterCriteria object with an empty array of + // Filter objects. + // + // For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) // in the Amazon EventBridge User Guide. FilterCriteria *FilterCriteria `type:"structure"` @@ -5156,8 +5570,6 @@ // The URL subdomain of the endpoint. For example, if the URL for Endpoint is // https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo. // - // When using Java, you must include auth-crt on the class path. - // // EndpointId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PipeTargetEventBridgeEventBusParameters's // String and GoString methods. @@ -5304,7 +5716,7 @@ return s } -// The parameters for using a Kinesis stream as a source. +// The parameters for using a Kinesis stream as a target. type PipeTargetKinesisStreamParameters struct { _ struct{} `type:"structure"` @@ -5366,18 +5778,19 @@ type PipeTargetLambdaFunctionParameters struct { _ struct{} `type:"structure"` - // Choose from the following options. + // Specify whether to invoke the function synchronously or asynchronously. // - // * RequestResponse (default) - Invoke the function synchronously. Keep - // the connection open until the function returns a response or times out. - // The API response includes the function response and additional data. - // - // * Event - Invoke the function asynchronously. Send events that fail multiple - // times to the function's dead-letter queue (if it's configured). The API - // response only includes a status code. + // * REQUEST_RESPONSE (default) - Invoke synchronously. This corresponds + // to the RequestResponse option in the InvocationType parameter for the + // Lambda Invoke (https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax) + // API. + // + // * FIRE_AND_FORGET - Invoke asynchronously. This corresponds to the Event + // option in the InvocationType parameter for the Lambda Invoke (https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax) + // API. // - // * DryRun - Validate parameter values and verify that the user or role - // has permission to invoke the function. + // For more information, see Invocation types (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes.html#pipes-invocation) + // in the Amazon EventBridge User Guide. InvocationType *string `type:"string" enum:"PipeTargetInvocationType"` } @@ -5406,6 +5819,10 @@ } // The parameters required to set up a target for your pipe. +// +// For more information about pipe target parameters, including how to use dynamic +// path parameters, see Target parameters (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html) +// in the Amazon EventBridge User Guide. type PipeTargetParameters struct { _ struct{} `type:"structure"` @@ -5429,25 +5846,27 @@ // itself is passed to the target. For more information, see The JavaScript // Object Notation (JSON) Data Interchange Format (http://www.rfc-editor.org/rfc/rfc7159.txt). // + // To remove an input template, specify an empty string. + // // InputTemplate is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PipeTargetParameters's // String and GoString methods. InputTemplate *string `type:"string" sensitive:"true"` - // The parameters for using a Kinesis stream as a source. + // The parameters for using a Kinesis stream as a target. KinesisStreamParameters *PipeTargetKinesisStreamParameters `type:"structure"` // The parameters for using a Lambda function as a target. LambdaFunctionParameters *PipeTargetLambdaFunctionParameters `type:"structure"` // These are custom parameters to be used when the target is a Amazon Redshift - // cluster to invoke the Amazon Redshift Data API ExecuteStatement. + // cluster to invoke the Amazon Redshift Data API BatchExecuteStatement. RedshiftDataParameters *PipeTargetRedshiftDataParameters `type:"structure"` // The parameters for using a SageMaker pipeline as a target. SageMakerPipelineParameters *PipeTargetSageMakerPipelineParameters `type:"structure"` - // The parameters for using a Amazon SQS stream as a source. + // The parameters for using a Amazon SQS stream as a target. SqsQueueParameters *PipeTargetSqsQueueParameters `type:"structure"` // The parameters for using a Step Functions state machine as a target. @@ -5590,7 +6009,7 @@ } // These are custom parameters to be used when the target is a Amazon Redshift -// cluster to invoke the Amazon Redshift Data API ExecuteStatement. +// cluster to invoke the Amazon Redshift Data API BatchExecuteStatement. type PipeTargetRedshiftDataParameters struct { _ struct{} `type:"structure"` @@ -5611,7 +6030,7 @@ DbUser *string `min:"1" type:"string" sensitive:"true"` // The name or ARN of the secret that enables access to the database. Required - // when authenticating using SageMaker. + // when authenticating using Secrets Manager. SecretManagerArn *string `min:"1" type:"string"` // The SQL statement text to run. @@ -5770,7 +6189,7 @@ return s } -// The parameters for using a Amazon SQS stream as a source. +// The parameters for using a Amazon SQS stream as a target. type PipeTargetSqsQueueParameters struct { _ struct{} `type:"structure"` @@ -5825,7 +6244,20 @@ type PipeTargetStateMachineParameters struct { _ struct{} `type:"structure"` - // Specify whether to wait for the state machine to finish or not. + // Specify whether to invoke the Step Functions state machine synchronously + // or asynchronously. + // + // * REQUEST_RESPONSE (default) - Invoke synchronously. For more information, + // see StartSyncExecution (https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartSyncExecution.html) + // in the Step Functions API Reference. REQUEST_RESPONSE is not supported + // for STANDARD state machine workflows. + // + // * FIRE_AND_FORGET - Invoke asynchronously. For more information, see StartExecution + // (https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) + // in the Step Functions API Reference. + // + // For more information, see Invocation types (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes.html#pipes-invocation) + // in the Amazon EventBridge User Guide. InvocationType *string `type:"string" enum:"PipeTargetInvocationType"` } @@ -5963,6 +6395,173 @@ return s } +// The Amazon S3 logging configuration settings for the pipe. +type S3LogDestination struct { + _ struct{} `type:"structure"` + + // The name of the Amazon S3 bucket to which EventBridge delivers the log records + // for the pipe. + BucketName *string `type:"string"` + + // The Amazon Web Services account that owns the Amazon S3 bucket to which EventBridge + // delivers the log records for the pipe. + BucketOwner *string `type:"string"` + + // The format EventBridge uses for the log records. + // + // * json: JSON + // + // * plain: Plain text + // + // * w3c: W3C extended logging file format (https://www.w3.org/TR/WD-logfile) + OutputFormat *string `type:"string" enum:"S3OutputFormat"` + + // The prefix text with which to begin Amazon S3 log object names. + // + // For more information, see Organizing objects using prefixes (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html) + // in the Amazon Simple Storage Service User Guide. + Prefix *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 S3LogDestination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3LogDestination) GoString() string { + return s.String() +} + +// SetBucketName sets the BucketName field's value. +func (s *S3LogDestination) SetBucketName(v string) *S3LogDestination { + s.BucketName = &v + return s +} + +// SetBucketOwner sets the BucketOwner field's value. +func (s *S3LogDestination) SetBucketOwner(v string) *S3LogDestination { + s.BucketOwner = &v + return s +} + +// SetOutputFormat sets the OutputFormat field's value. +func (s *S3LogDestination) SetOutputFormat(v string) *S3LogDestination { + s.OutputFormat = &v + return s +} + +// SetPrefix sets the Prefix field's value. +func (s *S3LogDestination) SetPrefix(v string) *S3LogDestination { + s.Prefix = &v + return s +} + +// The Amazon S3 logging configuration settings for the pipe. +type S3LogDestinationParameters struct { + _ struct{} `type:"structure"` + + // Specifies the name of the Amazon S3 bucket to which EventBridge delivers + // the log records for the pipe. + // + // BucketName is a required field + BucketName *string `min:"3" type:"string" required:"true"` + + // Specifies the Amazon Web Services account that owns the Amazon S3 bucket + // to which EventBridge delivers the log records for the pipe. + // + // BucketOwner is a required field + BucketOwner *string `type:"string" required:"true"` + + // How EventBridge should format the log records. + // + // * json: JSON + // + // * plain: Plain text + // + // * w3c: W3C extended logging file format (https://www.w3.org/TR/WD-logfile) + OutputFormat *string `type:"string" enum:"S3OutputFormat"` + + // Specifies any prefix text with which to begin Amazon S3 log object names. + // + // You can use prefixes to organize the data that you store in Amazon S3 buckets. + // A prefix is a string of characters at the beginning of the object key name. + // A prefix can be any length, subject to the maximum length of the object key + // name (1,024 bytes). For more information, see Organizing objects using prefixes + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html) + // in the Amazon Simple Storage Service User Guide. + Prefix *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 S3LogDestinationParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3LogDestinationParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3LogDestinationParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3LogDestinationParameters"} + if s.BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("BucketName")) + } + if s.BucketName != nil && len(*s.BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) + } + if s.BucketOwner == nil { + invalidParams.Add(request.NewErrParamRequired("BucketOwner")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketName sets the BucketName field's value. +func (s *S3LogDestinationParameters) SetBucketName(v string) *S3LogDestinationParameters { + s.BucketName = &v + return s +} + +// SetBucketOwner sets the BucketOwner field's value. +func (s *S3LogDestinationParameters) SetBucketOwner(v string) *S3LogDestinationParameters { + s.BucketOwner = &v + return s +} + +// SetOutputFormat sets the OutputFormat field's value. +func (s *S3LogDestinationParameters) SetOutputFormat(v string) *S3LogDestinationParameters { + s.OutputFormat = &v + return s +} + +// SetPrefix sets the Prefix field's value. +func (s *S3LogDestinationParameters) SetPrefix(v string) *S3LogDestinationParameters { + s.Prefix = &v + return s +} + // Name/Value pair of a parameter to start execution of a SageMaker Model Building // Pipeline. type SageMakerPipelineParameter struct { @@ -6835,6 +7434,9 @@ // The parameters required to set up enrichment on your pipe. EnrichmentParameters *PipeEnrichmentParameters `type:"structure"` + // The logging configuration settings for the pipe. + LogConfiguration *PipeLogConfigurationParameters `type:"structure"` + // The name of the pipe. // // Name is a required field @@ -6852,6 +7454,10 @@ Target *string `min:"1" type:"string"` // The parameters required to set up a target for your pipe. + // + // For more information about pipe target parameters, including how to use dynamic + // path parameters, see Target parameters (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html) + // in the Amazon EventBridge User Guide. TargetParameters *PipeTargetParameters `type:"structure"` } @@ -6891,6 +7497,11 @@ if s.Target != nil && len(*s.Target) < 1 { invalidParams.Add(request.NewErrParamMinLen("Target", 1)) } + if s.LogConfiguration != nil { + if err := s.LogConfiguration.Validate(); err != nil { + invalidParams.AddNested("LogConfiguration", err.(request.ErrInvalidParams)) + } + } if s.SourceParameters != nil { if err := s.SourceParameters.Validate(); err != nil { invalidParams.AddNested("SourceParameters", err.(request.ErrInvalidParams)) @@ -6932,6 +7543,12 @@ return s } +// SetLogConfiguration sets the LogConfiguration field's value. +func (s *UpdatePipeInput) SetLogConfiguration(v *PipeLogConfigurationParameters) *UpdatePipeInput { + s.LogConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *UpdatePipeInput) SetName(v string) *UpdatePipeInput { s.Name = &v @@ -7432,8 +8049,12 @@ // The parameters for using a DynamoDB stream as a source. DynamoDBStreamParameters *UpdatePipeSourceDynamoDBStreamParameters `type:"structure"` - // The collection of event patterns used to filter events. For more information, - // see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) + // The collection of event patterns used to filter events. + // + // To remove a filter, specify a FilterCriteria object with an empty array of + // Filter objects. + // + // For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) // in the Amazon EventBridge User Guide. FilterCriteria *FilterCriteria `type:"structure"` @@ -7991,6 +8612,18 @@ } const ( + // IncludeExecutionDataOptionAll is a IncludeExecutionDataOption enum value + IncludeExecutionDataOptionAll = "ALL" +) + +// IncludeExecutionDataOption_Values returns all elements of the IncludeExecutionDataOption enum +func IncludeExecutionDataOption_Values() []string { + return []string{ + IncludeExecutionDataOptionAll, + } +} + +const ( // KinesisStreamStartPositionTrimHorizon is a KinesisStreamStartPosition enum value KinesisStreamStartPositionTrimHorizon = "TRIM_HORIZON" @@ -8031,6 +8664,30 @@ } const ( + // LogLevelOff is a LogLevel enum value + LogLevelOff = "OFF" + + // LogLevelError is a LogLevel enum value + LogLevelError = "ERROR" + + // LogLevelInfo is a LogLevel enum value + LogLevelInfo = "INFO" + + // LogLevelTrace is a LogLevel enum value + LogLevelTrace = "TRACE" +) + +// LogLevel_Values returns all elements of the LogLevel enum +func LogLevel_Values() []string { + return []string{ + LogLevelOff, + LogLevelError, + LogLevelInfo, + LogLevelTrace, + } +} + +const ( // MSKStartPositionTrimHorizon is a MSKStartPosition enum value MSKStartPositionTrimHorizon = "TRIM_HORIZON" @@ -8091,6 +8748,18 @@ // PipeStateStopFailed is a PipeState enum value PipeStateStopFailed = "STOP_FAILED" + + // PipeStateDeleteFailed is a PipeState enum value + PipeStateDeleteFailed = "DELETE_FAILED" + + // PipeStateCreateRollbackFailed is a PipeState enum value + PipeStateCreateRollbackFailed = "CREATE_ROLLBACK_FAILED" + + // PipeStateDeleteRollbackFailed is a PipeState enum value + PipeStateDeleteRollbackFailed = "DELETE_ROLLBACK_FAILED" + + // PipeStateUpdateRollbackFailed is a PipeState enum value + PipeStateUpdateRollbackFailed = "UPDATE_ROLLBACK_FAILED" ) // PipeState_Values returns all elements of the PipeState enum @@ -8107,6 +8776,10 @@ PipeStateUpdateFailed, PipeStateStartFailed, PipeStateStopFailed, + PipeStateDeleteFailed, + PipeStateCreateRollbackFailed, + PipeStateDeleteRollbackFailed, + PipeStateUpdateRollbackFailed, } } @@ -8210,6 +8883,26 @@ } } +const ( + // S3OutputFormatJson is a S3OutputFormat enum value + S3OutputFormatJson = "json" + + // S3OutputFormatPlain is a S3OutputFormat enum value + S3OutputFormatPlain = "plain" + + // S3OutputFormatW3c is a S3OutputFormat enum value + S3OutputFormatW3c = "w3c" +) + +// S3OutputFormat_Values returns all elements of the S3OutputFormat enum +func S3OutputFormat_Values() []string { + return []string{ + S3OutputFormatJson, + S3OutputFormatPlain, + S3OutputFormatW3c, + } +} + const ( // SelfManagedKafkaStartPositionTrimHorizon is a SelfManagedKafkaStartPosition enum value SelfManagedKafkaStartPositionTrimHorizon = "TRIM_HORIZON" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/polly/api.go golang-github-aws-aws-sdk-go-1.48.14/service/polly/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/polly/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/polly/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1048,8 +1048,8 @@ type DescribeVoicesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Specifies the engine (standard or neural) used by Amazon Polly when processing - // input text for speech synthesis. + // Specifies the engine (standard, neural or long-form) used by Amazon Polly + // when processing input text for speech synthesis. Engine *string `location:"querystring" locationName:"Engine" type:"string" enum:"Engine"` // Boolean value indicating whether to return any bilingual voices that use @@ -2869,9 +2869,9 @@ type StartSpeechSynthesisTaskInput struct { _ struct{} `type:"structure"` - // Specifies the engine (standard or neural) for Amazon Polly to use when processing - // input text for speech synthesis. Using a voice that is not supported for - // the engine selected will result in an error. + // Specifies the engine (standard, neural or long-form) for Amazon Polly to + // use when processing input text for speech synthesis. Using a voice that is + // not supported for the engine selected will result in an error. Engine *string `type:"string" enum:"Engine"` // Optional language code for the Speech Synthesis request. This is only necessary @@ -2908,7 +2908,7 @@ // // The valid values for mp3 and ogg_vorbis are "8000", "16000", "22050", and // "24000". The default value for standard voices is "22050". The default value - // for neural voices is "24000". + // for neural voices is "24000". The default value for long-form voices is "24000". // // Valid values for pcm are "8000" and "16000" The default value is "16000". SampleRate *string `type:"string"` @@ -3087,9 +3087,9 @@ // Timestamp for the time the synthesis task was started. CreationTime *time.Time `type:"timestamp"` - // Specifies the engine (standard or neural) for Amazon Polly to use when processing - // input text for speech synthesis. Using a voice that is not supported for - // the engine selected will result in an error. + // Specifies the engine (standard, neural or long-form) for Amazon Polly to + // use when processing input text for speech synthesis. Using a voice that is + // not supported for the engine selected will result in an error. Engine *string `type:"string" enum:"Engine"` // Optional language code for a synthesis task. This is only necessary if using @@ -3122,7 +3122,7 @@ // // The valid values for mp3 and ogg_vorbis are "8000", "16000", "22050", and // "24000". The default value for standard voices is "22050". The default value - // for neural voices is "24000". + // for neural voices is "24000". The default value for long-form voices is "24000". // // Valid values for pcm are "8000" and "16000" The default value is "16000". SampleRate *string `type:"string"` @@ -3327,10 +3327,10 @@ type SynthesizeSpeechInput struct { _ struct{} `type:"structure"` - // Specifies the engine (standard or neural) for Amazon Polly to use when processing - // input text for speech synthesis. For information on Amazon Polly voices and - // which voices are available in standard-only, NTTS-only, and both standard - // and NTTS formats, see Available Voices (https://docs.aws.amazon.com/polly/latest/dg/voicelist.html). + // Specifies the engine (standard, neural or long-form) for Amazon Polly to + // use when processing input text for speech synthesis. For information on Amazon + // Polly voices and which voices are available for each engine, see Available + // Voices (https://docs.aws.amazon.com/polly/latest/dg/voicelist.html). // // NTTS-only voices // @@ -3338,9 +3338,15 @@ // and must be set to neural. If the engine is not specified, or is set to standard, // this will result in an error. // + // long-form-only voices + // + // When using long-form-only voices such as Danielle (en-US), this parameter + // is required and must be set to long-form. If the engine is not specified, + // or is set to standard or neural, this will result in an error. + // // Type: String // - // Valid Values: standard | neural + // Valid Values: standard | neural | long-form // // Required: Yes // @@ -3381,7 +3387,7 @@ // // The valid values for mp3 and ogg_vorbis are "8000", "16000", "22050", and // "24000". The default value for standard voices is "22050". The default value - // for neural voices is "24000". + // for neural voices is "24000". The default value for long-form voices is "24000". // // Valid values for pcm are "8000" and "16000" The default value is "16000". SampleRate *string `type:"string"` @@ -3787,8 +3793,8 @@ // readable voice name that you might display in your application. Name *string `type:"string"` - // Specifies which engines (standard or neural) that are supported by a given - // voice. + // Specifies which engines (standard, neural or long-form) are supported by + // a given voice. SupportedEngines []*string `type:"list" enum:"Engine"` } @@ -3858,6 +3864,9 @@ // EngineNeural is a Engine enum value EngineNeural = "neural" + + // EngineLongForm is a Engine enum value + EngineLongForm = "long-form" ) // Engine_Values returns all elements of the Engine enum @@ -3865,6 +3874,7 @@ return []string{ EngineStandard, EngineNeural, + EngineLongForm, } } @@ -4415,6 +4425,12 @@ // VoiceIdZayd is a VoiceId enum value VoiceIdZayd = "Zayd" + + // VoiceIdDanielle is a VoiceId enum value + VoiceIdDanielle = "Danielle" + + // VoiceIdGregory is a VoiceId enum value + VoiceIdGregory = "Gregory" ) // VoiceId_Values returns all elements of the VoiceId enum @@ -4513,5 +4529,7 @@ VoiceIdLisa, VoiceIdIsabelle, VoiceIdZayd, + VoiceIdDanielle, + VoiceIdGregory, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pricing/api.go golang-github-aws-aws-sdk-go-1.48.14/service/pricing/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pricing/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pricing/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1707,7 +1707,9 @@ // and Reserved Instance (RI) pricing, use the DescribeServices (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_DescribeServices.html#awscostmanagement-pricing_DescribeServices-request-FormatVersion) // API. // - // To retrieve the Compute Savings Plan price lists, use ComputeSavingsPlans. + // To retrieve the Reserved Instance and Compute Savings Plan price lists, use + // ComputeSavingsPlans. + // // To retrieve Machine Learning Savings Plans price lists, use MachineLearningSavingsPlans. // // ServiceCode is a required field diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/pricing/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/pricing/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/pricing/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/pricing/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -27,12 +27,8 @@ // you can use GetProducts to find specific products that you're interested // in, such as an AmazonEC2 instance, with a Provisioned IOPS volumeType. // -// You can use the following endpoints for the Amazon Web Services Price List -// API: -// -// - https://api.pricing.us-east-1.amazonaws.com -// -// - https://api.pricing.ap-south-1.amazonaws.com +// For more information, see Using the Amazon Web Services Price List API (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html) +// in the Billing User Guide. // // See https://docs.aws.amazon.com/goto/WebAPI/pricing-2017-10-15 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/prometheusservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/prometheusservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/prometheusservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/prometheusservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -295,6 +295,103 @@ return out, req.Send() } +const opCreateScraper = "CreateScraper" + +// CreateScraperRequest generates a "aws/request.Request" representing the +// client's request for the CreateScraper 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 CreateScraper for more information on using the CreateScraper +// 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 CreateScraperRequest method. +// req, resp := client.CreateScraperRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/CreateScraper +func (c *PrometheusService) CreateScraperRequest(input *CreateScraperInput) (req *request.Request, output *CreateScraperOutput) { + op := &request.Operation{ + Name: opCreateScraper, + HTTPMethod: "POST", + HTTPPath: "/scrapers", + } + + if input == nil { + input = &CreateScraperInput{} + } + + output = &CreateScraperOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateScraper API operation for Amazon Prometheus Service. +// +// Create a scraper. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Prometheus Service's +// API operation CreateScraper for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - ServiceQuotaExceededException +// Request would cause a service quota to be exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/CreateScraper +func (c *PrometheusService) CreateScraper(input *CreateScraperInput) (*CreateScraperOutput, error) { + req, out := c.CreateScraperRequest(input) + return out, req.Send() +} + +// CreateScraperWithContext is the same as CreateScraper with the addition of +// the ability to pass a context and additional request options. +// +// See CreateScraper 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 *PrometheusService) CreateScraperWithContext(ctx aws.Context, input *CreateScraperInput, opts ...request.Option) (*CreateScraperOutput, error) { + req, out := c.CreateScraperRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateWorkspace = "CreateWorkspace" // CreateWorkspaceRequest generates a "aws/request.Request" representing the @@ -671,6 +768,100 @@ return out, req.Send() } +const opDeleteScraper = "DeleteScraper" + +// DeleteScraperRequest generates a "aws/request.Request" representing the +// client's request for the DeleteScraper 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 DeleteScraper for more information on using the DeleteScraper +// 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 DeleteScraperRequest method. +// req, resp := client.DeleteScraperRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DeleteScraper +func (c *PrometheusService) DeleteScraperRequest(input *DeleteScraperInput) (req *request.Request, output *DeleteScraperOutput) { + op := &request.Operation{ + Name: opDeleteScraper, + HTTPMethod: "DELETE", + HTTPPath: "/scrapers/{scraperId}", + } + + if input == nil { + input = &DeleteScraperInput{} + } + + output = &DeleteScraperOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteScraper API operation for Amazon Prometheus Service. +// +// Deletes a scraper. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Prometheus Service's +// API operation DeleteScraper for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DeleteScraper +func (c *PrometheusService) DeleteScraper(input *DeleteScraperInput) (*DeleteScraperOutput, error) { + req, out := c.DeleteScraperRequest(input) + return out, req.Send() +} + +// DeleteScraperWithContext is the same as DeleteScraper with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteScraper 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 *PrometheusService) DeleteScraperWithContext(ctx aws.Context, input *DeleteScraperInput, opts ...request.Option) (*DeleteScraperOutput, error) { + req, out := c.DeleteScraperRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteWorkspace = "DeleteWorkspace" // DeleteWorkspaceRequest generates a "aws/request.Request" representing the @@ -1036,6 +1227,97 @@ return out, req.Send() } +const opDescribeScraper = "DescribeScraper" + +// DescribeScraperRequest generates a "aws/request.Request" representing the +// client's request for the DescribeScraper 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 DescribeScraper for more information on using the DescribeScraper +// 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 DescribeScraperRequest method. +// req, resp := client.DescribeScraperRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DescribeScraper +func (c *PrometheusService) DescribeScraperRequest(input *DescribeScraperInput) (req *request.Request, output *DescribeScraperOutput) { + op := &request.Operation{ + Name: opDescribeScraper, + HTTPMethod: "GET", + HTTPPath: "/scrapers/{scraperId}", + } + + if input == nil { + input = &DescribeScraperInput{} + } + + output = &DescribeScraperOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeScraper API operation for Amazon Prometheus Service. +// +// Describe an existing scraper. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Prometheus Service's +// API operation DescribeScraper for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DescribeScraper +func (c *PrometheusService) DescribeScraper(input *DescribeScraperInput) (*DescribeScraperOutput, error) { + req, out := c.DescribeScraperRequest(input) + return out, req.Send() +} + +// DescribeScraperWithContext is the same as DescribeScraper with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeScraper 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 *PrometheusService) DescribeScraperWithContext(ctx aws.Context, input *DescribeScraperInput, opts ...request.Option) (*DescribeScraperOutput, error) { + req, out := c.DescribeScraperRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeWorkspace = "DescribeWorkspace" // DescribeWorkspaceRequest generates a "aws/request.Request" representing the @@ -1127,6 +1409,91 @@ return out, req.Send() } +const opGetDefaultScraperConfiguration = "GetDefaultScraperConfiguration" + +// GetDefaultScraperConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetDefaultScraperConfiguration 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 GetDefaultScraperConfiguration for more information on using the GetDefaultScraperConfiguration +// 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 GetDefaultScraperConfigurationRequest method. +// req, resp := client.GetDefaultScraperConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/GetDefaultScraperConfiguration +func (c *PrometheusService) GetDefaultScraperConfigurationRequest(input *GetDefaultScraperConfigurationInput) (req *request.Request, output *GetDefaultScraperConfigurationOutput) { + op := &request.Operation{ + Name: opGetDefaultScraperConfiguration, + HTTPMethod: "GET", + HTTPPath: "/scraperconfiguration", + } + + if input == nil { + input = &GetDefaultScraperConfigurationInput{} + } + + output = &GetDefaultScraperConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDefaultScraperConfiguration API operation for Amazon Prometheus Service. +// +// Gets a default configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Prometheus Service's +// API operation GetDefaultScraperConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/GetDefaultScraperConfiguration +func (c *PrometheusService) GetDefaultScraperConfiguration(input *GetDefaultScraperConfigurationInput) (*GetDefaultScraperConfigurationOutput, error) { + req, out := c.GetDefaultScraperConfigurationRequest(input) + return out, req.Send() +} + +// GetDefaultScraperConfigurationWithContext is the same as GetDefaultScraperConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetDefaultScraperConfiguration 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 *PrometheusService) GetDefaultScraperConfigurationWithContext(ctx aws.Context, input *GetDefaultScraperConfigurationInput, opts ...request.Option) (*GetDefaultScraperConfigurationOutput, error) { + req, out := c.GetDefaultScraperConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListRuleGroupsNamespaces = "ListRuleGroupsNamespaces" // ListRuleGroupsNamespacesRequest generates a "aws/request.Request" representing the @@ -1275,6 +1642,152 @@ return p.Err() } +const opListScrapers = "ListScrapers" + +// ListScrapersRequest generates a "aws/request.Request" representing the +// client's request for the ListScrapers 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 ListScrapers for more information on using the ListScrapers +// 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 ListScrapersRequest method. +// req, resp := client.ListScrapersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/ListScrapers +func (c *PrometheusService) ListScrapersRequest(input *ListScrapersInput) (req *request.Request, output *ListScrapersOutput) { + op := &request.Operation{ + Name: opListScrapers, + HTTPMethod: "GET", + HTTPPath: "/scrapers", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListScrapersInput{} + } + + output = &ListScrapersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListScrapers API operation for Amazon Prometheus Service. +// +// Lists all scrapers in a customer account, including scrapers being created +// or deleted. You may provide filters to return a more specific list of results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Prometheus Service's +// API operation ListScrapers for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/ListScrapers +func (c *PrometheusService) ListScrapers(input *ListScrapersInput) (*ListScrapersOutput, error) { + req, out := c.ListScrapersRequest(input) + return out, req.Send() +} + +// ListScrapersWithContext is the same as ListScrapers with the addition of +// the ability to pass a context and additional request options. +// +// See ListScrapers 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 *PrometheusService) ListScrapersWithContext(ctx aws.Context, input *ListScrapersInput, opts ...request.Option) (*ListScrapersOutput, error) { + req, out := c.ListScrapersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListScrapersPages iterates over the pages of a ListScrapers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListScrapers 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 ListScrapers operation. +// pageNum := 0 +// err := client.ListScrapersPages(params, +// func(page *prometheusservice.ListScrapersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *PrometheusService) ListScrapersPages(input *ListScrapersInput, fn func(*ListScrapersOutput, bool) bool) error { + return c.ListScrapersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListScrapersPagesWithContext same as ListScrapersPages 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 *PrometheusService) ListScrapersPagesWithContext(ctx aws.Context, input *ListScrapersInput, fn func(*ListScrapersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListScrapersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListScrapersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListScrapersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -2254,6 +2767,53 @@ return s } +// A representation of an AMP destination. +type AmpConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of an AMP workspace. + // + // WorkspaceArn is a required field + WorkspaceArn *string `locationName:"workspaceArn" 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 AmpConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AmpConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmpConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmpConfiguration"} + if s.WorkspaceArn == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkspaceArn sets the WorkspaceArn field's value. +func (s *AmpConfiguration) SetWorkspaceArn(v string) *AmpConfiguration { + s.WorkspaceArn = &v + return s +} + // Updating or deleting a resource can cause an inconsistent state. type ConflictException struct { _ struct{} `type:"structure"` @@ -2721,6 +3281,191 @@ return s } +// Represents the input of a CreateScraper operation. +type CreateScraperInput struct { + _ struct{} `type:"structure"` + + // An optional user-assigned alias for this scraper. This alias is for user + // reference and does not need to be unique. + Alias *string `locationName:"alias" min:"1" type:"string"` + + // Optional, unique, case-sensitive, user-provided identifier to ensure the + // idempotency of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The destination that the scraper will be producing metrics to. + // + // Destination is a required field + Destination *Destination `locationName:"destination" type:"structure" required:"true"` + + // The configuration used to create the scraper. + // + // ScrapeConfiguration is a required field + ScrapeConfiguration *ScrapeConfiguration `locationName:"scrapeConfiguration" type:"structure" required:"true"` + + // The source that the scraper will be discovering and collecting metrics from. + // + // Source is a required field + Source *Source `locationName:"source" type:"structure" required:"true"` + + // Optional, user-provided tags for this scraper. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateScraperInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateScraperInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateScraperInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateScraperInput"} + if s.Alias != nil && len(*s.Alias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Alias", 1)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Destination == nil { + invalidParams.Add(request.NewErrParamRequired("Destination")) + } + if s.ScrapeConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("ScrapeConfiguration")) + } + if s.Source == nil { + invalidParams.Add(request.NewErrParamRequired("Source")) + } + if s.Destination != nil { + if err := s.Destination.Validate(); err != nil { + invalidParams.AddNested("Destination", err.(request.ErrInvalidParams)) + } + } + if s.Source != nil { + if err := s.Source.Validate(); err != nil { + invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAlias sets the Alias field's value. +func (s *CreateScraperInput) SetAlias(v string) *CreateScraperInput { + s.Alias = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateScraperInput) SetClientToken(v string) *CreateScraperInput { + s.ClientToken = &v + return s +} + +// SetDestination sets the Destination field's value. +func (s *CreateScraperInput) SetDestination(v *Destination) *CreateScraperInput { + s.Destination = v + return s +} + +// SetScrapeConfiguration sets the ScrapeConfiguration field's value. +func (s *CreateScraperInput) SetScrapeConfiguration(v *ScrapeConfiguration) *CreateScraperInput { + s.ScrapeConfiguration = v + return s +} + +// SetSource sets the Source field's value. +func (s *CreateScraperInput) SetSource(v *Source) *CreateScraperInput { + s.Source = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateScraperInput) SetTags(v map[string]*string) *CreateScraperInput { + s.Tags = v + return s +} + +// Represents the output of a CreateScraper operation. +type CreateScraperOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the scraper that was just created. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The generated ID of the scraper that was just created. + // + // ScraperId is a required field + ScraperId *string `locationName:"scraperId" min:"1" type:"string" required:"true"` + + // The status of the scraper that was just created (usually CREATING). + // + // Status is a required field + Status *ScraperStatus `locationName:"status" type:"structure" required:"true"` + + // The tags of this scraper. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateScraperOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateScraperOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateScraperOutput) SetArn(v string) *CreateScraperOutput { + s.Arn = &v + return s +} + +// SetScraperId sets the ScraperId field's value. +func (s *CreateScraperOutput) SetScraperId(v string) *CreateScraperOutput { + s.ScraperId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateScraperOutput) SetStatus(v *ScraperStatus) *CreateScraperOutput { + s.Status = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateScraperOutput) SetTags(v map[string]*string) *CreateScraperOutput { + s.Tags = v + return s +} + // Represents the input of a CreateWorkspace operation. type CreateWorkspaceInput struct { _ struct{} `type:"structure"` @@ -3126,6 +3871,114 @@ return s.String() } +// Represents the input of a DeleteScraper operation. +type DeleteScraperInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Optional, unique, case-sensitive, user-provided identifier to ensure the + // idempotency of the request. + ClientToken *string `location:"querystring" locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the scraper to delete. + // + // ScraperId is a required field + ScraperId *string `location:"uri" locationName:"scraperId" 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 DeleteScraperInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteScraperInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteScraperInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteScraperInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ScraperId == nil { + invalidParams.Add(request.NewErrParamRequired("ScraperId")) + } + if s.ScraperId != nil && len(*s.ScraperId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ScraperId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteScraperInput) SetClientToken(v string) *DeleteScraperInput { + s.ClientToken = &v + return s +} + +// SetScraperId sets the ScraperId field's value. +func (s *DeleteScraperInput) SetScraperId(v string) *DeleteScraperInput { + s.ScraperId = &v + return s +} + +// Represents the output of a DeleteScraper operation. +type DeleteScraperOutput struct { + _ struct{} `type:"structure"` + + // The ID of the scraper that was deleted. + // + // ScraperId is a required field + ScraperId *string `locationName:"scraperId" min:"1" type:"string" required:"true"` + + // The status of the scraper that is being deleted. + // + // Status is a required field + Status *ScraperStatus `locationName:"status" 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 DeleteScraperOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteScraperOutput) GoString() string { + return s.String() +} + +// SetScraperId sets the ScraperId field's value. +func (s *DeleteScraperOutput) SetScraperId(v string) *DeleteScraperOutput { + s.ScraperId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteScraperOutput) SetStatus(v *ScraperStatus) *DeleteScraperOutput { + s.Status = v + return s +} + // Represents the input of a DeleteWorkspace operation. type DeleteWorkspaceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3481,6 +4334,90 @@ return s } +// Represents the input of a DescribeScraper operation. +type DescribeScraperInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The IDs of the scraper to describe. + // + // ScraperId is a required field + ScraperId *string `location:"uri" locationName:"scraperId" 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 DescribeScraperInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeScraperInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeScraperInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeScraperInput"} + if s.ScraperId == nil { + invalidParams.Add(request.NewErrParamRequired("ScraperId")) + } + if s.ScraperId != nil && len(*s.ScraperId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ScraperId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetScraperId sets the ScraperId field's value. +func (s *DescribeScraperInput) SetScraperId(v string) *DescribeScraperInput { + s.ScraperId = &v + return s +} + +// Represents the output of a DescribeScraper operation. +type DescribeScraperOutput struct { + _ struct{} `type:"structure"` + + // The properties of the selected scrapers. + // + // Scraper is a required field + Scraper *ScraperDescription `locationName:"scraper" 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 DescribeScraperOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeScraperOutput) GoString() string { + return s.String() +} + +// SetScraper sets the Scraper field's value. +func (s *DescribeScraperOutput) SetScraper(v *ScraperDescription) *DescribeScraperOutput { + s.Scraper = v + return s +} + // Represents the input of a DescribeWorkspace operation. type DescribeWorkspaceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3565,6 +4502,187 @@ return s } +// A representation of a destination that a scraper can produce metrics to. +type Destination struct { + _ struct{} `type:"structure"` + + // A representation of an AMP destination. + AmpConfiguration *AmpConfiguration `locationName:"ampConfiguration" 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 Destination) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Destination) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Destination) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Destination"} + if s.AmpConfiguration != nil { + if err := s.AmpConfiguration.Validate(); err != nil { + invalidParams.AddNested("AmpConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmpConfiguration sets the AmpConfiguration field's value. +func (s *Destination) SetAmpConfiguration(v *AmpConfiguration) *Destination { + s.AmpConfiguration = v + return s +} + +// A representation of an EKS source. +type EksConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of an EKS cluster. + // + // ClusterArn is a required field + ClusterArn *string `locationName:"clusterArn" type:"string" required:"true"` + + // A list of security group IDs specified for VPC configuration. + SecurityGroupIds []*string `locationName:"securityGroupIds" min:"1" type:"list"` + + // A list of subnet IDs specified for VPC configuration. + // + // SubnetIds is a required field + SubnetIds []*string `locationName:"subnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EksConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EksConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EksConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EksConfiguration"} + if s.ClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterArn")) + } + if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1)) + } + if s.SubnetIds == nil { + invalidParams.Add(request.NewErrParamRequired("SubnetIds")) + } + if s.SubnetIds != nil && len(s.SubnetIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SubnetIds", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *EksConfiguration) SetClusterArn(v string) *EksConfiguration { + s.ClusterArn = &v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *EksConfiguration) SetSecurityGroupIds(v []*string) *EksConfiguration { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *EksConfiguration) SetSubnetIds(v []*string) *EksConfiguration { + s.SubnetIds = v + return s +} + +// Represents the input of a GetDefaultScraperConfiguration operation. +type GetDefaultScraperConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"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 GetDefaultScraperConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDefaultScraperConfigurationInput) GoString() string { + return s.String() +} + +// Represents the output of a GetDefaultScraperConfiguration operation. +type GetDefaultScraperConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The default configuration. + // Configuration is automatically base64 encoded/decoded by the SDK. + // + // Configuration is a required field + Configuration []byte `locationName:"configuration" type:"blob" 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 GetDefaultScraperConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDefaultScraperConfigurationOutput) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *GetDefaultScraperConfigurationOutput) SetConfiguration(v []byte) *GetDefaultScraperConfigurationOutput { + s.Configuration = v + return s +} + // Unexpected error during processing of request. type InternalServerException struct { _ struct{} `type:"structure"` @@ -3761,6 +4879,117 @@ return s } +// Represents the input of a ListScrapers operation. +type ListScrapersInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A list of scraper filters. + Filters map[string][]*string `location:"querystring" locationName:"filters" min:"1" type:"map"` + + // Maximum results to return in response (default=100, maximum=1000). + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // Pagination token to request the next page in a paginated list. This token + // is obtained from the output of the previous ListScrapers request. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListScrapersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListScrapersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListScrapersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListScrapersInput"} + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListScrapersInput) SetFilters(v map[string][]*string) *ListScrapersInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListScrapersInput) SetMaxResults(v int64) *ListScrapersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListScrapersInput) SetNextToken(v string) *ListScrapersInput { + s.NextToken = &v + return s +} + +// Represents the output of a ListScrapers operation. +type ListScrapersOutput struct { + _ struct{} `type:"structure"` + + // Pagination token to use when requesting the next page in this list. + NextToken *string `locationName:"nextToken" type:"string"` + + // The list of scrapers, filtered down if a set of filters was provided in the + // request. + // + // Scrapers is a required field + Scrapers []*ScraperSummary `locationName:"scrapers" 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 ListScrapersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListScrapersOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListScrapersOutput) SetNextToken(v string) *ListScrapersOutput { + s.NextToken = &v + return s +} + +// SetScrapers sets the Scrapers field's value. +func (s *ListScrapersOutput) SetScrapers(v []*ScraperSummary) *ListScrapersOutput { + s.Scrapers = v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4649,6 +5878,362 @@ return s } +// A representation of a Prometheus configuration file. +type ScrapeConfiguration struct { + _ struct{} `type:"structure"` + + // Binary data representing a Prometheus configuration file. + // ConfigurationBlob is automatically base64 encoded/decoded by the SDK. + ConfigurationBlob []byte `locationName:"configurationBlob" type:"blob"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScrapeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScrapeConfiguration) GoString() string { + return s.String() +} + +// SetConfigurationBlob sets the ConfigurationBlob field's value. +func (s *ScrapeConfiguration) SetConfigurationBlob(v []byte) *ScrapeConfiguration { + s.ConfigurationBlob = v + return s +} + +// Represents the properties of a scraper. +type ScraperDescription struct { + _ struct{} `type:"structure"` + + // Alias of this scraper. + Alias *string `locationName:"alias" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of this scraper. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the scraper was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The destination that the scraper is producing metrics to. + // + // Destination is a required field + Destination *Destination `locationName:"destination" type:"structure" required:"true"` + + // The time when the scraper was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role that provides permissions + // for the scraper to dsicover, collect, and produce metrics on your behalf. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The configuration used to create the scraper. + // + // ScrapeConfiguration is a required field + ScrapeConfiguration *ScrapeConfiguration `locationName:"scrapeConfiguration" type:"structure" required:"true"` + + // Unique string identifying this scraper. + // + // ScraperId is a required field + ScraperId *string `locationName:"scraperId" min:"1" type:"string" required:"true"` + + // The source that the scraper is discovering and collecting metrics from. + // + // Source is a required field + Source *Source `locationName:"source" type:"structure" required:"true"` + + // The status of this scraper. + // + // Status is a required field + Status *ScraperStatus `locationName:"status" type:"structure" required:"true"` + + // The reason for failure if any. + StatusReason *string `locationName:"statusReason" min:"1" type:"string"` + + // The tags of this scraper. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScraperDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScraperDescription) GoString() string { + return s.String() +} + +// SetAlias sets the Alias field's value. +func (s *ScraperDescription) SetAlias(v string) *ScraperDescription { + s.Alias = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *ScraperDescription) SetArn(v string) *ScraperDescription { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ScraperDescription) SetCreatedAt(v time.Time) *ScraperDescription { + s.CreatedAt = &v + return s +} + +// SetDestination sets the Destination field's value. +func (s *ScraperDescription) SetDestination(v *Destination) *ScraperDescription { + s.Destination = v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ScraperDescription) SetLastModifiedAt(v time.Time) *ScraperDescription { + s.LastModifiedAt = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ScraperDescription) SetRoleArn(v string) *ScraperDescription { + s.RoleArn = &v + return s +} + +// SetScrapeConfiguration sets the ScrapeConfiguration field's value. +func (s *ScraperDescription) SetScrapeConfiguration(v *ScrapeConfiguration) *ScraperDescription { + s.ScrapeConfiguration = v + return s +} + +// SetScraperId sets the ScraperId field's value. +func (s *ScraperDescription) SetScraperId(v string) *ScraperDescription { + s.ScraperId = &v + return s +} + +// SetSource sets the Source field's value. +func (s *ScraperDescription) SetSource(v *Source) *ScraperDescription { + s.Source = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ScraperDescription) SetStatus(v *ScraperStatus) *ScraperDescription { + s.Status = v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *ScraperDescription) SetStatusReason(v string) *ScraperDescription { + s.StatusReason = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ScraperDescription) SetTags(v map[string]*string) *ScraperDescription { + s.Tags = v + return s +} + +// Represents the status of a scraper. +type ScraperStatus struct { + _ struct{} `type:"structure"` + + // Status code of this scraper. + // + // StatusCode is a required field + StatusCode *string `locationName:"statusCode" type:"string" required:"true" enum:"ScraperStatusCode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScraperStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScraperStatus) GoString() string { + return s.String() +} + +// SetStatusCode sets the StatusCode field's value. +func (s *ScraperStatus) SetStatusCode(v string) *ScraperStatus { + s.StatusCode = &v + return s +} + +// Represents a summary of the properties of a scraper. +type ScraperSummary struct { + _ struct{} `type:"structure"` + + // Alias of this scraper. + Alias *string `locationName:"alias" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of this scraper. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the scraper was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The destination that the scraper is producing metrics to. + // + // Destination is a required field + Destination *Destination `locationName:"destination" type:"structure" required:"true"` + + // The time when the scraper was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role that provides permissions + // for the scraper to dsicover, collect, and produce metrics on your behalf. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // Unique string identifying this scraper. + // + // ScraperId is a required field + ScraperId *string `locationName:"scraperId" min:"1" type:"string" required:"true"` + + // The source that the scraper is discovering and collecting metrics from. + // + // Source is a required field + Source *Source `locationName:"source" type:"structure" required:"true"` + + // The status of this scraper. + // + // Status is a required field + Status *ScraperStatus `locationName:"status" type:"structure" required:"true"` + + // The reason for failure if any. + StatusReason *string `locationName:"statusReason" min:"1" type:"string"` + + // The tags of this scraper. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScraperSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScraperSummary) GoString() string { + return s.String() +} + +// SetAlias sets the Alias field's value. +func (s *ScraperSummary) SetAlias(v string) *ScraperSummary { + s.Alias = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *ScraperSummary) SetArn(v string) *ScraperSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ScraperSummary) SetCreatedAt(v time.Time) *ScraperSummary { + s.CreatedAt = &v + return s +} + +// SetDestination sets the Destination field's value. +func (s *ScraperSummary) SetDestination(v *Destination) *ScraperSummary { + s.Destination = v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ScraperSummary) SetLastModifiedAt(v time.Time) *ScraperSummary { + s.LastModifiedAt = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ScraperSummary) SetRoleArn(v string) *ScraperSummary { + s.RoleArn = &v + return s +} + +// SetScraperId sets the ScraperId field's value. +func (s *ScraperSummary) SetScraperId(v string) *ScraperSummary { + s.ScraperId = &v + return s +} + +// SetSource sets the Source field's value. +func (s *ScraperSummary) SetSource(v *Source) *ScraperSummary { + s.Source = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ScraperSummary) SetStatus(v *ScraperStatus) *ScraperSummary { + s.Status = v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *ScraperSummary) SetStatusReason(v string) *ScraperSummary { + s.StatusReason = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ScraperSummary) SetTags(v map[string]*string) *ScraperSummary { + s.Tags = v + return s +} + // Request would cause a service quota to be exceeded. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -4734,6 +6319,54 @@ return s.RespMetadata.RequestID } +// A representation of a source that a scraper can discover and collect metrics +// from. +type Source struct { + _ struct{} `type:"structure"` + + // A representation of an EKS source. + EksConfiguration *EksConfiguration `locationName:"eksConfiguration" 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 Source) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Source) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Source) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Source"} + if s.EksConfiguration != nil { + if err := s.EksConfiguration.Validate(); err != nil { + invalidParams.AddNested("EksConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEksConfiguration sets the EksConfiguration field's value. +func (s *Source) SetEksConfiguration(v *EksConfiguration) *Source { + s.EksConfiguration = v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -5618,6 +7251,35 @@ } } +// State of a scraper. +const ( + // ScraperStatusCodeCreating is a ScraperStatusCode enum value + ScraperStatusCodeCreating = "CREATING" + + // ScraperStatusCodeActive is a ScraperStatusCode enum value + ScraperStatusCodeActive = "ACTIVE" + + // ScraperStatusCodeDeleting is a ScraperStatusCode enum value + ScraperStatusCodeDeleting = "DELETING" + + // ScraperStatusCodeCreationFailed is a ScraperStatusCode enum value + ScraperStatusCodeCreationFailed = "CREATION_FAILED" + + // ScraperStatusCodeDeletionFailed is a ScraperStatusCode enum value + ScraperStatusCodeDeletionFailed = "DELETION_FAILED" +) + +// ScraperStatusCode_Values returns all elements of the ScraperStatusCode enum +func ScraperStatusCode_Values() []string { + return []string{ + ScraperStatusCodeCreating, + ScraperStatusCodeActive, + ScraperStatusCodeDeleting, + ScraperStatusCodeCreationFailed, + ScraperStatusCodeDeletionFailed, + } +} + // Possible reasons a request failed validation. const ( // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/prometheusservice/prometheusserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/prometheusservice/prometheusserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/prometheusservice/prometheusserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/prometheusservice/prometheusserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,6 +72,10 @@ CreateRuleGroupsNamespaceWithContext(aws.Context, *prometheusservice.CreateRuleGroupsNamespaceInput, ...request.Option) (*prometheusservice.CreateRuleGroupsNamespaceOutput, error) CreateRuleGroupsNamespaceRequest(*prometheusservice.CreateRuleGroupsNamespaceInput) (*request.Request, *prometheusservice.CreateRuleGroupsNamespaceOutput) + CreateScraper(*prometheusservice.CreateScraperInput) (*prometheusservice.CreateScraperOutput, error) + CreateScraperWithContext(aws.Context, *prometheusservice.CreateScraperInput, ...request.Option) (*prometheusservice.CreateScraperOutput, error) + CreateScraperRequest(*prometheusservice.CreateScraperInput) (*request.Request, *prometheusservice.CreateScraperOutput) + CreateWorkspace(*prometheusservice.CreateWorkspaceInput) (*prometheusservice.CreateWorkspaceOutput, error) CreateWorkspaceWithContext(aws.Context, *prometheusservice.CreateWorkspaceInput, ...request.Option) (*prometheusservice.CreateWorkspaceOutput, error) CreateWorkspaceRequest(*prometheusservice.CreateWorkspaceInput) (*request.Request, *prometheusservice.CreateWorkspaceOutput) @@ -88,6 +92,10 @@ DeleteRuleGroupsNamespaceWithContext(aws.Context, *prometheusservice.DeleteRuleGroupsNamespaceInput, ...request.Option) (*prometheusservice.DeleteRuleGroupsNamespaceOutput, error) DeleteRuleGroupsNamespaceRequest(*prometheusservice.DeleteRuleGroupsNamespaceInput) (*request.Request, *prometheusservice.DeleteRuleGroupsNamespaceOutput) + DeleteScraper(*prometheusservice.DeleteScraperInput) (*prometheusservice.DeleteScraperOutput, error) + DeleteScraperWithContext(aws.Context, *prometheusservice.DeleteScraperInput, ...request.Option) (*prometheusservice.DeleteScraperOutput, error) + DeleteScraperRequest(*prometheusservice.DeleteScraperInput) (*request.Request, *prometheusservice.DeleteScraperOutput) + DeleteWorkspace(*prometheusservice.DeleteWorkspaceInput) (*prometheusservice.DeleteWorkspaceOutput, error) DeleteWorkspaceWithContext(aws.Context, *prometheusservice.DeleteWorkspaceInput, ...request.Option) (*prometheusservice.DeleteWorkspaceOutput, error) DeleteWorkspaceRequest(*prometheusservice.DeleteWorkspaceInput) (*request.Request, *prometheusservice.DeleteWorkspaceOutput) @@ -104,10 +112,18 @@ DescribeRuleGroupsNamespaceWithContext(aws.Context, *prometheusservice.DescribeRuleGroupsNamespaceInput, ...request.Option) (*prometheusservice.DescribeRuleGroupsNamespaceOutput, error) DescribeRuleGroupsNamespaceRequest(*prometheusservice.DescribeRuleGroupsNamespaceInput) (*request.Request, *prometheusservice.DescribeRuleGroupsNamespaceOutput) + DescribeScraper(*prometheusservice.DescribeScraperInput) (*prometheusservice.DescribeScraperOutput, error) + DescribeScraperWithContext(aws.Context, *prometheusservice.DescribeScraperInput, ...request.Option) (*prometheusservice.DescribeScraperOutput, error) + DescribeScraperRequest(*prometheusservice.DescribeScraperInput) (*request.Request, *prometheusservice.DescribeScraperOutput) + DescribeWorkspace(*prometheusservice.DescribeWorkspaceInput) (*prometheusservice.DescribeWorkspaceOutput, error) DescribeWorkspaceWithContext(aws.Context, *prometheusservice.DescribeWorkspaceInput, ...request.Option) (*prometheusservice.DescribeWorkspaceOutput, error) DescribeWorkspaceRequest(*prometheusservice.DescribeWorkspaceInput) (*request.Request, *prometheusservice.DescribeWorkspaceOutput) + GetDefaultScraperConfiguration(*prometheusservice.GetDefaultScraperConfigurationInput) (*prometheusservice.GetDefaultScraperConfigurationOutput, error) + GetDefaultScraperConfigurationWithContext(aws.Context, *prometheusservice.GetDefaultScraperConfigurationInput, ...request.Option) (*prometheusservice.GetDefaultScraperConfigurationOutput, error) + GetDefaultScraperConfigurationRequest(*prometheusservice.GetDefaultScraperConfigurationInput) (*request.Request, *prometheusservice.GetDefaultScraperConfigurationOutput) + ListRuleGroupsNamespaces(*prometheusservice.ListRuleGroupsNamespacesInput) (*prometheusservice.ListRuleGroupsNamespacesOutput, error) ListRuleGroupsNamespacesWithContext(aws.Context, *prometheusservice.ListRuleGroupsNamespacesInput, ...request.Option) (*prometheusservice.ListRuleGroupsNamespacesOutput, error) ListRuleGroupsNamespacesRequest(*prometheusservice.ListRuleGroupsNamespacesInput) (*request.Request, *prometheusservice.ListRuleGroupsNamespacesOutput) @@ -115,6 +131,13 @@ ListRuleGroupsNamespacesPages(*prometheusservice.ListRuleGroupsNamespacesInput, func(*prometheusservice.ListRuleGroupsNamespacesOutput, bool) bool) error ListRuleGroupsNamespacesPagesWithContext(aws.Context, *prometheusservice.ListRuleGroupsNamespacesInput, func(*prometheusservice.ListRuleGroupsNamespacesOutput, bool) bool, ...request.Option) error + ListScrapers(*prometheusservice.ListScrapersInput) (*prometheusservice.ListScrapersOutput, error) + ListScrapersWithContext(aws.Context, *prometheusservice.ListScrapersInput, ...request.Option) (*prometheusservice.ListScrapersOutput, error) + ListScrapersRequest(*prometheusservice.ListScrapersInput) (*request.Request, *prometheusservice.ListScrapersOutput) + + ListScrapersPages(*prometheusservice.ListScrapersInput, func(*prometheusservice.ListScrapersOutput, bool) bool) error + ListScrapersPagesWithContext(aws.Context, *prometheusservice.ListScrapersInput, func(*prometheusservice.ListScrapersOutput, bool) bool, ...request.Option) error + ListTagsForResource(*prometheusservice.ListTagsForResourceInput) (*prometheusservice.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *prometheusservice.ListTagsForResourceInput, ...request.Option) (*prometheusservice.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*prometheusservice.ListTagsForResourceInput) (*request.Request, *prometheusservice.ListTagsForResourceOutput) @@ -150,6 +173,12 @@ UpdateWorkspaceAliasWithContext(aws.Context, *prometheusservice.UpdateWorkspaceAliasInput, ...request.Option) (*prometheusservice.UpdateWorkspaceAliasOutput, error) UpdateWorkspaceAliasRequest(*prometheusservice.UpdateWorkspaceAliasInput) (*request.Request, *prometheusservice.UpdateWorkspaceAliasOutput) + WaitUntilScraperActive(*prometheusservice.DescribeScraperInput) error + WaitUntilScraperActiveWithContext(aws.Context, *prometheusservice.DescribeScraperInput, ...request.WaiterOption) error + + WaitUntilScraperDeleted(*prometheusservice.DescribeScraperInput) error + WaitUntilScraperDeletedWithContext(aws.Context, *prometheusservice.DescribeScraperInput, ...request.WaiterOption) error + WaitUntilWorkspaceActive(*prometheusservice.DescribeWorkspaceInput) error WaitUntilWorkspaceActiveWithContext(aws.Context, *prometheusservice.DescribeWorkspaceInput, ...request.WaiterOption) error diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/prometheusservice/waiters.go golang-github-aws-aws-sdk-go-1.48.14/service/prometheusservice/waiters.go --- golang-github-aws-aws-sdk-go-1.45.14/service/prometheusservice/waiters.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/prometheusservice/waiters.go 2023-12-06 19:28:18.000000000 +0000 @@ -9,6 +9,108 @@ "github.com/aws/aws-sdk-go/aws/request" ) +// WaitUntilScraperActive uses the Amazon Prometheus Service API operation +// DescribeScraper to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *PrometheusService) WaitUntilScraperActive(input *DescribeScraperInput) error { + return c.WaitUntilScraperActiveWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilScraperActiveWithContext is an extended version of WaitUntilScraperActive. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// 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 *PrometheusService) WaitUntilScraperActiveWithContext(ctx aws.Context, input *DescribeScraperInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilScraperActive", + MaxAttempts: 60, + Delay: request.ConstantWaiterDelay(2 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.SuccessWaiterState, + Matcher: request.PathWaiterMatch, Argument: "scraper.status.statusCode", + Expected: "ACTIVE", + }, + { + State: request.FailureWaiterState, + Matcher: request.PathWaiterMatch, Argument: "scraper.status.statusCode", + Expected: "CREATION_FAILED", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeScraperInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeScraperRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + +// WaitUntilScraperDeleted uses the Amazon Prometheus Service API operation +// DescribeScraper to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *PrometheusService) WaitUntilScraperDeleted(input *DescribeScraperInput) error { + return c.WaitUntilScraperDeletedWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilScraperDeletedWithContext is an extended version of WaitUntilScraperDeleted. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// 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 *PrometheusService) WaitUntilScraperDeletedWithContext(ctx aws.Context, input *DescribeScraperInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilScraperDeleted", + MaxAttempts: 60, + Delay: request.ConstantWaiterDelay(2 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.SuccessWaiterState, + Matcher: request.ErrorWaiterMatch, + Expected: "ResourceNotFoundException", + }, + { + State: request.FailureWaiterState, + Matcher: request.PathWaiterMatch, Argument: "scraper.status.statusCode", + Expected: "DELETION_FAILED", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeScraperInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeScraperRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + // WaitUntilWorkspaceActive uses the Amazon Prometheus Service API operation // DescribeWorkspace to wait for a condition to be met before returning. // If the condition is not met within the max attempt window, an error will diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/api.go golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,19624 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package qbusiness + +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/restjson" +) + +const opBatchDeleteDocument = "BatchDeleteDocument" + +// BatchDeleteDocumentRequest generates a "aws/request.Request" representing the +// client's request for the BatchDeleteDocument 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 BatchDeleteDocument for more information on using the BatchDeleteDocument +// 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 BatchDeleteDocumentRequest method. +// req, resp := client.BatchDeleteDocumentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchDeleteDocument +func (c *QBusiness) BatchDeleteDocumentRequest(input *BatchDeleteDocumentInput) (req *request.Request, output *BatchDeleteDocumentOutput) { + op := &request.Operation{ + Name: opBatchDeleteDocument, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/documents/delete", + } + + if input == nil { + input = &BatchDeleteDocumentInput{} + } + + output = &BatchDeleteDocumentOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchDeleteDocument API operation for QBusiness. +// +// Asynchronously deletes one or more documents added using the BatchPutDocument +// API from an Amazon Q index. +// +// You can see the progress of the deletion, and any error messages related +// to the process, by using CloudWatch. +// +// 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 QBusiness's +// API operation BatchDeleteDocument for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchDeleteDocument +func (c *QBusiness) BatchDeleteDocument(input *BatchDeleteDocumentInput) (*BatchDeleteDocumentOutput, error) { + req, out := c.BatchDeleteDocumentRequest(input) + return out, req.Send() +} + +// BatchDeleteDocumentWithContext is the same as BatchDeleteDocument with the addition of +// the ability to pass a context and additional request options. +// +// See BatchDeleteDocument 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 *QBusiness) BatchDeleteDocumentWithContext(ctx aws.Context, input *BatchDeleteDocumentInput, opts ...request.Option) (*BatchDeleteDocumentOutput, error) { + req, out := c.BatchDeleteDocumentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchPutDocument = "BatchPutDocument" + +// BatchPutDocumentRequest generates a "aws/request.Request" representing the +// client's request for the BatchPutDocument 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 BatchPutDocument for more information on using the BatchPutDocument +// 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 BatchPutDocumentRequest method. +// req, resp := client.BatchPutDocumentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchPutDocument +func (c *QBusiness) BatchPutDocumentRequest(input *BatchPutDocumentInput) (req *request.Request, output *BatchPutDocumentOutput) { + op := &request.Operation{ + Name: opBatchPutDocument, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/documents", + } + + if input == nil { + input = &BatchPutDocumentInput{} + } + + output = &BatchPutDocumentOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchPutDocument API operation for QBusiness. +// +// Adds one or more documents to an Amazon Q index. +// +// You use this API to: +// +// - ingest your structured and unstructured documents and documents stored +// in an Amazon S3 bucket into an Amazon Q index. +// +// - add custom attributes to documents in an Amazon Q index. +// +// - attach an access control list to the documents added to an Amazon Q +// index. +// +// You can see the progress of the deletion, and any error messages related +// to the process, by using CloudWatch. +// +// 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 QBusiness's +// API operation BatchPutDocument for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/BatchPutDocument +func (c *QBusiness) BatchPutDocument(input *BatchPutDocumentInput) (*BatchPutDocumentOutput, error) { + req, out := c.BatchPutDocumentRequest(input) + return out, req.Send() +} + +// BatchPutDocumentWithContext is the same as BatchPutDocument with the addition of +// the ability to pass a context and additional request options. +// +// See BatchPutDocument 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 *QBusiness) BatchPutDocumentWithContext(ctx aws.Context, input *BatchPutDocumentInput, opts ...request.Option) (*BatchPutDocumentOutput, error) { + req, out := c.BatchPutDocumentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opChatSync = "ChatSync" + +// ChatSyncRequest generates a "aws/request.Request" representing the +// client's request for the ChatSync 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 ChatSync for more information on using the ChatSync +// 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 ChatSyncRequest method. +// req, resp := client.ChatSyncRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ChatSync +func (c *QBusiness) ChatSyncRequest(input *ChatSyncInput) (req *request.Request, output *ChatSyncOutput) { + op := &request.Operation{ + Name: opChatSync, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/conversations?sync", + } + + if input == nil { + input = &ChatSyncInput{} + } + + output = &ChatSyncOutput{} + req = c.newRequest(op, input, output) + return +} + +// ChatSync API operation for QBusiness. +// +// Starts or continues a non-streaming Amazon Q conversation. +// +// 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 QBusiness's +// API operation ChatSync for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - LicenseNotFoundException +// You don't have permissions to perform the action because your license is +// inactive. Ask your admin to activate your license and try again after your +// licence is active. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ChatSync +func (c *QBusiness) ChatSync(input *ChatSyncInput) (*ChatSyncOutput, error) { + req, out := c.ChatSyncRequest(input) + return out, req.Send() +} + +// ChatSyncWithContext is the same as ChatSync with the addition of +// the ability to pass a context and additional request options. +// +// See ChatSync 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 *QBusiness) ChatSyncWithContext(ctx aws.Context, input *ChatSyncInput, opts ...request.Option) (*ChatSyncOutput, error) { + req, out := c.ChatSyncRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateApplication = "CreateApplication" + +// CreateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the CreateApplication 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 CreateApplication for more information on using the CreateApplication +// 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 CreateApplicationRequest method. +// req, resp := client.CreateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateApplication +func (c *QBusiness) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { + op := &request.Operation{ + Name: opCreateApplication, + HTTPMethod: "POST", + HTTPPath: "/applications", + } + + if input == nil { + input = &CreateApplicationInput{} + } + + output = &CreateApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateApplication API operation for QBusiness. +// +// Creates an Amazon Q application. +// +// 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 QBusiness's +// API operation CreateApplication for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateApplication +func (c *QBusiness) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + return out, req.Send() +} + +// CreateApplicationWithContext is the same as CreateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See CreateApplication 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 *QBusiness) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateIndex = "CreateIndex" + +// CreateIndexRequest generates a "aws/request.Request" representing the +// client's request for the CreateIndex 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 CreateIndex for more information on using the CreateIndex +// 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 CreateIndexRequest method. +// req, resp := client.CreateIndexRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateIndex +func (c *QBusiness) CreateIndexRequest(input *CreateIndexInput) (req *request.Request, output *CreateIndexOutput) { + op := &request.Operation{ + Name: opCreateIndex, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/indices", + } + + if input == nil { + input = &CreateIndexInput{} + } + + output = &CreateIndexOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateIndex API operation for QBusiness. +// +// Creates an Amazon Q index. +// +// To determine if index creation has completed, check the Status field returned +// from a call to DescribeIndex. The Status field is set to ACTIVE when the +// index is ready to use. +// +// Once the index is active, you can index your documents using the BatchPutDocument +// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_BatchPutDocument.html) +// API or the CreateDataSource (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CreateDataSource.html) +// API. +// +// 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 QBusiness's +// API operation CreateIndex for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateIndex +func (c *QBusiness) CreateIndex(input *CreateIndexInput) (*CreateIndexOutput, error) { + req, out := c.CreateIndexRequest(input) + return out, req.Send() +} + +// CreateIndexWithContext is the same as CreateIndex with the addition of +// the ability to pass a context and additional request options. +// +// See CreateIndex 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 *QBusiness) CreateIndexWithContext(ctx aws.Context, input *CreateIndexInput, opts ...request.Option) (*CreateIndexOutput, error) { + req, out := c.CreateIndexRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreatePlugin = "CreatePlugin" + +// CreatePluginRequest generates a "aws/request.Request" representing the +// client's request for the CreatePlugin 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 CreatePlugin for more information on using the CreatePlugin +// 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 CreatePluginRequest method. +// req, resp := client.CreatePluginRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreatePlugin +func (c *QBusiness) CreatePluginRequest(input *CreatePluginInput) (req *request.Request, output *CreatePluginOutput) { + op := &request.Operation{ + Name: opCreatePlugin, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/plugins", + } + + if input == nil { + input = &CreatePluginInput{} + } + + output = &CreatePluginOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePlugin API operation for QBusiness. +// +// Creates an Amazon Q plugin. +// +// 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 QBusiness's +// API operation CreatePlugin for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreatePlugin +func (c *QBusiness) CreatePlugin(input *CreatePluginInput) (*CreatePluginOutput, error) { + req, out := c.CreatePluginRequest(input) + return out, req.Send() +} + +// CreatePluginWithContext is the same as CreatePlugin with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePlugin 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 *QBusiness) CreatePluginWithContext(ctx aws.Context, input *CreatePluginInput, opts ...request.Option) (*CreatePluginOutput, error) { + req, out := c.CreatePluginRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateRetriever = "CreateRetriever" + +// CreateRetrieverRequest generates a "aws/request.Request" representing the +// client's request for the CreateRetriever 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 CreateRetriever for more information on using the CreateRetriever +// 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 CreateRetrieverRequest method. +// req, resp := client.CreateRetrieverRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateRetriever +func (c *QBusiness) CreateRetrieverRequest(input *CreateRetrieverInput) (req *request.Request, output *CreateRetrieverOutput) { + op := &request.Operation{ + Name: opCreateRetriever, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/retrievers", + } + + if input == nil { + input = &CreateRetrieverInput{} + } + + output = &CreateRetrieverOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRetriever API operation for QBusiness. +// +// Adds a retriever to your Amazon Q application. +// +// 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 QBusiness's +// API operation CreateRetriever for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateRetriever +func (c *QBusiness) CreateRetriever(input *CreateRetrieverInput) (*CreateRetrieverOutput, error) { + req, out := c.CreateRetrieverRequest(input) + return out, req.Send() +} + +// CreateRetrieverWithContext is the same as CreateRetriever with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRetriever 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 *QBusiness) CreateRetrieverWithContext(ctx aws.Context, input *CreateRetrieverInput, opts ...request.Option) (*CreateRetrieverOutput, error) { + req, out := c.CreateRetrieverRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateUser = "CreateUser" + +// CreateUserRequest generates a "aws/request.Request" representing the +// client's request for the CreateUser 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 CreateUser for more information on using the CreateUser +// 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 CreateUserRequest method. +// req, resp := client.CreateUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateUser +func (c *QBusiness) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput) { + op := &request.Operation{ + Name: opCreateUser, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/users", + } + + if input == nil { + input = &CreateUserInput{} + } + + output = &CreateUserOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// CreateUser API operation for QBusiness. +// +// Creates a universally unique identifier (UUID) mapped to a list of local +// user ids within an application. +// +// 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 QBusiness's +// API operation CreateUser for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateUser +func (c *QBusiness) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) { + req, out := c.CreateUserRequest(input) + return out, req.Send() +} + +// CreateUserWithContext is the same as CreateUser with the addition of +// the ability to pass a context and additional request options. +// +// See CreateUser 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 *QBusiness) CreateUserWithContext(ctx aws.Context, input *CreateUserInput, opts ...request.Option) (*CreateUserOutput, error) { + req, out := c.CreateUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateWebExperience = "CreateWebExperience" + +// CreateWebExperienceRequest generates a "aws/request.Request" representing the +// client's request for the CreateWebExperience 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 CreateWebExperience for more information on using the CreateWebExperience +// 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 CreateWebExperienceRequest method. +// req, resp := client.CreateWebExperienceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateWebExperience +func (c *QBusiness) CreateWebExperienceRequest(input *CreateWebExperienceInput) (req *request.Request, output *CreateWebExperienceOutput) { + op := &request.Operation{ + Name: opCreateWebExperience, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/experiences", + } + + if input == nil { + input = &CreateWebExperienceInput{} + } + + output = &CreateWebExperienceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateWebExperience API operation for QBusiness. +// +// Creates an Amazon Q web experience. +// +// 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 QBusiness's +// API operation CreateWebExperience for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/CreateWebExperience +func (c *QBusiness) CreateWebExperience(input *CreateWebExperienceInput) (*CreateWebExperienceOutput, error) { + req, out := c.CreateWebExperienceRequest(input) + return out, req.Send() +} + +// CreateWebExperienceWithContext is the same as CreateWebExperience with the addition of +// the ability to pass a context and additional request options. +// +// See CreateWebExperience 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 *QBusiness) CreateWebExperienceWithContext(ctx aws.Context, input *CreateWebExperienceInput, opts ...request.Option) (*CreateWebExperienceOutput, error) { + req, out := c.CreateWebExperienceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteApplication = "DeleteApplication" + +// DeleteApplicationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteApplication 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 DeleteApplication for more information on using the DeleteApplication +// 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 DeleteApplicationRequest method. +// req, resp := client.DeleteApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteApplication +func (c *QBusiness) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) { + op := &request.Operation{ + Name: opDeleteApplication, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}", + } + + if input == nil { + input = &DeleteApplicationInput{} + } + + output = &DeleteApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteApplication API operation for QBusiness. +// +// Deletes an Amazon Q application. +// +// 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 QBusiness's +// API operation DeleteApplication for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteApplication +func (c *QBusiness) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { + req, out := c.DeleteApplicationRequest(input) + return out, req.Send() +} + +// DeleteApplicationWithContext is the same as DeleteApplication with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteApplication 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 *QBusiness) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) { + req, out := c.DeleteApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteChatControlsConfiguration = "DeleteChatControlsConfiguration" + +// DeleteChatControlsConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteChatControlsConfiguration 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 DeleteChatControlsConfiguration for more information on using the DeleteChatControlsConfiguration +// 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 DeleteChatControlsConfigurationRequest method. +// req, resp := client.DeleteChatControlsConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteChatControlsConfiguration +func (c *QBusiness) DeleteChatControlsConfigurationRequest(input *DeleteChatControlsConfigurationInput) (req *request.Request, output *DeleteChatControlsConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteChatControlsConfiguration, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/chatcontrols", + } + + if input == nil { + input = &DeleteChatControlsConfigurationInput{} + } + + output = &DeleteChatControlsConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteChatControlsConfiguration API operation for QBusiness. +// +// Deletes chat controls configured for an existing Amazon Q application. +// +// 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 QBusiness's +// API operation DeleteChatControlsConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteChatControlsConfiguration +func (c *QBusiness) DeleteChatControlsConfiguration(input *DeleteChatControlsConfigurationInput) (*DeleteChatControlsConfigurationOutput, error) { + req, out := c.DeleteChatControlsConfigurationRequest(input) + return out, req.Send() +} + +// DeleteChatControlsConfigurationWithContext is the same as DeleteChatControlsConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteChatControlsConfiguration 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 *QBusiness) DeleteChatControlsConfigurationWithContext(ctx aws.Context, input *DeleteChatControlsConfigurationInput, opts ...request.Option) (*DeleteChatControlsConfigurationOutput, error) { + req, out := c.DeleteChatControlsConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteConversation = "DeleteConversation" + +// DeleteConversationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConversation 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 DeleteConversation for more information on using the DeleteConversation +// 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 DeleteConversationRequest method. +// req, resp := client.DeleteConversationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteConversation +func (c *QBusiness) DeleteConversationRequest(input *DeleteConversationInput) (req *request.Request, output *DeleteConversationOutput) { + op := &request.Operation{ + Name: opDeleteConversation, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/conversations/{conversationId}", + } + + if input == nil { + input = &DeleteConversationInput{} + } + + output = &DeleteConversationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConversation API operation for QBusiness. +// +// Deletes an Amazon Q web experience conversation. +// +// 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 QBusiness's +// API operation DeleteConversation for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - LicenseNotFoundException +// You don't have permissions to perform the action because your license is +// inactive. Ask your admin to activate your license and try again after your +// licence is active. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteConversation +func (c *QBusiness) DeleteConversation(input *DeleteConversationInput) (*DeleteConversationOutput, error) { + req, out := c.DeleteConversationRequest(input) + return out, req.Send() +} + +// DeleteConversationWithContext is the same as DeleteConversation with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConversation 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 *QBusiness) DeleteConversationWithContext(ctx aws.Context, input *DeleteConversationInput, opts ...request.Option) (*DeleteConversationOutput, error) { + req, out := c.DeleteConversationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDataSource = "DeleteDataSource" + +// DeleteDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDataSource 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 DeleteDataSource for more information on using the DeleteDataSource +// 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 DeleteDataSourceRequest method. +// req, resp := client.DeleteDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteDataSource +func (c *QBusiness) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) { + op := &request.Operation{ + Name: opDeleteDataSource, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + } + + if input == nil { + input = &DeleteDataSourceInput{} + } + + output = &DeleteDataSourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteDataSource API operation for QBusiness. +// +// Deletes an Amazon Q data source connector. While the data source is being +// deleted, the Status field returned by a call to the DescribeDataSource API +// is set to DELETING. +// +// 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 QBusiness's +// API operation DeleteDataSource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteDataSource +func (c *QBusiness) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + return out, req.Send() +} + +// DeleteDataSourceWithContext is the same as DeleteDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDataSource 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 *QBusiness) DeleteDataSourceWithContext(ctx aws.Context, input *DeleteDataSourceInput, opts ...request.Option) (*DeleteDataSourceOutput, error) { + req, out := c.DeleteDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteGroup = "DeleteGroup" + +// DeleteGroupRequest generates a "aws/request.Request" representing the +// client's request for the DeleteGroup 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 DeleteGroup for more information on using the DeleteGroup +// 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 DeleteGroupRequest method. +// req, resp := client.DeleteGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteGroup +func (c *QBusiness) DeleteGroupRequest(input *DeleteGroupInput) (req *request.Request, output *DeleteGroupOutput) { + op := &request.Operation{ + Name: opDeleteGroup, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups/{groupName}", + } + + if input == nil { + input = &DeleteGroupInput{} + } + + output = &DeleteGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteGroup API operation for QBusiness. +// +// Deletes a group so that all users and sub groups that belong to the group +// can no longer access documents only available to that group. For example, +// after deleting the group "Summer Interns", all interns who belonged to that +// group no longer see intern-only documents in their chat results. +// +// If you want to delete, update, or replace users or sub groups of a group, +// you need to use the PutGroup operation. For example, if a user in the group +// "Engineering" leaves the engineering team and another user takes their place, +// you provide an updated list of users or sub groups that belong to the "Engineering" +// group when calling PutGroup. +// +// 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 QBusiness's +// API operation DeleteGroup for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteGroup +func (c *QBusiness) DeleteGroup(input *DeleteGroupInput) (*DeleteGroupOutput, error) { + req, out := c.DeleteGroupRequest(input) + return out, req.Send() +} + +// DeleteGroupWithContext is the same as DeleteGroup with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteGroup 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 *QBusiness) DeleteGroupWithContext(ctx aws.Context, input *DeleteGroupInput, opts ...request.Option) (*DeleteGroupOutput, error) { + req, out := c.DeleteGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteIndex = "DeleteIndex" + +// DeleteIndexRequest generates a "aws/request.Request" representing the +// client's request for the DeleteIndex 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 DeleteIndex for more information on using the DeleteIndex +// 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 DeleteIndexRequest method. +// req, resp := client.DeleteIndexRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteIndex +func (c *QBusiness) DeleteIndexRequest(input *DeleteIndexInput) (req *request.Request, output *DeleteIndexOutput) { + op := &request.Operation{ + Name: opDeleteIndex, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/indices/{indexId}", + } + + if input == nil { + input = &DeleteIndexInput{} + } + + output = &DeleteIndexOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteIndex API operation for QBusiness. +// +// Deletes an Amazon Q index. +// +// 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 QBusiness's +// API operation DeleteIndex for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteIndex +func (c *QBusiness) DeleteIndex(input *DeleteIndexInput) (*DeleteIndexOutput, error) { + req, out := c.DeleteIndexRequest(input) + return out, req.Send() +} + +// DeleteIndexWithContext is the same as DeleteIndex with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteIndex 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 *QBusiness) DeleteIndexWithContext(ctx aws.Context, input *DeleteIndexInput, opts ...request.Option) (*DeleteIndexOutput, error) { + req, out := c.DeleteIndexRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeletePlugin = "DeletePlugin" + +// DeletePluginRequest generates a "aws/request.Request" representing the +// client's request for the DeletePlugin 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 DeletePlugin for more information on using the DeletePlugin +// 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 DeletePluginRequest method. +// req, resp := client.DeletePluginRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeletePlugin +func (c *QBusiness) DeletePluginRequest(input *DeletePluginInput) (req *request.Request, output *DeletePluginOutput) { + op := &request.Operation{ + Name: opDeletePlugin, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/plugins/{pluginId}", + } + + if input == nil { + input = &DeletePluginInput{} + } + + output = &DeletePluginOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeletePlugin API operation for QBusiness. +// +// Deletes an Amazon Q plugin. +// +// 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 QBusiness's +// API operation DeletePlugin for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeletePlugin +func (c *QBusiness) DeletePlugin(input *DeletePluginInput) (*DeletePluginOutput, error) { + req, out := c.DeletePluginRequest(input) + return out, req.Send() +} + +// DeletePluginWithContext is the same as DeletePlugin with the addition of +// the ability to pass a context and additional request options. +// +// See DeletePlugin 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 *QBusiness) DeletePluginWithContext(ctx aws.Context, input *DeletePluginInput, opts ...request.Option) (*DeletePluginOutput, error) { + req, out := c.DeletePluginRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteRetriever = "DeleteRetriever" + +// DeleteRetrieverRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRetriever 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 DeleteRetriever for more information on using the DeleteRetriever +// 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 DeleteRetrieverRequest method. +// req, resp := client.DeleteRetrieverRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteRetriever +func (c *QBusiness) DeleteRetrieverRequest(input *DeleteRetrieverInput) (req *request.Request, output *DeleteRetrieverOutput) { + op := &request.Operation{ + Name: opDeleteRetriever, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/retrievers/{retrieverId}", + } + + if input == nil { + input = &DeleteRetrieverInput{} + } + + output = &DeleteRetrieverOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteRetriever API operation for QBusiness. +// +// Deletes the retriever used by an Amazon Q application. +// +// 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 QBusiness's +// API operation DeleteRetriever for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteRetriever +func (c *QBusiness) DeleteRetriever(input *DeleteRetrieverInput) (*DeleteRetrieverOutput, error) { + req, out := c.DeleteRetrieverRequest(input) + return out, req.Send() +} + +// DeleteRetrieverWithContext is the same as DeleteRetriever with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRetriever 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 *QBusiness) DeleteRetrieverWithContext(ctx aws.Context, input *DeleteRetrieverInput, opts ...request.Option) (*DeleteRetrieverOutput, error) { + req, out := c.DeleteRetrieverRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteUser = "DeleteUser" + +// DeleteUserRequest generates a "aws/request.Request" representing the +// client's request for the DeleteUser 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 DeleteUser for more information on using the DeleteUser +// 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 DeleteUserRequest method. +// req, resp := client.DeleteUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteUser +func (c *QBusiness) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { + op := &request.Operation{ + Name: opDeleteUser, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/users/{userId}", + } + + if input == nil { + input = &DeleteUserInput{} + } + + output = &DeleteUserOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteUser API operation for QBusiness. +// +// Deletes a user by email id. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for QBusiness's +// API operation DeleteUser for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteUser +func (c *QBusiness) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { + req, out := c.DeleteUserRequest(input) + return out, req.Send() +} + +// DeleteUserWithContext is the same as DeleteUser with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteUser 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 *QBusiness) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput, opts ...request.Option) (*DeleteUserOutput, error) { + req, out := c.DeleteUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteWebExperience = "DeleteWebExperience" + +// DeleteWebExperienceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteWebExperience 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 DeleteWebExperience for more information on using the DeleteWebExperience +// 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 DeleteWebExperienceRequest method. +// req, resp := client.DeleteWebExperienceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteWebExperience +func (c *QBusiness) DeleteWebExperienceRequest(input *DeleteWebExperienceInput) (req *request.Request, output *DeleteWebExperienceOutput) { + op := &request.Operation{ + Name: opDeleteWebExperience, + HTTPMethod: "DELETE", + HTTPPath: "/applications/{applicationId}/experiences/{webExperienceId}", + } + + if input == nil { + input = &DeleteWebExperienceInput{} + } + + output = &DeleteWebExperienceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteWebExperience API operation for QBusiness. +// +// Deletes an Amazon Q web experience. +// +// 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 QBusiness's +// API operation DeleteWebExperience for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/DeleteWebExperience +func (c *QBusiness) DeleteWebExperience(input *DeleteWebExperienceInput) (*DeleteWebExperienceOutput, error) { + req, out := c.DeleteWebExperienceRequest(input) + return out, req.Send() +} + +// DeleteWebExperienceWithContext is the same as DeleteWebExperience with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteWebExperience 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 *QBusiness) DeleteWebExperienceWithContext(ctx aws.Context, input *DeleteWebExperienceInput, opts ...request.Option) (*DeleteWebExperienceOutput, error) { + req, out := c.DeleteWebExperienceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetApplication = "GetApplication" + +// GetApplicationRequest generates a "aws/request.Request" representing the +// client's request for the GetApplication 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 GetApplication for more information on using the GetApplication +// 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 GetApplicationRequest method. +// req, resp := client.GetApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetApplication +func (c *QBusiness) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { + op := &request.Operation{ + Name: opGetApplication, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}", + } + + if input == nil { + input = &GetApplicationInput{} + } + + output = &GetApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplication API operation for QBusiness. +// +// Gets information about an existing Amazon Q application. +// +// 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 QBusiness's +// API operation GetApplication for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetApplication +func (c *QBusiness) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + return out, req.Send() +} + +// GetApplicationWithContext is the same as GetApplication with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplication 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 *QBusiness) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetChatControlsConfiguration = "GetChatControlsConfiguration" + +// GetChatControlsConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetChatControlsConfiguration 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 GetChatControlsConfiguration for more information on using the GetChatControlsConfiguration +// 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 GetChatControlsConfigurationRequest method. +// req, resp := client.GetChatControlsConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetChatControlsConfiguration +func (c *QBusiness) GetChatControlsConfigurationRequest(input *GetChatControlsConfigurationInput) (req *request.Request, output *GetChatControlsConfigurationOutput) { + op := &request.Operation{ + Name: opGetChatControlsConfiguration, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/chatcontrols", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetChatControlsConfigurationInput{} + } + + output = &GetChatControlsConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetChatControlsConfiguration API operation for QBusiness. +// +// Gets information about an chat controls configured for an existing Amazon +// Q application. +// +// 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 QBusiness's +// API operation GetChatControlsConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetChatControlsConfiguration +func (c *QBusiness) GetChatControlsConfiguration(input *GetChatControlsConfigurationInput) (*GetChatControlsConfigurationOutput, error) { + req, out := c.GetChatControlsConfigurationRequest(input) + return out, req.Send() +} + +// GetChatControlsConfigurationWithContext is the same as GetChatControlsConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetChatControlsConfiguration 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 *QBusiness) GetChatControlsConfigurationWithContext(ctx aws.Context, input *GetChatControlsConfigurationInput, opts ...request.Option) (*GetChatControlsConfigurationOutput, error) { + req, out := c.GetChatControlsConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetChatControlsConfigurationPages iterates over the pages of a GetChatControlsConfiguration operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetChatControlsConfiguration 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 GetChatControlsConfiguration operation. +// pageNum := 0 +// err := client.GetChatControlsConfigurationPages(params, +// func(page *qbusiness.GetChatControlsConfigurationOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) GetChatControlsConfigurationPages(input *GetChatControlsConfigurationInput, fn func(*GetChatControlsConfigurationOutput, bool) bool) error { + return c.GetChatControlsConfigurationPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetChatControlsConfigurationPagesWithContext same as GetChatControlsConfigurationPages 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 *QBusiness) GetChatControlsConfigurationPagesWithContext(ctx aws.Context, input *GetChatControlsConfigurationInput, fn func(*GetChatControlsConfigurationOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetChatControlsConfigurationInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetChatControlsConfigurationRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetChatControlsConfigurationOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opGetDataSource = "GetDataSource" + +// GetDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSource 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 GetDataSource for more information on using the GetDataSource +// 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 GetDataSourceRequest method. +// req, resp := client.GetDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDataSource +func (c *QBusiness) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) { + op := &request.Operation{ + Name: opGetDataSource, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + } + + if input == nil { + input = &GetDataSourceInput{} + } + + output = &GetDataSourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSource API operation for QBusiness. +// +// Gets information about an existing Amazon Q data source connector. +// +// 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 QBusiness's +// API operation GetDataSource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetDataSource +func (c *QBusiness) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + return out, req.Send() +} + +// GetDataSourceWithContext is the same as GetDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSource 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 *QBusiness) GetDataSourceWithContext(ctx aws.Context, input *GetDataSourceInput, opts ...request.Option) (*GetDataSourceOutput, error) { + req, out := c.GetDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetGroup = "GetGroup" + +// GetGroupRequest generates a "aws/request.Request" representing the +// client's request for the GetGroup 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 GetGroup for more information on using the GetGroup +// 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 GetGroupRequest method. +// req, resp := client.GetGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetGroup +func (c *QBusiness) GetGroupRequest(input *GetGroupInput) (req *request.Request, output *GetGroupOutput) { + op := &request.Operation{ + Name: opGetGroup, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups/{groupName}", + } + + if input == nil { + input = &GetGroupInput{} + } + + output = &GetGroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetGroup API operation for QBusiness. +// +// Describes a group by group 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 QBusiness's +// API operation GetGroup for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetGroup +func (c *QBusiness) GetGroup(input *GetGroupInput) (*GetGroupOutput, error) { + req, out := c.GetGroupRequest(input) + return out, req.Send() +} + +// GetGroupWithContext is the same as GetGroup with the addition of +// the ability to pass a context and additional request options. +// +// See GetGroup 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 *QBusiness) GetGroupWithContext(ctx aws.Context, input *GetGroupInput, opts ...request.Option) (*GetGroupOutput, error) { + req, out := c.GetGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetIndex = "GetIndex" + +// GetIndexRequest generates a "aws/request.Request" representing the +// client's request for the GetIndex 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 GetIndex for more information on using the GetIndex +// 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 GetIndexRequest method. +// req, resp := client.GetIndexRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetIndex +func (c *QBusiness) GetIndexRequest(input *GetIndexInput) (req *request.Request, output *GetIndexOutput) { + op := &request.Operation{ + Name: opGetIndex, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices/{indexId}", + } + + if input == nil { + input = &GetIndexInput{} + } + + output = &GetIndexOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetIndex API operation for QBusiness. +// +// Gets information about an existing Amazon Q index. +// +// 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 QBusiness's +// API operation GetIndex for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetIndex +func (c *QBusiness) GetIndex(input *GetIndexInput) (*GetIndexOutput, error) { + req, out := c.GetIndexRequest(input) + return out, req.Send() +} + +// GetIndexWithContext is the same as GetIndex with the addition of +// the ability to pass a context and additional request options. +// +// See GetIndex 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 *QBusiness) GetIndexWithContext(ctx aws.Context, input *GetIndexInput, opts ...request.Option) (*GetIndexOutput, error) { + req, out := c.GetIndexRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetPlugin = "GetPlugin" + +// GetPluginRequest generates a "aws/request.Request" representing the +// client's request for the GetPlugin 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 GetPlugin for more information on using the GetPlugin +// 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 GetPluginRequest method. +// req, resp := client.GetPluginRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetPlugin +func (c *QBusiness) GetPluginRequest(input *GetPluginInput) (req *request.Request, output *GetPluginOutput) { + op := &request.Operation{ + Name: opGetPlugin, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/plugins/{pluginId}", + } + + if input == nil { + input = &GetPluginInput{} + } + + output = &GetPluginOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPlugin API operation for QBusiness. +// +// Gets information about an existing Amazon Q plugin. +// +// 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 QBusiness's +// API operation GetPlugin for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetPlugin +func (c *QBusiness) GetPlugin(input *GetPluginInput) (*GetPluginOutput, error) { + req, out := c.GetPluginRequest(input) + return out, req.Send() +} + +// GetPluginWithContext is the same as GetPlugin with the addition of +// the ability to pass a context and additional request options. +// +// See GetPlugin 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 *QBusiness) GetPluginWithContext(ctx aws.Context, input *GetPluginInput, opts ...request.Option) (*GetPluginOutput, error) { + req, out := c.GetPluginRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRetriever = "GetRetriever" + +// GetRetrieverRequest generates a "aws/request.Request" representing the +// client's request for the GetRetriever 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 GetRetriever for more information on using the GetRetriever +// 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 GetRetrieverRequest method. +// req, resp := client.GetRetrieverRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetRetriever +func (c *QBusiness) GetRetrieverRequest(input *GetRetrieverInput) (req *request.Request, output *GetRetrieverOutput) { + op := &request.Operation{ + Name: opGetRetriever, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/retrievers/{retrieverId}", + } + + if input == nil { + input = &GetRetrieverInput{} + } + + output = &GetRetrieverOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRetriever API operation for QBusiness. +// +// Gets information about an existing retriever used by an Amazon Q application. +// +// 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 QBusiness's +// API operation GetRetriever for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetRetriever +func (c *QBusiness) GetRetriever(input *GetRetrieverInput) (*GetRetrieverOutput, error) { + req, out := c.GetRetrieverRequest(input) + return out, req.Send() +} + +// GetRetrieverWithContext is the same as GetRetriever with the addition of +// the ability to pass a context and additional request options. +// +// See GetRetriever 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 *QBusiness) GetRetrieverWithContext(ctx aws.Context, input *GetRetrieverInput, opts ...request.Option) (*GetRetrieverOutput, error) { + req, out := c.GetRetrieverRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetUser = "GetUser" + +// GetUserRequest generates a "aws/request.Request" representing the +// client's request for the GetUser 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 GetUser for more information on using the GetUser +// 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 GetUserRequest method. +// req, resp := client.GetUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetUser +func (c *QBusiness) GetUserRequest(input *GetUserInput) (req *request.Request, output *GetUserOutput) { + op := &request.Operation{ + Name: opGetUser, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/users/{userId}", + } + + if input == nil { + input = &GetUserInput{} + } + + output = &GetUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetUser API operation for QBusiness. +// +// Describes the universally unique identifier (UUID) associated with a local +// user in a data source. +// +// 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 QBusiness's +// API operation GetUser for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetUser +func (c *QBusiness) GetUser(input *GetUserInput) (*GetUserOutput, error) { + req, out := c.GetUserRequest(input) + return out, req.Send() +} + +// GetUserWithContext is the same as GetUser with the addition of +// the ability to pass a context and additional request options. +// +// See GetUser 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 *QBusiness) GetUserWithContext(ctx aws.Context, input *GetUserInput, opts ...request.Option) (*GetUserOutput, error) { + req, out := c.GetUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetWebExperience = "GetWebExperience" + +// GetWebExperienceRequest generates a "aws/request.Request" representing the +// client's request for the GetWebExperience 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 GetWebExperience for more information on using the GetWebExperience +// 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 GetWebExperienceRequest method. +// req, resp := client.GetWebExperienceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetWebExperience +func (c *QBusiness) GetWebExperienceRequest(input *GetWebExperienceInput) (req *request.Request, output *GetWebExperienceOutput) { + op := &request.Operation{ + Name: opGetWebExperience, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/experiences/{webExperienceId}", + } + + if input == nil { + input = &GetWebExperienceInput{} + } + + output = &GetWebExperienceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetWebExperience API operation for QBusiness. +// +// Gets information about an existing Amazon Q web experience. +// +// 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 QBusiness's +// API operation GetWebExperience for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/GetWebExperience +func (c *QBusiness) GetWebExperience(input *GetWebExperienceInput) (*GetWebExperienceOutput, error) { + req, out := c.GetWebExperienceRequest(input) + return out, req.Send() +} + +// GetWebExperienceWithContext is the same as GetWebExperience with the addition of +// the ability to pass a context and additional request options. +// +// See GetWebExperience 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 *QBusiness) GetWebExperienceWithContext(ctx aws.Context, input *GetWebExperienceInput, opts ...request.Option) (*GetWebExperienceOutput, error) { + req, out := c.GetWebExperienceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListApplications = "ListApplications" + +// ListApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplications 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 ListApplications for more information on using the ListApplications +// 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 ListApplicationsRequest method. +// req, resp := client.ListApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListApplications +func (c *QBusiness) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { + op := &request.Operation{ + Name: opListApplications, + HTTPMethod: "GET", + HTTPPath: "/applications", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationsInput{} + } + + output = &ListApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplications API operation for QBusiness. +// +// Lists Amazon Q applications. +// +// 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 QBusiness's +// API operation ListApplications for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListApplications +func (c *QBusiness) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + return out, req.Send() +} + +// ListApplicationsWithContext is the same as ListApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplications 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 *QBusiness) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationsPages iterates over the pages of a ListApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplications 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 ListApplications operation. +// pageNum := 0 +// err := client.ListApplicationsPages(params, +// func(page *qbusiness.ListApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error { + return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationsPagesWithContext same as ListApplicationsPages 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 *QBusiness) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListConversations = "ListConversations" + +// ListConversationsRequest generates a "aws/request.Request" representing the +// client's request for the ListConversations 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 ListConversations for more information on using the ListConversations +// 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 ListConversationsRequest method. +// req, resp := client.ListConversationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListConversations +func (c *QBusiness) ListConversationsRequest(input *ListConversationsInput) (req *request.Request, output *ListConversationsOutput) { + op := &request.Operation{ + Name: opListConversations, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/conversations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConversationsInput{} + } + + output = &ListConversationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConversations API operation for QBusiness. +// +// Lists one or more Amazon Q conversations. +// +// 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 QBusiness's +// API operation ListConversations for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - LicenseNotFoundException +// You don't have permissions to perform the action because your license is +// inactive. Ask your admin to activate your license and try again after your +// licence is active. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListConversations +func (c *QBusiness) ListConversations(input *ListConversationsInput) (*ListConversationsOutput, error) { + req, out := c.ListConversationsRequest(input) + return out, req.Send() +} + +// ListConversationsWithContext is the same as ListConversations with the addition of +// the ability to pass a context and additional request options. +// +// See ListConversations 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 *QBusiness) ListConversationsWithContext(ctx aws.Context, input *ListConversationsInput, opts ...request.Option) (*ListConversationsOutput, error) { + req, out := c.ListConversationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConversationsPages iterates over the pages of a ListConversations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConversations 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 ListConversations operation. +// pageNum := 0 +// err := client.ListConversationsPages(params, +// func(page *qbusiness.ListConversationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListConversationsPages(input *ListConversationsInput, fn func(*ListConversationsOutput, bool) bool) error { + return c.ListConversationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConversationsPagesWithContext same as ListConversationsPages 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 *QBusiness) ListConversationsPagesWithContext(ctx aws.Context, input *ListConversationsInput, fn func(*ListConversationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConversationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConversationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConversationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSourceSyncJobs = "ListDataSourceSyncJobs" + +// ListDataSourceSyncJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSourceSyncJobs 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 ListDataSourceSyncJobs for more information on using the ListDataSourceSyncJobs +// 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 ListDataSourceSyncJobsRequest method. +// req, resp := client.ListDataSourceSyncJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSourceSyncJobs +func (c *QBusiness) ListDataSourceSyncJobsRequest(input *ListDataSourceSyncJobsInput) (req *request.Request, output *ListDataSourceSyncJobsOutput) { + op := &request.Operation{ + Name: opListDataSourceSyncJobs, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/syncjobs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDataSourceSyncJobsInput{} + } + + output = &ListDataSourceSyncJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSourceSyncJobs API operation for QBusiness. +// +// Get information about an Amazon Q data source connector synchronization. +// +// 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 QBusiness's +// API operation ListDataSourceSyncJobs for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSourceSyncJobs +func (c *QBusiness) ListDataSourceSyncJobs(input *ListDataSourceSyncJobsInput) (*ListDataSourceSyncJobsOutput, error) { + req, out := c.ListDataSourceSyncJobsRequest(input) + return out, req.Send() +} + +// ListDataSourceSyncJobsWithContext is the same as ListDataSourceSyncJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSourceSyncJobs 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 *QBusiness) ListDataSourceSyncJobsWithContext(ctx aws.Context, input *ListDataSourceSyncJobsInput, opts ...request.Option) (*ListDataSourceSyncJobsOutput, error) { + req, out := c.ListDataSourceSyncJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDataSourceSyncJobsPages iterates over the pages of a ListDataSourceSyncJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSourceSyncJobs 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 ListDataSourceSyncJobs operation. +// pageNum := 0 +// err := client.ListDataSourceSyncJobsPages(params, +// func(page *qbusiness.ListDataSourceSyncJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListDataSourceSyncJobsPages(input *ListDataSourceSyncJobsInput, fn func(*ListDataSourceSyncJobsOutput, bool) bool) error { + return c.ListDataSourceSyncJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourceSyncJobsPagesWithContext same as ListDataSourceSyncJobsPages 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 *QBusiness) ListDataSourceSyncJobsPagesWithContext(ctx aws.Context, input *ListDataSourceSyncJobsInput, fn func(*ListDataSourceSyncJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourceSyncJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourceSyncJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourceSyncJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSources = "ListDataSources" + +// ListDataSourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSources 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 ListDataSources for more information on using the ListDataSources +// 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 ListDataSourcesRequest method. +// req, resp := client.ListDataSourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSources +func (c *QBusiness) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { + op := &request.Operation{ + Name: opListDataSources, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDataSourcesInput{} + } + + output = &ListDataSourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDataSources API operation for QBusiness. +// +// Lists the Amazon Q data source connectors that you have created. +// +// 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 QBusiness's +// API operation ListDataSources for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDataSources +func (c *QBusiness) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + return out, req.Send() +} + +// ListDataSourcesWithContext is the same as ListDataSources with the addition of +// the ability to pass a context and additional request options. +// +// See ListDataSources 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 *QBusiness) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDataSourcesPages iterates over the pages of a ListDataSources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSources 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 ListDataSources operation. +// pageNum := 0 +// err := client.ListDataSourcesPages(params, +// func(page *qbusiness.ListDataSourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListDataSourcesPages(input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool) error { + return c.ListDataSourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourcesPagesWithContext same as ListDataSourcesPages 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 *QBusiness) ListDataSourcesPagesWithContext(ctx aws.Context, input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDocuments = "ListDocuments" + +// ListDocumentsRequest generates a "aws/request.Request" representing the +// client's request for the ListDocuments 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 ListDocuments for more information on using the ListDocuments +// 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 ListDocumentsRequest method. +// req, resp := client.ListDocumentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDocuments +func (c *QBusiness) ListDocumentsRequest(input *ListDocumentsInput) (req *request.Request, output *ListDocumentsOutput) { + op := &request.Operation{ + Name: opListDocuments, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/index/{indexId}/documents", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDocumentsInput{} + } + + output = &ListDocumentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDocuments API operation for QBusiness. +// +// A list of documents attached to an index. +// +// 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 QBusiness's +// API operation ListDocuments for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListDocuments +func (c *QBusiness) ListDocuments(input *ListDocumentsInput) (*ListDocumentsOutput, error) { + req, out := c.ListDocumentsRequest(input) + return out, req.Send() +} + +// ListDocumentsWithContext is the same as ListDocuments with the addition of +// the ability to pass a context and additional request options. +// +// See ListDocuments 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 *QBusiness) ListDocumentsWithContext(ctx aws.Context, input *ListDocumentsInput, opts ...request.Option) (*ListDocumentsOutput, error) { + req, out := c.ListDocumentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDocumentsPages iterates over the pages of a ListDocuments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDocuments 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 ListDocuments operation. +// pageNum := 0 +// err := client.ListDocumentsPages(params, +// func(page *qbusiness.ListDocumentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListDocumentsPages(input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool) error { + return c.ListDocumentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDocumentsPagesWithContext same as ListDocumentsPages 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 *QBusiness) ListDocumentsPagesWithContext(ctx aws.Context, input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDocumentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDocumentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDocumentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListGroups = "ListGroups" + +// ListGroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListGroups 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 ListGroups for more information on using the ListGroups +// 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 ListGroupsRequest method. +// req, resp := client.ListGroupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListGroups +func (c *QBusiness) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) { + op := &request.Operation{ + Name: opListGroups, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListGroupsInput{} + } + + output = &ListGroupsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListGroups API operation for QBusiness. +// +// Provides a list of groups that are mapped to users. +// +// 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 QBusiness's +// API operation ListGroups for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListGroups +func (c *QBusiness) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) { + req, out := c.ListGroupsRequest(input) + return out, req.Send() +} + +// ListGroupsWithContext is the same as ListGroups with the addition of +// the ability to pass a context and additional request options. +// +// See ListGroups 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 *QBusiness) ListGroupsWithContext(ctx aws.Context, input *ListGroupsInput, opts ...request.Option) (*ListGroupsOutput, error) { + req, out := c.ListGroupsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListGroupsPages iterates over the pages of a ListGroups operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListGroups 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 ListGroups operation. +// pageNum := 0 +// err := client.ListGroupsPages(params, +// func(page *qbusiness.ListGroupsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListGroupsPages(input *ListGroupsInput, fn func(*ListGroupsOutput, bool) bool) error { + return c.ListGroupsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListGroupsPagesWithContext same as ListGroupsPages 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 *QBusiness) ListGroupsPagesWithContext(ctx aws.Context, input *ListGroupsInput, fn func(*ListGroupsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListGroupsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListGroupsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListGroupsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListIndices = "ListIndices" + +// ListIndicesRequest generates a "aws/request.Request" representing the +// client's request for the ListIndices 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 ListIndices for more information on using the ListIndices +// 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 ListIndicesRequest method. +// req, resp := client.ListIndicesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListIndices +func (c *QBusiness) ListIndicesRequest(input *ListIndicesInput) (req *request.Request, output *ListIndicesOutput) { + op := &request.Operation{ + Name: opListIndices, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/indices", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIndicesInput{} + } + + output = &ListIndicesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIndices API operation for QBusiness. +// +// Lists the Amazon Q indices you have created. +// +// 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 QBusiness's +// API operation ListIndices for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListIndices +func (c *QBusiness) ListIndices(input *ListIndicesInput) (*ListIndicesOutput, error) { + req, out := c.ListIndicesRequest(input) + return out, req.Send() +} + +// ListIndicesWithContext is the same as ListIndices with the addition of +// the ability to pass a context and additional request options. +// +// See ListIndices 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 *QBusiness) ListIndicesWithContext(ctx aws.Context, input *ListIndicesInput, opts ...request.Option) (*ListIndicesOutput, error) { + req, out := c.ListIndicesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIndicesPages iterates over the pages of a ListIndices operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIndices 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 ListIndices operation. +// pageNum := 0 +// err := client.ListIndicesPages(params, +// func(page *qbusiness.ListIndicesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListIndicesPages(input *ListIndicesInput, fn func(*ListIndicesOutput, bool) bool) error { + return c.ListIndicesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIndicesPagesWithContext same as ListIndicesPages 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 *QBusiness) ListIndicesPagesWithContext(ctx aws.Context, input *ListIndicesInput, fn func(*ListIndicesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListIndicesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListIndicesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListIndicesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListMessages = "ListMessages" + +// ListMessagesRequest generates a "aws/request.Request" representing the +// client's request for the ListMessages 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 ListMessages for more information on using the ListMessages +// 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 ListMessagesRequest method. +// req, resp := client.ListMessagesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListMessages +func (c *QBusiness) ListMessagesRequest(input *ListMessagesInput) (req *request.Request, output *ListMessagesOutput) { + op := &request.Operation{ + Name: opListMessages, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/conversations/{conversationId}", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMessagesInput{} + } + + output = &ListMessagesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMessages API operation for QBusiness. +// +// Gets a list of messages associated with an Amazon Q web experience. +// +// 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 QBusiness's +// API operation ListMessages for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - LicenseNotFoundException +// You don't have permissions to perform the action because your license is +// inactive. Ask your admin to activate your license and try again after your +// licence is active. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListMessages +func (c *QBusiness) ListMessages(input *ListMessagesInput) (*ListMessagesOutput, error) { + req, out := c.ListMessagesRequest(input) + return out, req.Send() +} + +// ListMessagesWithContext is the same as ListMessages with the addition of +// the ability to pass a context and additional request options. +// +// See ListMessages 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 *QBusiness) ListMessagesWithContext(ctx aws.Context, input *ListMessagesInput, opts ...request.Option) (*ListMessagesOutput, error) { + req, out := c.ListMessagesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMessagesPages iterates over the pages of a ListMessages operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMessages 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 ListMessages operation. +// pageNum := 0 +// err := client.ListMessagesPages(params, +// func(page *qbusiness.ListMessagesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListMessagesPages(input *ListMessagesInput, fn func(*ListMessagesOutput, bool) bool) error { + return c.ListMessagesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMessagesPagesWithContext same as ListMessagesPages 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 *QBusiness) ListMessagesPagesWithContext(ctx aws.Context, input *ListMessagesInput, fn func(*ListMessagesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMessagesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMessagesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMessagesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListPlugins = "ListPlugins" + +// ListPluginsRequest generates a "aws/request.Request" representing the +// client's request for the ListPlugins 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 ListPlugins for more information on using the ListPlugins +// 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 ListPluginsRequest method. +// req, resp := client.ListPluginsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListPlugins +func (c *QBusiness) ListPluginsRequest(input *ListPluginsInput) (req *request.Request, output *ListPluginsOutput) { + op := &request.Operation{ + Name: opListPlugins, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/plugins", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPluginsInput{} + } + + output = &ListPluginsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPlugins API operation for QBusiness. +// +// Lists configured Amazon Q plugins. +// +// 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 QBusiness's +// API operation ListPlugins for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListPlugins +func (c *QBusiness) ListPlugins(input *ListPluginsInput) (*ListPluginsOutput, error) { + req, out := c.ListPluginsRequest(input) + return out, req.Send() +} + +// ListPluginsWithContext is the same as ListPlugins with the addition of +// the ability to pass a context and additional request options. +// +// See ListPlugins 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 *QBusiness) ListPluginsWithContext(ctx aws.Context, input *ListPluginsInput, opts ...request.Option) (*ListPluginsOutput, error) { + req, out := c.ListPluginsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPluginsPages iterates over the pages of a ListPlugins operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPlugins 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 ListPlugins operation. +// pageNum := 0 +// err := client.ListPluginsPages(params, +// func(page *qbusiness.ListPluginsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListPluginsPages(input *ListPluginsInput, fn func(*ListPluginsOutput, bool) bool) error { + return c.ListPluginsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPluginsPagesWithContext same as ListPluginsPages 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 *QBusiness) ListPluginsPagesWithContext(ctx aws.Context, input *ListPluginsInput, fn func(*ListPluginsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPluginsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPluginsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPluginsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRetrievers = "ListRetrievers" + +// ListRetrieversRequest generates a "aws/request.Request" representing the +// client's request for the ListRetrievers 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 ListRetrievers for more information on using the ListRetrievers +// 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 ListRetrieversRequest method. +// req, resp := client.ListRetrieversRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListRetrievers +func (c *QBusiness) ListRetrieversRequest(input *ListRetrieversInput) (req *request.Request, output *ListRetrieversOutput) { + op := &request.Operation{ + Name: opListRetrievers, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/retrievers", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRetrieversInput{} + } + + output = &ListRetrieversOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRetrievers API operation for QBusiness. +// +// Lists the retriever used by an Amazon Q application. +// +// 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 QBusiness's +// API operation ListRetrievers for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListRetrievers +func (c *QBusiness) ListRetrievers(input *ListRetrieversInput) (*ListRetrieversOutput, error) { + req, out := c.ListRetrieversRequest(input) + return out, req.Send() +} + +// ListRetrieversWithContext is the same as ListRetrievers with the addition of +// the ability to pass a context and additional request options. +// +// See ListRetrievers 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 *QBusiness) ListRetrieversWithContext(ctx aws.Context, input *ListRetrieversInput, opts ...request.Option) (*ListRetrieversOutput, error) { + req, out := c.ListRetrieversRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRetrieversPages iterates over the pages of a ListRetrievers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRetrievers 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 ListRetrievers operation. +// pageNum := 0 +// err := client.ListRetrieversPages(params, +// func(page *qbusiness.ListRetrieversOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListRetrieversPages(input *ListRetrieversInput, fn func(*ListRetrieversOutput, bool) bool) error { + return c.ListRetrieversPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRetrieversPagesWithContext same as ListRetrieversPages 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 *QBusiness) ListRetrieversPagesWithContext(ctx aws.Context, input *ListRetrieversInput, fn func(*ListRetrieversOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRetrieversInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRetrieversRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRetrieversOutput), !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/qbusiness-2023-11-27/ListTagsForResource +func (c *QBusiness) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/v1/tags/{resourceARN}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for QBusiness. +// +// Gets a list of tags associated with a specified resource. Amazon Q applications +// and data sources can have tags associated with them. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for QBusiness's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListTagsForResource +func (c *QBusiness) 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 *QBusiness) 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 opListWebExperiences = "ListWebExperiences" + +// ListWebExperiencesRequest generates a "aws/request.Request" representing the +// client's request for the ListWebExperiences 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 ListWebExperiences for more information on using the ListWebExperiences +// 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 ListWebExperiencesRequest method. +// req, resp := client.ListWebExperiencesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListWebExperiences +func (c *QBusiness) ListWebExperiencesRequest(input *ListWebExperiencesInput) (req *request.Request, output *ListWebExperiencesOutput) { + op := &request.Operation{ + Name: opListWebExperiences, + HTTPMethod: "GET", + HTTPPath: "/applications/{applicationId}/experiences", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListWebExperiencesInput{} + } + + output = &ListWebExperiencesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListWebExperiences API operation for QBusiness. +// +// Lists one or more Amazon Q Web Experiences. +// +// 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 QBusiness's +// API operation ListWebExperiences for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/ListWebExperiences +func (c *QBusiness) ListWebExperiences(input *ListWebExperiencesInput) (*ListWebExperiencesOutput, error) { + req, out := c.ListWebExperiencesRequest(input) + return out, req.Send() +} + +// ListWebExperiencesWithContext is the same as ListWebExperiences with the addition of +// the ability to pass a context and additional request options. +// +// See ListWebExperiences 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 *QBusiness) ListWebExperiencesWithContext(ctx aws.Context, input *ListWebExperiencesInput, opts ...request.Option) (*ListWebExperiencesOutput, error) { + req, out := c.ListWebExperiencesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListWebExperiencesPages iterates over the pages of a ListWebExperiences operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWebExperiences 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 ListWebExperiences operation. +// pageNum := 0 +// err := client.ListWebExperiencesPages(params, +// func(page *qbusiness.ListWebExperiencesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QBusiness) ListWebExperiencesPages(input *ListWebExperiencesInput, fn func(*ListWebExperiencesOutput, bool) bool) error { + return c.ListWebExperiencesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListWebExperiencesPagesWithContext same as ListWebExperiencesPages 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 *QBusiness) ListWebExperiencesPagesWithContext(ctx aws.Context, input *ListWebExperiencesInput, fn func(*ListWebExperiencesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWebExperiencesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWebExperiencesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWebExperiencesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opPutFeedback = "PutFeedback" + +// PutFeedbackRequest generates a "aws/request.Request" representing the +// client's request for the PutFeedback 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 PutFeedback for more information on using the PutFeedback +// 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 PutFeedbackRequest method. +// req, resp := client.PutFeedbackRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutFeedback +func (c *QBusiness) PutFeedbackRequest(input *PutFeedbackInput) (req *request.Request, output *PutFeedbackOutput) { + op := &request.Operation{ + Name: opPutFeedback, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/conversations/{conversationId}/messages/{messageId}/feedback", + } + + if input == nil { + input = &PutFeedbackInput{} + } + + output = &PutFeedbackOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutFeedback API operation for QBusiness. +// +// Enables your end user to to provide feedback on their Amazon Q generated +// chat responses. +// +// 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 QBusiness's +// API operation PutFeedback for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutFeedback +func (c *QBusiness) PutFeedback(input *PutFeedbackInput) (*PutFeedbackOutput, error) { + req, out := c.PutFeedbackRequest(input) + return out, req.Send() +} + +// PutFeedbackWithContext is the same as PutFeedback with the addition of +// the ability to pass a context and additional request options. +// +// See PutFeedback 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 *QBusiness) PutFeedbackWithContext(ctx aws.Context, input *PutFeedbackInput, opts ...request.Option) (*PutFeedbackOutput, error) { + req, out := c.PutFeedbackRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutGroup = "PutGroup" + +// PutGroupRequest generates a "aws/request.Request" representing the +// client's request for the PutGroup 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 PutGroup for more information on using the PutGroup +// 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 PutGroupRequest method. +// req, resp := client.PutGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutGroup +func (c *QBusiness) PutGroupRequest(input *PutGroupInput) (req *request.Request, output *PutGroupOutput) { + op := &request.Operation{ + Name: opPutGroup, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/groups", + } + + if input == nil { + input = &PutGroupInput{} + } + + output = &PutGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutGroup API operation for QBusiness. +// +// Create, or updates, a mapping of users—who have access to a document—to +// groups. +// +// You can also map sub groups to groups. For example, the group "Company Intellectual +// Property Teams" includes sub groups "Research" and "Engineering". These sub +// groups include their own list of users or people who work in these teams. +// Only users who work in research and engineering, and therefore belong in +// the intellectual property group, can see top-secret company documents in +// their Amazon Q chat results. +// +// 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 QBusiness's +// API operation PutGroup for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/PutGroup +func (c *QBusiness) PutGroup(input *PutGroupInput) (*PutGroupOutput, error) { + req, out := c.PutGroupRequest(input) + return out, req.Send() +} + +// PutGroupWithContext is the same as PutGroup with the addition of +// the ability to pass a context and additional request options. +// +// See PutGroup 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 *QBusiness) PutGroupWithContext(ctx aws.Context, input *PutGroupInput, opts ...request.Option) (*PutGroupOutput, error) { + req, out := c.PutGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartDataSourceSyncJob = "StartDataSourceSyncJob" + +// StartDataSourceSyncJobRequest generates a "aws/request.Request" representing the +// client's request for the StartDataSourceSyncJob 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 StartDataSourceSyncJob for more information on using the StartDataSourceSyncJob +// 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 StartDataSourceSyncJobRequest method. +// req, resp := client.StartDataSourceSyncJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StartDataSourceSyncJob +func (c *QBusiness) StartDataSourceSyncJobRequest(input *StartDataSourceSyncJobInput) (req *request.Request, output *StartDataSourceSyncJobOutput) { + op := &request.Operation{ + Name: opStartDataSourceSyncJob, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/startsync", + } + + if input == nil { + input = &StartDataSourceSyncJobInput{} + } + + output = &StartDataSourceSyncJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDataSourceSyncJob API operation for QBusiness. +// +// Starts a data source connector synchronization job. If a synchronization +// job is already in progress, Amazon Q returns a ConflictException. +// +// 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 QBusiness's +// API operation StartDataSourceSyncJob for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StartDataSourceSyncJob +func (c *QBusiness) StartDataSourceSyncJob(input *StartDataSourceSyncJobInput) (*StartDataSourceSyncJobOutput, error) { + req, out := c.StartDataSourceSyncJobRequest(input) + return out, req.Send() +} + +// StartDataSourceSyncJobWithContext is the same as StartDataSourceSyncJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartDataSourceSyncJob 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 *QBusiness) StartDataSourceSyncJobWithContext(ctx aws.Context, input *StartDataSourceSyncJobInput, opts ...request.Option) (*StartDataSourceSyncJobOutput, error) { + req, out := c.StartDataSourceSyncJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopDataSourceSyncJob = "StopDataSourceSyncJob" + +// StopDataSourceSyncJobRequest generates a "aws/request.Request" representing the +// client's request for the StopDataSourceSyncJob 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 StopDataSourceSyncJob for more information on using the StopDataSourceSyncJob +// 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 StopDataSourceSyncJobRequest method. +// req, resp := client.StopDataSourceSyncJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StopDataSourceSyncJob +func (c *QBusiness) StopDataSourceSyncJobRequest(input *StopDataSourceSyncJobInput) (req *request.Request, output *StopDataSourceSyncJobOutput) { + op := &request.Operation{ + Name: opStopDataSourceSyncJob, + HTTPMethod: "POST", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}/stopsync", + } + + if input == nil { + input = &StopDataSourceSyncJobInput{} + } + + output = &StopDataSourceSyncJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StopDataSourceSyncJob API operation for QBusiness. +// +// Stops an Amazon Q data source connector synchronization job already in progress. +// +// 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 QBusiness's +// API operation StopDataSourceSyncJob for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/StopDataSourceSyncJob +func (c *QBusiness) StopDataSourceSyncJob(input *StopDataSourceSyncJobInput) (*StopDataSourceSyncJobOutput, error) { + req, out := c.StopDataSourceSyncJobRequest(input) + return out, req.Send() +} + +// StopDataSourceSyncJobWithContext is the same as StopDataSourceSyncJob with the addition of +// the ability to pass a context and additional request options. +// +// See StopDataSourceSyncJob 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 *QBusiness) StopDataSourceSyncJobWithContext(ctx aws.Context, input *StopDataSourceSyncJobInput, opts ...request.Option) (*StopDataSourceSyncJobOutput, error) { + req, out := c.StopDataSourceSyncJobRequest(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/qbusiness-2023-11-27/TagResource +func (c *QBusiness) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/v1/tags/{resourceARN}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for QBusiness. +// +// Adds the specified tag to the specified Amazon Q application or data source +// resource. If the tag already exists, the existing value is replaced with +// the new value. +// +// 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 QBusiness's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/TagResource +func (c *QBusiness) 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 *QBusiness) 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/qbusiness-2023-11-27/UntagResource +func (c *QBusiness) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/v1/tags/{resourceARN}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for QBusiness. +// +// Removes a tag from an Amazon Q application or a data source. +// +// 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 QBusiness's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UntagResource +func (c *QBusiness) 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 *QBusiness) 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 opUpdateApplication = "UpdateApplication" + +// UpdateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateApplication 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 UpdateApplication for more information on using the UpdateApplication +// 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 UpdateApplicationRequest method. +// req, resp := client.UpdateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateApplication +func (c *QBusiness) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { + op := &request.Operation{ + Name: opUpdateApplication, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}", + } + + if input == nil { + input = &UpdateApplicationInput{} + } + + output = &UpdateApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateApplication API operation for QBusiness. +// +// Updates an existing Amazon Q application. +// +// 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 QBusiness's +// API operation UpdateApplication for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateApplication +func (c *QBusiness) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + return out, req.Send() +} + +// UpdateApplicationWithContext is the same as UpdateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateApplication 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 *QBusiness) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateChatControlsConfiguration = "UpdateChatControlsConfiguration" + +// UpdateChatControlsConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateChatControlsConfiguration 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 UpdateChatControlsConfiguration for more information on using the UpdateChatControlsConfiguration +// 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 UpdateChatControlsConfigurationRequest method. +// req, resp := client.UpdateChatControlsConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateChatControlsConfiguration +func (c *QBusiness) UpdateChatControlsConfigurationRequest(input *UpdateChatControlsConfigurationInput) (req *request.Request, output *UpdateChatControlsConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateChatControlsConfiguration, + HTTPMethod: "PATCH", + HTTPPath: "/applications/{applicationId}/chatcontrols", + } + + if input == nil { + input = &UpdateChatControlsConfigurationInput{} + } + + output = &UpdateChatControlsConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateChatControlsConfiguration API operation for QBusiness. +// +// Updates an set of chat controls configured for an existing Amazon Q application. +// +// 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 QBusiness's +// API operation UpdateChatControlsConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateChatControlsConfiguration +func (c *QBusiness) UpdateChatControlsConfiguration(input *UpdateChatControlsConfigurationInput) (*UpdateChatControlsConfigurationOutput, error) { + req, out := c.UpdateChatControlsConfigurationRequest(input) + return out, req.Send() +} + +// UpdateChatControlsConfigurationWithContext is the same as UpdateChatControlsConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateChatControlsConfiguration 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 *QBusiness) UpdateChatControlsConfigurationWithContext(ctx aws.Context, input *UpdateChatControlsConfigurationInput, opts ...request.Option) (*UpdateChatControlsConfigurationOutput, error) { + req, out := c.UpdateChatControlsConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDataSource = "UpdateDataSource" + +// UpdateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSource 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 UpdateDataSource for more information on using the UpdateDataSource +// 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 UpdateDataSourceRequest method. +// req, resp := client.UpdateDataSourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateDataSource +func (c *QBusiness) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { + op := &request.Operation{ + Name: opUpdateDataSource, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + } + + if input == nil { + input = &UpdateDataSourceInput{} + } + + output = &UpdateDataSourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateDataSource API operation for QBusiness. +// +// Updates an existing Amazon Q data source connector. +// +// 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 QBusiness's +// API operation UpdateDataSource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateDataSource +func (c *QBusiness) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + return out, req.Send() +} + +// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDataSource 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 *QBusiness) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateIndex = "UpdateIndex" + +// UpdateIndexRequest generates a "aws/request.Request" representing the +// client's request for the UpdateIndex 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 UpdateIndex for more information on using the UpdateIndex +// 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 UpdateIndexRequest method. +// req, resp := client.UpdateIndexRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateIndex +func (c *QBusiness) UpdateIndexRequest(input *UpdateIndexInput) (req *request.Request, output *UpdateIndexOutput) { + op := &request.Operation{ + Name: opUpdateIndex, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/indices/{indexId}", + } + + if input == nil { + input = &UpdateIndexInput{} + } + + output = &UpdateIndexOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateIndex API operation for QBusiness. +// +// Updates an Amazon Q index. +// +// 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 QBusiness's +// API operation UpdateIndex for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateIndex +func (c *QBusiness) UpdateIndex(input *UpdateIndexInput) (*UpdateIndexOutput, error) { + req, out := c.UpdateIndexRequest(input) + return out, req.Send() +} + +// UpdateIndexWithContext is the same as UpdateIndex with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateIndex 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 *QBusiness) UpdateIndexWithContext(ctx aws.Context, input *UpdateIndexInput, opts ...request.Option) (*UpdateIndexOutput, error) { + req, out := c.UpdateIndexRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdatePlugin = "UpdatePlugin" + +// UpdatePluginRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePlugin 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 UpdatePlugin for more information on using the UpdatePlugin +// 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 UpdatePluginRequest method. +// req, resp := client.UpdatePluginRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdatePlugin +func (c *QBusiness) UpdatePluginRequest(input *UpdatePluginInput) (req *request.Request, output *UpdatePluginOutput) { + op := &request.Operation{ + Name: opUpdatePlugin, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/plugins/{pluginId}", + } + + if input == nil { + input = &UpdatePluginInput{} + } + + output = &UpdatePluginOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdatePlugin API operation for QBusiness. +// +// Updates an Amazon Q plugin. +// +// 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 QBusiness's +// API operation UpdatePlugin for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdatePlugin +func (c *QBusiness) UpdatePlugin(input *UpdatePluginInput) (*UpdatePluginOutput, error) { + req, out := c.UpdatePluginRequest(input) + return out, req.Send() +} + +// UpdatePluginWithContext is the same as UpdatePlugin with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePlugin 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 *QBusiness) UpdatePluginWithContext(ctx aws.Context, input *UpdatePluginInput, opts ...request.Option) (*UpdatePluginOutput, error) { + req, out := c.UpdatePluginRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRetriever = "UpdateRetriever" + +// UpdateRetrieverRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRetriever 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 UpdateRetriever for more information on using the UpdateRetriever +// 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 UpdateRetrieverRequest method. +// req, resp := client.UpdateRetrieverRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateRetriever +func (c *QBusiness) UpdateRetrieverRequest(input *UpdateRetrieverInput) (req *request.Request, output *UpdateRetrieverOutput) { + op := &request.Operation{ + Name: opUpdateRetriever, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/retrievers/{retrieverId}", + } + + if input == nil { + input = &UpdateRetrieverInput{} + } + + output = &UpdateRetrieverOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateRetriever API operation for QBusiness. +// +// Updates the retriever used for your Amazon Q application. +// +// 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 QBusiness's +// API operation UpdateRetriever for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateRetriever +func (c *QBusiness) UpdateRetriever(input *UpdateRetrieverInput) (*UpdateRetrieverOutput, error) { + req, out := c.UpdateRetrieverRequest(input) + return out, req.Send() +} + +// UpdateRetrieverWithContext is the same as UpdateRetriever with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRetriever 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 *QBusiness) UpdateRetrieverWithContext(ctx aws.Context, input *UpdateRetrieverInput, opts ...request.Option) (*UpdateRetrieverOutput, error) { + req, out := c.UpdateRetrieverRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateUser = "UpdateUser" + +// UpdateUserRequest generates a "aws/request.Request" representing the +// client's request for the UpdateUser 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 UpdateUser for more information on using the UpdateUser +// 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 UpdateUserRequest method. +// req, resp := client.UpdateUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateUser +func (c *QBusiness) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { + op := &request.Operation{ + Name: opUpdateUser, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/users/{userId}", + } + + if input == nil { + input = &UpdateUserInput{} + } + + output = &UpdateUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateUser API operation for QBusiness. +// +// Updates a information associated with a user id. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for QBusiness's +// API operation UpdateUser for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// - ServiceQuotaExceededException +// You have exceeded the set limits for your Amazon Q service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateUser +func (c *QBusiness) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { + req, out := c.UpdateUserRequest(input) + return out, req.Send() +} + +// UpdateUserWithContext is the same as UpdateUser with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateUser 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 *QBusiness) UpdateUserWithContext(ctx aws.Context, input *UpdateUserInput, opts ...request.Option) (*UpdateUserOutput, error) { + req, out := c.UpdateUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateWebExperience = "UpdateWebExperience" + +// UpdateWebExperienceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateWebExperience 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 UpdateWebExperience for more information on using the UpdateWebExperience +// 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 UpdateWebExperienceRequest method. +// req, resp := client.UpdateWebExperienceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateWebExperience +func (c *QBusiness) UpdateWebExperienceRequest(input *UpdateWebExperienceInput) (req *request.Request, output *UpdateWebExperienceOutput) { + op := &request.Operation{ + Name: opUpdateWebExperience, + HTTPMethod: "PUT", + HTTPPath: "/applications/{applicationId}/experiences/{webExperienceId}", + } + + if input == nil { + input = &UpdateWebExperienceInput{} + } + + output = &UpdateWebExperienceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateWebExperience API operation for QBusiness. +// +// Updates an Amazon Q web experience. +// +// 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 QBusiness's +// API operation UpdateWebExperience for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +// +// - InternalServerException +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +// +// - ConflictException +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +// +// - ThrottlingException +// The request was denied due to throttling. Reduce the number of requests and +// try again. +// +// - ValidationException +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +// +// - AccessDeniedException +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27/UpdateWebExperience +func (c *QBusiness) UpdateWebExperience(input *UpdateWebExperienceInput) (*UpdateWebExperienceOutput, error) { + req, out := c.UpdateWebExperienceRequest(input) + return out, req.Send() +} + +// UpdateWebExperienceWithContext is the same as UpdateWebExperience with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateWebExperience 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 *QBusiness) UpdateWebExperienceWithContext(ctx aws.Context, input *UpdateWebExperienceInput, opts ...request.Option) (*UpdateWebExperienceOutput, error) { + req, out := c.UpdateWebExperienceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Used to configure access permissions for a document. +type AccessConfiguration struct { + _ struct{} `type:"structure"` + + // A list of AccessControlList objects. + // + // AccessControls is a required field + AccessControls []*AccessControl `locationName:"accessControls" type:"list" required:"true"` + + // Describes the member relation within the AccessControlList object. + MemberRelation *string `locationName:"memberRelation" type:"string" enum:"MemberRelation"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AccessConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AccessConfiguration"} + if s.AccessControls == nil { + invalidParams.Add(request.NewErrParamRequired("AccessControls")) + } + if s.AccessControls != nil { + for i, v := range s.AccessControls { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AccessControls", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessControls sets the AccessControls field's value. +func (s *AccessConfiguration) SetAccessControls(v []*AccessControl) *AccessConfiguration { + s.AccessControls = v + return s +} + +// SetMemberRelation sets the MemberRelation field's value. +func (s *AccessConfiguration) SetMemberRelation(v string) *AccessConfiguration { + s.MemberRelation = &v + return s +} + +// A list of principals. Each principal can be either a USER or a GROUP and +// can be designated document access permissions of either ALLOW or DENY. +type AccessControl struct { + _ struct{} `type:"structure"` + + // Describes the member relation within a principal list. + MemberRelation *string `locationName:"memberRelation" type:"string" enum:"MemberRelation"` + + // Contains a list of principals, where a principal can be either a USER or + // a GROUP. Each principal can be have the following type of document access: + // ALLOW or DENY. + // + // Principals is a required field + Principals []*Principal `locationName:"principals" 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 AccessControl) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessControl) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AccessControl) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AccessControl"} + if s.Principals == nil { + invalidParams.Add(request.NewErrParamRequired("Principals")) + } + if s.Principals != nil { + for i, v := range s.Principals { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Principals", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMemberRelation sets the MemberRelation field's value. +func (s *AccessControl) SetMemberRelation(v string) *AccessControl { + s.MemberRelation = &v + return s +} + +// SetPrincipals sets the Principals field's value. +func (s *AccessControl) SetPrincipals(v []*Principal) *AccessControl { + s.Principals = v + return s +} + +// You don't have access to perform this action. Make sure you have the required +// permission policies and user accounts and try again. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" 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 AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An output event that Amazon Q returns to an user who wants to perform a plugin +// action during a non-streaming chat conversation. It contains information +// about the selected action with a list of possible user input fields, some +// pre-populated by Amazon Q. +type ActionReview struct { + _ struct{} `type:"structure"` + + // Field values that an end user needs to provide to Amazon Q for Amazon Q to + // perform the requested plugin action. + Payload map[string]*ActionReviewPayloadField `locationName:"payload" type:"map"` + + // A string used to retain information about the hierarchical contexts within + // an action review payload. + PayloadFieldNameSeparator *string `locationName:"payloadFieldNameSeparator" min:"1" type:"string"` + + // The identifier of the plugin associated with the action review. + PluginId *string `locationName:"pluginId" min:"36" type:"string"` + + // The type of plugin. + PluginType *string `locationName:"pluginType" type:"string" enum:"PluginType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionReview) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionReview) GoString() string { + return s.String() +} + +// SetPayload sets the Payload field's value. +func (s *ActionReview) SetPayload(v map[string]*ActionReviewPayloadField) *ActionReview { + s.Payload = v + return s +} + +// SetPayloadFieldNameSeparator sets the PayloadFieldNameSeparator field's value. +func (s *ActionReview) SetPayloadFieldNameSeparator(v string) *ActionReview { + s.PayloadFieldNameSeparator = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *ActionReview) SetPluginId(v string) *ActionReview { + s.PluginId = &v + return s +} + +// SetPluginType sets the PluginType field's value. +func (s *ActionReview) SetPluginType(v string) *ActionReview { + s.PluginType = &v + return s +} + +// A user input field in an plugin action review payload. +type ActionReviewPayloadField struct { + _ struct{} `type:"structure"` + + // Information about the field values that an end user can use to provide to + // Amazon Q for Amazon Q to perform the requested plugin action. + AllowedValues []*ActionReviewPayloadFieldAllowedValue `locationName:"allowedValues" type:"list"` + + // The name of the field. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The display order of fields in a payload. + DisplayOrder *int64 `locationName:"displayOrder" type:"integer"` + + // Information about whether the field is required. + Required *bool `locationName:"required" type:"boolean"` + + // The type of field. + Type *string `locationName:"type" type:"string" enum:"ActionPayloadFieldType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionReviewPayloadField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionReviewPayloadField) GoString() string { + return s.String() +} + +// SetAllowedValues sets the AllowedValues field's value. +func (s *ActionReviewPayloadField) SetAllowedValues(v []*ActionReviewPayloadFieldAllowedValue) *ActionReviewPayloadField { + s.AllowedValues = v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *ActionReviewPayloadField) SetDisplayName(v string) *ActionReviewPayloadField { + s.DisplayName = &v + return s +} + +// SetDisplayOrder sets the DisplayOrder field's value. +func (s *ActionReviewPayloadField) SetDisplayOrder(v int64) *ActionReviewPayloadField { + s.DisplayOrder = &v + return s +} + +// SetRequired sets the Required field's value. +func (s *ActionReviewPayloadField) SetRequired(v bool) *ActionReviewPayloadField { + s.Required = &v + return s +} + +// SetType sets the Type field's value. +func (s *ActionReviewPayloadField) SetType(v string) *ActionReviewPayloadField { + s.Type = &v + return s +} + +// Information about the field values that an end user can use to provide to +// Amazon Q for Amazon Q to perform the requested plugin action. +type ActionReviewPayloadFieldAllowedValue 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 ActionReviewPayloadFieldAllowedValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActionReviewPayloadFieldAllowedValue) GoString() string { + return s.String() +} + +// Summary information for an Amazon Q application. +type Application struct { + _ struct{} `type:"structure"` + + // The identifier for the Amazon Q application. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // The Unix timestamp when the Amazon Q application was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The name of the Amazon Q application. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The status of the Amazon Q application. The application is ready to use when + // the status is ACTIVE. + Status *string `locationName:"status" type:"string" enum:"ApplicationStatus"` + + // The Unix timestamp when the Amazon Q application was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 Application) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *Application) SetApplicationId(v string) *Application { + s.ApplicationId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Application) SetCreatedAt(v time.Time) *Application { + s.CreatedAt = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *Application) SetDisplayName(v string) *Application { + s.DisplayName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Application) SetStatus(v string) *Application { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Application) SetUpdatedAt(v time.Time) *Application { + s.UpdatedAt = &v + return s +} + +// Configuration information about the file upload during chat feature for your +// application. +type AppliedAttachmentsConfiguration struct { + _ struct{} `type:"structure"` + + // Information about whether file upload during chat functionality is activated + // for your application. + AttachmentsControlMode *string `locationName:"attachmentsControlMode" type:"string" enum:"AttachmentsControlMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AppliedAttachmentsConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AppliedAttachmentsConfiguration) GoString() string { + return s.String() +} + +// SetAttachmentsControlMode sets the AttachmentsControlMode field's value. +func (s *AppliedAttachmentsConfiguration) SetAttachmentsControlMode(v string) *AppliedAttachmentsConfiguration { + s.AttachmentsControlMode = &v + return s +} + +// A file directly uploaded into a web experience chat. +type AttachmentInput_ struct { + _ struct{} `type:"structure"` + + // The data contained within the uploaded file. + // Data is automatically base64 encoded/decoded by the SDK. + // + // Data is a required field + Data []byte `locationName:"data" type:"blob" required:"true"` + + // The name of the file. + // + // Name is a required field + Name *string `locationName:"name" 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 AttachmentInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttachmentInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachmentInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachmentInput_"} + if s.Data == nil { + invalidParams.Add(request.NewErrParamRequired("Data")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetData sets the Data field's value. +func (s *AttachmentInput_) SetData(v []byte) *AttachmentInput_ { + s.Data = v + return s +} + +// SetName sets the Name field's value. +func (s *AttachmentInput_) SetName(v string) *AttachmentInput_ { + s.Name = &v + return s +} + +// The details of a file uploaded during chat. +type AttachmentOutput_ struct { + _ struct{} `type:"structure"` + + // An error associated with a file uploaded during chat. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The name of a file uploaded during chat. + Name *string `locationName:"name" min:"1" type:"string"` + + // The status of a file uploaded during chat. + Status *string `locationName:"status" type:"string" enum:"AttachmentStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttachmentOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttachmentOutput_) GoString() string { + return s.String() +} + +// SetError sets the Error field's value. +func (s *AttachmentOutput_) SetError(v *ErrorDetail) *AttachmentOutput_ { + s.Error = v + return s +} + +// SetName sets the Name field's value. +func (s *AttachmentOutput_) SetName(v string) *AttachmentOutput_ { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AttachmentOutput_) SetStatus(v string) *AttachmentOutput_ { + s.Status = &v + return s +} + +// Configuration information for the file upload during chat feature. +type AttachmentsConfiguration struct { + _ struct{} `type:"structure"` + + // Status information about whether file upload functionality is activated or + // deactivated for your end user. + // + // AttachmentsControlMode is a required field + AttachmentsControlMode *string `locationName:"attachmentsControlMode" type:"string" required:"true" enum:"AttachmentsControlMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttachmentsConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttachmentsConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachmentsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachmentsConfiguration"} + if s.AttachmentsControlMode == nil { + invalidParams.Add(request.NewErrParamRequired("AttachmentsControlMode")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttachmentsControlMode sets the AttachmentsControlMode field's value. +func (s *AttachmentsConfiguration) SetAttachmentsControlMode(v string) *AttachmentsConfiguration { + s.AttachmentsControlMode = &v + return s +} + +// Enables filtering of Amazon Q web experience responses based on document +// attributes or metadata fields. +type AttributeFilter struct { + _ struct{} `type:"structure"` + + // Performs a logical AND operation on all supplied filters. + AndAllFilters []*AttributeFilter `locationName:"andAllFilters" type:"list"` + + // Returns true when a document contains all the specified document attributes + // or metadata fields. + ContainsAll *DocumentAttribute `locationName:"containsAll" type:"structure"` + + // Returns true when a document contains any of the specified document attributes + // or metadata fields. + ContainsAny *DocumentAttribute `locationName:"containsAny" type:"structure"` + + // Performs an equals operation on two document attributes or metadata fields. + EqualsTo *DocumentAttribute `locationName:"equalsTo" type:"structure"` + + // Performs a greater than operation on two document attributes or metadata + // fields. Use with a document attribute of type Date or Long. + GreaterThan *DocumentAttribute `locationName:"greaterThan" type:"structure"` + + // Performs a greater or equals than operation on two document attributes or + // metadata fields. Use with a document attribute of type Date or Long. + GreaterThanOrEquals *DocumentAttribute `locationName:"greaterThanOrEquals" type:"structure"` + + // Performs a less than operation on two document attributes or metadata fields. + // Use with a document attribute of type Date or Long. + LessThan *DocumentAttribute `locationName:"lessThan" type:"structure"` + + // Performs a less than or equals operation on two document attributes or metadata + // fields. Use with a document attribute of type Date or Long. + LessThanOrEquals *DocumentAttribute `locationName:"lessThanOrEquals" type:"structure"` + + // Performs a logical NOT operation on all supplied filters. + NotFilter *AttributeFilter `locationName:"notFilter" type:"structure"` + + // Performs a logical OR operation on all supplied filters. + OrAllFilters []*AttributeFilter `locationName:"orAllFilters" 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 AttributeFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AttributeFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttributeFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttributeFilter"} + if s.ContainsAll != nil { + if err := s.ContainsAll.Validate(); err != nil { + invalidParams.AddNested("ContainsAll", err.(request.ErrInvalidParams)) + } + } + if s.ContainsAny != nil { + if err := s.ContainsAny.Validate(); err != nil { + invalidParams.AddNested("ContainsAny", err.(request.ErrInvalidParams)) + } + } + if s.EqualsTo != nil { + if err := s.EqualsTo.Validate(); err != nil { + invalidParams.AddNested("EqualsTo", err.(request.ErrInvalidParams)) + } + } + if s.GreaterThan != nil { + if err := s.GreaterThan.Validate(); err != nil { + invalidParams.AddNested("GreaterThan", err.(request.ErrInvalidParams)) + } + } + if s.GreaterThanOrEquals != nil { + if err := s.GreaterThanOrEquals.Validate(); err != nil { + invalidParams.AddNested("GreaterThanOrEquals", err.(request.ErrInvalidParams)) + } + } + if s.LessThan != nil { + if err := s.LessThan.Validate(); err != nil { + invalidParams.AddNested("LessThan", err.(request.ErrInvalidParams)) + } + } + if s.LessThanOrEquals != nil { + if err := s.LessThanOrEquals.Validate(); err != nil { + invalidParams.AddNested("LessThanOrEquals", err.(request.ErrInvalidParams)) + } + } + if s.NotFilter != nil { + if err := s.NotFilter.Validate(); err != nil { + invalidParams.AddNested("NotFilter", err.(request.ErrInvalidParams)) + } + } + if s.OrAllFilters != nil { + for i, v := range s.OrAllFilters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OrAllFilters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAndAllFilters sets the AndAllFilters field's value. +func (s *AttributeFilter) SetAndAllFilters(v []*AttributeFilter) *AttributeFilter { + s.AndAllFilters = v + return s +} + +// SetContainsAll sets the ContainsAll field's value. +func (s *AttributeFilter) SetContainsAll(v *DocumentAttribute) *AttributeFilter { + s.ContainsAll = v + return s +} + +// SetContainsAny sets the ContainsAny field's value. +func (s *AttributeFilter) SetContainsAny(v *DocumentAttribute) *AttributeFilter { + s.ContainsAny = v + return s +} + +// SetEqualsTo sets the EqualsTo field's value. +func (s *AttributeFilter) SetEqualsTo(v *DocumentAttribute) *AttributeFilter { + s.EqualsTo = v + return s +} + +// SetGreaterThan sets the GreaterThan field's value. +func (s *AttributeFilter) SetGreaterThan(v *DocumentAttribute) *AttributeFilter { + s.GreaterThan = v + return s +} + +// SetGreaterThanOrEquals sets the GreaterThanOrEquals field's value. +func (s *AttributeFilter) SetGreaterThanOrEquals(v *DocumentAttribute) *AttributeFilter { + s.GreaterThanOrEquals = v + return s +} + +// SetLessThan sets the LessThan field's value. +func (s *AttributeFilter) SetLessThan(v *DocumentAttribute) *AttributeFilter { + s.LessThan = v + return s +} + +// SetLessThanOrEquals sets the LessThanOrEquals field's value. +func (s *AttributeFilter) SetLessThanOrEquals(v *DocumentAttribute) *AttributeFilter { + s.LessThanOrEquals = v + return s +} + +// SetNotFilter sets the NotFilter field's value. +func (s *AttributeFilter) SetNotFilter(v *AttributeFilter) *AttributeFilter { + s.NotFilter = v + return s +} + +// SetOrAllFilters sets the OrAllFilters field's value. +func (s *AttributeFilter) SetOrAllFilters(v []*AttributeFilter) *AttributeFilter { + s.OrAllFilters = v + return s +} + +// Information about the basic authentication credentials used to configure +// a plugin. +type BasicAuthConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of an IAM role used by Amazon Q to access the basic authentication + // credentials stored in a Secrets Manager secret. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The ARN of the Secrets Manager secret that stores the basic authentication + // credentials used for plugin configuration.. + // + // SecretArn is a required field + SecretArn *string `locationName:"secretArn" 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 BasicAuthConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BasicAuthConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BasicAuthConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BasicAuthConfiguration"} + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.SecretArn == nil { + invalidParams.Add(request.NewErrParamRequired("SecretArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRoleArn sets the RoleArn field's value. +func (s *BasicAuthConfiguration) SetRoleArn(v string) *BasicAuthConfiguration { + s.RoleArn = &v + return s +} + +// SetSecretArn sets the SecretArn field's value. +func (s *BasicAuthConfiguration) SetSecretArn(v string) *BasicAuthConfiguration { + s.SecretArn = &v + return s +} + +type BatchDeleteDocumentInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source sync during which the documents were deleted. + DataSourceSyncId *string `locationName:"dataSourceSyncId" min:"36" type:"string"` + + // Documents deleted from the Amazon Q index. + // + // Documents is a required field + Documents []*DeleteDocument `locationName:"documents" type:"list" required:"true"` + + // The identifier of the Amazon Q index that contains the documents to delete. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 BatchDeleteDocumentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteDocumentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchDeleteDocumentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchDeleteDocumentInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceSyncId != nil && len(*s.DataSourceSyncId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceSyncId", 36)) + } + if s.Documents == nil { + invalidParams.Add(request.NewErrParamRequired("Documents")) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.Documents != nil { + for i, v := range s.Documents { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Documents", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *BatchDeleteDocumentInput) SetApplicationId(v string) *BatchDeleteDocumentInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceSyncId sets the DataSourceSyncId field's value. +func (s *BatchDeleteDocumentInput) SetDataSourceSyncId(v string) *BatchDeleteDocumentInput { + s.DataSourceSyncId = &v + return s +} + +// SetDocuments sets the Documents field's value. +func (s *BatchDeleteDocumentInput) SetDocuments(v []*DeleteDocument) *BatchDeleteDocumentInput { + s.Documents = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *BatchDeleteDocumentInput) SetIndexId(v string) *BatchDeleteDocumentInput { + s.IndexId = &v + return s +} + +type BatchDeleteDocumentOutput struct { + _ struct{} `type:"structure"` + + // A list of documents that couldn't be removed from the Amazon Q index. Each + // entry contains an error message that indicates why the document couldn't + // be removed from the index. + FailedDocuments []*FailedDocument `locationName:"failedDocuments" 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 BatchDeleteDocumentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDeleteDocumentOutput) GoString() string { + return s.String() +} + +// SetFailedDocuments sets the FailedDocuments field's value. +func (s *BatchDeleteDocumentOutput) SetFailedDocuments(v []*FailedDocument) *BatchDeleteDocumentOutput { + s.FailedDocuments = v + return s +} + +type BatchPutDocumentInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source sync during which the documents were added. + DataSourceSyncId *string `locationName:"dataSourceSyncId" min:"36" type:"string"` + + // One or more documents to add to the index. + // + // Documents is a required field + Documents []*Document `locationName:"documents" min:"1" type:"list" required:"true"` + + // The identifier of the Amazon Q index to add the documents to. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role with permission to access your + // S3 bucket. + RoleArn *string `locationName:"roleArn" 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 BatchPutDocumentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchPutDocumentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchPutDocumentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchPutDocumentInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceSyncId != nil && len(*s.DataSourceSyncId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceSyncId", 36)) + } + if s.Documents == nil { + invalidParams.Add(request.NewErrParamRequired("Documents")) + } + if s.Documents != nil && len(s.Documents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Documents", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.Documents != nil { + for i, v := range s.Documents { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Documents", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *BatchPutDocumentInput) SetApplicationId(v string) *BatchPutDocumentInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceSyncId sets the DataSourceSyncId field's value. +func (s *BatchPutDocumentInput) SetDataSourceSyncId(v string) *BatchPutDocumentInput { + s.DataSourceSyncId = &v + return s +} + +// SetDocuments sets the Documents field's value. +func (s *BatchPutDocumentInput) SetDocuments(v []*Document) *BatchPutDocumentInput { + s.Documents = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *BatchPutDocumentInput) SetIndexId(v string) *BatchPutDocumentInput { + s.IndexId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *BatchPutDocumentInput) SetRoleArn(v string) *BatchPutDocumentInput { + s.RoleArn = &v + return s +} + +type BatchPutDocumentOutput struct { + _ struct{} `type:"structure"` + + // A list of documents that were not added to the Amazon Q index because the + // document failed a validation check. Each document contains an error message + // that indicates why the document couldn't be added to the index. + FailedDocuments []*FailedDocument `locationName:"failedDocuments" 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 BatchPutDocumentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchPutDocumentOutput) GoString() string { + return s.String() +} + +// SetFailedDocuments sets the FailedDocuments field's value. +func (s *BatchPutDocumentOutput) SetFailedDocuments(v []*FailedDocument) *BatchPutDocumentOutput { + s.FailedDocuments = v + return s +} + +// Provides information about the phrases blocked from chat by your chat control +// configuration. +type BlockedPhrasesConfiguration struct { + _ struct{} `type:"structure"` + + // A list of phrases blocked from a Amazon Q web experience chat. + BlockedPhrases []*string `locationName:"blockedPhrases" type:"list"` + + // The configured custom message displayed to an end user informing them that + // they've used a blocked phrase during chat. + SystemMessageOverride *string `locationName:"systemMessageOverride" 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 BlockedPhrasesConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BlockedPhrasesConfiguration) GoString() string { + return s.String() +} + +// SetBlockedPhrases sets the BlockedPhrases field's value. +func (s *BlockedPhrasesConfiguration) SetBlockedPhrases(v []*string) *BlockedPhrasesConfiguration { + s.BlockedPhrases = v + return s +} + +// SetSystemMessageOverride sets the SystemMessageOverride field's value. +func (s *BlockedPhrasesConfiguration) SetSystemMessageOverride(v string) *BlockedPhrasesConfiguration { + s.SystemMessageOverride = &v + return s +} + +// Updates a blocked phrases configuration in your Amazon Q application. +type BlockedPhrasesConfigurationUpdate struct { + _ struct{} `type:"structure"` + + // Creates or updates a blocked phrases configuration in your Amazon Q application. + BlockedPhrasesToCreateOrUpdate []*string `locationName:"blockedPhrasesToCreateOrUpdate" type:"list"` + + // Deletes a blocked phrases configuration in your Amazon Q application. + BlockedPhrasesToDelete []*string `locationName:"blockedPhrasesToDelete" type:"list"` + + // The configured custom message displayed to your end user when they use blocked + // phrase during chat. + SystemMessageOverride *string `locationName:"systemMessageOverride" 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 BlockedPhrasesConfigurationUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BlockedPhrasesConfigurationUpdate) GoString() string { + return s.String() +} + +// SetBlockedPhrasesToCreateOrUpdate sets the BlockedPhrasesToCreateOrUpdate field's value. +func (s *BlockedPhrasesConfigurationUpdate) SetBlockedPhrasesToCreateOrUpdate(v []*string) *BlockedPhrasesConfigurationUpdate { + s.BlockedPhrasesToCreateOrUpdate = v + return s +} + +// SetBlockedPhrasesToDelete sets the BlockedPhrasesToDelete field's value. +func (s *BlockedPhrasesConfigurationUpdate) SetBlockedPhrasesToDelete(v []*string) *BlockedPhrasesConfigurationUpdate { + s.BlockedPhrasesToDelete = v + return s +} + +// SetSystemMessageOverride sets the SystemMessageOverride field's value. +func (s *BlockedPhrasesConfigurationUpdate) SetSystemMessageOverride(v string) *BlockedPhrasesConfigurationUpdate { + s.SystemMessageOverride = &v + return s +} + +type ChatSyncInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application linked to the Amazon Q conversation. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // A list of files uploaded directly during chat. You can upload a maximum of + // 5 files of upto 10 MB each. + Attachments []*AttachmentInput_ `locationName:"attachments" min:"1" type:"list"` + + // Enables filtering of Amazon Q web experience responses based on document + // attributes or metadata fields. + AttributeFilter *AttributeFilter `locationName:"attributeFilter" type:"structure"` + + // A token that you provide to identify a chat request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The identifier of the Amazon Q conversation. + ConversationId *string `locationName:"conversationId" min:"36" type:"string"` + + // The identifier of the previous end user text input message in a conversation. + ParentMessageId *string `locationName:"parentMessageId" min:"36" type:"string"` + + // The groups that a user associated with the chat input belongs to. + UserGroups []*string `location:"querystring" locationName:"userGroups" type:"list"` + + // The identifier of the user attached to the chat input. + // + // UserId is a required field + UserId *string `location:"querystring" locationName:"userId" min:"1" type:"string" required:"true"` + + // A end user message in a conversation. + UserMessage *string `locationName:"userMessage" 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 ChatSyncInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChatSyncInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChatSyncInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChatSyncInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.Attachments != nil && len(s.Attachments) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attachments", 1)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ConversationId != nil && len(*s.ConversationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) + } + if s.ParentMessageId != nil && len(*s.ParentMessageId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ParentMessageId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + if s.UserMessage != nil && len(*s.UserMessage) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserMessage", 1)) + } + if s.Attachments != nil { + for i, v := range s.Attachments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attachments", i), err.(request.ErrInvalidParams)) + } + } + } + if s.AttributeFilter != nil { + if err := s.AttributeFilter.Validate(); err != nil { + invalidParams.AddNested("AttributeFilter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ChatSyncInput) SetApplicationId(v string) *ChatSyncInput { + s.ApplicationId = &v + return s +} + +// SetAttachments sets the Attachments field's value. +func (s *ChatSyncInput) SetAttachments(v []*AttachmentInput_) *ChatSyncInput { + s.Attachments = v + return s +} + +// SetAttributeFilter sets the AttributeFilter field's value. +func (s *ChatSyncInput) SetAttributeFilter(v *AttributeFilter) *ChatSyncInput { + s.AttributeFilter = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *ChatSyncInput) SetClientToken(v string) *ChatSyncInput { + s.ClientToken = &v + return s +} + +// SetConversationId sets the ConversationId field's value. +func (s *ChatSyncInput) SetConversationId(v string) *ChatSyncInput { + s.ConversationId = &v + return s +} + +// SetParentMessageId sets the ParentMessageId field's value. +func (s *ChatSyncInput) SetParentMessageId(v string) *ChatSyncInput { + s.ParentMessageId = &v + return s +} + +// SetUserGroups sets the UserGroups field's value. +func (s *ChatSyncInput) SetUserGroups(v []*string) *ChatSyncInput { + s.UserGroups = v + return s +} + +// SetUserId sets the UserId field's value. +func (s *ChatSyncInput) SetUserId(v string) *ChatSyncInput { + s.UserId = &v + return s +} + +// SetUserMessage sets the UserMessage field's value. +func (s *ChatSyncInput) SetUserMessage(v string) *ChatSyncInput { + s.UserMessage = &v + return s +} + +type ChatSyncOutput struct { + _ struct{} `type:"structure"` + + // A request from Amazon Q to the end user for information Amazon Q needs to + // successfully complete a requested plugin action. + ActionReview *ActionReview `locationName:"actionReview" type:"structure"` + + // The identifier of the Amazon Q conversation. + ConversationId *string `locationName:"conversationId" min:"36" type:"string"` + + // A list of files which failed to upload during chat. + FailedAttachments []*AttachmentOutput_ `locationName:"failedAttachments" type:"list"` + + // The source documents used to generate the conversation response. + SourceAttributions []*SourceAttribution `locationName:"sourceAttributions" type:"list"` + + // An AI-generated message in a conversation. + SystemMessage *string `locationName:"systemMessage" min:"1" type:"string"` + + // The identifier of an Amazon Q AI generated message within the conversation. + SystemMessageId *string `locationName:"systemMessageId" min:"36" type:"string"` + + // The identifier of an Amazon Q end user text input message within the conversation. + UserMessageId *string `locationName:"userMessageId" min:"36" 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 ChatSyncOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChatSyncOutput) GoString() string { + return s.String() +} + +// SetActionReview sets the ActionReview field's value. +func (s *ChatSyncOutput) SetActionReview(v *ActionReview) *ChatSyncOutput { + s.ActionReview = v + return s +} + +// SetConversationId sets the ConversationId field's value. +func (s *ChatSyncOutput) SetConversationId(v string) *ChatSyncOutput { + s.ConversationId = &v + return s +} + +// SetFailedAttachments sets the FailedAttachments field's value. +func (s *ChatSyncOutput) SetFailedAttachments(v []*AttachmentOutput_) *ChatSyncOutput { + s.FailedAttachments = v + return s +} + +// SetSourceAttributions sets the SourceAttributions field's value. +func (s *ChatSyncOutput) SetSourceAttributions(v []*SourceAttribution) *ChatSyncOutput { + s.SourceAttributions = v + return s +} + +// SetSystemMessage sets the SystemMessage field's value. +func (s *ChatSyncOutput) SetSystemMessage(v string) *ChatSyncOutput { + s.SystemMessage = &v + return s +} + +// SetSystemMessageId sets the SystemMessageId field's value. +func (s *ChatSyncOutput) SetSystemMessageId(v string) *ChatSyncOutput { + s.SystemMessageId = &v + return s +} + +// SetUserMessageId sets the UserMessageId field's value. +func (s *ChatSyncOutput) SetUserMessageId(v string) *ChatSyncOutput { + s.UserMessageId = &v + return s +} + +// You are trying to perform an action that conflicts with the current status +// of your resource. Fix any inconsistences with your resources and try again. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The message describing a ConflictException. + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The identifier of the resource affected. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" min:"1" type:"string" required:"true"` + + // The type of the resource affected. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" 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 ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A rule for configuring how Amazon Q responds when it encounters a a blocked +// topic. You can configure a custom message to inform your end users that they +// have asked about a restricted topic and suggest any next steps they should +// take. +type ContentBlockerRule struct { + _ struct{} `type:"structure"` + + // The configured custom message displayed to an end user informing them that + // they've used a blocked phrase during chat. + SystemMessageOverride *string `locationName:"systemMessageOverride" 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 ContentBlockerRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentBlockerRule) GoString() string { + return s.String() +} + +// SetSystemMessageOverride sets the SystemMessageOverride field's value. +func (s *ContentBlockerRule) SetSystemMessageOverride(v string) *ContentBlockerRule { + s.SystemMessageOverride = &v + return s +} + +// Rules for retrieving content from data sources connected to a Amazon Q application +// for a specific topic control configuration. +type ContentRetrievalRule struct { + _ struct{} `type:"structure"` + + // Specifies data sources in a Amazon Q application to use for content generation. + EligibleDataSources []*EligibleDataSource `locationName:"eligibleDataSources" 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 ContentRetrievalRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentRetrievalRule) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContentRetrievalRule) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContentRetrievalRule"} + if s.EligibleDataSources != nil { + for i, v := range s.EligibleDataSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EligibleDataSources", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEligibleDataSources sets the EligibleDataSources field's value. +func (s *ContentRetrievalRule) SetEligibleDataSources(v []*EligibleDataSource) *ContentRetrievalRule { + s.EligibleDataSources = v + return s +} + +// A conversation in an Amazon Q application. +type Conversation struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q conversation. + ConversationId *string `locationName:"conversationId" min:"36" type:"string"` + + // The start time of the conversation. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The title of the conversation. + Title *string `locationName:"title" 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 Conversation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Conversation) GoString() string { + return s.String() +} + +// SetConversationId sets the ConversationId field's value. +func (s *Conversation) SetConversationId(v string) *Conversation { + s.ConversationId = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *Conversation) SetStartTime(v time.Time) *Conversation { + s.StartTime = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *Conversation) SetTitle(v string) *Conversation { + s.Title = &v + return s +} + +type CreateApplicationInput struct { + _ struct{} `type:"structure"` + + // An option to allow end users to upload files directly during chat. + AttachmentsConfiguration *AttachmentsConfiguration `locationName:"attachmentsConfiguration" type:"structure"` + + // A token that you provide to identify the request to create your Amazon Q + // application. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // A description for the Amazon Q application. + Description *string `locationName:"description" type:"string"` + + // A name for the Amazon Q application. + // + // DisplayName is a required field + DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` + + // The identifier of the KMS key that is used to encrypt your data. Amazon Q + // doesn't support asymmetric keys. + EncryptionConfiguration *EncryptionConfiguration `locationName:"encryptionConfiguration" type:"structure"` + + // The Amazon Resource Name (ARN) of an IAM role with permissions to access + // your Amazon CloudWatch logs and metrics. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // A list of key-value pairs that identify or categorize your Amazon Q application. + // You can also use tags to help control access to the application. Tag keys + // and values can consist of Unicode letters, digits, white space, and any of + // the following symbols: _ . : / = + - @. + 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 CreateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DisplayName == nil { + invalidParams.Add(request.NewErrParamRequired("DisplayName")) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.AttachmentsConfiguration != nil { + if err := s.AttachmentsConfiguration.Validate(); err != nil { + invalidParams.AddNested("AttachmentsConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.EncryptionConfiguration != nil { + if err := s.EncryptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("EncryptionConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttachmentsConfiguration sets the AttachmentsConfiguration field's value. +func (s *CreateApplicationInput) SetAttachmentsConfiguration(v *AttachmentsConfiguration) *CreateApplicationInput { + s.AttachmentsConfiguration = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateApplicationInput) SetClientToken(v string) *CreateApplicationInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *CreateApplicationInput) SetDisplayName(v string) *CreateApplicationInput { + s.DisplayName = &v + return s +} + +// SetEncryptionConfiguration sets the EncryptionConfiguration field's value. +func (s *CreateApplicationInput) SetEncryptionConfiguration(v *EncryptionConfiguration) *CreateApplicationInput { + s.EncryptionConfiguration = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateApplicationInput) SetRoleArn(v string) *CreateApplicationInput { + s.RoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateApplicationInput) SetTags(v []*Tag) *CreateApplicationInput { + s.Tags = v + return s +} + +type CreateApplicationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q application. + ApplicationArn *string `locationName:"applicationArn" type:"string"` + + // The identifier of the Amazon Q application. + ApplicationId *string `locationName:"applicationId" min:"36" 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 CreateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationOutput) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *CreateApplicationOutput) SetApplicationArn(v string) *CreateApplicationOutput { + s.ApplicationArn = &v + return s +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreateApplicationOutput) SetApplicationId(v string) *CreateApplicationOutput { + s.ApplicationId = &v + return s +} + +type CreateIndexInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application using the index. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The capacity units you want to provision for your index. You can add and + // remove capacity to fit your usage needs. + CapacityConfiguration *IndexCapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` + + // A token that you provide to identify the request to create an index. Multiple + // calls to the CreateIndex API with the same client token will create only + // one index. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // A description for the Amazon Q index. + Description *string `locationName:"description" type:"string"` + + // A name for the Amazon Q index. + // + // DisplayName is a required field + DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` + + // A list of key-value pairs that identify or categorize the index. You can + // also use tags to help control access to the index. Tag keys and values can + // consist of Unicode letters, digits, white space, and any of the following + // symbols: _ . : / = + - @. + 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 CreateIndexInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIndexInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateIndexInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateIndexInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DisplayName == nil { + invalidParams.Add(request.NewErrParamRequired("DisplayName")) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.CapacityConfiguration != nil { + if err := s.CapacityConfiguration.Validate(); err != nil { + invalidParams.AddNested("CapacityConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreateIndexInput) SetApplicationId(v string) *CreateIndexInput { + s.ApplicationId = &v + return s +} + +// SetCapacityConfiguration sets the CapacityConfiguration field's value. +func (s *CreateIndexInput) SetCapacityConfiguration(v *IndexCapacityConfiguration) *CreateIndexInput { + s.CapacityConfiguration = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateIndexInput) SetClientToken(v string) *CreateIndexInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateIndexInput) SetDescription(v string) *CreateIndexInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *CreateIndexInput) SetDisplayName(v string) *CreateIndexInput { + s.DisplayName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateIndexInput) SetTags(v []*Tag) *CreateIndexInput { + s.Tags = v + return s +} + +type CreateIndexOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an Amazon Q index. + IndexArn *string `locationName:"indexArn" type:"string"` + + // The identifier for the Amazon Q index. + IndexId *string `locationName:"indexId" min:"36" 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 CreateIndexOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIndexOutput) GoString() string { + return s.String() +} + +// SetIndexArn sets the IndexArn field's value. +func (s *CreateIndexOutput) SetIndexArn(v string) *CreateIndexOutput { + s.IndexArn = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *CreateIndexOutput) SetIndexId(v string) *CreateIndexOutput { + s.IndexId = &v + return s +} + +type CreatePluginInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application that will contain the plugin. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // Authentication configuration information for an Amazon Q plugin. + // + // AuthConfiguration is a required field + AuthConfiguration *PluginAuthConfiguration `locationName:"authConfiguration" type:"structure" required:"true"` + + // A token that you provide to identify the request to create your Amazon Q + // plugin. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // A the name for your plugin. + // + // DisplayName is a required field + DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` + + // The source URL used for plugin configuration. + // + // ServerUrl is a required field + ServerUrl *string `locationName:"serverUrl" min:"1" type:"string" required:"true"` + + // A list of key-value pairs that identify or categorize the data source connector. + // You can also use tags to help control access to the data source connector. + // Tag keys and values can consist of Unicode letters, digits, white space, + // and any of the following symbols: _ . : / = + - @. + Tags []*Tag `locationName:"tags" type:"list"` + + // The type of plugin you want to create. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"PluginType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePluginInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePluginInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePluginInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePluginInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.AuthConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("AuthConfiguration")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DisplayName == nil { + invalidParams.Add(request.NewErrParamRequired("DisplayName")) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.ServerUrl == nil { + invalidParams.Add(request.NewErrParamRequired("ServerUrl")) + } + if s.ServerUrl != nil && len(*s.ServerUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServerUrl", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.AuthConfiguration != nil { + if err := s.AuthConfiguration.Validate(); err != nil { + invalidParams.AddNested("AuthConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreatePluginInput) SetApplicationId(v string) *CreatePluginInput { + s.ApplicationId = &v + return s +} + +// SetAuthConfiguration sets the AuthConfiguration field's value. +func (s *CreatePluginInput) SetAuthConfiguration(v *PluginAuthConfiguration) *CreatePluginInput { + s.AuthConfiguration = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreatePluginInput) SetClientToken(v string) *CreatePluginInput { + s.ClientToken = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *CreatePluginInput) SetDisplayName(v string) *CreatePluginInput { + s.DisplayName = &v + return s +} + +// SetServerUrl sets the ServerUrl field's value. +func (s *CreatePluginInput) SetServerUrl(v string) *CreatePluginInput { + s.ServerUrl = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreatePluginInput) SetTags(v []*Tag) *CreatePluginInput { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *CreatePluginInput) SetType(v string) *CreatePluginInput { + s.Type = &v + return s +} + +type CreatePluginOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of a plugin. + PluginArn *string `locationName:"pluginArn" type:"string"` + + // The identifier of the plugin created. + PluginId *string `locationName:"pluginId" min:"36" 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 CreatePluginOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreatePluginOutput) GoString() string { + return s.String() +} + +// SetPluginArn sets the PluginArn field's value. +func (s *CreatePluginOutput) SetPluginArn(v string) *CreatePluginOutput { + s.PluginArn = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *CreatePluginOutput) SetPluginId(v string) *CreatePluginOutput { + s.PluginId = &v + return s +} + +type CreateRetrieverInput struct { + _ struct{} `type:"structure"` + + // The identifier of your Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // A token that you provide to identify the request to create your Amazon Q + // application retriever. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Provides information on how the retriever used for your Amazon Q application + // is configured. + // + // Configuration is a required field + Configuration *RetrieverConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // The name of your retriever. + // + // DisplayName is a required field + DisplayName *string `locationName:"displayName" min:"1" type:"string" required:"true"` + + // The ARN of an IAM role used by Amazon Q to access the basic authentication + // credentials stored in a Secrets Manager secret. + RoleArn *string `locationName:"roleArn" type:"string"` + + // A list of key-value pairs that identify or categorize the retriever. You + // can also use tags to help control access to the retriever. Tag keys and values + // can consist of Unicode letters, digits, white space, and any of the following + // symbols: _ . : / = + - @. + Tags []*Tag `locationName:"tags" type:"list"` + + // The type of retriever you are using. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RetrieverType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRetrieverInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRetrieverInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRetrieverInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRetrieverInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + if s.DisplayName == nil { + invalidParams.Add(request.NewErrParamRequired("DisplayName")) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.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 +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreateRetrieverInput) SetApplicationId(v string) *CreateRetrieverInput { + s.ApplicationId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateRetrieverInput) SetClientToken(v string) *CreateRetrieverInput { + s.ClientToken = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateRetrieverInput) SetConfiguration(v *RetrieverConfiguration) *CreateRetrieverInput { + s.Configuration = v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *CreateRetrieverInput) SetDisplayName(v string) *CreateRetrieverInput { + s.DisplayName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateRetrieverInput) SetRoleArn(v string) *CreateRetrieverInput { + s.RoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRetrieverInput) SetTags(v []*Tag) *CreateRetrieverInput { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateRetrieverInput) SetType(v string) *CreateRetrieverInput { + s.Type = &v + return s +} + +type CreateRetrieverOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an IAM role associated with a retriever. + RetrieverArn *string `locationName:"retrieverArn" type:"string"` + + // The identifier of the retriever you are using. + RetrieverId *string `locationName:"retrieverId" min:"36" 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 CreateRetrieverOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRetrieverOutput) GoString() string { + return s.String() +} + +// SetRetrieverArn sets the RetrieverArn field's value. +func (s *CreateRetrieverOutput) SetRetrieverArn(v string) *CreateRetrieverOutput { + s.RetrieverArn = &v + return s +} + +// SetRetrieverId sets the RetrieverId field's value. +func (s *CreateRetrieverOutput) SetRetrieverId(v string) *CreateRetrieverOutput { + s.RetrieverId = &v + return s +} + +type CreateUserInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application for which the user mapping will be created. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // A token that you provide to identify the request to create your Amazon Q + // user mapping. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The list of user aliases in the mapping. + UserAliases []*UserAlias `locationName:"userAliases" type:"list"` + + // The user emails attached to a user mapping. + // + // UserId is a required field + UserId *string `locationName:"userId" 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 CreateUserInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUserInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateUserInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + if s.UserAliases != nil { + for i, v := range s.UserAliases { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAliases", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreateUserInput) SetApplicationId(v string) *CreateUserInput { + s.ApplicationId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateUserInput) SetClientToken(v string) *CreateUserInput { + s.ClientToken = &v + return s +} + +// SetUserAliases sets the UserAliases field's value. +func (s *CreateUserInput) SetUserAliases(v []*UserAlias) *CreateUserInput { + s.UserAliases = v + return s +} + +// SetUserId sets the UserId field's value. +func (s *CreateUserInput) SetUserId(v string) *CreateUserInput { + s.UserId = &v + return s +} + +type CreateUserOutput 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 CreateUserOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUserOutput) GoString() string { + return s.String() +} + +type CreateWebExperienceInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q web experience. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // A token you provide to identify a request to create an Amazon Q web experience. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // Determines whether sample prompts are enabled in the web experience for an + // end user. + SamplePromptsControlMode *string `locationName:"samplePromptsControlMode" type:"string" enum:"WebExperienceSamplePromptsControlMode"` + + // A subtitle to personalize your Amazon Q web experience. + Subtitle *string `locationName:"subtitle" type:"string"` + + // A list of key-value pairs that identify or categorize your Amazon Q web experience. + // You can also use tags to help control access to the web experience. Tag keys + // and values can consist of Unicode letters, digits, white space, and any of + // the following symbols: _ . : / = + - @. + Tags []*Tag `locationName:"tags" type:"list"` + + // The title for your Amazon Q web experience. + Title *string `locationName:"title" type:"string"` + + // The customized welcome message for end users of an Amazon Q web experience. + WelcomeMessage *string `locationName:"welcomeMessage" 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 CreateWebExperienceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWebExperienceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateWebExperienceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateWebExperienceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *CreateWebExperienceInput) SetApplicationId(v string) *CreateWebExperienceInput { + s.ApplicationId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateWebExperienceInput) SetClientToken(v string) *CreateWebExperienceInput { + s.ClientToken = &v + return s +} + +// SetSamplePromptsControlMode sets the SamplePromptsControlMode field's value. +func (s *CreateWebExperienceInput) SetSamplePromptsControlMode(v string) *CreateWebExperienceInput { + s.SamplePromptsControlMode = &v + return s +} + +// SetSubtitle sets the Subtitle field's value. +func (s *CreateWebExperienceInput) SetSubtitle(v string) *CreateWebExperienceInput { + s.Subtitle = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateWebExperienceInput) SetTags(v []*Tag) *CreateWebExperienceInput { + s.Tags = v + return s +} + +// SetTitle sets the Title field's value. +func (s *CreateWebExperienceInput) SetTitle(v string) *CreateWebExperienceInput { + s.Title = &v + return s +} + +// SetWelcomeMessage sets the WelcomeMessage field's value. +func (s *CreateWebExperienceInput) SetWelcomeMessage(v string) *CreateWebExperienceInput { + s.WelcomeMessage = &v + return s +} + +type CreateWebExperienceOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an Amazon Q web experience. + WebExperienceArn *string `locationName:"webExperienceArn" type:"string"` + + // The identifier of the Amazon Q web experience. + WebExperienceId *string `locationName:"webExperienceId" min:"36" 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 CreateWebExperienceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWebExperienceOutput) GoString() string { + return s.String() +} + +// SetWebExperienceArn sets the WebExperienceArn field's value. +func (s *CreateWebExperienceOutput) SetWebExperienceArn(v string) *CreateWebExperienceOutput { + s.WebExperienceArn = &v + return s +} + +// SetWebExperienceId sets the WebExperienceId field's value. +func (s *CreateWebExperienceOutput) SetWebExperienceId(v string) *CreateWebExperienceOutput { + s.WebExperienceId = &v + return s +} + +// A data source in an Amazon Q application. +type DataSource struct { + _ struct{} `type:"structure"` + + // The Unix timestamp when the Amazon Q data source was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The identifier of the Amazon Q data source. + DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` + + // The name of the Amazon Q data source. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The status of the Amazon Q data source. + Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The type of the Amazon Q data source. + Type *string `locationName:"type" min:"1" type:"string"` + + // The Unix timestamp when the Amazon Q data source was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 DataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSource) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DataSource) SetCreatedAt(v time.Time) *DataSource { + s.CreatedAt = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DataSource) SetDataSourceId(v string) *DataSource { + s.DataSourceId = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *DataSource) SetDisplayName(v string) *DataSource { + s.DisplayName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataSource) SetStatus(v string) *DataSource { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSource) SetType(v string) *DataSource { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DataSource) SetUpdatedAt(v time.Time) *DataSource { + s.UpdatedAt = &v + return s +} + +// Provides information about an Amazon Q data source connector synchronization +// job. +type DataSourceSyncJob struct { + _ struct{} `type:"structure"` + + // If the reason that the synchronization failed is due to an error with the + // underlying data source, this field contains a code that identifies the error. + DataSourceErrorCode *string `locationName:"dataSourceErrorCode" min:"1" type:"string"` + + // The Unix timestamp when the synchronization job completed. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // If the Status field is set to FAILED, the ErrorCode field indicates the reason + // the synchronization failed. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The identifier of a data source synchronization job. + ExecutionId *string `locationName:"executionId" min:"36" type:"string"` + + // Maps a batch delete document request to a specific data source sync job. + // This is optional and should only be supplied when documents are deleted by + // a data source connector. + Metrics *DataSourceSyncJobMetrics `locationName:"metrics" type:"structure"` + + // The Unix time stamp when the data source synchronization job started. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The status of the synchronization job. When the Status field is set to SUCCEEDED, + // the synchronization job is done. If the status code is FAILED, the ErrorCode + // and ErrorMessage fields give you the reason for the failure. + Status *string `locationName:"status" type:"string" enum:"DataSourceSyncJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceSyncJob) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceSyncJob) GoString() string { + return s.String() +} + +// SetDataSourceErrorCode sets the DataSourceErrorCode field's value. +func (s *DataSourceSyncJob) SetDataSourceErrorCode(v string) *DataSourceSyncJob { + s.DataSourceErrorCode = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *DataSourceSyncJob) SetEndTime(v time.Time) *DataSourceSyncJob { + s.EndTime = &v + return s +} + +// SetError sets the Error field's value. +func (s *DataSourceSyncJob) SetError(v *ErrorDetail) *DataSourceSyncJob { + s.Error = v + return s +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *DataSourceSyncJob) SetExecutionId(v string) *DataSourceSyncJob { + s.ExecutionId = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *DataSourceSyncJob) SetMetrics(v *DataSourceSyncJobMetrics) *DataSourceSyncJob { + s.Metrics = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *DataSourceSyncJob) SetStartTime(v time.Time) *DataSourceSyncJob { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataSourceSyncJob) SetStatus(v string) *DataSourceSyncJob { + s.Status = &v + return s +} + +// Maps a batch delete document request to a specific Amazon Q data source connector +// sync job. +type DataSourceSyncJobMetrics struct { + _ struct{} `type:"structure"` + + // The current count of documents added from the data source during the data + // source sync. + DocumentsAdded *string `locationName:"documentsAdded" type:"string"` + + // The current count of documents deleted from the data source during the data + // source sync. + DocumentsDeleted *string `locationName:"documentsDeleted" type:"string"` + + // The current count of documents that failed to sync from the data source during + // the data source sync. + DocumentsFailed *string `locationName:"documentsFailed" type:"string"` + + // The current count of documents modified in the data source during the data + // source sync. + DocumentsModified *string `locationName:"documentsModified" type:"string"` + + // The current count of documents crawled by the ongoing sync job in the data + // source. + DocumentsScanned *string `locationName:"documentsScanned" 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 DataSourceSyncJobMetrics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceSyncJobMetrics) GoString() string { + return s.String() +} + +// SetDocumentsAdded sets the DocumentsAdded field's value. +func (s *DataSourceSyncJobMetrics) SetDocumentsAdded(v string) *DataSourceSyncJobMetrics { + s.DocumentsAdded = &v + return s +} + +// SetDocumentsDeleted sets the DocumentsDeleted field's value. +func (s *DataSourceSyncJobMetrics) SetDocumentsDeleted(v string) *DataSourceSyncJobMetrics { + s.DocumentsDeleted = &v + return s +} + +// SetDocumentsFailed sets the DocumentsFailed field's value. +func (s *DataSourceSyncJobMetrics) SetDocumentsFailed(v string) *DataSourceSyncJobMetrics { + s.DocumentsFailed = &v + return s +} + +// SetDocumentsModified sets the DocumentsModified field's value. +func (s *DataSourceSyncJobMetrics) SetDocumentsModified(v string) *DataSourceSyncJobMetrics { + s.DocumentsModified = &v + return s +} + +// SetDocumentsScanned sets the DocumentsScanned field's value. +func (s *DataSourceSyncJobMetrics) SetDocumentsScanned(v string) *DataSourceSyncJobMetrics { + s.DocumentsScanned = &v + return s +} + +// Provides configuration information needed to connect to an Amazon VPC (Virtual +// Private Cloud). +type DataSourceVpcConfiguration struct { + _ struct{} `type:"structure"` + + // A list of identifiers of security groups within your Amazon VPC. The security + // groups should enable Amazon Q to connect to the data source. + // + // SecurityGroupIds is a required field + SecurityGroupIds []*string `locationName:"securityGroupIds" min:"1" type:"list" required:"true"` + + // A list of identifiers for subnets within your Amazon VPC. The subnets should + // be able to connect to each other in the VPC, and they should have outgoing + // access to the Internet through a NAT device. + // + // SubnetIds is a required field + SubnetIds []*string `locationName:"subnetIds" 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 DataSourceVpcConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceVpcConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSourceVpcConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceVpcConfiguration"} + if s.SecurityGroupIds == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds")) + } + if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1)) + } + if s.SubnetIds == nil { + invalidParams.Add(request.NewErrParamRequired("SubnetIds")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *DataSourceVpcConfiguration) SetSecurityGroupIds(v []*string) *DataSourceVpcConfiguration { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *DataSourceVpcConfiguration) SetSubnetIds(v []*string) *DataSourceVpcConfiguration { + s.SubnetIds = v + return s +} + +type DeleteApplicationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" 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 DeleteApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteApplicationInput) SetApplicationId(v string) *DeleteApplicationInput { + s.ApplicationId = &v + return s +} + +type DeleteApplicationOutput 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 DeleteApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationOutput) GoString() string { + return s.String() +} + +type DeleteChatControlsConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application the chat controls have been configured + // for. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" 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 DeleteChatControlsConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteChatControlsConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteChatControlsConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteChatControlsConfigurationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteChatControlsConfigurationInput) SetApplicationId(v string) *DeleteChatControlsConfigurationInput { + s.ApplicationId = &v + return s +} + +type DeleteChatControlsConfigurationOutput 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 DeleteChatControlsConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteChatControlsConfigurationOutput) GoString() string { + return s.String() +} + +type DeleteConversationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application associated with the conversation. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the Amazon Q web experience conversation being deleted. + // + // ConversationId is a required field + ConversationId *string `location:"uri" locationName:"conversationId" min:"36" type:"string" required:"true"` + + // The identifier of the user who is deleting the conversation. + // + // UserId is a required field + UserId *string `location:"querystring" locationName:"userId" 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 DeleteConversationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConversationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConversationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConversationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ConversationId == nil { + invalidParams.Add(request.NewErrParamRequired("ConversationId")) + } + if s.ConversationId != nil && len(*s.ConversationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteConversationInput) SetApplicationId(v string) *DeleteConversationInput { + s.ApplicationId = &v + return s +} + +// SetConversationId sets the ConversationId field's value. +func (s *DeleteConversationInput) SetConversationId(v string) *DeleteConversationInput { + s.ConversationId = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *DeleteConversationInput) SetUserId(v string) *DeleteConversationInput { + s.UserId = &v + return s +} + +type DeleteConversationOutput 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 DeleteConversationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConversationOutput) GoString() string { + return s.String() +} + +type DeleteDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application used with the data source connector. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source connector that you want to delete. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` + + // The identifier of the index used with the data source connector. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 DeleteDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteDataSourceInput) SetApplicationId(v string) *DeleteDataSourceInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DeleteDataSourceInput) SetDataSourceId(v string) *DeleteDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *DeleteDataSourceInput) SetIndexId(v string) *DeleteDataSourceInput { + s.IndexId = &v + return s +} + +type DeleteDataSourceOutput 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 DeleteDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDataSourceOutput) GoString() string { + return s.String() +} + +// A document deleted from an Amazon Q data source connector. +type DeleteDocument struct { + _ struct{} `type:"structure"` + + // The identifier of the deleted document. + // + // DocumentId is a required field + DocumentId *string `locationName:"documentId" 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 DeleteDocument) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDocument) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDocument) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDocument"} + if s.DocumentId == nil { + invalidParams.Add(request.NewErrParamRequired("DocumentId")) + } + if s.DocumentId != nil && len(*s.DocumentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DocumentId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDocumentId sets the DocumentId field's value. +func (s *DeleteDocument) SetDocumentId(v string) *DeleteDocument { + s.DocumentId = &v + return s +} + +type DeleteGroupInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application in which the group mapping belongs. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source linked to the group + // + // A group can be tied to multiple data sources. You can delete a group from + // accessing documents in a certain data source. For example, the groups "Research", + // "Engineering", and "Sales and Marketing" are all tied to the company's documents + // stored in the data sources Confluence and Salesforce. You want to delete + // "Research" and "Engineering" groups from Salesforce, so that these groups + // cannot access customer-related documents stored in Salesforce. Only "Sales + // and Marketing" should access documents in the Salesforce data source. + DataSourceId *string `location:"querystring" locationName:"dataSourceId" min:"36" type:"string"` + + // The name of the group you want to delete. + // + // GroupName is a required field + GroupName *string `location:"uri" locationName:"groupName" min:"1" type:"string" required:"true"` + + // The identifier of the index you want to delete the group from. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 DeleteGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGroupInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteGroupInput) SetApplicationId(v string) *DeleteGroupInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *DeleteGroupInput) SetDataSourceId(v string) *DeleteGroupInput { + s.DataSourceId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *DeleteGroupInput) SetGroupName(v string) *DeleteGroupInput { + s.GroupName = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *DeleteGroupInput) SetIndexId(v string) *DeleteGroupInput { + s.IndexId = &v + return s +} + +type DeleteGroupOutput 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 DeleteGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteGroupOutput) GoString() string { + return s.String() +} + +type DeleteIndexInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application the Amazon Q index is linked to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the Amazon Q index. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 DeleteIndexInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIndexInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteIndexInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteIndexInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteIndexInput) SetApplicationId(v string) *DeleteIndexInput { + s.ApplicationId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *DeleteIndexInput) SetIndexId(v string) *DeleteIndexInput { + s.IndexId = &v + return s +} + +type DeleteIndexOutput 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 DeleteIndexOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIndexOutput) GoString() string { + return s.String() +} + +type DeletePluginInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier the application attached to the Amazon Q plugin. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the plugin being deleted. + // + // PluginId is a required field + PluginId *string `location:"uri" locationName:"pluginId" min:"36" 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 DeletePluginInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePluginInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeletePluginInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeletePluginInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.PluginId == nil { + invalidParams.Add(request.NewErrParamRequired("PluginId")) + } + if s.PluginId != nil && len(*s.PluginId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeletePluginInput) SetApplicationId(v string) *DeletePluginInput { + s.ApplicationId = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *DeletePluginInput) SetPluginId(v string) *DeletePluginInput { + s.PluginId = &v + return s +} + +type DeletePluginOutput 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 DeletePluginOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeletePluginOutput) GoString() string { + return s.String() +} + +type DeleteRetrieverInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application using the retriever. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the retriever being deleted. + // + // RetrieverId is a required field + RetrieverId *string `location:"uri" locationName:"retrieverId" min:"36" 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 DeleteRetrieverInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRetrieverInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRetrieverInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRetrieverInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.RetrieverId == nil { + invalidParams.Add(request.NewErrParamRequired("RetrieverId")) + } + if s.RetrieverId != nil && len(*s.RetrieverId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("RetrieverId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteRetrieverInput) SetApplicationId(v string) *DeleteRetrieverInput { + s.ApplicationId = &v + return s +} + +// SetRetrieverId sets the RetrieverId field's value. +func (s *DeleteRetrieverInput) SetRetrieverId(v string) *DeleteRetrieverInput { + s.RetrieverId = &v + return s +} + +type DeleteRetrieverOutput 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 DeleteRetrieverOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRetrieverOutput) GoString() string { + return s.String() +} + +type DeleteUserInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application from which the user is being deleted. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The user email being deleted. + // + // UserId is a required field + UserId *string `location:"uri" locationName:"userId" 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 DeleteUserInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteUserInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteUserInput) SetApplicationId(v string) *DeleteUserInput { + s.ApplicationId = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *DeleteUserInput) SetUserId(v string) *DeleteUserInput { + s.UserId = &v + return s +} + +type DeleteUserOutput 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 DeleteUserOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteUserOutput) GoString() string { + return s.String() +} + +type DeleteWebExperienceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application linked to the Amazon Q web experience. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the Amazon Q web experience being deleted. + // + // WebExperienceId is a required field + WebExperienceId *string `location:"uri" locationName:"webExperienceId" min:"36" 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 DeleteWebExperienceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteWebExperienceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteWebExperienceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteWebExperienceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.WebExperienceId == nil { + invalidParams.Add(request.NewErrParamRequired("WebExperienceId")) + } + if s.WebExperienceId != nil && len(*s.WebExperienceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("WebExperienceId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DeleteWebExperienceInput) SetApplicationId(v string) *DeleteWebExperienceInput { + s.ApplicationId = &v + return s +} + +// SetWebExperienceId sets the WebExperienceId field's value. +func (s *DeleteWebExperienceInput) SetWebExperienceId(v string) *DeleteWebExperienceInput { + s.WebExperienceId = &v + return s +} + +type DeleteWebExperienceOutput 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 DeleteWebExperienceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteWebExperienceOutput) GoString() string { + return s.String() +} + +// A document in an Amazon Q application. +type Document struct { + _ struct{} `type:"structure"` + + // Configuration information for access permission to a document. + AccessConfiguration *AccessConfiguration `locationName:"accessConfiguration" type:"structure"` + + // Custom attributes to apply to the document for refining Amazon Q web experience + // responses. + Attributes []*DocumentAttribute `locationName:"attributes" min:"1" type:"list"` + + // The contents of the document. + Content *DocumentContent `locationName:"content" type:"structure"` + + // The file type of the document in the Blob field. + // + // If you want to index snippets or subsets of HTML documents instead of the + // entirety of the HTML documents, you add the HTML start and closing tags (content) + // around the content. + ContentType *string `locationName:"contentType" type:"string" enum:"ContentType"` + + // The configuration information for altering document metadata and content + // during the document ingestion process. + DocumentEnrichmentConfiguration *DocumentEnrichmentConfiguration `locationName:"documentEnrichmentConfiguration" type:"structure"` + + // The identifier of the document. + // + // Id is a required field + Id *string `locationName:"id" min:"1" type:"string" required:"true"` + + // The title of the document. + Title *string `locationName:"title" 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 Document) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Document) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Document) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Document"} + if s.Attributes != nil && len(s.Attributes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attributes", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.Title != nil && len(*s.Title) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Title", 1)) + } + if s.AccessConfiguration != nil { + if err := s.AccessConfiguration.Validate(); err != nil { + invalidParams.AddNested("AccessConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Attributes != nil { + for i, v := range s.Attributes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Content != nil { + if err := s.Content.Validate(); err != nil { + invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) + } + } + if s.DocumentEnrichmentConfiguration != nil { + if err := s.DocumentEnrichmentConfiguration.Validate(); err != nil { + invalidParams.AddNested("DocumentEnrichmentConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessConfiguration sets the AccessConfiguration field's value. +func (s *Document) SetAccessConfiguration(v *AccessConfiguration) *Document { + s.AccessConfiguration = v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *Document) SetAttributes(v []*DocumentAttribute) *Document { + s.Attributes = v + return s +} + +// SetContent sets the Content field's value. +func (s *Document) SetContent(v *DocumentContent) *Document { + s.Content = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *Document) SetContentType(v string) *Document { + s.ContentType = &v + return s +} + +// SetDocumentEnrichmentConfiguration sets the DocumentEnrichmentConfiguration field's value. +func (s *Document) SetDocumentEnrichmentConfiguration(v *DocumentEnrichmentConfiguration) *Document { + s.DocumentEnrichmentConfiguration = v + return s +} + +// SetId sets the Id field's value. +func (s *Document) SetId(v string) *Document { + s.Id = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *Document) SetTitle(v string) *Document { + s.Title = &v + return s +} + +// A document attribute or metadata field. +type DocumentAttribute struct { + _ struct{} `type:"structure"` + + // The identifier for the attribute. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The value of the attribute. + // + // Value is a required field + Value *DocumentAttributeValue `locationName:"value" 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 DocumentAttribute) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentAttribute) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentAttribute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentAttribute"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DocumentAttribute) SetName(v string) *DocumentAttribute { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *DocumentAttribute) SetValue(v *DocumentAttributeValue) *DocumentAttribute { + s.Value = v + return s +} + +// The condition used for the target document attribute or metadata field when +// ingesting documents into Amazon Q. You use this with DocumentAttributeTarget +// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html) +// to apply the condition. +// +// For example, you can create the 'Department' target field and have it prefill +// department names associated with the documents based on information in the +// 'Source_URI' field. Set the condition that if the 'Source_URI' field contains +// 'financial' in its URI value, then prefill the target field 'Department' +// with the target value 'Finance' for the document. +// +// Amazon Q can't create a target field if it has not already been created as +// an index field. After you create your index field, you can create a document +// metadata field using DocumentAttributeTarget. Amazon Q then will map your +// newly created metadata field to your index field. +type DocumentAttributeCondition struct { + _ struct{} `type:"structure"` + + // The identifier of the document attribute used for the condition. + // + // For example, 'Source_URI' could be an identifier for the attribute or metadata + // field that contains source URIs associated with the documents. + // + // Amazon Q currently doesn't support _document_body as an attribute key used + // for the condition. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + // The identifier of the document attribute used for the condition. + // + // For example, 'Source_URI' could be an identifier for the attribute or metadata + // field that contains source URIs associated with the documents. + // + // Amazon Kendra currently does not support _document_body as an attribute key + // used for the condition. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"DocumentEnrichmentConditionOperator"` + + // The value of a document attribute. You can only provide one value for a document + // attribute. + Value *DocumentAttributeValue `locationName:"value" 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 DocumentAttributeCondition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentAttributeCondition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentAttributeCondition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeCondition"} + 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.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *DocumentAttributeCondition) SetKey(v string) *DocumentAttributeCondition { + s.Key = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *DocumentAttributeCondition) SetOperator(v string) *DocumentAttributeCondition { + s.Operator = &v + return s +} + +// SetValue sets the Value field's value. +func (s *DocumentAttributeCondition) SetValue(v *DocumentAttributeValue) *DocumentAttributeCondition { + s.Value = v + return s +} + +// Configuration information for document attributes. Document attributes are +// metadata or fields associated with your documents. For example, the company +// department name associated with each document. +// +// For more information, see Understanding document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes.html). +type DocumentAttributeConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the document attribute. + Name *string `locationName:"name" min:"1" type:"string"` + + // Information about whether the document attribute can be used by an end user + // to search for information on their web experience. + Search *string `locationName:"search" type:"string" enum:"Status"` + + // The type of document attribute. + Type *string `locationName:"type" type:"string" enum:"AttributeType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentAttributeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentAttributeConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentAttributeConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeConfiguration"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DocumentAttributeConfiguration) SetName(v string) *DocumentAttributeConfiguration { + s.Name = &v + return s +} + +// SetSearch sets the Search field's value. +func (s *DocumentAttributeConfiguration) SetSearch(v string) *DocumentAttributeConfiguration { + s.Search = &v + return s +} + +// SetType sets the Type field's value. +func (s *DocumentAttributeConfiguration) SetType(v string) *DocumentAttributeConfiguration { + s.Type = &v + return s +} + +// The target document attribute or metadata field you want to alter when ingesting +// documents into Amazon Q. +// +// For example, you can delete all customer identification numbers associated +// with the documents, stored in the document metadata field called 'Customer_ID' +// by setting the target key as 'Customer_ID' and the deletion flag to TRUE. +// This removes all customer ID values in the field 'Customer_ID'. This would +// scrub personally identifiable information from each document's metadata. +// +// Amazon Q can't create a target field if it has not already been created as +// an index field. After you create your index field, you can create a document +// metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html). +// Amazon Q will then map your newly created document attribute to your index +// field. +// +// You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeCondition.html). +type DocumentAttributeTarget struct { + _ struct{} `type:"structure"` + + // TRUE to delete the existing target value for your specified target attribute + // key. You cannot create a target value and set this to TRUE. + AttributeValueOperator *string `locationName:"attributeValueOperator" type:"string" enum:"AttributeValueOperator"` + + // The identifier of the target document attribute or metadata field. For example, + // 'Department' could be an identifier for the target attribute or metadata + // field that includes the department names associated with the documents. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + // The value of a document attribute. You can only provide one value for a document + // attribute. + Value *DocumentAttributeValue `locationName:"value" 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 DocumentAttributeTarget) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentAttributeTarget) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentAttributeTarget) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeTarget"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributeValueOperator sets the AttributeValueOperator field's value. +func (s *DocumentAttributeTarget) SetAttributeValueOperator(v string) *DocumentAttributeTarget { + s.AttributeValueOperator = &v + return s +} + +// SetKey sets the Key field's value. +func (s *DocumentAttributeTarget) SetKey(v string) *DocumentAttributeTarget { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *DocumentAttributeTarget) SetValue(v *DocumentAttributeValue) *DocumentAttributeTarget { + s.Value = v + return s +} + +// The value of a document attribute. You can only provide one value for a document +// attribute. +type DocumentAttributeValue struct { + _ struct{} `type:"structure"` + + // A date expressed as an ISO 8601 string. + // + // It's important for the time zone to be included in the ISO 8601 date-time + // format. For example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time + // format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European + // Time. + DateValue *time.Time `locationName:"dateValue" type:"timestamp"` + + // A long integer value. + LongValue *int64 `locationName:"longValue" type:"long"` + + // A list of strings. + StringListValue []*string `locationName:"stringListValue" type:"list"` + + // A string. + StringValue *string `locationName:"stringValue" 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 DocumentAttributeValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentAttributeValue) GoString() string { + return s.String() +} + +// SetDateValue sets the DateValue field's value. +func (s *DocumentAttributeValue) SetDateValue(v time.Time) *DocumentAttributeValue { + s.DateValue = &v + return s +} + +// SetLongValue sets the LongValue field's value. +func (s *DocumentAttributeValue) SetLongValue(v int64) *DocumentAttributeValue { + s.LongValue = &v + return s +} + +// SetStringListValue sets the StringListValue field's value. +func (s *DocumentAttributeValue) SetStringListValue(v []*string) *DocumentAttributeValue { + s.StringListValue = v + return s +} + +// SetStringValue sets the StringValue field's value. +func (s *DocumentAttributeValue) SetStringValue(v string) *DocumentAttributeValue { + s.StringValue = &v + return s +} + +// The contents of a document. +type DocumentContent struct { + _ struct{} `type:"structure"` + + // The contents of the document. Documents passed to the blob parameter must + // be base64 encoded. Your code might not need to encode the document file bytes + // if you're using an Amazon Web Services SDK to call Amazon Q APIs. If you + // are calling the Amazon Q endpoint directly using REST, you must base64 encode + // the contents before sending. + // Blob is automatically base64 encoded/decoded by the SDK. + Blob []byte `locationName:"blob" type:"blob"` + + // The path to the document in an Amazon S3 bucket. + S3 *S3 `locationName:"s3" 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 DocumentContent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentContent) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentContent) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentContent"} + if s.S3 != nil { + if err := s.S3.Validate(); err != nil { + invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBlob sets the Blob field's value. +func (s *DocumentContent) SetBlob(v []byte) *DocumentContent { + s.Blob = v + return s +} + +// SetS3 sets the S3 field's value. +func (s *DocumentContent) SetS3(v *S3) *DocumentContent { + s.S3 = v + return s +} + +// The details of a document within an Amazon Q index. +type DocumentDetails struct { + _ struct{} `type:"structure"` + + // The timestamp for when the document was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The identifier of the document. + DocumentId *string `locationName:"documentId" min:"1" type:"string"` + + // An error message associated with the document. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The current status of the document. + Status *string `locationName:"status" type:"string" enum:"DocumentStatus"` + + // The timestamp for when the document was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 DocumentDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentDetails) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DocumentDetails) SetCreatedAt(v time.Time) *DocumentDetails { + s.CreatedAt = &v + return s +} + +// SetDocumentId sets the DocumentId field's value. +func (s *DocumentDetails) SetDocumentId(v string) *DocumentDetails { + s.DocumentId = &v + return s +} + +// SetError sets the Error field's value. +func (s *DocumentDetails) SetError(v *ErrorDetail) *DocumentDetails { + s.Error = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DocumentDetails) SetStatus(v string) *DocumentDetails { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DocumentDetails) SetUpdatedAt(v time.Time) *DocumentDetails { + s.UpdatedAt = &v + return s +} + +// Provides the configuration information for altering document metadata and +// content during the document ingestion process. +// +// For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). +type DocumentEnrichmentConfiguration struct { + _ struct{} `type:"structure"` + + // Configuration information to alter document attributes or metadata fields + // and content when ingesting documents into Amazon Q. + InlineConfigurations []*InlineDocumentEnrichmentConfiguration `locationName:"inlineConfigurations" min:"1" type:"list"` + + // Provides the configuration information for invoking a Lambda function in + // Lambda to alter document metadata and content when ingesting documents into + // Amazon Q. + // + // You can configure your Lambda function using PreExtractionHookConfiguration + // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html) + // if you want to apply advanced alterations on the original or raw documents. + // + // If you want to apply advanced alterations on the Amazon Q structured documents, + // you must configure your Lambda function using PostExtractionHookConfiguration + // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html). + // + // You can only invoke one Lambda function. However, this function can invoke + // other functions it requires. + // + // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). + PostExtractionHookConfiguration *HookConfiguration `locationName:"postExtractionHookConfiguration" type:"structure"` + + // Provides the configuration information for invoking a Lambda function in + // Lambda to alter document metadata and content when ingesting documents into + // Amazon Q. + // + // You can configure your Lambda function using PreExtractionHookConfiguration + // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html) + // if you want to apply advanced alterations on the original or raw documents. + // + // If you want to apply advanced alterations on the Amazon Q structured documents, + // you must configure your Lambda function using PostExtractionHookConfiguration + // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html). + // + // You can only invoke one Lambda function. However, this function can invoke + // other functions it requires. + // + // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). + PreExtractionHookConfiguration *HookConfiguration `locationName:"preExtractionHookConfiguration" 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 DocumentEnrichmentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentEnrichmentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentEnrichmentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentEnrichmentConfiguration"} + if s.InlineConfigurations != nil && len(s.InlineConfigurations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InlineConfigurations", 1)) + } + if s.InlineConfigurations != nil { + for i, v := range s.InlineConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InlineConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } + if s.PostExtractionHookConfiguration != nil { + if err := s.PostExtractionHookConfiguration.Validate(); err != nil { + invalidParams.AddNested("PostExtractionHookConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.PreExtractionHookConfiguration != nil { + if err := s.PreExtractionHookConfiguration.Validate(); err != nil { + invalidParams.AddNested("PreExtractionHookConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInlineConfigurations sets the InlineConfigurations field's value. +func (s *DocumentEnrichmentConfiguration) SetInlineConfigurations(v []*InlineDocumentEnrichmentConfiguration) *DocumentEnrichmentConfiguration { + s.InlineConfigurations = v + return s +} + +// SetPostExtractionHookConfiguration sets the PostExtractionHookConfiguration field's value. +func (s *DocumentEnrichmentConfiguration) SetPostExtractionHookConfiguration(v *HookConfiguration) *DocumentEnrichmentConfiguration { + s.PostExtractionHookConfiguration = v + return s +} + +// SetPreExtractionHookConfiguration sets the PreExtractionHookConfiguration field's value. +func (s *DocumentEnrichmentConfiguration) SetPreExtractionHookConfiguration(v *HookConfiguration) *DocumentEnrichmentConfiguration { + s.PreExtractionHookConfiguration = v + return s +} + +// The identifier of the data source Amazon Q will generate responses from. +type EligibleDataSource struct { + _ struct{} `type:"structure"` + + // The identifier of the data source. + DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` + + // The identifier of the index the data source is attached to. + IndexId *string `locationName:"indexId" min:"36" 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 EligibleDataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EligibleDataSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EligibleDataSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EligibleDataSource"} + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *EligibleDataSource) SetDataSourceId(v string) *EligibleDataSource { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *EligibleDataSource) SetIndexId(v string) *EligibleDataSource { + s.IndexId = &v + return s +} + +// Provides the identifier of the KMS key used to encrypt data indexed by Amazon +// Q. Amazon Q doesn't support asymmetric keys. +type EncryptionConfiguration struct { + _ struct{} `type:"structure"` + + // The identifier of the KMS key. Amazon Q doesn't support asymmetric keys. + // + // KmsKeyId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EncryptionConfiguration's + // String and GoString methods. + KmsKeyId *string `locationName:"kmsKeyId" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EncryptionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EncryptionConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EncryptionConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EncryptionConfiguration"} + if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *EncryptionConfiguration) SetKmsKeyId(v string) *EncryptionConfiguration { + s.KmsKeyId = &v + return s +} + +// Provides information about a data source sync error. +type ErrorDetail struct { + _ struct{} `type:"structure"` + + // The code associated with the data source sync error. + ErrorCode *string `locationName:"errorCode" type:"string" enum:"ErrorCode"` + + // The message explaining the data source sync error. + ErrorMessage *string `locationName:"errorMessage" 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 ErrorDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ErrorDetail) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *ErrorDetail) SetErrorCode(v string) *ErrorDetail { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ErrorDetail) SetErrorMessage(v string) *ErrorDetail { + s.ErrorMessage = &v + return s +} + +// A list of documents that could not be removed from an Amazon Q index. Each +// entry contains an error message that indicates why the document couldn't +// be removed from the index. +type FailedDocument struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q data source connector that contains the failed + // document. + DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` + + // An explanation for why the document couldn't be removed from the index. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The identifier of the document that couldn't be removed from the Amazon Q + // index. + Id *string `locationName:"id" 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 FailedDocument) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailedDocument) GoString() string { + return s.String() +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *FailedDocument) SetDataSourceId(v string) *FailedDocument { + s.DataSourceId = &v + return s +} + +// SetError sets the Error field's value. +func (s *FailedDocument) SetError(v *ErrorDetail) *FailedDocument { + s.Error = v + return s +} + +// SetId sets the Id field's value. +func (s *FailedDocument) SetId(v string) *FailedDocument { + s.Id = &v + return s +} + +type GetApplicationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" 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 GetApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetApplicationInput) SetApplicationId(v string) *GetApplicationInput { + s.ApplicationId = &v + return s +} + +type GetApplicationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q application. + ApplicationArn *string `locationName:"applicationArn" type:"string"` + + // The identifier of the Amazon Q application. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // Settings for whether end users can upload files directly during chat. + AttachmentsConfiguration *AppliedAttachmentsConfiguration `locationName:"attachmentsConfiguration" type:"structure"` + + // The Unix timestamp when the Amazon Q application was last updated. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // A description for the Amazon Q application. + Description *string `locationName:"description" type:"string"` + + // The name of the Amazon Q application. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The identifier of the Amazon Web Services KMS key that is used to encrypt + // your data. Amazon Q doesn't support asymmetric keys. + EncryptionConfiguration *EncryptionConfiguration `locationName:"encryptionConfiguration" type:"structure"` + + // If the Status field is set to ERROR, the ErrorMessage field contains a description + // of the error that caused the synchronization to fail. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The Amazon Resource Name (ARN) of the IAM with permissions to access your + // CloudWatch logs and metrics. + RoleArn *string `locationName:"roleArn" type:"string"` + + // The status of the Amazon Q application. + Status *string `locationName:"status" type:"string" enum:"ApplicationStatus"` + + // The Unix timestamp when the Amazon Q application was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 GetApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationOutput) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *GetApplicationOutput) SetApplicationArn(v string) *GetApplicationOutput { + s.ApplicationArn = &v + return s +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetApplicationOutput) SetApplicationId(v string) *GetApplicationOutput { + s.ApplicationId = &v + return s +} + +// SetAttachmentsConfiguration sets the AttachmentsConfiguration field's value. +func (s *GetApplicationOutput) SetAttachmentsConfiguration(v *AppliedAttachmentsConfiguration) *GetApplicationOutput { + s.AttachmentsConfiguration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetApplicationOutput) SetCreatedAt(v time.Time) *GetApplicationOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetApplicationOutput) SetDescription(v string) *GetApplicationOutput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *GetApplicationOutput) SetDisplayName(v string) *GetApplicationOutput { + s.DisplayName = &v + return s +} + +// SetEncryptionConfiguration sets the EncryptionConfiguration field's value. +func (s *GetApplicationOutput) SetEncryptionConfiguration(v *EncryptionConfiguration) *GetApplicationOutput { + s.EncryptionConfiguration = v + return s +} + +// SetError sets the Error field's value. +func (s *GetApplicationOutput) SetError(v *ErrorDetail) *GetApplicationOutput { + s.Error = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *GetApplicationOutput) SetRoleArn(v string) *GetApplicationOutput { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetApplicationOutput) SetStatus(v string) *GetApplicationOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetApplicationOutput) SetUpdatedAt(v time.Time) *GetApplicationOutput { + s.UpdatedAt = &v + return s +} + +type GetChatControlsConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application for which the chat controls are configured. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The maximum number of configured chat controls to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q chat controls configured. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChatControlsConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChatControlsConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetChatControlsConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetChatControlsConfigurationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetChatControlsConfigurationInput) SetApplicationId(v string) *GetChatControlsConfigurationInput { + s.ApplicationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetChatControlsConfigurationInput) SetMaxResults(v int64) *GetChatControlsConfigurationInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetChatControlsConfigurationInput) SetNextToken(v string) *GetChatControlsConfigurationInput { + s.NextToken = &v + return s +} + +type GetChatControlsConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The phrases blocked from chat by your chat control configuration. + BlockedPhrases *BlockedPhrasesConfiguration `locationName:"blockedPhrases" type:"structure"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q chat controls configured. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The response scope configured for a Amazon Q application. This determines + // whether your application uses its retrieval augmented generation (RAG) system + // to generate answers only from your enterprise data, or also uses the large + // language models (LLM) knowledge to respons to end user questions in chat. + ResponseScope *string `locationName:"responseScope" type:"string" enum:"ResponseScope"` + + // The topic specific controls configured for a Amazon Q application. + TopicConfigurations []*TopicConfiguration `locationName:"topicConfigurations" 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 GetChatControlsConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChatControlsConfigurationOutput) GoString() string { + return s.String() +} + +// SetBlockedPhrases sets the BlockedPhrases field's value. +func (s *GetChatControlsConfigurationOutput) SetBlockedPhrases(v *BlockedPhrasesConfiguration) *GetChatControlsConfigurationOutput { + s.BlockedPhrases = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetChatControlsConfigurationOutput) SetNextToken(v string) *GetChatControlsConfigurationOutput { + s.NextToken = &v + return s +} + +// SetResponseScope sets the ResponseScope field's value. +func (s *GetChatControlsConfigurationOutput) SetResponseScope(v string) *GetChatControlsConfigurationOutput { + s.ResponseScope = &v + return s +} + +// SetTopicConfigurations sets the TopicConfigurations field's value. +func (s *GetChatControlsConfigurationOutput) SetTopicConfigurations(v []*TopicConfiguration) *GetChatControlsConfigurationOutput { + s.TopicConfigurations = v + return s +} + +type GetDataSourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source connector. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` + + // The identfier of the index used with the data source connector. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 GetDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetDataSourceInput) SetApplicationId(v string) *GetDataSourceInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *GetDataSourceInput) SetDataSourceId(v string) *GetDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *GetDataSourceInput) SetIndexId(v string) *GetDataSourceInput { + s.IndexId = &v + return s +} + +type GetDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // The Unix timestamp when the data source connector was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) of the data source. + DataSourceArn *string `locationName:"dataSourceArn" type:"string"` + + // The identifier of the data source connector. + DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` + + // The description for the data source connector. + Description *string `locationName:"description" type:"string"` + + // The name for the data source connector. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // Provides the configuration information for altering document metadata and + // content during the document ingestion process. + // + // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). + DocumentEnrichmentConfiguration *DocumentEnrichmentConfiguration `locationName:"documentEnrichmentConfiguration" type:"structure"` + + // When the Status field value is FAILED, the ErrorMessage field contains a + // description of the error that caused the data source connector to fail. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The identifier of the index linked to the data source connector. + IndexId *string `locationName:"indexId" min:"36" type:"string"` + + // The Amazon Resource Name (ARN) of the role with permission to access the + // data source and required resources. + RoleArn *string `locationName:"roleArn" type:"string"` + + // The current status of the data source connector. When the Status field value + // is FAILED, the ErrorMessage field contains a description of the error that + // caused the data source connector to fail. + Status *string `locationName:"status" type:"string" enum:"DataSourceStatus"` + + // The schedule for Amazon Q to update the index. + SyncSchedule *string `locationName:"syncSchedule" type:"string"` + + // The type of the data source connector. For example, S3. + Type *string `locationName:"type" min:"1" type:"string"` + + // The Unix timestamp when the data source connector was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // Configuration information for an Amazon VPC (Virtual Private Cloud) to connect + // to your data source. + VpcConfiguration *DataSourceVpcConfiguration `locationName:"vpcConfiguration" 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 GetDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetDataSourceOutput) SetApplicationId(v string) *GetDataSourceOutput { + s.ApplicationId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetDataSourceOutput) SetCreatedAt(v time.Time) *GetDataSourceOutput { + s.CreatedAt = &v + return s +} + +// SetDataSourceArn sets the DataSourceArn field's value. +func (s *GetDataSourceOutput) SetDataSourceArn(v string) *GetDataSourceOutput { + s.DataSourceArn = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *GetDataSourceOutput) SetDataSourceId(v string) *GetDataSourceOutput { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetDataSourceOutput) SetDescription(v string) *GetDataSourceOutput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *GetDataSourceOutput) SetDisplayName(v string) *GetDataSourceOutput { + s.DisplayName = &v + return s +} + +// SetDocumentEnrichmentConfiguration sets the DocumentEnrichmentConfiguration field's value. +func (s *GetDataSourceOutput) SetDocumentEnrichmentConfiguration(v *DocumentEnrichmentConfiguration) *GetDataSourceOutput { + s.DocumentEnrichmentConfiguration = v + return s +} + +// SetError sets the Error field's value. +func (s *GetDataSourceOutput) SetError(v *ErrorDetail) *GetDataSourceOutput { + s.Error = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *GetDataSourceOutput) SetIndexId(v string) *GetDataSourceOutput { + s.IndexId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *GetDataSourceOutput) SetRoleArn(v string) *GetDataSourceOutput { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDataSourceOutput) SetStatus(v string) *GetDataSourceOutput { + s.Status = &v + return s +} + +// SetSyncSchedule sets the SyncSchedule field's value. +func (s *GetDataSourceOutput) SetSyncSchedule(v string) *GetDataSourceOutput { + s.SyncSchedule = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetDataSourceOutput) SetType(v string) *GetDataSourceOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetDataSourceOutput) SetUpdatedAt(v time.Time) *GetDataSourceOutput { + s.UpdatedAt = &v + return s +} + +// SetVpcConfiguration sets the VpcConfiguration field's value. +func (s *GetDataSourceOutput) SetVpcConfiguration(v *DataSourceVpcConfiguration) *GetDataSourceOutput { + s.VpcConfiguration = v + return s +} + +type GetGroupInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application id the group is attached to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source the group is attached to. + DataSourceId *string `location:"querystring" locationName:"dataSourceId" min:"36" type:"string"` + + // The name of the group. + // + // GroupName is a required field + GroupName *string `location:"uri" locationName:"groupName" min:"1" type:"string" required:"true"` + + // The identifier of the index the group is attached to. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 GetGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetGroupInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetGroupInput) SetApplicationId(v string) *GetGroupInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *GetGroupInput) SetDataSourceId(v string) *GetGroupInput { + s.DataSourceId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *GetGroupInput) SetGroupName(v string) *GetGroupInput { + s.GroupName = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *GetGroupInput) SetIndexId(v string) *GetGroupInput { + s.IndexId = &v + return s +} + +type GetGroupOutput struct { + _ struct{} `type:"structure"` + + // The current status of the group. + Status *GroupStatusDetail `locationName:"status" type:"structure"` + + // The status history of the group. + StatusHistory []*GroupStatusDetail `locationName:"statusHistory" 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 GetGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetGroupOutput) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *GetGroupOutput) SetStatus(v *GroupStatusDetail) *GetGroupOutput { + s.Status = v + return s +} + +// SetStatusHistory sets the StatusHistory field's value. +func (s *GetGroupOutput) SetStatusHistory(v []*GroupStatusDetail) *GetGroupOutput { + s.StatusHistory = v + return s +} + +type GetIndexInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application connected to the index. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the Amazon Q index you want information on. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 GetIndexInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIndexInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetIndexInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetIndexInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetIndexInput) SetApplicationId(v string) *GetIndexInput { + s.ApplicationId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *GetIndexInput) SetIndexId(v string) *GetIndexInput { + s.IndexId = &v + return s +} + +type GetIndexOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application associated with the index. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // The storage capacity units chosen for your Amazon Q index. + CapacityConfiguration *IndexCapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` + + // The Unix timestamp when the Amazon Q index was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The description for the Amazon Q index. + Description *string `locationName:"description" type:"string"` + + // The name of the Amazon Q index. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // Configuration information for document attributes or metadata. Document metadata + // are fields associated with your documents. For example, the company department + // name associated with each document. For more information, see Understanding + // document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes). + DocumentAttributeConfigurations []*DocumentAttributeConfiguration `locationName:"documentAttributeConfigurations" min:"1" type:"list"` + + // When the Status field value is FAILED, the ErrorMessage field contains a + // message that explains why. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q index. + IndexArn *string `locationName:"indexArn" type:"string"` + + // The identifier of the Amazon Q index. + IndexId *string `locationName:"indexId" min:"36" type:"string"` + + // Provides information about the number of documents indexed. + IndexStatistics *IndexStatistics `locationName:"indexStatistics" type:"structure"` + + // The current status of the index. When the value is ACTIVE, the index is ready + // for use. If the Status field value is FAILED, the ErrorMessage field contains + // a message that explains why. + Status *string `locationName:"status" type:"string" enum:"IndexStatus"` + + // The Unix timestamp when the Amazon Q index was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 GetIndexOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetIndexOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetIndexOutput) SetApplicationId(v string) *GetIndexOutput { + s.ApplicationId = &v + return s +} + +// SetCapacityConfiguration sets the CapacityConfiguration field's value. +func (s *GetIndexOutput) SetCapacityConfiguration(v *IndexCapacityConfiguration) *GetIndexOutput { + s.CapacityConfiguration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetIndexOutput) SetCreatedAt(v time.Time) *GetIndexOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetIndexOutput) SetDescription(v string) *GetIndexOutput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *GetIndexOutput) SetDisplayName(v string) *GetIndexOutput { + s.DisplayName = &v + return s +} + +// SetDocumentAttributeConfigurations sets the DocumentAttributeConfigurations field's value. +func (s *GetIndexOutput) SetDocumentAttributeConfigurations(v []*DocumentAttributeConfiguration) *GetIndexOutput { + s.DocumentAttributeConfigurations = v + return s +} + +// SetError sets the Error field's value. +func (s *GetIndexOutput) SetError(v *ErrorDetail) *GetIndexOutput { + s.Error = v + return s +} + +// SetIndexArn sets the IndexArn field's value. +func (s *GetIndexOutput) SetIndexArn(v string) *GetIndexOutput { + s.IndexArn = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *GetIndexOutput) SetIndexId(v string) *GetIndexOutput { + s.IndexId = &v + return s +} + +// SetIndexStatistics sets the IndexStatistics field's value. +func (s *GetIndexOutput) SetIndexStatistics(v *IndexStatistics) *GetIndexOutput { + s.IndexStatistics = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetIndexOutput) SetStatus(v string) *GetIndexOutput { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetIndexOutput) SetUpdatedAt(v time.Time) *GetIndexOutput { + s.UpdatedAt = &v + return s +} + +type GetPluginInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application which contains the plugin. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the plugin. + // + // PluginId is a required field + PluginId *string `location:"uri" locationName:"pluginId" min:"36" 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 GetPluginInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPluginInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetPluginInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetPluginInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.PluginId == nil { + invalidParams.Add(request.NewErrParamRequired("PluginId")) + } + if s.PluginId != nil && len(*s.PluginId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetPluginInput) SetApplicationId(v string) *GetPluginInput { + s.ApplicationId = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *GetPluginInput) SetPluginId(v string) *GetPluginInput { + s.PluginId = &v + return s +} + +type GetPluginOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the application which contains the plugin. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // Authentication configuration information for an Amazon Q plugin. + AuthConfiguration *PluginAuthConfiguration `locationName:"authConfiguration" type:"structure"` + + // The timestamp for when the plugin was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The name of the plugin. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the role with permission to access resources + // needed to create the plugin. + PluginArn *string `locationName:"pluginArn" type:"string"` + + // The identifier of the plugin. + PluginId *string `locationName:"pluginId" min:"36" type:"string"` + + // The source URL used for plugin configuration. + ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` + + // The current state of the plugin. + State *string `locationName:"state" type:"string" enum:"PluginState"` + + // The type of the plugin. + Type *string `locationName:"type" type:"string" enum:"PluginType"` + + // The timestamp for when the plugin was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 GetPluginOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetPluginOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetPluginOutput) SetApplicationId(v string) *GetPluginOutput { + s.ApplicationId = &v + return s +} + +// SetAuthConfiguration sets the AuthConfiguration field's value. +func (s *GetPluginOutput) SetAuthConfiguration(v *PluginAuthConfiguration) *GetPluginOutput { + s.AuthConfiguration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetPluginOutput) SetCreatedAt(v time.Time) *GetPluginOutput { + s.CreatedAt = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *GetPluginOutput) SetDisplayName(v string) *GetPluginOutput { + s.DisplayName = &v + return s +} + +// SetPluginArn sets the PluginArn field's value. +func (s *GetPluginOutput) SetPluginArn(v string) *GetPluginOutput { + s.PluginArn = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *GetPluginOutput) SetPluginId(v string) *GetPluginOutput { + s.PluginId = &v + return s +} + +// SetServerUrl sets the ServerUrl field's value. +func (s *GetPluginOutput) SetServerUrl(v string) *GetPluginOutput { + s.ServerUrl = &v + return s +} + +// SetState sets the State field's value. +func (s *GetPluginOutput) SetState(v string) *GetPluginOutput { + s.State = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetPluginOutput) SetType(v string) *GetPluginOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetPluginOutput) SetUpdatedAt(v time.Time) *GetPluginOutput { + s.UpdatedAt = &v + return s +} + +type GetRetrieverInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application using the retriever. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the retriever. + // + // RetrieverId is a required field + RetrieverId *string `location:"uri" locationName:"retrieverId" min:"36" 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 GetRetrieverInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRetrieverInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRetrieverInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRetrieverInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.RetrieverId == nil { + invalidParams.Add(request.NewErrParamRequired("RetrieverId")) + } + if s.RetrieverId != nil && len(*s.RetrieverId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("RetrieverId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetRetrieverInput) SetApplicationId(v string) *GetRetrieverInput { + s.ApplicationId = &v + return s +} + +// SetRetrieverId sets the RetrieverId field's value. +func (s *GetRetrieverInput) SetRetrieverId(v string) *GetRetrieverInput { + s.RetrieverId = &v + return s +} + +type GetRetrieverOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application using the retriever. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // Provides information on how the retriever used for your Amazon Q application + // is configured. + Configuration *RetrieverConfiguration `locationName:"configuration" type:"structure"` + + // The Unix timestamp when the retriever was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The name of the retriever. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role associated with the retriever. + RetrieverArn *string `locationName:"retrieverArn" type:"string"` + + // The identifier of the retriever. + RetrieverId *string `locationName:"retrieverId" min:"36" type:"string"` + + // The Amazon Resource Name (ARN) of the role with the permission to access + // the retriever and required resources. + RoleArn *string `locationName:"roleArn" type:"string"` + + // The status of the retriever. + Status *string `locationName:"status" type:"string" enum:"RetrieverStatus"` + + // The type of the retriever. + Type *string `locationName:"type" type:"string" enum:"RetrieverType"` + + // The Unix timestamp when the retriever was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 GetRetrieverOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRetrieverOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetRetrieverOutput) SetApplicationId(v string) *GetRetrieverOutput { + s.ApplicationId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *GetRetrieverOutput) SetConfiguration(v *RetrieverConfiguration) *GetRetrieverOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetRetrieverOutput) SetCreatedAt(v time.Time) *GetRetrieverOutput { + s.CreatedAt = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *GetRetrieverOutput) SetDisplayName(v string) *GetRetrieverOutput { + s.DisplayName = &v + return s +} + +// SetRetrieverArn sets the RetrieverArn field's value. +func (s *GetRetrieverOutput) SetRetrieverArn(v string) *GetRetrieverOutput { + s.RetrieverArn = &v + return s +} + +// SetRetrieverId sets the RetrieverId field's value. +func (s *GetRetrieverOutput) SetRetrieverId(v string) *GetRetrieverOutput { + s.RetrieverId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *GetRetrieverOutput) SetRoleArn(v string) *GetRetrieverOutput { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetRetrieverOutput) SetStatus(v string) *GetRetrieverOutput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetRetrieverOutput) SetType(v string) *GetRetrieverOutput { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetRetrieverOutput) SetUpdatedAt(v time.Time) *GetRetrieverOutput { + s.UpdatedAt = &v + return s +} + +type GetUserInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application connected to the user. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The user email address attached to the user. + // + // UserId is a required field + UserId *string `location:"uri" locationName:"userId" 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 GetUserInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUserInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetUserInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetUserInput) SetApplicationId(v string) *GetUserInput { + s.ApplicationId = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *GetUserInput) SetUserId(v string) *GetUserInput { + s.UserId = &v + return s +} + +type GetUserOutput struct { + _ struct{} `type:"structure"` + + // A list of user aliases attached to a user. + UserAliases []*UserAlias `locationName:"userAliases" 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 GetUserOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUserOutput) GoString() string { + return s.String() +} + +// SetUserAliases sets the UserAliases field's value. +func (s *GetUserOutput) SetUserAliases(v []*UserAlias) *GetUserOutput { + s.UserAliases = v + return s +} + +type GetWebExperienceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application linked to the web experience. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the Amazon Q web experience. + // + // WebExperienceId is a required field + WebExperienceId *string `location:"uri" locationName:"webExperienceId" min:"36" 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 GetWebExperienceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetWebExperienceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetWebExperienceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetWebExperienceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.WebExperienceId == nil { + invalidParams.Add(request.NewErrParamRequired("WebExperienceId")) + } + if s.WebExperienceId != nil && len(*s.WebExperienceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("WebExperienceId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetWebExperienceInput) SetApplicationId(v string) *GetWebExperienceInput { + s.ApplicationId = &v + return s +} + +// SetWebExperienceId sets the WebExperienceId field's value. +func (s *GetWebExperienceInput) SetWebExperienceId(v string) *GetWebExperienceInput { + s.WebExperienceId = &v + return s +} + +type GetWebExperienceOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application linked to the web experience. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // The authentication configuration information for your Amazon Q web experience. + AuthenticationConfiguration *WebExperienceAuthConfiguration `locationName:"authenticationConfiguration" type:"structure"` + + // The Unix timestamp when the retriever was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The endpoint of your Amazon Q web experience. + DefaultEndpoint *string `locationName:"defaultEndpoint" min:"1" type:"string"` + + // When the Status field value is FAILED, the ErrorMessage field contains a + // description of the error that caused the data source connector to fail. + Error *ErrorDetail `locationName:"error" type:"structure"` + + // Determines whether sample prompts are enabled in the web experience for an + // end user. + SamplePromptsControlMode *string `locationName:"samplePromptsControlMode" type:"string" enum:"WebExperienceSamplePromptsControlMode"` + + // The current status of the Amazon Q web experience. When the Status field + // value is FAILED, the ErrorMessage field contains a description of the error + // that caused the data source connector to fail. + Status *string `locationName:"status" type:"string" enum:"WebExperienceStatus"` + + // The subtitle for your Amazon Q web experience. + Subtitle *string `locationName:"subtitle" type:"string"` + + // The title for your Amazon Q web experience. + Title *string `locationName:"title" type:"string"` + + // The Unix timestamp when the data source connector was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) of the role with the permission to access + // the Amazon Q web experience and required resources. + WebExperienceArn *string `locationName:"webExperienceArn" type:"string"` + + // The identifier of the Amazon Q web experience. + WebExperienceId *string `locationName:"webExperienceId" min:"36" type:"string"` + + // The customized welcome message for end users of an Amazon Q web experience. + WelcomeMessage *string `locationName:"welcomeMessage" 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 GetWebExperienceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetWebExperienceOutput) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *GetWebExperienceOutput) SetApplicationId(v string) *GetWebExperienceOutput { + s.ApplicationId = &v + return s +} + +// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. +func (s *GetWebExperienceOutput) SetAuthenticationConfiguration(v *WebExperienceAuthConfiguration) *GetWebExperienceOutput { + s.AuthenticationConfiguration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetWebExperienceOutput) SetCreatedAt(v time.Time) *GetWebExperienceOutput { + s.CreatedAt = &v + return s +} + +// SetDefaultEndpoint sets the DefaultEndpoint field's value. +func (s *GetWebExperienceOutput) SetDefaultEndpoint(v string) *GetWebExperienceOutput { + s.DefaultEndpoint = &v + return s +} + +// SetError sets the Error field's value. +func (s *GetWebExperienceOutput) SetError(v *ErrorDetail) *GetWebExperienceOutput { + s.Error = v + return s +} + +// SetSamplePromptsControlMode sets the SamplePromptsControlMode field's value. +func (s *GetWebExperienceOutput) SetSamplePromptsControlMode(v string) *GetWebExperienceOutput { + s.SamplePromptsControlMode = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetWebExperienceOutput) SetStatus(v string) *GetWebExperienceOutput { + s.Status = &v + return s +} + +// SetSubtitle sets the Subtitle field's value. +func (s *GetWebExperienceOutput) SetSubtitle(v string) *GetWebExperienceOutput { + s.Subtitle = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *GetWebExperienceOutput) SetTitle(v string) *GetWebExperienceOutput { + s.Title = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetWebExperienceOutput) SetUpdatedAt(v time.Time) *GetWebExperienceOutput { + s.UpdatedAt = &v + return s +} + +// SetWebExperienceArn sets the WebExperienceArn field's value. +func (s *GetWebExperienceOutput) SetWebExperienceArn(v string) *GetWebExperienceOutput { + s.WebExperienceArn = &v + return s +} + +// SetWebExperienceId sets the WebExperienceId field's value. +func (s *GetWebExperienceOutput) SetWebExperienceId(v string) *GetWebExperienceOutput { + s.WebExperienceId = &v + return s +} + +// SetWelcomeMessage sets the WelcomeMessage field's value. +func (s *GetWebExperienceOutput) SetWelcomeMessage(v string) *GetWebExperienceOutput { + s.WelcomeMessage = &v + return s +} + +// A list of users or sub groups that belong to a group. This is for generating +// Amazon Q chat results only from document a user has access to. +type GroupMembers struct { + _ struct{} `type:"structure"` + + // A list of sub groups that belong to a group. For example, the sub groups + // "Research", "Engineering", and "Sales and Marketing" all belong to the group + // "Company". + MemberGroups []*MemberGroup `locationName:"memberGroups" min:"1" type:"list"` + + // A list of users that belong to a group. For example, a list of interns all + // belong to the "Interns" group. + MemberUsers []*MemberUser `locationName:"memberUsers" 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 GroupMembers) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupMembers) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GroupMembers) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GroupMembers"} + if s.MemberGroups != nil && len(s.MemberGroups) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MemberGroups", 1)) + } + if s.MemberUsers != nil && len(s.MemberUsers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MemberUsers", 1)) + } + if s.MemberGroups != nil { + for i, v := range s.MemberGroups { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberGroups", i), err.(request.ErrInvalidParams)) + } + } + } + if s.MemberUsers != nil { + for i, v := range s.MemberUsers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberUsers", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMemberGroups sets the MemberGroups field's value. +func (s *GroupMembers) SetMemberGroups(v []*MemberGroup) *GroupMembers { + s.MemberGroups = v + return s +} + +// SetMemberUsers sets the MemberUsers field's value. +func (s *GroupMembers) SetMemberUsers(v []*MemberUser) *GroupMembers { + s.MemberUsers = v + return s +} + +// Provides the details of a group's status. +type GroupStatusDetail struct { + _ struct{} `type:"structure"` + + // The details of an error associated a group status. + ErrorDetail *ErrorDetail `locationName:"errorDetail" type:"structure"` + + // The Unix timestamp when the Amazon Q application was last updated. + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"` + + // The status of a group. + Status *string `locationName:"status" type:"string" enum:"GroupStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupStatusDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupStatusDetail) GoString() string { + return s.String() +} + +// SetErrorDetail sets the ErrorDetail field's value. +func (s *GroupStatusDetail) SetErrorDetail(v *ErrorDetail) *GroupStatusDetail { + s.ErrorDetail = v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *GroupStatusDetail) SetLastUpdatedAt(v time.Time) *GroupStatusDetail { + s.LastUpdatedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GroupStatusDetail) SetStatus(v string) *GroupStatusDetail { + s.Status = &v + return s +} + +// Summary information for groups. +type GroupSummary struct { + _ struct{} `type:"structure"` + + // The name of the group the summary information is for. + GroupName *string `locationName:"groupName" 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 GroupSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupSummary) GoString() string { + return s.String() +} + +// SetGroupName sets the GroupName field's value. +func (s *GroupSummary) SetGroupName(v string) *GroupSummary { + s.GroupName = &v + return s +} + +// Provides the configuration information for invoking a Lambda function in +// Lambda to alter document metadata and content when ingesting documents into +// Amazon Q. +// +// You can configure your Lambda function using PreExtractionHookConfiguration +// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html) +// if you want to apply advanced alterations on the original or raw documents. +// +// If you want to apply advanced alterations on the Amazon Q structured documents, +// you must configure your Lambda function using PostExtractionHookConfiguration +// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html). +// +// You can only invoke one Lambda function. However, this function can invoke +// other functions it requires. +// +// For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). +type HookConfiguration struct { + _ struct{} `type:"structure"` + + // The condition used for when a Lambda function should be invoked. + // + // For example, you can specify a condition that if there are empty date-time + // values, then Amazon Q should invoke a function that inserts the current date-time. + InvocationCondition *DocumentAttributeCondition `locationName:"invocationCondition" type:"structure"` + + // The Amazon Resource Name (ARN) of a role with permission to run a Lambda + // function during ingestion. For more information, see IAM roles for Custom + // Document Enrichment (CDE) (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/iam-roles.html#cde-iam-role). + LambdaArn *string `locationName:"lambdaArn" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of a role with permission to run PreExtractionHookConfiguration + // and PostExtractionHookConfiguration for altering document metadata and content + // during the document ingestion process. + RoleArn *string `locationName:"roleArn" type:"string"` + + // Stores the original, raw documents or the structured, parsed documents before + // and after altering them. For more information, see Data contracts for Lambda + // functions (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/cde-lambda-operations.html#cde-lambda-operations-data-contracts). + S3BucketName *string `locationName:"s3BucketName" 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 HookConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s HookConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *HookConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HookConfiguration"} + if s.LambdaArn != nil && len(*s.LambdaArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LambdaArn", 1)) + } + if s.S3BucketName != nil && len(*s.S3BucketName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3BucketName", 1)) + } + if s.InvocationCondition != nil { + if err := s.InvocationCondition.Validate(); err != nil { + invalidParams.AddNested("InvocationCondition", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInvocationCondition sets the InvocationCondition field's value. +func (s *HookConfiguration) SetInvocationCondition(v *DocumentAttributeCondition) *HookConfiguration { + s.InvocationCondition = v + return s +} + +// SetLambdaArn sets the LambdaArn field's value. +func (s *HookConfiguration) SetLambdaArn(v string) *HookConfiguration { + s.LambdaArn = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *HookConfiguration) SetRoleArn(v string) *HookConfiguration { + s.RoleArn = &v + return s +} + +// SetS3BucketName sets the S3BucketName field's value. +func (s *HookConfiguration) SetS3BucketName(v string) *HookConfiguration { + s.S3BucketName = &v + return s +} + +// Summary information for your Amazon Q index. +type Index struct { + _ struct{} `type:"structure"` + + // The Unix timestamp when the index was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The name of the index. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The identifier for the index. + IndexId *string `locationName:"indexId" min:"36" type:"string"` + + // The current status of the index. When the status is ACTIVE, the index is + // ready. + Status *string `locationName:"status" type:"string" enum:"IndexStatus"` + + // The Unix timestamp when the index was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 Index) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Index) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Index) SetCreatedAt(v time.Time) *Index { + s.CreatedAt = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *Index) SetDisplayName(v string) *Index { + s.DisplayName = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *Index) SetIndexId(v string) *Index { + s.IndexId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Index) SetStatus(v string) *Index { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Index) SetUpdatedAt(v time.Time) *Index { + s.UpdatedAt = &v + return s +} + +// Provides information about index capacity configuration. +type IndexCapacityConfiguration struct { + _ struct{} `type:"structure"` + + // The number of storage units configured for an Amazon Q index. + Units *int64 `locationName:"units" min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IndexCapacityConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IndexCapacityConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IndexCapacityConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IndexCapacityConfiguration"} + if s.Units != nil && *s.Units < 1 { + invalidParams.Add(request.NewErrParamMinValue("Units", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetUnits sets the Units field's value. +func (s *IndexCapacityConfiguration) SetUnits(v int64) *IndexCapacityConfiguration { + s.Units = &v + return s +} + +// Provides information about the number of documents in an index. +type IndexStatistics struct { + _ struct{} `type:"structure"` + + // The number of documents indexed. + TextDocumentStatistics *TextDocumentStatistics `locationName:"textDocumentStatistics" 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 IndexStatistics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IndexStatistics) GoString() string { + return s.String() +} + +// SetTextDocumentStatistics sets the TextDocumentStatistics field's value. +func (s *IndexStatistics) SetTextDocumentStatistics(v *TextDocumentStatistics) *IndexStatistics { + s.TextDocumentStatistics = v + return s +} + +// Provides the configuration information for applying basic logic to alter +// document metadata and content when ingesting documents into Amazon Q. +// +// To apply advanced logic, to go beyond what you can do with basic logic, see +// HookConfiguration (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_HookConfiguration.html). +// +// For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). +type InlineDocumentEnrichmentConfiguration struct { + _ struct{} `type:"structure"` + + // The condition used for the target document attribute or metadata field when + // ingesting documents into Amazon Q. You use this with DocumentAttributeTarget + // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html) + // to apply the condition. + // + // For example, you can create the 'Department' target field and have it prefill + // department names associated with the documents based on information in the + // 'Source_URI' field. Set the condition that if the 'Source_URI' field contains + // 'financial' in its URI value, then prefill the target field 'Department' + // with the target value 'Finance' for the document. + // + // Amazon Q can't create a target field if it has not already been created as + // an index field. After you create your index field, you can create a document + // metadata field using DocumentAttributeTarget. Amazon Q then will map your + // newly created metadata field to your index field. + Condition *DocumentAttributeCondition `locationName:"condition" type:"structure"` + + // TRUE to delete content if the condition used for the target attribute is + // met. + DocumentContentOperator *string `locationName:"documentContentOperator" type:"string" enum:"DocumentContentOperator"` + + // The target document attribute or metadata field you want to alter when ingesting + // documents into Amazon Q. + // + // For example, you can delete all customer identification numbers associated + // with the documents, stored in the document metadata field called 'Customer_ID' + // by setting the target key as 'Customer_ID' and the deletion flag to TRUE. + // This removes all customer ID values in the field 'Customer_ID'. This would + // scrub personally identifiable information from each document's metadata. + // + // Amazon Q can't create a target field if it has not already been created as + // an index field. After you create your index field, you can create a document + // metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html). + // Amazon Q will then map your newly created document attribute to your index + // field. + // + // You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeCondition.html). + Target *DocumentAttributeTarget `locationName:"target" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InlineDocumentEnrichmentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InlineDocumentEnrichmentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InlineDocumentEnrichmentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InlineDocumentEnrichmentConfiguration"} + if s.Condition != nil { + if err := s.Condition.Validate(); err != nil { + invalidParams.AddNested("Condition", err.(request.ErrInvalidParams)) + } + } + if s.Target != nil { + if err := s.Target.Validate(); err != nil { + invalidParams.AddNested("Target", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCondition sets the Condition field's value. +func (s *InlineDocumentEnrichmentConfiguration) SetCondition(v *DocumentAttributeCondition) *InlineDocumentEnrichmentConfiguration { + s.Condition = v + return s +} + +// SetDocumentContentOperator sets the DocumentContentOperator field's value. +func (s *InlineDocumentEnrichmentConfiguration) SetDocumentContentOperator(v string) *InlineDocumentEnrichmentConfiguration { + s.DocumentContentOperator = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *InlineDocumentEnrichmentConfiguration) SetTarget(v *DocumentAttributeTarget) *InlineDocumentEnrichmentConfiguration { + s.Target = v + return s +} + +// An issue occurred with the internal server used for your Amazon Q service. +// Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) +// for help. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" 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 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 +} + +// Stores an Amazon Kendra index as a retriever. +type KendraIndexConfiguration struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Kendra index. + // + // IndexId is a required field + IndexId *string `locationName:"indexId" min:"36" 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 KendraIndexConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KendraIndexConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KendraIndexConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KendraIndexConfiguration"} + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIndexId sets the IndexId field's value. +func (s *KendraIndexConfiguration) SetIndexId(v string) *KendraIndexConfiguration { + s.IndexId = &v + return s +} + +// You don't have permissions to perform the action because your license is +// inactive. Ask your admin to activate your license and try again after your +// licence is active. +type LicenseNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" 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 LicenseNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LicenseNotFoundException) GoString() string { + return s.String() +} + +func newErrorLicenseNotFoundException(v protocol.ResponseMetadata) error { + return &LicenseNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *LicenseNotFoundException) Code() string { + return "LicenseNotFoundException" +} + +// Message returns the exception's message. +func (s *LicenseNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *LicenseNotFoundException) OrigErr() error { + return nil +} + +func (s *LicenseNotFoundException) 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 *LicenseNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *LicenseNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListApplicationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of Amazon Q applications to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q applications. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput { + s.NextToken = &v + return s +} + +type ListApplicationsOutput struct { + _ struct{} `type:"structure"` + + // An array of summary information on the configuration of one or more Amazon + // Q applications. + Applications []*Application `locationName:"applications" type:"list"` + + // If the response is truncated, Amazon Q returns this token. You can use this + // token in a subsequent request to retrieve the next set of applications. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) GoString() string { + return s.String() +} + +// SetApplications sets the Applications field's value. +func (s *ListApplicationsOutput) SetApplications(v []*Application) *ListApplicationsOutput { + s.Applications = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput { + s.NextToken = &v + return s +} + +type ListConversationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The maximum number of Amazon Q conversations to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q conversations. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the user involved in the Amazon Q web experience conversation. + // + // UserId is a required field + UserId *string `location:"querystring" locationName:"userId" 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 ListConversationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConversationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConversationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConversationsInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListConversationsInput) SetApplicationId(v string) *ListConversationsInput { + s.ApplicationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConversationsInput) SetMaxResults(v int64) *ListConversationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConversationsInput) SetNextToken(v string) *ListConversationsInput { + s.NextToken = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *ListConversationsInput) SetUserId(v string) *ListConversationsInput { + s.UserId = &v + return s +} + +type ListConversationsOutput struct { + _ struct{} `type:"structure"` + + // An array of summary information on the configuration of one or more Amazon + // Q web experiences. + Conversations []*Conversation `locationName:"conversations" type:"list"` + + // If the response is truncated, Amazon Q returns this token, which you can + // use in a later request to list the next set of messages. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConversationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConversationsOutput) GoString() string { + return s.String() +} + +// SetConversations sets the Conversations field's value. +func (s *ListConversationsOutput) SetConversations(v []*Conversation) *ListConversationsOutput { + s.Conversations = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConversationsOutput) SetNextToken(v string) *ListConversationsOutput { + s.NextToken = &v + return s +} + +type ListDataSourceSyncJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application connected to the data source. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source connector. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` + + // The end time of the data source connector sync. + EndTime *time.Time `location:"querystring" locationName:"endTime" type:"timestamp"` + + // The identifier of the index used with the Amazon Q data source connector. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The maximum number of synchronization jobs to return in the response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incpmplete because there is more data to retriever, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of responses. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The start time of the data source connector sync. + StartTime *time.Time `location:"querystring" locationName:"startTime" type:"timestamp"` + + // Only returns synchronization jobs with the Status field equal to the specified + // status. + StatusFilter *string `location:"querystring" locationName:"syncStatus" type:"string" enum:"DataSourceSyncJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceSyncJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceSyncJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourceSyncJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourceSyncJobsInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListDataSourceSyncJobsInput) SetApplicationId(v string) *ListDataSourceSyncJobsInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *ListDataSourceSyncJobsInput) SetDataSourceId(v string) *ListDataSourceSyncJobsInput { + s.DataSourceId = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *ListDataSourceSyncJobsInput) SetEndTime(v time.Time) *ListDataSourceSyncJobsInput { + s.EndTime = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *ListDataSourceSyncJobsInput) SetIndexId(v string) *ListDataSourceSyncJobsInput { + s.IndexId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourceSyncJobsInput) SetMaxResults(v int64) *ListDataSourceSyncJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourceSyncJobsInput) SetNextToken(v string) *ListDataSourceSyncJobsInput { + s.NextToken = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ListDataSourceSyncJobsInput) SetStartTime(v time.Time) *ListDataSourceSyncJobsInput { + s.StartTime = &v + return s +} + +// SetStatusFilter sets the StatusFilter field's value. +func (s *ListDataSourceSyncJobsInput) SetStatusFilter(v string) *ListDataSourceSyncJobsInput { + s.StatusFilter = &v + return s +} + +type ListDataSourceSyncJobsOutput struct { + _ struct{} `type:"structure"` + + // A history of synchronization jobs for the data source connector. + History []*DataSourceSyncJob `locationName:"history" type:"list"` + + // If the response is truncated, Amazon Q returns this token. You can use this + // token in any subsequent request to retrieve the next set of jobs. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceSyncJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourceSyncJobsOutput) GoString() string { + return s.String() +} + +// SetHistory sets the History field's value. +func (s *ListDataSourceSyncJobsOutput) SetHistory(v []*DataSourceSyncJob) *ListDataSourceSyncJobsOutput { + s.History = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourceSyncJobsOutput) SetNextToken(v string) *ListDataSourceSyncJobsOutput { + s.NextToken = &v + return s +} + +type ListDataSourcesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application linked to the data source connectors. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the index used with one or more data source connectors. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The maximum number of data source connectors to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q data source connectors. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListDataSourcesInput) SetApplicationId(v string) *ListDataSourcesInput { + s.ApplicationId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *ListDataSourcesInput) SetIndexId(v string) *ListDataSourcesInput { + s.IndexId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput { + s.NextToken = &v + return s +} + +type ListDataSourcesOutput struct { + _ struct{} `type:"structure"` + + // An array of summary information for one or more data source connector. + DataSources []*DataSource `locationName:"dataSources" type:"list"` + + // If the response is truncated, Amazon Q returns this token. You can use this + // token in a subsequent request to retrieve the next set of data source connectors. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDataSourcesOutput) GoString() string { + return s.String() +} + +// SetDataSources sets the DataSources field's value. +func (s *ListDataSourcesOutput) SetDataSources(v []*DataSource) *ListDataSourcesOutput { + s.DataSources = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput { + s.NextToken = &v + return s +} + +type ListDocumentsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application id the documents are attached to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data sources the documents are attached to. + DataSourceIds []*string `location:"querystring" locationName:"dataSourceIds" min:"1" type:"list"` + + // The identifier of the index the documents are attached to. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The maximum number of documents to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of documents. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDocumentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDocumentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDocumentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDocumentsInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceIds != nil && len(s.DataSourceIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceIds", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListDocumentsInput) SetApplicationId(v string) *ListDocumentsInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceIds sets the DataSourceIds field's value. +func (s *ListDocumentsInput) SetDataSourceIds(v []*string) *ListDocumentsInput { + s.DataSourceIds = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *ListDocumentsInput) SetIndexId(v string) *ListDocumentsInput { + s.IndexId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDocumentsInput) SetMaxResults(v int64) *ListDocumentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDocumentsInput) SetNextToken(v string) *ListDocumentsInput { + s.NextToken = &v + return s +} + +type ListDocumentsOutput struct { + _ struct{} `type:"structure"` + + // A list of document details. + DocumentDetailList []*DocumentDetails `locationName:"documentDetailList" type:"list"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of documents. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDocumentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDocumentsOutput) GoString() string { + return s.String() +} + +// SetDocumentDetailList sets the DocumentDetailList field's value. +func (s *ListDocumentsOutput) SetDocumentDetailList(v []*DocumentDetails) *ListDocumentsOutput { + s.DocumentDetailList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDocumentsOutput) SetNextToken(v string) *ListDocumentsOutput { + s.NextToken = &v + return s +} + +type ListGroupsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application for getting a list of groups mapped to + // users. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source for getting a list of groups mapped to + // users. + DataSourceId *string `location:"querystring" locationName:"dataSourceId" min:"36" type:"string"` + + // The identifier of the index for getting a list of groups mapped to users. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The maximum number of returned groups that are mapped to users. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the previous response was incomplete (because there is more data to retrieve), + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of groups that are mapped to users. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The timestamp identifier used for the latest PUT or DELETE action for mapping + // users to their groups. + // + // UpdatedEarlierThan is a required field + UpdatedEarlierThan *time.Time `location:"querystring" locationName:"updatedEarlierThan" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListGroupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListGroupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListGroupsInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.UpdatedEarlierThan == nil { + invalidParams.Add(request.NewErrParamRequired("UpdatedEarlierThan")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListGroupsInput) SetApplicationId(v string) *ListGroupsInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *ListGroupsInput) SetDataSourceId(v string) *ListGroupsInput { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *ListGroupsInput) SetIndexId(v string) *ListGroupsInput { + s.IndexId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListGroupsInput) SetMaxResults(v int64) *ListGroupsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListGroupsInput) SetNextToken(v string) *ListGroupsInput { + s.NextToken = &v + return s +} + +// SetUpdatedEarlierThan sets the UpdatedEarlierThan field's value. +func (s *ListGroupsInput) SetUpdatedEarlierThan(v time.Time) *ListGroupsInput { + s.UpdatedEarlierThan = &v + return s +} + +type ListGroupsOutput struct { + _ struct{} `type:"structure"` + + // Summary information for list of groups that are mapped to users. + Items []*GroupSummary `locationName:"items" type:"list"` + + // If the response is truncated, Amazon Q returns this token that you can use + // in the subsequent request to retrieve the next set of groups that are mapped + // to users. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListGroupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListGroupsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListGroupsOutput) SetItems(v []*GroupSummary) *ListGroupsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput { + s.NextToken = &v + return s +} + +type ListIndicesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application connected to the index. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The maximum number of indices to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q indices. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIndicesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIndicesInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListIndicesInput) SetApplicationId(v string) *ListIndicesInput { + s.ApplicationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIndicesInput) SetMaxResults(v int64) *ListIndicesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIndicesInput) SetNextToken(v string) *ListIndicesInput { + s.NextToken = &v + return s +} + +type ListIndicesOutput struct { + _ struct{} `type:"structure"` + + // An array of information on the items in one or more indexes. + Indices []*Index `locationName:"indices" type:"list"` + + // If the response is truncated, Amazon Q returns this token that you can use + // in the subsequent request to retrieve the next set of indexes. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndicesOutput) GoString() string { + return s.String() +} + +// SetIndices sets the Indices field's value. +func (s *ListIndicesOutput) SetIndices(v []*Index) *ListIndicesOutput { + s.Indices = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIndicesOutput) SetNextToken(v string) *ListIndicesOutput { + s.NextToken = &v + return s +} + +type ListMessagesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier for the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the Amazon Q web experience conversation. + // + // ConversationId is a required field + ConversationId *string `location:"uri" locationName:"conversationId" min:"36" type:"string" required:"true"` + + // The maximum number of messages to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the number of retrievers returned exceeds maxResults, Amazon Q returns + // a next token as a pagination token to retrieve the next set of messages. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The identifier of the user involved in the Amazon Q web experience conversation. + // + // UserId is a required field + UserId *string `location:"querystring" locationName:"userId" 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 ListMessagesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMessagesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMessagesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMessagesInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ConversationId == nil { + invalidParams.Add(request.NewErrParamRequired("ConversationId")) + } + if s.ConversationId != nil && len(*s.ConversationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListMessagesInput) SetApplicationId(v string) *ListMessagesInput { + s.ApplicationId = &v + return s +} + +// SetConversationId sets the ConversationId field's value. +func (s *ListMessagesInput) SetConversationId(v string) *ListMessagesInput { + s.ConversationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMessagesInput) SetMaxResults(v int64) *ListMessagesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMessagesInput) SetNextToken(v string) *ListMessagesInput { + s.NextToken = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *ListMessagesInput) SetUserId(v string) *ListMessagesInput { + s.UserId = &v + return s +} + +type ListMessagesOutput struct { + _ struct{} `type:"structure"` + + // An array of information on one or more messages. + Messages []*Message `locationName:"messages" type:"list"` + + // If the response is truncated, Amazon Q returns this token, which you can + // use in a later request to list the next set of messages. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMessagesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMessagesOutput) GoString() string { + return s.String() +} + +// SetMessages sets the Messages field's value. +func (s *ListMessagesOutput) SetMessages(v []*Message) *ListMessagesOutput { + s.Messages = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMessagesOutput) SetNextToken(v string) *ListMessagesOutput { + s.NextToken = &v + return s +} + +type ListPluginsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the application the plugin is attached to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The maximum number of documents to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of plugins. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPluginsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPluginsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPluginsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPluginsInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListPluginsInput) SetApplicationId(v string) *ListPluginsInput { + s.ApplicationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPluginsInput) SetMaxResults(v int64) *ListPluginsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPluginsInput) SetNextToken(v string) *ListPluginsInput { + s.NextToken = &v + return s +} + +type ListPluginsOutput struct { + _ struct{} `type:"structure"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of plugins. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Information about a configured plugin. + Plugins []*Plugin `locationName:"plugins" 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 ListPluginsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPluginsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPluginsOutput) SetNextToken(v string) *ListPluginsOutput { + s.NextToken = &v + return s +} + +// SetPlugins sets the Plugins field's value. +func (s *ListPluginsOutput) SetPlugins(v []*Plugin) *ListPluginsOutput { + s.Plugins = v + return s +} + +type ListRetrieversInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application using the retriever. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The maximum number of retrievers returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the number of retrievers returned exceeds maxResults, Amazon Q returns + // a next token as a pagination token to retrieve the next set of retrievers. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRetrieversInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRetrieversInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRetrieversInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRetrieversInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListRetrieversInput) SetApplicationId(v string) *ListRetrieversInput { + s.ApplicationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRetrieversInput) SetMaxResults(v int64) *ListRetrieversInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRetrieversInput) SetNextToken(v string) *ListRetrieversInput { + s.NextToken = &v + return s +} + +type ListRetrieversOutput struct { + _ struct{} `type:"structure"` + + // If the response is truncated, Amazon Q returns this token, which you can + // use in a later request to list the next set of retrievers. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // An array of summary information for one or more retrievers. + Retrievers []*Retriever `locationName:"retrievers" 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 ListRetrieversOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRetrieversOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRetrieversOutput) SetNextToken(v string) *ListRetrieversOutput { + s.NextToken = &v + return s +} + +// SetRetrievers sets the Retrievers field's value. +func (s *ListRetrieversOutput) SetRetrievers(v []*Retriever) *ListRetrieversOutput { + s.Retrievers = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the Amazon Q application or data source + // to get a list of tags for. + // + // ResourceARN is a required field + ResourceARN *string `location:"uri" locationName:"resourceARN" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A list of tags associated with the Amazon Q application or data source. + 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 ListWebExperiencesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application linked to the listed web experiences. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The maximum number of Amazon Q Web Experiences to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // If the maxResults response was incomplete because there is more data to retrieve, + // Amazon Q returns a pagination token in the response. You can use this pagination + // token to retrieve the next set of Amazon Q conversations. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWebExperiencesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWebExperiencesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListWebExperiencesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWebExperiencesInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ListWebExperiencesInput) SetApplicationId(v string) *ListWebExperiencesInput { + s.ApplicationId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListWebExperiencesInput) SetMaxResults(v int64) *ListWebExperiencesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWebExperiencesInput) SetNextToken(v string) *ListWebExperiencesInput { + s.NextToken = &v + return s +} + +type ListWebExperiencesOutput struct { + _ struct{} `type:"structure"` + + // If the response is truncated, Amazon Q returns this token, which you can + // use in a later request to list the next set of messages. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // An array of summary information for one or more Amazon Q experiences. + WebExperiences []*WebExperience `locationName:"webExperiences" 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 ListWebExperiencesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWebExperiencesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWebExperiencesOutput) SetNextToken(v string) *ListWebExperiencesOutput { + s.NextToken = &v + return s +} + +// SetWebExperiences sets the WebExperiences field's value. +func (s *ListWebExperiencesOutput) SetWebExperiences(v []*WebExperience) *ListWebExperiencesOutput { + s.WebExperiences = v + return s +} + +// The sub groups that belong to a group. +type MemberGroup struct { + _ struct{} `type:"structure"` + + // The name of the sub group. + // + // GroupName is a required field + GroupName *string `locationName:"groupName" min:"1" type:"string" required:"true"` + + // The type of the sub group. + Type *string `locationName:"type" type:"string" enum:"MembershipType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemberGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemberGroup) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MemberGroup) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MemberGroup"} + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGroupName sets the GroupName field's value. +func (s *MemberGroup) SetGroupName(v string) *MemberGroup { + s.GroupName = &v + return s +} + +// SetType sets the Type field's value. +func (s *MemberGroup) SetType(v string) *MemberGroup { + s.Type = &v + return s +} + +// The users that belong to a group. +type MemberUser struct { + _ struct{} `type:"structure"` + + // The type of the user. + Type *string `locationName:"type" type:"string" enum:"MembershipType"` + + // The identifier of the user you want to map to a group. + // + // UserId is a required field + UserId *string `locationName:"userId" 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 MemberUser) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemberUser) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MemberUser) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MemberUser"} + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetType sets the Type field's value. +func (s *MemberUser) SetType(v string) *MemberUser { + s.Type = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *MemberUser) SetUserId(v string) *MemberUser { + s.UserId = &v + return s +} + +// A message in an Amazon Q web experience. +type Message struct { + _ struct{} `type:"structure"` + + // An output event that Amazon Q returns to an user who wants to perform a plugin + // action during a non-streaming chat conversation. It contains information + // about the selected action with a list of possible user input fields, some + // pre-populated by Amazon Q. + ActionReview *ActionReview `locationName:"actionReview" type:"structure"` + + // A file directly uploaded into an Amazon Q web experience chat. + Attachments []*AttachmentOutput_ `locationName:"attachments" type:"list"` + + // The content of the Amazon Q web experience message. + Body *string `locationName:"body" type:"string"` + + // The identifier of the Amazon Q web experience message. + MessageId *string `locationName:"messageId" min:"1" type:"string"` + + // The source documents used to generate Amazon Q web experience message. + SourceAttribution []*SourceAttribution `locationName:"sourceAttribution" type:"list"` + + // The timestamp of the first Amazon Q web experience message. + Time *time.Time `locationName:"time" type:"timestamp"` + + // The type of Amazon Q message, whether HUMAN or AI generated. + Type *string `locationName:"type" type:"string" enum:"MessageType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Message) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Message) GoString() string { + return s.String() +} + +// SetActionReview sets the ActionReview field's value. +func (s *Message) SetActionReview(v *ActionReview) *Message { + s.ActionReview = v + return s +} + +// SetAttachments sets the Attachments field's value. +func (s *Message) SetAttachments(v []*AttachmentOutput_) *Message { + s.Attachments = v + return s +} + +// SetBody sets the Body field's value. +func (s *Message) SetBody(v string) *Message { + s.Body = &v + return s +} + +// SetMessageId sets the MessageId field's value. +func (s *Message) SetMessageId(v string) *Message { + s.MessageId = &v + return s +} + +// SetSourceAttribution sets the SourceAttribution field's value. +func (s *Message) SetSourceAttribution(v []*SourceAttribution) *Message { + s.SourceAttribution = v + return s +} + +// SetTime sets the Time field's value. +func (s *Message) SetTime(v time.Time) *Message { + s.Time = &v + return s +} + +// SetType sets the Type field's value. +func (s *Message) SetType(v string) *Message { + s.Type = &v + return s +} + +// End user feedback on an AI-generated web experience chat message usefulness. +type MessageUsefulnessFeedback struct { + _ struct{} `type:"structure"` + + // A comment given by an end user on the usefulness of an AI-generated chat + // message. + Comment *string `locationName:"comment" type:"string"` + + // The reason for a usefulness rating. + Reason *string `locationName:"reason" type:"string" enum:"MessageUsefulnessReason"` + + // The timestamp for when the feedback was submitted. + // + // SubmittedAt is a required field + SubmittedAt *time.Time `locationName:"submittedAt" type:"timestamp" required:"true"` + + // The usefulness value assigned by an end user to a message. + // + // Usefulness is a required field + Usefulness *string `locationName:"usefulness" type:"string" required:"true" enum:"MessageUsefulness"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MessageUsefulnessFeedback) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MessageUsefulnessFeedback) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MessageUsefulnessFeedback) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MessageUsefulnessFeedback"} + if s.SubmittedAt == nil { + invalidParams.Add(request.NewErrParamRequired("SubmittedAt")) + } + if s.Usefulness == nil { + invalidParams.Add(request.NewErrParamRequired("Usefulness")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComment sets the Comment field's value. +func (s *MessageUsefulnessFeedback) SetComment(v string) *MessageUsefulnessFeedback { + s.Comment = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *MessageUsefulnessFeedback) SetReason(v string) *MessageUsefulnessFeedback { + s.Reason = &v + return s +} + +// SetSubmittedAt sets the SubmittedAt field's value. +func (s *MessageUsefulnessFeedback) SetSubmittedAt(v time.Time) *MessageUsefulnessFeedback { + s.SubmittedAt = &v + return s +} + +// SetUsefulness sets the Usefulness field's value. +func (s *MessageUsefulnessFeedback) SetUsefulness(v string) *MessageUsefulnessFeedback { + s.Usefulness = &v + return s +} + +// Configuration information for an Amazon Q index. +type NativeIndexConfiguration struct { + _ struct{} `type:"structure"` + + // The identifier for the Amazon Q index. + // + // IndexId is a required field + IndexId *string `locationName:"indexId" min:"36" 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 NativeIndexConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NativeIndexConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NativeIndexConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NativeIndexConfiguration"} + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIndexId sets the IndexId field's value. +func (s *NativeIndexConfiguration) SetIndexId(v string) *NativeIndexConfiguration { + s.IndexId = &v + return s +} + +// Information about the OAuth 2.0 authentication credential/token used to configure +// a plugin. +type OAuth2ClientCredentialConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of an IAM role used by Amazon Q to access the OAuth 2.0 authentication + // credentials stored in a Secrets Manager secret. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token + // used for plugin configuration. + // + // SecretArn is a required field + SecretArn *string `locationName:"secretArn" 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 OAuth2ClientCredentialConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OAuth2ClientCredentialConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OAuth2ClientCredentialConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OAuth2ClientCredentialConfiguration"} + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.SecretArn == nil { + invalidParams.Add(request.NewErrParamRequired("SecretArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRoleArn sets the RoleArn field's value. +func (s *OAuth2ClientCredentialConfiguration) SetRoleArn(v string) *OAuth2ClientCredentialConfiguration { + s.RoleArn = &v + return s +} + +// SetSecretArn sets the SecretArn field's value. +func (s *OAuth2ClientCredentialConfiguration) SetSecretArn(v string) *OAuth2ClientCredentialConfiguration { + s.SecretArn = &v + return s +} + +// Information about an Amazon Q plugin and its configuration. +type Plugin struct { + _ struct{} `type:"structure"` + + // The timestamp for when the plugin was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The name of the plugin. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The identifier of the plugin. + PluginId *string `locationName:"pluginId" min:"36" type:"string"` + + // The plugin server URL used for configuration. + ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` + + // The current status of the plugin. + State *string `locationName:"state" type:"string" enum:"PluginState"` + + // The type of the plugin. + Type *string `locationName:"type" type:"string" enum:"PluginType"` + + // The timestamp for when the plugin was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 Plugin) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Plugin) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Plugin) SetCreatedAt(v time.Time) *Plugin { + s.CreatedAt = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *Plugin) SetDisplayName(v string) *Plugin { + s.DisplayName = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *Plugin) SetPluginId(v string) *Plugin { + s.PluginId = &v + return s +} + +// SetServerUrl sets the ServerUrl field's value. +func (s *Plugin) SetServerUrl(v string) *Plugin { + s.ServerUrl = &v + return s +} + +// SetState sets the State field's value. +func (s *Plugin) SetState(v string) *Plugin { + s.State = &v + return s +} + +// SetType sets the Type field's value. +func (s *Plugin) SetType(v string) *Plugin { + s.Type = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Plugin) SetUpdatedAt(v time.Time) *Plugin { + s.UpdatedAt = &v + return s +} + +// Authentication configuration information for an Amazon Q plugin. +type PluginAuthConfiguration struct { + _ struct{} `type:"structure"` + + // Information about the basic authentication credentials used to configure + // a plugin. + BasicAuthConfiguration *BasicAuthConfiguration `locationName:"basicAuthConfiguration" type:"structure"` + + // Information about the OAuth 2.0 authentication credential/token used to configure + // a plugin. + OAuth2ClientCredentialConfiguration *OAuth2ClientCredentialConfiguration `locationName:"oAuth2ClientCredentialConfiguration" 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 PluginAuthConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PluginAuthConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PluginAuthConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PluginAuthConfiguration"} + if s.BasicAuthConfiguration != nil { + if err := s.BasicAuthConfiguration.Validate(); err != nil { + invalidParams.AddNested("BasicAuthConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.OAuth2ClientCredentialConfiguration != nil { + if err := s.OAuth2ClientCredentialConfiguration.Validate(); err != nil { + invalidParams.AddNested("OAuth2ClientCredentialConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBasicAuthConfiguration sets the BasicAuthConfiguration field's value. +func (s *PluginAuthConfiguration) SetBasicAuthConfiguration(v *BasicAuthConfiguration) *PluginAuthConfiguration { + s.BasicAuthConfiguration = v + return s +} + +// SetOAuth2ClientCredentialConfiguration sets the OAuth2ClientCredentialConfiguration field's value. +func (s *PluginAuthConfiguration) SetOAuth2ClientCredentialConfiguration(v *OAuth2ClientCredentialConfiguration) *PluginAuthConfiguration { + s.OAuth2ClientCredentialConfiguration = v + return s +} + +// Provides user and group information used for filtering documents to use for +// generating Amazon Q conversation responses. +type Principal struct { + _ struct{} `type:"structure"` + + // The group associated with the principal. + Group *PrincipalGroup `locationName:"group" type:"structure"` + + // The user associated with the principal. + User *PrincipalUser `locationName:"user" 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 Principal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Principal) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Principal) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Principal"} + if s.Group != nil { + if err := s.Group.Validate(); err != nil { + invalidParams.AddNested("Group", err.(request.ErrInvalidParams)) + } + } + if s.User != nil { + if err := s.User.Validate(); err != nil { + invalidParams.AddNested("User", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGroup sets the Group field's value. +func (s *Principal) SetGroup(v *PrincipalGroup) *Principal { + s.Group = v + return s +} + +// SetUser sets the User field's value. +func (s *Principal) SetUser(v *PrincipalUser) *Principal { + s.User = v + return s +} + +// Provides information about a group associated with the principal. +type PrincipalGroup struct { + _ struct{} `type:"structure"` + + // Provides information about whether to allow or deny access to the principal. + // + // Access is a required field + Access *string `locationName:"access" type:"string" required:"true" enum:"ReadAccessType"` + + // The type of group. + MembershipType *string `locationName:"membershipType" type:"string" enum:"MembershipType"` + + // The name of the group. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrincipalGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrincipalGroup) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrincipalGroup) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrincipalGroup"} + if s.Access == nil { + invalidParams.Add(request.NewErrParamRequired("Access")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccess sets the Access field's value. +func (s *PrincipalGroup) SetAccess(v string) *PrincipalGroup { + s.Access = &v + return s +} + +// SetMembershipType sets the MembershipType field's value. +func (s *PrincipalGroup) SetMembershipType(v string) *PrincipalGroup { + s.MembershipType = &v + return s +} + +// SetName sets the Name field's value. +func (s *PrincipalGroup) SetName(v string) *PrincipalGroup { + s.Name = &v + return s +} + +// Provides information about a user associated with a principal. +type PrincipalUser struct { + _ struct{} `type:"structure"` + + // Provides information about whether to allow or deny access to the principal. + // + // Access is a required field + Access *string `locationName:"access" type:"string" required:"true" enum:"ReadAccessType"` + + // The identifier of the user. + Id *string `locationName:"id" min:"1" type:"string"` + + // The type of group. + MembershipType *string `locationName:"membershipType" type:"string" enum:"MembershipType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrincipalUser) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PrincipalUser) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrincipalUser) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrincipalUser"} + if s.Access == nil { + invalidParams.Add(request.NewErrParamRequired("Access")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccess sets the Access field's value. +func (s *PrincipalUser) SetAccess(v string) *PrincipalUser { + s.Access = &v + return s +} + +// SetId sets the Id field's value. +func (s *PrincipalUser) SetId(v string) *PrincipalUser { + s.Id = &v + return s +} + +// SetMembershipType sets the MembershipType field's value. +func (s *PrincipalUser) SetMembershipType(v string) *PrincipalUser { + s.MembershipType = &v + return s +} + +type PutFeedbackInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application associated with the feedback. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the conversation the feedback is attached to. + // + // ConversationId is a required field + ConversationId *string `location:"uri" locationName:"conversationId" min:"36" type:"string" required:"true"` + + // The timestamp for when the feedback was recorded. + MessageCopiedAt *time.Time `locationName:"messageCopiedAt" type:"timestamp"` + + // The identifier of the chat message that the feedback was given for. + // + // MessageId is a required field + MessageId *string `location:"uri" locationName:"messageId" min:"36" type:"string" required:"true"` + + // The feedback usefulness value given by the user to the chat message. + MessageUsefulness *MessageUsefulnessFeedback `locationName:"messageUsefulness" type:"structure"` + + // The identifier of the user giving the feedback. + // + // UserId is a required field + UserId *string `location:"querystring" locationName:"userId" 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 PutFeedbackInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutFeedbackInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutFeedbackInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ConversationId == nil { + invalidParams.Add(request.NewErrParamRequired("ConversationId")) + } + if s.ConversationId != nil && len(*s.ConversationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ConversationId", 36)) + } + if s.MessageId == nil { + invalidParams.Add(request.NewErrParamRequired("MessageId")) + } + if s.MessageId != nil && len(*s.MessageId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("MessageId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + if s.MessageUsefulness != nil { + if err := s.MessageUsefulness.Validate(); err != nil { + invalidParams.AddNested("MessageUsefulness", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *PutFeedbackInput) SetApplicationId(v string) *PutFeedbackInput { + s.ApplicationId = &v + return s +} + +// SetConversationId sets the ConversationId field's value. +func (s *PutFeedbackInput) SetConversationId(v string) *PutFeedbackInput { + s.ConversationId = &v + return s +} + +// SetMessageCopiedAt sets the MessageCopiedAt field's value. +func (s *PutFeedbackInput) SetMessageCopiedAt(v time.Time) *PutFeedbackInput { + s.MessageCopiedAt = &v + return s +} + +// SetMessageId sets the MessageId field's value. +func (s *PutFeedbackInput) SetMessageId(v string) *PutFeedbackInput { + s.MessageId = &v + return s +} + +// SetMessageUsefulness sets the MessageUsefulness field's value. +func (s *PutFeedbackInput) SetMessageUsefulness(v *MessageUsefulnessFeedback) *PutFeedbackInput { + s.MessageUsefulness = v + return s +} + +// SetUserId sets the UserId field's value. +func (s *PutFeedbackInput) SetUserId(v string) *PutFeedbackInput { + s.UserId = &v + return s +} + +type PutFeedbackOutput 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 PutFeedbackOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackOutput) GoString() string { + return s.String() +} + +type PutGroupInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application in which the user and group mapping belongs. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source for which you want to map users to their + // groups. This is useful if a group is tied to multiple data sources, but you + // only want the group to access documents of a certain data source. For example, + // the groups "Research", "Engineering", and "Sales and Marketing" are all tied + // to the company's documents stored in the data sources Confluence and Salesforce. + // However, "Sales and Marketing" team only needs access to customer-related + // documents stored in Salesforce. + DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` + + // A list of users or sub groups that belong to a group. This is for generating + // Amazon Q chat results only from document a user has access to. + // + // GroupMembers is a required field + GroupMembers *GroupMembers `locationName:"groupMembers" type:"structure" required:"true"` + + // The list that contains your users or sub groups that belong the same group. + // For example, the group "Company" includes the user "CEO" and the sub groups + // "Research", "Engineering", and "Sales and Marketing". + // + // If you have more than 1000 users and/or sub groups for a single group, you + // need to provide the path to the S3 file that lists your users and sub groups + // for a group. Your sub groups can contain more than 1000 users, but the list + // of sub groups that belong to a group (and/or users) must be no more than + // 1000. + // + // GroupName is a required field + GroupName *string `locationName:"groupName" min:"1" type:"string" required:"true"` + + // The identifier of the index in which you want to map users to their groups. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The type of the group. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"MembershipType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutGroupInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.GroupMembers == nil { + invalidParams.Add(request.NewErrParamRequired("GroupMembers")) + } + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.GroupMembers != nil { + if err := s.GroupMembers.Validate(); err != nil { + invalidParams.AddNested("GroupMembers", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *PutGroupInput) SetApplicationId(v string) *PutGroupInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *PutGroupInput) SetDataSourceId(v string) *PutGroupInput { + s.DataSourceId = &v + return s +} + +// SetGroupMembers sets the GroupMembers field's value. +func (s *PutGroupInput) SetGroupMembers(v *GroupMembers) *PutGroupInput { + s.GroupMembers = v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *PutGroupInput) SetGroupName(v string) *PutGroupInput { + s.GroupName = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *PutGroupInput) SetIndexId(v string) *PutGroupInput { + s.IndexId = &v + return s +} + +// SetType sets the Type field's value. +func (s *PutGroupInput) SetType(v string) *PutGroupInput { + s.Type = &v + return s +} + +type PutGroupOutput 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 PutGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutGroupOutput) GoString() string { + return s.String() +} + +// The resource you want to use doesn’t exist. Make sure you have provided +// the correct resource and try again. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The message describing a ResourceNotFoundException. + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The identifier of the resource affected. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" min:"1" type:"string" required:"true"` + + // The type of the resource affected. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" 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 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 +} + +// Summary information for the retriever used for your Amazon Q application. +type Retriever struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application using the retriever. + ApplicationId *string `locationName:"applicationId" min:"36" type:"string"` + + // The name of your retriever. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The identifier of the retriever used by your Amazon Q application. + RetrieverId *string `locationName:"retrieverId" min:"36" type:"string"` + + // The status of your retriever. + Status *string `locationName:"status" type:"string" enum:"RetrieverStatus"` + + // The type of your retriever. + Type *string `locationName:"type" type:"string" enum:"RetrieverType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Retriever) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Retriever) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *Retriever) SetApplicationId(v string) *Retriever { + s.ApplicationId = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *Retriever) SetDisplayName(v string) *Retriever { + s.DisplayName = &v + return s +} + +// SetRetrieverId sets the RetrieverId field's value. +func (s *Retriever) SetRetrieverId(v string) *Retriever { + s.RetrieverId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Retriever) SetStatus(v string) *Retriever { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *Retriever) SetType(v string) *Retriever { + s.Type = &v + return s +} + +// Provides information on how the retriever used for your Amazon Q application +// is configured. +type RetrieverConfiguration struct { + _ struct{} `type:"structure"` + + // Provides information on how the Amazon Kendra index used as a retriever for + // your Amazon Q application is configured. + KendraIndexConfiguration *KendraIndexConfiguration `locationName:"kendraIndexConfiguration" type:"structure"` + + // Provides information on how a Amazon Q index used as a retriever for your + // Amazon Q application is configured. + NativeIndexConfiguration *NativeIndexConfiguration `locationName:"nativeIndexConfiguration" 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 RetrieverConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RetrieverConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RetrieverConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RetrieverConfiguration"} + if s.KendraIndexConfiguration != nil { + if err := s.KendraIndexConfiguration.Validate(); err != nil { + invalidParams.AddNested("KendraIndexConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.NativeIndexConfiguration != nil { + if err := s.NativeIndexConfiguration.Validate(); err != nil { + invalidParams.AddNested("NativeIndexConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKendraIndexConfiguration sets the KendraIndexConfiguration field's value. +func (s *RetrieverConfiguration) SetKendraIndexConfiguration(v *KendraIndexConfiguration) *RetrieverConfiguration { + s.KendraIndexConfiguration = v + return s +} + +// SetNativeIndexConfiguration sets the NativeIndexConfiguration field's value. +func (s *RetrieverConfiguration) SetNativeIndexConfiguration(v *NativeIndexConfiguration) *RetrieverConfiguration { + s.NativeIndexConfiguration = v + return s +} + +// Guardrail rules for an Amazon Q application. Amazon Q supports only one rule +// at a time. +type Rule struct { + _ struct{} `type:"structure"` + + // Users and groups to be excluded from a rule. + ExcludedUsersAndGroups *UsersAndGroups `locationName:"excludedUsersAndGroups" type:"structure"` + + // Users and groups to be included in a rule. + IncludedUsersAndGroups *UsersAndGroups `locationName:"includedUsersAndGroups" type:"structure"` + + // The configuration information for a rule. + RuleConfiguration *RuleConfiguration `locationName:"ruleConfiguration" type:"structure"` + + // The type fo rule. + // + // RuleType is a required field + RuleType *string `locationName:"ruleType" type:"string" required:"true" enum:"RuleType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Rule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Rule) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Rule) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Rule"} + if s.RuleType == nil { + invalidParams.Add(request.NewErrParamRequired("RuleType")) + } + if s.RuleConfiguration != nil { + if err := s.RuleConfiguration.Validate(); err != nil { + invalidParams.AddNested("RuleConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExcludedUsersAndGroups sets the ExcludedUsersAndGroups field's value. +func (s *Rule) SetExcludedUsersAndGroups(v *UsersAndGroups) *Rule { + s.ExcludedUsersAndGroups = v + return s +} + +// SetIncludedUsersAndGroups sets the IncludedUsersAndGroups field's value. +func (s *Rule) SetIncludedUsersAndGroups(v *UsersAndGroups) *Rule { + s.IncludedUsersAndGroups = v + return s +} + +// SetRuleConfiguration sets the RuleConfiguration field's value. +func (s *Rule) SetRuleConfiguration(v *RuleConfiguration) *Rule { + s.RuleConfiguration = v + return s +} + +// SetRuleType sets the RuleType field's value. +func (s *Rule) SetRuleType(v string) *Rule { + s.RuleType = &v + return s +} + +// Provides configuration information about a rule. +type RuleConfiguration struct { + _ struct{} `type:"structure"` + + // A rule for configuring how Amazon Q responds when it encounters a a blocked + // topic. + ContentBlockerRule *ContentBlockerRule `locationName:"contentBlockerRule" type:"structure"` + + // Rules for retrieving content from data sources connected to a Amazon Q application + // for a specific topic control configuration. + ContentRetrievalRule *ContentRetrievalRule `locationName:"contentRetrievalRule" 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 RuleConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RuleConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RuleConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RuleConfiguration"} + if s.ContentRetrievalRule != nil { + if err := s.ContentRetrievalRule.Validate(); err != nil { + invalidParams.AddNested("ContentRetrievalRule", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContentBlockerRule sets the ContentBlockerRule field's value. +func (s *RuleConfiguration) SetContentBlockerRule(v *ContentBlockerRule) *RuleConfiguration { + s.ContentBlockerRule = v + return s +} + +// SetContentRetrievalRule sets the ContentRetrievalRule field's value. +func (s *RuleConfiguration) SetContentRetrievalRule(v *ContentRetrievalRule) *RuleConfiguration { + s.ContentRetrievalRule = v + return s +} + +// Information required for Amazon Q to find a specific file in an Amazon S3 +// bucket. +type S3 struct { + _ struct{} `type:"structure"` + + // The name of the S3 bucket that contains the file. + // + // Bucket is a required field + Bucket *string `locationName:"bucket" min:"1" type:"string" required:"true"` + + // The name of the file. + // + // Key is a required field + Key *string `locationName:"key" 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 S3) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) + } + if s.Bucket != nil && len(*s.Bucket) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) + } + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *S3) SetBucket(v string) *S3 { + s.Bucket = &v + return s +} + +// SetKey sets the Key field's value. +func (s *S3) SetKey(v string) *S3 { + s.Key = &v + return s +} + +// Provides the SAML 2.0 compliant identity provider (IdP) configuration information +// Amazon Q needs to deploy a Amazon Q web experience. +type SamlConfiguration struct { + _ struct{} `type:"structure"` + + // The metadata XML that your IdP generated. + // + // MetadataXML is a required field + MetadataXML *string `locationName:"metadataXML" min:"1000" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role assumed by users when they + // authenticate into their Amazon Q web experience, containing the relevant + // Amazon Q permissions for conversing with Amazon Q. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The group attribute name in your IdP that maps to user groups. + UserGroupAttribute *string `locationName:"userGroupAttribute" min:"1" type:"string"` + + // The user attribute name in your IdP that maps to the user email. + // + // UserIdAttribute is a required field + UserIdAttribute *string `locationName:"userIdAttribute" 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 SamlConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SamlConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SamlConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SamlConfiguration"} + if s.MetadataXML == nil { + invalidParams.Add(request.NewErrParamRequired("MetadataXML")) + } + if s.MetadataXML != nil && len(*s.MetadataXML) < 1000 { + invalidParams.Add(request.NewErrParamMinLen("MetadataXML", 1000)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.UserGroupAttribute != nil && len(*s.UserGroupAttribute) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserGroupAttribute", 1)) + } + if s.UserIdAttribute == nil { + invalidParams.Add(request.NewErrParamRequired("UserIdAttribute")) + } + if s.UserIdAttribute != nil && len(*s.UserIdAttribute) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserIdAttribute", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadataXML sets the MetadataXML field's value. +func (s *SamlConfiguration) SetMetadataXML(v string) *SamlConfiguration { + s.MetadataXML = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *SamlConfiguration) SetRoleArn(v string) *SamlConfiguration { + s.RoleArn = &v + return s +} + +// SetUserGroupAttribute sets the UserGroupAttribute field's value. +func (s *SamlConfiguration) SetUserGroupAttribute(v string) *SamlConfiguration { + s.UserGroupAttribute = &v + return s +} + +// SetUserIdAttribute sets the UserIdAttribute field's value. +func (s *SamlConfiguration) SetUserIdAttribute(v string) *SamlConfiguration { + s.UserIdAttribute = &v + return s +} + +// You have exceeded the set limits for your Amazon Q service. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The message describing a ServiceQuotaExceededException. + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The identifier of the resource affected. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" min:"1" type:"string" required:"true"` + + // The type of the resource affected. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" 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 ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The documents used to generate an Amazon Q web experience response. +type SourceAttribution struct { + _ struct{} `type:"structure"` + + // The number attached to a citation in an Amazon Q generated response. + CitationNumber *int64 `locationName:"citationNumber" type:"integer"` + + // The content extract from the document on which the generated response is + // based. + Snippet *string `locationName:"snippet" min:"1" type:"string"` + + // A text extract from a source document that is used for source attribution. + TextMessageSegments []*TextSegment `locationName:"textMessageSegments" type:"list"` + + // The title of the document which is the source for the Amazon Q generated + // response. + Title *string `locationName:"title" min:"1" type:"string"` + + // The Unix timestamp when the Amazon Q application was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The URL of the document which is the source for the Amazon Q generated response. + Url *string `locationName:"url" 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 SourceAttribution) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceAttribution) GoString() string { + return s.String() +} + +// SetCitationNumber sets the CitationNumber field's value. +func (s *SourceAttribution) SetCitationNumber(v int64) *SourceAttribution { + s.CitationNumber = &v + return s +} + +// SetSnippet sets the Snippet field's value. +func (s *SourceAttribution) SetSnippet(v string) *SourceAttribution { + s.Snippet = &v + return s +} + +// SetTextMessageSegments sets the TextMessageSegments field's value. +func (s *SourceAttribution) SetTextMessageSegments(v []*TextSegment) *SourceAttribution { + s.TextMessageSegments = v + return s +} + +// SetTitle sets the Title field's value. +func (s *SourceAttribution) SetTitle(v string) *SourceAttribution { + s.Title = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *SourceAttribution) SetUpdatedAt(v time.Time) *SourceAttribution { + s.UpdatedAt = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *SourceAttribution) SetUrl(v string) *SourceAttribution { + s.Url = &v + return s +} + +type StartDataSourceSyncJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of Amazon Q application the data source is connected to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source connector. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` + + // The identifier of the index used with the data source connector. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 StartDataSourceSyncJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceSyncJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDataSourceSyncJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDataSourceSyncJobInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *StartDataSourceSyncJobInput) SetApplicationId(v string) *StartDataSourceSyncJobInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *StartDataSourceSyncJobInput) SetDataSourceId(v string) *StartDataSourceSyncJobInput { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *StartDataSourceSyncJobInput) SetIndexId(v string) *StartDataSourceSyncJobInput { + s.IndexId = &v + return s +} + +type StartDataSourceSyncJobOutput struct { + _ struct{} `type:"structure"` + + // The identifier for a particular synchronization job. + ExecutionId *string `locationName:"executionId" min:"36" 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 StartDataSourceSyncJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDataSourceSyncJobOutput) GoString() string { + return s.String() +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *StartDataSourceSyncJobOutput) SetExecutionId(v string) *StartDataSourceSyncJobOutput { + s.ExecutionId = &v + return s +} + +type StopDataSourceSyncJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q application that the data source is connected + // to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source connector. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` + + // The identifier of the index used with the Amazon Q data source connector. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 StopDataSourceSyncJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopDataSourceSyncJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopDataSourceSyncJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopDataSourceSyncJobInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *StopDataSourceSyncJobInput) SetApplicationId(v string) *StopDataSourceSyncJobInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *StopDataSourceSyncJobInput) SetDataSourceId(v string) *StopDataSourceSyncJobInput { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *StopDataSourceSyncJobInput) SetIndexId(v string) *StopDataSourceSyncJobInput { + s.IndexId = &v + return s +} + +type StopDataSourceSyncJobOutput 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 StopDataSourceSyncJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopDataSourceSyncJobOutput) GoString() string { + return s.String() +} + +// A list of key/value pairs that identify an index, FAQ, or data source. Tag +// keys and values can consist of Unicode letters, digits, white space, and +// any of the following symbols: _ . : / = + - @. +type Tag struct { + _ struct{} `type:"structure"` + + // The key for the tag. Keys are not case sensitive and must be unique for the + // Amazon Q application or data source. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + // The value associated with the tag. The value may be an empty string but it + // can't be null. + // + // 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 Amazon Q application or data source + // to tag. + // + // ResourceARN is a required field + ResourceARN *string `location:"uri" locationName:"resourceARN" min:"1" type:"string" required:"true"` + + // A list of tag keys to add to the Amazon Q application or data source. If + // a tag already exists, the existing value is replaced with the new value. + // + // 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() +} + +// Provides information about text documents in an index. +type TextDocumentStatistics struct { + _ struct{} `type:"structure"` + + // The total size, in bytes, of the indexed documents. + IndexedTextBytes *int64 `locationName:"indexedTextBytes" type:"long"` + + // The number of text documents indexed. + IndexedTextDocumentCount *int64 `locationName:"indexedTextDocumentCount" 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 TextDocumentStatistics) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextDocumentStatistics) GoString() string { + return s.String() +} + +// SetIndexedTextBytes sets the IndexedTextBytes field's value. +func (s *TextDocumentStatistics) SetIndexedTextBytes(v int64) *TextDocumentStatistics { + s.IndexedTextBytes = &v + return s +} + +// SetIndexedTextDocumentCount sets the IndexedTextDocumentCount field's value. +func (s *TextDocumentStatistics) SetIndexedTextDocumentCount(v int64) *TextDocumentStatistics { + s.IndexedTextDocumentCount = &v + return s +} + +// Provides information about a text extract in a chat response that can be +// attributed to a source document. +type TextSegment struct { + _ struct{} `type:"structure"` + + // The zero-based location in the response string where the source attribution + // starts. + BeginOffset *int64 `locationName:"beginOffset" type:"integer"` + + // The zero-based location in the response string where the source attribution + // ends. + EndOffset *int64 `locationName:"endOffset" 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 TextSegment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextSegment) GoString() string { + return s.String() +} + +// SetBeginOffset sets the BeginOffset field's value. +func (s *TextSegment) SetBeginOffset(v int64) *TextSegment { + s.BeginOffset = &v + return s +} + +// SetEndOffset sets the EndOffset field's value. +func (s *TextSegment) SetEndOffset(v int64) *TextSegment { + s.EndOffset = &v + return s +} + +// The request was denied due to throttling. Reduce the number of requests and +// try again. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" 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 ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The topic specific controls configured for an Amazon Q application. +type TopicConfiguration struct { + _ struct{} `type:"structure"` + + // A description for your topic control configuration. Use this outline how + // the large language model (LLM) should use this topic control configuration. + Description *string `locationName:"description" type:"string"` + + // A list of example phrases that you expect the end user to use in relation + // to the topic. + ExampleChatMessages []*string `locationName:"exampleChatMessages" type:"list"` + + // A name for your topic control configuration. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Rules defined for a topic configuration. + // + // Rules is a required field + Rules []*Rule `locationName:"rules" 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 TopicConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TopicConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TopicConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TopicConfiguration"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Rules == nil { + invalidParams.Add(request.NewErrParamRequired("Rules")) + } + if s.Rules != nil { + for i, v := range s.Rules { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *TopicConfiguration) SetDescription(v string) *TopicConfiguration { + s.Description = &v + return s +} + +// SetExampleChatMessages sets the ExampleChatMessages field's value. +func (s *TopicConfiguration) SetExampleChatMessages(v []*string) *TopicConfiguration { + s.ExampleChatMessages = v + return s +} + +// SetName sets the Name field's value. +func (s *TopicConfiguration) SetName(v string) *TopicConfiguration { + s.Name = &v + return s +} + +// SetRules sets the Rules field's value. +func (s *TopicConfiguration) SetRules(v []*Rule) *TopicConfiguration { + s.Rules = v + return s +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the Amazon Q application, or data source + // to remove the tag from. + // + // ResourceARN is a required field + ResourceARN *string `location:"uri" locationName:"resourceARN" min:"1" type:"string" required:"true"` + + // A list of tag keys to remove from the Amazon Q application or data source. + // If a tag key does not exist on the resource, it is ignored. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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 UpdateApplicationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // An option to allow end users to upload files directly during chat. + AttachmentsConfiguration *AttachmentsConfiguration `locationName:"attachmentsConfiguration" type:"structure"` + + // A description for the Amazon Q application. + Description *string `locationName:"description" type:"string"` + + // A name for the Amazon Q application. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // An Amazon Web Services Identity and Access Management (IAM) role that gives + // Amazon Q permission to access Amazon CloudWatch logs and metrics. + RoleArn *string `locationName:"roleArn" 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 UpdateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.AttachmentsConfiguration != nil { + if err := s.AttachmentsConfiguration.Validate(); err != nil { + invalidParams.AddNested("AttachmentsConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateApplicationInput) SetApplicationId(v string) *UpdateApplicationInput { + s.ApplicationId = &v + return s +} + +// SetAttachmentsConfiguration sets the AttachmentsConfiguration field's value. +func (s *UpdateApplicationInput) SetAttachmentsConfiguration(v *AttachmentsConfiguration) *UpdateApplicationInput { + s.AttachmentsConfiguration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdateApplicationInput) SetDisplayName(v string) *UpdateApplicationInput { + s.DisplayName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateApplicationInput) SetRoleArn(v string) *UpdateApplicationInput { + s.RoleArn = &v + return s +} + +type UpdateApplicationOutput 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 UpdateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationOutput) GoString() string { + return s.String() +} + +type UpdateChatControlsConfigurationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application for which the chat controls are configured. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The phrases blocked from chat by your chat control configuration. + BlockedPhrasesConfigurationUpdate *BlockedPhrasesConfigurationUpdate `locationName:"blockedPhrasesConfigurationUpdate" type:"structure"` + + // A token that you provide to identify the request to update a Amazon Q application + // chat configuration. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The response scope configured for your application. This determines whether + // your application uses its retrieval augmented generation (RAG) system to + // generate answers only from your enterprise data, or also uses the large language + // models (LLM) knowledge to respons to end user questions in chat. + ResponseScope *string `locationName:"responseScope" type:"string" enum:"ResponseScope"` + + // The configured topic specific chat controls you want to update. + TopicConfigurationsToCreateOrUpdate []*TopicConfiguration `locationName:"topicConfigurationsToCreateOrUpdate" type:"list"` + + // The configured topic specific chat controls you want to delete. + TopicConfigurationsToDelete []*TopicConfiguration `locationName:"topicConfigurationsToDelete" 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 UpdateChatControlsConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateChatControlsConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateChatControlsConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateChatControlsConfigurationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.TopicConfigurationsToCreateOrUpdate != nil { + for i, v := range s.TopicConfigurationsToCreateOrUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TopicConfigurationsToCreateOrUpdate", i), err.(request.ErrInvalidParams)) + } + } + } + if s.TopicConfigurationsToDelete != nil { + for i, v := range s.TopicConfigurationsToDelete { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TopicConfigurationsToDelete", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateChatControlsConfigurationInput) SetApplicationId(v string) *UpdateChatControlsConfigurationInput { + s.ApplicationId = &v + return s +} + +// SetBlockedPhrasesConfigurationUpdate sets the BlockedPhrasesConfigurationUpdate field's value. +func (s *UpdateChatControlsConfigurationInput) SetBlockedPhrasesConfigurationUpdate(v *BlockedPhrasesConfigurationUpdate) *UpdateChatControlsConfigurationInput { + s.BlockedPhrasesConfigurationUpdate = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateChatControlsConfigurationInput) SetClientToken(v string) *UpdateChatControlsConfigurationInput { + s.ClientToken = &v + return s +} + +// SetResponseScope sets the ResponseScope field's value. +func (s *UpdateChatControlsConfigurationInput) SetResponseScope(v string) *UpdateChatControlsConfigurationInput { + s.ResponseScope = &v + return s +} + +// SetTopicConfigurationsToCreateOrUpdate sets the TopicConfigurationsToCreateOrUpdate field's value. +func (s *UpdateChatControlsConfigurationInput) SetTopicConfigurationsToCreateOrUpdate(v []*TopicConfiguration) *UpdateChatControlsConfigurationInput { + s.TopicConfigurationsToCreateOrUpdate = v + return s +} + +// SetTopicConfigurationsToDelete sets the TopicConfigurationsToDelete field's value. +func (s *UpdateChatControlsConfigurationInput) SetTopicConfigurationsToDelete(v []*TopicConfiguration) *UpdateChatControlsConfigurationInput { + s.TopicConfigurationsToDelete = v + return s +} + +type UpdateChatControlsConfigurationOutput 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 UpdateChatControlsConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateChatControlsConfigurationOutput) GoString() string { + return s.String() +} + +type UpdateDataSourceInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application the data source is attached to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The identifier of the data source connector. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"dataSourceId" min:"36" type:"string" required:"true"` + + // The description of the data source connector. + Description *string `locationName:"description" type:"string"` + + // A name of the data source connector. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // Provides the configuration information for altering document metadata and + // content during the document ingestion process. + // + // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). + DocumentEnrichmentConfiguration *DocumentEnrichmentConfiguration `locationName:"documentEnrichmentConfiguration" type:"structure"` + + // The identifier of the index attached to the data source connector. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role with permission to access the + // data source and required resources. + RoleArn *string `locationName:"roleArn" type:"string"` + + // The chosen update frequency for your data source. + SyncSchedule *string `locationName:"syncSchedule" type:"string"` + + // Provides configuration information needed to connect to an Amazon VPC (Virtual + // Private Cloud). + VpcConfiguration *DataSourceVpcConfiguration `locationName:"vpcConfiguration" 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 UpdateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.DocumentEnrichmentConfiguration != nil { + if err := s.DocumentEnrichmentConfiguration.Validate(); err != nil { + invalidParams.AddNested("DocumentEnrichmentConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.VpcConfiguration != nil { + if err := s.VpcConfiguration.Validate(); err != nil { + invalidParams.AddNested("VpcConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateDataSourceInput) SetApplicationId(v string) *UpdateDataSourceInput { + s.ApplicationId = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *UpdateDataSourceInput) SetDataSourceId(v string) *UpdateDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateDataSourceInput) SetDescription(v string) *UpdateDataSourceInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdateDataSourceInput) SetDisplayName(v string) *UpdateDataSourceInput { + s.DisplayName = &v + return s +} + +// SetDocumentEnrichmentConfiguration sets the DocumentEnrichmentConfiguration field's value. +func (s *UpdateDataSourceInput) SetDocumentEnrichmentConfiguration(v *DocumentEnrichmentConfiguration) *UpdateDataSourceInput { + s.DocumentEnrichmentConfiguration = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *UpdateDataSourceInput) SetIndexId(v string) *UpdateDataSourceInput { + s.IndexId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateDataSourceInput) SetRoleArn(v string) *UpdateDataSourceInput { + s.RoleArn = &v + return s +} + +// SetSyncSchedule sets the SyncSchedule field's value. +func (s *UpdateDataSourceInput) SetSyncSchedule(v string) *UpdateDataSourceInput { + s.SyncSchedule = &v + return s +} + +// SetVpcConfiguration sets the VpcConfiguration field's value. +func (s *UpdateDataSourceInput) SetVpcConfiguration(v *DataSourceVpcConfiguration) *UpdateDataSourceInput { + s.VpcConfiguration = v + return s +} + +type UpdateDataSourceOutput 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 UpdateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDataSourceOutput) GoString() string { + return s.String() +} + +type UpdateIndexInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application connected to the index. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The storage capacity units you want to provision for your Amazon Q index. + // You can add and remove capacity to fit your usage needs. + CapacityConfiguration *IndexCapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` + + // The description of the Amazon Q index. + Description *string `locationName:"description" type:"string"` + + // The name of the Amazon Q index. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // Configuration information for document metadata or fields. Document metadata + // are fields or attributes associated with your documents. For example, the + // company department name associated with each document. For more information, + // see Understanding document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes). + DocumentAttributeConfigurations []*DocumentAttributeConfiguration `locationName:"documentAttributeConfigurations" min:"1" type:"list"` + + // The identifier of the Amazon Q index. + // + // IndexId is a required field + IndexId *string `location:"uri" locationName:"indexId" min:"36" 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 UpdateIndexInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIndexInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateIndexInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateIndexInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.DocumentAttributeConfigurations != nil && len(s.DocumentAttributeConfigurations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DocumentAttributeConfigurations", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.CapacityConfiguration != nil { + if err := s.CapacityConfiguration.Validate(); err != nil { + invalidParams.AddNested("CapacityConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.DocumentAttributeConfigurations != nil { + for i, v := range s.DocumentAttributeConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DocumentAttributeConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateIndexInput) SetApplicationId(v string) *UpdateIndexInput { + s.ApplicationId = &v + return s +} + +// SetCapacityConfiguration sets the CapacityConfiguration field's value. +func (s *UpdateIndexInput) SetCapacityConfiguration(v *IndexCapacityConfiguration) *UpdateIndexInput { + s.CapacityConfiguration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateIndexInput) SetDescription(v string) *UpdateIndexInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdateIndexInput) SetDisplayName(v string) *UpdateIndexInput { + s.DisplayName = &v + return s +} + +// SetDocumentAttributeConfigurations sets the DocumentAttributeConfigurations field's value. +func (s *UpdateIndexInput) SetDocumentAttributeConfigurations(v []*DocumentAttributeConfiguration) *UpdateIndexInput { + s.DocumentAttributeConfigurations = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *UpdateIndexInput) SetIndexId(v string) *UpdateIndexInput { + s.IndexId = &v + return s +} + +type UpdateIndexOutput 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 UpdateIndexOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIndexOutput) GoString() string { + return s.String() +} + +type UpdatePluginInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application the plugin is attached to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The authentication configuration the plugin is using. + AuthConfiguration *PluginAuthConfiguration `locationName:"authConfiguration" type:"structure"` + + // The name of the plugin. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The identifier of the plugin. + // + // PluginId is a required field + PluginId *string `location:"uri" locationName:"pluginId" min:"36" type:"string" required:"true"` + + // The source URL used for plugin configuration. + ServerUrl *string `locationName:"serverUrl" min:"1" type:"string"` + + // The status of the plugin. + State *string `locationName:"state" type:"string" enum:"PluginState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePluginInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePluginInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePluginInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePluginInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.PluginId == nil { + invalidParams.Add(request.NewErrParamRequired("PluginId")) + } + if s.PluginId != nil && len(*s.PluginId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("PluginId", 36)) + } + if s.ServerUrl != nil && len(*s.ServerUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServerUrl", 1)) + } + if s.AuthConfiguration != nil { + if err := s.AuthConfiguration.Validate(); err != nil { + invalidParams.AddNested("AuthConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdatePluginInput) SetApplicationId(v string) *UpdatePluginInput { + s.ApplicationId = &v + return s +} + +// SetAuthConfiguration sets the AuthConfiguration field's value. +func (s *UpdatePluginInput) SetAuthConfiguration(v *PluginAuthConfiguration) *UpdatePluginInput { + s.AuthConfiguration = v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdatePluginInput) SetDisplayName(v string) *UpdatePluginInput { + s.DisplayName = &v + return s +} + +// SetPluginId sets the PluginId field's value. +func (s *UpdatePluginInput) SetPluginId(v string) *UpdatePluginInput { + s.PluginId = &v + return s +} + +// SetServerUrl sets the ServerUrl field's value. +func (s *UpdatePluginInput) SetServerUrl(v string) *UpdatePluginInput { + s.ServerUrl = &v + return s +} + +// SetState sets the State field's value. +func (s *UpdatePluginInput) SetState(v string) *UpdatePluginInput { + s.State = &v + return s +} + +type UpdatePluginOutput 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 UpdatePluginOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdatePluginOutput) GoString() string { + return s.String() +} + +type UpdateRetrieverInput struct { + _ struct{} `type:"structure"` + + // The identifier of your Amazon Q application. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // Provides information on how the retriever used for your Amazon Q application + // is configured. + Configuration *RetrieverConfiguration `locationName:"configuration" type:"structure"` + + // The name of your retriever. + DisplayName *string `locationName:"displayName" min:"1" type:"string"` + + // The identifier of your retriever. + // + // RetrieverId is a required field + RetrieverId *string `location:"uri" locationName:"retrieverId" min:"36" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role with permission to access the + // retriever and required resources. + RoleArn *string `locationName:"roleArn" 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 UpdateRetrieverInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRetrieverInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRetrieverInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRetrieverInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.RetrieverId == nil { + invalidParams.Add(request.NewErrParamRequired("RetrieverId")) + } + if s.RetrieverId != nil && len(*s.RetrieverId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("RetrieverId", 36)) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateRetrieverInput) SetApplicationId(v string) *UpdateRetrieverInput { + s.ApplicationId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateRetrieverInput) SetConfiguration(v *RetrieverConfiguration) *UpdateRetrieverInput { + s.Configuration = v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdateRetrieverInput) SetDisplayName(v string) *UpdateRetrieverInput { + s.DisplayName = &v + return s +} + +// SetRetrieverId sets the RetrieverId field's value. +func (s *UpdateRetrieverInput) SetRetrieverId(v string) *UpdateRetrieverInput { + s.RetrieverId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateRetrieverInput) SetRoleArn(v string) *UpdateRetrieverInput { + s.RoleArn = &v + return s +} + +type UpdateRetrieverOutput 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 UpdateRetrieverOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRetrieverOutput) GoString() string { + return s.String() +} + +type UpdateUserInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application the user is attached to. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The user aliases attached to the user id that are to be deleted. + UserAliasesToDelete []*UserAlias `locationName:"userAliasesToDelete" type:"list"` + + // The user aliases attached to the user id that are to be updated. + UserAliasesToUpdate []*UserAlias `locationName:"userAliasesToUpdate" type:"list"` + + // The email id attached to the user. + // + // UserId is a required field + UserId *string `location:"uri" locationName:"userId" 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 UpdateUserInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUserInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateUserInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + if s.UserAliasesToDelete != nil { + for i, v := range s.UserAliasesToDelete { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAliasesToDelete", i), err.(request.ErrInvalidParams)) + } + } + } + if s.UserAliasesToUpdate != nil { + for i, v := range s.UserAliasesToUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAliasesToUpdate", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateUserInput) SetApplicationId(v string) *UpdateUserInput { + s.ApplicationId = &v + return s +} + +// SetUserAliasesToDelete sets the UserAliasesToDelete field's value. +func (s *UpdateUserInput) SetUserAliasesToDelete(v []*UserAlias) *UpdateUserInput { + s.UserAliasesToDelete = v + return s +} + +// SetUserAliasesToUpdate sets the UserAliasesToUpdate field's value. +func (s *UpdateUserInput) SetUserAliasesToUpdate(v []*UserAlias) *UpdateUserInput { + s.UserAliasesToUpdate = v + return s +} + +// SetUserId sets the UserId field's value. +func (s *UpdateUserInput) SetUserId(v string) *UpdateUserInput { + s.UserId = &v + return s +} + +type UpdateUserOutput struct { + _ struct{} `type:"structure"` + + // The user aliases that have been to be added to a user id. + UserAliasesAdded []*UserAlias `locationName:"userAliasesAdded" type:"list"` + + // The user aliases that have been deleted from a user id. + UserAliasesDeleted []*UserAlias `locationName:"userAliasesDeleted" type:"list"` + + // The user aliases attached to a user id that have been updated. + UserAliasesUpdated []*UserAlias `locationName:"userAliasesUpdated" 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 UpdateUserOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUserOutput) GoString() string { + return s.String() +} + +// SetUserAliasesAdded sets the UserAliasesAdded field's value. +func (s *UpdateUserOutput) SetUserAliasesAdded(v []*UserAlias) *UpdateUserOutput { + s.UserAliasesAdded = v + return s +} + +// SetUserAliasesDeleted sets the UserAliasesDeleted field's value. +func (s *UpdateUserOutput) SetUserAliasesDeleted(v []*UserAlias) *UpdateUserOutput { + s.UserAliasesDeleted = v + return s +} + +// SetUserAliasesUpdated sets the UserAliasesUpdated field's value. +func (s *UpdateUserOutput) SetUserAliasesUpdated(v []*UserAlias) *UpdateUserOutput { + s.UserAliasesUpdated = v + return s +} + +type UpdateWebExperienceInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q application attached to the web experience. + // + // ApplicationId is a required field + ApplicationId *string `location:"uri" locationName:"applicationId" min:"36" type:"string" required:"true"` + + // The authentication configuration of the Amazon Q web experience. + AuthenticationConfiguration *WebExperienceAuthConfiguration `locationName:"authenticationConfiguration" type:"structure"` + + // Determines whether sample prompts are enabled in the web experience for an + // end user. + SamplePromptsControlMode *string `locationName:"samplePromptsControlMode" type:"string" enum:"WebExperienceSamplePromptsControlMode"` + + // The subtitle of the Amazon Q web experience. + Subtitle *string `locationName:"subtitle" type:"string"` + + // The title of the Amazon Q web experience. + Title *string `locationName:"title" type:"string"` + + // The identifier of the Amazon Q web experience. + // + // WebExperienceId is a required field + WebExperienceId *string `location:"uri" locationName:"webExperienceId" min:"36" type:"string" required:"true"` + + // A customized welcome message for an end user in an Amazon Q web experience. + WelcomeMessage *string `locationName:"welcomeMessage" 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 UpdateWebExperienceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateWebExperienceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateWebExperienceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateWebExperienceInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.ApplicationId != nil && len(*s.ApplicationId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationId", 36)) + } + if s.WebExperienceId == nil { + invalidParams.Add(request.NewErrParamRequired("WebExperienceId")) + } + if s.WebExperienceId != nil && len(*s.WebExperienceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("WebExperienceId", 36)) + } + if s.AuthenticationConfiguration != nil { + if err := s.AuthenticationConfiguration.Validate(); err != nil { + invalidParams.AddNested("AuthenticationConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *UpdateWebExperienceInput) SetApplicationId(v string) *UpdateWebExperienceInput { + s.ApplicationId = &v + return s +} + +// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. +func (s *UpdateWebExperienceInput) SetAuthenticationConfiguration(v *WebExperienceAuthConfiguration) *UpdateWebExperienceInput { + s.AuthenticationConfiguration = v + return s +} + +// SetSamplePromptsControlMode sets the SamplePromptsControlMode field's value. +func (s *UpdateWebExperienceInput) SetSamplePromptsControlMode(v string) *UpdateWebExperienceInput { + s.SamplePromptsControlMode = &v + return s +} + +// SetSubtitle sets the Subtitle field's value. +func (s *UpdateWebExperienceInput) SetSubtitle(v string) *UpdateWebExperienceInput { + s.Subtitle = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *UpdateWebExperienceInput) SetTitle(v string) *UpdateWebExperienceInput { + s.Title = &v + return s +} + +// SetWebExperienceId sets the WebExperienceId field's value. +func (s *UpdateWebExperienceInput) SetWebExperienceId(v string) *UpdateWebExperienceInput { + s.WebExperienceId = &v + return s +} + +// SetWelcomeMessage sets the WelcomeMessage field's value. +func (s *UpdateWebExperienceInput) SetWelcomeMessage(v string) *UpdateWebExperienceInput { + s.WelcomeMessage = &v + return s +} + +type UpdateWebExperienceOutput 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 UpdateWebExperienceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateWebExperienceOutput) GoString() string { + return s.String() +} + +// Aliases attached to a user id within an Amazon Q application. +type UserAlias struct { + _ struct{} `type:"structure"` + + // The identifier of the data source that the user aliases are associated with. + DataSourceId *string `locationName:"dataSourceId" min:"36" type:"string"` + + // The identifier of the index that the user aliases are associated with. + IndexId *string `locationName:"indexId" min:"36" type:"string"` + + // The identifier of the user id associated with the user aliases. + // + // UserId is a required field + UserId *string `locationName:"userId" 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 UserAlias) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UserAlias) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UserAlias) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UserAlias"} + if s.DataSourceId != nil && len(*s.DataSourceId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 36)) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *UserAlias) SetDataSourceId(v string) *UserAlias { + s.DataSourceId = &v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *UserAlias) SetIndexId(v string) *UserAlias { + s.IndexId = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *UserAlias) SetUserId(v string) *UserAlias { + s.UserId = &v + return s +} + +// Provides information about users and groups associated with a topic control +// rule. +type UsersAndGroups struct { + _ struct{} `type:"structure"` + + // The user groups associated with a topic control rule. + UserGroups []*string `locationName:"userGroups" type:"list"` + + // The user ids associated with a topic control rule. + UserIds []*string `locationName:"userIds" 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 UsersAndGroups) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UsersAndGroups) GoString() string { + return s.String() +} + +// SetUserGroups sets the UserGroups field's value. +func (s *UsersAndGroups) SetUserGroups(v []*string) *UsersAndGroups { + s.UserGroups = v + return s +} + +// SetUserIds sets the UserIds field's value. +func (s *UsersAndGroups) SetUserIds(v []*string) *UsersAndGroups { + s.UserIds = v + return s +} + +// The input doesn't meet the constraints set by the Amazon Q service. Provide +// the correct input and try again. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The input field(s) that failed validation. + Fields []*ValidationExceptionField `locationName:"fields" type:"list"` + + // The message describing the ValidationException. + Message_ *string `locationName:"message" min:"1" type:"string"` + + // The reason for the ValidationException. + // + // Reason is a required field + Reason *string `locationName:"reason" type:"string" required:"true" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input failed to meet the constraints specified by Amazon Q in a specified +// field. +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // A message about the validation exception. + // + // Message is a required field + Message *string `locationName:"message" min:"1" type:"string" required:"true"` + + // The field name where the invalid entry was detected. + // + // Name is a required field + Name *string `locationName:"name" 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 ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +// Provides information for an Amazon Q web experience. +type WebExperience struct { + _ struct{} `type:"structure"` + + // The Unix timestamp when the Amazon Q application was last updated. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The endpoint URLs for your Amazon Q web experience. The URLs are unique and + // fully hosted by Amazon Web Services. + DefaultEndpoint *string `locationName:"defaultEndpoint" min:"1" type:"string"` + + // The status of your Amazon Q web experience. + Status *string `locationName:"status" type:"string" enum:"WebExperienceStatus"` + + // The Unix timestamp when your Amazon Q web experience was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The identifier of your Amazon Q web experience. + WebExperienceId *string `locationName:"webExperienceId" min:"36" 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 WebExperience) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WebExperience) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *WebExperience) SetCreatedAt(v time.Time) *WebExperience { + s.CreatedAt = &v + return s +} + +// SetDefaultEndpoint sets the DefaultEndpoint field's value. +func (s *WebExperience) SetDefaultEndpoint(v string) *WebExperience { + s.DefaultEndpoint = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *WebExperience) SetStatus(v string) *WebExperience { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *WebExperience) SetUpdatedAt(v time.Time) *WebExperience { + s.UpdatedAt = &v + return s +} + +// SetWebExperienceId sets the WebExperienceId field's value. +func (s *WebExperience) SetWebExperienceId(v string) *WebExperience { + s.WebExperienceId = &v + return s +} + +// Provides the authorization configuration information needed to deploy a Amazon +// Q web experience to end users. +type WebExperienceAuthConfiguration struct { + _ struct{} `type:"structure"` + + // Provides the SAML 2.0 compliant identity provider (IdP) configuration information + // Amazon Q needs to deploy a Amazon Q web experience. + SamlConfiguration *SamlConfiguration `locationName:"samlConfiguration" 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 WebExperienceAuthConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WebExperienceAuthConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *WebExperienceAuthConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "WebExperienceAuthConfiguration"} + if s.SamlConfiguration != nil { + if err := s.SamlConfiguration.Validate(); err != nil { + invalidParams.AddNested("SamlConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSamlConfiguration sets the SamlConfiguration field's value. +func (s *WebExperienceAuthConfiguration) SetSamlConfiguration(v *SamlConfiguration) *WebExperienceAuthConfiguration { + s.SamlConfiguration = v + return s +} + +const ( + // ActionPayloadFieldTypeString is a ActionPayloadFieldType enum value + ActionPayloadFieldTypeString = "STRING" + + // ActionPayloadFieldTypeNumber is a ActionPayloadFieldType enum value + ActionPayloadFieldTypeNumber = "NUMBER" + + // ActionPayloadFieldTypeArray is a ActionPayloadFieldType enum value + ActionPayloadFieldTypeArray = "ARRAY" + + // ActionPayloadFieldTypeBoolean is a ActionPayloadFieldType enum value + ActionPayloadFieldTypeBoolean = "BOOLEAN" +) + +// ActionPayloadFieldType_Values returns all elements of the ActionPayloadFieldType enum +func ActionPayloadFieldType_Values() []string { + return []string{ + ActionPayloadFieldTypeString, + ActionPayloadFieldTypeNumber, + ActionPayloadFieldTypeArray, + ActionPayloadFieldTypeBoolean, + } +} + +const ( + // ApplicationStatusCreating is a ApplicationStatus enum value + ApplicationStatusCreating = "CREATING" + + // ApplicationStatusActive is a ApplicationStatus enum value + ApplicationStatusActive = "ACTIVE" + + // ApplicationStatusDeleting is a ApplicationStatus enum value + ApplicationStatusDeleting = "DELETING" + + // ApplicationStatusFailed is a ApplicationStatus enum value + ApplicationStatusFailed = "FAILED" + + // ApplicationStatusUpdating is a ApplicationStatus enum value + ApplicationStatusUpdating = "UPDATING" +) + +// ApplicationStatus_Values returns all elements of the ApplicationStatus enum +func ApplicationStatus_Values() []string { + return []string{ + ApplicationStatusCreating, + ApplicationStatusActive, + ApplicationStatusDeleting, + ApplicationStatusFailed, + ApplicationStatusUpdating, + } +} + +const ( + // AttachmentStatusFailed is a AttachmentStatus enum value + AttachmentStatusFailed = "FAILED" + + // AttachmentStatusSucceeded is a AttachmentStatus enum value + AttachmentStatusSucceeded = "SUCCEEDED" +) + +// AttachmentStatus_Values returns all elements of the AttachmentStatus enum +func AttachmentStatus_Values() []string { + return []string{ + AttachmentStatusFailed, + AttachmentStatusSucceeded, + } +} + +const ( + // AttachmentsControlModeEnabled is a AttachmentsControlMode enum value + AttachmentsControlModeEnabled = "ENABLED" + + // AttachmentsControlModeDisabled is a AttachmentsControlMode enum value + AttachmentsControlModeDisabled = "DISABLED" +) + +// AttachmentsControlMode_Values returns all elements of the AttachmentsControlMode enum +func AttachmentsControlMode_Values() []string { + return []string{ + AttachmentsControlModeEnabled, + AttachmentsControlModeDisabled, + } +} + +const ( + // AttributeTypeString is a AttributeType enum value + AttributeTypeString = "STRING" + + // AttributeTypeStringList is a AttributeType enum value + AttributeTypeStringList = "STRING_LIST" + + // AttributeTypeNumber is a AttributeType enum value + AttributeTypeNumber = "NUMBER" + + // AttributeTypeDate is a AttributeType enum value + AttributeTypeDate = "DATE" +) + +// AttributeType_Values returns all elements of the AttributeType enum +func AttributeType_Values() []string { + return []string{ + AttributeTypeString, + AttributeTypeStringList, + AttributeTypeNumber, + AttributeTypeDate, + } +} + +const ( + // AttributeValueOperatorDelete is a AttributeValueOperator enum value + AttributeValueOperatorDelete = "DELETE" +) + +// AttributeValueOperator_Values returns all elements of the AttributeValueOperator enum +func AttributeValueOperator_Values() []string { + return []string{ + AttributeValueOperatorDelete, + } +} + +const ( + // ContentTypePdf is a ContentType enum value + ContentTypePdf = "PDF" + + // ContentTypeHtml is a ContentType enum value + ContentTypeHtml = "HTML" + + // ContentTypeMsWord is a ContentType enum value + ContentTypeMsWord = "MS_WORD" + + // ContentTypePlainText is a ContentType enum value + ContentTypePlainText = "PLAIN_TEXT" + + // ContentTypePpt is a ContentType enum value + ContentTypePpt = "PPT" + + // ContentTypeRtf is a ContentType enum value + ContentTypeRtf = "RTF" + + // ContentTypeXml is a ContentType enum value + ContentTypeXml = "XML" + + // ContentTypeXslt is a ContentType enum value + ContentTypeXslt = "XSLT" + + // ContentTypeMsExcel is a ContentType enum value + ContentTypeMsExcel = "MS_EXCEL" + + // ContentTypeCsv is a ContentType enum value + ContentTypeCsv = "CSV" + + // ContentTypeJson is a ContentType enum value + ContentTypeJson = "JSON" + + // ContentTypeMd is a ContentType enum value + ContentTypeMd = "MD" +) + +// ContentType_Values returns all elements of the ContentType enum +func ContentType_Values() []string { + return []string{ + ContentTypePdf, + ContentTypeHtml, + ContentTypeMsWord, + ContentTypePlainText, + ContentTypePpt, + ContentTypeRtf, + ContentTypeXml, + ContentTypeXslt, + ContentTypeMsExcel, + ContentTypeCsv, + ContentTypeJson, + ContentTypeMd, + } +} + +const ( + // DataSourceStatusPendingCreation is a DataSourceStatus enum value + DataSourceStatusPendingCreation = "PENDING_CREATION" + + // DataSourceStatusCreating is a DataSourceStatus enum value + DataSourceStatusCreating = "CREATING" + + // DataSourceStatusActive is a DataSourceStatus enum value + DataSourceStatusActive = "ACTIVE" + + // DataSourceStatusDeleting is a DataSourceStatus enum value + DataSourceStatusDeleting = "DELETING" + + // DataSourceStatusFailed is a DataSourceStatus enum value + DataSourceStatusFailed = "FAILED" + + // DataSourceStatusUpdating is a DataSourceStatus enum value + DataSourceStatusUpdating = "UPDATING" +) + +// DataSourceStatus_Values returns all elements of the DataSourceStatus enum +func DataSourceStatus_Values() []string { + return []string{ + DataSourceStatusPendingCreation, + DataSourceStatusCreating, + DataSourceStatusActive, + DataSourceStatusDeleting, + DataSourceStatusFailed, + DataSourceStatusUpdating, + } +} + +const ( + // DataSourceSyncJobStatusFailed is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusFailed = "FAILED" + + // DataSourceSyncJobStatusSucceeded is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusSucceeded = "SUCCEEDED" + + // DataSourceSyncJobStatusSyncing is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusSyncing = "SYNCING" + + // DataSourceSyncJobStatusIncomplete is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusIncomplete = "INCOMPLETE" + + // DataSourceSyncJobStatusStopping is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusStopping = "STOPPING" + + // DataSourceSyncJobStatusAborted is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusAborted = "ABORTED" + + // DataSourceSyncJobStatusSyncingIndexing is a DataSourceSyncJobStatus enum value + DataSourceSyncJobStatusSyncingIndexing = "SYNCING_INDEXING" +) + +// DataSourceSyncJobStatus_Values returns all elements of the DataSourceSyncJobStatus enum +func DataSourceSyncJobStatus_Values() []string { + return []string{ + DataSourceSyncJobStatusFailed, + DataSourceSyncJobStatusSucceeded, + DataSourceSyncJobStatusSyncing, + DataSourceSyncJobStatusIncomplete, + DataSourceSyncJobStatusStopping, + DataSourceSyncJobStatusAborted, + DataSourceSyncJobStatusSyncingIndexing, + } +} + +const ( + // DocumentContentOperatorDelete is a DocumentContentOperator enum value + DocumentContentOperatorDelete = "DELETE" +) + +// DocumentContentOperator_Values returns all elements of the DocumentContentOperator enum +func DocumentContentOperator_Values() []string { + return []string{ + DocumentContentOperatorDelete, + } +} + +const ( + // DocumentEnrichmentConditionOperatorGreaterThan is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorGreaterThan = "GREATER_THAN" + + // DocumentEnrichmentConditionOperatorGreaterThanOrEquals is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorGreaterThanOrEquals = "GREATER_THAN_OR_EQUALS" + + // DocumentEnrichmentConditionOperatorLessThan is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorLessThan = "LESS_THAN" + + // DocumentEnrichmentConditionOperatorLessThanOrEquals is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorLessThanOrEquals = "LESS_THAN_OR_EQUALS" + + // DocumentEnrichmentConditionOperatorEquals is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorEquals = "EQUALS" + + // DocumentEnrichmentConditionOperatorNotEquals is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorNotEquals = "NOT_EQUALS" + + // DocumentEnrichmentConditionOperatorContains is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorContains = "CONTAINS" + + // DocumentEnrichmentConditionOperatorNotContains is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorNotContains = "NOT_CONTAINS" + + // DocumentEnrichmentConditionOperatorExists is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorExists = "EXISTS" + + // DocumentEnrichmentConditionOperatorNotExists is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorNotExists = "NOT_EXISTS" + + // DocumentEnrichmentConditionOperatorBeginsWith is a DocumentEnrichmentConditionOperator enum value + DocumentEnrichmentConditionOperatorBeginsWith = "BEGINS_WITH" +) + +// DocumentEnrichmentConditionOperator_Values returns all elements of the DocumentEnrichmentConditionOperator enum +func DocumentEnrichmentConditionOperator_Values() []string { + return []string{ + DocumentEnrichmentConditionOperatorGreaterThan, + DocumentEnrichmentConditionOperatorGreaterThanOrEquals, + DocumentEnrichmentConditionOperatorLessThan, + DocumentEnrichmentConditionOperatorLessThanOrEquals, + DocumentEnrichmentConditionOperatorEquals, + DocumentEnrichmentConditionOperatorNotEquals, + DocumentEnrichmentConditionOperatorContains, + DocumentEnrichmentConditionOperatorNotContains, + DocumentEnrichmentConditionOperatorExists, + DocumentEnrichmentConditionOperatorNotExists, + DocumentEnrichmentConditionOperatorBeginsWith, + } +} + +const ( + // DocumentStatusReceived is a DocumentStatus enum value + DocumentStatusReceived = "RECEIVED" + + // DocumentStatusProcessing is a DocumentStatus enum value + DocumentStatusProcessing = "PROCESSING" + + // DocumentStatusIndexed is a DocumentStatus enum value + DocumentStatusIndexed = "INDEXED" + + // DocumentStatusUpdated is a DocumentStatus enum value + DocumentStatusUpdated = "UPDATED" + + // DocumentStatusFailed is a DocumentStatus enum value + DocumentStatusFailed = "FAILED" + + // DocumentStatusDeleting is a DocumentStatus enum value + DocumentStatusDeleting = "DELETING" + + // DocumentStatusDeleted is a DocumentStatus enum value + DocumentStatusDeleted = "DELETED" + + // DocumentStatusDocumentFailedToIndex is a DocumentStatus enum value + DocumentStatusDocumentFailedToIndex = "DOCUMENT_FAILED_TO_INDEX" +) + +// DocumentStatus_Values returns all elements of the DocumentStatus enum +func DocumentStatus_Values() []string { + return []string{ + DocumentStatusReceived, + DocumentStatusProcessing, + DocumentStatusIndexed, + DocumentStatusUpdated, + DocumentStatusFailed, + DocumentStatusDeleting, + DocumentStatusDeleted, + DocumentStatusDocumentFailedToIndex, + } +} + +const ( + // ErrorCodeInternalError is a ErrorCode enum value + ErrorCodeInternalError = "InternalError" + + // ErrorCodeInvalidRequest is a ErrorCode enum value + ErrorCodeInvalidRequest = "InvalidRequest" + + // ErrorCodeResourceInactive is a ErrorCode enum value + ErrorCodeResourceInactive = "ResourceInactive" + + // ErrorCodeResourceNotFound is a ErrorCode enum value + ErrorCodeResourceNotFound = "ResourceNotFound" +) + +// ErrorCode_Values returns all elements of the ErrorCode enum +func ErrorCode_Values() []string { + return []string{ + ErrorCodeInternalError, + ErrorCodeInvalidRequest, + ErrorCodeResourceInactive, + ErrorCodeResourceNotFound, + } +} + +const ( + // GroupStatusFailed is a GroupStatus enum value + GroupStatusFailed = "FAILED" + + // GroupStatusSucceeded is a GroupStatus enum value + GroupStatusSucceeded = "SUCCEEDED" + + // GroupStatusProcessing is a GroupStatus enum value + GroupStatusProcessing = "PROCESSING" + + // GroupStatusDeleting is a GroupStatus enum value + GroupStatusDeleting = "DELETING" + + // GroupStatusDeleted is a GroupStatus enum value + GroupStatusDeleted = "DELETED" +) + +// GroupStatus_Values returns all elements of the GroupStatus enum +func GroupStatus_Values() []string { + return []string{ + GroupStatusFailed, + GroupStatusSucceeded, + GroupStatusProcessing, + GroupStatusDeleting, + GroupStatusDeleted, + } +} + +const ( + // IndexStatusCreating is a IndexStatus enum value + IndexStatusCreating = "CREATING" + + // IndexStatusActive is a IndexStatus enum value + IndexStatusActive = "ACTIVE" + + // IndexStatusDeleting is a IndexStatus enum value + IndexStatusDeleting = "DELETING" + + // IndexStatusFailed is a IndexStatus enum value + IndexStatusFailed = "FAILED" + + // IndexStatusUpdating is a IndexStatus enum value + IndexStatusUpdating = "UPDATING" +) + +// IndexStatus_Values returns all elements of the IndexStatus enum +func IndexStatus_Values() []string { + return []string{ + IndexStatusCreating, + IndexStatusActive, + IndexStatusDeleting, + IndexStatusFailed, + IndexStatusUpdating, + } +} + +const ( + // MemberRelationAnd is a MemberRelation enum value + MemberRelationAnd = "AND" + + // MemberRelationOr is a MemberRelation enum value + MemberRelationOr = "OR" +) + +// MemberRelation_Values returns all elements of the MemberRelation enum +func MemberRelation_Values() []string { + return []string{ + MemberRelationAnd, + MemberRelationOr, + } +} + +const ( + // MembershipTypeIndex is a MembershipType enum value + MembershipTypeIndex = "INDEX" + + // MembershipTypeDatasource is a MembershipType enum value + MembershipTypeDatasource = "DATASOURCE" +) + +// MembershipType_Values returns all elements of the MembershipType enum +func MembershipType_Values() []string { + return []string{ + MembershipTypeIndex, + MembershipTypeDatasource, + } +} + +const ( + // MessageTypeUser is a MessageType enum value + MessageTypeUser = "USER" + + // MessageTypeSystem is a MessageType enum value + MessageTypeSystem = "SYSTEM" +) + +// MessageType_Values returns all elements of the MessageType enum +func MessageType_Values() []string { + return []string{ + MessageTypeUser, + MessageTypeSystem, + } +} + +const ( + // MessageUsefulnessUseful is a MessageUsefulness enum value + MessageUsefulnessUseful = "USEFUL" + + // MessageUsefulnessNotUseful is a MessageUsefulness enum value + MessageUsefulnessNotUseful = "NOT_USEFUL" +) + +// MessageUsefulness_Values returns all elements of the MessageUsefulness enum +func MessageUsefulness_Values() []string { + return []string{ + MessageUsefulnessUseful, + MessageUsefulnessNotUseful, + } +} + +const ( + // MessageUsefulnessReasonNotFactuallyCorrect is a MessageUsefulnessReason enum value + MessageUsefulnessReasonNotFactuallyCorrect = "NOT_FACTUALLY_CORRECT" + + // MessageUsefulnessReasonHarmfulOrUnsafe is a MessageUsefulnessReason enum value + MessageUsefulnessReasonHarmfulOrUnsafe = "HARMFUL_OR_UNSAFE" + + // MessageUsefulnessReasonIncorrectOrMissingSources is a MessageUsefulnessReason enum value + MessageUsefulnessReasonIncorrectOrMissingSources = "INCORRECT_OR_MISSING_SOURCES" + + // MessageUsefulnessReasonNotHelpful is a MessageUsefulnessReason enum value + MessageUsefulnessReasonNotHelpful = "NOT_HELPFUL" + + // MessageUsefulnessReasonFactuallyCorrect is a MessageUsefulnessReason enum value + MessageUsefulnessReasonFactuallyCorrect = "FACTUALLY_CORRECT" + + // MessageUsefulnessReasonComplete is a MessageUsefulnessReason enum value + MessageUsefulnessReasonComplete = "COMPLETE" + + // MessageUsefulnessReasonRelevantSources is a MessageUsefulnessReason enum value + MessageUsefulnessReasonRelevantSources = "RELEVANT_SOURCES" + + // MessageUsefulnessReasonHelpful is a MessageUsefulnessReason enum value + MessageUsefulnessReasonHelpful = "HELPFUL" +) + +// MessageUsefulnessReason_Values returns all elements of the MessageUsefulnessReason enum +func MessageUsefulnessReason_Values() []string { + return []string{ + MessageUsefulnessReasonNotFactuallyCorrect, + MessageUsefulnessReasonHarmfulOrUnsafe, + MessageUsefulnessReasonIncorrectOrMissingSources, + MessageUsefulnessReasonNotHelpful, + MessageUsefulnessReasonFactuallyCorrect, + MessageUsefulnessReasonComplete, + MessageUsefulnessReasonRelevantSources, + MessageUsefulnessReasonHelpful, + } +} + +const ( + // PluginStateEnabled is a PluginState enum value + PluginStateEnabled = "ENABLED" + + // PluginStateDisabled is a PluginState enum value + PluginStateDisabled = "DISABLED" +) + +// PluginState_Values returns all elements of the PluginState enum +func PluginState_Values() []string { + return []string{ + PluginStateEnabled, + PluginStateDisabled, + } +} + +const ( + // PluginTypeServiceNow is a PluginType enum value + PluginTypeServiceNow = "SERVICE_NOW" + + // PluginTypeSalesforce is a PluginType enum value + PluginTypeSalesforce = "SALESFORCE" + + // PluginTypeJira is a PluginType enum value + PluginTypeJira = "JIRA" + + // PluginTypeZendesk is a PluginType enum value + PluginTypeZendesk = "ZENDESK" +) + +// PluginType_Values returns all elements of the PluginType enum +func PluginType_Values() []string { + return []string{ + PluginTypeServiceNow, + PluginTypeSalesforce, + PluginTypeJira, + PluginTypeZendesk, + } +} + +const ( + // ReadAccessTypeAllow is a ReadAccessType enum value + ReadAccessTypeAllow = "ALLOW" + + // ReadAccessTypeDeny is a ReadAccessType enum value + ReadAccessTypeDeny = "DENY" +) + +// ReadAccessType_Values returns all elements of the ReadAccessType enum +func ReadAccessType_Values() []string { + return []string{ + ReadAccessTypeAllow, + ReadAccessTypeDeny, + } +} + +const ( + // ResponseScopeEnterpriseContentOnly is a ResponseScope enum value + ResponseScopeEnterpriseContentOnly = "ENTERPRISE_CONTENT_ONLY" + + // ResponseScopeExtendedKnowledgeEnabled is a ResponseScope enum value + ResponseScopeExtendedKnowledgeEnabled = "EXTENDED_KNOWLEDGE_ENABLED" +) + +// ResponseScope_Values returns all elements of the ResponseScope enum +func ResponseScope_Values() []string { + return []string{ + ResponseScopeEnterpriseContentOnly, + ResponseScopeExtendedKnowledgeEnabled, + } +} + +const ( + // RetrieverStatusCreating is a RetrieverStatus enum value + RetrieverStatusCreating = "CREATING" + + // RetrieverStatusActive is a RetrieverStatus enum value + RetrieverStatusActive = "ACTIVE" + + // RetrieverStatusFailed is a RetrieverStatus enum value + RetrieverStatusFailed = "FAILED" +) + +// RetrieverStatus_Values returns all elements of the RetrieverStatus enum +func RetrieverStatus_Values() []string { + return []string{ + RetrieverStatusCreating, + RetrieverStatusActive, + RetrieverStatusFailed, + } +} + +const ( + // RetrieverTypeNativeIndex is a RetrieverType enum value + RetrieverTypeNativeIndex = "NATIVE_INDEX" + + // RetrieverTypeKendraIndex is a RetrieverType enum value + RetrieverTypeKendraIndex = "KENDRA_INDEX" +) + +// RetrieverType_Values returns all elements of the RetrieverType enum +func RetrieverType_Values() []string { + return []string{ + RetrieverTypeNativeIndex, + RetrieverTypeKendraIndex, + } +} + +const ( + // RuleTypeContentBlockerRule is a RuleType enum value + RuleTypeContentBlockerRule = "CONTENT_BLOCKER_RULE" + + // RuleTypeContentRetrievalRule is a RuleType enum value + RuleTypeContentRetrievalRule = "CONTENT_RETRIEVAL_RULE" +) + +// RuleType_Values returns all elements of the RuleType enum +func RuleType_Values() []string { + return []string{ + RuleTypeContentBlockerRule, + RuleTypeContentRetrievalRule, + } +} + +const ( + // StatusEnabled is a Status enum value + StatusEnabled = "ENABLED" + + // StatusDisabled is a Status enum value + StatusDisabled = "DISABLED" +) + +// Status_Values returns all elements of the Status enum +func Status_Values() []string { + return []string{ + StatusEnabled, + StatusDisabled, + } +} + +const ( + // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value + ValidationExceptionReasonCannotParse = "CANNOT_PARSE" + + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED" + + // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownOperation = "UNKNOWN_OPERATION" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonCannotParse, + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonUnknownOperation, + } +} + +const ( + // WebExperienceSamplePromptsControlModeEnabled is a WebExperienceSamplePromptsControlMode enum value + WebExperienceSamplePromptsControlModeEnabled = "ENABLED" + + // WebExperienceSamplePromptsControlModeDisabled is a WebExperienceSamplePromptsControlMode enum value + WebExperienceSamplePromptsControlModeDisabled = "DISABLED" +) + +// WebExperienceSamplePromptsControlMode_Values returns all elements of the WebExperienceSamplePromptsControlMode enum +func WebExperienceSamplePromptsControlMode_Values() []string { + return []string{ + WebExperienceSamplePromptsControlModeEnabled, + WebExperienceSamplePromptsControlModeDisabled, + } +} + +const ( + // WebExperienceStatusCreating is a WebExperienceStatus enum value + WebExperienceStatusCreating = "CREATING" + + // WebExperienceStatusActive is a WebExperienceStatus enum value + WebExperienceStatusActive = "ACTIVE" + + // WebExperienceStatusDeleting is a WebExperienceStatus enum value + WebExperienceStatusDeleting = "DELETING" + + // WebExperienceStatusFailed is a WebExperienceStatus enum value + WebExperienceStatusFailed = "FAILED" + + // WebExperienceStatusPendingAuthConfig is a WebExperienceStatus enum value + WebExperienceStatusPendingAuthConfig = "PENDING_AUTH_CONFIG" +) + +// WebExperienceStatus_Values returns all elements of the WebExperienceStatus enum +func WebExperienceStatus_Values() []string { + return []string{ + WebExperienceStatusCreating, + WebExperienceStatusActive, + WebExperienceStatusDeleting, + WebExperienceStatusFailed, + WebExperienceStatusPendingAuthConfig, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,26 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package qbusiness provides the client and types for making API +// requests to QBusiness. +// +// See https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27 for more information on this service. +// +// See qbusiness package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/qbusiness/ +// +// # Using the Client +// +// To contact QBusiness 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 QBusiness client QBusiness for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/qbusiness/#New +package qbusiness diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,78 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package qbusiness + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You don't have access to perform this action. Make sure you have the required + // permission policies and user accounts and try again. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // You are trying to perform an action that conflicts with the current status + // of your resource. Fix any inconsistences with your resources and try again. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An issue occurred with the internal server used for your Amazon Q service. + // Wait some minutes and try again, or contact Support (http://aws.amazon.com/contact-us/) + // for help. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeLicenseNotFoundException for service response error code + // "LicenseNotFoundException". + // + // You don't have permissions to perform the action because your license is + // inactive. Ask your admin to activate your license and try again after your + // licence is active. + ErrCodeLicenseNotFoundException = "LicenseNotFoundException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource you want to use doesn’t exist. Make sure you have provided + // the correct resource and try again. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // You have exceeded the set limits for your Amazon Q service. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to throttling. Reduce the number of requests and + // try again. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input doesn't meet the constraints set by the Amazon Q service. Provide + // the correct input and try again. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "LicenseNotFoundException": newErrorLicenseNotFoundException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/qbusinessiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/qbusinessiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/qbusinessiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/qbusinessiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,316 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package qbusinessiface provides an interface to enable mocking the QBusiness 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 qbusinessiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/qbusiness" +) + +// QBusinessAPI provides an interface to enable mocking the +// qbusiness.QBusiness 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 +// // QBusiness. +// func myFunc(svc qbusinessiface.QBusinessAPI) bool { +// // Make svc.BatchDeleteDocument request +// } +// +// func main() { +// sess := session.New() +// svc := qbusiness.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockQBusinessClient struct { +// qbusinessiface.QBusinessAPI +// } +// func (m *mockQBusinessClient) BatchDeleteDocument(input *qbusiness.BatchDeleteDocumentInput) (*qbusiness.BatchDeleteDocumentOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockQBusinessClient{} +// +// 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 QBusinessAPI interface { + BatchDeleteDocument(*qbusiness.BatchDeleteDocumentInput) (*qbusiness.BatchDeleteDocumentOutput, error) + BatchDeleteDocumentWithContext(aws.Context, *qbusiness.BatchDeleteDocumentInput, ...request.Option) (*qbusiness.BatchDeleteDocumentOutput, error) + BatchDeleteDocumentRequest(*qbusiness.BatchDeleteDocumentInput) (*request.Request, *qbusiness.BatchDeleteDocumentOutput) + + BatchPutDocument(*qbusiness.BatchPutDocumentInput) (*qbusiness.BatchPutDocumentOutput, error) + BatchPutDocumentWithContext(aws.Context, *qbusiness.BatchPutDocumentInput, ...request.Option) (*qbusiness.BatchPutDocumentOutput, error) + BatchPutDocumentRequest(*qbusiness.BatchPutDocumentInput) (*request.Request, *qbusiness.BatchPutDocumentOutput) + + ChatSync(*qbusiness.ChatSyncInput) (*qbusiness.ChatSyncOutput, error) + ChatSyncWithContext(aws.Context, *qbusiness.ChatSyncInput, ...request.Option) (*qbusiness.ChatSyncOutput, error) + ChatSyncRequest(*qbusiness.ChatSyncInput) (*request.Request, *qbusiness.ChatSyncOutput) + + CreateApplication(*qbusiness.CreateApplicationInput) (*qbusiness.CreateApplicationOutput, error) + CreateApplicationWithContext(aws.Context, *qbusiness.CreateApplicationInput, ...request.Option) (*qbusiness.CreateApplicationOutput, error) + CreateApplicationRequest(*qbusiness.CreateApplicationInput) (*request.Request, *qbusiness.CreateApplicationOutput) + + CreateIndex(*qbusiness.CreateIndexInput) (*qbusiness.CreateIndexOutput, error) + CreateIndexWithContext(aws.Context, *qbusiness.CreateIndexInput, ...request.Option) (*qbusiness.CreateIndexOutput, error) + CreateIndexRequest(*qbusiness.CreateIndexInput) (*request.Request, *qbusiness.CreateIndexOutput) + + CreatePlugin(*qbusiness.CreatePluginInput) (*qbusiness.CreatePluginOutput, error) + CreatePluginWithContext(aws.Context, *qbusiness.CreatePluginInput, ...request.Option) (*qbusiness.CreatePluginOutput, error) + CreatePluginRequest(*qbusiness.CreatePluginInput) (*request.Request, *qbusiness.CreatePluginOutput) + + CreateRetriever(*qbusiness.CreateRetrieverInput) (*qbusiness.CreateRetrieverOutput, error) + CreateRetrieverWithContext(aws.Context, *qbusiness.CreateRetrieverInput, ...request.Option) (*qbusiness.CreateRetrieverOutput, error) + CreateRetrieverRequest(*qbusiness.CreateRetrieverInput) (*request.Request, *qbusiness.CreateRetrieverOutput) + + CreateUser(*qbusiness.CreateUserInput) (*qbusiness.CreateUserOutput, error) + CreateUserWithContext(aws.Context, *qbusiness.CreateUserInput, ...request.Option) (*qbusiness.CreateUserOutput, error) + CreateUserRequest(*qbusiness.CreateUserInput) (*request.Request, *qbusiness.CreateUserOutput) + + CreateWebExperience(*qbusiness.CreateWebExperienceInput) (*qbusiness.CreateWebExperienceOutput, error) + CreateWebExperienceWithContext(aws.Context, *qbusiness.CreateWebExperienceInput, ...request.Option) (*qbusiness.CreateWebExperienceOutput, error) + CreateWebExperienceRequest(*qbusiness.CreateWebExperienceInput) (*request.Request, *qbusiness.CreateWebExperienceOutput) + + DeleteApplication(*qbusiness.DeleteApplicationInput) (*qbusiness.DeleteApplicationOutput, error) + DeleteApplicationWithContext(aws.Context, *qbusiness.DeleteApplicationInput, ...request.Option) (*qbusiness.DeleteApplicationOutput, error) + DeleteApplicationRequest(*qbusiness.DeleteApplicationInput) (*request.Request, *qbusiness.DeleteApplicationOutput) + + DeleteChatControlsConfiguration(*qbusiness.DeleteChatControlsConfigurationInput) (*qbusiness.DeleteChatControlsConfigurationOutput, error) + DeleteChatControlsConfigurationWithContext(aws.Context, *qbusiness.DeleteChatControlsConfigurationInput, ...request.Option) (*qbusiness.DeleteChatControlsConfigurationOutput, error) + DeleteChatControlsConfigurationRequest(*qbusiness.DeleteChatControlsConfigurationInput) (*request.Request, *qbusiness.DeleteChatControlsConfigurationOutput) + + DeleteConversation(*qbusiness.DeleteConversationInput) (*qbusiness.DeleteConversationOutput, error) + DeleteConversationWithContext(aws.Context, *qbusiness.DeleteConversationInput, ...request.Option) (*qbusiness.DeleteConversationOutput, error) + DeleteConversationRequest(*qbusiness.DeleteConversationInput) (*request.Request, *qbusiness.DeleteConversationOutput) + + DeleteDataSource(*qbusiness.DeleteDataSourceInput) (*qbusiness.DeleteDataSourceOutput, error) + DeleteDataSourceWithContext(aws.Context, *qbusiness.DeleteDataSourceInput, ...request.Option) (*qbusiness.DeleteDataSourceOutput, error) + DeleteDataSourceRequest(*qbusiness.DeleteDataSourceInput) (*request.Request, *qbusiness.DeleteDataSourceOutput) + + DeleteGroup(*qbusiness.DeleteGroupInput) (*qbusiness.DeleteGroupOutput, error) + DeleteGroupWithContext(aws.Context, *qbusiness.DeleteGroupInput, ...request.Option) (*qbusiness.DeleteGroupOutput, error) + DeleteGroupRequest(*qbusiness.DeleteGroupInput) (*request.Request, *qbusiness.DeleteGroupOutput) + + DeleteIndex(*qbusiness.DeleteIndexInput) (*qbusiness.DeleteIndexOutput, error) + DeleteIndexWithContext(aws.Context, *qbusiness.DeleteIndexInput, ...request.Option) (*qbusiness.DeleteIndexOutput, error) + DeleteIndexRequest(*qbusiness.DeleteIndexInput) (*request.Request, *qbusiness.DeleteIndexOutput) + + DeletePlugin(*qbusiness.DeletePluginInput) (*qbusiness.DeletePluginOutput, error) + DeletePluginWithContext(aws.Context, *qbusiness.DeletePluginInput, ...request.Option) (*qbusiness.DeletePluginOutput, error) + DeletePluginRequest(*qbusiness.DeletePluginInput) (*request.Request, *qbusiness.DeletePluginOutput) + + DeleteRetriever(*qbusiness.DeleteRetrieverInput) (*qbusiness.DeleteRetrieverOutput, error) + DeleteRetrieverWithContext(aws.Context, *qbusiness.DeleteRetrieverInput, ...request.Option) (*qbusiness.DeleteRetrieverOutput, error) + DeleteRetrieverRequest(*qbusiness.DeleteRetrieverInput) (*request.Request, *qbusiness.DeleteRetrieverOutput) + + DeleteUser(*qbusiness.DeleteUserInput) (*qbusiness.DeleteUserOutput, error) + DeleteUserWithContext(aws.Context, *qbusiness.DeleteUserInput, ...request.Option) (*qbusiness.DeleteUserOutput, error) + DeleteUserRequest(*qbusiness.DeleteUserInput) (*request.Request, *qbusiness.DeleteUserOutput) + + DeleteWebExperience(*qbusiness.DeleteWebExperienceInput) (*qbusiness.DeleteWebExperienceOutput, error) + DeleteWebExperienceWithContext(aws.Context, *qbusiness.DeleteWebExperienceInput, ...request.Option) (*qbusiness.DeleteWebExperienceOutput, error) + DeleteWebExperienceRequest(*qbusiness.DeleteWebExperienceInput) (*request.Request, *qbusiness.DeleteWebExperienceOutput) + + GetApplication(*qbusiness.GetApplicationInput) (*qbusiness.GetApplicationOutput, error) + GetApplicationWithContext(aws.Context, *qbusiness.GetApplicationInput, ...request.Option) (*qbusiness.GetApplicationOutput, error) + GetApplicationRequest(*qbusiness.GetApplicationInput) (*request.Request, *qbusiness.GetApplicationOutput) + + GetChatControlsConfiguration(*qbusiness.GetChatControlsConfigurationInput) (*qbusiness.GetChatControlsConfigurationOutput, error) + GetChatControlsConfigurationWithContext(aws.Context, *qbusiness.GetChatControlsConfigurationInput, ...request.Option) (*qbusiness.GetChatControlsConfigurationOutput, error) + GetChatControlsConfigurationRequest(*qbusiness.GetChatControlsConfigurationInput) (*request.Request, *qbusiness.GetChatControlsConfigurationOutput) + + GetChatControlsConfigurationPages(*qbusiness.GetChatControlsConfigurationInput, func(*qbusiness.GetChatControlsConfigurationOutput, bool) bool) error + GetChatControlsConfigurationPagesWithContext(aws.Context, *qbusiness.GetChatControlsConfigurationInput, func(*qbusiness.GetChatControlsConfigurationOutput, bool) bool, ...request.Option) error + + GetDataSource(*qbusiness.GetDataSourceInput) (*qbusiness.GetDataSourceOutput, error) + GetDataSourceWithContext(aws.Context, *qbusiness.GetDataSourceInput, ...request.Option) (*qbusiness.GetDataSourceOutput, error) + GetDataSourceRequest(*qbusiness.GetDataSourceInput) (*request.Request, *qbusiness.GetDataSourceOutput) + + GetGroup(*qbusiness.GetGroupInput) (*qbusiness.GetGroupOutput, error) + GetGroupWithContext(aws.Context, *qbusiness.GetGroupInput, ...request.Option) (*qbusiness.GetGroupOutput, error) + GetGroupRequest(*qbusiness.GetGroupInput) (*request.Request, *qbusiness.GetGroupOutput) + + GetIndex(*qbusiness.GetIndexInput) (*qbusiness.GetIndexOutput, error) + GetIndexWithContext(aws.Context, *qbusiness.GetIndexInput, ...request.Option) (*qbusiness.GetIndexOutput, error) + GetIndexRequest(*qbusiness.GetIndexInput) (*request.Request, *qbusiness.GetIndexOutput) + + GetPlugin(*qbusiness.GetPluginInput) (*qbusiness.GetPluginOutput, error) + GetPluginWithContext(aws.Context, *qbusiness.GetPluginInput, ...request.Option) (*qbusiness.GetPluginOutput, error) + GetPluginRequest(*qbusiness.GetPluginInput) (*request.Request, *qbusiness.GetPluginOutput) + + GetRetriever(*qbusiness.GetRetrieverInput) (*qbusiness.GetRetrieverOutput, error) + GetRetrieverWithContext(aws.Context, *qbusiness.GetRetrieverInput, ...request.Option) (*qbusiness.GetRetrieverOutput, error) + GetRetrieverRequest(*qbusiness.GetRetrieverInput) (*request.Request, *qbusiness.GetRetrieverOutput) + + GetUser(*qbusiness.GetUserInput) (*qbusiness.GetUserOutput, error) + GetUserWithContext(aws.Context, *qbusiness.GetUserInput, ...request.Option) (*qbusiness.GetUserOutput, error) + GetUserRequest(*qbusiness.GetUserInput) (*request.Request, *qbusiness.GetUserOutput) + + GetWebExperience(*qbusiness.GetWebExperienceInput) (*qbusiness.GetWebExperienceOutput, error) + GetWebExperienceWithContext(aws.Context, *qbusiness.GetWebExperienceInput, ...request.Option) (*qbusiness.GetWebExperienceOutput, error) + GetWebExperienceRequest(*qbusiness.GetWebExperienceInput) (*request.Request, *qbusiness.GetWebExperienceOutput) + + ListApplications(*qbusiness.ListApplicationsInput) (*qbusiness.ListApplicationsOutput, error) + ListApplicationsWithContext(aws.Context, *qbusiness.ListApplicationsInput, ...request.Option) (*qbusiness.ListApplicationsOutput, error) + ListApplicationsRequest(*qbusiness.ListApplicationsInput) (*request.Request, *qbusiness.ListApplicationsOutput) + + ListApplicationsPages(*qbusiness.ListApplicationsInput, func(*qbusiness.ListApplicationsOutput, bool) bool) error + ListApplicationsPagesWithContext(aws.Context, *qbusiness.ListApplicationsInput, func(*qbusiness.ListApplicationsOutput, bool) bool, ...request.Option) error + + ListConversations(*qbusiness.ListConversationsInput) (*qbusiness.ListConversationsOutput, error) + ListConversationsWithContext(aws.Context, *qbusiness.ListConversationsInput, ...request.Option) (*qbusiness.ListConversationsOutput, error) + ListConversationsRequest(*qbusiness.ListConversationsInput) (*request.Request, *qbusiness.ListConversationsOutput) + + ListConversationsPages(*qbusiness.ListConversationsInput, func(*qbusiness.ListConversationsOutput, bool) bool) error + ListConversationsPagesWithContext(aws.Context, *qbusiness.ListConversationsInput, func(*qbusiness.ListConversationsOutput, bool) bool, ...request.Option) error + + ListDataSourceSyncJobs(*qbusiness.ListDataSourceSyncJobsInput) (*qbusiness.ListDataSourceSyncJobsOutput, error) + ListDataSourceSyncJobsWithContext(aws.Context, *qbusiness.ListDataSourceSyncJobsInput, ...request.Option) (*qbusiness.ListDataSourceSyncJobsOutput, error) + ListDataSourceSyncJobsRequest(*qbusiness.ListDataSourceSyncJobsInput) (*request.Request, *qbusiness.ListDataSourceSyncJobsOutput) + + ListDataSourceSyncJobsPages(*qbusiness.ListDataSourceSyncJobsInput, func(*qbusiness.ListDataSourceSyncJobsOutput, bool) bool) error + ListDataSourceSyncJobsPagesWithContext(aws.Context, *qbusiness.ListDataSourceSyncJobsInput, func(*qbusiness.ListDataSourceSyncJobsOutput, bool) bool, ...request.Option) error + + ListDataSources(*qbusiness.ListDataSourcesInput) (*qbusiness.ListDataSourcesOutput, error) + ListDataSourcesWithContext(aws.Context, *qbusiness.ListDataSourcesInput, ...request.Option) (*qbusiness.ListDataSourcesOutput, error) + ListDataSourcesRequest(*qbusiness.ListDataSourcesInput) (*request.Request, *qbusiness.ListDataSourcesOutput) + + ListDataSourcesPages(*qbusiness.ListDataSourcesInput, func(*qbusiness.ListDataSourcesOutput, bool) bool) error + ListDataSourcesPagesWithContext(aws.Context, *qbusiness.ListDataSourcesInput, func(*qbusiness.ListDataSourcesOutput, bool) bool, ...request.Option) error + + ListDocuments(*qbusiness.ListDocumentsInput) (*qbusiness.ListDocumentsOutput, error) + ListDocumentsWithContext(aws.Context, *qbusiness.ListDocumentsInput, ...request.Option) (*qbusiness.ListDocumentsOutput, error) + ListDocumentsRequest(*qbusiness.ListDocumentsInput) (*request.Request, *qbusiness.ListDocumentsOutput) + + ListDocumentsPages(*qbusiness.ListDocumentsInput, func(*qbusiness.ListDocumentsOutput, bool) bool) error + ListDocumentsPagesWithContext(aws.Context, *qbusiness.ListDocumentsInput, func(*qbusiness.ListDocumentsOutput, bool) bool, ...request.Option) error + + ListGroups(*qbusiness.ListGroupsInput) (*qbusiness.ListGroupsOutput, error) + ListGroupsWithContext(aws.Context, *qbusiness.ListGroupsInput, ...request.Option) (*qbusiness.ListGroupsOutput, error) + ListGroupsRequest(*qbusiness.ListGroupsInput) (*request.Request, *qbusiness.ListGroupsOutput) + + ListGroupsPages(*qbusiness.ListGroupsInput, func(*qbusiness.ListGroupsOutput, bool) bool) error + ListGroupsPagesWithContext(aws.Context, *qbusiness.ListGroupsInput, func(*qbusiness.ListGroupsOutput, bool) bool, ...request.Option) error + + ListIndices(*qbusiness.ListIndicesInput) (*qbusiness.ListIndicesOutput, error) + ListIndicesWithContext(aws.Context, *qbusiness.ListIndicesInput, ...request.Option) (*qbusiness.ListIndicesOutput, error) + ListIndicesRequest(*qbusiness.ListIndicesInput) (*request.Request, *qbusiness.ListIndicesOutput) + + ListIndicesPages(*qbusiness.ListIndicesInput, func(*qbusiness.ListIndicesOutput, bool) bool) error + ListIndicesPagesWithContext(aws.Context, *qbusiness.ListIndicesInput, func(*qbusiness.ListIndicesOutput, bool) bool, ...request.Option) error + + ListMessages(*qbusiness.ListMessagesInput) (*qbusiness.ListMessagesOutput, error) + ListMessagesWithContext(aws.Context, *qbusiness.ListMessagesInput, ...request.Option) (*qbusiness.ListMessagesOutput, error) + ListMessagesRequest(*qbusiness.ListMessagesInput) (*request.Request, *qbusiness.ListMessagesOutput) + + ListMessagesPages(*qbusiness.ListMessagesInput, func(*qbusiness.ListMessagesOutput, bool) bool) error + ListMessagesPagesWithContext(aws.Context, *qbusiness.ListMessagesInput, func(*qbusiness.ListMessagesOutput, bool) bool, ...request.Option) error + + ListPlugins(*qbusiness.ListPluginsInput) (*qbusiness.ListPluginsOutput, error) + ListPluginsWithContext(aws.Context, *qbusiness.ListPluginsInput, ...request.Option) (*qbusiness.ListPluginsOutput, error) + ListPluginsRequest(*qbusiness.ListPluginsInput) (*request.Request, *qbusiness.ListPluginsOutput) + + ListPluginsPages(*qbusiness.ListPluginsInput, func(*qbusiness.ListPluginsOutput, bool) bool) error + ListPluginsPagesWithContext(aws.Context, *qbusiness.ListPluginsInput, func(*qbusiness.ListPluginsOutput, bool) bool, ...request.Option) error + + ListRetrievers(*qbusiness.ListRetrieversInput) (*qbusiness.ListRetrieversOutput, error) + ListRetrieversWithContext(aws.Context, *qbusiness.ListRetrieversInput, ...request.Option) (*qbusiness.ListRetrieversOutput, error) + ListRetrieversRequest(*qbusiness.ListRetrieversInput) (*request.Request, *qbusiness.ListRetrieversOutput) + + ListRetrieversPages(*qbusiness.ListRetrieversInput, func(*qbusiness.ListRetrieversOutput, bool) bool) error + ListRetrieversPagesWithContext(aws.Context, *qbusiness.ListRetrieversInput, func(*qbusiness.ListRetrieversOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*qbusiness.ListTagsForResourceInput) (*qbusiness.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *qbusiness.ListTagsForResourceInput, ...request.Option) (*qbusiness.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*qbusiness.ListTagsForResourceInput) (*request.Request, *qbusiness.ListTagsForResourceOutput) + + ListWebExperiences(*qbusiness.ListWebExperiencesInput) (*qbusiness.ListWebExperiencesOutput, error) + ListWebExperiencesWithContext(aws.Context, *qbusiness.ListWebExperiencesInput, ...request.Option) (*qbusiness.ListWebExperiencesOutput, error) + ListWebExperiencesRequest(*qbusiness.ListWebExperiencesInput) (*request.Request, *qbusiness.ListWebExperiencesOutput) + + ListWebExperiencesPages(*qbusiness.ListWebExperiencesInput, func(*qbusiness.ListWebExperiencesOutput, bool) bool) error + ListWebExperiencesPagesWithContext(aws.Context, *qbusiness.ListWebExperiencesInput, func(*qbusiness.ListWebExperiencesOutput, bool) bool, ...request.Option) error + + PutFeedback(*qbusiness.PutFeedbackInput) (*qbusiness.PutFeedbackOutput, error) + PutFeedbackWithContext(aws.Context, *qbusiness.PutFeedbackInput, ...request.Option) (*qbusiness.PutFeedbackOutput, error) + PutFeedbackRequest(*qbusiness.PutFeedbackInput) (*request.Request, *qbusiness.PutFeedbackOutput) + + PutGroup(*qbusiness.PutGroupInput) (*qbusiness.PutGroupOutput, error) + PutGroupWithContext(aws.Context, *qbusiness.PutGroupInput, ...request.Option) (*qbusiness.PutGroupOutput, error) + PutGroupRequest(*qbusiness.PutGroupInput) (*request.Request, *qbusiness.PutGroupOutput) + + StartDataSourceSyncJob(*qbusiness.StartDataSourceSyncJobInput) (*qbusiness.StartDataSourceSyncJobOutput, error) + StartDataSourceSyncJobWithContext(aws.Context, *qbusiness.StartDataSourceSyncJobInput, ...request.Option) (*qbusiness.StartDataSourceSyncJobOutput, error) + StartDataSourceSyncJobRequest(*qbusiness.StartDataSourceSyncJobInput) (*request.Request, *qbusiness.StartDataSourceSyncJobOutput) + + StopDataSourceSyncJob(*qbusiness.StopDataSourceSyncJobInput) (*qbusiness.StopDataSourceSyncJobOutput, error) + StopDataSourceSyncJobWithContext(aws.Context, *qbusiness.StopDataSourceSyncJobInput, ...request.Option) (*qbusiness.StopDataSourceSyncJobOutput, error) + StopDataSourceSyncJobRequest(*qbusiness.StopDataSourceSyncJobInput) (*request.Request, *qbusiness.StopDataSourceSyncJobOutput) + + TagResource(*qbusiness.TagResourceInput) (*qbusiness.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *qbusiness.TagResourceInput, ...request.Option) (*qbusiness.TagResourceOutput, error) + TagResourceRequest(*qbusiness.TagResourceInput) (*request.Request, *qbusiness.TagResourceOutput) + + UntagResource(*qbusiness.UntagResourceInput) (*qbusiness.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *qbusiness.UntagResourceInput, ...request.Option) (*qbusiness.UntagResourceOutput, error) + UntagResourceRequest(*qbusiness.UntagResourceInput) (*request.Request, *qbusiness.UntagResourceOutput) + + UpdateApplication(*qbusiness.UpdateApplicationInput) (*qbusiness.UpdateApplicationOutput, error) + UpdateApplicationWithContext(aws.Context, *qbusiness.UpdateApplicationInput, ...request.Option) (*qbusiness.UpdateApplicationOutput, error) + UpdateApplicationRequest(*qbusiness.UpdateApplicationInput) (*request.Request, *qbusiness.UpdateApplicationOutput) + + UpdateChatControlsConfiguration(*qbusiness.UpdateChatControlsConfigurationInput) (*qbusiness.UpdateChatControlsConfigurationOutput, error) + UpdateChatControlsConfigurationWithContext(aws.Context, *qbusiness.UpdateChatControlsConfigurationInput, ...request.Option) (*qbusiness.UpdateChatControlsConfigurationOutput, error) + UpdateChatControlsConfigurationRequest(*qbusiness.UpdateChatControlsConfigurationInput) (*request.Request, *qbusiness.UpdateChatControlsConfigurationOutput) + + UpdateDataSource(*qbusiness.UpdateDataSourceInput) (*qbusiness.UpdateDataSourceOutput, error) + UpdateDataSourceWithContext(aws.Context, *qbusiness.UpdateDataSourceInput, ...request.Option) (*qbusiness.UpdateDataSourceOutput, error) + UpdateDataSourceRequest(*qbusiness.UpdateDataSourceInput) (*request.Request, *qbusiness.UpdateDataSourceOutput) + + UpdateIndex(*qbusiness.UpdateIndexInput) (*qbusiness.UpdateIndexOutput, error) + UpdateIndexWithContext(aws.Context, *qbusiness.UpdateIndexInput, ...request.Option) (*qbusiness.UpdateIndexOutput, error) + UpdateIndexRequest(*qbusiness.UpdateIndexInput) (*request.Request, *qbusiness.UpdateIndexOutput) + + UpdatePlugin(*qbusiness.UpdatePluginInput) (*qbusiness.UpdatePluginOutput, error) + UpdatePluginWithContext(aws.Context, *qbusiness.UpdatePluginInput, ...request.Option) (*qbusiness.UpdatePluginOutput, error) + UpdatePluginRequest(*qbusiness.UpdatePluginInput) (*request.Request, *qbusiness.UpdatePluginOutput) + + UpdateRetriever(*qbusiness.UpdateRetrieverInput) (*qbusiness.UpdateRetrieverOutput, error) + UpdateRetrieverWithContext(aws.Context, *qbusiness.UpdateRetrieverInput, ...request.Option) (*qbusiness.UpdateRetrieverOutput, error) + UpdateRetrieverRequest(*qbusiness.UpdateRetrieverInput) (*request.Request, *qbusiness.UpdateRetrieverOutput) + + UpdateUser(*qbusiness.UpdateUserInput) (*qbusiness.UpdateUserOutput, error) + UpdateUserWithContext(aws.Context, *qbusiness.UpdateUserInput, ...request.Option) (*qbusiness.UpdateUserOutput, error) + UpdateUserRequest(*qbusiness.UpdateUserInput) (*request.Request, *qbusiness.UpdateUserOutput) + + UpdateWebExperience(*qbusiness.UpdateWebExperienceInput) (*qbusiness.UpdateWebExperienceOutput, error) + UpdateWebExperienceWithContext(aws.Context, *qbusiness.UpdateWebExperienceInput, ...request.Option) (*qbusiness.UpdateWebExperienceOutput, error) + UpdateWebExperienceRequest(*qbusiness.UpdateWebExperienceInput) (*request.Request, *qbusiness.UpdateWebExperienceOutput) +} + +var _ QBusinessAPI = (*qbusiness.QBusiness)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/service.go golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qbusiness/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qbusiness/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package qbusiness + +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/restjson" +) + +// QBusiness provides the API operation methods for making requests to +// QBusiness. See this package's package overview docs +// for details on the service. +// +// QBusiness methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type QBusiness 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 = "QBusiness" // Name of service. + EndpointsID = "qbusiness" // ID to lookup a service endpoint with. + ServiceID = "QBusiness" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the QBusiness 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 QBusiness client from just a session. +// svc := qbusiness.New(mySession) +// +// // Create a QBusiness client with additional configuration +// svc := qbusiness.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *QBusiness { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "qbusiness" + } + 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) *QBusiness { + svc := &QBusiness{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-11-27", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a QBusiness operation and runs any +// custom request initialization. +func (c *QBusiness) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/api.go golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,15129 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package qconnect + +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/restjson" +) + +const opCreateAssistant = "CreateAssistant" + +// CreateAssistantRequest generates a "aws/request.Request" representing the +// client's request for the CreateAssistant 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 CreateAssistant for more information on using the CreateAssistant +// 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 CreateAssistantRequest method. +// req, resp := client.CreateAssistantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAssistant +func (c *QConnect) CreateAssistantRequest(input *CreateAssistantInput) (req *request.Request, output *CreateAssistantOutput) { + op := &request.Operation{ + Name: opCreateAssistant, + HTTPMethod: "POST", + HTTPPath: "/assistants", + } + + if input == nil { + input = &CreateAssistantInput{} + } + + output = &CreateAssistantOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAssistant API operation for Amazon Q Connect. +// +// Creates an Amazon Q in Connect assistant. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation CreateAssistant for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAssistant +func (c *QConnect) CreateAssistant(input *CreateAssistantInput) (*CreateAssistantOutput, error) { + req, out := c.CreateAssistantRequest(input) + return out, req.Send() +} + +// CreateAssistantWithContext is the same as CreateAssistant with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAssistant 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 *QConnect) CreateAssistantWithContext(ctx aws.Context, input *CreateAssistantInput, opts ...request.Option) (*CreateAssistantOutput, error) { + req, out := c.CreateAssistantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAssistantAssociation = "CreateAssistantAssociation" + +// CreateAssistantAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreateAssistantAssociation 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 CreateAssistantAssociation for more information on using the CreateAssistantAssociation +// 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 CreateAssistantAssociationRequest method. +// req, resp := client.CreateAssistantAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAssistantAssociation +func (c *QConnect) CreateAssistantAssociationRequest(input *CreateAssistantAssociationInput) (req *request.Request, output *CreateAssistantAssociationOutput) { + op := &request.Operation{ + Name: opCreateAssistantAssociation, + HTTPMethod: "POST", + HTTPPath: "/assistants/{assistantId}/associations", + } + + if input == nil { + input = &CreateAssistantAssociationInput{} + } + + output = &CreateAssistantAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAssistantAssociation API operation for Amazon Q Connect. +// +// Creates an association between an Amazon Q in Connect assistant and another +// resource. Currently, the only supported association is with a knowledge base. +// An assistant can have only a single association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation CreateAssistantAssociation for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAssistantAssociation +func (c *QConnect) CreateAssistantAssociation(input *CreateAssistantAssociationInput) (*CreateAssistantAssociationOutput, error) { + req, out := c.CreateAssistantAssociationRequest(input) + return out, req.Send() +} + +// CreateAssistantAssociationWithContext is the same as CreateAssistantAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAssistantAssociation 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 *QConnect) CreateAssistantAssociationWithContext(ctx aws.Context, input *CreateAssistantAssociationInput, opts ...request.Option) (*CreateAssistantAssociationOutput, error) { + req, out := c.CreateAssistantAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateContent = "CreateContent" + +// CreateContentRequest generates a "aws/request.Request" representing the +// client's request for the CreateContent 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 CreateContent for more information on using the CreateContent +// 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 CreateContentRequest method. +// req, resp := client.CreateContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateContent +func (c *QConnect) CreateContentRequest(input *CreateContentInput) (req *request.Request, output *CreateContentOutput) { + op := &request.Operation{ + Name: opCreateContent, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/contents", + } + + if input == nil { + input = &CreateContentInput{} + } + + output = &CreateContentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateContent API operation for Amazon Q Connect. +// +// Creates Amazon Q content. Before to calling this API, use StartContentUpload +// (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html) +// to upload an asset. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation CreateContent for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateContent +func (c *QConnect) CreateContent(input *CreateContentInput) (*CreateContentOutput, error) { + req, out := c.CreateContentRequest(input) + return out, req.Send() +} + +// CreateContentWithContext is the same as CreateContent with the addition of +// the ability to pass a context and additional request options. +// +// See CreateContent 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 *QConnect) CreateContentWithContext(ctx aws.Context, input *CreateContentInput, opts ...request.Option) (*CreateContentOutput, error) { + req, out := c.CreateContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateKnowledgeBase = "CreateKnowledgeBase" + +// CreateKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the CreateKnowledgeBase 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 CreateKnowledgeBase for more information on using the CreateKnowledgeBase +// 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 CreateKnowledgeBaseRequest method. +// req, resp := client.CreateKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateKnowledgeBase +func (c *QConnect) CreateKnowledgeBaseRequest(input *CreateKnowledgeBaseInput) (req *request.Request, output *CreateKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opCreateKnowledgeBase, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases", + } + + if input == nil { + input = &CreateKnowledgeBaseInput{} + } + + output = &CreateKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateKnowledgeBase API operation for Amazon Q Connect. +// +// Creates a knowledge base. +// +// When using this API, you cannot reuse Amazon AppIntegrations (https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html) +// DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. +// If you do, you'll get an InvalidRequestException error. +// +// For example, you're programmatically managing your external knowledge base, +// and you want to add or remove one of the fields that is being ingested from +// Salesforce. Do the following: +// +// Call DeleteKnowledgeBase (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_DeleteKnowledgeBase.html). +// +// Call DeleteDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html). +// +// Call CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html) +// to recreate the DataIntegration or a create different one. +// +// Call CreateKnowledgeBase. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation CreateKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateKnowledgeBase +func (c *QConnect) CreateKnowledgeBase(input *CreateKnowledgeBaseInput) (*CreateKnowledgeBaseOutput, error) { + req, out := c.CreateKnowledgeBaseRequest(input) + return out, req.Send() +} + +// CreateKnowledgeBaseWithContext is the same as CreateKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See CreateKnowledgeBase 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 *QConnect) CreateKnowledgeBaseWithContext(ctx aws.Context, input *CreateKnowledgeBaseInput, opts ...request.Option) (*CreateKnowledgeBaseOutput, error) { + req, out := c.CreateKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateQuickResponse = "CreateQuickResponse" + +// CreateQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the CreateQuickResponse 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 CreateQuickResponse for more information on using the CreateQuickResponse +// 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 CreateQuickResponseRequest method. +// req, resp := client.CreateQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateQuickResponse +func (c *QConnect) CreateQuickResponseRequest(input *CreateQuickResponseInput) (req *request.Request, output *CreateQuickResponseOutput) { + op := &request.Operation{ + Name: opCreateQuickResponse, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses", + } + + if input == nil { + input = &CreateQuickResponseInput{} + } + + output = &CreateQuickResponseOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateQuickResponse API operation for Amazon Q Connect. +// +// Creates an Amazon Q quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation CreateQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateQuickResponse +func (c *QConnect) CreateQuickResponse(input *CreateQuickResponseInput) (*CreateQuickResponseOutput, error) { + req, out := c.CreateQuickResponseRequest(input) + return out, req.Send() +} + +// CreateQuickResponseWithContext is the same as CreateQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See CreateQuickResponse 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 *QConnect) CreateQuickResponseWithContext(ctx aws.Context, input *CreateQuickResponseInput, opts ...request.Option) (*CreateQuickResponseOutput, error) { + req, out := c.CreateQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSession = "CreateSession" + +// CreateSessionRequest generates a "aws/request.Request" representing the +// client's request for the CreateSession 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 CreateSession for more information on using the CreateSession +// 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 CreateSessionRequest method. +// req, resp := client.CreateSessionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateSession +func (c *QConnect) CreateSessionRequest(input *CreateSessionInput) (req *request.Request, output *CreateSessionOutput) { + op := &request.Operation{ + Name: opCreateSession, + HTTPMethod: "POST", + HTTPPath: "/assistants/{assistantId}/sessions", + } + + if input == nil { + input = &CreateSessionInput{} + } + + output = &CreateSessionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSession API operation for Amazon Q Connect. +// +// Creates a session. A session is a contextual container used for generating +// recommendations. Amazon Connect creates a new Amazon Q session for each contact +// on which Amazon Q is enabled. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation CreateSession for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateSession +func (c *QConnect) CreateSession(input *CreateSessionInput) (*CreateSessionOutput, error) { + req, out := c.CreateSessionRequest(input) + return out, req.Send() +} + +// CreateSessionWithContext is the same as CreateSession with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSession 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 *QConnect) CreateSessionWithContext(ctx aws.Context, input *CreateSessionInput, opts ...request.Option) (*CreateSessionOutput, error) { + req, out := c.CreateSessionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAssistant = "DeleteAssistant" + +// DeleteAssistantRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAssistant 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 DeleteAssistant for more information on using the DeleteAssistant +// 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 DeleteAssistantRequest method. +// req, resp := client.DeleteAssistantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAssistant +func (c *QConnect) DeleteAssistantRequest(input *DeleteAssistantInput) (req *request.Request, output *DeleteAssistantOutput) { + op := &request.Operation{ + Name: opDeleteAssistant, + HTTPMethod: "DELETE", + HTTPPath: "/assistants/{assistantId}", + } + + if input == nil { + input = &DeleteAssistantInput{} + } + + output = &DeleteAssistantOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAssistant API operation for Amazon Q Connect. +// +// Deletes an assistant. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation DeleteAssistant for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAssistant +func (c *QConnect) DeleteAssistant(input *DeleteAssistantInput) (*DeleteAssistantOutput, error) { + req, out := c.DeleteAssistantRequest(input) + return out, req.Send() +} + +// DeleteAssistantWithContext is the same as DeleteAssistant with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAssistant 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 *QConnect) DeleteAssistantWithContext(ctx aws.Context, input *DeleteAssistantInput, opts ...request.Option) (*DeleteAssistantOutput, error) { + req, out := c.DeleteAssistantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAssistantAssociation = "DeleteAssistantAssociation" + +// DeleteAssistantAssociationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAssistantAssociation 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 DeleteAssistantAssociation for more information on using the DeleteAssistantAssociation +// 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 DeleteAssistantAssociationRequest method. +// req, resp := client.DeleteAssistantAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAssistantAssociation +func (c *QConnect) DeleteAssistantAssociationRequest(input *DeleteAssistantAssociationInput) (req *request.Request, output *DeleteAssistantAssociationOutput) { + op := &request.Operation{ + Name: opDeleteAssistantAssociation, + HTTPMethod: "DELETE", + HTTPPath: "/assistants/{assistantId}/associations/{assistantAssociationId}", + } + + if input == nil { + input = &DeleteAssistantAssociationInput{} + } + + output = &DeleteAssistantAssociationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAssistantAssociation API operation for Amazon Q Connect. +// +// Deletes an assistant association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation DeleteAssistantAssociation for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAssistantAssociation +func (c *QConnect) DeleteAssistantAssociation(input *DeleteAssistantAssociationInput) (*DeleteAssistantAssociationOutput, error) { + req, out := c.DeleteAssistantAssociationRequest(input) + return out, req.Send() +} + +// DeleteAssistantAssociationWithContext is the same as DeleteAssistantAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAssistantAssociation 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 *QConnect) DeleteAssistantAssociationWithContext(ctx aws.Context, input *DeleteAssistantAssociationInput, opts ...request.Option) (*DeleteAssistantAssociationOutput, error) { + req, out := c.DeleteAssistantAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteContent = "DeleteContent" + +// DeleteContentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteContent 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 DeleteContent for more information on using the DeleteContent +// 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 DeleteContentRequest method. +// req, resp := client.DeleteContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteContent +func (c *QConnect) DeleteContentRequest(input *DeleteContentInput) (req *request.Request, output *DeleteContentOutput) { + op := &request.Operation{ + Name: opDeleteContent, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/contents/{contentId}", + } + + if input == nil { + input = &DeleteContentInput{} + } + + output = &DeleteContentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteContent API operation for Amazon Q Connect. +// +// Deletes the content. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation DeleteContent for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteContent +func (c *QConnect) DeleteContent(input *DeleteContentInput) (*DeleteContentOutput, error) { + req, out := c.DeleteContentRequest(input) + return out, req.Send() +} + +// DeleteContentWithContext is the same as DeleteContent with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteContent 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 *QConnect) DeleteContentWithContext(ctx aws.Context, input *DeleteContentInput, opts ...request.Option) (*DeleteContentOutput, error) { + req, out := c.DeleteContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteImportJob = "DeleteImportJob" + +// DeleteImportJobRequest generates a "aws/request.Request" representing the +// client's request for the DeleteImportJob 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 DeleteImportJob for more information on using the DeleteImportJob +// 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 DeleteImportJobRequest method. +// req, resp := client.DeleteImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteImportJob +func (c *QConnect) DeleteImportJobRequest(input *DeleteImportJobInput) (req *request.Request, output *DeleteImportJobOutput) { + op := &request.Operation{ + Name: opDeleteImportJob, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + } + + if input == nil { + input = &DeleteImportJobInput{} + } + + output = &DeleteImportJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteImportJob API operation for Amazon Q Connect. +// +// Deletes the quick response import job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation DeleteImportJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteImportJob +func (c *QConnect) DeleteImportJob(input *DeleteImportJobInput) (*DeleteImportJobOutput, error) { + req, out := c.DeleteImportJobRequest(input) + return out, req.Send() +} + +// DeleteImportJobWithContext is the same as DeleteImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteImportJob 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 *QConnect) DeleteImportJobWithContext(ctx aws.Context, input *DeleteImportJobInput, opts ...request.Option) (*DeleteImportJobOutput, error) { + req, out := c.DeleteImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteKnowledgeBase = "DeleteKnowledgeBase" + +// DeleteKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the DeleteKnowledgeBase 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 DeleteKnowledgeBase for more information on using the DeleteKnowledgeBase +// 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 DeleteKnowledgeBaseRequest method. +// req, resp := client.DeleteKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteKnowledgeBase +func (c *QConnect) DeleteKnowledgeBaseRequest(input *DeleteKnowledgeBaseInput) (req *request.Request, output *DeleteKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opDeleteKnowledgeBase, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}", + } + + if input == nil { + input = &DeleteKnowledgeBaseInput{} + } + + output = &DeleteKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteKnowledgeBase API operation for Amazon Q Connect. +// +// Deletes the knowledge base. +// +// When you use this API to delete an external knowledge base such as Salesforce +// or ServiceNow, you must also delete the Amazon AppIntegrations (https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html) +// DataIntegration. This is because you can't reuse the DataIntegration after +// it's been associated with an external knowledge base. However, you can delete +// and recreate it. See DeleteDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html) +// and CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html) +// in the Amazon AppIntegrations API Reference. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation DeleteKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteKnowledgeBase +func (c *QConnect) DeleteKnowledgeBase(input *DeleteKnowledgeBaseInput) (*DeleteKnowledgeBaseOutput, error) { + req, out := c.DeleteKnowledgeBaseRequest(input) + return out, req.Send() +} + +// DeleteKnowledgeBaseWithContext is the same as DeleteKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteKnowledgeBase 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 *QConnect) DeleteKnowledgeBaseWithContext(ctx aws.Context, input *DeleteKnowledgeBaseInput, opts ...request.Option) (*DeleteKnowledgeBaseOutput, error) { + req, out := c.DeleteKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteQuickResponse = "DeleteQuickResponse" + +// DeleteQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the DeleteQuickResponse 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 DeleteQuickResponse for more information on using the DeleteQuickResponse +// 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 DeleteQuickResponseRequest method. +// req, resp := client.DeleteQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteQuickResponse +func (c *QConnect) DeleteQuickResponseRequest(input *DeleteQuickResponseInput) (req *request.Request, output *DeleteQuickResponseOutput) { + op := &request.Operation{ + Name: opDeleteQuickResponse, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + } + + if input == nil { + input = &DeleteQuickResponseInput{} + } + + output = &DeleteQuickResponseOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteQuickResponse API operation for Amazon Q Connect. +// +// Deletes a quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation DeleteQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteQuickResponse +func (c *QConnect) DeleteQuickResponse(input *DeleteQuickResponseInput) (*DeleteQuickResponseOutput, error) { + req, out := c.DeleteQuickResponseRequest(input) + return out, req.Send() +} + +// DeleteQuickResponseWithContext is the same as DeleteQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteQuickResponse 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 *QConnect) DeleteQuickResponseWithContext(ctx aws.Context, input *DeleteQuickResponseInput, opts ...request.Option) (*DeleteQuickResponseOutput, error) { + req, out := c.DeleteQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAssistant = "GetAssistant" + +// GetAssistantRequest generates a "aws/request.Request" representing the +// client's request for the GetAssistant 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 GetAssistant for more information on using the GetAssistant +// 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 GetAssistantRequest method. +// req, resp := client.GetAssistantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAssistant +func (c *QConnect) GetAssistantRequest(input *GetAssistantInput) (req *request.Request, output *GetAssistantOutput) { + op := &request.Operation{ + Name: opGetAssistant, + HTTPMethod: "GET", + HTTPPath: "/assistants/{assistantId}", + } + + if input == nil { + input = &GetAssistantInput{} + } + + output = &GetAssistantOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAssistant API operation for Amazon Q Connect. +// +// Retrieves information about an assistant. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetAssistant for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAssistant +func (c *QConnect) GetAssistant(input *GetAssistantInput) (*GetAssistantOutput, error) { + req, out := c.GetAssistantRequest(input) + return out, req.Send() +} + +// GetAssistantWithContext is the same as GetAssistant with the addition of +// the ability to pass a context and additional request options. +// +// See GetAssistant 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 *QConnect) GetAssistantWithContext(ctx aws.Context, input *GetAssistantInput, opts ...request.Option) (*GetAssistantOutput, error) { + req, out := c.GetAssistantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAssistantAssociation = "GetAssistantAssociation" + +// GetAssistantAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetAssistantAssociation 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 GetAssistantAssociation for more information on using the GetAssistantAssociation +// 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 GetAssistantAssociationRequest method. +// req, resp := client.GetAssistantAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAssistantAssociation +func (c *QConnect) GetAssistantAssociationRequest(input *GetAssistantAssociationInput) (req *request.Request, output *GetAssistantAssociationOutput) { + op := &request.Operation{ + Name: opGetAssistantAssociation, + HTTPMethod: "GET", + HTTPPath: "/assistants/{assistantId}/associations/{assistantAssociationId}", + } + + if input == nil { + input = &GetAssistantAssociationInput{} + } + + output = &GetAssistantAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAssistantAssociation API operation for Amazon Q Connect. +// +// Retrieves information about an assistant association. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetAssistantAssociation for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAssistantAssociation +func (c *QConnect) GetAssistantAssociation(input *GetAssistantAssociationInput) (*GetAssistantAssociationOutput, error) { + req, out := c.GetAssistantAssociationRequest(input) + return out, req.Send() +} + +// GetAssistantAssociationWithContext is the same as GetAssistantAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetAssistantAssociation 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 *QConnect) GetAssistantAssociationWithContext(ctx aws.Context, input *GetAssistantAssociationInput, opts ...request.Option) (*GetAssistantAssociationOutput, error) { + req, out := c.GetAssistantAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetContent = "GetContent" + +// GetContentRequest generates a "aws/request.Request" representing the +// client's request for the GetContent 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 GetContent for more information on using the GetContent +// 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 GetContentRequest method. +// req, resp := client.GetContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetContent +func (c *QConnect) GetContentRequest(input *GetContentInput) (req *request.Request, output *GetContentOutput) { + op := &request.Operation{ + Name: opGetContent, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/contents/{contentId}", + } + + if input == nil { + input = &GetContentInput{} + } + + output = &GetContentOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetContent API operation for Amazon Q Connect. +// +// Retrieves content, including a pre-signed URL to download the content. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetContent for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetContent +func (c *QConnect) GetContent(input *GetContentInput) (*GetContentOutput, error) { + req, out := c.GetContentRequest(input) + return out, req.Send() +} + +// GetContentWithContext is the same as GetContent with the addition of +// the ability to pass a context and additional request options. +// +// See GetContent 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 *QConnect) GetContentWithContext(ctx aws.Context, input *GetContentInput, opts ...request.Option) (*GetContentOutput, error) { + req, out := c.GetContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetContentSummary = "GetContentSummary" + +// GetContentSummaryRequest generates a "aws/request.Request" representing the +// client's request for the GetContentSummary 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 GetContentSummary for more information on using the GetContentSummary +// 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 GetContentSummaryRequest method. +// req, resp := client.GetContentSummaryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetContentSummary +func (c *QConnect) GetContentSummaryRequest(input *GetContentSummaryInput) (req *request.Request, output *GetContentSummaryOutput) { + op := &request.Operation{ + Name: opGetContentSummary, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/contents/{contentId}/summary", + } + + if input == nil { + input = &GetContentSummaryInput{} + } + + output = &GetContentSummaryOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetContentSummary API operation for Amazon Q Connect. +// +// Retrieves summary information about the content. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetContentSummary for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetContentSummary +func (c *QConnect) GetContentSummary(input *GetContentSummaryInput) (*GetContentSummaryOutput, error) { + req, out := c.GetContentSummaryRequest(input) + return out, req.Send() +} + +// GetContentSummaryWithContext is the same as GetContentSummary with the addition of +// the ability to pass a context and additional request options. +// +// See GetContentSummary 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 *QConnect) GetContentSummaryWithContext(ctx aws.Context, input *GetContentSummaryInput, opts ...request.Option) (*GetContentSummaryOutput, error) { + req, out := c.GetContentSummaryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetImportJob = "GetImportJob" + +// GetImportJobRequest generates a "aws/request.Request" representing the +// client's request for the GetImportJob 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 GetImportJob for more information on using the GetImportJob +// 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 GetImportJobRequest method. +// req, resp := client.GetImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetImportJob +func (c *QConnect) GetImportJobRequest(input *GetImportJobInput) (req *request.Request, output *GetImportJobOutput) { + op := &request.Operation{ + Name: opGetImportJob, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs/{importJobId}", + } + + if input == nil { + input = &GetImportJobInput{} + } + + output = &GetImportJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetImportJob API operation for Amazon Q Connect. +// +// Retrieves the started import job. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetImportJob for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetImportJob +func (c *QConnect) GetImportJob(input *GetImportJobInput) (*GetImportJobOutput, error) { + req, out := c.GetImportJobRequest(input) + return out, req.Send() +} + +// GetImportJobWithContext is the same as GetImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetImportJob 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 *QConnect) GetImportJobWithContext(ctx aws.Context, input *GetImportJobInput, opts ...request.Option) (*GetImportJobOutput, error) { + req, out := c.GetImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetKnowledgeBase = "GetKnowledgeBase" + +// GetKnowledgeBaseRequest generates a "aws/request.Request" representing the +// client's request for the GetKnowledgeBase 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 GetKnowledgeBase for more information on using the GetKnowledgeBase +// 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 GetKnowledgeBaseRequest method. +// req, resp := client.GetKnowledgeBaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetKnowledgeBase +func (c *QConnect) GetKnowledgeBaseRequest(input *GetKnowledgeBaseInput) (req *request.Request, output *GetKnowledgeBaseOutput) { + op := &request.Operation{ + Name: opGetKnowledgeBase, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}", + } + + if input == nil { + input = &GetKnowledgeBaseInput{} + } + + output = &GetKnowledgeBaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetKnowledgeBase API operation for Amazon Q Connect. +// +// Retrieves information about the knowledge base. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetKnowledgeBase for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetKnowledgeBase +func (c *QConnect) GetKnowledgeBase(input *GetKnowledgeBaseInput) (*GetKnowledgeBaseOutput, error) { + req, out := c.GetKnowledgeBaseRequest(input) + return out, req.Send() +} + +// GetKnowledgeBaseWithContext is the same as GetKnowledgeBase with the addition of +// the ability to pass a context and additional request options. +// +// See GetKnowledgeBase 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 *QConnect) GetKnowledgeBaseWithContext(ctx aws.Context, input *GetKnowledgeBaseInput, opts ...request.Option) (*GetKnowledgeBaseOutput, error) { + req, out := c.GetKnowledgeBaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetQuickResponse = "GetQuickResponse" + +// GetQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the GetQuickResponse 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 GetQuickResponse for more information on using the GetQuickResponse +// 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 GetQuickResponseRequest method. +// req, resp := client.GetQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetQuickResponse +func (c *QConnect) GetQuickResponseRequest(input *GetQuickResponseInput) (req *request.Request, output *GetQuickResponseOutput) { + op := &request.Operation{ + Name: opGetQuickResponse, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + } + + if input == nil { + input = &GetQuickResponseInput{} + } + + output = &GetQuickResponseOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetQuickResponse API operation for Amazon Q Connect. +// +// Retrieves the quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetQuickResponse +func (c *QConnect) GetQuickResponse(input *GetQuickResponseInput) (*GetQuickResponseOutput, error) { + req, out := c.GetQuickResponseRequest(input) + return out, req.Send() +} + +// GetQuickResponseWithContext is the same as GetQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See GetQuickResponse 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 *QConnect) GetQuickResponseWithContext(ctx aws.Context, input *GetQuickResponseInput, opts ...request.Option) (*GetQuickResponseOutput, error) { + req, out := c.GetQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRecommendations = "GetRecommendations" + +// GetRecommendationsRequest generates a "aws/request.Request" representing the +// client's request for the GetRecommendations 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 GetRecommendations for more information on using the GetRecommendations +// 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 GetRecommendationsRequest method. +// req, resp := client.GetRecommendationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetRecommendations +func (c *QConnect) GetRecommendationsRequest(input *GetRecommendationsInput) (req *request.Request, output *GetRecommendationsOutput) { + op := &request.Operation{ + Name: opGetRecommendations, + HTTPMethod: "GET", + HTTPPath: "/assistants/{assistantId}/sessions/{sessionId}/recommendations", + } + + if input == nil { + input = &GetRecommendationsInput{} + } + + output = &GetRecommendationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRecommendations API operation for Amazon Q Connect. +// +// Retrieves recommendations for the specified session. To avoid retrieving +// the same recommendations in subsequent calls, use NotifyRecommendationsReceived +// (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_NotifyRecommendationsReceived.html). +// This API supports long-polling behavior with the waitTimeSeconds parameter. +// Short poll is the default behavior and only returns recommendations already +// available. To perform a manual query against an assistant, use QueryAssistant +// (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_QueryAssistant.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 Amazon Q Connect's +// API operation GetRecommendations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetRecommendations +func (c *QConnect) GetRecommendations(input *GetRecommendationsInput) (*GetRecommendationsOutput, error) { + req, out := c.GetRecommendationsRequest(input) + return out, req.Send() +} + +// GetRecommendationsWithContext is the same as GetRecommendations with the addition of +// the ability to pass a context and additional request options. +// +// See GetRecommendations 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 *QConnect) GetRecommendationsWithContext(ctx aws.Context, input *GetRecommendationsInput, opts ...request.Option) (*GetRecommendationsOutput, error) { + req, out := c.GetRecommendationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSession = "GetSession" + +// GetSessionRequest generates a "aws/request.Request" representing the +// client's request for the GetSession 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 GetSession for more information on using the GetSession +// 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 GetSessionRequest method. +// req, resp := client.GetSessionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetSession +func (c *QConnect) GetSessionRequest(input *GetSessionInput) (req *request.Request, output *GetSessionOutput) { + op := &request.Operation{ + Name: opGetSession, + HTTPMethod: "GET", + HTTPPath: "/assistants/{assistantId}/sessions/{sessionId}", + } + + if input == nil { + input = &GetSessionInput{} + } + + output = &GetSessionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSession API operation for Amazon Q Connect. +// +// Retrieves information for a specified session. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation GetSession for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetSession +func (c *QConnect) GetSession(input *GetSessionInput) (*GetSessionOutput, error) { + req, out := c.GetSessionRequest(input) + return out, req.Send() +} + +// GetSessionWithContext is the same as GetSession with the addition of +// the ability to pass a context and additional request options. +// +// See GetSession 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 *QConnect) GetSessionWithContext(ctx aws.Context, input *GetSessionInput, opts ...request.Option) (*GetSessionOutput, error) { + req, out := c.GetSessionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListAssistantAssociations = "ListAssistantAssociations" + +// ListAssistantAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListAssistantAssociations 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 ListAssistantAssociations for more information on using the ListAssistantAssociations +// 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 ListAssistantAssociationsRequest method. +// req, resp := client.ListAssistantAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAssistantAssociations +func (c *QConnect) ListAssistantAssociationsRequest(input *ListAssistantAssociationsInput) (req *request.Request, output *ListAssistantAssociationsOutput) { + op := &request.Operation{ + Name: opListAssistantAssociations, + HTTPMethod: "GET", + HTTPPath: "/assistants/{assistantId}/associations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAssistantAssociationsInput{} + } + + output = &ListAssistantAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAssistantAssociations API operation for Amazon Q Connect. +// +// Lists information about assistant associations. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListAssistantAssociations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAssistantAssociations +func (c *QConnect) ListAssistantAssociations(input *ListAssistantAssociationsInput) (*ListAssistantAssociationsOutput, error) { + req, out := c.ListAssistantAssociationsRequest(input) + return out, req.Send() +} + +// ListAssistantAssociationsWithContext is the same as ListAssistantAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListAssistantAssociations 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 *QConnect) ListAssistantAssociationsWithContext(ctx aws.Context, input *ListAssistantAssociationsInput, opts ...request.Option) (*ListAssistantAssociationsOutput, error) { + req, out := c.ListAssistantAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAssistantAssociationsPages iterates over the pages of a ListAssistantAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAssistantAssociations 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 ListAssistantAssociations operation. +// pageNum := 0 +// err := client.ListAssistantAssociationsPages(params, +// func(page *qconnect.ListAssistantAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) ListAssistantAssociationsPages(input *ListAssistantAssociationsInput, fn func(*ListAssistantAssociationsOutput, bool) bool) error { + return c.ListAssistantAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAssistantAssociationsPagesWithContext same as ListAssistantAssociationsPages 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 *QConnect) ListAssistantAssociationsPagesWithContext(ctx aws.Context, input *ListAssistantAssociationsInput, fn func(*ListAssistantAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAssistantAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAssistantAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAssistantAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAssistants = "ListAssistants" + +// ListAssistantsRequest generates a "aws/request.Request" representing the +// client's request for the ListAssistants 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 ListAssistants for more information on using the ListAssistants +// 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 ListAssistantsRequest method. +// req, resp := client.ListAssistantsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAssistants +func (c *QConnect) ListAssistantsRequest(input *ListAssistantsInput) (req *request.Request, output *ListAssistantsOutput) { + op := &request.Operation{ + Name: opListAssistants, + HTTPMethod: "GET", + HTTPPath: "/assistants", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAssistantsInput{} + } + + output = &ListAssistantsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAssistants API operation for Amazon Q Connect. +// +// Lists information about assistants. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListAssistants for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAssistants +func (c *QConnect) ListAssistants(input *ListAssistantsInput) (*ListAssistantsOutput, error) { + req, out := c.ListAssistantsRequest(input) + return out, req.Send() +} + +// ListAssistantsWithContext is the same as ListAssistants with the addition of +// the ability to pass a context and additional request options. +// +// See ListAssistants 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 *QConnect) ListAssistantsWithContext(ctx aws.Context, input *ListAssistantsInput, opts ...request.Option) (*ListAssistantsOutput, error) { + req, out := c.ListAssistantsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAssistantsPages iterates over the pages of a ListAssistants operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAssistants 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 ListAssistants operation. +// pageNum := 0 +// err := client.ListAssistantsPages(params, +// func(page *qconnect.ListAssistantsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) ListAssistantsPages(input *ListAssistantsInput, fn func(*ListAssistantsOutput, bool) bool) error { + return c.ListAssistantsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAssistantsPagesWithContext same as ListAssistantsPages 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 *QConnect) ListAssistantsPagesWithContext(ctx aws.Context, input *ListAssistantsInput, fn func(*ListAssistantsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAssistantsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAssistantsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAssistantsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListContents = "ListContents" + +// ListContentsRequest generates a "aws/request.Request" representing the +// client's request for the ListContents 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 ListContents for more information on using the ListContents +// 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 ListContentsRequest method. +// req, resp := client.ListContentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListContents +func (c *QConnect) ListContentsRequest(input *ListContentsInput) (req *request.Request, output *ListContentsOutput) { + op := &request.Operation{ + Name: opListContents, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/contents", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListContentsInput{} + } + + output = &ListContentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListContents API operation for Amazon Q Connect. +// +// Lists the content. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListContents for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListContents +func (c *QConnect) ListContents(input *ListContentsInput) (*ListContentsOutput, error) { + req, out := c.ListContentsRequest(input) + return out, req.Send() +} + +// ListContentsWithContext is the same as ListContents with the addition of +// the ability to pass a context and additional request options. +// +// See ListContents 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 *QConnect) ListContentsWithContext(ctx aws.Context, input *ListContentsInput, opts ...request.Option) (*ListContentsOutput, error) { + req, out := c.ListContentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListContentsPages iterates over the pages of a ListContents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListContents 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 ListContents operation. +// pageNum := 0 +// err := client.ListContentsPages(params, +// func(page *qconnect.ListContentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) ListContentsPages(input *ListContentsInput, fn func(*ListContentsOutput, bool) bool) error { + return c.ListContentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListContentsPagesWithContext same as ListContentsPages 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 *QConnect) ListContentsPagesWithContext(ctx aws.Context, input *ListContentsInput, fn func(*ListContentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListContentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListContentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListContentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListImportJobs = "ListImportJobs" + +// ListImportJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListImportJobs 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 ListImportJobs for more information on using the ListImportJobs +// 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 ListImportJobsRequest method. +// req, resp := client.ListImportJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListImportJobs +func (c *QConnect) ListImportJobsRequest(input *ListImportJobsInput) (req *request.Request, output *ListImportJobsOutput) { + op := &request.Operation{ + Name: opListImportJobs, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListImportJobsInput{} + } + + output = &ListImportJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListImportJobs API operation for Amazon Q Connect. +// +// Lists information about import jobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListImportJobs for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListImportJobs +func (c *QConnect) ListImportJobs(input *ListImportJobsInput) (*ListImportJobsOutput, error) { + req, out := c.ListImportJobsRequest(input) + return out, req.Send() +} + +// ListImportJobsWithContext is the same as ListImportJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListImportJobs 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 *QConnect) ListImportJobsWithContext(ctx aws.Context, input *ListImportJobsInput, opts ...request.Option) (*ListImportJobsOutput, error) { + req, out := c.ListImportJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListImportJobsPages iterates over the pages of a ListImportJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListImportJobs 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 ListImportJobs operation. +// pageNum := 0 +// err := client.ListImportJobsPages(params, +// func(page *qconnect.ListImportJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) ListImportJobsPages(input *ListImportJobsInput, fn func(*ListImportJobsOutput, bool) bool) error { + return c.ListImportJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListImportJobsPagesWithContext same as ListImportJobsPages 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 *QConnect) ListImportJobsPagesWithContext(ctx aws.Context, input *ListImportJobsInput, fn func(*ListImportJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListImportJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListImportJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListImportJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListKnowledgeBases = "ListKnowledgeBases" + +// ListKnowledgeBasesRequest generates a "aws/request.Request" representing the +// client's request for the ListKnowledgeBases 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 ListKnowledgeBases for more information on using the ListKnowledgeBases +// 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 ListKnowledgeBasesRequest method. +// req, resp := client.ListKnowledgeBasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListKnowledgeBases +func (c *QConnect) ListKnowledgeBasesRequest(input *ListKnowledgeBasesInput) (req *request.Request, output *ListKnowledgeBasesOutput) { + op := &request.Operation{ + Name: opListKnowledgeBases, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListKnowledgeBasesInput{} + } + + output = &ListKnowledgeBasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListKnowledgeBases API operation for Amazon Q Connect. +// +// Lists the knowledge bases. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListKnowledgeBases for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListKnowledgeBases +func (c *QConnect) ListKnowledgeBases(input *ListKnowledgeBasesInput) (*ListKnowledgeBasesOutput, error) { + req, out := c.ListKnowledgeBasesRequest(input) + return out, req.Send() +} + +// ListKnowledgeBasesWithContext is the same as ListKnowledgeBases with the addition of +// the ability to pass a context and additional request options. +// +// See ListKnowledgeBases 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 *QConnect) ListKnowledgeBasesWithContext(ctx aws.Context, input *ListKnowledgeBasesInput, opts ...request.Option) (*ListKnowledgeBasesOutput, error) { + req, out := c.ListKnowledgeBasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListKnowledgeBasesPages iterates over the pages of a ListKnowledgeBases operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListKnowledgeBases 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 ListKnowledgeBases operation. +// pageNum := 0 +// err := client.ListKnowledgeBasesPages(params, +// func(page *qconnect.ListKnowledgeBasesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) ListKnowledgeBasesPages(input *ListKnowledgeBasesInput, fn func(*ListKnowledgeBasesOutput, bool) bool) error { + return c.ListKnowledgeBasesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListKnowledgeBasesPagesWithContext same as ListKnowledgeBasesPages 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 *QConnect) ListKnowledgeBasesPagesWithContext(ctx aws.Context, input *ListKnowledgeBasesInput, fn func(*ListKnowledgeBasesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListKnowledgeBasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListKnowledgeBasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListKnowledgeBasesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListQuickResponses = "ListQuickResponses" + +// ListQuickResponsesRequest generates a "aws/request.Request" representing the +// client's request for the ListQuickResponses 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 ListQuickResponses for more information on using the ListQuickResponses +// 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 ListQuickResponsesRequest method. +// req, resp := client.ListQuickResponsesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListQuickResponses +func (c *QConnect) ListQuickResponsesRequest(input *ListQuickResponsesInput) (req *request.Request, output *ListQuickResponsesOutput) { + op := &request.Operation{ + Name: opListQuickResponses, + HTTPMethod: "GET", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListQuickResponsesInput{} + } + + output = &ListQuickResponsesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListQuickResponses API operation for Amazon Q Connect. +// +// Lists information about quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListQuickResponses for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListQuickResponses +func (c *QConnect) ListQuickResponses(input *ListQuickResponsesInput) (*ListQuickResponsesOutput, error) { + req, out := c.ListQuickResponsesRequest(input) + return out, req.Send() +} + +// ListQuickResponsesWithContext is the same as ListQuickResponses with the addition of +// the ability to pass a context and additional request options. +// +// See ListQuickResponses 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 *QConnect) ListQuickResponsesWithContext(ctx aws.Context, input *ListQuickResponsesInput, opts ...request.Option) (*ListQuickResponsesOutput, error) { + req, out := c.ListQuickResponsesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListQuickResponsesPages iterates over the pages of a ListQuickResponses operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListQuickResponses 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 ListQuickResponses operation. +// pageNum := 0 +// err := client.ListQuickResponsesPages(params, +// func(page *qconnect.ListQuickResponsesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) ListQuickResponsesPages(input *ListQuickResponsesInput, fn func(*ListQuickResponsesOutput, bool) bool) error { + return c.ListQuickResponsesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListQuickResponsesPagesWithContext same as ListQuickResponsesPages 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 *QConnect) ListQuickResponsesPagesWithContext(ctx aws.Context, input *ListQuickResponsesInput, fn func(*ListQuickResponsesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListQuickResponsesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListQuickResponsesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListQuickResponsesOutput), !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/qconnect-2020-10-19/ListTagsForResource +func (c *QConnect) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon Q Connect. +// +// Lists the tags for the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListTagsForResource +func (c *QConnect) 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 *QConnect) 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 opNotifyRecommendationsReceived = "NotifyRecommendationsReceived" + +// NotifyRecommendationsReceivedRequest generates a "aws/request.Request" representing the +// client's request for the NotifyRecommendationsReceived 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 NotifyRecommendationsReceived for more information on using the NotifyRecommendationsReceived +// 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 NotifyRecommendationsReceivedRequest method. +// req, resp := client.NotifyRecommendationsReceivedRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/NotifyRecommendationsReceived +func (c *QConnect) NotifyRecommendationsReceivedRequest(input *NotifyRecommendationsReceivedInput) (req *request.Request, output *NotifyRecommendationsReceivedOutput) { + op := &request.Operation{ + Name: opNotifyRecommendationsReceived, + HTTPMethod: "POST", + HTTPPath: "/assistants/{assistantId}/sessions/{sessionId}/recommendations/notify", + } + + if input == nil { + input = &NotifyRecommendationsReceivedInput{} + } + + output = &NotifyRecommendationsReceivedOutput{} + req = c.newRequest(op, input, output) + return +} + +// NotifyRecommendationsReceived API operation for Amazon Q Connect. +// +// Removes the specified recommendations from the specified assistant's queue +// of newly available recommendations. You can use this API in conjunction with +// GetRecommendations (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html) +// and a waitTimeSeconds input for long-polling behavior and avoiding duplicate +// recommendations. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation NotifyRecommendationsReceived for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/NotifyRecommendationsReceived +func (c *QConnect) NotifyRecommendationsReceived(input *NotifyRecommendationsReceivedInput) (*NotifyRecommendationsReceivedOutput, error) { + req, out := c.NotifyRecommendationsReceivedRequest(input) + return out, req.Send() +} + +// NotifyRecommendationsReceivedWithContext is the same as NotifyRecommendationsReceived with the addition of +// the ability to pass a context and additional request options. +// +// See NotifyRecommendationsReceived 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 *QConnect) NotifyRecommendationsReceivedWithContext(ctx aws.Context, input *NotifyRecommendationsReceivedInput, opts ...request.Option) (*NotifyRecommendationsReceivedOutput, error) { + req, out := c.NotifyRecommendationsReceivedRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutFeedback = "PutFeedback" + +// PutFeedbackRequest generates a "aws/request.Request" representing the +// client's request for the PutFeedback 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 PutFeedback for more information on using the PutFeedback +// 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 PutFeedbackRequest method. +// req, resp := client.PutFeedbackRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/PutFeedback +func (c *QConnect) PutFeedbackRequest(input *PutFeedbackInput) (req *request.Request, output *PutFeedbackOutput) { + op := &request.Operation{ + Name: opPutFeedback, + HTTPMethod: "PUT", + HTTPPath: "/assistants/{assistantId}/feedback", + } + + if input == nil { + input = &PutFeedbackInput{} + } + + output = &PutFeedbackOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutFeedback API operation for Amazon Q Connect. +// +// Provides feedback against the specified assistant for the specified target. +// This API only supports generative targets. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation PutFeedback for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/PutFeedback +func (c *QConnect) PutFeedback(input *PutFeedbackInput) (*PutFeedbackOutput, error) { + req, out := c.PutFeedbackRequest(input) + return out, req.Send() +} + +// PutFeedbackWithContext is the same as PutFeedback with the addition of +// the ability to pass a context and additional request options. +// +// See PutFeedback 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 *QConnect) PutFeedbackWithContext(ctx aws.Context, input *PutFeedbackInput, opts ...request.Option) (*PutFeedbackOutput, error) { + req, out := c.PutFeedbackRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opQueryAssistant = "QueryAssistant" + +// QueryAssistantRequest generates a "aws/request.Request" representing the +// client's request for the QueryAssistant 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 QueryAssistant for more information on using the QueryAssistant +// 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 QueryAssistantRequest method. +// req, resp := client.QueryAssistantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/QueryAssistant +func (c *QConnect) QueryAssistantRequest(input *QueryAssistantInput) (req *request.Request, output *QueryAssistantOutput) { + op := &request.Operation{ + Name: opQueryAssistant, + HTTPMethod: "POST", + HTTPPath: "/assistants/{assistantId}/query", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &QueryAssistantInput{} + } + + output = &QueryAssistantOutput{} + req = c.newRequest(op, input, output) + return +} + +// QueryAssistant API operation for Amazon Q Connect. +// +// Performs a manual search against the specified assistant. To retrieve recommendations +// for an assistant, use GetRecommendations (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.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 Amazon Q Connect's +// API operation QueryAssistant for usage and error information. +// +// Returned Error Types: +// +// - RequestTimeoutException +// The request reached the service more than 15 minutes after the date stamp +// on the request or more than 15 minutes after the request expiration date +// (such as for pre-signed URLs), or the date stamp on the request is more than +// 15 minutes in the future. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/QueryAssistant +func (c *QConnect) QueryAssistant(input *QueryAssistantInput) (*QueryAssistantOutput, error) { + req, out := c.QueryAssistantRequest(input) + return out, req.Send() +} + +// QueryAssistantWithContext is the same as QueryAssistant with the addition of +// the ability to pass a context and additional request options. +// +// See QueryAssistant 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 *QConnect) QueryAssistantWithContext(ctx aws.Context, input *QueryAssistantInput, opts ...request.Option) (*QueryAssistantOutput, error) { + req, out := c.QueryAssistantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// QueryAssistantPages iterates over the pages of a QueryAssistant operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See QueryAssistant 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 QueryAssistant operation. +// pageNum := 0 +// err := client.QueryAssistantPages(params, +// func(page *qconnect.QueryAssistantOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) QueryAssistantPages(input *QueryAssistantInput, fn func(*QueryAssistantOutput, bool) bool) error { + return c.QueryAssistantPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// QueryAssistantPagesWithContext same as QueryAssistantPages 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 *QConnect) QueryAssistantPagesWithContext(ctx aws.Context, input *QueryAssistantInput, fn func(*QueryAssistantOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *QueryAssistantInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.QueryAssistantRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*QueryAssistantOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opRemoveKnowledgeBaseTemplateUri = "RemoveKnowledgeBaseTemplateUri" + +// RemoveKnowledgeBaseTemplateUriRequest generates a "aws/request.Request" representing the +// client's request for the RemoveKnowledgeBaseTemplateUri 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 RemoveKnowledgeBaseTemplateUri for more information on using the RemoveKnowledgeBaseTemplateUri +// 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 RemoveKnowledgeBaseTemplateUriRequest method. +// req, resp := client.RemoveKnowledgeBaseTemplateUriRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/RemoveKnowledgeBaseTemplateUri +func (c *QConnect) RemoveKnowledgeBaseTemplateUriRequest(input *RemoveKnowledgeBaseTemplateUriInput) (req *request.Request, output *RemoveKnowledgeBaseTemplateUriOutput) { + op := &request.Operation{ + Name: opRemoveKnowledgeBaseTemplateUri, + HTTPMethod: "DELETE", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/templateUri", + } + + if input == nil { + input = &RemoveKnowledgeBaseTemplateUriInput{} + } + + output = &RemoveKnowledgeBaseTemplateUriOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// RemoveKnowledgeBaseTemplateUri API operation for Amazon Q Connect. +// +// Removes a URI template from a knowledge base. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation RemoveKnowledgeBaseTemplateUri for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/RemoveKnowledgeBaseTemplateUri +func (c *QConnect) RemoveKnowledgeBaseTemplateUri(input *RemoveKnowledgeBaseTemplateUriInput) (*RemoveKnowledgeBaseTemplateUriOutput, error) { + req, out := c.RemoveKnowledgeBaseTemplateUriRequest(input) + return out, req.Send() +} + +// RemoveKnowledgeBaseTemplateUriWithContext is the same as RemoveKnowledgeBaseTemplateUri with the addition of +// the ability to pass a context and additional request options. +// +// See RemoveKnowledgeBaseTemplateUri 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 *QConnect) RemoveKnowledgeBaseTemplateUriWithContext(ctx aws.Context, input *RemoveKnowledgeBaseTemplateUriInput, opts ...request.Option) (*RemoveKnowledgeBaseTemplateUriOutput, error) { + req, out := c.RemoveKnowledgeBaseTemplateUriRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opSearchContent = "SearchContent" + +// SearchContentRequest generates a "aws/request.Request" representing the +// client's request for the SearchContent 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 SearchContent for more information on using the SearchContent +// 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 SearchContentRequest method. +// req, resp := client.SearchContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchContent +func (c *QConnect) SearchContentRequest(input *SearchContentInput) (req *request.Request, output *SearchContentOutput) { + op := &request.Operation{ + Name: opSearchContent, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/search", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchContentInput{} + } + + output = &SearchContentOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchContent API operation for Amazon Q Connect. +// +// Searches for content in a specified knowledge base. Can be used to get a +// specific content resource by its name. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation SearchContent for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchContent +func (c *QConnect) SearchContent(input *SearchContentInput) (*SearchContentOutput, error) { + req, out := c.SearchContentRequest(input) + return out, req.Send() +} + +// SearchContentWithContext is the same as SearchContent with the addition of +// the ability to pass a context and additional request options. +// +// See SearchContent 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 *QConnect) SearchContentWithContext(ctx aws.Context, input *SearchContentInput, opts ...request.Option) (*SearchContentOutput, error) { + req, out := c.SearchContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchContentPages iterates over the pages of a SearchContent operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchContent 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 SearchContent operation. +// pageNum := 0 +// err := client.SearchContentPages(params, +// func(page *qconnect.SearchContentOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) SearchContentPages(input *SearchContentInput, fn func(*SearchContentOutput, bool) bool) error { + return c.SearchContentPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchContentPagesWithContext same as SearchContentPages 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 *QConnect) SearchContentPagesWithContext(ctx aws.Context, input *SearchContentInput, fn func(*SearchContentOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchContentInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchContentRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchContentOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchQuickResponses = "SearchQuickResponses" + +// SearchQuickResponsesRequest generates a "aws/request.Request" representing the +// client's request for the SearchQuickResponses 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 SearchQuickResponses for more information on using the SearchQuickResponses +// 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 SearchQuickResponsesRequest method. +// req, resp := client.SearchQuickResponsesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchQuickResponses +func (c *QConnect) SearchQuickResponsesRequest(input *SearchQuickResponsesInput) (req *request.Request, output *SearchQuickResponsesOutput) { + op := &request.Operation{ + Name: opSearchQuickResponses, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/search/quickResponses", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchQuickResponsesInput{} + } + + output = &SearchQuickResponsesOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchQuickResponses API operation for Amazon Q Connect. +// +// Searches existing Amazon Q quick responses in an Amazon Q knowledge base. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation SearchQuickResponses for usage and error information. +// +// Returned Error Types: +// +// - RequestTimeoutException +// The request reached the service more than 15 minutes after the date stamp +// on the request or more than 15 minutes after the request expiration date +// (such as for pre-signed URLs), or the date stamp on the request is more than +// 15 minutes in the future. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchQuickResponses +func (c *QConnect) SearchQuickResponses(input *SearchQuickResponsesInput) (*SearchQuickResponsesOutput, error) { + req, out := c.SearchQuickResponsesRequest(input) + return out, req.Send() +} + +// SearchQuickResponsesWithContext is the same as SearchQuickResponses with the addition of +// the ability to pass a context and additional request options. +// +// See SearchQuickResponses 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 *QConnect) SearchQuickResponsesWithContext(ctx aws.Context, input *SearchQuickResponsesInput, opts ...request.Option) (*SearchQuickResponsesOutput, error) { + req, out := c.SearchQuickResponsesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchQuickResponsesPages iterates over the pages of a SearchQuickResponses operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchQuickResponses 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 SearchQuickResponses operation. +// pageNum := 0 +// err := client.SearchQuickResponsesPages(params, +// func(page *qconnect.SearchQuickResponsesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) SearchQuickResponsesPages(input *SearchQuickResponsesInput, fn func(*SearchQuickResponsesOutput, bool) bool) error { + return c.SearchQuickResponsesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchQuickResponsesPagesWithContext same as SearchQuickResponsesPages 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 *QConnect) SearchQuickResponsesPagesWithContext(ctx aws.Context, input *SearchQuickResponsesInput, fn func(*SearchQuickResponsesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchQuickResponsesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchQuickResponsesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchQuickResponsesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchSessions = "SearchSessions" + +// SearchSessionsRequest generates a "aws/request.Request" representing the +// client's request for the SearchSessions 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 SearchSessions for more information on using the SearchSessions +// 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 SearchSessionsRequest method. +// req, resp := client.SearchSessionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchSessions +func (c *QConnect) SearchSessionsRequest(input *SearchSessionsInput) (req *request.Request, output *SearchSessionsOutput) { + op := &request.Operation{ + Name: opSearchSessions, + HTTPMethod: "POST", + HTTPPath: "/assistants/{assistantId}/searchSessions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchSessionsInput{} + } + + output = &SearchSessionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// SearchSessions API operation for Amazon Q Connect. +// +// Searches for sessions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation SearchSessions for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SearchSessions +func (c *QConnect) SearchSessions(input *SearchSessionsInput) (*SearchSessionsOutput, error) { + req, out := c.SearchSessionsRequest(input) + return out, req.Send() +} + +// SearchSessionsWithContext is the same as SearchSessions with the addition of +// the ability to pass a context and additional request options. +// +// See SearchSessions 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 *QConnect) SearchSessionsWithContext(ctx aws.Context, input *SearchSessionsInput, opts ...request.Option) (*SearchSessionsOutput, error) { + req, out := c.SearchSessionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchSessionsPages iterates over the pages of a SearchSessions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchSessions 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 SearchSessions operation. +// pageNum := 0 +// err := client.SearchSessionsPages(params, +// func(page *qconnect.SearchSessionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QConnect) SearchSessionsPages(input *SearchSessionsInput, fn func(*SearchSessionsOutput, bool) bool) error { + return c.SearchSessionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchSessionsPagesWithContext same as SearchSessionsPages 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 *QConnect) SearchSessionsPagesWithContext(ctx aws.Context, input *SearchSessionsInput, fn func(*SearchSessionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchSessionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchSessionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchSessionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opStartContentUpload = "StartContentUpload" + +// StartContentUploadRequest generates a "aws/request.Request" representing the +// client's request for the StartContentUpload 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 StartContentUpload for more information on using the StartContentUpload +// 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 StartContentUploadRequest method. +// req, resp := client.StartContentUploadRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/StartContentUpload +func (c *QConnect) StartContentUploadRequest(input *StartContentUploadInput) (req *request.Request, output *StartContentUploadOutput) { + op := &request.Operation{ + Name: opStartContentUpload, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/upload", + } + + if input == nil { + input = &StartContentUploadInput{} + } + + output = &StartContentUploadOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartContentUpload API operation for Amazon Q Connect. +// +// Get a URL to upload content to a knowledge base. To upload content, first +// make a PUT request to the returned URL with your file, making sure to include +// the required headers. Then use CreateContent (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_CreateContent.html) +// to finalize the content creation process or UpdateContent (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_UpdateContent.html) +// to modify an existing resource. You can only upload content to a knowledge +// base of type CUSTOM. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation StartContentUpload for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/StartContentUpload +func (c *QConnect) StartContentUpload(input *StartContentUploadInput) (*StartContentUploadOutput, error) { + req, out := c.StartContentUploadRequest(input) + return out, req.Send() +} + +// StartContentUploadWithContext is the same as StartContentUpload with the addition of +// the ability to pass a context and additional request options. +// +// See StartContentUpload 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 *QConnect) StartContentUploadWithContext(ctx aws.Context, input *StartContentUploadInput, opts ...request.Option) (*StartContentUploadOutput, error) { + req, out := c.StartContentUploadRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartImportJob = "StartImportJob" + +// StartImportJobRequest generates a "aws/request.Request" representing the +// client's request for the StartImportJob 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 StartImportJob for more information on using the StartImportJob +// 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 StartImportJobRequest method. +// req, resp := client.StartImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/StartImportJob +func (c *QConnect) StartImportJobRequest(input *StartImportJobInput) (req *request.Request, output *StartImportJobOutput) { + op := &request.Operation{ + Name: opStartImportJob, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/importJobs", + } + + if input == nil { + input = &StartImportJobInput{} + } + + output = &StartImportJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartImportJob API operation for Amazon Q Connect. +// +// Start an asynchronous job to import Amazon Q resources from an uploaded source +// file. Before calling this API, use StartContentUpload (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html) +// to upload an asset that contains the resource data. +// +// - For importing Amazon Q quick responses, you need to upload a csv file +// including the quick responses. For information about how to format the +// csv file for importing quick responses, see Import quick responses (https://docs.aws.amazon.com/console/connect/quick-responses/add-data). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation StartImportJob for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - ServiceQuotaExceededException +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/StartImportJob +func (c *QConnect) StartImportJob(input *StartImportJobInput) (*StartImportJobOutput, error) { + req, out := c.StartImportJobRequest(input) + return out, req.Send() +} + +// StartImportJobWithContext is the same as StartImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartImportJob 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 *QConnect) StartImportJobWithContext(ctx aws.Context, input *StartImportJobInput, opts ...request.Option) (*StartImportJobOutput, error) { + req, out := c.StartImportJobRequest(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/qconnect-2020-10-19/TagResource +func (c *QConnect) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Amazon Q Connect. +// +// Adds the specified tags to the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - TooManyTagsException +// Amazon Q in Connect throws this exception if you have too many tags in your +// tag set. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/TagResource +func (c *QConnect) 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 *QConnect) 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/qconnect-2020-10-19/UntagResource +func (c *QConnect) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon Q Connect. +// +// Removes the specified tags from the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UntagResource +func (c *QConnect) 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 *QConnect) 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 opUpdateContent = "UpdateContent" + +// UpdateContentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateContent 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 UpdateContent for more information on using the UpdateContent +// 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 UpdateContentRequest method. +// req, resp := client.UpdateContentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateContent +func (c *QConnect) UpdateContentRequest(input *UpdateContentInput) (req *request.Request, output *UpdateContentOutput) { + op := &request.Operation{ + Name: opUpdateContent, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/contents/{contentId}", + } + + if input == nil { + input = &UpdateContentInput{} + } + + output = &UpdateContentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateContent API operation for Amazon Q Connect. +// +// Updates information about the content. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation UpdateContent for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - PreconditionFailedException +// The provided revisionId does not match, indicating the content has been modified +// since it was last read. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateContent +func (c *QConnect) UpdateContent(input *UpdateContentInput) (*UpdateContentOutput, error) { + req, out := c.UpdateContentRequest(input) + return out, req.Send() +} + +// UpdateContentWithContext is the same as UpdateContent with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateContent 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 *QConnect) UpdateContentWithContext(ctx aws.Context, input *UpdateContentInput, opts ...request.Option) (*UpdateContentOutput, error) { + req, out := c.UpdateContentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateKnowledgeBaseTemplateUri = "UpdateKnowledgeBaseTemplateUri" + +// UpdateKnowledgeBaseTemplateUriRequest generates a "aws/request.Request" representing the +// client's request for the UpdateKnowledgeBaseTemplateUri 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 UpdateKnowledgeBaseTemplateUri for more information on using the UpdateKnowledgeBaseTemplateUri +// 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 UpdateKnowledgeBaseTemplateUriRequest method. +// req, resp := client.UpdateKnowledgeBaseTemplateUriRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateKnowledgeBaseTemplateUri +func (c *QConnect) UpdateKnowledgeBaseTemplateUriRequest(input *UpdateKnowledgeBaseTemplateUriInput) (req *request.Request, output *UpdateKnowledgeBaseTemplateUriOutput) { + op := &request.Operation{ + Name: opUpdateKnowledgeBaseTemplateUri, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/templateUri", + } + + if input == nil { + input = &UpdateKnowledgeBaseTemplateUriInput{} + } + + output = &UpdateKnowledgeBaseTemplateUriOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateKnowledgeBaseTemplateUri API operation for Amazon Q Connect. +// +// Updates the template URI of a knowledge base. This is only supported for +// knowledge bases of type EXTERNAL. Include a single variable in ${variable} +// format; this interpolated by Amazon Q using ingested content. For example, +// if you ingest a Salesforce article, it has an Id value, and you can set the +// template URI to https://myInstanceName.lightning.force.com/lightning/r/Knowledge__kav/*${Id}*/view. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation UpdateKnowledgeBaseTemplateUri for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateKnowledgeBaseTemplateUri +func (c *QConnect) UpdateKnowledgeBaseTemplateUri(input *UpdateKnowledgeBaseTemplateUriInput) (*UpdateKnowledgeBaseTemplateUriOutput, error) { + req, out := c.UpdateKnowledgeBaseTemplateUriRequest(input) + return out, req.Send() +} + +// UpdateKnowledgeBaseTemplateUriWithContext is the same as UpdateKnowledgeBaseTemplateUri with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateKnowledgeBaseTemplateUri 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 *QConnect) UpdateKnowledgeBaseTemplateUriWithContext(ctx aws.Context, input *UpdateKnowledgeBaseTemplateUriInput, opts ...request.Option) (*UpdateKnowledgeBaseTemplateUriOutput, error) { + req, out := c.UpdateKnowledgeBaseTemplateUriRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateQuickResponse = "UpdateQuickResponse" + +// UpdateQuickResponseRequest generates a "aws/request.Request" representing the +// client's request for the UpdateQuickResponse 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 UpdateQuickResponse for more information on using the UpdateQuickResponse +// 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 UpdateQuickResponseRequest method. +// req, resp := client.UpdateQuickResponseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateQuickResponse +func (c *QConnect) UpdateQuickResponseRequest(input *UpdateQuickResponseInput) (req *request.Request, output *UpdateQuickResponseOutput) { + op := &request.Operation{ + Name: opUpdateQuickResponse, + HTTPMethod: "POST", + HTTPPath: "/knowledgeBases/{knowledgeBaseId}/quickResponses/{quickResponseId}", + } + + if input == nil { + input = &UpdateQuickResponseInput{} + } + + output = &UpdateQuickResponseOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateQuickResponse API operation for Amazon Q Connect. +// +// Updates an existing Amazon Q quick response. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation UpdateQuickResponse for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - PreconditionFailedException +// The provided revisionId does not match, indicating the content has been modified +// since it was last read. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateQuickResponse +func (c *QConnect) UpdateQuickResponse(input *UpdateQuickResponseInput) (*UpdateQuickResponseOutput, error) { + req, out := c.UpdateQuickResponseRequest(input) + return out, req.Send() +} + +// UpdateQuickResponseWithContext is the same as UpdateQuickResponse with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateQuickResponse 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 *QConnect) UpdateQuickResponseWithContext(ctx aws.Context, input *UpdateQuickResponseInput, opts ...request.Option) (*UpdateQuickResponseOutput, error) { + req, out := c.UpdateQuickResponseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Configuration information for Amazon AppIntegrations to automatically ingest +// content. +type AppIntegrationsConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to + // use for ingesting content. + // + // * For Salesforce (https://developer.salesforce.com/docs/atlas.en-us.knowledge_dev.meta/knowledge_dev/sforce_api_objects_knowledge__kav.htm), + // your AppIntegrations DataIntegration must have an ObjectConfiguration + // if objectFields is not provided, including at least Id, ArticleNumber, + // VersionNumber, Title, PublishStatus, and IsDeleted as source fields. + // + // * For ServiceNow (https://developer.servicenow.com/dev.do#!/reference/api/rome/rest/knowledge-management-api), + // your AppIntegrations DataIntegration must have an ObjectConfiguration + // if objectFields is not provided, including at least number, short_description, + // sys_mod_count, workflow_state, and active as source fields. + // + // * For Zendesk (https://developer.zendesk.com/api-reference/help_center/help-center-api/articles/), + // your AppIntegrations DataIntegration must have an ObjectConfiguration + // if objectFields is not provided, including at least id, title, updated_at, + // and draft as source fields. + // + // * For SharePoint (https://learn.microsoft.com/en-us/sharepoint/dev/sp-add-ins/sharepoint-net-server-csom-jsom-and-rest-api-index), + // your AppIntegrations DataIntegration must have a FileConfiguration, including + // only file extensions that are among docx, pdf, html, htm, and txt. + // + // * For Amazon S3 (https://aws.amazon.com/s3/), the ObjectConfiguration + // and FileConfiguration of your AppIntegrations DataIntegration must be + // null. The SourceURI of your DataIntegration must use the following format: + // s3://your_s3_bucket_name. The bucket policy of the corresponding S3 bucket + // must allow the Amazon Web Services principal app-integrations.amazonaws.com + // to perform s3:ListBucket, s3:GetObject, and s3:GetBucketLocation against + // the bucket. + // + // AppIntegrationArn is a required field + AppIntegrationArn *string `locationName:"appIntegrationArn" min:"1" type:"string" required:"true"` + + // The fields from the source that are made available to your agents in Amazon + // Q. Optional if ObjectConfiguration is included in the provided DataIntegration. + // + // * For Salesforce (https://developer.salesforce.com/docs/atlas.en-us.knowledge_dev.meta/knowledge_dev/sforce_api_objects_knowledge__kav.htm), + // you must include at least Id, ArticleNumber, VersionNumber, Title, PublishStatus, + // and IsDeleted. + // + // * For ServiceNow (https://developer.servicenow.com/dev.do#!/reference/api/rome/rest/knowledge-management-api), + // you must include at least number, short_description, sys_mod_count, workflow_state, + // and active. + // + // * For Zendesk (https://developer.zendesk.com/api-reference/help_center/help-center-api/articles/), + // you must include at least id, title, updated_at, and draft. + // + // Make sure to include additional fields. These fields are indexed and used + // to source recommendations. + ObjectFields []*string `locationName:"objectFields" 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 AppIntegrationsConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AppIntegrationsConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AppIntegrationsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AppIntegrationsConfiguration"} + if s.AppIntegrationArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppIntegrationArn")) + } + if s.AppIntegrationArn != nil && len(*s.AppIntegrationArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AppIntegrationArn", 1)) + } + if s.ObjectFields != nil && len(s.ObjectFields) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ObjectFields", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAppIntegrationArn sets the AppIntegrationArn field's value. +func (s *AppIntegrationsConfiguration) SetAppIntegrationArn(v string) *AppIntegrationsConfiguration { + s.AppIntegrationArn = &v + return s +} + +// SetObjectFields sets the ObjectFields field's value. +func (s *AppIntegrationsConfiguration) SetObjectFields(v []*string) *AppIntegrationsConfiguration { + s.ObjectFields = v + return s +} + +// Information about the assistant association. +type AssistantAssociationData struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the assistant association. + // + // AssistantAssociationArn is a required field + AssistantAssociationArn *string `locationName:"assistantAssociationArn" type:"string" required:"true"` + + // The identifier of the assistant association. + // + // AssistantAssociationId is a required field + AssistantAssociationId *string `locationName:"assistantAssociationId" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // A union type that currently has a single argument, the knowledge base ID. + // + // AssociationData is a required field + AssociationData *AssistantAssociationOutputData `locationName:"associationData" type:"structure" required:"true"` + + // The type of association. + // + // AssociationType is a required field + AssociationType *string `locationName:"associationType" type:"string" required:"true" enum:"AssociationType"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantAssociationData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantAssociationData) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *AssistantAssociationData) SetAssistantArn(v string) *AssistantAssociationData { + s.AssistantArn = &v + return s +} + +// SetAssistantAssociationArn sets the AssistantAssociationArn field's value. +func (s *AssistantAssociationData) SetAssistantAssociationArn(v string) *AssistantAssociationData { + s.AssistantAssociationArn = &v + return s +} + +// SetAssistantAssociationId sets the AssistantAssociationId field's value. +func (s *AssistantAssociationData) SetAssistantAssociationId(v string) *AssistantAssociationData { + s.AssistantAssociationId = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *AssistantAssociationData) SetAssistantId(v string) *AssistantAssociationData { + s.AssistantId = &v + return s +} + +// SetAssociationData sets the AssociationData field's value. +func (s *AssistantAssociationData) SetAssociationData(v *AssistantAssociationOutputData) *AssistantAssociationData { + s.AssociationData = v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *AssistantAssociationData) SetAssociationType(v string) *AssistantAssociationData { + s.AssociationType = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssistantAssociationData) SetTags(v map[string]*string) *AssistantAssociationData { + s.Tags = v + return s +} + +// The data that is input into Amazon Q as a result of the assistant association. +type AssistantAssociationInputData struct { + _ struct{} `type:"structure"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + KnowledgeBaseId *string `locationName:"knowledgeBaseId" 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 AssistantAssociationInputData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantAssociationInputData) GoString() string { + return s.String() +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *AssistantAssociationInputData) SetKnowledgeBaseId(v string) *AssistantAssociationInputData { + s.KnowledgeBaseId = &v + return s +} + +// The data that is output as a result of the assistant association. +type AssistantAssociationOutputData struct { + _ struct{} `type:"structure"` + + // The knowledge base where output data is sent. + KnowledgeBaseAssociation *KnowledgeBaseAssociationData `locationName:"knowledgeBaseAssociation" 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 AssistantAssociationOutputData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantAssociationOutputData) GoString() string { + return s.String() +} + +// SetKnowledgeBaseAssociation sets the KnowledgeBaseAssociation field's value. +func (s *AssistantAssociationOutputData) SetKnowledgeBaseAssociation(v *KnowledgeBaseAssociationData) *AssistantAssociationOutputData { + s.KnowledgeBaseAssociation = v + return s +} + +// Summary information about the assistant association. +type AssistantAssociationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the assistant association. + // + // AssistantAssociationArn is a required field + AssistantAssociationArn *string `locationName:"assistantAssociationArn" type:"string" required:"true"` + + // The identifier of the assistant association. + // + // AssistantAssociationId is a required field + AssistantAssociationId *string `locationName:"assistantAssociationId" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // The association data. + // + // AssociationData is a required field + AssociationData *AssistantAssociationOutputData `locationName:"associationData" type:"structure" required:"true"` + + // The type of association. + // + // AssociationType is a required field + AssociationType *string `locationName:"associationType" type:"string" required:"true" enum:"AssociationType"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantAssociationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantAssociationSummary) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *AssistantAssociationSummary) SetAssistantArn(v string) *AssistantAssociationSummary { + s.AssistantArn = &v + return s +} + +// SetAssistantAssociationArn sets the AssistantAssociationArn field's value. +func (s *AssistantAssociationSummary) SetAssistantAssociationArn(v string) *AssistantAssociationSummary { + s.AssistantAssociationArn = &v + return s +} + +// SetAssistantAssociationId sets the AssistantAssociationId field's value. +func (s *AssistantAssociationSummary) SetAssistantAssociationId(v string) *AssistantAssociationSummary { + s.AssistantAssociationId = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *AssistantAssociationSummary) SetAssistantId(v string) *AssistantAssociationSummary { + s.AssistantId = &v + return s +} + +// SetAssociationData sets the AssociationData field's value. +func (s *AssistantAssociationSummary) SetAssociationData(v *AssistantAssociationOutputData) *AssistantAssociationSummary { + s.AssociationData = v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *AssistantAssociationSummary) SetAssociationType(v string) *AssistantAssociationSummary { + s.AssociationType = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssistantAssociationSummary) SetTags(v map[string]*string) *AssistantAssociationSummary { + s.Tags = v + return s +} + +// The capability configuration for an Amazon Q assistant. +type AssistantCapabilityConfiguration struct { + _ struct{} `type:"structure"` + + // The type of Amazon Q assistant capability. + Type *string `locationName:"type" type:"string" enum:"AssistantCapabilityType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantCapabilityConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantCapabilityConfiguration) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *AssistantCapabilityConfiguration) SetType(v string) *AssistantCapabilityConfiguration { + s.Type = &v + return s +} + +// The assistant data. +type AssistantData struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // The configuration information for the Amazon Q assistant capability. + CapabilityConfiguration *AssistantCapabilityConfiguration `locationName:"capabilityConfiguration" type:"structure"` + + // The description. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information for the Amazon Q assistant integration. + IntegrationConfiguration *AssistantIntegrationConfiguration `locationName:"integrationConfiguration" type:"structure"` + + // The name. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using + // the key to invoke Amazon Q. To use Amazon Q with chat, the key policy must + // also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions + // to the connect.amazonaws.com service principal. + // + // For more information about setting up a customer managed key for Amazon Q, + // see Enable Amazon Q in Connect for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // The status of the assistant. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AssistantStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The type of assistant. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"AssistantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantData) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *AssistantData) SetAssistantArn(v string) *AssistantData { + s.AssistantArn = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *AssistantData) SetAssistantId(v string) *AssistantData { + s.AssistantId = &v + return s +} + +// SetCapabilityConfiguration sets the CapabilityConfiguration field's value. +func (s *AssistantData) SetCapabilityConfiguration(v *AssistantCapabilityConfiguration) *AssistantData { + s.CapabilityConfiguration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *AssistantData) SetDescription(v string) *AssistantData { + s.Description = &v + return s +} + +// SetIntegrationConfiguration sets the IntegrationConfiguration field's value. +func (s *AssistantData) SetIntegrationConfiguration(v *AssistantIntegrationConfiguration) *AssistantData { + s.IntegrationConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *AssistantData) SetName(v string) *AssistantData { + s.Name = &v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *AssistantData) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *AssistantData { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AssistantData) SetStatus(v string) *AssistantData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssistantData) SetTags(v map[string]*string) *AssistantData { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *AssistantData) SetType(v string) *AssistantData { + s.Type = &v + return s +} + +// The configuration information for the Amazon Q assistant integration. +type AssistantIntegrationConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for + // streaming chat messages. + TopicIntegrationArn *string `locationName:"topicIntegrationArn" 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 AssistantIntegrationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantIntegrationConfiguration) GoString() string { + return s.String() +} + +// SetTopicIntegrationArn sets the TopicIntegrationArn field's value. +func (s *AssistantIntegrationConfiguration) SetTopicIntegrationArn(v string) *AssistantIntegrationConfiguration { + s.TopicIntegrationArn = &v + return s +} + +// Summary information about the assistant. +type AssistantSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // The configuration information for the Amazon Q assistant capability. + CapabilityConfiguration *AssistantCapabilityConfiguration `locationName:"capabilityConfiguration" type:"structure"` + + // The description of the assistant. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information for the Amazon Q assistant integration. + IntegrationConfiguration *AssistantIntegrationConfiguration `locationName:"integrationConfiguration" type:"structure"` + + // The name of the assistant. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using + // the key to invoke Amazon Q. To use Amazon Q with chat, the key policy must + // also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey permissions + // to the connect.amazonaws.com service principal. + // + // For more information about setting up a customer managed key for Amazon Q, + // see Enable Amazon Q in Connect for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // The status of the assistant. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"AssistantStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The type of the assistant. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"AssistantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssistantSummary) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *AssistantSummary) SetAssistantArn(v string) *AssistantSummary { + s.AssistantArn = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *AssistantSummary) SetAssistantId(v string) *AssistantSummary { + s.AssistantId = &v + return s +} + +// SetCapabilityConfiguration sets the CapabilityConfiguration field's value. +func (s *AssistantSummary) SetCapabilityConfiguration(v *AssistantCapabilityConfiguration) *AssistantSummary { + s.CapabilityConfiguration = v + return s +} + +// SetDescription sets the Description field's value. +func (s *AssistantSummary) SetDescription(v string) *AssistantSummary { + s.Description = &v + return s +} + +// SetIntegrationConfiguration sets the IntegrationConfiguration field's value. +func (s *AssistantSummary) SetIntegrationConfiguration(v *AssistantIntegrationConfiguration) *AssistantSummary { + s.IntegrationConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *AssistantSummary) SetName(v string) *AssistantSummary { + s.Name = &v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *AssistantSummary) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *AssistantSummary { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AssistantSummary) SetStatus(v string) *AssistantSummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssistantSummary) SetTags(v map[string]*string) *AssistantSummary { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *AssistantSummary) SetType(v string) *AssistantSummary { + s.Type = &v + return s +} + +// The configuration information of the external data source. +type Configuration struct { + _ struct{} `type:"structure"` + + // The configuration information of the Amazon Connect data source. + ConnectConfiguration *ConnectConfiguration `locationName:"connectConfiguration" 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 Configuration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Configuration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Configuration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Configuration"} + if s.ConnectConfiguration != nil { + if err := s.ConnectConfiguration.Validate(); err != nil { + invalidParams.AddNested("ConnectConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectConfiguration sets the ConnectConfiguration field's value. +func (s *Configuration) SetConnectConfiguration(v *ConnectConfiguration) *Configuration { + s.ConnectConfiguration = v + return s +} + +// The request could not be processed because of conflict in the current state +// of the resource. For example, if you're using a Create API (such as CreateAssistant) +// that accepts name, a conflicting resource (usually with the same name) is +// being created or mutated. +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 +} + +// The configuration information of the Amazon Connect data source. +type ConnectConfiguration struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Connect instance. You can find the instanceId + // in the ARN of the instance. + InstanceId *string `locationName:"instanceId" 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 ConnectConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConnectConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConnectConfiguration"} + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ConnectConfiguration) SetInstanceId(v string) *ConnectConfiguration { + s.InstanceId = &v + return s +} + +// Information about the content. +type ContentData struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the content. + // + // ContentArn is a required field + ContentArn *string `locationName:"contentArn" type:"string" required:"true"` + + // The identifier of the content. + // + // ContentId is a required field + ContentId *string `locationName:"contentId" type:"string" required:"true"` + + // The media type of the content. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The URI of the content. + LinkOutUri *string `locationName:"linkOutUri" min:"1" type:"string"` + + // A key/value map to store attributes without affecting tagging or recommendations. + // For example, when synchronizing data between an external system and Amazon + // Q, you can store an external version identifier as metadata to utilize for + // determining drift. + // + // Metadata is a required field + Metadata map[string]*string `locationName:"metadata" type:"map" required:"true"` + + // The name of the content. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The identifier of the content revision. + // + // RevisionId is a required field + RevisionId *string `locationName:"revisionId" min:"1" type:"string" required:"true"` + + // The status of the content. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ContentStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The title of the content. + // + // Title is a required field + Title *string `locationName:"title" min:"1" type:"string" required:"true"` + + // The URL of the content. + // + // Url is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ContentData's + // String and GoString methods. + // + // Url is a required field + Url *string `locationName:"url" min:"1" type:"string" required:"true" sensitive:"true"` + + // The expiration time of the URL as an epoch timestamp. + // + // UrlExpiry is a required field + UrlExpiry *time.Time `locationName:"urlExpiry" type:"timestamp" timestampFormat:"unixTimestamp" 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 ContentData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentData) GoString() string { + return s.String() +} + +// SetContentArn sets the ContentArn field's value. +func (s *ContentData) SetContentArn(v string) *ContentData { + s.ContentArn = &v + return s +} + +// SetContentId sets the ContentId field's value. +func (s *ContentData) SetContentId(v string) *ContentData { + s.ContentId = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *ContentData) SetContentType(v string) *ContentData { + s.ContentType = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ContentData) SetKnowledgeBaseArn(v string) *ContentData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ContentData) SetKnowledgeBaseId(v string) *ContentData { + s.KnowledgeBaseId = &v + return s +} + +// SetLinkOutUri sets the LinkOutUri field's value. +func (s *ContentData) SetLinkOutUri(v string) *ContentData { + s.LinkOutUri = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ContentData) SetMetadata(v map[string]*string) *ContentData { + s.Metadata = v + return s +} + +// SetName sets the Name field's value. +func (s *ContentData) SetName(v string) *ContentData { + s.Name = &v + return s +} + +// SetRevisionId sets the RevisionId field's value. +func (s *ContentData) SetRevisionId(v string) *ContentData { + s.RevisionId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ContentData) SetStatus(v string) *ContentData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ContentData) SetTags(v map[string]*string) *ContentData { + s.Tags = v + return s +} + +// SetTitle sets the Title field's value. +func (s *ContentData) SetTitle(v string) *ContentData { + s.Title = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *ContentData) SetUrl(v string) *ContentData { + s.Url = &v + return s +} + +// SetUrlExpiry sets the UrlExpiry field's value. +func (s *ContentData) SetUrlExpiry(v time.Time) *ContentData { + s.UrlExpiry = &v + return s +} + +// Details about the content data. +type ContentDataDetails struct { + _ struct{} `type:"structure"` + + // Details about the content ranking data. + // + // RankingData is a required field + RankingData *RankingData `locationName:"rankingData" type:"structure" required:"true"` + + // Details about the content text data. + // + // TextData is a required field + TextData *TextData `locationName:"textData" 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 ContentDataDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentDataDetails) GoString() string { + return s.String() +} + +// SetRankingData sets the RankingData field's value. +func (s *ContentDataDetails) SetRankingData(v *RankingData) *ContentDataDetails { + s.RankingData = v + return s +} + +// SetTextData sets the TextData field's value. +func (s *ContentDataDetails) SetTextData(v *TextData) *ContentDataDetails { + s.TextData = v + return s +} + +// Information about the feedback. +type ContentFeedbackData struct { + _ struct{} `type:"structure"` + + // Information about the feedback for a generative target type. + GenerativeContentFeedbackData *GenerativeContentFeedbackData `locationName:"generativeContentFeedbackData" 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 ContentFeedbackData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentFeedbackData) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContentFeedbackData) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContentFeedbackData"} + if s.GenerativeContentFeedbackData != nil { + if err := s.GenerativeContentFeedbackData.Validate(); err != nil { + invalidParams.AddNested("GenerativeContentFeedbackData", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGenerativeContentFeedbackData sets the GenerativeContentFeedbackData field's value. +func (s *ContentFeedbackData) SetGenerativeContentFeedbackData(v *GenerativeContentFeedbackData) *ContentFeedbackData { + s.GenerativeContentFeedbackData = v + return s +} + +// Reference information about the content. +type ContentReference struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the content. + ContentArn *string `locationName:"contentArn" type:"string"` + + // The identifier of the content. + ContentId *string `locationName:"contentId" type:"string"` + + // The Amazon Resource Name (ARN) of the knowledge base. + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + KnowledgeBaseId *string `locationName:"knowledgeBaseId" 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 ContentReference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentReference) GoString() string { + return s.String() +} + +// SetContentArn sets the ContentArn field's value. +func (s *ContentReference) SetContentArn(v string) *ContentReference { + s.ContentArn = &v + return s +} + +// SetContentId sets the ContentId field's value. +func (s *ContentReference) SetContentId(v string) *ContentReference { + s.ContentId = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ContentReference) SetKnowledgeBaseArn(v string) *ContentReference { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ContentReference) SetKnowledgeBaseId(v string) *ContentReference { + s.KnowledgeBaseId = &v + return s +} + +// Summary information about the content. +type ContentSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the content. + // + // ContentArn is a required field + ContentArn *string `locationName:"contentArn" type:"string" required:"true"` + + // The identifier of the content. + // + // ContentId is a required field + ContentId *string `locationName:"contentId" type:"string" required:"true"` + + // The media type of the content. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // A key/value map to store attributes without affecting tagging or recommendations. + // For example, when synchronizing data between an external system and Amazon + // Q, you can store an external version identifier as metadata to utilize for + // determining drift. + // + // Metadata is a required field + Metadata map[string]*string `locationName:"metadata" type:"map" required:"true"` + + // The name of the content. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The identifier of the revision of the content. + // + // RevisionId is a required field + RevisionId *string `locationName:"revisionId" min:"1" type:"string" required:"true"` + + // The status of the content. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ContentStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The title of the content. + // + // Title is a required field + Title *string `locationName:"title" 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 ContentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentSummary) GoString() string { + return s.String() +} + +// SetContentArn sets the ContentArn field's value. +func (s *ContentSummary) SetContentArn(v string) *ContentSummary { + s.ContentArn = &v + return s +} + +// SetContentId sets the ContentId field's value. +func (s *ContentSummary) SetContentId(v string) *ContentSummary { + s.ContentId = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *ContentSummary) SetContentType(v string) *ContentSummary { + s.ContentType = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ContentSummary) SetKnowledgeBaseArn(v string) *ContentSummary { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ContentSummary) SetKnowledgeBaseId(v string) *ContentSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ContentSummary) SetMetadata(v map[string]*string) *ContentSummary { + s.Metadata = v + return s +} + +// SetName sets the Name field's value. +func (s *ContentSummary) SetName(v string) *ContentSummary { + s.Name = &v + return s +} + +// SetRevisionId sets the RevisionId field's value. +func (s *ContentSummary) SetRevisionId(v string) *ContentSummary { + s.RevisionId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ContentSummary) SetStatus(v string) *ContentSummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ContentSummary) SetTags(v map[string]*string) *ContentSummary { + s.Tags = v + return s +} + +// SetTitle sets the Title field's value. +func (s *ContentSummary) SetTitle(v string) *ContentSummary { + s.Title = &v + return s +} + +type CreateAssistantAssociationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The identifier of the associated resource. + // + // Association is a required field + Association *AssistantAssociationInputData `locationName:"association" type:"structure" required:"true"` + + // The type of association. + // + // AssociationType is a required field + AssociationType *string `locationName:"associationType" type:"string" required:"true" enum:"AssociationType"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssistantAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssistantAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAssistantAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAssistantAssociationInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.Association == nil { + invalidParams.Add(request.NewErrParamRequired("Association")) + } + if s.AssociationType == nil { + invalidParams.Add(request.NewErrParamRequired("AssociationType")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *CreateAssistantAssociationInput) SetAssistantId(v string) *CreateAssistantAssociationInput { + s.AssistantId = &v + return s +} + +// SetAssociation sets the Association field's value. +func (s *CreateAssistantAssociationInput) SetAssociation(v *AssistantAssociationInputData) *CreateAssistantAssociationInput { + s.Association = v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *CreateAssistantAssociationInput) SetAssociationType(v string) *CreateAssistantAssociationInput { + s.AssociationType = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAssistantAssociationInput) SetClientToken(v string) *CreateAssistantAssociationInput { + s.ClientToken = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAssistantAssociationInput) SetTags(v map[string]*string) *CreateAssistantAssociationInput { + s.Tags = v + return s +} + +type CreateAssistantAssociationOutput struct { + _ struct{} `type:"structure"` + + // The assistant association. + AssistantAssociation *AssistantAssociationData `locationName:"assistantAssociation" 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 CreateAssistantAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssistantAssociationOutput) GoString() string { + return s.String() +} + +// SetAssistantAssociation sets the AssistantAssociation field's value. +func (s *CreateAssistantAssociationOutput) SetAssistantAssociation(v *AssistantAssociationData) *CreateAssistantAssociationOutput { + s.AssistantAssociation = v + return s +} + +type CreateAssistantInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description of the assistant. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the assistant. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The configuration information for the customer managed key used for encryption. + // + // The customer managed key must have a policy that allows kms:CreateGrant, + // kms:DescribeKey, kms:Decrypt, and kms:GenerateDataKey* permissions to the + // IAM identity using the key to invoke Amazon Q. To use Amazon Q with chat, + // the key policy must also allow kms:Decrypt, kms:GenerateDataKey*, and kms:DescribeKey + // permissions to the connect.amazonaws.com service principal. + // + // For more information about setting up a customer managed key for Amazon Q, + // see Enable Amazon Q in Connect for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The type of assistant. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"AssistantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssistantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssistantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAssistantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAssistantInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.ServerSideEncryptionConfiguration != nil { + if err := s.ServerSideEncryptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("ServerSideEncryptionConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateAssistantInput) SetClientToken(v string) *CreateAssistantInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAssistantInput) SetDescription(v string) *CreateAssistantInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateAssistantInput) SetName(v string) *CreateAssistantInput { + s.Name = &v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *CreateAssistantInput) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *CreateAssistantInput { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAssistantInput) SetTags(v map[string]*string) *CreateAssistantInput { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateAssistantInput) SetType(v string) *CreateAssistantInput { + s.Type = &v + return s +} + +type CreateAssistantOutput struct { + _ struct{} `type:"structure"` + + // Information about the assistant. + Assistant *AssistantData `locationName:"assistant" 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 CreateAssistantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAssistantOutput) GoString() string { + return s.String() +} + +// SetAssistant sets the Assistant field's value. +func (s *CreateAssistantOutput) SetAssistant(v *AssistantData) *CreateAssistantOutput { + s.Assistant = v + return s +} + +type CreateContentInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // A key/value map to store attributes without affecting tagging or recommendations. + // For example, when synchronizing data between an external system and Amazon + // Q, you can store an external version identifier as metadata to utilize for + // determining drift. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The name of the content. Each piece of content in a knowledge base must have + // a unique name. You can retrieve a piece of content using only its knowledge + // base and its name with the SearchContent (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_SearchContent.html) + // API. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The URI you want to use for the article. If the knowledge base has a templateUri, + // setting this argument overrides it for this piece of content. + OverrideLinkOutUri *string `locationName:"overrideLinkOutUri" min:"1" type:"string"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The title of the content. If not set, the title is equal to the name. + Title *string `locationName:"title" min:"1" type:"string"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" 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 CreateContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateContentInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OverrideLinkOutUri != nil && len(*s.OverrideLinkOutUri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OverrideLinkOutUri", 1)) + } + if s.Title != nil && len(*s.Title) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Title", 1)) + } + if s.UploadId == nil { + invalidParams.Add(request.NewErrParamRequired("UploadId")) + } + if s.UploadId != nil && len(*s.UploadId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateContentInput) SetClientToken(v string) *CreateContentInput { + s.ClientToken = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *CreateContentInput) SetKnowledgeBaseId(v string) *CreateContentInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *CreateContentInput) SetMetadata(v map[string]*string) *CreateContentInput { + s.Metadata = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateContentInput) SetName(v string) *CreateContentInput { + s.Name = &v + return s +} + +// SetOverrideLinkOutUri sets the OverrideLinkOutUri field's value. +func (s *CreateContentInput) SetOverrideLinkOutUri(v string) *CreateContentInput { + s.OverrideLinkOutUri = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateContentInput) SetTags(v map[string]*string) *CreateContentInput { + s.Tags = v + return s +} + +// SetTitle sets the Title field's value. +func (s *CreateContentInput) SetTitle(v string) *CreateContentInput { + s.Title = &v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *CreateContentInput) SetUploadId(v string) *CreateContentInput { + s.UploadId = &v + return s +} + +type CreateContentOutput struct { + _ struct{} `type:"structure"` + + // The content. + Content *ContentData `locationName:"content" 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 CreateContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateContentOutput) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *CreateContentOutput) SetContent(v *ContentData) *CreateContentOutput { + s.Content = v + return s +} + +type CreateKnowledgeBaseInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description. + Description *string `locationName:"description" min:"1" type:"string"` + + // The type of knowledge base. Only CUSTOM knowledge bases allow you to upload + // your own content. EXTERNAL knowledge bases support integrations with third-party + // systems whose content is synchronized automatically. + // + // KnowledgeBaseType is a required field + KnowledgeBaseType *string `locationName:"knowledgeBaseType" type:"string" required:"true" enum:"KnowledgeBaseType"` + + // The name of the knowledge base. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Information about how to render the content. + RenderingConfiguration *RenderingConfiguration `locationName:"renderingConfiguration" type:"structure"` + + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using + // the key to invoke Amazon Q. + // + // For more information about setting up a customer managed key for Amazon Q, + // see Enable Amazon Q in Connect for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // The source of the knowledge base content. Only set this argument for EXTERNAL + // knowledge bases. + SourceConfiguration *SourceConfiguration `locationName:"sourceConfiguration" type:"structure"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateKnowledgeBaseInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseType == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseType")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.RenderingConfiguration != nil { + if err := s.RenderingConfiguration.Validate(); err != nil { + invalidParams.AddNested("RenderingConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.ServerSideEncryptionConfiguration != nil { + if err := s.ServerSideEncryptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("ServerSideEncryptionConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.SourceConfiguration != nil { + if err := s.SourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("SourceConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateKnowledgeBaseInput) SetClientToken(v string) *CreateKnowledgeBaseInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateKnowledgeBaseInput) SetDescription(v string) *CreateKnowledgeBaseInput { + s.Description = &v + return s +} + +// SetKnowledgeBaseType sets the KnowledgeBaseType field's value. +func (s *CreateKnowledgeBaseInput) SetKnowledgeBaseType(v string) *CreateKnowledgeBaseInput { + s.KnowledgeBaseType = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateKnowledgeBaseInput) SetName(v string) *CreateKnowledgeBaseInput { + s.Name = &v + return s +} + +// SetRenderingConfiguration sets the RenderingConfiguration field's value. +func (s *CreateKnowledgeBaseInput) SetRenderingConfiguration(v *RenderingConfiguration) *CreateKnowledgeBaseInput { + s.RenderingConfiguration = v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *CreateKnowledgeBaseInput) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *CreateKnowledgeBaseInput { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetSourceConfiguration sets the SourceConfiguration field's value. +func (s *CreateKnowledgeBaseInput) SetSourceConfiguration(v *SourceConfiguration) *CreateKnowledgeBaseInput { + s.SourceConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateKnowledgeBaseInput) SetTags(v map[string]*string) *CreateKnowledgeBaseInput { + s.Tags = v + return s +} + +type CreateKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // The knowledge base. + KnowledgeBase *KnowledgeBaseData `locationName:"knowledgeBase" 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 CreateKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBase sets the KnowledgeBase field's value. +func (s *CreateKnowledgeBaseOutput) SetKnowledgeBase(v *KnowledgeBaseData) *CreateKnowledgeBaseOutput { + s.KnowledgeBase = v + return s +} + +type CreateQuickResponseInput struct { + _ struct{} `type:"structure"` + + // The Amazon Connect channels this quick response applies to. + Channels []*string `locationName:"channels" type:"list"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The content of the quick response. + // + // Content is a required field + Content *QuickResponseDataProvider `locationName:"content" type:"structure" required:"true"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for a quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for a quick response + // written in richtext. + ContentType *string `locationName:"contentType" type:"string"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information of the user groups that the quick response + // is accessible to. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + // The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, + // ja_JP, ko_KR, pt_BR, zh_CN, zh_TW + Language *string `locationName:"language" min:"2" type:"string"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" min:"1" type:"string"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateQuickResponseInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Content == nil { + invalidParams.Add(request.NewErrParamRequired("Content")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Language != nil && len(*s.Language) < 2 { + invalidParams.Add(request.NewErrParamMinLen("Language", 2)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ShortcutKey != nil && len(*s.ShortcutKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShortcutKey", 1)) + } + if s.Content != nil { + if err := s.Content.Validate(); err != nil { + invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) + } + } + if s.GroupingConfiguration != nil { + if err := s.GroupingConfiguration.Validate(); err != nil { + invalidParams.AddNested("GroupingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannels sets the Channels field's value. +func (s *CreateQuickResponseInput) SetChannels(v []*string) *CreateQuickResponseInput { + s.Channels = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateQuickResponseInput) SetClientToken(v string) *CreateQuickResponseInput { + s.ClientToken = &v + return s +} + +// SetContent sets the Content field's value. +func (s *CreateQuickResponseInput) SetContent(v *QuickResponseDataProvider) *CreateQuickResponseInput { + s.Content = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *CreateQuickResponseInput) SetContentType(v string) *CreateQuickResponseInput { + s.ContentType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateQuickResponseInput) SetDescription(v string) *CreateQuickResponseInput { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *CreateQuickResponseInput) SetGroupingConfiguration(v *GroupingConfiguration) *CreateQuickResponseInput { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *CreateQuickResponseInput) SetIsActive(v bool) *CreateQuickResponseInput { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *CreateQuickResponseInput) SetKnowledgeBaseId(v string) *CreateQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *CreateQuickResponseInput) SetLanguage(v string) *CreateQuickResponseInput { + s.Language = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateQuickResponseInput) SetName(v string) *CreateQuickResponseInput { + s.Name = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *CreateQuickResponseInput) SetShortcutKey(v string) *CreateQuickResponseInput { + s.ShortcutKey = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateQuickResponseInput) SetTags(v map[string]*string) *CreateQuickResponseInput { + s.Tags = v + return s +} + +type CreateQuickResponseOutput struct { + _ struct{} `type:"structure"` + + // The quick response. + QuickResponse *QuickResponseData `locationName:"quickResponse" 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 CreateQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateQuickResponseOutput) GoString() string { + return s.String() +} + +// SetQuickResponse sets the QuickResponse field's value. +func (s *CreateQuickResponseOutput) SetQuickResponse(v *QuickResponseData) *CreateQuickResponseOutput { + s.QuickResponse = v + return s +} + +type CreateSessionInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the session. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSessionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSessionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSessionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSessionInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *CreateSessionInput) SetAssistantId(v string) *CreateSessionInput { + s.AssistantId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateSessionInput) SetClientToken(v string) *CreateSessionInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateSessionInput) SetDescription(v string) *CreateSessionInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateSessionInput) SetName(v string) *CreateSessionInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateSessionInput) SetTags(v map[string]*string) *CreateSessionInput { + s.Tags = v + return s +} + +type CreateSessionOutput struct { + _ struct{} `type:"structure"` + + // The session. + Session *SessionData `locationName:"session" 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 CreateSessionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSessionOutput) GoString() string { + return s.String() +} + +// SetSession sets the Session field's value. +func (s *CreateSessionOutput) SetSession(v *SessionData) *CreateSessionOutput { + s.Session = v + return s +} + +// Details about the data. +type DataDetails struct { + _ struct{} `type:"structure"` + + // Details about the content data. + ContentData *ContentDataDetails `locationName:"contentData" type:"structure"` + + // Details about the generative data. + GenerativeData *GenerativeDataDetails `locationName:"generativeData" type:"structure"` + + // Details about the content data. + SourceContentData *SourceContentDataDetails `locationName:"sourceContentData" 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 DataDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataDetails) GoString() string { + return s.String() +} + +// SetContentData sets the ContentData field's value. +func (s *DataDetails) SetContentData(v *ContentDataDetails) *DataDetails { + s.ContentData = v + return s +} + +// SetGenerativeData sets the GenerativeData field's value. +func (s *DataDetails) SetGenerativeData(v *GenerativeDataDetails) *DataDetails { + s.GenerativeData = v + return s +} + +// SetSourceContentData sets the SourceContentData field's value. +func (s *DataDetails) SetSourceContentData(v *SourceContentDataDetails) *DataDetails { + s.SourceContentData = v + return s +} + +// Reference data. +type DataReference struct { + _ struct{} `type:"structure"` + + // Reference information about the content. + ContentReference *ContentReference `locationName:"contentReference" type:"structure"` + + // Reference information about the generative content. + GenerativeReference *GenerativeReference `locationName:"generativeReference" 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 DataReference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataReference) GoString() string { + return s.String() +} + +// SetContentReference sets the ContentReference field's value. +func (s *DataReference) SetContentReference(v *ContentReference) *DataReference { + s.ContentReference = v + return s +} + +// SetGenerativeReference sets the GenerativeReference field's value. +func (s *DataReference) SetGenerativeReference(v *GenerativeReference) *DataReference { + s.GenerativeReference = v + return s +} + +// Summary of the data. +type DataSummary struct { + _ struct{} `type:"structure"` + + // Details about the data. + // + // Details is a required field + Details *DataDetails `locationName:"details" type:"structure" required:"true"` + + // Reference information about the content. + // + // Reference is a required field + Reference *DataReference `locationName:"reference" 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 DataSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSummary) GoString() string { + return s.String() +} + +// SetDetails sets the Details field's value. +func (s *DataSummary) SetDetails(v *DataDetails) *DataSummary { + s.Details = v + return s +} + +// SetReference sets the Reference field's value. +func (s *DataSummary) SetReference(v *DataReference) *DataSummary { + s.Reference = v + return s +} + +type DeleteAssistantAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the assistant association. Can be either the ID or the + // ARN. URLs cannot contain the ARN. + // + // AssistantAssociationId is a required field + AssistantAssociationId *string `location:"uri" locationName:"assistantAssociationId" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" 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 DeleteAssistantAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssistantAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAssistantAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAssistantAssociationInput"} + if s.AssistantAssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantAssociationId")) + } + if s.AssistantAssociationId != nil && len(*s.AssistantAssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantAssociationId", 1)) + } + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantAssociationId sets the AssistantAssociationId field's value. +func (s *DeleteAssistantAssociationInput) SetAssistantAssociationId(v string) *DeleteAssistantAssociationInput { + s.AssistantAssociationId = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *DeleteAssistantAssociationInput) SetAssistantId(v string) *DeleteAssistantAssociationInput { + s.AssistantId = &v + return s +} + +type DeleteAssistantAssociationOutput 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 DeleteAssistantAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssistantAssociationOutput) GoString() string { + return s.String() +} + +type DeleteAssistantInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" 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 DeleteAssistantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssistantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAssistantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAssistantInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *DeleteAssistantInput) SetAssistantId(v string) *DeleteAssistantInput { + s.AssistantId = &v + return s +} + +type DeleteAssistantOutput 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 DeleteAssistantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAssistantOutput) GoString() string { + return s.String() +} + +type DeleteContentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the content. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // ContentId is a required field + ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DeleteContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteContentInput"} + if s.ContentId == nil { + invalidParams.Add(request.NewErrParamRequired("ContentId")) + } + if s.ContentId != nil && len(*s.ContentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContentId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContentId sets the ContentId field's value. +func (s *DeleteContentInput) SetContentId(v string) *DeleteContentInput { + s.ContentId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteContentInput) SetKnowledgeBaseId(v string) *DeleteContentInput { + s.KnowledgeBaseId = &v + return s +} + +type DeleteContentOutput 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 DeleteContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteContentOutput) GoString() string { + return s.String() +} + +type DeleteImportJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the import job to be deleted. + // + // ImportJobId is a required field + ImportJobId *string `location:"uri" locationName:"importJobId" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DeleteImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteImportJobInput"} + if s.ImportJobId == nil { + invalidParams.Add(request.NewErrParamRequired("ImportJobId")) + } + if s.ImportJobId != nil && len(*s.ImportJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImportJobId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *DeleteImportJobInput) SetImportJobId(v string) *DeleteImportJobInput { + s.ImportJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteImportJobInput) SetKnowledgeBaseId(v string) *DeleteImportJobInput { + s.KnowledgeBaseId = &v + return s +} + +type DeleteImportJobOutput 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 DeleteImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImportJobOutput) GoString() string { + return s.String() +} + +type DeleteKnowledgeBaseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The knowledge base to delete content from. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 DeleteKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKnowledgeBaseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteKnowledgeBaseInput) SetKnowledgeBaseId(v string) *DeleteKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +type DeleteKnowledgeBaseOutput 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 DeleteKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteKnowledgeBaseOutput) GoString() string { + return s.String() +} + +type DeleteQuickResponseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The knowledge base from which the quick response is deleted. The identifier + // of the knowledge base. This should not be a QUICK_RESPONSES type knowledge + // base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The identifier of the quick response to delete. + // + // QuickResponseId is a required field + QuickResponseId *string `location:"uri" locationName:"quickResponseId" 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 DeleteQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteQuickResponseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.QuickResponseId == nil { + invalidParams.Add(request.NewErrParamRequired("QuickResponseId")) + } + if s.QuickResponseId != nil && len(*s.QuickResponseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuickResponseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *DeleteQuickResponseInput) SetKnowledgeBaseId(v string) *DeleteQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *DeleteQuickResponseInput) SetQuickResponseId(v string) *DeleteQuickResponseInput { + s.QuickResponseId = &v + return s +} + +type DeleteQuickResponseOutput 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 DeleteQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteQuickResponseOutput) GoString() string { + return s.String() +} + +// The document. +type Document struct { + _ struct{} `type:"structure"` + + // A reference to the content resource. + // + // ContentReference is a required field + ContentReference *ContentReference `locationName:"contentReference" type:"structure" required:"true"` + + // The excerpt from the document. + Excerpt *DocumentText `locationName:"excerpt" type:"structure"` + + // The title of the document. + Title *DocumentText `locationName:"title" 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 Document) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Document) GoString() string { + return s.String() +} + +// SetContentReference sets the ContentReference field's value. +func (s *Document) SetContentReference(v *ContentReference) *Document { + s.ContentReference = v + return s +} + +// SetExcerpt sets the Excerpt field's value. +func (s *Document) SetExcerpt(v *DocumentText) *Document { + s.Excerpt = v + return s +} + +// SetTitle sets the Title field's value. +func (s *Document) SetTitle(v *DocumentText) *Document { + s.Title = v + return s +} + +// The text of the document. +type DocumentText struct { + _ struct{} `type:"structure"` + + // Highlights in the document text. + Highlights []*Highlight `locationName:"highlights" type:"list"` + + // Text in the document. + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DocumentText's + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentText) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentText) GoString() string { + return s.String() +} + +// SetHighlights sets the Highlights field's value. +func (s *DocumentText) SetHighlights(v []*Highlight) *DocumentText { + s.Highlights = v + return s +} + +// SetText sets the Text field's value. +func (s *DocumentText) SetText(v string) *DocumentText { + s.Text = &v + return s +} + +// The configuration information of the external data source. +type ExternalSourceConfiguration struct { + _ struct{} `type:"structure"` + + // The configuration information of the external data source. + // + // Configuration is a required field + Configuration *Configuration `locationName:"configuration" type:"structure" required:"true"` + + // The type of the external data source. + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"ExternalSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExternalSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExternalSourceConfiguration"} + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + if s.Source == nil { + invalidParams.Add(request.NewErrParamRequired("Source")) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguration sets the Configuration field's value. +func (s *ExternalSourceConfiguration) SetConfiguration(v *Configuration) *ExternalSourceConfiguration { + s.Configuration = v + return s +} + +// SetSource sets the Source field's value. +func (s *ExternalSourceConfiguration) SetSource(v string) *ExternalSourceConfiguration { + s.Source = &v + return s +} + +// A search filter. +type Filter struct { + _ struct{} `type:"structure"` + + // The field on which to filter. + // + // Field is a required field + Field *string `locationName:"field" type:"string" required:"true" enum:"FilterField"` + + // The operator to use for comparing the field’s value with the provided value. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"FilterOperator"` + + // The desired field value on which to filter. + // + // Value is a required field + Value *string `locationName:"value" 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 Filter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Filter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Filter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Filter"} + if s.Field == nil { + invalidParams.Add(request.NewErrParamRequired("Field")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetField sets the Field field's value. +func (s *Filter) SetField(v string) *Filter { + s.Field = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *Filter) SetOperator(v string) *Filter { + s.Operator = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Filter) SetValue(v string) *Filter { + s.Value = &v + return s +} + +// The feedback information for a generative target type. +type GenerativeContentFeedbackData struct { + _ struct{} `type:"structure"` + + // The relevance of the feedback. + // + // Relevance is a required field + Relevance *string `locationName:"relevance" type:"string" required:"true" enum:"Relevance"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeContentFeedbackData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeContentFeedbackData) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GenerativeContentFeedbackData) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GenerativeContentFeedbackData"} + if s.Relevance == nil { + invalidParams.Add(request.NewErrParamRequired("Relevance")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRelevance sets the Relevance field's value. +func (s *GenerativeContentFeedbackData) SetRelevance(v string) *GenerativeContentFeedbackData { + s.Relevance = &v + return s +} + +// Details about generative data. +type GenerativeDataDetails struct { + _ struct{} `type:"structure"` + + // The LLM response. + // + // Completion is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GenerativeDataDetails's + // String and GoString methods. + // + // Completion is a required field + Completion *string `locationName:"completion" type:"string" required:"true" sensitive:"true"` + + // Details about the generative content ranking data. + // + // RankingData is a required field + RankingData *RankingData `locationName:"rankingData" type:"structure" required:"true"` + + // The references used to generative the LLM response. + // + // References is a required field + References []*DataSummary `locationName:"references" 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 GenerativeDataDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeDataDetails) GoString() string { + return s.String() +} + +// SetCompletion sets the Completion field's value. +func (s *GenerativeDataDetails) SetCompletion(v string) *GenerativeDataDetails { + s.Completion = &v + return s +} + +// SetRankingData sets the RankingData field's value. +func (s *GenerativeDataDetails) SetRankingData(v *RankingData) *GenerativeDataDetails { + s.RankingData = v + return s +} + +// SetReferences sets the References field's value. +func (s *GenerativeDataDetails) SetReferences(v []*DataSummary) *GenerativeDataDetails { + s.References = v + return s +} + +// Reference information about generative content. +type GenerativeReference struct { + _ struct{} `type:"structure"` + + // The identifier of the LLM model. + GenerationId *string `locationName:"generationId" type:"string"` + + // The identifier of the LLM model. + ModelId *string `locationName:"modelId" 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 GenerativeReference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeReference) GoString() string { + return s.String() +} + +// SetGenerationId sets the GenerationId field's value. +func (s *GenerativeReference) SetGenerationId(v string) *GenerativeReference { + s.GenerationId = &v + return s +} + +// SetModelId sets the ModelId field's value. +func (s *GenerativeReference) SetModelId(v string) *GenerativeReference { + s.ModelId = &v + return s +} + +type GetAssistantAssociationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the assistant association. Can be either the ID or the + // ARN. URLs cannot contain the ARN. + // + // AssistantAssociationId is a required field + AssistantAssociationId *string `location:"uri" locationName:"assistantAssociationId" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" 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 GetAssistantAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssistantAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAssistantAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAssistantAssociationInput"} + if s.AssistantAssociationId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantAssociationId")) + } + if s.AssistantAssociationId != nil && len(*s.AssistantAssociationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantAssociationId", 1)) + } + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantAssociationId sets the AssistantAssociationId field's value. +func (s *GetAssistantAssociationInput) SetAssistantAssociationId(v string) *GetAssistantAssociationInput { + s.AssistantAssociationId = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *GetAssistantAssociationInput) SetAssistantId(v string) *GetAssistantAssociationInput { + s.AssistantId = &v + return s +} + +type GetAssistantAssociationOutput struct { + _ struct{} `type:"structure"` + + // The assistant association. + AssistantAssociation *AssistantAssociationData `locationName:"assistantAssociation" 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 GetAssistantAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssistantAssociationOutput) GoString() string { + return s.String() +} + +// SetAssistantAssociation sets the AssistantAssociation field's value. +func (s *GetAssistantAssociationOutput) SetAssistantAssociation(v *AssistantAssociationData) *GetAssistantAssociationOutput { + s.AssistantAssociation = v + return s +} + +type GetAssistantInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" 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 GetAssistantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssistantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAssistantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAssistantInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *GetAssistantInput) SetAssistantId(v string) *GetAssistantInput { + s.AssistantId = &v + return s +} + +type GetAssistantOutput struct { + _ struct{} `type:"structure"` + + // Information about the assistant. + Assistant *AssistantData `locationName:"assistant" 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 GetAssistantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAssistantOutput) GoString() string { + return s.String() +} + +// SetAssistant sets the Assistant field's value. +func (s *GetAssistantOutput) SetAssistant(v *AssistantData) *GetAssistantOutput { + s.Assistant = v + return s +} + +type GetContentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the content. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // ContentId is a required field + ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetContentInput"} + if s.ContentId == nil { + invalidParams.Add(request.NewErrParamRequired("ContentId")) + } + if s.ContentId != nil && len(*s.ContentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContentId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContentId sets the ContentId field's value. +func (s *GetContentInput) SetContentId(v string) *GetContentInput { + s.ContentId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetContentInput) SetKnowledgeBaseId(v string) *GetContentInput { + s.KnowledgeBaseId = &v + return s +} + +type GetContentOutput struct { + _ struct{} `type:"structure"` + + // The content. + Content *ContentData `locationName:"content" 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 GetContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetContentOutput) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *GetContentOutput) SetContent(v *ContentData) *GetContentOutput { + s.Content = v + return s +} + +type GetContentSummaryInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the content. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // ContentId is a required field + ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetContentSummaryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetContentSummaryInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetContentSummaryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetContentSummaryInput"} + if s.ContentId == nil { + invalidParams.Add(request.NewErrParamRequired("ContentId")) + } + if s.ContentId != nil && len(*s.ContentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContentId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContentId sets the ContentId field's value. +func (s *GetContentSummaryInput) SetContentId(v string) *GetContentSummaryInput { + s.ContentId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetContentSummaryInput) SetKnowledgeBaseId(v string) *GetContentSummaryInput { + s.KnowledgeBaseId = &v + return s +} + +type GetContentSummaryOutput struct { + _ struct{} `type:"structure"` + + // The content summary. + ContentSummary *ContentSummary `locationName:"contentSummary" 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 GetContentSummaryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetContentSummaryOutput) GoString() string { + return s.String() +} + +// SetContentSummary sets the ContentSummary field's value. +func (s *GetContentSummaryOutput) SetContentSummary(v *ContentSummary) *GetContentSummaryOutput { + s.ContentSummary = v + return s +} + +type GetImportJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the import job to retrieve. + // + // ImportJobId is a required field + ImportJobId *string `location:"uri" locationName:"importJobId" type:"string" required:"true"` + + // The identifier of the knowledge base that the import job belongs to. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetImportJobInput"} + if s.ImportJobId == nil { + invalidParams.Add(request.NewErrParamRequired("ImportJobId")) + } + if s.ImportJobId != nil && len(*s.ImportJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImportJobId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *GetImportJobInput) SetImportJobId(v string) *GetImportJobInput { + s.ImportJobId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetImportJobInput) SetKnowledgeBaseId(v string) *GetImportJobInput { + s.KnowledgeBaseId = &v + return s +} + +type GetImportJobOutput struct { + _ struct{} `type:"structure"` + + // The import job. + ImportJob *ImportJobData `locationName:"importJob" 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 GetImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImportJobOutput) GoString() string { + return s.String() +} + +// SetImportJob sets the ImportJob field's value. +func (s *GetImportJobOutput) SetImportJob(v *ImportJobData) *GetImportJobOutput { + s.ImportJob = v + return s +} + +type GetKnowledgeBaseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 GetKnowledgeBaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKnowledgeBaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetKnowledgeBaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetKnowledgeBaseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetKnowledgeBaseInput) SetKnowledgeBaseId(v string) *GetKnowledgeBaseInput { + s.KnowledgeBaseId = &v + return s +} + +type GetKnowledgeBaseOutput struct { + _ struct{} `type:"structure"` + + // The knowledge base. + KnowledgeBase *KnowledgeBaseData `locationName:"knowledgeBase" 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 GetKnowledgeBaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetKnowledgeBaseOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBase sets the KnowledgeBase field's value. +func (s *GetKnowledgeBaseOutput) SetKnowledgeBase(v *KnowledgeBaseData) *GetKnowledgeBaseOutput { + s.KnowledgeBase = v + return s +} + +type GetQuickResponseInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should be a QUICK_RESPONSES type + // knowledge base. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `location:"uri" locationName:"quickResponseId" 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 GetQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetQuickResponseInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.QuickResponseId == nil { + invalidParams.Add(request.NewErrParamRequired("QuickResponseId")) + } + if s.QuickResponseId != nil && len(*s.QuickResponseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuickResponseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *GetQuickResponseInput) SetKnowledgeBaseId(v string) *GetQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *GetQuickResponseInput) SetQuickResponseId(v string) *GetQuickResponseInput { + s.QuickResponseId = &v + return s +} + +type GetQuickResponseOutput struct { + _ struct{} `type:"structure"` + + // The quick response. + QuickResponse *QuickResponseData `locationName:"quickResponse" 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 GetQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetQuickResponseOutput) GoString() string { + return s.String() +} + +// SetQuickResponse sets the QuickResponse field's value. +func (s *GetQuickResponseOutput) SetQuickResponse(v *QuickResponseData) *GetQuickResponseOutput { + s.QuickResponse = v + return s +} + +type GetRecommendationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The identifier of the session. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // SessionId is a required field + SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"` + + // The duration (in seconds) for which the call waits for a recommendation to + // be made available before returning. If a recommendation is available, the + // call returns sooner than WaitTimeSeconds. If no messages are available and + // the wait time expires, the call returns successfully with an empty list. + WaitTimeSeconds *int64 `location:"querystring" locationName:"waitTimeSeconds" 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 GetRecommendationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRecommendationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRecommendationsInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.SessionId == nil { + invalidParams.Add(request.NewErrParamRequired("SessionId")) + } + if s.SessionId != nil && len(*s.SessionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SessionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *GetRecommendationsInput) SetAssistantId(v string) *GetRecommendationsInput { + s.AssistantId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetRecommendationsInput) SetMaxResults(v int64) *GetRecommendationsInput { + s.MaxResults = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *GetRecommendationsInput) SetSessionId(v string) *GetRecommendationsInput { + s.SessionId = &v + return s +} + +// SetWaitTimeSeconds sets the WaitTimeSeconds field's value. +func (s *GetRecommendationsInput) SetWaitTimeSeconds(v int64) *GetRecommendationsInput { + s.WaitTimeSeconds = &v + return s +} + +type GetRecommendationsOutput struct { + _ struct{} `type:"structure"` + + // The recommendations. + // + // Recommendations is a required field + Recommendations []*RecommendationData `locationName:"recommendations" type:"list" required:"true"` + + // The triggers corresponding to recommendations. + Triggers []*RecommendationTrigger `locationName:"triggers" 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 GetRecommendationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationsOutput) GoString() string { + return s.String() +} + +// SetRecommendations sets the Recommendations field's value. +func (s *GetRecommendationsOutput) SetRecommendations(v []*RecommendationData) *GetRecommendationsOutput { + s.Recommendations = v + return s +} + +// SetTriggers sets the Triggers field's value. +func (s *GetRecommendationsOutput) SetTriggers(v []*RecommendationTrigger) *GetRecommendationsOutput { + s.Triggers = v + return s +} + +type GetSessionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The identifier of the session. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // SessionId is a required field + SessionId *string `location:"uri" locationName:"sessionId" 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 GetSessionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSessionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSessionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSessionInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.SessionId == nil { + invalidParams.Add(request.NewErrParamRequired("SessionId")) + } + if s.SessionId != nil && len(*s.SessionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SessionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *GetSessionInput) SetAssistantId(v string) *GetSessionInput { + s.AssistantId = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *GetSessionInput) SetSessionId(v string) *GetSessionInput { + s.SessionId = &v + return s +} + +type GetSessionOutput struct { + _ struct{} `type:"structure"` + + // The session. + Session *SessionData `locationName:"session" 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 GetSessionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSessionOutput) GoString() string { + return s.String() +} + +// SetSession sets the Session field's value. +func (s *GetSessionOutput) SetSession(v *SessionData) *GetSessionOutput { + s.Session = v + return s +} + +// The configuration information of the grouping of Amazon Q users. +type GroupingConfiguration struct { + _ struct{} `type:"structure"` + + // The criteria used for grouping Amazon Q users. + // + // The following is the list of supported criteria values. + // + // * RoutingProfileArn: Grouping the users by their Amazon Connect routing + // profile ARN (https://docs.aws.amazon.com/connect/latest/APIReference/API_RoutingProfile.html). + // User should have SearchRoutingProfile (https://docs.aws.amazon.com/connect/latest/APIReference/API_SearchRoutingProfiles.html) + // and DescribeRoutingProfile (https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribeRoutingProfile.html) + // permissions when setting criteria to this value. + // + // Criteria is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GroupingConfiguration's + // String and GoString methods. + Criteria *string `locationName:"criteria" min:"1" type:"string" sensitive:"true"` + + // The list of values that define different groups of Amazon Q users. + // + // * When setting criteria to RoutingProfileArn, you need to provide a list + // of ARNs of Amazon Connect routing profiles (https://docs.aws.amazon.com/connect/latest/APIReference/API_RoutingProfile.html) + // as values of this parameter. + Values []*string `locationName:"values" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GroupingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GroupingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GroupingConfiguration"} + if s.Criteria != nil && len(*s.Criteria) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Criteria", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCriteria sets the Criteria field's value. +func (s *GroupingConfiguration) SetCriteria(v string) *GroupingConfiguration { + s.Criteria = &v + return s +} + +// SetValues sets the Values field's value. +func (s *GroupingConfiguration) SetValues(v []*string) *GroupingConfiguration { + s.Values = v + return s +} + +// Offset specification to describe highlighting of document excerpts for rendering +// search results and recommendations. +type Highlight struct { + _ struct{} `type:"structure"` + + // The offset for the start of the highlight. + BeginOffsetInclusive *int64 `locationName:"beginOffsetInclusive" type:"integer"` + + // The offset for the end of the highlight. + EndOffsetExclusive *int64 `locationName:"endOffsetExclusive" 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 Highlight) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Highlight) GoString() string { + return s.String() +} + +// SetBeginOffsetInclusive sets the BeginOffsetInclusive field's value. +func (s *Highlight) SetBeginOffsetInclusive(v int64) *Highlight { + s.BeginOffsetInclusive = &v + return s +} + +// SetEndOffsetExclusive sets the EndOffsetExclusive field's value. +func (s *Highlight) SetEndOffsetExclusive(v int64) *Highlight { + s.EndOffsetExclusive = &v + return s +} + +// Summary information about the import job. +type ImportJobData struct { + _ struct{} `type:"structure"` + + // The timestamp when the import job was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The configuration information of the external data source. + ExternalSourceConfiguration *ExternalSourceConfiguration `locationName:"externalSourceConfiguration" type:"structure"` + + // The link to donwload the information of resource data that failed to be imported. + // + // FailedRecordReport is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ImportJobData's + // String and GoString methods. + FailedRecordReport *string `locationName:"failedRecordReport" min:"1" type:"string" sensitive:"true"` + + // The identifier of the import job. + // + // ImportJobId is a required field + ImportJobId *string `locationName:"importJobId" type:"string" required:"true"` + + // The type of the import job. + // + // ImportJobType is a required field + ImportJobType *string `locationName:"importJobType" type:"string" required:"true" enum:"ImportJobType"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The timestamp when the import job data was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The metadata fields of the imported Amazon Q resources. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The status of the import job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ImportJobStatus"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" min:"1" type:"string" required:"true"` + + // The download link to the resource file that is uploaded to the import job. + // + // Url is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ImportJobData's + // String and GoString methods. + // + // Url is a required field + Url *string `locationName:"url" min:"1" type:"string" required:"true" sensitive:"true"` + + // The expiration time of the URL as an epoch timestamp. + // + // UrlExpiry is a required field + UrlExpiry *time.Time `locationName:"urlExpiry" type:"timestamp" timestampFormat:"unixTimestamp" 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 ImportJobData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportJobData) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ImportJobData) SetCreatedTime(v time.Time) *ImportJobData { + s.CreatedTime = &v + return s +} + +// SetExternalSourceConfiguration sets the ExternalSourceConfiguration field's value. +func (s *ImportJobData) SetExternalSourceConfiguration(v *ExternalSourceConfiguration) *ImportJobData { + s.ExternalSourceConfiguration = v + return s +} + +// SetFailedRecordReport sets the FailedRecordReport field's value. +func (s *ImportJobData) SetFailedRecordReport(v string) *ImportJobData { + s.FailedRecordReport = &v + return s +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *ImportJobData) SetImportJobId(v string) *ImportJobData { + s.ImportJobId = &v + return s +} + +// SetImportJobType sets the ImportJobType field's value. +func (s *ImportJobData) SetImportJobType(v string) *ImportJobData { + s.ImportJobType = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ImportJobData) SetKnowledgeBaseArn(v string) *ImportJobData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ImportJobData) SetKnowledgeBaseId(v string) *ImportJobData { + s.KnowledgeBaseId = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ImportJobData) SetLastModifiedTime(v time.Time) *ImportJobData { + s.LastModifiedTime = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ImportJobData) SetMetadata(v map[string]*string) *ImportJobData { + s.Metadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ImportJobData) SetStatus(v string) *ImportJobData { + s.Status = &v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *ImportJobData) SetUploadId(v string) *ImportJobData { + s.UploadId = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *ImportJobData) SetUrl(v string) *ImportJobData { + s.Url = &v + return s +} + +// SetUrlExpiry sets the UrlExpiry field's value. +func (s *ImportJobData) SetUrlExpiry(v time.Time) *ImportJobData { + s.UrlExpiry = &v + return s +} + +// Summary information about the import job. +type ImportJobSummary struct { + _ struct{} `type:"structure"` + + // The timestamp when the import job was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The configuration information of the external source that the resource data + // are imported from. + ExternalSourceConfiguration *ExternalSourceConfiguration `locationName:"externalSourceConfiguration" type:"structure"` + + // The identifier of the import job. + // + // ImportJobId is a required field + ImportJobId *string `locationName:"importJobId" type:"string" required:"true"` + + // The type of import job. + // + // ImportJobType is a required field + ImportJobType *string `locationName:"importJobType" type:"string" required:"true" enum:"ImportJobType"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The timestamp when the import job was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The metadata fields of the imported Amazon Q resources. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The status of the import job. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ImportJobStatus"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" 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 ImportJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportJobSummary) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ImportJobSummary) SetCreatedTime(v time.Time) *ImportJobSummary { + s.CreatedTime = &v + return s +} + +// SetExternalSourceConfiguration sets the ExternalSourceConfiguration field's value. +func (s *ImportJobSummary) SetExternalSourceConfiguration(v *ExternalSourceConfiguration) *ImportJobSummary { + s.ExternalSourceConfiguration = v + return s +} + +// SetImportJobId sets the ImportJobId field's value. +func (s *ImportJobSummary) SetImportJobId(v string) *ImportJobSummary { + s.ImportJobId = &v + return s +} + +// SetImportJobType sets the ImportJobType field's value. +func (s *ImportJobSummary) SetImportJobType(v string) *ImportJobSummary { + s.ImportJobType = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *ImportJobSummary) SetKnowledgeBaseArn(v string) *ImportJobSummary { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ImportJobSummary) SetKnowledgeBaseId(v string) *ImportJobSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ImportJobSummary) SetLastModifiedTime(v time.Time) *ImportJobSummary { + s.LastModifiedTime = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ImportJobSummary) SetMetadata(v map[string]*string) *ImportJobSummary { + s.Metadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ImportJobSummary) SetStatus(v string) *ImportJobSummary { + s.Status = &v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *ImportJobSummary) SetUploadId(v string) *ImportJobSummary { + s.UploadId = &v + return s +} + +// Association information about the knowledge base. +type KnowledgeBaseAssociationData struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the knowledge base. + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + KnowledgeBaseId *string `locationName:"knowledgeBaseId" 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 KnowledgeBaseAssociationData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseAssociationData) GoString() string { + return s.String() +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *KnowledgeBaseAssociationData) SetKnowledgeBaseArn(v string) *KnowledgeBaseAssociationData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBaseAssociationData) SetKnowledgeBaseId(v string) *KnowledgeBaseAssociationData { + s.KnowledgeBaseId = &v + return s +} + +// Information about the knowledge base. +type KnowledgeBaseData struct { + _ struct{} `type:"structure"` + + // The description. + Description *string `locationName:"description" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The type of knowledge base. + // + // KnowledgeBaseType is a required field + KnowledgeBaseType *string `locationName:"knowledgeBaseType" type:"string" required:"true" enum:"KnowledgeBaseType"` + + // An epoch timestamp indicating the most recent content modification inside + // the knowledge base. If no content exists in a knowledge base, this value + // is unset. + LastContentModificationTime *time.Time `locationName:"lastContentModificationTime" type:"timestamp" timestampFormat:"unixTimestamp"` + + // The name of the knowledge base. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Information about how to render the content. + RenderingConfiguration *RenderingConfiguration `locationName:"renderingConfiguration" type:"structure"` + + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using + // the key to invoke Amazon Q. + // + // For more information about setting up a customer managed key for Amazon Q, + // see Enable Amazon Q in Connect for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // Source configuration information about the knowledge base. + SourceConfiguration *SourceConfiguration `locationName:"sourceConfiguration" type:"structure"` + + // The status of the knowledge base. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"KnowledgeBaseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseData) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *KnowledgeBaseData) SetDescription(v string) *KnowledgeBaseData { + s.Description = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *KnowledgeBaseData) SetKnowledgeBaseArn(v string) *KnowledgeBaseData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBaseData) SetKnowledgeBaseId(v string) *KnowledgeBaseData { + s.KnowledgeBaseId = &v + return s +} + +// SetKnowledgeBaseType sets the KnowledgeBaseType field's value. +func (s *KnowledgeBaseData) SetKnowledgeBaseType(v string) *KnowledgeBaseData { + s.KnowledgeBaseType = &v + return s +} + +// SetLastContentModificationTime sets the LastContentModificationTime field's value. +func (s *KnowledgeBaseData) SetLastContentModificationTime(v time.Time) *KnowledgeBaseData { + s.LastContentModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *KnowledgeBaseData) SetName(v string) *KnowledgeBaseData { + s.Name = &v + return s +} + +// SetRenderingConfiguration sets the RenderingConfiguration field's value. +func (s *KnowledgeBaseData) SetRenderingConfiguration(v *RenderingConfiguration) *KnowledgeBaseData { + s.RenderingConfiguration = v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *KnowledgeBaseData) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *KnowledgeBaseData { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetSourceConfiguration sets the SourceConfiguration field's value. +func (s *KnowledgeBaseData) SetSourceConfiguration(v *SourceConfiguration) *KnowledgeBaseData { + s.SourceConfiguration = v + return s +} + +// SetStatus sets the Status field's value. +func (s *KnowledgeBaseData) SetStatus(v string) *KnowledgeBaseData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *KnowledgeBaseData) SetTags(v map[string]*string) *KnowledgeBaseData { + s.Tags = v + return s +} + +// Summary information about the knowledge base. +type KnowledgeBaseSummary struct { + _ struct{} `type:"structure"` + + // The description of the knowledge base. + Description *string `locationName:"description" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The type of knowledge base. + // + // KnowledgeBaseType is a required field + KnowledgeBaseType *string `locationName:"knowledgeBaseType" type:"string" required:"true" enum:"KnowledgeBaseType"` + + // The name of the knowledge base. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Information about how to render the content. + RenderingConfiguration *RenderingConfiguration `locationName:"renderingConfiguration" type:"structure"` + + // The configuration information for the customer managed key used for encryption. + // + // This KMS key must have a policy that allows kms:CreateGrant, kms:DescribeKey, + // kms:Decrypt, and kms:GenerateDataKey* permissions to the IAM identity using + // the key to invoke Amazon Q. + // + // For more information about setting up a customer managed key for Amazon Q, + // see Enable Amazon Q in Connect for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `locationName:"serverSideEncryptionConfiguration" type:"structure"` + + // Configuration information about the external data source. + SourceConfiguration *SourceConfiguration `locationName:"sourceConfiguration" type:"structure"` + + // The status of the knowledge base summary. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"KnowledgeBaseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KnowledgeBaseSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *KnowledgeBaseSummary) SetDescription(v string) *KnowledgeBaseSummary { + s.Description = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *KnowledgeBaseSummary) SetKnowledgeBaseArn(v string) *KnowledgeBaseSummary { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *KnowledgeBaseSummary) SetKnowledgeBaseId(v string) *KnowledgeBaseSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetKnowledgeBaseType sets the KnowledgeBaseType field's value. +func (s *KnowledgeBaseSummary) SetKnowledgeBaseType(v string) *KnowledgeBaseSummary { + s.KnowledgeBaseType = &v + return s +} + +// SetName sets the Name field's value. +func (s *KnowledgeBaseSummary) SetName(v string) *KnowledgeBaseSummary { + s.Name = &v + return s +} + +// SetRenderingConfiguration sets the RenderingConfiguration field's value. +func (s *KnowledgeBaseSummary) SetRenderingConfiguration(v *RenderingConfiguration) *KnowledgeBaseSummary { + s.RenderingConfiguration = v + return s +} + +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *KnowledgeBaseSummary) SetServerSideEncryptionConfiguration(v *ServerSideEncryptionConfiguration) *KnowledgeBaseSummary { + s.ServerSideEncryptionConfiguration = v + return s +} + +// SetSourceConfiguration sets the SourceConfiguration field's value. +func (s *KnowledgeBaseSummary) SetSourceConfiguration(v *SourceConfiguration) *KnowledgeBaseSummary { + s.SourceConfiguration = v + return s +} + +// SetStatus sets the Status field's value. +func (s *KnowledgeBaseSummary) SetStatus(v string) *KnowledgeBaseSummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *KnowledgeBaseSummary) SetTags(v map[string]*string) *KnowledgeBaseSummary { + s.Tags = v + return s +} + +type ListAssistantAssociationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAssistantAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAssistantAssociationsInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *ListAssistantAssociationsInput) SetAssistantId(v string) *ListAssistantAssociationsInput { + s.AssistantId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAssistantAssociationsInput) SetMaxResults(v int64) *ListAssistantAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssistantAssociationsInput) SetNextToken(v string) *ListAssistantAssociationsInput { + s.NextToken = &v + return s +} + +type ListAssistantAssociationsOutput struct { + _ struct{} `type:"structure"` + + // Summary information about assistant associations. + // + // AssistantAssociationSummaries is a required field + AssistantAssociationSummaries []*AssistantAssociationSummary `locationName:"assistantAssociationSummaries" type:"list" required:"true"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssistantAssociationSummaries sets the AssistantAssociationSummaries field's value. +func (s *ListAssistantAssociationsOutput) SetAssistantAssociationSummaries(v []*AssistantAssociationSummary) *ListAssistantAssociationsOutput { + s.AssistantAssociationSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssistantAssociationsOutput) SetNextToken(v string) *ListAssistantAssociationsOutput { + s.NextToken = &v + return s +} + +type ListAssistantsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAssistantsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAssistantsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAssistantsInput) SetMaxResults(v int64) *ListAssistantsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssistantsInput) SetNextToken(v string) *ListAssistantsInput { + s.NextToken = &v + return s +} + +type ListAssistantsOutput struct { + _ struct{} `type:"structure"` + + // Information about the assistants. + // + // AssistantSummaries is a required field + AssistantSummaries []*AssistantSummary `locationName:"assistantSummaries" type:"list" required:"true"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAssistantsOutput) GoString() string { + return s.String() +} + +// SetAssistantSummaries sets the AssistantSummaries field's value. +func (s *ListAssistantsOutput) SetAssistantSummaries(v []*AssistantSummary) *ListAssistantsOutput { + s.AssistantSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAssistantsOutput) SetNextToken(v string) *ListAssistantsOutput { + s.NextToken = &v + return s +} + +type ListContentsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListContentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListContentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListContentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListContentsInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListContentsInput) SetKnowledgeBaseId(v string) *ListContentsInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListContentsInput) SetMaxResults(v int64) *ListContentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListContentsInput) SetNextToken(v string) *ListContentsInput { + s.NextToken = &v + return s +} + +type ListContentsOutput struct { + _ struct{} `type:"structure"` + + // Information about the content. + // + // ContentSummaries is a required field + ContentSummaries []*ContentSummary `locationName:"contentSummaries" type:"list" required:"true"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListContentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListContentsOutput) GoString() string { + return s.String() +} + +// SetContentSummaries sets the ContentSummaries field's value. +func (s *ListContentsOutput) SetContentSummaries(v []*ContentSummary) *ListContentsOutput { + s.ContentSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListContentsOutput) SetNextToken(v string) *ListContentsOutput { + s.NextToken = &v + return s +} + +type ListImportJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListImportJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListImportJobsInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListImportJobsInput) SetKnowledgeBaseId(v string) *ListImportJobsInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListImportJobsInput) SetMaxResults(v int64) *ListImportJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImportJobsInput) SetNextToken(v string) *ListImportJobsInput { + s.NextToken = &v + return s +} + +type ListImportJobsOutput struct { + _ struct{} `type:"structure"` + + // Summary information about the import jobs. + // + // ImportJobSummaries is a required field + ImportJobSummaries []*ImportJobSummary `locationName:"importJobSummaries" type:"list" required:"true"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportJobsOutput) GoString() string { + return s.String() +} + +// SetImportJobSummaries sets the ImportJobSummaries field's value. +func (s *ListImportJobsOutput) SetImportJobSummaries(v []*ImportJobSummary) *ListImportJobsOutput { + s.ImportJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImportJobsOutput) SetNextToken(v string) *ListImportJobsOutput { + s.NextToken = &v + return s +} + +type ListKnowledgeBasesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListKnowledgeBasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListKnowledgeBasesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListKnowledgeBasesInput) SetMaxResults(v int64) *ListKnowledgeBasesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKnowledgeBasesInput) SetNextToken(v string) *ListKnowledgeBasesInput { + s.NextToken = &v + return s +} + +type ListKnowledgeBasesOutput struct { + _ struct{} `type:"structure"` + + // Information about the knowledge bases. + // + // KnowledgeBaseSummaries is a required field + KnowledgeBaseSummaries []*KnowledgeBaseSummary `locationName:"knowledgeBaseSummaries" type:"list" required:"true"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListKnowledgeBasesOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBaseSummaries sets the KnowledgeBaseSummaries field's value. +func (s *ListKnowledgeBasesOutput) SetKnowledgeBaseSummaries(v []*KnowledgeBaseSummary) *ListKnowledgeBasesOutput { + s.KnowledgeBaseSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKnowledgeBasesOutput) SetNextToken(v string) *ListKnowledgeBasesOutput { + s.NextToken = &v + return s +} + +type ListQuickResponsesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListQuickResponsesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListQuickResponsesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListQuickResponsesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListQuickResponsesInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *ListQuickResponsesInput) SetKnowledgeBaseId(v string) *ListQuickResponsesInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListQuickResponsesInput) SetMaxResults(v int64) *ListQuickResponsesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListQuickResponsesInput) SetNextToken(v string) *ListQuickResponsesInput { + s.NextToken = &v + return s +} + +type ListQuickResponsesOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Summary information about the quick responses. + // + // QuickResponseSummaries is a required field + QuickResponseSummaries []*QuickResponseSummary `locationName:"quickResponseSummaries" 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 ListQuickResponsesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListQuickResponsesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListQuickResponsesOutput) SetNextToken(v string) *ListQuickResponsesOutput { + s.NextToken = &v + return s +} + +// SetQuickResponseSummaries sets the QuickResponseSummaries field's value. +func (s *ListQuickResponsesOutput) SetQuickResponseSummaries(v []*QuickResponseSummary) *ListQuickResponsesOutput { + s.QuickResponseSummaries = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the resource. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" 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 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"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// An error occurred when creating a recommendation. +type NotifyRecommendationsReceivedError struct { + _ struct{} `type:"structure"` + + // A recommendation is causing an error. + Message *string `locationName:"message" type:"string"` + + // The identifier of the recommendation that is in error. + RecommendationId *string `locationName:"recommendationId" 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 NotifyRecommendationsReceivedError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotifyRecommendationsReceivedError) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *NotifyRecommendationsReceivedError) SetMessage(v string) *NotifyRecommendationsReceivedError { + s.Message = &v + return s +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *NotifyRecommendationsReceivedError) SetRecommendationId(v string) *NotifyRecommendationsReceivedError { + s.RecommendationId = &v + return s +} + +type NotifyRecommendationsReceivedInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The identifiers of the recommendations. + // + // RecommendationIds is a required field + RecommendationIds []*string `locationName:"recommendationIds" type:"list" required:"true"` + + // The identifier of the session. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // SessionId is a required field + SessionId *string `location:"uri" locationName:"sessionId" 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 NotifyRecommendationsReceivedInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotifyRecommendationsReceivedInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NotifyRecommendationsReceivedInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NotifyRecommendationsReceivedInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.RecommendationIds == nil { + invalidParams.Add(request.NewErrParamRequired("RecommendationIds")) + } + if s.SessionId == nil { + invalidParams.Add(request.NewErrParamRequired("SessionId")) + } + if s.SessionId != nil && len(*s.SessionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SessionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *NotifyRecommendationsReceivedInput) SetAssistantId(v string) *NotifyRecommendationsReceivedInput { + s.AssistantId = &v + return s +} + +// SetRecommendationIds sets the RecommendationIds field's value. +func (s *NotifyRecommendationsReceivedInput) SetRecommendationIds(v []*string) *NotifyRecommendationsReceivedInput { + s.RecommendationIds = v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *NotifyRecommendationsReceivedInput) SetSessionId(v string) *NotifyRecommendationsReceivedInput { + s.SessionId = &v + return s +} + +type NotifyRecommendationsReceivedOutput struct { + _ struct{} `type:"structure"` + + // The identifiers of recommendations that are causing errors. + Errors []*NotifyRecommendationsReceivedError `locationName:"errors" type:"list"` + + // The identifiers of the recommendations. + RecommendationIds []*string `locationName:"recommendationIds" 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 NotifyRecommendationsReceivedOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NotifyRecommendationsReceivedOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *NotifyRecommendationsReceivedOutput) SetErrors(v []*NotifyRecommendationsReceivedError) *NotifyRecommendationsReceivedOutput { + s.Errors = v + return s +} + +// SetRecommendationIds sets the RecommendationIds field's value. +func (s *NotifyRecommendationsReceivedOutput) SetRecommendationIds(v []*string) *NotifyRecommendationsReceivedOutput { + s.RecommendationIds = v + return s +} + +// The provided revisionId does not match, indicating the content has been modified +// since it was last read. +type PreconditionFailedException 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 PreconditionFailedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PreconditionFailedException) GoString() string { + return s.String() +} + +func newErrorPreconditionFailedException(v protocol.ResponseMetadata) error { + return &PreconditionFailedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *PreconditionFailedException) Code() string { + return "PreconditionFailedException" +} + +// Message returns the exception's message. +func (s *PreconditionFailedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *PreconditionFailedException) OrigErr() error { + return nil +} + +func (s *PreconditionFailedException) 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 *PreconditionFailedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *PreconditionFailedException) RequestID() string { + return s.RespMetadata.RequestID +} + +type PutFeedbackInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // Information about the feedback provided. + // + // ContentFeedback is a required field + ContentFeedback *ContentFeedbackData `locationName:"contentFeedback" type:"structure" required:"true"` + + // The identifier of the feedback target. + // + // TargetId is a required field + TargetId *string `locationName:"targetId" type:"string" required:"true"` + + // The type of the feedback target. + // + // TargetType is a required field + TargetType *string `locationName:"targetType" type:"string" required:"true" enum:"TargetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutFeedbackInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutFeedbackInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.ContentFeedback == nil { + invalidParams.Add(request.NewErrParamRequired("ContentFeedback")) + } + if s.TargetId == nil { + invalidParams.Add(request.NewErrParamRequired("TargetId")) + } + if s.TargetType == nil { + invalidParams.Add(request.NewErrParamRequired("TargetType")) + } + if s.ContentFeedback != nil { + if err := s.ContentFeedback.Validate(); err != nil { + invalidParams.AddNested("ContentFeedback", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *PutFeedbackInput) SetAssistantId(v string) *PutFeedbackInput { + s.AssistantId = &v + return s +} + +// SetContentFeedback sets the ContentFeedback field's value. +func (s *PutFeedbackInput) SetContentFeedback(v *ContentFeedbackData) *PutFeedbackInput { + s.ContentFeedback = v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *PutFeedbackInput) SetTargetId(v string) *PutFeedbackInput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *PutFeedbackInput) SetTargetType(v string) *PutFeedbackInput { + s.TargetType = &v + return s +} + +type PutFeedbackOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // Information about the feedback provided. + // + // ContentFeedback is a required field + ContentFeedback *ContentFeedbackData `locationName:"contentFeedback" type:"structure" required:"true"` + + // The identifier of the feedback target. + // + // TargetId is a required field + TargetId *string `locationName:"targetId" type:"string" required:"true"` + + // The type of the feedback target. + // + // TargetType is a required field + TargetType *string `locationName:"targetType" type:"string" required:"true" enum:"TargetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackOutput) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *PutFeedbackOutput) SetAssistantArn(v string) *PutFeedbackOutput { + s.AssistantArn = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *PutFeedbackOutput) SetAssistantId(v string) *PutFeedbackOutput { + s.AssistantId = &v + return s +} + +// SetContentFeedback sets the ContentFeedback field's value. +func (s *PutFeedbackOutput) SetContentFeedback(v *ContentFeedbackData) *PutFeedbackOutput { + s.ContentFeedback = v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *PutFeedbackOutput) SetTargetId(v string) *PutFeedbackOutput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *PutFeedbackOutput) SetTargetType(v string) *PutFeedbackOutput { + s.TargetType = &v + return s +} + +type QueryAssistantInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Information about how to query content. + QueryCondition []*QueryCondition `locationName:"queryCondition" type:"list"` + + // The text to search for. + // + // QueryText is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QueryAssistantInput's + // String and GoString methods. + // + // QueryText is a required field + QueryText *string `locationName:"queryText" type:"string" required:"true" sensitive:"true"` + + // The identifier of the Amazon Q session. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + SessionId *string `locationName:"sessionId" 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 QueryAssistantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryAssistantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QueryAssistantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QueryAssistantInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.QueryText == nil { + invalidParams.Add(request.NewErrParamRequired("QueryText")) + } + if s.QueryCondition != nil { + for i, v := range s.QueryCondition { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "QueryCondition", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *QueryAssistantInput) SetAssistantId(v string) *QueryAssistantInput { + s.AssistantId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *QueryAssistantInput) SetMaxResults(v int64) *QueryAssistantInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *QueryAssistantInput) SetNextToken(v string) *QueryAssistantInput { + s.NextToken = &v + return s +} + +// SetQueryCondition sets the QueryCondition field's value. +func (s *QueryAssistantInput) SetQueryCondition(v []*QueryCondition) *QueryAssistantInput { + s.QueryCondition = v + return s +} + +// SetQueryText sets the QueryText field's value. +func (s *QueryAssistantInput) SetQueryText(v string) *QueryAssistantInput { + s.QueryText = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *QueryAssistantInput) SetSessionId(v string) *QueryAssistantInput { + s.SessionId = &v + return s +} + +type QueryAssistantOutput struct { + _ struct{} `type:"structure"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The results of the query. + // + // Results is a required field + Results []*ResultData `locationName:"results" 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 QueryAssistantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryAssistantOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *QueryAssistantOutput) SetNextToken(v string) *QueryAssistantOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *QueryAssistantOutput) SetResults(v []*ResultData) *QueryAssistantOutput { + s.Results = v + return s +} + +// Information about how to query content. +type QueryCondition struct { + _ struct{} `type:"structure"` + + // The condition for the query. + Single *QueryConditionItem `locationName:"single" 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 QueryCondition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryCondition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QueryCondition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QueryCondition"} + if s.Single != nil { + if err := s.Single.Validate(); err != nil { + invalidParams.AddNested("Single", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSingle sets the Single field's value. +func (s *QueryCondition) SetSingle(v *QueryConditionItem) *QueryCondition { + s.Single = v + return s +} + +// The condition for the query. +type QueryConditionItem struct { + _ struct{} `type:"structure"` + + // The comparison operator for query condition to query on. + // + // Comparator is a required field + Comparator *string `locationName:"comparator" type:"string" required:"true" enum:"QueryConditionComparisonOperator"` + + // The name of the field for query condition to query on. + // + // Field is a required field + Field *string `locationName:"field" type:"string" required:"true" enum:"QueryConditionFieldName"` + + // The value for the query condition to query on. + // + // Value is a required field + Value *string `locationName:"value" 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 QueryConditionItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryConditionItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QueryConditionItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QueryConditionItem"} + if s.Comparator == nil { + invalidParams.Add(request.NewErrParamRequired("Comparator")) + } + if s.Field == nil { + invalidParams.Add(request.NewErrParamRequired("Field")) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComparator sets the Comparator field's value. +func (s *QueryConditionItem) SetComparator(v string) *QueryConditionItem { + s.Comparator = &v + return s +} + +// SetField sets the Field field's value. +func (s *QueryConditionItem) SetField(v string) *QueryConditionItem { + s.Field = &v + return s +} + +// SetValue sets the Value field's value. +func (s *QueryConditionItem) SetValue(v string) *QueryConditionItem { + s.Value = &v + return s +} + +// Data associated with the QUERY RecommendationTriggerType. +type QueryRecommendationTriggerData struct { + _ struct{} `type:"structure"` + + // The text associated with the recommendation trigger. + // + // Text is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QueryRecommendationTriggerData's + // String and GoString methods. + Text *string `locationName:"text" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryRecommendationTriggerData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueryRecommendationTriggerData) GoString() string { + return s.String() +} + +// SetText sets the Text field's value. +func (s *QueryRecommendationTriggerData) SetText(v string) *QueryRecommendationTriggerData { + s.Text = &v + return s +} + +// The container quick response content. +type QuickResponseContentProvider struct { + _ struct{} `type:"structure"` + + // The content of the quick response. + // + // Content is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseContentProvider's + // String and GoString methods. + Content *string `locationName:"content" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseContentProvider) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseContentProvider) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *QuickResponseContentProvider) SetContent(v string) *QuickResponseContentProvider { + s.Content = &v + return s +} + +// The content of the quick response stored in different media types. +type QuickResponseContents struct { + _ struct{} `type:"structure"` + + // The container quick response content. + Markdown *QuickResponseContentProvider `locationName:"markdown" type:"structure"` + + // The container quick response content. + PlainText *QuickResponseContentProvider `locationName:"plainText" 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 QuickResponseContents) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseContents) GoString() string { + return s.String() +} + +// SetMarkdown sets the Markdown field's value. +func (s *QuickResponseContents) SetMarkdown(v *QuickResponseContentProvider) *QuickResponseContents { + s.Markdown = v + return s +} + +// SetPlainText sets the PlainText field's value. +func (s *QuickResponseContents) SetPlainText(v *QuickResponseContentProvider) *QuickResponseContents { + s.PlainText = v + return s +} + +// Information about the quick response. +type QuickResponseData struct { + _ struct{} `type:"structure"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The contents of the quick response. + Contents *QuickResponseContents `locationName:"contents" type:"structure"` + + // The timestamp when the quick response was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information of the user groups that the quick response + // is accessible to. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + Language *string `locationName:"language" min:"2" type:"string"` + + // The Amazon Resource Name (ARN) of the user who last updated the quick response + // data. + LastModifiedBy *string `locationName:"lastModifiedBy" min:"1" type:"string"` + + // The timestamp when the quick response data was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the quick response. + // + // QuickResponseArn is a required field + QuickResponseArn *string `locationName:"quickResponseArn" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `locationName:"quickResponseId" type:"string" required:"true"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" min:"1" type:"string"` + + // The status of the quick response data. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"QuickResponseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseData) GoString() string { + return s.String() +} + +// SetChannels sets the Channels field's value. +func (s *QuickResponseData) SetChannels(v []*string) *QuickResponseData { + s.Channels = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *QuickResponseData) SetContentType(v string) *QuickResponseData { + s.ContentType = &v + return s +} + +// SetContents sets the Contents field's value. +func (s *QuickResponseData) SetContents(v *QuickResponseContents) *QuickResponseData { + s.Contents = v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *QuickResponseData) SetCreatedTime(v time.Time) *QuickResponseData { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *QuickResponseData) SetDescription(v string) *QuickResponseData { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *QuickResponseData) SetGroupingConfiguration(v *GroupingConfiguration) *QuickResponseData { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *QuickResponseData) SetIsActive(v bool) *QuickResponseData { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *QuickResponseData) SetKnowledgeBaseArn(v string) *QuickResponseData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *QuickResponseData) SetKnowledgeBaseId(v string) *QuickResponseData { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *QuickResponseData) SetLanguage(v string) *QuickResponseData { + s.Language = &v + return s +} + +// SetLastModifiedBy sets the LastModifiedBy field's value. +func (s *QuickResponseData) SetLastModifiedBy(v string) *QuickResponseData { + s.LastModifiedBy = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickResponseData) SetLastModifiedTime(v time.Time) *QuickResponseData { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseData) SetName(v string) *QuickResponseData { + s.Name = &v + return s +} + +// SetQuickResponseArn sets the QuickResponseArn field's value. +func (s *QuickResponseData) SetQuickResponseArn(v string) *QuickResponseData { + s.QuickResponseArn = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *QuickResponseData) SetQuickResponseId(v string) *QuickResponseData { + s.QuickResponseId = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *QuickResponseData) SetShortcutKey(v string) *QuickResponseData { + s.ShortcutKey = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *QuickResponseData) SetStatus(v string) *QuickResponseData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *QuickResponseData) SetTags(v map[string]*string) *QuickResponseData { + s.Tags = v + return s +} + +// The container of quick response data. +type QuickResponseDataProvider struct { + _ struct{} `type:"structure"` + + // The content of the quick response. + // + // Content is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseDataProvider's + // String and GoString methods. + Content *string `locationName:"content" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseDataProvider) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseDataProvider) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseDataProvider) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseDataProvider"} + if s.Content != nil && len(*s.Content) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Content", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContent sets the Content field's value. +func (s *QuickResponseDataProvider) SetContent(v string) *QuickResponseDataProvider { + s.Content = &v + return s +} + +// The quick response fields to filter the quick response query results by. +// +// The following is the list of supported field names. +// +// - name +// +// - description +// +// - shortcutKey +// +// - isActive +// +// - channels +// +// - language +// +// - contentType +// +// - createdTime +// +// - lastModifiedTime +// +// - lastModifiedBy +// +// - groupingConfiguration.criteria +// +// - groupingConfiguration.values +type QuickResponseFilterField struct { + _ struct{} `type:"structure"` + + // Whether to treat null value as a match for the attribute field. + IncludeNoExistence *bool `locationName:"includeNoExistence" type:"boolean"` + + // The name of the attribute field to filter the quick responses by. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The operator to use for filtering. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"QuickResponseFilterOperator"` + + // The values of attribute field to filter the quick response by. + Values []*string `locationName:"values" 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 QuickResponseFilterField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseFilterField) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseFilterField) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseFilterField"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeNoExistence sets the IncludeNoExistence field's value. +func (s *QuickResponseFilterField) SetIncludeNoExistence(v bool) *QuickResponseFilterField { + s.IncludeNoExistence = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseFilterField) SetName(v string) *QuickResponseFilterField { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *QuickResponseFilterField) SetOperator(v string) *QuickResponseFilterField { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *QuickResponseFilterField) SetValues(v []*string) *QuickResponseFilterField { + s.Values = v + return s +} + +// The quick response fields to order the quick response query results by. +// +// The following is the list of supported field names. +// +// - name +// +// - description +// +// - shortcutKey +// +// - isActive +// +// - channels +// +// - language +// +// - contentType +// +// - createdTime +// +// - lastModifiedTime +// +// - lastModifiedBy +// +// - groupingConfiguration.criteria +// +// - groupingConfiguration.values +type QuickResponseOrderField struct { + _ struct{} `type:"structure"` + + // The name of the attribute to order the quick response query results by. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The order at which the quick responses are sorted by. + Order *string `locationName:"order" type:"string" enum:"Order"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseOrderField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseOrderField) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseOrderField) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseOrderField"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *QuickResponseOrderField) SetName(v string) *QuickResponseOrderField { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *QuickResponseOrderField) SetOrder(v string) *QuickResponseOrderField { + s.Order = &v + return s +} + +// The quick response fields to query quick responses by. +// +// The following is the list of supported field names. +// +// - content +// +// - name +// +// - description +// +// - shortcutKey +type QuickResponseQueryField struct { + _ struct{} `type:"structure"` + + // Whether the query expects only exact matches on the attribute field values. + // The results of the query will only include exact matches if this parameter + // is set to false. + AllowFuzziness *bool `locationName:"allowFuzziness" type:"boolean"` + + // The name of the attribute to query the quick responses by. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The operator to use for matching attribute field values in the query. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"QuickResponseQueryOperator"` + + // The importance of the attribute field when calculating query result relevancy + // scores. The value set for this parameter affects the ordering of search results. + Priority *string `locationName:"priority" type:"string" enum:"Priority"` + + // The values of the attribute to query the quick responses by. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseQueryField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseQueryField) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseQueryField) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseQueryField"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowFuzziness sets the AllowFuzziness field's value. +func (s *QuickResponseQueryField) SetAllowFuzziness(v bool) *QuickResponseQueryField { + s.AllowFuzziness = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseQueryField) SetName(v string) *QuickResponseQueryField { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *QuickResponseQueryField) SetOperator(v string) *QuickResponseQueryField { + s.Operator = &v + return s +} + +// SetPriority sets the Priority field's value. +func (s *QuickResponseQueryField) SetPriority(v string) *QuickResponseQueryField { + s.Priority = &v + return s +} + +// SetValues sets the Values field's value. +func (s *QuickResponseQueryField) SetValues(v []*string) *QuickResponseQueryField { + s.Values = v + return s +} + +// Information about the import job. +type QuickResponseSearchExpression struct { + _ struct{} `type:"structure"` + + // The configuration of filtering rules applied to quick response query results. + Filters []*QuickResponseFilterField `locationName:"filters" type:"list"` + + // The quick response attribute fields on which the query results are ordered. + OrderOnField *QuickResponseOrderField `locationName:"orderOnField" type:"structure"` + + // The quick response query expressions. + Queries []*QuickResponseQueryField `locationName:"queries" 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 QuickResponseSearchExpression) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSearchExpression) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QuickResponseSearchExpression) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QuickResponseSearchExpression"} + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.OrderOnField != nil { + if err := s.OrderOnField.Validate(); err != nil { + invalidParams.AddNested("OrderOnField", err.(request.ErrInvalidParams)) + } + } + if s.Queries != nil { + for i, v := range s.Queries { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Queries", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *QuickResponseSearchExpression) SetFilters(v []*QuickResponseFilterField) *QuickResponseSearchExpression { + s.Filters = v + return s +} + +// SetOrderOnField sets the OrderOnField field's value. +func (s *QuickResponseSearchExpression) SetOrderOnField(v *QuickResponseOrderField) *QuickResponseSearchExpression { + s.OrderOnField = v + return s +} + +// SetQueries sets the Queries field's value. +func (s *QuickResponseSearchExpression) SetQueries(v []*QuickResponseQueryField) *QuickResponseSearchExpression { + s.Queries = v + return s +} + +// The result of quick response search. +type QuickResponseSearchResultData struct { + _ struct{} `type:"structure"` + + // The user defined contact attributes that are resolved when the search result + // is returned. + // + // AttributesInterpolated is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseSearchResultData's + // String and GoString methods. + AttributesInterpolated []*string `locationName:"attributesInterpolated" type:"list" sensitive:"true"` + + // The user defined contact attributes that are not resolved when the search + // result is returned. + // + // AttributesNotInterpolated is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by QuickResponseSearchResultData's + // String and GoString methods. + AttributesNotInterpolated []*string `locationName:"attributesNotInterpolated" type:"list" sensitive:"true"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The contents of the quick response. + // + // Contents is a required field + Contents *QuickResponseContents `locationName:"contents" type:"structure" required:"true"` + + // The timestamp when the quick response was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information of the user groups that the quick response + // is accessible to. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + // + // IsActive is a required field + IsActive *bool `locationName:"isActive" type:"boolean" required:"true"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + Language *string `locationName:"language" min:"2" type:"string"` + + // The Amazon Resource Name (ARN) of the user who last updated the quick response + // search result data. + LastModifiedBy *string `locationName:"lastModifiedBy" min:"1" type:"string"` + + // The timestamp when the quick response search result data was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the quick response. + // + // QuickResponseArn is a required field + QuickResponseArn *string `locationName:"quickResponseArn" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `locationName:"quickResponseId" type:"string" required:"true"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" min:"1" type:"string"` + + // The resource status of the quick response. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"QuickResponseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSearchResultData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSearchResultData) GoString() string { + return s.String() +} + +// SetAttributesInterpolated sets the AttributesInterpolated field's value. +func (s *QuickResponseSearchResultData) SetAttributesInterpolated(v []*string) *QuickResponseSearchResultData { + s.AttributesInterpolated = v + return s +} + +// SetAttributesNotInterpolated sets the AttributesNotInterpolated field's value. +func (s *QuickResponseSearchResultData) SetAttributesNotInterpolated(v []*string) *QuickResponseSearchResultData { + s.AttributesNotInterpolated = v + return s +} + +// SetChannels sets the Channels field's value. +func (s *QuickResponseSearchResultData) SetChannels(v []*string) *QuickResponseSearchResultData { + s.Channels = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *QuickResponseSearchResultData) SetContentType(v string) *QuickResponseSearchResultData { + s.ContentType = &v + return s +} + +// SetContents sets the Contents field's value. +func (s *QuickResponseSearchResultData) SetContents(v *QuickResponseContents) *QuickResponseSearchResultData { + s.Contents = v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *QuickResponseSearchResultData) SetCreatedTime(v time.Time) *QuickResponseSearchResultData { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *QuickResponseSearchResultData) SetDescription(v string) *QuickResponseSearchResultData { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *QuickResponseSearchResultData) SetGroupingConfiguration(v *GroupingConfiguration) *QuickResponseSearchResultData { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *QuickResponseSearchResultData) SetIsActive(v bool) *QuickResponseSearchResultData { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *QuickResponseSearchResultData) SetKnowledgeBaseArn(v string) *QuickResponseSearchResultData { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *QuickResponseSearchResultData) SetKnowledgeBaseId(v string) *QuickResponseSearchResultData { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *QuickResponseSearchResultData) SetLanguage(v string) *QuickResponseSearchResultData { + s.Language = &v + return s +} + +// SetLastModifiedBy sets the LastModifiedBy field's value. +func (s *QuickResponseSearchResultData) SetLastModifiedBy(v string) *QuickResponseSearchResultData { + s.LastModifiedBy = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickResponseSearchResultData) SetLastModifiedTime(v time.Time) *QuickResponseSearchResultData { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseSearchResultData) SetName(v string) *QuickResponseSearchResultData { + s.Name = &v + return s +} + +// SetQuickResponseArn sets the QuickResponseArn field's value. +func (s *QuickResponseSearchResultData) SetQuickResponseArn(v string) *QuickResponseSearchResultData { + s.QuickResponseArn = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *QuickResponseSearchResultData) SetQuickResponseId(v string) *QuickResponseSearchResultData { + s.QuickResponseId = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *QuickResponseSearchResultData) SetShortcutKey(v string) *QuickResponseSearchResultData { + s.ShortcutKey = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *QuickResponseSearchResultData) SetStatus(v string) *QuickResponseSearchResultData { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *QuickResponseSearchResultData) SetTags(v map[string]*string) *QuickResponseSearchResultData { + s.Tags = v + return s +} + +// The summary information about the quick response. +type QuickResponseSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The timestamp when the quick response was created. + // + // CreatedTime is a required field + CreatedTime *time.Time `locationName:"createdTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The Amazon Resource Name (ARN) of the knowledge base. + // + // KnowledgeBaseArn is a required field + KnowledgeBaseArn *string `locationName:"knowledgeBaseArn" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the user who last updated the quick response + // data. + LastModifiedBy *string `locationName:"lastModifiedBy" min:"1" type:"string"` + + // The timestamp when the quick response summary was last modified. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" timestampFormat:"unixTimestamp" required:"true"` + + // The name of the quick response. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the quick response. + // + // QuickResponseArn is a required field + QuickResponseArn *string `locationName:"quickResponseArn" type:"string" required:"true"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `locationName:"quickResponseId" type:"string" required:"true"` + + // The resource status of the quick response. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"QuickResponseStatus"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QuickResponseSummary) GoString() string { + return s.String() +} + +// SetChannels sets the Channels field's value. +func (s *QuickResponseSummary) SetChannels(v []*string) *QuickResponseSummary { + s.Channels = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *QuickResponseSummary) SetContentType(v string) *QuickResponseSummary { + s.ContentType = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *QuickResponseSummary) SetCreatedTime(v time.Time) *QuickResponseSummary { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *QuickResponseSummary) SetDescription(v string) *QuickResponseSummary { + s.Description = &v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *QuickResponseSummary) SetIsActive(v bool) *QuickResponseSummary { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseArn sets the KnowledgeBaseArn field's value. +func (s *QuickResponseSummary) SetKnowledgeBaseArn(v string) *QuickResponseSummary { + s.KnowledgeBaseArn = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *QuickResponseSummary) SetKnowledgeBaseId(v string) *QuickResponseSummary { + s.KnowledgeBaseId = &v + return s +} + +// SetLastModifiedBy sets the LastModifiedBy field's value. +func (s *QuickResponseSummary) SetLastModifiedBy(v string) *QuickResponseSummary { + s.LastModifiedBy = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *QuickResponseSummary) SetLastModifiedTime(v time.Time) *QuickResponseSummary { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *QuickResponseSummary) SetName(v string) *QuickResponseSummary { + s.Name = &v + return s +} + +// SetQuickResponseArn sets the QuickResponseArn field's value. +func (s *QuickResponseSummary) SetQuickResponseArn(v string) *QuickResponseSummary { + s.QuickResponseArn = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *QuickResponseSummary) SetQuickResponseId(v string) *QuickResponseSummary { + s.QuickResponseId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *QuickResponseSummary) SetStatus(v string) *QuickResponseSummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *QuickResponseSummary) SetTags(v map[string]*string) *QuickResponseSummary { + s.Tags = v + return s +} + +// Details about the source content ranking data. +type RankingData struct { + _ struct{} `type:"structure"` + + // The relevance score of the content. + RelevanceLevel *string `locationName:"relevanceLevel" type:"string" enum:"RelevanceLevel"` + + // The relevance level of the recommendation. + RelevanceScore *float64 `locationName:"relevanceScore" 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 RankingData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RankingData) GoString() string { + return s.String() +} + +// SetRelevanceLevel sets the RelevanceLevel field's value. +func (s *RankingData) SetRelevanceLevel(v string) *RankingData { + s.RelevanceLevel = &v + return s +} + +// SetRelevanceScore sets the RelevanceScore field's value. +func (s *RankingData) SetRelevanceScore(v float64) *RankingData { + s.RelevanceScore = &v + return s +} + +// Information about the recommendation. +type RecommendationData struct { + _ struct{} `type:"structure"` + + // Summary of the recommended content. + Data *DataSummary `locationName:"data" type:"structure"` + + // The recommended document. + Document *Document `locationName:"document" type:"structure"` + + // The identifier of the recommendation. + // + // RecommendationId is a required field + RecommendationId *string `locationName:"recommendationId" min:"1" type:"string" required:"true"` + + // The relevance level of the recommendation. + RelevanceLevel *string `locationName:"relevanceLevel" type:"string" enum:"RelevanceLevel"` + + // The relevance score of the recommendation. + RelevanceScore *float64 `locationName:"relevanceScore" type:"double"` + + // The type of recommendation. + Type *string `locationName:"type" type:"string" enum:"RecommendationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationData) GoString() string { + return s.String() +} + +// SetData sets the Data field's value. +func (s *RecommendationData) SetData(v *DataSummary) *RecommendationData { + s.Data = v + return s +} + +// SetDocument sets the Document field's value. +func (s *RecommendationData) SetDocument(v *Document) *RecommendationData { + s.Document = v + return s +} + +// SetRecommendationId sets the RecommendationId field's value. +func (s *RecommendationData) SetRecommendationId(v string) *RecommendationData { + s.RecommendationId = &v + return s +} + +// SetRelevanceLevel sets the RelevanceLevel field's value. +func (s *RecommendationData) SetRelevanceLevel(v string) *RecommendationData { + s.RelevanceLevel = &v + return s +} + +// SetRelevanceScore sets the RelevanceScore field's value. +func (s *RecommendationData) SetRelevanceScore(v float64) *RecommendationData { + s.RelevanceScore = &v + return s +} + +// SetType sets the Type field's value. +func (s *RecommendationData) SetType(v string) *RecommendationData { + s.Type = &v + return s +} + +// A recommendation trigger provides context on the event that produced the +// referenced recommendations. Recommendations are only referenced in recommendationIds +// by a single RecommendationTrigger. +type RecommendationTrigger struct { + _ struct{} `type:"structure"` + + // A union type containing information related to the trigger. + // + // Data is a required field + Data *RecommendationTriggerData `locationName:"data" type:"structure" required:"true"` + + // The identifier of the recommendation trigger. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The identifiers of the recommendations. + // + // RecommendationIds is a required field + RecommendationIds []*string `locationName:"recommendationIds" type:"list" required:"true"` + + // The source of the recommendation trigger. + // + // * ISSUE_DETECTION: The corresponding recommendations were triggered by + // a Contact Lens issue. + // + // * RULE_EVALUATION: The corresponding recommendations were triggered by + // a Contact Lens rule. + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"RecommendationSourceType"` + + // The type of recommendation trigger. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RecommendationTriggerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationTrigger) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationTrigger) GoString() string { + return s.String() +} + +// SetData sets the Data field's value. +func (s *RecommendationTrigger) SetData(v *RecommendationTriggerData) *RecommendationTrigger { + s.Data = v + return s +} + +// SetId sets the Id field's value. +func (s *RecommendationTrigger) SetId(v string) *RecommendationTrigger { + s.Id = &v + return s +} + +// SetRecommendationIds sets the RecommendationIds field's value. +func (s *RecommendationTrigger) SetRecommendationIds(v []*string) *RecommendationTrigger { + s.RecommendationIds = v + return s +} + +// SetSource sets the Source field's value. +func (s *RecommendationTrigger) SetSource(v string) *RecommendationTrigger { + s.Source = &v + return s +} + +// SetType sets the Type field's value. +func (s *RecommendationTrigger) SetType(v string) *RecommendationTrigger { + s.Type = &v + return s +} + +// A union type containing information related to the trigger. +type RecommendationTriggerData struct { + _ struct{} `type:"structure"` + + // Data associated with the QUERY RecommendationTriggerType. + Query *QueryRecommendationTriggerData `locationName:"query" 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 RecommendationTriggerData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationTriggerData) GoString() string { + return s.String() +} + +// SetQuery sets the Query field's value. +func (s *RecommendationTriggerData) SetQuery(v *QueryRecommendationTriggerData) *RecommendationTriggerData { + s.Query = v + return s +} + +type RemoveKnowledgeBaseTemplateUriInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" 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 RemoveKnowledgeBaseTemplateUriInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RemoveKnowledgeBaseTemplateUriInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RemoveKnowledgeBaseTemplateUriInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RemoveKnowledgeBaseTemplateUriInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *RemoveKnowledgeBaseTemplateUriInput) SetKnowledgeBaseId(v string) *RemoveKnowledgeBaseTemplateUriInput { + s.KnowledgeBaseId = &v + return s +} + +type RemoveKnowledgeBaseTemplateUriOutput 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 RemoveKnowledgeBaseTemplateUriOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RemoveKnowledgeBaseTemplateUriOutput) GoString() string { + return s.String() +} + +// Information about how to render the content. +type RenderingConfiguration struct { + _ struct{} `type:"structure"` + + // A URI template containing exactly one variable in ${variableName} format. + // This can only be set for EXTERNAL knowledge bases. For Salesforce, ServiceNow, + // and Zendesk, the variable must be one of the following: + // + // * Salesforce: Id, ArticleNumber, VersionNumber, Title, PublishStatus, + // or IsDeleted + // + // * ServiceNow: number, short_description, sys_mod_count, workflow_state, + // or active + // + // * Zendesk: id, title, updated_at, or draft + // + // The variable is replaced with the actual value for a piece of content when + // calling GetContent (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetContent.html). + TemplateUri *string `locationName:"templateUri" 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 RenderingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RenderingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RenderingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RenderingConfiguration"} + if s.TemplateUri != nil && len(*s.TemplateUri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateUri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTemplateUri sets the TemplateUri field's value. +func (s *RenderingConfiguration) SetTemplateUri(v string) *RenderingConfiguration { + s.TemplateUri = &v + return s +} + +// The request reached the service more than 15 minutes after the date stamp +// on the request or more than 15 minutes after the request expiration date +// (such as for pre-signed URLs), or the date stamp on the request is more than +// 15 minutes in the future. +type RequestTimeoutException 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 RequestTimeoutException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestTimeoutException) GoString() string { + return s.String() +} + +func newErrorRequestTimeoutException(v protocol.ResponseMetadata) error { + return &RequestTimeoutException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *RequestTimeoutException) Code() string { + return "RequestTimeoutException" +} + +// Message returns the exception's message. +func (s *RequestTimeoutException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *RequestTimeoutException) OrigErr() error { + return nil +} + +func (s *RequestTimeoutException) 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 *RequestTimeoutException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *RequestTimeoutException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified resource does not exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The specified resource name. + ResourceName *string `locationName:"resourceName" 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 +} + +// Information about the result. +type ResultData struct { + _ struct{} `type:"structure"` + + // Summary of the recommended content. + Data *DataSummary `locationName:"data" type:"structure"` + + // The document. + Document *Document `locationName:"document" type:"structure"` + + // The relevance score of the results. + RelevanceScore *float64 `locationName:"relevanceScore" type:"double"` + + // The identifier of the result data. + // + // ResultId is a required field + ResultId *string `locationName:"resultId" type:"string" required:"true"` + + // The type of the query result. + Type *string `locationName:"type" type:"string" enum:"QueryResultType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResultData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResultData) GoString() string { + return s.String() +} + +// SetData sets the Data field's value. +func (s *ResultData) SetData(v *DataSummary) *ResultData { + s.Data = v + return s +} + +// SetDocument sets the Document field's value. +func (s *ResultData) SetDocument(v *Document) *ResultData { + s.Document = v + return s +} + +// SetRelevanceScore sets the RelevanceScore field's value. +func (s *ResultData) SetRelevanceScore(v float64) *ResultData { + s.RelevanceScore = &v + return s +} + +// SetResultId sets the ResultId field's value. +func (s *ResultData) SetResultId(v string) *ResultData { + s.ResultId = &v + return s +} + +// SetType sets the Type field's value. +func (s *ResultData) SetType(v string) *ResultData { + s.Type = &v + return s +} + +type SearchContentInput struct { + _ struct{} `type:"structure"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The search expression to filter results. + // + // SearchExpression is a required field + SearchExpression *SearchExpression `locationName:"searchExpression" 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 SearchContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchContentInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchExpression == nil { + invalidParams.Add(request.NewErrParamRequired("SearchExpression")) + } + if s.SearchExpression != nil { + if err := s.SearchExpression.Validate(); err != nil { + invalidParams.AddNested("SearchExpression", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *SearchContentInput) SetKnowledgeBaseId(v string) *SearchContentInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchContentInput) SetMaxResults(v int64) *SearchContentInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchContentInput) SetNextToken(v string) *SearchContentInput { + s.NextToken = &v + return s +} + +// SetSearchExpression sets the SearchExpression field's value. +func (s *SearchContentInput) SetSearchExpression(v *SearchExpression) *SearchContentInput { + s.SearchExpression = v + return s +} + +type SearchContentOutput struct { + _ struct{} `type:"structure"` + + // Summary information about the content. + // + // ContentSummaries is a required field + ContentSummaries []*ContentSummary `locationName:"contentSummaries" type:"list" required:"true"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchContentOutput) GoString() string { + return s.String() +} + +// SetContentSummaries sets the ContentSummaries field's value. +func (s *SearchContentOutput) SetContentSummaries(v []*ContentSummary) *SearchContentOutput { + s.ContentSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchContentOutput) SetNextToken(v string) *SearchContentOutput { + s.NextToken = &v + return s +} + +// The search expression. +type SearchExpression struct { + _ struct{} `type:"structure"` + + // The search expression filters. + // + // Filters is a required field + Filters []*Filter `locationName:"filters" 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 SearchExpression) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchExpression) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchExpression) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchExpression"} + if s.Filters == nil { + invalidParams.Add(request.NewErrParamRequired("Filters")) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *SearchExpression) SetFilters(v []*Filter) *SearchExpression { + s.Filters = v + return s +} + +type SearchQuickResponsesInput struct { + _ struct{} `type:"structure"` + + // The user-defined Amazon Connect contact attributes (https://docs.aws.amazon.com/connect/latest/adminguide/connect-attrib-list.html#user-defined-attributes) + // to be resolved when search results are returned. + // + // Attributes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchQuickResponsesInput's + // String and GoString methods. + Attributes map[string]*string `locationName:"attributes" type:"map" sensitive:"true"` + + // The identifier of the knowledge base. This should be a QUICK_RESPONSES type + // knowledge base. Can be either the ID or the ARN. URLs cannot contain the + // ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The search expression for querying the quick response. + // + // SearchExpression is a required field + SearchExpression *QuickResponseSearchExpression `locationName:"searchExpression" 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 SearchQuickResponsesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchQuickResponsesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchQuickResponsesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchQuickResponsesInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchExpression == nil { + invalidParams.Add(request.NewErrParamRequired("SearchExpression")) + } + if s.SearchExpression != nil { + if err := s.SearchExpression.Validate(); err != nil { + invalidParams.AddNested("SearchExpression", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributes sets the Attributes field's value. +func (s *SearchQuickResponsesInput) SetAttributes(v map[string]*string) *SearchQuickResponsesInput { + s.Attributes = v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *SearchQuickResponsesInput) SetKnowledgeBaseId(v string) *SearchQuickResponsesInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchQuickResponsesInput) SetMaxResults(v int64) *SearchQuickResponsesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchQuickResponsesInput) SetNextToken(v string) *SearchQuickResponsesInput { + s.NextToken = &v + return s +} + +// SetSearchExpression sets the SearchExpression field's value. +func (s *SearchQuickResponsesInput) SetSearchExpression(v *QuickResponseSearchExpression) *SearchQuickResponsesInput { + s.SearchExpression = v + return s +} + +type SearchQuickResponsesOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The results of the quick response search. + // + // Results is a required field + Results []*QuickResponseSearchResultData `locationName:"results" 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 SearchQuickResponsesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchQuickResponsesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchQuickResponsesOutput) SetNextToken(v string) *SearchQuickResponsesOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *SearchQuickResponsesOutput) SetResults(v []*QuickResponseSearchResultData) *SearchQuickResponsesOutput { + s.Results = v + return s +} + +type SearchSessionsInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. Can be either the ID or the ARN. + // URLs cannot contain the ARN. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The search expression to filter results. + // + // SearchExpression is a required field + SearchExpression *SearchExpression `locationName:"searchExpression" 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 SearchSessionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchSessionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchSessionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchSessionsInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchExpression == nil { + invalidParams.Add(request.NewErrParamRequired("SearchExpression")) + } + if s.SearchExpression != nil { + if err := s.SearchExpression.Validate(); err != nil { + invalidParams.AddNested("SearchExpression", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *SearchSessionsInput) SetAssistantId(v string) *SearchSessionsInput { + s.AssistantId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchSessionsInput) SetMaxResults(v int64) *SearchSessionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchSessionsInput) SetNextToken(v string) *SearchSessionsInput { + s.NextToken = &v + return s +} + +// SetSearchExpression sets the SearchExpression field's value. +func (s *SearchSessionsInput) SetSearchExpression(v *SearchExpression) *SearchSessionsInput { + s.SearchExpression = v + return s +} + +type SearchSessionsOutput struct { + _ struct{} `type:"structure"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Summary information about the sessions. + // + // SessionSummaries is a required field + SessionSummaries []*SessionSummary `locationName:"sessionSummaries" 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 SearchSessionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchSessionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchSessionsOutput) SetNextToken(v string) *SearchSessionsOutput { + s.NextToken = &v + return s +} + +// SetSessionSummaries sets the SessionSummaries field's value. +func (s *SearchSessionsOutput) SetSessionSummaries(v []*SessionSummary) *SearchSessionsOutput { + s.SessionSummaries = v + return s +} + +// The configuration information for the customer managed key used for encryption. +type ServerSideEncryptionConfiguration struct { + _ struct{} `type:"structure"` + + // The customer managed key used for encryption. For more information about + // setting up a customer managed key for Amazon Q, see Enable Amazon Q in Connect + // for your instance (https://docs.aws.amazon.com/connect/latest/adminguide/enable-q.html). + // For information about valid ID values, see Key identifiers (KeyId) (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id). + KmsKeyId *string `locationName:"kmsKeyId" 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 ServerSideEncryptionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServerSideEncryptionConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ServerSideEncryptionConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ServerSideEncryptionConfiguration"} + if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *ServerSideEncryptionConfiguration) SetKmsKeyId(v string) *ServerSideEncryptionConfiguration { + s.KmsKeyId = &v + return s +} + +// You've exceeded your service quota. To perform the requested action, remove +// some of the relevant resources, or use service quotas to request a service +// quota increase. +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 +} + +// Information about the session. +type SessionData struct { + _ struct{} `type:"structure"` + + // The description of the session. + Description *string `locationName:"description" min:"1" type:"string"` + + // The configuration information for the session integration. + IntegrationConfiguration *SessionIntegrationConfiguration `locationName:"integrationConfiguration" type:"structure"` + + // The name of the session. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the session. + // + // SessionArn is a required field + SessionArn *string `locationName:"sessionArn" type:"string" required:"true"` + + // The identifier of the session. + // + // SessionId is a required field + SessionId *string `locationName:"sessionId" type:"string" required:"true"` + + // The tags used to organize, track, or control access for this resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionData) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *SessionData) SetDescription(v string) *SessionData { + s.Description = &v + return s +} + +// SetIntegrationConfiguration sets the IntegrationConfiguration field's value. +func (s *SessionData) SetIntegrationConfiguration(v *SessionIntegrationConfiguration) *SessionData { + s.IntegrationConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *SessionData) SetName(v string) *SessionData { + s.Name = &v + return s +} + +// SetSessionArn sets the SessionArn field's value. +func (s *SessionData) SetSessionArn(v string) *SessionData { + s.SessionArn = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *SessionData) SetSessionId(v string) *SessionData { + s.SessionId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *SessionData) SetTags(v map[string]*string) *SessionData { + s.Tags = v + return s +} + +// The configuration information for the session integration. +type SessionIntegrationConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the integrated Amazon SNS topic used for + // streaming chat messages. + TopicIntegrationArn *string `locationName:"topicIntegrationArn" 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 SessionIntegrationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionIntegrationConfiguration) GoString() string { + return s.String() +} + +// SetTopicIntegrationArn sets the TopicIntegrationArn field's value. +func (s *SessionIntegrationConfiguration) SetTopicIntegrationArn(v string) *SessionIntegrationConfiguration { + s.TopicIntegrationArn = &v + return s +} + +// Summary information about the session. +type SessionSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the session. + // + // SessionArn is a required field + SessionArn *string `locationName:"sessionArn" type:"string" required:"true"` + + // The identifier of the session. + // + // SessionId is a required field + SessionId *string `locationName:"sessionId" 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 SessionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionSummary) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *SessionSummary) SetAssistantArn(v string) *SessionSummary { + s.AssistantArn = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *SessionSummary) SetAssistantId(v string) *SessionSummary { + s.AssistantId = &v + return s +} + +// SetSessionArn sets the SessionArn field's value. +func (s *SessionSummary) SetSessionArn(v string) *SessionSummary { + s.SessionArn = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *SessionSummary) SetSessionId(v string) *SessionSummary { + s.SessionId = &v + return s +} + +// Configuration information about the external data source. +type SourceConfiguration struct { + _ struct{} `type:"structure"` + + // Configuration information for Amazon AppIntegrations to automatically ingest + // content. + AppIntegrations *AppIntegrationsConfiguration `locationName:"appIntegrations" 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 SourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SourceConfiguration"} + if s.AppIntegrations != nil { + if err := s.AppIntegrations.Validate(); err != nil { + invalidParams.AddNested("AppIntegrations", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAppIntegrations sets the AppIntegrations field's value. +func (s *SourceConfiguration) SetAppIntegrations(v *AppIntegrationsConfiguration) *SourceConfiguration { + s.AppIntegrations = v + return s +} + +// Details about the source content data. +type SourceContentDataDetails struct { + _ struct{} `type:"structure"` + + // The identifier of the source content. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // Details about the source content ranking data. + // + // RankingData is a required field + RankingData *RankingData `locationName:"rankingData" type:"structure" required:"true"` + + // Details about the source content text data. + // + // TextData is a required field + TextData *TextData `locationName:"textData" type:"structure" required:"true"` + + // The type of the source content. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"SourceContentType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceContentDataDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SourceContentDataDetails) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *SourceContentDataDetails) SetId(v string) *SourceContentDataDetails { + s.Id = &v + return s +} + +// SetRankingData sets the RankingData field's value. +func (s *SourceContentDataDetails) SetRankingData(v *RankingData) *SourceContentDataDetails { + s.RankingData = v + return s +} + +// SetTextData sets the TextData field's value. +func (s *SourceContentDataDetails) SetTextData(v *TextData) *SourceContentDataDetails { + s.TextData = v + return s +} + +// SetType sets the Type field's value. +func (s *SourceContentDataDetails) SetType(v string) *SourceContentDataDetails { + s.Type = &v + return s +} + +type StartContentUploadInput struct { + _ struct{} `type:"structure"` + + // The type of content to upload. + // + // ContentType is a required field + ContentType *string `locationName:"contentType" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The expected expiration time of the generated presigned URL, specified in + // minutes. + PresignedUrlTimeToLive *int64 `locationName:"presignedUrlTimeToLive" min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartContentUploadInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartContentUploadInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartContentUploadInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartContentUploadInput"} + if s.ContentType == nil { + invalidParams.Add(request.NewErrParamRequired("ContentType")) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.PresignedUrlTimeToLive != nil && *s.PresignedUrlTimeToLive < 1 { + invalidParams.Add(request.NewErrParamMinValue("PresignedUrlTimeToLive", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContentType sets the ContentType field's value. +func (s *StartContentUploadInput) SetContentType(v string) *StartContentUploadInput { + s.ContentType = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *StartContentUploadInput) SetKnowledgeBaseId(v string) *StartContentUploadInput { + s.KnowledgeBaseId = &v + return s +} + +// SetPresignedUrlTimeToLive sets the PresignedUrlTimeToLive field's value. +func (s *StartContentUploadInput) SetPresignedUrlTimeToLive(v int64) *StartContentUploadInput { + s.PresignedUrlTimeToLive = &v + return s +} + +type StartContentUploadOutput struct { + _ struct{} `type:"structure"` + + // The headers to include in the upload. + // + // HeadersToInclude is a required field + HeadersToInclude map[string]*string `locationName:"headersToInclude" type:"map" required:"true"` + + // The identifier of the upload. + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" min:"1" type:"string" required:"true"` + + // The URL of the upload. + // + // Url is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by StartContentUploadOutput's + // String and GoString methods. + // + // Url is a required field + Url *string `locationName:"url" min:"1" type:"string" required:"true" sensitive:"true"` + + // The expiration time of the URL as an epoch timestamp. + // + // UrlExpiry is a required field + UrlExpiry *time.Time `locationName:"urlExpiry" type:"timestamp" timestampFormat:"unixTimestamp" 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 StartContentUploadOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartContentUploadOutput) GoString() string { + return s.String() +} + +// SetHeadersToInclude sets the HeadersToInclude field's value. +func (s *StartContentUploadOutput) SetHeadersToInclude(v map[string]*string) *StartContentUploadOutput { + s.HeadersToInclude = v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *StartContentUploadOutput) SetUploadId(v string) *StartContentUploadOutput { + s.UploadId = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *StartContentUploadOutput) SetUrl(v string) *StartContentUploadOutput { + s.Url = &v + return s +} + +// SetUrlExpiry sets the UrlExpiry field's value. +func (s *StartContentUploadOutput) SetUrlExpiry(v time.Time) *StartContentUploadOutput { + s.UrlExpiry = &v + return s +} + +type StartImportJobInput struct { + _ struct{} `type:"structure"` + + // The tags used to organize, track, or control access for this resource. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The configuration information of the external source that the resource data + // are imported from. + ExternalSourceConfiguration *ExternalSourceConfiguration `locationName:"externalSourceConfiguration" type:"structure"` + + // The type of the import job. + // + // * For importing quick response resource, set the value to QUICK_RESPONSES. + // + // ImportJobType is a required field + ImportJobType *string `locationName:"importJobType" type:"string" required:"true" enum:"ImportJobType"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // * For importing Amazon Q quick responses, this should be a QUICK_RESPONSES + // type knowledge base. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The metadata fields of the imported Amazon Q resources. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html). + // + // UploadId is a required field + UploadId *string `locationName:"uploadId" 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 StartImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartImportJobInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ImportJobType == nil { + invalidParams.Add(request.NewErrParamRequired("ImportJobType")) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.UploadId == nil { + invalidParams.Add(request.NewErrParamRequired("UploadId")) + } + if s.UploadId != nil && len(*s.UploadId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) + } + if s.ExternalSourceConfiguration != nil { + if err := s.ExternalSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("ExternalSourceConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartImportJobInput) SetClientToken(v string) *StartImportJobInput { + s.ClientToken = &v + return s +} + +// SetExternalSourceConfiguration sets the ExternalSourceConfiguration field's value. +func (s *StartImportJobInput) SetExternalSourceConfiguration(v *ExternalSourceConfiguration) *StartImportJobInput { + s.ExternalSourceConfiguration = v + return s +} + +// SetImportJobType sets the ImportJobType field's value. +func (s *StartImportJobInput) SetImportJobType(v string) *StartImportJobInput { + s.ImportJobType = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *StartImportJobInput) SetKnowledgeBaseId(v string) *StartImportJobInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *StartImportJobInput) SetMetadata(v map[string]*string) *StartImportJobInput { + s.Metadata = v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *StartImportJobInput) SetUploadId(v string) *StartImportJobInput { + s.UploadId = &v + return s +} + +type StartImportJobOutput struct { + _ struct{} `type:"structure"` + + // The import job. + ImportJob *ImportJobData `locationName:"importJob" 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 StartImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartImportJobOutput) GoString() string { + return s.String() +} + +// SetImportJob sets the ImportJob field's value. +func (s *StartImportJobOutput) SetImportJob(v *ImportJobData) *StartImportJobOutput { + s.ImportJob = v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The tags used to organize, track, or control access for this resource. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// Details about the source content text data. +type TextData struct { + _ struct{} `type:"structure"` + + // The text of the document. + Excerpt *DocumentText `locationName:"excerpt" type:"structure"` + + // The text of the document. + Title *DocumentText `locationName:"title" 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 TextData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextData) GoString() string { + return s.String() +} + +// SetExcerpt sets the Excerpt field's value. +func (s *TextData) SetExcerpt(v *DocumentText) *TextData { + s.Excerpt = v + return s +} + +// SetTitle sets the Title field's value. +func (s *TextData) SetTitle(v *DocumentText) *TextData { + s.Title = v + return s +} + +// Amazon Q in Connect throws this exception if you have too many tags in your +// tag set. +type TooManyTagsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The specified resource name. + ResourceName *string `locationName:"resourceName" 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" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the resource. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The tag keys. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateContentInput struct { + _ struct{} `type:"structure"` + + // The identifier of the content. Can be either the ID or the ARN. URLs cannot + // contain the ARN. + // + // ContentId is a required field + ContentId *string `location:"uri" locationName:"contentId" type:"string" required:"true"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // A key/value map to store attributes without affecting tagging or recommendations. + // For example, when synchronizing data between an external system and Amazon + // Q, you can store an external version identifier as metadata to utilize for + // determining drift. + Metadata map[string]*string `locationName:"metadata" type:"map"` + + // The URI for the article. If the knowledge base has a templateUri, setting + // this argument overrides it for this piece of content. To remove an existing + // overrideLinkOurUri, exclude this argument and set removeOverrideLinkOutUri + // to true. + OverrideLinkOutUri *string `locationName:"overrideLinkOutUri" min:"1" type:"string"` + + // Unset the existing overrideLinkOutUri if it exists. + RemoveOverrideLinkOutUri *bool `locationName:"removeOverrideLinkOutUri" type:"boolean"` + + // The revisionId of the content resource to update, taken from an earlier call + // to GetContent, GetContentSummary, SearchContent, or ListContents. If included, + // this argument acts as an optimistic lock to ensure content was not modified + // since it was last read. If it has been modified, this API throws a PreconditionFailedException. + RevisionId *string `locationName:"revisionId" min:"1" type:"string"` + + // The title of the content. + Title *string `locationName:"title" min:"1" type:"string"` + + // A pointer to the uploaded asset. This value is returned by StartContentUpload + // (https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html). + UploadId *string `locationName:"uploadId" 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 UpdateContentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateContentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateContentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateContentInput"} + if s.ContentId == nil { + invalidParams.Add(request.NewErrParamRequired("ContentId")) + } + if s.ContentId != nil && len(*s.ContentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContentId", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.OverrideLinkOutUri != nil && len(*s.OverrideLinkOutUri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OverrideLinkOutUri", 1)) + } + if s.RevisionId != nil && len(*s.RevisionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1)) + } + if s.Title != nil && len(*s.Title) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Title", 1)) + } + if s.UploadId != nil && len(*s.UploadId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UploadId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContentId sets the ContentId field's value. +func (s *UpdateContentInput) SetContentId(v string) *UpdateContentInput { + s.ContentId = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateContentInput) SetKnowledgeBaseId(v string) *UpdateContentInput { + s.KnowledgeBaseId = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *UpdateContentInput) SetMetadata(v map[string]*string) *UpdateContentInput { + s.Metadata = v + return s +} + +// SetOverrideLinkOutUri sets the OverrideLinkOutUri field's value. +func (s *UpdateContentInput) SetOverrideLinkOutUri(v string) *UpdateContentInput { + s.OverrideLinkOutUri = &v + return s +} + +// SetRemoveOverrideLinkOutUri sets the RemoveOverrideLinkOutUri field's value. +func (s *UpdateContentInput) SetRemoveOverrideLinkOutUri(v bool) *UpdateContentInput { + s.RemoveOverrideLinkOutUri = &v + return s +} + +// SetRevisionId sets the RevisionId field's value. +func (s *UpdateContentInput) SetRevisionId(v string) *UpdateContentInput { + s.RevisionId = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *UpdateContentInput) SetTitle(v string) *UpdateContentInput { + s.Title = &v + return s +} + +// SetUploadId sets the UploadId field's value. +func (s *UpdateContentInput) SetUploadId(v string) *UpdateContentInput { + s.UploadId = &v + return s +} + +type UpdateContentOutput struct { + _ struct{} `type:"structure"` + + // The content. + Content *ContentData `locationName:"content" 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 UpdateContentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateContentOutput) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *UpdateContentOutput) SetContent(v *ContentData) *UpdateContentOutput { + s.Content = v + return s +} + +type UpdateKnowledgeBaseTemplateUriInput struct { + _ struct{} `type:"structure"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The template URI to update. + // + // TemplateUri is a required field + TemplateUri *string `locationName:"templateUri" 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 UpdateKnowledgeBaseTemplateUriInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKnowledgeBaseTemplateUriInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateKnowledgeBaseTemplateUriInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateKnowledgeBaseTemplateUriInput"} + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.TemplateUri == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateUri")) + } + if s.TemplateUri != nil && len(*s.TemplateUri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateUri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateKnowledgeBaseTemplateUriInput) SetKnowledgeBaseId(v string) *UpdateKnowledgeBaseTemplateUriInput { + s.KnowledgeBaseId = &v + return s +} + +// SetTemplateUri sets the TemplateUri field's value. +func (s *UpdateKnowledgeBaseTemplateUriInput) SetTemplateUri(v string) *UpdateKnowledgeBaseTemplateUriInput { + s.TemplateUri = &v + return s +} + +type UpdateKnowledgeBaseTemplateUriOutput struct { + _ struct{} `type:"structure"` + + // The knowledge base to update. + KnowledgeBase *KnowledgeBaseData `locationName:"knowledgeBase" 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 UpdateKnowledgeBaseTemplateUriOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateKnowledgeBaseTemplateUriOutput) GoString() string { + return s.String() +} + +// SetKnowledgeBase sets the KnowledgeBase field's value. +func (s *UpdateKnowledgeBaseTemplateUriOutput) SetKnowledgeBase(v *KnowledgeBaseData) *UpdateKnowledgeBaseTemplateUriOutput { + s.KnowledgeBase = v + return s +} + +type UpdateQuickResponseInput struct { + _ struct{} `type:"structure"` + + // The Amazon Connect contact channels this quick response applies to. The supported + // contact channel types include Chat. + Channels []*string `locationName:"channels" type:"list"` + + // The updated content of the quick response. + Content *QuickResponseDataProvider `locationName:"content" type:"structure"` + + // The media type of the quick response content. + // + // * Use application/x.quickresponse;format=plain for quick response written + // in plain text. + // + // * Use application/x.quickresponse;format=markdown for quick response written + // in richtext. + ContentType *string `locationName:"contentType" type:"string"` + + // The updated description of the quick response. + Description *string `locationName:"description" min:"1" type:"string"` + + // The updated grouping configuration of the quick response. + GroupingConfiguration *GroupingConfiguration `locationName:"groupingConfiguration" type:"structure"` + + // Whether the quick response is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The identifier of the knowledge base. This should not be a QUICK_RESPONSES + // type knowledge base if you're storing Amazon Q Content resource to it. Can + // be either the ID or the ARN. URLs cannot contain the ARN. + // + // KnowledgeBaseId is a required field + KnowledgeBaseId *string `location:"uri" locationName:"knowledgeBaseId" type:"string" required:"true"` + + // The language code value for the language in which the quick response is written. + // The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, + // ja_JP, ko_KR, pt_BR, zh_CN, zh_TW + Language *string `locationName:"language" min:"2" type:"string"` + + // The name of the quick response. + Name *string `locationName:"name" min:"1" type:"string"` + + // The identifier of the quick response. + // + // QuickResponseId is a required field + QuickResponseId *string `location:"uri" locationName:"quickResponseId" type:"string" required:"true"` + + // Whether to remove the description from the quick response. + RemoveDescription *bool `locationName:"removeDescription" type:"boolean"` + + // Whether to remove the grouping configuration of the quick response. + RemoveGroupingConfiguration *bool `locationName:"removeGroupingConfiguration" type:"boolean"` + + // Whether to remove the shortcut key of the quick response. + RemoveShortcutKey *bool `locationName:"removeShortcutKey" type:"boolean"` + + // The shortcut key of the quick response. The value should be unique across + // the knowledge base. + ShortcutKey *string `locationName:"shortcutKey" 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 UpdateQuickResponseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateQuickResponseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateQuickResponseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateQuickResponseInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.KnowledgeBaseId == nil { + invalidParams.Add(request.NewErrParamRequired("KnowledgeBaseId")) + } + if s.KnowledgeBaseId != nil && len(*s.KnowledgeBaseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KnowledgeBaseId", 1)) + } + if s.Language != nil && len(*s.Language) < 2 { + invalidParams.Add(request.NewErrParamMinLen("Language", 2)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.QuickResponseId == nil { + invalidParams.Add(request.NewErrParamRequired("QuickResponseId")) + } + if s.QuickResponseId != nil && len(*s.QuickResponseId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuickResponseId", 1)) + } + if s.ShortcutKey != nil && len(*s.ShortcutKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShortcutKey", 1)) + } + if s.Content != nil { + if err := s.Content.Validate(); err != nil { + invalidParams.AddNested("Content", err.(request.ErrInvalidParams)) + } + } + if s.GroupingConfiguration != nil { + if err := s.GroupingConfiguration.Validate(); err != nil { + invalidParams.AddNested("GroupingConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannels sets the Channels field's value. +func (s *UpdateQuickResponseInput) SetChannels(v []*string) *UpdateQuickResponseInput { + s.Channels = v + return s +} + +// SetContent sets the Content field's value. +func (s *UpdateQuickResponseInput) SetContent(v *QuickResponseDataProvider) *UpdateQuickResponseInput { + s.Content = v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *UpdateQuickResponseInput) SetContentType(v string) *UpdateQuickResponseInput { + s.ContentType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateQuickResponseInput) SetDescription(v string) *UpdateQuickResponseInput { + s.Description = &v + return s +} + +// SetGroupingConfiguration sets the GroupingConfiguration field's value. +func (s *UpdateQuickResponseInput) SetGroupingConfiguration(v *GroupingConfiguration) *UpdateQuickResponseInput { + s.GroupingConfiguration = v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *UpdateQuickResponseInput) SetIsActive(v bool) *UpdateQuickResponseInput { + s.IsActive = &v + return s +} + +// SetKnowledgeBaseId sets the KnowledgeBaseId field's value. +func (s *UpdateQuickResponseInput) SetKnowledgeBaseId(v string) *UpdateQuickResponseInput { + s.KnowledgeBaseId = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *UpdateQuickResponseInput) SetLanguage(v string) *UpdateQuickResponseInput { + s.Language = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateQuickResponseInput) SetName(v string) *UpdateQuickResponseInput { + s.Name = &v + return s +} + +// SetQuickResponseId sets the QuickResponseId field's value. +func (s *UpdateQuickResponseInput) SetQuickResponseId(v string) *UpdateQuickResponseInput { + s.QuickResponseId = &v + return s +} + +// SetRemoveDescription sets the RemoveDescription field's value. +func (s *UpdateQuickResponseInput) SetRemoveDescription(v bool) *UpdateQuickResponseInput { + s.RemoveDescription = &v + return s +} + +// SetRemoveGroupingConfiguration sets the RemoveGroupingConfiguration field's value. +func (s *UpdateQuickResponseInput) SetRemoveGroupingConfiguration(v bool) *UpdateQuickResponseInput { + s.RemoveGroupingConfiguration = &v + return s +} + +// SetRemoveShortcutKey sets the RemoveShortcutKey field's value. +func (s *UpdateQuickResponseInput) SetRemoveShortcutKey(v bool) *UpdateQuickResponseInput { + s.RemoveShortcutKey = &v + return s +} + +// SetShortcutKey sets the ShortcutKey field's value. +func (s *UpdateQuickResponseInput) SetShortcutKey(v string) *UpdateQuickResponseInput { + s.ShortcutKey = &v + return s +} + +type UpdateQuickResponseOutput struct { + _ struct{} `type:"structure"` + + // The quick response. + QuickResponse *QuickResponseData `locationName:"quickResponse" 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 UpdateQuickResponseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateQuickResponseOutput) GoString() string { + return s.String() +} + +// SetQuickResponse sets the QuickResponse field's value. +func (s *UpdateQuickResponseOutput) SetQuickResponse(v *QuickResponseData) *UpdateQuickResponseOutput { + s.QuickResponse = v + return s +} + +// The input fails to satisfy the constraints specified by a 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 +} + +const ( + // AssistantCapabilityTypeV1 is a AssistantCapabilityType enum value + AssistantCapabilityTypeV1 = "V1" + + // AssistantCapabilityTypeV2 is a AssistantCapabilityType enum value + AssistantCapabilityTypeV2 = "V2" +) + +// AssistantCapabilityType_Values returns all elements of the AssistantCapabilityType enum +func AssistantCapabilityType_Values() []string { + return []string{ + AssistantCapabilityTypeV1, + AssistantCapabilityTypeV2, + } +} + +const ( + // AssistantStatusCreateInProgress is a AssistantStatus enum value + AssistantStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // AssistantStatusCreateFailed is a AssistantStatus enum value + AssistantStatusCreateFailed = "CREATE_FAILED" + + // AssistantStatusActive is a AssistantStatus enum value + AssistantStatusActive = "ACTIVE" + + // AssistantStatusDeleteInProgress is a AssistantStatus enum value + AssistantStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // AssistantStatusDeleteFailed is a AssistantStatus enum value + AssistantStatusDeleteFailed = "DELETE_FAILED" + + // AssistantStatusDeleted is a AssistantStatus enum value + AssistantStatusDeleted = "DELETED" +) + +// AssistantStatus_Values returns all elements of the AssistantStatus enum +func AssistantStatus_Values() []string { + return []string{ + AssistantStatusCreateInProgress, + AssistantStatusCreateFailed, + AssistantStatusActive, + AssistantStatusDeleteInProgress, + AssistantStatusDeleteFailed, + AssistantStatusDeleted, + } +} + +const ( + // AssistantTypeAgent is a AssistantType enum value + AssistantTypeAgent = "AGENT" +) + +// AssistantType_Values returns all elements of the AssistantType enum +func AssistantType_Values() []string { + return []string{ + AssistantTypeAgent, + } +} + +const ( + // AssociationTypeKnowledgeBase is a AssociationType enum value + AssociationTypeKnowledgeBase = "KNOWLEDGE_BASE" +) + +// AssociationType_Values returns all elements of the AssociationType enum +func AssociationType_Values() []string { + return []string{ + AssociationTypeKnowledgeBase, + } +} + +const ( + // ContentStatusCreateInProgress is a ContentStatus enum value + ContentStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // ContentStatusCreateFailed is a ContentStatus enum value + ContentStatusCreateFailed = "CREATE_FAILED" + + // ContentStatusActive is a ContentStatus enum value + ContentStatusActive = "ACTIVE" + + // ContentStatusDeleteInProgress is a ContentStatus enum value + ContentStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // ContentStatusDeleteFailed is a ContentStatus enum value + ContentStatusDeleteFailed = "DELETE_FAILED" + + // ContentStatusDeleted is a ContentStatus enum value + ContentStatusDeleted = "DELETED" + + // ContentStatusUpdateFailed is a ContentStatus enum value + ContentStatusUpdateFailed = "UPDATE_FAILED" +) + +// ContentStatus_Values returns all elements of the ContentStatus enum +func ContentStatus_Values() []string { + return []string{ + ContentStatusCreateInProgress, + ContentStatusCreateFailed, + ContentStatusActive, + ContentStatusDeleteInProgress, + ContentStatusDeleteFailed, + ContentStatusDeleted, + ContentStatusUpdateFailed, + } +} + +const ( + // ExternalSourceAmazonConnect is a ExternalSource enum value + ExternalSourceAmazonConnect = "AMAZON_CONNECT" +) + +// ExternalSource_Values returns all elements of the ExternalSource enum +func ExternalSource_Values() []string { + return []string{ + ExternalSourceAmazonConnect, + } +} + +const ( + // FilterFieldName is a FilterField enum value + FilterFieldName = "NAME" +) + +// FilterField_Values returns all elements of the FilterField enum +func FilterField_Values() []string { + return []string{ + FilterFieldName, + } +} + +const ( + // FilterOperatorEquals is a FilterOperator enum value + FilterOperatorEquals = "EQUALS" +) + +// FilterOperator_Values returns all elements of the FilterOperator enum +func FilterOperator_Values() []string { + return []string{ + FilterOperatorEquals, + } +} + +const ( + // ImportJobStatusStartInProgress is a ImportJobStatus enum value + ImportJobStatusStartInProgress = "START_IN_PROGRESS" + + // ImportJobStatusFailed is a ImportJobStatus enum value + ImportJobStatusFailed = "FAILED" + + // ImportJobStatusComplete is a ImportJobStatus enum value + ImportJobStatusComplete = "COMPLETE" + + // ImportJobStatusDeleteInProgress is a ImportJobStatus enum value + ImportJobStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // ImportJobStatusDeleteFailed is a ImportJobStatus enum value + ImportJobStatusDeleteFailed = "DELETE_FAILED" + + // ImportJobStatusDeleted is a ImportJobStatus enum value + ImportJobStatusDeleted = "DELETED" +) + +// ImportJobStatus_Values returns all elements of the ImportJobStatus enum +func ImportJobStatus_Values() []string { + return []string{ + ImportJobStatusStartInProgress, + ImportJobStatusFailed, + ImportJobStatusComplete, + ImportJobStatusDeleteInProgress, + ImportJobStatusDeleteFailed, + ImportJobStatusDeleted, + } +} + +const ( + // ImportJobTypeQuickResponses is a ImportJobType enum value + ImportJobTypeQuickResponses = "QUICK_RESPONSES" +) + +// ImportJobType_Values returns all elements of the ImportJobType enum +func ImportJobType_Values() []string { + return []string{ + ImportJobTypeQuickResponses, + } +} + +const ( + // KnowledgeBaseStatusCreateInProgress is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // KnowledgeBaseStatusCreateFailed is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusCreateFailed = "CREATE_FAILED" + + // KnowledgeBaseStatusActive is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusActive = "ACTIVE" + + // KnowledgeBaseStatusDeleteInProgress is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // KnowledgeBaseStatusDeleteFailed is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusDeleteFailed = "DELETE_FAILED" + + // KnowledgeBaseStatusDeleted is a KnowledgeBaseStatus enum value + KnowledgeBaseStatusDeleted = "DELETED" +) + +// KnowledgeBaseStatus_Values returns all elements of the KnowledgeBaseStatus enum +func KnowledgeBaseStatus_Values() []string { + return []string{ + KnowledgeBaseStatusCreateInProgress, + KnowledgeBaseStatusCreateFailed, + KnowledgeBaseStatusActive, + KnowledgeBaseStatusDeleteInProgress, + KnowledgeBaseStatusDeleteFailed, + KnowledgeBaseStatusDeleted, + } +} + +const ( + // KnowledgeBaseTypeExternal is a KnowledgeBaseType enum value + KnowledgeBaseTypeExternal = "EXTERNAL" + + // KnowledgeBaseTypeCustom is a KnowledgeBaseType enum value + KnowledgeBaseTypeCustom = "CUSTOM" + + // KnowledgeBaseTypeQuickResponses is a KnowledgeBaseType enum value + KnowledgeBaseTypeQuickResponses = "QUICK_RESPONSES" +) + +// KnowledgeBaseType_Values returns all elements of the KnowledgeBaseType enum +func KnowledgeBaseType_Values() []string { + return []string{ + KnowledgeBaseTypeExternal, + KnowledgeBaseTypeCustom, + KnowledgeBaseTypeQuickResponses, + } +} + +const ( + // OrderAsc is a Order enum value + OrderAsc = "ASC" + + // OrderDesc is a Order enum value + OrderDesc = "DESC" +) + +// Order_Values returns all elements of the Order enum +func Order_Values() []string { + return []string{ + OrderAsc, + OrderDesc, + } +} + +const ( + // PriorityHigh is a Priority enum value + PriorityHigh = "HIGH" + + // PriorityMedium is a Priority enum value + PriorityMedium = "MEDIUM" + + // PriorityLow is a Priority enum value + PriorityLow = "LOW" +) + +// Priority_Values returns all elements of the Priority enum +func Priority_Values() []string { + return []string{ + PriorityHigh, + PriorityMedium, + PriorityLow, + } +} + +const ( + // QueryConditionComparisonOperatorEquals is a QueryConditionComparisonOperator enum value + QueryConditionComparisonOperatorEquals = "EQUALS" +) + +// QueryConditionComparisonOperator_Values returns all elements of the QueryConditionComparisonOperator enum +func QueryConditionComparisonOperator_Values() []string { + return []string{ + QueryConditionComparisonOperatorEquals, + } +} + +const ( + // QueryConditionFieldNameResultType is a QueryConditionFieldName enum value + QueryConditionFieldNameResultType = "RESULT_TYPE" +) + +// QueryConditionFieldName_Values returns all elements of the QueryConditionFieldName enum +func QueryConditionFieldName_Values() []string { + return []string{ + QueryConditionFieldNameResultType, + } +} + +const ( + // QueryResultTypeKnowledgeContent is a QueryResultType enum value + QueryResultTypeKnowledgeContent = "KNOWLEDGE_CONTENT" + + // QueryResultTypeGenerativeAnswer is a QueryResultType enum value + QueryResultTypeGenerativeAnswer = "GENERATIVE_ANSWER" +) + +// QueryResultType_Values returns all elements of the QueryResultType enum +func QueryResultType_Values() []string { + return []string{ + QueryResultTypeKnowledgeContent, + QueryResultTypeGenerativeAnswer, + } +} + +const ( + // QuickResponseFilterOperatorEquals is a QuickResponseFilterOperator enum value + QuickResponseFilterOperatorEquals = "EQUALS" + + // QuickResponseFilterOperatorPrefix is a QuickResponseFilterOperator enum value + QuickResponseFilterOperatorPrefix = "PREFIX" +) + +// QuickResponseFilterOperator_Values returns all elements of the QuickResponseFilterOperator enum +func QuickResponseFilterOperator_Values() []string { + return []string{ + QuickResponseFilterOperatorEquals, + QuickResponseFilterOperatorPrefix, + } +} + +const ( + // QuickResponseQueryOperatorContains is a QuickResponseQueryOperator enum value + QuickResponseQueryOperatorContains = "CONTAINS" + + // QuickResponseQueryOperatorContainsAndPrefix is a QuickResponseQueryOperator enum value + QuickResponseQueryOperatorContainsAndPrefix = "CONTAINS_AND_PREFIX" +) + +// QuickResponseQueryOperator_Values returns all elements of the QuickResponseQueryOperator enum +func QuickResponseQueryOperator_Values() []string { + return []string{ + QuickResponseQueryOperatorContains, + QuickResponseQueryOperatorContainsAndPrefix, + } +} + +const ( + // QuickResponseStatusCreateInProgress is a QuickResponseStatus enum value + QuickResponseStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // QuickResponseStatusCreateFailed is a QuickResponseStatus enum value + QuickResponseStatusCreateFailed = "CREATE_FAILED" + + // QuickResponseStatusCreated is a QuickResponseStatus enum value + QuickResponseStatusCreated = "CREATED" + + // QuickResponseStatusDeleteInProgress is a QuickResponseStatus enum value + QuickResponseStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // QuickResponseStatusDeleteFailed is a QuickResponseStatus enum value + QuickResponseStatusDeleteFailed = "DELETE_FAILED" + + // QuickResponseStatusDeleted is a QuickResponseStatus enum value + QuickResponseStatusDeleted = "DELETED" + + // QuickResponseStatusUpdateInProgress is a QuickResponseStatus enum value + QuickResponseStatusUpdateInProgress = "UPDATE_IN_PROGRESS" + + // QuickResponseStatusUpdateFailed is a QuickResponseStatus enum value + QuickResponseStatusUpdateFailed = "UPDATE_FAILED" +) + +// QuickResponseStatus_Values returns all elements of the QuickResponseStatus enum +func QuickResponseStatus_Values() []string { + return []string{ + QuickResponseStatusCreateInProgress, + QuickResponseStatusCreateFailed, + QuickResponseStatusCreated, + QuickResponseStatusDeleteInProgress, + QuickResponseStatusDeleteFailed, + QuickResponseStatusDeleted, + QuickResponseStatusUpdateInProgress, + QuickResponseStatusUpdateFailed, + } +} + +const ( + // RecommendationSourceTypeIssueDetection is a RecommendationSourceType enum value + RecommendationSourceTypeIssueDetection = "ISSUE_DETECTION" + + // RecommendationSourceTypeRuleEvaluation is a RecommendationSourceType enum value + RecommendationSourceTypeRuleEvaluation = "RULE_EVALUATION" + + // RecommendationSourceTypeOther is a RecommendationSourceType enum value + RecommendationSourceTypeOther = "OTHER" +) + +// RecommendationSourceType_Values returns all elements of the RecommendationSourceType enum +func RecommendationSourceType_Values() []string { + return []string{ + RecommendationSourceTypeIssueDetection, + RecommendationSourceTypeRuleEvaluation, + RecommendationSourceTypeOther, + } +} + +const ( + // RecommendationTriggerTypeQuery is a RecommendationTriggerType enum value + RecommendationTriggerTypeQuery = "QUERY" + + // RecommendationTriggerTypeGenerative is a RecommendationTriggerType enum value + RecommendationTriggerTypeGenerative = "GENERATIVE" +) + +// RecommendationTriggerType_Values returns all elements of the RecommendationTriggerType enum +func RecommendationTriggerType_Values() []string { + return []string{ + RecommendationTriggerTypeQuery, + RecommendationTriggerTypeGenerative, + } +} + +const ( + // RecommendationTypeKnowledgeContent is a RecommendationType enum value + RecommendationTypeKnowledgeContent = "KNOWLEDGE_CONTENT" + + // RecommendationTypeGenerativeResponse is a RecommendationType enum value + RecommendationTypeGenerativeResponse = "GENERATIVE_RESPONSE" + + // RecommendationTypeGenerativeAnswer is a RecommendationType enum value + RecommendationTypeGenerativeAnswer = "GENERATIVE_ANSWER" +) + +// RecommendationType_Values returns all elements of the RecommendationType enum +func RecommendationType_Values() []string { + return []string{ + RecommendationTypeKnowledgeContent, + RecommendationTypeGenerativeResponse, + RecommendationTypeGenerativeAnswer, + } +} + +const ( + // RelevanceHelpful is a Relevance enum value + RelevanceHelpful = "HELPFUL" + + // RelevanceNotHelpful is a Relevance enum value + RelevanceNotHelpful = "NOT_HELPFUL" +) + +// Relevance_Values returns all elements of the Relevance enum +func Relevance_Values() []string { + return []string{ + RelevanceHelpful, + RelevanceNotHelpful, + } +} + +const ( + // RelevanceLevelHigh is a RelevanceLevel enum value + RelevanceLevelHigh = "HIGH" + + // RelevanceLevelMedium is a RelevanceLevel enum value + RelevanceLevelMedium = "MEDIUM" + + // RelevanceLevelLow is a RelevanceLevel enum value + RelevanceLevelLow = "LOW" +) + +// RelevanceLevel_Values returns all elements of the RelevanceLevel enum +func RelevanceLevel_Values() []string { + return []string{ + RelevanceLevelHigh, + RelevanceLevelMedium, + RelevanceLevelLow, + } +} + +const ( + // SourceContentTypeKnowledgeContent is a SourceContentType enum value + SourceContentTypeKnowledgeContent = "KNOWLEDGE_CONTENT" +) + +// SourceContentType_Values returns all elements of the SourceContentType enum +func SourceContentType_Values() []string { + return []string{ + SourceContentTypeKnowledgeContent, + } +} + +const ( + // TargetTypeRecommendation is a TargetType enum value + TargetTypeRecommendation = "RECOMMENDATION" + + // TargetTypeResult is a TargetType enum value + TargetTypeResult = "RESULT" +) + +// TargetType_Values returns all elements of the TargetType enum +func TargetType_Values() []string { + return []string{ + TargetTypeRecommendation, + TargetTypeResult, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,50 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package qconnect provides the client and types for making API +// requests to Amazon Q Connect. +// +// Powered by Amazon Bedrock: Amazon Web Services implements automated abuse +// detection (https://docs.aws.amazon.com/bedrock/latest/userguide/abuse-detection.html). +// Because Amazon Q in Connect is built on Amazon Bedrock, users can take full +// advantage of the controls implemented in Amazon Bedrock to enforce safety, +// security, and the responsible use of artificial intelligence (AI). +// +// Amazon Q in Connect is a generative AI customer service assistant. It is +// an LLM-enhanced evolution of Amazon Connect Wisdom that delivers real-time +// recommendations to help contact center agents resolve customer issues quickly +// and accurately. +// +// Amazon Q automatically detects customer intent during calls and chats using +// conversational analytics and natural language understanding (NLU). It then +// provides agents with immediate, real-time generative responses and suggested +// actions, and links to relevant documents and articles. Agents can also query +// Amazon Q directly using natural language or keywords to answer customer requests. +// +// Use the Amazon Q in Connect APIs to create an assistant and a knowledge base, +// for example, or manage content by uploading custom files. +// +// For more information, see Use Amazon Q in Connect for generative AI powered +// agent assistance in real-time (https://docs.aws.amazon.com/connect/latest/adminguide/amazon-q-connect.html) +// in the Amazon Connect Administrator Guide. +// +// See https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19 for more information on this service. +// +// See qconnect package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/qconnect/ +// +// # Using the Client +// +// To contact Amazon Q Connect 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 Amazon Q Connect client QConnect for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/qconnect/#New +package qconnect diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,79 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package qconnect + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // The request could not be processed because of conflict in the current state + // of the resource. For example, if you're using a Create API (such as CreateAssistant) + // that accepts name, a conflicting resource (usually with the same name) is + // being created or mutated. + ErrCodeConflictException = "ConflictException" + + // ErrCodePreconditionFailedException for service response error code + // "PreconditionFailedException". + // + // The provided revisionId does not match, indicating the content has been modified + // since it was last read. + ErrCodePreconditionFailedException = "PreconditionFailedException" + + // ErrCodeRequestTimeoutException for service response error code + // "RequestTimeoutException". + // + // The request reached the service more than 15 minutes after the date stamp + // on the request or more than 15 minutes after the request expiration date + // (such as for pre-signed URLs), or the date stamp on the request is more than + // 15 minutes in the future. + ErrCodeRequestTimeoutException = "RequestTimeoutException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The specified resource does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // You've exceeded your service quota. To perform the requested action, remove + // some of the relevant resources, or use service quotas to request a service + // quota increase. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeTooManyTagsException for service response error code + // "TooManyTagsException". + // + // Amazon Q in Connect throws this exception if you have too many tags in your + // tag set. + ErrCodeTooManyTagsException = "TooManyTagsException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by a service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "PreconditionFailedException": newErrorPreconditionFailedException, + "RequestTimeoutException": newErrorRequestTimeoutException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "TooManyTagsException": newErrorTooManyTagsException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/qconnectiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/qconnectiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/qconnectiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/qconnectiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,262 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package qconnectiface provides an interface to enable mocking the Amazon Q Connect 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 qconnectiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/qconnect" +) + +// QConnectAPI provides an interface to enable mocking the +// qconnect.QConnect 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 +// // Amazon Q Connect. +// func myFunc(svc qconnectiface.QConnectAPI) bool { +// // Make svc.CreateAssistant request +// } +// +// func main() { +// sess := session.New() +// svc := qconnect.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockQConnectClient struct { +// qconnectiface.QConnectAPI +// } +// func (m *mockQConnectClient) CreateAssistant(input *qconnect.CreateAssistantInput) (*qconnect.CreateAssistantOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockQConnectClient{} +// +// 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 QConnectAPI interface { + CreateAssistant(*qconnect.CreateAssistantInput) (*qconnect.CreateAssistantOutput, error) + CreateAssistantWithContext(aws.Context, *qconnect.CreateAssistantInput, ...request.Option) (*qconnect.CreateAssistantOutput, error) + CreateAssistantRequest(*qconnect.CreateAssistantInput) (*request.Request, *qconnect.CreateAssistantOutput) + + CreateAssistantAssociation(*qconnect.CreateAssistantAssociationInput) (*qconnect.CreateAssistantAssociationOutput, error) + CreateAssistantAssociationWithContext(aws.Context, *qconnect.CreateAssistantAssociationInput, ...request.Option) (*qconnect.CreateAssistantAssociationOutput, error) + CreateAssistantAssociationRequest(*qconnect.CreateAssistantAssociationInput) (*request.Request, *qconnect.CreateAssistantAssociationOutput) + + CreateContent(*qconnect.CreateContentInput) (*qconnect.CreateContentOutput, error) + CreateContentWithContext(aws.Context, *qconnect.CreateContentInput, ...request.Option) (*qconnect.CreateContentOutput, error) + CreateContentRequest(*qconnect.CreateContentInput) (*request.Request, *qconnect.CreateContentOutput) + + CreateKnowledgeBase(*qconnect.CreateKnowledgeBaseInput) (*qconnect.CreateKnowledgeBaseOutput, error) + CreateKnowledgeBaseWithContext(aws.Context, *qconnect.CreateKnowledgeBaseInput, ...request.Option) (*qconnect.CreateKnowledgeBaseOutput, error) + CreateKnowledgeBaseRequest(*qconnect.CreateKnowledgeBaseInput) (*request.Request, *qconnect.CreateKnowledgeBaseOutput) + + CreateQuickResponse(*qconnect.CreateQuickResponseInput) (*qconnect.CreateQuickResponseOutput, error) + CreateQuickResponseWithContext(aws.Context, *qconnect.CreateQuickResponseInput, ...request.Option) (*qconnect.CreateQuickResponseOutput, error) + CreateQuickResponseRequest(*qconnect.CreateQuickResponseInput) (*request.Request, *qconnect.CreateQuickResponseOutput) + + CreateSession(*qconnect.CreateSessionInput) (*qconnect.CreateSessionOutput, error) + CreateSessionWithContext(aws.Context, *qconnect.CreateSessionInput, ...request.Option) (*qconnect.CreateSessionOutput, error) + CreateSessionRequest(*qconnect.CreateSessionInput) (*request.Request, *qconnect.CreateSessionOutput) + + DeleteAssistant(*qconnect.DeleteAssistantInput) (*qconnect.DeleteAssistantOutput, error) + DeleteAssistantWithContext(aws.Context, *qconnect.DeleteAssistantInput, ...request.Option) (*qconnect.DeleteAssistantOutput, error) + DeleteAssistantRequest(*qconnect.DeleteAssistantInput) (*request.Request, *qconnect.DeleteAssistantOutput) + + DeleteAssistantAssociation(*qconnect.DeleteAssistantAssociationInput) (*qconnect.DeleteAssistantAssociationOutput, error) + DeleteAssistantAssociationWithContext(aws.Context, *qconnect.DeleteAssistantAssociationInput, ...request.Option) (*qconnect.DeleteAssistantAssociationOutput, error) + DeleteAssistantAssociationRequest(*qconnect.DeleteAssistantAssociationInput) (*request.Request, *qconnect.DeleteAssistantAssociationOutput) + + DeleteContent(*qconnect.DeleteContentInput) (*qconnect.DeleteContentOutput, error) + DeleteContentWithContext(aws.Context, *qconnect.DeleteContentInput, ...request.Option) (*qconnect.DeleteContentOutput, error) + DeleteContentRequest(*qconnect.DeleteContentInput) (*request.Request, *qconnect.DeleteContentOutput) + + DeleteImportJob(*qconnect.DeleteImportJobInput) (*qconnect.DeleteImportJobOutput, error) + DeleteImportJobWithContext(aws.Context, *qconnect.DeleteImportJobInput, ...request.Option) (*qconnect.DeleteImportJobOutput, error) + DeleteImportJobRequest(*qconnect.DeleteImportJobInput) (*request.Request, *qconnect.DeleteImportJobOutput) + + DeleteKnowledgeBase(*qconnect.DeleteKnowledgeBaseInput) (*qconnect.DeleteKnowledgeBaseOutput, error) + DeleteKnowledgeBaseWithContext(aws.Context, *qconnect.DeleteKnowledgeBaseInput, ...request.Option) (*qconnect.DeleteKnowledgeBaseOutput, error) + DeleteKnowledgeBaseRequest(*qconnect.DeleteKnowledgeBaseInput) (*request.Request, *qconnect.DeleteKnowledgeBaseOutput) + + DeleteQuickResponse(*qconnect.DeleteQuickResponseInput) (*qconnect.DeleteQuickResponseOutput, error) + DeleteQuickResponseWithContext(aws.Context, *qconnect.DeleteQuickResponseInput, ...request.Option) (*qconnect.DeleteQuickResponseOutput, error) + DeleteQuickResponseRequest(*qconnect.DeleteQuickResponseInput) (*request.Request, *qconnect.DeleteQuickResponseOutput) + + GetAssistant(*qconnect.GetAssistantInput) (*qconnect.GetAssistantOutput, error) + GetAssistantWithContext(aws.Context, *qconnect.GetAssistantInput, ...request.Option) (*qconnect.GetAssistantOutput, error) + GetAssistantRequest(*qconnect.GetAssistantInput) (*request.Request, *qconnect.GetAssistantOutput) + + GetAssistantAssociation(*qconnect.GetAssistantAssociationInput) (*qconnect.GetAssistantAssociationOutput, error) + GetAssistantAssociationWithContext(aws.Context, *qconnect.GetAssistantAssociationInput, ...request.Option) (*qconnect.GetAssistantAssociationOutput, error) + GetAssistantAssociationRequest(*qconnect.GetAssistantAssociationInput) (*request.Request, *qconnect.GetAssistantAssociationOutput) + + GetContent(*qconnect.GetContentInput) (*qconnect.GetContentOutput, error) + GetContentWithContext(aws.Context, *qconnect.GetContentInput, ...request.Option) (*qconnect.GetContentOutput, error) + GetContentRequest(*qconnect.GetContentInput) (*request.Request, *qconnect.GetContentOutput) + + GetContentSummary(*qconnect.GetContentSummaryInput) (*qconnect.GetContentSummaryOutput, error) + GetContentSummaryWithContext(aws.Context, *qconnect.GetContentSummaryInput, ...request.Option) (*qconnect.GetContentSummaryOutput, error) + GetContentSummaryRequest(*qconnect.GetContentSummaryInput) (*request.Request, *qconnect.GetContentSummaryOutput) + + GetImportJob(*qconnect.GetImportJobInput) (*qconnect.GetImportJobOutput, error) + GetImportJobWithContext(aws.Context, *qconnect.GetImportJobInput, ...request.Option) (*qconnect.GetImportJobOutput, error) + GetImportJobRequest(*qconnect.GetImportJobInput) (*request.Request, *qconnect.GetImportJobOutput) + + GetKnowledgeBase(*qconnect.GetKnowledgeBaseInput) (*qconnect.GetKnowledgeBaseOutput, error) + GetKnowledgeBaseWithContext(aws.Context, *qconnect.GetKnowledgeBaseInput, ...request.Option) (*qconnect.GetKnowledgeBaseOutput, error) + GetKnowledgeBaseRequest(*qconnect.GetKnowledgeBaseInput) (*request.Request, *qconnect.GetKnowledgeBaseOutput) + + GetQuickResponse(*qconnect.GetQuickResponseInput) (*qconnect.GetQuickResponseOutput, error) + GetQuickResponseWithContext(aws.Context, *qconnect.GetQuickResponseInput, ...request.Option) (*qconnect.GetQuickResponseOutput, error) + GetQuickResponseRequest(*qconnect.GetQuickResponseInput) (*request.Request, *qconnect.GetQuickResponseOutput) + + GetRecommendations(*qconnect.GetRecommendationsInput) (*qconnect.GetRecommendationsOutput, error) + GetRecommendationsWithContext(aws.Context, *qconnect.GetRecommendationsInput, ...request.Option) (*qconnect.GetRecommendationsOutput, error) + GetRecommendationsRequest(*qconnect.GetRecommendationsInput) (*request.Request, *qconnect.GetRecommendationsOutput) + + GetSession(*qconnect.GetSessionInput) (*qconnect.GetSessionOutput, error) + GetSessionWithContext(aws.Context, *qconnect.GetSessionInput, ...request.Option) (*qconnect.GetSessionOutput, error) + GetSessionRequest(*qconnect.GetSessionInput) (*request.Request, *qconnect.GetSessionOutput) + + ListAssistantAssociations(*qconnect.ListAssistantAssociationsInput) (*qconnect.ListAssistantAssociationsOutput, error) + ListAssistantAssociationsWithContext(aws.Context, *qconnect.ListAssistantAssociationsInput, ...request.Option) (*qconnect.ListAssistantAssociationsOutput, error) + ListAssistantAssociationsRequest(*qconnect.ListAssistantAssociationsInput) (*request.Request, *qconnect.ListAssistantAssociationsOutput) + + ListAssistantAssociationsPages(*qconnect.ListAssistantAssociationsInput, func(*qconnect.ListAssistantAssociationsOutput, bool) bool) error + ListAssistantAssociationsPagesWithContext(aws.Context, *qconnect.ListAssistantAssociationsInput, func(*qconnect.ListAssistantAssociationsOutput, bool) bool, ...request.Option) error + + ListAssistants(*qconnect.ListAssistantsInput) (*qconnect.ListAssistantsOutput, error) + ListAssistantsWithContext(aws.Context, *qconnect.ListAssistantsInput, ...request.Option) (*qconnect.ListAssistantsOutput, error) + ListAssistantsRequest(*qconnect.ListAssistantsInput) (*request.Request, *qconnect.ListAssistantsOutput) + + ListAssistantsPages(*qconnect.ListAssistantsInput, func(*qconnect.ListAssistantsOutput, bool) bool) error + ListAssistantsPagesWithContext(aws.Context, *qconnect.ListAssistantsInput, func(*qconnect.ListAssistantsOutput, bool) bool, ...request.Option) error + + ListContents(*qconnect.ListContentsInput) (*qconnect.ListContentsOutput, error) + ListContentsWithContext(aws.Context, *qconnect.ListContentsInput, ...request.Option) (*qconnect.ListContentsOutput, error) + ListContentsRequest(*qconnect.ListContentsInput) (*request.Request, *qconnect.ListContentsOutput) + + ListContentsPages(*qconnect.ListContentsInput, func(*qconnect.ListContentsOutput, bool) bool) error + ListContentsPagesWithContext(aws.Context, *qconnect.ListContentsInput, func(*qconnect.ListContentsOutput, bool) bool, ...request.Option) error + + ListImportJobs(*qconnect.ListImportJobsInput) (*qconnect.ListImportJobsOutput, error) + ListImportJobsWithContext(aws.Context, *qconnect.ListImportJobsInput, ...request.Option) (*qconnect.ListImportJobsOutput, error) + ListImportJobsRequest(*qconnect.ListImportJobsInput) (*request.Request, *qconnect.ListImportJobsOutput) + + ListImportJobsPages(*qconnect.ListImportJobsInput, func(*qconnect.ListImportJobsOutput, bool) bool) error + ListImportJobsPagesWithContext(aws.Context, *qconnect.ListImportJobsInput, func(*qconnect.ListImportJobsOutput, bool) bool, ...request.Option) error + + ListKnowledgeBases(*qconnect.ListKnowledgeBasesInput) (*qconnect.ListKnowledgeBasesOutput, error) + ListKnowledgeBasesWithContext(aws.Context, *qconnect.ListKnowledgeBasesInput, ...request.Option) (*qconnect.ListKnowledgeBasesOutput, error) + ListKnowledgeBasesRequest(*qconnect.ListKnowledgeBasesInput) (*request.Request, *qconnect.ListKnowledgeBasesOutput) + + ListKnowledgeBasesPages(*qconnect.ListKnowledgeBasesInput, func(*qconnect.ListKnowledgeBasesOutput, bool) bool) error + ListKnowledgeBasesPagesWithContext(aws.Context, *qconnect.ListKnowledgeBasesInput, func(*qconnect.ListKnowledgeBasesOutput, bool) bool, ...request.Option) error + + ListQuickResponses(*qconnect.ListQuickResponsesInput) (*qconnect.ListQuickResponsesOutput, error) + ListQuickResponsesWithContext(aws.Context, *qconnect.ListQuickResponsesInput, ...request.Option) (*qconnect.ListQuickResponsesOutput, error) + ListQuickResponsesRequest(*qconnect.ListQuickResponsesInput) (*request.Request, *qconnect.ListQuickResponsesOutput) + + ListQuickResponsesPages(*qconnect.ListQuickResponsesInput, func(*qconnect.ListQuickResponsesOutput, bool) bool) error + ListQuickResponsesPagesWithContext(aws.Context, *qconnect.ListQuickResponsesInput, func(*qconnect.ListQuickResponsesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*qconnect.ListTagsForResourceInput) (*qconnect.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *qconnect.ListTagsForResourceInput, ...request.Option) (*qconnect.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*qconnect.ListTagsForResourceInput) (*request.Request, *qconnect.ListTagsForResourceOutput) + + NotifyRecommendationsReceived(*qconnect.NotifyRecommendationsReceivedInput) (*qconnect.NotifyRecommendationsReceivedOutput, error) + NotifyRecommendationsReceivedWithContext(aws.Context, *qconnect.NotifyRecommendationsReceivedInput, ...request.Option) (*qconnect.NotifyRecommendationsReceivedOutput, error) + NotifyRecommendationsReceivedRequest(*qconnect.NotifyRecommendationsReceivedInput) (*request.Request, *qconnect.NotifyRecommendationsReceivedOutput) + + PutFeedback(*qconnect.PutFeedbackInput) (*qconnect.PutFeedbackOutput, error) + PutFeedbackWithContext(aws.Context, *qconnect.PutFeedbackInput, ...request.Option) (*qconnect.PutFeedbackOutput, error) + PutFeedbackRequest(*qconnect.PutFeedbackInput) (*request.Request, *qconnect.PutFeedbackOutput) + + QueryAssistant(*qconnect.QueryAssistantInput) (*qconnect.QueryAssistantOutput, error) + QueryAssistantWithContext(aws.Context, *qconnect.QueryAssistantInput, ...request.Option) (*qconnect.QueryAssistantOutput, error) + QueryAssistantRequest(*qconnect.QueryAssistantInput) (*request.Request, *qconnect.QueryAssistantOutput) + + QueryAssistantPages(*qconnect.QueryAssistantInput, func(*qconnect.QueryAssistantOutput, bool) bool) error + QueryAssistantPagesWithContext(aws.Context, *qconnect.QueryAssistantInput, func(*qconnect.QueryAssistantOutput, bool) bool, ...request.Option) error + + RemoveKnowledgeBaseTemplateUri(*qconnect.RemoveKnowledgeBaseTemplateUriInput) (*qconnect.RemoveKnowledgeBaseTemplateUriOutput, error) + RemoveKnowledgeBaseTemplateUriWithContext(aws.Context, *qconnect.RemoveKnowledgeBaseTemplateUriInput, ...request.Option) (*qconnect.RemoveKnowledgeBaseTemplateUriOutput, error) + RemoveKnowledgeBaseTemplateUriRequest(*qconnect.RemoveKnowledgeBaseTemplateUriInput) (*request.Request, *qconnect.RemoveKnowledgeBaseTemplateUriOutput) + + SearchContent(*qconnect.SearchContentInput) (*qconnect.SearchContentOutput, error) + SearchContentWithContext(aws.Context, *qconnect.SearchContentInput, ...request.Option) (*qconnect.SearchContentOutput, error) + SearchContentRequest(*qconnect.SearchContentInput) (*request.Request, *qconnect.SearchContentOutput) + + SearchContentPages(*qconnect.SearchContentInput, func(*qconnect.SearchContentOutput, bool) bool) error + SearchContentPagesWithContext(aws.Context, *qconnect.SearchContentInput, func(*qconnect.SearchContentOutput, bool) bool, ...request.Option) error + + SearchQuickResponses(*qconnect.SearchQuickResponsesInput) (*qconnect.SearchQuickResponsesOutput, error) + SearchQuickResponsesWithContext(aws.Context, *qconnect.SearchQuickResponsesInput, ...request.Option) (*qconnect.SearchQuickResponsesOutput, error) + SearchQuickResponsesRequest(*qconnect.SearchQuickResponsesInput) (*request.Request, *qconnect.SearchQuickResponsesOutput) + + SearchQuickResponsesPages(*qconnect.SearchQuickResponsesInput, func(*qconnect.SearchQuickResponsesOutput, bool) bool) error + SearchQuickResponsesPagesWithContext(aws.Context, *qconnect.SearchQuickResponsesInput, func(*qconnect.SearchQuickResponsesOutput, bool) bool, ...request.Option) error + + SearchSessions(*qconnect.SearchSessionsInput) (*qconnect.SearchSessionsOutput, error) + SearchSessionsWithContext(aws.Context, *qconnect.SearchSessionsInput, ...request.Option) (*qconnect.SearchSessionsOutput, error) + SearchSessionsRequest(*qconnect.SearchSessionsInput) (*request.Request, *qconnect.SearchSessionsOutput) + + SearchSessionsPages(*qconnect.SearchSessionsInput, func(*qconnect.SearchSessionsOutput, bool) bool) error + SearchSessionsPagesWithContext(aws.Context, *qconnect.SearchSessionsInput, func(*qconnect.SearchSessionsOutput, bool) bool, ...request.Option) error + + StartContentUpload(*qconnect.StartContentUploadInput) (*qconnect.StartContentUploadOutput, error) + StartContentUploadWithContext(aws.Context, *qconnect.StartContentUploadInput, ...request.Option) (*qconnect.StartContentUploadOutput, error) + StartContentUploadRequest(*qconnect.StartContentUploadInput) (*request.Request, *qconnect.StartContentUploadOutput) + + StartImportJob(*qconnect.StartImportJobInput) (*qconnect.StartImportJobOutput, error) + StartImportJobWithContext(aws.Context, *qconnect.StartImportJobInput, ...request.Option) (*qconnect.StartImportJobOutput, error) + StartImportJobRequest(*qconnect.StartImportJobInput) (*request.Request, *qconnect.StartImportJobOutput) + + TagResource(*qconnect.TagResourceInput) (*qconnect.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *qconnect.TagResourceInput, ...request.Option) (*qconnect.TagResourceOutput, error) + TagResourceRequest(*qconnect.TagResourceInput) (*request.Request, *qconnect.TagResourceOutput) + + UntagResource(*qconnect.UntagResourceInput) (*qconnect.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *qconnect.UntagResourceInput, ...request.Option) (*qconnect.UntagResourceOutput, error) + UntagResourceRequest(*qconnect.UntagResourceInput) (*request.Request, *qconnect.UntagResourceOutput) + + UpdateContent(*qconnect.UpdateContentInput) (*qconnect.UpdateContentOutput, error) + UpdateContentWithContext(aws.Context, *qconnect.UpdateContentInput, ...request.Option) (*qconnect.UpdateContentOutput, error) + UpdateContentRequest(*qconnect.UpdateContentInput) (*request.Request, *qconnect.UpdateContentOutput) + + UpdateKnowledgeBaseTemplateUri(*qconnect.UpdateKnowledgeBaseTemplateUriInput) (*qconnect.UpdateKnowledgeBaseTemplateUriOutput, error) + UpdateKnowledgeBaseTemplateUriWithContext(aws.Context, *qconnect.UpdateKnowledgeBaseTemplateUriInput, ...request.Option) (*qconnect.UpdateKnowledgeBaseTemplateUriOutput, error) + UpdateKnowledgeBaseTemplateUriRequest(*qconnect.UpdateKnowledgeBaseTemplateUriInput) (*request.Request, *qconnect.UpdateKnowledgeBaseTemplateUriOutput) + + UpdateQuickResponse(*qconnect.UpdateQuickResponseInput) (*qconnect.UpdateQuickResponseOutput, error) + UpdateQuickResponseWithContext(aws.Context, *qconnect.UpdateQuickResponseInput, ...request.Option) (*qconnect.UpdateQuickResponseOutput, error) + UpdateQuickResponseRequest(*qconnect.UpdateQuickResponseInput) (*request.Request, *qconnect.UpdateQuickResponseOutput) +} + +var _ QConnectAPI = (*qconnect.QConnect)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/service.go golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/qconnect/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/qconnect/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package qconnect + +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/restjson" +) + +// QConnect provides the API operation methods for making requests to +// Amazon Q Connect. See this package's package overview docs +// for details on the service. +// +// QConnect methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type QConnect 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 = "QConnect" // Name of service. + EndpointsID = "wisdom" // ID to lookup a service endpoint with. + ServiceID = "QConnect" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the QConnect 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 QConnect client from just a session. +// svc := qconnect.New(mySession) +// +// // Create a QConnect client with additional configuration +// svc := qconnect.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *QConnect { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "wisdom" + } + 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) *QConnect { + svc := &QConnect{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2020-10-19", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a QConnect operation and runs any +// custom request initialization. +func (c *QConnect) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/quicksight/api.go golang-github-aws-aws-sdk-go-1.48.14/service/quicksight/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/quicksight/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/quicksight/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1674,6 +1674,108 @@ return out, req.Send() } +const opCreateRoleMembership = "CreateRoleMembership" + +// CreateRoleMembershipRequest generates a "aws/request.Request" representing the +// client's request for the CreateRoleMembership 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 CreateRoleMembership for more information on using the CreateRoleMembership +// 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 CreateRoleMembershipRequest method. +// req, resp := client.CreateRoleMembershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateRoleMembership +func (c *QuickSight) CreateRoleMembershipRequest(input *CreateRoleMembershipInput) (req *request.Request, output *CreateRoleMembershipOutput) { + op := &request.Operation{ + Name: opCreateRoleMembership, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/members/{MemberName}", + } + + if input == nil { + input = &CreateRoleMembershipInput{} + } + + output = &CreateRoleMembershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRoleMembership API operation for Amazon QuickSight. +// +// Use CreateRoleMembership to add an existing Amazon QuickSight group to an +// existing role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation CreateRoleMembership for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - PreconditionNotMetException +// One or more preconditions aren't met. +// +// - InternalFailureException +// An internal failure occurred. +// +// - ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateRoleMembership +func (c *QuickSight) CreateRoleMembership(input *CreateRoleMembershipInput) (*CreateRoleMembershipOutput, error) { + req, out := c.CreateRoleMembershipRequest(input) + return out, req.Send() +} + +// CreateRoleMembershipWithContext is the same as CreateRoleMembership with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRoleMembership 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 *QuickSight) CreateRoleMembershipWithContext(ctx aws.Context, input *CreateRoleMembershipInput, opts ...request.Option) (*CreateRoleMembershipOutput, error) { + req, out := c.CreateRoleMembershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateTemplate = "CreateTemplate" // CreateTemplateRequest generates a "aws/request.Request" representing the @@ -3654,6 +3756,105 @@ return out, req.Send() } +const opDeleteIdentityPropagationConfig = "DeleteIdentityPropagationConfig" + +// DeleteIdentityPropagationConfigRequest generates a "aws/request.Request" representing the +// client's request for the DeleteIdentityPropagationConfig 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 DeleteIdentityPropagationConfig for more information on using the DeleteIdentityPropagationConfig +// 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 DeleteIdentityPropagationConfigRequest method. +// req, resp := client.DeleteIdentityPropagationConfigRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteIdentityPropagationConfig +func (c *QuickSight) DeleteIdentityPropagationConfigRequest(input *DeleteIdentityPropagationConfigInput) (req *request.Request, output *DeleteIdentityPropagationConfigOutput) { + op := &request.Operation{ + Name: opDeleteIdentityPropagationConfig, + HTTPMethod: "DELETE", + HTTPPath: "/accounts/{AwsAccountId}/identity-propagation-config/{Service}", + } + + if input == nil { + input = &DeleteIdentityPropagationConfigInput{} + } + + output = &DeleteIdentityPropagationConfigOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteIdentityPropagationConfig API operation for Amazon QuickSight. +// +// Deletes all access scopes and authorized targets that are associated with +// a service from the Amazon QuickSight IAM Identity Center application. +// +// This operation is only supported for Amazon QuickSight accounts that use +// IAM Identity Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation DeleteIdentityPropagationConfig for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteIdentityPropagationConfig +func (c *QuickSight) DeleteIdentityPropagationConfig(input *DeleteIdentityPropagationConfigInput) (*DeleteIdentityPropagationConfigOutput, error) { + req, out := c.DeleteIdentityPropagationConfigRequest(input) + return out, req.Send() +} + +// DeleteIdentityPropagationConfigWithContext is the same as DeleteIdentityPropagationConfig with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteIdentityPropagationConfig 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 *QuickSight) DeleteIdentityPropagationConfigWithContext(ctx aws.Context, input *DeleteIdentityPropagationConfigInput, opts ...request.Option) (*DeleteIdentityPropagationConfigOutput, error) { + req, out := c.DeleteIdentityPropagationConfigRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteNamespace = "DeleteNamespace" // DeleteNamespaceRequest generates a "aws/request.Request" representing the @@ -3856,6 +4057,208 @@ return out, req.Send() } +const opDeleteRoleCustomPermission = "DeleteRoleCustomPermission" + +// DeleteRoleCustomPermissionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRoleCustomPermission 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 DeleteRoleCustomPermission for more information on using the DeleteRoleCustomPermission +// 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 DeleteRoleCustomPermissionRequest method. +// req, resp := client.DeleteRoleCustomPermissionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteRoleCustomPermission +func (c *QuickSight) DeleteRoleCustomPermissionRequest(input *DeleteRoleCustomPermissionInput) (req *request.Request, output *DeleteRoleCustomPermissionOutput) { + op := &request.Operation{ + Name: opDeleteRoleCustomPermission, + HTTPMethod: "DELETE", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/custom-permission", + } + + if input == nil { + input = &DeleteRoleCustomPermissionInput{} + } + + output = &DeleteRoleCustomPermissionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteRoleCustomPermission API operation for Amazon QuickSight. +// +// Removes custom permissions from the role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation DeleteRoleCustomPermission for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - PreconditionNotMetException +// One or more preconditions aren't met. +// +// - InternalFailureException +// An internal failure occurred. +// +// - ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteRoleCustomPermission +func (c *QuickSight) DeleteRoleCustomPermission(input *DeleteRoleCustomPermissionInput) (*DeleteRoleCustomPermissionOutput, error) { + req, out := c.DeleteRoleCustomPermissionRequest(input) + return out, req.Send() +} + +// DeleteRoleCustomPermissionWithContext is the same as DeleteRoleCustomPermission with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRoleCustomPermission 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 *QuickSight) DeleteRoleCustomPermissionWithContext(ctx aws.Context, input *DeleteRoleCustomPermissionInput, opts ...request.Option) (*DeleteRoleCustomPermissionOutput, error) { + req, out := c.DeleteRoleCustomPermissionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteRoleMembership = "DeleteRoleMembership" + +// DeleteRoleMembershipRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRoleMembership 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 DeleteRoleMembership for more information on using the DeleteRoleMembership +// 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 DeleteRoleMembershipRequest method. +// req, resp := client.DeleteRoleMembershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteRoleMembership +func (c *QuickSight) DeleteRoleMembershipRequest(input *DeleteRoleMembershipInput) (req *request.Request, output *DeleteRoleMembershipOutput) { + op := &request.Operation{ + Name: opDeleteRoleMembership, + HTTPMethod: "DELETE", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/members/{MemberName}", + } + + if input == nil { + input = &DeleteRoleMembershipInput{} + } + + output = &DeleteRoleMembershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteRoleMembership API operation for Amazon QuickSight. +// +// Removes a group from a role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation DeleteRoleMembership for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - PreconditionNotMetException +// One or more preconditions aren't met. +// +// - InternalFailureException +// An internal failure occurred. +// +// - ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteRoleMembership +func (c *QuickSight) DeleteRoleMembership(input *DeleteRoleMembershipInput) (*DeleteRoleMembershipOutput, error) { + req, out := c.DeleteRoleMembershipRequest(input) + return out, req.Send() +} + +// DeleteRoleMembershipWithContext is the same as DeleteRoleMembership with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRoleMembership 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 *QuickSight) DeleteRoleMembershipWithContext(ctx aws.Context, input *DeleteRoleMembershipInput, opts ...request.Option) (*DeleteRoleMembershipOutput, error) { + req, out := c.DeleteRoleMembershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteTemplate = "DeleteTemplate" // DeleteTemplateRequest generates a "aws/request.Request" representing the @@ -7719,6 +8122,107 @@ return out, req.Send() } +const opDescribeRoleCustomPermission = "DescribeRoleCustomPermission" + +// DescribeRoleCustomPermissionRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRoleCustomPermission 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 DescribeRoleCustomPermission for more information on using the DescribeRoleCustomPermission +// 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 DescribeRoleCustomPermissionRequest method. +// req, resp := client.DescribeRoleCustomPermissionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeRoleCustomPermission +func (c *QuickSight) DescribeRoleCustomPermissionRequest(input *DescribeRoleCustomPermissionInput) (req *request.Request, output *DescribeRoleCustomPermissionOutput) { + op := &request.Operation{ + Name: opDescribeRoleCustomPermission, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/custom-permission", + } + + if input == nil { + input = &DescribeRoleCustomPermissionInput{} + } + + output = &DescribeRoleCustomPermissionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRoleCustomPermission API operation for Amazon QuickSight. +// +// Describes all custom permissions that are mapped to a role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation DescribeRoleCustomPermission for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - PreconditionNotMetException +// One or more preconditions aren't met. +// +// - InternalFailureException +// An internal failure occurred. +// +// - ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeRoleCustomPermission +func (c *QuickSight) DescribeRoleCustomPermission(input *DescribeRoleCustomPermissionInput) (*DescribeRoleCustomPermissionOutput, error) { + req, out := c.DescribeRoleCustomPermissionRequest(input) + return out, req.Send() +} + +// DescribeRoleCustomPermissionWithContext is the same as DescribeRoleCustomPermission with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRoleCustomPermission 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 *QuickSight) DescribeRoleCustomPermissionWithContext(ctx aws.Context, input *DescribeRoleCustomPermissionInput, opts ...request.Option) (*DescribeRoleCustomPermissionOutput, error) { + req, out := c.DescribeRoleCustomPermissionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeTemplate = "DescribeTemplate" // DescribeTemplateRequest generates a "aws/request.Request" representing the @@ -11622,6 +12126,105 @@ return p.Err() } +const opListIdentityPropagationConfigs = "ListIdentityPropagationConfigs" + +// ListIdentityPropagationConfigsRequest generates a "aws/request.Request" representing the +// client's request for the ListIdentityPropagationConfigs 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 ListIdentityPropagationConfigs for more information on using the ListIdentityPropagationConfigs +// 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 ListIdentityPropagationConfigsRequest method. +// req, resp := client.ListIdentityPropagationConfigsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIdentityPropagationConfigs +func (c *QuickSight) ListIdentityPropagationConfigsRequest(input *ListIdentityPropagationConfigsInput) (req *request.Request, output *ListIdentityPropagationConfigsOutput) { + op := &request.Operation{ + Name: opListIdentityPropagationConfigs, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/identity-propagation-config", + } + + if input == nil { + input = &ListIdentityPropagationConfigsInput{} + } + + output = &ListIdentityPropagationConfigsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIdentityPropagationConfigs API operation for Amazon QuickSight. +// +// Lists all services and authorized targets that the Amazon QuickSight IAM +// Identity Center application can access. +// +// This operation is only supported for Amazon QuickSight accounts that use +// IAM Identity Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation ListIdentityPropagationConfigs for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIdentityPropagationConfigs +func (c *QuickSight) ListIdentityPropagationConfigs(input *ListIdentityPropagationConfigsInput) (*ListIdentityPropagationConfigsOutput, error) { + req, out := c.ListIdentityPropagationConfigsRequest(input) + return out, req.Send() +} + +// ListIdentityPropagationConfigsWithContext is the same as ListIdentityPropagationConfigs with the addition of +// the ability to pass a context and additional request options. +// +// See ListIdentityPropagationConfigs 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 *QuickSight) ListIdentityPropagationConfigsWithContext(ctx aws.Context, input *ListIdentityPropagationConfigsInput, opts ...request.Option) (*ListIdentityPropagationConfigsOutput, error) { + req, out := c.ListIdentityPropagationConfigsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListIngestions = "ListIngestions" // ListIngestionsRequest generates a "aws/request.Request" representing the @@ -12040,6 +12643,170 @@ return out, req.Send() } +const opListRoleMemberships = "ListRoleMemberships" + +// ListRoleMembershipsRequest generates a "aws/request.Request" representing the +// client's request for the ListRoleMemberships 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 ListRoleMemberships for more information on using the ListRoleMemberships +// 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 ListRoleMembershipsRequest method. +// req, resp := client.ListRoleMembershipsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListRoleMemberships +func (c *QuickSight) ListRoleMembershipsRequest(input *ListRoleMembershipsInput) (req *request.Request, output *ListRoleMembershipsOutput) { + op := &request.Operation{ + Name: opListRoleMemberships, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/members", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRoleMembershipsInput{} + } + + output = &ListRoleMembershipsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRoleMemberships API operation for Amazon QuickSight. +// +// Lists all groups that are associated with a role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation ListRoleMemberships for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - InvalidNextTokenException +// The NextToken value isn't valid. +// +// - PreconditionNotMetException +// One or more preconditions aren't met. +// +// - LimitExceededException +// A limit is exceeded. +// +// - InternalFailureException +// An internal failure occurred. +// +// - ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListRoleMemberships +func (c *QuickSight) ListRoleMemberships(input *ListRoleMembershipsInput) (*ListRoleMembershipsOutput, error) { + req, out := c.ListRoleMembershipsRequest(input) + return out, req.Send() +} + +// ListRoleMembershipsWithContext is the same as ListRoleMemberships with the addition of +// the ability to pass a context and additional request options. +// +// See ListRoleMemberships 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 *QuickSight) ListRoleMembershipsWithContext(ctx aws.Context, input *ListRoleMembershipsInput, opts ...request.Option) (*ListRoleMembershipsOutput, error) { + req, out := c.ListRoleMembershipsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRoleMembershipsPages iterates over the pages of a ListRoleMemberships operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRoleMemberships 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 ListRoleMemberships operation. +// pageNum := 0 +// err := client.ListRoleMembershipsPages(params, +// func(page *quicksight.ListRoleMembershipsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *QuickSight) ListRoleMembershipsPages(input *ListRoleMembershipsInput, fn func(*ListRoleMembershipsOutput, bool) bool) error { + return c.ListRoleMembershipsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRoleMembershipsPagesWithContext same as ListRoleMembershipsPages 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 *QuickSight) ListRoleMembershipsPagesWithContext(ctx aws.Context, input *ListRoleMembershipsInput, fn func(*ListRoleMembershipsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRoleMembershipsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRoleMembershipsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRoleMembershipsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -15436,15 +16203,15 @@ // for that tag. // // You can associate as many as 50 tags with a resource. Amazon QuickSight supports -// tagging on data set, data source, dashboard, template, and topic. +// tagging on data set, data source, dashboard, template, topic, and user. // // Tagging for Amazon QuickSight works in a similar way to tagging for other // Amazon Web Services services, except for the following: // -// - You can't use tags to track costs for Amazon QuickSight. This isn't -// possible because you can't tag the resources that Amazon QuickSight costs -// are based on, for example Amazon QuickSight storage capacity (SPICE), -// number of users, type of users, and usage metrics. +// - Tags are used to track costs for users in Amazon QuickSight. You can't +// tag other resources that Amazon QuickSight costs are based on, such as +// storage capacoty (SPICE), session usage, alert consumption, or reporting +// units. // // - Amazon QuickSight doesn't currently support the tag editor for Resource // Groups. @@ -17125,6 +17892,105 @@ return out, req.Send() } +const opUpdateIdentityPropagationConfig = "UpdateIdentityPropagationConfig" + +// UpdateIdentityPropagationConfigRequest generates a "aws/request.Request" representing the +// client's request for the UpdateIdentityPropagationConfig 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 UpdateIdentityPropagationConfig for more information on using the UpdateIdentityPropagationConfig +// 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 UpdateIdentityPropagationConfigRequest method. +// req, resp := client.UpdateIdentityPropagationConfigRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateIdentityPropagationConfig +func (c *QuickSight) UpdateIdentityPropagationConfigRequest(input *UpdateIdentityPropagationConfigInput) (req *request.Request, output *UpdateIdentityPropagationConfigOutput) { + op := &request.Operation{ + Name: opUpdateIdentityPropagationConfig, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/identity-propagation-config/{Service}", + } + + if input == nil { + input = &UpdateIdentityPropagationConfigInput{} + } + + output = &UpdateIdentityPropagationConfigOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateIdentityPropagationConfig API operation for Amazon QuickSight. +// +// Adds or updates services and authorized targets to configure what the Amazon +// QuickSight IAM Identity Center application can access. +// +// This operation is only supported for Amazon QuickSight accounts using IAM +// Identity Center +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation UpdateIdentityPropagationConfig for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateIdentityPropagationConfig +func (c *QuickSight) UpdateIdentityPropagationConfig(input *UpdateIdentityPropagationConfigInput) (*UpdateIdentityPropagationConfigOutput, error) { + req, out := c.UpdateIdentityPropagationConfigRequest(input) + return out, req.Send() +} + +// UpdateIdentityPropagationConfigWithContext is the same as UpdateIdentityPropagationConfig with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateIdentityPropagationConfig 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 *QuickSight) UpdateIdentityPropagationConfigWithContext(ctx aws.Context, input *UpdateIdentityPropagationConfigInput, opts ...request.Option) (*UpdateIdentityPropagationConfigOutput, error) { + req, out := c.UpdateIdentityPropagationConfigRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateIpRestriction = "UpdateIpRestriction" // UpdateIpRestrictionRequest generates a "aws/request.Request" representing the @@ -17441,6 +18307,107 @@ return out, req.Send() } +const opUpdateRoleCustomPermission = "UpdateRoleCustomPermission" + +// UpdateRoleCustomPermissionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRoleCustomPermission 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 UpdateRoleCustomPermission for more information on using the UpdateRoleCustomPermission +// 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 UpdateRoleCustomPermissionRequest method. +// req, resp := client.UpdateRoleCustomPermissionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateRoleCustomPermission +func (c *QuickSight) UpdateRoleCustomPermissionRequest(input *UpdateRoleCustomPermissionInput) (req *request.Request, output *UpdateRoleCustomPermissionOutput) { + op := &request.Operation{ + Name: opUpdateRoleCustomPermission, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/roles/{Role}/custom-permission", + } + + if input == nil { + input = &UpdateRoleCustomPermissionInput{} + } + + output = &UpdateRoleCustomPermissionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRoleCustomPermission API operation for Amazon QuickSight. +// +// Updates the custom permissions that are associated with a role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon QuickSight's +// API operation UpdateRoleCustomPermission for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// credentials. +// +// - InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// - ResourceNotFoundException +// One or more resources can't be found. +// +// - ThrottlingException +// Access is throttled. +// +// - PreconditionNotMetException +// One or more preconditions aren't met. +// +// - InternalFailureException +// An internal failure occurred. +// +// - ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateRoleCustomPermission +func (c *QuickSight) UpdateRoleCustomPermission(input *UpdateRoleCustomPermissionInput) (*UpdateRoleCustomPermissionOutput, error) { + req, out := c.UpdateRoleCustomPermissionRequest(input) + return out, req.Send() +} + +// UpdateRoleCustomPermissionWithContext is the same as UpdateRoleCustomPermission with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRoleCustomPermission 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 *QuickSight) UpdateRoleCustomPermissionWithContext(ctx aws.Context, input *UpdateRoleCustomPermissionInput, opts ...request.Option) (*UpdateRoleCustomPermissionOutput, error) { + req, out := c.UpdateRoleCustomPermissionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateTemplate = "UpdateTemplate" // UpdateTemplateRequest generates a "aws/request.Request" representing the @@ -19426,6 +20393,9 @@ // in the Amazon QuickSight User Guide. FilterGroups []*FilterGroup `type:"list"` + // An array of option definitions for an analysis. + Options *AssetOptions `type:"structure"` + // An array of parameter declarations for an analysis. // // Parameters are named variables that can transfer a value for use by an action @@ -19569,6 +20539,12 @@ return s } +// SetOptions sets the Options field's value. +func (s *AnalysisDefinition) SetOptions(v *AssetOptions) *AnalysisDefinition { + s.Options = v + return s +} + // SetParameterDeclarations sets the ParameterDeclarations field's value. func (s *AnalysisDefinition) SetParameterDeclarations(v []*ParameterDeclaration) *AnalysisDefinition { s.ParameterDeclarations = v @@ -20624,7 +21600,9 @@ // The ARN of the specific Analysis resource whose override properties are configured // in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of Analysis resource properties to generate variables for in the returned // CloudFormation template. @@ -20654,6 +21632,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobAnalysisOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobAnalysisOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -20686,7 +21667,9 @@ // The ARN of the specific Dashboard resource whose override properties are // configured in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of Dashboard resource properties to generate variables for in the // returned CloudFormation template. @@ -20716,6 +21699,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobDashboardOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobDashboardOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -20748,7 +21734,9 @@ // The ARN of the specific DataSet resource whose override properties are configured // in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of DataSet resource properties to generate variables for in the returned // CloudFormation template. @@ -20778,6 +21766,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobDataSetOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobDataSetOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -20810,7 +21801,9 @@ // The ARN of the specific DataSource resource whose override properties are // configured in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of DataSource resource properties to generate variables for in the // returned CloudFormation template. @@ -20840,6 +21833,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobDataSourceOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobDataSourceOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -20922,7 +21918,9 @@ // The ARN of the specific RefreshSchedule resource whose override properties // are configured in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of RefreshSchedule resource properties to generate variables for in // the returned CloudFormation template. @@ -20952,6 +21950,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobRefreshScheduleOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobRefreshScheduleOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -21033,6 +22034,14 @@ // asset bundle. IncludeAllDependencies *bool `type:"boolean"` + // The flag that determines the inclusion of permissions associated with each + // resource ARN. + IncludePermissions *bool `type:"boolean"` + + // The flag that determines the inclusion of tags associated with each resource + // ARN. + IncludeTags *bool `type:"boolean"` + // The current status of the export job. JobStatus *string `type:"string" enum:"AssetBundleExportJobStatus"` } @@ -21085,6 +22094,18 @@ return s } +// SetIncludePermissions sets the IncludePermissions field's value. +func (s *AssetBundleExportJobSummary) SetIncludePermissions(v bool) *AssetBundleExportJobSummary { + s.IncludePermissions = &v + return s +} + +// SetIncludeTags sets the IncludeTags field's value. +func (s *AssetBundleExportJobSummary) SetIncludeTags(v bool) *AssetBundleExportJobSummary { + s.IncludeTags = &v + return s +} + // SetJobStatus sets the JobStatus field's value. func (s *AssetBundleExportJobSummary) SetJobStatus(v string) *AssetBundleExportJobSummary { s.JobStatus = &v @@ -21098,7 +22119,9 @@ // The ARN of the specific Theme resource whose override properties are configured // in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of Theme resource properties to generate variables for in the returned // CloudFormation template. @@ -21128,6 +22151,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobThemeOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobThemeOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -21160,7 +22186,9 @@ // The ARN of the specific VPCConnection resource whose override properties // are configured in this structure. - Arn *string `type:"string"` + // + // Arn is a required field + Arn *string `type:"string" required:"true"` // A list of VPCConnection resource properties to generate variables for in // the returned CloudFormation template. @@ -21190,6 +22218,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *AssetBundleExportJobVPCConnectionOverrideProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssetBundleExportJobVPCConnectionOverrideProperties"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } if s.Properties == nil { invalidParams.Add(request.NewErrParamRequired("Properties")) } @@ -21215,6 +22246,82 @@ return s } +// The option to relax the validation that is required to export each asset. +// When StrictModeForAllResource is set to true, validation is skipped for specific +// UI errors. +type AssetBundleExportJobValidationStrategy struct { + _ struct{} `type:"structure"` + + // A Boolean value that indicates whether to export resources under strict or + // lenient mode. + StrictModeForAllResources *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 AssetBundleExportJobValidationStrategy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleExportJobValidationStrategy) GoString() string { + return s.String() +} + +// SetStrictModeForAllResources sets the StrictModeForAllResources field's value. +func (s *AssetBundleExportJobValidationStrategy) SetStrictModeForAllResources(v bool) *AssetBundleExportJobValidationStrategy { + s.StrictModeForAllResources = &v + return s +} + +// Describes a warning that occurred during an Asset Bundle export job. +type AssetBundleExportJobWarning struct { + _ struct{} `type:"structure"` + + // The ARN of the resource whose processing caused a warning. + Arn *string `type:"string"` + + // A description of the warning. + 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 AssetBundleExportJobWarning) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleExportJobWarning) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *AssetBundleExportJobWarning) SetArn(v string) *AssetBundleExportJobWarning { + s.Arn = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *AssetBundleExportJobWarning) SetMessage(v string) *AssetBundleExportJobWarning { + s.Message = &v + return s +} + // The override parameters for a single analysis that is being imported. type AssetBundleImportJobAnalysisOverrideParameters struct { _ struct{} `type:"structure"` @@ -21274,6 +22381,156 @@ return s } +// An object that contains a list of permissions to be applied to a list of +// analysis IDs. +type AssetBundleImportJobAnalysisOverridePermissions struct { + _ struct{} `type:"structure"` + + // A list of analysis IDs that you want to apply overrides to. You can use * + // to override all analyses in this asset bundle. + // + // AnalysisIds is a required field + AnalysisIds []*string `min:"1" type:"list" required:"true"` + + // A list of permissions for the analyses that you want to apply overrides to. + // + // Permissions is a required field + Permissions *AssetBundleResourcePermissions `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 AssetBundleImportJobAnalysisOverridePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobAnalysisOverridePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobAnalysisOverridePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobAnalysisOverridePermissions"} + if s.AnalysisIds == nil { + invalidParams.Add(request.NewErrParamRequired("AnalysisIds")) + } + if s.AnalysisIds != nil && len(s.AnalysisIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnalysisIds", 1)) + } + if s.Permissions == nil { + invalidParams.Add(request.NewErrParamRequired("Permissions")) + } + if s.Permissions != nil { + if err := s.Permissions.Validate(); err != nil { + invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnalysisIds sets the AnalysisIds field's value. +func (s *AssetBundleImportJobAnalysisOverridePermissions) SetAnalysisIds(v []*string) *AssetBundleImportJobAnalysisOverridePermissions { + s.AnalysisIds = v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *AssetBundleImportJobAnalysisOverridePermissions) SetPermissions(v *AssetBundleResourcePermissions) *AssetBundleImportJobAnalysisOverridePermissions { + s.Permissions = v + return s +} + +// An object that contains a list of tags to be assigned to a list of analysis +// IDs. +type AssetBundleImportJobAnalysisOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of analysis IDs that you want to apply overrides to. You can use * + // to override all analyses in this asset bundle. + // + // AnalysisIds is a required field + AnalysisIds []*string `min:"1" type:"list" required:"true"` + + // A list of tags for the analyses that you want to apply overrides to. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobAnalysisOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobAnalysisOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobAnalysisOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobAnalysisOverrideTags"} + if s.AnalysisIds == nil { + invalidParams.Add(request.NewErrParamRequired("AnalysisIds")) + } + if s.AnalysisIds != nil && len(s.AnalysisIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AnalysisIds", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if 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 +} + +// SetAnalysisIds sets the AnalysisIds field's value. +func (s *AssetBundleImportJobAnalysisOverrideTags) SetAnalysisIds(v []*string) *AssetBundleImportJobAnalysisOverrideTags { + s.AnalysisIds = v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssetBundleImportJobAnalysisOverrideTags) SetTags(v []*Tag) *AssetBundleImportJobAnalysisOverrideTags { + s.Tags = v + return s +} + // The override parameters for a single dashboard that is being imported. type AssetBundleImportJobDashboardOverrideParameters struct { _ struct{} `type:"structure"` @@ -21333,6 +22590,167 @@ return s } +// An object that contains a list of permissions to be applied to a list of +// dashboard IDs. +type AssetBundleImportJobDashboardOverridePermissions struct { + _ struct{} `type:"structure"` + + // A list of dashboard IDs that you want to apply overrides to. You can use + // * to override all dashboards in this asset bundle. + // + // DashboardIds is a required field + DashboardIds []*string `min:"1" type:"list" required:"true"` + + // A structure that contains the link sharing configurations that you want to + // apply overrides to. + LinkSharingConfiguration *AssetBundleResourceLinkSharingConfiguration `type:"structure"` + + // A list of permissions for the dashboards that you want to apply overrides + // to. + Permissions *AssetBundleResourcePermissions `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 AssetBundleImportJobDashboardOverridePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDashboardOverridePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobDashboardOverridePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobDashboardOverridePermissions"} + if s.DashboardIds == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardIds")) + } + if s.DashboardIds != nil && len(s.DashboardIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardIds", 1)) + } + if s.LinkSharingConfiguration != nil { + if err := s.LinkSharingConfiguration.Validate(); err != nil { + invalidParams.AddNested("LinkSharingConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Permissions != nil { + if err := s.Permissions.Validate(); err != nil { + invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDashboardIds sets the DashboardIds field's value. +func (s *AssetBundleImportJobDashboardOverridePermissions) SetDashboardIds(v []*string) *AssetBundleImportJobDashboardOverridePermissions { + s.DashboardIds = v + return s +} + +// SetLinkSharingConfiguration sets the LinkSharingConfiguration field's value. +func (s *AssetBundleImportJobDashboardOverridePermissions) SetLinkSharingConfiguration(v *AssetBundleResourceLinkSharingConfiguration) *AssetBundleImportJobDashboardOverridePermissions { + s.LinkSharingConfiguration = v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *AssetBundleImportJobDashboardOverridePermissions) SetPermissions(v *AssetBundleResourcePermissions) *AssetBundleImportJobDashboardOverridePermissions { + s.Permissions = v + return s +} + +// An object that contains a list of tags to be assigned to a list of dashboard +// IDs. +type AssetBundleImportJobDashboardOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of dashboard IDs that you want to apply overrides to. You can use + // * to override all dashboards in this asset bundle. + // + // DashboardIds is a required field + DashboardIds []*string `min:"1" type:"list" required:"true"` + + // A list of tags for the dashboards that you want to apply overrides to. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDashboardOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDashboardOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobDashboardOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobDashboardOverrideTags"} + if s.DashboardIds == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardIds")) + } + if s.DashboardIds != nil && len(s.DashboardIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardIds", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if 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 +} + +// SetDashboardIds sets the DashboardIds field's value. +func (s *AssetBundleImportJobDashboardOverrideTags) SetDashboardIds(v []*string) *AssetBundleImportJobDashboardOverrideTags { + s.DashboardIds = v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssetBundleImportJobDashboardOverrideTags) SetTags(v []*Tag) *AssetBundleImportJobDashboardOverrideTags { + s.Tags = v + return s +} + // The override parameters for a single dataset that is being imported. type AssetBundleImportJobDataSetOverrideParameters struct { _ struct{} `type:"structure"` @@ -21392,6 +22810,156 @@ return s } +// An object that contains a list of permissions to be applied to a list of +// dataset IDs. +type AssetBundleImportJobDataSetOverridePermissions struct { + _ struct{} `type:"structure"` + + // A list of dataset IDs that you want to apply overrides to. You can use * + // to override all datasets in this asset bundle. + // + // DataSetIds is a required field + DataSetIds []*string `min:"1" type:"list" required:"true"` + + // A list of permissions for the datasets that you want to apply overrides to. + // + // Permissions is a required field + Permissions *AssetBundleResourcePermissions `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 AssetBundleImportJobDataSetOverridePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDataSetOverridePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobDataSetOverridePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobDataSetOverridePermissions"} + if s.DataSetIds == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetIds")) + } + if s.DataSetIds != nil && len(s.DataSetIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetIds", 1)) + } + if s.Permissions == nil { + invalidParams.Add(request.NewErrParamRequired("Permissions")) + } + if s.Permissions != nil { + if err := s.Permissions.Validate(); err != nil { + invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetIds sets the DataSetIds field's value. +func (s *AssetBundleImportJobDataSetOverridePermissions) SetDataSetIds(v []*string) *AssetBundleImportJobDataSetOverridePermissions { + s.DataSetIds = v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *AssetBundleImportJobDataSetOverridePermissions) SetPermissions(v *AssetBundleResourcePermissions) *AssetBundleImportJobDataSetOverridePermissions { + s.Permissions = v + return s +} + +// An object that contains a list of tags to be assigned to a list of dataset +// IDs. +type AssetBundleImportJobDataSetOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of dataset IDs that you want to apply overrides to. You can use * + // to override all datasets in this asset bundle. + // + // DataSetIds is a required field + DataSetIds []*string `min:"1" type:"list" required:"true"` + + // A list of tags for the datasets that you want to apply overrides to. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDataSetOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDataSetOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobDataSetOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobDataSetOverrideTags"} + if s.DataSetIds == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetIds")) + } + if s.DataSetIds != nil && len(s.DataSetIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetIds", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if 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 +} + +// SetDataSetIds sets the DataSetIds field's value. +func (s *AssetBundleImportJobDataSetOverrideTags) SetDataSetIds(v []*string) *AssetBundleImportJobDataSetOverrideTags { + s.DataSetIds = v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssetBundleImportJobDataSetOverrideTags) SetTags(v []*Tag) *AssetBundleImportJobDataSetOverrideTags { + s.Tags = v + return s +} + // A username and password credential pair to use to import a data source resource. type AssetBundleImportJobDataSourceCredentialPair struct { _ struct{} `type:"structure" sensitive:"true"` @@ -21640,6 +23208,157 @@ return s } +// An object that contains a list of permissions to be applied to a list of +// data source IDs. +type AssetBundleImportJobDataSourceOverridePermissions struct { + _ struct{} `type:"structure"` + + // A list of data source IDs that you want to apply overrides to. You can use + // * to override all data sources in this asset bundle. + // + // DataSourceIds is a required field + DataSourceIds []*string `min:"1" type:"list" required:"true"` + + // A list of permissions for the data source that you want to apply overrides + // to. + // + // Permissions is a required field + Permissions *AssetBundleResourcePermissions `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 AssetBundleImportJobDataSourceOverridePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDataSourceOverridePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobDataSourceOverridePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobDataSourceOverridePermissions"} + if s.DataSourceIds == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceIds")) + } + if s.DataSourceIds != nil && len(s.DataSourceIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceIds", 1)) + } + if s.Permissions == nil { + invalidParams.Add(request.NewErrParamRequired("Permissions")) + } + if s.Permissions != nil { + if err := s.Permissions.Validate(); err != nil { + invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSourceIds sets the DataSourceIds field's value. +func (s *AssetBundleImportJobDataSourceOverridePermissions) SetDataSourceIds(v []*string) *AssetBundleImportJobDataSourceOverridePermissions { + s.DataSourceIds = v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *AssetBundleImportJobDataSourceOverridePermissions) SetPermissions(v *AssetBundleResourcePermissions) *AssetBundleImportJobDataSourceOverridePermissions { + s.Permissions = v + return s +} + +// An object that contains a list of tags to be assigned to a list of data source +// IDs. +type AssetBundleImportJobDataSourceOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of data source IDs that you want to apply overrides to. You can use + // * to override all data sources in this asset bundle. + // + // DataSourceIds is a required field + DataSourceIds []*string `min:"1" type:"list" required:"true"` + + // A list of tags for the data source that you want to apply overrides to. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDataSourceOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobDataSourceOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobDataSourceOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobDataSourceOverrideTags"} + if s.DataSourceIds == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceIds")) + } + if s.DataSourceIds != nil && len(s.DataSourceIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceIds", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if 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 +} + +// SetDataSourceIds sets the DataSourceIds field's value. +func (s *AssetBundleImportJobDataSourceOverrideTags) SetDataSourceIds(v []*string) *AssetBundleImportJobDataSourceOverrideTags { + s.DataSourceIds = v + return s +} + +// SetTags sets the Tags field's value. +func (s *AssetBundleImportJobDataSourceOverrideTags) SetTags(v []*Tag) *AssetBundleImportJobDataSourceOverrideTags { + s.Tags = v + return s +} + // Describes an error that occurred within an Asset Bundle import execution. type AssetBundleImportJobError struct { _ struct{} `type:"structure"` @@ -21895,6 +23614,361 @@ return s } +// A structure that contains the override permission configurations that modify +// the permissions for specified resources before the resource is imported. +type AssetBundleImportJobOverridePermissions struct { + _ struct{} `type:"structure"` + + // A list of permissions overrides for any Analysis resources that are present + // in the asset bundle that is imported. + Analyses []*AssetBundleImportJobAnalysisOverridePermissions `min:"1" type:"list"` + + // A list of permissions overrides for any Dashboard resources that are present + // in the asset bundle that is imported. + Dashboards []*AssetBundleImportJobDashboardOverridePermissions `min:"1" type:"list"` + + // A list of permissions overrides for any DataSet resources that are present + // in the asset bundle that is imported. + DataSets []*AssetBundleImportJobDataSetOverridePermissions `min:"1" type:"list"` + + // A list of permissions overrides for any DataSource resources that are present + // in the asset bundle that is imported. + DataSources []*AssetBundleImportJobDataSourceOverridePermissions `min:"1" type:"list"` + + // A list of permissions overrides for any Theme resources that are present + // in the asset bundle that is imported. + Themes []*AssetBundleImportJobThemeOverridePermissions `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 AssetBundleImportJobOverridePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobOverridePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobOverridePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobOverridePermissions"} + if s.Analyses != nil && len(s.Analyses) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Analyses", 1)) + } + if s.Dashboards != nil && len(s.Dashboards) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Dashboards", 1)) + } + if s.DataSets != nil && len(s.DataSets) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSets", 1)) + } + if s.DataSources != nil && len(s.DataSources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSources", 1)) + } + if s.Themes != nil && len(s.Themes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Themes", 1)) + } + if s.Analyses != nil { + for i, v := range s.Analyses { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Analyses", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Dashboards != nil { + for i, v := range s.Dashboards { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dashboards", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DataSets != nil { + for i, v := range s.DataSets { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSets", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DataSources != nil { + for i, v := range s.DataSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSources", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Themes != nil { + for i, v := range s.Themes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Themes", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnalyses sets the Analyses field's value. +func (s *AssetBundleImportJobOverridePermissions) SetAnalyses(v []*AssetBundleImportJobAnalysisOverridePermissions) *AssetBundleImportJobOverridePermissions { + s.Analyses = v + return s +} + +// SetDashboards sets the Dashboards field's value. +func (s *AssetBundleImportJobOverridePermissions) SetDashboards(v []*AssetBundleImportJobDashboardOverridePermissions) *AssetBundleImportJobOverridePermissions { + s.Dashboards = v + return s +} + +// SetDataSets sets the DataSets field's value. +func (s *AssetBundleImportJobOverridePermissions) SetDataSets(v []*AssetBundleImportJobDataSetOverridePermissions) *AssetBundleImportJobOverridePermissions { + s.DataSets = v + return s +} + +// SetDataSources sets the DataSources field's value. +func (s *AssetBundleImportJobOverridePermissions) SetDataSources(v []*AssetBundleImportJobDataSourceOverridePermissions) *AssetBundleImportJobOverridePermissions { + s.DataSources = v + return s +} + +// SetThemes sets the Themes field's value. +func (s *AssetBundleImportJobOverridePermissions) SetThemes(v []*AssetBundleImportJobThemeOverridePermissions) *AssetBundleImportJobOverridePermissions { + s.Themes = v + return s +} + +// A structure that contains the override tag configuration that modify the +// tags that are assigned to specified resources before the resource is imported. +type AssetBundleImportJobOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of tag overrides for any Analysis resources that are present in the + // asset bundle that is imported. + Analyses []*AssetBundleImportJobAnalysisOverrideTags `min:"1" type:"list"` + + // A list of tag overrides for any Dashboard resources that are present in the + // asset bundle that is imported. + Dashboards []*AssetBundleImportJobDashboardOverrideTags `min:"1" type:"list"` + + // A list of tag overrides for any DataSet resources that are present in the + // asset bundle that is imported. + DataSets []*AssetBundleImportJobDataSetOverrideTags `min:"1" type:"list"` + + // A list of tag overrides for any DataSource resources that are present in + // the asset bundle that is imported. + DataSources []*AssetBundleImportJobDataSourceOverrideTags `min:"1" type:"list"` + + // A list of tag overrides for any Theme resources that are present in the asset + // bundle that is imported. + Themes []*AssetBundleImportJobThemeOverrideTags `min:"1" type:"list"` + + // A list of tag overrides for any VPCConnection resources that are present + // in the asset bundle that is imported. + VPCConnections []*AssetBundleImportJobVPCConnectionOverrideTags `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 AssetBundleImportJobOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobOverrideTags"} + if s.Analyses != nil && len(s.Analyses) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Analyses", 1)) + } + if s.Dashboards != nil && len(s.Dashboards) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Dashboards", 1)) + } + if s.DataSets != nil && len(s.DataSets) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSets", 1)) + } + if s.DataSources != nil && len(s.DataSources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSources", 1)) + } + if s.Themes != nil && len(s.Themes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Themes", 1)) + } + if s.VPCConnections != nil && len(s.VPCConnections) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VPCConnections", 1)) + } + if s.Analyses != nil { + for i, v := range s.Analyses { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Analyses", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Dashboards != nil { + for i, v := range s.Dashboards { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dashboards", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DataSets != nil { + for i, v := range s.DataSets { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSets", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DataSources != nil { + for i, v := range s.DataSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSources", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Themes != nil { + for i, v := range s.Themes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Themes", i), err.(request.ErrInvalidParams)) + } + } + } + if s.VPCConnections != nil { + for i, v := range s.VPCConnections { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VPCConnections", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnalyses sets the Analyses field's value. +func (s *AssetBundleImportJobOverrideTags) SetAnalyses(v []*AssetBundleImportJobAnalysisOverrideTags) *AssetBundleImportJobOverrideTags { + s.Analyses = v + return s +} + +// SetDashboards sets the Dashboards field's value. +func (s *AssetBundleImportJobOverrideTags) SetDashboards(v []*AssetBundleImportJobDashboardOverrideTags) *AssetBundleImportJobOverrideTags { + s.Dashboards = v + return s +} + +// SetDataSets sets the DataSets field's value. +func (s *AssetBundleImportJobOverrideTags) SetDataSets(v []*AssetBundleImportJobDataSetOverrideTags) *AssetBundleImportJobOverrideTags { + s.DataSets = v + return s +} + +// SetDataSources sets the DataSources field's value. +func (s *AssetBundleImportJobOverrideTags) SetDataSources(v []*AssetBundleImportJobDataSourceOverrideTags) *AssetBundleImportJobOverrideTags { + s.DataSources = v + return s +} + +// SetThemes sets the Themes field's value. +func (s *AssetBundleImportJobOverrideTags) SetThemes(v []*AssetBundleImportJobThemeOverrideTags) *AssetBundleImportJobOverrideTags { + s.Themes = v + return s +} + +// SetVPCConnections sets the VPCConnections field's value. +func (s *AssetBundleImportJobOverrideTags) SetVPCConnections(v []*AssetBundleImportJobVPCConnectionOverrideTags) *AssetBundleImportJobOverrideTags { + s.VPCConnections = v + return s +} + +// An optional parameter that overrides the validation strategy for all analyses +// and dashboards before the resource is imported. +type AssetBundleImportJobOverrideValidationStrategy struct { + _ struct{} `type:"structure"` + + // A Boolean value that indicates whether to import all analyses and dashboards + // under strict or lenient mode. + StrictModeForAllResources *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 AssetBundleImportJobOverrideValidationStrategy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobOverrideValidationStrategy) GoString() string { + return s.String() +} + +// SetStrictModeForAllResources sets the StrictModeForAllResources field's value. +func (s *AssetBundleImportJobOverrideValidationStrategy) SetStrictModeForAllResources(v bool) *AssetBundleImportJobOverrideValidationStrategy { + s.StrictModeForAllResources = &v + return s +} + // A list of overrides for a specific RefreshsSchedule resource that is present // in the asset bundle that is imported. type AssetBundleImportJobRefreshScheduleOverrideParameters struct { @@ -22133,6 +24207,156 @@ return s } +// An object that contains a list of permissions to be applied to a list of +// theme IDs. +type AssetBundleImportJobThemeOverridePermissions struct { + _ struct{} `type:"structure"` + + // A list of permissions for the themes that you want to apply overrides to. + // + // Permissions is a required field + Permissions *AssetBundleResourcePermissions `type:"structure" required:"true"` + + // A list of theme IDs that you want to apply overrides to. You can use * to + // override all themes in this asset bundle. + // + // ThemeIds is a required field + ThemeIds []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobThemeOverridePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobThemeOverridePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobThemeOverridePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobThemeOverridePermissions"} + if s.Permissions == nil { + invalidParams.Add(request.NewErrParamRequired("Permissions")) + } + if s.ThemeIds == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeIds")) + } + if s.ThemeIds != nil && len(s.ThemeIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeIds", 1)) + } + if s.Permissions != nil { + if err := s.Permissions.Validate(); err != nil { + invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPermissions sets the Permissions field's value. +func (s *AssetBundleImportJobThemeOverridePermissions) SetPermissions(v *AssetBundleResourcePermissions) *AssetBundleImportJobThemeOverridePermissions { + s.Permissions = v + return s +} + +// SetThemeIds sets the ThemeIds field's value. +func (s *AssetBundleImportJobThemeOverridePermissions) SetThemeIds(v []*string) *AssetBundleImportJobThemeOverridePermissions { + s.ThemeIds = v + return s +} + +// An object that contains a list of tags to be assigned to a list of theme +// IDs. +type AssetBundleImportJobThemeOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of tags for the themes that you want to apply overrides to. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` + + // A list of theme IDs that you want to apply overrides to. You can use * to + // override all themes in this asset bundle. + // + // ThemeIds is a required field + ThemeIds []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobThemeOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobThemeOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobThemeOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobThemeOverrideTags"} + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ThemeIds == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeIds")) + } + if s.ThemeIds != nil && len(s.ThemeIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeIds", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTags sets the Tags field's value. +func (s *AssetBundleImportJobThemeOverrideTags) SetTags(v []*Tag) *AssetBundleImportJobThemeOverrideTags { + s.Tags = v + return s +} + +// SetThemeIds sets the ThemeIds field's value. +func (s *AssetBundleImportJobThemeOverrideTags) SetThemeIds(v []*string) *AssetBundleImportJobThemeOverrideTags { + s.ThemeIds = v + return s +} + // The override parameters for a single VPC connection that is imported. type AssetBundleImportJobVPCConnectionOverrideParameters struct { _ struct{} `type:"structure"` @@ -22244,6 +24468,85 @@ return s } +// An object that contains a list of tags to be assigned to a list of VPC connection +// IDs. +type AssetBundleImportJobVPCConnectionOverrideTags struct { + _ struct{} `type:"structure"` + + // A list of tags for the VPC connections that you want to apply overrides to. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` + + // A list of VPC connection IDs that you want to apply overrides to. You can + // use * to override all VPC connections in this asset bundle. + // + // VPCConnectionIds is a required field + VPCConnectionIds []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobVPCConnectionOverrideTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleImportJobVPCConnectionOverrideTags) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleImportJobVPCConnectionOverrideTags) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleImportJobVPCConnectionOverrideTags"} + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.VPCConnectionIds == nil { + invalidParams.Add(request.NewErrParamRequired("VPCConnectionIds")) + } + if s.VPCConnectionIds != nil && len(s.VPCConnectionIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VPCConnectionIds", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTags sets the Tags field's value. +func (s *AssetBundleImportJobVPCConnectionOverrideTags) SetTags(v []*Tag) *AssetBundleImportJobVPCConnectionOverrideTags { + s.Tags = v + return s +} + +// SetVPCConnectionIds sets the VPCConnectionIds field's value. +func (s *AssetBundleImportJobVPCConnectionOverrideTags) SetVPCConnectionIds(v []*string) *AssetBundleImportJobVPCConnectionOverrideTags { + s.VPCConnectionIds = v + return s +} + // The source of the asset bundle zip file that contains the data that you want // to import. The file must be in QUICKSIGHT_JSON format. type AssetBundleImportSource struct { @@ -22311,7 +24614,11 @@ // at the start of the import job. This URL is valid for five minutes after // issuance. Call DescribeAssetBundleExportJob again for a fresh URL if needed. // The downloaded asset bundle is a .qs zip file. - Body *string `type:"string"` + // + // Body is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AssetBundleImportSourceDescription's + // String and GoString methods. + Body *string `type:"string" sensitive:"true"` // The Amazon S3 URI that you provided at the start of the import job. S3Uri *string `type:"string"` @@ -22347,6 +24654,164 @@ return s } +// A structure that contains the configuration of a shared link to an Amazon +// QuickSight dashboard. +type AssetBundleResourceLinkSharingConfiguration struct { + _ struct{} `type:"structure"` + + // A list of link sharing permissions for the dashboards that you want to apply + // overrides to. + Permissions *AssetBundleResourcePermissions `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 AssetBundleResourceLinkSharingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleResourceLinkSharingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleResourceLinkSharingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleResourceLinkSharingConfiguration"} + if s.Permissions != nil { + if err := s.Permissions.Validate(); err != nil { + invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPermissions sets the Permissions field's value. +func (s *AssetBundleResourceLinkSharingConfiguration) SetPermissions(v *AssetBundleResourcePermissions) *AssetBundleResourceLinkSharingConfiguration { + s.Permissions = v + return s +} + +// A structure that contains the permissions for the resource that you want +// to override in an asset bundle import job. +type AssetBundleResourcePermissions struct { + _ struct{} `type:"structure"` + + // A list of IAM actions to grant permissions on. + // + // Actions is a required field + Actions []*string `min:"1" type:"list" required:"true"` + + // A list of principals to grant permissions on. + // + // Principals is a required field + Principals []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleResourcePermissions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetBundleResourcePermissions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssetBundleResourcePermissions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssetBundleResourcePermissions"} + if s.Actions == nil { + invalidParams.Add(request.NewErrParamRequired("Actions")) + } + if s.Actions != nil && len(s.Actions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) + } + if s.Principals == nil { + invalidParams.Add(request.NewErrParamRequired("Principals")) + } + if s.Principals != nil && len(s.Principals) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Principals", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActions sets the Actions field's value. +func (s *AssetBundleResourcePermissions) SetActions(v []*string) *AssetBundleResourcePermissions { + s.Actions = v + return s +} + +// SetPrincipals sets the Principals field's value. +func (s *AssetBundleResourcePermissions) SetPrincipals(v []*string) *AssetBundleResourcePermissions { + s.Principals = v + return s +} + +// An array of analysis level configurations. +type AssetOptions struct { + _ struct{} `type:"structure"` + + // Determines the timezone for the analysis. + Timezone *string `type:"string"` + + // Determines the week start day for an analysis. + WeekStart *string `type:"string" enum:"DayOfTheWeek"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssetOptions) GoString() string { + return s.String() +} + +// SetTimezone sets the Timezone field's value. +func (s *AssetOptions) SetTimezone(v string) *AssetOptions { + s.Timezone = &v + return s +} + +// SetWeekStart sets the WeekStart field's value. +func (s *AssetOptions) SetWeekStart(v string) *AssetOptions { + s.WeekStart = &v + return s +} + // Parameters for Amazon Athena. type AthenaParameters struct { _ struct{} `type:"structure"` @@ -22623,6 +25088,48 @@ return s } +// The authorized targets that are associated with a service. +type AuthorizedTargetsByService struct { + _ struct{} `type:"structure"` + + // Aist of authorized targets that are represented by IAM Identity Center application + // ARNs. + AuthorizedTargets []*string `type:"list"` + + // The name of the Amazon Web Services service. + Service *string `type:"string" enum:"ServiceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthorizedTargetsByService) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthorizedTargetsByService) GoString() string { + return s.String() +} + +// SetAuthorizedTargets sets the AuthorizedTargets field's value. +func (s *AuthorizedTargetsByService) SetAuthorizedTargets(v []*string) *AuthorizedTargetsByService { + s.AuthorizedTargets = v + return s +} + +// SetService sets the Service field's value. +func (s *AuthorizedTargetsByService) SetService(v string) *AuthorizedTargetsByService { + s.Service = &v + return s +} + // The parameters for IoT Analytics. type AwsIotAnalyticsParameters struct { _ struct{} `type:"structure"` @@ -23885,6 +26392,68 @@ return s } +// The parameters that are required to connect to a Google BigQuery data source. +type BigQueryParameters struct { + _ struct{} `type:"structure"` + + // The storage location where you create a Google BigQuery data source. + DataSetRegion *string `min:"1" type:"string"` + + // The Google Cloud Platform project ID where your datasource was created. + // + // ProjectId is a required field + ProjectId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BigQueryParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BigQueryParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BigQueryParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BigQueryParameters"} + if s.DataSetRegion != nil && len(*s.DataSetRegion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetRegion", 1)) + } + if s.ProjectId == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectId")) + } + if s.ProjectId != nil && len(*s.ProjectId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProjectId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetRegion sets the DataSetRegion field's value. +func (s *BigQueryParameters) SetDataSetRegion(v string) *BigQueryParameters { + s.DataSetRegion = &v + return s +} + +// SetProjectId sets the ProjectId field's value. +func (s *BigQueryParameters) SetProjectId(v string) *BigQueryParameters { + s.ProjectId = &v + return s +} + // The options that determine the bin count of a histogram. type BinCountOptions struct { _ struct{} `type:"structure"` @@ -25271,6 +27840,10 @@ // // NewColumnType is a required field NewColumnType *string `type:"string" required:"true" enum:"ColumnDataType"` + + // The sub data type of the new column. Sub types are only available for decimal + // columns that are part of a SPICE dataset. + SubType *string `type:"string" enum:"ColumnDataSubType"` } // String returns the string representation. @@ -25328,6 +27901,12 @@ return s } +// SetSubType sets the SubType field's value. +func (s *CastColumnTypeOperation) SetSubType(v string) *CastColumnTypeOperation { + s.SubType = &v + return s +} + // The dimension type field with categorical type columns.. type CategoricalDimensionField struct { _ struct{} `type:"structure"` @@ -28673,27 +31252,37 @@ // is the selected authentication method of the new Amazon QuickSight account. ActiveDirectoryName *string `type:"string"` - // The admin group associated with your Active Directory. This field is required - // if ACTIVE_DIRECTORY is the selected authentication method of the new Amazon - // QuickSight account. For more information about using Active Directory in - // Amazon QuickSight, see Using Active Directory with Amazon QuickSight Enterprise - // Edition (https://docs.aws.amazon.com/quicksight/latest/user/aws-directory-service.html) + // The admin group associated with your Active Directory or IAM Identity Center + // account. This field is required if ACTIVE_DIRECTORY or IAM_IDENTITY_CENTER + // is the selected authentication method of the new Amazon QuickSight account. + // + // For more information about using IAM Identity Center in Amazon QuickSight, + // see Using IAM Identity Center with Amazon QuickSight Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/sec-identity-management-identity-center.html) + // in the Amazon QuickSight User Guide. For more information about using Active + // Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight + // Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/aws-directory-service.html) // in the Amazon QuickSight User Guide. AdminGroup []*string `type:"list"` // The method that you want to use to authenticate your Amazon QuickSight account. - // Currently, the valid values for this parameter are IAM_AND_QUICKSIGHT, IAM_ONLY, - // and ACTIVE_DIRECTORY. // // If you choose ACTIVE_DIRECTORY, provide an ActiveDirectoryName and an AdminGroup // associated with your Active Directory. // + // If you choose IAM_IDENTITY_CENTER, provide an AdminGroup associated with + // your IAM Identity Center account. + // // AuthenticationMethod is a required field AuthenticationMethod *string `type:"string" required:"true" enum:"AuthenticationMethodOption"` - // The author group associated with your Active Directory. For more information - // about using Active Directory in Amazon QuickSight, see Using Active Directory - // with Amazon QuickSight Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/aws-directory-service.html) + // The author group associated with your Active Directory or IAM Identity Center + // account. + // + // For more information about using IAM Identity Center in Amazon QuickSight, + // see Using IAM Identity Center with Amazon QuickSight Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/sec-identity-management-identity-center.html) + // in the Amazon QuickSight User Guide. For more information about using Active + // Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight + // Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/aws-directory-service.html) // in the Amazon QuickSight User Guide. AuthorGroup []*string `type:"list"` @@ -28749,9 +31338,14 @@ // NotificationEmail is a required field NotificationEmail *string `type:"string" required:"true"` - // The reader group associated with your Active Direcrtory. For more information - // about using Active Directory in Amazon QuickSight, see Using Active Directory - // with Amazon QuickSight Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/aws-directory-service.html) + // The reader group associated with your Active Directory or IAM Identity Center + // account. + // + // For more information about using IAM Identity Center in Amazon QuickSight, + // see Using IAM Identity Center with Amazon QuickSight Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/sec-identity-management-identity-center.html) + // in the Amazon QuickSight User Guide. For more information about using Active + // Directory in Amazon QuickSight, see Using Active Directory with Amazon QuickSight + // Enterprise Edition (https://docs.aws.amazon.com/quicksight/latest/user/aws-directory-service.html) // in the Amazon QuickSight User Guide. ReaderGroup []*string `type:"list"` @@ -28973,6 +31567,10 @@ // to be valid. Definition *AnalysisDefinition `type:"structure"` + // When you create the analysis, Amazon QuickSight adds the analysis to these + // folders. + FolderArns []*string `type:"list"` + // A descriptive name for the analysis that you're creating. This name displays // for the analysis in the Amazon QuickSight console. // @@ -29007,6 +31605,10 @@ // the theme in the Amazon QuickSight console, make sure that you have access // to it. ThemeArn *string `type:"string"` + + // The option to relax the validation needed to create an analysis with definition + // objects. This skips the validation step for specific errors. + ValidationStrategy *ValidationStrategy `type:"structure"` } // String returns the string representation. @@ -29089,6 +31691,11 @@ } } } + if s.ValidationStrategy != nil { + if err := s.ValidationStrategy.Validate(); err != nil { + invalidParams.AddNested("ValidationStrategy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -29114,6 +31721,12 @@ return s } +// SetFolderArns sets the FolderArns field's value. +func (s *CreateAnalysisInput) SetFolderArns(v []*string) *CreateAnalysisInput { + s.FolderArns = v + return s +} + // SetName sets the Name field's value. func (s *CreateAnalysisInput) SetName(v string) *CreateAnalysisInput { s.Name = &v @@ -29150,6 +31763,12 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *CreateAnalysisInput) SetValidationStrategy(v *ValidationStrategy) *CreateAnalysisInput { + s.ValidationStrategy = v + return s +} + type CreateAnalysisOutput struct { _ struct{} `type:"structure"` @@ -29315,6 +31934,13 @@ // to be valid. Definition *DashboardVersionDefinition `type:"structure"` + // When you create the dashboard, Amazon QuickSight adds the dashboard to these + // folders. + FolderArns []*string `type:"list"` + + // A structure that contains the permissions of a shareable link to the dashboard. + LinkSharingConfiguration *LinkSharingConfiguration `type:"structure"` + // The display name of the dashboard. // // Name is a required field @@ -29360,6 +31986,10 @@ // account where you create the dashboard. ThemeArn *string `type:"string"` + // The option to relax the validation needed to create a dashboard with definition + // objects. This option skips the validation step for specific errors. + ValidationStrategy *ValidationStrategy `type:"structure"` + // A description for the first version of the dashboard being created. VersionDescription *string `min:"1" type:"string"` } @@ -29417,6 +32047,11 @@ invalidParams.AddNested("Definition", err.(request.ErrInvalidParams)) } } + if s.LinkSharingConfiguration != nil { + if err := s.LinkSharingConfiguration.Validate(); err != nil { + invalidParams.AddNested("LinkSharingConfiguration", err.(request.ErrInvalidParams)) + } + } if s.Parameters != nil { if err := s.Parameters.Validate(); err != nil { invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) @@ -29447,6 +32082,11 @@ } } } + if s.ValidationStrategy != nil { + if err := s.ValidationStrategy.Validate(); err != nil { + invalidParams.AddNested("ValidationStrategy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -29478,6 +32118,18 @@ return s } +// SetFolderArns sets the FolderArns field's value. +func (s *CreateDashboardInput) SetFolderArns(v []*string) *CreateDashboardInput { + s.FolderArns = v + return s +} + +// SetLinkSharingConfiguration sets the LinkSharingConfiguration field's value. +func (s *CreateDashboardInput) SetLinkSharingConfiguration(v *LinkSharingConfiguration) *CreateDashboardInput { + s.LinkSharingConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *CreateDashboardInput) SetName(v string) *CreateDashboardInput { s.Name = &v @@ -29514,6 +32166,12 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *CreateDashboardInput) SetValidationStrategy(v *ValidationStrategy) *CreateDashboardInput { + s.ValidationStrategy = v + return s +} + // SetVersionDescription sets the VersionDescription field's value. func (s *CreateDashboardInput) SetVersionDescription(v string) *CreateDashboardInput { s.VersionDescription = &v @@ -29628,6 +32286,10 @@ // The folder that contains fields and nested subfolders for your dataset. FieldFolders map[string]*FieldFolder `type:"map"` + // When you create the dataset, Amazon QuickSight adds the dataset to these + // folders. + FolderArns []*string `type:"list"` + // Indicates whether you want to import the data into SPICE. // // ImportMode is a required field @@ -29851,6 +32513,12 @@ return s } +// SetFolderArns sets the FolderArns field's value. +func (s *CreateDataSetInput) SetFolderArns(v []*string) *CreateDataSetInput { + s.FolderArns = v + return s +} + // SetImportMode sets the ImportMode field's value. func (s *CreateDataSetInput) SetImportMode(v string) *CreateDataSetInput { s.ImportMode = &v @@ -30004,6 +32672,10 @@ // source. DataSourceParameters *DataSourceParameters `type:"structure"` + // When you create the data source, Amazon QuickSight adds the data source to + // these folders. + FolderArns []*string `type:"list"` + // A display name for the data source. // // Name is a required field @@ -30143,6 +32815,12 @@ return s } +// SetFolderArns sets the FolderArns field's value. +func (s *CreateDataSourceInput) SetFolderArns(v []*string) *CreateDataSourceInput { + s.FolderArns = v + return s +} + // SetName sets the Name field's value. func (s *CreateDataSourceInput) SetName(v string) *CreateDataSourceInput { s.Name = &v @@ -31626,6 +34304,148 @@ return s } +type CreateRoleMembershipInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID for the Amazon Web Services account that you want to create a group + // in. The Amazon Web Services account ID that you provide must be the same + // Amazon Web Services account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The name of the group that you want to add to the role. + // + // MemberName is a required field + MemberName *string `location:"uri" locationName:"MemberName" min:"1" type:"string" required:"true"` + + // The namespace that the role belongs to. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The role that you want to add a group to. + // + // Role is a required field + Role *string `location:"uri" locationName:"Role" type:"string" required:"true" enum:"Role"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRoleMembershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRoleMembershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRoleMembershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRoleMembershipInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MemberName == nil { + invalidParams.Add(request.NewErrParamRequired("MemberName")) + } + if s.MemberName != nil && len(*s.MemberName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MemberName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateRoleMembershipInput) SetAwsAccountId(v string) *CreateRoleMembershipInput { + s.AwsAccountId = &v + return s +} + +// SetMemberName sets the MemberName field's value. +func (s *CreateRoleMembershipInput) SetMemberName(v string) *CreateRoleMembershipInput { + s.MemberName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *CreateRoleMembershipInput) SetNamespace(v string) *CreateRoleMembershipInput { + s.Namespace = &v + return s +} + +// SetRole sets the Role field's value. +func (s *CreateRoleMembershipInput) SetRole(v string) *CreateRoleMembershipInput { + s.Role = &v + return s +} + +type CreateRoleMembershipOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" 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 CreateRoleMembershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRoleMembershipOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *CreateRoleMembershipOutput) SetRequestId(v string) *CreateRoleMembershipOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateRoleMembershipOutput) SetStatus(v int64) *CreateRoleMembershipOutput { + s.Status = &v + return s +} + type CreateTemplateAliasInput struct { _ struct{} `type:"structure"` @@ -31829,6 +34649,10 @@ // TemplateId is a required field TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // TThe option to relax the validation needed to create a template with definition + // objects. This skips the validation step for specific errors. + ValidationStrategy *ValidationStrategy `type:"structure"` + // A description of the current template version being created. This API operation // creates the first version of the template. Every time UpdateTemplate is called, // a new version is created. Each version of the template maintains a description @@ -31911,6 +34735,11 @@ } } } + if s.ValidationStrategy != nil { + if err := s.ValidationStrategy.Validate(); err != nil { + invalidParams.AddNested("ValidationStrategy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -31960,6 +34789,12 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *CreateTemplateInput) SetValidationStrategy(v *ValidationStrategy) *CreateTemplateInput { + s.ValidationStrategy = v + return s +} + // SetVersionDescription sets the VersionDescription field's value. func (s *CreateTemplateInput) SetVersionDescription(v string) *CreateTemplateInput { s.VersionDescription = &v @@ -34977,6 +37812,9 @@ // in the Amazon QuickSight User Guide. FilterGroups []*FilterGroup `type:"list"` + // An array of option definitions for a dashboard. + Options *AssetOptions `type:"structure"` + // The parameter declarations for a dashboard. Parameters are named variables // that can transfer a value for use by an action or an object. // @@ -35117,6 +37955,12 @@ return s } +// SetOptions sets the Options field's value. +func (s *DashboardVersionDefinition) SetOptions(v *AssetOptions) *DashboardVersionDefinition { + s.Options = v + return s +} + // SetParameterDeclarations sets the ParameterDeclarations field's value. func (s *DashboardVersionDefinition) SetParameterDeclarations(v []*ParameterDeclaration) *DashboardVersionDefinition { s.ParameterDeclarations = v @@ -36068,23 +38912,68 @@ return s } +// The type of the data path value. +type DataPathType struct { + _ struct{} `type:"structure"` + + // The type of data path value utilized in a pivot table. Choose one of the + // following options: + // + // * HIERARCHY_ROWS_LAYOUT_COLUMN - The type of data path for the rows layout + // column, when RowsLayout is set to HIERARCHY. + // + // * MULTIPLE_ROW_METRICS_COLUMN - The type of data path for the metric column + // when the row is set to Metric Placement. + // + // * EMPTY_COLUMN_HEADER - The type of data path for the column with empty + // column header, when there is no field in ColumnsFieldWell and the row + // is set to Metric Placement. + // + // * COUNT_METRIC_COLUMN - The type of data path for the column with COUNT + // as the metric, when there is no field in the ValuesFieldWell. + PivotTableDataPathType *string `type:"string" enum:"PivotTableDataPathType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataPathType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataPathType) GoString() string { + return s.String() +} + +// SetPivotTableDataPathType sets the PivotTableDataPathType field's value. +func (s *DataPathType) SetPivotTableDataPathType(v string) *DataPathType { + s.PivotTableDataPathType = &v + return s +} + // The data path that needs to be sorted. type DataPathValue struct { _ struct{} `type:"structure"` + // The type configuration of the field. + DataPathType *DataPathType `type:"structure"` + // The field ID of the field that needs to be sorted. - // - // FieldId is a required field - FieldId *string `min:"1" type:"string" required:"true"` + FieldId *string `min:"1" type:"string"` // The actual value of the field that needs to be sorted. // // FieldValue is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by DataPathValue's // String and GoString methods. - // - // FieldValue is a required field - FieldValue *string `type:"string" required:"true" sensitive:"true"` + FieldValue *string `type:"string" sensitive:"true"` } // String returns the string representation. @@ -36108,15 +38997,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *DataPathValue) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DataPathValue"} - if s.FieldId == nil { - invalidParams.Add(request.NewErrParamRequired("FieldId")) - } if s.FieldId != nil && len(*s.FieldId) < 1 { invalidParams.Add(request.NewErrParamMinLen("FieldId", 1)) } - if s.FieldValue == nil { - invalidParams.Add(request.NewErrParamRequired("FieldValue")) - } if invalidParams.Len() > 0 { return invalidParams @@ -36124,6 +39007,12 @@ return nil } +// SetDataPathType sets the DataPathType field's value. +func (s *DataPathValue) SetDataPathType(v *DataPathType) *DataPathValue { + s.DataPathType = v + return s +} + // SetFieldId sets the FieldId field's value. func (s *DataPathValue) SetFieldId(v string) *DataPathValue { s.FieldId = &v @@ -37228,7 +40117,10 @@ // The parameters for IoT Analytics. AwsIotAnalyticsParameters *AwsIotAnalyticsParameters `type:"structure"` - // The required parameters that are needed to connect to a Databricks data source. + // The parameters that are required to connect to a Google BigQuery data source. + BigQueryParameters *BigQueryParameters `type:"structure"` + + // The parameters that are required to connect to a Databricks data source. DatabricksParameters *DatabricksParameters `type:"structure"` // The parameters for Exasol. @@ -37273,9 +40165,15 @@ // The parameters for SQL Server. SqlServerParameters *SqlServerParameters `type:"structure"` + // The parameters that are required to connect to a Starburst data source. + StarburstParameters *StarburstParameters `type:"structure"` + // The parameters for Teradata. TeradataParameters *TeradataParameters `type:"structure"` + // The parameters that are required to connect to a Trino data source. + TrinoParameters *TrinoParameters `type:"structure"` + // The parameters for Twitter. TwitterParameters *TwitterParameters `type:"structure"` } @@ -37331,6 +40229,11 @@ invalidParams.AddNested("AwsIotAnalyticsParameters", err.(request.ErrInvalidParams)) } } + if s.BigQueryParameters != nil { + if err := s.BigQueryParameters.Validate(); err != nil { + invalidParams.AddNested("BigQueryParameters", err.(request.ErrInvalidParams)) + } + } if s.DatabricksParameters != nil { if err := s.DatabricksParameters.Validate(); err != nil { invalidParams.AddNested("DatabricksParameters", err.(request.ErrInvalidParams)) @@ -37406,11 +40309,21 @@ invalidParams.AddNested("SqlServerParameters", err.(request.ErrInvalidParams)) } } + if s.StarburstParameters != nil { + if err := s.StarburstParameters.Validate(); err != nil { + invalidParams.AddNested("StarburstParameters", err.(request.ErrInvalidParams)) + } + } if s.TeradataParameters != nil { if err := s.TeradataParameters.Validate(); err != nil { invalidParams.AddNested("TeradataParameters", err.(request.ErrInvalidParams)) } } + if s.TrinoParameters != nil { + if err := s.TrinoParameters.Validate(); err != nil { + invalidParams.AddNested("TrinoParameters", err.(request.ErrInvalidParams)) + } + } if s.TwitterParameters != nil { if err := s.TwitterParameters.Validate(); err != nil { invalidParams.AddNested("TwitterParameters", err.(request.ErrInvalidParams)) @@ -37459,6 +40372,12 @@ return s } +// SetBigQueryParameters sets the BigQueryParameters field's value. +func (s *DataSourceParameters) SetBigQueryParameters(v *BigQueryParameters) *DataSourceParameters { + s.BigQueryParameters = v + return s +} + // SetDatabricksParameters sets the DatabricksParameters field's value. func (s *DataSourceParameters) SetDatabricksParameters(v *DatabricksParameters) *DataSourceParameters { s.DatabricksParameters = v @@ -37549,12 +40468,24 @@ return s } +// SetStarburstParameters sets the StarburstParameters field's value. +func (s *DataSourceParameters) SetStarburstParameters(v *StarburstParameters) *DataSourceParameters { + s.StarburstParameters = v + return s +} + // SetTeradataParameters sets the TeradataParameters field's value. func (s *DataSourceParameters) SetTeradataParameters(v *TeradataParameters) *DataSourceParameters { s.TeradataParameters = v return s } +// SetTrinoParameters sets the TrinoParameters field's value. +func (s *DataSourceParameters) SetTrinoParameters(v *TrinoParameters) *DataSourceParameters { + s.TrinoParameters = v + return s +} + // SetTwitterParameters sets the TwitterParameters field's value. func (s *DataSourceParameters) SetTwitterParameters(v *TwitterParameters) *DataSourceParameters { s.TwitterParameters = v @@ -37746,7 +40677,7 @@ return s } -// The required parameters that are needed to connect to a Databricks data source. +// The parameters that are required to connect to a Databricks data source. type DatabricksParameters struct { _ struct{} `type:"structure"` @@ -41308,6 +44239,114 @@ return s } +type DeleteIdentityPropagationConfigInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon Web Services account that you want to delete an identity + // propagation configuration from. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The name of the Amazon Web Services service that you want to delete the associated + // access scopes and authorized targets from. + // + // Service is a required field + Service *string `location:"uri" locationName:"Service" type:"string" required:"true" enum:"ServiceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIdentityPropagationConfigInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIdentityPropagationConfigInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteIdentityPropagationConfigInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteIdentityPropagationConfigInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Service == nil { + invalidParams.Add(request.NewErrParamRequired("Service")) + } + if s.Service != nil && len(*s.Service) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Service", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteIdentityPropagationConfigInput) SetAwsAccountId(v string) *DeleteIdentityPropagationConfigInput { + s.AwsAccountId = &v + return s +} + +// SetService sets the Service field's value. +func (s *DeleteIdentityPropagationConfigInput) SetService(v string) *DeleteIdentityPropagationConfigInput { + s.Service = &v + return s +} + +type DeleteIdentityPropagationConfigOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" 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 DeleteIdentityPropagationConfigOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIdentityPropagationConfigOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *DeleteIdentityPropagationConfigOutput) SetRequestId(v string) *DeleteIdentityPropagationConfigOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteIdentityPropagationConfigOutput) SetStatus(v int64) *DeleteIdentityPropagationConfigOutput { + s.Status = &v + return s +} + type DeleteNamespaceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -41556,6 +44595,273 @@ return s } +type DeleteRoleCustomPermissionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon + // QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The namespace that includes the role. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The role that you want to remove permissions from. + // + // Role is a required field + Role *string `location:"uri" locationName:"Role" type:"string" required:"true" enum:"Role"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRoleCustomPermissionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRoleCustomPermissionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRoleCustomPermissionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRoleCustomPermissionInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteRoleCustomPermissionInput) SetAwsAccountId(v string) *DeleteRoleCustomPermissionInput { + s.AwsAccountId = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *DeleteRoleCustomPermissionInput) SetNamespace(v string) *DeleteRoleCustomPermissionInput { + s.Namespace = &v + return s +} + +// SetRole sets the Role field's value. +func (s *DeleteRoleCustomPermissionInput) SetRole(v string) *DeleteRoleCustomPermissionInput { + s.Role = &v + return s +} + +type DeleteRoleCustomPermissionOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *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 DeleteRoleCustomPermissionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRoleCustomPermissionOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *DeleteRoleCustomPermissionOutput) SetRequestId(v string) *DeleteRoleCustomPermissionOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteRoleCustomPermissionOutput) SetStatus(v int64) *DeleteRoleCustomPermissionOutput { + s.Status = &v + return s +} + +type DeleteRoleMembershipInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID for the Amazon Web Services account that you want to create a group + // in. The Amazon Web Services account ID that you provide must be the same + // Amazon Web Services account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The name of the group. + // + // MemberName is a required field + MemberName *string `location:"uri" locationName:"MemberName" min:"1" type:"string" required:"true"` + + // The namespace that contains the role. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The role that you want to remove permissions from. + // + // Role is a required field + Role *string `location:"uri" locationName:"Role" type:"string" required:"true" enum:"Role"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRoleMembershipInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRoleMembershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRoleMembershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRoleMembershipInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MemberName == nil { + invalidParams.Add(request.NewErrParamRequired("MemberName")) + } + if s.MemberName != nil && len(*s.MemberName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MemberName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteRoleMembershipInput) SetAwsAccountId(v string) *DeleteRoleMembershipInput { + s.AwsAccountId = &v + return s +} + +// SetMemberName sets the MemberName field's value. +func (s *DeleteRoleMembershipInput) SetMemberName(v string) *DeleteRoleMembershipInput { + s.MemberName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *DeleteRoleMembershipInput) SetNamespace(v string) *DeleteRoleMembershipInput { + s.Namespace = &v + return s +} + +// SetRole sets the Role field's value. +func (s *DeleteRoleMembershipInput) SetRole(v string) *DeleteRoleMembershipInput { + s.Role = &v + return s +} + +type DeleteRoleMembershipOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" 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 DeleteRoleMembershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRoleMembershipOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *DeleteRoleMembershipOutput) SetRequestId(v string) *DeleteRoleMembershipOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteRoleMembershipOutput) SetStatus(v int64) *DeleteRoleMembershipOutput { + s.Status = &v + return s +} + type DeleteTemplateAliasInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -43714,7 +47020,11 @@ // // This URL can't be used in a StartAssetBundleImportJob API call and should // only be used for download purposes. - DownloadUrl *string `type:"string"` + // + // DownloadUrl is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DescribeAssetBundleExportJobOutput's + // String and GoString methods. + DownloadUrl *string `type:"string" sensitive:"true"` // An array of error records that describes any failures that occurred during // the export job processing. @@ -43732,6 +47042,12 @@ // The include dependencies flag. IncludeAllDependencies *bool `type:"boolean"` + // The include permissions flag. + IncludePermissions *bool `type:"boolean"` + + // The include tags flag. + IncludeTags *bool `type:"boolean"` + // Indicates the status of a job through its queuing and execution. // // Poll this DescribeAssetBundleExportApi until JobStatus is either SUCCESSFUL @@ -43746,6 +47062,17 @@ // The HTTP status of the response. Status *int64 `location:"statusCode" type:"integer"` + + // The validation strategy that is used to export the analysis or dashboard. + ValidationStrategy *AssetBundleExportJobValidationStrategy `type:"structure"` + + // An array of warning records that describe the analysis or dashboard that + // is exported. This array includes UI errors that can be skipped during the + // validation process. + // + // This property only appears if StrictModeForAllResources in ValidationStrategy + // is set to FALSE. + Warnings []*AssetBundleExportJobWarning `type:"list"` } // String returns the string representation. @@ -43820,6 +47147,18 @@ return s } +// SetIncludePermissions sets the IncludePermissions field's value. +func (s *DescribeAssetBundleExportJobOutput) SetIncludePermissions(v bool) *DescribeAssetBundleExportJobOutput { + s.IncludePermissions = &v + return s +} + +// SetIncludeTags sets the IncludeTags field's value. +func (s *DescribeAssetBundleExportJobOutput) SetIncludeTags(v bool) *DescribeAssetBundleExportJobOutput { + s.IncludeTags = &v + return s +} + // SetJobStatus sets the JobStatus field's value. func (s *DescribeAssetBundleExportJobOutput) SetJobStatus(v string) *DescribeAssetBundleExportJobOutput { s.JobStatus = &v @@ -43844,6 +47183,18 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *DescribeAssetBundleExportJobOutput) SetValidationStrategy(v *AssetBundleExportJobValidationStrategy) *DescribeAssetBundleExportJobOutput { + s.ValidationStrategy = v + return s +} + +// SetWarnings sets the Warnings field's value. +func (s *DescribeAssetBundleExportJobOutput) SetWarnings(v []*AssetBundleExportJobWarning) *DescribeAssetBundleExportJobOutput { + s.Warnings = v + return s +} + type DescribeAssetBundleImportJobInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -43955,9 +47306,22 @@ // * FAILED_ROLLBACK_ERROR JobStatus *string `type:"string" enum:"AssetBundleImportJobStatus"` - // Optional overrides to be applied to the resource configuration before import. + // Optional overrides that are applied to the resource configuration before + // import. OverrideParameters *AssetBundleImportJobOverrideParameters `type:"structure"` + // Optional permission overrides that are applied to the resource configuration + // before import. + OverridePermissions *AssetBundleImportJobOverridePermissions `type:"structure"` + + // Optional tag overrides that are applied to the resource configuration before + // import. + OverrideTags *AssetBundleImportJobOverrideTags `type:"structure"` + + // An optional validation strategy override for all analyses and dashboards + // to be applied to the resource configuration before import. + OverrideValidationStrategy *AssetBundleImportJobOverrideValidationStrategy `type:"structure"` + // The Amazon Web Services request ID for this operation. RequestId *string `type:"string"` @@ -44044,6 +47408,24 @@ return s } +// SetOverridePermissions sets the OverridePermissions field's value. +func (s *DescribeAssetBundleImportJobOutput) SetOverridePermissions(v *AssetBundleImportJobOverridePermissions) *DescribeAssetBundleImportJobOutput { + s.OverridePermissions = v + return s +} + +// SetOverrideTags sets the OverrideTags field's value. +func (s *DescribeAssetBundleImportJobOutput) SetOverrideTags(v *AssetBundleImportJobOverrideTags) *DescribeAssetBundleImportJobOutput { + s.OverrideTags = v + return s +} + +// SetOverrideValidationStrategy sets the OverrideValidationStrategy field's value. +func (s *DescribeAssetBundleImportJobOutput) SetOverrideValidationStrategy(v *AssetBundleImportJobOverrideValidationStrategy) *DescribeAssetBundleImportJobOutput { + s.OverrideValidationStrategy = v + return s +} + // SetRequestId sets the RequestId field's value. func (s *DescribeAssetBundleImportJobOutput) SetRequestId(v string) *DescribeAssetBundleImportJobOutput { s.RequestId = &v @@ -46983,6 +50365,140 @@ return s } +type DescribeRoleCustomPermissionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID for the Amazon Web Services account that you want to create a group + // in. The Amazon Web Services account ID that you provide must be the same + // Amazon Web Services account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The namespace that contains the role. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The name of the role whose permissions you want described. + // + // Role is a required field + Role *string `location:"uri" locationName:"Role" type:"string" required:"true" enum:"Role"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRoleCustomPermissionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRoleCustomPermissionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRoleCustomPermissionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRoleCustomPermissionInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DescribeRoleCustomPermissionInput) SetAwsAccountId(v string) *DescribeRoleCustomPermissionInput { + s.AwsAccountId = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *DescribeRoleCustomPermissionInput) SetNamespace(v string) *DescribeRoleCustomPermissionInput { + s.Namespace = &v + return s +} + +// SetRole sets the Role field's value. +func (s *DescribeRoleCustomPermissionInput) SetRole(v string) *DescribeRoleCustomPermissionInput { + s.Role = &v + return s +} + +type DescribeRoleCustomPermissionOutput struct { + _ struct{} `type:"structure"` + + // The name of the custom permission that is described. + CustomPermissionsName *string `min:"1" type:"string"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *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 DescribeRoleCustomPermissionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRoleCustomPermissionOutput) GoString() string { + return s.String() +} + +// SetCustomPermissionsName sets the CustomPermissionsName field's value. +func (s *DescribeRoleCustomPermissionOutput) SetCustomPermissionsName(v string) *DescribeRoleCustomPermissionOutput { + s.CustomPermissionsName = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *DescribeRoleCustomPermissionOutput) SetRequestId(v string) *DescribeRoleCustomPermissionOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribeRoleCustomPermissionOutput) SetStatus(v int64) *DescribeRoleCustomPermissionOutput { + s.Status = &v + return s +} + type DescribeTemplateAliasInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -51725,6 +55241,15 @@ // MatchOperator is a required field MatchOperator *string `type:"string" required:"true" enum:"CategoryFilterMatchOperator"` + // This option determines how null values should be treated when filtering data. + // + // * ALL_VALUES: Include null values in filtered results. + // + // * NULLS_ONLY: Only include null values in filtered results. + // + // * NON_NULLS_ONLY: Exclude null values from filtered results. + NullOption *string `type:"string" enum:"FilterNullOption"` + // Select all of the values. Null is not the assigned value of select all. // // * FILTER_ALL_VALUES @@ -51774,6 +55299,12 @@ return s } +// SetNullOption sets the NullOption field's value. +func (s *FilterListConfiguration) SetNullOption(v string) *FilterListConfiguration { + s.NullOption = &v + return s +} + // SetSelectAllOptions sets the SelectAllOptions field's value. func (s *FilterListConfiguration) SetSelectAllOptions(v string) *FilterListConfiguration { s.SelectAllOptions = &v @@ -58707,6 +62238,39 @@ return s } +// The parameters for an IAM Identity Center configuration. +type IdentityCenterConfiguration struct { + _ struct{} `type:"structure"` + + // A Boolean option that controls whether Trusted Identity Propagation should + // be used. + EnableIdentityPropagation *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 IdentityCenterConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IdentityCenterConfiguration) GoString() string { + return s.String() +} + +// SetEnableIdentityPropagation sets the EnableIdentityPropagation field's value. +func (s *IdentityCenterConfiguration) SetEnableIdentityPropagation(v bool) *IdentityCenterConfiguration { + s.EnableIdentityPropagation = &v + return s +} + // The identity type specified isn't supported. Supported identity types include // IAM and QUICKSIGHT. type IdentityTypeNotSupportedException struct { @@ -58964,6 +62528,10 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` + // The sub data type of the column. Sub types are only available for decimal + // columns that are part of a SPICE dataset. + SubType *string `type:"string" enum:"ColumnDataSubType"` + // The data type of the column. // // Type is a required field @@ -59013,6 +62581,12 @@ return s } +// SetSubType sets the SubType field's value. +func (s *InputColumn) SetSubType(v string) *InputColumn { + s.SubType = &v + return s +} + // SetType sets the Type field's value. func (s *InputColumn) SetType(v string) *InputColumn { s.Type = &v @@ -62515,6 +66089,29 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *LinkSharingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LinkSharingConfiguration"} + if s.Permissions != nil && len(s.Permissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) + } + if s.Permissions != nil { + for i, v := range s.Permissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetPermissions sets the Permissions field's value. func (s *LinkSharingConfiguration) SetPermissions(v []*ResourcePermission) *LinkSharingConfiguration { s.Permissions = v @@ -64480,6 +68077,136 @@ return s } +type ListIdentityPropagationConfigsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the Amazon Web Services account that contain the identity propagation + // configurations of. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The maximum number of results to be returned. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdentityPropagationConfigsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdentityPropagationConfigsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIdentityPropagationConfigsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIdentityPropagationConfigsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListIdentityPropagationConfigsInput) SetAwsAccountId(v string) *ListIdentityPropagationConfigsInput { + s.AwsAccountId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIdentityPropagationConfigsInput) SetMaxResults(v int64) *ListIdentityPropagationConfigsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIdentityPropagationConfigsInput) SetNextToken(v string) *ListIdentityPropagationConfigsInput { + s.NextToken = &v + return s +} + +type ListIdentityPropagationConfigsOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // A list of services and their authorized targets that the Amazon QuickSight + // IAM Identity Center application can access. + Services []*AuthorizedTargetsByService `type:"list"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" 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 ListIdentityPropagationConfigsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIdentityPropagationConfigsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIdentityPropagationConfigsOutput) SetNextToken(v string) *ListIdentityPropagationConfigsOutput { + s.NextToken = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *ListIdentityPropagationConfigsOutput) SetRequestId(v string) *ListIdentityPropagationConfigsOutput { + s.RequestId = &v + return s +} + +// SetServices sets the Services field's value. +func (s *ListIdentityPropagationConfigsOutput) SetServices(v []*AuthorizedTargetsByService) *ListIdentityPropagationConfigsOutput { + s.Services = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListIdentityPropagationConfigsOutput) SetStatus(v int64) *ListIdentityPropagationConfigsOutput { + s.Status = &v + return s +} + type ListIngestionsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -64882,6 +68609,170 @@ return s } +type ListRoleMembershipsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID for the Amazon Web Services account that you want to create a group + // in. The Amazon Web Services account ID that you provide must be the same + // Amazon Web Services account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The maximum number of results to return. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The namespace that includes the role. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // A pagination token that can be used in a subsequent request. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + + // The name of the role. + // + // Role is a required field + Role *string `location:"uri" locationName:"Role" type:"string" required:"true" enum:"Role"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRoleMembershipsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRoleMembershipsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRoleMembershipsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRoleMembershipsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListRoleMembershipsInput) SetAwsAccountId(v string) *ListRoleMembershipsInput { + s.AwsAccountId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRoleMembershipsInput) SetMaxResults(v int64) *ListRoleMembershipsInput { + s.MaxResults = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *ListRoleMembershipsInput) SetNamespace(v string) *ListRoleMembershipsInput { + s.Namespace = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRoleMembershipsInput) SetNextToken(v string) *ListRoleMembershipsInput { + s.NextToken = &v + return s +} + +// SetRole sets the Role field's value. +func (s *ListRoleMembershipsInput) SetRole(v string) *ListRoleMembershipsInput { + s.Role = &v + return s +} + +type ListRoleMembershipsOutput struct { + _ struct{} `type:"structure"` + + // The list of groups associated with a role + MembersList []*string `type:"list"` + + // A pagination token that can be used in a subsequent request. + NextToken *string `type:"string"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" 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 ListRoleMembershipsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRoleMembershipsOutput) GoString() string { + return s.String() +} + +// SetMembersList sets the MembersList field's value. +func (s *ListRoleMembershipsOutput) SetMembersList(v []*string) *ListRoleMembershipsOutput { + s.MembersList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRoleMembershipsOutput) SetNextToken(v string) *ListRoleMembershipsOutput { + s.NextToken = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *ListRoleMembershipsOutput) SetRequestId(v string) *ListRoleMembershipsOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListRoleMembershipsOutput) SetStatus(v int64) *ListRoleMembershipsOutput { + s.Status = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -69324,10 +73215,13 @@ // A description for a column. Description *string `type:"string"` - // A display name for the dataset. + // The display name of the column.. Name *string `min:"1" type:"string"` - // The type. + // The sub data type of the column. + SubType *string `type:"string" enum:"ColumnDataSubType"` + + // The data type of the column. Type *string `type:"string" enum:"ColumnDataType"` } @@ -69361,6 +73255,12 @@ return s } +// SetSubType sets the SubType field's value. +func (s *OutputColumn) SetSubType(v string) *OutputColumn { + s.SubType = &v + return s +} + // SetType sets the Type field's value. func (s *OutputColumn) SetType(v string) *OutputColumn { s.Type = &v @@ -73360,6 +77260,9 @@ // The scroll status (pinned, scrolled) for the total cells. ScrollStatus *string `type:"string" enum:"TableTotalsScrollStatus"` + // The total aggregation options for each value field. + TotalAggregationOptions []*TotalAggregationOption `type:"list"` + // The cell styling options for the total cells. TotalCellStyle *TableCellStyle `type:"structure"` @@ -73396,6 +77299,16 @@ invalidParams.AddNested("MetricHeaderCellStyle", err.(request.ErrInvalidParams)) } } + if s.TotalAggregationOptions != nil { + for i, v := range s.TotalAggregationOptions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TotalAggregationOptions", i), err.(request.ErrInvalidParams)) + } + } + } if s.TotalCellStyle != nil { if err := s.TotalCellStyle.Validate(); err != nil { invalidParams.AddNested("TotalCellStyle", err.(request.ErrInvalidParams)) @@ -73437,6 +77350,12 @@ return s } +// SetTotalAggregationOptions sets the TotalAggregationOptions field's value. +func (s *PivotTotalOptions) SetTotalAggregationOptions(v []*TotalAggregationOption) *PivotTotalOptions { + s.TotalAggregationOptions = v + return s +} + // SetTotalCellStyle sets the TotalCellStyle field's value. func (s *PivotTotalOptions) SetTotalCellStyle(v *TableCellStyle) *PivotTotalOptions { s.TotalCellStyle = v @@ -74798,6 +78717,110 @@ return s } +// A structure that grants Amazon QuickSight access to your cluster and make +// a call to the redshift:GetClusterCredentials API. For more information on +// the redshift:GetClusterCredentials API, see GetClusterCredentials (https://docs.aws.amazon.com/redshift/latest/APIReference/API_GetClusterCredentials.html). +type RedshiftIAMParameters struct { + _ struct{} `type:"structure"` + + // Automatically creates a database user. If your database doesn't have a DatabaseUser, + // set this parameter to True. If there is no DatabaseUser, Amazon QuickSight + // can't connect to your cluster. The RoleArn that you use for this operation + // must grant access to redshift:CreateClusterUser to successfully create the + // user. + AutoCreateDatabaseUser *bool `type:"boolean"` + + // A list of groups whose permissions will be granted to Amazon QuickSight to + // access the cluster. These permissions are combined with the permissions granted + // to Amazon QuickSight by the DatabaseUser. If you choose to include this parameter, + // the RoleArn must grant access to redshift:JoinGroup. + DatabaseGroups []*string `min:"1" type:"list"` + + // The user whose permissions and group memberships will be used by Amazon QuickSight + // to access the cluster. If this user already exists in your database, Amazon + // QuickSight is granted the same permissions that the user has. If the user + // doesn't exist, set the value of AutoCreateDatabaseUser to True to create + // a new user with PUBLIC permissions. + // + // DatabaseUser is a required field + DatabaseUser *string `min:"1" type:"string" required:"true"` + + // Use the RoleArn structure to allow Amazon QuickSight to call redshift:GetClusterCredentials + // on your cluster. The calling principal must have iam:PassRole access to pass + // the role to Amazon QuickSight. The role's trust policy must allow the Amazon + // QuickSight service principal to assume the role. + // + // RoleArn is a required field + RoleArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftIAMParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftIAMParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftIAMParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftIAMParameters"} + if s.DatabaseGroups != nil && len(s.DatabaseGroups) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseGroups", 1)) + } + if s.DatabaseUser == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseUser")) + } + if s.DatabaseUser != nil && len(*s.DatabaseUser) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseUser", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAutoCreateDatabaseUser sets the AutoCreateDatabaseUser field's value. +func (s *RedshiftIAMParameters) SetAutoCreateDatabaseUser(v bool) *RedshiftIAMParameters { + s.AutoCreateDatabaseUser = &v + return s +} + +// SetDatabaseGroups sets the DatabaseGroups field's value. +func (s *RedshiftIAMParameters) SetDatabaseGroups(v []*string) *RedshiftIAMParameters { + s.DatabaseGroups = v + return s +} + +// SetDatabaseUser sets the DatabaseUser field's value. +func (s *RedshiftIAMParameters) SetDatabaseUser(v string) *RedshiftIAMParameters { + s.DatabaseUser = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *RedshiftIAMParameters) SetRoleArn(v string) *RedshiftIAMParameters { + s.RoleArn = &v + return s +} + // The parameters for Amazon Redshift. The ClusterId field can be blank if Host // and Port are both set. The Host and Port fields can be blank if the ClusterId // field is set. @@ -74815,6 +78838,18 @@ // Host. This field can be blank if ClusterId is provided. Host *string `min:"1" type:"string"` + // An optional parameter that uses IAM authentication to grant Amazon QuickSight + // access to your cluster. This parameter can be used instead of DataSourceCredentials + // (https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DataSourceCredentials.html). + IAMParameters *RedshiftIAMParameters `type:"structure"` + + // An optional parameter that configures IAM Identity Center authentication + // to grant Amazon QuickSight access to your cluster. + // + // This parameter can only be specified if your Amazon QuickSight account is + // configured with IAM Identity Center. + IdentityCenterConfiguration *IdentityCenterConfiguration `type:"structure"` + // Port. This field can be blank if the ClusterId is provided. Port *int64 `type:"integer"` } @@ -74852,6 +78887,11 @@ if s.Host != nil && len(*s.Host) < 1 { invalidParams.Add(request.NewErrParamMinLen("Host", 1)) } + if s.IAMParameters != nil { + if err := s.IAMParameters.Validate(); err != nil { + invalidParams.AddNested("IAMParameters", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -74877,6 +78917,18 @@ return s } +// SetIAMParameters sets the IAMParameters field's value. +func (s *RedshiftParameters) SetIAMParameters(v *RedshiftIAMParameters) *RedshiftParameters { + s.IAMParameters = v + return s +} + +// SetIdentityCenterConfiguration sets the IdentityCenterConfiguration field's value. +func (s *RedshiftParameters) SetIdentityCenterConfiguration(v *IdentityCenterConfiguration) *RedshiftParameters { + s.IdentityCenterConfiguration = v + return s +} + // SetPort sets the Port field's value. func (s *RedshiftParameters) SetPort(v int64) *RedshiftParameters { s.Port = &v @@ -75033,6 +79085,14 @@ // The dynamic configuration of the reference line data configuration. DynamicConfiguration *ReferenceLineDynamicDataConfiguration `type:"structure"` + // The series type of the reference line data configuration. Choose one of the + // following options: + // + // * BAR + // + // * LINE + SeriesType *string `type:"string" enum:"ReferenceLineSeriesType"` + // The static data configuration of the reference line data configuration. StaticConfiguration *ReferenceLineStaticDataConfiguration `type:"structure"` } @@ -75087,6 +79147,12 @@ return s } +// SetSeriesType sets the SeriesType field's value. +func (s *ReferenceLineDataConfiguration) SetSeriesType(v string) *ReferenceLineDataConfiguration { + s.SeriesType = &v + return s +} + // SetStaticConfiguration sets the StaticConfiguration field's value. func (s *ReferenceLineDataConfiguration) SetStaticConfiguration(v *ReferenceLineStaticDataConfiguration) *ReferenceLineDataConfiguration { s.StaticConfiguration = v @@ -75788,6 +79854,9 @@ // in the CLI Reference. SessionName *string `min:"2" type:"string"` + // The tags to associate with the user. + Tags []*Tag `min:"1" type:"list"` + // The Amazon QuickSight user name that you want to create for the user you // are registering. UserName *string `min:"1" type:"string"` @@ -75856,12 +79925,25 @@ if s.SessionName != nil && len(*s.SessionName) < 2 { invalidParams.Add(request.NewErrParamMinLen("SessionName", 2)) } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if s.UserRole == nil { invalidParams.Add(request.NewErrParamRequired("UserRole")) } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -75929,6 +80011,12 @@ return s } +// SetTags sets the Tags field's value. +func (s *RegisterUserInput) SetTags(v []*Tag) *RegisterUserInput { + s.Tags = v + return s +} + // SetUserName sets the UserName field's value. func (s *RegisterUserInput) SetUserName(v string) *RegisterUserInput { s.UserName = &v @@ -83392,6 +87480,96 @@ return s } +// The parameters that are required to connect to a Starburst data source. +type StarburstParameters struct { + _ struct{} `type:"structure"` + + // The catalog name for the Starburst data source. + // + // Catalog is a required field + Catalog *string `type:"string" required:"true"` + + // The host name of the Starburst data source. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` + + // The port for the Starburst data source. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` + + // The product type for the Starburst data source. + ProductType *string `type:"string" enum:"StarburstProductType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StarburstParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StarburstParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StarburstParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StarburstParameters"} + if s.Catalog == nil { + invalidParams.Add(request.NewErrParamRequired("Catalog")) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalog sets the Catalog field's value. +func (s *StarburstParameters) SetCatalog(v string) *StarburstParameters { + s.Catalog = &v + return s +} + +// SetHost sets the Host field's value. +func (s *StarburstParameters) SetHost(v string) *StarburstParameters { + s.Host = &v + return s +} + +// SetPort sets the Port field's value. +func (s *StarburstParameters) SetPort(v int64) *StarburstParameters { + s.Port = &v + return s +} + +// SetProductType sets the ProductType field's value. +func (s *StarburstParameters) SetProductType(v string) *StarburstParameters { + s.ProductType = &v + return s +} + type StartAssetBundleExportJobInput struct { _ struct{} `type:"structure"` @@ -83426,6 +87604,16 @@ // dashboard is also exported. IncludeAllDependencies *bool `type:"boolean"` + // A Boolean that determines whether all permissions for each resource ARN are + // exported with the job. If you set IncludePermissions to TRUE, any permissions + // associated with each resource are exported. + IncludePermissions *bool `type:"boolean"` + + // A Boolean that determines whether all tags for each resource ARN are exported + // with the job. If you set IncludeTags to TRUE, any tags associated with each + // resource are exported. + IncludeTags *bool `type:"boolean"` + // An array of resource ARNs to export. The following resources are supported. // // * Analysis @@ -83447,6 +87635,13 @@ // // ResourceArns is a required field ResourceArns []*string `min:"1" type:"list" required:"true"` + + // An optional parameter that determines which validation strategy to use for + // the export job. If StrictModeForAllResources is set to TRUE, strict validation + // for every error is enforced. If it is set to FALSE, validation is skipped + // for specific UI errors that are shown as warnings. The default value for + // StrictModeForAllResources is FALSE. + ValidationStrategy *AssetBundleExportJobValidationStrategy `type:"structure"` } // String returns the string representation. @@ -83533,12 +87728,30 @@ return s } +// SetIncludePermissions sets the IncludePermissions field's value. +func (s *StartAssetBundleExportJobInput) SetIncludePermissions(v bool) *StartAssetBundleExportJobInput { + s.IncludePermissions = &v + return s +} + +// SetIncludeTags sets the IncludeTags field's value. +func (s *StartAssetBundleExportJobInput) SetIncludeTags(v bool) *StartAssetBundleExportJobInput { + s.IncludeTags = &v + return s +} + // SetResourceArns sets the ResourceArns field's value. func (s *StartAssetBundleExportJobInput) SetResourceArns(v []*string) *StartAssetBundleExportJobInput { s.ResourceArns = v return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *StartAssetBundleExportJobInput) SetValidationStrategy(v *AssetBundleExportJobValidationStrategy) *StartAssetBundleExportJobInput { + s.ValidationStrategy = v + return s +} + type StartAssetBundleExportJobOutput struct { _ struct{} `type:"structure"` @@ -83628,8 +87841,21 @@ // account in an inconsistent state. FailureAction *string `type:"string" enum:"AssetBundleImportFailureAction"` - // Optional overrides to be applied to the resource configuration before import. + // Optional overrides that are applied to the resource configuration before + // import. OverrideParameters *AssetBundleImportJobOverrideParameters `type:"structure"` + + // Optional permission overrides that are applied to the resource configuration + // before import. + OverridePermissions *AssetBundleImportJobOverridePermissions `type:"structure"` + + // Optional tag overrides that are applied to the resource configuration before + // import. + OverrideTags *AssetBundleImportJobOverrideTags `type:"structure"` + + // An optional validation strategy override for all analyses and dashboards + // that is applied to the resource configuration before import. + OverrideValidationStrategy *AssetBundleImportJobOverrideValidationStrategy `type:"structure"` } // String returns the string representation. @@ -83673,6 +87899,16 @@ invalidParams.AddNested("OverrideParameters", err.(request.ErrInvalidParams)) } } + if s.OverridePermissions != nil { + if err := s.OverridePermissions.Validate(); err != nil { + invalidParams.AddNested("OverridePermissions", err.(request.ErrInvalidParams)) + } + } + if s.OverrideTags != nil { + if err := s.OverrideTags.Validate(); err != nil { + invalidParams.AddNested("OverrideTags", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -83710,6 +87946,24 @@ return s } +// SetOverridePermissions sets the OverridePermissions field's value. +func (s *StartAssetBundleImportJobInput) SetOverridePermissions(v *AssetBundleImportJobOverridePermissions) *StartAssetBundleImportJobInput { + s.OverridePermissions = v + return s +} + +// SetOverrideTags sets the OverrideTags field's value. +func (s *StartAssetBundleImportJobInput) SetOverrideTags(v *AssetBundleImportJobOverrideTags) *StartAssetBundleImportJobInput { + s.OverrideTags = v + return s +} + +// SetOverrideValidationStrategy sets the OverrideValidationStrategy field's value. +func (s *StartAssetBundleImportJobInput) SetOverrideValidationStrategy(v *AssetBundleImportJobOverrideValidationStrategy) *StartAssetBundleImportJobInput { + s.OverrideValidationStrategy = v + return s +} + type StartAssetBundleImportJobOutput struct { _ struct{} `type:"structure"` @@ -87269,6 +91523,9 @@ // in the Amazon QuickSight User Guide. FilterGroups []*FilterGroup `type:"list"` + // An array of option definitions for a template. + Options *AssetOptions `type:"structure"` + // An array of parameter declarations for a template. // // Parameters are named variables that can transfer a value for use by an action @@ -87398,6 +91655,12 @@ return s } +// SetOptions sets the Options field's value. +func (s *TemplateVersionDefinition) SetOptions(v *AssetOptions) *TemplateVersionDefinition { + s.Options = v + return s +} + // SetParameterDeclarations sets the ParameterDeclarations field's value. func (s *TemplateVersionDefinition) SetParameterDeclarations(v []*ParameterDeclaration) *TemplateVersionDefinition { s.ParameterDeclarations = v @@ -88579,15 +92842,20 @@ // The parameter whose value should be used for the filter value. // - // This field is mutually exclusive to Value. + // This field is mutually exclusive to Value and RollingDate. ParameterName *string `min:"1" type:"string"` + // The rolling date input for the TimeEquality filter. + // + // This field is mutually exclusive to Value and ParameterName. + RollingDate *RollingDateConfiguration `type:"structure"` + // The level of time precision that is used to aggregate DateTime values. TimeGranularity *string `type:"string" enum:"TimeGranularity"` // The value of a TimeEquality filter. // - // This field is mutually exclusive to ParameterName. + // This field is mutually exclusive to RollingDate and ParameterName. Value *time.Time `type:"timestamp"` } @@ -88629,6 +92897,11 @@ invalidParams.AddNested("Column", err.(request.ErrInvalidParams)) } } + if s.RollingDate != nil { + if err := s.RollingDate.Validate(); err != nil { + invalidParams.AddNested("RollingDate", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -88654,6 +92927,12 @@ return s } +// SetRollingDate sets the RollingDate field's value. +func (s *TimeEqualityFilter) SetRollingDate(v *RollingDateConfiguration) *TimeEqualityFilter { + s.RollingDate = v + return s +} + // SetTimeGranularity sets the TimeGranularity field's value. func (s *TimeEqualityFilter) SetTimeGranularity(v string) *TimeEqualityFilter { s.TimeGranularity = &v @@ -90972,6 +95251,103 @@ return s } +// An aggregation function that aggregates the total values of a measure. +type TotalAggregationFunction struct { + _ struct{} `type:"structure"` + + // A built in aggregation function for total values. + SimpleTotalAggregationFunction *string `type:"string" enum:"SimpleTotalAggregationFunction"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TotalAggregationFunction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TotalAggregationFunction) GoString() string { + return s.String() +} + +// SetSimpleTotalAggregationFunction sets the SimpleTotalAggregationFunction field's value. +func (s *TotalAggregationFunction) SetSimpleTotalAggregationFunction(v string) *TotalAggregationFunction { + s.SimpleTotalAggregationFunction = &v + return s +} + +// The total aggregation settings map of a field id. +type TotalAggregationOption struct { + _ struct{} `type:"structure"` + + // The field id that's associated with the total aggregation option. + // + // FieldId is a required field + FieldId *string `min:"1" type:"string" required:"true"` + + // The total aggregation function that you want to set for a specified field + // id. + // + // TotalAggregationFunction is a required field + TotalAggregationFunction *TotalAggregationFunction `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 TotalAggregationOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TotalAggregationOption) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TotalAggregationOption) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TotalAggregationOption"} + if s.FieldId == nil { + invalidParams.Add(request.NewErrParamRequired("FieldId")) + } + if s.FieldId != nil && len(*s.FieldId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FieldId", 1)) + } + if s.TotalAggregationFunction == nil { + invalidParams.Add(request.NewErrParamRequired("TotalAggregationFunction")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFieldId sets the FieldId field's value. +func (s *TotalAggregationOption) SetFieldId(v string) *TotalAggregationOption { + s.FieldId = &v + return s +} + +// SetTotalAggregationFunction sets the TotalAggregationFunction field's value. +func (s *TotalAggregationOption) SetTotalAggregationFunction(v *TotalAggregationFunction) *TotalAggregationOption { + s.TotalAggregationFunction = v + return s +} + // The total options for a table visual. type TotalOptions struct { _ struct{} `type:"structure"` @@ -90985,6 +95361,9 @@ // The scroll status (pinned, scrolled) for the total cells. ScrollStatus *string `type:"string" enum:"TableTotalsScrollStatus"` + // The total aggregation settings for each value field. + TotalAggregationOptions []*TotalAggregationOption `type:"list"` + // Cell styling options for the total cells. TotalCellStyle *TableCellStyle `type:"structure"` @@ -91013,6 +95392,16 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *TotalOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TotalOptions"} + if s.TotalAggregationOptions != nil { + for i, v := range s.TotalAggregationOptions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TotalAggregationOptions", i), err.(request.ErrInvalidParams)) + } + } + } if s.TotalCellStyle != nil { if err := s.TotalCellStyle.Validate(); err != nil { invalidParams.AddNested("TotalCellStyle", err.(request.ErrInvalidParams)) @@ -91043,6 +95432,12 @@ return s } +// SetTotalAggregationOptions sets the TotalAggregationOptions field's value. +func (s *TotalOptions) SetTotalAggregationOptions(v []*TotalAggregationOption) *TotalOptions { + s.TotalAggregationOptions = v + return s +} + // SetTotalCellStyle sets the TotalCellStyle field's value. func (s *TotalOptions) SetTotalCellStyle(v *TableCellStyle) *TotalOptions { s.TotalCellStyle = v @@ -91732,6 +96127,87 @@ return s } +// The parameters that are required to connect to a Trino data source. +type TrinoParameters struct { + _ struct{} `type:"structure"` + + // The catalog name for the Trino data source. + // + // Catalog is a required field + Catalog *string `type:"string" required:"true"` + + // The host name of the Trino data source. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` + + // The port for the Trino data source. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" 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 TrinoParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrinoParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrinoParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrinoParameters"} + if s.Catalog == nil { + invalidParams.Add(request.NewErrParamRequired("Catalog")) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalog sets the Catalog field's value. +func (s *TrinoParameters) SetCatalog(v string) *TrinoParameters { + s.Catalog = &v + return s +} + +// SetHost sets the Host field's value. +func (s *TrinoParameters) SetHost(v string) *TrinoParameters { + s.Host = &v + return s +} + +// SetPort sets the Port field's value. +func (s *TrinoParameters) SetPort(v int64) *TrinoParameters { + s.Port = &v + return s +} + // The parameters for Twitter. type TwitterParameters struct { _ struct{} `type:"structure"` @@ -92805,6 +97281,10 @@ // you're creating. To see the theme in the Amazon QuickSight console, make // sure that you have access to it. ThemeArn *string `type:"string"` + + // The option to relax the validation needed to update an analysis with definition + // objects. This skips the validation step for specific errors. + ValidationStrategy *ValidationStrategy `type:"structure"` } // String returns the string representation. @@ -92861,6 +97341,11 @@ invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) } } + if s.ValidationStrategy != nil { + if err := s.ValidationStrategy.Validate(); err != nil { + invalidParams.AddNested("ValidationStrategy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -92910,6 +97395,12 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *UpdateAnalysisInput) SetValidationStrategy(v *ValidationStrategy) *UpdateAnalysisInput { + s.ValidationStrategy = v + return s +} + type UpdateAnalysisOutput struct { _ struct{} `type:"structure"` @@ -93220,6 +97711,10 @@ // Services account where you create the dashboard. ThemeArn *string `type:"string"` + // The option to relax the validation needed to update a dashboard with definition + // objects. This skips the validation step for specific errors. + ValidationStrategy *ValidationStrategy `type:"structure"` + // A description for the first version of the dashboard being created. VersionDescription *string `min:"1" type:"string"` } @@ -93281,6 +97776,11 @@ invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) } } + if s.ValidationStrategy != nil { + if err := s.ValidationStrategy.Validate(); err != nil { + invalidParams.AddNested("ValidationStrategy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -93336,6 +97836,12 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *UpdateDashboardInput) SetValidationStrategy(v *ValidationStrategy) *UpdateDashboardInput { + s.ValidationStrategy = v + return s +} + // SetVersionDescription sets the VersionDescription field's value. func (s *UpdateDashboardInput) SetVersionDescription(v string) *UpdateDashboardInput { s.VersionDescription = &v @@ -95349,6 +99855,124 @@ return s } +type UpdateIdentityPropagationConfigInput struct { + _ struct{} `type:"structure"` + + // Specifies a list of application ARNs that represent the authorized targets + // for a service. + AuthorizedTargets []*string `type:"list"` + + // The ID of the Amazon Web Services account that contains the identity propagation + // configuration that you want to update. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The name of the Amazon Web Services service that contains the authorized + // targets that you want to add or update. + // + // Service is a required field + Service *string `location:"uri" locationName:"Service" type:"string" required:"true" enum:"ServiceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIdentityPropagationConfigInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIdentityPropagationConfigInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateIdentityPropagationConfigInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateIdentityPropagationConfigInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Service == nil { + invalidParams.Add(request.NewErrParamRequired("Service")) + } + if s.Service != nil && len(*s.Service) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Service", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizedTargets sets the AuthorizedTargets field's value. +func (s *UpdateIdentityPropagationConfigInput) SetAuthorizedTargets(v []*string) *UpdateIdentityPropagationConfigInput { + s.AuthorizedTargets = v + return s +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateIdentityPropagationConfigInput) SetAwsAccountId(v string) *UpdateIdentityPropagationConfigInput { + s.AwsAccountId = &v + return s +} + +// SetService sets the Service field's value. +func (s *UpdateIdentityPropagationConfigInput) SetService(v string) *UpdateIdentityPropagationConfigInput { + s.Service = &v + return s +} + +type UpdateIdentityPropagationConfigOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" 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 UpdateIdentityPropagationConfigOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateIdentityPropagationConfigOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *UpdateIdentityPropagationConfigOutput) SetRequestId(v string) *UpdateIdentityPropagationConfigOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateIdentityPropagationConfigOutput) SetStatus(v int64) *UpdateIdentityPropagationConfigOutput { + s.Status = &v + return s +} + type UpdateIpRestrictionInput struct { _ struct{} `type:"structure"` @@ -95708,6 +100332,148 @@ return s } +type UpdateRoleCustomPermissionInput struct { + _ struct{} `type:"structure"` + + // The ID for the Amazon Web Services account that you want to create a group + // in. The Amazon Web Services account ID that you provide must be the same + // Amazon Web Services account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The name of the custom permission that you want to update the role with. + // + // CustomPermissionsName is a required field + CustomPermissionsName *string `min:"1" type:"string" required:"true"` + + // The namespace that contains the role that you want to update. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The name of role tht you want to update. + // + // Role is a required field + Role *string `location:"uri" locationName:"Role" type:"string" required:"true" enum:"Role"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRoleCustomPermissionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRoleCustomPermissionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRoleCustomPermissionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRoleCustomPermissionInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.CustomPermissionsName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomPermissionsName")) + } + if s.CustomPermissionsName != nil && len(*s.CustomPermissionsName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomPermissionsName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Role == nil { + invalidParams.Add(request.NewErrParamRequired("Role")) + } + if s.Role != nil && len(*s.Role) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Role", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateRoleCustomPermissionInput) SetAwsAccountId(v string) *UpdateRoleCustomPermissionInput { + s.AwsAccountId = &v + return s +} + +// SetCustomPermissionsName sets the CustomPermissionsName field's value. +func (s *UpdateRoleCustomPermissionInput) SetCustomPermissionsName(v string) *UpdateRoleCustomPermissionInput { + s.CustomPermissionsName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *UpdateRoleCustomPermissionInput) SetNamespace(v string) *UpdateRoleCustomPermissionInput { + s.Namespace = &v + return s +} + +// SetRole sets the Role field's value. +func (s *UpdateRoleCustomPermissionInput) SetRole(v string) *UpdateRoleCustomPermissionInput { + s.Role = &v + return s +} + +type UpdateRoleCustomPermissionOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *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 UpdateRoleCustomPermissionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRoleCustomPermissionOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *UpdateRoleCustomPermissionOutput) SetRequestId(v string) *UpdateRoleCustomPermissionOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateRoleCustomPermissionOutput) SetStatus(v int64) *UpdateRoleCustomPermissionOutput { + s.Status = &v + return s +} + type UpdateTemplateAliasInput struct { _ struct{} `type:"structure"` @@ -95897,6 +100663,10 @@ // TemplateId is a required field TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // The option to relax the validation needed to update a template with definition + // objects. This skips the validation step for specific errors. + ValidationStrategy *ValidationStrategy `type:"structure"` + // A description of the current template version that is being updated. Every // time you call UpdateTemplate, you create a new version of the template. Each // version of the template maintains a description of the version in the VersionDescription @@ -95953,6 +100723,11 @@ invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) } } + if s.ValidationStrategy != nil { + if err := s.ValidationStrategy.Validate(); err != nil { + invalidParams.AddNested("ValidationStrategy", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -95990,6 +100765,12 @@ return s } +// SetValidationStrategy sets the ValidationStrategy field's value. +func (s *UpdateTemplateInput) SetValidationStrategy(v *ValidationStrategy) *UpdateTemplateInput { + s.ValidationStrategy = v + return s +} + // SetVersionDescription sets the VersionDescription field's value. func (s *UpdateTemplateInput) SetVersionDescription(v string) *UpdateTemplateInput { s.VersionDescription = &v @@ -98312,6 +103093,57 @@ return s } +// The option to relax the validation that is required to create and update +// analyses, dashboards, and templates with definition objects. When you set +// this value to LENIENT, validation is skipped for specific errors. +type ValidationStrategy struct { + _ struct{} `type:"structure"` + + // The mode of validation for the asset to be created or updated. When you set + // this value to STRICT, strict validation for every error is enforced. When + // you set this value to LENIENT, validation is skipped for specific UI errors. + // + // Mode is a required field + Mode *string `type:"string" required:"true" enum:"ValidationStrategyMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationStrategy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationStrategy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ValidationStrategy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ValidationStrategy"} + if s.Mode == nil { + invalidParams.Add(request.NewErrParamRequired("Mode")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMode sets the Mode field's value. +func (s *ValidationStrategy) SetMode(v string) *ValidationStrategy { + s.Mode = &v + return s +} + // The range options for the data zoom scroll bar. type VisibleRangeOptions struct { _ struct{} `type:"structure"` @@ -101138,6 +105970,22 @@ } const ( + // ColumnDataSubTypeFloat is a ColumnDataSubType enum value + ColumnDataSubTypeFloat = "FLOAT" + + // ColumnDataSubTypeFixed is a ColumnDataSubType enum value + ColumnDataSubTypeFixed = "FIXED" +) + +// ColumnDataSubType_Values returns all elements of the ColumnDataSubType enum +func ColumnDataSubType_Values() []string { + return []string{ + ColumnDataSubTypeFloat, + ColumnDataSubTypeFixed, + } +} + +const ( // ColumnDataTypeString is a ColumnDataType enum value ColumnDataTypeString = "STRING" @@ -101747,6 +106595,15 @@ // DataSourceTypeDatabricks is a DataSourceType enum value DataSourceTypeDatabricks = "DATABRICKS" + + // DataSourceTypeStarburst is a DataSourceType enum value + DataSourceTypeStarburst = "STARBURST" + + // DataSourceTypeTrino is a DataSourceType enum value + DataSourceTypeTrino = "TRINO" + + // DataSourceTypeBigquery is a DataSourceType enum value + DataSourceTypeBigquery = "BIGQUERY" ) // DataSourceType_Values returns all elements of the DataSourceType enum @@ -101778,6 +106635,9 @@ DataSourceTypeAmazonOpensearch, DataSourceTypeExasol, DataSourceTypeDatabricks, + DataSourceTypeStarburst, + DataSourceTypeTrino, + DataSourceTypeBigquery, } } @@ -101822,6 +106682,42 @@ } const ( + // DayOfTheWeekSunday is a DayOfTheWeek enum value + DayOfTheWeekSunday = "SUNDAY" + + // DayOfTheWeekMonday is a DayOfTheWeek enum value + DayOfTheWeekMonday = "MONDAY" + + // DayOfTheWeekTuesday is a DayOfTheWeek enum value + DayOfTheWeekTuesday = "TUESDAY" + + // DayOfTheWeekWednesday is a DayOfTheWeek enum value + DayOfTheWeekWednesday = "WEDNESDAY" + + // DayOfTheWeekThursday is a DayOfTheWeek enum value + DayOfTheWeekThursday = "THURSDAY" + + // DayOfTheWeekFriday is a DayOfTheWeek enum value + DayOfTheWeekFriday = "FRIDAY" + + // DayOfTheWeekSaturday is a DayOfTheWeek enum value + DayOfTheWeekSaturday = "SATURDAY" +) + +// DayOfTheWeek_Values returns all elements of the DayOfTheWeek enum +func DayOfTheWeek_Values() []string { + return []string{ + DayOfTheWeekSunday, + DayOfTheWeekMonday, + DayOfTheWeekTuesday, + DayOfTheWeekWednesday, + DayOfTheWeekThursday, + DayOfTheWeekFriday, + DayOfTheWeekSaturday, + } +} + +const ( // DayOfWeekSunday is a DayOfWeek enum value DayOfWeekSunday = "SUNDAY" @@ -102168,12 +107064,16 @@ const ( // FolderTypeShared is a FolderType enum value FolderTypeShared = "SHARED" + + // FolderTypeRestricted is a FolderType enum value + FolderTypeRestricted = "RESTRICTED" ) // FolderType_Values returns all elements of the FolderType enum func FolderType_Values() []string { return []string{ FolderTypeShared, + FolderTypeRestricted, } } @@ -103114,6 +108014,12 @@ // MemberTypeDataset is a MemberType enum value MemberTypeDataset = "DATASET" + + // MemberTypeDatasource is a MemberType enum value + MemberTypeDatasource = "DATASOURCE" + + // MemberTypeTopic is a MemberType enum value + MemberTypeTopic = "TOPIC" ) // MemberType_Values returns all elements of the MemberType enum @@ -103122,6 +108028,8 @@ MemberTypeDashboard, MemberTypeAnalysis, MemberTypeDataset, + MemberTypeDatasource, + MemberTypeTopic, } } @@ -103618,6 +108526,30 @@ } const ( + // PivotTableDataPathTypeHierarchyRowsLayoutColumn is a PivotTableDataPathType enum value + PivotTableDataPathTypeHierarchyRowsLayoutColumn = "HIERARCHY_ROWS_LAYOUT_COLUMN" + + // PivotTableDataPathTypeMultipleRowMetricsColumn is a PivotTableDataPathType enum value + PivotTableDataPathTypeMultipleRowMetricsColumn = "MULTIPLE_ROW_METRICS_COLUMN" + + // PivotTableDataPathTypeEmptyColumnHeader is a PivotTableDataPathType enum value + PivotTableDataPathTypeEmptyColumnHeader = "EMPTY_COLUMN_HEADER" + + // PivotTableDataPathTypeCountMetricColumn is a PivotTableDataPathType enum value + PivotTableDataPathTypeCountMetricColumn = "COUNT_METRIC_COLUMN" +) + +// PivotTableDataPathType_Values returns all elements of the PivotTableDataPathType enum +func PivotTableDataPathType_Values() []string { + return []string{ + PivotTableDataPathTypeHierarchyRowsLayoutColumn, + PivotTableDataPathTypeMultipleRowMetricsColumn, + PivotTableDataPathTypeEmptyColumnHeader, + PivotTableDataPathTypeCountMetricColumn, + } +} + +const ( // PivotTableFieldCollapseStateCollapsed is a PivotTableFieldCollapseState enum value PivotTableFieldCollapseStateCollapsed = "COLLAPSED" @@ -103834,6 +108766,22 @@ } const ( + // ReferenceLineSeriesTypeBar is a ReferenceLineSeriesType enum value + ReferenceLineSeriesTypeBar = "BAR" + + // ReferenceLineSeriesTypeLine is a ReferenceLineSeriesType enum value + ReferenceLineSeriesTypeLine = "LINE" +) + +// ReferenceLineSeriesType_Values returns all elements of the ReferenceLineSeriesType enum +func ReferenceLineSeriesType_Values() []string { + return []string{ + ReferenceLineSeriesTypeBar, + ReferenceLineSeriesTypeLine, + } +} + +const ( // ReferenceLineValueLabelRelativePositionBeforeCustomLabel is a ReferenceLineValueLabelRelativePosition enum value ReferenceLineValueLabelRelativePositionBeforeCustomLabel = "BEFORE_CUSTOM_LABEL" @@ -103990,6 +108938,26 @@ } const ( + // RoleAdmin is a Role enum value + RoleAdmin = "ADMIN" + + // RoleAuthor is a Role enum value + RoleAuthor = "AUTHOR" + + // RoleReader is a Role enum value + RoleReader = "READER" +) + +// Role_Values returns all elements of the Role enum +func Role_Values() []string { + return []string{ + RoleAdmin, + RoleAuthor, + RoleReader, + } +} + +const ( // RowLevelPermissionFormatVersionVersion1 is a RowLevelPermissionFormatVersion enum value RowLevelPermissionFormatVersionVersion1 = "VERSION_1" @@ -104078,6 +109046,18 @@ } const ( + // ServiceTypeRedshift is a ServiceType enum value + ServiceTypeRedshift = "REDSHIFT" +) + +// ServiceType_Values returns all elements of the ServiceType enum +func ServiceType_Values() []string { + return []string{ + ServiceTypeRedshift, + } +} + +const ( // SharingModelAccount is a SharingModel enum value SharingModelAccount = "ACCOUNT" @@ -104222,6 +109202,38 @@ } const ( + // SimpleTotalAggregationFunctionDefault is a SimpleTotalAggregationFunction enum value + SimpleTotalAggregationFunctionDefault = "DEFAULT" + + // SimpleTotalAggregationFunctionSum is a SimpleTotalAggregationFunction enum value + SimpleTotalAggregationFunctionSum = "SUM" + + // SimpleTotalAggregationFunctionAverage is a SimpleTotalAggregationFunction enum value + SimpleTotalAggregationFunctionAverage = "AVERAGE" + + // SimpleTotalAggregationFunctionMin is a SimpleTotalAggregationFunction enum value + SimpleTotalAggregationFunctionMin = "MIN" + + // SimpleTotalAggregationFunctionMax is a SimpleTotalAggregationFunction enum value + SimpleTotalAggregationFunctionMax = "MAX" + + // SimpleTotalAggregationFunctionNone is a SimpleTotalAggregationFunction enum value + SimpleTotalAggregationFunctionNone = "NONE" +) + +// SimpleTotalAggregationFunction_Values returns all elements of the SimpleTotalAggregationFunction enum +func SimpleTotalAggregationFunction_Values() []string { + return []string{ + SimpleTotalAggregationFunctionDefault, + SimpleTotalAggregationFunctionSum, + SimpleTotalAggregationFunctionAverage, + SimpleTotalAggregationFunctionMin, + SimpleTotalAggregationFunctionMax, + SimpleTotalAggregationFunctionNone, + } +} + +const ( // SmallMultiplesAxisPlacementOutside is a SmallMultiplesAxisPlacement enum value SmallMultiplesAxisPlacementOutside = "OUTSIDE" @@ -104350,6 +109362,22 @@ } const ( + // StarburstProductTypeGalaxy is a StarburstProductType enum value + StarburstProductTypeGalaxy = "GALAXY" + + // StarburstProductTypeEnterprise is a StarburstProductType enum value + StarburstProductTypeEnterprise = "ENTERPRISE" +) + +// StarburstProductType_Values returns all elements of the StarburstProductType enum +func StarburstProductType_Values() []string { + return []string{ + StarburstProductTypeGalaxy, + StarburstProductTypeEnterprise, + } +} + +const ( // StatusEnabled is a Status enum value StatusEnabled = "ENABLED" @@ -104455,6 +109483,9 @@ // TableTotalsPlacementEnd is a TableTotalsPlacement enum value TableTotalsPlacementEnd = "END" + + // TableTotalsPlacementAuto is a TableTotalsPlacement enum value + TableTotalsPlacementAuto = "AUTO" ) // TableTotalsPlacement_Values returns all elements of the TableTotalsPlacement enum @@ -104462,6 +109493,7 @@ return []string{ TableTotalsPlacementStart, TableTotalsPlacementEnd, + TableTotalsPlacementAuto, } } @@ -104937,6 +109969,22 @@ } } +const ( + // ValidationStrategyModeStrict is a ValidationStrategyMode enum value + ValidationStrategyModeStrict = "STRICT" + + // ValidationStrategyModeLenient is a ValidationStrategyMode enum value + ValidationStrategyModeLenient = "LENIENT" +) + +// ValidationStrategyMode_Values returns all elements of the ValidationStrategyMode enum +func ValidationStrategyMode_Values() []string { + return []string{ + ValidationStrategyModeStrict, + ValidationStrategyModeLenient, + } +} + const ( // ValueWhenUnsetOptionRecommendedValue is a ValueWhenUnsetOption enum value ValueWhenUnsetOptionRecommendedValue = "RECOMMENDED_VALUE" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/quicksight/quicksightiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/quicksight/quicksightiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/quicksight/quicksightiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/quicksight/quicksightiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -120,6 +120,10 @@ CreateRefreshScheduleWithContext(aws.Context, *quicksight.CreateRefreshScheduleInput, ...request.Option) (*quicksight.CreateRefreshScheduleOutput, error) CreateRefreshScheduleRequest(*quicksight.CreateRefreshScheduleInput) (*request.Request, *quicksight.CreateRefreshScheduleOutput) + CreateRoleMembership(*quicksight.CreateRoleMembershipInput) (*quicksight.CreateRoleMembershipOutput, error) + CreateRoleMembershipWithContext(aws.Context, *quicksight.CreateRoleMembershipInput, ...request.Option) (*quicksight.CreateRoleMembershipOutput, error) + CreateRoleMembershipRequest(*quicksight.CreateRoleMembershipInput) (*request.Request, *quicksight.CreateRoleMembershipOutput) + CreateTemplate(*quicksight.CreateTemplateInput) (*quicksight.CreateTemplateOutput, error) CreateTemplateWithContext(aws.Context, *quicksight.CreateTemplateInput, ...request.Option) (*quicksight.CreateTemplateOutput, error) CreateTemplateRequest(*quicksight.CreateTemplateInput) (*request.Request, *quicksight.CreateTemplateOutput) @@ -196,6 +200,10 @@ DeleteIAMPolicyAssignmentWithContext(aws.Context, *quicksight.DeleteIAMPolicyAssignmentInput, ...request.Option) (*quicksight.DeleteIAMPolicyAssignmentOutput, error) DeleteIAMPolicyAssignmentRequest(*quicksight.DeleteIAMPolicyAssignmentInput) (*request.Request, *quicksight.DeleteIAMPolicyAssignmentOutput) + DeleteIdentityPropagationConfig(*quicksight.DeleteIdentityPropagationConfigInput) (*quicksight.DeleteIdentityPropagationConfigOutput, error) + DeleteIdentityPropagationConfigWithContext(aws.Context, *quicksight.DeleteIdentityPropagationConfigInput, ...request.Option) (*quicksight.DeleteIdentityPropagationConfigOutput, error) + DeleteIdentityPropagationConfigRequest(*quicksight.DeleteIdentityPropagationConfigInput) (*request.Request, *quicksight.DeleteIdentityPropagationConfigOutput) + DeleteNamespace(*quicksight.DeleteNamespaceInput) (*quicksight.DeleteNamespaceOutput, error) DeleteNamespaceWithContext(aws.Context, *quicksight.DeleteNamespaceInput, ...request.Option) (*quicksight.DeleteNamespaceOutput, error) DeleteNamespaceRequest(*quicksight.DeleteNamespaceInput) (*request.Request, *quicksight.DeleteNamespaceOutput) @@ -204,6 +212,14 @@ DeleteRefreshScheduleWithContext(aws.Context, *quicksight.DeleteRefreshScheduleInput, ...request.Option) (*quicksight.DeleteRefreshScheduleOutput, error) DeleteRefreshScheduleRequest(*quicksight.DeleteRefreshScheduleInput) (*request.Request, *quicksight.DeleteRefreshScheduleOutput) + DeleteRoleCustomPermission(*quicksight.DeleteRoleCustomPermissionInput) (*quicksight.DeleteRoleCustomPermissionOutput, error) + DeleteRoleCustomPermissionWithContext(aws.Context, *quicksight.DeleteRoleCustomPermissionInput, ...request.Option) (*quicksight.DeleteRoleCustomPermissionOutput, error) + DeleteRoleCustomPermissionRequest(*quicksight.DeleteRoleCustomPermissionInput) (*request.Request, *quicksight.DeleteRoleCustomPermissionOutput) + + DeleteRoleMembership(*quicksight.DeleteRoleMembershipInput) (*quicksight.DeleteRoleMembershipOutput, error) + DeleteRoleMembershipWithContext(aws.Context, *quicksight.DeleteRoleMembershipInput, ...request.Option) (*quicksight.DeleteRoleMembershipOutput, error) + DeleteRoleMembershipRequest(*quicksight.DeleteRoleMembershipInput) (*request.Request, *quicksight.DeleteRoleMembershipOutput) + DeleteTemplate(*quicksight.DeleteTemplateInput) (*quicksight.DeleteTemplateOutput, error) DeleteTemplateWithContext(aws.Context, *quicksight.DeleteTemplateInput, ...request.Option) (*quicksight.DeleteTemplateOutput, error) DeleteTemplateRequest(*quicksight.DeleteTemplateInput) (*request.Request, *quicksight.DeleteTemplateOutput) @@ -358,6 +374,10 @@ DescribeRefreshScheduleWithContext(aws.Context, *quicksight.DescribeRefreshScheduleInput, ...request.Option) (*quicksight.DescribeRefreshScheduleOutput, error) DescribeRefreshScheduleRequest(*quicksight.DescribeRefreshScheduleInput) (*request.Request, *quicksight.DescribeRefreshScheduleOutput) + DescribeRoleCustomPermission(*quicksight.DescribeRoleCustomPermissionInput) (*quicksight.DescribeRoleCustomPermissionOutput, error) + DescribeRoleCustomPermissionWithContext(aws.Context, *quicksight.DescribeRoleCustomPermissionInput, ...request.Option) (*quicksight.DescribeRoleCustomPermissionOutput, error) + DescribeRoleCustomPermissionRequest(*quicksight.DescribeRoleCustomPermissionInput) (*request.Request, *quicksight.DescribeRoleCustomPermissionOutput) + DescribeTemplate(*quicksight.DescribeTemplateInput) (*quicksight.DescribeTemplateOutput, error) DescribeTemplateWithContext(aws.Context, *quicksight.DescribeTemplateInput, ...request.Option) (*quicksight.DescribeTemplateOutput, error) DescribeTemplateRequest(*quicksight.DescribeTemplateInput) (*request.Request, *quicksight.DescribeTemplateOutput) @@ -517,6 +537,10 @@ ListIAMPolicyAssignmentsForUserPages(*quicksight.ListIAMPolicyAssignmentsForUserInput, func(*quicksight.ListIAMPolicyAssignmentsForUserOutput, bool) bool) error ListIAMPolicyAssignmentsForUserPagesWithContext(aws.Context, *quicksight.ListIAMPolicyAssignmentsForUserInput, func(*quicksight.ListIAMPolicyAssignmentsForUserOutput, bool) bool, ...request.Option) error + ListIdentityPropagationConfigs(*quicksight.ListIdentityPropagationConfigsInput) (*quicksight.ListIdentityPropagationConfigsOutput, error) + ListIdentityPropagationConfigsWithContext(aws.Context, *quicksight.ListIdentityPropagationConfigsInput, ...request.Option) (*quicksight.ListIdentityPropagationConfigsOutput, error) + ListIdentityPropagationConfigsRequest(*quicksight.ListIdentityPropagationConfigsInput) (*request.Request, *quicksight.ListIdentityPropagationConfigsOutput) + ListIngestions(*quicksight.ListIngestionsInput) (*quicksight.ListIngestionsOutput, error) ListIngestionsWithContext(aws.Context, *quicksight.ListIngestionsInput, ...request.Option) (*quicksight.ListIngestionsOutput, error) ListIngestionsRequest(*quicksight.ListIngestionsInput) (*request.Request, *quicksight.ListIngestionsOutput) @@ -535,6 +559,13 @@ ListRefreshSchedulesWithContext(aws.Context, *quicksight.ListRefreshSchedulesInput, ...request.Option) (*quicksight.ListRefreshSchedulesOutput, error) ListRefreshSchedulesRequest(*quicksight.ListRefreshSchedulesInput) (*request.Request, *quicksight.ListRefreshSchedulesOutput) + ListRoleMemberships(*quicksight.ListRoleMembershipsInput) (*quicksight.ListRoleMembershipsOutput, error) + ListRoleMembershipsWithContext(aws.Context, *quicksight.ListRoleMembershipsInput, ...request.Option) (*quicksight.ListRoleMembershipsOutput, error) + ListRoleMembershipsRequest(*quicksight.ListRoleMembershipsInput) (*request.Request, *quicksight.ListRoleMembershipsOutput) + + ListRoleMembershipsPages(*quicksight.ListRoleMembershipsInput, func(*quicksight.ListRoleMembershipsOutput, bool) bool) error + ListRoleMembershipsPagesWithContext(aws.Context, *quicksight.ListRoleMembershipsInput, func(*quicksight.ListRoleMembershipsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*quicksight.ListTagsForResourceInput) (*quicksight.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *quicksight.ListTagsForResourceInput, ...request.Option) (*quicksight.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*quicksight.ListTagsForResourceInput) (*request.Request, *quicksight.ListTagsForResourceOutput) @@ -744,6 +775,10 @@ UpdateIAMPolicyAssignmentWithContext(aws.Context, *quicksight.UpdateIAMPolicyAssignmentInput, ...request.Option) (*quicksight.UpdateIAMPolicyAssignmentOutput, error) UpdateIAMPolicyAssignmentRequest(*quicksight.UpdateIAMPolicyAssignmentInput) (*request.Request, *quicksight.UpdateIAMPolicyAssignmentOutput) + UpdateIdentityPropagationConfig(*quicksight.UpdateIdentityPropagationConfigInput) (*quicksight.UpdateIdentityPropagationConfigOutput, error) + UpdateIdentityPropagationConfigWithContext(aws.Context, *quicksight.UpdateIdentityPropagationConfigInput, ...request.Option) (*quicksight.UpdateIdentityPropagationConfigOutput, error) + UpdateIdentityPropagationConfigRequest(*quicksight.UpdateIdentityPropagationConfigInput) (*request.Request, *quicksight.UpdateIdentityPropagationConfigOutput) + UpdateIpRestriction(*quicksight.UpdateIpRestrictionInput) (*quicksight.UpdateIpRestrictionOutput, error) UpdateIpRestrictionWithContext(aws.Context, *quicksight.UpdateIpRestrictionInput, ...request.Option) (*quicksight.UpdateIpRestrictionOutput, error) UpdateIpRestrictionRequest(*quicksight.UpdateIpRestrictionInput) (*request.Request, *quicksight.UpdateIpRestrictionOutput) @@ -756,6 +791,10 @@ UpdateRefreshScheduleWithContext(aws.Context, *quicksight.UpdateRefreshScheduleInput, ...request.Option) (*quicksight.UpdateRefreshScheduleOutput, error) UpdateRefreshScheduleRequest(*quicksight.UpdateRefreshScheduleInput) (*request.Request, *quicksight.UpdateRefreshScheduleOutput) + UpdateRoleCustomPermission(*quicksight.UpdateRoleCustomPermissionInput) (*quicksight.UpdateRoleCustomPermissionOutput, error) + UpdateRoleCustomPermissionWithContext(aws.Context, *quicksight.UpdateRoleCustomPermissionInput, ...request.Option) (*quicksight.UpdateRoleCustomPermissionOutput, error) + UpdateRoleCustomPermissionRequest(*quicksight.UpdateRoleCustomPermissionInput) (*request.Request, *quicksight.UpdateRoleCustomPermissionOutput) + UpdateTemplate(*quicksight.UpdateTemplateInput) (*quicksight.UpdateTemplateOutput, error) UpdateTemplateWithContext(aws.Context, *quicksight.UpdateTemplateInput, ...request.Option) (*quicksight.UpdateTemplateOutput, error) UpdateTemplateRequest(*quicksight.UpdateTemplateInput) (*request.Request, *quicksight.UpdateTemplateOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rds/api.go golang-github-aws-aws-sdk-go-1.48.14/service/rds/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rds/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rds/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -362,6 +362,15 @@ // - ErrCodeBlueGreenDeploymentNotFoundFault "BlueGreenDeploymentNotFoundFault" // BlueGreenDeploymentIdentifier doesn't refer to an existing blue/green deployment. // +// - ErrCodeIntegrationNotFoundFault "IntegrationNotFoundFault" +// The specified integration could not be found. +// +// - ErrCodeTenantDatabaseNotFoundFault "TenantDatabaseNotFound" +// The specified tenant database wasn't found in the DB instance. +// +// - ErrCodeDBSnapshotTenantDatabaseNotFoundFault "DBSnapshotTenantDatabaseNotFoundFault" +// The specified snapshot tenant database wasn't found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/AddTagsToResource func (c *RDS) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) @@ -797,6 +806,10 @@ // // Copies the specified DB cluster parameter group. // +// You can't copy a default DB cluster parameter group. Instead, create a new +// custom DB cluster parameter group, which copies the default parameters and +// values for the specified DB cluster parameter group family. +// // 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. @@ -1015,6 +1028,10 @@ // // Copies the specified DB parameter group. // +// You can't copy a default DB parameter group. Instead, create a new custom +// DB parameter group, which copies the default parameters and values for the +// specified DB parameter group family. +// // 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. @@ -1567,6 +1584,10 @@ // - ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" // The requested operation can't be performed while the cluster is in this state. // +// - ErrCodeInvalidDBSubnetGroupFault "InvalidDBSubnetGroupFault" +// The DBSubnetGroup doesn't belong to the same VPC as that of an existing cross-region +// read replica of the same source instance. +// // - ErrCodeInvalidDBSubnetGroupStateFault "InvalidDBSubnetGroupStateFault" // The DB subnet group cannot be deleted because it's in use. // @@ -1605,6 +1626,9 @@ // - ErrCodeDomainNotFoundFault "DomainNotFoundFault" // Domain doesn't refer to an existing Active Directory domain. // +// - ErrCodeOptionGroupNotFoundFault "OptionGroupNotFoundFault" +// The specified option group could not be found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateDBCluster func (c *RDS) CreateDBCluster(input *CreateDBClusterInput) (*CreateDBClusterOutput, error) { req, out := c.CreateDBClusterRequest(input) @@ -2079,6 +2103,10 @@ // - ErrCodeCertificateNotFoundFault "CertificateNotFound" // CertificateIdentifier doesn't refer to an existing certificate. // +// - ErrCodeTenantDatabaseQuotaExceededFault "TenantDatabaseQuotaExceeded" +// You attempted to create more tenant databases than are permitted in your +// Amazon Web Services account. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateDBInstance func (c *RDS) CreateDBInstance(input *CreateDBInstanceInput) (*CreateDBInstanceOutput, error) { req, out := c.CreateDBInstanceRequest(input) @@ -2146,15 +2174,15 @@ // // Creates a new DB instance that acts as a read replica for an existing source // DB instance or Multi-AZ DB cluster. You can create a read replica for a DB -// instance running MySQL, MariaDB, Oracle, PostgreSQL, or SQL Server. You can -// create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. -// For more information, see Working with read replicas (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) +// instance running Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server. +// You can create a read replica for a Multi-AZ DB cluster running MySQL or +// PostgreSQL. For more information, see Working with read replicas (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) // and Migrating from a Multi-AZ DB cluster to a DB instance using a read replica // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html#multi-az-db-clusters-migrating-to-instance-with-read-replica) // in the Amazon RDS User Guide. // -// Amazon Aurora doesn't support this operation. Call the CreateDBInstance operation -// to create a DB instance for an Aurora DB cluster. +// Amazon Aurora doesn't support this operation. To create a DB instance for +// an Aurora DB cluster, use the CreateDBInstance operation. // // All read replica DB instances are created with backups disabled. All other // attributes (including DB security groups and DB parameter groups) are inherited @@ -2245,6 +2273,10 @@ // The network type is invalid for the DB instance. Valid nework type values // are IPV4 and DUAL. // +// - ErrCodeTenantDatabaseQuotaExceededFault "TenantDatabaseQuotaExceeded" +// You attempted to create more tenant databases than are permitted in your +// Amazon Web Services account. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateDBInstanceReadReplica func (c *RDS) CreateDBInstanceReadReplica(input *CreateDBInstanceReadReplicaInput) (*CreateDBInstanceReadReplicaOutput, error) { req, out := c.CreateDBInstanceReadReplicaRequest(input) @@ -3067,6 +3099,104 @@ return out, req.Send() } +const opCreateIntegration = "CreateIntegration" + +// CreateIntegrationRequest generates a "aws/request.Request" representing the +// client's request for the CreateIntegration 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 CreateIntegration for more information on using the CreateIntegration +// 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 CreateIntegrationRequest method. +// req, resp := client.CreateIntegrationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateIntegration +func (c *RDS) CreateIntegrationRequest(input *CreateIntegrationInput) (req *request.Request, output *CreateIntegrationOutput) { + op := &request.Operation{ + Name: opCreateIntegration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateIntegrationInput{} + } + + output = &CreateIntegrationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateIntegration API operation for Amazon Relational Database Service. +// +// Creates a zero-ETL integration with Amazon Redshift. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation CreateIntegration for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" +// DBClusterIdentifier doesn't refer to an existing DB cluster. +// +// - ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" +// DBInstanceIdentifier doesn't refer to an existing DB instance. +// +// - ErrCodeIntegrationAlreadyExistsFault "IntegrationAlreadyExistsFault" +// The integration you are trying to create already exists. +// +// - ErrCodeIntegrationQuotaExceededFault "IntegrationQuotaExceededFault" +// You can't crate any more zero-ETL integrations because the quota has been +// reached. +// +// - ErrCodeKMSKeyNotAccessibleFault "KMSKeyNotAccessibleFault" +// An error occurred accessing an Amazon Web Services KMS key. +// +// - ErrCodeIntegrationConflictOperationFault "IntegrationConflictOperationFault" +// A conflicting conditional operation is currently in progress against this +// resource. Typically occurs when there are multiple requests being made to +// the same resource at the same time, and these requests conflict with each +// other. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateIntegration +func (c *RDS) CreateIntegration(input *CreateIntegrationInput) (*CreateIntegrationOutput, error) { + req, out := c.CreateIntegrationRequest(input) + return out, req.Send() +} + +// CreateIntegrationWithContext is the same as CreateIntegration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateIntegration 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 *RDS) CreateIntegrationWithContext(ctx aws.Context, input *CreateIntegrationInput, opts ...request.Option) (*CreateIntegrationOutput, error) { + req, out := c.CreateIntegrationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateOptionGroup = "CreateOptionGroup" // CreateOptionGroupRequest generates a "aws/request.Request" representing the @@ -3151,6 +3281,97 @@ return out, req.Send() } +const opCreateTenantDatabase = "CreateTenantDatabase" + +// CreateTenantDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the CreateTenantDatabase 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 CreateTenantDatabase for more information on using the CreateTenantDatabase +// 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 CreateTenantDatabaseRequest method. +// req, resp := client.CreateTenantDatabaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateTenantDatabase +func (c *RDS) CreateTenantDatabaseRequest(input *CreateTenantDatabaseInput) (req *request.Request, output *CreateTenantDatabaseOutput) { + op := &request.Operation{ + Name: opCreateTenantDatabase, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateTenantDatabaseInput{} + } + + output = &CreateTenantDatabaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTenantDatabase API operation for Amazon Relational Database Service. +// +// Creates a tenant database in a DB instance that uses the multi-tenant configuration. +// Only RDS for Oracle container database (CDB) instances are supported. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation CreateTenantDatabase for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" +// DBInstanceIdentifier doesn't refer to an existing DB instance. +// +// - ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" +// The DB instance isn't in a valid state. +// +// - ErrCodeTenantDatabaseAlreadyExistsFault "TenantDatabaseAlreadyExists" +// You attempted to either create a tenant database that already exists or modify +// a tenant database to use the name of an existing tenant database. +// +// - ErrCodeTenantDatabaseQuotaExceededFault "TenantDatabaseQuotaExceeded" +// You attempted to create more tenant databases than are permitted in your +// Amazon Web Services account. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateTenantDatabase +func (c *RDS) CreateTenantDatabase(input *CreateTenantDatabaseInput) (*CreateTenantDatabaseOutput, error) { + req, out := c.CreateTenantDatabaseRequest(input) + return out, req.Send() +} + +// CreateTenantDatabaseWithContext is the same as CreateTenantDatabase with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTenantDatabase 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 *RDS) CreateTenantDatabaseWithContext(ctx aws.Context, input *CreateTenantDatabaseInput, opts ...request.Option) (*CreateTenantDatabaseOutput, error) { + req, out := c.CreateTenantDatabaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteBlueGreenDeployment = "DeleteBlueGreenDeployment" // DeleteBlueGreenDeploymentRequest generates a "aws/request.Request" representing the @@ -3850,15 +4071,14 @@ // DeleteDBInstance API operation for Amazon Relational Database Service. // -// The DeleteDBInstance action deletes a previously provisioned DB instance. -// When you delete a DB instance, all automated backups for that instance are -// deleted and can't be recovered. Manual DB snapshots of the DB instance to -// be deleted by DeleteDBInstance are not deleted. -// -// If you request a final DB snapshot the status of the Amazon RDS DB instance -// is deleting until the DB snapshot is created. The API action DescribeDBInstance -// is used to monitor the status of this operation. The action can't be canceled -// or reverted once submitted. +// Deletes a previously provisioned DB instance. When you delete a DB instance, +// all automated backups for that instance are deleted and can't be recovered. +// However, manual DB snapshots of the DB instance aren't deleted. +// +// If you request a final DB snapshot, the status of the Amazon RDS DB instance +// is deleting until the DB snapshot is created. This operation can't be canceled +// or reverted after it begins. To monitor the status of this operation, use +// DescribeDBInstance. // // When a DB instance is in a failure state and has a status of failed, incompatible-restore, // or incompatible-network, you can only delete it when you skip creation of @@ -3871,11 +4091,16 @@ // // - The DB instance is the only instance in the DB cluster. // -// To delete a DB instance in this case, first call the PromoteReadReplicaDBCluster -// API action to promote the DB cluster so it's no longer a read replica. After -// the promotion completes, then call the DeleteDBInstance API action to delete +// To delete a DB instance in this case, first use the PromoteReadReplicaDBCluster +// operation to promote the DB cluster so that it's no longer a read replica. +// After the promotion completes, use the DeleteDBInstance operation to delete // the final instance in the DB cluster. // +// For RDS Custom DB instances, deleting the DB instance permanently deletes +// the EC2 instance and the associated EBS volumes. Make sure that you don't +// terminate or delete these resources before you delete the DB instance. Otherwise, +// deleting the DB instance and creation of the final snapshot might fail. +// // 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. @@ -4702,6 +4927,94 @@ return out, req.Send() } +const opDeleteIntegration = "DeleteIntegration" + +// DeleteIntegrationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteIntegration 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 DeleteIntegration for more information on using the DeleteIntegration +// 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 DeleteIntegrationRequest method. +// req, resp := client.DeleteIntegrationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DeleteIntegration +func (c *RDS) DeleteIntegrationRequest(input *DeleteIntegrationInput) (req *request.Request, output *DeleteIntegrationOutput) { + op := &request.Operation{ + Name: opDeleteIntegration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteIntegrationInput{} + } + + output = &DeleteIntegrationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteIntegration API operation for Amazon Relational Database Service. +// +// Deletes a zero-ETL integration with Amazon Redshift. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation DeleteIntegration for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeIntegrationNotFoundFault "IntegrationNotFoundFault" +// The specified integration could not be found. +// +// - ErrCodeIntegrationConflictOperationFault "IntegrationConflictOperationFault" +// A conflicting conditional operation is currently in progress against this +// resource. Typically occurs when there are multiple requests being made to +// the same resource at the same time, and these requests conflict with each +// other. +// +// - ErrCodeInvalidIntegrationStateFault "InvalidIntegrationStateFault" +// The integration is in an invalid state and can't perform the requested operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DeleteIntegration +func (c *RDS) DeleteIntegration(input *DeleteIntegrationInput) (*DeleteIntegrationOutput, error) { + req, out := c.DeleteIntegrationRequest(input) + return out, req.Send() +} + +// DeleteIntegrationWithContext is the same as DeleteIntegration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteIntegration 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 *RDS) DeleteIntegrationWithContext(ctx aws.Context, input *DeleteIntegrationInput, opts ...request.Option) (*DeleteIntegrationOutput, error) { + req, out := c.DeleteIntegrationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteOptionGroup = "DeleteOptionGroup" // DeleteOptionGroupRequest generates a "aws/request.Request" representing the @@ -4785,6 +5098,94 @@ return out, req.Send() } +const opDeleteTenantDatabase = "DeleteTenantDatabase" + +// DeleteTenantDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTenantDatabase 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 DeleteTenantDatabase for more information on using the DeleteTenantDatabase +// 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 DeleteTenantDatabaseRequest method. +// req, resp := client.DeleteTenantDatabaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DeleteTenantDatabase +func (c *RDS) DeleteTenantDatabaseRequest(input *DeleteTenantDatabaseInput) (req *request.Request, output *DeleteTenantDatabaseOutput) { + op := &request.Operation{ + Name: opDeleteTenantDatabase, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteTenantDatabaseInput{} + } + + output = &DeleteTenantDatabaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteTenantDatabase API operation for Amazon Relational Database Service. +// +// Deletes a tenant database from your DB instance. This command only applies +// to RDS for Oracle container database (CDB) instances. +// +// You can't delete a tenant database when it is the only tenant in the DB instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation DeleteTenantDatabase for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" +// DBInstanceIdentifier doesn't refer to an existing DB instance. +// +// - ErrCodeTenantDatabaseNotFoundFault "TenantDatabaseNotFound" +// The specified tenant database wasn't found in the DB instance. +// +// - ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" +// The DB instance isn't in a valid state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DeleteTenantDatabase +func (c *RDS) DeleteTenantDatabase(input *DeleteTenantDatabaseInput) (*DeleteTenantDatabaseOutput, error) { + req, out := c.DeleteTenantDatabaseRequest(input) + return out, req.Send() +} + +// DeleteTenantDatabaseWithContext is the same as DeleteTenantDatabase with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTenantDatabase 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 *RDS) DeleteTenantDatabaseWithContext(ctx aws.Context, input *DeleteTenantDatabaseInput, opts ...request.Option) (*DeleteTenantDatabaseOutput, error) { + req, out := c.DeleteTenantDatabaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeregisterDBProxyTargets = "DeregisterDBProxyTargets" // DeregisterDBProxyTargetsRequest generates a "aws/request.Request" representing the @@ -5147,8 +5548,8 @@ // DescribeCertificates API operation for Amazon Relational Database Service. // -// Lists the set of CA certificates provided by Amazon RDS for this Amazon Web -// Services account. +// Lists the set of certificate authority (CA) certificates provided by Amazon +// RDS for this Amazon Web Services account. // // For more information, see Using SSL/TLS to encrypt a connection to a DB instance // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html) @@ -6378,7 +6779,7 @@ // DescribeDBEngineVersions API operation for Amazon Relational Database Service. // -// Returns a list of the available DB engines. +// Describes the properties of specific versions of DB engines. // // 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 @@ -7952,6 +8353,147 @@ return out, req.Send() } +const opDescribeDBSnapshotTenantDatabases = "DescribeDBSnapshotTenantDatabases" + +// DescribeDBSnapshotTenantDatabasesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeDBSnapshotTenantDatabases 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 DescribeDBSnapshotTenantDatabases for more information on using the DescribeDBSnapshotTenantDatabases +// 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 DescribeDBSnapshotTenantDatabasesRequest method. +// req, resp := client.DescribeDBSnapshotTenantDatabasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeDBSnapshotTenantDatabases +func (c *RDS) DescribeDBSnapshotTenantDatabasesRequest(input *DescribeDBSnapshotTenantDatabasesInput) (req *request.Request, output *DescribeDBSnapshotTenantDatabasesOutput) { + op := &request.Operation{ + Name: opDescribeDBSnapshotTenantDatabases, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"Marker"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeDBSnapshotTenantDatabasesInput{} + } + + output = &DescribeDBSnapshotTenantDatabasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeDBSnapshotTenantDatabases API operation for Amazon Relational Database Service. +// +// Describes the tenant databases that exist in a DB snapshot. This command +// only applies to RDS for Oracle DB instances in the multi-tenant configuration. +// +// You can use this command to inspect the tenant databases within a snapshot +// before restoring it. You can't directly interact with the tenant databases +// in a DB snapshot. If you restore a snapshot that was taken from DB instance +// using the multi-tenant configuration, you restore all its tenant databases. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation DescribeDBSnapshotTenantDatabases for usage and error information. +// +// Returned Error Codes: +// - ErrCodeDBSnapshotNotFoundFault "DBSnapshotNotFound" +// DBSnapshotIdentifier doesn't refer to an existing DB snapshot. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeDBSnapshotTenantDatabases +func (c *RDS) DescribeDBSnapshotTenantDatabases(input *DescribeDBSnapshotTenantDatabasesInput) (*DescribeDBSnapshotTenantDatabasesOutput, error) { + req, out := c.DescribeDBSnapshotTenantDatabasesRequest(input) + return out, req.Send() +} + +// DescribeDBSnapshotTenantDatabasesWithContext is the same as DescribeDBSnapshotTenantDatabases with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeDBSnapshotTenantDatabases 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 *RDS) DescribeDBSnapshotTenantDatabasesWithContext(ctx aws.Context, input *DescribeDBSnapshotTenantDatabasesInput, opts ...request.Option) (*DescribeDBSnapshotTenantDatabasesOutput, error) { + req, out := c.DescribeDBSnapshotTenantDatabasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeDBSnapshotTenantDatabasesPages iterates over the pages of a DescribeDBSnapshotTenantDatabases operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeDBSnapshotTenantDatabases 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 DescribeDBSnapshotTenantDatabases operation. +// pageNum := 0 +// err := client.DescribeDBSnapshotTenantDatabasesPages(params, +// func(page *rds.DescribeDBSnapshotTenantDatabasesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *RDS) DescribeDBSnapshotTenantDatabasesPages(input *DescribeDBSnapshotTenantDatabasesInput, fn func(*DescribeDBSnapshotTenantDatabasesOutput, bool) bool) error { + return c.DescribeDBSnapshotTenantDatabasesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeDBSnapshotTenantDatabasesPagesWithContext same as DescribeDBSnapshotTenantDatabasesPages 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 *RDS) DescribeDBSnapshotTenantDatabasesPagesWithContext(ctx aws.Context, input *DescribeDBSnapshotTenantDatabasesInput, fn func(*DescribeDBSnapshotTenantDatabasesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeDBSnapshotTenantDatabasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeDBSnapshotTenantDatabasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeDBSnapshotTenantDatabasesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeDBSnapshots = "DescribeDBSnapshots" // DescribeDBSnapshotsRequest generates a "aws/request.Request" representing the @@ -9068,6 +9610,141 @@ return p.Err() } +const opDescribeIntegrations = "DescribeIntegrations" + +// DescribeIntegrationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeIntegrations 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 DescribeIntegrations for more information on using the DescribeIntegrations +// 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 DescribeIntegrationsRequest method. +// req, resp := client.DescribeIntegrationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeIntegrations +func (c *RDS) DescribeIntegrationsRequest(input *DescribeIntegrationsInput) (req *request.Request, output *DescribeIntegrationsOutput) { + op := &request.Operation{ + Name: opDescribeIntegrations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"Marker"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeIntegrationsInput{} + } + + output = &DescribeIntegrationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeIntegrations API operation for Amazon Relational Database Service. +// +// Describe one or more zero-ETL integrations with Amazon Redshift. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation DescribeIntegrations for usage and error information. +// +// Returned Error Codes: +// - ErrCodeIntegrationNotFoundFault "IntegrationNotFoundFault" +// The specified integration could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeIntegrations +func (c *RDS) DescribeIntegrations(input *DescribeIntegrationsInput) (*DescribeIntegrationsOutput, error) { + req, out := c.DescribeIntegrationsRequest(input) + return out, req.Send() +} + +// DescribeIntegrationsWithContext is the same as DescribeIntegrations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeIntegrations 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 *RDS) DescribeIntegrationsWithContext(ctx aws.Context, input *DescribeIntegrationsInput, opts ...request.Option) (*DescribeIntegrationsOutput, error) { + req, out := c.DescribeIntegrationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeIntegrationsPages iterates over the pages of a DescribeIntegrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeIntegrations 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 DescribeIntegrations operation. +// pageNum := 0 +// err := client.DescribeIntegrationsPages(params, +// func(page *rds.DescribeIntegrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *RDS) DescribeIntegrationsPages(input *DescribeIntegrationsInput, fn func(*DescribeIntegrationsOutput, bool) bool) error { + return c.DescribeIntegrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeIntegrationsPagesWithContext same as DescribeIntegrationsPages 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 *RDS) DescribeIntegrationsPagesWithContext(ctx aws.Context, input *DescribeIntegrationsInput, fn func(*DescribeIntegrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeIntegrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeIntegrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeIntegrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeOptionGroupOptions = "DescribeOptionGroupOptions" // DescribeOptionGroupOptionsRequest generates a "aws/request.Request" representing the @@ -9117,7 +9794,7 @@ // DescribeOptionGroupOptions API operation for Amazon Relational Database Service. // -// Describes all available options. +// Describes all available options for the specified engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -9382,8 +10059,7 @@ // DescribeOrderableDBInstanceOptions API operation for Amazon Relational Database Service. // -// Returns a list of orderable DB instance options for the specified DB engine, -// DB engine version, and DB instance class. +// Describes the orderable DB instance options for a specified DB engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -10011,6 +10687,142 @@ return p.Err() } +const opDescribeTenantDatabases = "DescribeTenantDatabases" + +// DescribeTenantDatabasesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTenantDatabases 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 DescribeTenantDatabases for more information on using the DescribeTenantDatabases +// 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 DescribeTenantDatabasesRequest method. +// req, resp := client.DescribeTenantDatabasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeTenantDatabases +func (c *RDS) DescribeTenantDatabasesRequest(input *DescribeTenantDatabasesInput) (req *request.Request, output *DescribeTenantDatabasesOutput) { + op := &request.Operation{ + Name: opDescribeTenantDatabases, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"Marker"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeTenantDatabasesInput{} + } + + output = &DescribeTenantDatabasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeTenantDatabases API operation for Amazon Relational Database Service. +// +// Describes the tenant databases in a DB instance that uses the multi-tenant +// configuration. Only RDS for Oracle CDB instances are supported. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation DescribeTenantDatabases for usage and error information. +// +// Returned Error Codes: +// - ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" +// DBInstanceIdentifier doesn't refer to an existing DB instance. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeTenantDatabases +func (c *RDS) DescribeTenantDatabases(input *DescribeTenantDatabasesInput) (*DescribeTenantDatabasesOutput, error) { + req, out := c.DescribeTenantDatabasesRequest(input) + return out, req.Send() +} + +// DescribeTenantDatabasesWithContext is the same as DescribeTenantDatabases with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeTenantDatabases 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 *RDS) DescribeTenantDatabasesWithContext(ctx aws.Context, input *DescribeTenantDatabasesInput, opts ...request.Option) (*DescribeTenantDatabasesOutput, error) { + req, out := c.DescribeTenantDatabasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeTenantDatabasesPages iterates over the pages of a DescribeTenantDatabases operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeTenantDatabases 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 DescribeTenantDatabases operation. +// pageNum := 0 +// err := client.DescribeTenantDatabasesPages(params, +// func(page *rds.DescribeTenantDatabasesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *RDS) DescribeTenantDatabasesPages(input *DescribeTenantDatabasesInput, fn func(*DescribeTenantDatabasesOutput, bool) bool) error { + return c.DescribeTenantDatabasesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeTenantDatabasesPagesWithContext same as DescribeTenantDatabasesPages 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 *RDS) DescribeTenantDatabasesPagesWithContext(ctx aws.Context, input *DescribeTenantDatabasesInput, fn func(*DescribeTenantDatabasesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeTenantDatabasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTenantDatabasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeTenantDatabasesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeValidDBInstanceModifications = "DescribeValidDBInstanceModifications" // DescribeValidDBInstanceModificationsRequest generates a "aws/request.Request" representing the @@ -10557,6 +11369,15 @@ // - ErrCodeBlueGreenDeploymentNotFoundFault "BlueGreenDeploymentNotFoundFault" // BlueGreenDeploymentIdentifier doesn't refer to an existing blue/green deployment. // +// - ErrCodeIntegrationNotFoundFault "IntegrationNotFoundFault" +// The specified integration could not be found. +// +// - ErrCodeTenantDatabaseNotFoundFault "TenantDatabaseNotFound" +// The specified tenant database wasn't found in the DB instance. +// +// - ErrCodeDBSnapshotTenantDatabaseNotFoundFault "DBSnapshotTenantDatabaseNotFoundFault" +// The specified snapshot tenant database wasn't found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ListTagsForResource func (c *RDS) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) @@ -10840,7 +11661,7 @@ // for Aurora Serverless v1 (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.auto-scaling) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora Serverless v1 DB clusters. +// This operation only applies to Aurora Serverless v1 DB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -11087,6 +11908,9 @@ // The aurora-iopt1 storage type isn't available, because you modified the DB // cluster to use this storage type less than one month ago. // +// - ErrCodeOptionGroupNotFoundFault "OptionGroupNotFoundFault" +// The specified option group could not be found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBCluster func (c *RDS) ModifyDBCluster(input *ModifyDBClusterInput) (*ModifyDBClusterOutput, error) { req, out := c.ModifyDBClusterRequest(input) @@ -11154,7 +11978,7 @@ // // Modifies the properties of an endpoint in an Amazon Aurora DB cluster. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -11253,8 +12077,8 @@ // After you create a DB cluster parameter group, you should wait at least 5 // minutes before creating your first DB cluster that uses that DB cluster parameter // group as the default parameter group. This allows Amazon RDS to fully complete -// the create action before the parameter group is used as the default for a -// new DB cluster. This is especially important for parameters that are critical +// the create operation before the parameter group is used as the default for +// a new DB cluster. This is especially important for parameters that are critical // when creating the default database for a DB cluster, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) @@ -11546,6 +12370,10 @@ // The network type is invalid for the DB instance. Valid nework type values // are IPV4 and DUAL. // +// - ErrCodeTenantDatabaseQuotaExceededFault "TenantDatabaseQuotaExceeded" +// You attempted to create more tenant databases than are permitted in your +// Amazon Web Services account. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBInstance func (c *RDS) ModifyDBInstance(input *ModifyDBInstanceInput) (*ModifyDBInstanceOutput, error) { req, out := c.ModifyDBInstanceRequest(input) @@ -11618,8 +12446,8 @@ // After you modify a DB parameter group, you should wait at least 5 minutes // before creating your first DB instance that uses that DB parameter group // as the default parameter group. This allows Amazon RDS to fully complete -// the modify action before the parameter group is used as the default for a -// new DB instance. This is especially important for parameters that are critical +// the modify operation before the parameter group is used as the default for +// a new DB instance. This is especially important for parameters that are critical // when creating the default database for a DB instance, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) @@ -11977,7 +12805,7 @@ // be encrypted or unencrypted, but not shared or public. // // Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. -// This command doesn't apply to RDS Custom. +// This operation doesn't apply to RDS Custom or RDS for Db2. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -12492,6 +13320,97 @@ return out, req.Send() } +const opModifyTenantDatabase = "ModifyTenantDatabase" + +// ModifyTenantDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the ModifyTenantDatabase 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 ModifyTenantDatabase for more information on using the ModifyTenantDatabase +// 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 ModifyTenantDatabaseRequest method. +// req, resp := client.ModifyTenantDatabaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyTenantDatabase +func (c *RDS) ModifyTenantDatabaseRequest(input *ModifyTenantDatabaseInput) (req *request.Request, output *ModifyTenantDatabaseOutput) { + op := &request.Operation{ + Name: opModifyTenantDatabase, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ModifyTenantDatabaseInput{} + } + + output = &ModifyTenantDatabaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// ModifyTenantDatabase API operation for Amazon Relational Database Service. +// +// Modifies an existing tenant database in a DB instance. You can change the +// tenant database name or the master user password. This operation is supported +// only for RDS for Oracle CDB instances using the multi-tenant configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation ModifyTenantDatabase for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" +// DBInstanceIdentifier doesn't refer to an existing DB instance. +// +// - ErrCodeTenantDatabaseNotFoundFault "TenantDatabaseNotFound" +// The specified tenant database wasn't found in the DB instance. +// +// - ErrCodeTenantDatabaseAlreadyExistsFault "TenantDatabaseAlreadyExists" +// You attempted to either create a tenant database that already exists or modify +// a tenant database to use the name of an existing tenant database. +// +// - ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" +// The DB instance isn't in a valid state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyTenantDatabase +func (c *RDS) ModifyTenantDatabase(input *ModifyTenantDatabaseInput) (*ModifyTenantDatabaseOutput, error) { + req, out := c.ModifyTenantDatabaseRequest(input) + return out, req.Send() +} + +// ModifyTenantDatabaseWithContext is the same as ModifyTenantDatabase with the addition of +// the ability to pass a context and additional request options. +// +// See ModifyTenantDatabase 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 *RDS) ModifyTenantDatabaseWithContext(ctx aws.Context, input *ModifyTenantDatabaseInput, opts ...request.Option) (*ModifyTenantDatabaseOutput, error) { + req, out := c.ModifyTenantDatabaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPromoteReadReplica = "PromoteReadReplica" // PromoteReadReplicaRequest generates a "aws/request.Request" representing the @@ -13104,7 +14023,7 @@ // of being read-only and receiving data from a primary cluster in a different // Region. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -13493,6 +14412,15 @@ // - ErrCodeBlueGreenDeploymentNotFoundFault "BlueGreenDeploymentNotFoundFault" // BlueGreenDeploymentIdentifier doesn't refer to an existing blue/green deployment. // +// - ErrCodeIntegrationNotFoundFault "IntegrationNotFoundFault" +// The specified integration could not be found. +// +// - ErrCodeTenantDatabaseNotFoundFault "TenantDatabaseNotFound" +// The specified tenant database wasn't found in the DB instance. +// +// - ErrCodeDBSnapshotTenantDatabaseNotFoundFault "DBSnapshotTenantDatabaseNotFoundFault" +// The specified snapshot tenant database wasn't found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/RemoveTagsFromResource func (c *RDS) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) @@ -13755,16 +14683,16 @@ // in Migrating Data from MySQL by Using an Amazon S3 Bucket (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3) // in the Amazon Aurora User Guide. // -// This action only restores the DB cluster, not the DB instances for that DB -// cluster. You must invoke the CreateDBInstance action to create DB instances +// This operation only restores the DB cluster, not the DB instances for that +// DB cluster. You must invoke the CreateDBInstance operation to create DB instances // for the restored DB cluster, specifying the identifier of the restored DB // cluster in DBClusterIdentifier. You can create DB instances only after the -// RestoreDBClusterFromS3 action has completed and the DB cluster is available. +// RestoreDBClusterFromS3 operation has completed and the DB cluster is available. // // For more information on Amazon Aurora, see What is Amazon Aurora? (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora DB clusters. The source DB engine must +// This operation only applies to Aurora DB clusters. The source DB engine must // be MySQL. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -13901,11 +14829,12 @@ // configuration. If you don't specify a security group, the new DB cluster // is associated with the default security group. // -// This action only restores the DB cluster, not the DB instances for that DB -// cluster. You must invoke the CreateDBInstance action to create DB instances +// This operation only restores the DB cluster, not the DB instances for that +// DB cluster. You must invoke the CreateDBInstance operation to create DB instances // for the restored DB cluster, specifying the identifier of the restored DB // cluster in DBClusterIdentifier. You can create DB instances only after the -// RestoreDBClusterFromSnapshot action has completed and the DB cluster is available. +// RestoreDBClusterFromSnapshot operation has completed and the DB cluster is +// available. // // For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? // (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) @@ -14067,12 +14996,12 @@ // same configuration as the original DB cluster, except that the new DB cluster // is created with the default DB security group. // -// For Aurora, this action only restores the DB cluster, not the DB instances -// for that DB cluster. You must invoke the CreateDBInstance action to create +// For Aurora, this operation only restores the DB cluster, not the DB instances +// for that DB cluster. You must invoke the CreateDBInstance operation to create // DB instances for the restored DB cluster, specifying the identifier of the // restored DB cluster in DBClusterIdentifier. You can create DB instances only -// after the RestoreDBClusterToPointInTime action has completed and the DB cluster -// is available. +// after the RestoreDBClusterToPointInTime operation has completed and the DB +// cluster is available. // // For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? // (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) @@ -14230,12 +15159,12 @@ // // If you want to replace your original DB instance with the new, restored DB // instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot -// action. RDS doesn't allow two DB instances with the same name. After you +// operation. RDS doesn't allow two DB instances with the same name. After you // have renamed your original DB instance with a different identifier, then // you can pass the original name of the DB instance as the DBInstanceIdentifier -// in the call to the RestoreDBInstanceFromDBSnapshot action. The result is -// that you replace the original DB instance with the DB instance created from -// the snapshot. +// in the call to the RestoreDBInstanceFromDBSnapshot operation. The result +// is that you replace the original DB instance with the DB instance created +// from the snapshot. // // If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier // must be the ARN of the shared DB snapshot. @@ -14327,6 +15256,10 @@ // - ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" // DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. // +// - ErrCodeTenantDatabaseQuotaExceededFault "TenantDatabaseQuotaExceeded" +// You attempted to create more tenant databases than are permitted in your +// Amazon Web Services account. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/RestoreDBInstanceFromDBSnapshot func (c *RDS) RestoreDBInstanceFromDBSnapshot(input *RestoreDBInstanceFromDBSnapshotInput) (*RestoreDBInstanceFromDBSnapshotOutput, error) { req, out := c.RestoreDBInstanceFromDBSnapshotRequest(input) @@ -14400,7 +15333,7 @@ // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html) // in the Amazon RDS User Guide. // -// This command doesn't apply to RDS Custom. +// This operation doesn't apply to RDS Custom. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -14554,7 +15487,7 @@ // with mirroring; in this case, the instance becomes a mirrored deployment // and not a single-AZ deployment. // -// This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, +// This operation doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, // use RestoreDBClusterToPointInTime. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -14645,6 +15578,10 @@ // The network type is invalid for the DB instance. Valid nework type values // are IPV4 and DUAL. // +// - ErrCodeTenantDatabaseQuotaExceededFault "TenantDatabaseQuotaExceeded" +// You attempted to create more tenant databases than are permitted in your +// Amazon Web Services account. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/RestoreDBInstanceToPointInTime func (c *RDS) RestoreDBInstanceToPointInTime(input *RestoreDBInstanceToPointInTimeInput) (*RestoreDBInstanceToPointInTimeOutput, error) { req, out := c.RestoreDBInstanceToPointInTimeRequest(input) @@ -14910,12 +15847,12 @@ // StartDBCluster API operation for Amazon Relational Database Service. // // Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web -// Services console, the stop-db-cluster CLI command, or the StopDBCluster action. +// Services console, the stop-db-cluster CLI command, or the StopDBCluster operation. // // For more information, see Stopping and Starting an Aurora Cluster (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-cluster-stop-start.html) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -15001,7 +15938,7 @@ // StartDBInstance API operation for Amazon Relational Database Service. // // Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services -// console, the stop-db-instance CLI command, or the StopDBInstance action. +// console, the stop-db-instance CLI command, or the StopDBInstance operation. // // For more information, see Starting an Amazon RDS DB instance That Was Previously // Stopped (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StartInstance.html) @@ -15228,7 +16165,7 @@ // Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided // IAM role must have access to the S3 bucket. // -// You can't export snapshot data from RDS Custom DB instances. +// You can't export snapshot data from Db2 or RDS Custom DB instances. // // You can't export cluster data from Multi-AZ DB clusters. // @@ -15351,7 +16288,7 @@ // // Stops a database activity stream that was started using the Amazon Web Services // console, the start-activity-stream CLI command, or the StartActivityStream -// action. +// operation. // // For more information, see Monitoring Amazon Aurora with Database Activity // Streams (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/DBActivityStreams.html) @@ -15456,7 +16393,7 @@ // For more information, see Stopping and Starting an Aurora Cluster (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-cluster-stop-start.html) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -16498,7 +17435,7 @@ // The pending maintenance action to apply to this resource. // - // Valid values: system-update, db-upgrade, hardware-maintenance, ca-certificate-rotation + // Valid Values: system-update, db-upgrade, hardware-maintenance, ca-certificate-rotation // // ApplyAction is a required field ApplyAction *string `type:"string" required:"true"` @@ -16506,7 +17443,7 @@ // A value that specifies the type of opt-in request, or undoes an opt-in request. // An opt-in request of type immediate can't be undone. // - // Valid values: + // Valid Values: // // * immediate - Apply the maintenance action immediately. // @@ -16863,16 +17800,14 @@ // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // A value that indicates whether to force the DB cluster to backtrack when - // binary logging is enabled. Otherwise, an error occurs when binary logging - // is enabled. + // Specifies whether to force the DB cluster to backtrack when binary logging + // is enabled. Otherwise, an error occurs when binary logging is enabled. Force *bool `type:"boolean"` - // A value that indicates whether to backtrack the DB cluster to the earliest - // possible backtrack time when BacktrackTo is set to a timestamp earlier than - // the earliest backtrack time. When this parameter is disabled and BacktrackTo - // is set to a timestamp earlier than the earliest backtrack time, an error - // occurs. + // Specifies whether to backtrack the DB cluster to the earliest possible backtrack + // time when BacktrackTo is set to a timestamp earlier than the earliest backtrack + // time. When this parameter is disabled and BacktrackTo is set to a timestamp + // earlier than the earliest backtrack time, an error occurs. UseEarliestTimeOnPointInTimeUnavailable *bool `type:"boolean"` } @@ -17287,11 +18222,13 @@ // Contains the details of a snapshot or cluster export to Amazon S3. // -// This data type is used as a response element in the DescribeExportTasks action. +// This data type is used as a response element in the DescribeExportTasks operation. type CancelExportTaskOutput struct { _ struct{} `type:"structure"` - // The data exported from the snapshot or cluster. Valid values are the following: + // The data exported from the snapshot or cluster. + // + // Valid Values: // // * database - Export all the data from a specified database. // @@ -17327,14 +18264,14 @@ // The progress of the snapshot or cluster export task as a percentage. PercentProgress *int64 `type:"integer"` - // The Amazon S3 bucket that the snapshot or cluster is exported to. + // The Amazon S3 bucket where the snapshot or cluster is exported to. S3Bucket *string `type:"string"` // The Amazon S3 bucket prefix that is the file name and path of the exported // data. S3Prefix *string `type:"string"` - // The time that the snapshot was created. + // The time when the snapshot was created. SnapshotTime *time.Time `type:"timestamp"` // The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon @@ -17359,10 +18296,10 @@ // * STARTING Status *string `type:"string"` - // The time that the snapshot or cluster export task ended. + // The time when the snapshot or cluster export task ended. TaskEndTime *time.Time `type:"timestamp"` - // The time that the snapshot or cluster export task started. + // The time when the snapshot or cluster export task started. TaskStartTime *time.Time `type:"timestamp"` // The total amount of data exported, in gigabytes. @@ -17505,7 +18442,7 @@ // The type of the certificate. CertificateType *string `type:"string"` - // Whether there is an override for the default certificate identifier. + // Indicates whether there is an override for the default certificate identifier. CustomerOverride *bool `type:"boolean"` // If there is an override for the default certificate identifier, when the @@ -17751,8 +18688,8 @@ // The database engine version. EngineVersion *string `type:"string"` - // A value that indicates whether mapping of Amazon Web Services Identity and - // Access Management (IAM) accounts to database accounts is enabled. + // Indicates whether mapping of Amazon Web Services Identity and Access Management + // (IAM) accounts to database accounts is enabled. IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` // The Provisioned IOPS (I/O operations per second) value. This setting is only @@ -17766,6 +18703,9 @@ // these log types are in the process of being activated or deactivated. PendingCloudwatchLogsExports *PendingCloudwatchLogsExports `type:"structure"` + // Reserved for future use. + RdsCustomClusterConfiguration *RdsCustomClusterConfiguration `type:"structure"` + // The storage type for the DB cluster. StorageType *string `type:"string"` } @@ -17836,6 +18776,12 @@ return s } +// SetRdsCustomClusterConfiguration sets the RdsCustomClusterConfiguration field's value. +func (s *ClusterPendingModifiedValues) SetRdsCustomClusterConfiguration(v *RdsCustomClusterConfiguration) *ClusterPendingModifiedValues { + s.RdsCustomClusterConfiguration = v + return s +} + // SetStorageType sets the StorageType field's value. func (s *ClusterPendingModifiedValues) SetStorageType(v string) *ClusterPendingModifiedValues { s.StorageType = &v @@ -17848,12 +18794,15 @@ _ struct{} `type:"structure"` // The number of seconds for a proxy to wait for a connection to become available - // in the connection pool. Only applies when the proxy has opened its maximum - // number of connections and all connections are busy with client sessions. + // in the connection pool. This setting only applies when the proxy has opened + // its maximum number of connections and all connections are busy with client + // sessions. For an unlimited wait time, specify 0. // // Default: 120 // - // Constraints: between 1 and 3600, or 0 representing unlimited + // Constraints: + // + // * Must be between 0 and 3600. ConnectionBorrowTimeout *int64 `type:"integer"` // One or more SQL statements for the proxy to run when opening each new database @@ -17874,13 +18823,15 @@ // // Default: 10 for RDS for Microsoft SQL Server, and 100 for all other engines // - // Constraints: Must be between 1 and 100. + // Constraints: + // + // * Must be between 1 and 100. MaxConnectionsPercent *int64 `type:"integer"` - // Controls how actively the proxy closes idle database connections in the connection - // pool. The value is expressed as a percentage of the max_connections setting - // for the RDS DB instance or Aurora DB cluster used by the target group. With - // a high value, the proxy leaves a high percentage of idle database connections + // A value that controls how actively the proxy closes idle database connections + // in the connection pool. The value is expressed as a percentage of the max_connections + // setting for the RDS DB instance or Aurora DB cluster used by the target group. + // With a high value, the proxy leaves a high percentage of idle database connections // open. A low value causes the proxy to close more idle connections and return // them to the database. // @@ -17892,7 +18843,9 @@ // Server, MaxIdleConnectionsPercent is 5, and for all other engines, the default // is 50. // - // Constraints: Must be between 0 and the value of MaxConnectionsPercent. + // Constraints: + // + // * Must be between 0 and the value of MaxConnectionsPercent. MaxIdleConnectionsPercent *int64 `type:"integer"` // Each item in the list represents a class of SQL operations that normally @@ -18180,8 +19133,8 @@ type CopyDBClusterSnapshotInput struct { _ struct{} `type:"structure"` - // A value that indicates whether to copy all tags from the source DB cluster - // snapshot to the target DB cluster snapshot. By default, tags are not copied. + // Specifies whether to copy all tags from the source DB cluster snapshot to + // the target DB cluster snapshot. By default, tags are not copied. CopyTags *bool `type:"boolean"` // DestinationRegion is used for presigning the request to a given region. @@ -18558,14 +19511,14 @@ type CopyDBSnapshotInput struct { _ struct{} `type:"structure"` - // A value that indicates whether to copy the DB option group associated with - // the source DB snapshot to the target Amazon Web Services account and associate - // with the target DB snapshot. The associated option group can be copied only - // with cross-account snapshot copy calls. + // Specifies whether to copy the DB option group associated with the source + // DB snapshot to the target Amazon Web Services account and associate with + // the target DB snapshot. The associated option group can be copied only with + // cross-account snapshot copy calls. CopyOptionGroup *bool `type:"boolean"` - // A value that indicates whether to copy all tags from the source DB snapshot - // to the target DB snapshot. By default, tags aren't copied. + // Specifies whether to copy all tags from the source DB snapshot to the target + // DB snapshot. By default, tags aren't copied. CopyTags *bool `type:"boolean"` // DestinationRegion is used for presigning the request to a given region. @@ -19013,6 +19966,9 @@ // from the one associated with the source DB cluster. TargetDBClusterParameterGroupName *string `min:"1" type:"string"` + // Specify the DB instance class for the databases in the green environment. + TargetDBInstanceClass *string `min:"5" type:"string"` + // The DB parameter group associated with the DB instance in the green environment. // // To test parameter changes, specify a DB parameter group that is different @@ -19023,6 +19979,12 @@ // // Specify the engine version to upgrade to in the green environment. TargetEngineVersion *string `min:"1" type:"string"` + + // Whether to upgrade the storage file system configuration on the green database. + // This option migrates the green DB instance from the older 32-bit file system + // to the preferred configuration. For more information, see Upgrading the storage + // file system for a DB instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.UpgradeFileSystem). + UpgradeTargetStorageConfig *bool `type:"boolean"` } // String returns the string representation. @@ -19061,6 +20023,9 @@ if s.TargetDBClusterParameterGroupName != nil && len(*s.TargetDBClusterParameterGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetDBClusterParameterGroupName", 1)) } + if s.TargetDBInstanceClass != nil && len(*s.TargetDBInstanceClass) < 5 { + invalidParams.Add(request.NewErrParamMinLen("TargetDBInstanceClass", 5)) + } if s.TargetDBParameterGroupName != nil && len(*s.TargetDBParameterGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetDBParameterGroupName", 1)) } @@ -19098,6 +20063,12 @@ return s } +// SetTargetDBInstanceClass sets the TargetDBInstanceClass field's value. +func (s *CreateBlueGreenDeploymentInput) SetTargetDBInstanceClass(v string) *CreateBlueGreenDeploymentInput { + s.TargetDBInstanceClass = &v + return s +} + // SetTargetDBParameterGroupName sets the TargetDBParameterGroupName field's value. func (s *CreateBlueGreenDeploymentInput) SetTargetDBParameterGroupName(v string) *CreateBlueGreenDeploymentInput { s.TargetDBParameterGroupName = &v @@ -19110,6 +20081,12 @@ return s } +// SetUpgradeTargetStorageConfig sets the UpgradeTargetStorageConfig field's value. +func (s *CreateBlueGreenDeploymentInput) SetUpgradeTargetStorageConfig(v bool) *CreateBlueGreenDeploymentInput { + s.UpgradeTargetStorageConfig = &v + return s +} + type CreateBlueGreenDeploymentOutput struct { _ struct{} `type:"structure"` @@ -19229,14 +20206,18 @@ // in the Amazon RDS User Guide. Manifest *string `min:"1" type:"string"` - // Reserved for future use. + // The ARN of a CEV to use as a source for creating a new CEV. You can specify + // a different Amazon Machine Imagine (AMI) by using either Source or UseAwsProvidedLatestImage. + // You can't specify a different JSON manifest when you specify SourceCustomDbEngineVersionIdentifier. SourceCustomDbEngineVersionIdentifier *string `min:"1" type:"string"` // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) // in the Amazon RDS User Guide. Tags []*Tag `locationNameList:"Tag" type:"list"` - // Reserved for future use. + // Specifies whether to use the latest service-provided Amazon Machine Image + // (AMI) for the CEV. If you specify UseAwsProvidedLatestImage, you can't also + // specify ImageId. UseAwsProvidedLatestImage *bool `type:"boolean"` } @@ -19475,31 +20456,34 @@ // of the CreateDBInstance action. SupportedTimezones []*Timezone `locationNameList:"Timezone" type:"list"` - // A value that indicates whether the engine version supports Babelfish for - // Aurora PostgreSQL. + // Indicates whether the engine version supports Babelfish for Aurora PostgreSQL. SupportsBabelfish *bool `type:"boolean"` - // A value that indicates whether the engine version supports rotating the server - // certificate without rebooting the DB instance. + // Indicates whether the engine version supports rotating the server certificate + // without rebooting the DB instance. SupportsCertificateRotationWithoutRestart *bool `type:"boolean"` - // A value that indicates whether you can use Aurora global databases with a - // specific DB engine version. + // Indicates whether you can use Aurora global databases with a specific DB + // engine version. SupportsGlobalDatabases *bool `type:"boolean"` - // A value that indicates whether the DB engine version supports forwarding - // write operations from reader DB instances to the writer DB instance in the - // DB cluster. By default, write operations aren't allowed on reader DB instances. + // Indicates whether the DB engine version supports zero-ETL integrations with + // Amazon Redshift. + SupportsIntegrations *bool `type:"boolean"` + + // Indicates whether the DB engine version supports forwarding write operations + // from reader DB instances to the writer DB instance in the DB cluster. By + // default, write operations aren't allowed on reader DB instances. // // Valid for: Aurora DB clusters only SupportsLocalWriteForwarding *bool `type:"boolean"` - // A value that indicates whether the engine version supports exporting the - // log types specified by ExportableLogTypes to CloudWatch Logs. + // Indicates whether the engine version supports exporting the log types specified + // by ExportableLogTypes to CloudWatch Logs. SupportsLogExportsToCloudwatchLogs *bool `type:"boolean"` - // A value that indicates whether you can use Aurora parallel query with a specific - // DB engine version. + // Indicates whether you can use Aurora parallel query with a specific DB engine + // version. SupportsParallelQuery *bool `type:"boolean"` // Indicates whether the database engine version supports read replicas. @@ -19688,6 +20672,12 @@ return s } +// SetSupportsIntegrations sets the SupportsIntegrations field's value. +func (s *CreateCustomDBEngineVersionOutput) SetSupportsIntegrations(v bool) *CreateCustomDBEngineVersionOutput { + s.SupportsIntegrations = &v + return s +} + // SetSupportsLocalWriteForwarding sets the SupportsLocalWriteForwarding field's value. func (s *CreateCustomDBEngineVersionOutput) SetSupportsLocalWriteForwarding(v bool) *CreateCustomDBEngineVersionOutput { s.SupportsLocalWriteForwarding = &v @@ -20590,6 +21580,9 @@ // to it, the DB cluster is public. PubliclyAccessible *bool `type:"boolean"` + // Reserved for future use. + RdsCustomClusterConfiguration *RdsCustomClusterConfiguration `type:"structure"` + // The Amazon Resource Name (ARN) of the source DB instance or DB cluster if // this DB cluster is created as a read replica. // @@ -20958,6 +21951,12 @@ return s } +// SetRdsCustomClusterConfiguration sets the RdsCustomClusterConfiguration field's value. +func (s *CreateDBClusterInput) SetRdsCustomClusterConfiguration(v *RdsCustomClusterConfiguration) *CreateDBClusterInput { + s.RdsCustomClusterConfiguration = v + return s +} + // SetReplicationSourceIdentifier sets the ReplicationSourceIdentifier field's value. func (s *CreateDBClusterInput) SetReplicationSourceIdentifier(v string) *CreateDBClusterInput { s.ReplicationSourceIdentifier = &v @@ -21361,6 +22360,15 @@ // * Provisioned IOPS storage (io1): Must be an integer from 40 to 65536 // for RDS Custom for Oracle, 16384 for RDS Custom for SQL Server. // + // RDS for Db2 + // + // Constraints to the amount of storage for each storage type are the following: + // + // * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 + // to 64000. + // + // * Provisioned IOPS storage (io1): Must be an integer from 100 to 64000. + // // RDS for MariaDB // // Constraints to the amount of storage for each storage type are the following: @@ -21473,7 +22481,7 @@ // The location for storing automated backups and manual snapshots. // - // Valie Values: + // Valid Values: // // * outposts (Amazon Web Services Outposts) // @@ -21571,7 +22579,55 @@ // The meaning of this parameter differs according to the database engine you // use. // - // MySQL + // Amazon Aurora MySQL + // + // The name of the database to create when the primary DB instance of the Aurora + // MySQL DB cluster is created. If this parameter isn't specified for an Aurora + // MySQL DB cluster, no database is created in the DB cluster. + // + // Constraints: + // + // * Must contain 1 to 64 alphanumeric characters. + // + // * Can't be a word reserved by the database engine. + // + // Amazon Aurora PostgreSQL + // + // The name of the database to create when the primary DB instance of the Aurora + // PostgreSQL DB cluster is created. If this parameter isn't specified for an + // Aurora PostgreSQL DB cluster, a database named postgres is created in the + // DB cluster. + // + // Constraints: + // + // * It must contain 1 to 63 alphanumeric characters. + // + // * Must begin with a letter. Subsequent characters can be letters, underscores, + // or digits (0 to 9). + // + // * Can't be a word reserved by the database engine. + // + // Amazon RDS Custom for Oracle + // + // The Oracle System ID (SID) of the created RDS Custom DB instance. If you + // don't specify a value, the default value is ORCL for non-CDBs and RDSCDB + // for CDBs. + // + // Default: ORCL + // + // Constraints: + // + // * Must contain 1 to 8 alphanumeric characters. + // + // * Must contain a letter. + // + // * Can't be a word reserved by the database engine. + // + // Amazon RDS Custom for SQL Server + // + // Not applicable. Must be null. + // + // RDS for Db2 // // The name of the database to create when the DB instance is created. If this // parameter isn't specified, no database is created in the DB instance. @@ -21583,9 +22639,9 @@ // * Must begin with a letter. Subsequent characters can be letters, underscores, // or digits (0-9). // - // * Can't be a word reserved by the specified database engine + // * Can't be a word reserved by the specified database engine. // - // MariaDB + // RDS for MariaDB // // The name of the database to create when the DB instance is created. If this // parameter isn't specified, no database is created in the DB instance. @@ -21597,24 +22653,23 @@ // * Must begin with a letter. Subsequent characters can be letters, underscores, // or digits (0-9). // - // * Can't be a word reserved by the specified database engine + // * Can't be a word reserved by the specified database engine. // - // PostgreSQL + // RDS for MySQL // // The name of the database to create when the DB instance is created. If this - // parameter isn't specified, a database named postgres is created in the DB - // instance. + // parameter isn't specified, no database is created in the DB instance. // // Constraints: // - // * Must contain 1 to 63 letters, numbers, or underscores. + // * Must contain 1 to 64 letters or numbers. // // * Must begin with a letter. Subsequent characters can be letters, underscores, // or digits (0-9). // - // * Can't be a word reserved by the specified database engine + // * Can't be a word reserved by the specified database engine. // - // Oracle + // RDS for Oracle // // The Oracle System ID (SID) of the created DB instance. If you don't specify // a value, the default value is ORCL. You can't specify the string null, or @@ -21624,59 +22679,26 @@ // // Constraints: // - // * Can't be longer than 8 characters - // - // Amazon RDS Custom for Oracle + // * Can't be longer than 8 characters. // - // The Oracle System ID (SID) of the created RDS Custom DB instance. If you - // don't specify a value, the default value is ORCL for non-CDBs and RDSCDB - // for CDBs. + // RDS for PostgreSQL // - // Default: ORCL + // The name of the database to create when the DB instance is created. If this + // parameter isn't specified, a database named postgres is created in the DB + // instance. // // Constraints: // - // * It must contain 1 to 8 alphanumeric characters. - // - // * It must contain a letter. - // - // * It can't be a word reserved by the database engine. + // * Must contain 1 to 63 letters, numbers, or underscores. // - // Amazon RDS Custom for SQL Server + // * Must begin with a letter. Subsequent characters can be letters, underscores, + // or digits (0-9). // - // Not applicable. Must be null. + // * Can't be a word reserved by the specified database engine. // - // SQL Server + // RDS for SQL Server // // Not applicable. Must be null. - // - // Amazon Aurora MySQL - // - // The name of the database to create when the primary DB instance of the Aurora - // MySQL DB cluster is created. If this parameter isn't specified for an Aurora - // MySQL DB cluster, no database is created in the DB cluster. - // - // Constraints: - // - // * It must contain 1 to 64 alphanumeric characters. - // - // * It can't be a word reserved by the database engine. - // - // Amazon Aurora PostgreSQL - // - // The name of the database to create when the primary DB instance of the Aurora - // PostgreSQL DB cluster is created. If this parameter isn't specified for an - // Aurora PostgreSQL DB cluster, a database named postgres is created in the - // DB cluster. - // - // Constraints: - // - // * It must contain 1 to 63 alphanumeric characters. - // - // * It must begin with a letter. Subsequent characters can be letters, underscores, - // or digits (0 to 9). - // - // * It can't be a word reserved by the database engine. DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. If @@ -21718,6 +22740,9 @@ // to RDSCDB. The Oracle SID is also the name of your CDB. DBSystemId *string `type:"string"` + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled. + DedicatedLogVolume *bool `type:"boolean"` + // Specifies whether the DB instance has deletion protection enabled. The database // can't be deleted when deletion protection is enabled. By default, deletion // protection isn't enabled. For more information, see Deleting a DB Instance @@ -21730,8 +22755,8 @@ DeletionProtection *bool `type:"boolean"` // The Active Directory directory ID to create the DB instance in. Currently, - // only Microsoft SQL Server, MySQL, Oracle, and PostgreSQL DB instances can - // be created in an Active Directory Domain. + // you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL + // DB instances in an Active Directory Domain. // // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. @@ -21790,9 +22815,8 @@ // Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain DomainOu *string `type:"string"` - // The list of log types that need to be enabled for exporting to CloudWatch - // Logs. For more information, see Publishing Database Logs to Amazon CloudWatch - // Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) + // The list of log types to enable for exporting to CloudWatch Logs. For more + // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) // in the Amazon RDS User Guide. // // This setting doesn't apply to the following DB instances: @@ -21803,6 +22827,8 @@ // // The following values are valid for each DB engine: // + // * RDS for Db2 - diag.log | notify.log + // // * RDS for MariaDB - audit | error | general | slowquery // // * RDS for Microsoft SQL Server - agent | error @@ -21873,6 +22899,10 @@ // // * custom-sqlserver-web (for RDS Custom for SQL Server DB instances) // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -21922,6 +22952,11 @@ // See RDS Custom for SQL Server general requirements (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-reqs-limits-MS.html) // in the Amazon RDS User Guide. // + // RDS for Db2 + // + // For information, see Db2 on Amazon RDS versions (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Db2.html#Db2.Concepts.VersionMgmt) + // in the Amazon RDS User Guide. + // // RDS for MariaDB // // For information, see MariaDB on Amazon RDS versions (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html#MariaDB.Concepts.VersionMgmt) @@ -21958,8 +22993,8 @@ // // Constraints: // - // * For RDS for MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple - // between .5 and 50 of the storage amount for the DB instance. + // * For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a + // multiple between .5 and 50 of the storage amount for the DB instance. // // * For RDS for SQL Server - Must be a multiple between 1 and 50 of the // storage amount for the DB instance. @@ -21992,6 +23027,8 @@ // // Valid Values: // + // * RDS for Db2 - bring-your-own-license + // // * RDS for MariaDB - general-public-license // // * RDS for Microsoft SQL Server - license-included @@ -22025,10 +23062,14 @@ // // * Can't be specified if ManageMasterUserPassword is turned on. // - // * Can include any printable ASCII character except "/", """, or "@". + // * Can include any printable ASCII character except "/", """, or "@". For + // RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) + // character. // // Length Constraints: // + // * RDS for Db2 - Must contain from 8 to 255 characters. + // // * RDS for MariaDB - Must contain from 8 to 41 characters. // // * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. @@ -22128,6 +23169,21 @@ // * RDS Custom MultiAZ *bool `type:"boolean"` + // Specifies whether to use the multi-tenant configuration or the single-tenant + // configuration (default). This parameter only applies to RDS for Oracle container + // database (CDB) engines. + // + // Note the following restrictions: + // + // * The DB engine that you specify in the request must support the multi-tenant + // configuration. If you attempt to enable the multi-tenant configuration + // on a DB engine that doesn't support it, the request fails. + // + // * If you specify the multi-tenant configuration when you create your DB + // instance, you can't later modify this DB instance to use the single-tenant + // configuration. + MultiTenant *bool `type:"boolean"` + // The name of the NCHAR character set for the Oracle DB instance. // // This setting doesn't apply to RDS Custom DB instances. @@ -22196,6 +23252,8 @@ // // Default: // + // * RDS for Db2 - 50000 + // // * RDS for MariaDB - 3306 // // * RDS for Microsoft SQL Server - 1433 @@ -22500,6 +23558,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *CreateDBInstanceInput) SetDedicatedLogVolume(v bool) *CreateDBInstanceInput { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *CreateDBInstanceInput) SetDeletionProtection(v bool) *CreateDBInstanceInput { s.DeletionProtection = &v @@ -22644,6 +23708,12 @@ return s } +// SetMultiTenant sets the MultiTenant field's value. +func (s *CreateDBInstanceInput) SetMultiTenant(v bool) *CreateDBInstanceInput { + s.MultiTenant = &v + return s +} + // SetNcharCharacterSetName sets the NcharCharacterSetName field's value. func (s *CreateDBInstanceInput) SetNcharCharacterSetName(v string) *CreateDBInstanceInput { s.NcharCharacterSetName = &v @@ -22805,12 +23875,12 @@ // growth. AllocatedStorage *int64 `type:"integer"` - // A value that indicates whether minor engine upgrades are applied automatically - // to the read replica during the maintenance window. + // Specifies whether to automatically apply minor engine upgrades to the read + // replica during the maintenance window. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. // - // Default: Inherits from the source DB instance + // Default: Inherits the value from the source DB instance. AutoMinorVersionUpgrade *bool `type:"boolean"` // The Availability Zone (AZ) where the read replica will be created. @@ -22821,8 +23891,8 @@ // Example: us-east-1d AvailabilityZone *string `type:"string"` - // A value that indicates whether to copy all tags from the read replica to - // snapshots of the read replica. By default, tags are not copied. + // Specifies whether to copy all tags from the read replica to snapshots of + // the read replica. By default, tags aren't copied. CopyTagsToSnapshot *bool `type:"boolean"` // The instance profile associated with the underlying Amazon EC2 instance of @@ -22840,7 +23910,7 @@ // and your VPC (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-setup-orcl.html#custom-setup-orcl.iam-vpc) // in the Amazon RDS User Guide. // - // This setting is required for RDS Custom. + // This setting is required for RDS Custom DB instances. CustomIamInstanceProfile *string `type:"string"` // The compute and memory capacity of the read replica, for example db.m4.large. @@ -22849,7 +23919,7 @@ // availability for your engine, see DB Instance Class (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) // in the Amazon RDS User Guide. // - // Default: Inherits from the source DB instance. + // Default: Inherits the value from the source DB instance. DBInstanceClass *string `type:"string"` // The DB instance identifier of the read replica. This identifier is the unique @@ -22861,36 +23931,38 @@ // The name of the DB parameter group to associate with this DB instance. // - // If you do not specify a value for DBParameterGroupName, then Amazon RDS uses - // the DBParameterGroup of source DB instance for a same Region read replica, + // If you don't specify a value for DBParameterGroupName, then Amazon RDS uses + // the DBParameterGroup of the source DB instance for a same Region read replica, // or the default DBParameterGroup for the specified DB engine for a cross-Region // read replica. // // Specifying a parameter group for this operation is only supported for MySQL - // and Oracle DB instances. It isn't supported for RDS Custom. + // DB instances for cross-Region read replicas and for Oracle DB instances. + // It isn't supported for MySQL DB instances for same Region read replicas or + // for RDS Custom. // // Constraints: // // * Must be 1 to 255 letters, numbers, or hyphens. // - // * First character must be a letter + // * First character must be a letter. // - // * Can't end with a hyphen or contain two consecutive hyphens + // * Can't end with a hyphen or contain two consecutive hyphens. DBParameterGroupName *string `type:"string"` - // Specifies a DB subnet group for the DB instance. The new DB instance is created - // in the VPC associated with the DB subnet group. If no DB subnet group is - // specified, then the new DB instance isn't created in a VPC. + // A DB subnet group for the DB instance. The new DB instance is created in + // the VPC associated with the DB subnet group. If no DB subnet group is specified, + // then the new DB instance isn't created in a VPC. // // Constraints: // - // * If supplied, must match the name of an existing DBSubnetGroup. + // * If supplied, must match the name of an existing DB subnet group. // // * The specified DB subnet group must be in the same Amazon Web Services // Region in which the operation is running. // // * All read replicas in one Amazon Web Services Region that are created - // from the same source DB instance must either:> Specify DB subnet groups + // from the same source DB instance must either: Specify DB subnet groups // from the same VPC. All these read replicas are created in the same VPC. // Not specify a DB subnet group. All these read replicas are created outside // of any VPC. @@ -22898,8 +23970,11 @@ // Example: mydbsubnetgroup DBSubnetGroupName *string `type:"string"` - // A value that indicates whether the DB instance has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled. + DedicatedLogVolume *bool `type:"boolean"` + + // Specifies whether to enable deletion protection for the DB instance. The + // database can't be deleted when deletion protection is enabled. By default, // deletion protection isn't enabled. For more information, see Deleting a DB // Instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). DeletionProtection *bool `type:"boolean"` @@ -22914,7 +23989,7 @@ // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. Domain *string `type:"string"` // The ARN for the Secrets Manager secret with the credentials for the user @@ -22944,10 +24019,9 @@ // Example: mymanagedADtest.mymanagedAD.mydomain DomainFqdn *string `type:"string"` - // The name of the IAM role to be used when making API calls to the Directory - // Service. + // The name of the IAM role to use when making API calls to the Directory Service. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. DomainIAMRoleName *string `type:"string"` // The Active Directory organizational unit for your DB instance to join. @@ -22966,11 +24040,11 @@ // see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) // in the Amazon RDS User Guide. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable a customer-owned IP address (CoIP) - // for an RDS on Outposts read replica. + // Specifies whether to enable a customer-owned IP address (CoIP) for an RDS + // on Outposts read replica. // // A CoIP provides local or external connectivity to resources in your Outpost // subnets through your on-premises network. For some use cases, a CoIP can @@ -22985,28 +24059,27 @@ // in the Amazon Web Services Outposts User Guide. EnableCustomerOwnedIp *bool `type:"boolean"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // isn't enabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping isn't + // enabled. // // For more information about IAM database authentication, see IAM Database // Authentication for MySQL and PostgreSQL (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html) // in the Amazon RDS User Guide. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. EnableIAMDatabaseAuthentication *bool `type:"boolean"` - // A value that indicates whether to enable Performance Insights for the read - // replica. + // Specifies whether to enable Performance Insights for the read replica. // // For more information, see Using Amazon Performance Insights (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) // in the Amazon RDS User Guide. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. EnablePerformanceInsights *bool `type:"boolean"` - // The amount of Provisioned IOPS (input/output operations per second) to be - // initially allocated for the DB instance. + // The amount of Provisioned IOPS (input/output operations per second) to initially + // allocate for the DB instance. Iops *int64 `type:"integer"` // The Amazon Web Services KMS key identifier for an encrypted read replica. @@ -23042,15 +24115,17 @@ MaxAllocatedStorage *int64 `type:"integer"` // The interval, in seconds, between points when Enhanced Monitoring metrics - // are collected for the read replica. To disable collecting Enhanced Monitoring + // are collected for the read replica. To disable collection of Enhanced Monitoring // metrics, specify 0. The default is 0. // - // If MonitoringRoleArn is specified, then you must also set MonitoringInterval - // to a value other than 0. + // If MonitoringRoleArn is specified, then you must set MonitoringInterval to + // a value other than 0. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. // // Valid Values: 0, 1, 5, 10, 15, 30, 60 + // + // Default: 0 MonitoringInterval *int64 `type:"integer"` // The ARN for the IAM role that permits RDS to send enhanced monitoring metrics @@ -23062,22 +24137,22 @@ // If MonitoringInterval is set to a value other than 0, then you must supply // a MonitoringRoleArn value. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. MonitoringRoleArn *string `type:"string"` - // A value that indicates whether the read replica is in a Multi-AZ deployment. + // Specifies whether the read replica is in a Multi-AZ deployment. // // You can create a read replica as a Multi-AZ DB instance. RDS creates a standby // of your replica in another Availability Zone for failover support for the // replica. Creating your read replica as a Multi-AZ DB instance is independent // of whether the source is a Multi-AZ DB instance or a Multi-AZ DB cluster. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. MultiAZ *bool `type:"boolean"` // The network type of the DB instance. // - // Valid values: + // Valid Values: // // * IPV4 // @@ -23091,12 +24166,12 @@ // in the Amazon RDS User Guide. NetworkType *string `type:"string"` - // The option group the DB instance is associated with. If omitted, the option - // group associated with the source instance or cluster is used. + // The option group to associate the DB instance with. If not specified, RDS + // uses the option group associated with the source DB instance or cluster. // // For SQL Server, you must use the option group associated with the source. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. OptionGroupName *string `type:"string"` // The Amazon Web Services KMS key identifier for encryption of Performance @@ -23110,39 +24185,33 @@ // Web Services account. Your Amazon Web Services account has a different default // KMS key for each Amazon Web Services Region. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. PerformanceInsightsKMSKeyId *string `type:"string"` - // The number of days to retain Performance Insights data. The default is 7 - // days. The following values are valid: - // - // * 7 - // - // * month * 31, where month is a number of months from 1-23 - // - // * 731 + // The number of days to retain Performance Insights data. // - // For example, the following values are valid: + // This setting doesn't apply to RDS Custom DB instances. // - // * 93 (3 months * 31) + // Valid Values: // - // * 341 (11 months * 31) + // * 7 // - // * 589 (19 months * 31) + // * month * 31, where month is a number of months from 1-23. Examples: 93 + // (3 months * 31), 341 (11 months * 31), 589 (19 months * 31) // // * 731 // - // If you specify a retention period such as 94, which isn't a valid value, - // RDS issues an error. + // Default: 7 days // - // This setting doesn't apply to RDS Custom. + // If you specify a retention period that isn't valid, such as 94, Amazon RDS + // returns an error. PerformanceInsightsRetentionPeriod *int64 `type:"integer"` // The port number that the DB instance uses for connections. // - // Default: Inherits from the source DB instance - // // Valid Values: 1150-65535 + // + // Default: Inherits the value from the source DB instance. Port *int64 `type:"integer"` // When you are creating a read replica from one Amazon Web Services GovCloud @@ -23208,16 +24277,16 @@ // SourceRegion isn't supported for SQL Server, because Amazon RDS for SQL Server // doesn't support cross-Region read replicas. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. PreSignedUrl *string `type:"string"` // The number of CPU cores and the number of threads per core for the DB instance // class of the DB instance. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. ProcessorFeatures []*ProcessorFeature `locationNameList:"ProcessorFeature" type:"list"` - // A value that indicates whether the DB instance is publicly accessible. + // Specifies whether the DB instance is publicly accessible. // // When the DB cluster is publicly accessible, its Domain Name System (DNS) // endpoint resolves to the private IP address from within the DB cluster's @@ -23275,7 +24344,7 @@ // // Constraints: // - // * Must be the identifier of an existing MySQL, MariaDB, Oracle, PostgreSQL, + // * Must be the identifier of an existing Db2, MariaDB, MySQL, Oracle, PostgreSQL, // or SQL Server DB instance. // // * Can't be specified if the SourceDBClusterIdentifier parameter is also @@ -23309,31 +24378,36 @@ // Specifies the storage throughput value for the read replica. // - // This setting doesn't apply to RDS Custom or Amazon Aurora. + // This setting doesn't apply to RDS Custom or Amazon Aurora DB instances. StorageThroughput *int64 `type:"integer"` - // Specifies the storage type to be associated with the read replica. - // - // Valid values: gp2 | gp3 | io1 | standard + // The storage type to associate with the read replica. // // If you specify io1 or gp3, you must also include a value for the Iops parameter. // - // Default: io1 if the Iops parameter is specified, otherwise gp2 + // Valid Values: gp2 | gp3 | io1 | standard + // + // Default: io1 if the Iops parameter is specified. Otherwise, gp2. StorageType *string `type:"string"` // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) // in the Amazon RDS User Guide. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A value that indicates whether the DB instance class of the DB instance uses - // its default processor features. + // Whether to upgrade the storage file system configuration on the read replica. + // This option migrates the read replica from the old storage file system layout + // to the preferred layout. + UpgradeStorageConfig *bool `type:"boolean"` + + // Specifies whether the DB instance class of the DB instance uses its default + // processor features. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. UseDefaultProcessorFeatures *bool `type:"boolean"` // A list of Amazon EC2 VPC security groups to associate with the read replica. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. // // Default: The default EC2 VPC security group for the DB subnet group's VPC. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` @@ -23424,6 +24498,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *CreateDBInstanceReadReplicaInput) SetDedicatedLogVolume(v bool) *CreateDBInstanceReadReplicaInput { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *CreateDBInstanceReadReplicaInput) SetDeletionProtection(v bool) *CreateDBInstanceReadReplicaInput { s.DeletionProtection = &v @@ -23622,6 +24702,12 @@ return s } +// SetUpgradeStorageConfig sets the UpgradeStorageConfig field's value. +func (s *CreateDBInstanceReadReplicaInput) SetUpgradeStorageConfig(v bool) *CreateDBInstanceReadReplicaInput { + s.UpgradeStorageConfig = &v + return s +} + // SetUseDefaultProcessorFeatures sets the UseDefaultProcessorFeatures field's value. func (s *CreateDBInstanceReadReplicaInput) SetUseDefaultProcessorFeatures(v bool) *CreateDBInstanceReadReplicaInput { s.UseDefaultProcessorFeatures = &v @@ -23698,7 +24784,9 @@ // // * aurora-postgresql // - // * mariadb + // * db2-ae + // + // * db2-se // // * mysql // @@ -23859,9 +24947,9 @@ // in the Amazon RDS User Guide. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A value that indicates whether the DB proxy endpoint can be used for read/write - // or read-only operations. The default is READ_WRITE. The only role that proxies - // for RDS for Microsoft SQL Server support is READ_WRITE. + // The role of the DB proxy endpoint. The role determines whether the endpoint + // can be used for read/write or only read operations. The default is READ_WRITE. + // The only role that proxies for RDS for Microsoft SQL Server support is READ_WRITE. TargetRole *string `type:"string" enum:"DBProxyEndpointTargetRole"` // The VPC security group IDs for the DB proxy endpoint that you create. You @@ -24005,9 +25093,9 @@ // DBProxyName is a required field DBProxyName *string `type:"string" required:"true"` - // Whether the proxy includes detailed information about SQL statements in its - // logs. This information helps you to debug issues involving SQL behavior or - // the performance and scalability of the proxy connections. The debug information + // Specifies whether the proxy includes detailed information about SQL statements + // in its logs. This information helps you to debug issues involving SQL behavior + // or the performance and scalability of the proxy connections. The debug information // includes the text of SQL statements that you submit through the proxy. Thus, // only enable this setting when needed for debugging, and only when you have // security measures in place to safeguard any sensitive information that appears @@ -24029,9 +25117,9 @@ // connection timeout limit for the associated database. IdleClientTimeout *int64 `type:"integer"` - // A Boolean parameter that specifies whether Transport Layer Security (TLS) - // encryption is required for connections to the proxy. By enabling this setting, - // you can enforce encrypted TLS connections to the proxy. + // Specifies whether Transport Layer Security (TLS) encryption is required for + // connections to the proxy. By enabling this setting, you can enforce encrypted + // TLS connections to the proxy. RequireTLS *bool `type:"boolean"` // The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access @@ -24552,9 +25640,8 @@ type CreateEventSubscriptionInput struct { _ struct{} `type:"structure"` - // A value that indicates whether to activate the subscription. If the event - // notification subscription isn't activated, the subscription is created but - // not active. + // Specifies whether to activate the subscription. If the event notification + // subscription isn't activated, the subscription is created but not active. Enabled *bool `type:"boolean"` // A list of event categories for a particular source type (SourceType) that @@ -24607,7 +25694,7 @@ // to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't // specified, all events are returned. // - // Valid values: db-instance | db-cluster | db-parameter-group | db-security-group + // Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group // | db-snapshot | db-cluster-snapshot | db-proxy SourceType *string `type:"string"` @@ -24888,14 +25975,253 @@ return s } +type CreateIntegrationInput struct { + _ struct{} `type:"structure"` + + // An optional set of non-secret key–value pairs that contains additional + // contextual information about the data. For more information, see Encryption + // context (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) + // in the Amazon Web Services Key Management Service Developer Guide. + // + // You can only include this parameter if you specify the KMSKeyId parameter. + AdditionalEncryptionContext map[string]*string `type:"map"` + + // The name of the integration. + // + // IntegrationName is a required field + IntegrationName *string `min:"1" type:"string" required:"true"` + + // The Amazon Web Services Key Management System (Amazon Web Services KMS) key + // identifier for the key to use to encrypt the integration. If you don't specify + // an encryption key, RDS uses a default Amazon Web Services owned key. + KMSKeyId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the database to use as the source for replication. + // + // SourceArn is a required field + SourceArn *string `min:"1" type:"string" required:"true"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The ARN of the Redshift data warehouse to use as the target for replication. + // + // TargetArn is a required field + TargetArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIntegrationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIntegrationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateIntegrationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateIntegrationInput"} + if s.IntegrationName == nil { + invalidParams.Add(request.NewErrParamRequired("IntegrationName")) + } + if s.IntegrationName != nil && len(*s.IntegrationName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntegrationName", 1)) + } + if s.SourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceArn")) + } + if s.SourceArn != nil && len(*s.SourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceArn", 1)) + } + if s.TargetArn == nil { + invalidParams.Add(request.NewErrParamRequired("TargetArn")) + } + if s.TargetArn != nil && len(*s.TargetArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TargetArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdditionalEncryptionContext sets the AdditionalEncryptionContext field's value. +func (s *CreateIntegrationInput) SetAdditionalEncryptionContext(v map[string]*string) *CreateIntegrationInput { + s.AdditionalEncryptionContext = v + return s +} + +// SetIntegrationName sets the IntegrationName field's value. +func (s *CreateIntegrationInput) SetIntegrationName(v string) *CreateIntegrationInput { + s.IntegrationName = &v + return s +} + +// SetKMSKeyId sets the KMSKeyId field's value. +func (s *CreateIntegrationInput) SetKMSKeyId(v string) *CreateIntegrationInput { + s.KMSKeyId = &v + return s +} + +// SetSourceArn sets the SourceArn field's value. +func (s *CreateIntegrationInput) SetSourceArn(v string) *CreateIntegrationInput { + s.SourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateIntegrationInput) SetTags(v []*Tag) *CreateIntegrationInput { + s.Tags = v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *CreateIntegrationInput) SetTargetArn(v string) *CreateIntegrationInput { + s.TargetArn = &v + return s +} + +// A zero-ETL integration with Amazon Redshift. +type CreateIntegrationOutput struct { + _ struct{} `type:"structure"` + + // The encryption context for the integration. For more information, see Encryption + // context (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) + // in the Amazon Web Services Key Management Service Developer Guide. + AdditionalEncryptionContext map[string]*string `type:"map"` + + // The time when the integration was created, in Universal Coordinated Time + // (UTC). + CreateTime *time.Time `type:"timestamp"` + + // Any errors associated with the integration. + Errors []*IntegrationError `locationNameList:"IntegrationError" type:"list"` + + // The ARN of the integration. + IntegrationArn *string `min:"1" type:"string"` + + // The name of the integration. + IntegrationName *string `min:"1" type:"string"` + + // The Amazon Web Services Key Management System (Amazon Web Services KMS) key + // identifier for the key used to to encrypt the integration. + KMSKeyId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the database used as the source for replication. + SourceArn *string `min:"1" type:"string"` + + // The current status of the integration. + Status *string `type:"string" enum:"IntegrationStatus"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The ARN of the Redshift data warehouse used as the target for replication. + TargetArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIntegrationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateIntegrationOutput) GoString() string { + return s.String() +} + +// SetAdditionalEncryptionContext sets the AdditionalEncryptionContext field's value. +func (s *CreateIntegrationOutput) SetAdditionalEncryptionContext(v map[string]*string) *CreateIntegrationOutput { + s.AdditionalEncryptionContext = v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *CreateIntegrationOutput) SetCreateTime(v time.Time) *CreateIntegrationOutput { + s.CreateTime = &v + return s +} + +// SetErrors sets the Errors field's value. +func (s *CreateIntegrationOutput) SetErrors(v []*IntegrationError) *CreateIntegrationOutput { + s.Errors = v + return s +} + +// SetIntegrationArn sets the IntegrationArn field's value. +func (s *CreateIntegrationOutput) SetIntegrationArn(v string) *CreateIntegrationOutput { + s.IntegrationArn = &v + return s +} + +// SetIntegrationName sets the IntegrationName field's value. +func (s *CreateIntegrationOutput) SetIntegrationName(v string) *CreateIntegrationOutput { + s.IntegrationName = &v + return s +} + +// SetKMSKeyId sets the KMSKeyId field's value. +func (s *CreateIntegrationOutput) SetKMSKeyId(v string) *CreateIntegrationOutput { + s.KMSKeyId = &v + return s +} + +// SetSourceArn sets the SourceArn field's value. +func (s *CreateIntegrationOutput) SetSourceArn(v string) *CreateIntegrationOutput { + s.SourceArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateIntegrationOutput) SetStatus(v string) *CreateIntegrationOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateIntegrationOutput) SetTags(v []*Tag) *CreateIntegrationOutput { + s.Tags = v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *CreateIntegrationOutput) SetTargetArn(v string) *CreateIntegrationOutput { + s.TargetArn = &v + return s +} + type CreateOptionGroupInput struct { _ struct{} `type:"structure"` - // Specifies the name of the engine that this option group should be associated - // with. + // The name of the engine to associate this option group with. // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -25051,6 +26377,178 @@ return s } +type CreateTenantDatabaseInput struct { + _ struct{} `type:"structure"` + + // The character set for your tenant database. If you don't specify a value, + // the character set name defaults to AL32UTF8. + CharacterSetName *string `type:"string"` + + // The user-supplied DB instance identifier. RDS creates your tenant database + // in this DB instance. This parameter isn't case-sensitive. + // + // DBInstanceIdentifier is a required field + DBInstanceIdentifier *string `type:"string" required:"true"` + + // The password for the master user in your tenant database. + // + // Constraints: + // + // * Must be 8 to 30 characters. + // + // * Can include any printable ASCII character except forward slash (/), + // double quote ("), at symbol (@), ampersand (&), or single quote ('). + // + // MasterUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTenantDatabaseInput's + // String and GoString methods. + // + // MasterUserPassword is a required field + MasterUserPassword *string `type:"string" required:"true" sensitive:"true"` + + // The name for the master user account in your tenant database. RDS creates + // this user account in the tenant database and grants privileges to the master + // user. This parameter is case-sensitive. + // + // Constraints: + // + // * Must be 1 to 16 letters, numbers, or underscores. + // + // * First character must be a letter. + // + // * Can't be a reserved word for the chosen database engine. + // + // MasterUsername is a required field + MasterUsername *string `type:"string" required:"true"` + + // The NCHAR value for the tenant database. + NcharCharacterSetName *string `type:"string"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The user-supplied name of the tenant database that you want to create in + // your DB instance. This parameter has the same constraints as DBName in CreateDBInstance. + // + // TenantDBName is a required field + TenantDBName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTenantDatabaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTenantDatabaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTenantDatabaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTenantDatabaseInput"} + if s.DBInstanceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) + } + if s.MasterUserPassword == nil { + invalidParams.Add(request.NewErrParamRequired("MasterUserPassword")) + } + if s.MasterUsername == nil { + invalidParams.Add(request.NewErrParamRequired("MasterUsername")) + } + if s.TenantDBName == nil { + invalidParams.Add(request.NewErrParamRequired("TenantDBName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCharacterSetName sets the CharacterSetName field's value. +func (s *CreateTenantDatabaseInput) SetCharacterSetName(v string) *CreateTenantDatabaseInput { + s.CharacterSetName = &v + return s +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *CreateTenantDatabaseInput) SetDBInstanceIdentifier(v string) *CreateTenantDatabaseInput { + s.DBInstanceIdentifier = &v + return s +} + +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *CreateTenantDatabaseInput) SetMasterUserPassword(v string) *CreateTenantDatabaseInput { + s.MasterUserPassword = &v + return s +} + +// SetMasterUsername sets the MasterUsername field's value. +func (s *CreateTenantDatabaseInput) SetMasterUsername(v string) *CreateTenantDatabaseInput { + s.MasterUsername = &v + return s +} + +// SetNcharCharacterSetName sets the NcharCharacterSetName field's value. +func (s *CreateTenantDatabaseInput) SetNcharCharacterSetName(v string) *CreateTenantDatabaseInput { + s.NcharCharacterSetName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTenantDatabaseInput) SetTags(v []*Tag) *CreateTenantDatabaseInput { + s.Tags = v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *CreateTenantDatabaseInput) SetTenantDBName(v string) *CreateTenantDatabaseInput { + s.TenantDBName = &v + return s +} + +type CreateTenantDatabaseOutput struct { + _ struct{} `type:"structure"` + + // A tenant database in the DB instance. This data type is an element in the + // response to the DescribeTenantDatabases action. + TenantDatabase *TenantDatabase `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 CreateTenantDatabaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTenantDatabaseOutput) GoString() string { + return s.String() +} + +// SetTenantDatabase sets the TenantDatabase field's value. +func (s *CreateTenantDatabaseOutput) SetTenantDatabase(v *TenantDatabase) *CreateTenantDatabaseOutput { + s.TenantDatabase = v + return s +} + // A value that indicates the AMI information. type CustomDBEngineVersionAMI struct { _ struct{} `type:"structure"` @@ -25273,7 +26771,7 @@ // The version of the database engine. EngineVersion *string `type:"string"` - // Specifies whether write forwarding is enabled for a secondary cluster in + // Indicates whether write forwarding is enabled for a secondary cluster in // an Aurora global database. Because write forwarding takes time to enable, // check the value of GlobalWriteForwardingStatus to confirm that the request // has completed before using the write forwarding feature for this cluster. @@ -25322,7 +26820,7 @@ // The latest time to which a database can be restored with point-in-time restore. LatestRestorableTime *time.Time `type:"timestamp"` - // Specifies whether an Aurora DB cluster has in-cluster write forwarding enabled, + // Indicates whether an Aurora DB cluster has in-cluster write forwarding enabled, // not enabled, requested, or is in the process of enabling it. LocalWriteForwardingStatus *string `type:"string" enum:"LocalWriteForwardingStatus"` @@ -25434,6 +26932,9 @@ // This setting is only for non-Aurora Multi-AZ DB clusters. PubliclyAccessible *bool `type:"boolean"` + // Reserved for future use. + RdsCustomClusterConfiguration *RdsCustomClusterConfiguration `type:"structure"` + // Contains one or more identifiers of the read replicas associated with this // DB cluster. ReadReplicaIdentifiers []*string `locationNameList:"ReadReplicaIdentifier" type:"list"` @@ -25470,6 +26971,9 @@ // The current state of this DB cluster. Status *string `type:"string"` + // Reserved for future use. + StatusInfos []*DBClusterStatusInfo `locationNameList:"DBClusterStatusInfo" type:"list"` + // Indicates whether the DB cluster is encrypted. StorageEncrypted *bool `type:"boolean"` @@ -25886,6 +27390,12 @@ return s } +// SetRdsCustomClusterConfiguration sets the RdsCustomClusterConfiguration field's value. +func (s *DBCluster) SetRdsCustomClusterConfiguration(v *RdsCustomClusterConfiguration) *DBCluster { + s.RdsCustomClusterConfiguration = v + return s +} + // SetReadReplicaIdentifiers sets the ReadReplicaIdentifiers field's value. func (s *DBCluster) SetReadReplicaIdentifiers(v []*string) *DBCluster { s.ReadReplicaIdentifiers = v @@ -25922,6 +27432,12 @@ return s } +// SetStatusInfos sets the StatusInfos field's value. +func (s *DBCluster) SetStatusInfos(v []*DBClusterStatusInfo) *DBCluster { + s.StatusInfos = v + return s +} + // SetStorageEncrypted sets the StorageEncrypted field's value. func (s *DBCluster) SetStorageEncrypted(v bool) *DBCluster { s.StorageEncrypted = &v @@ -25996,8 +27512,8 @@ // The version of the database engine for the automated backup. EngineVersion *string `type:"string"` - // True if mapping of Amazon Web Services Identity and Access Management (IAM) - // accounts to database accounts is enabled, and otherwise false. + // Indicates whether mapping of Amazon Web Services Identity and Access Management + // (IAM) accounts to database accounts is enabled. IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` // The IOPS (I/O operations per second) value for the automated backup. @@ -26035,7 +27551,7 @@ // * retained - Automated backups for deleted clusters. Status *string `type:"string"` - // Specifies whether the source DB cluster is encrypted. + // Indicates whether the source DB cluster is encrypted. StorageEncrypted *bool `type:"boolean"` // The storage type associated with the DB cluster. @@ -26354,8 +27870,8 @@ // Specifies the instance identifier for this member of the DB cluster. DBInstanceIdentifier *string `type:"string"` - // Value that is true if the cluster member is the primary instance for the - // DB cluster and false otherwise. + // Indicates whether the cluster member is the primary DB instance for the DB + // cluster. IsClusterWriter *bool `type:"boolean"` // A value that specifies the order in which an Aurora Replica is promoted to @@ -26624,45 +28140,44 @@ type DBClusterSnapshot struct { _ struct{} `type:"structure"` - // Specifies the allocated storage size in gibibytes (GiB). + // The allocated storage size of the DB cluster snapshot in gibibytes (GiB). AllocatedStorage *int64 `type:"integer"` - // Provides the list of Availability Zones (AZs) where instances in the DB cluster - // snapshot can be restored. + // The list of Availability Zones (AZs) where instances in the DB cluster snapshot + // can be restored. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` - // Specifies the time when the DB cluster was created, in Universal Coordinated - // Time (UTC). + // The time when the DB cluster was created, in Universal Coordinated Time (UTC). ClusterCreateTime *time.Time `type:"timestamp"` - // Specifies the DB cluster identifier of the DB cluster that this DB cluster - // snapshot was created from. + // The DB cluster identifier of the DB cluster that this DB cluster snapshot + // was created from. DBClusterIdentifier *string `type:"string"` - // Specifies the Amazon Resource Name (ARN) for the DB cluster snapshot. + // The Amazon Resource Name (ARN) for the DB cluster snapshot. DBClusterSnapshotArn *string `type:"string"` - // Specifies the identifier for the DB cluster snapshot. + // The identifier for the DB cluster snapshot. DBClusterSnapshotIdentifier *string `type:"string"` // Reserved for future use. DBSystemId *string `type:"string"` - // Specifies the resource ID of the DB cluster that this DB cluster snapshot - // was created from. + // The resource ID of the DB cluster that this DB cluster snapshot was created + // from. DbClusterResourceId *string `type:"string"` - // Specifies the name of the database engine for this DB cluster snapshot. + // The name of the database engine for this DB cluster snapshot. Engine *string `type:"string"` - // Provides the engine mode of the database engine for this DB cluster snapshot. + // The engine mode of the database engine for this DB cluster snapshot. EngineMode *string `type:"string"` - // Provides the version of the database engine for this DB cluster snapshot. + // The version of the database engine for this DB cluster snapshot. EngineVersion *string `type:"string"` - // True if mapping of Amazon Web Services Identity and Access Management (IAM) - // accounts to database accounts is enabled, and otherwise false. + // Indicates whether mapping of Amazon Web Services Identity and Access Management + // (IAM) accounts to database accounts is enabled. IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` // If StorageEncrypted is true, the Amazon Web Services KMS key identifier for @@ -26672,24 +28187,22 @@ // ARN, or alias name for the KMS key. KmsKeyId *string `type:"string"` - // Provides the license model information for this DB cluster snapshot. + // The license model information for this DB cluster snapshot. LicenseModel *string `type:"string"` - // Provides the master username for this DB cluster snapshot. + // The master username for this DB cluster snapshot. MasterUsername *string `type:"string"` - // Specifies the percentage of the estimated data that has been transferred. + // The percentage of the estimated data that has been transferred. PercentProgress *int64 `type:"integer"` - // Specifies the port that the DB cluster was listening on at the time of the - // snapshot. + // The port that the DB cluster was listening on at the time of the snapshot. Port *int64 `type:"integer"` - // Provides the time when the snapshot was taken, in Universal Coordinated Time - // (UTC). + // The time when the snapshot was taken, in Universal Coordinated Time (UTC). SnapshotCreateTime *time.Time `type:"timestamp"` - // Provides the type of the DB cluster snapshot. + // The type of the DB cluster snapshot. SnapshotType *string `type:"string"` // If the DB cluster snapshot was copied from a source DB cluster snapshot, @@ -26697,8 +28210,7 @@ // a null value. SourceDBClusterSnapshotArn *string `type:"string"` - // Specifies the status of this DB cluster snapshot. Valid statuses are the - // following: + // The status of this DB cluster snapshot. Valid statuses are the following: // // * available // @@ -26707,7 +28219,7 @@ // * creating Status *string `type:"string"` - // Specifies whether the DB cluster snapshot is encrypted. + // Indicates whether the DB cluster snapshot is encrypted. StorageEncrypted *bool `type:"boolean"` // The storage type associated with the DB cluster snapshot. @@ -26719,7 +28231,7 @@ // in the Amazon RDS User Guide. TagList []*Tag `locationNameList:"Tag" type:"list"` - // Provides the VPC ID associated with the DB cluster snapshot. + // The VPC ID associated with the DB cluster snapshot. VpcId *string `type:"string"` } @@ -26993,6 +28505,65 @@ return s } +// Reserved for future use. +type DBClusterStatusInfo struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + Message *string `type:"string"` + + // Reserved for future use. + Normal *bool `type:"boolean"` + + // Reserved for future use. + Status *string `type:"string"` + + // Reserved for future use. + StatusType *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 DBClusterStatusInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DBClusterStatusInfo) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *DBClusterStatusInfo) SetMessage(v string) *DBClusterStatusInfo { + s.Message = &v + return s +} + +// SetNormal sets the Normal field's value. +func (s *DBClusterStatusInfo) SetNormal(v bool) *DBClusterStatusInfo { + s.Normal = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DBClusterStatusInfo) SetStatus(v string) *DBClusterStatusInfo { + s.Status = &v + return s +} + +// SetStatusType sets the StatusType field's value. +func (s *DBClusterStatusInfo) SetStatusType(v string) *DBClusterStatusInfo { + s.StatusType = &v + return s +} + // This data type is used as a response element in the action DescribeDBEngineVersions. type DBEngineVersion struct { _ struct{} `type:"structure"` @@ -27101,31 +28672,34 @@ // of the CreateDBInstance action. SupportedTimezones []*Timezone `locationNameList:"Timezone" type:"list"` - // A value that indicates whether the engine version supports Babelfish for - // Aurora PostgreSQL. + // Indicates whether the engine version supports Babelfish for Aurora PostgreSQL. SupportsBabelfish *bool `type:"boolean"` - // A value that indicates whether the engine version supports rotating the server - // certificate without rebooting the DB instance. + // Indicates whether the engine version supports rotating the server certificate + // without rebooting the DB instance. SupportsCertificateRotationWithoutRestart *bool `type:"boolean"` - // A value that indicates whether you can use Aurora global databases with a - // specific DB engine version. + // Indicates whether you can use Aurora global databases with a specific DB + // engine version. SupportsGlobalDatabases *bool `type:"boolean"` - // A value that indicates whether the DB engine version supports forwarding - // write operations from reader DB instances to the writer DB instance in the - // DB cluster. By default, write operations aren't allowed on reader DB instances. + // Indicates whether the DB engine version supports zero-ETL integrations with + // Amazon Redshift. + SupportsIntegrations *bool `type:"boolean"` + + // Indicates whether the DB engine version supports forwarding write operations + // from reader DB instances to the writer DB instance in the DB cluster. By + // default, write operations aren't allowed on reader DB instances. // // Valid for: Aurora DB clusters only SupportsLocalWriteForwarding *bool `type:"boolean"` - // A value that indicates whether the engine version supports exporting the - // log types specified by ExportableLogTypes to CloudWatch Logs. + // Indicates whether the engine version supports exporting the log types specified + // by ExportableLogTypes to CloudWatch Logs. SupportsLogExportsToCloudwatchLogs *bool `type:"boolean"` - // A value that indicates whether you can use Aurora parallel query with a specific - // DB engine version. + // Indicates whether you can use Aurora parallel query with a specific DB engine + // version. SupportsParallelQuery *bool `type:"boolean"` // Indicates whether the database engine version supports read replicas. @@ -27314,6 +28888,12 @@ return s } +// SetSupportsIntegrations sets the SupportsIntegrations field's value. +func (s *DBEngineVersion) SetSupportsIntegrations(v bool) *DBEngineVersion { + s.SupportsIntegrations = &v + return s +} + // SetSupportsLocalWriteForwarding sets the SupportsLocalWriteForwarding field's value. func (s *DBEngineVersion) SetSupportsLocalWriteForwarding(v bool) *DBEngineVersion { s.SupportsLocalWriteForwarding = &v @@ -27496,8 +29076,8 @@ // in the Amazon RDS User Guide. DBInstanceStatus *string `type:"string"` - // Contains the initial database name that you provided (if required) when you - // created the DB instance. This name is returned for the life of your DB instance. + // The initial database name that you provided (if required) when you created + // the DB instance. This name is returned for the life of your DB instance. // For an RDS for Oracle CDB instance, the name identifies the PDB rather than // the CDB. DBName *string `type:"string"` @@ -27527,6 +29107,9 @@ // the Amazon Web Services KMS key for the DB instance is accessed. DbiResourceId *string `type:"string"` + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled. + DedicatedLogVolume *bool `type:"boolean"` + // Indicates whether the DB instance has deletion protection enabled. The database // can't be deleted when deletion protection is enabled. For more information, // see Deleting a DB Instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). @@ -27573,6 +29156,13 @@ // The Provisioned IOPS (I/O operations per second) value for the DB instance. Iops *int64 `type:"integer"` + // Indicates whether an upgrade is recommended for the storage file system configuration + // on the DB instance. To migrate to the preferred configuration, you can either + // create a blue/green deployment, or create a read replica from the DB instance. + // For more information, see Upgrading the storage file system for a DB instance + // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.UpgradeFileSystem). + IsStorageConfigUpgradeAvailable *bool `type:"boolean"` + // If StorageEncrypted is enabled, the Amazon Web Services KMS key identifier // for the encrypted DB instance. // @@ -27618,6 +29208,10 @@ // doesn't apply to RDS Custom DB instances. MultiAZ *bool `type:"boolean"` + // Specifies whether the DB instance is in the multi-tenant configuration (TRUE) + // or the single-tenant configuration (FALSE). + MultiTenant *bool `type:"boolean"` + // The name of the NCHAR character set for the Oracle DB instance. This character // set specifies the Unicode encoding for data stored in table columns of type // NCHAR, NCLOB, or NVARCHAR2. @@ -27992,6 +29586,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *DBInstance) SetDedicatedLogVolume(v bool) *DBInstance { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *DBInstance) SetDeletionProtection(v bool) *DBInstance { s.DeletionProtection = &v @@ -28052,6 +29652,12 @@ return s } +// SetIsStorageConfigUpgradeAvailable sets the IsStorageConfigUpgradeAvailable field's value. +func (s *DBInstance) SetIsStorageConfigUpgradeAvailable(v bool) *DBInstance { + s.IsStorageConfigUpgradeAvailable = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DBInstance) SetKmsKeyId(v string) *DBInstance { s.KmsKeyId = &v @@ -28112,6 +29718,12 @@ return s } +// SetMultiTenant sets the MultiTenant field's value. +func (s *DBInstance) SetMultiTenant(v bool) *DBInstance { + s.MultiTenant = &v + return s +} + // SetNcharCharacterSetName sets the NcharCharacterSetName field's value. func (s *DBInstance) SetNcharCharacterSetName(v string) *DBInstance { s.NcharCharacterSetName = &v @@ -28286,7 +29898,7 @@ type DBInstanceAutomatedBackup struct { _ struct{} `type:"structure"` - // Specifies the allocated storage size in gibibytes (GiB). + // The allocated storage size for the the automated backup in gibibytes (GiB). AllocatedStorage *int64 `type:"integer"` // The Availability Zone that the automated backup was created in. For information @@ -28301,7 +29913,7 @@ // The retention period for the automated backups. BackupRetentionPeriod *int64 `type:"integer"` - // Specifies where automated backups are stored: Amazon Web Services Outposts + // The location where automated backups are stored: Amazon Web Services Outposts // or the Amazon Web Services Region. BackupTarget *string `type:"string"` @@ -28323,7 +29935,10 @@ // is unique to an Amazon Web Services Region. DbiResourceId *string `type:"string"` - // Specifies whether the automated backup is encrypted. + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled. + DedicatedLogVolume *bool `type:"boolean"` + + // Indicates whether the automated backup is encrypted. Encrypted *bool `type:"boolean"` // The name of the database engine for this automated backup. @@ -28336,7 +29951,7 @@ // accounts to database accounts is enabled, and otherwise false. IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` - // Provides the date and time that the DB instance was created. + // The date and time when the DB instance was created. InstanceCreateTime *time.Time `type:"timestamp"` // The IOPS (I/O operations per second) value for the automated backup. @@ -28348,12 +29963,16 @@ // ARN, or alias name for the KMS key. KmsKeyId *string `type:"string"` - // License model information for the automated backup. + // The license model information for the automated backup. LicenseModel *string `type:"string"` // The master user name of an automated backup. MasterUsername *string `type:"string"` + // Specifies whether the automatic backup is for a DB instance in the multi-tenant + // configuration (TRUE) or the single-tenant configuration (FALSE). + MultiTenant *bool `type:"boolean"` + // The option group the automated backup is associated with. If omitted, the // default option group for the engine specified is used. OptionGroupName *string `type:"string"` @@ -28368,10 +29987,10 @@ // The Amazon Web Services Region associated with the automated backup. Region *string `type:"string"` - // Earliest and latest time an instance can be restored to. + // The earliest and latest time a DB instance can be restored to. RestoreWindow *RestoreWindow `type:"structure"` - // Provides a list of status information for an automated backup: + // A list of status information for an automated backup: // // * active - Automated backups for current instances. // @@ -28381,10 +30000,10 @@ // snapshot to be available. Status *string `type:"string"` - // Specifies the storage throughput for the automated backup. + // The storage throughput for the automated backup. StorageThroughput *int64 `type:"integer"` - // Specifies the storage type associated with the automated backup. + // The storage type associated with the automated backup. StorageType *string `type:"string"` // The ARN from the key store with which the automated backup is associated @@ -28396,7 +30015,7 @@ // that were created with a time zone specified. Timezone *string `type:"string"` - // Provides the VPC ID associated with the DB instance. + // The VPC ID associated with the DB instance. VpcId *string `type:"string"` } @@ -28478,6 +30097,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *DBInstanceAutomatedBackup) SetDedicatedLogVolume(v bool) *DBInstanceAutomatedBackup { + s.DedicatedLogVolume = &v + return s +} + // SetEncrypted sets the Encrypted field's value. func (s *DBInstanceAutomatedBackup) SetEncrypted(v bool) *DBInstanceAutomatedBackup { s.Encrypted = &v @@ -28532,6 +30157,12 @@ return s } +// SetMultiTenant sets the MultiTenant field's value. +func (s *DBInstanceAutomatedBackup) SetMultiTenant(v bool) *DBInstanceAutomatedBackup { + s.MultiTenant = &v + return s +} + // SetOptionGroupName sets the OptionGroupName field's value. func (s *DBInstanceAutomatedBackup) SetOptionGroupName(v string) *DBInstanceAutomatedBackup { s.OptionGroupName = &v @@ -28626,8 +30257,8 @@ return s } -// Describes an Amazon Web Services Identity and Access Management (IAM) role -// that is associated with a DB instance. +// Information about an Amazon Web Services Identity and Access Management (IAM) +// role that is associated with a DB instance. type DBInstanceRole struct { _ struct{} `type:"structure"` @@ -28640,8 +30271,8 @@ // DB instance. RoleArn *string `type:"string"` - // Describes the state of association between the IAM role and the DB instance. - // The Status property returns one of the following values: + // Information about the state of association between the IAM role and the DB + // instance. The Status property returns one of the following values: // // * ACTIVE - the IAM role ARN is associated with the DB instance and can // be used to access other Amazon Web Services services on your behalf. @@ -28698,12 +30329,12 @@ // isn't in an error state, this value is blank. Message *string `type:"string"` - // Boolean value that is true if the instance is operating normally, or false - // if the instance is in an error state. + // Indicates whether the instance is operating normally (TRUE) or is in an error + // state (FALSE). Normal *bool `type:"boolean"` - // Status of the DB instance. For a StatusType of read replica, the values can - // be replicating, replication stop point set, replication stop point reached, + // The status of the DB instance. For a StatusType of read replica, the values + // can be replicating, replication stop point set, replication stop point reached, // error, stopped, or terminated. Status *string `type:"string"` @@ -28817,7 +30448,7 @@ } // Contains the result of a successful invocation of the ModifyDBParameterGroup -// or ResetDBParameterGroup action. +// or ResetDBParameterGroup operation. type DBParameterGroupNameMessage struct { _ struct{} `type:"structure"` @@ -28925,9 +30556,9 @@ // Region. DBProxyName *string `type:"string"` - // Whether the proxy includes detailed information about SQL statements in its - // logs. This information helps you to debug issues involving SQL behavior or - // the performance and scalability of the proxy connections. The debug information + // Indicates whether the proxy includes detailed information about SQL statements + // in its logs. This information helps you to debug issues involving SQL behavior + // or the performance and scalability of the proxy connections. The debug information // includes the text of SQL statements that you submit through the proxy. Thus, // only enable this setting when needed for debugging, and only when you have // security measures in place to safeguard any sensitive information that appears @@ -29119,10 +30750,10 @@ // endpoint value in the connection string for a database client application. Endpoint *string `type:"string"` - // A value that indicates whether this endpoint is the default endpoint for - // the associated DB proxy. Default DB proxy endpoints always have read/write - // capability. Other endpoints that you associate with the DB proxy can be either - // read/write or read-only. + // Indicates whether this endpoint is the default endpoint for the associated + // DB proxy. Default DB proxy endpoints always have read/write capability. Other + // endpoints that you associate with the DB proxy can be either read/write or + // read-only. IsDefault *bool `type:"boolean"` // The current status of this DB proxy endpoint. A status of available means @@ -29354,9 +30985,9 @@ // The identifier for the RDS proxy associated with this target group. DBProxyName *string `type:"string"` - // Whether this target group is the first one used for connection requests by - // the associated proxy. Because each proxy is currently associated with a single - // target group, currently this setting is always true. + // Indicates whether this target group is the first one used for connection + // requests by the associated proxy. Because each proxy is currently associated + // with a single target group, currently this setting is always true. IsDefault *bool `type:"boolean"` // The current status of this target group. A status of available means the @@ -29614,7 +31245,10 @@ // is unique to an Amazon Web Services Region. DbiResourceId *string `type:"string"` - // Specifies whether the DB snapshot is encrypted. + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled. + DedicatedLogVolume *bool `type:"boolean"` + + // Indicates whether the DB snapshot is encrypted. Encrypted *bool `type:"boolean"` // Specifies the name of the database engine. @@ -29623,8 +31257,8 @@ // Specifies the version of the database engine. EngineVersion *string `type:"string"` - // True if mapping of Amazon Web Services Identity and Access Management (IAM) - // accounts to database accounts is enabled, and otherwise false. + // Indicates whether mapping of Amazon Web Services Identity and Access Management + // (IAM) accounts to database accounts is enabled. IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` // Specifies the time in Coordinated Universal Time (UTC) when the DB instance, @@ -29648,6 +31282,10 @@ // Provides the master username for the DB snapshot. MasterUsername *string `type:"string"` + // Indicates whether the snapshot is of a DB instance using the multi-tenant + // configuration (TRUE) or the single-tenant configuration (FALSE). + MultiTenant *bool `type:"boolean"` + // Provides the option group name for the DB snapshot. OptionGroupName *string `type:"string"` @@ -29782,6 +31420,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *DBSnapshot) SetDedicatedLogVolume(v bool) *DBSnapshot { + s.DedicatedLogVolume = &v + return s +} + // SetEncrypted sets the Encrypted field's value. func (s *DBSnapshot) SetEncrypted(v bool) *DBSnapshot { s.Encrypted = &v @@ -29836,6 +31480,12 @@ return s } +// SetMultiTenant sets the MultiTenant field's value. +func (s *DBSnapshot) SetMultiTenant(v bool) *DBSnapshot { + s.MultiTenant = &v + return s +} + // SetOptionGroupName sets the OptionGroupName field's value. func (s *DBSnapshot) SetOptionGroupName(v string) *DBSnapshot { s.OptionGroupName = &v @@ -30045,6 +31695,149 @@ return s } +// Contains the details of a tenant database in a snapshot of a DB instance. +type DBSnapshotTenantDatabase struct { + _ struct{} `type:"structure"` + + // The name of the character set of a tenant database. + CharacterSetName *string `type:"string"` + + // The ID for the DB instance that contains the tenant databases. + DBInstanceIdentifier *string `type:"string"` + + // The identifier for the snapshot of the DB instance. + DBSnapshotIdentifier *string `type:"string"` + + // The Amazon Resource Name (ARN) for the snapshot tenant database. + DBSnapshotTenantDatabaseARN *string `type:"string"` + + // The resource identifier of the source CDB instance. This identifier can't + // be changed and is unique to an Amazon Web Services Region. + DbiResourceId *string `type:"string"` + + // The name of the database engine. + EngineName *string `type:"string"` + + // The master username of the tenant database. + MasterUsername *string `type:"string"` + + // The NCHAR character set name of the tenant database. + NcharCharacterSetName *string `type:"string"` + + // The type of DB snapshot. + SnapshotType *string `type:"string"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + TagList []*Tag `locationNameList:"Tag" type:"list"` + + // The name of the tenant database. + TenantDBName *string `type:"string"` + + // The time the DB snapshot was taken, specified in Coordinated Universal Time + // (UTC). If you copy the snapshot, the creation time changes. + TenantDatabaseCreateTime *time.Time `type:"timestamp"` + + // The resource ID of the tenant database. + TenantDatabaseResourceId *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 DBSnapshotTenantDatabase) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DBSnapshotTenantDatabase) GoString() string { + return s.String() +} + +// SetCharacterSetName sets the CharacterSetName field's value. +func (s *DBSnapshotTenantDatabase) SetCharacterSetName(v string) *DBSnapshotTenantDatabase { + s.CharacterSetName = &v + return s +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *DBSnapshotTenantDatabase) SetDBInstanceIdentifier(v string) *DBSnapshotTenantDatabase { + s.DBInstanceIdentifier = &v + return s +} + +// SetDBSnapshotIdentifier sets the DBSnapshotIdentifier field's value. +func (s *DBSnapshotTenantDatabase) SetDBSnapshotIdentifier(v string) *DBSnapshotTenantDatabase { + s.DBSnapshotIdentifier = &v + return s +} + +// SetDBSnapshotTenantDatabaseARN sets the DBSnapshotTenantDatabaseARN field's value. +func (s *DBSnapshotTenantDatabase) SetDBSnapshotTenantDatabaseARN(v string) *DBSnapshotTenantDatabase { + s.DBSnapshotTenantDatabaseARN = &v + return s +} + +// SetDbiResourceId sets the DbiResourceId field's value. +func (s *DBSnapshotTenantDatabase) SetDbiResourceId(v string) *DBSnapshotTenantDatabase { + s.DbiResourceId = &v + return s +} + +// SetEngineName sets the EngineName field's value. +func (s *DBSnapshotTenantDatabase) SetEngineName(v string) *DBSnapshotTenantDatabase { + s.EngineName = &v + return s +} + +// SetMasterUsername sets the MasterUsername field's value. +func (s *DBSnapshotTenantDatabase) SetMasterUsername(v string) *DBSnapshotTenantDatabase { + s.MasterUsername = &v + return s +} + +// SetNcharCharacterSetName sets the NcharCharacterSetName field's value. +func (s *DBSnapshotTenantDatabase) SetNcharCharacterSetName(v string) *DBSnapshotTenantDatabase { + s.NcharCharacterSetName = &v + return s +} + +// SetSnapshotType sets the SnapshotType field's value. +func (s *DBSnapshotTenantDatabase) SetSnapshotType(v string) *DBSnapshotTenantDatabase { + s.SnapshotType = &v + return s +} + +// SetTagList sets the TagList field's value. +func (s *DBSnapshotTenantDatabase) SetTagList(v []*Tag) *DBSnapshotTenantDatabase { + s.TagList = v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *DBSnapshotTenantDatabase) SetTenantDBName(v string) *DBSnapshotTenantDatabase { + s.TenantDBName = &v + return s +} + +// SetTenantDatabaseCreateTime sets the TenantDatabaseCreateTime field's value. +func (s *DBSnapshotTenantDatabase) SetTenantDatabaseCreateTime(v time.Time) *DBSnapshotTenantDatabase { + s.TenantDatabaseCreateTime = &v + return s +} + +// SetTenantDatabaseResourceId sets the TenantDatabaseResourceId field's value. +func (s *DBSnapshotTenantDatabase) SetTenantDatabaseResourceId(v string) *DBSnapshotTenantDatabase { + s.TenantDatabaseResourceId = &v + return s +} + // Contains the details of an Amazon RDS DB subnet group. // // This data type is used as a response element in the DescribeDBSubnetGroups @@ -30425,31 +32218,34 @@ // of the CreateDBInstance action. SupportedTimezones []*Timezone `locationNameList:"Timezone" type:"list"` - // A value that indicates whether the engine version supports Babelfish for - // Aurora PostgreSQL. + // Indicates whether the engine version supports Babelfish for Aurora PostgreSQL. SupportsBabelfish *bool `type:"boolean"` - // A value that indicates whether the engine version supports rotating the server - // certificate without rebooting the DB instance. + // Indicates whether the engine version supports rotating the server certificate + // without rebooting the DB instance. SupportsCertificateRotationWithoutRestart *bool `type:"boolean"` - // A value that indicates whether you can use Aurora global databases with a - // specific DB engine version. + // Indicates whether you can use Aurora global databases with a specific DB + // engine version. SupportsGlobalDatabases *bool `type:"boolean"` - // A value that indicates whether the DB engine version supports forwarding - // write operations from reader DB instances to the writer DB instance in the - // DB cluster. By default, write operations aren't allowed on reader DB instances. + // Indicates whether the DB engine version supports zero-ETL integrations with + // Amazon Redshift. + SupportsIntegrations *bool `type:"boolean"` + + // Indicates whether the DB engine version supports forwarding write operations + // from reader DB instances to the writer DB instance in the DB cluster. By + // default, write operations aren't allowed on reader DB instances. // // Valid for: Aurora DB clusters only SupportsLocalWriteForwarding *bool `type:"boolean"` - // A value that indicates whether the engine version supports exporting the - // log types specified by ExportableLogTypes to CloudWatch Logs. + // Indicates whether the engine version supports exporting the log types specified + // by ExportableLogTypes to CloudWatch Logs. SupportsLogExportsToCloudwatchLogs *bool `type:"boolean"` - // A value that indicates whether you can use Aurora parallel query with a specific - // DB engine version. + // Indicates whether you can use Aurora parallel query with a specific DB engine + // version. SupportsParallelQuery *bool `type:"boolean"` // Indicates whether the database engine version supports read replicas. @@ -30638,6 +32434,12 @@ return s } +// SetSupportsIntegrations sets the SupportsIntegrations field's value. +func (s *DeleteCustomDBEngineVersionOutput) SetSupportsIntegrations(v bool) *DeleteCustomDBEngineVersionOutput { + s.SupportsIntegrations = &v + return s +} + // SetSupportsLocalWriteForwarding sets the SupportsLocalWriteForwarding field's value. func (s *DeleteCustomDBEngineVersionOutput) SetSupportsLocalWriteForwarding(v bool) *DeleteCustomDBEngineVersionOutput { s.SupportsLocalWriteForwarding = &v @@ -30948,9 +32750,9 @@ // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // A value that indicates whether to remove automated backups immediately after - // the DB cluster is deleted. This parameter isn't case-sensitive. The default - // is to remove automated backups immediately after the DB cluster is deleted. + // Specifies whether to remove automated backups immediately after the DB cluster + // is deleted. This parameter isn't case-sensitive. The default is to remove + // automated backups immediately after the DB cluster is deleted. DeleteAutomatedBackups *bool `type:"boolean"` // The DB cluster snapshot identifier of the new DB cluster snapshot created @@ -30968,11 +32770,11 @@ // * Can't end with a hyphen or contain two consecutive hyphens FinalDBSnapshotIdentifier *string `type:"string"` - // A value that indicates whether to skip the creation of a final DB cluster - // snapshot before the DB cluster is deleted. If skip is specified, no DB cluster - // snapshot is created. If skip isn't specified, a DB cluster snapshot is created - // before the DB cluster is deleted. By default, skip isn't specified, and the - // DB cluster snapshot is created. By default, this parameter is disabled. + // Specifies whether to skip the creation of a final DB cluster snapshot before + // the DB cluster is deleted. If skip is specified, no DB cluster snapshot is + // created. If skip isn't specified, a DB cluster snapshot is created before + // the DB cluster is deleted. By default, skip isn't specified, and the DB cluster + // snapshot is created. By default, this parameter is disabled. // // You must specify a FinalDBSnapshotIdentifier parameter if SkipFinalSnapshot // is disabled. @@ -31332,9 +33134,9 @@ // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` - // A value that indicates whether to remove automated backups immediately after - // the DB instance is deleted. This parameter isn't case-sensitive. The default - // is to remove automated backups immediately after the DB instance is deleted. + // Specifies whether to remove automated backups immediately after the DB instance + // is deleted. This parameter isn't case-sensitive. The default is to remove + // automated backups immediately after the DB instance is deleted. DeleteAutomatedBackups *bool `type:"boolean"` // The DBSnapshotIdentifier of the new DBSnapshot created when the SkipFinalSnapshot @@ -31356,11 +33158,11 @@ // * Can't be specified when deleting a read replica. FinalDBSnapshotIdentifier *string `type:"string"` - // A value that indicates whether to skip the creation of a final DB snapshot - // before deleting the instance. If you enable this parameter, RDS doesn't create - // a DB snapshot. If you don't enable this parameter, RDS creates a DB snapshot - // before the DB instance is deleted. By default, skip isn't enabled, and the - // DB snapshot is created. + // Specifies whether to skip the creation of a final DB snapshot before deleting + // the instance. If you enable this parameter, RDS doesn't create a DB snapshot. + // If you don't enable this parameter, RDS creates a DB snapshot before the + // DB instance is deleted. By default, skip isn't enabled, and the DB snapshot + // is created. // // If you don't enable this parameter, you must specify the FinalDBSnapshotIdentifier // parameter. @@ -32093,6 +33895,173 @@ return s } +type DeleteIntegrationInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the integration. + // + // IntegrationIdentifier is a required field + IntegrationIdentifier *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIntegrationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIntegrationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteIntegrationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteIntegrationInput"} + if s.IntegrationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("IntegrationIdentifier")) + } + if s.IntegrationIdentifier != nil && len(*s.IntegrationIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntegrationIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIntegrationIdentifier sets the IntegrationIdentifier field's value. +func (s *DeleteIntegrationInput) SetIntegrationIdentifier(v string) *DeleteIntegrationInput { + s.IntegrationIdentifier = &v + return s +} + +// A zero-ETL integration with Amazon Redshift. +type DeleteIntegrationOutput struct { + _ struct{} `type:"structure"` + + // The encryption context for the integration. For more information, see Encryption + // context (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) + // in the Amazon Web Services Key Management Service Developer Guide. + AdditionalEncryptionContext map[string]*string `type:"map"` + + // The time when the integration was created, in Universal Coordinated Time + // (UTC). + CreateTime *time.Time `type:"timestamp"` + + // Any errors associated with the integration. + Errors []*IntegrationError `locationNameList:"IntegrationError" type:"list"` + + // The ARN of the integration. + IntegrationArn *string `min:"1" type:"string"` + + // The name of the integration. + IntegrationName *string `min:"1" type:"string"` + + // The Amazon Web Services Key Management System (Amazon Web Services KMS) key + // identifier for the key used to to encrypt the integration. + KMSKeyId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the database used as the source for replication. + SourceArn *string `min:"1" type:"string"` + + // The current status of the integration. + Status *string `type:"string" enum:"IntegrationStatus"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The ARN of the Redshift data warehouse used as the target for replication. + TargetArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIntegrationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteIntegrationOutput) GoString() string { + return s.String() +} + +// SetAdditionalEncryptionContext sets the AdditionalEncryptionContext field's value. +func (s *DeleteIntegrationOutput) SetAdditionalEncryptionContext(v map[string]*string) *DeleteIntegrationOutput { + s.AdditionalEncryptionContext = v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *DeleteIntegrationOutput) SetCreateTime(v time.Time) *DeleteIntegrationOutput { + s.CreateTime = &v + return s +} + +// SetErrors sets the Errors field's value. +func (s *DeleteIntegrationOutput) SetErrors(v []*IntegrationError) *DeleteIntegrationOutput { + s.Errors = v + return s +} + +// SetIntegrationArn sets the IntegrationArn field's value. +func (s *DeleteIntegrationOutput) SetIntegrationArn(v string) *DeleteIntegrationOutput { + s.IntegrationArn = &v + return s +} + +// SetIntegrationName sets the IntegrationName field's value. +func (s *DeleteIntegrationOutput) SetIntegrationName(v string) *DeleteIntegrationOutput { + s.IntegrationName = &v + return s +} + +// SetKMSKeyId sets the KMSKeyId field's value. +func (s *DeleteIntegrationOutput) SetKMSKeyId(v string) *DeleteIntegrationOutput { + s.KMSKeyId = &v + return s +} + +// SetSourceArn sets the SourceArn field's value. +func (s *DeleteIntegrationOutput) SetSourceArn(v string) *DeleteIntegrationOutput { + s.SourceArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteIntegrationOutput) SetStatus(v string) *DeleteIntegrationOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *DeleteIntegrationOutput) SetTags(v []*Tag) *DeleteIntegrationOutput { + s.Tags = v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *DeleteIntegrationOutput) SetTargetArn(v string) *DeleteIntegrationOutput { + s.TargetArn = &v + return s +} + type DeleteOptionGroupInput struct { _ struct{} `type:"structure"` @@ -32163,6 +34132,128 @@ return s.String() } +type DeleteTenantDatabaseInput struct { + _ struct{} `type:"structure"` + + // The user-supplied identifier for the DB instance that contains the tenant + // database that you want to delete. + // + // DBInstanceIdentifier is a required field + DBInstanceIdentifier *string `type:"string" required:"true"` + + // The DBSnapshotIdentifier of the new DBSnapshot created when the SkipFinalSnapshot + // parameter is disabled. + // + // If you enable this parameter and also enable SkipFinalShapshot, the command + // results in an error. + FinalDBSnapshotIdentifier *string `type:"string"` + + // Specifies whether to skip the creation of a final DB snapshot before removing + // the tenant database from your DB instance. If you enable this parameter, + // RDS doesn't create a DB snapshot. If you don't enable this parameter, RDS + // creates a DB snapshot before it deletes the tenant database. By default, + // RDS doesn't skip the final snapshot. If you don't enable this parameter, + // you must specify the FinalDBSnapshotIdentifier parameter. + SkipFinalSnapshot *bool `type:"boolean"` + + // The user-supplied name of the tenant database that you want to remove from + // your DB instance. Amazon RDS deletes the tenant database with this name. + // This parameter isn’t case-sensitive. + // + // TenantDBName is a required field + TenantDBName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTenantDatabaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTenantDatabaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTenantDatabaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTenantDatabaseInput"} + if s.DBInstanceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) + } + if s.TenantDBName == nil { + invalidParams.Add(request.NewErrParamRequired("TenantDBName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *DeleteTenantDatabaseInput) SetDBInstanceIdentifier(v string) *DeleteTenantDatabaseInput { + s.DBInstanceIdentifier = &v + return s +} + +// SetFinalDBSnapshotIdentifier sets the FinalDBSnapshotIdentifier field's value. +func (s *DeleteTenantDatabaseInput) SetFinalDBSnapshotIdentifier(v string) *DeleteTenantDatabaseInput { + s.FinalDBSnapshotIdentifier = &v + return s +} + +// SetSkipFinalSnapshot sets the SkipFinalSnapshot field's value. +func (s *DeleteTenantDatabaseInput) SetSkipFinalSnapshot(v bool) *DeleteTenantDatabaseInput { + s.SkipFinalSnapshot = &v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *DeleteTenantDatabaseInput) SetTenantDBName(v string) *DeleteTenantDatabaseInput { + s.TenantDBName = &v + return s +} + +type DeleteTenantDatabaseOutput struct { + _ struct{} `type:"structure"` + + // A tenant database in the DB instance. This data type is an element in the + // response to the DescribeTenantDatabases action. + TenantDatabase *TenantDatabase `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 DeleteTenantDatabaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTenantDatabaseOutput) GoString() string { + return s.String() +} + +// SetTenantDatabase sets the TenantDatabase field's value. +func (s *DeleteTenantDatabaseOutput) SetTenantDatabase(v *TenantDatabase) *DeleteTenantDatabaseOutput { + s.TenantDatabase = v + return s +} + type DeregisterDBProxyTargetsInput struct { _ struct{} `type:"structure"` @@ -32574,6 +34665,12 @@ // The list of Certificate objects for the Amazon Web Services account. Certificates []*Certificate `locationNameList:"Certificate" type:"list"` + // The default root CA for new databases created by your Amazon Web Services + // account. This is either the root CA override set on your Amazon Web Services + // account or the system default CA for the Region if no override exists. To + // override the default CA, use the ModifyCertificates operation. + DefaultCertificateForNewLaunches *string `type:"string"` + // An optional pagination token provided by a previous DescribeCertificates // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords . @@ -32604,6 +34701,12 @@ return s } +// SetDefaultCertificateForNewLaunches sets the DefaultCertificateForNewLaunches field's value. +func (s *DescribeCertificatesOutput) SetDefaultCertificateForNewLaunches(v string) *DescribeCertificatesOutput { + s.DefaultCertificateForNewLaunches = &v + return s +} + // SetMarker sets the Marker field's value. func (s *DescribeCertificatesOutput) SetMarker(v string) *DescribeCertificatesOutput { s.Marker = &v @@ -33242,8 +35345,15 @@ // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` - // A value that indicates to return only parameters for a specific source. Parameter - // sources can be engine, service, or customer. + // A specific source to return parameters for. + // + // Valid Values: + // + // * customer + // + // * engine + // + // * service Source *string `type:"string"` } @@ -33485,18 +35595,18 @@ // * engine - Accepts names of database engines. Filters []*Filter `locationNameList:"Filter" type:"list"` - // A value that indicates whether to include manual DB cluster snapshots that - // are public and can be copied or restored by any Amazon Web Services account. - // By default, the public snapshots are not included. + // Specifies whether to include manual DB cluster snapshots that are public + // and can be copied or restored by any Amazon Web Services account. By default, + // the public snapshots are not included. // // You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute // API action. IncludePublic *bool `type:"boolean"` - // A value that indicates whether to include shared manual DB cluster snapshots - // from other Amazon Web Services accounts that this Amazon Web Services account - // has been given permission to copy or restore. By default, these snapshots - // are not included. + // Specifies whether to include shared manual DB cluster snapshots from other + // Amazon Web Services accounts that this Amazon Web Services account has been + // given permission to copy or restore. By default, these snapshots are not + // included. // // You can give an Amazon Web Services account permission to restore a manual // DB cluster snapshot from another Amazon Web Services account by the ModifyDBClusterSnapshotAttribute @@ -33851,14 +35961,14 @@ // // Constraints: // - // * If supplied, must match an existing DBParameterGroupFamily. + // * If supplied, must match an existing DB parameter group family. DBParameterGroupFamily *string `type:"string"` - // A value that indicates whether only the default version of the specified - // engine or engine and major version combination is returned. + // Specifies whether to return only the default version of the specified engine + // or the engine and major version combination. DefaultOnly *bool `type:"boolean"` - // The database engine to return. + // The database engine to return version details for. // // Valid Values: // @@ -33868,6 +35978,10 @@ // // * custom-oracle-ee // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -33891,7 +36005,7 @@ // * sqlserver-web Engine *string `type:"string"` - // The database engine version to return. + // A specific database engine version to return details for. // // Example: 5.1.49 EngineVersion *string `type:"string"` @@ -33920,30 +36034,28 @@ // are the following: available deprecated Filters []*Filter `locationNameList:"Filter" type:"list"` - // A value that indicates whether to include engine versions that aren't available - // in the list. The default is to list only available engine versions. + // Specifies whether to also list the engine versions that aren't available. + // The default is to list only available engine versions. IncludeAll *bool `type:"boolean"` - // A value that indicates whether to list the supported character sets for each - // engine version. + // Specifies whether to list the supported character sets for each engine version. // // If this parameter is enabled and the requested engine supports the CharacterSetName // parameter for CreateDBInstance, the response includes a list of supported // character sets for each engine version. // // For RDS Custom, the default is not to list supported character sets. If you - // set ListSupportedCharacterSets to true, RDS Custom returns no results. + // enable this parameter, RDS Custom returns no results. ListSupportedCharacterSets *bool `type:"boolean"` - // A value that indicates whether to list the supported time zones for each - // engine version. + // Specifies whether to list the supported time zones for each engine version. // // If this parameter is enabled and the requested engine supports the TimeZone // parameter for CreateDBInstance, the response includes a list of supported // time zones for each engine version. // - // For RDS Custom, the default is not to list supported time zones. If you set - // ListSupportedTimezones to true, RDS Custom returns no results. + // For RDS Custom, the default is not to list supported time zones. If you enable + // this parameter, RDS Custom returns no results. ListSupportedTimezones *bool `type:"boolean"` // An optional pagination token provided by a previous request. If this parameter @@ -35713,6 +37825,205 @@ return s } +type DescribeDBSnapshotTenantDatabasesInput struct { + _ struct{} `type:"structure"` + + // The ID of the DB instance used to create the DB snapshots. This parameter + // isn't case-sensitive. + // + // Constraints: + // + // * If supplied, must match the identifier of an existing DBInstance. + DBInstanceIdentifier *string `type:"string"` + + // The ID of a DB snapshot that contains the tenant databases to describe. This + // value is stored as a lowercase string. + // + // Constraints: + // + // * If you specify this parameter, the value must match the ID of an existing + // DB snapshot. + // + // * If you specify an automatic snapshot, you must also specify SnapshotType. + DBSnapshotIdentifier *string `type:"string"` + + // A specific DB resource identifier to describe. + DbiResourceId *string `type:"string"` + + // A filter that specifies one or more tenant databases to describe. + // + // Supported filters: + // + // * tenant-db-name - Tenant database names. The results list only includes + // information about the tenant databases that match these tenant DB names. + // + // * tenant-database-resource-id - Tenant database resource identifiers. + // The results list only includes information about the tenant databases + // contained within the DB snapshots. + // + // * dbi-resource-id - DB instance resource identifiers. The results list + // only includes information about snapshots containing tenant databases + // contained within the DB instances identified by these resource identifiers. + // + // * db-instance-id - Accepts DB instance identifiers and DB instance Amazon + // Resource Names (ARNs). + // + // * db-snapshot-id - Accepts DB snapshot identifiers. + // + // * snapshot-type - Accepts types of DB snapshots. + Filters []*Filter `locationNameList:"Filter" type:"list"` + + // An optional pagination token provided by a previous DescribeDBSnapshotTenantDatabases + // request. If this parameter is specified, the response includes only records + // beyond the marker, up to the value specified by MaxRecords. + Marker *string `type:"string"` + + // The maximum number of records to include in the response. If more records + // exist than the specified MaxRecords value, a pagination token called a marker + // is included in the response so that you can retrieve the remaining results. + MaxRecords *int64 `type:"integer"` + + // The type of DB snapshots to be returned. You can specify one of the following + // values: + // + // * automated – All DB snapshots that have been automatically taken by + // Amazon RDS for my Amazon Web Services account. + // + // * manual – All DB snapshots that have been taken by my Amazon Web Services + // account. + // + // * shared – All manual DB snapshots that have been shared to my Amazon + // Web Services account. + // + // * public – All DB snapshots that have been marked as public. + // + // * awsbackup – All DB snapshots managed by the Amazon Web Services Backup + // service. + SnapshotType *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 DescribeDBSnapshotTenantDatabasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDBSnapshotTenantDatabasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDBSnapshotTenantDatabasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDBSnapshotTenantDatabasesInput"} + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetDBInstanceIdentifier(v string) *DescribeDBSnapshotTenantDatabasesInput { + s.DBInstanceIdentifier = &v + return s +} + +// SetDBSnapshotIdentifier sets the DBSnapshotIdentifier field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetDBSnapshotIdentifier(v string) *DescribeDBSnapshotTenantDatabasesInput { + s.DBSnapshotIdentifier = &v + return s +} + +// SetDbiResourceId sets the DbiResourceId field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetDbiResourceId(v string) *DescribeDBSnapshotTenantDatabasesInput { + s.DbiResourceId = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetFilters(v []*Filter) *DescribeDBSnapshotTenantDatabasesInput { + s.Filters = v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetMarker(v string) *DescribeDBSnapshotTenantDatabasesInput { + s.Marker = &v + return s +} + +// SetMaxRecords sets the MaxRecords field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetMaxRecords(v int64) *DescribeDBSnapshotTenantDatabasesInput { + s.MaxRecords = &v + return s +} + +// SetSnapshotType sets the SnapshotType field's value. +func (s *DescribeDBSnapshotTenantDatabasesInput) SetSnapshotType(v string) *DescribeDBSnapshotTenantDatabasesInput { + s.SnapshotType = &v + return s +} + +type DescribeDBSnapshotTenantDatabasesOutput struct { + _ struct{} `type:"structure"` + + // A list of DB snapshot tenant databases. + DBSnapshotTenantDatabases []*DBSnapshotTenantDatabase `locationNameList:"DBSnapshotTenantDatabase" type:"list"` + + // An optional pagination token provided by a previous request. If this parameter + // is specified, the response includes only records beyond the marker, up to + // the value specified by MaxRecords. + Marker *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 DescribeDBSnapshotTenantDatabasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDBSnapshotTenantDatabasesOutput) GoString() string { + return s.String() +} + +// SetDBSnapshotTenantDatabases sets the DBSnapshotTenantDatabases field's value. +func (s *DescribeDBSnapshotTenantDatabasesOutput) SetDBSnapshotTenantDatabases(v []*DBSnapshotTenantDatabase) *DescribeDBSnapshotTenantDatabasesOutput { + s.DBSnapshotTenantDatabases = v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeDBSnapshotTenantDatabasesOutput) SetMarker(v string) *DescribeDBSnapshotTenantDatabasesOutput { + s.Marker = &v + return s +} + type DescribeDBSnapshotsInput struct { _ struct{} `type:"structure"` @@ -35754,9 +38065,9 @@ // * engine - Accepts names of database engines. Filters []*Filter `locationNameList:"Filter" type:"list"` - // A value that indicates whether to include manual DB cluster snapshots that - // are public and can be copied or restored by any Amazon Web Services account. - // By default, the public snapshots are not included. + // Specifies whether to include manual DB cluster snapshots that are public + // and can be copied or restored by any Amazon Web Services account. By default, + // the public snapshots are not included. // // You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute // API. @@ -35764,10 +38075,10 @@ // This setting doesn't apply to RDS Custom. IncludePublic *bool `type:"boolean"` - // A value that indicates whether to include shared manual DB cluster snapshots - // from other Amazon Web Services accounts that this Amazon Web Services account - // has been given permission to copy or restore. By default, these snapshots - // are not included. + // Specifies whether to include shared manual DB cluster snapshots from other + // Amazon Web Services accounts that this Amazon Web Services account has been + // given permission to copy or restore. By default, these snapshots are not + // included. // // You can give an Amazon Web Services account permission to restore a manual // DB snapshot from another Amazon Web Services account by using the ModifyDBSnapshotAttribute @@ -36235,6 +38546,10 @@ // // * custom-oracle-ee-19 // + // * db2-ae + // + // * db2-se + // // * mariadb10.2 // // * mariadb10.3 @@ -36438,7 +38753,7 @@ // The type of source that is generating the events. For RDS Proxy events, specify // db-proxy. // - // Valid values: db-instance | db-cluster | db-parameter-group | db-security-group + // Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group // | db-snapshot | db-cluster-snapshot | db-proxy SourceType *string `type:"string"` } @@ -37167,13 +39482,149 @@ return s } +type DescribeIntegrationsInput struct { + _ struct{} `type:"structure"` + + // A filter that specifies one or more resources to return. + Filters []*Filter `locationNameList:"Filter" type:"list"` + + // The unique identifier of the integration. + IntegrationIdentifier *string `min:"1" type:"string"` + + // An optional pagination token provided by a previous DescribeIntegrations + // request. If this parameter is specified, the response includes only records + // beyond the marker, up to the value specified by MaxRecords. + Marker *string `min:"1" type:"string"` + + // The maximum number of records to include in the response. If more records + // exist than the specified MaxRecords value, a pagination token called a marker + // is included in the response so that you can retrieve the remaining results. + // + // Default: 100 + // + // Constraints: Minimum 20, maximum 100. + MaxRecords *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 DescribeIntegrationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeIntegrationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeIntegrationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeIntegrationsInput"} + if s.IntegrationIdentifier != nil && len(*s.IntegrationIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntegrationIdentifier", 1)) + } + if s.Marker != nil && len(*s.Marker) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeIntegrationsInput) SetFilters(v []*Filter) *DescribeIntegrationsInput { + s.Filters = v + return s +} + +// SetIntegrationIdentifier sets the IntegrationIdentifier field's value. +func (s *DescribeIntegrationsInput) SetIntegrationIdentifier(v string) *DescribeIntegrationsInput { + s.IntegrationIdentifier = &v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeIntegrationsInput) SetMarker(v string) *DescribeIntegrationsInput { + s.Marker = &v + return s +} + +// SetMaxRecords sets the MaxRecords field's value. +func (s *DescribeIntegrationsInput) SetMaxRecords(v int64) *DescribeIntegrationsInput { + s.MaxRecords = &v + return s +} + +type DescribeIntegrationsOutput struct { + _ struct{} `type:"structure"` + + // A list of integrations. + Integrations []*Integration `locationNameList:"Integration" type:"list"` + + // A pagination token that can be used in a later DescribeIntegrations request. + Marker *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeIntegrationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeIntegrationsOutput) GoString() string { + return s.String() +} + +// SetIntegrations sets the Integrations field's value. +func (s *DescribeIntegrationsOutput) SetIntegrations(v []*Integration) *DescribeIntegrationsOutput { + s.Integrations = v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeIntegrationsOutput) SetMarker(v string) *DescribeIntegrationsOutput { + s.Marker = &v + return s +} + type DescribeOptionGroupOptionsInput struct { _ struct{} `type:"structure"` - // A required parameter. Options available for the given engine name are described. + // The name of the engine to describe options for. // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -37337,11 +39788,14 @@ type DescribeOptionGroupsInput struct { _ struct{} `type:"structure"` - // Filters the list of option groups to only include groups associated with - // a specific database engine. + // A filter to only include option groups associated with this database engine. // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -37513,19 +39967,19 @@ _ struct{} `type:"structure"` // The Availability Zone group associated with a Local Zone. Specify this parameter - // to retrieve available offerings for the Local Zones in the group. + // to retrieve available options for the Local Zones in the group. // - // Omit this parameter to show the available offerings in the specified Amazon + // Omit this parameter to show the available options in the specified Amazon // Web Services Region. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. AvailabilityZoneGroup *string `type:"string"` - // The DB instance class filter value. Specify this parameter to show only the - // available offerings matching the specified DB instance class. + // A filter to include only the available options for the specified DB instance + // class. DBInstanceClass *string `type:"string"` - // The name of the engine to retrieve DB instance options for. + // The name of the engine to describe DB instance options for. // // Valid Values: // @@ -37535,6 +39989,10 @@ // // * custom-oracle-ee // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -37560,15 +40018,14 @@ // Engine is a required field Engine *string `type:"string" required:"true"` - // The engine version filter value. Specify this parameter to show only the - // available offerings matching the specified engine version. + // A filter to include only the available options for the specified engine version. EngineVersion *string `type:"string"` // This parameter isn't currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` - // The license model filter value. Specify this parameter to show only the available - // offerings matching the specified license model. + // A filter to include only the available options for the specified license + // model. // // RDS Custom supports only the BYOL licensing model. LicenseModel *string `type:"string"` @@ -37587,8 +40044,8 @@ // Constraints: Minimum 20, maximum 10000. MaxRecords *int64 `type:"integer"` - // A value that indicates whether to show only VPC or non-VPC offerings. RDS - // Custom supports only VPC offerings. + // Specifies whether to show only VPC or non-VPC offerings. RDS Custom supports + // only VPC offerings. // // RDS Custom supports only VPC offerings. If you describe non-VPC offerings // for RDS Custom, the output shows VPC offerings. @@ -37912,8 +40369,7 @@ // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` - // A value that indicates whether to show only those reservations that support - // Multi-AZ. + // Specifies whether to show only those reservations that support Multi-AZ. MultiAZ *bool `type:"boolean"` // The offering type filter value. Specify this parameter to show only the available @@ -38069,8 +40525,7 @@ // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` - // A value that indicates whether to show only those reservations that support - // Multi-AZ. + // Specifies whether to show only those reservations that support Multi-AZ. MultiAZ *bool `type:"boolean"` // The offering type filter value. Specify this parameter to show only the available @@ -38408,6 +40863,155 @@ return s } +type DescribeTenantDatabasesInput struct { + _ struct{} `type:"structure"` + + // The user-supplied DB instance identifier, which must match the identifier + // of an existing instance owned by the Amazon Web Services account. This parameter + // isn't case-sensitive. + DBInstanceIdentifier *string `type:"string"` + + // A filter that specifies one or more database tenants to describe. + // + // Supported filters: + // + // * tenant-db-name - Tenant database names. The results list only includes + // information about the tenant databases that match these tenant DB names. + // + // * tenant-database-resource-id - Tenant database resource identifiers. + // + // * dbi-resource-id - DB instance resource identifiers. The results list + // only includes information about the tenants contained within the DB instances + // identified by these resource identifiers. + Filters []*Filter `locationNameList:"Filter" type:"list"` + + // An optional pagination token provided by a previous DescribeTenantDatabases + // request. If this parameter is specified, the response includes only records + // beyond the marker, up to the value specified by MaxRecords. + Marker *string `type:"string"` + + // The maximum number of records to include in the response. If more records + // exist than the specified MaxRecords value, a pagination token called a marker + // is included in the response so that you can retrieve the remaining results. + MaxRecords *int64 `type:"integer"` + + // The user-supplied tenant database name, which must match the name of an existing + // tenant database on the specified DB instance owned by your Amazon Web Services + // account. This parameter isn’t case-sensitive. + TenantDBName *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 DescribeTenantDatabasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTenantDatabasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeTenantDatabasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTenantDatabasesInput"} + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *DescribeTenantDatabasesInput) SetDBInstanceIdentifier(v string) *DescribeTenantDatabasesInput { + s.DBInstanceIdentifier = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *DescribeTenantDatabasesInput) SetFilters(v []*Filter) *DescribeTenantDatabasesInput { + s.Filters = v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeTenantDatabasesInput) SetMarker(v string) *DescribeTenantDatabasesInput { + s.Marker = &v + return s +} + +// SetMaxRecords sets the MaxRecords field's value. +func (s *DescribeTenantDatabasesInput) SetMaxRecords(v int64) *DescribeTenantDatabasesInput { + s.MaxRecords = &v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *DescribeTenantDatabasesInput) SetTenantDBName(v string) *DescribeTenantDatabasesInput { + s.TenantDBName = &v + return s +} + +type DescribeTenantDatabasesOutput struct { + _ struct{} `type:"structure"` + + // An optional pagination token provided by a previous DescribeTenantDatabases + // request. If this parameter is specified, the response includes only records + // beyond the marker, up to the value specified by MaxRecords. + Marker *string `type:"string"` + + // An array of the tenant databases requested by the DescribeTenantDatabases + // operation. + TenantDatabases []*TenantDatabase `locationNameList:"TenantDatabase" 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 DescribeTenantDatabasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTenantDatabasesOutput) GoString() string { + return s.String() +} + +// SetMarker sets the Marker field's value. +func (s *DescribeTenantDatabasesOutput) SetMarker(v string) *DescribeTenantDatabasesOutput { + s.Marker = &v + return s +} + +// SetTenantDatabases sets the TenantDatabases field's value. +func (s *DescribeTenantDatabasesOutput) SetTenantDatabases(v []*TenantDatabase) *DescribeTenantDatabasesOutput { + s.TenantDatabases = v + return s +} + type DescribeValidDBInstanceModificationsInput struct { _ struct{} `type:"structure"` @@ -38728,7 +41332,7 @@ type DownloadDBLogFilePortionOutput struct { _ struct{} `type:"structure"` - // Boolean value that if true, indicates there is more data to be downloaded. + // A Boolean value that, if true, indicates there is more data to be downloaded. AdditionalDataPending *bool `type:"boolean"` // Entries from the specified log file. @@ -39089,8 +41693,8 @@ // subscription. CustomerAwsId *string `type:"string"` - // A Boolean value indicating if the subscription is enabled. True indicates - // the subscription is enabled. + // Specifies whether the subscription is enabled. True indicates the subscription + // is enabled. Enabled *bool `type:"boolean"` // A list of event categories for the RDS event notification subscription. @@ -39204,11 +41808,13 @@ // Contains the details of a snapshot or cluster export to Amazon S3. // -// This data type is used as a response element in the DescribeExportTasks action. +// This data type is used as a response element in the DescribeExportTasks operation. type ExportTask struct { _ struct{} `type:"structure"` - // The data exported from the snapshot or cluster. Valid values are the following: + // The data exported from the snapshot or cluster. + // + // Valid Values: // // * database - Export all the data from a specified database. // @@ -39244,14 +41850,14 @@ // The progress of the snapshot or cluster export task as a percentage. PercentProgress *int64 `type:"integer"` - // The Amazon S3 bucket that the snapshot or cluster is exported to. + // The Amazon S3 bucket where the snapshot or cluster is exported to. S3Bucket *string `type:"string"` // The Amazon S3 bucket prefix that is the file name and path of the exported // data. S3Prefix *string `type:"string"` - // The time that the snapshot was created. + // The time when the snapshot was created. SnapshotTime *time.Time `type:"timestamp"` // The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon @@ -39276,10 +41882,10 @@ // * STARTING Status *string `type:"string"` - // The time that the snapshot or cluster export task ended. + // The time when the snapshot or cluster export task ended. TaskEndTime *time.Time `type:"timestamp"` - // The time that the snapshot or cluster export task started. + // The time when the snapshot or cluster export task started. TaskStartTime *time.Time `type:"timestamp"` // The total amount of data exported, in gigabytes. @@ -39406,11 +42012,12 @@ type FailoverDBClusterInput struct { _ struct{} `type:"structure"` - // A DB cluster identifier to force a failover for. This parameter isn't case-sensitive. + // The identifier of the DB cluster to force a failover for. This parameter + // isn't case-sensitive. // // Constraints: // - // * Must match the identifier of an existing DBCluster. + // * Must match the identifier of an existing DB cluster. // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` @@ -39673,14 +42280,17 @@ // the global cluster. The global cluster's primary DB cluster and the specified // secondary DB cluster are being verified before the operation starts. // - // * failing-over – This status covers the range of Aurora internal operations - // that take place during the switchover or failover process, such as demoting - // the primary Aurora DB cluster, promoting the secondary Aurora DB cluster, - // and synchronizing replicas. + // * failing-over – Aurora is promoting the chosen secondary Aurora DB + // cluster to become the new primary DB cluster to fail over the global cluster. // // * cancelling – The request to switch over or fail over the global cluster // was cancelled and the primary Aurora DB cluster and the selected secondary // Aurora DB cluster are returning to their previous states. + // + // * switching-over – This status covers the range of Aurora internal operations + // that take place during the switchover process, such as demoting the primary + // Aurora DB cluster, promoting the secondary Aurora DB cluster, and synchronizing + // replicas. Status *string `type:"string" enum:"FailoverStatus"` // The Amazon Resource Name (ARN) of the Aurora DB cluster that is currently @@ -39945,11 +42555,10 @@ // The Amazon Resource Name (ARN) for each Aurora DB cluster in the global cluster. DBClusterArn *string `type:"string"` - // Specifies whether a secondary cluster in the global cluster has write forwarding - // enabled, not enabled, or is in the process of enabling it. + // The status of write forwarding for a secondary cluster in the global cluster. GlobalWriteForwardingStatus *string `type:"string" enum:"WriteForwardingStatus"` - // Specifies whether the Aurora DB cluster is the primary cluster (that is, + // Indicates whether the Aurora DB cluster is the primary cluster (that is, // has read-write capability) for the global cluster with which it is associated. IsWriter *bool `type:"boolean"` @@ -40014,11 +42623,11 @@ type IPRange struct { _ struct{} `type:"structure"` - // Specifies the IP range. + // The IP range. CIDRIP *string `type:"string"` - // Specifies the status of the IP range. Status can be "authorizing", "authorized", - // "revoking", and "revoked". + // The status of the IP range. Status can be "authorizing", "authorized", "revoking", + // and "revoked". Status *string `type:"string"` } @@ -40052,6 +42661,167 @@ return s } +// A zero-ETL integration with Amazon Redshift. +type Integration struct { + _ struct{} `type:"structure"` + + // The encryption context for the integration. For more information, see Encryption + // context (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) + // in the Amazon Web Services Key Management Service Developer Guide. + AdditionalEncryptionContext map[string]*string `type:"map"` + + // The time when the integration was created, in Universal Coordinated Time + // (UTC). + CreateTime *time.Time `type:"timestamp"` + + // Any errors associated with the integration. + Errors []*IntegrationError `locationNameList:"IntegrationError" type:"list"` + + // The ARN of the integration. + IntegrationArn *string `min:"1" type:"string"` + + // The name of the integration. + IntegrationName *string `min:"1" type:"string"` + + // The Amazon Web Services Key Management System (Amazon Web Services KMS) key + // identifier for the key used to to encrypt the integration. + KMSKeyId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the database used as the source for replication. + SourceArn *string `min:"1" type:"string"` + + // The current status of the integration. + Status *string `type:"string" enum:"IntegrationStatus"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + Tags []*Tag `locationNameList:"Tag" type:"list"` + + // The ARN of the Redshift data warehouse used as the target for replication. + TargetArn *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Integration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Integration) GoString() string { + return s.String() +} + +// SetAdditionalEncryptionContext sets the AdditionalEncryptionContext field's value. +func (s *Integration) SetAdditionalEncryptionContext(v map[string]*string) *Integration { + s.AdditionalEncryptionContext = v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *Integration) SetCreateTime(v time.Time) *Integration { + s.CreateTime = &v + return s +} + +// SetErrors sets the Errors field's value. +func (s *Integration) SetErrors(v []*IntegrationError) *Integration { + s.Errors = v + return s +} + +// SetIntegrationArn sets the IntegrationArn field's value. +func (s *Integration) SetIntegrationArn(v string) *Integration { + s.IntegrationArn = &v + return s +} + +// SetIntegrationName sets the IntegrationName field's value. +func (s *Integration) SetIntegrationName(v string) *Integration { + s.IntegrationName = &v + return s +} + +// SetKMSKeyId sets the KMSKeyId field's value. +func (s *Integration) SetKMSKeyId(v string) *Integration { + s.KMSKeyId = &v + return s +} + +// SetSourceArn sets the SourceArn field's value. +func (s *Integration) SetSourceArn(v string) *Integration { + s.SourceArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Integration) SetStatus(v string) *Integration { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Integration) SetTags(v []*Tag) *Integration { + s.Tags = v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *Integration) SetTargetArn(v string) *Integration { + s.TargetArn = &v + return s +} + +// An error associated with a zero-ETL integration with Amazon Redshift. +type IntegrationError struct { + _ struct{} `type:"structure"` + + // The error code associated with the integration. + // + // ErrorCode is a required field + ErrorCode *string `type:"string" required:"true"` + + // A message explaining the error. + ErrorMessage *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 IntegrationError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntegrationError) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *IntegrationError) SetErrorCode(v string) *IntegrationError { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *IntegrationError) SetErrorMessage(v string) *IntegrationError { + s.ErrorMessage = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure"` @@ -40399,8 +43169,8 @@ // or the DescribeCertificates API operation. CertificateIdentifier *string `type:"string"` - // A value that indicates whether to remove the override for the default certificate. - // If the override is removed, the default certificate is the system default. + // Specifies whether to remove the override for the default certificate. If + // the override is removed, the default certificate is the system default. RemoveCustomerOverride *bool `type:"boolean"` } @@ -40854,31 +43624,34 @@ // of the CreateDBInstance action. SupportedTimezones []*Timezone `locationNameList:"Timezone" type:"list"` - // A value that indicates whether the engine version supports Babelfish for - // Aurora PostgreSQL. + // Indicates whether the engine version supports Babelfish for Aurora PostgreSQL. SupportsBabelfish *bool `type:"boolean"` - // A value that indicates whether the engine version supports rotating the server - // certificate without rebooting the DB instance. + // Indicates whether the engine version supports rotating the server certificate + // without rebooting the DB instance. SupportsCertificateRotationWithoutRestart *bool `type:"boolean"` - // A value that indicates whether you can use Aurora global databases with a - // specific DB engine version. + // Indicates whether you can use Aurora global databases with a specific DB + // engine version. SupportsGlobalDatabases *bool `type:"boolean"` - // A value that indicates whether the DB engine version supports forwarding - // write operations from reader DB instances to the writer DB instance in the - // DB cluster. By default, write operations aren't allowed on reader DB instances. + // Indicates whether the DB engine version supports zero-ETL integrations with + // Amazon Redshift. + SupportsIntegrations *bool `type:"boolean"` + + // Indicates whether the DB engine version supports forwarding write operations + // from reader DB instances to the writer DB instance in the DB cluster. By + // default, write operations aren't allowed on reader DB instances. // // Valid for: Aurora DB clusters only SupportsLocalWriteForwarding *bool `type:"boolean"` - // A value that indicates whether the engine version supports exporting the - // log types specified by ExportableLogTypes to CloudWatch Logs. + // Indicates whether the engine version supports exporting the log types specified + // by ExportableLogTypes to CloudWatch Logs. SupportsLogExportsToCloudwatchLogs *bool `type:"boolean"` - // A value that indicates whether you can use Aurora parallel query with a specific - // DB engine version. + // Indicates whether you can use Aurora parallel query with a specific DB engine + // version. SupportsParallelQuery *bool `type:"boolean"` // Indicates whether the database engine version supports read replicas. @@ -41067,6 +43840,12 @@ return s } +// SetSupportsIntegrations sets the SupportsIntegrations field's value. +func (s *ModifyCustomDBEngineVersionOutput) SetSupportsIntegrations(v bool) *ModifyCustomDBEngineVersionOutput { + s.SupportsIntegrations = &v + return s +} + // SetSupportsLocalWriteForwarding sets the SupportsLocalWriteForwarding field's value. func (s *ModifyCustomDBEngineVersionOutput) SetSupportsLocalWriteForwarding(v bool) *ModifyCustomDBEngineVersionOutput { s.SupportsLocalWriteForwarding = &v @@ -41335,7 +44114,7 @@ // Specifies whether major version upgrades are allowed. // - // Valid for Cluster Type: Aurora DB clusters only + // Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters // // Constraints: // @@ -42429,7 +45208,7 @@ // The new amount of storage in gibibytes (GiB) to allocate for the DB instance. // - // For RDS for MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, + // For RDS for Db2, MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, // the value supplied must be at least 10% greater than the current value. Values // that are not at least 10% greater than the existing value are rounded up // so that they are 10% greater than the current value. @@ -42585,6 +45364,14 @@ // ApplyImmediately in your request. // // Default: Uses existing setting + // + // Constraints: + // + // * If you are modifying the DB instance class and upgrading the engine + // version at the same time, the currently running engine version must be + // supported on the specified DB instance class. Otherwise, the operation + // returns an error. In this case, first run the operation to upgrade the + // engine version, and then run it again to modify the DB instance class. DBInstanceClass *string `type:"string"` // The identifier of DB instance to modify. This value is stored as a lowercase @@ -42632,6 +45419,8 @@ // // * Amazon Aurora - 3306 // + // * RDS for Db2 - 50000 + // // * RDS for MariaDB - 3306 // // * RDS for Microsoft SQL Server - 1433 @@ -42677,6 +45466,9 @@ // Example: mydbsubnetgroup DBSubnetGroupName *string `type:"string"` + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled. + DedicatedLogVolume *bool `type:"boolean"` + // Specifies whether the DB instance has deletion protection enabled. The database // can't be deleted when deletion protection is enabled. By default, deletion // protection isn't enabled. For more information, see Deleting a DB Instance @@ -42688,8 +45480,8 @@ // The Active Directory directory ID to move the DB instance to. Specify none // to remove the instance from its current domain. You must create the domain - // before this operation. Currently, you can create only MySQL, Microsoft SQL - // Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain. + // before this operation. Currently, you can create only Db2, MySQL, Microsoft + // SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain. // // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. @@ -42824,6 +45616,14 @@ // // In RDS Custom for Oracle, this parameter is supported for read replicas only // if they are in the PATCH_DB_FAILURE lifecycle. + // + // Constraints: + // + // * If you are upgrading the engine version and modifying the DB instance + // class at the same time, the currently running engine version must be supported + // on the specified DB instance class. Otherwise, the operation returns an + // error. In this case, first run the operation to upgrade the engine version, + // and then run it again to modify the DB instance class. EngineVersion *string `type:"string"` // The new Provisioned IOPS (I/O operations per second) value for the RDS instance. @@ -42863,6 +45663,8 @@ // // Valid Values: // + // * RDS for Db2 - bring-your-own-license + // // * RDS for MariaDB - general-public-license // // * RDS for Microsoft SQL Server - license-included @@ -42904,7 +45706,7 @@ // of the request, the MasterUserPassword element exists in the PendingModifiedValues // element of the operation response. // - // Amazon RDS API operations never return the password, so this action provides + // Amazon RDS API operations never return the password, so this operation provides // a way to regain access to a primary instance user if the password is lost. // This includes restoring privileges that might have been accidentally revoked. // @@ -42921,10 +45723,14 @@ // // * Can't be specified if ManageMasterUserPassword is turned on. // - // * Can include any printable ASCII character except "/", """, or "@". + // * Can include any printable ASCII character except "/", """, or "@". For + // RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) + // character. // // Length Constraints: // + // * RDS for Db2 - Must contain from 8 to 255 characters. + // // * RDS for MariaDB - Must contain from 8 to 41 characters. // // * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. @@ -43008,6 +45814,21 @@ // This setting doesn't apply to RDS Custom DB instances. MultiAZ *bool `type:"boolean"` + // Specifies whether the to convert your DB instance from the single-tenant + // configuration to the multi-tenant configuration. This parameter is supported + // only for RDS for Oracle CDB instances. + // + // During the conversion, RDS creates an initial tenant database and associates + // the DB name, master user name, character set, and national character set + // metadata with this database. The tags associated with the instance also propagate + // to the initial tenant database. You can add more tenant databases to your + // DB instance by using the CreateTenantDatabase operation. + // + // The conversion to the multi-tenant configuration is permanent and irreversible, + // so you can't later convert back to the single-tenant configuration. When + // you specify this parameter, you must also specify ApplyImmediately. + MultiTenant *bool `type:"boolean"` + // The network type of the DB instance. // // The network type is determined by the DBSubnetGroup specified for the DB @@ -43421,6 +46242,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *ModifyDBInstanceInput) SetDedicatedLogVolume(v bool) *ModifyDBInstanceInput { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *ModifyDBInstanceInput) SetDeletionProtection(v bool) *ModifyDBInstanceInput { s.DeletionProtection = &v @@ -43553,6 +46380,12 @@ return s } +// SetMultiTenant sets the MultiTenant field's value. +func (s *ModifyDBInstanceInput) SetMultiTenant(v bool) *ModifyDBInstanceInput { + s.MultiTenant = &v + return s +} + // SetNetworkType sets the NetworkType field's value. func (s *ModifyDBInstanceInput) SetNetworkType(v string) *ModifyDBInstanceInput { s.NetworkType = &v @@ -44311,7 +47144,9 @@ // // MySQL // - // * 5.5.46 (supported for 5.1 DB snapshots) + // For the list of engine versions that are available for upgrading a DB snapshot, + // see Upgrading a MySQL DB snapshot engine version (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html) + // in the Amazon RDS User Guide. // // Oracle // @@ -44328,7 +47163,8 @@ // PostgreSQL // // For the list of engine versions that are available for upgrading a DB snapshot, - // see Upgrading the PostgreSQL DB Engine for Amazon RDS (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.PostgreSQL.html#USER_UpgradeDBInstance.PostgreSQL.MajorVersion). + // see Upgrading a PostgreSQL DB snapshot engine version (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html) + // in the Amazon RDS User Guide. EngineVersion *string `type:"string"` // The option group to identify with the upgraded DB snapshot. @@ -44535,7 +47371,7 @@ type ModifyEventSubscriptionInput struct { _ struct{} `type:"structure"` - // A value that indicates whether to activate the subscription. + // Specifies whether to activate the subscription. Enabled *bool `type:"boolean"` // A list of event categories for a source type (SourceType) that you want to @@ -44554,7 +47390,7 @@ // to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't // specified, all events are returned. // - // Valid values: db-instance | db-cluster | db-parameter-group | db-security-group + // Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group // | db-snapshot | db-cluster-snapshot | db-proxy SourceType *string `type:"string"` @@ -44796,9 +47632,8 @@ type ModifyOptionGroupInput struct { _ struct{} `type:"structure"` - // A value that indicates whether to apply the change immediately or during - // the next maintenance window for each instance associated with the option - // group. + // Specifies whether to apply the change immediately or during the next maintenance + // window for each instance associated with the option group. ApplyImmediately *bool `type:"boolean"` // The name of the option group to be modified. @@ -44913,7 +47748,152 @@ return s } -// Option details. +type ModifyTenantDatabaseInput struct { + _ struct{} `type:"structure"` + + // The identifier of the DB instance that contains the tenant database that + // you are modifying. This parameter isn't case-sensitive. + // + // Constraints: + // + // * Must match the identifier of an existing DB instance. + // + // DBInstanceIdentifier is a required field + DBInstanceIdentifier *string `type:"string" required:"true"` + + // The new password for the master user of the specified tenant database in + // your DB instance. + // + // Amazon RDS operations never return the password, so this action provides + // a way to regain access to a tenant database user if the password is lost. + // This includes restoring privileges that might have been accidentally revoked. + // + // Constraints: + // + // * Can include any printable ASCII character except /, " (double quote), + // @, & (ampersand), and ' (single quote). + // + // Length constraints: + // + // * Must contain between 8 and 30 characters. + // + // MasterUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ModifyTenantDatabaseInput's + // String and GoString methods. + MasterUserPassword *string `type:"string" sensitive:"true"` + + // The new name of the tenant database when renaming a tenant database. This + // parameter isn’t case-sensitive. + // + // Constraints: + // + // * Can't be the string null or any other reserved word. + // + // * Can't be longer than 8 characters. + NewTenantDBName *string `type:"string"` + + // The user-supplied name of the tenant database that you want to modify. This + // parameter isn’t case-sensitive. + // + // Constraints: + // + // * Must match the identifier of an existing tenant database. + // + // TenantDBName is a required field + TenantDBName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyTenantDatabaseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyTenantDatabaseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModifyTenantDatabaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModifyTenantDatabaseInput"} + if s.DBInstanceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) + } + if s.TenantDBName == nil { + invalidParams.Add(request.NewErrParamRequired("TenantDBName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *ModifyTenantDatabaseInput) SetDBInstanceIdentifier(v string) *ModifyTenantDatabaseInput { + s.DBInstanceIdentifier = &v + return s +} + +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *ModifyTenantDatabaseInput) SetMasterUserPassword(v string) *ModifyTenantDatabaseInput { + s.MasterUserPassword = &v + return s +} + +// SetNewTenantDBName sets the NewTenantDBName field's value. +func (s *ModifyTenantDatabaseInput) SetNewTenantDBName(v string) *ModifyTenantDatabaseInput { + s.NewTenantDBName = &v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *ModifyTenantDatabaseInput) SetTenantDBName(v string) *ModifyTenantDatabaseInput { + s.TenantDBName = &v + return s +} + +type ModifyTenantDatabaseOutput struct { + _ struct{} `type:"structure"` + + // A tenant database in the DB instance. This data type is an element in the + // response to the DescribeTenantDatabases action. + TenantDatabase *TenantDatabase `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 ModifyTenantDatabaseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyTenantDatabaseOutput) GoString() string { + return s.String() +} + +// SetTenantDatabase sets the TenantDatabase field's value. +func (s *ModifyTenantDatabaseOutput) SetTenantDatabase(v *TenantDatabase) *ModifyTenantDatabaseOutput { + s.TenantDatabase = v + return s +} + +// The details of an option. type Option struct { _ struct{} `type:"structure"` @@ -44933,10 +47913,10 @@ // The version of the option. OptionVersion *string `type:"string"` - // Indicate if this option is permanent. + // Indicates whether this option is permanent. Permanent *bool `type:"boolean"` - // Indicate if this option is persistent. + // Indicates whether this option is persistent. Persistent *bool `type:"boolean"` // If required, the port configured for this option to use. @@ -45286,7 +48266,7 @@ type OptionGroupOption struct { _ struct{} `type:"structure"` - // Specifies whether the option can be copied across Amazon Web Services accounts. + // Indicates whether the option can be copied across Amazon Web Services accounts. CopyableCrossAccount *bool `type:"boolean"` // If the option requires a port, specifies the default port for the option. @@ -45330,7 +48310,7 @@ // group. Persistent *bool `type:"boolean"` - // Specifies whether the option requires a port. + // Indicates whether the option requires a port. PortRequired *bool `type:"boolean"` // If true, you must enable the Auto Minor Version Upgrade setting for your @@ -45482,12 +48462,12 @@ // The default value for the option group option. DefaultValue *string `type:"string"` - // Boolean value where true indicates that this option group option can be changed - // from the default value. + // Indicates whether this option group option can be changed from the default + // value. IsModifiable *bool `type:"boolean"` - // Boolean value where true indicates that a value must be specified for this - // option setting of the option group option. + // Indicates whether a value must be specified for this option setting of the + // option group option. IsRequired *bool `type:"boolean"` // The minimum DB engine version required for the corresponding allowed value @@ -45589,11 +48569,10 @@ // The description of the option setting. Description *string `type:"string"` - // Indicates if the option setting is part of a collection. + // Indicates whether the option setting is part of a collection. IsCollection *bool `type:"boolean"` - // A Boolean value that, when true, indicates the option setting can be modified - // from the default. + // Indicates whether the option setting can be modified from the default. IsModifiable *bool `type:"boolean"` // The name of the option that has settings that you can set. @@ -45680,7 +48659,7 @@ type OptionVersion struct { _ struct{} `type:"structure"` - // True if the version is the default version of the option, and otherwise false. + // Indicates whether the version is the default version of the option. IsDefault *bool `type:"boolean"` // The version of the option. @@ -45779,7 +48758,7 @@ // Indicates whether a DB instance is Multi-AZ capable. MultiAZCapable *bool `type:"boolean"` - // Whether a DB instance supports RDS on Outposts. + // Indicates whether a DB instance supports RDS on Outposts. // // For more information about RDS on Outposts, see Amazon RDS on Amazon Web // Services Outposts (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) @@ -45789,7 +48768,7 @@ // Indicates whether a DB instance can have a read replica. ReadReplicaCapable *bool `type:"boolean"` - // Indicates the storage type for a DB instance. + // The storage type for a DB instance. StorageType *string `type:"string"` // The list of supported modes for Database Activity Streams. Aurora PostgreSQL @@ -45810,19 +48789,22 @@ // in the Amazon RDS User Guide. SupportedNetworkTypes []*string `type:"list"` - // Whether DB instances can be configured as a Multi-AZ DB cluster. + // Indicates whether DB instances can be configured as a Multi-AZ DB cluster. // // For more information on Multi-AZ DB clusters, see Multi-AZ deployments with // two readable standby DB instances (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html) // in the Amazon RDS User Guide. SupportsClusters *bool `type:"boolean"` + // Indicates whether a DB instance supports using a dedicated log volume (DLV). + SupportsDedicatedLogVolume *bool `type:"boolean"` + // Indicates whether a DB instance supports Enhanced Monitoring at intervals // from 1 to 60 seconds. SupportsEnhancedMonitoring *bool `type:"boolean"` - // A value that indicates whether you can use Aurora global databases with a - // specific combination of other DB engine attributes. + // Indicates whether you can use Aurora global databases with a specific combination + // of other DB engine attributes. SupportsGlobalDatabases *bool `type:"boolean"` // Indicates whether a DB instance supports IAM database authentication. @@ -45831,14 +48813,14 @@ // Indicates whether a DB instance supports provisioned IOPS. SupportsIops *bool `type:"boolean"` - // Whether a DB instance supports Kerberos Authentication. + // Indicates whether a DB instance supports Kerberos Authentication. SupportsKerberosAuthentication *bool `type:"boolean"` - // True if a DB instance supports Performance Insights, otherwise false. + // Indicates whether a DB instance supports Performance Insights. SupportsPerformanceInsights *bool `type:"boolean"` - // Whether Amazon RDS can automatically scale storage for DB instances that - // use the specified DB instance class. + // Indicates whether Amazon RDS can automatically scale storage for DB instances + // that use the specified DB instance class. SupportsStorageAutoscaling *bool `type:"boolean"` // Indicates whether a DB instance supports encrypted storage. @@ -46019,6 +49001,12 @@ return s } +// SetSupportsDedicatedLogVolume sets the SupportsDedicatedLogVolume field's value. +func (s *OrderableDBInstanceOption) SetSupportsDedicatedLogVolume(v bool) *OrderableDBInstanceOption { + s.SupportsDedicatedLogVolume = &v + return s +} + // SetSupportsEnhancedMonitoring sets the SupportsEnhancedMonitoring field's value. func (s *OrderableDBInstanceOption) SetSupportsEnhancedMonitoring(v bool) *OrderableDBInstanceOption { s.SupportsEnhancedMonitoring = &v @@ -46146,13 +49134,13 @@ // The earliest engine version to which the parameter can apply. MinimumEngineVersion *string `type:"string"` - // Specifies the name of the parameter. + // The name of the parameter. ParameterName *string `type:"string"` - // Specifies the value of the parameter. + // The value of the parameter. ParameterValue *string `type:"string"` - // Indicates the source of the parameter value. + // The source of the parameter value. Source *string `type:"string"` // The valid DB engine modes. @@ -46410,14 +49398,17 @@ // The DB subnet group for the DB instance. DBSubnetGroupName *string `type:"string"` + // Indicates whether the DB instance has a dedicated log volume (DLV) enabled.> + DedicatedLogVolume *bool `type:"boolean"` + // The database engine of the DB instance. Engine *string `type:"string"` // The database engine version. EngineVersion *string `type:"string"` - // Whether mapping of Amazon Web Services Identity and Access Management (IAM) - // accounts to database accounts is enabled. + // Indicates whether mapping of Amazon Web Services Identity and Access Management + // (IAM) accounts to database accounts is enabled. IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` // The Provisioned IOPS value for the DB instance. @@ -46431,10 +49422,13 @@ // The master credentials for the DB instance. MasterUserPassword *string `type:"string"` - // A value that indicates that the Single-AZ DB instance will change to a Multi-AZ - // deployment. + // Indicates whether the Single-AZ DB instance will change to a Multi-AZ deployment. MultiAZ *bool `type:"boolean"` + // Indicates whether the DB instance will change to the multi-tenant configuration + // (TRUE) or the single-tenant configuration (FALSE). + MultiTenant *bool `type:"boolean"` + // A list of the log types whose configuration is still pending. In other words, // these log types are in the process of being activated or deactivated. PendingCloudwatchLogsExports *PendingCloudwatchLogsExports `type:"structure"` @@ -46518,6 +49512,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *PendingModifiedValues) SetDedicatedLogVolume(v bool) *PendingModifiedValues { + s.DedicatedLogVolume = &v + return s +} + // SetEngine sets the Engine field's value. func (s *PendingModifiedValues) SetEngine(v string) *PendingModifiedValues { s.Engine = &v @@ -46560,6 +49560,12 @@ return s } +// SetMultiTenant sets the MultiTenant field's value. +func (s *PendingModifiedValues) SetMultiTenant(v bool) *PendingModifiedValues { + s.MultiTenant = &v + return s +} + // SetPendingCloudwatchLogsExports sets the PendingCloudwatchLogsExports field's value. func (s *PendingModifiedValues) SetPendingCloudwatchLogsExports(v *PendingCloudwatchLogsExports) *PendingModifiedValues { s.PendingCloudwatchLogsExports = v @@ -47079,6 +50085,56 @@ return s } +// Reserved for future use. +type RdsCustomClusterConfiguration struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + InterconnectSubnetId *string `type:"string"` + + // Reserved for future use. + ReplicaMode *string `type:"string" enum:"ReplicaMode"` + + // Reserved for future use. + TransitGatewayMulticastDomainId *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 RdsCustomClusterConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RdsCustomClusterConfiguration) GoString() string { + return s.String() +} + +// SetInterconnectSubnetId sets the InterconnectSubnetId field's value. +func (s *RdsCustomClusterConfiguration) SetInterconnectSubnetId(v string) *RdsCustomClusterConfiguration { + s.InterconnectSubnetId = &v + return s +} + +// SetReplicaMode sets the ReplicaMode field's value. +func (s *RdsCustomClusterConfiguration) SetReplicaMode(v string) *RdsCustomClusterConfiguration { + s.ReplicaMode = &v + return s +} + +// SetTransitGatewayMulticastDomainId sets the TransitGatewayMulticastDomainId field's value. +func (s *RdsCustomClusterConfiguration) SetTransitGatewayMulticastDomainId(v string) *RdsCustomClusterConfiguration { + s.TransitGatewayMulticastDomainId = &v + return s +} + type RebootDBClusterInput struct { _ struct{} `type:"structure"` @@ -47189,8 +50245,7 @@ // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` - // A value that indicates whether the reboot is conducted through a Multi-AZ - // failover. + // Specifies whether the reboot is conducted through a Multi-AZ failover. // // Constraint: You can't enable force failover if the instance isn't configured // for Multi-AZ. @@ -47891,7 +50946,7 @@ // to a reserved DB instance. LeaseId *string `type:"string"` - // Indicates if the reservation applies to Multi-AZ deployments. + // Indicates whether the reservation applies to Multi-AZ deployments. MultiAZ *bool `type:"boolean"` // The offering type of this reserved DB instance. @@ -48053,7 +51108,7 @@ // The fixed price charged for this offering. FixedPrice *float64 `type:"double"` - // Indicates if the offering applies to Multi-AZ deployments. + // Indicates whether the offering applies to Multi-AZ deployments. MultiAZ *bool `type:"boolean"` // The offering type. @@ -48163,9 +51218,9 @@ // is enabled. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` - // A value that indicates whether to reset all parameters in the DB cluster - // parameter group to their default values. You can't use this parameter if - // there is a list of parameter names specified for the Parameters parameter. + // Specifies whether to reset all parameters in the DB cluster parameter group + // to their default values. You can't use this parameter if there is a list + // of parameter names specified for the Parameters parameter. ResetAllParameters *bool `type:"boolean"` } @@ -48256,9 +51311,9 @@ // Valid Values (for Apply method): pending-reboot Parameters []*Parameter `locationNameList:"Parameter" type:"list"` - // A value that indicates whether to reset all parameters in the DB parameter - // group to default values. By default, all parameters in the DB parameter group - // are reset to default values. + // Specifies whether to reset all parameters in the DB parameter group to default + // values. By default, all parameters in the DB parameter group are reset to + // default values. ResetAllParameters *bool `type:"boolean"` } @@ -48387,8 +51442,8 @@ // with the specified CharacterSet. CharacterSetName *string `type:"string"` - // A value that indicates whether to copy all tags from the restored DB cluster - // to snapshots of the restored DB cluster. The default is not to copy them. + // Specifies whether to copy all tags from the restored DB cluster to snapshots + // of the restored DB cluster. The default is not to copy them. CopyTagsToSnapshot *bool `type:"boolean"` // The name of the DB cluster to create from the source data in the Amazon S3 @@ -48426,9 +51481,9 @@ // The database name for the restored DB cluster. DatabaseName *string `type:"string"` - // A value that indicates whether the DB cluster has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection isn't enabled. + // Specifies whether to enable deletion protection for the DB cluster. The database + // can't be deleted when deletion protection is enabled. By default, deletion + // protection isn't enabled. DeletionProtection *bool `type:"boolean"` // Specify the Active Directory directory ID to restore the DB cluster in. The @@ -48456,9 +51511,9 @@ // in the Amazon Aurora User Guide. EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // isn't enabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping isn't + // enabled. // // For more information, see IAM Database Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html) // in the Amazon Aurora User Guide. @@ -48496,8 +51551,8 @@ // Services Region. KmsKeyId *string `type:"string"` - // A value that indicates whether to manage the master user password with Amazon - // Web Services Secrets Manager. + // Specifies whether to manage the master user password with Amazon Web Services + // Secrets Manager. // // For more information, see Password management with Amazon Web Services Secrets // Manager (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html) @@ -48556,7 +51611,7 @@ // The network type of the DB cluster. // - // Valid values: + // Valid Values: // // * IPV4 // @@ -48646,7 +51701,7 @@ // The identifier for the database engine that was backed up to create the files // stored in the Amazon S3 bucket. // - // Valid values: mysql + // Valid Values: mysql // // SourceEngine is a required field SourceEngine *string `type:"string" required:"true"` @@ -48660,12 +51715,12 @@ // SourceEngineVersion is a required field SourceEngineVersion *string `type:"string" required:"true"` - // A value that indicates whether the restored DB cluster is encrypted. + // Specifies whether the restored DB cluster is encrypted. StorageEncrypted *bool `type:"boolean"` // Specifies the storage type to be associated with the DB cluster. // - // Valid values: aurora, aurora-iopt1 + // Valid Values: aurora, aurora-iopt1 // // Default: aurora // @@ -49017,8 +52072,8 @@ // Valid for: Aurora DB clusters only BacktrackWindow *int64 `type:"long"` - // A value that indicates whether to copy all tags from the restored DB cluster - // to snapshots of the restored DB cluster. The default is not to copy them. + // Specifies whether to copy all tags from the restored DB cluster to snapshots + // of the restored DB cluster. The default is not to copy them. // // Valid for: Aurora DB clusters and Multi-AZ DB clusters CopyTagsToSnapshot *bool `type:"boolean"` @@ -49084,15 +52139,15 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters DatabaseName *string `type:"string"` - // A value that indicates whether the DB cluster has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection isn't enabled. + // Specifies whether to enable deletion protection for the DB cluster. The database + // can't be deleted when deletion protection is enabled. By default, deletion + // protection isn't enabled. // // Valid for: Aurora DB clusters and Multi-AZ DB clusters DeletionProtection *bool `type:"boolean"` - // Specify the Active Directory directory ID to restore the DB cluster in. The - // domain must be created prior to this operation. Currently, only MySQL, Microsoft + // The Active Directory directory ID to restore the DB cluster in. The domain + // must be created prior to this operation. Currently, only MySQL, Microsoft // SQL Server, Oracle, and PostgreSQL DB instances can be created in an Active // Directory Domain. // @@ -49102,8 +52157,8 @@ // Valid for: Aurora DB clusters only Domain *string `type:"string"` - // Specify the name of the IAM role to be used when making API calls to the - // Directory Service. + // The name of the IAM role to be used when making API calls to the Directory + // Service. // // Valid for: Aurora DB clusters only DomainIAMRoleName *string `type:"string"` @@ -49138,9 +52193,9 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // isn't enabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping isn't + // enabled. // // For more information, see IAM Database Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html) // in the Amazon Aurora User Guide. @@ -49248,7 +52303,7 @@ // The network type of the DB cluster. // - // Valid values: + // Valid Values: // // * IPV4 // @@ -49278,7 +52333,7 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters Port *int64 `type:"integer"` - // A value that indicates whether the DB cluster is publicly accessible. + // Specifies whether the DB cluster is publicly accessible. // // When the DB cluster is publicly accessible, its Domain Name System (DNS) // endpoint resolves to the private IP address from within the DB cluster's @@ -49314,6 +52369,9 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters PubliclyAccessible *bool `type:"boolean"` + // Reserved for future use. + RdsCustomClusterConfiguration *RdsCustomClusterConfiguration `type:"structure"` + // For DB clusters in serverless DB engine mode, the scaling properties of the // DB cluster. // @@ -49346,7 +52404,7 @@ // When specified for a Multi-AZ DB cluster, a value for the Iops parameter // is required. // - // Valid values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB + // Valid Values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB // clusters) // // Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters) @@ -49534,6 +52592,12 @@ return s } +// SetRdsCustomClusterConfiguration sets the RdsCustomClusterConfiguration field's value. +func (s *RestoreDBClusterFromSnapshotInput) SetRdsCustomClusterConfiguration(v *RdsCustomClusterConfiguration) *RestoreDBClusterFromSnapshotInput { + s.RdsCustomClusterConfiguration = v + return s +} + // SetScalingConfiguration sets the ScalingConfiguration field's value. func (s *RestoreDBClusterFromSnapshotInput) SetScalingConfiguration(v *ScalingConfiguration) *RestoreDBClusterFromSnapshotInput { s.ScalingConfiguration = v @@ -49634,8 +52698,8 @@ // Valid for: Aurora MySQL DB clusters only BacktrackWindow *int64 `type:"long"` - // A value that indicates whether to copy all tags from the restored DB cluster - // to snapshots of the restored DB cluster. The default is not to copy them. + // Specifies whether to copy all tags from the restored DB cluster to snapshots + // of the restored DB cluster. The default is not to copy them. // // Valid for: Aurora DB clusters and Multi-AZ DB clusters CopyTagsToSnapshot *bool `type:"boolean"` @@ -49666,9 +52730,11 @@ // Valid for: Multi-AZ DB clusters only DBClusterInstanceClass *string `type:"string"` - // The name of the DB cluster parameter group to associate with this DB cluster. - // If this argument is omitted, the default DB cluster parameter group for the - // specified engine is used. + // The name of the custom DB cluster parameter group to associate with this + // DB cluster. + // + // If the DBClusterParameterGroupName parameter is omitted, the default DB cluster + // parameter group for the specified engine is used. // // Constraints: // @@ -49693,15 +52759,15 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters DBSubnetGroupName *string `type:"string"` - // A value that indicates whether the DB cluster has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection isn't enabled. + // Specifies whether to enable deletion protection for the DB cluster. The database + // can't be deleted when deletion protection is enabled. By default, deletion + // protection isn't enabled. // // Valid for: Aurora DB clusters and Multi-AZ DB clusters DeletionProtection *bool `type:"boolean"` - // Specify the Active Directory directory ID to restore the DB cluster in. The - // domain must be created prior to this operation. + // The Active Directory directory ID to restore the DB cluster in. The domain + // must be created prior to this operation. // // For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication // to authenticate users that connect to the DB cluster. For more information, @@ -49711,8 +52777,8 @@ // Valid for: Aurora DB clusters only Domain *string `type:"string"` - // Specify the name of the IAM role to be used when making API calls to the - // Directory Service. + // The name of the IAM role to be used when making API calls to the Directory + // Service. // // Valid for: Aurora DB clusters only DomainIAMRoleName *string `type:"string"` @@ -49747,9 +52813,9 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // isn't enabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping isn't + // enabled. // // For more information, see IAM Database Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html) // in the Amazon Aurora User Guide. @@ -49809,7 +52875,7 @@ // The network type of the DB cluster. // - // Valid values: + // Valid Values: // // * IPV4 // @@ -49839,7 +52905,7 @@ // Valid for: Aurora DB clusters and Multi-AZ DB clusters Port *int64 `type:"integer"` - // A value that indicates whether the DB cluster is publicly accessible. + // Specifies whether the DB cluster is publicly accessible. // // When the DB cluster is publicly accessible, its Domain Name System (DNS) // endpoint resolves to the private IP address from within the DB cluster's @@ -49875,6 +52941,9 @@ // Valid for: Multi-AZ DB clusters only PubliclyAccessible *bool `type:"boolean"` + // Reserved for future use. + RdsCustomClusterConfiguration *RdsCustomClusterConfiguration `type:"structure"` + // The date and time to restore the DB cluster to. // // Valid Values: Value must be a time in Universal Coordinated Time (UTC) format @@ -49938,7 +53007,7 @@ // When specified for a Multi-AZ DB cluster, a value for the Iops parameter // is required. // - // Valid values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB + // Valid Values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB // clusters) // // Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters) @@ -49950,8 +53019,8 @@ // in the Amazon RDS User Guide. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A value that indicates whether to restore the DB cluster to the latest restorable - // backup time. By default, the DB cluster isn't restored to the latest restorable + // Specifies whether to restore the DB cluster to the latest restorable backup + // time. By default, the DB cluster isn't restored to the latest restorable // backup time. // // Constraints: Can't be specified if RestoreToTime parameter is provided. @@ -50104,6 +53173,12 @@ return s } +// SetRdsCustomClusterConfiguration sets the RdsCustomClusterConfiguration field's value. +func (s *RestoreDBClusterToPointInTimeInput) SetRdsCustomClusterConfiguration(v *RdsCustomClusterConfiguration) *RestoreDBClusterToPointInTimeInput { + s.RdsCustomClusterConfiguration = v + return s +} + // SetRestoreToTime sets the RestoreToTime field's value. func (s *RestoreDBClusterToPointInTimeInput) SetRestoreToTime(v time.Time) *RestoreDBClusterToPointInTimeInput { s.RestoreToTime = &v @@ -50223,8 +53298,8 @@ // growth. AllocatedStorage *int64 `type:"integer"` - // A value that indicates whether minor version upgrades are applied automatically - // to the DB instance during the maintenance window. + // Specifies whether to automatically apply minor version upgrades to the DB + // instance during the maintenance window. // // If you restore an RDS Custom DB instance, you must disable this parameter. AutoMinorVersionUpgrade *bool `type:"boolean"` @@ -50250,8 +53325,8 @@ // in the Amazon RDS User Guide. BackupTarget *string `type:"string"` - // A value that indicates whether to copy all tags from the restored DB instance - // to snapshots of the DB instance. + // Specifies whether to copy all tags from the restored DB instance to snapshots + // of the DB instance. // // In most cases, tags aren't copied by default. However, when you restore a // DB instance from a DB snapshot, RDS checks whether you specify new tags. @@ -50314,26 +53389,26 @@ // Default: The same DBInstanceClass as the original DB instance. DBInstanceClass *string `type:"string"` - // Name of the DB instance to create from the DB snapshot. This parameter isn't - // case-sensitive. + // The name of the DB instance to create from the DB snapshot. This parameter + // isn't case-sensitive. // // Constraints: // - // * Must contain from 1 to 63 numbers, letters, or hyphens + // * Must contain from 1 to 63 numbers, letters, or hyphens. // - // * First character must be a letter + // * First character must be a letter. // - // * Can't end with a hyphen or contain two consecutive hyphens + // * Can't end with a hyphen or contain two consecutive hyphens. // // Example: my-snapshot-id // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` - // The database name for the restored DB instance. + // The name of the database for the restored DB instance. // - // This parameter doesn't apply to the MySQL, PostgreSQL, or MariaDB engines. - // It also doesn't apply to RDS Custom DB instances. + // This parameter only applies to RDS for Oracle and RDS for SQL Server DB instances. + // It doesn't apply to the other engines or to RDS Custom DB instances. DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. @@ -50345,7 +53420,7 @@ // // Constraints: // - // * If supplied, must match the name of an existing DBParameterGroup. + // * If supplied, must match the name of an existing DB parameter group. // // * Must be 1 to 255 letters, numbers, or hyphens. // @@ -50358,7 +53433,7 @@ // // Constraints: // - // * Must match the identifier of an existing DBSnapshot. + // * Must match the identifier of an existing DB snapshot. // // * Can't be specified when DBClusterSnapshotIdentifier is specified. // @@ -50368,23 +53443,28 @@ // must be the ARN of the shared DB snapshot. DBSnapshotIdentifier *string `type:"string"` - // The DB subnet group name to use for the new instance. + // The name of the DB subnet group to use for the new instance. // - // Constraints: If supplied, must match the name of an existing DBSubnetGroup. + // Constraints: + // + // * If supplied, must match the name of an existing DB subnet group. // // Example: mydbsubnetgroup DBSubnetGroupName *string `type:"string"` - // A value that indicates whether the DB instance has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, + // Specifies whether to enable a dedicated log volume (DLV) for the DB instance. + DedicatedLogVolume *bool `type:"boolean"` + + // Specifies whether to enable deletion protection for the DB instance. The + // database can't be deleted when deletion protection is enabled. By default, // deletion protection isn't enabled. For more information, see Deleting a DB // Instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). DeletionProtection *bool `type:"boolean"` - // Specify the Active Directory directory ID to restore the DB instance in. - // The domain/ must be created prior to this operation. Currently, you can create - // only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in - // an Active Directory Domain. + // The Active Directory directory ID to restore the DB instance in. The domain/ + // must be created prior to this operation. Currently, you can create only Db2, + // MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active + // Directory Domain. // // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. @@ -50397,6 +53477,8 @@ // // Constraints: // + // * Can't be longer than 64 characters. + // // Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456 DomainAuthSecretArn *string `type:"string"` @@ -50437,16 +53519,16 @@ // Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain DomainOu *string `type:"string"` - // The list of logs that the restored DB instance is to export to CloudWatch - // Logs. The values in the list depend on the DB engine being used. For more - // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) + // The list of logs for the restored DB instance to export to CloudWatch Logs. + // The values in the list depend on the DB engine. For more information, see + // Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) // in the Amazon RDS User Guide. // // This setting doesn't apply to RDS Custom. EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable a customer-owned IP address (CoIP) - // for an RDS on Outposts DB instance. + // Specifies whether to enable a customer-owned IP address (CoIP) for an RDS + // on Outposts DB instance. // // A CoIP provides local or external connectivity to resources in your Outpost // subnets through your on-premises network. For some use cases, a CoIP can @@ -50463,9 +53545,8 @@ // in the Amazon Web Services Outposts User Guide. EnableCustomerOwnedIp *bool `type:"boolean"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // is disabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping is disabled. // // For more information about IAM database authentication, see IAM Database // Authentication for MySQL and PostgreSQL (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html) @@ -50485,6 +53566,10 @@ // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -50528,10 +53613,10 @@ // // Default: Same as source. // - // Valid values: license-included | bring-your-own-license | general-public-license + // Valid Values: license-included | bring-your-own-license | general-public-license LicenseModel *string `type:"string"` - // A value that indicates whether the DB instance is a Multi-AZ deployment. + // Specifies whether the DB instance is a Multi-AZ deployment. // // This setting doesn't apply to RDS Custom. // @@ -50541,7 +53626,7 @@ // The network type of the DB instance. // - // Valid values: + // Valid Values: // // * IPV4 // @@ -50577,7 +53662,7 @@ // This setting doesn't apply to RDS Custom. ProcessorFeatures []*ProcessorFeature `locationNameList:"ProcessorFeature" type:"list"` - // A value that indicates whether the DB instance is publicly accessible. + // Specifies whether the DB instance is publicly accessible. // // When the DB instance is publicly accessible, its Domain Name System (DNS) // endpoint resolves to the private IP address from within the DB instance's @@ -50599,7 +53684,7 @@ // Specifies the storage type to be associated with the DB instance. // - // Valid values: gp2 | gp3 | io1 | standard + // Valid Values: gp2 | gp3 | io1 | standard // // If you specify io1 or gp3, you must also include a value for the Iops parameter. // @@ -50621,8 +53706,8 @@ // This setting doesn't apply to RDS Custom. TdeCredentialPassword *string `type:"string"` - // A value that indicates whether the DB instance class of the DB instance uses - // its default processor features. + // Specifies whether the DB instance class of the DB instance uses its default + // processor features. // // This setting doesn't apply to RDS Custom. UseDefaultProcessorFeatures *bool `type:"boolean"` @@ -50742,6 +53827,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *RestoreDBInstanceFromDBSnapshotInput) SetDedicatedLogVolume(v bool) *RestoreDBInstanceFromDBSnapshotInput { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *RestoreDBInstanceFromDBSnapshotInput) SetDeletionProtection(v bool) *RestoreDBInstanceFromDBSnapshotInput { s.DeletionProtection = &v @@ -50945,9 +54036,9 @@ // growth. AllocatedStorage *int64 `type:"integer"` - // A value that indicates whether minor engine upgrades are applied automatically - // to the DB instance during the maintenance window. By default, minor engine - // upgrades are not applied automatically. + // Specifies whether to automatically apply minor engine upgrades to the DB + // instance during the maintenance window. By default, minor engine upgrades + // are not applied automatically. AutoMinorVersionUpgrade *bool `type:"boolean"` // The Availability Zone that the DB instance is created in. For information @@ -50970,8 +54061,8 @@ // CreateDBInstance. BackupRetentionPeriod *int64 `type:"integer"` - // A value that indicates whether to copy all tags from the DB instance to snapshots - // of the DB instance. By default, tags are not copied. + // Specifies whether to copy all tags from the DB instance to snapshots of the + // DB instance. By default, tags are not copied. CopyTagsToSnapshot *bool `type:"boolean"` // The compute and memory capacity of the DB instance, for example db.m4.large. @@ -51022,8 +54113,11 @@ // Example: mydbsubnetgroup DBSubnetGroupName *string `type:"string"` - // A value that indicates whether the DB instance has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, + // Specifies whether to enable a dedicated log volume (DLV) for the DB instance. + DedicatedLogVolume *bool `type:"boolean"` + + // Specifies whether to enable deletion protection for the DB instance. The + // database can't be deleted when deletion protection is enabled. By default, // deletion protection isn't enabled. For more information, see Deleting a DB // Instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). DeletionProtection *bool `type:"boolean"` @@ -51034,17 +54128,16 @@ // in the Amazon RDS User Guide. EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // isn't enabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping isn't + // enabled. // // For more information about IAM database authentication, see IAM Database // Authentication for MySQL and PostgreSQL (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html) // in the Amazon RDS User Guide. EnableIAMDatabaseAuthentication *bool `type:"boolean"` - // A value that indicates whether to enable Performance Insights for the DB - // instance. + // Specifies whether to enable Performance Insights for the DB instance. // // For more information, see Using Amazon Performance Insights (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) // in the Amazon RDS User Guide. @@ -51084,8 +54177,8 @@ // The license model for this DB instance. Use general-public-license. LicenseModel *string `type:"string"` - // A value that indicates whether to manage the master user password with Amazon - // Web Services Secrets Manager. + // Specifies whether to manage the master user password with Amazon Web Services + // Secrets Manager. // // For more information, see Password management with Amazon Web Services Secrets // Manager (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html) @@ -51097,30 +54190,29 @@ // Manager if MasterUserPassword is specified. ManageMasterUserPassword *bool `type:"boolean"` - // The password for the master user. The password can include any printable - // ASCII character except "/", """, or "@". + // The password for the master user. // - // Constraints: Can't be specified if ManageMasterUserPassword is turned on. + // Constraints: // - // MariaDB + // * Can't be specified if ManageMasterUserPassword is turned on. // - // Constraints: Must contain from 8 to 41 characters. + // * Can include any printable ASCII character except "/", """, or "@". For + // RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) + // character. // - // Microsoft SQL Server + // Length Constraints: // - // Constraints: Must contain from 8 to 128 characters. + // * RDS for Db2 - Must contain from 8 to 128 characters. // - // MySQL - // - // Constraints: Must contain from 8 to 41 characters. + // * RDS for MariaDB - Must contain from 8 to 41 characters. // - // Oracle + // * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. // - // Constraints: Must contain from 8 to 30 characters. + // * RDS for MySQL - Must contain from 8 to 41 characters. // - // PostgreSQL + // * RDS for Oracle - Must contain from 8 to 30 characters. // - // Constraints: Must contain from 8 to 128 characters. + // * RDS for PostgreSQL - Must contain from 8 to 128 characters. MasterUserPassword *string `type:"string"` // The Amazon Web Services KMS key identifier to encrypt a secret that is automatically @@ -51185,14 +54277,13 @@ // a MonitoringRoleArn value. MonitoringRoleArn *string `type:"string"` - // A value that indicates whether the DB instance is a Multi-AZ deployment. - // If the DB instance is a Multi-AZ deployment, you can't set the AvailabilityZone - // parameter. + // Specifies whether the DB instance is a Multi-AZ deployment. If the DB instance + // is a Multi-AZ deployment, you can't set the AvailabilityZone parameter. MultiAZ *bool `type:"boolean"` // The network type of the DB instance. // - // Valid values: + // Valid Values: // // * IPV4 // @@ -51292,7 +54383,7 @@ // class of the DB instance. ProcessorFeatures []*ProcessorFeature `locationNameList:"ProcessorFeature" type:"list"` - // A value that indicates whether the DB instance is publicly accessible. + // Specifies whether the DB instance is publicly accessible. // // When the DB instance is publicly accessible, its Domain Name System (DNS) // endpoint resolves to the private IP address from within the DB instance's @@ -51337,7 +54428,7 @@ // SourceEngineVersion is a required field SourceEngineVersion *string `type:"string" required:"true"` - // A value that indicates whether the new DB instance is encrypted or not. + // Specifies whether the new DB instance is encrypted or not. StorageEncrypted *bool `type:"boolean"` // Specifies the storage throughput value for the DB instance. @@ -51347,7 +54438,7 @@ // Specifies the storage type to be associated with the DB instance. // - // Valid values: gp2 | gp3 | io1 | standard + // Valid Values: gp2 | gp3 | io1 | standard // // If you specify io1 or gp3, you must also include a value for the Iops parameter. // @@ -51359,8 +54450,8 @@ // in the Amazon RDS User Guide. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A value that indicates whether the DB instance class of the DB instance uses - // its default processor features. + // Specifies whether the DB instance class of the DB instance uses its default + // processor features. UseDefaultProcessorFeatures *bool `type:"boolean"` // A list of VPC security groups to associate with this DB instance. @@ -51482,6 +54573,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *RestoreDBInstanceFromS3Input) SetDedicatedLogVolume(v bool) *RestoreDBInstanceFromS3Input { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *RestoreDBInstanceFromS3Input) SetDeletionProtection(v bool) *RestoreDBInstanceFromS3Input { s.DeletionProtection = &v @@ -51751,8 +54848,8 @@ // growth. AllocatedStorage *int64 `type:"integer"` - // A value that indicates whether minor version upgrades are applied automatically - // to the DB instance during the maintenance window. + // Specifies whether minor version upgrades are applied automatically to the + // DB instance during the maintenance window. // // This setting doesn't apply to RDS Custom. AutoMinorVersionUpgrade *bool `type:"boolean"` @@ -51761,25 +54858,32 @@ // // Default: A random, system-chosen Availability Zone. // - // Constraint: You can't specify the AvailabilityZone parameter if the DB instance - // is a Multi-AZ deployment. + // Constraints: + // + // * You can't specify the AvailabilityZone parameter if the DB instance + // is a Multi-AZ deployment. // // Example: us-east-1a AvailabilityZone *string `type:"string"` - // Specifies where automated backups and manual snapshots are stored for the - // restored DB instance. + // The location for storing automated backups and manual snapshots for the restored + // DB instance. // - // Possible values are outposts (Amazon Web Services Outposts) and region (Amazon - // Web Services Region). The default is region. + // Valid Values: + // + // * outposts (Amazon Web Services Outposts) + // + // * region (Amazon Web Services Region) + // + // Default: region // // For more information, see Working with Amazon RDS on Amazon Web Services // Outposts (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) // in the Amazon RDS User Guide. BackupTarget *string `type:"string"` - // A value that indicates whether to copy all tags from the restored DB instance - // to snapshots of the DB instance. By default, tags are not copied. + // Specifies whether to copy all tags from the restored DB instance to snapshots + // of the DB instance. By default, tags are not copied. CopyTagsToSnapshot *bool `type:"boolean"` // The instance profile associated with the underlying Amazon EC2 instance of @@ -51806,13 +54910,20 @@ // classes, and availability for your engine, see DB Instance Class (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) // in the Amazon RDS User Guide. // - // Default: The same DBInstanceClass as the original DB instance. + // Default: The same DB instance class as the original DB instance. DBInstanceClass *string `type:"string"` // The database name for the restored DB instance. // - // This parameter isn't supported for the MySQL or MariaDB engines. It also - // doesn't apply to RDS Custom. + // This parameter doesn't apply to the following DB instances: + // + // * RDS Custom + // + // * RDS for Db2 + // + // * RDS for MariaDB + // + // * RDS for MySQL DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. @@ -51824,7 +54935,7 @@ // // Constraints: // - // * If supplied, must match the name of an existing DBParameterGroup. + // * If supplied, must match the name of an existing DB parameter group. // // * Must be 1 to 255 letters, numbers, or hyphens. // @@ -51835,21 +54946,26 @@ // The DB subnet group name to use for the new instance. // - // Constraints: If supplied, must match the name of an existing DBSubnetGroup. + // Constraints: + // + // * If supplied, must match the name of an existing DB subnet group. // // Example: mydbsubnetgroup DBSubnetGroupName *string `type:"string"` - // A value that indicates whether the DB instance has deletion protection enabled. - // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection isn't enabled. For more information, see Deleting a DB - // Instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). + // Specifies whether to enable a dedicated log volume (DLV) for the DB instance. + DedicatedLogVolume *bool `type:"boolean"` + + // Specifies whether the DB instance has deletion protection enabled. The database + // can't be deleted when deletion protection is enabled. By default, deletion + // protection isn't enabled. For more information, see Deleting a DB Instance + // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). DeletionProtection *bool `type:"boolean"` - // Specify the Active Directory directory ID to restore the DB instance in. - // Create the domain before running this command. Currently, you can create - // only the MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances - // in an Active Directory Domain. + // The Active Directory directory ID to restore the DB instance in. Create the + // domain before running this command. Currently, you can create only the MySQL, + // Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory + // Domain. // // This setting doesn't apply to RDS Custom. // @@ -51912,8 +55028,8 @@ // This setting doesn't apply to RDS Custom. EnableCloudwatchLogsExports []*string `type:"list"` - // A value that indicates whether to enable a customer-owned IP address (CoIP) - // for an RDS on Outposts DB instance. + // Specifies whether to enable a customer-owned IP address (CoIP) for an RDS + // on Outposts DB instance. // // A CoIP provides local or external connectivity to resources in your Outpost // subnets through your on-premises network. For some use cases, a CoIP can @@ -51930,9 +55046,9 @@ // in the Amazon Web Services Outposts User Guide. EnableCustomerOwnedIp *bool `type:"boolean"` - // A value that indicates whether to enable mapping of Amazon Web Services Identity - // and Access Management (IAM) accounts to database accounts. By default, mapping - // isn't enabled. + // Specifies whether to enable mapping of Amazon Web Services Identity and Access + // Management (IAM) accounts to database accounts. By default, mapping isn't + // enabled. // // This setting doesn't apply to RDS Custom. // @@ -51945,11 +55061,11 @@ // // This setting doesn't apply to RDS Custom. // - // Default: The same as source + // Valid Values: // - // Constraint: Must be compatible with the engine of the source + // * db2-ae // - // Valid Values: + // * db2-se // // * mariadb // @@ -51972,25 +55088,31 @@ // * sqlserver-ex // // * sqlserver-web + // + // Default: The same as source + // + // Constraints: + // + // * Must be compatible with the engine of the source. Engine *string `type:"string"` - // The amount of Provisioned IOPS (input/output operations per second) to be - // initially allocated for the DB instance. + // The amount of Provisioned IOPS (input/output operations per second) to initially + // allocate for the DB instance. // - // Constraints: Must be an integer greater than 1000. + // This setting doesn't apply to SQL Server. // - // SQL Server + // Constraints: // - // Setting the IOPS value for the SQL Server database engine isn't supported. + // * Must be an integer greater than 1000. Iops *int64 `type:"integer"` - // License model information for the restored DB instance. + // The license model information for the restored DB instance. // // This setting doesn't apply to RDS Custom. // - // Default: Same as source. + // Valid Values: license-included | bring-your-own-license | general-public-license // - // Valid values: license-included | bring-your-own-license | general-public-license + // Default: Same as the source. LicenseModel *string `type:"string"` // The upper limit in gibibytes (GiB) to which Amazon RDS can automatically @@ -52004,31 +55126,33 @@ // This setting doesn't apply to RDS Custom. MaxAllocatedStorage *int64 `type:"integer"` - // A value that indicates whether the DB instance is a Multi-AZ deployment. + // Secifies whether the DB instance is a Multi-AZ deployment. // // This setting doesn't apply to RDS Custom. // - // Constraint: You can't specify the AvailabilityZone parameter if the DB instance - // is a Multi-AZ deployment. + // Constraints: + // + // * You can't specify the AvailabilityZone parameter if the DB instance + // is a Multi-AZ deployment. MultiAZ *bool `type:"boolean"` // The network type of the DB instance. // - // Valid values: - // - // * IPV4 - // - // * DUAL - // // The network type is determined by the DBSubnetGroup specified for the DB // instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 // and the IPv6 protocols (DUAL). // // For more information, see Working with a DB instance in a VPC (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html) // in the Amazon RDS User Guide. + // + // Valid Values: + // + // * IPV4 + // + // * DUAL NetworkType *string `type:"string"` - // The name of the option group to be used for the restored DB instance. + // The name of the option group to use for the restored DB instance. // // Permanent options, such as the TDE option for Oracle Advanced Security TDE, // can't be removed from an option group, and that option group can't be removed @@ -52039,9 +55163,11 @@ // The port number on which the database accepts connections. // - // Constraints: Value must be 1150-65535 - // // Default: The same port as the original DB instance. + // + // Constraints: + // + // * The value must be 1150-65535. Port *int64 `type:"integer"` // The number of CPU cores and the number of threads per core for the DB instance @@ -52050,7 +55176,7 @@ // This setting doesn't apply to RDS Custom. ProcessorFeatures []*ProcessorFeature `locationNameList:"ProcessorFeature" type:"list"` - // A value that indicates whether the DB instance is publicly accessible. + // Specifies whether the DB instance is publicly accessible. // // When the DB cluster is publicly accessible, its Domain Name System (DNS) // endpoint resolves to the private IP address from within the DB cluster's @@ -52067,19 +55193,19 @@ // The date and time to restore from. // - // Valid Values: Value must be a time in Universal Coordinated Time (UTC) format - // // Constraints: // - // * Must be before the latest restorable time for the DB instance + // * Must be a time in Universal Coordinated Time (UTC) format. // - // * Can't be specified if the UseLatestRestorableTime parameter is enabled + // * Must be before the latest restorable time for the DB instance. + // + // * Can't be specified if the UseLatestRestorableTime parameter is enabled. // // Example: 2009-09-07T23:45:00Z RestoreTime *time.Time `type:"timestamp"` // The Amazon Resource Name (ARN) of the replicated automated backups from which - // to restore, for example, arn:aws:rds:useast-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE. + // to restore, for example, arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE. // // This setting doesn't apply to RDS Custom. SourceDBInstanceAutomatedBackupsArn *string `type:"string"` @@ -52094,33 +55220,36 @@ // The resource ID of the source DB instance from which to restore. SourceDbiResourceId *string `type:"string"` - // Specifies the storage throughput value for the DB instance. + // The storage throughput value for the DB instance. // // This setting doesn't apply to RDS Custom or Amazon Aurora. StorageThroughput *int64 `type:"integer"` - // Specifies the storage type to be associated with the DB instance. + // The storage type to associate with the DB instance. // - // Valid values: gp2 | gp3 | io1 | standard + // Valid Values: gp2 | gp3 | io1 | standard // - // If you specify io1 or gp3, you must also include a value for the Iops parameter. + // Default: io1, if the Iops parameter is specified. Otherwise, gp2. // - // Default: io1 if the Iops parameter is specified, otherwise gp2 + // Constraints: + // + // * If you specify io1 or gp3, you must also include a value for the Iops + // parameter. StorageType *string `type:"string"` // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) // in the Amazon RDS User Guide. Tags []*Tag `locationNameList:"Tag" type:"list"` - // The name of the new DB instance to be created. + // The name of the new DB instance to create. // // Constraints: // - // * Must contain from 1 to 63 letters, numbers, or hyphens + // * Must contain from 1 to 63 letters, numbers, or hyphens. // - // * First character must be a letter + // * First character must be a letter. // - // * Can't end with a hyphen or contain two consecutive hyphens + // * Can't end with a hyphen or contain two consecutive hyphens. // // TargetDBInstanceIdentifier is a required field TargetDBInstanceIdentifier *string `type:"string" required:"true"` @@ -52136,17 +55265,18 @@ // This setting doesn't apply to RDS Custom. TdeCredentialPassword *string `type:"string"` - // A value that indicates whether the DB instance class of the DB instance uses - // its default processor features. + // Specifies whether the DB instance class of the DB instance uses its default + // processor features. // // This setting doesn't apply to RDS Custom. UseDefaultProcessorFeatures *bool `type:"boolean"` - // A value that indicates whether the DB instance is restored from the latest - // backup time. By default, the DB instance isn't restored from the latest backup - // time. + // Specifies whether the DB instance is restored from the latest backup time. + // By default, the DB instance isn't restored from the latest backup time. + // + // Constraints: // - // Constraints: Can't be specified if the RestoreTime parameter is provided. + // * Can't be specified if the RestoreTime parameter is provided. UseLatestRestorableTime *bool `type:"boolean"` // A list of EC2 VPC security groups to associate with this DB instance. @@ -52246,6 +55376,12 @@ return s } +// SetDedicatedLogVolume sets the DedicatedLogVolume field's value. +func (s *RestoreDBInstanceToPointInTimeInput) SetDedicatedLogVolume(v bool) *RestoreDBInstanceToPointInTimeInput { + s.DedicatedLogVolume = &v + return s +} + // SetDeletionProtection sets the DeletionProtection field's value. func (s *RestoreDBInstanceToPointInTimeInput) SetDeletionProtection(v bool) *RestoreDBInstanceToPointInTimeInput { s.DeletionProtection = &v @@ -52654,9 +55790,9 @@ type ScalingConfiguration struct { _ struct{} `type:"structure"` - // A value that indicates whether to allow or disallow automatic pause for an - // Aurora DB cluster in serverless DB engine mode. A DB cluster can be paused - // only when it's idle (it has no connections). + // Indicates whether to allow or disallow automatic pause for an Aurora DB cluster + // in serverless DB engine mode. A DB cluster can be paused only when it's idle + // (it has no connections). // // If a DB cluster is paused for more than seven days, the DB cluster might // be backed up with a snapshot. In this case, the DB cluster is restored when @@ -52776,8 +55912,8 @@ type ScalingConfigurationInfo struct { _ struct{} `type:"structure"` - // A value that indicates whether automatic pause is allowed for the Aurora - // DB cluster in serverless DB engine mode. + // Indicates whether automatic pause is allowed for the Aurora DB cluster in + // serverless DB engine mode. // // When the value is set to false for an Aurora Serverless v1 DB cluster, the // DB cluster automatically resumes. @@ -52974,8 +56110,8 @@ // The status of the source Amazon Web Services Region. Status *string `type:"string"` - // Whether the source Amazon Web Services Region supports replicating automated - // backups to the current Amazon Web Services Region. + // Indicates whether the source Amazon Web Services Region supports replicating + // automated backups to the current Amazon Web Services Region. SupportsDBInstanceAutomatedBackupsReplication *bool `type:"boolean"` } @@ -53529,8 +56665,10 @@ type StartExportTaskInput struct { _ struct{} `type:"structure"` - // The data to be exported from the snapshot or cluster. If this parameter is - // not provided, all of the data is exported. Valid values are the following: + // The data to be exported from the snapshot or cluster. If this parameter isn't + // provided, all of the data is exported. + // + // Valid Values: // // * database - Export all the data from a specified database. // @@ -53710,11 +56848,13 @@ // Contains the details of a snapshot or cluster export to Amazon S3. // -// This data type is used as a response element in the DescribeExportTasks action. +// This data type is used as a response element in the DescribeExportTasks operation. type StartExportTaskOutput struct { _ struct{} `type:"structure"` - // The data exported from the snapshot or cluster. Valid values are the following: + // The data exported from the snapshot or cluster. + // + // Valid Values: // // * database - Export all the data from a specified database. // @@ -53750,14 +56890,14 @@ // The progress of the snapshot or cluster export task as a percentage. PercentProgress *int64 `type:"integer"` - // The Amazon S3 bucket that the snapshot or cluster is exported to. + // The Amazon S3 bucket where the snapshot or cluster is exported to. S3Bucket *string `type:"string"` // The Amazon S3 bucket prefix that is the file name and path of the exported // data. S3Prefix *string `type:"string"` - // The time that the snapshot was created. + // The time when the snapshot was created. SnapshotTime *time.Time `type:"timestamp"` // The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon @@ -53782,10 +56922,10 @@ // * STARTING Status *string `type:"string"` - // The time that the snapshot or cluster export task ended. + // The time when the snapshot or cluster export task ended. TaskEndTime *time.Time `type:"timestamp"` - // The time that the snapshot or cluster export task started. + // The time when the snapshot or cluster export task started. TaskStartTime *time.Time `type:"timestamp"` // The total amount of data exported, in gigabytes. @@ -54831,6 +57971,195 @@ return s } +// A tenant database in the DB instance. This data type is an element in the +// response to the DescribeTenantDatabases action. +type TenantDatabase struct { + _ struct{} `type:"structure"` + + // The character set of the tenant database. + CharacterSetName *string `type:"string"` + + // The ID of the DB instance that contains the tenant database. + DBInstanceIdentifier *string `type:"string"` + + // The Amazon Web Services Region-unique, immutable identifier for the DB instance. + DbiResourceId *string `type:"string"` + + // Specifies whether deletion protection is enabled for the DB instance. + DeletionProtection *bool `type:"boolean"` + + // The master username of the tenant database. + MasterUsername *string `type:"string"` + + // The NCHAR character set name of the tenant database. + NcharCharacterSetName *string `type:"string"` + + // Information about pending changes for a tenant database. + PendingModifiedValues *TenantDatabasePendingModifiedValues `type:"structure"` + + // The status of the tenant database. + Status *string `type:"string"` + + // A list of tags. For more information, see Tagging Amazon RDS Resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html) + // in the Amazon RDS User Guide. + TagList []*Tag `locationNameList:"Tag" type:"list"` + + // The database name of the tenant database. + TenantDBName *string `type:"string"` + + // The Amazon Resource Name (ARN) for the tenant database. + TenantDatabaseARN *string `type:"string"` + + // The creation time of the tenant database. + TenantDatabaseCreateTime *time.Time `type:"timestamp"` + + // The Amazon Web Services Region-unique, immutable identifier for the tenant + // database. + TenantDatabaseResourceId *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 TenantDatabase) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TenantDatabase) GoString() string { + return s.String() +} + +// SetCharacterSetName sets the CharacterSetName field's value. +func (s *TenantDatabase) SetCharacterSetName(v string) *TenantDatabase { + s.CharacterSetName = &v + return s +} + +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *TenantDatabase) SetDBInstanceIdentifier(v string) *TenantDatabase { + s.DBInstanceIdentifier = &v + return s +} + +// SetDbiResourceId sets the DbiResourceId field's value. +func (s *TenantDatabase) SetDbiResourceId(v string) *TenantDatabase { + s.DbiResourceId = &v + return s +} + +// SetDeletionProtection sets the DeletionProtection field's value. +func (s *TenantDatabase) SetDeletionProtection(v bool) *TenantDatabase { + s.DeletionProtection = &v + return s +} + +// SetMasterUsername sets the MasterUsername field's value. +func (s *TenantDatabase) SetMasterUsername(v string) *TenantDatabase { + s.MasterUsername = &v + return s +} + +// SetNcharCharacterSetName sets the NcharCharacterSetName field's value. +func (s *TenantDatabase) SetNcharCharacterSetName(v string) *TenantDatabase { + s.NcharCharacterSetName = &v + return s +} + +// SetPendingModifiedValues sets the PendingModifiedValues field's value. +func (s *TenantDatabase) SetPendingModifiedValues(v *TenantDatabasePendingModifiedValues) *TenantDatabase { + s.PendingModifiedValues = v + return s +} + +// SetStatus sets the Status field's value. +func (s *TenantDatabase) SetStatus(v string) *TenantDatabase { + s.Status = &v + return s +} + +// SetTagList sets the TagList field's value. +func (s *TenantDatabase) SetTagList(v []*Tag) *TenantDatabase { + s.TagList = v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *TenantDatabase) SetTenantDBName(v string) *TenantDatabase { + s.TenantDBName = &v + return s +} + +// SetTenantDatabaseARN sets the TenantDatabaseARN field's value. +func (s *TenantDatabase) SetTenantDatabaseARN(v string) *TenantDatabase { + s.TenantDatabaseARN = &v + return s +} + +// SetTenantDatabaseCreateTime sets the TenantDatabaseCreateTime field's value. +func (s *TenantDatabase) SetTenantDatabaseCreateTime(v time.Time) *TenantDatabase { + s.TenantDatabaseCreateTime = &v + return s +} + +// SetTenantDatabaseResourceId sets the TenantDatabaseResourceId field's value. +func (s *TenantDatabase) SetTenantDatabaseResourceId(v string) *TenantDatabase { + s.TenantDatabaseResourceId = &v + return s +} + +// A response element in the ModifyTenantDatabase operation that describes changes +// that will be applied. Specific changes are identified by subelements. +type TenantDatabasePendingModifiedValues struct { + _ struct{} `type:"structure"` + + // The master password for the tenant database. + // + // MasterUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TenantDatabasePendingModifiedValues's + // String and GoString methods. + MasterUserPassword *string `type:"string" sensitive:"true"` + + // The name of the tenant database. + TenantDBName *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 TenantDatabasePendingModifiedValues) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TenantDatabasePendingModifiedValues) GoString() string { + return s.String() +} + +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *TenantDatabasePendingModifiedValues) SetMasterUserPassword(v string) *TenantDatabasePendingModifiedValues { + s.MasterUserPassword = &v + return s +} + +// SetTenantDBName sets the TenantDBName field's value. +func (s *TenantDatabasePendingModifiedValues) SetTenantDBName(v string) *TenantDatabasePendingModifiedValues { + s.TenantDBName = &v + return s +} + // A time zone associated with a DBInstance or a DBSnapshot. This data type // is an element in the response to the DescribeDBInstances, the DescribeDBSnapshots, // and the DescribeDBEngineVersions actions. @@ -54869,8 +58198,8 @@ type UpgradeTarget struct { _ struct{} `type:"structure"` - // A value that indicates whether the target version is applied to any source - // DB instances that have AutoMinorVersionUpgrade set to true. + // Indicates whether the target version is applied to any source DB instances + // that have AutoMinorVersionUpgrade set to true. AutoUpgrade *bool `type:"boolean"` // The version of the database engine that a DB instance can be upgraded to. @@ -54882,30 +58211,34 @@ // The version number of the upgrade target database engine. EngineVersion *string `type:"string"` - // A value that indicates whether upgrading to the target version requires upgrading - // the major version of the database engine. + // Indicates whether upgrading to the target version requires upgrading the + // major version of the database engine. IsMajorVersionUpgrade *bool `type:"boolean"` // A list of the supported DB engine modes for the target engine version. SupportedEngineModes []*string `type:"list"` - // A value that indicates whether you can use Babelfish for Aurora PostgreSQL - // with the target engine version. + // Indicates whether you can use Babelfish for Aurora PostgreSQL with the target + // engine version. SupportsBabelfish *bool `type:"boolean"` - // A value that indicates whether you can use Aurora global databases with the - // target engine version. + // Indicates whether you can use Aurora global databases with the target engine + // version. SupportsGlobalDatabases *bool `type:"boolean"` - // A value that indicates whether the target engine version supports forwarding - // write operations from reader DB instances to the writer DB instance in the - // DB cluster. By default, write operations aren't allowed on reader DB instances. + // Indicates whether the DB engine version supports zero-ETL integrations with + // Amazon Redshift. + SupportsIntegrations *bool `type:"boolean"` + + // Indicates whether the target engine version supports forwarding write operations + // from reader DB instances to the writer DB instance in the DB cluster. By + // default, write operations aren't allowed on reader DB instances. // // Valid for: Aurora DB clusters only SupportsLocalWriteForwarding *bool `type:"boolean"` - // A value that indicates whether you can use Aurora parallel query with the - // target engine version. + // Indicates whether you can use Aurora parallel query with the target engine + // version. SupportsParallelQuery *bool `type:"boolean"` } @@ -54975,6 +58308,12 @@ return s } +// SetSupportsIntegrations sets the SupportsIntegrations field's value. +func (s *UpgradeTarget) SetSupportsIntegrations(v bool) *UpgradeTarget { + s.SupportsIntegrations = &v + return s +} + // SetSupportsLocalWriteForwarding sets the SupportsLocalWriteForwarding field's value. func (s *UpgradeTarget) SetSupportsLocalWriteForwarding(v bool) *UpgradeTarget { s.SupportsLocalWriteForwarding = &v @@ -55003,9 +58342,10 @@ // log in as a specific database user. Description *string `type:"string"` - // Whether to require or disallow Amazon Web Services Identity and Access Management - // (IAM) authentication for connections to the proxy. The ENABLED value is valid - // only for proxies with RDS for Microsoft SQL Server. + // A value that indicates whether to require or disallow Amazon Web Services + // Identity and Access Management (IAM) authentication for connections to the + // proxy. The ENABLED value is valid only for proxies with RDS for Microsoft + // SQL Server. IAMAuth *string `type:"string" enum:"IAMAuthMode"` // The Amazon Resource Name (ARN) representing the secret that the proxy uses @@ -55164,6 +58504,9 @@ // Valid storage options for your DB instance. Storage []*ValidStorageOptions `locationNameList:"ValidStorageOptions" type:"list"` + // Indicates whether a DB instance supports using a dedicated log volume (DLV). + SupportsDedicatedLogVolume *bool `type:"boolean"` + // Valid processor features for your DB instance. ValidProcessorFeatures []*AvailableProcessorFeature `locationNameList:"AvailableProcessorFeature" type:"list"` } @@ -55192,6 +58535,12 @@ return s } +// SetSupportsDedicatedLogVolume sets the SupportsDedicatedLogVolume field's value. +func (s *ValidDBInstanceModificationsMessage) SetSupportsDedicatedLogVolume(v bool) *ValidDBInstanceModificationsMessage { + s.SupportsDedicatedLogVolume = &v + return s +} + // SetValidProcessorFeatures sets the ValidProcessorFeatures field's value. func (s *ValidDBInstanceModificationsMessage) SetValidProcessorFeatures(v []*AvailableProcessorFeature) *ValidDBInstanceModificationsMessage { s.ValidProcessorFeatures = v @@ -55226,8 +58575,8 @@ // The valid storage types for your DB instance. For example: gp2, gp3, io1. StorageType *string `type:"string"` - // Whether or not Amazon RDS can automatically scale storage for DB instances - // that use the new instance class. + // Indicates whether or not Amazon RDS can automatically scale storage for DB + // instances that use the new instance class. SupportsStorageAutoscaling *bool `type:"boolean"` } @@ -55687,6 +59036,42 @@ } } +const ( + // IntegrationStatusCreating is a IntegrationStatus enum value + IntegrationStatusCreating = "creating" + + // IntegrationStatusActive is a IntegrationStatus enum value + IntegrationStatusActive = "active" + + // IntegrationStatusModifying is a IntegrationStatus enum value + IntegrationStatusModifying = "modifying" + + // IntegrationStatusFailed is a IntegrationStatus enum value + IntegrationStatusFailed = "failed" + + // IntegrationStatusDeleting is a IntegrationStatus enum value + IntegrationStatusDeleting = "deleting" + + // IntegrationStatusSyncing is a IntegrationStatus enum value + IntegrationStatusSyncing = "syncing" + + // IntegrationStatusNeedsAttention is a IntegrationStatus enum value + IntegrationStatusNeedsAttention = "needs_attention" +) + +// IntegrationStatus_Values returns all elements of the IntegrationStatus enum +func IntegrationStatus_Values() []string { + return []string{ + IntegrationStatusCreating, + IntegrationStatusActive, + IntegrationStatusModifying, + IntegrationStatusFailed, + IntegrationStatusDeleting, + IntegrationStatusSyncing, + IntegrationStatusNeedsAttention, + } +} + const ( // LocalWriteForwardingStatusEnabled is a LocalWriteForwardingStatus enum value LocalWriteForwardingStatusEnabled = "enabled" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rds/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/rds/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rds/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rds/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -10,12 +10,12 @@ // up developers to focus on what makes their applications and businesses unique. // // Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, -// Microsoft SQL Server, Oracle, or Amazon Aurora database server. These capabilities -// mean that the code, applications, and tools you already use today with your -// existing databases work with Amazon RDS without modification. Amazon RDS -// automatically backs up your database and maintains the database software -// that powers your DB instance. Amazon RDS is flexible: you can scale your -// DB instance's compute resources and storage capacity to meet your application's +// Microsoft SQL Server, Oracle, Db2, or Amazon Aurora database server. These +// capabilities mean that the code, applications, and tools you already use +// today with your existing databases work with Amazon RDS without modification. +// Amazon RDS automatically backs up your database and maintains the database +// software that powers your DB instance. Amazon RDS is flexible: you can scale +// your DB instance's compute resources and storage capacity to meet your application's // demand. As with all Amazon Web Services, there are no up-front investments, // and you pay only for the resources you use. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rds/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/rds/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rds/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rds/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -350,6 +350,12 @@ // DBSnapshotIdentifier doesn't refer to an existing DB snapshot. ErrCodeDBSnapshotNotFoundFault = "DBSnapshotNotFound" + // ErrCodeDBSnapshotTenantDatabaseNotFoundFault for service response error code + // "DBSnapshotTenantDatabaseNotFoundFault". + // + // The specified snapshot tenant database wasn't found. + ErrCodeDBSnapshotTenantDatabaseNotFoundFault = "DBSnapshotTenantDatabaseNotFoundFault" + // ErrCodeDBSubnetGroupAlreadyExistsFault for service response error code // "DBSubnetGroupAlreadyExists". // @@ -494,6 +500,34 @@ // Availability Zones that have more storage available. ErrCodeInsufficientStorageClusterCapacityFault = "InsufficientStorageClusterCapacity" + // ErrCodeIntegrationAlreadyExistsFault for service response error code + // "IntegrationAlreadyExistsFault". + // + // The integration you are trying to create already exists. + ErrCodeIntegrationAlreadyExistsFault = "IntegrationAlreadyExistsFault" + + // ErrCodeIntegrationConflictOperationFault for service response error code + // "IntegrationConflictOperationFault". + // + // A conflicting conditional operation is currently in progress against this + // resource. Typically occurs when there are multiple requests being made to + // the same resource at the same time, and these requests conflict with each + // other. + ErrCodeIntegrationConflictOperationFault = "IntegrationConflictOperationFault" + + // ErrCodeIntegrationNotFoundFault for service response error code + // "IntegrationNotFoundFault". + // + // The specified integration could not be found. + ErrCodeIntegrationNotFoundFault = "IntegrationNotFoundFault" + + // ErrCodeIntegrationQuotaExceededFault for service response error code + // "IntegrationQuotaExceededFault". + // + // You can't crate any more zero-ETL integrations because the quota has been + // reached. + ErrCodeIntegrationQuotaExceededFault = "IntegrationQuotaExceededFault" + // ErrCodeInvalidBlueGreenDeploymentStateFault for service response error code // "InvalidBlueGreenDeploymentStateFault". // @@ -638,6 +672,12 @@ // operation. ErrCodeInvalidGlobalClusterStateFault = "InvalidGlobalClusterStateFault" + // ErrCodeInvalidIntegrationStateFault for service response error code + // "InvalidIntegrationStateFault". + // + // The integration is in an invalid state and can't perform the requested operation. + ErrCodeInvalidIntegrationStateFault = "InvalidIntegrationStateFault" + // ErrCodeInvalidOptionGroupStateFault for service response error code // "InvalidOptionGroupStateFault". // @@ -838,4 +878,24 @@ // // The subscription name does not exist. ErrCodeSubscriptionNotFoundFault = "SubscriptionNotFound" + + // ErrCodeTenantDatabaseAlreadyExistsFault for service response error code + // "TenantDatabaseAlreadyExists". + // + // You attempted to either create a tenant database that already exists or modify + // a tenant database to use the name of an existing tenant database. + ErrCodeTenantDatabaseAlreadyExistsFault = "TenantDatabaseAlreadyExists" + + // ErrCodeTenantDatabaseNotFoundFault for service response error code + // "TenantDatabaseNotFound". + // + // The specified tenant database wasn't found in the DB instance. + ErrCodeTenantDatabaseNotFoundFault = "TenantDatabaseNotFound" + + // ErrCodeTenantDatabaseQuotaExceededFault for service response error code + // "TenantDatabaseQuotaExceeded". + // + // You attempted to create more tenant databases than are permitted in your + // Amazon Web Services account. + ErrCodeTenantDatabaseQuotaExceededFault = "TenantDatabaseQuotaExceeded" ) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rds/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/rds/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rds/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rds/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -157,6 +157,12 @@ fmt.Println(rds.ErrCodeDBProxyTargetGroupNotFoundFault, aerr.Error()) case rds.ErrCodeBlueGreenDeploymentNotFoundFault: fmt.Println(rds.ErrCodeBlueGreenDeploymentNotFoundFault, aerr.Error()) + case rds.ErrCodeIntegrationNotFoundFault: + fmt.Println(rds.ErrCodeIntegrationNotFoundFault, aerr.Error()) + case rds.ErrCodeTenantDatabaseNotFoundFault: + fmt.Println(rds.ErrCodeTenantDatabaseNotFoundFault, aerr.Error()) + case rds.ErrCodeDBSnapshotTenantDatabaseNotFoundFault: + fmt.Println(rds.ErrCodeDBSnapshotTenantDatabaseNotFoundFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -590,6 +596,8 @@ fmt.Println(rds.ErrCodeInvalidVPCNetworkStateFault, aerr.Error()) case rds.ErrCodeInvalidDBClusterStateFault: fmt.Println(rds.ErrCodeInvalidDBClusterStateFault, aerr.Error()) + case rds.ErrCodeInvalidDBSubnetGroupFault: + fmt.Println(rds.ErrCodeInvalidDBSubnetGroupFault, aerr.Error()) case rds.ErrCodeInvalidDBSubnetGroupStateFault: fmt.Println(rds.ErrCodeInvalidDBSubnetGroupStateFault, aerr.Error()) case rds.ErrCodeInvalidSubnet: @@ -612,6 +620,8 @@ fmt.Println(rds.ErrCodeInvalidGlobalClusterStateFault, aerr.Error()) case rds.ErrCodeDomainNotFoundFault: fmt.Println(rds.ErrCodeDomainNotFoundFault, aerr.Error()) + case rds.ErrCodeOptionGroupNotFoundFault: + fmt.Println(rds.ErrCodeOptionGroupNotFoundFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -659,6 +669,8 @@ fmt.Println(rds.ErrCodeInvalidVPCNetworkStateFault, aerr.Error()) case rds.ErrCodeInvalidDBClusterStateFault: fmt.Println(rds.ErrCodeInvalidDBClusterStateFault, aerr.Error()) + case rds.ErrCodeInvalidDBSubnetGroupFault: + fmt.Println(rds.ErrCodeInvalidDBSubnetGroupFault, aerr.Error()) case rds.ErrCodeInvalidDBSubnetGroupStateFault: fmt.Println(rds.ErrCodeInvalidDBSubnetGroupStateFault, aerr.Error()) case rds.ErrCodeInvalidSubnet: @@ -681,6 +693,8 @@ fmt.Println(rds.ErrCodeInvalidGlobalClusterStateFault, aerr.Error()) case rds.ErrCodeDomainNotFoundFault: fmt.Println(rds.ErrCodeDomainNotFoundFault, aerr.Error()) + case rds.ErrCodeOptionGroupNotFoundFault: + fmt.Println(rds.ErrCodeOptionGroupNotFoundFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -868,6 +882,8 @@ fmt.Println(rds.ErrCodeNetworkTypeNotSupported, aerr.Error()) case rds.ErrCodeCertificateNotFoundFault: fmt.Println(rds.ErrCodeCertificateNotFoundFault, aerr.Error()) + case rds.ErrCodeTenantDatabaseQuotaExceededFault: + fmt.Println(rds.ErrCodeTenantDatabaseQuotaExceededFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -940,6 +956,8 @@ fmt.Println(rds.ErrCodeDomainNotFoundFault, aerr.Error()) case rds.ErrCodeNetworkTypeNotSupported: fmt.Println(rds.ErrCodeNetworkTypeNotSupported, aerr.Error()) + case rds.ErrCodeTenantDatabaseQuotaExceededFault: + fmt.Println(rds.ErrCodeTenantDatabaseQuotaExceededFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2847,6 +2865,12 @@ fmt.Println(rds.ErrCodeDBProxyTargetGroupNotFoundFault, aerr.Error()) case rds.ErrCodeBlueGreenDeploymentNotFoundFault: fmt.Println(rds.ErrCodeBlueGreenDeploymentNotFoundFault, aerr.Error()) + case rds.ErrCodeIntegrationNotFoundFault: + fmt.Println(rds.ErrCodeIntegrationNotFoundFault, aerr.Error()) + case rds.ErrCodeTenantDatabaseNotFoundFault: + fmt.Println(rds.ErrCodeTenantDatabaseNotFoundFault, aerr.Error()) + case rds.ErrCodeDBSnapshotTenantDatabaseNotFoundFault: + fmt.Println(rds.ErrCodeDBSnapshotTenantDatabaseNotFoundFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2969,6 +2993,8 @@ fmt.Println(rds.ErrCodeDomainNotFoundFault, aerr.Error()) case rds.ErrCodeStorageTypeNotAvailableFault: fmt.Println(rds.ErrCodeStorageTypeNotAvailableFault, aerr.Error()) + case rds.ErrCodeOptionGroupNotFoundFault: + fmt.Println(rds.ErrCodeOptionGroupNotFoundFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -3161,6 +3187,8 @@ fmt.Println(rds.ErrCodeInvalidDBClusterStateFault, aerr.Error()) case rds.ErrCodeNetworkTypeNotSupported: fmt.Println(rds.ErrCodeNetworkTypeNotSupported, aerr.Error()) + case rds.ErrCodeTenantDatabaseQuotaExceededFault: + fmt.Println(rds.ErrCodeTenantDatabaseQuotaExceededFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -3703,6 +3731,12 @@ fmt.Println(rds.ErrCodeDBProxyTargetGroupNotFoundFault, aerr.Error()) case rds.ErrCodeBlueGreenDeploymentNotFoundFault: fmt.Println(rds.ErrCodeBlueGreenDeploymentNotFoundFault, aerr.Error()) + case rds.ErrCodeIntegrationNotFoundFault: + fmt.Println(rds.ErrCodeIntegrationNotFoundFault, aerr.Error()) + case rds.ErrCodeTenantDatabaseNotFoundFault: + fmt.Println(rds.ErrCodeTenantDatabaseNotFoundFault, aerr.Error()) + case rds.ErrCodeDBSnapshotTenantDatabaseNotFoundFault: + fmt.Println(rds.ErrCodeDBSnapshotTenantDatabaseNotFoundFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -4044,6 +4078,8 @@ fmt.Println(rds.ErrCodeNetworkTypeNotSupported, aerr.Error()) case rds.ErrCodeDBClusterSnapshotNotFoundFault: fmt.Println(rds.ErrCodeDBClusterSnapshotNotFoundFault, aerr.Error()) + case rds.ErrCodeTenantDatabaseQuotaExceededFault: + fmt.Println(rds.ErrCodeTenantDatabaseQuotaExceededFault, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -4119,6 +4155,8 @@ fmt.Println(rds.ErrCodeDBInstanceAutomatedBackupNotFoundFault, aerr.Error()) case rds.ErrCodeNetworkTypeNotSupported: fmt.Println(rds.ErrCodeNetworkTypeNotSupported, aerr.Error()) + case rds.ErrCodeTenantDatabaseQuotaExceededFault: + fmt.Println(rds.ErrCodeTenantDatabaseQuotaExceededFault, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rds/rdsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/rds/rdsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rds/rdsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rds/rdsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -176,10 +176,18 @@ CreateGlobalClusterWithContext(aws.Context, *rds.CreateGlobalClusterInput, ...request.Option) (*rds.CreateGlobalClusterOutput, error) CreateGlobalClusterRequest(*rds.CreateGlobalClusterInput) (*request.Request, *rds.CreateGlobalClusterOutput) + CreateIntegration(*rds.CreateIntegrationInput) (*rds.CreateIntegrationOutput, error) + CreateIntegrationWithContext(aws.Context, *rds.CreateIntegrationInput, ...request.Option) (*rds.CreateIntegrationOutput, error) + CreateIntegrationRequest(*rds.CreateIntegrationInput) (*request.Request, *rds.CreateIntegrationOutput) + CreateOptionGroup(*rds.CreateOptionGroupInput) (*rds.CreateOptionGroupOutput, error) CreateOptionGroupWithContext(aws.Context, *rds.CreateOptionGroupInput, ...request.Option) (*rds.CreateOptionGroupOutput, error) CreateOptionGroupRequest(*rds.CreateOptionGroupInput) (*request.Request, *rds.CreateOptionGroupOutput) + CreateTenantDatabase(*rds.CreateTenantDatabaseInput) (*rds.CreateTenantDatabaseOutput, error) + CreateTenantDatabaseWithContext(aws.Context, *rds.CreateTenantDatabaseInput, ...request.Option) (*rds.CreateTenantDatabaseOutput, error) + CreateTenantDatabaseRequest(*rds.CreateTenantDatabaseInput) (*request.Request, *rds.CreateTenantDatabaseOutput) + DeleteBlueGreenDeployment(*rds.DeleteBlueGreenDeploymentInput) (*rds.DeleteBlueGreenDeploymentOutput, error) DeleteBlueGreenDeploymentWithContext(aws.Context, *rds.DeleteBlueGreenDeploymentInput, ...request.Option) (*rds.DeleteBlueGreenDeploymentOutput, error) DeleteBlueGreenDeploymentRequest(*rds.DeleteBlueGreenDeploymentInput) (*request.Request, *rds.DeleteBlueGreenDeploymentOutput) @@ -248,10 +256,18 @@ DeleteGlobalClusterWithContext(aws.Context, *rds.DeleteGlobalClusterInput, ...request.Option) (*rds.DeleteGlobalClusterOutput, error) DeleteGlobalClusterRequest(*rds.DeleteGlobalClusterInput) (*request.Request, *rds.DeleteGlobalClusterOutput) + DeleteIntegration(*rds.DeleteIntegrationInput) (*rds.DeleteIntegrationOutput, error) + DeleteIntegrationWithContext(aws.Context, *rds.DeleteIntegrationInput, ...request.Option) (*rds.DeleteIntegrationOutput, error) + DeleteIntegrationRequest(*rds.DeleteIntegrationInput) (*request.Request, *rds.DeleteIntegrationOutput) + DeleteOptionGroup(*rds.DeleteOptionGroupInput) (*rds.DeleteOptionGroupOutput, error) DeleteOptionGroupWithContext(aws.Context, *rds.DeleteOptionGroupInput, ...request.Option) (*rds.DeleteOptionGroupOutput, error) DeleteOptionGroupRequest(*rds.DeleteOptionGroupInput) (*request.Request, *rds.DeleteOptionGroupOutput) + DeleteTenantDatabase(*rds.DeleteTenantDatabaseInput) (*rds.DeleteTenantDatabaseOutput, error) + DeleteTenantDatabaseWithContext(aws.Context, *rds.DeleteTenantDatabaseInput, ...request.Option) (*rds.DeleteTenantDatabaseOutput, error) + DeleteTenantDatabaseRequest(*rds.DeleteTenantDatabaseInput) (*request.Request, *rds.DeleteTenantDatabaseOutput) + DeregisterDBProxyTargets(*rds.DeregisterDBProxyTargetsInput) (*rds.DeregisterDBProxyTargetsOutput, error) DeregisterDBProxyTargetsWithContext(aws.Context, *rds.DeregisterDBProxyTargetsInput, ...request.Option) (*rds.DeregisterDBProxyTargetsOutput, error) DeregisterDBProxyTargetsRequest(*rds.DeregisterDBProxyTargetsInput) (*request.Request, *rds.DeregisterDBProxyTargetsOutput) @@ -408,6 +424,13 @@ DescribeDBSnapshotAttributesWithContext(aws.Context, *rds.DescribeDBSnapshotAttributesInput, ...request.Option) (*rds.DescribeDBSnapshotAttributesOutput, error) DescribeDBSnapshotAttributesRequest(*rds.DescribeDBSnapshotAttributesInput) (*request.Request, *rds.DescribeDBSnapshotAttributesOutput) + DescribeDBSnapshotTenantDatabases(*rds.DescribeDBSnapshotTenantDatabasesInput) (*rds.DescribeDBSnapshotTenantDatabasesOutput, error) + DescribeDBSnapshotTenantDatabasesWithContext(aws.Context, *rds.DescribeDBSnapshotTenantDatabasesInput, ...request.Option) (*rds.DescribeDBSnapshotTenantDatabasesOutput, error) + DescribeDBSnapshotTenantDatabasesRequest(*rds.DescribeDBSnapshotTenantDatabasesInput) (*request.Request, *rds.DescribeDBSnapshotTenantDatabasesOutput) + + DescribeDBSnapshotTenantDatabasesPages(*rds.DescribeDBSnapshotTenantDatabasesInput, func(*rds.DescribeDBSnapshotTenantDatabasesOutput, bool) bool) error + DescribeDBSnapshotTenantDatabasesPagesWithContext(aws.Context, *rds.DescribeDBSnapshotTenantDatabasesInput, func(*rds.DescribeDBSnapshotTenantDatabasesOutput, bool) bool, ...request.Option) error + DescribeDBSnapshots(*rds.DescribeDBSnapshotsInput) (*rds.DescribeDBSnapshotsOutput, error) DescribeDBSnapshotsWithContext(aws.Context, *rds.DescribeDBSnapshotsInput, ...request.Option) (*rds.DescribeDBSnapshotsOutput, error) DescribeDBSnapshotsRequest(*rds.DescribeDBSnapshotsInput) (*request.Request, *rds.DescribeDBSnapshotsOutput) @@ -465,6 +488,13 @@ DescribeGlobalClustersPages(*rds.DescribeGlobalClustersInput, func(*rds.DescribeGlobalClustersOutput, bool) bool) error DescribeGlobalClustersPagesWithContext(aws.Context, *rds.DescribeGlobalClustersInput, func(*rds.DescribeGlobalClustersOutput, bool) bool, ...request.Option) error + DescribeIntegrations(*rds.DescribeIntegrationsInput) (*rds.DescribeIntegrationsOutput, error) + DescribeIntegrationsWithContext(aws.Context, *rds.DescribeIntegrationsInput, ...request.Option) (*rds.DescribeIntegrationsOutput, error) + DescribeIntegrationsRequest(*rds.DescribeIntegrationsInput) (*request.Request, *rds.DescribeIntegrationsOutput) + + DescribeIntegrationsPages(*rds.DescribeIntegrationsInput, func(*rds.DescribeIntegrationsOutput, bool) bool) error + DescribeIntegrationsPagesWithContext(aws.Context, *rds.DescribeIntegrationsInput, func(*rds.DescribeIntegrationsOutput, bool) bool, ...request.Option) error + DescribeOptionGroupOptions(*rds.DescribeOptionGroupOptionsInput) (*rds.DescribeOptionGroupOptionsOutput, error) DescribeOptionGroupOptionsWithContext(aws.Context, *rds.DescribeOptionGroupOptionsInput, ...request.Option) (*rds.DescribeOptionGroupOptionsOutput, error) DescribeOptionGroupOptionsRequest(*rds.DescribeOptionGroupOptionsInput) (*request.Request, *rds.DescribeOptionGroupOptionsOutput) @@ -514,6 +544,13 @@ DescribeSourceRegionsPages(*rds.DescribeSourceRegionsInput, func(*rds.DescribeSourceRegionsOutput, bool) bool) error DescribeSourceRegionsPagesWithContext(aws.Context, *rds.DescribeSourceRegionsInput, func(*rds.DescribeSourceRegionsOutput, bool) bool, ...request.Option) error + DescribeTenantDatabases(*rds.DescribeTenantDatabasesInput) (*rds.DescribeTenantDatabasesOutput, error) + DescribeTenantDatabasesWithContext(aws.Context, *rds.DescribeTenantDatabasesInput, ...request.Option) (*rds.DescribeTenantDatabasesOutput, error) + DescribeTenantDatabasesRequest(*rds.DescribeTenantDatabasesInput) (*request.Request, *rds.DescribeTenantDatabasesOutput) + + DescribeTenantDatabasesPages(*rds.DescribeTenantDatabasesInput, func(*rds.DescribeTenantDatabasesOutput, bool) bool) error + DescribeTenantDatabasesPagesWithContext(aws.Context, *rds.DescribeTenantDatabasesInput, func(*rds.DescribeTenantDatabasesOutput, bool) bool, ...request.Option) error + DescribeValidDBInstanceModifications(*rds.DescribeValidDBInstanceModificationsInput) (*rds.DescribeValidDBInstanceModificationsOutput, error) DescribeValidDBInstanceModificationsWithContext(aws.Context, *rds.DescribeValidDBInstanceModificationsInput, ...request.Option) (*rds.DescribeValidDBInstanceModificationsOutput, error) DescribeValidDBInstanceModificationsRequest(*rds.DescribeValidDBInstanceModificationsInput) (*request.Request, *rds.DescribeValidDBInstanceModificationsOutput) @@ -613,6 +650,10 @@ ModifyOptionGroupWithContext(aws.Context, *rds.ModifyOptionGroupInput, ...request.Option) (*rds.ModifyOptionGroupOutput, error) ModifyOptionGroupRequest(*rds.ModifyOptionGroupInput) (*request.Request, *rds.ModifyOptionGroupOutput) + ModifyTenantDatabase(*rds.ModifyTenantDatabaseInput) (*rds.ModifyTenantDatabaseOutput, error) + ModifyTenantDatabaseWithContext(aws.Context, *rds.ModifyTenantDatabaseInput, ...request.Option) (*rds.ModifyTenantDatabaseOutput, error) + ModifyTenantDatabaseRequest(*rds.ModifyTenantDatabaseInput) (*request.Request, *rds.ModifyTenantDatabaseOutput) + PromoteReadReplica(*rds.PromoteReadReplicaInput) (*rds.PromoteReadReplicaOutput, error) PromoteReadReplicaWithContext(aws.Context, *rds.PromoteReadReplicaInput, ...request.Option) (*rds.PromoteReadReplicaOutput, error) PromoteReadReplicaRequest(*rds.PromoteReadReplicaInput) (*request.Request, *rds.PromoteReadReplicaOutput) @@ -764,6 +805,12 @@ WaitUntilDBSnapshotDeleted(*rds.DescribeDBSnapshotsInput) error WaitUntilDBSnapshotDeletedWithContext(aws.Context, *rds.DescribeDBSnapshotsInput, ...request.WaiterOption) error + + WaitUntilTenantDatabaseAvailable(*rds.DescribeTenantDatabasesInput) error + WaitUntilTenantDatabaseAvailableWithContext(aws.Context, *rds.DescribeTenantDatabasesInput, ...request.WaiterOption) error + + WaitUntilTenantDatabaseDeleted(*rds.DescribeTenantDatabasesInput) error + WaitUntilTenantDatabaseDeletedWithContext(aws.Context, *rds.DescribeTenantDatabasesInput, ...request.WaiterOption) error } var _ RDSAPI = (*rds.RDS)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rds/waiters.go golang-github-aws-aws-sdk-go-1.48.14/service/rds/waiters.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rds/waiters.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rds/waiters.go 2023-12-06 19:28:18.000000000 +0000 @@ -576,3 +576,115 @@ return w.WaitWithContext(ctx) } + +// WaitUntilTenantDatabaseAvailable uses the Amazon RDS API operation +// DescribeTenantDatabases to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *RDS) WaitUntilTenantDatabaseAvailable(input *DescribeTenantDatabasesInput) error { + return c.WaitUntilTenantDatabaseAvailableWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilTenantDatabaseAvailableWithContext is an extended version of WaitUntilTenantDatabaseAvailable. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// 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 *RDS) WaitUntilTenantDatabaseAvailableWithContext(ctx aws.Context, input *DescribeTenantDatabasesInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilTenantDatabaseAvailable", + MaxAttempts: 60, + Delay: request.ConstantWaiterDelay(30 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "TenantDatabases[].Status", + Expected: "available", + }, + { + State: request.FailureWaiterState, + Matcher: request.PathAnyWaiterMatch, Argument: "TenantDatabases[].Status", + Expected: "deleted", + }, + { + State: request.FailureWaiterState, + Matcher: request.PathAnyWaiterMatch, Argument: "TenantDatabases[].Status", + Expected: "incompatible-parameters", + }, + { + State: request.FailureWaiterState, + Matcher: request.PathAnyWaiterMatch, Argument: "TenantDatabases[].Status", + Expected: "incompatible-restore", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeTenantDatabasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTenantDatabasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + +// WaitUntilTenantDatabaseDeleted uses the Amazon RDS API operation +// DescribeTenantDatabases to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *RDS) WaitUntilTenantDatabaseDeleted(input *DescribeTenantDatabasesInput) error { + return c.WaitUntilTenantDatabaseDeletedWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilTenantDatabaseDeletedWithContext is an extended version of WaitUntilTenantDatabaseDeleted. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// 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 *RDS) WaitUntilTenantDatabaseDeletedWithContext(ctx aws.Context, input *DescribeTenantDatabasesInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilTenantDatabaseDeleted", + MaxAttempts: 60, + Delay: request.ConstantWaiterDelay(30 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.SuccessWaiterState, + Matcher: request.PathWaiterMatch, Argument: "length(TenantDatabases) == `0`", + Expected: true, + }, + { + State: request.SuccessWaiterState, + Matcher: request.ErrorWaiterMatch, + Expected: "DBInstanceNotFoundFault", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeTenantDatabasesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeTenantDatabasesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/recyclebin/api.go golang-github-aws-aws-sdk-go-1.48.14/service/recyclebin/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/recyclebin/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/recyclebin/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -924,6 +924,10 @@ // - ConflictException // The specified retention rule lock request can't be completed. // +// - ServiceQuotaExceededException +// The request would cause a service quota for the number of tags per resource +// to be exceeded. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rbin-2021-06-15/UpdateRule func (c *RecycleBin) UpdateRule(input *UpdateRuleInput) (*UpdateRuleOutput, error) { req, out := c.UpdateRuleRequest(input) @@ -1194,6 +1198,9 @@ // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -1262,6 +1269,12 @@ return s } +// SetRuleArn sets the RuleArn field's value. +func (s *CreateRuleOutput) SetRuleArn(v string) *CreateRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *CreateRuleOutput) SetStatus(v string) *CreateRuleOutput { s.Status = &v @@ -1438,6 +1451,9 @@ // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -1509,6 +1525,12 @@ return s } +// SetRuleArn sets the RuleArn field's value. +func (s *GetRuleOutput) SetRuleArn(v string) *GetRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *GetRuleOutput) SetStatus(v string) *GetRuleOutput { s.Status = &v @@ -1961,6 +1983,9 @@ // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -2026,6 +2051,12 @@ return s } +// SetRuleArn sets the RuleArn field's value. +func (s *LockRuleOutput) SetRuleArn(v string) *LockRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *LockRuleOutput) SetStatus(v string) *LockRuleOutput { s.Status = &v @@ -2252,6 +2283,9 @@ // Information about the retention period for which the retention rule is to // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` } // String returns the string representation. @@ -2296,6 +2330,12 @@ return s } +// SetRuleArn sets the RuleArn field's value. +func (s *RuleSummary) SetRuleArn(v string) *RuleSummary { + s.RuleArn = &v + return s +} + // The request would cause a service quota for the number of tags per resource // to be exceeded. type ServiceQuotaExceededException struct { @@ -2684,6 +2724,9 @@ // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -2755,6 +2798,12 @@ return s } +// SetRuleArn sets the RuleArn field's value. +func (s *UnlockRuleOutput) SetRuleArn(v string) *UnlockRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *UnlockRuleOutput) SetStatus(v string) *UnlockRuleOutput { s.Status = &v @@ -3004,6 +3053,9 @@ // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -3069,6 +3121,12 @@ return s } +// SetRuleArn sets the RuleArn field's value. +func (s *UpdateRuleOutput) SetRuleArn(v string) *UpdateRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *UpdateRuleOutput) SetStatus(v string) *UpdateRuleOutput { s.Status = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/recyclebin/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/recyclebin/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/recyclebin/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/recyclebin/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -17,7 +17,7 @@ // you use any other resource of that type in your account. If the retention // period expires and the resource is not restored, the resource is permanently // deleted from the Recycle Bin and is no longer available for recovery. For -// more information about Recycle Bin, see Recycle Bin (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-recycle-bin.html) +// more information about Recycle Bin, see Recycle Bin (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin.html) // in the Amazon Elastic Compute Cloud User Guide. // // See https://docs.aws.amazon.com/goto/WebAPI/rbin-2021-06-15 for more information on this service. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/redshift/api.go golang-github-aws-aws-sdk-go-1.48.14/service/redshift/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/redshift/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/redshift/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -178,6 +178,9 @@ // - ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" // The partner integration is not authorized. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AddPartner func (c *Redshift) AddPartner(input *AddPartnerInput) (*AddPartnerOutput, error) { req, out := c.AddPartnerRequest(input) @@ -991,6 +994,9 @@ // // Returned Error Codes: // +// - ErrCodeClusterNotFoundFault "ClusterNotFound" +// The ClusterIdentifier parameter does not refer to an existing cluster. +// // - ErrCodeClusterSnapshotAlreadyExistsFault "ClusterSnapshotAlreadyExists" // The value specified as a snapshot identifier is already used by an existing // snapshot. @@ -1260,6 +1266,16 @@ // // The value must be either -1 or an integer between 1 and 3,653. // +// - ErrCodeIpv6CidrBlockNotFoundFault "Ipv6CidrBlockNotFoundFault" +// There are no subnets in your VPC with associated IPv6 CIDR blocks. To use +// dual-stack mode, associate an IPv6 CIDR block with each subnet in your VPC. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// - ErrCodeRedshiftIdcApplicationNotExistsFault "RedshiftIdcApplicationNotExists" +// The application you attempted to find doesn't exist. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateCluster func (c *Redshift) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { req, out := c.CreateClusterRequest(input) @@ -2235,6 +2251,98 @@ return out, req.Send() } +const opCreateRedshiftIdcApplication = "CreateRedshiftIdcApplication" + +// CreateRedshiftIdcApplicationRequest generates a "aws/request.Request" representing the +// client's request for the CreateRedshiftIdcApplication 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 CreateRedshiftIdcApplication for more information on using the CreateRedshiftIdcApplication +// 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 CreateRedshiftIdcApplicationRequest method. +// req, resp := client.CreateRedshiftIdcApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateRedshiftIdcApplication +func (c *Redshift) CreateRedshiftIdcApplicationRequest(input *CreateRedshiftIdcApplicationInput) (req *request.Request, output *CreateRedshiftIdcApplicationOutput) { + op := &request.Operation{ + Name: opCreateRedshiftIdcApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateRedshiftIdcApplicationInput{} + } + + output = &CreateRedshiftIdcApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRedshiftIdcApplication API operation for Amazon Redshift. +// +// Creates an Amazon Redshift application for use with IAM Identity Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation CreateRedshiftIdcApplication for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeRedshiftIdcApplicationAlreadyExistsFault "RedshiftIdcApplicationAlreadyExists" +// The application you attempted to add already exists. +// +// - ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" +// Your request cannot be completed because a dependent internal service is +// temporarily unavailable. Wait 30 to 60 seconds and try again. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// - ErrCodeDependentServiceAccessDeniedFault "DependentServiceAccessDenied" +// A dependent service denied access for the integration. +// +// - ErrCodeRedshiftIdcApplicationQuotaExceededFault "RedshiftIdcApplicationQuotaExceeded" +// The maximum number of Redshift IAM Identity Center applications was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateRedshiftIdcApplication +func (c *Redshift) CreateRedshiftIdcApplication(input *CreateRedshiftIdcApplicationInput) (*CreateRedshiftIdcApplicationOutput, error) { + req, out := c.CreateRedshiftIdcApplicationRequest(input) + return out, req.Send() +} + +// CreateRedshiftIdcApplicationWithContext is the same as CreateRedshiftIdcApplication with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRedshiftIdcApplication 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 *Redshift) CreateRedshiftIdcApplicationWithContext(ctx aws.Context, input *CreateRedshiftIdcApplicationInput, opts ...request.Option) (*CreateRedshiftIdcApplicationOutput, error) { + req, out := c.CreateRedshiftIdcApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateScheduledAction = "CreateScheduledAction" // CreateScheduledActionRequest generates a "aws/request.Request" representing the @@ -2291,6 +2399,9 @@ // // Returned Error Codes: // +// - ErrCodeClusterNotFoundFault "ClusterNotFound" +// The ClusterIdentifier parameter does not refer to an existing cluster. +// // - ErrCodeScheduledActionAlreadyExistsFault "ScheduledActionAlreadyExists" // The scheduled action already exists. // @@ -2309,6 +2420,9 @@ // - ErrCodeUnauthorizedOperation "UnauthorizedOperation" // Your account is not authorized to perform the requested operation. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CreateScheduledAction func (c *Redshift) CreateScheduledAction(input *CreateScheduledActionInput) (*CreateScheduledActionOutput, error) { req, out := c.CreateScheduledActionRequest(input) @@ -3416,6 +3530,9 @@ // - ErrCodeCustomCnameAssociationFault "CustomCnameAssociationFault" // An error occurred when an attempt was made to change the custom domain association. // +// - ErrCodeCustomDomainAssociationNotFoundFault "CustomDomainAssociationNotFoundFault" +// An error occurred. The custom domain name couldn't be found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteCustomDomainAssociation func (c *Redshift) DeleteCustomDomainAssociation(input *DeleteCustomDomainAssociationInput) (*DeleteCustomDomainAssociationOutput, error) { req, out := c.DeleteCustomDomainAssociationRequest(input) @@ -3846,6 +3963,9 @@ // - ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" // The partner integration is not authorized. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeletePartner func (c *Redshift) DeletePartner(input *DeletePartnerInput) (*DeletePartnerOutput, error) { req, out := c.DeletePartnerRequest(input) @@ -3868,6 +3988,179 @@ return out, req.Send() } +const opDeleteRedshiftIdcApplication = "DeleteRedshiftIdcApplication" + +// DeleteRedshiftIdcApplicationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRedshiftIdcApplication 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 DeleteRedshiftIdcApplication for more information on using the DeleteRedshiftIdcApplication +// 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 DeleteRedshiftIdcApplicationRequest method. +// req, resp := client.DeleteRedshiftIdcApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteRedshiftIdcApplication +func (c *Redshift) DeleteRedshiftIdcApplicationRequest(input *DeleteRedshiftIdcApplicationInput) (req *request.Request, output *DeleteRedshiftIdcApplicationOutput) { + op := &request.Operation{ + Name: opDeleteRedshiftIdcApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteRedshiftIdcApplicationInput{} + } + + output = &DeleteRedshiftIdcApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteRedshiftIdcApplication API operation for Amazon Redshift. +// +// Deletes an Amazon Redshift IAM Identity Center application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation DeleteRedshiftIdcApplication for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeRedshiftIdcApplicationNotExistsFault "RedshiftIdcApplicationNotExists" +// The application you attempted to find doesn't exist. +// +// - ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" +// Your request cannot be completed because a dependent internal service is +// temporarily unavailable. Wait 30 to 60 seconds and try again. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// - ErrCodeDependentServiceAccessDeniedFault "DependentServiceAccessDenied" +// A dependent service denied access for the integration. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteRedshiftIdcApplication +func (c *Redshift) DeleteRedshiftIdcApplication(input *DeleteRedshiftIdcApplicationInput) (*DeleteRedshiftIdcApplicationOutput, error) { + req, out := c.DeleteRedshiftIdcApplicationRequest(input) + return out, req.Send() +} + +// DeleteRedshiftIdcApplicationWithContext is the same as DeleteRedshiftIdcApplication with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteRedshiftIdcApplication 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 *Redshift) DeleteRedshiftIdcApplicationWithContext(ctx aws.Context, input *DeleteRedshiftIdcApplicationInput, opts ...request.Option) (*DeleteRedshiftIdcApplicationOutput, error) { + req, out := c.DeleteRedshiftIdcApplicationRequest(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/redshift-2012-12-01/DeleteResourcePolicy +func (c *Redshift) 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(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteResourcePolicy API operation for Amazon Redshift. +// +// Deletes the resource policy for a specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation DeleteResourcePolicy for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeResourceNotFoundFault "ResourceNotFoundFault" +// The resource could not be found. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeleteResourcePolicy +func (c *Redshift) 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 *Redshift) 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 opDeleteScheduledAction = "DeleteScheduledAction" // DeleteScheduledActionRequest generates a "aws/request.Request" representing the @@ -5827,7 +6120,7 @@ // DescribeCustomDomainAssociations API operation for Amazon Redshift. // -// Contains information for custom domain associations for a cluster. +// Contains information about custom domain associations for a cluster. // // 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 @@ -7404,6 +7697,149 @@ return p.Err() } +const opDescribeInboundIntegrations = "DescribeInboundIntegrations" + +// DescribeInboundIntegrationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeInboundIntegrations 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 DescribeInboundIntegrations for more information on using the DescribeInboundIntegrations +// 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 DescribeInboundIntegrationsRequest method. +// req, resp := client.DescribeInboundIntegrationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeInboundIntegrations +func (c *Redshift) DescribeInboundIntegrationsRequest(input *DescribeInboundIntegrationsInput) (req *request.Request, output *DescribeInboundIntegrationsOutput) { + op := &request.Operation{ + Name: opDescribeInboundIntegrations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"Marker"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeInboundIntegrationsInput{} + } + + output = &DescribeInboundIntegrationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeInboundIntegrations API operation for Amazon Redshift. +// +// Returns a list of inbound integrations. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation DescribeInboundIntegrations for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeIntegrationNotFoundFault "IntegrationNotFoundFault" +// The integration can't be found. +// +// - ErrCodeInvalidNamespaceFault "InvalidNamespaceFault" +// The namespace isn't valid because the namespace doesn't exist. Provide a +// valid namespace. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeInboundIntegrations +func (c *Redshift) DescribeInboundIntegrations(input *DescribeInboundIntegrationsInput) (*DescribeInboundIntegrationsOutput, error) { + req, out := c.DescribeInboundIntegrationsRequest(input) + return out, req.Send() +} + +// DescribeInboundIntegrationsWithContext is the same as DescribeInboundIntegrations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeInboundIntegrations 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 *Redshift) DescribeInboundIntegrationsWithContext(ctx aws.Context, input *DescribeInboundIntegrationsInput, opts ...request.Option) (*DescribeInboundIntegrationsOutput, error) { + req, out := c.DescribeInboundIntegrationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeInboundIntegrationsPages iterates over the pages of a DescribeInboundIntegrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeInboundIntegrations 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 DescribeInboundIntegrations operation. +// pageNum := 0 +// err := client.DescribeInboundIntegrationsPages(params, +// func(page *redshift.DescribeInboundIntegrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Redshift) DescribeInboundIntegrationsPages(input *DescribeInboundIntegrationsInput, fn func(*DescribeInboundIntegrationsOutput, bool) bool) error { + return c.DescribeInboundIntegrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeInboundIntegrationsPagesWithContext same as DescribeInboundIntegrationsPages 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 *Redshift) DescribeInboundIntegrationsPagesWithContext(ctx aws.Context, input *DescribeInboundIntegrationsInput, fn func(*DescribeInboundIntegrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeInboundIntegrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeInboundIntegrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeInboundIntegrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeLoggingStatus = "DescribeLoggingStatus" // DescribeLoggingStatusRequest generates a "aws/request.Request" representing the @@ -7458,9 +7894,13 @@ // API operation DescribeLoggingStatus for usage and error information. // // Returned Error Codes: +// // - ErrCodeClusterNotFoundFault "ClusterNotFound" // The ClusterIdentifier parameter does not refer to an existing cluster. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeLoggingStatus func (c *Redshift) DescribeLoggingStatus(input *DescribeLoggingStatusInput) (*LoggingStatus, error) { req, out := c.DescribeLoggingStatusRequest(input) @@ -7832,6 +8272,9 @@ // - ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" // The partner integration is not authorized. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribePartners func (c *Redshift) DescribePartners(input *DescribePartnersInput) (*DescribePartnersOutput, error) { req, out := c.DescribePartnersRequest(input) @@ -7854,6 +8297,152 @@ return out, req.Send() } +const opDescribeRedshiftIdcApplications = "DescribeRedshiftIdcApplications" + +// DescribeRedshiftIdcApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRedshiftIdcApplications 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 DescribeRedshiftIdcApplications for more information on using the DescribeRedshiftIdcApplications +// 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 DescribeRedshiftIdcApplicationsRequest method. +// req, resp := client.DescribeRedshiftIdcApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeRedshiftIdcApplications +func (c *Redshift) DescribeRedshiftIdcApplicationsRequest(input *DescribeRedshiftIdcApplicationsInput) (req *request.Request, output *DescribeRedshiftIdcApplicationsOutput) { + op := &request.Operation{ + Name: opDescribeRedshiftIdcApplications, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"Marker"}, + LimitToken: "MaxRecords", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeRedshiftIdcApplicationsInput{} + } + + output = &DescribeRedshiftIdcApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRedshiftIdcApplications API operation for Amazon Redshift. +// +// Lists the Amazon Redshift IAM Identity Center applications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation DescribeRedshiftIdcApplications for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeRedshiftIdcApplicationNotExistsFault "RedshiftIdcApplicationNotExists" +// The application you attempted to find doesn't exist. +// +// - ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" +// Your request cannot be completed because a dependent internal service is +// temporarily unavailable. Wait 30 to 60 seconds and try again. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// - ErrCodeDependentServiceAccessDeniedFault "DependentServiceAccessDenied" +// A dependent service denied access for the integration. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeRedshiftIdcApplications +func (c *Redshift) DescribeRedshiftIdcApplications(input *DescribeRedshiftIdcApplicationsInput) (*DescribeRedshiftIdcApplicationsOutput, error) { + req, out := c.DescribeRedshiftIdcApplicationsRequest(input) + return out, req.Send() +} + +// DescribeRedshiftIdcApplicationsWithContext is the same as DescribeRedshiftIdcApplications with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRedshiftIdcApplications 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 *Redshift) DescribeRedshiftIdcApplicationsWithContext(ctx aws.Context, input *DescribeRedshiftIdcApplicationsInput, opts ...request.Option) (*DescribeRedshiftIdcApplicationsOutput, error) { + req, out := c.DescribeRedshiftIdcApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeRedshiftIdcApplicationsPages iterates over the pages of a DescribeRedshiftIdcApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeRedshiftIdcApplications 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 DescribeRedshiftIdcApplications operation. +// pageNum := 0 +// err := client.DescribeRedshiftIdcApplicationsPages(params, +// func(page *redshift.DescribeRedshiftIdcApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Redshift) DescribeRedshiftIdcApplicationsPages(input *DescribeRedshiftIdcApplicationsInput, fn func(*DescribeRedshiftIdcApplicationsOutput, bool) bool) error { + return c.DescribeRedshiftIdcApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeRedshiftIdcApplicationsPagesWithContext same as DescribeRedshiftIdcApplicationsPages 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 *Redshift) DescribeRedshiftIdcApplicationsPagesWithContext(ctx aws.Context, input *DescribeRedshiftIdcApplicationsInput, fn func(*DescribeRedshiftIdcApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeRedshiftIdcApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeRedshiftIdcApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeRedshiftIdcApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeReservedNodeExchangeStatus = "DescribeReservedNodeExchangeStatus" // DescribeReservedNodeExchangeStatusRequest generates a "aws/request.Request" representing the @@ -8355,6 +8944,9 @@ // - ErrCodeResizeNotFoundFault "ResizeNotFound" // A resize operation for the specified cluster is not found. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeResize func (c *Redshift) DescribeResize(input *DescribeResizeInput) (*DescribeResizeOutput, error) { req, out := c.DescribeResizeRequest(input) @@ -9382,6 +9974,9 @@ // - ErrCodeInvalidClusterStateFault "InvalidClusterState" // The specified cluster is not in the available state. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisableLogging func (c *Redshift) DisableLogging(input *DisableLoggingInput) (*LoggingStatus, error) { req, out := c.DisableLoggingRequest(input) @@ -9476,6 +10071,9 @@ // - ErrCodeUnauthorizedOperation "UnauthorizedOperation" // Your account is not authorized to perform the requested operation. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DisableSnapshotCopy func (c *Redshift) DisableSnapshotCopy(input *DisableSnapshotCopyInput) (*DisableSnapshotCopyOutput, error) { req, out := c.DisableSnapshotCopyRequest(input) @@ -9658,6 +10256,9 @@ // - ErrCodeInvalidClusterStateFault "InvalidClusterState" // The specified cluster is not in the available state. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/EnableLogging func (c *Redshift) EnableLogging(input *EnableLoggingInput) (*LoggingStatus, error) { req, out := c.EnableLoggingRequest(input) @@ -9794,6 +10395,95 @@ return out, req.Send() } +const opFailoverPrimaryCompute = "FailoverPrimaryCompute" + +// FailoverPrimaryComputeRequest generates a "aws/request.Request" representing the +// client's request for the FailoverPrimaryCompute 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 FailoverPrimaryCompute for more information on using the FailoverPrimaryCompute +// 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 FailoverPrimaryComputeRequest method. +// req, resp := client.FailoverPrimaryComputeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/FailoverPrimaryCompute +func (c *Redshift) FailoverPrimaryComputeRequest(input *FailoverPrimaryComputeInput) (req *request.Request, output *FailoverPrimaryComputeOutput) { + op := &request.Operation{ + Name: opFailoverPrimaryCompute, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &FailoverPrimaryComputeInput{} + } + + output = &FailoverPrimaryComputeOutput{} + req = c.newRequest(op, input, output) + return +} + +// FailoverPrimaryCompute API operation for Amazon Redshift. +// +// Fails over the primary compute unit of the specified Multi-AZ cluster to +// another Availability Zone. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation FailoverPrimaryCompute for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeClusterNotFoundFault "ClusterNotFound" +// The ClusterIdentifier parameter does not refer to an existing cluster. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// - ErrCodeUnauthorizedOperation "UnauthorizedOperation" +// Your account is not authorized to perform the requested operation. +// +// - ErrCodeInvalidClusterStateFault "InvalidClusterState" +// The specified cluster is not in the available state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/FailoverPrimaryCompute +func (c *Redshift) FailoverPrimaryCompute(input *FailoverPrimaryComputeInput) (*FailoverPrimaryComputeOutput, error) { + req, out := c.FailoverPrimaryComputeRequest(input) + return out, req.Send() +} + +// FailoverPrimaryComputeWithContext is the same as FailoverPrimaryCompute with the addition of +// the ability to pass a context and additional request options. +// +// See FailoverPrimaryCompute 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 *Redshift) FailoverPrimaryComputeWithContext(ctx aws.Context, input *FailoverPrimaryComputeInput, opts ...request.Option) (*FailoverPrimaryComputeOutput, error) { + req, out := c.FailoverPrimaryComputeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetClusterCredentials = "GetClusterCredentials" // GetClusterCredentialsRequest generates a "aws/request.Request" representing the @@ -10306,6 +10996,91 @@ return p.Err() } +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/redshift-2012-12-01/GetResourcePolicy +func (c *Redshift) 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 Amazon Redshift. +// +// Get the resource policy for a specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation GetResourcePolicy for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeResourceNotFoundFault "ResourceNotFoundFault" +// The resource could not be found. +// +// - ErrCodeInvalidPolicyFault "InvalidPolicyFault" +// The resource policy isn't valid. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/GetResourcePolicy +func (c *Redshift) 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 *Redshift) 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 opModifyAquaConfiguration = "ModifyAquaConfiguration" // ModifyAquaConfigurationRequest generates a "aws/request.Request" representing the @@ -10618,6 +11393,10 @@ // - ErrCodeCustomCnameAssociationFault "CustomCnameAssociationFault" // An error occurred when an attempt was made to change the custom domain association. // +// - ErrCodeIpv6CidrBlockNotFoundFault "Ipv6CidrBlockNotFoundFault" +// There are no subnets in your VPC with associated IPv6 CIDR blocks. To use +// dual-stack mode, associate an IPv6 CIDR block with each subnet in your VPC. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyCluster func (c *Redshift) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) { req, out := c.ModifyClusterRequest(input) @@ -10704,6 +11483,9 @@ // - ErrCodeInvalidClusterStateFault "InvalidClusterState" // The specified cluster is not in the available state. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterDbRevision func (c *Redshift) ModifyClusterDbRevision(input *ModifyClusterDbRevisionInput) (*ModifyClusterDbRevisionOutput, error) { req, out := c.ModifyClusterDbRevisionRequest(input) @@ -11326,6 +12108,9 @@ // - ErrCodeCustomCnameAssociationFault "CustomCnameAssociationFault" // An error occurred when an attempt was made to change the custom domain association. // +// - ErrCodeCustomDomainAssociationNotFoundFault "CustomDomainAssociationNotFoundFault" +// An error occurred. The custom domain name couldn't be found. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyCustomDomainAssociation func (c *Redshift) ModifyCustomDomainAssociation(input *ModifyCustomDomainAssociationInput) (*ModifyCustomDomainAssociationOutput, error) { req, out := c.ModifyCustomDomainAssociationRequest(input) @@ -11553,6 +12338,95 @@ return out, req.Send() } +const opModifyRedshiftIdcApplication = "ModifyRedshiftIdcApplication" + +// ModifyRedshiftIdcApplicationRequest generates a "aws/request.Request" representing the +// client's request for the ModifyRedshiftIdcApplication 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 ModifyRedshiftIdcApplication for more information on using the ModifyRedshiftIdcApplication +// 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 ModifyRedshiftIdcApplicationRequest method. +// req, resp := client.ModifyRedshiftIdcApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyRedshiftIdcApplication +func (c *Redshift) ModifyRedshiftIdcApplicationRequest(input *ModifyRedshiftIdcApplicationInput) (req *request.Request, output *ModifyRedshiftIdcApplicationOutput) { + op := &request.Operation{ + Name: opModifyRedshiftIdcApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ModifyRedshiftIdcApplicationInput{} + } + + output = &ModifyRedshiftIdcApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// ModifyRedshiftIdcApplication API operation for Amazon Redshift. +// +// Changes an existing Amazon Redshift IAM Identity Center application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation ModifyRedshiftIdcApplication for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeRedshiftIdcApplicationNotExistsFault "RedshiftIdcApplicationNotExists" +// The application you attempted to find doesn't exist. +// +// - ErrCodeDependentServiceUnavailableFault "DependentServiceUnavailableFault" +// Your request cannot be completed because a dependent internal service is +// temporarily unavailable. Wait 30 to 60 seconds and try again. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// - ErrCodeDependentServiceAccessDeniedFault "DependentServiceAccessDenied" +// A dependent service denied access for the integration. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyRedshiftIdcApplication +func (c *Redshift) ModifyRedshiftIdcApplication(input *ModifyRedshiftIdcApplicationInput) (*ModifyRedshiftIdcApplicationOutput, error) { + req, out := c.ModifyRedshiftIdcApplicationRequest(input) + return out, req.Send() +} + +// ModifyRedshiftIdcApplicationWithContext is the same as ModifyRedshiftIdcApplication with the addition of +// the ability to pass a context and additional request options. +// +// See ModifyRedshiftIdcApplication 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 *Redshift) ModifyRedshiftIdcApplicationWithContext(ctx aws.Context, input *ModifyRedshiftIdcApplicationInput, opts ...request.Option) (*ModifyRedshiftIdcApplicationOutput, error) { + req, out := c.ModifyRedshiftIdcApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opModifyScheduledAction = "ModifyScheduledAction" // ModifyScheduledActionRequest generates a "aws/request.Request" representing the @@ -11607,6 +12481,9 @@ // // Returned Error Codes: // +// - ErrCodeClusterNotFoundFault "ClusterNotFound" +// The ClusterIdentifier parameter does not refer to an existing cluster. +// // - ErrCodeScheduledActionNotFoundFault "ScheduledActionNotFound" // The scheduled action cannot be found. // @@ -11622,6 +12499,9 @@ // - ErrCodeUnauthorizedOperation "UnauthorizedOperation" // Your account is not authorized to perform the requested operation. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyScheduledAction func (c *Redshift) ModifyScheduledAction(input *ModifyScheduledActionInput) (*ModifyScheduledActionOutput, error) { req, out := c.ModifyScheduledActionRequest(input) @@ -11976,6 +12856,9 @@ // - ErrCodeInvalidClusterStateFault "InvalidClusterState" // The specified cluster is not in the available state. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PauseCluster func (c *Redshift) PauseCluster(input *PauseClusterInput) (*PauseClusterOutput, error) { req, out := c.PauseClusterRequest(input) @@ -12096,6 +12979,94 @@ return out, req.Send() } +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/redshift-2012-12-01/PutResourcePolicy +func (c *Redshift) PutResourcePolicyRequest(input *PutResourcePolicyInput) (req *request.Request, output *PutResourcePolicyOutput) { + op := &request.Operation{ + Name: opPutResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutResourcePolicyInput{} + } + + output = &PutResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutResourcePolicy API operation for Amazon Redshift. +// +// Updates the resource policy for a specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Redshift's +// API operation PutResourcePolicy for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeResourceNotFoundFault "ResourceNotFoundFault" +// The resource could not be found. +// +// - ErrCodeInvalidPolicyFault "InvalidPolicyFault" +// The resource policy isn't valid. +// +// - ErrCodeConflictPolicyUpdateFault "ConflictPolicyUpdateFault" +// There is a conflict while updating the resource policy. +// +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PutResourcePolicy +func (c *Redshift) 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 *Redshift) 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 opRebootCluster = "RebootCluster" // RebootClusterRequest generates a "aws/request.Request" representing the @@ -12662,6 +13633,10 @@ // - ErrCodeUnsupportedOperationFault "UnsupportedOperation" // The requested operation isn't supported. // +// - ErrCodeIpv6CidrBlockNotFoundFault "Ipv6CidrBlockNotFoundFault" +// There are no subnets in your VPC with associated IPv6 CIDR blocks. To use +// dual-stack mode, associate an IPv6 CIDR block with each subnet in your VPC. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RestoreFromClusterSnapshot func (c *Redshift) RestoreFromClusterSnapshot(input *RestoreFromClusterSnapshotInput) (*RestoreFromClusterSnapshotOutput, error) { req, out := c.RestoreFromClusterSnapshotRequest(input) @@ -12862,6 +13837,9 @@ // - ErrCodeInsufficientClusterCapacityFault "InsufficientClusterCapacity" // The number of nodes specified exceeds the allotted capacity of the cluster. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResumeCluster func (c *Redshift) ResumeCluster(input *ResumeClusterInput) (*ResumeClusterOutput, error) { req, out := c.ResumeClusterRequest(input) @@ -13232,6 +14210,9 @@ // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/RotateEncryptionKey func (c *Redshift) RotateEncryptionKey(input *RotateEncryptionKeyInput) (*RotateEncryptionKeyOutput, error) { req, out := c.RotateEncryptionKeyRequest(input) @@ -13317,6 +14298,9 @@ // - ErrCodeUnauthorizedPartnerIntegrationFault "UnauthorizedPartnerIntegration" // The partner integration is not authorized. // +// - ErrCodeUnsupportedOperationFault "UnsupportedOperation" +// The requested operation isn't supported. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/UpdatePartnerStatus func (c *Redshift) UpdatePartnerStatus(input *UpdatePartnerStatusInput) (*UpdatePartnerStatusOutput, error) { req, out := c.UpdatePartnerStatusRequest(input) @@ -13695,6 +14679,9 @@ type AssociateDataShareConsumerInput struct { _ struct{} `type:"structure"` + // If set to true, allows write operations for a datashare. + AllowWrites *bool `type:"boolean"` + // A value that specifies whether the datashare is associated with the entire // account. AssociateEntireAccount *bool `type:"boolean"` @@ -13745,6 +14732,12 @@ return nil } +// SetAllowWrites sets the AllowWrites field's value. +func (s *AssociateDataShareConsumerInput) SetAllowWrites(v bool) *AssociateDataShareConsumerInput { + s.AllowWrites = &v + return s +} + // SetAssociateEntireAccount sets the AssociateEntireAccount field's value. func (s *AssociateDataShareConsumerInput) SetAssociateEntireAccount(v bool) *AssociateDataShareConsumerInput { s.AssociateEntireAccount = &v @@ -14077,6 +15070,9 @@ type AuthorizeDataShareInput struct { _ struct{} `type:"structure"` + // If set to true, allows write operations for a datashare. + AllowWrites *bool `type:"boolean"` + // The identifier of the data consumer that is authorized to access the datashare. // This identifier is an Amazon Web Services account ID or a keyword, such as // ADX. @@ -14125,6 +15121,12 @@ return nil } +// SetAllowWrites sets the AllowWrites field's value. +func (s *AuthorizeDataShareInput) SetAllowWrites(v bool) *AuthorizeDataShareInput { + s.AllowWrites = &v + return s +} + // SetConsumerIdentifier sets the ConsumerIdentifier field's value. func (s *AuthorizeDataShareInput) SetConsumerIdentifier(v string) *AuthorizeDataShareInput { s.ConsumerIdentifier = &v @@ -14488,6 +15490,49 @@ return s } +// The authorized token issuer for the Amazon Redshift IAM Identity Center application. +type AuthorizedTokenIssuer struct { + _ struct{} `type:"structure"` + + // The list of audiences for the authorized token issuer for integrating Amazon + // Redshift with IDC Identity Center. + AuthorizedAudiencesList []*string `type:"list"` + + // The ARN for the authorized token issuer for integrating Amazon Redshift with + // IDC Identity Center. + TrustedTokenIssuerArn *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 AuthorizedTokenIssuer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthorizedTokenIssuer) GoString() string { + return s.String() +} + +// SetAuthorizedAudiencesList sets the AuthorizedAudiencesList field's value. +func (s *AuthorizedTokenIssuer) SetAuthorizedAudiencesList(v []*string) *AuthorizedTokenIssuer { + s.AuthorizedAudiencesList = v + return s +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *AuthorizedTokenIssuer) SetTrustedTokenIssuerArn(v string) *AuthorizedTokenIssuer { + s.TrustedTokenIssuerArn = &v + return s +} + // Describes an availability zone. type AvailabilityZone struct { _ struct{} `type:"structure"` @@ -15214,6 +16259,9 @@ // the cluster to access other Amazon Web Services services. IamRoles []*ClusterIamRole `locationNameList:"ClusterIamRole" type:"list"` + // The IP address type for the cluster. Possible values are ipv4 and dualstack. + IpAddressType *string `type:"string"` + // The Key Management Service (KMS) key ID of the encryption key used to encrypt // data in the cluster. KmsKeyId *string `type:"string"` @@ -15228,6 +16276,13 @@ // The value must be either -1 or an integer between 1 and 3,653. ManualSnapshotRetentionPeriod *int64 `type:"integer"` + // The Amazon Resource Name (ARN) for the cluster's admin user credentials secret. + MasterPasswordSecretArn *string `type:"string"` + + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the cluster's admin credentials secret. + MasterPasswordSecretKmsKeyId *string `type:"string"` + // The admin user name for the cluster. This name is used to connect to the // database that is specified in the DBName parameter. MasterUsername *string `type:"string"` @@ -15235,6 +16290,14 @@ // The status of a modify operation, if any, initiated for the cluster. ModifyStatus *string `type:"string"` + // A boolean value that, if true, indicates that the cluster is deployed in + // two Availability Zones. + MultiAZ *string `type:"string"` + + // The secondary compute unit of a cluster, if Multi-AZ deployment is turned + // on. + MultiAZSecondary *SecondaryClusterInfo `type:"structure"` + // The date and time in UTC when system maintenance can begin. NextMaintenanceWindowStartTime *time.Time `type:"timestamp"` @@ -15518,6 +16581,12 @@ return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *Cluster) SetIpAddressType(v string) *Cluster { + s.IpAddressType = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *Cluster) SetKmsKeyId(v string) *Cluster { s.KmsKeyId = &v @@ -15536,6 +16605,18 @@ return s } +// SetMasterPasswordSecretArn sets the MasterPasswordSecretArn field's value. +func (s *Cluster) SetMasterPasswordSecretArn(v string) *Cluster { + s.MasterPasswordSecretArn = &v + return s +} + +// SetMasterPasswordSecretKmsKeyId sets the MasterPasswordSecretKmsKeyId field's value. +func (s *Cluster) SetMasterPasswordSecretKmsKeyId(v string) *Cluster { + s.MasterPasswordSecretKmsKeyId = &v + return s +} + // SetMasterUsername sets the MasterUsername field's value. func (s *Cluster) SetMasterUsername(v string) *Cluster { s.MasterUsername = &v @@ -15548,6 +16629,18 @@ return s } +// SetMultiAZ sets the MultiAZ field's value. +func (s *Cluster) SetMultiAZ(v string) *Cluster { + s.MultiAZ = &v + return s +} + +// SetMultiAZSecondary sets the MultiAZSecondary field's value. +func (s *Cluster) SetMultiAZSecondary(v *SecondaryClusterInfo) *Cluster { + s.MultiAZSecondary = v + return s +} + // SetNextMaintenanceWindowStartTime sets the NextMaintenanceWindowStartTime field's value. func (s *Cluster) SetNextMaintenanceWindowStartTime(v time.Time) *Cluster { s.NextMaintenanceWindowStartTime = &v @@ -16267,6 +17360,10 @@ // A list of the VPC Subnet elements. Subnets []*Subnet `locationNameList:"Subnet" type:"list"` + // The IP address types supported by this cluster subnet group. Possible values + // are ipv4 and dualstack. + SupportedClusterIpAddressTypes []*string `locationNameList:"item" type:"list"` + // The list of tags for the cluster subnet group. Tags []*Tag `locationNameList:"Tag" type:"list"` @@ -16316,6 +17413,12 @@ return s } +// SetSupportedClusterIpAddressTypes sets the SupportedClusterIpAddressTypes field's value. +func (s *ClusterSubnetGroup) SetSupportedClusterIpAddressTypes(v []*string) *ClusterSubnetGroup { + s.SupportedClusterIpAddressTypes = v + return s +} + // SetTags sets the Tags field's value. func (s *ClusterSubnetGroup) SetTags(v []*Tag) *ClusterSubnetGroup { s.Tags = v @@ -16804,6 +17907,10 @@ // in the Amazon Redshift Cluster Management Guide. IamRoles []*string `locationNameList:"IamRoleArn" type:"list"` + // The IP address types that the cluster supports. Possible values are ipv4 + // and dualstack. + IpAddressType *string `type:"string"` + // The Key Management Service (KMS) key ID of the encryption key that you want // to use to encrypt data in the cluster. KmsKeyId *string `type:"string"` @@ -16816,6 +17923,12 @@ // the current track. MaintenanceTrackName *string `type:"string"` + // If true, Amazon Redshift uses Secrets Manager to manage this cluster's admin + // credentials. You can't use MasterUserPassword if ManageMasterPassword is + // true. If ManageMasterPassword is false or not set, Amazon Redshift uses MasterUserPassword + // for the admin user account's password. + ManageMasterPassword *bool `type:"boolean"` + // 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. @@ -16823,9 +17936,16 @@ // The value must be either -1 or an integer between 1 and 3,653. ManualSnapshotRetentionPeriod *int64 `type:"integer"` + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the cluster's admin credentials secret. You can only use this parameter if + // ManageMasterPassword is true. + MasterPasswordSecretKmsKeyId *string `type:"string"` + // The password associated with the admin user account for the cluster that // is being created. // + // You can't use MasterUserPassword if ManageMasterPassword is true. + // // Constraints: // // * Must be between 8 and 64 characters in length. @@ -16839,8 +17959,10 @@ // * Can be any printable ASCII character (ASCII code 33-126) except ' (single // quote), " (double quote), \, /, or @. // - // MasterUserPassword is a required field - MasterUserPassword *string `type:"string" required:"true"` + // MasterUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateClusterInput's + // String and GoString methods. + MasterUserPassword *string `type:"string" sensitive:"true"` // The user name associated with the admin user account for the cluster that // is being created. @@ -16864,6 +17986,10 @@ // MasterUsername is a required field MasterUsername *string `type:"string" required:"true"` + // If true, Amazon Redshift will deploy the cluster in two Availability Zones + // (AZ). + MultiAZ *bool `type:"boolean"` + // The node type to be provisioned for the cluster. For information about node // types, go to Working with Clusters (https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) // in the Amazon Redshift Cluster Management Guide. @@ -16919,6 +18045,10 @@ // If true, the cluster can be accessed from a public network. PubliclyAccessible *bool `type:"boolean"` + // The Amazon resource name (ARN) of the Amazon Redshift IAM Identity Center + // application. + RedshiftIdcApplicationArn *string `type:"string"` + // A unique identifier for the snapshot schedule. SnapshotScheduleIdentifier *string `type:"string"` @@ -16956,9 +18086,6 @@ if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } - if s.MasterUserPassword == nil { - invalidParams.Add(request.NewErrParamRequired("MasterUserPassword")) - } if s.MasterUsername == nil { invalidParams.Add(request.NewErrParamRequired("MasterUsername")) } @@ -17092,6 +18219,12 @@ return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *CreateClusterInput) SetIpAddressType(v string) *CreateClusterInput { + s.IpAddressType = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *CreateClusterInput) SetKmsKeyId(v string) *CreateClusterInput { s.KmsKeyId = &v @@ -17110,12 +18243,24 @@ return s } +// SetManageMasterPassword sets the ManageMasterPassword field's value. +func (s *CreateClusterInput) SetManageMasterPassword(v bool) *CreateClusterInput { + s.ManageMasterPassword = &v + return s +} + // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. func (s *CreateClusterInput) SetManualSnapshotRetentionPeriod(v int64) *CreateClusterInput { s.ManualSnapshotRetentionPeriod = &v return s } +// SetMasterPasswordSecretKmsKeyId sets the MasterPasswordSecretKmsKeyId field's value. +func (s *CreateClusterInput) SetMasterPasswordSecretKmsKeyId(v string) *CreateClusterInput { + s.MasterPasswordSecretKmsKeyId = &v + return s +} + // SetMasterUserPassword sets the MasterUserPassword field's value. func (s *CreateClusterInput) SetMasterUserPassword(v string) *CreateClusterInput { s.MasterUserPassword = &v @@ -17128,6 +18273,12 @@ return s } +// SetMultiAZ sets the MultiAZ field's value. +func (s *CreateClusterInput) SetMultiAZ(v bool) *CreateClusterInput { + s.MultiAZ = &v + return s +} + // SetNodeType sets the NodeType field's value. func (s *CreateClusterInput) SetNodeType(v string) *CreateClusterInput { s.NodeType = &v @@ -17158,6 +18309,12 @@ return s } +// SetRedshiftIdcApplicationArn sets the RedshiftIdcApplicationArn field's value. +func (s *CreateClusterInput) SetRedshiftIdcApplicationArn(v string) *CreateClusterInput { + s.RedshiftIdcApplicationArn = &v + return s +} + // SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. func (s *CreateClusterInput) SetSnapshotScheduleIdentifier(v string) *CreateClusterInput { s.SnapshotScheduleIdentifier = &v @@ -18482,6 +19639,178 @@ return s } +type CreateRedshiftIdcApplicationInput struct { + _ struct{} `type:"structure"` + + // The token issuer list for the Amazon Redshift IAM Identity Center application + // instance. + AuthorizedTokenIssuerList []*AuthorizedTokenIssuer `type:"list"` + + // The IAM role ARN for the Amazon Redshift IAM Identity Center application + // instance. It has the required permissions to be assumed and invoke the IDC + // Identity Center API. + // + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` + + // The display name for the Amazon Redshift IAM Identity Center application + // instance. It appears in the console. + // + // IdcDisplayName is a required field + IdcDisplayName *string `min:"1" type:"string" required:"true"` + + // The Amazon resource name (ARN) of the IAM Identity Center instance where + // Amazon Redshift creates a new managed application. + // + // IdcInstanceArn is a required field + IdcInstanceArn *string `type:"string" required:"true"` + + // The namespace for the Amazon Redshift IAM Identity Center application instance. + // It determines which managed application verifies the connection token. + IdentityNamespace *string `min:"1" type:"string"` + + // The name of the Redshift application in IAM Identity Center. + // + // RedshiftIdcApplicationName is a required field + RedshiftIdcApplicationName *string `min:"1" type:"string" required:"true"` + + // A collection of service integrations for the Redshift IAM Identity Center + // application. + ServiceIntegrations []*ServiceIntegrationsUnion `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 CreateRedshiftIdcApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRedshiftIdcApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRedshiftIdcApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRedshiftIdcApplicationInput"} + if s.IamRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) + } + if s.IdcDisplayName == nil { + invalidParams.Add(request.NewErrParamRequired("IdcDisplayName")) + } + if s.IdcDisplayName != nil && len(*s.IdcDisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdcDisplayName", 1)) + } + if s.IdcInstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("IdcInstanceArn")) + } + if s.IdentityNamespace != nil && len(*s.IdentityNamespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdentityNamespace", 1)) + } + if s.RedshiftIdcApplicationName == nil { + invalidParams.Add(request.NewErrParamRequired("RedshiftIdcApplicationName")) + } + if s.RedshiftIdcApplicationName != nil && len(*s.RedshiftIdcApplicationName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RedshiftIdcApplicationName", 1)) + } + if s.ServiceIntegrations != nil { + for i, v := range s.ServiceIntegrations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ServiceIntegrations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizedTokenIssuerList sets the AuthorizedTokenIssuerList field's value. +func (s *CreateRedshiftIdcApplicationInput) SetAuthorizedTokenIssuerList(v []*AuthorizedTokenIssuer) *CreateRedshiftIdcApplicationInput { + s.AuthorizedTokenIssuerList = v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *CreateRedshiftIdcApplicationInput) SetIamRoleArn(v string) *CreateRedshiftIdcApplicationInput { + s.IamRoleArn = &v + return s +} + +// SetIdcDisplayName sets the IdcDisplayName field's value. +func (s *CreateRedshiftIdcApplicationInput) SetIdcDisplayName(v string) *CreateRedshiftIdcApplicationInput { + s.IdcDisplayName = &v + return s +} + +// SetIdcInstanceArn sets the IdcInstanceArn field's value. +func (s *CreateRedshiftIdcApplicationInput) SetIdcInstanceArn(v string) *CreateRedshiftIdcApplicationInput { + s.IdcInstanceArn = &v + return s +} + +// SetIdentityNamespace sets the IdentityNamespace field's value. +func (s *CreateRedshiftIdcApplicationInput) SetIdentityNamespace(v string) *CreateRedshiftIdcApplicationInput { + s.IdentityNamespace = &v + return s +} + +// SetRedshiftIdcApplicationName sets the RedshiftIdcApplicationName field's value. +func (s *CreateRedshiftIdcApplicationInput) SetRedshiftIdcApplicationName(v string) *CreateRedshiftIdcApplicationInput { + s.RedshiftIdcApplicationName = &v + return s +} + +// SetServiceIntegrations sets the ServiceIntegrations field's value. +func (s *CreateRedshiftIdcApplicationInput) SetServiceIntegrations(v []*ServiceIntegrationsUnion) *CreateRedshiftIdcApplicationInput { + s.ServiceIntegrations = v + return s +} + +type CreateRedshiftIdcApplicationOutput struct { + _ struct{} `type:"structure"` + + // Contains properties for the Redshift IDC application. + RedshiftIdcApplication *RedshiftIdcApplication `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 CreateRedshiftIdcApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRedshiftIdcApplicationOutput) GoString() string { + return s.String() +} + +// SetRedshiftIdcApplication sets the RedshiftIdcApplication field's value. +func (s *CreateRedshiftIdcApplicationOutput) SetRedshiftIdcApplication(v *RedshiftIdcApplication) *CreateRedshiftIdcApplicationOutput { + s.RedshiftIdcApplication = v + return s +} + type CreateScheduledActionInput struct { _ struct{} `type:"structure"` @@ -19412,6 +20741,9 @@ type DataShareAssociation struct { _ struct{} `type:"structure"` + // Specifies whether write operations were allowed during data share association. + ConsumerAcceptedWrites *bool `type:"boolean"` + // The name of the consumer accounts that have an association with a producer // datashare. ConsumerIdentifier *string `type:"string"` @@ -19423,6 +20755,9 @@ // The creation date of the datashare that is associated. CreatedDate *time.Time `type:"timestamp"` + // Specifies whether write operations were allowed during data share authorization. + ProducerAllowedWrites *bool `type:"boolean"` + // The status of the datashare that is associated. Status *string `type:"string" enum:"DataShareStatus"` @@ -19448,6 +20783,12 @@ return s.String() } +// SetConsumerAcceptedWrites sets the ConsumerAcceptedWrites field's value. +func (s *DataShareAssociation) SetConsumerAcceptedWrites(v bool) *DataShareAssociation { + s.ConsumerAcceptedWrites = &v + return s +} + // SetConsumerIdentifier sets the ConsumerIdentifier field's value. func (s *DataShareAssociation) SetConsumerIdentifier(v string) *DataShareAssociation { s.ConsumerIdentifier = &v @@ -19466,6 +20807,12 @@ return s } +// SetProducerAllowedWrites sets the ProducerAllowedWrites field's value. +func (s *DataShareAssociation) SetProducerAllowedWrites(v bool) *DataShareAssociation { + s.ProducerAllowedWrites = &v + return s +} + // SetStatus sets the Status field's value. func (s *DataShareAssociation) SetStatus(v string) *DataShareAssociation { s.Status = &v @@ -20381,6 +21728,11 @@ // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` + + // The custom domain name for the custom domain association. + // + // CustomDomainName is a required field + CustomDomainName *string `min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -20407,6 +21759,12 @@ if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } + if s.CustomDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainName")) + } + if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -20420,6 +21778,12 @@ return s } +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *DeleteCustomDomainAssociationInput) SetCustomDomainName(v string) *DeleteCustomDomainAssociationInput { + s.CustomDomainName = &v + return s +} + type DeleteCustomDomainAssociationOutput struct { _ struct{} `type:"structure"` } @@ -20937,6 +22301,143 @@ return s } +type DeleteRedshiftIdcApplicationInput struct { + _ struct{} `type:"structure"` + + // The ARN for a deleted Amazon Redshift IAM Identity Center application. + // + // RedshiftIdcApplicationArn is a required field + RedshiftIdcApplicationArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRedshiftIdcApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRedshiftIdcApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRedshiftIdcApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRedshiftIdcApplicationInput"} + if s.RedshiftIdcApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("RedshiftIdcApplicationArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRedshiftIdcApplicationArn sets the RedshiftIdcApplicationArn field's value. +func (s *DeleteRedshiftIdcApplicationInput) SetRedshiftIdcApplicationArn(v string) *DeleteRedshiftIdcApplicationInput { + s.RedshiftIdcApplicationArn = &v + return s +} + +type DeleteRedshiftIdcApplicationOutput 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 DeleteRedshiftIdcApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteRedshiftIdcApplicationOutput) GoString() string { + return s.String() +} + +type DeleteResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource of which its resource policy + // is deleted. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteResourcePolicyInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// 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 DeleteScheduledActionInput struct { _ struct{} `type:"structure"` @@ -24136,6 +25637,120 @@ return s } +type DescribeInboundIntegrationsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the inbound integration. + IntegrationArn *string `type:"string"` + + // An optional parameter that specifies the starting point to return a set of + // response records. When the results of a DescribeInboundIntegrations request + // exceed the value specified in MaxRecords, Amazon Web Services returns a value + // in the Marker field of the response. You can retrieve the next set of response + // records by providing the returned marker value in the Marker parameter and + // retrying the request. + Marker *string `type:"string"` + + // The maximum number of response records to return in each call. If the number + // of remaining response records exceeds the specified MaxRecords value, a value + // is returned in a marker field of the response. You can retrieve the next + // set of records by retrying the command with the returned marker value. + // + // Default: 100 + // + // Constraints: minimum 20, maximum 100. + MaxRecords *int64 `type:"integer"` + + // The Amazon Resource Name (ARN) of the target of an inbound integration. + TargetArn *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 DescribeInboundIntegrationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInboundIntegrationsInput) GoString() string { + return s.String() +} + +// SetIntegrationArn sets the IntegrationArn field's value. +func (s *DescribeInboundIntegrationsInput) SetIntegrationArn(v string) *DescribeInboundIntegrationsInput { + s.IntegrationArn = &v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeInboundIntegrationsInput) SetMarker(v string) *DescribeInboundIntegrationsInput { + s.Marker = &v + return s +} + +// SetMaxRecords sets the MaxRecords field's value. +func (s *DescribeInboundIntegrationsInput) SetMaxRecords(v int64) *DescribeInboundIntegrationsInput { + s.MaxRecords = &v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *DescribeInboundIntegrationsInput) SetTargetArn(v string) *DescribeInboundIntegrationsInput { + s.TargetArn = &v + return s +} + +type DescribeInboundIntegrationsOutput struct { + _ struct{} `type:"structure"` + + // A list of InboundIntegration instances. + InboundIntegrations []*InboundIntegration `locationNameList:"InboundIntegration" type:"list"` + + // A value that indicates the starting point for the next set of response records + // in a subsequent request. If a value is returned in a response, you can retrieve + // the next set of records by providing this returned marker value in the Marker + // parameter and retrying the command. If the Marker field is empty, all response + // records have been retrieved for the request. + Marker *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 DescribeInboundIntegrationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInboundIntegrationsOutput) GoString() string { + return s.String() +} + +// SetInboundIntegrations sets the InboundIntegrations field's value. +func (s *DescribeInboundIntegrationsOutput) SetInboundIntegrations(v []*InboundIntegration) *DescribeInboundIntegrationsOutput { + s.InboundIntegrations = v + return s +} + +// SetMarker sets the Marker field's value. +func (s *DescribeInboundIntegrationsOutput) SetMarker(v string) *DescribeInboundIntegrationsOutput { + s.Marker = &v + return s +} + type DescribeLoggingStatusInput struct { _ struct{} `type:"structure"` @@ -24592,6 +26207,106 @@ return s } +type DescribeRedshiftIdcApplicationsInput struct { + _ struct{} `type:"structure"` + + // A value that indicates the starting point for the next set of response records + // in a subsequent request. If a value is returned in a response, you can retrieve + // the next set of records by providing this returned marker value in the Marker + // parameter and retrying the command. If the Marker field is empty, all response + // records have been retrieved for the request. + Marker *string `type:"string"` + + // The maximum number of response records to return in each call. If the number + // of remaining response records exceeds the specified MaxRecords value, a value + // is returned in a marker field of the response. You can retrieve the next + // set of records by retrying the command with the returned marker value. + MaxRecords *int64 `type:"integer"` + + // The ARN for the Redshift application that integrates with IAM Identity Center. + RedshiftIdcApplicationArn *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 DescribeRedshiftIdcApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRedshiftIdcApplicationsInput) GoString() string { + return s.String() +} + +// SetMarker sets the Marker field's value. +func (s *DescribeRedshiftIdcApplicationsInput) SetMarker(v string) *DescribeRedshiftIdcApplicationsInput { + s.Marker = &v + return s +} + +// SetMaxRecords sets the MaxRecords field's value. +func (s *DescribeRedshiftIdcApplicationsInput) SetMaxRecords(v int64) *DescribeRedshiftIdcApplicationsInput { + s.MaxRecords = &v + return s +} + +// SetRedshiftIdcApplicationArn sets the RedshiftIdcApplicationArn field's value. +func (s *DescribeRedshiftIdcApplicationsInput) SetRedshiftIdcApplicationArn(v string) *DescribeRedshiftIdcApplicationsInput { + s.RedshiftIdcApplicationArn = &v + return s +} + +type DescribeRedshiftIdcApplicationsOutput struct { + _ struct{} `type:"structure"` + + // A value that indicates the starting point for the next set of response records + // in a subsequent request. If a value is returned in a response, you can retrieve + // the next set of records by providing this returned marker value in the Marker + // parameter and retrying the command. If the Marker field is empty, all response + // records have been retrieved for the request. + Marker *string `type:"string"` + + // The list of Amazon Redshift IAM Identity Center applications. + RedshiftIdcApplications []*RedshiftIdcApplication `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 DescribeRedshiftIdcApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeRedshiftIdcApplicationsOutput) GoString() string { + return s.String() +} + +// SetMarker sets the Marker field's value. +func (s *DescribeRedshiftIdcApplicationsOutput) SetMarker(v string) *DescribeRedshiftIdcApplicationsOutput { + s.Marker = &v + return s +} + +// SetRedshiftIdcApplications sets the RedshiftIdcApplications field's value. +func (s *DescribeRedshiftIdcApplicationsOutput) SetRedshiftIdcApplications(v []*RedshiftIdcApplication) *DescribeRedshiftIdcApplicationsOutput { + s.RedshiftIdcApplications = v + return s +} + type DescribeReservedNodeExchangeStatusInput struct { _ struct{} `type:"structure"` @@ -27296,6 +29011,84 @@ return s } +type FailoverPrimaryComputeInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the cluster for which the primary compute unit will + // be failed over to another Availability Zone. + // + // ClusterIdentifier is a required field + ClusterIdentifier *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailoverPrimaryComputeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailoverPrimaryComputeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FailoverPrimaryComputeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FailoverPrimaryComputeInput"} + if s.ClusterIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterIdentifier sets the ClusterIdentifier field's value. +func (s *FailoverPrimaryComputeInput) SetClusterIdentifier(v string) *FailoverPrimaryComputeInput { + s.ClusterIdentifier = &v + return s +} + +type FailoverPrimaryComputeOutput struct { + _ struct{} `type:"structure"` + + // Describes a cluster. + Cluster *Cluster `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 FailoverPrimaryComputeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FailoverPrimaryComputeOutput) GoString() string { + return s.String() +} + +// SetCluster sets the Cluster field's value. +func (s *FailoverPrimaryComputeOutput) SetCluster(v *Cluster) *FailoverPrimaryComputeOutput { + s.Cluster = v + return s +} + // The request parameters to get cluster credentials. type GetClusterCredentialsInput struct { _ struct{} `type:"structure"` @@ -27894,6 +29687,84 @@ return s } +type GetResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource of which its resource policy + // is fetched. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 content of the resource policy. + ResourcePolicy *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 +} + // Returns information about an HSM client certificate. The certificate is stored // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift // cluster to encrypt data files. @@ -28123,6 +29994,221 @@ return s } +// The content of an inbound integration. +type InboundIntegration struct { + _ struct{} `type:"structure"` + + // The creation time of an inbound integration. + CreateTime *time.Time `type:"timestamp"` + + // The outstanding errors of an inbound integration. Each item is an "IntegrationError". + // This is null if there is no error. + Errors []*IntegrationError `locationNameList:"IntegrationError" type:"list"` + + // The Amazon Resource Name (ARN) of an inbound integration. + IntegrationArn *string `type:"string"` + + // The Amazon Resource Name (ARN) of the source of an inbound integration. + SourceArn *string `type:"string"` + + // The status of an inbound integration. + Status *string `type:"string" enum:"ZeroETLIntegrationStatus"` + + // The Amazon Resource Name (ARN) of the target of an inbound integration. + TargetArn *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 InboundIntegration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InboundIntegration) GoString() string { + return s.String() +} + +// SetCreateTime sets the CreateTime field's value. +func (s *InboundIntegration) SetCreateTime(v time.Time) *InboundIntegration { + s.CreateTime = &v + return s +} + +// SetErrors sets the Errors field's value. +func (s *InboundIntegration) SetErrors(v []*IntegrationError) *InboundIntegration { + s.Errors = v + return s +} + +// SetIntegrationArn sets the IntegrationArn field's value. +func (s *InboundIntegration) SetIntegrationArn(v string) *InboundIntegration { + s.IntegrationArn = &v + return s +} + +// SetSourceArn sets the SourceArn field's value. +func (s *InboundIntegration) SetSourceArn(v string) *InboundIntegration { + s.SourceArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *InboundIntegration) SetStatus(v string) *InboundIntegration { + s.Status = &v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *InboundIntegration) SetTargetArn(v string) *InboundIntegration { + s.TargetArn = &v + return s +} + +// The error of an inbound integration. +type IntegrationError struct { + _ struct{} `type:"structure"` + + // The error code of an inbound integration error. + // + // ErrorCode is a required field + ErrorCode *string `type:"string" required:"true"` + + // The error message of an inbound integration error. + ErrorMessage *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 IntegrationError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntegrationError) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *IntegrationError) SetErrorCode(v string) *IntegrationError { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *IntegrationError) SetErrorMessage(v string) *IntegrationError { + s.ErrorMessage = &v + return s +} + +// The Lake Formation scope. +type LakeFormationQuery struct { + _ struct{} `type:"structure"` + + // Determines whether the query scope is enabled or disabled. + // + // Authorization is a required field + Authorization *string `type:"string" required:"true" enum:"ServiceAuthorization"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationQuery) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationQuery) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LakeFormationQuery) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LakeFormationQuery"} + if s.Authorization == nil { + invalidParams.Add(request.NewErrParamRequired("Authorization")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorization sets the Authorization field's value. +func (s *LakeFormationQuery) SetAuthorization(v string) *LakeFormationQuery { + s.Authorization = &v + return s +} + +// A list of scopes set up for Lake Formation integration. +type LakeFormationScopeUnion struct { + _ struct{} `type:"structure"` + + // The Lake Formation scope. + LakeFormationQuery *LakeFormationQuery `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 LakeFormationScopeUnion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationScopeUnion) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LakeFormationScopeUnion) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LakeFormationScopeUnion"} + if s.LakeFormationQuery != nil { + if err := s.LakeFormationQuery.Validate(); err != nil { + invalidParams.AddNested("LakeFormationQuery", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLakeFormationQuery sets the LakeFormationQuery field's value. +func (s *LakeFormationScopeUnion) SetLakeFormationQuery(v *LakeFormationQuery) *LakeFormationScopeUnion { + s.LakeFormationQuery = v + return s +} + // Describes the status of logging for a cluster. type LoggingStatus struct { _ struct{} `type:"structure"` @@ -28786,6 +30872,10 @@ // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HsmConfigurationIdentifier *string `type:"string"` + // The IP address types that the cluster supports. Possible values are ipv4 + // and dualstack. + IpAddressType *string `type:"string"` + // The Key Management Service (KMS) key ID of the encryption key that you want // to use to encrypt data in the cluster. KmsKeyId *string `type:"string"` @@ -28797,6 +30887,12 @@ // for the maintenance track. At this point, the maintenance track name is applied. MaintenanceTrackName *string `type:"string"` + // If true, Amazon Redshift uses Secrets Manager to manage this cluster's admin + // credentials. You can't use MasterUserPassword if ManageMasterPassword is + // true. If ManageMasterPassword is false or not set, Amazon Redshift uses MasterUserPassword + // for the admin user account's password. + ManageMasterPassword *bool `type:"boolean"` + // The default for number of days that a newly created manual snapshot is retained. // If the value is -1, the manual snapshot is retained indefinitely. This value // doesn't retroactively change the retention periods of existing manual snapshots. @@ -28806,11 +30902,18 @@ // The default value is -1. ManualSnapshotRetentionPeriod *int64 `type:"integer"` + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the cluster's admin credentials secret. You can only use this parameter if + // ManageMasterPassword is true. + MasterPasswordSecretKmsKeyId *string `type:"string"` + // The new password for the cluster admin user. This change is asynchronously // applied as soon as possible. Between the time of the request and the completion // of the request, the MasterUserPassword element exists in the PendingModifiedValues // element of the operation response. // + // You can't use MasterUserPassword if ManageMasterPassword is true. + // // Operations never return the password, so this operation provides a way to // regain access to the admin user account for a cluster if the password is // lost. @@ -28829,7 +30932,15 @@ // // * Can be any printable ASCII character (ASCII code 33-126) except ' (single // quote), " (double quote), \, /, or @. - MasterUserPassword *string `type:"string"` + // + // MasterUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ModifyClusterInput's + // String and GoString methods. + MasterUserPassword *string `type:"string" sensitive:"true"` + + // If true and the cluster is currently only deployed in a single Availability + // Zone, the cluster will be modified to be deployed in two Availability Zones. + MultiAZ *bool `type:"boolean"` // The new identifier for the cluster. // @@ -29014,6 +31125,12 @@ return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *ModifyClusterInput) SetIpAddressType(v string) *ModifyClusterInput { + s.IpAddressType = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *ModifyClusterInput) SetKmsKeyId(v string) *ModifyClusterInput { s.KmsKeyId = &v @@ -29026,18 +31143,36 @@ return s } +// SetManageMasterPassword sets the ManageMasterPassword field's value. +func (s *ModifyClusterInput) SetManageMasterPassword(v bool) *ModifyClusterInput { + s.ManageMasterPassword = &v + return s +} + // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. func (s *ModifyClusterInput) SetManualSnapshotRetentionPeriod(v int64) *ModifyClusterInput { s.ManualSnapshotRetentionPeriod = &v return s } +// SetMasterPasswordSecretKmsKeyId sets the MasterPasswordSecretKmsKeyId field's value. +func (s *ModifyClusterInput) SetMasterPasswordSecretKmsKeyId(v string) *ModifyClusterInput { + s.MasterPasswordSecretKmsKeyId = &v + return s +} + // SetMasterUserPassword sets the MasterUserPassword field's value. func (s *ModifyClusterInput) SetMasterUserPassword(v string) *ModifyClusterInput { s.MasterUserPassword = &v return s } +// SetMultiAZ sets the MultiAZ field's value. +func (s *ModifyClusterInput) SetMultiAZ(v bool) *ModifyClusterInput { + s.MultiAZ = &v + return s +} + // SetNewClusterIdentifier sets the NewClusterIdentifier field's value. func (s *ModifyClusterInput) SetNewClusterIdentifier(v string) *ModifyClusterInput { s.NewClusterIdentifier = &v @@ -29605,10 +31740,14 @@ // The certificate Amazon Resource Name (ARN) for the changed custom domain // association. - CustomDomainCertificateArn *string `min:"20" type:"string"` + // + // CustomDomainCertificateArn is a required field + CustomDomainCertificateArn *string `min:"20" type:"string" required:"true"` // The custom domain name for a changed custom domain association. - CustomDomainName *string `min:"1" type:"string"` + // + // CustomDomainName is a required field + CustomDomainName *string `min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -29635,9 +31774,15 @@ if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } + if s.CustomDomainCertificateArn == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainCertificateArn")) + } if s.CustomDomainCertificateArn != nil && len(*s.CustomDomainCertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CustomDomainCertificateArn", 20)) } + if s.CustomDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainName")) + } if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) } @@ -30052,6 +32197,149 @@ return s } +type ModifyRedshiftIdcApplicationInput struct { + _ struct{} `type:"structure"` + + // The authorized token issuer list for the Amazon Redshift IAM Identity Center + // application to change. + AuthorizedTokenIssuerList []*AuthorizedTokenIssuer `type:"list"` + + // The IAM role ARN associated with the Amazon Redshift IAM Identity Center + // application to change. It has the required permissions to be assumed and + // invoke the IDC Identity Center API. + IamRoleArn *string `type:"string"` + + // The display name for the Amazon Redshift IAM Identity Center application + // to change. It appears on the console. + IdcDisplayName *string `min:"1" type:"string"` + + // The namespace for the Amazon Redshift IAM Identity Center application to + // change. It determines which managed application verifies the connection token. + IdentityNamespace *string `min:"1" type:"string"` + + // The ARN for the Redshift application that integrates with IAM Identity Center. + // + // RedshiftIdcApplicationArn is a required field + RedshiftIdcApplicationArn *string `type:"string" required:"true"` + + // A collection of service integrations associated with the application. + ServiceIntegrations []*ServiceIntegrationsUnion `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 ModifyRedshiftIdcApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyRedshiftIdcApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModifyRedshiftIdcApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModifyRedshiftIdcApplicationInput"} + if s.IdcDisplayName != nil && len(*s.IdcDisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdcDisplayName", 1)) + } + if s.IdentityNamespace != nil && len(*s.IdentityNamespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdentityNamespace", 1)) + } + if s.RedshiftIdcApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("RedshiftIdcApplicationArn")) + } + if s.ServiceIntegrations != nil { + for i, v := range s.ServiceIntegrations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ServiceIntegrations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizedTokenIssuerList sets the AuthorizedTokenIssuerList field's value. +func (s *ModifyRedshiftIdcApplicationInput) SetAuthorizedTokenIssuerList(v []*AuthorizedTokenIssuer) *ModifyRedshiftIdcApplicationInput { + s.AuthorizedTokenIssuerList = v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *ModifyRedshiftIdcApplicationInput) SetIamRoleArn(v string) *ModifyRedshiftIdcApplicationInput { + s.IamRoleArn = &v + return s +} + +// SetIdcDisplayName sets the IdcDisplayName field's value. +func (s *ModifyRedshiftIdcApplicationInput) SetIdcDisplayName(v string) *ModifyRedshiftIdcApplicationInput { + s.IdcDisplayName = &v + return s +} + +// SetIdentityNamespace sets the IdentityNamespace field's value. +func (s *ModifyRedshiftIdcApplicationInput) SetIdentityNamespace(v string) *ModifyRedshiftIdcApplicationInput { + s.IdentityNamespace = &v + return s +} + +// SetRedshiftIdcApplicationArn sets the RedshiftIdcApplicationArn field's value. +func (s *ModifyRedshiftIdcApplicationInput) SetRedshiftIdcApplicationArn(v string) *ModifyRedshiftIdcApplicationInput { + s.RedshiftIdcApplicationArn = &v + return s +} + +// SetServiceIntegrations sets the ServiceIntegrations field's value. +func (s *ModifyRedshiftIdcApplicationInput) SetServiceIntegrations(v []*ServiceIntegrationsUnion) *ModifyRedshiftIdcApplicationInput { + s.ServiceIntegrations = v + return s +} + +type ModifyRedshiftIdcApplicationOutput struct { + _ struct{} `type:"structure"` + + // Contains properties for the Redshift IDC application. + RedshiftIdcApplication *RedshiftIdcApplication `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 ModifyRedshiftIdcApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModifyRedshiftIdcApplicationOutput) GoString() string { + return s.String() +} + +// SetRedshiftIdcApplication sets the RedshiftIdcApplication field's value. +func (s *ModifyRedshiftIdcApplicationOutput) SetRedshiftIdcApplication(v *RedshiftIdcApplication) *ModifyRedshiftIdcApplicationOutput { + s.RedshiftIdcApplication = v + return s +} + type ModifyScheduledActionInput struct { _ struct{} `type:"structure"` @@ -30747,6 +33035,9 @@ // The Availability Zone. AvailabilityZone *string `type:"string"` + // The IPv6 address of the network interface within the subnet. + Ipv6Address *string `type:"string"` + // The network interface identifier. NetworkInterfaceId *string `type:"string"` @@ -30781,6 +33072,12 @@ return s } +// SetIpv6Address sets the Ipv6Address field's value. +func (s *NetworkInterface) SetIpv6Address(v string) *NetworkInterface { + s.Ipv6Address = &v + return s +} + // SetNetworkInterfaceId sets the NetworkInterfaceId field's value. func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface { s.NetworkInterfaceId = &v @@ -31325,7 +33622,11 @@ MaintenanceTrackName *string `type:"string"` // The pending or in-progress change of the admin user password for the cluster. - MasterUserPassword *string `type:"string"` + // + // MasterUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PendingModifiedValues's + // String and GoString methods. + MasterUserPassword *string `type:"string" sensitive:"true"` // The pending or in-progress change of the cluster's node type. NodeType *string `type:"string"` @@ -31511,6 +33812,98 @@ return s } +type PutResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The content of the resource policy being updated. + // + // Policy is a required field + Policy *string `type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the resource of which its resource policy + // is updated. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 content of the updated resource policy. + ResourcePolicy *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 +} + type RebootClusterInput struct { _ struct{} `type:"structure"` @@ -31630,6 +34023,123 @@ return s } +// Contains properties for the Redshift IDC application. +type RedshiftIdcApplication struct { + _ struct{} `type:"structure"` + + // The authorized token issuer list for the Amazon Redshift IAM Identity Center + // application. + AuthorizedTokenIssuerList []*AuthorizedTokenIssuer `type:"list"` + + // The ARN for the Amazon Redshift IAM Identity Center application. It has the + // required permissions to be assumed and invoke the IDC Identity Center API. + IamRoleArn *string `type:"string"` + + // The display name for the Amazon Redshift IAM Identity Center application. + // It appears on the console. + IdcDisplayName *string `min:"1" type:"string"` + + // The ARN for the IAM Identity Center instance that Redshift integrates with. + IdcInstanceArn *string `type:"string"` + + // The ARN for the Amazon Redshift IAM Identity Center application. + IdcManagedApplicationArn *string `type:"string"` + + // The onboarding status for the Amazon Redshift IAM Identity Center application. + IdcOnboardStatus *string `type:"string"` + + // The identity namespace for the Amazon Redshift IAM Identity Center application. + // It determines which managed application verifies the connection token. + IdentityNamespace *string `min:"1" type:"string"` + + // The ARN for the Redshift application that integrates with IAM Identity Center. + RedshiftIdcApplicationArn *string `type:"string"` + + // The name of the Redshift application in IAM Identity Center. + RedshiftIdcApplicationName *string `min:"1" type:"string"` + + // A list of service integrations for the Redshift IAM Identity Center application. + ServiceIntegrations []*ServiceIntegrationsUnion `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 RedshiftIdcApplication) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftIdcApplication) GoString() string { + return s.String() +} + +// SetAuthorizedTokenIssuerList sets the AuthorizedTokenIssuerList field's value. +func (s *RedshiftIdcApplication) SetAuthorizedTokenIssuerList(v []*AuthorizedTokenIssuer) *RedshiftIdcApplication { + s.AuthorizedTokenIssuerList = v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RedshiftIdcApplication) SetIamRoleArn(v string) *RedshiftIdcApplication { + s.IamRoleArn = &v + return s +} + +// SetIdcDisplayName sets the IdcDisplayName field's value. +func (s *RedshiftIdcApplication) SetIdcDisplayName(v string) *RedshiftIdcApplication { + s.IdcDisplayName = &v + return s +} + +// SetIdcInstanceArn sets the IdcInstanceArn field's value. +func (s *RedshiftIdcApplication) SetIdcInstanceArn(v string) *RedshiftIdcApplication { + s.IdcInstanceArn = &v + return s +} + +// SetIdcManagedApplicationArn sets the IdcManagedApplicationArn field's value. +func (s *RedshiftIdcApplication) SetIdcManagedApplicationArn(v string) *RedshiftIdcApplication { + s.IdcManagedApplicationArn = &v + return s +} + +// SetIdcOnboardStatus sets the IdcOnboardStatus field's value. +func (s *RedshiftIdcApplication) SetIdcOnboardStatus(v string) *RedshiftIdcApplication { + s.IdcOnboardStatus = &v + return s +} + +// SetIdentityNamespace sets the IdentityNamespace field's value. +func (s *RedshiftIdcApplication) SetIdentityNamespace(v string) *RedshiftIdcApplication { + s.IdentityNamespace = &v + return s +} + +// SetRedshiftIdcApplicationArn sets the RedshiftIdcApplicationArn field's value. +func (s *RedshiftIdcApplication) SetRedshiftIdcApplicationArn(v string) *RedshiftIdcApplication { + s.RedshiftIdcApplicationArn = &v + return s +} + +// SetRedshiftIdcApplicationName sets the RedshiftIdcApplicationName field's value. +func (s *RedshiftIdcApplication) SetRedshiftIdcApplicationName(v string) *RedshiftIdcApplication { + s.RedshiftIdcApplicationName = &v + return s +} + +// SetServiceIntegrations sets the ServiceIntegrations field's value. +func (s *RedshiftIdcApplication) SetServiceIntegrations(v []*ServiceIntegrationsUnion) *RedshiftIdcApplication { + s.ServiceIntegrations = v + return s +} + type RejectDataShareInput struct { _ struct{} `type:"structure"` @@ -32526,6 +35036,47 @@ return s } +// The policy that is attached to a resource. +type ResourcePolicy struct { + _ struct{} `type:"structure"` + + // The content of a resource policy. + Policy *string `type:"string"` + + // The resources that a policy is attached to. + ResourceArn *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 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 RestoreFromClusterSnapshotInput struct { _ struct{} `type:"structure"` @@ -32653,6 +35204,9 @@ // in the Amazon Redshift Cluster Management Guide. IamRoles []*string `locationNameList:"IamRoleArn" type:"list"` + // The IP address type for the cluster. Possible values are ipv4 and dualstack. + IpAddressType *string `type:"string"` + // The Key Management Service (KMS) key ID of the encryption key that encrypts // data in the cluster restored from a shared snapshot. You can also provide // the key ID when you restore from an unencrypted snapshot to an encrypted @@ -32671,6 +35225,11 @@ // are on different tracks. MaintenanceTrackName *string `type:"string"` + // If true, Amazon Redshift uses Secrets Manager to manage the restored cluster's + // admin credentials. If ManageMasterPassword is false or not set, Amazon Redshift + // uses the admin credentials the cluster had at the time the snapshot was taken. + ManageMasterPassword *bool `type:"boolean"` + // 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. @@ -32678,6 +35237,15 @@ // The value must be either -1 or an integer between 1 and 3,653. ManualSnapshotRetentionPeriod *int64 `type:"integer"` + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the cluster's admin credentials secret. You can only use this parameter if + // ManageMasterPassword is true. + MasterPasswordSecretKmsKeyId *string `type:"string"` + + // If true, the snapshot will be restored to a cluster deployed in two Availability + // Zones. + MultiAZ *bool `type:"boolean"` + // The node type that the restored cluster will be provisioned with. // // Default: The node type of the cluster from which the snapshot was taken. @@ -32893,6 +35461,12 @@ return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *RestoreFromClusterSnapshotInput) SetIpAddressType(v string) *RestoreFromClusterSnapshotInput { + s.IpAddressType = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *RestoreFromClusterSnapshotInput) SetKmsKeyId(v string) *RestoreFromClusterSnapshotInput { s.KmsKeyId = &v @@ -32905,12 +35479,30 @@ return s } +// SetManageMasterPassword sets the ManageMasterPassword field's value. +func (s *RestoreFromClusterSnapshotInput) SetManageMasterPassword(v bool) *RestoreFromClusterSnapshotInput { + s.ManageMasterPassword = &v + return s +} + // SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. func (s *RestoreFromClusterSnapshotInput) SetManualSnapshotRetentionPeriod(v int64) *RestoreFromClusterSnapshotInput { s.ManualSnapshotRetentionPeriod = &v return s } +// SetMasterPasswordSecretKmsKeyId sets the MasterPasswordSecretKmsKeyId field's value. +func (s *RestoreFromClusterSnapshotInput) SetMasterPasswordSecretKmsKeyId(v string) *RestoreFromClusterSnapshotInput { + s.MasterPasswordSecretKmsKeyId = &v + return s +} + +// SetMultiAZ sets the MultiAZ field's value. +func (s *RestoreFromClusterSnapshotInput) SetMultiAZ(v bool) *RestoreFromClusterSnapshotInput { + s.MultiAZ = &v + return s +} + // SetNodeType sets the NodeType field's value. func (s *RestoreFromClusterSnapshotInput) SetNodeType(v string) *RestoreFromClusterSnapshotInput { s.NodeType = &v @@ -34188,6 +36780,101 @@ return s } +// The AvailabilityZone and ClusterNodes information of the secondary compute +// unit. +type SecondaryClusterInfo struct { + _ struct{} `type:"structure"` + + // The name of the Availability Zone in which the secondary compute unit of + // the cluster is located. + AvailabilityZone *string `type:"string"` + + // The nodes in the secondary compute unit. + ClusterNodes []*ClusterNode `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 SecondaryClusterInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecondaryClusterInfo) GoString() string { + return s.String() +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *SecondaryClusterInfo) SetAvailabilityZone(v string) *SecondaryClusterInfo { + s.AvailabilityZone = &v + return s +} + +// SetClusterNodes sets the ClusterNodes field's value. +func (s *SecondaryClusterInfo) SetClusterNodes(v []*ClusterNode) *SecondaryClusterInfo { + s.ClusterNodes = v + return s +} + +// A list of service integrations. +type ServiceIntegrationsUnion struct { + _ struct{} `type:"structure"` + + // A list of scopes set up for Lake Formation integration. + LakeFormation []*LakeFormationScopeUnion `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 ServiceIntegrationsUnion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceIntegrationsUnion) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ServiceIntegrationsUnion) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ServiceIntegrationsUnion"} + if s.LakeFormation != nil { + for i, v := range s.LakeFormation { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LakeFormation", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLakeFormation sets the LakeFormation field's value. +func (s *ServiceIntegrationsUnion) SetLakeFormation(v []*LakeFormationScopeUnion) *ServiceIntegrationsUnion { + s.LakeFormation = v + return s +} + // Describes a snapshot. type Snapshot struct { _ struct{} `type:"structure"` @@ -34269,6 +36956,13 @@ // The value must be either -1 or an integer between 1 and 3,653. ManualSnapshotRetentionPeriod *int64 `type:"integer"` + // The Amazon Resource Name (ARN) for the cluster's admin user credentials secret. + MasterPasswordSecretArn *string `type:"string"` + + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the cluster's admin credentials secret. + MasterPasswordSecretKmsKeyId *string `type:"string"` + // The admin user name for the cluster. MasterUsername *string `type:"string"` @@ -34461,6 +37155,18 @@ return s } +// SetMasterPasswordSecretArn sets the MasterPasswordSecretArn field's value. +func (s *Snapshot) SetMasterPasswordSecretArn(v string) *Snapshot { + s.MasterPasswordSecretArn = &v + return s +} + +// SetMasterPasswordSecretKmsKeyId sets the MasterPasswordSecretKmsKeyId field's value. +func (s *Snapshot) SetMasterPasswordSecretKmsKeyId(v string) *Snapshot { + s.MasterPasswordSecretKmsKeyId = &v + return s +} + // SetMasterUsername sets the MasterUsername field's value. func (s *Snapshot) SetMasterUsername(v string) *Snapshot { s.MasterUsername = &v @@ -36017,6 +38723,22 @@ } const ( + // ServiceAuthorizationEnabled is a ServiceAuthorization enum value + ServiceAuthorizationEnabled = "Enabled" + + // ServiceAuthorizationDisabled is a ServiceAuthorization enum value + ServiceAuthorizationDisabled = "Disabled" +) + +// ServiceAuthorization_Values returns all elements of the ServiceAuthorization enum +func ServiceAuthorization_Values() []string { + return []string{ + ServiceAuthorizationEnabled, + ServiceAuthorizationDisabled, + } +} + +const ( // SnapshotAttributeToSortBySourceType is a SnapshotAttributeToSortBy enum value SnapshotAttributeToSortBySourceType = "SOURCE_TYPE" @@ -36183,3 +38905,39 @@ UsageLimitPeriodMonthly, } } + +const ( + // ZeroETLIntegrationStatusCreating is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusCreating = "creating" + + // ZeroETLIntegrationStatusActive is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusActive = "active" + + // ZeroETLIntegrationStatusModifying is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusModifying = "modifying" + + // ZeroETLIntegrationStatusFailed is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusFailed = "failed" + + // ZeroETLIntegrationStatusDeleting is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusDeleting = "deleting" + + // ZeroETLIntegrationStatusSyncing is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusSyncing = "syncing" + + // ZeroETLIntegrationStatusNeedsAttention is a ZeroETLIntegrationStatus enum value + ZeroETLIntegrationStatusNeedsAttention = "needs_attention" +) + +// ZeroETLIntegrationStatus_Values returns all elements of the ZeroETLIntegrationStatus enum +func ZeroETLIntegrationStatus_Values() []string { + return []string{ + ZeroETLIntegrationStatusCreating, + ZeroETLIntegrationStatusActive, + ZeroETLIntegrationStatusModifying, + ZeroETLIntegrationStatusFailed, + ZeroETLIntegrationStatusDeleting, + ZeroETLIntegrationStatusSyncing, + ZeroETLIntegrationStatusNeedsAttention, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/redshift/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/redshift/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/redshift/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/redshift/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -198,6 +198,12 @@ // in the Amazon Redshift Cluster Management Guide. ErrCodeClusterSubnetQuotaExceededFault = "ClusterSubnetQuotaExceededFault" + // ErrCodeConflictPolicyUpdateFault for service response error code + // "ConflictPolicyUpdateFault". + // + // There is a conflict while updating the resource policy. + ErrCodeConflictPolicyUpdateFault = "ConflictPolicyUpdateFault" + // ErrCodeCopyToRegionDisabledFault for service response error code // "CopyToRegionDisabledFault". // @@ -216,6 +222,12 @@ // An error occurred. The custom domain name couldn't be found. ErrCodeCustomDomainAssociationNotFoundFault = "CustomDomainAssociationNotFoundFault" + // ErrCodeDependentServiceAccessDeniedFault for service response error code + // "DependentServiceAccessDenied". + // + // A dependent service denied access for the integration. + ErrCodeDependentServiceAccessDeniedFault = "DependentServiceAccessDenied" + // ErrCodeDependentServiceRequestThrottlingFault for service response error code // "DependentServiceRequestThrottlingFault". // @@ -351,6 +363,12 @@ // bucket specified when enabling logging. ErrCodeInsufficientS3BucketPolicyFault = "InsufficientS3BucketPolicyFault" + // ErrCodeIntegrationNotFoundFault for service response error code + // "IntegrationNotFoundFault". + // + // The integration can't be found. + ErrCodeIntegrationNotFoundFault = "IntegrationNotFoundFault" + // ErrCodeInvalidAuthenticationProfileRequestFault for service response error code // "InvalidAuthenticationProfileRequestFault". // @@ -455,6 +473,12 @@ // valid namespace. ErrCodeInvalidNamespaceFault = "InvalidNamespaceFault" + // ErrCodeInvalidPolicyFault for service response error code + // "InvalidPolicyFault". + // + // The resource policy isn't valid. + ErrCodeInvalidPolicyFault = "InvalidPolicyFault" + // ErrCodeInvalidReservedNodeStateFault for service response error code // "InvalidReservedNodeState". // @@ -548,6 +572,13 @@ // The cluster subnet group does not cover all Availability Zones. ErrCodeInvalidVPCNetworkStateFault = "InvalidVPCNetworkStateFault" + // ErrCodeIpv6CidrBlockNotFoundFault for service response error code + // "Ipv6CidrBlockNotFoundFault". + // + // There are no subnets in your VPC with associated IPv6 CIDR blocks. To use + // dual-stack mode, associate an IPv6 CIDR block with each subnet in your VPC. + ErrCodeIpv6CidrBlockNotFoundFault = "Ipv6CidrBlockNotFoundFault" + // ErrCodeLimitExceededFault for service response error code // "LimitExceededFault". // @@ -575,6 +606,24 @@ // The name of the partner was not found. ErrCodePartnerNotFoundFault = "PartnerNotFound" + // ErrCodeRedshiftIdcApplicationAlreadyExistsFault for service response error code + // "RedshiftIdcApplicationAlreadyExists". + // + // The application you attempted to add already exists. + ErrCodeRedshiftIdcApplicationAlreadyExistsFault = "RedshiftIdcApplicationAlreadyExists" + + // ErrCodeRedshiftIdcApplicationNotExistsFault for service response error code + // "RedshiftIdcApplicationNotExists". + // + // The application you attempted to find doesn't exist. + ErrCodeRedshiftIdcApplicationNotExistsFault = "RedshiftIdcApplicationNotExists" + + // ErrCodeRedshiftIdcApplicationQuotaExceededFault for service response error code + // "RedshiftIdcApplicationQuotaExceeded". + // + // The maximum number of Redshift IAM Identity Center applications was exceeded. + ErrCodeRedshiftIdcApplicationQuotaExceededFault = "RedshiftIdcApplicationQuotaExceeded" + // ErrCodeReservedNodeAlreadyExistsFault for service response error code // "ReservedNodeAlreadyExists". // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/redshift/redshiftiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/redshift/redshiftiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/redshift/redshiftiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/redshift/redshiftiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -148,6 +148,10 @@ CreateHsmConfigurationWithContext(aws.Context, *redshift.CreateHsmConfigurationInput, ...request.Option) (*redshift.CreateHsmConfigurationOutput, error) CreateHsmConfigurationRequest(*redshift.CreateHsmConfigurationInput) (*request.Request, *redshift.CreateHsmConfigurationOutput) + CreateRedshiftIdcApplication(*redshift.CreateRedshiftIdcApplicationInput) (*redshift.CreateRedshiftIdcApplicationOutput, error) + CreateRedshiftIdcApplicationWithContext(aws.Context, *redshift.CreateRedshiftIdcApplicationInput, ...request.Option) (*redshift.CreateRedshiftIdcApplicationOutput, error) + CreateRedshiftIdcApplicationRequest(*redshift.CreateRedshiftIdcApplicationInput) (*request.Request, *redshift.CreateRedshiftIdcApplicationOutput) + CreateScheduledAction(*redshift.CreateScheduledActionInput) (*redshift.CreateScheduledActionOutput, error) CreateScheduledActionWithContext(aws.Context, *redshift.CreateScheduledActionInput, ...request.Option) (*redshift.CreateScheduledActionOutput, error) CreateScheduledActionRequest(*redshift.CreateScheduledActionInput) (*request.Request, *redshift.CreateScheduledActionOutput) @@ -220,6 +224,14 @@ DeletePartnerWithContext(aws.Context, *redshift.DeletePartnerInput, ...request.Option) (*redshift.DeletePartnerOutput, error) DeletePartnerRequest(*redshift.DeletePartnerInput) (*request.Request, *redshift.DeletePartnerOutput) + DeleteRedshiftIdcApplication(*redshift.DeleteRedshiftIdcApplicationInput) (*redshift.DeleteRedshiftIdcApplicationOutput, error) + DeleteRedshiftIdcApplicationWithContext(aws.Context, *redshift.DeleteRedshiftIdcApplicationInput, ...request.Option) (*redshift.DeleteRedshiftIdcApplicationOutput, error) + DeleteRedshiftIdcApplicationRequest(*redshift.DeleteRedshiftIdcApplicationInput) (*request.Request, *redshift.DeleteRedshiftIdcApplicationOutput) + + DeleteResourcePolicy(*redshift.DeleteResourcePolicyInput) (*redshift.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyWithContext(aws.Context, *redshift.DeleteResourcePolicyInput, ...request.Option) (*redshift.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyRequest(*redshift.DeleteResourcePolicyInput) (*request.Request, *redshift.DeleteResourcePolicyOutput) + DeleteScheduledAction(*redshift.DeleteScheduledActionInput) (*redshift.DeleteScheduledActionOutput, error) DeleteScheduledActionWithContext(aws.Context, *redshift.DeleteScheduledActionInput, ...request.Option) (*redshift.DeleteScheduledActionOutput, error) DeleteScheduledActionRequest(*redshift.DeleteScheduledActionInput) (*request.Request, *redshift.DeleteScheduledActionOutput) @@ -392,6 +404,13 @@ DescribeHsmConfigurationsPages(*redshift.DescribeHsmConfigurationsInput, func(*redshift.DescribeHsmConfigurationsOutput, bool) bool) error DescribeHsmConfigurationsPagesWithContext(aws.Context, *redshift.DescribeHsmConfigurationsInput, func(*redshift.DescribeHsmConfigurationsOutput, bool) bool, ...request.Option) error + DescribeInboundIntegrations(*redshift.DescribeInboundIntegrationsInput) (*redshift.DescribeInboundIntegrationsOutput, error) + DescribeInboundIntegrationsWithContext(aws.Context, *redshift.DescribeInboundIntegrationsInput, ...request.Option) (*redshift.DescribeInboundIntegrationsOutput, error) + DescribeInboundIntegrationsRequest(*redshift.DescribeInboundIntegrationsInput) (*request.Request, *redshift.DescribeInboundIntegrationsOutput) + + DescribeInboundIntegrationsPages(*redshift.DescribeInboundIntegrationsInput, func(*redshift.DescribeInboundIntegrationsOutput, bool) bool) error + DescribeInboundIntegrationsPagesWithContext(aws.Context, *redshift.DescribeInboundIntegrationsInput, func(*redshift.DescribeInboundIntegrationsOutput, bool) bool, ...request.Option) error + DescribeLoggingStatus(*redshift.DescribeLoggingStatusInput) (*redshift.LoggingStatus, error) DescribeLoggingStatusWithContext(aws.Context, *redshift.DescribeLoggingStatusInput, ...request.Option) (*redshift.LoggingStatus, error) DescribeLoggingStatusRequest(*redshift.DescribeLoggingStatusInput) (*request.Request, *redshift.LoggingStatus) @@ -414,6 +433,13 @@ DescribePartnersWithContext(aws.Context, *redshift.DescribePartnersInput, ...request.Option) (*redshift.DescribePartnersOutput, error) DescribePartnersRequest(*redshift.DescribePartnersInput) (*request.Request, *redshift.DescribePartnersOutput) + DescribeRedshiftIdcApplications(*redshift.DescribeRedshiftIdcApplicationsInput) (*redshift.DescribeRedshiftIdcApplicationsOutput, error) + DescribeRedshiftIdcApplicationsWithContext(aws.Context, *redshift.DescribeRedshiftIdcApplicationsInput, ...request.Option) (*redshift.DescribeRedshiftIdcApplicationsOutput, error) + DescribeRedshiftIdcApplicationsRequest(*redshift.DescribeRedshiftIdcApplicationsInput) (*request.Request, *redshift.DescribeRedshiftIdcApplicationsOutput) + + DescribeRedshiftIdcApplicationsPages(*redshift.DescribeRedshiftIdcApplicationsInput, func(*redshift.DescribeRedshiftIdcApplicationsOutput, bool) bool) error + DescribeRedshiftIdcApplicationsPagesWithContext(aws.Context, *redshift.DescribeRedshiftIdcApplicationsInput, func(*redshift.DescribeRedshiftIdcApplicationsOutput, bool) bool, ...request.Option) error + DescribeReservedNodeExchangeStatus(*redshift.DescribeReservedNodeExchangeStatusInput) (*redshift.DescribeReservedNodeExchangeStatusOutput, error) DescribeReservedNodeExchangeStatusWithContext(aws.Context, *redshift.DescribeReservedNodeExchangeStatusInput, ...request.Option) (*redshift.DescribeReservedNodeExchangeStatusOutput, error) DescribeReservedNodeExchangeStatusRequest(*redshift.DescribeReservedNodeExchangeStatusInput) (*request.Request, *redshift.DescribeReservedNodeExchangeStatusOutput) @@ -505,6 +531,10 @@ EnableSnapshotCopyWithContext(aws.Context, *redshift.EnableSnapshotCopyInput, ...request.Option) (*redshift.EnableSnapshotCopyOutput, error) EnableSnapshotCopyRequest(*redshift.EnableSnapshotCopyInput) (*request.Request, *redshift.EnableSnapshotCopyOutput) + FailoverPrimaryCompute(*redshift.FailoverPrimaryComputeInput) (*redshift.FailoverPrimaryComputeOutput, error) + FailoverPrimaryComputeWithContext(aws.Context, *redshift.FailoverPrimaryComputeInput, ...request.Option) (*redshift.FailoverPrimaryComputeOutput, error) + FailoverPrimaryComputeRequest(*redshift.FailoverPrimaryComputeInput) (*request.Request, *redshift.FailoverPrimaryComputeOutput) + GetClusterCredentials(*redshift.GetClusterCredentialsInput) (*redshift.GetClusterCredentialsOutput, error) GetClusterCredentialsWithContext(aws.Context, *redshift.GetClusterCredentialsInput, ...request.Option) (*redshift.GetClusterCredentialsOutput, error) GetClusterCredentialsRequest(*redshift.GetClusterCredentialsInput) (*request.Request, *redshift.GetClusterCredentialsOutput) @@ -527,6 +557,10 @@ GetReservedNodeExchangeOfferingsPages(*redshift.GetReservedNodeExchangeOfferingsInput, func(*redshift.GetReservedNodeExchangeOfferingsOutput, bool) bool) error GetReservedNodeExchangeOfferingsPagesWithContext(aws.Context, *redshift.GetReservedNodeExchangeOfferingsInput, func(*redshift.GetReservedNodeExchangeOfferingsOutput, bool) bool, ...request.Option) error + GetResourcePolicy(*redshift.GetResourcePolicyInput) (*redshift.GetResourcePolicyOutput, error) + GetResourcePolicyWithContext(aws.Context, *redshift.GetResourcePolicyInput, ...request.Option) (*redshift.GetResourcePolicyOutput, error) + GetResourcePolicyRequest(*redshift.GetResourcePolicyInput) (*request.Request, *redshift.GetResourcePolicyOutput) + ModifyAquaConfiguration(*redshift.ModifyAquaConfigurationInput) (*redshift.ModifyAquaConfigurationOutput, error) ModifyAquaConfigurationWithContext(aws.Context, *redshift.ModifyAquaConfigurationInput, ...request.Option) (*redshift.ModifyAquaConfigurationOutput, error) ModifyAquaConfigurationRequest(*redshift.ModifyAquaConfigurationInput) (*request.Request, *redshift.ModifyAquaConfigurationOutput) @@ -579,6 +613,10 @@ ModifyEventSubscriptionWithContext(aws.Context, *redshift.ModifyEventSubscriptionInput, ...request.Option) (*redshift.ModifyEventSubscriptionOutput, error) ModifyEventSubscriptionRequest(*redshift.ModifyEventSubscriptionInput) (*request.Request, *redshift.ModifyEventSubscriptionOutput) + ModifyRedshiftIdcApplication(*redshift.ModifyRedshiftIdcApplicationInput) (*redshift.ModifyRedshiftIdcApplicationOutput, error) + ModifyRedshiftIdcApplicationWithContext(aws.Context, *redshift.ModifyRedshiftIdcApplicationInput, ...request.Option) (*redshift.ModifyRedshiftIdcApplicationOutput, error) + ModifyRedshiftIdcApplicationRequest(*redshift.ModifyRedshiftIdcApplicationInput) (*request.Request, *redshift.ModifyRedshiftIdcApplicationOutput) + ModifyScheduledAction(*redshift.ModifyScheduledActionInput) (*redshift.ModifyScheduledActionOutput, error) ModifyScheduledActionWithContext(aws.Context, *redshift.ModifyScheduledActionInput, ...request.Option) (*redshift.ModifyScheduledActionOutput, error) ModifyScheduledActionRequest(*redshift.ModifyScheduledActionInput) (*request.Request, *redshift.ModifyScheduledActionOutput) @@ -603,6 +641,10 @@ PurchaseReservedNodeOfferingWithContext(aws.Context, *redshift.PurchaseReservedNodeOfferingInput, ...request.Option) (*redshift.PurchaseReservedNodeOfferingOutput, error) PurchaseReservedNodeOfferingRequest(*redshift.PurchaseReservedNodeOfferingInput) (*request.Request, *redshift.PurchaseReservedNodeOfferingOutput) + PutResourcePolicy(*redshift.PutResourcePolicyInput) (*redshift.PutResourcePolicyOutput, error) + PutResourcePolicyWithContext(aws.Context, *redshift.PutResourcePolicyInput, ...request.Option) (*redshift.PutResourcePolicyOutput, error) + PutResourcePolicyRequest(*redshift.PutResourcePolicyInput) (*request.Request, *redshift.PutResourcePolicyOutput) + RebootCluster(*redshift.RebootClusterInput) (*redshift.RebootClusterOutput, error) RebootClusterWithContext(aws.Context, *redshift.RebootClusterInput, ...request.Option) (*redshift.RebootClusterOutput, error) RebootClusterRequest(*redshift.RebootClusterInput) (*request.Request, *redshift.RebootClusterOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/redshiftserverless/api.go golang-github-aws-aws-sdk-go-1.48.14/service/redshiftserverless/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/redshiftserverless/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/redshiftserverless/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -109,6 +109,101 @@ return out, req.Send() } +const opCreateCustomDomainAssociation = "CreateCustomDomainAssociation" + +// CreateCustomDomainAssociationRequest generates a "aws/request.Request" representing the +// client's request for the CreateCustomDomainAssociation 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 CreateCustomDomainAssociation for more information on using the CreateCustomDomainAssociation +// 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 CreateCustomDomainAssociationRequest method. +// req, resp := client.CreateCustomDomainAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/CreateCustomDomainAssociation +func (c *RedshiftServerless) CreateCustomDomainAssociationRequest(input *CreateCustomDomainAssociationInput) (req *request.Request, output *CreateCustomDomainAssociationOutput) { + op := &request.Operation{ + Name: opCreateCustomDomainAssociation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateCustomDomainAssociationInput{} + } + + output = &CreateCustomDomainAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCustomDomainAssociation API operation for Redshift Serverless. +// +// Creates a custom domain association for 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 CreateCustomDomainAssociation 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. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/CreateCustomDomainAssociation +func (c *RedshiftServerless) CreateCustomDomainAssociation(input *CreateCustomDomainAssociationInput) (*CreateCustomDomainAssociationOutput, error) { + req, out := c.CreateCustomDomainAssociationRequest(input) + return out, req.Send() +} + +// CreateCustomDomainAssociationWithContext is the same as CreateCustomDomainAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCustomDomainAssociation 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) CreateCustomDomainAssociationWithContext(ctx aws.Context, input *CreateCustomDomainAssociationInput, opts ...request.Option) (*CreateCustomDomainAssociationOutput, error) { + req, out := c.CreateCustomDomainAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateEndpointAccess = "CreateEndpointAccess" // CreateEndpointAccessRequest generates a "aws/request.Request" representing the @@ -293,6 +388,97 @@ return out, req.Send() } +const opCreateScheduledAction = "CreateScheduledAction" + +// CreateScheduledActionRequest generates a "aws/request.Request" representing the +// client's request for the CreateScheduledAction 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 CreateScheduledAction for more information on using the CreateScheduledAction +// 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 CreateScheduledActionRequest method. +// req, resp := client.CreateScheduledActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/CreateScheduledAction +func (c *RedshiftServerless) CreateScheduledActionRequest(input *CreateScheduledActionInput) (req *request.Request, output *CreateScheduledActionOutput) { + op := &request.Operation{ + Name: opCreateScheduledAction, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateScheduledActionInput{} + } + + output = &CreateScheduledActionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateScheduledAction API operation for Redshift Serverless. +// +// Creates a scheduled action. A scheduled action contains a schedule and an +// Amazon Redshift API action. For example, you can create a schedule of when +// to run the CreateSnapshot API operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation CreateScheduledAction 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/redshift-serverless-2021-04-21/CreateScheduledAction +func (c *RedshiftServerless) CreateScheduledAction(input *CreateScheduledActionInput) (*CreateScheduledActionOutput, error) { + req, out := c.CreateScheduledActionRequest(input) + return out, req.Send() +} + +// CreateScheduledActionWithContext is the same as CreateScheduledAction with the addition of +// the ability to pass a context and additional request options. +// +// See CreateScheduledAction 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) CreateScheduledActionWithContext(ctx aws.Context, input *CreateScheduledActionInput, opts ...request.Option) (*CreateScheduledActionOutput, error) { + req, out := c.CreateScheduledActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateSnapshot = "CreateSnapshot" // CreateSnapshotRequest generates a "aws/request.Request" representing the @@ -389,6 +575,102 @@ return out, req.Send() } +const opCreateSnapshotCopyConfiguration = "CreateSnapshotCopyConfiguration" + +// CreateSnapshotCopyConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateSnapshotCopyConfiguration 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 CreateSnapshotCopyConfiguration for more information on using the CreateSnapshotCopyConfiguration +// 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 CreateSnapshotCopyConfigurationRequest method. +// req, resp := client.CreateSnapshotCopyConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/CreateSnapshotCopyConfiguration +func (c *RedshiftServerless) CreateSnapshotCopyConfigurationRequest(input *CreateSnapshotCopyConfigurationInput) (req *request.Request, output *CreateSnapshotCopyConfigurationOutput) { + op := &request.Operation{ + Name: opCreateSnapshotCopyConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateSnapshotCopyConfigurationInput{} + } + + output = &CreateSnapshotCopyConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSnapshotCopyConfiguration API operation for Redshift Serverless. +// +// Creates a snapshot copy configuration that lets you copy snapshots to another +// Amazon Web Services Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation CreateSnapshotCopyConfiguration 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/redshift-serverless-2021-04-21/CreateSnapshotCopyConfiguration +func (c *RedshiftServerless) CreateSnapshotCopyConfiguration(input *CreateSnapshotCopyConfigurationInput) (*CreateSnapshotCopyConfigurationOutput, error) { + req, out := c.CreateSnapshotCopyConfigurationRequest(input) + return out, req.Send() +} + +// CreateSnapshotCopyConfigurationWithContext is the same as CreateSnapshotCopyConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSnapshotCopyConfiguration 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) CreateSnapshotCopyConfigurationWithContext(ctx aws.Context, input *CreateSnapshotCopyConfigurationInput, opts ...request.Option) (*CreateSnapshotCopyConfigurationOutput, error) { + req, out := c.CreateSnapshotCopyConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateUsageLimit = "CreateUsageLimit" // CreateUsageLimitRequest generates a "aws/request.Request" representing the @@ -577,6 +859,102 @@ return out, req.Send() } +const opDeleteCustomDomainAssociation = "DeleteCustomDomainAssociation" + +// DeleteCustomDomainAssociationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCustomDomainAssociation 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 DeleteCustomDomainAssociation for more information on using the DeleteCustomDomainAssociation +// 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 DeleteCustomDomainAssociationRequest method. +// req, resp := client.DeleteCustomDomainAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/DeleteCustomDomainAssociation +func (c *RedshiftServerless) DeleteCustomDomainAssociationRequest(input *DeleteCustomDomainAssociationInput) (req *request.Request, output *DeleteCustomDomainAssociationOutput) { + op := &request.Operation{ + Name: opDeleteCustomDomainAssociation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteCustomDomainAssociationInput{} + } + + output = &DeleteCustomDomainAssociationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteCustomDomainAssociation API operation for Redshift Serverless. +// +// Deletes a custom domain association for 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 DeleteCustomDomainAssociation 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. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/DeleteCustomDomainAssociation +func (c *RedshiftServerless) DeleteCustomDomainAssociation(input *DeleteCustomDomainAssociationInput) (*DeleteCustomDomainAssociationOutput, error) { + req, out := c.DeleteCustomDomainAssociationRequest(input) + return out, req.Send() +} + +// DeleteCustomDomainAssociationWithContext is the same as DeleteCustomDomainAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCustomDomainAssociation 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) DeleteCustomDomainAssociationWithContext(ctx aws.Context, input *DeleteCustomDomainAssociationInput, opts ...request.Option) (*DeleteCustomDomainAssociationOutput, error) { + req, out := c.DeleteCustomDomainAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteEndpointAccess = "DeleteEndpointAccess" // DeleteEndpointAccessRequest generates a "aws/request.Request" representing the @@ -844,6 +1222,92 @@ return out, req.Send() } +const opDeleteScheduledAction = "DeleteScheduledAction" + +// DeleteScheduledActionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteScheduledAction 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 DeleteScheduledAction for more information on using the DeleteScheduledAction +// 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 DeleteScheduledActionRequest method. +// req, resp := client.DeleteScheduledActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/DeleteScheduledAction +func (c *RedshiftServerless) DeleteScheduledActionRequest(input *DeleteScheduledActionInput) (req *request.Request, output *DeleteScheduledActionOutput) { + op := &request.Operation{ + Name: opDeleteScheduledAction, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteScheduledActionInput{} + } + + output = &DeleteScheduledActionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteScheduledAction API operation for Redshift Serverless. +// +// Deletes a scheduled action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation DeleteScheduledAction 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/redshift-serverless-2021-04-21/DeleteScheduledAction +func (c *RedshiftServerless) DeleteScheduledAction(input *DeleteScheduledActionInput) (*DeleteScheduledActionOutput, error) { + req, out := c.DeleteScheduledActionRequest(input) + return out, req.Send() +} + +// DeleteScheduledActionWithContext is the same as DeleteScheduledAction with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteScheduledAction 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) DeleteScheduledActionWithContext(ctx aws.Context, input *DeleteScheduledActionInput, opts ...request.Option) (*DeleteScheduledActionOutput, error) { + req, out := c.DeleteScheduledActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteSnapshot = "DeleteSnapshot" // DeleteSnapshotRequest generates a "aws/request.Request" representing the @@ -933,6 +1397,98 @@ return out, req.Send() } +const opDeleteSnapshotCopyConfiguration = "DeleteSnapshotCopyConfiguration" + +// DeleteSnapshotCopyConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSnapshotCopyConfiguration 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 DeleteSnapshotCopyConfiguration for more information on using the DeleteSnapshotCopyConfiguration +// 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 DeleteSnapshotCopyConfigurationRequest method. +// req, resp := client.DeleteSnapshotCopyConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/DeleteSnapshotCopyConfiguration +func (c *RedshiftServerless) DeleteSnapshotCopyConfigurationRequest(input *DeleteSnapshotCopyConfigurationInput) (req *request.Request, output *DeleteSnapshotCopyConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteSnapshotCopyConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteSnapshotCopyConfigurationInput{} + } + + output = &DeleteSnapshotCopyConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteSnapshotCopyConfiguration API operation for Redshift Serverless. +// +// # Deletes a snapshot copy configuration +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation DeleteSnapshotCopyConfiguration 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/redshift-serverless-2021-04-21/DeleteSnapshotCopyConfiguration +func (c *RedshiftServerless) DeleteSnapshotCopyConfiguration(input *DeleteSnapshotCopyConfigurationInput) (*DeleteSnapshotCopyConfigurationOutput, error) { + req, out := c.DeleteSnapshotCopyConfigurationRequest(input) + return out, req.Send() +} + +// DeleteSnapshotCopyConfigurationWithContext is the same as DeleteSnapshotCopyConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSnapshotCopyConfiguration 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) DeleteSnapshotCopyConfigurationWithContext(ctx aws.Context, input *DeleteSnapshotCopyConfigurationInput, opts ...request.Option) (*DeleteSnapshotCopyConfigurationOutput, error) { + req, out := c.DeleteSnapshotCopyConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteUsageLimit = "DeleteUsageLimit" // DeleteUsageLimitRequest generates a "aws/request.Request" representing the @@ -1208,6 +1764,101 @@ return out, req.Send() } +const opGetCustomDomainAssociation = "GetCustomDomainAssociation" + +// GetCustomDomainAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetCustomDomainAssociation 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 GetCustomDomainAssociation for more information on using the GetCustomDomainAssociation +// 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 GetCustomDomainAssociationRequest method. +// req, resp := client.GetCustomDomainAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/GetCustomDomainAssociation +func (c *RedshiftServerless) GetCustomDomainAssociationRequest(input *GetCustomDomainAssociationInput) (req *request.Request, output *GetCustomDomainAssociationOutput) { + op := &request.Operation{ + Name: opGetCustomDomainAssociation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetCustomDomainAssociationInput{} + } + + output = &GetCustomDomainAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCustomDomainAssociation API operation for Redshift Serverless. +// +// Gets information about a specific custom domain association. +// +// 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 GetCustomDomainAssociation 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. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/GetCustomDomainAssociation +func (c *RedshiftServerless) GetCustomDomainAssociation(input *GetCustomDomainAssociationInput) (*GetCustomDomainAssociationOutput, error) { + req, out := c.GetCustomDomainAssociationRequest(input) + return out, req.Send() +} + +// GetCustomDomainAssociationWithContext is the same as GetCustomDomainAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetCustomDomainAssociation 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) GetCustomDomainAssociationWithContext(ctx aws.Context, input *GetCustomDomainAssociationInput, opts ...request.Option) (*GetCustomDomainAssociationOutput, error) { + req, out := c.GetCustomDomainAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetEndpointAccess = "GetEndpointAccess" // GetEndpointAccessRequest generates a "aws/request.Request" representing the @@ -1558,6 +2209,92 @@ return out, req.Send() } +const opGetScheduledAction = "GetScheduledAction" + +// GetScheduledActionRequest generates a "aws/request.Request" representing the +// client's request for the GetScheduledAction 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 GetScheduledAction for more information on using the GetScheduledAction +// 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 GetScheduledActionRequest method. +// req, resp := client.GetScheduledActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/GetScheduledAction +func (c *RedshiftServerless) GetScheduledActionRequest(input *GetScheduledActionInput) (req *request.Request, output *GetScheduledActionOutput) { + op := &request.Operation{ + Name: opGetScheduledAction, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetScheduledActionInput{} + } + + output = &GetScheduledActionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetScheduledAction API operation for Redshift Serverless. +// +// Returns information about a scheduled action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation GetScheduledAction 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/redshift-serverless-2021-04-21/GetScheduledAction +func (c *RedshiftServerless) GetScheduledAction(input *GetScheduledActionInput) (*GetScheduledActionOutput, error) { + req, out := c.GetScheduledActionRequest(input) + return out, req.Send() +} + +// GetScheduledActionWithContext is the same as GetScheduledAction with the addition of +// the ability to pass a context and additional request options. +// +// See GetScheduledAction 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) GetScheduledActionWithContext(ctx aws.Context, input *GetScheduledActionInput, opts ...request.Option) (*GetScheduledActionOutput, error) { + req, out := c.GetScheduledActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetSnapshot = "GetSnapshot" // GetSnapshotRequest generates a "aws/request.Request" representing the @@ -1901,6 +2638,155 @@ return out, req.Send() } +const opListCustomDomainAssociations = "ListCustomDomainAssociations" + +// ListCustomDomainAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListCustomDomainAssociations 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 ListCustomDomainAssociations for more information on using the ListCustomDomainAssociations +// 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 ListCustomDomainAssociationsRequest method. +// req, resp := client.ListCustomDomainAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/ListCustomDomainAssociations +func (c *RedshiftServerless) ListCustomDomainAssociationsRequest(input *ListCustomDomainAssociationsInput) (req *request.Request, output *ListCustomDomainAssociationsOutput) { + op := &request.Operation{ + Name: opListCustomDomainAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCustomDomainAssociationsInput{} + } + + output = &ListCustomDomainAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCustomDomainAssociations API operation for Redshift Serverless. +// +// Lists custom domain associations for 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 ListCustomDomainAssociations 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. +// +// - ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/ListCustomDomainAssociations +func (c *RedshiftServerless) ListCustomDomainAssociations(input *ListCustomDomainAssociationsInput) (*ListCustomDomainAssociationsOutput, error) { + req, out := c.ListCustomDomainAssociationsRequest(input) + return out, req.Send() +} + +// ListCustomDomainAssociationsWithContext is the same as ListCustomDomainAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListCustomDomainAssociations 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) ListCustomDomainAssociationsWithContext(ctx aws.Context, input *ListCustomDomainAssociationsInput, opts ...request.Option) (*ListCustomDomainAssociationsOutput, error) { + req, out := c.ListCustomDomainAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCustomDomainAssociationsPages iterates over the pages of a ListCustomDomainAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCustomDomainAssociations 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 ListCustomDomainAssociations operation. +// pageNum := 0 +// err := client.ListCustomDomainAssociationsPages(params, +// func(page *redshiftserverless.ListCustomDomainAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *RedshiftServerless) ListCustomDomainAssociationsPages(input *ListCustomDomainAssociationsInput, fn func(*ListCustomDomainAssociationsOutput, bool) bool) error { + return c.ListCustomDomainAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCustomDomainAssociationsPagesWithContext same as ListCustomDomainAssociationsPages 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) ListCustomDomainAssociationsPagesWithContext(ctx aws.Context, input *ListCustomDomainAssociationsInput, fn func(*ListCustomDomainAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCustomDomainAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCustomDomainAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCustomDomainAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEndpointAccess = "ListEndpointAccess" // ListEndpointAccessRequest generates a "aws/request.Request" representing the @@ -2327,6 +3213,302 @@ return p.Err() } +const opListScheduledActions = "ListScheduledActions" + +// ListScheduledActionsRequest generates a "aws/request.Request" representing the +// client's request for the ListScheduledActions 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 ListScheduledActions for more information on using the ListScheduledActions +// 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 ListScheduledActionsRequest method. +// req, resp := client.ListScheduledActionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/ListScheduledActions +func (c *RedshiftServerless) ListScheduledActionsRequest(input *ListScheduledActionsInput) (req *request.Request, output *ListScheduledActionsOutput) { + op := &request.Operation{ + Name: opListScheduledActions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListScheduledActionsInput{} + } + + output = &ListScheduledActionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListScheduledActions API operation for Redshift Serverless. +// +// Returns a list of scheduled actions. You can use the flags to filter the +// list of returned scheduled actions. +// +// 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 ListScheduledActions 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. +// +// - ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/ListScheduledActions +func (c *RedshiftServerless) ListScheduledActions(input *ListScheduledActionsInput) (*ListScheduledActionsOutput, error) { + req, out := c.ListScheduledActionsRequest(input) + return out, req.Send() +} + +// ListScheduledActionsWithContext is the same as ListScheduledActions with the addition of +// the ability to pass a context and additional request options. +// +// See ListScheduledActions 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) ListScheduledActionsWithContext(ctx aws.Context, input *ListScheduledActionsInput, opts ...request.Option) (*ListScheduledActionsOutput, error) { + req, out := c.ListScheduledActionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListScheduledActionsPages iterates over the pages of a ListScheduledActions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListScheduledActions 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 ListScheduledActions operation. +// pageNum := 0 +// err := client.ListScheduledActionsPages(params, +// func(page *redshiftserverless.ListScheduledActionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *RedshiftServerless) ListScheduledActionsPages(input *ListScheduledActionsInput, fn func(*ListScheduledActionsOutput, bool) bool) error { + return c.ListScheduledActionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListScheduledActionsPagesWithContext same as ListScheduledActionsPages 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) ListScheduledActionsPagesWithContext(ctx aws.Context, input *ListScheduledActionsInput, fn func(*ListScheduledActionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListScheduledActionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListScheduledActionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListScheduledActionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSnapshotCopyConfigurations = "ListSnapshotCopyConfigurations" + +// ListSnapshotCopyConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListSnapshotCopyConfigurations 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 ListSnapshotCopyConfigurations for more information on using the ListSnapshotCopyConfigurations +// 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 ListSnapshotCopyConfigurationsRequest method. +// req, resp := client.ListSnapshotCopyConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/ListSnapshotCopyConfigurations +func (c *RedshiftServerless) ListSnapshotCopyConfigurationsRequest(input *ListSnapshotCopyConfigurationsInput) (req *request.Request, output *ListSnapshotCopyConfigurationsOutput) { + op := &request.Operation{ + Name: opListSnapshotCopyConfigurations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSnapshotCopyConfigurationsInput{} + } + + output = &ListSnapshotCopyConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSnapshotCopyConfigurations API operation for Redshift Serverless. +// +// Returns a list of snapshot copy configurations. +// +// 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 ListSnapshotCopyConfigurations 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/redshift-serverless-2021-04-21/ListSnapshotCopyConfigurations +func (c *RedshiftServerless) ListSnapshotCopyConfigurations(input *ListSnapshotCopyConfigurationsInput) (*ListSnapshotCopyConfigurationsOutput, error) { + req, out := c.ListSnapshotCopyConfigurationsRequest(input) + return out, req.Send() +} + +// ListSnapshotCopyConfigurationsWithContext is the same as ListSnapshotCopyConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListSnapshotCopyConfigurations 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) ListSnapshotCopyConfigurationsWithContext(ctx aws.Context, input *ListSnapshotCopyConfigurationsInput, opts ...request.Option) (*ListSnapshotCopyConfigurationsOutput, error) { + req, out := c.ListSnapshotCopyConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSnapshotCopyConfigurationsPages iterates over the pages of a ListSnapshotCopyConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSnapshotCopyConfigurations 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 ListSnapshotCopyConfigurations operation. +// pageNum := 0 +// err := client.ListSnapshotCopyConfigurationsPages(params, +// func(page *redshiftserverless.ListSnapshotCopyConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *RedshiftServerless) ListSnapshotCopyConfigurationsPages(input *ListSnapshotCopyConfigurationsInput, fn func(*ListSnapshotCopyConfigurationsOutput, bool) bool) error { + return c.ListSnapshotCopyConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSnapshotCopyConfigurationsPagesWithContext same as ListSnapshotCopyConfigurationsPages 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) ListSnapshotCopyConfigurationsPagesWithContext(ctx aws.Context, input *ListSnapshotCopyConfigurationsInput, fn func(*ListSnapshotCopyConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSnapshotCopyConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSnapshotCopyConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSnapshotCopyConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSnapshots = "ListSnapshots" // ListSnapshotsRequest generates a "aws/request.Request" representing the @@ -3264,6 +4446,97 @@ return out, req.Send() } +const opRestoreTableFromRecoveryPoint = "RestoreTableFromRecoveryPoint" + +// RestoreTableFromRecoveryPointRequest generates a "aws/request.Request" representing the +// client's request for the RestoreTableFromRecoveryPoint 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 RestoreTableFromRecoveryPoint for more information on using the RestoreTableFromRecoveryPoint +// 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 RestoreTableFromRecoveryPointRequest method. +// req, resp := client.RestoreTableFromRecoveryPointRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/RestoreTableFromRecoveryPoint +func (c *RedshiftServerless) RestoreTableFromRecoveryPointRequest(input *RestoreTableFromRecoveryPointInput) (req *request.Request, output *RestoreTableFromRecoveryPointOutput) { + op := &request.Operation{ + Name: opRestoreTableFromRecoveryPoint, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RestoreTableFromRecoveryPointInput{} + } + + output = &RestoreTableFromRecoveryPointOutput{} + req = c.newRequest(op, input, output) + return +} + +// RestoreTableFromRecoveryPoint API operation for Redshift Serverless. +// +// Restores a table from a recovery point to your Amazon Redshift Serverless +// instance. You can't use this operation to restore tables with interleaved +// sort keys. +// +// 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 RestoreTableFromRecoveryPoint 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/redshift-serverless-2021-04-21/RestoreTableFromRecoveryPoint +func (c *RedshiftServerless) RestoreTableFromRecoveryPoint(input *RestoreTableFromRecoveryPointInput) (*RestoreTableFromRecoveryPointOutput, error) { + req, out := c.RestoreTableFromRecoveryPointRequest(input) + return out, req.Send() +} + +// RestoreTableFromRecoveryPointWithContext is the same as RestoreTableFromRecoveryPoint with the addition of +// the ability to pass a context and additional request options. +// +// See RestoreTableFromRecoveryPoint 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) RestoreTableFromRecoveryPointWithContext(ctx aws.Context, input *RestoreTableFromRecoveryPointInput, opts ...request.Option) (*RestoreTableFromRecoveryPointOutput, error) { + req, out := c.RestoreTableFromRecoveryPointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opRestoreTableFromSnapshot = "RestoreTableFromSnapshot" // RestoreTableFromSnapshotRequest generates a "aws/request.Request" representing the @@ -3538,6 +4811,102 @@ return out, req.Send() } +const opUpdateCustomDomainAssociation = "UpdateCustomDomainAssociation" + +// UpdateCustomDomainAssociationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateCustomDomainAssociation 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 UpdateCustomDomainAssociation for more information on using the UpdateCustomDomainAssociation +// 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 UpdateCustomDomainAssociationRequest method. +// req, resp := client.UpdateCustomDomainAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/UpdateCustomDomainAssociation +func (c *RedshiftServerless) UpdateCustomDomainAssociationRequest(input *UpdateCustomDomainAssociationInput) (req *request.Request, output *UpdateCustomDomainAssociationOutput) { + op := &request.Operation{ + Name: opUpdateCustomDomainAssociation, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateCustomDomainAssociationInput{} + } + + output = &UpdateCustomDomainAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateCustomDomainAssociation API operation for Redshift Serverless. +// +// Updates an Amazon Redshift Serverless certificate associated with a custom +// domain. +// +// 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 UpdateCustomDomainAssociation 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. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/UpdateCustomDomainAssociation +func (c *RedshiftServerless) UpdateCustomDomainAssociation(input *UpdateCustomDomainAssociationInput) (*UpdateCustomDomainAssociationOutput, error) { + req, out := c.UpdateCustomDomainAssociationRequest(input) + return out, req.Send() +} + +// UpdateCustomDomainAssociationWithContext is the same as UpdateCustomDomainAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateCustomDomainAssociation 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) UpdateCustomDomainAssociationWithContext(ctx aws.Context, input *UpdateCustomDomainAssociationInput, opts ...request.Option) (*UpdateCustomDomainAssociationOutput, error) { + req, out := c.UpdateCustomDomainAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateEndpointAccess = "UpdateEndpointAccess" // UpdateEndpointAccessRequest generates a "aws/request.Request" representing the @@ -3722,6 +5091,95 @@ return out, req.Send() } +const opUpdateScheduledAction = "UpdateScheduledAction" + +// UpdateScheduledActionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateScheduledAction 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 UpdateScheduledAction for more information on using the UpdateScheduledAction +// 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 UpdateScheduledActionRequest method. +// req, resp := client.UpdateScheduledActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/UpdateScheduledAction +func (c *RedshiftServerless) UpdateScheduledActionRequest(input *UpdateScheduledActionInput) (req *request.Request, output *UpdateScheduledActionOutput) { + op := &request.Operation{ + Name: opUpdateScheduledAction, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateScheduledActionInput{} + } + + output = &UpdateScheduledActionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateScheduledAction API operation for Redshift Serverless. +// +// Updates a scheduled action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation UpdateScheduledAction 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/redshift-serverless-2021-04-21/UpdateScheduledAction +func (c *RedshiftServerless) UpdateScheduledAction(input *UpdateScheduledActionInput) (*UpdateScheduledActionOutput, error) { + req, out := c.UpdateScheduledActionRequest(input) + return out, req.Send() +} + +// UpdateScheduledActionWithContext is the same as UpdateScheduledAction with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateScheduledAction 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) UpdateScheduledActionWithContext(ctx aws.Context, input *UpdateScheduledActionInput, opts ...request.Option) (*UpdateScheduledActionOutput, error) { + req, out := c.UpdateScheduledActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSnapshot = "UpdateSnapshot" // UpdateSnapshotRequest generates a "aws/request.Request" representing the @@ -3811,6 +5269,98 @@ return out, req.Send() } +const opUpdateSnapshotCopyConfiguration = "UpdateSnapshotCopyConfiguration" + +// UpdateSnapshotCopyConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSnapshotCopyConfiguration 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 UpdateSnapshotCopyConfiguration for more information on using the UpdateSnapshotCopyConfiguration +// 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 UpdateSnapshotCopyConfigurationRequest method. +// req, resp := client.UpdateSnapshotCopyConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshift-serverless-2021-04-21/UpdateSnapshotCopyConfiguration +func (c *RedshiftServerless) UpdateSnapshotCopyConfigurationRequest(input *UpdateSnapshotCopyConfigurationInput) (req *request.Request, output *UpdateSnapshotCopyConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateSnapshotCopyConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSnapshotCopyConfigurationInput{} + } + + output = &UpdateSnapshotCopyConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSnapshotCopyConfiguration API operation for Redshift Serverless. +// +// Updates a snapshot copy configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation UpdateSnapshotCopyConfiguration 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/redshift-serverless-2021-04-21/UpdateSnapshotCopyConfiguration +func (c *RedshiftServerless) UpdateSnapshotCopyConfiguration(input *UpdateSnapshotCopyConfigurationInput) (*UpdateSnapshotCopyConfigurationOutput, error) { + req, out := c.UpdateSnapshotCopyConfigurationRequest(input) + return out, req.Send() +} + +// UpdateSnapshotCopyConfigurationWithContext is the same as UpdateSnapshotCopyConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSnapshotCopyConfiguration 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) UpdateSnapshotCopyConfigurationWithContext(ctx aws.Context, input *UpdateSnapshotCopyConfigurationInput, opts ...request.Option) (*UpdateSnapshotCopyConfigurationOutput, error) { + req, out := c.UpdateSnapshotCopyConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateUsageLimit = "UpdateUsageLimit" // UpdateUsageLimitRequest generates a "aws/request.Request" representing the @@ -4061,12 +5611,71 @@ return s.RespMetadata.RequestID } +// An object that represents the custom domain name association. +type Association struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string"` + + // The expiration time for the certificate. + CustomDomainCertificateExpiryTime *time.Time `locationName:"customDomainCertificateExpiryTime" type:"timestamp" timestampFormat:"iso8601"` + + // The custom domain name associated with the workgroup. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + + // The name of the workgroup associated with the database. + 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 Association) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Association) GoString() string { + return s.String() +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *Association) SetCustomDomainCertificateArn(v string) *Association { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainCertificateExpiryTime sets the CustomDomainCertificateExpiryTime field's value. +func (s *Association) SetCustomDomainCertificateExpiryTime(v time.Time) *Association { + s.CustomDomainCertificateExpiryTime = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *Association) SetCustomDomainName(v string) *Association { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *Association) SetWorkgroupName(v string) *Association { + s.WorkgroupName = &v + return s +} + // 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 auto_mv, datestyle, enable_case_sensitivity_identifier, + // The key of the parameter. The options are auto_mv, datestyle, enable_case_sensitive_identifier, // enable_user_activity_logging, query_group, search_path, and query monitoring // metrics that let you define performance boundaries. For more information // about query monitoring rules and available metrics, see Query monitoring @@ -4291,6 +5900,147 @@ return s } +type CreateCustomDomainAssociationInput struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). + // + // CustomDomainCertificateArn is a required field + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string" required:"true"` + + // The custom domain name to associate with the workgroup. + // + // CustomDomainName is a required field + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string" required:"true"` + + // 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 CreateCustomDomainAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCustomDomainAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateCustomDomainAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCustomDomainAssociationInput"} + if s.CustomDomainCertificateArn == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainCertificateArn")) + } + if s.CustomDomainCertificateArn != nil && len(*s.CustomDomainCertificateArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainCertificateArn", 20)) + } + if s.CustomDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainName")) + } + if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) + } + 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 +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *CreateCustomDomainAssociationInput) SetCustomDomainCertificateArn(v string) *CreateCustomDomainAssociationInput { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *CreateCustomDomainAssociationInput) SetCustomDomainName(v string) *CreateCustomDomainAssociationInput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *CreateCustomDomainAssociationInput) SetWorkgroupName(v string) *CreateCustomDomainAssociationInput { + s.WorkgroupName = &v + return s +} + +type CreateCustomDomainAssociationOutput struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string"` + + // The expiration time for the certificate. + CustomDomainCertificateExpiryTime *time.Time `locationName:"customDomainCertificateExpiryTime" type:"timestamp" timestampFormat:"iso8601"` + + // The custom domain name to associate with the workgroup. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + + // The name of the workgroup associated with the database. + 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 CreateCustomDomainAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCustomDomainAssociationOutput) GoString() string { + return s.String() +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *CreateCustomDomainAssociationOutput) SetCustomDomainCertificateArn(v string) *CreateCustomDomainAssociationOutput { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainCertificateExpiryTime sets the CustomDomainCertificateExpiryTime field's value. +func (s *CreateCustomDomainAssociationOutput) SetCustomDomainCertificateExpiryTime(v time.Time) *CreateCustomDomainAssociationOutput { + s.CustomDomainCertificateExpiryTime = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *CreateCustomDomainAssociationOutput) SetCustomDomainName(v string) *CreateCustomDomainAssociationOutput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *CreateCustomDomainAssociationOutput) SetWorkgroupName(v string) *CreateCustomDomainAssociationOutput { + s.WorkgroupName = &v + return s +} + type CreateEndpointAccessInput struct { _ struct{} `type:"structure"` @@ -4302,6 +6052,10 @@ // EndpointName is a required field EndpointName *string `locationName:"endpointName" type:"string" required:"true"` + // The owner Amazon Web Services account for the Amazon Redshift Serverless + // workgroup. + OwnerAccount *string `locationName:"ownerAccount" min:"1" type:"string"` + // The unique identifers of subnets from which Amazon Redshift Serverless chooses // one to deploy a VPC endpoint. // @@ -4342,6 +6096,9 @@ if s.EndpointName == nil { invalidParams.Add(request.NewErrParamRequired("EndpointName")) } + if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1)) + } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } @@ -4361,6 +6118,12 @@ return s } +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *CreateEndpointAccessInput) SetOwnerAccount(v string) *CreateEndpointAccessInput { + s.OwnerAccount = &v + return s +} + // SetSubnetIds sets the SubnetIds field's value. func (s *CreateEndpointAccessInput) SetSubnetIds(v []*string) *CreateEndpointAccessInput { s.SubnetIds = v @@ -4413,8 +6176,15 @@ type CreateNamespaceInput struct { _ struct{} `type:"structure"` + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the namespace's admin credentials secret. You can only use this parameter + // if manageAdminPassword is true. + AdminPasswordSecretKmsKeyId *string `locationName:"adminPasswordSecretKmsKeyId" type:"string"` + // The password of the administrator for the first database created in the namespace. // + // You can't use adminUserPassword if manageAdminPassword is true. + // // AdminUserPassword is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateNamespaceInput's // String and GoString methods. @@ -4445,11 +6215,20 @@ // connectionlog, and useractivitylog. LogExports []*string `locationName:"logExports" type:"list" enum:"LogExport"` + // If true, Amazon Redshift uses Secrets Manager to manage the namespace's admin + // credentials. You can't use adminUserPassword if manageAdminPassword is true. + // If manageAdminPassword is false or not set, Amazon Redshift uses adminUserPassword + // for the admin user account's password. + ManageAdminPassword *bool `locationName:"manageAdminPassword" type:"boolean"` + // The name of the namespace. // // NamespaceName is a required field NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + // The ARN for the Redshift application that integrates with IAM Identity Center. + RedshiftIdcApplicationArn *string `locationName:"redshiftIdcApplicationArn" min:"1" type:"string"` + // A list of tag instances. Tags []*Tag `locationName:"tags" type:"list"` } @@ -4481,6 +6260,9 @@ if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) } + if s.RedshiftIdcApplicationArn != nil && len(*s.RedshiftIdcApplicationArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RedshiftIdcApplicationArn", 1)) + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -4498,6 +6280,12 @@ return nil } +// SetAdminPasswordSecretKmsKeyId sets the AdminPasswordSecretKmsKeyId field's value. +func (s *CreateNamespaceInput) SetAdminPasswordSecretKmsKeyId(v string) *CreateNamespaceInput { + s.AdminPasswordSecretKmsKeyId = &v + return s +} + // SetAdminUserPassword sets the AdminUserPassword field's value. func (s *CreateNamespaceInput) SetAdminUserPassword(v string) *CreateNamespaceInput { s.AdminUserPassword = &v @@ -4540,12 +6328,24 @@ return s } +// SetManageAdminPassword sets the ManageAdminPassword field's value. +func (s *CreateNamespaceInput) SetManageAdminPassword(v bool) *CreateNamespaceInput { + s.ManageAdminPassword = &v + return s +} + // SetNamespaceName sets the NamespaceName field's value. func (s *CreateNamespaceInput) SetNamespaceName(v string) *CreateNamespaceInput { s.NamespaceName = &v return s } +// SetRedshiftIdcApplicationArn sets the RedshiftIdcApplicationArn field's value. +func (s *CreateNamespaceInput) SetRedshiftIdcApplicationArn(v string) *CreateNamespaceInput { + s.RedshiftIdcApplicationArn = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateNamespaceInput) SetTags(v []*Tag) *CreateNamespaceInput { s.Tags = v @@ -4583,6 +6383,327 @@ return s } +type CreateScheduledActionInput struct { + _ struct{} `type:"structure"` + + // Indicates whether the schedule is enabled. If false, the scheduled action + // does not trigger. For more information about state of the scheduled action, + // see ScheduledAction (https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_ScheduledAction.html). + Enabled *bool `locationName:"enabled" type:"boolean"` + + // The end time in UTC when the schedule is no longer active. After this time, + // the scheduled action does not trigger. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The name of the namespace for which to create a scheduled action. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // The ARN of the IAM role to assume to run the scheduled action. This IAM role + // must have permission to run the Amazon Redshift Serverless API operation + // in the scheduled action. This IAM role must allow the Amazon Redshift scheduler + // to schedule creating snapshots. (Principal scheduler.redshift.amazonaws.com) + // to assume permissions on your behalf. For more information about the IAM + // role to use with the Amazon Redshift scheduler, see Using Identity-Based + // Policies for Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) + // in the Amazon Redshift Cluster Management Guide + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` + + // The schedule for a one-time (at format) or recurring (cron format) scheduled + // action. Schedule invocations must be separated by at least one hour. + // + // Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, "at(2016-03-04T17:27:00)". + // + // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week + // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron + // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) + // in the Amazon CloudWatch Events User Guide. + // + // Schedule is a required field + Schedule *Schedule `locationName:"schedule" type:"structure" required:"true"` + + // The description of the scheduled action. + ScheduledActionDescription *string `locationName:"scheduledActionDescription" type:"string"` + + // The name of the scheduled action. + // + // ScheduledActionName is a required field + ScheduledActionName *string `locationName:"scheduledActionName" min:"3" type:"string" required:"true"` + + // The start time in UTC when the schedule is active. Before this time, the + // scheduled action does not trigger. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // A JSON format string of the Amazon Redshift Serverless API operation with + // input parameters. The following is an example of a target action. + // + // "{"CreateSnapshot": {"NamespaceName": "sampleNamespace","SnapshotName": "sampleSnapshot", + // "retentionPeriod": "1"}}" + // + // TargetAction is a required field + TargetAction *TargetAction `locationName:"targetAction" 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 CreateScheduledActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateScheduledActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateScheduledActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateScheduledActionInput"} + 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.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.Schedule == nil { + invalidParams.Add(request.NewErrParamRequired("Schedule")) + } + if s.ScheduledActionName == nil { + invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) + } + if s.ScheduledActionName != nil && len(*s.ScheduledActionName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ScheduledActionName", 3)) + } + if s.TargetAction == nil { + invalidParams.Add(request.NewErrParamRequired("TargetAction")) + } + if s.TargetAction != nil { + if err := s.TargetAction.Validate(); err != nil { + invalidParams.AddNested("TargetAction", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabled sets the Enabled field's value. +func (s *CreateScheduledActionInput) SetEnabled(v bool) *CreateScheduledActionInput { + s.Enabled = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *CreateScheduledActionInput) SetEndTime(v time.Time) *CreateScheduledActionInput { + s.EndTime = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *CreateScheduledActionInput) SetNamespaceName(v string) *CreateScheduledActionInput { + s.NamespaceName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateScheduledActionInput) SetRoleArn(v string) *CreateScheduledActionInput { + s.RoleArn = &v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *CreateScheduledActionInput) SetSchedule(v *Schedule) *CreateScheduledActionInput { + s.Schedule = v + return s +} + +// SetScheduledActionDescription sets the ScheduledActionDescription field's value. +func (s *CreateScheduledActionInput) SetScheduledActionDescription(v string) *CreateScheduledActionInput { + s.ScheduledActionDescription = &v + return s +} + +// SetScheduledActionName sets the ScheduledActionName field's value. +func (s *CreateScheduledActionInput) SetScheduledActionName(v string) *CreateScheduledActionInput { + s.ScheduledActionName = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CreateScheduledActionInput) SetStartTime(v time.Time) *CreateScheduledActionInput { + s.StartTime = &v + return s +} + +// SetTargetAction sets the TargetAction field's value. +func (s *CreateScheduledActionInput) SetTargetAction(v *TargetAction) *CreateScheduledActionInput { + s.TargetAction = v + return s +} + +type CreateScheduledActionOutput struct { + _ struct{} `type:"structure"` + + // The returned ScheduledAction object that describes the properties of a scheduled + // action. + ScheduledAction *ScheduledActionResponse `locationName:"scheduledAction" 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 CreateScheduledActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateScheduledActionOutput) GoString() string { + return s.String() +} + +// SetScheduledAction sets the ScheduledAction field's value. +func (s *CreateScheduledActionOutput) SetScheduledAction(v *ScheduledActionResponse) *CreateScheduledActionOutput { + s.ScheduledAction = v + return s +} + +type CreateSnapshotCopyConfigurationInput struct { + _ struct{} `type:"structure"` + + // The KMS key to use to encrypt your snapshots in the destination Amazon Web + // Services Region. + DestinationKmsKeyId *string `locationName:"destinationKmsKeyId" type:"string"` + + // The destination Amazon Web Services Region that you want to copy snapshots + // to. + // + // DestinationRegion is a required field + DestinationRegion *string `locationName:"destinationRegion" type:"string" required:"true"` + + // The name of the namespace to copy snapshots from. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // The retention period of the snapshots that you copy to the destination Amazon + // Web Services Region. + SnapshotRetentionPeriod *int64 `locationName:"snapshotRetentionPeriod" 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 CreateSnapshotCopyConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSnapshotCopyConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSnapshotCopyConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotCopyConfigurationInput"} + if s.DestinationRegion == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationRegion")) + } + 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 +} + +// SetDestinationKmsKeyId sets the DestinationKmsKeyId field's value. +func (s *CreateSnapshotCopyConfigurationInput) SetDestinationKmsKeyId(v string) *CreateSnapshotCopyConfigurationInput { + s.DestinationKmsKeyId = &v + return s +} + +// SetDestinationRegion sets the DestinationRegion field's value. +func (s *CreateSnapshotCopyConfigurationInput) SetDestinationRegion(v string) *CreateSnapshotCopyConfigurationInput { + s.DestinationRegion = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *CreateSnapshotCopyConfigurationInput) SetNamespaceName(v string) *CreateSnapshotCopyConfigurationInput { + s.NamespaceName = &v + return s +} + +// SetSnapshotRetentionPeriod sets the SnapshotRetentionPeriod field's value. +func (s *CreateSnapshotCopyConfigurationInput) SetSnapshotRetentionPeriod(v int64) *CreateSnapshotCopyConfigurationInput { + s.SnapshotRetentionPeriod = &v + return s +} + +type CreateSnapshotCopyConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The snapshot copy configuration object that is returned. + // + // SnapshotCopyConfiguration is a required field + SnapshotCopyConfiguration *SnapshotCopyConfiguration `locationName:"snapshotCopyConfiguration" 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 CreateSnapshotCopyConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSnapshotCopyConfigurationOutput) GoString() string { + return s.String() +} + +// SetSnapshotCopyConfiguration sets the SnapshotCopyConfiguration field's value. +func (s *CreateSnapshotCopyConfigurationOutput) SetSnapshotCopyConfiguration(v *SnapshotCopyConfiguration) *CreateSnapshotCopyConfigurationOutput { + s.SnapshotCopyConfiguration = v + return s +} + type CreateSnapshotInput struct { _ struct{} `type:"structure"` @@ -4703,6 +6824,107 @@ return s } +// The parameters that you can use to configure a scheduled action (https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_CreateScheduledAction.html) +// to create a snapshot. For more information about creating a scheduled action, +// see CreateScheduledAction (https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_CreateScheduledAction.html). +type CreateSnapshotScheduleActionParameters struct { + _ struct{} `type:"structure"` + + // The name of the namespace for which you want to configure a scheduled action + // to create a snapshot. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // The retention period of the snapshot created by the scheduled action. + RetentionPeriod *int64 `locationName:"retentionPeriod" type:"integer"` + + // A string prefix that is attached to the name of the snapshot created by the + // scheduled action. The final name of the snapshot is the string prefix appended + // by the date and time of when the snapshot was created. + // + // SnapshotNamePrefix is a required field + SnapshotNamePrefix *string `locationName:"snapshotNamePrefix" min:"1" type:"string" required:"true"` + + // An array of Tag objects (https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_Tag.html) + // to associate with the snapshot. + 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 CreateSnapshotScheduleActionParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSnapshotScheduleActionParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSnapshotScheduleActionParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotScheduleActionParameters"} + 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.SnapshotNamePrefix == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotNamePrefix")) + } + if s.SnapshotNamePrefix != nil && len(*s.SnapshotNamePrefix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SnapshotNamePrefix", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *CreateSnapshotScheduleActionParameters) SetNamespaceName(v string) *CreateSnapshotScheduleActionParameters { + s.NamespaceName = &v + return s +} + +// SetRetentionPeriod sets the RetentionPeriod field's value. +func (s *CreateSnapshotScheduleActionParameters) SetRetentionPeriod(v int64) *CreateSnapshotScheduleActionParameters { + s.RetentionPeriod = &v + return s +} + +// SetSnapshotNamePrefix sets the SnapshotNamePrefix field's value. +func (s *CreateSnapshotScheduleActionParameters) SetSnapshotNamePrefix(v string) *CreateSnapshotScheduleActionParameters { + s.SnapshotNamePrefix = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateSnapshotScheduleActionParameters) SetTags(v []*Tag) *CreateSnapshotScheduleActionParameters { + s.Tags = v + return s +} + type CreateUsageLimitInput struct { _ struct{} `type:"structure"` @@ -4840,7 +7062,7 @@ BaseCapacity *int64 `locationName:"baseCapacity" type:"integer"` // An array of parameters to set for advanced control over a database. The options - // are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, + // are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, // query_group, search_path, and query monitoring metrics that let you define // performance boundaries. For more information about query monitoring rules // and available metrics, see Query monitoring metrics for Amazon Redshift Serverless @@ -4852,6 +7074,10 @@ // your VPC instead of over the internet. EnhancedVpcRouting *bool `locationName:"enhancedVpcRouting" type:"boolean"` + // The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve + // queries. The max capacity is specified in RPUs. + MaxCapacity *int64 `locationName:"maxCapacity" type:"integer"` + // The name of the namespace to associate with the workgroup. // // NamespaceName is a required field @@ -4948,6 +7174,12 @@ return s } +// SetMaxCapacity sets the MaxCapacity field's value. +func (s *CreateWorkgroupInput) SetMaxCapacity(v int64) *CreateWorkgroupInput { + s.MaxCapacity = &v + return s +} + // SetNamespaceName sets the NamespaceName field's value. func (s *CreateWorkgroupInput) SetNamespaceName(v string) *CreateWorkgroupInput { s.NamespaceName = &v @@ -5021,6 +7253,94 @@ return s } +type DeleteCustomDomainAssociationInput struct { + _ struct{} `type:"structure"` + + // The custom domain name associated with the workgroup. + // + // CustomDomainName is a required field + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string" required:"true"` + + // 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 DeleteCustomDomainAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCustomDomainAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteCustomDomainAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCustomDomainAssociationInput"} + if s.CustomDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainName")) + } + if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) + } + 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 +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *DeleteCustomDomainAssociationInput) SetCustomDomainName(v string) *DeleteCustomDomainAssociationInput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *DeleteCustomDomainAssociationInput) SetWorkgroupName(v string) *DeleteCustomDomainAssociationInput { + s.WorkgroupName = &v + return s +} + +type DeleteCustomDomainAssociationOutput 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 DeleteCustomDomainAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCustomDomainAssociationOutput) GoString() string { + return s.String() +} + type DeleteEndpointAccessInput struct { _ struct{} `type:"structure"` @@ -5266,6 +7586,165 @@ return s.String() } +type DeleteScheduledActionInput struct { + _ struct{} `type:"structure"` + + // The name of the scheduled action to delete. + // + // ScheduledActionName is a required field + ScheduledActionName *string `locationName:"scheduledActionName" 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 DeleteScheduledActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteScheduledActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteScheduledActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteScheduledActionInput"} + if s.ScheduledActionName == nil { + invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) + } + if s.ScheduledActionName != nil && len(*s.ScheduledActionName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ScheduledActionName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetScheduledActionName sets the ScheduledActionName field's value. +func (s *DeleteScheduledActionInput) SetScheduledActionName(v string) *DeleteScheduledActionInput { + s.ScheduledActionName = &v + return s +} + +type DeleteScheduledActionOutput struct { + _ struct{} `type:"structure"` + + // The deleted scheduled action object. + ScheduledAction *ScheduledActionResponse `locationName:"scheduledAction" 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 DeleteScheduledActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteScheduledActionOutput) GoString() string { + return s.String() +} + +// SetScheduledAction sets the ScheduledAction field's value. +func (s *DeleteScheduledActionOutput) SetScheduledAction(v *ScheduledActionResponse) *DeleteScheduledActionOutput { + s.ScheduledAction = v + return s +} + +type DeleteSnapshotCopyConfigurationInput struct { + _ struct{} `type:"structure"` + + // The ID of the snapshot copy configuration to delete. + // + // SnapshotCopyConfigurationId is a required field + SnapshotCopyConfigurationId *string `locationName:"snapshotCopyConfigurationId" 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 DeleteSnapshotCopyConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSnapshotCopyConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSnapshotCopyConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotCopyConfigurationInput"} + if s.SnapshotCopyConfigurationId == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotCopyConfigurationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSnapshotCopyConfigurationId sets the SnapshotCopyConfigurationId field's value. +func (s *DeleteSnapshotCopyConfigurationInput) SetSnapshotCopyConfigurationId(v string) *DeleteSnapshotCopyConfigurationInput { + s.SnapshotCopyConfigurationId = &v + return s +} + +type DeleteSnapshotCopyConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The deleted snapshot copy configuration object. + // + // SnapshotCopyConfiguration is a required field + SnapshotCopyConfiguration *SnapshotCopyConfiguration `locationName:"snapshotCopyConfiguration" 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 DeleteSnapshotCopyConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSnapshotCopyConfigurationOutput) GoString() string { + return s.String() +} + +// SetSnapshotCopyConfiguration sets the SnapshotCopyConfiguration field's value. +func (s *DeleteSnapshotCopyConfigurationOutput) SetSnapshotCopyConfiguration(v *SnapshotCopyConfiguration) *DeleteSnapshotCopyConfigurationOutput { + s.SnapshotCopyConfiguration = v + return s +} + type DeleteSnapshotInput struct { _ struct{} `type:"structure"` @@ -5669,6 +8148,10 @@ type GetCredentialsInput struct { _ struct{} `type:"structure"` + // The custom domain name associated with the workgroup. The custom domain name + // or the workgroup name must be included in the request. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + // The name of the database to get temporary authorization to log on to. // // Constraints: @@ -5692,9 +8175,7 @@ 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"` + WorkgroupName *string `locationName:"workgroupName" min:"3" type:"string"` } // String returns the string representation. @@ -5718,8 +8199,8 @@ // 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.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) } if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) @@ -5731,6 +8212,12 @@ return nil } +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *GetCredentialsInput) SetCustomDomainName(v string) *GetCredentialsInput { + s.CustomDomainName = &v + return s +} + // SetDbName sets the DbName field's value. func (s *GetCredentialsInput) SetDbName(v string) *GetCredentialsInput { s.DbName = &v @@ -5819,6 +8306,130 @@ return s } +type GetCustomDomainAssociationInput struct { + _ struct{} `type:"structure"` + + // The custom domain name associated with the workgroup. + // + // CustomDomainName is a required field + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string" required:"true"` + + // 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 GetCustomDomainAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCustomDomainAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCustomDomainAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCustomDomainAssociationInput"} + if s.CustomDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainName")) + } + if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) + } + 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 +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *GetCustomDomainAssociationInput) SetCustomDomainName(v string) *GetCustomDomainAssociationInput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *GetCustomDomainAssociationInput) SetWorkgroupName(v string) *GetCustomDomainAssociationInput { + s.WorkgroupName = &v + return s +} + +type GetCustomDomainAssociationOutput struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string"` + + // The expiration time for the certificate. + CustomDomainCertificateExpiryTime *time.Time `locationName:"customDomainCertificateExpiryTime" type:"timestamp" timestampFormat:"iso8601"` + + // The custom domain name associated with the workgroup. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + + // The name of the workgroup associated with the database. + 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 GetCustomDomainAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCustomDomainAssociationOutput) GoString() string { + return s.String() +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *GetCustomDomainAssociationOutput) SetCustomDomainCertificateArn(v string) *GetCustomDomainAssociationOutput { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainCertificateExpiryTime sets the CustomDomainCertificateExpiryTime field's value. +func (s *GetCustomDomainAssociationOutput) SetCustomDomainCertificateExpiryTime(v time.Time) *GetCustomDomainAssociationOutput { + s.CustomDomainCertificateExpiryTime = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *GetCustomDomainAssociationOutput) SetCustomDomainName(v string) *GetCustomDomainAssociationOutput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *GetCustomDomainAssociationOutput) SetWorkgroupName(v string) *GetCustomDomainAssociationOutput { + s.WorkgroupName = &v + return s +} + type GetEndpointAccessInput struct { _ struct{} `type:"structure"` @@ -6132,6 +8743,86 @@ return s } +type GetScheduledActionInput struct { + _ struct{} `type:"structure"` + + // The name of the scheduled action. + // + // ScheduledActionName is a required field + ScheduledActionName *string `locationName:"scheduledActionName" 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 GetScheduledActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetScheduledActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetScheduledActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetScheduledActionInput"} + if s.ScheduledActionName == nil { + invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) + } + if s.ScheduledActionName != nil && len(*s.ScheduledActionName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ScheduledActionName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetScheduledActionName sets the ScheduledActionName field's value. +func (s *GetScheduledActionInput) SetScheduledActionName(v string) *GetScheduledActionInput { + s.ScheduledActionName = &v + return s +} + +type GetScheduledActionOutput struct { + _ struct{} `type:"structure"` + + // The returned scheduled action object. + ScheduledAction *ScheduledActionResponse `locationName:"scheduledAction" 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 GetScheduledActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetScheduledActionOutput) GoString() string { + return s.String() +} + +// SetScheduledAction sets the ScheduledAction field's value. +func (s *GetScheduledActionOutput) SetScheduledAction(v *ScheduledActionResponse) *GetScheduledActionOutput { + s.ScheduledAction = v + return s +} + type GetSnapshotInput struct { _ struct{} `type:"structure"` @@ -6642,6 +9333,131 @@ return s.RespMetadata.RequestID } +type ListCustomDomainAssociationsInput struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string"` + + // The custom domain name associated with the workgroup. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to display the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // 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"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomDomainAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomDomainAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCustomDomainAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCustomDomainAssociationsInput"} + if s.CustomDomainCertificateArn != nil && len(*s.CustomDomainCertificateArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainCertificateArn", 20)) + } + if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) + } + 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 +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *ListCustomDomainAssociationsInput) SetCustomDomainCertificateArn(v string) *ListCustomDomainAssociationsInput { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *ListCustomDomainAssociationsInput) SetCustomDomainName(v string) *ListCustomDomainAssociationsInput { + s.CustomDomainName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCustomDomainAssociationsInput) SetMaxResults(v int64) *ListCustomDomainAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCustomDomainAssociationsInput) SetNextToken(v string) *ListCustomDomainAssociationsInput { + s.NextToken = &v + return s +} + +type ListCustomDomainAssociationsOutput struct { + _ struct{} `type:"structure"` + + // A list of Association objects. + Associations []*Association `locationName:"associations" type:"list"` + + // 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"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomDomainAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCustomDomainAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *ListCustomDomainAssociationsOutput) SetAssociations(v []*Association) *ListCustomDomainAssociationsOutput { + s.Associations = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCustomDomainAssociationsOutput) SetNextToken(v string) *ListCustomDomainAssociationsOutput { + s.NextToken = &v + return s +} + type ListEndpointAccessInput struct { _ struct{} `type:"structure"` @@ -6654,6 +9470,10 @@ // which returns results in the next page. NextToken *string `locationName:"nextToken" type:"string"` + // The owner Amazon Web Services account for the Amazon Redshift Serverless + // workgroup. + OwnerAccount *string `locationName:"ownerAccount" min:"1" type:"string"` + // The unique identifier of the virtual private cloud with access to Amazon // Redshift Serverless. VpcId *string `locationName:"vpcId" type:"string"` @@ -6686,6 +9506,9 @@ if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -6705,6 +9528,12 @@ return s } +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *ListEndpointAccessInput) SetOwnerAccount(v string) *ListEndpointAccessInput { + s.OwnerAccount = &v + return s +} + // SetVpcId sets the VpcId field's value. func (s *ListEndpointAccessInput) SetVpcId(v string) *ListEndpointAccessInput { s.VpcId = &v @@ -6999,6 +9828,234 @@ return s } +type ListScheduledActionsInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // Use nextToken to display the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The name of namespace associated with the scheduled action to retrieve. + NamespaceName *string `locationName:"namespaceName" min:"3" 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" min:"8" 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 ListScheduledActionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListScheduledActionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListScheduledActionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListScheduledActionsInput"} + 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 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 *ListScheduledActionsInput) SetMaxResults(v int64) *ListScheduledActionsInput { + s.MaxResults = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *ListScheduledActionsInput) SetNamespaceName(v string) *ListScheduledActionsInput { + s.NamespaceName = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListScheduledActionsInput) SetNextToken(v string) *ListScheduledActionsInput { + s.NextToken = &v + return s +} + +type ListScheduledActionsOutput 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" min:"8" type:"string"` + + // All of the returned scheduled action objects. + ScheduledActions []*string `locationName:"scheduledActions" 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 ListScheduledActionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListScheduledActionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListScheduledActionsOutput) SetNextToken(v string) *ListScheduledActionsOutput { + s.NextToken = &v + return s +} + +// SetScheduledActions sets the ScheduledActions field's value. +func (s *ListScheduledActionsOutput) SetScheduledActions(v []*string) *ListScheduledActionsOutput { + s.ScheduledActions = v + return s +} + +type ListSnapshotCopyConfigurationsInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to display the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The namespace from which to list all snapshot copy configurations. + NamespaceName *string `locationName:"namespaceName" min:"3" 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" min:"8" 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 ListSnapshotCopyConfigurationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotCopyConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSnapshotCopyConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSnapshotCopyConfigurationsInput"} + 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 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 *ListSnapshotCopyConfigurationsInput) SetMaxResults(v int64) *ListSnapshotCopyConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *ListSnapshotCopyConfigurationsInput) SetNamespaceName(v string) *ListSnapshotCopyConfigurationsInput { + s.NamespaceName = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSnapshotCopyConfigurationsInput) SetNextToken(v string) *ListSnapshotCopyConfigurationsInput { + s.NextToken = &v + return s +} + +type ListSnapshotCopyConfigurationsOutput 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" min:"8" type:"string"` + + // All of the returned snapshot copy configurations. + // + // SnapshotCopyConfigurations is a required field + SnapshotCopyConfigurations []*SnapshotCopyConfiguration `locationName:"snapshotCopyConfigurations" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotCopyConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotCopyConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSnapshotCopyConfigurationsOutput) SetNextToken(v string) *ListSnapshotCopyConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetSnapshotCopyConfigurations sets the SnapshotCopyConfigurations field's value. +func (s *ListSnapshotCopyConfigurationsOutput) SetSnapshotCopyConfigurations(v []*SnapshotCopyConfiguration) *ListSnapshotCopyConfigurationsOutput { + s.SnapshotCopyConfigurations = v + return s +} + type ListSnapshotsInput struct { _ struct{} `type:"structure"` @@ -7474,6 +10531,10 @@ // the returned nextToken in following ListNamespaces operations, which returns // results in the next page. NextToken *string `locationName:"nextToken" type:"string"` + + // The owner Amazon Web Services account for the Amazon Redshift Serverless + // workgroup. + OwnerAccount *string `locationName:"ownerAccount" min:"1" type:"string"` } // String returns the string representation. @@ -7500,6 +10561,9 @@ if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -7519,6 +10583,12 @@ return s } +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *ListWorkgroupsInput) SetOwnerAccount(v string) *ListWorkgroupsInput { + s.OwnerAccount = &v + return s +} + type ListWorkgroupsOutput struct { _ struct{} `type:"structure"` @@ -7567,6 +10637,14 @@ type Namespace struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) for the namespace's admin user credentials + // secret. + AdminPasswordSecretArn *string `locationName:"adminPasswordSecretArn" type:"string"` + + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the namespace's admin credentials secret. + AdminPasswordSecretKmsKeyId *string `locationName:"adminPasswordSecretKmsKeyId" type:"string"` + // The username of the administrator for the first database created in the namespace. // // AdminUsername is a sensitive parameter and its value will be @@ -7629,6 +10707,18 @@ return s.String() } +// SetAdminPasswordSecretArn sets the AdminPasswordSecretArn field's value. +func (s *Namespace) SetAdminPasswordSecretArn(v string) *Namespace { + s.AdminPasswordSecretArn = &v + return s +} + +// SetAdminPasswordSecretKmsKeyId sets the AdminPasswordSecretKmsKeyId field's value. +func (s *Namespace) SetAdminPasswordSecretKmsKeyId(v string) *Namespace { + s.AdminPasswordSecretKmsKeyId = &v + return s +} + // SetAdminUsername sets the AdminUsername field's value. func (s *Namespace) SetAdminUsername(v string) *Namespace { s.AdminUsername = &v @@ -8163,6 +11253,16 @@ type RestoreFromSnapshotInput struct { _ struct{} `type:"structure"` + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the namespace's admin credentials secret. + AdminPasswordSecretKmsKeyId *string `locationName:"adminPasswordSecretKmsKeyId" type:"string"` + + // If true, Amazon Redshift uses Secrets Manager to manage the restored snapshot's + // admin credentials. If MmanageAdminPassword is false or not set, Amazon Redshift + // uses the admin credentials that the namespace or cluster had at the time + // the snapshot was taken. + ManageAdminPassword *bool `locationName:"manageAdminPassword" type:"boolean"` + // The name of the namespace to restore the snapshot to. // // NamespaceName is a required field @@ -8228,6 +11328,18 @@ return nil } +// SetAdminPasswordSecretKmsKeyId sets the AdminPasswordSecretKmsKeyId field's value. +func (s *RestoreFromSnapshotInput) SetAdminPasswordSecretKmsKeyId(v string) *RestoreFromSnapshotInput { + s.AdminPasswordSecretKmsKeyId = &v + return s +} + +// SetManageAdminPassword sets the ManageAdminPassword field's value. +func (s *RestoreFromSnapshotInput) SetManageAdminPassword(v bool) *RestoreFromSnapshotInput { + s.ManageAdminPassword = &v + return s +} + // SetNamespaceName sets the NamespaceName field's value. func (s *RestoreFromSnapshotInput) SetNamespaceName(v string) *RestoreFromSnapshotInput { s.NamespaceName = &v @@ -8307,6 +11419,191 @@ return s } +type RestoreTableFromRecoveryPointInput struct { + _ struct{} `type:"structure"` + + // Indicates whether name identifiers for database, schema, and table are case + // sensitive. If true, the names are case sensitive. If false, the names are + // not case sensitive. The default is false. + ActivateCaseSensitiveIdentifier *bool `locationName:"activateCaseSensitiveIdentifier" type:"boolean"` + + // Namespace of the recovery point to restore from. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" type:"string" required:"true"` + + // The name of the table to create from the restore operation. + // + // NewTableName is a required field + NewTableName *string `locationName:"newTableName" type:"string" required:"true"` + + // The ID of the recovery point to restore the table from. + // + // RecoveryPointId is a required field + RecoveryPointId *string `locationName:"recoveryPointId" type:"string" required:"true"` + + // The name of the source database that contains the table being restored. + // + // SourceDatabaseName is a required field + SourceDatabaseName *string `locationName:"sourceDatabaseName" type:"string" required:"true"` + + // The name of the source schema that contains the table being restored. + SourceSchemaName *string `locationName:"sourceSchemaName" type:"string"` + + // The name of the source table being restored. + // + // SourceTableName is a required field + SourceTableName *string `locationName:"sourceTableName" type:"string" required:"true"` + + // The name of the database to restore the table to. + TargetDatabaseName *string `locationName:"targetDatabaseName" type:"string"` + + // The name of the schema to restore the table to. + TargetSchemaName *string `locationName:"targetSchemaName" type:"string"` + + // The workgroup to restore the table to. + // + // 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 RestoreTableFromRecoveryPointInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTableFromRecoveryPointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreTableFromRecoveryPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTableFromRecoveryPointInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NewTableName == nil { + invalidParams.Add(request.NewErrParamRequired("NewTableName")) + } + if s.RecoveryPointId == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointId")) + } + if s.SourceDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("SourceDatabaseName")) + } + if s.SourceTableName == nil { + invalidParams.Add(request.NewErrParamRequired("SourceTableName")) + } + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActivateCaseSensitiveIdentifier sets the ActivateCaseSensitiveIdentifier field's value. +func (s *RestoreTableFromRecoveryPointInput) SetActivateCaseSensitiveIdentifier(v bool) *RestoreTableFromRecoveryPointInput { + s.ActivateCaseSensitiveIdentifier = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetNamespaceName(v string) *RestoreTableFromRecoveryPointInput { + s.NamespaceName = &v + return s +} + +// SetNewTableName sets the NewTableName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetNewTableName(v string) *RestoreTableFromRecoveryPointInput { + s.NewTableName = &v + return s +} + +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *RestoreTableFromRecoveryPointInput) SetRecoveryPointId(v string) *RestoreTableFromRecoveryPointInput { + s.RecoveryPointId = &v + return s +} + +// SetSourceDatabaseName sets the SourceDatabaseName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetSourceDatabaseName(v string) *RestoreTableFromRecoveryPointInput { + s.SourceDatabaseName = &v + return s +} + +// SetSourceSchemaName sets the SourceSchemaName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetSourceSchemaName(v string) *RestoreTableFromRecoveryPointInput { + s.SourceSchemaName = &v + return s +} + +// SetSourceTableName sets the SourceTableName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetSourceTableName(v string) *RestoreTableFromRecoveryPointInput { + s.SourceTableName = &v + return s +} + +// SetTargetDatabaseName sets the TargetDatabaseName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetTargetDatabaseName(v string) *RestoreTableFromRecoveryPointInput { + s.TargetDatabaseName = &v + return s +} + +// SetTargetSchemaName sets the TargetSchemaName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetTargetSchemaName(v string) *RestoreTableFromRecoveryPointInput { + s.TargetSchemaName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *RestoreTableFromRecoveryPointInput) SetWorkgroupName(v string) *RestoreTableFromRecoveryPointInput { + s.WorkgroupName = &v + return s +} + +type RestoreTableFromRecoveryPointOutput struct { + _ struct{} `type:"structure"` + + // Contains information about a table restore request. + TableRestoreStatus *TableRestoreStatus `locationName:"tableRestoreStatus" 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 RestoreTableFromRecoveryPointOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreTableFromRecoveryPointOutput) GoString() string { + return s.String() +} + +// SetTableRestoreStatus sets the TableRestoreStatus field's value. +func (s *RestoreTableFromRecoveryPointOutput) SetTableRestoreStatus(v *TableRestoreStatus) *RestoreTableFromRecoveryPointOutput { + s.TableRestoreStatus = v + return s +} + type RestoreTableFromSnapshotInput struct { _ struct{} `type:"structure"` @@ -8492,6 +11789,199 @@ return s } +// The schedule of when Amazon Redshift Serverless should run the scheduled +// action. +type Schedule struct { + _ struct{} `type:"structure"` + + // The timestamp of when Amazon Redshift Serverless should run the scheduled + // action. Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, + // "at(2016-03-04T17:27:00)". + At *time.Time `locationName:"at" type:"timestamp"` + + // The cron expression to use to schedule a recurring scheduled action. Schedule + // invocations must be separated by at least one hour. + // + // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week + // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron + // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) + // in the Amazon CloudWatch Events User Guide. + Cron *string `locationName:"cron" 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 Schedule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Schedule) GoString() string { + return s.String() +} + +// SetAt sets the At field's value. +func (s *Schedule) SetAt(v time.Time) *Schedule { + s.At = &v + return s +} + +// SetCron sets the Cron field's value. +func (s *Schedule) SetCron(v string) *Schedule { + s.Cron = &v + return s +} + +// The returned scheduled action object. +type ScheduledActionResponse struct { + _ struct{} `type:"structure"` + + // The end time of + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The end time in UTC when the schedule is no longer active. After this time, + // the scheduled action does not trigger. + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string"` + + // An array of timestamps of when the next scheduled actions will trigger. + NextInvocations []*time.Time `locationName:"nextInvocations" type:"list"` + + // The ARN of the IAM role to assume to run the scheduled action. This IAM role + // must have permission to run the Amazon Redshift Serverless API operation + // in the scheduled action. This IAM role must allow the Amazon Redshift scheduler + // to schedule creating snapshots. (Principal scheduler.redshift.amazonaws.com) + // to assume permissions on your behalf. For more information about the IAM + // role to use with the Amazon Redshift scheduler, see Using Identity-Based + // Policies for Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) + // in the Amazon Redshift Cluster Management Guide + RoleArn *string `locationName:"roleArn" type:"string"` + + // The schedule for a one-time (at format) or recurring (cron format) scheduled + // action. Schedule invocations must be separated by at least one hour. + // + // Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, "at(2016-03-04T17:27:00)". + // + // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week + // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron + // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) + // in the Amazon CloudWatch Events User Guide. + Schedule *Schedule `locationName:"schedule" type:"structure"` + + // The description of the scheduled action. + ScheduledActionDescription *string `locationName:"scheduledActionDescription" type:"string"` + + // The name of the scheduled action. + ScheduledActionName *string `locationName:"scheduledActionName" min:"3" type:"string"` + + // The uuid of the scheduled action. + ScheduledActionUuid *string `locationName:"scheduledActionUuid" type:"string"` + + // The start time in UTC when the schedule is active. Before this time, the + // scheduled action does not trigger. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The state of the scheduled action. + State *string `locationName:"state" type:"string" enum:"State"` + + // A JSON format string of the Amazon Redshift Serverless API operation with + // input parameters. The following is an example of a target action. + // + // "{"CreateSnapshot": {"NamespaceName": "sampleNamespace","SnapshotName": "sampleSnapshot", + // "retentionPeriod": "1"}}" + TargetAction *TargetAction `locationName:"targetAction" 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 ScheduledActionResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScheduledActionResponse) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *ScheduledActionResponse) SetEndTime(v time.Time) *ScheduledActionResponse { + s.EndTime = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *ScheduledActionResponse) SetNamespaceName(v string) *ScheduledActionResponse { + s.NamespaceName = &v + return s +} + +// SetNextInvocations sets the NextInvocations field's value. +func (s *ScheduledActionResponse) SetNextInvocations(v []*time.Time) *ScheduledActionResponse { + s.NextInvocations = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ScheduledActionResponse) SetRoleArn(v string) *ScheduledActionResponse { + s.RoleArn = &v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *ScheduledActionResponse) SetSchedule(v *Schedule) *ScheduledActionResponse { + s.Schedule = v + return s +} + +// SetScheduledActionDescription sets the ScheduledActionDescription field's value. +func (s *ScheduledActionResponse) SetScheduledActionDescription(v string) *ScheduledActionResponse { + s.ScheduledActionDescription = &v + return s +} + +// SetScheduledActionName sets the ScheduledActionName field's value. +func (s *ScheduledActionResponse) SetScheduledActionName(v string) *ScheduledActionResponse { + s.ScheduledActionName = &v + return s +} + +// SetScheduledActionUuid sets the ScheduledActionUuid field's value. +func (s *ScheduledActionResponse) SetScheduledActionUuid(v string) *ScheduledActionResponse { + s.ScheduledActionUuid = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ScheduledActionResponse) SetStartTime(v time.Time) *ScheduledActionResponse { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *ScheduledActionResponse) SetState(v string) *ScheduledActionResponse { + s.State = &v + return s +} + +// SetTargetAction sets the TargetAction field's value. +func (s *ScheduledActionResponse) SetTargetAction(v *TargetAction) *ScheduledActionResponse { + s.TargetAction = v + return s +} + // The service limit was exceeded. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -8571,6 +12061,14 @@ // The size of the incremental backup in megabytes. ActualIncrementalBackupSizeInMegaBytes *float64 `locationName:"actualIncrementalBackupSizeInMegaBytes" type:"double"` + // The Amazon Resource Name (ARN) for the namespace's admin user credentials + // secret. + AdminPasswordSecretArn *string `locationName:"adminPasswordSecretArn" type:"string"` + + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the namespace's admin credentials secret. + AdminPasswordSecretKmsKeyId *string `locationName:"adminPasswordSecretKmsKeyId" type:"string"` + // The username of the database within a snapshot. AdminUsername *string `locationName:"adminUsername" type:"string"` @@ -8660,6 +12158,18 @@ return s } +// SetAdminPasswordSecretArn sets the AdminPasswordSecretArn field's value. +func (s *Snapshot) SetAdminPasswordSecretArn(v string) *Snapshot { + s.AdminPasswordSecretArn = &v + return s +} + +// SetAdminPasswordSecretKmsKeyId sets the AdminPasswordSecretKmsKeyId field's value. +func (s *Snapshot) SetAdminPasswordSecretKmsKeyId(v string) *Snapshot { + s.AdminPasswordSecretKmsKeyId = &v + return s +} + // SetAdminUsername sets the AdminUsername field's value. func (s *Snapshot) SetAdminUsername(v string) *Snapshot { s.AdminUsername = &v @@ -8762,12 +12272,93 @@ return s } +// The object that you configure to copy snapshots from one namespace to a namespace +// in another Amazon Web Services Region. +type SnapshotCopyConfiguration struct { + _ struct{} `type:"structure"` + + // The ID of the KMS key to use to encrypt your snapshots in the destination + // Amazon Web Services Region. + DestinationKmsKeyId *string `locationName:"destinationKmsKeyId" type:"string"` + + // The destination Amazon Web Services Region to copy snapshots to. + DestinationRegion *string `locationName:"destinationRegion" type:"string"` + + // The name of the namespace to copy snapshots from in the source Amazon Web + // Services Region. + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string"` + + // The ARN of the snapshot copy configuration object. + SnapshotCopyConfigurationArn *string `locationName:"snapshotCopyConfigurationArn" type:"string"` + + // The ID of the snapshot copy configuration object. + SnapshotCopyConfigurationId *string `locationName:"snapshotCopyConfigurationId" type:"string"` + + // The retention period of snapshots that are copied to the destination Amazon + // Web Services Region. + SnapshotRetentionPeriod *int64 `locationName:"snapshotRetentionPeriod" 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 SnapshotCopyConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SnapshotCopyConfiguration) GoString() string { + return s.String() +} + +// SetDestinationKmsKeyId sets the DestinationKmsKeyId field's value. +func (s *SnapshotCopyConfiguration) SetDestinationKmsKeyId(v string) *SnapshotCopyConfiguration { + s.DestinationKmsKeyId = &v + return s +} + +// SetDestinationRegion sets the DestinationRegion field's value. +func (s *SnapshotCopyConfiguration) SetDestinationRegion(v string) *SnapshotCopyConfiguration { + s.DestinationRegion = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *SnapshotCopyConfiguration) SetNamespaceName(v string) *SnapshotCopyConfiguration { + s.NamespaceName = &v + return s +} + +// SetSnapshotCopyConfigurationArn sets the SnapshotCopyConfigurationArn field's value. +func (s *SnapshotCopyConfiguration) SetSnapshotCopyConfigurationArn(v string) *SnapshotCopyConfiguration { + s.SnapshotCopyConfigurationArn = &v + return s +} + +// SetSnapshotCopyConfigurationId sets the SnapshotCopyConfigurationId field's value. +func (s *SnapshotCopyConfiguration) SetSnapshotCopyConfigurationId(v string) *SnapshotCopyConfiguration { + s.SnapshotCopyConfigurationId = &v + return s +} + +// SetSnapshotRetentionPeriod sets the SnapshotRetentionPeriod field's value. +func (s *SnapshotCopyConfiguration) SetSnapshotRetentionPeriod(v int64) *SnapshotCopyConfiguration { + s.SnapshotRetentionPeriod = &v + return s +} + // Contains information about a table restore request. type TableRestoreStatus struct { _ struct{} `type:"structure"` - // A description of the status of the table restore request. Status values include - // SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS. + // A message that explains the returned status. For example, if the status of + // the operation is FAILED, the message explains why the operation failed. Message *string `locationName:"message" type:"string"` // The namespace of the table being restored from. @@ -8779,6 +12370,9 @@ // The amount of data restored to the new table so far, in megabytes (MB). ProgressInMegaBytes *int64 `locationName:"progressInMegaBytes" type:"long"` + // The ID of the recovery point being restored from. + RecoveryPointId *string `locationName:"recoveryPointId" type:"string"` + // The time that the table restore request was made, in Universal Coordinated // Time (UTC). RequestTime *time.Time `locationName:"requestTime" type:"timestamp"` @@ -8796,7 +12390,7 @@ SourceTableName *string `locationName:"sourceTableName" type:"string"` // A value that describes the current state of the table restore request. Possible - // values include SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS. + // values are SUCCEEDED, FAILED, CANCELED, PENDING, and IN_PROGRESS. Status *string `locationName:"status" type:"string"` // The ID of the RestoreTableFromSnapshot request. @@ -8857,6 +12451,12 @@ return s } +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *TableRestoreStatus) SetRecoveryPointId(v string) *TableRestoreStatus { + s.RecoveryPointId = &v + return s +} + // SetRequestTime sets the RequestTime field's value. func (s *TableRestoreStatus) SetRequestTime(v time.Time) *TableRestoreStatus { s.RequestTime = &v @@ -9082,6 +12682,59 @@ return s.String() } +// A JSON format string of the Amazon Redshift Serverless API operation with +// input parameters. The following is an example of a target action. +// +// "{"CreateSnapshot": {"NamespaceName": "sampleNamespace","SnapshotName": "sampleSnapshot", +// "retentionPeriod": "1"}}" +type TargetAction struct { + _ struct{} `type:"structure"` + + // The parameters that you can use to configure a scheduled action (https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_CreateScheduledAction.html) + // to create a snapshot. For more information about creating a scheduled action, + // see CreateScheduledAction (https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_CreateScheduledAction.html). + CreateSnapshot *CreateSnapshotScheduleActionParameters `locationName:"createSnapshot" 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 TargetAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetAction) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TargetAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TargetAction"} + if s.CreateSnapshot != nil { + if err := s.CreateSnapshot.Validate(); err != nil { + invalidParams.AddNested("CreateSnapshot", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreateSnapshot sets the CreateSnapshot field's value. +func (s *TargetAction) SetCreateSnapshot(v *CreateSnapshotScheduleActionParameters) *TargetAction { + s.CreateSnapshot = v + return s +} + // The request was denied due to request throttling. type ThrottlingException struct { _ struct{} `type:"structure"` @@ -9300,6 +12953,148 @@ return s.String() } +type UpdateCustomDomainAssociationInput struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). This is + // optional. + // + // CustomDomainCertificateArn is a required field + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string" required:"true"` + + // The custom domain name associated with the workgroup. + // + // CustomDomainName is a required field + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string" required:"true"` + + // 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 UpdateCustomDomainAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCustomDomainAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateCustomDomainAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateCustomDomainAssociationInput"} + if s.CustomDomainCertificateArn == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainCertificateArn")) + } + if s.CustomDomainCertificateArn != nil && len(*s.CustomDomainCertificateArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainCertificateArn", 20)) + } + if s.CustomDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CustomDomainName")) + } + if s.CustomDomainName != nil && len(*s.CustomDomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CustomDomainName", 1)) + } + 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 +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *UpdateCustomDomainAssociationInput) SetCustomDomainCertificateArn(v string) *UpdateCustomDomainAssociationInput { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *UpdateCustomDomainAssociationInput) SetCustomDomainName(v string) *UpdateCustomDomainAssociationInput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *UpdateCustomDomainAssociationInput) SetWorkgroupName(v string) *UpdateCustomDomainAssociationInput { + s.WorkgroupName = &v + return s +} + +type UpdateCustomDomainAssociationOutput struct { + _ struct{} `type:"structure"` + + // The custom domain name’s certificate Amazon resource name (ARN). + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string"` + + // The expiration time for the certificate. + CustomDomainCertificateExpiryTime *time.Time `locationName:"customDomainCertificateExpiryTime" type:"timestamp" timestampFormat:"iso8601"` + + // The custom domain name associated with the workgroup. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + + // The name of the workgroup associated with the database. + 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 UpdateCustomDomainAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCustomDomainAssociationOutput) GoString() string { + return s.String() +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *UpdateCustomDomainAssociationOutput) SetCustomDomainCertificateArn(v string) *UpdateCustomDomainAssociationOutput { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainCertificateExpiryTime sets the CustomDomainCertificateExpiryTime field's value. +func (s *UpdateCustomDomainAssociationOutput) SetCustomDomainCertificateExpiryTime(v time.Time) *UpdateCustomDomainAssociationOutput { + s.CustomDomainCertificateExpiryTime = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *UpdateCustomDomainAssociationOutput) SetCustomDomainName(v string) *UpdateCustomDomainAssociationOutput { + s.CustomDomainName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *UpdateCustomDomainAssociationOutput) SetWorkgroupName(v string) *UpdateCustomDomainAssociationOutput { + s.WorkgroupName = &v + return s +} + type UpdateEndpointAccessInput struct { _ struct{} `type:"structure"` @@ -9390,9 +13185,16 @@ type UpdateNamespaceInput struct { _ struct{} `type:"structure"` + // The ID of the Key Management Service (KMS) key used to encrypt and store + // the namespace's admin credentials secret. You can only use this parameter + // if manageAdminPassword is true. + AdminPasswordSecretKmsKeyId *string `locationName:"adminPasswordSecretKmsKeyId" type:"string"` + // The password of the administrator for the first database created in the namespace. // This parameter must be updated together with adminUsername. // + // You can't use adminUserPassword if manageAdminPassword is true. + // // AdminUserPassword is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UpdateNamespaceInput's // String and GoString methods. @@ -9422,6 +13224,12 @@ // connectionlog, and useractivitylog. LogExports []*string `locationName:"logExports" type:"list" enum:"LogExport"` + // If true, Amazon Redshift uses Secrets Manager to manage the namespace's admin + // credentials. You can't use adminUserPassword if manageAdminPassword is true. + // If manageAdminPassword is false or not set, Amazon Redshift uses adminUserPassword + // for the admin user account's password. + ManageAdminPassword *bool `locationName:"manageAdminPassword" type:"boolean"` + // The name of the namespace to update. You can't update the name of a namespace // once it is created. // @@ -9463,6 +13271,12 @@ return nil } +// SetAdminPasswordSecretKmsKeyId sets the AdminPasswordSecretKmsKeyId field's value. +func (s *UpdateNamespaceInput) SetAdminPasswordSecretKmsKeyId(v string) *UpdateNamespaceInput { + s.AdminPasswordSecretKmsKeyId = &v + return s +} + // SetAdminUserPassword sets the AdminUserPassword field's value. func (s *UpdateNamespaceInput) SetAdminUserPassword(v string) *UpdateNamespaceInput { s.AdminUserPassword = &v @@ -9499,6 +13313,12 @@ return s } +// SetManageAdminPassword sets the ManageAdminPassword field's value. +func (s *UpdateNamespaceInput) SetManageAdminPassword(v bool) *UpdateNamespaceInput { + s.ManageAdminPassword = &v + return s +} + // SetNamespaceName sets the NamespaceName field's value. func (s *UpdateNamespaceInput) SetNamespaceName(v string) *UpdateNamespaceInput { s.NamespaceName = &v @@ -9538,6 +13358,262 @@ return s } +type UpdateScheduledActionInput struct { + _ struct{} `type:"structure"` + + // Specifies whether to enable the scheduled action. + Enabled *bool `locationName:"enabled" type:"boolean"` + + // The end time in UTC of the scheduled action to update. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The ARN of the IAM role to assume to run the scheduled action. This IAM role + // must have permission to run the Amazon Redshift Serverless API operation + // in the scheduled action. This IAM role must allow the Amazon Redshift scheduler + // to schedule creating snapshots (Principal scheduler.redshift.amazonaws.com) + // to assume permissions on your behalf. For more information about the IAM + // role to use with the Amazon Redshift scheduler, see Using Identity-Based + // Policies for Amazon Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) + // in the Amazon Redshift Cluster Management Guide + RoleArn *string `locationName:"roleArn" type:"string"` + + // The schedule for a one-time (at format) or recurring (cron format) scheduled + // action. Schedule invocations must be separated by at least one hour. + // + // Format of at expressions is "at(yyyy-mm-ddThh:mm:ss)". For example, "at(2016-03-04T17:27:00)". + // + // Format of cron expressions is "cron(Minutes Hours Day-of-month Month Day-of-week + // Year)". For example, "cron(0 10 ? * MON *)". For more information, see Cron + // Expressions (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) + // in the Amazon CloudWatch Events User Guide. + Schedule *Schedule `locationName:"schedule" type:"structure"` + + // The descripion of the scheduled action to update to. + ScheduledActionDescription *string `locationName:"scheduledActionDescription" type:"string"` + + // The name of the scheduled action to update to. + // + // ScheduledActionName is a required field + ScheduledActionName *string `locationName:"scheduledActionName" min:"3" type:"string" required:"true"` + + // The start time in UTC of the scheduled action to update to. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // A JSON format string of the Amazon Redshift Serverless API operation with + // input parameters. The following is an example of a target action. + // + // "{"CreateSnapshot": {"NamespaceName": "sampleNamespace","SnapshotName": "sampleSnapshot", + // "retentionPeriod": "1"}}" + TargetAction *TargetAction `locationName:"targetAction" 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 UpdateScheduledActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateScheduledActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateScheduledActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateScheduledActionInput"} + if s.ScheduledActionName == nil { + invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) + } + if s.ScheduledActionName != nil && len(*s.ScheduledActionName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ScheduledActionName", 3)) + } + if s.TargetAction != nil { + if err := s.TargetAction.Validate(); err != nil { + invalidParams.AddNested("TargetAction", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabled sets the Enabled field's value. +func (s *UpdateScheduledActionInput) SetEnabled(v bool) *UpdateScheduledActionInput { + s.Enabled = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *UpdateScheduledActionInput) SetEndTime(v time.Time) *UpdateScheduledActionInput { + s.EndTime = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateScheduledActionInput) SetRoleArn(v string) *UpdateScheduledActionInput { + s.RoleArn = &v + return s +} + +// SetSchedule sets the Schedule field's value. +func (s *UpdateScheduledActionInput) SetSchedule(v *Schedule) *UpdateScheduledActionInput { + s.Schedule = v + return s +} + +// SetScheduledActionDescription sets the ScheduledActionDescription field's value. +func (s *UpdateScheduledActionInput) SetScheduledActionDescription(v string) *UpdateScheduledActionInput { + s.ScheduledActionDescription = &v + return s +} + +// SetScheduledActionName sets the ScheduledActionName field's value. +func (s *UpdateScheduledActionInput) SetScheduledActionName(v string) *UpdateScheduledActionInput { + s.ScheduledActionName = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *UpdateScheduledActionInput) SetStartTime(v time.Time) *UpdateScheduledActionInput { + s.StartTime = &v + return s +} + +// SetTargetAction sets the TargetAction field's value. +func (s *UpdateScheduledActionInput) SetTargetAction(v *TargetAction) *UpdateScheduledActionInput { + s.TargetAction = v + return s +} + +type UpdateScheduledActionOutput struct { + _ struct{} `type:"structure"` + + // The ScheduledAction object that was updated. + ScheduledAction *ScheduledActionResponse `locationName:"scheduledAction" 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 UpdateScheduledActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateScheduledActionOutput) GoString() string { + return s.String() +} + +// SetScheduledAction sets the ScheduledAction field's value. +func (s *UpdateScheduledActionOutput) SetScheduledAction(v *ScheduledActionResponse) *UpdateScheduledActionOutput { + s.ScheduledAction = v + return s +} + +type UpdateSnapshotCopyConfigurationInput struct { + _ struct{} `type:"structure"` + + // The ID of the snapshot copy configuration to update. + // + // SnapshotCopyConfigurationId is a required field + SnapshotCopyConfigurationId *string `locationName:"snapshotCopyConfigurationId" type:"string" required:"true"` + + // The new retention period of how long to keep a snapshot in the destination + // Amazon Web Services Region. + SnapshotRetentionPeriod *int64 `locationName:"snapshotRetentionPeriod" 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 UpdateSnapshotCopyConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSnapshotCopyConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSnapshotCopyConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSnapshotCopyConfigurationInput"} + if s.SnapshotCopyConfigurationId == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotCopyConfigurationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSnapshotCopyConfigurationId sets the SnapshotCopyConfigurationId field's value. +func (s *UpdateSnapshotCopyConfigurationInput) SetSnapshotCopyConfigurationId(v string) *UpdateSnapshotCopyConfigurationInput { + s.SnapshotCopyConfigurationId = &v + return s +} + +// SetSnapshotRetentionPeriod sets the SnapshotRetentionPeriod field's value. +func (s *UpdateSnapshotCopyConfigurationInput) SetSnapshotRetentionPeriod(v int64) *UpdateSnapshotCopyConfigurationInput { + s.SnapshotRetentionPeriod = &v + return s +} + +type UpdateSnapshotCopyConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The updated snapshot copy configuration object. + // + // SnapshotCopyConfiguration is a required field + SnapshotCopyConfiguration *SnapshotCopyConfiguration `locationName:"snapshotCopyConfiguration" 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 UpdateSnapshotCopyConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSnapshotCopyConfigurationOutput) GoString() string { + return s.String() +} + +// SetSnapshotCopyConfiguration sets the SnapshotCopyConfiguration field's value. +func (s *UpdateSnapshotCopyConfigurationOutput) SetSnapshotCopyConfiguration(v *SnapshotCopyConfiguration) *UpdateSnapshotCopyConfigurationOutput { + s.SnapshotCopyConfiguration = v + return s +} + type UpdateSnapshotInput struct { _ struct{} `type:"structure"` @@ -9729,7 +13805,7 @@ BaseCapacity *int64 `locationName:"baseCapacity" type:"integer"` // An array of parameters to set for advanced control over a database. The options - // are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, + // are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, // query_group, search_path, and query monitoring metrics that let you define // performance boundaries. For more information about query monitoring rules // and available metrics, see Query monitoring metrics for Amazon Redshift Serverless @@ -9741,6 +13817,10 @@ // your VPC. EnhancedVpcRouting *bool `locationName:"enhancedVpcRouting" type:"boolean"` + // The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve + // queries. The max capacity is specified in RPUs. + MaxCapacity *int64 `locationName:"maxCapacity" type:"integer"` + // The custom port to use when connecting to a workgroup. Valid port ranges // are 5431-5455 and 8191-8215. The default is 5439. Port *int64 `locationName:"port" type:"integer"` @@ -9814,6 +13894,12 @@ return s } +// SetMaxCapacity sets the MaxCapacity field's value. +func (s *UpdateWorkgroupInput) SetMaxCapacity(v int64) *UpdateWorkgroupInput { + s.MaxCapacity = &v + return s +} + // SetPort sets the Port field's value. func (s *UpdateWorkgroupInput) SetPort(v int64) *UpdateWorkgroupInput { s.Port = &v @@ -10134,8 +14220,8 @@ BaseCapacity *int64 `locationName:"baseCapacity" type:"integer"` // An array of parameters to set for advanced control over a database. The options - // are auto_mv, datestyle, enable_case_sensitivity_identifier, enable_user_activity_logging, - // query_group, , search_path, and query monitoring metrics that let you define + // are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging, + // query_group, search_path, and query monitoring metrics that let you define // performance boundaries. For more information about query monitoring rules // and available metrics, see Query monitoring metrics for Amazon Redshift Serverless // (https://docs.aws.amazon.com/redshift/latest/dg/cm-c-wlm-query-monitoring-rules.html#cm-c-wlm-query-monitoring-metrics-serverless). @@ -10144,6 +14230,20 @@ // The creation date of the workgroup. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"iso8601"` + // A list of VPCs. Each entry is the unique identifier of a virtual private + // cloud with access to Amazon Redshift Serverless. If all of the VPCs for the + // grantee are allowed, it shows an asterisk. + CrossAccountVpcs []*string `locationName:"crossAccountVpcs" type:"list"` + + // The custom domain name’s certificate Amazon resource name (ARN). + CustomDomainCertificateArn *string `locationName:"customDomainCertificateArn" min:"20" type:"string"` + + // The expiration time for the certificate. + CustomDomainCertificateExpiryTime *time.Time `locationName:"customDomainCertificateExpiryTime" type:"timestamp" timestampFormat:"iso8601"` + + // The custom domain name associated with the workgroup. + CustomDomainName *string `locationName:"customDomainName" min:"1" type:"string"` + // The endpoint that is created from the workgroup. Endpoint *Endpoint `locationName:"endpoint" type:"structure"` @@ -10152,9 +14252,18 @@ // your VPC. EnhancedVpcRouting *bool `locationName:"enhancedVpcRouting" type:"boolean"` + // The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve + // queries. The max capacity is specified in RPUs. + MaxCapacity *int64 `locationName:"maxCapacity" type:"integer"` + // The namespace the workgroup is associated with. NamespaceName *string `locationName:"namespaceName" type:"string"` + // The patch version of your Amazon Redshift Serverless workgroup. For more + // information about patch versions, see Cluster versions for Amazon Redshift + // (https://docs.aws.amazon.com/redshift/latest/mgmt/cluster-versions.html). + PatchVersion *string `locationName:"patchVersion" type:"string"` + // The custom port to use when connecting to a workgroup. Valid port ranges // are 5431-5455 and 8191-8215. The default is 5439. Port *int64 `locationName:"port" type:"integer"` @@ -10180,6 +14289,11 @@ // The name of the workgroup. WorkgroupName *string `locationName:"workgroupName" min:"3" type:"string"` + + // The Amazon Redshift Serverless version of your workgroup. For more information + // about Amazon Redshift Serverless versions, seeCluster versions for Amazon + // Redshift (https://docs.aws.amazon.com/redshift/latest/mgmt/cluster-versions.html). + WorkgroupVersion *string `locationName:"workgroupVersion" type:"string"` } // String returns the string representation. @@ -10218,6 +14332,30 @@ return s } +// SetCrossAccountVpcs sets the CrossAccountVpcs field's value. +func (s *Workgroup) SetCrossAccountVpcs(v []*string) *Workgroup { + s.CrossAccountVpcs = v + return s +} + +// SetCustomDomainCertificateArn sets the CustomDomainCertificateArn field's value. +func (s *Workgroup) SetCustomDomainCertificateArn(v string) *Workgroup { + s.CustomDomainCertificateArn = &v + return s +} + +// SetCustomDomainCertificateExpiryTime sets the CustomDomainCertificateExpiryTime field's value. +func (s *Workgroup) SetCustomDomainCertificateExpiryTime(v time.Time) *Workgroup { + s.CustomDomainCertificateExpiryTime = &v + return s +} + +// SetCustomDomainName sets the CustomDomainName field's value. +func (s *Workgroup) SetCustomDomainName(v string) *Workgroup { + s.CustomDomainName = &v + return s +} + // SetEndpoint sets the Endpoint field's value. func (s *Workgroup) SetEndpoint(v *Endpoint) *Workgroup { s.Endpoint = v @@ -10230,12 +14368,24 @@ return s } +// SetMaxCapacity sets the MaxCapacity field's value. +func (s *Workgroup) SetMaxCapacity(v int64) *Workgroup { + s.MaxCapacity = &v + return s +} + // SetNamespaceName sets the NamespaceName field's value. func (s *Workgroup) SetNamespaceName(v string) *Workgroup { s.NamespaceName = &v return s } +// SetPatchVersion sets the PatchVersion field's value. +func (s *Workgroup) SetPatchVersion(v string) *Workgroup { + s.PatchVersion = &v + return s +} + // SetPort sets the Port field's value. func (s *Workgroup) SetPort(v int64) *Workgroup { s.Port = &v @@ -10284,6 +14434,12 @@ return s } +// SetWorkgroupVersion sets the WorkgroupVersion field's value. +func (s *Workgroup) SetWorkgroupVersion(v string) *Workgroup { + s.WorkgroupVersion = &v + return s +} + const ( // LogExportUseractivitylog is a LogExport enum value LogExportUseractivitylog = "useractivitylog" @@ -10356,6 +14512,22 @@ } } +const ( + // StateActive is a State enum value + StateActive = "ACTIVE" + + // StateDisabled is a State enum value + StateDisabled = "DISABLED" +) + +// State_Values returns all elements of the State enum +func State_Values() []string { + return []string{ + StateActive, + StateDisabled, + } +} + const ( // UsageLimitBreachActionLog is a UsageLimitBreachAction enum value UsageLimitBreachActionLog = "log" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/redshiftserverless/redshiftserverlessiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/redshiftserverless/redshiftserverlessiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/redshiftserverless/redshiftserverlessiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/redshiftserverless/redshiftserverlessiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ ConvertRecoveryPointToSnapshotWithContext(aws.Context, *redshiftserverless.ConvertRecoveryPointToSnapshotInput, ...request.Option) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error) ConvertRecoveryPointToSnapshotRequest(*redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*request.Request, *redshiftserverless.ConvertRecoveryPointToSnapshotOutput) + CreateCustomDomainAssociation(*redshiftserverless.CreateCustomDomainAssociationInput) (*redshiftserverless.CreateCustomDomainAssociationOutput, error) + CreateCustomDomainAssociationWithContext(aws.Context, *redshiftserverless.CreateCustomDomainAssociationInput, ...request.Option) (*redshiftserverless.CreateCustomDomainAssociationOutput, error) + CreateCustomDomainAssociationRequest(*redshiftserverless.CreateCustomDomainAssociationInput) (*request.Request, *redshiftserverless.CreateCustomDomainAssociationOutput) + CreateEndpointAccess(*redshiftserverless.CreateEndpointAccessInput) (*redshiftserverless.CreateEndpointAccessOutput, error) CreateEndpointAccessWithContext(aws.Context, *redshiftserverless.CreateEndpointAccessInput, ...request.Option) (*redshiftserverless.CreateEndpointAccessOutput, error) CreateEndpointAccessRequest(*redshiftserverless.CreateEndpointAccessInput) (*request.Request, *redshiftserverless.CreateEndpointAccessOutput) @@ -72,10 +76,18 @@ CreateNamespaceWithContext(aws.Context, *redshiftserverless.CreateNamespaceInput, ...request.Option) (*redshiftserverless.CreateNamespaceOutput, error) CreateNamespaceRequest(*redshiftserverless.CreateNamespaceInput) (*request.Request, *redshiftserverless.CreateNamespaceOutput) + CreateScheduledAction(*redshiftserverless.CreateScheduledActionInput) (*redshiftserverless.CreateScheduledActionOutput, error) + CreateScheduledActionWithContext(aws.Context, *redshiftserverless.CreateScheduledActionInput, ...request.Option) (*redshiftserverless.CreateScheduledActionOutput, error) + CreateScheduledActionRequest(*redshiftserverless.CreateScheduledActionInput) (*request.Request, *redshiftserverless.CreateScheduledActionOutput) + CreateSnapshot(*redshiftserverless.CreateSnapshotInput) (*redshiftserverless.CreateSnapshotOutput, error) CreateSnapshotWithContext(aws.Context, *redshiftserverless.CreateSnapshotInput, ...request.Option) (*redshiftserverless.CreateSnapshotOutput, error) CreateSnapshotRequest(*redshiftserverless.CreateSnapshotInput) (*request.Request, *redshiftserverless.CreateSnapshotOutput) + CreateSnapshotCopyConfiguration(*redshiftserverless.CreateSnapshotCopyConfigurationInput) (*redshiftserverless.CreateSnapshotCopyConfigurationOutput, error) + CreateSnapshotCopyConfigurationWithContext(aws.Context, *redshiftserverless.CreateSnapshotCopyConfigurationInput, ...request.Option) (*redshiftserverless.CreateSnapshotCopyConfigurationOutput, error) + CreateSnapshotCopyConfigurationRequest(*redshiftserverless.CreateSnapshotCopyConfigurationInput) (*request.Request, *redshiftserverless.CreateSnapshotCopyConfigurationOutput) + CreateUsageLimit(*redshiftserverless.CreateUsageLimitInput) (*redshiftserverless.CreateUsageLimitOutput, error) CreateUsageLimitWithContext(aws.Context, *redshiftserverless.CreateUsageLimitInput, ...request.Option) (*redshiftserverless.CreateUsageLimitOutput, error) CreateUsageLimitRequest(*redshiftserverless.CreateUsageLimitInput) (*request.Request, *redshiftserverless.CreateUsageLimitOutput) @@ -84,6 +96,10 @@ CreateWorkgroupWithContext(aws.Context, *redshiftserverless.CreateWorkgroupInput, ...request.Option) (*redshiftserverless.CreateWorkgroupOutput, error) CreateWorkgroupRequest(*redshiftserverless.CreateWorkgroupInput) (*request.Request, *redshiftserverless.CreateWorkgroupOutput) + DeleteCustomDomainAssociation(*redshiftserverless.DeleteCustomDomainAssociationInput) (*redshiftserverless.DeleteCustomDomainAssociationOutput, error) + DeleteCustomDomainAssociationWithContext(aws.Context, *redshiftserverless.DeleteCustomDomainAssociationInput, ...request.Option) (*redshiftserverless.DeleteCustomDomainAssociationOutput, error) + DeleteCustomDomainAssociationRequest(*redshiftserverless.DeleteCustomDomainAssociationInput) (*request.Request, *redshiftserverless.DeleteCustomDomainAssociationOutput) + DeleteEndpointAccess(*redshiftserverless.DeleteEndpointAccessInput) (*redshiftserverless.DeleteEndpointAccessOutput, error) DeleteEndpointAccessWithContext(aws.Context, *redshiftserverless.DeleteEndpointAccessInput, ...request.Option) (*redshiftserverless.DeleteEndpointAccessOutput, error) DeleteEndpointAccessRequest(*redshiftserverless.DeleteEndpointAccessInput) (*request.Request, *redshiftserverless.DeleteEndpointAccessOutput) @@ -96,10 +112,18 @@ DeleteResourcePolicyWithContext(aws.Context, *redshiftserverless.DeleteResourcePolicyInput, ...request.Option) (*redshiftserverless.DeleteResourcePolicyOutput, error) DeleteResourcePolicyRequest(*redshiftserverless.DeleteResourcePolicyInput) (*request.Request, *redshiftserverless.DeleteResourcePolicyOutput) + DeleteScheduledAction(*redshiftserverless.DeleteScheduledActionInput) (*redshiftserverless.DeleteScheduledActionOutput, error) + DeleteScheduledActionWithContext(aws.Context, *redshiftserverless.DeleteScheduledActionInput, ...request.Option) (*redshiftserverless.DeleteScheduledActionOutput, error) + DeleteScheduledActionRequest(*redshiftserverless.DeleteScheduledActionInput) (*request.Request, *redshiftserverless.DeleteScheduledActionOutput) + DeleteSnapshot(*redshiftserverless.DeleteSnapshotInput) (*redshiftserverless.DeleteSnapshotOutput, error) DeleteSnapshotWithContext(aws.Context, *redshiftserverless.DeleteSnapshotInput, ...request.Option) (*redshiftserverless.DeleteSnapshotOutput, error) DeleteSnapshotRequest(*redshiftserverless.DeleteSnapshotInput) (*request.Request, *redshiftserverless.DeleteSnapshotOutput) + DeleteSnapshotCopyConfiguration(*redshiftserverless.DeleteSnapshotCopyConfigurationInput) (*redshiftserverless.DeleteSnapshotCopyConfigurationOutput, error) + DeleteSnapshotCopyConfigurationWithContext(aws.Context, *redshiftserverless.DeleteSnapshotCopyConfigurationInput, ...request.Option) (*redshiftserverless.DeleteSnapshotCopyConfigurationOutput, error) + DeleteSnapshotCopyConfigurationRequest(*redshiftserverless.DeleteSnapshotCopyConfigurationInput) (*request.Request, *redshiftserverless.DeleteSnapshotCopyConfigurationOutput) + DeleteUsageLimit(*redshiftserverless.DeleteUsageLimitInput) (*redshiftserverless.DeleteUsageLimitOutput, error) DeleteUsageLimitWithContext(aws.Context, *redshiftserverless.DeleteUsageLimitInput, ...request.Option) (*redshiftserverless.DeleteUsageLimitOutput, error) DeleteUsageLimitRequest(*redshiftserverless.DeleteUsageLimitInput) (*request.Request, *redshiftserverless.DeleteUsageLimitOutput) @@ -112,6 +136,10 @@ GetCredentialsWithContext(aws.Context, *redshiftserverless.GetCredentialsInput, ...request.Option) (*redshiftserverless.GetCredentialsOutput, error) GetCredentialsRequest(*redshiftserverless.GetCredentialsInput) (*request.Request, *redshiftserverless.GetCredentialsOutput) + GetCustomDomainAssociation(*redshiftserverless.GetCustomDomainAssociationInput) (*redshiftserverless.GetCustomDomainAssociationOutput, error) + GetCustomDomainAssociationWithContext(aws.Context, *redshiftserverless.GetCustomDomainAssociationInput, ...request.Option) (*redshiftserverless.GetCustomDomainAssociationOutput, error) + GetCustomDomainAssociationRequest(*redshiftserverless.GetCustomDomainAssociationInput) (*request.Request, *redshiftserverless.GetCustomDomainAssociationOutput) + GetEndpointAccess(*redshiftserverless.GetEndpointAccessInput) (*redshiftserverless.GetEndpointAccessOutput, error) GetEndpointAccessWithContext(aws.Context, *redshiftserverless.GetEndpointAccessInput, ...request.Option) (*redshiftserverless.GetEndpointAccessOutput, error) GetEndpointAccessRequest(*redshiftserverless.GetEndpointAccessInput) (*request.Request, *redshiftserverless.GetEndpointAccessOutput) @@ -128,6 +156,10 @@ GetResourcePolicyWithContext(aws.Context, *redshiftserverless.GetResourcePolicyInput, ...request.Option) (*redshiftserverless.GetResourcePolicyOutput, error) GetResourcePolicyRequest(*redshiftserverless.GetResourcePolicyInput) (*request.Request, *redshiftserverless.GetResourcePolicyOutput) + GetScheduledAction(*redshiftserverless.GetScheduledActionInput) (*redshiftserverless.GetScheduledActionOutput, error) + GetScheduledActionWithContext(aws.Context, *redshiftserverless.GetScheduledActionInput, ...request.Option) (*redshiftserverless.GetScheduledActionOutput, error) + GetScheduledActionRequest(*redshiftserverless.GetScheduledActionInput) (*request.Request, *redshiftserverless.GetScheduledActionOutput) + GetSnapshot(*redshiftserverless.GetSnapshotInput) (*redshiftserverless.GetSnapshotOutput, error) GetSnapshotWithContext(aws.Context, *redshiftserverless.GetSnapshotInput, ...request.Option) (*redshiftserverless.GetSnapshotOutput, error) GetSnapshotRequest(*redshiftserverless.GetSnapshotInput) (*request.Request, *redshiftserverless.GetSnapshotOutput) @@ -144,6 +176,13 @@ GetWorkgroupWithContext(aws.Context, *redshiftserverless.GetWorkgroupInput, ...request.Option) (*redshiftserverless.GetWorkgroupOutput, error) GetWorkgroupRequest(*redshiftserverless.GetWorkgroupInput) (*request.Request, *redshiftserverless.GetWorkgroupOutput) + ListCustomDomainAssociations(*redshiftserverless.ListCustomDomainAssociationsInput) (*redshiftserverless.ListCustomDomainAssociationsOutput, error) + ListCustomDomainAssociationsWithContext(aws.Context, *redshiftserverless.ListCustomDomainAssociationsInput, ...request.Option) (*redshiftserverless.ListCustomDomainAssociationsOutput, error) + ListCustomDomainAssociationsRequest(*redshiftserverless.ListCustomDomainAssociationsInput) (*request.Request, *redshiftserverless.ListCustomDomainAssociationsOutput) + + ListCustomDomainAssociationsPages(*redshiftserverless.ListCustomDomainAssociationsInput, func(*redshiftserverless.ListCustomDomainAssociationsOutput, bool) bool) error + ListCustomDomainAssociationsPagesWithContext(aws.Context, *redshiftserverless.ListCustomDomainAssociationsInput, func(*redshiftserverless.ListCustomDomainAssociationsOutput, bool) bool, ...request.Option) error + ListEndpointAccess(*redshiftserverless.ListEndpointAccessInput) (*redshiftserverless.ListEndpointAccessOutput, error) ListEndpointAccessWithContext(aws.Context, *redshiftserverless.ListEndpointAccessInput, ...request.Option) (*redshiftserverless.ListEndpointAccessOutput, error) ListEndpointAccessRequest(*redshiftserverless.ListEndpointAccessInput) (*request.Request, *redshiftserverless.ListEndpointAccessOutput) @@ -165,6 +204,20 @@ ListRecoveryPointsPages(*redshiftserverless.ListRecoveryPointsInput, func(*redshiftserverless.ListRecoveryPointsOutput, bool) bool) error ListRecoveryPointsPagesWithContext(aws.Context, *redshiftserverless.ListRecoveryPointsInput, func(*redshiftserverless.ListRecoveryPointsOutput, bool) bool, ...request.Option) error + ListScheduledActions(*redshiftserverless.ListScheduledActionsInput) (*redshiftserverless.ListScheduledActionsOutput, error) + ListScheduledActionsWithContext(aws.Context, *redshiftserverless.ListScheduledActionsInput, ...request.Option) (*redshiftserverless.ListScheduledActionsOutput, error) + ListScheduledActionsRequest(*redshiftserverless.ListScheduledActionsInput) (*request.Request, *redshiftserverless.ListScheduledActionsOutput) + + ListScheduledActionsPages(*redshiftserverless.ListScheduledActionsInput, func(*redshiftserverless.ListScheduledActionsOutput, bool) bool) error + ListScheduledActionsPagesWithContext(aws.Context, *redshiftserverless.ListScheduledActionsInput, func(*redshiftserverless.ListScheduledActionsOutput, bool) bool, ...request.Option) error + + ListSnapshotCopyConfigurations(*redshiftserverless.ListSnapshotCopyConfigurationsInput) (*redshiftserverless.ListSnapshotCopyConfigurationsOutput, error) + ListSnapshotCopyConfigurationsWithContext(aws.Context, *redshiftserverless.ListSnapshotCopyConfigurationsInput, ...request.Option) (*redshiftserverless.ListSnapshotCopyConfigurationsOutput, error) + ListSnapshotCopyConfigurationsRequest(*redshiftserverless.ListSnapshotCopyConfigurationsInput) (*request.Request, *redshiftserverless.ListSnapshotCopyConfigurationsOutput) + + ListSnapshotCopyConfigurationsPages(*redshiftserverless.ListSnapshotCopyConfigurationsInput, func(*redshiftserverless.ListSnapshotCopyConfigurationsOutput, bool) bool) error + ListSnapshotCopyConfigurationsPagesWithContext(aws.Context, *redshiftserverless.ListSnapshotCopyConfigurationsInput, func(*redshiftserverless.ListSnapshotCopyConfigurationsOutput, 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) @@ -209,6 +262,10 @@ RestoreFromSnapshotWithContext(aws.Context, *redshiftserverless.RestoreFromSnapshotInput, ...request.Option) (*redshiftserverless.RestoreFromSnapshotOutput, error) RestoreFromSnapshotRequest(*redshiftserverless.RestoreFromSnapshotInput) (*request.Request, *redshiftserverless.RestoreFromSnapshotOutput) + RestoreTableFromRecoveryPoint(*redshiftserverless.RestoreTableFromRecoveryPointInput) (*redshiftserverless.RestoreTableFromRecoveryPointOutput, error) + RestoreTableFromRecoveryPointWithContext(aws.Context, *redshiftserverless.RestoreTableFromRecoveryPointInput, ...request.Option) (*redshiftserverless.RestoreTableFromRecoveryPointOutput, error) + RestoreTableFromRecoveryPointRequest(*redshiftserverless.RestoreTableFromRecoveryPointInput) (*request.Request, *redshiftserverless.RestoreTableFromRecoveryPointOutput) + RestoreTableFromSnapshot(*redshiftserverless.RestoreTableFromSnapshotInput) (*redshiftserverless.RestoreTableFromSnapshotOutput, error) RestoreTableFromSnapshotWithContext(aws.Context, *redshiftserverless.RestoreTableFromSnapshotInput, ...request.Option) (*redshiftserverless.RestoreTableFromSnapshotOutput, error) RestoreTableFromSnapshotRequest(*redshiftserverless.RestoreTableFromSnapshotInput) (*request.Request, *redshiftserverless.RestoreTableFromSnapshotOutput) @@ -221,6 +278,10 @@ UntagResourceWithContext(aws.Context, *redshiftserverless.UntagResourceInput, ...request.Option) (*redshiftserverless.UntagResourceOutput, error) UntagResourceRequest(*redshiftserverless.UntagResourceInput) (*request.Request, *redshiftserverless.UntagResourceOutput) + UpdateCustomDomainAssociation(*redshiftserverless.UpdateCustomDomainAssociationInput) (*redshiftserverless.UpdateCustomDomainAssociationOutput, error) + UpdateCustomDomainAssociationWithContext(aws.Context, *redshiftserverless.UpdateCustomDomainAssociationInput, ...request.Option) (*redshiftserverless.UpdateCustomDomainAssociationOutput, error) + UpdateCustomDomainAssociationRequest(*redshiftserverless.UpdateCustomDomainAssociationInput) (*request.Request, *redshiftserverless.UpdateCustomDomainAssociationOutput) + UpdateEndpointAccess(*redshiftserverless.UpdateEndpointAccessInput) (*redshiftserverless.UpdateEndpointAccessOutput, error) UpdateEndpointAccessWithContext(aws.Context, *redshiftserverless.UpdateEndpointAccessInput, ...request.Option) (*redshiftserverless.UpdateEndpointAccessOutput, error) UpdateEndpointAccessRequest(*redshiftserverless.UpdateEndpointAccessInput) (*request.Request, *redshiftserverless.UpdateEndpointAccessOutput) @@ -229,10 +290,18 @@ UpdateNamespaceWithContext(aws.Context, *redshiftserverless.UpdateNamespaceInput, ...request.Option) (*redshiftserverless.UpdateNamespaceOutput, error) UpdateNamespaceRequest(*redshiftserverless.UpdateNamespaceInput) (*request.Request, *redshiftserverless.UpdateNamespaceOutput) + UpdateScheduledAction(*redshiftserverless.UpdateScheduledActionInput) (*redshiftserverless.UpdateScheduledActionOutput, error) + UpdateScheduledActionWithContext(aws.Context, *redshiftserverless.UpdateScheduledActionInput, ...request.Option) (*redshiftserverless.UpdateScheduledActionOutput, error) + UpdateScheduledActionRequest(*redshiftserverless.UpdateScheduledActionInput) (*request.Request, *redshiftserverless.UpdateScheduledActionOutput) + UpdateSnapshot(*redshiftserverless.UpdateSnapshotInput) (*redshiftserverless.UpdateSnapshotOutput, error) UpdateSnapshotWithContext(aws.Context, *redshiftserverless.UpdateSnapshotInput, ...request.Option) (*redshiftserverless.UpdateSnapshotOutput, error) UpdateSnapshotRequest(*redshiftserverless.UpdateSnapshotInput) (*request.Request, *redshiftserverless.UpdateSnapshotOutput) + UpdateSnapshotCopyConfiguration(*redshiftserverless.UpdateSnapshotCopyConfigurationInput) (*redshiftserverless.UpdateSnapshotCopyConfigurationOutput, error) + UpdateSnapshotCopyConfigurationWithContext(aws.Context, *redshiftserverless.UpdateSnapshotCopyConfigurationInput, ...request.Option) (*redshiftserverless.UpdateSnapshotCopyConfigurationOutput, error) + UpdateSnapshotCopyConfigurationRequest(*redshiftserverless.UpdateSnapshotCopyConfigurationInput) (*request.Request, *redshiftserverless.UpdateSnapshotCopyConfigurationOutput) + UpdateUsageLimit(*redshiftserverless.UpdateUsageLimitInput) (*redshiftserverless.UpdateUsageLimitOutput, error) UpdateUsageLimitWithContext(aws.Context, *redshiftserverless.UpdateUsageLimitInput, ...request.Option) (*redshiftserverless.UpdateUsageLimitOutput, error) UpdateUsageLimitRequest(*redshiftserverless.UpdateUsageLimitInput) (*request.Request, *redshiftserverless.UpdateUsageLimitOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/api.go golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -347,6 +347,8 @@ // CopyProjectVersion API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Copies a version of an Amazon Rekognition Custom Labels model from a source // project to a destination project. The source and destination projects can // be in different AWS accounts but must be in the same AWS Region. You can't @@ -365,6 +367,8 @@ // If you are copying a model version to a project in the same AWS account, // you don't need to create a project policy. // +// Copying project versions is supported only for Custom Labels models. +// // To copy a model, the destination project, source project, and source model // version must already exist. // @@ -396,10 +400,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ResourceNotFoundException // The resource specified in the request cannot be found. @@ -594,6 +598,8 @@ // CreateDataset API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Creates a new Amazon Rekognition Custom Labels dataset. You can create a // dataset by using an Amazon Sagemaker format manifest file or by copying an // existing Amazon Rekognition Custom Labels dataset. @@ -649,10 +655,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - InvalidS3ObjectException // Amazon Rekognition is unable to access the S3 object specified in the request. @@ -825,12 +831,13 @@ // CreateProject API operation for Amazon Rekognition. // -// Creates a new Amazon Rekognition Custom Labels project. A project is a group -// of resources (datasets, model versions) that you use to create and manage -// Amazon Rekognition Custom Labels models. -// -// This operation requires permissions to perform the rekognition:CreateProject -// action. +// Creates a new Amazon Rekognition project. A project is a group of resources +// (datasets, model versions) that you use to create and manage a Amazon Rekognition +// Custom Labels Model or custom adapter. You can specify a feature to create +// the project with, if no feature is specified then Custom Labels is used by +// default. For adapters, you can also choose whether or not to have the project +// auto update by using the AutoUpdate argument. This operation requires permissions +// to perform the rekognition:CreateProject action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -846,10 +853,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - InvalidParameterException // Input parameter violated a constraint. Validate your parameter before calling @@ -930,14 +937,24 @@ // CreateProjectVersion API operation for Amazon Rekognition. // -// Creates a new version of a model and begins training. Models are managed -// as part of an Amazon Rekognition Custom Labels project. The response from -// CreateProjectVersion is an Amazon Resource Name (ARN) for the version of -// the model. +// Creates a new version of Amazon Rekognition project (like a Custom Labels +// model or a custom adapter) and begins training. Models and adapters are managed +// as part of a Rekognition project. The response from CreateProjectVersion +// is an Amazon Resource Name (ARN) for the project version. +// +// The FeatureConfig operation argument allows you to configure specific model +// or adapter settings. You can provide a description to the project version +// by using the VersionDescription argment. Training can take a while to complete. +// You can get the current status by calling DescribeProjectVersions. Training +// completed successfully if the value of the Status field is TRAINING_COMPLETED. +// Once training has successfully completed, call DescribeProjectVersions to +// get the training results and evaluate the model. // -// Training uses the training and test datasets associated with the project. -// For more information, see Creating training and test dataset in the Amazon -// Rekognition Custom Labels Developer Guide. +// This operation requires permissions to perform the rekognition:CreateProjectVersion +// action. +// +// The following applies only to projects with Amazon Rekognition Custom Labels +// as the chosen feature: // // You can train a model in a project that doesn't have associated datasets // by specifying manifest files in the TrainingData and TestingData fields. @@ -951,23 +968,6 @@ // that you use the manifest files to create training and test datasets for // the project. // -// Training takes a while to complete. You can get the current status by calling -// DescribeProjectVersions. Training completed successfully if the value of -// the Status field is TRAINING_COMPLETED. -// -// If training fails, see Debugging a failed model training in the Amazon Rekognition -// Custom Labels developer guide. -// -// Once training has successfully completed, call DescribeProjectVersions to -// get the training results and evaluate the model. For more information, see -// Improving a trained Amazon Rekognition Custom Labels model in the Amazon -// Rekognition Custom Labels developers guide. -// -// After evaluating the model, you start the model by calling StartProjectVersion. -// -// This operation requires permissions to perform the rekognition:CreateProjectVersion -// action. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -985,10 +985,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - InvalidParameterException // Input parameter violated a constraint. Validate your parameter before calling @@ -1132,10 +1132,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ResourceInUseException // The specified resource is already being used. @@ -1424,6 +1424,8 @@ // DeleteDataset API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Deletes an existing Amazon Rekognition Custom Labels dataset. Deleting a // dataset might take while. Use DescribeDataset to check the current status. // The dataset is still deleting if the value of Status is DELETE_IN_PROGRESS. @@ -1465,10 +1467,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ResourceInUseException // The specified resource is already being used. @@ -1634,9 +1636,9 @@ // DeleteProject API operation for Amazon Rekognition. // -// Deletes an Amazon Rekognition Custom Labels project. To delete a project -// you must first delete all models associated with the project. To delete a -// model, see DeleteProjectVersion. +// Deletes a Amazon Rekognition project. To delete a project you must first +// delete all models or adapters associated with the project. To delete a model +// or adapter, see DeleteProjectVersion. // // DeleteProject is an asynchronous operation. To check if the project is deleted, // call DescribeProjects. The project is deleted when the project no longer @@ -1741,6 +1743,8 @@ // DeleteProjectPolicy API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Deletes an existing project policy. // // To get a list of project policies attached to a project, call ListProjectPolicies. @@ -1843,12 +1847,13 @@ // DeleteProjectVersion API operation for Amazon Rekognition. // -// Deletes an Amazon Rekognition Custom Labels model. +// Deletes a Rekognition project model or project version, like a Amazon Rekognition +// Custom Labels model or a custom adapter. // -// You can't delete a model if it is running or if it is training. To check -// the status of a model, use the Status field returned from DescribeProjectVersions. -// To stop a running model call StopProjectVersion. If the model is training, -// wait until it finishes. +// You can't delete a project version if it is running or if it is training. +// To check the status of a project version, use the Status field returned from +// DescribeProjectVersions. To stop a project version call StopProjectVersion. +// If the project version is training, wait until it finishes. // // This operation requires permissions to perform the rekognition:DeleteProjectVersion // action. @@ -2252,6 +2257,8 @@ // DescribeDataset API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Describes an Amazon Rekognition Custom Labels dataset. You can get information // such as the current status of a dataset and statistics about the images and // labels in a dataset. @@ -2356,9 +2363,9 @@ // DescribeProjectVersions API operation for Amazon Rekognition. // -// Lists and describes the versions of a model in an Amazon Rekognition Custom -// Labels project. You can specify up to 10 model versions in ProjectVersionArns. -// If you don't specify a value, descriptions for all model versions in the +// Lists and describes the versions of an Amazon Rekognition project. You can +// specify up to 10 model or adapter versions in ProjectVersionArns. If you +// don't specify a value, descriptions for all model/adapter versions in the // project are returned. // // This operation requires permissions to perform the rekognition:DescribeProjectVersions @@ -2515,7 +2522,7 @@ // DescribeProjects API operation for Amazon Rekognition. // -// Gets information about your Amazon Rekognition Custom Labels projects. +// Gets information about your Rekognition projects. // // This operation requires permissions to perform the rekognition:DescribeProjects // action. @@ -2758,6 +2765,8 @@ // DetectCustomLabels API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Detects custom labels in a supplied image by using an Amazon Rekognition // Custom Labels model. // @@ -2830,10 +2839,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - AccessDeniedException // You are not authorized to perform the action. @@ -3261,6 +3270,9 @@ // Rekognition operations, passing image bytes is not supported. The image must // be either a PNG or JPEG formatted file. // +// You can specify an adapter to use when retrieving label predictions by providing +// a ProjectVersionArn to the ProjectVersion argument. +// // 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. @@ -3303,6 +3315,13 @@ // - HumanLoopQuotaExceededException // The number of in-progress human reviews you have has exceeded the number // allowed. +// +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - ResourceNotReadyException +// The requested resource isn't ready. For example, this exception occurs when +// you call DetectCustomLabels with a model version that isn't deployed. func (c *Rekognition) DetectModerationLabels(input *DetectModerationLabelsInput) (*DetectModerationLabelsOutput, error) { req, out := c.DetectModerationLabelsRequest(input) return out, req.Send() @@ -3746,6 +3765,8 @@ // DistributeDatasetEntries API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Distributes the entries (images) in a training dataset across the training // dataset and the test dataset for a project. DistributeDatasetEntries moves // 20% of the training dataset images to the test dataset. An entry is a JSON @@ -4987,6 +5008,100 @@ return p.Err() } +const opGetMediaAnalysisJob = "GetMediaAnalysisJob" + +// GetMediaAnalysisJobRequest generates a "aws/request.Request" representing the +// client's request for the GetMediaAnalysisJob 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 GetMediaAnalysisJob for more information on using the GetMediaAnalysisJob +// 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 GetMediaAnalysisJobRequest method. +// req, resp := client.GetMediaAnalysisJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) GetMediaAnalysisJobRequest(input *GetMediaAnalysisJobInput) (req *request.Request, output *GetMediaAnalysisJobOutput) { + op := &request.Operation{ + Name: opGetMediaAnalysisJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetMediaAnalysisJobInput{} + } + + output = &GetMediaAnalysisJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetMediaAnalysisJob API operation for Amazon Rekognition. +// +// Retrieves the results for a given media analysis job. Takes a JobId returned +// by StartMediaAnalysisJob. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation GetMediaAnalysisJob for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +func (c *Rekognition) GetMediaAnalysisJob(input *GetMediaAnalysisJobInput) (*GetMediaAnalysisJobOutput, error) { + req, out := c.GetMediaAnalysisJobRequest(input) + return out, req.Send() +} + +// GetMediaAnalysisJobWithContext is the same as GetMediaAnalysisJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetMediaAnalysisJob 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 *Rekognition) GetMediaAnalysisJobWithContext(ctx aws.Context, input *GetMediaAnalysisJobInput, opts ...request.Option) (*GetMediaAnalysisJobOutput, error) { + req, out := c.GetMediaAnalysisJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetPersonTracking = "GetPersonTracking" // GetPersonTrackingRequest generates a "aws/request.Request" representing the @@ -5948,6 +6063,8 @@ // ListDatasetEntries API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Lists the entries (images) within a dataset. An entry is a JSON Line that // contains the information for a single image, including the image location, // assigned labels, and object location bounding boxes. For more information, @@ -6123,6 +6240,8 @@ // ListDatasetLabels API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels // to describe images. For more information, see Labeling images (https://docs.aws.amazon.com/rekognition/latest/customlabels-dg/md-labeling-images.html). // @@ -6400,6 +6519,157 @@ return p.Err() } +const opListMediaAnalysisJobs = "ListMediaAnalysisJobs" + +// ListMediaAnalysisJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListMediaAnalysisJobs 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 ListMediaAnalysisJobs for more information on using the ListMediaAnalysisJobs +// 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 ListMediaAnalysisJobsRequest method. +// req, resp := client.ListMediaAnalysisJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) ListMediaAnalysisJobsRequest(input *ListMediaAnalysisJobsInput) (req *request.Request, output *ListMediaAnalysisJobsOutput) { + op := &request.Operation{ + Name: opListMediaAnalysisJobs, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMediaAnalysisJobsInput{} + } + + output = &ListMediaAnalysisJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMediaAnalysisJobs API operation for Amazon Rekognition. +// +// Returns a list of media analysis jobs. Results are sorted by CreationTimestamp +// in descending order. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation ListMediaAnalysisJobs for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - InvalidPaginationTokenException +// Pagination token in the request is not valid. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +func (c *Rekognition) ListMediaAnalysisJobs(input *ListMediaAnalysisJobsInput) (*ListMediaAnalysisJobsOutput, error) { + req, out := c.ListMediaAnalysisJobsRequest(input) + return out, req.Send() +} + +// ListMediaAnalysisJobsWithContext is the same as ListMediaAnalysisJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListMediaAnalysisJobs 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 *Rekognition) ListMediaAnalysisJobsWithContext(ctx aws.Context, input *ListMediaAnalysisJobsInput, opts ...request.Option) (*ListMediaAnalysisJobsOutput, error) { + req, out := c.ListMediaAnalysisJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMediaAnalysisJobsPages iterates over the pages of a ListMediaAnalysisJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMediaAnalysisJobs 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 ListMediaAnalysisJobs operation. +// pageNum := 0 +// err := client.ListMediaAnalysisJobsPages(params, +// func(page *rekognition.ListMediaAnalysisJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Rekognition) ListMediaAnalysisJobsPages(input *ListMediaAnalysisJobsInput, fn func(*ListMediaAnalysisJobsOutput, bool) bool) error { + return c.ListMediaAnalysisJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMediaAnalysisJobsPagesWithContext same as ListMediaAnalysisJobsPages 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 *Rekognition) ListMediaAnalysisJobsPagesWithContext(ctx aws.Context, input *ListMediaAnalysisJobsInput, fn func(*ListMediaAnalysisJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMediaAnalysisJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMediaAnalysisJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMediaAnalysisJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListProjectPolicies = "ListProjectPolicies" // ListProjectPoliciesRequest generates a "aws/request.Request" representing the @@ -6447,6 +6717,8 @@ // ListProjectPolicies API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Gets a list of the project policies attached to a project. // // To attach a project policy to a project, call PutProjectPolicy. To remove @@ -7004,11 +7276,13 @@ // PutProjectPolicy API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Attaches a project policy to a Amazon Rekognition Custom Labels project in // a trusting AWS account. A project policy specifies that a trusted AWS account // can copy a model version from a trusting AWS account to a project in the // trusted AWS account. To copy a model version you use the CopyProjectVersion -// operation. +// operation. Only applies to Custom Labels projects. // // For more information about the format of a project policy document, see Attaching // a project policy (SDK) in the Amazon Rekognition Custom Labels Developer @@ -7074,10 +7348,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. func (c *Rekognition) PutProjectPolicy(input *PutProjectPolicyInput) (*PutProjectPolicyOutput, error) { req, out := c.PutProjectPolicyRequest(input) return out, req.Send() @@ -7798,10 +8072,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -7923,10 +8197,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -8045,10 +8319,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -8166,10 +8440,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ResourceNotFoundException // The resource specified in the request cannot be found. @@ -8308,10 +8582,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -8337,6 +8611,124 @@ return out, req.Send() } +const opStartMediaAnalysisJob = "StartMediaAnalysisJob" + +// StartMediaAnalysisJobRequest generates a "aws/request.Request" representing the +// client's request for the StartMediaAnalysisJob 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 StartMediaAnalysisJob for more information on using the StartMediaAnalysisJob +// 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 StartMediaAnalysisJobRequest method. +// req, resp := client.StartMediaAnalysisJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) StartMediaAnalysisJobRequest(input *StartMediaAnalysisJobInput) (req *request.Request, output *StartMediaAnalysisJobOutput) { + op := &request.Operation{ + Name: opStartMediaAnalysisJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartMediaAnalysisJobInput{} + } + + output = &StartMediaAnalysisJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartMediaAnalysisJob API operation for Amazon Rekognition. +// +// Initiates a new media analysis job. Accepts a manifest file in an Amazon +// S3 bucket. The output is a manifest file and a summary of the manifest stored +// in the Amazon S3 bucket. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation StartMediaAnalysisJob for usage and error information. +// +// Returned Error Types: +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - InvalidManifestException +// Indicates that a provided manifest file is empty or larger than the allowed +// limit. +// +// - InvalidS3ObjectException +// Amazon Rekognition is unable to access the S3 object specified in the request. +// +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - ResourceNotReadyException +// The requested resource isn't ready. For example, this exception occurs when +// you call DetectCustomLabels with a model version that isn't deployed. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +// +// - LimitExceededException +// An Amazon Rekognition service limit was exceeded. For example, if you start +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +// +// - IdempotentParameterMismatchException +// A ClientRequestToken input parameter was reused with an operation, but at +// least one of the other input parameters is different from the previous call +// to the operation. +func (c *Rekognition) StartMediaAnalysisJob(input *StartMediaAnalysisJobInput) (*StartMediaAnalysisJobOutput, error) { + req, out := c.StartMediaAnalysisJobRequest(input) + return out, req.Send() +} + +// StartMediaAnalysisJobWithContext is the same as StartMediaAnalysisJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartMediaAnalysisJob 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 *Rekognition) StartMediaAnalysisJobWithContext(ctx aws.Context, input *StartMediaAnalysisJobInput, opts ...request.Option) (*StartMediaAnalysisJobOutput, error) { + req, out := c.StartMediaAnalysisJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartPersonTracking = "StartPersonTracking" // StartPersonTrackingRequest generates a "aws/request.Request" representing the @@ -8429,10 +8821,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -8499,6 +8891,8 @@ // StartProjectVersion API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Starts the running of the version of a model. Starting a model takes a while // to complete. To check the current state of the model, use DescribeProjectVersions. // @@ -8508,9 +8902,6 @@ // You are charged for the amount of time that the model is running. To stop // a running model, call StopProjectVersion. // -// For more information, see Running a trained Amazon Rekognition Custom Labels -// model in the Amazon Rekognition Custom Labels Guide. -// // This operation requires permissions to perform the rekognition:StartProjectVersion // action. // @@ -8531,10 +8922,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - InvalidParameterException // Input parameter violated a constraint. Validate your parameter before calling @@ -8675,10 +9066,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -8898,10 +9289,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ThrottlingException // Amazon Rekognition is temporarily unable to process the request. Try your @@ -8968,8 +9359,11 @@ // StopProjectVersion API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Stops a running model. The operation might take a while to complete. To check -// the current status, call DescribeProjectVersions. +// the current status, call DescribeProjectVersions. Only applies to Custom +// Labels projects. // // This operation requires permissions to perform the rekognition:StopProjectVersion // action. @@ -9368,6 +9762,8 @@ // UpdateDatasetEntries API operation for Amazon Rekognition. // +// This operation applies only to Amazon Rekognition Custom Labels. +// // Adds or updates one or more entries (images) in a dataset. An entry is a // JSON Line which contains the information for a single image, including the // image location, assigned labels, and object location bounding boxes. For @@ -9425,10 +9821,10 @@ // // - LimitExceededException // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. // // - ResourceInUseException // The specified resource is already being used. @@ -11732,6 +12128,15 @@ type CreateProjectInput struct { _ struct{} `type:"structure"` + // Specifies whether automatic retraining should be attempted for the versions + // of the project. Automatic retraining is done as a best effort. Required argument + // for Content Moderation. Applicable only to adapters. + AutoUpdate *string `type:"string" enum:"ProjectAutoUpdate"` + + // Specifies feature that is being customized. If no value is provided CUSTOM_LABELS + // is used as a default. + Feature *string `type:"string" enum:"CustomizationFeature"` + // The name of the project to create. // // ProjectName is a required field @@ -11772,6 +12177,18 @@ return nil } +// SetAutoUpdate sets the AutoUpdate field's value. +func (s *CreateProjectInput) SetAutoUpdate(v string) *CreateProjectInput { + s.AutoUpdate = &v + return s +} + +// SetFeature sets the Feature field's value. +func (s *CreateProjectInput) SetFeature(v string) *CreateProjectInput { + s.Feature = &v + return s +} + // SetProjectName sets the ProjectName field's value. func (s *CreateProjectInput) SetProjectName(v string) *CreateProjectInput { s.ProjectName = &v @@ -11813,12 +12230,18 @@ type CreateProjectVersionInput struct { _ struct{} `type:"structure"` + // Feature-specific configuration of the training job. If the job configuration + // does not match the feature type associated with the project, an InvalidParameterException + // is returned. + FeatureConfig *CustomizationFeatureConfig `type:"structure"` + // The identifier for your AWS Key Management Service key (AWS KMS key). You // can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your // KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt - // training and test images copied into the service for model training. Your - // source images are unaffected. The key is also used to encrypt training results - // and manifest files written to the output Amazon S3 bucket (OutputConfig). + // training images, test images, and manifest files copied into the service + // for the project version. Your source images are unaffected. The key is also + // used to encrypt training results and manifest files written to the output + // Amazon S3 bucket (OutputConfig). // // If you choose to use your own KMS key, you need the following permissions // on the KMS key. @@ -11835,33 +12258,36 @@ // are encrypted using a key that AWS owns and manages. KmsKeyId *string `min:"1" type:"string"` - // The Amazon S3 bucket location to store the results of training. The S3 bucket - // can be in any AWS account as long as the caller has s3:PutObject permissions - // on the S3 bucket. + // The Amazon S3 bucket location to store the results of training. The bucket + // can be any S3 bucket in your AWS account. You need s3:PutObject permission + // on the bucket. // // OutputConfig is a required field OutputConfig *OutputConfig `type:"structure" required:"true"` - // The ARN of the Amazon Rekognition Custom Labels project that manages the - // model that you want to train. + // The ARN of the Amazon Rekognition project that will manage the project version + // you want to train. // // ProjectArn is a required field ProjectArn *string `min:"20" type:"string" required:"true"` - // A set of tags (key-value pairs) that you want to attach to the model. + // A set of tags (key-value pairs) that you want to attach to the project version. Tags map[string]*string `type:"map"` - // Specifies an external manifest that the service uses to test the model. If - // you specify TestingData you must also specify TrainingData. The project must - // not have any associated datasets. + // Specifies an external manifest that the service uses to test the project + // version. If you specify TestingData you must also specify TrainingData. The + // project must not have any associated datasets. TestingData *TestingData `type:"structure"` - // Specifies an external manifest that the services uses to train the model. - // If you specify TrainingData you must also specify TestingData. The project - // must not have any associated datasets. + // Specifies an external manifest that the services uses to train the project + // version. If you specify TrainingData you must also specify TestingData. The + // project must not have any associated datasets. TrainingData *TrainingData `type:"structure"` - // A name for the version of the model. This value must be unique. + // A description applied to the project version being created. + VersionDescription *string `min:"1" type:"string"` + + // A name for the version of the project version. This value must be unique. // // VersionName is a required field VersionName *string `min:"1" type:"string" required:"true"` @@ -11900,6 +12326,9 @@ if s.ProjectArn != nil && len(*s.ProjectArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 20)) } + if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + } if s.VersionName == nil { invalidParams.Add(request.NewErrParamRequired("VersionName")) } @@ -11928,6 +12357,12 @@ return nil } +// SetFeatureConfig sets the FeatureConfig field's value. +func (s *CreateProjectVersionInput) SetFeatureConfig(v *CustomizationFeatureConfig) *CreateProjectVersionInput { + s.FeatureConfig = v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *CreateProjectVersionInput) SetKmsKeyId(v string) *CreateProjectVersionInput { s.KmsKeyId = &v @@ -11964,6 +12399,12 @@ return s } +// SetVersionDescription sets the VersionDescription field's value. +func (s *CreateProjectVersionInput) SetVersionDescription(v string) *CreateProjectVersionInput { + s.VersionDescription = &v + return s +} + // SetVersionName sets the VersionName field's value. func (s *CreateProjectVersionInput) SetVersionName(v string) *CreateProjectVersionInput { s.VersionName = &v @@ -11973,7 +12414,7 @@ type CreateProjectVersionOutput struct { _ struct{} `type:"structure"` - // The ARN of the model version that was created. Use DescribeProjectVersion + // The ARN of the model or the project version that was created. Use DescribeProjectVersion // to get the current status of the training operation. ProjectVersionArn *string `min:"20" type:"string"` } @@ -12402,6 +12843,74 @@ return s } +// Feature specific configuration for the training job. Configuration provided +// for the job must match the feature type parameter associated with project. +// If configuration and feature type do not match an InvalidParameterException +// is returned. +type CustomizationFeatureConfig struct { + _ struct{} `type:"structure"` + + // Configuration options for Custom Moderation training. + ContentModeration *CustomizationFeatureContentModerationConfig `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 CustomizationFeatureConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomizationFeatureConfig) GoString() string { + return s.String() +} + +// SetContentModeration sets the ContentModeration field's value. +func (s *CustomizationFeatureConfig) SetContentModeration(v *CustomizationFeatureContentModerationConfig) *CustomizationFeatureConfig { + s.ContentModeration = v + return s +} + +// Configuration options for Content Moderation training. +type CustomizationFeatureContentModerationConfig struct { + _ struct{} `type:"structure"` + + // The confidence level you plan to use to identify if unsafe content is present + // during inference. + ConfidenceThreshold *float64 `type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomizationFeatureContentModerationConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomizationFeatureContentModerationConfig) GoString() string { + return s.String() +} + +// SetConfidenceThreshold sets the ConfidenceThreshold field's value. +func (s *CustomizationFeatureContentModerationConfig) SetConfidenceThreshold(v float64) *CustomizationFeatureContentModerationConfig { + s.ConfidenceThreshold = &v + return s +} + // Describes updates or additions to a dataset. A Single update or addition // is an entry (JSON Line) that provides information about a single image. To // update an existing entry, you match the source-ref field of the update entry @@ -13277,7 +13786,7 @@ type DeleteProjectVersionInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the model version that you want to delete. + // The Amazon Resource Name (ARN) of the project version that you want to delete. // // ProjectVersionArn is a required field ProjectVersionArn *string `min:"20" type:"string" required:"true"` @@ -13739,22 +14248,21 @@ MaxResults *int64 `min:"1" type:"integer"` // If the previous response was incomplete (because there is more results to - // retrieve), Amazon Rekognition Custom Labels returns a pagination token in - // the response. You can use this pagination token to retrieve the next set - // of results. + // retrieve), Amazon Rekognition returns a pagination token in the response. + // You can use this pagination token to retrieve the next set of results. NextToken *string `type:"string"` - // The Amazon Resource Name (ARN) of the project that contains the models you - // want to describe. + // The Amazon Resource Name (ARN) of the project that contains the model/adapter + // you want to describe. // // ProjectArn is a required field ProjectArn *string `min:"20" type:"string" required:"true"` - // A list of model version names that you want to describe. You can add up to - // 10 model version names to the list. If you don't specify a value, all model - // descriptions are returned. A version name is part of a model (ProjectVersion) - // ARN. For example, my-model.2020-01-21T09.10.15 is the version name in the - // following ARN. arn:aws:rekognition:us-east-1:123456789012:project/getting-started/version/my-model.2020-01-21T09.10.15/1234567890123. + // A list of model or project version names that you want to describe. You can + // add up to 10 model or project version names to the list. If you don't specify + // a value, all project version descriptions are returned. A version name is + // part of a project version ARN. For example, my-model.2020-01-21T09.10.15 + // is the version name in the following ARN. arn:aws:rekognition:us-east-1:123456789012:project/getting-started/version/my-model.2020-01-21T09.10.15/1234567890123. VersionNames []*string `min:"1" type:"list"` } @@ -13826,13 +14334,12 @@ _ struct{} `type:"structure"` // If the previous response was incomplete (because there is more results to - // retrieve), Amazon Rekognition Custom Labels returns a pagination token in - // the response. You can use this pagination token to retrieve the next set - // of results. + // retrieve), Amazon Rekognition returns a pagination token in the response. + // You can use this pagination token to retrieve the next set of results. NextToken *string `type:"string"` - // A list of model descriptions. The list is sorted by the creation date and - // time of the model versions, latest to earliest. + // A list of project version descriptions. The list is sorted by the creation + // date and time of the project versions, latest to earliest. ProjectVersionDescriptions []*ProjectVersionDescription `type:"list"` } @@ -13869,20 +14376,23 @@ type DescribeProjectsInput struct { _ struct{} `type:"structure"` + // Specifies the type of customization to filter projects by. If no value is + // specified, CUSTOM_LABELS is used as a default. + Features []*string `min:"1" type:"list" enum:"CustomizationFeature"` + // The maximum number of results to return per paginated call. The largest value // you can specify is 100. If you specify a value greater than 100, a ValidationException // error occurs. The default value is 100. MaxResults *int64 `min:"1" type:"integer"` // If the previous response was incomplete (because there is more results to - // retrieve), Amazon Rekognition Custom Labels returns a pagination token in - // the response. You can use this pagination token to retrieve the next set - // of results. + // retrieve), Rekognition returns a pagination token in the response. You can + // use this pagination token to retrieve the next set of results. NextToken *string `type:"string"` - // A list of the projects that you want Amazon Rekognition Custom Labels to - // describe. If you don't specify a value, the response includes descriptions - // for all the projects in your AWS account. + // A list of the projects that you want Rekognition to describe. If you don't + // specify a value, the response includes descriptions for all the projects + // in your AWS account. ProjectNames []*string `min:"1" type:"list"` } @@ -13907,6 +14417,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProjectsInput"} + if s.Features != nil && len(s.Features) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Features", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -13920,6 +14433,12 @@ return nil } +// SetFeatures sets the Features field's value. +func (s *DescribeProjectsInput) SetFeatures(v []*string) *DescribeProjectsInput { + s.Features = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *DescribeProjectsInput) SetMaxResults(v int64) *DescribeProjectsInput { s.MaxResults = &v @@ -13942,9 +14461,8 @@ _ struct{} `type:"structure"` // If the previous response was incomplete (because there is more results to - // retrieve), Amazon Rekognition Custom Labels returns a pagination token in - // the response. You can use this pagination token to retrieve the next set - // of results. + // retrieve), Amazon Rekognition returns a pagination token in the response. + // You can use this pagination token to retrieve the next set of results. NextToken *string `type:"string"` // A list of project descriptions. The list is sorted by the date and time the @@ -14245,7 +14763,10 @@ // based on the assumed threshold of each label. MinConfidence *float64 `type:"float"` - // The ARN of the model version that you want to use. + // The ARN of the model version that you want to use. Only models associated + // with Custom Labels projects accepted by the operation. If a provided ARN + // refers to a model version associated with a project for a different feature + // type, then an InvalidParameterException is returned. // // ProjectVersionArn is a required field ProjectVersionArn *string `min:"20" type:"string" required:"true"` @@ -14964,6 +15485,10 @@ // If you don't specify MinConfidence, the operation returns labels with confidence // values greater than or equal to 50 percent. MinConfidence *float64 `type:"float"` + + // Identifier for the custom adapter. Expects the ProjectVersionArn as a value. + // Use the CreateProject or CreateProjectVersion APIs to create a custom adapter. + ProjectVersion *string `min:"20" type:"string"` } // String returns the string representation. @@ -14990,6 +15515,9 @@ if s.Image == nil { invalidParams.Add(request.NewErrParamRequired("Image")) } + if s.ProjectVersion != nil && len(*s.ProjectVersion) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ProjectVersion", 20)) + } if s.HumanLoopConfig != nil { if err := s.HumanLoopConfig.Validate(); err != nil { invalidParams.AddNested("HumanLoopConfig", err.(request.ErrInvalidParams)) @@ -15025,6 +15553,12 @@ return s } +// SetProjectVersion sets the ProjectVersion field's value. +func (s *DetectModerationLabelsInput) SetProjectVersion(v string) *DetectModerationLabelsInput { + s.ProjectVersion = &v + return s +} + type DetectModerationLabelsOutput struct { _ struct{} `type:"structure"` @@ -15035,9 +15569,14 @@ // start of the video, they were detected. ModerationLabels []*ModerationLabel `type:"list"` - // Version number of the moderation detection model that was used to detect + // Version number of the base moderation detection model that was used to detect // unsafe content. ModerationModelVersion *string `type:"string"` + + // Identifier of the custom adapter that was used during inference. If during + // inference the adapter was EXPIRED, then the parameter will not be returned, + // indicating that a base moderation detection project version was used. + ProjectVersion *string `min:"20" type:"string"` } // String returns the string representation. @@ -15076,6 +15615,12 @@ return s } +// SetProjectVersion sets the ProjectVersion field's value. +func (s *DetectModerationLabelsOutput) SetProjectVersion(v string) *DetectModerationLabelsOutput { + s.ProjectVersion = &v + return s +} + type DetectProtectiveEquipmentInput struct { _ struct{} `type:"structure"` @@ -18118,6 +18663,199 @@ return s } +type GetMediaAnalysisJobInput struct { + _ struct{} `type:"structure"` + + // Unique identifier for the media analysis job for which you want to retrieve + // results. + // + // JobId is a required field + JobId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaAnalysisJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaAnalysisJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMediaAnalysisJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMediaAnalysisJobInput"} + if s.JobId == nil { + invalidParams.Add(request.NewErrParamRequired("JobId")) + } + if s.JobId != nil && len(*s.JobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobId sets the JobId field's value. +func (s *GetMediaAnalysisJobInput) SetJobId(v string) *GetMediaAnalysisJobInput { + s.JobId = &v + return s +} + +type GetMediaAnalysisJobOutput struct { + _ struct{} `type:"structure"` + + // The Unix date and time when the job finished. + CompletionTimestamp *time.Time `type:"timestamp"` + + // The Unix date and time when the job was started. + // + // CreationTimestamp is a required field + CreationTimestamp *time.Time `type:"timestamp" required:"true"` + + // Details about the error that resulted in failure of the job. + FailureDetails *MediaAnalysisJobFailureDetails `type:"structure"` + + // Reference to the input manifest that was provided in the job creation request. + // + // Input is a required field + Input *MediaAnalysisInput_ `type:"structure" required:"true"` + + // The identifier for the media analysis job. + // + // JobId is a required field + JobId *string `min:"1" type:"string" required:"true"` + + // The name of the media analysis job. + JobName *string `min:"1" type:"string"` + + // KMS Key that was provided in the creation request. + KmsKeyId *string `min:"1" type:"string"` + + // The summary manifest provides statistics on input manifest and errors identified + // in the input manifest. + ManifestSummary *MediaAnalysisManifestSummary `type:"structure"` + + // Operation configurations that were provided during job creation. + // + // OperationsConfig is a required field + OperationsConfig *MediaAnalysisOperationsConfig `type:"structure" required:"true"` + + // Output configuration that was provided in the creation request. + // + // OutputConfig is a required field + OutputConfig *MediaAnalysisOutputConfig `type:"structure" required:"true"` + + // Output manifest that contains prediction results. + Results *MediaAnalysisResults `type:"structure"` + + // The current status of the media analysis job. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"MediaAnalysisJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaAnalysisJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaAnalysisJobOutput) GoString() string { + return s.String() +} + +// SetCompletionTimestamp sets the CompletionTimestamp field's value. +func (s *GetMediaAnalysisJobOutput) SetCompletionTimestamp(v time.Time) *GetMediaAnalysisJobOutput { + s.CompletionTimestamp = &v + return s +} + +// SetCreationTimestamp sets the CreationTimestamp field's value. +func (s *GetMediaAnalysisJobOutput) SetCreationTimestamp(v time.Time) *GetMediaAnalysisJobOutput { + s.CreationTimestamp = &v + return s +} + +// SetFailureDetails sets the FailureDetails field's value. +func (s *GetMediaAnalysisJobOutput) SetFailureDetails(v *MediaAnalysisJobFailureDetails) *GetMediaAnalysisJobOutput { + s.FailureDetails = v + return s +} + +// SetInput sets the Input field's value. +func (s *GetMediaAnalysisJobOutput) SetInput(v *MediaAnalysisInput_) *GetMediaAnalysisJobOutput { + s.Input = v + return s +} + +// SetJobId sets the JobId field's value. +func (s *GetMediaAnalysisJobOutput) SetJobId(v string) *GetMediaAnalysisJobOutput { + s.JobId = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *GetMediaAnalysisJobOutput) SetJobName(v string) *GetMediaAnalysisJobOutput { + s.JobName = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *GetMediaAnalysisJobOutput) SetKmsKeyId(v string) *GetMediaAnalysisJobOutput { + s.KmsKeyId = &v + return s +} + +// SetManifestSummary sets the ManifestSummary field's value. +func (s *GetMediaAnalysisJobOutput) SetManifestSummary(v *MediaAnalysisManifestSummary) *GetMediaAnalysisJobOutput { + s.ManifestSummary = v + return s +} + +// SetOperationsConfig sets the OperationsConfig field's value. +func (s *GetMediaAnalysisJobOutput) SetOperationsConfig(v *MediaAnalysisOperationsConfig) *GetMediaAnalysisJobOutput { + s.OperationsConfig = v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *GetMediaAnalysisJobOutput) SetOutputConfig(v *MediaAnalysisOutputConfig) *GetMediaAnalysisJobOutput { + s.OutputConfig = v + return s +} + +// SetResults sets the Results field's value. +func (s *GetMediaAnalysisJobOutput) SetResults(v *MediaAnalysisResults) *GetMediaAnalysisJobOutput { + s.Results = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetMediaAnalysisJobOutput) SetStatus(v string) *GetMediaAnalysisJobOutput { + s.Status = &v + return s +} + type GetPersonTrackingInput struct { _ struct{} `type:"structure"` @@ -19667,6 +20405,71 @@ return s.RespMetadata.RequestID } +// Indicates that a provided manifest file is empty or larger than the allowed +// limit. +type InvalidManifestException 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 InvalidManifestException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidManifestException) GoString() string { + return s.String() +} + +func newErrorInvalidManifestException(v protocol.ResponseMetadata) error { + return &InvalidManifestException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidManifestException) Code() string { + return "InvalidManifestException" +} + +// Message returns the exception's message. +func (s *InvalidManifestException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidManifestException) OrigErr() error { + return nil +} + +func (s *InvalidManifestException) 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 *InvalidManifestException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidManifestException) RequestID() string { + return s.RespMetadata.RequestID +} + // Pagination token in the request is not valid. type InvalidPaginationTokenException struct { _ struct{} `type:"structure"` @@ -20396,10 +21199,10 @@ } // An Amazon Rekognition service limit was exceeded. For example, if you start -// too many Amazon Rekognition Video jobs concurrently, calls to start operations -// (StartLabelDetection, for example) will raise a LimitExceededException exception -// (HTTP status code: 400) until the number of concurrently running jobs is -// below the Amazon Rekognition service limit. +// too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) +// will raise a LimitExceededException exception (HTTP status code: 400) until +// the number of concurrently running jobs is below the Amazon Rekognition service +// limit. type LimitExceededException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -20987,6 +21790,103 @@ return s } +type ListMediaAnalysisJobsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return per paginated call. The largest value + // user can specify is 100. If user specifies a value greater than 100, an InvalidParameterException + // error occurs. The default value is 100. + MaxResults *int64 `min:"1" type:"integer"` + + // Pagination token, if the previous response was incomplete. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaAnalysisJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaAnalysisJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMediaAnalysisJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMediaAnalysisJobsInput"} + 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 *ListMediaAnalysisJobsInput) SetMaxResults(v int64) *ListMediaAnalysisJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMediaAnalysisJobsInput) SetNextToken(v string) *ListMediaAnalysisJobsInput { + s.NextToken = &v + return s +} + +type ListMediaAnalysisJobsOutput struct { + _ struct{} `type:"structure"` + + // Contains a list of all media analysis jobs. + // + // MediaAnalysisJobs is a required field + MediaAnalysisJobs []*MediaAnalysisJobDescription `type:"list" required:"true"` + + // Pagination token, if the previous response was incomplete. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaAnalysisJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaAnalysisJobsOutput) GoString() string { + return s.String() +} + +// SetMediaAnalysisJobs sets the MediaAnalysisJobs field's value. +func (s *ListMediaAnalysisJobsOutput) SetMediaAnalysisJobs(v []*MediaAnalysisJobDescription) *ListMediaAnalysisJobsOutput { + s.MediaAnalysisJobs = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMediaAnalysisJobsOutput) SetNextToken(v string) *ListMediaAnalysisJobsOutput { + s.NextToken = &v + return s +} + type ListProjectPoliciesInput struct { _ struct{} `type:"structure"` @@ -21564,6 +22464,494 @@ return s } +// Configuration for Moderation Labels Detection. +type MediaAnalysisDetectModerationLabelsConfig struct { + _ struct{} `type:"structure"` + + // Specifies the minimum confidence level for the moderation labels to return. + // Amazon Rekognition doesn't return any labels with a confidence level lower + // than this specified value. + MinConfidence *float64 `type:"float"` + + // Specifies the custom moderation model to be used during the label detection + // job. If not provided the pre-trained model is used. + ProjectVersion *string `min:"20" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisDetectModerationLabelsConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisDetectModerationLabelsConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaAnalysisDetectModerationLabelsConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaAnalysisDetectModerationLabelsConfig"} + if s.ProjectVersion != nil && len(*s.ProjectVersion) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ProjectVersion", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMinConfidence sets the MinConfidence field's value. +func (s *MediaAnalysisDetectModerationLabelsConfig) SetMinConfidence(v float64) *MediaAnalysisDetectModerationLabelsConfig { + s.MinConfidence = &v + return s +} + +// SetProjectVersion sets the ProjectVersion field's value. +func (s *MediaAnalysisDetectModerationLabelsConfig) SetProjectVersion(v string) *MediaAnalysisDetectModerationLabelsConfig { + s.ProjectVersion = &v + return s +} + +// Contains input information for a media analysis job. +type MediaAnalysisInput_ struct { + _ struct{} `type:"structure"` + + // Provides the S3 bucket name and object name. + // + // The region for the S3 bucket containing the S3 object must match the region + // you use for Amazon Rekognition operations. + // + // For Amazon Rekognition to process an S3 object, the user must have permission + // to access the S3 object. For more information, see How Amazon Rekognition + // works with IAM in the Amazon Rekognition Developer Guide. + // + // S3Object is a required field + S3Object *S3Object `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 MediaAnalysisInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaAnalysisInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaAnalysisInput_"} + if s.S3Object == nil { + invalidParams.Add(request.NewErrParamRequired("S3Object")) + } + if s.S3Object != nil { + if err := s.S3Object.Validate(); err != nil { + invalidParams.AddNested("S3Object", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Object sets the S3Object field's value. +func (s *MediaAnalysisInput_) SetS3Object(v *S3Object) *MediaAnalysisInput_ { + s.S3Object = v + return s +} + +// Description for a media analysis job. +type MediaAnalysisJobDescription struct { + _ struct{} `type:"structure"` + + // The Unix date and time when the job finished. + CompletionTimestamp *time.Time `type:"timestamp"` + + // The Unix date and time when the job was started. + // + // CreationTimestamp is a required field + CreationTimestamp *time.Time `type:"timestamp" required:"true"` + + // Details about the error that resulted in failure of the job. + FailureDetails *MediaAnalysisJobFailureDetails `type:"structure"` + + // Reference to the input manifest that was provided in the job creation request. + // + // Input is a required field + Input *MediaAnalysisInput_ `type:"structure" required:"true"` + + // The identifier for a media analysis job. + // + // JobId is a required field + JobId *string `min:"1" type:"string" required:"true"` + + // The name of a media analysis job. + JobName *string `min:"1" type:"string"` + + // KMS Key that was provided in the creation request. + KmsKeyId *string `min:"1" type:"string"` + + // Provides statistics on input manifest and errors identified in the input + // manifest. + ManifestSummary *MediaAnalysisManifestSummary `type:"structure"` + + // Operation configurations that were provided during job creation. + // + // OperationsConfig is a required field + OperationsConfig *MediaAnalysisOperationsConfig `type:"structure" required:"true"` + + // Output configuration that was provided in the creation request. + // + // OutputConfig is a required field + OutputConfig *MediaAnalysisOutputConfig `type:"structure" required:"true"` + + // Output manifest that contains prediction results. + Results *MediaAnalysisResults `type:"structure"` + + // The status of the media analysis job being retrieved. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"MediaAnalysisJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisJobDescription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisJobDescription) GoString() string { + return s.String() +} + +// SetCompletionTimestamp sets the CompletionTimestamp field's value. +func (s *MediaAnalysisJobDescription) SetCompletionTimestamp(v time.Time) *MediaAnalysisJobDescription { + s.CompletionTimestamp = &v + return s +} + +// SetCreationTimestamp sets the CreationTimestamp field's value. +func (s *MediaAnalysisJobDescription) SetCreationTimestamp(v time.Time) *MediaAnalysisJobDescription { + s.CreationTimestamp = &v + return s +} + +// SetFailureDetails sets the FailureDetails field's value. +func (s *MediaAnalysisJobDescription) SetFailureDetails(v *MediaAnalysisJobFailureDetails) *MediaAnalysisJobDescription { + s.FailureDetails = v + return s +} + +// SetInput sets the Input field's value. +func (s *MediaAnalysisJobDescription) SetInput(v *MediaAnalysisInput_) *MediaAnalysisJobDescription { + s.Input = v + return s +} + +// SetJobId sets the JobId field's value. +func (s *MediaAnalysisJobDescription) SetJobId(v string) *MediaAnalysisJobDescription { + s.JobId = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *MediaAnalysisJobDescription) SetJobName(v string) *MediaAnalysisJobDescription { + s.JobName = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *MediaAnalysisJobDescription) SetKmsKeyId(v string) *MediaAnalysisJobDescription { + s.KmsKeyId = &v + return s +} + +// SetManifestSummary sets the ManifestSummary field's value. +func (s *MediaAnalysisJobDescription) SetManifestSummary(v *MediaAnalysisManifestSummary) *MediaAnalysisJobDescription { + s.ManifestSummary = v + return s +} + +// SetOperationsConfig sets the OperationsConfig field's value. +func (s *MediaAnalysisJobDescription) SetOperationsConfig(v *MediaAnalysisOperationsConfig) *MediaAnalysisJobDescription { + s.OperationsConfig = v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *MediaAnalysisJobDescription) SetOutputConfig(v *MediaAnalysisOutputConfig) *MediaAnalysisJobDescription { + s.OutputConfig = v + return s +} + +// SetResults sets the Results field's value. +func (s *MediaAnalysisJobDescription) SetResults(v *MediaAnalysisResults) *MediaAnalysisJobDescription { + s.Results = v + return s +} + +// SetStatus sets the Status field's value. +func (s *MediaAnalysisJobDescription) SetStatus(v string) *MediaAnalysisJobDescription { + s.Status = &v + return s +} + +// Details about the error that resulted in failure of the job. +type MediaAnalysisJobFailureDetails struct { + _ struct{} `type:"structure"` + + // Error code for the failed job. + Code *string `type:"string" enum:"MediaAnalysisJobFailureCode"` + + // Human readable error message. + 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 MediaAnalysisJobFailureDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisJobFailureDetails) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *MediaAnalysisJobFailureDetails) SetCode(v string) *MediaAnalysisJobFailureDetails { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *MediaAnalysisJobFailureDetails) SetMessage(v string) *MediaAnalysisJobFailureDetails { + s.Message = &v + return s +} + +// Summary that provides statistics on input manifest and errors identified +// in the input manifest. +type MediaAnalysisManifestSummary struct { + _ struct{} `type:"structure"` + + // Provides the S3 bucket name and object name. + // + // The region for the S3 bucket containing the S3 object must match the region + // you use for Amazon Rekognition operations. + // + // For Amazon Rekognition to process an S3 object, the user must have permission + // to access the S3 object. For more information, see How Amazon Rekognition + // works with IAM in the Amazon Rekognition Developer Guide. + S3Object *S3Object `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 MediaAnalysisManifestSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisManifestSummary) GoString() string { + return s.String() +} + +// SetS3Object sets the S3Object field's value. +func (s *MediaAnalysisManifestSummary) SetS3Object(v *S3Object) *MediaAnalysisManifestSummary { + s.S3Object = v + return s +} + +// Configuration options for a media analysis job. Configuration is operation-specific. +type MediaAnalysisOperationsConfig struct { + _ struct{} `type:"structure"` + + // Contains configuration options for a DetectModerationLabels job. + DetectModerationLabels *MediaAnalysisDetectModerationLabelsConfig `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 MediaAnalysisOperationsConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisOperationsConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaAnalysisOperationsConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaAnalysisOperationsConfig"} + if s.DetectModerationLabels != nil { + if err := s.DetectModerationLabels.Validate(); err != nil { + invalidParams.AddNested("DetectModerationLabels", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDetectModerationLabels sets the DetectModerationLabels field's value. +func (s *MediaAnalysisOperationsConfig) SetDetectModerationLabels(v *MediaAnalysisDetectModerationLabelsConfig) *MediaAnalysisOperationsConfig { + s.DetectModerationLabels = v + return s +} + +// Output configuration provided in the job creation request. +type MediaAnalysisOutputConfig struct { + _ struct{} `type:"structure"` + + // Specifies the Amazon S3 bucket to contain the output of the media analysis + // job. + // + // S3Bucket is a required field + S3Bucket *string `min:"3" type:"string" required:"true"` + + // Specifies the Amazon S3 key prefix that comes after the name of the bucket + // you have designated for storage. + S3KeyPrefix *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 MediaAnalysisOutputConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisOutputConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaAnalysisOutputConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaAnalysisOutputConfig"} + if s.S3Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("S3Bucket")) + } + if s.S3Bucket != nil && len(*s.S3Bucket) < 3 { + invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Bucket sets the S3Bucket field's value. +func (s *MediaAnalysisOutputConfig) SetS3Bucket(v string) *MediaAnalysisOutputConfig { + s.S3Bucket = &v + return s +} + +// SetS3KeyPrefix sets the S3KeyPrefix field's value. +func (s *MediaAnalysisOutputConfig) SetS3KeyPrefix(v string) *MediaAnalysisOutputConfig { + s.S3KeyPrefix = &v + return s +} + +// Contains the results for a media analysis job created with StartMediaAnalysisJob. +type MediaAnalysisResults struct { + _ struct{} `type:"structure"` + + // Provides the S3 bucket name and object name. + // + // The region for the S3 bucket containing the S3 object must match the region + // you use for Amazon Rekognition operations. + // + // For Amazon Rekognition to process an S3 object, the user must have permission + // to access the S3 object. For more information, see How Amazon Rekognition + // works with IAM in the Amazon Rekognition Developer Guide. + S3Object *S3Object `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 MediaAnalysisResults) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaAnalysisResults) GoString() string { + return s.String() +} + +// SetS3Object sets the S3Object field's value. +func (s *MediaAnalysisResults) SetS3Object(v *S3Object) *MediaAnalysisResults { + s.S3Object = v + return s +} + // Provides information about a single type of inappropriate, unwanted, or offensive // content found in an image or video. Each type of moderated content has a // label within a hierarchical taxonomy. For more information, see Content moderation @@ -22122,12 +23510,19 @@ type ProjectDescription struct { _ struct{} `type:"structure"` + // Indicates whether automatic retraining will be attempted for the versions + // of the project. Applies only to adapters. + AutoUpdate *string `type:"string" enum:"ProjectAutoUpdate"` + // The Unix timestamp for the date and time that the project was created. CreationTimestamp *time.Time `type:"timestamp"` // Information about the training and test datasets in the project. Datasets []*DatasetMetadata `type:"list"` + // Specifies the project that is being customized. + Feature *string `type:"string" enum:"CustomizationFeature"` + // The Amazon Resource Name (ARN) of the project. ProjectArn *string `min:"20" type:"string"` @@ -22153,6 +23548,12 @@ return s.String() } +// SetAutoUpdate sets the AutoUpdate field's value. +func (s *ProjectDescription) SetAutoUpdate(v string) *ProjectDescription { + s.AutoUpdate = &v + return s +} + // SetCreationTimestamp sets the CreationTimestamp field's value. func (s *ProjectDescription) SetCreationTimestamp(v time.Time) *ProjectDescription { s.CreationTimestamp = &v @@ -22165,6 +23566,12 @@ return s } +// SetFeature sets the Feature field's value. +func (s *ProjectDescription) SetFeature(v string) *ProjectDescription { + s.Feature = &v + return s +} + // SetProjectArn sets the ProjectArn field's value. func (s *ProjectDescription) SetProjectArn(v string) *ProjectDescription { s.ProjectArn = &v @@ -22255,10 +23662,13 @@ return s } -// A description of a version of an Amazon Rekognition Custom Labels model. +// A description of a version of a Amazon Rekognition project version. type ProjectVersionDescription struct { _ struct{} `type:"structure"` + // The base detection model version used to create the project version. + BaseModelVersion *string `type:"string"` + // The duration, in seconds, that you were billed for a successful training // of the model version. This value is only returned if the model version has // been successfully trained. @@ -22270,6 +23680,12 @@ // The training results. EvaluationResult is only returned if training is successful. EvaluationResult *EvaluationResult `type:"structure"` + // The feature that was customized. + Feature *string `type:"string" enum:"CustomizationFeature"` + + // Feature specific configuration that was applied during training. + FeatureConfig *CustomizationFeatureConfig `type:"structure"` + // The identifer for the AWS Key Management Service key (AWS KMS key) that was // used to encrypt the model during training. KmsKeyId *string `min:"1" type:"string"` @@ -22278,18 +23694,19 @@ // data validation results for the training and test datasets. ManifestSummary *GroundTruthManifest `type:"structure"` - // The maximum number of inference units Amazon Rekognition Custom Labels uses - // to auto-scale the model. For more information, see StartProjectVersion. + // The maximum number of inference units Amazon Rekognition uses to auto-scale + // the model. Applies only to Custom Labels projects. For more information, + // see StartProjectVersion. MaxInferenceUnits *int64 `min:"1" type:"integer"` - // The minimum number of inference units used by the model. For more information, - // see StartProjectVersion. + // The minimum number of inference units used by the model. Applies only to + // Custom Labels projects. For more information, see StartProjectVersion. MinInferenceUnits *int64 `min:"1" type:"integer"` // The location where training results are saved. OutputConfig *OutputConfig `type:"structure"` - // The Amazon Resource Name (ARN) of the model version. + // The Amazon Resource Name (ARN) of the project version. ProjectVersionArn *string `min:"20" type:"string"` // If the model version was copied from a different project, SourceProjectVersionArn @@ -22310,6 +23727,9 @@ // The Unix date and time that training of the model ended. TrainingEndTimestamp *time.Time `type:"timestamp"` + + // A user-provided description of the project version. + VersionDescription *string `min:"1" type:"string"` } // String returns the string representation. @@ -22330,6 +23750,12 @@ return s.String() } +// SetBaseModelVersion sets the BaseModelVersion field's value. +func (s *ProjectVersionDescription) SetBaseModelVersion(v string) *ProjectVersionDescription { + s.BaseModelVersion = &v + return s +} + // SetBillableTrainingTimeInSeconds sets the BillableTrainingTimeInSeconds field's value. func (s *ProjectVersionDescription) SetBillableTrainingTimeInSeconds(v int64) *ProjectVersionDescription { s.BillableTrainingTimeInSeconds = &v @@ -22348,6 +23774,18 @@ return s } +// SetFeature sets the Feature field's value. +func (s *ProjectVersionDescription) SetFeature(v string) *ProjectVersionDescription { + s.Feature = &v + return s +} + +// SetFeatureConfig sets the FeatureConfig field's value. +func (s *ProjectVersionDescription) SetFeatureConfig(v *CustomizationFeatureConfig) *ProjectVersionDescription { + s.FeatureConfig = v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *ProjectVersionDescription) SetKmsKeyId(v string) *ProjectVersionDescription { s.KmsKeyId = &v @@ -22420,6 +23858,12 @@ return s } +// SetVersionDescription sets the VersionDescription field's value. +func (s *ProjectVersionDescription) SetVersionDescription(v string) *ProjectVersionDescription { + s.VersionDescription = &v + return s +} + // Information about a body part detected by DetectProtectiveEquipment that // contains PPE. An array of ProtectiveEquipmentBodyPart objects is returned // for each person detected by DetectProtectiveEquipment. @@ -25373,6 +26817,169 @@ return s } +type StartMediaAnalysisJobInput struct { + _ struct{} `type:"structure"` + + // Idempotency token used to prevent the accidental creation of duplicate versions. + // If you use the same token with multiple StartMediaAnalysisJobRequest requests, + // the same response is returned. Use ClientRequestToken to prevent the same + // request from being processed more than once. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Input data to be analyzed by the job. + // + // Input is a required field + Input *MediaAnalysisInput_ `type:"structure" required:"true"` + + // The name of the job. Does not have to be unique. + JobName *string `min:"1" type:"string"` + + // The identifier of customer managed AWS KMS key (name or ARN). The key is + // used to encrypt images copied into the service. The key is also used to encrypt + // results and manifest files written to the output Amazon S3 bucket. + KmsKeyId *string `min:"1" type:"string"` + + // Configuration options for the media analysis job to be created. + // + // OperationsConfig is a required field + OperationsConfig *MediaAnalysisOperationsConfig `type:"structure" required:"true"` + + // The Amazon S3 bucket location to store the results. + // + // OutputConfig is a required field + OutputConfig *MediaAnalysisOutputConfig `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 StartMediaAnalysisJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMediaAnalysisJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartMediaAnalysisJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartMediaAnalysisJobInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Input == nil { + invalidParams.Add(request.NewErrParamRequired("Input")) + } + if s.JobName != nil && len(*s.JobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobName", 1)) + } + if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) + } + if s.OperationsConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OperationsConfig")) + } + if s.OutputConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputConfig")) + } + if s.Input != nil { + if err := s.Input.Validate(); err != nil { + invalidParams.AddNested("Input", err.(request.ErrInvalidParams)) + } + } + if s.OperationsConfig != nil { + if err := s.OperationsConfig.Validate(); err != nil { + invalidParams.AddNested("OperationsConfig", err.(request.ErrInvalidParams)) + } + } + if s.OutputConfig != nil { + if err := s.OutputConfig.Validate(); err != nil { + invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *StartMediaAnalysisJobInput) SetClientRequestToken(v string) *StartMediaAnalysisJobInput { + s.ClientRequestToken = &v + return s +} + +// SetInput sets the Input field's value. +func (s *StartMediaAnalysisJobInput) SetInput(v *MediaAnalysisInput_) *StartMediaAnalysisJobInput { + s.Input = v + return s +} + +// SetJobName sets the JobName field's value. +func (s *StartMediaAnalysisJobInput) SetJobName(v string) *StartMediaAnalysisJobInput { + s.JobName = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *StartMediaAnalysisJobInput) SetKmsKeyId(v string) *StartMediaAnalysisJobInput { + s.KmsKeyId = &v + return s +} + +// SetOperationsConfig sets the OperationsConfig field's value. +func (s *StartMediaAnalysisJobInput) SetOperationsConfig(v *MediaAnalysisOperationsConfig) *StartMediaAnalysisJobInput { + s.OperationsConfig = v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *StartMediaAnalysisJobInput) SetOutputConfig(v *MediaAnalysisOutputConfig) *StartMediaAnalysisJobInput { + s.OutputConfig = v + return s +} + +type StartMediaAnalysisJobOutput struct { + _ struct{} `type:"structure"` + + // Identifier for the created job. + // + // JobId is a required field + JobId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMediaAnalysisJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMediaAnalysisJobOutput) GoString() string { + return s.String() +} + +// SetJobId sets the JobId field's value. +func (s *StartMediaAnalysisJobOutput) SetJobId(v string) *StartMediaAnalysisJobOutput { + s.JobId = &v + return s +} + type StartPersonTrackingInput struct { _ struct{} `type:"structure"` @@ -25515,10 +27122,6 @@ // The minimum number of inference units to use. A single inference unit represents // 1 hour of processing. // - // For information about the number of transactions per second (TPS) that an - // inference unit can support, see Running a trained Amazon Rekognition Custom - // Labels model in the Amazon Rekognition Custom Labels Guide. - // // Use a higher number to increase the TPS throughput of your model. You are // charged for the number of inference units that you use. // @@ -26278,7 +27881,7 @@ type StopProjectVersionInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the model version that you want to delete. + // The Amazon Resource Name (ARN) of the model version that you want to stop. // // This operation requires permissions to perform the rekognition:StopProjectVersion // action. @@ -27107,18 +28710,16 @@ } // The dataset used for testing. Optionally, if AutoCreate is set, Amazon Rekognition -// Custom Labels uses the training dataset to create a test dataset with a temporary -// split of the training dataset. +// uses the training dataset to create a test dataset with a temporary split +// of the training dataset. type TestingData struct { _ struct{} `type:"structure"` // The assets used for testing. Assets []*Asset `type:"list"` - // If specified, Amazon Rekognition Custom Labels temporarily splits the training - // dataset (80%) to create a test dataset (20%) for the training job. After - // training completes, the test dataset is not stored and the training dataset - // reverts to its previous size. + // If specified, Rekognition splits training dataset to create a test dataset + // for the training job. AutoCreate *bool `type:"boolean"` } @@ -27432,7 +29033,8 @@ type TrainingData struct { _ struct{} `type:"structure"` - // A Sagemaker GroundTruth manifest file that contains the training images (assets). + // A manifest file that contains references to the training images and ground-truth + // annotations. Assets []*Asset `type:"list"` } @@ -27480,20 +29082,20 @@ return s } -// Sagemaker Groundtruth format manifest files for the input, output and validation -// datasets that are used and created during testing. +// The data validation manifest created for the training dataset during model +// training. type TrainingDataResult struct { _ struct{} `type:"structure"` - // The training assets that you supplied for training. + // The training data that you supplied. Input *TrainingData `type:"structure"` - // The images (assets) that were actually trained by Amazon Rekognition Custom - // Labels. + // Reference to images (assets) that were actually used during training with + // trained model predictions. Output *TrainingData `type:"structure"` - // The location of the data validation manifest. The data validation manifest - // is created for the training dataset during model training. + // A manifest that you supplied for training, with validation results for each + // line. Validation *ValidationData `type:"structure"` } @@ -28599,6 +30201,22 @@ } const ( + // CustomizationFeatureContentModeration is a CustomizationFeature enum value + CustomizationFeatureContentModeration = "CONTENT_MODERATION" + + // CustomizationFeatureCustomLabels is a CustomizationFeature enum value + CustomizationFeatureCustomLabels = "CUSTOM_LABELS" +) + +// CustomizationFeature_Values returns all elements of the CustomizationFeature enum +func CustomizationFeature_Values() []string { + return []string{ + CustomizationFeatureContentModeration, + CustomizationFeatureCustomLabels, + } +} + +const ( // DatasetStatusCreateInProgress is a DatasetStatus enum value DatasetStatusCreateInProgress = "CREATE_IN_PROGRESS" @@ -29004,6 +30622,78 @@ } const ( + // MediaAnalysisJobFailureCodeInternalError is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeInternalError = "INTERNAL_ERROR" + + // MediaAnalysisJobFailureCodeInvalidS3Object is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeInvalidS3Object = "INVALID_S3_OBJECT" + + // MediaAnalysisJobFailureCodeInvalidManifest is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeInvalidManifest = "INVALID_MANIFEST" + + // MediaAnalysisJobFailureCodeInvalidOutputConfig is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeInvalidOutputConfig = "INVALID_OUTPUT_CONFIG" + + // MediaAnalysisJobFailureCodeInvalidKmsKey is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeInvalidKmsKey = "INVALID_KMS_KEY" + + // MediaAnalysisJobFailureCodeAccessDenied is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeAccessDenied = "ACCESS_DENIED" + + // MediaAnalysisJobFailureCodeResourceNotFound is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeResourceNotFound = "RESOURCE_NOT_FOUND" + + // MediaAnalysisJobFailureCodeResourceNotReady is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeResourceNotReady = "RESOURCE_NOT_READY" + + // MediaAnalysisJobFailureCodeThrottled is a MediaAnalysisJobFailureCode enum value + MediaAnalysisJobFailureCodeThrottled = "THROTTLED" +) + +// MediaAnalysisJobFailureCode_Values returns all elements of the MediaAnalysisJobFailureCode enum +func MediaAnalysisJobFailureCode_Values() []string { + return []string{ + MediaAnalysisJobFailureCodeInternalError, + MediaAnalysisJobFailureCodeInvalidS3Object, + MediaAnalysisJobFailureCodeInvalidManifest, + MediaAnalysisJobFailureCodeInvalidOutputConfig, + MediaAnalysisJobFailureCodeInvalidKmsKey, + MediaAnalysisJobFailureCodeAccessDenied, + MediaAnalysisJobFailureCodeResourceNotFound, + MediaAnalysisJobFailureCodeResourceNotReady, + MediaAnalysisJobFailureCodeThrottled, + } +} + +const ( + // MediaAnalysisJobStatusCreated is a MediaAnalysisJobStatus enum value + MediaAnalysisJobStatusCreated = "CREATED" + + // MediaAnalysisJobStatusQueued is a MediaAnalysisJobStatus enum value + MediaAnalysisJobStatusQueued = "QUEUED" + + // MediaAnalysisJobStatusInProgress is a MediaAnalysisJobStatus enum value + MediaAnalysisJobStatusInProgress = "IN_PROGRESS" + + // MediaAnalysisJobStatusSucceeded is a MediaAnalysisJobStatus enum value + MediaAnalysisJobStatusSucceeded = "SUCCEEDED" + + // MediaAnalysisJobStatusFailed is a MediaAnalysisJobStatus enum value + MediaAnalysisJobStatusFailed = "FAILED" +) + +// MediaAnalysisJobStatus_Values returns all elements of the MediaAnalysisJobStatus enum +func MediaAnalysisJobStatus_Values() []string { + return []string{ + MediaAnalysisJobStatusCreated, + MediaAnalysisJobStatusQueued, + MediaAnalysisJobStatusInProgress, + MediaAnalysisJobStatusSucceeded, + MediaAnalysisJobStatusFailed, + } +} + +const ( // OrientationCorrectionRotate0 is a OrientationCorrection enum value OrientationCorrectionRotate0 = "ROTATE_0" @@ -29044,6 +30734,22 @@ } const ( + // ProjectAutoUpdateEnabled is a ProjectAutoUpdate enum value + ProjectAutoUpdateEnabled = "ENABLED" + + // ProjectAutoUpdateDisabled is a ProjectAutoUpdate enum value + ProjectAutoUpdateDisabled = "DISABLED" +) + +// ProjectAutoUpdate_Values returns all elements of the ProjectAutoUpdate enum +func ProjectAutoUpdate_Values() []string { + return []string{ + ProjectAutoUpdateEnabled, + ProjectAutoUpdateDisabled, + } +} + +const ( // ProjectStatusCreating is a ProjectStatus enum value ProjectStatusCreating = "CREATING" @@ -29099,6 +30805,12 @@ // ProjectVersionStatusCopyingFailed is a ProjectVersionStatus enum value ProjectVersionStatusCopyingFailed = "COPYING_FAILED" + + // ProjectVersionStatusDeprecated is a ProjectVersionStatus enum value + ProjectVersionStatusDeprecated = "DEPRECATED" + + // ProjectVersionStatusExpired is a ProjectVersionStatus enum value + ProjectVersionStatusExpired = "EXPIRED" ) // ProjectVersionStatus_Values returns all elements of the ProjectVersionStatus enum @@ -29116,6 +30828,8 @@ ProjectVersionStatusCopyingInProgress, ProjectVersionStatusCopyingCompleted, ProjectVersionStatusCopyingFailed, + ProjectVersionStatusDeprecated, + ProjectVersionStatusExpired, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -57,6 +57,13 @@ // The provided image format is not supported. ErrCodeInvalidImageFormatException = "InvalidImageFormatException" + // ErrCodeInvalidManifestException for service response error code + // "InvalidManifestException". + // + // Indicates that a provided manifest file is empty or larger than the allowed + // limit. + ErrCodeInvalidManifestException = "InvalidManifestException" + // ErrCodeInvalidPaginationTokenException for service response error code // "InvalidPaginationTokenException". // @@ -86,10 +93,10 @@ // "LimitExceededException". // // An Amazon Rekognition service limit was exceeded. For example, if you start - // too many Amazon Rekognition Video jobs concurrently, calls to start operations - // (StartLabelDetection, for example) will raise a LimitExceededException exception - // (HTTP status code: 400) until the number of concurrently running jobs is - // below the Amazon Rekognition service limit. + // too many jobs concurrently, subsequent calls to start operations (ex: StartLabelDetection) + // will raise a LimitExceededException exception (HTTP status code: 400) until + // the number of concurrently running jobs is below the Amazon Rekognition service + // limit. ErrCodeLimitExceededException = "LimitExceededException" // ErrCodeMalformedPolicyDocumentException for service response error code @@ -168,6 +175,7 @@ "ImageTooLargeException": newErrorImageTooLargeException, "InternalServerError": newErrorInternalServerError, "InvalidImageFormatException": newErrorInvalidImageFormatException, + "InvalidManifestException": newErrorInvalidManifestException, "InvalidPaginationTokenException": newErrorInvalidPaginationTokenException, "InvalidParameterException": newErrorInvalidParameterException, "InvalidPolicyRevisionIdException": newErrorInvalidPolicyRevisionIdException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -1072,6 +1072,44 @@ fmt.Println(result) } +// GetMediaAnalysisJob +// Retrieves the results for a given media analysis job. +func ExampleRekognition_GetMediaAnalysisJob_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.GetMediaAnalysisJobInput{ + JobId: aws.String("861a0645d98ef88efb75477628c011c04942d9d5f58faf2703c393c8cf8c1537"), + } + + result, err := svc.GetMediaAnalysisJob(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeResourceNotFoundException: + fmt.Println(rekognition.ErrCodeResourceNotFoundException, aerr.Error()) + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To add a face to a collection // This operation detects faces in an image and adds them to the specified Rekognition // collection. @@ -1303,6 +1341,44 @@ fmt.Println(result) } +// ListMediaAnalysisJobs +// Returns a list of media analysis jobs. +func ExampleRekognition_ListMediaAnalysisJobs_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.ListMediaAnalysisJobsInput{ + MaxResults: aws.Int64(10), + } + + result, err := svc.ListMediaAnalysisJobs(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeInvalidPaginationTokenException: + fmt.Println(rekognition.ErrCodeInvalidPaginationTokenException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // ListProjectPolicies // This operation lists the project policies that are attached to an Amazon Rekognition // Custom Labels project. @@ -1616,6 +1692,70 @@ default: fmt.Println(aerr.Error()) } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// StartMediaAnalysisJob +// Initiates a new media analysis job. +func ExampleRekognition_StartMediaAnalysisJob_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.StartMediaAnalysisJobInput{ + Input: &rekognition.MediaAnalysisInput_{ + S3Object: &rekognition.S3Object{ + Bucket: aws.String("input-bucket"), + Name: aws.String("input-manifest.json"), + }, + }, + JobName: aws.String("job-name"), + OperationsConfig: &rekognition.MediaAnalysisOperationsConfig{ + DetectModerationLabels: &rekognition.MediaAnalysisDetectModerationLabelsConfig{ + MinConfidence: aws.Float64(50.000000), + ProjectVersion: aws.String("arn:aws:rekognition:us-east-1:111122223333:project/my-project/version/1/1690556751958"), + }, + }, + OutputConfig: &rekognition.MediaAnalysisOutputConfig{ + S3Bucket: aws.String("output-bucket"), + S3KeyPrefix: aws.String("output-location"), + }, + } + + result, err := svc.StartMediaAnalysisJob(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeInvalidManifestException: + fmt.Println(rekognition.ErrCodeInvalidManifestException, aerr.Error()) + case rekognition.ErrCodeInvalidS3ObjectException: + fmt.Println(rekognition.ErrCodeInvalidS3ObjectException, aerr.Error()) + case rekognition.ErrCodeResourceNotFoundException: + fmt.Println(rekognition.ErrCodeResourceNotFoundException, aerr.Error()) + case rekognition.ErrCodeResourceNotReadyException: + fmt.Println(rekognition.ErrCodeResourceNotReadyException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeLimitExceededException: + fmt.Println(rekognition.ErrCodeLimitExceededException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + case rekognition.ErrCodeIdempotentParameterMismatchException: + fmt.Println(rekognition.ErrCodeIdempotentParameterMismatchException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } } else { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/rekognitioniface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/rekognitioniface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/rekognition/rekognitioniface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/rekognition/rekognitioniface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -233,6 +233,10 @@ GetLabelDetectionPages(*rekognition.GetLabelDetectionInput, func(*rekognition.GetLabelDetectionOutput, bool) bool) error GetLabelDetectionPagesWithContext(aws.Context, *rekognition.GetLabelDetectionInput, func(*rekognition.GetLabelDetectionOutput, bool) bool, ...request.Option) error + GetMediaAnalysisJob(*rekognition.GetMediaAnalysisJobInput) (*rekognition.GetMediaAnalysisJobOutput, error) + GetMediaAnalysisJobWithContext(aws.Context, *rekognition.GetMediaAnalysisJobInput, ...request.Option) (*rekognition.GetMediaAnalysisJobOutput, error) + GetMediaAnalysisJobRequest(*rekognition.GetMediaAnalysisJobInput) (*request.Request, *rekognition.GetMediaAnalysisJobOutput) + GetPersonTracking(*rekognition.GetPersonTrackingInput) (*rekognition.GetPersonTrackingOutput, error) GetPersonTrackingWithContext(aws.Context, *rekognition.GetPersonTrackingInput, ...request.Option) (*rekognition.GetPersonTrackingOutput, error) GetPersonTrackingRequest(*rekognition.GetPersonTrackingInput) (*request.Request, *rekognition.GetPersonTrackingOutput) @@ -286,6 +290,13 @@ ListFacesPages(*rekognition.ListFacesInput, func(*rekognition.ListFacesOutput, bool) bool) error ListFacesPagesWithContext(aws.Context, *rekognition.ListFacesInput, func(*rekognition.ListFacesOutput, bool) bool, ...request.Option) error + ListMediaAnalysisJobs(*rekognition.ListMediaAnalysisJobsInput) (*rekognition.ListMediaAnalysisJobsOutput, error) + ListMediaAnalysisJobsWithContext(aws.Context, *rekognition.ListMediaAnalysisJobsInput, ...request.Option) (*rekognition.ListMediaAnalysisJobsOutput, error) + ListMediaAnalysisJobsRequest(*rekognition.ListMediaAnalysisJobsInput) (*request.Request, *rekognition.ListMediaAnalysisJobsOutput) + + ListMediaAnalysisJobsPages(*rekognition.ListMediaAnalysisJobsInput, func(*rekognition.ListMediaAnalysisJobsOutput, bool) bool) error + ListMediaAnalysisJobsPagesWithContext(aws.Context, *rekognition.ListMediaAnalysisJobsInput, func(*rekognition.ListMediaAnalysisJobsOutput, bool) bool, ...request.Option) error + ListProjectPolicies(*rekognition.ListProjectPoliciesInput) (*rekognition.ListProjectPoliciesOutput, error) ListProjectPoliciesWithContext(aws.Context, *rekognition.ListProjectPoliciesInput, ...request.Option) (*rekognition.ListProjectPoliciesOutput, error) ListProjectPoliciesRequest(*rekognition.ListProjectPoliciesInput) (*request.Request, *rekognition.ListProjectPoliciesOutput) @@ -355,6 +366,10 @@ StartLabelDetectionWithContext(aws.Context, *rekognition.StartLabelDetectionInput, ...request.Option) (*rekognition.StartLabelDetectionOutput, error) StartLabelDetectionRequest(*rekognition.StartLabelDetectionInput) (*request.Request, *rekognition.StartLabelDetectionOutput) + StartMediaAnalysisJob(*rekognition.StartMediaAnalysisJobInput) (*rekognition.StartMediaAnalysisJobOutput, error) + StartMediaAnalysisJobWithContext(aws.Context, *rekognition.StartMediaAnalysisJobInput, ...request.Option) (*rekognition.StartMediaAnalysisJobOutput, error) + StartMediaAnalysisJobRequest(*rekognition.StartMediaAnalysisJobInput) (*request.Request, *rekognition.StartMediaAnalysisJobOutput) + StartPersonTracking(*rekognition.StartPersonTrackingInput) (*rekognition.StartPersonTrackingOutput, error) StartPersonTrackingWithContext(aws.Context, *rekognition.StartPersonTrackingInput, ...request.Option) (*rekognition.StartPersonTrackingOutput, error) StartPersonTrackingRequest(*rekognition.StartPersonTrackingInput) (*request.Request, *rekognition.StartPersonTrackingOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/api.go golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,3227 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package repostspace + +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/restjson" +) + +const opCreateSpace = "CreateSpace" + +// CreateSpaceRequest generates a "aws/request.Request" representing the +// client's request for the CreateSpace 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 CreateSpace for more information on using the CreateSpace +// 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 CreateSpaceRequest method. +// req, resp := client.CreateSpaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/CreateSpace +func (c *Repostspace) CreateSpaceRequest(input *CreateSpaceInput) (req *request.Request, output *CreateSpaceOutput) { + op := &request.Operation{ + Name: opCreateSpace, + HTTPMethod: "POST", + HTTPPath: "/spaces", + } + + if input == nil { + input = &CreateSpaceInput{} + } + + output = &CreateSpaceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSpace API operation for AWS re:Post Private. +// +// Creates an AWS re:Post Private private re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation CreateSpace for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// Request would cause a service quota to be exceeded. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/CreateSpace +func (c *Repostspace) CreateSpace(input *CreateSpaceInput) (*CreateSpaceOutput, error) { + req, out := c.CreateSpaceRequest(input) + return out, req.Send() +} + +// CreateSpaceWithContext is the same as CreateSpace with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSpace 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 *Repostspace) CreateSpaceWithContext(ctx aws.Context, input *CreateSpaceInput, opts ...request.Option) (*CreateSpaceOutput, error) { + req, out := c.CreateSpaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSpace = "DeleteSpace" + +// DeleteSpaceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSpace 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 DeleteSpace for more information on using the DeleteSpace +// 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 DeleteSpaceRequest method. +// req, resp := client.DeleteSpaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/DeleteSpace +func (c *Repostspace) DeleteSpaceRequest(input *DeleteSpaceInput) (req *request.Request, output *DeleteSpaceOutput) { + op := &request.Operation{ + Name: opDeleteSpace, + HTTPMethod: "DELETE", + HTTPPath: "/spaces/{spaceId}", + } + + if input == nil { + input = &DeleteSpaceInput{} + } + + output = &DeleteSpaceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteSpace API operation for AWS re:Post Private. +// +// Deletes an AWS re:Post Private private re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation DeleteSpace for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/DeleteSpace +func (c *Repostspace) DeleteSpace(input *DeleteSpaceInput) (*DeleteSpaceOutput, error) { + req, out := c.DeleteSpaceRequest(input) + return out, req.Send() +} + +// DeleteSpaceWithContext is the same as DeleteSpace with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSpace 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 *Repostspace) DeleteSpaceWithContext(ctx aws.Context, input *DeleteSpaceInput, opts ...request.Option) (*DeleteSpaceOutput, error) { + req, out := c.DeleteSpaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeregisterAdmin = "DeregisterAdmin" + +// DeregisterAdminRequest generates a "aws/request.Request" representing the +// client's request for the DeregisterAdmin 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 DeregisterAdmin for more information on using the DeregisterAdmin +// 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 DeregisterAdminRequest method. +// req, resp := client.DeregisterAdminRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/DeregisterAdmin +func (c *Repostspace) DeregisterAdminRequest(input *DeregisterAdminInput) (req *request.Request, output *DeregisterAdminOutput) { + op := &request.Operation{ + Name: opDeregisterAdmin, + HTTPMethod: "DELETE", + HTTPPath: "/spaces/{spaceId}/admins/{adminId}", + } + + if input == nil { + input = &DeregisterAdminInput{} + } + + output = &DeregisterAdminOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeregisterAdmin API operation for AWS re:Post Private. +// +// Removes the user or group from the list of administrators of the private +// re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation DeregisterAdmin for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/DeregisterAdmin +func (c *Repostspace) DeregisterAdmin(input *DeregisterAdminInput) (*DeregisterAdminOutput, error) { + req, out := c.DeregisterAdminRequest(input) + return out, req.Send() +} + +// DeregisterAdminWithContext is the same as DeregisterAdmin with the addition of +// the ability to pass a context and additional request options. +// +// See DeregisterAdmin 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 *Repostspace) DeregisterAdminWithContext(ctx aws.Context, input *DeregisterAdminInput, opts ...request.Option) (*DeregisterAdminOutput, error) { + req, out := c.DeregisterAdminRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSpace = "GetSpace" + +// GetSpaceRequest generates a "aws/request.Request" representing the +// client's request for the GetSpace 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 GetSpace for more information on using the GetSpace +// 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 GetSpaceRequest method. +// req, resp := client.GetSpaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/GetSpace +func (c *Repostspace) GetSpaceRequest(input *GetSpaceInput) (req *request.Request, output *GetSpaceOutput) { + op := &request.Operation{ + Name: opGetSpace, + HTTPMethod: "GET", + HTTPPath: "/spaces/{spaceId}", + } + + if input == nil { + input = &GetSpaceInput{} + } + + output = &GetSpaceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSpace API operation for AWS re:Post Private. +// +// Displays information about the AWS re:Post Private private re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation GetSpace for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/GetSpace +func (c *Repostspace) GetSpace(input *GetSpaceInput) (*GetSpaceOutput, error) { + req, out := c.GetSpaceRequest(input) + return out, req.Send() +} + +// GetSpaceWithContext is the same as GetSpace with the addition of +// the ability to pass a context and additional request options. +// +// See GetSpace 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 *Repostspace) GetSpaceWithContext(ctx aws.Context, input *GetSpaceInput, opts ...request.Option) (*GetSpaceOutput, error) { + req, out := c.GetSpaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListSpaces = "ListSpaces" + +// ListSpacesRequest generates a "aws/request.Request" representing the +// client's request for the ListSpaces 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 ListSpaces for more information on using the ListSpaces +// 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 ListSpacesRequest method. +// req, resp := client.ListSpacesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/ListSpaces +func (c *Repostspace) ListSpacesRequest(input *ListSpacesInput) (req *request.Request, output *ListSpacesOutput) { + op := &request.Operation{ + Name: opListSpaces, + HTTPMethod: "GET", + HTTPPath: "/spaces", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSpacesInput{} + } + + output = &ListSpacesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSpaces API operation for AWS re:Post Private. +// +// Returns a list of AWS re:Post Private private re:Posts in the account with +// some information about each private re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation ListSpaces for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/ListSpaces +func (c *Repostspace) ListSpaces(input *ListSpacesInput) (*ListSpacesOutput, error) { + req, out := c.ListSpacesRequest(input) + return out, req.Send() +} + +// ListSpacesWithContext is the same as ListSpaces with the addition of +// the ability to pass a context and additional request options. +// +// See ListSpaces 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 *Repostspace) ListSpacesWithContext(ctx aws.Context, input *ListSpacesInput, opts ...request.Option) (*ListSpacesOutput, error) { + req, out := c.ListSpacesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSpacesPages iterates over the pages of a ListSpaces operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSpaces 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 ListSpaces operation. +// pageNum := 0 +// err := client.ListSpacesPages(params, +// func(page *repostspace.ListSpacesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Repostspace) ListSpacesPages(input *ListSpacesInput, fn func(*ListSpacesOutput, bool) bool) error { + return c.ListSpacesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSpacesPagesWithContext same as ListSpacesPages 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 *Repostspace) ListSpacesPagesWithContext(ctx aws.Context, input *ListSpacesInput, fn func(*ListSpacesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSpacesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSpacesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSpacesOutput), !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/repostspace-2022-05-13/ListTagsForResource +func (c *Repostspace) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS re:Post Private. +// +// Returns the tags that are associated with the AWS re:Post Private resource +// specified by the resourceArn. The only resource that can be tagged is a private +// re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/ListTagsForResource +func (c *Repostspace) 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 *Repostspace) 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 opRegisterAdmin = "RegisterAdmin" + +// RegisterAdminRequest generates a "aws/request.Request" representing the +// client's request for the RegisterAdmin 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 RegisterAdmin for more information on using the RegisterAdmin +// 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 RegisterAdminRequest method. +// req, resp := client.RegisterAdminRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/RegisterAdmin +func (c *Repostspace) RegisterAdminRequest(input *RegisterAdminInput) (req *request.Request, output *RegisterAdminOutput) { + op := &request.Operation{ + Name: opRegisterAdmin, + HTTPMethod: "POST", + HTTPPath: "/spaces/{spaceId}/admins/{adminId}", + } + + if input == nil { + input = &RegisterAdminInput{} + } + + output = &RegisterAdminOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// RegisterAdmin API operation for AWS re:Post Private. +// +// Adds a user or group to the list of administrators of the private re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation RegisterAdmin for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/RegisterAdmin +func (c *Repostspace) RegisterAdmin(input *RegisterAdminInput) (*RegisterAdminOutput, error) { + req, out := c.RegisterAdminRequest(input) + return out, req.Send() +} + +// RegisterAdminWithContext is the same as RegisterAdmin with the addition of +// the ability to pass a context and additional request options. +// +// See RegisterAdmin 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 *Repostspace) RegisterAdminWithContext(ctx aws.Context, input *RegisterAdminInput, opts ...request.Option) (*RegisterAdminOutput, error) { + req, out := c.RegisterAdminRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opSendInvites = "SendInvites" + +// SendInvitesRequest generates a "aws/request.Request" representing the +// client's request for the SendInvites 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 SendInvites for more information on using the SendInvites +// 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 SendInvitesRequest method. +// req, resp := client.SendInvitesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/SendInvites +func (c *Repostspace) SendInvitesRequest(input *SendInvitesInput) (req *request.Request, output *SendInvitesOutput) { + op := &request.Operation{ + Name: opSendInvites, + HTTPMethod: "POST", + HTTPPath: "/spaces/{spaceId}/invite", + } + + if input == nil { + input = &SendInvitesInput{} + } + + output = &SendInvitesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// SendInvites API operation for AWS re:Post Private. +// +// Sends an invitation email to selected users and groups. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation SendInvites for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/SendInvites +func (c *Repostspace) SendInvites(input *SendInvitesInput) (*SendInvitesOutput, error) { + req, out := c.SendInvitesRequest(input) + return out, req.Send() +} + +// SendInvitesWithContext is the same as SendInvites with the addition of +// the ability to pass a context and additional request options. +// +// See SendInvites 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 *Repostspace) SendInvitesWithContext(ctx aws.Context, input *SendInvitesInput, opts ...request.Option) (*SendInvitesOutput, error) { + req, out := c.SendInvitesRequest(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/repostspace-2022-05-13/TagResource +func (c *Repostspace) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS re:Post Private. +// +// Associates tags with an AWS re:Post Private resource. Currently, the only +// resource that can be tagged is the private re:Post. If you specify a new +// tag key for the resource, the tag is appended to the list of tags that are +// associated with the resource. If you specify a tag key that’s already associated +// with the resource, the new tag value that you specify replaces the previous +// value for that tag. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/TagResource +func (c *Repostspace) 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 *Repostspace) 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/repostspace-2022-05-13/UntagResource +func (c *Repostspace) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS re:Post Private. +// +// Removes the association of the tag with the AWS re:Post Private resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/UntagResource +func (c *Repostspace) 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 *Repostspace) 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 opUpdateSpace = "UpdateSpace" + +// UpdateSpaceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSpace 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 UpdateSpace for more information on using the UpdateSpace +// 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 UpdateSpaceRequest method. +// req, resp := client.UpdateSpaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/UpdateSpace +func (c *Repostspace) UpdateSpaceRequest(input *UpdateSpaceInput) (req *request.Request, output *UpdateSpaceOutput) { + op := &request.Operation{ + Name: opUpdateSpace, + HTTPMethod: "PUT", + HTTPPath: "/spaces/{spaceId}", + } + + if input == nil { + input = &UpdateSpaceInput{} + } + + output = &UpdateSpaceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateSpace API operation for AWS re:Post Private. +// +// Modifies an existing AWS re:Post Private private re:Post. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS re:Post Private's +// API operation UpdateSpace for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13/UpdateSpace +func (c *Repostspace) UpdateSpace(input *UpdateSpaceInput) (*UpdateSpaceOutput, error) { + req, out := c.UpdateSpaceRequest(input) + return out, req.Send() +} + +// UpdateSpaceWithContext is the same as UpdateSpace with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSpace 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 *Repostspace) UpdateSpaceWithContext(ctx aws.Context, input *UpdateSpaceInput, opts ...request.Option) (*UpdateSpaceOutput, error) { + req, out := c.UpdateSpaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// User does not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Updating or deleting a resource can cause an inconsistent state. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The ID of the resource. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of the resource. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateSpaceInput struct { + _ struct{} `type:"structure"` + + // A description for the private re:Post. This is used only to help you identify + // this private re:Post. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSpaceInput's + // String and GoString methods. + Description *string `locationName:"description" min:"1" type:"string" sensitive:"true"` + + // The name for the private re:Post. This must be unique in your account. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSpaceInput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The IAM role that grants permissions to the private re:Post to convert unanswered + // questions into AWS support tickets. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` + + // The subdomain that you use to access your AWS re:Post Private private re:Post. + // All custom subdomains must be approved by AWS before use. In addition to + // your custom subdomain, all private re:Posts are issued an AWS generated subdomain + // for immediate use. + // + // Subdomain is a required field + Subdomain *string `locationName:"subdomain" min:"1" type:"string" required:"true"` + + // The list of tags associated with the private re:Post. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateSpaceInput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` + + // The pricing tier for the private re:Post. + // + // Tier is a required field + Tier *string `locationName:"tier" type:"string" required:"true" enum:"TierLevel"` + + // The AWS KMS key ARN that’s used for the AWS KMS encryption. If you don't + // provide a key, your data is encrypted by default with a key that AWS owns + // and manages for you. + UserKMSKey *string `locationName:"userKMSKey" 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 CreateSpaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSpaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSpaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSpaceInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + if s.Subdomain == nil { + invalidParams.Add(request.NewErrParamRequired("Subdomain")) + } + if s.Subdomain != nil && len(*s.Subdomain) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Subdomain", 1)) + } + if s.Tier == nil { + invalidParams.Add(request.NewErrParamRequired("Tier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateSpaceInput) SetDescription(v string) *CreateSpaceInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateSpaceInput) SetName(v string) *CreateSpaceInput { + s.Name = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateSpaceInput) SetRoleArn(v string) *CreateSpaceInput { + s.RoleArn = &v + return s +} + +// SetSubdomain sets the Subdomain field's value. +func (s *CreateSpaceInput) SetSubdomain(v string) *CreateSpaceInput { + s.Subdomain = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateSpaceInput) SetTags(v map[string]*string) *CreateSpaceInput { + s.Tags = v + return s +} + +// SetTier sets the Tier field's value. +func (s *CreateSpaceInput) SetTier(v string) *CreateSpaceInput { + s.Tier = &v + return s +} + +// SetUserKMSKey sets the UserKMSKey field's value. +func (s *CreateSpaceInput) SetUserKMSKey(v string) *CreateSpaceInput { + s.UserKMSKey = &v + return s +} + +type CreateSpaceOutput struct { + _ struct{} `type:"structure"` + + // The unique ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `locationName:"spaceId" 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 CreateSpaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSpaceOutput) GoString() string { + return s.String() +} + +// SetSpaceId sets the SpaceId field's value. +func (s *CreateSpaceOutput) SetSpaceId(v string) *CreateSpaceOutput { + s.SpaceId = &v + return s +} + +type DeleteSpaceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The unique ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `location:"uri" locationName:"spaceId" 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 DeleteSpaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSpaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSpaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSpaceInput"} + if s.SpaceId == nil { + invalidParams.Add(request.NewErrParamRequired("SpaceId")) + } + if s.SpaceId != nil && len(*s.SpaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SpaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSpaceId sets the SpaceId field's value. +func (s *DeleteSpaceInput) SetSpaceId(v string) *DeleteSpaceInput { + s.SpaceId = &v + return s +} + +type DeleteSpaceOutput 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 DeleteSpaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSpaceOutput) GoString() string { + return s.String() +} + +type DeregisterAdminInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the admin to remove. + // + // AdminId is a required field + AdminId *string `location:"uri" locationName:"adminId" type:"string" required:"true"` + + // The ID of the private re:Post to remove the admin from. + // + // SpaceId is a required field + SpaceId *string `location:"uri" locationName:"spaceId" 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 DeregisterAdminInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterAdminInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeregisterAdminInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeregisterAdminInput"} + if s.AdminId == nil { + invalidParams.Add(request.NewErrParamRequired("AdminId")) + } + if s.AdminId != nil && len(*s.AdminId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AdminId", 1)) + } + if s.SpaceId == nil { + invalidParams.Add(request.NewErrParamRequired("SpaceId")) + } + if s.SpaceId != nil && len(*s.SpaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SpaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdminId sets the AdminId field's value. +func (s *DeregisterAdminInput) SetAdminId(v string) *DeregisterAdminInput { + s.AdminId = &v + return s +} + +// SetSpaceId sets the SpaceId field's value. +func (s *DeregisterAdminInput) SetSpaceId(v string) *DeregisterAdminInput { + s.SpaceId = &v + return s +} + +type DeregisterAdminOutput 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 DeregisterAdminOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterAdminOutput) GoString() string { + return s.String() +} + +type GetSpaceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `location:"uri" locationName:"spaceId" 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 GetSpaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSpaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSpaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSpaceInput"} + if s.SpaceId == nil { + invalidParams.Add(request.NewErrParamRequired("SpaceId")) + } + if s.SpaceId != nil && len(*s.SpaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SpaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSpaceId sets the SpaceId field's value. +func (s *GetSpaceInput) SetSpaceId(v string) *GetSpaceInput { + s.SpaceId = &v + return s +} + +type GetSpaceOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the private re:Post. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The Identity Center identifier for the Application Instance. + // + // ClientId is a required field + ClientId *string `locationName:"clientId" type:"string" required:"true"` + + // The configuration status of the private re:Post. + // + // ConfigurationStatus is a required field + ConfigurationStatus *string `locationName:"configurationStatus" type:"string" required:"true" enum:"ConfigurationStatus"` + + // The content size of the private re:Post. + ContentSize *int64 `locationName:"contentSize" type:"long"` + + // The date when the private re:Post was created. + // + // CreateDateTime is a required field + CreateDateTime *time.Time `locationName:"createDateTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The IAM role that grants permissions to the private re:Post to convert unanswered + // questions into AWS support tickets. + CustomerRoleArn *string `locationName:"customerRoleArn" min:"20" type:"string"` + + // The date when the private re:Post was deleted. + DeleteDateTime *time.Time `locationName:"deleteDateTime" type:"timestamp" timestampFormat:"iso8601"` + + // The description of the private re:Post. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetSpaceOutput's + // String and GoString methods. + Description *string `locationName:"description" min:"1" type:"string" sensitive:"true"` + + // The list of groups that are administrators of the private re:Post. + GroupAdmins []*string `locationName:"groupAdmins" type:"list"` + + // The name of the private re:Post. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetSpaceOutput's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The AWS generated subdomain of the private re:Post + // + // RandomDomain is a required field + RandomDomain *string `locationName:"randomDomain" type:"string" required:"true"` + + // The unique ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `locationName:"spaceId" type:"string" required:"true"` + + // The creation or deletion status of the private re:Post. + // + // Status is a required field + Status *string `locationName:"status" min:"1" type:"string" required:"true"` + + // The storage limit of the private re:Post. + // + // StorageLimit is a required field + StorageLimit *int64 `locationName:"storageLimit" type:"long" required:"true"` + + // The pricing tier of the private re:Post. + // + // Tier is a required field + Tier *string `locationName:"tier" type:"string" required:"true" enum:"TierLevel"` + + // The list of users that are administrators of the private re:Post. + UserAdmins []*string `locationName:"userAdmins" type:"list"` + + // The number of users that have onboarded to the private re:Post. + UserCount *int64 `locationName:"userCount" type:"integer"` + + // The custom AWS KMS key ARN that’s used for the AWS KMS encryption. + UserKMSKey *string `locationName:"userKMSKey" type:"string"` + + // The custom subdomain that you use to access your private re:Post. All custom + // subdomains must be approved by AWS before use. + // + // VanityDomain is a required field + VanityDomain *string `locationName:"vanityDomain" type:"string" required:"true"` + + // The approval status of the custom subdomain. + // + // VanityDomainStatus is a required field + VanityDomainStatus *string `locationName:"vanityDomainStatus" type:"string" required:"true" enum:"VanityDomainStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSpaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSpaceOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetSpaceOutput) SetArn(v string) *GetSpaceOutput { + s.Arn = &v + return s +} + +// SetClientId sets the ClientId field's value. +func (s *GetSpaceOutput) SetClientId(v string) *GetSpaceOutput { + s.ClientId = &v + return s +} + +// SetConfigurationStatus sets the ConfigurationStatus field's value. +func (s *GetSpaceOutput) SetConfigurationStatus(v string) *GetSpaceOutput { + s.ConfigurationStatus = &v + return s +} + +// SetContentSize sets the ContentSize field's value. +func (s *GetSpaceOutput) SetContentSize(v int64) *GetSpaceOutput { + s.ContentSize = &v + return s +} + +// SetCreateDateTime sets the CreateDateTime field's value. +func (s *GetSpaceOutput) SetCreateDateTime(v time.Time) *GetSpaceOutput { + s.CreateDateTime = &v + return s +} + +// SetCustomerRoleArn sets the CustomerRoleArn field's value. +func (s *GetSpaceOutput) SetCustomerRoleArn(v string) *GetSpaceOutput { + s.CustomerRoleArn = &v + return s +} + +// SetDeleteDateTime sets the DeleteDateTime field's value. +func (s *GetSpaceOutput) SetDeleteDateTime(v time.Time) *GetSpaceOutput { + s.DeleteDateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetSpaceOutput) SetDescription(v string) *GetSpaceOutput { + s.Description = &v + return s +} + +// SetGroupAdmins sets the GroupAdmins field's value. +func (s *GetSpaceOutput) SetGroupAdmins(v []*string) *GetSpaceOutput { + s.GroupAdmins = v + return s +} + +// SetName sets the Name field's value. +func (s *GetSpaceOutput) SetName(v string) *GetSpaceOutput { + s.Name = &v + return s +} + +// SetRandomDomain sets the RandomDomain field's value. +func (s *GetSpaceOutput) SetRandomDomain(v string) *GetSpaceOutput { + s.RandomDomain = &v + return s +} + +// SetSpaceId sets the SpaceId field's value. +func (s *GetSpaceOutput) SetSpaceId(v string) *GetSpaceOutput { + s.SpaceId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetSpaceOutput) SetStatus(v string) *GetSpaceOutput { + s.Status = &v + return s +} + +// SetStorageLimit sets the StorageLimit field's value. +func (s *GetSpaceOutput) SetStorageLimit(v int64) *GetSpaceOutput { + s.StorageLimit = &v + return s +} + +// SetTier sets the Tier field's value. +func (s *GetSpaceOutput) SetTier(v string) *GetSpaceOutput { + s.Tier = &v + return s +} + +// SetUserAdmins sets the UserAdmins field's value. +func (s *GetSpaceOutput) SetUserAdmins(v []*string) *GetSpaceOutput { + s.UserAdmins = v + return s +} + +// SetUserCount sets the UserCount field's value. +func (s *GetSpaceOutput) SetUserCount(v int64) *GetSpaceOutput { + s.UserCount = &v + return s +} + +// SetUserKMSKey sets the UserKMSKey field's value. +func (s *GetSpaceOutput) SetUserKMSKey(v string) *GetSpaceOutput { + s.UserKMSKey = &v + return s +} + +// SetVanityDomain sets the VanityDomain field's value. +func (s *GetSpaceOutput) SetVanityDomain(v string) *GetSpaceOutput { + s.VanityDomain = &v + return s +} + +// SetVanityDomainStatus sets the VanityDomainStatus field's value. +func (s *GetSpaceOutput) SetVanityDomainStatus(v string) *GetSpaceOutput { + s.VanityDomainStatus = &v + return s +} + +// Unexpected error during processing of request. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // Advice to clients on when the call can be safely retried. + RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListSpacesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of private re:Posts to include in the results. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of private re:Posts to return. You receive this + // token from a previous ListSpaces operation. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSpacesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSpacesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSpacesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSpacesInput"} + 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 *ListSpacesInput) SetMaxResults(v int64) *ListSpacesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSpacesInput) SetNextToken(v string) *ListSpacesInput { + s.NextToken = &v + return s +} + +type ListSpacesOutput struct { + _ struct{} `type:"structure"` + + // The token that you use when you request the next set of private re:Posts. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of structures that contain some information about the private re:Posts + // in the account. + // + // Spaces is a required field + Spaces []*SpaceData `locationName:"spaces" 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 ListSpacesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSpacesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSpacesOutput) SetNextToken(v string) *ListSpacesOutput { + s.NextToken = &v + return s +} + +// SetSpaces sets the Spaces field's value. +func (s *ListSpacesOutput) SetSpaces(v []*SpaceData) *ListSpacesOutput { + s.Spaces = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource that the tags are associated with. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + + 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"` + + // The list of tags that are associated with the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListTagsForResourceOutput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type RegisterAdminInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the administrator. + // + // AdminId is a required field + AdminId *string `location:"uri" locationName:"adminId" type:"string" required:"true"` + + // The ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `location:"uri" locationName:"spaceId" 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 RegisterAdminInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterAdminInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegisterAdminInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegisterAdminInput"} + if s.AdminId == nil { + invalidParams.Add(request.NewErrParamRequired("AdminId")) + } + if s.AdminId != nil && len(*s.AdminId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AdminId", 1)) + } + if s.SpaceId == nil { + invalidParams.Add(request.NewErrParamRequired("SpaceId")) + } + if s.SpaceId != nil && len(*s.SpaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SpaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdminId sets the AdminId field's value. +func (s *RegisterAdminInput) SetAdminId(v string) *RegisterAdminInput { + s.AdminId = &v + return s +} + +// SetSpaceId sets the SpaceId field's value. +func (s *RegisterAdminInput) SetSpaceId(v string) *RegisterAdminInput { + s.SpaceId = &v + return s +} + +type RegisterAdminOutput 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 RegisterAdminOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterAdminOutput) GoString() string { + return s.String() +} + +// Request references a resource which does not exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The ID of the resource. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of the resource. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +type SendInvitesInput struct { + _ struct{} `type:"structure"` + + // The array of identifiers for the users and groups. + // + // AccessorIds is a required field + AccessorIds []*string `locationName:"accessorIds" type:"list" required:"true"` + + // The body of the invite. + // + // Body is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SendInvitesInput's + // String and GoString methods. + // + // Body is a required field + Body *string `locationName:"body" min:"1" type:"string" required:"true" sensitive:"true"` + + // The ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `location:"uri" locationName:"spaceId" type:"string" required:"true"` + + // The title of the invite. + // + // Title is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SendInvitesInput's + // String and GoString methods. + // + // Title is a required field + Title *string `locationName:"title" min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendInvitesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendInvitesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SendInvitesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SendInvitesInput"} + if s.AccessorIds == nil { + invalidParams.Add(request.NewErrParamRequired("AccessorIds")) + } + if s.Body == nil { + invalidParams.Add(request.NewErrParamRequired("Body")) + } + if s.Body != nil && len(*s.Body) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Body", 1)) + } + if s.SpaceId == nil { + invalidParams.Add(request.NewErrParamRequired("SpaceId")) + } + if s.SpaceId != nil && len(*s.SpaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SpaceId", 1)) + } + if s.Title == nil { + invalidParams.Add(request.NewErrParamRequired("Title")) + } + if s.Title != nil && len(*s.Title) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Title", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessorIds sets the AccessorIds field's value. +func (s *SendInvitesInput) SetAccessorIds(v []*string) *SendInvitesInput { + s.AccessorIds = v + return s +} + +// SetBody sets the Body field's value. +func (s *SendInvitesInput) SetBody(v string) *SendInvitesInput { + s.Body = &v + return s +} + +// SetSpaceId sets the SpaceId field's value. +func (s *SendInvitesInput) SetSpaceId(v string) *SendInvitesInput { + s.SpaceId = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *SendInvitesInput) SetTitle(v string) *SendInvitesInput { + s.Title = &v + return s +} + +type SendInvitesOutput 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 SendInvitesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SendInvitesOutput) GoString() string { + return s.String() +} + +// Request would cause a service quota to be exceeded. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The code to identify the quota. + // + // QuotaCode is a required field + QuotaCode *string `locationName:"quotaCode" type:"string" required:"true"` + + // The id of the resource. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of the resource. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` + + // The code to identify the service. + // + // ServiceCode is a required field + ServiceCode *string `locationName:"serviceCode" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A structure that contains some information about a private re:Post in the +// account. +type SpaceData struct { + _ struct{} `type:"structure"` + + // The ARN of the private re:Post. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The configuration status of the private re:Post. + // + // ConfigurationStatus is a required field + ConfigurationStatus *string `locationName:"configurationStatus" type:"string" required:"true" enum:"ConfigurationStatus"` + + // The content size of the private re:Post. + ContentSize *int64 `locationName:"contentSize" type:"long"` + + // The date when the private re:Post was created. + // + // CreateDateTime is a required field + CreateDateTime *time.Time `locationName:"createDateTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The date when the private re:Post was deleted. + DeleteDateTime *time.Time `locationName:"deleteDateTime" type:"timestamp" timestampFormat:"iso8601"` + + // The description for the private re:Post. This is used only to help you identify + // this private re:Post. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SpaceData's + // String and GoString methods. + Description *string `locationName:"description" min:"1" type:"string" sensitive:"true"` + + // The name for the private re:Post. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SpaceData's + // String and GoString methods. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true" sensitive:"true"` + + // The AWS generated subdomain of the private re:Post. + // + // RandomDomain is a required field + RandomDomain *string `locationName:"randomDomain" type:"string" required:"true"` + + // The unique ID of the private re:Post. + // + // SpaceId is a required field + SpaceId *string `locationName:"spaceId" type:"string" required:"true"` + + // The creation/deletion status of the private re:Post. + // + // Status is a required field + Status *string `locationName:"status" min:"1" type:"string" required:"true"` + + // The storage limit of the private re:Post. + // + // StorageLimit is a required field + StorageLimit *int64 `locationName:"storageLimit" type:"long" required:"true"` + + // The pricing tier of the private re:Post. + // + // Tier is a required field + Tier *string `locationName:"tier" type:"string" required:"true" enum:"TierLevel"` + + // The number of onboarded users to the private re:Post. + UserCount *int64 `locationName:"userCount" type:"integer"` + + // The custom AWS KMS key ARN that’s used for the AWS KMS encryption. + UserKMSKey *string `locationName:"userKMSKey" type:"string"` + + // This custom subdomain that you use to access your private re:Post. All custom + // subdomains must be approved by AWS before use. + // + // VanityDomain is a required field + VanityDomain *string `locationName:"vanityDomain" type:"string" required:"true"` + + // This approval status of the custom subdomain. + // + // VanityDomainStatus is a required field + VanityDomainStatus *string `locationName:"vanityDomainStatus" type:"string" required:"true" enum:"VanityDomainStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceData) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *SpaceData) SetArn(v string) *SpaceData { + s.Arn = &v + return s +} + +// SetConfigurationStatus sets the ConfigurationStatus field's value. +func (s *SpaceData) SetConfigurationStatus(v string) *SpaceData { + s.ConfigurationStatus = &v + return s +} + +// SetContentSize sets the ContentSize field's value. +func (s *SpaceData) SetContentSize(v int64) *SpaceData { + s.ContentSize = &v + return s +} + +// SetCreateDateTime sets the CreateDateTime field's value. +func (s *SpaceData) SetCreateDateTime(v time.Time) *SpaceData { + s.CreateDateTime = &v + return s +} + +// SetDeleteDateTime sets the DeleteDateTime field's value. +func (s *SpaceData) SetDeleteDateTime(v time.Time) *SpaceData { + s.DeleteDateTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *SpaceData) SetDescription(v string) *SpaceData { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *SpaceData) SetName(v string) *SpaceData { + s.Name = &v + return s +} + +// SetRandomDomain sets the RandomDomain field's value. +func (s *SpaceData) SetRandomDomain(v string) *SpaceData { + s.RandomDomain = &v + return s +} + +// SetSpaceId sets the SpaceId field's value. +func (s *SpaceData) SetSpaceId(v string) *SpaceData { + s.SpaceId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SpaceData) SetStatus(v string) *SpaceData { + s.Status = &v + return s +} + +// SetStorageLimit sets the StorageLimit field's value. +func (s *SpaceData) SetStorageLimit(v int64) *SpaceData { + s.StorageLimit = &v + return s +} + +// SetTier sets the Tier field's value. +func (s *SpaceData) SetTier(v string) *SpaceData { + s.Tier = &v + return s +} + +// SetUserCount sets the UserCount field's value. +func (s *SpaceData) SetUserCount(v int64) *SpaceData { + s.UserCount = &v + return s +} + +// SetUserKMSKey sets the UserKMSKey field's value. +func (s *SpaceData) SetUserKMSKey(v string) *SpaceData { + s.UserKMSKey = &v + return s +} + +// SetVanityDomain sets the VanityDomain field's value. +func (s *SpaceData) SetVanityDomain(v string) *SpaceData { + s.VanityDomain = &v + return s +} + +// SetVanityDomainStatus sets the VanityDomainStatus field's value. +func (s *SpaceData) SetVanityDomainStatus(v string) *SpaceData { + s.VanityDomainStatus = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource that the tag is associated with. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // The list of tag keys and values that must be associated with the resource. + // You can associate tag keys only, tags (key and values) only, or a combination + // of tag keys and tags. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TagResourceInput's + // String and GoString methods. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// Request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The code to identify the quota. + QuotaCode *string `locationName:"quotaCode" type:"string"` + + // Advice to clients on when the call can be safely retried. + RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` + + // The code to identify the service. + ServiceCode *string `locationName:"serviceCode" 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 +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // The key values of the tag. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateSpaceInput struct { + _ struct{} `type:"structure"` + + // A description for the private re:Post. This is used only to help you identify + // this private re:Post. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateSpaceInput's + // String and GoString methods. + Description *string `locationName:"description" min:"1" type:"string" sensitive:"true"` + + // The IAM role that grants permissions to the private re:Post to convert unanswered + // questions into AWS support tickets. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` + + // The unique ID of this private re:Post. + // + // SpaceId is a required field + SpaceId *string `location:"uri" locationName:"spaceId" type:"string" required:"true"` + + // The pricing tier of this private re:Post. + Tier *string `locationName:"tier" type:"string" enum:"TierLevel"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSpaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSpaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSpaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSpaceInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + if s.SpaceId == nil { + invalidParams.Add(request.NewErrParamRequired("SpaceId")) + } + if s.SpaceId != nil && len(*s.SpaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SpaceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateSpaceInput) SetDescription(v string) *UpdateSpaceInput { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateSpaceInput) SetRoleArn(v string) *UpdateSpaceInput { + s.RoleArn = &v + return s +} + +// SetSpaceId sets the SpaceId field's value. +func (s *UpdateSpaceInput) SetSpaceId(v string) *UpdateSpaceInput { + s.SpaceId = &v + return s +} + +// SetTier sets the Tier field's value. +func (s *UpdateSpaceInput) SetTier(v string) *UpdateSpaceInput { + s.Tier = &v + return s +} + +type UpdateSpaceOutput 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 UpdateSpaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSpaceOutput) GoString() string { + return s.String() +} + +// The input fails to satisfy the constraints specified by an AWS service. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The field that caused the error, if applicable. + FieldList []*ValidationExceptionField `locationName:"fieldList" type:"list"` + + Message_ *string `locationName:"message" type:"string"` + + // The reason why the request failed validation. + // + // Reason is a required field + Reason *string `locationName:"reason" type:"string" required:"true" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Stores information about a field that’s passed inside a request that resulted +// in an exception. +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // The name of the field. + // + // Message is a required field + Message *string `locationName:"message" type:"string" required:"true"` + + // Message describing why the field failed validation. + // + // Name is a required field + Name *string `locationName:"name" 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 ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +const ( + // ConfigurationStatusConfigured is a ConfigurationStatus enum value + ConfigurationStatusConfigured = "CONFIGURED" + + // ConfigurationStatusUnconfigured is a ConfigurationStatus enum value + ConfigurationStatusUnconfigured = "UNCONFIGURED" +) + +// ConfigurationStatus_Values returns all elements of the ConfigurationStatus enum +func ConfigurationStatus_Values() []string { + return []string{ + ConfigurationStatusConfigured, + ConfigurationStatusUnconfigured, + } +} + +const ( + // TierLevelBasic is a TierLevel enum value + TierLevelBasic = "BASIC" + + // TierLevelStandard is a TierLevel enum value + TierLevelStandard = "STANDARD" +) + +// TierLevel_Values returns all elements of the TierLevel enum +func TierLevel_Values() []string { + return []string{ + TierLevelBasic, + TierLevelStandard, + } +} + +const ( + // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownOperation = "unknownOperation" + + // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value + ValidationExceptionReasonCannotParse = "cannotParse" + + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "fieldValidationFailed" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "other" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonUnknownOperation, + ValidationExceptionReasonCannotParse, + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonOther, + } +} + +const ( + // VanityDomainStatusPending is a VanityDomainStatus enum value + VanityDomainStatusPending = "PENDING" + + // VanityDomainStatusApproved is a VanityDomainStatus enum value + VanityDomainStatusApproved = "APPROVED" + + // VanityDomainStatusUnapproved is a VanityDomainStatus enum value + VanityDomainStatusUnapproved = "UNAPPROVED" +) + +// VanityDomainStatus_Values returns all elements of the VanityDomainStatus enum +func VanityDomainStatus_Values() []string { + return []string{ + VanityDomainStatusPending, + VanityDomainStatusApproved, + VanityDomainStatusUnapproved, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,37 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package repostspace provides the client and types for making API +// requests to AWS re:Post Private. +// +// AWS re:Post Private is a private version of AWS re:Post for enterprises with +// Enterprise Support or Enterprise On-Ramp Support plans. It provides access +// to knowledge and experts to accelerate cloud adoption and increase developer +// productivity. With your organization-specific private re:Post, you can build +// an organization-specific developer community that drives efficiencies at +// scale and provides access to valuable knowledge resources. Additionally, +// re:Post Private centralizes trusted AWS technical content and offers private +// discussion forums to improve how your teams collaborate internally and with +// AWS to remove technical obstacles, accelerate innovation, and scale more +// efficiently in the cloud. +// +// See https://docs.aws.amazon.com/goto/WebAPI/repostspace-2022-05-13 for more information on this service. +// +// See repostspace package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/repostspace/ +// +// # Using the Client +// +// To contact AWS re:Post Private with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS re:Post Private client Repostspace for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/repostspace/#New +package repostspace diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,62 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package repostspace + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // User does not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Updating or deleting a resource can cause an inconsistent state. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // Unexpected error during processing of request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Request references a resource which does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Request would cause a service quota to be exceeded. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // Request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an AWS service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/repostspaceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/repostspaceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/repostspaceiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/repostspaceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,111 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package repostspaceiface provides an interface to enable mocking the AWS re:Post Private 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 repostspaceiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/repostspace" +) + +// RepostspaceAPI provides an interface to enable mocking the +// repostspace.Repostspace service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS re:Post Private. +// func myFunc(svc repostspaceiface.RepostspaceAPI) bool { +// // Make svc.CreateSpace request +// } +// +// func main() { +// sess := session.New() +// svc := repostspace.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockRepostspaceClient struct { +// repostspaceiface.RepostspaceAPI +// } +// func (m *mockRepostspaceClient) CreateSpace(input *repostspace.CreateSpaceInput) (*repostspace.CreateSpaceOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockRepostspaceClient{} +// +// 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 RepostspaceAPI interface { + CreateSpace(*repostspace.CreateSpaceInput) (*repostspace.CreateSpaceOutput, error) + CreateSpaceWithContext(aws.Context, *repostspace.CreateSpaceInput, ...request.Option) (*repostspace.CreateSpaceOutput, error) + CreateSpaceRequest(*repostspace.CreateSpaceInput) (*request.Request, *repostspace.CreateSpaceOutput) + + DeleteSpace(*repostspace.DeleteSpaceInput) (*repostspace.DeleteSpaceOutput, error) + DeleteSpaceWithContext(aws.Context, *repostspace.DeleteSpaceInput, ...request.Option) (*repostspace.DeleteSpaceOutput, error) + DeleteSpaceRequest(*repostspace.DeleteSpaceInput) (*request.Request, *repostspace.DeleteSpaceOutput) + + DeregisterAdmin(*repostspace.DeregisterAdminInput) (*repostspace.DeregisterAdminOutput, error) + DeregisterAdminWithContext(aws.Context, *repostspace.DeregisterAdminInput, ...request.Option) (*repostspace.DeregisterAdminOutput, error) + DeregisterAdminRequest(*repostspace.DeregisterAdminInput) (*request.Request, *repostspace.DeregisterAdminOutput) + + GetSpace(*repostspace.GetSpaceInput) (*repostspace.GetSpaceOutput, error) + GetSpaceWithContext(aws.Context, *repostspace.GetSpaceInput, ...request.Option) (*repostspace.GetSpaceOutput, error) + GetSpaceRequest(*repostspace.GetSpaceInput) (*request.Request, *repostspace.GetSpaceOutput) + + ListSpaces(*repostspace.ListSpacesInput) (*repostspace.ListSpacesOutput, error) + ListSpacesWithContext(aws.Context, *repostspace.ListSpacesInput, ...request.Option) (*repostspace.ListSpacesOutput, error) + ListSpacesRequest(*repostspace.ListSpacesInput) (*request.Request, *repostspace.ListSpacesOutput) + + ListSpacesPages(*repostspace.ListSpacesInput, func(*repostspace.ListSpacesOutput, bool) bool) error + ListSpacesPagesWithContext(aws.Context, *repostspace.ListSpacesInput, func(*repostspace.ListSpacesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*repostspace.ListTagsForResourceInput) (*repostspace.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *repostspace.ListTagsForResourceInput, ...request.Option) (*repostspace.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*repostspace.ListTagsForResourceInput) (*request.Request, *repostspace.ListTagsForResourceOutput) + + RegisterAdmin(*repostspace.RegisterAdminInput) (*repostspace.RegisterAdminOutput, error) + RegisterAdminWithContext(aws.Context, *repostspace.RegisterAdminInput, ...request.Option) (*repostspace.RegisterAdminOutput, error) + RegisterAdminRequest(*repostspace.RegisterAdminInput) (*request.Request, *repostspace.RegisterAdminOutput) + + SendInvites(*repostspace.SendInvitesInput) (*repostspace.SendInvitesOutput, error) + SendInvitesWithContext(aws.Context, *repostspace.SendInvitesInput, ...request.Option) (*repostspace.SendInvitesOutput, error) + SendInvitesRequest(*repostspace.SendInvitesInput) (*request.Request, *repostspace.SendInvitesOutput) + + TagResource(*repostspace.TagResourceInput) (*repostspace.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *repostspace.TagResourceInput, ...request.Option) (*repostspace.TagResourceOutput, error) + TagResourceRequest(*repostspace.TagResourceInput) (*request.Request, *repostspace.TagResourceOutput) + + UntagResource(*repostspace.UntagResourceInput) (*repostspace.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *repostspace.UntagResourceInput, ...request.Option) (*repostspace.UntagResourceOutput, error) + UntagResourceRequest(*repostspace.UntagResourceInput) (*request.Request, *repostspace.UntagResourceOutput) + + UpdateSpace(*repostspace.UpdateSpaceInput) (*repostspace.UpdateSpaceOutput, error) + UpdateSpaceWithContext(aws.Context, *repostspace.UpdateSpaceInput, ...request.Option) (*repostspace.UpdateSpaceOutput, error) + UpdateSpaceRequest(*repostspace.UpdateSpaceInput) (*request.Request, *repostspace.UpdateSpaceOutput) +} + +var _ RepostspaceAPI = (*repostspace.Repostspace)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/service.go golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/repostspace/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/repostspace/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package repostspace + +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/restjson" +) + +// Repostspace provides the API operation methods for making requests to +// AWS re:Post Private. See this package's package overview docs +// for details on the service. +// +// Repostspace methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type Repostspace 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 = "repostspace" // Name of service. + EndpointsID = ServiceName // ID to lookup a service endpoint with. + ServiceID = "repostspace" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the Repostspace 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 Repostspace client from just a session. +// svc := repostspace.New(mySession) +// +// // Create a Repostspace client with additional configuration +// svc := repostspace.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *Repostspace { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "repostspace" + } + 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) *Repostspace { + svc := &Repostspace{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2022-05-13", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a Repostspace operation and runs any +// custom request initialization. +func (c *Repostspace) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/resiliencehub/api.go golang-github-aws-aws-sdk-go-1.48.14/service/resiliencehub/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/resiliencehub/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/resiliencehub/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -56,8 +56,13 @@ // AddDraftAppVersionResourceMappings API operation for AWS Resilience Hub. // -// Adds the resource mapping for the draft application version. You can also -// update an existing resource mapping to a new physical resource. +// Adds the source of resource-maps to the draft version of an application. +// During assessment, Resilience Hub will use these resource-maps to resolve +// the latest physical ID for each resource in the application template. For +// more information about different types of resources suported by Resilience +// Hub and how to add them in your application, see Step 2: How is your application +// managed? (https://docs.aws.amazon.com/resilience-hub/latest/userguide/how-app-manage.html) +// in the Resilience Hub User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -708,6 +713,13 @@ // // Creates a resiliency policy for an application. // +// Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs +// of your resiliency policy. But, while assessing your application, the lowest +// possible assessment result is near zero. Hence, if you provide value zero +// for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload +// RPO result will be near zero and the Compliance status for your application +// will be set to Policy breached. +// // 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. @@ -6361,6 +6373,13 @@ // // Updates a resiliency policy. // +// Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs +// of your resiliency policy. But, while assessing your application, the lowest +// possible assessment result is near zero. Hence, if you provide value zero +// for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload +// RPO result will be near zero and the Compliance status for your application +// will be set to Policy breached. +// // 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. @@ -6489,7 +6508,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -6566,7 +6585,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -6652,6 +6671,9 @@ // RecommendationId is a required field RecommendationId *string `locationName:"recommendationId" type:"string" required:"true"` + // Status of the recommended Amazon CloudWatch alarm. + RecommendationStatus *string `locationName:"recommendationStatus" type:"string" enum:"RecommendationStatus"` + // Reference identifier of the alarm recommendation. // // ReferenceId is a required field @@ -6723,6 +6745,12 @@ return s } +// SetRecommendationStatus sets the RecommendationStatus field's value. +func (s *AlarmRecommendation) SetRecommendationStatus(v string) *AlarmRecommendation { + s.RecommendationStatus = &v + return s +} + // SetReferenceId sets the ReferenceId field's value. func (s *AlarmRecommendation) SetReferenceId(v string) *AlarmRecommendation { s.ReferenceId = &v @@ -6742,7 +6770,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -6753,7 +6781,7 @@ // Current status of compliance for the resiliency policy. ComplianceStatus *string `locationName:"complianceStatus" type:"string" enum:"AppComplianceStatusType"` - // Timestamp for when the app was created. + // Date and time when the app was created. // // CreationTime is a required field CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` @@ -6770,13 +6798,13 @@ // and Scheduled assessment failure events. EventSubscriptions []*EventSubscription `locationName:"eventSubscriptions" type:"list"` - // Timestamp for the most recent compliance evaluation. + // Date and time the most recent compliance evaluation. LastAppComplianceEvaluationTime *time.Time `locationName:"lastAppComplianceEvaluationTime" type:"timestamp"` // Indicates the last time that a drift was evaluated. LastDriftEvaluationTime *time.Time `locationName:"lastDriftEvaluationTime" type:"timestamp"` - // Timestamp for the most recent resiliency score evaluation. + // Date and time the most recent resiliency score evaluation. LastResiliencyScoreEvaluationTime *time.Time `locationName:"lastResiliencyScoreEvaluationTime" type:"timestamp"` // Name for the application. @@ -6791,12 +6819,18 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. PolicyArn *string `locationName:"policyArn" type:"string"` // Current resiliency score for the application. ResiliencyScore *float64 `locationName:"resiliencyScore" type:"double"` + // Recovery Point Objective (RPO) in seconds. + RpoInSecs *int64 `locationName:"rpoInSecs" type:"integer"` + + // Recovery Time Objective (RTO) in seconds. + RtoInSecs *int64 `locationName:"rtoInSecs" type:"integer"` + // Status of the application. Status *string `locationName:"status" type:"string" enum:"AppStatusType"` @@ -6911,6 +6945,18 @@ return s } +// SetRpoInSecs sets the RpoInSecs field's value. +func (s *App) SetRpoInSecs(v int64) *App { + s.RpoInSecs = &v + return s +} + +// SetRtoInSecs sets the RtoInSecs field's value. +func (s *App) SetRtoInSecs(v int64) *App { + s.RtoInSecs = &v + return s +} + // SetStatus sets the Status field's value. func (s *App) SetStatus(v string) *App { s.Status = &v @@ -6930,7 +6976,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `locationName:"appArn" type:"string"` // Version of an application. @@ -6939,7 +6985,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -7134,7 +7180,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `locationName:"appArn" type:"string"` // Version of an application. @@ -7143,7 +7189,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -7455,7 +7501,7 @@ // The Amazon Resource Name (ARN) of the input source. For more information // about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. SourceArn *string `locationName:"sourceArn" type:"string"` // The name of the input source. @@ -7526,7 +7572,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -7537,7 +7583,7 @@ // The current status of compliance for the resiliency policy. ComplianceStatus *string `locationName:"complianceStatus" type:"string" enum:"AppComplianceStatusType"` - // The timestamp for when the app was created. + // Date and time when the app was created. // // CreationTime is a required field CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` @@ -7549,6 +7595,9 @@ // assessment for your application. DriftStatus *string `locationName:"driftStatus" type:"string" enum:"AppDriftStatusType"` + // Date and time of the most recent compliance evaluation. + LastAppComplianceEvaluationTime *time.Time `locationName:"lastAppComplianceEvaluationTime" type:"timestamp"` + // The name of the application. // // Name is a required field @@ -7557,6 +7606,12 @@ // The current resiliency score for the application. ResiliencyScore *float64 `locationName:"resiliencyScore" type:"double"` + // Recovery Point Objective (RPO) in seconds. + RpoInSecs *int64 `locationName:"rpoInSecs" type:"integer"` + + // Recovery Time Objective (RTO) in seconds. + RtoInSecs *int64 `locationName:"rtoInSecs" type:"integer"` + // Status of the application. Status *string `locationName:"status" type:"string" enum:"AppStatusType"` } @@ -7615,6 +7670,12 @@ return s } +// SetLastAppComplianceEvaluationTime sets the LastAppComplianceEvaluationTime field's value. +func (s *AppSummary) SetLastAppComplianceEvaluationTime(v time.Time) *AppSummary { + s.LastAppComplianceEvaluationTime = &v + return s +} + // SetName sets the Name field's value. func (s *AppSummary) SetName(v string) *AppSummary { s.Name = &v @@ -7627,6 +7688,18 @@ return s } +// SetRpoInSecs sets the RpoInSecs field's value. +func (s *AppSummary) SetRpoInSecs(v int64) *AppSummary { + s.RpoInSecs = &v + return s +} + +// SetRtoInSecs sets the RtoInSecs field's value. +func (s *AppSummary) SetRtoInSecs(v int64) *AppSummary { + s.RtoInSecs = &v + return s +} + // SetStatus sets the Status field's value. func (s *AppSummary) SetStatus(v string) *AppSummary { s.Status = &v @@ -7747,7 +7820,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -7824,7 +7897,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -8417,7 +8490,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. PolicyArn *string `locationName:"policyArn" type:"string"` // Tags assigned to the resource. A tag is a label that you assign to an Amazon @@ -8572,7 +8645,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -8688,7 +8761,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -8747,7 +8820,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -8911,7 +8984,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -8969,7 +9042,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -9328,7 +9401,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -9391,7 +9464,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -9438,7 +9511,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -9510,7 +9583,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -9527,7 +9600,7 @@ // The Amazon Resource Name (ARN) of the imported resource you want to remove // from the Resilience Hub application. For more information about ARNs, see // Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. SourceArn *string `locationName:"sourceArn" type:"string"` // The imported Terraform s3 state file you want to remove from the Resilience @@ -9615,7 +9688,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `locationName:"appArn" type:"string"` // Name of the input source from where the application resource is imported @@ -9659,7 +9732,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -9695,7 +9768,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -9775,7 +9848,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -9831,7 +9904,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -9947,7 +10020,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10114,7 +10187,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // PolicyArn is a required field PolicyArn *string `locationName:"policyArn" type:"string" required:"true"` @@ -10172,7 +10245,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // PolicyArn is a required field PolicyArn *string `locationName:"policyArn" type:"string" required:"true"` @@ -10208,7 +10281,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -10292,7 +10365,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10375,7 +10448,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10455,7 +10528,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10511,7 +10584,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10582,7 +10655,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10635,7 +10708,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10751,7 +10824,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10809,7 +10882,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10884,7 +10957,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -10962,7 +11035,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -11025,7 +11098,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -11149,7 +11222,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -11198,7 +11271,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -11216,7 +11289,7 @@ // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"ResourceImportStatusType"` - // The timestamp for when the status last changed. + // The time when the status last changed. // // StatusChangeTime is a required field StatusChangeTime *time.Time `locationName:"statusChangeTime" type:"timestamp" required:"true"` @@ -11276,7 +11349,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // PolicyArn is a required field PolicyArn *string `locationName:"policyArn" type:"string" required:"true"` @@ -11477,7 +11550,7 @@ // Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. // The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // EksClusterArn is a required field EksClusterArn *string `locationName:"eksClusterArn" type:"string" required:"true"` @@ -11543,7 +11616,7 @@ // Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. // The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // EksClusterArn is a required field EksClusterArn *string `locationName:"eksClusterArn" type:"string" required:"true"` @@ -11623,9 +11696,9 @@ Name *string `locationName:"name" min:"1" type:"string" required:"true"` // Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. - // The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. + // The format for this ARN is: arn:partition:sns:region:account:topic-name. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. SnsTopicArn *string `locationName:"snsTopicArn" type:"string"` } @@ -11688,12 +11761,12 @@ type FailurePolicy struct { _ struct{} `type:"structure"` - // The Recovery Point Objective (RPO), in seconds. + // Recovery Point Objective (RPO) in seconds. // // RpoInSecs is a required field RpoInSecs *int64 `locationName:"rpoInSecs" type:"integer" required:"true"` - // The Recovery Time Objective (RTO), in seconds. + // Recovery Time Objective (RTO) in seconds. // // RtoInSecs is a required field RtoInSecs *int64 `locationName:"rtoInSecs" type:"integer" required:"true"` @@ -11751,7 +11824,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -11858,7 +11931,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -12009,7 +12082,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -12126,7 +12199,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -12241,7 +12314,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `location:"querystring" locationName:"appArn" type:"string"` // The name for the assessment. @@ -12402,7 +12475,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -12518,7 +12591,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -12634,7 +12707,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -12760,7 +12833,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -12845,7 +12918,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -12910,7 +12983,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -13042,7 +13115,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -13193,7 +13266,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -13325,9 +13398,13 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `location:"querystring" locationName:"appArn" type:"string"` + // Indicates the lower limit of the range that is used to filter applications + // based on their last assessment times. + FromLastAssessmentTime *time.Time `location:"querystring" locationName:"fromLastAssessmentTime" type:"timestamp"` + // Maximum number of results to include in the response. If more results exist // than the specified MaxResults value, a token is included in the response // so that the remaining results can be retrieved. @@ -13338,6 +13415,15 @@ // Null, or the token from a previous call to get the next set of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The application list is sorted based on the values of lastAppComplianceEvaluationTime + // field. By default, application list is sorted in ascending order. To sort + // the appliation list in descending order, set this field to True. + ReverseOrder *bool `location:"querystring" locationName:"reverseOrder" type:"boolean"` + + // Indicates the upper limit of the range that is used to filter the applications + // based on their last assessment times. + ToLastAssessmentTime *time.Time `location:"querystring" locationName:"toLastAssessmentTime" type:"timestamp"` } // String returns the string representation. @@ -13377,6 +13463,12 @@ return s } +// SetFromLastAssessmentTime sets the FromLastAssessmentTime field's value. +func (s *ListAppsInput) SetFromLastAssessmentTime(v time.Time) *ListAppsInput { + s.FromLastAssessmentTime = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListAppsInput) SetMaxResults(v int64) *ListAppsInput { s.MaxResults = &v @@ -13395,6 +13487,18 @@ return s } +// SetReverseOrder sets the ReverseOrder field's value. +func (s *ListAppsInput) SetReverseOrder(v bool) *ListAppsInput { + s.ReverseOrder = &v + return s +} + +// SetToLastAssessmentTime sets the ToLastAssessmentTime field's value. +func (s *ListAppsInput) SetToLastAssessmentTime(v time.Time) *ListAppsInput { + s.ToLastAssessmentTime = &v + return s +} + type ListAppsOutput struct { _ struct{} `type:"structure"` @@ -13443,7 +13547,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `location:"querystring" locationName:"assessmentArn" type:"string" required:"true"` @@ -13701,7 +13805,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -13999,7 +14103,7 @@ // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -14113,7 +14217,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -14377,8 +14481,10 @@ // account that will be assumed by Resilience Hub Service Principle to obtain // a read-only access to your application resources while running an assessment. // - // You must have iam:passRole permission for this role while creating or updating - // the application. + // * You must have iam:passRole permission for this role while creating or + // updating the application. + // + // * Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters. InvokerRoleName *string `locationName:"invokerRoleName" type:"string"` // Defines how Resilience Hub scans your resources. It can scan for the resources @@ -14706,7 +14812,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -14764,7 +14870,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -14827,7 +14933,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -14956,7 +15062,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `locationName:"appArn" type:"string"` // The version of the application. @@ -15151,13 +15257,13 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `locationName:"appArn" type:"string"` // Amazon Resource Name (ARN) of the assessment. The format for this ARN is: // arn:partition:resiliencehub:region:account:app-assessment/app-id. For more // information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AssessmentArn is a required field AssessmentArn *string `locationName:"assessmentArn" type:"string" required:"true"` @@ -15342,7 +15448,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -15450,7 +15556,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. AppArn *string `locationName:"appArn" type:"string"` // The version of the application. @@ -15488,10 +15594,17 @@ } // Defines a resiliency policy. +// +// Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs +// of your resiliency policy. But, while assessing your application, the lowest +// possible assessment result is near zero. Hence, if you provide value zero +// for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload +// RPO result will be near zero and the Compliance status for your application +// will be set to Policy breached. type ResiliencyPolicy struct { _ struct{} `type:"structure"` - // The timestamp for when the resiliency policy was created. + // Date and time when the resiliency policy was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` // Specifies a high-level geographical location constraint for where your resilience @@ -15507,7 +15620,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. PolicyArn *string `locationName:"policyArn" type:"string"` // The description for the policy. @@ -15606,6 +15719,13 @@ type ResiliencyScore struct { _ struct{} `type:"structure"` + // The score generated by Resilience Hub for the scoring component after running + // an assessment. + // + // For example, if the score is 25 points, it indicates the overall score of + // your application generated by Resilience Hub after running an assessment. + ComponentScore map[string]*ScoringComponentResiliencyScore `locationName:"componentScore" type:"map"` + // The disruption score for a valid key. // // DisruptionScore is a required field @@ -15635,6 +15755,12 @@ return s.String() } +// SetComponentScore sets the ComponentScore field's value. +func (s *ResiliencyScore) SetComponentScore(v map[string]*ScoringComponentResiliencyScore) *ResiliencyScore { + s.ComponentScore = v + return s +} + // SetDisruptionScore sets the DisruptionScore field's value. func (s *ResiliencyScore) SetDisruptionScore(v map[string]*float64) *ResiliencyScore { s.DisruptionScore = v @@ -15653,7 +15779,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -15716,7 +15842,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -16134,6 +16260,81 @@ return s } +// Resiliency score of each scoring component. For more information about scoring +// component, see Calculating resiliency score (https://docs.aws.amazon.com/resilience-hub/latest/userguide/calculate-score.html). +type ScoringComponentResiliencyScore struct { + _ struct{} `type:"structure"` + + // Number of recommendations that were excluded from the assessment. + // + // For example, if the Excluded count for Resilience Hub recommended Amazon + // CloudWatch alarms is 7, it indicates that 7 Amazon CloudWatch alarms are + // excluded from the assessment. + ExcludedCount *int64 `locationName:"excludedCount" type:"long"` + + // Number of issues that must be resolved to obtain the maximum possible score + // for the scoring component. For SOPs, alarms, and FIS experiments, these are + // the number of recommendations that must be implemented. For compliance, it + // is the number of Application Components that has breached the resiliency + // policy. + // + // For example, if the Outstanding count for Resilience Hub recommended Amazon + // CloudWatch alarms is 5, it indicates that 5 Amazon CloudWatch alarms must + // be fixed to achieve the maximum possible score. + OutstandingCount *int64 `locationName:"outstandingCount" type:"long"` + + // Maximum possible score that can be obtained for the scoring component. If + // the Possible score is 20 points, it indicates the maximum possible score + // you can achieve for your application when you run a new assessment after + // implementing all the Resilience Hub recommendations. + PossibleScore *float64 `locationName:"possibleScore" type:"double"` + + // Resiliency score of your application. + Score *float64 `locationName:"score" 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 ScoringComponentResiliencyScore) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScoringComponentResiliencyScore) GoString() string { + return s.String() +} + +// SetExcludedCount sets the ExcludedCount field's value. +func (s *ScoringComponentResiliencyScore) SetExcludedCount(v int64) *ScoringComponentResiliencyScore { + s.ExcludedCount = &v + return s +} + +// SetOutstandingCount sets the OutstandingCount field's value. +func (s *ScoringComponentResiliencyScore) SetOutstandingCount(v int64) *ScoringComponentResiliencyScore { + s.OutstandingCount = &v + return s +} + +// SetPossibleScore sets the PossibleScore field's value. +func (s *ScoringComponentResiliencyScore) SetPossibleScore(v float64) *ScoringComponentResiliencyScore { + s.PossibleScore = &v + return s +} + +// SetScore sets the Score field's value. +func (s *ScoringComponentResiliencyScore) SetScore(v float64) *ScoringComponentResiliencyScore { + s.Score = &v + return s +} + // This exception occurs when you have exceeded your service quota. To perform // the requested action, remove some of the relevant resources, or use Service // Quotas to request a service quota increase. @@ -16224,6 +16425,9 @@ // RecommendationId is a required field RecommendationId *string `locationName:"recommendationId" type:"string" required:"true"` + // Status of the recommended standard operating procedure. + RecommendationStatus *string `locationName:"recommendationStatus" type:"string" enum:"RecommendationStatus"` + // Reference identifier for the SOP recommendation. // // ReferenceId is a required field @@ -16289,6 +16493,12 @@ return s } +// SetRecommendationStatus sets the RecommendationStatus field's value. +func (s *SopRecommendation) SetRecommendationStatus(v string) *SopRecommendation { + s.RecommendationStatus = &v + return s +} + // SetReferenceId sets the ReferenceId field's value. func (s *SopRecommendation) SetReferenceId(v string) *SopRecommendation { s.ReferenceId = &v @@ -16307,7 +16517,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -16610,6 +16820,9 @@ // Identifier for the test recommendation. RecommendationId *string `locationName:"recommendationId" type:"string"` + // Status of the recommended test. + RecommendationStatus *string `locationName:"recommendationStatus" type:"string" enum:"RecommendationStatus"` + // Reference identifier for the test recommendation. // // ReferenceId is a required field @@ -16688,6 +16901,12 @@ return s } +// SetRecommendationStatus sets the RecommendationStatus field's value. +func (s *TestRecommendation) SetRecommendationStatus(v string) *TestRecommendation { + s.RecommendationStatus = &v + return s +} + // SetReferenceId sets the ReferenceId field's value. func (s *TestRecommendation) SetReferenceId(v string) *TestRecommendation { s.ReferenceId = &v @@ -16937,7 +17156,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -16963,7 +17182,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. PolicyArn *string `locationName:"policyArn" type:"string"` } @@ -17098,7 +17317,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -17195,7 +17414,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -17264,7 +17483,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -17327,7 +17546,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -17383,7 +17602,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -17524,7 +17743,7 @@ // Amazon Resource Name (ARN) of the Resilience Hub application. The format // for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For // more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // AppArn is a required field AppArn *string `locationName:"appArn" type:"string" required:"true"` @@ -17766,7 +17985,7 @@ // Amazon Resource Name (ARN) of the resiliency policy. The format for this // ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference guide. + // in the Amazon Web Services General Reference guide. // // PolicyArn is a required field PolicyArn *string `locationName:"policyArn" type:"string" required:"true"` @@ -18402,6 +18621,30 @@ } const ( + // RecommendationStatusImplemented is a RecommendationStatus enum value + RecommendationStatusImplemented = "Implemented" + + // RecommendationStatusInactive is a RecommendationStatus enum value + RecommendationStatusInactive = "Inactive" + + // RecommendationStatusNotImplemented is a RecommendationStatus enum value + RecommendationStatusNotImplemented = "NotImplemented" + + // RecommendationStatusExcluded is a RecommendationStatus enum value + RecommendationStatusExcluded = "Excluded" +) + +// RecommendationStatus_Values returns all elements of the RecommendationStatus enum +func RecommendationStatus_Values() []string { + return []string{ + RecommendationStatusImplemented, + RecommendationStatusInactive, + RecommendationStatusNotImplemented, + RecommendationStatusExcluded, + } +} + +const ( // RecommendationTemplateStatusPending is a RecommendationTemplateStatus enum value RecommendationTemplateStatusPending = "Pending" @@ -18477,6 +18720,30 @@ } } +const ( + // ResiliencyScoreTypeCompliance is a ResiliencyScoreType enum value + ResiliencyScoreTypeCompliance = "Compliance" + + // ResiliencyScoreTypeTest is a ResiliencyScoreType enum value + ResiliencyScoreTypeTest = "Test" + + // ResiliencyScoreTypeAlarm is a ResiliencyScoreType enum value + ResiliencyScoreTypeAlarm = "Alarm" + + // ResiliencyScoreTypeSop is a ResiliencyScoreType enum value + ResiliencyScoreTypeSop = "Sop" +) + +// ResiliencyScoreType_Values returns all elements of the ResiliencyScoreType enum +func ResiliencyScoreType_Values() []string { + return []string{ + ResiliencyScoreTypeCompliance, + ResiliencyScoreTypeTest, + ResiliencyScoreTypeAlarm, + ResiliencyScoreTypeSop, + } +} + const ( // ResourceImportStatusTypePending is a ResourceImportStatusType enum value ResourceImportStatusTypePending = "Pending" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/resourceexplorer2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/resourceexplorer2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/resourceexplorer2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/resourceexplorer2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -89,7 +89,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -184,7 +184,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -314,13 +314,22 @@ // the syntax for the operation, and try again. // // - ConflictException -// The request failed because either you specified parameters that didn’t -// match the original request, or you attempted to create a view with a name -// that already exists in this Amazon Web Services Region. +// If you attempted to create a view, then the request failed because either +// you specified parameters that didn’t match the original request, or you +// attempted to create a view with a name that already exists in this Amazon +// Web Services Region. +// +// If you attempted to create an index, then the request failed because either +// you specified parameters that didn't match the original request, or an index +// already exists in the current Amazon Web Services Region. +// +// If you attempted to update an index type to AGGREGATOR, then the request +// failed because you already have an AGGREGATOR index in a different Amazon +// Web Services Region. // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -419,9 +428,18 @@ // the syntax for the operation, and try again. // // - ConflictException -// The request failed because either you specified parameters that didn’t -// match the original request, or you attempted to create a view with a name -// that already exists in this Amazon Web Services Region. +// If you attempted to create a view, then the request failed because either +// you specified parameters that didn’t match the original request, or you +// attempted to create a view with a name that already exists in this Amazon +// Web Services Region. +// +// If you attempted to create an index, then the request failed because either +// you specified parameters that didn't match the original request, or an index +// already exists in the current Amazon Web Services Region. +// +// If you attempted to update an index type to AGGREGATOR, then the request +// failed because you already have an AGGREGATOR index in a different Amazon +// Web Services Region. // // - ServiceQuotaExceededException // The request failed because it exceeds a service quota. @@ -431,7 +449,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -537,7 +555,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -641,7 +659,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -731,6 +749,10 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// You specified a resource that doesn't exist. Check the ID or ARN that you +// used to identity the resource, and try again. +// // - InternalServerException // The request failed because of internal service error. Try your request again // later. @@ -741,7 +763,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -769,6 +791,101 @@ return out, req.Send() } +const opGetAccountLevelServiceConfiguration = "GetAccountLevelServiceConfiguration" + +// GetAccountLevelServiceConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetAccountLevelServiceConfiguration 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 GetAccountLevelServiceConfiguration for more information on using the GetAccountLevelServiceConfiguration +// 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 GetAccountLevelServiceConfigurationRequest method. +// req, resp := client.GetAccountLevelServiceConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/resource-explorer-2-2022-07-28/GetAccountLevelServiceConfiguration +func (c *ResourceExplorer2) GetAccountLevelServiceConfigurationRequest(input *GetAccountLevelServiceConfigurationInput) (req *request.Request, output *GetAccountLevelServiceConfigurationOutput) { + op := &request.Operation{ + Name: opGetAccountLevelServiceConfiguration, + HTTPMethod: "POST", + HTTPPath: "/GetAccountLevelServiceConfiguration", + } + + if input == nil { + input = &GetAccountLevelServiceConfigurationInput{} + } + + output = &GetAccountLevelServiceConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAccountLevelServiceConfiguration API operation for AWS Resource Explorer. +// +// Retrieves the status of your account's Amazon Web Services service access, +// and validates the service linked role required to access the multi-account +// search feature. Only the management account or a delegated administrator +// with service access enabled can invoke this API call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Resource Explorer's +// API operation GetAccountLevelServiceConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// You specified a resource that doesn't exist. Check the ID or ARN that you +// used to identity the resource, and try again. +// +// - InternalServerException +// The request failed because of internal service error. Try your request again +// later. +// +// - ThrottlingException +// The request failed because you exceeded a rate limit for this operation. +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). +// +// - AccessDeniedException +// The credentials that you used to call this operation don't have the minimum +// required permissions. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/resource-explorer-2-2022-07-28/GetAccountLevelServiceConfiguration +func (c *ResourceExplorer2) GetAccountLevelServiceConfiguration(input *GetAccountLevelServiceConfigurationInput) (*GetAccountLevelServiceConfigurationOutput, error) { + req, out := c.GetAccountLevelServiceConfigurationRequest(input) + return out, req.Send() +} + +// GetAccountLevelServiceConfigurationWithContext is the same as GetAccountLevelServiceConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccountLevelServiceConfiguration 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 *ResourceExplorer2) GetAccountLevelServiceConfigurationWithContext(ctx aws.Context, input *GetAccountLevelServiceConfigurationInput, opts ...request.Option) (*GetAccountLevelServiceConfigurationOutput, error) { + req, out := c.GetAccountLevelServiceConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDefaultView = "GetDefaultView" // GetDefaultViewRequest generates a "aws/request.Request" representing the @@ -839,7 +956,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -936,7 +1053,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1035,7 +1152,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1135,7 +1252,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1214,6 +1331,158 @@ return p.Err() } +const opListIndexesForMembers = "ListIndexesForMembers" + +// ListIndexesForMembersRequest generates a "aws/request.Request" representing the +// client's request for the ListIndexesForMembers 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 ListIndexesForMembers for more information on using the ListIndexesForMembers +// 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 ListIndexesForMembersRequest method. +// req, resp := client.ListIndexesForMembersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/resource-explorer-2-2022-07-28/ListIndexesForMembers +func (c *ResourceExplorer2) ListIndexesForMembersRequest(input *ListIndexesForMembersInput) (req *request.Request, output *ListIndexesForMembersOutput) { + op := &request.Operation{ + Name: opListIndexesForMembers, + HTTPMethod: "POST", + HTTPPath: "/ListIndexesForMembers", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIndexesForMembersInput{} + } + + output = &ListIndexesForMembersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIndexesForMembers API operation for AWS Resource Explorer. +// +// Retrieves a list of a member's indexes in all Amazon Web Services Regions +// that are currently collecting resource information for Amazon Web Services +// Resource Explorer. Only the management account or a delegated administrator +// with service access enabled can invoke this API call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Resource Explorer's +// API operation ListIndexesForMembers for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request failed because of internal service error. Try your request again +// later. +// +// - ValidationException +// You provided an invalid value for one of the operation's parameters. Check +// the syntax for the operation, and try again. +// +// - ThrottlingException +// The request failed because you exceeded a rate limit for this operation. +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). +// +// - AccessDeniedException +// The credentials that you used to call this operation don't have the minimum +// required permissions. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/resource-explorer-2-2022-07-28/ListIndexesForMembers +func (c *ResourceExplorer2) ListIndexesForMembers(input *ListIndexesForMembersInput) (*ListIndexesForMembersOutput, error) { + req, out := c.ListIndexesForMembersRequest(input) + return out, req.Send() +} + +// ListIndexesForMembersWithContext is the same as ListIndexesForMembers with the addition of +// the ability to pass a context and additional request options. +// +// See ListIndexesForMembers 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 *ResourceExplorer2) ListIndexesForMembersWithContext(ctx aws.Context, input *ListIndexesForMembersInput, opts ...request.Option) (*ListIndexesForMembersOutput, error) { + req, out := c.ListIndexesForMembersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIndexesForMembersPages iterates over the pages of a ListIndexesForMembers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIndexesForMembers 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 ListIndexesForMembers operation. +// pageNum := 0 +// err := client.ListIndexesForMembersPages(params, +// func(page *resourceexplorer2.ListIndexesForMembersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ResourceExplorer2) ListIndexesForMembersPages(input *ListIndexesForMembersInput, fn func(*ListIndexesForMembersOutput, bool) bool) error { + return c.ListIndexesForMembersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIndexesForMembersPagesWithContext same as ListIndexesForMembersPages 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 *ResourceExplorer2) ListIndexesForMembersPagesWithContext(ctx aws.Context, input *ListIndexesForMembersInput, fn func(*ListIndexesForMembersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListIndexesForMembersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListIndexesForMembersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListIndexesForMembersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSupportedResourceTypes = "ListSupportedResourceTypes" // ListSupportedResourceTypesRequest generates a "aws/request.Request" representing the @@ -1285,7 +1554,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1435,7 +1704,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1540,7 +1809,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1710,7 +1979,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1854,16 +2123,25 @@ // the syntax for the operation, and try again. // // - ConflictException -// The request failed because either you specified parameters that didn’t -// match the original request, or you attempted to create a view with a name -// that already exists in this Amazon Web Services Region. +// If you attempted to create a view, then the request failed because either +// you specified parameters that didn’t match the original request, or you +// attempted to create a view with a name that already exists in this Amazon +// Web Services Region. +// +// If you attempted to create an index, then the request failed because either +// you specified parameters that didn't match the original request, or an index +// already exists in the current Amazon Web Services Region. +// +// If you attempted to update an index type to AGGREGATOR, then the request +// failed because you already have an AGGREGATOR index in a different Amazon +// Web Services Region. // // - UnauthorizedException // The principal making the request isn't permitted to perform the operation. // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -1964,7 +2242,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -2101,16 +2379,25 @@ // the syntax for the operation, and try again. // // - ConflictException -// The request failed because either you specified parameters that didn’t -// match the original request, or you attempted to create a view with a name -// that already exists in this Amazon Web Services Region. +// If you attempted to create a view, then the request failed because either +// you specified parameters that didn’t match the original request, or you +// attempted to create a view with a name that already exists in this Amazon +// Web Services Region. +// +// If you attempted to create an index, then the request failed because either +// you specified parameters that didn't match the original request, or an index +// already exists in the current Amazon Web Services Region. +// +// If you attempted to update an index type to AGGREGATOR, then the request +// failed because you already have an AGGREGATOR index in a different Amazon +// Web Services Region. // // - ServiceQuotaExceededException // The request failed because it exceeds a service quota. // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -2209,7 +2496,7 @@ // // - ThrottlingException // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). // // - AccessDeniedException // The credentials that you used to call this operation don't have the minimum @@ -2522,9 +2809,18 @@ return s } -// The request failed because either you specified parameters that didn’t -// match the original request, or you attempted to create a view with a name -// that already exists in this Amazon Web Services Region. +// If you attempted to create a view, then the request failed because either +// you specified parameters that didn’t match the original request, or you +// attempted to create a view with a name that already exists in this Amazon +// Web Services Region. +// +// If you attempted to create an index, then the request failed because either +// you specified parameters that didn't match the original request, or an index +// already exists in the current Amazon Web Services Region. +// +// If you attempted to update an index type to AGGREGATOR, then the request +// failed because you already have an AGGREGATOR index in a different Amazon +// Web Services Region. type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2594,13 +2890,17 @@ // This value helps ensure idempotency. Resource Explorer uses this value to // prevent the accidental creation of duplicate versions. We recommend that // you generate a UUID-type value (https://wikipedia.org/wiki/Universally_unique_identifier) - // to ensure the uniqueness of your views. + // to ensure the uniqueness of your index. ClientToken *string `type:"string" idempotencyToken:"true"` // The specified tags are attached only to the index created in this Amazon // Web Services Region. The tags aren't attached to any of the resources listed // in the index. - Tags map[string]*string `type:"map"` + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateIndexInput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` } // String returns the string representation. @@ -2726,8 +3026,16 @@ // The default is an empty list, with no optional fields included in the results. IncludedProperties []*IncludedProperty `type:"list"` + // The root ARN of the account, an organizational unit (OU), or an organization + // ARN. If left empty, the default is account. + Scope *string `min:"1" type:"string"` + // Tag key and value pairs that are attached to the view. - Tags map[string]*string `type:"map"` + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateViewInput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` // The name of the new view. This name appears in the list of views in Resource // Explorer. @@ -2764,6 +3072,9 @@ if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } + if s.Scope != nil && len(*s.Scope) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Scope", 1)) + } if s.ViewName == nil { invalidParams.Add(request.NewErrParamRequired("ViewName")) } @@ -2807,6 +3118,12 @@ return s } +// SetScope sets the Scope field's value. +func (s *CreateViewInput) SetScope(v string) *CreateViewInput { + s.Scope = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateViewInput) SetTags(v map[string]*string) *CreateViewInput { s.Tags = v @@ -3075,6 +3392,59 @@ return s.String() } +type GetAccountLevelServiceConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"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 GetAccountLevelServiceConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccountLevelServiceConfigurationInput) GoString() string { + return s.String() +} + +type GetAccountLevelServiceConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Details about the organization, and whether configuration is ENABLED or DISABLED. + OrgConfiguration *OrgConfiguration `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 GetAccountLevelServiceConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccountLevelServiceConfigurationOutput) GoString() string { + return s.String() +} + +// SetOrgConfiguration sets the OrgConfiguration field's value. +func (s *GetAccountLevelServiceConfigurationOutput) SetOrgConfiguration(v *OrgConfiguration) *GetAccountLevelServiceConfigurationOutput { + s.OrgConfiguration = v + return s +} + type GetDefaultViewInput struct { _ struct{} `type:"structure" nopayload:"true"` } @@ -3183,7 +3553,11 @@ State *string `type:"string" enum:"IndexState"` // Tag key and value pairs that are attached to the index. - Tags map[string]*string `type:"map"` + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetIndexOutput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` // The type of the index in this Region. For information about the aggregator // index and how it differs from a local index, see Turning on cross-Region @@ -3311,7 +3685,11 @@ _ struct{} `type:"structure"` // Tag key and value pairs that are attached to the view. - Tags map[string]*string `type:"map"` + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetViewOutput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` // A structure that contains the details for the requested view. View *View `type:"structure"` @@ -3540,6 +3918,136 @@ return s.RespMetadata.RequestID } +type ListIndexesForMembersInput struct { + _ struct{} `type:"structure"` + + // The account IDs will limit the output to only indexes from these accounts. + // + // AccountIdList is a required field + AccountIdList []*string `min:"1" type:"list" required:"true"` + + // The maximum number of results that you want included on each page of the + // response. If you do not include this parameter, it defaults to a value appropriate + // to the operation. If additional items exist beyond those included in the + // current response, the NextToken response element is present and has a value + // (is not null). Include that value as the NextToken request parameter in the + // next call to the operation to get the next part of the results. + // + // An API operation can return fewer results than the maximum even when there + // are more results available. You should check NextToken after every operation + // to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // The parameter for receiving additional results if you receive a NextToken + // response in a previous request. A NextToken response indicates that more + // output is available. Set this parameter to the value of the previous call's + // NextToken response to indicate where the output should continue from. The + // pagination tokens expire after 24 hours. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndexesForMembersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndexesForMembersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIndexesForMembersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIndexesForMembersInput"} + if s.AccountIdList == nil { + invalidParams.Add(request.NewErrParamRequired("AccountIdList")) + } + if s.AccountIdList != nil && len(s.AccountIdList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountIdList", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountIdList sets the AccountIdList field's value. +func (s *ListIndexesForMembersInput) SetAccountIdList(v []*string) *ListIndexesForMembersInput { + s.AccountIdList = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIndexesForMembersInput) SetMaxResults(v int64) *ListIndexesForMembersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIndexesForMembersInput) SetNextToken(v string) *ListIndexesForMembersInput { + s.NextToken = &v + return s +} + +type ListIndexesForMembersOutput struct { + _ struct{} `type:"structure"` + + // A structure that contains the details and status of each index. + Indexes []*MemberIndex `type:"list"` + + // If present, indicates that more output is available than is included in the + // current response. Use this value in the NextToken request parameter in a + // subsequent call to the operation to get the next part of the output. You + // should repeat this until the NextToken response element comes back as null. + // The pagination tokens expire after 24 hours. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndexesForMembersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIndexesForMembersOutput) GoString() string { + return s.String() +} + +// SetIndexes sets the Indexes field's value. +func (s *ListIndexesForMembersOutput) SetIndexes(v []*MemberIndex) *ListIndexesForMembersOutput { + s.Indexes = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIndexesForMembersOutput) SetNextToken(v string) *ListIndexesForMembersOutput { + s.NextToken = &v + return s +} + type ListIndexesInput struct { _ struct{} `type:"structure"` @@ -3558,7 +4066,8 @@ // The parameter for receiving additional results if you receive a NextToken // response in a previous request. A NextToken response indicates that more // output is available. Set this parameter to the value of the previous call's - // NextToken response to indicate where the output should continue from. + // NextToken response to indicate where the output should continue from. The + // pagination tokens expire after 24 hours. NextToken *string `min:"1" type:"string"` // If specified, limits the response to only information about the index in @@ -3640,6 +4149,7 @@ // current response. Use this value in the NextToken request parameter in a // subsequent call to the operation to get the next part of the output. You // should repeat this until the NextToken response element comes back as null. + // The pagination tokens expire after 24 hours. NextToken *string `type:"string"` } @@ -3691,7 +4201,8 @@ // The parameter for receiving additional results if you receive a NextToken // response in a previous request. A NextToken response indicates that more // output is available. Set this parameter to the value of the previous call's - // NextToken response to indicate where the output should continue from. + // NextToken response to indicate where the output should continue from. The + // pagination tokens expire after 24 hours. NextToken *string `type:"string"` } @@ -3745,6 +4256,7 @@ // current response. Use this value in the NextToken request parameter in a // subsequent call to the operation to get the next part of the output. You // should repeat this until the NextToken response element comes back as null. + // The pagination tokens expire after 24 hours. NextToken *string `type:"string"` // The list of resource types supported by Resource Explorer. @@ -3836,7 +4348,11 @@ // The tag key and value pairs that you want to attach to the specified view // or index. - Tags map[string]*string `type:"map"` + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListTagsForResourceOutput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` } // String returns the string representation. @@ -3881,7 +4397,8 @@ // The parameter for receiving additional results if you receive a NextToken // response in a previous request. A NextToken response indicates that more // output is available. Set this parameter to the value of the previous call's - // NextToken response to indicate where the output should continue from. + // NextToken response to indicate where the output should continue from. The + // pagination tokens expire after 24 hours. NextToken *string `type:"string"` } @@ -3935,6 +4452,7 @@ // current response. Use this value in the NextToken request parameter in a // subsequent call to the operation to get the next part of the output. You // should repeat this until the NextToken response element comes back as null. + // The pagination tokens expire after 24 hours. NextToken *string `type:"string"` // The list of views available in the Amazon Web Services Region in which you @@ -3972,6 +4490,124 @@ return s } +// An index is the data store used by Amazon Web Services Resource Explorer +// to hold information about your Amazon Web Services resources that the service +// discovers. +type MemberIndex struct { + _ struct{} `type:"structure"` + + // The account ID for the index. + AccountId *string `type:"string"` + + // The Amazon resource name (ARN) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // of the index. + Arn *string `type:"string"` + + // The Amazon Web Services Region in which the index exists. + Region *string `type:"string"` + + // The type of index. It can be one of the following values: + // + // * LOCAL – The index contains information about resources from only the + // same Amazon Web Services Region. + // + // * AGGREGATOR – Resource Explorer replicates copies of the indexed information + // about resources in all other Amazon Web Services Regions to the aggregator + // index. This lets search results in the Region with the aggregator index + // to include resources from all Regions in the account where Resource Explorer + // is turned on. + Type *string `type:"string" enum:"IndexType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemberIndex) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MemberIndex) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *MemberIndex) SetAccountId(v string) *MemberIndex { + s.AccountId = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *MemberIndex) SetArn(v string) *MemberIndex { + s.Arn = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *MemberIndex) SetRegion(v string) *MemberIndex { + s.Region = &v + return s +} + +// SetType sets the Type field's value. +func (s *MemberIndex) SetType(v string) *MemberIndex { + s.Type = &v + return s +} + +// This is a structure that contains the status of Amazon Web Services service +// access, and whether you have a valid service-linked role to enable multi-account +// search for your organization. +type OrgConfiguration struct { + _ struct{} `type:"structure"` + + // This value displays whether your Amazon Web Services service access is ENABLED + // or DISABLED. + // + // AWSServiceAccessStatus is a required field + AWSServiceAccessStatus *string `type:"string" required:"true" enum:"AWSServiceAccessStatus"` + + // This value shows whether or not you have a valid a service-linked role required + // to start the multi-account search feature. + ServiceLinkedRole *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 OrgConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrgConfiguration) GoString() string { + return s.String() +} + +// SetAWSServiceAccessStatus sets the AWSServiceAccessStatus field's value. +func (s *OrgConfiguration) SetAWSServiceAccessStatus(v string) *OrgConfiguration { + s.AWSServiceAccessStatus = &v + return s +} + +// SetServiceLinkedRole sets the ServiceLinkedRole field's value. +func (s *OrgConfiguration) SetServiceLinkedRole(v string) *OrgConfiguration { + s.ServiceLinkedRole = &v + return s +} + // A resource in Amazon Web Services that Amazon Web Services Resource Explorer // has discovered, and for which it has stored information in the index of the // Amazon Web Services Region that contains the resource. @@ -4296,7 +4932,8 @@ // The parameter for receiving additional results if you receive a NextToken // response in a previous request. A NextToken response indicates that more // output is available. Set this parameter to the value of the previous call's - // NextToken response to indicate where the output should continue from. + // NextToken response to indicate where the output should continue from. The + // pagination tokens expire after 24 hours. NextToken *string `min:"1" type:"string"` // A string that includes keywords and filters that specify the resources that @@ -4399,6 +5036,7 @@ // current response. Use this value in the NextToken request parameter in a // subsequent call to the operation to get the next part of the output. You // should repeat this until the NextToken response element comes back as null. + // The pagination tokens expire after 24 hours. NextToken *string `min:"1" type:"string"` // The list of structures that describe the resources that match the query. @@ -4580,7 +5218,11 @@ // A list of tag key and value pairs that you want to attach to the specified // view or index. - Tags map[string]*string `type:"map"` + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TagResourceInput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` } // String returns the string representation. @@ -4652,7 +5294,7 @@ } // The request failed because you exceeded a rate limit for this operation. -// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). +// For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -4792,8 +5434,12 @@ // A list of the keys for the tags that you want to remove from the specified // view or index. // + // TagKeys is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UntagResourceInput's + // String and GoString methods. + // // TagKeys is a required field - TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` + TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true" sensitive:"true"` } // String returns the string representation. @@ -5336,6 +5982,22 @@ } const ( + // AWSServiceAccessStatusEnabled is a AWSServiceAccessStatus enum value + AWSServiceAccessStatusEnabled = "ENABLED" + + // AWSServiceAccessStatusDisabled is a AWSServiceAccessStatus enum value + AWSServiceAccessStatusDisabled = "DISABLED" +) + +// AWSServiceAccessStatus_Values returns all elements of the AWSServiceAccessStatus enum +func AWSServiceAccessStatus_Values() []string { + return []string{ + AWSServiceAccessStatusEnabled, + AWSServiceAccessStatusDisabled, + } +} + +const ( // IndexStateCreating is a IndexState enum value IndexStateCreating = "CREATING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/resourceexplorer2/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/resourceexplorer2/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/resourceexplorer2/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/resourceexplorer2/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -18,9 +18,18 @@ // ErrCodeConflictException for service response error code // "ConflictException". // - // The request failed because either you specified parameters that didn’t - // match the original request, or you attempted to create a view with a name - // that already exists in this Amazon Web Services Region. + // If you attempted to create a view, then the request failed because either + // you specified parameters that didn’t match the original request, or you + // attempted to create a view with a name that already exists in this Amazon + // Web Services Region. + // + // If you attempted to create an index, then the request failed because either + // you specified parameters that didn't match the original request, or an index + // already exists in the current Amazon Web Services Region. + // + // If you attempted to update an index type to AGGREGATOR, then the request + // failed because you already have an AGGREGATOR index in a different Amazon + // Web Services Region. ErrCodeConflictException = "ConflictException" // ErrCodeInternalServerException for service response error code @@ -47,7 +56,7 @@ // "ThrottlingException". // // The request failed because you exceeded a rate limit for this operation. - // For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/arexug/mainline/quotas.html). + // For more information, see Quotas for Resource Explorer (https://docs.aws.amazon.com/resource-explorer/latest/userguide/quotas.html). ErrCodeThrottlingException = "ThrottlingException" // ErrCodeUnauthorizedException for service response error code diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/resourceexplorer2/resourceexplorer2iface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/resourceexplorer2/resourceexplorer2iface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/resourceexplorer2/resourceexplorer2iface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/resourceexplorer2/resourceexplorer2iface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -88,6 +88,10 @@ DisassociateDefaultViewWithContext(aws.Context, *resourceexplorer2.DisassociateDefaultViewInput, ...request.Option) (*resourceexplorer2.DisassociateDefaultViewOutput, error) DisassociateDefaultViewRequest(*resourceexplorer2.DisassociateDefaultViewInput) (*request.Request, *resourceexplorer2.DisassociateDefaultViewOutput) + GetAccountLevelServiceConfiguration(*resourceexplorer2.GetAccountLevelServiceConfigurationInput) (*resourceexplorer2.GetAccountLevelServiceConfigurationOutput, error) + GetAccountLevelServiceConfigurationWithContext(aws.Context, *resourceexplorer2.GetAccountLevelServiceConfigurationInput, ...request.Option) (*resourceexplorer2.GetAccountLevelServiceConfigurationOutput, error) + GetAccountLevelServiceConfigurationRequest(*resourceexplorer2.GetAccountLevelServiceConfigurationInput) (*request.Request, *resourceexplorer2.GetAccountLevelServiceConfigurationOutput) + GetDefaultView(*resourceexplorer2.GetDefaultViewInput) (*resourceexplorer2.GetDefaultViewOutput, error) GetDefaultViewWithContext(aws.Context, *resourceexplorer2.GetDefaultViewInput, ...request.Option) (*resourceexplorer2.GetDefaultViewOutput, error) GetDefaultViewRequest(*resourceexplorer2.GetDefaultViewInput) (*request.Request, *resourceexplorer2.GetDefaultViewOutput) @@ -107,6 +111,13 @@ ListIndexesPages(*resourceexplorer2.ListIndexesInput, func(*resourceexplorer2.ListIndexesOutput, bool) bool) error ListIndexesPagesWithContext(aws.Context, *resourceexplorer2.ListIndexesInput, func(*resourceexplorer2.ListIndexesOutput, bool) bool, ...request.Option) error + ListIndexesForMembers(*resourceexplorer2.ListIndexesForMembersInput) (*resourceexplorer2.ListIndexesForMembersOutput, error) + ListIndexesForMembersWithContext(aws.Context, *resourceexplorer2.ListIndexesForMembersInput, ...request.Option) (*resourceexplorer2.ListIndexesForMembersOutput, error) + ListIndexesForMembersRequest(*resourceexplorer2.ListIndexesForMembersInput) (*request.Request, *resourceexplorer2.ListIndexesForMembersOutput) + + ListIndexesForMembersPages(*resourceexplorer2.ListIndexesForMembersInput, func(*resourceexplorer2.ListIndexesForMembersOutput, bool) bool) error + ListIndexesForMembersPagesWithContext(aws.Context, *resourceexplorer2.ListIndexesForMembersInput, func(*resourceexplorer2.ListIndexesForMembersOutput, bool) bool, ...request.Option) error + ListSupportedResourceTypes(*resourceexplorer2.ListSupportedResourceTypesInput) (*resourceexplorer2.ListSupportedResourceTypesOutput, error) ListSupportedResourceTypesWithContext(aws.Context, *resourceexplorer2.ListSupportedResourceTypesInput, ...request.Option) (*resourceexplorer2.ListSupportedResourceTypesOutput, error) ListSupportedResourceTypesRequest(*resourceexplorer2.ListSupportedResourceTypesInput) (*request.Request, *resourceexplorer2.ListSupportedResourceTypesOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/route53/api.go golang-github-aws-aws-sdk-go-1.48.14/service/route53/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/route53/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/route53/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -474,8 +474,8 @@ // - DELETE: Deletes an existing resource record set that has the specified // values. // -// - UPSERT: If a resource set exists Route 53 updates it with the values -// in the request. +// - UPSERT: If a resource set doesn't exist, Route 53 creates it. If a resource +// set exists Route 53 updates it with the values in the request. // // # Syntaxes for Creating, Updating, and Deleting Resource Record Sets // @@ -1728,6 +1728,13 @@ // responds to DNS queries for the domain or subdomain name by using the resource // record sets that CreateTrafficPolicyInstance created. // +// After you submit an CreateTrafficPolicyInstance request, there's a brief +// delay while Amazon Route 53 creates the resource record sets that are specified +// in the traffic policy definition. Use GetTrafficPolicyInstance with the id +// of new traffic policy instance to confirm that the CreateTrafficPolicyInstance +// request completed successfully. For more information, see the State response +// element. +// // 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. @@ -4780,10 +4787,10 @@ // // Gets information about a specified traffic policy instance. // -// After you submit a CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance -// request, there's a brief delay while Amazon Route 53 creates the resource -// record sets that are specified in the traffic policy definition. For more -// information, see the State response element. +// Use GetTrafficPolicyInstance with the id of new traffic policy instance to +// confirm that the CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance +// request completed successfully. For more information, see the State response +// element. // // In the Route 53 console, traffic policy instances are known as policy records. // @@ -7505,6 +7512,12 @@ // UpdateTrafficPolicyInstance API operation for Amazon Route 53. // +// After you submit a UpdateTrafficPolicyInstance request, there's a brief delay +// while Route 53 creates the resource record sets that are specified in the +// traffic policy definition. Use GetTrafficPolicyInstance with the id of updated +// traffic policy instance confirm that the UpdateTrafficPolicyInstance request +// completed successfully. For more information, see the State response element. +// // Updates the resource record sets in a specified hosted zone that were created // based on the settings in a specified traffic policy version. // @@ -9453,6 +9466,10 @@ // but settings identical to an existing health check, Route 53 creates the // health check. // + // Route 53 does not store the CallerReference for a deleted health check indefinitely. + // The CallerReference for a deleted health check will be deleted after a number + // of days. + // // CallerReference is a required field CallerReference *string `min:"1" type:"string" required:"true"` @@ -12045,6 +12062,8 @@ // // Amazon Route 53 uses the two-letter country codes that are specified in ISO // standard 3166-1 alpha-2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). + // + // Route 53 also supports the contry code UA forr Ukraine. CountryCode *string `min:"1" type:"string"` // For geolocation resource record sets, the two-letter code for a state of @@ -12577,6 +12596,8 @@ // Amazon Route 53 uses the two-letter country codes that are specified in ISO // standard 3166-1 alpha-2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). + // + // Route 53 also supports the contry code UA forr Ukraine. CountryCode *string `location:"querystring" locationName:"countrycode" min:"1" type:"string"` // The code for the subdivision, such as a particular state within the United @@ -15579,8 +15600,8 @@ // The maximum number of health checks that you want ListHealthChecks to return // in response to the current request. Amazon Route 53 returns a maximum of - // 100 items. If you set MaxItems to a value greater than 100, Route 53 returns - // only the first 100 health checks. + // 1000 items. If you set MaxItems to a value greater than 1000, Route 53 returns + // only the first 1000 health checks. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` } @@ -16040,6 +16061,9 @@ // the ID of that reusable delegation set. DelegationSetId *string `location:"querystring" locationName:"delegationsetid" type:"string"` + // (Optional) Specifies if the hosted zone is private. + HostedZoneType *string `location:"querystring" locationName:"hostedzonetype" type:"string" enum:"HostedZoneType"` + // If the value of IsTruncated in the previous response was true, you have more // hosted zones. To get more hosted zones, submit another ListHostedZones request. // @@ -16083,6 +16107,12 @@ return s } +// SetHostedZoneType sets the HostedZoneType field's value. +func (s *ListHostedZonesInput) SetHostedZoneType(v string) *ListHostedZonesInput { + s.HostedZoneType = &v + return s +} + // SetMarker sets the Marker field's value. func (s *ListHostedZonesInput) SetMarker(v string) *ListHostedZonesInput { s.Marker = &v @@ -20603,6 +20633,18 @@ } } +const ( + // HostedZoneTypePrivateHostedZone is a HostedZoneType enum value + HostedZoneTypePrivateHostedZone = "PrivateHostedZone" +) + +// HostedZoneType_Values returns all elements of the HostedZoneType enum +func HostedZoneType_Values() []string { + return []string{ + HostedZoneTypePrivateHostedZone, + } +} + const ( // InsufficientDataHealthStatusHealthy is a InsufficientDataHealthStatus enum value InsufficientDataHealthStatusHealthy = "Healthy" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycluster/api.go golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycluster/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycluster/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycluster/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -57,8 +57,8 @@ // // Get the state for a routing control. A routing control is a simple on/off // switch that you can use to route traffic to cells. When a routing control -// state is On, traffic flows to a cell. When the state is Off, traffic does -// not flow. +// state is set to ON, traffic flows to a cell. When the state is set to OFF, +// traffic does not flow. // // Before you can create a routing control, you must first create a cluster, // and then host the control in a control panel on the cluster. For more information, @@ -186,8 +186,8 @@ // it lists all the routing controls in the cluster. // // A routing control is a simple on/off switch in Route 53 ARC that you can -// use to route traffic to cells. When a routing control state is On, traffic -// flows to a cell. When the state is Off, traffic does not flow. +// use to route traffic to cells. When a routing control state is set to ON, +// traffic flows to a cell. When the state is set to OFF, traffic does not flow. // // Before you can create a routing control, you must first create a cluster, // and then host the control in a control panel on the cluster. For more information, @@ -351,8 +351,8 @@ // UpdateRoutingControlState API operation for Route53 Recovery Cluster. // // Set the state of the routing control to reroute traffic. You can set the -// value to be On or Off. When the state is On, traffic flows to a cell. When -// the state is Off, traffic does not flow. +// value to ON or OFF. When the state is ON, traffic flows to a cell. When the +// state is OFF, traffic does not flow. // // With Route 53 ARC, you can add safety rules for routing controls, which are // safeguards for routing control state updates that help prevent unexpected @@ -477,8 +477,8 @@ // UpdateRoutingControlStates API operation for Route53 Recovery Cluster. // // Set multiple routing control states. You can set the value for each state -// to be On or Off. When the state is On, traffic flows to a cell. When it's -// Off, traffic does not flow. +// to be ON or OFF. When the state is ON, traffic flows to a cell. When it's +// OFF, traffic does not flow. // // With Route 53 ARC, you can add safety rules for routing controls, which are // safeguards for routing control state updates that help prevent unexpected @@ -1124,8 +1124,8 @@ } // A routing control, which is a simple on/off switch that you can use to route -// traffic to cells. When a routing control state is On, traffic flows to a -// cell. When the state is Off, traffic does not flow. +// traffic to cells. When a routing control state is set to ON, traffic flows +// to a cell. When the state is set to OFF, traffic does not flow. type RoutingControl struct { _ struct{} `type:"structure"` @@ -1133,9 +1133,13 @@ // is located. ControlPanelArn *string `min:"1" type:"string"` - // The name of the control panel where the routing control is located. + // The name of the control panel where the routing control is located. Only + // ASCII characters are supported for control panel names. ControlPanelName *string `min:"1" type:"string"` + // The Amazon Web Services account ID of the routing control owner. + Owner *string `min:"12" type:"string"` + // The Amazon Resource Name (ARN) of the routing control. RoutingControlArn *string `min:"1" type:"string"` @@ -1143,7 +1147,8 @@ RoutingControlName *string `min:"1" type:"string"` // The current state of the routing control. When a routing control state is - // On, traffic flows to a cell. When the state is Off, traffic does not flow. + // set to ON, traffic flows to a cell. When the state is set to OFF, traffic + // does not flow. RoutingControlState *string `type:"string" enum:"RoutingControlState"` } @@ -1177,6 +1182,12 @@ return s } +// SetOwner sets the Owner field's value. +func (s *RoutingControl) SetOwner(v string) *RoutingControl { + s.Owner = &v + return s +} + // SetRoutingControlArn sets the RoutingControlArn field's value. func (s *RoutingControl) SetRoutingControlArn(v string) *RoutingControl { s.RoutingControlArn = &v @@ -1416,7 +1427,7 @@ // RoutingControlArn is a required field RoutingControlArn *string `min:"1" type:"string" required:"true"` - // The state of the routing control. You can set the value to be On or Off. + // The state of the routing control. You can set the value to ON or OFF. // // RoutingControlState is a required field RoutingControlState *string `type:"string" required:"true" enum:"RoutingControlState"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycluster/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycluster/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycluster/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycluster/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -12,8 +12,8 @@ // on a highly available cluster in Route 53 ARC. A cluster provides a set of // five redundant Regional endpoints against which you can run API calls to // get or update the state of routing controls. To implement failover, you set -// one routing control On and another one Off, to reroute traffic from one Availability -// Zone or Amazon Web Services Region to another. +// one routing control to ON and another one to OFF, to reroute traffic from +// one Availability Zone or Amazon Web Services Region to another. // // Be aware that you must specify a Regional endpoint for a cluster when you // work with API cluster operations to get or update routing control states diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycontrolconfig/api.go golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycontrolconfig/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycontrolconfig/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycontrolconfig/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1199,6 +1199,89 @@ 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/route53-recovery-control-config-2020-11-02/GetResourcePolicy +func (c *Route53RecoveryControlConfig) GetResourcePolicyRequest(input *GetResourcePolicyInput) (req *request.Request, output *GetResourcePolicyOutput) { + op := &request.Operation{ + Name: opGetResourcePolicy, + HTTPMethod: "GET", + HTTPPath: "/resourcePolicy/{ResourceArn}", + } + + if input == nil { + input = &GetResourcePolicyInput{} + } + + output = &GetResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetResourcePolicy API operation for AWS Route53 Recovery Control Config. +// +// Get information about the resource policy for a cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Route53 Recovery Control Config's +// API operation GetResourcePolicy for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found. +// +// - InternalServerException +// 500 response - InternalServiceError. Temporary service error. Retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/GetResourcePolicy +func (c *Route53RecoveryControlConfig) 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 *Route53RecoveryControlConfig) 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 opListAssociatedRoute53HealthChecks = "ListAssociatedRoute53HealthChecks" // ListAssociatedRoute53HealthChecksRequest generates a "aws/request.Request" representing the @@ -2598,6 +2681,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` + // The Amazon Web Services account ID of the assertion rule owner. + Owner *string `min:"12" type:"string"` + // The criteria that you set for specific assertion routing controls (AssertedControls) // that designate how many routing control states must be ON as the result of // a transaction. For example, if you have three assertion routing controls, @@ -2663,6 +2749,12 @@ return s } +// SetOwner sets the Owner field's value. +func (s *AssertionRule) SetOwner(v string) *AssertionRule { + s.Owner = &v + return s +} + // SetRuleConfig sets the RuleConfig field's value. func (s *AssertionRule) SetRuleConfig(v *RuleConfig) *AssertionRule { s.RuleConfig = v @@ -2792,6 +2884,9 @@ // The name of the cluster. Name *string `min:"1" type:"string"` + // The Amazon Web Services account ID of the cluster owner. + Owner *string `min:"12" type:"string"` + // Deployment status of a resource. Status can be one of the following: PENDING, // DEPLOYED, PENDING_DELETION. Status *string `type:"string" enum:"Status"` @@ -2833,6 +2928,12 @@ return s } +// SetOwner sets the Owner field's value. +func (s *Cluster) SetOwner(v string) *Cluster { + s.Owner = &v + return s +} + // SetStatus sets the Status field's value. func (s *Cluster) SetStatus(v string) *Cluster { s.Status = &v @@ -2971,6 +3072,9 @@ // in the name. Name *string `min:"1" type:"string"` + // The Amazon Web Services account ID of the control panel owner. + Owner *string `min:"12" type:"string"` + // The number of routing controls in the control panel. RoutingControlCount *int64 `type:"integer"` @@ -3021,6 +3125,12 @@ return s } +// SetOwner sets the Owner field's value. +func (s *ControlPanel) SetOwner(v string) *ControlPanel { + s.Owner = &v + return s +} + // SetRoutingControlCount sets the RoutingControlCount field's value. func (s *ControlPanel) SetRoutingControlCount(v int64) *ControlPanel { s.RoutingControlCount = &v @@ -4148,6 +4258,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` + // The Amazon Web Services account ID of the gating rule owner. + Owner *string `min:"12" type:"string"` + // The criteria that you set for gating routing controls that designate how // many of the routing control states must be ON to allow you to update target // routing control states. @@ -4220,6 +4333,12 @@ return s } +// SetOwner sets the Owner field's value. +func (s *GatingRule) SetOwner(v string) *GatingRule { + s.Owner = &v + return s +} + // SetRuleConfig sets the RuleConfig field's value. func (s *GatingRule) SetRuleConfig(v *RuleConfig) *GatingRule { s.RuleConfig = v @@ -4336,6 +4455,86 @@ return s } +type GetResourcePolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // ResourceArn is a required field + ResourceArn *string `location:"uri" 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 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 *GetResourcePolicyInput) SetResourceArn(v string) *GetResourcePolicyInput { + s.ResourceArn = &v + return s +} + +// Returns the current Amazon Resource Access Manager resource policy for a +// cluster. +type GetResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // The resource policy. + Policy *string `min:"2" 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 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() +} + +// SetPolicy sets the Policy field's value. +func (s *GetResourcePolicyOutput) SetPolicy(v string) *GetResourcePolicyOutput { + s.Policy = &v + return s +} + // 500 response - InternalServiceError. Temporary service error. Retry the request. type InternalServerException struct { _ struct{} `type:"structure"` @@ -5337,6 +5536,9 @@ // The name of the routing control. Name *string `min:"1" type:"string"` + // The Amazon Web Services account ID of the routing control owner. + Owner *string `min:"12" type:"string"` + // The Amazon Resource Name (ARN) of the routing control. RoutingControlArn *string `min:"1" type:"string"` @@ -5375,6 +5577,12 @@ return s } +// SetOwner sets the Owner field's value. +func (s *RoutingControl) SetOwner(v string) *RoutingControl { + s.Owner = &v + return s +} + // SetRoutingControlArn sets the RoutingControlArn field's value. func (s *RoutingControl) SetRoutingControlArn(v string) *RoutingControl { s.RoutingControlArn = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -108,6 +108,10 @@ DescribeSafetyRuleWithContext(aws.Context, *route53recoverycontrolconfig.DescribeSafetyRuleInput, ...request.Option) (*route53recoverycontrolconfig.DescribeSafetyRuleOutput, error) DescribeSafetyRuleRequest(*route53recoverycontrolconfig.DescribeSafetyRuleInput) (*request.Request, *route53recoverycontrolconfig.DescribeSafetyRuleOutput) + GetResourcePolicy(*route53recoverycontrolconfig.GetResourcePolicyInput) (*route53recoverycontrolconfig.GetResourcePolicyOutput, error) + GetResourcePolicyWithContext(aws.Context, *route53recoverycontrolconfig.GetResourcePolicyInput, ...request.Option) (*route53recoverycontrolconfig.GetResourcePolicyOutput, error) + GetResourcePolicyRequest(*route53recoverycontrolconfig.GetResourcePolicyInput) (*request.Request, *route53recoverycontrolconfig.GetResourcePolicyOutput) + ListAssociatedRoute53HealthChecks(*route53recoverycontrolconfig.ListAssociatedRoute53HealthChecksInput) (*route53recoverycontrolconfig.ListAssociatedRoute53HealthChecksOutput, error) ListAssociatedRoute53HealthChecksWithContext(aws.Context, *route53recoverycontrolconfig.ListAssociatedRoute53HealthChecksInput, ...request.Option) (*route53recoverycontrolconfig.ListAssociatedRoute53HealthChecksOutput, error) ListAssociatedRoute53HealthChecksRequest(*route53recoverycontrolconfig.ListAssociatedRoute53HealthChecksInput) (*request.Request, *route53recoverycontrolconfig.ListAssociatedRoute53HealthChecksOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/api.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -67,19 +67,47 @@ // AbortMultipartUpload API operation for Amazon Simple Storage Service. // -// This action aborts a multipart upload. After a multipart upload is aborted, +// This operation aborts a multipart upload. After a multipart upload is aborted, // no additional parts can be uploaded using that upload ID. The storage consumed // by any previously uploaded parts will be freed. However, if any part uploads // are currently in progress, those part uploads might or might not succeed. // As a result, it might be necessary to abort a given multipart upload multiple // times in order to completely free all storage consumed by all parts. // -// To verify that all parts have been removed, so you don't get charged for +// To verify that all parts have been removed and prevent getting charged for // the part storage, you should call the ListParts (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html) -// action and ensure that the parts list is empty. +// API operation and ensure that the parts list is empty. // -// For information about permissions required to use the multipart upload, see -// Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions +// +// - General purpose bucket permissions - For information about permissions +// required to use the multipart upload, see Multipart Upload and Permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to AbortMultipartUpload: // @@ -173,60 +201,93 @@ // // You first initiate the multipart upload and then upload all parts using the // UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) +// operation or the UploadPartCopy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) // operation. After successfully uploading all relevant parts of an upload, -// you call this action to complete the upload. Upon receiving this request, -// Amazon S3 concatenates all the parts in ascending order by part number to -// create a new object. In the Complete Multipart Upload request, you must provide -// the parts list. You must ensure that the parts list is complete. This action -// concatenates the parts that you provide in the list. For each part in the -// list, you must provide the part number and the ETag value, returned after -// that part was uploaded. +// you call this CompleteMultipartUpload operation to complete the upload. Upon +// receiving this request, Amazon S3 concatenates all the parts in ascending +// order by part number to create a new object. In the CompleteMultipartUpload +// request, you must provide the parts list and ensure that the parts list is +// complete. The CompleteMultipartUpload API operation concatenates the parts +// that you provide in the list. For each part in the list, you must provide +// the PartNumber value and the ETag value that are returned after that part +// was uploaded. // -// Processing of a Complete Multipart Upload request could take several minutes -// to complete. After Amazon S3 begins processing the request, it sends an HTTP +// The processing of a CompleteMultipartUpload request could take several minutes +// to finalize. After Amazon S3 begins processing the request, it sends an HTTP // response header that specifies a 200 OK response. While processing is in // progress, Amazon S3 periodically sends white space characters to keep the // connection from timing out. A request could fail after the initial 200 OK // response has been sent. This means that a 200 OK response can contain either -// a success or an error. If you call the S3 API directly, make sure to design -// your application to parse the contents of the response and handle it appropriately. +// a success or an error. The error response might be embedded in the 200 OK +// response. If you call this API operation directly, make sure to design your +// application to parse the contents of the response and handle it appropriately. // If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs // detect the embedded error and apply error handling per your configuration // settings (including automatically retrying the request as appropriate). If -// the condition persists, the SDKs throws an exception (or, for the SDKs that -// don't use exceptions, they return the error). +// the condition persists, the SDKs throw an exception (or, for the SDKs that +// don't use exceptions, they return an error). // // Note that if CompleteMultipartUpload fails, applications should be prepared // to retry the failed requests. For more information, see Amazon S3 Error Best // Practices (https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html). // -// You cannot use Content-Type: application/x-www-form-urlencoded with Complete -// Multipart Upload requests. Also, if you do not provide a Content-Type header, -// CompleteMultipartUpload returns a 200 OK response. +// You can't use Content-Type: application/x-www-form-urlencoded for the CompleteMultipartUpload +// requests. Also, if you don't provide a Content-Type header, CompleteMultipartUpload +// can still return a 200 OK response. // // For more information about multipart uploads, see Uploading Objects Using -// Multipart Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). +// Multipart Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) +// in the Amazon S3 User Guide. +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions +// +// - General purpose bucket permissions - For information about permissions +// required to use the multipart upload API, see Multipart Upload and Permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. // -// For information about permissions required to use the multipart upload API, -// see Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). // -// CompleteMultipartUpload has the following special errors: +// Special errors // -// - Error code: EntityTooSmall Description: Your proposed upload is smaller +// - Error Code: EntityTooSmall Description: Your proposed upload is smaller // than the minimum allowed object size. Each part must be at least 5 MB -// in size, except the last part. 400 Bad Request +// in size, except the last part. HTTP Status Code: 400 Bad Request // -// - Error code: InvalidPart Description: One or more of the specified parts +// - Error Code: InvalidPart Description: One or more of the specified parts // could not be found. The part might not have been uploaded, or the specified -// entity tag might not have matched the part's entity tag. 400 Bad Request +// ETag might not have matched the uploaded part's ETag. HTTP Status Code: +// 400 Bad Request // -// - Error code: InvalidPartOrder Description: The list of parts was not +// - Error Code: InvalidPartOrder Description: The list of parts was not // in ascending order. The parts list must be specified in order by part -// number. 400 Bad Request +// number. HTTP Status Code: 400 Bad Request // -// - Error code: NoSuchUpload Description: The specified multipart upload +// - Error Code: NoSuchUpload Description: The specified multipart upload // does not exist. The upload ID might be invalid, or the multipart upload -// might have been aborted or completed. 404 Not Found +// might have been aborted or completed. HTTP Status Code: 404 Not Found +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to CompleteMultipartUpload: // @@ -319,187 +380,108 @@ // upload Upload Part - Copy (UploadPartCopy) API. For more information, see // Copy Object Using the REST Multipart Upload API (https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html). // -// All copy requests must be authenticated. Additionally, you must have read -// access to the source object and write access to the destination bucket. For -// more information, see REST Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). -// Both the Region that you want to copy the object from and the Region that -// you want to copy the object to must be enabled for your account. +// You can copy individual objects between general purpose buckets, between +// directory buckets, and between general purpose buckets and directory buckets. // -// A copy request might return an error when Amazon S3 receives the copy request -// or while Amazon S3 is copying the files. If the error occurs before the copy -// action starts, you receive a standard Amazon S3 error. If the error occurs -// during the copy operation, the error response is embedded in the 200 OK response. -// This means that a 200 OK response can contain either a success or an error. -// If you call the S3 API directly, make sure to design your application to -// parse the contents of the response and handle it appropriately. If you use -// Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the -// embedded error and apply error handling per your configuration settings (including -// automatically retrying the request as appropriate). If the condition persists, -// the SDKs throws an exception (or, for the SDKs that don't use exceptions, -// they return the error). -// -// If the copy is successful, you receive a response with information about -// the copied object. -// -// If the request is an HTTP 1.1 request, the response is chunk encoded. If -// it were not, it would not contain the content-length, and you would need -// to read the entire body. +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // -// The copy request charge is based on the storage class and Region that you -// specify for the destination object. The request can also result in a data -// retrieval charge for the source if the source storage class bills for data -// retrieval. For pricing information, see Amazon S3 pricing (http://aws.amazon.com/s3/pricing/). +// Both the Region that you want to copy the object from and the Region that +// you want to copy the object to must be enabled for your account. // // Amazon S3 transfer acceleration does not support cross-Region copies. If // you request a cross-Region copy using a transfer acceleration endpoint, you // get a 400 Bad Request error. For more information, see Transfer Acceleration // (https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html). // -// # Metadata -// -// When copying an object, you can preserve all metadata (the default) or specify -// new metadata. However, the access control list (ACL) is not preserved and -// is set to private for the user making the request. To override the default -// ACL setting, specify a new ACL when generating a copy request. For more information, -// see Using ACLs (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). +// # Authentication and authorization // -// To specify whether you want the object metadata copied from the source object -// or replaced with metadata provided in the request, you can optionally add -// the x-amz-metadata-directive header. When you grant permissions, you can -// use the s3:x-amz-metadata-directive condition key to enforce certain metadata -// behavior when objects are uploaded. For more information, see Specifying -// Conditions in a Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html) -// in the Amazon S3 User Guide. For a complete list of Amazon S3-specific condition -// keys, see Actions, Resources, and Condition Keys for Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html). -// -// x-amz-website-redirect-location is unique to each object and must be specified -// in the request headers to copy the value. -// -// x-amz-copy-source-if Headers -// -// To only copy an object under certain conditions, such as whether the Etag -// matches or whether the object was modified before or after a specified date, -// use the following request parameters: -// -// - x-amz-copy-source-if-match -// -// - x-amz-copy-source-if-none-match -// -// - x-amz-copy-source-if-unmodified-since -// -// - x-amz-copy-source-if-modified-since +// All CopyObject requests must be authenticated and signed by using IAM credentials +// (access key ID and secret access key for the IAM identities). All headers +// with the x-amz- prefix, including x-amz-copy-source, must be signed. For +// more information, see REST Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). // -// If both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since -// headers are present in the request and evaluate as follows, Amazon S3 returns -// 200 OK and copies the data: +// Directory buckets - You must use the IAM credentials to authenticate and +// authorize your access to the CopyObject API operation, instead of using the +// temporary security credentials through the CreateSession API operation. // -// - x-amz-copy-source-if-match condition evaluates to true +// Amazon Web Services CLI or SDKs handles authentication and authorization +// on your behalf. // -// - x-amz-copy-source-if-unmodified-since condition evaluates to false +// # Permissions // -// If both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since -// headers are present in the request and evaluate as follows, Amazon S3 returns -// the 412 Precondition Failed response code: +// You must have read access to the source object and write access to the destination +// bucket. // -// - x-amz-copy-source-if-none-match condition evaluates to false +// - General purpose bucket permissions - You must have permissions in an +// IAM policy based on the source and destination bucket types in a CopyObject +// operation. If the source object is in a general purpose bucket, you must +// have s3:GetObject permission to read the source object that is being copied. +// If the destination bucket is a general purpose bucket, you must have s3:PubObject +// permission to write the object copy to the destination bucket. +// +// - Directory bucket permissions - You must have permissions in a bucket +// policy or an IAM identity-based policy based on the source and destination +// bucket types in a CopyObject operation. If the source object that you +// want to copy is in a directory bucket, you must have the s3express:CreateSession +// permission in the Action element of a policy to read the object. By default, +// the session is in the ReadWrite mode. If you want to restrict the access, +// you can explicitly set the s3express:SessionMode condition key to ReadOnly +// on the copy source bucket. If the copy destination is a directory bucket, +// you must have the s3express:CreateSession permission in the Action element +// of a policy to write the object to the destination. The s3express:SessionMode +// condition key can't be set to ReadOnly on the copy destination bucket. +// For example policies, see Example bucket policies for S3 Express One Zone +// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html) +// and Amazon Web Services Identity and Access Management (IAM) identity-based +// policies for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html) +// in the Amazon S3 User Guide. // -// - x-amz-copy-source-if-modified-since condition evaluates to true +// # Response and special errors // -// All headers with the x-amz- prefix, including x-amz-copy-source, must be -// signed. +// When the request is an HTTP 1.1 request, the response is chunk encoded. When +// the request is not an HTTP 1.1 request, the response would not contain the +// Content-Length. You always need to read the entire response body to check +// if the copy succeeds. to keep the connection alive while we copy the data. +// +// - If the copy is successful, you receive a response with information about +// the copied object. +// +// - A copy request might return an error when Amazon S3 receives the copy +// request or while Amazon S3 is copying the files. A 200 OK response can +// contain either a success or an error. If the error occurs before the copy +// action starts, you receive a standard Amazon S3 error. If the error occurs +// during the copy operation, the error response is embedded in the 200 OK +// response. For example, in a cross-region copy, you may encounter throttling +// and receive a 200 OK response. For more information, see Resolve the Error +// 200 response when copying objects to Amazon S3 (repost.aws/knowledge-center/s3-resolve-200-internalerror). +// The 200 OK status code means the copy was accepted, but it doesn't mean +// the copy is complete. Another example is when you disconnect from Amazon +// S3 before the copy is complete, Amazon S3 might cancel the copy and you +// may receive a 200 OK response. You must stay connected to Amazon S3 until +// the entire response is successfully received and processed. If you call +// this API operation directly, make sure to design your application to parse +// the content of the response and handle it appropriately. If you use Amazon +// Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded +// error and apply error handling per your configuration settings (including +// automatically retrying the request as appropriate). If the condition persists, +// the SDKs throw an exception (or, for the SDKs that don't use exceptions, +// they return an error). // -// # Server-side encryption +// # Charge // -// Amazon S3 automatically encrypts all new objects that are copied to an S3 -// bucket. When copying an object, if you don't specify encryption information -// in your copy request, the encryption setting of the target object is set -// to the default encryption configuration of the destination bucket. By default, -// all buckets have a base level of encryption configuration that uses server-side -// encryption with Amazon S3 managed keys (SSE-S3). If the destination bucket -// has a default encryption configuration that uses server-side encryption with -// Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption -// with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with -// customer-provided encryption keys (SSE-C), Amazon S3 uses the corresponding -// KMS key, or a customer-provided key to encrypt the target object copy. -// -// When you perform a CopyObject operation, if you want to use a different type -// of encryption setting for the target object, you can use other appropriate -// encryption-related headers to encrypt the target object with a KMS key, an -// Amazon S3 managed key, or a customer-provided key. With server-side encryption, -// Amazon S3 encrypts your data as it writes your data to disks in its data -// centers and decrypts the data when you access it. If the encryption setting -// in your request is different from the default encryption configuration of -// the destination bucket, the encryption setting in your request takes precedence. -// If the source object for the copy is stored in Amazon S3 using SSE-C, you -// must provide the necessary encryption information in your request so that -// Amazon S3 can decrypt the object for copying. For more information about -// server-side encryption, see Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html). -// -// If a target object uses SSE-KMS, you can enable an S3 Bucket Key for the -// object. For more information, see Amazon S3 Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) -// in the Amazon S3 User Guide. -// -// # Access Control List (ACL)-Specific Request Headers -// -// When copying an object, you can optionally use headers to grant ACL-based -// permissions. By default, all objects are private. Only the owner has full -// access control. When adding a new object, you can grant permissions to individual -// Amazon Web Services accounts or to predefined groups that are defined by -// Amazon S3. These permissions are then added to the ACL on the object. For -// more information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) -// and Managing ACLs Using the REST API (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html). -// -// If the bucket that you're copying objects to uses the bucket owner enforced -// setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. -// Buckets that use this setting only accept PUT requests that don't specify -// an ACL or PUT requests that specify bucket owner full control ACLs, such -// as the bucket-owner-full-control canned ACL or an equivalent form of this -// ACL expressed in the XML format. -// -// For more information, see Controlling ownership of objects and disabling -// ACLs (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) -// in the Amazon S3 User Guide. -// -// If your bucket uses the bucket owner enforced setting for Object Ownership, -// all objects written to the bucket by any account will be owned by the bucket -// owner. -// -// # Checksums -// -// When copying an object, if it has a checksum, that checksum will be copied -// to the new object by default. When you copy the object over, you can optionally -// specify a different checksum algorithm to use with the x-amz-checksum-algorithm -// header. -// -// # Storage Class Options -// -// You can use the CopyObject action to change the storage class of an object -// that is already stored in Amazon S3 by using the StorageClass parameter. -// For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) -// in the Amazon S3 User Guide. -// -// If the source object's storage class is GLACIER or DEEP_ARCHIVE, or the object's -// storage class is INTELLIGENT_TIERING and it's S3 Intelligent-Tiering access -// tier (https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering-overview.html#intel-tiering-tier-definition) -// is Archive Access or Deep Archive Access, you must restore a copy of this -// object before you can use it as a source object for the copy operation. For -// more information, see RestoreObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). -// For more information, see Copying Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html). -// -// # Versioning +// The copy request charge is based on the storage class and Region that you +// specify for the destination object. The request can also result in a data +// retrieval charge for the source if the source storage class bills for data +// retrieval. For pricing information, see Amazon S3 pricing (http://aws.amazon.com/s3/pricing/). // -// By default, x-amz-copy-source header identifies the current version of an -// object to copy. If the current version is a delete marker, Amazon S3 behaves -// as if the object was deleted. To copy a different version, use the versionId -// subresource. -// -// If you enable versioning on the target bucket, Amazon S3 generates a unique -// version ID for the object being copied. This version ID is different from -// the version ID of the source object. Amazon S3 returns the version ID of -// the copied object in the x-amz-version-id response header in the response. +// # HTTP Host header syntax // -// If you do not enable versioning or suspend it on the target bucket, the version -// ID that Amazon S3 generates is always null. +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to CopyObject: // @@ -584,78 +566,89 @@ // CreateBucket API operation for Amazon Simple Storage Service. // -// Creates a new S3 bucket. To create a bucket, you must register with Amazon -// S3 and have a valid Amazon Web Services Access Key ID to authenticate requests. +// This action creates an Amazon S3 bucket. To create an Amazon S3 on Outposts +// bucket, see CreateBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html). +// +// Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and +// have a valid Amazon Web Services Access Key ID to authenticate requests. // Anonymous requests are never allowed to create buckets. By creating the bucket, // you become the bucket owner. // -// Not every string is an acceptable bucket name. For information about bucket -// naming restrictions, see Bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html). -// -// If you want to create an Amazon S3 on Outposts bucket, see Create Bucket -// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html). +// There are two types of buckets: general purpose buckets and directory buckets. +// For more information about these bucket types, see Creating, configuring, +// and working with Amazon S3 buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) +// in the Amazon S3 User Guide. // -// By default, the bucket is created in the US East (N. Virginia) Region. You -// can optionally specify a Region in the request body. To constrain the bucket -// creation to a specific Region, you can use LocationConstraint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketConfiguration.html) -// condition key. You might choose a Region to optimize latency, minimize costs, -// or address regulatory requirements. For example, if you reside in Europe, -// you will probably find it advantageous to create buckets in the Europe (Ireland) -// Region. For more information, see Accessing a bucket (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro). -// -// If you send your create bucket request to the s3.amazonaws.com endpoint, -// the request goes to the us-east-1 Region. Accordingly, the signature calculations -// in Signature Version 4 must use us-east-1 as the Region, even if the location -// constraint in the request specifies another Region where the bucket is to -// be created. If you create a bucket in a Region other than US East (N. Virginia), -// your application must be able to handle 307 redirect. For more information, -// see Virtual hosting of buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html). +// - General purpose buckets - If you send your CreateBucket request to the +// s3.amazonaws.com global endpoint, the request goes to the us-east-1 Region. +// So the signature calculations in Signature Version 4 must use us-east-1 +// as the Region, even if the location constraint in the request specifies +// another Region where the bucket is to be created. If you create a bucket +// in a Region other than US East (N. Virginia), your application must be +// able to handle 307 redirect. For more information, see Virtual hosting +// of buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html) +// in the Amazon S3 User Guide. // -// # Permissions +// - Directory buckets - For directory buckets, you must make requests for +// this API operation to the Regional endpoint. These endpoints support path-style +// requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name +// . Virtual-hosted-style requests aren't supported. For more information, +// see Regional and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // -// In addition to s3:CreateBucket, the following permissions are required when -// your CreateBucket request includes specific headers: +// Permissions // -// - Access control lists (ACLs) - If your CreateBucket request specifies -// access control list (ACL) permissions and the ACL is public-read, public-read-write, -// authenticated-read, or if you specify access permissions explicitly through -// any other ACL, both s3:CreateBucket and s3:PutBucketAcl permissions are -// needed. If the ACL for the CreateBucket request is private or if the request -// doesn't specify any ACLs, only s3:CreateBucket permission is needed. -// -// - Object Lock - If ObjectLockEnabledForBucket is set to true in your CreateBucket -// request, s3:PutBucketObjectLockConfiguration and s3:PutBucketVersioning -// permissions are required. -// -// - S3 Object Ownership - If your CreateBucket request includes the x-amz-object-ownership -// header, then the s3:PutBucketOwnershipControls permission is required. -// By default, ObjectOwnership is set to BucketOWnerEnforced and ACLs are -// disabled. We recommend keeping ACLs disabled, except in uncommon use cases -// where you must control access for each object individually. If you want -// to change the ObjectOwnership setting, you can use the x-amz-object-ownership -// header in your CreateBucket request to set the ObjectOwnership setting -// of your choice. For more information about S3 Object Ownership, see Controlling -// object ownership (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) +// - General purpose bucket permissions - In addition to the s3:CreateBucket +// permission, the following permissions are required in a policy when your +// CreateBucket request includes specific headers: Access control lists (ACLs) +// +// - In your CreateBucket request, if you specify an access control list +// (ACL) and set it to public-read, public-read-write, authenticated-read, +// or if you explicitly specify any other custom ACLs, both s3:CreateBucket +// and s3:PutBucketAcl permissions are required. In your CreateBucket request, +// if you set the ACL to private, or if you don't specify any ACLs, only +// the s3:CreateBucket permission is required. Object Lock - In your CreateBucket +// request, if you set x-amz-bucket-object-lock-enabled to true, the s3:PutBucketObjectLockConfiguration +// and s3:PutBucketVersioning permissions are required. S3 Object Ownership +// +// - If your CreateBucket request includes the x-amz-object-ownership header, +// then the s3:PutBucketOwnershipControls permission is required. If your +// CreateBucket request sets BucketOwnerEnforced for Amazon S3 Object Ownership +// and specifies a bucket ACL that provides access to an external Amazon +// Web Services account, your request fails with a 400 error and returns +// the InvalidBucketAcLWithObjectOwnership error code. For more information, +// see Setting Object Ownership on an existing bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-existing-bucket.html) +// in the Amazon S3 User Guide. S3 Block Public Access - If your specific +// use case requires granting public access to your S3 resources, you can +// disable Block Public Access. Specifically, you can create a new bucket +// with Block Public Access enabled, then separately call the DeletePublicAccessBlock +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html) +// API. To use this operation, you must have the s3:PutBucketPublicAccessBlock +// permission. For more information about S3 Block Public Access, see Blocking +// public access to your Amazon S3 storage (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html) // in the Amazon S3 User Guide. // -// - S3 Block Public Access - If your specific use case requires granting -// public access to your S3 resources, you can disable Block Public Access. -// You can create a new bucket with Block Public Access enabled, then separately -// call the DeletePublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html) -// API. To use this operation, you must have the s3:PutBucketPublicAccessBlock -// permission. By default, all Block Public Access settings are enabled for -// new buckets. To avoid inadvertent exposure of your resources, we recommend -// keeping the S3 Block Public Access settings enabled. For more information -// about S3 Block Public Access, see Blocking public access to your Amazon -// S3 storage (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) +// - Directory bucket permissions - You must have the s3express:CreateBucket +// permission in an IAM identity-based policy instead of a bucket policy. +// Cross-account access to this API operation isn't supported. This operation +// can only be performed by the Amazon Web Services account that owns the +// resource. For more information about directory bucket policies and permissions, +// see Amazon Web Services Identity and Access Management (IAM) for S3 Express +// One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html) +// in the Amazon S3 User Guide. The permissions for ACLs, Object Lock, S3 +// Object Ownership, and S3 Block Public Access are not supported for directory +// buckets. For directory buckets, all Block Public Access settings are enabled +// at the bucket level and S3 Object Ownership is set to Bucket owner enforced +// (ACLs disabled). These settings can't be modified. For more information +// about permissions for creating and working with directory buckets, see +// Directory buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html) +// in the Amazon S3 User Guide. For more information about supported S3 features +// for directory buckets, see Features of S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone.html#s3-express-features) // in the Amazon S3 User Guide. // -// If your CreateBucket request sets BucketOwnerEnforced for Amazon S3 Object -// Ownership and specifies a bucket ACL that provides access to an external -// Amazon Web Services account, your request fails with a 400 error and returns -// the InvalidBucketAcLWithObjectOwnership error code. For more information, -// see Setting Object Ownership on an existing bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-existing-bucket.html) -// in the Amazon S3 User Guide. +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com. // // The following operations are related to CreateBucket: // @@ -753,164 +746,139 @@ // You specify this upload ID in each of your subsequent upload part requests // (see UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)). // You also include this upload ID in the final request to either complete or -// abort the multipart upload request. +// abort the multipart upload request. For more information about multipart +// uploads, see Multipart Upload Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html) +// in the Amazon S3 User Guide. // -// For more information about multipart uploads, see Multipart Upload Overview -// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html). +// After you initiate a multipart upload and upload one or more parts, to stop +// being charged for storing the uploaded parts, you must either complete or +// abort the multipart upload. Amazon S3 frees up the space used to store the +// parts and stops charging you for storing them only after you either complete +// or abort a multipart upload. // // If you have configured a lifecycle rule to abort incomplete multipart uploads, -// the upload must complete within the number of days specified in the bucket -// lifecycle configuration. Otherwise, the incomplete multipart upload becomes -// eligible for an abort action and Amazon S3 aborts the multipart upload. For -// more information, see Aborting Incomplete Multipart Uploads Using a Bucket -// Lifecycle Configuration (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config). +// the created multipart upload must be completed within the number of days +// specified in the bucket lifecycle configuration. Otherwise, the incomplete +// multipart upload becomes eligible for an abort action and Amazon S3 aborts +// the multipart upload. For more information, see Aborting Incomplete Multipart +// Uploads Using a Bucket Lifecycle Configuration (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config). +// +// - Directory buckets - S3 Lifecycle is not supported by directory buckets. +// +// - Directory buckets - For directory buckets, you must make requests for +// this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // -// For information about the permissions required to use the multipart upload -// API, see Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). +// # Request signing // // For request signing, multipart upload is just a series of regular requests. // You initiate a multipart upload, send one or more requests to upload parts, // and then complete the multipart upload process. You sign each request individually. // There is nothing special about signing multipart upload requests. For more // information about signing, see Authenticating Requests (Amazon Web Services -// Signature Version 4) (https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html). -// -// After you initiate a multipart upload and upload one or more parts, to stop -// being charged for storing the uploaded parts, you must either complete or -// abort the multipart upload. Amazon S3 frees up the space used to store the -// parts and stop charging you for storing them only after you either complete -// or abort a multipart upload. -// -// Server-side encryption is for data encryption at rest. Amazon S3 encrypts -// your data as it writes it to disks in its data centers and decrypts it when -// you access it. Amazon S3 automatically encrypts all new objects that are -// uploaded to an S3 bucket. When doing a multipart upload, if you don't specify -// encryption information in your request, the encryption setting of the uploaded -// parts is set to the default encryption configuration of the destination bucket. -// By default, all buckets have a base level of encryption configuration that -// uses server-side encryption with Amazon S3 managed keys (SSE-S3). If the -// destination bucket has a default encryption configuration that uses server-side -// encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided -// encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided -// key to encrypt the uploaded parts. When you perform a CreateMultipartUpload -// operation, if you want to use a different type of encryption setting for -// the uploaded parts, you can request that Amazon S3 encrypts the object with -// a KMS key, an Amazon S3 managed key, or a customer-provided key. If the encryption -// setting in your request is different from the default encryption configuration -// of the destination bucket, the encryption setting in your request takes precedence. -// If you choose to provide your own encryption key, the request headers you -// provide in UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) -// and UploadPartCopy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) -// requests must match the headers you used in the request to initiate the upload -// by using CreateMultipartUpload. You can request that Amazon S3 save the uploaded -// parts encrypted with server-side encryption with an Amazon S3 managed key -// (SSE-S3), an Key Management Service (KMS) key (SSE-KMS), or a customer-provided -// encryption key (SSE-C). -// -// To perform a multipart upload with encryption by using an Amazon Web Services -// KMS key, the requester must have permission to the kms:Decrypt and kms:GenerateDataKey* -// actions on the key. These permissions are required because Amazon S3 must -// decrypt and read data from the encrypted file parts before it completes the -// multipart upload. For more information, see Multipart upload API and permissions -// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions) -// and Protecting data using server-side encryption with Amazon Web Services -// KMS (https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) -// in the Amazon S3 User Guide. -// -// If your Identity and Access Management (IAM) user or role is in the same -// Amazon Web Services account as the KMS key, then you must have these permissions -// on the key policy. If your IAM user or role belongs to a different account -// than the key, then you must have the permissions on both the key policy and -// your IAM user or role. -// -// For more information, see Protecting Data Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html). -// -// # Access Permissions -// -// When copying an object, you can optionally specify the accounts or groups -// that should be granted specific permissions on the new object. There are -// two ways to grant the permissions using the request headers: -// -// - Specify a canned ACL with the x-amz-acl request header. For more information, -// see Canned ACL (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL). -// -// - Specify access permissions explicitly with the x-amz-grant-read, x-amz-grant-read-acp, -// x-amz-grant-write-acp, and x-amz-grant-full-control headers. These parameters -// map to the set of permissions that Amazon S3 supports in an ACL. For more -// information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html). -// -// You can use either a canned ACL or specify access permissions explicitly. -// You cannot do both. +// Signature Version 4) (https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html) +// in the Amazon S3 User Guide. // -// # Server-Side- Encryption-Specific Request Headers +// Permissions // -// Amazon S3 encrypts data by using server-side encryption with an Amazon S3 -// managed key (SSE-S3) by default. Server-side encryption is for data encryption -// at rest. Amazon S3 encrypts your data as it writes it to disks in its data -// centers and decrypts it when you access it. You can request that Amazon S3 -// encrypts data at rest by using server-side encryption with other key options. -// The option you use depends on whether you want to use KMS keys (SSE-KMS) -// or provide your own encryption keys (SSE-C). +// - General purpose bucket permissions - For information about the permissions +// required to use the multipart upload API, see Multipart upload and permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. To perform a multipart upload with encryption +// by using an Amazon Web Services KMS key, the requester must have permission +// to the kms:Decrypt and kms:GenerateDataKey* actions on the key. These +// permissions are required because Amazon S3 must decrypt and read data +// from the encrypted file parts before it completes the multipart upload. +// For more information, see Multipart upload API and permissions (https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions) +// and Protecting data using server-side encryption with Amazon Web Services +// KMS (https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) +// in the Amazon S3 User Guide. // -// - Use KMS keys (SSE-KMS) that include the Amazon Web Services managed +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// Encryption +// +// - General purpose buckets - Server-side encryption is for data encryption +// at rest. Amazon S3 encrypts your data as it writes it to disks in its +// data centers and decrypts it when you access it. Amazon S3 automatically +// encrypts all new objects that are uploaded to an S3 bucket. When doing +// a multipart upload, if you don't specify encryption information in your +// request, the encryption setting of the uploaded parts is set to the default +// encryption configuration of the destination bucket. By default, all buckets +// have a base level of encryption configuration that uses server-side encryption +// with Amazon S3 managed keys (SSE-S3). If the destination bucket has a +// default encryption configuration that uses server-side encryption with +// an Key Management Service (KMS) key (SSE-KMS), or a customer-provided +// encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a +// customer-provided key to encrypt the uploaded parts. When you perform +// a CreateMultipartUpload operation, if you want to use a different type +// of encryption setting for the uploaded parts, you can request that Amazon +// S3 encrypts the object with a different encryption key (such as an Amazon +// S3 managed key, a KMS key, or a customer-provided key). When the encryption +// setting in your request is different from the default encryption configuration +// of the destination bucket, the encryption setting in your request takes +// precedence. If you choose to provide your own encryption key, the request +// headers you provide in UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) +// and UploadPartCopy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) +// requests must match the headers you used in the CreateMultipartUpload +// request. Use KMS keys (SSE-KMS) that include the Amazon Web Services managed // key (aws/s3) and KMS customer managed keys stored in Key Management Service // (KMS) – If you want Amazon Web Services to manage the keys used to encrypt // data, specify the following headers in the request. x-amz-server-side-encryption // x-amz-server-side-encryption-aws-kms-key-id x-amz-server-side-encryption-context // If you specify x-amz-server-side-encryption:aws:kms, but don't provide // x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon -// Web Services managed key (aws/s3 key) in KMS to protect the data. All -// GET and PUT requests for an object protected by KMS fail if you don't -// make them by using Secure Sockets Layer (SSL), Transport Layer Security -// (TLS), or Signature Version 4. For more information about server-side -// encryption with KMS keys (SSE-KMS), see Protecting Data Using Server-Side -// Encryption with KMS keys (https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html). -// -// - Use customer-provided encryption keys (SSE-C) – If you want to manage -// your own encryption keys, provide all the following headers in the request. -// x-amz-server-side-encryption-customer-algorithm x-amz-server-side-encryption-customer-key -// x-amz-server-side-encryption-customer-key-MD5 For more information about -// server-side encryption with customer-provided encryption keys (SSE-C), -// see Protecting data using server-side encryption with customer-provided -// encryption keys (SSE-C) (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html). -// -// # Access-Control-List (ACL)-Specific Request Headers -// -// You also can use the following access control–related headers with this -// operation. By default, all objects are private. Only the owner has full access -// control. When adding a new object, you can grant permissions to individual -// Amazon Web Services accounts or to predefined groups defined by Amazon S3. -// These permissions are then added to the access control list (ACL) on the -// object. For more information, see Using ACLs (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). -// With this operation, you can grant access permissions using one of the following -// two methods: -// -// - Specify a canned ACL (x-amz-acl) — Amazon S3 supports a set of predefined -// ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees -// and permissions. For more information, see Canned ACL (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL). -// -// - Specify access permissions explicitly — To explicitly grant access -// permissions to specific Amazon Web Services accounts or groups, use the -// following headers. Each header maps to specific permissions that Amazon -// S3 supports in an ACL. For more information, see Access Control List (ACL) -// Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html). -// In the header, you specify a list of grantees who get the specific permission. -// To grant permissions explicitly, use: x-amz-grant-read x-amz-grant-write -// x-amz-grant-read-acp x-amz-grant-write-acp x-amz-grant-full-control You -// specify each grantee as a type=value pair, where the type is one of the -// following: id – if the value specified is the canonical user ID of an -// Amazon Web Services account uri – if you are granting permissions to -// a predefined group emailAddress – if the value specified is the email -// address of an Amazon Web Services account Using email addresses to specify -// a grantee is only supported in the following Amazon Web Services Regions: -// US East (N. Virginia) US West (N. California) US West (Oregon) Asia Pacific -// (Singapore) Asia Pacific (Sydney) Asia Pacific (Tokyo) Europe (Ireland) -// South America (São Paulo) For a list of all the Amazon S3 supported Regions -// and endpoints, see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) -// in the Amazon Web Services General Reference. For example, the following -// x-amz-grant-read header grants the Amazon Web Services accounts identified -// by account IDs permissions to read object data and its metadata: x-amz-grant-read: -// id="11112222333", id="444455556666" +// Web Services managed key (aws/s3 key) in KMS to protect the data. To perform +// a multipart upload with encryption by using an Amazon Web Services KMS +// key, the requester must have permission to the kms:Decrypt and kms:GenerateDataKey* +// actions on the key. These permissions are required because Amazon S3 must +// decrypt and read data from the encrypted file parts before it completes +// the multipart upload. For more information, see Multipart upload API and +// permissions (https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions) +// and Protecting data using server-side encryption with Amazon Web Services +// KMS (https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) +// in the Amazon S3 User Guide. If your Identity and Access Management (IAM) +// user or role is in the same Amazon Web Services account as the KMS key, +// then you must have these permissions on the key policy. If your IAM user +// or role is in a different account from the key, then you must have the +// permissions on both the key policy and your IAM user or role. All GET +// and PUT requests for an object protected by KMS fail if you don't make +// them by using Secure Sockets Layer (SSL), Transport Layer Security (TLS), +// or Signature Version 4. For information about configuring any of the officially +// supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying +// the Signature Version in Request Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version) +// in the Amazon S3 User Guide. For more information about server-side encryption +// with KMS keys (SSE-KMS), see Protecting Data Using Server-Side Encryption +// with KMS keys (https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) +// in the Amazon S3 User Guide. Use customer-provided encryption keys (SSE-C) +// – If you want to manage your own encryption keys, provide all the following +// headers in the request. x-amz-server-side-encryption-customer-algorithm +// x-amz-server-side-encryption-customer-key x-amz-server-side-encryption-customer-key-MD5 +// For more information about server-side encryption with customer-provided +// encryption keys (SSE-C), see Protecting data using server-side encryption +// with customer-provided encryption keys (SSE-C) (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html) +// in the Amazon S3 User Guide. +// +// - Directory buckets -For directory buckets, only server-side encryption +// with Amazon S3 managed keys (SSE-S3) (AES256) is supported. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to CreateMultipartUpload: // @@ -952,6 +920,152 @@ return out, req.Send() } +const opCreateSession = "CreateSession" + +// CreateSessionRequest generates a "aws/request.Request" representing the +// client's request for the CreateSession 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 CreateSession for more information on using the CreateSession +// 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 CreateSessionRequest method. +// req, resp := client.CreateSessionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateSession +func (c *S3) CreateSessionRequest(input *CreateSessionInput) (req *request.Request, output *CreateSessionOutput) { + op := &request.Operation{ + Name: opCreateSession, + HTTPMethod: "GET", + HTTPPath: "/{Bucket}?session", + } + + if input == nil { + input = &CreateSessionInput{} + } + + output = &CreateSessionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSession API operation for Amazon Simple Storage Service. +// +// Creates a session that establishes temporary security credentials to support +// fast authentication and authorization for the Zonal endpoint APIs on directory +// buckets. For more information about Zonal endpoint APIs that include the +// Availability Zone in the request endpoint, see S3 Express One Zone APIs (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-APIs.html) +// in the Amazon S3 User Guide. +// +// To make Zonal endpoint API requests on a directory bucket, use the CreateSession +// API operation. Specifically, you grant s3express:CreateSession permission +// to a bucket in a bucket policy or an IAM identity-based policy. Then, you +// use IAM credentials to make the CreateSession API request on the bucket, +// which returns temporary security credentials that include the access key +// ID, secret access key, session token, and expiration. These credentials have +// associated permissions to access the Zonal endpoint APIs. After the session +// is created, you don’t need to use other policies to grant permissions to +// each Zonal endpoint API individually. Instead, in your Zonal endpoint API +// requests, you sign your requests by applying the temporary security credentials +// of the session to the request headers and following the SigV4 protocol for +// authentication. You also apply the session token to the x-amz-s3session-token +// request header for authorization. Temporary security credentials are scoped +// to the bucket and expire after 5 minutes. After the expiration time, any +// calls that you make with those credentials will fail. You must use IAM credentials +// again to make a CreateSession API request that generates a new set of temporary +// credentials for use. Temporary credentials cannot be extended or refreshed +// beyond the original specified interval. +// +// If you use Amazon Web Services SDKs, SDKs handle the session token refreshes +// automatically to avoid service interruptions when a session expires. We recommend +// that you use the Amazon Web Services SDKs to initiate and manage requests +// to the CreateSession API. For more information, see Performance guidelines +// and design patterns (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-optimizing-performance-guidelines-design-patterns.html#s3-express-optimizing-performance-session-authentication) +// in the Amazon S3 User Guide. +// +// - You must make requests for this API operation to the Zonal endpoint. +// These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com. +// Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// - CopyObject API operation - Unlike other Zonal endpoint APIs, the CopyObject +// API operation doesn't use the temporary security credentials returned +// from the CreateSession API operation for authentication and authorization. +// For information about authentication and authorization of the CopyObject +// API operation on directory buckets, see CopyObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html). +// +// - HeadBucket API operation - Unlike other Zonal endpoint APIs, the HeadBucket +// API operation doesn't use the temporary security credentials returned +// from the CreateSession API operation for authentication and authorization. +// For information about authentication and authorization of the HeadBucket +// API operation on directory buckets, see HeadBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html). +// +// # Permissions +// +// To obtain temporary security credentials, you must create a bucket policy +// or an IAM identity-based policy that grants s3express:CreateSession permission +// to the bucket. In a policy, you can have the s3express:SessionMode condition +// key to control who can create a ReadWrite or ReadOnly session. For more information +// about ReadWrite or ReadOnly sessions, see x-amz-create-session-mode (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html#API_CreateSession_RequestParameters). +// For example policies, see Example bucket policies for S3 Express One Zone +// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html) +// and Amazon Web Services Identity and Access Management (IAM) identity-based +// policies for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html) +// in the Amazon S3 User Guide. +// +// To grant cross-account access to Zonal endpoint APIs, the bucket policy should +// also grant both accounts the s3express:CreateSession permission. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Storage Service's +// API operation CreateSession for usage and error information. +// +// Returned Error Codes: +// - ErrCodeNoSuchBucket "NoSuchBucket" +// The specified bucket does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateSession +func (c *S3) CreateSession(input *CreateSessionInput) (*CreateSessionOutput, error) { + req, out := c.CreateSessionRequest(input) + return out, req.Send() +} + +// CreateSessionWithContext is the same as CreateSession with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSession 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 *S3) CreateSessionWithContext(ctx aws.Context, input *CreateSessionInput, opts ...request.Option) (*CreateSessionOutput, error) { + req, out := c.CreateSessionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteBucket = "DeleteBucket" // DeleteBucketRequest generates a "aws/request.Request" representing the @@ -999,6 +1113,35 @@ // Deletes the S3 bucket. All objects (including all object versions and delete // markers) in the bucket must be deleted before the bucket itself can be deleted. // +// - Directory buckets - If multipart uploads in a directory bucket are in +// progress, you can't delete the bucket until all the in-progress multipart +// uploads are aborted or completed. +// +// - Directory buckets - For directory buckets, you must make requests for +// this API operation to the Regional endpoint. These endpoints support path-style +// requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name +// . Virtual-hosted-style requests aren't supported. For more information, +// see Regional and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions +// +// - General purpose bucket permissions - You must have the s3:DeleteBucket +// permission on the specified bucket in a policy. +// +// - Directory bucket permissions - You must have the s3express:DeleteBucket +// permission in an IAM identity-based policy instead of a bucket policy. +// Cross-account access to this API operation isn't supported. This operation +// can only be performed by the Amazon Web Services account that owns the +// resource. For more information about directory bucket policies and permissions, +// see Amazon Web Services Identity and Access Management (IAM) for S3 Express +// One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html) +// in the Amazon S3 User Guide. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com. +// // The following operations are related to DeleteBucket: // // - CreateBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html) @@ -1077,6 +1220,8 @@ // DeleteBucketAnalyticsConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes an analytics configuration for the bucket (specified by the analytics // configuration ID). // @@ -1169,6 +1314,8 @@ // DeleteBucketCors API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes the cors configuration information set for the bucket. // // To use this operation, you must have permission to perform the s3:PutBucketCORS @@ -1256,6 +1403,8 @@ // DeleteBucketEncryption API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This implementation of the DELETE action resets the default encryption for // the bucket as server-side encryption with Amazon S3 managed keys (SSE-S3). // For information about the bucket default encryption feature, see Amazon S3 @@ -1347,6 +1496,8 @@ // DeleteBucketIntelligentTieringConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes the S3 Intelligent-Tiering configuration from the specified bucket. // // The S3 Intelligent-Tiering storage class is designed to optimize storage @@ -1446,6 +1597,8 @@ // DeleteBucketInventoryConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes an inventory configuration (identified by the inventory ID) from // the bucket. // @@ -1538,6 +1691,8 @@ // DeleteBucketLifecycle API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes the lifecycle configuration from the specified bucket. Amazon S3 // removes all the lifecycle configuration rules in the lifecycle subresource // associated with the bucket. Your objects never expire, and Amazon S3 no longer @@ -1632,6 +1787,8 @@ // DeleteBucketMetricsConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes a metrics configuration for the Amazon CloudWatch request metrics // (specified by the metrics configuration ID) from the bucket. Note that this // doesn't include the daily storage metrics. @@ -1727,6 +1884,8 @@ // DeleteBucketOwnershipControls API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Removes OwnershipControls for an Amazon S3 bucket. To use this operation, // you must have the s3:PutBucketOwnershipControls permission. For more information // about Amazon S3 permissions, see Specifying Permissions in a Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html). @@ -1812,11 +1971,21 @@ // DeleteBucketPolicy API operation for Amazon Simple Storage Service. // -// This implementation of the DELETE action uses the policy subresource to delete -// the policy of a specified bucket. If you are using an identity other than -// the root user of the Amazon Web Services account that owns the bucket, the -// calling identity must have the DeleteBucketPolicy permissions on the specified -// bucket and belong to the bucket owner's account to use this operation. +// Deletes the policy of a specified bucket. +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Regional endpoint. These endpoints support path-style +// requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name +// . Virtual-hosted-style requests aren't supported. For more information, see +// Regional and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// # Permissions +// +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the bucket, the calling identity must both have the DeleteBucketPolicy +// permissions on the specified bucket and belong to the bucket owner's account +// in order to use this operation. // // If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 // Access Denied error. If you have the correct permissions, but you're not @@ -1831,8 +2000,23 @@ // these API actions by VPC endpoint policies and Amazon Web Services Organizations // policies. // -// For more information about bucket policies, see Using Bucket Policies and -// UserPolicies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). +// - General purpose bucket permissions - The s3:DeleteBucketPolicy permission +// is required in a policy. For more information about general purpose buckets +// bucket policies, see Using Bucket Policies and User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html) +// in the Amazon S3 User Guide. +// +// - Directory bucket permissions - To grant access to this API operation, +// you must have the s3express:DeleteBucketPolicy permission in an IAM identity-based +// policy instead of a bucket policy. Cross-account access to this API operation +// isn't supported. This operation can only be performed by the Amazon Web +// Services account that owns the resource. For more information about directory +// bucket policies and permissions, see Amazon Web Services Identity and +// Access Management (IAM) for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html) +// in the Amazon S3 User Guide. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com. // // The following operations are related to DeleteBucketPolicy // @@ -1912,6 +2096,8 @@ // DeleteBucketReplication API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes the replication configuration from the bucket. // // To use this operation, you must have permissions to perform the s3:PutReplicationConfiguration @@ -2004,6 +2190,8 @@ // DeleteBucketTagging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Deletes the tags from the bucket. // // To use this operation, you must have permission to perform the s3:PutBucketTagging @@ -2088,6 +2276,8 @@ // DeleteBucketWebsite API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This action removes the website configuration for a bucket. Amazon S3 returns // a 200 OK response upon successfully deleting a website configuration on the // specified bucket. You will get a 200 OK response if the website configuration @@ -2180,31 +2370,79 @@ // DeleteObject API operation for Amazon Simple Storage Service. // -// Removes the null version (if there is one) of an object and inserts a delete -// marker, which becomes the latest version of the object. If there isn't a -// null version, Amazon S3 does not remove any objects but will still respond -// that the command was successful. -// -// To remove a specific version, you must use the version Id subresource. Using -// this subresource permanently deletes the version. If the object deleted is -// a delete marker, Amazon S3 sets the response header, x-amz-delete-marker, +// Removes an object from a bucket. The behavior depends on the bucket's versioning +// state: +// +// - If versioning is enabled, the operation removes the null version (if +// there is one) of an object and inserts a delete marker, which becomes +// the latest version of the object. If there isn't a null version, Amazon +// S3 does not remove any objects but will still respond that the command +// was successful. +// +// - If versioning is suspended or not enabled, the operation permanently +// deletes the object. +// +// - Directory buckets - S3 Versioning isn't enabled and supported for directory +// buckets. For this API operation, only the null value of the version ID +// is supported by directory buckets. You can only specify null to the versionId +// query parameter in the request. +// +// - Directory buckets - For directory buckets, you must make requests for +// this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// To remove a specific version, you must use the versionId query parameter. +// Using this query parameter permanently deletes the version. If the object +// deleted is a delete marker, Amazon S3 sets the response header x-amz-delete-marker // to true. // // If the object you want to delete is in a bucket where the bucket versioning // configuration is MFA Delete enabled, you must include the x-amz-mfa request // header in the DELETE versionId request. Requests that include x-amz-mfa must -// use HTTPS. +// use HTTPS. For more information about MFA Delete, see Using MFA Delete (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html) +// in the Amazon S3 User Guide. To see sample requests that use versioning, +// see Sample Request (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete). // -// For more information about MFA Delete, see Using MFA Delete (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html). -// To see sample requests that use versioning, see Sample Request (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete). +// Directory buckets - MFA delete is not supported by directory buckets. // -// You can delete objects by explicitly calling DELETE Object or configure its -// lifecycle (PutBucketLifecycle (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html)) +// You can delete objects by explicitly calling DELETE Object or calling (PutBucketLifecycle +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html)) // to enable Amazon S3 to remove them for you. If you want to block users or // accounts from removing or deleting objects from your bucket, you must deny // them the s3:DeleteObject, s3:DeleteObjectVersion, and s3:PutLifeCycleConfiguration // actions. // +// Directory buckets - S3 Lifecycle is not supported by directory buckets. +// +// Permissions +// +// - General purpose bucket permissions - The following permissions are required +// in your policies when your DeleteObjects request includes specific headers. +// s3:DeleteObject - To delete an object from a bucket, you must always have +// the s3:DeleteObject permission. s3:DeleteObjectVersion - To delete a specific +// version of an object from a versiong-enabled bucket, you must have the +// s3:DeleteObjectVersion permission. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. +// // The following action is related to DeleteObject: // // - PutObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html) @@ -2280,6 +2518,8 @@ // DeleteObjectTagging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Removes the entire tag set from the specified object. For more information // about managing object tags, see Object Tagging (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html). // @@ -2371,36 +2611,82 @@ // DeleteObjects API operation for Amazon Simple Storage Service. // -// This action enables you to delete multiple objects from a bucket using a -// single HTTP request. If you know the object keys that you want to delete, -// then this action provides a suitable alternative to sending individual delete -// requests, reducing per-request overhead. -// -// The request contains a list of up to 1000 keys that you want to delete. In -// the XML, you provide the object key names, and optionally, version IDs if -// you want to delete a specific version of the object from a versioning-enabled -// bucket. For each key, Amazon S3 performs a delete action and returns the -// result of that delete, success, or failure, in the response. Note that if +// This operation enables you to delete multiple objects from a bucket using +// a single HTTP request. If you know the object keys that you want to delete, +// then this operation provides a suitable alternative to sending individual +// delete requests, reducing per-request overhead. +// +// The request can contain a list of up to 1000 keys that you want to delete. +// In the XML, you provide the object key names, and optionally, version IDs +// if you want to delete a specific version of the object from a versioning-enabled +// bucket. For each key, Amazon S3 performs a delete operation and returns the +// result of that delete, success or failure, in the response. Note that if // the object specified in the request is not found, Amazon S3 returns the result // as deleted. // -// The action supports two modes for the response: verbose and quiet. By default, -// the action uses verbose mode in which the response includes the result of -// deletion of each key in your request. In quiet mode the response includes -// only keys where the delete action encountered an error. For a successful -// deletion, the action does not return any information about the delete in -// the response body. +// - Directory buckets - S3 Versioning isn't enabled and supported for directory +// buckets. +// +// - Directory buckets - For directory buckets, you must make requests for +// this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// The operation supports two modes for the response: verbose and quiet. By +// default, the operation uses verbose mode in which the response includes the +// result of deletion of each key in your request. In quiet mode the response +// includes only keys where the delete operation encountered an error. For a +// successful deletion in a quiet mode, the operation does not return any information +// about the delete in the response body. // // When performing this action on an MFA Delete enabled bucket, that attempts // to delete any versioned objects, you must include an MFA token. If you do // not provide one, the entire request will fail, even if there are non-versioned // objects you are trying to delete. If you provide an invalid token, whether // there are versioned keys in the request or not, the entire Multi-Object Delete -// request will fail. For information about MFA Delete, see MFA Delete (https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete). +// request will fail. For information about MFA Delete, see MFA Delete (https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete) +// in the Amazon S3 User Guide. +// +// Directory buckets - MFA delete is not supported by directory buckets. +// +// Permissions +// +// - General purpose bucket permissions - The following permissions are required +// in your policies when your DeleteObjects request includes specific headers. +// s3:DeleteObject - To delete an object from a bucket, you must always specify +// the s3:DeleteObject permission. s3:DeleteObjectVersion - To delete a specific +// version of an object from a versiong-enabled bucket, you must specify +// the s3:DeleteObjectVersion permission. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// Content-MD5 request header +// +// - General purpose bucket - The Content-MD5 request header is required +// for all Multi-Object Delete requests. Amazon S3 uses the header value +// to ensure that your request body has not been altered in transit. +// +// - Directory bucket - The Content-MD5 request header or a additional checksum +// request header (including x-amz-checksum-crc32, x-amz-checksum-crc32c, +// x-amz-checksum-sha1, or x-amz-checksum-sha256) is required for all Multi-Object +// Delete requests. +// +// # HTTP Host header syntax // -// Finally, the Content-MD5 header is required for all Multi-Object Delete requests. -// Amazon S3 uses the header value to ensure that your request body has not -// been altered in transit. +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to DeleteObjects: // @@ -2486,6 +2772,8 @@ // DeletePublicAccessBlock API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use // this operation, you must have the s3:PutBucketPublicAccessBlock permission. // For more information about permissions, see Permissions Related to Bucket @@ -2573,6 +2861,8 @@ // GetBucketAccelerateConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This implementation of the GET action uses the accelerate subresource to // return the Transfer Acceleration state of a bucket, which is either Enabled // or Suspended. Amazon S3 Transfer Acceleration is a bucket-level feature that @@ -2672,16 +2962,18 @@ // GetBucketAcl API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This implementation of the GET action uses the acl subresource to return // the access control list (ACL) of a bucket. To use GET to return the ACL of -// the bucket, you must have READ_ACP access to the bucket. If READ_ACP permission -// is granted to the anonymous user, you can return the ACL of the bucket without -// using an authorization header. +// the bucket, you must have the READ_ACP access to the bucket. If READ_ACP +// permission is granted to the anonymous user, you can return the ACL of the +// bucket without using an authorization header. // -// To use this API operation against an access point, provide the alias of the -// access point in place of the bucket name. +// When you use this API operation with an access point, provide the alias of +// the access point in place of the bucket name. // -// To use this API operation against an Object Lambda access point, provide +// When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -2768,6 +3060,8 @@ // GetBucketAnalyticsConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This implementation of the GET action returns an analytics configuration // (identified by the analytics configuration ID) from the bucket. // @@ -2861,6 +3155,8 @@ // GetBucketCors API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the Cross-Origin Resource Sharing (CORS) configuration information // set for the bucket. // @@ -2868,10 +3164,10 @@ // action. By default, the bucket owner has this permission and can grant it // to others. // -// To use this API operation against an access point, provide the alias of the -// access point in place of the bucket name. +// When you use this API operation with an access point, provide the alias of +// the access point in place of the bucket name. // -// To use this API operation against an Object Lambda access point, provide +// When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -2957,6 +3253,8 @@ // GetBucketEncryption API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the default encryption configuration for an Amazon S3 bucket. By // default, all buckets have a default encryption configuration that uses server-side // encryption with Amazon S3 managed keys (SSE-S3). For information about the @@ -3047,6 +3345,8 @@ // GetBucketIntelligentTieringConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Gets the S3 Intelligent-Tiering configuration from the specified bucket. // // The S3 Intelligent-Tiering storage class is designed to optimize storage @@ -3145,6 +3445,8 @@ // GetBucketInventoryConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns an inventory configuration (identified by the inventory configuration // ID) from the bucket. // @@ -3246,6 +3548,8 @@ // see the updated version of this topic. This topic is provided for backward // compatibility. // +// This operation is not supported by directory buckets. +// // Returns the lifecycle configuration information set on the bucket. For information // about lifecycle configuration, see Object Lifecycle Management (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html). // @@ -3344,6 +3648,8 @@ // GetBucketLifecycleConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Bucket lifecycle configuration now supports specifying a lifecycle rule using // an object key name prefix, one or more object tags, or a combination of both. // Accordingly, this section describes the latest API. The response describes @@ -3446,14 +3752,16 @@ // GetBucketLocation API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the Region the bucket resides in. You set the bucket's Region using // the LocationConstraint request parameter in a CreateBucket request. For more // information, see CreateBucket (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html). // -// To use this API operation against an access point, provide the alias of the -// access point in place of the bucket name. +// When you use this API operation with an access point, provide the alias of +// the access point in place of the bucket name. // -// To use this API operation against an Object Lambda access point, provide +// When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -3540,6 +3848,8 @@ // GetBucketLogging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the logging status of a bucket and the permissions users have to // view and modify that status. // @@ -3620,6 +3930,8 @@ // GetBucketMetricsConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Gets a metrics configuration (specified by the metrics configuration ID) // from the bucket. Note that this doesn't include the daily storage metrics. // @@ -3718,6 +4030,8 @@ // GetBucketNotification API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // No longer used, see GetBucketNotificationConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3795,6 +4109,8 @@ // GetBucketNotificationConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the notification configuration of a bucket. // // If notifications are not enabled on the bucket, the action returns an empty @@ -3805,10 +4121,10 @@ // to other users to read this configuration with the s3:GetBucketNotification // permission. // -// To use this API operation against an access point, provide the alias of the -// access point in place of the bucket name. +// When you use this API operation with an access point, provide the alias of +// the access point in place of the bucket name. // -// To use this API operation against an Object Lambda access point, provide +// When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -3893,6 +4209,8 @@ // GetBucketOwnershipControls API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, // you must have the s3:GetBucketOwnershipControls permission. For more information // about Amazon S3 permissions, see Specifying permissions in a policy (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html). @@ -3977,10 +4295,21 @@ // GetBucketPolicy API operation for Amazon Simple Storage Service. // -// Returns the policy of a specified bucket. If you are using an identity other -// than the root user of the Amazon Web Services account that owns the bucket, -// the calling identity must have the GetBucketPolicy permissions on the specified -// bucket and belong to the bucket owner's account in order to use this operation. +// Returns the policy of a specified bucket. +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Regional endpoint. These endpoints support path-style +// requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name +// . Virtual-hosted-style requests aren't supported. For more information, see +// Regional and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// # Permissions +// +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the bucket, the calling identity must both have the GetBucketPolicy +// permissions on the specified bucket and belong to the bucket owner's account +// in order to use this operation. // // If you don't have GetBucketPolicy permissions, Amazon S3 returns a 403 Access // Denied error. If you have the correct permissions, but you're not using an @@ -3995,17 +4324,33 @@ // these API actions by VPC endpoint policies and Amazon Web Services Organizations // policies. // -// To use this API operation against an access point, provide the alias of the -// access point in place of the bucket name. +// - General purpose bucket permissions - The s3:GetBucketPolicy permission +// is required in a policy. For more information about general purpose buckets +// bucket policies, see Using Bucket Policies and User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html) +// in the Amazon S3 User Guide. // -// To use this API operation against an Object Lambda access point, provide -// the alias of the Object Lambda access point in place of the bucket name. -// If the Object Lambda access point alias in a request is not valid, the error -// code InvalidAccessPointAliasError is returned. For more information about -// InvalidAccessPointAliasError, see List of Error Codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList). +// - Directory bucket permissions - To grant access to this API operation, +// you must have the s3express:GetBucketPolicy permission in an IAM identity-based +// policy instead of a bucket policy. Cross-account access to this API operation +// isn't supported. This operation can only be performed by the Amazon Web +// Services account that owns the resource. For more information about directory +// bucket policies and permissions, see Amazon Web Services Identity and +// Access Management (IAM) for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html) +// in the Amazon S3 User Guide. // -// For more information about bucket policies, see Using Bucket Policies and -// User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). +// # Example bucket policies +// +// General purpose buckets example bucket policies - See Bucket policy examples +// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html) +// in the Amazon S3 User Guide. +// +// Directory bucket example bucket policies - See Example bucket policies for +// S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html) +// in the Amazon S3 User Guide. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com. // // The following action is related to GetBucketPolicy: // @@ -4082,6 +4427,8 @@ // GetBucketPolicyStatus API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Retrieves the policy status for an Amazon S3 bucket, indicating whether the // bucket is public. In order to use this operation, you must have the s3:GetBucketPolicyStatus // permission. For more information about Amazon S3 permissions, see Specifying @@ -4171,6 +4518,8 @@ // GetBucketReplication API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the replication configuration of a bucket. // // It can take a while to propagate the put or delete a replication configuration @@ -4268,6 +4617,8 @@ // GetBucketRequestPayment API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the request payment configuration of a bucket. To use this version // of the operation, you must be the bucket owner. For more information, see // Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html). @@ -4347,6 +4698,8 @@ // GetBucketTagging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the tag set associated with the bucket. // // To use this operation, you must have permission to perform the s3:GetBucketTagging @@ -4435,6 +4788,8 @@ // GetBucketVersioning API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the versioning state of a bucket. // // To retrieve the versioning state of a bucket, you must be the bucket owner. @@ -4522,6 +4877,8 @@ // GetBucketWebsite API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the website configuration for a bucket. To host website on Amazon // S3, you can configure a bucket as website by adding a website configuration. // For more information about hosting websites, see Hosting Websites on Amazon @@ -4609,113 +4966,106 @@ // GetObject API operation for Amazon Simple Storage Service. // -// Retrieves objects from Amazon S3. To use GET, you must have READ access to -// the object. If you grant READ access to the anonymous user, you can return -// the object without using an authorization header. -// -// An Amazon S3 bucket has no directory hierarchy such as you would find in -// a typical computer file system. You can, however, create a logical hierarchy -// by using object key names that imply a folder structure. For example, instead -// of naming an object sample.jpg, you can name it photos/2006/February/sample.jpg. -// -// To get an object from such a logical hierarchy, specify the full key name -// for the object in the GET operation. For a virtual hosted-style request example, -// if you have the object photos/2006/February/sample.jpg, specify the resource -// as /photos/2006/February/sample.jpg. For a path-style request example, if -// you have the object photos/2006/February/sample.jpg in the bucket named examplebucket, -// specify the resource as /examplebucket/photos/2006/February/sample.jpg. For -// more information about request types, see HTTP Host Header Bucket Specification -// (https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket). -// -// For more information about returning the ACL of an object, see GetObjectAcl -// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html). +// Retrieves an object from Amazon S3. // -// If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval -// or S3 Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive -// or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve the -// object you must first restore a copy using RestoreObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). -// Otherwise, this action returns an InvalidObjectState error. For information -// about restoring archived objects, see Restoring Archived Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html). +// In the GetObject request, specify the full key name for the object. // -// Encryption request headers, like x-amz-server-side-encryption, should not -// be sent for GET requests if your object uses server-side encryption with -// Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption -// with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with -// Amazon S3 managed encryption keys (SSE-S3). If your object does use these -// types of keys, you’ll get an HTTP 400 Bad Request error. -// -// If you encrypt an object by using server-side encryption with customer-provided -// encryption keys (SSE-C) when you store the object in Amazon S3, then when -// you GET the object, you must use the following headers: -// -// - x-amz-server-side-encryption-customer-algorithm -// -// - x-amz-server-side-encryption-customer-key -// -// - x-amz-server-side-encryption-customer-key-MD5 -// -// For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided -// Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html). -// -// Assuming you have the relevant permission to read object tags, the response -// also returns the x-amz-tagging-count header that provides the count of number -// of tags associated with the object. You can use GetObjectTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html) -// to retrieve the tag set associated with an object. -// -// # Permissions +// General purpose buckets - Both the virtual-hosted-style requests and the +// path-style requests are supported. For a virtual hosted-style request example, +// if you have the object photos/2006/February/sample.jpg, specify the object +// key name as /photos/2006/February/sample.jpg. For a path-style request example, +// if you have the object photos/2006/February/sample.jpg in the bucket named +// examplebucket, specify the object key name as /examplebucket/photos/2006/February/sample.jpg. +// For more information about request types, see HTTP Host Header Bucket Specification +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket) +// in the Amazon S3 User Guide. // -// You need the relevant read object (or version) permission for this operation. -// For more information, see Specifying Permissions in a Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html). -// If the object that you request doesn’t exist, the error that Amazon S3 -// returns depends on whether you also have the s3:ListBucket permission. +// Directory buckets - Only virtual-hosted-style requests are supported. For +// a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg +// in the bucket named examplebucket--use1-az5--x-s3, specify the object key +// name as /photos/2006/February/sample.jpg. Also, when you make requests to +// this API operation, your requests are sent to the Zonal endpoint. These endpoints +// support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // -// If you have the s3:ListBucket permission on the bucket, Amazon S3 returns -// an HTTP status code 404 (Not Found) error. +// Permissions // -// If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP -// status code 403 ("access denied") error. +// - General purpose bucket permissions - You must have the required permissions +// in a policy. To use GetObject, you must have the READ access to the object +// (or version). If you grant READ access to the anonymous user, the GetObject +// operation returns the object without using an authorization header. For +// more information, see Specifying permissions in a policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html) +// in the Amazon S3 User Guide. If you include a versionId in your request +// header, you must have the s3:GetObjectVersion permission to access a specific +// version of an object. The s3:GetObject permission is not required in this +// scenario. If you request the current version of an object without a specific +// versionId in the request header, only the s3:GetObject permission is required. +// The s3:GetObjectVersion permission is not required in this scenario. If +// the object that you request doesn’t exist, the error that Amazon S3 +// returns depends on whether you also have the s3:ListBucket permission. +// If you have the s3:ListBucket permission on the bucket, Amazon S3 returns +// an HTTP status code 404 Not Found error. If you don’t have the s3:ListBucket +// permission, Amazon S3 returns an HTTP status code 403 Access Denied error. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). // -// # Versioning +// # Storage classes // -// By default, the GET action returns the current version of an object. To return -// a different version, use the versionId subresource. +// If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval +// storage class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering +// Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier, +// before you can retrieve the object you must first restore a copy using RestoreObject +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). +// Otherwise, this operation returns an InvalidObjectState error. For information +// about restoring archived objects, see Restoring Archived Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html) +// in the Amazon S3 User Guide. // -// - If you supply a versionId, you need the s3:GetObjectVersion permission -// to access a specific version of an object. If you request a specific version, -// you do not need to have the s3:GetObject permission. If you request the -// current version without a specific version ID, only s3:GetObject permission -// is required. s3:GetObjectVersion permission won't be required. +// Directory buckets - For directory buckets, only the S3 Express One Zone storage +// class is supported to store newly created objects. Unsupported storage class +// values won't write a destination object and will respond with the HTTP status +// code 400 Bad Request. // -// - If the current version of the object is a delete marker, Amazon S3 behaves -// as if the object was deleted and includes x-amz-delete-marker: true in -// the response. +// # Encryption // -// For more information about versioning, see PutBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html). +// Encryption request headers, like x-amz-server-side-encryption, should not +// be sent for the GetObject requests, if your object uses server-side encryption +// with Amazon S3 managed encryption keys (SSE-S3), server-side encryption with +// Key Management Service (KMS) keys (SSE-KMS), or dual-layer server-side encryption +// with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in +// your GetObject requests for the object that uses these types of keys, you’ll +// get an HTTP 400 Bad Request error. // -// # Overriding Response Header Values +// # Overriding response header values through the request // // There are times when you want to override certain response header values -// in a GET response. For example, you might override the Content-Disposition -// response header value in your GET request. -// -// You can override values for a set of response headers using the following -// query parameters. These response header values are sent only on a successful -// request, that is, when status code 200 OK is returned. The set of headers -// you can override using these parameters is a subset of the headers that Amazon -// S3 accepts when you create an object. The response headers that you can override -// for the GET response are Content-Type, Content-Language, Expires, Cache-Control, -// Content-Disposition, and Content-Encoding. To override these header values -// in the GET response, you use the following request parameters. +// of a GetObject response. For example, you might override the Content-Disposition +// response header value through your GetObject request. // -// You must sign the request, either using an Authorization header or a presigned -// URL, when using these parameters. They cannot be used with an unsigned (anonymous) -// request. -// -// - response-content-type +// You can override values for a set of response headers. These modified response +// header values are included only in a successful response, that is, when the +// HTTP status code 200 OK is returned. The headers you can override using the +// following query parameters in the request are a subset of the headers that +// Amazon S3 accepts when you create an object. +// +// The response headers that you can override for the GetObject response are +// Cache-Control, Content-Disposition, Content-Encoding, Content-Language, Content-Type, +// and Expires. // -// - response-content-language -// -// - response-expires +// To override values for a set of response headers in the GetObject response, +// you can use the following query parameters in the request. // // - response-cache-control // @@ -4723,17 +5073,19 @@ // // - response-content-encoding // -// # Overriding Response Header Values +// - response-content-language +// +// - response-content-type +// +// - response-expires // -// If both of the If-Match and If-Unmodified-Since headers are present in the -// request as follows: If-Match condition evaluates to true, and; If-Unmodified-Since -// condition evaluates to false; then, S3 returns 200 OK and the data requested. +// When you use these parameters, you must sign the request by using either +// an Authorization header or a presigned URL. These parameters cannot be used +// with an unsigned (anonymous) request. // -// If both of the If-None-Match and If-Modified-Since headers are present in -// the request as follows:If-None-Match condition evaluates to false, and; If-Modified-Since -// condition evaluates to true; then, S3 returns 304 Not Modified response code. +// # HTTP Host header syntax // -// For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to GetObject: // @@ -4756,6 +5108,15 @@ // - ErrCodeInvalidObjectState "InvalidObjectState" // Object is archived and inaccessible until restored. // +// If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval +// storage class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering +// Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier, +// before you can retrieve the object you must first restore a copy using RestoreObject +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). +// Otherwise, this operation returns an InvalidObjectState error. For information +// about restoring archived objects, see Restoring Archived Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html) +// in the Amazon S3 User Guide. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObject func (c *S3) GetObject(input *GetObjectInput) (*GetObjectOutput, error) { req, out := c.GetObjectRequest(input) @@ -4821,13 +5182,15 @@ // GetObjectAcl API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the access control list (ACL) of an object. To use this operation, // you must have s3:GetObjectAcl permissions or READ_ACP access to the object. // For more information, see Mapping of ACL permissions and access policy permissions // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#acl-access-policy-permission-mapping) // in the Amazon S3 User Guide // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // By default, GET returns ACL information about the current version of an object. // To return ACL information about a different version, use the versionId subresource. @@ -4925,16 +5288,65 @@ // GetObjectAttributes API operation for Amazon Simple Storage Service. // // Retrieves all the metadata from an object without returning the object itself. -// This action is useful if you're interested only in an object's metadata. -// To use GetObjectAttributes, you must have READ access to the object. +// This operation is useful if you're interested only in an object's metadata. // // GetObjectAttributes combines the functionality of HeadObject and ListParts. // All of the data returned with each of those individual calls can be returned // with a single call to GetObjectAttributes. // +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions +// +// - General purpose bucket permissions - To use GetObjectAttributes, you +// must have READ access to the object. The permissions that you need to +// use this operation with depend on whether the bucket is versioned. If +// the bucket is versioned, you need both the s3:GetObjectVersion and s3:GetObjectVersionAttributes +// permissions for this operation. If the bucket is not versioned, you need +// the s3:GetObject and s3:GetObjectAttributes permissions. For more information, +// see Specifying Permissions in a Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html) +// in the Amazon S3 User Guide. If the object that you request does not exist, +// the error Amazon S3 returns depends on whether you also have the s3:ListBucket +// permission. If you have the s3:ListBucket permission on the bucket, Amazon +// S3 returns an HTTP status code 404 Not Found ("no such key") error. If +// you don't have the s3:ListBucket permission, Amazon S3 returns an HTTP +// status code 403 Forbidden ("access denied") error. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// # Encryption +// +// Encryption request headers, like x-amz-server-side-encryption, should not +// be sent for HEAD requests if your object uses server-side encryption with +// Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption +// with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with +// Amazon S3 managed encryption keys (SSE-S3). The x-amz-server-side-encryption +// header is used when you PUT an object to S3 and want to specify the encryption +// method. If you include this header in a GET request for an object that uses +// these types of keys, you’ll get an HTTP 400 Bad Request error. It's because +// the encryption method can't be changed when you retrieve the object. +// // If you encrypt an object by using server-side encryption with customer-provided // encryption keys (SSE-C) when you store the object in Amazon S3, then when -// you retrieve the metadata from the object, you must use the following headers: +// you retrieve the metadata from the object, you must use the following headers +// to provide the encryption key for the server to be able to retrieve the object's +// metadata. The headers are: // // - x-amz-server-side-encryption-customer-algorithm // @@ -4946,47 +5358,35 @@ // Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) // in the Amazon S3 User Guide. // -// - Encryption request headers, such as x-amz-server-side-encryption, should -// not be sent for GET requests if your object uses server-side encryption -// with Amazon Web Services KMS keys stored in Amazon Web Services Key Management -// Service (SSE-KMS) or server-side encryption with Amazon S3 managed keys -// (SSE-S3). If your object does use these types of keys, you'll get an HTTP -// 400 Bad Request error. +// Directory bucket permissions - For directory buckets, only server-side encryption +// with Amazon S3 managed keys (SSE-S3) (AES256) is supported. +// +// # Versioning // -// - The last modified property in this case is the creation date of the -// object. +// Directory buckets - S3 Versioning isn't enabled and supported for directory +// buckets. For this API operation, only the null value of the version ID is +// supported by directory buckets. You can only specify null to the versionId +// query parameter in the request. +// +// # Conditional request headers // // Consider the following when using request headers: // // - If both of the If-Match and If-Unmodified-Since headers are present // in the request as follows, then Amazon S3 returns the HTTP status code // 200 OK and the data requested: If-Match condition evaluates to true. If-Unmodified-Since -// condition evaluates to false. +// condition evaluates to false. For more information about conditional requests, +// see RFC 7232 (https://tools.ietf.org/html/rfc7232). // // - If both of the If-None-Match and If-Modified-Since headers are present // in the request as follows, then Amazon S3 returns the HTTP status code // 304 Not Modified: If-None-Match condition evaluates to false. If-Modified-Since -// condition evaluates to true. +// condition evaluates to true. For more information about conditional requests, +// see RFC 7232 (https://tools.ietf.org/html/rfc7232). // -// For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). +// # HTTP Host header syntax // -// # Permissions -// -// The permissions that you need to use this operation depend on whether the -// bucket is versioned. If the bucket is versioned, you need both the s3:GetObjectVersion -// and s3:GetObjectVersionAttributes permissions for this operation. If the -// bucket is not versioned, you need the s3:GetObject and s3:GetObjectAttributes -// permissions. For more information, see Specifying Permissions in a Policy -// (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html) -// in the Amazon S3 User Guide. If the object that you request does not exist, -// the error Amazon S3 returns depends on whether you also have the s3:ListBucket -// permission. -// -// - If you have the s3:ListBucket permission on the bucket, Amazon S3 returns -// an HTTP status code 404 Not Found ("no such key") error. -// -// - If you don't have the s3:ListBucket permission, Amazon S3 returns an -// HTTP status code 403 Forbidden ("access denied") error. +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following actions are related to GetObjectAttributes: // @@ -5082,10 +5482,12 @@ // GetObjectLegalHold API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Gets an object's current legal hold status. For more information, see Locking // Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // The following action is related to GetObjectLegalHold: // @@ -5162,6 +5564,8 @@ // GetObjectLockConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Gets the Object Lock configuration for a bucket. The rule specified in the // Object Lock configuration will be applied by default to every new object // placed in the specified bucket. For more information, see Locking Objects @@ -5242,10 +5646,12 @@ // GetObjectRetention API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Retrieves an object's retention settings. For more information, see Locking // Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // The following action is related to GetObjectRetention: // @@ -5322,6 +5728,8 @@ // GetObjectTagging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns the tag-set of an object. You send the GET request against the tagging // subresource associated with the object. // @@ -5417,6 +5825,8 @@ // GetObjectTorrent API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns torrent files from a bucket. BitTorrent can save you bandwidth when // you're distributing large files. // @@ -5426,7 +5836,7 @@ // // To use GET, you must have READ access to the object. // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // The following action is related to GetObjectTorrent: // @@ -5503,6 +5913,8 @@ // GetPublicAccessBlock API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To // use this operation, you must have the s3:GetBucketPublicAccessBlock permission. // For more information about Amazon S3 permissions, see Specifying Permissions @@ -5594,39 +6006,63 @@ output = &HeadBucketOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // HeadBucket API operation for Amazon Simple Storage Service. // -// This action is useful to determine if a bucket exists and you have permission -// to access it. The action returns a 200 OK if the bucket exists and you have -// permission to access it. +// You can use this operation to determine if a bucket exists and if you have +// permission to access it. The action returns a 200 OK if the bucket exists +// and you have permission to access it. // // If the bucket does not exist or you do not have permission to access it, // the HEAD request returns a generic 400 Bad Request, 403 Forbidden or 404 // Not Found code. A message body is not included, so you cannot determine the // exception beyond these error codes. // -// To use this operation, you must have permissions to perform the s3:ListBucket -// action. The bucket owner has this permission by default and can grant this -// permission to others. For more information about permissions, see Permissions -// Related to Bucket Subresource Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources) -// and Managing Access Permissions to Your Amazon S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html). +// Directory buckets - You must make requests for this API operation to the +// Zonal endpoint. These endpoints support virtual-hosted-style requests in +// the format https://bucket_name.s3express-az_id.region.amazonaws.com. Path-style +// requests are not supported. For more information, see Regional and Zonal +// endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // -// To use this API operation against an access point, you must provide the alias -// of the access point in place of the bucket name or specify the access point -// ARN. When using the access point ARN, you must direct requests to the access -// point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. -// When using the Amazon Web Services SDKs, you provide the ARN in place of -// the bucket name. For more information, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html). +// # Authentication and authorization // -// To use this API operation against an Object Lambda access point, provide -// the alias of the Object Lambda access point in place of the bucket name. -// If the Object Lambda access point alias in a request is not valid, the error -// code InvalidAccessPointAliasError is returned. For more information about -// InvalidAccessPointAliasError, see List of Error Codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList). +// All HeadBucket requests must be authenticated and signed by using IAM credentials +// (access key ID and secret access key for the IAM identities). All headers +// with the x-amz- prefix, including x-amz-copy-source, must be signed. For +// more information, see REST Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). +// +// Directory bucket - You must use IAM credentials to authenticate and authorize +// your access to the HeadBucket API operation, instead of using the temporary +// security credentials through the CreateSession API operation. +// +// Amazon Web Services CLI or SDKs handles authentication and authorization +// on your behalf. +// +// Permissions +// +// - General purpose bucket permissions - To use this operation, you must +// have permissions to perform the s3:ListBucket action. The bucket owner +// has this permission by default and can grant this permission to others. +// For more information about permissions, see Managing access permissions +// to your Amazon S3 resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) +// in the Amazon S3 User Guide. +// +// - Directory bucket permissions - You must have the s3express:CreateSession +// permission in the Action element of a policy. By default, the session +// is in the ReadWrite mode. If you want to restrict the access, you can +// explicitly set the s3express:SessionMode condition key to ReadOnly on +// the bucket. For more information about example bucket policies, see Example +// bucket policies for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html) +// and Amazon Web Services Identity and Access Management (IAM) identity-based +// policies for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html) +// in the Amazon S3 User Guide. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // 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 @@ -5704,19 +6140,70 @@ // HeadObject API operation for Amazon Simple Storage Service. // -// The HEAD action retrieves metadata from an object without returning the object -// itself. This action is useful if you're only interested in an object's metadata. -// To use HEAD, you must have READ access to the object. -// -// A HEAD request has the same options as a GET action on an object. The response -// is identical to the GET response except that there is no response body. Because -// of this, if the HEAD request generates an error, it returns a generic 400 -// Bad Request, 403 Forbidden or 404 Not Found code. It is not possible to retrieve -// the exact exception beyond these error codes. +// The HEAD operation retrieves metadata from an object without returning the +// object itself. This operation is useful if you're interested only in an object's +// metadata. +// +// A HEAD request has the same options as a GET operation on an object. The +// response is identical to the GET response except that there is no response +// body. Because of this, if the HEAD request generates an error, it returns +// a generic code, such as 400 Bad Request, 403 Forbidden, 404 Not Found, 405 +// Method Not Allowed, 412 Precondition Failed, or 304 Not Modified. It's not +// possible to retrieve the exact exception of these error codes. +// +// Request headers are limited to 8 KB in size. For more information, see Common +// Request Headers (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html). +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions +// +// - General purpose bucket permissions - To use HEAD, you must have the +// s3:GetObject permission. You need the relevant read object (or version) +// permission for this operation. For more information, see Actions, resources, +// and condition keys for Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html) +// in the Amazon S3 User Guide. If the object you request doesn't exist, +// the error that Amazon S3 returns depends on whether you also have the +// s3:ListBucket permission. If you have the s3:ListBucket permission on +// the bucket, Amazon S3 returns an HTTP status code 404 Not Found error. +// If you don’t have the s3:ListBucket permission, Amazon S3 returns an +// HTTP status code 403 Forbidden error. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// # Encryption +// +// Encryption request headers, like x-amz-server-side-encryption, should not +// be sent for HEAD requests if your object uses server-side encryption with +// Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption +// with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with +// Amazon S3 managed encryption keys (SSE-S3). The x-amz-server-side-encryption +// header is used when you PUT an object to S3 and want to specify the encryption +// method. If you include this header in a HEAD request for an object that uses +// these types of keys, you’ll get an HTTP 400 Bad Request error. It's because +// the encryption method can't be changed when you retrieve the object. // // If you encrypt an object by using server-side encryption with customer-provided // encryption keys (SSE-C) when you store the object in Amazon S3, then when -// you retrieve the metadata from the object, you must use the following headers: +// you retrieve the metadata from the object, you must use the following headers +// to provide the encryption key for the server to be able to retrieve the object's +// metadata. The headers are: // // - x-amz-server-side-encryption-customer-algorithm // @@ -5725,48 +6212,32 @@ // - x-amz-server-side-encryption-customer-key-MD5 // // For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided -// Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html). -// -// - Encryption request headers, like x-amz-server-side-encryption, should -// not be sent for GET requests if your object uses server-side encryption -// with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side -// encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side -// encryption with Amazon S3 managed encryption keys (SSE-S3). If your object -// does use these types of keys, you’ll get an HTTP 400 Bad Request error. -// -// - The last modified property in this case is the creation date of the -// object. +// Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) +// in the Amazon S3 User Guide. // -// Request headers are limited to 8 KB in size. For more information, see Common -// Request Headers (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html). +// Directory bucket permissions - For directory buckets, only server-side encryption +// with Amazon S3 managed keys (SSE-S3) (AES256) is supported. // -// Consider the following when using request headers: +// Versioning // -// - Consideration 1 – If both of the If-Match and If-Unmodified-Since -// headers are present in the request as follows: If-Match condition evaluates -// to true, and; If-Unmodified-Since condition evaluates to false; Then Amazon -// S3 returns 200 OK and the data requested. -// -// - Consideration 2 – If both of the If-None-Match and If-Modified-Since -// headers are present in the request as follows: If-None-Match condition -// evaluates to false, and; If-Modified-Since condition evaluates to true; -// Then Amazon S3 returns the 304 Not Modified response code. +// - If the current version of the object is a delete marker, Amazon S3 behaves +// as if the object was deleted and includes x-amz-delete-marker: true in +// the response. // -// For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). +// - If the specified version is a delete marker, the response returns a +// 405 Method Not Allowed error and the Last-Modified: timestamp response +// header. // -// # Permissions +// - Directory buckets - Delete marker is not supported by directory buckets. // -// You need the relevant read object (or version) permission for this operation. -// For more information, see Actions, resources, and condition keys for Amazon -// S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html). -// If the object you request doesn't exist, the error that Amazon S3 returns -// depends on whether you also have the s3:ListBucket permission. +// - Directory buckets - S3 Versioning isn't enabled and supported for directory +// buckets. For this API operation, only the null value of the version ID +// is supported by directory buckets. You can only specify null to the versionId +// query parameter in the request. // -// - If you have the s3:ListBucket permission on the bucket, Amazon S3 returns -// an HTTP status code 404 error. +// # HTTP Host header syntax // -// - If you don’t have the s3:ListBucket permission, Amazon S3 returns -// an HTTP status code 403 error. +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following actions are related to HeadObject: // @@ -5848,6 +6319,8 @@ // ListBucketAnalyticsConfigurations API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Lists the analytics configurations for the bucket. You can have up to 1,000 // analytics configurations per bucket. // @@ -5947,6 +6420,8 @@ // ListBucketIntelligentTieringConfigurations API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Lists the S3 Intelligent-Tiering configuration from the specified bucket. // // The S3 Intelligent-Tiering storage class is designed to optimize storage @@ -6045,6 +6520,8 @@ // ListBucketInventoryConfigurations API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns a list of inventory configurations for the bucket. You can have up // to 1,000 analytics configurations per bucket. // @@ -6144,6 +6621,8 @@ // ListBucketMetricsConfigurations API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Lists the metrics configurations for the bucket. The metrics configurations // are only for the request metrics of the bucket and do not provide information // on daily storage metrics. You can have up to 1,000 configurations per bucket. @@ -6244,6 +6723,8 @@ // ListBuckets API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns a list of all buckets owned by the authenticated sender of the request. // To use this operation, you must have the s3:ListAllMyBuckets permission. // @@ -6278,6 +6759,160 @@ return out, req.Send() } +const opListDirectoryBuckets = "ListDirectoryBuckets" + +// ListDirectoryBucketsRequest generates a "aws/request.Request" representing the +// client's request for the ListDirectoryBuckets 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 ListDirectoryBuckets for more information on using the ListDirectoryBuckets +// 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 ListDirectoryBucketsRequest method. +// req, resp := client.ListDirectoryBucketsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListDirectoryBuckets +func (c *S3) ListDirectoryBucketsRequest(input *ListDirectoryBucketsInput) (req *request.Request, output *ListDirectoryBucketsOutput) { + op := &request.Operation{ + Name: opListDirectoryBuckets, + HTTPMethod: "GET", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"ContinuationToken"}, + OutputTokens: []string{"ContinuationToken"}, + LimitToken: "MaxDirectoryBuckets", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDirectoryBucketsInput{} + } + + output = &ListDirectoryBucketsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDirectoryBuckets API operation for Amazon Simple Storage Service. +// +// Returns a list of all Amazon S3 directory buckets owned by the authenticated +// sender of the request. For more information about directory buckets, see +// Directory buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html) +// in the Amazon S3 User Guide. +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Regional endpoint. These endpoints support path-style +// requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name +// . Virtual-hosted-style requests aren't supported. For more information, see +// Regional and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// # Permissions +// +// You must have the s3express:ListAllMyDirectoryBuckets permission in an IAM +// identity-based policy instead of a bucket policy. Cross-account access to +// this API operation isn't supported. This operation can only be performed +// by the Amazon Web Services account that owns the resource. For more information +// about directory bucket policies and permissions, see Amazon Web Services +// Identity and Access Management (IAM) for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html) +// in the Amazon S3 User Guide. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Storage Service's +// API operation ListDirectoryBuckets for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListDirectoryBuckets +func (c *S3) ListDirectoryBuckets(input *ListDirectoryBucketsInput) (*ListDirectoryBucketsOutput, error) { + req, out := c.ListDirectoryBucketsRequest(input) + return out, req.Send() +} + +// ListDirectoryBucketsWithContext is the same as ListDirectoryBuckets with the addition of +// the ability to pass a context and additional request options. +// +// See ListDirectoryBuckets 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 *S3) ListDirectoryBucketsWithContext(ctx aws.Context, input *ListDirectoryBucketsInput, opts ...request.Option) (*ListDirectoryBucketsOutput, error) { + req, out := c.ListDirectoryBucketsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDirectoryBucketsPages iterates over the pages of a ListDirectoryBuckets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDirectoryBuckets 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 ListDirectoryBuckets operation. +// pageNum := 0 +// err := client.ListDirectoryBucketsPages(params, +// func(page *s3.ListDirectoryBucketsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *S3) ListDirectoryBucketsPages(input *ListDirectoryBucketsInput, fn func(*ListDirectoryBucketsOutput, bool) bool) error { + return c.ListDirectoryBucketsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDirectoryBucketsPagesWithContext same as ListDirectoryBucketsPages 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 *S3) ListDirectoryBucketsPagesWithContext(ctx aws.Context, input *ListDirectoryBucketsInput, fn func(*ListDirectoryBucketsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDirectoryBucketsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDirectoryBucketsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDirectoryBucketsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMultipartUploads = "ListMultipartUploads" // ListMultipartUploadsRequest generates a "aws/request.Request" representing the @@ -6327,28 +6962,79 @@ // ListMultipartUploads API operation for Amazon Simple Storage Service. // -// This action lists in-progress multipart uploads. An in-progress multipart -// upload is a multipart upload that has been initiated using the Initiate Multipart -// Upload request, but has not yet been completed or aborted. -// -// This action returns at most 1,000 multipart uploads in the response. 1,000 -// multipart uploads is the maximum number of uploads a response can include, -// which is also the default value. You can further limit the number of uploads -// in a response by specifying the max-uploads parameter in the response. If -// additional multipart uploads satisfy the list criteria, the response will -// contain an IsTruncated element with the value true. To list the additional -// multipart uploads, use the key-marker and upload-id-marker request parameters. -// -// In the response, the uploads are sorted by key. If your application has initiated -// more than one multipart upload using the same object key, then uploads in -// the response are first sorted by key. Additionally, uploads are sorted in -// ascending order within each key by the upload initiation time. +// This operation lists in-progress multipart uploads in a bucket. An in-progress +// multipart upload is a multipart upload that has been initiated by the CreateMultipartUpload +// request, but has not yet been completed or aborted. +// +// Directory buckets - If multipart uploads in a directory bucket are in progress, +// you can't delete the bucket until all the in-progress multipart uploads are +// aborted or completed. +// +// The ListMultipartUploads operation returns a maximum of 1,000 multipart uploads +// in the response. The limit of 1,000 multipart uploads is also the default +// value. You can further limit the number of uploads in a response by specifying +// the max-uploads request parameter. If there are more than 1,000 multipart +// uploads that satisfy your ListMultipartUploads request, the response returns +// an IsTruncated element with the value of true, a NextKeyMarker element, and +// a NextUploadIdMarker element. To list the remaining multipart uploads, you +// need to make subsequent ListMultipartUploads requests. In these requests, +// include two query parameters: key-marker and upload-id-marker. Set the value +// of key-marker to the NextKeyMarker value from the previous response. Similarly, +// set the value of upload-id-marker to the NextUploadIdMarker value from the +// previous response. +// +// Directory buckets - The upload-id-marker element and the NextUploadIdMarker +// element aren't supported by directory buckets. To list the additional multipart +// uploads, you only need to set the value of key-marker to the NextKeyMarker +// value from the previous response. // -// For more information on multipart uploads, see Uploading Objects Using Multipart -// Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). +// For more information about multipart uploads, see Uploading Objects Using +// Multipart Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) +// in the Amazon S3 User Guide. // -// For information on permissions required to use the multipart upload API, -// see Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions +// +// - General purpose bucket permissions - For information about permissions +// required to use the multipart upload API, see Multipart Upload and Permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// Sorting of multipart uploads in response +// +// - General purpose bucket - In the ListMultipartUploads response, the multipart +// uploads are sorted based on two criteria: Key-based sorting - Multipart +// uploads are initially sorted in ascending order based on their object +// keys. Time-based sorting - For uploads that share the same object key, +// they are further sorted in ascending order based on the upload initiation +// time. Among uploads with the same key, the one that was initiated first +// will appear before the ones that were initiated later. +// +// - Directory bucket - In the ListMultipartUploads response, the multipart +// uploads aren't sorted lexicographically based on the object keys. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to ListMultipartUploads: // @@ -6490,6 +7176,8 @@ // ListObjectVersions API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns metadata about all versions of the objects in a bucket. You can also // use request parameters as selection criteria to return metadata about a subset // of all the object versions. @@ -6502,8 +7190,6 @@ // // To use this operation, you must have READ access to the bucket. // -// This action is not supported by Amazon S3 on Outposts. -// // The following operations are related to ListObjectVersions: // // - ListObjectsV2 (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html) @@ -6642,6 +7328,8 @@ // ListObjects API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Returns some or all (up to 1,000) of the objects in a bucket. You can use // the request parameters as selection criteria to return a subset of the objects // in a bucket. A 200 OK response can contain valid or invalid XML. Be sure @@ -6802,28 +7490,58 @@ // You can use the request parameters as selection criteria to return a subset // of the objects in a bucket. A 200 OK response can contain valid or invalid // XML. Make sure to design your application to parse the contents of the response -// and handle it appropriately. Objects are returned sorted in an ascending -// order of the respective key names in the list. For more information about -// listing objects, see Listing object keys programmatically (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ListingKeysUsingAPIs.html) +// and handle it appropriately. For more information about listing objects, +// see Listing object keys programmatically (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ListingKeysUsingAPIs.html) +// in the Amazon S3 User Guide. To get a list of your buckets, see ListBuckets +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html). +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) // in the Amazon S3 User Guide. // -// To use this operation, you must have READ access to the bucket. +// Permissions // -// To use this action in an Identity and Access Management (IAM) policy, you -// must have permission to perform the s3:ListBucket action. The bucket owner -// has this permission by default and can grant this permission to others. For -// more information about permissions, see Permissions Related to Bucket Subresource -// Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources) -// and Managing Access Permissions to Your Amazon S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) -// in the Amazon S3 User Guide. +// - General purpose bucket permissions - To use this operation, you must +// have READ access to the bucket. You must have permission to perform the +// s3:ListBucket action. The bucket owner has this permission by default +// and can grant this permission to others. For more information about permissions, +// see Permissions Related to Bucket Subresource Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources) +// and Managing Access Permissions to Your Amazon S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) +// in the Amazon S3 User Guide. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// Sorting order of returned objects +// +// - General purpose bucket - For general purpose buckets, ListObjectsV2 +// returns objects in lexicographical order based on their key names. +// +// - Directory bucket - For directory buckets, ListObjectsV2 does not return +// objects in lexicographical order. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // This section describes the latest revision of this action. We recommend that // you use this revised API operation for application development. For backward // compatibility, Amazon S3 continues to support the prior version of this API // operation, ListObjects (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html). // -// To get a list of your buckets, see ListBuckets (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html). -// // The following operations are related to ListObjectsV2: // // - GetObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) @@ -6966,24 +7684,58 @@ // ListParts API operation for Amazon Simple Storage Service. // // Lists the parts that have been uploaded for a specific multipart upload. -// This operation must include the upload ID, which you obtain by sending the -// initiate multipart upload request (see CreateMultipartUpload (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)). -// This request returns a maximum of 1,000 uploaded parts. The default number -// of parts returned is 1,000 parts. You can restrict the number of parts returned -// by specifying the max-parts request parameter. If your multipart upload consists -// of more than 1,000 parts, the response returns an IsTruncated field with -// the value of true, and a NextPartNumberMarker element. In subsequent ListParts -// requests you can include the part-number-marker query string parameter and -// set its value to the NextPartNumberMarker field value from the previous response. // -// If the upload was created using a checksum algorithm, you will need to have -// permission to the kms:Decrypt action for the request to succeed. +// To use this operation, you must provide the upload ID in the request. You +// obtain this uploadID by sending the initiate multipart upload request through +// CreateMultipartUpload (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html). +// +// The ListParts request returns a maximum of 1,000 uploaded parts. The limit +// of 1,000 parts is also the default value. You can restrict the number of +// parts in a response by specifying the max-parts request parameter. If your +// multipart upload consists of more than 1,000 parts, the response returns +// an IsTruncated field with the value of true, and a NextPartNumberMarker element. +// To list remaining uploaded parts, in subsequent ListParts requests, include +// the part-number-marker query string parameter and set its value to the NextPartNumberMarker +// field value from the previous response. // // For more information on multipart uploads, see Uploading Objects Using Multipart -// Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html). +// Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) +// in the Amazon S3 User Guide. +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// Permissions // -// For information on permissions required to use the multipart upload API, -// see Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html). +// - General purpose bucket permissions - For information about permissions +// required to use the multipart upload API, see Multipart Upload and Permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. If the upload was created using server-side +// encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer +// server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), you +// must have permission to the kms:Decrypt action for the ListParts request +// to succeed. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to ListParts: // @@ -7122,6 +7874,8 @@ // PutBucketAccelerateConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer // Acceleration is a bucket-level feature that enables you to perform faster // data transfers to Amazon S3. @@ -7234,9 +7988,11 @@ // PutBucketAcl API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the permissions on an existing bucket using access control lists (ACL). // For more information, see Using ACLs (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). -// To set the ACL of a bucket, you must have WRITE_ACP permission. +// To set the ACL of a bucket, you must have the WRITE_ACP permission. // // You can use one of the following two ways to set a bucket's permissions: // @@ -7402,6 +8158,8 @@ // PutBucketAnalyticsConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets an analytics configuration for the bucket (specified by the analytics // configuration ID). You can have up to 1,000 analytics configurations per // bucket. @@ -7524,6 +8282,8 @@ // PutBucketCors API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the cors configuration for your bucket. If the configuration exists, // Amazon S3 replaces it. // @@ -7644,6 +8404,8 @@ // PutBucketEncryption API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This action uses the encryption subresource to configure default encryption // and Amazon S3 Bucket Keys for an existing bucket. // @@ -7746,6 +8508,8 @@ // PutBucketIntelligentTieringConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Puts a S3 Intelligent-Tiering configuration to the specified bucket. You // can have up to 1,000 S3 Intelligent-Tiering configurations per bucket. // @@ -7871,6 +8635,8 @@ // PutBucketInventoryConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This implementation of the PUT action adds an inventory configuration (identified // by the inventory ID) to the bucket. You can have up to 1,000 inventory configurations // per bucket. @@ -8025,6 +8791,8 @@ // PutBucketLifecycle API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // For an updated version of this API, see PutBucketLifecycleConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html). // This version has been deprecated. Existing lifecycle configurations will // work. For new lifecycle configurations, use the updated API. @@ -8154,6 +8922,8 @@ // PutBucketLifecycleConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Creates a new lifecycle configuration for the bucket or replaces an existing // lifecycle configuration. Keep in mind that this will overwrite an existing // lifecycle configuration, so if you want to retain any configuration details, @@ -8297,6 +9067,8 @@ // PutBucketLogging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Set the logging parameters for a bucket and to specify permissions for who // can view and modify the logging parameters. All logs are saved to buckets // in the same Amazon Web Services Region as the source bucket. To set the logging @@ -8424,6 +9196,8 @@ // PutBucketMetricsConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets a metrics configuration (specified by the metrics configuration ID) // for the bucket. You can have up to 1,000 metrics configurations per bucket. // If you're updating an existing metrics configuration, note that this is a @@ -8534,6 +9308,8 @@ // PutBucketNotification API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // No longer used, see the PutBucketNotificationConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotificationConfiguration.html) // operation. // @@ -8613,6 +9389,8 @@ // PutBucketNotificationConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Enables notifications of specified events for a bucket. For more information // about event notifications, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html). // @@ -8742,6 +9520,8 @@ // PutBucketOwnershipControls API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this // operation, you must have the s3:PutBucketOwnershipControls permission. For // more information about Amazon S3 permissions, see Specifying permissions @@ -8832,11 +9612,21 @@ // PutBucketPolicy API operation for Amazon Simple Storage Service. // -// Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using -// an identity other than the root user of the Amazon Web Services account that -// owns the bucket, the calling identity must have the PutBucketPolicy permissions -// on the specified bucket and belong to the bucket owner's account in order -// to use this operation. +// Applies an Amazon S3 bucket policy to an Amazon S3 bucket. +// +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Regional endpoint. These endpoints support path-style +// requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name +// . Virtual-hosted-style requests aren't supported. For more information, see +// Regional and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. +// +// # Permissions +// +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the bucket, the calling identity must both have the PutBucketPolicy +// permissions on the specified bucket and belong to the bucket owner's account +// in order to use this operation. // // If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access // Denied error. If you have the correct permissions, but you're not using an @@ -8851,7 +9641,33 @@ // these API actions by VPC endpoint policies and Amazon Web Services Organizations // policies. // -// For more information, see Bucket policy examples (https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html). +// - General purpose bucket permissions - The s3:PutBucketPolicy permission +// is required in a policy. For more information about general purpose buckets +// bucket policies, see Using Bucket Policies and User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html) +// in the Amazon S3 User Guide. +// +// - Directory bucket permissions - To grant access to this API operation, +// you must have the s3express:PutBucketPolicy permission in an IAM identity-based +// policy instead of a bucket policy. Cross-account access to this API operation +// isn't supported. This operation can only be performed by the Amazon Web +// Services account that owns the resource. For more information about directory +// bucket policies and permissions, see Amazon Web Services Identity and +// Access Management (IAM) for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html) +// in the Amazon S3 User Guide. +// +// # Example bucket policies +// +// General purpose buckets example bucket policies - See Bucket policy examples +// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html) +// in the Amazon S3 User Guide. +// +// Directory bucket example bucket policies - See Example bucket policies for +// S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html) +// in the Amazon S3 User Guide. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com. // // The following operations are related to PutBucketPolicy: // @@ -8935,6 +9751,8 @@ // PutBucketReplication API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Creates a replication configuration or replaces an existing one. For more // information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) // in the Amazon S3 User Guide. @@ -9074,6 +9892,8 @@ // PutBucketRequestPayment API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the request payment configuration for a bucket. By default, the bucket // owner pays for downloads from the bucket. This configuration parameter enables // the bucket owner (only) to specify that the person requesting the download @@ -9162,6 +9982,8 @@ // PutBucketTagging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the tags for a bucket. // // Use tags to organize your Amazon Web Services bill to reflect your own cost @@ -9281,6 +10103,8 @@ // PutBucketVersioning API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the versioning state of an existing bucket. // // You can set the versioning state with one of the following values: @@ -9392,6 +10216,8 @@ // PutBucketWebsite API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the configuration of the website that is specified in the website subresource. // To configure a bucket as a website, you can add this subresource on the bucket // with website configuration information such as the file name of the index @@ -9532,87 +10358,83 @@ // PutObject API operation for Amazon Simple Storage Service. // -// Adds an object to a bucket. You must have WRITE permissions on a bucket to -// add an object to it. +// Adds an object to a bucket. // -// Amazon S3 never adds partial objects; if you receive a success response, -// Amazon S3 added the entire object to the bucket. You cannot use PutObject -// to only update a single piece of metadata for an existing object. You must -// put the entire object with updated metadata if you want to update some values. +// - Amazon S3 never adds partial objects; if you receive a success response, +// Amazon S3 added the entire object to the bucket. You cannot use PutObject +// to only update a single piece of metadata for an existing object. You +// must put the entire object with updated metadata if you want to update +// some values. +// +// - If your bucket uses the bucket owner enforced setting for Object Ownership, +// ACLs are disabled and no longer affect permissions. All objects written +// to the bucket by any account will be owned by the bucket owner. +// +// - Directory buckets - For directory buckets, you must make requests for +// this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // // Amazon S3 is a distributed system. If it receives multiple write requests // for the same object simultaneously, it overwrites all but the last object -// written. To prevent objects from being deleted or overwritten, you can use -// Amazon S3 Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html). +// written. However, Amazon S3 provides features that can modify this behavior: // -// To ensure that data is not corrupted traversing the network, use the Content-MD5 -// header. When you use this header, Amazon S3 checks the object against the -// provided MD5 value and, if they do not match, returns an error. Additionally, -// you can calculate the MD5 while putting an object to Amazon S3 and compare -// the returned ETag to the calculated MD5 value. -// -// - To successfully complete the PutObject request, you must have the s3:PutObject -// in your IAM permissions. -// -// - To successfully change the objects acl of your PutObject request, you -// must have the s3:PutObjectAcl in your IAM permissions. -// -// - To successfully set the tag-set with your PutObject request, you must -// have the s3:PutObjectTagging in your IAM permissions. -// -// - The Content-MD5 header is required for any request to upload an object -// with a retention period configured using Amazon S3 Object Lock. For more -// information about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview -// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html) -// in the Amazon S3 User Guide. +// - S3 Object Lock - To prevent objects from being deleted or overwritten, +// you can use Amazon S3 Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html) +// in the Amazon S3 User Guide. This functionality is not supported for directory +// buckets. +// +// - S3 Versioning - When you enable versioning for a bucket, if Amazon S3 +// receives multiple write requests for the same object simultaneously, it +// stores all versions of the objects. For each write request that is made +// to the same object, Amazon S3 automatically generates a unique version +// ID of that object being stored in Amazon S3. You can retrieve, replace, +// or delete any version of the object. For more information about versioning, +// see Adding Objects to Versioning-Enabled Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html) +// in the Amazon S3 User Guide. For information about returning the versioning +// state of a bucket, see GetBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html). +// This functionality is not supported for directory buckets. +// +// Permissions +// +// - General purpose bucket permissions - The following permissions are required +// in your policies when your PutObject request includes specific headers. +// s3:PutObject - To successfully complete the PutObject request, you must +// always have the s3:PutObject permission on a bucket to add an object to +// it. s3:PutObjectAcl - To successfully change the objects ACL of your PutObject +// request, you must have the s3:PutObjectAcl. s3:PutObjectTagging - To successfully +// set the tag-set with your PutObject request, you must have the s3:PutObjectTagging. +// +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// Data integrity with Content-MD5 +// +// - General purpose bucket - To ensure that data is not corrupted traversing +// the network, use the Content-MD5 header. When you use this header, Amazon +// S3 checks the object against the provided MD5 value and, if they do not +// match, Amazon S3 returns an error. Alternatively, when the object's ETag +// is its MD5 digest, you can calculate the MD5 while putting the object +// to Amazon S3 and compare the returned ETag to the calculated MD5 value. // -// You have four mutually exclusive options to protect data using server-side -// encryption in Amazon S3, depending on how you choose to manage the encryption -// keys. Specifically, the encryption key options are Amazon S3 managed keys -// (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and customer-provided -// keys (SSE-C). Amazon S3 encrypts data with server-side encryption by using -// Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon -// S3 to encrypt data at rest by using server-side encryption with other key -// options. For more information, see Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html). -// -// When adding a new object, you can use headers to grant ACL-based permissions -// to individual Amazon Web Services accounts or to predefined groups defined -// by Amazon S3. These permissions are then added to the ACL on the object. -// By default, all objects are private. Only the owner has full access control. -// For more information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) -// and Managing ACLs Using the REST API (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html). -// -// If the bucket that you're uploading objects to uses the bucket owner enforced -// setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. -// Buckets that use this setting only accept PUT requests that don't specify -// an ACL or PUT requests that specify bucket owner full control ACLs, such -// as the bucket-owner-full-control canned ACL or an equivalent form of this -// ACL expressed in the XML format. PUT requests that contain other ACLs (for -// example, custom grants to certain Amazon Web Services accounts) fail and -// return a 400 error with the error code AccessControlListNotSupported. For -// more information, see Controlling ownership of objects and disabling ACLs -// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) -// in the Amazon S3 User Guide. -// -// If your bucket uses the bucket owner enforced setting for Object Ownership, -// all objects written to the bucket by any account will be owned by the bucket -// owner. -// -// By default, Amazon S3 uses the STANDARD Storage Class to store newly created -// objects. The STANDARD storage class provides high durability and high availability. -// Depending on performance needs, you can specify a different Storage Class. -// Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, -// see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) -// in the Amazon S3 User Guide. -// -// If you enable versioning for a bucket, Amazon S3 automatically generates -// a unique version ID for the object being stored. Amazon S3 returns this ID -// in the response. When you enable versioning for a bucket, if Amazon S3 receives -// multiple write requests for the same object simultaneously, it stores all -// of the objects. For more information about versioning, see Adding Objects -// to Versioning-Enabled Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html). -// For information about returning the versioning state of a bucket, see GetBucketVersioning -// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html). +// - Directory bucket - This functionality is not supported for directory +// buckets. +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // For more information about related Amazon S3 APIs, see the following: // @@ -9695,13 +10517,15 @@ // PutObjectAcl API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Uses the acl subresource to set the access control list (ACL) permissions -// for a new or existing object in an S3 bucket. You must have WRITE_ACP permission -// to set the ACL of an object. For more information, see What permissions can -// I grant? (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions) +// for a new or existing object in an S3 bucket. You must have the WRITE_ACP +// permission to set the ACL of an object. For more information, see What permissions +// can I grant? (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions) // in the Amazon S3 User Guide. // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // Depending on your application needs, you can choose to set the ACL on an // object using either the request body or the headers. For example, if you @@ -9870,10 +10694,12 @@ // PutObjectLegalHold API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Applies a legal hold configuration to the specified object. For more information, // see Locking Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // 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 @@ -9950,6 +10776,8 @@ // PutObjectLockConfiguration API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Places an Object Lock configuration on the specified bucket. The rule specified // in the Object Lock configuration will be applied by default to every new // object placed in the specified bucket. For more information, see Locking @@ -9960,8 +10788,8 @@ // - The DefaultRetention period can be either Days or Years but you must // select one. You cannot specify Days and Years at the same time. // -// - You can only enable Object Lock for new buckets. If you want to turn -// on Object Lock for an existing bucket, contact Amazon Web Services Support. +// - You can enable Object Lock for new or existing buckets. For more information, +// see Configuring Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-configure.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 @@ -10038,13 +10866,15 @@ // PutObjectRetention API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Places an Object Retention configuration on an object. For more information, // see Locking Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). // Users or accounts require the s3:PutObjectRetention permission in order to // place an Object Retention configuration on objects. Bypassing a Governance // Retention configuration requires the s3:BypassGovernanceRetention permission. // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // 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 @@ -10121,6 +10951,8 @@ // PutObjectTagging API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Sets the supplied tag-set to an object that already exists in a bucket. A // tag is a key-value pair. For more information, see Object Tagging (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). // @@ -10237,6 +11069,8 @@ // PutPublicAccessBlock API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Creates or modifies the PublicAccessBlock configuration for an Amazon S3 // bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock // permission. For more information about Amazon S3 permissions, see Specifying @@ -10246,7 +11080,7 @@ // or an object, it checks the PublicAccessBlock configuration for both the // bucket (or the bucket that contains the object) and the bucket owner's account. // If the PublicAccessBlock configurations are different between the bucket -// and the account, S3 uses the most restrictive combination of the bucket-level +// and the account, Amazon S3 uses the most restrictive combination of the bucket-level // and account-level settings. // // For more information about when Amazon S3 considers a bucket or an object @@ -10333,9 +11167,11 @@ // RestoreObject API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // # Restores an archived copy of an object back into Amazon S3 // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // This action performs the following types of requests: // @@ -10595,6 +11431,8 @@ // SelectObjectContent API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // This action filters the contents of an Amazon S3 object based on a simple // structured query language (SQL) statement. In the request, along with the // SQL expression, you must also specify a data serialization format (JSON, @@ -10603,7 +11441,7 @@ // SQL expression. You must also specify the data serialization format for the // response. // -// This action is not supported by Amazon S3 on Outposts. +// This functionality is not supported for Amazon S3 on Outposts. // // For more information about Amazon S3 Select, see Selecting Content from Objects // (https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html) @@ -10612,7 +11450,7 @@ // // # Permissions // -// You must have s3:GetObject permission for this operation. Amazon S3 Select +// You must have the s3:GetObject permission for this operation. Amazon S3 Select // does not support anonymous access. For more information about permissions, // see Specifying Permissions in a Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html) // in the Amazon S3 User Guide. @@ -10925,15 +11763,15 @@ // // Uploads a part in a multipart upload. // -// In this operation, you provide part data in your request. However, you have -// an option to specify your existing Amazon S3 object as a data source for -// the part you are uploading. To upload a part from an existing object, you -// use the UploadPartCopy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) +// In this operation, you provide new data as a part of an object in your request. +// However, you have an option to specify your existing Amazon S3 object as +// a data source for the part you are uploading. To upload a part from an existing +// object, you use the UploadPartCopy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) // operation. // // You must initiate a multipart upload (see CreateMultipartUpload (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)) // before you can upload any part. In response to your initiate request, Amazon -// S3 returns an upload ID, a unique identifier, that you must include in your +// S3 returns an upload ID, a unique identifier that you must include in your // upload part request. // // Part numbers can be any number from 1 to 10,000, inclusive. A part number @@ -10945,18 +11783,8 @@ // upload specifications, see Multipart upload limits (https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html) // in the Amazon S3 User Guide. // -// To ensure that data is not corrupted when traversing the network, specify -// the Content-MD5 header in the upload part request. Amazon S3 checks the part -// data against the provided MD5 value. If they do not match, Amazon S3 returns -// an error. -// -// If the upload request is signed with Signature Version 4, then Amazon Web -// Services S3 uses the x-amz-content-sha256 header as a checksum instead of -// Content-MD5. For more information see Authenticating Requests: Using the -// Authorization Header (Amazon Web Services Signature Version 4) (https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html). -// -// Note: After you initiate multipart upload and upload one or more parts, you -// must either complete or abort multipart upload in order to stop getting charged +// After you initiate multipart upload and upload one or more parts, you must +// either complete or abort multipart upload in order to stop getting charged // for storage of the uploaded parts. Only after you either complete or abort // multipart upload, Amazon S3 frees up the parts storage and stops charging // you for the parts storage. @@ -10965,50 +11793,88 @@ // (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html) in the // Amazon S3 User Guide . // -// For information on the permissions required to use the multipart upload API, -// go to Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) // in the Amazon S3 User Guide. // -// Server-side encryption is for data encryption at rest. Amazon S3 encrypts -// your data as it writes it to disks in its data centers and decrypts it when -// you access it. You have three mutually exclusive options to protect data -// using server-side encryption in Amazon S3, depending on how you choose to -// manage the encryption keys. Specifically, the encryption key options are -// Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS), -// and Customer-Provided Keys (SSE-C). Amazon S3 encrypts data with server-side -// encryption using Amazon S3 managed keys (SSE-S3) by default. You can optionally -// tell Amazon S3 to encrypt data at rest using server-side encryption with -// other key options. The option you use depends on whether you want to use -// KMS keys (SSE-KMS) or provide your own encryption key (SSE-C). If you choose -// to provide your own encryption key, the request headers you provide in the -// request must match the headers you used in the request to initiate the upload -// by using CreateMultipartUpload (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html). -// For more information, go to Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html) -// in the Amazon S3 User Guide. -// -// Server-side encryption is supported by the S3 Multipart Upload actions. Unless -// you are using a customer-provided encryption key (SSE-C), you don't need -// to specify the encryption parameters in each UploadPart request. Instead, -// you only need to specify the server-side encryption parameters in the initial -// Initiate Multipart request. For more information, see CreateMultipartUpload -// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html). -// -// If you requested server-side encryption using a customer-provided encryption -// key (SSE-C) in your initiate multipart upload request, you must provide identical -// encryption information in each part upload using the following headers. +// Permissions // -// - x-amz-server-side-encryption-customer-algorithm +// - General purpose bucket permissions - For information on the permissions +// required to use the multipart upload API, see Multipart Upload and Permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. // -// - x-amz-server-side-encryption-customer-key +// - Directory bucket permissions - To grant access to this API operation +// on a directory bucket, we recommend that you use the CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) +// API operation for session-based authorization. Specifically, you grant +// the s3express:CreateSession permission to the directory bucket in a bucket +// policy or an IAM identity-based policy. Then, you make the CreateSession +// API call on the bucket to obtain a session token. With the session token +// in your request header, you can make API requests to this operation. After +// the session token expires, you make another CreateSession API call to +// generate a new session token for use. Amazon Web Services CLI or SDKs +// create session and refresh the session token automatically to avoid service +// interruptions when a session expires. For more information about authorization, +// see CreateSession (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html). +// +// # Data integrity +// +// General purpose bucket - To ensure that data is not corrupted traversing +// the network, specify the Content-MD5 header in the upload part request. Amazon +// S3 checks the part data against the provided MD5 value. If they do not match, +// Amazon S3 returns an error. If the upload request is signed with Signature +// Version 4, then Amazon Web Services S3 uses the x-amz-content-sha256 header +// as a checksum instead of Content-MD5. For more information see Authenticating +// Requests: Using the Authorization Header (Amazon Web Services Signature Version +// 4) (https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html). +// +// Directory buckets - MD5 is not supported by directory buckets. You can use +// checksum algorithms to check object integrity. +// +// Encryption +// +// - General purpose bucket - Server-side encryption is for data encryption +// at rest. Amazon S3 encrypts your data as it writes it to disks in its +// data centers and decrypts it when you access it. You have mutually exclusive +// options to protect data using server-side encryption in Amazon S3, depending +// on how you choose to manage the encryption keys. Specifically, the encryption +// key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS +// keys (SSE-KMS), and Customer-Provided Keys (SSE-C). Amazon S3 encrypts +// data with server-side encryption using Amazon S3 managed keys (SSE-S3) +// by default. You can optionally tell Amazon S3 to encrypt data at rest +// using server-side encryption with other key options. The option you use +// depends on whether you want to use KMS keys (SSE-KMS) or provide your +// own encryption key (SSE-C). Server-side encryption is supported by the +// S3 Multipart Upload operations. Unless you are using a customer-provided +// encryption key (SSE-C), you don't need to specify the encryption parameters +// in each UploadPart request. Instead, you only need to specify the server-side +// encryption parameters in the initial Initiate Multipart request. For more +// information, see CreateMultipartUpload (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html). +// If you request server-side encryption using a customer-provided encryption +// key (SSE-C) in your initiate multipart upload request, you must provide +// identical encryption information in each part upload using the following +// request headers. x-amz-server-side-encryption-customer-algorithm x-amz-server-side-encryption-customer-key +// x-amz-server-side-encryption-customer-key-MD5 // -// - x-amz-server-side-encryption-customer-key-MD5 +// - Directory bucket - For directory buckets, only server-side encryption +// with Amazon S3 managed keys (SSE-S3) (AES256) is supported. // -// UploadPart has the following special errors: +// For more information, see Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html) +// in the Amazon S3 User Guide. // -// - Code: NoSuchUpload Cause: The specified multipart upload does not exist. -// The upload ID might be invalid, or the multipart upload might have been -// aborted or completed. HTTP Status Code: 404 Not Found SOAP Fault Code -// Prefix: Client +// Special errors +// +// - Error Code: NoSuchUpload Description: The specified multipart upload +// does not exist. The upload ID might be invalid, or the multipart upload +// might have been aborted or completed. HTTP Status Code: 404 Not Found +// SOAP Fault Code Prefix: Client +// +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to UploadPart: // @@ -11093,81 +11959,105 @@ // UploadPartCopy API operation for Amazon Simple Storage Service. // -// Uploads a part by copying data from an existing object as data source. You -// specify the data source by adding the request header x-amz-copy-source in -// your request and a byte range by adding the request header x-amz-copy-source-range +// Uploads a part by copying data from an existing object as data source. To +// specify the data source, you add the request header x-amz-copy-source in +// your request. To specify a byte range, you add the request header x-amz-copy-source-range // in your request. // // For information about maximum and minimum part sizes and other multipart // upload specifications, see Multipart upload limits (https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html) // in the Amazon S3 User Guide. // -// Instead of using an existing object as part data, you might use the UploadPart -// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) action -// and provide data in your request. +// Instead of copying data from an existing object as part data, you might use +// the UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html) +// action to upload new data as a part of an object in your request. // // You must initiate a multipart upload before you can upload any part. In response -// to your initiate request. Amazon S3 returns a unique identifier, the upload -// ID, that you must include in your upload part request. +// to your initiate request, Amazon S3 returns the upload ID, a unique identifier +// that you must include in your upload part request. // -// For more information about using the UploadPartCopy operation, see the following: +// For conceptual information about multipart uploads, see Uploading Objects +// Using Multipart Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) +// in the Amazon S3 User Guide. For information about copying objects using +// a single atomic action vs. a multipart upload, see Operations on Objects +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html) in +// the Amazon S3 User Guide. // -// - For conceptual information about multipart uploads, see Uploading Objects -// Using Multipart Upload (https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) -// in the Amazon S3 User Guide. +// Directory buckets - For directory buckets, you must make requests for this +// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style +// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name +// . Path-style requests are not supported. For more information, see Regional +// and Zonal endpoints (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html) +// in the Amazon S3 User Guide. // -// - For information about permissions required to use the multipart upload -// API, see Multipart Upload and Permissions (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) -// in the Amazon S3 User Guide. +// # Authentication and authorization // -// - For information about copying objects using a single atomic action vs. -// a multipart upload, see Operations on Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html) -// in the Amazon S3 User Guide. +// All UploadPartCopy requests must be authenticated and signed by using IAM +// credentials (access key ID and secret access key for the IAM identities). +// All headers with the x-amz- prefix, including x-amz-copy-source, must be +// signed. For more information, see REST Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). // -// - For information about using server-side encryption with customer-provided -// encryption keys with the UploadPartCopy operation, see CopyObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html) -// and UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html). +// Directory buckets - You must use IAM credentials to authenticate and authorize +// your access to the UploadPartCopy API operation, instead of using the temporary +// security credentials through the CreateSession API operation. // -// Note the following additional considerations about the request headers x-amz-copy-source-if-match, -// x-amz-copy-source-if-none-match, x-amz-copy-source-if-unmodified-since, and -// x-amz-copy-source-if-modified-since: -// -// - Consideration 1 - If both of the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since -// headers are present in the request as follows: x-amz-copy-source-if-match -// condition evaluates to true, and; x-amz-copy-source-if-unmodified-since -// condition evaluates to false; Amazon S3 returns 200 OK and copies the -// data. -// -// - Consideration 2 - If both of the x-amz-copy-source-if-none-match and -// x-amz-copy-source-if-modified-since headers are present in the request -// as follows: x-amz-copy-source-if-none-match condition evaluates to false, -// and; x-amz-copy-source-if-modified-since condition evaluates to true; -// Amazon S3 returns 412 Precondition Failed response code. +// Amazon Web Services CLI or SDKs handles authentication and authorization +// on your behalf. // -// # Versioning +// # Permissions // -// If your bucket has versioning enabled, you could have multiple versions of -// the same object. By default, x-amz-copy-source identifies the current version -// of the object to copy. If the current version is a delete marker and you -// don't specify a versionId in the x-amz-copy-source, Amazon S3 returns a 404 -// error, because the object does not exist. If you specify versionId in the -// x-amz-copy-source and the versionId is a delete marker, Amazon S3 returns -// an HTTP 400 error, because you are not allowed to specify a delete marker -// as a version for the x-amz-copy-source. +// You must have READ access to the source object and WRITE access to the destination +// bucket. +// +// - General purpose bucket permissions - You must have the permissions in +// a policy based on the bucket types of your source bucket and destination +// bucket in an UploadPartCopy operation. If the source object is in a general +// purpose bucket, you must have the s3:GetObject permission to read the +// source object that is being copied. If the destination bucket is a general +// purpose bucket, you must have the s3:PubObject permission to write the +// object copy to the destination bucket. For information about permissions +// required to use the multipart upload API, see Multipart Upload and Permissions +// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. // -// You can optionally specify a specific version of the source object to copy -// by adding the versionId subresource as shown in the following example: +// - Directory bucket permissions - You must have permissions in a bucket +// policy or an IAM identity-based policy based on the source and destination +// bucket types in an UploadPartCopy operation. If the source object that +// you want to copy is in a directory bucket, you must have the s3express:CreateSession +// permission in the Action element of a policy to read the object . By default, +// the session is in the ReadWrite mode. If you want to restrict the access, +// you can explicitly set the s3express:SessionMode condition key to ReadOnly +// on the copy source bucket. If the copy destination is a directory bucket, +// you must have the s3express:CreateSession permission in the Action element +// of a policy to write the object to the destination. The s3express:SessionMode +// condition key cannot be set to ReadOnly on the copy destination. For example +// policies, see Example bucket policies for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html) +// and Amazon Web Services Identity and Access Management (IAM) identity-based +// policies for S3 Express One Zone (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html) +// in the Amazon S3 User Guide. +// +// Encryption +// +// - General purpose buckets - For information about using server-side encryption +// with customer-provided encryption keys with the UploadPartCopy operation, +// see CopyObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html) +// and UploadPart (https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html). // -// x-amz-copy-source: /bucket/object?versionId=version id +// - Directory buckets - For directory buckets, only server-side encryption +// with Amazon S3 managed keys (SSE-S3) (AES256) is supported. // // Special errors // -// - Code: NoSuchUpload Cause: The specified multipart upload does not exist. -// The upload ID might be invalid, or the multipart upload might have been -// aborted or completed. HTTP Status Code: 404 Not Found +// - Error Code: NoSuchUpload Description: The specified multipart upload +// does not exist. The upload ID might be invalid, or the multipart upload +// might have been aborted or completed. HTTP Status Code: 404 Not Found +// +// - Error Code: InvalidRequest Description: The specified copy source is +// not supported as a byte-range copy source. HTTP Status Code: 400 Bad Request // -// - Code: InvalidRequest Cause: The specified copy source is not supported -// as a byte-range copy source. HTTP Status Code: 400 Bad Request +// # HTTP Host header syntax +// +// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. // // The following operations are related to UploadPartCopy: // @@ -11260,6 +12150,8 @@ // WriteGetObjectResponse API operation for Amazon Simple Storage Service. // +// This operation is not supported by directory buckets. +// // Passes transformed objects to a GetObject operation when using Object Lambda // access points. For information about Object Lambda access points, see Transforming // objects with Object Lambda access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html) @@ -11374,27 +12266,41 @@ // The bucket name to which the upload was taking place. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Key of the object for which the multipart upload was initiated. @@ -11404,11 +12310,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Upload ID that identifies the multipart upload. @@ -11529,6 +12437,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -12063,9 +12973,7 @@ return s } -// In terms of implementation, a Bucket is a resource. An Amazon S3 bucket name -// is globally unique, and the namespace is shared by all Amazon Web Services -// accounts. +// In terms of implementation, a Bucket is a resource. type Bucket struct { _ struct{} `type:"structure"` @@ -12107,6 +13015,51 @@ return s } +// Specifies the information about the bucket that will be created. For more +// information about directory buckets, see Directory buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html) +// in the Amazon S3 User Guide. +// +// This functionality is only supported by directory buckets. +type BucketInfo struct { + _ struct{} `type:"structure"` + + // The number of Availability Zone that's used for redundancy for the bucket. + DataRedundancy *string `type:"string" enum:"DataRedundancy"` + + // The type of bucket. + Type *string `type:"string" enum:"BucketType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BucketInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BucketInfo) GoString() string { + return s.String() +} + +// SetDataRedundancy sets the DataRedundancy field's value. +func (s *BucketInfo) SetDataRedundancy(v string) *BucketInfo { + s.DataRedundancy = &v + return s +} + +// SetType sets the Type field's value. +func (s *BucketInfo) SetType(v string) *BucketInfo { + s.Type = &v + return s +} + // Specifies the lifecycle configuration for objects in an Amazon S3 bucket. // For more information, see Object Lifecycle Management (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) // in the Amazon S3 User Guide. @@ -12578,34 +13531,42 @@ _ struct{} `type:"structure"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `type:"string"` } @@ -12765,19 +13726,33 @@ // Name of the bucket to which the multipart upload was initiated. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -12811,9 +13786,9 @@ // in the Amazon S3 User Guide. ChecksumSHA256 *string `location:"header" locationName:"x-amz-checksum-sha256" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Object key for which the multipart upload was initiated. @@ -12826,17 +13801,22 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The server-side encryption (SSE) algorithm used to encrypt the object. This - // parameter is needed only when the object was created using a checksum algorithm. - // For more information, see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) + // parameter is required only when the object was created using a checksum algorithm + // or if your bucket policy requires the use of SSE-C. For more information, + // see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html#ssec-require-condition-key) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // The server-side encryption (SSE) customer managed key. This parameter is @@ -12844,6 +13824,8 @@ // information, see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) // in the Amazon S3 User Guide. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CompleteMultipartUploadInput's // String and GoString methods. @@ -12853,6 +13835,8 @@ // is needed only when the object was created using a checksum algorithm. For // more information, see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // ID for the initiated multipart upload. @@ -13029,55 +14013,52 @@ // The name of the bucket that contains the newly created object. Does not return // the access point ARN or access point alias if used. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. - // When using this action with an access point through the Amazon Web Services - // SDKs, you provide the access point ARN in place of the bucket name. For more - // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) - // in the Amazon S3 User Guide. - // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) - // in the Amazon S3 User Guide. + // Access points are not supported by directory buckets. Bucket *string `type:"string"` // Indicates whether the multipart upload uses an S3 Bucket Key for server-side // encryption with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `type:"string"` @@ -13093,6 +14074,8 @@ // If the object expiration is configured, this will contain the expiration // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL-encoded. + // + // This functionality is not supported for directory buckets. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // The object key of the newly created object. @@ -13103,11 +14086,15 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric + // If present, indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CompleteMultipartUploadOutput's // String and GoString methods. @@ -13115,10 +14102,15 @@ // The server-side encryption algorithm used when storing this object in Amazon // S3 (for example, AES256, aws:kms). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Version ID of the newly created object, in case the bucket has versioning // turned on. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } @@ -13271,34 +14263,42 @@ _ struct{} `type:"structure"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `type:"string"` @@ -13307,6 +14307,16 @@ // Part number that identifies the part. This is a positive integer between // 1 and 10,000. + // + // * General purpose buckets - In CompleteMultipartUpload, when a additional + // checksum (including x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-sha1, + // or x-amz-checksum-sha256) is applied to each part, the PartNumber must + // start at 1 and the part numbers must be consecutive. Otherwise, Amazon + // S3 generates an HTTP 400 Bad Request status code and an InvalidPartOrder + // error code. + // + // * Directory buckets - In CompleteMultipartUpload, the PartNumber must + // start at 1 and the part numbers must be consecutive. PartNumber *int64 `type:"integer"` } @@ -13466,26 +14476,60 @@ type CopyObjectInput struct { _ struct{} `locationName:"CopyObjectRequest" type:"structure"` - // The canned ACL to apply to the object. + // The canned access control list (ACL) to apply to the object. + // + // When you copy an object, the ACL metadata is not preserved and is set to + // private by default. Only the owner has full access control. To override the + // default ACL setting, specify a new ACL when you generate a copy request. + // For more information, see Using ACLs (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). + // + // If the destination bucket that you're copying objects to uses the bucket + // owner enforced setting for S3 Object Ownership, ACLs are disabled and no + // longer affect permissions. Buckets that use this setting only accept PUT + // requests that don't specify an ACL or PUT requests that specify bucket owner + // full control ACLs, such as the bucket-owner-full-control canned ACL or an + // equivalent form of this ACL expressed in the XML format. For more information, + // see Controlling ownership of objects and disabling ACLs (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) + // in the Amazon S3 User Guide. + // + // * If your destination bucket uses the bucket owner enforced setting for + // Object Ownership, all objects written to the bucket by any account will + // be owned by the bucket owner. + // + // * This functionality is not supported for directory buckets. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for Amazon S3 on Outposts. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` // The name of the destination bucket. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -13493,44 +14537,73 @@ // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption // with server-side encryption using Key Management Service (KMS) keys (SSE-KMS). + // If a target object uses SSE-KMS, you can enable an S3 Bucket Key for the + // object. + // // Setting this header to true causes Amazon S3 to use an S3 Bucket Key for - // object encryption with SSE-KMS. + // object encryption with SSE-KMS. Specifying this header with a COPY action + // doesn’t affect bucket-level settings for S3 Bucket Key. // - // Specifying this header with a COPY action doesn’t affect bucket-level settings - // for S3 Bucket Key. + // For more information, see Amazon S3 Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported when the destination bucket is a directory + // bucket. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` - // Specifies caching behavior along the request/reply chain. + // Specifies the caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` - // Indicates the algorithm you want Amazon S3 to use to create the checksum + // Indicates the algorithm that you want Amazon S3 to use to create the checksum // for the object. For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. + // + // When you copy an object, if the source object has a checksum, that checksum + // value will be copied to the new object by default. If the CopyObject request + // does not include this x-amz-checksum-algorithm header, the checksum algorithm + // will be copied from the source object to the destination object (if it's + // present on the source object). You can optionally specify a different checksum + // algorithm to use with the x-amz-checksum-algorithm header. Unrecognized or + // unsupported values will respond with the HTTP status code 400 Bad Request. + // + // For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the + // default checksum algorithm that's used for performance. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // Specifies presentational information for the object. + // Specifies presentational information for the object. Indicates whether an + // object should be displayed in a web browser or downloaded as a file. It allows + // specifying the desired filename for the downloaded file. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. + // + // For directory buckets, only the aws-chunked value is supported in this header + // field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` - // A standard MIME type describing the format of the object data. + // A standard MIME type that describes the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` - // Specifies the source object for the copy operation. You specify the value - // in one of two formats, depending on whether you want to access the source - // object through an access point (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html): + // Specifies the source object for the copy operation. The source object can + // be up to 5 GB. If the source object is an object that was uploaded by using + // a multipart upload, the object copy will be a single part object after the + // source object is copied to the destination bucket. + // + // You specify the value of the copy source in one of two formats, depending + // on whether you want to access the source object through an access point (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html): // // * For objects not accessed through an access point, specify the name of // the source bucket and the key of the source object, separated by a slash - // (/). For example, to copy the object reports/january.pdf from the bucket - // awsexamplebucket, use awsexamplebucket/reports/january.pdf. The value - // must be URL-encoded. + // (/). For example, to copy the object reports/january.pdf from the general + // purpose bucket awsexamplebucket, use awsexamplebucket/reports/january.pdf. + // The value must be URL-encoded. To copy the object reports/january.pdf + // from the directory bucket awsexamplebucket--use1-az5--x-s3, use awsexamplebucket--use1-az5--x-s3/reports/january.pdf. + // The value must be URL-encoded. // // * For objects accessed through access points, specify the Amazon Resource // Name (ARN) of the object as accessed through the access point, in the @@ -13539,43 +14612,104 @@ // my-access-point owned by account 123456789012 in Region us-west-2, use // the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. // The value must be URL encoded. Amazon S3 supports copy operations using - // access points only when the source and destination buckets are in the - // same Amazon Web Services Region. Alternatively, for objects accessed through - // Amazon S3 on Outposts, specify the ARN of the object as accessed in the - // format arn:aws:s3-outposts:::outpost//object/. + // Access points only when the source and destination buckets are in the + // same Amazon Web Services Region. Access points are not supported by directory + // buckets. Alternatively, for objects accessed through Amazon S3 on Outposts, + // specify the ARN of the object as accessed in the format arn:aws:s3-outposts:::outpost//object/. // For example, to copy the object reports/january.pdf through outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding // of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. // The value must be URL-encoded. // - // To copy a specific version of an object, append ?versionId= to - // the value (for example, awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). + // If your source bucket versioning is enabled, the x-amz-copy-source header + // by default identifies the current version of an object to copy. If the current + // version is a delete marker, Amazon S3 behaves as if the object was deleted. + // To copy a different version, use the versionId query parameter. Specifically, + // append ?versionId= to the value (for example, awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). // If you don't specify a version ID, Amazon S3 copies the latest version of // the source object. // + // If you enable versioning on the destination bucket, Amazon S3 generates a + // unique version ID for the copied object. This version ID is different from + // the version ID of the source object. Amazon S3 returns the version ID of + // the copied object in the x-amz-version-id response header in the response. + // + // If you do not enable versioning or suspend it on the destination bucket, + // the version ID that Amazon S3 generates in the x-amz-version-id response + // header is always null. + // + // Directory buckets - S3 Versioning isn't enabled and supported for directory + // buckets. + // // CopySource is a required field CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"` // Copies the object if its entity tag (ETag) matches the specified tag. + // + // If both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since + // headers are present in the request and evaluate as follows, Amazon S3 returns + // 200 OK and copies the data: + // + // * x-amz-copy-source-if-match condition evaluates to true + // + // * x-amz-copy-source-if-unmodified-since condition evaluates to false CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"` // Copies the object if it has been modified since the specified time. + // + // If both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since + // headers are present in the request and evaluate as follows, Amazon S3 returns + // the 412 Precondition Failed response code: + // + // * x-amz-copy-source-if-none-match condition evaluates to false + // + // * x-amz-copy-source-if-modified-since condition evaluates to true CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp"` // Copies the object if its entity tag (ETag) is different than the specified // ETag. + // + // If both the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since + // headers are present in the request and evaluate as follows, Amazon S3 returns + // the 412 Precondition Failed response code: + // + // * x-amz-copy-source-if-none-match condition evaluates to false + // + // * x-amz-copy-source-if-modified-since condition evaluates to true CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"` // Copies the object if it hasn't been modified since the specified time. + // + // If both the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since + // headers are present in the request and evaluate as follows, Amazon S3 returns + // 200 OK and copies the data: + // + // * x-amz-copy-source-if-match condition evaluates to true + // + // * x-amz-copy-source-if-unmodified-since condition evaluates to false CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp"` // Specifies the algorithm to use when decrypting the source object (for example, // AES256). + // + // If the source object for the copy is stored in Amazon S3 using SSE-C, you + // must provide the necessary encryption information in your request so that + // Amazon S3 can decrypt the object for copying. + // + // This functionality is not supported when the source object is in a directory + // bucket. CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt - // the source object. The encryption key provided in this header must be one - // that was used when the source object was created. + // the source object. The encryption key provided in this header must be the + // same one that was used when the source object was created. + // + // If the source object for the copy is stored in Amazon S3 using SSE-C, you + // must provide the necessary encryption information in your request so that + // Amazon S3 can decrypt the object for copying. + // + // This functionality is not supported when the source object is in a directory + // bucket. // // CopySourceSSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CopyObjectInput's @@ -13585,16 +14719,23 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // If the source object for the copy is stored in Amazon S3 using SSE-C, you + // must provide the necessary encryption information in your request so that + // Amazon S3 can decrypt the object for copying. + // + // This functionality is not supported when the source object is in a directory + // bucket. CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"` - // The account ID of the expected destination bucket owner. If the destination - // bucket is owned by a different account, the request fails with the HTTP status - // code 403 Forbidden (access denied). + // The account ID of the expected destination bucket owner. If the account ID + // that you provide does not match the actual owner of the destination bucket, + // the request fails with the HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` - // The account ID of the expected source bucket owner. If the source bucket - // is owned by a different account, the request fails with the HTTP status code - // 403 Forbidden (access denied). + // The account ID of the expected source bucket owner. If the account ID that + // you provide does not match the actual owner of the source bucket, the request + // fails with the HTTP status code 403 Forbidden (access denied). ExpectedSourceBucketOwner *string `location:"header" locationName:"x-amz-source-expected-bucket-owner" type:"string"` // The date and time at which the object is no longer cacheable. @@ -13602,22 +14743,30 @@ // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // The key of the destination object. @@ -13629,37 +14778,69 @@ Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Specifies whether the metadata is copied from the source object or replaced - // with metadata provided in the request. + // with metadata that's provided in the request. When copying an object, you + // can preserve all metadata (the default) or specify new metadata. If this + // header isn’t specified, COPY is the default behavior. + // + // General purpose bucket - For general purpose buckets, when you grant permissions, + // you can use the s3:x-amz-metadata-directive condition key to enforce certain + // metadata behavior when objects are uploaded. For more information, see Amazon + // S3 condition key examples (https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html) + // in the Amazon S3 User Guide. + // + // x-amz-website-redirect-location is unique to each object and is not copied + // when using the x-amz-metadata-directive header. To copy the value, you must + // specify x-amz-website-redirect-location in the request header. MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"` - // Specifies whether you want to apply a legal hold to the copied object. + // Specifies whether you want to apply a legal hold to the object copy. + // + // This functionality is not supported for directory buckets. ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"` - // The Object Lock mode that you want to apply to the copied object. + // The Object Lock mode that you want to apply to the object copy. + // + // This functionality is not supported for directory buckets. ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"` - // The date and time when you want the copied object's Object Lock to expire. + // The date and time when you want the Object Lock of the object copy to expire. + // + // This functionality is not supported for directory buckets. ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // When you perform a CopyObject operation, if you want to use a different type + // of encryption setting for the target object, you can specify appropriate + // encryption-related headers to encrypt the target object with an Amazon S3 + // managed key, a KMS key, or a customer-provided key. If the encryption setting + // in your request is different from the default encryption configuration of + // the destination bucket, the encryption setting in your request takes precedence. + // + // This functionality is not supported when the destination bucket is a directory + // bucket. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting - // data. This value is used to store the object and then it is discarded; Amazon + // data. This value is used to store the object and then it is discarded. Amazon // S3 does not store the encryption key. The key must be appropriate for use // with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm // header. // + // This functionality is not supported when the destination bucket is a directory + // bucket. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CopyObjectInput's // String and GoString methods. @@ -13668,11 +14849,18 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported when the destination bucket is a directory + // bucket. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the Amazon Web Services KMS Encryption Context to use for object // encryption. The value of this header is a base64-encoded UTF-8 string holding - // JSON with the encryption context key-value pairs. + // JSON with the encryption context key-value pairs. This value must be explicitly + // added to specify encryption context for CopyObject requests. + // + // This functionality is not supported when the destination bucket is a directory + // bucket. // // SSEKMSEncryptionContext is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CopyObjectInput's @@ -13686,38 +14874,176 @@ // CLI, see Specifying the Signature Version in Request Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version) // in the Amazon S3 User Guide. // + // This functionality is not supported when the destination bucket is a directory + // bucket. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CopyObjectInput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` // The server-side encryption algorithm used when storing this object in Amazon - // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // S3 (for example, AES256, aws:kms, aws:kms:dsse). Unrecognized or unsupported + // values won’t write a destination object and will receive a 400 Bad Request + // response. + // + // Amazon S3 automatically encrypts all new objects that are copied to an S3 + // bucket. When copying an object, if you don't specify encryption information + // in your copy request, the encryption setting of the target object is set + // to the default encryption configuration of the destination bucket. By default, + // all buckets have a base level of encryption configuration that uses server-side + // encryption with Amazon S3 managed keys (SSE-S3). If the destination bucket + // has a default encryption configuration that uses server-side encryption with + // Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption + // with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with + // customer-provided encryption keys (SSE-C), Amazon S3 uses the corresponding + // KMS key, or a customer-provided key to encrypt the target object copy. + // + // When you perform a CopyObject operation, if you want to use a different type + // of encryption setting for the target object, you can specify appropriate + // encryption-related headers to encrypt the target object with an Amazon S3 + // managed key, a KMS key, or a customer-provided key. If the encryption setting + // in your request is different from the default encryption configuration of + // the destination bucket, the encryption setting in your request takes precedence. + // + // With server-side encryption, Amazon S3 encrypts your data as it writes your + // data to disks in its data centers and decrypts the data when you access it. + // For more information about server-side encryption, see Using Server-Side + // Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html) + // in the Amazon S3 User Guide. + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // If the x-amz-storage-class header is not used, the copied object will be // stored in the STANDARD Storage Class by default. The STANDARD storage class // provides high durability and high availability. Depending on performance - // needs, you can specify a different Storage Class. Amazon S3 on Outposts only - // uses the OUTPOSTS Storage Class. For more information, see Storage Classes - // (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) + // needs, you can specify a different Storage Class. + // + // * Directory buckets - For directory buckets, only the S3 Express One Zone + // storage class is supported to store newly created objects. Unsupported + // storage class values won't write a destination object and will respond + // with the HTTP status code 400 Bad Request. + // + // * Amazon S3 on Outposts - S3 on Outposts only uses the OUTPOSTS Storage + // Class. + // + // You can use the CopyObject action to change the storage class of an object + // that is already stored in Amazon S3 by using the x-amz-storage-class header. + // For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) + // in the Amazon S3 User Guide. + // + // Before using an object as a source object for the copy operation, you must + // restore a copy of it if it meets any of the following conditions: + // + // * The storage class of the source object is GLACIER or DEEP_ARCHIVE. + // + // * The storage class of the source object is INTELLIGENT_TIERING and it's + // S3 Intelligent-Tiering access tier (https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering-overview.html#intel-tiering-tier-definition) + // is Archive Access or Deep Archive Access. + // + // For more information, see RestoreObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html) + // and Copying Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html) // in the Amazon S3 User Guide. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` - // The tag-set for the object destination object this value must be used in - // conjunction with the TaggingDirective. The tag-set must be encoded as URL - // Query parameters. + // The tag-set for the object copy in the destination bucket. This value must + // be used in conjunction with the x-amz-tagging-directive if you choose REPLACE + // for the x-amz-tagging-directive. If you choose COPY for the x-amz-tagging-directive, + // you don't need to set the x-amz-tagging header, because the tag-set will + // be copied from the source object directly. The tag-set must be encoded as + // URL Query parameters. + // + // The default value is the empty value. + // + // Directory buckets - For directory buckets in a CopyObject operation, only + // the empty tag-set is supported. Any requests that attempt to write non-empty + // tags into directory buckets will receive a 501 Not Implemented status code. + // When the destination bucket is a directory bucket, you will receive a 501 + // Not Implemented response in any of the following situations: + // + // * When you attempt to COPY the tag-set from an S3 source object that has + // non-empty tags. + // + // * When you attempt to REPLACE the tag-set of a source object and set a + // non-empty value to x-amz-tagging. + // + // * When you don't set the x-amz-tagging-directive header and the source + // object has non-empty tags. This is because the default value of x-amz-tagging-directive + // is COPY. + // + // Because only the empty tag-set is supported for directory buckets in a CopyObject + // operation, the following situations are allowed: + // + // * When you attempt to COPY the tag-set from a directory bucket source + // object that has no tags to a general purpose bucket. It copies an empty + // tag-set to the destination object. + // + // * When you attempt to REPLACE the tag-set of a directory bucket source + // object and set the x-amz-tagging value of the directory bucket destination + // object to empty. + // + // * When you attempt to REPLACE the tag-set of a general purpose bucket + // source object that has non-empty tags and set the x-amz-tagging value + // of the directory bucket destination object to empty. + // + // * When you attempt to REPLACE the tag-set of a directory bucket source + // object and don't set the x-amz-tagging value of the directory bucket destination + // object. This is because the default value of x-amz-tagging is the empty + // value. Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"` - // Specifies whether the object tag-set are copied from the source object or - // replaced with tag-set provided in the request. + // Specifies whether the object tag-set is copied from the source object or + // replaced with the tag-set that's provided in the request. + // + // The default value is COPY. + // + // Directory buckets - For directory buckets in a CopyObject operation, only + // the empty tag-set is supported. Any requests that attempt to write non-empty + // tags into directory buckets will receive a 501 Not Implemented status code. + // When the destination bucket is a directory bucket, you will receive a 501 + // Not Implemented response in any of the following situations: + // + // * When you attempt to COPY the tag-set from an S3 source object that has + // non-empty tags. + // + // * When you attempt to REPLACE the tag-set of a source object and set a + // non-empty value to x-amz-tagging. + // + // * When you don't set the x-amz-tagging-directive header and the source + // object has non-empty tags. This is because the default value of x-amz-tagging-directive + // is COPY. + // + // Because only the empty tag-set is supported for directory buckets in a CopyObject + // operation, the following situations are allowed: + // + // * When you attempt to COPY the tag-set from a directory bucket source + // object that has no tags to a general purpose bucket. It copies an empty + // tag-set to the destination object. + // + // * When you attempt to REPLACE the tag-set of a directory bucket source + // object and set the x-amz-tagging value of the directory bucket destination + // object to empty. + // + // * When you attempt to REPLACE the tag-set of a general purpose bucket + // source object that has non-empty tags and set the x-amz-tagging value + // of the directory bucket destination object to empty. + // + // * When you attempt to REPLACE the tag-set of a directory bucket source + // object and don't set the x-amz-tagging value of the directory bucket destination + // object. This is because the default value of x-amz-tagging is the empty + // value. TaggingDirective *string `location:"header" locationName:"x-amz-tagging-directive" type:"string" enum:"TaggingDirective"` - // If the bucket is configured as a website, redirects requests for this object - // to another object in the same bucket or to an external URL. Amazon S3 stores - // the value of this header in the object metadata. This value is unique to - // each object and is not copied when using the x-amz-metadata-directive header. - // Instead, you may opt to provide this header in combination with the directive. + // If the destination bucket is configured as a website, redirects requests + // for this object copy to another object in the same bucket or to an external + // URL. Amazon S3 stores the value of this header in the object metadata. This + // value is unique to each object and is not copied when using the x-amz-metadata-directive + // header. Instead, you may opt to provide this header in combination with the + // x-amz-metadata-directive header. + // + // This functionality is not supported for directory buckets. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } @@ -14063,53 +15389,75 @@ // Indicates whether the copied object uses an S3 Bucket Key for server-side // encryption with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Container for all response elements. CopyObjectResult *CopyObjectResult `type:"structure"` - // Version of the copied object in the destination bucket. + // Version ID of the source object that was copied. + // + // This functionality is not supported when the source object is in a directory + // bucket. CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"` // If the object expiration is configured, the response includes this header. + // + // This functionality is not supported for directory buckets. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the Amazon Web Services KMS Encryption Context to use + // If present, indicates the Amazon Web Services KMS Encryption Context to use // for object encryption. The value of this header is a base64-encoded UTF-8 // string holding JSON with the encryption context key-value pairs. // + // This functionality is not supported for directory buckets. + // // SSEKMSEncryptionContext is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CopyObjectOutput's // String and GoString methods. SSEKMSEncryptionContext *string `location:"header" locationName:"x-amz-server-side-encryption-context" type:"string" sensitive:"true"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric + // If present, indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CopyObjectOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Version ID of the newly created copy. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } @@ -14202,34 +15550,26 @@ _ struct{} `type:"structure"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. For more information, see Checking + // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. For more information, see + // Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. For more information, see Checking + // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. For more information, see + // Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumSHA256 *string `type:"string"` @@ -14300,34 +15640,42 @@ _ struct{} `type:"structure"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `type:"string"` @@ -14396,8 +15744,29 @@ type CreateBucketConfiguration struct { _ struct{} `type:"structure"` - // Specifies the Region where the bucket will be created. If you don't specify - // a Region, the bucket is created in the US East (N. Virginia) Region (us-east-1). + // Specifies the information about the bucket that will be created. + // + // This functionality is only supported by directory buckets. + Bucket *BucketInfo `type:"structure"` + + // Specifies the location where the bucket will be created. + // + // For directory buckets, the location type is Availability Zone. + // + // This functionality is only supported by directory buckets. + Location *LocationInfo `type:"structure"` + + // Specifies the Region where the bucket will be created. You might choose a + // Region to optimize latency, minimize costs, or address regulatory requirements. + // For example, if you reside in Europe, you will probably find it advantageous + // to create buckets in the Europe (Ireland) Region. For more information, see + // Accessing a bucket (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro) + // in the Amazon S3 User Guide. + // + // If you don't specify a Region, the bucket is created in the US East (N. Virginia) + // Region (us-east-1) by default. + // + // This functionality is not supported for directory buckets. LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"` } @@ -14419,6 +15788,22 @@ return s.String() } +// SetBucket sets the Bucket field's value. +func (s *CreateBucketConfiguration) SetBucket(v *BucketInfo) *CreateBucketConfiguration { + s.Bucket = v + return s +} + +func (s *CreateBucketConfiguration) getBucket() (v *BucketInfo) { + return s.Bucket +} + +// SetLocation sets the Location field's value. +func (s *CreateBucketConfiguration) SetLocation(v *LocationInfo) *CreateBucketConfiguration { + s.Location = v + return s +} + // SetLocationConstraint sets the LocationConstraint field's value. func (s *CreateBucketConfiguration) SetLocationConstraint(v string) *CreateBucketConfiguration { s.LocationConstraint = &v @@ -14429,10 +15814,25 @@ _ struct{} `locationName:"CreateBucketRequest" type:"structure" payload:"CreateBucketConfiguration"` // The canned ACL to apply to the bucket. + // + // This functionality is not supported for directory buckets. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"` // The name of the bucket to create. // + // General purpose buckets - For information about bucket naming restrictions, + // see Bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html) + // in the Amazon S3 User Guide. + // + // Directory buckets - When you use this operation with a directory bucket, + // you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name + // . Virtual-hosted-style requests aren't supported. Directory bucket names + // must be unique in the chosen Availability Zone. Bucket names must also follow + // the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). + // For information about bucket naming restrictions, see Directory bucket naming + // rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide + // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` @@ -14441,24 +15841,36 @@ // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. + // + // This functionality is not supported for directory buckets. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to list the objects in the bucket. + // + // This functionality is not supported for directory buckets. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the bucket ACL. + // + // This functionality is not supported for directory buckets. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to create new objects in the bucket. // // For the bucket and object owners of existing objects, also allows deletions // and overwrites of those objects. + // + // This functionality is not supported for directory buckets. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"` // Allows grantee to write the ACL for the applicable bucket. + // + // This functionality is not supported for directory buckets. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Specifies whether you want S3 Object Lock to be enabled for the new bucket. + // + // This functionality is not supported for directory buckets. ObjectLockEnabledForBucket *bool `location:"header" locationName:"x-amz-bucket-object-lock-enabled" type:"boolean"` // The container element for object ownership for a bucket's ownership controls. @@ -14473,8 +15885,19 @@ // BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer // affect permissions. The bucket owner automatically owns and has full control // over every object in the bucket. The bucket only accepts PUT requests that - // don't specify an ACL or bucket owner full control ACLs, such as the bucket-owner-full-control - // canned ACL or an equivalent form of this ACL expressed in the XML format. + // don't specify an ACL or specify bucket owner full control ACLs (such as the + // predefined bucket-owner-full-control canned ACL or a custom ACL in XML format + // that grants the same permissions). + // + // By default, ObjectOwnership is set to BucketOwnerEnforced and ACLs are disabled. + // We recommend keeping ACLs disabled, except in uncommon use cases where you + // must control access for each object individually. For more information about + // S3 Object Ownership, see Controlling ownership of objects and disabling ACLs + // for your bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. Directory buckets + // use the bucket owner enforced setting for S3 Object Ownership. ObjectOwnership *string `location:"header" locationName:"x-amz-object-ownership" type:"string" enum:"ObjectOwnership"` } @@ -14613,26 +16036,54 @@ type CreateMultipartUploadInput struct { _ struct{} `locationName:"CreateMultipartUploadRequest" type:"structure"` - // The canned ACL to apply to the object. + // The canned ACL to apply to the object. Amazon S3 supports a set of predefined + // ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees + // and permissions. For more information, see Canned ACL (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL) + // in the Amazon S3 User Guide. + // + // By default, all objects are private. Only the owner has full access control. + // When uploading an object, you can grant access permissions to individual + // Amazon Web Services accounts or to predefined groups defined by Amazon S3. + // These permissions are then added to the access control list (ACL) on the + // new object. For more information, see Using ACLs (https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html). + // One way to grant the permissions using the request headers is to specify + // a canned ACL with the x-amz-acl request header. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` - // The name of the bucket to which to initiate the upload + // The name of the bucket where the multipart upload is initiated and where + // the object is uploaded. + // + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -14645,12 +16096,14 @@ // // Specifying this header with an object action doesn’t affect bucket-level // settings for S3 Bucket Key. + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` - // Indicates the algorithm you want Amazon S3 to use to create the checksum + // Indicates the algorithm that you want Amazon S3 to use to create the checksum // for the object. For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` @@ -14661,40 +16114,175 @@ // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. + // + // For directory buckets, only the aws-chunked value is supported in this header + // field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` - // The language the content is in. + // The language that the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The date and time at which the object is no longer cacheable. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp"` - // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. + // Specify access permissions explicitly to give the grantee READ, READ_ACP, + // and WRITE_ACP permissions on the object. + // + // By default, all objects are private. Only the owner has full access control. + // When uploading an object, you can use this header to explicitly grant access + // permissions to specific Amazon Web Services accounts or groups. This header + // maps to specific permissions that Amazon S3 supports in an ACL. For more + // information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) + // in the Amazon S3 User Guide. + // + // You specify each grantee as a type=value pair, where the type is one of the + // following: + // + // * id – if the value specified is the canonical user ID of an Amazon + // Web Services account + // + // * uri – if you are granting permissions to a predefined group + // + // * emailAddress – if the value specified is the email address of an Amazon + // Web Services account Using email addresses to specify a grantee is only + // supported in the following Amazon Web Services Regions: US East (N. Virginia) + // US West (N. California) US West (Oregon) Asia Pacific (Singapore) Asia + // Pacific (Sydney) Asia Pacific (Tokyo) Europe (Ireland) South America (São + // Paulo) For a list of all the Amazon S3 supported Regions and endpoints, + // see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) + // in the Amazon Web Services General Reference. + // + // For example, the following x-amz-grant-read header grants the Amazon Web + // Services accounts identified by account IDs permissions to read object data + // and its metadata: + // + // x-amz-grant-read: id="11112222333", id="444455556666" + // + // * This functionality is not supported for directory buckets. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for Amazon S3 on Outposts. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` - // Allows grantee to read the object data and its metadata. + // Specify access permissions explicitly to allow grantee to read the object + // data and its metadata. + // + // By default, all objects are private. Only the owner has full access control. + // When uploading an object, you can use this header to explicitly grant access + // permissions to specific Amazon Web Services accounts or groups. This header + // maps to specific permissions that Amazon S3 supports in an ACL. For more + // information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) + // in the Amazon S3 User Guide. + // + // You specify each grantee as a type=value pair, where the type is one of the + // following: + // + // * id – if the value specified is the canonical user ID of an Amazon + // Web Services account + // + // * uri – if you are granting permissions to a predefined group + // + // * emailAddress – if the value specified is the email address of an Amazon + // Web Services account Using email addresses to specify a grantee is only + // supported in the following Amazon Web Services Regions: US East (N. Virginia) + // US West (N. California) US West (Oregon) Asia Pacific (Singapore) Asia + // Pacific (Sydney) Asia Pacific (Tokyo) Europe (Ireland) South America (São + // Paulo) For a list of all the Amazon S3 supported Regions and endpoints, + // see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) + // in the Amazon Web Services General Reference. // - // This action is not supported by Amazon S3 on Outposts. + // For example, the following x-amz-grant-read header grants the Amazon Web + // Services accounts identified by account IDs permissions to read object data + // and its metadata: + // + // x-amz-grant-read: id="11112222333", id="444455556666" + // + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` - // Allows grantee to read the object ACL. + // Specify access permissions explicitly to allows grantee to read the object + // ACL. + // + // By default, all objects are private. Only the owner has full access control. + // When uploading an object, you can use this header to explicitly grant access + // permissions to specific Amazon Web Services accounts or groups. This header + // maps to specific permissions that Amazon S3 supports in an ACL. For more + // information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) + // in the Amazon S3 User Guide. // - // This action is not supported by Amazon S3 on Outposts. + // You specify each grantee as a type=value pair, where the type is one of the + // following: + // + // * id – if the value specified is the canonical user ID of an Amazon + // Web Services account + // + // * uri – if you are granting permissions to a predefined group + // + // * emailAddress – if the value specified is the email address of an Amazon + // Web Services account Using email addresses to specify a grantee is only + // supported in the following Amazon Web Services Regions: US East (N. Virginia) + // US West (N. California) US West (Oregon) Asia Pacific (Singapore) Asia + // Pacific (Sydney) Asia Pacific (Tokyo) Europe (Ireland) South America (São + // Paulo) For a list of all the Amazon S3 supported Regions and endpoints, + // see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) + // in the Amazon Web Services General Reference. + // + // For example, the following x-amz-grant-read header grants the Amazon Web + // Services accounts identified by account IDs permissions to read object data + // and its metadata: + // + // x-amz-grant-read: id="11112222333", id="444455556666" + // + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` - // Allows grantee to write the ACL for the applicable object. + // Specify access permissions explicitly to allows grantee to allow grantee + // to write the ACL for the applicable object. + // + // By default, all objects are private. Only the owner has full access control. + // When uploading an object, you can use this header to explicitly grant access + // permissions to specific Amazon Web Services accounts or groups. This header + // maps to specific permissions that Amazon S3 supports in an ACL. For more + // information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) + // in the Amazon S3 User Guide. + // + // You specify each grantee as a type=value pair, where the type is one of the + // following: + // + // * id – if the value specified is the canonical user ID of an Amazon + // Web Services account + // + // * uri – if you are granting permissions to a predefined group + // + // * emailAddress – if the value specified is the email address of an Amazon + // Web Services account Using email addresses to specify a grantee is only + // supported in the following Amazon Web Services Regions: US East (N. Virginia) + // US West (N. California) US West (Oregon) Asia Pacific (Singapore) Asia + // Pacific (Sydney) Asia Pacific (Tokyo) Europe (Ireland) South America (São + // Paulo) For a list of all the Amazon S3 supported Regions and endpoints, + // see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) + // in the Amazon Web Services General Reference. // - // This action is not supported by Amazon S3 on Outposts. + // For example, the following x-amz-grant-read header grants the Amazon Web + // Services accounts identified by account IDs permissions to read object data + // and its metadata: + // + // x-amz-grant-read: id="11112222333", id="444455556666" + // + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Object key for which the multipart upload is to be initiated. @@ -14706,25 +16294,34 @@ Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Specifies whether you want to apply a legal hold to the uploaded object. + // + // This functionality is not supported for directory buckets. ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"` // Specifies the Object Lock mode that you want to apply to the uploaded object. + // + // This functionality is not supported for directory buckets. ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"` // Specifies the date and time when you want the Object Lock to expire. + // + // This functionality is not supported for directory buckets. ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -14733,56 +16330,70 @@ // with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm // header. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateMultipartUploadInput's // String and GoString methods. SSECustomerKey *string `marshal-as:"blob" location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"` - // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. - // Amazon S3 uses this header for a message integrity check to ensure that the - // encryption key was transmitted without error. + // Specifies the 128-bit MD5 digest of the customer-provided encryption key + // according to RFC 1321. Amazon S3 uses this header for a message integrity + // check to ensure that the encryption key was transmitted without error. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the Amazon Web Services KMS Encryption Context to use for object // encryption. The value of this header is a base64-encoded UTF-8 string holding // JSON with the encryption context key-value pairs. // + // This functionality is not supported for directory buckets. + // // SSEKMSEncryptionContext is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateMultipartUploadInput's // String and GoString methods. SSEKMSEncryptionContext *string `location:"header" locationName:"x-amz-server-side-encryption-context" type:"string" sensitive:"true"` // Specifies the ID (Key ID, Key ARN, or Key Alias) of the symmetric encryption - // customer managed key to use for object encryption. All GET and PUT requests - // for an object protected by KMS will fail if they're not made via SSL or using - // SigV4. For information about configuring any of the officially supported - // Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the - // Signature Version in Request Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version) - // in the Amazon S3 User Guide. + // customer managed key to use for object encryption. + // + // This functionality is not supported for directory buckets. // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateMultipartUploadInput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // By default, Amazon S3 uses the STANDARD Storage Class to store newly created // objects. The STANDARD storage class provides high durability and high availability. // Depending on performance needs, you can specify a different Storage Class. - // Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, - // see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) + // For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) // in the Amazon S3 User Guide. + // + // * For directory buckets, only the S3 Express One Zone storage class is + // supported to store newly created objects. + // + // * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // The tag-set for the object. The tag-set must be encoded as URL Query parameters. + // + // This functionality is not supported for directory buckets. Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. + // + // This functionality is not supported for directory buckets. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } @@ -15055,38 +16666,32 @@ // name in the request, the response includes this header. The header indicates // when the initiated multipart upload becomes eligible for an abort operation. // For more information, see Aborting Incomplete Multipart Uploads Using a Bucket - // Lifecycle Configuration (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config). + // Lifecycle Configuration (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config) + // in the Amazon S3 User Guide. // // The response also includes the x-amz-abort-rule-id header that provides the - // ID of the lifecycle configuration rule that defines this action. + // ID of the lifecycle configuration rule that defines the abort action. + // + // This functionality is not supported for directory buckets. AbortDate *time.Time `location:"header" locationName:"x-amz-abort-date" type:"timestamp"` // This header is returned along with the x-amz-abort-date header. It identifies // the applicable lifecycle configuration rule that defines the action to abort // incomplete multipart uploads. + // + // This functionality is not supported for directory buckets. AbortRuleId *string `location:"header" locationName:"x-amz-abort-rule-id" type:"string"` // The name of the bucket to which the multipart upload was initiated. Does // not return the access point ARN or access point alias if used. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. - // When using this action with an access point through the Amazon Web Services - // SDKs, you provide the access point ARN in place of the bucket name. For more - // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) - // in the Amazon S3 User Guide. - // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) - // in the Amazon S3 User Guide. + // Access points are not supported by directory buckets. Bucket *string `locationName:"Bucket" type:"string"` // Indicates whether the multipart upload uses an S3 Bucket Key for server-side // encryption with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // The algorithm that was used to create a checksum of the object. @@ -15097,37 +16702,50 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the Amazon Web Services KMS Encryption Context to use + // If present, indicates the Amazon Web Services KMS Encryption Context to use // for object encryption. The value of this header is a base64-encoded UTF-8 // string holding JSON with the encryption context key-value pairs. // + // This functionality is not supported for directory buckets. + // // SSEKMSEncryptionContext is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateMultipartUploadOutput's // String and GoString methods. SSEKMSEncryptionContext *string `location:"header" locationName:"x-amz-server-side-encryption-context" type:"string" sensitive:"true"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric + // If present, indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by CreateMultipartUploadOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // ID for the initiated multipart upload. @@ -15237,6 +16855,136 @@ return s } +type CreateSessionInput struct { + _ struct{} `locationName:"CreateSessionRequest" type:"structure"` + + // The name of the bucket that you create a session for. + // + // Bucket is a required field + Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` + + // Specifies the mode of the session that will be created, either ReadWrite + // or ReadOnly. By default, a ReadWrite session is created. A ReadWrite session + // is capable of executing all the Zonal endpoint APIs on a directory bucket. + // A ReadOnly session is constrained to execute the following Zonal endpoint + // APIs: GetObject, HeadObject, ListObjectsV2, GetObjectAttributes, ListParts, + // and ListMultipartUploads. + SessionMode *string `location:"header" locationName:"x-amz-create-session-mode" type:"string" enum:"SessionMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSessionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSessionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSessionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSessionInput"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) + } + if s.Bucket != nil && len(*s.Bucket) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *CreateSessionInput) SetBucket(v string) *CreateSessionInput { + s.Bucket = &v + return s +} + +func (s *CreateSessionInput) getBucket() (v string) { + if s.Bucket == nil { + return v + } + return *s.Bucket +} + +// SetSessionMode sets the SessionMode field's value. +func (s *CreateSessionInput) SetSessionMode(v string) *CreateSessionInput { + s.SessionMode = &v + return s +} + +func (s *CreateSessionInput) getEndpointARN() (arn.Resource, error) { + if s.Bucket == nil { + return nil, fmt.Errorf("member Bucket is nil") + } + return parseEndpointARN(*s.Bucket) +} + +func (s *CreateSessionInput) hasEndpointARN() bool { + if s.Bucket == nil { + return false + } + return arn.IsARN(*s.Bucket) +} + +// updateArnableField updates the value of the input field that +// takes an ARN as an input. This method is useful to backfill +// the parsed resource name from ARN into the input member. +// It returns a pointer to a modified copy of input and an error. +// Note that original input is not modified. +func (s CreateSessionInput) updateArnableField(v string) (interface{}, error) { + if s.Bucket == nil { + return nil, fmt.Errorf("member Bucket is nil") + } + s.Bucket = aws.String(v) + return &s, nil +} + +type CreateSessionOutput struct { + _ struct{} `type:"structure"` + + // The established temporary security credentials for the created session.. + // + // Credentials is a required field + Credentials *SessionCredentials `locationName:"Credentials" 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 CreateSessionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSessionOutput) GoString() string { + return s.String() +} + +// SetCredentials sets the Credentials field's value. +func (s *CreateSessionOutput) SetCredentials(v *SessionCredentials) *CreateSessionOutput { + s.Credentials = v + return s +} + // The container element for specifying the default Object Lock retention settings // for new objects placed in the specified bucket. // @@ -15302,6 +17050,11 @@ // The object to delete. // + // Directory buckets - For directory buckets, an object that's composed entirely + // of whitespace characters is not supported by the DeleteObjects API operation. + // The request will receive a 400 Bad Request error and none of the objects + // in the request will be deleted. + // // Objects is a required field Objects []*ObjectIdentifier `locationName:"Object" type:"list" flattened:"true" required:"true"` @@ -15371,9 +17124,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID that identifies the analytics configuration. @@ -15501,9 +17254,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -15618,9 +17371,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -15731,12 +17484,25 @@ // Specifies the bucket being deleted. // + // Directory buckets - When you use this operation with a directory bucket, + // you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name + // . Virtual-hosted-style requests aren't supported. Directory bucket names + // must be unique in the chosen Availability Zone. Bucket names must also follow + // the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). + // For information about bucket naming restrictions, see Directory bucket naming + // rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide + // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). + // + // For directory buckets, this header is not supported in this API operation. + // If you specify this header, the request fails with the HTTP status code 501 + // Not Implemented. ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -15948,9 +17714,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID used to identify the inventory configuration. @@ -16078,9 +17844,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -16194,9 +17960,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID used to identify the metrics configuration. The ID has a 64 character @@ -16347,9 +18113,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -16460,12 +18226,25 @@ // The bucket name. // + // Directory buckets - When you use this operation with a directory bucket, + // you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name + // . Virtual-hosted-style requests aren't supported. Directory bucket names + // must be unique in the chosen Availability Zone. Bucket names must also follow + // the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). + // For information about bucket naming restrictions, see Directory bucket naming + // rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide + // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). + // + // For directory buckets, this header is not supported in this API operation. + // If you specify this header, the request fails with the HTTP status code 501 + // Not Implemented. ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -16579,9 +18358,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -16695,9 +18474,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -16811,9 +18590,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -16930,7 +18709,7 @@ // The object key. Key *string `min:"1" type:"string"` - // Date and time the object was last modified. + // Date and time when the object was last modified. LastModified *time.Time `type:"timestamp"` // The account that created the delete marker.> @@ -17039,19 +18818,33 @@ // The bucket name of the bucket containing the object. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -17060,11 +18853,13 @@ // Indicates whether S3 Object Lock should bypass Governance-mode restrictions // to process this operation. To use this header, you must have the s3:BypassGovernanceRetention // permission. + // + // This functionality is not supported for directory buckets. BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Key name of the object to delete. @@ -17076,18 +18871,25 @@ // and the value that is displayed on your authentication device. Required to // permanently delete a versioned object if versioning is configured with MFA // delete enabled. + // + // This functionality is not supported for directory buckets. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // VersionId used to reference a specific version of the object. + // Version ID used to reference a specific version of the object. + // + // For directory buckets in this API operation, only the null value of the version + // ID is supported. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } @@ -17214,14 +19016,20 @@ // was (true) or was not (false) a delete marker before deletion. In a simple // DELETE, this header indicates whether (true) or not (false) the current version // of the object is a delete marker. + // + // This functionality is not supported for directory buckets. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Returns the version ID of the delete marker created as a result of the DELETE // operation. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } @@ -17266,27 +19074,30 @@ // The bucket name containing the objects from which to remove the tags. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The key that identifies the object in the bucket from which to remove all @@ -17433,19 +19244,33 @@ // The bucket name containing the objects to delete. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -17454,22 +19279,38 @@ // Specifies whether you want to delete this object even if it has a Governance-type // Object Lock in place. To use this header, you must have the s3:BypassGovernanceRetention // permission. + // + // This functionality is not supported for directory buckets. BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon + // S3 fails the request with the HTTP status code 400 Bad Request. + // + // For the x-amz-checksum-algorithm header, replace algorithm with the supported + // algorithm from the following list: + // + // * CRC32 + // + // * CRC32C + // + // * SHA1 + // + // * SHA256 + // + // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // + // If the individual checksum value you provide through x-amz-checksum-algorithm + // doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, + // Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum + // algorithm that matches the provided value in x-amz-checksum-algorithm . + // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm // parameter. // - // This checksum algorithm must be the same for all parts and it match the checksum - // value supplied in the CreateMultipartUpload request. - // // The AWS SDK for Go v1 does not support automatic computing request payload // checksum. This feature is available in the AWS SDK for Go v2. If a value // is specified for this parameter, the matching algorithm's checksum member @@ -17485,24 +19326,37 @@ // Delete is a required field Delete *Delete `locationName:"Delete" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The concatenation of the authentication device's serial number, a space, // and the value that is displayed on your authentication device. Required to // permanently delete a versioned object if versioning is configured with MFA // delete enabled. + // + // When performing the DeleteObjects operation on an MFA delete enabled bucket, + // which attempts to delete the specified versioned objects, you must include + // an MFA token. If you don't provide an MFA token, the entire request will + // fail, even if there are non-versioned objects that you are trying to delete. + // If you provide an invalid token, whether there are versioned object keys + // in the request or not, the entire Multi-Object Delete request will fail. + // For information about MFA Delete, see MFA Delete (https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` } @@ -17637,6 +19491,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -17684,9 +19540,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -17800,17 +19656,23 @@ // was (true) or was not (false) a delete marker before deletion. In a simple // DELETE, this header indicates whether (true) or not (false) the current version // of the object is a delete marker. + // + // This functionality is not supported for directory buckets. DeleteMarker *bool `type:"boolean"` // The version ID of the delete marker created as a result of the DELETE operation. // If you delete a specific object version, the value returned by this header // is the version ID of the object version deleted. + // + // This functionality is not supported for directory buckets. DeleteMarkerVersionId *string `type:"string"` // The name of the deleted object. Key *string `min:"1" type:"string"` // The version ID of the deleted object. + // + // This functionality is not supported for directory buckets. VersionId *string `type:"string"` } @@ -18526,6 +20388,8 @@ Message *string `type:"string"` // The version ID of the error. + // + // This functionality is not supported for directory buckets. VersionId *string `type:"string"` } @@ -18751,18 +20615,20 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` } @@ -18857,6 +20723,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // The accelerate configuration of the bucket. @@ -18898,10 +20766,10 @@ // Specifies the S3 bucket whose ACL is being requested. // - // To use this API operation against an access point, provide the alias of the - // access point in place of the bucket name. + // When you use this API operation with an access point, provide the alias of + // the access point in place of the bucket name. // - // To use this API operation against an Object Lambda access point, provide + // When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -18910,9 +20778,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -19044,9 +20912,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID that identifies the analytics configuration. @@ -19180,10 +21048,10 @@ // The bucket name for which to get the cors configuration. // - // To use this API operation against an access point, provide the alias of the - // access point in place of the bucket name. + // When you use this API operation with an access point, provide the alias of + // the access point in place of the bucket name. // - // To use this API operation against an Object Lambda access point, provide + // When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -19192,9 +21060,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -19319,9 +21187,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -19573,9 +21441,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID used to identify the inventory configuration. @@ -19712,9 +21580,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -19837,9 +21705,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -19959,10 +21827,10 @@ // The name of the bucket for which to get the location. // - // To use this API operation against an access point, provide the alias of the - // access point in place of the bucket name. + // When you use this API operation with an access point, provide the alias of + // the access point in place of the bucket name. // - // To use this API operation against an Object Lambda access point, provide + // When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -19971,9 +21839,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20098,9 +21966,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20226,9 +22094,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID used to identify the metrics configuration. The ID has a 64 character @@ -20363,10 +22231,10 @@ // The name of the bucket for which to get the notification configuration. // - // To use this API operation against an access point, provide the alias of the - // access point in place of the bucket name. + // When you use this API operation with an access point, provide the alias of + // the access point in place of the bucket name. // - // To use this API operation against an Object Lambda access point, provide + // When you use this API operation with an Object Lambda access point, provide // the alias of the Object Lambda access point in place of the bucket name. // If the Object Lambda access point alias in a request is not valid, the error // code InvalidAccessPointAliasError is returned. For more information about @@ -20375,9 +22243,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20469,9 +22337,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20590,23 +22458,40 @@ type GetBucketPolicyInput struct { _ struct{} `locationName:"GetBucketPolicyRequest" type:"structure"` - // The bucket name for which to get the bucket policy. + // The bucket name to get the bucket policy for. // - // To use this API operation against an access point, provide the alias of the - // access point in place of the bucket name. + // Directory buckets - When you use this operation with a directory bucket, + // you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name + // . Virtual-hosted-style requests aren't supported. Directory bucket names + // must be unique in the chosen Availability Zone. Bucket names must also follow + // the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). + // For information about bucket naming restrictions, see Directory bucket naming + // rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide // - // To use this API operation against an Object Lambda access point, provide - // the alias of the Object Lambda access point in place of the bucket name. - // If the Object Lambda access point alias in a request is not valid, the error - // code InvalidAccessPointAliasError is returned. For more information about - // InvalidAccessPointAliasError, see List of Error Codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList). + // Access points - When you use this API operation with an access point, provide + // the alias of the access point in place of the bucket name. + // + // Object Lambda access points - When you use this API operation with an Object + // Lambda access point, provide the alias of the Object Lambda access point + // in place of the bucket name. If the Object Lambda access point alias in a + // request is not valid, the error code InvalidAccessPointAliasError is returned. + // For more information about InvalidAccessPointAliasError, see List of Error + // Codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList). + // + // Access points and Object Lambda access points are not supported by directory + // buckets. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). + // + // For directory buckets, this header is not supported in this API operation. + // If you specify this header, the request fails with the HTTP status code 501 + // Not Implemented. ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20729,9 +22614,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20854,9 +22739,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -20980,9 +22865,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -21105,9 +22990,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -21232,9 +23117,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -21368,9 +23253,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -21518,8 +23403,10 @@ // The bucket name that contains the object for which to get the ACL information. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) @@ -21528,9 +23415,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The key of the object for which to get the ACL information. @@ -21540,14 +23427,18 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // VersionId used to reference a specific version of the object. + // Version ID used to reference a specific version of the object. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } @@ -21666,6 +23557,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -21710,27 +23603,41 @@ // The name of the bucket that contains the object. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The object key. @@ -21753,14 +23660,18 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -21769,6 +23680,8 @@ // with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm // header. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetObjectAttributesInput's // String and GoString methods. @@ -21777,9 +23690,16 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // The version ID used to reference a specific version of the object. + // + // S3 Versioning isn't enabled and supported for directory buckets. For this + // API operation, only the null value of the version ID is supported by directory + // buckets. You can only specify null to the versionId query parameter in the + // request. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } @@ -21941,6 +23861,8 @@ // Specifies whether the object retrieved was (true) or was not (false) a delete // marker. If false, this response header does not appear in the response. + // + // This functionality is not supported for directory buckets. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // An ETag is an opaque identifier assigned by a web server to a specific version @@ -21958,15 +23880,22 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Provides the storage class information of the object. Amazon S3 returns this // header for all objects except for S3 Standard storage class objects. // // For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html). + // + // Directory buckets - Only the S3 Express One Zone storage class is supported + // by directory buckets to store objects. StorageClass *string `type:"string" enum:"StorageClass"` // The version ID of the object. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } @@ -22064,6 +23993,15 @@ // A container for elements related to a particular part. A response can contain // zero or more Parts elements. + // + // * General purpose buckets - For GetObjectAttributes, if a additional checksum + // (including x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-sha1, + // or x-amz-checksum-sha256) isn't applied to the object specified in the + // request, the response doesn't return Part. + // + // * Directory buckets - For GetObjectAttributes, no matter whether a additional + // checksum is applied to the object specified in the request, the response + // returns Part. Parts []*ObjectPart `locationName:"Part" type:"list" flattened:"true"` // The total number of parts. @@ -22129,21 +24067,37 @@ // The bucket name containing the object. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When using an Object Lambda access point the hostname takes the form AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com. - // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Object Lambda access points - When you use this action with an Object Lambda + // access point, you must direct requests to the Object Lambda access point + // hostname. The Object Lambda access point hostname takes the form AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com. + // + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -22155,25 +24109,50 @@ // validation. This feature is available in the AWS SDK for Go v2. ChecksumMode *string `location:"header" locationName:"x-amz-checksum-mode" type:"string" enum:"ChecksumMode"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` - // Return the object only if its entity tag (ETag) is the same as the one specified; - // otherwise, return a 412 (precondition failed) error. + // Return the object only if its entity tag (ETag) is the same as the one specified + // in this header; otherwise, return a 412 Precondition Failed error. + // + // If both of the If-Match and If-Unmodified-Since headers are present in the + // request as follows: If-Match condition evaluates to true, and; If-Unmodified-Since + // condition evaluates to false; then, S3 returns 200 OK and the data requested. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfMatch *string `location:"header" locationName:"If-Match" type:"string"` // Return the object only if it has been modified since the specified time; - // otherwise, return a 304 (not modified) error. + // otherwise, return a 304 Not Modified error. + // + // If both of the If-None-Match and If-Modified-Since headers are present in + // the request as follows:If-None-Match condition evaluates to false, and; If-Modified-Since + // condition evaluates to true; then, S3 returns 304 Not Modified status code. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp"` // Return the object only if its entity tag (ETag) is different from the one - // specified; otherwise, return a 304 (not modified) error. + // specified in this header; otherwise, return a 304 Not Modified error. + // + // If both of the If-None-Match and If-Modified-Since headers are present in + // the request as follows:If-None-Match condition evaluates to false, and; If-Modified-Since + // condition evaluates to true; then, S3 returns 304 Not Modified HTTP status + // code. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"` // Return the object only if it has not been modified since the specified time; - // otherwise, return a 412 (precondition failed) error. + // otherwise, return a 412 Precondition Failed error. + // + // If both of the If-Match and If-Unmodified-Since headers are present in the + // request as follows: If-Match condition evaluates to true, and; If-Unmodified-Since + // condition evaluates to false; then, S3 returns 200 OK and the data requested. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp"` // Key of the object to get. @@ -22186,7 +24165,7 @@ // Useful for downloading just a part of an object. PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer"` - // Downloads the specified range bytes of an object. For more information about + // Downloads the specified byte range of an object. For more information about // the HTTP Range header, see https://www.rfc-editor.org/rfc/rfc9110.html#name-range // (https://www.rfc-editor.org/rfc/rfc9110.html#name-range). // @@ -22195,17 +24174,19 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Sets the Cache-Control header of the response. ResponseCacheControl *string `location:"querystring" locationName:"response-cache-control" type:"string"` - // Sets the Content-Disposition header of the response + // Sets the Content-Disposition header of the response. ResponseContentDisposition *string `location:"querystring" locationName:"response-content-disposition" type:"string"` // Sets the Content-Encoding header of the response. @@ -22220,27 +24201,92 @@ // Sets the Expires header of the response. ResponseExpires *time.Time `location:"querystring" locationName:"response-expires" type:"timestamp" timestampFormat:"rfc822"` - // Specifies the algorithm to use to when decrypting the object (for example, - // AES256). + // Specifies the algorithm to use when decrypting the object (for example, AES256). + // + // If you encrypt an object by using server-side encryption with customer-provided + // encryption keys (SSE-C) when you store the object in Amazon S3, then when + // you GET the object, you must use the following headers: + // + // * x-amz-server-side-encryption-customer-algorithm + // + // * x-amz-server-side-encryption-customer-key + // + // * x-amz-server-side-encryption-customer-key-MD5 + // + // For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided + // Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` - // Specifies the customer-provided encryption key for Amazon S3 used to encrypt - // the data. This value is used to decrypt the object when recovering it and - // must match the one used when storing the data. The key must be appropriate - // for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm - // header. + // Specifies the customer-provided encryption key that you originally provided + // for Amazon S3 to encrypt the data before storing it. This value is used to + // decrypt the object when recovering it and must match the one used when storing + // the data. The key must be appropriate for use with the algorithm specified + // in the x-amz-server-side-encryption-customer-algorithm header. + // + // If you encrypt an object by using server-side encryption with customer-provided + // encryption keys (SSE-C) when you store the object in Amazon S3, then when + // you GET the object, you must use the following headers: + // + // * x-amz-server-side-encryption-customer-algorithm + // + // * x-amz-server-side-encryption-customer-key + // + // * x-amz-server-side-encryption-customer-key-MD5 + // + // For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided + // Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetObjectInput's // String and GoString methods. SSECustomerKey *string `marshal-as:"blob" location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"` - // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. - // Amazon S3 uses this header for a message integrity check to ensure that the - // encryption key was transmitted without error. + // Specifies the 128-bit MD5 digest of the customer-provided encryption key + // according to RFC 1321. Amazon S3 uses this header for a message integrity + // check to ensure that the encryption key was transmitted without error. + // + // If you encrypt an object by using server-side encryption with customer-provided + // encryption keys (SSE-C) when you store the object in Amazon S3, then when + // you GET the object, you must use the following headers: + // + // * x-amz-server-side-encryption-customer-algorithm + // + // * x-amz-server-side-encryption-customer-key + // + // * x-amz-server-side-encryption-customer-key-MD5 + // + // For more information about SSE-C, see Server-Side Encryption (Using Customer-Provided + // Encryption Keys) (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // VersionId used to reference a specific version of the object. + // Version ID used to reference a specific version of the object. + // + // By default, the GetObject operation returns the current version of an object. + // To return a different version, use the versionId subresource. + // + // * If you include a versionId in your request header, you must have the + // s3:GetObjectVersion permission to access a specific version of an object. + // The s3:GetObject permission is not required in this scenario. + // + // * If you request the current version of an object without a specific versionId + // in the request header, only the s3:GetObject permission is required. The + // s3:GetObjectVersion permission is not required in this scenario. + // + // * Directory buckets - S3 Versioning isn't enabled and supported for directory + // buckets. For this API operation, only the null value of the version ID + // is supported by directory buckets. You can only specify null to the versionId + // query parameter in the request. + // + // For more information about versioning, see PutBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html). VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } @@ -22457,8 +24503,10 @@ // The bucket name containing the object whose legal hold status you want to // retrieve. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) @@ -22467,9 +24515,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The key name for the object whose legal hold status you want to retrieve. @@ -22479,11 +24527,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The version ID of the object whose legal hold status you want to retrieve. @@ -22630,8 +24680,10 @@ // The bucket whose Object Lock configuration you want to retrieve. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) @@ -22640,9 +24692,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -22760,7 +24812,7 @@ type GetObjectOutput struct { _ struct{} `type:"structure" payload:"Body"` - // Indicates that a range of bytes was specified. + // Indicates that a range of bytes was specified in the request. AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"` // Object data. @@ -22768,47 +24820,41 @@ // Indicates whether the object uses an S3 Bucket Key for server-side encryption // with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. For more information, see Checking + // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumCRC32 *string `location:"header" locationName:"x-amz-checksum-crc32" type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. For more information, see + // Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumCRC32C *string `location:"header" locationName:"x-amz-checksum-crc32c" type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. For more information, see Checking + // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumSHA1 *string `location:"header" locationName:"x-amz-checksum-sha1" type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. For more information, see + // Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumSHA256 *string `location:"header" locationName:"x-amz-checksum-sha256" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` - // Specifies what content encodings have been applied to the object and thus + // Indicates what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` @@ -22825,23 +24871,40 @@ // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` - // Specifies whether the object retrieved was (true) or was not (false) a Delete + // Indicates whether the object retrieved was (true) or was not (false) a Delete // Marker. If false, this response header does not appear in the response. + // + // * If the current version of the object is a delete marker, Amazon S3 behaves + // as if the object was deleted and includes x-amz-delete-marker: true in + // the response. + // + // * If the specified version in the request is a delete marker, the response + // returns a 405 Method Not Allowed error and the Last-Modified: timestamp + // response header. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // An entity tag (ETag) is an opaque identifier assigned by a web server to // a specific version of a resource found at a URL. ETag *string `location:"header" locationName:"ETag" type:"string"` - // If the object expiration is configured (see PUT Bucket lifecycle), the response - // includes this header. It includes the expiry-date and rule-id key-value pairs - // providing object expiration information. The value of the rule-id is URL-encoded. + // If the object expiration is configured (see PutBucketLifecycleConfiguration + // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)), + // the response includes this header. It includes the expiry-date and rule-id + // key-value pairs providing object expiration information. The value of the + // rule-id is URL-encoded. + // + // This functionality is not supported for directory buckets. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // The date and time at which the object is no longer cacheable. Expires *string `location:"header" locationName:"Expires" type:"string"` - // Creation date of the object. + // Date and time when the object was last modified. + // + // General purpose buckets - When you specify a versionId of the object in your + // request, if the specified version in the request is a delete marker, the + // response returns a 405 Method Not Allowed error and the Last-Modified: timestamp + // response header. LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp"` // A map of metadata to store with the object in S3. @@ -22851,20 +24914,29 @@ // Set `aws.Config.LowerCaseHeaderMaps` to `true` to write unmarshaled keys to the map as lowercase. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` - // This is set to the number of metadata entries not returned in x-amz-meta - // headers. This can happen if you create metadata using an API like SOAP that - // supports more flexible metadata than the REST API. For example, using SOAP, - // you can create metadata whose values are not legal HTTP headers. + // This is set to the number of metadata entries not returned in the headers + // that are prefixed with x-amz-meta-. This can happen if you create metadata + // using an API like SOAP that supports more flexible metadata than the REST + // API. For example, using SOAP, you can create metadata whose values are not + // legal HTTP headers. + // + // This functionality is not supported for directory buckets. MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"` // Indicates whether this object has an active legal hold. This field is only // returned if you have permission to view an object's legal hold status. + // + // This functionality is not supported for directory buckets. ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"` - // The Object Lock mode currently in place for this object. + // The Object Lock mode that's currently in place for this object. + // + // This functionality is not supported for directory buckets. ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"` // The date and time when this object's Object Lock will expire. + // + // This functionality is not supported for directory buckets. ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"` // The count of parts this object has. This value is only returned if you specify @@ -22873,51 +24945,80 @@ // Amazon S3 can return this if your request involves a bucket that is either // a source or destination in a replication rule. + // + // This functionality is not supported for directory buckets. ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Provides information about object restoration action and expiration time // of the restored object copy. + // + // This functionality is not supported for directory buckets. Only the S3 Express + // One Zone storage class is supported by directory buckets to store objects. Restore *string `location:"header" locationName:"x-amz-restore" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric + // If present, indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by GetObjectOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Provides storage class information of the object. Amazon S3 returns this // header for all objects except for S3 Standard storage class objects. + // + // Directory buckets - Only the S3 Express One Zone storage class is supported + // by directory buckets to store objects. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` - // The number of tags, if any, on the object. + // The number of tags, if any, on the object, when you have the relevant permission + // to read object tags. + // + // You can use GetObjectTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html) + // to retrieve the tag set associated with an object. + // + // This functionality is not supported for directory buckets. TagCount *int64 `location:"header" locationName:"x-amz-tagging-count" type:"integer"` - // Version of the object. + // Version ID of the object. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. + // + // This functionality is not supported for directory buckets. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } @@ -23161,8 +25262,10 @@ // The bucket name containing the object whose retention settings you want to // retrieve. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) @@ -23171,9 +25274,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The key name for the object whose retention settings you want to retrieve. @@ -23183,11 +25286,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The version ID for the object whose retention settings you want to retrieve. @@ -23334,27 +25439,30 @@ // The bucket name containing the object for which to get the tagging information. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Object key for which to get the tagging information. @@ -23364,11 +25472,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The versionId of the object for which to get the tagging information. @@ -23530,9 +25640,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The object key for which to get the information. @@ -23542,11 +25652,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` } @@ -23656,6 +25768,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -23698,9 +25812,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -24030,33 +26144,48 @@ // The bucket name. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with an Object Lambda access point, provide the - // alias of the Object Lambda access point in place of the bucket name. If the - // Object Lambda access point alias in a request is not valid, the error code - // InvalidAccessPointAliasError is returned. For more information about InvalidAccessPointAliasError, - // see List of Error Codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList). + // Object Lambda access points - When you use this API operation with an Object + // Lambda access point, provide the alias of the Object Lambda access point + // in place of the bucket name. If the Object Lambda access point alias in a + // request is not valid, the error code InvalidAccessPointAliasError is returned. + // For more information about InvalidAccessPointAliasError, see List of Error + // Codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList). + // + // Access points and Object Lambda access points are not supported by directory + // buckets. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -24142,6 +26271,30 @@ type HeadBucketOutput struct { _ struct{} `type:"structure"` + + // Indicates whether the bucket name used in the request is an access point + // alias. + // + // This functionality is not supported for directory buckets. + AccessPointAlias *bool `location:"header" locationName:"x-amz-access-point-alias" type:"boolean"` + + // The name of the location where the bucket will be created. + // + // For directory buckets, the AZ ID of the Availability Zone where the bucket + // is created. An example AZ ID value is usw2-az2. + // + // This functionality is only supported by directory buckets. + BucketLocationName *string `location:"header" locationName:"x-amz-bucket-location-name" type:"string"` + + // The type of location where the bucket is created. + // + // This functionality is only supported by directory buckets. + BucketLocationType *string `location:"header" locationName:"x-amz-bucket-location-type" type:"string" enum:"LocationType"` + + // The Region that the bucket is located. + // + // This functionality is not supported for directory buckets. + BucketRegion *string `location:"header" locationName:"x-amz-bucket-region" type:"string"` } // String returns the string representation. @@ -24162,24 +26315,62 @@ return s.String() } +// SetAccessPointAlias sets the AccessPointAlias field's value. +func (s *HeadBucketOutput) SetAccessPointAlias(v bool) *HeadBucketOutput { + s.AccessPointAlias = &v + return s +} + +// SetBucketLocationName sets the BucketLocationName field's value. +func (s *HeadBucketOutput) SetBucketLocationName(v string) *HeadBucketOutput { + s.BucketLocationName = &v + return s +} + +// SetBucketLocationType sets the BucketLocationType field's value. +func (s *HeadBucketOutput) SetBucketLocationType(v string) *HeadBucketOutput { + s.BucketLocationType = &v + return s +} + +// SetBucketRegion sets the BucketRegion field's value. +func (s *HeadBucketOutput) SetBucketRegion(v string) *HeadBucketOutput { + s.BucketRegion = &v + return s +} + type HeadObjectInput struct { _ struct{} `locationName:"HeadObjectRequest" type:"structure"` - // The name of the bucket containing the object. + // The name of the bucket that contains the object. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -24192,25 +26383,69 @@ // must have permission to use the kms:Decrypt action for the request to succeed. ChecksumMode *string `location:"header" locationName:"x-amz-checksum-mode" type:"string" enum:"ChecksumMode"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Return the object only if its entity tag (ETag) is the same as the one specified; // otherwise, return a 412 (precondition failed) error. + // + // If both of the If-Match and If-Unmodified-Since headers are present in the + // request as follows: + // + // * If-Match condition evaluates to true, and; + // + // * If-Unmodified-Since condition evaluates to false; + // + // Then Amazon S3 returns 200 OK and the data requested. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfMatch *string `location:"header" locationName:"If-Match" type:"string"` // Return the object only if it has been modified since the specified time; // otherwise, return a 304 (not modified) error. + // + // If both of the If-None-Match and If-Modified-Since headers are present in + // the request as follows: + // + // * If-None-Match condition evaluates to false, and; + // + // * If-Modified-Since condition evaluates to true; + // + // Then Amazon S3 returns the 304 Not Modified response code. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp"` // Return the object only if its entity tag (ETag) is different from the one // specified; otherwise, return a 304 (not modified) error. + // + // If both of the If-None-Match and If-Modified-Since headers are present in + // the request as follows: + // + // * If-None-Match condition evaluates to false, and; + // + // * If-Modified-Since condition evaluates to true; + // + // Then Amazon S3 returns the 304 Not Modified response code. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"` // Return the object only if it has not been modified since the specified time; // otherwise, return a 412 (precondition failed) error. + // + // If both of the If-Match and If-Unmodified-Since headers are present in the + // request as follows: + // + // * If-Match condition evaluates to true, and; + // + // * If-Unmodified-Since condition evaluates to false; + // + // Then Amazon S3 returns 200 OK and the data requested. + // + // For more information about conditional requests, see RFC 7232 (https://tools.ietf.org/html/rfc7232). IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp"` // The object key. @@ -24231,15 +26466,18 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -24248,6 +26486,8 @@ // with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm // header. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by HeadObjectInput's // String and GoString methods. @@ -24256,9 +26496,14 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // VersionId used to reference a specific version of the object. + // Version ID used to reference a specific version of the object. + // + // For directory buckets in this API operation, only the null value of the version + // ID is supported. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } @@ -24440,51 +26685,63 @@ AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"` // The archive state of the head object. + // + // This functionality is not supported for directory buckets. ArchiveStatus *string `location:"header" locationName:"x-amz-archive-status" type:"string" enum:"ArchiveStatus"` // Indicates whether the object uses an S3 Bucket Key for server-side encryption // with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `location:"header" locationName:"x-amz-checksum-crc32" type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `location:"header" locationName:"x-amz-checksum-crc32c" type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `location:"header" locationName:"x-amz-checksum-sha1" type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `location:"header" locationName:"x-amz-checksum-sha256" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` - // Specifies what content encodings have been applied to the object and thus + // Indicates what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` @@ -24500,21 +26757,27 @@ // Specifies whether the object retrieved was (true) or was not (false) a Delete // Marker. If false, this response header does not appear in the response. + // + // This functionality is not supported for directory buckets. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // An entity tag (ETag) is an opaque identifier assigned by a web server to // a specific version of a resource found at a URL. ETag *string `location:"header" locationName:"ETag" type:"string"` - // If the object expiration is configured (see PUT Bucket lifecycle), the response - // includes this header. It includes the expiry-date and rule-id key-value pairs - // providing object expiration information. The value of the rule-id is URL-encoded. + // If the object expiration is configured (see PutBucketLifecycleConfiguration + // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)), + // the response includes this header. It includes the expiry-date and rule-id + // key-value pairs providing object expiration information. The value of the + // rule-id is URL-encoded. + // + // This functionality is not supported for directory buckets. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // The date and time at which the object is no longer cacheable. Expires *string `location:"header" locationName:"Expires" type:"string"` - // Creation date of the object. + // Date and time when the object was last modified. LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp"` // A map of metadata to store with the object in S3. @@ -24528,6 +26791,8 @@ // headers. This can happen if you create metadata using an API like SOAP that // supports more flexible metadata than the REST API. For example, using SOAP, // you can create metadata whose values are not legal HTTP headers. + // + // This functionality is not supported for directory buckets. MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"` // Specifies whether a legal hold is in effect for this object. This header @@ -24535,15 +26800,21 @@ // This header is not returned if the specified version of this object has never // had a legal hold applied. For more information about S3 Object Lock, see // Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). + // + // This functionality is not supported for directory buckets. ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"` // The Object Lock mode, if any, that's in effect for this object. This header // is only returned if the requester has the s3:GetObjectRetention permission. // For more information about S3 Object Lock, see Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). + // + // This functionality is not supported for directory buckets. ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"` // The date and time when the Object Lock retention period expires. This header // is only returned if the requester has the s3:GetObjectRetention permission. + // + // This functionality is not supported for directory buckets. ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"` // The count of parts this object has. This value is only returned if you specify @@ -24582,10 +26853,14 @@ // header will return FAILED. // // For more information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html). + // + // This functionality is not supported for directory buckets. ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If the object is an archived object (an object whose storage class is GLACIER), @@ -24603,42 +26878,61 @@ // // For more information about archiving objects, see Transitioning Objects: // General Considerations (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations). + // + // This functionality is not supported for directory buckets. Only the S3 Express + // One Zone storage class is supported by directory buckets to store objects. Restore *string `location:"header" locationName:"x-amz-restore" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric + // If present, indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by HeadObjectOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Provides storage class information of the object. Amazon S3 returns this // header for all objects except for S3 Standard storage class objects. // // For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html). + // + // Directory buckets - Only the S3 Express One Zone storage class is supported + // by directory buckets to store objects. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` - // Version of the object. + // Version ID of the object. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. + // + // This functionality is not supported for directory buckets. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } @@ -24924,10 +27218,16 @@ _ struct{} `type:"structure"` // Name of the Principal. + // + // This functionality is not supported for directory buckets. DisplayName *string `type:"string"` // If the principal is an Amazon Web Services account, it provides the Canonical // User ID. If the principal is an IAM User, it provides a user ARN value. + // + // Directory buckets - If the principal is an Amazon Web Services account, it + // provides the Amazon Web Services account ID. If the principal is an IAM User, + // it provides a user ARN value. ID *string `type:"string"` } @@ -26363,9 +28663,9 @@ // should begin. ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -26689,9 +28989,9 @@ // that Amazon S3 understands. ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -26858,9 +29158,9 @@ // value that Amazon S3 understands. ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -27076,24 +29376,123 @@ return s } +type ListDirectoryBucketsInput struct { + _ struct{} `locationName:"ListDirectoryBucketsRequest" type:"structure"` + + // ContinuationToken indicates to Amazon S3 that the list is being continued + // on this bucket with a token. ContinuationToken is obfuscated and is not a + // real key. You can use this ContinuationToken for pagination of the list results. + ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"` + + // Maximum number of buckets to be returned in response. When the number is + // more than the count of buckets that are owned by an Amazon Web Services account, + // return all the buckets in response. + MaxDirectoryBuckets *int64 `location:"querystring" locationName:"max-directory-buckets" 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 ListDirectoryBucketsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDirectoryBucketsInput) GoString() string { + return s.String() +} + +// SetContinuationToken sets the ContinuationToken field's value. +func (s *ListDirectoryBucketsInput) SetContinuationToken(v string) *ListDirectoryBucketsInput { + s.ContinuationToken = &v + return s +} + +// SetMaxDirectoryBuckets sets the MaxDirectoryBuckets field's value. +func (s *ListDirectoryBucketsInput) SetMaxDirectoryBuckets(v int64) *ListDirectoryBucketsInput { + s.MaxDirectoryBuckets = &v + return s +} + +type ListDirectoryBucketsOutput struct { + _ struct{} `type:"structure"` + + // The list of buckets owned by the requester. + Buckets []*Bucket `locationNameList:"Bucket" type:"list"` + + // If ContinuationToken was sent with the request, it is included in the response. + // You can use the returned ContinuationToken for pagination of the list response. + ContinuationToken *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 ListDirectoryBucketsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDirectoryBucketsOutput) GoString() string { + return s.String() +} + +// SetBuckets sets the Buckets field's value. +func (s *ListDirectoryBucketsOutput) SetBuckets(v []*Bucket) *ListDirectoryBucketsOutput { + s.Buckets = v + return s +} + +// SetContinuationToken sets the ContinuationToken field's value. +func (s *ListDirectoryBucketsOutput) SetContinuationToken(v string) *ListDirectoryBucketsOutput { + s.ContinuationToken = &v + return s +} + type ListMultipartUploadsInput struct { _ struct{} `locationName:"ListMultipartUploadsRequest" type:"structure"` // The name of the bucket to which the multipart upload was initiated. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -27107,6 +29506,8 @@ // parameter, then the substring starts at the beginning of the key. The keys // that are grouped under CommonPrefixes result element are not returned elsewhere // in the response. + // + // Directory buckets - For directory buckets, / is the only supported delimiter. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"` // Requests Amazon S3 to encode the object keys in the response and specifies @@ -27117,20 +29518,28 @@ // keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). - ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` - - // Together with upload-id-marker, this parameter specifies the multipart upload - // after which listing should begin. - // - // If upload-id-marker is not specified, only the keys lexicographically greater - // than the specified key-marker will be included in the list. - // - // If upload-id-marker is specified, any multipart uploads for a key equal to - // the key-marker might also be included, provided those multipart uploads have - // upload IDs lexicographically greater than the specified upload-id-marker. + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). + ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` + + // Specifies the multipart upload after which listing should begin. + // + // * General purpose buckets - For general purpose buckets, key-marker is + // an object key. Together with upload-id-marker, this parameter specifies + // the multipart upload after which listing should begin. If upload-id-marker + // is not specified, only the keys lexicographically greater than the specified + // key-marker will be included in the list. If upload-id-marker is specified, + // any multipart uploads for a key equal to the key-marker might also be + // included, provided those multipart uploads have upload IDs lexicographically + // greater than the specified upload-id-marker. + // + // * Directory buckets - For directory buckets, key-marker is obfuscated + // and isn't a real object key. The upload-id-marker parameter isn't supported + // by directory buckets. To list the additional multipart uploads, you only + // need to set the value of key-marker to the NextKeyMarker value from the + // previous response. In the ListMultipartUploads response, the multipart + // uploads aren't sorted lexicographically based on the object keys. KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"` // Sets the maximum number of multipart uploads, from 1 to 1,000, to return @@ -27142,15 +29551,20 @@ // prefix. You can use prefixes to separate a bucket into different grouping // of keys. (You can think of using prefix to make groups in the same way that // you'd use a folder in a file system.) + // + // Directory buckets - For directory buckets, only prefixes that end in a delimiter + // (/) are supported. Prefix *string `location:"querystring" locationName:"prefix" type:"string"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Together with key-marker, specifies the multipart upload after which listing @@ -27158,6 +29572,8 @@ // is ignored. Otherwise, any multipart uploads for a key equal to the key-marker // might be included in the list only if they have an upload ID lexicographically // greater than the specified upload-id-marker. + // + // This functionality is not supported for directory buckets. UploadIdMarker *string `location:"querystring" locationName:"upload-id-marker" type:"string"` } @@ -27293,10 +29709,15 @@ // If you specify a delimiter in the request, then the result returns each distinct // key prefix containing the delimiter in a CommonPrefixes element. The distinct // key prefixes are returned in the Prefix child element. + // + // Directory buckets - For directory buckets, only prefixes that end in a delimiter + // (/) are supported. CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"` // Contains the delimiter you specified in the request. If you don't specify // a delimiter in your request, this element is absent from the response. + // + // Directory buckets - For directory buckets, / is the only supported delimiter. Delimiter *string `type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. @@ -27327,17 +29748,26 @@ // When a list is truncated, this element specifies the value that should be // used for the upload-id-marker request parameter in a subsequent request. + // + // This functionality is not supported for directory buckets. NextUploadIdMarker *string `type:"string"` // When a prefix is provided in the request, this field contains the specified // prefix. The result contains only keys starting with the specified prefix. + // + // Directory buckets - For directory buckets, only prefixes that end in a delimiter + // (/) are supported. Prefix *string `type:"string"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Upload ID after which listing began. + // + // This functionality is not supported for directory buckets. UploadIdMarker *string `type:"string"` // Container for elements related to a particular multipart upload. A response @@ -27471,9 +29901,9 @@ // keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Specifies the key to start with when listing objects in a bucket. @@ -27500,11 +29930,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the object version you want to start listing from. @@ -27698,6 +30130,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Marks the last version of the key returned in a truncated response. @@ -27814,19 +30248,33 @@ // The name of the bucket containing the objects. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -27843,9 +30291,9 @@ // keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Marker is where you want Amazon S3 to start listing from. Amazon S3 starts @@ -28056,6 +30504,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -28146,21 +30596,33 @@ type ListObjectsV2Input struct { _ struct{} `locationName:"ListObjectsV2Request" type:"structure"` - // Bucket name to list. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -28168,23 +30630,35 @@ // ContinuationToken indicates to Amazon S3 that the list is being continued // on this bucket with a token. ContinuationToken is obfuscated and is not a - // real key. + // real key. You can use this ContinuationToken for pagination of the list results. ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"` // A delimiter is a character that you use to group keys. + // + // * Directory buckets - For directory buckets, / is the only supported delimiter. + // + // * Directory buckets - When you query ListObjectsV2 with a delimiter during + // in-progress multipart uploads, the CommonPrefixes response parameter contains + // the prefixes that are associated with the in-progress multipart uploads. + // For more information about multipart uploads, see Multipart Upload Overview + // (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html) in + // the Amazon S3 User Guide. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The owner field is not present in ListObjectsV2 by default. If you want to // return the owner field with each key in the result, then set the FetchOwner // field to true. + // + // Directory buckets - For directory buckets, the bucket owner is returned as + // the object owner for all objects. FetchOwner *bool `location:"querystring" locationName:"fetch-owner" type:"boolean"` // Sets the maximum number of keys returned in the response. By default, the @@ -28194,18 +30668,27 @@ // Specifies the optional fields that you want returned in the response. Fields // that you do not specify are not returned. + // + // This functionality is not supported for directory buckets. OptionalObjectAttributes []*string `location:"header" locationName:"x-amz-optional-object-attributes" type:"list" enum:"OptionalObjectAttributes"` // Limits the response to keys that begin with the specified prefix. + // + // Directory buckets - For directory buckets, only prefixes that end in a delimiter + // (/) are supported. Prefix *string `location:"querystring" locationName:"prefix" type:"string"` // Confirms that the requester knows that she or he will be charged for the // list objects request in V2 style. Bucket owners need not specify this parameter // in their requests. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts // listing after this specified key. StartAfter can be any key in the bucket. + // + // This functionality is not supported for directory buckets. StartAfter *string `location:"querystring" locationName:"start-after" type:"string"` } @@ -28346,8 +30829,9 @@ type ListObjectsV2Output struct { _ struct{} `type:"structure"` - // All of the keys (up to 1,000) rolled up into a common prefix count as a single - // return when calculating the number of returns. + // All of the keys (up to 1,000) that share the same prefix are grouped together. + // When counting the total numbers of returns by this API operation, this group + // of keys is considered as one item. // // A response can contain CommonPrefixes only if you specify a delimiter. // @@ -28361,12 +30845,24 @@ // in notes/summer/july, the common prefix is notes/summer/. All of the keys // that roll up into a common prefix count as a single return when calculating // the number of returns. + // + // * Directory buckets - For directory buckets, only prefixes that end in + // a delimiter (/) are supported. + // + // * Directory buckets - When you query ListObjectsV2 with a delimiter during + // in-progress multipart uploads, the CommonPrefixes response parameter contains + // the prefixes that are associated with the in-progress multipart uploads. + // For more information about multipart uploads, see Multipart Upload Overview + // (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html) in + // the Amazon S3 User Guide. CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"` // Metadata about each object returned. Contents []*Object `type:"list" flattened:"true"` // If ContinuationToken was sent with the request, it is included in the response. + // You can use the returned ContinuationToken for pagination of the list response. + // You can use this ContinuationToken for pagination of the list results. ContinuationToken *string `type:"string"` // Causes keys that contain the same string between the prefix and the first @@ -28374,6 +30870,8 @@ // in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere // in the response. Each rolled-up result counts as only one return against // the MaxKeys value. + // + // Directory buckets - For directory buckets, / is the only supported delimiter. Delimiter *string `type:"string"` // Encoding type used by Amazon S3 to encode object key names in the XML response. @@ -28401,21 +30899,6 @@ MaxKeys *int64 `type:"integer"` // The bucket name. - // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. - // When using this action with an access point through the Amazon Web Services - // SDKs, you provide the access point ARN in place of the bucket name. For more - // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) - // in the Amazon S3 User Guide. - // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) - // in the Amazon S3 User Guide. Name *string `type:"string"` // NextContinuationToken is sent when isTruncated is true, which means there @@ -28425,13 +30908,20 @@ NextContinuationToken *string `type:"string"` // Keys that begin with the indicated prefix. + // + // Directory buckets - For directory buckets, only prefixes that end in a delimiter + // (/) are supported. Prefix *string `type:"string"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If StartAfter was sent with the request, it is included in the response. + // + // This functionality is not supported for directory buckets. StartAfter *string `type:"string"` } @@ -28536,27 +31026,41 @@ // The name of the bucket to which the parts are being uploaded. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Object key for which the multipart upload was initiated. @@ -28573,17 +31077,21 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The server-side encryption (SSE) algorithm used to encrypt the object. This // parameter is needed only when the object was created using a checksum algorithm. // For more information, see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // The server-side encryption (SSE) customer managed key. This parameter is @@ -28591,6 +31099,8 @@ // information, see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) // in the Amazon S3 User Guide. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by ListPartsInput's // String and GoString methods. @@ -28600,6 +31110,8 @@ // is needed only when the object was created using a checksum algorithm. For // more information, see Protecting data using SSE-C keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Upload ID identifying the multipart upload whose parts are being listed. @@ -28764,11 +31276,15 @@ // // The response will also include the x-amz-abort-rule-id header that will provide // the ID of the lifecycle configuration rule that defines this action. + // + // This functionality is not supported for directory buckets. AbortDate *time.Time `location:"header" locationName:"x-amz-abort-date" type:"timestamp"` // This header is returned along with the x-amz-abort-date header. It identifies // applicable lifecycle configuration rule that defines the action to abort // incomplete multipart uploads. + // + // This functionality is not supported for directory buckets. AbortRuleId *string `location:"header" locationName:"x-amz-abort-rule-id" type:"string"` // The name of the bucket to which the multipart upload was initiated. Does @@ -28803,6 +31319,9 @@ // Container element that identifies the object owner, after the object is created. // If multipart upload is initiated by an IAM user, this element provides the // parent account ID and display name. + // + // Directory buckets - The bucket owner is returned as the object owner for + // all the parts. Owner *Owner `type:"structure"` // When a list is truncated, this element specifies the last part in the list, @@ -28816,10 +31335,14 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` - // Class of storage (STANDARD or REDUCED_REDUNDANCY) used to store the uploaded - // object. + // The class of storage used to store the uploaded object. + // + // Directory buckets - Only the S3 Express One Zone storage class is supported + // by directory buckets to store objects. StorageClass *string `type:"string" enum:"StorageClass"` // Upload ID identifying the multipart upload whose parts are being listed. @@ -29077,6 +31600,56 @@ return s } +// Specifies the location where the bucket will be created. +// +// For directory buckets, the location type is Availability Zone. For more information +// about directory buckets, see Directory buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html) +// in the Amazon S3 User Guide. +// +// This functionality is only supported by directory buckets. +type LocationInfo struct { + _ struct{} `type:"structure"` + + // The name of the location where the bucket will be created. + // + // For directory buckets, the AZ ID of the Availability Zone where the bucket + // will be created. An example AZ ID value is usw2-az2. + Name *string `type:"string"` + + // The type of location where the bucket will be created. + Type *string `type:"string" enum:"LocationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LocationInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LocationInfo) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *LocationInfo) SetName(v string) *LocationInfo { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *LocationInfo) SetType(v string) *LocationInfo { + s.Type = &v + return s +} + // Describes where logs are stored and the prefix that Amazon S3 assigns to // all log object keys for a bucket. For more information, see PUT Bucket logging // (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html) @@ -29102,6 +31675,9 @@ // in the Amazon S3 User Guide. TargetGrants []*TargetGrant `locationNameList:"Grant" type:"list"` + // Amazon S3 key format for log objects. + TargetObjectKeyFormat *TargetObjectKeyFormat `type:"structure"` + // A prefix for all log object keys. If you store log files from multiple Amazon // S3 buckets in a single bucket, you can use a prefix to distinguish which // log files came from which bucket. @@ -29166,6 +31742,12 @@ return s } +// SetTargetObjectKeyFormat sets the TargetObjectKeyFormat field's value. +func (s *LoggingEnabled) SetTargetObjectKeyFormat(v *TargetObjectKeyFormat) *LoggingEnabled { + s.TargetObjectKeyFormat = v + return s +} + // SetTargetPrefix sets the TargetPrefix field's value. func (s *LoggingEnabled) SetTargetPrefix(v string) *LoggingEnabled { s.TargetPrefix = &v @@ -29513,9 +32095,15 @@ Key *string `min:"1" type:"string"` // Specifies the owner of the object that is part of the multipart upload. + // + // Directory buckets - The bucket owner is returned as the object owner for + // all the objects. Owner *Owner `type:"structure"` // The class of storage used to store the object. + // + // Directory buckets - Only the S3 Express One Zone storage class is supported + // by directory buckets to store objects. StorageClass *string `type:"string" enum:"StorageClass"` // Upload ID that identifies the multipart upload. @@ -29590,9 +32178,10 @@ type NoncurrentVersionExpiration struct { _ struct{} `type:"structure"` - // Specifies how many noncurrent versions Amazon S3 will retain. If there are - // this many more recent noncurrent versions, Amazon S3 will take the associated - // action. For more information about noncurrent versions, see Lifecycle configuration + // Specifies how many newer noncurrent versions must exist before Amazon S3 + // can perform the associated action on a given version. If there are this many + // more recent noncurrent versions, Amazon S3 will take the associated action. + // For more information about noncurrent versions, see Lifecycle configuration // elements (https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html) // in the Amazon S3 User Guide. NewerNoncurrentVersions *int64 `type:"integer"` @@ -29645,9 +32234,10 @@ type NoncurrentVersionTransition struct { _ struct{} `type:"structure"` - // Specifies how many noncurrent versions Amazon S3 will retain. If there are - // this many more recent noncurrent versions, Amazon S3 will take the associated - // action. For more information about noncurrent versions, see Lifecycle configuration + // Specifies how many newer noncurrent versions must exist before Amazon S3 + // can perform the associated action on a given version. If there are this many + // more recent noncurrent versions, Amazon S3 will take the associated action. + // For more information about noncurrent versions, see Lifecycle configuration // elements (https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html) // in the Amazon S3 User Guide. NewerNoncurrentVersions *int64 `type:"integer"` @@ -29917,6 +32507,8 @@ // encryption. If an object is larger than 16 MB, the Amazon Web Services // Management Console will upload or copy that object as a Multipart Upload, // and therefore the ETag will not be an MD5 digest. + // + // Directory buckets - MD5 is not supported by directory buckets. ETag *string `type:"string"` // The name that you assign to an object. You use the object key to retrieve @@ -29927,6 +32519,8 @@ LastModified *time.Time `type:"timestamp"` // The owner of the object + // + // Directory buckets - The bucket owner is returned as the object owner. Owner *Owner `type:"structure"` // Specifies the restoration status of an object. Objects in certain storage @@ -29934,12 +32528,18 @@ // about these storage classes and how to work with archived objects, see Working // with archived objects (https://docs.aws.amazon.com/AmazonS3/latest/userguide/archived-objects.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. Only the S3 Express + // One Zone storage class is supported by directory buckets to store objects. RestoreStatus *RestoreStatus `type:"structure"` // Size in bytes of the object Size *int64 `type:"long"` // The class of storage used to store the object. + // + // Directory buckets - Only the S3 Express One Zone storage class is supported + // by directory buckets to store objects. StorageClass *string `type:"string" enum:"ObjectStorageClass"` } @@ -30022,7 +32622,9 @@ // Key is a required field Key *string `min:"1" type:"string" required:"true"` - // VersionId for the specific version of the object to delete. + // Version ID for the specific version of the object to delete. + // + // This functionality is not supported for directory buckets. VersionId *string `type:"string"` } @@ -30237,26 +32839,32 @@ ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `type:"string"` @@ -30339,7 +32947,7 @@ // The object key. Key *string `min:"1" type:"string"` - // Date and time the object was last modified. + // Date and time when the object was last modified. LastModified *time.Time `type:"timestamp"` // Specifies the owner of the object. @@ -30550,6 +33158,8 @@ // * Europe (Ireland) // // * South America (São Paulo) + // + // This functionality is not supported for directory buckets. DisplayName *string `type:"string"` // Container for the ID of the owner. @@ -30659,8 +33269,19 @@ // BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer // affect permissions. The bucket owner automatically owns and has full control // over every object in the bucket. The bucket only accepts PUT requests that - // don't specify an ACL or bucket owner full control ACLs, such as the bucket-owner-full-control - // canned ACL or an equivalent form of this ACL expressed in the XML format. + // don't specify an ACL or specify bucket owner full control ACLs (such as the + // predefined bucket-owner-full-control canned ACL or a custom ACL in XML format + // that grants the same permissions). + // + // By default, ObjectOwnership is set to BucketOwnerEnforced and ACLs are disabled. + // We recommend keeping ACLs disabled, except in uncommon use cases where you + // must control access for each object individually. For more information about + // S3 Object Ownership, see Controlling ownership of objects and disabling ACLs + // for your bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. Directory buckets + // use the bucket owner enforced setting for S3 Object Ownership. // // ObjectOwnership is a required field ObjectOwnership *string `type:"string" required:"true" enum:"ObjectOwnership"` @@ -30738,18 +33359,22 @@ ChecksumCRC32 *string `type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `type:"string"` @@ -30840,6 +33465,44 @@ return s } +// Amazon S3 keys for log objects are partitioned in the following format: +// +// [DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString] +// +// PartitionedPrefix defaults to EventTime delivery when server access logs +// are delivered. +type PartitionedPrefix struct { + _ struct{} `locationName:"PartitionedPrefix" type:"structure"` + + // Specifies the partition date source for the partitioned prefix. PartitionDateSource + // can be EventTime or DeliveryTime. + PartitionDateSource *string `type:"string" enum:"PartitionDateSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PartitionedPrefix) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PartitionedPrefix) GoString() string { + return s.String() +} + +// SetPartitionDateSource sets the PartitionDateSource field's value. +func (s *PartitionedPrefix) SetPartitionDateSource(v string) *PartitionedPrefix { + s.PartitionDateSource = &v + return s +} + // The container element for a bucket's policy status. type PolicyStatus struct { _ struct{} `type:"structure"` @@ -31087,12 +33750,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -31104,9 +33767,9 @@ // must be populated with the algorithm's checksum of the request payload. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -31241,12 +33904,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -31262,9 +33925,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Allows grantee the read, write, read ACP, and write ACP permissions on the @@ -31455,9 +34118,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID that identifies the analytics configuration. @@ -31607,12 +34270,12 @@ // CORSConfiguration is a required field CORSConfiguration *CORSConfiguration `locationName:"CORSConfiguration" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -31628,9 +34291,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -31771,12 +34434,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -31792,9 +34455,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Specifies the default server-side-encryption configuration. @@ -32072,9 +34735,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID used to identify the inventory configuration. @@ -32221,12 +34884,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -32242,9 +34905,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Container for lifecycle rules. You can add as many as 1,000 rules. @@ -32376,12 +35039,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -32397,9 +35060,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Container for lifecycle rules. You can add as many as 1000 rules. @@ -32541,12 +35204,12 @@ // BucketLoggingStatus is a required field BucketLoggingStatus *BucketLoggingStatus `locationName:"BucketLoggingStatus" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -32562,9 +35225,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` } @@ -32698,9 +35361,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The ID used to identify the metrics configuration. The ID has a 64 character @@ -32848,9 +35511,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // A container for specifying the notification configuration of the bucket. @@ -32994,12 +35657,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -33015,9 +35678,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The container for the configuration. @@ -33151,9 +35814,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The OwnershipControls (BucketOwnerEnforced, BucketOwnerPreferred, or ObjectWriter) @@ -33284,19 +35947,45 @@ // The name of the bucket. // + // Directory buckets - When you use this operation with a directory bucket, + // you must use path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name + // . Virtual-hosted-style requests aren't supported. Directory bucket names + // must be unique in the chosen Availability Zone. Bucket names must also follow + // the format bucket_base_name--az_id--x-s3 (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). + // For information about bucket naming restrictions, see Directory bucket naming + // rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide + // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon + // S3 fails the request with the HTTP status code 400 Bad Request. + // + // For the x-amz-checksum-algorithm header, replace algorithm with the supported + // algorithm from the following list: + // + // * CRC32 + // + // * CRC32C + // + // * SHA1 + // + // * SHA256 + // + // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // - // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm - // parameter. + // If the individual checksum value you provide through x-amz-checksum-algorithm + // doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, + // Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum + // algorithm that matches the provided value in x-amz-checksum-algorithm . + // + // For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the + // default checksum algorithm that's used for performance. // // The AWS SDK for Go v1 does not support automatic computing request payload // checksum. This feature is available in the AWS SDK for Go v2. If a value @@ -33310,15 +35999,24 @@ // Set this parameter to true to confirm that you want to remove your permissions // to change this bucket policy in the future. + // + // This functionality is not supported for directory buckets. ConfirmRemoveSelfBucketAccess *bool `location:"header" locationName:"x-amz-confirm-remove-self-bucket-access" type:"boolean"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). + // + // For directory buckets, this header is not supported in this API operation. + // If you specify this header, the request fails with the HTTP status code 501 + // Not Implemented. ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The bucket policy as a JSON document. // + // For directory buckets, the only IAM action supported in the bucket policy + // is s3express:CreateSession. + // // Policy is a required field Policy *string `type:"string" required:"true"` } @@ -33454,12 +36152,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -33475,9 +36173,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // A container for replication rules. You can add up to 1,000 rules. The maximum @@ -33626,12 +36324,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -33647,9 +36345,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Container for Payer. @@ -33788,12 +36486,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -33809,9 +36507,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Container for the TagSet and Tag elements. @@ -33950,12 +36648,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -33971,9 +36669,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The concatenation of the authentication device's serial number, a space, @@ -34117,12 +36815,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -34138,9 +36836,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Container for the request. @@ -34284,22 +36982,33 @@ // The bucket name that contains the object to which you want to attach the // ACL. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // in the Amazon S3 User Guide. + // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -34315,25 +37024,25 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. // - // This action is not supported by Amazon S3 on Outposts. + // This functionality is not supported for Amazon S3 on Outposts. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to list the objects in the bucket. // - // This action is not supported by Amazon S3 on Outposts. + // This functionality is not supported for Amazon S3 on Outposts. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the bucket ACL. // - // This action is not supported by Amazon S3 on Outposts. + // This functionality is not supported for Amazon S3 on Outposts. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to create new objects in the bucket. @@ -34344,39 +37053,28 @@ // Allows grantee to write the ACL for the applicable bucket. // - // This action is not supported by Amazon S3 on Outposts. + // This functionality is not supported for Amazon S3 on Outposts. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Key for which the PUT action was initiated. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. - // When using this action with an access point through the Amazon Web Services - // SDKs, you provide the access point ARN in place of the bucket name. For more - // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) - // in the Amazon S3 User Guide. - // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) - // in the Amazon S3 User Guide. - // // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // VersionId used to reference a specific version of the object. + // Version ID used to reference a specific version of the object. + // + // This functionality is not supported for directory buckets. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } @@ -34542,6 +37240,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -34573,9 +37273,32 @@ _ struct{} `locationName:"PutObjectRequest" type:"structure" payload:"Body"` // The canned ACL to apply to the object. For more information, see Canned ACL - // (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL). + // (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL) + // in the Amazon S3 User Guide. + // + // When adding a new object, you can use headers to grant ACL-based permissions + // to individual Amazon Web Services accounts or to predefined groups defined + // by Amazon S3. These permissions are then added to the ACL on the object. + // By default, all objects are private. Only the owner has full access control. + // For more information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) + // and Managing ACLs Using the REST API (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html) + // in the Amazon S3 User Guide. // - // This action is not supported by Amazon S3 on Outposts. + // If the bucket that you're uploading objects to uses the bucket owner enforced + // setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. + // Buckets that use this setting only accept PUT requests that don't specify + // an ACL or PUT requests that specify bucket owner full control ACLs, such + // as the bucket-owner-full-control canned ACL or an equivalent form of this + // ACL expressed in the XML format. PUT requests that contain other ACLs (for + // example, custom grants to certain Amazon Web Services accounts) fail and + // return a 400 error with the error code AccessControlListNotSupported. For + // more information, see Controlling ownership of objects and disabling ACLs + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) + // in the Amazon S3 User Guide. + // + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` // Object data. @@ -34583,19 +37306,33 @@ // The bucket name to which the PUT action was initiated. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -34608,6 +37345,8 @@ // // Specifying this header with a PUT action doesn’t affect bucket-level settings // for S3 Bucket Key. + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Can be used to specify caching behavior along the request/reply chain. For @@ -34615,16 +37354,33 @@ // (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9). CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon + // S3 fails the request with the HTTP status code 400 Bad Request. + // + // For the x-amz-checksum-algorithm header, replace algorithm with the supported + // algorithm from the following list: + // + // * CRC32 + // + // * CRC32C + // + // * SHA1 + // + // * SHA256 + // + // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // - // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm - // parameter. + // If the individual checksum value you provide through x-amz-checksum-algorithm + // doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, + // Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum + // algorithm that matches the provided value in x-amz-checksum-algorithm . + // + // For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the + // default checksum algorithm that's used for performance. // // The AWS SDK for Go v1 does not support automatic computing request payload // checksum. This feature is available in the AWS SDK for Go v2. If a value @@ -34684,15 +37440,22 @@ // it is optional, we recommend using the Content-MD5 mechanism as an end-to-end // integrity check. For more information about REST request authentication, // see REST Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). + // + // The Content-MD5 header is required for any request to upload an object with + // a retention period configured using Amazon S3 Object Lock. For more information + // about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"` // A standard MIME type describing the format of the contents. For more information, // see https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type (https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type). ContentType *string `location:"header" locationName:"Content-Type" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The date and time at which the object is no longer cacheable. For more information, @@ -34701,22 +37464,30 @@ // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Object key for which the PUT action was initiated. @@ -34728,27 +37499,37 @@ Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Specifies whether a legal hold will be applied to this object. For more information - // about S3 Object Lock, see Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). + // about S3 Object Lock, see Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"` // The Object Lock mode that you want to apply to this object. + // + // This functionality is not supported for directory buckets. ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"` // The date and time when you want this object's Object Lock to expire. Must // be formatted as a timestamp parameter. + // + // This functionality is not supported for directory buckets. ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -34757,6 +37538,8 @@ // with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm // header. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PutObjectInput's // String and GoString methods. @@ -34765,13 +37548,18 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the Amazon Web Services KMS Encryption Context to use for object // encryption. The value of this header is a base64-encoded UTF-8 string holding // JSON with the encryption context key-value pairs. This value is stored as // object metadata and automatically gets passed on to Amazon Web Services KMS - // for future GetObject or CopyObject operations on this object. + // for future GetObject or CopyObject operations on this object. This value + // must be explicitly added during CopyObject operations. + // + // This functionality is not supported for directory buckets. // // SSEKMSEncryptionContext is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PutObjectInput's @@ -34787,31 +37575,54 @@ // the KMS key does not exist in the same account that's issuing the command, // you must use the full ARN and not just the ID. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PutObjectInput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon - // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // The server-side encryption algorithm that was used when you store this object + // in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse). + // + // General purpose buckets - You have four mutually exclusive options to protect + // data using server-side encryption in Amazon S3, depending on how you choose + // to manage the encryption keys. Specifically, the encryption key options are + // Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or + // DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with + // server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. + // You can optionally tell Amazon S3 to encrypt data at rest by using server-side + // encryption with other key options. For more information, see Using Server-Side + // Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html) + // in the Amazon S3 User Guide. + // + // Directory buckets - For directory buckets, only the server-side encryption + // with Amazon S3 managed keys (SSE-S3) (AES256) value is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // By default, Amazon S3 uses the STANDARD Storage Class to store newly created // objects. The STANDARD storage class provides high durability and high availability. // Depending on performance needs, you can specify a different Storage Class. - // Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, - // see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) + // For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) // in the Amazon S3 User Guide. + // + // * For directory buckets, only the S3 Express One Zone storage class is + // supported to store newly created objects. + // + // * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // The tag-set for the object. The tag-set must be encoded as URL Query parameters. // (For example, "Key1=Value1") + // + // This functionality is not supported for directory buckets. Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. For information about object - // metadata, see Object Key and Metadata (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html). + // metadata, see Object Key and Metadata (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html) + // in the Amazon S3 User Guide. // // In the following example, the request header sets the redirect to an object // (anotherPage.html) in the same bucket: @@ -34825,7 +37636,10 @@ // // For more information about website hosting in Amazon S3, see Hosting Websites // on Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) - // and How to Configure Website Page Redirects (https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html). + // and How to Configure Website Page Redirects (https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } @@ -35138,8 +37952,10 @@ // The bucket name containing the object that you want to place a legal hold // on. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) @@ -35148,12 +37964,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -35169,9 +37985,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The key name for the object that you want to place a legal hold on. @@ -35185,11 +38001,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The version ID of the object that you want to place a legal hold on. @@ -35317,6 +38135,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -35352,12 +38172,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -35373,9 +38193,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The Object Lock configuration that you want to apply to the specified bucket. @@ -35383,11 +38203,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // A token to allow Object Lock to be enabled for an existing bucket. @@ -35503,6 +38325,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -35535,89 +38359,133 @@ // Indicates whether the uploaded object uses an S3 Bucket Key for server-side // encryption with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `location:"header" locationName:"x-amz-checksum-crc32" type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `location:"header" locationName:"x-amz-checksum-crc32c" type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `location:"header" locationName:"x-amz-checksum-sha1" type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `location:"header" locationName:"x-amz-checksum-sha256" type:"string"` // Entity tag for the uploaded object. + // + // General purpose buckets - To ensure that data is not corrupted traversing + // the network, for objects where the ETag is the MD5 digest of the object, + // you can calculate the MD5 while putting an object to Amazon S3 and compare + // the returned ETag to the calculated MD5 value. + // + // Directory buckets - The ETag for the object in a directory bucket isn't the + // MD5 digest of the object. ETag *string `location:"header" locationName:"ETag" type:"string"` // If the expiration is configured for the object (see PutBucketLifecycleConfiguration - // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)), - // the response includes this header. It includes the expiry-date and rule-id - // key-value pairs that provide information about object expiration. The value - // of the rule-id is URL-encoded. + // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)) + // in the Amazon S3 User Guide, the response includes this header. It includes + // the expiry-date and rule-id key-value pairs that provide information about + // object expiration. The value of the rule-id is URL-encoded. + // + // This functionality is not supported for directory buckets. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the Amazon Web Services KMS Encryption Context to use + // If present, indicates the Amazon Web Services KMS Encryption Context to use // for object encryption. The value of this header is a base64-encoded UTF-8 // string holding JSON with the encryption context key-value pairs. This value // is stored as object metadata and automatically gets passed on to Amazon Web // Services KMS for future GetObject or CopyObject operations on this object. // + // This functionality is not supported for directory buckets. + // // SSEKMSEncryptionContext is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PutObjectOutput's // String and GoString methods. SSEKMSEncryptionContext *string `location:"header" locationName:"x-amz-server-side-encryption-context" type:"string" sensitive:"true"` // If x-amz-server-side-encryption has a valid value of aws:kms or aws:kms:dsse, - // this header specifies the ID of the Key Management Service (KMS) symmetric + // this header indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by PutObjectOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` - // Version of the object. + // Version ID of the object. + // + // If you enable versioning for a bucket, Amazon S3 automatically generates + // a unique version ID for the object being stored. Amazon S3 returns this ID + // in the response. When you enable versioning for a bucket, if Amazon S3 receives + // multiple write requests for the same object simultaneously, it stores all + // of the objects. For more information about versioning, see Adding Objects + // to Versioning-Enabled Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html) + // in the Amazon S3 User Guide. For information about returning the versioning + // state of a bucket, see GetBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html). + // + // This functionality is not supported for directory buckets. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } @@ -35729,8 +38597,10 @@ // The bucket name that contains the object you want to apply this Object Retention // configuration to. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) @@ -35742,12 +38612,12 @@ // Indicates whether this action should bypass Governance-mode restrictions. BypassGovernanceRetention *bool `location:"header" locationName:"x-amz-bypass-governance-retention" type:"boolean"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -35763,9 +38633,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The key name for the object that you want to apply this Object Retention @@ -35776,11 +38646,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // The container element for the Object Retention configuration. @@ -35918,6 +38790,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } @@ -35950,30 +38824,33 @@ // The bucket name containing the object. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -35989,9 +38866,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Name of the object key. @@ -36001,11 +38878,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Container for the TagSet and Tag elements @@ -36181,12 +39060,12 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -36202,9 +39081,9 @@ // to be used. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The PublicAccessBlock configuration that you want to apply to this Amazon @@ -37339,30 +40218,33 @@ // The bucket name containing the object to restore. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -37374,9 +40256,9 @@ // must be populated with the algorithm's checksum of the request payload. ChecksumAlgorithm *string `location:"header" locationName:"x-amz-sdk-checksum-algorithm" type:"string" enum:"ChecksumAlgorithm"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Object key for which the action was initiated. @@ -37386,11 +40268,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Container for restore job parameters. @@ -37526,6 +40410,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Indicates the path in the provided S3 output location where Select results @@ -37684,6 +40570,9 @@ // about these storage classes and how to work with archived objects, see Working // with archived objects (https://docs.aws.amazon.com/AmazonS3/latest/userguide/archived-objects.html) // in the Amazon S3 User Guide. +// +// This functionality is not supported for directory buckets. Only the S3 Express +// One Zone storage class is supported by directory buckets to store objects. type RestoreStatus struct { _ struct{} `type:"structure"` @@ -38251,9 +41140,9 @@ // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The expression that is used to query the object. @@ -38828,6 +41717,118 @@ return s } +// The established temporary security credentials of the session. +// +// Directory buckets - These session credentials are only supported for the +// authentication and authorization of Zonal endpoint APIs on directory buckets. +type SessionCredentials struct { + _ struct{} `type:"structure"` + + // A unique identifier that's associated with a secret access key. The access + // key ID and the secret access key are used together to sign programmatic Amazon + // Web Services requests cryptographically. + // + // AccessKeyId is a required field + AccessKeyId *string `locationName:"AccessKeyId" type:"string" required:"true"` + + // Temporary security credentials expire after a specified interval. After temporary + // credentials expire, any calls that you make with those credentials will fail. + // So you must generate a new set of temporary credentials. Temporary credentials + // cannot be extended or refreshed beyond the original specified interval. + // + // Expiration is a required field + Expiration *time.Time `locationName:"Expiration" type:"timestamp" required:"true"` + + // A key that's used with the access key ID to cryptographically sign programmatic + // Amazon Web Services requests. Signing a request identifies the sender and + // prevents the request from being altered. + // + // SecretAccessKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SessionCredentials's + // String and GoString methods. + // + // SecretAccessKey is a required field + SecretAccessKey *string `locationName:"SecretAccessKey" type:"string" required:"true" sensitive:"true"` + + // A part of the temporary security credentials. The session token is used to + // validate the temporary security credentials. + // + // SessionToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SessionCredentials's + // String and GoString methods. + // + // SessionToken is a required field + SessionToken *string `locationName:"SessionToken" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionCredentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionCredentials) GoString() string { + return s.String() +} + +// SetAccessKeyId sets the AccessKeyId field's value. +func (s *SessionCredentials) SetAccessKeyId(v string) *SessionCredentials { + s.AccessKeyId = &v + return s +} + +// SetExpiration sets the Expiration field's value. +func (s *SessionCredentials) SetExpiration(v time.Time) *SessionCredentials { + s.Expiration = &v + return s +} + +// SetSecretAccessKey sets the SecretAccessKey field's value. +func (s *SessionCredentials) SetSecretAccessKey(v string) *SessionCredentials { + s.SecretAccessKey = &v + return s +} + +// SetSessionToken sets the SessionToken field's value. +func (s *SessionCredentials) SetSessionToken(v string) *SessionCredentials { + s.SessionToken = &v + return s +} + +// To use simple format for S3 keys for log objects, set SimplePrefix to an +// empty object. +// +// [DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString] +type SimplePrefix struct { + _ struct{} `locationName:"SimplePrefix" 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 SimplePrefix) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SimplePrefix) GoString() string { + return s.String() +} + // A container that describes additional filters for identifying the source // objects that you want to replicate. You can choose to enable or disable the // replication of these objects. Currently, Amazon S3 supports only the filter @@ -39364,6 +42365,49 @@ return s } +// Amazon S3 key format for log objects. Only one format, PartitionedPrefix +// or SimplePrefix, is allowed. +type TargetObjectKeyFormat struct { + _ struct{} `type:"structure"` + + // Partitioned S3 key for log objects. + PartitionedPrefix *PartitionedPrefix `locationName:"PartitionedPrefix" type:"structure"` + + // To use the simple format for S3 keys for log objects. To specify SimplePrefix + // format, set SimplePrefix to {}. + SimplePrefix *SimplePrefix `locationName:"SimplePrefix" 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 TargetObjectKeyFormat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetObjectKeyFormat) GoString() string { + return s.String() +} + +// SetPartitionedPrefix sets the PartitionedPrefix field's value. +func (s *TargetObjectKeyFormat) SetPartitionedPrefix(v *PartitionedPrefix) *TargetObjectKeyFormat { + s.PartitionedPrefix = v + return s +} + +// SetSimplePrefix sets the SimplePrefix field's value. +func (s *TargetObjectKeyFormat) SetSimplePrefix(v *SimplePrefix) *TargetObjectKeyFormat { + s.SimplePrefix = v + return s +} + // The S3 Intelligent-Tiering storage class is designed to optimize storage // costs by automatically moving data to the most cost-effective storage access // tier, without additional operational overhead. @@ -39648,19 +42692,33 @@ // The bucket name. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -39682,34 +42740,81 @@ // my-access-point owned by account 123456789012 in Region us-west-2, use // the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. // The value must be URL encoded. Amazon S3 supports copy operations using - // access points only when the source and destination buckets are in the - // same Amazon Web Services Region. Alternatively, for objects accessed through - // Amazon S3 on Outposts, specify the ARN of the object as accessed in the - // format arn:aws:s3-outposts:::outpost//object/. + // Access points only when the source and destination buckets are in the + // same Amazon Web Services Region. Access points are not supported by directory + // buckets. Alternatively, for objects accessed through Amazon S3 on Outposts, + // specify the ARN of the object as accessed in the format arn:aws:s3-outposts:::outpost//object/. // For example, to copy the object reports/january.pdf through outpost my-outpost // owned by account 123456789012 in Region us-west-2, use the URL encoding // of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. // The value must be URL-encoded. // - // To copy a specific version of an object, append ?versionId= to - // the value (for example, awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). - // If you don't specify a version ID, Amazon S3 copies the latest version of - // the source object. + // If your bucket has versioning enabled, you could have multiple versions of + // the same object. By default, x-amz-copy-source identifies the current version + // of the source object to copy. To copy a specific version of the source object + // to copy, append ?versionId= to the x-amz-copy-source request + // header (for example, x-amz-copy-source: /awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). + // + // If the current version is a delete marker and you don't specify a versionId + // in the x-amz-copy-source request header, Amazon S3 returns a 404 Not Found + // error, because the object does not exist. If you specify versionId in the + // x-amz-copy-source and the versionId is a delete marker, Amazon S3 returns + // an HTTP 400 Bad Request error, because you are not allowed to specify a delete + // marker as a version for the x-amz-copy-source. + // + // Directory buckets - S3 Versioning isn't enabled and supported for directory + // buckets. // // CopySource is a required field CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"` // Copies the object if its entity tag (ETag) matches the specified tag. + // + // If both of the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since + // headers are present in the request as follows: + // + // x-amz-copy-source-if-match condition evaluates to true, and; + // + // x-amz-copy-source-if-unmodified-since condition evaluates to false; + // + // Amazon S3 returns 200 OK and copies the data. CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"` // Copies the object if it has been modified since the specified time. + // + // If both of the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since + // headers are present in the request as follows: + // + // x-amz-copy-source-if-none-match condition evaluates to false, and; + // + // x-amz-copy-source-if-modified-since condition evaluates to true; + // + // Amazon S3 returns 412 Precondition Failed response code. CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp"` // Copies the object if its entity tag (ETag) is different than the specified // ETag. + // + // If both of the x-amz-copy-source-if-none-match and x-amz-copy-source-if-modified-since + // headers are present in the request as follows: + // + // x-amz-copy-source-if-none-match condition evaluates to false, and; + // + // x-amz-copy-source-if-modified-since condition evaluates to true; + // + // Amazon S3 returns 412 Precondition Failed response code. CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"` // Copies the object if it hasn't been modified since the specified time. + // + // If both of the x-amz-copy-source-if-match and x-amz-copy-source-if-unmodified-since + // headers are present in the request as follows: + // + // x-amz-copy-source-if-match condition evaluates to true, and; + // + // x-amz-copy-source-if-unmodified-since condition evaluates to false; + // + // Amazon S3 returns 200 OK and copies the data. CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp"` // The range of bytes to copy from the source object. The range value must use @@ -39721,12 +42826,18 @@ // Specifies the algorithm to use when decrypting the source object (for example, // AES256). + // + // This functionality is not supported when the source object is in a directory + // bucket. CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt // the source object. The encryption key provided in this header must be one // that was used when the source object was created. // + // This functionality is not supported when the source object is in a directory + // bucket. + // // CopySourceSSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UploadPartCopyInput's // String and GoString methods. @@ -39735,16 +42846,19 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported when the source object is in a directory + // bucket. CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"` - // The account ID of the expected destination bucket owner. If the destination - // bucket is owned by a different account, the request fails with the HTTP status - // code 403 Forbidden (access denied). + // The account ID of the expected destination bucket owner. If the account ID + // that you provide does not match the actual owner of the destination bucket, + // the request fails with the HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` - // The account ID of the expected source bucket owner. If the source bucket - // is owned by a different account, the request fails with the HTTP status code - // 403 Forbidden (access denied). + // The account ID of the expected source bucket owner. If the account ID that + // you provide does not match the actual owner of the source bucket, the request + // fails with the HTTP status code 403 Forbidden (access denied). ExpectedSourceBucketOwner *string `location:"header" locationName:"x-amz-source-expected-bucket-owner" type:"string"` // Object key for which the multipart upload was initiated. @@ -39760,15 +42874,19 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported when the destination bucket is a directory + // bucket. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -39778,6 +42896,9 @@ // header. This must be the same encryption key specified in the initiate multipart // upload request. // + // This functionality is not supported when the destination bucket is a directory + // bucket. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UploadPartCopyInput's // String and GoString methods. @@ -39786,6 +42907,9 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported when the destination bucket is a directory + // bucket. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Upload ID identifying the multipart upload whose part is being copied. @@ -40010,6 +43134,8 @@ // Indicates whether the multipart upload uses an S3 Bucket Key for server-side // encryption with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Container for all response elements. @@ -40017,32 +43143,46 @@ // The version of the source object that was copied, if you have enabled versioning // on the source bucket. + // + // This functionality is not supported when the source object is in a directory + // bucket. CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"` // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric + // If present, indicates the ID of the Key Management Service (KMS) symmetric // encryption customer managed key that was used for the object. // + // This functionality is not supported for directory buckets. + // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UploadPartCopyOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` } @@ -40120,30 +43260,44 @@ // The name of the bucket to which the multipart upload was initiated. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum or x-amz-trailer header sent. Otherwise, Amazon S3 fails the + // request with the HTTP status code 400 Bad Request. For more information, + // see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm @@ -40193,11 +43347,13 @@ // The base64-encoded 128-bit MD5 digest of the part data. This parameter is // auto-populated when using the command from the CLI. This parameter is required // if object lock parameters are specified. + // + // This functionality is not supported for directory buckets. ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // Object key for which the multipart upload was initiated. @@ -40213,15 +43369,18 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -40231,6 +43390,8 @@ // header. This must be the same encryption key specified in the initiate multipart // upload request. // + // This functionality is not supported for directory buckets. + // // SSECustomerKey is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UploadPartInput's // String and GoString methods. @@ -40239,6 +43400,8 @@ // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Upload ID identifying the multipart upload whose part is being uploaded. @@ -40441,37 +43604,47 @@ // Indicates whether the multipart upload uses an S3 Bucket Key for server-side // encryption with Key Management Service (KMS) keys (SSE-KMS). + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // The base64-encoded, 32-bit CRC32 checksum of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32 *string `location:"header" locationName:"x-amz-checksum-crc32" type:"string"` // The base64-encoded, 32-bit CRC32C checksum of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumCRC32C *string `location:"header" locationName:"x-amz-checksum-crc32c" type:"string"` // The base64-encoded, 160-bit SHA-1 digest of the object. This will only be - // present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // present if it was uploaded with the object. When you use the API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA1 *string `location:"header" locationName:"x-amz-checksum-sha1" type:"string"` // The base64-encoded, 256-bit SHA-256 digest of the object. This will only - // be present if it was uploaded with the object. With multipart uploads, this - // may not be a checksum value of the object. For more information about how - // checksums are calculated with multipart uploads, see Checking object integrity - // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) + // be present if it was uploaded with the object. When you use an API operation + // on an object that was uploaded using multipart uploads, this value may not + // be a direct checksum value of the full object. Instead, it's a calculation + // based on the checksum values of each individual part. For more information + // about how checksums are calculated with multipart uploads, see Checking object + // integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) // in the Amazon S3 User Guide. ChecksumSHA256 *string `location:"header" locationName:"x-amz-checksum-sha256" type:"string"` @@ -40480,28 +43653,39 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header confirming the encryption algorithm - // used. + // the response will include this header to confirm the encryption algorithm + // that's used. + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, - // the response will include this header to provide round-trip message integrity + // the response will include this header to provide the round-trip message integrity // verification of the customer-provided encryption key. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` - // If present, specifies the ID of the Key Management Service (KMS) symmetric - // encryption customer managed key was used for the object. + // If present, indicates the ID of the Key Management Service (KMS) symmetric + // encryption customer managed key that was used for the object. + // + // This functionality is not supported for directory buckets. // // SSEKMSKeyId is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by UploadPartOutput's // String and GoString methods. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon + // The server-side encryption algorithm used when you store this object in Amazon // S3 (for example, AES256, aws:kms). + // + // For directory buckets, only server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` } @@ -40885,6 +44069,8 @@ // If present, indicates that the requester was successfully charged for the // request. + // + // This functionality is not supported for directory buckets. RequestCharged *string `location:"header" locationName:"x-amz-fwd-header-x-amz-request-charged" type:"string" enum:"RequestCharged"` // Route prefix to the HTTP URL generated. @@ -41361,6 +44547,9 @@ // BucketLocationConstraintApSouth1 is a BucketLocationConstraint enum value BucketLocationConstraintApSouth1 = "ap-south-1" + // BucketLocationConstraintApSouth2 is a BucketLocationConstraint enum value + BucketLocationConstraintApSouth2 = "ap-south-2" + // BucketLocationConstraintApSoutheast1 is a BucketLocationConstraint enum value BucketLocationConstraintApSoutheast1 = "ap-southeast-1" @@ -41391,6 +44580,9 @@ // BucketLocationConstraintEuSouth1 is a BucketLocationConstraint enum value BucketLocationConstraintEuSouth1 = "eu-south-1" + // BucketLocationConstraintEuSouth2 is a BucketLocationConstraint enum value + BucketLocationConstraintEuSouth2 = "eu-south-2" + // BucketLocationConstraintEuWest1 is a BucketLocationConstraint enum value BucketLocationConstraintEuWest1 = "eu-west-1" @@ -41420,12 +44612,6 @@ // BucketLocationConstraintUsWest2 is a BucketLocationConstraint enum value BucketLocationConstraintUsWest2 = "us-west-2" - - // BucketLocationConstraintApSouth2 is a BucketLocationConstraint enum value - BucketLocationConstraintApSouth2 = "ap-south-2" - - // BucketLocationConstraintEuSouth2 is a BucketLocationConstraint enum value - BucketLocationConstraintEuSouth2 = "eu-south-2" ) // BucketLocationConstraint_Values returns all elements of the BucketLocationConstraint enum @@ -41437,6 +44623,7 @@ BucketLocationConstraintApNortheast2, BucketLocationConstraintApNortheast3, BucketLocationConstraintApSouth1, + BucketLocationConstraintApSouth2, BucketLocationConstraintApSoutheast1, BucketLocationConstraintApSoutheast2, BucketLocationConstraintApSoutheast3, @@ -41447,6 +44634,7 @@ BucketLocationConstraintEuCentral1, BucketLocationConstraintEuNorth1, BucketLocationConstraintEuSouth1, + BucketLocationConstraintEuSouth2, BucketLocationConstraintEuWest1, BucketLocationConstraintEuWest2, BucketLocationConstraintEuWest3, @@ -41457,8 +44645,6 @@ BucketLocationConstraintUsGovWest1, BucketLocationConstraintUsWest1, BucketLocationConstraintUsWest2, - BucketLocationConstraintApSouth2, - BucketLocationConstraintEuSouth2, } } @@ -41483,6 +44669,18 @@ } const ( + // BucketTypeDirectory is a BucketType enum value + BucketTypeDirectory = "Directory" +) + +// BucketType_Values returns all elements of the BucketType enum +func BucketType_Values() []string { + return []string{ + BucketTypeDirectory, + } +} + +const ( // BucketVersioningStatusEnabled is a BucketVersioningStatus enum value BucketVersioningStatusEnabled = "Enabled" @@ -41555,6 +44753,18 @@ } const ( + // DataRedundancySingleAvailabilityZone is a DataRedundancy enum value + DataRedundancySingleAvailabilityZone = "SingleAvailabilityZone" +) + +// DataRedundancy_Values returns all elements of the DataRedundancy enum +func DataRedundancy_Values() []string { + return []string{ + DataRedundancySingleAvailabilityZone, + } +} + +const ( // DeleteMarkerReplicationStatusEnabled is a DeleteMarkerReplicationStatus enum value DeleteMarkerReplicationStatusEnabled = "Enabled" @@ -41954,6 +45164,18 @@ } const ( + // LocationTypeAvailabilityZone is a LocationType enum value + LocationTypeAvailabilityZone = "AvailabilityZone" +) + +// LocationType_Values returns all elements of the LocationType enum +func LocationType_Values() []string { + return []string{ + LocationTypeAvailabilityZone, + } +} + +const ( // MFADeleteEnabled is a MFADelete enum value MFADeleteEnabled = "Enabled" @@ -42153,8 +45375,19 @@ // BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer // affect permissions. The bucket owner automatically owns and has full control // over every object in the bucket. The bucket only accepts PUT requests that -// don't specify an ACL or bucket owner full control ACLs, such as the bucket-owner-full-control -// canned ACL or an equivalent form of this ACL expressed in the XML format. +// don't specify an ACL or specify bucket owner full control ACLs (such as the +// predefined bucket-owner-full-control canned ACL or a custom ACL in XML format +// that grants the same permissions). +// +// By default, ObjectOwnership is set to BucketOwnerEnforced and ACLs are disabled. +// We recommend keeping ACLs disabled, except in uncommon use cases where you +// must control access for each object individually. For more information about +// S3 Object Ownership, see Controlling ownership of objects and disabling ACLs +// for your bucket (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) +// in the Amazon S3 User Guide. +// +// This functionality is not supported for directory buckets. Directory buckets +// use the bucket owner enforced setting for S3 Object Ownership. const ( // ObjectOwnershipBucketOwnerPreferred is a ObjectOwnership enum value ObjectOwnershipBucketOwnerPreferred = "BucketOwnerPreferred" @@ -42205,6 +45438,9 @@ // ObjectStorageClassSnow is a ObjectStorageClass enum value ObjectStorageClassSnow = "SNOW" + + // ObjectStorageClassExpressOnezone is a ObjectStorageClass enum value + ObjectStorageClassExpressOnezone = "EXPRESS_ONEZONE" ) // ObjectStorageClass_Values returns all elements of the ObjectStorageClass enum @@ -42220,6 +45456,7 @@ ObjectStorageClassOutposts, ObjectStorageClassGlacierIr, ObjectStorageClassSnow, + ObjectStorageClassExpressOnezone, } } @@ -42260,6 +45497,22 @@ } const ( + // PartitionDateSourceEventTime is a PartitionDateSource enum value + PartitionDateSourceEventTime = "EventTime" + + // PartitionDateSourceDeliveryTime is a PartitionDateSource enum value + PartitionDateSourceDeliveryTime = "DeliveryTime" +) + +// PartitionDateSource_Values returns all elements of the PartitionDateSource enum +func PartitionDateSource_Values() []string { + return []string{ + PartitionDateSourceEventTime, + PartitionDateSourceDeliveryTime, + } +} + +const ( // PayerRequester is a Payer enum value PayerRequester = "Requester" @@ -42379,6 +45632,9 @@ // ReplicationStatusReplica is a ReplicationStatus enum value ReplicationStatusReplica = "REPLICA" + + // ReplicationStatusCompleted is a ReplicationStatus enum value + ReplicationStatusCompleted = "COMPLETED" ) // ReplicationStatus_Values returns all elements of the ReplicationStatus enum @@ -42388,6 +45644,7 @@ ReplicationStatusPending, ReplicationStatusFailed, ReplicationStatusReplica, + ReplicationStatusCompleted, } } @@ -42409,6 +45666,8 @@ // If present, indicates that the requester was successfully charged for the // request. +// +// This functionality is not supported for directory buckets. const ( // RequestChargedRequester is a RequestCharged enum value RequestChargedRequester = "requester" @@ -42423,11 +45682,13 @@ // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either -// the source or destination Amazon S3 bucket has Requester Pays enabled, the -// requester will pay for corresponding charges to copy the object. For information -// about downloading objects from Requester Pays buckets, see Downloading Objects +// the source or destination S3 bucket has Requester Pays enabled, the requester +// will pay for corresponding charges to copy the object. For information about +// downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. +// +// This functionality is not supported for directory buckets. const ( // RequestPayerRequester is a RequestPayer enum value RequestPayerRequester = "requester" @@ -42473,6 +45734,22 @@ } const ( + // SessionModeReadOnly is a SessionMode enum value + SessionModeReadOnly = "ReadOnly" + + // SessionModeReadWrite is a SessionMode enum value + SessionModeReadWrite = "ReadWrite" +) + +// SessionMode_Values returns all elements of the SessionMode enum +func SessionMode_Values() []string { + return []string{ + SessionModeReadOnly, + SessionModeReadWrite, + } +} + +const ( // SseKmsEncryptedObjectsStatusEnabled is a SseKmsEncryptedObjectsStatus enum value SseKmsEncryptedObjectsStatusEnabled = "Enabled" @@ -42518,6 +45795,9 @@ // StorageClassSnow is a StorageClass enum value StorageClassSnow = "SNOW" + + // StorageClassExpressOnezone is a StorageClass enum value + StorageClassExpressOnezone = "EXPRESS_ONEZONE" ) // StorageClass_Values returns all elements of the StorageClass enum @@ -42533,6 +45813,7 @@ StorageClassOutposts, StorageClassGlacierIr, StorageClassSnow, + StorageClassExpressOnezone, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -25,6 +25,15 @@ // "InvalidObjectState". // // Object is archived and inaccessible until restored. + // + // If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval + // storage class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering + // Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier, + // before you can retrieve the object you must first restore a copy using RestoreObject + // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). + // Otherwise, this operation returns an InvalidObjectState error. For information + // about restoring archived objects, see Restoring Archived Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html) + // in the Amazon S3 User Guide. ErrCodeInvalidObjectState = "InvalidObjectState" // ErrCodeNoSuchBucket for service response error code diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -398,13 +398,13 @@ fmt.Println(result) } -// To delete an object (from a non-versioned bucket) -// The following example deletes an object from a non-versioned bucket. +// To delete an object +// The following example deletes an object from an S3 bucket. func ExampleS3_DeleteObject_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectInput{ - Bucket: aws.String("ExampleBucket"), - Key: aws.String("HappyFace.jpg"), + Bucket: aws.String("examplebucket"), + Key: aws.String("objectkey.jpg"), } result, err := svc.DeleteObject(input) @@ -425,13 +425,13 @@ fmt.Println(result) } -// To delete an object -// The following example deletes an object from an S3 bucket. +// To delete an object (from a non-versioned bucket) +// The following example deletes an object from a non-versioned bucket. func ExampleS3_DeleteObject_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("objectkey.jpg"), + Bucket: aws.String("ExampleBucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.DeleteObject(input) @@ -452,15 +452,15 @@ fmt.Println(result) } -// To remove tag set from an object -// The following example removes tag set associated with the specified object. If the -// bucket is versioning enabled, the operation removes tag set from the latest object -// version. +// To remove tag set from an object version +// The following example removes tag set associated with the specified object version. +// The request specifies both the object key and object version. func ExampleS3_DeleteObjectTagging_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), } result, err := svc.DeleteObjectTagging(input) @@ -481,15 +481,15 @@ fmt.Println(result) } -// To remove tag set from an object version -// The following example removes tag set associated with the specified object version. -// The request specifies both the object key and object version. +// To remove tag set from an object +// The following example removes tag set associated with the specified object. If the +// bucket is versioning enabled, the operation removes tag set from the latest object +// version. func ExampleS3_DeleteObjectTagging_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.DeleteObjectTagging(input) @@ -1748,16 +1748,15 @@ fmt.Println(result) } -// To upload an object -// The following example uploads an object to a versioning-enabled bucket. The source -// file is specified using Windows file syntax. S3 returns VersionId of the newly created -// object. +// To create an object. +// The following example creates an object. If the bucket is versioning enabled, S3 +// returns version ID in response. func ExampleS3_PutObject_shared00() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Key: aws.String("objectkey"), } result, err := svc.PutObject(input) @@ -1778,18 +1777,16 @@ fmt.Println(result) } -// To upload an object and specify server-side encryption and object tags -// The following example uploads an object. The request specifies the optional server-side -// encryption option. The request also specifies optional object tags. If the bucket -// is versioning enabled, S3 returns version ID in response. +// To upload an object +// The following example uploads an object to a versioning-enabled bucket. The source +// file is specified using Windows file syntax. S3 returns VersionId of the newly created +// object. func ExampleS3_PutObject_shared01() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - ServerSideEncryption: aws.String("AES256"), - Tagging: aws.String("key1=value1&key2=value2"), + Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.PutObject(input) @@ -1810,15 +1807,19 @@ fmt.Println(result) } -// To create an object. -// The following example creates an object. If the bucket is versioning enabled, S3 -// returns version ID in response. +// To upload object and specify user-defined metadata +// The following example creates an object. The request also specifies optional metadata. +// If the bucket is versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared02() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), Bucket: aws.String("examplebucket"), - Key: aws.String("objectkey"), + Key: aws.String("exampleobject"), + Metadata: map[string]*string{ + "metadata1": aws.String("value1"), + "metadata2": aws.String("value2"), + }, } result, err := svc.PutObject(input) @@ -1839,19 +1840,16 @@ fmt.Println(result) } -// To upload object and specify user-defined metadata -// The following example creates an object. The request also specifies optional metadata. -// If the bucket is versioning enabled, S3 returns version ID in response. +// To upload an object and specify optional tags +// The following example uploads an object. The request specifies optional object tags. +// The bucket is versioned, therefore S3 returns version ID of the newly created object. func ExampleS3_PutObject_shared03() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - Metadata: map[string]*string{ - "metadata1": aws.String("value1"), - "metadata2": aws.String("value2"), - }, + Body: aws.ReadSeekCloser(strings.NewReader("c:\\HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + Tagging: aws.String("key1=value1&key2=value2"), } result, err := svc.PutObject(input) @@ -1872,16 +1870,17 @@ fmt.Println(result) } -// To upload an object and specify optional tags -// The following example uploads an object. The request specifies optional object tags. -// The bucket is versioned, therefore S3 returns version ID of the newly created object. +// To upload an object (specify optional headers) +// The following example uploads an object. The request specifies optional request headers +// to directs S3 to use specific storage class and use server-side encryption. func ExampleS3_PutObject_shared04() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("c:\\HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - Tagging: aws.String("key1=value1&key2=value2"), + Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + ServerSideEncryption: aws.String("AES256"), + StorageClass: aws.String("STANDARD_IA"), } result, err := svc.PutObject(input) @@ -1902,17 +1901,18 @@ fmt.Println(result) } -// To upload an object and specify canned ACL. -// The following example uploads and object. The request specifies optional canned ACL -// (access control list) to all READ access to authenticated users. If the bucket is -// versioning enabled, S3 returns version ID in response. +// To upload an object and specify server-side encryption and object tags +// The following example uploads an object. The request specifies the optional server-side +// encryption option. The request also specifies optional object tags. If the bucket +// is versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared05() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - ACL: aws.String("authenticated-read"), - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("exampleobject"), + ServerSideEncryption: aws.String("AES256"), + Tagging: aws.String("key1=value1&key2=value2"), } result, err := svc.PutObject(input) @@ -1933,17 +1933,17 @@ fmt.Println(result) } -// To upload an object (specify optional headers) -// The following example uploads an object. The request specifies optional request headers -// to directs S3 to use specific storage class and use server-side encryption. +// To upload an object and specify canned ACL. +// The following example uploads and object. The request specifies optional canned ACL +// (access control list) to all READ access to authenticated users. If the bucket is +// versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared06() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - ServerSideEncryption: aws.String("AES256"), - StorageClass: aws.String("STANDARD_IA"), + ACL: aws.String("authenticated-read"), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("exampleobject"), } result, err := svc.PutObject(input) @@ -2104,18 +2104,17 @@ fmt.Println(result) } -// To upload a part by copying byte range from an existing object as data source -// The following example uploads a part of a multipart upload by copying a specified -// byte range from an existing object as data source. +// To upload a part by copying data from an existing object as data source +// The following example uploads a part of a multipart upload by copying data from an +// existing object as data source. func ExampleS3_UploadPartCopy_shared00() { svc := s3.New(session.New()) input := &s3.UploadPartCopyInput{ - Bucket: aws.String("examplebucket"), - CopySource: aws.String("/bucketname/sourceobjectkey"), - CopySourceRange: aws.String("bytes=1-100000"), - Key: aws.String("examplelargeobject"), - PartNumber: aws.Int64(2), - UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), + Bucket: aws.String("examplebucket"), + CopySource: aws.String("/bucketname/sourceobjectkey"), + Key: aws.String("examplelargeobject"), + PartNumber: aws.Int64(1), + UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), } result, err := svc.UploadPartCopy(input) @@ -2136,17 +2135,18 @@ fmt.Println(result) } -// To upload a part by copying data from an existing object as data source -// The following example uploads a part of a multipart upload by copying data from an -// existing object as data source. +// To upload a part by copying byte range from an existing object as data source +// The following example uploads a part of a multipart upload by copying a specified +// byte range from an existing object as data source. func ExampleS3_UploadPartCopy_shared01() { svc := s3.New(session.New()) input := &s3.UploadPartCopyInput{ - Bucket: aws.String("examplebucket"), - CopySource: aws.String("/bucketname/sourceobjectkey"), - Key: aws.String("examplelargeobject"), - PartNumber: aws.Int64(1), - UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), + Bucket: aws.String("examplebucket"), + CopySource: aws.String("/bucketname/sourceobjectkey"), + CopySourceRange: aws.String("bytes=1-100000"), + Key: aws.String("examplelargeobject"), + PartNumber: aws.Int64(2), + UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), } result, err := svc.UploadPartCopy(input) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/aes_cbc_content_cipher.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/aes_cbc_content_cipher.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/aes_cbc_content_cipher.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/aes_cbc_content_cipher.go 2023-12-06 19:28:18.000000000 +0000 @@ -17,7 +17,7 @@ // AESCBCContentCipherBuilder returns a new encryption only AES/CBC mode structure using the provided padder. The provided cipher data generator // will be used to provide keys for content encryption. // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func AESCBCContentCipherBuilder(generator CipherDataGenerator, padder Padder) ContentCipherBuilder { return cbcContentCipherBuilder{generator: generator, padder: padder} } @@ -31,7 +31,7 @@ // panic(err) // handle error // } // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func RegisterAESCBCContentCipher(registry *CryptoRegistry, padder Padder) error { if registry == nil { return errNilCryptoRegistry diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/aes_gcm_content_cipher.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/aes_gcm_content_cipher.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/aes_gcm_content_cipher.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/aes_gcm_content_cipher.go 2023-12-06 19:28:18.000000000 +0000 @@ -19,7 +19,7 @@ // will be fully loaded into memory before encryption or decryption can occur. Caution must be taken to avoid memory // allocation failures. // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func AESGCMContentCipherBuilder(generator CipherDataGenerator) ContentCipherBuilder { return gcmContentCipherBuilder{generator} } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/decryption_client.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/decryption_client.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/decryption_client.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/decryption_client.go 2023-12-06 19:28:18.000000000 +0000 @@ -25,7 +25,7 @@ // - AES/GCM // - AES/CBC // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. type DecryptionClient struct { S3Client s3iface.S3API // LoadStrategy is used to load the metadata either from the metadata of the object @@ -48,7 +48,7 @@ // // Custom client options here // })) // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func NewDecryptionClient(prov client.ConfigProvider, options ...func(*DecryptionClient)) *DecryptionClient { s3client := s3.New(prov) @@ -95,14 +95,14 @@ // }) // err := req.Send() // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func (c *DecryptionClient) GetObjectRequest(input *s3.GetObjectInput) (*request.Request, *s3.GetObjectOutput) { return getObjectRequest(c.getClientOptions(), input) } // GetObject is a wrapper for GetObjectRequest // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func (c *DecryptionClient) GetObject(input *s3.GetObjectInput) (*s3.GetObjectOutput, error) { return getObject(c.getClientOptions(), input) } @@ -115,7 +115,7 @@ // cause a panic. Use the Context to add deadlining, timeouts, etc. In the future // this may create sub-contexts for individual underlying requests. // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func (c *DecryptionClient) GetObjectWithContext(ctx aws.Context, input *s3.GetObjectInput, opts ...request.Option) (*s3.GetObjectOutput, error) { return getObjectWithContext(c.getClientOptions(), ctx, input, opts...) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/encryption_client.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/encryption_client.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/encryption_client.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/encryption_client.go 2023-12-06 19:28:18.000000000 +0000 @@ -18,7 +18,7 @@ // AES GCM will load all data into memory. However, the rest of the content algorithms // do not load the entire contents into memory. // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. type EncryptionClient struct { S3Client s3iface.S3API ContentCipherBuilder ContentCipherBuilder @@ -56,7 +56,7 @@ // handler := s3crypto.NewKMSKeyGenerator(kms.New(sess), cmkID) // svc := s3crypto.NewEncryptionClient(sess, s3crypto.AESGCMContentCipherBuilder(handler)) // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func NewEncryptionClient(prov client.ConfigProvider, builder ContentCipherBuilder, options ...func(*EncryptionClient)) *EncryptionClient { s3client := s3.New(prov) @@ -91,7 +91,7 @@ // }) // err := req.Send() // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func (c *EncryptionClient) PutObjectRequest(input *s3.PutObjectInput) (*request.Request, *s3.PutObjectOutput) { req, out := putObjectRequest(c.getClientOptions(), input) if err := validateV1EncryptionClientConstruction(c); err != nil { @@ -114,7 +114,7 @@ // PutObject is a wrapper for PutObjectRequest // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func (c *EncryptionClient) PutObject(input *s3.PutObjectInput) (*s3.PutObjectOutput, error) { if err := validateV1EncryptionClientConstruction(c); err != nil { return nil, err @@ -131,7 +131,7 @@ // this may create sub-contexts for individual underlying requests. // PutObject is a wrapper for PutObjectRequest // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func (c *EncryptionClient) PutObjectWithContext(ctx aws.Context, input *s3.PutObjectInput, opts ...request.Option) (*s3.PutObjectOutput, error) { if err := validateV1EncryptionClientConstruction(c); err != nil { return nil, err diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/envelope.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/envelope.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/envelope.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/envelope.go 2023-12-06 19:28:18.000000000 +0000 @@ -39,7 +39,7 @@ CEKAlg string `json:"x-amz-cek-alg"` TagLen string `json:"x-amz-tag-len"` - // deprecated: This MD5 hash is no longer populated + // Deprecated: This MD5 hash is no longer populated UnencryptedMD5 string `json:"-"` UnencryptedContentLen string `json:"x-amz-unencrypted-content-length"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/kms_key_handler.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/kms_key_handler.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3crypto/kms_key_handler.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3crypto/kms_key_handler.go 2023-12-06 19:28:18.000000000 +0000 @@ -33,7 +33,7 @@ // matdesc := s3crypto.MaterialDescription{} // handler := s3crypto.NewKMSKeyGenerator(kms.New(sess), cmkID) // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func NewKMSKeyGenerator(kmsClient kmsiface.KMSAPI, cmkID string) CipherDataGenerator { return NewKMSKeyGeneratorWithMatDesc(kmsClient, cmkID, MaterialDescription{}) } @@ -67,7 +67,7 @@ // matdesc := s3crypto.MaterialDescription{} // handler := s3crypto.NewKMSKeyGeneratorWithMatDesc(kms.New(sess), cmkID, matdesc) // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func NewKMSKeyGeneratorWithMatDesc(kmsClient kmsiface.KMSAPI, cmkID string, matdesc MaterialDescription) CipherDataGenerator { return newKMSKeyHandler(kmsClient, cmkID, matdesc) } @@ -84,7 +84,7 @@ // svc.WrapRegistry[s3crypto.KMSWrap] = decryptHandler // })) // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func NewKMSWrapEntry(kmsClient kmsiface.KMSAPI) WrapEntry { kp := newKMSWrapEntry(kmsClient) return kp.decryptHandler @@ -101,7 +101,7 @@ // panic(err) // handle error // } // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func RegisterKMSWrapWithCMK(registry *CryptoRegistry, client kmsiface.KMSAPI, cmkID string) error { if registry == nil { return errNilCryptoRegistry @@ -120,7 +120,7 @@ // panic(err) // handle error // } // -// deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. +// Deprecated: This feature is in maintenance mode, no new updates will be released. Please see https://docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information. func RegisterKMSWrapWithAnyCMK(registry *CryptoRegistry, client kmsiface.KMSAPI) error { if registry == nil { return errNilCryptoRegistry diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3iface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3iface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3iface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3iface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,10 @@ CreateMultipartUploadWithContext(aws.Context, *s3.CreateMultipartUploadInput, ...request.Option) (*s3.CreateMultipartUploadOutput, error) CreateMultipartUploadRequest(*s3.CreateMultipartUploadInput) (*request.Request, *s3.CreateMultipartUploadOutput) + CreateSession(*s3.CreateSessionInput) (*s3.CreateSessionOutput, error) + CreateSessionWithContext(aws.Context, *s3.CreateSessionInput, ...request.Option) (*s3.CreateSessionOutput, error) + CreateSessionRequest(*s3.CreateSessionInput) (*request.Request, *s3.CreateSessionOutput) + DeleteBucket(*s3.DeleteBucketInput) (*s3.DeleteBucketOutput, error) DeleteBucketWithContext(aws.Context, *s3.DeleteBucketInput, ...request.Option) (*s3.DeleteBucketOutput, error) DeleteBucketRequest(*s3.DeleteBucketInput) (*request.Request, *s3.DeleteBucketOutput) @@ -300,6 +304,13 @@ ListBucketsWithContext(aws.Context, *s3.ListBucketsInput, ...request.Option) (*s3.ListBucketsOutput, error) ListBucketsRequest(*s3.ListBucketsInput) (*request.Request, *s3.ListBucketsOutput) + ListDirectoryBuckets(*s3.ListDirectoryBucketsInput) (*s3.ListDirectoryBucketsOutput, error) + ListDirectoryBucketsWithContext(aws.Context, *s3.ListDirectoryBucketsInput, ...request.Option) (*s3.ListDirectoryBucketsOutput, error) + ListDirectoryBucketsRequest(*s3.ListDirectoryBucketsInput) (*request.Request, *s3.ListDirectoryBucketsOutput) + + ListDirectoryBucketsPages(*s3.ListDirectoryBucketsInput, func(*s3.ListDirectoryBucketsOutput, bool) bool) error + ListDirectoryBucketsPagesWithContext(aws.Context, *s3.ListDirectoryBucketsInput, func(*s3.ListDirectoryBucketsOutput, bool) bool, ...request.Option) error + ListMultipartUploads(*s3.ListMultipartUploadsInput) (*s3.ListMultipartUploadsOutput, error) ListMultipartUploadsWithContext(aws.Context, *s3.ListMultipartUploadsInput, ...request.Option) (*s3.ListMultipartUploadsOutput, error) ListMultipartUploadsRequest(*s3.ListMultipartUploadsInput) (*request.Request, *s3.ListMultipartUploadsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3manager/upload_input.go golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3manager/upload_input.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3/s3manager/upload_input.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3/s3manager/upload_input.go 2023-12-06 19:28:18.000000000 +0000 @@ -23,9 +23,32 @@ _ struct{} `locationName:"PutObjectRequest" type:"structure" payload:"Body"` // The canned ACL to apply to the object. For more information, see Canned ACL - // (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL). + // (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL) + // in the Amazon S3 User Guide. + // + // When adding a new object, you can use headers to grant ACL-based permissions + // to individual Amazon Web Services accounts or to predefined groups defined + // by Amazon S3. These permissions are then added to the ACL on the object. + // By default, all objects are private. Only the owner has full access control. + // For more information, see Access Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html) + // and Managing ACLs Using the REST API (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html) + // in the Amazon S3 User Guide. + // + // If the bucket that you're uploading objects to uses the bucket owner enforced + // setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. + // Buckets that use this setting only accept PUT requests that don't specify + // an ACL or PUT requests that specify bucket owner full control ACLs, such + // as the bucket-owner-full-control canned ACL or an equivalent form of this + // ACL expressed in the XML format. PUT requests that contain other ACLs (for + // example, custom grants to certain Amazon Web Services accounts) fail and + // return a 400 error with the error code AccessControlListNotSupported. For + // more information, see Controlling ownership of objects and disabling ACLs + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) + // in the Amazon S3 User Guide. + // + // * This functionality is not supported for directory buckets. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for Amazon S3 on Outposts. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` // The readable body payload to send to S3. @@ -33,19 +56,33 @@ // The bucket name to which the PUT action was initiated. // - // When using this action with an access point, you must direct requests to - // the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + // Directory buckets - When you use this operation with a directory bucket, + // you must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. + // Path-style requests are not supported. Directory bucket names must be unique + // in the chosen Availability Zone. Bucket names must follow the format bucket_base_name--az-id--x-s3 + // (for example, DOC-EXAMPLE-BUCKET--usw2-az2--x-s3). For information about + // bucket naming restrictions, see Directory bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html) + // in the Amazon S3 User Guide. + // + // Access points - When you use this action with an access point, you must provide + // the alias of the access point in place of the bucket name or specify the + // access point ARN. When using the access point ARN, you must direct requests + // to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. // When using this action with an access point through the Amazon Web Services // SDKs, you provide the access point ARN in place of the bucket name. For more // information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) // in the Amazon S3 User Guide. // - // When you use this action with Amazon S3 on Outposts, you must direct requests - // to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form - // AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When - // you use this action with S3 on Outposts through the Amazon Web Services SDKs, - // you provide the Outposts access point ARN in place of the bucket name. For - // more information about S3 on Outposts ARNs, see What is S3 on Outposts? (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) + // Access points and Object Lambda access points are not supported by directory + // buckets. + // + // S3 on Outposts - When you use this action with Amazon S3 on Outposts, you + // must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname + // takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + // When you use this action with S3 on Outposts through the Amazon Web Services + // SDKs, you provide the Outposts access point ARN in place of the bucket name. + // For more information about S3 on Outposts ARNs, see What is S3 on Outposts? + // (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // // Bucket is a required field @@ -58,6 +95,8 @@ // // Specifying this header with a PUT action doesn’t affect bucket-level settings // for S3 Bucket Key. + // + // This functionality is not supported for directory buckets. BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` // Can be used to specify caching behavior along the request/reply chain. For @@ -65,16 +104,33 @@ // (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9). CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` - // Indicates the algorithm used to create the checksum for the object when using - // the SDK. This header will not provide any additional functionality if not - // using the SDK. When sending this header, there must be a corresponding x-amz-checksum - // or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with - // the HTTP status code 400 Bad Request. For more information, see Checking - // object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) + // Indicates the algorithm used to create the checksum for the object when you + // use the SDK. This header will not provide any additional functionality if + // you don't use the SDK. When you send this header, there must be a corresponding + // x-amz-checksum-algorithm or x-amz-trailer header sent. Otherwise, Amazon + // S3 fails the request with the HTTP status code 400 Bad Request. + // + // For the x-amz-checksum-algorithm header, replace algorithm with the supported + // algorithm from the following list: + // + // * CRC32 + // + // * CRC32C + // + // * SHA1 + // + // * SHA256 + // + // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. // - // If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm - // parameter. + // If the individual checksum value you provide through x-amz-checksum-algorithm + // doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, + // Amazon S3 ignores any provided ChecksumAlgorithm parameter and uses the checksum + // algorithm that matches the provided value in x-amz-checksum-algorithm . + // + // For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the + // default checksum algorithm that's used for performance. // // The AWS SDK for Go v1 does not support automatic computing request payload // checksum. This feature is available in the AWS SDK for Go v2. If a value @@ -130,6 +186,13 @@ // integrity check. For more information about REST request authentication, // see REST Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html). // + // The Content-MD5 header is required for any request to upload an object with + // a retention period configured using Amazon S3 Object Lock. For more information + // about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. + // // If the ContentMD5 is provided for a multipart upload, it will be ignored. // Objects that will be uploaded in a single part, the ContentMD5 will be used. ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"` @@ -138,9 +201,9 @@ // see https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type (https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type). ContentType *string `location:"header" locationName:"Content-Type" type:"string"` - // The account ID of the expected bucket owner. If the bucket is owned by a - // different account, the request fails with the HTTP status code 403 Forbidden - // (access denied). + // The account ID of the expected bucket owner. If the account ID that you provide + // does not match the actual owner of the bucket, the request fails with the + // HTTP status code 403 Forbidden (access denied). ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"` // The date and time at which the object is no longer cacheable. For more information, @@ -149,22 +212,30 @@ // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. // - // This action is not supported by Amazon S3 on Outposts. + // * This functionality is not supported for directory buckets. + // + // * This functionality is not supported for Amazon S3 on Outposts. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Object key for which the PUT action was initiated. @@ -176,27 +247,37 @@ Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Specifies whether a legal hold will be applied to this object. For more information - // about S3 Object Lock, see Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). + // about S3 Object Lock, see Object Lock (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. ObjectLockLegalHoldStatus *string `location:"header" locationName:"x-amz-object-lock-legal-hold" type:"string" enum:"ObjectLockLegalHoldStatus"` // The Object Lock mode that you want to apply to this object. + // + // This functionality is not supported for directory buckets. ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"` // The date and time when you want this object's Object Lock to expire. Must // be formatted as a timestamp parameter. + // + // This functionality is not supported for directory buckets. ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"` // Confirms that the requester knows that they will be charged for the request. // Bucket owners need not specify this parameter in their requests. If either - // the source or destination Amazon S3 bucket has Requester Pays enabled, the - // requester will pay for corresponding charges to copy the object. For information - // about downloading objects from Requester Pays buckets, see Downloading Objects + // the source or destination S3 bucket has Requester Pays enabled, the requester + // will pay for corresponding charges to copy the object. For information about + // downloading objects from Requester Pays buckets, see Downloading Objects // in Requester Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` - // Specifies the algorithm to use to when encrypting the object (for example, - // AES256). + // Specifies the algorithm to use when encrypting the object (for example, AES256). + // + // This functionality is not supported for directory buckets. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting @@ -204,18 +285,25 @@ // S3 does not store the encryption key. The key must be appropriate for use // with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm // header. + // + // This functionality is not supported for directory buckets. SSECustomerKey *string `marshal-as:"blob" location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure that the // encryption key was transmitted without error. + // + // This functionality is not supported for directory buckets. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the Amazon Web Services KMS Encryption Context to use for object // encryption. The value of this header is a base64-encoded UTF-8 string holding // JSON with the encryption context key-value pairs. This value is stored as // object metadata and automatically gets passed on to Amazon Web Services KMS - // for future GetObject or CopyObject operations on this object. + // for future GetObject or CopyObject operations on this object. This value + // must be explicitly added during CopyObject operations. + // + // This functionality is not supported for directory buckets. SSEKMSEncryptionContext *string `location:"header" locationName:"x-amz-server-side-encryption-context" type:"string" sensitive:"true"` // If x-amz-server-side-encryption has a valid value of aws:kms or aws:kms:dsse, @@ -226,28 +314,51 @@ // uses the Amazon Web Services managed key (aws/s3) to protect the data. If // the KMS key does not exist in the same account that's issuing the command, // you must use the full ARN and not just the ID. + // + // This functionality is not supported for directory buckets. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"` - // The server-side encryption algorithm used when storing this object in Amazon - // S3 (for example, AES256, aws:kms, aws:kms:dsse). + // The server-side encryption algorithm that was used when you store this object + // in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse). + // + // General purpose buckets - You have four mutually exclusive options to protect + // data using server-side encryption in Amazon S3, depending on how you choose + // to manage the encryption keys. Specifically, the encryption key options are + // Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or + // DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with + // server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. + // You can optionally tell Amazon S3 to encrypt data at rest by using server-side + // encryption with other key options. For more information, see Using Server-Side + // Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html) + // in the Amazon S3 User Guide. + // + // Directory buckets - For directory buckets, only the server-side encryption + // with Amazon S3 managed keys (SSE-S3) (AES256) value is supported. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // By default, Amazon S3 uses the STANDARD Storage Class to store newly created // objects. The STANDARD storage class provides high durability and high availability. // Depending on performance needs, you can specify a different Storage Class. - // Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information, - // see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) + // For more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html) // in the Amazon S3 User Guide. + // + // * For directory buckets, only the S3 Express One Zone storage class is + // supported to store newly created objects. + // + // * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // The tag-set for the object. The tag-set must be encoded as URL Query parameters. // (For example, "Key1=Value1") + // + // This functionality is not supported for directory buckets. Tagging *string `location:"header" locationName:"x-amz-tagging" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. For information about object - // metadata, see Object Key and Metadata (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html). + // metadata, see Object Key and Metadata (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html) + // in the Amazon S3 User Guide. // // In the following example, the request header sets the redirect to an object // (anotherPage.html) in the same bucket: @@ -261,6 +372,9 @@ // // For more information about website hosting in Amazon S3, see Hosting Websites // on Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) - // and How to Configure Website Page Redirects (https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html). + // and How to Configure Website Page Redirects (https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html) + // in the Amazon S3 User Guide. + // + // This functionality is not supported for directory buckets. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3control/api.go golang-github-aws-aws-sdk-go-1.48.14/service/s3control/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3control/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3control/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -15,6 +15,390 @@ "github.com/aws/aws-sdk-go/private/protocol/restxml" ) +const opAssociateAccessGrantsIdentityCenter = "AssociateAccessGrantsIdentityCenter" + +// AssociateAccessGrantsIdentityCenterRequest generates a "aws/request.Request" representing the +// client's request for the AssociateAccessGrantsIdentityCenter 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 AssociateAccessGrantsIdentityCenter for more information on using the AssociateAccessGrantsIdentityCenter +// 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 AssociateAccessGrantsIdentityCenterRequest method. +// req, resp := client.AssociateAccessGrantsIdentityCenterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/AssociateAccessGrantsIdentityCenter +func (c *S3Control) AssociateAccessGrantsIdentityCenterRequest(input *AssociateAccessGrantsIdentityCenterInput) (req *request.Request, output *AssociateAccessGrantsIdentityCenterOutput) { + op := &request.Operation{ + Name: opAssociateAccessGrantsIdentityCenter, + HTTPMethod: "POST", + HTTPPath: "/v20180820/accessgrantsinstance/identitycenter", + } + + if input == nil { + input = &AssociateAccessGrantsIdentityCenterInput{} + } + + output = &AssociateAccessGrantsIdentityCenterOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// AssociateAccessGrantsIdentityCenter API operation for AWS S3 Control. +// +// Associate your S3 Access Grants instance with an Amazon Web Services IAM +// Identity Center instance. Use this action if you want to create access grants +// for users or groups from your corporate identity directory. First, you must +// add your corporate identity directory to Amazon Web Services IAM Identity +// Center. Then, you can associate this IAM Identity Center instance with your +// S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:AssociateAccessGrantsIdentityCenter permission to use +// this operation. +// +// # Additional Permissions +// +// You must also have the following permissions: sso:CreateApplication, sso:PutApplicationGrant, +// and sso:PutApplicationAuthenticationMethod. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation AssociateAccessGrantsIdentityCenter for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/AssociateAccessGrantsIdentityCenter +func (c *S3Control) AssociateAccessGrantsIdentityCenter(input *AssociateAccessGrantsIdentityCenterInput) (*AssociateAccessGrantsIdentityCenterOutput, error) { + req, out := c.AssociateAccessGrantsIdentityCenterRequest(input) + return out, req.Send() +} + +// AssociateAccessGrantsIdentityCenterWithContext is the same as AssociateAccessGrantsIdentityCenter with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateAccessGrantsIdentityCenter 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 *S3Control) AssociateAccessGrantsIdentityCenterWithContext(ctx aws.Context, input *AssociateAccessGrantsIdentityCenterInput, opts ...request.Option) (*AssociateAccessGrantsIdentityCenterOutput, error) { + req, out := c.AssociateAccessGrantsIdentityCenterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAccessGrant = "CreateAccessGrant" + +// CreateAccessGrantRequest generates a "aws/request.Request" representing the +// client's request for the CreateAccessGrant 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 CreateAccessGrant for more information on using the CreateAccessGrant +// 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 CreateAccessGrantRequest method. +// req, resp := client.CreateAccessGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessGrant +func (c *S3Control) CreateAccessGrantRequest(input *CreateAccessGrantInput) (req *request.Request, output *CreateAccessGrantOutput) { + op := &request.Operation{ + Name: opCreateAccessGrant, + HTTPMethod: "POST", + HTTPPath: "/v20180820/accessgrantsinstance/grant", + } + + if input == nil { + input = &CreateAccessGrantInput{} + } + + output = &CreateAccessGrantOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// CreateAccessGrant API operation for AWS S3 Control. +// +// Creates an access grant that gives a grantee access to your S3 data. The +// grantee can be an IAM user or role or a directory user, or group. Before +// you can create a grant, you must have an S3 Access Grants instance in the +// same Region as the S3 data. You can create an S3 Access Grants instance using +// the CreateAccessGrantsInstance (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessGrantsInstance.html). +// You must also have registered at least one S3 data location in your S3 Access +// Grants instance using CreateAccessGrantsLocation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessGrantsLocation.html). +// +// # Permissions +// +// You must have the s3:CreateAccessGrant permission to use this operation. +// +// # Additional Permissions +// +// For any directory identity - sso:DescribeInstance and sso:DescribeApplication +// +// For directory users - identitystore:DescribeUser +// +// For directory groups - identitystore:DescribeGroup +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation CreateAccessGrant for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessGrant +func (c *S3Control) CreateAccessGrant(input *CreateAccessGrantInput) (*CreateAccessGrantOutput, error) { + req, out := c.CreateAccessGrantRequest(input) + return out, req.Send() +} + +// CreateAccessGrantWithContext is the same as CreateAccessGrant with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAccessGrant 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 *S3Control) CreateAccessGrantWithContext(ctx aws.Context, input *CreateAccessGrantInput, opts ...request.Option) (*CreateAccessGrantOutput, error) { + req, out := c.CreateAccessGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAccessGrantsInstance = "CreateAccessGrantsInstance" + +// CreateAccessGrantsInstanceRequest generates a "aws/request.Request" representing the +// client's request for the CreateAccessGrantsInstance 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 CreateAccessGrantsInstance for more information on using the CreateAccessGrantsInstance +// 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 CreateAccessGrantsInstanceRequest method. +// req, resp := client.CreateAccessGrantsInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessGrantsInstance +func (c *S3Control) CreateAccessGrantsInstanceRequest(input *CreateAccessGrantsInstanceInput) (req *request.Request, output *CreateAccessGrantsInstanceOutput) { + op := &request.Operation{ + Name: opCreateAccessGrantsInstance, + HTTPMethod: "POST", + HTTPPath: "/v20180820/accessgrantsinstance", + } + + if input == nil { + input = &CreateAccessGrantsInstanceInput{} + } + + output = &CreateAccessGrantsInstanceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// CreateAccessGrantsInstance API operation for AWS S3 Control. +// +// Creates an S3 Access Grants instance, which serves as a logical grouping +// for access grants. You can create one S3 Access Grants instance per Region +// per account. +// +// # Permissions +// +// You must have the s3:CreateAccessGrantsInstance permission to use this operation. +// +// # Additional Permissions +// +// To associate an IAM Identity Center instance with your S3 Access Grants instance, +// you must also have the sso:DescribeInstance, sso:CreateApplication, sso:PutApplicationGrant, +// and sso:PutApplicationAuthenticationMethod permissions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation CreateAccessGrantsInstance for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessGrantsInstance +func (c *S3Control) CreateAccessGrantsInstance(input *CreateAccessGrantsInstanceInput) (*CreateAccessGrantsInstanceOutput, error) { + req, out := c.CreateAccessGrantsInstanceRequest(input) + return out, req.Send() +} + +// CreateAccessGrantsInstanceWithContext is the same as CreateAccessGrantsInstance with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAccessGrantsInstance 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 *S3Control) CreateAccessGrantsInstanceWithContext(ctx aws.Context, input *CreateAccessGrantsInstanceInput, opts ...request.Option) (*CreateAccessGrantsInstanceOutput, error) { + req, out := c.CreateAccessGrantsInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAccessGrantsLocation = "CreateAccessGrantsLocation" + +// CreateAccessGrantsLocationRequest generates a "aws/request.Request" representing the +// client's request for the CreateAccessGrantsLocation 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 CreateAccessGrantsLocation for more information on using the CreateAccessGrantsLocation +// 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 CreateAccessGrantsLocationRequest method. +// req, resp := client.CreateAccessGrantsLocationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessGrantsLocation +func (c *S3Control) CreateAccessGrantsLocationRequest(input *CreateAccessGrantsLocationInput) (req *request.Request, output *CreateAccessGrantsLocationOutput) { + op := &request.Operation{ + Name: opCreateAccessGrantsLocation, + HTTPMethod: "POST", + HTTPPath: "/v20180820/accessgrantsinstance/location", + } + + if input == nil { + input = &CreateAccessGrantsLocationInput{} + } + + output = &CreateAccessGrantsLocationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// CreateAccessGrantsLocation API operation for AWS S3 Control. +// +// The S3 data location that you would like to register in your S3 Access Grants +// instance. Your S3 data must be in the same Region as your S3 Access Grants +// instance. The location can be one of the following: +// +// - The default S3 location s3:// +// +// - A bucket - S3:// +// +// - A bucket and prefix - S3:/// +// +// When you register a location, you must include the IAM role that has permission +// to manage the S3 location that you are registering. Give S3 Access Grants +// permission to assume this role using a policy (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-location.html). +// S3 Access Grants assumes this role to manage access to the location and to +// vend temporary credentials to grantees or client applications. +// +// # Permissions +// +// You must have the s3:CreateAccessGrantsLocation permission to use this operation. +// +// # Additional Permissions +// +// You must also have the following permission for the specified IAM role: iam:PassRole +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation CreateAccessGrantsLocation for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessGrantsLocation +func (c *S3Control) CreateAccessGrantsLocation(input *CreateAccessGrantsLocationInput) (*CreateAccessGrantsLocationOutput, error) { + req, out := c.CreateAccessGrantsLocationRequest(input) + return out, req.Send() +} + +// CreateAccessGrantsLocationWithContext is the same as CreateAccessGrantsLocation with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAccessGrantsLocation 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 *S3Control) CreateAccessGrantsLocationWithContext(ctx aws.Context, input *CreateAccessGrantsLocationInput, opts ...request.Option) (*CreateAccessGrantsLocationOutput, error) { + req, out := c.CreateAccessGrantsLocationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateAccessPoint = "CreateAccessPoint" // CreateAccessPointRequest generates a "aws/request.Request" representing the @@ -63,6 +447,8 @@ // CreateAccessPoint API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Creates an access point and associates it with the specified bucket. For // more information, see Managing Data Access with Amazon S3 Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html) // in the Amazon S3 User Guide. @@ -162,6 +548,8 @@ // CreateAccessPointForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Creates an Object Lambda Access Point. For more information, see Transforming // objects with Object Lambda Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html) // in the Amazon S3 User Guide. @@ -371,12 +759,18 @@ // CreateJob API operation for AWS S3 Control. // +// This operation creates an S3 Batch Operations job. +// // You can use S3 Batch Operations to perform large-scale batch actions on Amazon // S3 objects. Batch Operations can run a single action on lists of Amazon S3 // objects that you specify. For more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // -// This action creates a S3 Batch Operations job. +// # Permissions +// +// For information about permissions required to use the Batch Operations, see +// Granting permissions for S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html) +// in the Amazon S3 User Guide. // // Related actions include: // @@ -478,6 +872,8 @@ // CreateMultiRegionAccessPoint API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Creates a Multi-Region Access Point and associates it with the specified // buckets. For more information about creating Multi-Region Access Points, // see Creating Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html) @@ -530,6 +926,451 @@ return out, req.Send() } +const opCreateStorageLensGroup = "CreateStorageLensGroup" + +// CreateStorageLensGroupRequest generates a "aws/request.Request" representing the +// client's request for the CreateStorageLensGroup 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 CreateStorageLensGroup for more information on using the CreateStorageLensGroup +// 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 CreateStorageLensGroupRequest method. +// req, resp := client.CreateStorageLensGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateStorageLensGroup +func (c *S3Control) CreateStorageLensGroupRequest(input *CreateStorageLensGroupInput) (req *request.Request, output *CreateStorageLensGroupOutput) { + op := &request.Operation{ + Name: opCreateStorageLensGroup, + HTTPMethod: "POST", + HTTPPath: "/v20180820/storagelensgroup", + } + + if input == nil { + input = &CreateStorageLensGroupInput{} + } + + output = &CreateStorageLensGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CreateStorageLensGroup API operation for AWS S3 Control. +// +// Creates a new S3 Storage Lens group and associates it with the specified +// Amazon Web Services account ID. An S3 Storage Lens group is a custom grouping +// of objects based on prefix, suffix, object tags, object size, object age, +// or a combination of these filters. For each Storage Lens group that you’ve +// created, you can also optionally add Amazon Web Services resource tags. For +// more information about S3 Storage Lens groups, see Working with S3 Storage +// Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups-overview.html). +// +// To use this operation, you must have the permission to perform the s3:CreateStorageLensGroup +// action. If you’re trying to create a Storage Lens group with Amazon Web +// Services resource tags, you must also have permission to perform the s3:TagResource +// action. For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about Storage Lens groups errors, see List of Amazon S3 Storage +// Lens error codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation CreateStorageLensGroup for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateStorageLensGroup +func (c *S3Control) CreateStorageLensGroup(input *CreateStorageLensGroupInput) (*CreateStorageLensGroupOutput, error) { + req, out := c.CreateStorageLensGroupRequest(input) + return out, req.Send() +} + +// CreateStorageLensGroupWithContext is the same as CreateStorageLensGroup with the addition of +// the ability to pass a context and additional request options. +// +// See CreateStorageLensGroup 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 *S3Control) CreateStorageLensGroupWithContext(ctx aws.Context, input *CreateStorageLensGroupInput, opts ...request.Option) (*CreateStorageLensGroupOutput, error) { + req, out := c.CreateStorageLensGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAccessGrant = "DeleteAccessGrant" + +// DeleteAccessGrantRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAccessGrant 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 DeleteAccessGrant for more information on using the DeleteAccessGrant +// 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 DeleteAccessGrantRequest method. +// req, resp := client.DeleteAccessGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrant +func (c *S3Control) DeleteAccessGrantRequest(input *DeleteAccessGrantInput) (req *request.Request, output *DeleteAccessGrantOutput) { + op := &request.Operation{ + Name: opDeleteAccessGrant, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/accessgrantsinstance/grant/{id}", + } + + if input == nil { + input = &DeleteAccessGrantInput{} + } + + output = &DeleteAccessGrantOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DeleteAccessGrant API operation for AWS S3 Control. +// +// Deletes the access grant from the S3 Access Grants instance. You cannot undo +// an access grant deletion and the grantee will no longer have access to the +// S3 data. +// +// # Permissions +// +// You must have the s3:DeleteAccessGrant permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DeleteAccessGrant for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrant +func (c *S3Control) DeleteAccessGrant(input *DeleteAccessGrantInput) (*DeleteAccessGrantOutput, error) { + req, out := c.DeleteAccessGrantRequest(input) + return out, req.Send() +} + +// DeleteAccessGrantWithContext is the same as DeleteAccessGrant with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAccessGrant 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 *S3Control) DeleteAccessGrantWithContext(ctx aws.Context, input *DeleteAccessGrantInput, opts ...request.Option) (*DeleteAccessGrantOutput, error) { + req, out := c.DeleteAccessGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAccessGrantsInstance = "DeleteAccessGrantsInstance" + +// DeleteAccessGrantsInstanceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAccessGrantsInstance 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 DeleteAccessGrantsInstance for more information on using the DeleteAccessGrantsInstance +// 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 DeleteAccessGrantsInstanceRequest method. +// req, resp := client.DeleteAccessGrantsInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrantsInstance +func (c *S3Control) DeleteAccessGrantsInstanceRequest(input *DeleteAccessGrantsInstanceInput) (req *request.Request, output *DeleteAccessGrantsInstanceOutput) { + op := &request.Operation{ + Name: opDeleteAccessGrantsInstance, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/accessgrantsinstance", + } + + if input == nil { + input = &DeleteAccessGrantsInstanceInput{} + } + + output = &DeleteAccessGrantsInstanceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DeleteAccessGrantsInstance API operation for AWS S3 Control. +// +// Deletes your S3 Access Grants instance. You must first delete the access +// grants and locations before S3 Access Grants can delete the instance. See +// DeleteAccessGrant (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessGrant.html) +// and DeleteAccessGrantsLocation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessGrantsLocation.html). +// If you have associated an IAM Identity Center instance with your S3 Access +// Grants instance, you must first dissassociate the Identity Center instance +// from the S3 Access Grants instance before you can delete the S3 Access Grants +// instance. See AssociateAccessGrantsIdentityCenter (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_AssociateAccessGrantsIdentityCenter.html) +// and DissociateAccessGrantsIdentityCenter (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DissociateAccessGrantsIdentityCenter.html). +// +// # Permissions +// +// You must have the s3:DeleteAccessGrantsInstance permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DeleteAccessGrantsInstance for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrantsInstance +func (c *S3Control) DeleteAccessGrantsInstance(input *DeleteAccessGrantsInstanceInput) (*DeleteAccessGrantsInstanceOutput, error) { + req, out := c.DeleteAccessGrantsInstanceRequest(input) + return out, req.Send() +} + +// DeleteAccessGrantsInstanceWithContext is the same as DeleteAccessGrantsInstance with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAccessGrantsInstance 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 *S3Control) DeleteAccessGrantsInstanceWithContext(ctx aws.Context, input *DeleteAccessGrantsInstanceInput, opts ...request.Option) (*DeleteAccessGrantsInstanceOutput, error) { + req, out := c.DeleteAccessGrantsInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAccessGrantsInstanceResourcePolicy = "DeleteAccessGrantsInstanceResourcePolicy" + +// DeleteAccessGrantsInstanceResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAccessGrantsInstanceResourcePolicy 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 DeleteAccessGrantsInstanceResourcePolicy for more information on using the DeleteAccessGrantsInstanceResourcePolicy +// 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 DeleteAccessGrantsInstanceResourcePolicyRequest method. +// req, resp := client.DeleteAccessGrantsInstanceResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrantsInstanceResourcePolicy +func (c *S3Control) DeleteAccessGrantsInstanceResourcePolicyRequest(input *DeleteAccessGrantsInstanceResourcePolicyInput) (req *request.Request, output *DeleteAccessGrantsInstanceResourcePolicyOutput) { + op := &request.Operation{ + Name: opDeleteAccessGrantsInstanceResourcePolicy, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/accessgrantsinstance/resourcepolicy", + } + + if input == nil { + input = &DeleteAccessGrantsInstanceResourcePolicyInput{} + } + + output = &DeleteAccessGrantsInstanceResourcePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DeleteAccessGrantsInstanceResourcePolicy API operation for AWS S3 Control. +// +// Deletes the resource policy of the S3 Access Grants instance. The resource +// policy is used to manage cross-account access to your S3 Access Grants instance. +// By deleting the resource policy, you delete any cross-account permissions +// to your S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:DeleteAccessGrantsInstanceResourcePolicy permission +// to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DeleteAccessGrantsInstanceResourcePolicy for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrantsInstanceResourcePolicy +func (c *S3Control) DeleteAccessGrantsInstanceResourcePolicy(input *DeleteAccessGrantsInstanceResourcePolicyInput) (*DeleteAccessGrantsInstanceResourcePolicyOutput, error) { + req, out := c.DeleteAccessGrantsInstanceResourcePolicyRequest(input) + return out, req.Send() +} + +// DeleteAccessGrantsInstanceResourcePolicyWithContext is the same as DeleteAccessGrantsInstanceResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAccessGrantsInstanceResourcePolicy 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 *S3Control) DeleteAccessGrantsInstanceResourcePolicyWithContext(ctx aws.Context, input *DeleteAccessGrantsInstanceResourcePolicyInput, opts ...request.Option) (*DeleteAccessGrantsInstanceResourcePolicyOutput, error) { + req, out := c.DeleteAccessGrantsInstanceResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAccessGrantsLocation = "DeleteAccessGrantsLocation" + +// DeleteAccessGrantsLocationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAccessGrantsLocation 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 DeleteAccessGrantsLocation for more information on using the DeleteAccessGrantsLocation +// 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 DeleteAccessGrantsLocationRequest method. +// req, resp := client.DeleteAccessGrantsLocationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrantsLocation +func (c *S3Control) DeleteAccessGrantsLocationRequest(input *DeleteAccessGrantsLocationInput) (req *request.Request, output *DeleteAccessGrantsLocationOutput) { + op := &request.Operation{ + Name: opDeleteAccessGrantsLocation, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/accessgrantsinstance/location/{id}", + } + + if input == nil { + input = &DeleteAccessGrantsLocationInput{} + } + + output = &DeleteAccessGrantsLocationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DeleteAccessGrantsLocation API operation for AWS S3 Control. +// +// Deregisters a location from your S3 Access Grants instance. You can only +// delete a location registration from an S3 Access Grants instance if there +// are no grants associated with this location. See Delete a grant (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessGrant.html) +// for information on how to delete grants. You need to have at least one registered +// location in your S3 Access Grants instance in order to create access grants. +// +// # Permissions +// +// You must have the s3:DeleteAccessGrantsLocation permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DeleteAccessGrantsLocation for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessGrantsLocation +func (c *S3Control) DeleteAccessGrantsLocation(input *DeleteAccessGrantsLocationInput) (*DeleteAccessGrantsLocationOutput, error) { + req, out := c.DeleteAccessGrantsLocationRequest(input) + return out, req.Send() +} + +// DeleteAccessGrantsLocationWithContext is the same as DeleteAccessGrantsLocation with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAccessGrantsLocation 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 *S3Control) DeleteAccessGrantsLocationWithContext(ctx aws.Context, input *DeleteAccessGrantsLocationInput, opts ...request.Option) (*DeleteAccessGrantsLocationOutput, error) { + req, out := c.DeleteAccessGrantsLocationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAccessPoint = "DeleteAccessPoint" // DeleteAccessPointRequest generates a "aws/request.Request" representing the @@ -579,6 +1420,8 @@ // DeleteAccessPoint API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Deletes the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional @@ -671,6 +1514,8 @@ // DeleteAccessPointForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Deletes the specified Object Lambda Access Point. // // The following actions are related to DeleteAccessPointForObjectLambda: @@ -758,6 +1603,8 @@ // DeleteAccessPointPolicy API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Deletes the access point policy for the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional @@ -848,6 +1695,8 @@ // DeleteAccessPointPolicyForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Removes the resource policy for an Object Lambda Access Point. // // The following actions are related to DeleteAccessPointPolicyForObjectLambda: @@ -1049,7 +1898,7 @@ // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // -// To use this action, you must have permission to perform the s3-outposts:DeleteLifecycleConfiguration +// To use this operation, you must have permission to perform the s3-outposts:PutLifecycleConfiguration // action. By default, the bucket owner has this permission and the Outposts // bucket owner can grant this permission to others. // @@ -1479,9 +2328,12 @@ // DeleteJobTagging API operation for AWS S3 Control. // -// Removes the entire tag set from the specified S3 Batch Operations job. To -// use the DeleteJobTagging operation, you must have permission to perform the -// s3:DeleteJobTagging action. For more information, see Controlling access +// Removes the entire tag set from the specified S3 Batch Operations job. +// +// # Permissions +// +// To use the DeleteJobTagging operation, you must have permission to perform +// the s3:DeleteJobTagging action. For more information, see Controlling access // and labeling jobs using tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) // in the Amazon S3 User Guide. // @@ -1579,6 +2431,8 @@ // DeleteMultiRegionAccessPoint API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Deletes a Multi-Region Access Point. This action does not delete the buckets // associated with the Multi-Region Access Point, only the Multi-Region Access // Point itself. @@ -1676,6 +2530,8 @@ // DeletePublicAccessBlock API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Removes the PublicAccessBlock configuration for an Amazon Web Services account. // For more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // @@ -1759,6 +2615,8 @@ // DeleteStorageLensConfiguration API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Deletes the Amazon S3 Storage Lens configuration. For more information about // S3 Storage Lens, see Assessing your storage activity and usage with Amazon // S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) @@ -1843,6 +2701,8 @@ // DeleteStorageLensConfigurationTagging API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Deletes the Amazon S3 Storage Lens configuration tags. For more information // about S3 Storage Lens, see Assessing your storage activity and usage with // Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) @@ -1881,6 +2741,89 @@ return out, req.Send() } +const opDeleteStorageLensGroup = "DeleteStorageLensGroup" + +// DeleteStorageLensGroupRequest generates a "aws/request.Request" representing the +// client's request for the DeleteStorageLensGroup 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 DeleteStorageLensGroup for more information on using the DeleteStorageLensGroup +// 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 DeleteStorageLensGroupRequest method. +// req, resp := client.DeleteStorageLensGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensGroup +func (c *S3Control) DeleteStorageLensGroupRequest(input *DeleteStorageLensGroupInput) (req *request.Request, output *DeleteStorageLensGroupOutput) { + op := &request.Operation{ + Name: opDeleteStorageLensGroup, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/storagelensgroup/{name}", + } + + if input == nil { + input = &DeleteStorageLensGroupInput{} + } + + output = &DeleteStorageLensGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeleteStorageLensGroup API operation for AWS S3 Control. +// +// Deletes an existing S3 Storage Lens group. +// +// To use this operation, you must have the permission to perform the s3:DeleteStorageLensGroup +// action. For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about Storage Lens groups errors, see List of Amazon S3 Storage +// Lens error codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DeleteStorageLensGroup for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensGroup +func (c *S3Control) DeleteStorageLensGroup(input *DeleteStorageLensGroupInput) (*DeleteStorageLensGroupOutput, error) { + req, out := c.DeleteStorageLensGroupRequest(input) + return out, req.Send() +} + +// DeleteStorageLensGroupWithContext is the same as DeleteStorageLensGroup with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteStorageLensGroup 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 *S3Control) DeleteStorageLensGroupWithContext(ctx aws.Context, input *DeleteStorageLensGroupInput, opts ...request.Option) (*DeleteStorageLensGroupOutput, error) { + req, out := c.DeleteStorageLensGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeJob = "DescribeJob" // DescribeJobRequest generates a "aws/request.Request" representing the @@ -1930,6 +2873,11 @@ // job. For more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // +// # Permissions +// +// To use the DescribeJob operation, you must have permission to perform the +// s3:DescribeJob action. +// // Related actions include: // // - CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) @@ -2028,6 +2976,8 @@ // DescribeMultiRegionAccessPointOperation API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Retrieves the status of an asynchronous request to manage a Multi-Region // Access Point. For more information about managing Multi-Region Access Points // and how asynchronous requests work, see Managing Multi-Region Access Points @@ -2072,6 +3022,519 @@ return out, req.Send() } +const opDissociateAccessGrantsIdentityCenter = "DissociateAccessGrantsIdentityCenter" + +// DissociateAccessGrantsIdentityCenterRequest generates a "aws/request.Request" representing the +// client's request for the DissociateAccessGrantsIdentityCenter 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 DissociateAccessGrantsIdentityCenter for more information on using the DissociateAccessGrantsIdentityCenter +// 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 DissociateAccessGrantsIdentityCenterRequest method. +// req, resp := client.DissociateAccessGrantsIdentityCenterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DissociateAccessGrantsIdentityCenter +func (c *S3Control) DissociateAccessGrantsIdentityCenterRequest(input *DissociateAccessGrantsIdentityCenterInput) (req *request.Request, output *DissociateAccessGrantsIdentityCenterOutput) { + op := &request.Operation{ + Name: opDissociateAccessGrantsIdentityCenter, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/accessgrantsinstance/identitycenter", + } + + if input == nil { + input = &DissociateAccessGrantsIdentityCenterInput{} + } + + output = &DissociateAccessGrantsIdentityCenterOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DissociateAccessGrantsIdentityCenter API operation for AWS S3 Control. +// +// Dissociates the Amazon Web Services IAM Identity Center instance from the +// S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:DissociateAccessGrantsIdentityCenter permission to use +// this operation. +// +// # Additional Permissions +// +// You must have the sso:DeleteApplication permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DissociateAccessGrantsIdentityCenter for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DissociateAccessGrantsIdentityCenter +func (c *S3Control) DissociateAccessGrantsIdentityCenter(input *DissociateAccessGrantsIdentityCenterInput) (*DissociateAccessGrantsIdentityCenterOutput, error) { + req, out := c.DissociateAccessGrantsIdentityCenterRequest(input) + return out, req.Send() +} + +// DissociateAccessGrantsIdentityCenterWithContext is the same as DissociateAccessGrantsIdentityCenter with the addition of +// the ability to pass a context and additional request options. +// +// See DissociateAccessGrantsIdentityCenter 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 *S3Control) DissociateAccessGrantsIdentityCenterWithContext(ctx aws.Context, input *DissociateAccessGrantsIdentityCenterInput, opts ...request.Option) (*DissociateAccessGrantsIdentityCenterOutput, error) { + req, out := c.DissociateAccessGrantsIdentityCenterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccessGrant = "GetAccessGrant" + +// GetAccessGrantRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessGrant 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 GetAccessGrant for more information on using the GetAccessGrant +// 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 GetAccessGrantRequest method. +// req, resp := client.GetAccessGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrant +func (c *S3Control) GetAccessGrantRequest(input *GetAccessGrantInput) (req *request.Request, output *GetAccessGrantOutput) { + op := &request.Operation{ + Name: opGetAccessGrant, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/grant/{id}", + } + + if input == nil { + input = &GetAccessGrantInput{} + } + + output = &GetAccessGrantOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetAccessGrant API operation for AWS S3 Control. +// +// Get the details of an access grant from your S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:GetAccessGrant permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetAccessGrant for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrant +func (c *S3Control) GetAccessGrant(input *GetAccessGrantInput) (*GetAccessGrantOutput, error) { + req, out := c.GetAccessGrantRequest(input) + return out, req.Send() +} + +// GetAccessGrantWithContext is the same as GetAccessGrant with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccessGrant 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 *S3Control) GetAccessGrantWithContext(ctx aws.Context, input *GetAccessGrantInput, opts ...request.Option) (*GetAccessGrantOutput, error) { + req, out := c.GetAccessGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccessGrantsInstance = "GetAccessGrantsInstance" + +// GetAccessGrantsInstanceRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessGrantsInstance 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 GetAccessGrantsInstance for more information on using the GetAccessGrantsInstance +// 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 GetAccessGrantsInstanceRequest method. +// req, resp := client.GetAccessGrantsInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsInstance +func (c *S3Control) GetAccessGrantsInstanceRequest(input *GetAccessGrantsInstanceInput) (req *request.Request, output *GetAccessGrantsInstanceOutput) { + op := &request.Operation{ + Name: opGetAccessGrantsInstance, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance", + } + + if input == nil { + input = &GetAccessGrantsInstanceInput{} + } + + output = &GetAccessGrantsInstanceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetAccessGrantsInstance API operation for AWS S3 Control. +// +// Retrieves the S3 Access Grants instance for a Region in your account. +// +// # Permissions +// +// You must have the s3:GetAccessGrantsInstance permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetAccessGrantsInstance for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsInstance +func (c *S3Control) GetAccessGrantsInstance(input *GetAccessGrantsInstanceInput) (*GetAccessGrantsInstanceOutput, error) { + req, out := c.GetAccessGrantsInstanceRequest(input) + return out, req.Send() +} + +// GetAccessGrantsInstanceWithContext is the same as GetAccessGrantsInstance with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccessGrantsInstance 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 *S3Control) GetAccessGrantsInstanceWithContext(ctx aws.Context, input *GetAccessGrantsInstanceInput, opts ...request.Option) (*GetAccessGrantsInstanceOutput, error) { + req, out := c.GetAccessGrantsInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccessGrantsInstanceForPrefix = "GetAccessGrantsInstanceForPrefix" + +// GetAccessGrantsInstanceForPrefixRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessGrantsInstanceForPrefix 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 GetAccessGrantsInstanceForPrefix for more information on using the GetAccessGrantsInstanceForPrefix +// 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 GetAccessGrantsInstanceForPrefixRequest method. +// req, resp := client.GetAccessGrantsInstanceForPrefixRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsInstanceForPrefix +func (c *S3Control) GetAccessGrantsInstanceForPrefixRequest(input *GetAccessGrantsInstanceForPrefixInput) (req *request.Request, output *GetAccessGrantsInstanceForPrefixOutput) { + op := &request.Operation{ + Name: opGetAccessGrantsInstanceForPrefix, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/prefix", + } + + if input == nil { + input = &GetAccessGrantsInstanceForPrefixInput{} + } + + output = &GetAccessGrantsInstanceForPrefixOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetAccessGrantsInstanceForPrefix API operation for AWS S3 Control. +// +// Retrieve the S3 Access Grants instance that contains a particular prefix. +// +// # Permissions +// +// You must have the s3:GetAccessGrantsInstanceForPrefix permission for the +// caller account to use this operation. +// +// # Additional Permissions +// +// The prefix owner account must grant you the following permissions to their +// S3 Access Grants instance: s3:GetAccessGrantsInstanceForPrefix. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetAccessGrantsInstanceForPrefix for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsInstanceForPrefix +func (c *S3Control) GetAccessGrantsInstanceForPrefix(input *GetAccessGrantsInstanceForPrefixInput) (*GetAccessGrantsInstanceForPrefixOutput, error) { + req, out := c.GetAccessGrantsInstanceForPrefixRequest(input) + return out, req.Send() +} + +// GetAccessGrantsInstanceForPrefixWithContext is the same as GetAccessGrantsInstanceForPrefix with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccessGrantsInstanceForPrefix 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 *S3Control) GetAccessGrantsInstanceForPrefixWithContext(ctx aws.Context, input *GetAccessGrantsInstanceForPrefixInput, opts ...request.Option) (*GetAccessGrantsInstanceForPrefixOutput, error) { + req, out := c.GetAccessGrantsInstanceForPrefixRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccessGrantsInstanceResourcePolicy = "GetAccessGrantsInstanceResourcePolicy" + +// GetAccessGrantsInstanceResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessGrantsInstanceResourcePolicy 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 GetAccessGrantsInstanceResourcePolicy for more information on using the GetAccessGrantsInstanceResourcePolicy +// 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 GetAccessGrantsInstanceResourcePolicyRequest method. +// req, resp := client.GetAccessGrantsInstanceResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsInstanceResourcePolicy +func (c *S3Control) GetAccessGrantsInstanceResourcePolicyRequest(input *GetAccessGrantsInstanceResourcePolicyInput) (req *request.Request, output *GetAccessGrantsInstanceResourcePolicyOutput) { + op := &request.Operation{ + Name: opGetAccessGrantsInstanceResourcePolicy, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/resourcepolicy", + } + + if input == nil { + input = &GetAccessGrantsInstanceResourcePolicyInput{} + } + + output = &GetAccessGrantsInstanceResourcePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetAccessGrantsInstanceResourcePolicy API operation for AWS S3 Control. +// +// Returns the resource policy of the S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:GetAccessGrantsInstanceResourcePolicy permission to +// use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetAccessGrantsInstanceResourcePolicy for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsInstanceResourcePolicy +func (c *S3Control) GetAccessGrantsInstanceResourcePolicy(input *GetAccessGrantsInstanceResourcePolicyInput) (*GetAccessGrantsInstanceResourcePolicyOutput, error) { + req, out := c.GetAccessGrantsInstanceResourcePolicyRequest(input) + return out, req.Send() +} + +// GetAccessGrantsInstanceResourcePolicyWithContext is the same as GetAccessGrantsInstanceResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccessGrantsInstanceResourcePolicy 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 *S3Control) GetAccessGrantsInstanceResourcePolicyWithContext(ctx aws.Context, input *GetAccessGrantsInstanceResourcePolicyInput, opts ...request.Option) (*GetAccessGrantsInstanceResourcePolicyOutput, error) { + req, out := c.GetAccessGrantsInstanceResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccessGrantsLocation = "GetAccessGrantsLocation" + +// GetAccessGrantsLocationRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessGrantsLocation 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 GetAccessGrantsLocation for more information on using the GetAccessGrantsLocation +// 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 GetAccessGrantsLocationRequest method. +// req, resp := client.GetAccessGrantsLocationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsLocation +func (c *S3Control) GetAccessGrantsLocationRequest(input *GetAccessGrantsLocationInput) (req *request.Request, output *GetAccessGrantsLocationOutput) { + op := &request.Operation{ + Name: opGetAccessGrantsLocation, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/location/{id}", + } + + if input == nil { + input = &GetAccessGrantsLocationInput{} + } + + output = &GetAccessGrantsLocationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetAccessGrantsLocation API operation for AWS S3 Control. +// +// Retrieves the details of a particular location registered in your S3 Access +// Grants instance. +// +// # Permissions +// +// You must have the s3:GetAccessGrantsLocation permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetAccessGrantsLocation for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessGrantsLocation +func (c *S3Control) GetAccessGrantsLocation(input *GetAccessGrantsLocationInput) (*GetAccessGrantsLocationOutput, error) { + req, out := c.GetAccessGrantsLocationRequest(input) + return out, req.Send() +} + +// GetAccessGrantsLocationWithContext is the same as GetAccessGrantsLocation with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccessGrantsLocation 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 *S3Control) GetAccessGrantsLocationWithContext(ctx aws.Context, input *GetAccessGrantsLocationInput, opts ...request.Option) (*GetAccessGrantsLocationOutput, error) { + req, out := c.GetAccessGrantsLocationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAccessPoint = "GetAccessPoint" // GetAccessPointRequest generates a "aws/request.Request" representing the @@ -2120,6 +3583,8 @@ // GetAccessPoint API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns configuration information about the specified access point. // // All Amazon S3 on Outposts REST API requests for this action require an additional @@ -2211,6 +3676,8 @@ // GetAccessPointConfigurationForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns configuration for an Object Lambda Access Point. // // The following actions are related to GetAccessPointConfigurationForObjectLambda: @@ -2290,6 +3757,8 @@ // GetAccessPointForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns configuration information about the specified Object Lambda Access // Point // @@ -2377,6 +3846,8 @@ // GetAccessPointPolicy API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns the access point policy associated with the specified access point. // // The following actions are related to GetAccessPointPolicy: @@ -2458,6 +3929,8 @@ // GetAccessPointPolicyForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns the resource policy for an Object Lambda Access Point. // // The following actions are related to GetAccessPointPolicyForObjectLambda: @@ -2539,6 +4012,8 @@ // GetAccessPointPolicyStatus API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Indicates whether the specified access point currently has a policy that // allows public access. For more information about public access through access // points, see Managing Data Access with Amazon S3 access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html) @@ -2617,6 +4092,8 @@ // GetAccessPointPolicyStatusForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns the status of the resource policy associated with an Object Lambda // Access Point. // @@ -3323,6 +4800,98 @@ return out, req.Send() } +const opGetDataAccess = "GetDataAccess" + +// GetDataAccessRequest generates a "aws/request.Request" representing the +// client's request for the GetDataAccess 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 GetDataAccess for more information on using the GetDataAccess +// 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 GetDataAccessRequest method. +// req, resp := client.GetDataAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetDataAccess +func (c *S3Control) GetDataAccessRequest(input *GetDataAccessInput) (req *request.Request, output *GetDataAccessOutput) { + op := &request.Operation{ + Name: opGetDataAccess, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/dataaccess", + } + + if input == nil { + input = &GetDataAccessInput{} + } + + output = &GetDataAccessOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetDataAccess API operation for AWS S3 Control. +// +// Returns a temporary access credential from S3 Access Grants to the grantee +// or client application. The temporary credential (https://docs.aws.amazon.com/STS/latest/APIReference/API_Credentials.html) +// is an Amazon Web Services STS token that grants them access to the S3 data. +// +// # Permissions +// +// You must have the s3:GetDataAccess permission to use this operation. +// +// # Additional Permissions +// +// The IAM role that S3 Access Grants assumes must have the following permissions +// specified in the trust policy when registering the location: sts:AssumeRole, +// for directory users or groups sts:SetContext, and for IAM users or roles +// sts:SourceIdentity. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetDataAccess for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetDataAccess +func (c *S3Control) GetDataAccess(input *GetDataAccessInput) (*GetDataAccessOutput, error) { + req, out := c.GetDataAccessRequest(input) + return out, req.Send() +} + +// GetDataAccessWithContext is the same as GetDataAccess with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataAccess 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 *S3Control) GetDataAccessWithContext(ctx aws.Context, input *GetDataAccessInput, opts ...request.Option) (*GetDataAccessOutput, error) { + req, out := c.GetDataAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetJobTagging = "GetJobTagging" // GetJobTaggingRequest generates a "aws/request.Request" representing the @@ -3368,10 +4937,13 @@ // GetJobTagging API operation for AWS S3 Control. // -// Returns the tags on an S3 Batch Operations job. To use the GetJobTagging -// operation, you must have permission to perform the s3:GetJobTagging action. -// For more information, see Controlling access and labeling jobs using tags -// (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) +// Returns the tags on an S3 Batch Operations job. +// +// # Permissions +// +// To use the GetJobTagging operation, you must have permission to perform the +// s3:GetJobTagging action. For more information, see Controlling access and +// labeling jobs using tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) // in the Amazon S3 User Guide. // // Related actions include: @@ -3468,6 +5040,8 @@ // GetMultiRegionAccessPoint API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns configuration information about the specified Multi-Region Access // Point. // @@ -3563,6 +5137,8 @@ // GetMultiRegionAccessPointPolicy API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns the access control policy of the specified Multi-Region Access Point. // // This action will always be routed to the US West (Oregon) Region. For more @@ -3653,6 +5229,8 @@ // GetMultiRegionAccessPointPolicyStatus API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Indicates whether the specified Multi-Region Access Point has an access control // policy that allows public access. // @@ -3744,6 +5322,8 @@ // GetMultiRegionAccessPointRoutes API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns the routing configuration for a Multi-Region Access Point, indicating // which Regions are active or passive. // @@ -3836,6 +5416,8 @@ // GetPublicAccessBlock API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Retrieves the PublicAccessBlock configuration for an Amazon Web Services // account. For more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // @@ -3924,6 +5506,8 @@ // GetStorageLensConfiguration API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Gets the Amazon S3 Storage Lens configuration. For more information, see // Assessing your storage activity and usage with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, @@ -4008,6 +5592,8 @@ // GetStorageLensConfigurationTagging API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Gets the tags of Amazon S3 Storage Lens configuration. For more information // about S3 Storage Lens, see Assessing your storage activity and usage with // Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) @@ -4046,6 +5632,510 @@ return out, req.Send() } +const opGetStorageLensGroup = "GetStorageLensGroup" + +// GetStorageLensGroupRequest generates a "aws/request.Request" representing the +// client's request for the GetStorageLensGroup 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 GetStorageLensGroup for more information on using the GetStorageLensGroup +// 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 GetStorageLensGroupRequest method. +// req, resp := client.GetStorageLensGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensGroup +func (c *S3Control) GetStorageLensGroupRequest(input *GetStorageLensGroupInput) (req *request.Request, output *GetStorageLensGroupOutput) { + op := &request.Operation{ + Name: opGetStorageLensGroup, + HTTPMethod: "GET", + HTTPPath: "/v20180820/storagelensgroup/{name}", + } + + if input == nil { + input = &GetStorageLensGroupInput{} + } + + output = &GetStorageLensGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetStorageLensGroup API operation for AWS S3 Control. +// +// Retrieves the Storage Lens group configuration details. +// +// To use this operation, you must have the permission to perform the s3:GetStorageLensGroup +// action. For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about Storage Lens groups errors, see List of Amazon S3 Storage +// Lens error codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetStorageLensGroup for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensGroup +func (c *S3Control) GetStorageLensGroup(input *GetStorageLensGroupInput) (*GetStorageLensGroupOutput, error) { + req, out := c.GetStorageLensGroupRequest(input) + return out, req.Send() +} + +// GetStorageLensGroupWithContext is the same as GetStorageLensGroup with the addition of +// the ability to pass a context and additional request options. +// +// See GetStorageLensGroup 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 *S3Control) GetStorageLensGroupWithContext(ctx aws.Context, input *GetStorageLensGroupInput, opts ...request.Option) (*GetStorageLensGroupOutput, error) { + req, out := c.GetStorageLensGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListAccessGrants = "ListAccessGrants" + +// ListAccessGrantsRequest generates a "aws/request.Request" representing the +// client's request for the ListAccessGrants 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 ListAccessGrants for more information on using the ListAccessGrants +// 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 ListAccessGrantsRequest method. +// req, resp := client.ListAccessGrantsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessGrants +func (c *S3Control) ListAccessGrantsRequest(input *ListAccessGrantsInput) (req *request.Request, output *ListAccessGrantsOutput) { + op := &request.Operation{ + Name: opListAccessGrants, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/grants", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAccessGrantsInput{} + } + + output = &ListAccessGrantsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// ListAccessGrants API operation for AWS S3 Control. +// +// Returns the list of access grants in your S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:ListAccessGrants permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation ListAccessGrants for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessGrants +func (c *S3Control) ListAccessGrants(input *ListAccessGrantsInput) (*ListAccessGrantsOutput, error) { + req, out := c.ListAccessGrantsRequest(input) + return out, req.Send() +} + +// ListAccessGrantsWithContext is the same as ListAccessGrants with the addition of +// the ability to pass a context and additional request options. +// +// See ListAccessGrants 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 *S3Control) ListAccessGrantsWithContext(ctx aws.Context, input *ListAccessGrantsInput, opts ...request.Option) (*ListAccessGrantsOutput, error) { + req, out := c.ListAccessGrantsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAccessGrantsPages iterates over the pages of a ListAccessGrants operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAccessGrants 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 ListAccessGrants operation. +// pageNum := 0 +// err := client.ListAccessGrantsPages(params, +// func(page *s3control.ListAccessGrantsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *S3Control) ListAccessGrantsPages(input *ListAccessGrantsInput, fn func(*ListAccessGrantsOutput, bool) bool) error { + return c.ListAccessGrantsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAccessGrantsPagesWithContext same as ListAccessGrantsPages 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 *S3Control) ListAccessGrantsPagesWithContext(ctx aws.Context, input *ListAccessGrantsInput, fn func(*ListAccessGrantsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAccessGrantsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAccessGrantsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAccessGrantsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAccessGrantsInstances = "ListAccessGrantsInstances" + +// ListAccessGrantsInstancesRequest generates a "aws/request.Request" representing the +// client's request for the ListAccessGrantsInstances 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 ListAccessGrantsInstances for more information on using the ListAccessGrantsInstances +// 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 ListAccessGrantsInstancesRequest method. +// req, resp := client.ListAccessGrantsInstancesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessGrantsInstances +func (c *S3Control) ListAccessGrantsInstancesRequest(input *ListAccessGrantsInstancesInput) (req *request.Request, output *ListAccessGrantsInstancesOutput) { + op := &request.Operation{ + Name: opListAccessGrantsInstances, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstances", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAccessGrantsInstancesInput{} + } + + output = &ListAccessGrantsInstancesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// ListAccessGrantsInstances API operation for AWS S3 Control. +// +// Returns a list of S3 Access Grants instances. An S3 Access Grants instance +// serves as a logical grouping for your individual access grants. You can only +// have one S3 Access Grants instance per Region per account. +// +// # Permissions +// +// You must have the s3:ListAccessGrantsInstances permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation ListAccessGrantsInstances for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessGrantsInstances +func (c *S3Control) ListAccessGrantsInstances(input *ListAccessGrantsInstancesInput) (*ListAccessGrantsInstancesOutput, error) { + req, out := c.ListAccessGrantsInstancesRequest(input) + return out, req.Send() +} + +// ListAccessGrantsInstancesWithContext is the same as ListAccessGrantsInstances with the addition of +// the ability to pass a context and additional request options. +// +// See ListAccessGrantsInstances 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 *S3Control) ListAccessGrantsInstancesWithContext(ctx aws.Context, input *ListAccessGrantsInstancesInput, opts ...request.Option) (*ListAccessGrantsInstancesOutput, error) { + req, out := c.ListAccessGrantsInstancesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAccessGrantsInstancesPages iterates over the pages of a ListAccessGrantsInstances operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAccessGrantsInstances 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 ListAccessGrantsInstances operation. +// pageNum := 0 +// err := client.ListAccessGrantsInstancesPages(params, +// func(page *s3control.ListAccessGrantsInstancesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *S3Control) ListAccessGrantsInstancesPages(input *ListAccessGrantsInstancesInput, fn func(*ListAccessGrantsInstancesOutput, bool) bool) error { + return c.ListAccessGrantsInstancesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAccessGrantsInstancesPagesWithContext same as ListAccessGrantsInstancesPages 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 *S3Control) ListAccessGrantsInstancesPagesWithContext(ctx aws.Context, input *ListAccessGrantsInstancesInput, fn func(*ListAccessGrantsInstancesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAccessGrantsInstancesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAccessGrantsInstancesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAccessGrantsInstancesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAccessGrantsLocations = "ListAccessGrantsLocations" + +// ListAccessGrantsLocationsRequest generates a "aws/request.Request" representing the +// client's request for the ListAccessGrantsLocations 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 ListAccessGrantsLocations for more information on using the ListAccessGrantsLocations +// 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 ListAccessGrantsLocationsRequest method. +// req, resp := client.ListAccessGrantsLocationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessGrantsLocations +func (c *S3Control) ListAccessGrantsLocationsRequest(input *ListAccessGrantsLocationsInput) (req *request.Request, output *ListAccessGrantsLocationsOutput) { + op := &request.Operation{ + Name: opListAccessGrantsLocations, + HTTPMethod: "GET", + HTTPPath: "/v20180820/accessgrantsinstance/locations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAccessGrantsLocationsInput{} + } + + output = &ListAccessGrantsLocationsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// ListAccessGrantsLocations API operation for AWS S3 Control. +// +// Returns a list of the locations registered in your S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:ListAccessGrantsLocations permission to use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation ListAccessGrantsLocations for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessGrantsLocations +func (c *S3Control) ListAccessGrantsLocations(input *ListAccessGrantsLocationsInput) (*ListAccessGrantsLocationsOutput, error) { + req, out := c.ListAccessGrantsLocationsRequest(input) + return out, req.Send() +} + +// ListAccessGrantsLocationsWithContext is the same as ListAccessGrantsLocations with the addition of +// the ability to pass a context and additional request options. +// +// See ListAccessGrantsLocations 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 *S3Control) ListAccessGrantsLocationsWithContext(ctx aws.Context, input *ListAccessGrantsLocationsInput, opts ...request.Option) (*ListAccessGrantsLocationsOutput, error) { + req, out := c.ListAccessGrantsLocationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAccessGrantsLocationsPages iterates over the pages of a ListAccessGrantsLocations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAccessGrantsLocations 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 ListAccessGrantsLocations operation. +// pageNum := 0 +// err := client.ListAccessGrantsLocationsPages(params, +// func(page *s3control.ListAccessGrantsLocationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *S3Control) ListAccessGrantsLocationsPages(input *ListAccessGrantsLocationsInput, fn func(*ListAccessGrantsLocationsOutput, bool) bool) error { + return c.ListAccessGrantsLocationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAccessGrantsLocationsPagesWithContext same as ListAccessGrantsLocationsPages 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 *S3Control) ListAccessGrantsLocationsPagesWithContext(ctx aws.Context, input *ListAccessGrantsLocationsInput, fn func(*ListAccessGrantsLocationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAccessGrantsLocationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAccessGrantsLocationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAccessGrantsLocationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListAccessPoints = "ListAccessPoints" // ListAccessPointsRequest generates a "aws/request.Request" representing the @@ -4100,6 +6190,8 @@ // ListAccessPoints API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns a list of the access points that are owned by the current account // that's associated with the specified bucket. You can retrieve up to 1000 // access points per call. If the specified bucket has more than 1,000 access @@ -4253,6 +6345,8 @@ // ListAccessPointsForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns some or all (up to 1,000) access points associated with the Object // Lambda Access Point per call. If there are more access points than what can // be returned in one call, the response will include a continuation token that @@ -4396,11 +6490,16 @@ // ListJobs API operation for AWS S3 Control. // -// Lists current S3 Batch Operations jobs and jobs that have ended within the -// last 30 days for the Amazon Web Services account making the request. For -// more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) +// Lists current S3 Batch Operations jobs as well as the jobs that have ended +// within the last 30 days for the Amazon Web Services account making the request. +// For more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // +// # Permissions +// +// To use the ListJobs operation, you must have permission to perform the s3:ListJobs +// action. +// // Related actions include: // // - CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) @@ -4554,6 +6653,8 @@ // ListMultiRegionAccessPoints API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns a list of the Multi-Region Access Points currently associated with // the specified Amazon Web Services account. Each call can return up to 100 // Multi-Region Access Points, the maximum number of Multi-Region Access Points @@ -4704,6 +6805,8 @@ // ListRegionalBuckets API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Returns a list of all Outposts buckets in an Outpost that are owned by the // authenticated sender of the request. For more information, see Using Amazon // S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) @@ -4844,6 +6947,8 @@ // ListStorageLensConfigurations API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Gets a list of Amazon S3 Storage Lens configurations. For more information // about S3 Storage Lens, see Assessing your storage activity and usage with // Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) @@ -4933,6 +7038,322 @@ return p.Err() } +const opListStorageLensGroups = "ListStorageLensGroups" + +// ListStorageLensGroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListStorageLensGroups 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 ListStorageLensGroups for more information on using the ListStorageLensGroups +// 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 ListStorageLensGroupsRequest method. +// req, resp := client.ListStorageLensGroupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListStorageLensGroups +func (c *S3Control) ListStorageLensGroupsRequest(input *ListStorageLensGroupsInput) (req *request.Request, output *ListStorageLensGroupsOutput) { + op := &request.Operation{ + Name: opListStorageLensGroups, + HTTPMethod: "GET", + HTTPPath: "/v20180820/storagelensgroup", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListStorageLensGroupsInput{} + } + + output = &ListStorageLensGroupsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListStorageLensGroups API operation for AWS S3 Control. +// +// Lists all the Storage Lens groups in the specified home Region. +// +// To use this operation, you must have the permission to perform the s3:ListStorageLensGroups +// action. For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about Storage Lens groups errors, see List of Amazon S3 Storage +// Lens error codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation ListStorageLensGroups for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListStorageLensGroups +func (c *S3Control) ListStorageLensGroups(input *ListStorageLensGroupsInput) (*ListStorageLensGroupsOutput, error) { + req, out := c.ListStorageLensGroupsRequest(input) + return out, req.Send() +} + +// ListStorageLensGroupsWithContext is the same as ListStorageLensGroups with the addition of +// the ability to pass a context and additional request options. +// +// See ListStorageLensGroups 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 *S3Control) ListStorageLensGroupsWithContext(ctx aws.Context, input *ListStorageLensGroupsInput, opts ...request.Option) (*ListStorageLensGroupsOutput, error) { + req, out := c.ListStorageLensGroupsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListStorageLensGroupsPages iterates over the pages of a ListStorageLensGroups operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListStorageLensGroups 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 ListStorageLensGroups operation. +// pageNum := 0 +// err := client.ListStorageLensGroupsPages(params, +// func(page *s3control.ListStorageLensGroupsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *S3Control) ListStorageLensGroupsPages(input *ListStorageLensGroupsInput, fn func(*ListStorageLensGroupsOutput, bool) bool) error { + return c.ListStorageLensGroupsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListStorageLensGroupsPagesWithContext same as ListStorageLensGroupsPages 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 *S3Control) ListStorageLensGroupsPagesWithContext(ctx aws.Context, input *ListStorageLensGroupsInput, fn func(*ListStorageLensGroupsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListStorageLensGroupsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListStorageLensGroupsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListStorageLensGroupsOutput), !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/s3control-2018-08-20/ListTagsForResource +func (c *S3Control) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/v20180820/tags/{resourceArn+}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListTagsForResource API operation for AWS S3 Control. +// +// This operation allows you to list all the Amazon Web Services resource tags +// for a specified resource. Each tag is a label consisting of a user-defined +// key and value. Tags can help you manage, identify, organize, search for, +// and filter resources. +// +// # Permissions +// +// You must have the s3:ListTagsForResource permission to use this operation. +// +// This operation is only supported for S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html) +// and for S3 Access Grants (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html). +// The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, +// registered location, or grant. +// +// For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about S3 Tagging errors, see List of Amazon S3 Tagging error +// codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation ListTagsForResource for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListTagsForResource +func (c *S3Control) 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 *S3Control) 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 opPutAccessGrantsInstanceResourcePolicy = "PutAccessGrantsInstanceResourcePolicy" + +// PutAccessGrantsInstanceResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutAccessGrantsInstanceResourcePolicy 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 PutAccessGrantsInstanceResourcePolicy for more information on using the PutAccessGrantsInstanceResourcePolicy +// 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 PutAccessGrantsInstanceResourcePolicyRequest method. +// req, resp := client.PutAccessGrantsInstanceResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessGrantsInstanceResourcePolicy +func (c *S3Control) PutAccessGrantsInstanceResourcePolicyRequest(input *PutAccessGrantsInstanceResourcePolicyInput) (req *request.Request, output *PutAccessGrantsInstanceResourcePolicyOutput) { + op := &request.Operation{ + Name: opPutAccessGrantsInstanceResourcePolicy, + HTTPMethod: "PUT", + HTTPPath: "/v20180820/accessgrantsinstance/resourcepolicy", + } + + if input == nil { + input = &PutAccessGrantsInstanceResourcePolicyInput{} + } + + output = &PutAccessGrantsInstanceResourcePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// PutAccessGrantsInstanceResourcePolicy API operation for AWS S3 Control. +// +// Updates the resource policy of the S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:PutAccessGrantsInstanceResourcePolicy permission to +// use this operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation PutAccessGrantsInstanceResourcePolicy for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessGrantsInstanceResourcePolicy +func (c *S3Control) PutAccessGrantsInstanceResourcePolicy(input *PutAccessGrantsInstanceResourcePolicyInput) (*PutAccessGrantsInstanceResourcePolicyOutput, error) { + req, out := c.PutAccessGrantsInstanceResourcePolicyRequest(input) + return out, req.Send() +} + +// PutAccessGrantsInstanceResourcePolicyWithContext is the same as PutAccessGrantsInstanceResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutAccessGrantsInstanceResourcePolicy 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 *S3Control) PutAccessGrantsInstanceResourcePolicyWithContext(ctx aws.Context, input *PutAccessGrantsInstanceResourcePolicyInput, opts ...request.Option) (*PutAccessGrantsInstanceResourcePolicyOutput, error) { + req, out := c.PutAccessGrantsInstanceResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPutAccessPointConfigurationForObjectLambda = "PutAccessPointConfigurationForObjectLambda" // PutAccessPointConfigurationForObjectLambdaRequest generates a "aws/request.Request" representing the @@ -4979,6 +7400,8 @@ // PutAccessPointConfigurationForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Replaces configuration for an Object Lambda Access Point. // // The following actions are related to PutAccessPointConfigurationForObjectLambda: @@ -5062,6 +7485,8 @@ // PutAccessPointPolicy API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Associates an access policy with the specified access point. Each access // point can have only one policy, so a request made to this API replaces any // existing policy associated with the specified access point. @@ -5154,6 +7579,8 @@ // PutAccessPointPolicyForObjectLambda API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Creates or replaces resource policy for an Object Lambda Access Point. For // an example policy, see Creating Object Lambda Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-create.html#olap-create-cli) // in the Amazon S3 User Guide. @@ -5904,7 +8331,7 @@ // associated with the job. To modify the existing tag set, you can either replace // the existing tag set entirely, or make changes within the existing tag set // by retrieving the existing tag set using GetJobTagging (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetJobTagging.html), -// modify that tag set, and use this action to replace the tag set with the +// modify that tag set, and use this operation to replace the tag set with the // one you modified. For more information, see Controlling access and labeling // jobs using tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-managing-jobs.html#batch-ops-job-tags) // in the Amazon S3 User Guide. @@ -5928,6 +8355,8 @@ // Restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html) // in the Billing and Cost Management User Guide. // +// # Permissions +// // To use the PutJobTagging operation, you must have permission to perform the // s3:PutJobTagging action. // @@ -6028,6 +8457,8 @@ // PutMultiRegionAccessPointPolicy API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Associates an access control policy with the specified Multi-Region Access // Point. Each Multi-Region Access Point can have only one policy, so a request // made to this action replaces any existing policy that is associated with @@ -6118,6 +8549,8 @@ // PutPublicAccessBlock API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Creates or modifies the PublicAccessBlock configuration for an Amazon Web // Services account. For this operation, users must have the s3:PutAccountPublicAccessBlock // permission. For more information, see Using Amazon S3 block public access @@ -6203,6 +8636,8 @@ // PutStorageLensConfiguration API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Puts an Amazon S3 Storage Lens configuration. For more information about // S3 Storage Lens, see Working with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, @@ -6288,6 +8723,8 @@ // PutStorageLensConfigurationTagging API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Put or replace tags on an existing Amazon S3 Storage Lens configuration. // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) @@ -6376,6 +8813,8 @@ // SubmitMultiRegionAccessPointRoutes API operation for AWS S3 Control. // +// This operation is not supported by directory buckets. +// // Submits an updated route configuration for a Multi-Region Access Point. This // API operation updates the routing status for the specified Regions from active // to passive, or from passive to active. A value of 0 indicates a passive status, @@ -6435,6 +8874,281 @@ 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/s3control-2018-08-20/TagResource +func (c *S3Control) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/v20180820/tags/{resourceArn+}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// TagResource API operation for AWS S3 Control. +// +// Creates a new Amazon Web Services resource tag or updates an existing resource +// tag. Each tag is a label consisting of a user-defined key and value. Tags +// can help you manage, identify, organize, search for, and filter resources. +// You can add up to 50 Amazon Web Services resource tags for each S3 resource. +// +// This operation is only supported for S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html) +// and for S3 Access Grants (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html). +// The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, +// registered location, or grant. +// +// # Permissions +// +// You must have the s3:TagResource permission to use this operation. +// +// For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about S3 Tagging errors, see List of Amazon S3 Tagging error +// codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation TagResource for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/TagResource +func (c *S3Control) 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 *S3Control) 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/s3control-2018-08-20/UntagResource +func (c *S3Control) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/v20180820/tags/{resourceArn+}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UntagResource API operation for AWS S3 Control. +// +// This operation removes the specified Amazon Web Services resource tags from +// an S3 resource. Each tag is a label consisting of a user-defined key and +// value. Tags can help you manage, identify, organize, search for, and filter +// resources. +// +// This operation is only supported for S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html) +// and for S3 Access Grants (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html). +// The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, +// registered location, or grant. +// +// # Permissions +// +// You must have the s3:UntagResource permission to use this operation. +// +// For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about S3 Tagging errors, see List of Amazon S3 Tagging error +// codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation UntagResource for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UntagResource +func (c *S3Control) 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 *S3Control) 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 opUpdateAccessGrantsLocation = "UpdateAccessGrantsLocation" + +// UpdateAccessGrantsLocationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAccessGrantsLocation 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 UpdateAccessGrantsLocation for more information on using the UpdateAccessGrantsLocation +// 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 UpdateAccessGrantsLocationRequest method. +// req, resp := client.UpdateAccessGrantsLocationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateAccessGrantsLocation +func (c *S3Control) UpdateAccessGrantsLocationRequest(input *UpdateAccessGrantsLocationInput) (req *request.Request, output *UpdateAccessGrantsLocationOutput) { + op := &request.Operation{ + Name: opUpdateAccessGrantsLocation, + HTTPMethod: "PUT", + HTTPPath: "/v20180820/accessgrantsinstance/location/{id}", + } + + if input == nil { + input = &UpdateAccessGrantsLocationInput{} + } + + output = &UpdateAccessGrantsLocationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// UpdateAccessGrantsLocation API operation for AWS S3 Control. +// +// Updates the IAM role of a registered location in your S3 Access Grants instance. +// +// # Permissions +// +// You must have the s3:UpdateAccessGrantsLocation permission to use this operation. +// +// # Additional Permissions +// +// You must also have the following permission: iam:PassRole +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation UpdateAccessGrantsLocation for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateAccessGrantsLocation +func (c *S3Control) UpdateAccessGrantsLocation(input *UpdateAccessGrantsLocationInput) (*UpdateAccessGrantsLocationOutput, error) { + req, out := c.UpdateAccessGrantsLocationRequest(input) + return out, req.Send() +} + +// UpdateAccessGrantsLocationWithContext is the same as UpdateAccessGrantsLocation with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAccessGrantsLocation 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 *S3Control) UpdateAccessGrantsLocationWithContext(ctx aws.Context, input *UpdateAccessGrantsLocationInput, opts ...request.Option) (*UpdateAccessGrantsLocationOutput, error) { + req, out := c.UpdateAccessGrantsLocationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateJobPriority = "UpdateJobPriority" // UpdateJobPriorityRequest generates a "aws/request.Request" representing the @@ -6484,6 +9198,11 @@ // see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // +// # Permissions +// +// To use the UpdateJobPriority operation, you must have permission to perform +// the s3:UpdateJobPriority action. +// // Related actions include: // // - CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) @@ -6578,11 +9297,16 @@ // UpdateJobStatus API operation for AWS S3 Control. // -// Updates the status for the specified job. Use this action to confirm that +// Updates the status for the specified job. Use this operation to confirm that // you want to run a job or to cancel an existing job. For more information, // see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html) // in the Amazon S3 User Guide. // +// # Permissions +// +// To use the UpdateJobStatus operation, you must have permission to perform +// the s3:UpdateJobStatus action. +// // Related actions include: // // - CreateJob (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) @@ -6634,6 +9358,89 @@ return out, req.Send() } +const opUpdateStorageLensGroup = "UpdateStorageLensGroup" + +// UpdateStorageLensGroupRequest generates a "aws/request.Request" representing the +// client's request for the UpdateStorageLensGroup 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 UpdateStorageLensGroup for more information on using the UpdateStorageLensGroup +// 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 UpdateStorageLensGroupRequest method. +// req, resp := client.UpdateStorageLensGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateStorageLensGroup +func (c *S3Control) UpdateStorageLensGroupRequest(input *UpdateStorageLensGroupInput) (req *request.Request, output *UpdateStorageLensGroupOutput) { + op := &request.Operation{ + Name: opUpdateStorageLensGroup, + HTTPMethod: "PUT", + HTTPPath: "/v20180820/storagelensgroup/{name}", + } + + if input == nil { + input = &UpdateStorageLensGroupInput{} + } + + output = &UpdateStorageLensGroupOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UpdateStorageLensGroup API operation for AWS S3 Control. +// +// Updates the existing Storage Lens group. +// +// To use this operation, you must have the permission to perform the s3:UpdateStorageLensGroup +// action. For more information about the required Storage Lens Groups permissions, +// see Setting account permissions to use S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions). +// +// For information about Storage Lens groups errors, see List of Amazon S3 Storage +// Lens error codes (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation UpdateStorageLensGroup for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateStorageLensGroup +func (c *S3Control) UpdateStorageLensGroup(input *UpdateStorageLensGroupInput) (*UpdateStorageLensGroupOutput, error) { + req, out := c.UpdateStorageLensGroupRequest(input) + return out, req.Send() +} + +// UpdateStorageLensGroupWithContext is the same as UpdateStorageLensGroup with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateStorageLensGroup 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 *S3Control) UpdateStorageLensGroupWithContext(ctx aws.Context, input *UpdateStorageLensGroupInput, opts ...request.Option) (*UpdateStorageLensGroupOutput, error) { + req, out := c.UpdateStorageLensGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // The container for abort incomplete multipart upload type AbortIncompleteMultipartUpload struct { _ struct{} `type:"structure"` @@ -6716,6 +9523,65 @@ return s } +// The configuration options of the S3 Access Grants location. It contains the +// S3SubPrefix field. The grant scope, the data to which you are granting access, +// is the result of appending the Subprefix field to the scope of the registered +// location. +type AccessGrantsLocationConfiguration struct { + _ struct{} `type:"structure"` + + // The S3SubPrefix is appended to the location scope creating the grant scope. + // Use this field to narrow the scope of the grant to a subset of the location + // scope. This field is required if the location scope is the default location + // s3:// because you cannot create a grant for all of your S3 data in the Region + // and must narrow the scope. For example, if the location scope is the default + // location s3://, the S3SubPrefx can be a /*, so the full grant + // scope path would be s3:///*. Or the S3SubPrefx can be /*, + // so the full grant scope path would be or s3:///*. + // + // If the S3SubPrefix includes a prefix, append the wildcard character * after + // the prefix to indicate that you want to include all object key names in the + // bucket that start with that prefix. + S3SubPrefix *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessGrantsLocationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessGrantsLocationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AccessGrantsLocationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AccessGrantsLocationConfiguration"} + if s.S3SubPrefix != nil && len(*s.S3SubPrefix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3SubPrefix", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3SubPrefix sets the S3SubPrefix field's value. +func (s *AccessGrantsLocationConfiguration) SetS3SubPrefix(v string) *AccessGrantsLocationConfiguration { + s.S3SubPrefix = &v + return s +} + // An access point used to access a bucket. type AccessPoint struct { _ struct{} `type:"structure"` @@ -6817,7 +9683,7 @@ return s } -// A container for the account-level Amazon S3 Storage Lens configuration. +// A container element for the account-level Amazon S3 Storage Lens configuration. // // For more information about S3 Storage Lens, see Assessing your storage activity // and usage with S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html) @@ -6827,22 +9693,25 @@ type AccountLevel struct { _ struct{} `type:"structure"` - // A container for S3 Storage Lens activity metrics. + // A container element for S3 Storage Lens activity metrics. ActivityMetrics *ActivityMetrics `type:"structure"` - // A container for S3 Storage Lens advanced cost-optimization metrics. + // A container element for S3 Storage Lens advanced cost-optimization metrics. AdvancedCostOptimizationMetrics *AdvancedCostOptimizationMetrics `type:"structure"` - // A container for S3 Storage Lens advanced data-protection metrics. + // A container element for S3 Storage Lens advanced data-protection metrics. AdvancedDataProtectionMetrics *AdvancedDataProtectionMetrics `type:"structure"` - // A container for the S3 Storage Lens bucket-level configuration. + // A container element for the S3 Storage Lens bucket-level configuration. // // BucketLevel is a required field BucketLevel *BucketLevel `type:"structure" required:"true"` - // A container for detailed status code metrics. + // A container element for detailed status code metrics. DetailedStatusCodesMetrics *DetailedStatusCodesMetrics `type:"structure"` + + // A container element for S3 Storage Lens groups metrics. + StorageLensGroupLevel *StorageLensGroupLevel `type:"structure"` } // String returns the string representation. @@ -6911,6 +9780,12 @@ return s } +// SetStorageLensGroupLevel sets the StorageLensGroupLevel field's value. +func (s *AccountLevel) SetStorageLensGroupLevel(v *StorageLensGroupLevel) *AccountLevel { + s.StorageLensGroupLevel = v + return s +} + // The container element for Amazon S3 Storage Lens activity metrics. Activity // metrics show details about how your storage is requested, such as requests // (for example, All requests, Get requests, Put requests), bytes uploaded or @@ -7035,6 +9910,105 @@ return s } +type AssociateAccessGrantsIdentityCenterInput struct { + _ struct{} `locationName:"AssociateAccessGrantsIdentityCenterRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center + // instance that you are associating with your S3 Access Grants instance. An + // IAM Identity Center instance is your corporate identity directory that you + // added to the IAM Identity Center. You can use the ListInstances (https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_ListInstances.html) + // API operation to retrieve a list of your Identity Center instances and their + // ARNs. + // + // IdentityCenterArn is a required field + IdentityCenterArn *string `min:"10" 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 AssociateAccessGrantsIdentityCenterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAccessGrantsIdentityCenterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateAccessGrantsIdentityCenterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateAccessGrantsIdentityCenterInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.IdentityCenterArn == nil { + invalidParams.Add(request.NewErrParamRequired("IdentityCenterArn")) + } + if s.IdentityCenterArn != nil && len(*s.IdentityCenterArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("IdentityCenterArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *AssociateAccessGrantsIdentityCenterInput) SetAccountId(v string) *AssociateAccessGrantsIdentityCenterInput { + s.AccountId = &v + return s +} + +// SetIdentityCenterArn sets the IdentityCenterArn field's value. +func (s *AssociateAccessGrantsIdentityCenterInput) SetIdentityCenterArn(v string) *AssociateAccessGrantsIdentityCenterInput { + s.IdentityCenterArn = &v + return s +} + +func (s *AssociateAccessGrantsIdentityCenterInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type AssociateAccessGrantsIdentityCenterOutput 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 AssociateAccessGrantsIdentityCenterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateAccessGrantsIdentityCenterOutput) GoString() string { + return s.String() +} + // Error details for the failed asynchronous operation. type AsyncErrorDetails struct { _ struct{} `type:"structure"` @@ -7471,6 +10445,666 @@ return s } +type CreateAccessGrantInput struct { + _ struct{} `locationName:"CreateAccessGrantRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The configuration options of the grant location. The grant location is the + // S3 path to the data to which you are granting access. It contains the S3SubPrefix + // field. The grant scope is the result of appending the subprefix to the location + // scope of the registered location. + AccessGrantsLocationConfiguration *AccessGrantsLocationConfiguration `type:"structure"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + // + // If you are passing the default location, you cannot create an access grant + // for the entire default location. You must also specify a bucket or a bucket + // and prefix in the Subprefix field. + // + // AccessGrantsLocationId is a required field + AccessGrantsLocationId *string `min:"1" type:"string" required:"true"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center + // application associated with your Identity Center instance. If an application + // ARN is included in the request to create an access grant, the grantee can + // only access the S3 data through this application. + ApplicationArn *string `min:"10" type:"string"` + + // The user, group, or role to which you are granting access. You can grant + // access to an IAM user or role. If you have added your corporate directory + // to Amazon Web Services IAM Identity Center and associated your Identity Center + // instance with your S3 Access Grants instance, the grantee can also be a corporate + // directory user or group. + // + // Grantee is a required field + Grantee *Grantee `type:"structure" required:"true"` + + // The type of access that you are granting to your S3 data, which can be set + // to one of the following values: + // + // * READ – Grant read-only access to the S3 data. + // + // * WRITE – Grant write-only access to the S3 data. + // + // * READWRITE – Grant both read and write access to the S3 data. + // + // Permission is a required field + Permission *string `type:"string" required:"true" enum:"Permission"` + + // The type of S3SubPrefix. The only possible value is Object. Pass this value + // if the access grant scope is an object. Do not pass this value if the access + // grant scope is a bucket or a bucket and a prefix. + S3PrefixType *string `type:"string" enum:"S3PrefixType"` + + // The Amazon Web Services resource tags that you are adding to the access grant. + // Each tag is a label consisting of a user-defined key and value. Tags can + // help you manage, identify, organize, search for, and filter resources. + Tags []*Tag `locationNameList:"Tag" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAccessGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAccessGrantInput"} + if s.AccessGrantsLocationId == nil { + invalidParams.Add(request.NewErrParamRequired("AccessGrantsLocationId")) + } + if s.AccessGrantsLocationId != nil && len(*s.AccessGrantsLocationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessGrantsLocationId", 1)) + } + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.Grantee == nil { + invalidParams.Add(request.NewErrParamRequired("Grantee")) + } + if s.Permission == nil { + invalidParams.Add(request.NewErrParamRequired("Permission")) + } + if s.AccessGrantsLocationConfiguration != nil { + if err := s.AccessGrantsLocationConfiguration.Validate(); err != nil { + invalidParams.AddNested("AccessGrantsLocationConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessGrantsLocationConfiguration sets the AccessGrantsLocationConfiguration field's value. +func (s *CreateAccessGrantInput) SetAccessGrantsLocationConfiguration(v *AccessGrantsLocationConfiguration) *CreateAccessGrantInput { + s.AccessGrantsLocationConfiguration = v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *CreateAccessGrantInput) SetAccessGrantsLocationId(v string) *CreateAccessGrantInput { + s.AccessGrantsLocationId = &v + return s +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateAccessGrantInput) SetAccountId(v string) *CreateAccessGrantInput { + s.AccountId = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *CreateAccessGrantInput) SetApplicationArn(v string) *CreateAccessGrantInput { + s.ApplicationArn = &v + return s +} + +// SetGrantee sets the Grantee field's value. +func (s *CreateAccessGrantInput) SetGrantee(v *Grantee) *CreateAccessGrantInput { + s.Grantee = v + return s +} + +// SetPermission sets the Permission field's value. +func (s *CreateAccessGrantInput) SetPermission(v string) *CreateAccessGrantInput { + s.Permission = &v + return s +} + +// SetS3PrefixType sets the S3PrefixType field's value. +func (s *CreateAccessGrantInput) SetS3PrefixType(v string) *CreateAccessGrantInput { + s.S3PrefixType = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAccessGrantInput) SetTags(v []*Tag) *CreateAccessGrantInput { + s.Tags = v + return s +} + +func (s *CreateAccessGrantInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type CreateAccessGrantOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the access grant. + AccessGrantArn *string `min:"1" type:"string"` + + // The ID of the access grant. S3 Access Grants auto-generates this ID when + // you create the access grant. + AccessGrantId *string `min:"1" type:"string"` + + // The configuration options of the grant location. The grant location is the + // S3 path to the data to which you are granting access. + AccessGrantsLocationConfiguration *AccessGrantsLocationConfiguration `type:"structure"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center + // application associated with your Identity Center instance. If the grant includes + // an application ARN, the grantee can only access the S3 data through this + // application. + ApplicationArn *string `min:"10" type:"string"` + + // The date and time when you created the access grant. + CreatedAt *time.Time `type:"timestamp"` + + // The S3 path of the data to which you are granting access. It is the result + // of appending the Subprefix to the location scope. + GrantScope *string `min:"1" type:"string"` + + // The user, group, or role to which you are granting access. You can grant + // access to an IAM user or role. If you have added your corporate directory + // to Amazon Web Services IAM Identity Center and associated your Identity Center + // instance with your S3 Access Grants instance, the grantee can also be a corporate + // directory user or group. + Grantee *Grantee `type:"structure"` + + // The type of access that you are granting to your S3 data, which can be set + // to one of the following values: + // + // * READ – Grant read-only access to the S3 data. + // + // * WRITE – Grant write-only access to the S3 data. + // + // * READWRITE – Grant both read and write access to the S3 data. + Permission *string `type:"string" enum:"Permission"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantOutput) GoString() string { + return s.String() +} + +// SetAccessGrantArn sets the AccessGrantArn field's value. +func (s *CreateAccessGrantOutput) SetAccessGrantArn(v string) *CreateAccessGrantOutput { + s.AccessGrantArn = &v + return s +} + +// SetAccessGrantId sets the AccessGrantId field's value. +func (s *CreateAccessGrantOutput) SetAccessGrantId(v string) *CreateAccessGrantOutput { + s.AccessGrantId = &v + return s +} + +// SetAccessGrantsLocationConfiguration sets the AccessGrantsLocationConfiguration field's value. +func (s *CreateAccessGrantOutput) SetAccessGrantsLocationConfiguration(v *AccessGrantsLocationConfiguration) *CreateAccessGrantOutput { + s.AccessGrantsLocationConfiguration = v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *CreateAccessGrantOutput) SetAccessGrantsLocationId(v string) *CreateAccessGrantOutput { + s.AccessGrantsLocationId = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *CreateAccessGrantOutput) SetApplicationArn(v string) *CreateAccessGrantOutput { + s.ApplicationArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateAccessGrantOutput) SetCreatedAt(v time.Time) *CreateAccessGrantOutput { + s.CreatedAt = &v + return s +} + +// SetGrantScope sets the GrantScope field's value. +func (s *CreateAccessGrantOutput) SetGrantScope(v string) *CreateAccessGrantOutput { + s.GrantScope = &v + return s +} + +// SetGrantee sets the Grantee field's value. +func (s *CreateAccessGrantOutput) SetGrantee(v *Grantee) *CreateAccessGrantOutput { + s.Grantee = v + return s +} + +// SetPermission sets the Permission field's value. +func (s *CreateAccessGrantOutput) SetPermission(v string) *CreateAccessGrantOutput { + s.Permission = &v + return s +} + +type CreateAccessGrantsInstanceInput struct { + _ struct{} `locationName:"CreateAccessGrantsInstanceRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // If you would like to associate your S3 Access Grants instance with an Amazon + // Web Services IAM Identity Center instance, use this field to pass the Amazon + // Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance + // that you are associating with your S3 Access Grants instance. An IAM Identity + // Center instance is your corporate identity directory that you added to the + // IAM Identity Center. You can use the ListInstances (https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_ListInstances.html) + // API operation to retrieve a list of your Identity Center instances and their + // ARNs. + IdentityCenterArn *string `min:"10" type:"string"` + + // The Amazon Web Services resource tags that you are adding to the S3 Access + // Grants instance. Each tag is a label consisting of a user-defined key and + // value. Tags can help you manage, identify, organize, search for, and filter + // resources. + Tags []*Tag `locationNameList:"Tag" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAccessGrantsInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAccessGrantsInstanceInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.IdentityCenterArn != nil && len(*s.IdentityCenterArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("IdentityCenterArn", 10)) + } + 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 +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateAccessGrantsInstanceInput) SetAccountId(v string) *CreateAccessGrantsInstanceInput { + s.AccountId = &v + return s +} + +// SetIdentityCenterArn sets the IdentityCenterArn field's value. +func (s *CreateAccessGrantsInstanceInput) SetIdentityCenterArn(v string) *CreateAccessGrantsInstanceInput { + s.IdentityCenterArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAccessGrantsInstanceInput) SetTags(v []*Tag) *CreateAccessGrantsInstanceInput { + s.Tags = v + return s +} + +func (s *CreateAccessGrantsInstanceInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type CreateAccessGrantsInstanceOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the S3 Access Grants instance. + AccessGrantsInstanceArn *string `min:"1" type:"string"` + + // The ID of the S3 Access Grants instance. The ID is default. You can have + // one S3 Access Grants instance per Region per account. + AccessGrantsInstanceId *string `min:"1" type:"string"` + + // The date and time when you created the S3 Access Grants instance. + CreatedAt *time.Time `type:"timestamp"` + + // If you associated your S3 Access Grants instance with an Amazon Web Services + // IAM Identity Center instance, this field returns the Amazon Resource Name + // (ARN) of the IAM Identity Center instance application; a subresource of the + // original Identity Center instance passed in the request. S3 Access Grants + // creates this Identity Center application for this specific S3 Access Grants + // instance. + IdentityCenterArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsInstanceOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsInstanceArn sets the AccessGrantsInstanceArn field's value. +func (s *CreateAccessGrantsInstanceOutput) SetAccessGrantsInstanceArn(v string) *CreateAccessGrantsInstanceOutput { + s.AccessGrantsInstanceArn = &v + return s +} + +// SetAccessGrantsInstanceId sets the AccessGrantsInstanceId field's value. +func (s *CreateAccessGrantsInstanceOutput) SetAccessGrantsInstanceId(v string) *CreateAccessGrantsInstanceOutput { + s.AccessGrantsInstanceId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateAccessGrantsInstanceOutput) SetCreatedAt(v time.Time) *CreateAccessGrantsInstanceOutput { + s.CreatedAt = &v + return s +} + +// SetIdentityCenterArn sets the IdentityCenterArn field's value. +func (s *CreateAccessGrantsInstanceOutput) SetIdentityCenterArn(v string) *CreateAccessGrantsInstanceOutput { + s.IdentityCenterArn = &v + return s +} + +type CreateAccessGrantsLocationInput struct { + _ struct{} `locationName:"CreateAccessGrantsLocationRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role for the registered location. + // S3 Access Grants assumes this role to manage access to the registered location. + // + // IAMRoleArn is a required field + IAMRoleArn *string `min:"1" type:"string" required:"true"` + + // The S3 path to the location that you are registering. The location scope + // can be the default S3 location s3://, the S3 path to a bucket s3://, + // or the S3 path to a bucket and prefix s3:///. A prefix in + // S3 is a string of characters at the beginning of an object key name used + // to organize the objects that you store in your S3 buckets. For example, object + // key names that start with the engineering/ prefix or object key names that + // start with the marketing/campaigns/ prefix. + // + // LocationScope is a required field + LocationScope *string `min:"1" type:"string" required:"true"` + + // The Amazon Web Services resource tags that you are adding to the S3 Access + // Grants location. Each tag is a label consisting of a user-defined key and + // value. Tags can help you manage, identify, organize, search for, and filter + // resources. + Tags []*Tag `locationNameList:"Tag" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsLocationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsLocationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAccessGrantsLocationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAccessGrantsLocationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.IAMRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("IAMRoleArn")) + } + if s.IAMRoleArn != nil && len(*s.IAMRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IAMRoleArn", 1)) + } + if s.LocationScope == nil { + invalidParams.Add(request.NewErrParamRequired("LocationScope")) + } + if s.LocationScope != nil && len(*s.LocationScope) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LocationScope", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateAccessGrantsLocationInput) SetAccountId(v string) *CreateAccessGrantsLocationInput { + s.AccountId = &v + return s +} + +// SetIAMRoleArn sets the IAMRoleArn field's value. +func (s *CreateAccessGrantsLocationInput) SetIAMRoleArn(v string) *CreateAccessGrantsLocationInput { + s.IAMRoleArn = &v + return s +} + +// SetLocationScope sets the LocationScope field's value. +func (s *CreateAccessGrantsLocationInput) SetLocationScope(v string) *CreateAccessGrantsLocationInput { + s.LocationScope = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAccessGrantsLocationInput) SetTags(v []*Tag) *CreateAccessGrantsLocationInput { + s.Tags = v + return s +} + +func (s *CreateAccessGrantsLocationInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type CreateAccessGrantsLocationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the location you are registering. + AccessGrantsLocationArn *string `min:"1" type:"string"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The date and time when you registered the location. + CreatedAt *time.Time `type:"timestamp"` + + // The Amazon Resource Name (ARN) of the IAM role for the registered location. + // S3 Access Grants assumes this role to manage access to the registered location. + IAMRoleArn *string `min:"1" type:"string"` + + // The S3 URI path to the location that you are registering. The location scope + // can be the default S3 location s3://, the S3 path to a bucket, or the S3 + // path to a bucket and prefix. A prefix in S3 is a string of characters at + // the beginning of an object key name used to organize the objects that you + // store in your S3 buckets. For example, object key names that start with the + // engineering/ prefix or object key names that start with the marketing/campaigns/ + // prefix. + LocationScope *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsLocationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAccessGrantsLocationOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsLocationArn sets the AccessGrantsLocationArn field's value. +func (s *CreateAccessGrantsLocationOutput) SetAccessGrantsLocationArn(v string) *CreateAccessGrantsLocationOutput { + s.AccessGrantsLocationArn = &v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *CreateAccessGrantsLocationOutput) SetAccessGrantsLocationId(v string) *CreateAccessGrantsLocationOutput { + s.AccessGrantsLocationId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateAccessGrantsLocationOutput) SetCreatedAt(v time.Time) *CreateAccessGrantsLocationOutput { + s.CreatedAt = &v + return s +} + +// SetIAMRoleArn sets the IAMRoleArn field's value. +func (s *CreateAccessGrantsLocationOutput) SetIAMRoleArn(v string) *CreateAccessGrantsLocationOutput { + s.IAMRoleArn = &v + return s +} + +// SetLocationScope sets the LocationScope field's value. +func (s *CreateAccessGrantsLocationOutput) SetLocationScope(v string) *CreateAccessGrantsLocationOutput { + s.LocationScope = &v + return s +} + type CreateAccessPointForObjectLambdaInput struct { _ struct{} `locationName:"CreateAccessPointForObjectLambdaRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` @@ -8545,6 +12179,545 @@ return s } +type CreateStorageLensGroupInput struct { + _ struct{} `locationName:"CreateStorageLensGroupRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The Amazon Web Services account ID that the Storage Lens group is created + // from and associated with. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Storage Lens group configuration. + // + // StorageLensGroup is a required field + StorageLensGroup *StorageLensGroup `type:"structure" required:"true"` + + // The Amazon Web Services resource tags that you're adding to your Storage + // Lens group. This parameter is optional. + Tags []*Tag `locationNameList:"Tag" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateStorageLensGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateStorageLensGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateStorageLensGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateStorageLensGroupInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.StorageLensGroup == nil { + invalidParams.Add(request.NewErrParamRequired("StorageLensGroup")) + } + if s.StorageLensGroup != nil { + if err := s.StorageLensGroup.Validate(); err != nil { + invalidParams.AddNested("StorageLensGroup", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateStorageLensGroupInput) SetAccountId(v string) *CreateStorageLensGroupInput { + s.AccountId = &v + return s +} + +// SetStorageLensGroup sets the StorageLensGroup field's value. +func (s *CreateStorageLensGroupInput) SetStorageLensGroup(v *StorageLensGroup) *CreateStorageLensGroupInput { + s.StorageLensGroup = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateStorageLensGroupInput) SetTags(v []*Tag) *CreateStorageLensGroupInput { + s.Tags = v + return s +} + +func (s *CreateStorageLensGroupInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type CreateStorageLensGroupOutput 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 CreateStorageLensGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateStorageLensGroupOutput) GoString() string { + return s.String() +} + +// The Amazon Web Services Security Token Service temporary credential that +// S3 Access Grants vends to grantees and client applications. +type Credentials struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The unique access key ID of the Amazon Web Services STS temporary credential + // that S3 Access Grants vends to grantees and client applications. + // + // AccessKeyId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Credentials's + // String and GoString methods. + AccessKeyId *string `type:"string" sensitive:"true"` + + // The expiration date and time of the temporary credential that S3 Access Grants + // vends to grantees and client applications. + Expiration *time.Time `type:"timestamp"` + + // The secret access key of the Amazon Web Services STS temporary credential + // that S3 Access Grants vends to grantees and client applications. + // + // SecretAccessKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Credentials's + // String and GoString methods. + SecretAccessKey *string `type:"string" sensitive:"true"` + + // The Amazon Web Services STS temporary credential that S3 Access Grants vends + // to grantees and client applications. + // + // SessionToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Credentials's + // String and GoString methods. + SessionToken *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Credentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Credentials) GoString() string { + return s.String() +} + +// SetAccessKeyId sets the AccessKeyId field's value. +func (s *Credentials) SetAccessKeyId(v string) *Credentials { + s.AccessKeyId = &v + return s +} + +// SetExpiration sets the Expiration field's value. +func (s *Credentials) SetExpiration(v time.Time) *Credentials { + s.Expiration = &v + return s +} + +// SetSecretAccessKey sets the SecretAccessKey field's value. +func (s *Credentials) SetSecretAccessKey(v string) *Credentials { + s.SecretAccessKey = &v + return s +} + +// SetSessionToken sets the SessionToken field's value. +func (s *Credentials) SetSessionToken(v string) *Credentials { + s.SessionToken = &v + return s +} + +type DeleteAccessGrantInput struct { + _ struct{} `locationName:"DeleteAccessGrantRequest" type:"structure"` + + // The ID of the access grant. S3 Access Grants auto-generates this ID when + // you create the access grant. + // + // AccessGrantId is a required field + AccessGrantId *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAccessGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAccessGrantInput"} + if s.AccessGrantId == nil { + invalidParams.Add(request.NewErrParamRequired("AccessGrantId")) + } + if s.AccessGrantId != nil && len(*s.AccessGrantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessGrantId", 1)) + } + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessGrantId sets the AccessGrantId field's value. +func (s *DeleteAccessGrantInput) SetAccessGrantId(v string) *DeleteAccessGrantInput { + s.AccessGrantId = &v + return s +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteAccessGrantInput) SetAccountId(v string) *DeleteAccessGrantInput { + s.AccountId = &v + return s +} + +func (s *DeleteAccessGrantInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DeleteAccessGrantOutput 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 DeleteAccessGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantOutput) GoString() string { + return s.String() +} + +type DeleteAccessGrantsInstanceInput struct { + _ struct{} `locationName:"DeleteAccessGrantsInstanceRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAccessGrantsInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAccessGrantsInstanceInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteAccessGrantsInstanceInput) SetAccountId(v string) *DeleteAccessGrantsInstanceInput { + s.AccountId = &v + return s +} + +func (s *DeleteAccessGrantsInstanceInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DeleteAccessGrantsInstanceOutput 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 DeleteAccessGrantsInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsInstanceOutput) GoString() string { + return s.String() +} + +type DeleteAccessGrantsInstanceResourcePolicyInput struct { + _ struct{} `locationName:"DeleteAccessGrantsInstanceResourcePolicyRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsInstanceResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsInstanceResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAccessGrantsInstanceResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAccessGrantsInstanceResourcePolicyInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteAccessGrantsInstanceResourcePolicyInput) SetAccountId(v string) *DeleteAccessGrantsInstanceResourcePolicyInput { + s.AccountId = &v + return s +} + +func (s *DeleteAccessGrantsInstanceResourcePolicyInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DeleteAccessGrantsInstanceResourcePolicyOutput 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 DeleteAccessGrantsInstanceResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsInstanceResourcePolicyOutput) GoString() string { + return s.String() +} + +type DeleteAccessGrantsLocationInput struct { + _ struct{} `locationName:"DeleteAccessGrantsLocationRequest" type:"structure"` + + // The ID of the registered location that you are deregistering from your S3 + // Access Grants instance. S3 Access Grants assigned this ID when you registered + // the location. S3 Access Grants assigns the ID default to the default location + // s3:// and assigns an auto-generated ID to other locations that you register. + // + // AccessGrantsLocationId is a required field + AccessGrantsLocationId *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsLocationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsLocationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAccessGrantsLocationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAccessGrantsLocationInput"} + if s.AccessGrantsLocationId == nil { + invalidParams.Add(request.NewErrParamRequired("AccessGrantsLocationId")) + } + if s.AccessGrantsLocationId != nil && len(*s.AccessGrantsLocationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessGrantsLocationId", 1)) + } + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *DeleteAccessGrantsLocationInput) SetAccessGrantsLocationId(v string) *DeleteAccessGrantsLocationInput { + s.AccessGrantsLocationId = &v + return s +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteAccessGrantsLocationInput) SetAccountId(v string) *DeleteAccessGrantsLocationInput { + s.AccountId = &v + return s +} + +func (s *DeleteAccessGrantsLocationInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DeleteAccessGrantsLocationOutput 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 DeleteAccessGrantsLocationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAccessGrantsLocationOutput) GoString() string { + return s.String() +} + type DeleteAccessPointForObjectLambdaInput struct { _ struct{} `locationName:"DeleteAccessPointForObjectLambdaRequest" type:"structure"` @@ -10340,6 +14513,101 @@ return s.String() } +type DeleteStorageLensGroupInput struct { + _ struct{} `locationName:"DeleteStorageLensGroupRequest" type:"structure"` + + // The Amazon Web Services account ID used to create the Storage Lens group + // that you're trying to delete. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The name of the Storage Lens group that you're trying to delete. + // + // Name is a required field + Name *string `location:"uri" locationName:"name" 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 DeleteStorageLensGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteStorageLensGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteStorageLensGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteStorageLensGroupInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteStorageLensGroupInput) SetAccountId(v string) *DeleteStorageLensGroupInput { + s.AccountId = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteStorageLensGroupInput) SetName(v string) *DeleteStorageLensGroupInput { + s.Name = &v + return s +} + +func (s *DeleteStorageLensGroupInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DeleteStorageLensGroupOutput 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 DeleteStorageLensGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteStorageLensGroupOutput) GoString() string { + return s.String() +} + type DescribeJobInput struct { _ struct{} `locationName:"DescribeJobRequest" type:"structure"` @@ -10596,7 +14864,7 @@ // S3 on Outposts are stored in the OUTPOSTS storage class. S3 on Outposts uses // the OUTPOSTS storage class to create the object replicas. // - // Values other than OUTPOSTS are not supported by Amazon S3 on Outposts. + // Values other than OUTPOSTS aren't supported by Amazon S3 on Outposts. StorageClass *string `type:"string" enum:"ReplicationStorageClass"` } @@ -10728,6 +14996,83 @@ return s } +type DissociateAccessGrantsIdentityCenterInput struct { + _ struct{} `locationName:"DissociateAccessGrantsIdentityCenterRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DissociateAccessGrantsIdentityCenterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DissociateAccessGrantsIdentityCenterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DissociateAccessGrantsIdentityCenterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DissociateAccessGrantsIdentityCenterInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DissociateAccessGrantsIdentityCenterInput) SetAccountId(v string) *DissociateAccessGrantsIdentityCenterInput { + s.AccountId = &v + return s +} + +func (s *DissociateAccessGrantsIdentityCenterInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DissociateAccessGrantsIdentityCenterOutput 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 DissociateAccessGrantsIdentityCenterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DissociateAccessGrantsIdentityCenterOutput) GoString() string { + return s.String() +} + // Specifies encryption-related information for an Amazon S3 bucket that is // a destination for replicated objects. // @@ -10953,6 +15298,690 @@ return s } +type GetAccessGrantInput struct { + _ struct{} `locationName:"GetAccessGrantRequest" type:"structure"` + + // The ID of the access grant. S3 Access Grants auto-generates this ID when + // you create the access grant. + // + // AccessGrantId is a required field + AccessGrantId *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessGrantInput"} + if s.AccessGrantId == nil { + invalidParams.Add(request.NewErrParamRequired("AccessGrantId")) + } + if s.AccessGrantId != nil && len(*s.AccessGrantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessGrantId", 1)) + } + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessGrantId sets the AccessGrantId field's value. +func (s *GetAccessGrantInput) SetAccessGrantId(v string) *GetAccessGrantInput { + s.AccessGrantId = &v + return s +} + +// SetAccountId sets the AccountId field's value. +func (s *GetAccessGrantInput) SetAccountId(v string) *GetAccessGrantInput { + s.AccountId = &v + return s +} + +func (s *GetAccessGrantInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetAccessGrantOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the access grant. + AccessGrantArn *string `min:"1" type:"string"` + + // The ID of the access grant. S3 Access Grants auto-generates this ID when + // you create the access grant. + AccessGrantId *string `min:"1" type:"string"` + + // The configuration options of the grant location. The grant location is the + // S3 path to the data to which you are granting access. + AccessGrantsLocationConfiguration *AccessGrantsLocationConfiguration `type:"structure"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center + // application associated with your Identity Center instance. If the grant includes + // an application ARN, the grantee can only access the S3 data through this + // application. + ApplicationArn *string `min:"10" type:"string"` + + // The date and time when you created the access grant. + CreatedAt *time.Time `type:"timestamp"` + + // The S3 path of the data to which you are granting access. It is the result + // of appending the Subprefix to the location scope. + GrantScope *string `min:"1" type:"string"` + + // The user, group, or role to which you are granting access. You can grant + // access to an IAM user or role. If you have added a corporate directory to + // Amazon Web Services IAM Identity Center and associated this Identity Center + // instance with the S3 Access Grants instance, the grantee can also be a corporate + // directory user or group. + Grantee *Grantee `type:"structure"` + + // The type of permission that was granted in the access grant. Can be one of + // the following values: + // + // * READ – Grant read-only access to the S3 data. + // + // * WRITE – Grant write-only access to the S3 data. + // + // * READWRITE – Grant both read and write access to the S3 data. + Permission *string `type:"string" enum:"Permission"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantOutput) GoString() string { + return s.String() +} + +// SetAccessGrantArn sets the AccessGrantArn field's value. +func (s *GetAccessGrantOutput) SetAccessGrantArn(v string) *GetAccessGrantOutput { + s.AccessGrantArn = &v + return s +} + +// SetAccessGrantId sets the AccessGrantId field's value. +func (s *GetAccessGrantOutput) SetAccessGrantId(v string) *GetAccessGrantOutput { + s.AccessGrantId = &v + return s +} + +// SetAccessGrantsLocationConfiguration sets the AccessGrantsLocationConfiguration field's value. +func (s *GetAccessGrantOutput) SetAccessGrantsLocationConfiguration(v *AccessGrantsLocationConfiguration) *GetAccessGrantOutput { + s.AccessGrantsLocationConfiguration = v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *GetAccessGrantOutput) SetAccessGrantsLocationId(v string) *GetAccessGrantOutput { + s.AccessGrantsLocationId = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *GetAccessGrantOutput) SetApplicationArn(v string) *GetAccessGrantOutput { + s.ApplicationArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetAccessGrantOutput) SetCreatedAt(v time.Time) *GetAccessGrantOutput { + s.CreatedAt = &v + return s +} + +// SetGrantScope sets the GrantScope field's value. +func (s *GetAccessGrantOutput) SetGrantScope(v string) *GetAccessGrantOutput { + s.GrantScope = &v + return s +} + +// SetGrantee sets the Grantee field's value. +func (s *GetAccessGrantOutput) SetGrantee(v *Grantee) *GetAccessGrantOutput { + s.Grantee = v + return s +} + +// SetPermission sets the Permission field's value. +func (s *GetAccessGrantOutput) SetPermission(v string) *GetAccessGrantOutput { + s.Permission = &v + return s +} + +type GetAccessGrantsInstanceForPrefixInput struct { + _ struct{} `locationName:"GetAccessGrantsInstanceForPrefixRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The S3 prefix of the access grants that you would like to retrieve. + // + // S3Prefix is a required field + S3Prefix *string `location:"querystring" locationName:"s3prefix" 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 GetAccessGrantsInstanceForPrefixInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceForPrefixInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessGrantsInstanceForPrefixInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessGrantsInstanceForPrefixInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.S3Prefix == nil { + invalidParams.Add(request.NewErrParamRequired("S3Prefix")) + } + if s.S3Prefix != nil && len(*s.S3Prefix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3Prefix", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetAccessGrantsInstanceForPrefixInput) SetAccountId(v string) *GetAccessGrantsInstanceForPrefixInput { + s.AccountId = &v + return s +} + +// SetS3Prefix sets the S3Prefix field's value. +func (s *GetAccessGrantsInstanceForPrefixInput) SetS3Prefix(v string) *GetAccessGrantsInstanceForPrefixInput { + s.S3Prefix = &v + return s +} + +func (s *GetAccessGrantsInstanceForPrefixInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetAccessGrantsInstanceForPrefixOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the S3 Access Grants instance. + AccessGrantsInstanceArn *string `min:"1" type:"string"` + + // The ID of the S3 Access Grants instance. The ID is default. You can have + // one S3 Access Grants instance per Region per account. + AccessGrantsInstanceId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceForPrefixOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceForPrefixOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsInstanceArn sets the AccessGrantsInstanceArn field's value. +func (s *GetAccessGrantsInstanceForPrefixOutput) SetAccessGrantsInstanceArn(v string) *GetAccessGrantsInstanceForPrefixOutput { + s.AccessGrantsInstanceArn = &v + return s +} + +// SetAccessGrantsInstanceId sets the AccessGrantsInstanceId field's value. +func (s *GetAccessGrantsInstanceForPrefixOutput) SetAccessGrantsInstanceId(v string) *GetAccessGrantsInstanceForPrefixOutput { + s.AccessGrantsInstanceId = &v + return s +} + +type GetAccessGrantsInstanceInput struct { + _ struct{} `locationName:"GetAccessGrantsInstanceRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessGrantsInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessGrantsInstanceInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetAccessGrantsInstanceInput) SetAccountId(v string) *GetAccessGrantsInstanceInput { + s.AccountId = &v + return s +} + +func (s *GetAccessGrantsInstanceInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetAccessGrantsInstanceOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the S3 Access Grants instance. + AccessGrantsInstanceArn *string `min:"1" type:"string"` + + // The ID of the S3 Access Grants instance. The ID is default. You can have + // one S3 Access Grants instance per Region per account. + AccessGrantsInstanceId *string `min:"1" type:"string"` + + // The date and time when you created the S3 Access Grants instance. + CreatedAt *time.Time `type:"timestamp"` + + // If you associated your S3 Access Grants instance with an Amazon Web Services + // IAM Identity Center instance, this field returns the Amazon Resource Name + // (ARN) of the Amazon Web Services IAM Identity Center instance application; + // a subresource of the original Identity Center instance. S3 Access Grants + // creates this Identity Center application for the specific S3 Access Grants + // instance. + IdentityCenterArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsInstanceArn sets the AccessGrantsInstanceArn field's value. +func (s *GetAccessGrantsInstanceOutput) SetAccessGrantsInstanceArn(v string) *GetAccessGrantsInstanceOutput { + s.AccessGrantsInstanceArn = &v + return s +} + +// SetAccessGrantsInstanceId sets the AccessGrantsInstanceId field's value. +func (s *GetAccessGrantsInstanceOutput) SetAccessGrantsInstanceId(v string) *GetAccessGrantsInstanceOutput { + s.AccessGrantsInstanceId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetAccessGrantsInstanceOutput) SetCreatedAt(v time.Time) *GetAccessGrantsInstanceOutput { + s.CreatedAt = &v + return s +} + +// SetIdentityCenterArn sets the IdentityCenterArn field's value. +func (s *GetAccessGrantsInstanceOutput) SetIdentityCenterArn(v string) *GetAccessGrantsInstanceOutput { + s.IdentityCenterArn = &v + return s +} + +type GetAccessGrantsInstanceResourcePolicyInput struct { + _ struct{} `locationName:"GetAccessGrantsInstanceResourcePolicyRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessGrantsInstanceResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessGrantsInstanceResourcePolicyInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetAccessGrantsInstanceResourcePolicyInput) SetAccountId(v string) *GetAccessGrantsInstanceResourcePolicyInput { + s.AccountId = &v + return s +} + +func (s *GetAccessGrantsInstanceResourcePolicyInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetAccessGrantsInstanceResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // The date and time when you created the S3 Access Grants instance resource + // policy. + CreatedAt *time.Time `type:"timestamp"` + + // The Organization of the resource policy of the S3 Access Grants instance. + Organization *string `min:"12" type:"string"` + + // The resource policy of the S3 Access Grants instance. + Policy *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsInstanceResourcePolicyOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetAccessGrantsInstanceResourcePolicyOutput) SetCreatedAt(v time.Time) *GetAccessGrantsInstanceResourcePolicyOutput { + s.CreatedAt = &v + return s +} + +// SetOrganization sets the Organization field's value. +func (s *GetAccessGrantsInstanceResourcePolicyOutput) SetOrganization(v string) *GetAccessGrantsInstanceResourcePolicyOutput { + s.Organization = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *GetAccessGrantsInstanceResourcePolicyOutput) SetPolicy(v string) *GetAccessGrantsInstanceResourcePolicyOutput { + s.Policy = &v + return s +} + +type GetAccessGrantsLocationInput struct { + _ struct{} `locationName:"GetAccessGrantsLocationRequest" type:"structure"` + + // The ID of the registered location that you are retrieving. S3 Access Grants + // assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + // + // AccessGrantsLocationId is a required field + AccessGrantsLocationId *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsLocationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsLocationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessGrantsLocationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessGrantsLocationInput"} + if s.AccessGrantsLocationId == nil { + invalidParams.Add(request.NewErrParamRequired("AccessGrantsLocationId")) + } + if s.AccessGrantsLocationId != nil && len(*s.AccessGrantsLocationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessGrantsLocationId", 1)) + } + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *GetAccessGrantsLocationInput) SetAccessGrantsLocationId(v string) *GetAccessGrantsLocationInput { + s.AccessGrantsLocationId = &v + return s +} + +// SetAccountId sets the AccountId field's value. +func (s *GetAccessGrantsLocationInput) SetAccountId(v string) *GetAccessGrantsLocationInput { + s.AccountId = &v + return s +} + +func (s *GetAccessGrantsLocationInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetAccessGrantsLocationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the registered location. + AccessGrantsLocationArn *string `min:"1" type:"string"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The date and time when you registered the location. + CreatedAt *time.Time `type:"timestamp"` + + // The Amazon Resource Name (ARN) of the IAM role for the registered location. + // S3 Access Grants assumes this role to manage access to the registered location. + IAMRoleArn *string `min:"1" type:"string"` + + // The S3 URI path to the registered location. The location scope can be the + // default S3 location s3://, the S3 path to a bucket, or the S3 path to a bucket + // and prefix. A prefix in S3 is a string of characters at the beginning of + // an object key name used to organize the objects that you store in your S3 + // buckets. For example, object key names that start with the engineering/ prefix + // or object key names that start with the marketing/campaigns/ prefix. + LocationScope *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsLocationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAccessGrantsLocationOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsLocationArn sets the AccessGrantsLocationArn field's value. +func (s *GetAccessGrantsLocationOutput) SetAccessGrantsLocationArn(v string) *GetAccessGrantsLocationOutput { + s.AccessGrantsLocationArn = &v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *GetAccessGrantsLocationOutput) SetAccessGrantsLocationId(v string) *GetAccessGrantsLocationOutput { + s.AccessGrantsLocationId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetAccessGrantsLocationOutput) SetCreatedAt(v time.Time) *GetAccessGrantsLocationOutput { + s.CreatedAt = &v + return s +} + +// SetIAMRoleArn sets the IAMRoleArn field's value. +func (s *GetAccessGrantsLocationOutput) SetIAMRoleArn(v string) *GetAccessGrantsLocationOutput { + s.IAMRoleArn = &v + return s +} + +// SetLocationScope sets the LocationScope field's value. +func (s *GetAccessGrantsLocationOutput) SetLocationScope(v string) *GetAccessGrantsLocationOutput { + s.LocationScope = &v + return s +} + type GetAccessPointConfigurationForObjectLambdaInput struct { _ struct{} `locationName:"GetAccessPointConfigurationForObjectLambdaRequest" type:"structure"` @@ -12861,6 +17890,190 @@ return s } +type GetDataAccessInput struct { + _ struct{} `locationName:"GetDataAccessRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The session duration, in seconds, of the temporary access credential that + // S3 Access Grants vends to the grantee or client application. The default + // value is 1 hour, but the grantee can specify a range from 900 seconds (15 + // minutes) up to 43200 seconds (12 hours). If the grantee requests a value + // higher than this maximum, the operation fails. + DurationSeconds *int64 `location:"querystring" locationName:"durationSeconds" min:"900" type:"integer"` + + // The type of permission granted to your S3 data, which can be set to one of + // the following values: + // + // * READ – Grant read-only access to the S3 data. + // + // * WRITE – Grant write-only access to the S3 data. + // + // * READWRITE – Grant both read and write access to the S3 data. + // + // Permission is a required field + Permission *string `location:"querystring" locationName:"permission" type:"string" required:"true" enum:"Permission"` + + // The scope of the temporary access credential that S3 Access Grants vends + // to the grantee or client application. + // + // * Default – The scope of the returned temporary access token is the + // scope of the grant that is closest to the target scope. + // + // * Minimal – The scope of the returned temporary access token is the + // same as the requested target scope as long as the requested scope is the + // same as or a subset of the grant scope. + Privilege *string `location:"querystring" locationName:"privilege" type:"string" enum:"Privilege"` + + // The S3 URI path of the data to which you are requesting temporary access + // credentials. If the requesting account has an access grant for this data, + // S3 Access Grants vends temporary access credentials in the response. + // + // Target is a required field + Target *string `location:"querystring" locationName:"target" min:"1" type:"string" required:"true"` + + // The type of Target. The only possible value is Object. Pass this value if + // the target data that you would like to access is a path to an object. Do + // not pass this value if the target data is a bucket or a bucket and a prefix. + TargetType *string `location:"querystring" locationName:"targetType" type:"string" enum:"S3PrefixType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataAccessInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.DurationSeconds != nil && *s.DurationSeconds < 900 { + invalidParams.Add(request.NewErrParamMinValue("DurationSeconds", 900)) + } + if s.Permission == nil { + invalidParams.Add(request.NewErrParamRequired("Permission")) + } + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + if s.Target != nil && len(*s.Target) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Target", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetDataAccessInput) SetAccountId(v string) *GetDataAccessInput { + s.AccountId = &v + return s +} + +// SetDurationSeconds sets the DurationSeconds field's value. +func (s *GetDataAccessInput) SetDurationSeconds(v int64) *GetDataAccessInput { + s.DurationSeconds = &v + return s +} + +// SetPermission sets the Permission field's value. +func (s *GetDataAccessInput) SetPermission(v string) *GetDataAccessInput { + s.Permission = &v + return s +} + +// SetPrivilege sets the Privilege field's value. +func (s *GetDataAccessInput) SetPrivilege(v string) *GetDataAccessInput { + s.Privilege = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *GetDataAccessInput) SetTarget(v string) *GetDataAccessInput { + s.Target = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *GetDataAccessInput) SetTargetType(v string) *GetDataAccessInput { + s.TargetType = &v + return s +} + +func (s *GetDataAccessInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetDataAccessOutput struct { + _ struct{} `type:"structure"` + + // The temporary credential token that S3 Access Grants vends. + // + // Credentials is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetDataAccessOutput's + // String and GoString methods. + Credentials *Credentials `type:"structure" sensitive:"true"` + + // The S3 URI path of the data to which you are being granted temporary access + // credentials. + MatchedGrantTarget *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataAccessOutput) GoString() string { + return s.String() +} + +// SetCredentials sets the Credentials field's value. +func (s *GetDataAccessOutput) SetCredentials(v *Credentials) *GetDataAccessOutput { + s.Credentials = v + return s +} + +// SetMatchedGrantTarget sets the MatchedGrantTarget field's value. +func (s *GetDataAccessOutput) SetMatchedGrantTarget(v string) *GetDataAccessOutput { + s.MatchedGrantTarget = &v + return s +} + type GetJobTaggingInput struct { _ struct{} `locationName:"GetJobTaggingRequest" type:"structure"` @@ -13702,6 +18915,175 @@ return s } +type GetStorageLensGroupInput struct { + _ struct{} `locationName:"GetStorageLensGroupRequest" type:"structure"` + + // The Amazon Web Services account ID associated with the Storage Lens group + // that you're trying to retrieve the details for. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The name of the Storage Lens group that you're trying to retrieve the configuration + // details for. + // + // Name is a required field + Name *string `location:"uri" locationName:"name" 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 GetStorageLensGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetStorageLensGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetStorageLensGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetStorageLensGroupInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetStorageLensGroupInput) SetAccountId(v string) *GetStorageLensGroupInput { + s.AccountId = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetStorageLensGroupInput) SetName(v string) *GetStorageLensGroupInput { + s.Name = &v + return s +} + +func (s *GetStorageLensGroupInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetStorageLensGroupOutput struct { + _ struct{} `type:"structure" payload:"StorageLensGroup"` + + // The name of the Storage Lens group that you're trying to retrieve the configuration + // details for. + StorageLensGroup *StorageLensGroup `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 GetStorageLensGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetStorageLensGroupOutput) GoString() string { + return s.String() +} + +// SetStorageLensGroup sets the StorageLensGroup field's value. +func (s *GetStorageLensGroupOutput) SetStorageLensGroup(v *StorageLensGroup) *GetStorageLensGroupOutput { + s.StorageLensGroup = v + return s +} + +// The user, group, or role to which you are granting access. You can grant +// access to an IAM user or role. If you have added your corporate directory +// to Amazon Web Services IAM Identity Center and associated your Identity Center +// instance with your S3 Access Grants instance, the grantee can also be a corporate +// directory user or group. +type Grantee struct { + _ struct{} `type:"structure"` + + // The unique identifier of the Grantee. If the grantee type is IAM, the identifier + // is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee + // type is a directory user or group, the identifier is 128-bit universally + // unique identifier (UUID) in the format a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. + // You can obtain this UUID from your Amazon Web Services IAM Identity Center + // instance. + GranteeIdentifier *string `type:"string"` + + // The type of the grantee to which access has been granted. It can be one of + // the following values: + // + // * IAM - An IAM user or role. + // + // * DIRECTORY_USER - Your corporate directory user. You can use this option + // if you have added your corporate identity directory to IAM Identity Center + // and associated the IAM Identity Center instance with your S3 Access Grants + // instance. + // + // * DIRECTORY_GROUP - Your corporate directory group. You can use this option + // if you have added your corporate identity directory to IAM Identity Center + // and associated the IAM Identity Center instance with your S3 Access Grants + // instance. + GranteeType *string `type:"string" enum:"GranteeType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Grantee) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Grantee) GoString() string { + return s.String() +} + +// SetGranteeIdentifier sets the GranteeIdentifier field's value. +func (s *Grantee) SetGranteeIdentifier(v string) *Grantee { + s.GranteeIdentifier = &v + return s +} + +// SetGranteeType sets the GranteeType field's value. +func (s *Grantee) SetGranteeType(v string) *Grantee { + s.GranteeType = &v + return s +} + // A container for what Amazon S3 Storage Lens configuration includes. type Include struct { _ struct{} `type:"structure"` @@ -14098,6 +19480,8 @@ _ struct{} `type:"structure"` // Contains the information required to locate the specified job's manifest. + // Manifests can't be imported from directory buckets. For more information, + // see Directory buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html). // // Location is a required field Location *JobManifestLocation `type:"structure" required:"true"` @@ -14216,21 +19600,38 @@ type JobManifestGeneratorFilter struct { _ struct{} `type:"structure"` - // If provided, the generated manifest should include only source bucket objects - // that were created after this time. + // If provided, the generated manifest includes only source bucket objects that + // were created after this time. CreatedAfter *time.Time `type:"timestamp"` - // If provided, the generated manifest should include only source bucket objects - // that were created before this time. + // If provided, the generated manifest includes only source bucket objects that + // were created before this time. CreatedBefore *time.Time `type:"timestamp"` // Include objects in the generated manifest only if they are eligible for replication // according to the Replication configuration on the source bucket. EligibleForReplication *bool `type:"boolean"` - // If provided, the generated manifest should include only source bucket objects - // that have one of the specified Replication statuses. + // If provided, the generated manifest includes only source bucket objects whose + // object keys match the string constraints specified for MatchAnyPrefix, MatchAnySuffix, + // and MatchAnySubstring. + KeyNameConstraint *KeyNameConstraint `type:"structure"` + + // If provided, the generated manifest includes only source bucket objects that + // are stored with the specified storage class. + MatchAnyStorageClass []*string `type:"list" enum:"S3StorageClass"` + + // If provided, the generated manifest includes only source bucket objects that + // have one of the specified Replication statuses. ObjectReplicationStatuses []*string `type:"list" enum:"ReplicationStatus"` + + // If provided, the generated manifest includes only source bucket objects whose + // file size is greater than the specified number of bytes. + ObjectSizeGreaterThanBytes *int64 `type:"long"` + + // If provided, the generated manifest includes only source bucket objects whose + // file size is less than the specified number of bytes. + ObjectSizeLessThanBytes *int64 `type:"long"` } // String returns the string representation. @@ -14269,13 +19670,39 @@ return s } +// SetKeyNameConstraint sets the KeyNameConstraint field's value. +func (s *JobManifestGeneratorFilter) SetKeyNameConstraint(v *KeyNameConstraint) *JobManifestGeneratorFilter { + s.KeyNameConstraint = v + return s +} + +// SetMatchAnyStorageClass sets the MatchAnyStorageClass field's value. +func (s *JobManifestGeneratorFilter) SetMatchAnyStorageClass(v []*string) *JobManifestGeneratorFilter { + s.MatchAnyStorageClass = v + return s +} + // SetObjectReplicationStatuses sets the ObjectReplicationStatuses field's value. func (s *JobManifestGeneratorFilter) SetObjectReplicationStatuses(v []*string) *JobManifestGeneratorFilter { s.ObjectReplicationStatuses = v return s } -// Contains the information required to locate a manifest object. +// SetObjectSizeGreaterThanBytes sets the ObjectSizeGreaterThanBytes field's value. +func (s *JobManifestGeneratorFilter) SetObjectSizeGreaterThanBytes(v int64) *JobManifestGeneratorFilter { + s.ObjectSizeGreaterThanBytes = &v + return s +} + +// SetObjectSizeLessThanBytes sets the ObjectSizeLessThanBytes field's value. +func (s *JobManifestGeneratorFilter) SetObjectSizeLessThanBytes(v int64) *JobManifestGeneratorFilter { + s.ObjectSizeLessThanBytes = &v + return s +} + +// Contains the information required to locate a manifest object. Manifests +// can't be imported from directory buckets. For more information, see Directory +// buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html). type JobManifestLocation struct { _ struct{} `type:"structure"` @@ -14430,14 +19857,20 @@ // Directs the specified job to execute a DELETE Object tagging call on every // object in the manifest. + // + // This functionality is not supported by directory buckets. S3DeleteObjectTagging *S3DeleteObjectTaggingOperation `type:"structure"` // Directs the specified job to initiate restore requests for every archived // object in the manifest. + // + // This functionality is not supported by directory buckets. S3InitiateRestoreObject *S3InitiateRestoreObjectOperation `type:"structure"` // Directs the specified job to run a PutObjectAcl call on every object in the // manifest. + // + // This functionality is not supported by directory buckets. S3PutObjectAcl *S3SetObjectAclOperation `type:"structure"` // Directs the specified job to run a PUT Copy object call on every object in @@ -14449,6 +19882,8 @@ // API operation. For more information, see Using S3 Object Lock legal hold // with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-legal-hold.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported by directory buckets. S3PutObjectLegalHold *S3SetObjectLegalHoldOperation `type:"structure"` // Contains the configuration parameters for the Object Lock retention action @@ -14456,14 +19891,20 @@ // underlying PutObjectRetention API operation. For more information, see Using // S3 Object Lock retention with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html) // in the Amazon S3 User Guide. + // + // This functionality is not supported by directory buckets. S3PutObjectRetention *S3SetObjectRetentionOperation `type:"structure"` // Directs the specified job to run a PUT Object tagging call on every object // in the manifest. + // + // This functionality is not supported by directory buckets. S3PutObjectTagging *S3SetObjectTaggingOperation `type:"structure"` // Directs the specified job to invoke ReplicateObject on every object in the // job's manifest. + // + // This functionality is not supported by directory buckets. S3ReplicateObject *S3ReplicateObjectOperation `type:"structure"` } @@ -14642,6 +20083,9 @@ // The Amazon Resource Name (ARN) for the bucket where specified job-completion // report will be stored. + // + // Directory buckets - Directory buckets aren't supported as a location for + // Batch Operations to store job completion reports. Bucket *string `min:"1" type:"string"` // Indicates whether the specified job will generate a job-completion report. @@ -14761,6 +20205,61 @@ return s } +// If provided, the generated manifest includes only source bucket objects whose +// object keys match the string constraints specified for MatchAnyPrefix, MatchAnySuffix, +// and MatchAnySubstring. +type KeyNameConstraint struct { + _ struct{} `type:"structure"` + + // If provided, the generated manifest includes objects where the specified + // string appears at the start of the object key string. + MatchAnyPrefix []*string `type:"list"` + + // If provided, the generated manifest includes objects where the specified + // string appears anywhere within the object key string. + MatchAnySubstring []*string `type:"list"` + + // If provided, the generated manifest includes objects where the specified + // string appears at the end of the object key string. + MatchAnySuffix []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyNameConstraint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KeyNameConstraint) GoString() string { + return s.String() +} + +// SetMatchAnyPrefix sets the MatchAnyPrefix field's value. +func (s *KeyNameConstraint) SetMatchAnyPrefix(v []*string) *KeyNameConstraint { + s.MatchAnyPrefix = v + return s +} + +// SetMatchAnySubstring sets the MatchAnySubstring field's value. +func (s *KeyNameConstraint) SetMatchAnySubstring(v []*string) *KeyNameConstraint { + s.MatchAnySubstring = v + return s +} + +// SetMatchAnySuffix sets the MatchAnySuffix field's value. +func (s *KeyNameConstraint) SetMatchAnySuffix(v []*string) *KeyNameConstraint { + s.MatchAnySuffix = v + return s +} + // Contains the configuration parameters for a Lambda Invoke operation. type LambdaInvokeOperation struct { _ struct{} `type:"structure"` @@ -14768,6 +20267,31 @@ // The Amazon Resource Name (ARN) for the Lambda function that the specified // job will invoke on every object in the manifest. FunctionArn *string `min:"1" type:"string"` + + // Specifies the schema version for the payload that Batch Operations sends + // when invoking an Lambda function. Version 1.0 is the default. Version 2.0 + // is required when you use Batch Operations to invoke Lambda functions that + // act on directory buckets, or if you need to specify UserArguments. For more + // information, see Using Lambda with Amazon S3 Batch Operations and Amazon + // S3 Express One Zone (https://aws.amazon.com/blogs/storage/using-lambda-with-s3-batch-operations-and-s3-express-one-zone/) + // in the Amazon Web Services Storage Blog. + // + // Ensure that your Lambda function code expects InvocationSchemaVersion 2.0 + // and uses bucket name rather than bucket ARN. If the InvocationSchemaVersion + // does not match what your Lambda function expects, your function might not + // work as expected. + // + // Directory buckets - To initiate Amazon Web Services Lambda function to perform + // custom actions on objects in directory buckets, you must specify 2.0. + InvocationSchemaVersion *string `min:"1" type:"string"` + + // Key-value pairs that are passed in the payload that Batch Operations sends + // when invoking an Lambda function. You must specify InvocationSchemaVersion + // 2.0 for LambdaInvoke operations that include UserArguments. For more information, + // see Using Lambda with Amazon S3 Batch Operations and Amazon S3 Express One + // Zone (https://aws.amazon.com/blogs/storage/using-lambda-with-s3-batch-operations-and-s3-express-one-zone/) + // in the Amazon Web Services Storage Blog. + UserArguments map[string]*string `min:"1" type:"map"` } // String returns the string representation. @@ -14794,6 +20318,12 @@ if s.FunctionArn != nil && len(*s.FunctionArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionArn", 1)) } + if s.InvocationSchemaVersion != nil && len(*s.InvocationSchemaVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InvocationSchemaVersion", 1)) + } + if s.UserArguments != nil && len(s.UserArguments) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserArguments", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -14807,6 +20337,18 @@ return s } +// SetInvocationSchemaVersion sets the InvocationSchemaVersion field's value. +func (s *LambdaInvokeOperation) SetInvocationSchemaVersion(v string) *LambdaInvokeOperation { + s.InvocationSchemaVersion = &v + return s +} + +// SetUserArguments sets the UserArguments field's value. +func (s *LambdaInvokeOperation) SetUserArguments(v map[string]*string) *LambdaInvokeOperation { + s.UserArguments = v + return s +} + // The container for the Outposts bucket lifecycle configuration. type LifecycleConfiguration struct { _ struct{} `type:"structure"` @@ -15216,6 +20758,727 @@ return s } +// Information about the access grant. +type ListAccessGrantEntry struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the access grant. + AccessGrantArn *string `min:"1" type:"string"` + + // The ID of the access grant. S3 Access Grants auto-generates this ID when + // you create the access grant. + AccessGrantId *string `min:"1" type:"string"` + + // The configuration options of the grant location. The grant location is the + // S3 path to the data to which you are granting access. + AccessGrantsLocationConfiguration *AccessGrantsLocationConfiguration `type:"structure"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center + // application associated with your Identity Center instance. If the grant includes + // an application ARN, the grantee can only access the S3 data through this + // application. + ApplicationArn *string `min:"10" type:"string"` + + // The date and time when you created the S3 Access Grants instance. + CreatedAt *time.Time `type:"timestamp"` + + // The S3 path of the data to which you are granting access. It is the result + // of appending the Subprefix to the location scope. + GrantScope *string `min:"1" type:"string"` + + // The user, group, or role to which you are granting access. You can grant + // access to an IAM user or role. If you have added your corporate directory + // to Amazon Web Services IAM Identity Center and associated your Identity Center + // instance with your S3 Access Grants instance, the grantee can also be a corporate + // directory user or group. + Grantee *Grantee `type:"structure"` + + // The type of access granted to your S3 data, which can be set to one of the + // following values: + // + // * READ – Grant read-only access to the S3 data. + // + // * WRITE – Grant write-only access to the S3 data. + // + // * READWRITE – Grant both read and write access to the S3 data. + Permission *string `type:"string" enum:"Permission"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantEntry) GoString() string { + return s.String() +} + +// SetAccessGrantArn sets the AccessGrantArn field's value. +func (s *ListAccessGrantEntry) SetAccessGrantArn(v string) *ListAccessGrantEntry { + s.AccessGrantArn = &v + return s +} + +// SetAccessGrantId sets the AccessGrantId field's value. +func (s *ListAccessGrantEntry) SetAccessGrantId(v string) *ListAccessGrantEntry { + s.AccessGrantId = &v + return s +} + +// SetAccessGrantsLocationConfiguration sets the AccessGrantsLocationConfiguration field's value. +func (s *ListAccessGrantEntry) SetAccessGrantsLocationConfiguration(v *AccessGrantsLocationConfiguration) *ListAccessGrantEntry { + s.AccessGrantsLocationConfiguration = v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *ListAccessGrantEntry) SetAccessGrantsLocationId(v string) *ListAccessGrantEntry { + s.AccessGrantsLocationId = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListAccessGrantEntry) SetApplicationArn(v string) *ListAccessGrantEntry { + s.ApplicationArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ListAccessGrantEntry) SetCreatedAt(v time.Time) *ListAccessGrantEntry { + s.CreatedAt = &v + return s +} + +// SetGrantScope sets the GrantScope field's value. +func (s *ListAccessGrantEntry) SetGrantScope(v string) *ListAccessGrantEntry { + s.GrantScope = &v + return s +} + +// SetGrantee sets the Grantee field's value. +func (s *ListAccessGrantEntry) SetGrantee(v *Grantee) *ListAccessGrantEntry { + s.Grantee = v + return s +} + +// SetPermission sets the Permission field's value. +func (s *ListAccessGrantEntry) SetPermission(v string) *ListAccessGrantEntry { + s.Permission = &v + return s +} + +type ListAccessGrantsInput struct { + _ struct{} `locationName:"ListAccessGrantsRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center + // application associated with your Identity Center instance. If the grant includes + // an application ARN, the grantee can only access the S3 data through this + // application. + ApplicationArn *string `location:"querystring" locationName:"application_arn" min:"10" type:"string"` + + // The S3 path of the data to which you are granting access. It is the result + // of appending the Subprefix to the location scope. + GrantScope *string `location:"querystring" locationName:"grantscope" min:"1" type:"string"` + + // The unique identifer of the Grantee. If the grantee type is IAM, the identifier + // is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee + // type is a directory user or group, the identifier is 128-bit universally + // unique identifier (UUID) in the format a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. + // You can obtain this UUID from your Amazon Web Services IAM Identity Center + // instance. + GranteeIdentifier *string `location:"querystring" locationName:"granteeidentifier" type:"string"` + + // The type of the grantee to which access has been granted. It can be one of + // the following values: + // + // * IAM - An IAM user or role. + // + // * DIRECTORY_USER - Your corporate directory user. You can use this option + // if you have added your corporate identity directory to IAM Identity Center + // and associated the IAM Identity Center instance with your S3 Access Grants + // instance. + // + // * DIRECTORY_GROUP - Your corporate directory group. You can use this option + // if you have added your corporate identity directory to IAM Identity Center + // and associated the IAM Identity Center instance with your S3 Access Grants + // instance. + GranteeType *string `location:"querystring" locationName:"granteetype" type:"string" enum:"GranteeType"` + + // The maximum number of access grants that you would like returned in the List + // Access Grants response. If the results include the pagination token NextToken, + // make another call using the NextToken to determine if there are more results. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // A pagination token to request the next page of results. Pass this value into + // a subsequent List Access Grants request in order to retrieve the next page + // of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The type of permission granted to your S3 data, which can be set to one of + // the following values: + // + // * READ – Grant read-only access to the S3 data. + // + // * WRITE – Grant write-only access to the S3 data. + // + // * READWRITE – Grant both read and write access to the S3 data. + Permission *string `location:"querystring" locationName:"permission" type:"string" enum:"Permission"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAccessGrantsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAccessGrantsInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.GrantScope != nil && len(*s.GrantScope) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GrantScope", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListAccessGrantsInput) SetAccountId(v string) *ListAccessGrantsInput { + s.AccountId = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListAccessGrantsInput) SetApplicationArn(v string) *ListAccessGrantsInput { + s.ApplicationArn = &v + return s +} + +// SetGrantScope sets the GrantScope field's value. +func (s *ListAccessGrantsInput) SetGrantScope(v string) *ListAccessGrantsInput { + s.GrantScope = &v + return s +} + +// SetGranteeIdentifier sets the GranteeIdentifier field's value. +func (s *ListAccessGrantsInput) SetGranteeIdentifier(v string) *ListAccessGrantsInput { + s.GranteeIdentifier = &v + return s +} + +// SetGranteeType sets the GranteeType field's value. +func (s *ListAccessGrantsInput) SetGranteeType(v string) *ListAccessGrantsInput { + s.GranteeType = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAccessGrantsInput) SetMaxResults(v int64) *ListAccessGrantsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccessGrantsInput) SetNextToken(v string) *ListAccessGrantsInput { + s.NextToken = &v + return s +} + +// SetPermission sets the Permission field's value. +func (s *ListAccessGrantsInput) SetPermission(v string) *ListAccessGrantsInput { + s.Permission = &v + return s +} + +func (s *ListAccessGrantsInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +// Information about the S3 Access Grants instance. +type ListAccessGrantsInstanceEntry struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the S3 Access Grants instance. + AccessGrantsInstanceArn *string `min:"1" type:"string"` + + // The ID of the S3 Access Grants instance. The ID is default. You can have + // one S3 Access Grants instance per Region per account. + AccessGrantsInstanceId *string `min:"1" type:"string"` + + // The date and time when you created the S3 Access Grants instance. + CreatedAt *time.Time `type:"timestamp"` + + // If you associated your S3 Access Grants instance with an Amazon Web Services + // IAM Identity Center instance, this field returns the Amazon Resource Name + // (ARN) of the IAM Identity Center instance application; a subresource of the + // original Identity Center instance. S3 Access Grants creates this Identity + // Center application for the specific S3 Access Grants instance. + IdentityCenterArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInstanceEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInstanceEntry) GoString() string { + return s.String() +} + +// SetAccessGrantsInstanceArn sets the AccessGrantsInstanceArn field's value. +func (s *ListAccessGrantsInstanceEntry) SetAccessGrantsInstanceArn(v string) *ListAccessGrantsInstanceEntry { + s.AccessGrantsInstanceArn = &v + return s +} + +// SetAccessGrantsInstanceId sets the AccessGrantsInstanceId field's value. +func (s *ListAccessGrantsInstanceEntry) SetAccessGrantsInstanceId(v string) *ListAccessGrantsInstanceEntry { + s.AccessGrantsInstanceId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ListAccessGrantsInstanceEntry) SetCreatedAt(v time.Time) *ListAccessGrantsInstanceEntry { + s.CreatedAt = &v + return s +} + +// SetIdentityCenterArn sets the IdentityCenterArn field's value. +func (s *ListAccessGrantsInstanceEntry) SetIdentityCenterArn(v string) *ListAccessGrantsInstanceEntry { + s.IdentityCenterArn = &v + return s +} + +type ListAccessGrantsInstancesInput struct { + _ struct{} `locationName:"ListAccessGrantsInstancesRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The maximum number of access grants that you would like returned in the List + // Access Grants response. If the results include the pagination token NextToken, + // make another call using the NextToken to determine if there are more results. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // A pagination token to request the next page of results. Pass this value into + // a subsequent List Access Grants Instances request in order to retrieve the + // next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInstancesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInstancesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAccessGrantsInstancesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAccessGrantsInstancesInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListAccessGrantsInstancesInput) SetAccountId(v string) *ListAccessGrantsInstancesInput { + s.AccountId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAccessGrantsInstancesInput) SetMaxResults(v int64) *ListAccessGrantsInstancesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccessGrantsInstancesInput) SetNextToken(v string) *ListAccessGrantsInstancesInput { + s.NextToken = &v + return s +} + +func (s *ListAccessGrantsInstancesInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type ListAccessGrantsInstancesOutput struct { + _ struct{} `type:"structure"` + + // A container for a list of S3 Access Grants instances. + AccessGrantsInstancesList []*ListAccessGrantsInstanceEntry `locationNameList:"AccessGrantsInstance" type:"list"` + + // A pagination token to request the next page of results. Pass this value into + // a subsequent List Access Grants Instances request in order to retrieve the + // next page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInstancesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsInstancesOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsInstancesList sets the AccessGrantsInstancesList field's value. +func (s *ListAccessGrantsInstancesOutput) SetAccessGrantsInstancesList(v []*ListAccessGrantsInstanceEntry) *ListAccessGrantsInstancesOutput { + s.AccessGrantsInstancesList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccessGrantsInstancesOutput) SetNextToken(v string) *ListAccessGrantsInstancesOutput { + s.NextToken = &v + return s +} + +// A container for information about the registered location. +type ListAccessGrantsLocationsEntry struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the registered location. + AccessGrantsLocationArn *string `min:"1" type:"string"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The date and time when you registered the location. + CreatedAt *time.Time `type:"timestamp"` + + // The Amazon Resource Name (ARN) of the IAM role for the registered location. + // S3 Access Grants assumes this role to manage access to the registered location. + IAMRoleArn *string `min:"1" type:"string"` + + // The S3 path to the location that you are registering. The location scope + // can be the default S3 location s3://, the S3 path to a bucket s3://, + // or the S3 path to a bucket and prefix s3:///. A prefix in + // S3 is a string of characters at the beginning of an object key name used + // to organize the objects that you store in your S3 buckets. For example, object + // key names that start with the engineering/ prefix or object key names that + // start with the marketing/campaigns/ prefix. + LocationScope *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsLocationsEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsLocationsEntry) GoString() string { + return s.String() +} + +// SetAccessGrantsLocationArn sets the AccessGrantsLocationArn field's value. +func (s *ListAccessGrantsLocationsEntry) SetAccessGrantsLocationArn(v string) *ListAccessGrantsLocationsEntry { + s.AccessGrantsLocationArn = &v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *ListAccessGrantsLocationsEntry) SetAccessGrantsLocationId(v string) *ListAccessGrantsLocationsEntry { + s.AccessGrantsLocationId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ListAccessGrantsLocationsEntry) SetCreatedAt(v time.Time) *ListAccessGrantsLocationsEntry { + s.CreatedAt = &v + return s +} + +// SetIAMRoleArn sets the IAMRoleArn field's value. +func (s *ListAccessGrantsLocationsEntry) SetIAMRoleArn(v string) *ListAccessGrantsLocationsEntry { + s.IAMRoleArn = &v + return s +} + +// SetLocationScope sets the LocationScope field's value. +func (s *ListAccessGrantsLocationsEntry) SetLocationScope(v string) *ListAccessGrantsLocationsEntry { + s.LocationScope = &v + return s +} + +type ListAccessGrantsLocationsInput struct { + _ struct{} `locationName:"ListAccessGrantsLocationsRequest" type:"structure"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The S3 path to the location that you are registering. The location scope + // can be the default S3 location s3://, the S3 path to a bucket s3://, + // or the S3 path to a bucket and prefix s3:///. A prefix in + // S3 is a string of characters at the beginning of an object key name used + // to organize the objects that you store in your S3 buckets. For example, object + // key names that start with the engineering/ prefix or object key names that + // start with the marketing/campaigns/ prefix. + LocationScope *string `location:"querystring" locationName:"locationscope" min:"1" type:"string"` + + // The maximum number of access grants that you would like returned in the List + // Access Grants response. If the results include the pagination token NextToken, + // make another call using the NextToken to determine if there are more results. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // A pagination token to request the next page of results. Pass this value into + // a subsequent List Access Grants Locations request in order to retrieve the + // next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsLocationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsLocationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAccessGrantsLocationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAccessGrantsLocationsInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.LocationScope != nil && len(*s.LocationScope) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LocationScope", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListAccessGrantsLocationsInput) SetAccountId(v string) *ListAccessGrantsLocationsInput { + s.AccountId = &v + return s +} + +// SetLocationScope sets the LocationScope field's value. +func (s *ListAccessGrantsLocationsInput) SetLocationScope(v string) *ListAccessGrantsLocationsInput { + s.LocationScope = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAccessGrantsLocationsInput) SetMaxResults(v int64) *ListAccessGrantsLocationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccessGrantsLocationsInput) SetNextToken(v string) *ListAccessGrantsLocationsInput { + s.NextToken = &v + return s +} + +func (s *ListAccessGrantsLocationsInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type ListAccessGrantsLocationsOutput struct { + _ struct{} `type:"structure"` + + // A container for a list of registered locations in an S3 Access Grants instance. + AccessGrantsLocationsList []*ListAccessGrantsLocationsEntry `locationNameList:"AccessGrantsLocation" type:"list"` + + // A pagination token to request the next page of results. Pass this value into + // a subsequent List Access Grants Locations request in order to retrieve the + // next page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsLocationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsLocationsOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsLocationsList sets the AccessGrantsLocationsList field's value. +func (s *ListAccessGrantsLocationsOutput) SetAccessGrantsLocationsList(v []*ListAccessGrantsLocationsEntry) *ListAccessGrantsLocationsOutput { + s.AccessGrantsLocationsList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccessGrantsLocationsOutput) SetNextToken(v string) *ListAccessGrantsLocationsOutput { + s.NextToken = &v + return s +} + +type ListAccessGrantsOutput struct { + _ struct{} `type:"structure"` + + // A container for a list of grants in an S3 Access Grants instance. + AccessGrantsList []*ListAccessGrantEntry `locationNameList:"AccessGrant" type:"list"` + + // A pagination token to request the next page of results. Pass this value into + // a subsequent List Access Grants request in order to retrieve the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccessGrantsOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsList sets the AccessGrantsList field's value. +func (s *ListAccessGrantsOutput) SetAccessGrantsList(v []*ListAccessGrantEntry) *ListAccessGrantsOutput { + s.AccessGrantsList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccessGrantsOutput) SetNextToken(v string) *ListAccessGrantsOutput { + s.NextToken = &v + return s +} + type ListAccessPointsForObjectLambdaInput struct { _ struct{} `locationName:"ListAccessPointsForObjectLambdaRequest" type:"structure"` @@ -16100,6 +22363,366 @@ return s } +// Each entry contains a Storage Lens group that exists in the specified home +// Region. +type ListStorageLensGroupEntry struct { + _ struct{} `type:"structure"` + + // Contains the Amazon Web Services Region where the Storage Lens group was + // created. + // + // HomeRegion is a required field + HomeRegion *string `min:"5" type:"string" required:"true"` + + // Contains the name of the Storage Lens group that exists in the specified + // home Region. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property + // is read-only. + // + // StorageLensGroupArn is a required field + StorageLensGroupArn *string `min:"4" 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 ListStorageLensGroupEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListStorageLensGroupEntry) GoString() string { + return s.String() +} + +// SetHomeRegion sets the HomeRegion field's value. +func (s *ListStorageLensGroupEntry) SetHomeRegion(v string) *ListStorageLensGroupEntry { + s.HomeRegion = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListStorageLensGroupEntry) SetName(v string) *ListStorageLensGroupEntry { + s.Name = &v + return s +} + +// SetStorageLensGroupArn sets the StorageLensGroupArn field's value. +func (s *ListStorageLensGroupEntry) SetStorageLensGroupArn(v string) *ListStorageLensGroupEntry { + s.StorageLensGroupArn = &v + return s +} + +type ListStorageLensGroupsInput struct { + _ struct{} `locationName:"ListStorageLensGroupsRequest" type:"structure"` + + // The Amazon Web Services account ID that owns the Storage Lens groups. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListStorageLensGroupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListStorageLensGroupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListStorageLensGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListStorageLensGroupsInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListStorageLensGroupsInput) SetAccountId(v string) *ListStorageLensGroupsInput { + s.AccountId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListStorageLensGroupsInput) SetNextToken(v string) *ListStorageLensGroupsInput { + s.NextToken = &v + return s +} + +func (s *ListStorageLensGroupsInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type ListStorageLensGroupsOutput struct { + _ struct{} `type:"structure"` + + // If NextToken is returned, there are more Storage Lens groups 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. Keep all other + // arguments unchanged. Each pagination token expires after 24 hours. + NextToken *string `type:"string"` + + // The list of Storage Lens groups that exist in the specified home Region. + StorageLensGroupList []*ListStorageLensGroupEntry `locationNameList:"StorageLensGroup" type:"list" flattened:"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 ListStorageLensGroupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListStorageLensGroupsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListStorageLensGroupsOutput) SetNextToken(v string) *ListStorageLensGroupsOutput { + s.NextToken = &v + return s +} + +// SetStorageLensGroupList sets the StorageLensGroupList field's value. +func (s *ListStorageLensGroupsOutput) SetStorageLensGroupList(v []*ListStorageLensGroupEntry) *ListStorageLensGroupsOutput { + s.StorageLensGroupList = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `locationName:"ListTagsForResourceRequest" type:"structure"` + + // The Amazon Web Services account ID of the resource owner. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the S3 resource that you want to list the + // tags for. The tagged resource can be an S3 Storage Lens group or S3 Access + // Grants instance, registered location, or grant. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" 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 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.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListTagsForResourceInput) SetAccountId(v string) *ListTagsForResourceInput { + s.AccountId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +func (s *ListTagsForResourceInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services resource tags that are associated with the resource. + Tags []*Tag `locationNameList:"Tag" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// A filter condition that specifies the object age range of included objects +// in days. Only integers are supported. +type MatchObjectAge struct { + _ struct{} `type:"structure"` + + // Specifies the maximum object age in days. Must be a positive whole number, + // greater than the minimum object age and less than or equal to 2,147,483,647. + DaysGreaterThan *int64 `type:"integer"` + + // Specifies the minimum object age in days. The value must be a positive whole + // number, greater than 0 and less than or equal to 2,147,483,647. + DaysLessThan *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 MatchObjectAge) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MatchObjectAge) GoString() string { + return s.String() +} + +// SetDaysGreaterThan sets the DaysGreaterThan field's value. +func (s *MatchObjectAge) SetDaysGreaterThan(v int64) *MatchObjectAge { + s.DaysGreaterThan = &v + return s +} + +// SetDaysLessThan sets the DaysLessThan field's value. +func (s *MatchObjectAge) SetDaysLessThan(v int64) *MatchObjectAge { + s.DaysLessThan = &v + return s +} + +// A filter condition that specifies the object size range of included objects +// in bytes. Only integers are supported. +type MatchObjectSize struct { + _ struct{} `type:"structure"` + + // Specifies the minimum object size in Bytes. The value must be a positive + // number, greater than 0 and less than 5 TB. + BytesGreaterThan *int64 `type:"long"` + + // Specifies the maximum object size in Bytes. The value must be a positive + // number, greater than the minimum object size and less than 5 TB. + BytesLessThan *int64 `type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MatchObjectSize) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MatchObjectSize) GoString() string { + return s.String() +} + +// SetBytesGreaterThan sets the BytesGreaterThan field's value. +func (s *MatchObjectSize) SetBytesGreaterThan(v int64) *MatchObjectSize { + s.BytesGreaterThan = &v + return s +} + +// SetBytesLessThan sets the BytesLessThan field's value. +func (s *MatchObjectSize) SetBytesLessThan(v int64) *MatchObjectSize { + s.BytesLessThan = &v + return s +} + // A container that specifies replication metrics-related settings. type Metrics struct { _ struct{} `type:"structure"` @@ -17150,6 +23773,140 @@ return s } +type PutAccessGrantsInstanceResourcePolicyInput struct { + _ struct{} `locationName:"PutAccessGrantsInstanceResourcePolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Organization of the resource policy of the S3 Access Grants instance. + Organization *string `min:"12" type:"string"` + + // The resource policy of the S3 Access Grants instance that you are updating. + // + // Policy is a required field + Policy *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutAccessGrantsInstanceResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutAccessGrantsInstanceResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutAccessGrantsInstanceResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutAccessGrantsInstanceResourcePolicyInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Organization != nil && len(*s.Organization) < 12 { + invalidParams.Add(request.NewErrParamMinLen("Organization", 12)) + } + if s.Policy == nil { + invalidParams.Add(request.NewErrParamRequired("Policy")) + } + if s.Policy != nil && len(*s.Policy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *PutAccessGrantsInstanceResourcePolicyInput) SetAccountId(v string) *PutAccessGrantsInstanceResourcePolicyInput { + s.AccountId = &v + return s +} + +// SetOrganization sets the Organization field's value. +func (s *PutAccessGrantsInstanceResourcePolicyInput) SetOrganization(v string) *PutAccessGrantsInstanceResourcePolicyInput { + s.Organization = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *PutAccessGrantsInstanceResourcePolicyInput) SetPolicy(v string) *PutAccessGrantsInstanceResourcePolicyInput { + s.Policy = &v + return s +} + +func (s *PutAccessGrantsInstanceResourcePolicyInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type PutAccessGrantsInstanceResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // The date and time when you created the S3 Access Grants instance resource + // policy. + CreatedAt *time.Time `type:"timestamp"` + + // The Organization of the resource policy of the S3 Access Grants instance. + Organization *string `min:"12" type:"string"` + + // The updated resource policy of the S3 Access Grants instance. + Policy *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutAccessGrantsInstanceResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutAccessGrantsInstanceResourcePolicyOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *PutAccessGrantsInstanceResourcePolicyOutput) SetCreatedAt(v time.Time) *PutAccessGrantsInstanceResourcePolicyOutput { + s.CreatedAt = &v + return s +} + +// SetOrganization sets the Organization field's value. +func (s *PutAccessGrantsInstanceResourcePolicyOutput) SetOrganization(v string) *PutAccessGrantsInstanceResourcePolicyOutput { + s.Organization = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *PutAccessGrantsInstanceResourcePolicyOutput) SetPolicy(v string) *PutAccessGrantsInstanceResourcePolicyOutput { + s.Policy = &v + return s +} + type PutAccessPointConfigurationForObjectLambdaInput struct { _ struct{} `locationName:"PutAccessPointConfigurationForObjectLambdaRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` @@ -20016,6 +26773,8 @@ type S3CopyObjectOperation struct { _ struct{} `type:"structure"` + // + // This functionality is not supported by directory buckets. AccessControlGrants []*S3Grant `type:"list"` // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption @@ -20025,12 +26784,16 @@ // // Specifying this header with an object action doesn’t affect bucket-level // settings for S3 Bucket Key. + // + // This functionality is not supported by directory buckets. BucketKeyEnabled *bool `type:"boolean"` + // + // This functionality is not supported by directory buckets. CannedAccessControlList *string `type:"string" enum:"S3CannedAccessControlList"` // Indicates the algorithm that you want Amazon S3 to use to create the checksum. - // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CheckingObjectIntegrity.xml) + // For more information, see Checking object integrity (https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) // in the Amazon S3 User Guide. ChecksumAlgorithm *string `type:"string" enum:"S3ChecksumAlgorithm"` @@ -20043,27 +26806,52 @@ // no tags. Otherwise, Amazon S3 assigns the supplied tags to the new objects. NewObjectMetadata *S3ObjectMetadata `type:"structure"` + // Specifies a list of tags to add to the destination objects after they are + // copied. If NewObjectTagging is not specified, the tags of the source objects + // are copied to destination objects by default. + // + // Directory buckets - Tags aren't supported by directory buckets. If your source + // objects have tags and your destination bucket is a directory bucket, specify + // an empty tag set in the NewObjectTagging field to prevent copying the source + // object tags to the directory bucket. NewObjectTagging []*S3Tag `type:"list"` // The legal hold status to be applied to all objects in the Batch Operations // job. + // + // This functionality is not supported by directory buckets. ObjectLockLegalHoldStatus *string `type:"string" enum:"S3ObjectLockLegalHoldStatus"` // The retention mode to be applied to all objects in the Batch Operations job. + // + // This functionality is not supported by directory buckets. ObjectLockMode *string `type:"string" enum:"S3ObjectLockMode"` // The date when the applied object retention configuration expires on all objects // in the Batch Operations job. + // + // This functionality is not supported by directory buckets. ObjectLockRetainUntilDate *time.Time `type:"timestamp"` - // Specifies an optional metadata property for website redirects, x-amz-website-redirect-location. - // Allows webpage redirects if the object is accessed through a website endpoint. + // If the destination bucket is configured as a website, specifies an optional + // metadata property for website redirects, x-amz-website-redirect-location. + // Allows webpage redirects if the object copy is accessed through a website + // endpoint. + // + // This functionality is not supported by directory buckets. RedirectLocation *string `min:"1" type:"string"` + // + // This functionality is not supported by directory buckets. RequesterPays *bool `type:"boolean"` + // + // This functionality is not supported by directory buckets. SSEAwsKmsKeyId *string `min:"1" type:"string"` + // Specify the storage class for the destination objects in a Copy operation. + // + // Directory buckets - This functionality is not supported by directory buckets. StorageClass *string `type:"string" enum:"S3StorageClass"` // Specifies the folder prefix that you want the objects to be copied into. @@ -20072,8 +26860,15 @@ TargetKeyPrefix *string `min:"1" type:"string"` // Specifies the destination bucket Amazon Resource Name (ARN) for the batch - // copy operation. For example, to copy objects to a bucket named destinationBucket, - // set the TargetResource property to arn:aws:s3:::destinationBucket. + // copy operation. + // + // * General purpose buckets - For example, to copy objects to a general + // purpose bucket named destinationBucket, set the TargetResource property + // to arn:aws:s3:::destinationBucket. + // + // * Directory buckets - For example, to copy objects to a directory bucket + // named destinationBucket in the Availability Zone; identified by the AZ + // ID usw2-az2, set the TargetResource property to arn:aws:s3express:region:account_id:/bucket/destination_bucket_base_name--usw2-az2--x-s3. TargetResource *string `min:"1" type:"string"` UnModifiedSinceConstraint *time.Time `type:"timestamp"` @@ -20286,7 +27081,9 @@ // The format of the generated manifest. Format *string `type:"string" enum:"GeneratedManifestFormat"` - // Contains the information required to locate a manifest object. + // Contains the information required to locate a manifest object. Manifests + // can't be imported from directory buckets. For more information, see Directory + // buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html). Location *JobManifestLocation `type:"structure"` } @@ -20509,16 +27306,21 @@ // Services account ID must match this value, else the job fails. ExpectedBucketOwner *string `type:"string"` - // Specifies rules the S3JobManifestGenerator should use to use to decide whether - // an object in the source bucket should or should not be included in the generated + // Specifies rules the S3JobManifestGenerator should use to decide whether an + // object in the source bucket should or should not be included in the generated // job manifest. Filter *JobManifestGeneratorFilter `type:"structure"` - // Specifies the location the generated manifest will be written to. + // Specifies the location the generated manifest will be written to. Manifests + // can't be written to directory buckets. For more information, see Directory + // buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html). ManifestOutputLocation *S3ManifestOutputLocation `type:"structure"` // The source bucket used by the ManifestGenerator. // + // Directory buckets - Directory buckets aren't supported as the source buckets + // used by S3JobManifestGenerator to generate the job manifest. + // // SourceBucket is a required field SourceBucket *string `min:"1" type:"string" required:"true"` } @@ -20601,6 +27403,9 @@ // The bucket ARN the generated manifest should be written to. // + // Directory buckets - Directory buckets aren't supported as the buckets to + // store the generated manifest. + // // Bucket is a required field Bucket *string `min:"1" type:"string" required:"true"` @@ -20755,16 +27560,22 @@ ContentLanguage *string `min:"1" type:"string"` + // This member has been deprecated. ContentLength *int64 `type:"long"` + // This member has been deprecated. ContentMD5 *string `min:"1" type:"string"` ContentType *string `min:"1" type:"string"` HttpExpiresDate *time.Time `type:"timestamp"` + // This member has been deprecated. RequesterCharged *bool `type:"boolean"` + // + // For directory buckets, only the server-side encryption with Amazon S3 managed + // keys (SSE-S3) (AES256) is supported. SSEAlgorithm *string `type:"string" enum:"S3SSEAlgorithm"` UserMetadata map[string]*string `type:"map"` @@ -21062,6 +27873,8 @@ // API operation. For more information, see Using S3 Object Lock legal hold // with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-legal-hold.html) // in the Amazon S3 User Guide. +// +// This functionality is not supported by directory buckets. type S3SetObjectLegalHoldOperation struct { _ struct{} `type:"structure"` @@ -21119,6 +27932,8 @@ // underlying PutObjectRetention API operation. For more information, see Using // S3 Object Lock retention with S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html) // in the Amazon S3 User Guide. +// +// This functionality is not supported by directory buckets. type S3SetObjectRetentionOperation struct { _ struct{} `type:"structure"` @@ -21957,6 +28772,485 @@ return s } +// A custom grouping of objects that include filters for prefixes, suffixes, +// object tags, object size, or object age. You can create an S3 Storage Lens +// group that includes a single filter or multiple filter conditions. To specify +// multiple filter conditions, you use AND or OR logical operators. +type StorageLensGroup struct { + _ struct{} `type:"structure"` + + // Sets the criteria for the Storage Lens group data that is displayed. For + // multiple filter conditions, the AND or OR logical operator is used. + // + // Filter is a required field + Filter *StorageLensGroupFilter `type:"structure" required:"true"` + + // Contains the name of the Storage Lens group. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property + // is read-only. + StorageLensGroupArn *string `min:"4" 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 StorageLensGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageLensGroup) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StorageLensGroup) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StorageLensGroup"} + if s.Filter == nil { + invalidParams.Add(request.NewErrParamRequired("Filter")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.StorageLensGroupArn != nil && len(*s.StorageLensGroupArn) < 4 { + invalidParams.Add(request.NewErrParamMinLen("StorageLensGroupArn", 4)) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *StorageLensGroup) SetFilter(v *StorageLensGroupFilter) *StorageLensGroup { + s.Filter = v + return s +} + +// SetName sets the Name field's value. +func (s *StorageLensGroup) SetName(v string) *StorageLensGroup { + s.Name = &v + return s +} + +// SetStorageLensGroupArn sets the StorageLensGroupArn field's value. +func (s *StorageLensGroup) SetStorageLensGroupArn(v string) *StorageLensGroup { + s.StorageLensGroupArn = &v + return s +} + +// A logical operator that allows multiple filter conditions to be joined for +// more complex comparisons of Storage Lens group data. +type StorageLensGroupAndOperator struct { + _ struct{} `type:"structure"` + + // Contains a list of prefixes. At least one prefix must be specified. Up to + // 10 prefixes are allowed. + MatchAnyPrefix []*string `locationNameList:"Prefix" type:"list"` + + // Contains a list of suffixes. At least one suffix must be specified. Up to + // 10 suffixes are allowed. + MatchAnySuffix []*string `locationNameList:"Suffix" type:"list"` + + // Contains the list of object tags. At least one object tag must be specified. + // Up to 10 object tags are allowed. + MatchAnyTag []*S3Tag `locationNameList:"Tag" type:"list"` + + // Contains DaysGreaterThan and DaysLessThan to define the object age range + // (minimum and maximum number of days). + MatchObjectAge *MatchObjectAge `type:"structure"` + + // Contains BytesGreaterThan and BytesLessThan to define the object size range + // (minimum and maximum number of Bytes). + MatchObjectSize *MatchObjectSize `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 StorageLensGroupAndOperator) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageLensGroupAndOperator) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StorageLensGroupAndOperator) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StorageLensGroupAndOperator"} + if s.MatchAnyTag != nil { + for i, v := range s.MatchAnyTag { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MatchAnyTag", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMatchAnyPrefix sets the MatchAnyPrefix field's value. +func (s *StorageLensGroupAndOperator) SetMatchAnyPrefix(v []*string) *StorageLensGroupAndOperator { + s.MatchAnyPrefix = v + return s +} + +// SetMatchAnySuffix sets the MatchAnySuffix field's value. +func (s *StorageLensGroupAndOperator) SetMatchAnySuffix(v []*string) *StorageLensGroupAndOperator { + s.MatchAnySuffix = v + return s +} + +// SetMatchAnyTag sets the MatchAnyTag field's value. +func (s *StorageLensGroupAndOperator) SetMatchAnyTag(v []*S3Tag) *StorageLensGroupAndOperator { + s.MatchAnyTag = v + return s +} + +// SetMatchObjectAge sets the MatchObjectAge field's value. +func (s *StorageLensGroupAndOperator) SetMatchObjectAge(v *MatchObjectAge) *StorageLensGroupAndOperator { + s.MatchObjectAge = v + return s +} + +// SetMatchObjectSize sets the MatchObjectSize field's value. +func (s *StorageLensGroupAndOperator) SetMatchObjectSize(v *MatchObjectSize) *StorageLensGroupAndOperator { + s.MatchObjectSize = v + return s +} + +// The filter element sets the criteria for the Storage Lens group data that +// is displayed. For multiple filter conditions, the AND or OR logical operator +// is used. +type StorageLensGroupFilter struct { + _ struct{} `type:"structure"` + + // A logical operator that allows multiple filter conditions to be joined for + // more complex comparisons of Storage Lens group data. Objects must match all + // of the listed filter conditions that are joined by the And logical operator. + // Only one of each filter condition is allowed. + And *StorageLensGroupAndOperator `type:"structure"` + + // Contains a list of prefixes. At least one prefix must be specified. Up to + // 10 prefixes are allowed. + MatchAnyPrefix []*string `locationNameList:"Prefix" type:"list"` + + // Contains a list of suffixes. At least one suffix must be specified. Up to + // 10 suffixes are allowed. + MatchAnySuffix []*string `locationNameList:"Suffix" type:"list"` + + // Contains the list of S3 object tags. At least one object tag must be specified. + // Up to 10 object tags are allowed. + MatchAnyTag []*S3Tag `locationNameList:"Tag" type:"list"` + + // Contains DaysGreaterThan and DaysLessThan to define the object age range + // (minimum and maximum number of days). + MatchObjectAge *MatchObjectAge `type:"structure"` + + // Contains BytesGreaterThan and BytesLessThan to define the object size range + // (minimum and maximum number of Bytes). + MatchObjectSize *MatchObjectSize `type:"structure"` + + // A single logical operator that allows multiple filter conditions to be joined. + // Objects can match any of the listed filter conditions, which are joined by + // the Or logical operator. Only one of each filter condition is allowed. + Or *StorageLensGroupOrOperator `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 StorageLensGroupFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageLensGroupFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StorageLensGroupFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StorageLensGroupFilter"} + if s.And != nil { + if err := s.And.Validate(); err != nil { + invalidParams.AddNested("And", err.(request.ErrInvalidParams)) + } + } + if s.MatchAnyTag != nil { + for i, v := range s.MatchAnyTag { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MatchAnyTag", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Or != nil { + if err := s.Or.Validate(); err != nil { + invalidParams.AddNested("Or", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnd sets the And field's value. +func (s *StorageLensGroupFilter) SetAnd(v *StorageLensGroupAndOperator) *StorageLensGroupFilter { + s.And = v + return s +} + +// SetMatchAnyPrefix sets the MatchAnyPrefix field's value. +func (s *StorageLensGroupFilter) SetMatchAnyPrefix(v []*string) *StorageLensGroupFilter { + s.MatchAnyPrefix = v + return s +} + +// SetMatchAnySuffix sets the MatchAnySuffix field's value. +func (s *StorageLensGroupFilter) SetMatchAnySuffix(v []*string) *StorageLensGroupFilter { + s.MatchAnySuffix = v + return s +} + +// SetMatchAnyTag sets the MatchAnyTag field's value. +func (s *StorageLensGroupFilter) SetMatchAnyTag(v []*S3Tag) *StorageLensGroupFilter { + s.MatchAnyTag = v + return s +} + +// SetMatchObjectAge sets the MatchObjectAge field's value. +func (s *StorageLensGroupFilter) SetMatchObjectAge(v *MatchObjectAge) *StorageLensGroupFilter { + s.MatchObjectAge = v + return s +} + +// SetMatchObjectSize sets the MatchObjectSize field's value. +func (s *StorageLensGroupFilter) SetMatchObjectSize(v *MatchObjectSize) *StorageLensGroupFilter { + s.MatchObjectSize = v + return s +} + +// SetOr sets the Or field's value. +func (s *StorageLensGroupFilter) SetOr(v *StorageLensGroupOrOperator) *StorageLensGroupFilter { + s.Or = v + return s +} + +// Specifies the Storage Lens groups to include in the Storage Lens group aggregation. +type StorageLensGroupLevel struct { + _ struct{} `type:"structure"` + + // Indicates which Storage Lens group ARNs to include or exclude in the Storage + // Lens group aggregation. If this value is left null, then all Storage Lens + // groups are selected. + SelectionCriteria *StorageLensGroupLevelSelectionCriteria `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 StorageLensGroupLevel) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageLensGroupLevel) GoString() string { + return s.String() +} + +// SetSelectionCriteria sets the SelectionCriteria field's value. +func (s *StorageLensGroupLevel) SetSelectionCriteria(v *StorageLensGroupLevelSelectionCriteria) *StorageLensGroupLevel { + s.SelectionCriteria = v + return s +} + +// Indicates which Storage Lens group ARNs to include or exclude in the Storage +// Lens group aggregation. You can only attach Storage Lens groups to your Storage +// Lens dashboard if they're included in your Storage Lens group aggregation. +// If this value is left null, then all Storage Lens groups are selected. +type StorageLensGroupLevelSelectionCriteria struct { + _ struct{} `type:"structure"` + + // Indicates which Storage Lens group ARNs to exclude from the Storage Lens + // group aggregation. + Exclude []*string `locationNameList:"Arn" type:"list"` + + // Indicates which Storage Lens group ARNs to include in the Storage Lens group + // aggregation. + Include []*string `locationNameList:"Arn" 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 StorageLensGroupLevelSelectionCriteria) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageLensGroupLevelSelectionCriteria) GoString() string { + return s.String() +} + +// SetExclude sets the Exclude field's value. +func (s *StorageLensGroupLevelSelectionCriteria) SetExclude(v []*string) *StorageLensGroupLevelSelectionCriteria { + s.Exclude = v + return s +} + +// SetInclude sets the Include field's value. +func (s *StorageLensGroupLevelSelectionCriteria) SetInclude(v []*string) *StorageLensGroupLevelSelectionCriteria { + s.Include = v + return s +} + +// A container element for specifying Or rule conditions. The rule conditions +// determine the subset of objects to which the Or rule applies. Objects can +// match any of the listed filter conditions, which are joined by the Or logical +// operator. Only one of each filter condition is allowed. +type StorageLensGroupOrOperator struct { + _ struct{} `type:"structure"` + + // Filters objects that match any of the specified prefixes. + MatchAnyPrefix []*string `locationNameList:"Prefix" type:"list"` + + // Filters objects that match any of the specified suffixes. + MatchAnySuffix []*string `locationNameList:"Suffix" type:"list"` + + // Filters objects that match any of the specified S3 object tags. + MatchAnyTag []*S3Tag `locationNameList:"Tag" type:"list"` + + // Filters objects that match the specified object age range. + MatchObjectAge *MatchObjectAge `type:"structure"` + + // Filters objects that match the specified object size range. + MatchObjectSize *MatchObjectSize `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 StorageLensGroupOrOperator) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StorageLensGroupOrOperator) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StorageLensGroupOrOperator) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StorageLensGroupOrOperator"} + if s.MatchAnyTag != nil { + for i, v := range s.MatchAnyTag { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MatchAnyTag", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMatchAnyPrefix sets the MatchAnyPrefix field's value. +func (s *StorageLensGroupOrOperator) SetMatchAnyPrefix(v []*string) *StorageLensGroupOrOperator { + s.MatchAnyPrefix = v + return s +} + +// SetMatchAnySuffix sets the MatchAnySuffix field's value. +func (s *StorageLensGroupOrOperator) SetMatchAnySuffix(v []*string) *StorageLensGroupOrOperator { + s.MatchAnySuffix = v + return s +} + +// SetMatchAnyTag sets the MatchAnyTag field's value. +func (s *StorageLensGroupOrOperator) SetMatchAnyTag(v []*S3Tag) *StorageLensGroupOrOperator { + s.MatchAnyTag = v + return s +} + +// SetMatchObjectAge sets the MatchObjectAge field's value. +func (s *StorageLensGroupOrOperator) SetMatchObjectAge(v *MatchObjectAge) *StorageLensGroupOrOperator { + s.MatchObjectAge = v + return s +} + +// SetMatchObjectSize sets the MatchObjectSize field's value. +func (s *StorageLensGroupOrOperator) SetMatchObjectSize(v *MatchObjectSize) *StorageLensGroupOrOperator { + s.MatchObjectSize = v + return s +} + type StorageLensTag struct { _ struct{} `type:"structure"` @@ -22136,6 +29430,203 @@ return s.String() } +// An Amazon Web Services resource tag that's associated with your S3 resource. +// You can add tags to new objects when you upload them, or you can add object +// tags to existing objects. +// +// This operation is only supported for S3 Storage Lens groups (https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html) +// and for S3 Access Grants (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html). +// The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, +// registered location, or grant. +type Tag struct { + _ struct{} `type:"structure"` + + // The key of the key-value pair of a tag added to your Amazon Web Services + // resource. A tag key can be up to 128 Unicode characters in length and is + // case-sensitive. System created tags that begin with aws: aren’t supported. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value of the key-value pair of a tag added to your Amazon Web Services + // resource. A tag value can be up to 256 Unicode characters in length and is + // case-sensitive. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `locationName:"TagResourceRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The Amazon Web Services account ID that created the S3 resource that you're + // trying to add tags to or the requester's account ID. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the S3 resource that you're trying to add + // tags to. The tagged resource can be an S3 Storage Lens group or S3 Access + // Grants instance, registered location, or grant. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The Amazon Web Services resource tags that you want to add to the specified + // S3 resource. + // + // Tags is a required field + Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if 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 +} + +// SetAccountId sets the AccountId field's value. +func (s *TagResourceInput) SetAccountId(v string) *TagResourceInput { + s.AccountId = &v + return s +} + +// 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 +} + +func (s *TagResourceInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + type Tagging struct { _ struct{} `type:"structure"` @@ -22247,6 +29738,293 @@ return s } +type UntagResourceInput struct { + _ struct{} `locationName:"UntagResourceRequest" type:"structure"` + + // The Amazon Web Services account ID that owns the resource that you're trying + // to remove the tags from. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the S3 resource that you're trying to remove + // the tags from. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The array of tag key-value pairs that you're trying to remove from of the + // S3 resource. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" 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.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *UntagResourceInput) SetAccountId(v string) *UntagResourceInput { + s.AccountId = &v + return s +} + +// 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 +} + +func (s *UntagResourceInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +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 UpdateAccessGrantsLocationInput struct { + _ struct{} `locationName:"UpdateAccessGrantsLocationRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The ID of the registered location that you are updating. S3 Access Grants + // assigns this ID when you register the location. S3 Access Grants assigns + // the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + // + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigned this ID when you registered the location. S3 Access Grants + // assigns the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + // + // If you are passing the default location, you cannot create an access grant + // for the entire default location. You must also specify a bucket or a bucket + // and prefix in the Subprefix field. + // + // AccessGrantsLocationId is a required field + AccessGrantsLocationId *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` + + // The ID of the Amazon Web Services account that is making this request. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM role for the registered location. + // S3 Access Grants assumes this role to manage access to the registered location. + // + // IAMRoleArn is a required field + IAMRoleArn *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAccessGrantsLocationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAccessGrantsLocationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAccessGrantsLocationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAccessGrantsLocationInput"} + if s.AccessGrantsLocationId == nil { + invalidParams.Add(request.NewErrParamRequired("AccessGrantsLocationId")) + } + if s.AccessGrantsLocationId != nil && len(*s.AccessGrantsLocationId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessGrantsLocationId", 1)) + } + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.IAMRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("IAMRoleArn")) + } + if s.IAMRoleArn != nil && len(*s.IAMRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IAMRoleArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *UpdateAccessGrantsLocationInput) SetAccessGrantsLocationId(v string) *UpdateAccessGrantsLocationInput { + s.AccessGrantsLocationId = &v + return s +} + +// SetAccountId sets the AccountId field's value. +func (s *UpdateAccessGrantsLocationInput) SetAccountId(v string) *UpdateAccessGrantsLocationInput { + s.AccountId = &v + return s +} + +// SetIAMRoleArn sets the IAMRoleArn field's value. +func (s *UpdateAccessGrantsLocationInput) SetIAMRoleArn(v string) *UpdateAccessGrantsLocationInput { + s.IAMRoleArn = &v + return s +} + +func (s *UpdateAccessGrantsLocationInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type UpdateAccessGrantsLocationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the registered location that you are updating. + AccessGrantsLocationArn *string `min:"1" type:"string"` + + // The ID of the registered location to which you are granting access. S3 Access + // Grants assigned this ID when you registered the location. S3 Access Grants + // assigns the ID default to the default location s3:// and assigns an auto-generated + // ID to other locations that you register. + AccessGrantsLocationId *string `min:"1" type:"string"` + + // The date and time when you registered the location. + CreatedAt *time.Time `type:"timestamp"` + + // The Amazon Resource Name (ARN) of the IAM role of the registered location. + // S3 Access Grants assumes this role to manage access to the registered location. + IAMRoleArn *string `min:"1" type:"string"` + + // The S3 URI path of the location that you are updating. You cannot update + // the scope of the registered location. The location scope can be the default + // S3 location s3://, the S3 path to a bucket s3://, or the S3 path + // to a bucket and prefix s3:///. + LocationScope *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAccessGrantsLocationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAccessGrantsLocationOutput) GoString() string { + return s.String() +} + +// SetAccessGrantsLocationArn sets the AccessGrantsLocationArn field's value. +func (s *UpdateAccessGrantsLocationOutput) SetAccessGrantsLocationArn(v string) *UpdateAccessGrantsLocationOutput { + s.AccessGrantsLocationArn = &v + return s +} + +// SetAccessGrantsLocationId sets the AccessGrantsLocationId field's value. +func (s *UpdateAccessGrantsLocationOutput) SetAccessGrantsLocationId(v string) *UpdateAccessGrantsLocationOutput { + s.AccessGrantsLocationId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateAccessGrantsLocationOutput) SetCreatedAt(v time.Time) *UpdateAccessGrantsLocationOutput { + s.CreatedAt = &v + return s +} + +// SetIAMRoleArn sets the IAMRoleArn field's value. +func (s *UpdateAccessGrantsLocationOutput) SetIAMRoleArn(v string) *UpdateAccessGrantsLocationOutput { + s.IAMRoleArn = &v + return s +} + +// SetLocationScope sets the LocationScope field's value. +func (s *UpdateAccessGrantsLocationOutput) SetLocationScope(v string) *UpdateAccessGrantsLocationOutput { + s.LocationScope = &v + return s +} + type UpdateJobPriorityInput struct { _ struct{} `locationName:"UpdateJobPriorityRequest" type:"structure"` @@ -22527,6 +30305,119 @@ return s } +type UpdateStorageLensGroupInput struct { + _ struct{} `locationName:"UpdateStorageLensGroupRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The Amazon Web Services account ID of the Storage Lens group owner. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The name of the Storage Lens group that you want to update. + // + // Name is a required field + Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + + // The JSON file that contains the Storage Lens group configuration. + // + // StorageLensGroup is a required field + StorageLensGroup *StorageLensGroup `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 UpdateStorageLensGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateStorageLensGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateStorageLensGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateStorageLensGroupInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.StorageLensGroup == nil { + invalidParams.Add(request.NewErrParamRequired("StorageLensGroup")) + } + if s.StorageLensGroup != nil { + if err := s.StorageLensGroup.Validate(); err != nil { + invalidParams.AddNested("StorageLensGroup", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *UpdateStorageLensGroupInput) SetAccountId(v string) *UpdateStorageLensGroupInput { + s.AccountId = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateStorageLensGroupInput) SetName(v string) *UpdateStorageLensGroupInput { + s.Name = &v + return s +} + +// SetStorageLensGroup sets the StorageLensGroup field's value. +func (s *UpdateStorageLensGroupInput) SetStorageLensGroup(v *StorageLensGroup) *UpdateStorageLensGroupInput { + s.StorageLensGroup = v + return s +} + +func (s *UpdateStorageLensGroupInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type UpdateStorageLensGroupOutput 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 UpdateStorageLensGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateStorageLensGroupOutput) GoString() string { + return s.String() +} + // Describes the versioning state of an Amazon S3 on Outposts bucket. For more // information, see PutBucketVersioning (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html). type VersioningConfiguration struct { @@ -22810,6 +30701,26 @@ } const ( + // GranteeTypeDirectoryUser is a GranteeType enum value + GranteeTypeDirectoryUser = "DIRECTORY_USER" + + // GranteeTypeDirectoryGroup is a GranteeType enum value + GranteeTypeDirectoryGroup = "DIRECTORY_GROUP" + + // GranteeTypeIam is a GranteeType enum value + GranteeTypeIam = "IAM" +) + +// GranteeType_Values returns all elements of the GranteeType enum +func GranteeType_Values() []string { + return []string{ + GranteeTypeDirectoryUser, + GranteeTypeDirectoryGroup, + GranteeTypeIam, + } +} + +const ( // JobManifestFieldNameIgnore is a JobManifestFieldName enum value JobManifestFieldNameIgnore = "Ignore" @@ -23166,6 +31077,42 @@ } const ( + // PermissionRead is a Permission enum value + PermissionRead = "READ" + + // PermissionWrite is a Permission enum value + PermissionWrite = "WRITE" + + // PermissionReadwrite is a Permission enum value + PermissionReadwrite = "READWRITE" +) + +// Permission_Values returns all elements of the Permission enum +func Permission_Values() []string { + return []string{ + PermissionRead, + PermissionWrite, + PermissionReadwrite, + } +} + +const ( + // PrivilegeMinimal is a Privilege enum value + PrivilegeMinimal = "Minimal" + + // PrivilegeDefault is a Privilege enum value + PrivilegeDefault = "Default" +) + +// Privilege_Values returns all elements of the Privilege enum +func Privilege_Values() []string { + return []string{ + PrivilegeMinimal, + PrivilegeDefault, + } +} + +const ( // ReplicaModificationsStatusEnabled is a ReplicaModificationsStatus enum value ReplicaModificationsStatusEnabled = "Enabled" @@ -23485,6 +31432,18 @@ } } +const ( + // S3PrefixTypeObject is a S3PrefixType enum value + S3PrefixTypeObject = "Object" +) + +// S3PrefixType_Values returns all elements of the S3PrefixType enum +func S3PrefixType_Values() []string { + return []string{ + S3PrefixTypeObject, + } +} + const ( // S3SSEAlgorithmAes256 is a S3SSEAlgorithm enum value S3SSEAlgorithmAes256 = "AES256" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3control/s3controliface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/s3control/s3controliface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3control/s3controliface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3control/s3controliface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // AWS S3 Control. // func myFunc(svc s3controliface.S3ControlAPI) bool { -// // Make svc.CreateAccessPoint request +// // Make svc.AssociateAccessGrantsIdentityCenter request // } // // func main() { @@ -42,7 +42,7 @@ // type mockS3ControlClient struct { // s3controliface.S3ControlAPI // } -// func (m *mockS3ControlClient) CreateAccessPoint(input *s3control.CreateAccessPointInput) (*s3control.CreateAccessPointOutput, error) { +// func (m *mockS3ControlClient) AssociateAccessGrantsIdentityCenter(input *s3control.AssociateAccessGrantsIdentityCenterInput) (*s3control.AssociateAccessGrantsIdentityCenterOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,22 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type S3ControlAPI interface { + AssociateAccessGrantsIdentityCenter(*s3control.AssociateAccessGrantsIdentityCenterInput) (*s3control.AssociateAccessGrantsIdentityCenterOutput, error) + AssociateAccessGrantsIdentityCenterWithContext(aws.Context, *s3control.AssociateAccessGrantsIdentityCenterInput, ...request.Option) (*s3control.AssociateAccessGrantsIdentityCenterOutput, error) + AssociateAccessGrantsIdentityCenterRequest(*s3control.AssociateAccessGrantsIdentityCenterInput) (*request.Request, *s3control.AssociateAccessGrantsIdentityCenterOutput) + + CreateAccessGrant(*s3control.CreateAccessGrantInput) (*s3control.CreateAccessGrantOutput, error) + CreateAccessGrantWithContext(aws.Context, *s3control.CreateAccessGrantInput, ...request.Option) (*s3control.CreateAccessGrantOutput, error) + CreateAccessGrantRequest(*s3control.CreateAccessGrantInput) (*request.Request, *s3control.CreateAccessGrantOutput) + + CreateAccessGrantsInstance(*s3control.CreateAccessGrantsInstanceInput) (*s3control.CreateAccessGrantsInstanceOutput, error) + CreateAccessGrantsInstanceWithContext(aws.Context, *s3control.CreateAccessGrantsInstanceInput, ...request.Option) (*s3control.CreateAccessGrantsInstanceOutput, error) + CreateAccessGrantsInstanceRequest(*s3control.CreateAccessGrantsInstanceInput) (*request.Request, *s3control.CreateAccessGrantsInstanceOutput) + + CreateAccessGrantsLocation(*s3control.CreateAccessGrantsLocationInput) (*s3control.CreateAccessGrantsLocationOutput, error) + CreateAccessGrantsLocationWithContext(aws.Context, *s3control.CreateAccessGrantsLocationInput, ...request.Option) (*s3control.CreateAccessGrantsLocationOutput, error) + CreateAccessGrantsLocationRequest(*s3control.CreateAccessGrantsLocationInput) (*request.Request, *s3control.CreateAccessGrantsLocationOutput) + CreateAccessPoint(*s3control.CreateAccessPointInput) (*s3control.CreateAccessPointOutput, error) CreateAccessPointWithContext(aws.Context, *s3control.CreateAccessPointInput, ...request.Option) (*s3control.CreateAccessPointOutput, error) CreateAccessPointRequest(*s3control.CreateAccessPointInput) (*request.Request, *s3control.CreateAccessPointOutput) @@ -80,6 +96,26 @@ CreateMultiRegionAccessPointWithContext(aws.Context, *s3control.CreateMultiRegionAccessPointInput, ...request.Option) (*s3control.CreateMultiRegionAccessPointOutput, error) CreateMultiRegionAccessPointRequest(*s3control.CreateMultiRegionAccessPointInput) (*request.Request, *s3control.CreateMultiRegionAccessPointOutput) + CreateStorageLensGroup(*s3control.CreateStorageLensGroupInput) (*s3control.CreateStorageLensGroupOutput, error) + CreateStorageLensGroupWithContext(aws.Context, *s3control.CreateStorageLensGroupInput, ...request.Option) (*s3control.CreateStorageLensGroupOutput, error) + CreateStorageLensGroupRequest(*s3control.CreateStorageLensGroupInput) (*request.Request, *s3control.CreateStorageLensGroupOutput) + + DeleteAccessGrant(*s3control.DeleteAccessGrantInput) (*s3control.DeleteAccessGrantOutput, error) + DeleteAccessGrantWithContext(aws.Context, *s3control.DeleteAccessGrantInput, ...request.Option) (*s3control.DeleteAccessGrantOutput, error) + DeleteAccessGrantRequest(*s3control.DeleteAccessGrantInput) (*request.Request, *s3control.DeleteAccessGrantOutput) + + DeleteAccessGrantsInstance(*s3control.DeleteAccessGrantsInstanceInput) (*s3control.DeleteAccessGrantsInstanceOutput, error) + DeleteAccessGrantsInstanceWithContext(aws.Context, *s3control.DeleteAccessGrantsInstanceInput, ...request.Option) (*s3control.DeleteAccessGrantsInstanceOutput, error) + DeleteAccessGrantsInstanceRequest(*s3control.DeleteAccessGrantsInstanceInput) (*request.Request, *s3control.DeleteAccessGrantsInstanceOutput) + + DeleteAccessGrantsInstanceResourcePolicy(*s3control.DeleteAccessGrantsInstanceResourcePolicyInput) (*s3control.DeleteAccessGrantsInstanceResourcePolicyOutput, error) + DeleteAccessGrantsInstanceResourcePolicyWithContext(aws.Context, *s3control.DeleteAccessGrantsInstanceResourcePolicyInput, ...request.Option) (*s3control.DeleteAccessGrantsInstanceResourcePolicyOutput, error) + DeleteAccessGrantsInstanceResourcePolicyRequest(*s3control.DeleteAccessGrantsInstanceResourcePolicyInput) (*request.Request, *s3control.DeleteAccessGrantsInstanceResourcePolicyOutput) + + DeleteAccessGrantsLocation(*s3control.DeleteAccessGrantsLocationInput) (*s3control.DeleteAccessGrantsLocationOutput, error) + DeleteAccessGrantsLocationWithContext(aws.Context, *s3control.DeleteAccessGrantsLocationInput, ...request.Option) (*s3control.DeleteAccessGrantsLocationOutput, error) + DeleteAccessGrantsLocationRequest(*s3control.DeleteAccessGrantsLocationInput) (*request.Request, *s3control.DeleteAccessGrantsLocationOutput) + DeleteAccessPoint(*s3control.DeleteAccessPointInput) (*s3control.DeleteAccessPointOutput, error) DeleteAccessPointWithContext(aws.Context, *s3control.DeleteAccessPointInput, ...request.Option) (*s3control.DeleteAccessPointOutput, error) DeleteAccessPointRequest(*s3control.DeleteAccessPointInput) (*request.Request, *s3control.DeleteAccessPointOutput) @@ -136,6 +172,10 @@ DeleteStorageLensConfigurationTaggingWithContext(aws.Context, *s3control.DeleteStorageLensConfigurationTaggingInput, ...request.Option) (*s3control.DeleteStorageLensConfigurationTaggingOutput, error) DeleteStorageLensConfigurationTaggingRequest(*s3control.DeleteStorageLensConfigurationTaggingInput) (*request.Request, *s3control.DeleteStorageLensConfigurationTaggingOutput) + DeleteStorageLensGroup(*s3control.DeleteStorageLensGroupInput) (*s3control.DeleteStorageLensGroupOutput, error) + DeleteStorageLensGroupWithContext(aws.Context, *s3control.DeleteStorageLensGroupInput, ...request.Option) (*s3control.DeleteStorageLensGroupOutput, error) + DeleteStorageLensGroupRequest(*s3control.DeleteStorageLensGroupInput) (*request.Request, *s3control.DeleteStorageLensGroupOutput) + DescribeJob(*s3control.DescribeJobInput) (*s3control.DescribeJobOutput, error) DescribeJobWithContext(aws.Context, *s3control.DescribeJobInput, ...request.Option) (*s3control.DescribeJobOutput, error) DescribeJobRequest(*s3control.DescribeJobInput) (*request.Request, *s3control.DescribeJobOutput) @@ -144,6 +184,30 @@ DescribeMultiRegionAccessPointOperationWithContext(aws.Context, *s3control.DescribeMultiRegionAccessPointOperationInput, ...request.Option) (*s3control.DescribeMultiRegionAccessPointOperationOutput, error) DescribeMultiRegionAccessPointOperationRequest(*s3control.DescribeMultiRegionAccessPointOperationInput) (*request.Request, *s3control.DescribeMultiRegionAccessPointOperationOutput) + DissociateAccessGrantsIdentityCenter(*s3control.DissociateAccessGrantsIdentityCenterInput) (*s3control.DissociateAccessGrantsIdentityCenterOutput, error) + DissociateAccessGrantsIdentityCenterWithContext(aws.Context, *s3control.DissociateAccessGrantsIdentityCenterInput, ...request.Option) (*s3control.DissociateAccessGrantsIdentityCenterOutput, error) + DissociateAccessGrantsIdentityCenterRequest(*s3control.DissociateAccessGrantsIdentityCenterInput) (*request.Request, *s3control.DissociateAccessGrantsIdentityCenterOutput) + + GetAccessGrant(*s3control.GetAccessGrantInput) (*s3control.GetAccessGrantOutput, error) + GetAccessGrantWithContext(aws.Context, *s3control.GetAccessGrantInput, ...request.Option) (*s3control.GetAccessGrantOutput, error) + GetAccessGrantRequest(*s3control.GetAccessGrantInput) (*request.Request, *s3control.GetAccessGrantOutput) + + GetAccessGrantsInstance(*s3control.GetAccessGrantsInstanceInput) (*s3control.GetAccessGrantsInstanceOutput, error) + GetAccessGrantsInstanceWithContext(aws.Context, *s3control.GetAccessGrantsInstanceInput, ...request.Option) (*s3control.GetAccessGrantsInstanceOutput, error) + GetAccessGrantsInstanceRequest(*s3control.GetAccessGrantsInstanceInput) (*request.Request, *s3control.GetAccessGrantsInstanceOutput) + + GetAccessGrantsInstanceForPrefix(*s3control.GetAccessGrantsInstanceForPrefixInput) (*s3control.GetAccessGrantsInstanceForPrefixOutput, error) + GetAccessGrantsInstanceForPrefixWithContext(aws.Context, *s3control.GetAccessGrantsInstanceForPrefixInput, ...request.Option) (*s3control.GetAccessGrantsInstanceForPrefixOutput, error) + GetAccessGrantsInstanceForPrefixRequest(*s3control.GetAccessGrantsInstanceForPrefixInput) (*request.Request, *s3control.GetAccessGrantsInstanceForPrefixOutput) + + GetAccessGrantsInstanceResourcePolicy(*s3control.GetAccessGrantsInstanceResourcePolicyInput) (*s3control.GetAccessGrantsInstanceResourcePolicyOutput, error) + GetAccessGrantsInstanceResourcePolicyWithContext(aws.Context, *s3control.GetAccessGrantsInstanceResourcePolicyInput, ...request.Option) (*s3control.GetAccessGrantsInstanceResourcePolicyOutput, error) + GetAccessGrantsInstanceResourcePolicyRequest(*s3control.GetAccessGrantsInstanceResourcePolicyInput) (*request.Request, *s3control.GetAccessGrantsInstanceResourcePolicyOutput) + + GetAccessGrantsLocation(*s3control.GetAccessGrantsLocationInput) (*s3control.GetAccessGrantsLocationOutput, error) + GetAccessGrantsLocationWithContext(aws.Context, *s3control.GetAccessGrantsLocationInput, ...request.Option) (*s3control.GetAccessGrantsLocationOutput, error) + GetAccessGrantsLocationRequest(*s3control.GetAccessGrantsLocationInput) (*request.Request, *s3control.GetAccessGrantsLocationOutput) + GetAccessPoint(*s3control.GetAccessPointInput) (*s3control.GetAccessPointOutput, error) GetAccessPointWithContext(aws.Context, *s3control.GetAccessPointInput, ...request.Option) (*s3control.GetAccessPointOutput, error) GetAccessPointRequest(*s3control.GetAccessPointInput) (*request.Request, *s3control.GetAccessPointOutput) @@ -196,6 +260,10 @@ GetBucketVersioningWithContext(aws.Context, *s3control.GetBucketVersioningInput, ...request.Option) (*s3control.GetBucketVersioningOutput, error) GetBucketVersioningRequest(*s3control.GetBucketVersioningInput) (*request.Request, *s3control.GetBucketVersioningOutput) + GetDataAccess(*s3control.GetDataAccessInput) (*s3control.GetDataAccessOutput, error) + GetDataAccessWithContext(aws.Context, *s3control.GetDataAccessInput, ...request.Option) (*s3control.GetDataAccessOutput, error) + GetDataAccessRequest(*s3control.GetDataAccessInput) (*request.Request, *s3control.GetDataAccessOutput) + GetJobTagging(*s3control.GetJobTaggingInput) (*s3control.GetJobTaggingOutput, error) GetJobTaggingWithContext(aws.Context, *s3control.GetJobTaggingInput, ...request.Option) (*s3control.GetJobTaggingOutput, error) GetJobTaggingRequest(*s3control.GetJobTaggingInput) (*request.Request, *s3control.GetJobTaggingOutput) @@ -228,6 +296,31 @@ GetStorageLensConfigurationTaggingWithContext(aws.Context, *s3control.GetStorageLensConfigurationTaggingInput, ...request.Option) (*s3control.GetStorageLensConfigurationTaggingOutput, error) GetStorageLensConfigurationTaggingRequest(*s3control.GetStorageLensConfigurationTaggingInput) (*request.Request, *s3control.GetStorageLensConfigurationTaggingOutput) + GetStorageLensGroup(*s3control.GetStorageLensGroupInput) (*s3control.GetStorageLensGroupOutput, error) + GetStorageLensGroupWithContext(aws.Context, *s3control.GetStorageLensGroupInput, ...request.Option) (*s3control.GetStorageLensGroupOutput, error) + GetStorageLensGroupRequest(*s3control.GetStorageLensGroupInput) (*request.Request, *s3control.GetStorageLensGroupOutput) + + ListAccessGrants(*s3control.ListAccessGrantsInput) (*s3control.ListAccessGrantsOutput, error) + ListAccessGrantsWithContext(aws.Context, *s3control.ListAccessGrantsInput, ...request.Option) (*s3control.ListAccessGrantsOutput, error) + ListAccessGrantsRequest(*s3control.ListAccessGrantsInput) (*request.Request, *s3control.ListAccessGrantsOutput) + + ListAccessGrantsPages(*s3control.ListAccessGrantsInput, func(*s3control.ListAccessGrantsOutput, bool) bool) error + ListAccessGrantsPagesWithContext(aws.Context, *s3control.ListAccessGrantsInput, func(*s3control.ListAccessGrantsOutput, bool) bool, ...request.Option) error + + ListAccessGrantsInstances(*s3control.ListAccessGrantsInstancesInput) (*s3control.ListAccessGrantsInstancesOutput, error) + ListAccessGrantsInstancesWithContext(aws.Context, *s3control.ListAccessGrantsInstancesInput, ...request.Option) (*s3control.ListAccessGrantsInstancesOutput, error) + ListAccessGrantsInstancesRequest(*s3control.ListAccessGrantsInstancesInput) (*request.Request, *s3control.ListAccessGrantsInstancesOutput) + + ListAccessGrantsInstancesPages(*s3control.ListAccessGrantsInstancesInput, func(*s3control.ListAccessGrantsInstancesOutput, bool) bool) error + ListAccessGrantsInstancesPagesWithContext(aws.Context, *s3control.ListAccessGrantsInstancesInput, func(*s3control.ListAccessGrantsInstancesOutput, bool) bool, ...request.Option) error + + ListAccessGrantsLocations(*s3control.ListAccessGrantsLocationsInput) (*s3control.ListAccessGrantsLocationsOutput, error) + ListAccessGrantsLocationsWithContext(aws.Context, *s3control.ListAccessGrantsLocationsInput, ...request.Option) (*s3control.ListAccessGrantsLocationsOutput, error) + ListAccessGrantsLocationsRequest(*s3control.ListAccessGrantsLocationsInput) (*request.Request, *s3control.ListAccessGrantsLocationsOutput) + + ListAccessGrantsLocationsPages(*s3control.ListAccessGrantsLocationsInput, func(*s3control.ListAccessGrantsLocationsOutput, bool) bool) error + ListAccessGrantsLocationsPagesWithContext(aws.Context, *s3control.ListAccessGrantsLocationsInput, func(*s3control.ListAccessGrantsLocationsOutput, bool) bool, ...request.Option) error + ListAccessPoints(*s3control.ListAccessPointsInput) (*s3control.ListAccessPointsOutput, error) ListAccessPointsWithContext(aws.Context, *s3control.ListAccessPointsInput, ...request.Option) (*s3control.ListAccessPointsOutput, error) ListAccessPointsRequest(*s3control.ListAccessPointsInput) (*request.Request, *s3control.ListAccessPointsOutput) @@ -270,6 +363,21 @@ ListStorageLensConfigurationsPages(*s3control.ListStorageLensConfigurationsInput, func(*s3control.ListStorageLensConfigurationsOutput, bool) bool) error ListStorageLensConfigurationsPagesWithContext(aws.Context, *s3control.ListStorageLensConfigurationsInput, func(*s3control.ListStorageLensConfigurationsOutput, bool) bool, ...request.Option) error + ListStorageLensGroups(*s3control.ListStorageLensGroupsInput) (*s3control.ListStorageLensGroupsOutput, error) + ListStorageLensGroupsWithContext(aws.Context, *s3control.ListStorageLensGroupsInput, ...request.Option) (*s3control.ListStorageLensGroupsOutput, error) + ListStorageLensGroupsRequest(*s3control.ListStorageLensGroupsInput) (*request.Request, *s3control.ListStorageLensGroupsOutput) + + ListStorageLensGroupsPages(*s3control.ListStorageLensGroupsInput, func(*s3control.ListStorageLensGroupsOutput, bool) bool) error + ListStorageLensGroupsPagesWithContext(aws.Context, *s3control.ListStorageLensGroupsInput, func(*s3control.ListStorageLensGroupsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*s3control.ListTagsForResourceInput) (*s3control.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *s3control.ListTagsForResourceInput, ...request.Option) (*s3control.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*s3control.ListTagsForResourceInput) (*request.Request, *s3control.ListTagsForResourceOutput) + + PutAccessGrantsInstanceResourcePolicy(*s3control.PutAccessGrantsInstanceResourcePolicyInput) (*s3control.PutAccessGrantsInstanceResourcePolicyOutput, error) + PutAccessGrantsInstanceResourcePolicyWithContext(aws.Context, *s3control.PutAccessGrantsInstanceResourcePolicyInput, ...request.Option) (*s3control.PutAccessGrantsInstanceResourcePolicyOutput, error) + PutAccessGrantsInstanceResourcePolicyRequest(*s3control.PutAccessGrantsInstanceResourcePolicyInput) (*request.Request, *s3control.PutAccessGrantsInstanceResourcePolicyOutput) + PutAccessPointConfigurationForObjectLambda(*s3control.PutAccessPointConfigurationForObjectLambdaInput) (*s3control.PutAccessPointConfigurationForObjectLambdaOutput, error) PutAccessPointConfigurationForObjectLambdaWithContext(aws.Context, *s3control.PutAccessPointConfigurationForObjectLambdaInput, ...request.Option) (*s3control.PutAccessPointConfigurationForObjectLambdaOutput, error) PutAccessPointConfigurationForObjectLambdaRequest(*s3control.PutAccessPointConfigurationForObjectLambdaInput) (*request.Request, *s3control.PutAccessPointConfigurationForObjectLambdaOutput) @@ -326,6 +434,18 @@ SubmitMultiRegionAccessPointRoutesWithContext(aws.Context, *s3control.SubmitMultiRegionAccessPointRoutesInput, ...request.Option) (*s3control.SubmitMultiRegionAccessPointRoutesOutput, error) SubmitMultiRegionAccessPointRoutesRequest(*s3control.SubmitMultiRegionAccessPointRoutesInput) (*request.Request, *s3control.SubmitMultiRegionAccessPointRoutesOutput) + TagResource(*s3control.TagResourceInput) (*s3control.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *s3control.TagResourceInput, ...request.Option) (*s3control.TagResourceOutput, error) + TagResourceRequest(*s3control.TagResourceInput) (*request.Request, *s3control.TagResourceOutput) + + UntagResource(*s3control.UntagResourceInput) (*s3control.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *s3control.UntagResourceInput, ...request.Option) (*s3control.UntagResourceOutput, error) + UntagResourceRequest(*s3control.UntagResourceInput) (*request.Request, *s3control.UntagResourceOutput) + + UpdateAccessGrantsLocation(*s3control.UpdateAccessGrantsLocationInput) (*s3control.UpdateAccessGrantsLocationOutput, error) + UpdateAccessGrantsLocationWithContext(aws.Context, *s3control.UpdateAccessGrantsLocationInput, ...request.Option) (*s3control.UpdateAccessGrantsLocationOutput, error) + UpdateAccessGrantsLocationRequest(*s3control.UpdateAccessGrantsLocationInput) (*request.Request, *s3control.UpdateAccessGrantsLocationOutput) + UpdateJobPriority(*s3control.UpdateJobPriorityInput) (*s3control.UpdateJobPriorityOutput, error) UpdateJobPriorityWithContext(aws.Context, *s3control.UpdateJobPriorityInput, ...request.Option) (*s3control.UpdateJobPriorityOutput, error) UpdateJobPriorityRequest(*s3control.UpdateJobPriorityInput) (*request.Request, *s3control.UpdateJobPriorityOutput) @@ -333,6 +453,10 @@ UpdateJobStatus(*s3control.UpdateJobStatusInput) (*s3control.UpdateJobStatusOutput, error) UpdateJobStatusWithContext(aws.Context, *s3control.UpdateJobStatusInput, ...request.Option) (*s3control.UpdateJobStatusOutput, error) UpdateJobStatusRequest(*s3control.UpdateJobStatusInput) (*request.Request, *s3control.UpdateJobStatusOutput) + + UpdateStorageLensGroup(*s3control.UpdateStorageLensGroupInput) (*s3control.UpdateStorageLensGroupOutput, error) + UpdateStorageLensGroupWithContext(aws.Context, *s3control.UpdateStorageLensGroupInput, ...request.Option) (*s3control.UpdateStorageLensGroupOutput, error) + UpdateStorageLensGroupRequest(*s3control.UpdateStorageLensGroupInput) (*request.Request, *s3control.UpdateStorageLensGroupOutput) } var _ S3ControlAPI = (*s3control.S3Control)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/s3outposts/api.go golang-github-aws-aws-sdk-go-1.48.14/service/s3outposts/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/s3outposts/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/s3outposts/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1619,6 +1619,10 @@ // Returns the Amazon Web Services account ID of the outpost owner. Useful for // comparing owned versus shared outposts. OwnerId *string `type:"string"` + + // Specifies the unique S3 on Outposts ARN for use with Resource Access Manager + // (RAM). + S3OutpostArn *string `type:"string"` } // String returns the string representation. @@ -1663,6 +1667,12 @@ return s } +// SetS3OutpostArn sets the S3OutpostArn field's value. +func (s *Outpost) SetS3OutpostArn(v string) *Outpost { + s.S3OutpostArn = &v + return s +} + // The service link connection to your Outposts home Region is down. Check your // connection and try again. type OutpostOfflineException struct { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sagemaker/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sagemaker/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sagemaker/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sagemaker/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -160,13 +160,13 @@ // create the tuning job by specifying them in the Tags parameter of CreateHyperParameterTuningJob // (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHyperParameterTuningJob.html) // -// Tags that you add to a SageMaker Studio Domain or User Profile by calling -// this API are also added to any Apps that the Domain or User Profile launches -// after you call this API, but not to Apps that the Domain or User Profile -// launched before you called this API. To make sure that the tags associated -// with a Domain or User Profile are also added to all Apps that the Domain -// or User Profile launches, add the tags when you first create the Domain or -// User Profile by specifying them in the Tags parameter of CreateDomain (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateDomain.html) +// Tags that you add to a SageMaker Domain or User Profile by calling this API +// are also added to any Apps that the Domain or User Profile launches after +// you call this API, but not to Apps that the Domain or User Profile launched +// before you called this API. To make sure that the tags associated with a +// Domain or User Profile are also added to all Apps that the Domain or User +// Profile launches, add the tags when you first create the Domain or User Profile +// by specifying them in the Tags parameter of CreateDomain (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateDomain.html) // or CreateUserProfile (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateUserProfile.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -556,9 +556,9 @@ // CreateApp API operation for Amazon SageMaker Service. // // Creates a running app for the specified UserProfile. This operation is automatically -// invoked by Amazon SageMaker Studio upon access to the associated Domain, -// and when new kernel configurations are selected by the user. A user may have -// multiple Apps active simultaneously. +// invoked by Amazon SageMaker upon access to the associated Domain, and when +// new kernel configurations are selected by the user. A user may have multiple +// Apps active simultaneously. // // 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 @@ -811,8 +811,9 @@ // which offer backward compatibility. // // CreateAutoMLJobV2 can manage tabular problem types identical to those of -// its previous version CreateAutoMLJob, as well as non-tabular problem types -// such as image or text classification. +// its previous version CreateAutoMLJob, as well as time-series forecasting, +// non-tabular problem types such as image or text classification, and text +// generation (LLMs fine-tuning). // // Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 // in Migrate a CreateAutoMLJob to CreateAutoMLJobV2 (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment-api.html#autopilot-create-experiment-api-migrate-v1-v2). @@ -912,8 +913,9 @@ // which offer backward compatibility. // // CreateAutoMLJobV2 can manage tabular problem types identical to those of -// its previous version CreateAutoMLJob, as well as non-tabular problem types -// such as image or text classification. +// its previous version CreateAutoMLJob, as well as time-series forecasting, +// non-tabular problem types such as image or text classification, and text +// generation (LLMs fine-tuning). // // Find guidelines about how to migrate a CreateAutoMLJob to CreateAutoMLJobV2 // in Migrate a CreateAutoMLJob to CreateAutoMLJobV2 (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment-api.html#autopilot-create-experiment-api-migrate-v1-v2). @@ -962,6 +964,93 @@ return out, req.Send() } +const opCreateCluster = "CreateCluster" + +// CreateClusterRequest generates a "aws/request.Request" representing the +// client's request for the CreateCluster 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 CreateCluster for more information on using the CreateCluster +// 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 CreateClusterRequest method. +// req, resp := client.CreateClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateCluster +func (c *SageMaker) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) { + op := &request.Operation{ + Name: opCreateCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateClusterInput{} + } + + output = &CreateClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCluster API operation for Amazon SageMaker Service. +// +// Creates a SageMaker HyperPod cluster. SageMaker HyperPod is a capability +// of SageMaker for creating and managing persistent clusters for developing +// large machine learning models, such as large language models (LLMs) and diffusion +// models. To learn more, see Amazon SageMaker HyperPod (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod.html) +// in the Amazon SageMaker Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation CreateCluster for usage and error information. +// +// Returned Error Types: +// +// - ResourceLimitExceeded +// You have exceeded an SageMaker resource limit. For example, you might have +// too many training jobs created. +// +// - ResourceInUse +// Resource being accessed is in use. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateCluster +func (c *SageMaker) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { + req, out := c.CreateClusterRequest(input) + return out, req.Send() +} + +// CreateClusterWithContext is the same as CreateCluster with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCluster 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 *SageMaker) CreateClusterWithContext(ctx aws.Context, input *CreateClusterInput, opts ...request.Option) (*CreateClusterOutput, error) { + req, out := c.CreateClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateCodeRepository = "CreateCodeRepository" // CreateCodeRepositoryRequest generates a "aws/request.Request" representing the @@ -1448,11 +1537,11 @@ // CreateDomain API operation for Amazon SageMaker Service. // -// Creates a Domain used by Amazon SageMaker Studio. A domain consists of an -// associated Amazon Elastic File System (EFS) volume, a list of authorized -// users, and a variety of security, application, policy, and Amazon Virtual -// Private Cloud (VPC) configurations. Users within a domain can share notebook -// files and other artifacts with each other. +// Creates a Domain. A domain consists of an associated Amazon Elastic File +// System (EFS) volume, a list of authorized users, and a variety of security, +// application, policy, and Amazon Virtual Private Cloud (VPC) configurations. +// Users within a domain can share notebook files and other artifacts with each +// other. // // # EFS storage // @@ -1468,26 +1557,25 @@ // // # VPC configuration // -// All SageMaker Studio traffic between the domain and the EFS volume is through -// the specified VPC and subnets. For other Studio traffic, you can specify -// the AppNetworkAccessType parameter. AppNetworkAccessType corresponds to the -// network access type that you choose when you onboard to Studio. The following -// options are available: +// All traffic between the domain and the EFS volume is through the specified +// VPC and subnets. For other traffic, you can specify the AppNetworkAccessType +// parameter. AppNetworkAccessType corresponds to the network access type that +// you choose when you onboard to the domain. The following options are available: // // - PublicInternetOnly - Non-EFS traffic goes through a VPC managed by Amazon // SageMaker, which allows internet access. This is the default value. // -// - VpcOnly - All Studio traffic is through the specified VPC and subnets. -// Internet access is disabled by default. To allow internet access, you -// must specify a NAT gateway. When internet access is disabled, you won't -// be able to run a Studio notebook or to train or host models unless your -// VPC has an interface endpoint to the SageMaker API and runtime or a NAT -// gateway and your security groups allow outbound connections. +// - VpcOnly - All traffic is through the specified VPC and subnets. Internet +// access is disabled by default. To allow internet access, you must specify +// a NAT gateway. When internet access is disabled, you won't be able to +// run a Amazon SageMaker Studio notebook or to train or host models unless +// your VPC has an interface endpoint to the SageMaker API and runtime or +// a NAT gateway and your security groups allow outbound connections. // // NFS traffic over TCP on port 2049 needs to be allowed in both inbound and -// outbound rules in order to launch a SageMaker Studio app successfully. +// outbound rules in order to launch a Amazon SageMaker Studio app successfully. // -// For more information, see Connect SageMaker Studio Notebooks to Resources +// For more information, see Connect Amazon SageMaker Studio Notebooks to Resources // in a VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-notebooks-and-internet-access.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2183,6 +2271,9 @@ // Check Amazon Web Services service quotas (https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) // to see the FeatureGroups quota for your Amazon Web Services account. // +// Note that it can take approximately 10-15 minutes to provision an OnlineStore +// FeatureGroup with the InMemory StorageType. +// // You must include at least one of OnlineStoreConfig and OfflineStoreConfig // to create a FeatureGroup. // @@ -2748,6 +2839,93 @@ return out, req.Send() } +const opCreateInferenceComponent = "CreateInferenceComponent" + +// CreateInferenceComponentRequest generates a "aws/request.Request" representing the +// client's request for the CreateInferenceComponent 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 CreateInferenceComponent for more information on using the CreateInferenceComponent +// 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 CreateInferenceComponentRequest method. +// req, resp := client.CreateInferenceComponentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateInferenceComponent +func (c *SageMaker) CreateInferenceComponentRequest(input *CreateInferenceComponentInput) (req *request.Request, output *CreateInferenceComponentOutput) { + op := &request.Operation{ + Name: opCreateInferenceComponent, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateInferenceComponentInput{} + } + + output = &CreateInferenceComponentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateInferenceComponent API operation for Amazon SageMaker Service. +// +// Creates an inference component, which is a SageMaker hosting object that +// you can use to deploy a model to an endpoint. In the inference component +// settings, you specify the model, the endpoint, and how the model utilizes +// the resources that the endpoint hosts. You can optimize resource utilization +// by tailoring how the required CPU cores, accelerators, and memory are allocated. +// You can deploy multiple inference components to an endpoint, where each inference +// component contains one model and the resource utilization needs for that +// individual model. After you deploy an inference component, you can directly +// invoke the associated model when you use the InvokeEndpoint API action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation CreateInferenceComponent for usage and error information. +// +// Returned Error Types: +// - ResourceLimitExceeded +// You have exceeded an SageMaker resource limit. For example, you might have +// too many training jobs created. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateInferenceComponent +func (c *SageMaker) CreateInferenceComponent(input *CreateInferenceComponentInput) (*CreateInferenceComponentOutput, error) { + req, out := c.CreateInferenceComponentRequest(input) + return out, req.Send() +} + +// CreateInferenceComponentWithContext is the same as CreateInferenceComponent with the addition of +// the ability to pass a context and additional request options. +// +// See CreateInferenceComponent 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 *SageMaker) CreateInferenceComponentWithContext(ctx aws.Context, input *CreateInferenceComponentInput, opts ...request.Option) (*CreateInferenceComponentOutput, error) { + req, out := c.CreateInferenceComponentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateInferenceExperiment = "CreateInferenceExperiment" // CreateInferenceExperimentRequest generates a "aws/request.Request" representing the @@ -4178,10 +4356,10 @@ // CreatePresignedDomainUrl API operation for Amazon SageMaker Service. // // Creates a URL for a specified UserProfile in a Domain. When accessed in a -// web browser, the user will be automatically signed in to Amazon SageMaker -// Studio, and granted access to all of the Apps and files associated with the -// Domain's Amazon Elastic File System (EFS) volume. This operation can only -// be called when the authentication mode equals IAM. +// web browser, the user will be automatically signed in to the domain, and +// granted access to all of the Apps and files associated with the Domain's +// Amazon Elastic File System (EFS) volume. This operation can only be called +// when the authentication mode equals IAM. // // The IAM role or user passed to this API defines the permissions to access // the app. Once the presigned URL is created, no additional permission is required @@ -4191,8 +4369,8 @@ // // You can restrict access to this API and to the URL that it returns to a list // of IP addresses, Amazon VPCs or Amazon VPC Endpoints that you specify. For -// more information, see Connect to SageMaker Studio Through an Interface VPC -// Endpoint (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-interface-endpoint.html) . +// more information, see Connect to Amazon SageMaker Studio Through an Interface +// VPC Endpoint (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-interface-endpoint.html) . // // The URL that you get from a call to CreatePresignedDomainUrl has a default // timeout of 5 minutes. You can configure this value using ExpiresInSeconds. @@ -4618,7 +4796,7 @@ // CreateStudioLifecycleConfig API operation for Amazon SageMaker Service. // -// Creates a new Studio Lifecycle Configuration. +// Creates a new Amazon SageMaker Studio Lifecycle Configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5136,11 +5314,11 @@ // Creates a user profile. A user profile represents a single user within a // domain, and is the main way to reference a "person" for the purposes of sharing, // reporting, and other user-oriented features. This entity is created when -// a user onboards to Amazon SageMaker Studio. If an administrator invites a -// person by email or imports them from IAM Identity Center, a user profile -// is automatically created. A user profile is the primary holder of settings -// for an individual user and has a reference to the user's private Amazon Elastic -// File System (EFS) home directory. +// a user onboards to a domain. If an administrator invites a person by email +// or imports them from IAM Identity Center, a user profile is automatically +// created. A user profile is the primary holder of settings for an individual +// user and has a reference to the user's private Amazon Elastic File System +// (EFS) home directory. // // 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 @@ -5828,6 +6006,89 @@ return out, req.Send() } +const opDeleteCluster = "DeleteCluster" + +// DeleteClusterRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCluster 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 DeleteCluster for more information on using the DeleteCluster +// 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 DeleteClusterRequest method. +// req, resp := client.DeleteClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteCluster +func (c *SageMaker) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput) { + op := &request.Operation{ + Name: opDeleteCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteClusterInput{} + } + + output = &DeleteClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteCluster API operation for Amazon SageMaker Service. +// +// Delete a SageMaker HyperPod cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation DeleteCluster for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFound +// Resource being access is not found. +// +// - ConflictException +// There was a conflict when you attempted to modify a SageMaker entity such +// as an Experiment or Artifact. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteCluster +func (c *SageMaker) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { + req, out := c.DeleteClusterRequest(input) + return out, req.Send() +} + +// DeleteClusterWithContext is the same as DeleteCluster with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCluster 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 *SageMaker) DeleteClusterWithContext(ctx aws.Context, input *DeleteClusterInput, opts ...request.Option) (*DeleteClusterOutput, error) { + req, out := c.DeleteClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteCodeRepository = "DeleteCodeRepository" // DeleteCodeRepositoryRequest generates a "aws/request.Request" representing the @@ -6683,6 +6944,9 @@ // Glue database and tables that are automatically created for your OfflineStore // are not deleted. // +// Note that it can take approximately 10-15 minutes to delete an OnlineStore +// FeatureGroup with the InMemory StorageType. +// // 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. @@ -7221,6 +7485,80 @@ return out, req.Send() } +const opDeleteInferenceComponent = "DeleteInferenceComponent" + +// DeleteInferenceComponentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteInferenceComponent 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 DeleteInferenceComponent for more information on using the DeleteInferenceComponent +// 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 DeleteInferenceComponentRequest method. +// req, resp := client.DeleteInferenceComponentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteInferenceComponent +func (c *SageMaker) DeleteInferenceComponentRequest(input *DeleteInferenceComponentInput) (req *request.Request, output *DeleteInferenceComponentOutput) { + op := &request.Operation{ + Name: opDeleteInferenceComponent, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteInferenceComponentInput{} + } + + output = &DeleteInferenceComponentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteInferenceComponent API operation for Amazon SageMaker Service. +// +// Deletes an inference component. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation DeleteInferenceComponent for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteInferenceComponent +func (c *SageMaker) DeleteInferenceComponent(input *DeleteInferenceComponentInput) (*DeleteInferenceComponentOutput, error) { + req, out := c.DeleteInferenceComponentRequest(input) + return out, req.Send() +} + +// DeleteInferenceComponentWithContext is the same as DeleteInferenceComponent with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteInferenceComponent 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 *SageMaker) DeleteInferenceComponentWithContext(ctx aws.Context, input *DeleteInferenceComponentInput, opts ...request.Option) (*DeleteInferenceComponentOutput, error) { + req, out := c.DeleteInferenceComponentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteInferenceExperiment = "DeleteInferenceExperiment" // DeleteInferenceExperimentRequest generates a "aws/request.Request" representing the @@ -8465,10 +8803,10 @@ // DeleteStudioLifecycleConfig API operation for Amazon SageMaker Service. // -// Deletes the Studio Lifecycle Configuration. In order to delete the Lifecycle -// Configuration, there must be no running apps using the Lifecycle Configuration. -// You must also remove the Lifecycle Configuration from UserSettings in all -// Domains and UserProfiles. +// Deletes the Amazon SageMaker Studio Lifecycle Configuration. In order to +// delete the Lifecycle Configuration, there must be no running apps using the +// Lifecycle Configuration. You must also remove the Lifecycle Configuration +// from UserSettings in all Domains and UserProfiles. // // 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 @@ -8559,9 +8897,9 @@ // deleted tags are not removed from training jobs that the hyperparameter tuning // job launched before you called this API. // -// When you call this API to delete tags from a SageMaker Studio Domain or User -// Profile, the deleted tags are not removed from Apps that the SageMaker Studio -// Domain or User Profile launched before you called this API. +// When you call this API to delete tags from a SageMaker Domain or User Profile, +// the deleted tags are not removed from Apps that the SageMaker Domain or User +// Profile launched before you called this API. // // 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 @@ -9622,6 +9960,163 @@ return out, req.Send() } +const opDescribeCluster = "DescribeCluster" + +// DescribeClusterRequest generates a "aws/request.Request" representing the +// client's request for the DescribeCluster 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 DescribeCluster for more information on using the DescribeCluster +// 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 DescribeClusterRequest method. +// req, resp := client.DescribeClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeCluster +func (c *SageMaker) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { + op := &request.Operation{ + Name: opDescribeCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeClusterInput{} + } + + output = &DescribeClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeCluster API operation for Amazon SageMaker Service. +// +// Retrieves information of a SageMaker HyperPod cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation DescribeCluster for usage and error information. +// +// Returned Error Types: +// - ResourceNotFound +// Resource being access is not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeCluster +func (c *SageMaker) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { + req, out := c.DescribeClusterRequest(input) + return out, req.Send() +} + +// DescribeClusterWithContext is the same as DescribeCluster with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeCluster 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 *SageMaker) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { + req, out := c.DescribeClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeClusterNode = "DescribeClusterNode" + +// DescribeClusterNodeRequest generates a "aws/request.Request" representing the +// client's request for the DescribeClusterNode 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 DescribeClusterNode for more information on using the DescribeClusterNode +// 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 DescribeClusterNodeRequest method. +// req, resp := client.DescribeClusterNodeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeClusterNode +func (c *SageMaker) DescribeClusterNodeRequest(input *DescribeClusterNodeInput) (req *request.Request, output *DescribeClusterNodeOutput) { + op := &request.Operation{ + Name: opDescribeClusterNode, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeClusterNodeInput{} + } + + output = &DescribeClusterNodeOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeClusterNode API operation for Amazon SageMaker Service. +// +// Retrieves information of an instance (also called a node interchangeably) +// of a SageMaker HyperPod cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation DescribeClusterNode for usage and error information. +// +// Returned Error Types: +// - ResourceNotFound +// Resource being access is not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeClusterNode +func (c *SageMaker) DescribeClusterNode(input *DescribeClusterNodeInput) (*DescribeClusterNodeOutput, error) { + req, out := c.DescribeClusterNodeRequest(input) + return out, req.Send() +} + +// DescribeClusterNodeWithContext is the same as DescribeClusterNode with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeClusterNode 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 *SageMaker) DescribeClusterNodeWithContext(ctx aws.Context, input *DescribeClusterNodeInput, opts ...request.Option) (*DescribeClusterNodeOutput, error) { + req, out := c.DescribeClusterNodeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeCodeRepository = "DescribeCodeRepository" // DescribeCodeRepositoryRequest generates a "aws/request.Request" representing the @@ -11259,6 +11754,79 @@ return out, req.Send() } +const opDescribeInferenceComponent = "DescribeInferenceComponent" + +// DescribeInferenceComponentRequest generates a "aws/request.Request" representing the +// client's request for the DescribeInferenceComponent 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 DescribeInferenceComponent for more information on using the DescribeInferenceComponent +// 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 DescribeInferenceComponentRequest method. +// req, resp := client.DescribeInferenceComponentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeInferenceComponent +func (c *SageMaker) DescribeInferenceComponentRequest(input *DescribeInferenceComponentInput) (req *request.Request, output *DescribeInferenceComponentOutput) { + op := &request.Operation{ + Name: opDescribeInferenceComponent, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeInferenceComponentInput{} + } + + output = &DescribeInferenceComponentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeInferenceComponent API operation for Amazon SageMaker Service. +// +// Returns information about an inference component. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation DescribeInferenceComponent for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeInferenceComponent +func (c *SageMaker) DescribeInferenceComponent(input *DescribeInferenceComponentInput) (*DescribeInferenceComponentOutput, error) { + req, out := c.DescribeInferenceComponentRequest(input) + return out, req.Send() +} + +// DescribeInferenceComponentWithContext is the same as DescribeInferenceComponent with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeInferenceComponent 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 *SageMaker) DescribeInferenceComponentWithContext(ctx aws.Context, input *DescribeInferenceComponentInput, opts ...request.Option) (*DescribeInferenceComponentOutput, error) { + req, out := c.DescribeInferenceComponentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeInferenceExperiment = "DescribeInferenceExperiment" // DescribeInferenceExperimentRequest generates a "aws/request.Request" representing the @@ -12921,7 +13489,7 @@ // DescribeStudioLifecycleConfig API operation for Amazon SageMaker Service. // -// Describes the Studio Lifecycle Configuration. +// Describes the Amazon SageMaker Studio Lifecycle Configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -15557,6 +16125,272 @@ return p.Err() } +const opListClusterNodes = "ListClusterNodes" + +// ListClusterNodesRequest generates a "aws/request.Request" representing the +// client's request for the ListClusterNodes 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 ListClusterNodes for more information on using the ListClusterNodes +// 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 ListClusterNodesRequest method. +// req, resp := client.ListClusterNodesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListClusterNodes +func (c *SageMaker) ListClusterNodesRequest(input *ListClusterNodesInput) (req *request.Request, output *ListClusterNodesOutput) { + op := &request.Operation{ + Name: opListClusterNodes, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListClusterNodesInput{} + } + + output = &ListClusterNodesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListClusterNodes API operation for Amazon SageMaker Service. +// +// Retrieves the list of instances (also called nodes interchangeably) in a +// SageMaker HyperPod cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation ListClusterNodes for usage and error information. +// +// Returned Error Types: +// - ResourceNotFound +// Resource being access is not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListClusterNodes +func (c *SageMaker) ListClusterNodes(input *ListClusterNodesInput) (*ListClusterNodesOutput, error) { + req, out := c.ListClusterNodesRequest(input) + return out, req.Send() +} + +// ListClusterNodesWithContext is the same as ListClusterNodes with the addition of +// the ability to pass a context and additional request options. +// +// See ListClusterNodes 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 *SageMaker) ListClusterNodesWithContext(ctx aws.Context, input *ListClusterNodesInput, opts ...request.Option) (*ListClusterNodesOutput, error) { + req, out := c.ListClusterNodesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListClusterNodesPages iterates over the pages of a ListClusterNodes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListClusterNodes 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 ListClusterNodes operation. +// pageNum := 0 +// err := client.ListClusterNodesPages(params, +// func(page *sagemaker.ListClusterNodesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SageMaker) ListClusterNodesPages(input *ListClusterNodesInput, fn func(*ListClusterNodesOutput, bool) bool) error { + return c.ListClusterNodesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListClusterNodesPagesWithContext same as ListClusterNodesPages 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 *SageMaker) ListClusterNodesPagesWithContext(ctx aws.Context, input *ListClusterNodesInput, fn func(*ListClusterNodesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListClusterNodesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListClusterNodesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListClusterNodesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListClusters = "ListClusters" + +// ListClustersRequest generates a "aws/request.Request" representing the +// client's request for the ListClusters 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 ListClusters for more information on using the ListClusters +// 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 ListClustersRequest method. +// req, resp := client.ListClustersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListClusters +func (c *SageMaker) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { + op := &request.Operation{ + Name: opListClusters, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListClustersInput{} + } + + output = &ListClustersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListClusters API operation for Amazon SageMaker Service. +// +// Retrieves the list of SageMaker HyperPod clusters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation ListClusters for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListClusters +func (c *SageMaker) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { + req, out := c.ListClustersRequest(input) + return out, req.Send() +} + +// ListClustersWithContext is the same as ListClusters with the addition of +// the ability to pass a context and additional request options. +// +// See ListClusters 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 *SageMaker) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error) { + req, out := c.ListClustersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListClustersPages iterates over the pages of a ListClusters operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListClusters 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 ListClusters operation. +// pageNum := 0 +// err := client.ListClustersPages(params, +// func(page *sagemaker.ListClustersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SageMaker) ListClustersPages(input *ListClustersInput, fn func(*ListClustersOutput, bool) bool) error { + return c.ListClustersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListClustersPagesWithContext same as ListClustersPages 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 *SageMaker) ListClustersPagesWithContext(ctx aws.Context, input *ListClustersInput, fn func(*ListClustersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListClustersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListClustersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListClustersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListCodeRepositories = "ListCodeRepositories" // ListCodeRepositoriesRequest generates a "aws/request.Request" representing the @@ -18152,6 +18986,136 @@ return p.Err() } +const opListInferenceComponents = "ListInferenceComponents" + +// ListInferenceComponentsRequest generates a "aws/request.Request" representing the +// client's request for the ListInferenceComponents 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 ListInferenceComponents for more information on using the ListInferenceComponents +// 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 ListInferenceComponentsRequest method. +// req, resp := client.ListInferenceComponentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListInferenceComponents +func (c *SageMaker) ListInferenceComponentsRequest(input *ListInferenceComponentsInput) (req *request.Request, output *ListInferenceComponentsOutput) { + op := &request.Operation{ + Name: opListInferenceComponents, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListInferenceComponentsInput{} + } + + output = &ListInferenceComponentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListInferenceComponents API operation for Amazon SageMaker Service. +// +// Lists the inference components in your account and their properties. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation ListInferenceComponents for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListInferenceComponents +func (c *SageMaker) ListInferenceComponents(input *ListInferenceComponentsInput) (*ListInferenceComponentsOutput, error) { + req, out := c.ListInferenceComponentsRequest(input) + return out, req.Send() +} + +// ListInferenceComponentsWithContext is the same as ListInferenceComponents with the addition of +// the ability to pass a context and additional request options. +// +// See ListInferenceComponents 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 *SageMaker) ListInferenceComponentsWithContext(ctx aws.Context, input *ListInferenceComponentsInput, opts ...request.Option) (*ListInferenceComponentsOutput, error) { + req, out := c.ListInferenceComponentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListInferenceComponentsPages iterates over the pages of a ListInferenceComponents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListInferenceComponents 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 ListInferenceComponents operation. +// pageNum := 0 +// err := client.ListInferenceComponentsPages(params, +// func(page *sagemaker.ListInferenceComponentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SageMaker) ListInferenceComponentsPages(input *ListInferenceComponentsInput, fn func(*ListInferenceComponentsOutput, bool) bool) error { + return c.ListInferenceComponentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListInferenceComponentsPagesWithContext same as ListInferenceComponentsPages 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 *SageMaker) ListInferenceComponentsPagesWithContext(ctx aws.Context, input *ListInferenceComponentsInput, fn func(*ListInferenceComponentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListInferenceComponentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListInferenceComponentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListInferenceComponentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListInferenceExperiments = "ListInferenceExperiments" // ListInferenceExperimentsRequest generates a "aws/request.Request" representing the @@ -22282,7 +23246,8 @@ // ListStudioLifecycleConfigs API operation for Amazon SageMaker Service. // -// Lists the Studio Lifecycle Configurations in your Amazon Web Services Account. +// Lists the Amazon SageMaker Studio Lifecycle Configurations in your Amazon +// Web Services Account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -26297,6 +27262,93 @@ return out, req.Send() } +const opUpdateCluster = "UpdateCluster" + +// UpdateClusterRequest generates a "aws/request.Request" representing the +// client's request for the UpdateCluster 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 UpdateCluster for more information on using the UpdateCluster +// 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 UpdateClusterRequest method. +// req, resp := client.UpdateClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateCluster +func (c *SageMaker) UpdateClusterRequest(input *UpdateClusterInput) (req *request.Request, output *UpdateClusterOutput) { + op := &request.Operation{ + Name: opUpdateCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateClusterInput{} + } + + output = &UpdateClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateCluster API operation for Amazon SageMaker Service. +// +// Update a SageMaker HyperPod cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation UpdateCluster for usage and error information. +// +// Returned Error Types: +// +// - ResourceLimitExceeded +// You have exceeded an SageMaker resource limit. For example, you might have +// too many training jobs created. +// +// - ResourceNotFound +// Resource being access is not found. +// +// - ConflictException +// There was a conflict when you attempted to modify a SageMaker entity such +// as an Experiment or Artifact. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateCluster +func (c *SageMaker) UpdateCluster(input *UpdateClusterInput) (*UpdateClusterOutput, error) { + req, out := c.UpdateClusterRequest(input) + return out, req.Send() +} + +// UpdateClusterWithContext is the same as UpdateCluster with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateCluster 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 *SageMaker) UpdateClusterWithContext(ctx aws.Context, input *UpdateClusterInput, opts ...request.Option) (*UpdateClusterOutput, error) { + req, out := c.UpdateClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateCodeRepository = "UpdateCodeRepository" // UpdateCodeRepositoryRequest generates a "aws/request.Request" representing the @@ -27370,6 +28422,164 @@ return out, req.Send() } +const opUpdateInferenceComponent = "UpdateInferenceComponent" + +// UpdateInferenceComponentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateInferenceComponent 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 UpdateInferenceComponent for more information on using the UpdateInferenceComponent +// 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 UpdateInferenceComponentRequest method. +// req, resp := client.UpdateInferenceComponentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateInferenceComponent +func (c *SageMaker) UpdateInferenceComponentRequest(input *UpdateInferenceComponentInput) (req *request.Request, output *UpdateInferenceComponentOutput) { + op := &request.Operation{ + Name: opUpdateInferenceComponent, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateInferenceComponentInput{} + } + + output = &UpdateInferenceComponentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateInferenceComponent API operation for Amazon SageMaker Service. +// +// Updates an inference component. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation UpdateInferenceComponent for usage and error information. +// +// Returned Error Types: +// - ResourceLimitExceeded +// You have exceeded an SageMaker resource limit. For example, you might have +// too many training jobs created. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateInferenceComponent +func (c *SageMaker) UpdateInferenceComponent(input *UpdateInferenceComponentInput) (*UpdateInferenceComponentOutput, error) { + req, out := c.UpdateInferenceComponentRequest(input) + return out, req.Send() +} + +// UpdateInferenceComponentWithContext is the same as UpdateInferenceComponent with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateInferenceComponent 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 *SageMaker) UpdateInferenceComponentWithContext(ctx aws.Context, input *UpdateInferenceComponentInput, opts ...request.Option) (*UpdateInferenceComponentOutput, error) { + req, out := c.UpdateInferenceComponentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateInferenceComponentRuntimeConfig = "UpdateInferenceComponentRuntimeConfig" + +// UpdateInferenceComponentRuntimeConfigRequest generates a "aws/request.Request" representing the +// client's request for the UpdateInferenceComponentRuntimeConfig 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 UpdateInferenceComponentRuntimeConfig for more information on using the UpdateInferenceComponentRuntimeConfig +// 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 UpdateInferenceComponentRuntimeConfigRequest method. +// req, resp := client.UpdateInferenceComponentRuntimeConfigRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateInferenceComponentRuntimeConfig +func (c *SageMaker) UpdateInferenceComponentRuntimeConfigRequest(input *UpdateInferenceComponentRuntimeConfigInput) (req *request.Request, output *UpdateInferenceComponentRuntimeConfigOutput) { + op := &request.Operation{ + Name: opUpdateInferenceComponentRuntimeConfig, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateInferenceComponentRuntimeConfigInput{} + } + + output = &UpdateInferenceComponentRuntimeConfigOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateInferenceComponentRuntimeConfig API operation for Amazon SageMaker Service. +// +// Runtime settings for a model that is deployed with an inference component. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon SageMaker Service's +// API operation UpdateInferenceComponentRuntimeConfig for usage and error information. +// +// Returned Error Types: +// - ResourceLimitExceeded +// You have exceeded an SageMaker resource limit. For example, you might have +// too many training jobs created. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateInferenceComponentRuntimeConfig +func (c *SageMaker) UpdateInferenceComponentRuntimeConfig(input *UpdateInferenceComponentRuntimeConfigInput) (*UpdateInferenceComponentRuntimeConfigOutput, error) { + req, out := c.UpdateInferenceComponentRuntimeConfigRequest(input) + return out, req.Send() +} + +// UpdateInferenceComponentRuntimeConfigWithContext is the same as UpdateInferenceComponentRuntimeConfig with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateInferenceComponentRuntimeConfig 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 *SageMaker) UpdateInferenceComponentRuntimeConfigWithContext(ctx aws.Context, input *UpdateInferenceComponentRuntimeConfigInput, opts ...request.Option) (*UpdateInferenceComponentRuntimeConfigOutput, error) { + req, out := c.UpdateInferenceComponentRuntimeConfigRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateInferenceExperiment = "UpdateInferenceExperiment" // UpdateInferenceExperimentRequest generates a "aws/request.Request" representing the @@ -29302,6 +30512,80 @@ return s } +// A data source used for training or inference that is in addition to the input +// dataset or model data. +type AdditionalS3DataSource struct { + _ struct{} `type:"structure"` + + // The type of compression used for an additional data source used in inference + // or training. Specify None if your additional data source is not compressed. + CompressionType *string `type:"string" enum:"CompressionType"` + + // The data type of the additional data source that you specify for use in inference + // or training. + // + // S3DataType is a required field + S3DataType *string `type:"string" required:"true" enum:"AdditionalS3DataSourceDataType"` + + // The uniform resource identifier (URI) used to identify an additional data + // source used in inference or training. + // + // S3Uri is a required field + S3Uri *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdditionalS3DataSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdditionalS3DataSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AdditionalS3DataSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AdditionalS3DataSource"} + if s.S3DataType == nil { + invalidParams.Add(request.NewErrParamRequired("S3DataType")) + } + if s.S3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("S3Uri")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCompressionType sets the CompressionType field's value. +func (s *AdditionalS3DataSource) SetCompressionType(v string) *AdditionalS3DataSource { + s.CompressionType = &v + return s +} + +// SetS3DataType sets the S3DataType field's value. +func (s *AdditionalS3DataSource) SetS3DataType(v string) *AdditionalS3DataSource { + s.S3DataType = &v + return s +} + +// SetS3Uri sets the S3Uri field's value. +func (s *AdditionalS3DataSource) SetS3Uri(v string) *AdditionalS3DataSource { + s.S3Uri = &v + return s +} + // Edge Manager agent version. type AgentVersion struct { _ struct{} `type:"structure"` @@ -30646,6 +31930,10 @@ // The domain ID. DomainId *string `type:"string"` + // Specifies the ARN's of a SageMaker image and SageMaker image version, and + // the instance type that the version runs on. + ResourceSpec *ResourceSpec `type:"structure"` + // The name of the space. SpaceName *string `type:"string"` @@ -30698,6 +31986,12 @@ return s } +// SetResourceSpec sets the ResourceSpec field's value. +func (s *AppDetails) SetResourceSpec(v *ResourceSpec) *AppDetails { + s.ResourceSpec = v + return s +} + // SetSpaceName sets the SpaceName field's value. func (s *AppDetails) SetSpaceName(v string) *AppDetails { s.SpaceName = &v @@ -30729,6 +32023,10 @@ // When the AppImageConfig was created. CreationTime *time.Time `type:"timestamp"` + // The configuration for the file system and the runtime, such as the environment + // variables and entry point. + JupyterLabAppImageConfig *JupyterLabAppImageConfig `type:"structure"` + // The configuration for the file system and kernels in the SageMaker image. KernelGatewayImageConfig *KernelGatewayImageConfig `type:"structure"` @@ -30772,6 +32070,12 @@ return s } +// SetJupyterLabAppImageConfig sets the JupyterLabAppImageConfig field's value. +func (s *AppImageConfigDetails) SetJupyterLabAppImageConfig(v *JupyterLabAppImageConfig) *AppImageConfigDetails { + s.JupyterLabAppImageConfig = v + return s +} + // SetKernelGatewayImageConfig sets the KernelGatewayImageConfig field's value. func (s *AppImageConfigDetails) SetKernelGatewayImageConfig(v *KernelGatewayImageConfig) *AppImageConfigDetails { s.KernelGatewayImageConfig = v @@ -32367,6 +33671,9 @@ // // * For time-series forecasting: text/csv;header=present or x-application/vnd.amazon+parquet. // The default value is text/csv;header=present. + // + // * For text generation (LLMs fine-tuning): text/csv;header=present or x-application/vnd.amazon+parquet. + // The default value is text/csv;header=present. ContentType *string `type:"string"` // The data source for an AutoML channel (Required). @@ -32446,9 +33753,9 @@ // The maximum number of times a training job is allowed to run. // - // For text and image classification, as well as time-series forecasting problem - // types, the supported value is 1. For tabular problem types, the maximum value - // is 750. + // For text and image classification, time-series forecasting, as well as text + // generation (LLMs fine-tuning) problem types, the supported value is 1. For + // tabular problem types, the maximum value is 750. MaxCandidates *int64 `min:"1" type:"integer"` // The maximum time, in seconds, that each training job executed inside hyperparameter @@ -32459,6 +33766,9 @@ // // For job V2s (jobs created by calling CreateAutoMLJobV2), this field controls // the runtime of the job candidate. + // + // For TextGenerationJobConfig (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextClassificationJobConfig.html) + // problem types, the maximum time defaults to 72 hours (259200 seconds). MaxRuntimePerTrainingJobInSeconds *int64 `min:"1" type:"integer"` } @@ -32631,7 +33941,8 @@ return s } -// Specifies a metric to minimize or maximize as the objective of a job. +// Specifies a metric to minimize or maximize as the objective of an AutoML +// job. type AutoMLJobObjective struct { _ struct{} `type:"structure"` @@ -32640,18 +33951,38 @@ // iteratively to optimize its performance based on the feedback provided by // the objective metric when evaluating the model on the validation dataset. // - // For the list of all available metrics supported by Autopilot, see Autopilot - // metrics (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics). - // - // If you do not specify a metric explicitly, the default behavior is to automatically - // use: + // The list of available metrics supported by Autopilot and the default metric + // applied when you do not specify a metric name explicitly depend on the problem + // type. // - // * For tabular problem types: Regression: MSE. Binary classification: F1. + // * For tabular problem types: List of available metrics: Regression: InferenceLatency, + // MAE, MSE, R2, RMSE Binary classification: Accuracy, AUC, BalancedAccuracy, + // F1, InferenceLatency, LogLoss, Precision, Recall Multiclass classification: + // Accuracy, BalancedAccuracy, F1macro, InferenceLatency, LogLoss, PrecisionMacro, + // RecallMacro For a description of each metric, see Autopilot metrics for + // classification and regression (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics). + // Default objective metrics: Regression: MSE. Binary classification: F1. // Multiclass classification: Accuracy. // - // * For image or text classification problem types: Accuracy - // - // * For time-series forecasting problem types: AverageWeightedQuantileLoss + // * For image or text classification problem types: List of available metrics: + // Accuracy For a description of each metric, see Autopilot metrics for text + // and image classification (https://docs.aws.amazon.com/sagemaker/latest/dg/text-classification-data-format-and-metric.html). + // Default objective metrics: Accuracy + // + // * For time-series forecasting problem types: List of available metrics: + // RMSE, wQL, Average wQL, MASE, MAPE, WAPE For a description of each metric, + // see Autopilot metrics for time-series forecasting (https://docs.aws.amazon.com/sagemaker/latest/dg/timeseries-objective-metric.html). + // Default objective metrics: AverageWeightedQuantileLoss + // + // * For text generation problem types (LLMs fine-tuning): Fine-tuning language + // models in Autopilot does not require setting the AutoMLJobObjective field. + // Autopilot fine-tunes LLMs without requiring multiple candidates to be + // trained and evaluated. Instead, using your dataset, Autopilot directly + // fine-tunes your target model to enhance a default objective metric, the + // cross-entropy loss. After fine-tuning a language model, you can evaluate + // the quality of its generated text using different metrics. For a list + // of the available metrics, see Metrics for fine-tuning LLMs in Autopilot + // (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-llms-finetuning-metrics.html). // // MetricName is a required field MetricName *string `type:"string" required:"true" enum:"AutoMLMetricEnum"` @@ -32939,15 +34270,23 @@ // problem type. ImageClassificationJobConfig *ImageClassificationJobConfig `type:"structure"` - // Settings used to configure an AutoML job V2 for a tabular problem type (regression, - // classification). + // Settings used to configure an AutoML job V2 for the tabular problem type + // (regression, classification). TabularJobConfig *TabularJobConfig `type:"structure"` // Settings used to configure an AutoML job V2 for the text classification problem // type. TextClassificationJobConfig *TextClassificationJobConfig `type:"structure"` - // Settings used to configure an AutoML job V2 for a time-series forecasting + // Settings used to configure an AutoML job V2 for the text generation (LLMs + // fine-tuning) problem type. + // + // The text generation models that support fine-tuning in Autopilot are currently + // accessible exclusively in regions supported by Canvas. Refer to the documentation + // of Canvas for the full list of its supported Regions (https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html). + TextGenerationJobConfig *TextGenerationJobConfig `type:"structure"` + + // Settings used to configure an AutoML job V2 for the time-series forecasting // problem type. TimeSeriesForecastingJobConfig *TimeSeriesForecastingJobConfig `type:"structure"` } @@ -32988,6 +34327,11 @@ invalidParams.AddNested("TextClassificationJobConfig", err.(request.ErrInvalidParams)) } } + if s.TextGenerationJobConfig != nil { + if err := s.TextGenerationJobConfig.Validate(); err != nil { + invalidParams.AddNested("TextGenerationJobConfig", err.(request.ErrInvalidParams)) + } + } if s.TimeSeriesForecastingJobConfig != nil { if err := s.TimeSeriesForecastingJobConfig.Validate(); err != nil { invalidParams.AddNested("TimeSeriesForecastingJobConfig", err.(request.ErrInvalidParams)) @@ -33018,18 +34362,28 @@ return s } +// SetTextGenerationJobConfig sets the TextGenerationJobConfig field's value. +func (s *AutoMLProblemTypeConfig) SetTextGenerationJobConfig(v *TextGenerationJobConfig) *AutoMLProblemTypeConfig { + s.TextGenerationJobConfig = v + return s +} + // SetTimeSeriesForecastingJobConfig sets the TimeSeriesForecastingJobConfig field's value. func (s *AutoMLProblemTypeConfig) SetTimeSeriesForecastingJobConfig(v *TimeSeriesForecastingJobConfig) *AutoMLProblemTypeConfig { s.TimeSeriesForecastingJobConfig = v return s } -// The resolved attributes specific to the problem type of an AutoML job V2. +// Stores resolved attributes specific to the problem type of an AutoML job +// V2. type AutoMLProblemTypeResolvedAttributes struct { _ struct{} `type:"structure"` - // Defines the resolved attributes for the TABULAR problem type. + // The resolved attributes for the tabular problem type. TabularResolvedAttributes *TabularResolvedAttributes `type:"structure"` + + // The resolved attributes for the text generation problem type. + TextGenerationResolvedAttributes *TextGenerationResolvedAttributes `type:"structure"` } // String returns the string representation. @@ -33056,11 +34410,18 @@ return s } +// SetTextGenerationResolvedAttributes sets the TextGenerationResolvedAttributes field's value. +func (s *AutoMLProblemTypeResolvedAttributes) SetTextGenerationResolvedAttributes(v *TextGenerationResolvedAttributes) *AutoMLProblemTypeResolvedAttributes { + s.TextGenerationResolvedAttributes = v + return s +} + // The resolved attributes used to configure an AutoML job V2. type AutoMLResolvedAttributes struct { _ struct{} `type:"structure"` - // Specifies a metric to minimize or maximize as the objective of a job. + // Specifies a metric to minimize or maximize as the objective of an AutoML + // job. AutoMLJobObjective *AutoMLJobObjective `type:"structure"` // Defines the resolved attributes specific to a problem type. @@ -34397,13 +35758,19 @@ type CanvasAppSettings struct { _ struct{} `type:"structure"` + // The model deployment settings for the SageMaker Canvas application. + DirectDeploySettings *DirectDeploySettings `type:"structure"` + // The settings for connecting to an external data source with OAuth. IdentityProviderOAuthSettings []*IdentityProviderOAuthSetting `type:"list"` + // The settings for document querying. + KendraSettings *KendraSettings `type:"structure"` + // The model registry settings for the SageMaker Canvas application. ModelRegisterSettings *ModelRegisterSettings `type:"structure"` - // Time series forecast settings for the Canvas application. + // Time series forecast settings for the SageMaker Canvas application. TimeSeriesForecastingSettings *TimeSeriesForecastingSettings `type:"structure"` // The workspace settings for the SageMaker Canvas application. @@ -34458,12 +35825,24 @@ return nil } +// SetDirectDeploySettings sets the DirectDeploySettings field's value. +func (s *CanvasAppSettings) SetDirectDeploySettings(v *DirectDeploySettings) *CanvasAppSettings { + s.DirectDeploySettings = v + return s +} + // SetIdentityProviderOAuthSettings sets the IdentityProviderOAuthSettings field's value. func (s *CanvasAppSettings) SetIdentityProviderOAuthSettings(v []*IdentityProviderOAuthSetting) *CanvasAppSettings { s.IdentityProviderOAuthSettings = v return s } +// SetKendraSettings sets the KendraSettings field's value. +func (s *CanvasAppSettings) SetKendraSettings(v *KendraSettings) *CanvasAppSettings { + s.KendraSettings = v + return s +} + // SetModelRegisterSettings sets the ModelRegisterSettings field's value. func (s *CanvasAppSettings) SetModelRegisterSettings(v *ModelRegisterSettings) *CanvasAppSettings { s.ModelRegisterSettings = v @@ -34559,12 +35938,13 @@ } // Configuration specifying how to treat different headers. If no headers are -// specified SageMaker will by default base64 encode when capturing the data. +// specified Amazon SageMaker will by default base64 encode when capturing the +// data. type CaptureContentTypeHeader struct { _ struct{} `type:"structure"` - // The list of all content type headers that SageMaker will treat as CSV and - // capture accordingly. + // The list of all content type headers that Amazon SageMaker will treat as + // CSV and capture accordingly. CsvContentTypes []*string `min:"1" type:"list"` // The list of all content type headers that SageMaker will treat as JSON and @@ -35829,6 +37209,635 @@ return s } +// Details of an instance group in a SageMaker HyperPod cluster. +type ClusterInstanceGroupDetails struct { + _ struct{} `type:"structure"` + + // The number of instances that are currently in the instance group of a SageMaker + // HyperPod cluster. + CurrentCount *int64 `type:"integer"` + + // The execution role for the instance group to assume. + ExecutionRole *string `min:"20" type:"string"` + + // The name of the instance group of a SageMaker HyperPod cluster. + InstanceGroupName *string `min:"1" type:"string"` + + // The instance type of the instance group of a SageMaker HyperPod cluster. + InstanceType *string `type:"string" enum:"ClusterInstanceType"` + + // Details of LifeCycle configuration for the instance group. + LifeCycleConfig *ClusterLifeCycleConfig `type:"structure"` + + // The number of instances you specified to add to the instance group of a SageMaker + // HyperPod cluster. + TargetCount *int64 `min:"1" type:"integer"` + + // The number you specified to TreadsPerCore in CreateCluster for enabling or + // disabling multithreading. For instance types that support multithreading, + // you can specify 1 for disabling multithreading and 2 for enabling multithreading. + // For more information, see the reference table of CPU cores and threads per + // CPU core per instance type (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cpu-options-supported-instances-values.html) + // in the Amazon Elastic Compute Cloud User Guide. + ThreadsPerCore *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterInstanceGroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterInstanceGroupDetails) GoString() string { + return s.String() +} + +// SetCurrentCount sets the CurrentCount field's value. +func (s *ClusterInstanceGroupDetails) SetCurrentCount(v int64) *ClusterInstanceGroupDetails { + s.CurrentCount = &v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *ClusterInstanceGroupDetails) SetExecutionRole(v string) *ClusterInstanceGroupDetails { + s.ExecutionRole = &v + return s +} + +// SetInstanceGroupName sets the InstanceGroupName field's value. +func (s *ClusterInstanceGroupDetails) SetInstanceGroupName(v string) *ClusterInstanceGroupDetails { + s.InstanceGroupName = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *ClusterInstanceGroupDetails) SetInstanceType(v string) *ClusterInstanceGroupDetails { + s.InstanceType = &v + return s +} + +// SetLifeCycleConfig sets the LifeCycleConfig field's value. +func (s *ClusterInstanceGroupDetails) SetLifeCycleConfig(v *ClusterLifeCycleConfig) *ClusterInstanceGroupDetails { + s.LifeCycleConfig = v + return s +} + +// SetTargetCount sets the TargetCount field's value. +func (s *ClusterInstanceGroupDetails) SetTargetCount(v int64) *ClusterInstanceGroupDetails { + s.TargetCount = &v + return s +} + +// SetThreadsPerCore sets the ThreadsPerCore field's value. +func (s *ClusterInstanceGroupDetails) SetThreadsPerCore(v int64) *ClusterInstanceGroupDetails { + s.ThreadsPerCore = &v + return s +} + +// The specifications of an instance group that you need to define. +type ClusterInstanceGroupSpecification struct { + _ struct{} `type:"structure"` + + // Specifies an IAM execution role to be assumed by the instance group. + // + // ExecutionRole is a required field + ExecutionRole *string `min:"20" type:"string" required:"true"` + + // Specifies the number of instances to add to the instance group of a SageMaker + // HyperPod cluster. + // + // InstanceCount is a required field + InstanceCount *int64 `min:"1" type:"integer" required:"true"` + + // Specifies the name of the instance group. + // + // InstanceGroupName is a required field + InstanceGroupName *string `min:"1" type:"string" required:"true"` + + // Specifies the instance type of the instance group. + // + // InstanceType is a required field + InstanceType *string `type:"string" required:"true" enum:"ClusterInstanceType"` + + // Specifies the LifeCycle configuration for the instance group. + // + // LifeCycleConfig is a required field + LifeCycleConfig *ClusterLifeCycleConfig `type:"structure" required:"true"` + + // Specifies the value for Threads per core. For instance types that support + // multithreading, you can specify 1 for disabling multithreading and 2 for + // enabling multithreading. For instance types that doesn't support multithreading, + // specify 1. For more information, see the reference table of CPU cores and + // threads per CPU core per instance type (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cpu-options-supported-instances-values.html) + // in the Amazon Elastic Compute Cloud User Guide. + ThreadsPerCore *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterInstanceGroupSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterInstanceGroupSpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ClusterInstanceGroupSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ClusterInstanceGroupSpecification"} + if s.ExecutionRole == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionRole")) + } + if s.ExecutionRole != nil && len(*s.ExecutionRole) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionRole", 20)) + } + if s.InstanceCount == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceCount")) + } + if s.InstanceCount != nil && *s.InstanceCount < 1 { + invalidParams.Add(request.NewErrParamMinValue("InstanceCount", 1)) + } + if s.InstanceGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceGroupName")) + } + if s.InstanceGroupName != nil && len(*s.InstanceGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceGroupName", 1)) + } + if s.InstanceType == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceType")) + } + if s.LifeCycleConfig == nil { + invalidParams.Add(request.NewErrParamRequired("LifeCycleConfig")) + } + if s.ThreadsPerCore != nil && *s.ThreadsPerCore < 1 { + invalidParams.Add(request.NewErrParamMinValue("ThreadsPerCore", 1)) + } + if s.LifeCycleConfig != nil { + if err := s.LifeCycleConfig.Validate(); err != nil { + invalidParams.AddNested("LifeCycleConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *ClusterInstanceGroupSpecification) SetExecutionRole(v string) *ClusterInstanceGroupSpecification { + s.ExecutionRole = &v + return s +} + +// SetInstanceCount sets the InstanceCount field's value. +func (s *ClusterInstanceGroupSpecification) SetInstanceCount(v int64) *ClusterInstanceGroupSpecification { + s.InstanceCount = &v + return s +} + +// SetInstanceGroupName sets the InstanceGroupName field's value. +func (s *ClusterInstanceGroupSpecification) SetInstanceGroupName(v string) *ClusterInstanceGroupSpecification { + s.InstanceGroupName = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *ClusterInstanceGroupSpecification) SetInstanceType(v string) *ClusterInstanceGroupSpecification { + s.InstanceType = &v + return s +} + +// SetLifeCycleConfig sets the LifeCycleConfig field's value. +func (s *ClusterInstanceGroupSpecification) SetLifeCycleConfig(v *ClusterLifeCycleConfig) *ClusterInstanceGroupSpecification { + s.LifeCycleConfig = v + return s +} + +// SetThreadsPerCore sets the ThreadsPerCore field's value. +func (s *ClusterInstanceGroupSpecification) SetThreadsPerCore(v int64) *ClusterInstanceGroupSpecification { + s.ThreadsPerCore = &v + return s +} + +// Details of an instance in a SageMaker HyperPod cluster. +type ClusterInstanceStatusDetails struct { + _ struct{} `type:"structure"` + + // The message from an instance in a SageMaker HyperPod cluster. + Message *string `type:"string"` + + // The status of an instance in a SageMaker HyperPod cluster. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"ClusterInstanceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterInstanceStatusDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterInstanceStatusDetails) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ClusterInstanceStatusDetails) SetMessage(v string) *ClusterInstanceStatusDetails { + s.Message = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ClusterInstanceStatusDetails) SetStatus(v string) *ClusterInstanceStatusDetails { + s.Status = &v + return s +} + +// The LifeCycle configuration for a SageMaker HyperPod cluster. +type ClusterLifeCycleConfig struct { + _ struct{} `type:"structure"` + + // The directory of the LifeCycle script under SourceS3Uri. This LifeCycle script + // runs during cluster creation. + // + // OnCreate is a required field + OnCreate *string `min:"1" type:"string" required:"true"` + + // An Amazon S3 bucket path where your LifeCycle scripts are stored. + // + // SourceS3Uri is a required field + SourceS3Uri *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterLifeCycleConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterLifeCycleConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ClusterLifeCycleConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ClusterLifeCycleConfig"} + if s.OnCreate == nil { + invalidParams.Add(request.NewErrParamRequired("OnCreate")) + } + if s.OnCreate != nil && len(*s.OnCreate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OnCreate", 1)) + } + if s.SourceS3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("SourceS3Uri")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOnCreate sets the OnCreate field's value. +func (s *ClusterLifeCycleConfig) SetOnCreate(v string) *ClusterLifeCycleConfig { + s.OnCreate = &v + return s +} + +// SetSourceS3Uri sets the SourceS3Uri field's value. +func (s *ClusterLifeCycleConfig) SetSourceS3Uri(v string) *ClusterLifeCycleConfig { + s.SourceS3Uri = &v + return s +} + +// Details of an instance (also called a node interchangeably) in a SageMaker +// HyperPod cluster. +type ClusterNodeDetails struct { + _ struct{} `type:"structure"` + + // The instance group name in which the instance is. + InstanceGroupName *string `min:"1" type:"string"` + + // The ID of the instance. + InstanceId *string `type:"string"` + + // The status of the instance. + InstanceStatus *ClusterInstanceStatusDetails `type:"structure"` + + // The type of the instance. + InstanceType *string `type:"string" enum:"ClusterInstanceType"` + + // The time when the instance is launched. + LaunchTime *time.Time `type:"timestamp"` + + // The LifeCycle configuration applied to the instance. + LifeCycleConfig *ClusterLifeCycleConfig `type:"structure"` + + // The number of threads per CPU core you specified under CreateCluster. + ThreadsPerCore *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterNodeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterNodeDetails) GoString() string { + return s.String() +} + +// SetInstanceGroupName sets the InstanceGroupName field's value. +func (s *ClusterNodeDetails) SetInstanceGroupName(v string) *ClusterNodeDetails { + s.InstanceGroupName = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ClusterNodeDetails) SetInstanceId(v string) *ClusterNodeDetails { + s.InstanceId = &v + return s +} + +// SetInstanceStatus sets the InstanceStatus field's value. +func (s *ClusterNodeDetails) SetInstanceStatus(v *ClusterInstanceStatusDetails) *ClusterNodeDetails { + s.InstanceStatus = v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *ClusterNodeDetails) SetInstanceType(v string) *ClusterNodeDetails { + s.InstanceType = &v + return s +} + +// SetLaunchTime sets the LaunchTime field's value. +func (s *ClusterNodeDetails) SetLaunchTime(v time.Time) *ClusterNodeDetails { + s.LaunchTime = &v + return s +} + +// SetLifeCycleConfig sets the LifeCycleConfig field's value. +func (s *ClusterNodeDetails) SetLifeCycleConfig(v *ClusterLifeCycleConfig) *ClusterNodeDetails { + s.LifeCycleConfig = v + return s +} + +// SetThreadsPerCore sets the ThreadsPerCore field's value. +func (s *ClusterNodeDetails) SetThreadsPerCore(v int64) *ClusterNodeDetails { + s.ThreadsPerCore = &v + return s +} + +// Lists a summary of the properties of an instance (also called a node interchangeably) +// of a SageMaker HyperPod cluster. +type ClusterNodeSummary struct { + _ struct{} `type:"structure"` + + // The name of the instance group in which the instance is. + // + // InstanceGroupName is a required field + InstanceGroupName *string `min:"1" type:"string" required:"true"` + + // The ID of the instance. + // + // InstanceId is a required field + InstanceId *string `type:"string" required:"true"` + + // The status of the instance. + // + // InstanceStatus is a required field + InstanceStatus *ClusterInstanceStatusDetails `type:"structure" required:"true"` + + // The type of the instance. + // + // InstanceType is a required field + InstanceType *string `type:"string" required:"true" enum:"ClusterInstanceType"` + + // The time when the instance is launched. + // + // LaunchTime is a required field + LaunchTime *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterNodeSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterNodeSummary) GoString() string { + return s.String() +} + +// SetInstanceGroupName sets the InstanceGroupName field's value. +func (s *ClusterNodeSummary) SetInstanceGroupName(v string) *ClusterNodeSummary { + s.InstanceGroupName = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ClusterNodeSummary) SetInstanceId(v string) *ClusterNodeSummary { + s.InstanceId = &v + return s +} + +// SetInstanceStatus sets the InstanceStatus field's value. +func (s *ClusterNodeSummary) SetInstanceStatus(v *ClusterInstanceStatusDetails) *ClusterNodeSummary { + s.InstanceStatus = v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *ClusterNodeSummary) SetInstanceType(v string) *ClusterNodeSummary { + s.InstanceType = &v + return s +} + +// SetLaunchTime sets the LaunchTime field's value. +func (s *ClusterNodeSummary) SetLaunchTime(v time.Time) *ClusterNodeSummary { + s.LaunchTime = &v + return s +} + +// Lists a summary of the properties of a SageMaker HyperPod cluster. +type ClusterSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster. + // + // ClusterArn is a required field + ClusterArn *string `type:"string" required:"true"` + + // The name of the SageMaker HyperPod cluster. + // + // ClusterName is a required field + ClusterName *string `min:"1" type:"string" required:"true"` + + // The status of the SageMaker HyperPod cluster. + // + // ClusterStatus is a required field + ClusterStatus *string `type:"string" required:"true" enum:"ClusterStatus"` + + // The time when the SageMaker HyperPod cluster is created. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClusterSummary) GoString() string { + return s.String() +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *ClusterSummary) SetClusterArn(v string) *ClusterSummary { + s.ClusterArn = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *ClusterSummary) SetClusterName(v string) *ClusterSummary { + s.ClusterName = &v + return s +} + +// SetClusterStatus sets the ClusterStatus field's value. +func (s *ClusterSummary) SetClusterStatus(v string) *ClusterSummary { + s.ClusterStatus = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *ClusterSummary) SetCreationTime(v time.Time) *ClusterSummary { + s.CreationTime = &v + return s +} + +// The Code Editor application settings. +// +// For more information about Code Editor, see Get started with Code Editor +// in Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/code-editor.html). +type CodeEditorAppSettings struct { + _ struct{} `type:"structure"` + + // Specifies the ARN's of a SageMaker image and SageMaker image version, and + // the instance type that the version runs on. + DefaultResourceSpec *ResourceSpec `type:"structure"` + + // The Amazon Resource Name (ARN) of the Code Editor application lifecycle configuration. + LifecycleConfigArns []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodeEditorAppSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodeEditorAppSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CodeEditorAppSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CodeEditorAppSettings"} + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefaultResourceSpec sets the DefaultResourceSpec field's value. +func (s *CodeEditorAppSettings) SetDefaultResourceSpec(v *ResourceSpec) *CodeEditorAppSettings { + s.DefaultResourceSpec = v + return s +} + +// SetLifecycleConfigArns sets the LifecycleConfigArns field's value. +func (s *CodeEditorAppSettings) SetLifecycleConfigArns(v []*string) *CodeEditorAppSettings { + s.LifecycleConfigArns = v + return s +} + // A Git repository that SageMaker automatically displays to users for cloning // in the JupyterServer application. type CodeRepository struct { @@ -36115,6 +38124,55 @@ return s } +// Configuration for your collection. +type CollectionConfig struct { + _ struct{} `type:"structure"` + + // Configuration for your vector collection type. + // + // * Dimension: The number of elements in your vector. + VectorConfig *VectorConfig `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 CollectionConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollectionConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CollectionConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CollectionConfig"} + if s.VectorConfig != nil { + if err := s.VectorConfig.Validate(); err != nil { + invalidParams.AddNested("VectorConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVectorConfig sets the VectorConfig field's value. +func (s *CollectionConfig) SetVectorConfig(v *VectorConfig) *CollectionConfig { + s.VectorConfig = v + return s +} + // Configuration information for the Amazon SageMaker Debugger output tensor // collections. type CollectionConfiguration struct { @@ -36402,6 +38460,56 @@ return s.RespMetadata.RequestID } +// The configuration used to run the application image container. +type ContainerConfig struct { + _ struct{} `type:"structure"` + + // The arguments for the container when you're running the application. + ContainerArguments []*string `type:"list"` + + // The entrypoint used to run the application in the container. + ContainerEntrypoint []*string `type:"list"` + + // The environment variables to set in the container + ContainerEnvironmentVariables map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContainerConfig) GoString() string { + return s.String() +} + +// SetContainerArguments sets the ContainerArguments field's value. +func (s *ContainerConfig) SetContainerArguments(v []*string) *ContainerConfig { + s.ContainerArguments = v + return s +} + +// SetContainerEntrypoint sets the ContainerEntrypoint field's value. +func (s *ContainerConfig) SetContainerEntrypoint(v []*string) *ContainerConfig { + s.ContainerEntrypoint = v + return s +} + +// SetContainerEnvironmentVariables sets the ContainerEnvironmentVariables field's value. +func (s *ContainerConfig) SetContainerEnvironmentVariables(v map[string]*string) *ContainerConfig { + s.ContainerEnvironmentVariables = v + return s +} + // Describes the container, as part of model definition. type ContainerDefinition struct { _ struct{} `type:"structure"` @@ -37323,6 +39431,11 @@ // AppImageConfigName is a required field AppImageConfigName *string `type:"string" required:"true"` + // The JupyterLabAppImageConfig. You can only specify one image kernel in the + // AppImageConfig API. This kernel is shown to users before the image starts. + // After the image runs, all kernels are visible in JupyterLab. + JupyterLabAppImageConfig *JupyterLabAppImageConfig `type:"structure"` + // The KernelGatewayImageConfig. You can only specify one image kernel in the // AppImageConfig API. This kernel will be shown to users before the image starts. // Once the image runs, all kernels are visible in JupyterLab. @@ -37384,6 +39497,12 @@ return s } +// SetJupyterLabAppImageConfig sets the JupyterLabAppImageConfig field's value. +func (s *CreateAppImageConfigInput) SetJupyterLabAppImageConfig(v *JupyterLabAppImageConfig) *CreateAppImageConfigInput { + s.JupyterLabAppImageConfig = v + return s +} + // SetKernelGatewayImageConfig sets the KernelGatewayImageConfig field's value. func (s *CreateAppImageConfigInput) SetKernelGatewayImageConfig(v *KernelGatewayImageConfig) *CreateAppImageConfigInput { s.KernelGatewayImageConfig = v @@ -37497,6 +39616,11 @@ if s.DomainId == nil { invalidParams.Add(request.NewErrParamRequired("DomainId")) } + if s.ResourceSpec != nil { + if err := s.ResourceSpec.Validate(); err != nil { + invalidParams.AddNested("ResourceSpec", err.(request.ErrInvalidParams)) + } + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -37986,6 +40110,8 @@ // // * For time-series forecasting: S3Prefix. // + // * For text generation (LLMs fine-tuning): S3Prefix. + // // AutoMLJobInputDataConfig is a required field AutoMLJobInputDataConfig []*AutoMLJobChannel `min:"1" type:"list" required:"true"` @@ -37999,9 +40125,19 @@ // not specified, the default objective metric depends on the problem type. // For the list of default values per problem type, see AutoMLJobObjective (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html). // - // For tabular problem types, you must either provide both the AutoMLJobObjective - // and indicate the type of supervised learning problem in AutoMLProblemTypeConfig - // (TabularJobConfig.ProblemType), or none at all. + // * For tabular problem types: You must either provide both the AutoMLJobObjective + // and indicate the type of supervised learning problem in AutoMLProblemTypeConfig + // (TabularJobConfig.ProblemType), or none at all. + // + // * For text generation problem types (LLMs fine-tuning): Fine-tuning language + // models in Autopilot does not require setting the AutoMLJobObjective field. + // Autopilot fine-tunes LLMs without requiring multiple candidates to be + // trained and evaluated. Instead, using your dataset, Autopilot directly + // fine-tunes your target model to enhance a default objective metric, the + // cross-entropy loss. After fine-tuning a language model, you can evaluate + // the quality of its generated text using different metrics. For a list + // of the available metrics, see Metrics for fine-tuning LLMs in Autopilot + // (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-llms-finetuning-metrics.html). AutoMLJobObjective *AutoMLJobObjective `type:"structure"` // Defines the configuration settings of one of the supported problem types. @@ -38231,6 +40367,155 @@ return s } +type CreateClusterInput struct { + _ struct{} `type:"structure"` + + // The name for the new SageMaker HyperPod cluster. + // + // ClusterName is a required field + ClusterName *string `min:"1" type:"string" required:"true"` + + // The instance groups to be created in the SageMaker HyperPod cluster. + // + // InstanceGroups is a required field + InstanceGroups []*ClusterInstanceGroupSpecification `min:"1" type:"list" required:"true"` + + // Custom tags for managing the SageMaker HyperPod cluster as an Amazon Web + // Services resource. You can add tags to your cluster in the same way you add + // them in other Amazon Web Services services that support tagging. To learn + // more about tagging Amazon Web Services resources in general, see Tagging + // Amazon Web Services Resources User Guide (https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html). + Tags []*Tag `type:"list"` + + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). + VpcConfig *VpcConfig `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 CreateClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.InstanceGroups == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceGroups")) + } + if s.InstanceGroups != nil && len(s.InstanceGroups) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceGroups", 1)) + } + if s.InstanceGroups != nil { + for i, v := range s.InstanceGroups { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + if s.VpcConfig != nil { + if err := s.VpcConfig.Validate(); err != nil { + invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *CreateClusterInput) SetClusterName(v string) *CreateClusterInput { + s.ClusterName = &v + return s +} + +// SetInstanceGroups sets the InstanceGroups field's value. +func (s *CreateClusterInput) SetInstanceGroups(v []*ClusterInstanceGroupSpecification) *CreateClusterInput { + s.InstanceGroups = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateClusterInput) SetTags(v []*Tag) *CreateClusterInput { + s.Tags = v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *CreateClusterInput) SetVpcConfig(v *VpcConfig) *CreateClusterInput { + s.VpcConfig = v + return s +} + +type CreateClusterOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the cluster. + // + // ClusterArn is a required field + ClusterArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateClusterOutput) GoString() string { + return s.String() +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *CreateClusterOutput) SetClusterArn(v string) *CreateClusterOutput { + s.ClusterArn = &v + return s +} + type CreateCodeRepositoryInput struct { _ struct{} `type:"structure"` @@ -39131,7 +41416,7 @@ // * PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon // SageMaker, which allows direct internet access // - // * VpcOnly - All Studio traffic is through the specified VPC and subnets + // * VpcOnly - All traffic is through the specified VPC and subnets AppNetworkAccessType *string `type:"string" enum:"AppNetworkAccessType"` // The entity that creates and manages the required security groups for inter-app @@ -39177,7 +41462,7 @@ // control, specify a customer managed key. KmsKeyId *string `type:"string"` - // The VPC subnets that Studio uses for communication. + // The VPC subnets that the domain uses for communication. // // SubnetIds is a required field SubnetIds []*string `min:"1" type:"list" required:"true"` @@ -39190,7 +41475,8 @@ // Domain launches. Tags []*Tag `type:"list"` - // The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. + // The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for + // communication. // // VpcId is a required field VpcId *string `type:"string" required:"true"` @@ -39836,6 +42122,11 @@ // Configuration to control how SageMaker captures inference data. DataCaptureConfig *DataCaptureConfig `type:"structure"` + // Sets whether all model containers deployed to the endpoint are isolated. + // If they are, no inbound or outbound network calls can be made to or from + // the model containers. + EnableNetworkIsolation *bool `type:"boolean"` + // The name of the endpoint configuration. You specify this name in a CreateEndpoint // (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html) // request. @@ -39843,6 +42134,14 @@ // EndpointConfigName is a required field EndpointConfigName *string `type:"string" required:"true"` + // The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + // to perform actions on your behalf. For more information, see SageMaker Roles + // (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + // + // To be able to pass this role to Amazon SageMaker, the caller of this action + // must have the iam:PassRole permission. + ExecutionRoleArn *string `min:"20" type:"string"` + // A member of CreateEndpointConfig that enables explainers. ExplainerConfig *ExplainerConfig `type:"structure"` @@ -39898,6 +42197,12 @@ // environment. For more information, see Tagging Amazon Web Services Resources // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). Tags []*Tag `type:"list"` + + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). + VpcConfig *VpcConfig `type:"structure"` } // String returns the string representation. @@ -39924,6 +42229,9 @@ if s.EndpointConfigName == nil { invalidParams.Add(request.NewErrParamRequired("EndpointConfigName")) } + if s.ExecutionRoleArn != nil && len(*s.ExecutionRoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleArn", 20)) + } if s.ProductionVariants == nil { invalidParams.Add(request.NewErrParamRequired("ProductionVariants")) } @@ -39978,6 +42286,11 @@ } } } + if s.VpcConfig != nil { + if err := s.VpcConfig.Validate(); err != nil { + invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -39997,12 +42310,24 @@ return s } +// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value. +func (s *CreateEndpointConfigInput) SetEnableNetworkIsolation(v bool) *CreateEndpointConfigInput { + s.EnableNetworkIsolation = &v + return s +} + // SetEndpointConfigName sets the EndpointConfigName field's value. func (s *CreateEndpointConfigInput) SetEndpointConfigName(v string) *CreateEndpointConfigInput { s.EndpointConfigName = &v return s } +// SetExecutionRoleArn sets the ExecutionRoleArn field's value. +func (s *CreateEndpointConfigInput) SetExecutionRoleArn(v string) *CreateEndpointConfigInput { + s.ExecutionRoleArn = &v + return s +} + // SetExplainerConfig sets the ExplainerConfig field's value. func (s *CreateEndpointConfigInput) SetExplainerConfig(v *ExplainerConfig) *CreateEndpointConfigInput { s.ExplainerConfig = v @@ -40033,6 +42358,12 @@ return s } +// SetVpcConfig sets the VpcConfig field's value. +func (s *CreateEndpointConfigInput) SetVpcConfig(v *VpcConfig) *CreateEndpointConfigInput { + s.VpcConfig = v + return s +} + type CreateEndpointConfigOutput struct { _ struct{} `type:"structure"` @@ -41655,6 +43986,173 @@ return s } +type CreateInferenceComponentInput struct { + _ struct{} `type:"structure"` + + // The name of an existing endpoint where you host the inference component. + // + // EndpointName is a required field + EndpointName *string `type:"string" required:"true"` + + // A unique name to assign to the inference component. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` + + // Runtime settings for a model that is deployed with an inference component. + // + // RuntimeConfig is a required field + RuntimeConfig *InferenceComponentRuntimeConfig `type:"structure" required:"true"` + + // Details about the resources to deploy with this inference component, including + // the model, container, and compute resources. + // + // Specification is a required field + Specification *InferenceComponentSpecification `type:"structure" required:"true"` + + // A list of key-value pairs associated with the model. For more information, + // see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // in the Amazon Web Services General Reference. + Tags []*Tag `type:"list"` + + // The name of an existing production variant where you host the inference component. + // + // VariantName is a required field + VariantName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInferenceComponentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInferenceComponentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateInferenceComponentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateInferenceComponentInput"} + if s.EndpointName == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointName")) + } + if s.InferenceComponentName == nil { + invalidParams.Add(request.NewErrParamRequired("InferenceComponentName")) + } + if s.RuntimeConfig == nil { + invalidParams.Add(request.NewErrParamRequired("RuntimeConfig")) + } + if s.Specification == nil { + invalidParams.Add(request.NewErrParamRequired("Specification")) + } + if s.VariantName == nil { + invalidParams.Add(request.NewErrParamRequired("VariantName")) + } + if s.RuntimeConfig != nil { + if err := s.RuntimeConfig.Validate(); err != nil { + invalidParams.AddNested("RuntimeConfig", err.(request.ErrInvalidParams)) + } + } + if s.Specification != nil { + if err := s.Specification.Validate(); err != nil { + invalidParams.AddNested("Specification", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndpointName sets the EndpointName field's value. +func (s *CreateInferenceComponentInput) SetEndpointName(v string) *CreateInferenceComponentInput { + s.EndpointName = &v + return s +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *CreateInferenceComponentInput) SetInferenceComponentName(v string) *CreateInferenceComponentInput { + s.InferenceComponentName = &v + return s +} + +// SetRuntimeConfig sets the RuntimeConfig field's value. +func (s *CreateInferenceComponentInput) SetRuntimeConfig(v *InferenceComponentRuntimeConfig) *CreateInferenceComponentInput { + s.RuntimeConfig = v + return s +} + +// SetSpecification sets the Specification field's value. +func (s *CreateInferenceComponentInput) SetSpecification(v *InferenceComponentSpecification) *CreateInferenceComponentInput { + s.Specification = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateInferenceComponentInput) SetTags(v []*Tag) *CreateInferenceComponentInput { + s.Tags = v + return s +} + +// SetVariantName sets the VariantName field's value. +func (s *CreateInferenceComponentInput) SetVariantName(v string) *CreateInferenceComponentInput { + s.VariantName = &v + return s +} + +type CreateInferenceComponentOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the inference component. + // + // InferenceComponentArn is a required field + InferenceComponentArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInferenceComponentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInferenceComponentOutput) GoString() string { + return s.String() +} + +// SetInferenceComponentArn sets the InferenceComponentArn field's value. +func (s *CreateInferenceComponentOutput) SetInferenceComponentArn(v string) *CreateInferenceComponentOutput { + s.InferenceComponentArn = &v + return s +} + type CreateInferenceExperimentInput struct { _ struct{} `type:"structure"` @@ -43242,9 +45740,7 @@ // // To be able to pass this role to SageMaker, the caller of this API must have // the iam:PassRole permission. - // - // ExecutionRoleArn is a required field - ExecutionRoleArn *string `min:"20" type:"string" required:"true"` + ExecutionRoleArn *string `min:"20" type:"string"` // Specifies details of how containers in a multi-container endpoint are called. InferenceExecutionConfig *InferenceExecutionConfig `type:"structure"` @@ -43296,9 +45792,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreateModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateModelInput"} - if s.ExecutionRoleArn == nil { - invalidParams.Add(request.NewErrParamRequired("ExecutionRoleArn")) - } if s.ExecutionRoleArn != nil && len(*s.ExecutionRoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleArn", 20)) } @@ -44870,6 +47363,25 @@ // to 300. ExpiresInSeconds *int64 `min:"5" type:"integer"` + // The landing page that the user is directed to when accessing the presigned + // URL. Using this value, users can access Studio or Studio Classic, even if + // it is not the default experience for the domain. The supported values are: + // + // * studio::relative/path: Directs users to the relative path in Studio. + // + // * app:JupyterServer:relative/path: Directs users to the relative path + // in the Studio Classic application. + // + // * app:JupyterLab:relative/path: Directs users to the relative path in + // the JupyterLab application. + // + // * app:RStudioServerPro:relative/path: Directs users to the relative path + // in the RStudio application. + // + // * app:Canvas:relative/path: Directs users to the relative path in the + // Canvas application. + LandingUri *string `type:"string"` + // The session expiration duration in seconds. This value defaults to 43200. SessionExpirationDurationInSeconds *int64 `min:"1800" type:"integer"` @@ -44934,6 +47446,12 @@ return s } +// SetLandingUri sets the LandingUri field's value. +func (s *CreatePresignedDomainUrlInput) SetLandingUri(v string) *CreatePresignedDomainUrlInput { + s.LandingUri = &v + return s +} + // SetSessionExpirationDurationInSeconds sets the SessionExpirationDurationInSeconds field's value. func (s *CreatePresignedDomainUrlInput) SetSessionExpirationDurationInSeconds(v int64) *CreatePresignedDomainUrlInput { s.SessionExpirationDurationInSeconds = &v @@ -45482,6 +48000,12 @@ // DomainId is a required field DomainId *string `type:"string" required:"true"` + // A collection of ownership settings. + OwnershipSettings *OwnershipSettings `type:"structure"` + + // The name of the space that appears in the SageMaker Studio UI. + SpaceDisplayName *string `type:"string"` + // The name of the space. // // SpaceName is a required field @@ -45490,6 +48014,9 @@ // A collection of space settings. SpaceSettings *SpaceSettings `type:"structure"` + // A collection of space sharing settings. + SpaceSharingSettings *SpaceSharingSettings `type:"structure"` + // Tags to associated with the space. Each tag consists of a key and an optional // value. Tag keys must be unique for each resource. Tags are searchable using // the Search API. @@ -45523,11 +48050,21 @@ if s.SpaceName == nil { invalidParams.Add(request.NewErrParamRequired("SpaceName")) } + if s.OwnershipSettings != nil { + if err := s.OwnershipSettings.Validate(); err != nil { + invalidParams.AddNested("OwnershipSettings", err.(request.ErrInvalidParams)) + } + } if s.SpaceSettings != nil { if err := s.SpaceSettings.Validate(); err != nil { invalidParams.AddNested("SpaceSettings", err.(request.ErrInvalidParams)) } } + if s.SpaceSharingSettings != nil { + if err := s.SpaceSharingSettings.Validate(); err != nil { + invalidParams.AddNested("SpaceSharingSettings", err.(request.ErrInvalidParams)) + } + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -45551,6 +48088,18 @@ return s } +// SetOwnershipSettings sets the OwnershipSettings field's value. +func (s *CreateSpaceInput) SetOwnershipSettings(v *OwnershipSettings) *CreateSpaceInput { + s.OwnershipSettings = v + return s +} + +// SetSpaceDisplayName sets the SpaceDisplayName field's value. +func (s *CreateSpaceInput) SetSpaceDisplayName(v string) *CreateSpaceInput { + s.SpaceDisplayName = &v + return s +} + // SetSpaceName sets the SpaceName field's value. func (s *CreateSpaceInput) SetSpaceName(v string) *CreateSpaceInput { s.SpaceName = &v @@ -45563,6 +48112,12 @@ return s } +// SetSpaceSharingSettings sets the SpaceSharingSettings field's value. +func (s *CreateSpaceInput) SetSpaceSharingSettings(v *SpaceSharingSettings) *CreateSpaceInput { + s.SpaceSharingSettings = v + return s +} + // SetTags sets the Tags field's value. func (s *CreateSpaceInput) SetTags(v []*Tag) *CreateSpaceInput { s.Tags = v @@ -45608,13 +48163,13 @@ // StudioLifecycleConfigAppType is a required field StudioLifecycleConfigAppType *string `type:"string" required:"true" enum:"StudioLifecycleConfigAppType"` - // The content of your Studio Lifecycle Configuration script. This content must - // be base64 encoded. + // The content of your Amazon SageMaker Studio Lifecycle Configuration script. + // This content must be base64 encoded. // // StudioLifecycleConfigContent is a required field StudioLifecycleConfigContent *string `min:"1" type:"string" required:"true"` - // The name of the Studio Lifecycle Configuration to create. + // The name of the Amazon SageMaker Studio Lifecycle Configuration to create. // // StudioLifecycleConfigName is a required field StudioLifecycleConfigName *string `type:"string" required:"true"` @@ -45814,6 +48369,10 @@ // and return an exception error. HyperParameters map[string]*string `type:"map"` + // Contains information about the infrastructure health check configuration + // for the training job. + InfraCheckConfig *InfraCheckConfig `type:"structure"` + // An array of Channel objects. Each channel is a named input source. InputDataConfig // describes the input data and its location. // @@ -46119,6 +48678,12 @@ return s } +// SetInfraCheckConfig sets the InfraCheckConfig field's value. +func (s *CreateTrainingJobInput) SetInfraCheckConfig(v *InfraCheckConfig) *CreateTrainingJobInput { + s.InfraCheckConfig = v + return s +} + // SetInputDataConfig sets the InputDataConfig field's value. func (s *CreateTrainingJobInput) SetInputDataConfig(v []*Channel) *CreateTrainingJobInput { s.InputDataConfig = v @@ -47388,6 +49953,104 @@ return s } +// A file system, created by you, that you assign to a user profile or space +// for an Amazon SageMaker Domain. Permitted users can access this file system +// in Amazon SageMaker Studio. +type CustomFileSystem struct { + _ struct{} `type:"structure"` + + // A custom file system in Amazon EFS. + EFSFileSystem *EFSFileSystem `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 CustomFileSystem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomFileSystem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomFileSystem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomFileSystem"} + if s.EFSFileSystem != nil { + if err := s.EFSFileSystem.Validate(); err != nil { + invalidParams.AddNested("EFSFileSystem", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEFSFileSystem sets the EFSFileSystem field's value. +func (s *CustomFileSystem) SetEFSFileSystem(v *EFSFileSystem) *CustomFileSystem { + s.EFSFileSystem = v + return s +} + +// The settings for assigning a custom file system to a user profile or space +// for an Amazon SageMaker Domain. Permitted users can access this file system +// in Amazon SageMaker Studio. +type CustomFileSystemConfig struct { + _ struct{} `type:"structure"` + + // The settings for a custom Amazon EFS file system. + EFSFileSystemConfig *EFSFileSystemConfig `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 CustomFileSystemConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomFileSystemConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomFileSystemConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomFileSystemConfig"} + if s.EFSFileSystemConfig != nil { + if err := s.EFSFileSystemConfig.Validate(); err != nil { + invalidParams.AddNested("EFSFileSystemConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEFSFileSystemConfig sets the EFSFileSystemConfig field's value. +func (s *CustomFileSystemConfig) SetEFSFileSystemConfig(v *EFSFileSystemConfig) *CustomFileSystemConfig { + s.EFSFileSystemConfig = v + return s +} + // A custom SageMaker image. For more information, see Bring your own SageMaker // image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). type CustomImage struct { @@ -47462,6 +50125,73 @@ return s } +// Details about the POSIX identity that is used for file system operations. +type CustomPosixUserConfig struct { + _ struct{} `type:"structure"` + + // The POSIX group ID. + // + // Gid is a required field + Gid *int64 `min:"1001" type:"long" required:"true"` + + // The POSIX user ID. + // + // Uid is a required field + Uid *int64 `min:"10000" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomPosixUserConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomPosixUserConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomPosixUserConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomPosixUserConfig"} + if s.Gid == nil { + invalidParams.Add(request.NewErrParamRequired("Gid")) + } + if s.Gid != nil && *s.Gid < 1001 { + invalidParams.Add(request.NewErrParamMinValue("Gid", 1001)) + } + if s.Uid == nil { + invalidParams.Add(request.NewErrParamRequired("Uid")) + } + if s.Uid != nil && *s.Uid < 10000 { + invalidParams.Add(request.NewErrParamMinValue("Uid", 10000)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGid sets the Gid field's value. +func (s *CustomPosixUserConfig) SetGid(v int64) *CustomPosixUserConfig { + s.Gid = &v + return s +} + +// SetUid sets the Uid field's value. +func (s *CustomPosixUserConfig) SetUid(v int64) *CustomPosixUserConfig { + s.Uid = &v + return s +} + // A customized metric. type CustomizedMetricSpecification struct { _ struct{} `type:"structure"` @@ -47540,9 +50270,8 @@ // InitialSamplingPercentage is a required field InitialSamplingPercentage *int64 `type:"integer" required:"true"` - // The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service - // key that SageMaker uses to encrypt the captured data at rest using Amazon - // S3 server-side encryption. + // The Amazon Resource Name (ARN) of an Key Management Service key that SageMaker + // uses to encrypt the captured data at rest using Amazon S3 server-side encryption. // // The KmsKeyId can be any of the following formats: // @@ -47921,9 +50650,9 @@ PostAnalyticsProcessorSourceUri *string `type:"string"` // An Amazon S3 URI to a script that is called per row prior to running analysis. - // It can base64 decode the payload and convert it into a flatted json so that - // the built-in container can use the converted data. Applicable only for the - // built-in (first party) containers. + // It can base64 decode the payload and convert it into a flattened JSON so + // that the built-in container can use the converted data. Applicable only for + // the built-in (first party) containers. RecordPreprocessorSourceUri *string `type:"string"` } @@ -48558,6 +51287,74 @@ return s } +// A collection of default EBS storage settings that applies to private spaces +// created within a domain or user profile. +type DefaultEbsStorageSettings struct { + _ struct{} `type:"structure"` + + // The default size of the EBS storage volume for a private space. + // + // DefaultEbsVolumeSizeInGb is a required field + DefaultEbsVolumeSizeInGb *int64 `min:"5" type:"integer" required:"true"` + + // The maximum size of the EBS storage volume for a private space. + // + // MaximumEbsVolumeSizeInGb is a required field + MaximumEbsVolumeSizeInGb *int64 `min:"5" type:"integer" 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 DefaultEbsStorageSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DefaultEbsStorageSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DefaultEbsStorageSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DefaultEbsStorageSettings"} + if s.DefaultEbsVolumeSizeInGb == nil { + invalidParams.Add(request.NewErrParamRequired("DefaultEbsVolumeSizeInGb")) + } + if s.DefaultEbsVolumeSizeInGb != nil && *s.DefaultEbsVolumeSizeInGb < 5 { + invalidParams.Add(request.NewErrParamMinValue("DefaultEbsVolumeSizeInGb", 5)) + } + if s.MaximumEbsVolumeSizeInGb == nil { + invalidParams.Add(request.NewErrParamRequired("MaximumEbsVolumeSizeInGb")) + } + if s.MaximumEbsVolumeSizeInGb != nil && *s.MaximumEbsVolumeSizeInGb < 5 { + invalidParams.Add(request.NewErrParamMinValue("MaximumEbsVolumeSizeInGb", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefaultEbsVolumeSizeInGb sets the DefaultEbsVolumeSizeInGb field's value. +func (s *DefaultEbsStorageSettings) SetDefaultEbsVolumeSizeInGb(v int64) *DefaultEbsStorageSettings { + s.DefaultEbsVolumeSizeInGb = &v + return s +} + +// SetMaximumEbsVolumeSizeInGb sets the MaximumEbsVolumeSizeInGb field's value. +func (s *DefaultEbsStorageSettings) SetMaximumEbsVolumeSizeInGb(v int64) *DefaultEbsStorageSettings { + s.MaximumEbsVolumeSizeInGb = &v + return s +} + // A collection of settings that apply to spaces created in the Domain. type DefaultSpaceSettings struct { _ struct{} `type:"structure"` @@ -48641,6 +51438,53 @@ return s } +// The default storage settings for a private space. +type DefaultSpaceStorageSettings struct { + _ struct{} `type:"structure"` + + // The default EBS storage settings for a private space. + DefaultEbsStorageSettings *DefaultEbsStorageSettings `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 DefaultSpaceStorageSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DefaultSpaceStorageSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DefaultSpaceStorageSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DefaultSpaceStorageSettings"} + if s.DefaultEbsStorageSettings != nil { + if err := s.DefaultEbsStorageSettings.Validate(); err != nil { + invalidParams.AddNested("DefaultEbsStorageSettings", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefaultEbsStorageSettings sets the DefaultEbsStorageSettings field's value. +func (s *DefaultSpaceStorageSettings) SetDefaultEbsStorageSettings(v *DefaultEbsStorageSettings) *DefaultSpaceStorageSettings { + s.DefaultEbsStorageSettings = v + return s +} + type DeleteActionInput struct { _ struct{} `type:"structure"` @@ -49161,6 +52005,86 @@ return s } +type DeleteClusterInput struct { + _ struct{} `type:"structure"` + + // The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod + // cluster to delete. + // + // ClusterName is a required field + ClusterName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteClusterInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *DeleteClusterInput) SetClusterName(v string) *DeleteClusterInput { + s.ClusterName = &v + return s +} + +type DeleteClusterOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster to delete. + // + // ClusterArn is a required field + ClusterArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteClusterOutput) GoString() string { + return s.String() +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *DeleteClusterOutput) SetClusterArn(v string) *DeleteClusterOutput { + s.ClusterArn = &v + return s +} + type DeleteCodeRepositoryInput struct { _ struct{} `type:"structure"` @@ -50467,6 +53391,74 @@ return s.String() } +type DeleteInferenceComponentInput struct { + _ struct{} `type:"structure"` + + // The name of the inference component to delete. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteInferenceComponentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteInferenceComponentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteInferenceComponentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteInferenceComponentInput"} + if s.InferenceComponentName == nil { + invalidParams.Add(request.NewErrParamRequired("InferenceComponentName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *DeleteInferenceComponentInput) SetInferenceComponentName(v string) *DeleteInferenceComponentInput { + s.InferenceComponentName = &v + return s +} + +type DeleteInferenceComponentOutput 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 DeleteInferenceComponentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteInferenceComponentOutput) GoString() string { + return s.String() +} + type DeleteInferenceExperimentInput struct { _ struct{} `type:"structure"` @@ -51573,7 +54565,7 @@ type DeleteStudioLifecycleConfigInput struct { _ struct{} `type:"structure"` - // The name of the Studio Lifecycle Configuration to delete. + // The name of the Amazon SageMaker Studio Lifecycle Configuration to delete. // // StudioLifecycleConfigName is a required field StudioLifecycleConfigName *string `type:"string" required:"true"` @@ -53008,6 +56000,9 @@ // When the AppImageConfig was created. CreationTime *time.Time `type:"timestamp"` + // The configuration of the JupyterLab app. + JupyterLabAppImageConfig *JupyterLabAppImageConfig `type:"structure"` + // The configuration of a KernelGateway app. KernelGatewayImageConfig *KernelGatewayImageConfig `type:"structure"` @@ -53051,6 +56046,12 @@ return s } +// SetJupyterLabAppImageConfig sets the JupyterLabAppImageConfig field's value. +func (s *DescribeAppImageConfigOutput) SetJupyterLabAppImageConfig(v *JupyterLabAppImageConfig) *DescribeAppImageConfigOutput { + s.JupyterLabAppImageConfig = v + return s +} + // SetKernelGatewayImageConfig sets the KernelGatewayImageConfig field's value. func (s *DescribeAppImageConfigOutput) SetKernelGatewayImageConfig(v *KernelGatewayImageConfig) *DescribeAppImageConfigOutput { s.KernelGatewayImageConfig = v @@ -54037,6 +57038,244 @@ return s } +type DescribeClusterInput struct { + _ struct{} `type:"structure"` + + // The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod + // cluster. + // + // ClusterName is a required field + ClusterName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *DescribeClusterInput) SetClusterName(v string) *DescribeClusterInput { + s.ClusterName = &v + return s +} + +type DescribeClusterNodeInput struct { + _ struct{} `type:"structure"` + + // The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod + // cluster in which the instance is. + // + // ClusterName is a required field + ClusterName *string `type:"string" required:"true"` + + // The ID of the instance. + // + // NodeId is a required field + NodeId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeClusterNodeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeClusterNodeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeClusterNodeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeClusterNodeInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.NodeId == nil { + invalidParams.Add(request.NewErrParamRequired("NodeId")) + } + if s.NodeId != nil && len(*s.NodeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NodeId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *DescribeClusterNodeInput) SetClusterName(v string) *DescribeClusterNodeInput { + s.ClusterName = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *DescribeClusterNodeInput) SetNodeId(v string) *DescribeClusterNodeInput { + s.NodeId = &v + return s +} + +type DescribeClusterNodeOutput struct { + _ struct{} `type:"structure"` + + // The details of the instance. + // + // NodeDetails is a required field + NodeDetails *ClusterNodeDetails `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 DescribeClusterNodeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeClusterNodeOutput) GoString() string { + return s.String() +} + +// SetNodeDetails sets the NodeDetails field's value. +func (s *DescribeClusterNodeOutput) SetNodeDetails(v *ClusterNodeDetails) *DescribeClusterNodeOutput { + s.NodeDetails = v + return s +} + +type DescribeClusterOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the SageMaker HyperPod cluster. + // + // ClusterArn is a required field + ClusterArn *string `type:"string" required:"true"` + + // The name of the SageMaker HyperPod cluster. + ClusterName *string `min:"1" type:"string"` + + // The status of the SageMaker HyperPod cluster. + // + // ClusterStatus is a required field + ClusterStatus *string `type:"string" required:"true" enum:"ClusterStatus"` + + // The time when the SageMaker Cluster is created. + CreationTime *time.Time `type:"timestamp"` + + // The failure message of the SageMaker HyperPod cluster. + FailureMessage *string `type:"string"` + + // The instance groups of the SageMaker HyperPod cluster. + // + // InstanceGroups is a required field + InstanceGroups []*ClusterInstanceGroupDetails `type:"list" required:"true"` + + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). + VpcConfig *VpcConfig `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 DescribeClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeClusterOutput) GoString() string { + return s.String() +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *DescribeClusterOutput) SetClusterArn(v string) *DescribeClusterOutput { + s.ClusterArn = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *DescribeClusterOutput) SetClusterName(v string) *DescribeClusterOutput { + s.ClusterName = &v + return s +} + +// SetClusterStatus sets the ClusterStatus field's value. +func (s *DescribeClusterOutput) SetClusterStatus(v string) *DescribeClusterOutput { + s.ClusterStatus = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *DescribeClusterOutput) SetCreationTime(v time.Time) *DescribeClusterOutput { + s.CreationTime = &v + return s +} + +// SetFailureMessage sets the FailureMessage field's value. +func (s *DescribeClusterOutput) SetFailureMessage(v string) *DescribeClusterOutput { + s.FailureMessage = &v + return s +} + +// SetInstanceGroups sets the InstanceGroups field's value. +func (s *DescribeClusterOutput) SetInstanceGroups(v []*ClusterInstanceGroupDetails) *DescribeClusterOutput { + s.InstanceGroups = v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *DescribeClusterOutput) SetVpcConfig(v *VpcConfig) *DescribeClusterOutput { + s.VpcConfig = v + return s +} + type DescribeCodeRepositoryInput struct { _ struct{} `type:"structure"` @@ -55213,7 +58452,7 @@ // * PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon // SageMaker, which allows direct internet access // - // * VpcOnly - All Studio traffic is through the specified VPC and subnets + // * VpcOnly - All traffic is through the specified VPC and subnets AppNetworkAccessType *string `type:"string" enum:"AppNetworkAccessType"` // The entity that creates and manages the required security groups for inter-app @@ -55269,19 +58508,24 @@ // apps and the RStudioServerPro app. SecurityGroupIdForDomainBoundary *string `type:"string"` + // The ARN of the application managed by SageMaker in IAM Identity Center. This + // value is only returned for domains created after September 19, 2023. + SingleSignOnApplicationArn *string `type:"string"` + // The IAM Identity Center managed application instance ID. SingleSignOnManagedApplicationInstanceId *string `type:"string"` // The status. Status *string `type:"string" enum:"DomainStatus"` - // The VPC subnets that Studio uses for communication. + // The VPC subnets that the domain uses for communication. SubnetIds []*string `min:"1" type:"list"` // The domain's URL. Url *string `type:"string"` - // The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. + // The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for + // communication. VpcId *string `type:"string"` } @@ -55399,6 +58643,12 @@ return s } +// SetSingleSignOnApplicationArn sets the SingleSignOnApplicationArn field's value. +func (s *DescribeDomainOutput) SetSingleSignOnApplicationArn(v string) *DescribeDomainOutput { + s.SingleSignOnApplicationArn = &v + return s +} + // SetSingleSignOnManagedApplicationInstanceId sets the SingleSignOnManagedApplicationInstanceId field's value. func (s *DescribeDomainOutput) SetSingleSignOnManagedApplicationInstanceId(v string) *DescribeDomainOutput { s.SingleSignOnManagedApplicationInstanceId = &v @@ -55905,6 +59155,11 @@ // Configuration to control how SageMaker captures inference data. DataCaptureConfig *DataCaptureConfig `type:"structure"` + // Indicates whether all model containers deployed to the endpoint are isolated. + // If they are, no inbound or outbound network calls can be made to or from + // the model containers. + EnableNetworkIsolation *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the endpoint configuration. // // EndpointConfigArn is a required field @@ -55915,6 +59170,10 @@ // EndpointConfigName is a required field EndpointConfigName *string `type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the IAM role that you assigned to the endpoint + // configuration. + ExecutionRoleArn *string `min:"20" type:"string"` + // The configuration parameters for an explainer. ExplainerConfig *ExplainerConfig `type:"structure"` @@ -55932,6 +59191,12 @@ // host at this endpoint in shadow mode with production traffic replicated from // the model specified on ProductionVariants. ShadowProductionVariants []*ProductionVariant `min:"1" type:"list"` + + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). + VpcConfig *VpcConfig `type:"structure"` } // String returns the string representation. @@ -55970,6 +59235,12 @@ return s } +// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value. +func (s *DescribeEndpointConfigOutput) SetEnableNetworkIsolation(v bool) *DescribeEndpointConfigOutput { + s.EnableNetworkIsolation = &v + return s +} + // SetEndpointConfigArn sets the EndpointConfigArn field's value. func (s *DescribeEndpointConfigOutput) SetEndpointConfigArn(v string) *DescribeEndpointConfigOutput { s.EndpointConfigArn = &v @@ -55982,6 +59253,12 @@ return s } +// SetExecutionRoleArn sets the ExecutionRoleArn field's value. +func (s *DescribeEndpointConfigOutput) SetExecutionRoleArn(v string) *DescribeEndpointConfigOutput { + s.ExecutionRoleArn = &v + return s +} + // SetExplainerConfig sets the ExplainerConfig field's value. func (s *DescribeEndpointConfigOutput) SetExplainerConfig(v *ExplainerConfig) *DescribeEndpointConfigOutput { s.ExplainerConfig = v @@ -56006,6 +59283,12 @@ return s } +// SetVpcConfig sets the VpcConfig field's value. +func (s *DescribeEndpointConfigOutput) SetVpcConfig(v *VpcConfig) *DescribeEndpointConfigOutput { + s.VpcConfig = v + return s +} + type DescribeEndpointInput struct { _ struct{} `type:"structure"` @@ -58285,6 +61568,186 @@ return s } +type DescribeInferenceComponentInput struct { + _ struct{} `type:"structure"` + + // The name of the inference component. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInferenceComponentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInferenceComponentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeInferenceComponentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeInferenceComponentInput"} + if s.InferenceComponentName == nil { + invalidParams.Add(request.NewErrParamRequired("InferenceComponentName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *DescribeInferenceComponentInput) SetInferenceComponentName(v string) *DescribeInferenceComponentInput { + s.InferenceComponentName = &v + return s +} + +type DescribeInferenceComponentOutput struct { + _ struct{} `type:"structure"` + + // The time when the inference component was created. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) of the endpoint that hosts the inference component. + // + // EndpointArn is a required field + EndpointArn *string `min:"20" type:"string" required:"true"` + + // The name of the endpoint that hosts the inference component. + // + // EndpointName is a required field + EndpointName *string `type:"string" required:"true"` + + // If the inference component status is Failed, the reason for the failure. + FailureReason *string `type:"string"` + + // The Amazon Resource Name (ARN) of the inference component. + // + // InferenceComponentArn is a required field + InferenceComponentArn *string `min:"20" type:"string" required:"true"` + + // The name of the inference component. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` + + // The status of the inference component. + InferenceComponentStatus *string `type:"string" enum:"InferenceComponentStatus"` + + // The time when the inference component was last updated. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `type:"timestamp" required:"true"` + + // Details about the runtime settings for the model that is deployed with the + // inference component. + RuntimeConfig *InferenceComponentRuntimeConfigSummary `type:"structure"` + + // Details about the resources that are deployed with this inference component. + Specification *InferenceComponentSpecificationSummary `type:"structure"` + + // The name of the production variant that hosts the inference component. + VariantName *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 DescribeInferenceComponentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInferenceComponentOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *DescribeInferenceComponentOutput) SetCreationTime(v time.Time) *DescribeInferenceComponentOutput { + s.CreationTime = &v + return s +} + +// SetEndpointArn sets the EndpointArn field's value. +func (s *DescribeInferenceComponentOutput) SetEndpointArn(v string) *DescribeInferenceComponentOutput { + s.EndpointArn = &v + return s +} + +// SetEndpointName sets the EndpointName field's value. +func (s *DescribeInferenceComponentOutput) SetEndpointName(v string) *DescribeInferenceComponentOutput { + s.EndpointName = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *DescribeInferenceComponentOutput) SetFailureReason(v string) *DescribeInferenceComponentOutput { + s.FailureReason = &v + return s +} + +// SetInferenceComponentArn sets the InferenceComponentArn field's value. +func (s *DescribeInferenceComponentOutput) SetInferenceComponentArn(v string) *DescribeInferenceComponentOutput { + s.InferenceComponentArn = &v + return s +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *DescribeInferenceComponentOutput) SetInferenceComponentName(v string) *DescribeInferenceComponentOutput { + s.InferenceComponentName = &v + return s +} + +// SetInferenceComponentStatus sets the InferenceComponentStatus field's value. +func (s *DescribeInferenceComponentOutput) SetInferenceComponentStatus(v string) *DescribeInferenceComponentOutput { + s.InferenceComponentStatus = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *DescribeInferenceComponentOutput) SetLastModifiedTime(v time.Time) *DescribeInferenceComponentOutput { + s.LastModifiedTime = &v + return s +} + +// SetRuntimeConfig sets the RuntimeConfig field's value. +func (s *DescribeInferenceComponentOutput) SetRuntimeConfig(v *InferenceComponentRuntimeConfigSummary) *DescribeInferenceComponentOutput { + s.RuntimeConfig = v + return s +} + +// SetSpecification sets the Specification field's value. +func (s *DescribeInferenceComponentOutput) SetSpecification(v *InferenceComponentSpecificationSummary) *DescribeInferenceComponentOutput { + s.Specification = v + return s +} + +// SetVariantName sets the VariantName field's value. +func (s *DescribeInferenceComponentOutput) SetVariantName(v string) *DescribeInferenceComponentOutput { + s.VariantName = &v + return s +} + type DescribeInferenceExperimentInput struct { _ struct{} `type:"structure"` @@ -59310,9 +62773,9 @@ // Networking options for a model bias job. NetworkConfig *MonitoringNetworkConfig `type:"structure"` - // The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access - // Management (IAM) role that has read permission to the input data location - // and write permission to the output data location in Amazon S3. + // The Amazon Resource Name (ARN) of the IAM role that has read permission to + // the input data location and write permission to the output data location + // in Amazon S3. // // RoleArn is a required field RoleArn *string `min:"20" type:"string" required:"true"` @@ -59908,9 +63371,9 @@ // Networking options for a model explainability job. NetworkConfig *MonitoringNetworkConfig `type:"structure"` - // The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access - // Management (IAM) role that has read permission to the input data location - // and write permission to the output data location in Amazon S3. + // The Amazon Resource Name (ARN) of the IAM role that has read permission to + // the input data location and write permission to the output data location + // in Amazon S3. // // RoleArn is a required field RoleArn *string `min:"20" type:"string" required:"true"` @@ -60069,9 +63532,7 @@ // The Amazon Resource Name (ARN) of the IAM role that you specified for the // model. - // - // ExecutionRoleArn is a required field - ExecutionRoleArn *string `min:"20" type:"string" required:"true"` + ExecutionRoleArn *string `min:"20" type:"string"` // Specifies details of how containers in a multi-container endpoint are called. InferenceExecutionConfig *InferenceExecutionConfig `type:"structure"` @@ -62446,17 +65907,39 @@ // The last modified time. LastModifiedTime *time.Time `type:"timestamp"` + // The collection of ownership settings for a space. + OwnershipSettings *OwnershipSettings `type:"structure"` + // The space's Amazon Resource Name (ARN). SpaceArn *string `type:"string"` + // The name of the space that appears in the Amazon SageMaker Studio UI. + SpaceDisplayName *string `type:"string"` + // The name of the space. SpaceName *string `type:"string"` // A collection of space settings. SpaceSettings *SpaceSettings `type:"structure"` + // The collection of space sharing settings for a space. + SpaceSharingSettings *SpaceSharingSettings `type:"structure"` + // The status. Status *string `type:"string" enum:"SpaceStatus"` + + // Returns the URL of the space. If the space is created with Amazon Web Services + // IAM Identity Center (Successor to Amazon Web Services Single Sign-On) authentication, + // users can navigate to the URL after appending the respective redirect parameter + // for the application type to be federated through Amazon Web Services IAM + // Identity Center. + // + // The following application types are supported: + // + // * Studio Classic: &redirect=JupyterServer + // + // * JupyterLab: &redirect=JupyterLab + Url *string `type:"string"` } // String returns the string representation. @@ -62507,12 +65990,24 @@ return s } +// SetOwnershipSettings sets the OwnershipSettings field's value. +func (s *DescribeSpaceOutput) SetOwnershipSettings(v *OwnershipSettings) *DescribeSpaceOutput { + s.OwnershipSettings = v + return s +} + // SetSpaceArn sets the SpaceArn field's value. func (s *DescribeSpaceOutput) SetSpaceArn(v string) *DescribeSpaceOutput { s.SpaceArn = &v return s } +// SetSpaceDisplayName sets the SpaceDisplayName field's value. +func (s *DescribeSpaceOutput) SetSpaceDisplayName(v string) *DescribeSpaceOutput { + s.SpaceDisplayName = &v + return s +} + // SetSpaceName sets the SpaceName field's value. func (s *DescribeSpaceOutput) SetSpaceName(v string) *DescribeSpaceOutput { s.SpaceName = &v @@ -62525,16 +66020,28 @@ return s } +// SetSpaceSharingSettings sets the SpaceSharingSettings field's value. +func (s *DescribeSpaceOutput) SetSpaceSharingSettings(v *SpaceSharingSettings) *DescribeSpaceOutput { + s.SpaceSharingSettings = v + return s +} + // SetStatus sets the Status field's value. func (s *DescribeSpaceOutput) SetStatus(v string) *DescribeSpaceOutput { s.Status = &v return s } +// SetUrl sets the Url field's value. +func (s *DescribeSpaceOutput) SetUrl(v string) *DescribeSpaceOutput { + s.Url = &v + return s +} + type DescribeStudioLifecycleConfigInput struct { _ struct{} `type:"structure"` - // The name of the Studio Lifecycle Configuration to describe. + // The name of the Amazon SageMaker Studio Lifecycle Configuration to describe. // // StudioLifecycleConfigName is a required field StudioLifecycleConfigName *string `type:"string" required:"true"` @@ -62580,11 +66087,11 @@ type DescribeStudioLifecycleConfigOutput struct { _ struct{} `type:"structure"` - // The creation time of the Studio Lifecycle Configuration. + // The creation time of the Amazon SageMaker Studio Lifecycle Configuration. CreationTime *time.Time `type:"timestamp"` - // This value is equivalent to CreationTime because Studio Lifecycle Configurations - // are immutable. + // This value is equivalent to CreationTime because Amazon SageMaker Studio + // Lifecycle Configurations are immutable. LastModifiedTime *time.Time `type:"timestamp"` // The App type that the Lifecycle Configuration is attached to. @@ -62593,10 +66100,10 @@ // The ARN of the Lifecycle Configuration to describe. StudioLifecycleConfigArn *string `type:"string"` - // The content of your Studio Lifecycle Configuration script. + // The content of your Amazon SageMaker Studio Lifecycle Configuration script. StudioLifecycleConfigContent *string `min:"1" type:"string"` - // The name of the Studio Lifecycle Configuration that is described. + // The name of the Amazon SageMaker Studio Lifecycle Configuration that is described. StudioLifecycleConfigName *string `type:"string"` } @@ -62873,6 +66380,10 @@ // Algorithm-specific parameters. HyperParameters map[string]*string `type:"map"` + // Contains information about the infrastructure health check configuration + // for the training job. + InfraCheckConfig *InfraCheckConfig `type:"structure"` + // An array of Channel objects that describes each data input channel. InputDataConfig []*Channel `min:"1" type:"list"` @@ -63176,6 +66687,12 @@ return s } +// SetInfraCheckConfig sets the InfraCheckConfig field's value. +func (s *DescribeTrainingJobOutput) SetInfraCheckConfig(v *InfraCheckConfig) *DescribeTrainingJobOutput { + s.InfraCheckConfig = v + return s +} + // SetInputDataConfig sets the InputDataConfig field's value. func (s *DescribeTrainingJobOutput) SetInputDataConfig(v []*Channel) *DescribeTrainingJobOutput { s.InputDataConfig = v @@ -64963,6 +68480,44 @@ return s } +// The model deployment settings for the SageMaker Canvas application. +// +// In order to enable model deployment for Canvas, the SageMaker Domain's or +// user profile's Amazon Web Services IAM execution role must have the AmazonSageMakerCanvasDirectDeployAccess +// policy attached. You can also turn on model deployment permissions through +// the SageMaker Domain's or user profile's settings in the SageMaker console. +type DirectDeploySettings struct { + _ struct{} `type:"structure"` + + // Describes whether model deployment permissions are enabled or disabled in + // the Canvas application. + Status *string `type:"string" enum:"FeatureStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DirectDeploySettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DirectDeploySettings) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *DirectDeploySettings) SetStatus(v string) *DirectDeploySettings { + s.Status = &v + return s +} + type DisableSagemakerServicecatalogPortfolioInput struct { _ struct{} `type:"structure"` } @@ -65763,6 +69318,122 @@ return s } +// A file system, created by you in Amazon EFS, that you assign to a user profile +// or space for an Amazon SageMaker Domain. Permitted users can access this +// file system in Amazon SageMaker Studio. +type EFSFileSystem struct { + _ struct{} `type:"structure"` + + // The ID of your Amazon EFS file system. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" 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 EFSFileSystem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EFSFileSystem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EFSFileSystem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EFSFileSystem"} + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *EFSFileSystem) SetFileSystemId(v string) *EFSFileSystem { + s.FileSystemId = &v + return s +} + +// The settings for assigning a custom Amazon EFS file system to a user profile +// or space for an Amazon SageMaker Domain. +type EFSFileSystemConfig struct { + _ struct{} `type:"structure"` + + // The ID of your Amazon EFS file system. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" type:"string" required:"true"` + + // The path to the file system directory that is accessible in Amazon SageMaker + // Studio. Permitted users can access only this directory and below. + FileSystemPath *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EFSFileSystemConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EFSFileSystemConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EFSFileSystemConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EFSFileSystemConfig"} + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + if s.FileSystemPath != nil && len(*s.FileSystemPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemPath", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *EFSFileSystemConfig) SetFileSystemId(v string) *EFSFileSystemConfig { + s.FileSystemId = &v + return s +} + +// SetFileSystemPath sets the FileSystemPath field's value. +func (s *EFSFileSystemConfig) SetFileSystemPath(v string) *EFSFileSystemConfig { + s.FileSystemPath = &v + return s +} + // The configurations and outcomes of an Amazon EMR step execution. type EMRStepMetadata struct { _ struct{} `type:"structure"` @@ -65822,6 +69493,56 @@ return s } +// A collection of EBS storage settings that applies to private spaces. +type EbsStorageSettings struct { + _ struct{} `type:"structure"` + + // The size of an EBS storage volume for a private space. + // + // EbsVolumeSizeInGb is a required field + EbsVolumeSizeInGb *int64 `min:"5" type:"integer" 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 EbsStorageSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EbsStorageSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EbsStorageSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EbsStorageSettings"} + if s.EbsVolumeSizeInGb == nil { + invalidParams.Add(request.NewErrParamRequired("EbsVolumeSizeInGb")) + } + if s.EbsVolumeSizeInGb != nil && *s.EbsVolumeSizeInGb < 5 { + invalidParams.Add(request.NewErrParamMinValue("EbsVolumeSizeInGb", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEbsVolumeSizeInGb sets the EbsVolumeSizeInGb field's value. +func (s *EbsStorageSettings) SetEbsVolumeSizeInGb(v int64) *EbsStorageSettings { + s.EbsVolumeSizeInGb = &v + return s +} + // A directed edge connecting two lineage entities. type Edge struct { _ struct{} `type:"structure"` @@ -66978,7 +70699,7 @@ ProbabilityThresholdAttribute *float64 `type:"double"` // Whether input data distributed in Amazon S3 is fully replicated or sharded - // by an S3 key. Defaults to FullyReplicated + // by an Amazon S3 key. Defaults to FullyReplicated S3DataDistributionType *string `type:"string" enum:"ProcessingS3DataDistributionType"` // Whether the Pipe or File is used as the input mode for transferring data @@ -68053,6 +71774,21 @@ type FeatureDefinition struct { _ struct{} `type:"structure"` + // Configuration for your collection. + CollectionConfig *CollectionConfig `type:"structure"` + + // A grouping of elements where each element within the collection must have + // the same feature type (String, Integral, or Fractional). + // + // * List: An ordered collection of elements. + // + // * Set: An unordered collection of unique elements. + // + // * Vector: A specialized list that represents a fixed-size array of elements. + // The vector dimension is determined by you. Must have elements with fractional + // feature types. + CollectionType *string `type:"string" enum:"CollectionType"` + // The name of a feature. The type must be a string. FeatureName cannot be any // of the following: is_deleted, write_time, api_invocation_time. FeatureName *string `min:"1" type:"string"` @@ -68085,6 +71821,11 @@ if s.FeatureName != nil && len(*s.FeatureName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FeatureName", 1)) } + if s.CollectionConfig != nil { + if err := s.CollectionConfig.Validate(); err != nil { + invalidParams.AddNested("CollectionConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -68092,6 +71833,18 @@ return nil } +// SetCollectionConfig sets the CollectionConfig field's value. +func (s *FeatureDefinition) SetCollectionConfig(v *CollectionConfig) *FeatureDefinition { + s.CollectionConfig = v + return s +} + +// SetCollectionType sets the CollectionType field's value. +func (s *FeatureDefinition) SetCollectionType(v string) *FeatureDefinition { + s.CollectionType = &v + return s +} + // SetFeatureName sets the FeatureName field's value. func (s *FeatureDefinition) SetFeatureName(v string) *FeatureDefinition { s.FeatureName = &v @@ -69857,7 +73610,7 @@ // The URL where the Git repository is located. // // RepositoryUrl is a required field - RepositoryUrl *string `type:"string" required:"true"` + RepositoryUrl *string `min:"11" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager // secret that contains the credentials used to access the git repository. The @@ -69895,6 +73648,9 @@ if s.RepositoryUrl == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryUrl")) } + if s.RepositoryUrl != nil && len(*s.RepositoryUrl) < 11 { + invalidParams.Add(request.NewErrParamMinLen("RepositoryUrl", 11)) + } if s.SecretArn != nil && len(*s.SecretArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretArn", 1)) } @@ -69983,7 +73739,7 @@ // The country code for the holiday calendar. // // For the list of public holiday calendars supported by AutoML job V2, see - // Country Codes (https://docs.aws.amazon.com/forecast/latest/dg/holidays.html#holidays-country-codes). + // Country Codes (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-timeseries-forecasting-holiday-calendars.html#holiday-country-codes). // Use the country code corresponding to the country of your choice. CountryCode *string `min:"2" type:"string"` } @@ -72157,6 +75913,8 @@ // tuning uses the value of this metric to evaluate the training jobs it launches, // and returns the training job that results in either the highest or lowest // value for this metric, depending on the value you specify for the Type parameter. + // If you want to define a custom objective metric, see Define metrics and environment + // variables (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics-variables.html). TuningObjective *HyperParameterTuningJobObjective `type:"structure"` // The VpcConfig (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_VpcConfig.html) @@ -72882,6 +76640,8 @@ // tuning uses the value of this metric to evaluate the training jobs it launches, // and returns the training job that results in either the highest or lowest // value for this metric, depending on the value you specify for the Type parameter. +// If you want to define a custom objective metric, see Define metrics and environment +// variables (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics-variables.html). type HyperParameterTuningJobObjective struct { _ struct{} `type:"structure"` @@ -73748,8 +77508,8 @@ return s } -// The Amazon SageMaker Canvas app setting where you configure OAuth for connecting -// to an external data source, such as Snowflake. +// The Amazon SageMaker Canvas application setting where you configure OAuth +// for connecting to an external data source, such as Snowflake. type IdentityProviderOAuthSetting struct { _ struct{} `type:"structure"` @@ -73923,8 +77683,8 @@ return s } -// Stores the configuration information for the image classification problem -// of an AutoML job V2. +// The collection of settings used by an AutoML job V2 for the image classification +// problem type. type ImageClassificationJobConfig struct { _ struct{} `type:"structure"` @@ -74360,6 +78120,624 @@ return s } +// Defines the compute resources to allocate to run a model that you assign +// to an inference component. These resources include CPU cores, accelerators, +// and memory. +type InferenceComponentComputeResourceRequirements struct { + _ struct{} `type:"structure"` + + // The maximum MB of memory to allocate to run a model that you assign to an + // inference component. + MaxMemoryRequiredInMb *int64 `min:"128" type:"integer"` + + // The minimum MB of memory to allocate to run a model that you assign to an + // inference component. + // + // MinMemoryRequiredInMb is a required field + MinMemoryRequiredInMb *int64 `min:"128" type:"integer" required:"true"` + + // The number of accelerators to allocate to run a model that you assign to + // an inference component. Accelerators include GPUs and Amazon Web Services + // Inferentia. + NumberOfAcceleratorDevicesRequired *float64 `min:"1" type:"float"` + + // The number of CPU cores to allocate to run a model that you assign to an + // inference component. + NumberOfCpuCoresRequired *float64 `min:"0.25" type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentComputeResourceRequirements) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentComputeResourceRequirements) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InferenceComponentComputeResourceRequirements) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InferenceComponentComputeResourceRequirements"} + if s.MaxMemoryRequiredInMb != nil && *s.MaxMemoryRequiredInMb < 128 { + invalidParams.Add(request.NewErrParamMinValue("MaxMemoryRequiredInMb", 128)) + } + if s.MinMemoryRequiredInMb == nil { + invalidParams.Add(request.NewErrParamRequired("MinMemoryRequiredInMb")) + } + if s.MinMemoryRequiredInMb != nil && *s.MinMemoryRequiredInMb < 128 { + invalidParams.Add(request.NewErrParamMinValue("MinMemoryRequiredInMb", 128)) + } + if s.NumberOfAcceleratorDevicesRequired != nil && *s.NumberOfAcceleratorDevicesRequired < 1 { + invalidParams.Add(request.NewErrParamMinValue("NumberOfAcceleratorDevicesRequired", 1)) + } + if s.NumberOfCpuCoresRequired != nil && *s.NumberOfCpuCoresRequired < 0.25 { + invalidParams.Add(request.NewErrParamMinValue("NumberOfCpuCoresRequired", 0.25)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxMemoryRequiredInMb sets the MaxMemoryRequiredInMb field's value. +func (s *InferenceComponentComputeResourceRequirements) SetMaxMemoryRequiredInMb(v int64) *InferenceComponentComputeResourceRequirements { + s.MaxMemoryRequiredInMb = &v + return s +} + +// SetMinMemoryRequiredInMb sets the MinMemoryRequiredInMb field's value. +func (s *InferenceComponentComputeResourceRequirements) SetMinMemoryRequiredInMb(v int64) *InferenceComponentComputeResourceRequirements { + s.MinMemoryRequiredInMb = &v + return s +} + +// SetNumberOfAcceleratorDevicesRequired sets the NumberOfAcceleratorDevicesRequired field's value. +func (s *InferenceComponentComputeResourceRequirements) SetNumberOfAcceleratorDevicesRequired(v float64) *InferenceComponentComputeResourceRequirements { + s.NumberOfAcceleratorDevicesRequired = &v + return s +} + +// SetNumberOfCpuCoresRequired sets the NumberOfCpuCoresRequired field's value. +func (s *InferenceComponentComputeResourceRequirements) SetNumberOfCpuCoresRequired(v float64) *InferenceComponentComputeResourceRequirements { + s.NumberOfCpuCoresRequired = &v + return s +} + +// Defines a container that provides the runtime environment for a model that +// you deploy with an inference component. +type InferenceComponentContainerSpecification struct { + _ struct{} `type:"structure"` + + // The Amazon S3 path where the model artifacts, which result from model training, + // are stored. This path must point to a single gzip compressed tar archive + // (.tar.gz suffix). + ArtifactUrl *string `type:"string"` + + // The environment variables to set in the Docker container. Each key and value + // in the Environment string-to-string map can have length of up to 1024. We + // support up to 16 entries in the map. + Environment map[string]*string `type:"map"` + + // The Amazon Elastic Container Registry (Amazon ECR) path where the Docker + // image for the model is stored. + Image *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 InferenceComponentContainerSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentContainerSpecification) GoString() string { + return s.String() +} + +// SetArtifactUrl sets the ArtifactUrl field's value. +func (s *InferenceComponentContainerSpecification) SetArtifactUrl(v string) *InferenceComponentContainerSpecification { + s.ArtifactUrl = &v + return s +} + +// SetEnvironment sets the Environment field's value. +func (s *InferenceComponentContainerSpecification) SetEnvironment(v map[string]*string) *InferenceComponentContainerSpecification { + s.Environment = v + return s +} + +// SetImage sets the Image field's value. +func (s *InferenceComponentContainerSpecification) SetImage(v string) *InferenceComponentContainerSpecification { + s.Image = &v + return s +} + +// Details about the resources that are deployed with this inference component. +type InferenceComponentContainerSpecificationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon S3 path where the model artifacts are stored. + ArtifactUrl *string `type:"string"` + + // Gets the Amazon EC2 Container Registry path of the docker image of the model + // that is hosted in this ProductionVariant (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ProductionVariant.html). + // + // If you used the registry/repository[:tag] form to specify the image path + // of the primary container when you created the model hosted in this ProductionVariant, + // the path resolves to a path of the form registry/repository[@digest]. A digest + // is a hash value that identifies a specific version of an image. For information + // about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) + // in the Amazon ECR User Guide. + DeployedImage *DeployedImage `type:"structure"` + + // The environment variables to set in the Docker container. + Environment map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentContainerSpecificationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentContainerSpecificationSummary) GoString() string { + return s.String() +} + +// SetArtifactUrl sets the ArtifactUrl field's value. +func (s *InferenceComponentContainerSpecificationSummary) SetArtifactUrl(v string) *InferenceComponentContainerSpecificationSummary { + s.ArtifactUrl = &v + return s +} + +// SetDeployedImage sets the DeployedImage field's value. +func (s *InferenceComponentContainerSpecificationSummary) SetDeployedImage(v *DeployedImage) *InferenceComponentContainerSpecificationSummary { + s.DeployedImage = v + return s +} + +// SetEnvironment sets the Environment field's value. +func (s *InferenceComponentContainerSpecificationSummary) SetEnvironment(v map[string]*string) *InferenceComponentContainerSpecificationSummary { + s.Environment = v + return s +} + +// Runtime settings for a model that is deployed with an inference component. +type InferenceComponentRuntimeConfig struct { + _ struct{} `type:"structure"` + + // The number of runtime copies of the model container to deploy with the inference + // component. Each copy can serve inference requests. + // + // CopyCount is a required field + CopyCount *int64 `type:"integer" 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 InferenceComponentRuntimeConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentRuntimeConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InferenceComponentRuntimeConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InferenceComponentRuntimeConfig"} + if s.CopyCount == nil { + invalidParams.Add(request.NewErrParamRequired("CopyCount")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCopyCount sets the CopyCount field's value. +func (s *InferenceComponentRuntimeConfig) SetCopyCount(v int64) *InferenceComponentRuntimeConfig { + s.CopyCount = &v + return s +} + +// Details about the runtime settings for the model that is deployed with the +// inference component. +type InferenceComponentRuntimeConfigSummary struct { + _ struct{} `type:"structure"` + + // The number of runtime copies of the model container that are currently deployed. + CurrentCopyCount *int64 `type:"integer"` + + // The number of runtime copies of the model container that you requested to + // deploy with the inference component. + DesiredCopyCount *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 InferenceComponentRuntimeConfigSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentRuntimeConfigSummary) GoString() string { + return s.String() +} + +// SetCurrentCopyCount sets the CurrentCopyCount field's value. +func (s *InferenceComponentRuntimeConfigSummary) SetCurrentCopyCount(v int64) *InferenceComponentRuntimeConfigSummary { + s.CurrentCopyCount = &v + return s +} + +// SetDesiredCopyCount sets the DesiredCopyCount field's value. +func (s *InferenceComponentRuntimeConfigSummary) SetDesiredCopyCount(v int64) *InferenceComponentRuntimeConfigSummary { + s.DesiredCopyCount = &v + return s +} + +// Details about the resources to deploy with this inference component, including +// the model, container, and compute resources. +type InferenceComponentSpecification struct { + _ struct{} `type:"structure"` + + // The compute resources allocated to run the model assigned to the inference + // component. + // + // ComputeResourceRequirements is a required field + ComputeResourceRequirements *InferenceComponentComputeResourceRequirements `type:"structure" required:"true"` + + // Defines a container that provides the runtime environment for a model that + // you deploy with an inference component. + Container *InferenceComponentContainerSpecification `type:"structure"` + + // The name of an existing SageMaker model object in your account that you want + // to deploy with the inference component. + ModelName *string `type:"string"` + + // Settings that take effect while the model container starts up. + StartupParameters *InferenceComponentStartupParameters `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 InferenceComponentSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentSpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InferenceComponentSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InferenceComponentSpecification"} + if s.ComputeResourceRequirements == nil { + invalidParams.Add(request.NewErrParamRequired("ComputeResourceRequirements")) + } + if s.ComputeResourceRequirements != nil { + if err := s.ComputeResourceRequirements.Validate(); err != nil { + invalidParams.AddNested("ComputeResourceRequirements", err.(request.ErrInvalidParams)) + } + } + if s.StartupParameters != nil { + if err := s.StartupParameters.Validate(); err != nil { + invalidParams.AddNested("StartupParameters", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComputeResourceRequirements sets the ComputeResourceRequirements field's value. +func (s *InferenceComponentSpecification) SetComputeResourceRequirements(v *InferenceComponentComputeResourceRequirements) *InferenceComponentSpecification { + s.ComputeResourceRequirements = v + return s +} + +// SetContainer sets the Container field's value. +func (s *InferenceComponentSpecification) SetContainer(v *InferenceComponentContainerSpecification) *InferenceComponentSpecification { + s.Container = v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *InferenceComponentSpecification) SetModelName(v string) *InferenceComponentSpecification { + s.ModelName = &v + return s +} + +// SetStartupParameters sets the StartupParameters field's value. +func (s *InferenceComponentSpecification) SetStartupParameters(v *InferenceComponentStartupParameters) *InferenceComponentSpecification { + s.StartupParameters = v + return s +} + +// Details about the resources that are deployed with this inference component. +type InferenceComponentSpecificationSummary struct { + _ struct{} `type:"structure"` + + // The compute resources allocated to run the model assigned to the inference + // component. + ComputeResourceRequirements *InferenceComponentComputeResourceRequirements `type:"structure"` + + // Details about the container that provides the runtime environment for the + // model that is deployed with the inference component. + Container *InferenceComponentContainerSpecificationSummary `type:"structure"` + + // The name of the SageMaker model object that is deployed with the inference + // component. + ModelName *string `type:"string"` + + // Settings that take effect while the model container starts up. + StartupParameters *InferenceComponentStartupParameters `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 InferenceComponentSpecificationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentSpecificationSummary) GoString() string { + return s.String() +} + +// SetComputeResourceRequirements sets the ComputeResourceRequirements field's value. +func (s *InferenceComponentSpecificationSummary) SetComputeResourceRequirements(v *InferenceComponentComputeResourceRequirements) *InferenceComponentSpecificationSummary { + s.ComputeResourceRequirements = v + return s +} + +// SetContainer sets the Container field's value. +func (s *InferenceComponentSpecificationSummary) SetContainer(v *InferenceComponentContainerSpecificationSummary) *InferenceComponentSpecificationSummary { + s.Container = v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *InferenceComponentSpecificationSummary) SetModelName(v string) *InferenceComponentSpecificationSummary { + s.ModelName = &v + return s +} + +// SetStartupParameters sets the StartupParameters field's value. +func (s *InferenceComponentSpecificationSummary) SetStartupParameters(v *InferenceComponentStartupParameters) *InferenceComponentSpecificationSummary { + s.StartupParameters = v + return s +} + +// Settings that take effect while the model container starts up. +type InferenceComponentStartupParameters struct { + _ struct{} `type:"structure"` + + // The timeout value, in seconds, for your inference container to pass health + // check by Amazon S3 Hosting. For more information about health check, see + // How Your Container Should Respond to Health Check (Ping) Requests (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests). + ContainerStartupHealthCheckTimeoutInSeconds *int64 `min:"60" type:"integer"` + + // The timeout value, in seconds, to download and extract the model that you + // want to host from Amazon S3 to the individual inference instance associated + // with this inference component. + ModelDataDownloadTimeoutInSeconds *int64 `min:"60" 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 InferenceComponentStartupParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentStartupParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InferenceComponentStartupParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InferenceComponentStartupParameters"} + if s.ContainerStartupHealthCheckTimeoutInSeconds != nil && *s.ContainerStartupHealthCheckTimeoutInSeconds < 60 { + invalidParams.Add(request.NewErrParamMinValue("ContainerStartupHealthCheckTimeoutInSeconds", 60)) + } + if s.ModelDataDownloadTimeoutInSeconds != nil && *s.ModelDataDownloadTimeoutInSeconds < 60 { + invalidParams.Add(request.NewErrParamMinValue("ModelDataDownloadTimeoutInSeconds", 60)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContainerStartupHealthCheckTimeoutInSeconds sets the ContainerStartupHealthCheckTimeoutInSeconds field's value. +func (s *InferenceComponentStartupParameters) SetContainerStartupHealthCheckTimeoutInSeconds(v int64) *InferenceComponentStartupParameters { + s.ContainerStartupHealthCheckTimeoutInSeconds = &v + return s +} + +// SetModelDataDownloadTimeoutInSeconds sets the ModelDataDownloadTimeoutInSeconds field's value. +func (s *InferenceComponentStartupParameters) SetModelDataDownloadTimeoutInSeconds(v int64) *InferenceComponentStartupParameters { + s.ModelDataDownloadTimeoutInSeconds = &v + return s +} + +// A summary of the properties of an inference component. +type InferenceComponentSummary struct { + _ struct{} `type:"structure"` + + // The time when the inference component was created. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // The Amazon Resource Name (ARN) of the endpoint that hosts the inference component. + // + // EndpointArn is a required field + EndpointArn *string `min:"20" type:"string" required:"true"` + + // The name of the endpoint that hosts the inference component. + // + // EndpointName is a required field + EndpointName *string `type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the inference component. + // + // InferenceComponentArn is a required field + InferenceComponentArn *string `min:"20" type:"string" required:"true"` + + // The name of the inference component. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` + + // The status of the inference component. + InferenceComponentStatus *string `type:"string" enum:"InferenceComponentStatus"` + + // The time when the inference component was last updated. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `type:"timestamp" required:"true"` + + // The name of the production variant that hosts the inference component. + // + // VariantName is a required field + VariantName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InferenceComponentSummary) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *InferenceComponentSummary) SetCreationTime(v time.Time) *InferenceComponentSummary { + s.CreationTime = &v + return s +} + +// SetEndpointArn sets the EndpointArn field's value. +func (s *InferenceComponentSummary) SetEndpointArn(v string) *InferenceComponentSummary { + s.EndpointArn = &v + return s +} + +// SetEndpointName sets the EndpointName field's value. +func (s *InferenceComponentSummary) SetEndpointName(v string) *InferenceComponentSummary { + s.EndpointName = &v + return s +} + +// SetInferenceComponentArn sets the InferenceComponentArn field's value. +func (s *InferenceComponentSummary) SetInferenceComponentArn(v string) *InferenceComponentSummary { + s.InferenceComponentArn = &v + return s +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *InferenceComponentSummary) SetInferenceComponentName(v string) *InferenceComponentSummary { + s.InferenceComponentName = &v + return s +} + +// SetInferenceComponentStatus sets the InferenceComponentStatus field's value. +func (s *InferenceComponentSummary) SetInferenceComponentStatus(v string) *InferenceComponentSummary { + s.InferenceComponentStatus = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *InferenceComponentSummary) SetLastModifiedTime(v time.Time) *InferenceComponentSummary { + s.LastModifiedTime = &v + return s +} + +// SetVariantName sets the VariantName field's value. +func (s *InferenceComponentSummary) SetVariantName(v string) *InferenceComponentSummary { + s.VariantName = &v + return s +} + // Specifies details about how containers in a multi-container endpoint are // run. type InferenceExecutionConfig struct { @@ -74418,7 +78796,8 @@ _ struct{} `type:"structure"` // Configuration specifying how to treat different headers. If no headers are - // specified SageMaker will by default base64 encode when capturing the data. + // specified Amazon SageMaker will by default base64 encode when capturing the + // data. ContentType *CaptureContentTypeHeader `type:"structure"` // The Amazon S3 bucket where the inference request and response data is stored. @@ -75023,9 +79402,7 @@ Containers []*ModelPackageContainerDefinition `min:"1" type:"list" required:"true"` // The supported MIME types for the input data. - // - // SupportedContentTypes is a required field - SupportedContentTypes []*string `type:"list" required:"true"` + SupportedContentTypes []*string `type:"list"` // A list of the instance types that are used to generate inferences in real-time. // @@ -75034,9 +79411,7 @@ SupportedRealtimeInferenceInstanceTypes []*string `type:"list" enum:"ProductionVariantInstanceType"` // The supported MIME types for the output data. - // - // SupportedResponseMIMETypes is a required field - SupportedResponseMIMETypes []*string `type:"list" required:"true"` + SupportedResponseMIMETypes []*string `type:"list"` // A list of the instance types on which a transformation job can be run or // on which an endpoint can be deployed. @@ -75073,12 +79448,6 @@ if s.Containers != nil && len(s.Containers) < 1 { invalidParams.Add(request.NewErrParamMinLen("Containers", 1)) } - if s.SupportedContentTypes == nil { - invalidParams.Add(request.NewErrParamRequired("SupportedContentTypes")) - } - if s.SupportedResponseMIMETypes == nil { - invalidParams.Add(request.NewErrParamRequired("SupportedResponseMIMETypes")) - } if s.SupportedTransformInstanceTypes != nil && len(s.SupportedTransformInstanceTypes) < 1 { invalidParams.Add(request.NewErrParamMinLen("SupportedTransformInstanceTypes", 1)) } @@ -75129,6 +79498,40 @@ return s } +// Configuration information for the infrastructure health check of a training +// job. A SageMaker-provided health check tests the health of instance hardware +// and cluster network connectivity. +type InfraCheckConfig struct { + _ struct{} `type:"structure"` + + // Enables an infrastructure health check. + EnableInfraCheck *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 InfraCheckConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InfraCheckConfig) GoString() string { + return s.String() +} + +// SetEnableInfraCheck sets the EnableInfraCheck field's value. +func (s *InfraCheckConfig) SetEnableInfraCheck(v bool) *InfraCheckConfig { + s.EnableInfraCheck = &v + return s +} + // Contains information about the location of input model artifacts, the name // and shape of the expected data inputs, and the framework in which the model // was trained. @@ -75621,6 +80024,138 @@ return s } +// The configuration for the file system and kernels in a SageMaker image running +// as a JupyterLab app. +type JupyterLabAppImageConfig struct { + _ struct{} `type:"structure"` + + // The configuration used to run the application image container. + ContainerConfig *ContainerConfig `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 JupyterLabAppImageConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JupyterLabAppImageConfig) GoString() string { + return s.String() +} + +// SetContainerConfig sets the ContainerConfig field's value. +func (s *JupyterLabAppImageConfig) SetContainerConfig(v *ContainerConfig) *JupyterLabAppImageConfig { + s.ContainerConfig = v + return s +} + +// The settings for the JupyterLab application. +type JupyterLabAppSettings struct { + _ struct{} `type:"structure"` + + // A list of Git repositories that SageMaker automatically displays to users + // for cloning in the JupyterLab application. + CodeRepositories []*CodeRepository `type:"list"` + + // A list of custom SageMaker images that are configured to run as a JupyterLab + // app. + CustomImages []*CustomImage `type:"list"` + + // Specifies the ARN's of a SageMaker image and SageMaker image version, and + // the instance type that the version runs on. + DefaultResourceSpec *ResourceSpec `type:"structure"` + + // The Amazon Resource Name (ARN) of the lifecycle configurations attached to + // the user profile or domain. To remove a lifecycle config, you must set LifecycleConfigArns + // to an empty list. + LifecycleConfigArns []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JupyterLabAppSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JupyterLabAppSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *JupyterLabAppSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "JupyterLabAppSettings"} + if s.CodeRepositories != nil { + for i, v := range s.CodeRepositories { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CodeRepositories", i), err.(request.ErrInvalidParams)) + } + } + } + if s.CustomImages != nil { + for i, v := range s.CustomImages { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomImages", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCodeRepositories sets the CodeRepositories field's value. +func (s *JupyterLabAppSettings) SetCodeRepositories(v []*CodeRepository) *JupyterLabAppSettings { + s.CodeRepositories = v + return s +} + +// SetCustomImages sets the CustomImages field's value. +func (s *JupyterLabAppSettings) SetCustomImages(v []*CustomImage) *JupyterLabAppSettings { + s.CustomImages = v + return s +} + +// SetDefaultResourceSpec sets the DefaultResourceSpec field's value. +func (s *JupyterLabAppSettings) SetDefaultResourceSpec(v *ResourceSpec) *JupyterLabAppSettings { + s.DefaultResourceSpec = v + return s +} + +// SetLifecycleConfigArns sets the LifecycleConfigArns field's value. +func (s *JupyterLabAppSettings) SetLifecycleConfigArns(v []*string) *JupyterLabAppSettings { + s.LifecycleConfigArns = v + return s +} + // The JupyterServer app settings. type JupyterServerAppSettings struct { _ struct{} `type:"structure"` @@ -75674,6 +80209,11 @@ } } } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -75699,6 +80239,40 @@ return s } +// The Amazon SageMaker Canvas application setting where you configure document +// querying. +type KendraSettings struct { + _ struct{} `type:"structure"` + + // Describes whether the document querying feature is enabled or disabled in + // the Canvas application. + Status *string `type:"string" enum:"FeatureStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KendraSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KendraSettings) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *KendraSettings) SetStatus(v string) *KendraSettings { + s.Status = &v + return s +} + // The KernelGateway app settings. type KernelGatewayAppSettings struct { _ struct{} `type:"structure"` @@ -75755,6 +80329,11 @@ } } } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -76520,11 +81099,10 @@ // * Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" VolumeKmsKeyId *string `type:"string"` - // Specifies a VPC that your training jobs and hosted models have access to. - // Control access to and from your training and model containers by configuring - // the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual - // Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - // and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). VpcConfig *VpcConfig `type:"structure"` } @@ -78438,6 +83016,354 @@ return s } +type ListClusterNodesInput struct { + _ struct{} `type:"structure"` + + // The string name or the Amazon Resource Name (ARN) of the SageMaker HyperPod + // cluster in which you want to retrieve the list of nodes. + // + // ClusterName is a required field + ClusterName *string `type:"string" required:"true"` + + // A filter that returns nodes in a SageMaker HyperPod cluster created after + // the specified time. Timestamps are formatted according to the ISO 8601 standard. + // + // Acceptable formats include: + // + // * YYYY-MM-DDThh:mm:ss.sssTZD (UTC), for example, 2014-10-01T20:30:00.000Z + // + // * YYYY-MM-DDThh:mm:ss.sssTZD (with offset), for example, 2014-10-01T12:30:00.000-08:00 + // + // * YYYY-MM-DD, for example, 2014-10-01 + // + // * Unix time in seconds, for example, 1412195400. This is also referred + // to as Unix Epoch time and represents the number of seconds since midnight, + // January 1, 1970 UTC. + // + // For more information about the timestamp format, see Timestamp (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-types.html#parameter-type-timestamp) + // in the Amazon Web Services Command Line Interface User Guide. + CreationTimeAfter *time.Time `type:"timestamp"` + + // A filter that returns nodes in a SageMaker HyperPod cluster created before + // the specified time. The acceptable formats are the same as the timestamp + // formats for CreationTimeAfter. For more information about the timestamp format, + // see Timestamp (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-types.html#parameter-type-timestamp) + // in the Amazon Web Services Command Line Interface User Guide. + CreationTimeBefore *time.Time `type:"timestamp"` + + // A filter that returns the instance groups whose name contain a specified + // string. + InstanceGroupNameContains *string `min:"1" type:"string"` + + // The maximum number of nodes to return in the response. + MaxResults *int64 `min:"1" type:"integer"` + + // If the result of the previous ListClusterNodes request was truncated, the + // response includes a NextToken. To retrieve the next set of cluster nodes, + // use the token in the next request. + NextToken *string `type:"string"` + + // The field by which to sort results. The default value is CREATION_TIME. + SortBy *string `type:"string" enum:"ClusterSortBy"` + + // The sort order for results. The default value is Ascending. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClusterNodesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClusterNodesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListClusterNodesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListClusterNodesInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.InstanceGroupNameContains != nil && len(*s.InstanceGroupNameContains) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceGroupNameContains", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *ListClusterNodesInput) SetClusterName(v string) *ListClusterNodesInput { + s.ClusterName = &v + return s +} + +// SetCreationTimeAfter sets the CreationTimeAfter field's value. +func (s *ListClusterNodesInput) SetCreationTimeAfter(v time.Time) *ListClusterNodesInput { + s.CreationTimeAfter = &v + return s +} + +// SetCreationTimeBefore sets the CreationTimeBefore field's value. +func (s *ListClusterNodesInput) SetCreationTimeBefore(v time.Time) *ListClusterNodesInput { + s.CreationTimeBefore = &v + return s +} + +// SetInstanceGroupNameContains sets the InstanceGroupNameContains field's value. +func (s *ListClusterNodesInput) SetInstanceGroupNameContains(v string) *ListClusterNodesInput { + s.InstanceGroupNameContains = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListClusterNodesInput) SetMaxResults(v int64) *ListClusterNodesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListClusterNodesInput) SetNextToken(v string) *ListClusterNodesInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListClusterNodesInput) SetSortBy(v string) *ListClusterNodesInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListClusterNodesInput) SetSortOrder(v string) *ListClusterNodesInput { + s.SortOrder = &v + return s +} + +type ListClusterNodesOutput struct { + _ struct{} `type:"structure"` + + // The summaries of listed instances in a SageMaker HyperPod cluster + // + // ClusterNodeSummaries is a required field + ClusterNodeSummaries []*ClusterNodeSummary `type:"list" required:"true"` + + // The next token specified for listing instances in a SageMaker HyperPod cluster. + // + // NextToken is a required field + NextToken *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClusterNodesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClusterNodesOutput) GoString() string { + return s.String() +} + +// SetClusterNodeSummaries sets the ClusterNodeSummaries field's value. +func (s *ListClusterNodesOutput) SetClusterNodeSummaries(v []*ClusterNodeSummary) *ListClusterNodesOutput { + s.ClusterNodeSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListClusterNodesOutput) SetNextToken(v string) *ListClusterNodesOutput { + s.NextToken = &v + return s +} + +type ListClustersInput struct { + _ struct{} `type:"structure"` + + // Set a start time for the time range during which you want to list SageMaker + // HyperPod clusters. Timestamps are formatted according to the ISO 8601 standard. + // + // Acceptable formats include: + // + // * YYYY-MM-DDThh:mm:ss.sssTZD (UTC), for example, 2014-10-01T20:30:00.000Z + // + // * YYYY-MM-DDThh:mm:ss.sssTZD (with offset), for example, 2014-10-01T12:30:00.000-08:00 + // + // * YYYY-MM-DD, for example, 2014-10-01 + // + // * Unix time in seconds, for example, 1412195400. This is also referred + // to as Unix Epoch time and represents the number of seconds since midnight, + // January 1, 1970 UTC. + // + // For more information about the timestamp format, see Timestamp (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-types.html#parameter-type-timestamp) + // in the Amazon Web Services Command Line Interface User Guide. + CreationTimeAfter *time.Time `type:"timestamp"` + + // Set an end time for the time range during which you want to list SageMaker + // HyperPod clusters. A filter that returns nodes in a SageMaker HyperPod cluster + // created before the specified time. The acceptable formats are the same as + // the timestamp formats for CreationTimeAfter. For more information about the + // timestamp format, see Timestamp (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-types.html#parameter-type-timestamp) + // in the Amazon Web Services Command Line Interface User Guide. + CreationTimeBefore *time.Time `type:"timestamp"` + + // Set the maximum number of SageMaker HyperPod clusters to list. + MaxResults *int64 `min:"1" type:"integer"` + + // Set the maximum number of instances to print in the list. + NameContains *string `type:"string"` + + // Set the next token to retrieve the list of SageMaker HyperPod clusters. + NextToken *string `type:"string"` + + // The field by which to sort results. The default value is CREATION_TIME. + SortBy *string `type:"string" enum:"ClusterSortBy"` + + // The sort order for results. The default value is Ascending. + SortOrder *string `type:"string" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClustersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClustersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListClustersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListClustersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreationTimeAfter sets the CreationTimeAfter field's value. +func (s *ListClustersInput) SetCreationTimeAfter(v time.Time) *ListClustersInput { + s.CreationTimeAfter = &v + return s +} + +// SetCreationTimeBefore sets the CreationTimeBefore field's value. +func (s *ListClustersInput) SetCreationTimeBefore(v time.Time) *ListClustersInput { + s.CreationTimeBefore = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListClustersInput) SetMaxResults(v int64) *ListClustersInput { + s.MaxResults = &v + return s +} + +// SetNameContains sets the NameContains field's value. +func (s *ListClustersInput) SetNameContains(v string) *ListClustersInput { + s.NameContains = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListClustersInput) SetNextToken(v string) *ListClustersInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListClustersInput) SetSortBy(v string) *ListClustersInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListClustersInput) SetSortOrder(v string) *ListClustersInput { + s.SortOrder = &v + return s +} + +type ListClustersOutput struct { + _ struct{} `type:"structure"` + + // The summaries of listed SageMaker HyperPod clusters. + // + // ClusterSummaries is a required field + ClusterSummaries []*ClusterSummary `type:"list" required:"true"` + + // If the result of the previous ListClusters request was truncated, the response + // includes a NextToken. To retrieve the next set of clusters, use the token + // in the next request. + // + // NextToken is a required field + NextToken *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClustersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListClustersOutput) GoString() string { + return s.String() +} + +// SetClusterSummaries sets the ClusterSummaries field's value. +func (s *ListClustersOutput) SetClusterSummaries(v []*ClusterSummary) *ListClustersOutput { + s.ClusterSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListClustersOutput) SetNextToken(v string) *ListClustersOutput { + s.NextToken = &v + return s +} + type ListCodeRepositoriesInput struct { _ struct{} `type:"structure"` @@ -78977,7 +83903,8 @@ // The field to sort results by. The default is CreationTime. SortBy *string `type:"string" enum:"MonitoringJobDefinitionSortKey"` - // The sort order for results. The default is Descending. + // Whether to sort the results in Ascending or Descending order. The default + // is Descending. SortOrder *string `type:"string" enum:"SortOrder"` } @@ -81715,6 +86642,207 @@ return s } +type ListInferenceComponentsInput struct { + _ struct{} `type:"structure"` + + // Filters the results to only those inference components that were created + // after the specified time. + CreationTimeAfter *time.Time `type:"timestamp"` + + // Filters the results to only those inference components that were created + // before the specified time. + CreationTimeBefore *time.Time `type:"timestamp"` + + // An endpoint name to filter the listed inference components. The response + // includes only those inference components that are hosted at the specified + // endpoint. + EndpointNameEquals *string `type:"string"` + + // Filters the results to only those inference components that were updated + // after the specified time. + LastModifiedTimeAfter *time.Time `type:"timestamp"` + + // Filters the results to only those inference components that were updated + // before the specified time. + LastModifiedTimeBefore *time.Time `type:"timestamp"` + + // The maximum number of inference components to return in the response. This + // value defaults to 10. + MaxResults *int64 `min:"1" type:"integer"` + + // Filters the results to only those inference components with a name that contains + // the specified string. + NameContains *string `type:"string"` + + // A token that you use to get the next set of results following a truncated + // response. If the response to the previous request was truncated, that response + // provides the value for this token. + NextToken *string `type:"string"` + + // The field by which to sort the inference components in the response. The + // default is CreationTime. + SortBy *string `type:"string" enum:"InferenceComponentSortKey"` + + // The sort order for results. The default is Descending. + SortOrder *string `type:"string" enum:"OrderKey"` + + // Filters the results to only those inference components with the specified + // status. + StatusEquals *string `type:"string" enum:"InferenceComponentStatus"` + + // A production variant name to filter the listed inference components. The + // response includes only those inference components that are hosted at the + // specified variant. + VariantNameEquals *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 ListInferenceComponentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInferenceComponentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListInferenceComponentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListInferenceComponentsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreationTimeAfter sets the CreationTimeAfter field's value. +func (s *ListInferenceComponentsInput) SetCreationTimeAfter(v time.Time) *ListInferenceComponentsInput { + s.CreationTimeAfter = &v + return s +} + +// SetCreationTimeBefore sets the CreationTimeBefore field's value. +func (s *ListInferenceComponentsInput) SetCreationTimeBefore(v time.Time) *ListInferenceComponentsInput { + s.CreationTimeBefore = &v + return s +} + +// SetEndpointNameEquals sets the EndpointNameEquals field's value. +func (s *ListInferenceComponentsInput) SetEndpointNameEquals(v string) *ListInferenceComponentsInput { + s.EndpointNameEquals = &v + return s +} + +// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value. +func (s *ListInferenceComponentsInput) SetLastModifiedTimeAfter(v time.Time) *ListInferenceComponentsInput { + s.LastModifiedTimeAfter = &v + return s +} + +// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value. +func (s *ListInferenceComponentsInput) SetLastModifiedTimeBefore(v time.Time) *ListInferenceComponentsInput { + s.LastModifiedTimeBefore = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListInferenceComponentsInput) SetMaxResults(v int64) *ListInferenceComponentsInput { + s.MaxResults = &v + return s +} + +// SetNameContains sets the NameContains field's value. +func (s *ListInferenceComponentsInput) SetNameContains(v string) *ListInferenceComponentsInput { + s.NameContains = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListInferenceComponentsInput) SetNextToken(v string) *ListInferenceComponentsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListInferenceComponentsInput) SetSortBy(v string) *ListInferenceComponentsInput { + s.SortBy = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *ListInferenceComponentsInput) SetSortOrder(v string) *ListInferenceComponentsInput { + s.SortOrder = &v + return s +} + +// SetStatusEquals sets the StatusEquals field's value. +func (s *ListInferenceComponentsInput) SetStatusEquals(v string) *ListInferenceComponentsInput { + s.StatusEquals = &v + return s +} + +// SetVariantNameEquals sets the VariantNameEquals field's value. +func (s *ListInferenceComponentsInput) SetVariantNameEquals(v string) *ListInferenceComponentsInput { + s.VariantNameEquals = &v + return s +} + +type ListInferenceComponentsOutput struct { + _ struct{} `type:"structure"` + + // A list of inference components and their properties that matches any of the + // filters you specified in the request. + // + // InferenceComponents is a required field + InferenceComponents []*InferenceComponentSummary `type:"list" required:"true"` + + // The token to use in a subsequent request to get the next set of results following + // a truncated response. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInferenceComponentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInferenceComponentsOutput) GoString() string { + return s.String() +} + +// SetInferenceComponents sets the InferenceComponents field's value. +func (s *ListInferenceComponentsOutput) SetInferenceComponents(v []*InferenceComponentSummary) *ListInferenceComponentsOutput { + s.InferenceComponents = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListInferenceComponentsOutput) SetNextToken(v string) *ListInferenceComponentsOutput { + s.NextToken = &v + return s +} + type ListInferenceExperimentsInput struct { _ struct{} `type:"structure"` @@ -82811,8 +87939,8 @@ // JobDefinitionSummaries is a required field JobDefinitionSummaries []*MonitoringJobDefinitionSummary `type:"list" required:"true"` - // If the response is truncated, Amazon SageMaker returns this token. To retrieve - // the next set of jobs, use it in the subsequent request. + // The token returned if the response is truncated. To retrieve the next set + // of job executions, use it in the next request. NextToken *string `type:"string"` } @@ -83467,8 +88595,8 @@ // JobDefinitionSummaries is a required field JobDefinitionSummaries []*MonitoringJobDefinitionSummary `type:"list" required:"true"` - // If the response is truncated, Amazon SageMaker returns this token. To retrieve - // the next set of jobs, use it in the subsequent request. + // The token returned if the response is truncated. To retrieve the next set + // of job executions, use it in the next request. NextToken *string `type:"string"` } @@ -83976,7 +89104,8 @@ // The field to sort results by. The default is CreationTime. SortBy *string `type:"string" enum:"MonitoringJobDefinitionSortKey"` - // The sort order for results. The default is Descending. + // Whether to sort the results in Ascending or Descending order. The default + // is Descending. SortOrder *string `type:"string" enum:"SortOrder"` } @@ -84569,8 +89698,8 @@ // Filter for jobs scheduled before a specified time. ScheduledTimeBefore *time.Time `type:"timestamp"` - // Whether to sort results by Status, CreationTime, ScheduledTime field. The - // default is CreationTime. + // Whether to sort the results by the Status, CreationTime, or ScheduledTime + // field. The default is CreationTime. SortBy *string `type:"string" enum:"MonitoringExecutionSortKey"` // Whether to sort the results in Ascending or Descending order. The default @@ -84716,8 +89845,8 @@ // MonitoringExecutionSummaries is a required field MonitoringExecutionSummaries []*MonitoringExecutionSummary `type:"list" required:"true"` - // If the response is truncated, Amazon SageMaker returns this token. To retrieve - // the next set of jobs, use it in the subsequent reques + // The token returned if the response is truncated. To retrieve the next set + // of job executions, use it in the next request. NextToken *string `type:"string"` } @@ -84792,8 +89921,8 @@ // of job executions, use it in the next request. NextToken *string `type:"string"` - // Whether to sort results by Status, CreationTime, ScheduledTime field. The - // default is CreationTime. + // Whether to sort the results by the Status, CreationTime, or ScheduledTime + // field. The default is CreationTime. SortBy *string `type:"string" enum:"MonitoringScheduleSortKey"` // Whether to sort the results in Ascending or Descending order. The default @@ -84925,8 +90054,8 @@ // MonitoringScheduleSummaries is a required field MonitoringScheduleSummaries []*MonitoringScheduleSummary `type:"list" required:"true"` - // If the response is truncated, Amazon SageMaker returns this token. To retrieve - // the next set of jobs, use it in the subsequent request. + // The token returned if the response is truncated. To retrieve the next set + // of job executions, use it in the next request. NextToken *string `type:"string"` } @@ -88684,11 +93813,10 @@ // in the Amazon Web Services General Reference Guide. Tags []*Tag `type:"list"` - // Specifies a VPC that your training jobs and hosted models have access to. - // Control access to and from your training and model containers by configuring - // the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual - // Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - // and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). VpcConfig *VpcConfig `type:"structure"` } @@ -88776,6 +93904,59 @@ return s } +// The access configuration file for the ML model. You can explicitly accept +// the model end-user license agreement (EULA) within the ModelAccessConfig. +// For more information, see End-user license agreements (https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-foundation-models-choose.html#jumpstart-foundation-models-choose-eula). +type ModelAccessConfig struct { + _ struct{} `type:"structure"` + + // Specifies agreement to the model end-user license agreement (EULA). The AcceptEula + // value must be explicitly defined as True in order to accept the EULA that + // this model requires. You are responsible for reviewing and complying with + // any applicable license terms and making sure they are acceptable for your + // use case before downloading or using a model. + // + // AcceptEula is a required field + AcceptEula *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelAccessConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelAccessConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModelAccessConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModelAccessConfig"} + if s.AcceptEula == nil { + invalidParams.Add(request.NewErrParamRequired("AcceptEula")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAcceptEula sets the AcceptEula field's value. +func (s *ModelAccessConfig) SetAcceptEula(v bool) *ModelAccessConfig { + s.AcceptEula = &v + return s +} + // Provides information about the location that is configured for storing model // artifacts. // @@ -90009,6 +95190,9 @@ type ModelDashboardMonitoringSchedule struct { _ struct{} `type:"structure"` + // Input object for the batch transform job. + BatchTransformInput *BatchTransformInput_ `type:"structure"` + // A timestamp that indicates when the monitoring schedule was created. CreationTime *time.Time `type:"timestamp"` @@ -90061,6 +95245,12 @@ return s.String() } +// SetBatchTransformInput sets the BatchTransformInput field's value. +func (s *ModelDashboardMonitoringSchedule) SetBatchTransformInput(v *BatchTransformInput_) *ModelDashboardMonitoringSchedule { + s.BatchTransformInput = v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *ModelDashboardMonitoringSchedule) SetCreationTime(v time.Time) *ModelDashboardMonitoringSchedule { s.CreationTime = &v @@ -90362,9 +95552,9 @@ type ModelExplainabilityAppSpecification struct { _ struct{} `type:"structure"` - // JSON formatted S3 file that defines explainability parameters. For more information - // on this JSON configuration file, see Configure model explainability parameters - // (https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-config-json-monitor-model-explainability-parameters.html). + // JSON formatted Amazon S3 file that defines explainability parameters. For + // more information on this JSON configuration file, see Configure model explainability + // parameters (https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-config-json-monitor-model-explainability-parameters.html). // // ConfigUri is a required field ConfigUri *string `type:"string" required:"true"` @@ -91291,6 +96481,10 @@ type ModelPackageContainerDefinition struct { _ struct{} `type:"structure"` + // The additional data source that is used during inference in the Docker container + // for your model package. + AdditionalS3DataSource *AdditionalS3DataSource `type:"structure"` + // The DNS host name for the Docker container. ContainerHostname *string `type:"string"` @@ -91368,6 +96562,11 @@ if s.Image == nil { invalidParams.Add(request.NewErrParamRequired("Image")) } + if s.AdditionalS3DataSource != nil { + if err := s.AdditionalS3DataSource.Validate(); err != nil { + invalidParams.AddNested("AdditionalS3DataSource", err.(request.ErrInvalidParams)) + } + } if s.ModelInput != nil { if err := s.ModelInput.Validate(); err != nil { invalidParams.AddNested("ModelInput", err.(request.ErrInvalidParams)) @@ -91380,6 +96579,12 @@ return nil } +// SetAdditionalS3DataSource sets the AdditionalS3DataSource field's value. +func (s *ModelPackageContainerDefinition) SetAdditionalS3DataSource(v *AdditionalS3DataSource) *ModelPackageContainerDefinition { + s.AdditionalS3DataSource = v + return s +} + // SetContainerHostname sets the ContainerHostname field's value. func (s *ModelPackageContainerDefinition) SetContainerHostname(v string) *ModelPackageContainerDefinition { s.ContainerHostname = &v @@ -91745,9 +96950,7 @@ ModelPackageGroupName *string `min:"1" type:"string"` // The name of the model package. - // - // ModelPackageName is a required field - ModelPackageName *string `min:"1" type:"string" required:"true"` + ModelPackageName *string `min:"1" type:"string"` // The overall status of the model package. // @@ -92064,9 +97267,9 @@ ProblemType *string `type:"string" enum:"MonitoringProblemType"` // An Amazon S3 URI to a script that is called per row prior to running analysis. - // It can base64 decode the payload and convert it into a flatted json so that - // the built-in container can use the converted data. Applicable only for the - // built-in (first party) containers. + // It can base64 decode the payload and convert it into a flattened JSON so + // that the built-in container can use the converted data. Applicable only for + // the built-in (first party) containers. RecordPreprocessorSourceUri *string `type:"string"` } @@ -92205,7 +97408,7 @@ return s } -// The input for the model quality monitoring job. Currently endponts are supported +// The input for the model quality monitoring job. Currently endpoints are supported // for input for model quality monitoring jobs. type ModelQualityJobInput struct { _ struct{} `type:"structure"` @@ -92815,9 +98018,9 @@ PostAnalyticsProcessorSourceUri *string `type:"string"` // An Amazon S3 URI to a script that is called per row prior to running analysis. - // It can base64 decode the payload and convert it into a flatted json so that - // the built-in container can use the converted data. Applicable only for the - // built-in (first party) containers. + // It can base64 decode the payload and convert it into a flattened JSON so + // that the built-in container can use the converted data. Applicable only for + // the built-in (first party) containers. RecordPreprocessorSourceUri *string `type:"string"` } @@ -92971,9 +98174,9 @@ // InstanceType is a required field InstanceType *string `type:"string" required:"true" enum:"ProcessingInstanceType"` - // The Amazon Web Services Key Management Service (Amazon Web Services KMS) - // key that Amazon SageMaker uses to encrypt data on the storage volume attached - // to the ML compute instance(s) that run the model monitoring job. + // The Key Management Service (KMS) key that Amazon SageMaker uses to encrypt + // data on the storage volume attached to the ML compute instance(s) that run + // the model monitoring job. VolumeKmsKeyId *string `type:"string"` // The size of the ML storage volume, in gigabytes, that you want to provision. @@ -93402,8 +98605,7 @@ // MonitoringInputs is a required field MonitoringInputs []*MonitoringInput `min:"1" type:"list" required:"true"` - // The array of outputs from the monitoring job to be uploaded to Amazon Simple - // Storage Service (Amazon S3). + // The array of outputs from the monitoring job to be uploaded to Amazon S3. // // MonitoringOutputConfig is a required field MonitoringOutputConfig *MonitoringOutputConfig `type:"structure" required:"true"` @@ -93642,7 +98844,7 @@ type MonitoringJsonDatasetFormat struct { _ struct{} `type:"structure"` - // Indicates if the file should be read as a json object per line. + // Indicates if the file should be read as a JSON object per line. Line *bool `type:"boolean"` } @@ -93683,11 +98885,10 @@ // used for the monitoring job. EnableNetworkIsolation *bool `type:"boolean"` - // Specifies a VPC that your training jobs and hosted models have access to. - // Control access to and from your training and model containers by configuring - // the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual - // Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - // and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). VpcConfig *VpcConfig `type:"structure"` } @@ -93799,9 +99000,8 @@ type MonitoringOutputConfig struct { _ struct{} `type:"structure"` - // The Amazon Web Services Key Management Service (Amazon Web Services KMS) - // key that Amazon SageMaker uses to encrypt the model artifacts at rest using - // Amazon S3 server-side encryption. + // The Key Management Service (KMS) key that Amazon SageMaker uses to encrypt + // the model artifacts at rest using Amazon S3 server-side encryption. KmsKeyId *string `type:"string"` // Monitoring outputs for monitoring jobs. This is where the output of the periodic @@ -94641,11 +99841,10 @@ // used for the processing job. EnableNetworkIsolation *bool `type:"boolean"` - // Specifies a VPC that your training jobs and hosted models have access to. - // Control access to and from your training and model containers by configuring - // the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual - // Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - // and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + // Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, + // hosted models, and compute resources have access to. You can control access + // to and from your resources by configuring a VPC. For more information, see + // Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). VpcConfig *VpcConfig `type:"structure"` } @@ -95502,6 +100701,14 @@ // Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of your OnlineStore. SecurityConfig *OnlineStoreSecurityConfig `type:"structure"` + // Option for different tiers of low latency storage for real-time data retrieval. + // + // * Standard: A managed low latency data store for feature groups. + // + // * InMemory: A managed data store for feature groups that supports very + // low latency retrieval. + StorageType *string `type:"string" enum:"StorageType"` + // Time to live duration, where the record is hard deleted after the expiration // time is reached; ExpiresAt = EventTime + TtlDuration. For information on // HardDelete, see the DeleteRecord (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_feature_store_DeleteRecord.html) @@ -95554,6 +100761,12 @@ return s } +// SetStorageType sets the StorageType field's value. +func (s *OnlineStoreConfig) SetStorageType(v string) *OnlineStoreConfig { + s.StorageType = &v + return s +} + // SetTtlDuration sets the TtlDuration field's value. func (s *OnlineStoreConfig) SetTtlDuration(v *TtlDuration) *OnlineStoreConfig { s.TtlDuration = v @@ -96021,6 +101234,85 @@ return s } +// The collection of ownership settings for a space. +type OwnershipSettings struct { + _ struct{} `type:"structure"` + + // The user profile who is the owner of the private space. + // + // OwnerUserProfileName is a required field + OwnerUserProfileName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OwnershipSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OwnershipSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OwnershipSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OwnershipSettings"} + if s.OwnerUserProfileName == nil { + invalidParams.Add(request.NewErrParamRequired("OwnerUserProfileName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOwnerUserProfileName sets the OwnerUserProfileName field's value. +func (s *OwnershipSettings) SetOwnerUserProfileName(v string) *OwnershipSettings { + s.OwnerUserProfileName = &v + return s +} + +// Specifies summary information about the ownership settings. +type OwnershipSettingsSummary struct { + _ struct{} `type:"structure"` + + // The user profile who is the owner of the private space. + OwnerUserProfileName *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 OwnershipSettingsSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OwnershipSettingsSummary) GoString() string { + return s.String() +} + +// SetOwnerUserProfileName sets the OwnerUserProfileName field's value. +func (s *OwnershipSettingsSummary) SetOwnerUserProfileName(v string) *OwnershipSettingsSummary { + s.OwnerUserProfileName = &v + return s +} + // Configuration that controls the parallelism of the pipeline. By default, // the parallelism configuration specified applies to all executions of the // pipeline unless overridden. @@ -96545,6 +101837,14 @@ // The type of instances associated with the variant. InstanceType *string `type:"string" enum:"ProductionVariantInstanceType"` + // Settings that control the range in the number of instances that the endpoint + // provisions as it scales up or down to accommodate traffic. + ManagedInstanceScaling *ProductionVariantManagedInstanceScaling `type:"structure"` + + // Settings that control how the endpoint routes incoming traffic to the instances + // that the endpoint hosts. + RoutingConfig *ProductionVariantRoutingConfig `type:"structure"` + // The name of the variant. // // VariantName is a required field @@ -96627,6 +101927,18 @@ return s } +// SetManagedInstanceScaling sets the ManagedInstanceScaling field's value. +func (s *PendingProductionVariantSummary) SetManagedInstanceScaling(v *ProductionVariantManagedInstanceScaling) *PendingProductionVariantSummary { + s.ManagedInstanceScaling = v + return s +} + +// SetRoutingConfig sets the RoutingConfig field's value. +func (s *PendingProductionVariantSummary) SetRoutingConfig(v *ProductionVariantRoutingConfig) *PendingProductionVariantSummary { + s.RoutingConfig = v + return s +} + // SetVariantName sets the VariantName field's value. func (s *PendingProductionVariantSummary) SetVariantName(v string) *PendingProductionVariantSummary { s.VariantName = &v @@ -98779,6 +104091,10 @@ // The ML compute instance type. InstanceType *string `type:"string" enum:"ProductionVariantInstanceType"` + // Settings that control the range in the number of instances that the endpoint + // provisions as it scales up or down to accommodate traffic. + ManagedInstanceScaling *ProductionVariantManagedInstanceScaling `type:"structure"` + // The timeout value, in seconds, to download and extract the model that you // want to host from Amazon S3 to the individual inference instance associated // with this production variant. @@ -98786,9 +104102,11 @@ // The name of the model that you want to host. This is the name that you specified // when creating the model. - // - // ModelName is a required field - ModelName *string `type:"string" required:"true"` + ModelName *string `type:"string"` + + // Settings that control how the endpoint routes incoming traffic to the instances + // that the endpoint hosts. + RoutingConfig *ProductionVariantRoutingConfig `type:"structure"` // The serverless configuration for an endpoint. Specifies a serverless endpoint // configuration instead of an instance-based endpoint configuration. @@ -98835,9 +104153,6 @@ if s.ModelDataDownloadTimeoutInSeconds != nil && *s.ModelDataDownloadTimeoutInSeconds < 60 { invalidParams.Add(request.NewErrParamMinValue("ModelDataDownloadTimeoutInSeconds", 60)) } - if s.ModelName == nil { - invalidParams.Add(request.NewErrParamRequired("ModelName")) - } if s.VariantName == nil { invalidParams.Add(request.NewErrParamRequired("VariantName")) } @@ -98849,6 +104164,16 @@ invalidParams.AddNested("CoreDumpConfig", err.(request.ErrInvalidParams)) } } + if s.ManagedInstanceScaling != nil { + if err := s.ManagedInstanceScaling.Validate(); err != nil { + invalidParams.AddNested("ManagedInstanceScaling", err.(request.ErrInvalidParams)) + } + } + if s.RoutingConfig != nil { + if err := s.RoutingConfig.Validate(); err != nil { + invalidParams.AddNested("RoutingConfig", err.(request.ErrInvalidParams)) + } + } if s.ServerlessConfig != nil { if err := s.ServerlessConfig.Validate(); err != nil { invalidParams.AddNested("ServerlessConfig", err.(request.ErrInvalidParams)) @@ -98903,6 +104228,12 @@ return s } +// SetManagedInstanceScaling sets the ManagedInstanceScaling field's value. +func (s *ProductionVariant) SetManagedInstanceScaling(v *ProductionVariantManagedInstanceScaling) *ProductionVariant { + s.ManagedInstanceScaling = v + return s +} + // SetModelDataDownloadTimeoutInSeconds sets the ModelDataDownloadTimeoutInSeconds field's value. func (s *ProductionVariant) SetModelDataDownloadTimeoutInSeconds(v int64) *ProductionVariant { s.ModelDataDownloadTimeoutInSeconds = &v @@ -98915,6 +104246,12 @@ return s } +// SetRoutingConfig sets the RoutingConfig field's value. +func (s *ProductionVariant) SetRoutingConfig(v *ProductionVariantRoutingConfig) *ProductionVariant { + s.RoutingConfig = v + return s +} + // SetServerlessConfig sets the ServerlessConfig field's value. func (s *ProductionVariant) SetServerlessConfig(v *ProductionVariantServerlessConfig) *ProductionVariant { s.ServerlessConfig = v @@ -99015,6 +104352,128 @@ return s } +// Settings that control the range in the number of instances that the endpoint +// provisions as it scales up or down to accommodate traffic. +type ProductionVariantManagedInstanceScaling struct { + _ struct{} `type:"structure"` + + // The maximum number of instances that the endpoint can provision when it scales + // up to accommodate an increase in traffic. + MaxInstanceCount *int64 `min:"1" type:"integer"` + + // The minimum number of instances that the endpoint must retain when it scales + // down to accommodate a decrease in traffic. + MinInstanceCount *int64 `min:"1" type:"integer"` + + // Indicates whether managed instance scaling is enabled. + Status *string `type:"string" enum:"ManagedInstanceScalingStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProductionVariantManagedInstanceScaling) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProductionVariantManagedInstanceScaling) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProductionVariantManagedInstanceScaling) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProductionVariantManagedInstanceScaling"} + if s.MaxInstanceCount != nil && *s.MaxInstanceCount < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxInstanceCount", 1)) + } + if s.MinInstanceCount != nil && *s.MinInstanceCount < 1 { + invalidParams.Add(request.NewErrParamMinValue("MinInstanceCount", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxInstanceCount sets the MaxInstanceCount field's value. +func (s *ProductionVariantManagedInstanceScaling) SetMaxInstanceCount(v int64) *ProductionVariantManagedInstanceScaling { + s.MaxInstanceCount = &v + return s +} + +// SetMinInstanceCount sets the MinInstanceCount field's value. +func (s *ProductionVariantManagedInstanceScaling) SetMinInstanceCount(v int64) *ProductionVariantManagedInstanceScaling { + s.MinInstanceCount = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ProductionVariantManagedInstanceScaling) SetStatus(v string) *ProductionVariantManagedInstanceScaling { + s.Status = &v + return s +} + +// Settings that control how the endpoint routes incoming traffic to the instances +// that the endpoint hosts. +type ProductionVariantRoutingConfig struct { + _ struct{} `type:"structure"` + + // Sets how the endpoint routes incoming traffic: + // + // * LEAST_OUTSTANDING_REQUESTS: The endpoint routes requests to the specific + // instances that have more capacity to process them. + // + // * RANDOM: The endpoint routes each request to a randomly chosen instance. + // + // RoutingStrategy is a required field + RoutingStrategy *string `type:"string" required:"true" enum:"RoutingStrategy"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProductionVariantRoutingConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProductionVariantRoutingConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProductionVariantRoutingConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProductionVariantRoutingConfig"} + if s.RoutingStrategy == nil { + invalidParams.Add(request.NewErrParamRequired("RoutingStrategy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRoutingStrategy sets the RoutingStrategy field's value. +func (s *ProductionVariantRoutingConfig) SetRoutingStrategy(v string) *ProductionVariantRoutingConfig { + s.RoutingStrategy = &v + return s +} + // Specifies the serverless configuration for an endpoint variant. type ProductionVariantServerlessConfig struct { _ struct{} `type:"structure"` @@ -99256,6 +104715,14 @@ // request. DesiredWeight *float64 `type:"float"` + // Settings that control the range in the number of instances that the endpoint + // provisions as it scales up or down to accommodate traffic. + ManagedInstanceScaling *ProductionVariantManagedInstanceScaling `type:"structure"` + + // Settings that control how the endpoint routes incoming traffic to the instances + // that the endpoint hosts. + RoutingConfig *ProductionVariantRoutingConfig `type:"structure"` + // The name of the variant. // // VariantName is a required field @@ -99326,6 +104793,18 @@ return s } +// SetManagedInstanceScaling sets the ManagedInstanceScaling field's value. +func (s *ProductionVariantSummary) SetManagedInstanceScaling(v *ProductionVariantManagedInstanceScaling) *ProductionVariantSummary { + s.ManagedInstanceScaling = v + return s +} + +// SetRoutingConfig sets the RoutingConfig field's value. +func (s *ProductionVariantSummary) SetRoutingConfig(v *ProductionVariantRoutingConfig) *ProductionVariantSummary { + s.RoutingConfig = v + return s +} + // SetVariantName sets the VariantName field's value. func (s *ProductionVariantSummary) SetVariantName(v string) *ProductionVariantSummary { s.VariantName = &v @@ -100765,6 +106244,11 @@ } } } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -100876,6 +106360,11 @@ if s.DomainExecutionRoleArn != nil && len(*s.DomainExecutionRoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("DomainExecutionRoleArn", 20)) } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -100955,6 +106444,11 @@ if s.DomainExecutionRoleArn != nil && len(*s.DomainExecutionRoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("DomainExecutionRoleArn", 20)) } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -102590,7 +108084,8 @@ type ResolvedAttributes struct { _ struct{} `type:"structure"` - // Specifies a metric to minimize or maximize as the objective of a job. + // Specifies a metric to minimize or maximize as the objective of an AutoML + // job. AutoMLJobObjective *AutoMLJobObjective `type:"structure"` // How long a job is allowed to run, or how many candidates a job is allowed @@ -103216,6 +108711,9 @@ // The ARN of the SageMaker image that the image version belongs to. SageMakerImageArn *string `type:"string"` + // The SageMakerImageVersionAlias. + SageMakerImageVersionAlias *string `min:"1" type:"string"` + // The ARN of the image version created on the instance. SageMakerImageVersionArn *string `type:"string"` } @@ -103238,6 +108736,19 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResourceSpec) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResourceSpec"} + if s.SageMakerImageVersionAlias != nil && len(*s.SageMakerImageVersionAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SageMakerImageVersionAlias", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetInstanceType sets the InstanceType field's value. func (s *ResourceSpec) SetInstanceType(v string) *ResourceSpec { s.InstanceType = &v @@ -103256,6 +108767,12 @@ return s } +// SetSageMakerImageVersionAlias sets the SageMakerImageVersionAlias field's value. +func (s *ResourceSpec) SetSageMakerImageVersionAlias(v string) *ResourceSpec { + s.SageMakerImageVersionAlias = &v + return s +} + // SetSageMakerImageVersionArn sets the SageMakerImageVersionArn field's value. func (s *ResourceSpec) SetSageMakerImageVersionArn(v string) *ResourceSpec { s.SageMakerImageVersionArn = &v @@ -103750,6 +109267,13 @@ // CompressionType is a required field CompressionType *string `type:"string" required:"true" enum:"ModelCompressionType"` + // Specifies the access configuration file for the ML model. You can explicitly + // accept the model end-user license agreement (EULA) within the ModelAccessConfig. + // You are responsible for reviewing and complying with any applicable license + // terms and making sure they are acceptable for your use case before downloading + // or using a model. + ModelAccessConfig *ModelAccessConfig `type:"structure"` + // Specifies the type of ML model data to deploy. // // If you choose S3Prefix, S3Uri identifies a key name prefix. SageMaker uses @@ -103799,6 +109323,11 @@ if s.S3Uri == nil { invalidParams.Add(request.NewErrParamRequired("S3Uri")) } + if s.ModelAccessConfig != nil { + if err := s.ModelAccessConfig.Validate(); err != nil { + invalidParams.AddNested("ModelAccessConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -103812,6 +109341,12 @@ return s } +// SetModelAccessConfig sets the ModelAccessConfig field's value. +func (s *S3ModelDataSource) SetModelAccessConfig(v *ModelAccessConfig) *S3ModelDataSource { + s.ModelAccessConfig = v + return s +} + // SetS3DataType sets the S3DataType field's value. func (s *S3ModelDataSource) SetS3DataType(v string) *S3ModelDataSource { s.S3DataType = &v @@ -104059,6 +109594,9 @@ // // * If you want to start the job daily: cron(0 [00-23] ? * * *) // + // * If you want to run the job one time, immediately, use the following + // keyword: NOW + // // For example, the following are valid cron expressions: // // * Daily at noon UTC: cron(0 12 ? * * *) @@ -104813,8 +110351,10 @@ // input collaterals needed for the selected steps to run. The execution status // of the pipeline can be either Failed or Success. // - // SourcePipelineExecutionArn is a required field - SourcePipelineExecutionArn *string `type:"string" required:"true"` + // This field is required if the steps you specify for SelectedSteps depend + // on output collaterals from any non-specified pipeline steps. For more information, + // see Selective Execution for Pipeline Steps (https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-selective-ex.html). + SourcePipelineExecutionArn *string `type:"string"` } // String returns the string representation. @@ -104844,9 +110384,6 @@ if s.SelectedSteps != nil && len(s.SelectedSteps) < 1 { invalidParams.Add(request.NewErrParamMinLen("SelectedSteps", 1)) } - if s.SourcePipelineExecutionArn == nil { - invalidParams.Add(request.NewErrParamRequired("SourcePipelineExecutionArn")) - } if s.SelectedSteps != nil { for i, v := range s.SelectedSteps { if v == nil { @@ -105484,7 +111021,7 @@ return s } -// Specifies options for sharing SageMaker Studio notebooks. These settings +// Specifies options for sharing Amazon SageMaker Studio notebooks. These settings // are specified as part of DefaultUserSettings when the CreateDomain API is // called, and as part of UserSettings when the CreateUserProfile API is called. // When SharingSettings is not specified, notebook sharing isn't allowed. @@ -105785,6 +111322,54 @@ return s } +// The application settings for a Code Editor space. +type SpaceCodeEditorAppSettings struct { + _ struct{} `type:"structure"` + + // Specifies the ARN's of a SageMaker image and SageMaker image version, and + // the instance type that the version runs on. + DefaultResourceSpec *ResourceSpec `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 SpaceCodeEditorAppSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceCodeEditorAppSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SpaceCodeEditorAppSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SpaceCodeEditorAppSettings"} + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefaultResourceSpec sets the DefaultResourceSpec field's value. +func (s *SpaceCodeEditorAppSettings) SetDefaultResourceSpec(v *ResourceSpec) *SpaceCodeEditorAppSettings { + s.DefaultResourceSpec = v + return s +} + // The space's details. type SpaceDetails struct { _ struct{} `type:"structure"` @@ -105798,9 +111383,21 @@ // The last modified time. LastModifiedTime *time.Time `type:"timestamp"` + // Specifies summary information about the ownership settings. + OwnershipSettingsSummary *OwnershipSettingsSummary `type:"structure"` + + // The name of the space that appears in the Studio UI. + SpaceDisplayName *string `type:"string"` + // The name of the space. SpaceName *string `type:"string"` + // Specifies summary information about the space settings. + SpaceSettingsSummary *SpaceSettingsSummary `type:"structure"` + + // Specifies summary information about the space sharing settings. + SpaceSharingSettingsSummary *SpaceSharingSettingsSummary `type:"structure"` + // The status. Status *string `type:"string" enum:"SpaceStatus"` } @@ -105841,27 +111438,135 @@ return s } +// SetOwnershipSettingsSummary sets the OwnershipSettingsSummary field's value. +func (s *SpaceDetails) SetOwnershipSettingsSummary(v *OwnershipSettingsSummary) *SpaceDetails { + s.OwnershipSettingsSummary = v + return s +} + +// SetSpaceDisplayName sets the SpaceDisplayName field's value. +func (s *SpaceDetails) SetSpaceDisplayName(v string) *SpaceDetails { + s.SpaceDisplayName = &v + return s +} + // SetSpaceName sets the SpaceName field's value. func (s *SpaceDetails) SetSpaceName(v string) *SpaceDetails { s.SpaceName = &v return s } +// SetSpaceSettingsSummary sets the SpaceSettingsSummary field's value. +func (s *SpaceDetails) SetSpaceSettingsSummary(v *SpaceSettingsSummary) *SpaceDetails { + s.SpaceSettingsSummary = v + return s +} + +// SetSpaceSharingSettingsSummary sets the SpaceSharingSettingsSummary field's value. +func (s *SpaceDetails) SetSpaceSharingSettingsSummary(v *SpaceSharingSettingsSummary) *SpaceDetails { + s.SpaceSharingSettingsSummary = v + return s +} + // SetStatus sets the Status field's value. func (s *SpaceDetails) SetStatus(v string) *SpaceDetails { s.Status = &v return s } +// The settings for the JupyterLab application within a space. +type SpaceJupyterLabAppSettings struct { + _ struct{} `type:"structure"` + + // A list of Git repositories that SageMaker automatically displays to users + // for cloning in the JupyterLab application. + CodeRepositories []*CodeRepository `type:"list"` + + // Specifies the ARN's of a SageMaker image and SageMaker image version, and + // the instance type that the version runs on. + DefaultResourceSpec *ResourceSpec `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 SpaceJupyterLabAppSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceJupyterLabAppSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SpaceJupyterLabAppSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SpaceJupyterLabAppSettings"} + if s.CodeRepositories != nil { + for i, v := range s.CodeRepositories { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CodeRepositories", i), err.(request.ErrInvalidParams)) + } + } + } + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCodeRepositories sets the CodeRepositories field's value. +func (s *SpaceJupyterLabAppSettings) SetCodeRepositories(v []*CodeRepository) *SpaceJupyterLabAppSettings { + s.CodeRepositories = v + return s +} + +// SetDefaultResourceSpec sets the DefaultResourceSpec field's value. +func (s *SpaceJupyterLabAppSettings) SetDefaultResourceSpec(v *ResourceSpec) *SpaceJupyterLabAppSettings { + s.DefaultResourceSpec = v + return s +} + // A collection of space settings. type SpaceSettings struct { _ struct{} `type:"structure"` + // The type of app created within the space. + AppType *string `type:"string" enum:"AppType"` + + // The Code Editor application settings. + CodeEditorAppSettings *SpaceCodeEditorAppSettings `type:"structure"` + + // A file system, created by you, that you assign to a space for an Amazon SageMaker + // Domain. Permitted users can access this file system in Amazon SageMaker Studio. + CustomFileSystems []*CustomFileSystem `type:"list"` + + // The settings for the JupyterLab application. + JupyterLabAppSettings *SpaceJupyterLabAppSettings `type:"structure"` + // The JupyterServer app settings. JupyterServerAppSettings *JupyterServerAppSettings `type:"structure"` // The KernelGateway app settings. KernelGatewayAppSettings *KernelGatewayAppSettings `type:"structure"` + + // The storage settings for a private space. + SpaceStorageSettings *SpaceStorageSettings `type:"structure"` } // String returns the string representation. @@ -105885,6 +111590,26 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *SpaceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SpaceSettings"} + if s.CodeEditorAppSettings != nil { + if err := s.CodeEditorAppSettings.Validate(); err != nil { + invalidParams.AddNested("CodeEditorAppSettings", err.(request.ErrInvalidParams)) + } + } + if s.CustomFileSystems != nil { + for i, v := range s.CustomFileSystems { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomFileSystems", i), err.(request.ErrInvalidParams)) + } + } + } + if s.JupyterLabAppSettings != nil { + if err := s.JupyterLabAppSettings.Validate(); err != nil { + invalidParams.AddNested("JupyterLabAppSettings", err.(request.ErrInvalidParams)) + } + } if s.JupyterServerAppSettings != nil { if err := s.JupyterServerAppSettings.Validate(); err != nil { invalidParams.AddNested("JupyterServerAppSettings", err.(request.ErrInvalidParams)) @@ -105895,6 +111620,11 @@ invalidParams.AddNested("KernelGatewayAppSettings", err.(request.ErrInvalidParams)) } } + if s.SpaceStorageSettings != nil { + if err := s.SpaceStorageSettings.Validate(); err != nil { + invalidParams.AddNested("SpaceStorageSettings", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -105902,6 +111632,30 @@ return nil } +// SetAppType sets the AppType field's value. +func (s *SpaceSettings) SetAppType(v string) *SpaceSettings { + s.AppType = &v + return s +} + +// SetCodeEditorAppSettings sets the CodeEditorAppSettings field's value. +func (s *SpaceSettings) SetCodeEditorAppSettings(v *SpaceCodeEditorAppSettings) *SpaceSettings { + s.CodeEditorAppSettings = v + return s +} + +// SetCustomFileSystems sets the CustomFileSystems field's value. +func (s *SpaceSettings) SetCustomFileSystems(v []*CustomFileSystem) *SpaceSettings { + s.CustomFileSystems = v + return s +} + +// SetJupyterLabAppSettings sets the JupyterLabAppSettings field's value. +func (s *SpaceSettings) SetJupyterLabAppSettings(v *SpaceJupyterLabAppSettings) *SpaceSettings { + s.JupyterLabAppSettings = v + return s +} + // SetJupyterServerAppSettings sets the JupyterServerAppSettings field's value. func (s *SpaceSettings) SetJupyterServerAppSettings(v *JupyterServerAppSettings) *SpaceSettings { s.JupyterServerAppSettings = v @@ -105914,6 +111668,179 @@ return s } +// SetSpaceStorageSettings sets the SpaceStorageSettings field's value. +func (s *SpaceSettings) SetSpaceStorageSettings(v *SpaceStorageSettings) *SpaceSettings { + s.SpaceStorageSettings = v + return s +} + +// Specifies summary information about the space settings. +type SpaceSettingsSummary struct { + _ struct{} `type:"structure"` + + // The type of app created within the space. + AppType *string `type:"string" enum:"AppType"` + + // The storage settings for a private space. + SpaceStorageSettings *SpaceStorageSettings `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 SpaceSettingsSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceSettingsSummary) GoString() string { + return s.String() +} + +// SetAppType sets the AppType field's value. +func (s *SpaceSettingsSummary) SetAppType(v string) *SpaceSettingsSummary { + s.AppType = &v + return s +} + +// SetSpaceStorageSettings sets the SpaceStorageSettings field's value. +func (s *SpaceSettingsSummary) SetSpaceStorageSettings(v *SpaceStorageSettings) *SpaceSettingsSummary { + s.SpaceStorageSettings = v + return s +} + +// A collection of space sharing settings. +type SpaceSharingSettings struct { + _ struct{} `type:"structure"` + + // Specifies the sharing type of the space. + // + // SharingType is a required field + SharingType *string `type:"string" required:"true" enum:"SharingType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceSharingSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceSharingSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SpaceSharingSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SpaceSharingSettings"} + if s.SharingType == nil { + invalidParams.Add(request.NewErrParamRequired("SharingType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSharingType sets the SharingType field's value. +func (s *SpaceSharingSettings) SetSharingType(v string) *SpaceSharingSettings { + s.SharingType = &v + return s +} + +// Specifies summary information about the space sharing settings. +type SpaceSharingSettingsSummary struct { + _ struct{} `type:"structure"` + + // Specifies the sharing type of the space. + SharingType *string `type:"string" enum:"SharingType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceSharingSettingsSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceSharingSettingsSummary) GoString() string { + return s.String() +} + +// SetSharingType sets the SharingType field's value. +func (s *SpaceSharingSettingsSummary) SetSharingType(v string) *SpaceSharingSettingsSummary { + s.SharingType = &v + return s +} + +// The storage settings for a private space. +type SpaceStorageSettings struct { + _ struct{} `type:"structure"` + + // A collection of EBS storage settings for a private space. + EbsStorageSettings *EbsStorageSettings `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 SpaceStorageSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SpaceStorageSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SpaceStorageSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SpaceStorageSettings"} + if s.EbsStorageSettings != nil { + if err := s.EbsStorageSettings.Validate(); err != nil { + invalidParams.AddNested("EbsStorageSettings", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEbsStorageSettings sets the EbsStorageSettings field's value. +func (s *SpaceStorageSettings) SetEbsStorageSettings(v *EbsStorageSettings) *SpaceStorageSettings { + s.EbsStorageSettings = v + return s +} + // Defines the stairs traffic pattern for an Inference Recommender load test. // This pattern type consists of multiple steps where the number of users increases // at each step. @@ -107591,6 +113518,10 @@ _ struct{} `type:"structure"` // The maximum length of time, in seconds, that a training or compilation job + // can be pending before it is stopped. + MaxPendingTimeInSeconds *int64 `min:"7200" type:"integer"` + + // The maximum length of time, in seconds, that a training or compilation job // can run before it is stopped. // // For compilation jobs, if the job does not complete during this time, a TimeOut @@ -107640,6 +113571,9 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *StoppingCondition) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StoppingCondition"} + if s.MaxPendingTimeInSeconds != nil && *s.MaxPendingTimeInSeconds < 7200 { + invalidParams.Add(request.NewErrParamMinValue("MaxPendingTimeInSeconds", 7200)) + } if s.MaxRuntimeInSeconds != nil && *s.MaxRuntimeInSeconds < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxRuntimeInSeconds", 1)) } @@ -107653,6 +113587,12 @@ return nil } +// SetMaxPendingTimeInSeconds sets the MaxPendingTimeInSeconds field's value. +func (s *StoppingCondition) SetMaxPendingTimeInSeconds(v int64) *StoppingCondition { + s.MaxPendingTimeInSeconds = &v + return s +} + // SetMaxRuntimeInSeconds sets the MaxRuntimeInSeconds field's value. func (s *StoppingCondition) SetMaxRuntimeInSeconds(v int64) *StoppingCondition { s.MaxRuntimeInSeconds = &v @@ -107665,15 +113605,15 @@ return s } -// Details of the Studio Lifecycle Configuration. +// Details of the Amazon SageMaker Studio Lifecycle Configuration. type StudioLifecycleConfigDetails struct { _ struct{} `type:"structure"` - // The creation time of the Studio Lifecycle Configuration. + // The creation time of the Amazon SageMaker Studio Lifecycle Configuration. CreationTime *time.Time `type:"timestamp"` - // This value is equivalent to CreationTime because Studio Lifecycle Configurations - // are immutable. + // This value is equivalent to CreationTime because Amazon SageMaker Studio + // Lifecycle Configurations are immutable. LastModifiedTime *time.Time `type:"timestamp"` // The App type to which the Lifecycle Configuration is attached. @@ -107682,7 +113622,7 @@ // The Amazon Resource Name (ARN) of the Lifecycle Configuration. StudioLifecycleConfigArn *string `type:"string"` - // The name of the Studio Lifecycle Configuration. + // The name of the Amazon SageMaker Studio Lifecycle Configuration. StudioLifecycleConfigName *string `type:"string"` } @@ -107853,7 +113793,7 @@ return s } -// The collection of settings used by an AutoML job V2 for the TABULAR problem +// The collection of settings used by an AutoML job V2 for the tabular problem // type. type TabularJobConfig struct { _ struct{} `type:"structure"` @@ -108045,7 +113985,7 @@ return s } -// The resolved attributes specific to the TABULAR problem type. +// The resolved attributes specific to the tabular problem type. type TabularResolvedAttributes struct { _ struct{} `type:"structure"` @@ -108324,6 +114264,21 @@ return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *TensorBoardAppSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TensorBoardAppSettings"} + if s.DefaultResourceSpec != nil { + if err := s.DefaultResourceSpec.Validate(); err != nil { + invalidParams.AddNested("DefaultResourceSpec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetDefaultResourceSpec sets the DefaultResourceSpec field's value. func (s *TensorBoardAppSettings) SetDefaultResourceSpec(v *ResourceSpec) *TensorBoardAppSettings { s.DefaultResourceSpec = v @@ -108387,8 +114342,8 @@ return s } -// Stores the configuration information for the text classification problem -// of an AutoML job V2. +// The collection of settings used by an AutoML job V2 for the text classification +// problem type. type TextClassificationJobConfig struct { _ struct{} `type:"structure"` @@ -108472,6 +114427,142 @@ return s } +// The collection of settings used by an AutoML job V2 for the text generation +// problem type. +// +// The text generation models that support fine-tuning in Autopilot are currently +// accessible exclusively in regions supported by Canvas. Refer to the documentation +// of Canvas for the full list of its supported Regions (https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html). +type TextGenerationJobConfig struct { + _ struct{} `type:"structure"` + + // The name of the base model to fine-tune. Autopilot supports fine-tuning a + // variety of large language models. For information on the list of supported + // models, see Text generation models supporting fine-tuning in Autopilot (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-llms-finetuning-models.html#autopilot-llms-finetuning-supported-llms). + // If no BaseModelName is provided, the default model used is Falcon7BInstruct. + BaseModelName *string `min:"1" type:"string"` + + // How long a fine-tuning job is allowed to run. For TextGenerationJobConfig + // problem types, the MaxRuntimePerTrainingJobInSeconds attribute of AutoMLJobCompletionCriteria + // defaults to 72h (259200s). + CompletionCriteria *AutoMLJobCompletionCriteria `type:"structure"` + + // The hyperparameters used to configure and optimize the learning process of + // the base model. You can set any combination of the following hyperparameters + // for all base models. For more information on each supported hyperparameter, + // see Optimize the learning process of your text generation models with hyperparameters + // (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-llms-finetuning-set-hyperparameters.html). + // + // * "epochCount": The number of times the model goes through the entire + // training dataset. Its value should be a string containing an integer value + // within the range of "1" to "10". + // + // * "batchSize": The number of data samples used in each iteration of training. + // Its value should be a string containing an integer value within the range + // of "1" to "64". + // + // * "learningRate": The step size at which a model's parameters are updated + // during training. Its value should be a string containing a floating-point + // value within the range of "0" to "1". + // + // * "learningRateWarmupSteps": The number of training steps during which + // the learning rate gradually increases before reaching its target or maximum + // value. Its value should be a string containing an integer value within + // the range of "0" to "250". + // + // Here is an example where all four hyperparameters are configured. + // + // { "epochCount":"5", "learningRate":"0.5", "batchSize": "32", "learningRateWarmupSteps": + // "10" } + TextGenerationHyperParameters map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextGenerationJobConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextGenerationJobConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TextGenerationJobConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TextGenerationJobConfig"} + if s.BaseModelName != nil && len(*s.BaseModelName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaseModelName", 1)) + } + if s.CompletionCriteria != nil { + if err := s.CompletionCriteria.Validate(); err != nil { + invalidParams.AddNested("CompletionCriteria", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaseModelName sets the BaseModelName field's value. +func (s *TextGenerationJobConfig) SetBaseModelName(v string) *TextGenerationJobConfig { + s.BaseModelName = &v + return s +} + +// SetCompletionCriteria sets the CompletionCriteria field's value. +func (s *TextGenerationJobConfig) SetCompletionCriteria(v *AutoMLJobCompletionCriteria) *TextGenerationJobConfig { + s.CompletionCriteria = v + return s +} + +// SetTextGenerationHyperParameters sets the TextGenerationHyperParameters field's value. +func (s *TextGenerationJobConfig) SetTextGenerationHyperParameters(v map[string]*string) *TextGenerationJobConfig { + s.TextGenerationHyperParameters = v + return s +} + +// The resolved attributes specific to the text generation problem type. +type TextGenerationResolvedAttributes struct { + _ struct{} `type:"structure"` + + // The name of the base model to fine-tune. + BaseModelName *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextGenerationResolvedAttributes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TextGenerationResolvedAttributes) GoString() string { + return s.String() +} + +// SetBaseModelName sets the BaseModelName field's value. +func (s *TextGenerationResolvedAttributes) SetBaseModelName(v string) *TextGenerationResolvedAttributes { + s.BaseModelName = &v + return s +} + // The collection of components that defines the time-series. type TimeSeriesConfig struct { _ struct{} `type:"structure"` @@ -108642,7 +114733,7 @@ // is not provided, the AutoML job uses the quantiles p10, p50, and p90 as default. ForecastQuantiles []*string `min:"1" type:"list"` - // The collection of holidays featurization attributes used to incorporate national + // The collection of holiday featurization attributes used to incorporate national // holiday information into your forecasting model. HolidayConfig []*HolidayConfigAttributes `min:"1" type:"list"` @@ -110092,6 +116183,9 @@ type TrainingSpecification struct { _ struct{} `type:"structure"` + // The additional data source used during the training job. + AdditionalS3DataSource *AdditionalS3DataSource `type:"structure"` + // A list of MetricDefinition objects, which are used for parsing metrics generated // by the algorithm. MetricDefinitions []*MetricDefinition `type:"list"` @@ -110164,6 +116258,11 @@ if s.TrainingImage == nil { invalidParams.Add(request.NewErrParamRequired("TrainingImage")) } + if s.AdditionalS3DataSource != nil { + if err := s.AdditionalS3DataSource.Validate(); err != nil { + invalidParams.AddNested("AdditionalS3DataSource", err.(request.ErrInvalidParams)) + } + } if s.MetricDefinitions != nil { for i, v := range s.MetricDefinitions { if v == nil { @@ -110211,6 +116310,12 @@ return nil } +// SetAdditionalS3DataSource sets the AdditionalS3DataSource field's value. +func (s *TrainingSpecification) SetAdditionalS3DataSource(v *AdditionalS3DataSource) *TrainingSpecification { + s.AdditionalS3DataSource = v + return s +} + // SetMetricDefinitions sets the MetricDefinitions field's value. func (s *TrainingSpecification) SetMetricDefinitions(v []*MetricDefinition) *TrainingSpecification { s.MetricDefinitions = v @@ -112820,6 +118925,9 @@ // AppImageConfigName is a required field AppImageConfigName *string `type:"string" required:"true"` + // The JupyterLab app running on the image. + JupyterLabAppImageConfig *JupyterLabAppImageConfig `type:"structure"` + // The new KernelGateway app to run on the image. KernelGatewayImageConfig *KernelGatewayImageConfig `type:"structure"` } @@ -112866,6 +118974,12 @@ return s } +// SetJupyterLabAppImageConfig sets the JupyterLabAppImageConfig field's value. +func (s *UpdateAppImageConfigInput) SetJupyterLabAppImageConfig(v *JupyterLabAppImageConfig) *UpdateAppImageConfigInput { + s.JupyterLabAppImageConfig = v + return s +} + // SetKernelGatewayImageConfig sets the KernelGatewayImageConfig field's value. func (s *UpdateAppImageConfigInput) SetKernelGatewayImageConfig(v *KernelGatewayImageConfig) *UpdateAppImageConfigInput { s.KernelGatewayImageConfig = v @@ -113010,6 +119124,112 @@ return s } +type UpdateClusterInput struct { + _ struct{} `type:"structure"` + + // Specify the name of the SageMaker HyperPod cluster you want to update. + // + // ClusterName is a required field + ClusterName *string `type:"string" required:"true"` + + // Specify the instance groups to update. + // + // InstanceGroups is a required field + InstanceGroups []*ClusterInstanceGroupSpecification `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateClusterInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.InstanceGroups == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceGroups")) + } + if s.InstanceGroups != nil && len(s.InstanceGroups) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceGroups", 1)) + } + if s.InstanceGroups != nil { + for i, v := range s.InstanceGroups { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *UpdateClusterInput) SetClusterName(v string) *UpdateClusterInput { + s.ClusterName = &v + return s +} + +// SetInstanceGroups sets the InstanceGroups field's value. +func (s *UpdateClusterInput) SetInstanceGroups(v []*ClusterInstanceGroupSpecification) *UpdateClusterInput { + s.InstanceGroups = v + return s +} + +type UpdateClusterOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the updated SageMaker HyperPod cluster. + // + // ClusterArn is a required field + ClusterArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateClusterOutput) GoString() string { + return s.String() +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *UpdateClusterOutput) SetClusterArn(v string) *UpdateClusterOutput { + s.ClusterArn = &v + return s +} + type UpdateCodeRepositoryInput struct { _ struct{} `type:"structure"` @@ -113443,6 +119663,19 @@ type UpdateDomainInput struct { _ struct{} `type:"structure"` + // Specifies the VPC used for non-EFS traffic. + // + // * PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon + // SageMaker, which allows direct internet access. + // + // * VpcOnly - All Studio traffic is through the specified VPC and subnets. + // + // This configuration can only be modified if there are no apps in the InService, + // Pending, or Deleting state. The configuration cannot be updated if DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn + // is already set or DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn + // is provided as part of the same request. + AppNetworkAccessType *string `type:"string" enum:"AppNetworkAccessType"` + // The entity that creates and manages the required security groups for inter-app // communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType // is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn @@ -113463,6 +119696,12 @@ // A collection of DomainSettings configuration values to update. DomainSettingsForUpdate *DomainSettingsForUpdate `type:"structure"` + + // The VPC subnets that Studio uses for communication. + // + // If removing subnets, ensure there are no apps in the InService, Pending, + // or Deleting state. + SubnetIds []*string `min:"1" type:"list"` } // String returns the string representation. @@ -113489,6 +119728,9 @@ if s.DomainId == nil { invalidParams.Add(request.NewErrParamRequired("DomainId")) } + if s.SubnetIds != nil && len(s.SubnetIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SubnetIds", 1)) + } if s.DefaultSpaceSettings != nil { if err := s.DefaultSpaceSettings.Validate(); err != nil { invalidParams.AddNested("DefaultSpaceSettings", err.(request.ErrInvalidParams)) @@ -113511,6 +119753,12 @@ return nil } +// SetAppNetworkAccessType sets the AppNetworkAccessType field's value. +func (s *UpdateDomainInput) SetAppNetworkAccessType(v string) *UpdateDomainInput { + s.AppNetworkAccessType = &v + return s +} + // SetAppSecurityGroupManagement sets the AppSecurityGroupManagement field's value. func (s *UpdateDomainInput) SetAppSecurityGroupManagement(v string) *UpdateDomainInput { s.AppSecurityGroupManagement = &v @@ -113541,6 +119789,12 @@ return s } +// SetSubnetIds sets the SubnetIds field's value. +func (s *UpdateDomainInput) SetSubnetIds(v []*string) *UpdateDomainInput { + s.SubnetIds = v + return s +} + type UpdateDomainOutput struct { _ struct{} `type:"structure"` @@ -114632,6 +120886,212 @@ return s } +type UpdateInferenceComponentInput struct { + _ struct{} `type:"structure"` + + // The name of the inference component. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` + + // Runtime settings for a model that is deployed with an inference component. + RuntimeConfig *InferenceComponentRuntimeConfig `type:"structure"` + + // Details about the resources to deploy with this inference component, including + // the model, container, and compute resources. + Specification *InferenceComponentSpecification `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 UpdateInferenceComponentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateInferenceComponentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateInferenceComponentInput"} + if s.InferenceComponentName == nil { + invalidParams.Add(request.NewErrParamRequired("InferenceComponentName")) + } + if s.RuntimeConfig != nil { + if err := s.RuntimeConfig.Validate(); err != nil { + invalidParams.AddNested("RuntimeConfig", err.(request.ErrInvalidParams)) + } + } + if s.Specification != nil { + if err := s.Specification.Validate(); err != nil { + invalidParams.AddNested("Specification", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *UpdateInferenceComponentInput) SetInferenceComponentName(v string) *UpdateInferenceComponentInput { + s.InferenceComponentName = &v + return s +} + +// SetRuntimeConfig sets the RuntimeConfig field's value. +func (s *UpdateInferenceComponentInput) SetRuntimeConfig(v *InferenceComponentRuntimeConfig) *UpdateInferenceComponentInput { + s.RuntimeConfig = v + return s +} + +// SetSpecification sets the Specification field's value. +func (s *UpdateInferenceComponentInput) SetSpecification(v *InferenceComponentSpecification) *UpdateInferenceComponentInput { + s.Specification = v + return s +} + +type UpdateInferenceComponentOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the inference component. + // + // InferenceComponentArn is a required field + InferenceComponentArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentOutput) GoString() string { + return s.String() +} + +// SetInferenceComponentArn sets the InferenceComponentArn field's value. +func (s *UpdateInferenceComponentOutput) SetInferenceComponentArn(v string) *UpdateInferenceComponentOutput { + s.InferenceComponentArn = &v + return s +} + +type UpdateInferenceComponentRuntimeConfigInput struct { + _ struct{} `type:"structure"` + + // Runtime settings for a model that is deployed with an inference component. + // + // DesiredRuntimeConfig is a required field + DesiredRuntimeConfig *InferenceComponentRuntimeConfig `type:"structure" required:"true"` + + // The name of the inference component to update. + // + // InferenceComponentName is a required field + InferenceComponentName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentRuntimeConfigInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentRuntimeConfigInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateInferenceComponentRuntimeConfigInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateInferenceComponentRuntimeConfigInput"} + if s.DesiredRuntimeConfig == nil { + invalidParams.Add(request.NewErrParamRequired("DesiredRuntimeConfig")) + } + if s.InferenceComponentName == nil { + invalidParams.Add(request.NewErrParamRequired("InferenceComponentName")) + } + if s.DesiredRuntimeConfig != nil { + if err := s.DesiredRuntimeConfig.Validate(); err != nil { + invalidParams.AddNested("DesiredRuntimeConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDesiredRuntimeConfig sets the DesiredRuntimeConfig field's value. +func (s *UpdateInferenceComponentRuntimeConfigInput) SetDesiredRuntimeConfig(v *InferenceComponentRuntimeConfig) *UpdateInferenceComponentRuntimeConfigInput { + s.DesiredRuntimeConfig = v + return s +} + +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *UpdateInferenceComponentRuntimeConfigInput) SetInferenceComponentName(v string) *UpdateInferenceComponentRuntimeConfigInput { + s.InferenceComponentName = &v + return s +} + +type UpdateInferenceComponentRuntimeConfigOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the inference component. + // + // InferenceComponentArn is a required field + InferenceComponentArn *string `min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentRuntimeConfigOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInferenceComponentRuntimeConfigOutput) GoString() string { + return s.String() +} + +// SetInferenceComponentArn sets the InferenceComponentArn field's value. +func (s *UpdateInferenceComponentRuntimeConfigOutput) SetInferenceComponentArn(v string) *UpdateInferenceComponentRuntimeConfigOutput { + s.InferenceComponentArn = &v + return s +} + type UpdateInferenceExperimentInput struct { _ struct{} `type:"structure"` @@ -116063,6 +122523,9 @@ // DomainId is a required field DomainId *string `type:"string" required:"true"` + // The name of the space that appears in the Amazon SageMaker Studio UI. + SpaceDisplayName *string `type:"string"` + // The name of the space. // // SpaceName is a required field @@ -116117,6 +122580,12 @@ return s } +// SetSpaceDisplayName sets the SpaceDisplayName field's value. +func (s *UpdateSpaceInput) SetSpaceDisplayName(v string) *UpdateSpaceInput { + s.SpaceDisplayName = &v + return s +} + // SetSpaceName sets the SpaceName field's value. func (s *UpdateSpaceInput) SetSpaceName(v string) *UpdateSpaceInput { s.SpaceName = &v @@ -117092,9 +123561,9 @@ return s } -// A collection of settings that apply to users of Amazon SageMaker Studio. -// These settings are specified when the CreateUserProfile API is called, and -// as DefaultUserSettings when the CreateDomain API is called. +// A collection of settings that apply to users in a domain. These settings +// are specified when the CreateUserProfile API is called, and as DefaultUserSettings +// when the CreateDomain API is called. // // SecurityGroups is aggregated when specified in both calls. For all other // settings in UserSettings, the values specified in CreateUserProfile take @@ -117105,9 +123574,31 @@ // The Canvas app settings. CanvasAppSettings *CanvasAppSettings `type:"structure"` + // The Code Editor application settings. + CodeEditorAppSettings *CodeEditorAppSettings `type:"structure"` + + // The settings for assigning a custom file system to a user profile. Permitted + // users can access this file system in Amazon SageMaker Studio. + CustomFileSystemConfigs []*CustomFileSystemConfig `type:"list"` + + // Details about the POSIX identity that is used for file system operations. + CustomPosixUserConfig *CustomPosixUserConfig `type:"structure"` + + // The default experience that the user is directed to when accessing the domain. + // The supported values are: + // + // * studio::: Indicates that Studio is the default experience. This value + // can only be passed if StudioWebPortal is set to ENABLED. + // + // * app:JupyterServer:: Indicates that Studio Classic is the default experience. + DefaultLandingUri *string `type:"string"` + // The execution role for the user. ExecutionRole *string `min:"20" type:"string"` + // The settings for the JupyterLab application. + JupyterLabAppSettings *JupyterLabAppSettings `type:"structure"` + // The Jupyter server's app settings. JupyterServerAppSettings *JupyterServerAppSettings `type:"structure"` @@ -117121,7 +123612,7 @@ // app. RStudioServerProAppSettings *RStudioServerProAppSettings `type:"structure"` - // The security groups for the Amazon Virtual Private Cloud (VPC) that Studio + // The security groups for the Amazon Virtual Private Cloud (VPC) that the domain // uses for communication. // // Optional when the CreateDomain.AppNetworkAccessType parameter is set to PublicInternetOnly. @@ -117129,14 +123620,22 @@ // Required when the CreateDomain.AppNetworkAccessType parameter is set to VpcOnly, // unless specified as part of the DefaultUserSettings for the domain. // - // Amazon SageMaker adds a security group to allow NFS traffic from SageMaker + // Amazon SageMaker adds a security group to allow NFS traffic from Amazon SageMaker // Studio. Therefore, the number of security groups that you can specify is // one less than the maximum number shown. SecurityGroups []*string `type:"list"` - // Specifies options for sharing SageMaker Studio notebooks. + // Specifies options for sharing Amazon SageMaker Studio notebooks. SharingSettings *SharingSettings `type:"structure"` + // The storage settings for a private space. + SpaceStorageSettings *DefaultSpaceStorageSettings `type:"structure"` + + // Whether the user can access Studio. If this value is set to DISABLED, the + // user cannot access Studio, even if that is the default experience for the + // domain. + StudioWebPortal *string `type:"string" enum:"StudioWebPortal"` + // The TensorBoard app settings. TensorBoardAppSettings *TensorBoardAppSettings `type:"structure"` } @@ -117170,6 +123669,31 @@ invalidParams.AddNested("CanvasAppSettings", err.(request.ErrInvalidParams)) } } + if s.CodeEditorAppSettings != nil { + if err := s.CodeEditorAppSettings.Validate(); err != nil { + invalidParams.AddNested("CodeEditorAppSettings", err.(request.ErrInvalidParams)) + } + } + if s.CustomFileSystemConfigs != nil { + for i, v := range s.CustomFileSystemConfigs { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomFileSystemConfigs", i), err.(request.ErrInvalidParams)) + } + } + } + if s.CustomPosixUserConfig != nil { + if err := s.CustomPosixUserConfig.Validate(); err != nil { + invalidParams.AddNested("CustomPosixUserConfig", err.(request.ErrInvalidParams)) + } + } + if s.JupyterLabAppSettings != nil { + if err := s.JupyterLabAppSettings.Validate(); err != nil { + invalidParams.AddNested("JupyterLabAppSettings", err.(request.ErrInvalidParams)) + } + } if s.JupyterServerAppSettings != nil { if err := s.JupyterServerAppSettings.Validate(); err != nil { invalidParams.AddNested("JupyterServerAppSettings", err.(request.ErrInvalidParams)) @@ -117185,6 +123709,16 @@ invalidParams.AddNested("RSessionAppSettings", err.(request.ErrInvalidParams)) } } + if s.SpaceStorageSettings != nil { + if err := s.SpaceStorageSettings.Validate(); err != nil { + invalidParams.AddNested("SpaceStorageSettings", err.(request.ErrInvalidParams)) + } + } + if s.TensorBoardAppSettings != nil { + if err := s.TensorBoardAppSettings.Validate(); err != nil { + invalidParams.AddNested("TensorBoardAppSettings", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -117198,12 +123732,42 @@ return s } +// SetCodeEditorAppSettings sets the CodeEditorAppSettings field's value. +func (s *UserSettings) SetCodeEditorAppSettings(v *CodeEditorAppSettings) *UserSettings { + s.CodeEditorAppSettings = v + return s +} + +// SetCustomFileSystemConfigs sets the CustomFileSystemConfigs field's value. +func (s *UserSettings) SetCustomFileSystemConfigs(v []*CustomFileSystemConfig) *UserSettings { + s.CustomFileSystemConfigs = v + return s +} + +// SetCustomPosixUserConfig sets the CustomPosixUserConfig field's value. +func (s *UserSettings) SetCustomPosixUserConfig(v *CustomPosixUserConfig) *UserSettings { + s.CustomPosixUserConfig = v + return s +} + +// SetDefaultLandingUri sets the DefaultLandingUri field's value. +func (s *UserSettings) SetDefaultLandingUri(v string) *UserSettings { + s.DefaultLandingUri = &v + return s +} + // SetExecutionRole sets the ExecutionRole field's value. func (s *UserSettings) SetExecutionRole(v string) *UserSettings { s.ExecutionRole = &v return s } +// SetJupyterLabAppSettings sets the JupyterLabAppSettings field's value. +func (s *UserSettings) SetJupyterLabAppSettings(v *JupyterLabAppSettings) *UserSettings { + s.JupyterLabAppSettings = v + return s +} + // SetJupyterServerAppSettings sets the JupyterServerAppSettings field's value. func (s *UserSettings) SetJupyterServerAppSettings(v *JupyterServerAppSettings) *UserSettings { s.JupyterServerAppSettings = v @@ -117240,6 +123804,18 @@ return s } +// SetSpaceStorageSettings sets the SpaceStorageSettings field's value. +func (s *UserSettings) SetSpaceStorageSettings(v *DefaultSpaceStorageSettings) *UserSettings { + s.SpaceStorageSettings = v + return s +} + +// SetStudioWebPortal sets the StudioWebPortal field's value. +func (s *UserSettings) SetStudioWebPortal(v string) *UserSettings { + s.StudioWebPortal = &v + return s +} + // SetTensorBoardAppSettings sets the TensorBoardAppSettings field's value. func (s *UserSettings) SetTensorBoardAppSettings(v *TensorBoardAppSettings) *UserSettings { s.TensorBoardAppSettings = v @@ -117308,6 +123884,56 @@ return s } +// Configuration for your vector collection type. +type VectorConfig struct { + _ struct{} `type:"structure"` + + // The number of elements in your vector. + // + // Dimension is a required field + Dimension *int64 `min:"1" type:"integer" 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 VectorConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VectorConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VectorConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VectorConfig"} + if s.Dimension == nil { + invalidParams.Add(request.NewErrParamRequired("Dimension")) + } + if s.Dimension != nil && *s.Dimension < 1 { + invalidParams.Add(request.NewErrParamMinValue("Dimension", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDimension sets the Dimension field's value. +func (s *VectorConfig) SetDimension(v int64) *VectorConfig { + s.Dimension = &v + return s +} + // A lineage entity connected to the starting entity(ies). type Vertex struct { _ struct{} `type:"structure"` @@ -117359,11 +123985,10 @@ return s } -// Specifies a VPC that your training jobs and hosted models have access to. -// Control access to and from your training and model containers by configuring -// the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual -// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) -// and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). +// Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, +// hosted models, and compute resources have access to. You can control access +// to and from your resources by configuring a VPC. For more information, see +// Give SageMaker Access to Resources in your Amazon VPC (https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). type VpcConfig struct { _ struct{} `type:"structure"` @@ -117979,6 +124604,18 @@ } const ( + // AdditionalS3DataSourceDataTypeS3object is a AdditionalS3DataSourceDataType enum value + AdditionalS3DataSourceDataTypeS3object = "S3Object" +) + +// AdditionalS3DataSourceDataType_Values returns all elements of the AdditionalS3DataSourceDataType enum +func AdditionalS3DataSourceDataType_Values() []string { + return []string{ + AdditionalS3DataSourceDataTypeS3object, + } +} + +const ( // AggregationTransformationValueSum is a AggregationTransformationValue enum value AggregationTransformationValueSum = "sum" @@ -118250,6 +124887,15 @@ // AppInstanceTypeMlP4de24xlarge is a AppInstanceType enum value AppInstanceTypeMlP4de24xlarge = "ml.p4de.24xlarge" + + // AppInstanceTypeMlTrn12xlarge is a AppInstanceType enum value + AppInstanceTypeMlTrn12xlarge = "ml.trn1.2xlarge" + + // AppInstanceTypeMlTrn132xlarge is a AppInstanceType enum value + AppInstanceTypeMlTrn132xlarge = "ml.trn1.32xlarge" + + // AppInstanceTypeMlTrn1n32xlarge is a AppInstanceType enum value + AppInstanceTypeMlTrn1n32xlarge = "ml.trn1n.32xlarge" ) // AppInstanceType_Values returns all elements of the AppInstanceType enum @@ -118315,6 +124961,9 @@ AppInstanceTypeMlGeospatialInteractive, AppInstanceTypeMlP4d24xlarge, AppInstanceTypeMlP4de24xlarge, + AppInstanceTypeMlTrn12xlarge, + AppInstanceTypeMlTrn132xlarge, + AppInstanceTypeMlTrn1n32xlarge, } } @@ -118405,6 +125054,12 @@ // AppTypeRsessionGateway is a AppType enum value AppTypeRsessionGateway = "RSessionGateway" + + // AppTypeJupyterLab is a AppType enum value + AppTypeJupyterLab = "JupyterLab" + + // AppTypeCodeEditor is a AppType enum value + AppTypeCodeEditor = "CodeEditor" ) // AppType_Values returns all elements of the AppType enum @@ -118415,6 +125070,8 @@ AppTypeTensorBoard, AppTypeRstudioServerPro, AppTypeRsessionGateway, + AppTypeJupyterLab, + AppTypeCodeEditor, } } @@ -118885,6 +125542,27 @@ // AutoMLMetricExtendedEnumAverageWeightedQuantileLoss is a AutoMLMetricExtendedEnum enum value AutoMLMetricExtendedEnumAverageWeightedQuantileLoss = "AverageWeightedQuantileLoss" + + // AutoMLMetricExtendedEnumRouge1 is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumRouge1 = "Rouge1" + + // AutoMLMetricExtendedEnumRouge2 is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumRouge2 = "Rouge2" + + // AutoMLMetricExtendedEnumRougeL is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumRougeL = "RougeL" + + // AutoMLMetricExtendedEnumRougeLsum is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumRougeLsum = "RougeLSum" + + // AutoMLMetricExtendedEnumPerplexity is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumPerplexity = "Perplexity" + + // AutoMLMetricExtendedEnumValidationLoss is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumValidationLoss = "ValidationLoss" + + // AutoMLMetricExtendedEnumTrainingLoss is a AutoMLMetricExtendedEnum enum value + AutoMLMetricExtendedEnumTrainingLoss = "TrainingLoss" ) // AutoMLMetricExtendedEnum_Values returns all elements of the AutoMLMetricExtendedEnum enum @@ -118909,6 +125587,13 @@ AutoMLMetricExtendedEnumMase, AutoMLMetricExtendedEnumWape, AutoMLMetricExtendedEnumAverageWeightedQuantileLoss, + AutoMLMetricExtendedEnumRouge1, + AutoMLMetricExtendedEnumRouge2, + AutoMLMetricExtendedEnumRougeL, + AutoMLMetricExtendedEnumRougeLsum, + AutoMLMetricExtendedEnumPerplexity, + AutoMLMetricExtendedEnumValidationLoss, + AutoMLMetricExtendedEnumTrainingLoss, } } @@ -118944,6 +125629,9 @@ // AutoMLProblemTypeConfigNameTimeSeriesForecasting is a AutoMLProblemTypeConfigName enum value AutoMLProblemTypeConfigNameTimeSeriesForecasting = "TimeSeriesForecasting" + + // AutoMLProblemTypeConfigNameTextGeneration is a AutoMLProblemTypeConfigName enum value + AutoMLProblemTypeConfigNameTextGeneration = "TextGeneration" ) // AutoMLProblemTypeConfigName_Values returns all elements of the AutoMLProblemTypeConfigName enum @@ -118953,6 +125641,7 @@ AutoMLProblemTypeConfigNameTextClassification, AutoMLProblemTypeConfigNameTabular, AutoMLProblemTypeConfigNameTimeSeriesForecasting, + AutoMLProblemTypeConfigNameTextGeneration, } } @@ -119493,6 +126182,246 @@ } const ( + // ClusterInstanceStatusRunning is a ClusterInstanceStatus enum value + ClusterInstanceStatusRunning = "Running" + + // ClusterInstanceStatusFailure is a ClusterInstanceStatus enum value + ClusterInstanceStatusFailure = "Failure" + + // ClusterInstanceStatusPending is a ClusterInstanceStatus enum value + ClusterInstanceStatusPending = "Pending" + + // ClusterInstanceStatusShuttingDown is a ClusterInstanceStatus enum value + ClusterInstanceStatusShuttingDown = "ShuttingDown" + + // ClusterInstanceStatusSystemUpdating is a ClusterInstanceStatus enum value + ClusterInstanceStatusSystemUpdating = "SystemUpdating" +) + +// ClusterInstanceStatus_Values returns all elements of the ClusterInstanceStatus enum +func ClusterInstanceStatus_Values() []string { + return []string{ + ClusterInstanceStatusRunning, + ClusterInstanceStatusFailure, + ClusterInstanceStatusPending, + ClusterInstanceStatusShuttingDown, + ClusterInstanceStatusSystemUpdating, + } +} + +const ( + // ClusterInstanceTypeMlP4d24xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlP4d24xlarge = "ml.p4d.24xlarge" + + // ClusterInstanceTypeMlP4de24xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlP4de24xlarge = "ml.p4de.24xlarge" + + // ClusterInstanceTypeMlP548xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlP548xlarge = "ml.p5.48xlarge" + + // ClusterInstanceTypeMlTrn132xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlTrn132xlarge = "ml.trn1.32xlarge" + + // ClusterInstanceTypeMlTrn1n32xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlTrn1n32xlarge = "ml.trn1n.32xlarge" + + // ClusterInstanceTypeMlG5Xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG5Xlarge = "ml.g5.xlarge" + + // ClusterInstanceTypeMlG52xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG52xlarge = "ml.g5.2xlarge" + + // ClusterInstanceTypeMlG54xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG54xlarge = "ml.g5.4xlarge" + + // ClusterInstanceTypeMlG58xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG58xlarge = "ml.g5.8xlarge" + + // ClusterInstanceTypeMlG512xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG512xlarge = "ml.g5.12xlarge" + + // ClusterInstanceTypeMlG516xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG516xlarge = "ml.g5.16xlarge" + + // ClusterInstanceTypeMlG524xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG524xlarge = "ml.g5.24xlarge" + + // ClusterInstanceTypeMlG548xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlG548xlarge = "ml.g5.48xlarge" + + // ClusterInstanceTypeMlC5Large is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5Large = "ml.c5.large" + + // ClusterInstanceTypeMlC5Xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5Xlarge = "ml.c5.xlarge" + + // ClusterInstanceTypeMlC52xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC52xlarge = "ml.c5.2xlarge" + + // ClusterInstanceTypeMlC54xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC54xlarge = "ml.c5.4xlarge" + + // ClusterInstanceTypeMlC59xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC59xlarge = "ml.c5.9xlarge" + + // ClusterInstanceTypeMlC512xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC512xlarge = "ml.c5.12xlarge" + + // ClusterInstanceTypeMlC518xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC518xlarge = "ml.c5.18xlarge" + + // ClusterInstanceTypeMlC524xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC524xlarge = "ml.c5.24xlarge" + + // ClusterInstanceTypeMlC5nLarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5nLarge = "ml.c5n.large" + + // ClusterInstanceTypeMlC5n2xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5n2xlarge = "ml.c5n.2xlarge" + + // ClusterInstanceTypeMlC5n4xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5n4xlarge = "ml.c5n.4xlarge" + + // ClusterInstanceTypeMlC5n9xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5n9xlarge = "ml.c5n.9xlarge" + + // ClusterInstanceTypeMlC5n18xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlC5n18xlarge = "ml.c5n.18xlarge" + + // ClusterInstanceTypeMlM5Large is a ClusterInstanceType enum value + ClusterInstanceTypeMlM5Large = "ml.m5.large" + + // ClusterInstanceTypeMlM5Xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM5Xlarge = "ml.m5.xlarge" + + // ClusterInstanceTypeMlM52xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM52xlarge = "ml.m5.2xlarge" + + // ClusterInstanceTypeMlM54xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM54xlarge = "ml.m5.4xlarge" + + // ClusterInstanceTypeMlM58xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM58xlarge = "ml.m5.8xlarge" + + // ClusterInstanceTypeMlM512xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM512xlarge = "ml.m5.12xlarge" + + // ClusterInstanceTypeMlM516xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM516xlarge = "ml.m5.16xlarge" + + // ClusterInstanceTypeMlM524xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlM524xlarge = "ml.m5.24xlarge" + + // ClusterInstanceTypeMlT3Medium is a ClusterInstanceType enum value + ClusterInstanceTypeMlT3Medium = "ml.t3.medium" + + // ClusterInstanceTypeMlT3Large is a ClusterInstanceType enum value + ClusterInstanceTypeMlT3Large = "ml.t3.large" + + // ClusterInstanceTypeMlT3Xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlT3Xlarge = "ml.t3.xlarge" + + // ClusterInstanceTypeMlT32xlarge is a ClusterInstanceType enum value + ClusterInstanceTypeMlT32xlarge = "ml.t3.2xlarge" +) + +// ClusterInstanceType_Values returns all elements of the ClusterInstanceType enum +func ClusterInstanceType_Values() []string { + return []string{ + ClusterInstanceTypeMlP4d24xlarge, + ClusterInstanceTypeMlP4de24xlarge, + ClusterInstanceTypeMlP548xlarge, + ClusterInstanceTypeMlTrn132xlarge, + ClusterInstanceTypeMlTrn1n32xlarge, + ClusterInstanceTypeMlG5Xlarge, + ClusterInstanceTypeMlG52xlarge, + ClusterInstanceTypeMlG54xlarge, + ClusterInstanceTypeMlG58xlarge, + ClusterInstanceTypeMlG512xlarge, + ClusterInstanceTypeMlG516xlarge, + ClusterInstanceTypeMlG524xlarge, + ClusterInstanceTypeMlG548xlarge, + ClusterInstanceTypeMlC5Large, + ClusterInstanceTypeMlC5Xlarge, + ClusterInstanceTypeMlC52xlarge, + ClusterInstanceTypeMlC54xlarge, + ClusterInstanceTypeMlC59xlarge, + ClusterInstanceTypeMlC512xlarge, + ClusterInstanceTypeMlC518xlarge, + ClusterInstanceTypeMlC524xlarge, + ClusterInstanceTypeMlC5nLarge, + ClusterInstanceTypeMlC5n2xlarge, + ClusterInstanceTypeMlC5n4xlarge, + ClusterInstanceTypeMlC5n9xlarge, + ClusterInstanceTypeMlC5n18xlarge, + ClusterInstanceTypeMlM5Large, + ClusterInstanceTypeMlM5Xlarge, + ClusterInstanceTypeMlM52xlarge, + ClusterInstanceTypeMlM54xlarge, + ClusterInstanceTypeMlM58xlarge, + ClusterInstanceTypeMlM512xlarge, + ClusterInstanceTypeMlM516xlarge, + ClusterInstanceTypeMlM524xlarge, + ClusterInstanceTypeMlT3Medium, + ClusterInstanceTypeMlT3Large, + ClusterInstanceTypeMlT3Xlarge, + ClusterInstanceTypeMlT32xlarge, + } +} + +const ( + // ClusterSortByCreationTime is a ClusterSortBy enum value + ClusterSortByCreationTime = "CREATION_TIME" + + // ClusterSortByName is a ClusterSortBy enum value + ClusterSortByName = "NAME" +) + +// ClusterSortBy_Values returns all elements of the ClusterSortBy enum +func ClusterSortBy_Values() []string { + return []string{ + ClusterSortByCreationTime, + ClusterSortByName, + } +} + +const ( + // ClusterStatusCreating is a ClusterStatus enum value + ClusterStatusCreating = "Creating" + + // ClusterStatusDeleting is a ClusterStatus enum value + ClusterStatusDeleting = "Deleting" + + // ClusterStatusFailed is a ClusterStatus enum value + ClusterStatusFailed = "Failed" + + // ClusterStatusInService is a ClusterStatus enum value + ClusterStatusInService = "InService" + + // ClusterStatusRollingBack is a ClusterStatus enum value + ClusterStatusRollingBack = "RollingBack" + + // ClusterStatusSystemUpdating is a ClusterStatus enum value + ClusterStatusSystemUpdating = "SystemUpdating" + + // ClusterStatusUpdating is a ClusterStatus enum value + ClusterStatusUpdating = "Updating" +) + +// ClusterStatus_Values returns all elements of the ClusterStatus enum +func ClusterStatus_Values() []string { + return []string{ + ClusterStatusCreating, + ClusterStatusDeleting, + ClusterStatusFailed, + ClusterStatusInService, + ClusterStatusRollingBack, + ClusterStatusSystemUpdating, + ClusterStatusUpdating, + } +} + +const ( // CodeRepositorySortByName is a CodeRepositorySortBy enum value CodeRepositorySortByName = "Name" @@ -119529,6 +126458,26 @@ } const ( + // CollectionTypeList is a CollectionType enum value + CollectionTypeList = "List" + + // CollectionTypeSet is a CollectionType enum value + CollectionTypeSet = "Set" + + // CollectionTypeVector is a CollectionType enum value + CollectionTypeVector = "Vector" +) + +// CollectionType_Values returns all elements of the CollectionType enum +func CollectionType_Values() []string { + return []string{ + CollectionTypeList, + CollectionTypeSet, + CollectionTypeVector, + } +} + +const ( // CompilationJobStatusInprogress is a CompilationJobStatus enum value CompilationJobStatusInprogress = "INPROGRESS" @@ -120747,6 +127696,54 @@ } const ( + // InferenceComponentSortKeyName is a InferenceComponentSortKey enum value + InferenceComponentSortKeyName = "Name" + + // InferenceComponentSortKeyCreationTime is a InferenceComponentSortKey enum value + InferenceComponentSortKeyCreationTime = "CreationTime" + + // InferenceComponentSortKeyStatus is a InferenceComponentSortKey enum value + InferenceComponentSortKeyStatus = "Status" +) + +// InferenceComponentSortKey_Values returns all elements of the InferenceComponentSortKey enum +func InferenceComponentSortKey_Values() []string { + return []string{ + InferenceComponentSortKeyName, + InferenceComponentSortKeyCreationTime, + InferenceComponentSortKeyStatus, + } +} + +const ( + // InferenceComponentStatusInService is a InferenceComponentStatus enum value + InferenceComponentStatusInService = "InService" + + // InferenceComponentStatusCreating is a InferenceComponentStatus enum value + InferenceComponentStatusCreating = "Creating" + + // InferenceComponentStatusUpdating is a InferenceComponentStatus enum value + InferenceComponentStatusUpdating = "Updating" + + // InferenceComponentStatusFailed is a InferenceComponentStatus enum value + InferenceComponentStatusFailed = "Failed" + + // InferenceComponentStatusDeleting is a InferenceComponentStatus enum value + InferenceComponentStatusDeleting = "Deleting" +) + +// InferenceComponentStatus_Values returns all elements of the InferenceComponentStatus enum +func InferenceComponentStatus_Values() []string { + return []string{ + InferenceComponentStatusInService, + InferenceComponentStatusCreating, + InferenceComponentStatusUpdating, + InferenceComponentStatusFailed, + InferenceComponentStatusDeleting, + } +} + +const ( // InferenceExecutionModeSerial is a InferenceExecutionMode enum value InferenceExecutionModeSerial = "Serial" @@ -121423,6 +128420,22 @@ } const ( + // ManagedInstanceScalingStatusEnabled is a ManagedInstanceScalingStatus enum value + ManagedInstanceScalingStatusEnabled = "ENABLED" + + // ManagedInstanceScalingStatusDisabled is a ManagedInstanceScalingStatus enum value + ManagedInstanceScalingStatusDisabled = "DISABLED" +) + +// ManagedInstanceScalingStatus_Values returns all elements of the ManagedInstanceScalingStatus enum +func ManagedInstanceScalingStatus_Values() []string { + return []string{ + ManagedInstanceScalingStatusEnabled, + ManagedInstanceScalingStatusDisabled, + } +} + +const ( // MetricSetSourceTrain is a MetricSetSource enum value MetricSetSourceTrain = "Train" @@ -123136,6 +130149,9 @@ // ProductionVariantInstanceTypeMlInf248xlarge is a ProductionVariantInstanceType enum value ProductionVariantInstanceTypeMlInf248xlarge = "ml.inf2.48xlarge" + + // ProductionVariantInstanceTypeMlP548xlarge is a ProductionVariantInstanceType enum value + ProductionVariantInstanceTypeMlP548xlarge = "ml.p5.48xlarge" ) // ProductionVariantInstanceType_Values returns all elements of the ProductionVariantInstanceType enum @@ -123288,6 +130304,7 @@ ProductionVariantInstanceTypeMlInf28xlarge, ProductionVariantInstanceTypeMlInf224xlarge, ProductionVariantInstanceTypeMlInf248xlarge, + ProductionVariantInstanceTypeMlP548xlarge, } } @@ -123726,6 +130743,22 @@ } const ( + // RoutingStrategyLeastOutstandingRequests is a RoutingStrategy enum value + RoutingStrategyLeastOutstandingRequests = "LEAST_OUTSTANDING_REQUESTS" + + // RoutingStrategyRandom is a RoutingStrategy enum value + RoutingStrategyRandom = "RANDOM" +) + +// RoutingStrategy_Values returns all elements of the RoutingStrategy enum +func RoutingStrategy_Values() []string { + return []string{ + RoutingStrategyLeastOutstandingRequests, + RoutingStrategyRandom, + } +} + +const ( // RuleEvaluationStatusInProgress is a RuleEvaluationStatus enum value RuleEvaluationStatusInProgress = "InProgress" @@ -123938,6 +130971,22 @@ } const ( + // SharingTypePrivate is a SharingType enum value + SharingTypePrivate = "Private" + + // SharingTypeShared is a SharingType enum value + SharingTypeShared = "Shared" +) + +// SharingType_Values returns all elements of the SharingType enum +func SharingType_Values() []string { + return []string{ + SharingTypePrivate, + SharingTypeShared, + } +} + +const ( // SkipModelValidationAll is a SkipModelValidation enum value SkipModelValidationAll = "All" @@ -124354,11 +131403,33 @@ } const ( + // StorageTypeStandard is a StorageType enum value + StorageTypeStandard = "Standard" + + // StorageTypeInMemory is a StorageType enum value + StorageTypeInMemory = "InMemory" +) + +// StorageType_Values returns all elements of the StorageType enum +func StorageType_Values() []string { + return []string{ + StorageTypeStandard, + StorageTypeInMemory, + } +} + +const ( // StudioLifecycleConfigAppTypeJupyterServer is a StudioLifecycleConfigAppType enum value StudioLifecycleConfigAppTypeJupyterServer = "JupyterServer" // StudioLifecycleConfigAppTypeKernelGateway is a StudioLifecycleConfigAppType enum value StudioLifecycleConfigAppTypeKernelGateway = "KernelGateway" + + // StudioLifecycleConfigAppTypeJupyterLab is a StudioLifecycleConfigAppType enum value + StudioLifecycleConfigAppTypeJupyterLab = "JupyterLab" + + // StudioLifecycleConfigAppTypeCodeEditor is a StudioLifecycleConfigAppType enum value + StudioLifecycleConfigAppTypeCodeEditor = "CodeEditor" ) // StudioLifecycleConfigAppType_Values returns all elements of the StudioLifecycleConfigAppType enum @@ -124366,6 +131437,8 @@ return []string{ StudioLifecycleConfigAppTypeJupyterServer, StudioLifecycleConfigAppTypeKernelGateway, + StudioLifecycleConfigAppTypeJupyterLab, + StudioLifecycleConfigAppTypeCodeEditor, } } @@ -124389,6 +131462,22 @@ } } +const ( + // StudioWebPortalEnabled is a StudioWebPortal enum value + StudioWebPortalEnabled = "ENABLED" + + // StudioWebPortalDisabled is a StudioWebPortal enum value + StudioWebPortalDisabled = "DISABLED" +) + +// StudioWebPortal_Values returns all elements of the StudioWebPortal enum +func StudioWebPortal_Values() []string { + return []string{ + StudioWebPortalEnabled, + StudioWebPortalDisabled, + } +} + const ( // TableFormatGlue is a TableFormat enum value TableFormatGlue = "Glue" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sagemaker/sagemakeriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/sagemaker/sagemakeriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sagemaker/sagemakeriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sagemaker/sagemakeriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -104,6 +104,10 @@ CreateAutoMLJobV2WithContext(aws.Context, *sagemaker.CreateAutoMLJobV2Input, ...request.Option) (*sagemaker.CreateAutoMLJobV2Output, error) CreateAutoMLJobV2Request(*sagemaker.CreateAutoMLJobV2Input) (*request.Request, *sagemaker.CreateAutoMLJobV2Output) + CreateCluster(*sagemaker.CreateClusterInput) (*sagemaker.CreateClusterOutput, error) + CreateClusterWithContext(aws.Context, *sagemaker.CreateClusterInput, ...request.Option) (*sagemaker.CreateClusterOutput, error) + CreateClusterRequest(*sagemaker.CreateClusterInput) (*request.Request, *sagemaker.CreateClusterOutput) + CreateCodeRepository(*sagemaker.CreateCodeRepositoryInput) (*sagemaker.CreateCodeRepositoryOutput, error) CreateCodeRepositoryWithContext(aws.Context, *sagemaker.CreateCodeRepositoryInput, ...request.Option) (*sagemaker.CreateCodeRepositoryOutput, error) CreateCodeRepositoryRequest(*sagemaker.CreateCodeRepositoryInput) (*request.Request, *sagemaker.CreateCodeRepositoryOutput) @@ -180,6 +184,10 @@ CreateImageVersionWithContext(aws.Context, *sagemaker.CreateImageVersionInput, ...request.Option) (*sagemaker.CreateImageVersionOutput, error) CreateImageVersionRequest(*sagemaker.CreateImageVersionInput) (*request.Request, *sagemaker.CreateImageVersionOutput) + CreateInferenceComponent(*sagemaker.CreateInferenceComponentInput) (*sagemaker.CreateInferenceComponentOutput, error) + CreateInferenceComponentWithContext(aws.Context, *sagemaker.CreateInferenceComponentInput, ...request.Option) (*sagemaker.CreateInferenceComponentOutput, error) + CreateInferenceComponentRequest(*sagemaker.CreateInferenceComponentInput) (*request.Request, *sagemaker.CreateInferenceComponentOutput) + CreateInferenceExperiment(*sagemaker.CreateInferenceExperimentInput) (*sagemaker.CreateInferenceExperimentOutput, error) CreateInferenceExperimentWithContext(aws.Context, *sagemaker.CreateInferenceExperimentInput, ...request.Option) (*sagemaker.CreateInferenceExperimentOutput, error) CreateInferenceExperimentRequest(*sagemaker.CreateInferenceExperimentInput) (*request.Request, *sagemaker.CreateInferenceExperimentOutput) @@ -316,6 +324,10 @@ DeleteAssociationWithContext(aws.Context, *sagemaker.DeleteAssociationInput, ...request.Option) (*sagemaker.DeleteAssociationOutput, error) DeleteAssociationRequest(*sagemaker.DeleteAssociationInput) (*request.Request, *sagemaker.DeleteAssociationOutput) + DeleteCluster(*sagemaker.DeleteClusterInput) (*sagemaker.DeleteClusterOutput, error) + DeleteClusterWithContext(aws.Context, *sagemaker.DeleteClusterInput, ...request.Option) (*sagemaker.DeleteClusterOutput, error) + DeleteClusterRequest(*sagemaker.DeleteClusterInput) (*request.Request, *sagemaker.DeleteClusterOutput) + DeleteCodeRepository(*sagemaker.DeleteCodeRepositoryInput) (*sagemaker.DeleteCodeRepositoryOutput, error) DeleteCodeRepositoryWithContext(aws.Context, *sagemaker.DeleteCodeRepositoryInput, ...request.Option) (*sagemaker.DeleteCodeRepositoryOutput, error) DeleteCodeRepositoryRequest(*sagemaker.DeleteCodeRepositoryInput) (*request.Request, *sagemaker.DeleteCodeRepositoryOutput) @@ -384,6 +396,10 @@ DeleteImageVersionWithContext(aws.Context, *sagemaker.DeleteImageVersionInput, ...request.Option) (*sagemaker.DeleteImageVersionOutput, error) DeleteImageVersionRequest(*sagemaker.DeleteImageVersionInput) (*request.Request, *sagemaker.DeleteImageVersionOutput) + DeleteInferenceComponent(*sagemaker.DeleteInferenceComponentInput) (*sagemaker.DeleteInferenceComponentOutput, error) + DeleteInferenceComponentWithContext(aws.Context, *sagemaker.DeleteInferenceComponentInput, ...request.Option) (*sagemaker.DeleteInferenceComponentOutput, error) + DeleteInferenceComponentRequest(*sagemaker.DeleteInferenceComponentInput) (*request.Request, *sagemaker.DeleteInferenceComponentOutput) + DeleteInferenceExperiment(*sagemaker.DeleteInferenceExperimentInput) (*sagemaker.DeleteInferenceExperimentOutput, error) DeleteInferenceExperimentWithContext(aws.Context, *sagemaker.DeleteInferenceExperimentInput, ...request.Option) (*sagemaker.DeleteInferenceExperimentOutput, error) DeleteInferenceExperimentRequest(*sagemaker.DeleteInferenceExperimentInput) (*request.Request, *sagemaker.DeleteInferenceExperimentOutput) @@ -504,6 +520,14 @@ DescribeAutoMLJobV2WithContext(aws.Context, *sagemaker.DescribeAutoMLJobV2Input, ...request.Option) (*sagemaker.DescribeAutoMLJobV2Output, error) DescribeAutoMLJobV2Request(*sagemaker.DescribeAutoMLJobV2Input) (*request.Request, *sagemaker.DescribeAutoMLJobV2Output) + DescribeCluster(*sagemaker.DescribeClusterInput) (*sagemaker.DescribeClusterOutput, error) + DescribeClusterWithContext(aws.Context, *sagemaker.DescribeClusterInput, ...request.Option) (*sagemaker.DescribeClusterOutput, error) + DescribeClusterRequest(*sagemaker.DescribeClusterInput) (*request.Request, *sagemaker.DescribeClusterOutput) + + DescribeClusterNode(*sagemaker.DescribeClusterNodeInput) (*sagemaker.DescribeClusterNodeOutput, error) + DescribeClusterNodeWithContext(aws.Context, *sagemaker.DescribeClusterNodeInput, ...request.Option) (*sagemaker.DescribeClusterNodeOutput, error) + DescribeClusterNodeRequest(*sagemaker.DescribeClusterNodeInput) (*request.Request, *sagemaker.DescribeClusterNodeOutput) + DescribeCodeRepository(*sagemaker.DescribeCodeRepositoryInput) (*sagemaker.DescribeCodeRepositoryOutput, error) DescribeCodeRepositoryWithContext(aws.Context, *sagemaker.DescribeCodeRepositoryInput, ...request.Option) (*sagemaker.DescribeCodeRepositoryOutput, error) DescribeCodeRepositoryRequest(*sagemaker.DescribeCodeRepositoryInput) (*request.Request, *sagemaker.DescribeCodeRepositoryOutput) @@ -588,6 +612,10 @@ DescribeImageVersionWithContext(aws.Context, *sagemaker.DescribeImageVersionInput, ...request.Option) (*sagemaker.DescribeImageVersionOutput, error) DescribeImageVersionRequest(*sagemaker.DescribeImageVersionInput) (*request.Request, *sagemaker.DescribeImageVersionOutput) + DescribeInferenceComponent(*sagemaker.DescribeInferenceComponentInput) (*sagemaker.DescribeInferenceComponentOutput, error) + DescribeInferenceComponentWithContext(aws.Context, *sagemaker.DescribeInferenceComponentInput, ...request.Option) (*sagemaker.DescribeInferenceComponentOutput, error) + DescribeInferenceComponentRequest(*sagemaker.DescribeInferenceComponentInput) (*request.Request, *sagemaker.DescribeInferenceComponentOutput) + DescribeInferenceExperiment(*sagemaker.DescribeInferenceExperimentInput) (*sagemaker.DescribeInferenceExperimentOutput, error) DescribeInferenceExperimentWithContext(aws.Context, *sagemaker.DescribeInferenceExperimentInput, ...request.Option) (*sagemaker.DescribeInferenceExperimentOutput, error) DescribeInferenceExperimentRequest(*sagemaker.DescribeInferenceExperimentInput) (*request.Request, *sagemaker.DescribeInferenceExperimentOutput) @@ -811,6 +839,20 @@ ListCandidatesForAutoMLJobPages(*sagemaker.ListCandidatesForAutoMLJobInput, func(*sagemaker.ListCandidatesForAutoMLJobOutput, bool) bool) error ListCandidatesForAutoMLJobPagesWithContext(aws.Context, *sagemaker.ListCandidatesForAutoMLJobInput, func(*sagemaker.ListCandidatesForAutoMLJobOutput, bool) bool, ...request.Option) error + ListClusterNodes(*sagemaker.ListClusterNodesInput) (*sagemaker.ListClusterNodesOutput, error) + ListClusterNodesWithContext(aws.Context, *sagemaker.ListClusterNodesInput, ...request.Option) (*sagemaker.ListClusterNodesOutput, error) + ListClusterNodesRequest(*sagemaker.ListClusterNodesInput) (*request.Request, *sagemaker.ListClusterNodesOutput) + + ListClusterNodesPages(*sagemaker.ListClusterNodesInput, func(*sagemaker.ListClusterNodesOutput, bool) bool) error + ListClusterNodesPagesWithContext(aws.Context, *sagemaker.ListClusterNodesInput, func(*sagemaker.ListClusterNodesOutput, bool) bool, ...request.Option) error + + ListClusters(*sagemaker.ListClustersInput) (*sagemaker.ListClustersOutput, error) + ListClustersWithContext(aws.Context, *sagemaker.ListClustersInput, ...request.Option) (*sagemaker.ListClustersOutput, error) + ListClustersRequest(*sagemaker.ListClustersInput) (*request.Request, *sagemaker.ListClustersOutput) + + ListClustersPages(*sagemaker.ListClustersInput, func(*sagemaker.ListClustersOutput, bool) bool) error + ListClustersPagesWithContext(aws.Context, *sagemaker.ListClustersInput, func(*sagemaker.ListClustersOutput, bool) bool, ...request.Option) error + ListCodeRepositories(*sagemaker.ListCodeRepositoriesInput) (*sagemaker.ListCodeRepositoriesOutput, error) ListCodeRepositoriesWithContext(aws.Context, *sagemaker.ListCodeRepositoriesInput, ...request.Option) (*sagemaker.ListCodeRepositoriesOutput, error) ListCodeRepositoriesRequest(*sagemaker.ListCodeRepositoriesInput) (*request.Request, *sagemaker.ListCodeRepositoriesOutput) @@ -949,6 +991,13 @@ ListImagesPages(*sagemaker.ListImagesInput, func(*sagemaker.ListImagesOutput, bool) bool) error ListImagesPagesWithContext(aws.Context, *sagemaker.ListImagesInput, func(*sagemaker.ListImagesOutput, bool) bool, ...request.Option) error + ListInferenceComponents(*sagemaker.ListInferenceComponentsInput) (*sagemaker.ListInferenceComponentsOutput, error) + ListInferenceComponentsWithContext(aws.Context, *sagemaker.ListInferenceComponentsInput, ...request.Option) (*sagemaker.ListInferenceComponentsOutput, error) + ListInferenceComponentsRequest(*sagemaker.ListInferenceComponentsInput) (*request.Request, *sagemaker.ListInferenceComponentsOutput) + + ListInferenceComponentsPages(*sagemaker.ListInferenceComponentsInput, func(*sagemaker.ListInferenceComponentsOutput, bool) bool) error + ListInferenceComponentsPagesWithContext(aws.Context, *sagemaker.ListInferenceComponentsInput, func(*sagemaker.ListInferenceComponentsOutput, bool) bool, ...request.Option) error + ListInferenceExperiments(*sagemaker.ListInferenceExperimentsInput) (*sagemaker.ListInferenceExperimentsOutput, error) ListInferenceExperimentsWithContext(aws.Context, *sagemaker.ListInferenceExperimentsInput, ...request.Option) (*sagemaker.ListInferenceExperimentsOutput, error) ListInferenceExperimentsRequest(*sagemaker.ListInferenceExperimentsInput) (*request.Request, *sagemaker.ListInferenceExperimentsOutput) @@ -1369,6 +1418,10 @@ UpdateArtifactWithContext(aws.Context, *sagemaker.UpdateArtifactInput, ...request.Option) (*sagemaker.UpdateArtifactOutput, error) UpdateArtifactRequest(*sagemaker.UpdateArtifactInput) (*request.Request, *sagemaker.UpdateArtifactOutput) + UpdateCluster(*sagemaker.UpdateClusterInput) (*sagemaker.UpdateClusterOutput, error) + UpdateClusterWithContext(aws.Context, *sagemaker.UpdateClusterInput, ...request.Option) (*sagemaker.UpdateClusterOutput, error) + UpdateClusterRequest(*sagemaker.UpdateClusterInput) (*request.Request, *sagemaker.UpdateClusterOutput) + UpdateCodeRepository(*sagemaker.UpdateCodeRepositoryInput) (*sagemaker.UpdateCodeRepositoryOutput, error) UpdateCodeRepositoryWithContext(aws.Context, *sagemaker.UpdateCodeRepositoryInput, ...request.Option) (*sagemaker.UpdateCodeRepositoryOutput, error) UpdateCodeRepositoryRequest(*sagemaker.UpdateCodeRepositoryInput) (*request.Request, *sagemaker.UpdateCodeRepositoryOutput) @@ -1421,6 +1474,14 @@ UpdateImageVersionWithContext(aws.Context, *sagemaker.UpdateImageVersionInput, ...request.Option) (*sagemaker.UpdateImageVersionOutput, error) UpdateImageVersionRequest(*sagemaker.UpdateImageVersionInput) (*request.Request, *sagemaker.UpdateImageVersionOutput) + UpdateInferenceComponent(*sagemaker.UpdateInferenceComponentInput) (*sagemaker.UpdateInferenceComponentOutput, error) + UpdateInferenceComponentWithContext(aws.Context, *sagemaker.UpdateInferenceComponentInput, ...request.Option) (*sagemaker.UpdateInferenceComponentOutput, error) + UpdateInferenceComponentRequest(*sagemaker.UpdateInferenceComponentInput) (*request.Request, *sagemaker.UpdateInferenceComponentOutput) + + UpdateInferenceComponentRuntimeConfig(*sagemaker.UpdateInferenceComponentRuntimeConfigInput) (*sagemaker.UpdateInferenceComponentRuntimeConfigOutput, error) + UpdateInferenceComponentRuntimeConfigWithContext(aws.Context, *sagemaker.UpdateInferenceComponentRuntimeConfigInput, ...request.Option) (*sagemaker.UpdateInferenceComponentRuntimeConfigOutput, error) + UpdateInferenceComponentRuntimeConfigRequest(*sagemaker.UpdateInferenceComponentRuntimeConfigInput) (*request.Request, *sagemaker.UpdateInferenceComponentRuntimeConfigOutput) + UpdateInferenceExperiment(*sagemaker.UpdateInferenceExperimentInput) (*sagemaker.UpdateInferenceExperimentOutput, error) UpdateInferenceExperimentWithContext(aws.Context, *sagemaker.UpdateInferenceExperimentInput, ...request.Option) (*sagemaker.UpdateInferenceExperimentOutput, error) UpdateInferenceExperimentRequest(*sagemaker.UpdateInferenceExperimentInput) (*request.Request, *sagemaker.UpdateInferenceExperimentOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sagemakerfeaturestoreruntime/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sagemakerfeaturestoreruntime/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sagemakerfeaturestoreruntime/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sagemakerfeaturestoreruntime/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -951,12 +951,16 @@ // FeatureName is a required field FeatureName *string `min:"1" type:"string" required:"true"` - // The value associated with a feature, in string format. Note that features - // types can be String, Integral, or Fractional. This value represents all three - // types as a string. - // - // ValueAsString is a required field - ValueAsString *string `type:"string" required:"true"` + // The value in string format associated with a feature. Used when your CollectionType + // is None. Note that features types can be String, Integral, or Fractional. + // This value represents all three types as a string. + ValueAsString *string `type:"string"` + + // The list of values in string format associated with a feature. Used when + // your CollectionType is a List, Set, or Vector. Note that features types can + // be String, Integral, or Fractional. These values represents all three types + // as a string. + ValueAsStringList []*string `type:"list"` } // String returns the string representation. @@ -986,9 +990,6 @@ if s.FeatureName != nil && len(*s.FeatureName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FeatureName", 1)) } - if s.ValueAsString == nil { - invalidParams.Add(request.NewErrParamRequired("ValueAsString")) - } if invalidParams.Len() > 0 { return invalidParams @@ -1008,6 +1009,12 @@ return s } +// SetValueAsStringList sets the ValueAsStringList field's value. +func (s *FeatureValue) SetValueAsStringList(v []*string) *FeatureValue { + s.ValueAsStringList = v + return s +} + type GetRecordInput struct { _ struct{} `type:"structure" nopayload:"true"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sagemakerruntime/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sagemakerruntime/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sagemakerruntime/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sagemakerruntime/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -309,6 +309,11 @@ // - For information about how to process the streaming response, see Invoke // real-time endpoints (https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-test-endpoints.html). // +// Before you can use this operation, your IAM permissions must allow the sagemaker:InvokeEndpoint +// action. For more information about Amazon SageMaker actions for IAM policies, +// see Actions, resources, and condition keys for Amazon SageMaker (https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html) +// in the IAM Service Authorization Reference. +// // Amazon SageMaker strips all POST headers except those supported by the API. // Amazon SageMaker might add additional headers. You should not rely on the // behavior of headers outside those enumerated in the request syntax. @@ -1013,6 +1018,10 @@ // EndpointName is a required field EndpointName *string `location:"uri" locationName:"EndpointName" type:"string" required:"true"` + // If the endpoint hosts one or more inference components, this parameter specifies + // the name of inference component to invoke. + InferenceComponentName *string `location:"header" locationName:"X-Amzn-SageMaker-Inference-Component" type:"string"` + // If you provide a value, it is added to the captured data when you enable // data capture on the endpoint. For information about data capture, see Capture // Data (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-data-capture.html). @@ -1117,6 +1126,12 @@ return s } +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *InvokeEndpointInput) SetInferenceComponentName(v string) *InvokeEndpointInput { + s.InferenceComponentName = &v + return s +} + // SetInferenceId sets the InferenceId field's value. func (s *InvokeEndpointInput) SetInferenceId(v string) *InvokeEndpointInput { s.InferenceId = &v @@ -1287,6 +1302,10 @@ // EndpointName is a required field EndpointName *string `location:"uri" locationName:"EndpointName" type:"string" required:"true"` + // If the endpoint hosts one or more inference components, this parameter specifies + // the name of inference component to invoke for a streaming response. + InferenceComponentName *string `location:"header" locationName:"X-Amzn-SageMaker-Inference-Component" type:"string"` + // An identifier that you assign to your request. InferenceId *string `location:"header" locationName:"X-Amzn-SageMaker-Inference-Id" min:"1" type:"string"` @@ -1374,6 +1393,12 @@ return s } +// SetInferenceComponentName sets the InferenceComponentName field's value. +func (s *InvokeEndpointWithResponseStreamInput) SetInferenceComponentName(v string) *InvokeEndpointWithResponseStreamInput { + s.InferenceComponentName = &v + return s +} + // SetInferenceId sets the InferenceId field's value. func (s *InvokeEndpointWithResponseStreamInput) SetInferenceId(v string) *InvokeEndpointWithResponseStreamInput { s.InferenceId = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/secretsmanager/api.go golang-github-aws-aws-sdk-go-1.48.14/service/secretsmanager/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/secretsmanager/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/secretsmanager/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,189 @@ "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) +const opBatchGetSecretValue = "BatchGetSecretValue" + +// BatchGetSecretValueRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetSecretValue 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 BatchGetSecretValue for more information on using the BatchGetSecretValue +// 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 BatchGetSecretValueRequest method. +// req, resp := client.BatchGetSecretValueRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/BatchGetSecretValue +func (c *SecretsManager) BatchGetSecretValueRequest(input *BatchGetSecretValueInput) (req *request.Request, output *BatchGetSecretValueOutput) { + op := &request.Operation{ + Name: opBatchGetSecretValue, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &BatchGetSecretValueInput{} + } + + output = &BatchGetSecretValueOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetSecretValue API operation for AWS Secrets Manager. +// +// Retrieves the contents of the encrypted fields SecretString or SecretBinary +// for up to 20 secrets. To retrieve a single secret, call GetSecretValue. +// +// To choose which secrets to retrieve, you can specify a list of secrets by +// name or ARN, or you can use filters. If Secrets Manager encounters errors +// such as AccessDeniedException while attempting to retrieve any of the secrets, +// you can see the errors in Errors in the response. +// +// Secrets Manager generates CloudTrail GetSecretValue log entries for each +// secret you request when you call this action. Do not include sensitive information +// in request parameters because it might be logged. For more information, see +// Logging Secrets Manager events with CloudTrail (https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieve-ct-entries.html). +// +// Required permissions: secretsmanager:BatchGetSecretValue, and you must have +// secretsmanager:GetSecretValue for each secret. If you use filters, you must +// also have secretsmanager:ListSecrets. If the secrets are encrypted using +// customer-managed keys instead of the Amazon Web Services managed key aws/secretsmanager, +// then you also need kms:Decrypt permissions for the keys. 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) +// and Authentication and access control in Secrets Manager (https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Secrets Manager's +// API operation BatchGetSecretValue for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Secrets Manager can't find the resource that you asked for. +// +// - InvalidParameterException +// The parameter name or value is invalid. +// +// - InvalidRequestException +// A parameter value is not valid for the current state of the resource. +// +// Possible causes: +// +// - The secret is scheduled for deletion. +// +// - You tried to enable rotation on a secret that doesn't already have a +// Lambda function ARN configured and you didn't include such an ARN as a +// parameter in this call. +// +// - The secret is managed by another service, and you must use that service +// to update it. For more information, see Secrets managed by other Amazon +// Web Services services (https://docs.aws.amazon.com/secretsmanager/latest/userguide/service-linked-secrets.html). +// +// - DecryptionFailure +// Secrets Manager can't decrypt the protected secret text using the provided +// KMS key. +// +// - InternalServiceError +// An error occurred on the server side. +// +// - InvalidNextTokenException +// The NextToken value is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/BatchGetSecretValue +func (c *SecretsManager) BatchGetSecretValue(input *BatchGetSecretValueInput) (*BatchGetSecretValueOutput, error) { + req, out := c.BatchGetSecretValueRequest(input) + return out, req.Send() +} + +// BatchGetSecretValueWithContext is the same as BatchGetSecretValue with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetSecretValue 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 *SecretsManager) BatchGetSecretValueWithContext(ctx aws.Context, input *BatchGetSecretValueInput, opts ...request.Option) (*BatchGetSecretValueOutput, error) { + req, out := c.BatchGetSecretValueRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// BatchGetSecretValuePages iterates over the pages of a BatchGetSecretValue operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See BatchGetSecretValue 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 BatchGetSecretValue operation. +// pageNum := 0 +// err := client.BatchGetSecretValuePages(params, +// func(page *secretsmanager.BatchGetSecretValueOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SecretsManager) BatchGetSecretValuePages(input *BatchGetSecretValueInput, fn func(*BatchGetSecretValueOutput, bool) bool) error { + return c.BatchGetSecretValuePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// BatchGetSecretValuePagesWithContext same as BatchGetSecretValuePages 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 *SecretsManager) BatchGetSecretValuePagesWithContext(ctx aws.Context, input *BatchGetSecretValueInput, fn func(*BatchGetSecretValueOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *BatchGetSecretValueInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.BatchGetSecretValueRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*BatchGetSecretValueOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opCancelRotateSecret = "CancelRotateSecret" // CancelRotateSecretRequest generates a "aws/request.Request" representing the @@ -910,6 +1093,8 @@ // Retrieves the contents of the encrypted fields SecretString or SecretBinary // from the specified version of a secret, whichever contains content. // +// To retrieve the values for a group of secrets, call BatchGetSecretValue. +// // We recommend that you cache your secret values by using client-side caching. // Caching secrets improves speed and reduces your costs. For more information, // see Cache secrets for your applications (https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html). @@ -1205,7 +1390,7 @@ // // To list the versions of a secret, use ListSecretVersionIds. // -// To get the secret value from SecretString or SecretBinary, call GetSecretValue. +// To retrieve the values for the secrets, call BatchGetSecretValue or GetSecretValue. // // For information about finding secrets in the console, see Find secrets in // Secrets Manager (https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_search-secret.html). @@ -2211,25 +2396,8 @@ // 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: -// -// - Maximum number of tags per secret: 50 -// -// - Maximum key length: 127 Unicode characters in UTF-8 -// -// - Maximum value length: 255 Unicode characters in UTF-8 -// -// - Tag keys and values are case sensitive. -// -// - Do not use the aws: prefix in your tag names or values because Amazon -// Web Services reserves it for Amazon Web Services use. You can't edit or -// delete tag names or values with this prefix. Tags with this prefix do -// not count against your tags per secret limit. -// -// - If you use your tagging schema across multiple services and resources, -// other services might have restrictions on allowed characters. Generally -// allowed characters: letters, spaces, and numbers representable in UTF-8, -// plus the following special characters: + - = . _ : / @. +// For tag quotas and naming restrictions, see Service quotas for Tagging (https://docs.aws.amazon.com/general/latest/gr/arg.html#taged-reference-quotas) +// in the Amazon Web Services General Reference guide. // // 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 @@ -2833,6 +3001,208 @@ return out, req.Send() } +// The error Secrets Manager encountered while retrieving an individual secret +// as part of BatchGetSecretValue. +type APIErrorType struct { + _ struct{} `type:"structure"` + + // The error Secrets Manager encountered while retrieving an individual secret + // as part of BatchGetSecretValue, for example ResourceNotFoundException,InvalidParameterException, + // InvalidRequestException, DecryptionFailure, or AccessDeniedException. + ErrorCode *string `type:"string"` + + // A message describing the error. + Message *string `type:"string"` + + // The ARN or name of the secret. + SecretId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s APIErrorType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s APIErrorType) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *APIErrorType) SetErrorCode(v string) *APIErrorType { + s.ErrorCode = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *APIErrorType) SetMessage(v string) *APIErrorType { + s.Message = &v + return s +} + +// SetSecretId sets the SecretId field's value. +func (s *APIErrorType) SetSecretId(v string) *APIErrorType { + s.SecretId = &v + return s +} + +type BatchGetSecretValueInput struct { + _ struct{} `type:"structure"` + + // The filters to choose which secrets to retrieve. You must include Filters + // or SecretIdList, but not both. + Filters []*Filter `type:"list"` + + // The number of results to include in the response. + // + // If there are more results available, in the response, Secrets Manager includes + // NextToken. To get the next results, call BatchGetSecretValue again with the + // value from NextToken. + MaxResults *int64 `min:"1" type:"integer"` + + // A token that indicates where the output should continue from, if a previous + // call did not show all results. To get the next results, call BatchGetSecretValue + // again with this value. + NextToken *string `min:"1" type:"string"` + + // The ARN or names of the secrets to retrieve. You must include Filters or + // SecretIdList, but not both. + SecretIdList []*string `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 BatchGetSecretValueInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetSecretValueInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetSecretValueInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetSecretValueInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SecretIdList != nil && len(s.SecretIdList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecretIdList", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *BatchGetSecretValueInput) SetFilters(v []*Filter) *BatchGetSecretValueInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *BatchGetSecretValueInput) SetMaxResults(v int64) *BatchGetSecretValueInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *BatchGetSecretValueInput) SetNextToken(v string) *BatchGetSecretValueInput { + s.NextToken = &v + return s +} + +// SetSecretIdList sets the SecretIdList field's value. +func (s *BatchGetSecretValueInput) SetSecretIdList(v []*string) *BatchGetSecretValueInput { + s.SecretIdList = v + return s +} + +type BatchGetSecretValueOutput struct { + _ struct{} `type:"structure"` + + // A list of errors Secrets Manager encountered while attempting to retrieve + // individual secrets. + Errors []*APIErrorType `type:"list"` + + // Secrets Manager includes this value if there's more output available than + // what is included in the current response. This can occur even when the response + // includes no values at all, such as when you ask for a filtered view of a + // long list. To get the next results, call BatchGetSecretValue again with this + // value. + NextToken *string `min:"1" type:"string"` + + // A list of secret values. + SecretValues []*SecretValueEntry `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 BatchGetSecretValueOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetSecretValueOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *BatchGetSecretValueOutput) SetErrors(v []*APIErrorType) *BatchGetSecretValueOutput { + s.Errors = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *BatchGetSecretValueOutput) SetNextToken(v string) *BatchGetSecretValueOutput { + s.NextToken = &v + return s +} + +// SetSecretValues sets the SecretValues field's value. +func (s *BatchGetSecretValueOutput) SetSecretValues(v []*SecretValueEntry) *BatchGetSecretValueOutput { + s.SecretValues = v + return s +} + type CancelRotateSecretInput struct { _ struct{} `type:"structure"` @@ -2951,10 +3321,10 @@ // If you use the Amazon Web Services CLI or one of the Amazon Web Services // SDKs to call this operation, then you can leave this parameter empty. The // CLI or SDK generates a random UUID for you and includes it as the value for - // this parameter in the request. If you don't use the SDK and instead generate - // a raw HTTP request to the Secrets Manager service endpoint, then you must - // generate a ClientRequestToken yourself for the new version and include the - // value in the request. + // this parameter in the request. + // + // If you generate a raw HTTP request to the Secrets Manager service endpoint, + // then you must generate a ClientRequestToken and include it in the request. // // This value helps ensure idempotency. Secrets Manager uses this value to prevent // the accidental creation of duplicate versions if there are failures and retries @@ -3063,25 +3433,8 @@ // you should use single quotes to avoid confusion with the double quotes required // in the JSON text. // - // The following restrictions apply to tags: - // - // * Maximum number of tags per secret: 50 - // - // * Maximum key length: 127 Unicode characters in UTF-8 - // - // * Maximum value length: 255 Unicode characters in UTF-8 - // - // * Tag keys and values are case sensitive. - // - // * Do not use the aws: prefix in your tag names or values because Amazon - // Web Services reserves it for Amazon Web Services use. You can't edit or - // delete tag names or values with this prefix. Tags with this prefix do - // not count against your tags per secret limit. - // - // * If you use your tagging schema across multiple services and resources, - // other services might have restrictions on allowed characters. Generally - // allowed characters: letters, spaces, and numbers representable in UTF-8, - // plus the following special characters: + - = . _ : / @. + // For tag quotas and naming restrictions, see Service quotas for Tagging (https://docs.aws.amazon.com/general/latest/gr/arg.html#taged-reference-quotas) + // in the Amazon Web Services General Reference guide. Tags []*Tag `type:"list"` } @@ -5399,17 +5752,17 @@ // A unique identifier for the new version of the secret. // // If you use the Amazon Web Services CLI or one of the Amazon Web Services - // SDKs to call this operation, then you can leave this parameter empty because - // they generate a random UUID for you. If you don't use the SDK and instead - // generate a raw HTTP request to the Secrets Manager service endpoint, then - // you must generate a ClientRequestToken yourself for new versions and include - // that value in the request. + // SDKs to call this operation, then you can leave this parameter empty. The + // CLI or SDK generates a random UUID for you and includes it as the value for + // this parameter in the request. + // + // If you generate a raw HTTP request to the Secrets Manager service endpoint, + // then you must generate a ClientRequestToken and include it in the request. // // This value helps ensure idempotency. Secrets Manager uses this value to prevent // the accidental creation of duplicate versions if there are failures and retries - // during the Lambda rotation function processing. We recommend that you generate - // a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) value - // to ensure uniqueness within the specified secret. + // during a rotation. We recommend that you generate a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) + // value to ensure uniqueness of your versions within the specified secret. // // * If the ClientRequestToken value isn't already associated with a version // of the secret then a new version of the secret is created. @@ -6195,23 +6548,22 @@ type RotateSecretInput struct { _ struct{} `type:"structure"` - // A unique identifier for the new version of the secret that helps ensure idempotency. - // Secrets Manager uses this value to prevent the accidental creation of duplicate - // versions if there are failures and retries during rotation. This value becomes - // the VersionId of the new version. + // A unique identifier for the new version of the secret. You only need to specify + // this value if you implement your own retry logic and you want to ensure that + // Secrets Manager doesn't attempt to create a secret version twice. // // If you use the Amazon Web Services CLI or one of the Amazon Web Services - // SDK to call this operation, then you can leave this parameter empty. The - // CLI or SDK generates a random UUID for you and includes that in the request - // for this parameter. If you don't use the SDK and instead generate a raw HTTP - // request to the Secrets Manager service endpoint, then you must generate a - // ClientRequestToken yourself for new versions and include that value in the - // request. - // - // You only need to specify this value if you implement your own retry logic - // and you want to ensure that Secrets Manager doesn't attempt to create a secret - // version twice. We recommend that you generate a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) - // value to ensure uniqueness within the specified secret. + // SDKs to call this operation, then you can leave this parameter empty. The + // CLI or SDK generates a random UUID for you and includes it as the value for + // this parameter in the request. + // + // If you generate a raw HTTP request to the Secrets Manager service endpoint, + // then you must generate a ClientRequestToken and include it in the request. + // + // This value helps ensure idempotency. Secrets Manager uses this value to prevent + // the accidental creation of duplicate versions if there are failures and retries + // during a rotation. We recommend that you generate a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) + // value to ensure uniqueness of your versions within the specified secret. ClientRequestToken *string `min:"32" type:"string" idempotencyToken:"true"` // Specifies whether to rotate the secret immediately or wait until the next @@ -6513,10 +6865,7 @@ // successfully completed. This value is null if the secret hasn't ever rotated. LastRotatedDate *time.Time `type:"timestamp"` - // The friendly name of the secret. You can use forward slashes in the name - // to represent a path hierarchy. For example, /prod/databases/dbserver1 could - // represent the secret for a server named dbserver1 in the folder databases - // in the folder prod. + // The friendly name of the secret. Name *string `min:"1" type:"string"` // The next rotation is scheduled to occur on or before this date. If the secret @@ -6674,6 +7023,107 @@ return s } +// A structure that contains the secret value and other details for a secret. +type SecretValueEntry struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the secret. + ARN *string `min:"20" type:"string"` + + // The date the secret was created. + CreatedDate *time.Time `type:"timestamp"` + + // The friendly name of the secret. + Name *string `min:"1" type:"string"` + + // The decrypted secret value, if the secret value was originally provided as + // binary data in the form of a byte array. The parameter represents the binary + // data as a base64-encoded (https://tools.ietf.org/html/rfc4648#section-4) + // string. + // + // SecretBinary is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SecretValueEntry's + // String and GoString methods. + // + // SecretBinary is automatically base64 encoded/decoded by the SDK. + SecretBinary []byte `min:"1" type:"blob" sensitive:"true"` + + // The decrypted secret value, if the secret value was originally provided as + // a string or through the Secrets Manager console. + // + // SecretString is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SecretValueEntry's + // String and GoString methods. + SecretString *string `min:"1" type:"string" sensitive:"true"` + + // The unique version identifier of this version of the secret. + VersionId *string `min:"32" type:"string"` + + // A list of all of the staging labels currently attached to this version of + // the secret. + VersionStages []*string `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 SecretValueEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecretValueEntry) GoString() string { + return s.String() +} + +// SetARN sets the ARN field's value. +func (s *SecretValueEntry) SetARN(v string) *SecretValueEntry { + s.ARN = &v + return s +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *SecretValueEntry) SetCreatedDate(v time.Time) *SecretValueEntry { + s.CreatedDate = &v + return s +} + +// SetName sets the Name field's value. +func (s *SecretValueEntry) SetName(v string) *SecretValueEntry { + s.Name = &v + return s +} + +// SetSecretBinary sets the SecretBinary field's value. +func (s *SecretValueEntry) SetSecretBinary(v []byte) *SecretValueEntry { + s.SecretBinary = v + return s +} + +// SetSecretString sets the SecretString field's value. +func (s *SecretValueEntry) SetSecretString(v string) *SecretValueEntry { + s.SecretString = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *SecretValueEntry) SetVersionId(v string) *SecretValueEntry { + s.VersionId = &v + return s +} + +// SetVersionStages sets the VersionStages field's value. +func (s *SecretValueEntry) SetVersionStages(v []*string) *SecretValueEntry { + s.VersionStages = v + return s +} + // A structure that contains information about one version of a secret. type SecretVersionsListEntry struct { _ struct{} `type:"structure"` @@ -7090,12 +7540,15 @@ // If you use the Amazon Web Services CLI or one of the Amazon Web Services // SDKs to call this operation, then you can leave this parameter empty. The // CLI or SDK generates a random UUID for you and includes it as the value for - // this parameter in the request. If you don't use the SDK and instead generate - // a raw HTTP request to the Secrets Manager service endpoint, then you must - // generate a ClientRequestToken yourself for the new version and include the - // value in the request. + // this parameter in the request. // - // This value becomes the VersionId of the new version. + // If you generate a raw HTTP request to the Secrets Manager service endpoint, + // then you must generate a ClientRequestToken and include it in the request. + // + // This value helps ensure idempotency. Secrets Manager uses this value to prevent + // the accidental creation of duplicate versions if there are failures and retries + // during a rotation. We recommend that you generate a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) + // value to ensure uniqueness of your versions within the specified secret. ClientRequestToken *string `min:"32" type:"string" idempotencyToken:"true"` // The description of the secret. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/secretsmanager/secretsmanageriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/secretsmanager/secretsmanageriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/secretsmanager/secretsmanageriface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/secretsmanager/secretsmanageriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // AWS Secrets Manager. // func myFunc(svc secretsmanageriface.SecretsManagerAPI) bool { -// // Make svc.CancelRotateSecret request +// // Make svc.BatchGetSecretValue request // } // // func main() { @@ -42,7 +42,7 @@ // type mockSecretsManagerClient struct { // secretsmanageriface.SecretsManagerAPI // } -// func (m *mockSecretsManagerClient) CancelRotateSecret(input *secretsmanager.CancelRotateSecretInput) (*secretsmanager.CancelRotateSecretOutput, error) { +// func (m *mockSecretsManagerClient) BatchGetSecretValue(input *secretsmanager.BatchGetSecretValueInput) (*secretsmanager.BatchGetSecretValueOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,13 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SecretsManagerAPI interface { + BatchGetSecretValue(*secretsmanager.BatchGetSecretValueInput) (*secretsmanager.BatchGetSecretValueOutput, error) + BatchGetSecretValueWithContext(aws.Context, *secretsmanager.BatchGetSecretValueInput, ...request.Option) (*secretsmanager.BatchGetSecretValueOutput, error) + BatchGetSecretValueRequest(*secretsmanager.BatchGetSecretValueInput) (*request.Request, *secretsmanager.BatchGetSecretValueOutput) + + BatchGetSecretValuePages(*secretsmanager.BatchGetSecretValueInput, func(*secretsmanager.BatchGetSecretValueOutput, bool) bool) error + BatchGetSecretValuePagesWithContext(aws.Context, *secretsmanager.BatchGetSecretValueInput, func(*secretsmanager.BatchGetSecretValueOutput, bool) bool, ...request.Option) error + CancelRotateSecret(*secretsmanager.CancelRotateSecretInput) (*secretsmanager.CancelRotateSecretOutput, error) CancelRotateSecretWithContext(aws.Context, *secretsmanager.CancelRotateSecretInput, ...request.Option) (*secretsmanager.CancelRotateSecretOutput, error) CancelRotateSecretRequest(*secretsmanager.CancelRotateSecretInput) (*request.Request, *secretsmanager.CancelRotateSecretOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/api.go golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -401,6 +401,9 @@ // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchDisableStandards func (c *SecurityHub) BatchDisableStandards(input *BatchDisableStandardsInput) (*BatchDisableStandardsOutput, error) { req, out := c.BatchDisableStandardsRequest(input) @@ -496,6 +499,9 @@ // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchEnableStandards func (c *SecurityHub) BatchEnableStandards(input *BatchEnableStandardsInput) (*BatchEnableStandardsOutput, error) { req, out := c.BatchEnableStandardsRequest(input) @@ -616,6 +622,106 @@ return out, req.Send() } +const opBatchGetConfigurationPolicyAssociations = "BatchGetConfigurationPolicyAssociations" + +// BatchGetConfigurationPolicyAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetConfigurationPolicyAssociations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See BatchGetConfigurationPolicyAssociations for more information on using the BatchGetConfigurationPolicyAssociations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the BatchGetConfigurationPolicyAssociationsRequest method. +// req, resp := client.BatchGetConfigurationPolicyAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchGetConfigurationPolicyAssociations +func (c *SecurityHub) BatchGetConfigurationPolicyAssociationsRequest(input *BatchGetConfigurationPolicyAssociationsInput) (req *request.Request, output *BatchGetConfigurationPolicyAssociationsOutput) { + op := &request.Operation{ + Name: opBatchGetConfigurationPolicyAssociations, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/batchget", + } + + if input == nil { + input = &BatchGetConfigurationPolicyAssociationsInput{} + } + + output = &BatchGetConfigurationPolicyAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetConfigurationPolicyAssociations API operation for AWS SecurityHub. +// +// Returns associations between an Security Hub configuration and a batch of +// target accounts, organizational units, or the root. Only the Security Hub +// delegated administrator can invoke this operation from the home Region. A +// configuration can refer to a configuration policy or to a self-managed configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation BatchGetConfigurationPolicyAssociations for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchGetConfigurationPolicyAssociations +func (c *SecurityHub) BatchGetConfigurationPolicyAssociations(input *BatchGetConfigurationPolicyAssociationsInput) (*BatchGetConfigurationPolicyAssociationsOutput, error) { + req, out := c.BatchGetConfigurationPolicyAssociationsRequest(input) + return out, req.Send() +} + +// BatchGetConfigurationPolicyAssociationsWithContext is the same as BatchGetConfigurationPolicyAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetConfigurationPolicyAssociations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) BatchGetConfigurationPolicyAssociationsWithContext(ctx aws.Context, input *BatchGetConfigurationPolicyAssociationsInput, opts ...request.Option) (*BatchGetConfigurationPolicyAssociationsOutput, error) { + req, out := c.BatchGetConfigurationPolicyAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchGetSecurityControls = "BatchGetSecurityControls" // BatchGetSecurityControlsRequest generates a "aws/request.Request" representing the @@ -1227,6 +1333,9 @@ // The request was rejected because you supplied an invalid or out-of-range // value for an input parameter. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateStandardsControlAssociations func (c *SecurityHub) BatchUpdateStandardsControlAssociations(input *BatchUpdateStandardsControlAssociationsInput) (*BatchUpdateStandardsControlAssociationsOutput, error) { req, out := c.BatchUpdateStandardsControlAssociationsRequest(input) @@ -1440,6 +1549,104 @@ return out, req.Send() } +const opCreateConfigurationPolicy = "CreateConfigurationPolicy" + +// CreateConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the CreateConfigurationPolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateConfigurationPolicy for more information on using the CreateConfigurationPolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateConfigurationPolicyRequest method. +// req, resp := client.CreateConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateConfigurationPolicy +func (c *SecurityHub) CreateConfigurationPolicyRequest(input *CreateConfigurationPolicyInput) (req *request.Request, output *CreateConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opCreateConfigurationPolicy, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicy/create", + } + + if input == nil { + input = &CreateConfigurationPolicyInput{} + } + + output = &CreateConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateConfigurationPolicy API operation for AWS SecurityHub. +// +// Creates a configuration policy with the defined configuration. Only the Security +// Hub delegated administrator can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation CreateConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateConfigurationPolicy +func (c *SecurityHub) CreateConfigurationPolicy(input *CreateConfigurationPolicyInput) (*CreateConfigurationPolicyOutput, error) { + req, out := c.CreateConfigurationPolicyRequest(input) + return out, req.Send() +} + +// CreateConfigurationPolicyWithContext is the same as CreateConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See CreateConfigurationPolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) CreateConfigurationPolicyWithContext(ctx aws.Context, input *CreateConfigurationPolicyInput, opts ...request.Option) (*CreateConfigurationPolicyOutput, error) { + req, out := c.CreateConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateFindingAggregator = "CreateFindingAggregator" // CreateFindingAggregatorRequest generates a "aws/request.Request" representing the @@ -1747,6 +1954,9 @@ // - ResourceConflictException // The resource specified in the request conflicts with an existing resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateMembers func (c *SecurityHub) CreateMembers(input *CreateMembersInput) (*CreateMembersOutput, error) { req, out := c.CreateMembersRequest(input) @@ -1956,6 +2166,111 @@ return out, req.Send() } +const opDeleteConfigurationPolicy = "DeleteConfigurationPolicy" + +// DeleteConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConfigurationPolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteConfigurationPolicy for more information on using the DeleteConfigurationPolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteConfigurationPolicyRequest method. +// req, resp := client.DeleteConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteConfigurationPolicy +func (c *SecurityHub) DeleteConfigurationPolicyRequest(input *DeleteConfigurationPolicyInput) (req *request.Request, output *DeleteConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opDeleteConfigurationPolicy, + HTTPMethod: "DELETE", + HTTPPath: "/configurationPolicy/{Identifier}", + } + + if input == nil { + input = &DeleteConfigurationPolicyInput{} + } + + output = &DeleteConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConfigurationPolicy API operation for AWS SecurityHub. +// +// Deletes a configuration policy. Only the Security Hub delegated administrator +// can invoke this operation from the home Region. For the deletion to succeed, +// you must first disassociate a configuration policy from target accounts, +// organizational units, or the root by invoking the StartConfigurationPolicyDisassociation +// operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation DeleteConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteConfigurationPolicy +func (c *SecurityHub) DeleteConfigurationPolicy(input *DeleteConfigurationPolicyInput) (*DeleteConfigurationPolicyOutput, error) { + req, out := c.DeleteConfigurationPolicyRequest(input) + return out, req.Send() +} + +// DeleteConfigurationPolicyWithContext is the same as DeleteConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConfigurationPolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) DeleteConfigurationPolicyWithContext(ctx aws.Context, input *DeleteConfigurationPolicyInput, opts ...request.Option) (*DeleteConfigurationPolicyOutput, error) { + req, out := c.DeleteConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteFindingAggregator = "DeleteFindingAggregator" // DeleteFindingAggregatorRequest generates a "aws/request.Request" representing the @@ -2637,8 +2952,8 @@ // DescribeOrganizationConfiguration API operation for AWS SecurityHub. // -// Returns information about the Organizations configuration for Security Hub. -// Can only be called from a Security Hub administrator account. +// Returns information about the way your organization is configured in Security +// Hub. Only the Security Hub administrator account can invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3303,6 +3618,9 @@ // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DisableOrganizationAdminAccount func (c *SecurityHub) DisableOrganizationAdminAccount(input *DisableOrganizationAdminAccountInput) (*DisableOrganizationAdminAccountOutput, error) { req, out := c.DisableOrganizationAdminAccountRequest(input) @@ -3407,6 +3725,9 @@ // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DisableSecurityHub func (c *SecurityHub) DisableSecurityHub(input *DisableSecurityHubInput) (*DisableSecurityHubOutput, error) { req, out := c.DisableSecurityHubRequest(input) @@ -3724,6 +4045,9 @@ // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DisassociateMembers func (c *SecurityHub) DisassociateMembers(input *DisassociateMembersInput) (*DisassociateMembersOutput, error) { req, out := c.DisassociateMembersRequest(input) @@ -3915,6 +4239,9 @@ // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/EnableOrganizationAdminAccount func (c *SecurityHub) EnableOrganizationAdminAccount(input *EnableOrganizationAdminAccountInput) (*EnableOrganizationAdminAccountOutput, error) { req, out := c.EnableOrganizationAdminAccountRequest(input) @@ -4153,6 +4480,204 @@ return out, req.Send() } +const opGetConfigurationPolicy = "GetConfigurationPolicy" + +// GetConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetConfigurationPolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetConfigurationPolicy for more information on using the GetConfigurationPolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetConfigurationPolicyRequest method. +// req, resp := client.GetConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicy +func (c *SecurityHub) GetConfigurationPolicyRequest(input *GetConfigurationPolicyInput) (req *request.Request, output *GetConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opGetConfigurationPolicy, + HTTPMethod: "GET", + HTTPPath: "/configurationPolicy/get/{Identifier}", + } + + if input == nil { + input = &GetConfigurationPolicyInput{} + } + + output = &GetConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfigurationPolicy API operation for AWS SecurityHub. +// +// Provides information about a configuration policy. Only the Security Hub +// delegated administrator can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation GetConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicy +func (c *SecurityHub) GetConfigurationPolicy(input *GetConfigurationPolicyInput) (*GetConfigurationPolicyOutput, error) { + req, out := c.GetConfigurationPolicyRequest(input) + return out, req.Send() +} + +// GetConfigurationPolicyWithContext is the same as GetConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfigurationPolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) GetConfigurationPolicyWithContext(ctx aws.Context, input *GetConfigurationPolicyInput, opts ...request.Option) (*GetConfigurationPolicyOutput, error) { + req, out := c.GetConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetConfigurationPolicyAssociation = "GetConfigurationPolicyAssociation" + +// GetConfigurationPolicyAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetConfigurationPolicyAssociation operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetConfigurationPolicyAssociation for more information on using the GetConfigurationPolicyAssociation +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetConfigurationPolicyAssociationRequest method. +// req, resp := client.GetConfigurationPolicyAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicyAssociation +func (c *SecurityHub) GetConfigurationPolicyAssociationRequest(input *GetConfigurationPolicyAssociationInput) (req *request.Request, output *GetConfigurationPolicyAssociationOutput) { + op := &request.Operation{ + Name: opGetConfigurationPolicyAssociation, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/get", + } + + if input == nil { + input = &GetConfigurationPolicyAssociationInput{} + } + + output = &GetConfigurationPolicyAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfigurationPolicyAssociation API operation for AWS SecurityHub. +// +// Returns the association between a configuration and a target account, organizational +// unit, or the root. The configuration can be a configuration policy or self-managed +// behavior. Only the Security Hub delegated administrator can invoke this operation +// from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation GetConfigurationPolicyAssociation for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicyAssociation +func (c *SecurityHub) GetConfigurationPolicyAssociation(input *GetConfigurationPolicyAssociationInput) (*GetConfigurationPolicyAssociationOutput, error) { + req, out := c.GetConfigurationPolicyAssociationRequest(input) + return out, req.Send() +} + +// GetConfigurationPolicyAssociationWithContext is the same as GetConfigurationPolicyAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfigurationPolicyAssociation for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) GetConfigurationPolicyAssociationWithContext(ctx aws.Context, input *GetConfigurationPolicyAssociationInput, opts ...request.Option) (*GetConfigurationPolicyAssociationOutput, error) { + req, out := c.GetConfigurationPolicyAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetEnabledStandards = "GetEnabledStandards" // GetEnabledStandardsRequest generates a "aws/request.Request" representing the @@ -5254,6 +5779,102 @@ return out, req.Send() } +const opGetSecurityControlDefinition = "GetSecurityControlDefinition" + +// GetSecurityControlDefinitionRequest generates a "aws/request.Request" representing the +// client's request for the GetSecurityControlDefinition 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 GetSecurityControlDefinition for more information on using the GetSecurityControlDefinition +// 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 GetSecurityControlDefinitionRequest method. +// req, resp := client.GetSecurityControlDefinitionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetSecurityControlDefinition +func (c *SecurityHub) GetSecurityControlDefinitionRequest(input *GetSecurityControlDefinitionInput) (req *request.Request, output *GetSecurityControlDefinitionOutput) { + op := &request.Operation{ + Name: opGetSecurityControlDefinition, + HTTPMethod: "GET", + HTTPPath: "/securityControl/definition", + } + + if input == nil { + input = &GetSecurityControlDefinitionInput{} + } + + output = &GetSecurityControlDefinitionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSecurityControlDefinition API operation for AWS SecurityHub. +// +// Retrieves the definition of a security control. The definition includes the +// control title, description, Region availability, parameter definitions, and +// other details. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation GetSecurityControlDefinition for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetSecurityControlDefinition +func (c *SecurityHub) GetSecurityControlDefinition(input *GetSecurityControlDefinitionInput) (*GetSecurityControlDefinitionOutput, error) { + req, out := c.GetSecurityControlDefinitionRequest(input) + return out, req.Send() +} + +// GetSecurityControlDefinitionWithContext is the same as GetSecurityControlDefinition with the addition of +// the ability to pass a context and additional request options. +// +// See GetSecurityControlDefinition for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) GetSecurityControlDefinitionWithContext(ctx aws.Context, input *GetSecurityControlDefinitionInput, opts ...request.Option) (*GetSecurityControlDefinitionOutput, error) { + req, out := c.GetSecurityControlDefinitionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opInviteMembers = "InviteMembers" // InviteMembersRequest generates a "aws/request.Request" representing the @@ -5453,6 +6074,315 @@ return out, req.Send() } +const opListConfigurationPolicies = "ListConfigurationPolicies" + +// ListConfigurationPoliciesRequest generates a "aws/request.Request" representing the +// client's request for the ListConfigurationPolicies operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListConfigurationPolicies for more information on using the ListConfigurationPolicies +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListConfigurationPoliciesRequest method. +// req, resp := client.ListConfigurationPoliciesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicies +func (c *SecurityHub) ListConfigurationPoliciesRequest(input *ListConfigurationPoliciesInput) (req *request.Request, output *ListConfigurationPoliciesOutput) { + op := &request.Operation{ + Name: opListConfigurationPolicies, + HTTPMethod: "GET", + HTTPPath: "/configurationPolicy/list", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConfigurationPoliciesInput{} + } + + output = &ListConfigurationPoliciesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConfigurationPolicies API operation for AWS SecurityHub. +// +// Lists the configuration policies that the Security Hub delegated administrator +// has created for your organization. Only the delegated administrator can invoke +// this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation ListConfigurationPolicies for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicies +func (c *SecurityHub) ListConfigurationPolicies(input *ListConfigurationPoliciesInput) (*ListConfigurationPoliciesOutput, error) { + req, out := c.ListConfigurationPoliciesRequest(input) + return out, req.Send() +} + +// ListConfigurationPoliciesWithContext is the same as ListConfigurationPolicies with the addition of +// the ability to pass a context and additional request options. +// +// See ListConfigurationPolicies for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) ListConfigurationPoliciesWithContext(ctx aws.Context, input *ListConfigurationPoliciesInput, opts ...request.Option) (*ListConfigurationPoliciesOutput, error) { + req, out := c.ListConfigurationPoliciesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConfigurationPoliciesPages iterates over the pages of a ListConfigurationPolicies operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfigurationPolicies method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListConfigurationPolicies operation. +// pageNum := 0 +// err := client.ListConfigurationPoliciesPages(params, +// func(page *securityhub.ListConfigurationPoliciesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SecurityHub) ListConfigurationPoliciesPages(input *ListConfigurationPoliciesInput, fn func(*ListConfigurationPoliciesOutput, bool) bool) error { + return c.ListConfigurationPoliciesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfigurationPoliciesPagesWithContext same as ListConfigurationPoliciesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) ListConfigurationPoliciesPagesWithContext(ctx aws.Context, input *ListConfigurationPoliciesInput, fn func(*ListConfigurationPoliciesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfigurationPoliciesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfigurationPoliciesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfigurationPoliciesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListConfigurationPolicyAssociations = "ListConfigurationPolicyAssociations" + +// ListConfigurationPolicyAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListConfigurationPolicyAssociations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListConfigurationPolicyAssociations for more information on using the ListConfigurationPolicyAssociations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListConfigurationPolicyAssociationsRequest method. +// req, resp := client.ListConfigurationPolicyAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicyAssociations +func (c *SecurityHub) ListConfigurationPolicyAssociationsRequest(input *ListConfigurationPolicyAssociationsInput) (req *request.Request, output *ListConfigurationPolicyAssociationsOutput) { + op := &request.Operation{ + Name: opListConfigurationPolicyAssociations, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/list", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConfigurationPolicyAssociationsInput{} + } + + output = &ListConfigurationPolicyAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConfigurationPolicyAssociations API operation for AWS SecurityHub. +// +// Provides information about the associations for your configuration policies +// and self-managed behavior. Only the Security Hub delegated administrator +// can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation ListConfigurationPolicyAssociations for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicyAssociations +func (c *SecurityHub) ListConfigurationPolicyAssociations(input *ListConfigurationPolicyAssociationsInput) (*ListConfigurationPolicyAssociationsOutput, error) { + req, out := c.ListConfigurationPolicyAssociationsRequest(input) + return out, req.Send() +} + +// ListConfigurationPolicyAssociationsWithContext is the same as ListConfigurationPolicyAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListConfigurationPolicyAssociations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) ListConfigurationPolicyAssociationsWithContext(ctx aws.Context, input *ListConfigurationPolicyAssociationsInput, opts ...request.Option) (*ListConfigurationPolicyAssociationsOutput, error) { + req, out := c.ListConfigurationPolicyAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConfigurationPolicyAssociationsPages iterates over the pages of a ListConfigurationPolicyAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfigurationPolicyAssociations method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListConfigurationPolicyAssociations operation. +// pageNum := 0 +// err := client.ListConfigurationPolicyAssociationsPages(params, +// func(page *securityhub.ListConfigurationPolicyAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SecurityHub) ListConfigurationPolicyAssociationsPages(input *ListConfigurationPolicyAssociationsInput, fn func(*ListConfigurationPolicyAssociationsOutput, bool) bool) error { + return c.ListConfigurationPolicyAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfigurationPolicyAssociationsPagesWithContext same as ListConfigurationPolicyAssociationsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) ListConfigurationPolicyAssociationsPagesWithContext(ctx aws.Context, input *ListConfigurationPolicyAssociationsInput, fn func(*ListConfigurationPolicyAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfigurationPolicyAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfigurationPolicyAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfigurationPolicyAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEnabledProductsForImport = "ListEnabledProductsForImport" // ListEnabledProductsForImportRequest generates a "aws/request.Request" representing the @@ -6587,6 +7517,210 @@ return out, req.Send() } +const opStartConfigurationPolicyAssociation = "StartConfigurationPolicyAssociation" + +// StartConfigurationPolicyAssociationRequest generates a "aws/request.Request" representing the +// client's request for the StartConfigurationPolicyAssociation operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartConfigurationPolicyAssociation for more information on using the StartConfigurationPolicyAssociation +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartConfigurationPolicyAssociationRequest method. +// req, resp := client.StartConfigurationPolicyAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyAssociation +func (c *SecurityHub) StartConfigurationPolicyAssociationRequest(input *StartConfigurationPolicyAssociationInput) (req *request.Request, output *StartConfigurationPolicyAssociationOutput) { + op := &request.Operation{ + Name: opStartConfigurationPolicyAssociation, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/associate", + } + + if input == nil { + input = &StartConfigurationPolicyAssociationInput{} + } + + output = &StartConfigurationPolicyAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartConfigurationPolicyAssociation API operation for AWS SecurityHub. +// +// Associates a target account, organizational unit, or the root with a specified +// configuration. The target can be associated with a configuration policy or +// self-managed behavior. Only the Security Hub delegated administrator can +// invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation StartConfigurationPolicyAssociation for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyAssociation +func (c *SecurityHub) StartConfigurationPolicyAssociation(input *StartConfigurationPolicyAssociationInput) (*StartConfigurationPolicyAssociationOutput, error) { + req, out := c.StartConfigurationPolicyAssociationRequest(input) + return out, req.Send() +} + +// StartConfigurationPolicyAssociationWithContext is the same as StartConfigurationPolicyAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See StartConfigurationPolicyAssociation for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) StartConfigurationPolicyAssociationWithContext(ctx aws.Context, input *StartConfigurationPolicyAssociationInput, opts ...request.Option) (*StartConfigurationPolicyAssociationOutput, error) { + req, out := c.StartConfigurationPolicyAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartConfigurationPolicyDisassociation = "StartConfigurationPolicyDisassociation" + +// StartConfigurationPolicyDisassociationRequest generates a "aws/request.Request" representing the +// client's request for the StartConfigurationPolicyDisassociation operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartConfigurationPolicyDisassociation for more information on using the StartConfigurationPolicyDisassociation +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartConfigurationPolicyDisassociationRequest method. +// req, resp := client.StartConfigurationPolicyDisassociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyDisassociation +func (c *SecurityHub) StartConfigurationPolicyDisassociationRequest(input *StartConfigurationPolicyDisassociationInput) (req *request.Request, output *StartConfigurationPolicyDisassociationOutput) { + op := &request.Operation{ + Name: opStartConfigurationPolicyDisassociation, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/disassociate", + } + + if input == nil { + input = &StartConfigurationPolicyDisassociationInput{} + } + + output = &StartConfigurationPolicyDisassociationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StartConfigurationPolicyDisassociation API operation for AWS SecurityHub. +// +// Disassociates a target account, organizational unit, or the root from a specified +// configuration. When you disassociate a configuration from its target, the +// target inherits the configuration of the closest parent. If there’s no +// configuration to inherit, the target retains its settings but becomes a self-managed +// account. A target can be disassociated from a configuration policy or self-managed +// behavior. Only the Security Hub delegated administrator can invoke this operation +// from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation StartConfigurationPolicyDisassociation for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyDisassociation +func (c *SecurityHub) StartConfigurationPolicyDisassociation(input *StartConfigurationPolicyDisassociationInput) (*StartConfigurationPolicyDisassociationOutput, error) { + req, out := c.StartConfigurationPolicyDisassociationRequest(input) + return out, req.Send() +} + +// StartConfigurationPolicyDisassociationWithContext is the same as StartConfigurationPolicyDisassociation with the addition of +// the ability to pass a context and additional request options. +// +// See StartConfigurationPolicyDisassociation for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) StartConfigurationPolicyDisassociationWithContext(ctx aws.Context, input *StartConfigurationPolicyDisassociationInput, opts ...request.Option) (*StartConfigurationPolicyDisassociationOutput, error) { + req, out := c.StartConfigurationPolicyDisassociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -6854,6 +7988,107 @@ return out, req.Send() } +const opUpdateConfigurationPolicy = "UpdateConfigurationPolicy" + +// UpdateConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateConfigurationPolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateConfigurationPolicy for more information on using the UpdateConfigurationPolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateConfigurationPolicyRequest method. +// req, resp := client.UpdateConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateConfigurationPolicy +func (c *SecurityHub) UpdateConfigurationPolicyRequest(input *UpdateConfigurationPolicyInput) (req *request.Request, output *UpdateConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opUpdateConfigurationPolicy, + HTTPMethod: "PATCH", + HTTPPath: "/configurationPolicy/{Identifier}", + } + + if input == nil { + input = &UpdateConfigurationPolicyInput{} + } + + output = &UpdateConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateConfigurationPolicy API operation for AWS SecurityHub. +// +// Updates a configuration policy. Only the Security Hub delegated administrator +// can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation UpdateConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateConfigurationPolicy +func (c *SecurityHub) UpdateConfigurationPolicy(input *UpdateConfigurationPolicyInput) (*UpdateConfigurationPolicyOutput, error) { + req, out := c.UpdateConfigurationPolicyRequest(input) + return out, req.Send() +} + +// UpdateConfigurationPolicyWithContext is the same as UpdateConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateConfigurationPolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) UpdateConfigurationPolicyWithContext(ctx aws.Context, input *UpdateConfigurationPolicyInput, opts ...request.Option) (*UpdateConfigurationPolicyOutput, error) { + req, out := c.UpdateConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateFindingAggregator = "UpdateFindingAggregator" // UpdateFindingAggregatorRequest generates a "aws/request.Request" representing the @@ -7193,8 +8428,8 @@ // UpdateOrganizationConfiguration API operation for AWS SecurityHub. // -// Used to update the configuration related to Organizations. Can only be called -// from a Security Hub administrator account. +// Updates the configuration of your organization in Security Hub. Only the +// Security Hub administrator account can invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7220,6 +8455,15 @@ // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateOrganizationConfiguration func (c *SecurityHub) UpdateOrganizationConfiguration(input *UpdateOrganizationConfigurationInput) (*UpdateOrganizationConfigurationOutput, error) { req, out := c.UpdateOrganizationConfigurationRequest(input) @@ -7242,6 +8486,109 @@ return out, req.Send() } +const opUpdateSecurityControl = "UpdateSecurityControl" + +// UpdateSecurityControlRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSecurityControl 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 UpdateSecurityControl for more information on using the UpdateSecurityControl +// 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 UpdateSecurityControlRequest method. +// req, resp := client.UpdateSecurityControlRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateSecurityControl +func (c *SecurityHub) UpdateSecurityControlRequest(input *UpdateSecurityControlInput) (req *request.Request, output *UpdateSecurityControlOutput) { + op := &request.Operation{ + Name: opUpdateSecurityControl, + HTTPMethod: "PATCH", + HTTPPath: "/securityControl/update", + } + + if input == nil { + input = &UpdateSecurityControlInput{} + } + + output = &UpdateSecurityControlOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateSecurityControl API operation for AWS SecurityHub. +// +// Updates the properties of a security control. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation UpdateSecurityControl for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - ResourceInUseException +// The request was rejected because it conflicts with the resource's availability. +// For example, you tried to update a security control that's currently in the +// UPDATING state. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateSecurityControl +func (c *SecurityHub) UpdateSecurityControl(input *UpdateSecurityControlInput) (*UpdateSecurityControlOutput, error) { + req, out := c.UpdateSecurityControlRequest(input) + return out, req.Send() +} + +// UpdateSecurityControlWithContext is the same as UpdateSecurityControl with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSecurityControl for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) UpdateSecurityControlWithContext(ctx aws.Context, input *UpdateSecurityControlInput, opts ...request.Option) (*UpdateSecurityControlOutput, error) { + req, out := c.UpdateSecurityControlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSecurityHubConfiguration = "UpdateSecurityHubConfiguration" // UpdateSecurityHubConfigurationRequest generates a "aws/request.Request" representing the @@ -7315,6 +8662,9 @@ // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateSecurityHubConfiguration func (c *SecurityHub) UpdateSecurityHubConfiguration(input *UpdateSecurityHubConfigurationInput) (*UpdateSecurityHubConfigurationOutput, error) { req, out := c.UpdateSecurityHubConfigurationRequest(input) @@ -7406,6 +8756,9 @@ // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateStandardsControl func (c *SecurityHub) UpdateStandardsControl(input *UpdateStandardsControlInput) (*UpdateStandardsControlOutput, error) { req, out := c.UpdateStandardsControlRequest(input) @@ -8169,6 +9522,61 @@ return s } +// Options for filtering the ListConfigurationPolicyAssociations response. You +// can filter by the Amazon Resource Name (ARN) or universally unique identifier +// (UUID) of a configuration policy, AssociationType, or AssociationStatus. +type AssociationFilters struct { + _ struct{} `type:"structure"` + + // The current status of the association between a target and a configuration + // policy. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // Indicates whether the association between a target and a configuration was + // directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The ARN or UUID of the configuration policy. + ConfigurationPolicyId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociationFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociationFilters) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *AssociationFilters) SetAssociationStatus(v string) *AssociationFilters { + s.AssociationStatus = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *AssociationFilters) SetAssociationType(v string) *AssociationFilters { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *AssociationFilters) SetConfigurationPolicyId(v string) *AssociationFilters { + s.ConfigurationPolicyId = &v + return s +} + // The associations between a route table and one or more subnets or a gateway. type AssociationSetDetails struct { _ struct{} `type:"structure"` @@ -8631,6 +10039,11 @@ // Array Members: Minimum number of 1 item. Maximum number of 100 items. AwsAccountId []*StringFilter `type:"list"` + // The name of the Amazon Web Services account in which a finding was generated. + // + // Array Members: Minimum number of 1 item. Maximum number of 20 items. + AwsAccountName []*StringFilter `type:"list"` + // The name of the company for the product that generated the finding. For control-based // findings, the company is Amazon Web Services. // @@ -8767,6 +10180,16 @@ // Array Members: Minimum number of 1 item. Maximum number of 20 items. RelatedFindingsProductArn []*StringFilter `type:"list"` + // The Amazon Resource Name (ARN) of the application that is related to a finding. + // + // Array Members: Minimum number of 1 item. Maximum number of 20 items. + ResourceApplicationArn []*StringFilter `type:"list"` + + // The name of the application that is related to a finding. + // + // Array Members: Minimum number of 1 item. Maximum number of 20 items. + ResourceApplicationName []*StringFilter `type:"list"` + // Custom fields and values about the resource that a finding pertains to. // // Array Members: Minimum number of 1 item. Maximum number of 20 items. @@ -8878,6 +10301,12 @@ return s } +// SetAwsAccountName sets the AwsAccountName field's value. +func (s *AutomationRulesFindingFilters) SetAwsAccountName(v []*StringFilter) *AutomationRulesFindingFilters { + s.AwsAccountName = v + return s +} + // SetCompanyName sets the CompanyName field's value. func (s *AutomationRulesFindingFilters) SetCompanyName(v []*StringFilter) *AutomationRulesFindingFilters { s.CompanyName = v @@ -8998,6 +10427,18 @@ return s } +// SetResourceApplicationArn sets the ResourceApplicationArn field's value. +func (s *AutomationRulesFindingFilters) SetResourceApplicationArn(v []*StringFilter) *AutomationRulesFindingFilters { + s.ResourceApplicationArn = v + return s +} + +// SetResourceApplicationName sets the ResourceApplicationName field's value. +func (s *AutomationRulesFindingFilters) SetResourceApplicationName(v []*StringFilter) *AutomationRulesFindingFilters { + s.ResourceApplicationName = v + return s +} + // SetResourceDetailsOther sets the ResourceDetailsOther field's value. func (s *AutomationRulesFindingFilters) SetResourceDetailsOther(v []*MapFilter) *AutomationRulesFindingFilters { s.ResourceDetailsOther = v @@ -14762,7 +16203,7 @@ } // 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 +// a web server), Elemental MediaStore, or other server from which CloudFront // gets your files. type AwsCloudFrontDistributionOriginItem struct { _ struct{} `type:"structure"` @@ -16281,6 +17722,518 @@ return s } +// Provides details about an Database Migration Service (DMS) endpoint. An endpoint +// provides connection, data store type, and location information about your +// data store. +type AwsDmsEndpointDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the SSL certificate that encrypts connections + // between the DMS endpoint and the replication instance. + CertificateArn *string `type:"string"` + + // The name of the endpoint database. + DatabaseName *string `type:"string"` + + // The Amazon Resource Name (ARN) of the endpoint. + EndpointArn *string `type:"string"` + + // The database endpoint identifier. + EndpointIdentifier *string `type:"string"` + + // The type of endpoint. Valid values are source and target. + EndpointType *string `type:"string"` + + // The type of engine for the endpoint, depending on the EndpointType value. + EngineName *string `type:"string"` + + // A value that can be used for cross-account validation. + ExternalId *string `type:"string"` + + // Additional attributes associated with the connection. + ExtraConnectionAttributes *string `type:"string"` + + // An DMS key identifier that is used to encrypt the connection parameters for + // the endpoint. If you don't specify a value for the KmsKeyId parameter, then + // DMS uses your default encryption key. KMS creates the default encryption + // key for your Amazon Web Services account. Your Amazon Web Services account + // has a different default encryption key for each Amazon Web Services Region. + KmsKeyId *string `type:"string"` + + // The port used to access the endpoint. + Port *int64 `type:"integer"` + + // The name of the server where the endpoint database resides. + ServerName *string `type:"string"` + + // The SSL mode used to connect to the endpoint. The default is none. + SslMode *string `type:"string"` + + // The user name to be used to log in to the endpoint database. + Username *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 AwsDmsEndpointDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsDmsEndpointDetails) GoString() string { + return s.String() +} + +// SetCertificateArn sets the CertificateArn field's value. +func (s *AwsDmsEndpointDetails) SetCertificateArn(v string) *AwsDmsEndpointDetails { + s.CertificateArn = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *AwsDmsEndpointDetails) SetDatabaseName(v string) *AwsDmsEndpointDetails { + s.DatabaseName = &v + return s +} + +// SetEndpointArn sets the EndpointArn field's value. +func (s *AwsDmsEndpointDetails) SetEndpointArn(v string) *AwsDmsEndpointDetails { + s.EndpointArn = &v + return s +} + +// SetEndpointIdentifier sets the EndpointIdentifier field's value. +func (s *AwsDmsEndpointDetails) SetEndpointIdentifier(v string) *AwsDmsEndpointDetails { + s.EndpointIdentifier = &v + return s +} + +// SetEndpointType sets the EndpointType field's value. +func (s *AwsDmsEndpointDetails) SetEndpointType(v string) *AwsDmsEndpointDetails { + s.EndpointType = &v + return s +} + +// SetEngineName sets the EngineName field's value. +func (s *AwsDmsEndpointDetails) SetEngineName(v string) *AwsDmsEndpointDetails { + s.EngineName = &v + return s +} + +// SetExternalId sets the ExternalId field's value. +func (s *AwsDmsEndpointDetails) SetExternalId(v string) *AwsDmsEndpointDetails { + s.ExternalId = &v + return s +} + +// SetExtraConnectionAttributes sets the ExtraConnectionAttributes field's value. +func (s *AwsDmsEndpointDetails) SetExtraConnectionAttributes(v string) *AwsDmsEndpointDetails { + s.ExtraConnectionAttributes = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsDmsEndpointDetails) SetKmsKeyId(v string) *AwsDmsEndpointDetails { + s.KmsKeyId = &v + return s +} + +// SetPort sets the Port field's value. +func (s *AwsDmsEndpointDetails) SetPort(v int64) *AwsDmsEndpointDetails { + s.Port = &v + return s +} + +// SetServerName sets the ServerName field's value. +func (s *AwsDmsEndpointDetails) SetServerName(v string) *AwsDmsEndpointDetails { + s.ServerName = &v + return s +} + +// SetSslMode sets the SslMode field's value. +func (s *AwsDmsEndpointDetails) SetSslMode(v string) *AwsDmsEndpointDetails { + s.SslMode = &v + return s +} + +// SetUsername sets the Username field's value. +func (s *AwsDmsEndpointDetails) SetUsername(v string) *AwsDmsEndpointDetails { + s.Username = &v + return s +} + +// Provides details about an Database Migration Service (DMS) replication instance. +// DMS uses a replication instance to connect to your source data store, read +// the source data, and format the data for consumption by the target data store. +type AwsDmsReplicationInstanceDetails struct { + _ struct{} `type:"structure"` + + // The amount of storage (in gigabytes) that is allocated for the replication + // instance. + AllocatedStorage *int64 `type:"integer"` + + // Indicates whether minor engine upgrades are applied automatically to the + // replication instance during the maintenance window. + AutoMinorVersionUpgrade *bool `type:"boolean"` + + // The Availability Zone that the replication instance is created in. The default + // value is a random, system-chosen Availability Zone in the endpoint's Amazon + // Web Services Region, such as us-east-1d. + AvailabilityZone *string `type:"string"` + + // The engine version number of the replication instance. If an engine version + // number is not specified when a replication instance is created, the default + // is the latest engine version available. + EngineVersion *string `type:"string"` + + // An KMS key identifier that is used to encrypt the data on the replication + // instance. If you don't specify a value for the KmsKeyId parameter, DMS uses + // your default encryption key. KMS creates the default encryption key for your + // Amazon Web Services account. Your Amazon Web Services account has a different + // default encryption key for each Amazon Web Services Region. + KmsKeyId *string `type:"string"` + + // Specifies whether the replication instance is deployed across multiple Availability + // Zones (AZs). You can't set the AvailabilityZone parameter if the MultiAZ + // parameter is set to true. + MultiAZ *bool `type:"boolean"` + + // The maintenance window times for the replication instance. Upgrades to the + // replication instance are performed during this time. + PreferredMaintenanceWindow *string `type:"string"` + + // Specifies the accessibility options for the replication instance. A value + // of true represents an instance with a public IP address. A value of false + // represents an instance with a private IP address. The default value is true. + PubliclyAccessible *bool `type:"boolean"` + + // The compute and memory capacity of the replication instance as defined for + // the specified replication instance class. + ReplicationInstanceClass *string `type:"string"` + + // The replication instance identifier. + ReplicationInstanceIdentifier *string `type:"string"` + + // The subnet group for the replication instance. + ReplicationSubnetGroup *AwsDmsReplicationInstanceReplicationSubnetGroupDetails `type:"structure"` + + // The virtual private cloud (VPC) security group for the replication instance. + VpcSecurityGroups []*AwsDmsReplicationInstanceVpcSecurityGroupsDetails `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 AwsDmsReplicationInstanceDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsDmsReplicationInstanceDetails) GoString() string { + return s.String() +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *AwsDmsReplicationInstanceDetails) SetAllocatedStorage(v int64) *AwsDmsReplicationInstanceDetails { + s.AllocatedStorage = &v + return s +} + +// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value. +func (s *AwsDmsReplicationInstanceDetails) SetAutoMinorVersionUpgrade(v bool) *AwsDmsReplicationInstanceDetails { + s.AutoMinorVersionUpgrade = &v + return s +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsDmsReplicationInstanceDetails) SetAvailabilityZone(v string) *AwsDmsReplicationInstanceDetails { + s.AvailabilityZone = &v + return s +} + +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsDmsReplicationInstanceDetails) SetEngineVersion(v string) *AwsDmsReplicationInstanceDetails { + s.EngineVersion = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsDmsReplicationInstanceDetails) SetKmsKeyId(v string) *AwsDmsReplicationInstanceDetails { + s.KmsKeyId = &v + return s +} + +// SetMultiAZ sets the MultiAZ field's value. +func (s *AwsDmsReplicationInstanceDetails) SetMultiAZ(v bool) *AwsDmsReplicationInstanceDetails { + s.MultiAZ = &v + return s +} + +// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. +func (s *AwsDmsReplicationInstanceDetails) SetPreferredMaintenanceWindow(v string) *AwsDmsReplicationInstanceDetails { + s.PreferredMaintenanceWindow = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *AwsDmsReplicationInstanceDetails) SetPubliclyAccessible(v bool) *AwsDmsReplicationInstanceDetails { + s.PubliclyAccessible = &v + return s +} + +// SetReplicationInstanceClass sets the ReplicationInstanceClass field's value. +func (s *AwsDmsReplicationInstanceDetails) SetReplicationInstanceClass(v string) *AwsDmsReplicationInstanceDetails { + s.ReplicationInstanceClass = &v + return s +} + +// SetReplicationInstanceIdentifier sets the ReplicationInstanceIdentifier field's value. +func (s *AwsDmsReplicationInstanceDetails) SetReplicationInstanceIdentifier(v string) *AwsDmsReplicationInstanceDetails { + s.ReplicationInstanceIdentifier = &v + return s +} + +// SetReplicationSubnetGroup sets the ReplicationSubnetGroup field's value. +func (s *AwsDmsReplicationInstanceDetails) SetReplicationSubnetGroup(v *AwsDmsReplicationInstanceReplicationSubnetGroupDetails) *AwsDmsReplicationInstanceDetails { + s.ReplicationSubnetGroup = v + return s +} + +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *AwsDmsReplicationInstanceDetails) SetVpcSecurityGroups(v []*AwsDmsReplicationInstanceVpcSecurityGroupsDetails) *AwsDmsReplicationInstanceDetails { + s.VpcSecurityGroups = v + return s +} + +// Provides details about the replication subnet group. +type AwsDmsReplicationInstanceReplicationSubnetGroupDetails struct { + _ struct{} `type:"structure"` + + // The identifier of the replication subnet group. + ReplicationSubnetGroupIdentifier *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 AwsDmsReplicationInstanceReplicationSubnetGroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsDmsReplicationInstanceReplicationSubnetGroupDetails) GoString() string { + return s.String() +} + +// SetReplicationSubnetGroupIdentifier sets the ReplicationSubnetGroupIdentifier field's value. +func (s *AwsDmsReplicationInstanceReplicationSubnetGroupDetails) SetReplicationSubnetGroupIdentifier(v string) *AwsDmsReplicationInstanceReplicationSubnetGroupDetails { + s.ReplicationSubnetGroupIdentifier = &v + return s +} + +// Provides details about the virtual private cloud (VPC) security group that’s +// associated with the replication instance. +type AwsDmsReplicationInstanceVpcSecurityGroupsDetails struct { + _ struct{} `type:"structure"` + + // The identifier of the VPC security group that’s associated with the replication + // instance. + VpcSecurityGroupId *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 AwsDmsReplicationInstanceVpcSecurityGroupsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsDmsReplicationInstanceVpcSecurityGroupsDetails) GoString() string { + return s.String() +} + +// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. +func (s *AwsDmsReplicationInstanceVpcSecurityGroupsDetails) SetVpcSecurityGroupId(v string) *AwsDmsReplicationInstanceVpcSecurityGroupsDetails { + s.VpcSecurityGroupId = &v + return s +} + +// Provides details about an Database Migration Service (DMS) replication task. +// A replication task moves a set of data from the source endpoint to the target +// endpoint. +type AwsDmsReplicationTaskDetails struct { + _ struct{} `type:"structure"` + + // Indicates when you want a change data capture (CDC) operation to start. CCdcStartPosition + // or CCdcStartTime specifies when you want a CDC operation to start. Only a + // value for one of these fields is included. + CdcStartPosition *string `type:"string"` + + // Indicates the start time for a CDC operation. CdcStartPosition or CCdcStartTime + // specifies when you want a CDC operation to start. Only a value for one of + // these fields is included. + CdcStartTime *string `type:"string"` + + // Indicates when you want a CDC operation to stop. The value can be either + // server time or commit time. + CdcStopPosition *string `type:"string"` + + // The identifier of the replication task. + Id *string `type:"string"` + + // The migration type. + MigrationType *string `type:"string"` + + // The Amazon Resource Name (ARN) of a replication instance. + ReplicationInstanceArn *string `type:"string"` + + // The user-defined replication task identifier or name. + ReplicationTaskIdentifier *string `type:"string"` + + // The settings for the replication task. + ReplicationTaskSettings *string `type:"string"` + + // A display name for the resource identifier at the end of the EndpointArn + // response parameter. If you don't specify a ResourceIdentifier value, DMS + // generates a default identifier value for the end of EndpointArn. + ResourceIdentifier *string `type:"string"` + + // The ARN of the source endpoint. + SourceEndpointArn *string `type:"string"` + + // The table mappings for the replication task, in JSON format. + TableMappings *string `type:"string"` + + // The ARN of the target endpoint. + TargetEndpointArn *string `type:"string"` + + // Supplemental information that the task requires to migrate the data for certain + // source and target endpoints. + TaskData *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 AwsDmsReplicationTaskDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsDmsReplicationTaskDetails) GoString() string { + return s.String() +} + +// SetCdcStartPosition sets the CdcStartPosition field's value. +func (s *AwsDmsReplicationTaskDetails) SetCdcStartPosition(v string) *AwsDmsReplicationTaskDetails { + s.CdcStartPosition = &v + return s +} + +// SetCdcStartTime sets the CdcStartTime field's value. +func (s *AwsDmsReplicationTaskDetails) SetCdcStartTime(v string) *AwsDmsReplicationTaskDetails { + s.CdcStartTime = &v + return s +} + +// SetCdcStopPosition sets the CdcStopPosition field's value. +func (s *AwsDmsReplicationTaskDetails) SetCdcStopPosition(v string) *AwsDmsReplicationTaskDetails { + s.CdcStopPosition = &v + return s +} + +// SetId sets the Id field's value. +func (s *AwsDmsReplicationTaskDetails) SetId(v string) *AwsDmsReplicationTaskDetails { + s.Id = &v + return s +} + +// SetMigrationType sets the MigrationType field's value. +func (s *AwsDmsReplicationTaskDetails) SetMigrationType(v string) *AwsDmsReplicationTaskDetails { + s.MigrationType = &v + return s +} + +// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value. +func (s *AwsDmsReplicationTaskDetails) SetReplicationInstanceArn(v string) *AwsDmsReplicationTaskDetails { + s.ReplicationInstanceArn = &v + return s +} + +// SetReplicationTaskIdentifier sets the ReplicationTaskIdentifier field's value. +func (s *AwsDmsReplicationTaskDetails) SetReplicationTaskIdentifier(v string) *AwsDmsReplicationTaskDetails { + s.ReplicationTaskIdentifier = &v + return s +} + +// SetReplicationTaskSettings sets the ReplicationTaskSettings field's value. +func (s *AwsDmsReplicationTaskDetails) SetReplicationTaskSettings(v string) *AwsDmsReplicationTaskDetails { + s.ReplicationTaskSettings = &v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *AwsDmsReplicationTaskDetails) SetResourceIdentifier(v string) *AwsDmsReplicationTaskDetails { + s.ResourceIdentifier = &v + return s +} + +// SetSourceEndpointArn sets the SourceEndpointArn field's value. +func (s *AwsDmsReplicationTaskDetails) SetSourceEndpointArn(v string) *AwsDmsReplicationTaskDetails { + s.SourceEndpointArn = &v + return s +} + +// SetTableMappings sets the TableMappings field's value. +func (s *AwsDmsReplicationTaskDetails) SetTableMappings(v string) *AwsDmsReplicationTaskDetails { + s.TableMappings = &v + return s +} + +// SetTargetEndpointArn sets the TargetEndpointArn field's value. +func (s *AwsDmsReplicationTaskDetails) SetTargetEndpointArn(v string) *AwsDmsReplicationTaskDetails { + s.TargetEndpointArn = &v + return s +} + +// SetTaskData sets the TaskData field's value. +func (s *AwsDmsReplicationTaskDetails) SetTaskData(v string) *AwsDmsReplicationTaskDetails { + s.TaskData = &v + return s +} + // Contains a definition of an attribute for the table. type AwsDynamoDbTableAttributeDefinition struct { _ struct{} `type:"structure"` @@ -25296,6 +27249,9 @@ // The task launch types that the task definition was validated against. RequiresCompatibilities []*string `type:"list"` + // The status of the task definition. + Status *string `type:"string"` + // The short name or ARN of the IAM role that grants containers in the task // permission to call Amazon Web Services API operations on your behalf. TaskRoleArn *string `type:"string"` @@ -25394,6 +27350,12 @@ return s } +// SetStatus sets the Status field's value. +func (s *AwsEcsTaskDefinitionDetails) SetStatus(v string) *AwsEcsTaskDefinitionDetails { + s.Status = &v + return s +} + // SetTaskRoleArn sets the TaskRoleArn field's value. func (s *AwsEcsTaskDefinitionDetails) SetTaskRoleArn(v string) *AwsEcsTaskDefinitionDetails { s.TaskRoleArn = &v @@ -28683,6 +30645,399 @@ return s } +// Provides details about an Amazon EventBridge global endpoint. The endpoint +// can improve your application’s availability by making it Regional-fault +// tolerant. +type AwsEventsEndpointDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the endpoint. + Arn *string `type:"string"` + + // A description of the endpoint. + Description *string `type:"string"` + + // The URL subdomain of the endpoint. For example, if EndpointUrl is https://abcde.veo.endpoints.event.amazonaws.com, + // then the EndpointId is abcde.veo. + EndpointId *string `type:"string"` + + // The URL of the endpoint. + EndpointUrl *string `type:"string"` + + // The event buses being used by the endpoint. + EventBuses []*AwsEventsEndpointEventBusesDetails `type:"list"` + + // The name of the endpoint. + Name *string `type:"string"` + + // Whether event replication was enabled or disabled for this endpoint. The + // default state is ENABLED, which means you must supply a RoleArn. If you don't + // have a RoleArn or you don't want event replication enabled, set the state + // to DISABLED. + ReplicationConfig *AwsEventsEndpointReplicationConfigDetails `type:"structure"` + + // The ARN of the role used by event replication for the endpoint. + RoleArn *string `type:"string"` + + // The routing configuration of the endpoint. + RoutingConfig *AwsEventsEndpointRoutingConfigDetails `type:"structure"` + + // The current state of the endpoint. + State *string `type:"string"` + + // The reason the endpoint is in its current state. + StateReason *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 AwsEventsEndpointDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointDetails) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *AwsEventsEndpointDetails) SetArn(v string) *AwsEventsEndpointDetails { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsEventsEndpointDetails) SetDescription(v string) *AwsEventsEndpointDetails { + s.Description = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *AwsEventsEndpointDetails) SetEndpointId(v string) *AwsEventsEndpointDetails { + s.EndpointId = &v + return s +} + +// SetEndpointUrl sets the EndpointUrl field's value. +func (s *AwsEventsEndpointDetails) SetEndpointUrl(v string) *AwsEventsEndpointDetails { + s.EndpointUrl = &v + return s +} + +// SetEventBuses sets the EventBuses field's value. +func (s *AwsEventsEndpointDetails) SetEventBuses(v []*AwsEventsEndpointEventBusesDetails) *AwsEventsEndpointDetails { + s.EventBuses = v + return s +} + +// SetName sets the Name field's value. +func (s *AwsEventsEndpointDetails) SetName(v string) *AwsEventsEndpointDetails { + s.Name = &v + return s +} + +// SetReplicationConfig sets the ReplicationConfig field's value. +func (s *AwsEventsEndpointDetails) SetReplicationConfig(v *AwsEventsEndpointReplicationConfigDetails) *AwsEventsEndpointDetails { + s.ReplicationConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *AwsEventsEndpointDetails) SetRoleArn(v string) *AwsEventsEndpointDetails { + s.RoleArn = &v + return s +} + +// SetRoutingConfig sets the RoutingConfig field's value. +func (s *AwsEventsEndpointDetails) SetRoutingConfig(v *AwsEventsEndpointRoutingConfigDetails) *AwsEventsEndpointDetails { + s.RoutingConfig = v + return s +} + +// SetState sets the State field's value. +func (s *AwsEventsEndpointDetails) SetState(v string) *AwsEventsEndpointDetails { + s.State = &v + return s +} + +// SetStateReason sets the StateReason field's value. +func (s *AwsEventsEndpointDetails) SetStateReason(v string) *AwsEventsEndpointDetails { + s.StateReason = &v + return s +} + +// Provides details about the Amazon EventBridge event buses that the endpoint +// is associated with. +type AwsEventsEndpointEventBusesDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the event bus that the endpoint is associated + // with. + EventBusArn *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 AwsEventsEndpointEventBusesDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointEventBusesDetails) GoString() string { + return s.String() +} + +// SetEventBusArn sets the EventBusArn field's value. +func (s *AwsEventsEndpointEventBusesDetails) SetEventBusArn(v string) *AwsEventsEndpointEventBusesDetails { + s.EventBusArn = &v + return s +} + +// Indicates whether replication is enabled or disabled for the endpoint. If +// enabled, the endpoint can replicate all events to a secondary Amazon Web +// Services Region. +type AwsEventsEndpointReplicationConfigDetails struct { + _ struct{} `type:"structure"` + + // The state of event replication. + State *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 AwsEventsEndpointReplicationConfigDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointReplicationConfigDetails) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *AwsEventsEndpointReplicationConfigDetails) SetState(v string) *AwsEventsEndpointReplicationConfigDetails { + s.State = &v + return s +} + +// Provides details about the routing configuration of the endpoint. +type AwsEventsEndpointRoutingConfigDetails struct { + _ struct{} `type:"structure"` + + // The failover configuration for an endpoint. This includes what triggers failover + // and what happens when it's triggered. + FailoverConfig *AwsEventsEndpointRoutingConfigFailoverConfigDetails `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 AwsEventsEndpointRoutingConfigDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointRoutingConfigDetails) GoString() string { + return s.String() +} + +// SetFailoverConfig sets the FailoverConfig field's value. +func (s *AwsEventsEndpointRoutingConfigDetails) SetFailoverConfig(v *AwsEventsEndpointRoutingConfigFailoverConfigDetails) *AwsEventsEndpointRoutingConfigDetails { + s.FailoverConfig = v + return s +} + +// The failover configuration for an endpoint. This includes what triggers failover +// and what happens when it's triggered. +type AwsEventsEndpointRoutingConfigFailoverConfigDetails struct { + _ struct{} `type:"structure"` + + // The main Region of the endpoint. + Primary *AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails `type:"structure"` + + // The Region that events are routed to when failover is triggered or event + // replication is enabled. + Secondary *AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails `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 AwsEventsEndpointRoutingConfigFailoverConfigDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointRoutingConfigFailoverConfigDetails) GoString() string { + return s.String() +} + +// SetPrimary sets the Primary field's value. +func (s *AwsEventsEndpointRoutingConfigFailoverConfigDetails) SetPrimary(v *AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails) *AwsEventsEndpointRoutingConfigFailoverConfigDetails { + s.Primary = v + return s +} + +// SetSecondary sets the Secondary field's value. +func (s *AwsEventsEndpointRoutingConfigFailoverConfigDetails) SetSecondary(v *AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails) *AwsEventsEndpointRoutingConfigFailoverConfigDetails { + s.Secondary = v + return s +} + +// Provides details about the primary Amazon Web Services Region of the endpoint. +type AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the health check used by the endpoint to + // determine whether failover is triggered. + HealthCheck *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 AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails) GoString() string { + return s.String() +} + +// SetHealthCheck sets the HealthCheck field's value. +func (s *AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails) SetHealthCheck(v string) *AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetails { + s.HealthCheck = &v + return s +} + +// The Amazon Web Services Region that events are routed to when failover is +// triggered or event replication is enabled. +type AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails struct { + _ struct{} `type:"structure"` + + // Defines the secondary Region. + Route *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 AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails) GoString() string { + return s.String() +} + +// SetRoute sets the Route field's value. +func (s *AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails) SetRoute(v string) *AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetails { + s.Route = &v + return s +} + +// Provides details about Amazon EventBridge event bus. An event bus is a router +// that receives events and delivers them to zero or more destinations, or targets. +// This can be a custom event bus which you can use to receive events from your +// custom applications and services, or it can be a partner event bus which +// can be matched to a partner event source. +type AwsEventsEventbusDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the account permitted to write events to + // the current account. + Arn *string `type:"string"` + + // The name of the event bus. + Name *string `type:"string"` + + // The policy that enables the external account to send events to your account. + Policy *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 AwsEventsEventbusDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEventsEventbusDetails) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *AwsEventsEventbusDetails) SetArn(v string) *AwsEventsEventbusDetails { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsEventsEventbusDetails) SetName(v string) *AwsEventsEventbusDetails { + s.Name = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *AwsEventsEventbusDetails) SetPolicy(v string) *AwsEventsEventbusDetails { + s.Policy = &v + return s +} + // An object that contains information on the status of CloudTrail as a data // source for the detector. type AwsGuardDutyDetectorDataSourcesCloudTrailDetails struct { @@ -31204,6 +33559,460 @@ return s } +// Provides details about different modes of client authentication. +type AwsMskClusterClusterInfoClientAuthenticationDetails struct { + _ struct{} `type:"structure"` + + // Provides details for client authentication using SASL. + Sasl *AwsMskClusterClusterInfoClientAuthenticationSaslDetails `type:"structure"` + + // Provides details for client authentication using TLS. + Tls *AwsMskClusterClusterInfoClientAuthenticationTlsDetails `type:"structure"` + + // Provides details for allowing no client authentication. + Unauthenticated *AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails `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 AwsMskClusterClusterInfoClientAuthenticationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoClientAuthenticationDetails) GoString() string { + return s.String() +} + +// SetSasl sets the Sasl field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationDetails) SetSasl(v *AwsMskClusterClusterInfoClientAuthenticationSaslDetails) *AwsMskClusterClusterInfoClientAuthenticationDetails { + s.Sasl = v + return s +} + +// SetTls sets the Tls field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationDetails) SetTls(v *AwsMskClusterClusterInfoClientAuthenticationTlsDetails) *AwsMskClusterClusterInfoClientAuthenticationDetails { + s.Tls = v + return s +} + +// SetUnauthenticated sets the Unauthenticated field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationDetails) SetUnauthenticated(v *AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails) *AwsMskClusterClusterInfoClientAuthenticationDetails { + s.Unauthenticated = v + return s +} + +// Provides details for client authentication using SASL. +type AwsMskClusterClusterInfoClientAuthenticationSaslDetails struct { + _ struct{} `type:"structure"` + + // Provides details for SASL client authentication using IAM. + Iam *AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails `type:"structure"` + + // Details for SASL client authentication using SCRAM. + Scram *AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails `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 AwsMskClusterClusterInfoClientAuthenticationSaslDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoClientAuthenticationSaslDetails) GoString() string { + return s.String() +} + +// SetIam sets the Iam field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationSaslDetails) SetIam(v *AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails) *AwsMskClusterClusterInfoClientAuthenticationSaslDetails { + s.Iam = v + return s +} + +// SetScram sets the Scram field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationSaslDetails) SetScram(v *AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails) *AwsMskClusterClusterInfoClientAuthenticationSaslDetails { + s.Scram = v + return s +} + +// Details for SASL/IAM client authentication. +type AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails struct { + _ struct{} `type:"structure"` + + // Indicates whether SASL/IAM authentication is enabled or not. + Enabled *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 AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails) SetEnabled(v bool) *AwsMskClusterClusterInfoClientAuthenticationSaslIamDetails { + s.Enabled = &v + return s +} + +// Details for SASL/SCRAM client authentication. +type AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails struct { + _ struct{} `type:"structure"` + + // Indicates whether SASL/SCRAM authentication is enabled or not. + Enabled *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 AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails) SetEnabled(v bool) *AwsMskClusterClusterInfoClientAuthenticationSaslScramDetails { + s.Enabled = &v + return s +} + +// Provides details for client authentication using TLS. +type AwsMskClusterClusterInfoClientAuthenticationTlsDetails struct { + _ struct{} `type:"structure"` + + // List of Amazon Web Services Private CA Amazon Resource Names (ARNs). Amazon + // Web Services Private CA enables creation of private certificate authority + // (CA) hierarchies, including root and subordinate CAs, without the investment + // and maintenance costs of operating an on-premises CA. + CertificateAuthorityArnList []*string `type:"list"` + + // Indicates whether TLS authentication is enabled or not. + Enabled *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 AwsMskClusterClusterInfoClientAuthenticationTlsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoClientAuthenticationTlsDetails) GoString() string { + return s.String() +} + +// SetCertificateAuthorityArnList sets the CertificateAuthorityArnList field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationTlsDetails) SetCertificateAuthorityArnList(v []*string) *AwsMskClusterClusterInfoClientAuthenticationTlsDetails { + s.CertificateAuthorityArnList = v + return s +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationTlsDetails) SetEnabled(v bool) *AwsMskClusterClusterInfoClientAuthenticationTlsDetails { + s.Enabled = &v + return s +} + +// Provides details for allowing no client authentication. +type AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails struct { + _ struct{} `type:"structure"` + + // Indicates whether unauthenticated is allowed or not. + Enabled *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 AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails) SetEnabled(v bool) *AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetails { + s.Enabled = &v + return s +} + +// Provide details about an Amazon MSK cluster. +type AwsMskClusterClusterInfoDetails struct { + _ struct{} `type:"structure"` + + // Provides information for different modes of client authentication. + ClientAuthentication *AwsMskClusterClusterInfoClientAuthenticationDetails `type:"structure"` + + // The name of the cluster. + ClusterName *string `type:"string"` + + // The current version of the MSK cluster. + CurrentVersion *string `type:"string"` + + // Includes encryption-related information, such as the KMS key used for encrypting + // data at rest and whether you want Amazon MSK to encrypt your data in transit. + EncryptionInfo *AwsMskClusterClusterInfoEncryptionInfoDetails `type:"structure"` + + // The number of broker nodes in the cluster. + NumberOfBrokerNodes *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 AwsMskClusterClusterInfoDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoDetails) GoString() string { + return s.String() +} + +// SetClientAuthentication sets the ClientAuthentication field's value. +func (s *AwsMskClusterClusterInfoDetails) SetClientAuthentication(v *AwsMskClusterClusterInfoClientAuthenticationDetails) *AwsMskClusterClusterInfoDetails { + s.ClientAuthentication = v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *AwsMskClusterClusterInfoDetails) SetClusterName(v string) *AwsMskClusterClusterInfoDetails { + s.ClusterName = &v + return s +} + +// SetCurrentVersion sets the CurrentVersion field's value. +func (s *AwsMskClusterClusterInfoDetails) SetCurrentVersion(v string) *AwsMskClusterClusterInfoDetails { + s.CurrentVersion = &v + return s +} + +// SetEncryptionInfo sets the EncryptionInfo field's value. +func (s *AwsMskClusterClusterInfoDetails) SetEncryptionInfo(v *AwsMskClusterClusterInfoEncryptionInfoDetails) *AwsMskClusterClusterInfoDetails { + s.EncryptionInfo = v + return s +} + +// SetNumberOfBrokerNodes sets the NumberOfBrokerNodes field's value. +func (s *AwsMskClusterClusterInfoDetails) SetNumberOfBrokerNodes(v int64) *AwsMskClusterClusterInfoDetails { + s.NumberOfBrokerNodes = &v + return s +} + +// Includes encryption-related information, such as the KMS key used for encrypting +// data at rest and whether you want MSK to encrypt your data in transit. +type AwsMskClusterClusterInfoEncryptionInfoDetails struct { + _ struct{} `type:"structure"` + + // The data-volume encryption details. You can't update encryption at rest settings + // for existing clusters. + EncryptionAtRest *AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails `type:"structure"` + + // The settings for encrypting data in transit. + EncryptionInTransit *AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails `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 AwsMskClusterClusterInfoEncryptionInfoDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoEncryptionInfoDetails) GoString() string { + return s.String() +} + +// SetEncryptionAtRest sets the EncryptionAtRest field's value. +func (s *AwsMskClusterClusterInfoEncryptionInfoDetails) SetEncryptionAtRest(v *AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails) *AwsMskClusterClusterInfoEncryptionInfoDetails { + s.EncryptionAtRest = v + return s +} + +// SetEncryptionInTransit sets the EncryptionInTransit field's value. +func (s *AwsMskClusterClusterInfoEncryptionInfoDetails) SetEncryptionInTransit(v *AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails) *AwsMskClusterClusterInfoEncryptionInfoDetails { + s.EncryptionInTransit = v + return s +} + +// The data-volume encryption details. You can't update encryption at rest settings +// for existing clusters. +type AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the KMS key for encrypting data at rest. + // If you don't specify a KMS key, MSK creates one for you and uses it. + DataVolumeKMSKeyId *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 AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails) GoString() string { + return s.String() +} + +// SetDataVolumeKMSKeyId sets the DataVolumeKMSKeyId field's value. +func (s *AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails) SetDataVolumeKMSKeyId(v string) *AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetails { + s.DataVolumeKMSKeyId = &v + return s +} + +// The settings for encrypting data in transit. +type AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails struct { + _ struct{} `type:"structure"` + + // Indicates the encryption setting for data in transit between clients and + // brokers. + ClientBroker *string `type:"string"` + + // When set to true, it indicates that data communication among the broker nodes + // of the cluster is encrypted. When set to false, the communication happens + // in plain text. The default value is true. + InCluster *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 AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails) GoString() string { + return s.String() +} + +// SetClientBroker sets the ClientBroker field's value. +func (s *AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails) SetClientBroker(v string) *AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails { + s.ClientBroker = &v + return s +} + +// SetInCluster sets the InCluster field's value. +func (s *AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails) SetInCluster(v bool) *AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetails { + s.InCluster = &v + return s +} + +// Provides details about an Amazon Managed Streaming for Apache Kafka (Amazon +// MSK) cluster. +type AwsMskClusterDetails struct { + _ struct{} `type:"structure"` + + // Provides information about a cluster. + ClusterInfo *AwsMskClusterClusterInfoDetails `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 AwsMskClusterDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMskClusterDetails) GoString() string { + return s.String() +} + +// SetClusterInfo sets the ClusterInfo field's value. +func (s *AwsMskClusterDetails) SetClusterInfo(v *AwsMskClusterClusterInfoDetails) *AwsMskClusterDetails { + s.ClusterInfo = v + return s +} + // Details about an Network Firewall firewall. type AwsNetworkFirewallFirewallDetails struct { _ struct{} `type:"structure"` @@ -32388,6 +35197,9 @@ // A list of the IAM roles that are associated with the DB cluster. AssociatedRoles []*AwsRdsDbClusterAssociatedRole `type:"list"` + // Indicates if minor version upgrades are automatically applied to the cluster. + AutoMinorVersionUpgrade *bool `type:"boolean"` + // A list of Availability Zones (AZs) where instances in the DB cluster can // be created. AvailabilityZones []*string `type:"list"` @@ -32569,6 +35381,12 @@ return s } +// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value. +func (s *AwsRdsDbClusterDetails) SetAutoMinorVersionUpgrade(v bool) *AwsRdsDbClusterDetails { + s.AutoMinorVersionUpgrade = &v + return s +} + // SetAvailabilityZones sets the AvailabilityZones field's value. func (s *AwsRdsDbClusterDetails) SetAvailabilityZones(v []*string) *AwsRdsDbClusterDetails { s.AvailabilityZones = v @@ -36490,6 +39308,232 @@ return s } +// An object that contains an optional comment about your Amazon Route 53 hosted +// zone. +type AwsRoute53HostedZoneConfigDetails struct { + _ struct{} `type:"structure"` + + // Any comments that you include about the hosted zone. + Comment *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 AwsRoute53HostedZoneConfigDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRoute53HostedZoneConfigDetails) GoString() string { + return s.String() +} + +// SetComment sets the Comment field's value. +func (s *AwsRoute53HostedZoneConfigDetails) SetComment(v string) *AwsRoute53HostedZoneConfigDetails { + s.Comment = &v + return s +} + +// Provides details about a specified Amazon Route 53 hosted zone, including +// the four name servers assigned to the hosted zone. A hosted zone represents +// a collection of records that can be managed together, belonging to a single +// parent domain name. +type AwsRoute53HostedZoneDetails struct { + _ struct{} `type:"structure"` + + // An object that contains information about the specified hosted zone. + HostedZone *AwsRoute53HostedZoneObjectDetails `type:"structure"` + + // An object that contains a list of the authoritative name servers for a hosted + // zone or for a reusable delegation set. + NameServers []*string `type:"list"` + + // An array that contains one QueryLoggingConfig element for each DNS query + // logging configuration that is associated with the current Amazon Web Services + // account. + QueryLoggingConfig *AwsRoute53QueryLoggingConfigDetails `type:"structure"` + + // An object that contains information about the Amazon Virtual Private Clouds + // (Amazon VPCs) that are associated with the specified hosted zone. + Vpcs []*AwsRoute53HostedZoneVpcDetails `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 AwsRoute53HostedZoneDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRoute53HostedZoneDetails) GoString() string { + return s.String() +} + +// SetHostedZone sets the HostedZone field's value. +func (s *AwsRoute53HostedZoneDetails) SetHostedZone(v *AwsRoute53HostedZoneObjectDetails) *AwsRoute53HostedZoneDetails { + s.HostedZone = v + return s +} + +// SetNameServers sets the NameServers field's value. +func (s *AwsRoute53HostedZoneDetails) SetNameServers(v []*string) *AwsRoute53HostedZoneDetails { + s.NameServers = v + return s +} + +// SetQueryLoggingConfig sets the QueryLoggingConfig field's value. +func (s *AwsRoute53HostedZoneDetails) SetQueryLoggingConfig(v *AwsRoute53QueryLoggingConfigDetails) *AwsRoute53HostedZoneDetails { + s.QueryLoggingConfig = v + return s +} + +// SetVpcs sets the Vpcs field's value. +func (s *AwsRoute53HostedZoneDetails) SetVpcs(v []*AwsRoute53HostedZoneVpcDetails) *AwsRoute53HostedZoneDetails { + s.Vpcs = v + return s +} + +// An object that contains information about an Amazon Route 53 hosted zone. +type AwsRoute53HostedZoneObjectDetails struct { + _ struct{} `type:"structure"` + + // An object that includes the Comment element. + Config *AwsRoute53HostedZoneConfigDetails `type:"structure"` + + // The ID that Route 53 assigns to the hosted zone when you create it. + Id *string `type:"string"` + + // The name of the domain. For public hosted zones, this is the name that you + // have registered with your DNS registrar. + 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 AwsRoute53HostedZoneObjectDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRoute53HostedZoneObjectDetails) GoString() string { + return s.String() +} + +// SetConfig sets the Config field's value. +func (s *AwsRoute53HostedZoneObjectDetails) SetConfig(v *AwsRoute53HostedZoneConfigDetails) *AwsRoute53HostedZoneObjectDetails { + s.Config = v + return s +} + +// SetId sets the Id field's value. +func (s *AwsRoute53HostedZoneObjectDetails) SetId(v string) *AwsRoute53HostedZoneObjectDetails { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsRoute53HostedZoneObjectDetails) SetName(v string) *AwsRoute53HostedZoneObjectDetails { + s.Name = &v + return s +} + +// For private hosted zones, this is a complex type that contains information +// about an Amazon VPC. +type AwsRoute53HostedZoneVpcDetails struct { + _ struct{} `type:"structure"` + + // The identifier of an Amazon VPC. + Id *string `type:"string"` + + // The Amazon Web Services Region that an Amazon VPC was created in. + Region *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 AwsRoute53HostedZoneVpcDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRoute53HostedZoneVpcDetails) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *AwsRoute53HostedZoneVpcDetails) SetId(v string) *AwsRoute53HostedZoneVpcDetails { + s.Id = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *AwsRoute53HostedZoneVpcDetails) SetRegion(v string) *AwsRoute53HostedZoneVpcDetails { + s.Region = &v + return s +} + +// Provides details about a specified Amazon Route 53 configuration for DNS +// query logging. +type AwsRoute53QueryLoggingConfigDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log group that + // Route 53 is publishing logs to. + CloudWatchLogsLogGroupArn *CloudWatchLogsLogGroupArnConfigDetails `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 AwsRoute53QueryLoggingConfigDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsRoute53QueryLoggingConfigDetails) GoString() string { + return s.String() +} + +// SetCloudWatchLogsLogGroupArn sets the CloudWatchLogsLogGroupArn field's value. +func (s *AwsRoute53QueryLoggingConfigDetails) SetCloudWatchLogsLogGroupArn(v *CloudWatchLogsLogGroupArnConfigDetails) *AwsRoute53QueryLoggingConfigDetails { + s.CloudWatchLogsLogGroupArn = v + return s +} + // provides information about the Amazon S3 Public Access Block configuration // for accounts. type AwsS3AccountPublicAccessBlockDetails struct { @@ -38518,6 +41562,9 @@ // AwsAccountId is a required field AwsAccountId *string `type:"string" required:"true"` + // The name of the Amazon Web Services account from which a finding was generated. + AwsAccountName *string `type:"string"` + // The name of the company for the product that generated the finding. // // Security Hub populates this attribute automatically for each finding. You @@ -38627,6 +41674,14 @@ // The details of process-related information about a finding. Process *ProcessDetails `type:"structure"` + // An ISO8601-formatted timestamp that indicates when Security Hub received + // a finding and begins to process it. + // + // A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot + // contain spaces, and date and time should be separated by T. For more information, + // see RFC 3339 section 5.6, Internet Date/Time Format (https://www.rfc-editor.org/rfc/rfc3339#section-5.6). + ProcessedAt *string `type:"string"` + // The ARN generated by Security Hub that uniquely identifies a product that // generates findings. This can be the ARN for a third-party product that is // integrated with Security Hub, or the ARN for a custom integration. @@ -38865,6 +41920,12 @@ return s } +// SetAwsAccountName sets the AwsAccountName field's value. +func (s *AwsSecurityFinding) SetAwsAccountName(v string) *AwsSecurityFinding { + s.AwsAccountName = &v + return s +} + // SetCompanyName sets the CompanyName field's value. func (s *AwsSecurityFinding) SetCompanyName(v string) *AwsSecurityFinding { s.CompanyName = &v @@ -38973,6 +42034,12 @@ return s } +// SetProcessedAt sets the ProcessedAt field's value. +func (s *AwsSecurityFinding) SetProcessedAt(v string) *AwsSecurityFinding { + s.ProcessedAt = &v + return s +} + // SetProductArn sets the ProductArn field's value. func (s *AwsSecurityFinding) SetProductArn(v string) *AwsSecurityFinding { s.ProductArn = &v @@ -39105,18 +42172,20 @@ return s } -// A collection of attributes that are applied to all active Security Hub-aggregated -// findings and that result in a subset of findings that are included in this -// insight. +// A collection of filters that are applied to all active findings aggregated +// by Security Hub. // -// You can filter by up to 10 finding attributes. For each attribute, you can +// You can filter by up to ten finding attributes. For each attribute, you can // provide up to 20 filter values. type AwsSecurityFindingFilters struct { _ struct{} `type:"structure"` - // The Amazon Web Services account ID that a finding is generated in. + // The Amazon Web Services account ID in which a finding is generated. AwsAccountId []*StringFilter `type:"list"` + // The name of the Amazon Web Services account in which a finding is generated. + AwsAccountName []*StringFilter `type:"list"` + // The name of the findings provider (company) that owns the solution (product) // that generates findings. CompanyName []*StringFilter `type:"list"` @@ -39131,6 +42200,12 @@ // typically consist of an Amazon Web Service and a number, such as APIGateway.5. ComplianceSecurityControlId []*StringFilter `type:"list"` + // The name of a security control parameter. + ComplianceSecurityControlParametersName []*StringFilter `type:"list"` + + // The current value of a security control parameter. + ComplianceSecurityControlParametersValue []*StringFilter `type:"list"` + // Exclusive to findings that are generated as the result of a check run against // a specific rule in a supported standard, such as CIS Amazon Web Services // Foundations. Contains security standard-related finding details. @@ -39335,6 +42410,12 @@ // The ARN of the solution that generated a related finding. RelatedFindingsProductArn []*StringFilter `type:"list"` + // The ARN of the application that is related to a finding. + ResourceApplicationArn []*StringFilter `type:"list"` + + // The name of the application that is related to a finding. + ResourceApplicationName []*StringFilter `type:"list"` + // The IAM profile ARN of the instance. ResourceAwsEc2InstanceIamInstanceProfileArn []*StringFilter `type:"list"` @@ -39485,6 +42566,16 @@ // The veracity of a finding. VerificationState []*StringFilter `type:"list"` + // Indicates whether a software vulnerability in your environment has a known + // exploit. You can filter findings by this field only if you use Security Hub + // and Amazon Inspector. + VulnerabilitiesExploitAvailable []*StringFilter `type:"list"` + + // Indicates whether a vulnerability is fixed in a newer version of the affected + // software packages. You can filter findings by this field only if you use + // Security Hub and Amazon Inspector. + VulnerabilitiesFixAvailable []*StringFilter `type:"list"` + // The workflow state of a finding. // // Note that this field is deprecated. To search for a finding based on its @@ -39543,6 +42634,12 @@ return s } +// SetAwsAccountName sets the AwsAccountName field's value. +func (s *AwsSecurityFindingFilters) SetAwsAccountName(v []*StringFilter) *AwsSecurityFindingFilters { + s.AwsAccountName = v + return s +} + // SetCompanyName sets the CompanyName field's value. func (s *AwsSecurityFindingFilters) SetCompanyName(v []*StringFilter) *AwsSecurityFindingFilters { s.CompanyName = v @@ -39561,6 +42658,18 @@ return s } +// SetComplianceSecurityControlParametersName sets the ComplianceSecurityControlParametersName field's value. +func (s *AwsSecurityFindingFilters) SetComplianceSecurityControlParametersName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ComplianceSecurityControlParametersName = v + return s +} + +// SetComplianceSecurityControlParametersValue sets the ComplianceSecurityControlParametersValue field's value. +func (s *AwsSecurityFindingFilters) SetComplianceSecurityControlParametersValue(v []*StringFilter) *AwsSecurityFindingFilters { + s.ComplianceSecurityControlParametersValue = v + return s +} + // SetComplianceStatus sets the ComplianceStatus field's value. func (s *AwsSecurityFindingFilters) SetComplianceStatus(v []*StringFilter) *AwsSecurityFindingFilters { s.ComplianceStatus = v @@ -39855,6 +42964,18 @@ return s } +// SetResourceApplicationArn sets the ResourceApplicationArn field's value. +func (s *AwsSecurityFindingFilters) SetResourceApplicationArn(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceApplicationArn = v + return s +} + +// SetResourceApplicationName sets the ResourceApplicationName field's value. +func (s *AwsSecurityFindingFilters) SetResourceApplicationName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceApplicationName = v + return s +} + // SetResourceAwsEc2InstanceIamInstanceProfileArn sets the ResourceAwsEc2InstanceIamInstanceProfileArn field's value. func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIamInstanceProfileArn(v []*StringFilter) *AwsSecurityFindingFilters { s.ResourceAwsEc2InstanceIamInstanceProfileArn = v @@ -40107,6 +43228,18 @@ return s } +// SetVulnerabilitiesExploitAvailable sets the VulnerabilitiesExploitAvailable field's value. +func (s *AwsSecurityFindingFilters) SetVulnerabilitiesExploitAvailable(v []*StringFilter) *AwsSecurityFindingFilters { + s.VulnerabilitiesExploitAvailable = v + return s +} + +// SetVulnerabilitiesFixAvailable sets the VulnerabilitiesFixAvailable field's value. +func (s *AwsSecurityFindingFilters) SetVulnerabilitiesFixAvailable(v []*StringFilter) *AwsSecurityFindingFilters { + s.VulnerabilitiesFixAvailable = v + return s +} + // SetWorkflowState sets the WorkflowState field's value. func (s *AwsSecurityFindingFilters) SetWorkflowState(v []*StringFilter) *AwsSecurityFindingFilters { s.WorkflowState = v @@ -43369,6 +46502,95 @@ return s } +type BatchGetConfigurationPolicyAssociationsInput struct { + _ struct{} `type:"structure"` + + // Specifies one or more target account IDs, organizational unit (OU) IDs, or + // the root ID to retrieve associations for. + // + // ConfigurationPolicyAssociationIdentifiers is a required field + ConfigurationPolicyAssociationIdentifiers []*ConfigurationPolicyAssociation `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetConfigurationPolicyAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetConfigurationPolicyAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetConfigurationPolicyAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetConfigurationPolicyAssociationsInput"} + if s.ConfigurationPolicyAssociationIdentifiers == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicyAssociationIdentifiers")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicyAssociationIdentifiers sets the ConfigurationPolicyAssociationIdentifiers field's value. +func (s *BatchGetConfigurationPolicyAssociationsInput) SetConfigurationPolicyAssociationIdentifiers(v []*ConfigurationPolicyAssociation) *BatchGetConfigurationPolicyAssociationsInput { + s.ConfigurationPolicyAssociationIdentifiers = v + return s +} + +type BatchGetConfigurationPolicyAssociationsOutput struct { + _ struct{} `type:"structure"` + + // Describes associations for the target accounts, OUs, or the root. + ConfigurationPolicyAssociations []*ConfigurationPolicyAssociationSummary `type:"list"` + + // An array of configuration policy associations, one for each configuration + // policy association identifier, that was specified in the request but couldn’t + // be processed due to an error. + UnprocessedConfigurationPolicyAssociations []*UnprocessedConfigurationPolicyAssociation `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetConfigurationPolicyAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetConfigurationPolicyAssociationsOutput) GoString() string { + return s.String() +} + +// SetConfigurationPolicyAssociations sets the ConfigurationPolicyAssociations field's value. +func (s *BatchGetConfigurationPolicyAssociationsOutput) SetConfigurationPolicyAssociations(v []*ConfigurationPolicyAssociationSummary) *BatchGetConfigurationPolicyAssociationsOutput { + s.ConfigurationPolicyAssociations = v + return s +} + +// SetUnprocessedConfigurationPolicyAssociations sets the UnprocessedConfigurationPolicyAssociations field's value. +func (s *BatchGetConfigurationPolicyAssociationsOutput) SetUnprocessedConfigurationPolicyAssociations(v []*UnprocessedConfigurationPolicyAssociation) *BatchGetConfigurationPolicyAssociationsOutput { + s.UnprocessedConfigurationPolicyAssociations = v + return s +} + type BatchGetSecurityControlsInput struct { _ struct{} `type:"structure"` @@ -44200,6 +47422,39 @@ return s } +// The options for customizing a security control parameter with a boolean. +// For a boolean parameter, the options are true and false. +type BooleanConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The Security Hub default value for a boolean parameter. + DefaultValue *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 BooleanConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BooleanConfigurationOptions) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *BooleanConfigurationOptions) SetDefaultValue(v bool) *BooleanConfigurationOptions { + s.DefaultValue = &v + return s +} + // Boolean filter for querying findings. type BooleanFilter struct { _ struct{} `type:"structure"` @@ -44500,6 +47755,58 @@ return s } +// The Amazon Resource Name (ARN) and other details of the Amazon CloudWatch +// Logs log group that Amazon Route 53 is publishing logs to. +type CloudWatchLogsLogGroupArnConfigDetails struct { + _ struct{} `type:"structure"` + + // The ARN of the CloudWatch Logs log group that Route 53 is publishing logs + // to. + CloudWatchLogsLogGroupArn *string `type:"string"` + + // The ID of the hosted zone that CloudWatch Logs is logging queries for. + HostedZoneId *string `type:"string"` + + // The ID for a DNS query logging configuration. + Id *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 CloudWatchLogsLogGroupArnConfigDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudWatchLogsLogGroupArnConfigDetails) GoString() string { + return s.String() +} + +// SetCloudWatchLogsLogGroupArn sets the CloudWatchLogsLogGroupArn field's value. +func (s *CloudWatchLogsLogGroupArnConfigDetails) SetCloudWatchLogsLogGroupArn(v string) *CloudWatchLogsLogGroupArnConfigDetails { + s.CloudWatchLogsLogGroupArn = &v + return s +} + +// SetHostedZoneId sets the HostedZoneId field's value. +func (s *CloudWatchLogsLogGroupArnConfigDetails) SetHostedZoneId(v string) *CloudWatchLogsLogGroupArnConfigDetails { + s.HostedZoneId = &v + return s +} + +// SetId sets the Id field's value. +func (s *CloudWatchLogsLogGroupArnConfigDetails) SetId(v string) *CloudWatchLogsLogGroupArnConfigDetails { + s.Id = &v + return s +} + // Provides details about where a code vulnerability is located in your Lambda // function. type CodeVulnerabilitiesFilePath struct { @@ -44577,6 +47884,9 @@ // typically consist of an Amazon Web Service and a number, such as APIGateway.5. SecurityControlId *string `type:"string"` + // An object that includes security control parameter names and values. + SecurityControlParameters []*SecurityControlParameter `type:"list"` + // The result of a standards check. // // The valid values for Status are as follows. @@ -44653,6 +47963,12 @@ return s } +// SetSecurityControlParameters sets the SecurityControlParameters field's value. +func (s *Compliance) SetSecurityControlParameters(v []*SecurityControlParameter) *Compliance { + s.SecurityControlParameters = v + return s +} + // SetStatus sets the Status field's value. func (s *Compliance) SetStatus(v string) *Compliance { s.Status = &v @@ -44665,6 +47981,313 @@ return s } +// The options for customizing a security control parameter. +type ConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The options for customizing a security control parameter that is a boolean. + // For a boolean parameter, the options are true and false. + Boolean *BooleanConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is a double. + Double *DoubleConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is an enum. + Enum *EnumConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is a list of + // enums. + EnumList *EnumListConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is an integer. + Integer *IntegerConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is a list of + // integers. + IntegerList *IntegerListConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is a list of + // strings. + StringList *StringListConfigurationOptions `type:"structure"` + + // The options for customizing a security control parameter that is a string + // data type. + String_ *StringConfigurationOptions `locationName:"String" 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 ConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationOptions) GoString() string { + return s.String() +} + +// SetBoolean sets the Boolean field's value. +func (s *ConfigurationOptions) SetBoolean(v *BooleanConfigurationOptions) *ConfigurationOptions { + s.Boolean = v + return s +} + +// SetDouble sets the Double field's value. +func (s *ConfigurationOptions) SetDouble(v *DoubleConfigurationOptions) *ConfigurationOptions { + s.Double = v + return s +} + +// SetEnum sets the Enum field's value. +func (s *ConfigurationOptions) SetEnum(v *EnumConfigurationOptions) *ConfigurationOptions { + s.Enum = v + return s +} + +// SetEnumList sets the EnumList field's value. +func (s *ConfigurationOptions) SetEnumList(v *EnumListConfigurationOptions) *ConfigurationOptions { + s.EnumList = v + return s +} + +// SetInteger sets the Integer field's value. +func (s *ConfigurationOptions) SetInteger(v *IntegerConfigurationOptions) *ConfigurationOptions { + s.Integer = v + return s +} + +// SetIntegerList sets the IntegerList field's value. +func (s *ConfigurationOptions) SetIntegerList(v *IntegerListConfigurationOptions) *ConfigurationOptions { + s.IntegerList = v + return s +} + +// SetStringList sets the StringList field's value. +func (s *ConfigurationOptions) SetStringList(v *StringListConfigurationOptions) *ConfigurationOptions { + s.StringList = v + return s +} + +// SetString_ sets the String_ field's value. +func (s *ConfigurationOptions) SetString_(v *StringConfigurationOptions) *ConfigurationOptions { + s.String_ = v + return s +} + +// Provides details about the association between an Security Hub configuration +// and a target account, organizational unit, or the root. An association can +// exist between a target and a configuration policy, or between a target and +// self-managed behavior. +type ConfigurationPolicyAssociation struct { + _ struct{} `type:"structure"` + + // The target account, organizational unit, or the root. + Target *Target `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationPolicyAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationPolicyAssociation) GoString() string { + return s.String() +} + +// SetTarget sets the Target field's value. +func (s *ConfigurationPolicyAssociation) SetTarget(v *Target) *ConfigurationPolicyAssociation { + s.Target = v + return s +} + +// An object that contains the details of a configuration policy association +// that’s returned in a ListConfigurationPolicyAssociations request. +type ConfigurationPolicyAssociationSummary struct { + _ struct{} `type:"structure"` + + // The current status of the association between the specified target and the + // configuration. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // The explanation for a FAILED value for AssociationStatus. + AssociationStatusMessage *string `type:"string"` + + // Indicates whether the association between the specified target and the configuration + // was directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The universally unique identifier (UUID) of the configuration policy. + ConfigurationPolicyId *string `type:"string"` + + // The identifier of the target account, organizational unit, or the root. + TargetId *string `type:"string"` + + // Specifies whether the target is an Amazon Web Services account, organizational + // unit, or the root. + TargetType *string `type:"string" enum:"TargetType"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // association was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationPolicyAssociationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationPolicyAssociationSummary) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *ConfigurationPolicyAssociationSummary) SetAssociationStatus(v string) *ConfigurationPolicyAssociationSummary { + s.AssociationStatus = &v + return s +} + +// SetAssociationStatusMessage sets the AssociationStatusMessage field's value. +func (s *ConfigurationPolicyAssociationSummary) SetAssociationStatusMessage(v string) *ConfigurationPolicyAssociationSummary { + s.AssociationStatusMessage = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *ConfigurationPolicyAssociationSummary) SetAssociationType(v string) *ConfigurationPolicyAssociationSummary { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *ConfigurationPolicyAssociationSummary) SetConfigurationPolicyId(v string) *ConfigurationPolicyAssociationSummary { + s.ConfigurationPolicyId = &v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *ConfigurationPolicyAssociationSummary) SetTargetId(v string) *ConfigurationPolicyAssociationSummary { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *ConfigurationPolicyAssociationSummary) SetTargetType(v string) *ConfigurationPolicyAssociationSummary { + s.TargetType = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ConfigurationPolicyAssociationSummary) SetUpdatedAt(v time.Time) *ConfigurationPolicyAssociationSummary { + s.UpdatedAt = &v + return s +} + +// An object that contains the details of an Security Hub configuration policy +// that’s returned in a ListConfigurationPolicies request. +type ConfigurationPolicySummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configuration policy. + Arn *string `type:"string"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The universally unique identifier (UUID) of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // Indicates whether the service that the configuration policy applies to is + // enabled in the policy. + ServiceEnabled *bool `type:"boolean"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationPolicySummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigurationPolicySummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ConfigurationPolicySummary) SetArn(v string) *ConfigurationPolicySummary { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ConfigurationPolicySummary) SetDescription(v string) *ConfigurationPolicySummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *ConfigurationPolicySummary) SetId(v string) *ConfigurationPolicySummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *ConfigurationPolicySummary) SetName(v string) *ConfigurationPolicySummary { + s.Name = &v + return s +} + +// SetServiceEnabled sets the ServiceEnabled field's value. +func (s *ConfigurationPolicySummary) SetServiceEnabled(v bool) *ConfigurationPolicySummary { + s.ServiceEnabled = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ConfigurationPolicySummary) SetUpdatedAt(v time.Time) *ConfigurationPolicySummary { + s.UpdatedAt = &v + return s +} + // Container details related to a finding. type ContainerDetails struct { _ struct{} `type:"structure"` @@ -44953,7 +48576,7 @@ // after creating a rule, use BatchUpdateAutomationRules (https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html). RuleStatus *string `type:"string" enum:"RuleStatus"` - // User-defined tags that help you label the purpose of a rule. + // User-defined tags associated with an automation rule. Tags map[string]*string `min:"1" type:"map"` } @@ -45098,6 +48721,195 @@ return s } +type CreateConfigurationPolicyInput struct { + _ struct{} `type:"structure"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If you provide a list of security controls + // that are enabled in the configuration policy, Security Hub disables all other + // controls (including newly released controls). If you provide a list of security + // controls that are disabled in the configuration policy, Security Hub enables + // all other controls (including newly released controls). + // + // ConfigurationPolicy is a required field + ConfigurationPolicy *Policy `type:"structure" required:"true"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The name of the configuration policy. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // User-defined tags associated with a configuration policy. For more information, + // see Tagging Security Hub resources (https://docs.aws.amazon.com/securityhub/latest/userguide/tagging-resources.html) + // in the Security Hub user guide. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfigurationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateConfigurationPolicyInput"} + if s.ConfigurationPolicy == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicy")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ConfigurationPolicy != nil { + if err := s.ConfigurationPolicy.Validate(); err != nil { + invalidParams.AddNested("ConfigurationPolicy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *CreateConfigurationPolicyInput) SetConfigurationPolicy(v *Policy) *CreateConfigurationPolicyInput { + s.ConfigurationPolicy = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateConfigurationPolicyInput) SetDescription(v string) *CreateConfigurationPolicyInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateConfigurationPolicyInput) SetName(v string) *CreateConfigurationPolicyInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateConfigurationPolicyInput) SetTags(v map[string]*string) *CreateConfigurationPolicyInput { + s.Tags = v + return s +} + +type CreateConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configuration policy. + Arn *string `type:"string"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If the request included a list of security + // controls that are enabled in the configuration policy, Security Hub disables + // all other controls (including newly released controls). If the request included + // a list of security controls that are disabled in the configuration policy, + // Security Hub enables all other controls (including newly released controls). + ConfigurationPolicy *Policy `type:"structure"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The universally unique identifier (UUID) of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfigurationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfigurationPolicyOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateConfigurationPolicyOutput) SetArn(v string) *CreateConfigurationPolicyOutput { + s.Arn = &v + return s +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *CreateConfigurationPolicyOutput) SetConfigurationPolicy(v *Policy) *CreateConfigurationPolicyOutput { + s.ConfigurationPolicy = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateConfigurationPolicyOutput) SetCreatedAt(v time.Time) *CreateConfigurationPolicyOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateConfigurationPolicyOutput) SetDescription(v string) *CreateConfigurationPolicyOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateConfigurationPolicyOutput) SetId(v string) *CreateConfigurationPolicyOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateConfigurationPolicyOutput) SetName(v string) *CreateConfigurationPolicyOutput { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateConfigurationPolicyOutput) SetUpdatedAt(v time.Time) *CreateConfigurationPolicyOutput { + s.UpdatedAt = &v + return s +} + type CreateFindingAggregatorInput struct { _ struct{} `type:"structure"` @@ -45911,6 +49723,78 @@ return s } +type DeleteConfigurationPolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfigurationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationPolicyInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteConfigurationPolicyInput) SetIdentifier(v string) *DeleteConfigurationPolicyInput { + s.Identifier = &v + return s +} + +type DeleteConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfigurationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteConfigurationPolicyOutput) GoString() string { + return s.String() +} + type DeleteFindingAggregatorInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -46461,25 +50345,42 @@ type DescribeOrganizationConfigurationOutput struct { _ struct{} `type:"structure"` - // Whether to automatically enable Security Hub for new accounts in the organization. + // Whether to automatically enable Security Hub in new member accounts when + // they join the organization. // - // If set to true, then Security Hub is enabled for new accounts. If set to - // false, then new accounts are not added automatically. + // If set to true, then Security Hub is automatically enabled in new accounts. + // If set to false, then Security Hub isn't enabled in new accounts automatically. + // The default value is false. + // + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to false and can't be changed in the home Region and linked + // Regions. However, in that case, the delegated administrator can create a + // configuration policy in which Security Hub is enabled and associate the policy + // with new organization accounts. AutoEnable *bool `type:"boolean"` // Whether to automatically enable Security Hub default standards (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-enable-disable.html) - // for new member accounts in the organization. - // - // The default value of this parameter is equal to DEFAULT. + // in new member accounts when they join the organization. // // If equal to DEFAULT, then Security Hub default standards are automatically // enabled for new member accounts. If equal to NONE, then default standards - // are not automatically enabled for new member accounts. + // are not automatically enabled for new member accounts. The default value + // of this parameter is equal to DEFAULT. + // + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to NONE and can't be changed in the home Region and linked Regions. + // However, in that case, the delegated administrator can create a configuration + // policy in which specific security standards are enabled and associate the + // policy with new organization accounts. AutoEnableStandards *string `type:"string" enum:"AutoEnableStandards"` // Whether the maximum number of allowed member accounts are already associated // with the Security Hub administrator account. MemberAccountLimitReached *bool `type:"boolean"` + + // Provides information about the way an organization is configured in Security + // Hub. + OrganizationConfiguration *OrganizationConfiguration `type:"structure"` } // String returns the string representation. @@ -46518,6 +50419,12 @@ return s } +// SetOrganizationConfiguration sets the OrganizationConfiguration field's value. +func (s *DescribeOrganizationConfigurationOutput) SetOrganizationConfiguration(v *OrganizationConfiguration) *DescribeOrganizationConfigurationOutput { + s.OrganizationConfiguration = v + return s +} + type DescribeProductsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -47231,6 +51138,56 @@ return s } +// The options for customizing a security control parameter that is a double. +type DoubleConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The Security Hub default value for a control parameter that is a double. + DefaultValue *float64 `type:"double"` + + // The maximum valid value for a control parameter that is a double. + Max *float64 `type:"double"` + + // The minimum valid value for a control parameter that is a double. + Min *float64 `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 DoubleConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DoubleConfigurationOptions) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *DoubleConfigurationOptions) SetDefaultValue(v float64) *DoubleConfigurationOptions { + s.DefaultValue = &v + return s +} + +// SetMax sets the Max field's value. +func (s *DoubleConfigurationOptions) SetMax(v float64) *DoubleConfigurationOptions { + s.Max = &v + return s +} + +// SetMin sets the Min field's value. +func (s *DoubleConfigurationOptions) SetMin(v float64) *DoubleConfigurationOptions { + s.Min = &v + return s +} + type EnableImportFindingsForProductInput struct { _ struct{} `type:"structure"` @@ -47476,6 +51433,100 @@ return s.String() } +// The options for customizing a security control parameter that is an enum. +type EnumConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The valid values for a control parameter that is an enum. + AllowedValues []*string `type:"list"` + + // The Security Hub default value for a control parameter that is an enum. + DefaultValue *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 EnumConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnumConfigurationOptions) GoString() string { + return s.String() +} + +// SetAllowedValues sets the AllowedValues field's value. +func (s *EnumConfigurationOptions) SetAllowedValues(v []*string) *EnumConfigurationOptions { + s.AllowedValues = v + return s +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *EnumConfigurationOptions) SetDefaultValue(v string) *EnumConfigurationOptions { + s.DefaultValue = &v + return s +} + +// The options for customizing a security control parameter that is a list of +// enums. +type EnumListConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The valid values for a control parameter that is a list of enums. + AllowedValues []*string `type:"list"` + + // The Security Hub default value for a control parameter that is a list of + // enums. + DefaultValue []*string `type:"list"` + + // The maximum number of list items that an enum list control parameter can + // accept. + MaxItems *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 EnumListConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnumListConfigurationOptions) GoString() string { + return s.String() +} + +// SetAllowedValues sets the AllowedValues field's value. +func (s *EnumListConfigurationOptions) SetAllowedValues(v []*string) *EnumListConfigurationOptions { + s.AllowedValues = v + return s +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *EnumListConfigurationOptions) SetDefaultValue(v []*string) *EnumListConfigurationOptions { + s.DefaultValue = v + return s +} + +// SetMaxItems sets the MaxItems field's value. +func (s *EnumListConfigurationOptions) SetMaxItems(v int64) *EnumListConfigurationOptions { + s.MaxItems = &v + return s +} + // Provides information about the file paths that were affected by the threat. type FilePaths struct { _ struct{} `type:"structure"` @@ -48246,6 +52297,289 @@ return s } +type GetConfigurationPolicyAssociationInput struct { + _ struct{} `type:"structure"` + + // The target account ID, organizational unit ID, or the root ID to retrieve + // the association for. + // + // Target is a required field + Target *Target `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfigurationPolicyAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfigurationPolicyAssociationInput"} + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTarget sets the Target field's value. +func (s *GetConfigurationPolicyAssociationInput) SetTarget(v *Target) *GetConfigurationPolicyAssociationInput { + s.Target = v + return s +} + +type GetConfigurationPolicyAssociationOutput struct { + _ struct{} `type:"structure"` + + // The current status of the association between the specified target and the + // configuration. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // The explanation for a FAILED value for AssociationStatus. + AssociationStatusMessage *string `type:"string"` + + // Indicates whether the association between the specified target and the configuration + // was directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The universally unique identifier (UUID) of a configuration policy. For self-managed + // behavior, the value is SELF_MANAGED_SECURITY_HUB. + ConfigurationPolicyId *string `type:"string"` + + // The target account ID, organizational unit ID, or the root ID for which the + // association is retrieved. + TargetId *string `type:"string"` + + // Specifies whether the target is an Amazon Web Services account, organizational + // unit, or the organization root. + TargetType *string `type:"string" enum:"TargetType"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // association was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetAssociationStatus(v string) *GetConfigurationPolicyAssociationOutput { + s.AssociationStatus = &v + return s +} + +// SetAssociationStatusMessage sets the AssociationStatusMessage field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetAssociationStatusMessage(v string) *GetConfigurationPolicyAssociationOutput { + s.AssociationStatusMessage = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetAssociationType(v string) *GetConfigurationPolicyAssociationOutput { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetConfigurationPolicyId(v string) *GetConfigurationPolicyAssociationOutput { + s.ConfigurationPolicyId = &v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetTargetId(v string) *GetConfigurationPolicyAssociationOutput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetTargetType(v string) *GetConfigurationPolicyAssociationOutput { + s.TargetType = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetUpdatedAt(v time.Time) *GetConfigurationPolicyAssociationOutput { + s.UpdatedAt = &v + return s +} + +type GetConfigurationPolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfigurationPolicyInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetConfigurationPolicyInput) SetIdentifier(v string) *GetConfigurationPolicyInput { + s.Identifier = &v + return s +} + +type GetConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the configuration policy. + Arn *string `type:"string"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If the policy includes a list of security + // controls that are enabled, Security Hub disables all other controls (including + // newly released controls). If the policy includes a list of security controls + // that are disabled, Security Hub enables all other controls (including newly + // released controls). + ConfigurationPolicy *Policy `type:"structure"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The UUID of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetConfigurationPolicyOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetConfigurationPolicyOutput) SetArn(v string) *GetConfigurationPolicyOutput { + s.Arn = &v + return s +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *GetConfigurationPolicyOutput) SetConfigurationPolicy(v *Policy) *GetConfigurationPolicyOutput { + s.ConfigurationPolicy = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetConfigurationPolicyOutput) SetCreatedAt(v time.Time) *GetConfigurationPolicyOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetConfigurationPolicyOutput) SetDescription(v string) *GetConfigurationPolicyOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetConfigurationPolicyOutput) SetId(v string) *GetConfigurationPolicyOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetConfigurationPolicyOutput) SetName(v string) *GetConfigurationPolicyOutput { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetConfigurationPolicyOutput) SetUpdatedAt(v time.Time) *GetConfigurationPolicyOutput { + s.UpdatedAt = &v + return s +} + type GetEnabledStandardsInput struct { _ struct{} `type:"structure"` @@ -49146,6 +53480,88 @@ return s } +type GetSecurityControlDefinitionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the security control to retrieve the definition for. This field + // doesn’t accept an Amazon Resource Name (ARN). + // + // SecurityControlId is a required field + SecurityControlId *string `location:"querystring" locationName:"SecurityControlId" 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 GetSecurityControlDefinitionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSecurityControlDefinitionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSecurityControlDefinitionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSecurityControlDefinitionInput"} + if s.SecurityControlId == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityControlId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityControlId sets the SecurityControlId field's value. +func (s *GetSecurityControlDefinitionInput) SetSecurityControlId(v string) *GetSecurityControlDefinitionInput { + s.SecurityControlId = &v + return s +} + +type GetSecurityControlDefinitionOutput struct { + _ struct{} `type:"structure"` + + // Provides metadata for a security control, including its unique standard-agnostic + // identifier, title, description, severity, availability in Amazon Web Services + // Regions, and a link to remediation steps. + // + // SecurityControlDefinition is a required field + SecurityControlDefinition *SecurityControlDefinition `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 GetSecurityControlDefinitionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSecurityControlDefinitionOutput) GoString() string { + return s.String() +} + +// SetSecurityControlDefinition sets the SecurityControlDefinition field's value. +func (s *GetSecurityControlDefinitionOutput) SetSecurityControlDefinition(v *SecurityControlDefinition) *GetSecurityControlDefinitionOutput { + s.SecurityControlDefinition = v + return s +} + // An Internet Control Message Protocol (ICMP) type and code. type IcmpTypeCode struct { _ struct{} `type:"structure"` @@ -49422,6 +53838,118 @@ return s } +// The options for customizing a security control parameter that is an integer. +type IntegerConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The Security Hub default value for a control parameter that is an integer. + DefaultValue *int64 `type:"integer"` + + // The maximum valid value for a control parameter that is an integer. + Max *int64 `type:"integer"` + + // The minimum valid value for a control parameter that is an integer. + Min *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 IntegerConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntegerConfigurationOptions) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *IntegerConfigurationOptions) SetDefaultValue(v int64) *IntegerConfigurationOptions { + s.DefaultValue = &v + return s +} + +// SetMax sets the Max field's value. +func (s *IntegerConfigurationOptions) SetMax(v int64) *IntegerConfigurationOptions { + s.Max = &v + return s +} + +// SetMin sets the Min field's value. +func (s *IntegerConfigurationOptions) SetMin(v int64) *IntegerConfigurationOptions { + s.Min = &v + return s +} + +// The options for customizing a security control parameter that is a list of +// integers. +type IntegerListConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The Security Hub default value for a control parameter that is a list of + // integers. + DefaultValue []*int64 `type:"list"` + + // The maximum valid value for a control parameter that is a list of integers. + Max *int64 `type:"integer"` + + // The maximum number of list items that an interger list control parameter + // can accept. + MaxItems *int64 `type:"integer"` + + // The minimum valid value for a control parameter that is a list of integers. + Min *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 IntegerListConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntegerListConfigurationOptions) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *IntegerListConfigurationOptions) SetDefaultValue(v []*int64) *IntegerListConfigurationOptions { + s.DefaultValue = v + return s +} + +// SetMax sets the Max field's value. +func (s *IntegerListConfigurationOptions) SetMax(v int64) *IntegerListConfigurationOptions { + s.Max = &v + return s +} + +// SetMaxItems sets the MaxItems field's value. +func (s *IntegerListConfigurationOptions) SetMaxItems(v int64) *IntegerListConfigurationOptions { + s.MaxItems = &v + return s +} + +// SetMin sets the Min field's value. +func (s *IntegerListConfigurationOptions) SetMin(v int64) *IntegerListConfigurationOptions { + s.Min = &v + return s +} + // Internal server error. type InternalException struct { _ struct{} `type:"structure"` @@ -50111,6 +54639,229 @@ return s } +type ListConfigurationPoliciesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results that's returned by ListConfigurationPolicies + // in each page of the response. When this parameter is used, ListConfigurationPolicies + // returns the specified number of results in a single page and a NextToken + // response element. You can see the remaining results of the initial request + // by sending another ListConfigurationPolicies request with the returned NextToken + // value. A valid range for MaxResults is between 1 and 100. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The NextToken value that's returned from a previous paginated ListConfigurationPolicies + // request where MaxResults was used but the results exceeded the value of that + // parameter. Pagination continues from the MaxResults was used but the results + // exceeded the value of that parameter. Pagination continues from the end of + // the previous response that returned the NextToken value. This value is null + // when there are no more results to return. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPoliciesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPoliciesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConfigurationPoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConfigurationPoliciesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConfigurationPoliciesInput) SetMaxResults(v int64) *ListConfigurationPoliciesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPoliciesInput) SetNextToken(v string) *ListConfigurationPoliciesInput { + s.NextToken = &v + return s +} + +type ListConfigurationPoliciesOutput struct { + _ struct{} `type:"structure"` + + // Provides metadata for each of your configuration policies. + ConfigurationPolicySummaries []*ConfigurationPolicySummary `type:"list"` + + // The NextToken value to include in the next ListConfigurationPolicies request. + // When the results of a ListConfigurationPolicies request exceed MaxResults, + // this value can be used to retrieve the next page of results. This value is + // null when there are no more results to return. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPoliciesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPoliciesOutput) GoString() string { + return s.String() +} + +// SetConfigurationPolicySummaries sets the ConfigurationPolicySummaries field's value. +func (s *ListConfigurationPoliciesOutput) SetConfigurationPolicySummaries(v []*ConfigurationPolicySummary) *ListConfigurationPoliciesOutput { + s.ConfigurationPolicySummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPoliciesOutput) SetNextToken(v string) *ListConfigurationPoliciesOutput { + s.NextToken = &v + return s +} + +type ListConfigurationPolicyAssociationsInput struct { + _ struct{} `type:"structure"` + + // Options for filtering the ListConfigurationPolicyAssociations response. You + // can filter by the Amazon Resource Name (ARN) or universally unique identifier + // (UUID) of a configuration, AssociationType, or AssociationStatus. + Filters *AssociationFilters `type:"structure"` + + // The maximum number of results that's returned by ListConfigurationPolicies + // in each page of the response. When this parameter is used, ListConfigurationPolicyAssociations + // returns the specified number of results in a single page and a NextToken + // response element. You can see the remaining results of the initial request + // by sending another ListConfigurationPolicyAssociations request with the returned + // NextToken value. A valid range for MaxResults is between 1 and 100. + MaxResults *int64 `min:"1" type:"integer"` + + // The NextToken value that's returned from a previous paginated ListConfigurationPolicyAssociations + // request where MaxResults was used but the results exceeded the value of that + // parameter. Pagination continues from the end of the previous response that + // returned the NextToken value. This value is null when there are no more results + // to return. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPolicyAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPolicyAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConfigurationPolicyAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConfigurationPolicyAssociationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListConfigurationPolicyAssociationsInput) SetFilters(v *AssociationFilters) *ListConfigurationPolicyAssociationsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConfigurationPolicyAssociationsInput) SetMaxResults(v int64) *ListConfigurationPolicyAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPolicyAssociationsInput) SetNextToken(v string) *ListConfigurationPolicyAssociationsInput { + s.NextToken = &v + return s +} + +type ListConfigurationPolicyAssociationsOutput struct { + _ struct{} `type:"structure"` + + // An object that contains the details of each configuration policy association + // that’s returned in a ListConfigurationPolicyAssociations request. + ConfigurationPolicyAssociationSummaries []*ConfigurationPolicyAssociationSummary `type:"list"` + + // The NextToken value to include in the next ListConfigurationPolicyAssociations + // request. When the results of a ListConfigurationPolicyAssociations request + // exceed MaxResults, this value can be used to retrieve the next page of results. + // This value is null when there are no more results to return. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPolicyAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPolicyAssociationsOutput) GoString() string { + return s.String() +} + +// SetConfigurationPolicyAssociationSummaries sets the ConfigurationPolicyAssociationSummaries field's value. +func (s *ListConfigurationPolicyAssociationsOutput) SetConfigurationPolicyAssociationSummaries(v []*ConfigurationPolicyAssociationSummary) *ListConfigurationPolicyAssociationsOutput { + s.ConfigurationPolicyAssociationSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPolicyAssociationsOutput) SetNextToken(v string) *ListConfigurationPolicyAssociationsOutput { + s.NextToken = &v + return s +} + type ListEnabledProductsForImportInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -51780,10 +56531,18 @@ // findings. Eq *float64 `type:"double"` + // The greater-than condition to be applied to a single field when querying + // for findings. + Gt *float64 `type:"double"` + // The greater-than-equal condition to be applied to a single field when querying // for findings. Gte *float64 `type:"double"` + // The less-than condition to be applied to a single field when querying for + // findings. + Lt *float64 `type:"double"` + // The less-than-equal condition to be applied to a single field when querying // for findings. Lte *float64 `type:"double"` @@ -51813,12 +56572,24 @@ return s } +// SetGt sets the Gt field's value. +func (s *NumberFilter) SetGt(v float64) *NumberFilter { + s.Gt = &v + return s +} + // SetGte sets the Gte field's value. func (s *NumberFilter) SetGte(v float64) *NumberFilter { s.Gte = &v return s } +// SetLt sets the Lt field's value. +func (s *NumberFilter) SetLt(v float64) *NumberFilter { + s.Lt = &v + return s +} + // SetLte sets the Lte field's value. func (s *NumberFilter) SetLte(v float64) *NumberFilter { s.Lte = &v @@ -51898,6 +56669,74 @@ return s } +// Provides information about the way an organization is configured in Security +// Hub. +type OrganizationConfiguration struct { + _ struct{} `type:"structure"` + + // Indicates whether the organization uses local or central configuration. + // + // If you use local configuration, the Security Hub delegated administrator + // can set AutoEnable to true and AutoEnableStandards to DEFAULT. This automatically + // enables Security Hub and default security standards in new organization accounts. + // These new account settings must be set separately in each Amazon Web Services + // Region, and settings may be different in each Region. + // + // If you use central configuration, the delegated administrator can create + // configuration policies. Configuration policies can be used to configure Security + // Hub, security standards, and security controls in multiple accounts and Regions. + // If you want new organization accounts to use a specific configuration, you + // can create a configuration policy and associate it with the root or specific + // organizational units (OUs). New accounts will inherit the policy from the + // root or their assigned OU. + ConfigurationType *string `type:"string" enum:"OrganizationConfigurationConfigurationType"` + + // Describes whether central configuration could be enabled as the ConfigurationType + // for the organization. If your ConfigurationType is local configuration, then + // the value of Status is always ENABLED. + Status *string `type:"string" enum:"OrganizationConfigurationStatus"` + + // Provides an explanation if the value of Status is equal to FAILED when ConfigurationType + // is equal to CENTRAL. + StatusMessage *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationConfiguration) GoString() string { + return s.String() +} + +// SetConfigurationType sets the ConfigurationType field's value. +func (s *OrganizationConfiguration) SetConfigurationType(v string) *OrganizationConfiguration { + s.ConfigurationType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *OrganizationConfiguration) SetStatus(v string) *OrganizationConfiguration { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *OrganizationConfiguration) SetStatusMessage(v string) *OrganizationConfiguration { + s.StatusMessage = &v + return s +} + // An occurrence of sensitive data in an Adobe Portable Document Format (PDF) // file. type Page struct { @@ -51951,6 +56790,207 @@ return s } +// An object that provides the current value of a security control parameter +// and identifies whether it has been customized. +type ParameterConfiguration struct { + _ struct{} `type:"structure"` + + // The current value of a control parameter. + Value *ParameterValue `type:"structure"` + + // Identifies whether a control parameter uses a custom user-defined value or + // the Security Hub default value. + // + // ValueType is a required field + ValueType *string `type:"string" required:"true" enum:"ParameterValueType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParameterConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParameterConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ParameterConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ParameterConfiguration"} + if s.ValueType == nil { + invalidParams.Add(request.NewErrParamRequired("ValueType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValue sets the Value field's value. +func (s *ParameterConfiguration) SetValue(v *ParameterValue) *ParameterConfiguration { + s.Value = v + return s +} + +// SetValueType sets the ValueType field's value. +func (s *ParameterConfiguration) SetValueType(v string) *ParameterConfiguration { + s.ValueType = &v + return s +} + +// An object that describes a security control parameter and the options for +// customizing it. +type ParameterDefinition struct { + _ struct{} `type:"structure"` + + // The options for customizing a control parameter. Customization options vary + // based on the data type of the parameter. + // + // ConfigurationOptions is a required field + ConfigurationOptions *ConfigurationOptions `type:"structure" required:"true"` + + // Description of a control parameter. + // + // Description is a required field + Description *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParameterDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParameterDefinition) GoString() string { + return s.String() +} + +// SetConfigurationOptions sets the ConfigurationOptions field's value. +func (s *ParameterDefinition) SetConfigurationOptions(v *ConfigurationOptions) *ParameterDefinition { + s.ConfigurationOptions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *ParameterDefinition) SetDescription(v string) *ParameterDefinition { + s.Description = &v + return s +} + +// An object that includes the data type of a security control parameter and +// its current value. +type ParameterValue struct { + _ struct{} `type:"structure"` + + // A control parameter that is a boolean. + Boolean *bool `type:"boolean"` + + // A control parameter that is a double. + Double *float64 `type:"double"` + + // A control parameter that is an enum. + Enum *string `type:"string"` + + // A control parameter that is a list of enums. + EnumList []*string `type:"list"` + + // A control parameter that is an integer. + Integer *int64 `type:"integer"` + + // A control parameter that is a list of integers. + IntegerList []*int64 `type:"list"` + + // A control parameter that is a list of strings. + StringList []*string `type:"list"` + + // A control parameter that is a string. + String_ *string `locationName:"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 ParameterValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParameterValue) GoString() string { + return s.String() +} + +// SetBoolean sets the Boolean field's value. +func (s *ParameterValue) SetBoolean(v bool) *ParameterValue { + s.Boolean = &v + return s +} + +// SetDouble sets the Double field's value. +func (s *ParameterValue) SetDouble(v float64) *ParameterValue { + s.Double = &v + return s +} + +// SetEnum sets the Enum field's value. +func (s *ParameterValue) SetEnum(v string) *ParameterValue { + s.Enum = &v + return s +} + +// SetEnumList sets the EnumList field's value. +func (s *ParameterValue) SetEnumList(v []*string) *ParameterValue { + s.EnumList = v + return s +} + +// SetInteger sets the Integer field's value. +func (s *ParameterValue) SetInteger(v int64) *ParameterValue { + s.Integer = &v + return s +} + +// SetIntegerList sets the IntegerList field's value. +func (s *ParameterValue) SetIntegerList(v []*int64) *ParameterValue { + s.IntegerList = v + return s +} + +// SetStringList sets the StringList field's value. +func (s *ParameterValue) SetStringList(v []*string) *ParameterValue { + s.StringList = v + return s +} + +// SetString_ sets the String_ field's value. +func (s *ParameterValue) SetString_(v string) *ParameterValue { + s.String_ = &v + return s +} + // Provides an overview of the patch compliance status for an instance against // a selected compliance standard. type PatchSummary struct { @@ -52104,6 +57144,60 @@ return s } +// An object that defines how Security Hub is configured. It includes whether +// Security Hub is enabled or disabled, a list of enabled security standards, +// a list of enabled or disabled security controls, and a list of custom parameter +// values for specified controls. If you provide a list of security controls +// that are enabled in the configuration policy, Security Hub disables all other +// controls (including newly released controls). If you provide a list of security +// controls that are disabled in the configuration policy, Security Hub enables +// all other controls (including newly released controls). +type Policy struct { + _ struct{} `type:"structure"` + + // The Amazon Web Service that the configuration policy applies to. + SecurityHub *SecurityHubPolicy `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Policy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Policy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Policy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Policy"} + if s.SecurityHub != nil { + if err := s.SecurityHub.Validate(); err != nil { + invalidParams.AddNested("SecurityHub", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityHub sets the SecurityHub field's value. +func (s *Policy) SetSecurityHub(v *SecurityHubPolicy) *Policy { + s.SecurityHub = v + return s +} + // Provided if ActionType is PORT_PROBE. It provides details about the attempted // port probe that was detected. type PortProbeAction struct { @@ -52760,6 +57854,12 @@ type Resource struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the application that is related to a finding. + ApplicationArn *string `type:"string"` + + // The name of the application that is related to a finding. + ApplicationName *string `type:"string"` + // Contains information about sensitive data that was detected on the resource. DataClassification *DataClassificationDetails `type:"structure"` @@ -52837,6 +57937,18 @@ return nil } +// SetApplicationArn sets the ApplicationArn field's value. +func (s *Resource) SetApplicationArn(v string) *Resource { + s.ApplicationArn = &v + return s +} + +// SetApplicationName sets the ApplicationName field's value. +func (s *Resource) SetApplicationName(v string) *Resource { + s.ApplicationName = &v + return s +} + // SetDataClassification sets the DataClassification field's value. func (s *Resource) SetDataClassification(v *DataClassificationDetails) *Resource { s.DataClassification = v @@ -53027,6 +58139,20 @@ // Details for an CodeBuild project. AwsCodeBuildProject *AwsCodeBuildProjectDetails `type:"structure"` + // Provides details about an Database Migration Service (DMS) endpoint. An endpoint + // provides connection, data store type, and location information about your + // data store. + AwsDmsEndpoint *AwsDmsEndpointDetails `type:"structure"` + + // Provides details about an DMS replication instance. DMS uses a replication + // instance to connect to your source data store, read the source data, and + // format the data for consumption by the target data store. + AwsDmsReplicationInstance *AwsDmsReplicationInstanceDetails `type:"structure"` + + // Provides details about an DMS replication task. A replication task moves + // a set of data from the source endpoint to the target endpoint. + AwsDmsReplicationTask *AwsDmsReplicationTaskDetails `type:"structure"` + // Details about a DynamoDB table. AwsDynamoDbTable *AwsDynamoDbTableDetails `type:"structure"` @@ -53126,6 +58252,16 @@ // so that your schemas are in logical groups. AwsEventSchemasRegistry *AwsEventSchemasRegistryDetails `type:"structure"` + // Provides details about an Amazon EventBridge global endpoint. The endpoint + // can improve your application’s availability by making it Regional-fault + // tolerant. + AwsEventsEndpoint *AwsEventsEndpointDetails `type:"structure"` + + // Provides details about Amazon EventBridge event bus for an endpoint. An event + // bus is a router that receives events and delivers them to zero or more destinations, + // or targets. + AwsEventsEventbus *AwsEventsEventbusDetails `type:"structure"` + // Provides details about an Amazon GuardDuty detector. A detector is an object // that represents the GuardDuty service. A detector is required for GuardDuty // to become operational. @@ -53158,6 +58294,10 @@ // Details for a Lambda layer version. AwsLambdaLayerVersion *AwsLambdaLayerVersionDetails `type:"structure"` + // Provides details about an Amazon Managed Streaming for Apache Kafka (Amazon + // MSK) cluster. + AwsMskCluster *AwsMskClusterDetails `type:"structure"` + // Details about an Network Firewall firewall. AwsNetworkFirewallFirewall *AwsNetworkFirewallFirewallDetails `type:"structure"` @@ -53191,6 +58331,12 @@ // Contains details about an Amazon Redshift cluster. AwsRedshiftCluster *AwsRedshiftClusterDetails `type:"structure"` + // Provides details about an Amazon Route 53 hosted zone, including the four + // name servers assigned to the hosted zone. A hosted zone represents a collection + // of records that can be managed together, belonging to a single parent domain + // name. + AwsRoute53HostedZone *AwsRoute53HostedZoneDetails `type:"structure"` + // Details about the Amazon S3 Public Access Block configuration for an account. AwsS3AccountPublicAccessBlock *AwsS3AccountPublicAccessBlockDetails `type:"structure"` @@ -53410,6 +58556,24 @@ return s } +// SetAwsDmsEndpoint sets the AwsDmsEndpoint field's value. +func (s *ResourceDetails) SetAwsDmsEndpoint(v *AwsDmsEndpointDetails) *ResourceDetails { + s.AwsDmsEndpoint = v + return s +} + +// SetAwsDmsReplicationInstance sets the AwsDmsReplicationInstance field's value. +func (s *ResourceDetails) SetAwsDmsReplicationInstance(v *AwsDmsReplicationInstanceDetails) *ResourceDetails { + s.AwsDmsReplicationInstance = v + return s +} + +// SetAwsDmsReplicationTask sets the AwsDmsReplicationTask field's value. +func (s *ResourceDetails) SetAwsDmsReplicationTask(v *AwsDmsReplicationTaskDetails) *ResourceDetails { + s.AwsDmsReplicationTask = v + return s +} + // SetAwsDynamoDbTable sets the AwsDynamoDbTable field's value. func (s *ResourceDetails) SetAwsDynamoDbTable(v *AwsDynamoDbTableDetails) *ResourceDetails { s.AwsDynamoDbTable = v @@ -53584,6 +58748,18 @@ return s } +// SetAwsEventsEndpoint sets the AwsEventsEndpoint field's value. +func (s *ResourceDetails) SetAwsEventsEndpoint(v *AwsEventsEndpointDetails) *ResourceDetails { + s.AwsEventsEndpoint = v + return s +} + +// SetAwsEventsEventbus sets the AwsEventsEventbus field's value. +func (s *ResourceDetails) SetAwsEventsEventbus(v *AwsEventsEventbusDetails) *ResourceDetails { + s.AwsEventsEventbus = v + return s +} + // SetAwsGuardDutyDetector sets the AwsGuardDutyDetector field's value. func (s *ResourceDetails) SetAwsGuardDutyDetector(v *AwsGuardDutyDetectorDetails) *ResourceDetails { s.AwsGuardDutyDetector = v @@ -53644,6 +58820,12 @@ return s } +// SetAwsMskCluster sets the AwsMskCluster field's value. +func (s *ResourceDetails) SetAwsMskCluster(v *AwsMskClusterDetails) *ResourceDetails { + s.AwsMskCluster = v + return s +} + // SetAwsNetworkFirewallFirewall sets the AwsNetworkFirewallFirewall field's value. func (s *ResourceDetails) SetAwsNetworkFirewallFirewall(v *AwsNetworkFirewallFirewallDetails) *ResourceDetails { s.AwsNetworkFirewallFirewall = v @@ -53710,6 +58892,12 @@ return s } +// SetAwsRoute53HostedZone sets the AwsRoute53HostedZone field's value. +func (s *ResourceDetails) SetAwsRoute53HostedZone(v *AwsRoute53HostedZoneDetails) *ResourceDetails { + s.AwsRoute53HostedZone = v + return s +} + // SetAwsS3AccountPublicAccessBlock sets the AwsS3AccountPublicAccessBlock field's value. func (s *ResourceDetails) SetAwsS3AccountPublicAccessBlock(v *AwsS3AccountPublicAccessBlockDetails) *ResourceDetails { s.AwsS3AccountPublicAccessBlock = v @@ -53842,6 +59030,74 @@ return s } +// The request was rejected because it conflicts with the resource's availability. +// For example, you tried to update a security control that's currently in the +// UPDATING state. +type ResourceInUseException 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 ResourceInUseException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceInUseException) GoString() string { + return s.String() +} + +func newErrorResourceInUseException(v protocol.ResponseMetadata) error { + return &ResourceInUseException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceInUseException) Code() string { + return "ResourceInUseException" +} + +// Message returns the exception's message. +func (s *ResourceInUseException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceInUseException) OrigErr() error { + return nil +} + +func (s *ResourceInUseException) 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 *ResourceInUseException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceInUseException) RequestID() string { + return s.RespMetadata.RequestID +} + // The request was rejected because we can't find the specified resource. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -55006,6 +60262,18 @@ // Description is a required field Description *string `type:"string" required:"true"` + // The most recent reason for updating the customizable properties of a security + // control. This differs from the UpdateReason field of the BatchUpdateStandardsControlAssociations + // (https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateStandardsControlAssociations.html) + // API, which tracks the reason for updating the enablement status of a control. + // This field accepts alphanumeric characters in addition to white spaces, dashes, + // and underscores. + LastUpdateReason *string `type:"string"` + + // An object that identifies the name of a control parameter, its current value, + // and whether it has been customized. + Parameters map[string]*ParameterConfiguration `type:"map"` + // A link to Security Hub documentation that explains how to remediate a failed // finding for a security control. // @@ -55043,6 +60311,12 @@ // // Title is a required field Title *string `type:"string" required:"true"` + + // Identifies whether customizable properties of a security control are reflected + // in Security Hub findings. A status of READY indicates findings include the + // current parameter values. A status of UPDATING indicates that all findings + // may not include the current parameter values. + UpdateStatus *string `type:"string" enum:"UpdateStatus"` } // String returns the string representation. @@ -55069,6 +60343,18 @@ return s } +// SetLastUpdateReason sets the LastUpdateReason field's value. +func (s *SecurityControl) SetLastUpdateReason(v string) *SecurityControl { + s.LastUpdateReason = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *SecurityControl) SetParameters(v map[string]*ParameterConfiguration) *SecurityControl { + s.Parameters = v + return s +} + // SetRemediationUrl sets the RemediationUrl field's value. func (s *SecurityControl) SetRemediationUrl(v string) *SecurityControl { s.RemediationUrl = &v @@ -55105,6 +60391,75 @@ return s } +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *SecurityControl) SetUpdateStatus(v string) *SecurityControl { + s.UpdateStatus = &v + return s +} + +// A list of security controls and control parameter values that are included +// in a configuration policy. +type SecurityControlCustomParameter struct { + _ struct{} `type:"structure"` + + // An object that specifies parameter values for a control in a configuration + // policy. + Parameters map[string]*ParameterConfiguration `type:"map"` + + // The ID of the security control. + SecurityControlId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityControlCustomParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityControlCustomParameter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SecurityControlCustomParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SecurityControlCustomParameter"} + if s.Parameters != nil { + for i, v := range s.Parameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Parameters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetParameters sets the Parameters field's value. +func (s *SecurityControlCustomParameter) SetParameters(v map[string]*ParameterConfiguration) *SecurityControlCustomParameter { + s.Parameters = v + return s +} + +// SetSecurityControlId sets the SecurityControlId field's value. +func (s *SecurityControlCustomParameter) SetSecurityControlId(v string) *SecurityControlCustomParameter { + s.SecurityControlId = &v + return s +} + // Provides metadata for a security control, including its unique standard-agnostic // identifier, title, description, severity, availability in Amazon Web Services // Regions, and a link to remediation steps. @@ -55117,6 +60472,11 @@ // CurrentRegionAvailability is a required field CurrentRegionAvailability *string `type:"string" required:"true" enum:"RegionAvailabilityStatus"` + // Security control properties that you can customize. Currently, only parameter + // customization is supported for select controls. An empty array is returned + // for controls that don’t support custom properties. + CustomizableProperties []*string `type:"list" enum:"SecurityControlProperty"` + // The description of a security control across standards. This typically summarizes // how Security Hub evaluates the control and the conditions under which it // produces a failed finding. This parameter doesn't reference a specific standard. @@ -55124,6 +60484,11 @@ // Description is a required field Description *string `type:"string" required:"true"` + // An object that provides a security control parameter name, description, and + // the options for customizing it. This object is excluded for a control that + // doesn't support custom parameters. + ParameterDefinitions map[string]*ParameterDefinition `type:"map"` + // A link to Security Hub documentation that explains how to remediate a failed // finding for a security control. // @@ -55177,12 +60542,24 @@ return s } +// SetCustomizableProperties sets the CustomizableProperties field's value. +func (s *SecurityControlDefinition) SetCustomizableProperties(v []*string) *SecurityControlDefinition { + s.CustomizableProperties = v + return s +} + // SetDescription sets the Description field's value. func (s *SecurityControlDefinition) SetDescription(v string) *SecurityControlDefinition { s.Description = &v return s } +// SetParameterDefinitions sets the ParameterDefinitions field's value. +func (s *SecurityControlDefinition) SetParameterDefinitions(v map[string]*ParameterDefinition) *SecurityControlDefinition { + s.ParameterDefinitions = v + return s +} + // SetRemediationUrl sets the RemediationUrl field's value. func (s *SecurityControlDefinition) SetRemediationUrl(v string) *SecurityControlDefinition { s.RemediationUrl = &v @@ -55207,6 +60584,200 @@ return s } +// A parameter that a security control accepts. +type SecurityControlParameter struct { + _ struct{} `type:"structure"` + + // The name of a + Name *string `type:"string"` + + // The current value of a control parameter. + Value []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityControlParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityControlParameter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *SecurityControlParameter) SetName(v string) *SecurityControlParameter { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *SecurityControlParameter) SetValue(v []*string) *SecurityControlParameter { + s.Value = v + return s +} + +// An object that defines which security controls are enabled in an Security +// Hub configuration policy. The enablement status of a control is aligned across +// all of the enabled standards in an account. +type SecurityControlsConfiguration struct { + _ struct{} `type:"structure"` + + // A list of security controls that are disabled in the configuration policy. + // Security Hub enables all other controls (including newly released controls) + // other than the listed controls. + DisabledSecurityControlIdentifiers []*string `type:"list"` + + // A list of security controls that are enabled in the configuration policy. + // Security Hub disables all other controls (including newly released controls) + // other than the listed controls. + EnabledSecurityControlIdentifiers []*string `type:"list"` + + // A list of security controls and control parameter values that are included + // in a configuration policy. + SecurityControlCustomParameters []*SecurityControlCustomParameter `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityControlsConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityControlsConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SecurityControlsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SecurityControlsConfiguration"} + if s.SecurityControlCustomParameters != nil { + for i, v := range s.SecurityControlCustomParameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SecurityControlCustomParameters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDisabledSecurityControlIdentifiers sets the DisabledSecurityControlIdentifiers field's value. +func (s *SecurityControlsConfiguration) SetDisabledSecurityControlIdentifiers(v []*string) *SecurityControlsConfiguration { + s.DisabledSecurityControlIdentifiers = v + return s +} + +// SetEnabledSecurityControlIdentifiers sets the EnabledSecurityControlIdentifiers field's value. +func (s *SecurityControlsConfiguration) SetEnabledSecurityControlIdentifiers(v []*string) *SecurityControlsConfiguration { + s.EnabledSecurityControlIdentifiers = v + return s +} + +// SetSecurityControlCustomParameters sets the SecurityControlCustomParameters field's value. +func (s *SecurityControlsConfiguration) SetSecurityControlCustomParameters(v []*SecurityControlCustomParameter) *SecurityControlsConfiguration { + s.SecurityControlCustomParameters = v + return s +} + +// An object that defines how Security Hub is configured. The configuration +// policy includes whether Security Hub is enabled or disabled, a list of enabled +// security standards, a list of enabled or disabled security controls, and +// a list of custom parameter values for specified controls. If you provide +// a list of security controls that are enabled in the configuration policy, +// Security Hub disables all other controls (including newly released controls). +// If you provide a list of security controls that are disabled in the configuration +// policy, Security Hub enables all other controls (including newly released +// controls). +type SecurityHubPolicy struct { + _ struct{} `type:"structure"` + + // A list that defines which security standards are enabled in the configuration + // policy. + EnabledStandardIdentifiers []*string `type:"list"` + + // An object that defines which security controls are enabled in the configuration + // policy. The enablement status of a control is aligned across all of the enabled + // standards in an account. + SecurityControlsConfiguration *SecurityControlsConfiguration `type:"structure"` + + // Indicates whether Security Hub is enabled in the policy. + ServiceEnabled *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityHubPolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityHubPolicy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SecurityHubPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SecurityHubPolicy"} + if s.SecurityControlsConfiguration != nil { + if err := s.SecurityControlsConfiguration.Validate(); err != nil { + invalidParams.AddNested("SecurityControlsConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabledStandardIdentifiers sets the EnabledStandardIdentifiers field's value. +func (s *SecurityHubPolicy) SetEnabledStandardIdentifiers(v []*string) *SecurityHubPolicy { + s.EnabledStandardIdentifiers = v + return s +} + +// SetSecurityControlsConfiguration sets the SecurityControlsConfiguration field's value. +func (s *SecurityHubPolicy) SetSecurityControlsConfiguration(v *SecurityControlsConfiguration) *SecurityHubPolicy { + s.SecurityControlsConfiguration = v + return s +} + +// SetServiceEnabled sets the ServiceEnabled field's value. +func (s *SecurityHubPolicy) SetServiceEnabled(v bool) *SecurityHubPolicy { + s.ServiceEnabled = &v + return s +} + // The list of detected instances of sensitive data. type SensitiveDataDetections struct { _ struct{} `type:"structure"` @@ -55349,8 +60920,8 @@ // * 90–100 - CRITICAL Label *string `type:"string" enum:"SeverityLabel"` - // Deprecated. The normalized severity of a finding. This attribute is being - // deprecated. Instead of providing Normalized, provide Label. + // Deprecated. The normalized severity of a finding. Instead of providing Normalized, + // provide Label. // // If you provide Label and do not provide Normalized, then Normalized is set // automatically as follows. @@ -55369,8 +60940,8 @@ // The native severity from the finding product that generated the finding. Original *string `type:"string"` - // Deprecated. This attribute is being deprecated. Instead of providing Product, - // provide Original. + // Deprecated. This attribute isn't included in findings. Instead of providing + // Product, provide Original. // // The native severity as defined by the Amazon Web Services service or integrated // partner product that generated the finding. @@ -56092,7 +61663,7 @@ // was updated. UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` - // The reason for updating the control's enablement status in a specified standard. + // The reason for updating a control's enablement status in a specified standard. UpdatedReason *string `type:"string"` } @@ -56482,6 +62053,238 @@ return s } +type StartConfigurationPolicyAssociationInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // ConfigurationPolicyIdentifier is a required field + ConfigurationPolicyIdentifier *string `type:"string" required:"true"` + + // The identifier of the target account, organizational unit, or the root to + // associate with the specified configuration. + // + // Target is a required field + Target *Target `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyAssociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartConfigurationPolicyAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartConfigurationPolicyAssociationInput"} + if s.ConfigurationPolicyIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicyIdentifier")) + } + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicyIdentifier sets the ConfigurationPolicyIdentifier field's value. +func (s *StartConfigurationPolicyAssociationInput) SetConfigurationPolicyIdentifier(v string) *StartConfigurationPolicyAssociationInput { + s.ConfigurationPolicyIdentifier = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *StartConfigurationPolicyAssociationInput) SetTarget(v *Target) *StartConfigurationPolicyAssociationInput { + s.Target = v + return s +} + +type StartConfigurationPolicyAssociationOutput struct { + _ struct{} `type:"structure"` + + // The current status of the association between the specified target and the + // configuration. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // An explanation for a FAILED value for AssociationStatus. + AssociationStatusMessage *string `type:"string"` + + // Indicates whether the association between the specified target and the configuration + // was directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The UUID of the configuration policy. + ConfigurationPolicyId *string `type:"string"` + + // The identifier of the target account, organizational unit, or the organization + // root with which the configuration is associated. + TargetId *string `type:"string"` + + // Indicates whether the target is an Amazon Web Services account, organizational + // unit, or the organization root. + TargetType *string `type:"string" enum:"TargetType"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // association was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyAssociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetAssociationStatus(v string) *StartConfigurationPolicyAssociationOutput { + s.AssociationStatus = &v + return s +} + +// SetAssociationStatusMessage sets the AssociationStatusMessage field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetAssociationStatusMessage(v string) *StartConfigurationPolicyAssociationOutput { + s.AssociationStatusMessage = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetAssociationType(v string) *StartConfigurationPolicyAssociationOutput { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetConfigurationPolicyId(v string) *StartConfigurationPolicyAssociationOutput { + s.ConfigurationPolicyId = &v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetTargetId(v string) *StartConfigurationPolicyAssociationOutput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetTargetType(v string) *StartConfigurationPolicyAssociationOutput { + s.TargetType = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetUpdatedAt(v time.Time) *StartConfigurationPolicyAssociationOutput { + s.UpdatedAt = &v + return s +} + +type StartConfigurationPolicyDisassociationInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // ConfigurationPolicyIdentifier is a required field + ConfigurationPolicyIdentifier *string `type:"string" required:"true"` + + // The identifier of the target account, organizational unit, or the root to + // disassociate from the specified configuration. + Target *Target `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyDisassociationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyDisassociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartConfigurationPolicyDisassociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartConfigurationPolicyDisassociationInput"} + if s.ConfigurationPolicyIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicyIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicyIdentifier sets the ConfigurationPolicyIdentifier field's value. +func (s *StartConfigurationPolicyDisassociationInput) SetConfigurationPolicyIdentifier(v string) *StartConfigurationPolicyDisassociationInput { + s.ConfigurationPolicyIdentifier = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *StartConfigurationPolicyDisassociationInput) SetTarget(v *Target) *StartConfigurationPolicyDisassociationInput { + s.Target = v + return s +} + +type StartConfigurationPolicyDisassociationOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyDisassociationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartConfigurationPolicyDisassociationOutput) GoString() string { + return s.String() +} + // The definition of a custom action that can be used for stateless packet handling. type StatelessCustomActionDefinition struct { _ struct{} `type:"structure"` @@ -56637,6 +62440,57 @@ return s } +// The options for customizing a security control parameter that is a string. +type StringConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The Security Hub default value for a control parameter that is a string. + DefaultValue *string `type:"string"` + + // The description of the RE2 regular expression. + ExpressionDescription *string `type:"string"` + + // An RE2 regular expression that Security Hub uses to validate a user-provided + // control parameter string. + Re2Expression *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 StringConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StringConfigurationOptions) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *StringConfigurationOptions) SetDefaultValue(v string) *StringConfigurationOptions { + s.DefaultValue = &v + return s +} + +// SetExpressionDescription sets the ExpressionDescription field's value. +func (s *StringConfigurationOptions) SetExpressionDescription(v string) *StringConfigurationOptions { + s.ExpressionDescription = &v + return s +} + +// SetRe2Expression sets the Re2Expression field's value. +func (s *StringConfigurationOptions) SetRe2Expression(v string) *StringConfigurationOptions { + s.Re2Expression = &v + return s +} + // A string filter for filtering Security Hub findings. type StringFilter struct { _ struct{} `type:"structure"` @@ -56749,6 +62603,69 @@ return s } +// The options for customizing a security control parameter that is a list of +// strings. +type StringListConfigurationOptions struct { + _ struct{} `type:"structure"` + + // The Security Hub default value for a control parameter that is a list of + // strings. + DefaultValue []*string `type:"list"` + + // The description of the RE2 regular expression. + ExpressionDescription *string `type:"string"` + + // The maximum number of list items that a string list control parameter can + // accept. + MaxItems *int64 `type:"integer"` + + // An RE2 regular expression that Security Hub uses to validate a user-provided + // list of strings for a control parameter. + Re2Expression *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 StringListConfigurationOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StringListConfigurationOptions) GoString() string { + return s.String() +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *StringListConfigurationOptions) SetDefaultValue(v []*string) *StringListConfigurationOptions { + s.DefaultValue = v + return s +} + +// SetExpressionDescription sets the ExpressionDescription field's value. +func (s *StringListConfigurationOptions) SetExpressionDescription(v string) *StringListConfigurationOptions { + s.ExpressionDescription = &v + return s +} + +// SetMaxItems sets the MaxItems field's value. +func (s *StringListConfigurationOptions) SetMaxItems(v int64) *StringListConfigurationOptions { + s.MaxItems = &v + return s +} + +// SetRe2Expression sets the Re2Expression field's value. +func (s *StringListConfigurationOptions) SetRe2Expression(v string) *StringListConfigurationOptions { + s.Re2Expression = &v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -56839,6 +62756,58 @@ return s.String() } +// The target account, organizational unit, or the root that is associated with +// an Security Hub configuration. The configuration can be a configuration policy +// or self-managed behavior. +type Target struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID of the target account. + AccountId *string `type:"string"` + + // The organizational unit ID of the target organizational unit. + OrganizationalUnitId *string `type:"string"` + + // The ID of the organization root. + RootId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Target) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Target) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *Target) SetAccountId(v string) *Target { + s.AccountId = &v + return s +} + +// SetOrganizationalUnitId sets the OrganizationalUnitId field's value. +func (s *Target) SetOrganizationalUnitId(v string) *Target { + s.OrganizationalUnitId = &v + return s +} + +// SetRootId sets the RootId field's value. +func (s *Target) SetRootId(v string) *Target { + s.RootId = &v + return s +} + // Provides information about the threat detected in a security finding and // the file paths that were affected by the threat. type Threat struct { @@ -57034,6 +63003,60 @@ return s } +// An array of configuration policy associations, one for each configuration +// policy association identifier, that was specified in a BatchGetConfigurationPolicyAssociations +// request but couldn’t be processed due to an error. +type UnprocessedConfigurationPolicyAssociation struct { + _ struct{} `type:"structure"` + + // Configuration policy association identifiers that were specified in a BatchGetConfigurationPolicyAssociations + // request but couldn’t be processed due to an error. + ConfigurationPolicyAssociationIdentifiers *ConfigurationPolicyAssociation `type:"structure"` + + // An HTTP status code that identifies why the configuration policy association + // failed. + ErrorCode *string `type:"string"` + + // A string that identifies why the configuration policy association failed. + ErrorReason *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnprocessedConfigurationPolicyAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnprocessedConfigurationPolicyAssociation) GoString() string { + return s.String() +} + +// SetConfigurationPolicyAssociationIdentifiers sets the ConfigurationPolicyAssociationIdentifiers field's value. +func (s *UnprocessedConfigurationPolicyAssociation) SetConfigurationPolicyAssociationIdentifiers(v *ConfigurationPolicyAssociation) *UnprocessedConfigurationPolicyAssociation { + s.ConfigurationPolicyAssociationIdentifiers = v + return s +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *UnprocessedConfigurationPolicyAssociation) SetErrorCode(v string) *UnprocessedConfigurationPolicyAssociation { + s.ErrorCode = &v + return s +} + +// SetErrorReason sets the ErrorReason field's value. +func (s *UnprocessedConfigurationPolicyAssociation) SetErrorReason(v string) *UnprocessedConfigurationPolicyAssociation { + s.ErrorReason = &v + return s +} + // Provides details about a security control for which a response couldn't be // returned. type UnprocessedSecurityControl struct { @@ -57530,6 +63553,202 @@ return s } +type UpdateConfigurationPolicyInput struct { + _ struct{} `type:"structure"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If you provide a list of security controls + // that are enabled in the configuration policy, Security Hub disables all other + // controls (including newly released controls). If you provide a list of security + // controls that are disabled in the configuration policy, Security Hub enables + // all other controls (including newly released controls). + // + // When updating a configuration policy, provide a complete list of standards + // that you want to enable and a complete list of controls that you want to + // enable or disable. The updated configuration replaces the current configuration. + ConfigurationPolicy *Policy `type:"structure"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The reason for updating the configuration policy. + UpdatedReason *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfigurationPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateConfigurationPolicyInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.ConfigurationPolicy != nil { + if err := s.ConfigurationPolicy.Validate(); err != nil { + invalidParams.AddNested("ConfigurationPolicy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *UpdateConfigurationPolicyInput) SetConfigurationPolicy(v *Policy) *UpdateConfigurationPolicyInput { + s.ConfigurationPolicy = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateConfigurationPolicyInput) SetDescription(v string) *UpdateConfigurationPolicyInput { + s.Description = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateConfigurationPolicyInput) SetIdentifier(v string) *UpdateConfigurationPolicyInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConfigurationPolicyInput) SetName(v string) *UpdateConfigurationPolicyInput { + s.Name = &v + return s +} + +// SetUpdatedReason sets the UpdatedReason field's value. +func (s *UpdateConfigurationPolicyInput) SetUpdatedReason(v string) *UpdateConfigurationPolicyInput { + s.UpdatedReason = &v + return s +} + +type UpdateConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the configuration policy. + Arn *string `type:"string"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If the request included a list of security + // controls that are enabled in the configuration policy, Security Hub disables + // all other controls (including newly released controls). If the request included + // a list of security controls that are disabled in the configuration policy, + // Security Hub enables all other controls (including newly released controls). + ConfigurationPolicy *Policy `type:"structure"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The UUID of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfigurationPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateConfigurationPolicyOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateConfigurationPolicyOutput) SetArn(v string) *UpdateConfigurationPolicyOutput { + s.Arn = &v + return s +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *UpdateConfigurationPolicyOutput) SetConfigurationPolicy(v *Policy) *UpdateConfigurationPolicyOutput { + s.ConfigurationPolicy = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateConfigurationPolicyOutput) SetCreatedAt(v time.Time) *UpdateConfigurationPolicyOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateConfigurationPolicyOutput) SetDescription(v string) *UpdateConfigurationPolicyOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateConfigurationPolicyOutput) SetId(v string) *UpdateConfigurationPolicyOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConfigurationPolicyOutput) SetName(v string) *UpdateConfigurationPolicyOutput { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateConfigurationPolicyOutput) SetUpdatedAt(v time.Time) *UpdateConfigurationPolicyOutput { + s.UpdatedAt = &v + return s +} + type UpdateFindingAggregatorInput struct { _ struct{} `type:"structure"` @@ -57877,24 +64096,41 @@ type UpdateOrganizationConfigurationInput struct { _ struct{} `type:"structure"` - // Whether to automatically enable Security Hub for new accounts in the organization. + // Whether to automatically enable Security Hub in new member accounts when + // they join the organization. // - // By default, this is false, and new accounts are not added automatically. - // - // To automatically enable Security Hub for new accounts, set this to true. + // If set to true, then Security Hub is automatically enabled in new accounts. + // If set to false, then Security Hub isn't enabled in new accounts automatically. + // The default value is false. + // + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to false and can't be changed in the home Region and linked + // Regions. However, in that case, the delegated administrator can create a + // configuration policy in which Security Hub is enabled and associate the policy + // with new organization accounts. // // AutoEnable is a required field AutoEnable *bool `type:"boolean" required:"true"` // Whether to automatically enable Security Hub default standards (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-enable-disable.html) - // for new member accounts in the organization. + // in new member accounts when they join the organization. + // + // The default value of this parameter is equal to DEFAULT. // - // By default, this parameter is equal to DEFAULT, and new member accounts are - // automatically enabled with default Security Hub standards. + // If equal to DEFAULT, then Security Hub default standards are automatically + // enabled for new member accounts. If equal to NONE, then default standards + // are not automatically enabled for new member accounts. // - // To opt out of enabling default standards for new member accounts, set this - // parameter equal to NONE. + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to NONE and can't be changed in the home Region and linked Regions. + // However, in that case, the delegated administrator can create a configuration + // policy in which specific security standards are enabled and associate the + // policy with new organization accounts. AutoEnableStandards *string `type:"string" enum:"AutoEnableStandards"` + + // Provides information about the way an organization is configured in Security + // Hub. + OrganizationConfiguration *OrganizationConfiguration `type:"structure"` } // String returns the string representation. @@ -57940,6 +64176,12 @@ return s } +// SetOrganizationConfiguration sets the OrganizationConfiguration field's value. +func (s *UpdateOrganizationConfigurationInput) SetOrganizationConfiguration(v *OrganizationConfiguration) *UpdateOrganizationConfigurationInput { + s.OrganizationConfiguration = v + return s +} + type UpdateOrganizationConfigurationOutput struct { _ struct{} `type:"structure"` } @@ -57962,6 +64204,109 @@ return s.String() } +type UpdateSecurityControlInput struct { + _ struct{} `type:"structure"` + + // The most recent reason for updating the properties of the security control. + // This field accepts alphanumeric characters in addition to white spaces, dashes, + // and underscores. + LastUpdateReason *string `type:"string"` + + // An object that specifies which security control parameters to update. + // + // Parameters is a required field + Parameters map[string]*ParameterConfiguration `type:"map" required:"true"` + + // The Amazon Resource Name (ARN) or ID of the control to update. + // + // SecurityControlId is a required field + SecurityControlId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSecurityControlInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSecurityControlInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSecurityControlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSecurityControlInput"} + if s.Parameters == nil { + invalidParams.Add(request.NewErrParamRequired("Parameters")) + } + if s.SecurityControlId == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityControlId")) + } + if s.Parameters != nil { + for i, v := range s.Parameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Parameters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLastUpdateReason sets the LastUpdateReason field's value. +func (s *UpdateSecurityControlInput) SetLastUpdateReason(v string) *UpdateSecurityControlInput { + s.LastUpdateReason = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *UpdateSecurityControlInput) SetParameters(v map[string]*ParameterConfiguration) *UpdateSecurityControlInput { + s.Parameters = v + return s +} + +// SetSecurityControlId sets the SecurityControlId field's value. +func (s *UpdateSecurityControlInput) SetSecurityControlId(v string) *UpdateSecurityControlInput { + s.SecurityControlId = &v + return s +} + +type UpdateSecurityControlOutput 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 UpdateSecurityControlOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSecurityControlOutput) GoString() string { + return s.String() +} + type UpdateSecurityHubConfigurationInput struct { _ struct{} `type:"structure"` @@ -58827,6 +65172,22 @@ } const ( + // AssociationTypeInherited is a AssociationType enum value + AssociationTypeInherited = "INHERITED" + + // AssociationTypeApplied is a AssociationType enum value + AssociationTypeApplied = "APPLIED" +) + +// AssociationType_Values returns all elements of the AssociationType enum +func AssociationType_Values() []string { + return []string{ + AssociationTypeInherited, + AssociationTypeApplied, + } +} + +const ( // AutoEnableStandardsNone is a AutoEnableStandards enum value AutoEnableStandardsNone = "NONE" @@ -58911,6 +65272,26 @@ } const ( + // ConfigurationPolicyAssociationStatusPending is a ConfigurationPolicyAssociationStatus enum value + ConfigurationPolicyAssociationStatusPending = "PENDING" + + // ConfigurationPolicyAssociationStatusSuccess is a ConfigurationPolicyAssociationStatus enum value + ConfigurationPolicyAssociationStatusSuccess = "SUCCESS" + + // ConfigurationPolicyAssociationStatusFailed is a ConfigurationPolicyAssociationStatus enum value + ConfigurationPolicyAssociationStatusFailed = "FAILED" +) + +// ConfigurationPolicyAssociationStatus_Values returns all elements of the ConfigurationPolicyAssociationStatus enum +func ConfigurationPolicyAssociationStatus_Values() []string { + return []string{ + ConfigurationPolicyAssociationStatusPending, + ConfigurationPolicyAssociationStatusSuccess, + ConfigurationPolicyAssociationStatusFailed, + } +} + +const ( // ControlFindingGeneratorStandardControl is a ControlFindingGenerator enum value ControlFindingGeneratorStandardControl = "STANDARD_CONTROL" @@ -59119,6 +65500,58 @@ } const ( + // OrganizationConfigurationConfigurationTypeCentral is a OrganizationConfigurationConfigurationType enum value + OrganizationConfigurationConfigurationTypeCentral = "CENTRAL" + + // OrganizationConfigurationConfigurationTypeLocal is a OrganizationConfigurationConfigurationType enum value + OrganizationConfigurationConfigurationTypeLocal = "LOCAL" +) + +// OrganizationConfigurationConfigurationType_Values returns all elements of the OrganizationConfigurationConfigurationType enum +func OrganizationConfigurationConfigurationType_Values() []string { + return []string{ + OrganizationConfigurationConfigurationTypeCentral, + OrganizationConfigurationConfigurationTypeLocal, + } +} + +const ( + // OrganizationConfigurationStatusPending is a OrganizationConfigurationStatus enum value + OrganizationConfigurationStatusPending = "PENDING" + + // OrganizationConfigurationStatusEnabled is a OrganizationConfigurationStatus enum value + OrganizationConfigurationStatusEnabled = "ENABLED" + + // OrganizationConfigurationStatusFailed is a OrganizationConfigurationStatus enum value + OrganizationConfigurationStatusFailed = "FAILED" +) + +// OrganizationConfigurationStatus_Values returns all elements of the OrganizationConfigurationStatus enum +func OrganizationConfigurationStatus_Values() []string { + return []string{ + OrganizationConfigurationStatusPending, + OrganizationConfigurationStatusEnabled, + OrganizationConfigurationStatusFailed, + } +} + +const ( + // ParameterValueTypeDefault is a ParameterValueType enum value + ParameterValueTypeDefault = "DEFAULT" + + // ParameterValueTypeCustom is a ParameterValueType enum value + ParameterValueTypeCustom = "CUSTOM" +) + +// ParameterValueType_Values returns all elements of the ParameterValueType enum +func ParameterValueType_Values() []string { + return []string{ + ParameterValueTypeDefault, + ParameterValueTypeCustom, + } +} + +const ( // PartitionAws is a Partition enum value PartitionAws = "aws" @@ -59187,6 +65620,18 @@ } const ( + // SecurityControlPropertyParameters is a SecurityControlProperty enum value + SecurityControlPropertyParameters = "Parameters" +) + +// SecurityControlProperty_Values returns all elements of the SecurityControlProperty enum +func SecurityControlProperty_Values() []string { + return []string{ + SecurityControlPropertyParameters, + } +} + +const ( // SeverityLabelInformational is a SeverityLabel enum value SeverityLabelInformational = "INFORMATIONAL" @@ -59331,6 +65776,22 @@ } const ( + // TargetTypeAccount is a TargetType enum value + TargetTypeAccount = "ACCOUNT" + + // TargetTypeOrganizationalUnit is a TargetType enum value + TargetTypeOrganizationalUnit = "ORGANIZATIONAL_UNIT" +) + +// TargetType_Values returns all elements of the TargetType enum +func TargetType_Values() []string { + return []string{ + TargetTypeAccount, + TargetTypeOrganizationalUnit, + } +} + +const ( // ThreatIntelIndicatorCategoryBackdoor is a ThreatIntelIndicatorCategory enum value ThreatIntelIndicatorCategoryBackdoor = "BACKDOOR" @@ -59438,6 +65899,22 @@ } } +const ( + // UpdateStatusReady is a UpdateStatus enum value + UpdateStatusReady = "READY" + + // UpdateStatusUpdating is a UpdateStatus enum value + UpdateStatusUpdating = "UPDATING" +) + +// UpdateStatus_Values returns all elements of the UpdateStatus enum +func UpdateStatus_Values() []string { + return []string{ + UpdateStatusReady, + UpdateStatusUpdating, + } +} + const ( // VerificationStateUnknown is a VerificationState enum value VerificationStateUnknown = "UNKNOWN" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -47,6 +47,14 @@ // The resource specified in the request conflicts with an existing resource. ErrCodeResourceConflictException = "ResourceConflictException" + // ErrCodeResourceInUseException for service response error code + // "ResourceInUseException". + // + // The request was rejected because it conflicts with the resource's availability. + // For example, you tried to update a security control that's currently in the + // UPDATING state. + ErrCodeResourceInUseException = "ResourceInUseException" + // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // @@ -61,5 +69,6 @@ "InvalidInputException": newErrorInvalidInputException, "LimitExceededException": newErrorLimitExceededException, "ResourceConflictException": newErrorResourceConflictException, + "ResourceInUseException": newErrorResourceInUseException, "ResourceNotFoundException": newErrorResourceNotFoundException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/examples_test.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -125,6 +125,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -164,6 +166,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -219,6 +223,56 @@ fmt.Println(result) } +// To get configuration associations for a batch of targets +// This operation provides details about configuration associations for a batch of target +// accounts, organizational units, or the root. +func ExampleSecurityHub_BatchGetConfigurationPolicyAssociations_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.BatchGetConfigurationPolicyAssociationsInput{ + ConfigurationPolicyAssociationIdentifiers: []*securityhub.ConfigurationPolicyAssociation{ + { + Target: &securityhub.Target{ + AccountId: aws.String("111122223333"), + }, + }, + { + Target: &securityhub.Target{ + RootId: aws.String("r-f6g7h8i9j0example"), + }, + }, + }, + } + + result, err := svc.BatchGetConfigurationPolicyAssociations(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To get security control details // The following example gets details for the specified controls in the current AWS // account and AWS Region. @@ -515,6 +569,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeInvalidInputException: fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -657,6 +713,72 @@ fmt.Println(result) } +// To create a configuration policy +// This operation creates a configuration policy in Security Hub. +func ExampleSecurityHub_CreateConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.CreateConfigurationPolicyInput{ + ConfigurationPolicy: &securityhub.Policy{ + SecurityHub: &securityhub.SecurityHubPolicy{ + EnabledStandardIdentifiers: []*string{ + aws.String("arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"), + aws.String("arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0"), + }, + SecurityControlsConfiguration: &securityhub.SecurityControlsConfiguration{ + DisabledSecurityControlIdentifiers: []*string{ + aws.String("CloudWatch.1"), + }, + SecurityControlCustomParameters: []*securityhub.SecurityControlCustomParameter{ + { + Parameters: map[string]*securityhub.ParameterConfiguration{ + "daysToExpiration": { + Value: &securityhub.ParameterValue{ + Integer: aws.Int64(14), + }, + ValueType: aws.String("CUSTOM"), + }, + }, + SecurityControlId: aws.String("ACM.1"), + }, + }, + }, + ServiceEnabled: aws.Bool(true), + }, + }, + Description: aws.String("Configuration policy for testing FSBP and CIS"), + Name: aws.String("TestConfigurationPolicy"), + } + + result, err := svc.CreateConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To enable cross-Region aggregation // The following example creates a finding aggregator. This is required to enable cross-Region // aggregation. @@ -781,6 +903,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeResourceConflictException: fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -869,6 +993,46 @@ fmt.Println(result) } +// To delete a configuration policy +// This operation deletes the specified configuration policy. +func ExampleSecurityHub_DeleteConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.DeleteConfigurationPolicyInput{ + Identifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + } + + result, err := svc.DeleteConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To delete a finding aggregator // The following example deletes a finding aggregator in Security Hub. Deleting the // finding aggregator stops cross-Region aggregation. This operation produces no output. @@ -1102,10 +1266,9 @@ fmt.Println(result) } -// To get information about Organizations configuration -// The following example returns details about the way in which AWS Organizations is -// configured for a Security Hub account that belongs to an organization. Only a Security -// Hub administrator account can call this operation. +// To get information about organization configuration +// This operation provides information about the way your organization is configured +// in Security Hub. Only a Security Hub administrator account can invoke this operation. func ExampleSecurityHub_DescribeOrganizationConfiguration_shared00() { svc := securityhub.New(session.New()) input := &securityhub.DescribeOrganizationConfigurationInput{} @@ -1302,6 +1465,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1334,6 +1499,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1409,6 +1576,8 @@ fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1481,6 +1650,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1573,6 +1744,85 @@ fmt.Println(result) } +// To get details about a configuration policy +// This operation provides details about the specified configuration policy. +func ExampleSecurityHub_GetConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.GetConfigurationPolicyInput{ + Identifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + } + + result, err := svc.GetConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To get details about a configuration association +// This operation provides details about configuration associations for a specific target +// account, organizational unit, or the root. +func ExampleSecurityHub_GetConfigurationPolicyAssociation_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.GetConfigurationPolicyAssociationInput{ + Target: &securityhub.Target{ + AccountId: aws.String("111122223333"), + }, + } + + result, err := svc.GetConfigurationPolicyAssociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To return a list of enabled standards // The following example returns a list of Security Hub standards that are currently // enabled in your account. @@ -1884,6 +2134,42 @@ fmt.Println(result) } +// To get the definition of a security control. +// The following example retrieves definition details for the specified security control. +func ExampleSecurityHub_GetSecurityControlDefinition_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.GetSecurityControlDefinitionInput{ + SecurityControlId: aws.String("EC2.4"), + } + + result, err := svc.GetSecurityControlDefinition(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To invite accounts to become members // The following example invites the specified AWS accounts to become member accounts // associated with the calling Security Hub administrator account. You only use this @@ -1962,6 +2248,86 @@ fmt.Println(result) } +// To view a list of configuration policies +// This operation provides a list of your configuration policies, including metadata +// for each policy. +func ExampleSecurityHub_ListConfigurationPolicies_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.ListConfigurationPoliciesInput{ + MaxResults: aws.Int64(1), + NextToken: aws.String("U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf"), + } + + result, err := svc.ListConfigurationPolicies(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To list configuration associations +// This operation lists all of the associations between targets and configuration policies +// or self-managed behavior. Targets can include accounts, organizational units, or +// the root. +func ExampleSecurityHub_ListConfigurationPolicyAssociations_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.ListConfigurationPolicyAssociationsInput{ + Filters: &securityhub.AssociationFilters{ + AssociationType: aws.String("APPLIED"), + }, + MaxResults: aws.Int64(1), + NextToken: aws.String("U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf"), + } + + result, err := svc.ListConfigurationPolicyAssociations(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To list ARNs for enabled integrations // The following example returns a list of subscription Amazon Resource Names (ARNs) // for the product integrations that you have currently enabled in Security Hub. @@ -2233,6 +2599,90 @@ fmt.Println(result) } +// To associate a configuration with a target +// This operation associates a configuration policy or self-managed behavior with the +// target account, organizational unit, or the root. +func ExampleSecurityHub_StartConfigurationPolicyAssociation_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.StartConfigurationPolicyAssociationInput{ + ConfigurationPolicyIdentifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + Target: &securityhub.Target{ + AccountId: aws.String("111122223333"), + }, + } + + result, err := svc.StartConfigurationPolicyAssociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To disassociate a configuration from a target +// This operation disassociates a configuration policy or self-managed behavior from +// the target account, organizational unit, or the root. +func ExampleSecurityHub_StartConfigurationPolicyDisassociation_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.StartConfigurationPolicyDisassociationInput{ + ConfigurationPolicyIdentifier: aws.String("SELF_MANAGED_SECURITY_HUB"), + Target: &securityhub.Target{ + RootId: aws.String("r-f6g7h8i9j0example"), + }, + } + + result, err := svc.StartConfigurationPolicyDisassociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To tag a resource // The following example adds the 'Department' and 'Area' tags to the specified resource. func ExampleSecurityHub_TagResource_shared00() { @@ -2342,6 +2792,77 @@ fmt.Println(result) } +// To update a configuration policy +// This operation updates the specified configuration policy. +func ExampleSecurityHub_UpdateConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.UpdateConfigurationPolicyInput{ + ConfigurationPolicy: &securityhub.Policy{ + SecurityHub: &securityhub.SecurityHubPolicy{ + EnabledStandardIdentifiers: []*string{ + aws.String("arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"), + aws.String("arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0"), + }, + SecurityControlsConfiguration: &securityhub.SecurityControlsConfiguration{ + DisabledSecurityControlIdentifiers: []*string{ + aws.String("CloudWatch.1"), + aws.String("CloudWatch.2"), + }, + SecurityControlCustomParameters: []*securityhub.SecurityControlCustomParameter{ + { + Parameters: map[string]*securityhub.ParameterConfiguration{ + "daysToExpiration": { + Value: &securityhub.ParameterValue{ + Integer: aws.Int64(21), + }, + ValueType: aws.String("CUSTOM"), + }, + }, + SecurityControlId: aws.String("ACM.1"), + }, + }, + }, + ServiceEnabled: aws.Bool(true), + }, + }, + Description: aws.String("Updated configuration policy for testing FSBP and CIS"), + Identifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + Name: aws.String("TestConfigurationPolicy"), + UpdatedReason: aws.String("Enabling ACM.2"), + } + + result, err := svc.UpdateConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To update cross-Region aggregation settings // The following example updates the cross-Region aggregation configuration. You use // this operation to change the list of linked Regions and the treatment of new Regions. @@ -2439,13 +2960,16 @@ } // To update organization configuration -// The following example updates the configuration for an organization so that Security -// Hub is automatically activated for new member accounts. Only the Security Hub administrator -// account can call this operation. +// This operation updates the way your organization is configured in Security Hub. Only +// a Security Hub administrator account can invoke this operation. func ExampleSecurityHub_UpdateOrganizationConfiguration_shared00() { svc := securityhub.New(session.New()) input := &securityhub.UpdateOrganizationConfigurationInput{ - AutoEnable: aws.Bool(true), + AutoEnable: aws.Bool(false), + AutoEnableStandards: aws.String("NONE"), + OrganizationConfiguration: &securityhub.OrganizationConfiguration{ + ConfigurationType: aws.String("CENTRAL"), + }, } result, err := svc.UpdateOrganizationConfiguration(input) @@ -2460,6 +2984,62 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To update security control properties +// The following example updates the specified security control. Specifically, this +// example updates control parameters. +func ExampleSecurityHub_UpdateSecurityControl_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.UpdateSecurityControlInput{ + LastUpdateReason: aws.String("Comply with internal requirements"), + Parameters: map[string]*securityhub.ParameterConfiguration{ + "maxCredentialUsageAge": { + Value: &securityhub.ParameterValue{ + Integer: aws.Int64(15), + }, + ValueType: aws.String("CUSTOM"), + }, + }, + SecurityControlId: aws.String("ACM.1"), + } + + result, err := svc.UpdateSecurityControl(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeResourceInUseException: + fmt.Println(securityhub.ErrCodeResourceInUseException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2498,6 +3078,8 @@ fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2534,6 +3116,8 @@ fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/securityhubiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/securityhubiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/securityhub/securityhubiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/securityhub/securityhubiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -84,6 +84,10 @@ BatchGetAutomationRulesWithContext(aws.Context, *securityhub.BatchGetAutomationRulesInput, ...request.Option) (*securityhub.BatchGetAutomationRulesOutput, error) BatchGetAutomationRulesRequest(*securityhub.BatchGetAutomationRulesInput) (*request.Request, *securityhub.BatchGetAutomationRulesOutput) + BatchGetConfigurationPolicyAssociations(*securityhub.BatchGetConfigurationPolicyAssociationsInput) (*securityhub.BatchGetConfigurationPolicyAssociationsOutput, error) + BatchGetConfigurationPolicyAssociationsWithContext(aws.Context, *securityhub.BatchGetConfigurationPolicyAssociationsInput, ...request.Option) (*securityhub.BatchGetConfigurationPolicyAssociationsOutput, error) + BatchGetConfigurationPolicyAssociationsRequest(*securityhub.BatchGetConfigurationPolicyAssociationsInput) (*request.Request, *securityhub.BatchGetConfigurationPolicyAssociationsOutput) + BatchGetSecurityControls(*securityhub.BatchGetSecurityControlsInput) (*securityhub.BatchGetSecurityControlsOutput, error) BatchGetSecurityControlsWithContext(aws.Context, *securityhub.BatchGetSecurityControlsInput, ...request.Option) (*securityhub.BatchGetSecurityControlsOutput, error) BatchGetSecurityControlsRequest(*securityhub.BatchGetSecurityControlsInput) (*request.Request, *securityhub.BatchGetSecurityControlsOutput) @@ -116,6 +120,10 @@ CreateAutomationRuleWithContext(aws.Context, *securityhub.CreateAutomationRuleInput, ...request.Option) (*securityhub.CreateAutomationRuleOutput, error) CreateAutomationRuleRequest(*securityhub.CreateAutomationRuleInput) (*request.Request, *securityhub.CreateAutomationRuleOutput) + CreateConfigurationPolicy(*securityhub.CreateConfigurationPolicyInput) (*securityhub.CreateConfigurationPolicyOutput, error) + CreateConfigurationPolicyWithContext(aws.Context, *securityhub.CreateConfigurationPolicyInput, ...request.Option) (*securityhub.CreateConfigurationPolicyOutput, error) + CreateConfigurationPolicyRequest(*securityhub.CreateConfigurationPolicyInput) (*request.Request, *securityhub.CreateConfigurationPolicyOutput) + CreateFindingAggregator(*securityhub.CreateFindingAggregatorInput) (*securityhub.CreateFindingAggregatorOutput, error) CreateFindingAggregatorWithContext(aws.Context, *securityhub.CreateFindingAggregatorInput, ...request.Option) (*securityhub.CreateFindingAggregatorOutput, error) CreateFindingAggregatorRequest(*securityhub.CreateFindingAggregatorInput) (*request.Request, *securityhub.CreateFindingAggregatorOutput) @@ -136,6 +144,10 @@ DeleteActionTargetWithContext(aws.Context, *securityhub.DeleteActionTargetInput, ...request.Option) (*securityhub.DeleteActionTargetOutput, error) DeleteActionTargetRequest(*securityhub.DeleteActionTargetInput) (*request.Request, *securityhub.DeleteActionTargetOutput) + DeleteConfigurationPolicy(*securityhub.DeleteConfigurationPolicyInput) (*securityhub.DeleteConfigurationPolicyOutput, error) + DeleteConfigurationPolicyWithContext(aws.Context, *securityhub.DeleteConfigurationPolicyInput, ...request.Option) (*securityhub.DeleteConfigurationPolicyOutput, error) + DeleteConfigurationPolicyRequest(*securityhub.DeleteConfigurationPolicyInput) (*request.Request, *securityhub.DeleteConfigurationPolicyOutput) + DeleteFindingAggregator(*securityhub.DeleteFindingAggregatorInput) (*securityhub.DeleteFindingAggregatorOutput, error) DeleteFindingAggregatorWithContext(aws.Context, *securityhub.DeleteFindingAggregatorInput, ...request.Option) (*securityhub.DeleteFindingAggregatorOutput, error) DeleteFindingAggregatorRequest(*securityhub.DeleteFindingAggregatorInput) (*request.Request, *securityhub.DeleteFindingAggregatorOutput) @@ -228,6 +240,14 @@ GetAdministratorAccountWithContext(aws.Context, *securityhub.GetAdministratorAccountInput, ...request.Option) (*securityhub.GetAdministratorAccountOutput, error) GetAdministratorAccountRequest(*securityhub.GetAdministratorAccountInput) (*request.Request, *securityhub.GetAdministratorAccountOutput) + GetConfigurationPolicy(*securityhub.GetConfigurationPolicyInput) (*securityhub.GetConfigurationPolicyOutput, error) + GetConfigurationPolicyWithContext(aws.Context, *securityhub.GetConfigurationPolicyInput, ...request.Option) (*securityhub.GetConfigurationPolicyOutput, error) + GetConfigurationPolicyRequest(*securityhub.GetConfigurationPolicyInput) (*request.Request, *securityhub.GetConfigurationPolicyOutput) + + GetConfigurationPolicyAssociation(*securityhub.GetConfigurationPolicyAssociationInput) (*securityhub.GetConfigurationPolicyAssociationOutput, error) + GetConfigurationPolicyAssociationWithContext(aws.Context, *securityhub.GetConfigurationPolicyAssociationInput, ...request.Option) (*securityhub.GetConfigurationPolicyAssociationOutput, error) + GetConfigurationPolicyAssociationRequest(*securityhub.GetConfigurationPolicyAssociationInput) (*request.Request, *securityhub.GetConfigurationPolicyAssociationOutput) + GetEnabledStandards(*securityhub.GetEnabledStandardsInput) (*securityhub.GetEnabledStandardsOutput, error) GetEnabledStandardsWithContext(aws.Context, *securityhub.GetEnabledStandardsInput, ...request.Option) (*securityhub.GetEnabledStandardsOutput, error) GetEnabledStandardsRequest(*securityhub.GetEnabledStandardsInput) (*request.Request, *securityhub.GetEnabledStandardsOutput) @@ -276,6 +296,10 @@ GetMembersWithContext(aws.Context, *securityhub.GetMembersInput, ...request.Option) (*securityhub.GetMembersOutput, error) GetMembersRequest(*securityhub.GetMembersInput) (*request.Request, *securityhub.GetMembersOutput) + GetSecurityControlDefinition(*securityhub.GetSecurityControlDefinitionInput) (*securityhub.GetSecurityControlDefinitionOutput, error) + GetSecurityControlDefinitionWithContext(aws.Context, *securityhub.GetSecurityControlDefinitionInput, ...request.Option) (*securityhub.GetSecurityControlDefinitionOutput, error) + GetSecurityControlDefinitionRequest(*securityhub.GetSecurityControlDefinitionInput) (*request.Request, *securityhub.GetSecurityControlDefinitionOutput) + InviteMembers(*securityhub.InviteMembersInput) (*securityhub.InviteMembersOutput, error) InviteMembersWithContext(aws.Context, *securityhub.InviteMembersInput, ...request.Option) (*securityhub.InviteMembersOutput, error) InviteMembersRequest(*securityhub.InviteMembersInput) (*request.Request, *securityhub.InviteMembersOutput) @@ -284,6 +308,20 @@ ListAutomationRulesWithContext(aws.Context, *securityhub.ListAutomationRulesInput, ...request.Option) (*securityhub.ListAutomationRulesOutput, error) ListAutomationRulesRequest(*securityhub.ListAutomationRulesInput) (*request.Request, *securityhub.ListAutomationRulesOutput) + ListConfigurationPolicies(*securityhub.ListConfigurationPoliciesInput) (*securityhub.ListConfigurationPoliciesOutput, error) + ListConfigurationPoliciesWithContext(aws.Context, *securityhub.ListConfigurationPoliciesInput, ...request.Option) (*securityhub.ListConfigurationPoliciesOutput, error) + ListConfigurationPoliciesRequest(*securityhub.ListConfigurationPoliciesInput) (*request.Request, *securityhub.ListConfigurationPoliciesOutput) + + ListConfigurationPoliciesPages(*securityhub.ListConfigurationPoliciesInput, func(*securityhub.ListConfigurationPoliciesOutput, bool) bool) error + ListConfigurationPoliciesPagesWithContext(aws.Context, *securityhub.ListConfigurationPoliciesInput, func(*securityhub.ListConfigurationPoliciesOutput, bool) bool, ...request.Option) error + + ListConfigurationPolicyAssociations(*securityhub.ListConfigurationPolicyAssociationsInput) (*securityhub.ListConfigurationPolicyAssociationsOutput, error) + ListConfigurationPolicyAssociationsWithContext(aws.Context, *securityhub.ListConfigurationPolicyAssociationsInput, ...request.Option) (*securityhub.ListConfigurationPolicyAssociationsOutput, error) + ListConfigurationPolicyAssociationsRequest(*securityhub.ListConfigurationPolicyAssociationsInput) (*request.Request, *securityhub.ListConfigurationPolicyAssociationsOutput) + + ListConfigurationPolicyAssociationsPages(*securityhub.ListConfigurationPolicyAssociationsInput, func(*securityhub.ListConfigurationPolicyAssociationsOutput, bool) bool) error + ListConfigurationPolicyAssociationsPagesWithContext(aws.Context, *securityhub.ListConfigurationPolicyAssociationsInput, func(*securityhub.ListConfigurationPolicyAssociationsOutput, bool) bool, ...request.Option) error + ListEnabledProductsForImport(*securityhub.ListEnabledProductsForImportInput) (*securityhub.ListEnabledProductsForImportOutput, error) ListEnabledProductsForImportWithContext(aws.Context, *securityhub.ListEnabledProductsForImportInput, ...request.Option) (*securityhub.ListEnabledProductsForImportOutput, error) ListEnabledProductsForImportRequest(*securityhub.ListEnabledProductsForImportInput) (*request.Request, *securityhub.ListEnabledProductsForImportOutput) @@ -337,6 +375,14 @@ ListTagsForResourceWithContext(aws.Context, *securityhub.ListTagsForResourceInput, ...request.Option) (*securityhub.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*securityhub.ListTagsForResourceInput) (*request.Request, *securityhub.ListTagsForResourceOutput) + StartConfigurationPolicyAssociation(*securityhub.StartConfigurationPolicyAssociationInput) (*securityhub.StartConfigurationPolicyAssociationOutput, error) + StartConfigurationPolicyAssociationWithContext(aws.Context, *securityhub.StartConfigurationPolicyAssociationInput, ...request.Option) (*securityhub.StartConfigurationPolicyAssociationOutput, error) + StartConfigurationPolicyAssociationRequest(*securityhub.StartConfigurationPolicyAssociationInput) (*request.Request, *securityhub.StartConfigurationPolicyAssociationOutput) + + StartConfigurationPolicyDisassociation(*securityhub.StartConfigurationPolicyDisassociationInput) (*securityhub.StartConfigurationPolicyDisassociationOutput, error) + StartConfigurationPolicyDisassociationWithContext(aws.Context, *securityhub.StartConfigurationPolicyDisassociationInput, ...request.Option) (*securityhub.StartConfigurationPolicyDisassociationOutput, error) + StartConfigurationPolicyDisassociationRequest(*securityhub.StartConfigurationPolicyDisassociationInput) (*request.Request, *securityhub.StartConfigurationPolicyDisassociationOutput) + TagResource(*securityhub.TagResourceInput) (*securityhub.TagResourceOutput, error) TagResourceWithContext(aws.Context, *securityhub.TagResourceInput, ...request.Option) (*securityhub.TagResourceOutput, error) TagResourceRequest(*securityhub.TagResourceInput) (*request.Request, *securityhub.TagResourceOutput) @@ -349,6 +395,10 @@ UpdateActionTargetWithContext(aws.Context, *securityhub.UpdateActionTargetInput, ...request.Option) (*securityhub.UpdateActionTargetOutput, error) UpdateActionTargetRequest(*securityhub.UpdateActionTargetInput) (*request.Request, *securityhub.UpdateActionTargetOutput) + UpdateConfigurationPolicy(*securityhub.UpdateConfigurationPolicyInput) (*securityhub.UpdateConfigurationPolicyOutput, error) + UpdateConfigurationPolicyWithContext(aws.Context, *securityhub.UpdateConfigurationPolicyInput, ...request.Option) (*securityhub.UpdateConfigurationPolicyOutput, error) + UpdateConfigurationPolicyRequest(*securityhub.UpdateConfigurationPolicyInput) (*request.Request, *securityhub.UpdateConfigurationPolicyOutput) + UpdateFindingAggregator(*securityhub.UpdateFindingAggregatorInput) (*securityhub.UpdateFindingAggregatorOutput, error) UpdateFindingAggregatorWithContext(aws.Context, *securityhub.UpdateFindingAggregatorInput, ...request.Option) (*securityhub.UpdateFindingAggregatorOutput, error) UpdateFindingAggregatorRequest(*securityhub.UpdateFindingAggregatorInput) (*request.Request, *securityhub.UpdateFindingAggregatorOutput) @@ -365,6 +415,10 @@ UpdateOrganizationConfigurationWithContext(aws.Context, *securityhub.UpdateOrganizationConfigurationInput, ...request.Option) (*securityhub.UpdateOrganizationConfigurationOutput, error) UpdateOrganizationConfigurationRequest(*securityhub.UpdateOrganizationConfigurationInput) (*request.Request, *securityhub.UpdateOrganizationConfigurationOutput) + UpdateSecurityControl(*securityhub.UpdateSecurityControlInput) (*securityhub.UpdateSecurityControlOutput, error) + UpdateSecurityControlWithContext(aws.Context, *securityhub.UpdateSecurityControlInput, ...request.Option) (*securityhub.UpdateSecurityControlOutput, error) + UpdateSecurityControlRequest(*securityhub.UpdateSecurityControlInput) (*request.Request, *securityhub.UpdateSecurityControlOutput) + UpdateSecurityHubConfiguration(*securityhub.UpdateSecurityHubConfigurationInput) (*securityhub.UpdateSecurityHubConfigurationOutput, error) UpdateSecurityHubConfigurationWithContext(aws.Context, *securityhub.UpdateSecurityHubConfigurationInput, ...request.Option) (*securityhub.UpdateSecurityHubConfigurationOutput, error) UpdateSecurityHubConfigurationRequest(*securityhub.UpdateSecurityHubConfigurationInput) (*request.Request, *securityhub.UpdateSecurityHubConfigurationOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/servicecatalog/api.go golang-github-aws-aws-sdk-go-1.48.14/service/servicecatalog/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/servicecatalog/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/servicecatalog/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -244,7 +244,7 @@ // The PortfolioID, PrincipalARN, and PrincipalType parameters are required. // // You can associate a maximum of 10 Principals with a portfolio using PrincipalType -// as IAM_PATTERN +// as IAM_PATTERN. // // When you associate a principal with portfolio, a potential privilege escalation // path may occur when that portfolio is then shared with other accounts. For @@ -20076,7 +20076,8 @@ // One or more tags. Tags []*Tag `type:"list"` - // The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET. + // The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, + // TERRAFORM_OPEN_SOURCE, TERRAFORM_CLOUD, and EXTERNAL. Type *string `type:"string"` // The Amazon Resource Name (ARN) of the user. @@ -20301,7 +20302,8 @@ // The current status message of the provisioned product. StatusMessage *string `type:"string"` - // The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET. + // The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, + // TERRAFORM_OPEN_SOURCE, TERRAFORM_CLOUD, and EXTERNAL. Type *string `type:"string"` } @@ -20752,7 +20754,13 @@ // The type of provisioning artifact. // - // CLOUD_FORMATION_TEMPLATE - CloudFormation template + // * CLOUD_FORMATION_TEMPLATE - CloudFormation template + // + // * TERRAFORM_OPEN_SOURCE - Terraform Open Source configuration file + // + // * TERRAFORM_CLOUD - Terraform Cloud configuration file + // + // * EXTERNAL - External configuration file Type *string `type:"string" enum:"ProvisioningArtifactType"` } @@ -21033,7 +21041,11 @@ // // * CLOUD_FORMATION_TEMPLATE - CloudFormation template // - // * TERRAFORM_OPEN_SOURCE - Terraform open source configuration file + // * TERRAFORM_OPEN_SOURCE - Terraform Open Source configuration file + // + // * TERRAFORM_CLOUD - Terraform Cloud configuration file + // + // * EXTERNAL - External configuration file Type *string `type:"string" enum:"ProvisioningArtifactType"` } @@ -21461,7 +21473,7 @@ ProvisionedProductName *string `min:"1" type:"string"` // The type of provisioned product. The supported values are CFN_STACK, CFN_STACKSET, - // TERRAFORM_OPEN_SOURCE, and TERRAFORM_CLOUD. + // TERRAFORM_OPEN_SOURCE, TERRAFORM_CLOUD, and EXTERNAL. ProvisionedProductType *string `type:"string"` // The identifier of the provisioning artifact. @@ -25795,6 +25807,9 @@ // ProductTypeTerraformCloud is a ProductType enum value ProductTypeTerraformCloud = "TERRAFORM_CLOUD" + + // ProductTypeExternal is a ProductType enum value + ProductTypeExternal = "EXTERNAL" ) // ProductType_Values returns all elements of the ProductType enum @@ -25804,6 +25819,7 @@ ProductTypeMarketplace, ProductTypeTerraformOpenSource, ProductTypeTerraformCloud, + ProductTypeExternal, } } @@ -25994,6 +26010,9 @@ // ProvisioningArtifactTypeTerraformCloud is a ProvisioningArtifactType enum value ProvisioningArtifactTypeTerraformCloud = "TERRAFORM_CLOUD" + + // ProvisioningArtifactTypeExternal is a ProvisioningArtifactType enum value + ProvisioningArtifactTypeExternal = "EXTERNAL" ) // ProvisioningArtifactType_Values returns all elements of the ProvisioningArtifactType enum @@ -26004,6 +26023,7 @@ ProvisioningArtifactTypeMarketplaceCar, ProvisioningArtifactTypeTerraformOpenSource, ProvisioningArtifactTypeTerraformCloud, + ProvisioningArtifactTypeExternal, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sesv2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sesv2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sesv2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sesv2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -14033,7 +14033,10 @@ // * If you include attachments, they must be in a file format that the Amazon // SES API v2 supports. // - // * The entire message must be Base64 encoded. + // * The raw data of the message needs to base64-encoded if you are accessing + // Amazon SES directly through the HTTPS interface. If you are accessing + // Amazon SES using an Amazon Web Services SDK, the SDK takes care of the + // base 64-encoding for you. // // * If any of the MIME parts in your message contain content that is outside // of the 7-bit ASCII character range, you should encode that content to @@ -16632,6 +16635,10 @@ // with the email identity. Tags []*Tag `type:"list"` + // An object that contains additional information about the verification status + // for the identity. + VerificationInfo *VerificationInfo `type:"structure"` + // The verification status of the identity. The status can be one of the following: // // * PENDING – The verification process was initiated, but Amazon SES hasn't @@ -16714,6 +16721,12 @@ return s } +// SetVerificationInfo sets the VerificationInfo field's value. +func (s *GetEmailIdentityOutput) SetVerificationInfo(v *VerificationInfo) *GetEmailIdentityOutput { + s.VerificationInfo = v + return s +} + // SetVerificationStatus sets the VerificationStatus field's value. func (s *GetEmailIdentityOutput) SetVerificationStatus(v string) *GetEmailIdentityOutput { s.VerificationStatus = &v @@ -19104,7 +19117,7 @@ // then the response includes a NextToken element, which you can use to obtain // additional results. // - // The value you specify has to be at least 1, and can be no more than 10. + // The value you specify has to be at least 1, and can be no more than 100. PageSize *int64 `location:"querystring" locationName:"PageSize" type:"integer"` } @@ -22694,7 +22707,10 @@ // // * Attachments must be in a file format that the Amazon SES supports. // - // * The entire message must be Base64 encoded. + // * The raw data of the message needs to base64-encoded if you are accessing + // Amazon SES directly through the HTTPS interface. If you are accessing + // Amazon SES using an Amazon Web Services SDK, the SDK takes care of the + // base 64-encoding for you. // // * If any of the MIME parts in your message contain content that is outside // of the 7-bit ASCII character range, you should encode that content to @@ -23000,6 +23016,57 @@ return s } +// An object that contains information about the start of authority (SOA) record +// associated with the identity. +type SOARecord struct { + _ struct{} `type:"structure"` + + // Administrative contact email from the SOA record. + AdminEmail *string `type:"string"` + + // Primary name server specified in the SOA record. + PrimaryNameServer *string `type:"string"` + + // Serial number from the SOA record. + SerialNumber *int64 `type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SOARecord) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SOARecord) GoString() string { + return s.String() +} + +// SetAdminEmail sets the AdminEmail field's value. +func (s *SOARecord) SetAdminEmail(v string) *SOARecord { + s.AdminEmail = &v + return s +} + +// SetPrimaryNameServer sets the PrimaryNameServer field's value. +func (s *SOARecord) SetPrimaryNameServer(v string) *SOARecord { + s.PrimaryNameServer = &v + return s +} + +// SetSerialNumber sets the SerialNumber field's value. +func (s *SOARecord) SetSerialNumber(v int64) *SOARecord { + s.SerialNumber = &v + return s +} + // Represents a request to send email messages to multiple destinations using // Amazon SES. For more information, see the Amazon SES Developer Guide (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-personalized-email-api.html). type SendBulkEmailInput struct { @@ -25616,6 +25683,86 @@ return s } +// An object that contains additional information about the verification status +// for the identity. +type VerificationInfo struct { + _ struct{} `type:"structure"` + + // Provides the reason for the failure describing why Amazon SES was not able + // to successfully verify the identity. Below are the possible values: + // + // * INVALID_VALUE – Amazon SES was able to find the record, but the value + // contained within the record was invalid. Ensure you have published the + // correct values for the record. + // + // * TYPE_NOT_FOUND – The queried hostname exists but does not have the + // requested type of DNS record. Ensure that you have published the correct + // type of DNS record. + // + // * HOST_NOT_FOUND – The queried hostname does not exist or was not reachable + // at the time of the request. Ensure that you have published the required + // DNS record(s). + // + // * SERVICE_ERROR – A temporary issue is preventing Amazon SES from determining + // the verification status of the domain. + // + // * DNS_SERVER_ERROR – The DNS server encountered an issue and was unable + // to complete the request. + ErrorType *string `type:"string" enum:"VerificationError"` + + // The last time a verification attempt was made for this identity. + LastCheckedTimestamp *time.Time `type:"timestamp"` + + // The last time a successful verification was made for this identity. + LastSuccessTimestamp *time.Time `type:"timestamp"` + + // An object that contains information about the start of authority (SOA) record + // associated with the identity. + SOARecord *SOARecord `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 VerificationInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VerificationInfo) GoString() string { + return s.String() +} + +// SetErrorType sets the ErrorType field's value. +func (s *VerificationInfo) SetErrorType(v string) *VerificationInfo { + s.ErrorType = &v + return s +} + +// SetLastCheckedTimestamp sets the LastCheckedTimestamp field's value. +func (s *VerificationInfo) SetLastCheckedTimestamp(v time.Time) *VerificationInfo { + s.LastCheckedTimestamp = &v + return s +} + +// SetLastSuccessTimestamp sets the LastSuccessTimestamp field's value. +func (s *VerificationInfo) SetLastSuccessTimestamp(v time.Time) *VerificationInfo { + s.LastSuccessTimestamp = &v + return s +} + +// SetSOARecord sets the SOARecord field's value. +func (s *VerificationInfo) SetSOARecord(v *SOARecord) *VerificationInfo { + s.SOARecord = v + return s +} + // An object that contains information about the amount of email that was delivered // to recipients. type VolumeStatistics struct { @@ -26663,6 +26810,34 @@ } } +const ( + // VerificationErrorServiceError is a VerificationError enum value + VerificationErrorServiceError = "SERVICE_ERROR" + + // VerificationErrorDnsServerError is a VerificationError enum value + VerificationErrorDnsServerError = "DNS_SERVER_ERROR" + + // VerificationErrorHostNotFound is a VerificationError enum value + VerificationErrorHostNotFound = "HOST_NOT_FOUND" + + // VerificationErrorTypeNotFound is a VerificationError enum value + VerificationErrorTypeNotFound = "TYPE_NOT_FOUND" + + // VerificationErrorInvalidValue is a VerificationError enum value + VerificationErrorInvalidValue = "INVALID_VALUE" +) + +// VerificationError_Values returns all elements of the VerificationError enum +func VerificationError_Values() []string { + return []string{ + VerificationErrorServiceError, + VerificationErrorDnsServerError, + VerificationErrorHostNotFound, + VerificationErrorTypeNotFound, + VerificationErrorInvalidValue, + } +} + const ( // VerificationStatusPending is a VerificationStatus enum value VerificationStatusPending = "PENDING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sfn/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sfn/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sfn/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sfn/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -515,8 +515,10 @@ // DeleteStateMachine API operation for AWS Step Functions. // -// Deletes a state machine. This is an asynchronous operation: It sets the state -// machine's status to DELETING and begins the deletion process. +// Deletes a state machine. This is an asynchronous operation. It sets the state +// machine's status to DELETING and begins the deletion process. A state machine +// is deleted only when all its executions are completed. On the next state +// transition, the state machine's executions are terminated. // // A qualified state machine ARN can either refer to a Distributed Map state // defined within a state machine, a version ARN, or an alias ARN. @@ -922,8 +924,11 @@ // // Provides information about a state machine execution, such as the state machine // associated with the execution, the execution input and output, and relevant -// execution metadata. Use this API action to return the Map Run Amazon Resource -// Name (ARN) if the execution was dispatched by a Map Run. +// execution metadata. If you've redriven (https://docs.aws.amazon.com/step-functions/latest/dg/redrive-executions.html) +// an execution, you can use this API action to return information about the +// redrives of that execution. In addition, you can use this API action to return +// the Map Run Amazon Resource Name (ARN) if the execution was dispatched by +// a Map Run. // // If you specify a version or alias ARN when you call the StartExecution API // action, DescribeExecution returns that ARN. @@ -931,7 +936,7 @@ // This operation is eventually consistent. The results are best effort and // may not reflect very recent updates and changes. // -// Executions of an EXPRESS state machinearen't supported by DescribeExecution +// Executions of an EXPRESS state machine aren't supported by DescribeExecution // unless a Map Run dispatched them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1015,7 +1020,9 @@ // DescribeMapRun API operation for AWS Step Functions. // // Provides information about a Map Run's configuration, progress, and results. -// For more information, see Examining Map Run (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-examine-map-run.html) +// If you've redriven (https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html) +// a Map Run, this API action also returns information about the redrives of +// that Map Run. For more information, see Examining Map Run (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-examine-map-run.html) // in the Step Functions Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1799,7 +1806,9 @@ // // Lists all executions of a state machine or a Map Run. You can list all executions // related to a state machine by specifying a state machine Amazon Resource -// Name (ARN), or those related to a Map Run by specifying a Map Run ARN. +// Name (ARN), or those related to a Map Run by specifying a Map Run ARN. Using +// this API action, you can also list all redriven (https://docs.aws.amazon.com/step-functions/latest/dg/redrive-executions.html) +// executions. // // You can also provide a state machine alias (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-alias.html) // ARN or version (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html) @@ -2625,6 +2634,140 @@ return out, req.Send() } +const opRedriveExecution = "RedriveExecution" + +// RedriveExecutionRequest generates a "aws/request.Request" representing the +// client's request for the RedriveExecution 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 RedriveExecution for more information on using the RedriveExecution +// 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 RedriveExecutionRequest method. +// req, resp := client.RedriveExecutionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/RedriveExecution +func (c *SFN) RedriveExecutionRequest(input *RedriveExecutionInput) (req *request.Request, output *RedriveExecutionOutput) { + op := &request.Operation{ + Name: opRedriveExecution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RedriveExecutionInput{} + } + + output = &RedriveExecutionOutput{} + req = c.newRequest(op, input, output) + return +} + +// RedriveExecution API operation for AWS Step Functions. +// +// Restarts unsuccessful executions of Standard workflows that didn't complete +// successfully in the last 14 days. These include failed, aborted, or timed +// out executions. When you redrive (https://docs.aws.amazon.com/step-functions/latest/dg/redrive-executions.html) +// an execution, it continues the failed execution from the unsuccessful step +// and uses the same input. Step Functions preserves the results and execution +// history of the successful steps, and doesn't rerun these steps when you redrive +// an execution. Redriven executions use the same state machine definition and +// execution ARN as the original execution attempt. +// +// For workflows that include an Inline Map (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-map-state.html) +// or Parallel (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-parallel-state.html) +// state, RedriveExecution API action reschedules and redrives only the iterations +// and branches that failed or aborted. +// +// To redrive a workflow that includes a Distributed Map state whose Map Run +// failed, you must redrive the parent workflow (https://docs.aws.amazon.com/step-functions/latest/dg/use-dist-map-orchestrate-large-scale-parallel-workloads.html#dist-map-orchestrate-parallel-workloads-key-terms). +// The parent workflow redrives all the unsuccessful states, including a failed +// Map Run. If a Map Run was not started in the original execution attempt, +// the redriven parent workflow starts the Map Run. +// +// This API action is not supported by EXPRESS state machines. +// +// However, you can restart the unsuccessful executions of Express child workflows +// in a Distributed Map by redriving its Map Run. When you redrive a Map Run, +// the Express child workflows are rerun using the StartExecution API action. +// For more information, see Redriving Map Runs (https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html). +// +// You can redrive executions if your original execution meets the following +// conditions: +// +// - The execution status isn't SUCCEEDED. +// +// - Your workflow execution has not exceeded the redrivable period of 14 +// days. Redrivable period refers to the time during which you can redrive +// a given execution. This period starts from the day a state machine completes +// its execution. +// +// - The workflow execution has not exceeded the maximum open time of one +// year. For more information about state machine quotas, see Quotas related +// to state machine executions (https://docs.aws.amazon.com/step-functions/latest/dg/limits-overview.html#service-limits-state-machine-executions). +// +// - The execution event history count is less than 24,999. Redriven executions +// append their event history to the existing event history. Make sure your +// workflow execution contains less than 24,999 events to accommodate the +// ExecutionRedriven history event and at least one other history event. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Step Functions's +// API operation RedriveExecution for usage and error information. +// +// Returned Error Types: +// +// - ExecutionDoesNotExist +// The specified execution does not exist. +// +// - ExecutionNotRedrivable +// The execution Amazon Resource Name (ARN) that you specified for executionArn +// cannot be redriven. +// +// - ExecutionLimitExceeded +// The maximum number of running executions has been reached. Running executions +// must end or be stopped before a new execution can be started. +// +// - InvalidArn +// The provided Amazon Resource Name (ARN) is not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/RedriveExecution +func (c *SFN) RedriveExecution(input *RedriveExecutionInput) (*RedriveExecutionOutput, error) { + req, out := c.RedriveExecutionRequest(input) + return out, req.Send() +} + +// RedriveExecutionWithContext is the same as RedriveExecution with the addition of +// the ability to pass a context and additional request options. +// +// See RedriveExecution 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 *SFN) RedriveExecutionWithContext(ctx aws.Context, input *RedriveExecutionInput, opts ...request.Option) (*RedriveExecutionOutput, error) { + req, out := c.RedriveExecutionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opSendTaskFailure = "SendTaskFailure" // SendTaskFailureRequest generates a "aws/request.Request" representing the @@ -2669,7 +2812,8 @@ // SendTaskFailure API operation for AWS Step Functions. // -// Used by activity workers and task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) +// Used by activity workers, Task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) +// pattern, and optionally Task states using the job run (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync) // pattern to report that the task identified by the taskToken failed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2682,11 +2826,14 @@ // Returned Error Types: // // - TaskDoesNotExist +// The activity does not exist. // // - InvalidToken // The provided token is not valid. // // - TaskTimedOut +// The task token has either expired or the task associated with the token has +// already been closed. // // See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskFailure func (c *SFN) SendTaskFailure(input *SendTaskFailureInput) (*SendTaskFailureOutput, error) { @@ -2754,14 +2901,15 @@ // SendTaskHeartbeat API operation for AWS Step Functions. // -// Used by activity workers and task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) +// Used by activity workers and Task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) +// pattern, and optionally Task states using the job run (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync) // pattern to report to Step Functions that the task represented by the specified // taskToken is still making progress. This action resets the Heartbeat clock. // The Heartbeat threshold is specified in the state machine's Amazon States // Language definition (HeartbeatSeconds). This action does not in itself create // an event in the execution history. However, if the task times out, the execution // history contains an ActivityTimedOut entry for activities, or a TaskTimedOut -// entry for for tasks using the job run (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync) +// entry for tasks using the job run (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync) // or callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) // pattern. // @@ -2780,11 +2928,14 @@ // Returned Error Types: // // - TaskDoesNotExist +// The activity does not exist. // // - InvalidToken // The provided token is not valid. // // - TaskTimedOut +// The task token has either expired or the task associated with the token has +// already been closed. // // See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskHeartbeat func (c *SFN) SendTaskHeartbeat(input *SendTaskHeartbeatInput) (*SendTaskHeartbeatOutput, error) { @@ -2852,7 +3003,8 @@ // SendTaskSuccess API operation for AWS Step Functions. // -// Used by activity workers and task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) +// Used by activity workers, Task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) +// pattern, and optionally Task states using the job run (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync) // pattern to report that the task identified by the taskToken completed successfully. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2865,6 +3017,7 @@ // Returned Error Types: // // - TaskDoesNotExist +// The activity does not exist. // // - InvalidOutput // The provided JSON output data is not valid. @@ -2873,6 +3026,8 @@ // The provided token is not valid. // // - TaskTimedOut +// The task token has either expired or the task associated with the token has +// already been closed. // // See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskSuccess func (c *SFN) SendTaskSuccess(input *SendTaskSuccessInput) (*SendTaskSuccessOutput, error) { @@ -3324,6 +3479,137 @@ return out, req.Send() } +const opTestState = "TestState" + +// TestStateRequest generates a "aws/request.Request" representing the +// client's request for the TestState 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 TestState for more information on using the TestState +// 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 TestStateRequest method. +// req, resp := client.TestStateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/TestState +func (c *SFN) TestStateRequest(input *TestStateInput) (req *request.Request, output *TestStateOutput) { + op := &request.Operation{ + Name: opTestState, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TestStateInput{} + } + + output = &TestStateOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("sync-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// TestState API operation for AWS Step Functions. +// +// Accepts the definition of a single state and executes it. You can test a +// state without creating a state machine or updating an existing state machine. +// Using this API, you can test the following: +// +// - A state's input and output processing (https://docs.aws.amazon.com/step-functions/latest/dg/test-state-isolation.html#test-state-input-output-dataflow) +// data flow +// +// - An Amazon Web Services service integration (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-services.html) +// request and response +// +// - An HTTP Task (https://docs.aws.amazon.com/step-functions/latest/dg/connect-third-party-apis.html) +// request and response +// +// You can call this API on only one state at a time. The states that you can +// test include the following: +// +// - All Task types (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-task-state.html#task-types) +// except Activity (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-activities.html) +// +// - Pass (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-pass-state.html) +// +// - Wait (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-wait-state.html) +// +// - Choice (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-choice-state.html) +// +// - Succeed (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-succeed-state.html) +// +// - Fail (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-fail-state.html) +// +// The TestState API assumes an IAM role which must contain the required IAM +// permissions for the resources your state is accessing. For information about +// the permissions a state might need, see IAM permissions to test a state (https://docs.aws.amazon.com/step-functions/latest/dg/test-state-isolation.html#test-state-permissions). +// +// The TestState API can run for up to five minutes. If the execution of a state +// exceeds this duration, it fails with the States.Timeout error. +// +// TestState doesn't support Activity tasks (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-activities.html), +// .sync or .waitForTaskToken service integration patterns (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html), +// Parallel (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-parallel-state.html), +// or Map (https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-map-state.html) +// states. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Step Functions's +// API operation TestState for usage and error information. +// +// Returned Error Types: +// +// - InvalidArn +// The provided Amazon Resource Name (ARN) is not valid. +// +// - InvalidDefinition +// The provided Amazon States Language definition is not valid. +// +// - InvalidExecutionInput +// The provided JSON input data is not valid. +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/TestState +func (c *SFN) TestState(input *TestStateInput) (*TestStateOutput, error) { + req, out := c.TestStateRequest(input) + return out, req.Send() +} + +// TestStateWithContext is the same as TestState with the addition of +// the ability to pass a context and additional request options. +// +// See TestState 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 *SFN) TestStateWithContext(ctx aws.Context, input *TestStateInput, opts ...request.Option) (*TestStateOutput, error) { + req, out := c.TestStateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUntagResource = "UntagResource" // UntagResourceRequest generates a "aws/request.Request" representing the @@ -3743,6 +4029,9 @@ // // HTTP Status Code: 409 // +// - StateMachineDeleting +// The specified state machine is being deleted. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachineAlias func (c *SFN) UpdateStateMachineAlias(input *UpdateStateMachineAliasInput) (*UpdateStateMachineAliasOutput, error) { req, out := c.UpdateStateMachineAliasRequest(input) @@ -5568,6 +5857,57 @@ // Provides details about execution input or output. OutputDetails *CloudWatchEventsExecutionDataDetails `locationName:"outputDetails" type:"structure"` + // The number of times you've redriven an execution. If you have not yet redriven + // an execution, the redriveCount is 0. This count is only updated if you successfully + // redrive an execution. + RedriveCount *int64 `locationName:"redriveCount" type:"integer"` + + // The date the execution was last redriven. If you have not yet redriven an + // execution, the redriveDate is null. + // + // The redriveDate is unavailable if you redrive a Map Run that starts child + // workflow executions of type EXPRESS. + RedriveDate *time.Time `locationName:"redriveDate" type:"timestamp"` + + // Indicates whether or not an execution can be redriven at a given point in + // time. + // + // * For executions of type STANDARD, redriveStatus is NOT_REDRIVABLE if + // calling the RedriveExecution API action would return the ExecutionNotRedrivable + // error. + // + // * For a Distributed Map that includes child workflows of type STANDARD, + // redriveStatus indicates whether or not the Map Run can redrive child workflow + // executions. + // + // * For a Distributed Map that includes child workflows of type EXPRESS, + // redriveStatus indicates whether or not the Map Run can redrive child workflow + // executions. You can redrive failed or timed out EXPRESS workflows only + // if they're a part of a Map Run. When you redrive (https://docs.aws.amazon.com/step-functions/latest/dg/redrive-map-run.html) + // the Map Run, these workflows are restarted using the StartExecution API + // action. + RedriveStatus *string `locationName:"redriveStatus" type:"string" enum:"ExecutionRedriveStatus"` + + // When redriveStatus is NOT_REDRIVABLE, redriveStatusReason specifies the reason + // why an execution cannot be redriven. + // + // * For executions of type STANDARD, or for a Distributed Map that includes + // child workflows of type STANDARD, redriveStatusReason can include one + // of the following reasons: State machine is in DELETING status. Execution + // is RUNNING and cannot be redriven. Execution is SUCCEEDED and cannot be + // redriven. Execution was started before the launch of RedriveExecution. + // Execution history event limit exceeded. Execution has exceeded the max + // execution time. Execution redrivable period exceeded. + // + // * For a Distributed Map that includes child workflows of type EXPRESS, + // redriveStatusReason is only returned if the child workflows are not redrivable. + // This happens when the child workflow executions have completed successfully. + // + // RedriveStatusReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DescribeExecutionOutput's + // String and GoString methods. + RedriveStatusReason *string `locationName:"redriveStatusReason" type:"string" sensitive:"true"` + // The date the execution is started. // // StartDate is a required field @@ -5678,6 +6018,30 @@ return s } +// SetRedriveCount sets the RedriveCount field's value. +func (s *DescribeExecutionOutput) SetRedriveCount(v int64) *DescribeExecutionOutput { + s.RedriveCount = &v + return s +} + +// SetRedriveDate sets the RedriveDate field's value. +func (s *DescribeExecutionOutput) SetRedriveDate(v time.Time) *DescribeExecutionOutput { + s.RedriveDate = &v + return s +} + +// SetRedriveStatus sets the RedriveStatus field's value. +func (s *DescribeExecutionOutput) SetRedriveStatus(v string) *DescribeExecutionOutput { + s.RedriveStatus = &v + return s +} + +// SetRedriveStatusReason sets the RedriveStatusReason field's value. +func (s *DescribeExecutionOutput) SetRedriveStatusReason(v string) *DescribeExecutionOutput { + s.RedriveStatusReason = &v + return s +} + // SetStartDate sets the StartDate field's value. func (s *DescribeExecutionOutput) SetStartDate(v time.Time) *DescribeExecutionOutput { s.StartDate = &v @@ -5802,6 +6166,15 @@ // MaxConcurrency is a required field MaxConcurrency *int64 `locationName:"maxConcurrency" type:"integer" required:"true"` + // The number of times you've redriven a Map Run. If you have not yet redriven + // a Map Run, the redriveCount is 0. This count is only updated if you successfully + // redrive a Map Run. + RedriveCount *int64 `locationName:"redriveCount" type:"integer"` + + // The date a Map Run was last redriven. If you have not yet redriven a Map + // Run, the redriveDate is null. + RedriveDate *time.Time `locationName:"redriveDate" type:"timestamp"` + // The date when the Map Run was started. // // StartDate is a required field @@ -5876,6 +6249,18 @@ return s } +// SetRedriveCount sets the RedriveCount field's value. +func (s *DescribeMapRunOutput) SetRedriveCount(v int64) *DescribeMapRunOutput { + s.RedriveCount = &v + return s +} + +// SetRedriveDate sets the RedriveDate field's value. +func (s *DescribeMapRunOutput) SetRedriveDate(v time.Time) *DescribeMapRunOutput { + s.RedriveDate = &v + return s +} + // SetStartDate sets the StartDate field's value. func (s *DescribeMapRunOutput) SetStartDate(v time.Time) *DescribeMapRunOutput { s.StartDate = &v @@ -6792,6 +7177,14 @@ // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` + // The number of times you've redriven an execution. If you have not yet redriven + // an execution, the redriveCount is 0. This count is only updated when you + // successfully redrive an execution. + RedriveCount *int64 `locationName:"redriveCount" type:"integer"` + + // The date the execution was last redriven. + RedriveDate *time.Time `locationName:"redriveDate" type:"timestamp"` + // The date the execution started. // // StartDate is a required field @@ -6870,6 +7263,18 @@ return s } +// SetRedriveCount sets the RedriveCount field's value. +func (s *ExecutionListItem) SetRedriveCount(v int64) *ExecutionListItem { + s.RedriveCount = &v + return s +} + +// SetRedriveDate sets the RedriveDate field's value. +func (s *ExecutionListItem) SetRedriveDate(v time.Time) *ExecutionListItem { + s.RedriveDate = &v + return s +} + // SetStartDate sets the StartDate field's value. func (s *ExecutionListItem) SetStartDate(v time.Time) *ExecutionListItem { s.StartDate = &v @@ -6906,6 +7311,105 @@ return s } +// The execution Amazon Resource Name (ARN) that you specified for executionArn +// cannot be redriven. +type ExecutionNotRedrivable 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 ExecutionNotRedrivable) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecutionNotRedrivable) GoString() string { + return s.String() +} + +func newErrorExecutionNotRedrivable(v protocol.ResponseMetadata) error { + return &ExecutionNotRedrivable{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ExecutionNotRedrivable) Code() string { + return "ExecutionNotRedrivable" +} + +// Message returns the exception's message. +func (s *ExecutionNotRedrivable) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ExecutionNotRedrivable) OrigErr() error { + return nil +} + +func (s *ExecutionNotRedrivable) 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 *ExecutionNotRedrivable) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ExecutionNotRedrivable) RequestID() string { + return s.RespMetadata.RequestID +} + +// Contains details about a redriven execution. +type ExecutionRedrivenEventDetails struct { + _ struct{} `type:"structure"` + + // The number of times you've redriven an execution. If you have not yet redriven + // an execution, the redriveCount is 0. This count is not updated for redrives + // that failed to start or are pending to be redriven. + RedriveCount *int64 `locationName:"redriveCount" 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 ExecutionRedrivenEventDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExecutionRedrivenEventDetails) GoString() string { + return s.String() +} + +// SetRedriveCount sets the RedriveCount field's value. +func (s *ExecutionRedrivenEventDetails) SetRedriveCount(v int64) *ExecutionRedrivenEventDetails { + s.RedriveCount = &v + return s +} + // Contains details about the start of the execution. type ExecutionStartedEventDetails struct { _ struct{} `type:"structure"` @@ -7361,6 +7865,9 @@ // Contains details about an execution failure event. ExecutionFailedEventDetails *ExecutionFailedEventDetails `locationName:"executionFailedEventDetails" type:"structure"` + // Contains details about the redrive attempt of an execution. + ExecutionRedrivenEventDetails *ExecutionRedrivenEventDetails `locationName:"executionRedrivenEventDetails" type:"structure"` + // Contains details about the start of the execution. ExecutionStartedEventDetails *ExecutionStartedEventDetails `locationName:"executionStartedEventDetails" type:"structure"` @@ -7411,6 +7918,9 @@ // Contains error and cause details about a Map Run that failed. MapRunFailedEventDetails *MapRunFailedEventDetails `locationName:"mapRunFailedEventDetails" type:"structure"` + // Contains details about the redrive attempt of a Map Run. + MapRunRedrivenEventDetails *MapRunRedrivenEventDetails `locationName:"mapRunRedrivenEventDetails" type:"structure"` + // Contains details, such as mapRunArn, and the start date and time of a Map // Run. mapRunArn is the Amazon Resource Name (ARN) of the Map Run that was // started. @@ -7529,6 +8039,12 @@ return s } +// SetExecutionRedrivenEventDetails sets the ExecutionRedrivenEventDetails field's value. +func (s *HistoryEvent) SetExecutionRedrivenEventDetails(v *ExecutionRedrivenEventDetails) *HistoryEvent { + s.ExecutionRedrivenEventDetails = v + return s +} + // SetExecutionStartedEventDetails sets the ExecutionStartedEventDetails field's value. func (s *HistoryEvent) SetExecutionStartedEventDetails(v *ExecutionStartedEventDetails) *HistoryEvent { s.ExecutionStartedEventDetails = v @@ -7619,6 +8135,12 @@ return s } +// SetMapRunRedrivenEventDetails sets the MapRunRedrivenEventDetails field's value. +func (s *HistoryEvent) SetMapRunRedrivenEventDetails(v *MapRunRedrivenEventDetails) *HistoryEvent { + s.MapRunRedrivenEventDetails = v + return s +} + // SetMapRunStartedEventDetails sets the MapRunStartedEventDetails field's value. func (s *HistoryEvent) SetMapRunStartedEventDetails(v *MapRunStartedEventDetails) *HistoryEvent { s.MapRunStartedEventDetails = v @@ -7742,6 +8264,270 @@ return s } +// Contains additional details about the state's execution, including its input +// and output data processing flow, and HTTP request and response information. +type InspectionData struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The input after Step Functions applies the InputPath (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-inputpath) + // filter. + // + // AfterInputPath is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InspectionData's + // String and GoString methods. + AfterInputPath *string `locationName:"afterInputPath" type:"string" sensitive:"true"` + + // The effective input after Step Functions applies the Parameters (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-parameters) + // filter. + // + // AfterParameters is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InspectionData's + // String and GoString methods. + AfterParameters *string `locationName:"afterParameters" type:"string" sensitive:"true"` + + // The effective result combined with the raw state input after Step Functions + // applies the ResultPath (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-resultpath.html) + // filter. + // + // AfterResultPath is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InspectionData's + // String and GoString methods. + AfterResultPath *string `locationName:"afterResultPath" type:"string" sensitive:"true"` + + // The effective result after Step Functions applies the ResultSelector (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) + // filter. + // + // AfterResultSelector is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InspectionData's + // String and GoString methods. + AfterResultSelector *string `locationName:"afterResultSelector" type:"string" sensitive:"true"` + + // The raw state input. + // + // Input is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InspectionData's + // String and GoString methods. + Input *string `locationName:"input" type:"string" sensitive:"true"` + + // The raw HTTP request that is sent when you test an HTTP Task. + Request *InspectionDataRequest `locationName:"request" type:"structure"` + + // The raw HTTP response that is returned when you test an HTTP Task. + Response *InspectionDataResponse `locationName:"response" type:"structure"` + + // The state's raw result. + // + // Result is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by InspectionData's + // String and GoString methods. + Result *string `locationName:"result" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InspectionData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InspectionData) GoString() string { + return s.String() +} + +// SetAfterInputPath sets the AfterInputPath field's value. +func (s *InspectionData) SetAfterInputPath(v string) *InspectionData { + s.AfterInputPath = &v + return s +} + +// SetAfterParameters sets the AfterParameters field's value. +func (s *InspectionData) SetAfterParameters(v string) *InspectionData { + s.AfterParameters = &v + return s +} + +// SetAfterResultPath sets the AfterResultPath field's value. +func (s *InspectionData) SetAfterResultPath(v string) *InspectionData { + s.AfterResultPath = &v + return s +} + +// SetAfterResultSelector sets the AfterResultSelector field's value. +func (s *InspectionData) SetAfterResultSelector(v string) *InspectionData { + s.AfterResultSelector = &v + return s +} + +// SetInput sets the Input field's value. +func (s *InspectionData) SetInput(v string) *InspectionData { + s.Input = &v + return s +} + +// SetRequest sets the Request field's value. +func (s *InspectionData) SetRequest(v *InspectionDataRequest) *InspectionData { + s.Request = v + return s +} + +// SetResponse sets the Response field's value. +func (s *InspectionData) SetResponse(v *InspectionDataResponse) *InspectionData { + s.Response = v + return s +} + +// SetResult sets the Result field's value. +func (s *InspectionData) SetResult(v string) *InspectionData { + s.Result = &v + return s +} + +// Contains additional details about the state's execution, including its input +// and output data processing flow, and HTTP request information. +type InspectionDataRequest struct { + _ struct{} `type:"structure"` + + // The request body for the HTTP request. + Body *string `locationName:"body" type:"string"` + + // The request headers associated with the HTTP request. + Headers *string `locationName:"headers" type:"string"` + + // The HTTP method used for the HTTP request. + Method *string `locationName:"method" type:"string"` + + // The protocol used to make the HTTP request. + Protocol *string `locationName:"protocol" type:"string"` + + // The API endpoint used for the HTTP request. + Url *string `locationName:"url" 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 InspectionDataRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InspectionDataRequest) GoString() string { + return s.String() +} + +// SetBody sets the Body field's value. +func (s *InspectionDataRequest) SetBody(v string) *InspectionDataRequest { + s.Body = &v + return s +} + +// SetHeaders sets the Headers field's value. +func (s *InspectionDataRequest) SetHeaders(v string) *InspectionDataRequest { + s.Headers = &v + return s +} + +// SetMethod sets the Method field's value. +func (s *InspectionDataRequest) SetMethod(v string) *InspectionDataRequest { + s.Method = &v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *InspectionDataRequest) SetProtocol(v string) *InspectionDataRequest { + s.Protocol = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *InspectionDataRequest) SetUrl(v string) *InspectionDataRequest { + s.Url = &v + return s +} + +// Contains additional details about the state's execution, including its input +// and output data processing flow, and HTTP response information. The inspectionLevel +// request parameter specifies which details are returned. +type InspectionDataResponse struct { + _ struct{} `type:"structure"` + + // The HTTP response returned. + Body *string `locationName:"body" type:"string"` + + // The response headers associated with the HTTP response. + Headers *string `locationName:"headers" type:"string"` + + // The protocol used to return the HTTP response. + Protocol *string `locationName:"protocol" type:"string"` + + // The HTTP response status code for the HTTP response. + StatusCode *string `locationName:"statusCode" type:"string"` + + // The message associated with the HTTP status code. + StatusMessage *string `locationName:"statusMessage" 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 InspectionDataResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InspectionDataResponse) GoString() string { + return s.String() +} + +// SetBody sets the Body field's value. +func (s *InspectionDataResponse) SetBody(v string) *InspectionDataResponse { + s.Body = &v + return s +} + +// SetHeaders sets the Headers field's value. +func (s *InspectionDataResponse) SetHeaders(v string) *InspectionDataResponse { + s.Headers = &v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *InspectionDataResponse) SetProtocol(v string) *InspectionDataResponse { + s.Protocol = &v + return s +} + +// SetStatusCode sets the StatusCode field's value. +func (s *InspectionDataResponse) SetStatusCode(v string) *InspectionDataResponse { + s.StatusCode = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *InspectionDataResponse) SetStatusMessage(v string) *InspectionDataResponse { + s.StatusMessage = &v + return s +} + // The provided Amazon Resource Name (ARN) is not valid. type InvalidArn struct { _ struct{} `type:"structure"` @@ -8709,6 +9495,18 @@ // pagination token will return an HTTP 400 InvalidToken error. NextToken *string `locationName:"nextToken" min:"1" type:"string"` + // Sets a filter to list executions based on whether or not they have been redriven. + // + // For a Distributed Map, redriveFilter sets a filter to list child workflow + // executions based on whether or not they have been redriven. + // + // If you do not provide a redriveFilter, Step Functions returns a list of both + // redriven and non-redriven executions. + // + // If you provide a state machine ARN in redriveFilter, the API returns a validation + // exception. + RedriveFilter *string `locationName:"redriveFilter" type:"string" enum:"ExecutionRedriveFilter"` + // The Amazon Resource Name (ARN) of the state machine whose executions is listed. // // You can specify either a mapRunArn or a stateMachineArn, but not both. @@ -8779,6 +9577,12 @@ return s } +// SetRedriveFilter sets the RedriveFilter field's value. +func (s *ListExecutionsInput) SetRedriveFilter(v string) *ListExecutionsInput { + s.RedriveFilter = &v + return s +} + // SetStateMachineArn sets the StateMachineArn field's value. func (s *ListExecutionsInput) SetStateMachineArn(v string) *ListExecutionsInput { s.StateMachineArn = &v @@ -9584,12 +10388,24 @@ // Failed is a required field Failed *int64 `locationName:"failed" type:"long" required:"true"` + // The number of FAILED, ABORTED, or TIMED_OUT child workflow executions that + // cannot be redriven because their execution status is terminal. For example, + // child workflows with an execution status of FAILED, ABORTED, or TIMED_OUT + // and a redriveStatus of NOT_REDRIVABLE. + FailuresNotRedrivable *int64 `locationName:"failuresNotRedrivable" type:"long"` + // The total number of child workflow executions that were started by a Map // Run, but haven't started executing yet. // // Pending is a required field Pending *int64 `locationName:"pending" type:"long" required:"true"` + // The number of unsuccessful child workflow executions currently waiting to + // be redriven. The status of these child workflow executions could be FAILED, + // ABORTED, or TIMED_OUT in the original execution attempt or a previous redrive + // attempt. + PendingRedrive *int64 `locationName:"pendingRedrive" type:"long"` + // Returns the count of child workflow executions whose results were written // by ResultWriter. For more information, see ResultWriter (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-resultwriter.html) // in the Step Functions Developer Guide. @@ -9652,12 +10468,24 @@ return s } +// SetFailuresNotRedrivable sets the FailuresNotRedrivable field's value. +func (s *MapRunExecutionCounts) SetFailuresNotRedrivable(v int64) *MapRunExecutionCounts { + s.FailuresNotRedrivable = &v + return s +} + // SetPending sets the Pending field's value. func (s *MapRunExecutionCounts) SetPending(v int64) *MapRunExecutionCounts { s.Pending = &v return s } +// SetPendingRedrive sets the PendingRedrive field's value. +func (s *MapRunExecutionCounts) SetPendingRedrive(v int64) *MapRunExecutionCounts { + s.PendingRedrive = &v + return s +} + // SetResultsWritten sets the ResultsWritten field's value. func (s *MapRunExecutionCounts) SetResultsWritten(v int64) *MapRunExecutionCounts { s.ResultsWritten = &v @@ -9755,12 +10583,22 @@ // Failed is a required field Failed *int64 `locationName:"failed" type:"long" required:"true"` + // The number of FAILED, ABORTED, or TIMED_OUT items in child workflow executions + // that cannot be redriven because the execution status of those child workflows + // is terminal. For example, child workflows with an execution status of FAILED, + // ABORTED, or TIMED_OUT and a redriveStatus of NOT_REDRIVABLE. + FailuresNotRedrivable *int64 `locationName:"failuresNotRedrivable" type:"long"` + // The total number of items to process in child workflow executions that haven't // started running yet. // // Pending is a required field Pending *int64 `locationName:"pending" type:"long" required:"true"` + // The number of unsuccessful items in child workflow executions currently waiting + // to be redriven. + PendingRedrive *int64 `locationName:"pendingRedrive" type:"long"` + // Returns the count of items whose results were written by ResultWriter. For // more information, see ResultWriter (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-resultwriter.html) // in the Step Functions Developer Guide. @@ -9823,12 +10661,24 @@ return s } +// SetFailuresNotRedrivable sets the FailuresNotRedrivable field's value. +func (s *MapRunItemCounts) SetFailuresNotRedrivable(v int64) *MapRunItemCounts { + s.FailuresNotRedrivable = &v + return s +} + // SetPending sets the Pending field's value. func (s *MapRunItemCounts) SetPending(v int64) *MapRunItemCounts { s.Pending = &v return s } +// SetPendingRedrive sets the PendingRedrive field's value. +func (s *MapRunItemCounts) SetPendingRedrive(v int64) *MapRunItemCounts { + s.PendingRedrive = &v + return s +} + // SetResultsWritten sets the ResultsWritten field's value. func (s *MapRunItemCounts) SetResultsWritten(v int64) *MapRunItemCounts { s.ResultsWritten = &v @@ -9935,6 +10785,49 @@ return s } +// Contains details about a Map Run that was redriven. +type MapRunRedrivenEventDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of a Map Run that was redriven. + MapRunArn *string `locationName:"mapRunArn" min:"1" type:"string"` + + // The number of times the Map Run has been redriven at this point in the execution's + // history including this event. The redrive count for a redriven Map Run is + // always greater than 0. + RedriveCount *int64 `locationName:"redriveCount" 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 MapRunRedrivenEventDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MapRunRedrivenEventDetails) GoString() string { + return s.String() +} + +// SetMapRunArn sets the MapRunArn field's value. +func (s *MapRunRedrivenEventDetails) SetMapRunArn(v string) *MapRunRedrivenEventDetails { + s.MapRunArn = &v + return s +} + +// SetRedriveCount sets the RedriveCount field's value. +func (s *MapRunRedrivenEventDetails) SetRedriveCount(v int64) *MapRunRedrivenEventDetails { + s.RedriveCount = &v + return s +} + // Contains details about a Map Run that was started during a state machine // execution. type MapRunStartedEventDetails struct { @@ -10190,6 +11083,105 @@ return s } +type RedriveExecutionInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If you don’t specify a client token, the Amazon Web Services + // SDK automatically generates a client token and uses it for the request to + // ensure idempotency. The API will return idempotent responses for the last + // 10 client tokens used to successfully redrive the execution. These client + // tokens are valid for up to 15 minutes after they are first used. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The Amazon Resource Name (ARN) of the execution to be redriven. + // + // ExecutionArn is a required field + ExecutionArn *string `locationName:"executionArn" 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 RedriveExecutionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedriveExecutionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedriveExecutionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedriveExecutionInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ExecutionArn == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionArn")) + } + if s.ExecutionArn != nil && len(*s.ExecutionArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *RedriveExecutionInput) SetClientToken(v string) *RedriveExecutionInput { + s.ClientToken = &v + return s +} + +// SetExecutionArn sets the ExecutionArn field's value. +func (s *RedriveExecutionInput) SetExecutionArn(v string) *RedriveExecutionInput { + s.ExecutionArn = &v + return s +} + +type RedriveExecutionOutput struct { + _ struct{} `type:"structure"` + + // The date the execution was last redriven. + // + // RedriveDate is a required field + RedriveDate *time.Time `locationName:"redriveDate" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedriveExecutionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedriveExecutionOutput) GoString() string { + return s.String() +} + +// SetRedriveDate sets the RedriveDate field's value. +func (s *RedriveExecutionOutput) SetRedriveDate(v time.Time) *RedriveExecutionOutput { + s.RedriveDate = &v + return s +} + // Could not find the referenced resource. type ResourceNotFound struct { _ struct{} `type:"structure"` @@ -10272,8 +11264,8 @@ // StateMachineVersionArn is a required field StateMachineVersionArn *string `locationName:"stateMachineVersionArn" min:"1" type:"string" required:"true"` - // The percentage of traffic you want to route to the second state machine version. - // The sum of the weights in the routing configuration must be equal to 100. + // The percentage of traffic you want to route to a state machine version. The + // sum of the weights in the routing configuration must be equal to 100. // // Weight is a required field Weight *int64 `locationName:"weight" type:"integer" required:"true"` @@ -10681,6 +11673,9 @@ // see Limits Related to State Machine Executions (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html#service-limits-state-machine-executions) // in the Step Functions Developer Guide. // + // If you don't provide a name for the execution, Step Functions automatically + // generates a universally unique identifier (UUID) as the execution name. + // // A name must not contain: // // * white space @@ -12029,6 +13024,7 @@ return s } +// The activity does not exist. type TaskDoesNotExist struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12586,6 +13582,8 @@ return s } +// The task token has either expired or the task associated with the token has +// already been closed. type TaskTimedOut struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12720,6 +13718,233 @@ return s } +type TestStateInput struct { + _ struct{} `type:"structure"` + + // The Amazon States Language (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html) + // (ASL) definition of the state. + // + // Definition is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TestStateInput's + // String and GoString methods. + // + // Definition is a required field + Definition *string `locationName:"definition" min:"1" type:"string" required:"true" sensitive:"true"` + + // A string that contains the JSON input data for the state. + // + // Input is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TestStateInput's + // String and GoString methods. + Input *string `locationName:"input" type:"string" sensitive:"true"` + + // Determines the values to return when a state is tested. You can specify one + // of the following types: + // + // * INFO: Shows the final state output. By default, Step Functions sets + // inspectionLevel to INFO if you don't specify a level. + // + // * DEBUG: Shows the final state output along with the input and output + // data processing result. + // + // * TRACE: Shows the HTTP request and response for an HTTP Task. This level + // also shows the final state output along with the input and output data + // processing result. + // + // Each of these levels also provide information about the status of the state + // execution and the next state to transition to. + InspectionLevel *string `locationName:"inspectionLevel" type:"string" enum:"InspectionLevel"` + + // Specifies whether or not to include secret information in the test result. + // For HTTP Tasks, a secret includes the data that an EventBridge connection + // adds to modify the HTTP request headers, query parameters, and body. Step + // Functions doesn't omit any information included in the state definition or + // the HTTP response. + // + // If you set revealSecrets to true, you must make sure that the IAM user that + // calls the TestState API has permission for the states:RevealSecrets action. + // For an example of IAM policy that sets the states:RevealSecrets permission, + // see IAM permissions to test a state (https://docs.aws.amazon.com/step-functions/latest/dg/test-state-isolation.html#test-state-permissions). + // Without this permission, Step Functions throws an access denied error. + // + // By default, revealSecrets is set to false. + RevealSecrets *bool `locationName:"revealSecrets" type:"boolean"` + + // The Amazon Resource Name (ARN) of the execution role with the required IAM + // permissions for the state. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" 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 TestStateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestStateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TestStateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TestStateInput"} + if s.Definition == nil { + invalidParams.Add(request.NewErrParamRequired("Definition")) + } + if s.Definition != nil && len(*s.Definition) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Definition", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefinition sets the Definition field's value. +func (s *TestStateInput) SetDefinition(v string) *TestStateInput { + s.Definition = &v + return s +} + +// SetInput sets the Input field's value. +func (s *TestStateInput) SetInput(v string) *TestStateInput { + s.Input = &v + return s +} + +// SetInspectionLevel sets the InspectionLevel field's value. +func (s *TestStateInput) SetInspectionLevel(v string) *TestStateInput { + s.InspectionLevel = &v + return s +} + +// SetRevealSecrets sets the RevealSecrets field's value. +func (s *TestStateInput) SetRevealSecrets(v bool) *TestStateInput { + s.RevealSecrets = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *TestStateInput) SetRoleArn(v string) *TestStateInput { + s.RoleArn = &v + return s +} + +type TestStateOutput struct { + _ struct{} `type:"structure"` + + // A detailed explanation of the cause for the error when the execution of a + // state fails. + // + // Cause is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TestStateOutput's + // String and GoString methods. + Cause *string `locationName:"cause" type:"string" sensitive:"true"` + + // The error returned when the execution of a state fails. + // + // Error is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TestStateOutput's + // String and GoString methods. + Error *string `locationName:"error" type:"string" sensitive:"true"` + + // Returns additional details about the state's execution, including its input + // and output data processing flow, and HTTP request and response information. + // The inspectionLevel request parameter specifies which details are returned. + // + // InspectionData is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TestStateOutput's + // String and GoString methods. + InspectionData *InspectionData `locationName:"inspectionData" type:"structure" sensitive:"true"` + + // The name of the next state to transition to. If you haven't defined a next + // state in your definition or if the execution of the state fails, this field + // doesn't contain a value. + NextState *string `locationName:"nextState" min:"1" type:"string"` + + // The JSON output data of the state. Length constraints apply to the payload + // size, and are expressed as bytes in UTF-8 encoding. + // + // Output is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TestStateOutput's + // String and GoString methods. + Output *string `locationName:"output" type:"string" sensitive:"true"` + + // The execution status of the state. + Status *string `locationName:"status" type:"string" enum:"TestExecutionStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestStateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TestStateOutput) GoString() string { + return s.String() +} + +// SetCause sets the Cause field's value. +func (s *TestStateOutput) SetCause(v string) *TestStateOutput { + s.Cause = &v + return s +} + +// SetError sets the Error field's value. +func (s *TestStateOutput) SetError(v string) *TestStateOutput { + s.Error = &v + return s +} + +// SetInspectionData sets the InspectionData field's value. +func (s *TestStateOutput) SetInspectionData(v *InspectionData) *TestStateOutput { + s.InspectionData = v + return s +} + +// SetNextState sets the NextState field's value. +func (s *TestStateOutput) SetNextState(v string) *TestStateOutput { + s.NextState = &v + return s +} + +// SetOutput sets the Output field's value. +func (s *TestStateOutput) SetOutput(v string) *TestStateOutput { + s.Output = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *TestStateOutput) SetStatus(v string) *TestStateOutput { + s.Status = &v + return s +} + // You've exceeded the number of tags allowed for a resource. See the Limits // Topic (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html) // in the Step Functions Developer Guide. @@ -13376,6 +14601,42 @@ } const ( + // ExecutionRedriveFilterRedriven is a ExecutionRedriveFilter enum value + ExecutionRedriveFilterRedriven = "REDRIVEN" + + // ExecutionRedriveFilterNotRedriven is a ExecutionRedriveFilter enum value + ExecutionRedriveFilterNotRedriven = "NOT_REDRIVEN" +) + +// ExecutionRedriveFilter_Values returns all elements of the ExecutionRedriveFilter enum +func ExecutionRedriveFilter_Values() []string { + return []string{ + ExecutionRedriveFilterRedriven, + ExecutionRedriveFilterNotRedriven, + } +} + +const ( + // ExecutionRedriveStatusRedrivable is a ExecutionRedriveStatus enum value + ExecutionRedriveStatusRedrivable = "REDRIVABLE" + + // ExecutionRedriveStatusNotRedrivable is a ExecutionRedriveStatus enum value + ExecutionRedriveStatusNotRedrivable = "NOT_REDRIVABLE" + + // ExecutionRedriveStatusRedrivableByMapRun is a ExecutionRedriveStatus enum value + ExecutionRedriveStatusRedrivableByMapRun = "REDRIVABLE_BY_MAP_RUN" +) + +// ExecutionRedriveStatus_Values returns all elements of the ExecutionRedriveStatus enum +func ExecutionRedriveStatus_Values() []string { + return []string{ + ExecutionRedriveStatusRedrivable, + ExecutionRedriveStatusNotRedrivable, + ExecutionRedriveStatusRedrivableByMapRun, + } +} + +const ( // ExecutionStatusRunning is a ExecutionStatus enum value ExecutionStatusRunning = "RUNNING" @@ -13390,6 +14651,9 @@ // ExecutionStatusAborted is a ExecutionStatus enum value ExecutionStatusAborted = "ABORTED" + + // ExecutionStatusPendingRedrive is a ExecutionStatus enum value + ExecutionStatusPendingRedrive = "PENDING_REDRIVE" ) // ExecutionStatus_Values returns all elements of the ExecutionStatus enum @@ -13400,6 +14664,7 @@ ExecutionStatusFailed, ExecutionStatusTimedOut, ExecutionStatusAborted, + ExecutionStatusPendingRedrive, } } @@ -13580,6 +14845,12 @@ // HistoryEventTypeMapRunSucceeded is a HistoryEventType enum value HistoryEventTypeMapRunSucceeded = "MapRunSucceeded" + + // HistoryEventTypeExecutionRedriven is a HistoryEventType enum value + HistoryEventTypeExecutionRedriven = "ExecutionRedriven" + + // HistoryEventTypeMapRunRedriven is a HistoryEventType enum value + HistoryEventTypeMapRunRedriven = "MapRunRedriven" ) // HistoryEventType_Values returns all elements of the HistoryEventType enum @@ -13644,6 +14915,28 @@ HistoryEventTypeMapRunFailed, HistoryEventTypeMapRunStarted, HistoryEventTypeMapRunSucceeded, + HistoryEventTypeExecutionRedriven, + HistoryEventTypeMapRunRedriven, + } +} + +const ( + // InspectionLevelInfo is a InspectionLevel enum value + InspectionLevelInfo = "INFO" + + // InspectionLevelDebug is a InspectionLevel enum value + InspectionLevelDebug = "DEBUG" + + // InspectionLevelTrace is a InspectionLevel enum value + InspectionLevelTrace = "TRACE" +) + +// InspectionLevel_Values returns all elements of the InspectionLevel enum +func InspectionLevel_Values() []string { + return []string{ + InspectionLevelInfo, + InspectionLevelDebug, + InspectionLevelTrace, } } @@ -13747,6 +15040,30 @@ } } +const ( + // TestExecutionStatusSucceeded is a TestExecutionStatus enum value + TestExecutionStatusSucceeded = "SUCCEEDED" + + // TestExecutionStatusFailed is a TestExecutionStatus enum value + TestExecutionStatusFailed = "FAILED" + + // TestExecutionStatusRetriable is a TestExecutionStatus enum value + TestExecutionStatusRetriable = "RETRIABLE" + + // TestExecutionStatusCaughtError is a TestExecutionStatus enum value + TestExecutionStatusCaughtError = "CAUGHT_ERROR" +) + +// TestExecutionStatus_Values returns all elements of the TestExecutionStatus enum +func TestExecutionStatus_Values() []string { + return []string{ + TestExecutionStatusSucceeded, + TestExecutionStatusFailed, + TestExecutionStatusRetriable, + TestExecutionStatusCaughtError, + } +} + const ( // ValidationExceptionReasonApiDoesNotSupportLabeledArns is a ValidationExceptionReason enum value ValidationExceptionReasonApiDoesNotSupportLabeledArns = "API_DOES_NOT_SUPPORT_LABELED_ARNS" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sfn/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/sfn/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sfn/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sfn/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -22,6 +22,11 @@ // SDKs, or an HTTP API. For more information about Step Functions, see the // Step Functions Developer Guide (https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) . // +// If you use the Step Functions API actions using Amazon Web Services SDK integrations, +// make sure the API actions are in camel case and parameter names are in Pascal +// case. For example, you could use Step Functions API action startSyncExecution +// and specify its parameter as StateMachineArn. +// // See https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23 for more information on this service. // // See sfn package documentation for more information. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sfn/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/sfn/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sfn/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sfn/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -59,6 +59,13 @@ // must end or be stopped before a new execution can be started. ErrCodeExecutionLimitExceeded = "ExecutionLimitExceeded" + // ErrCodeExecutionNotRedrivable for service response error code + // "ExecutionNotRedrivable". + // + // The execution Amazon Resource Name (ARN) that you specified for executionArn + // cannot be redriven. + ErrCodeExecutionNotRedrivable = "ExecutionNotRedrivable" + // ErrCodeInvalidArn for service response error code // "InvalidArn". // @@ -159,10 +166,15 @@ // ErrCodeTaskDoesNotExist for service response error code // "TaskDoesNotExist". + // + // The activity does not exist. ErrCodeTaskDoesNotExist = "TaskDoesNotExist" // ErrCodeTaskTimedOut for service response error code // "TaskTimedOut". + // + // The task token has either expired or the task associated with the token has + // already been closed. ErrCodeTaskTimedOut = "TaskTimedOut" // ErrCodeTooManyTags for service response error code @@ -189,6 +201,7 @@ "ExecutionAlreadyExists": newErrorExecutionAlreadyExists, "ExecutionDoesNotExist": newErrorExecutionDoesNotExist, "ExecutionLimitExceeded": newErrorExecutionLimitExceeded, + "ExecutionNotRedrivable": newErrorExecutionNotRedrivable, "InvalidArn": newErrorInvalidArn, "InvalidDefinition": newErrorInvalidDefinition, "InvalidExecutionInput": newErrorInvalidExecutionInput, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sfn/sfniface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/sfn/sfniface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sfn/sfniface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sfn/sfniface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -167,6 +167,10 @@ PublishStateMachineVersionWithContext(aws.Context, *sfn.PublishStateMachineVersionInput, ...request.Option) (*sfn.PublishStateMachineVersionOutput, error) PublishStateMachineVersionRequest(*sfn.PublishStateMachineVersionInput) (*request.Request, *sfn.PublishStateMachineVersionOutput) + RedriveExecution(*sfn.RedriveExecutionInput) (*sfn.RedriveExecutionOutput, error) + RedriveExecutionWithContext(aws.Context, *sfn.RedriveExecutionInput, ...request.Option) (*sfn.RedriveExecutionOutput, error) + RedriveExecutionRequest(*sfn.RedriveExecutionInput) (*request.Request, *sfn.RedriveExecutionOutput) + SendTaskFailure(*sfn.SendTaskFailureInput) (*sfn.SendTaskFailureOutput, error) SendTaskFailureWithContext(aws.Context, *sfn.SendTaskFailureInput, ...request.Option) (*sfn.SendTaskFailureOutput, error) SendTaskFailureRequest(*sfn.SendTaskFailureInput) (*request.Request, *sfn.SendTaskFailureOutput) @@ -195,6 +199,10 @@ TagResourceWithContext(aws.Context, *sfn.TagResourceInput, ...request.Option) (*sfn.TagResourceOutput, error) TagResourceRequest(*sfn.TagResourceInput) (*request.Request, *sfn.TagResourceOutput) + TestState(*sfn.TestStateInput) (*sfn.TestStateOutput, error) + TestStateWithContext(aws.Context, *sfn.TestStateInput, ...request.Option) (*sfn.TestStateOutput, error) + TestStateRequest(*sfn.TestStateInput) (*request.Request, *sfn.TestStateOutput) + UntagResource(*sfn.UntagResourceInput) (*sfn.UntagResourceOutput, error) UntagResourceWithContext(aws.Context, *sfn.UntagResourceInput, ...request.Option) (*sfn.UntagResourceOutput, error) UntagResourceRequest(*sfn.UntagResourceInput) (*request.Request, *sfn.UntagResourceOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/signer/api.go golang-github-aws-aws-sdk-go-1.48.14/service/signer/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/signer/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/signer/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -713,11 +713,11 @@ // // Lists all your signing jobs. You can use the maxResults parameter to limit // the number of signing jobs that are returned in the response. If additional -// jobs remain to be listed, code signing returns a nextToken value. Use this +// jobs remain to be listed, AWS Signer returns a nextToken value. Use this // value in subsequent calls to ListSigningJobs to fetch the remaining values. // You can continue calling ListSigningJobs with your maxResults parameter and -// with new values that code signing returns in the nextToken parameter until -// all of your signing jobs have been returned. +// with new values that Signer returns in the nextToken parameter until all +// of your signing jobs have been returned. // // 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 @@ -864,12 +864,12 @@ // ListSigningPlatforms API operation for AWS Signer. // -// Lists all signing platforms available in code signing that match the request -// parameters. If additional jobs remain to be listed, code signing returns -// a nextToken value. Use this value in subsequent calls to ListSigningJobs -// to fetch the remaining values. You can continue calling ListSigningJobs with -// your maxResults parameter and with new values that code signing returns in -// the nextToken parameter until all of your signing jobs have been returned. +// Lists all signing platforms available in AWS Signer that match the request +// parameters. If additional jobs remain to be listed, Signer returns a nextToken +// value. Use this value in subsequent calls to ListSigningJobs to fetch the +// remaining values. You can continue calling ListSigningJobs with your maxResults +// parameter and with new values that Signer returns in the nextToken parameter +// until all of your signing jobs have been returned. // // 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 @@ -1018,11 +1018,11 @@ // // Lists all available signing profiles in your AWS account. Returns only profiles // with an ACTIVE status unless the includeCanceled request field is set to -// true. If additional jobs remain to be listed, code signing returns a nextToken +// true. If additional jobs remain to be listed, AWS Signer returns a nextToken // value. Use this value in subsequent calls to ListSigningJobs to fetch the // remaining values. You can continue calling ListSigningJobs with your maxResults -// parameter and with new values that code signing returns in the nextToken -// parameter until all of your signing jobs have been returned. +// parameter and with new values that Signer returns in the nextToken parameter +// until all of your signing jobs have been returned. // // 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 @@ -1251,7 +1251,7 @@ // PutSigningProfile API operation for AWS Signer. // -// Creates a signing profile. A signing profile is a code signing template that +// Creates a signing profile. A signing profile is a code-signing template that // can be used to carry out a pre-defined signing job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1735,14 +1735,14 @@ // // - Your S3 source bucket must be version enabled. // -// - You must create an S3 destination bucket. Code signing uses your S3 -// destination bucket to write your signed code. +// - You must create an S3 destination bucket. AWS Signer uses your S3 destination +// bucket to write your signed code. // // - You specify the name of the source and destination buckets when calling // the StartSigningJob operation. // // - You must also specify a request token that identifies your request to -// code signing. +// Signer. // // You can call the DescribeSigningJob and the ListSigningJobs actions after // you call StartSigningJob. @@ -2499,7 +2499,7 @@ // Thr expiration timestamp for the signature generated by the signing job. SignatureExpiresAt *time.Time `locationName:"signatureExpiresAt" type:"timestamp"` - // Name of the S3 bucket where the signed code image is saved by code signing. + // Name of the S3 bucket where the signed code image is saved by AWS Signer. SignedObject *SignedObject `locationName:"signedObject" type:"structure"` // The Amazon Resource Name (ARN) of your code signing certificate. @@ -2684,17 +2684,17 @@ return s } -// The encryption algorithm options that are available to a code signing job. +// The encryption algorithm options that are available to a code-signing job. type EncryptionAlgorithmOptions struct { _ struct{} `type:"structure"` - // The set of accepted encryption algorithms that are allowed in a code signing + // The set of accepted encryption algorithms that are allowed in a code-signing // job. // // AllowedValues is a required field AllowedValues []*string `locationName:"allowedValues" type:"list" required:"true" enum:"EncryptionAlgorithm"` - // The default encryption algorithm that is used by a code signing job. + // The default encryption algorithm that is used by a code-signing job. // // DefaultValue is a required field DefaultValue *string `locationName:"defaultValue" type:"string" required:"true" enum:"EncryptionAlgorithm"` @@ -2739,6 +2739,20 @@ // by the parent CA) combined with a parent CA TBS hash (signed by the parent // CA’s CA). Root certificates are defined as their own CA. // + // The following example shows how to calculate a hash for this parameter using + // OpenSSL commands: + // + // openssl asn1parse -in childCert.pem -strparse 4 -out childCert.tbs + // + // openssl sha384 < childCert.tbs -binary > childCertTbsHash + // + // openssl asn1parse -in parentCert.pem -strparse 4 -out parentCert.tbs + // + // openssl sha384 < parentCert.tbs -binary > parentCertTbsHash xxd -p childCertTbsHash + // > certificateHash.hex xxd -p parentCertTbsHash >> certificateHash.hex + // + // cat certificateHash.hex | tr -d '\n' + // // CertificateHashes is a required field CertificateHashes []*string `location:"querystring" locationName:"certificateHashes" type:"list" required:"true"` @@ -2845,8 +2859,8 @@ type GetRevocationStatusOutput struct { _ struct{} `type:"structure"` - // A list of revoked entities (including one or more of the signing profile - // ARN, signing job ID, and certificate hash) supplied as input to the API. + // A list of revoked entities (including zero or more of the signing profile + // ARN, signing job ARN, and certificate hashes) supplied as input to the API. RevokedEntities []*string `locationName:"revokedEntities" type:"list"` } @@ -3239,16 +3253,16 @@ return s } -// The hash algorithms that are available to a code signing job. +// The hash algorithms that are available to a code-signing job. type HashAlgorithmOptions struct { _ struct{} `type:"structure"` - // The set of accepted hash algorithms allowed in a code signing job. + // The set of accepted hash algorithms allowed in a code-signing job. // // AllowedValues is a required field AllowedValues []*string `locationName:"allowedValues" type:"list" required:"true" enum:"HashAlgorithm"` - // The default hash algorithm that is used in a code signing job. + // The default hash algorithm that is used in a code-signing job. // // DefaultValue is a required field DefaultValue *string `locationName:"defaultValue" type:"string" required:"true" enum:"HashAlgorithm"` @@ -4657,7 +4671,7 @@ return s.String() } -// The name and prefix of the S3 bucket where code signing saves your signed +// The name and prefix of the Amazon S3 bucket where AWS Signer saves your signed // objects. type S3Destination struct { _ struct{} `type:"structure"` @@ -4665,8 +4679,8 @@ // Name of the S3 bucket. BucketName *string `locationName:"bucketName" type:"string"` - // An Amazon S3 prefix that you can use to limit responses to those that begin - // with the specified prefix. + // An S3 prefix that you can use to limit responses to those that begin with + // the specified prefix. Prefix *string `locationName:"prefix" type:"string"` } @@ -4700,7 +4714,7 @@ return s } -// The S3 bucket name and key where code signing saved your signed code image. +// The Amazon S3 bucket name and key where Signer saved your signed code image. type S3SignedObject struct { _ struct{} `type:"structure"` @@ -4741,7 +4755,7 @@ return s } -// Information about the S3 bucket where you saved your unsigned code. +// Information about the Amazon S3 bucket where you saved your unsigned code. type S3Source struct { _ struct{} `type:"structure"` @@ -4891,7 +4905,7 @@ // Payload is a required field Payload []byte `locationName:"payload" min:"1" type:"blob" required:"true"` - // Payload content type + // Payload content type. The single valid type is application/vnd.cncf.notary.payload.v1+json. // // PayloadFormat is a required field PayloadFormat *string `locationName:"payloadFormat" type:"string" required:"true"` @@ -4984,9 +4998,7 @@ // The AWS account ID of the job owner. JobOwner *string `locationName:"jobOwner" min:"12" type:"string"` - // Information including the signing profile ARN and the signing job ID. Clients - // use metadata to signature records, for example, as annotations added to the - // signature manifest inside an OCI registry. + // Information including the signing profile ARN and the signing job ID. Metadata map[string]*string `locationName:"metadata" type:"map"` // A cryptographic signature. @@ -5110,16 +5122,16 @@ return s } -// The configuration of a code signing operation. +// The configuration of a signing operation. type SigningConfiguration struct { _ struct{} `type:"structure"` - // The encryption algorithm options that are available for a code signing job. + // The encryption algorithm options that are available for a code-signing job. // // EncryptionAlgorithmOptions is a required field EncryptionAlgorithmOptions *EncryptionAlgorithmOptions `locationName:"encryptionAlgorithmOptions" type:"structure" required:"true"` - // The hash algorithm options that are available for a code signing job. + // The hash algorithm options that are available for a code-signing job. // // HashAlgorithmOptions is a required field HashAlgorithmOptions *HashAlgorithmOptions `locationName:"hashAlgorithmOptions" type:"structure" required:"true"` @@ -5161,11 +5173,11 @@ _ struct{} `type:"structure"` // A specified override of the default encryption algorithm that is used in - // a code signing job. + // a code-signing job. EncryptionAlgorithm *string `locationName:"encryptionAlgorithm" type:"string" enum:"EncryptionAlgorithm"` - // A specified override of the default hash algorithm that is used in a code - // signing job. + // A specified override of the default hash algorithm that is used in a code-signing + // job. HashAlgorithm *string `locationName:"hashAlgorithm" type:"string" enum:"HashAlgorithm"` } @@ -5199,16 +5211,16 @@ return s } -// The image format of a code signing platform or profile. +// The image format of a AWS Signer platform or profile. type SigningImageFormat struct { _ struct{} `type:"structure"` - // The default format of a code signing image. + // The default format of a signing image. // // DefaultFormat is a required field DefaultFormat *string `locationName:"defaultFormat" type:"string" required:"true" enum:"ImageFormat"` - // The supported formats of a code signing image. + // The supported formats of a signing image. // // SupportedFormats is a required field SupportedFormats []*string `locationName:"supportedFormats" type:"list" required:"true" enum:"ImageFormat"` @@ -5494,36 +5506,36 @@ } // Contains information about the signing configurations and parameters that -// are used to perform a code signing job. +// are used to perform a code-signing job. type SigningPlatform struct { _ struct{} `type:"structure"` - // The category of a code signing platform. + // The category of a signing platform. Category *string `locationName:"category" type:"string" enum:"Category"` - // The display name of a code signing platform. + // The display name of a signing platform. DisplayName *string `locationName:"displayName" type:"string"` - // The maximum size (in MB) of code that can be signed by a code signing platform. + // The maximum size (in MB) of code that can be signed by a signing platform. MaxSizeInMB *int64 `locationName:"maxSizeInMB" type:"integer"` - // Any partner entities linked to a code signing platform. + // Any partner entities linked to a signing platform. Partner *string `locationName:"partner" type:"string"` - // The ID of a code signing platform. + // The ID of a signing platform. PlatformId *string `locationName:"platformId" type:"string"` // Indicates whether revocation is supported for the platform. RevocationSupported *bool `locationName:"revocationSupported" type:"boolean"` - // The configuration of a code signing platform. This includes the designated - // hash algorithm and encryption algorithm of a signing platform. + // The configuration of a signing platform. This includes the designated hash + // algorithm and encryption algorithm of a signing platform. SigningConfiguration *SigningConfiguration `locationName:"signingConfiguration" type:"structure"` - // The image format of a code signing platform or profile. + // The image format of a AWS Signer platform or profile. SigningImageFormat *SigningImageFormat `locationName:"signingImageFormat" type:"structure"` - // The types of targets that can be signed by a code signing platform. + // The types of targets that can be signed by a signing platform. Target *string `locationName:"target" type:"string"` } @@ -5599,7 +5611,7 @@ return s } -// Any overrides that are applied to the signing configuration of a code signing +// Any overrides that are applied to the signing configuration of a signing // platform. type SigningPlatformOverrides struct { _ struct{} `type:"structure"` @@ -5646,7 +5658,7 @@ return s } -// Contains information about the ACM certificates and code signing configuration +// Contains information about the ACM certificates and signing configuration // parameters that can be used by a given code signing user. type SigningProfile struct { _ struct{} `type:"structure"` @@ -5675,10 +5687,10 @@ // The ACM certificate that is available for use by a signing profile. SigningMaterial *SigningMaterial `locationName:"signingMaterial" type:"structure"` - // The parameters that are available for use by a code signing user. + // The parameters that are available for use by a Signer user. SigningParameters map[string]*string `locationName:"signingParameters" type:"map"` - // The status of a code signing profile. + // The status of a signing profile. Status *string `locationName:"status" type:"string" enum:"SigningProfileStatus"` // A list of tags associated with the signing profile. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/signer/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/signer/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/signer/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/signer/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,10 +3,10 @@ // Package signer provides the client and types for making API // requests to AWS Signer. // -// AWS Signer is a fully managed code signing service to help you ensure the +// AWS Signer is a fully managed code-signing service to help you ensure the // trust and integrity of your code. // -// AWS Signer supports the following applications: +// Signer supports the following applications: // // With code signing for AWS Lambda, you can sign AWS Lambda (http://docs.aws.amazon.com/lambda/latest/dg/) // deployment packages. Integrated support is provided for Amazon S3 (http://docs.aws.amazon.com/AmazonS3/latest/gsg/), @@ -19,14 +19,17 @@ // by AWS. IoT code signing is available for Amazon FreeRTOS (http://docs.aws.amazon.com/freertos/latest/userguide/) // and AWS IoT Device Management (http://docs.aws.amazon.com/iot/latest/developerguide/), // and is integrated with AWS Certificate Manager (ACM) (http://docs.aws.amazon.com/acm/latest/userguide/). -// In order to sign code, you import a third-party code signing certificate +// In order to sign code, you import a third-party code-signing certificate // using ACM, and use that to sign updates in Amazon FreeRTOS and AWS IoT Device // Management. // -// With code signing for containers …(TBD) +// With Signer and the Notation CLI from the Notary Project (https://notaryproject.dev/), +// you can sign container images stored in a container registry such as Amazon +// Elastic Container Registry (ECR). The signatures are stored in the registry +// alongside the images, where they are available for verifying image authenticity +// and integrity. // -// For more information about AWS Signer, see the AWS Signer Developer Guide -// (https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html). +// For more information about Signer, see the AWS Signer Developer Guide (https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html). // // See https://docs.aws.amazon.com/goto/WebAPI/signer-2017-08-25 for more information on this service. // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sns/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sns/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sns/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sns/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -279,6 +279,10 @@ // exceeds the limit. To add more filter polices, submit an Amazon SNS Limit // Increase case in the Amazon Web Services Support Center. // +// - ErrCodeReplayLimitExceededException "ReplayLimitExceeded" +// Indicates that the request parameter has exceeded the maximum number of concurrent +// message replays. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ConfirmSubscription func (c *SNS) ConfirmSubscription(input *ConfirmSubscriptionInput) (*ConfirmSubscriptionOutput, error) { req, out := c.ConfirmSubscriptionRequest(input) @@ -1085,6 +1089,9 @@ // - ErrCodeInvalidParameterException "InvalidParameter" // Indicates that a request parameter does not comply with the associated constraints. // +// - ErrCodeInvalidStateException "InvalidState" +// Indicates that the specified state is not a valid state for an event source. +// // - ErrCodeInternalErrorException "InternalError" // Indicates an internal service error. // @@ -3272,13 +3279,13 @@ // Indicates that the user has been denied access to the requested resource. // // - ErrCodeKMSDisabledException "KMSDisabled" -// The request was rejected because the specified customer master key (CMK) +// The request was rejected because the specified Amazon Web Services KMS key // isn't enabled. // // - ErrCodeKMSInvalidStateException "KMSInvalidState" // The request was rejected because the state of the specified resource isn't -// valid for this request. For more information, see How Key State Affects Use -// of a Customer Master Key (https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) +// valid for this request. For more information, see Key states of Amazon Web +// Services KMS keys (https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the Key Management Service Developer Guide. // // - ErrCodeKMSNotFoundException "KMSNotFound" @@ -3444,13 +3451,13 @@ // The batch request contains more entries than permissible. // // - ErrCodeKMSDisabledException "KMSDisabled" -// The request was rejected because the specified customer master key (CMK) +// The request was rejected because the specified Amazon Web Services KMS key // isn't enabled. // // - ErrCodeKMSInvalidStateException "KMSInvalidState" // The request was rejected because the state of the specified resource isn't -// valid for this request. For more information, see How Key State Affects Use -// of a Customer Master Key (https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) +// valid for this request. For more information, see Key states of Amazon Web +// Services KMS keys (https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the Key Management Service Developer Guide. // // - ErrCodeKMSNotFoundException "KMSNotFound" @@ -4032,6 +4039,10 @@ // exceeds the limit. To add more filter polices, submit an Amazon SNS Limit // Increase case in the Amazon Web Services Support Center. // +// - ErrCodeReplayLimitExceededException "ReplayLimitExceeded" +// Indicates that the request parameter has exceeded the maximum number of concurrent +// message replays. +// // - ErrCodeInternalErrorException "InternalError" // Indicates an internal service error. // @@ -4209,7 +4220,7 @@ // to confirm the subscription. // // You call the ConfirmSubscription action with the token from the subscription -// response. Confirmation tokens are valid for three days. +// response. Confirmation tokens are valid for two days. // // This action is throttled at 100 transactions per second (TPS). // @@ -4230,6 +4241,10 @@ // exceeds the limit. To add more filter polices, submit an Amazon SNS Limit // Increase case in the Amazon Web Services Support Center. // +// - ErrCodeReplayLimitExceededException "ReplayLimitExceeded" +// Indicates that the request parameter has exceeded the maximum number of concurrent +// message replays. +// // - ErrCodeInvalidParameterException "InvalidParameter" // Indicates that a request parameter does not comply with the associated constraints. // @@ -5423,7 +5438,13 @@ // // The following attributes apply only to FIFO topics (https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html): // - // * FifoTopic – When this is set to true, a FIFO topic is created. + // * ArchivePolicy – Adds or updates an inline policy document to archive + // messages stored in the specified Amazon SNS topic. + // + // * BeginningArchiveTime – The earliest starting point at which a message + // in the topic’s archive can be replayed from. This point in time is based + // on the configured message retention period set by the topic’s message + // archiving policy. // // * ContentBasedDeduplication – Enables content-based deduplication for // FIFO topics. By default, ContentBasedDeduplication is set to false. If @@ -9154,6 +9175,19 @@ // more information, see Fanout to Kinesis Data Firehose delivery streams // (https://docs.aws.amazon.com/sns/latest/dg/sns-firehose-as-subscriber.html) // in the Amazon SNS Developer Guide. + // + // The following attributes apply only to FIFO topics (https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html): + // + // * ReplayPolicy – Adds or updates an inline policy document for a subscription + // to replay messages stored in the specified Amazon SNS topic. + // + // * ReplayStatus – Retrieves the status of the subscription message replay, + // which can be one of the following: Completed – The replay has successfully + // redelivered all messages, and is now delivering newly published messages. + // If an ending point was specified in the ReplayPolicy then the subscription + // will no longer receive newly published messages. In progress – The replay + // is currently replaying the selected messages. Failed – The replay was + // unable to complete. Pending – The default state while the replay initiates. Attributes map[string]*string `type:"map"` // The endpoint that you want to receive notifications. Endpoints vary by protocol: diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sns/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/sns/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sns/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sns/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -80,6 +80,12 @@ // sign your request using Signature Version 4. ErrCodeInvalidSecurityException = "InvalidSecurity" + // ErrCodeInvalidStateException for service response error code + // "InvalidState". + // + // Indicates that the specified state is not a valid state for an event source. + ErrCodeInvalidStateException = "InvalidState" + // ErrCodeKMSAccessDeniedException for service response error code // "KMSAccessDenied". // @@ -90,7 +96,7 @@ // ErrCodeKMSDisabledException for service response error code // "KMSDisabled". // - // The request was rejected because the specified customer master key (CMK) + // The request was rejected because the specified Amazon Web Services KMS key // isn't enabled. ErrCodeKMSDisabledException = "KMSDisabled" @@ -98,8 +104,8 @@ // "KMSInvalidState". // // The request was rejected because the state of the specified resource isn't - // valid for this request. For more information, see How Key State Affects Use - // of a Customer Master Key (https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) + // valid for this request. For more information, see Key states of Amazon Web + // Services KMS keys (https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the Key Management Service Developer Guide. ErrCodeKMSInvalidStateException = "KMSInvalidState" @@ -144,6 +150,13 @@ // Exception error indicating platform application disabled. ErrCodePlatformApplicationDisabledException = "PlatformApplicationDisabled" + // ErrCodeReplayLimitExceededException for service response error code + // "ReplayLimitExceeded". + // + // Indicates that the request parameter has exceeded the maximum number of concurrent + // message replays. + ErrCodeReplayLimitExceededException = "ReplayLimitExceeded" + // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFound". // diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sqs/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sqs/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sqs/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sqs/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -9,7 +9,7 @@ "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/query" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddPermission = "AddPermission" @@ -50,7 +50,7 @@ output = &AddPermissionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -89,13 +89,41 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation AddPermission for usage and error information. // -// Returned Error Codes: -// - ErrCodeOverLimit "OverLimit" +// Returned Error Types: +// +// - OverLimit // The specified action violates a limit. For example, ReceiveMessage returns // this error if the maximum number of in flight messages is reached and AddPermission // returns this error if the maximum number of permissions for the queue is // reached. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/AddPermission func (c *SQS) AddPermission(input *AddPermissionInput) (*AddPermissionOutput, error) { req, out := c.AddPermissionRequest(input) @@ -185,12 +213,33 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation CancelMessageMoveTask for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeResourceNotFoundException "ResourceNotFoundException" +// - ResourceNotFoundException // One or more specified resources don't exist. // -// - ErrCodeUnsupportedOperation "AWS.SimpleQueueService.UnsupportedOperation" +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation // Error code 400. Unsupported operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTask @@ -253,7 +302,7 @@ output = &ChangeMessageVisibilityOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -321,14 +370,41 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ChangeMessageVisibility for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeMessageNotInflight "AWS.SimpleQueueService.MessageNotInflight" +// - MessageNotInflight // The specified message isn't in flight. // -// - ErrCodeReceiptHandleIsInvalid "ReceiptHandleIsInvalid" +// - ReceiptHandleIsInvalid // The specified receipt handle isn't valid. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ChangeMessageVisibility func (c *SQS) ChangeMessageVisibility(input *ChangeMessageVisibilityInput) (*ChangeMessageVisibilityOutput, error) { req, out := c.ChangeMessageVisibilityRequest(input) @@ -410,20 +486,47 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ChangeMessageVisibilityBatch for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeTooManyEntriesInBatchRequest "AWS.SimpleQueueService.TooManyEntriesInBatchRequest" +// - TooManyEntriesInBatchRequest // The batch request contains more entries than permissible. // -// - ErrCodeEmptyBatchRequest "AWS.SimpleQueueService.EmptyBatchRequest" +// - EmptyBatchRequest // The batch request doesn't contain any entries. // -// - ErrCodeBatchEntryIdsNotDistinct "AWS.SimpleQueueService.BatchEntryIdsNotDistinct" +// - BatchEntryIdsNotDistinct // Two or more batch entries in the request have the same Id. // -// - ErrCodeInvalidBatchEntryId "AWS.SimpleQueueService.InvalidBatchEntryId" +// - InvalidBatchEntryId // The Id of a batch entry in a batch request doesn't abide by the specification. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ChangeMessageVisibilityBatch func (c *SQS) ChangeMessageVisibilityBatch(input *ChangeMessageVisibilityBatchInput) (*ChangeMessageVisibilityBatchOutput, error) { req, out := c.ChangeMessageVisibilityBatchRequest(input) @@ -534,17 +637,47 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation CreateQueue for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeQueueDeletedRecently "AWS.SimpleQueueService.QueueDeletedRecently" +// - QueueDeletedRecently // You must wait 60 seconds after deleting a queue before you can create another // queue with the same name. // -// - ErrCodeQueueNameExists "QueueAlreadyExists" +// - QueueNameExists // A queue with this name already exists. Amazon SQS returns this error only // if the request includes attributes whose values differ from those of the // existing queue. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidAttributeName +// The specified attribute doesn't exist. +// +// - InvalidAttributeValue +// A queue attribute value is invalid. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CreateQueue func (c *SQS) CreateQueue(input *CreateQueueInput) (*CreateQueueOutput, error) { req, out := c.CreateQueueRequest(input) @@ -605,7 +738,7 @@ output = &DeleteMessageOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -639,14 +772,41 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation DeleteMessage for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeInvalidIdFormat "InvalidIdFormat" +// - InvalidIdFormat // The specified receipt handle isn't valid for the current version. // -// - ErrCodeReceiptHandleIsInvalid "ReceiptHandleIsInvalid" +// - ReceiptHandleIsInvalid // The specified receipt handle isn't valid. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - InvalidAddress +// The accountId is invalid. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteMessage func (c *SQS) DeleteMessage(input *DeleteMessageInput) (*DeleteMessageOutput, error) { req, out := c.DeleteMessageRequest(input) @@ -727,20 +887,47 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation DeleteMessageBatch for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeTooManyEntriesInBatchRequest "AWS.SimpleQueueService.TooManyEntriesInBatchRequest" +// - TooManyEntriesInBatchRequest // The batch request contains more entries than permissible. // -// - ErrCodeEmptyBatchRequest "AWS.SimpleQueueService.EmptyBatchRequest" +// - EmptyBatchRequest // The batch request doesn't contain any entries. // -// - ErrCodeBatchEntryIdsNotDistinct "AWS.SimpleQueueService.BatchEntryIdsNotDistinct" +// - BatchEntryIdsNotDistinct // Two or more batch entries in the request have the same Id. // -// - ErrCodeInvalidBatchEntryId "AWS.SimpleQueueService.InvalidBatchEntryId" +// - InvalidBatchEntryId // The Id of a batch entry in a batch request doesn't abide by the specification. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteMessageBatch func (c *SQS) DeleteMessageBatch(input *DeleteMessageBatchInput) (*DeleteMessageBatchOutput, error) { req, out := c.DeleteMessageBatchRequest(input) @@ -801,7 +988,7 @@ output = &DeleteQueueOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -832,6 +1019,36 @@ // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation DeleteQueue for usage and error information. +// +// Returned Error Types: +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidAddress +// The accountId is invalid. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteQueue func (c *SQS) DeleteQueue(input *DeleteQueueInput) (*DeleteQueueOutput, error) { req, out := c.DeleteQueueRequest(input) @@ -909,10 +1126,38 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation GetQueueAttributes for usage and error information. // -// Returned Error Codes: -// - ErrCodeInvalidAttributeName "InvalidAttributeName" +// Returned Error Types: +// +// - InvalidAttributeName // The specified attribute doesn't exist. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - InvalidAddress +// The accountId is invalid. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueAttributes func (c *SQS) GetQueueAttributes(input *GetQueueAttributesInput) (*GetQueueAttributesOutput, error) { req, out := c.GetQueueAttributesRequest(input) @@ -994,10 +1239,35 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation GetQueueUrl for usage and error information. // -// Returned Error Codes: -// - ErrCodeQueueDoesNotExist "AWS.SimpleQueueService.NonExistentQueue" +// Returned Error Types: +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist // The specified queue doesn't exist. // +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrl func (c *SQS) GetQueueUrl(input *GetQueueUrlInput) (*GetQueueUrlOutput, error) { req, out := c.GetQueueUrlRequest(input) @@ -1091,10 +1361,35 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ListDeadLetterSourceQueues for usage and error information. // -// Returned Error Codes: -// - ErrCodeQueueDoesNotExist "AWS.SimpleQueueService.NonExistentQueue" +// Returned Error Types: +// +// - QueueDoesNotExist // The specified queue doesn't exist. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - InvalidAddress +// The accountId is invalid. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueues func (c *SQS) ListDeadLetterSourceQueues(input *ListDeadLetterSourceQueuesInput) (*ListDeadLetterSourceQueuesOutput, error) { req, out := c.ListDeadLetterSourceQueuesRequest(input) @@ -1233,12 +1528,33 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ListMessageMoveTasks for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeResourceNotFoundException "ResourceNotFoundException" +// - ResourceNotFoundException // One or more specified resources don't exist. // -// - ErrCodeUnsupportedOperation "AWS.SimpleQueueService.UnsupportedOperation" +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation // Error code 400. Unsupported operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasks @@ -1320,6 +1636,36 @@ // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ListQueueTags for usage and error information. +// +// Returned Error Types: +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueueTags func (c *SQS) ListQueueTags(input *ListQueueTagsInput) (*ListQueueTagsOutput, error) { req, out := c.ListQueueTagsRequest(input) @@ -1413,6 +1759,33 @@ // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ListQueues for usage and error information. +// +// Returned Error Types: +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - InvalidAddress +// The accountId is invalid. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueues func (c *SQS) ListQueues(input *ListQueuesInput) (*ListQueuesOutput, error) { req, out := c.ListQueuesRequest(input) @@ -1524,7 +1897,7 @@ output = &PurgeQueueOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -1552,16 +1925,40 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation PurgeQueue for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeQueueDoesNotExist "AWS.SimpleQueueService.NonExistentQueue" +// - QueueDoesNotExist // The specified queue doesn't exist. // -// - ErrCodePurgeQueueInProgress "AWS.SimpleQueueService.PurgeQueueInProgress" +// - PurgeQueueInProgress // Indicates that the specified queue previously received a PurgeQueue request // within the last 60 seconds (the time it can take to delete the messages in // the queue). // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/PurgeQueue func (c *SQS) PurgeQueue(input *PurgeQueueInput) (*PurgeQueueOutput, error) { req, out := c.PurgeQueueRequest(input) @@ -1682,13 +2079,70 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ReceiveMessage for usage and error information. // -// Returned Error Codes: -// - ErrCodeOverLimit "OverLimit" +// Returned Error Types: +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - OverLimit // The specified action violates a limit. For example, ReceiveMessage returns // this error if the maximum number of in flight messages is reached and AddPermission // returns this error if the maximum number of permissions for the queue is // reached. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - KmsDisabled +// The request was denied due to request throttling. +// +// - KmsInvalidState +// The request was rejected because the state of the specified resource is not +// valid for this request. +// +// - KmsNotFound +// The request was rejected because the specified entity or resource could not +// be found. +// +// - KmsOptInRequired +// The request was rejected because the specified key policy isn't syntactically +// or semantically correct. +// +// - KmsThrottled +// Amazon Web Services KMS throttles requests for the following conditions. +// +// - KmsAccessDenied +// The caller doesn't have the required KMS access. +// +// - KmsInvalidKeyUsage +// The request was rejected for one of the following reasons: +// +// - The KeyUsage value of the KMS key is incompatible with the API operation. +// +// - The encryption algorithm or signing algorithm specified for the operation +// is incompatible with the type of key material in the KMS key (KeySpec). +// +// - InvalidAddress +// The accountId is invalid. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiveMessage func (c *SQS) ReceiveMessage(input *ReceiveMessageInput) (*ReceiveMessageOutput, error) { req, out := c.ReceiveMessageRequest(input) @@ -1749,7 +2203,7 @@ output = &RemovePermissionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -1774,6 +2228,36 @@ // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation RemovePermission for usage and error information. +// +// Returned Error Types: +// +// - InvalidAddress +// The accountId is invalid. +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/RemovePermission func (c *SQS) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) { req, out := c.RemovePermissionRequest(input) @@ -1856,14 +2340,67 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation SendMessage for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeInvalidMessageContents "InvalidMessageContents" +// - InvalidMessageContents // The message contains characters outside the allowed set. // -// - ErrCodeUnsupportedOperation "AWS.SimpleQueueService.UnsupportedOperation" +// - UnsupportedOperation // Error code 400. Unsupported operation. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - KmsDisabled +// The request was denied due to request throttling. +// +// - KmsInvalidState +// The request was rejected because the state of the specified resource is not +// valid for this request. +// +// - KmsNotFound +// The request was rejected because the specified entity or resource could not +// be found. +// +// - KmsOptInRequired +// The request was rejected because the specified key policy isn't syntactically +// or semantically correct. +// +// - KmsThrottled +// Amazon Web Services KMS throttles requests for the following conditions. +// +// - KmsAccessDenied +// The caller doesn't have the required KMS access. +// +// - KmsInvalidKeyUsage +// The request was rejected for one of the following reasons: +// +// - The KeyUsage value of the KMS key is incompatible with the API operation. +// +// - The encryption algorithm or signing algorithm specified for the operation +// is incompatible with the type of key material in the KMS key (KeySpec). +// +// - InvalidAddress +// The accountId is invalid. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SendMessage func (c *SQS) SendMessage(input *SendMessageInput) (*SendMessageOutput, error) { req, out := c.SendMessageRequest(input) @@ -1962,26 +2499,79 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation SendMessageBatch for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeTooManyEntriesInBatchRequest "AWS.SimpleQueueService.TooManyEntriesInBatchRequest" +// - TooManyEntriesInBatchRequest // The batch request contains more entries than permissible. // -// - ErrCodeEmptyBatchRequest "AWS.SimpleQueueService.EmptyBatchRequest" +// - EmptyBatchRequest // The batch request doesn't contain any entries. // -// - ErrCodeBatchEntryIdsNotDistinct "AWS.SimpleQueueService.BatchEntryIdsNotDistinct" +// - BatchEntryIdsNotDistinct // Two or more batch entries in the request have the same Id. // -// - ErrCodeBatchRequestTooLong "AWS.SimpleQueueService.BatchRequestTooLong" +// - BatchRequestTooLong // The length of all the messages put together is more than the limit. // -// - ErrCodeInvalidBatchEntryId "AWS.SimpleQueueService.InvalidBatchEntryId" +// - InvalidBatchEntryId // The Id of a batch entry in a batch request doesn't abide by the specification. // -// - ErrCodeUnsupportedOperation "AWS.SimpleQueueService.UnsupportedOperation" +// - UnsupportedOperation // Error code 400. Unsupported operation. // +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - KmsDisabled +// The request was denied due to request throttling. +// +// - KmsInvalidState +// The request was rejected because the state of the specified resource is not +// valid for this request. +// +// - KmsNotFound +// The request was rejected because the specified entity or resource could not +// be found. +// +// - KmsOptInRequired +// The request was rejected because the specified key policy isn't syntactically +// or semantically correct. +// +// - KmsThrottled +// Amazon Web Services KMS throttles requests for the following conditions. +// +// - KmsAccessDenied +// The caller doesn't have the required KMS access. +// +// - KmsInvalidKeyUsage +// The request was rejected for one of the following reasons: +// +// - The KeyUsage value of the KMS key is incompatible with the API operation. +// +// - The encryption algorithm or signing algorithm specified for the operation +// is incompatible with the type of key material in the KMS key (KeySpec). +// +// - InvalidAddress +// The accountId is invalid. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SendMessageBatch func (c *SQS) SendMessageBatch(input *SendMessageBatchInput) (*SendMessageBatchOutput, error) { req, out := c.SendMessageBatchRequest(input) @@ -2042,7 +2632,7 @@ output = &SetQueueAttributesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -2074,10 +2664,47 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation SetQueueAttributes for usage and error information. // -// Returned Error Codes: -// - ErrCodeInvalidAttributeName "InvalidAttributeName" +// Returned Error Types: +// +// - InvalidAttributeName // The specified attribute doesn't exist. // +// - InvalidAttributeValue +// A queue attribute value is invalid. +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// +// - OverLimit +// The specified action violates a limit. For example, ReceiveMessage returns +// this error if the maximum number of in flight messages is reached and AddPermission +// returns this error if the maximum number of permissions for the queue is +// reached. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SetQueueAttributes func (c *SQS) SetQueueAttributes(input *SetQueueAttributesInput) (*SetQueueAttributesOutput, error) { req, out := c.SetQueueAttributesRequest(input) @@ -2169,12 +2796,33 @@ // See the AWS API reference guide for Amazon Simple Queue Service's // API operation StartMessageMoveTask for usage and error information. // -// Returned Error Codes: +// Returned Error Types: // -// - ErrCodeResourceNotFoundException "ResourceNotFoundException" +// - ResourceNotFoundException // One or more specified resources don't exist. // -// - ErrCodeUnsupportedOperation "AWS.SimpleQueueService.UnsupportedOperation" +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - InvalidAddress +// The accountId is invalid. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation // Error code 400. Unsupported operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTask @@ -2237,7 +2885,7 @@ output = &TagQueueOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -2272,6 +2920,36 @@ // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation TagQueue for usage and error information. +// +// Returned Error Types: +// +// - InvalidAddress +// The accountId is invalid. +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/TagQueue func (c *SQS) TagQueue(input *TagQueueInput) (*TagQueueOutput, error) { req, out := c.TagQueueRequest(input) @@ -2332,7 +3010,7 @@ output = &UntagQueueOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -2352,6 +3030,36 @@ // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation UntagQueue for usage and error information. +// +// Returned Error Types: +// +// - InvalidAddress +// The accountId is invalid. +// +// - RequestThrottled +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +// +// - QueueDoesNotExist +// The specified queue doesn't exist. +// +// - InvalidSecurity +// When the request to a queue is not HTTPS and SigV4. +// +// - UnsupportedOperation +// Error code 400. Unsupported operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/UntagQueue func (c *SQS) UntagQueue(input *UntagQueueInput) (*UntagQueueOutput, error) { req, out := c.UntagQueueRequest(input) @@ -2384,7 +3092,7 @@ // in the Amazon SQS Developer Guide. // // AWSAccountIds is a required field - AWSAccountIds []*string `locationNameList:"AWSAccountId" type:"list" flattened:"true" required:"true"` + AWSAccountIds []*string `type:"list" flattened:"true" required:"true"` // The action the client wants to allow for the specified principal. Valid values: // the name of any action or *. @@ -2398,7 +3106,7 @@ // SendMessageBatch, DeleteMessageBatch, and ChangeMessageVisibilityBatch. // // Actions is a required field - Actions []*string `locationNameList:"ActionName" type:"list" flattened:"true" required:"true"` + Actions []*string `type:"list" flattened:"true" required:"true"` // The unique identification of the permission you're setting (for example, // AliceSendMessage). Maximum 80 characters. Allowed characters include alphanumeric @@ -2501,6 +3209,154 @@ return s.String() } +// Two or more batch entries in the request have the same Id. +type BatchEntryIdsNotDistinct struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 BatchEntryIdsNotDistinct) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchEntryIdsNotDistinct) GoString() string { + return s.String() +} + +func newErrorBatchEntryIdsNotDistinct(v protocol.ResponseMetadata) error { + return &BatchEntryIdsNotDistinct{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorBatchEntryIdsNotDistinct(v protocol.ResponseMetadata, code string) error { + return &BatchEntryIdsNotDistinct{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *BatchEntryIdsNotDistinct) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "BatchEntryIdsNotDistinct" +} + +// Message returns the exception's message. +func (s *BatchEntryIdsNotDistinct) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *BatchEntryIdsNotDistinct) OrigErr() error { + return nil +} + +func (s *BatchEntryIdsNotDistinct) 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 *BatchEntryIdsNotDistinct) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *BatchEntryIdsNotDistinct) RequestID() string { + return s.RespMetadata.RequestID +} + +// The length of all the messages put together is more than the limit. +type BatchRequestTooLong struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 BatchRequestTooLong) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchRequestTooLong) GoString() string { + return s.String() +} + +func newErrorBatchRequestTooLong(v protocol.ResponseMetadata) error { + return &BatchRequestTooLong{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorBatchRequestTooLong(v protocol.ResponseMetadata, code string) error { + return &BatchRequestTooLong{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *BatchRequestTooLong) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "BatchRequestTooLong" +} + +// Message returns the exception's message. +func (s *BatchRequestTooLong) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *BatchRequestTooLong) OrigErr() error { + return nil +} + +func (s *BatchRequestTooLong) 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 *BatchRequestTooLong) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *BatchRequestTooLong) RequestID() string { + return s.RespMetadata.RequestID +} + // Gives a detailed description of the result of an action on each entry in // the request. type BatchResultErrorEntry struct { @@ -2651,7 +3507,7 @@ // must be changed. // // Entries is a required field - Entries []*ChangeMessageVisibilityBatchRequestEntry `locationNameList:"ChangeMessageVisibilityBatchRequestEntry" type:"list" flattened:"true" required:"true"` + Entries []*ChangeMessageVisibilityBatchRequestEntry `type:"list" flattened:"true" required:"true"` // The URL of the Amazon SQS queue whose messages' visibility is changed. // @@ -2726,12 +3582,12 @@ // A list of BatchResultErrorEntry items. // // Failed is a required field - Failed []*BatchResultErrorEntry `locationNameList:"BatchResultErrorEntry" type:"list" flattened:"true" required:"true"` + Failed []*BatchResultErrorEntry `type:"list" flattened:"true" required:"true"` // A list of ChangeMessageVisibilityBatchResultEntry items. // // Successful is a required field - Successful []*ChangeMessageVisibilityBatchResultEntry `locationNameList:"ChangeMessageVisibilityBatchResultEntry" type:"list" flattened:"true" required:"true"` + Successful []*ChangeMessageVisibilityBatchResultEntry `type:"list" flattened:"true" required:"true"` } // String returns the string representation. @@ -3123,7 +3979,7 @@ // // For information on throughput quotas, see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) // in the Amazon SQS Developer Guide. - Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + Attributes map[string]*string `type:"map" flattened:"true"` // The name of the new queue. The following limits apply to this name: // @@ -3164,7 +4020,7 @@ // Cross-account permissions don't apply to this action. For more information, // see Grant cross-account permissions to a role and a username (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name) // in the Amazon SQS Developer Guide. - Tags map[string]*string `locationName:"Tag" locationNameKey:"Key" locationNameValue:"Value" type:"map" flattened:"true"` + Tags map[string]*string `locationName:"tags" type:"map" flattened:"true"` } // String returns the string representation. @@ -3254,7 +4110,7 @@ // Lists the receipt handles for the messages to be deleted. // // Entries is a required field - Entries []*DeleteMessageBatchRequestEntry `locationNameList:"DeleteMessageBatchRequestEntry" type:"list" flattened:"true" required:"true"` + Entries []*DeleteMessageBatchRequestEntry `type:"list" flattened:"true" required:"true"` // The URL of the Amazon SQS queue from which messages are deleted. // @@ -3329,12 +4185,12 @@ // A list of BatchResultErrorEntry items. // // Failed is a required field - Failed []*BatchResultErrorEntry `locationNameList:"BatchResultErrorEntry" type:"list" flattened:"true" required:"true"` + Failed []*BatchResultErrorEntry `type:"list" flattened:"true" required:"true"` // A list of DeleteMessageBatchResultEntry items. // // Successful is a required field - Successful []*DeleteMessageBatchResultEntry `locationNameList:"DeleteMessageBatchResultEntry" type:"list" flattened:"true" required:"true"` + Successful []*DeleteMessageBatchResultEntry `type:"list" flattened:"true" required:"true"` } // String returns the string representation. @@ -3622,6 +4478,80 @@ return s.String() } +// The batch request doesn't contain any entries. +type EmptyBatchRequest struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 EmptyBatchRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EmptyBatchRequest) GoString() string { + return s.String() +} + +func newErrorEmptyBatchRequest(v protocol.ResponseMetadata) error { + return &EmptyBatchRequest{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorEmptyBatchRequest(v protocol.ResponseMetadata, code string) error { + return &EmptyBatchRequest{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *EmptyBatchRequest) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "EmptyBatchRequest" +} + +// Message returns the exception's message. +func (s *EmptyBatchRequest) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *EmptyBatchRequest) OrigErr() error { + return nil +} + +func (s *EmptyBatchRequest) 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 *EmptyBatchRequest) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *EmptyBatchRequest) RequestID() string { + return s.RespMetadata.RequestID +} + type GetQueueAttributesInput struct { _ struct{} `type:"structure"` @@ -3772,7 +4702,7 @@ // // For information on throughput quotas, see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) // in the Amazon SQS Developer Guide. - AttributeNames []*string `locationNameList:"AttributeName" type:"list" flattened:"true" enum:"QueueAttributeName"` + AttributeNames []*string `type:"list" flattened:"true" enum:"QueueAttributeName"` // The URL of the Amazon SQS queue whose attribute information is retrieved. // @@ -3830,7 +4760,7 @@ _ struct{} `type:"structure"` // A map of attributes to their respective values. - Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + Attributes map[string]*string `type:"map" flattened:"true"` } // String returns the string representation. @@ -3948,6 +4878,1052 @@ return s } +// The accountId is invalid. +type InvalidAddress struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidAddress) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidAddress) GoString() string { + return s.String() +} + +func newErrorInvalidAddress(v protocol.ResponseMetadata) error { + return &InvalidAddress{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidAddress(v protocol.ResponseMetadata, code string) error { + return &InvalidAddress{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidAddress) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidAddress" +} + +// Message returns the exception's message. +func (s *InvalidAddress) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidAddress) OrigErr() error { + return nil +} + +func (s *InvalidAddress) 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 *InvalidAddress) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidAddress) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified attribute doesn't exist. +type InvalidAttributeName struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidAttributeName) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidAttributeName) GoString() string { + return s.String() +} + +func newErrorInvalidAttributeName(v protocol.ResponseMetadata) error { + return &InvalidAttributeName{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidAttributeName(v protocol.ResponseMetadata, code string) error { + return &InvalidAttributeName{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidAttributeName) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidAttributeName" +} + +// Message returns the exception's message. +func (s *InvalidAttributeName) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidAttributeName) OrigErr() error { + return nil +} + +func (s *InvalidAttributeName) 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 *InvalidAttributeName) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidAttributeName) RequestID() string { + return s.RespMetadata.RequestID +} + +// A queue attribute value is invalid. +type InvalidAttributeValue struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidAttributeValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidAttributeValue) GoString() string { + return s.String() +} + +func newErrorInvalidAttributeValue(v protocol.ResponseMetadata) error { + return &InvalidAttributeValue{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidAttributeValue(v protocol.ResponseMetadata, code string) error { + return &InvalidAttributeValue{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidAttributeValue) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidAttributeValue" +} + +// Message returns the exception's message. +func (s *InvalidAttributeValue) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidAttributeValue) OrigErr() error { + return nil +} + +func (s *InvalidAttributeValue) 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 *InvalidAttributeValue) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidAttributeValue) RequestID() string { + return s.RespMetadata.RequestID +} + +// The Id of a batch entry in a batch request doesn't abide by the specification. +type InvalidBatchEntryId struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidBatchEntryId) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidBatchEntryId) GoString() string { + return s.String() +} + +func newErrorInvalidBatchEntryId(v protocol.ResponseMetadata) error { + return &InvalidBatchEntryId{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidBatchEntryId(v protocol.ResponseMetadata, code string) error { + return &InvalidBatchEntryId{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidBatchEntryId) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidBatchEntryId" +} + +// Message returns the exception's message. +func (s *InvalidBatchEntryId) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidBatchEntryId) OrigErr() error { + return nil +} + +func (s *InvalidBatchEntryId) 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 *InvalidBatchEntryId) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidBatchEntryId) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified receipt handle isn't valid for the current version. +// +// Deprecated: exception has been included in ReceiptHandleIsInvalid +type InvalidIdFormat struct { + _ struct{} `deprecated:"true" type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidIdFormat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidIdFormat) GoString() string { + return s.String() +} + +func newErrorInvalidIdFormat(v protocol.ResponseMetadata) error { + return &InvalidIdFormat{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidIdFormat(v protocol.ResponseMetadata, code string) error { + return &InvalidIdFormat{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidIdFormat) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidIdFormat" +} + +// Message returns the exception's message. +func (s *InvalidIdFormat) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidIdFormat) OrigErr() error { + return nil +} + +func (s *InvalidIdFormat) 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 *InvalidIdFormat) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidIdFormat) RequestID() string { + return s.RespMetadata.RequestID +} + +// The message contains characters outside the allowed set. +type InvalidMessageContents struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidMessageContents) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidMessageContents) GoString() string { + return s.String() +} + +func newErrorInvalidMessageContents(v protocol.ResponseMetadata) error { + return &InvalidMessageContents{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidMessageContents(v protocol.ResponseMetadata, code string) error { + return &InvalidMessageContents{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidMessageContents) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidMessageContents" +} + +// Message returns the exception's message. +func (s *InvalidMessageContents) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidMessageContents) OrigErr() error { + return nil +} + +func (s *InvalidMessageContents) 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 *InvalidMessageContents) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidMessageContents) RequestID() string { + return s.RespMetadata.RequestID +} + +// When the request to a queue is not HTTPS and SigV4. +type InvalidSecurity struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 InvalidSecurity) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSecurity) GoString() string { + return s.String() +} + +func newErrorInvalidSecurity(v protocol.ResponseMetadata) error { + return &InvalidSecurity{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorInvalidSecurity(v protocol.ResponseMetadata, code string) error { + return &InvalidSecurity{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *InvalidSecurity) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "InvalidSecurity" +} + +// Message returns the exception's message. +func (s *InvalidSecurity) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidSecurity) OrigErr() error { + return nil +} + +func (s *InvalidSecurity) 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 *InvalidSecurity) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidSecurity) RequestID() string { + return s.RespMetadata.RequestID +} + +// The caller doesn't have the required KMS access. +type KmsAccessDenied struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsAccessDenied) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsAccessDenied) GoString() string { + return s.String() +} + +func newErrorKmsAccessDenied(v protocol.ResponseMetadata) error { + return &KmsAccessDenied{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsAccessDenied(v protocol.ResponseMetadata, code string) error { + return &KmsAccessDenied{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsAccessDenied) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsAccessDenied" +} + +// Message returns the exception's message. +func (s *KmsAccessDenied) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsAccessDenied) OrigErr() error { + return nil +} + +func (s *KmsAccessDenied) 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 *KmsAccessDenied) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsAccessDenied) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request was denied due to request throttling. +type KmsDisabled struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsDisabled) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsDisabled) GoString() string { + return s.String() +} + +func newErrorKmsDisabled(v protocol.ResponseMetadata) error { + return &KmsDisabled{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsDisabled(v protocol.ResponseMetadata, code string) error { + return &KmsDisabled{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsDisabled) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsDisabled" +} + +// Message returns the exception's message. +func (s *KmsDisabled) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsDisabled) OrigErr() error { + return nil +} + +func (s *KmsDisabled) 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 *KmsDisabled) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsDisabled) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request was rejected for one of the following reasons: +// +// - The KeyUsage value of the KMS key is incompatible with the API operation. +// +// - The encryption algorithm or signing algorithm specified for the operation +// is incompatible with the type of key material in the KMS key (KeySpec). +type KmsInvalidKeyUsage struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsInvalidKeyUsage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsInvalidKeyUsage) GoString() string { + return s.String() +} + +func newErrorKmsInvalidKeyUsage(v protocol.ResponseMetadata) error { + return &KmsInvalidKeyUsage{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsInvalidKeyUsage(v protocol.ResponseMetadata, code string) error { + return &KmsInvalidKeyUsage{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsInvalidKeyUsage) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsInvalidKeyUsage" +} + +// Message returns the exception's message. +func (s *KmsInvalidKeyUsage) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsInvalidKeyUsage) OrigErr() error { + return nil +} + +func (s *KmsInvalidKeyUsage) 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 *KmsInvalidKeyUsage) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsInvalidKeyUsage) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request was rejected because the state of the specified resource is not +// valid for this request. +type KmsInvalidState struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsInvalidState) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsInvalidState) GoString() string { + return s.String() +} + +func newErrorKmsInvalidState(v protocol.ResponseMetadata) error { + return &KmsInvalidState{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsInvalidState(v protocol.ResponseMetadata, code string) error { + return &KmsInvalidState{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsInvalidState) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsInvalidState" +} + +// Message returns the exception's message. +func (s *KmsInvalidState) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsInvalidState) OrigErr() error { + return nil +} + +func (s *KmsInvalidState) 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 *KmsInvalidState) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsInvalidState) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request was rejected because the specified entity or resource could not +// be found. +type KmsNotFound struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsNotFound) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsNotFound) GoString() string { + return s.String() +} + +func newErrorKmsNotFound(v protocol.ResponseMetadata) error { + return &KmsNotFound{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsNotFound(v protocol.ResponseMetadata, code string) error { + return &KmsNotFound{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsNotFound) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsNotFound" +} + +// Message returns the exception's message. +func (s *KmsNotFound) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsNotFound) OrigErr() error { + return nil +} + +func (s *KmsNotFound) 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 *KmsNotFound) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsNotFound) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request was rejected because the specified key policy isn't syntactically +// or semantically correct. +type KmsOptInRequired struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsOptInRequired) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsOptInRequired) GoString() string { + return s.String() +} + +func newErrorKmsOptInRequired(v protocol.ResponseMetadata) error { + return &KmsOptInRequired{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsOptInRequired(v protocol.ResponseMetadata, code string) error { + return &KmsOptInRequired{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsOptInRequired) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsOptInRequired" +} + +// Message returns the exception's message. +func (s *KmsOptInRequired) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsOptInRequired) OrigErr() error { + return nil +} + +func (s *KmsOptInRequired) 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 *KmsOptInRequired) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsOptInRequired) RequestID() string { + return s.RespMetadata.RequestID +} + +// Amazon Web Services KMS throttles requests for the following conditions. +type KmsThrottled struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 KmsThrottled) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KmsThrottled) GoString() string { + return s.String() +} + +func newErrorKmsThrottled(v protocol.ResponseMetadata) error { + return &KmsThrottled{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorKmsThrottled(v protocol.ResponseMetadata, code string) error { + return &KmsThrottled{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *KmsThrottled) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "KmsThrottled" +} + +// Message returns the exception's message. +func (s *KmsThrottled) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *KmsThrottled) OrigErr() error { + return nil +} + +func (s *KmsThrottled) 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 *KmsThrottled) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *KmsThrottled) RequestID() string { + return s.RespMetadata.RequestID +} + type ListDeadLetterSourceQueuesInput struct { _ struct{} `type:"structure"` @@ -4028,7 +6004,7 @@ // with a dead-letter queue. // // QueueUrls is a required field - QueueUrls []*string `locationName:"queueUrls" locationNameList:"QueueUrl" type:"list" flattened:"true" required:"true"` + QueueUrls []*string `locationName:"queueUrls" type:"list" flattened:"true" required:"true"` } // String returns the string representation. @@ -4122,7 +6098,7 @@ _ struct{} `type:"structure"` // A list of message movement tasks and their attributes. - Results []*ListMessageMoveTasksResultEntry `locationNameList:"ListMessageMoveTasksResultEntry" type:"list" flattened:"true"` + Results []*ListMessageMoveTasksResultEntry `type:"list" flattened:"true"` } // String returns the string representation. @@ -4312,7 +6288,7 @@ _ struct{} `type:"structure"` // The list of all tags added to the specified queue. - Tags map[string]*string `locationName:"Tag" locationNameKey:"Key" locationNameValue:"Value" type:"map" flattened:"true"` + Tags map[string]*string `type:"map" flattened:"true"` } // String returns the string representation. @@ -4403,7 +6379,7 @@ // A list of queue URLs, up to 1,000 entries, or the value of MaxResults that // you sent in the request. - QueueUrls []*string `locationNameList:"QueueUrl" type:"list" flattened:"true"` + QueueUrls []*string `type:"list" flattened:"true"` } // String returns the string representation. @@ -4460,7 +6436,7 @@ // ApproximateFirstReceiveTimestamp and SentTimestamp are each returned as an // integer representing the epoch time (http://en.wikipedia.org/wiki/Unix_time) // in milliseconds. - Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + Attributes map[string]*string `type:"map" flattened:"true"` // The message's contents (not URL-encoded). Body *string `type:"string"` @@ -4477,7 +6453,7 @@ // Each message attribute consists of a Name, Type, and Value. For more information, // see Amazon SQS message attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes) // in the Amazon SQS Developer Guide. - MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + MessageAttributes map[string]*MessageAttributeValue `type:"map" flattened:"true"` // A unique identifier for the message. A MessageIdis considered unique across // all Amazon Web Services accounts for an extended period of time. @@ -4560,7 +6536,7 @@ _ struct{} `type:"structure"` // Not implemented. Reserved for future use. - BinaryListValues [][]byte `locationName:"BinaryListValue" locationNameList:"BinaryListValue" type:"list" flattened:"true"` + BinaryListValues [][]byte `type:"list" flattened:"true"` // Binary type attributes can store any binary data, such as compressed data, // encrypted data, or images. @@ -4578,7 +6554,7 @@ DataType *string `type:"string" required:"true"` // Not implemented. Reserved for future use. - StringListValues []*string `locationName:"StringListValue" locationNameList:"StringListValue" type:"list" flattened:"true"` + StringListValues []*string `type:"list" flattened:"true"` // Strings are Unicode with UTF-8 binary encoding. For a list of code values, // see ASCII Printable Characters (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). @@ -4646,6 +6622,80 @@ return s } +// The specified message isn't in flight. +type MessageNotInflight struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 MessageNotInflight) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MessageNotInflight) GoString() string { + return s.String() +} + +func newErrorMessageNotInflight(v protocol.ResponseMetadata) error { + return &MessageNotInflight{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorMessageNotInflight(v protocol.ResponseMetadata, code string) error { + return &MessageNotInflight{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *MessageNotInflight) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "MessageNotInflight" +} + +// Message returns the exception's message. +func (s *MessageNotInflight) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *MessageNotInflight) OrigErr() error { + return nil +} + +func (s *MessageNotInflight) 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 *MessageNotInflight) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *MessageNotInflight) RequestID() string { + return s.RespMetadata.RequestID +} + // The user-specified message system attribute value. For string data types, // the Value attribute has the same restrictions on the content as the message // body. For more information, see SendMessage. @@ -4655,7 +6705,7 @@ _ struct{} `type:"structure"` // Not implemented. Reserved for future use. - BinaryListValues [][]byte `locationName:"BinaryListValue" locationNameList:"BinaryListValue" type:"list" flattened:"true"` + BinaryListValues [][]byte `type:"list" flattened:"true"` // Binary type attributes can store any binary data, such as compressed data, // encrypted data, or images. @@ -4673,7 +6723,7 @@ DataType *string `type:"string" required:"true"` // Not implemented. Reserved for future use. - StringListValues []*string `locationName:"StringListValue" locationNameList:"StringListValue" type:"list" flattened:"true"` + StringListValues []*string `type:"list" flattened:"true"` // Strings are Unicode with UTF-8 binary encoding. For a list of code values, // see ASCII Printable Characters (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). @@ -4741,6 +6791,159 @@ return s } +// The specified action violates a limit. For example, ReceiveMessage returns +// this error if the maximum number of in flight messages is reached and AddPermission +// returns this error if the maximum number of permissions for the queue is +// reached. +type OverLimit struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 OverLimit) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OverLimit) GoString() string { + return s.String() +} + +func newErrorOverLimit(v protocol.ResponseMetadata) error { + return &OverLimit{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorOverLimit(v protocol.ResponseMetadata, code string) error { + return &OverLimit{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *OverLimit) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "OverLimit" +} + +// Message returns the exception's message. +func (s *OverLimit) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OverLimit) OrigErr() error { + return nil +} + +func (s *OverLimit) 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 *OverLimit) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OverLimit) RequestID() string { + return s.RespMetadata.RequestID +} + +// Indicates that the specified queue previously received a PurgeQueue request +// within the last 60 seconds (the time it can take to delete the messages in +// the queue). +type PurgeQueueInProgress struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 PurgeQueueInProgress) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PurgeQueueInProgress) GoString() string { + return s.String() +} + +func newErrorPurgeQueueInProgress(v protocol.ResponseMetadata) error { + return &PurgeQueueInProgress{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorPurgeQueueInProgress(v protocol.ResponseMetadata, code string) error { + return &PurgeQueueInProgress{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *PurgeQueueInProgress) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "PurgeQueueInProgress" +} + +// Message returns the exception's message. +func (s *PurgeQueueInProgress) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *PurgeQueueInProgress) OrigErr() error { + return nil +} + +func (s *PurgeQueueInProgress) 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 *PurgeQueueInProgress) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *PurgeQueueInProgress) RequestID() string { + return s.RespMetadata.RequestID +} + type PurgeQueueInput struct { _ struct{} `type:"structure"` @@ -4811,6 +7014,305 @@ return s.String() } +// You must wait 60 seconds after deleting a queue before you can create another +// queue with the same name. +type QueueDeletedRecently struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 QueueDeletedRecently) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueueDeletedRecently) GoString() string { + return s.String() +} + +func newErrorQueueDeletedRecently(v protocol.ResponseMetadata) error { + return &QueueDeletedRecently{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorQueueDeletedRecently(v protocol.ResponseMetadata, code string) error { + return &QueueDeletedRecently{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *QueueDeletedRecently) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "QueueDeletedRecently" +} + +// Message returns the exception's message. +func (s *QueueDeletedRecently) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *QueueDeletedRecently) OrigErr() error { + return nil +} + +func (s *QueueDeletedRecently) 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 *QueueDeletedRecently) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *QueueDeletedRecently) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified queue doesn't exist. +type QueueDoesNotExist struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 QueueDoesNotExist) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueueDoesNotExist) GoString() string { + return s.String() +} + +func newErrorQueueDoesNotExist(v protocol.ResponseMetadata) error { + return &QueueDoesNotExist{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorQueueDoesNotExist(v protocol.ResponseMetadata, code string) error { + return &QueueDoesNotExist{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *QueueDoesNotExist) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "QueueDoesNotExist" +} + +// Message returns the exception's message. +func (s *QueueDoesNotExist) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *QueueDoesNotExist) OrigErr() error { + return nil +} + +func (s *QueueDoesNotExist) 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 *QueueDoesNotExist) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *QueueDoesNotExist) RequestID() string { + return s.RespMetadata.RequestID +} + +// A queue with this name already exists. Amazon SQS returns this error only +// if the request includes attributes whose values differ from those of the +// existing queue. +type QueueNameExists struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 QueueNameExists) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QueueNameExists) GoString() string { + return s.String() +} + +func newErrorQueueNameExists(v protocol.ResponseMetadata) error { + return &QueueNameExists{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorQueueNameExists(v protocol.ResponseMetadata, code string) error { + return &QueueNameExists{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *QueueNameExists) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "QueueNameExists" +} + +// Message returns the exception's message. +func (s *QueueNameExists) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *QueueNameExists) OrigErr() error { + return nil +} + +func (s *QueueNameExists) 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 *QueueNameExists) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *QueueNameExists) RequestID() string { + return s.RespMetadata.RequestID +} + +// The specified receipt handle isn't valid. +type ReceiptHandleIsInvalid struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 ReceiptHandleIsInvalid) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReceiptHandleIsInvalid) GoString() string { + return s.String() +} + +func newErrorReceiptHandleIsInvalid(v protocol.ResponseMetadata) error { + return &ReceiptHandleIsInvalid{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorReceiptHandleIsInvalid(v protocol.ResponseMetadata, code string) error { + return &ReceiptHandleIsInvalid{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *ReceiptHandleIsInvalid) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "ReceiptHandleIsInvalid" +} + +// Message returns the exception's message. +func (s *ReceiptHandleIsInvalid) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ReceiptHandleIsInvalid) OrigErr() error { + return nil +} + +func (s *ReceiptHandleIsInvalid) 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 *ReceiptHandleIsInvalid) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ReceiptHandleIsInvalid) RequestID() string { + return s.RespMetadata.RequestID +} + type ReceiveMessageInput struct { _ struct{} `type:"structure"` @@ -4847,7 +7349,7 @@ // in sequence. // // * SequenceNumber – Returns the value provided by Amazon SQS. - AttributeNames []*string `locationNameList:"AttributeName" type:"list" flattened:"true" enum:"QueueAttributeName"` + AttributeNames []*string `type:"list" flattened:"true" enum:"QueueAttributeName"` // The maximum number of messages to return. Amazon SQS never returns more messages // than this value (however, fewer messages might be returned). Valid values: @@ -4874,7 +7376,7 @@ // or you can return all of the attributes by specifying All or .* in your request. // You can also use all message attributes starting with a prefix, for example // bar.*. - MessageAttributeNames []*string `locationNameList:"MessageAttributeName" type:"list" flattened:"true"` + MessageAttributeNames []*string `type:"list" flattened:"true"` // The URL of the Amazon SQS queue from which messages are received. // @@ -5030,7 +7532,7 @@ _ struct{} `type:"structure"` // A list of messages. - Messages []*Message `locationNameList:"Message" type:"list" flattened:"true"` + Messages []*Message `type:"list" flattened:"true"` } // String returns the string representation. @@ -5142,13 +7644,173 @@ return s.String() } +// The request was denied due to request throttling. +// +// - The rate of requests per second exceeds the Amazon Web Services KMS +// request quota for an account and Region. +// +// - A burst or sustained high rate of requests to change the state of the +// same KMS key. This condition is often known as a "hot key." +// +// - Requests for operations on KMS keys in a Amazon Web Services CloudHSM +// key store might be throttled at a lower-than-expected rate when the Amazon +// Web Services CloudHSM cluster associated with the Amazon Web Services +// CloudHSM key store is processing numerous commands, including those unrelated +// to the Amazon Web Services CloudHSM key store. +type RequestThrottled struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 RequestThrottled) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RequestThrottled) GoString() string { + return s.String() +} + +func newErrorRequestThrottled(v protocol.ResponseMetadata) error { + return &RequestThrottled{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorRequestThrottled(v protocol.ResponseMetadata, code string) error { + return &RequestThrottled{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *RequestThrottled) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "RequestThrottled" +} + +// Message returns the exception's message. +func (s *RequestThrottled) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *RequestThrottled) OrigErr() error { + return nil +} + +func (s *RequestThrottled) 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 *RequestThrottled) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *RequestThrottled) RequestID() string { + return s.RespMetadata.RequestID +} + +// One or more specified resources don't exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 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, + } +} +func newQueryCompatibleErrorResourceNotFoundException(v protocol.ResponseMetadata, code string) error { + return &ResourceNotFoundException{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + type SendMessageBatchInput struct { _ struct{} `type:"structure"` // A list of SendMessageBatchRequestEntry items. // // Entries is a required field - Entries []*SendMessageBatchRequestEntry `locationNameList:"SendMessageBatchRequestEntry" type:"list" flattened:"true" required:"true"` + Entries []*SendMessageBatchRequestEntry `type:"list" flattened:"true" required:"true"` // The URL of the Amazon SQS queue to which batched messages are sent. // @@ -5224,12 +7886,12 @@ // that can't be enqueued. // // Failed is a required field - Failed []*BatchResultErrorEntry `locationNameList:"BatchResultErrorEntry" type:"list" flattened:"true" required:"true"` + Failed []*BatchResultErrorEntry `type:"list" flattened:"true" required:"true"` // A list of SendMessageBatchResultEntry items. // // Successful is a required field - Successful []*SendMessageBatchResultEntry `locationNameList:"SendMessageBatchResultEntry" type:"list" flattened:"true" required:"true"` + Successful []*SendMessageBatchResultEntry `type:"list" flattened:"true" required:"true"` } // String returns the string representation. @@ -5288,7 +7950,7 @@ // Each message attribute consists of a Name, Type, and Value. For more information, // see Amazon SQS message attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes) // in the Amazon SQS Developer Guide. - MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + MessageAttributes map[string]*MessageAttributeValue `type:"map" flattened:"true"` // The body of the message. // @@ -5376,7 +8038,7 @@ // // * The size of a message system attribute doesn't count towards the total // size of a message. - MessageSystemAttributes map[string]*MessageSystemAttributeValue `locationName:"MessageSystemAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + MessageSystemAttributes map[string]*MessageSystemAttributeValue `type:"map" flattened:"true"` } // String returns the string representation. @@ -5587,7 +8249,7 @@ // Each message attribute consists of a Name, Type, and Value. For more information, // see Amazon SQS message attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes) // in the Amazon SQS Developer Guide. - MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + MessageAttributes map[string]*MessageAttributeValue `type:"map" flattened:"true"` // The message to send. The minimum size is one character. The maximum size // is 256 KiB. @@ -5685,7 +8347,7 @@ // // * The size of a message system attribute doesn't count towards the total // size of a message. - MessageSystemAttributes map[string]*MessageSystemAttributeValue `locationName:"MessageSystemAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` + MessageSystemAttributes map[string]*MessageSystemAttributeValue `type:"map" flattened:"true"` // The URL of the Amazon SQS queue to which a message is sent. // @@ -6017,7 +8679,7 @@ // in the Amazon SQS Developer Guide. // // Attributes is a required field - Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true" required:"true"` + Attributes map[string]*string `type:"map" flattened:"true" required:"true"` // The URL of the Amazon SQS queue whose attributes are set. // @@ -6213,7 +8875,7 @@ // The list of tags to be added to the specified queue. // // Tags is a required field - Tags map[string]*string `locationName:"Tag" locationNameKey:"Key" locationNameValue:"Value" type:"map" flattened:"true" required:"true"` + Tags map[string]*string `type:"map" flattened:"true" required:"true"` } // String returns the string representation. @@ -6284,6 +8946,154 @@ return s.String() } +// The batch request contains more entries than permissible. +type TooManyEntriesInBatchRequest struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 TooManyEntriesInBatchRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TooManyEntriesInBatchRequest) GoString() string { + return s.String() +} + +func newErrorTooManyEntriesInBatchRequest(v protocol.ResponseMetadata) error { + return &TooManyEntriesInBatchRequest{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorTooManyEntriesInBatchRequest(v protocol.ResponseMetadata, code string) error { + return &TooManyEntriesInBatchRequest{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *TooManyEntriesInBatchRequest) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "TooManyEntriesInBatchRequest" +} + +// Message returns the exception's message. +func (s *TooManyEntriesInBatchRequest) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *TooManyEntriesInBatchRequest) OrigErr() error { + return nil +} + +func (s *TooManyEntriesInBatchRequest) 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 *TooManyEntriesInBatchRequest) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *TooManyEntriesInBatchRequest) RequestID() string { + return s.RespMetadata.RequestID +} + +// Error code 400. Unsupported operation. +type UnsupportedOperation struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Code_ *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 UnsupportedOperation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnsupportedOperation) GoString() string { + return s.String() +} + +func newErrorUnsupportedOperation(v protocol.ResponseMetadata) error { + return &UnsupportedOperation{ + RespMetadata: v, + } +} +func newQueryCompatibleErrorUnsupportedOperation(v protocol.ResponseMetadata, code string) error { + return &UnsupportedOperation{ + RespMetadata: v, + Code_: &code, + } +} + +// Code returns the exception type name. +func (s *UnsupportedOperation) Code() string { + if s.Code_ != nil { + return *s.Code_ + } + return "UnsupportedOperation" +} + +// Message returns the exception's message. +func (s *UnsupportedOperation) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnsupportedOperation) OrigErr() error { + return nil +} + +func (s *UnsupportedOperation) 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 *UnsupportedOperation) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnsupportedOperation) RequestID() string { + return s.RespMetadata.RequestID +} + type UntagQueueInput struct { _ struct{} `type:"structure"` @@ -6295,7 +9105,7 @@ // The list of tags to be removed from the specified queue. // // TagKeys is a required field - TagKeys []*string `locationNameList:"TagKey" type:"list" flattened:"true" required:"true"` + TagKeys []*string `type:"list" flattened:"true" required:"true"` } // String returns the string representation. diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sqs/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/sqs/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sqs/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sqs/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -2,25 +2,35 @@ package sqs +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + const ( // ErrCodeBatchEntryIdsNotDistinct for service response error code - // "AWS.SimpleQueueService.BatchEntryIdsNotDistinct". + // "BatchEntryIdsNotDistinct". // // Two or more batch entries in the request have the same Id. - ErrCodeBatchEntryIdsNotDistinct = "AWS.SimpleQueueService.BatchEntryIdsNotDistinct" + ErrCodeBatchEntryIdsNotDistinct = "BatchEntryIdsNotDistinct" // ErrCodeBatchRequestTooLong for service response error code - // "AWS.SimpleQueueService.BatchRequestTooLong". + // "BatchRequestTooLong". // // The length of all the messages put together is more than the limit. - ErrCodeBatchRequestTooLong = "AWS.SimpleQueueService.BatchRequestTooLong" + ErrCodeBatchRequestTooLong = "BatchRequestTooLong" // ErrCodeEmptyBatchRequest for service response error code - // "AWS.SimpleQueueService.EmptyBatchRequest". + // "EmptyBatchRequest". // // The batch request doesn't contain any entries. - ErrCodeEmptyBatchRequest = "AWS.SimpleQueueService.EmptyBatchRequest" + ErrCodeEmptyBatchRequest = "EmptyBatchRequest" + + // ErrCodeInvalidAddress for service response error code + // "InvalidAddress". + // + // The accountId is invalid. + ErrCodeInvalidAddress = "InvalidAddress" // ErrCodeInvalidAttributeName for service response error code // "InvalidAttributeName". @@ -28,11 +38,17 @@ // The specified attribute doesn't exist. ErrCodeInvalidAttributeName = "InvalidAttributeName" + // ErrCodeInvalidAttributeValue for service response error code + // "InvalidAttributeValue". + // + // A queue attribute value is invalid. + ErrCodeInvalidAttributeValue = "InvalidAttributeValue" + // ErrCodeInvalidBatchEntryId for service response error code - // "AWS.SimpleQueueService.InvalidBatchEntryId". + // "InvalidBatchEntryId". // // The Id of a batch entry in a batch request doesn't abide by the specification. - ErrCodeInvalidBatchEntryId = "AWS.SimpleQueueService.InvalidBatchEntryId" + ErrCodeInvalidBatchEntryId = "InvalidBatchEntryId" // ErrCodeInvalidIdFormat for service response error code // "InvalidIdFormat". @@ -46,11 +62,67 @@ // The message contains characters outside the allowed set. ErrCodeInvalidMessageContents = "InvalidMessageContents" + // ErrCodeInvalidSecurity for service response error code + // "InvalidSecurity". + // + // When the request to a queue is not HTTPS and SigV4. + ErrCodeInvalidSecurity = "InvalidSecurity" + + // ErrCodeKmsAccessDenied for service response error code + // "KmsAccessDenied". + // + // The caller doesn't have the required KMS access. + ErrCodeKmsAccessDenied = "KmsAccessDenied" + + // ErrCodeKmsDisabled for service response error code + // "KmsDisabled". + // + // The request was denied due to request throttling. + ErrCodeKmsDisabled = "KmsDisabled" + + // ErrCodeKmsInvalidKeyUsage for service response error code + // "KmsInvalidKeyUsage". + // + // The request was rejected for one of the following reasons: + // + // * The KeyUsage value of the KMS key is incompatible with the API operation. + // + // * The encryption algorithm or signing algorithm specified for the operation + // is incompatible with the type of key material in the KMS key (KeySpec). + ErrCodeKmsInvalidKeyUsage = "KmsInvalidKeyUsage" + + // ErrCodeKmsInvalidState for service response error code + // "KmsInvalidState". + // + // The request was rejected because the state of the specified resource is not + // valid for this request. + ErrCodeKmsInvalidState = "KmsInvalidState" + + // ErrCodeKmsNotFound for service response error code + // "KmsNotFound". + // + // The request was rejected because the specified entity or resource could not + // be found. + ErrCodeKmsNotFound = "KmsNotFound" + + // ErrCodeKmsOptInRequired for service response error code + // "KmsOptInRequired". + // + // The request was rejected because the specified key policy isn't syntactically + // or semantically correct. + ErrCodeKmsOptInRequired = "KmsOptInRequired" + + // ErrCodeKmsThrottled for service response error code + // "KmsThrottled". + // + // Amazon Web Services KMS throttles requests for the following conditions. + ErrCodeKmsThrottled = "KmsThrottled" + // ErrCodeMessageNotInflight for service response error code - // "AWS.SimpleQueueService.MessageNotInflight". + // "MessageNotInflight". // // The specified message isn't in flight. - ErrCodeMessageNotInflight = "AWS.SimpleQueueService.MessageNotInflight" + ErrCodeMessageNotInflight = "MessageNotInflight" // ErrCodeOverLimit for service response error code // "OverLimit". @@ -62,33 +134,33 @@ ErrCodeOverLimit = "OverLimit" // ErrCodePurgeQueueInProgress for service response error code - // "AWS.SimpleQueueService.PurgeQueueInProgress". + // "PurgeQueueInProgress". // // Indicates that the specified queue previously received a PurgeQueue request // within the last 60 seconds (the time it can take to delete the messages in // the queue). - ErrCodePurgeQueueInProgress = "AWS.SimpleQueueService.PurgeQueueInProgress" + ErrCodePurgeQueueInProgress = "PurgeQueueInProgress" // ErrCodeQueueDeletedRecently for service response error code - // "AWS.SimpleQueueService.QueueDeletedRecently". + // "QueueDeletedRecently". // // You must wait 60 seconds after deleting a queue before you can create another // queue with the same name. - ErrCodeQueueDeletedRecently = "AWS.SimpleQueueService.QueueDeletedRecently" + ErrCodeQueueDeletedRecently = "QueueDeletedRecently" // ErrCodeQueueDoesNotExist for service response error code - // "AWS.SimpleQueueService.NonExistentQueue". + // "QueueDoesNotExist". // // The specified queue doesn't exist. - ErrCodeQueueDoesNotExist = "AWS.SimpleQueueService.NonExistentQueue" + ErrCodeQueueDoesNotExist = "QueueDoesNotExist" // ErrCodeQueueNameExists for service response error code - // "QueueAlreadyExists". + // "QueueNameExists". // // A queue with this name already exists. Amazon SQS returns this error only // if the request includes attributes whose values differ from those of the // existing queue. - ErrCodeQueueNameExists = "QueueAlreadyExists" + ErrCodeQueueNameExists = "QueueNameExists" // ErrCodeReceiptHandleIsInvalid for service response error code // "ReceiptHandleIsInvalid". @@ -96,6 +168,24 @@ // The specified receipt handle isn't valid. ErrCodeReceiptHandleIsInvalid = "ReceiptHandleIsInvalid" + // ErrCodeRequestThrottled for service response error code + // "RequestThrottled". + // + // The request was denied due to request throttling. + // + // * The rate of requests per second exceeds the Amazon Web Services KMS + // request quota for an account and Region. + // + // * A burst or sustained high rate of requests to change the state of the + // same KMS key. This condition is often known as a "hot key." + // + // * Requests for operations on KMS keys in a Amazon Web Services CloudHSM + // key store might be throttled at a lower-than-expected rate when the Amazon + // Web Services CloudHSM cluster associated with the Amazon Web Services + // CloudHSM key store is processing numerous commands, including those unrelated + // to the Amazon Web Services CloudHSM key store. + ErrCodeRequestThrottled = "RequestThrottled" + // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // @@ -103,14 +193,75 @@ ErrCodeResourceNotFoundException = "ResourceNotFoundException" // ErrCodeTooManyEntriesInBatchRequest for service response error code - // "AWS.SimpleQueueService.TooManyEntriesInBatchRequest". + // "TooManyEntriesInBatchRequest". // // The batch request contains more entries than permissible. - ErrCodeTooManyEntriesInBatchRequest = "AWS.SimpleQueueService.TooManyEntriesInBatchRequest" + ErrCodeTooManyEntriesInBatchRequest = "TooManyEntriesInBatchRequest" // ErrCodeUnsupportedOperation for service response error code - // "AWS.SimpleQueueService.UnsupportedOperation". + // "UnsupportedOperation". // // Error code 400. Unsupported operation. - ErrCodeUnsupportedOperation = "AWS.SimpleQueueService.UnsupportedOperation" + ErrCodeUnsupportedOperation = "UnsupportedOperation" ) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "BatchEntryIdsNotDistinct": newErrorBatchEntryIdsNotDistinct, + "BatchRequestTooLong": newErrorBatchRequestTooLong, + "EmptyBatchRequest": newErrorEmptyBatchRequest, + "InvalidAddress": newErrorInvalidAddress, + "InvalidAttributeName": newErrorInvalidAttributeName, + "InvalidAttributeValue": newErrorInvalidAttributeValue, + "InvalidBatchEntryId": newErrorInvalidBatchEntryId, + "InvalidIdFormat": newErrorInvalidIdFormat, + "InvalidMessageContents": newErrorInvalidMessageContents, + "InvalidSecurity": newErrorInvalidSecurity, + "KmsAccessDenied": newErrorKmsAccessDenied, + "KmsDisabled": newErrorKmsDisabled, + "KmsInvalidKeyUsage": newErrorKmsInvalidKeyUsage, + "KmsInvalidState": newErrorKmsInvalidState, + "KmsNotFound": newErrorKmsNotFound, + "KmsOptInRequired": newErrorKmsOptInRequired, + "KmsThrottled": newErrorKmsThrottled, + "MessageNotInflight": newErrorMessageNotInflight, + "OverLimit": newErrorOverLimit, + "PurgeQueueInProgress": newErrorPurgeQueueInProgress, + "QueueDeletedRecently": newErrorQueueDeletedRecently, + "QueueDoesNotExist": newErrorQueueDoesNotExist, + "QueueNameExists": newErrorQueueNameExists, + "ReceiptHandleIsInvalid": newErrorReceiptHandleIsInvalid, + "RequestThrottled": newErrorRequestThrottled, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "TooManyEntriesInBatchRequest": newErrorTooManyEntriesInBatchRequest, + "UnsupportedOperation": newErrorUnsupportedOperation, +} +var queryExceptionFromCode = map[string]func(protocol.ResponseMetadata, string) error{ + "BatchEntryIdsNotDistinct": newQueryCompatibleErrorBatchEntryIdsNotDistinct, + "BatchRequestTooLong": newQueryCompatibleErrorBatchRequestTooLong, + "EmptyBatchRequest": newQueryCompatibleErrorEmptyBatchRequest, + "InvalidAddress": newQueryCompatibleErrorInvalidAddress, + "InvalidAttributeName": newQueryCompatibleErrorInvalidAttributeName, + "InvalidAttributeValue": newQueryCompatibleErrorInvalidAttributeValue, + "InvalidBatchEntryId": newQueryCompatibleErrorInvalidBatchEntryId, + "InvalidIdFormat": newQueryCompatibleErrorInvalidIdFormat, + "InvalidMessageContents": newQueryCompatibleErrorInvalidMessageContents, + "InvalidSecurity": newQueryCompatibleErrorInvalidSecurity, + "KmsAccessDenied": newQueryCompatibleErrorKmsAccessDenied, + "KmsDisabled": newQueryCompatibleErrorKmsDisabled, + "KmsInvalidKeyUsage": newQueryCompatibleErrorKmsInvalidKeyUsage, + "KmsInvalidState": newQueryCompatibleErrorKmsInvalidState, + "KmsNotFound": newQueryCompatibleErrorKmsNotFound, + "KmsOptInRequired": newQueryCompatibleErrorKmsOptInRequired, + "KmsThrottled": newQueryCompatibleErrorKmsThrottled, + "MessageNotInflight": newQueryCompatibleErrorMessageNotInflight, + "OverLimit": newQueryCompatibleErrorOverLimit, + "PurgeQueueInProgress": newQueryCompatibleErrorPurgeQueueInProgress, + "QueueDeletedRecently": newQueryCompatibleErrorQueueDeletedRecently, + "QueueDoesNotExist": newQueryCompatibleErrorQueueDoesNotExist, + "QueueNameExists": newQueryCompatibleErrorQueueNameExists, + "ReceiptHandleIsInvalid": newQueryCompatibleErrorReceiptHandleIsInvalid, + "RequestThrottled": newQueryCompatibleErrorRequestThrottled, + "ResourceNotFoundException": newQueryCompatibleErrorResourceNotFoundException, + "TooManyEntriesInBatchRequest": newQueryCompatibleErrorTooManyEntriesInBatchRequest, + "UnsupportedOperation": newQueryCompatibleErrorUnsupportedOperation, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sqs/service.go golang-github-aws-aws-sdk-go-1.48.14/service/sqs/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sqs/service.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sqs/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -8,7 +8,8 @@ "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/query" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // SQS provides the API operation methods for making requests to @@ -70,6 +71,8 @@ Endpoint: endpoint, APIVersion: "2012-11-05", ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "AmazonSQS", }, handlers, ), @@ -77,10 +80,12 @@ // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) - svc.Handlers.Build.PushBackNamed(query.BuildHandler) - svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) - svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) - svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) + 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.NewUnmarshalTypedErrorWithOptions(exceptionFromCode, jsonrpc.WithQueryCompatibility(queryExceptionFromCode))).NamedHandler(), + ) // Run custom client initialization if present if initClient != nil { diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssm/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ssm/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssm/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssm/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -214,6 +214,9 @@ // - OpsItemRelatedItemAlreadyExistsException // The Amazon Resource Name (ARN) is already associated with the OpsItem. // +// - OpsItemConflictException +// The specified OpsItem is in the process of being deleted. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AssociateOpsItemRelatedItem func (c *SSM) AssociateOpsItemRelatedItem(input *AssociateOpsItemRelatedItemInput) (*AssociateOpsItemRelatedItemOutput, error) { req, out := c.AssociateOpsItemRelatedItemRequest(input) @@ -1881,6 +1884,112 @@ return out, req.Send() } +const opDeleteOpsItem = "DeleteOpsItem" + +// DeleteOpsItemRequest generates a "aws/request.Request" representing the +// client's request for the DeleteOpsItem 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 DeleteOpsItem for more information on using the DeleteOpsItem +// 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 DeleteOpsItemRequest method. +// req, resp := client.DeleteOpsItemRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsItem +func (c *SSM) DeleteOpsItemRequest(input *DeleteOpsItemInput) (req *request.Request, output *DeleteOpsItemOutput) { + op := &request.Operation{ + Name: opDeleteOpsItem, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteOpsItemInput{} + } + + output = &DeleteOpsItemOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteOpsItem API operation for Amazon Simple Systems Manager (SSM). +// +// Delete an OpsItem. You must have permission in Identity and Access Management +// (IAM) to delete an OpsItem. +// +// Note the following important information about this operation. +// +// - Deleting an OpsItem is irreversible. You can't restore a deleted OpsItem. +// +// - This operation uses an eventual consistency model, which means the system +// can take a few minutes to complete this operation. If you delete an OpsItem +// and immediately call, for example, GetOpsItem, the deleted OpsItem might +// still appear in the response. +// +// - This operation is idempotent. The system doesn't throw an exception +// if you repeatedly call this operation for the same OpsItem. If the first +// call is successful, all additional calls return the same successful response +// as the first call. +// +// - This operation doesn't support cross-account calls. A delegated administrator +// or management account can't delete OpsItems in other accounts, even if +// OpsCenter has been set up for cross-account administration. For more information +// about cross-account administration, see Setting up OpsCenter to centrally +// manage OpsItems across accounts (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-setting-up-cross-account.html) +// in the Systems Manager User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s +// API operation DeleteOpsItem for usage and error information. +// +// Returned Error Types: +// +// - InternalServerError +// An error occurred on the server side. +// +// - OpsItemInvalidParameterException +// A specified parameter argument isn't valid. Verify the available arguments +// and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsItem +func (c *SSM) DeleteOpsItem(input *DeleteOpsItemInput) (*DeleteOpsItemOutput, error) { + req, out := c.DeleteOpsItemRequest(input) + return out, req.Send() +} + +// DeleteOpsItemWithContext is the same as DeleteOpsItem with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteOpsItem 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 *SSM) DeleteOpsItemWithContext(ctx aws.Context, input *DeleteOpsItemInput, opts ...request.Option) (*DeleteOpsItemOutput, error) { + req, out := c.DeleteOpsItemRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteOpsMetadata = "DeleteOpsMetadata" // DeleteOpsMetadataRequest generates a "aws/request.Request" representing the @@ -7307,6 +7416,9 @@ // A specified parameter argument isn't valid. Verify the available arguments // and try again. // +// - OpsItemConflictException +// The specified OpsItem is in the process of being deleted. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DisassociateOpsItemRelatedItem func (c *SSM) DisassociateOpsItemRelatedItem(input *DisassociateOpsItemRelatedItemInput) (*DisassociateOpsItemRelatedItemOutput, error) { req, out := c.DisassociateOpsItemRelatedItemRequest(input) @@ -15497,6 +15609,9 @@ // that your account is configured either as a Systems Manager delegated administrator // or that you are logged into the Organizations management account. // +// - OpsItemConflictException +// The specified OpsItem is in the process of being deleted. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsItem func (c *SSM) UpdateOpsItem(input *UpdateOpsItemInput) (*UpdateOpsItemOutput, error) { req, out := c.UpdateOpsItemRequest(input) @@ -18713,6 +18828,9 @@ // The CloudWatch alarm that was invoked by the automation. TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` + + // Variables defined for the automation. + Variables map[string][]*string `min:"1" type:"map"` } // String returns the string representation. @@ -18931,6 +19049,12 @@ return s } +// SetVariables sets the Variables field's value. +func (s *AutomationExecution) SetVariables(v map[string][]*string) *AutomationExecution { + s.Variables = v + return s +} + // A filter used to match specific automation executions. This is used to limit // the scope of Automation execution information returned. type AutomationExecutionFilter struct { @@ -22808,7 +22932,11 @@ // Specify a category to assign to an OpsItem. Category *string `min:"1" type:"string"` - // Information about the OpsItem. + // User-defined text that contains information about the OpsItem, in Markdown + // format. + // + // Provide enough information so that users viewing this OpsItem for the first + // time understand the issue. // // Description is a required field Description *string `min:"1" type:"string" required:"true"` @@ -22849,7 +22977,7 @@ // * /aws/changerequest This type of OpsItem is used by Change Manager for // reviewing and approving or rejecting change requests. // - // * /aws/insights This type of OpsItem is used by OpsCenter for aggregating + // * /aws/insight This type of OpsItem is used by OpsCenter for aggregating // and reporting on duplicate OpsItems. OpsItemType *string `type:"string"` @@ -24159,6 +24287,74 @@ return s } +type DeleteOpsItemInput struct { + _ struct{} `type:"structure"` + + // The ID of the OpsItem that you want to delete. + // + // OpsItemId is a required field + OpsItemId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteOpsItemInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteOpsItemInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteOpsItemInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteOpsItemInput"} + if s.OpsItemId == nil { + invalidParams.Add(request.NewErrParamRequired("OpsItemId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOpsItemId sets the OpsItemId field's value. +func (s *DeleteOpsItemInput) SetOpsItemId(v string) *DeleteOpsItemInput { + s.OpsItemId = &v + return s +} + +type DeleteOpsItemOutput 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 DeleteOpsItemOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteOpsItemOutput) GoString() string { + return s.String() +} + type DeleteOpsMetadataInput struct { _ struct{} `type:"structure"` @@ -26991,6 +27187,9 @@ // * Severity Sample values: Important | Medium | Low // // * State Sample values: Installed | InstalledOther | InstalledPendingReboot + // For lists of all State values, see Understanding patch compliance state + // values (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-compliance-states.html) + // in the Amazon Web Services Systems Manager User Guide. Filters []*PatchOrchestratorFilter `type:"list"` // The ID of the managed node whose patch state information should be retrieved. @@ -45305,7 +45504,7 @@ // * /aws/changerequest This type of OpsItem is used by Change Manager for // reviewing and approving or rejecting change requests. // - // * /aws/insights This type of OpsItem is used by OpsCenter for aggregating + // * /aws/insight This type of OpsItem is used by OpsCenter for aggregating // and reporting on duplicate OpsItems. OpsItemType *string `type:"string"` @@ -45628,6 +45827,70 @@ return s.RespMetadata.RequestID } +// The specified OpsItem is in the process of being deleted. +type OpsItemConflictException 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 OpsItemConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpsItemConflictException) GoString() string { + return s.String() +} + +func newErrorOpsItemConflictException(v protocol.ResponseMetadata) error { + return &OpsItemConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsItemConflictException) Code() string { + return "OpsItemConflictException" +} + +// Message returns the exception's message. +func (s *OpsItemConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsItemConflictException) OrigErr() error { + return nil +} + +func (s *OpsItemConflictException) 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 *OpsItemConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsItemConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + // An object that defines the value of the key and its type in the OperationalData // map. type OpsItemDataValue struct { @@ -46532,7 +46795,7 @@ // * /aws/changerequest This type of OpsItem is used by Change Manager for // reviewing and approving or rejecting change requests. // - // * /aws/insights This type of OpsItem is used by OpsCenter for aggregating + // * /aws/insight This type of OpsItem is used by OpsCenter for aggregating // and reporting on duplicate OpsItems. OpsItemType *string `type:"string"` @@ -48382,6 +48645,74 @@ return s } +// A detailed status of the parent step. +type ParentStepDetails struct { + _ struct{} `type:"structure"` + + // The name of the automation action. + Action *string `type:"string"` + + // The current repetition of the loop represented by an integer. + Iteration *int64 `type:"integer"` + + // The current value of the specified iterator in the loop. + IteratorValue *string `type:"string"` + + // The unique ID of a step execution. + StepExecutionId *string `type:"string"` + + // The name of the step. + StepName *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 ParentStepDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ParentStepDetails) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *ParentStepDetails) SetAction(v string) *ParentStepDetails { + s.Action = &v + return s +} + +// SetIteration sets the Iteration field's value. +func (s *ParentStepDetails) SetIteration(v int64) *ParentStepDetails { + s.Iteration = &v + return s +} + +// SetIteratorValue sets the IteratorValue field's value. +func (s *ParentStepDetails) SetIteratorValue(v string) *ParentStepDetails { + s.IteratorValue = &v + return s +} + +// SetStepExecutionId sets the StepExecutionId field's value. +func (s *ParentStepDetails) SetStepExecutionId(v string) *ParentStepDetails { + s.StepExecutionId = &v + return s +} + +// SetStepName sets the StepName field's value. +func (s *ParentStepDetails) SetStepName(v string) *ParentStepDetails { + s.StepName = &v + return s +} + // Represents metadata about a patch. type Patch struct { _ struct{} `type:"structure"` @@ -55150,6 +55481,9 @@ // A user-specified list of parameters to override when running a step. OverriddenParameters map[string][]*string `min:"1" type:"map"` + // Information about the parent step. + ParentStepDetails *ParentStepDetails `type:"structure"` + // A message associated with the response code for an execution. Response *string `type:"string"` @@ -55282,6 +55616,12 @@ return s } +// SetParentStepDetails sets the ParentStepDetails field's value. +func (s *StepExecution) SetParentStepDetails(v *ParentStepDetails) *StepExecution { + s.ParentStepDetails = v + return s +} + // SetResponse sets the Response field's value. func (s *StepExecution) SetResponse(v string) *StepExecution { s.Response = &v @@ -55347,9 +55687,7 @@ type StepExecutionFilter struct { _ struct{} `type:"structure"` - // One or more keys to limit the results. Valid filter keys include the following: - // StepName, Action, StepExecutionId, StepExecutionStatus, StartTimeBefore, - // StartTimeAfter. + // One or more keys to limit the results. // // Key is a required field Key *string `type:"string" required:"true" enum:"StepExecutionFilterKey"` @@ -58869,8 +59207,8 @@ // Specify a new category for an OpsItem. Category *string `min:"1" type:"string"` - // Update the information about the OpsItem. Provide enough information so that - // users reading this OpsItem for the first time understand the issue. + // User-defined text that contains information about the OpsItem, in Markdown + // format. Description *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of an SNS topic where notifications are sent @@ -59733,23 +60071,25 @@ // The new value to specify for the service setting. The following list specifies // the available values for each setting. // - // * /ssm/managed-instance/default-ec2-instance-management-role: The name - // of an IAM role + // * For /ssm/managed-instance/default-ec2-instance-management-role, enter + // the name of an IAM role. // - // * /ssm/automation/customer-script-log-destination: CloudWatch + // * For /ssm/automation/customer-script-log-destination, enter CloudWatch. // - // * /ssm/automation/customer-script-log-group-name: The name of an Amazon - // CloudWatch Logs log group + // * For /ssm/automation/customer-script-log-group-name, enter the name of + // an Amazon CloudWatch Logs log group. // - // * /ssm/documents/console/public-sharing-permission: Enable or Disable + // * For /ssm/documents/console/public-sharing-permission, enter Enable or + // Disable. // - // * /ssm/managed-instance/activation-tier: standard or advanced + // * For /ssm/managed-instance/activation-tier, enter standard or advanced. // - // * /ssm/opsinsights/opscenter: Enabled or Disabled + // * For /ssm/opsinsights/opscenter, enter Enabled or Disabled. // - // * /ssm/parameter-store/default-parameter-tier: Standard, Advanced, Intelligent-Tiering + // * For /ssm/parameter-store/default-parameter-tier, enter Standard, Advanced, + // or Intelligent-Tiering // - // * /ssm/parameter-store/high-throughput-enabled: true or false + // * For /ssm/parameter-store/high-throughput-enabled, enter true or false. // // SettingValue is a required field SettingValue *string `min:"1" type:"string" required:"true"` @@ -60136,6 +60476,9 @@ // AutomationExecutionStatusCompletedWithFailure is a AutomationExecutionStatus enum value AutomationExecutionStatusCompletedWithFailure = "CompletedWithFailure" + + // AutomationExecutionStatusExited is a AutomationExecutionStatus enum value + AutomationExecutionStatusExited = "Exited" ) // AutomationExecutionStatus_Values returns all elements of the AutomationExecutionStatus enum @@ -60159,6 +60502,7 @@ AutomationExecutionStatusChangeCalendarOverrideRejected, AutomationExecutionStatusCompletedWithSuccess, AutomationExecutionStatusCompletedWithFailure, + AutomationExecutionStatusExited, } } @@ -60436,17 +60780,17 @@ const ( // ConnectionStatusConnected is a ConnectionStatus enum value - ConnectionStatusConnected = "Connected" + ConnectionStatusConnected = "connected" - // ConnectionStatusNotConnected is a ConnectionStatus enum value - ConnectionStatusNotConnected = "NotConnected" + // ConnectionStatusNotconnected is a ConnectionStatus enum value + ConnectionStatusNotconnected = "notconnected" ) // ConnectionStatus_Values returns all elements of the ConnectionStatus enum func ConnectionStatus_Values() []string { return []string{ ConnectionStatusConnected, - ConnectionStatusNotConnected, + ConnectionStatusNotconnected, } } @@ -61851,9 +62195,6 @@ // ResourceTypeManagedInstance is a ResourceType enum value ResourceTypeManagedInstance = "ManagedInstance" - // ResourceTypeDocument is a ResourceType enum value - ResourceTypeDocument = "Document" - // ResourceTypeEc2instance is a ResourceType enum value ResourceTypeEc2instance = "EC2Instance" ) @@ -61862,7 +62203,6 @@ func ResourceType_Values() []string { return []string{ ResourceTypeManagedInstance, - ResourceTypeDocument, ResourceTypeEc2instance, } } @@ -62081,6 +62421,15 @@ // StepExecutionFilterKeyAction is a StepExecutionFilterKey enum value StepExecutionFilterKeyAction = "Action" + + // StepExecutionFilterKeyParentStepExecutionId is a StepExecutionFilterKey enum value + StepExecutionFilterKeyParentStepExecutionId = "ParentStepExecutionId" + + // StepExecutionFilterKeyParentStepIteration is a StepExecutionFilterKey enum value + StepExecutionFilterKeyParentStepIteration = "ParentStepIteration" + + // StepExecutionFilterKeyParentStepIteratorValue is a StepExecutionFilterKey enum value + StepExecutionFilterKeyParentStepIteratorValue = "ParentStepIteratorValue" ) // StepExecutionFilterKey_Values returns all elements of the StepExecutionFilterKey enum @@ -62092,6 +62441,9 @@ StepExecutionFilterKeyStepExecutionId, StepExecutionFilterKeyStepName, StepExecutionFilterKeyAction, + StepExecutionFilterKeyParentStepExecutionId, + StepExecutionFilterKeyParentStepIteration, + StepExecutionFilterKeyParentStepIteratorValue, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssm/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/ssm/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssm/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssm/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -15,7 +15,7 @@ // Related resources // // - For information about each of the capabilities that comprise Systems -// Manager, see Systems Manager capabilities (https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/systems-manager-capabilities.html) +// Manager, see Systems Manager capabilities (https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html#systems-manager-capabilities) // in the Amazon Web Services Systems Manager User Guide. // // - For details about predefined runbooks for Automation, a capability of diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssm/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/ssm/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssm/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssm/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -586,6 +586,12 @@ // The OpsItem already exists. ErrCodeOpsItemAlreadyExistsException = "OpsItemAlreadyExistsException" + // ErrCodeOpsItemConflictException for service response error code + // "OpsItemConflictException". + // + // The specified OpsItem is in the process of being deleted. + ErrCodeOpsItemConflictException = "OpsItemConflictException" + // ErrCodeOpsItemInvalidParameterException for service response error code // "OpsItemInvalidParameterException". // @@ -995,6 +1001,7 @@ "MaxDocumentSizeExceeded": newErrorMaxDocumentSizeExceeded, "OpsItemAccessDeniedException": newErrorOpsItemAccessDeniedException, "OpsItemAlreadyExistsException": newErrorOpsItemAlreadyExistsException, + "OpsItemConflictException": newErrorOpsItemConflictException, "OpsItemInvalidParameterException": newErrorOpsItemInvalidParameterException, "OpsItemLimitExceededException": newErrorOpsItemLimitExceededException, "OpsItemNotFoundException": newErrorOpsItemNotFoundException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssm/ssmiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ssm/ssmiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssm/ssmiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssm/ssmiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -132,6 +132,10 @@ DeleteMaintenanceWindowWithContext(aws.Context, *ssm.DeleteMaintenanceWindowInput, ...request.Option) (*ssm.DeleteMaintenanceWindowOutput, error) DeleteMaintenanceWindowRequest(*ssm.DeleteMaintenanceWindowInput) (*request.Request, *ssm.DeleteMaintenanceWindowOutput) + DeleteOpsItem(*ssm.DeleteOpsItemInput) (*ssm.DeleteOpsItemOutput, error) + DeleteOpsItemWithContext(aws.Context, *ssm.DeleteOpsItemInput, ...request.Option) (*ssm.DeleteOpsItemOutput, error) + DeleteOpsItemRequest(*ssm.DeleteOpsItemInput) (*request.Request, *ssm.DeleteOpsItemOutput) + DeleteOpsMetadata(*ssm.DeleteOpsMetadataInput) (*ssm.DeleteOpsMetadataOutput, error) DeleteOpsMetadataWithContext(aws.Context, *ssm.DeleteOpsMetadataInput, ...request.Option) (*ssm.DeleteOpsMetadataOutput, error) DeleteOpsMetadataRequest(*ssm.DeleteOpsMetadataInput) (*request.Request, *ssm.DeleteOpsMetadataOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssmincidents/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ssmincidents/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssmincidents/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssmincidents/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,103 @@ "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opBatchGetIncidentFindings = "BatchGetIncidentFindings" + +// BatchGetIncidentFindingsRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetIncidentFindings 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 BatchGetIncidentFindings for more information on using the BatchGetIncidentFindings +// 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 BatchGetIncidentFindingsRequest method. +// req, resp := client.BatchGetIncidentFindingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-incidents-2018-05-10/BatchGetIncidentFindings +func (c *SSMIncidents) BatchGetIncidentFindingsRequest(input *BatchGetIncidentFindingsInput) (req *request.Request, output *BatchGetIncidentFindingsOutput) { + op := &request.Operation{ + Name: opBatchGetIncidentFindings, + HTTPMethod: "POST", + HTTPPath: "/batchGetIncidentFindings", + } + + if input == nil { + input = &BatchGetIncidentFindingsInput{} + } + + output = &BatchGetIncidentFindingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetIncidentFindings API operation for AWS Systems Manager Incident Manager. +// +// Retrieves details about all specified findings for an incident, including +// descriptive details about each finding. A finding represents a recent application +// environment change made by an CodeDeploy deployment or an CloudFormation +// stack creation or update that can be investigated as a potential cause of +// the incident. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Systems Manager Incident Manager's +// API operation BatchGetIncidentFindings for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which doesn't exist. +// +// - AccessDeniedException +// You don't have sufficient access to perform this operation. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-incidents-2018-05-10/BatchGetIncidentFindings +func (c *SSMIncidents) BatchGetIncidentFindings(input *BatchGetIncidentFindingsInput) (*BatchGetIncidentFindingsOutput, error) { + req, out := c.BatchGetIncidentFindingsRequest(input) + return out, req.Send() +} + +// BatchGetIncidentFindingsWithContext is the same as BatchGetIncidentFindings with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetIncidentFindings 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 *SSMIncidents) BatchGetIncidentFindingsWithContext(ctx aws.Context, input *BatchGetIncidentFindingsInput, opts ...request.Option) (*BatchGetIncidentFindingsOutput, error) { + req, out := c.BatchGetIncidentFindingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateReplicationSet = "CreateReplicationSet" // CreateReplicationSetRequest generates a "aws/request.Request" representing the @@ -1294,6 +1391,160 @@ return out, req.Send() } +const opListIncidentFindings = "ListIncidentFindings" + +// ListIncidentFindingsRequest generates a "aws/request.Request" representing the +// client's request for the ListIncidentFindings 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 ListIncidentFindings for more information on using the ListIncidentFindings +// 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 ListIncidentFindingsRequest method. +// req, resp := client.ListIncidentFindingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-incidents-2018-05-10/ListIncidentFindings +func (c *SSMIncidents) ListIncidentFindingsRequest(input *ListIncidentFindingsInput) (req *request.Request, output *ListIncidentFindingsOutput) { + op := &request.Operation{ + Name: opListIncidentFindings, + HTTPMethod: "POST", + HTTPPath: "/listIncidentFindings", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIncidentFindingsInput{} + } + + output = &ListIncidentFindingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIncidentFindings API operation for AWS Systems Manager Incident Manager. +// +// Retrieves a list of the IDs of findings, plus their last modified times, +// that have been identified for a specified incident. A finding represents +// a recent application environment change made by an CloudFormation stack creation +// or update or an CodeDeploy deployment that can be investigated as a potential +// cause of the incident. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Systems Manager Incident Manager's +// API operation ListIncidentFindings for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which doesn't exist. +// +// - AccessDeniedException +// You don't have sufficient access to perform this operation. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-incidents-2018-05-10/ListIncidentFindings +func (c *SSMIncidents) ListIncidentFindings(input *ListIncidentFindingsInput) (*ListIncidentFindingsOutput, error) { + req, out := c.ListIncidentFindingsRequest(input) + return out, req.Send() +} + +// ListIncidentFindingsWithContext is the same as ListIncidentFindings with the addition of +// the ability to pass a context and additional request options. +// +// See ListIncidentFindings 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 *SSMIncidents) ListIncidentFindingsWithContext(ctx aws.Context, input *ListIncidentFindingsInput, opts ...request.Option) (*ListIncidentFindingsOutput, error) { + req, out := c.ListIncidentFindingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIncidentFindingsPages iterates over the pages of a ListIncidentFindings operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIncidentFindings 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 ListIncidentFindings operation. +// pageNum := 0 +// err := client.ListIncidentFindingsPages(params, +// func(page *ssmincidents.ListIncidentFindingsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSMIncidents) ListIncidentFindingsPages(input *ListIncidentFindingsInput, fn func(*ListIncidentFindingsOutput, bool) bool) error { + return c.ListIncidentFindingsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIncidentFindingsPagesWithContext same as ListIncidentFindingsPages 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 *SSMIncidents) ListIncidentFindingsPagesWithContext(ctx aws.Context, input *ListIncidentFindingsInput, fn func(*ListIncidentFindingsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListIncidentFindingsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListIncidentFindingsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListIncidentFindingsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListIncidentRecords = "ListIncidentRecords" // ListIncidentRecordsRequest generates a "aws/request.Request" representing the @@ -1926,7 +2177,7 @@ // ListTagsForResource API operation for AWS Systems Manager Incident Manager. // -// Lists the tags that are attached to the specified response plan. +// Lists the tags that are attached to the specified response plan or incident. // // 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 @@ -3339,6 +3590,170 @@ return s } +// Details about an error returned for a BatchGetIncidentFindings operation. +type BatchGetIncidentFindingsError struct { + _ struct{} `type:"structure"` + + // The code associated with an error that was returned for a BatchGetIncidentFindings + // operation. + // + // Code is a required field + Code *string `locationName:"code" type:"string" required:"true"` + + // The ID of a specified finding for which an error was returned for a BatchGetIncidentFindings + // operation. + // + // FindingId is a required field + FindingId *string `locationName:"findingId" type:"string" required:"true"` + + // The description for an error that was returned for a BatchGetIncidentFindings + // operation. + // + // Message is a required field + Message *string `locationName:"message" 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 BatchGetIncidentFindingsError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetIncidentFindingsError) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *BatchGetIncidentFindingsError) SetCode(v string) *BatchGetIncidentFindingsError { + s.Code = &v + return s +} + +// SetFindingId sets the FindingId field's value. +func (s *BatchGetIncidentFindingsError) SetFindingId(v string) *BatchGetIncidentFindingsError { + s.FindingId = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *BatchGetIncidentFindingsError) SetMessage(v string) *BatchGetIncidentFindingsError { + s.Message = &v + return s +} + +type BatchGetIncidentFindingsInput struct { + _ struct{} `type:"structure"` + + // A list of IDs of findings for which you want to view details. + // + // FindingIds is a required field + FindingIds []*string `locationName:"findingIds" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of the incident for which you want to view + // finding details. + // + // IncidentRecordArn is a required field + IncidentRecordArn *string `locationName:"incidentRecordArn" 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 BatchGetIncidentFindingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetIncidentFindingsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetIncidentFindingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetIncidentFindingsInput"} + if s.FindingIds == nil { + invalidParams.Add(request.NewErrParamRequired("FindingIds")) + } + if s.IncidentRecordArn == nil { + invalidParams.Add(request.NewErrParamRequired("IncidentRecordArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFindingIds sets the FindingIds field's value. +func (s *BatchGetIncidentFindingsInput) SetFindingIds(v []*string) *BatchGetIncidentFindingsInput { + s.FindingIds = v + return s +} + +// SetIncidentRecordArn sets the IncidentRecordArn field's value. +func (s *BatchGetIncidentFindingsInput) SetIncidentRecordArn(v string) *BatchGetIncidentFindingsInput { + s.IncidentRecordArn = &v + return s +} + +type BatchGetIncidentFindingsOutput struct { + _ struct{} `type:"structure"` + + // A list of errors encountered during the operation. + // + // Errors is a required field + Errors []*BatchGetIncidentFindingsError `locationName:"errors" type:"list" required:"true"` + + // Information about the requested findings. + // + // Findings is a required field + Findings []*Finding `locationName:"findings" 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 BatchGetIncidentFindingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetIncidentFindingsOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *BatchGetIncidentFindingsOutput) SetErrors(v []*BatchGetIncidentFindingsError) *BatchGetIncidentFindingsOutput { + s.Errors = v + return s +} + +// SetFindings sets the Findings field's value. +func (s *BatchGetIncidentFindingsOutput) SetFindings(v []*Finding) *BatchGetIncidentFindingsOutput { + s.Findings = v + return s +} + // The Chatbot chat channel used for collaboration during an incident. type ChatChannel struct { _ struct{} `type:"structure"` @@ -3395,6 +3810,131 @@ return s } +// Information about an CloudFormation stack creation or update that occurred +// around the time of an incident and could be a potential cause of the incident. +type CloudFormationStackUpdate struct { + _ struct{} `type:"structure"` + + // The timestamp for when the CloudFormation stack creation or update ended. + // Not reported for deployments that are still in progress. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The Amazon Resource Name (ARN) of the CloudFormation stack involved in the + // update. + // + // StackArn is a required field + StackArn *string `locationName:"stackArn" type:"string" required:"true"` + + // The timestamp for when the CloudFormation stack creation or update began. + // + // StartTime is a required field + StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudFormationStackUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudFormationStackUpdate) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *CloudFormationStackUpdate) SetEndTime(v time.Time) *CloudFormationStackUpdate { + s.EndTime = &v + return s +} + +// SetStackArn sets the StackArn field's value. +func (s *CloudFormationStackUpdate) SetStackArn(v string) *CloudFormationStackUpdate { + s.StackArn = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CloudFormationStackUpdate) SetStartTime(v time.Time) *CloudFormationStackUpdate { + s.StartTime = &v + return s +} + +// Information about a CodeDeploy deployment that occurred around the time of +// an incident and could be a possible cause of the incident. +type CodeDeployDeployment struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the CodeDeploy deployment group associated + // with the deployment. + // + // DeploymentGroupArn is a required field + DeploymentGroupArn *string `locationName:"deploymentGroupArn" type:"string" required:"true"` + + // The ID of the CodeDeploy deployment. + // + // DeploymentId is a required field + DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` + + // The timestamp for when the CodeDeploy deployment ended. Not reported for + // deployments that are still in progress. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The timestamp for when the CodeDeploy deployment began. + // + // StartTime is a required field + StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodeDeployDeployment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodeDeployDeployment) GoString() string { + return s.String() +} + +// SetDeploymentGroupArn sets the DeploymentGroupArn field's value. +func (s *CodeDeployDeployment) SetDeploymentGroupArn(v string) *CodeDeployDeployment { + s.DeploymentGroupArn = &v + return s +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *CodeDeployDeployment) SetDeploymentId(v string) *CodeDeployDeployment { + s.DeploymentId = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *CodeDeployDeployment) SetEndTime(v time.Time) *CodeDeployDeployment { + s.EndTime = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CodeDeployDeployment) SetStartTime(v time.Time) *CodeDeployDeployment { + s.StartTime = &v + return s +} + // A conditional statement with which to compare a value, after a timestamp, // before a timestamp, or equal to a string or integer. If multiple conditions // are specified, the conditionals become an ANDed statement. If multiple values @@ -3841,12 +4381,17 @@ // a related item. EventReferences []*EventReference `locationName:"eventReferences" type:"list"` - // The time that the event occurred. + // The timestamp for when the event occurred. // // EventTime is a required field EventTime *time.Time `locationName:"eventTime" type:"timestamp" required:"true"` - // The type of event. You can create timeline events of type Custom Event. + // The type of event. You can create timeline events of type Custom Event and + // Note. + // + // To make a Note-type event appear on the Incident notes panel in the console, + // specify eventType as Noteand enter the Amazon Resource Name (ARN) of the + // incident as the value for eventReference. // // EventType is a required field EventType *string `locationName:"eventType" type:"string" required:"true"` @@ -4510,17 +5055,17 @@ // A list of references in a TimelineEvent. EventReferences []*EventReference `locationName:"eventReferences" type:"list"` - // The time that the event occurred. + // The timestamp for when the event occurred. // // EventTime is a required field EventTime *time.Time `locationName:"eventTime" type:"timestamp" required:"true"` - // The type of event. The timeline event must be Custom Event. + // The type of event. The timeline event must be Custom Event or Note. // // EventType is a required field EventType *string `locationName:"eventType" type:"string" required:"true"` - // The time that the timeline event was last updated. + // The timestamp for when the timeline event was last updated. // // EventUpdatedTime is a required field EventUpdatedTime *time.Time `locationName:"eventUpdatedTime" type:"timestamp" required:"true"` @@ -4647,6 +5192,161 @@ return s } +// Information about a specific CodeDeploy deployment or CloudFormation stack +// creation or update that occurred around the time of a reported incident. +// These activities can be investigated as a potential cause of the incident. +type Finding struct { + _ struct{} `type:"structure"` + + // The timestamp for when a finding was created. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // Details about the finding. + Details *FindingDetails `locationName:"details" type:"structure"` + + // The ID assigned to the finding. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp for when the finding was most recently updated with additional + // information. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Finding) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Finding) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *Finding) SetCreationTime(v time.Time) *Finding { + s.CreationTime = &v + return s +} + +// SetDetails sets the Details field's value. +func (s *Finding) SetDetails(v *FindingDetails) *Finding { + s.Details = v + return s +} + +// SetId sets the Id field's value. +func (s *Finding) SetId(v string) *Finding { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *Finding) SetLastModifiedTime(v time.Time) *Finding { + s.LastModifiedTime = &v + return s +} + +// Extended textual information about the finding. +type FindingDetails struct { + _ struct{} `type:"structure"` + + // Information about the CloudFormation stack creation or update associated + // with the finding. + CloudFormationStackUpdate *CloudFormationStackUpdate `locationName:"cloudFormationStackUpdate" type:"structure"` + + // Information about the CodeDeploy deployment associated with the finding. + CodeDeployDeployment *CodeDeployDeployment `locationName:"codeDeployDeployment" 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 FindingDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FindingDetails) GoString() string { + return s.String() +} + +// SetCloudFormationStackUpdate sets the CloudFormationStackUpdate field's value. +func (s *FindingDetails) SetCloudFormationStackUpdate(v *CloudFormationStackUpdate) *FindingDetails { + s.CloudFormationStackUpdate = v + return s +} + +// SetCodeDeployDeployment sets the CodeDeployDeployment field's value. +func (s *FindingDetails) SetCodeDeployDeployment(v *CodeDeployDeployment) *FindingDetails { + s.CodeDeployDeployment = v + return s +} + +// Identifying information about the finding. +type FindingSummary struct { + _ struct{} `type:"structure"` + + // The ID of the finding. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The timestamp for when the finding was last updated. + // + // LastModifiedTime is a required field + LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FindingSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FindingSummary) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *FindingSummary) SetId(v string) *FindingSummary { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *FindingSummary) SetLastModifiedTime(v time.Time) *FindingSummary { + s.LastModifiedTime = &v + return s +} + type GetIncidentRecordInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4811,7 +5511,8 @@ // The maximum number of resource policies to display for each page of results. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The pagination token to continue to the next page of results. + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) NextToken *string `locationName:"nextToken" type:"string"` // The Amazon Resource Name (ARN) of the response plan with the attached resource @@ -4876,7 +5577,8 @@ type GetResourcePoliciesOutput struct { _ struct{} `type:"structure"` - // The pagination token to continue to the next page of results. + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. NextToken *string `locationName:"nextToken" type:"string"` // Details about the resource policy attached to the response plan. @@ -5173,7 +5875,7 @@ // The chat channel used for collaboration during an incident. ChatChannel *ChatChannel `locationName:"chatChannel" type:"structure"` - // The time that Incident Manager created the incident record. + // The timestamp for when Incident Manager created the incident record. // // CreationTime is a required field CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` @@ -5186,6 +5888,18 @@ // The impact of the incident on customers and applications. // + // Supported impact codes + // + // * 1 - Critical + // + // * 2 - High + // + // * 3 - Medium + // + // * 4 - Low + // + // * 5 - No Impact + // // Impact is a required field Impact *int64 `locationName:"impact" min:"1" type:"integer" required:"true"` @@ -5199,7 +5913,7 @@ // LastModifiedBy is a required field LastModifiedBy *string `locationName:"lastModifiedBy" type:"string" required:"true"` - // The time at which the incident was most recently modified. + // The timestamp for when the incident was most recently modified. // // LastModifiedTime is a required field LastModifiedTime *time.Time `locationName:"lastModifiedTime" type:"timestamp" required:"true"` @@ -5207,7 +5921,8 @@ // The Amazon SNS targets that are notified when updates are made to an incident. NotificationTargets []*NotificationTargetItem `locationName:"notificationTargets" type:"list"` - // The time at which the incident was resolved. This appears as a timeline event. + // The timestamp for when the incident was resolved. This appears as a timeline + // event. ResolvedTime *time.Time `locationName:"resolvedTime" type:"timestamp"` // The current status of the incident. @@ -5402,7 +6117,7 @@ // Arn is a required field Arn *string `locationName:"arn" type:"string" required:"true"` - // The time the incident was created. + // The timestamp for when the incident was created. // // CreationTime is a required field CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` @@ -5417,7 +6132,7 @@ // IncidentRecordSource is a required field IncidentRecordSource *IncidentRecordSource `locationName:"incidentRecordSource" type:"structure" required:"true"` - // The time the incident was resolved. + // The timestamp for when the incident was resolved. ResolvedTime *time.Time `locationName:"resolvedTime" type:"timestamp"` // The current status of the incident. @@ -5497,12 +6212,35 @@ type IncidentTemplate struct { _ struct{} `type:"structure"` - // Used to stop Incident Manager from creating multiple incident records for - // the same incident. + // The string Incident Manager uses to prevent the same root cause from creating + // multiple incidents in the same account. + // + // A deduplication string is a term or phrase the system uses to check for duplicate + // incidents. If you specify a deduplication string, Incident Manager searches + // for open incidents that contain the same string in the dedupeString field + // when it creates the incident. If a duplicate is detected, Incident Manager + // deduplicates the newer incident into the existing incident. + // + // By default, Incident Manager automatically deduplicates multiple incidents + // created by the same Amazon CloudWatch alarm or Amazon EventBridge event. + // You don't have to enter your own deduplication string to prevent duplication + // for these resource types. DedupeString *string `locationName:"dedupeString" type:"string"` // The impact of the incident on your customers and applications. // + // Supported impact codes + // + // * 1 - Critical + // + // * 2 - High + // + // * 3 - Medium + // + // * 4 - Low + // + // * 5 - No Impact + // // Impact is a required field Impact *int64 `locationName:"impact" min:"1" type:"integer" required:"true"` @@ -5853,6 +6591,119 @@ return s } +type ListIncidentFindingsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the incident for which you want to view + // associated findings. + // + // IncidentRecordArn is a required field + IncidentRecordArn *string `locationName:"incidentRecordArn" type:"string" required:"true"` + + // The maximum number of findings to retrieve per call. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) + 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 ListIncidentFindingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIncidentFindingsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIncidentFindingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIncidentFindingsInput"} + if s.IncidentRecordArn == nil { + invalidParams.Add(request.NewErrParamRequired("IncidentRecordArn")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncidentRecordArn sets the IncidentRecordArn field's value. +func (s *ListIncidentFindingsInput) SetIncidentRecordArn(v string) *ListIncidentFindingsInput { + s.IncidentRecordArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIncidentFindingsInput) SetMaxResults(v int64) *ListIncidentFindingsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIncidentFindingsInput) SetNextToken(v string) *ListIncidentFindingsInput { + s.NextToken = &v + return s +} + +type ListIncidentFindingsOutput struct { + _ struct{} `type:"structure"` + + // A list of findings that represent deployments that might be the potential + // cause of the incident. + // + // Findings is a required field + Findings []*FindingSummary `locationName:"findings" type:"list" required:"true"` + + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. + 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 ListIncidentFindingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIncidentFindingsOutput) GoString() string { + return s.String() +} + +// SetFindings sets the Findings field's value. +func (s *ListIncidentFindingsOutput) SetFindings(v []*FindingSummary) *ListIncidentFindingsOutput { + s.Findings = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIncidentFindingsOutput) SetNextToken(v string) *ListIncidentFindingsOutput { + s.NextToken = &v + return s +} + type ListIncidentRecordsInput struct { _ struct{} `type:"structure"` @@ -5881,7 +6732,8 @@ // The maximum number of results per page. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The pagination token to continue to the next page of results. + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) NextToken *string `locationName:"nextToken" type:"string"` } @@ -5952,7 +6804,8 @@ // IncidentRecordSummaries is a required field IncidentRecordSummaries []*IncidentRecordSummary `locationName:"incidentRecordSummaries" type:"list" required:"true"` - // The pagination token to continue to the next page of results. + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. NextToken *string `locationName:"nextToken" type:"string"` } @@ -5998,7 +6851,8 @@ // The maximum number of related items per page. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The pagination token to continue to the next page of results. + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) NextToken *string `locationName:"nextToken" type:"string"` } @@ -6057,7 +6911,8 @@ type ListRelatedItemsOutput struct { _ struct{} `type:"structure"` - // The pagination token to continue to the next page of results. + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. NextToken *string `locationName:"nextToken" type:"string"` // Details about each related item. @@ -6102,7 +6957,8 @@ // The maximum number of results per page. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The pagination token to continue to the next page of results. + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) NextToken *string `locationName:"nextToken" type:"string"` } @@ -6152,7 +7008,8 @@ type ListReplicationSetsOutput struct { _ struct{} `type:"structure"` - // The pagination token to continue to the next page of results. + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. NextToken *string `locationName:"nextToken" type:"string"` // The Amazon Resource Name (ARN) of the list replication set. @@ -6197,7 +7054,8 @@ // The maximum number of response plans per page. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The pagination token to continue to the next page of results. + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) NextToken *string `locationName:"nextToken" type:"string"` } @@ -6247,7 +7105,8 @@ type ListResponsePlansOutput struct { _ struct{} `type:"structure"` - // The pagination token to continue to the next page of results. + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. NextToken *string `locationName:"nextToken" type:"string"` // Details of each response plan. @@ -6289,7 +7148,7 @@ type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The Amazon Resource Name (ARN) of the response plan. + // The Amazon Resource Name (ARN) of the response plan or incident. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` @@ -6338,7 +7197,7 @@ type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` - // A list of tags for the response plan. + // A list of tags for the response plan or incident. // // Tags is a required field Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"` @@ -6374,6 +7233,8 @@ // Filters the timeline events based on the provided conditional values. You // can filter timeline events with the following keys: // + // * eventReference + // // * eventTime // // * eventType @@ -6398,7 +7259,8 @@ // The maximum number of results per page. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // The pagination token to continue to the next page of results. + // The pagination token for the next set of items to return. (You received this + // token from a previous call.) NextToken *string `locationName:"nextToken" type:"string"` // Sort timeline events by the specified key value pair. @@ -6496,7 +7358,8 @@ // EventSummaries is a required field EventSummaries []*EventSummary `locationName:"eventSummaries" type:"list" required:"true"` - // The pagination token to continue to the next page of results. + // The pagination token to use when requesting the next set of items. If there + // are no additional items to return, the string is null. NextToken *string `locationName:"nextToken" type:"string"` } @@ -6887,8 +7750,8 @@ // Information displayed about the status of the Amazon Web Services Region. StatusMessage *string `locationName:"statusMessage" type:"string"` - // The most recent date and time that Incident Manager updated the Amazon Web - // Services Region's status. + // The timestamp for when Incident Manager updated the status of the Amazon + // Web Services Region. // // StatusUpdateDateTime is a required field StatusUpdateDateTime *time.Time `locationName:"statusUpdateDateTime" type:"timestamp" required:"true"` @@ -7595,19 +8458,17 @@ // Defines the impact to the customers. Providing an impact overwrites the impact // provided by a response plan. // - // Possible impacts: + // Supported impact codes // - // * 1 - Critical impact, this typically relates to full application failure - // that impacts many to all customers. + // * 1 - Critical // - // * 2 - High impact, partial application failure with impact to many customers. + // * 2 - High // - // * 3 - Medium impact, the application is providing reduced service to customers. + // * 3 - Medium // - // * 4 - Low impact, customer might aren't impacted by the problem yet. + // * 4 - Low // - // * 5 - No impact, customers aren't currently impacted but urgent action - // is needed to avoid impact. + // * 5 - No Impact Impact *int64 `locationName:"impact" min:"1" type:"integer"` // Add related items to the incident for other responders to use. Related items @@ -7927,18 +8788,18 @@ // A list of references in a TimelineEvent. EventReferences []*EventReference `locationName:"eventReferences" type:"list"` - // The time that the event occurred. + // The timestamp for when the event occurred. // // EventTime is a required field EventTime *time.Time `locationName:"eventTime" type:"timestamp" required:"true"` // The type of event that occurred. Currently Incident Manager supports only - // the Custom Event type. + // the Custom Event and Note types. // // EventType is a required field EventType *string `locationName:"eventType" type:"string" required:"true"` - // The time that the timeline event was last updated. + // The timestamp for when the timeline event was last updated. // // EventUpdatedTime is a required field EventUpdatedTime *time.Time `locationName:"eventUpdatedTime" type:"timestamp" required:"true"` @@ -8025,7 +8886,7 @@ // Source is a required field Source *string `locationName:"source" type:"string" required:"true"` - // The time that the incident was detected. + // The timestamp for when the incident was detected. // // Timestamp is a required field Timestamp *time.Time `locationName:"timestamp" type:"timestamp" required:"true"` @@ -8292,19 +9153,17 @@ // provide an impact for an incident, it overwrites the impact provided by the // response plan. // - // Possible impacts: + // Supported impact codes // - // * 1 - Critical impact, full application failure that impacts many to all - // customers. + // * 1 - Critical // - // * 2 - High impact, partial application failure with impact to many customers. + // * 2 - High // - // * 3 - Medium impact, the application is providing reduced service to customers. + // * 3 - Medium // - // * 4 - Low impact, customer aren't impacted by the problem yet. + // * 4 - Low // - // * 5 - No impact, customers aren't currently impacted but urgent action - // is needed to avoid impact. + // * 5 - No Impact Impact *int64 `locationName:"impact" min:"1" type:"integer"` // The Amazon SNS targets that Incident Manager notifies when a client updates @@ -8734,17 +9593,17 @@ // Defines the impact to the customers. Providing an impact overwrites the impact // provided by a response plan. // - // Possible impacts: + // Supported impact codes // - // * 5 - Severe impact + // * 1 - Critical // - // * 4 - High impact + // * 2 - High // - // * 3 - Medium impact + // * 3 - Medium // - // * 2 - Low impact + // * 4 - Low // - // * 1 - No impact + // * 5 - No Impact IncidentTemplateImpact *int64 `locationName:"incidentTemplateImpact" min:"1" type:"integer"` // The Amazon SNS targets that are notified when updates are made to an incident. @@ -8955,10 +9814,10 @@ // action removes any existing references and enters only new references. EventReferences []*EventReference `locationName:"eventReferences" type:"list"` - // The time that the event occurred. + // The timestamp for when the event occurred. EventTime *time.Time `locationName:"eventTime" type:"timestamp"` - // The type of event. You can update events of type Custom Event. + // The type of event. You can update events of type Custom Event and Note. EventType *string `locationName:"eventType" type:"string"` // The Amazon Resource Name (ARN) of the incident that includes the timeline diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssmincidents/ssmincidentsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ssmincidents/ssmincidentsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssmincidents/ssmincidentsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssmincidents/ssmincidentsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // AWS Systems Manager Incident Manager. // func myFunc(svc ssmincidentsiface.SSMIncidentsAPI) bool { -// // Make svc.CreateReplicationSet request +// // Make svc.BatchGetIncidentFindings request // } // // func main() { @@ -42,7 +42,7 @@ // type mockSSMIncidentsClient struct { // ssmincidentsiface.SSMIncidentsAPI // } -// func (m *mockSSMIncidentsClient) CreateReplicationSet(input *ssmincidents.CreateReplicationSetInput) (*ssmincidents.CreateReplicationSetOutput, error) { +// func (m *mockSSMIncidentsClient) BatchGetIncidentFindings(input *ssmincidents.BatchGetIncidentFindingsInput) (*ssmincidents.BatchGetIncidentFindingsOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SSMIncidentsAPI interface { + BatchGetIncidentFindings(*ssmincidents.BatchGetIncidentFindingsInput) (*ssmincidents.BatchGetIncidentFindingsOutput, error) + BatchGetIncidentFindingsWithContext(aws.Context, *ssmincidents.BatchGetIncidentFindingsInput, ...request.Option) (*ssmincidents.BatchGetIncidentFindingsOutput, error) + BatchGetIncidentFindingsRequest(*ssmincidents.BatchGetIncidentFindingsInput) (*request.Request, *ssmincidents.BatchGetIncidentFindingsOutput) + CreateReplicationSet(*ssmincidents.CreateReplicationSetInput) (*ssmincidents.CreateReplicationSetOutput, error) CreateReplicationSetWithContext(aws.Context, *ssmincidents.CreateReplicationSetInput, ...request.Option) (*ssmincidents.CreateReplicationSetOutput, error) CreateReplicationSetRequest(*ssmincidents.CreateReplicationSetInput) (*request.Request, *ssmincidents.CreateReplicationSetOutput) @@ -115,6 +119,13 @@ GetTimelineEventWithContext(aws.Context, *ssmincidents.GetTimelineEventInput, ...request.Option) (*ssmincidents.GetTimelineEventOutput, error) GetTimelineEventRequest(*ssmincidents.GetTimelineEventInput) (*request.Request, *ssmincidents.GetTimelineEventOutput) + ListIncidentFindings(*ssmincidents.ListIncidentFindingsInput) (*ssmincidents.ListIncidentFindingsOutput, error) + ListIncidentFindingsWithContext(aws.Context, *ssmincidents.ListIncidentFindingsInput, ...request.Option) (*ssmincidents.ListIncidentFindingsOutput, error) + ListIncidentFindingsRequest(*ssmincidents.ListIncidentFindingsInput) (*request.Request, *ssmincidents.ListIncidentFindingsOutput) + + ListIncidentFindingsPages(*ssmincidents.ListIncidentFindingsInput, func(*ssmincidents.ListIncidentFindingsOutput, bool) bool) error + ListIncidentFindingsPagesWithContext(aws.Context, *ssmincidents.ListIncidentFindingsInput, func(*ssmincidents.ListIncidentFindingsOutput, bool) bool, ...request.Option) error + ListIncidentRecords(*ssmincidents.ListIncidentRecordsInput) (*ssmincidents.ListIncidentRecordsOutput, error) ListIncidentRecordsWithContext(aws.Context, *ssmincidents.ListIncidentRecordsInput, ...request.Option) (*ssmincidents.ListIncidentRecordsOutput, error) ListIncidentRecordsRequest(*ssmincidents.ListIncidentRecordsInput) (*request.Request, *ssmincidents.ListIncidentRecordsOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssmsap/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ssmsap/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssmsap/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssmsap/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -154,6 +154,9 @@ // // Returned Error Types: // +// - UnauthorizedException +// The request is not authorized. +// // - ValidationException // The input fails to satisfy the constraints specified by an AWS service. // @@ -320,6 +323,9 @@ // // Returned Error Types: // +// - UnauthorizedException +// The request is not authorized. +// // - ValidationException // The input fails to satisfy the constraints specified by an AWS service. // @@ -800,6 +806,9 @@ // // Returned Error Types: // +// - UnauthorizedException +// The request is not authorized. +// // - ResourceNotFoundException // The resource is not available. // @@ -1399,6 +1408,9 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// The resource is not available. +// // - ValidationException // The input fails to satisfy the constraints specified by an AWS service. // @@ -1484,6 +1496,9 @@ // // Returned Error Types: // +// - UnauthorizedException +// The request is not authorized. +// // - ResourceNotFoundException // The resource is not available. // @@ -1745,6 +1760,9 @@ // // Returned Error Types: // +// - UnauthorizedException +// The request is not authorized. +// // - ResourceNotFoundException // The resource is not available. // @@ -1977,6 +1995,9 @@ // The Amazon Resource Name (ARN) of the application. Arn *string `type:"string"` + // The status of the latest discovery. + DiscoveryStatus *string `type:"string" enum:"ApplicationDiscoveryStatus"` + // The ID of the application. Id *string `type:"string"` @@ -2011,6 +2032,12 @@ return s } +// SetDiscoveryStatus sets the DiscoveryStatus field's value. +func (s *ApplicationSummary) SetDiscoveryStatus(v string) *ApplicationSummary { + s.DiscoveryStatus = &v + return s +} + // SetId sets the Id field's value. func (s *ApplicationSummary) SetId(v string) *ApplicationSummary { s.Id = &v @@ -2039,6 +2066,9 @@ // The name of the host. Hostname *string `type:"string"` + // The IP addresses of the associated host. + IpAddresses []*IpAddressMember `type:"list"` + // The version of the operating system. OsVersion *string `type:"string"` } @@ -2073,6 +2103,12 @@ return s } +// SetIpAddresses sets the IpAddresses field's value. +func (s *AssociatedHost) SetIpAddresses(v []*IpAddressMember) *AssociatedHost { + s.IpAddresses = v + return s +} + // SetOsVersion sets the OsVersion field's value. func (s *AssociatedHost) SetOsVersion(v string) *AssociatedHost { s.OsVersion = &v @@ -2163,6 +2199,9 @@ // The type of the component. ComponentType *string `type:"string" enum:"ComponentType"` + // The connection specifications for the database of the component. + DatabaseConnection *DatabaseConnection `type:"structure"` + // The SAP HANA databases of the component. Databases []*string `type:"list"` @@ -2190,14 +2229,40 @@ // Details of the SAP HANA system replication for the component. Resilience *Resilience `type:"structure"` + // The SAP feature of the component. + SapFeature *string `type:"string"` + // The hostname of the component. SapHostname *string `type:"string"` // The kernel version of the component. SapKernelVersion *string `type:"string"` + // The SAP System Identifier of the application component. + Sid *string `type:"string"` + // The status of the component. + // + // * ACTIVATED - this status has been deprecated. + // + // * STARTING - the component is in the process of being started. + // + // * STOPPED - the component is not running. + // + // * STOPPING - the component is in the process of being stopped. + // + // * RUNNING - the component is running. + // + // * RUNNING_WITH_ERROR - one or more child component(s) of the parent component + // is not running. Call GetComponent (https://docs.aws.amazon.com/ssmsap/latest/APIReference/API_GetComponent.html) + // to review the status of each child component. + // + // * UNDEFINED - AWS Systems Manager for SAP cannot provide the component + // status based on the discovered information. Verify your SAP application. Status *string `type:"string" enum:"ComponentStatus"` + + // The SAP system number of the application component. + SystemNumber *string `type:"string"` } // String returns the string representation. @@ -2254,6 +2319,12 @@ return s } +// SetDatabaseConnection sets the DatabaseConnection field's value. +func (s *Component) SetDatabaseConnection(v *DatabaseConnection) *Component { + s.DatabaseConnection = v + return s +} + // SetDatabases sets the Databases field's value. func (s *Component) SetDatabases(v []*string) *Component { s.Databases = v @@ -2296,6 +2367,12 @@ return s } +// SetSapFeature sets the SapFeature field's value. +func (s *Component) SetSapFeature(v string) *Component { + s.SapFeature = &v + return s +} + // SetSapHostname sets the SapHostname field's value. func (s *Component) SetSapHostname(v string) *Component { s.SapHostname = &v @@ -2308,12 +2385,24 @@ return s } +// SetSid sets the Sid field's value. +func (s *Component) SetSid(v string) *Component { + s.Sid = &v + return s +} + // SetStatus sets the Status field's value. func (s *Component) SetStatus(v string) *Component { s.Status = &v return s } +// SetSystemNumber sets the SystemNumber field's value. +func (s *Component) SetSystemNumber(v string) *Component { + s.SystemNumber = &v + return s +} + // The summary of the component. type ComponentSummary struct { _ struct{} `type:"structure"` @@ -2461,7 +2550,7 @@ ComponentId *string `type:"string"` // The credentials of the database. - Credentials []*ApplicationCredential `min:"1" type:"list"` + Credentials []*ApplicationCredential `type:"list"` // The ID of the SAP HANA database. DatabaseId *string `type:"string"` @@ -2569,6 +2658,56 @@ return s } +// The connection specifications for the database. +type DatabaseConnection struct { + _ struct{} `type:"structure"` + + // The IP address for connection. + ConnectionIp *string `type:"string"` + + // The Amazon Resource Name of the connected SAP HANA database. + DatabaseArn *string `type:"string"` + + // The method of connection. + DatabaseConnectionMethod *string `type:"string" enum:"DatabaseConnectionMethod"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatabaseConnection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatabaseConnection) GoString() string { + return s.String() +} + +// SetConnectionIp sets the ConnectionIp field's value. +func (s *DatabaseConnection) SetConnectionIp(v string) *DatabaseConnection { + s.ConnectionIp = &v + return s +} + +// SetDatabaseArn sets the DatabaseArn field's value. +func (s *DatabaseConnection) SetDatabaseArn(v string) *DatabaseConnection { + s.DatabaseArn = &v + return s +} + +// SetDatabaseConnectionMethod sets the DatabaseConnectionMethod field's value. +func (s *DatabaseConnection) SetDatabaseConnectionMethod(v string) *DatabaseConnection { + s.DatabaseConnectionMethod = &v + return s +} + // The summary of the database. type DatabaseSummary struct { _ struct{} `type:"structure"` @@ -3483,9 +3622,62 @@ return s.RespMetadata.RequestID } +// Provides information of the IP address. +type IpAddressMember struct { + _ struct{} `type:"structure"` + + // The type of allocation for the IP address. + AllocationType *string `type:"string" enum:"AllocationType"` + + // The IP address. + IpAddress *string `type:"string"` + + // The primary IP address. + Primary *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 IpAddressMember) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IpAddressMember) GoString() string { + return s.String() +} + +// SetAllocationType sets the AllocationType field's value. +func (s *IpAddressMember) SetAllocationType(v string) *IpAddressMember { + s.AllocationType = &v + return s +} + +// SetIpAddress sets the IpAddress field's value. +func (s *IpAddressMember) SetIpAddress(v string) *IpAddressMember { + s.IpAddress = &v + return s +} + +// SetPrimary sets the Primary field's value. +func (s *IpAddressMember) SetPrimary(v bool) *IpAddressMember { + s.Primary = &v + return s +} + type ListApplicationsInput struct { _ struct{} `type:"structure"` + // The filter of name, value, and operator. + Filters []*Filter `min:"1" type:"list"` + // The maximum number of results to return with a single call. To retrieve the // remaining results, make another call with the returned nextToken value. MaxResults *int64 `min:"1" type:"integer"` @@ -3515,9 +3707,22 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *ListApplicationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -3525,6 +3730,12 @@ return nil } +// SetFilters sets the Filters field's value. +func (s *ListApplicationsInput) SetFilters(v []*Filter) *ListApplicationsInput { + s.Filters = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput { s.MaxResults = &v @@ -4246,9 +4457,10 @@ ApplicationType *string `type:"string" required:"true" enum:"ApplicationType"` // The credentials of the SAP application. - // - // Credentials is a required field - Credentials []*ApplicationCredential `min:"1" type:"list" required:"true"` + Credentials []*ApplicationCredential `type:"list"` + + // The Amazon Resource Name of the SAP HANA database. + DatabaseArn *string `type:"string"` // The Amazon EC2 instances on which your SAP application is running. // @@ -4292,12 +4504,6 @@ if s.ApplicationType == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationType")) } - if s.Credentials == nil { - invalidParams.Add(request.NewErrParamRequired("Credentials")) - } - if s.Credentials != nil && len(s.Credentials) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Credentials", 1)) - } if s.Instances == nil { invalidParams.Add(request.NewErrParamRequired("Instances")) } @@ -4339,6 +4545,12 @@ return s } +// SetDatabaseArn sets the DatabaseArn field's value. +func (s *RegisterApplicationInput) SetDatabaseArn(v string) *RegisterApplicationInput { + s.DatabaseArn = &v + return s +} + // SetInstances sets the Instances field's value. func (s *RegisterApplicationInput) SetInstances(v []*string) *RegisterApplicationInput { s.Instances = v @@ -4410,6 +4622,9 @@ // The cluster status of the component. ClusterStatus *string `type:"string" enum:"ClusterStatus"` + // Indicates if or not enqueue replication is enabled for the ASCS component. + EnqueueReplication *bool `type:"boolean"` + // The operation mode of the component. HsrOperationMode *string `type:"string" enum:"OperationMode"` @@ -4444,6 +4659,12 @@ return s } +// SetEnqueueReplication sets the EnqueueReplication field's value. +func (s *Resilience) SetEnqueueReplication(v bool) *Resilience { + s.EnqueueReplication = &v + return s +} + // SetHsrOperationMode sets the HsrOperationMode field's value. func (s *Resilience) SetHsrOperationMode(v string) *Resilience { s.HsrOperationMode = &v @@ -4688,6 +4909,70 @@ return s.String() } +// The request is not authorized. +type UnauthorizedException 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 UnauthorizedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnauthorizedException) GoString() string { + return s.String() +} + +func newErrorUnauthorizedException(v protocol.ResponseMetadata) error { + return &UnauthorizedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *UnauthorizedException) Code() string { + return "UnauthorizedException" +} + +// Message returns the exception's message. +func (s *UnauthorizedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnauthorizedException) OrigErr() error { + return nil +} + +func (s *UnauthorizedException) 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 *UnauthorizedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnauthorizedException) RequestID() string { + return s.RespMetadata.RequestID +} + type UntagResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4786,10 +5071,14 @@ Backint *BackintConfig `type:"structure"` // The credentials to be added or updated. - CredentialsToAddOrUpdate []*ApplicationCredential `min:"1" type:"list"` + CredentialsToAddOrUpdate []*ApplicationCredential `type:"list"` // The credentials to be removed. - CredentialsToRemove []*ApplicationCredential `min:"1" type:"list"` + CredentialsToRemove []*ApplicationCredential `type:"list"` + + // The Amazon Resource Name of the SAP HANA database that replaces the current + // SAP HANA connection with the SAP_ABAP application. + DatabaseArn *string `type:"string"` } // String returns the string representation. @@ -4816,12 +5105,6 @@ if s.ApplicationId == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationId")) } - if s.CredentialsToAddOrUpdate != nil && len(s.CredentialsToAddOrUpdate) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CredentialsToAddOrUpdate", 1)) - } - if s.CredentialsToRemove != nil && len(s.CredentialsToRemove) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CredentialsToRemove", 1)) - } if s.Backint != nil { if err := s.Backint.Validate(); err != nil { invalidParams.AddNested("Backint", err.(request.ErrInvalidParams)) @@ -4878,6 +5161,12 @@ return s } +// SetDatabaseArn sets the DatabaseArn field's value. +func (s *UpdateApplicationSettingsInput) SetDatabaseArn(v string) *UpdateApplicationSettingsInput { + s.DatabaseArn = &v + return s +} + type UpdateApplicationSettingsOutput struct { _ struct{} `type:"structure"` @@ -4983,6 +5272,30 @@ } const ( + // AllocationTypeVpcSubnet is a AllocationType enum value + AllocationTypeVpcSubnet = "VPC_SUBNET" + + // AllocationTypeElasticIp is a AllocationType enum value + AllocationTypeElasticIp = "ELASTIC_IP" + + // AllocationTypeOverlay is a AllocationType enum value + AllocationTypeOverlay = "OVERLAY" + + // AllocationTypeUnknown is a AllocationType enum value + AllocationTypeUnknown = "UNKNOWN" +) + +// AllocationType_Values returns all elements of the AllocationType enum +func AllocationType_Values() []string { + return []string{ + AllocationTypeVpcSubnet, + AllocationTypeElasticIp, + AllocationTypeOverlay, + AllocationTypeUnknown, + } +} + +const ( // ApplicationDiscoveryStatusSuccess is a ApplicationDiscoveryStatus enum value ApplicationDiscoveryStatusSuccess = "SUCCESS" @@ -5053,12 +5366,16 @@ const ( // ApplicationTypeHana is a ApplicationType enum value ApplicationTypeHana = "HANA" + + // ApplicationTypeSapAbap is a ApplicationType enum value + ApplicationTypeSapAbap = "SAP_ABAP" ) // ApplicationType_Values returns all elements of the ApplicationType enum func ApplicationType_Values() []string { return []string{ ApplicationTypeHana, + ApplicationTypeSapAbap, } } @@ -5144,6 +5461,24 @@ // ComponentTypeHanaNode is a ComponentType enum value ComponentTypeHanaNode = "HANA_NODE" + + // ComponentTypeAbap is a ComponentType enum value + ComponentTypeAbap = "ABAP" + + // ComponentTypeAscs is a ComponentType enum value + ComponentTypeAscs = "ASCS" + + // ComponentTypeDialog is a ComponentType enum value + ComponentTypeDialog = "DIALOG" + + // ComponentTypeWebdisp is a ComponentType enum value + ComponentTypeWebdisp = "WEBDISP" + + // ComponentTypeWd is a ComponentType enum value + ComponentTypeWd = "WD" + + // ComponentTypeErs is a ComponentType enum value + ComponentTypeErs = "ERS" ) // ComponentType_Values returns all elements of the ComponentType enum @@ -5151,6 +5486,12 @@ return []string{ ComponentTypeHana, ComponentTypeHanaNode, + ComponentTypeAbap, + ComponentTypeAscs, + ComponentTypeDialog, + ComponentTypeWebdisp, + ComponentTypeWd, + ComponentTypeErs, } } @@ -5166,6 +5507,22 @@ } } +const ( + // DatabaseConnectionMethodDirect is a DatabaseConnectionMethod enum value + DatabaseConnectionMethodDirect = "DIRECT" + + // DatabaseConnectionMethodOverlay is a DatabaseConnectionMethod enum value + DatabaseConnectionMethodOverlay = "OVERLAY" +) + +// DatabaseConnectionMethod_Values returns all elements of the DatabaseConnectionMethod enum +func DatabaseConnectionMethod_Values() []string { + return []string{ + DatabaseConnectionMethodDirect, + DatabaseConnectionMethodOverlay, + } +} + const ( // DatabaseStatusRunning is a DatabaseStatus enum value DatabaseStatusRunning = "RUNNING" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssmsap/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/ssmsap/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssmsap/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssmsap/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,6 +26,12 @@ // The resource is not available. ErrCodeResourceNotFoundException = "ResourceNotFoundException" + // ErrCodeUnauthorizedException for service response error code + // "UnauthorizedException". + // + // The request is not authorized. + ErrCodeUnauthorizedException = "UnauthorizedException" + // ErrCodeValidationException for service response error code // "ValidationException". // @@ -37,5 +43,6 @@ "ConflictException": newErrorConflictException, "InternalServerException": newErrorInternalServerException, "ResourceNotFoundException": newErrorResourceNotFoundException, + "UnauthorizedException": newErrorUnauthorizedException, "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssoadmin/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ssoadmin/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssoadmin/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssoadmin/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -343,6 +343,322 @@ return out, req.Send() } +const opCreateApplication = "CreateApplication" + +// CreateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the CreateApplication 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 CreateApplication for more information on using the CreateApplication +// 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 CreateApplicationRequest method. +// req, resp := client.CreateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateApplication +func (c *SSOAdmin) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { + op := &request.Operation{ + Name: opCreateApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateApplicationInput{} + } + + output = &CreateApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateApplication API operation for AWS Single Sign-On Admin. +// +// Creates an application in IAM Identity Center for the given application provider. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation CreateApplication for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// Indicates that the principal has crossed the permitted number of resources +// that can be created. +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateApplication +func (c *SSOAdmin) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + return out, req.Send() +} + +// CreateApplicationWithContext is the same as CreateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See CreateApplication 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 *SSOAdmin) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateApplicationAssignment = "CreateApplicationAssignment" + +// CreateApplicationAssignmentRequest generates a "aws/request.Request" representing the +// client's request for the CreateApplicationAssignment 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 CreateApplicationAssignment for more information on using the CreateApplicationAssignment +// 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 CreateApplicationAssignmentRequest method. +// req, resp := client.CreateApplicationAssignmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateApplicationAssignment +func (c *SSOAdmin) CreateApplicationAssignmentRequest(input *CreateApplicationAssignmentInput) (req *request.Request, output *CreateApplicationAssignmentOutput) { + op := &request.Operation{ + Name: opCreateApplicationAssignment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateApplicationAssignmentInput{} + } + + output = &CreateApplicationAssignmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// CreateApplicationAssignment API operation for AWS Single Sign-On Admin. +// +// Grant application access to a user or group. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation CreateApplicationAssignment for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// Indicates that the principal has crossed the permitted number of resources +// that can be created. +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateApplicationAssignment +func (c *SSOAdmin) CreateApplicationAssignment(input *CreateApplicationAssignmentInput) (*CreateApplicationAssignmentOutput, error) { + req, out := c.CreateApplicationAssignmentRequest(input) + return out, req.Send() +} + +// CreateApplicationAssignmentWithContext is the same as CreateApplicationAssignment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateApplicationAssignment 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 *SSOAdmin) CreateApplicationAssignmentWithContext(ctx aws.Context, input *CreateApplicationAssignmentInput, opts ...request.Option) (*CreateApplicationAssignmentOutput, error) { + req, out := c.CreateApplicationAssignmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateInstance = "CreateInstance" + +// CreateInstanceRequest generates a "aws/request.Request" representing the +// client's request for the CreateInstance 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 CreateInstance for more information on using the CreateInstance +// 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 CreateInstanceRequest method. +// req, resp := client.CreateInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateInstance +func (c *SSOAdmin) CreateInstanceRequest(input *CreateInstanceInput) (req *request.Request, output *CreateInstanceOutput) { + op := &request.Operation{ + Name: opCreateInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateInstanceInput{} + } + + output = &CreateInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateInstance API operation for AWS Single Sign-On Admin. +// +// Creates an instance of IAM Identity Center for a standalone Amazon Web Services +// account that is not managed by Organizations or a member Amazon Web Services +// account in an organization. You can create only one instance per account +// and across all Amazon Web Services Regions. +// +// The CreateInstance request is rejected if the following apply: +// +// - The instance is created within the organization management account. +// +// - An instance already exists in the same account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation CreateInstance for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// Indicates that the principal has crossed the permitted number of resources +// that can be created. +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateInstance +func (c *SSOAdmin) CreateInstance(input *CreateInstanceInput) (*CreateInstanceOutput, error) { + req, out := c.CreateInstanceRequest(input) + return out, req.Send() +} + +// CreateInstanceWithContext is the same as CreateInstance with the addition of +// the ability to pass a context and additional request options. +// +// See CreateInstance 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 *SSOAdmin) CreateInstanceWithContext(ctx aws.Context, input *CreateInstanceInput, opts ...request.Option) (*CreateInstanceOutput, error) { + req, out := c.CreateInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateInstanceAccessControlAttributeConfiguration = "CreateInstanceAccessControlAttributeConfiguration" // CreateInstanceAccessControlAttributeConfigurationRequest generates a "aws/request.Request" representing the @@ -556,6 +872,112 @@ return out, req.Send() } +const opCreateTrustedTokenIssuer = "CreateTrustedTokenIssuer" + +// CreateTrustedTokenIssuerRequest generates a "aws/request.Request" representing the +// client's request for the CreateTrustedTokenIssuer 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 CreateTrustedTokenIssuer for more information on using the CreateTrustedTokenIssuer +// 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 CreateTrustedTokenIssuerRequest method. +// req, resp := client.CreateTrustedTokenIssuerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateTrustedTokenIssuer +func (c *SSOAdmin) CreateTrustedTokenIssuerRequest(input *CreateTrustedTokenIssuerInput) (req *request.Request, output *CreateTrustedTokenIssuerOutput) { + op := &request.Operation{ + Name: opCreateTrustedTokenIssuer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateTrustedTokenIssuerInput{} + } + + output = &CreateTrustedTokenIssuerOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTrustedTokenIssuer API operation for AWS Single Sign-On Admin. +// +// Creates a connection to a trusted token issuer in an instance of IAM Identity +// Center. A trusted token issuer enables trusted identity propagation to be +// used with applications that authenticate outside of Amazon Web Services. +// +// This trusted token issuer describes an external identity provider (IdP) that +// can generate claims or assertions in the form of access tokens for a user. +// Applications enabled for IAM Identity Center can use these tokens for authentication. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation CreateTrustedTokenIssuer for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// Indicates that the principal has crossed the permitted number of resources +// that can be created. +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/CreateTrustedTokenIssuer +func (c *SSOAdmin) CreateTrustedTokenIssuer(input *CreateTrustedTokenIssuerInput) (*CreateTrustedTokenIssuerOutput, error) { + req, out := c.CreateTrustedTokenIssuerRequest(input) + return out, req.Send() +} + +// CreateTrustedTokenIssuerWithContext is the same as CreateTrustedTokenIssuer with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTrustedTokenIssuer 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 *SSOAdmin) CreateTrustedTokenIssuerWithContext(ctx aws.Context, input *CreateTrustedTokenIssuerInput, opts ...request.Option) (*CreateTrustedTokenIssuerOutput, error) { + req, out := c.CreateTrustedTokenIssuerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAccountAssignment = "DeleteAccountAssignment" // DeleteAccountAssignmentRequest generates a "aws/request.Request" representing the @@ -659,6 +1081,508 @@ return out, req.Send() } +const opDeleteApplication = "DeleteApplication" + +// DeleteApplicationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteApplication 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 DeleteApplication for more information on using the DeleteApplication +// 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 DeleteApplicationRequest method. +// req, resp := client.DeleteApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplication +func (c *SSOAdmin) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) { + op := &request.Operation{ + Name: opDeleteApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteApplicationInput{} + } + + output = &DeleteApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteApplication API operation for AWS Single Sign-On Admin. +// +// Deletes the association with the application. The connected service resource +// still exists. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteApplication for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplication +func (c *SSOAdmin) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { + req, out := c.DeleteApplicationRequest(input) + return out, req.Send() +} + +// DeleteApplicationWithContext is the same as DeleteApplication with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteApplication 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 *SSOAdmin) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) { + req, out := c.DeleteApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteApplicationAccessScope = "DeleteApplicationAccessScope" + +// DeleteApplicationAccessScopeRequest generates a "aws/request.Request" representing the +// client's request for the DeleteApplicationAccessScope 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 DeleteApplicationAccessScope for more information on using the DeleteApplicationAccessScope +// 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 DeleteApplicationAccessScopeRequest method. +// req, resp := client.DeleteApplicationAccessScopeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationAccessScope +func (c *SSOAdmin) DeleteApplicationAccessScopeRequest(input *DeleteApplicationAccessScopeInput) (req *request.Request, output *DeleteApplicationAccessScopeOutput) { + op := &request.Operation{ + Name: opDeleteApplicationAccessScope, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteApplicationAccessScopeInput{} + } + + output = &DeleteApplicationAccessScopeOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteApplicationAccessScope API operation for AWS Single Sign-On Admin. +// +// Deletes an IAM Identity Center access scope from an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteApplicationAccessScope for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationAccessScope +func (c *SSOAdmin) DeleteApplicationAccessScope(input *DeleteApplicationAccessScopeInput) (*DeleteApplicationAccessScopeOutput, error) { + req, out := c.DeleteApplicationAccessScopeRequest(input) + return out, req.Send() +} + +// DeleteApplicationAccessScopeWithContext is the same as DeleteApplicationAccessScope with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteApplicationAccessScope 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 *SSOAdmin) DeleteApplicationAccessScopeWithContext(ctx aws.Context, input *DeleteApplicationAccessScopeInput, opts ...request.Option) (*DeleteApplicationAccessScopeOutput, error) { + req, out := c.DeleteApplicationAccessScopeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteApplicationAssignment = "DeleteApplicationAssignment" + +// DeleteApplicationAssignmentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteApplicationAssignment 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 DeleteApplicationAssignment for more information on using the DeleteApplicationAssignment +// 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 DeleteApplicationAssignmentRequest method. +// req, resp := client.DeleteApplicationAssignmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationAssignment +func (c *SSOAdmin) DeleteApplicationAssignmentRequest(input *DeleteApplicationAssignmentInput) (req *request.Request, output *DeleteApplicationAssignmentOutput) { + op := &request.Operation{ + Name: opDeleteApplicationAssignment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteApplicationAssignmentInput{} + } + + output = &DeleteApplicationAssignmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteApplicationAssignment API operation for AWS Single Sign-On Admin. +// +// Revoke application access to an application by deleting application assignments +// for a user or group. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteApplicationAssignment for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationAssignment +func (c *SSOAdmin) DeleteApplicationAssignment(input *DeleteApplicationAssignmentInput) (*DeleteApplicationAssignmentOutput, error) { + req, out := c.DeleteApplicationAssignmentRequest(input) + return out, req.Send() +} + +// DeleteApplicationAssignmentWithContext is the same as DeleteApplicationAssignment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteApplicationAssignment 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 *SSOAdmin) DeleteApplicationAssignmentWithContext(ctx aws.Context, input *DeleteApplicationAssignmentInput, opts ...request.Option) (*DeleteApplicationAssignmentOutput, error) { + req, out := c.DeleteApplicationAssignmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteApplicationAuthenticationMethod = "DeleteApplicationAuthenticationMethod" + +// DeleteApplicationAuthenticationMethodRequest generates a "aws/request.Request" representing the +// client's request for the DeleteApplicationAuthenticationMethod 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 DeleteApplicationAuthenticationMethod for more information on using the DeleteApplicationAuthenticationMethod +// 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 DeleteApplicationAuthenticationMethodRequest method. +// req, resp := client.DeleteApplicationAuthenticationMethodRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationAuthenticationMethod +func (c *SSOAdmin) DeleteApplicationAuthenticationMethodRequest(input *DeleteApplicationAuthenticationMethodInput) (req *request.Request, output *DeleteApplicationAuthenticationMethodOutput) { + op := &request.Operation{ + Name: opDeleteApplicationAuthenticationMethod, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteApplicationAuthenticationMethodInput{} + } + + output = &DeleteApplicationAuthenticationMethodOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteApplicationAuthenticationMethod API operation for AWS Single Sign-On Admin. +// +// Deletes an authentication method from an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteApplicationAuthenticationMethod for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationAuthenticationMethod +func (c *SSOAdmin) DeleteApplicationAuthenticationMethod(input *DeleteApplicationAuthenticationMethodInput) (*DeleteApplicationAuthenticationMethodOutput, error) { + req, out := c.DeleteApplicationAuthenticationMethodRequest(input) + return out, req.Send() +} + +// DeleteApplicationAuthenticationMethodWithContext is the same as DeleteApplicationAuthenticationMethod with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteApplicationAuthenticationMethod 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 *SSOAdmin) DeleteApplicationAuthenticationMethodWithContext(ctx aws.Context, input *DeleteApplicationAuthenticationMethodInput, opts ...request.Option) (*DeleteApplicationAuthenticationMethodOutput, error) { + req, out := c.DeleteApplicationAuthenticationMethodRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteApplicationGrant = "DeleteApplicationGrant" + +// DeleteApplicationGrantRequest generates a "aws/request.Request" representing the +// client's request for the DeleteApplicationGrant 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 DeleteApplicationGrant for more information on using the DeleteApplicationGrant +// 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 DeleteApplicationGrantRequest method. +// req, resp := client.DeleteApplicationGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationGrant +func (c *SSOAdmin) DeleteApplicationGrantRequest(input *DeleteApplicationGrantInput) (req *request.Request, output *DeleteApplicationGrantOutput) { + op := &request.Operation{ + Name: opDeleteApplicationGrant, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteApplicationGrantInput{} + } + + output = &DeleteApplicationGrantOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteApplicationGrant API operation for AWS Single Sign-On Admin. +// +// Deletes a grant from an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteApplicationGrant for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteApplicationGrant +func (c *SSOAdmin) DeleteApplicationGrant(input *DeleteApplicationGrantInput) (*DeleteApplicationGrantOutput, error) { + req, out := c.DeleteApplicationGrantRequest(input) + return out, req.Send() +} + +// DeleteApplicationGrantWithContext is the same as DeleteApplicationGrant with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteApplicationGrant 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 *SSOAdmin) DeleteApplicationGrantWithContext(ctx aws.Context, input *DeleteApplicationGrantInput, opts ...request.Option) (*DeleteApplicationGrantOutput, error) { + req, out := c.DeleteApplicationGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteInlinePolicyFromPermissionSet = "DeleteInlinePolicyFromPermissionSet" // DeleteInlinePolicyFromPermissionSetRequest generates a "aws/request.Request" representing the @@ -759,6 +1683,106 @@ return out, req.Send() } +const opDeleteInstance = "DeleteInstance" + +// DeleteInstanceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteInstance 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 DeleteInstance for more information on using the DeleteInstance +// 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 DeleteInstanceRequest method. +// req, resp := client.DeleteInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteInstance +func (c *SSOAdmin) DeleteInstanceRequest(input *DeleteInstanceInput) (req *request.Request, output *DeleteInstanceOutput) { + op := &request.Operation{ + Name: opDeleteInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteInstanceInput{} + } + + output = &DeleteInstanceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteInstance API operation for AWS Single Sign-On Admin. +// +// Deletes the instance of IAM Identity Center. Only the account that owns the +// instance can call this API. Neither the delegated administrator nor member +// account can delete the organization instance, but those roles can delete +// their own instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteInstance for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteInstance +func (c *SSOAdmin) DeleteInstance(input *DeleteInstanceInput) (*DeleteInstanceOutput, error) { + req, out := c.DeleteInstanceRequest(input) + return out, req.Send() +} + +// DeleteInstanceWithContext is the same as DeleteInstance with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteInstance 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 *SSOAdmin) DeleteInstanceWithContext(ctx aws.Context, input *DeleteInstanceInput, opts ...request.Option) (*DeleteInstanceOutput, error) { + req, out := c.DeleteInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteInstanceAccessControlAttributeConfiguration = "DeleteInstanceAccessControlAttributeConfiguration" // DeleteInstanceAccessControlAttributeConfigurationRequest generates a "aws/request.Request" representing the @@ -1037,6 +2061,12 @@ // - ValidationException // The request failed because it contains a syntax error. // +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeletePermissionsBoundaryFromPermissionSet func (c *SSOAdmin) DeletePermissionsBoundaryFromPermissionSet(input *DeletePermissionsBoundaryFromPermissionSetInput) (*DeletePermissionsBoundaryFromPermissionSetOutput, error) { req, out := c.DeletePermissionsBoundaryFromPermissionSetRequest(input) @@ -1059,6 +2089,110 @@ return out, req.Send() } +const opDeleteTrustedTokenIssuer = "DeleteTrustedTokenIssuer" + +// DeleteTrustedTokenIssuerRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTrustedTokenIssuer 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 DeleteTrustedTokenIssuer for more information on using the DeleteTrustedTokenIssuer +// 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 DeleteTrustedTokenIssuerRequest method. +// req, resp := client.DeleteTrustedTokenIssuerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteTrustedTokenIssuer +func (c *SSOAdmin) DeleteTrustedTokenIssuerRequest(input *DeleteTrustedTokenIssuerInput) (req *request.Request, output *DeleteTrustedTokenIssuerOutput) { + op := &request.Operation{ + Name: opDeleteTrustedTokenIssuer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteTrustedTokenIssuerInput{} + } + + output = &DeleteTrustedTokenIssuerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTrustedTokenIssuer API operation for AWS Single Sign-On Admin. +// +// Deletes a trusted token issuer configuration from an instance of IAM Identity +// Center. +// +// Deleting this trusted token issuer configuration will cause users to lose +// access to any applications that are configured to use the trusted token issuer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DeleteTrustedTokenIssuer for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DeleteTrustedTokenIssuer +func (c *SSOAdmin) DeleteTrustedTokenIssuer(input *DeleteTrustedTokenIssuerInput) (*DeleteTrustedTokenIssuerOutput, error) { + req, out := c.DeleteTrustedTokenIssuerRequest(input) + return out, req.Send() +} + +// DeleteTrustedTokenIssuerWithContext is the same as DeleteTrustedTokenIssuer with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTrustedTokenIssuer 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 *SSOAdmin) DeleteTrustedTokenIssuerWithContext(ctx aws.Context, input *DeleteTrustedTokenIssuerInput, opts ...request.Option) (*DeleteTrustedTokenIssuerOutput, error) { + req, out := c.DeleteTrustedTokenIssuerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAccountAssignmentCreationStatus = "DescribeAccountAssignmentCreationStatus" // DescribeAccountAssignmentCreationStatusRequest generates a "aws/request.Request" representing the @@ -1245,6 +2379,392 @@ return out, req.Send() } +const opDescribeApplication = "DescribeApplication" + +// DescribeApplicationRequest generates a "aws/request.Request" representing the +// client's request for the DescribeApplication 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 DescribeApplication for more information on using the DescribeApplication +// 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 DescribeApplicationRequest method. +// req, resp := client.DescribeApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeApplication +func (c *SSOAdmin) DescribeApplicationRequest(input *DescribeApplicationInput) (req *request.Request, output *DescribeApplicationOutput) { + op := &request.Operation{ + Name: opDescribeApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeApplicationInput{} + } + + output = &DescribeApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeApplication API operation for AWS Single Sign-On Admin. +// +// Retrieves the details of an application associated with an instance of IAM +// Identity Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DescribeApplication for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeApplication +func (c *SSOAdmin) DescribeApplication(input *DescribeApplicationInput) (*DescribeApplicationOutput, error) { + req, out := c.DescribeApplicationRequest(input) + return out, req.Send() +} + +// DescribeApplicationWithContext is the same as DescribeApplication with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeApplication 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 *SSOAdmin) DescribeApplicationWithContext(ctx aws.Context, input *DescribeApplicationInput, opts ...request.Option) (*DescribeApplicationOutput, error) { + req, out := c.DescribeApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeApplicationAssignment = "DescribeApplicationAssignment" + +// DescribeApplicationAssignmentRequest generates a "aws/request.Request" representing the +// client's request for the DescribeApplicationAssignment 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 DescribeApplicationAssignment for more information on using the DescribeApplicationAssignment +// 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 DescribeApplicationAssignmentRequest method. +// req, resp := client.DescribeApplicationAssignmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeApplicationAssignment +func (c *SSOAdmin) DescribeApplicationAssignmentRequest(input *DescribeApplicationAssignmentInput) (req *request.Request, output *DescribeApplicationAssignmentOutput) { + op := &request.Operation{ + Name: opDescribeApplicationAssignment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeApplicationAssignmentInput{} + } + + output = &DescribeApplicationAssignmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeApplicationAssignment API operation for AWS Single Sign-On Admin. +// +// Retrieves a direct assignment of a user or group to an application. If the +// user doesn’t have a direct assignment to the application, the user may +// still have access to the application through a group. Therefore, don’t +// use this API to test access to an application for a user. Instead use ListApplicationAssignmentsForPrincipal. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DescribeApplicationAssignment for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeApplicationAssignment +func (c *SSOAdmin) DescribeApplicationAssignment(input *DescribeApplicationAssignmentInput) (*DescribeApplicationAssignmentOutput, error) { + req, out := c.DescribeApplicationAssignmentRequest(input) + return out, req.Send() +} + +// DescribeApplicationAssignmentWithContext is the same as DescribeApplicationAssignment with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeApplicationAssignment 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 *SSOAdmin) DescribeApplicationAssignmentWithContext(ctx aws.Context, input *DescribeApplicationAssignmentInput, opts ...request.Option) (*DescribeApplicationAssignmentOutput, error) { + req, out := c.DescribeApplicationAssignmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeApplicationProvider = "DescribeApplicationProvider" + +// DescribeApplicationProviderRequest generates a "aws/request.Request" representing the +// client's request for the DescribeApplicationProvider 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 DescribeApplicationProvider for more information on using the DescribeApplicationProvider +// 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 DescribeApplicationProviderRequest method. +// req, resp := client.DescribeApplicationProviderRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeApplicationProvider +func (c *SSOAdmin) DescribeApplicationProviderRequest(input *DescribeApplicationProviderInput) (req *request.Request, output *DescribeApplicationProviderOutput) { + op := &request.Operation{ + Name: opDescribeApplicationProvider, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeApplicationProviderInput{} + } + + output = &DescribeApplicationProviderOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeApplicationProvider API operation for AWS Single Sign-On Admin. +// +// Retrieves details about a provider that can be used to connect an Amazon +// Web Services managed application or customer managed application to IAM Identity +// Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DescribeApplicationProvider for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeApplicationProvider +func (c *SSOAdmin) DescribeApplicationProvider(input *DescribeApplicationProviderInput) (*DescribeApplicationProviderOutput, error) { + req, out := c.DescribeApplicationProviderRequest(input) + return out, req.Send() +} + +// DescribeApplicationProviderWithContext is the same as DescribeApplicationProvider with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeApplicationProvider 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 *SSOAdmin) DescribeApplicationProviderWithContext(ctx aws.Context, input *DescribeApplicationProviderInput, opts ...request.Option) (*DescribeApplicationProviderOutput, error) { + req, out := c.DescribeApplicationProviderRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeInstance = "DescribeInstance" + +// DescribeInstanceRequest generates a "aws/request.Request" representing the +// client's request for the DescribeInstance 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 DescribeInstance for more information on using the DescribeInstance +// 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 DescribeInstanceRequest method. +// req, resp := client.DescribeInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeInstance +func (c *SSOAdmin) DescribeInstanceRequest(input *DescribeInstanceInput) (req *request.Request, output *DescribeInstanceOutput) { + op := &request.Operation{ + Name: opDescribeInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeInstanceInput{} + } + + output = &DescribeInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeInstance API operation for AWS Single Sign-On Admin. +// +// Returns the details of an instance of IAM Identity Center. The status can +// be one of the following: +// +// - CREATE_IN_PROGRESS - The instance is in the process of being created. +// When the instance is ready for use, DescribeInstance returns the status +// of ACTIVE. While the instance is in the CREATE_IN_PROGRESS state, you +// can call only DescribeInstance and DeleteInstance operations. +// +// - DELETE_IN_PROGRESS - The instance is being deleted. Returns AccessDeniedException +// after the delete operation completes. +// +// - ACTIVE - The instance is active. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DescribeInstance for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeInstance +func (c *SSOAdmin) DescribeInstance(input *DescribeInstanceInput) (*DescribeInstanceOutput, error) { + req, out := c.DescribeInstanceRequest(input) + return out, req.Send() +} + +// DescribeInstanceWithContext is the same as DescribeInstance with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeInstance 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 *SSOAdmin) DescribeInstanceWithContext(ctx aws.Context, input *DescribeInstanceInput, opts ...request.Option) (*DescribeInstanceOutput, error) { + req, out := c.DescribeInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeInstanceAccessControlAttributeConfiguration = "DescribeInstanceAccessControlAttributeConfiguration" // DescribeInstanceAccessControlAttributeConfigurationRequest generates a "aws/request.Request" representing the @@ -1529,6 +3049,102 @@ return out, req.Send() } +const opDescribeTrustedTokenIssuer = "DescribeTrustedTokenIssuer" + +// DescribeTrustedTokenIssuerRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTrustedTokenIssuer 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 DescribeTrustedTokenIssuer for more information on using the DescribeTrustedTokenIssuer +// 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 DescribeTrustedTokenIssuerRequest method. +// req, resp := client.DescribeTrustedTokenIssuerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeTrustedTokenIssuer +func (c *SSOAdmin) DescribeTrustedTokenIssuerRequest(input *DescribeTrustedTokenIssuerInput) (req *request.Request, output *DescribeTrustedTokenIssuerOutput) { + op := &request.Operation{ + Name: opDescribeTrustedTokenIssuer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeTrustedTokenIssuerInput{} + } + + output = &DescribeTrustedTokenIssuerOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeTrustedTokenIssuer API operation for AWS Single Sign-On Admin. +// +// Retrieves details about a trusted token issuer configuration stored in an +// instance of IAM Identity Center. Details include the name of the trusted +// token issuer, the issuer URL, and the path of the source attribute and the +// destination attribute for a trusted token issuer configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation DescribeTrustedTokenIssuer for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/DescribeTrustedTokenIssuer +func (c *SSOAdmin) DescribeTrustedTokenIssuer(input *DescribeTrustedTokenIssuerInput) (*DescribeTrustedTokenIssuerOutput, error) { + req, out := c.DescribeTrustedTokenIssuerRequest(input) + return out, req.Send() +} + +// DescribeTrustedTokenIssuerWithContext is the same as DescribeTrustedTokenIssuer with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeTrustedTokenIssuer 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 *SSOAdmin) DescribeTrustedTokenIssuerWithContext(ctx aws.Context, input *DescribeTrustedTokenIssuerInput, opts ...request.Option) (*DescribeTrustedTokenIssuerOutput, error) { + req, out := c.DescribeTrustedTokenIssuerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDetachCustomerManagedPolicyReferenceFromPermissionSet = "DetachCustomerManagedPolicyReferenceFromPermissionSet" // DetachCustomerManagedPolicyReferenceFromPermissionSetRequest generates a "aws/request.Request" representing the @@ -1730,6 +3346,379 @@ return out, req.Send() } +const opGetApplicationAccessScope = "GetApplicationAccessScope" + +// GetApplicationAccessScopeRequest generates a "aws/request.Request" representing the +// client's request for the GetApplicationAccessScope 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 GetApplicationAccessScope for more information on using the GetApplicationAccessScope +// 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 GetApplicationAccessScopeRequest method. +// req, resp := client.GetApplicationAccessScopeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationAccessScope +func (c *SSOAdmin) GetApplicationAccessScopeRequest(input *GetApplicationAccessScopeInput) (req *request.Request, output *GetApplicationAccessScopeOutput) { + op := &request.Operation{ + Name: opGetApplicationAccessScope, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetApplicationAccessScopeInput{} + } + + output = &GetApplicationAccessScopeOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplicationAccessScope API operation for AWS Single Sign-On Admin. +// +// Retrieves the authorized targets for an IAM Identity Center access scope +// for an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation GetApplicationAccessScope for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationAccessScope +func (c *SSOAdmin) GetApplicationAccessScope(input *GetApplicationAccessScopeInput) (*GetApplicationAccessScopeOutput, error) { + req, out := c.GetApplicationAccessScopeRequest(input) + return out, req.Send() +} + +// GetApplicationAccessScopeWithContext is the same as GetApplicationAccessScope with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplicationAccessScope 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 *SSOAdmin) GetApplicationAccessScopeWithContext(ctx aws.Context, input *GetApplicationAccessScopeInput, opts ...request.Option) (*GetApplicationAccessScopeOutput, error) { + req, out := c.GetApplicationAccessScopeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetApplicationAssignmentConfiguration = "GetApplicationAssignmentConfiguration" + +// GetApplicationAssignmentConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetApplicationAssignmentConfiguration 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 GetApplicationAssignmentConfiguration for more information on using the GetApplicationAssignmentConfiguration +// 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 GetApplicationAssignmentConfigurationRequest method. +// req, resp := client.GetApplicationAssignmentConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationAssignmentConfiguration +func (c *SSOAdmin) GetApplicationAssignmentConfigurationRequest(input *GetApplicationAssignmentConfigurationInput) (req *request.Request, output *GetApplicationAssignmentConfigurationOutput) { + op := &request.Operation{ + Name: opGetApplicationAssignmentConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetApplicationAssignmentConfigurationInput{} + } + + output = &GetApplicationAssignmentConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplicationAssignmentConfiguration API operation for AWS Single Sign-On Admin. +// +// Retrieves the configuration of PutApplicationAssignmentConfiguration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation GetApplicationAssignmentConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationAssignmentConfiguration +func (c *SSOAdmin) GetApplicationAssignmentConfiguration(input *GetApplicationAssignmentConfigurationInput) (*GetApplicationAssignmentConfigurationOutput, error) { + req, out := c.GetApplicationAssignmentConfigurationRequest(input) + return out, req.Send() +} + +// GetApplicationAssignmentConfigurationWithContext is the same as GetApplicationAssignmentConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplicationAssignmentConfiguration 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 *SSOAdmin) GetApplicationAssignmentConfigurationWithContext(ctx aws.Context, input *GetApplicationAssignmentConfigurationInput, opts ...request.Option) (*GetApplicationAssignmentConfigurationOutput, error) { + req, out := c.GetApplicationAssignmentConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetApplicationAuthenticationMethod = "GetApplicationAuthenticationMethod" + +// GetApplicationAuthenticationMethodRequest generates a "aws/request.Request" representing the +// client's request for the GetApplicationAuthenticationMethod 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 GetApplicationAuthenticationMethod for more information on using the GetApplicationAuthenticationMethod +// 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 GetApplicationAuthenticationMethodRequest method. +// req, resp := client.GetApplicationAuthenticationMethodRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationAuthenticationMethod +func (c *SSOAdmin) GetApplicationAuthenticationMethodRequest(input *GetApplicationAuthenticationMethodInput) (req *request.Request, output *GetApplicationAuthenticationMethodOutput) { + op := &request.Operation{ + Name: opGetApplicationAuthenticationMethod, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetApplicationAuthenticationMethodInput{} + } + + output = &GetApplicationAuthenticationMethodOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplicationAuthenticationMethod API operation for AWS Single Sign-On Admin. +// +// Retrieves details about an authentication method used by an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation GetApplicationAuthenticationMethod for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationAuthenticationMethod +func (c *SSOAdmin) GetApplicationAuthenticationMethod(input *GetApplicationAuthenticationMethodInput) (*GetApplicationAuthenticationMethodOutput, error) { + req, out := c.GetApplicationAuthenticationMethodRequest(input) + return out, req.Send() +} + +// GetApplicationAuthenticationMethodWithContext is the same as GetApplicationAuthenticationMethod with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplicationAuthenticationMethod 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 *SSOAdmin) GetApplicationAuthenticationMethodWithContext(ctx aws.Context, input *GetApplicationAuthenticationMethodInput, opts ...request.Option) (*GetApplicationAuthenticationMethodOutput, error) { + req, out := c.GetApplicationAuthenticationMethodRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetApplicationGrant = "GetApplicationGrant" + +// GetApplicationGrantRequest generates a "aws/request.Request" representing the +// client's request for the GetApplicationGrant 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 GetApplicationGrant for more information on using the GetApplicationGrant +// 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 GetApplicationGrantRequest method. +// req, resp := client.GetApplicationGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationGrant +func (c *SSOAdmin) GetApplicationGrantRequest(input *GetApplicationGrantInput) (req *request.Request, output *GetApplicationGrantOutput) { + op := &request.Operation{ + Name: opGetApplicationGrant, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetApplicationGrantInput{} + } + + output = &GetApplicationGrantOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplicationGrant API operation for AWS Single Sign-On Admin. +// +// Retrieves details about an application grant. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation GetApplicationGrant for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/GetApplicationGrant +func (c *SSOAdmin) GetApplicationGrant(input *GetApplicationGrantInput) (*GetApplicationGrantOutput, error) { + req, out := c.GetApplicationGrantRequest(input) + return out, req.Send() +} + +// GetApplicationGrantWithContext is the same as GetApplicationGrant with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplicationGrant 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 *SSOAdmin) GetApplicationGrantWithContext(ctx aws.Context, input *GetApplicationGrantInput, opts ...request.Option) (*GetApplicationGrantOutput, error) { + req, out := c.GetApplicationGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetInlinePolicyForPermissionSet = "GetInlinePolicyForPermissionSet" // GetInlinePolicyForPermissionSetRequest generates a "aws/request.Request" representing the @@ -2369,6 +4358,157 @@ return p.Err() } +const opListAccountAssignmentsForPrincipal = "ListAccountAssignmentsForPrincipal" + +// ListAccountAssignmentsForPrincipalRequest generates a "aws/request.Request" representing the +// client's request for the ListAccountAssignmentsForPrincipal 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 ListAccountAssignmentsForPrincipal for more information on using the ListAccountAssignmentsForPrincipal +// 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 ListAccountAssignmentsForPrincipalRequest method. +// req, resp := client.ListAccountAssignmentsForPrincipalRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListAccountAssignmentsForPrincipal +func (c *SSOAdmin) ListAccountAssignmentsForPrincipalRequest(input *ListAccountAssignmentsForPrincipalInput) (req *request.Request, output *ListAccountAssignmentsForPrincipalOutput) { + op := &request.Operation{ + Name: opListAccountAssignmentsForPrincipal, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAccountAssignmentsForPrincipalInput{} + } + + output = &ListAccountAssignmentsForPrincipalOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAccountAssignmentsForPrincipal API operation for AWS Single Sign-On Admin. +// +// Retrieves a list of the IAM Identity Center associated Amazon Web Services +// accounts that the principal has access to. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListAccountAssignmentsForPrincipal for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListAccountAssignmentsForPrincipal +func (c *SSOAdmin) ListAccountAssignmentsForPrincipal(input *ListAccountAssignmentsForPrincipalInput) (*ListAccountAssignmentsForPrincipalOutput, error) { + req, out := c.ListAccountAssignmentsForPrincipalRequest(input) + return out, req.Send() +} + +// ListAccountAssignmentsForPrincipalWithContext is the same as ListAccountAssignmentsForPrincipal with the addition of +// the ability to pass a context and additional request options. +// +// See ListAccountAssignmentsForPrincipal 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 *SSOAdmin) ListAccountAssignmentsForPrincipalWithContext(ctx aws.Context, input *ListAccountAssignmentsForPrincipalInput, opts ...request.Option) (*ListAccountAssignmentsForPrincipalOutput, error) { + req, out := c.ListAccountAssignmentsForPrincipalRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAccountAssignmentsForPrincipalPages iterates over the pages of a ListAccountAssignmentsForPrincipal operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAccountAssignmentsForPrincipal 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 ListAccountAssignmentsForPrincipal operation. +// pageNum := 0 +// err := client.ListAccountAssignmentsForPrincipalPages(params, +// func(page *ssoadmin.ListAccountAssignmentsForPrincipalOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListAccountAssignmentsForPrincipalPages(input *ListAccountAssignmentsForPrincipalInput, fn func(*ListAccountAssignmentsForPrincipalOutput, bool) bool) error { + return c.ListAccountAssignmentsForPrincipalPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAccountAssignmentsForPrincipalPagesWithContext same as ListAccountAssignmentsForPrincipalPages 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 *SSOAdmin) ListAccountAssignmentsForPrincipalPagesWithContext(ctx aws.Context, input *ListAccountAssignmentsForPrincipalInput, fn func(*ListAccountAssignmentsForPrincipalOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAccountAssignmentsForPrincipalInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAccountAssignmentsForPrincipalRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAccountAssignmentsForPrincipalOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListAccountsForProvisionedPermissionSet = "ListAccountsForProvisionedPermissionSet" // ListAccountsForProvisionedPermissionSetRequest generates a "aws/request.Request" representing the @@ -2520,6 +4660,1054 @@ return p.Err() } +const opListApplicationAccessScopes = "ListApplicationAccessScopes" + +// ListApplicationAccessScopesRequest generates a "aws/request.Request" representing the +// client's request for the ListApplicationAccessScopes 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 ListApplicationAccessScopes for more information on using the ListApplicationAccessScopes +// 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 ListApplicationAccessScopesRequest method. +// req, resp := client.ListApplicationAccessScopesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAccessScopes +func (c *SSOAdmin) ListApplicationAccessScopesRequest(input *ListApplicationAccessScopesInput) (req *request.Request, output *ListApplicationAccessScopesOutput) { + op := &request.Operation{ + Name: opListApplicationAccessScopes, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationAccessScopesInput{} + } + + output = &ListApplicationAccessScopesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplicationAccessScopes API operation for AWS Single Sign-On Admin. +// +// Lists the access scopes and authorized targets associated with an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplicationAccessScopes for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAccessScopes +func (c *SSOAdmin) ListApplicationAccessScopes(input *ListApplicationAccessScopesInput) (*ListApplicationAccessScopesOutput, error) { + req, out := c.ListApplicationAccessScopesRequest(input) + return out, req.Send() +} + +// ListApplicationAccessScopesWithContext is the same as ListApplicationAccessScopes with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplicationAccessScopes 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 *SSOAdmin) ListApplicationAccessScopesWithContext(ctx aws.Context, input *ListApplicationAccessScopesInput, opts ...request.Option) (*ListApplicationAccessScopesOutput, error) { + req, out := c.ListApplicationAccessScopesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationAccessScopesPages iterates over the pages of a ListApplicationAccessScopes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplicationAccessScopes 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 ListApplicationAccessScopes operation. +// pageNum := 0 +// err := client.ListApplicationAccessScopesPages(params, +// func(page *ssoadmin.ListApplicationAccessScopesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationAccessScopesPages(input *ListApplicationAccessScopesInput, fn func(*ListApplicationAccessScopesOutput, bool) bool) error { + return c.ListApplicationAccessScopesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationAccessScopesPagesWithContext same as ListApplicationAccessScopesPages 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 *SSOAdmin) ListApplicationAccessScopesPagesWithContext(ctx aws.Context, input *ListApplicationAccessScopesInput, fn func(*ListApplicationAccessScopesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationAccessScopesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationAccessScopesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationAccessScopesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListApplicationAssignments = "ListApplicationAssignments" + +// ListApplicationAssignmentsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplicationAssignments 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 ListApplicationAssignments for more information on using the ListApplicationAssignments +// 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 ListApplicationAssignmentsRequest method. +// req, resp := client.ListApplicationAssignmentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAssignments +func (c *SSOAdmin) ListApplicationAssignmentsRequest(input *ListApplicationAssignmentsInput) (req *request.Request, output *ListApplicationAssignmentsOutput) { + op := &request.Operation{ + Name: opListApplicationAssignments, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationAssignmentsInput{} + } + + output = &ListApplicationAssignmentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplicationAssignments API operation for AWS Single Sign-On Admin. +// +// Lists Amazon Web Services account users that are assigned to an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplicationAssignments for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAssignments +func (c *SSOAdmin) ListApplicationAssignments(input *ListApplicationAssignmentsInput) (*ListApplicationAssignmentsOutput, error) { + req, out := c.ListApplicationAssignmentsRequest(input) + return out, req.Send() +} + +// ListApplicationAssignmentsWithContext is the same as ListApplicationAssignments with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplicationAssignments 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 *SSOAdmin) ListApplicationAssignmentsWithContext(ctx aws.Context, input *ListApplicationAssignmentsInput, opts ...request.Option) (*ListApplicationAssignmentsOutput, error) { + req, out := c.ListApplicationAssignmentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationAssignmentsPages iterates over the pages of a ListApplicationAssignments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplicationAssignments 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 ListApplicationAssignments operation. +// pageNum := 0 +// err := client.ListApplicationAssignmentsPages(params, +// func(page *ssoadmin.ListApplicationAssignmentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationAssignmentsPages(input *ListApplicationAssignmentsInput, fn func(*ListApplicationAssignmentsOutput, bool) bool) error { + return c.ListApplicationAssignmentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationAssignmentsPagesWithContext same as ListApplicationAssignmentsPages 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 *SSOAdmin) ListApplicationAssignmentsPagesWithContext(ctx aws.Context, input *ListApplicationAssignmentsInput, fn func(*ListApplicationAssignmentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationAssignmentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationAssignmentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationAssignmentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListApplicationAssignmentsForPrincipal = "ListApplicationAssignmentsForPrincipal" + +// ListApplicationAssignmentsForPrincipalRequest generates a "aws/request.Request" representing the +// client's request for the ListApplicationAssignmentsForPrincipal 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 ListApplicationAssignmentsForPrincipal for more information on using the ListApplicationAssignmentsForPrincipal +// 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 ListApplicationAssignmentsForPrincipalRequest method. +// req, resp := client.ListApplicationAssignmentsForPrincipalRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAssignmentsForPrincipal +func (c *SSOAdmin) ListApplicationAssignmentsForPrincipalRequest(input *ListApplicationAssignmentsForPrincipalInput) (req *request.Request, output *ListApplicationAssignmentsForPrincipalOutput) { + op := &request.Operation{ + Name: opListApplicationAssignmentsForPrincipal, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationAssignmentsForPrincipalInput{} + } + + output = &ListApplicationAssignmentsForPrincipalOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplicationAssignmentsForPrincipal API operation for AWS Single Sign-On Admin. +// +// Lists the applications to which a specified principal is assigned. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplicationAssignmentsForPrincipal for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAssignmentsForPrincipal +func (c *SSOAdmin) ListApplicationAssignmentsForPrincipal(input *ListApplicationAssignmentsForPrincipalInput) (*ListApplicationAssignmentsForPrincipalOutput, error) { + req, out := c.ListApplicationAssignmentsForPrincipalRequest(input) + return out, req.Send() +} + +// ListApplicationAssignmentsForPrincipalWithContext is the same as ListApplicationAssignmentsForPrincipal with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplicationAssignmentsForPrincipal 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 *SSOAdmin) ListApplicationAssignmentsForPrincipalWithContext(ctx aws.Context, input *ListApplicationAssignmentsForPrincipalInput, opts ...request.Option) (*ListApplicationAssignmentsForPrincipalOutput, error) { + req, out := c.ListApplicationAssignmentsForPrincipalRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationAssignmentsForPrincipalPages iterates over the pages of a ListApplicationAssignmentsForPrincipal operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplicationAssignmentsForPrincipal 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 ListApplicationAssignmentsForPrincipal operation. +// pageNum := 0 +// err := client.ListApplicationAssignmentsForPrincipalPages(params, +// func(page *ssoadmin.ListApplicationAssignmentsForPrincipalOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationAssignmentsForPrincipalPages(input *ListApplicationAssignmentsForPrincipalInput, fn func(*ListApplicationAssignmentsForPrincipalOutput, bool) bool) error { + return c.ListApplicationAssignmentsForPrincipalPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationAssignmentsForPrincipalPagesWithContext same as ListApplicationAssignmentsForPrincipalPages 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 *SSOAdmin) ListApplicationAssignmentsForPrincipalPagesWithContext(ctx aws.Context, input *ListApplicationAssignmentsForPrincipalInput, fn func(*ListApplicationAssignmentsForPrincipalOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationAssignmentsForPrincipalInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationAssignmentsForPrincipalRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationAssignmentsForPrincipalOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListApplicationAuthenticationMethods = "ListApplicationAuthenticationMethods" + +// ListApplicationAuthenticationMethodsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplicationAuthenticationMethods 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 ListApplicationAuthenticationMethods for more information on using the ListApplicationAuthenticationMethods +// 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 ListApplicationAuthenticationMethodsRequest method. +// req, resp := client.ListApplicationAuthenticationMethodsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAuthenticationMethods +func (c *SSOAdmin) ListApplicationAuthenticationMethodsRequest(input *ListApplicationAuthenticationMethodsInput) (req *request.Request, output *ListApplicationAuthenticationMethodsOutput) { + op := &request.Operation{ + Name: opListApplicationAuthenticationMethods, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationAuthenticationMethodsInput{} + } + + output = &ListApplicationAuthenticationMethodsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplicationAuthenticationMethods API operation for AWS Single Sign-On Admin. +// +// Lists all of the authentication methods supported by the specified application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplicationAuthenticationMethods for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationAuthenticationMethods +func (c *SSOAdmin) ListApplicationAuthenticationMethods(input *ListApplicationAuthenticationMethodsInput) (*ListApplicationAuthenticationMethodsOutput, error) { + req, out := c.ListApplicationAuthenticationMethodsRequest(input) + return out, req.Send() +} + +// ListApplicationAuthenticationMethodsWithContext is the same as ListApplicationAuthenticationMethods with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplicationAuthenticationMethods 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 *SSOAdmin) ListApplicationAuthenticationMethodsWithContext(ctx aws.Context, input *ListApplicationAuthenticationMethodsInput, opts ...request.Option) (*ListApplicationAuthenticationMethodsOutput, error) { + req, out := c.ListApplicationAuthenticationMethodsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationAuthenticationMethodsPages iterates over the pages of a ListApplicationAuthenticationMethods operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplicationAuthenticationMethods 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 ListApplicationAuthenticationMethods operation. +// pageNum := 0 +// err := client.ListApplicationAuthenticationMethodsPages(params, +// func(page *ssoadmin.ListApplicationAuthenticationMethodsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationAuthenticationMethodsPages(input *ListApplicationAuthenticationMethodsInput, fn func(*ListApplicationAuthenticationMethodsOutput, bool) bool) error { + return c.ListApplicationAuthenticationMethodsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationAuthenticationMethodsPagesWithContext same as ListApplicationAuthenticationMethodsPages 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 *SSOAdmin) ListApplicationAuthenticationMethodsPagesWithContext(ctx aws.Context, input *ListApplicationAuthenticationMethodsInput, fn func(*ListApplicationAuthenticationMethodsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationAuthenticationMethodsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationAuthenticationMethodsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationAuthenticationMethodsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListApplicationGrants = "ListApplicationGrants" + +// ListApplicationGrantsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplicationGrants 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 ListApplicationGrants for more information on using the ListApplicationGrants +// 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 ListApplicationGrantsRequest method. +// req, resp := client.ListApplicationGrantsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationGrants +func (c *SSOAdmin) ListApplicationGrantsRequest(input *ListApplicationGrantsInput) (req *request.Request, output *ListApplicationGrantsOutput) { + op := &request.Operation{ + Name: opListApplicationGrants, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationGrantsInput{} + } + + output = &ListApplicationGrantsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplicationGrants API operation for AWS Single Sign-On Admin. +// +// List the grants associated with an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplicationGrants for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationGrants +func (c *SSOAdmin) ListApplicationGrants(input *ListApplicationGrantsInput) (*ListApplicationGrantsOutput, error) { + req, out := c.ListApplicationGrantsRequest(input) + return out, req.Send() +} + +// ListApplicationGrantsWithContext is the same as ListApplicationGrants with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplicationGrants 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 *SSOAdmin) ListApplicationGrantsWithContext(ctx aws.Context, input *ListApplicationGrantsInput, opts ...request.Option) (*ListApplicationGrantsOutput, error) { + req, out := c.ListApplicationGrantsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationGrantsPages iterates over the pages of a ListApplicationGrants operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplicationGrants 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 ListApplicationGrants operation. +// pageNum := 0 +// err := client.ListApplicationGrantsPages(params, +// func(page *ssoadmin.ListApplicationGrantsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationGrantsPages(input *ListApplicationGrantsInput, fn func(*ListApplicationGrantsOutput, bool) bool) error { + return c.ListApplicationGrantsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationGrantsPagesWithContext same as ListApplicationGrantsPages 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 *SSOAdmin) ListApplicationGrantsPagesWithContext(ctx aws.Context, input *ListApplicationGrantsInput, fn func(*ListApplicationGrantsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationGrantsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationGrantsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationGrantsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListApplicationProviders = "ListApplicationProviders" + +// ListApplicationProvidersRequest generates a "aws/request.Request" representing the +// client's request for the ListApplicationProviders 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 ListApplicationProviders for more information on using the ListApplicationProviders +// 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 ListApplicationProvidersRequest method. +// req, resp := client.ListApplicationProvidersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationProviders +func (c *SSOAdmin) ListApplicationProvidersRequest(input *ListApplicationProvidersInput) (req *request.Request, output *ListApplicationProvidersOutput) { + op := &request.Operation{ + Name: opListApplicationProviders, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationProvidersInput{} + } + + output = &ListApplicationProvidersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplicationProviders API operation for AWS Single Sign-On Admin. +// +// Lists the application providers configured in the IAM Identity Center identity +// store. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplicationProviders for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplicationProviders +func (c *SSOAdmin) ListApplicationProviders(input *ListApplicationProvidersInput) (*ListApplicationProvidersOutput, error) { + req, out := c.ListApplicationProvidersRequest(input) + return out, req.Send() +} + +// ListApplicationProvidersWithContext is the same as ListApplicationProviders with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplicationProviders 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 *SSOAdmin) ListApplicationProvidersWithContext(ctx aws.Context, input *ListApplicationProvidersInput, opts ...request.Option) (*ListApplicationProvidersOutput, error) { + req, out := c.ListApplicationProvidersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationProvidersPages iterates over the pages of a ListApplicationProviders operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplicationProviders 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 ListApplicationProviders operation. +// pageNum := 0 +// err := client.ListApplicationProvidersPages(params, +// func(page *ssoadmin.ListApplicationProvidersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationProvidersPages(input *ListApplicationProvidersInput, fn func(*ListApplicationProvidersOutput, bool) bool) error { + return c.ListApplicationProvidersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationProvidersPagesWithContext same as ListApplicationProvidersPages 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 *SSOAdmin) ListApplicationProvidersPagesWithContext(ctx aws.Context, input *ListApplicationProvidersInput, fn func(*ListApplicationProvidersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationProvidersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationProvidersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationProvidersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListApplications = "ListApplications" + +// ListApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplications 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 ListApplications for more information on using the ListApplications +// 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 ListApplicationsRequest method. +// req, resp := client.ListApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplications +func (c *SSOAdmin) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { + op := &request.Operation{ + Name: opListApplications, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationsInput{} + } + + output = &ListApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplications API operation for AWS Single Sign-On Admin. +// +// Lists all applications associated with the instance of IAM Identity Center. +// When listing applications for an instance in the management account, member +// accounts must use the applicationAccount parameter to filter the list to +// only applications created from that account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListApplications for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListApplications +func (c *SSOAdmin) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + return out, req.Send() +} + +// ListApplicationsWithContext is the same as ListApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplications 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 *SSOAdmin) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationsPages iterates over the pages of a ListApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplications 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 ListApplications operation. +// pageNum := 0 +// err := client.ListApplicationsPages(params, +// func(page *ssoadmin.ListApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error { + return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationsPagesWithContext same as ListApplicationsPages 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 *SSOAdmin) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListCustomerManagedPolicyReferencesInPermissionSet = "ListCustomerManagedPolicyReferencesInPermissionSet" // ListCustomerManagedPolicyReferencesInPermissionSetRequest generates a "aws/request.Request" representing the @@ -2719,7 +5907,8 @@ // ListInstances API operation for AWS Single Sign-On Admin. // -// Lists the IAM Identity Center instances that the caller has access to. +// Lists the details of the organization and account instances of IAM Identity +// Center that were created in or visible to the account calling this API. // // 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 @@ -3570,6 +6759,154 @@ return p.Err() } +const opListTrustedTokenIssuers = "ListTrustedTokenIssuers" + +// ListTrustedTokenIssuersRequest generates a "aws/request.Request" representing the +// client's request for the ListTrustedTokenIssuers 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 ListTrustedTokenIssuers for more information on using the ListTrustedTokenIssuers +// 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 ListTrustedTokenIssuersRequest method. +// req, resp := client.ListTrustedTokenIssuersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListTrustedTokenIssuers +func (c *SSOAdmin) ListTrustedTokenIssuersRequest(input *ListTrustedTokenIssuersInput) (req *request.Request, output *ListTrustedTokenIssuersOutput) { + op := &request.Operation{ + Name: opListTrustedTokenIssuers, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTrustedTokenIssuersInput{} + } + + output = &ListTrustedTokenIssuersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTrustedTokenIssuers API operation for AWS Single Sign-On Admin. +// +// Lists all the trusted token issuers configured in an instance of IAM Identity +// Center. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation ListTrustedTokenIssuers for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/ListTrustedTokenIssuers +func (c *SSOAdmin) ListTrustedTokenIssuers(input *ListTrustedTokenIssuersInput) (*ListTrustedTokenIssuersOutput, error) { + req, out := c.ListTrustedTokenIssuersRequest(input) + return out, req.Send() +} + +// ListTrustedTokenIssuersWithContext is the same as ListTrustedTokenIssuers with the addition of +// the ability to pass a context and additional request options. +// +// See ListTrustedTokenIssuers 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 *SSOAdmin) ListTrustedTokenIssuersWithContext(ctx aws.Context, input *ListTrustedTokenIssuersInput, opts ...request.Option) (*ListTrustedTokenIssuersOutput, error) { + req, out := c.ListTrustedTokenIssuersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTrustedTokenIssuersPages iterates over the pages of a ListTrustedTokenIssuers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTrustedTokenIssuers 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 ListTrustedTokenIssuers operation. +// pageNum := 0 +// err := client.ListTrustedTokenIssuersPages(params, +// func(page *ssoadmin.ListTrustedTokenIssuersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SSOAdmin) ListTrustedTokenIssuersPages(input *ListTrustedTokenIssuersInput, fn func(*ListTrustedTokenIssuersOutput, bool) bool) error { + return c.ListTrustedTokenIssuersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTrustedTokenIssuersPagesWithContext same as ListTrustedTokenIssuersPages 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 *SSOAdmin) ListTrustedTokenIssuersPagesWithContext(ctx aws.Context, input *ListTrustedTokenIssuersInput, fn func(*ListTrustedTokenIssuersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTrustedTokenIssuersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTrustedTokenIssuersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTrustedTokenIssuersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opProvisionPermissionSet = "ProvisionPermissionSet" // ProvisionPermissionSetRequest generates a "aws/request.Request" representing the @@ -3670,6 +7007,412 @@ return out, req.Send() } +const opPutApplicationAccessScope = "PutApplicationAccessScope" + +// PutApplicationAccessScopeRequest generates a "aws/request.Request" representing the +// client's request for the PutApplicationAccessScope 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 PutApplicationAccessScope for more information on using the PutApplicationAccessScope +// 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 PutApplicationAccessScopeRequest method. +// req, resp := client.PutApplicationAccessScopeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationAccessScope +func (c *SSOAdmin) PutApplicationAccessScopeRequest(input *PutApplicationAccessScopeInput) (req *request.Request, output *PutApplicationAccessScopeOutput) { + op := &request.Operation{ + Name: opPutApplicationAccessScope, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutApplicationAccessScopeInput{} + } + + output = &PutApplicationAccessScopeOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutApplicationAccessScope API operation for AWS Single Sign-On Admin. +// +// Adds or updates the list of authorized targets for an IAM Identity Center +// access scope for an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation PutApplicationAccessScope for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationAccessScope +func (c *SSOAdmin) PutApplicationAccessScope(input *PutApplicationAccessScopeInput) (*PutApplicationAccessScopeOutput, error) { + req, out := c.PutApplicationAccessScopeRequest(input) + return out, req.Send() +} + +// PutApplicationAccessScopeWithContext is the same as PutApplicationAccessScope with the addition of +// the ability to pass a context and additional request options. +// +// See PutApplicationAccessScope 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 *SSOAdmin) PutApplicationAccessScopeWithContext(ctx aws.Context, input *PutApplicationAccessScopeInput, opts ...request.Option) (*PutApplicationAccessScopeOutput, error) { + req, out := c.PutApplicationAccessScopeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutApplicationAssignmentConfiguration = "PutApplicationAssignmentConfiguration" + +// PutApplicationAssignmentConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the PutApplicationAssignmentConfiguration 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 PutApplicationAssignmentConfiguration for more information on using the PutApplicationAssignmentConfiguration +// 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 PutApplicationAssignmentConfigurationRequest method. +// req, resp := client.PutApplicationAssignmentConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationAssignmentConfiguration +func (c *SSOAdmin) PutApplicationAssignmentConfigurationRequest(input *PutApplicationAssignmentConfigurationInput) (req *request.Request, output *PutApplicationAssignmentConfigurationOutput) { + op := &request.Operation{ + Name: opPutApplicationAssignmentConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutApplicationAssignmentConfigurationInput{} + } + + output = &PutApplicationAssignmentConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutApplicationAssignmentConfiguration API operation for AWS Single Sign-On Admin. +// +// Configure how users gain access to an application. If AssignmentsRequired +// is true (default value), users don’t have access to the application unless +// an assignment is created using the CreateApplicationAssignment API (https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_CreateApplicationAssignment.html). +// If false, all users have access to the application. If an assignment is created +// using CreateApplicationAssignment (https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_CreateApplicationAssignment.html)., +// the user retains access if AssignmentsRequired is set to true. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation PutApplicationAssignmentConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationAssignmentConfiguration +func (c *SSOAdmin) PutApplicationAssignmentConfiguration(input *PutApplicationAssignmentConfigurationInput) (*PutApplicationAssignmentConfigurationOutput, error) { + req, out := c.PutApplicationAssignmentConfigurationRequest(input) + return out, req.Send() +} + +// PutApplicationAssignmentConfigurationWithContext is the same as PutApplicationAssignmentConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See PutApplicationAssignmentConfiguration 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 *SSOAdmin) PutApplicationAssignmentConfigurationWithContext(ctx aws.Context, input *PutApplicationAssignmentConfigurationInput, opts ...request.Option) (*PutApplicationAssignmentConfigurationOutput, error) { + req, out := c.PutApplicationAssignmentConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutApplicationAuthenticationMethod = "PutApplicationAuthenticationMethod" + +// PutApplicationAuthenticationMethodRequest generates a "aws/request.Request" representing the +// client's request for the PutApplicationAuthenticationMethod 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 PutApplicationAuthenticationMethod for more information on using the PutApplicationAuthenticationMethod +// 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 PutApplicationAuthenticationMethodRequest method. +// req, resp := client.PutApplicationAuthenticationMethodRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationAuthenticationMethod +func (c *SSOAdmin) PutApplicationAuthenticationMethodRequest(input *PutApplicationAuthenticationMethodInput) (req *request.Request, output *PutApplicationAuthenticationMethodOutput) { + op := &request.Operation{ + Name: opPutApplicationAuthenticationMethod, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutApplicationAuthenticationMethodInput{} + } + + output = &PutApplicationAuthenticationMethodOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutApplicationAuthenticationMethod API operation for AWS Single Sign-On Admin. +// +// Adds or updates an authentication method for an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation PutApplicationAuthenticationMethod for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationAuthenticationMethod +func (c *SSOAdmin) PutApplicationAuthenticationMethod(input *PutApplicationAuthenticationMethodInput) (*PutApplicationAuthenticationMethodOutput, error) { + req, out := c.PutApplicationAuthenticationMethodRequest(input) + return out, req.Send() +} + +// PutApplicationAuthenticationMethodWithContext is the same as PutApplicationAuthenticationMethod with the addition of +// the ability to pass a context and additional request options. +// +// See PutApplicationAuthenticationMethod 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 *SSOAdmin) PutApplicationAuthenticationMethodWithContext(ctx aws.Context, input *PutApplicationAuthenticationMethodInput, opts ...request.Option) (*PutApplicationAuthenticationMethodOutput, error) { + req, out := c.PutApplicationAuthenticationMethodRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutApplicationGrant = "PutApplicationGrant" + +// PutApplicationGrantRequest generates a "aws/request.Request" representing the +// client's request for the PutApplicationGrant 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 PutApplicationGrant for more information on using the PutApplicationGrant +// 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 PutApplicationGrantRequest method. +// req, resp := client.PutApplicationGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationGrant +func (c *SSOAdmin) PutApplicationGrantRequest(input *PutApplicationGrantInput) (req *request.Request, output *PutApplicationGrantOutput) { + op := &request.Operation{ + Name: opPutApplicationGrant, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutApplicationGrantInput{} + } + + output = &PutApplicationGrantOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutApplicationGrant API operation for AWS Single Sign-On Admin. +// +// Adds a grant to an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation PutApplicationGrant for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/PutApplicationGrant +func (c *SSOAdmin) PutApplicationGrant(input *PutApplicationGrantInput) (*PutApplicationGrantOutput, error) { + req, out := c.PutApplicationGrantRequest(input) + return out, req.Send() +} + +// PutApplicationGrantWithContext is the same as PutApplicationGrant with the addition of +// the ability to pass a context and additional request options. +// +// See PutApplicationGrant 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 *SSOAdmin) PutApplicationGrantWithContext(ctx aws.Context, input *PutApplicationGrantInput, opts ...request.Option) (*PutApplicationGrantOutput, error) { + req, out := c.PutApplicationGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPutInlinePolicyToPermissionSet = "PutInlinePolicyToPermissionSet" // PutInlinePolicyToPermissionSetRequest generates a "aws/request.Request" representing the @@ -4083,6 +7826,204 @@ return out, req.Send() } +const opUpdateApplication = "UpdateApplication" + +// UpdateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateApplication 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 UpdateApplication for more information on using the UpdateApplication +// 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 UpdateApplicationRequest method. +// req, resp := client.UpdateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/UpdateApplication +func (c *SSOAdmin) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { + op := &request.Operation{ + Name: opUpdateApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateApplicationInput{} + } + + output = &UpdateApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateApplication API operation for AWS Single Sign-On Admin. +// +// Updates application properties. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation UpdateApplication for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/UpdateApplication +func (c *SSOAdmin) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + return out, req.Send() +} + +// UpdateApplicationWithContext is the same as UpdateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateApplication 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 *SSOAdmin) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateInstance = "UpdateInstance" + +// UpdateInstanceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateInstance 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 UpdateInstance for more information on using the UpdateInstance +// 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 UpdateInstanceRequest method. +// req, resp := client.UpdateInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/UpdateInstance +func (c *SSOAdmin) UpdateInstanceRequest(input *UpdateInstanceInput) (req *request.Request, output *UpdateInstanceOutput) { + op := &request.Operation{ + Name: opUpdateInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateInstanceInput{} + } + + output = &UpdateInstanceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateInstance API operation for AWS Single Sign-On Admin. +// +// Update the details for the instance of IAM Identity Center that is owned +// by the Amazon Web Services account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation UpdateInstance for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/UpdateInstance +func (c *SSOAdmin) UpdateInstance(input *UpdateInstanceInput) (*UpdateInstanceOutput, error) { + req, out := c.UpdateInstanceRequest(input) + return out, req.Send() +} + +// UpdateInstanceWithContext is the same as UpdateInstance with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateInstance 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 *SSOAdmin) UpdateInstanceWithContext(ctx aws.Context, input *UpdateInstanceInput, opts ...request.Option) (*UpdateInstanceOutput, error) { + req, out := c.UpdateInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateInstanceAccessControlAttributeConfiguration = "UpdateInstanceAccessControlAttributeConfiguration" // UpdateInstanceAccessControlAttributeConfigurationRequest generates a "aws/request.Request" representing the @@ -4291,6 +8232,110 @@ return out, req.Send() } +const opUpdateTrustedTokenIssuer = "UpdateTrustedTokenIssuer" + +// UpdateTrustedTokenIssuerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTrustedTokenIssuer 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 UpdateTrustedTokenIssuer for more information on using the UpdateTrustedTokenIssuer +// 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 UpdateTrustedTokenIssuerRequest method. +// req, resp := client.UpdateTrustedTokenIssuerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/UpdateTrustedTokenIssuer +func (c *SSOAdmin) UpdateTrustedTokenIssuerRequest(input *UpdateTrustedTokenIssuerInput) (req *request.Request, output *UpdateTrustedTokenIssuerOutput) { + op := &request.Operation{ + Name: opUpdateTrustedTokenIssuer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateTrustedTokenIssuerInput{} + } + + output = &UpdateTrustedTokenIssuerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateTrustedTokenIssuer API operation for AWS Single Sign-On Admin. +// +// Updates the name of the trusted token issuer, or the path of a source attribute +// or destination attribute for a trusted token issuer configuration. +// +// Updating this trusted token issuer configuration might cause users to lose +// access to any applications that are configured to use the trusted token issuer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Single Sign-On Admin's +// API operation UpdateTrustedTokenIssuer for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Indicates that the principal has crossed the throttling limits of the API +// operations. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception, +// or failure with an internal server. +// +// - ResourceNotFoundException +// Indicates that a requested resource is not found. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// The request failed because it contains a syntax error. +// +// - ConflictException +// Occurs when a conflict with a previous successful write is detected. This +// generally occurs when the previous write did not have time to propagate to +// the host serving the current request. A retry (with appropriate backoff logic) +// is the recommended response to this exception. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-admin-2020-07-20/UpdateTrustedTokenIssuer +func (c *SSOAdmin) UpdateTrustedTokenIssuer(input *UpdateTrustedTokenIssuerInput) (*UpdateTrustedTokenIssuerOutput, error) { + req, out := c.UpdateTrustedTokenIssuerRequest(input) + return out, req.Send() +} + +// UpdateTrustedTokenIssuerWithContext is the same as UpdateTrustedTokenIssuer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTrustedTokenIssuer 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 *SSOAdmin) UpdateTrustedTokenIssuerWithContext(ctx aws.Context, input *UpdateTrustedTokenIssuerInput, opts ...request.Option) (*UpdateTrustedTokenIssuerOutput, error) { + req, out := c.UpdateTrustedTokenIssuerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // These are IAM Identity Center identity store attributes that you can configure // for use in attributes-based access control (ABAC). You can create permissions // policies that determine who can access your Amazon Web Services resources @@ -4552,6 +8597,67 @@ return s } +// A structure that describes an assignment of an Amazon Web Services account +// to a principal and the permissions that principal has in the account. +type AccountAssignmentForPrincipal struct { + _ struct{} `type:"structure"` + + // The account ID number of the Amazon Web Services account. + AccountId *string `min:"12" type:"string"` + + // The ARN of the IAM Identity Center permission set assigned to this principal + // for this Amazon Web Services account. + PermissionSetArn *string `min:"10" type:"string"` + + // The ID of the principal. + PrincipalId *string `min:"1" type:"string"` + + // The type of the principal. + PrincipalType *string `type:"string" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccountAssignmentForPrincipal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccountAssignmentForPrincipal) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *AccountAssignmentForPrincipal) SetAccountId(v string) *AccountAssignmentForPrincipal { + s.AccountId = &v + return s +} + +// SetPermissionSetArn sets the PermissionSetArn field's value. +func (s *AccountAssignmentForPrincipal) SetPermissionSetArn(v string) *AccountAssignmentForPrincipal { + s.PermissionSetArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *AccountAssignmentForPrincipal) SetPrincipalId(v string) *AccountAssignmentForPrincipal { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *AccountAssignmentForPrincipal) SetPrincipalType(v string) *AccountAssignmentForPrincipal { + s.PrincipalType = &v + return s +} + // The status of the creation or deletion operation of an assignment that a // principal needs to access an account. type AccountAssignmentOperationStatus struct { @@ -4714,6 +8820,283 @@ return s } +// A structure that describes an application that uses IAM Identity Center for +// access management. +type Application struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID number of the application. + ApplicationAccount *string `min:"12" type:"string"` + + // The ARN of the application. + ApplicationArn *string `min:"10" type:"string"` + + // The ARN of the application provider for this application. + ApplicationProviderArn *string `min:"10" type:"string"` + + // The date and time when the application was originally created. + CreatedDate *time.Time `type:"timestamp"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // The ARN of the instance of IAM Identity Center that is configured with this + // application. + InstanceArn *string `min:"10" type:"string"` + + // The name of the application. + Name *string `type:"string"` + + // A structure that describes the options for the access portal associated with + // this application. + PortalOptions *PortalOptions `type:"structure"` + + // The current status of the application in this instance of IAM Identity Center. + Status *string `type:"string" enum:"ApplicationStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) GoString() string { + return s.String() +} + +// SetApplicationAccount sets the ApplicationAccount field's value. +func (s *Application) SetApplicationAccount(v string) *Application { + s.ApplicationAccount = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *Application) SetApplicationArn(v string) *Application { + s.ApplicationArn = &v + return s +} + +// SetApplicationProviderArn sets the ApplicationProviderArn field's value. +func (s *Application) SetApplicationProviderArn(v string) *Application { + s.ApplicationProviderArn = &v + return s +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *Application) SetCreatedDate(v time.Time) *Application { + s.CreatedDate = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Application) SetDescription(v string) *Application { + s.Description = &v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *Application) SetInstanceArn(v string) *Application { + s.InstanceArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *Application) SetName(v string) *Application { + s.Name = &v + return s +} + +// SetPortalOptions sets the PortalOptions field's value. +func (s *Application) SetPortalOptions(v *PortalOptions) *Application { + s.PortalOptions = v + return s +} + +// SetStatus sets the Status field's value. +func (s *Application) SetStatus(v string) *Application { + s.Status = &v + return s +} + +// A structure that describes an assignment of a principal to an application. +type ApplicationAssignment struct { + _ struct{} `type:"structure"` + + // The ARN of the application that has principals assigned. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // The unique identifier of the principal assigned to the application. + // + // PrincipalId is a required field + PrincipalId *string `min:"1" type:"string" required:"true"` + + // The type of the principal assigned to the application. + // + // PrincipalType is a required field + PrincipalType *string `type:"string" required:"true" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationAssignment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationAssignment) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ApplicationAssignment) SetApplicationArn(v string) *ApplicationAssignment { + s.ApplicationArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *ApplicationAssignment) SetPrincipalId(v string) *ApplicationAssignment { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *ApplicationAssignment) SetPrincipalType(v string) *ApplicationAssignment { + s.PrincipalType = &v + return s +} + +// A structure that describes an application to which a principal is assigned. +type ApplicationAssignmentForPrincipal struct { + _ struct{} `type:"structure"` + + // The ARN of the application to which the specified principal is assigned. + ApplicationArn *string `min:"10" type:"string"` + + // The unique identifier of the principal assigned to the application. + PrincipalId *string `min:"1" type:"string"` + + // The type of the principal assigned to the application. + PrincipalType *string `type:"string" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationAssignmentForPrincipal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationAssignmentForPrincipal) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ApplicationAssignmentForPrincipal) SetApplicationArn(v string) *ApplicationAssignmentForPrincipal { + s.ApplicationArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *ApplicationAssignmentForPrincipal) SetPrincipalId(v string) *ApplicationAssignmentForPrincipal { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *ApplicationAssignmentForPrincipal) SetPrincipalType(v string) *ApplicationAssignmentForPrincipal { + s.PrincipalType = &v + return s +} + +// A structure that describes a provider that can be used to connect an Amazon +// Web Services managed application or customer managed application to IAM Identity +// Center. +type ApplicationProvider struct { + _ struct{} `type:"structure"` + + // The ARN of the application provider. + // + // ApplicationProviderArn is a required field + ApplicationProviderArn *string `min:"10" type:"string" required:"true"` + + // A structure that describes how IAM Identity Center represents the application + // provider in the portal. + DisplayData *DisplayData `type:"structure"` + + // The protocol that the application provider uses to perform federation. + FederationProtocol *string `type:"string" enum:"FederationProtocol"` + + // A structure that describes the application provider's resource server. + ResourceServerConfig *ResourceServerConfig `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 ApplicationProvider) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationProvider) GoString() string { + return s.String() +} + +// SetApplicationProviderArn sets the ApplicationProviderArn field's value. +func (s *ApplicationProvider) SetApplicationProviderArn(v string) *ApplicationProvider { + s.ApplicationProviderArn = &v + return s +} + +// SetDisplayData sets the DisplayData field's value. +func (s *ApplicationProvider) SetDisplayData(v *DisplayData) *ApplicationProvider { + s.DisplayData = v + return s +} + +// SetFederationProtocol sets the FederationProtocol field's value. +func (s *ApplicationProvider) SetFederationProtocol(v string) *ApplicationProvider { + s.FederationProtocol = &v + return s +} + +// SetResourceServerConfig sets the ResourceServerConfig field's value. +func (s *ApplicationProvider) SetResourceServerConfig(v *ResourceServerConfig) *ApplicationProvider { + s.ResourceServerConfig = v + return s +} + type AttachCustomerManagedPolicyReferenceToPermissionSetInput struct { _ struct{} `type:"structure"` @@ -4977,6 +9360,178 @@ return s } +// A structure that describes an authentication method that can be used by an +// application. +type AuthenticationMethod 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 AuthenticationMethod) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthenticationMethod) GoString() string { + return s.String() +} + +// A structure that describes an authentication method and its type. +type AuthenticationMethodItem struct { + _ struct{} `type:"structure"` + + // A structure that describes an authentication method. The contents of this + // structure is determined by the AuthenticationMethodType. + AuthenticationMethod *AuthenticationMethod `type:"structure"` + + // The type of authentication that is used by this method. + AuthenticationMethodType *string `type:"string" enum:"AuthenticationMethodType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthenticationMethodItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthenticationMethodItem) GoString() string { + return s.String() +} + +// SetAuthenticationMethod sets the AuthenticationMethod field's value. +func (s *AuthenticationMethodItem) SetAuthenticationMethod(v *AuthenticationMethod) *AuthenticationMethodItem { + s.AuthenticationMethod = v + return s +} + +// SetAuthenticationMethodType sets the AuthenticationMethodType field's value. +func (s *AuthenticationMethodItem) SetAuthenticationMethodType(v string) *AuthenticationMethodItem { + s.AuthenticationMethodType = &v + return s +} + +// A structure that defines configuration settings for an application that supports +// the OAuth 2.0 Authorization Code Grant. +type AuthorizationCodeGrant struct { + _ struct{} `type:"structure"` + + // A list of URIs that are valid locations to redirect a user's browser after + // the user is authorized. + RedirectUris []*string `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 AuthorizationCodeGrant) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthorizationCodeGrant) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuthorizationCodeGrant) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuthorizationCodeGrant"} + if s.RedirectUris != nil && len(s.RedirectUris) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RedirectUris", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRedirectUris sets the RedirectUris field's value. +func (s *AuthorizationCodeGrant) SetRedirectUris(v []*string) *AuthorizationCodeGrant { + s.RedirectUris = v + return s +} + +// A structure that describes a trusted token issuer and associates it with +// a set of authorized audiences. +type AuthorizedTokenIssuer struct { + _ struct{} `type:"structure"` + + // An array list of authorized audiences, or applications, that can consume + // the tokens generated by the associated trusted token issuer. + AuthorizedAudiences []*string `min:"1" type:"list"` + + // The ARN of the trusted token issuer. + TrustedTokenIssuerArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthorizedTokenIssuer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AuthorizedTokenIssuer) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuthorizedTokenIssuer) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuthorizedTokenIssuer"} + if s.AuthorizedAudiences != nil && len(s.AuthorizedAudiences) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AuthorizedAudiences", 1)) + } + if s.TrustedTokenIssuerArn != nil && len(*s.TrustedTokenIssuerArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("TrustedTokenIssuerArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizedAudiences sets the AuthorizedAudiences field's value. +func (s *AuthorizedTokenIssuer) SetAuthorizedAudiences(v []*string) *AuthorizedTokenIssuer { + s.AuthorizedAudiences = v + return s +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *AuthorizedTokenIssuer) SetTrustedTokenIssuerArn(v string) *AuthorizedTokenIssuer { + s.TrustedTokenIssuerArn = &v + return s +} + // Occurs when a conflict with a previous successful write is detected. This // generally occurs when the previous write did not have time to propagate to // the host serving the current request. A retry (with appropriate backoff logic) @@ -5210,6 +9765,302 @@ return s } +type CreateApplicationAssignmentInput struct { + _ struct{} `type:"structure"` + + // The ARN of the application provider under which the operation will run. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // An identifier for an object in IAM Identity Center, such as a user or group. + // PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). + // For more information about PrincipalIds in IAM Identity Center, see the IAM + // Identity Center Identity Store API Reference (/singlesignon/latest/IdentityStoreAPIReference/welcome.html). + // + // PrincipalId is a required field + PrincipalId *string `min:"1" type:"string" required:"true"` + + // The entity type for which the assignment will be created. + // + // PrincipalType is a required field + PrincipalType *string `type:"string" required:"true" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationAssignmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationAssignmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateApplicationAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateApplicationAssignmentInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.PrincipalId == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + } + if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) + } + if s.PrincipalType == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *CreateApplicationAssignmentInput) SetApplicationArn(v string) *CreateApplicationAssignmentInput { + s.ApplicationArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *CreateApplicationAssignmentInput) SetPrincipalId(v string) *CreateApplicationAssignmentInput { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *CreateApplicationAssignmentInput) SetPrincipalType(v string) *CreateApplicationAssignmentInput { + s.PrincipalType = &v + return s +} + +type CreateApplicationAssignmentOutput 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 CreateApplicationAssignmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationAssignmentOutput) GoString() string { + return s.String() +} + +type CreateApplicationInput struct { + _ struct{} `type:"structure"` + + // The ARN of the application provider under which the operation will run. + // + // ApplicationProviderArn is a required field + ApplicationProviderArn *string `min:"10" type:"string" required:"true"` + + // Specifies a unique, case-sensitive ID that you provide to ensure the idempotency + // of the request. This lets you safely retry the request without accidentally + // performing the same operation a second time. Passing the same value to a + // later call to an operation requires that you also pass the same value for + // all other parameters. We recommend that you use a UUID type of value (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The description of the . + Description *string `min:"1" type:"string"` + + // The ARN of the instance of IAM Identity Center under which the operation + // will run. For more information about ARNs, see Amazon Resource Names (ARNs) + // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // The name of the . + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // A structure that describes the options for the portal associated with an + // application. + PortalOptions *PortalOptions `type:"structure"` + + // Specifies whether the application is enabled or disabled. + Status *string `type:"string" enum:"ApplicationStatus"` + + // Specifies tags to be attached to the application. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} + if s.ApplicationProviderArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationProviderArn")) + } + if s.ApplicationProviderArn != nil && len(*s.ApplicationProviderArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationProviderArn", 10)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.PortalOptions != nil { + if err := s.PortalOptions.Validate(); err != nil { + invalidParams.AddNested("PortalOptions", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationProviderArn sets the ApplicationProviderArn field's value. +func (s *CreateApplicationInput) SetApplicationProviderArn(v string) *CreateApplicationInput { + s.ApplicationProviderArn = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateApplicationInput) SetClientToken(v string) *CreateApplicationInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput { + s.Description = &v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *CreateApplicationInput) SetInstanceArn(v string) *CreateApplicationInput { + s.InstanceArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput { + s.Name = &v + return s +} + +// SetPortalOptions sets the PortalOptions field's value. +func (s *CreateApplicationInput) SetPortalOptions(v *PortalOptions) *CreateApplicationInput { + s.PortalOptions = v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateApplicationInput) SetStatus(v string) *CreateApplicationInput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateApplicationInput) SetTags(v []*Tag) *CreateApplicationInput { + s.Tags = v + return s +} + +type CreateApplicationOutput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. + ApplicationArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationOutput) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *CreateApplicationOutput) SetApplicationArn(v string) *CreateApplicationOutput { + s.ApplicationArn = &v + return s +} + type CreateInstanceAccessControlAttributeConfigurationInput struct { _ struct{} `type:"structure"` @@ -5307,6 +10158,124 @@ return s.String() } +type CreateInstanceInput struct { + _ struct{} `type:"structure"` + + // Specifies a unique, case-sensitive ID that you provide to ensure the idempotency + // of the request. This lets you safely retry the request without accidentally + // performing the same operation a second time. Passing the same value to a + // later call to an operation requires that you also pass the same value for + // all other parameters. We recommend that you use a UUID type of value (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The name of the instance of IAM Identity Center. + Name *string `type:"string"` + + // Specifies tags to be attached to the instance of IAM Identity Center. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateInstanceInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateInstanceInput) SetClientToken(v string) *CreateInstanceInput { + s.ClientToken = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateInstanceInput) SetName(v string) *CreateInstanceInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateInstanceInput) SetTags(v []*Tag) *CreateInstanceInput { + s.Tags = v + return s +} + +type CreateInstanceOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the instance of IAM Identity Center under which the operation + // will run. + // + // For more information about ARNs, see Amazon Resource Names (ARNs) and Amazon + // Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + InstanceArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateInstanceOutput) GoString() string { + return s.String() +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *CreateInstanceOutput) SetInstanceArn(v string) *CreateInstanceOutput { + s.InstanceArn = &v + return s +} + type CreatePermissionSetInput struct { _ struct{} `type:"structure"` @@ -5464,6 +10433,180 @@ return s } +type CreateTrustedTokenIssuerInput struct { + _ struct{} `type:"structure"` + + // Specifies a unique, case-sensitive ID that you provide to ensure the idempotency + // of the request. This lets you safely retry the request without accidentally + // performing the same operation a second time. Passing the same value to a + // later call to an operation requires that you also pass the same value for + // all other parameters. We recommend that you use a UUID type of value. (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Specifies the ARN of the instance of IAM Identity Center to contain the new + // trusted token issuer configuration. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // Specifies the name of the new trusted token issuer configuration. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // Specifies tags to be attached to the new trusted token issuer configuration. + Tags []*Tag `type:"list"` + + // Specifies settings that apply to the new trusted token issuer configuration. + // The settings that are available depend on what TrustedTokenIssuerType you + // specify. + // + // TrustedTokenIssuerConfiguration is a required field + TrustedTokenIssuerConfiguration *TrustedTokenIssuerConfiguration `type:"structure" required:"true"` + + // Specifies the type of the new trusted token issuer. + // + // TrustedTokenIssuerType is a required field + TrustedTokenIssuerType *string `type:"string" required:"true" enum:"TrustedTokenIssuerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustedTokenIssuerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustedTokenIssuerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTrustedTokenIssuerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTrustedTokenIssuerInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TrustedTokenIssuerConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("TrustedTokenIssuerConfiguration")) + } + if s.TrustedTokenIssuerType == nil { + invalidParams.Add(request.NewErrParamRequired("TrustedTokenIssuerType")) + } + 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 s.TrustedTokenIssuerConfiguration != nil { + if err := s.TrustedTokenIssuerConfiguration.Validate(); err != nil { + invalidParams.AddNested("TrustedTokenIssuerConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTrustedTokenIssuerInput) SetClientToken(v string) *CreateTrustedTokenIssuerInput { + s.ClientToken = &v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *CreateTrustedTokenIssuerInput) SetInstanceArn(v string) *CreateTrustedTokenIssuerInput { + s.InstanceArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTrustedTokenIssuerInput) SetName(v string) *CreateTrustedTokenIssuerInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTrustedTokenIssuerInput) SetTags(v []*Tag) *CreateTrustedTokenIssuerInput { + s.Tags = v + return s +} + +// SetTrustedTokenIssuerConfiguration sets the TrustedTokenIssuerConfiguration field's value. +func (s *CreateTrustedTokenIssuerInput) SetTrustedTokenIssuerConfiguration(v *TrustedTokenIssuerConfiguration) *CreateTrustedTokenIssuerInput { + s.TrustedTokenIssuerConfiguration = v + return s +} + +// SetTrustedTokenIssuerType sets the TrustedTokenIssuerType field's value. +func (s *CreateTrustedTokenIssuerInput) SetTrustedTokenIssuerType(v string) *CreateTrustedTokenIssuerInput { + s.TrustedTokenIssuerType = &v + return s +} + +type CreateTrustedTokenIssuerOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the new trusted token issuer configuration. + TrustedTokenIssuerArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustedTokenIssuerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTrustedTokenIssuerOutput) GoString() string { + return s.String() +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *CreateTrustedTokenIssuerOutput) SetTrustedTokenIssuerArn(v string) *CreateTrustedTokenIssuerOutput { + s.TrustedTokenIssuerArn = &v + return s +} + // Specifies the name and path of a customer managed policy. You must have an // IAM policy that matches the name and path in each Amazon Web Services account // where you want to deploy your permission set. @@ -5697,6 +10840,439 @@ return s } +type DeleteApplicationAccessScopeInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the access scope to delete. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the name of the access scope to remove from the application. + // + // Scope is a required field + Scope *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAccessScopeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAccessScopeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteApplicationAccessScopeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationAccessScopeInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.Scope == nil { + invalidParams.Add(request.NewErrParamRequired("Scope")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DeleteApplicationAccessScopeInput) SetApplicationArn(v string) *DeleteApplicationAccessScopeInput { + s.ApplicationArn = &v + return s +} + +// SetScope sets the Scope field's value. +func (s *DeleteApplicationAccessScopeInput) SetScope(v string) *DeleteApplicationAccessScopeInput { + s.Scope = &v + return s +} + +type DeleteApplicationAccessScopeOutput 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 DeleteApplicationAccessScopeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAccessScopeOutput) GoString() string { + return s.String() +} + +type DeleteApplicationAssignmentInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // An identifier for an object in IAM Identity Center, such as a user or group. + // PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). + // For more information about PrincipalIds in IAM Identity Center, see the IAM + // Identity Center Identity Store API Reference (/singlesignon/latest/IdentityStoreAPIReference/welcome.html). + // + // PrincipalId is a required field + PrincipalId *string `min:"1" type:"string" required:"true"` + + // The entity type for which the assignment will be deleted. + // + // PrincipalType is a required field + PrincipalType *string `type:"string" required:"true" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAssignmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAssignmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteApplicationAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationAssignmentInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.PrincipalId == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + } + if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) + } + if s.PrincipalType == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DeleteApplicationAssignmentInput) SetApplicationArn(v string) *DeleteApplicationAssignmentInput { + s.ApplicationArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *DeleteApplicationAssignmentInput) SetPrincipalId(v string) *DeleteApplicationAssignmentInput { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *DeleteApplicationAssignmentInput) SetPrincipalType(v string) *DeleteApplicationAssignmentInput { + s.PrincipalType = &v + return s +} + +type DeleteApplicationAssignmentOutput 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 DeleteApplicationAssignmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAssignmentOutput) GoString() string { + return s.String() +} + +type DeleteApplicationAuthenticationMethodInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the authentication method to delete. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the authentication method type to delete from the application. + // + // AuthenticationMethodType is a required field + AuthenticationMethodType *string `type:"string" required:"true" enum:"AuthenticationMethodType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAuthenticationMethodInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAuthenticationMethodInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteApplicationAuthenticationMethodInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationAuthenticationMethodInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.AuthenticationMethodType == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationMethodType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DeleteApplicationAuthenticationMethodInput) SetApplicationArn(v string) *DeleteApplicationAuthenticationMethodInput { + s.ApplicationArn = &v + return s +} + +// SetAuthenticationMethodType sets the AuthenticationMethodType field's value. +func (s *DeleteApplicationAuthenticationMethodInput) SetAuthenticationMethodType(v string) *DeleteApplicationAuthenticationMethodInput { + s.AuthenticationMethodType = &v + return s +} + +type DeleteApplicationAuthenticationMethodOutput 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 DeleteApplicationAuthenticationMethodOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationAuthenticationMethodOutput) GoString() string { + return s.String() +} + +type DeleteApplicationGrantInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the grant to delete. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the type of grant to delete from the application. + // + // GrantType is a required field + GrantType *string `type:"string" required:"true" enum:"GrantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteApplicationGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationGrantInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.GrantType == nil { + invalidParams.Add(request.NewErrParamRequired("GrantType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DeleteApplicationGrantInput) SetApplicationArn(v string) *DeleteApplicationGrantInput { + s.ApplicationArn = &v + return s +} + +// SetGrantType sets the GrantType field's value. +func (s *DeleteApplicationGrantInput) SetGrantType(v string) *DeleteApplicationGrantInput { + s.GrantType = &v + return s +} + +type DeleteApplicationGrantOutput 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 DeleteApplicationGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationGrantOutput) GoString() string { + return s.String() +} + +type DeleteApplicationInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" 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 DeleteApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DeleteApplicationInput) SetApplicationArn(v string) *DeleteApplicationInput { + s.ApplicationArn = &v + return s +} + +type DeleteApplicationOutput 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 DeleteApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteApplicationOutput) GoString() string { + return s.String() +} + type DeleteInlinePolicyFromPermissionSetInput struct { _ struct{} `type:"structure"` @@ -5860,6 +11436,78 @@ return s.String() } +type DeleteInstanceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the instance of IAM Identity Center under which the operation + // will run. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" 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 DeleteInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *DeleteInstanceInput) SetInstanceArn(v string) *DeleteInstanceInput { + s.InstanceArn = &v + return s +} + +type DeleteInstanceOutput 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 DeleteInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteInstanceOutput) GoString() string { + return s.String() +} + type DeletePermissionSetInput struct { _ struct{} `type:"structure"` @@ -6040,6 +11688,77 @@ return s.String() } +type DeleteTrustedTokenIssuerInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the trusted token issuer configuration to delete. + // + // TrustedTokenIssuerArn is a required field + TrustedTokenIssuerArn *string `min:"10" 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 DeleteTrustedTokenIssuerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrustedTokenIssuerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTrustedTokenIssuerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTrustedTokenIssuerInput"} + if s.TrustedTokenIssuerArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustedTokenIssuerArn")) + } + if s.TrustedTokenIssuerArn != nil && len(*s.TrustedTokenIssuerArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("TrustedTokenIssuerArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *DeleteTrustedTokenIssuerInput) SetTrustedTokenIssuerArn(v string) *DeleteTrustedTokenIssuerInput { + s.TrustedTokenIssuerArn = &v + return s +} + +type DeleteTrustedTokenIssuerOutput 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 DeleteTrustedTokenIssuerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTrustedTokenIssuerOutput) GoString() string { + return s.String() +} + type DescribeAccountAssignmentCreationStatusInput struct { _ struct{} `type:"structure"` @@ -6240,6 +11959,412 @@ return s } +type DescribeApplicationAssignmentInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // An identifier for an object in IAM Identity Center, such as a user or group. + // PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). + // For more information about PrincipalIds in IAM Identity Center, see the IAM + // Identity Center Identity Store API Reference (/singlesignon/latest/IdentityStoreAPIReference/welcome.html). + // + // PrincipalId is a required field + PrincipalId *string `min:"1" type:"string" required:"true"` + + // The entity type for which the assignment will be created. + // + // PrincipalType is a required field + PrincipalType *string `type:"string" required:"true" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssignmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssignmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeApplicationAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationAssignmentInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.PrincipalId == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + } + if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) + } + if s.PrincipalType == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DescribeApplicationAssignmentInput) SetApplicationArn(v string) *DescribeApplicationAssignmentInput { + s.ApplicationArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *DescribeApplicationAssignmentInput) SetPrincipalId(v string) *DescribeApplicationAssignmentInput { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *DescribeApplicationAssignmentInput) SetPrincipalType(v string) *DescribeApplicationAssignmentInput { + s.PrincipalType = &v + return s +} + +type DescribeApplicationAssignmentOutput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + ApplicationArn *string `min:"10" type:"string"` + + // An identifier for an object in IAM Identity Center, such as a user or group. + // PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). + // For more information about PrincipalIds in IAM Identity Center, see the IAM + // Identity Center Identity Store API Reference (/singlesignon/latest/IdentityStoreAPIReference/welcome.html). + PrincipalId *string `min:"1" type:"string"` + + // The entity type for which the assignment will be created. + PrincipalType *string `type:"string" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssignmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssignmentOutput) GoString() string { + return s.String() +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DescribeApplicationAssignmentOutput) SetApplicationArn(v string) *DescribeApplicationAssignmentOutput { + s.ApplicationArn = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *DescribeApplicationAssignmentOutput) SetPrincipalId(v string) *DescribeApplicationAssignmentOutput { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *DescribeApplicationAssignmentOutput) SetPrincipalType(v string) *DescribeApplicationAssignmentOutput { + s.PrincipalType = &v + return s +} + +type DescribeApplicationInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" 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 DescribeApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DescribeApplicationInput) SetApplicationArn(v string) *DescribeApplicationInput { + s.ApplicationArn = &v + return s +} + +type DescribeApplicationOutput struct { + _ struct{} `type:"structure"` + + // The account ID. + ApplicationAccount *string `min:"12" type:"string"` + + // Specifies the ARN of the application. + ApplicationArn *string `min:"10" type:"string"` + + // The ARN of the application provider under which the operation will run. + ApplicationProviderArn *string `min:"10" type:"string"` + + // The date the application was created. + CreatedDate *time.Time `type:"timestamp"` + + // The description of the . + Description *string `min:"1" type:"string"` + + // The ARN of the IAM Identity Center application under which the operation + // will run. For more information about ARNs, see Amazon Resource Names (ARNs) + // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + InstanceArn *string `min:"10" type:"string"` + + // The application name. + Name *string `type:"string"` + + // A structure that describes the options for the portal associated with an + // application. + PortalOptions *PortalOptions `type:"structure"` + + // Specifies whether the application is enabled or disabled. + Status *string `type:"string" enum:"ApplicationStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationOutput) GoString() string { + return s.String() +} + +// SetApplicationAccount sets the ApplicationAccount field's value. +func (s *DescribeApplicationOutput) SetApplicationAccount(v string) *DescribeApplicationOutput { + s.ApplicationAccount = &v + return s +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *DescribeApplicationOutput) SetApplicationArn(v string) *DescribeApplicationOutput { + s.ApplicationArn = &v + return s +} + +// SetApplicationProviderArn sets the ApplicationProviderArn field's value. +func (s *DescribeApplicationOutput) SetApplicationProviderArn(v string) *DescribeApplicationOutput { + s.ApplicationProviderArn = &v + return s +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *DescribeApplicationOutput) SetCreatedDate(v time.Time) *DescribeApplicationOutput { + s.CreatedDate = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DescribeApplicationOutput) SetDescription(v string) *DescribeApplicationOutput { + s.Description = &v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *DescribeApplicationOutput) SetInstanceArn(v string) *DescribeApplicationOutput { + s.InstanceArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DescribeApplicationOutput) SetName(v string) *DescribeApplicationOutput { + s.Name = &v + return s +} + +// SetPortalOptions sets the PortalOptions field's value. +func (s *DescribeApplicationOutput) SetPortalOptions(v *PortalOptions) *DescribeApplicationOutput { + s.PortalOptions = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribeApplicationOutput) SetStatus(v string) *DescribeApplicationOutput { + s.Status = &v + return s +} + +type DescribeApplicationProviderInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application provider for which you want details. + // + // ApplicationProviderArn is a required field + ApplicationProviderArn *string `min:"10" 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 DescribeApplicationProviderInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationProviderInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeApplicationProviderInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationProviderInput"} + if s.ApplicationProviderArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationProviderArn")) + } + if s.ApplicationProviderArn != nil && len(*s.ApplicationProviderArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationProviderArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationProviderArn sets the ApplicationProviderArn field's value. +func (s *DescribeApplicationProviderInput) SetApplicationProviderArn(v string) *DescribeApplicationProviderInput { + s.ApplicationProviderArn = &v + return s +} + +type DescribeApplicationProviderOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the application provider. + // + // ApplicationProviderArn is a required field + ApplicationProviderArn *string `min:"10" type:"string" required:"true"` + + // A structure with details about the display data for the application provider. + DisplayData *DisplayData `type:"structure"` + + // The protocol used to federate to the application provider. + FederationProtocol *string `type:"string" enum:"FederationProtocol"` + + // A structure with details about the receiving application. + ResourceServerConfig *ResourceServerConfig `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 DescribeApplicationProviderOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationProviderOutput) GoString() string { + return s.String() +} + +// SetApplicationProviderArn sets the ApplicationProviderArn field's value. +func (s *DescribeApplicationProviderOutput) SetApplicationProviderArn(v string) *DescribeApplicationProviderOutput { + s.ApplicationProviderArn = &v + return s +} + +// SetDisplayData sets the DisplayData field's value. +func (s *DescribeApplicationProviderOutput) SetDisplayData(v *DisplayData) *DescribeApplicationProviderOutput { + s.DisplayData = v + return s +} + +// SetFederationProtocol sets the FederationProtocol field's value. +func (s *DescribeApplicationProviderOutput) SetFederationProtocol(v string) *DescribeApplicationProviderOutput { + s.FederationProtocol = &v + return s +} + +// SetResourceServerConfig sets the ResourceServerConfig field's value. +func (s *DescribeApplicationProviderOutput) SetResourceServerConfig(v *ResourceServerConfig) *DescribeApplicationProviderOutput { + s.ResourceServerConfig = v + return s +} + type DescribeInstanceAccessControlAttributeConfigurationInput struct { _ struct{} `type:"structure"` @@ -6340,6 +12465,137 @@ return s } +type DescribeInstanceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the instance of IAM Identity Center under which the operation + // will run. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" 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 DescribeInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *DescribeInstanceInput) SetInstanceArn(v string) *DescribeInstanceInput { + s.InstanceArn = &v + return s +} + +type DescribeInstanceOutput struct { + _ struct{} `type:"structure"` + + // The date the instance was created. + CreatedDate *time.Time `type:"timestamp"` + + // The identifier of the identity store that is connected to the instance of + // IAM Identity Center. + IdentityStoreId *string `min:"1" type:"string"` + + // The ARN of the instance of IAM Identity Center under which the operation + // will run. For more information about ARNs, see Amazon Resource Names (ARNs) + // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + InstanceArn *string `min:"10" type:"string"` + + // Specifies the instance name. + Name *string `type:"string"` + + // The identifier of the Amazon Web Services account for which the instance + // was created. + OwnerAccountId *string `min:"12" type:"string"` + + // The status of the instance. + Status *string `type:"string" enum:"InstanceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeInstanceOutput) GoString() string { + return s.String() +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *DescribeInstanceOutput) SetCreatedDate(v time.Time) *DescribeInstanceOutput { + s.CreatedDate = &v + return s +} + +// SetIdentityStoreId sets the IdentityStoreId field's value. +func (s *DescribeInstanceOutput) SetIdentityStoreId(v string) *DescribeInstanceOutput { + s.IdentityStoreId = &v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *DescribeInstanceOutput) SetInstanceArn(v string) *DescribeInstanceOutput { + s.InstanceArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DescribeInstanceOutput) SetName(v string) *DescribeInstanceOutput { + s.Name = &v + return s +} + +// SetOwnerAccountId sets the OwnerAccountId field's value. +func (s *DescribeInstanceOutput) SetOwnerAccountId(v string) *DescribeInstanceOutput { + s.OwnerAccountId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribeInstanceOutput) SetStatus(v string) *DescribeInstanceOutput { + s.Status = &v + return s +} + type DescribePermissionSetInput struct { _ struct{} `type:"structure"` @@ -6541,6 +12797,114 @@ return s } +type DescribeTrustedTokenIssuerInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the trusted token issuer configuration that you want + // details about. + // + // TrustedTokenIssuerArn is a required field + TrustedTokenIssuerArn *string `min:"10" 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 DescribeTrustedTokenIssuerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustedTokenIssuerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeTrustedTokenIssuerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTrustedTokenIssuerInput"} + if s.TrustedTokenIssuerArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustedTokenIssuerArn")) + } + if s.TrustedTokenIssuerArn != nil && len(*s.TrustedTokenIssuerArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("TrustedTokenIssuerArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *DescribeTrustedTokenIssuerInput) SetTrustedTokenIssuerArn(v string) *DescribeTrustedTokenIssuerInput { + s.TrustedTokenIssuerArn = &v + return s +} + +type DescribeTrustedTokenIssuerOutput struct { + _ struct{} `type:"structure"` + + // The name of the trusted token issuer configuration. + Name *string `min:"1" type:"string"` + + // The ARN of the trusted token issuer configuration. + TrustedTokenIssuerArn *string `min:"10" type:"string"` + + // A structure the describes the settings that apply of this trusted token issuer. + TrustedTokenIssuerConfiguration *TrustedTokenIssuerConfiguration `type:"structure"` + + // The type of the trusted token issuer. + TrustedTokenIssuerType *string `type:"string" enum:"TrustedTokenIssuerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustedTokenIssuerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeTrustedTokenIssuerOutput) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *DescribeTrustedTokenIssuerOutput) SetName(v string) *DescribeTrustedTokenIssuerOutput { + s.Name = &v + return s +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *DescribeTrustedTokenIssuerOutput) SetTrustedTokenIssuerArn(v string) *DescribeTrustedTokenIssuerOutput { + s.TrustedTokenIssuerArn = &v + return s +} + +// SetTrustedTokenIssuerConfiguration sets the TrustedTokenIssuerConfiguration field's value. +func (s *DescribeTrustedTokenIssuerOutput) SetTrustedTokenIssuerConfiguration(v *TrustedTokenIssuerConfiguration) *DescribeTrustedTokenIssuerOutput { + s.TrustedTokenIssuerConfiguration = v + return s +} + +// SetTrustedTokenIssuerType sets the TrustedTokenIssuerType field's value. +func (s *DescribeTrustedTokenIssuerOutput) SetTrustedTokenIssuerType(v string) *DescribeTrustedTokenIssuerOutput { + s.TrustedTokenIssuerType = &v + return s +} + type DetachCustomerManagedPolicyReferenceFromPermissionSetInput struct { _ struct{} `type:"structure"` @@ -6760,6 +13124,440 @@ return s.String() } +// A structure that describes how the portal represents an application provider. +type DisplayData struct { + _ struct{} `type:"structure"` + + // The description of the application provider that appears in the portal. + Description *string `min:"1" type:"string"` + + // The name of the application provider that appears in the portal. + DisplayName *string `min:"1" type:"string"` + + // A URL that points to an icon that represents the application provider. + IconUrl *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisplayData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisplayData) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *DisplayData) SetDescription(v string) *DisplayData { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *DisplayData) SetDisplayName(v string) *DisplayData { + s.DisplayName = &v + return s +} + +// SetIconUrl sets the IconUrl field's value. +func (s *DisplayData) SetIconUrl(v string) *DisplayData { + s.IconUrl = &v + return s +} + +type GetApplicationAccessScopeInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the access scope that you want + // to retrieve. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the name of the access scope for which you want the authorized + // targets. + // + // Scope is a required field + Scope *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAccessScopeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAccessScopeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationAccessScopeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationAccessScopeInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.Scope == nil { + invalidParams.Add(request.NewErrParamRequired("Scope")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *GetApplicationAccessScopeInput) SetApplicationArn(v string) *GetApplicationAccessScopeInput { + s.ApplicationArn = &v + return s +} + +// SetScope sets the Scope field's value. +func (s *GetApplicationAccessScopeInput) SetScope(v string) *GetApplicationAccessScopeInput { + s.Scope = &v + return s +} + +type GetApplicationAccessScopeOutput struct { + _ struct{} `type:"structure"` + + // An array of authorized targets associated with this access scope. + AuthorizedTargets []*string `min:"1" type:"list"` + + // The name of the access scope that can be used with the authorized targets. + // + // Scope is a required field + Scope *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAccessScopeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAccessScopeOutput) GoString() string { + return s.String() +} + +// SetAuthorizedTargets sets the AuthorizedTargets field's value. +func (s *GetApplicationAccessScopeOutput) SetAuthorizedTargets(v []*string) *GetApplicationAccessScopeOutput { + s.AuthorizedTargets = v + return s +} + +// SetScope sets the Scope field's value. +func (s *GetApplicationAccessScopeOutput) SetScope(v string) *GetApplicationAccessScopeOutput { + s.Scope = &v + return s +} + +type GetApplicationAssignmentConfigurationInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" 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 GetApplicationAssignmentConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAssignmentConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationAssignmentConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationAssignmentConfigurationInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *GetApplicationAssignmentConfigurationInput) SetApplicationArn(v string) *GetApplicationAssignmentConfigurationInput { + s.ApplicationArn = &v + return s +} + +type GetApplicationAssignmentConfigurationOutput struct { + _ struct{} `type:"structure"` + + // If AssignmentsRequired is true (default value), users don’t have access + // to the application unless an assignment is created using the CreateApplicationAssignment + // API (https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_CreateApplicationAssignment.html). + // If false, all users have access to the application. + // + // AssignmentRequired is a required field + AssignmentRequired *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAssignmentConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAssignmentConfigurationOutput) GoString() string { + return s.String() +} + +// SetAssignmentRequired sets the AssignmentRequired field's value. +func (s *GetApplicationAssignmentConfigurationOutput) SetAssignmentRequired(v bool) *GetApplicationAssignmentConfigurationOutput { + s.AssignmentRequired = &v + return s +} + +type GetApplicationAuthenticationMethodInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the type of authentication method for which you want details. + // + // AuthenticationMethodType is a required field + AuthenticationMethodType *string `type:"string" required:"true" enum:"AuthenticationMethodType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAuthenticationMethodInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAuthenticationMethodInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationAuthenticationMethodInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationAuthenticationMethodInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.AuthenticationMethodType == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationMethodType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *GetApplicationAuthenticationMethodInput) SetApplicationArn(v string) *GetApplicationAuthenticationMethodInput { + s.ApplicationArn = &v + return s +} + +// SetAuthenticationMethodType sets the AuthenticationMethodType field's value. +func (s *GetApplicationAuthenticationMethodInput) SetAuthenticationMethodType(v string) *GetApplicationAuthenticationMethodInput { + s.AuthenticationMethodType = &v + return s +} + +type GetApplicationAuthenticationMethodOutput struct { + _ struct{} `type:"structure"` + + // A structure that contains details about the requested authentication method. + AuthenticationMethod *AuthenticationMethod `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 GetApplicationAuthenticationMethodOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationAuthenticationMethodOutput) GoString() string { + return s.String() +} + +// SetAuthenticationMethod sets the AuthenticationMethod field's value. +func (s *GetApplicationAuthenticationMethodOutput) SetAuthenticationMethod(v *AuthenticationMethod) *GetApplicationAuthenticationMethodOutput { + s.AuthenticationMethod = v + return s +} + +type GetApplicationGrantInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application that contains the grant. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the type of grant. + // + // GrantType is a required field + GrantType *string `type:"string" required:"true" enum:"GrantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationGrantInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.GrantType == nil { + invalidParams.Add(request.NewErrParamRequired("GrantType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *GetApplicationGrantInput) SetApplicationArn(v string) *GetApplicationGrantInput { + s.ApplicationArn = &v + return s +} + +// SetGrantType sets the GrantType field's value. +func (s *GetApplicationGrantInput) SetGrantType(v string) *GetApplicationGrantInput { + s.GrantType = &v + return s +} + +type GetApplicationGrantOutput struct { + _ struct{} `type:"structure"` + + // A structure that describes the requested grant. + // + // Grant is a required field + Grant *Grant `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 GetApplicationGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationGrantOutput) GoString() string { + return s.String() +} + +// SetGrant sets the Grant field's value. +func (s *GetApplicationGrantOutput) SetGrant(v *Grant) *GetApplicationGrantOutput { + s.Grant = v + return s +} + type GetInlinePolicyForPermissionSetInput struct { _ struct{} `type:"structure"` @@ -6961,6 +13759,134 @@ return s } +// The Grant union represents the set of possible configuration options for +// the selected grant type. Exactly one member of the union must be specified, +// and must match the grant type selected. +type Grant struct { + _ struct{} `type:"structure"` + + // Configuration options for the authorization_code grant type. + AuthorizationCode *AuthorizationCodeGrant `type:"structure"` + + // Configuration options for the urn:ietf:params:oauth:grant-type:jwt-bearer + // grant type. + JwtBearer *JwtBearerGrant `type:"structure"` + + // Configuration options for the refresh_token grant type. + RefreshToken *RefreshTokenGrant `type:"structure"` + + // Configuration options for the urn:ietf:params:oauth:grant-type:token-exchange + // grant type. + TokenExchange *TokenExchangeGrant `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 Grant) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Grant) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Grant) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Grant"} + if s.AuthorizationCode != nil { + if err := s.AuthorizationCode.Validate(); err != nil { + invalidParams.AddNested("AuthorizationCode", err.(request.ErrInvalidParams)) + } + } + if s.JwtBearer != nil { + if err := s.JwtBearer.Validate(); err != nil { + invalidParams.AddNested("JwtBearer", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizationCode sets the AuthorizationCode field's value. +func (s *Grant) SetAuthorizationCode(v *AuthorizationCodeGrant) *Grant { + s.AuthorizationCode = v + return s +} + +// SetJwtBearer sets the JwtBearer field's value. +func (s *Grant) SetJwtBearer(v *JwtBearerGrant) *Grant { + s.JwtBearer = v + return s +} + +// SetRefreshToken sets the RefreshToken field's value. +func (s *Grant) SetRefreshToken(v *RefreshTokenGrant) *Grant { + s.RefreshToken = v + return s +} + +// SetTokenExchange sets the TokenExchange field's value. +func (s *Grant) SetTokenExchange(v *TokenExchangeGrant) *Grant { + s.TokenExchange = v + return s +} + +// A structure that defines a single grant and its configuration. +type GrantItem struct { + _ struct{} `type:"structure"` + + // The configuration structure for the selected grant. + // + // Grant is a required field + Grant *Grant `type:"structure" required:"true"` + + // The type of the selected grant. + // + // GrantType is a required field + GrantType *string `type:"string" required:"true" enum:"GrantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrantItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrantItem) GoString() string { + return s.String() +} + +// SetGrant sets the Grant field's value. +func (s *GrantItem) SetGrant(v *Grant) *GrantItem { + s.Grant = v + return s +} + +// SetGrantType sets the GrantType field's value. +func (s *GrantItem) SetGrantType(v string) *GrantItem { + s.GrantType = &v + return s +} + // Specifies the attributes to add to your attribute-based access control (ABAC) // configuration. type InstanceAccessControlAttributeConfiguration struct { @@ -7024,15 +13950,28 @@ type InstanceMetadata struct { _ struct{} `type:"structure"` - // The identifier of the identity store that is connected to the IAM Identity - // Center instance. + // The date and time that the Identity Center instance was created. + CreatedDate *time.Time `type:"timestamp"` + + // The identifier of the identity store that is connected to the Identity Center + // instance. IdentityStoreId *string `min:"1" type:"string"` - // The ARN of the IAM Identity Center instance under which the operation will - // be executed. For more information about ARNs, see Amazon Resource Names (ARNs) + // The ARN of the Identity Center instance under which the operation will be + // executed. For more information about ARNs, see Amazon Resource Names (ARNs) // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) // in the Amazon Web Services General Reference. InstanceArn *string `min:"10" type:"string"` + + // The name of the Identity Center instance. + Name *string `type:"string"` + + // The Amazon Web Services account ID number of the owner of the Identity Center + // instance. + OwnerAccountId *string `min:"12" type:"string"` + + // The current status of this Identity Center instance. + Status *string `type:"string" enum:"InstanceStatus"` } // String returns the string representation. @@ -7053,6 +13992,12 @@ return s.String() } +// SetCreatedDate sets the CreatedDate field's value. +func (s *InstanceMetadata) SetCreatedDate(v time.Time) *InstanceMetadata { + s.CreatedDate = &v + return s +} + // SetIdentityStoreId sets the IdentityStoreId field's value. func (s *InstanceMetadata) SetIdentityStoreId(v string) *InstanceMetadata { s.IdentityStoreId = &v @@ -7065,6 +14010,24 @@ return s } +// SetName sets the Name field's value. +func (s *InstanceMetadata) SetName(v string) *InstanceMetadata { + s.Name = &v + return s +} + +// SetOwnerAccountId sets the OwnerAccountId field's value. +func (s *InstanceMetadata) SetOwnerAccountId(v string) *InstanceMetadata { + s.OwnerAccountId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *InstanceMetadata) SetStatus(v string) *InstanceMetadata { + s.Status = &v + return s +} + // The request processing has failed because of an unknown error, exception, // or failure with an internal server. type InternalServerException struct { @@ -7130,6 +14093,63 @@ return s.RespMetadata.RequestID } +// A structure that defines configuration settings for an application that supports +// the JWT Bearer Token Authorization Grant. +type JwtBearerGrant struct { + _ struct{} `type:"structure"` + + // A list of allowed token issuers trusted by the Identity Center instances + // for this application. + AuthorizedTokenIssuers []*AuthorizedTokenIssuer `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 JwtBearerGrant) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JwtBearerGrant) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *JwtBearerGrant) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "JwtBearerGrant"} + if s.AuthorizedTokenIssuers != nil && len(s.AuthorizedTokenIssuers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AuthorizedTokenIssuers", 1)) + } + if s.AuthorizedTokenIssuers != nil { + for i, v := range s.AuthorizedTokenIssuers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AuthorizedTokenIssuers", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizedTokenIssuers sets the AuthorizedTokenIssuers field's value. +func (s *JwtBearerGrant) SetAuthorizedTokenIssuers(v []*AuthorizedTokenIssuer) *JwtBearerGrant { + s.AuthorizedTokenIssuers = v + return s +} + type ListAccountAssignmentCreationStatusInput struct { _ struct{} `type:"structure"` @@ -7378,6 +14398,224 @@ return s } +// A structure that describes a filter for account assignments. +type ListAccountAssignmentsFilter struct { + _ struct{} `type:"structure"` + + // The ID number of an Amazon Web Services account that filters the results + // in the response. + AccountId *string `min:"12" 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 ListAccountAssignmentsFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccountAssignmentsFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAccountAssignmentsFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAccountAssignmentsFilter"} + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListAccountAssignmentsFilter) SetAccountId(v string) *ListAccountAssignmentsFilter { + s.AccountId = &v + return s +} + +type ListAccountAssignmentsForPrincipalInput struct { + _ struct{} `type:"structure"` + + // Specifies an Amazon Web Services account ID number. Results are filtered + // to only those that match this ID number. + Filter *ListAccountAssignmentsFilter `type:"structure"` + + // Specifies the ARN of the instance of IAM Identity Center that contains the + // principal. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` + + // Specifies the principal for which you want to retrieve the list of account + // assignments. + // + // PrincipalId is a required field + PrincipalId *string `min:"1" type:"string" required:"true"` + + // Specifies the type of the principal. + // + // PrincipalType is a required field + PrincipalType *string `type:"string" required:"true" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccountAssignmentsForPrincipalInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccountAssignmentsForPrincipalInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAccountAssignmentsForPrincipalInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAccountAssignmentsForPrincipalInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.PrincipalId == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + } + if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) + } + if s.PrincipalType == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalType")) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *ListAccountAssignmentsForPrincipalInput) SetFilter(v *ListAccountAssignmentsFilter) *ListAccountAssignmentsForPrincipalInput { + s.Filter = v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *ListAccountAssignmentsForPrincipalInput) SetInstanceArn(v string) *ListAccountAssignmentsForPrincipalInput { + s.InstanceArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAccountAssignmentsForPrincipalInput) SetMaxResults(v int64) *ListAccountAssignmentsForPrincipalInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccountAssignmentsForPrincipalInput) SetNextToken(v string) *ListAccountAssignmentsForPrincipalInput { + s.NextToken = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *ListAccountAssignmentsForPrincipalInput) SetPrincipalId(v string) *ListAccountAssignmentsForPrincipalInput { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *ListAccountAssignmentsForPrincipalInput) SetPrincipalType(v string) *ListAccountAssignmentsForPrincipalInput { + s.PrincipalType = &v + return s +} + +type ListAccountAssignmentsForPrincipalOutput struct { + _ struct{} `type:"structure"` + + // An array list of the account assignments for the principal. + AccountAssignments []*AccountAssignmentForPrincipal `type:"list"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccountAssignmentsForPrincipalOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAccountAssignmentsForPrincipalOutput) GoString() string { + return s.String() +} + +// SetAccountAssignments sets the AccountAssignments field's value. +func (s *ListAccountAssignmentsForPrincipalOutput) SetAccountAssignments(v []*AccountAssignmentForPrincipal) *ListAccountAssignmentsForPrincipalOutput { + s.AccountAssignments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAccountAssignmentsForPrincipalOutput) SetNextToken(v string) *ListAccountAssignmentsForPrincipalOutput { + s.NextToken = &v + return s +} + type ListAccountAssignmentsInput struct { _ struct{} `type:"structure"` @@ -7671,6 +14909,995 @@ return s } +type ListApplicationAccessScopesInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAccessScopesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAccessScopesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationAccessScopesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationAccessScopesInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListApplicationAccessScopesInput) SetApplicationArn(v string) *ListApplicationAccessScopesInput { + s.ApplicationArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationAccessScopesInput) SetMaxResults(v int64) *ListApplicationAccessScopesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAccessScopesInput) SetNextToken(v string) *ListApplicationAccessScopesInput { + s.NextToken = &v + return s +} + +type ListApplicationAccessScopesOutput struct { + _ struct{} `type:"structure"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` + + // An array list of access scopes and their authorized targets that are associated + // with the application. + // + // Scopes is a required field + Scopes []*ScopeDetails `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 ListApplicationAccessScopesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAccessScopesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAccessScopesOutput) SetNextToken(v string) *ListApplicationAccessScopesOutput { + s.NextToken = &v + return s +} + +// SetScopes sets the Scopes field's value. +func (s *ListApplicationAccessScopesOutput) SetScopes(v []*ScopeDetails) *ListApplicationAccessScopesOutput { + s.Scopes = v + return s +} + +// A structure that describes a filter for application assignments. +type ListApplicationAssignmentsFilter struct { + _ struct{} `type:"structure"` + + // The ARN of an application. + ApplicationArn *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationAssignmentsFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationAssignmentsFilter"} + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListApplicationAssignmentsFilter) SetApplicationArn(v string) *ListApplicationAssignmentsFilter { + s.ApplicationArn = &v + return s +} + +type ListApplicationAssignmentsForPrincipalInput struct { + _ struct{} `type:"structure"` + + // Filters the output to include only assignments associated with the application + // that has the specified ARN. + Filter *ListApplicationAssignmentsFilter `type:"structure"` + + // Specifies the instance of IAM Identity Center that contains principal and + // applications. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` + + // Specifies the unique identifier of the principal for which you want to retrieve + // its assignments. + // + // PrincipalId is a required field + PrincipalId *string `min:"1" type:"string" required:"true"` + + // Specifies the type of the principal for which you want to retrieve its assignments. + // + // PrincipalType is a required field + PrincipalType *string `type:"string" required:"true" enum:"PrincipalType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsForPrincipalInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsForPrincipalInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationAssignmentsForPrincipalInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationAssignmentsForPrincipalInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.PrincipalId == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + } + if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) + } + if s.PrincipalType == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalType")) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *ListApplicationAssignmentsForPrincipalInput) SetFilter(v *ListApplicationAssignmentsFilter) *ListApplicationAssignmentsForPrincipalInput { + s.Filter = v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *ListApplicationAssignmentsForPrincipalInput) SetInstanceArn(v string) *ListApplicationAssignmentsForPrincipalInput { + s.InstanceArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationAssignmentsForPrincipalInput) SetMaxResults(v int64) *ListApplicationAssignmentsForPrincipalInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAssignmentsForPrincipalInput) SetNextToken(v string) *ListApplicationAssignmentsForPrincipalInput { + s.NextToken = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *ListApplicationAssignmentsForPrincipalInput) SetPrincipalId(v string) *ListApplicationAssignmentsForPrincipalInput { + s.PrincipalId = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *ListApplicationAssignmentsForPrincipalInput) SetPrincipalType(v string) *ListApplicationAssignmentsForPrincipalInput { + s.PrincipalType = &v + return s +} + +type ListApplicationAssignmentsForPrincipalOutput struct { + _ struct{} `type:"structure"` + + // An array list of the application assignments for the specified principal. + ApplicationAssignments []*ApplicationAssignmentForPrincipal `type:"list"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsForPrincipalOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsForPrincipalOutput) GoString() string { + return s.String() +} + +// SetApplicationAssignments sets the ApplicationAssignments field's value. +func (s *ListApplicationAssignmentsForPrincipalOutput) SetApplicationAssignments(v []*ApplicationAssignmentForPrincipal) *ListApplicationAssignmentsForPrincipalOutput { + s.ApplicationAssignments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAssignmentsForPrincipalOutput) SetNextToken(v string) *ListApplicationAssignmentsForPrincipalOutput { + s.NextToken = &v + return s +} + +type ListApplicationAssignmentsInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationAssignmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationAssignmentsInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListApplicationAssignmentsInput) SetApplicationArn(v string) *ListApplicationAssignmentsInput { + s.ApplicationArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationAssignmentsInput) SetMaxResults(v int64) *ListApplicationAssignmentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAssignmentsInput) SetNextToken(v string) *ListApplicationAssignmentsInput { + s.NextToken = &v + return s +} + +type ListApplicationAssignmentsOutput struct { + _ struct{} `type:"structure"` + + // The list of users assigned to an application. + ApplicationAssignments []*ApplicationAssignment `type:"list"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAssignmentsOutput) GoString() string { + return s.String() +} + +// SetApplicationAssignments sets the ApplicationAssignments field's value. +func (s *ListApplicationAssignmentsOutput) SetApplicationAssignments(v []*ApplicationAssignment) *ListApplicationAssignmentsOutput { + s.ApplicationAssignments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAssignmentsOutput) SetNextToken(v string) *ListApplicationAssignmentsOutput { + s.NextToken = &v + return s +} + +type ListApplicationAuthenticationMethodsInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the authentication methods you + // want to list. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAuthenticationMethodsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAuthenticationMethodsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationAuthenticationMethodsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationAuthenticationMethodsInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListApplicationAuthenticationMethodsInput) SetApplicationArn(v string) *ListApplicationAuthenticationMethodsInput { + s.ApplicationArn = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAuthenticationMethodsInput) SetNextToken(v string) *ListApplicationAuthenticationMethodsInput { + s.NextToken = &v + return s +} + +type ListApplicationAuthenticationMethodsOutput struct { + _ struct{} `type:"structure"` + + // An array list of authentication methods for the specified application. + AuthenticationMethods []*AuthenticationMethodItem `type:"list"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAuthenticationMethodsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationAuthenticationMethodsOutput) GoString() string { + return s.String() +} + +// SetAuthenticationMethods sets the AuthenticationMethods field's value. +func (s *ListApplicationAuthenticationMethodsOutput) SetAuthenticationMethods(v []*AuthenticationMethodItem) *ListApplicationAuthenticationMethodsOutput { + s.AuthenticationMethods = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationAuthenticationMethodsOutput) SetNextToken(v string) *ListApplicationAuthenticationMethodsOutput { + s.NextToken = &v + return s +} + +type ListApplicationGrantsInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application whose grants you want to list. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationGrantsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationGrantsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationGrantsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationGrantsInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *ListApplicationGrantsInput) SetApplicationArn(v string) *ListApplicationGrantsInput { + s.ApplicationArn = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationGrantsInput) SetNextToken(v string) *ListApplicationGrantsInput { + s.NextToken = &v + return s +} + +type ListApplicationGrantsOutput struct { + _ struct{} `type:"structure"` + + // An array list of structures that describe the requested grants. + // + // Grants is a required field + Grants []*GrantItem `type:"list" required:"true"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationGrantsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationGrantsOutput) GoString() string { + return s.String() +} + +// SetGrants sets the Grants field's value. +func (s *ListApplicationGrantsOutput) SetGrants(v []*GrantItem) *ListApplicationGrantsOutput { + s.Grants = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationGrantsOutput) SetNextToken(v string) *ListApplicationGrantsOutput { + s.NextToken = &v + return s +} + +type ListApplicationProvidersInput struct { + _ struct{} `type:"structure"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationProvidersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationProvidersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationProvidersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationProvidersInput"} + 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 *ListApplicationProvidersInput) SetMaxResults(v int64) *ListApplicationProvidersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationProvidersInput) SetNextToken(v string) *ListApplicationProvidersInput { + s.NextToken = &v + return s +} + +type ListApplicationProvidersOutput struct { + _ struct{} `type:"structure"` + + // An array list of structures that describe application providers. + ApplicationProviders []*ApplicationProvider `type:"list"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationProvidersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationProvidersOutput) GoString() string { + return s.String() +} + +// SetApplicationProviders sets the ApplicationProviders field's value. +func (s *ListApplicationProvidersOutput) SetApplicationProviders(v []*ApplicationProvider) *ListApplicationProvidersOutput { + s.ApplicationProviders = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationProvidersOutput) SetNextToken(v string) *ListApplicationProvidersOutput { + s.NextToken = &v + return s +} + +// A structure that describes a filter for applications. +type ListApplicationsFilter struct { + _ struct{} `type:"structure"` + + // An Amazon Web Services account ID number that filters the results in the + // response. + ApplicationAccount *string `min:"12" type:"string"` + + // The ARN of an application provider that can filter the results in the response. + ApplicationProvider *string `min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationsFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationsFilter"} + if s.ApplicationAccount != nil && len(*s.ApplicationAccount) < 12 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationAccount", 12)) + } + if s.ApplicationProvider != nil && len(*s.ApplicationProvider) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationProvider", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationAccount sets the ApplicationAccount field's value. +func (s *ListApplicationsFilter) SetApplicationAccount(v string) *ListApplicationsFilter { + s.ApplicationAccount = &v + return s +} + +// SetApplicationProvider sets the ApplicationProvider field's value. +func (s *ListApplicationsFilter) SetApplicationProvider(v string) *ListApplicationsFilter { + s.ApplicationProvider = &v + return s +} + +type ListApplicationsInput struct { + _ struct{} `type:"structure"` + + // Filters response results. + Filter *ListApplicationsFilter `type:"structure"` + + // The ARN of the IAM Identity Center application under which the operation + // will run. For more information about ARNs, see Amazon Resource Names (ARNs) + // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilter sets the Filter field's value. +func (s *ListApplicationsInput) SetFilter(v *ListApplicationsFilter) *ListApplicationsInput { + s.Filter = v + return s +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *ListApplicationsInput) SetInstanceArn(v string) *ListApplicationsInput { + s.InstanceArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput { + s.NextToken = &v + return s +} + +type ListApplicationsOutput struct { + _ struct{} `type:"structure"` + + // Retrieves all applications associated with the instance. + Applications []*Application `type:"list"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) GoString() string { + return s.String() +} + +// SetApplications sets the Applications field's value. +func (s *ListApplicationsOutput) SetApplications(v []*Application) *ListApplicationsOutput { + s.Applications = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput { + s.NextToken = &v + return s +} + type ListCustomerManagedPolicyReferencesInPermissionSetInput struct { _ struct{} `type:"structure"` @@ -8417,9 +16644,7 @@ // be executed. For more information about ARNs, see Amazon Resource Names (ARNs) // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) // in the Amazon Web Services General Reference. - // - // InstanceArn is a required field - InstanceArn *string `min:"10" type:"string" required:"true"` + InstanceArn *string `min:"10" type:"string"` // The pagination token for the list API. Initially the value is null. Use the // output of previous API calls to make subsequent calls. @@ -8452,9 +16677,6 @@ // 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.InstanceArn == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceArn")) - } if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) } @@ -8530,7 +16752,314 @@ return s } -// Filters he operation status list based on the passed attribute value. +type ListTrustedTokenIssuersInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the instance of IAM Identity Center with the trusted + // token issuer configurations that you want to list. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // Specifies the total number of results that you want included in each response. + // If additional items exist beyond the number you specify, the NextToken response + // element is returned with a value (not null). Include the specified value + // as the NextToken request parameter in the next call to the operation to get + // the next set of results. Note that the service might return fewer results + // than the maximum even when there are more results available. You should check + // NextToken after every operation to ensure that you receive all of the results. + MaxResults *int64 `min:"1" type:"integer"` + + // Specifies that you want to receive the next page of results. Valid only if + // you received a NextToken response in the previous request. If you did, it + // indicates that more output is available. Set this parameter to the value + // provided by the previous call's NextToken response to request the next page + // of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTrustedTokenIssuersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTrustedTokenIssuersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTrustedTokenIssuersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTrustedTokenIssuersInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *ListTrustedTokenIssuersInput) SetInstanceArn(v string) *ListTrustedTokenIssuersInput { + s.InstanceArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTrustedTokenIssuersInput) SetMaxResults(v int64) *ListTrustedTokenIssuersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTrustedTokenIssuersInput) SetNextToken(v string) *ListTrustedTokenIssuersInput { + s.NextToken = &v + return s +} + +type ListTrustedTokenIssuersOutput struct { + _ struct{} `type:"structure"` + + // If present, this value indicates that more output is available than is included + // in the current response. Use this value in the NextToken request parameter + // in a subsequent call to the operation to get the next part of the output. + // You should repeat this until the NextToken response element comes back as + // null. This indicates that this is the last page of results. + NextToken *string `type:"string"` + + // An array list of the trusted token issuer configurations. + TrustedTokenIssuers []*TrustedTokenIssuerMetadata `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 ListTrustedTokenIssuersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTrustedTokenIssuersOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTrustedTokenIssuersOutput) SetNextToken(v string) *ListTrustedTokenIssuersOutput { + s.NextToken = &v + return s +} + +// SetTrustedTokenIssuers sets the TrustedTokenIssuers field's value. +func (s *ListTrustedTokenIssuersOutput) SetTrustedTokenIssuers(v []*TrustedTokenIssuerMetadata) *ListTrustedTokenIssuersOutput { + s.TrustedTokenIssuers = v + return s +} + +// A structure that describes configuration settings for a trusted token issuer +// that supports OpenID Connect (OIDC) and JSON Web Tokens (JWTs). +type OidcJwtConfiguration struct { + _ struct{} `type:"structure"` + + // The path of the source attribute in the JWT from the trusted token issuer. + // The attribute mapped by this JMESPath expression is compared against the + // attribute mapped by IdentityStoreAttributePath when a trusted token issuer + // token is exchanged for an IAM Identity Center token. + // + // ClaimAttributePath is a required field + ClaimAttributePath *string `min:"1" type:"string" required:"true"` + + // The path of the destination attribute in a JWT from IAM Identity Center. + // The attribute mapped by this JMESPath expression is compared against the + // attribute mapped by ClaimAttributePath when a trusted token issuer token + // is exchanged for an IAM Identity Center token. + // + // IdentityStoreAttributePath is a required field + IdentityStoreAttributePath *string `min:"1" type:"string" required:"true"` + + // The URL that IAM Identity Center uses for OpenID Discovery. OpenID Discovery + // is used to obtain the information required to verify the tokens that the + // trusted token issuer generates. + // + // IssuerUrl is a required field + IssuerUrl *string `min:"1" type:"string" required:"true"` + + // The method that the trusted token issuer can use to retrieve the JSON Web + // Key Set used to verify a JWT. + // + // JwksRetrievalOption is a required field + JwksRetrievalOption *string `type:"string" required:"true" enum:"JwksRetrievalOption"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OidcJwtConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OidcJwtConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OidcJwtConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OidcJwtConfiguration"} + if s.ClaimAttributePath == nil { + invalidParams.Add(request.NewErrParamRequired("ClaimAttributePath")) + } + if s.ClaimAttributePath != nil && len(*s.ClaimAttributePath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClaimAttributePath", 1)) + } + if s.IdentityStoreAttributePath == nil { + invalidParams.Add(request.NewErrParamRequired("IdentityStoreAttributePath")) + } + if s.IdentityStoreAttributePath != nil && len(*s.IdentityStoreAttributePath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdentityStoreAttributePath", 1)) + } + if s.IssuerUrl == nil { + invalidParams.Add(request.NewErrParamRequired("IssuerUrl")) + } + if s.IssuerUrl != nil && len(*s.IssuerUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IssuerUrl", 1)) + } + if s.JwksRetrievalOption == nil { + invalidParams.Add(request.NewErrParamRequired("JwksRetrievalOption")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClaimAttributePath sets the ClaimAttributePath field's value. +func (s *OidcJwtConfiguration) SetClaimAttributePath(v string) *OidcJwtConfiguration { + s.ClaimAttributePath = &v + return s +} + +// SetIdentityStoreAttributePath sets the IdentityStoreAttributePath field's value. +func (s *OidcJwtConfiguration) SetIdentityStoreAttributePath(v string) *OidcJwtConfiguration { + s.IdentityStoreAttributePath = &v + return s +} + +// SetIssuerUrl sets the IssuerUrl field's value. +func (s *OidcJwtConfiguration) SetIssuerUrl(v string) *OidcJwtConfiguration { + s.IssuerUrl = &v + return s +} + +// SetJwksRetrievalOption sets the JwksRetrievalOption field's value. +func (s *OidcJwtConfiguration) SetJwksRetrievalOption(v string) *OidcJwtConfiguration { + s.JwksRetrievalOption = &v + return s +} + +// A structure that describes updated configuration settings for a trusted token +// issuer that supports OpenID Connect (OIDC) and JSON Web Tokens (JWTs). +type OidcJwtUpdateConfiguration struct { + _ struct{} `type:"structure"` + + // The path of the source attribute in the JWT from the trusted token issuer. + // The attribute mapped by this JMESPath expression is compared against the + // attribute mapped by IdentityStoreAttributePath when a trusted token issuer + // token is exchanged for an IAM Identity Center token. + ClaimAttributePath *string `min:"1" type:"string"` + + // The path of the destination attribute in a JWT from IAM Identity Center. + // The attribute mapped by this JMESPath expression is compared against the + // attribute mapped by ClaimAttributePath when a trusted token issuer token + // is exchanged for an IAM Identity Center token. + IdentityStoreAttributePath *string `min:"1" type:"string"` + + // The method that the trusted token issuer can use to retrieve the JSON Web + // Key Set used to verify a JWT. + JwksRetrievalOption *string `type:"string" enum:"JwksRetrievalOption"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OidcJwtUpdateConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OidcJwtUpdateConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OidcJwtUpdateConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OidcJwtUpdateConfiguration"} + if s.ClaimAttributePath != nil && len(*s.ClaimAttributePath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClaimAttributePath", 1)) + } + if s.IdentityStoreAttributePath != nil && len(*s.IdentityStoreAttributePath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdentityStoreAttributePath", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClaimAttributePath sets the ClaimAttributePath field's value. +func (s *OidcJwtUpdateConfiguration) SetClaimAttributePath(v string) *OidcJwtUpdateConfiguration { + s.ClaimAttributePath = &v + return s +} + +// SetIdentityStoreAttributePath sets the IdentityStoreAttributePath field's value. +func (s *OidcJwtUpdateConfiguration) SetIdentityStoreAttributePath(v string) *OidcJwtUpdateConfiguration { + s.IdentityStoreAttributePath = &v + return s +} + +// SetJwksRetrievalOption sets the JwksRetrievalOption field's value. +func (s *OidcJwtUpdateConfiguration) SetJwksRetrievalOption(v string) *OidcJwtUpdateConfiguration { + s.JwksRetrievalOption = &v + return s +} + +// Filters the operation status list based on the passed attribute value. type OperationStatusFilter struct { _ struct{} `type:"structure"` @@ -8851,6 +17380,63 @@ return s } +// A structure that describes the options for the access portal associated with +// an application. +type PortalOptions struct { + _ struct{} `type:"structure"` + + // A structure that describes the sign-in options for the access portal. + SignInOptions *SignInOptions `type:"structure"` + + // Indicates whether this application is visible in the access portal. + Visibility *string `type:"string" enum:"ApplicationVisibility"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PortalOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PortalOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PortalOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PortalOptions"} + if s.SignInOptions != nil { + if err := s.SignInOptions.Validate(); err != nil { + invalidParams.AddNested("SignInOptions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSignInOptions sets the SignInOptions field's value. +func (s *PortalOptions) SetSignInOptions(v *SignInOptions) *PortalOptions { + s.SignInOptions = v + return s +} + +// SetVisibility sets the Visibility field's value. +func (s *PortalOptions) SetVisibility(v string) *PortalOptions { + s.Visibility = &v + return s +} + type ProvisionPermissionSetInput struct { _ struct{} `type:"structure"` @@ -8977,6 +17563,402 @@ return s } +type PutApplicationAccessScopeInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the access scope with the targets + // to add or update. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies an array list of ARNs that represent the authorized targets for + // this access scope. + AuthorizedTargets []*string `min:"1" type:"list"` + + // Specifies the name of the access scope to be associated with the specified + // targets. + // + // Scope is a required field + Scope *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAccessScopeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAccessScopeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutApplicationAccessScopeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutApplicationAccessScopeInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.AuthorizedTargets != nil && len(s.AuthorizedTargets) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AuthorizedTargets", 1)) + } + if s.Scope == nil { + invalidParams.Add(request.NewErrParamRequired("Scope")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *PutApplicationAccessScopeInput) SetApplicationArn(v string) *PutApplicationAccessScopeInput { + s.ApplicationArn = &v + return s +} + +// SetAuthorizedTargets sets the AuthorizedTargets field's value. +func (s *PutApplicationAccessScopeInput) SetAuthorizedTargets(v []*string) *PutApplicationAccessScopeInput { + s.AuthorizedTargets = v + return s +} + +// SetScope sets the Scope field's value. +func (s *PutApplicationAccessScopeInput) SetScope(v string) *PutApplicationAccessScopeInput { + s.Scope = &v + return s +} + +type PutApplicationAccessScopeOutput 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 PutApplicationAccessScopeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAccessScopeOutput) GoString() string { + return s.String() +} + +type PutApplicationAssignmentConfigurationInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // If AssignmentsRequired is true (default value), users don’t have access + // to the application unless an assignment is created using the CreateApplicationAssignment + // API (https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_CreateApplicationAssignment.html). + // If false, all users have access to the application. + // + // AssignmentRequired is a required field + AssignmentRequired *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAssignmentConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAssignmentConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutApplicationAssignmentConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutApplicationAssignmentConfigurationInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.AssignmentRequired == nil { + invalidParams.Add(request.NewErrParamRequired("AssignmentRequired")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *PutApplicationAssignmentConfigurationInput) SetApplicationArn(v string) *PutApplicationAssignmentConfigurationInput { + s.ApplicationArn = &v + return s +} + +// SetAssignmentRequired sets the AssignmentRequired field's value. +func (s *PutApplicationAssignmentConfigurationInput) SetAssignmentRequired(v bool) *PutApplicationAssignmentConfigurationInput { + s.AssignmentRequired = &v + return s +} + +type PutApplicationAssignmentConfigurationOutput 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 PutApplicationAssignmentConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAssignmentConfigurationOutput) GoString() string { + return s.String() +} + +type PutApplicationAuthenticationMethodInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application with the authentication method to add + // or update. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies a structure that describes the authentication method to add or + // update. The structure type you provide is determined by the AuthenticationMethodType + // parameter. + // + // AuthenticationMethod is a required field + AuthenticationMethod *AuthenticationMethod `type:"structure" required:"true"` + + // Specifies the type of the authentication method that you want to add or update. + // + // AuthenticationMethodType is a required field + AuthenticationMethodType *string `type:"string" required:"true" enum:"AuthenticationMethodType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAuthenticationMethodInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAuthenticationMethodInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutApplicationAuthenticationMethodInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutApplicationAuthenticationMethodInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.AuthenticationMethod == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationMethod")) + } + if s.AuthenticationMethodType == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationMethodType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *PutApplicationAuthenticationMethodInput) SetApplicationArn(v string) *PutApplicationAuthenticationMethodInput { + s.ApplicationArn = &v + return s +} + +// SetAuthenticationMethod sets the AuthenticationMethod field's value. +func (s *PutApplicationAuthenticationMethodInput) SetAuthenticationMethod(v *AuthenticationMethod) *PutApplicationAuthenticationMethodInput { + s.AuthenticationMethod = v + return s +} + +// SetAuthenticationMethodType sets the AuthenticationMethodType field's value. +func (s *PutApplicationAuthenticationMethodInput) SetAuthenticationMethodType(v string) *PutApplicationAuthenticationMethodInput { + s.AuthenticationMethodType = &v + return s +} + +type PutApplicationAuthenticationMethodOutput 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 PutApplicationAuthenticationMethodOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationAuthenticationMethodOutput) GoString() string { + return s.String() +} + +type PutApplicationGrantInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application to update. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // Specifies a structure that describes the grant to update. + // + // Grant is a required field + Grant *Grant `type:"structure" required:"true"` + + // Specifies the type of grant to update. + // + // GrantType is a required field + GrantType *string `type:"string" required:"true" enum:"GrantType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutApplicationGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutApplicationGrantInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.Grant == nil { + invalidParams.Add(request.NewErrParamRequired("Grant")) + } + if s.GrantType == nil { + invalidParams.Add(request.NewErrParamRequired("GrantType")) + } + if s.Grant != nil { + if err := s.Grant.Validate(); err != nil { + invalidParams.AddNested("Grant", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *PutApplicationGrantInput) SetApplicationArn(v string) *PutApplicationGrantInput { + s.ApplicationArn = &v + return s +} + +// SetGrant sets the Grant field's value. +func (s *PutApplicationGrantInput) SetGrant(v *Grant) *PutApplicationGrantInput { + s.Grant = v + return s +} + +// SetGrantType sets the GrantType field's value. +func (s *PutApplicationGrantInput) SetGrantType(v string) *PutApplicationGrantInput { + s.GrantType = &v + return s +} + +type PutApplicationGrantOutput 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 PutApplicationGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutApplicationGrantOutput) GoString() string { + return s.String() +} + type PutInlinePolicyToPermissionSetInput struct { _ struct{} `type:"structure"` @@ -9193,6 +18175,30 @@ return s.String() } +// A structure that defines configuration settings for an application that supports +// the OAuth 2.0 Refresh Token Grant. +type RefreshTokenGrant 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 RefreshTokenGrant) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RefreshTokenGrant) GoString() string { + return s.String() +} + // Indicates that a requested resource is not found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -9257,6 +18263,125 @@ return s.RespMetadata.RequestID } +// A structure that describes the configuration of a resource server. +type ResourceServerConfig struct { + _ struct{} `type:"structure"` + + // A list of the IAM Identity Center access scopes that are associated with + // this resource server. + Scopes map[string]*ResourceServerScopeDetails `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceServerConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceServerConfig) GoString() string { + return s.String() +} + +// SetScopes sets the Scopes field's value. +func (s *ResourceServerConfig) SetScopes(v map[string]*ResourceServerScopeDetails) *ResourceServerConfig { + s.Scopes = v + return s +} + +// A structure that describes details for an IAM Identity Center access scope +// that is associated with a resource server. +type ResourceServerScopeDetails struct { + _ struct{} `type:"structure"` + + // The title of an access scope for a resource server. + DetailedTitle *string `min:"1" type:"string"` + + // The description of an access scope for a resource server. + LongDescription *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceServerScopeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceServerScopeDetails) GoString() string { + return s.String() +} + +// SetDetailedTitle sets the DetailedTitle field's value. +func (s *ResourceServerScopeDetails) SetDetailedTitle(v string) *ResourceServerScopeDetails { + s.DetailedTitle = &v + return s +} + +// SetLongDescription sets the LongDescription field's value. +func (s *ResourceServerScopeDetails) SetLongDescription(v string) *ResourceServerScopeDetails { + s.LongDescription = &v + return s +} + +// A structure that describes an IAM Identity Center access scope and its authorized +// targets. +type ScopeDetails struct { + _ struct{} `type:"structure"` + + // An array list of ARNs of applications. + AuthorizedTargets []*string `min:"1" type:"list"` + + // The name of the access scope. + // + // Scope is a required field + Scope *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScopeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ScopeDetails) GoString() string { + return s.String() +} + +// SetAuthorizedTargets sets the AuthorizedTargets field's value. +func (s *ScopeDetails) SetAuthorizedTargets(v []*string) *ScopeDetails { + s.AuthorizedTargets = v + return s +} + +// SetScope sets the Scope field's value. +func (s *ScopeDetails) SetScope(v string) *ScopeDetails { + s.Scope = &v + return s +} + // Indicates that the principal has crossed the permitted number of resources // that can be created. type ServiceQuotaExceededException struct { @@ -9322,6 +18447,73 @@ return s.RespMetadata.RequestID } +// A structure that describes the sign-in options for an application portal. +type SignInOptions struct { + _ struct{} `type:"structure"` + + // The URL that accepts authentication requests for an application. This is + // a required parameter if the Origin parameter is APPLICATION. + ApplicationUrl *string `min:"1" type:"string"` + + // This determines how IAM Identity Center navigates the user to the target + // application. It can be one of the following values: + // + // * APPLICATION: IAM Identity Center redirects the customer to the configured + // ApplicationUrl. + // + // * IDENTITY_CENTER: IAM Identity Center uses SAML identity-provider initiated + // authentication to sign the customer directly into a SAML-based application. + // + // Origin is a required field + Origin *string `type:"string" required:"true" enum:"SignInOrigin"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignInOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignInOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SignInOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SignInOptions"} + if s.ApplicationUrl != nil && len(*s.ApplicationUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationUrl", 1)) + } + if s.Origin == nil { + invalidParams.Add(request.NewErrParamRequired("Origin")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationUrl sets the ApplicationUrl field's value. +func (s *SignInOptions) SetApplicationUrl(v string) *SignInOptions { + s.ApplicationUrl = &v + return s +} + +// SetOrigin sets the Origin field's value. +func (s *SignInOptions) SetOrigin(v string) *SignInOptions { + s.Origin = &v + return s +} + // A set of key-value pairs that are used to manage the resource. Tags can only // be applied to permission sets and cannot be applied to corresponding roles // that IAM Identity Center creates in Amazon Web Services accounts. @@ -9395,9 +18587,7 @@ // be executed. For more information about ARNs, see Amazon Resource Names (ARNs) // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) // in the Amazon Web Services General Reference. - // - // InstanceArn is a required field - InstanceArn *string `min:"10" type:"string" required:"true"` + InstanceArn *string `min:"10" type:"string"` // The ARN of the resource with the tags to be listed. // @@ -9431,9 +18621,6 @@ // 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.InstanceArn == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceArn")) - } if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) } @@ -9568,6 +18755,182 @@ return s.RespMetadata.RequestID } +// A structure that defines configuration settings for an application that supports +// the OAuth 2.0 Token Exchange Grant. +type TokenExchangeGrant 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 TokenExchangeGrant) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TokenExchangeGrant) GoString() string { + return s.String() +} + +// A structure that describes the configuration of a trusted token issuer. The +// structure and available settings are determined by the type of the trusted +// token issuer. +type TrustedTokenIssuerConfiguration struct { + _ struct{} `type:"structure"` + + // A structure that describes the settings for a trusted token issuer that works + // with OpenID Connect (OIDC) by using JSON Web Tokens (JWT). + OidcJwtConfiguration *OidcJwtConfiguration `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 TrustedTokenIssuerConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustedTokenIssuerConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrustedTokenIssuerConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrustedTokenIssuerConfiguration"} + if s.OidcJwtConfiguration != nil { + if err := s.OidcJwtConfiguration.Validate(); err != nil { + invalidParams.AddNested("OidcJwtConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOidcJwtConfiguration sets the OidcJwtConfiguration field's value. +func (s *TrustedTokenIssuerConfiguration) SetOidcJwtConfiguration(v *OidcJwtConfiguration) *TrustedTokenIssuerConfiguration { + s.OidcJwtConfiguration = v + return s +} + +// A structure that describes a trusted token issuer. +type TrustedTokenIssuerMetadata struct { + _ struct{} `type:"structure"` + + // The name of the trusted token issuer configuration in the instance of IAM + // Identity Center. + Name *string `min:"1" type:"string"` + + // The ARN of the trusted token issuer configuration in the instance of IAM + // Identity Center. + TrustedTokenIssuerArn *string `min:"10" type:"string"` + + // The type of trusted token issuer. + TrustedTokenIssuerType *string `type:"string" enum:"TrustedTokenIssuerType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustedTokenIssuerMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustedTokenIssuerMetadata) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *TrustedTokenIssuerMetadata) SetName(v string) *TrustedTokenIssuerMetadata { + s.Name = &v + return s +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *TrustedTokenIssuerMetadata) SetTrustedTokenIssuerArn(v string) *TrustedTokenIssuerMetadata { + s.TrustedTokenIssuerArn = &v + return s +} + +// SetTrustedTokenIssuerType sets the TrustedTokenIssuerType field's value. +func (s *TrustedTokenIssuerMetadata) SetTrustedTokenIssuerType(v string) *TrustedTokenIssuerMetadata { + s.TrustedTokenIssuerType = &v + return s +} + +// A structure that contains details to be updated for a trusted token issuer +// configuration. The structure and settings that you can include depend on +// the type of the trusted token issuer being updated. +type TrustedTokenIssuerUpdateConfiguration struct { + _ struct{} `type:"structure"` + + // A structure that describes an updated configuration for a trusted token issuer + // that uses OpenID Connect (OIDC) with JSON web tokens (JWT). + OidcJwtConfiguration *OidcJwtUpdateConfiguration `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 TrustedTokenIssuerUpdateConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrustedTokenIssuerUpdateConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrustedTokenIssuerUpdateConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrustedTokenIssuerUpdateConfiguration"} + if s.OidcJwtConfiguration != nil { + if err := s.OidcJwtConfiguration.Validate(); err != nil { + invalidParams.AddNested("OidcJwtConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOidcJwtConfiguration sets the OidcJwtConfiguration field's value. +func (s *TrustedTokenIssuerUpdateConfiguration) SetOidcJwtConfiguration(v *OidcJwtUpdateConfiguration) *TrustedTokenIssuerUpdateConfiguration { + s.OidcJwtConfiguration = v + return s +} + type UntagResourceInput struct { _ struct{} `type:"structure"` @@ -9575,9 +18938,7 @@ // be executed. For more information about ARNs, see Amazon Resource Names (ARNs) // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) // in the Amazon Web Services General Reference. - // - // InstanceArn is a required field - InstanceArn *string `min:"10" type:"string" required:"true"` + InstanceArn *string `min:"10" type:"string"` // The ARN of the resource with the tags to be listed. // @@ -9611,9 +18972,6 @@ // 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.InstanceArn == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceArn")) - } if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) } @@ -9676,6 +19034,172 @@ return s.String() } +type UpdateApplicationInput struct { + _ struct{} `type:"structure"` + + // Specifies the ARN of the application. For more information about ARNs, see + // Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // ApplicationArn is a required field + ApplicationArn *string `min:"10" type:"string" required:"true"` + + // The description of the . + Description *string `min:"1" type:"string"` + + // Specifies the updated name for the application. + Name *string `type:"string"` + + // A structure that describes the options for the portal associated with an + // application. + PortalOptions *UpdateApplicationPortalOptions `type:"structure"` + + // Specifies whether the application is enabled or disabled. + Status *string `type:"string" enum:"ApplicationStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} + if s.ApplicationArn == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationArn")) + } + if s.ApplicationArn != nil && len(*s.ApplicationArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationArn", 10)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.PortalOptions != nil { + if err := s.PortalOptions.Validate(); err != nil { + invalidParams.AddNested("PortalOptions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationArn sets the ApplicationArn field's value. +func (s *UpdateApplicationInput) SetApplicationArn(v string) *UpdateApplicationInput { + s.ApplicationArn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateApplicationInput) SetName(v string) *UpdateApplicationInput { + s.Name = &v + return s +} + +// SetPortalOptions sets the PortalOptions field's value. +func (s *UpdateApplicationInput) SetPortalOptions(v *UpdateApplicationPortalOptions) *UpdateApplicationInput { + s.PortalOptions = v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateApplicationInput) SetStatus(v string) *UpdateApplicationInput { + s.Status = &v + return s +} + +type UpdateApplicationOutput 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 UpdateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationOutput) GoString() string { + return s.String() +} + +// A structure that describes the options for the access portal associated with +// an application that can be updated. +type UpdateApplicationPortalOptions struct { + _ struct{} `type:"structure"` + + // A structure that describes the sign-in options for an application portal. + SignInOptions *SignInOptions `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 UpdateApplicationPortalOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationPortalOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateApplicationPortalOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationPortalOptions"} + if s.SignInOptions != nil { + if err := s.SignInOptions.Validate(); err != nil { + invalidParams.AddNested("SignInOptions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSignInOptions sets the SignInOptions field's value. +func (s *UpdateApplicationPortalOptions) SetSignInOptions(v *SignInOptions) *UpdateApplicationPortalOptions { + s.SignInOptions = v + return s +} + type UpdateInstanceAccessControlAttributeConfigurationInput struct { _ struct{} `type:"structure"` @@ -9767,6 +19291,94 @@ return s.String() } +type UpdateInstanceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the instance of IAM Identity Center under which the operation + // will run. For more information about ARNs, see Amazon Resource Names (ARNs) + // and Amazon Web Services Service Namespaces (/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + // + // InstanceArn is a required field + InstanceArn *string `min:"10" type:"string" required:"true"` + + // Updates the instance name. + // + // Name is a required field + Name *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateInstanceInput"} + if s.InstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceArn")) + } + if s.InstanceArn != nil && len(*s.InstanceArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("InstanceArn", 10)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceArn sets the InstanceArn field's value. +func (s *UpdateInstanceInput) SetInstanceArn(v string) *UpdateInstanceInput { + s.InstanceArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateInstanceInput) SetName(v string) *UpdateInstanceInput { + s.Name = &v + return s +} + +type UpdateInstanceOutput 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 UpdateInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateInstanceOutput) GoString() string { + return s.String() +} + type UpdatePermissionSetInput struct { _ struct{} `type:"structure"` @@ -9896,6 +19508,106 @@ return s.String() } +type UpdateTrustedTokenIssuerInput struct { + _ struct{} `type:"structure"` + + // Specifies the updated name to be applied to the trusted token issuer configuration. + Name *string `min:"1" type:"string"` + + // Specifies the ARN of the trusted token issuer configuration that you want + // to update. + // + // TrustedTokenIssuerArn is a required field + TrustedTokenIssuerArn *string `min:"10" type:"string" required:"true"` + + // Specifies a structure with settings to apply to the specified trusted token + // issuer. The settings that you can provide are determined by the type of the + // trusted token issuer that you are updating. + TrustedTokenIssuerConfiguration *TrustedTokenIssuerUpdateConfiguration `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 UpdateTrustedTokenIssuerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTrustedTokenIssuerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTrustedTokenIssuerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTrustedTokenIssuerInput"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TrustedTokenIssuerArn == nil { + invalidParams.Add(request.NewErrParamRequired("TrustedTokenIssuerArn")) + } + if s.TrustedTokenIssuerArn != nil && len(*s.TrustedTokenIssuerArn) < 10 { + invalidParams.Add(request.NewErrParamMinLen("TrustedTokenIssuerArn", 10)) + } + if s.TrustedTokenIssuerConfiguration != nil { + if err := s.TrustedTokenIssuerConfiguration.Validate(); err != nil { + invalidParams.AddNested("TrustedTokenIssuerConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *UpdateTrustedTokenIssuerInput) SetName(v string) *UpdateTrustedTokenIssuerInput { + s.Name = &v + return s +} + +// SetTrustedTokenIssuerArn sets the TrustedTokenIssuerArn field's value. +func (s *UpdateTrustedTokenIssuerInput) SetTrustedTokenIssuerArn(v string) *UpdateTrustedTokenIssuerInput { + s.TrustedTokenIssuerArn = &v + return s +} + +// SetTrustedTokenIssuerConfiguration sets the TrustedTokenIssuerConfiguration field's value. +func (s *UpdateTrustedTokenIssuerInput) SetTrustedTokenIssuerConfiguration(v *TrustedTokenIssuerUpdateConfiguration) *UpdateTrustedTokenIssuerInput { + s.TrustedTokenIssuerConfiguration = v + return s +} + +type UpdateTrustedTokenIssuerOutput 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 UpdateTrustedTokenIssuerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTrustedTokenIssuerOutput) GoString() string { + return s.String() +} + // The request failed because it contains a syntax error. type ValidationException struct { _ struct{} `type:"structure"` @@ -9961,6 +19673,90 @@ } const ( + // ApplicationStatusEnabled is a ApplicationStatus enum value + ApplicationStatusEnabled = "ENABLED" + + // ApplicationStatusDisabled is a ApplicationStatus enum value + ApplicationStatusDisabled = "DISABLED" +) + +// ApplicationStatus_Values returns all elements of the ApplicationStatus enum +func ApplicationStatus_Values() []string { + return []string{ + ApplicationStatusEnabled, + ApplicationStatusDisabled, + } +} + +const ( + // ApplicationVisibilityEnabled is a ApplicationVisibility enum value + ApplicationVisibilityEnabled = "ENABLED" + + // ApplicationVisibilityDisabled is a ApplicationVisibility enum value + ApplicationVisibilityDisabled = "DISABLED" +) + +// ApplicationVisibility_Values returns all elements of the ApplicationVisibility enum +func ApplicationVisibility_Values() []string { + return []string{ + ApplicationVisibilityEnabled, + ApplicationVisibilityDisabled, + } +} + +const ( + // AuthenticationMethodTypeIam is a AuthenticationMethodType enum value + AuthenticationMethodTypeIam = "IAM" +) + +// AuthenticationMethodType_Values returns all elements of the AuthenticationMethodType enum +func AuthenticationMethodType_Values() []string { + return []string{ + AuthenticationMethodTypeIam, + } +} + +const ( + // FederationProtocolSaml is a FederationProtocol enum value + FederationProtocolSaml = "SAML" + + // FederationProtocolOauth is a FederationProtocol enum value + FederationProtocolOauth = "OAUTH" +) + +// FederationProtocol_Values returns all elements of the FederationProtocol enum +func FederationProtocol_Values() []string { + return []string{ + FederationProtocolSaml, + FederationProtocolOauth, + } +} + +const ( + // GrantTypeAuthorizationCode is a GrantType enum value + GrantTypeAuthorizationCode = "authorization_code" + + // GrantTypeRefreshToken is a GrantType enum value + GrantTypeRefreshToken = "refresh_token" + + // GrantTypeUrnIetfParamsOauthGrantTypeJwtBearer is a GrantType enum value + GrantTypeUrnIetfParamsOauthGrantTypeJwtBearer = "urn:ietf:params:oauth:grant-type:jwt-bearer" + + // GrantTypeUrnIetfParamsOauthGrantTypeTokenExchange is a GrantType enum value + GrantTypeUrnIetfParamsOauthGrantTypeTokenExchange = "urn:ietf:params:oauth:grant-type:token-exchange" +) + +// GrantType_Values returns all elements of the GrantType enum +func GrantType_Values() []string { + return []string{ + GrantTypeAuthorizationCode, + GrantTypeRefreshToken, + GrantTypeUrnIetfParamsOauthGrantTypeJwtBearer, + GrantTypeUrnIetfParamsOauthGrantTypeTokenExchange, + } +} + +const ( // InstanceAccessControlAttributeConfigurationStatusEnabled is a InstanceAccessControlAttributeConfigurationStatus enum value InstanceAccessControlAttributeConfigurationStatusEnabled = "ENABLED" @@ -9981,6 +19777,38 @@ } const ( + // InstanceStatusCreateInProgress is a InstanceStatus enum value + InstanceStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // InstanceStatusDeleteInProgress is a InstanceStatus enum value + InstanceStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // InstanceStatusActive is a InstanceStatus enum value + InstanceStatusActive = "ACTIVE" +) + +// InstanceStatus_Values returns all elements of the InstanceStatus enum +func InstanceStatus_Values() []string { + return []string{ + InstanceStatusCreateInProgress, + InstanceStatusDeleteInProgress, + InstanceStatusActive, + } +} + +const ( + // JwksRetrievalOptionOpenIdDiscovery is a JwksRetrievalOption enum value + JwksRetrievalOptionOpenIdDiscovery = "OPEN_ID_DISCOVERY" +) + +// JwksRetrievalOption_Values returns all elements of the JwksRetrievalOption enum +func JwksRetrievalOption_Values() []string { + return []string{ + JwksRetrievalOptionOpenIdDiscovery, + } +} + +const ( // PrincipalTypeUser is a PrincipalType enum value PrincipalTypeUser = "USER" @@ -10029,6 +19857,22 @@ } const ( + // SignInOriginIdentityCenter is a SignInOrigin enum value + SignInOriginIdentityCenter = "IDENTITY_CENTER" + + // SignInOriginApplication is a SignInOrigin enum value + SignInOriginApplication = "APPLICATION" +) + +// SignInOrigin_Values returns all elements of the SignInOrigin enum +func SignInOrigin_Values() []string { + return []string{ + SignInOriginIdentityCenter, + SignInOriginApplication, + } +} + +const ( // StatusValuesInProgress is a StatusValues enum value StatusValuesInProgress = "IN_PROGRESS" @@ -10059,3 +19903,15 @@ TargetTypeAwsAccount, } } + +const ( + // TrustedTokenIssuerTypeOidcJwt is a TrustedTokenIssuerType enum value + TrustedTokenIssuerTypeOidcJwt = "OIDC_JWT" +) + +// TrustedTokenIssuerType_Values returns all elements of the TrustedTokenIssuerType enum +func TrustedTokenIssuerType_Values() []string { + return []string{ + TrustedTokenIssuerTypeOidcJwt, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssoadmin/ssoadminiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ssoadmin/ssoadminiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssoadmin/ssoadminiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssoadmin/ssoadminiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,6 +72,18 @@ CreateAccountAssignmentWithContext(aws.Context, *ssoadmin.CreateAccountAssignmentInput, ...request.Option) (*ssoadmin.CreateAccountAssignmentOutput, error) CreateAccountAssignmentRequest(*ssoadmin.CreateAccountAssignmentInput) (*request.Request, *ssoadmin.CreateAccountAssignmentOutput) + CreateApplication(*ssoadmin.CreateApplicationInput) (*ssoadmin.CreateApplicationOutput, error) + CreateApplicationWithContext(aws.Context, *ssoadmin.CreateApplicationInput, ...request.Option) (*ssoadmin.CreateApplicationOutput, error) + CreateApplicationRequest(*ssoadmin.CreateApplicationInput) (*request.Request, *ssoadmin.CreateApplicationOutput) + + CreateApplicationAssignment(*ssoadmin.CreateApplicationAssignmentInput) (*ssoadmin.CreateApplicationAssignmentOutput, error) + CreateApplicationAssignmentWithContext(aws.Context, *ssoadmin.CreateApplicationAssignmentInput, ...request.Option) (*ssoadmin.CreateApplicationAssignmentOutput, error) + CreateApplicationAssignmentRequest(*ssoadmin.CreateApplicationAssignmentInput) (*request.Request, *ssoadmin.CreateApplicationAssignmentOutput) + + CreateInstance(*ssoadmin.CreateInstanceInput) (*ssoadmin.CreateInstanceOutput, error) + CreateInstanceWithContext(aws.Context, *ssoadmin.CreateInstanceInput, ...request.Option) (*ssoadmin.CreateInstanceOutput, error) + CreateInstanceRequest(*ssoadmin.CreateInstanceInput) (*request.Request, *ssoadmin.CreateInstanceOutput) + CreateInstanceAccessControlAttributeConfiguration(*ssoadmin.CreateInstanceAccessControlAttributeConfigurationInput) (*ssoadmin.CreateInstanceAccessControlAttributeConfigurationOutput, error) CreateInstanceAccessControlAttributeConfigurationWithContext(aws.Context, *ssoadmin.CreateInstanceAccessControlAttributeConfigurationInput, ...request.Option) (*ssoadmin.CreateInstanceAccessControlAttributeConfigurationOutput, error) CreateInstanceAccessControlAttributeConfigurationRequest(*ssoadmin.CreateInstanceAccessControlAttributeConfigurationInput) (*request.Request, *ssoadmin.CreateInstanceAccessControlAttributeConfigurationOutput) @@ -80,14 +92,42 @@ CreatePermissionSetWithContext(aws.Context, *ssoadmin.CreatePermissionSetInput, ...request.Option) (*ssoadmin.CreatePermissionSetOutput, error) CreatePermissionSetRequest(*ssoadmin.CreatePermissionSetInput) (*request.Request, *ssoadmin.CreatePermissionSetOutput) + CreateTrustedTokenIssuer(*ssoadmin.CreateTrustedTokenIssuerInput) (*ssoadmin.CreateTrustedTokenIssuerOutput, error) + CreateTrustedTokenIssuerWithContext(aws.Context, *ssoadmin.CreateTrustedTokenIssuerInput, ...request.Option) (*ssoadmin.CreateTrustedTokenIssuerOutput, error) + CreateTrustedTokenIssuerRequest(*ssoadmin.CreateTrustedTokenIssuerInput) (*request.Request, *ssoadmin.CreateTrustedTokenIssuerOutput) + DeleteAccountAssignment(*ssoadmin.DeleteAccountAssignmentInput) (*ssoadmin.DeleteAccountAssignmentOutput, error) DeleteAccountAssignmentWithContext(aws.Context, *ssoadmin.DeleteAccountAssignmentInput, ...request.Option) (*ssoadmin.DeleteAccountAssignmentOutput, error) DeleteAccountAssignmentRequest(*ssoadmin.DeleteAccountAssignmentInput) (*request.Request, *ssoadmin.DeleteAccountAssignmentOutput) + DeleteApplication(*ssoadmin.DeleteApplicationInput) (*ssoadmin.DeleteApplicationOutput, error) + DeleteApplicationWithContext(aws.Context, *ssoadmin.DeleteApplicationInput, ...request.Option) (*ssoadmin.DeleteApplicationOutput, error) + DeleteApplicationRequest(*ssoadmin.DeleteApplicationInput) (*request.Request, *ssoadmin.DeleteApplicationOutput) + + DeleteApplicationAccessScope(*ssoadmin.DeleteApplicationAccessScopeInput) (*ssoadmin.DeleteApplicationAccessScopeOutput, error) + DeleteApplicationAccessScopeWithContext(aws.Context, *ssoadmin.DeleteApplicationAccessScopeInput, ...request.Option) (*ssoadmin.DeleteApplicationAccessScopeOutput, error) + DeleteApplicationAccessScopeRequest(*ssoadmin.DeleteApplicationAccessScopeInput) (*request.Request, *ssoadmin.DeleteApplicationAccessScopeOutput) + + DeleteApplicationAssignment(*ssoadmin.DeleteApplicationAssignmentInput) (*ssoadmin.DeleteApplicationAssignmentOutput, error) + DeleteApplicationAssignmentWithContext(aws.Context, *ssoadmin.DeleteApplicationAssignmentInput, ...request.Option) (*ssoadmin.DeleteApplicationAssignmentOutput, error) + DeleteApplicationAssignmentRequest(*ssoadmin.DeleteApplicationAssignmentInput) (*request.Request, *ssoadmin.DeleteApplicationAssignmentOutput) + + DeleteApplicationAuthenticationMethod(*ssoadmin.DeleteApplicationAuthenticationMethodInput) (*ssoadmin.DeleteApplicationAuthenticationMethodOutput, error) + DeleteApplicationAuthenticationMethodWithContext(aws.Context, *ssoadmin.DeleteApplicationAuthenticationMethodInput, ...request.Option) (*ssoadmin.DeleteApplicationAuthenticationMethodOutput, error) + DeleteApplicationAuthenticationMethodRequest(*ssoadmin.DeleteApplicationAuthenticationMethodInput) (*request.Request, *ssoadmin.DeleteApplicationAuthenticationMethodOutput) + + DeleteApplicationGrant(*ssoadmin.DeleteApplicationGrantInput) (*ssoadmin.DeleteApplicationGrantOutput, error) + DeleteApplicationGrantWithContext(aws.Context, *ssoadmin.DeleteApplicationGrantInput, ...request.Option) (*ssoadmin.DeleteApplicationGrantOutput, error) + DeleteApplicationGrantRequest(*ssoadmin.DeleteApplicationGrantInput) (*request.Request, *ssoadmin.DeleteApplicationGrantOutput) + DeleteInlinePolicyFromPermissionSet(*ssoadmin.DeleteInlinePolicyFromPermissionSetInput) (*ssoadmin.DeleteInlinePolicyFromPermissionSetOutput, error) DeleteInlinePolicyFromPermissionSetWithContext(aws.Context, *ssoadmin.DeleteInlinePolicyFromPermissionSetInput, ...request.Option) (*ssoadmin.DeleteInlinePolicyFromPermissionSetOutput, error) DeleteInlinePolicyFromPermissionSetRequest(*ssoadmin.DeleteInlinePolicyFromPermissionSetInput) (*request.Request, *ssoadmin.DeleteInlinePolicyFromPermissionSetOutput) + DeleteInstance(*ssoadmin.DeleteInstanceInput) (*ssoadmin.DeleteInstanceOutput, error) + DeleteInstanceWithContext(aws.Context, *ssoadmin.DeleteInstanceInput, ...request.Option) (*ssoadmin.DeleteInstanceOutput, error) + DeleteInstanceRequest(*ssoadmin.DeleteInstanceInput) (*request.Request, *ssoadmin.DeleteInstanceOutput) + DeleteInstanceAccessControlAttributeConfiguration(*ssoadmin.DeleteInstanceAccessControlAttributeConfigurationInput) (*ssoadmin.DeleteInstanceAccessControlAttributeConfigurationOutput, error) DeleteInstanceAccessControlAttributeConfigurationWithContext(aws.Context, *ssoadmin.DeleteInstanceAccessControlAttributeConfigurationInput, ...request.Option) (*ssoadmin.DeleteInstanceAccessControlAttributeConfigurationOutput, error) DeleteInstanceAccessControlAttributeConfigurationRequest(*ssoadmin.DeleteInstanceAccessControlAttributeConfigurationInput) (*request.Request, *ssoadmin.DeleteInstanceAccessControlAttributeConfigurationOutput) @@ -100,6 +140,10 @@ DeletePermissionsBoundaryFromPermissionSetWithContext(aws.Context, *ssoadmin.DeletePermissionsBoundaryFromPermissionSetInput, ...request.Option) (*ssoadmin.DeletePermissionsBoundaryFromPermissionSetOutput, error) DeletePermissionsBoundaryFromPermissionSetRequest(*ssoadmin.DeletePermissionsBoundaryFromPermissionSetInput) (*request.Request, *ssoadmin.DeletePermissionsBoundaryFromPermissionSetOutput) + DeleteTrustedTokenIssuer(*ssoadmin.DeleteTrustedTokenIssuerInput) (*ssoadmin.DeleteTrustedTokenIssuerOutput, error) + DeleteTrustedTokenIssuerWithContext(aws.Context, *ssoadmin.DeleteTrustedTokenIssuerInput, ...request.Option) (*ssoadmin.DeleteTrustedTokenIssuerOutput, error) + DeleteTrustedTokenIssuerRequest(*ssoadmin.DeleteTrustedTokenIssuerInput) (*request.Request, *ssoadmin.DeleteTrustedTokenIssuerOutput) + DescribeAccountAssignmentCreationStatus(*ssoadmin.DescribeAccountAssignmentCreationStatusInput) (*ssoadmin.DescribeAccountAssignmentCreationStatusOutput, error) DescribeAccountAssignmentCreationStatusWithContext(aws.Context, *ssoadmin.DescribeAccountAssignmentCreationStatusInput, ...request.Option) (*ssoadmin.DescribeAccountAssignmentCreationStatusOutput, error) DescribeAccountAssignmentCreationStatusRequest(*ssoadmin.DescribeAccountAssignmentCreationStatusInput) (*request.Request, *ssoadmin.DescribeAccountAssignmentCreationStatusOutput) @@ -108,6 +152,22 @@ DescribeAccountAssignmentDeletionStatusWithContext(aws.Context, *ssoadmin.DescribeAccountAssignmentDeletionStatusInput, ...request.Option) (*ssoadmin.DescribeAccountAssignmentDeletionStatusOutput, error) DescribeAccountAssignmentDeletionStatusRequest(*ssoadmin.DescribeAccountAssignmentDeletionStatusInput) (*request.Request, *ssoadmin.DescribeAccountAssignmentDeletionStatusOutput) + DescribeApplication(*ssoadmin.DescribeApplicationInput) (*ssoadmin.DescribeApplicationOutput, error) + DescribeApplicationWithContext(aws.Context, *ssoadmin.DescribeApplicationInput, ...request.Option) (*ssoadmin.DescribeApplicationOutput, error) + DescribeApplicationRequest(*ssoadmin.DescribeApplicationInput) (*request.Request, *ssoadmin.DescribeApplicationOutput) + + DescribeApplicationAssignment(*ssoadmin.DescribeApplicationAssignmentInput) (*ssoadmin.DescribeApplicationAssignmentOutput, error) + DescribeApplicationAssignmentWithContext(aws.Context, *ssoadmin.DescribeApplicationAssignmentInput, ...request.Option) (*ssoadmin.DescribeApplicationAssignmentOutput, error) + DescribeApplicationAssignmentRequest(*ssoadmin.DescribeApplicationAssignmentInput) (*request.Request, *ssoadmin.DescribeApplicationAssignmentOutput) + + DescribeApplicationProvider(*ssoadmin.DescribeApplicationProviderInput) (*ssoadmin.DescribeApplicationProviderOutput, error) + DescribeApplicationProviderWithContext(aws.Context, *ssoadmin.DescribeApplicationProviderInput, ...request.Option) (*ssoadmin.DescribeApplicationProviderOutput, error) + DescribeApplicationProviderRequest(*ssoadmin.DescribeApplicationProviderInput) (*request.Request, *ssoadmin.DescribeApplicationProviderOutput) + + DescribeInstance(*ssoadmin.DescribeInstanceInput) (*ssoadmin.DescribeInstanceOutput, error) + DescribeInstanceWithContext(aws.Context, *ssoadmin.DescribeInstanceInput, ...request.Option) (*ssoadmin.DescribeInstanceOutput, error) + DescribeInstanceRequest(*ssoadmin.DescribeInstanceInput) (*request.Request, *ssoadmin.DescribeInstanceOutput) + DescribeInstanceAccessControlAttributeConfiguration(*ssoadmin.DescribeInstanceAccessControlAttributeConfigurationInput) (*ssoadmin.DescribeInstanceAccessControlAttributeConfigurationOutput, error) DescribeInstanceAccessControlAttributeConfigurationWithContext(aws.Context, *ssoadmin.DescribeInstanceAccessControlAttributeConfigurationInput, ...request.Option) (*ssoadmin.DescribeInstanceAccessControlAttributeConfigurationOutput, error) DescribeInstanceAccessControlAttributeConfigurationRequest(*ssoadmin.DescribeInstanceAccessControlAttributeConfigurationInput) (*request.Request, *ssoadmin.DescribeInstanceAccessControlAttributeConfigurationOutput) @@ -120,6 +180,10 @@ DescribePermissionSetProvisioningStatusWithContext(aws.Context, *ssoadmin.DescribePermissionSetProvisioningStatusInput, ...request.Option) (*ssoadmin.DescribePermissionSetProvisioningStatusOutput, error) DescribePermissionSetProvisioningStatusRequest(*ssoadmin.DescribePermissionSetProvisioningStatusInput) (*request.Request, *ssoadmin.DescribePermissionSetProvisioningStatusOutput) + DescribeTrustedTokenIssuer(*ssoadmin.DescribeTrustedTokenIssuerInput) (*ssoadmin.DescribeTrustedTokenIssuerOutput, error) + DescribeTrustedTokenIssuerWithContext(aws.Context, *ssoadmin.DescribeTrustedTokenIssuerInput, ...request.Option) (*ssoadmin.DescribeTrustedTokenIssuerOutput, error) + DescribeTrustedTokenIssuerRequest(*ssoadmin.DescribeTrustedTokenIssuerInput) (*request.Request, *ssoadmin.DescribeTrustedTokenIssuerOutput) + DetachCustomerManagedPolicyReferenceFromPermissionSet(*ssoadmin.DetachCustomerManagedPolicyReferenceFromPermissionSetInput) (*ssoadmin.DetachCustomerManagedPolicyReferenceFromPermissionSetOutput, error) DetachCustomerManagedPolicyReferenceFromPermissionSetWithContext(aws.Context, *ssoadmin.DetachCustomerManagedPolicyReferenceFromPermissionSetInput, ...request.Option) (*ssoadmin.DetachCustomerManagedPolicyReferenceFromPermissionSetOutput, error) DetachCustomerManagedPolicyReferenceFromPermissionSetRequest(*ssoadmin.DetachCustomerManagedPolicyReferenceFromPermissionSetInput) (*request.Request, *ssoadmin.DetachCustomerManagedPolicyReferenceFromPermissionSetOutput) @@ -128,6 +192,22 @@ DetachManagedPolicyFromPermissionSetWithContext(aws.Context, *ssoadmin.DetachManagedPolicyFromPermissionSetInput, ...request.Option) (*ssoadmin.DetachManagedPolicyFromPermissionSetOutput, error) DetachManagedPolicyFromPermissionSetRequest(*ssoadmin.DetachManagedPolicyFromPermissionSetInput) (*request.Request, *ssoadmin.DetachManagedPolicyFromPermissionSetOutput) + GetApplicationAccessScope(*ssoadmin.GetApplicationAccessScopeInput) (*ssoadmin.GetApplicationAccessScopeOutput, error) + GetApplicationAccessScopeWithContext(aws.Context, *ssoadmin.GetApplicationAccessScopeInput, ...request.Option) (*ssoadmin.GetApplicationAccessScopeOutput, error) + GetApplicationAccessScopeRequest(*ssoadmin.GetApplicationAccessScopeInput) (*request.Request, *ssoadmin.GetApplicationAccessScopeOutput) + + GetApplicationAssignmentConfiguration(*ssoadmin.GetApplicationAssignmentConfigurationInput) (*ssoadmin.GetApplicationAssignmentConfigurationOutput, error) + GetApplicationAssignmentConfigurationWithContext(aws.Context, *ssoadmin.GetApplicationAssignmentConfigurationInput, ...request.Option) (*ssoadmin.GetApplicationAssignmentConfigurationOutput, error) + GetApplicationAssignmentConfigurationRequest(*ssoadmin.GetApplicationAssignmentConfigurationInput) (*request.Request, *ssoadmin.GetApplicationAssignmentConfigurationOutput) + + GetApplicationAuthenticationMethod(*ssoadmin.GetApplicationAuthenticationMethodInput) (*ssoadmin.GetApplicationAuthenticationMethodOutput, error) + GetApplicationAuthenticationMethodWithContext(aws.Context, *ssoadmin.GetApplicationAuthenticationMethodInput, ...request.Option) (*ssoadmin.GetApplicationAuthenticationMethodOutput, error) + GetApplicationAuthenticationMethodRequest(*ssoadmin.GetApplicationAuthenticationMethodInput) (*request.Request, *ssoadmin.GetApplicationAuthenticationMethodOutput) + + GetApplicationGrant(*ssoadmin.GetApplicationGrantInput) (*ssoadmin.GetApplicationGrantOutput, error) + GetApplicationGrantWithContext(aws.Context, *ssoadmin.GetApplicationGrantInput, ...request.Option) (*ssoadmin.GetApplicationGrantOutput, error) + GetApplicationGrantRequest(*ssoadmin.GetApplicationGrantInput) (*request.Request, *ssoadmin.GetApplicationGrantOutput) + GetInlinePolicyForPermissionSet(*ssoadmin.GetInlinePolicyForPermissionSetInput) (*ssoadmin.GetInlinePolicyForPermissionSetOutput, error) GetInlinePolicyForPermissionSetWithContext(aws.Context, *ssoadmin.GetInlinePolicyForPermissionSetInput, ...request.Option) (*ssoadmin.GetInlinePolicyForPermissionSetOutput, error) GetInlinePolicyForPermissionSetRequest(*ssoadmin.GetInlinePolicyForPermissionSetInput) (*request.Request, *ssoadmin.GetInlinePolicyForPermissionSetOutput) @@ -157,6 +237,13 @@ ListAccountAssignmentsPages(*ssoadmin.ListAccountAssignmentsInput, func(*ssoadmin.ListAccountAssignmentsOutput, bool) bool) error ListAccountAssignmentsPagesWithContext(aws.Context, *ssoadmin.ListAccountAssignmentsInput, func(*ssoadmin.ListAccountAssignmentsOutput, bool) bool, ...request.Option) error + ListAccountAssignmentsForPrincipal(*ssoadmin.ListAccountAssignmentsForPrincipalInput) (*ssoadmin.ListAccountAssignmentsForPrincipalOutput, error) + ListAccountAssignmentsForPrincipalWithContext(aws.Context, *ssoadmin.ListAccountAssignmentsForPrincipalInput, ...request.Option) (*ssoadmin.ListAccountAssignmentsForPrincipalOutput, error) + ListAccountAssignmentsForPrincipalRequest(*ssoadmin.ListAccountAssignmentsForPrincipalInput) (*request.Request, *ssoadmin.ListAccountAssignmentsForPrincipalOutput) + + ListAccountAssignmentsForPrincipalPages(*ssoadmin.ListAccountAssignmentsForPrincipalInput, func(*ssoadmin.ListAccountAssignmentsForPrincipalOutput, bool) bool) error + ListAccountAssignmentsForPrincipalPagesWithContext(aws.Context, *ssoadmin.ListAccountAssignmentsForPrincipalInput, func(*ssoadmin.ListAccountAssignmentsForPrincipalOutput, bool) bool, ...request.Option) error + ListAccountsForProvisionedPermissionSet(*ssoadmin.ListAccountsForProvisionedPermissionSetInput) (*ssoadmin.ListAccountsForProvisionedPermissionSetOutput, error) ListAccountsForProvisionedPermissionSetWithContext(aws.Context, *ssoadmin.ListAccountsForProvisionedPermissionSetInput, ...request.Option) (*ssoadmin.ListAccountsForProvisionedPermissionSetOutput, error) ListAccountsForProvisionedPermissionSetRequest(*ssoadmin.ListAccountsForProvisionedPermissionSetInput) (*request.Request, *ssoadmin.ListAccountsForProvisionedPermissionSetOutput) @@ -164,6 +251,55 @@ ListAccountsForProvisionedPermissionSetPages(*ssoadmin.ListAccountsForProvisionedPermissionSetInput, func(*ssoadmin.ListAccountsForProvisionedPermissionSetOutput, bool) bool) error ListAccountsForProvisionedPermissionSetPagesWithContext(aws.Context, *ssoadmin.ListAccountsForProvisionedPermissionSetInput, func(*ssoadmin.ListAccountsForProvisionedPermissionSetOutput, bool) bool, ...request.Option) error + ListApplicationAccessScopes(*ssoadmin.ListApplicationAccessScopesInput) (*ssoadmin.ListApplicationAccessScopesOutput, error) + ListApplicationAccessScopesWithContext(aws.Context, *ssoadmin.ListApplicationAccessScopesInput, ...request.Option) (*ssoadmin.ListApplicationAccessScopesOutput, error) + ListApplicationAccessScopesRequest(*ssoadmin.ListApplicationAccessScopesInput) (*request.Request, *ssoadmin.ListApplicationAccessScopesOutput) + + ListApplicationAccessScopesPages(*ssoadmin.ListApplicationAccessScopesInput, func(*ssoadmin.ListApplicationAccessScopesOutput, bool) bool) error + ListApplicationAccessScopesPagesWithContext(aws.Context, *ssoadmin.ListApplicationAccessScopesInput, func(*ssoadmin.ListApplicationAccessScopesOutput, bool) bool, ...request.Option) error + + ListApplicationAssignments(*ssoadmin.ListApplicationAssignmentsInput) (*ssoadmin.ListApplicationAssignmentsOutput, error) + ListApplicationAssignmentsWithContext(aws.Context, *ssoadmin.ListApplicationAssignmentsInput, ...request.Option) (*ssoadmin.ListApplicationAssignmentsOutput, error) + ListApplicationAssignmentsRequest(*ssoadmin.ListApplicationAssignmentsInput) (*request.Request, *ssoadmin.ListApplicationAssignmentsOutput) + + ListApplicationAssignmentsPages(*ssoadmin.ListApplicationAssignmentsInput, func(*ssoadmin.ListApplicationAssignmentsOutput, bool) bool) error + ListApplicationAssignmentsPagesWithContext(aws.Context, *ssoadmin.ListApplicationAssignmentsInput, func(*ssoadmin.ListApplicationAssignmentsOutput, bool) bool, ...request.Option) error + + ListApplicationAssignmentsForPrincipal(*ssoadmin.ListApplicationAssignmentsForPrincipalInput) (*ssoadmin.ListApplicationAssignmentsForPrincipalOutput, error) + ListApplicationAssignmentsForPrincipalWithContext(aws.Context, *ssoadmin.ListApplicationAssignmentsForPrincipalInput, ...request.Option) (*ssoadmin.ListApplicationAssignmentsForPrincipalOutput, error) + ListApplicationAssignmentsForPrincipalRequest(*ssoadmin.ListApplicationAssignmentsForPrincipalInput) (*request.Request, *ssoadmin.ListApplicationAssignmentsForPrincipalOutput) + + ListApplicationAssignmentsForPrincipalPages(*ssoadmin.ListApplicationAssignmentsForPrincipalInput, func(*ssoadmin.ListApplicationAssignmentsForPrincipalOutput, bool) bool) error + ListApplicationAssignmentsForPrincipalPagesWithContext(aws.Context, *ssoadmin.ListApplicationAssignmentsForPrincipalInput, func(*ssoadmin.ListApplicationAssignmentsForPrincipalOutput, bool) bool, ...request.Option) error + + ListApplicationAuthenticationMethods(*ssoadmin.ListApplicationAuthenticationMethodsInput) (*ssoadmin.ListApplicationAuthenticationMethodsOutput, error) + ListApplicationAuthenticationMethodsWithContext(aws.Context, *ssoadmin.ListApplicationAuthenticationMethodsInput, ...request.Option) (*ssoadmin.ListApplicationAuthenticationMethodsOutput, error) + ListApplicationAuthenticationMethodsRequest(*ssoadmin.ListApplicationAuthenticationMethodsInput) (*request.Request, *ssoadmin.ListApplicationAuthenticationMethodsOutput) + + ListApplicationAuthenticationMethodsPages(*ssoadmin.ListApplicationAuthenticationMethodsInput, func(*ssoadmin.ListApplicationAuthenticationMethodsOutput, bool) bool) error + ListApplicationAuthenticationMethodsPagesWithContext(aws.Context, *ssoadmin.ListApplicationAuthenticationMethodsInput, func(*ssoadmin.ListApplicationAuthenticationMethodsOutput, bool) bool, ...request.Option) error + + ListApplicationGrants(*ssoadmin.ListApplicationGrantsInput) (*ssoadmin.ListApplicationGrantsOutput, error) + ListApplicationGrantsWithContext(aws.Context, *ssoadmin.ListApplicationGrantsInput, ...request.Option) (*ssoadmin.ListApplicationGrantsOutput, error) + ListApplicationGrantsRequest(*ssoadmin.ListApplicationGrantsInput) (*request.Request, *ssoadmin.ListApplicationGrantsOutput) + + ListApplicationGrantsPages(*ssoadmin.ListApplicationGrantsInput, func(*ssoadmin.ListApplicationGrantsOutput, bool) bool) error + ListApplicationGrantsPagesWithContext(aws.Context, *ssoadmin.ListApplicationGrantsInput, func(*ssoadmin.ListApplicationGrantsOutput, bool) bool, ...request.Option) error + + ListApplicationProviders(*ssoadmin.ListApplicationProvidersInput) (*ssoadmin.ListApplicationProvidersOutput, error) + ListApplicationProvidersWithContext(aws.Context, *ssoadmin.ListApplicationProvidersInput, ...request.Option) (*ssoadmin.ListApplicationProvidersOutput, error) + ListApplicationProvidersRequest(*ssoadmin.ListApplicationProvidersInput) (*request.Request, *ssoadmin.ListApplicationProvidersOutput) + + ListApplicationProvidersPages(*ssoadmin.ListApplicationProvidersInput, func(*ssoadmin.ListApplicationProvidersOutput, bool) bool) error + ListApplicationProvidersPagesWithContext(aws.Context, *ssoadmin.ListApplicationProvidersInput, func(*ssoadmin.ListApplicationProvidersOutput, bool) bool, ...request.Option) error + + ListApplications(*ssoadmin.ListApplicationsInput) (*ssoadmin.ListApplicationsOutput, error) + ListApplicationsWithContext(aws.Context, *ssoadmin.ListApplicationsInput, ...request.Option) (*ssoadmin.ListApplicationsOutput, error) + ListApplicationsRequest(*ssoadmin.ListApplicationsInput) (*request.Request, *ssoadmin.ListApplicationsOutput) + + ListApplicationsPages(*ssoadmin.ListApplicationsInput, func(*ssoadmin.ListApplicationsOutput, bool) bool) error + ListApplicationsPagesWithContext(aws.Context, *ssoadmin.ListApplicationsInput, func(*ssoadmin.ListApplicationsOutput, bool) bool, ...request.Option) error + ListCustomerManagedPolicyReferencesInPermissionSet(*ssoadmin.ListCustomerManagedPolicyReferencesInPermissionSetInput) (*ssoadmin.ListCustomerManagedPolicyReferencesInPermissionSetOutput, error) ListCustomerManagedPolicyReferencesInPermissionSetWithContext(aws.Context, *ssoadmin.ListCustomerManagedPolicyReferencesInPermissionSetInput, ...request.Option) (*ssoadmin.ListCustomerManagedPolicyReferencesInPermissionSetOutput, error) ListCustomerManagedPolicyReferencesInPermissionSetRequest(*ssoadmin.ListCustomerManagedPolicyReferencesInPermissionSetInput) (*request.Request, *ssoadmin.ListCustomerManagedPolicyReferencesInPermissionSetOutput) @@ -213,10 +349,33 @@ ListTagsForResourcePages(*ssoadmin.ListTagsForResourceInput, func(*ssoadmin.ListTagsForResourceOutput, bool) bool) error ListTagsForResourcePagesWithContext(aws.Context, *ssoadmin.ListTagsForResourceInput, func(*ssoadmin.ListTagsForResourceOutput, bool) bool, ...request.Option) error + ListTrustedTokenIssuers(*ssoadmin.ListTrustedTokenIssuersInput) (*ssoadmin.ListTrustedTokenIssuersOutput, error) + ListTrustedTokenIssuersWithContext(aws.Context, *ssoadmin.ListTrustedTokenIssuersInput, ...request.Option) (*ssoadmin.ListTrustedTokenIssuersOutput, error) + ListTrustedTokenIssuersRequest(*ssoadmin.ListTrustedTokenIssuersInput) (*request.Request, *ssoadmin.ListTrustedTokenIssuersOutput) + + ListTrustedTokenIssuersPages(*ssoadmin.ListTrustedTokenIssuersInput, func(*ssoadmin.ListTrustedTokenIssuersOutput, bool) bool) error + ListTrustedTokenIssuersPagesWithContext(aws.Context, *ssoadmin.ListTrustedTokenIssuersInput, func(*ssoadmin.ListTrustedTokenIssuersOutput, bool) bool, ...request.Option) error + ProvisionPermissionSet(*ssoadmin.ProvisionPermissionSetInput) (*ssoadmin.ProvisionPermissionSetOutput, error) ProvisionPermissionSetWithContext(aws.Context, *ssoadmin.ProvisionPermissionSetInput, ...request.Option) (*ssoadmin.ProvisionPermissionSetOutput, error) ProvisionPermissionSetRequest(*ssoadmin.ProvisionPermissionSetInput) (*request.Request, *ssoadmin.ProvisionPermissionSetOutput) + PutApplicationAccessScope(*ssoadmin.PutApplicationAccessScopeInput) (*ssoadmin.PutApplicationAccessScopeOutput, error) + PutApplicationAccessScopeWithContext(aws.Context, *ssoadmin.PutApplicationAccessScopeInput, ...request.Option) (*ssoadmin.PutApplicationAccessScopeOutput, error) + PutApplicationAccessScopeRequest(*ssoadmin.PutApplicationAccessScopeInput) (*request.Request, *ssoadmin.PutApplicationAccessScopeOutput) + + PutApplicationAssignmentConfiguration(*ssoadmin.PutApplicationAssignmentConfigurationInput) (*ssoadmin.PutApplicationAssignmentConfigurationOutput, error) + PutApplicationAssignmentConfigurationWithContext(aws.Context, *ssoadmin.PutApplicationAssignmentConfigurationInput, ...request.Option) (*ssoadmin.PutApplicationAssignmentConfigurationOutput, error) + PutApplicationAssignmentConfigurationRequest(*ssoadmin.PutApplicationAssignmentConfigurationInput) (*request.Request, *ssoadmin.PutApplicationAssignmentConfigurationOutput) + + PutApplicationAuthenticationMethod(*ssoadmin.PutApplicationAuthenticationMethodInput) (*ssoadmin.PutApplicationAuthenticationMethodOutput, error) + PutApplicationAuthenticationMethodWithContext(aws.Context, *ssoadmin.PutApplicationAuthenticationMethodInput, ...request.Option) (*ssoadmin.PutApplicationAuthenticationMethodOutput, error) + PutApplicationAuthenticationMethodRequest(*ssoadmin.PutApplicationAuthenticationMethodInput) (*request.Request, *ssoadmin.PutApplicationAuthenticationMethodOutput) + + PutApplicationGrant(*ssoadmin.PutApplicationGrantInput) (*ssoadmin.PutApplicationGrantOutput, error) + PutApplicationGrantWithContext(aws.Context, *ssoadmin.PutApplicationGrantInput, ...request.Option) (*ssoadmin.PutApplicationGrantOutput, error) + PutApplicationGrantRequest(*ssoadmin.PutApplicationGrantInput) (*request.Request, *ssoadmin.PutApplicationGrantOutput) + PutInlinePolicyToPermissionSet(*ssoadmin.PutInlinePolicyToPermissionSetInput) (*ssoadmin.PutInlinePolicyToPermissionSetOutput, error) PutInlinePolicyToPermissionSetWithContext(aws.Context, *ssoadmin.PutInlinePolicyToPermissionSetInput, ...request.Option) (*ssoadmin.PutInlinePolicyToPermissionSetOutput, error) PutInlinePolicyToPermissionSetRequest(*ssoadmin.PutInlinePolicyToPermissionSetInput) (*request.Request, *ssoadmin.PutInlinePolicyToPermissionSetOutput) @@ -233,6 +392,14 @@ UntagResourceWithContext(aws.Context, *ssoadmin.UntagResourceInput, ...request.Option) (*ssoadmin.UntagResourceOutput, error) UntagResourceRequest(*ssoadmin.UntagResourceInput) (*request.Request, *ssoadmin.UntagResourceOutput) + UpdateApplication(*ssoadmin.UpdateApplicationInput) (*ssoadmin.UpdateApplicationOutput, error) + UpdateApplicationWithContext(aws.Context, *ssoadmin.UpdateApplicationInput, ...request.Option) (*ssoadmin.UpdateApplicationOutput, error) + UpdateApplicationRequest(*ssoadmin.UpdateApplicationInput) (*request.Request, *ssoadmin.UpdateApplicationOutput) + + UpdateInstance(*ssoadmin.UpdateInstanceInput) (*ssoadmin.UpdateInstanceOutput, error) + UpdateInstanceWithContext(aws.Context, *ssoadmin.UpdateInstanceInput, ...request.Option) (*ssoadmin.UpdateInstanceOutput, error) + UpdateInstanceRequest(*ssoadmin.UpdateInstanceInput) (*request.Request, *ssoadmin.UpdateInstanceOutput) + UpdateInstanceAccessControlAttributeConfiguration(*ssoadmin.UpdateInstanceAccessControlAttributeConfigurationInput) (*ssoadmin.UpdateInstanceAccessControlAttributeConfigurationOutput, error) UpdateInstanceAccessControlAttributeConfigurationWithContext(aws.Context, *ssoadmin.UpdateInstanceAccessControlAttributeConfigurationInput, ...request.Option) (*ssoadmin.UpdateInstanceAccessControlAttributeConfigurationOutput, error) UpdateInstanceAccessControlAttributeConfigurationRequest(*ssoadmin.UpdateInstanceAccessControlAttributeConfigurationInput) (*request.Request, *ssoadmin.UpdateInstanceAccessControlAttributeConfigurationOutput) @@ -240,6 +407,10 @@ UpdatePermissionSet(*ssoadmin.UpdatePermissionSetInput) (*ssoadmin.UpdatePermissionSetOutput, error) UpdatePermissionSetWithContext(aws.Context, *ssoadmin.UpdatePermissionSetInput, ...request.Option) (*ssoadmin.UpdatePermissionSetOutput, error) UpdatePermissionSetRequest(*ssoadmin.UpdatePermissionSetInput) (*request.Request, *ssoadmin.UpdatePermissionSetOutput) + + UpdateTrustedTokenIssuer(*ssoadmin.UpdateTrustedTokenIssuerInput) (*ssoadmin.UpdateTrustedTokenIssuerOutput, error) + UpdateTrustedTokenIssuerWithContext(aws.Context, *ssoadmin.UpdateTrustedTokenIssuerInput, ...request.Option) (*ssoadmin.UpdateTrustedTokenIssuerOutput, error) + UpdateTrustedTokenIssuerRequest(*ssoadmin.UpdateTrustedTokenIssuerInput) (*request.Request, *ssoadmin.UpdateTrustedTokenIssuerOutput) } var _ SSOAdminAPI = (*ssoadmin.SSOAdmin)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/api.go golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -56,9 +56,10 @@ // CreateToken API operation for AWS SSO OIDC. // -// Creates and returns an access token for the authorized client. The access -// token issued will be used to fetch short-term credentials for the assigned -// roles in the AWS account. +// Creates and returns access and refresh tokens for clients that are authenticated +// using client secrets. The access token can be used to fetch short-term credentials +// for the assigned AWS accounts or to access application APIs using bearer +// authentication. // // 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 @@ -133,6 +134,131 @@ return out, req.Send() } +const opCreateTokenWithIAM = "CreateTokenWithIAM" + +// CreateTokenWithIAMRequest generates a "aws/request.Request" representing the +// client's request for the CreateTokenWithIAM 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 CreateTokenWithIAM for more information on using the CreateTokenWithIAM +// 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 CreateTokenWithIAMRequest method. +// req, resp := client.CreateTokenWithIAMRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAM +func (c *SSOOIDC) CreateTokenWithIAMRequest(input *CreateTokenWithIAMInput) (req *request.Request, output *CreateTokenWithIAMOutput) { + op := &request.Operation{ + Name: opCreateTokenWithIAM, + HTTPMethod: "POST", + HTTPPath: "/token?aws_iam=t", + } + + if input == nil { + input = &CreateTokenWithIAMInput{} + } + + output = &CreateTokenWithIAMOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTokenWithIAM API operation for AWS SSO OIDC. +// +// Creates and returns access and refresh tokens for clients and applications +// that are authenticated using IAM entities. The access token can be used to +// fetch short-term credentials for the assigned AWS accounts or to access application +// APIs using bearer authentication. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SSO OIDC's +// API operation CreateTokenWithIAM for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a required parameter might be missing or out of range. +// +// - InvalidClientException +// Indicates that the clientId or clientSecret in the request is invalid. For +// example, this can occur when a client sends an incorrect clientId or an expired +// clientSecret. +// +// - InvalidGrantException +// Indicates that a request contains an invalid grant. This can occur if a client +// makes a CreateToken request with an invalid grant type. +// +// - UnauthorizedClientException +// Indicates that the client is not currently authorized to make the request. +// This can happen when a clientId is not issued for a public client. +// +// - UnsupportedGrantTypeException +// Indicates that the grant type in the request is not supported by the service. +// +// - InvalidScopeException +// Indicates that the scope provided in the request is invalid. +// +// - AuthorizationPendingException +// Indicates that a request to authorize a client with an access user session +// token is pending. +// +// - SlowDownException +// Indicates that the client is making the request too frequently and is more +// than the service can handle. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ExpiredTokenException +// Indicates that the token issued by the service is expired and is no longer +// valid. +// +// - InternalServerException +// Indicates that an error from the service occurred while trying to process +// a request. +// +// - InvalidRequestRegionException +// Indicates that a token provided as input to the request was issued by and +// is only usable by calling IAM Identity Center endpoints in another region. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAM +func (c *SSOOIDC) CreateTokenWithIAM(input *CreateTokenWithIAMInput) (*CreateTokenWithIAMOutput, error) { + req, out := c.CreateTokenWithIAMRequest(input) + return out, req.Send() +} + +// CreateTokenWithIAMWithContext is the same as CreateTokenWithIAM with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTokenWithIAM 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 *SSOOIDC) CreateTokenWithIAMWithContext(ctx aws.Context, input *CreateTokenWithIAMInput, opts ...request.Option) (*CreateTokenWithIAMOutput, error) { + req, out := c.CreateTokenWithIAMRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opRegisterClient = "RegisterClient" // RegisterClientRequest generates a "aws/request.Request" representing the @@ -331,8 +457,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be access_denied. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -400,8 +529,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be authorization_pending. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -466,8 +598,8 @@ type CreateTokenInput struct { _ struct{} `type:"structure"` - // The unique identifier string for each client. This value should come from - // the persisted result of the RegisterClient API. + // The unique identifier string for the client or application. This value comes + // from the result of the RegisterClient API. // // ClientId is a required field ClientId *string `locationName:"clientId" type:"string" required:"true"` @@ -475,23 +607,30 @@ // A secret string generated for the client. This value should come from the // persisted result of the RegisterClient API. // + // ClientSecret is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenInput's + // String and GoString methods. + // // ClientSecret is a required field - ClientSecret *string `locationName:"clientSecret" type:"string" required:"true"` + ClientSecret *string `locationName:"clientSecret" type:"string" required:"true" sensitive:"true"` - // The authorization code received from the authorization service. This parameter - // is required to perform an authorization grant request to get access to a - // token. + // Used only when calling this API for the Authorization Code grant type. The + // short-term code is used to identify this authorization request. This grant + // type is currently unsupported for the CreateToken API. Code *string `locationName:"code" type:"string"` - // Used only when calling this API for the device code grant type. This short-term - // code is used to identify this authentication attempt. This should come from - // an in-memory reference to the result of the StartDeviceAuthorization API. + // Used only when calling this API for the Device Code grant type. This short-term + // code is used to identify this authorization request. This comes from the + // result of the StartDeviceAuthorization API. DeviceCode *string `locationName:"deviceCode" type:"string"` - // Supports grant types for the authorization code, refresh token, and device - // code request. For device code requests, specify the following value: + // Supports the following OAuth grant types: Device Code and Refresh Token. + // Specify either of the following values, depending on the grant type that + // you want: + // + // * Device Code - urn:ietf:params:oauth:grant-type:device_code // - // urn:ietf:params:oauth:grant-type:device_code + // * Refresh Token - refresh_token // // For information about how to obtain the device code, see the StartDeviceAuthorization // topic. @@ -499,21 +638,28 @@ // GrantType is a required field GrantType *string `locationName:"grantType" type:"string" required:"true"` - // The location of the application that will receive the authorization code. - // Users authorize the service to send the request to this location. + // Used only when calling this API for the Authorization Code grant type. This + // value specifies the location of the client or application that has registered + // to receive the authorization code. RedirectUri *string `locationName:"redirectUri" type:"string"` - // Currently, refreshToken is not yet implemented and is not supported. For - // more information about the features and limitations of the current IAM Identity - // Center OIDC implementation, see Considerations for Using this Guide in the - // IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). - // - // The token used to obtain an access token in the event that the access token - // is invalid or expired. - RefreshToken *string `locationName:"refreshToken" type:"string"` - - // The list of scopes that is defined by the client. Upon authorization, this - // list is used to restrict permissions when granting an access token. + // Used only when calling this API for the Refresh Token grant type. This token + // is used to refresh short-term tokens, such as the access token, that might + // expire. + // + // For more information about the features and limitations of the current IAM + // Identity Center OIDC implementation, see Considerations for Using this Guide + // in the IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). + // + // RefreshToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenInput's + // String and GoString methods. + RefreshToken *string `locationName:"refreshToken" type:"string" sensitive:"true"` + + // The list of scopes for which authorization is requested. The access token + // that is issued is limited to the scopes that are granted. If this value is + // not specified, IAM Identity Center authorizes all scopes that are configured + // for the client during the call to RegisterClient. Scope []*string `locationName:"scope" type:"list"` } @@ -605,31 +751,43 @@ type CreateTokenOutput struct { _ struct{} `type:"structure"` - // An opaque token to access IAM Identity Center resources assigned to a user. - AccessToken *string `locationName:"accessToken" type:"string"` + // A bearer token to access AWS accounts and applications assigned to a user. + // + // AccessToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenOutput's + // String and GoString methods. + AccessToken *string `locationName:"accessToken" type:"string" sensitive:"true"` // Indicates the time in seconds when an access token will expire. ExpiresIn *int64 `locationName:"expiresIn" type:"integer"` - // Currently, idToken is not yet implemented and is not supported. For more - // information about the features and limitations of the current IAM Identity - // Center OIDC implementation, see Considerations for Using this Guide in the - // IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). - // - // The identifier of the user that associated with the access token, if present. - IdToken *string `locationName:"idToken" type:"string"` - - // Currently, refreshToken is not yet implemented and is not supported. For - // more information about the features and limitations of the current IAM Identity - // Center OIDC implementation, see Considerations for Using this Guide in the - // IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). + // The idToken is not implemented or supported. For more information about the + // features and limitations of the current IAM Identity Center OIDC implementation, + // see Considerations for Using this Guide in the IAM Identity Center OIDC API + // Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). + // + // A JSON Web Token (JWT) that identifies who is associated with the issued + // access token. // + // IdToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenOutput's + // String and GoString methods. + IdToken *string `locationName:"idToken" type:"string" sensitive:"true"` + // A token that, if present, can be used to refresh a previously issued access // token that might have expired. - RefreshToken *string `locationName:"refreshToken" type:"string"` + // + // For more information about the features and limitations of the current IAM + // Identity Center OIDC implementation, see Considerations for Using this Guide + // in the IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). + // + // RefreshToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenOutput's + // String and GoString methods. + RefreshToken *string `locationName:"refreshToken" type:"string" sensitive:"true"` // Used to notify the client that the returned token is an access token. The - // supported type is BearerToken. + // supported token type is Bearer. TokenType *string `locationName:"tokenType" type:"string"` } @@ -681,14 +839,312 @@ return s } +type CreateTokenWithIAMInput struct { + _ struct{} `type:"structure"` + + // Used only when calling this API for the JWT Bearer grant type. This value + // specifies the JSON Web Token (JWT) issued by a trusted token issuer. To authorize + // a trusted token issuer, configure the JWT Bearer GrantOptions for the application. + // + // Assertion is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenWithIAMInput's + // String and GoString methods. + Assertion *string `locationName:"assertion" type:"string" sensitive:"true"` + + // The unique identifier string for the client or application. This value is + // an application ARN that has OAuth grants configured. + // + // ClientId is a required field + ClientId *string `locationName:"clientId" type:"string" required:"true"` + + // Used only when calling this API for the Authorization Code grant type. This + // short-term code is used to identify this authorization request. The code + // is obtained through a redirect from IAM Identity Center to a redirect URI + // persisted in the Authorization Code GrantOptions for the application. + Code *string `locationName:"code" type:"string"` + + // Supports the following OAuth grant types: Authorization Code, Refresh Token, + // JWT Bearer, and Token Exchange. Specify one of the following values, depending + // on the grant type that you want: + // + // * Authorization Code - authorization_code + // + // * Refresh Token - refresh_token + // + // * JWT Bearer - urn:ietf:params:oauth:grant-type:jwt-bearer + // + // * Token Exchange - urn:ietf:params:oauth:grant-type:token-exchange + // + // GrantType is a required field + GrantType *string `locationName:"grantType" type:"string" required:"true"` + + // Used only when calling this API for the Authorization Code grant type. This + // value specifies the location of the client or application that has registered + // to receive the authorization code. + RedirectUri *string `locationName:"redirectUri" type:"string"` + + // Used only when calling this API for the Refresh Token grant type. This token + // is used to refresh short-term tokens, such as the access token, that might + // expire. + // + // For more information about the features and limitations of the current IAM + // Identity Center OIDC implementation, see Considerations for Using this Guide + // in the IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). + // + // RefreshToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenWithIAMInput's + // String and GoString methods. + RefreshToken *string `locationName:"refreshToken" type:"string" sensitive:"true"` + + // Used only when calling this API for the Token Exchange grant type. This value + // specifies the type of token that the requester can receive. The following + // values are supported: + // + // * Access Token - urn:ietf:params:oauth:token-type:access_token + // + // * Refresh Token - urn:ietf:params:oauth:token-type:refresh_token + RequestedTokenType *string `locationName:"requestedTokenType" type:"string"` + + // The list of scopes for which authorization is requested. The access token + // that is issued is limited to the scopes that are granted. If the value is + // not specified, IAM Identity Center authorizes all scopes configured for the + // application, including the following default scopes: openid, aws, sts:identity_context. + Scope []*string `locationName:"scope" type:"list"` + + // Used only when calling this API for the Token Exchange grant type. This value + // specifies the subject of the exchange. The value of the subject token must + // be an access token issued by IAM Identity Center to a different client or + // application. The access token must have authorized scopes that indicate the + // requested application as a target audience. + // + // SubjectToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenWithIAMInput's + // String and GoString methods. + SubjectToken *string `locationName:"subjectToken" type:"string" sensitive:"true"` + + // Used only when calling this API for the Token Exchange grant type. This value + // specifies the type of token that is passed as the subject of the exchange. + // The following value is supported: + // + // * Access Token - urn:ietf:params:oauth:token-type:access_token + SubjectTokenType *string `locationName:"subjectTokenType" 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 CreateTokenWithIAMInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTokenWithIAMInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTokenWithIAMInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTokenWithIAMInput"} + if s.ClientId == nil { + invalidParams.Add(request.NewErrParamRequired("ClientId")) + } + if s.GrantType == nil { + invalidParams.Add(request.NewErrParamRequired("GrantType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssertion sets the Assertion field's value. +func (s *CreateTokenWithIAMInput) SetAssertion(v string) *CreateTokenWithIAMInput { + s.Assertion = &v + return s +} + +// SetClientId sets the ClientId field's value. +func (s *CreateTokenWithIAMInput) SetClientId(v string) *CreateTokenWithIAMInput { + s.ClientId = &v + return s +} + +// SetCode sets the Code field's value. +func (s *CreateTokenWithIAMInput) SetCode(v string) *CreateTokenWithIAMInput { + s.Code = &v + return s +} + +// SetGrantType sets the GrantType field's value. +func (s *CreateTokenWithIAMInput) SetGrantType(v string) *CreateTokenWithIAMInput { + s.GrantType = &v + return s +} + +// SetRedirectUri sets the RedirectUri field's value. +func (s *CreateTokenWithIAMInput) SetRedirectUri(v string) *CreateTokenWithIAMInput { + s.RedirectUri = &v + return s +} + +// SetRefreshToken sets the RefreshToken field's value. +func (s *CreateTokenWithIAMInput) SetRefreshToken(v string) *CreateTokenWithIAMInput { + s.RefreshToken = &v + return s +} + +// SetRequestedTokenType sets the RequestedTokenType field's value. +func (s *CreateTokenWithIAMInput) SetRequestedTokenType(v string) *CreateTokenWithIAMInput { + s.RequestedTokenType = &v + return s +} + +// SetScope sets the Scope field's value. +func (s *CreateTokenWithIAMInput) SetScope(v []*string) *CreateTokenWithIAMInput { + s.Scope = v + return s +} + +// SetSubjectToken sets the SubjectToken field's value. +func (s *CreateTokenWithIAMInput) SetSubjectToken(v string) *CreateTokenWithIAMInput { + s.SubjectToken = &v + return s +} + +// SetSubjectTokenType sets the SubjectTokenType field's value. +func (s *CreateTokenWithIAMInput) SetSubjectTokenType(v string) *CreateTokenWithIAMInput { + s.SubjectTokenType = &v + return s +} + +type CreateTokenWithIAMOutput struct { + _ struct{} `type:"structure"` + + // A bearer token to access AWS accounts and applications assigned to a user. + // + // AccessToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenWithIAMOutput's + // String and GoString methods. + AccessToken *string `locationName:"accessToken" type:"string" sensitive:"true"` + + // Indicates the time in seconds when an access token will expire. + ExpiresIn *int64 `locationName:"expiresIn" type:"integer"` + + // A JSON Web Token (JWT) that identifies the user associated with the issued + // access token. + // + // IdToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenWithIAMOutput's + // String and GoString methods. + IdToken *string `locationName:"idToken" type:"string" sensitive:"true"` + + // Indicates the type of tokens that are issued by IAM Identity Center. The + // following values are supported: + // + // * Access Token - urn:ietf:params:oauth:token-type:access_token + // + // * Refresh Token - urn:ietf:params:oauth:token-type:refresh_token + IssuedTokenType *string `locationName:"issuedTokenType" type:"string"` + + // A token that, if present, can be used to refresh a previously issued access + // token that might have expired. + // + // For more information about the features and limitations of the current IAM + // Identity Center OIDC implementation, see Considerations for Using this Guide + // in the IAM Identity Center OIDC API Reference (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html). + // + // RefreshToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateTokenWithIAMOutput's + // String and GoString methods. + RefreshToken *string `locationName:"refreshToken" type:"string" sensitive:"true"` + + // The list of scopes for which authorization is granted. The access token that + // is issued is limited to the scopes that are granted. + Scope []*string `locationName:"scope" type:"list"` + + // Used to notify the requester that the returned token is an access token. + // The supported token type is Bearer. + TokenType *string `locationName:"tokenType" 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 CreateTokenWithIAMOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTokenWithIAMOutput) GoString() string { + return s.String() +} + +// SetAccessToken sets the AccessToken field's value. +func (s *CreateTokenWithIAMOutput) SetAccessToken(v string) *CreateTokenWithIAMOutput { + s.AccessToken = &v + return s +} + +// SetExpiresIn sets the ExpiresIn field's value. +func (s *CreateTokenWithIAMOutput) SetExpiresIn(v int64) *CreateTokenWithIAMOutput { + s.ExpiresIn = &v + return s +} + +// SetIdToken sets the IdToken field's value. +func (s *CreateTokenWithIAMOutput) SetIdToken(v string) *CreateTokenWithIAMOutput { + s.IdToken = &v + return s +} + +// SetIssuedTokenType sets the IssuedTokenType field's value. +func (s *CreateTokenWithIAMOutput) SetIssuedTokenType(v string) *CreateTokenWithIAMOutput { + s.IssuedTokenType = &v + return s +} + +// SetRefreshToken sets the RefreshToken field's value. +func (s *CreateTokenWithIAMOutput) SetRefreshToken(v string) *CreateTokenWithIAMOutput { + s.RefreshToken = &v + return s +} + +// SetScope sets the Scope field's value. +func (s *CreateTokenWithIAMOutput) SetScope(v []*string) *CreateTokenWithIAMOutput { + s.Scope = v + return s +} + +// SetTokenType sets the TokenType field's value. +func (s *CreateTokenWithIAMOutput) SetTokenType(v string) *CreateTokenWithIAMOutput { + s.TokenType = &v + return s +} + // Indicates that the token issued by the service is expired and is no longer // valid. type ExpiredTokenException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be expired_token. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -756,8 +1212,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be server_error. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -826,8 +1285,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be invalid_client. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -895,8 +1357,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be invalid_client_metadata. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -964,8 +1429,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be invalid_grant. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -1033,8 +1501,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be invalid_request. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -1096,13 +1567,95 @@ return s.RespMetadata.RequestID } +// Indicates that a token provided as input to the request was issued by and +// is only usable by calling IAM Identity Center endpoints in another region. +type InvalidRequestRegionException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Indicates the IAM Identity Center endpoint which the requester may call with + // this token. + Endpoint *string `locationName:"endpoint" type:"string"` + + // Single error code. For this exception the value will be invalid_request. + Error_ *string `locationName:"error" type:"string"` + + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. + Error_description *string `locationName:"error_description" type:"string"` + + Message_ *string `locationName:"message" type:"string"` + + // Indicates the region which the requester may call with this token. + Region *string `locationName:"region" 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 InvalidRequestRegionException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidRequestRegionException) GoString() string { + return s.String() +} + +func newErrorInvalidRequestRegionException(v protocol.ResponseMetadata) error { + return &InvalidRequestRegionException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidRequestRegionException) Code() string { + return "InvalidRequestRegionException" +} + +// Message returns the exception's message. +func (s *InvalidRequestRegionException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidRequestRegionException) OrigErr() error { + return nil +} + +func (s *InvalidRequestRegionException) 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 *InvalidRequestRegionException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidRequestRegionException) RequestID() string { + return s.RespMetadata.RequestID +} + // Indicates that the scope provided in the request is invalid. type InvalidScopeException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be invalid_scope. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -1238,7 +1791,7 @@ type RegisterClientOutput struct { _ struct{} `type:"structure"` - // The endpoint where the client can request authorization. + // An endpoint that the client can use to request authorization. AuthorizationEndpoint *string `locationName:"authorizationEndpoint" type:"string"` // The unique identifier string for each client. This client uses this identifier @@ -1250,12 +1803,16 @@ // A secret string generated for the client. The client will use this string // to get authenticated by the service in subsequent calls. - ClientSecret *string `locationName:"clientSecret" type:"string"` + // + // ClientSecret is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterClientOutput's + // String and GoString methods. + ClientSecret *string `locationName:"clientSecret" type:"string" sensitive:"true"` // Indicates the time at which the clientId and clientSecret will become invalid. ClientSecretExpiresAt *int64 `locationName:"clientSecretExpiresAt" type:"long"` - // The endpoint where the client can get an access token. + // An endpoint that the client can use to create tokens. TokenEndpoint *string `locationName:"tokenEndpoint" type:"string"` } @@ -1319,8 +1876,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be slow_down. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -1395,11 +1955,15 @@ // A secret string that is generated for the client. This value should come // from the persisted result of the RegisterClient API operation. // + // ClientSecret is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by StartDeviceAuthorizationInput's + // String and GoString methods. + // // ClientSecret is a required field - ClientSecret *string `locationName:"clientSecret" type:"string" required:"true"` + ClientSecret *string `locationName:"clientSecret" type:"string" required:"true" sensitive:"true"` - // The URL for the AWS access portal. For more information, see Using the AWS - // access portal (https://docs.aws.amazon.com/singlesignon/latest/userguide/using-the-portal.html) + // The URL for the Amazon Web Services access portal. For more information, + // see Using the Amazon Web Services access portal (https://docs.aws.amazon.com/singlesignon/latest/userguide/using-the-portal.html) // in the IAM Identity Center User Guide. // // StartUrl is a required field @@ -1550,8 +2114,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be unauthorized_client. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` @@ -1618,8 +2185,11 @@ _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Single error code. For this exception the value will be unsupported_grant_type. Error_ *string `locationName:"error" type:"string"` + // Human-readable text providing additional information, used to assist the + // client developer in understanding the error that occurred. Error_description *string `locationName:"error_description" type:"string"` Message_ *string `locationName:"message" type:"string"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/doc.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -3,15 +3,13 @@ // Package ssooidc provides the client and types for making API // requests to AWS SSO OIDC. // -// AWS IAM Identity Center (successor to AWS Single Sign-On) OpenID Connect -// (OIDC) is a web service that enables a client (such as AWS CLI or a native -// application) to register with IAM Identity Center. The service also enables -// the client to fetch the user’s access token upon successful authentication -// and authorization with IAM Identity Center. -// -// Although AWS Single Sign-On was renamed, the sso and identitystore API namespaces -// will continue to retain their original name for backward compatibility purposes. -// For more information, see IAM Identity Center rename (https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html#renamed). +// IAM Identity Center OpenID Connect (OIDC) is a web service that enables a +// client (such as CLI or a native application) to register with IAM Identity +// Center. The service also enables the client to fetch the user’s access +// token upon successful authentication and authorization with IAM Identity +// Center. +// +// IAM Identity Center uses the sso and identitystore API namespaces. // // # Considerations for Using This Guide // @@ -22,21 +20,24 @@ // - The IAM Identity Center OIDC service currently implements only the portions // of the OAuth 2.0 Device Authorization Grant standard (https://tools.ietf.org/html/rfc8628 // (https://tools.ietf.org/html/rfc8628)) that are necessary to enable single -// sign-on authentication with the AWS CLI. Support for other OIDC flows -// frequently needed for native applications, such as Authorization Code -// Flow (+ PKCE), will be addressed in future releases. -// -// - The service emits only OIDC access tokens, such that obtaining a new -// token (For example, token refresh) requires explicit user re-authentication. -// -// - The access tokens provided by this service grant access to all AWS account -// entitlements assigned to an IAM Identity Center user, not just a particular -// application. +// sign-on authentication with the CLI. +// +// - With older versions of the CLI, the service only emits OIDC access tokens, +// so to obtain a new token, users must explicitly re-authenticate. To access +// the OIDC flow that supports token refresh and doesn’t require re-authentication, +// update to the latest CLI version (1.27.10 for CLI V1 and 2.9.0 for CLI +// V2) with support for OIDC token refresh and configurable IAM Identity +// Center session durations. For more information, see Configure Amazon Web +// Services access portal session duration (https://docs.aws.amazon.com/singlesignon/latest/userguide/configure-user-session.html). +// +// - The access tokens provided by this service grant access to all Amazon +// Web Services account entitlements assigned to an IAM Identity Center user, +// not just a particular application. // // - The documentation in this guide does not describe the mechanism to convert -// the access token into AWS Auth (“sigv4”) credentials for use with -// IAM-protected AWS service endpoints. For more information, see GetRoleCredentials -// (https://docs.aws.amazon.com/singlesignon/latest/PortalAPIReference/API_GetRoleCredentials.html) +// the access token into Amazon Web Services Auth (“sigv4”) credentials +// for use with IAM-protected Amazon Web Services service endpoints. For +// more information, see GetRoleCredentials (https://docs.aws.amazon.com/singlesignon/latest/PortalAPIReference/API_GetRoleCredentials.html) // in the IAM Identity Center Portal API Reference Guide. // // For general information about IAM Identity Center, see What is IAM Identity diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,13 @@ // a required parameter might be missing or out of range. ErrCodeInvalidRequestException = "InvalidRequestException" + // ErrCodeInvalidRequestRegionException for service response error code + // "InvalidRequestRegionException". + // + // Indicates that a token provided as input to the request was issued by and + // is only usable by calling IAM Identity Center endpoints in another region. + ErrCodeInvalidRequestRegionException = "InvalidRequestRegionException" + // ErrCodeInvalidScopeException for service response error code // "InvalidScopeException". // @@ -100,6 +107,7 @@ "InvalidClientMetadataException": newErrorInvalidClientMetadataException, "InvalidGrantException": newErrorInvalidGrantException, "InvalidRequestException": newErrorInvalidRequestException, + "InvalidRequestRegionException": newErrorInvalidRequestRegionException, "InvalidScopeException": newErrorInvalidScopeException, "SlowDownException": newErrorSlowDownException, "UnauthorizedClientException": newErrorUnauthorizedClientException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/examples_test.go golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/examples_test.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/examples_test.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/examples_test.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,432 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package ssooidc_test + +import ( + "fmt" + "strings" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/session" + "github.com/aws/aws-sdk-go/service/ssooidc" +) + +var _ time.Duration +var _ strings.Reader +var _ aws.Config + +func parseTime(layout, value string) *time.Time { + t, err := time.Parse(layout, value) + if err != nil { + panic(err) + } + return &t +} + +// Call OAuth/OIDC /token endpoint for Device Code grant with Secret authentication +// + +func ExampleSSOOIDC_CreateToken_shared00() { + svc := ssooidc.New(session.New()) + input := &ssooidc.CreateTokenInput{ + ClientId: aws.String("_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID"), + ClientSecret: aws.String("VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0"), + DeviceCode: aws.String("yJraWQiOiJrZXktMTU2Njk2ODA4OCIsImFsZyI6IkhTMzIn0EXAMPLEDEVICECODE"), + GrantType: aws.String("urn:ietf:params:oauth:grant-type:device-code"), + } + + result, err := svc.CreateToken(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeInvalidGrantException: + fmt.Println(ssooidc.ErrCodeInvalidGrantException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeUnsupportedGrantTypeException: + fmt.Println(ssooidc.ErrCodeUnsupportedGrantTypeException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeAuthorizationPendingException: + fmt.Println(ssooidc.ErrCodeAuthorizationPendingException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeAccessDeniedException: + fmt.Println(ssooidc.ErrCodeAccessDeniedException, aerr.Error()) + case ssooidc.ErrCodeExpiredTokenException: + fmt.Println(ssooidc.ErrCodeExpiredTokenException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /token endpoint for Refresh Token grant with Secret authentication +// + +func ExampleSSOOIDC_CreateToken_shared01() { + svc := ssooidc.New(session.New()) + input := &ssooidc.CreateTokenInput{ + ClientId: aws.String("_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID"), + ClientSecret: aws.String("VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0"), + GrantType: aws.String("refresh_token"), + RefreshToken: aws.String("aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN"), + Scope: []*string{ + aws.String("codewhisperer:completions"), + }, + } + + result, err := svc.CreateToken(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeInvalidGrantException: + fmt.Println(ssooidc.ErrCodeInvalidGrantException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeUnsupportedGrantTypeException: + fmt.Println(ssooidc.ErrCodeUnsupportedGrantTypeException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeAuthorizationPendingException: + fmt.Println(ssooidc.ErrCodeAuthorizationPendingException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeAccessDeniedException: + fmt.Println(ssooidc.ErrCodeAccessDeniedException, aerr.Error()) + case ssooidc.ErrCodeExpiredTokenException: + fmt.Println(ssooidc.ErrCodeExpiredTokenException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /token endpoint for Authorization Code grant with IAM authentication +// + +func ExampleSSOOIDC_CreateTokenWithIAM_shared00() { + svc := ssooidc.New(session.New()) + input := &ssooidc.CreateTokenWithIAMInput{ + ClientId: aws.String("arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222"), + Code: aws.String("yJraWQiOiJrZXktMTU2Njk2ODA4OCIsImFsZyI6IkhTMzg0In0EXAMPLEAUTHCODE"), + GrantType: aws.String("authorization_code"), + RedirectUri: aws.String("https://mywebapp.example/redirect"), + Scope: []*string{ + aws.String("openid"), + aws.String("aws"), + aws.String("sts:identity_context"), + }, + } + + result, err := svc.CreateTokenWithIAM(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeInvalidGrantException: + fmt.Println(ssooidc.ErrCodeInvalidGrantException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeUnsupportedGrantTypeException: + fmt.Println(ssooidc.ErrCodeUnsupportedGrantTypeException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeAuthorizationPendingException: + fmt.Println(ssooidc.ErrCodeAuthorizationPendingException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeAccessDeniedException: + fmt.Println(ssooidc.ErrCodeAccessDeniedException, aerr.Error()) + case ssooidc.ErrCodeExpiredTokenException: + fmt.Println(ssooidc.ErrCodeExpiredTokenException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + case ssooidc.ErrCodeInvalidRequestRegionException: + fmt.Println(ssooidc.ErrCodeInvalidRequestRegionException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /token endpoint for Refresh Token grant with IAM authentication +// + +func ExampleSSOOIDC_CreateTokenWithIAM_shared01() { + svc := ssooidc.New(session.New()) + input := &ssooidc.CreateTokenWithIAMInput{ + ClientId: aws.String("arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222"), + GrantType: aws.String("refresh_token"), + RefreshToken: aws.String("aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN"), + } + + result, err := svc.CreateTokenWithIAM(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeInvalidGrantException: + fmt.Println(ssooidc.ErrCodeInvalidGrantException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeUnsupportedGrantTypeException: + fmt.Println(ssooidc.ErrCodeUnsupportedGrantTypeException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeAuthorizationPendingException: + fmt.Println(ssooidc.ErrCodeAuthorizationPendingException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeAccessDeniedException: + fmt.Println(ssooidc.ErrCodeAccessDeniedException, aerr.Error()) + case ssooidc.ErrCodeExpiredTokenException: + fmt.Println(ssooidc.ErrCodeExpiredTokenException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + case ssooidc.ErrCodeInvalidRequestRegionException: + fmt.Println(ssooidc.ErrCodeInvalidRequestRegionException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /token endpoint for JWT Bearer grant with IAM authentication +// + +func ExampleSSOOIDC_CreateTokenWithIAM_shared02() { + svc := ssooidc.New(session.New()) + input := &ssooidc.CreateTokenWithIAMInput{ + Assertion: aws.String("eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IjFMVE16YWtpaGlSbGFfOHoyQkVKVlhlV01xbyJ9.eyJ2ZXIiOiIyLjAiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vOTEyMjA0MGQtNmM2Ny00YzViLWIxMTItMzZhMzA0YjY2ZGFkL3YyLjAiLCJzdWIiOiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFJa3pxRlZyU2FTYUZIeTc4MmJidGFRIiwiYXVkIjoiNmNiMDQwMTgtYTNmNS00NmE3LWI5OTUtOTQwYzc4ZjVhZWYzIiwiZXhwIjoxNTM2MzYxNDExLCJpYXQiOjE1MzYyNzQ3MTEsIm5iZiI6MTUzNjI3NDcxMSwibmFtZSI6IkFiZSBMaW5jb2xuIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiQWJlTGlAbWljcm9zb2Z0LmNvbSIsIm9pZCI6IjAwMDAwMDAwLTAwMDAtMDAwMC02NmYzLTMzMzJlY2E3ZWE4MSIsInRpZCI6IjkxMjIwNDBkLTZjNjctNGM1Yi1iMTEyLTM2YTMwNGI2NmRhZCIsIm5vbmNlIjoiMTIzNTIzIiwiYWlvIjoiRGYyVVZYTDFpeCFsTUNXTVNPSkJjRmF0emNHZnZGR2hqS3Y4cTVnMHg3MzJkUjVNQjVCaXN2R1FPN1lXQnlqZDhpUURMcSFlR2JJRGFreXA1bW5PcmNkcUhlWVNubHRlcFFtUnA2QUlaOGpZIn0.1AFWW-Ck5nROwSlltm7GzZvDwUkqvhSQpm55TQsmVo9Y59cLhRXpvB8n-55HCr9Z6G_31_UbeUkoz612I2j_Sm9FFShSDDjoaLQr54CreGIJvjtmS3EkK9a7SJBbcpL1MpUtlfygow39tFjY7EVNW9plWUvRrTgVk7lYLprvfzw-CIqw3gHC-T7IK_m_xkr08INERBtaecwhTeN4chPC4W3jdmw_lIxzC48YoQ0dB1L9-ImX98Egypfrlbm0IBL5spFzL6JDZIRRJOu8vecJvj1mq-IUhGt0MacxX8jdxYLP-KUu2d9MbNKpCKJuZ7p8gwTL5B7NlUdh_dmSviPWrw"), + ClientId: aws.String("arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222"), + GrantType: aws.String("urn:ietf:params:oauth:grant-type:jwt-bearer"), + } + + result, err := svc.CreateTokenWithIAM(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeInvalidGrantException: + fmt.Println(ssooidc.ErrCodeInvalidGrantException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeUnsupportedGrantTypeException: + fmt.Println(ssooidc.ErrCodeUnsupportedGrantTypeException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeAuthorizationPendingException: + fmt.Println(ssooidc.ErrCodeAuthorizationPendingException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeAccessDeniedException: + fmt.Println(ssooidc.ErrCodeAccessDeniedException, aerr.Error()) + case ssooidc.ErrCodeExpiredTokenException: + fmt.Println(ssooidc.ErrCodeExpiredTokenException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + case ssooidc.ErrCodeInvalidRequestRegionException: + fmt.Println(ssooidc.ErrCodeInvalidRequestRegionException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /token endpoint for Token Exchange grant with IAM authentication +// + +func ExampleSSOOIDC_CreateTokenWithIAM_shared03() { + svc := ssooidc.New(session.New()) + input := &ssooidc.CreateTokenWithIAMInput{ + ClientId: aws.String("arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222"), + GrantType: aws.String("urn:ietf:params:oauth:grant-type:token-exchange"), + RequestedTokenType: aws.String("urn:ietf:params:oauth:token-type:access_token"), + SubjectToken: aws.String("aoak-Hig8TUDPNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZDIFFERENTACCESSTOKEN"), + SubjectTokenType: aws.String("urn:ietf:params:oauth:token-type:access_token"), + } + + result, err := svc.CreateTokenWithIAM(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeInvalidGrantException: + fmt.Println(ssooidc.ErrCodeInvalidGrantException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeUnsupportedGrantTypeException: + fmt.Println(ssooidc.ErrCodeUnsupportedGrantTypeException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeAuthorizationPendingException: + fmt.Println(ssooidc.ErrCodeAuthorizationPendingException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeAccessDeniedException: + fmt.Println(ssooidc.ErrCodeAccessDeniedException, aerr.Error()) + case ssooidc.ErrCodeExpiredTokenException: + fmt.Println(ssooidc.ErrCodeExpiredTokenException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + case ssooidc.ErrCodeInvalidRequestRegionException: + fmt.Println(ssooidc.ErrCodeInvalidRequestRegionException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /register-client endpoint +// + +func ExampleSSOOIDC_RegisterClient_shared00() { + svc := ssooidc.New(session.New()) + input := &ssooidc.RegisterClientInput{ + ClientName: aws.String("My IDE Plugin"), + ClientType: aws.String("public"), + Scopes: []*string{ + aws.String("sso:account:access"), + aws.String("codewhisperer:completions"), + }, + } + + result, err := svc.RegisterClient(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidScopeException: + fmt.Println(ssooidc.ErrCodeInvalidScopeException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientMetadataException: + fmt.Println(ssooidc.ErrCodeInvalidClientMetadataException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Call OAuth/OIDC /start-device-authorization endpoint +// + +func ExampleSSOOIDC_StartDeviceAuthorization_shared00() { + svc := ssooidc.New(session.New()) + input := &ssooidc.StartDeviceAuthorizationInput{ + ClientId: aws.String("_yzkThXVzLWVhc3QtMQEXAMPLECLIENTID"), + ClientSecret: aws.String("VERYLONGSECRETeyJraWQiOiJrZXktMTU2NDAyODA5OSIsImFsZyI6IkhTMzg0In0"), + StartUrl: aws.String("https://identitycenter.amazonaws.com/ssoins-111111111111"), + } + + result, err := svc.StartDeviceAuthorization(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case ssooidc.ErrCodeInvalidRequestException: + fmt.Println(ssooidc.ErrCodeInvalidRequestException, aerr.Error()) + case ssooidc.ErrCodeInvalidClientException: + fmt.Println(ssooidc.ErrCodeInvalidClientException, aerr.Error()) + case ssooidc.ErrCodeUnauthorizedClientException: + fmt.Println(ssooidc.ErrCodeUnauthorizedClientException, aerr.Error()) + case ssooidc.ErrCodeSlowDownException: + fmt.Println(ssooidc.ErrCodeSlowDownException, aerr.Error()) + case ssooidc.ErrCodeInternalServerException: + fmt.Println(ssooidc.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/service.go golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/service.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -51,7 +51,7 @@ func New(p client.ConfigProvider, cfgs ...*aws.Config) *SSOOIDC { c := p.ClientConfig(EndpointsID, cfgs...) if c.SigningNameDerived || len(c.SigningName) == 0 { - c.SigningName = "awsssooidc" + c.SigningName = "sso-oauth" } return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/ssooidciface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/ssooidciface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/ssooidc/ssooidciface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/ssooidc/ssooidciface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -64,6 +64,10 @@ CreateTokenWithContext(aws.Context, *ssooidc.CreateTokenInput, ...request.Option) (*ssooidc.CreateTokenOutput, error) CreateTokenRequest(*ssooidc.CreateTokenInput) (*request.Request, *ssooidc.CreateTokenOutput) + CreateTokenWithIAM(*ssooidc.CreateTokenWithIAMInput) (*ssooidc.CreateTokenWithIAMOutput, error) + CreateTokenWithIAMWithContext(aws.Context, *ssooidc.CreateTokenWithIAMInput, ...request.Option) (*ssooidc.CreateTokenWithIAMOutput, error) + CreateTokenWithIAMRequest(*ssooidc.CreateTokenWithIAMInput) (*request.Request, *ssooidc.CreateTokenWithIAMOutput) + RegisterClient(*ssooidc.RegisterClientInput) (*ssooidc.RegisterClientOutput, error) RegisterClientWithContext(aws.Context, *ssooidc.RegisterClientInput, ...request.Option) (*ssooidc.RegisterClientOutput, error) RegisterClientRequest(*ssooidc.RegisterClientInput) (*request.Request, *ssooidc.RegisterClientOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/storagegateway/api.go golang-github-aws-aws-sdk-go-1.48.14/service/storagegateway/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/storagegateway/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/storagegateway/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -3354,10 +3354,9 @@ // DescribeGatewayInformation API operation for AWS Storage Gateway. // -// Returns metadata about a gateway such as its name, network interfaces, configured -// time zone, and the state (whether the gateway is running or not). To specify -// which gateway to describe, use the Amazon Resource Name (ARN) of the gateway -// in your request. +// Returns metadata about a gateway such as its name, network interfaces, time +// zone, status, and software version. To specify which gateway to describe, +// use the Amazon Resource Name (ARN) of the gateway in your request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4985,6 +4984,16 @@ // Adds a file gateway to an Active Directory domain. This operation is only // supported for file gateways that support the SMB file protocol. // +// Joining a domain creates an Active Directory computer account in the default +// organizational unit, using the gateway's Gateway ID as the account name (for +// example, SGW-1234ADE). If your Active Directory environment requires that +// you pre-stage accounts to facilitate the join domain process, you will need +// to create this account ahead of time. +// +// To create the gateway's computer account in an organizational unit other +// than the default, you must specify the organizational unit when joining the +// domain. +// // 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. @@ -5161,8 +5170,8 @@ // ListFileShares API operation for AWS Storage Gateway. // // Gets a list of the file shares for a specific S3 File Gateway, or the list -// of file shares that belong to the calling user account. This operation is -// only supported for S3 File Gateways. +// of file shares that belong to the calling Amazon Web Services account. This +// operation is only supported for S3 File Gateways. // // 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 @@ -6468,8 +6477,8 @@ // event targets such as Amazon SNS or Lambda function. This operation is only // supported for S3 File Gateways. // -// For more information, see Getting file upload notification (https://docs.aws.amazon.com/storagegateway/latest/userguide/monitoring-file-gateway.html#get-upload-notification) -// in the Storage Gateway User Guide. +// For more information, see Getting file upload notification (https://docs.aws.amazon.com/filegateway/latest/files3/monitoring-file-gateway.html#get-notification) +// in the Amazon S3 File Gateway User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6582,9 +6591,6 @@ // // - Wait at least 60 seconds between consecutive RefreshCache API requests. // -// - RefreshCache does not evict cache entries if invoked consecutively within -// 60 seconds of a previous RefreshCache request. -// // - If you invoke the RefreshCache API when two requests are already being // processed, any new request will cause an InvalidGatewayRequestException // error because too many requests were sent to the server. @@ -7693,8 +7699,9 @@ // Updates the bandwidth rate limit schedule for a specified gateway. By default, // gateways do not have bandwidth rate limit schedules, which means no bandwidth // rate limiting is in effect. Use this to initiate or update a gateway's bandwidth -// rate limit schedule. This operation is supported only for volume, tape and -// S3 file gateways. FSx file gateways do not support bandwidth rate limits. +// rate limit schedule. This operation is supported for volume, tape, and S3 +// file gateways. S3 file gateways support bandwidth rate limits for upload +// only. FSx file gateways do not support bandwidth rate limits. // // 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 @@ -10151,6 +10158,10 @@ // The average upload rate limit component of the bandwidth rate limit interval, // in bits per second. This field does not appear in the response if the upload // rate limit is not set. + // + // For Tape Gateway and Volume Gateway, the minimum value is 51200. + // + // For S3 File Gateway and FSx File Gateway, the minimum value is 104857600. AverageUploadRateLimitInBitsPerSec *int64 `min:"51200" type:"long"` // The days of the week component of the bandwidth rate limit interval, represented @@ -14791,6 +14802,9 @@ // Date after which this gateway will not receive software updates for new features. SoftwareUpdatesEndDate *string `min:"1" type:"string"` + // The version number of the software running on the gateway appliance. + SoftwareVersion *string `type:"string"` + // A list of the metadata cache sizes that the gateway can support based on // its current hardware specifications. SupportedGatewayCapacities []*string `type:"list" enum:"GatewayCapacity"` @@ -14931,6 +14945,12 @@ return s } +// SetSoftwareVersion sets the SoftwareVersion field's value. +func (s *DescribeGatewayInformationOutput) SetSoftwareVersion(v string) *DescribeGatewayInformationOutput { + s.SoftwareVersion = &v + return s +} + // SetSupportedGatewayCapacities sets the SupportedGatewayCapacities field's value. func (s *DescribeGatewayInformationOutput) SetSupportedGatewayCapacities(v []*string) *DescribeGatewayInformationOutput { s.SupportedGatewayCapacities = v @@ -19331,7 +19351,7 @@ // Describes a gateway's network interface. type NetworkInterface struct { - _ struct{} `type:"structure"` + _ struct{} `type:"structure" sensitive:"true"` // The Internet Protocol version 4 (IPv4) address of the interface. Ipv4Address *string `type:"string"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/sts/api.go golang-github-aws-aws-sdk-go-1.48.14/service/sts/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/sts/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/sts/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1460,7 +1460,15 @@ // in the IAM User Guide. PolicyArns []*PolicyDescriptorType `type:"list"` - // Reserved for future use. + // A list of previously acquired trusted context assertions in the format of + // a JSON array. The trusted context assertion is signed and encrypted by Amazon + // Web Services STS. + // + // The following is an example of a ProvidedContext value that includes a single + // trusted context assertion and the ARN of the context provider from which + // the trusted context assertion was generated. + // + // [{"ProviderArn":"arn:aws:iam::aws:contextProvider/IdentityCenter","ContextAssertion":"trusted-context-assertion"}] ProvidedContexts []*ProvidedContext `type:"list"` // The Amazon Resource Name (ARN) of the role to assume. @@ -3405,14 +3413,18 @@ return s } -// Reserved for future use. +// Contains information about the provided context. This includes the signed +// and encrypted trusted context assertion and the context provider ARN from +// which the trusted context assertion was generated. type ProvidedContext struct { _ struct{} `type:"structure"` - // Reserved for future use. + // The signed and encrypted trusted context assertion generated by the context + // provider. The trusted context assertion is signed and encrypted by Amazon + // Web Services STS. ContextAssertion *string `min:"4" type:"string"` - // Reserved for future use. + // The context provider ARN from which the trusted context assertion was generated. ProviderArn *string `min:"20" type:"string"` } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/textract/api.go golang-github-aws-aws-sdk-go-1.48.14/service/textract/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/textract/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/textract/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -4,11 +4,13 @@ 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 opAnalyzeDocument = "AnalyzeDocument" @@ -415,6 +417,481 @@ return out, req.Send() } +const opCreateAdapter = "CreateAdapter" + +// CreateAdapterRequest generates a "aws/request.Request" representing the +// client's request for the CreateAdapter 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 CreateAdapter for more information on using the CreateAdapter +// 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 CreateAdapterRequest method. +// req, resp := client.CreateAdapterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/CreateAdapter +func (c *Textract) CreateAdapterRequest(input *CreateAdapterInput) (req *request.Request, output *CreateAdapterOutput) { + op := &request.Operation{ + Name: opCreateAdapter, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateAdapterInput{} + } + + output = &CreateAdapterOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAdapter API operation for Amazon Textract. +// +// Creates an adapter, which can be fine-tuned for enhanced performance on user +// provided documents. Takes an AdapterName and FeatureType. Currently the only +// supported feature type is QUERIES. You can also provide a Description, Tags, +// and a ClientRequestToken. You can choose whether or not the adapter should +// be AutoUpdated with the AutoUpdate argument. By default, AutoUpdate is set +// to DISABLED. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation CreateAdapter for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - IdempotentParameterMismatchException +// A ClientRequestToken input parameter was reused with an operation, but at +// least one of the other input parameters is different from the previous call +// to the operation. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - LimitExceededException +// An Amazon Textract service limit was exceeded. For example, if you start +// too many asynchronous jobs concurrently, calls to start operations (StartDocumentTextDetection, +// for example) raise a LimitExceededException exception (HTTP status code: +// 400) until the number of concurrently running jobs is below the Amazon Textract +// service limit. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ServiceQuotaExceededException +// Returned when a request cannot be completed as it would exceed a maximum +// service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/CreateAdapter +func (c *Textract) CreateAdapter(input *CreateAdapterInput) (*CreateAdapterOutput, error) { + req, out := c.CreateAdapterRequest(input) + return out, req.Send() +} + +// CreateAdapterWithContext is the same as CreateAdapter with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAdapter 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 *Textract) CreateAdapterWithContext(ctx aws.Context, input *CreateAdapterInput, opts ...request.Option) (*CreateAdapterOutput, error) { + req, out := c.CreateAdapterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateAdapterVersion = "CreateAdapterVersion" + +// CreateAdapterVersionRequest generates a "aws/request.Request" representing the +// client's request for the CreateAdapterVersion 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 CreateAdapterVersion for more information on using the CreateAdapterVersion +// 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 CreateAdapterVersionRequest method. +// req, resp := client.CreateAdapterVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/CreateAdapterVersion +func (c *Textract) CreateAdapterVersionRequest(input *CreateAdapterVersionInput) (req *request.Request, output *CreateAdapterVersionOutput) { + op := &request.Operation{ + Name: opCreateAdapterVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateAdapterVersionInput{} + } + + output = &CreateAdapterVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAdapterVersion API operation for Amazon Textract. +// +// Creates a new version of an adapter. Operates on a provided AdapterId and +// a specified dataset provided via the DatasetConfig argument. Requires that +// you specify an Amazon S3 bucket with the OutputConfig argument. You can provide +// an optional KMSKeyId, an optional ClientRequestToken, and optional tags. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation CreateAdapterVersion for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - InvalidS3ObjectException +// Amazon Textract is unable to access the S3 object that's specified in the +// request. for more information, Configure Access to Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html) +// For troubleshooting information, see Troubleshooting Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/troubleshooting.html) +// +// - InvalidKMSKeyException +// Indicates you do not have decrypt permissions with the KMS key entered, or +// the KMS key was entered incorrectly. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - IdempotentParameterMismatchException +// A ClientRequestToken input parameter was reused with an operation, but at +// least one of the other input parameters is different from the previous call +// to the operation. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - LimitExceededException +// An Amazon Textract service limit was exceeded. For example, if you start +// too many asynchronous jobs concurrently, calls to start operations (StartDocumentTextDetection, +// for example) raise a LimitExceededException exception (HTTP status code: +// 400) until the number of concurrently running jobs is below the Amazon Textract +// service limit. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ServiceQuotaExceededException +// Returned when a request cannot be completed as it would exceed a maximum +// service quota. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/CreateAdapterVersion +func (c *Textract) CreateAdapterVersion(input *CreateAdapterVersionInput) (*CreateAdapterVersionOutput, error) { + req, out := c.CreateAdapterVersionRequest(input) + return out, req.Send() +} + +// CreateAdapterVersionWithContext is the same as CreateAdapterVersion with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAdapterVersion 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 *Textract) CreateAdapterVersionWithContext(ctx aws.Context, input *CreateAdapterVersionInput, opts ...request.Option) (*CreateAdapterVersionOutput, error) { + req, out := c.CreateAdapterVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAdapter = "DeleteAdapter" + +// DeleteAdapterRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAdapter 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 DeleteAdapter for more information on using the DeleteAdapter +// 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 DeleteAdapterRequest method. +// req, resp := client.DeleteAdapterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/DeleteAdapter +func (c *Textract) DeleteAdapterRequest(input *DeleteAdapterInput) (req *request.Request, output *DeleteAdapterOutput) { + op := &request.Operation{ + Name: opDeleteAdapter, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteAdapterInput{} + } + + output = &DeleteAdapterOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAdapter API operation for Amazon Textract. +// +// Deletes an Amazon Textract adapter. Takes an AdapterId and deletes the adapter +// specified by the ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation DeleteAdapter for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/DeleteAdapter +func (c *Textract) DeleteAdapter(input *DeleteAdapterInput) (*DeleteAdapterOutput, error) { + req, out := c.DeleteAdapterRequest(input) + return out, req.Send() +} + +// DeleteAdapterWithContext is the same as DeleteAdapter with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAdapter 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 *Textract) DeleteAdapterWithContext(ctx aws.Context, input *DeleteAdapterInput, opts ...request.Option) (*DeleteAdapterOutput, error) { + req, out := c.DeleteAdapterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteAdapterVersion = "DeleteAdapterVersion" + +// DeleteAdapterVersionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAdapterVersion 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 DeleteAdapterVersion for more information on using the DeleteAdapterVersion +// 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 DeleteAdapterVersionRequest method. +// req, resp := client.DeleteAdapterVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/DeleteAdapterVersion +func (c *Textract) DeleteAdapterVersionRequest(input *DeleteAdapterVersionInput) (req *request.Request, output *DeleteAdapterVersionOutput) { + op := &request.Operation{ + Name: opDeleteAdapterVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteAdapterVersionInput{} + } + + output = &DeleteAdapterVersionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAdapterVersion API operation for Amazon Textract. +// +// Deletes an Amazon Textract adapter version. Requires that you specify both +// an AdapterId and a AdapterVersion. Deletes the adapter version specified +// by the AdapterId and the AdapterVersion. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation DeleteAdapterVersion for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/DeleteAdapterVersion +func (c *Textract) DeleteAdapterVersion(input *DeleteAdapterVersionInput) (*DeleteAdapterVersionOutput, error) { + req, out := c.DeleteAdapterVersionRequest(input) + return out, req.Send() +} + +// DeleteAdapterVersionWithContext is the same as DeleteAdapterVersion with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAdapterVersion 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 *Textract) DeleteAdapterVersionWithContext(ctx aws.Context, input *DeleteAdapterVersionInput, opts ...request.Option) (*DeleteAdapterVersionOutput, error) { + req, out := c.DeleteAdapterVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDetectDocumentText = "DetectDocumentText" // DetectDocumentTextRequest generates a "aws/request.Request" representing the @@ -543,6 +1020,216 @@ return out, req.Send() } +const opGetAdapter = "GetAdapter" + +// GetAdapterRequest generates a "aws/request.Request" representing the +// client's request for the GetAdapter 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 GetAdapter for more information on using the GetAdapter +// 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 GetAdapterRequest method. +// req, resp := client.GetAdapterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/GetAdapter +func (c *Textract) GetAdapterRequest(input *GetAdapterInput) (req *request.Request, output *GetAdapterOutput) { + op := &request.Operation{ + Name: opGetAdapter, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetAdapterInput{} + } + + output = &GetAdapterOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAdapter API operation for Amazon Textract. +// +// Gets configuration information for an adapter specified by an AdapterId, +// returning information on AdapterName, Description, CreationTime, AutoUpdate +// status, and FeatureTypes. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation GetAdapter for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/GetAdapter +func (c *Textract) GetAdapter(input *GetAdapterInput) (*GetAdapterOutput, error) { + req, out := c.GetAdapterRequest(input) + return out, req.Send() +} + +// GetAdapterWithContext is the same as GetAdapter with the addition of +// the ability to pass a context and additional request options. +// +// See GetAdapter 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 *Textract) GetAdapterWithContext(ctx aws.Context, input *GetAdapterInput, opts ...request.Option) (*GetAdapterOutput, error) { + req, out := c.GetAdapterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAdapterVersion = "GetAdapterVersion" + +// GetAdapterVersionRequest generates a "aws/request.Request" representing the +// client's request for the GetAdapterVersion 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 GetAdapterVersion for more information on using the GetAdapterVersion +// 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 GetAdapterVersionRequest method. +// req, resp := client.GetAdapterVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/GetAdapterVersion +func (c *Textract) GetAdapterVersionRequest(input *GetAdapterVersionInput) (req *request.Request, output *GetAdapterVersionOutput) { + op := &request.Operation{ + Name: opGetAdapterVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetAdapterVersionInput{} + } + + output = &GetAdapterVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAdapterVersion API operation for Amazon Textract. +// +// Gets configuration information for the specified adapter version, including: +// AdapterId, AdapterVersion, FeatureTypes, Status, StatusMessage, DatasetConfig, +// KMSKeyId, OutputConfig, Tags and EvaluationMetrics. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation GetAdapterVersion for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/GetAdapterVersion +func (c *Textract) GetAdapterVersion(input *GetAdapterVersionInput) (*GetAdapterVersionOutput, error) { + req, out := c.GetAdapterVersionRequest(input) + return out, req.Send() +} + +// GetAdapterVersionWithContext is the same as GetAdapterVersion with the addition of +// the ability to pass a context and additional request options. +// +// See GetAdapterVersion 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 *Textract) GetAdapterVersionWithContext(ctx aws.Context, input *GetAdapterVersionInput, opts ...request.Option) (*GetAdapterVersionOutput, error) { + req, out := c.GetAdapterVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDocumentAnalysis = "GetDocumentAnalysis" // GetDocumentAnalysisRequest generates a "aws/request.Request" representing the @@ -1210,6 +1897,426 @@ return out, req.Send() } +const opListAdapterVersions = "ListAdapterVersions" + +// ListAdapterVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListAdapterVersions 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 ListAdapterVersions for more information on using the ListAdapterVersions +// 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 ListAdapterVersionsRequest method. +// req, resp := client.ListAdapterVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/ListAdapterVersions +func (c *Textract) ListAdapterVersionsRequest(input *ListAdapterVersionsInput) (req *request.Request, output *ListAdapterVersionsOutput) { + op := &request.Operation{ + Name: opListAdapterVersions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAdapterVersionsInput{} + } + + output = &ListAdapterVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAdapterVersions API operation for Amazon Textract. +// +// List all version of an adapter that meet the specified filtration criteria. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation ListAdapterVersions for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/ListAdapterVersions +func (c *Textract) ListAdapterVersions(input *ListAdapterVersionsInput) (*ListAdapterVersionsOutput, error) { + req, out := c.ListAdapterVersionsRequest(input) + return out, req.Send() +} + +// ListAdapterVersionsWithContext is the same as ListAdapterVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListAdapterVersions 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 *Textract) ListAdapterVersionsWithContext(ctx aws.Context, input *ListAdapterVersionsInput, opts ...request.Option) (*ListAdapterVersionsOutput, error) { + req, out := c.ListAdapterVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAdapterVersionsPages iterates over the pages of a ListAdapterVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAdapterVersions 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 ListAdapterVersions operation. +// pageNum := 0 +// err := client.ListAdapterVersionsPages(params, +// func(page *textract.ListAdapterVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Textract) ListAdapterVersionsPages(input *ListAdapterVersionsInput, fn func(*ListAdapterVersionsOutput, bool) bool) error { + return c.ListAdapterVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAdapterVersionsPagesWithContext same as ListAdapterVersionsPages 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 *Textract) ListAdapterVersionsPagesWithContext(ctx aws.Context, input *ListAdapterVersionsInput, fn func(*ListAdapterVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAdapterVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAdapterVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAdapterVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListAdapters = "ListAdapters" + +// ListAdaptersRequest generates a "aws/request.Request" representing the +// client's request for the ListAdapters 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 ListAdapters for more information on using the ListAdapters +// 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 ListAdaptersRequest method. +// req, resp := client.ListAdaptersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/ListAdapters +func (c *Textract) ListAdaptersRequest(input *ListAdaptersInput) (req *request.Request, output *ListAdaptersOutput) { + op := &request.Operation{ + Name: opListAdapters, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAdaptersInput{} + } + + output = &ListAdaptersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAdapters API operation for Amazon Textract. +// +// Lists all adapters that match the specified filtration criteria. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation ListAdapters for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/ListAdapters +func (c *Textract) ListAdapters(input *ListAdaptersInput) (*ListAdaptersOutput, error) { + req, out := c.ListAdaptersRequest(input) + return out, req.Send() +} + +// ListAdaptersWithContext is the same as ListAdapters with the addition of +// the ability to pass a context and additional request options. +// +// See ListAdapters 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 *Textract) ListAdaptersWithContext(ctx aws.Context, input *ListAdaptersInput, opts ...request.Option) (*ListAdaptersOutput, error) { + req, out := c.ListAdaptersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAdaptersPages iterates over the pages of a ListAdapters operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAdapters 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 ListAdapters operation. +// pageNum := 0 +// err := client.ListAdaptersPages(params, +// func(page *textract.ListAdaptersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Textract) ListAdaptersPages(input *ListAdaptersInput, fn func(*ListAdaptersOutput, bool) bool) error { + return c.ListAdaptersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAdaptersPagesWithContext same as ListAdaptersPages 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 *Textract) ListAdaptersPagesWithContext(ctx aws.Context, input *ListAdaptersInput, fn func(*ListAdaptersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAdaptersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAdaptersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAdaptersOutput), !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/textract-2018-06-27/ListTagsForResource +func (c *Textract) 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 Amazon Textract. +// +// Lists all tags for an Amazon Textract 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 Amazon Textract's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/ListTagsForResource +func (c *Textract) 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 *Textract) 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 opStartDocumentAnalysis = "StartDocumentAnalysis" // StartDocumentAnalysisRequest generates a "aws/request.Request" representing the @@ -1807,6 +2914,325 @@ 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/textract-2018-06-27/TagResource +func (c *Textract) 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 Amazon Textract. +// +// Adds one or more tags to the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - ServiceQuotaExceededException +// Returned when a request cannot be completed as it would exceed a maximum +// service quota. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/TagResource +func (c *Textract) 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 *Textract) 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/textract-2018-06-27/UntagResource +func (c *Textract) 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 Amazon Textract. +// +// Removes any tags with the specified keys from the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/UntagResource +func (c *Textract) 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 *Textract) 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 opUpdateAdapter = "UpdateAdapter" + +// UpdateAdapterRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAdapter 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 UpdateAdapter for more information on using the UpdateAdapter +// 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 UpdateAdapterRequest method. +// req, resp := client.UpdateAdapterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/UpdateAdapter +func (c *Textract) UpdateAdapterRequest(input *UpdateAdapterInput) (req *request.Request, output *UpdateAdapterOutput) { + op := &request.Operation{ + Name: opUpdateAdapter, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateAdapterInput{} + } + + output = &UpdateAdapterOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAdapter API operation for Amazon Textract. +// +// Update the configuration for an adapter. FeatureTypes configurations cannot +// be updated. At least one new parameter must be specified as an argument. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Textract's +// API operation UpdateAdapter for usage and error information. +// +// Returned Error Types: +// +// - InvalidParameterException +// An input parameter violated a constraint. For example, in synchronous operations, +// an InvalidParameterException exception occurs when neither of the S3Object +// or Bytes values are supplied in the Document request parameter. Validate +// your parameter before calling the API operation again. +// +// - AccessDeniedException +// You aren't authorized to perform the action. Use the Amazon Resource Name +// (ARN) of an authorized user or IAM role to perform the operation. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Textract. +// +// - InternalServerError +// Amazon Textract experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Textract is temporarily unable to process the request. Try your call +// again. +// +// - ValidationException +// Indicates that a request was not valid. Check request for proper formatting. +// +// - ResourceNotFoundException +// Returned when an operation tried to access a nonexistent resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/textract-2018-06-27/UpdateAdapter +func (c *Textract) UpdateAdapter(input *UpdateAdapterInput) (*UpdateAdapterOutput, error) { + req, out := c.UpdateAdapterRequest(input) + return out, req.Send() +} + +// UpdateAdapterWithContext is the same as UpdateAdapter with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAdapter 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 *Textract) UpdateAdapterWithContext(ctx aws.Context, input *UpdateAdapterInput, opts ...request.Option) (*UpdateAdapterOutput, error) { + req, out := c.UpdateAdapterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // You aren't authorized to perform the action. Use the Amazon Resource Name // (ARN) of an authorized user or IAM role to perform the operation. type AccessDeniedException struct { @@ -1872,9 +3298,413 @@ return s.RespMetadata.RequestID } +// An adapter selected for use when analyzing documents. Contains an adapter +// ID and a version number. Contains information on pages selected for analysis +// when analyzing documents asychronously. +type Adapter struct { + _ struct{} `type:"structure"` + + // A unique identifier for the adapter resource. + // + // AdapterId is a required field + AdapterId *string `min:"12" type:"string" required:"true"` + + // Pages is a parameter that the user inputs to specify which pages to apply + // an adapter to. The following is a list of rules for using this parameter. + // + // * If a page is not specified, it is set to ["1"] by default. + // + // * The following characters are allowed in the parameter's string: 0 1 + // 2 3 4 5 6 7 8 9 - *. No whitespace is allowed. + // + // * When using * to indicate all pages, it must be the only element in the + // list. + // + // * You can use page intervals, such as ["1-3", "1-1", "4-*"]. Where * indicates + // last page of document. + // + // * Specified pages must be greater than 0 and less than or equal to the + // number of pages in the document. + Pages []*string `min:"1" type:"list"` + + // A string that identifies the version of the adapter. + // + // Version is a required field + Version *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Adapter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Adapter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Adapter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Adapter"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + if s.Pages != nil && len(s.Pages) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Pages", 1)) + } + if s.Version == nil { + invalidParams.Add(request.NewErrParamRequired("Version")) + } + if s.Version != nil && len(*s.Version) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Version", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *Adapter) SetAdapterId(v string) *Adapter { + s.AdapterId = &v + return s +} + +// SetPages sets the Pages field's value. +func (s *Adapter) SetPages(v []*string) *Adapter { + s.Pages = v + return s +} + +// SetVersion sets the Version field's value. +func (s *Adapter) SetVersion(v string) *Adapter { + s.Version = &v + return s +} + +// Contains information on the adapter, including the adapter ID, Name, Creation +// time, and feature types. +type AdapterOverview struct { + _ struct{} `type:"structure"` + + // A unique identifier for the adapter resource. + AdapterId *string `min:"12" type:"string"` + + // A string naming the adapter resource. + AdapterName *string `min:"1" type:"string"` + + // The date and time that the adapter was created. + CreationTime *time.Time `type:"timestamp"` + + // The feature types that the adapter is operating on. + FeatureTypes []*string `type:"list" enum:"FeatureType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterOverview) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterOverview) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *AdapterOverview) SetAdapterId(v string) *AdapterOverview { + s.AdapterId = &v + return s +} + +// SetAdapterName sets the AdapterName field's value. +func (s *AdapterOverview) SetAdapterName(v string) *AdapterOverview { + s.AdapterName = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *AdapterOverview) SetCreationTime(v time.Time) *AdapterOverview { + s.CreationTime = &v + return s +} + +// SetFeatureTypes sets the FeatureTypes field's value. +func (s *AdapterOverview) SetFeatureTypes(v []*string) *AdapterOverview { + s.FeatureTypes = v + return s +} + +// The dataset configuration options for a given version of an adapter. Can +// include an Amazon S3 bucket if specified. +type AdapterVersionDatasetConfig struct { + _ struct{} `type:"structure"` + + // The S3 bucket name and file name that identifies the document. + // + // The AWS Region for the S3 bucket that contains the document must match the + // Region that you use for Amazon Textract operations. + // + // For Amazon Textract to process a file in an S3 bucket, the user must have + // permission to access the S3 bucket and file. + ManifestS3Object *S3Object `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 AdapterVersionDatasetConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterVersionDatasetConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AdapterVersionDatasetConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AdapterVersionDatasetConfig"} + if s.ManifestS3Object != nil { + if err := s.ManifestS3Object.Validate(); err != nil { + invalidParams.AddNested("ManifestS3Object", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetManifestS3Object sets the ManifestS3Object field's value. +func (s *AdapterVersionDatasetConfig) SetManifestS3Object(v *S3Object) *AdapterVersionDatasetConfig { + s.ManifestS3Object = v + return s +} + +// Contains information on the metrics used to evalute the peformance of a given +// adapter version. Includes data for baseline model performance and individual +// adapter version perfromance. +type AdapterVersionEvaluationMetric struct { + _ struct{} `type:"structure"` + + // The F1 score, precision, and recall metrics for the baseline model. + AdapterVersion *EvaluationMetric `type:"structure"` + + // The F1 score, precision, and recall metrics for the baseline model. + Baseline *EvaluationMetric `type:"structure"` + + // Indicates the feature type being analyzed by a given adapter version. + FeatureType *string `type:"string" enum:"FeatureType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterVersionEvaluationMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterVersionEvaluationMetric) GoString() string { + return s.String() +} + +// SetAdapterVersion sets the AdapterVersion field's value. +func (s *AdapterVersionEvaluationMetric) SetAdapterVersion(v *EvaluationMetric) *AdapterVersionEvaluationMetric { + s.AdapterVersion = v + return s +} + +// SetBaseline sets the Baseline field's value. +func (s *AdapterVersionEvaluationMetric) SetBaseline(v *EvaluationMetric) *AdapterVersionEvaluationMetric { + s.Baseline = v + return s +} + +// SetFeatureType sets the FeatureType field's value. +func (s *AdapterVersionEvaluationMetric) SetFeatureType(v string) *AdapterVersionEvaluationMetric { + s.FeatureType = &v + return s +} + +// Summary info for an adapter version. Contains information on the AdapterId, +// AdapterVersion, CreationTime, FeatureTypes, and Status. +type AdapterVersionOverview struct { + _ struct{} `type:"structure"` + + // A unique identifier for the adapter associated with a given adapter version. + AdapterId *string `min:"12" type:"string"` + + // An identified for a given adapter version. + AdapterVersion *string `min:"1" type:"string"` + + // The date and time that a given adapter version was created. + CreationTime *time.Time `type:"timestamp"` + + // The feature types that the adapter version is operating on. + FeatureTypes []*string `type:"list" enum:"FeatureType"` + + // Contains information on the status of a given adapter version. + Status *string `type:"string" enum:"AdapterVersionStatus"` + + // A message explaining the status of a given adapter vesion. + StatusMessage *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterVersionOverview) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdapterVersionOverview) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *AdapterVersionOverview) SetAdapterId(v string) *AdapterVersionOverview { + s.AdapterId = &v + return s +} + +// SetAdapterVersion sets the AdapterVersion field's value. +func (s *AdapterVersionOverview) SetAdapterVersion(v string) *AdapterVersionOverview { + s.AdapterVersion = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *AdapterVersionOverview) SetCreationTime(v time.Time) *AdapterVersionOverview { + s.CreationTime = &v + return s +} + +// SetFeatureTypes sets the FeatureTypes field's value. +func (s *AdapterVersionOverview) SetFeatureTypes(v []*string) *AdapterVersionOverview { + s.FeatureTypes = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AdapterVersionOverview) SetStatus(v string) *AdapterVersionOverview { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *AdapterVersionOverview) SetStatusMessage(v string) *AdapterVersionOverview { + s.StatusMessage = &v + return s +} + +// Contains information about adapters used when analyzing a document, with +// each adapter specified using an AdapterId and version +type AdaptersConfig struct { + _ struct{} `type:"structure"` + + // A list of adapters to be used when analyzing the specified document. + // + // Adapters is a required field + Adapters []*Adapter `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdaptersConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdaptersConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AdaptersConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AdaptersConfig"} + if s.Adapters == nil { + invalidParams.Add(request.NewErrParamRequired("Adapters")) + } + if s.Adapters != nil && len(s.Adapters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Adapters", 1)) + } + if s.Adapters != nil { + for i, v := range s.Adapters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Adapters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapters sets the Adapters field's value. +func (s *AdaptersConfig) SetAdapters(v []*Adapter) *AdaptersConfig { + s.Adapters = v + return s +} + type AnalyzeDocumentInput struct { _ struct{} `type:"structure"` + // Specifies the adapter to be used when analyzing a document. + AdaptersConfig *AdaptersConfig `type:"structure"` + // The input document as base64-encoded bytes or an Amazon S3 object. If you // use the AWS CLI to call Amazon Textract operations, you can't pass image // bytes. The document must be an image in JPEG, PNG, PDF, or TIFF format. @@ -1888,11 +3718,10 @@ // A list of the types of analysis to perform. Add TABLES to the list to return // information about the tables that are detected in the input document. Add // FORMS to return detected form data. Add SIGNATURES to return the locations - // of detected signatures. To perform both forms and table analysis, add TABLES - // and FORMS to FeatureTypes. To detect signatures within form data and table - // data, add SIGNATURES to either TABLES or FORMS. All lines and words detected - // in the document are included in the response (including text that isn't related - // to the value of FeatureTypes). + // of detected signatures. Add LAYOUT to the list to return information about + // the layout of the document. All lines and words detected in the document + // are included in the response (including text that isn't related to the value + // of FeatureTypes). // // FeatureTypes is a required field FeatureTypes []*string `type:"list" required:"true" enum:"FeatureType"` @@ -1931,6 +3760,11 @@ if s.FeatureTypes == nil { invalidParams.Add(request.NewErrParamRequired("FeatureTypes")) } + if s.AdaptersConfig != nil { + if err := s.AdaptersConfig.Validate(); err != nil { + invalidParams.AddNested("AdaptersConfig", err.(request.ErrInvalidParams)) + } + } if s.Document != nil { if err := s.Document.Validate(); err != nil { invalidParams.AddNested("Document", err.(request.ErrInvalidParams)) @@ -1953,6 +3787,12 @@ return nil } +// SetAdaptersConfig sets the AdaptersConfig field's value. +func (s *AnalyzeDocumentInput) SetAdaptersConfig(v *AdaptersConfig) *AnalyzeDocumentInput { + s.AdaptersConfig = v + return s +} + // SetDocument sets the Document field's value. func (s *AnalyzeDocumentInput) SetDocument(v *Document) *AnalyzeDocumentInput { s.Document = v @@ -2440,7 +4280,7 @@ // button) or a check box that's detected on a document page. Use the value // of SelectionStatus to determine the status of the selection element. // - // * SIGNATURE - The location and confidene score of a signature detected + // * SIGNATURE - The location and confidence score of a signature detected // on a document page. Can be returned as part of a Key-Value pair or a detected // cell. // @@ -2450,6 +4290,29 @@ // * QUERY_RESULT - A response to a question asked during the call of analyze // document. Comes with an alias and ID for ease of locating in a response. // Also contains location and confidence score. + // + // The following BlockTypes are only returned for Amazon Textract Layout. + // + // * LAYOUT_TITLE - The main title of the document. + // + // * LAYOUT_HEADER - Text located in the top margin of the document. + // + // * LAYOUT_FOOTER - Text located in the bottom margin of the document. + // + // * LAYOUT_SECTION_HEADER - The titles of sections within a document. + // + // * LAYOUT_PAGE_NUMBER - The page number of the documents. + // + // * LAYOUT_LIST - Any information grouped together in list form. + // + // * LAYOUT_FIGURE - Indicates the location of an image in a document. + // + // * LAYOUT_TABLE - Indicates the location of a table in the document. + // + // * LAYOUT_KEY_VALUE - Indicates the location of form key-values in a document. + // + // * LAYOUT_TEXT - Text that is present typically as a part of paragraphs + // in documents. BlockType *string `type:"string" enum:"BlockType"` // The column in which a table cell appears. The first column position is 1. @@ -2510,9 +4373,7 @@ // multipage documents that are in PDF or TIFF format. A scanned image (JPEG/PNG) // provided to an asynchronous operation, even if it contains multiple document // pages, is considered a single-page document. This means that for scanned - // images the value of Page is always 1. Synchronous operations will also return - // a Page value of 1 because every input document is considered to be a single-page - // document. + // images the value of Page is always 1. Page *int64 `type:"integer"` // Each query contains the question you want to ask in the Text and the alias @@ -2729,6 +4590,554 @@ return s } +// Updating or deleting a resource can cause an inconsistent state. +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 CreateAdapterInput struct { + _ struct{} `type:"structure"` + + // The name to be assigned to the adapter being created. + // + // AdapterName is a required field + AdapterName *string `min:"1" type:"string" required:"true"` + + // Controls whether or not the adapter should automatically update. + AutoUpdate *string `type:"string" enum:"AutoUpdate"` + + // Idempotent token is used to recognize the request. If the same token is used + // with multiple CreateAdapter requests, the same session is returned. This + // token is employed to avoid unintentionally creating the same session multiple + // times. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The description to be assigned to the adapter being created. + Description *string `min:"1" type:"string"` + + // The type of feature that the adapter is being trained on. Currrenly, supported + // feature types are: QUERIES + // + // FeatureTypes is a required field + FeatureTypes []*string `type:"list" required:"true" enum:"FeatureType"` + + // A list of tags to be added to the adapter. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAdapterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAdapterInput"} + if s.AdapterName == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterName")) + } + if s.AdapterName != nil && len(*s.AdapterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AdapterName", 1)) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FeatureTypes == nil { + invalidParams.Add(request.NewErrParamRequired("FeatureTypes")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterName sets the AdapterName field's value. +func (s *CreateAdapterInput) SetAdapterName(v string) *CreateAdapterInput { + s.AdapterName = &v + return s +} + +// SetAutoUpdate sets the AutoUpdate field's value. +func (s *CreateAdapterInput) SetAutoUpdate(v string) *CreateAdapterInput { + s.AutoUpdate = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateAdapterInput) SetClientRequestToken(v string) *CreateAdapterInput { + s.ClientRequestToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateAdapterInput) SetDescription(v string) *CreateAdapterInput { + s.Description = &v + return s +} + +// SetFeatureTypes sets the FeatureTypes field's value. +func (s *CreateAdapterInput) SetFeatureTypes(v []*string) *CreateAdapterInput { + s.FeatureTypes = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAdapterInput) SetTags(v map[string]*string) *CreateAdapterInput { + s.Tags = v + return s +} + +type CreateAdapterOutput struct { + _ struct{} `type:"structure"` + + // A string containing the unique ID for the adapter that has been created. + AdapterId *string `min:"12" 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 CreateAdapterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterOutput) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *CreateAdapterOutput) SetAdapterId(v string) *CreateAdapterOutput { + s.AdapterId = &v + return s +} + +type CreateAdapterVersionInput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter that will receive a new version. + // + // AdapterId is a required field + AdapterId *string `min:"12" type:"string" required:"true"` + + // Idempotent token is used to recognize the request. If the same token is used + // with multiple CreateAdapterVersion requests, the same session is returned. + // This token is employed to avoid unintentionally creating the same session + // multiple times. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Specifies a dataset used to train a new adapter version. Takes a ManifestS3Object + // as the value. + // + // DatasetConfig is a required field + DatasetConfig *AdapterVersionDatasetConfig `type:"structure" required:"true"` + + // The identifier for your AWS Key Management Service key (AWS KMS key). Used + // to encrypt your documents. + KMSKeyId *string `min:"1" type:"string"` + + // Sets whether or not your output will go to a user created bucket. Used to + // set the name of the bucket, and the prefix on the output file. + // + // OutputConfig is an optional parameter which lets you adjust where your output + // will be placed. By default, Amazon Textract will store the results internally + // and can only be accessed by the Get API operations. With OutputConfig enabled, + // you can set the name of the bucket the output will be sent to the file prefix + // of the results where you can download your results. Additionally, you can + // set the KMSKeyID parameter to a customer master key (CMK) to encrypt your + // output. Without this parameter set Amazon Textract will encrypt server-side + // using the AWS managed CMK for Amazon S3. + // + // Decryption of Customer Content is necessary for processing of the documents + // by Amazon Textract. If your account is opted out under an AI services opt + // out policy then all unencrypted Customer Content is immediately and permanently + // deleted after the Customer Content has been processed by the service. No + // copy of of the output is retained by Amazon Textract. For information about + // how to opt out, see Managing AI services opt-out policy. (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // + // For more information on data privacy, see the Data Privacy FAQ (https://aws.amazon.com/compliance/data-privacy-faq/). + // + // OutputConfig is a required field + OutputConfig *OutputConfig `type:"structure" required:"true"` + + // A set of tags (key-value pairs) that you want to attach to the adapter version. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAdapterVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAdapterVersionInput"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.DatasetConfig == nil { + invalidParams.Add(request.NewErrParamRequired("DatasetConfig")) + } + if s.KMSKeyId != nil && len(*s.KMSKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KMSKeyId", 1)) + } + if s.OutputConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputConfig")) + } + if s.DatasetConfig != nil { + if err := s.DatasetConfig.Validate(); err != nil { + invalidParams.AddNested("DatasetConfig", err.(request.ErrInvalidParams)) + } + } + if s.OutputConfig != nil { + if err := s.OutputConfig.Validate(); err != nil { + invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *CreateAdapterVersionInput) SetAdapterId(v string) *CreateAdapterVersionInput { + s.AdapterId = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateAdapterVersionInput) SetClientRequestToken(v string) *CreateAdapterVersionInput { + s.ClientRequestToken = &v + return s +} + +// SetDatasetConfig sets the DatasetConfig field's value. +func (s *CreateAdapterVersionInput) SetDatasetConfig(v *AdapterVersionDatasetConfig) *CreateAdapterVersionInput { + s.DatasetConfig = v + return s +} + +// SetKMSKeyId sets the KMSKeyId field's value. +func (s *CreateAdapterVersionInput) SetKMSKeyId(v string) *CreateAdapterVersionInput { + s.KMSKeyId = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *CreateAdapterVersionInput) SetOutputConfig(v *OutputConfig) *CreateAdapterVersionInput { + s.OutputConfig = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateAdapterVersionInput) SetTags(v map[string]*string) *CreateAdapterVersionInput { + s.Tags = v + return s +} + +type CreateAdapterVersionOutput struct { + _ struct{} `type:"structure"` + + // A string containing the unique ID for the adapter that has received a new + // version. + AdapterId *string `min:"12" type:"string"` + + // A string describing the new version of the adapter. + AdapterVersion *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateAdapterVersionOutput) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *CreateAdapterVersionOutput) SetAdapterId(v string) *CreateAdapterVersionOutput { + s.AdapterId = &v + return s +} + +// SetAdapterVersion sets the AdapterVersion field's value. +func (s *CreateAdapterVersionOutput) SetAdapterVersion(v string) *CreateAdapterVersionOutput { + s.AdapterVersion = &v + return s +} + +type DeleteAdapterInput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter to be deleted. + // + // AdapterId is a required field + AdapterId *string `min:"12" 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 DeleteAdapterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAdapterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAdapterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAdapterInput"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *DeleteAdapterInput) SetAdapterId(v string) *DeleteAdapterInput { + s.AdapterId = &v + return s +} + +type DeleteAdapterOutput 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 DeleteAdapterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAdapterOutput) GoString() string { + return s.String() +} + +type DeleteAdapterVersionInput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter version that will be deleted. + // + // AdapterId is a required field + AdapterId *string `min:"12" type:"string" required:"true"` + + // Specifies the adapter version to be deleted. + // + // AdapterVersion is a required field + AdapterVersion *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAdapterVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAdapterVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAdapterVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAdapterVersionInput"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + if s.AdapterVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterVersion")) + } + if s.AdapterVersion != nil && len(*s.AdapterVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AdapterVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *DeleteAdapterVersionInput) SetAdapterId(v string) *DeleteAdapterVersionInput { + s.AdapterId = &v + return s +} + +// SetAdapterVersion sets the AdapterVersion field's value. +func (s *DeleteAdapterVersionInput) SetAdapterVersion(v string) *DeleteAdapterVersionInput { + s.AdapterVersion = &v + return s +} + +type DeleteAdapterVersionOutput 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 DeleteAdapterVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAdapterVersionOutput) GoString() string { + return s.String() +} + type DetectDocumentTextInput struct { _ struct{} `type:"structure"` @@ -3164,6 +5573,56 @@ return s.RespMetadata.RequestID } +// The evaluation metrics (F1 score, Precision, and Recall) for an adapter version. +type EvaluationMetric struct { + _ struct{} `type:"structure"` + + // The F1 score for an adapter version. + F1Score *float64 `type:"float"` + + // The Precision score for an adapter version. + Precision *float64 `type:"float"` + + // The Recall score for an adapter version. + Recall *float64 `type:"float"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EvaluationMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EvaluationMetric) GoString() string { + return s.String() +} + +// SetF1Score sets the F1Score field's value. +func (s *EvaluationMetric) SetF1Score(v float64) *EvaluationMetric { + s.F1Score = &v + return s +} + +// SetPrecision sets the Precision field's value. +func (s *EvaluationMetric) SetPrecision(v float64) *EvaluationMetric { + s.Precision = &v + return s +} + +// SetRecall sets the Recall field's value. +func (s *EvaluationMetric) SetRecall(v float64) *EvaluationMetric { + s.Recall = &v + return s +} + // Returns the kind of currency detected. type ExpenseCurrency struct { _ struct{} `type:"structure"` @@ -3602,6 +6061,353 @@ return s } +type GetAdapterInput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter. + // + // AdapterId is a required field + AdapterId *string `min:"12" 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 GetAdapterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAdapterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAdapterInput"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *GetAdapterInput) SetAdapterId(v string) *GetAdapterInput { + s.AdapterId = &v + return s +} + +type GetAdapterOutput struct { + _ struct{} `type:"structure"` + + // A string identifying the adapter that information has been retrieved for. + AdapterId *string `min:"12" type:"string"` + + // The name of the requested adapter. + AdapterName *string `min:"1" type:"string"` + + // Binary value indicating if the adapter is being automatically updated or + // not. + AutoUpdate *string `type:"string" enum:"AutoUpdate"` + + // The date and time the requested adapter was created at. + CreationTime *time.Time `type:"timestamp"` + + // The description for the requested adapter. + Description *string `min:"1" type:"string"` + + // List of the targeted feature types for the requested adapter. + FeatureTypes []*string `type:"list" enum:"FeatureType"` + + // A set of tags (key-value pairs) associated with the adapter that has been + // retrieved. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterOutput) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *GetAdapterOutput) SetAdapterId(v string) *GetAdapterOutput { + s.AdapterId = &v + return s +} + +// SetAdapterName sets the AdapterName field's value. +func (s *GetAdapterOutput) SetAdapterName(v string) *GetAdapterOutput { + s.AdapterName = &v + return s +} + +// SetAutoUpdate sets the AutoUpdate field's value. +func (s *GetAdapterOutput) SetAutoUpdate(v string) *GetAdapterOutput { + s.AutoUpdate = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetAdapterOutput) SetCreationTime(v time.Time) *GetAdapterOutput { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetAdapterOutput) SetDescription(v string) *GetAdapterOutput { + s.Description = &v + return s +} + +// SetFeatureTypes sets the FeatureTypes field's value. +func (s *GetAdapterOutput) SetFeatureTypes(v []*string) *GetAdapterOutput { + s.FeatureTypes = v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetAdapterOutput) SetTags(v map[string]*string) *GetAdapterOutput { + s.Tags = v + return s +} + +type GetAdapterVersionInput struct { + _ struct{} `type:"structure"` + + // A string specifying a unique ID for the adapter version you want to retrieve + // information for. + // + // AdapterId is a required field + AdapterId *string `min:"12" type:"string" required:"true"` + + // A string specifying the adapter version you want to retrieve information + // for. + // + // AdapterVersion is a required field + AdapterVersion *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAdapterVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAdapterVersionInput"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + if s.AdapterVersion == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterVersion")) + } + if s.AdapterVersion != nil && len(*s.AdapterVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AdapterVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *GetAdapterVersionInput) SetAdapterId(v string) *GetAdapterVersionInput { + s.AdapterId = &v + return s +} + +// SetAdapterVersion sets the AdapterVersion field's value. +func (s *GetAdapterVersionInput) SetAdapterVersion(v string) *GetAdapterVersionInput { + s.AdapterVersion = &v + return s +} + +type GetAdapterVersionOutput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter version being retrieved. + AdapterId *string `min:"12" type:"string"` + + // A string containing the adapter version that has been retrieved. + AdapterVersion *string `min:"1" type:"string"` + + // The time that the adapter version was created. + CreationTime *time.Time `type:"timestamp"` + + // Specifies a dataset used to train a new adapter version. Takes a ManifestS3Objec + // as the value. + DatasetConfig *AdapterVersionDatasetConfig `type:"structure"` + + // The evaluation metrics (F1 score, Precision, and Recall) for the requested + // version, grouped by baseline metrics and adapter version. + EvaluationMetrics []*AdapterVersionEvaluationMetric `type:"list"` + + // List of the targeted feature types for the requested adapter version. + FeatureTypes []*string `type:"list" enum:"FeatureType"` + + // The identifier for your AWS Key Management Service key (AWS KMS key). Used + // to encrypt your documents. + KMSKeyId *string `min:"1" type:"string"` + + // Sets whether or not your output will go to a user created bucket. Used to + // set the name of the bucket, and the prefix on the output file. + // + // OutputConfig is an optional parameter which lets you adjust where your output + // will be placed. By default, Amazon Textract will store the results internally + // and can only be accessed by the Get API operations. With OutputConfig enabled, + // you can set the name of the bucket the output will be sent to the file prefix + // of the results where you can download your results. Additionally, you can + // set the KMSKeyID parameter to a customer master key (CMK) to encrypt your + // output. Without this parameter set Amazon Textract will encrypt server-side + // using the AWS managed CMK for Amazon S3. + // + // Decryption of Customer Content is necessary for processing of the documents + // by Amazon Textract. If your account is opted out under an AI services opt + // out policy then all unencrypted Customer Content is immediately and permanently + // deleted after the Customer Content has been processed by the service. No + // copy of of the output is retained by Amazon Textract. For information about + // how to opt out, see Managing AI services opt-out policy. (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // + // For more information on data privacy, see the Data Privacy FAQ (https://aws.amazon.com/compliance/data-privacy-faq/). + OutputConfig *OutputConfig `type:"structure"` + + // The status of the adapter version that has been requested. + Status *string `type:"string" enum:"AdapterVersionStatus"` + + // A message that describes the status of the requested adapter version. + StatusMessage *string `min:"1" type:"string"` + + // A set of tags (key-value pairs) that are associated with the adapter version. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetAdapterVersionOutput) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *GetAdapterVersionOutput) SetAdapterId(v string) *GetAdapterVersionOutput { + s.AdapterId = &v + return s +} + +// SetAdapterVersion sets the AdapterVersion field's value. +func (s *GetAdapterVersionOutput) SetAdapterVersion(v string) *GetAdapterVersionOutput { + s.AdapterVersion = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetAdapterVersionOutput) SetCreationTime(v time.Time) *GetAdapterVersionOutput { + s.CreationTime = &v + return s +} + +// SetDatasetConfig sets the DatasetConfig field's value. +func (s *GetAdapterVersionOutput) SetDatasetConfig(v *AdapterVersionDatasetConfig) *GetAdapterVersionOutput { + s.DatasetConfig = v + return s +} + +// SetEvaluationMetrics sets the EvaluationMetrics field's value. +func (s *GetAdapterVersionOutput) SetEvaluationMetrics(v []*AdapterVersionEvaluationMetric) *GetAdapterVersionOutput { + s.EvaluationMetrics = v + return s +} + +// SetFeatureTypes sets the FeatureTypes field's value. +func (s *GetAdapterVersionOutput) SetFeatureTypes(v []*string) *GetAdapterVersionOutput { + s.FeatureTypes = v + return s +} + +// SetKMSKeyId sets the KMSKeyId field's value. +func (s *GetAdapterVersionOutput) SetKMSKeyId(v string) *GetAdapterVersionOutput { + s.KMSKeyId = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *GetAdapterVersionOutput) SetOutputConfig(v *OutputConfig) *GetAdapterVersionOutput { + s.OutputConfig = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetAdapterVersionOutput) SetStatus(v string) *GetAdapterVersionOutput { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *GetAdapterVersionOutput) SetStatusMessage(v string) *GetAdapterVersionOutput { + s.StatusMessage = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetAdapterVersionOutput) SetTags(v map[string]*string) *GetAdapterVersionOutput { + s.Tags = v + return s +} + type GetDocumentAnalysisInput struct { _ struct{} `type:"structure"` @@ -5513,6 +8319,335 @@ return s } +type ListAdapterVersionsInput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter to match for when listing + // adapter versions. + AdapterId *string `min:"12" type:"string"` + + // Specifies the lower bound for the ListAdapterVersions operation. Ensures + // ListAdapterVersions returns only adapter versions created after the specified + // creation time. + AfterCreationTime *time.Time `type:"timestamp"` + + // Specifies the upper bound for the ListAdapterVersions operation. Ensures + // ListAdapterVersions returns only adapter versions created after the specified + // creation time. + BeforeCreationTime *time.Time `type:"timestamp"` + + // The maximum number of results to return when listing adapter versions. + MaxResults *int64 `min:"1" type:"integer"` + + // Identifies the next page of results to return when listing adapter versions. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdapterVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdapterVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAdapterVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAdapterVersionsInput"} + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *ListAdapterVersionsInput) SetAdapterId(v string) *ListAdapterVersionsInput { + s.AdapterId = &v + return s +} + +// SetAfterCreationTime sets the AfterCreationTime field's value. +func (s *ListAdapterVersionsInput) SetAfterCreationTime(v time.Time) *ListAdapterVersionsInput { + s.AfterCreationTime = &v + return s +} + +// SetBeforeCreationTime sets the BeforeCreationTime field's value. +func (s *ListAdapterVersionsInput) SetBeforeCreationTime(v time.Time) *ListAdapterVersionsInput { + s.BeforeCreationTime = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAdapterVersionsInput) SetMaxResults(v int64) *ListAdapterVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAdapterVersionsInput) SetNextToken(v string) *ListAdapterVersionsInput { + s.NextToken = &v + return s +} + +type ListAdapterVersionsOutput struct { + _ struct{} `type:"structure"` + + // Adapter versions that match the filtering criteria specified when calling + // ListAdapters. + AdapterVersions []*AdapterVersionOverview `type:"list"` + + // Identifies the next page of results to return when listing adapter versions. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdapterVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdapterVersionsOutput) GoString() string { + return s.String() +} + +// SetAdapterVersions sets the AdapterVersions field's value. +func (s *ListAdapterVersionsOutput) SetAdapterVersions(v []*AdapterVersionOverview) *ListAdapterVersionsOutput { + s.AdapterVersions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAdapterVersionsOutput) SetNextToken(v string) *ListAdapterVersionsOutput { + s.NextToken = &v + return s +} + +type ListAdaptersInput struct { + _ struct{} `type:"structure"` + + // Specifies the lower bound for the ListAdapters operation. Ensures ListAdapters + // returns only adapters created after the specified creation time. + AfterCreationTime *time.Time `type:"timestamp"` + + // Specifies the upper bound for the ListAdapters operation. Ensures ListAdapters + // returns only adapters created before the specified creation time. + BeforeCreationTime *time.Time `type:"timestamp"` + + // The maximum number of results to return when listing adapters. + MaxResults *int64 `min:"1" type:"integer"` + + // Identifies the next page of results to return when listing adapters. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdaptersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdaptersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAdaptersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAdaptersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterCreationTime sets the AfterCreationTime field's value. +func (s *ListAdaptersInput) SetAfterCreationTime(v time.Time) *ListAdaptersInput { + s.AfterCreationTime = &v + return s +} + +// SetBeforeCreationTime sets the BeforeCreationTime field's value. +func (s *ListAdaptersInput) SetBeforeCreationTime(v time.Time) *ListAdaptersInput { + s.BeforeCreationTime = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAdaptersInput) SetMaxResults(v int64) *ListAdaptersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAdaptersInput) SetNextToken(v string) *ListAdaptersInput { + s.NextToken = &v + return s +} + +type ListAdaptersOutput struct { + _ struct{} `type:"structure"` + + // A list of adapters that matches the filtering criteria specified when calling + // ListAdapters. + Adapters []*AdapterOverview `type:"list"` + + // Identifies the next page of results to return when listing adapters. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdaptersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListAdaptersOutput) GoString() string { + return s.String() +} + +// SetAdapters sets the Adapters field's value. +func (s *ListAdaptersOutput) SetAdapters(v []*AdapterOverview) *ListAdaptersOutput { + s.Adapters = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAdaptersOutput) SetNextToken(v string) *ListAdaptersOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that specifies the resource to list tags for. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A set of tags (key-value pairs) that are part of the requested resource. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + // Contains information relating to dates in a document, including the type // of value, and the value. type NormalizedValue struct { @@ -6128,6 +9263,70 @@ return s } +// Returned when an operation tried to access a nonexistent resource. +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + // The S3 bucket name and file name that identifies the document. // // The AWS Region for the S3 bucket that contains the document must match the @@ -6206,6 +9405,71 @@ return s } +// Returned when a request cannot be completed as it would exceed a maximum +// service quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + // Information regarding a detected signature on a page. type SignatureDetection struct { _ struct{} `type:"structure"` @@ -6293,6 +9557,9 @@ type StartDocumentAnalysisInput struct { _ struct{} `type:"structure"` + // Specifies the adapter to be used when analyzing a document. + AdaptersConfig *AdaptersConfig `type:"structure"` + // The idempotent token that you use to identify the start request. If you use // the same token with multiple StartDocumentAnalysis requests, the same JobId // is returned. Use ClientRequestToken to prevent the same job from being accidentally @@ -6376,6 +9643,11 @@ if s.KMSKeyId != nil && len(*s.KMSKeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KMSKeyId", 1)) } + if s.AdaptersConfig != nil { + if err := s.AdaptersConfig.Validate(); err != nil { + invalidParams.AddNested("AdaptersConfig", err.(request.ErrInvalidParams)) + } + } if s.DocumentLocation != nil { if err := s.DocumentLocation.Validate(); err != nil { invalidParams.AddNested("DocumentLocation", err.(request.ErrInvalidParams)) @@ -6403,6 +9675,12 @@ return nil } +// SetAdaptersConfig sets the AdaptersConfig field's value. +func (s *StartDocumentAnalysisInput) SetAdaptersConfig(v *AdaptersConfig) *StartDocumentAnalysisInput { + s.AdaptersConfig = v + return s +} + // SetClientRequestToken sets the ClientRequestToken field's value. func (s *StartDocumentAnalysisInput) SetClientRequestToken(v string) *StartDocumentAnalysisInput { s.ClientRequestToken = &v @@ -6989,6 +10267,91 @@ return s } +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that specifies the resource to be tagged. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // A set of tags (key-value pairs) that you want to assign to the resource. + // + // Tags is a required field + Tags map[string]*string `type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + // Amazon Textract is temporarily unable to process the request. Try your call // again. type ThrottlingException struct { @@ -7152,6 +10515,313 @@ return s.RespMetadata.RequestID } +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that specifies the resource to be untagged. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // Specifies the tags to be removed from the resource specified by the ResourceARN. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateAdapterInput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter that will be updated. + // + // AdapterId is a required field + AdapterId *string `min:"12" type:"string" required:"true"` + + // The new name to be applied to the adapter. + AdapterName *string `min:"1" type:"string"` + + // The new auto-update status to be applied to the adapter. + AutoUpdate *string `type:"string" enum:"AutoUpdate"` + + // The new description to be applied to the adapter. + Description *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAdapterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAdapterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAdapterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAdapterInput"} + if s.AdapterId == nil { + invalidParams.Add(request.NewErrParamRequired("AdapterId")) + } + if s.AdapterId != nil && len(*s.AdapterId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AdapterId", 12)) + } + if s.AdapterName != nil && len(*s.AdapterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AdapterName", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdapterId sets the AdapterId field's value. +func (s *UpdateAdapterInput) SetAdapterId(v string) *UpdateAdapterInput { + s.AdapterId = &v + return s +} + +// SetAdapterName sets the AdapterName field's value. +func (s *UpdateAdapterInput) SetAdapterName(v string) *UpdateAdapterInput { + s.AdapterName = &v + return s +} + +// SetAutoUpdate sets the AutoUpdate field's value. +func (s *UpdateAdapterInput) SetAutoUpdate(v string) *UpdateAdapterInput { + s.AutoUpdate = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateAdapterInput) SetDescription(v string) *UpdateAdapterInput { + s.Description = &v + return s +} + +type UpdateAdapterOutput struct { + _ struct{} `type:"structure"` + + // A string containing a unique ID for the adapter that has been updated. + AdapterId *string `min:"12" type:"string"` + + // A string containing the name of the adapter that has been updated. + AdapterName *string `min:"1" type:"string"` + + // The auto-update status of the adapter that has been updated. + AutoUpdate *string `type:"string" enum:"AutoUpdate"` + + // An object specifying the creation time of the the adapter that has been updated. + CreationTime *time.Time `type:"timestamp"` + + // A string containing the description of the adapter that has been updated. + Description *string `min:"1" type:"string"` + + // List of the targeted feature types for the updated adapter. + FeatureTypes []*string `type:"list" enum:"FeatureType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAdapterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateAdapterOutput) GoString() string { + return s.String() +} + +// SetAdapterId sets the AdapterId field's value. +func (s *UpdateAdapterOutput) SetAdapterId(v string) *UpdateAdapterOutput { + s.AdapterId = &v + return s +} + +// SetAdapterName sets the AdapterName field's value. +func (s *UpdateAdapterOutput) SetAdapterName(v string) *UpdateAdapterOutput { + s.AdapterName = &v + return s +} + +// SetAutoUpdate sets the AutoUpdate field's value. +func (s *UpdateAdapterOutput) SetAutoUpdate(v string) *UpdateAdapterOutput { + s.AutoUpdate = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *UpdateAdapterOutput) SetCreationTime(v time.Time) *UpdateAdapterOutput { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateAdapterOutput) SetDescription(v string) *UpdateAdapterOutput { + s.Description = &v + return s +} + +// SetFeatureTypes sets the FeatureTypes field's value. +func (s *UpdateAdapterOutput) SetFeatureTypes(v []*string) *UpdateAdapterOutput { + s.FeatureTypes = v + return s +} + +// Indicates that a request was not valid. Check request for proper formatting. +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 +} + // A warning about an issue that occurred during asynchronous text analysis // (StartDocumentAnalysis) or asynchronous document text detection (StartDocumentTextDetection). type Warning struct { @@ -7195,6 +10865,50 @@ } const ( + // AdapterVersionStatusActive is a AdapterVersionStatus enum value + AdapterVersionStatusActive = "ACTIVE" + + // AdapterVersionStatusAtRisk is a AdapterVersionStatus enum value + AdapterVersionStatusAtRisk = "AT_RISK" + + // AdapterVersionStatusDeprecated is a AdapterVersionStatus enum value + AdapterVersionStatusDeprecated = "DEPRECATED" + + // AdapterVersionStatusCreationError is a AdapterVersionStatus enum value + AdapterVersionStatusCreationError = "CREATION_ERROR" + + // AdapterVersionStatusCreationInProgress is a AdapterVersionStatus enum value + AdapterVersionStatusCreationInProgress = "CREATION_IN_PROGRESS" +) + +// AdapterVersionStatus_Values returns all elements of the AdapterVersionStatus enum +func AdapterVersionStatus_Values() []string { + return []string{ + AdapterVersionStatusActive, + AdapterVersionStatusAtRisk, + AdapterVersionStatusDeprecated, + AdapterVersionStatusCreationError, + AdapterVersionStatusCreationInProgress, + } +} + +const ( + // AutoUpdateEnabled is a AutoUpdate enum value + AutoUpdateEnabled = "ENABLED" + + // AutoUpdateDisabled is a AutoUpdate enum value + AutoUpdateDisabled = "DISABLED" +) + +// AutoUpdate_Values returns all elements of the AutoUpdate enum +func AutoUpdate_Values() []string { + return []string{ + AutoUpdateEnabled, + AutoUpdateDisabled, + } +} + +const ( // BlockTypeKeyValueSet is a BlockType enum value BlockTypeKeyValueSet = "KEY_VALUE_SET" @@ -7236,6 +10950,36 @@ // BlockTypeTableFooter is a BlockType enum value BlockTypeTableFooter = "TABLE_FOOTER" + + // BlockTypeLayoutText is a BlockType enum value + BlockTypeLayoutText = "LAYOUT_TEXT" + + // BlockTypeLayoutTitle is a BlockType enum value + BlockTypeLayoutTitle = "LAYOUT_TITLE" + + // BlockTypeLayoutHeader is a BlockType enum value + BlockTypeLayoutHeader = "LAYOUT_HEADER" + + // BlockTypeLayoutFooter is a BlockType enum value + BlockTypeLayoutFooter = "LAYOUT_FOOTER" + + // BlockTypeLayoutSectionHeader is a BlockType enum value + BlockTypeLayoutSectionHeader = "LAYOUT_SECTION_HEADER" + + // BlockTypeLayoutPageNumber is a BlockType enum value + BlockTypeLayoutPageNumber = "LAYOUT_PAGE_NUMBER" + + // BlockTypeLayoutList is a BlockType enum value + BlockTypeLayoutList = "LAYOUT_LIST" + + // BlockTypeLayoutFigure is a BlockType enum value + BlockTypeLayoutFigure = "LAYOUT_FIGURE" + + // BlockTypeLayoutTable is a BlockType enum value + BlockTypeLayoutTable = "LAYOUT_TABLE" + + // BlockTypeLayoutKeyValue is a BlockType enum value + BlockTypeLayoutKeyValue = "LAYOUT_KEY_VALUE" ) // BlockType_Values returns all elements of the BlockType enum @@ -7255,6 +10999,16 @@ BlockTypeSignature, BlockTypeTableTitle, BlockTypeTableFooter, + BlockTypeLayoutText, + BlockTypeLayoutTitle, + BlockTypeLayoutHeader, + BlockTypeLayoutFooter, + BlockTypeLayoutSectionHeader, + BlockTypeLayoutPageNumber, + BlockTypeLayoutList, + BlockTypeLayoutFigure, + BlockTypeLayoutTable, + BlockTypeLayoutKeyValue, } } @@ -7330,6 +11084,9 @@ // FeatureTypeSignatures is a FeatureType enum value FeatureTypeSignatures = "SIGNATURES" + + // FeatureTypeLayout is a FeatureType enum value + FeatureTypeLayout = "LAYOUT" ) // FeatureType_Values returns all elements of the FeatureType enum @@ -7339,6 +11096,7 @@ FeatureTypeForms, FeatureTypeQueries, FeatureTypeSignatures, + FeatureTypeLayout, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/textract/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/textract/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/textract/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/textract/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -22,6 +22,12 @@ // the document limits in Amazon Textract, see limits. ErrCodeBadDocumentException = "BadDocumentException" + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Updating or deleting a resource can cause an inconsistent state. + ErrCodeConflictException = "ConflictException" + // ErrCodeDocumentTooLargeException for service response error code // "DocumentTooLargeException". // @@ -98,6 +104,19 @@ // this limit, contact Amazon Textract. ErrCodeProvisionedThroughputExceededException = "ProvisionedThroughputExceededException" + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Returned when an operation tried to access a nonexistent resource. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Returned when a request cannot be completed as it would exceed a maximum + // service quota. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + // ErrCodeThrottlingException for service response error code // "ThrottlingException". // @@ -111,11 +130,18 @@ // The format of the input document isn't supported. Documents for operations // can be in PNG, JPEG, PDF, or TIFF format. ErrCodeUnsupportedDocumentException = "UnsupportedDocumentException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Indicates that a request was not valid. Check request for proper formatting. + ErrCodeValidationException = "ValidationException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessDeniedException": newErrorAccessDeniedException, "BadDocumentException": newErrorBadDocumentException, + "ConflictException": newErrorConflictException, "DocumentTooLargeException": newErrorDocumentTooLargeException, "HumanLoopQuotaExceededException": newErrorHumanLoopQuotaExceededException, "IdempotentParameterMismatchException": newErrorIdempotentParameterMismatchException, @@ -126,6 +152,9 @@ "InvalidS3ObjectException": newErrorInvalidS3ObjectException, "LimitExceededException": newErrorLimitExceededException, "ProvisionedThroughputExceededException": newErrorProvisionedThroughputExceededException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, "ThrottlingException": newErrorThrottlingException, "UnsupportedDocumentException": newErrorUnsupportedDocumentException, + "ValidationException": newErrorValidationException, } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/textract/textractiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/textract/textractiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/textract/textractiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/textract/textractiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,10 +72,34 @@ AnalyzeIDWithContext(aws.Context, *textract.AnalyzeIDInput, ...request.Option) (*textract.AnalyzeIDOutput, error) AnalyzeIDRequest(*textract.AnalyzeIDInput) (*request.Request, *textract.AnalyzeIDOutput) + CreateAdapter(*textract.CreateAdapterInput) (*textract.CreateAdapterOutput, error) + CreateAdapterWithContext(aws.Context, *textract.CreateAdapterInput, ...request.Option) (*textract.CreateAdapterOutput, error) + CreateAdapterRequest(*textract.CreateAdapterInput) (*request.Request, *textract.CreateAdapterOutput) + + CreateAdapterVersion(*textract.CreateAdapterVersionInput) (*textract.CreateAdapterVersionOutput, error) + CreateAdapterVersionWithContext(aws.Context, *textract.CreateAdapterVersionInput, ...request.Option) (*textract.CreateAdapterVersionOutput, error) + CreateAdapterVersionRequest(*textract.CreateAdapterVersionInput) (*request.Request, *textract.CreateAdapterVersionOutput) + + DeleteAdapter(*textract.DeleteAdapterInput) (*textract.DeleteAdapterOutput, error) + DeleteAdapterWithContext(aws.Context, *textract.DeleteAdapterInput, ...request.Option) (*textract.DeleteAdapterOutput, error) + DeleteAdapterRequest(*textract.DeleteAdapterInput) (*request.Request, *textract.DeleteAdapterOutput) + + DeleteAdapterVersion(*textract.DeleteAdapterVersionInput) (*textract.DeleteAdapterVersionOutput, error) + DeleteAdapterVersionWithContext(aws.Context, *textract.DeleteAdapterVersionInput, ...request.Option) (*textract.DeleteAdapterVersionOutput, error) + DeleteAdapterVersionRequest(*textract.DeleteAdapterVersionInput) (*request.Request, *textract.DeleteAdapterVersionOutput) + DetectDocumentText(*textract.DetectDocumentTextInput) (*textract.DetectDocumentTextOutput, error) DetectDocumentTextWithContext(aws.Context, *textract.DetectDocumentTextInput, ...request.Option) (*textract.DetectDocumentTextOutput, error) DetectDocumentTextRequest(*textract.DetectDocumentTextInput) (*request.Request, *textract.DetectDocumentTextOutput) + GetAdapter(*textract.GetAdapterInput) (*textract.GetAdapterOutput, error) + GetAdapterWithContext(aws.Context, *textract.GetAdapterInput, ...request.Option) (*textract.GetAdapterOutput, error) + GetAdapterRequest(*textract.GetAdapterInput) (*request.Request, *textract.GetAdapterOutput) + + GetAdapterVersion(*textract.GetAdapterVersionInput) (*textract.GetAdapterVersionOutput, error) + GetAdapterVersionWithContext(aws.Context, *textract.GetAdapterVersionInput, ...request.Option) (*textract.GetAdapterVersionOutput, error) + GetAdapterVersionRequest(*textract.GetAdapterVersionInput) (*request.Request, *textract.GetAdapterVersionOutput) + GetDocumentAnalysis(*textract.GetDocumentAnalysisInput) (*textract.GetDocumentAnalysisOutput, error) GetDocumentAnalysisWithContext(aws.Context, *textract.GetDocumentAnalysisInput, ...request.Option) (*textract.GetDocumentAnalysisOutput, error) GetDocumentAnalysisRequest(*textract.GetDocumentAnalysisInput) (*request.Request, *textract.GetDocumentAnalysisOutput) @@ -96,6 +120,24 @@ GetLendingAnalysisSummaryWithContext(aws.Context, *textract.GetLendingAnalysisSummaryInput, ...request.Option) (*textract.GetLendingAnalysisSummaryOutput, error) GetLendingAnalysisSummaryRequest(*textract.GetLendingAnalysisSummaryInput) (*request.Request, *textract.GetLendingAnalysisSummaryOutput) + ListAdapterVersions(*textract.ListAdapterVersionsInput) (*textract.ListAdapterVersionsOutput, error) + ListAdapterVersionsWithContext(aws.Context, *textract.ListAdapterVersionsInput, ...request.Option) (*textract.ListAdapterVersionsOutput, error) + ListAdapterVersionsRequest(*textract.ListAdapterVersionsInput) (*request.Request, *textract.ListAdapterVersionsOutput) + + ListAdapterVersionsPages(*textract.ListAdapterVersionsInput, func(*textract.ListAdapterVersionsOutput, bool) bool) error + ListAdapterVersionsPagesWithContext(aws.Context, *textract.ListAdapterVersionsInput, func(*textract.ListAdapterVersionsOutput, bool) bool, ...request.Option) error + + ListAdapters(*textract.ListAdaptersInput) (*textract.ListAdaptersOutput, error) + ListAdaptersWithContext(aws.Context, *textract.ListAdaptersInput, ...request.Option) (*textract.ListAdaptersOutput, error) + ListAdaptersRequest(*textract.ListAdaptersInput) (*request.Request, *textract.ListAdaptersOutput) + + ListAdaptersPages(*textract.ListAdaptersInput, func(*textract.ListAdaptersOutput, bool) bool) error + ListAdaptersPagesWithContext(aws.Context, *textract.ListAdaptersInput, func(*textract.ListAdaptersOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*textract.ListTagsForResourceInput) (*textract.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *textract.ListTagsForResourceInput, ...request.Option) (*textract.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*textract.ListTagsForResourceInput) (*request.Request, *textract.ListTagsForResourceOutput) + StartDocumentAnalysis(*textract.StartDocumentAnalysisInput) (*textract.StartDocumentAnalysisOutput, error) StartDocumentAnalysisWithContext(aws.Context, *textract.StartDocumentAnalysisInput, ...request.Option) (*textract.StartDocumentAnalysisOutput, error) StartDocumentAnalysisRequest(*textract.StartDocumentAnalysisInput) (*request.Request, *textract.StartDocumentAnalysisOutput) @@ -111,6 +153,18 @@ StartLendingAnalysis(*textract.StartLendingAnalysisInput) (*textract.StartLendingAnalysisOutput, error) StartLendingAnalysisWithContext(aws.Context, *textract.StartLendingAnalysisInput, ...request.Option) (*textract.StartLendingAnalysisOutput, error) StartLendingAnalysisRequest(*textract.StartLendingAnalysisInput) (*request.Request, *textract.StartLendingAnalysisOutput) + + TagResource(*textract.TagResourceInput) (*textract.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *textract.TagResourceInput, ...request.Option) (*textract.TagResourceOutput, error) + TagResourceRequest(*textract.TagResourceInput) (*request.Request, *textract.TagResourceOutput) + + UntagResource(*textract.UntagResourceInput) (*textract.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *textract.UntagResourceInput, ...request.Option) (*textract.UntagResourceOutput, error) + UntagResourceRequest(*textract.UntagResourceInput) (*request.Request, *textract.UntagResourceOutput) + + UpdateAdapter(*textract.UpdateAdapterInput) (*textract.UpdateAdapterOutput, error) + UpdateAdapterWithContext(aws.Context, *textract.UpdateAdapterInput, ...request.Option) (*textract.UpdateAdapterOutput, error) + UpdateAdapterRequest(*textract.UpdateAdapterInput) (*request.Request, *textract.UpdateAdapterOutput) } var _ TextractAPI = (*textract.Textract)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/transcribeservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/transcribeservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/transcribeservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/transcribeservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -835,6 +835,99 @@ return out, req.Send() } +const opDeleteMedicalScribeJob = "DeleteMedicalScribeJob" + +// DeleteMedicalScribeJobRequest generates a "aws/request.Request" representing the +// client's request for the DeleteMedicalScribeJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteMedicalScribeJob for more information on using the DeleteMedicalScribeJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteMedicalScribeJobRequest method. +// req, resp := client.DeleteMedicalScribeJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalScribeJob +func (c *TranscribeService) DeleteMedicalScribeJobRequest(input *DeleteMedicalScribeJobInput) (req *request.Request, output *DeleteMedicalScribeJobOutput) { + op := &request.Operation{ + Name: opDeleteMedicalScribeJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteMedicalScribeJobInput{} + } + + output = &DeleteMedicalScribeJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteMedicalScribeJob API operation for Amazon Transcribe Service. +// +// Deletes a Medical Scribe job. To use this operation, specify the name of +// the job you want to delete using MedicalScribeJobName. Job names are case +// sensitive. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Transcribe Service's +// API operation DeleteMedicalScribeJob for usage and error information. +// +// Returned Error Types: +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalScribeJob +func (c *TranscribeService) DeleteMedicalScribeJob(input *DeleteMedicalScribeJobInput) (*DeleteMedicalScribeJobOutput, error) { + req, out := c.DeleteMedicalScribeJobRequest(input) + return out, req.Send() +} + +// DeleteMedicalScribeJobWithContext is the same as DeleteMedicalScribeJob with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteMedicalScribeJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TranscribeService) DeleteMedicalScribeJobWithContext(ctx aws.Context, input *DeleteMedicalScribeJobInput, opts ...request.Option) (*DeleteMedicalScribeJobOutput, error) { + req, out := c.DeleteMedicalScribeJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMedicalTranscriptionJob = "DeleteMedicalTranscriptionJob" // DeleteMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the @@ -1617,6 +1710,108 @@ return out, req.Send() } +const opGetMedicalScribeJob = "GetMedicalScribeJob" + +// GetMedicalScribeJobRequest generates a "aws/request.Request" representing the +// client's request for the GetMedicalScribeJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetMedicalScribeJob for more information on using the GetMedicalScribeJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetMedicalScribeJobRequest method. +// req, resp := client.GetMedicalScribeJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalScribeJob +func (c *TranscribeService) GetMedicalScribeJobRequest(input *GetMedicalScribeJobInput) (req *request.Request, output *GetMedicalScribeJobOutput) { + op := &request.Operation{ + Name: opGetMedicalScribeJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetMedicalScribeJobInput{} + } + + output = &GetMedicalScribeJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetMedicalScribeJob API operation for Amazon Transcribe Service. +// +// Provides information about the specified Medical Scribe job. +// +// To view the status of the specified medical transcription job, check the +// MedicalScribeJobStatus field. If the status is COMPLETED, the job is finished. +// You can find the results at the location specified in MedicalScribeOutput. +// If the status is FAILED, FailureReason provides details on why your Medical +// Scribe job failed. +// +// To get a list of your Medical Scribe jobs, use the operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Transcribe Service's +// API operation GetMedicalScribeJob for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// - NotFoundException +// We can't find the requested resource. Check that the specified name is correct +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalScribeJob +func (c *TranscribeService) GetMedicalScribeJob(input *GetMedicalScribeJobInput) (*GetMedicalScribeJobOutput, error) { + req, out := c.GetMedicalScribeJobRequest(input) + return out, req.Send() +} + +// GetMedicalScribeJobWithContext is the same as GetMedicalScribeJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetMedicalScribeJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TranscribeService) GetMedicalScribeJobWithContext(ctx aws.Context, input *GetMedicalScribeJobInput, opts ...request.Option) (*GetMedicalScribeJobOutput, error) { + req, out := c.GetMedicalScribeJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMedicalTranscriptionJob = "GetMedicalTranscriptionJob" // GetMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the @@ -2574,6 +2769,157 @@ return p.Err() } +const opListMedicalScribeJobs = "ListMedicalScribeJobs" + +// ListMedicalScribeJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListMedicalScribeJobs operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListMedicalScribeJobs for more information on using the ListMedicalScribeJobs +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListMedicalScribeJobsRequest method. +// req, resp := client.ListMedicalScribeJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalScribeJobs +func (c *TranscribeService) ListMedicalScribeJobsRequest(input *ListMedicalScribeJobsInput) (req *request.Request, output *ListMedicalScribeJobsOutput) { + op := &request.Operation{ + Name: opListMedicalScribeJobs, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMedicalScribeJobsInput{} + } + + output = &ListMedicalScribeJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMedicalScribeJobs API operation for Amazon Transcribe Service. +// +// Provides a list of Medical Scribe jobs that match the specified criteria. +// If no criteria are specified, all Medical Scribe jobs are returned. +// +// To get detailed information about a specific Medical Scribe job, use the +// operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Transcribe Service's +// API operation ListMedicalScribeJobs for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalScribeJobs +func (c *TranscribeService) ListMedicalScribeJobs(input *ListMedicalScribeJobsInput) (*ListMedicalScribeJobsOutput, error) { + req, out := c.ListMedicalScribeJobsRequest(input) + return out, req.Send() +} + +// ListMedicalScribeJobsWithContext is the same as ListMedicalScribeJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListMedicalScribeJobs for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TranscribeService) ListMedicalScribeJobsWithContext(ctx aws.Context, input *ListMedicalScribeJobsInput, opts ...request.Option) (*ListMedicalScribeJobsOutput, error) { + req, out := c.ListMedicalScribeJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMedicalScribeJobsPages iterates over the pages of a ListMedicalScribeJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMedicalScribeJobs method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListMedicalScribeJobs operation. +// pageNum := 0 +// err := client.ListMedicalScribeJobsPages(params, +// func(page *transcribeservice.ListMedicalScribeJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TranscribeService) ListMedicalScribeJobsPages(input *ListMedicalScribeJobsInput, fn func(*ListMedicalScribeJobsOutput, bool) bool) error { + return c.ListMedicalScribeJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMedicalScribeJobsPagesWithContext same as ListMedicalScribeJobsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TranscribeService) ListMedicalScribeJobsPagesWithContext(ctx aws.Context, input *ListMedicalScribeJobsInput, fn func(*ListMedicalScribeJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMedicalScribeJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMedicalScribeJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMedicalScribeJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMedicalTranscriptionJobs = "ListMedicalTranscriptionJobs" // ListMedicalTranscriptionJobsRequest generates a "aws/request.Request" representing the @@ -3562,6 +3908,135 @@ return out, req.Send() } +const opStartMedicalScribeJob = "StartMedicalScribeJob" + +// StartMedicalScribeJobRequest generates a "aws/request.Request" representing the +// client's request for the StartMedicalScribeJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartMedicalScribeJob for more information on using the StartMedicalScribeJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartMedicalScribeJobRequest method. +// req, resp := client.StartMedicalScribeJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartMedicalScribeJob +func (c *TranscribeService) StartMedicalScribeJobRequest(input *StartMedicalScribeJobInput) (req *request.Request, output *StartMedicalScribeJobOutput) { + op := &request.Operation{ + Name: opStartMedicalScribeJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartMedicalScribeJobInput{} + } + + output = &StartMedicalScribeJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartMedicalScribeJob API operation for Amazon Transcribe Service. +// +// Transcribes patient-clinician conversations and generates clinical notes. +// +// Amazon Web Services HealthScribe automatically provides rich conversation +// transcripts, identifies speaker roles, classifies dialogues, extracts medical +// terms, and generates preliminary clinical notes. To learn more about these +// features, refer to Amazon Web Services HealthScribe (https://docs.aws.amazon.com/transcribe/latest/dg/health-scribe.html). +// +// To make a StartMedicalScribeJob request, you must first upload your media +// file into an Amazon S3 bucket; you can then specify the Amazon S3 location +// of the file using the Media parameter. +// +// You must include the following parameters in your StartMedicalTranscriptionJob +// request: +// +// - DataAccessRoleArn: The ARN of an IAM role with the these minimum permissions: +// read permission on input file Amazon S3 bucket specified in Media, write +// permission on the Amazon S3 bucket specified in OutputBucketName, and +// full permissions on the KMS key specified in OutputEncryptionKMSKeyId +// (if set). The role should also allow transcribe.amazonaws.com to assume +// it. +// +// - Media (MediaFileUri): The Amazon S3 location of your media file. +// +// - MedicalScribeJobName: A custom name you create for your MedicalScribe +// job that is unique within your Amazon Web Services account. +// +// - OutputBucketName: The Amazon S3 bucket where you want your output files +// stored. +// +// - Settings: A MedicalScribeSettings obect that must set exactly one of +// ShowSpeakerLabels or ChannelIdentification to true. If ShowSpeakerLabels +// is true, MaxSpeakerLabels must also be set. +// +// - ChannelDefinitions: A MedicalScribeChannelDefinitions array should be +// set if and only if the ChannelIdentification value of Settings is set +// to true. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Transcribe Service's +// API operation StartMedicalScribeJob for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// - ConflictException +// A resource already exists with this name. Resource names must be unique within +// an Amazon Web Services account. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartMedicalScribeJob +func (c *TranscribeService) StartMedicalScribeJob(input *StartMedicalScribeJobInput) (*StartMedicalScribeJobOutput, error) { + req, out := c.StartMedicalScribeJobRequest(input) + return out, req.Send() +} + +// StartMedicalScribeJobWithContext is the same as StartMedicalScribeJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartMedicalScribeJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TranscribeService) StartMedicalScribeJobWithContext(ctx aws.Context, input *StartMedicalScribeJobInput, opts ...request.Option) (*StartMedicalScribeJobOutput, error) { + req, out := c.StartMedicalScribeJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartMedicalTranscriptionJob = "StartMedicalTranscriptionJob" // StartMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the @@ -3614,7 +4089,7 @@ // these features, refer to How Amazon Transcribe Medical works (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works-med.html). // // To make a StartMedicalTranscriptionJob request, you must first upload your -// media file into an Amazon S3 bucket; you can then specify the S3 location +// media file into an Amazon S3 bucket; you can then specify the Amazon S3 location // of the file using the Media parameter. // // You must include the following parameters in your StartMedicalTranscriptionJob @@ -3753,7 +4228,7 @@ // If you know the language of your media file, specify it using the LanguageCode // parameter; you can find all valid language codes in the Supported languages // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) -// table. If you don't know the languages spoken in your media, use either +// table. If you do not know the languages spoken in your media, use either // IdentifyLanguage or IdentifyMultipleLanguages and let Amazon Transcribe // identify the languages for you. // @@ -4612,7 +5087,8 @@ // The FailureReason field contains one of the following values: // // * Unsupported media format. The media format specified in MediaFormat - // isn't valid. Refer to MediaFormat for a list of supported formats. + // isn't valid. Refer to refer to the MediaFormat parameter for a list of + // supported formats. // // * The media format provided does not match the detected media format. // The media format specified in MediaFormat doesn't match the format of @@ -4629,11 +5105,11 @@ // // * Invalid file size: file size too large. The size of your media file // is larger than what Amazon Transcribe can process. For more information, - // refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). // // * Invalid number of channels: number of channels too large. Your audio // contains more channels than Amazon Transcribe is able to process. For - // more information, refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // more information, refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). FailureReason *string `type:"string"` // The confidence score associated with the language identified in your media @@ -4649,7 +5125,7 @@ // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) // table. // - // If you don't know the language spoken in your media file, you can omit this + // If you do not know the language spoken in your media file, you can omit this // field and let Amazon Transcribe automatically identify the language of your // media. To improve the accuracy of language identification, you can include // several language codes and Amazon Transcribe chooses the closest match for @@ -4798,7 +5274,8 @@ // Makes it possible to redact or flag specified personally identifiable information // (PII) in your transcript. If you use ContentRedaction, you must also include - // the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType. + // the sub-parameters: RedactionOutput and RedactionType. You can optionally + // include PiiEntityTypes to choose which types of PII you want to redact. ContentRedaction *ContentRedaction `type:"structure"` // If using automatic language identification in your request and you want to @@ -4833,9 +5310,9 @@ // Call Analytics job. Note that custom language model names are case sensitive. // // The language of the specified custom language model must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom language model isn't applied. There are no errors or warnings - // associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom language model isn't applied. There are no errors or + // warnings associated with a language mismatch. LanguageModelName *string `min:"1" type:"string"` // You can specify two or more language codes that represent the languages you @@ -4852,6 +5329,10 @@ // be encoded at a sample rate of 16,000 Hz or higher. LanguageOptions []*string `min:"1" type:"list" enum:"LanguageCode"` + // Contains GenerateAbstractiveSummary, which is a required parameter if you + // want to enable Generative call summarization in your Call Analytics request. + Summarization *Summarization `type:"structure"` + // Specify how you want your custom vocabulary filter applied to your transcript. // // To replace words with ***, choose mask. @@ -4925,6 +5406,11 @@ } } } + if s.Summarization != nil { + if err := s.Summarization.Validate(); err != nil { + invalidParams.AddNested("Summarization", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -4956,6 +5442,12 @@ return s } +// SetSummarization sets the Summarization field's value. +func (s *CallAnalyticsJobSettings) SetSummarization(v *Summarization) *CallAnalyticsJobSettings { + s.Summarization = v + return s +} + // SetVocabularyFilterMethod sets the VocabularyFilterMethod field's value. func (s *CallAnalyticsJobSettings) SetVocabularyFilterMethod(v string) *CallAnalyticsJobSettings { s.VocabularyFilterMethod = &v @@ -5271,13 +5763,15 @@ // Makes it possible to redact or flag specified personally identifiable information // (PII) in your transcript. If you use ContentRedaction, you must also include -// the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType. +// the sub-parameters: RedactionOutput and RedactionType. You can optionally +// include PiiEntityTypes to choose which types of PII you want to redact. type ContentRedaction struct { _ struct{} `type:"structure"` // Specify which types of personally identifiable information (PII) you want // to redact in your transcript. You can include as many types as you'd like, - // or you can select ALL. + // or you can select ALL. If you do not include PiiEntityTypes in your request, + // all PII is redacted. PiiEntityTypes []*string `type:"list" enum:"PiiEntityType"` // Specify if you want only a redacted transcript, or if you want a redacted @@ -5293,7 +5787,8 @@ // Specify the category of information you want to redact; PII (personally identifiable // information) is the only valid value. You can use PiiEntityTypes to choose - // which types of PII you want to redact. + // which types of PII you want to redact. If you do not include PiiEntityTypes + // in your request, all PII is redacted. // // RedactionType is a required field RedactionType *string `type:"string" required:"true" enum:"RedactionType"` @@ -6574,6 +7069,78 @@ return s.String() } +type DeleteMedicalScribeJobInput struct { + _ struct{} `type:"structure"` + + // The name of the Medical Scribe job you want to delete. Job names are case + // sensitive. + // + // MedicalScribeJobName is a required field + MedicalScribeJobName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMedicalScribeJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMedicalScribeJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteMedicalScribeJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMedicalScribeJobInput"} + if s.MedicalScribeJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalScribeJobName")) + } + if s.MedicalScribeJobName != nil && len(*s.MedicalScribeJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalScribeJobName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *DeleteMedicalScribeJobInput) SetMedicalScribeJobName(v string) *DeleteMedicalScribeJobInput { + s.MedicalScribeJobName = &v + return s +} + +type DeleteMedicalScribeJobOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMedicalScribeJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMedicalScribeJobOutput) GoString() string { + return s.String() +} + type DeleteMedicalTranscriptionJobInput struct { _ struct{} `type:"structure"` @@ -7188,6 +7755,88 @@ return s } +type GetMedicalScribeJobInput struct { + _ struct{} `type:"structure"` + + // The name of the Medical Scribe job you want information about. Job names + // are case sensitive. + // + // MedicalScribeJobName is a required field + MedicalScribeJobName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMedicalScribeJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMedicalScribeJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMedicalScribeJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMedicalScribeJobInput"} + if s.MedicalScribeJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalScribeJobName")) + } + if s.MedicalScribeJobName != nil && len(*s.MedicalScribeJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalScribeJobName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *GetMedicalScribeJobInput) SetMedicalScribeJobName(v string) *GetMedicalScribeJobInput { + s.MedicalScribeJobName = &v + return s +} + +type GetMedicalScribeJobOutput struct { + _ struct{} `type:"structure"` + + // Provides detailed information about the specified Medical Scribe job, including + // job status and, if applicable, failure reason + MedicalScribeJob *MedicalScribeJob `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMedicalScribeJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMedicalScribeJobOutput) GoString() string { + return s.String() +} + +// SetMedicalScribeJob sets the MedicalScribeJob field's value. +func (s *GetMedicalScribeJobOutput) SetMedicalScribeJob(v *MedicalScribeJob) *GetMedicalScribeJobOutput { + s.MedicalScribeJob = v + return s +} + type GetMedicalTranscriptionJobInput struct { _ struct{} `type:"structure"` @@ -7323,7 +7972,7 @@ type GetMedicalVocabularyOutput struct { _ struct{} `type:"structure"` - // The S3 location where the specified custom medical vocabulary is stored; + // The Amazon S3 location where the specified custom medical vocabulary is stored; // use this URI to view or download the custom vocabulary. DownloadUri *string `min:"1" type:"string"` @@ -7650,8 +8299,8 @@ type GetVocabularyOutput struct { _ struct{} `type:"structure"` - // The S3 location where the custom vocabulary is stored; use this URI to view - // or download the custom vocabulary. + // The Amazon S3 location where the custom vocabulary is stored; use this URI + // to view or download the custom vocabulary. DownloadUri *string `min:"1" type:"string"` // If VocabularyState is FAILED, FailureReason contains information about why @@ -8133,18 +8782,18 @@ // transcription job. Note that custom language model names are case sensitive. // // The language of the specified custom language model must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom language model isn't applied. There are no errors or warnings - // associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom language model isn't applied. There are no errors or + // warnings associated with a language mismatch. LanguageModelName *string `min:"1" type:"string"` // The name of the custom vocabulary filter you want to use when processing // your transcription job. Custom vocabulary filter names are case sensitive. // // The language of the specified custom vocabulary filter must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom vocabulary filter isn't applied. There are no errors or - // warnings associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom vocabulary filter isn't applied. There are no errors + // or warnings associated with a language mismatch. // // Note that if you include VocabularyFilterName in your request, you must also // include VocabularyFilterMethod. @@ -8154,7 +8803,7 @@ // job. Custom vocabulary names are case sensitive. // // The language of the specified custom vocabulary must match the language code - // that you specify in your transcription request. If the languages don't match, + // that you specify in your transcription request. If the languages do not match, // the custom vocabulary isn't applied. There are no errors or warnings associated // with a language mismatch. VocabularyName *string `min:"1" type:"string"` @@ -8261,8 +8910,8 @@ // // For a list of supported languages and their associated language codes, refer // to the Supported languages (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) - // table. Note that U.S. English (en-US) is the only language supported with - // Amazon Transcribe Medical. + // table. Note that US English (en-US) is the only language supported with Amazon + // Transcribe Medical. LanguageCode *string `type:"string" enum:"CLMLanguageCode"` // The date and time the specified custom language model was last modified. @@ -8438,7 +9087,7 @@ // The maximum number of Call Analytics categories to return in each page of // results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -8547,7 +9196,7 @@ // The maximum number of Call Analytics jobs to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // If your ListCallAnalyticsJobs request returns more results than can be displayed, @@ -8558,7 +9207,7 @@ NextToken *string `type:"string"` // Returns only Call Analytics jobs with the specified status. Jobs are ordered - // by creation date, with the newest job first. If you don't include Status, + // by creation date, with the newest job first. If you do not include Status, // all Call Analytics jobs are returned. Status *string `type:"string" enum:"CallAnalyticsJobStatus"` } @@ -8680,7 +9329,7 @@ // The maximum number of custom language models to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // Returns only the custom language models that contain the specified string. @@ -8695,8 +9344,8 @@ NextToken *string `type:"string"` // Returns only custom language models with the specified status. Language models - // are ordered by creation date, with the newest model first. If you don't include - // StatusEquals, all custom language models are returned. + // are ordered by creation date, with the newest model first. If you do not + // include StatusEquals, all custom language models are returned. StatusEquals *string `type:"string" enum:"ModelStatus"` } @@ -8803,6 +9452,143 @@ return s } +type ListMedicalScribeJobsInput struct { + _ struct{} `type:"structure"` + + // Returns only the Medical Scribe jobs that contain the specified string. The + // search is not case sensitive. + JobNameContains *string `min:"1" type:"string"` + + // The maximum number of Medical Scribe jobs to return in each page of results. + // If there are fewer results than the value that you specify, only the actual + // results are returned. If you do not specify a value, a default of 5 is used. + MaxResults *int64 `min:"1" type:"integer"` + + // If your ListMedicalScribeJobs request returns more results than can be displayed, + // NextToken is displayed in the response with an associated string. To get + // the next page of results, copy this string and repeat your request, including + // NextToken with the value of the copied string. Repeat as needed to view all + // your results. + NextToken *string `type:"string"` + + // Returns only Medical Scribe jobs with the specified status. Jobs are ordered + // by creation date, with the newest job first. If you do not include Status, + // all Medical Scribe jobs are returned. + Status *string `type:"string" enum:"MedicalScribeJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMedicalScribeJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMedicalScribeJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMedicalScribeJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMedicalScribeJobsInput"} + if s.JobNameContains != nil && len(*s.JobNameContains) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobNameContains", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobNameContains sets the JobNameContains field's value. +func (s *ListMedicalScribeJobsInput) SetJobNameContains(v string) *ListMedicalScribeJobsInput { + s.JobNameContains = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMedicalScribeJobsInput) SetMaxResults(v int64) *ListMedicalScribeJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMedicalScribeJobsInput) SetNextToken(v string) *ListMedicalScribeJobsInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListMedicalScribeJobsInput) SetStatus(v string) *ListMedicalScribeJobsInput { + s.Status = &v + return s +} + +type ListMedicalScribeJobsOutput struct { + _ struct{} `type:"structure"` + + // Provides a summary of information about each result. + MedicalScribeJobSummaries []*MedicalScribeJobSummary `type:"list"` + + // If NextToken is present in your response, it indicates that not all results + // are displayed. To view the next set of results, copy the string associated + // with the NextToken parameter in your results output, then run your request + // again including NextToken with the value of the copied string. Repeat as + // needed to view all your results. + NextToken *string `type:"string"` + + // Lists all Medical Scribe jobs that have the status specified in your request. + // Jobs are ordered by creation date, with the newest job first. + Status *string `type:"string" enum:"MedicalScribeJobStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMedicalScribeJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMedicalScribeJobsOutput) GoString() string { + return s.String() +} + +// SetMedicalScribeJobSummaries sets the MedicalScribeJobSummaries field's value. +func (s *ListMedicalScribeJobsOutput) SetMedicalScribeJobSummaries(v []*MedicalScribeJobSummary) *ListMedicalScribeJobsOutput { + s.MedicalScribeJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMedicalScribeJobsOutput) SetNextToken(v string) *ListMedicalScribeJobsOutput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListMedicalScribeJobsOutput) SetStatus(v string) *ListMedicalScribeJobsOutput { + s.Status = &v + return s +} + type ListMedicalTranscriptionJobsInput struct { _ struct{} `type:"structure"` @@ -8812,7 +9598,7 @@ // The maximum number of medical transcription jobs to return in each page of // results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -8824,7 +9610,7 @@ NextToken *string `type:"string"` // Returns only medical transcription jobs with the specified status. Jobs are - // ordered by creation date, with the newest job first. If you don't include + // ordered by creation date, with the newest job first. If you do not include // Status, all medical transcription jobs are returned. Status *string `type:"string" enum:"TranscriptionJobStatus"` } @@ -8946,7 +9732,7 @@ // The maximum number of custom medical vocabularies to return in each page // of results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -8963,7 +9749,7 @@ // Returns only custom medical vocabularies with the specified state. Custom // vocabularies are ordered by creation date, with the newest vocabulary first. - // If you don't include StateEquals, all custom medical vocabularies are returned. + // If you do not include StateEquals, all custom medical vocabularies are returned. StateEquals *string `type:"string" enum:"VocabularyState"` } @@ -9186,7 +9972,7 @@ // The maximum number of transcription jobs to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // If your ListTranscriptionJobs request returns more results than can be displayed, @@ -9197,7 +9983,7 @@ NextToken *string `type:"string"` // Returns only transcription jobs with the specified status. Jobs are ordered - // by creation date, with the newest job first. If you don't include Status, + // by creation date, with the newest job first. If you do not include Status, // all transcription jobs are returned. Status *string `type:"string" enum:"TranscriptionJobStatus"` } @@ -9319,7 +10105,7 @@ // The maximum number of custom vocabularies to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // Returns only the custom vocabularies that contain the specified string. The @@ -9334,7 +10120,7 @@ NextToken *string `type:"string"` // Returns only custom vocabularies with the specified state. Vocabularies are - // ordered by creation date, with the newest vocabulary first. If you don't + // ordered by creation date, with the newest vocabulary first. If you do not // include StateEquals, all custom medical vocabularies are returned. StateEquals *string `type:"string" enum:"VocabularyState"` } @@ -9457,7 +10243,7 @@ // The maximum number of custom vocabulary filters to return in each page of // results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -9573,8 +10359,8 @@ // Describes the Amazon S3 location of the media file you want to use in your // request. // -// For information on supported media formats, refer to the MediaFormat (https://docs.aws.amazon.com/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-MediaFormat) -// parameter or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) +// For information on supported media formats, refer to the MediaFormat parameter +// or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) // section in the Amazon S3 Developer Guide. type Media struct { _ struct{} `type:"structure"` @@ -9652,6 +10438,549 @@ return s } +// Indicates which speaker is on which channel. The options are CLINICIAN and +// PATIENT +type MedicalScribeChannelDefinition struct { + _ struct{} `type:"structure"` + + // Specify the audio channel you want to define. + // + // ChannelId is a required field + ChannelId *int64 `type:"integer" required:"true"` + + // Specify the participant that you want to flag. The options are CLINICIAN + // and PATIENT + // + // ParticipantRole is a required field + ParticipantRole *string `type:"string" required:"true" enum:"MedicalScribeParticipantRole"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeChannelDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeChannelDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MedicalScribeChannelDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MedicalScribeChannelDefinition"} + if s.ChannelId == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelId")) + } + if s.ParticipantRole == nil { + invalidParams.Add(request.NewErrParamRequired("ParticipantRole")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelId sets the ChannelId field's value. +func (s *MedicalScribeChannelDefinition) SetChannelId(v int64) *MedicalScribeChannelDefinition { + s.ChannelId = &v + return s +} + +// SetParticipantRole sets the ParticipantRole field's value. +func (s *MedicalScribeChannelDefinition) SetParticipantRole(v string) *MedicalScribeChannelDefinition { + s.ParticipantRole = &v + return s +} + +// Provides detailed information about a Medical Scribe job. +// +// To view the status of the specified Medical Scribe job, check the MedicalScribeJobStatus +// field. If the status is COMPLETED, the job is finished and you can find the +// results at the locations specified in MedicalScribeOutput. If the status +// is FAILED, FailureReason provides details on why your Medical Scribe job +// failed. +type MedicalScribeJob struct { + _ struct{} `type:"structure"` + + // Makes it possible to specify which speaker is on which channel. For example, + // if the clinician is the first participant to speak, you would set ChannelId + // of the first ChannelDefinition in the list to 0 (to indicate the first channel) + // and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). + // Then you would set the ChannelId of the second ChannelDefinition in the list + // to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to + // indicate that it's the patient speaking). + ChannelDefinitions []*MedicalScribeChannelDefinition `min:"2" type:"list"` + + // The date and time the specified Medical Scribe job finished processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished + // processing at 12:32 PM UTC-7 on May 4, 2022. + CompletionTime *time.Time `type:"timestamp"` + + // The date and time the specified Medical Scribe job request was made. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + CreationTime *time.Time `type:"timestamp"` + + // The Amazon Resource Name (ARN) of an IAM role that has permissions to access + // the Amazon S3 bucket that contains your input files, write to the output + // bucket, and use your KMS key if supplied. If the role that you specify doesn’t + // have the appropriate permissions your request fails. + // + // IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. + // For example: arn:aws:iam::111122223333:role/Admin. + // + // For more information, see IAM ARNs (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns). + DataAccessRoleArn *string `min:"20" type:"string"` + + // If MedicalScribeJobStatus is FAILED, FailureReason contains information about + // why the transcription job failed. See also: Common Errors (https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonErrors.html). + FailureReason *string `type:"string"` + + // The language code used to create your Medical Scribe job. US English (en-US) + // is the only supported language for Medical Scribe jobs. + LanguageCode *string `type:"string" enum:"MedicalScribeLanguageCode"` + + // Describes the Amazon S3 location of the media file you want to use in your + // request. + // + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // section in the Amazon S3 Developer Guide. + Media *Media `type:"structure"` + + // The name of the Medical Scribe job. Job names are case sensitive and must + // be unique within an Amazon Web Services account. + MedicalScribeJobName *string `min:"1" type:"string"` + + // Provides the status of the specified Medical Scribe job. + // + // If the status is COMPLETED, the job is finished and you can find the results + // at the location specified in MedicalScribeOutput If the status is FAILED, + // FailureReason provides details on why your Medical Scribe job failed. + MedicalScribeJobStatus *string `type:"string" enum:"MedicalScribeJobStatus"` + + // The location of the output of your Medical Scribe job. ClinicalDocumentUri + // holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds + // the Amazon S3 URI for the Transcript. + MedicalScribeOutput *MedicalScribeOutput_ `type:"structure"` + + // Makes it possible to control how your Medical Scribe job is processed using + // a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions + // are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions + // are not set. One and only one of ChannelIdentification and ShowSpeakerLabels + // must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. + // Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, + // VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName + // is set. + Settings *MedicalScribeSettings `type:"structure"` + + // The date and time your Medical Scribe job began processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + StartTime *time.Time `type:"timestamp"` + + // Adds one or more custom tags, each in the form of a key:value pair, to the + // Medica Scribe job. + // + // To learn more about using tags with Amazon Transcribe, refer to Tagging resources + // (https://docs.aws.amazon.com/transcribe/latest/dg/tagging.html). + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeJob) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeJob) GoString() string { + return s.String() +} + +// SetChannelDefinitions sets the ChannelDefinitions field's value. +func (s *MedicalScribeJob) SetChannelDefinitions(v []*MedicalScribeChannelDefinition) *MedicalScribeJob { + s.ChannelDefinitions = v + return s +} + +// SetCompletionTime sets the CompletionTime field's value. +func (s *MedicalScribeJob) SetCompletionTime(v time.Time) *MedicalScribeJob { + s.CompletionTime = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *MedicalScribeJob) SetCreationTime(v time.Time) *MedicalScribeJob { + s.CreationTime = &v + return s +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *MedicalScribeJob) SetDataAccessRoleArn(v string) *MedicalScribeJob { + s.DataAccessRoleArn = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *MedicalScribeJob) SetFailureReason(v string) *MedicalScribeJob { + s.FailureReason = &v + return s +} + +// SetLanguageCode sets the LanguageCode field's value. +func (s *MedicalScribeJob) SetLanguageCode(v string) *MedicalScribeJob { + s.LanguageCode = &v + return s +} + +// SetMedia sets the Media field's value. +func (s *MedicalScribeJob) SetMedia(v *Media) *MedicalScribeJob { + s.Media = v + return s +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *MedicalScribeJob) SetMedicalScribeJobName(v string) *MedicalScribeJob { + s.MedicalScribeJobName = &v + return s +} + +// SetMedicalScribeJobStatus sets the MedicalScribeJobStatus field's value. +func (s *MedicalScribeJob) SetMedicalScribeJobStatus(v string) *MedicalScribeJob { + s.MedicalScribeJobStatus = &v + return s +} + +// SetMedicalScribeOutput sets the MedicalScribeOutput field's value. +func (s *MedicalScribeJob) SetMedicalScribeOutput(v *MedicalScribeOutput_) *MedicalScribeJob { + s.MedicalScribeOutput = v + return s +} + +// SetSettings sets the Settings field's value. +func (s *MedicalScribeJob) SetSettings(v *MedicalScribeSettings) *MedicalScribeJob { + s.Settings = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *MedicalScribeJob) SetStartTime(v time.Time) *MedicalScribeJob { + s.StartTime = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *MedicalScribeJob) SetTags(v []*Tag) *MedicalScribeJob { + s.Tags = v + return s +} + +// Provides detailed information about a specific Medical Scribe job. +type MedicalScribeJobSummary struct { + _ struct{} `type:"structure"` + + // The date and time the specified Medical Scribe job finished processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished + // processing at 12:32 PM UTC-7 on May 4, 2022. + CompletionTime *time.Time `type:"timestamp"` + + // The date and time the specified Medical Scribe job request was made. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + CreationTime *time.Time `type:"timestamp"` + + // If MedicalScribeJobStatus is FAILED, FailureReason contains information about + // why the transcription job failed. See also: Common Errors (https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonErrors.html). + FailureReason *string `type:"string"` + + // The language code used to create your Medical Scribe job. US English (en-US) + // is the only supported language for Medical Scribe jobs. + LanguageCode *string `type:"string" enum:"MedicalScribeLanguageCode"` + + // The name of the Medical Scribe job. Job names are case sensitive and must + // be unique within an Amazon Web Services account. + MedicalScribeJobName *string `min:"1" type:"string"` + + // Provides the status of the specified Medical Scribe job. + // + // If the status is COMPLETED, the job is finished and you can find the results + // at the location specified in MedicalScribeOutput If the status is FAILED, + // FailureReason provides details on why your Medical Scribe job failed. + MedicalScribeJobStatus *string `type:"string" enum:"MedicalScribeJobStatus"` + + // The date and time your Medical Scribe job began processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + StartTime *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeJobSummary) GoString() string { + return s.String() +} + +// SetCompletionTime sets the CompletionTime field's value. +func (s *MedicalScribeJobSummary) SetCompletionTime(v time.Time) *MedicalScribeJobSummary { + s.CompletionTime = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *MedicalScribeJobSummary) SetCreationTime(v time.Time) *MedicalScribeJobSummary { + s.CreationTime = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *MedicalScribeJobSummary) SetFailureReason(v string) *MedicalScribeJobSummary { + s.FailureReason = &v + return s +} + +// SetLanguageCode sets the LanguageCode field's value. +func (s *MedicalScribeJobSummary) SetLanguageCode(v string) *MedicalScribeJobSummary { + s.LanguageCode = &v + return s +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *MedicalScribeJobSummary) SetMedicalScribeJobName(v string) *MedicalScribeJobSummary { + s.MedicalScribeJobName = &v + return s +} + +// SetMedicalScribeJobStatus sets the MedicalScribeJobStatus field's value. +func (s *MedicalScribeJobSummary) SetMedicalScribeJobStatus(v string) *MedicalScribeJobSummary { + s.MedicalScribeJobStatus = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *MedicalScribeJobSummary) SetStartTime(v time.Time) *MedicalScribeJobSummary { + s.StartTime = &v + return s +} + +// The location of the output of your Medical Scribe job. ClinicalDocumentUri +// holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds +// the Amazon S3 URI for the Transcript. +type MedicalScribeOutput_ struct { + _ struct{} `type:"structure"` + + // Holds the Amazon S3 URI for the Clinical Document. + // + // ClinicalDocumentUri is a required field + ClinicalDocumentUri *string `min:"1" type:"string" required:"true"` + + // Holds the Amazon S3 URI for the Transcript. + // + // TranscriptFileUri is a required field + TranscriptFileUri *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeOutput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeOutput_) GoString() string { + return s.String() +} + +// SetClinicalDocumentUri sets the ClinicalDocumentUri field's value. +func (s *MedicalScribeOutput_) SetClinicalDocumentUri(v string) *MedicalScribeOutput_ { + s.ClinicalDocumentUri = &v + return s +} + +// SetTranscriptFileUri sets the TranscriptFileUri field's value. +func (s *MedicalScribeOutput_) SetTranscriptFileUri(v string) *MedicalScribeOutput_ { + s.TranscriptFileUri = &v + return s +} + +// Makes it possible to control how your Medical Scribe job is processed using +// a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions +// are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions +// are not set. One and only one of ChannelIdentification and ShowSpeakerLabels +// must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. +// Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, +// VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName +// is set. +type MedicalScribeSettings struct { + _ struct{} `type:"structure"` + + // Enables channel identification in multi-channel audio. + // + // Channel identification transcribes the audio on each channel independently, + // then appends the output for each channel into one transcript. + // + // For more information, see Transcribing multi-channel audio (https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html). + ChannelIdentification *bool `type:"boolean"` + + // Specify the maximum number of speakers you want to partition in your media. + // + // Note that if your media contains more speakers than the specified number, + // multiple speakers are treated as a single speaker. + // + // If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels + // field to true. + MaxSpeakerLabels *int64 `min:"2" type:"integer"` + + // Enables speaker partitioning (diarization) in your Medical Scribe output. + // Speaker partitioning labels the speech from individual speakers in your media + // file. + // + // If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels. + // + // For more information, see Partitioning speakers (diarization) (https://docs.aws.amazon.com/transcribe/latest/dg/diarization.html). + ShowSpeakerLabels *bool `type:"boolean"` + + // Specify how you want your custom vocabulary filter applied to your transcript. + // + // To replace words with ***, choose mask. + // + // To delete words, choose remove. + // + // To flag words without changing them, choose tag. + VocabularyFilterMethod *string `type:"string" enum:"VocabularyFilterMethod"` + + // The name of the custom vocabulary filter you want to include in your Medical + // Scribe request. Custom vocabulary filter names are case sensitive. + // + // Note that if you include VocabularyFilterName in your request, you must also + // include VocabularyFilterMethod. + VocabularyFilterName *string `min:"1" type:"string"` + + // The name of the custom vocabulary you want to include in your Medical Scribe + // request. Custom vocabulary names are case sensitive. + VocabularyName *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MedicalScribeSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MedicalScribeSettings"} + if s.MaxSpeakerLabels != nil && *s.MaxSpeakerLabels < 2 { + invalidParams.Add(request.NewErrParamMinValue("MaxSpeakerLabels", 2)) + } + if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1)) + } + if s.VocabularyName != nil && len(*s.VocabularyName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelIdentification sets the ChannelIdentification field's value. +func (s *MedicalScribeSettings) SetChannelIdentification(v bool) *MedicalScribeSettings { + s.ChannelIdentification = &v + return s +} + +// SetMaxSpeakerLabels sets the MaxSpeakerLabels field's value. +func (s *MedicalScribeSettings) SetMaxSpeakerLabels(v int64) *MedicalScribeSettings { + s.MaxSpeakerLabels = &v + return s +} + +// SetShowSpeakerLabels sets the ShowSpeakerLabels field's value. +func (s *MedicalScribeSettings) SetShowSpeakerLabels(v bool) *MedicalScribeSettings { + s.ShowSpeakerLabels = &v + return s +} + +// SetVocabularyFilterMethod sets the VocabularyFilterMethod field's value. +func (s *MedicalScribeSettings) SetVocabularyFilterMethod(v string) *MedicalScribeSettings { + s.VocabularyFilterMethod = &v + return s +} + +// SetVocabularyFilterName sets the VocabularyFilterName field's value. +func (s *MedicalScribeSettings) SetVocabularyFilterName(v string) *MedicalScribeSettings { + s.VocabularyFilterName = &v + return s +} + +// SetVocabularyName sets the VocabularyName field's value. +func (s *MedicalScribeSettings) SetVocabularyName(v string) *MedicalScribeSettings { + s.VocabularyName = &v + return s +} + // Provides you with the Amazon S3 URI you can use to access your transcript. type MedicalTranscript struct { _ struct{} `type:"structure"` @@ -9722,7 +11051,8 @@ // The FailureReason field contains one of the following values: // // * Unsupported media format. The media format specified in MediaFormat - // isn't valid. Refer to MediaFormat for a list of supported formats. + // isn't valid. Refer to refer to the MediaFormat parameter for a list of + // supported formats. // // * The media format provided does not match the detected media format. // The media format specified in MediaFormat doesn't match the format of @@ -9739,11 +11069,11 @@ // // * Invalid file size: file size too large. The size of your media file // is larger than what Amazon Transcribe can process. For more information, - // refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). // // * Invalid number of channels: number of channels too large. Your audio // contains more channels than Amazon Transcribe is able to process. For - // more information, refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // more information, refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). FailureReason *string `type:"string"` // The language code used to create your medical transcription job. US English @@ -9753,8 +11083,8 @@ // Describes the Amazon S3 location of the media file you want to use in your // request. // - // For information on supported media formats, refer to the MediaFormat (https://docs.aws.amazon.com/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-MediaFormat) - // parameter or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) // section in the Amazon S3 Developer Guide. Media *Media `type:"structure"` @@ -10085,9 +11415,6 @@ // your audio is transcribed in a continuous manner and your transcript does // not separate the speech by channel. // - // You can't include both ShowSpeakerLabels and ChannelIdentification in the - // same request. Including both parameters returns a BadRequestException. - // // For more information, see Transcribing multi-channel audio (https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html). ChannelIdentification *bool `type:"boolean"` @@ -10129,9 +11456,6 @@ // // If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels. // - // You can't include ShowSpeakerLabels and ChannelIdentification in the same - // request. Including both parameters returns a BadRequestException. - // // For more information, see Partitioning speakers (diarization) (https://docs.aws.amazon.com/transcribe/latest/dg/diarization.html). ShowSpeakerLabels *bool `type:"boolean"` @@ -10139,7 +11463,7 @@ // transcription job. Custom vocabulary names are case sensitive. // // The language of the specified custom vocabulary must match the language code - // that you specify in your transcription request. If the languages don't match, + // that you specify in your transcription request. If the languages do not match, // the custom vocabulary isn't applied. There are no errors or warnings associated // with a language mismatch. US English (en-US) is the only valid language for // Amazon Transcribe Medical. @@ -10232,9 +11556,9 @@ // transcription job. Note that custom language model names are case sensitive. // // The language of the specified custom language model must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom language model isn't applied. There are no errors or warnings - // associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom language model isn't applied. There are no errors or + // warnings associated with a language mismatch. LanguageModelName *string `min:"1" type:"string"` } @@ -10707,9 +12031,6 @@ // Channel identification transcribes the audio on each channel independently, // then appends the output for each channel into one transcript. // - // You can't include both ShowSpeakerLabels and ChannelIdentification in the - // same request. Including both parameters returns a BadRequestException. - // // For more information, see Transcribing multi-channel audio (https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html). ChannelIdentification *bool `type:"boolean"` @@ -10755,9 +12076,6 @@ // // If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels. // - // You can't include both ShowSpeakerLabels and ChannelIdentification in the - // same request. Including both parameters returns a BadRequestException. - // // For more information, see Partitioning speakers (diarization) (https://docs.aws.amazon.com/transcribe/latest/dg/diarization.html). ShowSpeakerLabels *bool `type:"boolean"` @@ -10928,7 +12246,7 @@ // // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. // - // If you don't specify an encryption key, your output is encrypted with the + // If you do not specify an encryption key, your output is encrypted with the // default Amazon S3 key (SSE-S3). // // If you specify a KMS key to encrypt your output, you must also specify an @@ -10952,10 +12270,10 @@ // job using the CallAnalyticsJobName parameter. // // You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId - // parameter. If you don't specify a KMS key, Amazon Transcribe uses the default + // parameter. If you do not specify a KMS key, Amazon Transcribe uses the default // Amazon S3 key for server-side encryption. // - // If you don't specify OutputLocation, your transcript is placed in a service-managed + // If you do not specify OutputLocation, your transcript is placed in a service-managed // Amazon S3 bucket and you are provided with a URI to access your transcript. OutputLocation *string `min:"1" type:"string"` @@ -11098,6 +12416,292 @@ return s } +type StartMedicalScribeJobInput struct { + _ struct{} `type:"structure"` + + // Makes it possible to specify which speaker is on which channel. For example, + // if the clinician is the first participant to speak, you would set ChannelId + // of the first ChannelDefinition in the list to 0 (to indicate the first channel) + // and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). + // Then you would set the ChannelId of the second ChannelDefinition in the list + // to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to + // indicate that it's the patient speaking). + ChannelDefinitions []*MedicalScribeChannelDefinition `min:"2" type:"list"` + + // The Amazon Resource Name (ARN) of an IAM role that has permissions to access + // the Amazon S3 bucket that contains your input files, write to the output + // bucket, and use your KMS key if supplied. If the role that you specify doesn’t + // have the appropriate permissions your request fails. + // + // IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. + // For example: arn:aws:iam::111122223333:role/Admin. + // + // For more information, see IAM ARNs (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns). + // + // DataAccessRoleArn is a required field + DataAccessRoleArn *string `min:"20" type:"string" required:"true"` + + // A map of plain text, non-secret key:value pairs, known as encryption context + // pairs, that provide an added layer of security for your data. For more information, + // see KMS encryption context (https://docs.aws.amazon.com/transcribe/latest/dg/key-management.html#kms-context) + // and Asymmetric keys in KMS (https://docs.aws.amazon.com/transcribe/latest/dg/symmetric-asymmetric.html). + KMSEncryptionContext map[string]*string `min:"1" type:"map"` + + // Describes the Amazon S3 location of the media file you want to use in your + // request. + // + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // section in the Amazon S3 Developer Guide. + // + // Media is a required field + Media *Media `type:"structure" required:"true"` + + // A unique name, chosen by you, for your Medical Scribe job. + // + // This name is case sensitive, cannot contain spaces, and must be unique within + // an Amazon Web Services account. If you try to create a new job with the same + // name as an existing job, you get a ConflictException error. + // + // MedicalScribeJobName is a required field + MedicalScribeJobName *string `min:"1" type:"string" required:"true"` + + // The name of the Amazon S3 bucket where you want your Medical Scribe output + // stored. Do not include the S3:// prefix of the specified bucket. + // + // Note that the role specified in the DataAccessRoleArn request parameter must + // have permission to use the specified location. You can change Amazon S3 permissions + // using the Amazon Web Services Management Console (https://console.aws.amazon.com/s3). + // See also Permissions Required for IAM User Roles (https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user). + // + // OutputBucketName is a required field + OutputBucketName *string `type:"string" required:"true"` + + // The KMS key you want to use to encrypt your Medical Scribe output. + // + // If using a key located in the current Amazon Web Services account, you can + // specify your KMS key in one of four ways: + // + // Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. + // + // Use an alias for the KMS key ID. For example, alias/ExampleAlias. + // + // Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab. + // + // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. + // + // If using a key located in a different Amazon Web Services account than the + // current Amazon Web Services account, you can specify your KMS key in one + // of two ways: + // + // Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab. + // + // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. + // + // If you do not specify an encryption key, your output is encrypted with the + // default Amazon S3 key (SSE-S3). + // + // Note that the role specified in the DataAccessRoleArn request parameter must + // have permission to use the specified KMS key. + OutputEncryptionKMSKeyId *string `min:"1" type:"string"` + + // Makes it possible to control how your Medical Scribe job is processed using + // a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions + // are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions + // are not set. One and only one of ChannelIdentification and ShowSpeakerLabels + // must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. + // Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, + // VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName + // is set. + // + // Settings is a required field + Settings *MedicalScribeSettings `type:"structure" required:"true"` + + // Adds one or more custom tags, each in the form of a key:value pair, to the + // Medica Scribe job. + // + // To learn more about using tags with Amazon Transcribe, refer to Tagging resources + // (https://docs.aws.amazon.com/transcribe/latest/dg/tagging.html). + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMedicalScribeJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMedicalScribeJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartMedicalScribeJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartMedicalScribeJobInput"} + if s.ChannelDefinitions != nil && len(s.ChannelDefinitions) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ChannelDefinitions", 2)) + } + if s.DataAccessRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn")) + } + if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20)) + } + if s.KMSEncryptionContext != nil && len(s.KMSEncryptionContext) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KMSEncryptionContext", 1)) + } + if s.Media == nil { + invalidParams.Add(request.NewErrParamRequired("Media")) + } + if s.MedicalScribeJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalScribeJobName")) + } + if s.MedicalScribeJobName != nil && len(*s.MedicalScribeJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalScribeJobName", 1)) + } + if s.OutputBucketName == nil { + invalidParams.Add(request.NewErrParamRequired("OutputBucketName")) + } + if s.OutputEncryptionKMSKeyId != nil && len(*s.OutputEncryptionKMSKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputEncryptionKMSKeyId", 1)) + } + if s.Settings == nil { + invalidParams.Add(request.NewErrParamRequired("Settings")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ChannelDefinitions != nil { + for i, v := range s.ChannelDefinitions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ChannelDefinitions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Media != nil { + if err := s.Media.Validate(); err != nil { + invalidParams.AddNested("Media", err.(request.ErrInvalidParams)) + } + } + if s.Settings != nil { + if err := s.Settings.Validate(); err != nil { + invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelDefinitions sets the ChannelDefinitions field's value. +func (s *StartMedicalScribeJobInput) SetChannelDefinitions(v []*MedicalScribeChannelDefinition) *StartMedicalScribeJobInput { + s.ChannelDefinitions = v + return s +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *StartMedicalScribeJobInput) SetDataAccessRoleArn(v string) *StartMedicalScribeJobInput { + s.DataAccessRoleArn = &v + return s +} + +// SetKMSEncryptionContext sets the KMSEncryptionContext field's value. +func (s *StartMedicalScribeJobInput) SetKMSEncryptionContext(v map[string]*string) *StartMedicalScribeJobInput { + s.KMSEncryptionContext = v + return s +} + +// SetMedia sets the Media field's value. +func (s *StartMedicalScribeJobInput) SetMedia(v *Media) *StartMedicalScribeJobInput { + s.Media = v + return s +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *StartMedicalScribeJobInput) SetMedicalScribeJobName(v string) *StartMedicalScribeJobInput { + s.MedicalScribeJobName = &v + return s +} + +// SetOutputBucketName sets the OutputBucketName field's value. +func (s *StartMedicalScribeJobInput) SetOutputBucketName(v string) *StartMedicalScribeJobInput { + s.OutputBucketName = &v + return s +} + +// SetOutputEncryptionKMSKeyId sets the OutputEncryptionKMSKeyId field's value. +func (s *StartMedicalScribeJobInput) SetOutputEncryptionKMSKeyId(v string) *StartMedicalScribeJobInput { + s.OutputEncryptionKMSKeyId = &v + return s +} + +// SetSettings sets the Settings field's value. +func (s *StartMedicalScribeJobInput) SetSettings(v *MedicalScribeSettings) *StartMedicalScribeJobInput { + s.Settings = v + return s +} + +// SetTags sets the Tags field's value. +func (s *StartMedicalScribeJobInput) SetTags(v []*Tag) *StartMedicalScribeJobInput { + s.Tags = v + return s +} + +type StartMedicalScribeJobOutput struct { + _ struct{} `type:"structure"` + + // Provides detailed information about the current Medical Scribe job, including + // job status and, if applicable, failure reason. + MedicalScribeJob *MedicalScribeJob `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMedicalScribeJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartMedicalScribeJobOutput) GoString() string { + return s.String() +} + +// SetMedicalScribeJob sets the MedicalScribeJob field's value. +func (s *StartMedicalScribeJobOutput) SetMedicalScribeJob(v *MedicalScribeJob) *StartMedicalScribeJobOutput { + s.MedicalScribeJob = v + return s +} + type StartMedicalTranscriptionJobInput struct { _ struct{} `type:"structure"` @@ -11123,8 +12727,8 @@ // Describes the Amazon S3 location of the media file you want to use in your // request. // - // For information on supported media formats, refer to the MediaFormat (https://docs.aws.amazon.com/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-MediaFormat) - // parameter or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) // section in the Amazon S3 Developer Guide. // // Media is a required field @@ -11135,7 +12739,7 @@ // The sample rate, in hertz, of the audio track in your input media file. // - // If you don't specify the media sample rate, Amazon Transcribe Medical determines + // If you do not specify the media sample rate, Amazon Transcribe Medical determines // it for you. If you specify the sample rate, it must match the rate detected // by Amazon Transcribe Medical; if there's a mismatch between the value that // you specify and the value detected, your job fails. Therefore, in most cases, @@ -11196,7 +12800,7 @@ // // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. // - // If you don't specify an encryption key, your output is encrypted with the + // If you do not specify an encryption key, your output is encrypted with the // default Amazon S3 key (SSE-S3). // // If you specify a KMS key to encrypt your output, you must also specify an @@ -11466,7 +13070,9 @@ // Makes it possible to redact or flag specified personally identifiable information // (PII) in your transcript. If you use ContentRedaction, you must also include - // the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType. + // the sub-parameters: RedactionOutput and RedactionType. You can optionally + // include PiiEntityTypes to choose which types of PII you want to redact. If + // you do not include PiiEntityTypes in your request, all PII is redacted. ContentRedaction *ContentRedaction `type:"structure"` // Enables automatic language identification in your transcription job request. @@ -11593,7 +13199,7 @@ // The sample rate, in hertz, of the audio track in your input media file. // - // If you don't specify the media sample rate, Amazon Transcribe determines + // If you do not specify the media sample rate, Amazon Transcribe determines // it for you. If you specify the sample rate, it must match the rate detected // by Amazon Transcribe. If there's a mismatch between the value that you specify // and the value detected, your job fails. In most cases, you can omit MediaSampleRateHertz @@ -11624,7 +13230,7 @@ // Console (https://console.aws.amazon.com/s3). See also Permissions Required // for IAM User Roles (https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user). // - // If you don't specify OutputBucketName, your transcript is placed in a service-managed + // If you do not specify OutputBucketName, your transcript is placed in a service-managed // Amazon S3 bucket and you are provided with a URI to access your transcript. OutputBucketName *string `type:"string"` @@ -11649,7 +13255,7 @@ // // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. // - // If you don't specify an encryption key, your output is encrypted with the + // If you do not specify an encryption key, your output is encrypted with the // default Amazon S3 key (SSE-S3). // // If you specify a KMS key to encrypt your output, you must also specify an @@ -12118,6 +13724,59 @@ return s } +// Contains GenerateAbstractiveSummary, which is a required parameter if you +// want to enable Generative call summarization in your Call Analytics request. +type Summarization struct { + _ struct{} `type:"structure"` + + // Enables Generative call summarization in your Call Analytics request + // + // Generative call summarization provides a summary of the transcript including + // important components discussed in the conversation. + // + // For more information, see Enabling generative call summarization (https://docs.aws.amazon.com/transcribe/latest/dg/tca-enable-summarization.html). + // + // GenerateAbstractiveSummary is a required field + GenerateAbstractiveSummary *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Summarization) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Summarization) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Summarization) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Summarization"} + if s.GenerateAbstractiveSummary == nil { + invalidParams.Add(request.NewErrParamRequired("GenerateAbstractiveSummary")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGenerateAbstractiveSummary sets the GenerateAbstractiveSummary field's value. +func (s *Summarization) SetGenerateAbstractiveSummary(v bool) *Summarization { + s.GenerateAbstractiveSummary = &v + return s +} + // Adds metadata, in the form of a key:value pair, to the specified resource. // // For example, you could add the tag Department:Sales to a resource to indicate @@ -12583,7 +14242,8 @@ // The FailureReason field contains one of the following values: // // * Unsupported media format. The media format specified in MediaFormat - // isn't valid. Refer to MediaFormat for a list of supported formats. + // isn't valid. Refer to refer to the MediaFormat parameter for a list of + // supported formats. // // * The media format provided does not match the detected media format. // The media format specified in MediaFormat doesn't match the format of @@ -12600,11 +14260,11 @@ // // * Invalid file size: file size too large. The size of your media file // is larger than what Amazon Transcribe can process. For more information, - // refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). // // * Invalid number of channels: number of channels too large. Your audio // contains more channels than Amazon Transcribe is able to process. For - // more information, refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // more information, refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). FailureReason *string `type:"string"` // The confidence score associated with the language identified in your media @@ -14137,6 +15797,198 @@ // LanguageCodeSvSe is a LanguageCode enum value LanguageCodeSvSe = "sv-SE" + + // LanguageCodeAbGe is a LanguageCode enum value + LanguageCodeAbGe = "ab-GE" + + // LanguageCodeAstEs is a LanguageCode enum value + LanguageCodeAstEs = "ast-ES" + + // LanguageCodeAzAz is a LanguageCode enum value + LanguageCodeAzAz = "az-AZ" + + // LanguageCodeBaRu is a LanguageCode enum value + LanguageCodeBaRu = "ba-RU" + + // LanguageCodeBeBy is a LanguageCode enum value + LanguageCodeBeBy = "be-BY" + + // LanguageCodeBgBg is a LanguageCode enum value + LanguageCodeBgBg = "bg-BG" + + // LanguageCodeBnIn is a LanguageCode enum value + LanguageCodeBnIn = "bn-IN" + + // LanguageCodeBsBa is a LanguageCode enum value + LanguageCodeBsBa = "bs-BA" + + // LanguageCodeCaEs is a LanguageCode enum value + LanguageCodeCaEs = "ca-ES" + + // LanguageCodeCkbIq is a LanguageCode enum value + LanguageCodeCkbIq = "ckb-IQ" + + // LanguageCodeCkbIr is a LanguageCode enum value + LanguageCodeCkbIr = "ckb-IR" + + // LanguageCodeCsCz is a LanguageCode enum value + LanguageCodeCsCz = "cs-CZ" + + // LanguageCodeCyWl is a LanguageCode enum value + LanguageCodeCyWl = "cy-WL" + + // LanguageCodeElGr is a LanguageCode enum value + LanguageCodeElGr = "el-GR" + + // LanguageCodeEtEt is a LanguageCode enum value + LanguageCodeEtEt = "et-ET" + + // LanguageCodeEuEs is a LanguageCode enum value + LanguageCodeEuEs = "eu-ES" + + // LanguageCodeFiFi is a LanguageCode enum value + LanguageCodeFiFi = "fi-FI" + + // LanguageCodeGlEs is a LanguageCode enum value + LanguageCodeGlEs = "gl-ES" + + // LanguageCodeGuIn is a LanguageCode enum value + LanguageCodeGuIn = "gu-IN" + + // LanguageCodeHaNg is a LanguageCode enum value + LanguageCodeHaNg = "ha-NG" + + // LanguageCodeHrHr is a LanguageCode enum value + LanguageCodeHrHr = "hr-HR" + + // LanguageCodeHuHu is a LanguageCode enum value + LanguageCodeHuHu = "hu-HU" + + // LanguageCodeHyAm is a LanguageCode enum value + LanguageCodeHyAm = "hy-AM" + + // LanguageCodeIsIs is a LanguageCode enum value + LanguageCodeIsIs = "is-IS" + + // LanguageCodeKaGe is a LanguageCode enum value + LanguageCodeKaGe = "ka-GE" + + // LanguageCodeKabDz is a LanguageCode enum value + LanguageCodeKabDz = "kab-DZ" + + // LanguageCodeKkKz is a LanguageCode enum value + LanguageCodeKkKz = "kk-KZ" + + // LanguageCodeKnIn is a LanguageCode enum value + LanguageCodeKnIn = "kn-IN" + + // LanguageCodeKyKg is a LanguageCode enum value + LanguageCodeKyKg = "ky-KG" + + // LanguageCodeLgIn is a LanguageCode enum value + LanguageCodeLgIn = "lg-IN" + + // LanguageCodeLtLt is a LanguageCode enum value + LanguageCodeLtLt = "lt-LT" + + // LanguageCodeLvLv is a LanguageCode enum value + LanguageCodeLvLv = "lv-LV" + + // LanguageCodeMhrRu is a LanguageCode enum value + LanguageCodeMhrRu = "mhr-RU" + + // LanguageCodeMiNz is a LanguageCode enum value + LanguageCodeMiNz = "mi-NZ" + + // LanguageCodeMkMk is a LanguageCode enum value + LanguageCodeMkMk = "mk-MK" + + // LanguageCodeMlIn is a LanguageCode enum value + LanguageCodeMlIn = "ml-IN" + + // LanguageCodeMnMn is a LanguageCode enum value + LanguageCodeMnMn = "mn-MN" + + // LanguageCodeMrIn is a LanguageCode enum value + LanguageCodeMrIn = "mr-IN" + + // LanguageCodeMtMt is a LanguageCode enum value + LanguageCodeMtMt = "mt-MT" + + // LanguageCodeNoNo is a LanguageCode enum value + LanguageCodeNoNo = "no-NO" + + // LanguageCodeOrIn is a LanguageCode enum value + LanguageCodeOrIn = "or-IN" + + // LanguageCodePaIn is a LanguageCode enum value + LanguageCodePaIn = "pa-IN" + + // LanguageCodePlPl is a LanguageCode enum value + LanguageCodePlPl = "pl-PL" + + // LanguageCodePsAf is a LanguageCode enum value + LanguageCodePsAf = "ps-AF" + + // LanguageCodeRoRo is a LanguageCode enum value + LanguageCodeRoRo = "ro-RO" + + // LanguageCodeRwRw is a LanguageCode enum value + LanguageCodeRwRw = "rw-RW" + + // LanguageCodeSiLk is a LanguageCode enum value + LanguageCodeSiLk = "si-LK" + + // LanguageCodeSkSk is a LanguageCode enum value + LanguageCodeSkSk = "sk-SK" + + // LanguageCodeSlSi is a LanguageCode enum value + LanguageCodeSlSi = "sl-SI" + + // LanguageCodeSoSo is a LanguageCode enum value + LanguageCodeSoSo = "so-SO" + + // LanguageCodeSrRs is a LanguageCode enum value + LanguageCodeSrRs = "sr-RS" + + // LanguageCodeSuId is a LanguageCode enum value + LanguageCodeSuId = "su-ID" + + // LanguageCodeSwBi is a LanguageCode enum value + LanguageCodeSwBi = "sw-BI" + + // LanguageCodeSwKe is a LanguageCode enum value + LanguageCodeSwKe = "sw-KE" + + // LanguageCodeSwRw is a LanguageCode enum value + LanguageCodeSwRw = "sw-RW" + + // LanguageCodeSwTz is a LanguageCode enum value + LanguageCodeSwTz = "sw-TZ" + + // LanguageCodeSwUg is a LanguageCode enum value + LanguageCodeSwUg = "sw-UG" + + // LanguageCodeTlPh is a LanguageCode enum value + LanguageCodeTlPh = "tl-PH" + + // LanguageCodeTtRu is a LanguageCode enum value + LanguageCodeTtRu = "tt-RU" + + // LanguageCodeUgCn is a LanguageCode enum value + LanguageCodeUgCn = "ug-CN" + + // LanguageCodeUkUa is a LanguageCode enum value + LanguageCodeUkUa = "uk-UA" + + // LanguageCodeUzUz is a LanguageCode enum value + LanguageCodeUzUz = "uz-UZ" + + // LanguageCodeWoSn is a LanguageCode enum value + LanguageCodeWoSn = "wo-SN" + + // LanguageCodeZuZa is a LanguageCode enum value + LanguageCodeZuZa = "zu-ZA" ) // LanguageCode_Values returns all elements of the LanguageCode enum @@ -14181,6 +16033,70 @@ LanguageCodeEnNz, LanguageCodeViVn, LanguageCodeSvSe, + LanguageCodeAbGe, + LanguageCodeAstEs, + LanguageCodeAzAz, + LanguageCodeBaRu, + LanguageCodeBeBy, + LanguageCodeBgBg, + LanguageCodeBnIn, + LanguageCodeBsBa, + LanguageCodeCaEs, + LanguageCodeCkbIq, + LanguageCodeCkbIr, + LanguageCodeCsCz, + LanguageCodeCyWl, + LanguageCodeElGr, + LanguageCodeEtEt, + LanguageCodeEuEs, + LanguageCodeFiFi, + LanguageCodeGlEs, + LanguageCodeGuIn, + LanguageCodeHaNg, + LanguageCodeHrHr, + LanguageCodeHuHu, + LanguageCodeHyAm, + LanguageCodeIsIs, + LanguageCodeKaGe, + LanguageCodeKabDz, + LanguageCodeKkKz, + LanguageCodeKnIn, + LanguageCodeKyKg, + LanguageCodeLgIn, + LanguageCodeLtLt, + LanguageCodeLvLv, + LanguageCodeMhrRu, + LanguageCodeMiNz, + LanguageCodeMkMk, + LanguageCodeMlIn, + LanguageCodeMnMn, + LanguageCodeMrIn, + LanguageCodeMtMt, + LanguageCodeNoNo, + LanguageCodeOrIn, + LanguageCodePaIn, + LanguageCodePlPl, + LanguageCodePsAf, + LanguageCodeRoRo, + LanguageCodeRwRw, + LanguageCodeSiLk, + LanguageCodeSkSk, + LanguageCodeSlSi, + LanguageCodeSoSo, + LanguageCodeSrRs, + LanguageCodeSuId, + LanguageCodeSwBi, + LanguageCodeSwKe, + LanguageCodeSwRw, + LanguageCodeSwTz, + LanguageCodeSwUg, + LanguageCodeTlPh, + LanguageCodeTtRu, + LanguageCodeUgCn, + LanguageCodeUkUa, + LanguageCodeUzUz, + LanguageCodeWoSn, + LanguageCodeZuZa, } } @@ -14205,6 +16121,9 @@ // MediaFormatWebm is a MediaFormat enum value MediaFormatWebm = "webm" + + // MediaFormatM4a is a MediaFormat enum value + MediaFormatM4a = "m4a" ) // MediaFormat_Values returns all elements of the MediaFormat enum @@ -14217,6 +16136,7 @@ MediaFormatOgg, MediaFormatAmr, MediaFormatWebm, + MediaFormatM4a, } } @@ -14232,6 +16152,58 @@ } } +const ( + // MedicalScribeJobStatusQueued is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusQueued = "QUEUED" + + // MedicalScribeJobStatusInProgress is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusInProgress = "IN_PROGRESS" + + // MedicalScribeJobStatusFailed is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusFailed = "FAILED" + + // MedicalScribeJobStatusCompleted is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusCompleted = "COMPLETED" +) + +// MedicalScribeJobStatus_Values returns all elements of the MedicalScribeJobStatus enum +func MedicalScribeJobStatus_Values() []string { + return []string{ + MedicalScribeJobStatusQueued, + MedicalScribeJobStatusInProgress, + MedicalScribeJobStatusFailed, + MedicalScribeJobStatusCompleted, + } +} + +const ( + // MedicalScribeLanguageCodeEnUs is a MedicalScribeLanguageCode enum value + MedicalScribeLanguageCodeEnUs = "en-US" +) + +// MedicalScribeLanguageCode_Values returns all elements of the MedicalScribeLanguageCode enum +func MedicalScribeLanguageCode_Values() []string { + return []string{ + MedicalScribeLanguageCodeEnUs, + } +} + +const ( + // MedicalScribeParticipantRolePatient is a MedicalScribeParticipantRole enum value + MedicalScribeParticipantRolePatient = "PATIENT" + + // MedicalScribeParticipantRoleClinician is a MedicalScribeParticipantRole enum value + MedicalScribeParticipantRoleClinician = "CLINICIAN" +) + +// MedicalScribeParticipantRole_Values returns all elements of the MedicalScribeParticipantRole enum +func MedicalScribeParticipantRole_Values() []string { + return []string{ + MedicalScribeParticipantRolePatient, + MedicalScribeParticipantRoleClinician, + } +} + const ( // ModelStatusInProgress is a ModelStatus enum value ModelStatusInProgress = "IN_PROGRESS" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/transcribeservice/transcribeserviceiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/transcribeservice/transcribeserviceiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/transcribeservice/transcribeserviceiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/transcribeservice/transcribeserviceiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -92,6 +92,10 @@ DeleteLanguageModelWithContext(aws.Context, *transcribeservice.DeleteLanguageModelInput, ...request.Option) (*transcribeservice.DeleteLanguageModelOutput, error) DeleteLanguageModelRequest(*transcribeservice.DeleteLanguageModelInput) (*request.Request, *transcribeservice.DeleteLanguageModelOutput) + DeleteMedicalScribeJob(*transcribeservice.DeleteMedicalScribeJobInput) (*transcribeservice.DeleteMedicalScribeJobOutput, error) + DeleteMedicalScribeJobWithContext(aws.Context, *transcribeservice.DeleteMedicalScribeJobInput, ...request.Option) (*transcribeservice.DeleteMedicalScribeJobOutput, error) + DeleteMedicalScribeJobRequest(*transcribeservice.DeleteMedicalScribeJobInput) (*request.Request, *transcribeservice.DeleteMedicalScribeJobOutput) + DeleteMedicalTranscriptionJob(*transcribeservice.DeleteMedicalTranscriptionJobInput) (*transcribeservice.DeleteMedicalTranscriptionJobOutput, error) DeleteMedicalTranscriptionJobWithContext(aws.Context, *transcribeservice.DeleteMedicalTranscriptionJobInput, ...request.Option) (*transcribeservice.DeleteMedicalTranscriptionJobOutput, error) DeleteMedicalTranscriptionJobRequest(*transcribeservice.DeleteMedicalTranscriptionJobInput) (*request.Request, *transcribeservice.DeleteMedicalTranscriptionJobOutput) @@ -124,6 +128,10 @@ GetCallAnalyticsJobWithContext(aws.Context, *transcribeservice.GetCallAnalyticsJobInput, ...request.Option) (*transcribeservice.GetCallAnalyticsJobOutput, error) GetCallAnalyticsJobRequest(*transcribeservice.GetCallAnalyticsJobInput) (*request.Request, *transcribeservice.GetCallAnalyticsJobOutput) + GetMedicalScribeJob(*transcribeservice.GetMedicalScribeJobInput) (*transcribeservice.GetMedicalScribeJobOutput, error) + GetMedicalScribeJobWithContext(aws.Context, *transcribeservice.GetMedicalScribeJobInput, ...request.Option) (*transcribeservice.GetMedicalScribeJobOutput, error) + GetMedicalScribeJobRequest(*transcribeservice.GetMedicalScribeJobInput) (*request.Request, *transcribeservice.GetMedicalScribeJobOutput) + GetMedicalTranscriptionJob(*transcribeservice.GetMedicalTranscriptionJobInput) (*transcribeservice.GetMedicalTranscriptionJobOutput, error) GetMedicalTranscriptionJobWithContext(aws.Context, *transcribeservice.GetMedicalTranscriptionJobInput, ...request.Option) (*transcribeservice.GetMedicalTranscriptionJobOutput, error) GetMedicalTranscriptionJobRequest(*transcribeservice.GetMedicalTranscriptionJobInput) (*request.Request, *transcribeservice.GetMedicalTranscriptionJobOutput) @@ -165,6 +173,13 @@ ListLanguageModelsPages(*transcribeservice.ListLanguageModelsInput, func(*transcribeservice.ListLanguageModelsOutput, bool) bool) error ListLanguageModelsPagesWithContext(aws.Context, *transcribeservice.ListLanguageModelsInput, func(*transcribeservice.ListLanguageModelsOutput, bool) bool, ...request.Option) error + ListMedicalScribeJobs(*transcribeservice.ListMedicalScribeJobsInput) (*transcribeservice.ListMedicalScribeJobsOutput, error) + ListMedicalScribeJobsWithContext(aws.Context, *transcribeservice.ListMedicalScribeJobsInput, ...request.Option) (*transcribeservice.ListMedicalScribeJobsOutput, error) + ListMedicalScribeJobsRequest(*transcribeservice.ListMedicalScribeJobsInput) (*request.Request, *transcribeservice.ListMedicalScribeJobsOutput) + + ListMedicalScribeJobsPages(*transcribeservice.ListMedicalScribeJobsInput, func(*transcribeservice.ListMedicalScribeJobsOutput, bool) bool) error + ListMedicalScribeJobsPagesWithContext(aws.Context, *transcribeservice.ListMedicalScribeJobsInput, func(*transcribeservice.ListMedicalScribeJobsOutput, bool) bool, ...request.Option) error + ListMedicalTranscriptionJobs(*transcribeservice.ListMedicalTranscriptionJobsInput) (*transcribeservice.ListMedicalTranscriptionJobsOutput, error) ListMedicalTranscriptionJobsWithContext(aws.Context, *transcribeservice.ListMedicalTranscriptionJobsInput, ...request.Option) (*transcribeservice.ListMedicalTranscriptionJobsOutput, error) ListMedicalTranscriptionJobsRequest(*transcribeservice.ListMedicalTranscriptionJobsInput) (*request.Request, *transcribeservice.ListMedicalTranscriptionJobsOutput) @@ -208,6 +223,10 @@ StartCallAnalyticsJobWithContext(aws.Context, *transcribeservice.StartCallAnalyticsJobInput, ...request.Option) (*transcribeservice.StartCallAnalyticsJobOutput, error) StartCallAnalyticsJobRequest(*transcribeservice.StartCallAnalyticsJobInput) (*request.Request, *transcribeservice.StartCallAnalyticsJobOutput) + StartMedicalScribeJob(*transcribeservice.StartMedicalScribeJobInput) (*transcribeservice.StartMedicalScribeJobOutput, error) + StartMedicalScribeJobWithContext(aws.Context, *transcribeservice.StartMedicalScribeJobInput, ...request.Option) (*transcribeservice.StartMedicalScribeJobOutput, error) + StartMedicalScribeJobRequest(*transcribeservice.StartMedicalScribeJobInput) (*request.Request, *transcribeservice.StartMedicalScribeJobOutput) + StartMedicalTranscriptionJob(*transcribeservice.StartMedicalTranscriptionJobInput) (*transcribeservice.StartMedicalTranscriptionJobOutput, error) StartMedicalTranscriptionJobWithContext(aws.Context, *transcribeservice.StartMedicalTranscriptionJobInput, ...request.Option) (*transcribeservice.StartMedicalTranscriptionJobOutput, error) StartMedicalTranscriptionJobRequest(*transcribeservice.StartMedicalTranscriptionJobInput) (*request.Request, *transcribeservice.StartMedicalTranscriptionJobOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/transcribestreamingservice/api.go golang-github-aws-aws-sdk-go-1.48.14/service/transcribestreamingservice/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/transcribestreamingservice/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/transcribestreamingservice/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -886,7 +886,7 @@ // // The following parameters are required: // -// - language-code or identify-language +// - language-code or identify-language or identify-multiple-language // // - media-encoding // @@ -4390,13 +4390,33 @@ // channel, and you've enabled channel identification, automatic language identification // identifies the dominant language on each audio channel. // - // Note that you must include either LanguageCode or IdentifyLanguage in your - // request. If you include both parameters, your request fails. + // Note that you must include either LanguageCode or IdentifyLanguage or IdentifyMultipleLanguages + // in your request. If you include more than one of these parameters, your transcription + // job fails. // // Streaming language identification can't be combined with custom language // models or redaction. IdentifyLanguage *bool `location:"header" locationName:"x-amzn-transcribe-identify-language" type:"boolean"` + // Enables automatic multi-language identification in your transcription job + // request. Use this parameter if your stream contains more than one language. + // If your stream contains only one language, use IdentifyLanguage instead. + // + // If you include IdentifyMultipleLanguages, you can optionally include a list + // of language codes, using LanguageOptions, that you think may be present in + // your stream. Including LanguageOptions restricts IdentifyMultipleLanguages + // to only the language options that you specify, which can improve transcription + // accuracy. + // + // If you want to apply a custom vocabulary or a custom vocabulary filter to + // your automatic multiple language identification request, include VocabularyNames + // or VocabularyFilterNames. + // + // Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages + // in your request. If you include more than one of these parameters, your transcription + // job fails. + IdentifyMultipleLanguages *bool `location:"header" locationName:"x-amzn-transcribe-identify-multiple-languages" type:"boolean"` + // Specify the language code that represents the language spoken in your audio. // // If you're unsure of the language spoken in your audio, consider using IdentifyLanguage @@ -4667,6 +4687,12 @@ return s } +// SetIdentifyMultipleLanguages sets the IdentifyMultipleLanguages field's value. +func (s *StartStreamTranscriptionInput) SetIdentifyMultipleLanguages(v bool) *StartStreamTranscriptionInput { + s.IdentifyMultipleLanguages = &v + return s +} + // SetLanguageCode sets the LanguageCode field's value. func (s *StartStreamTranscriptionInput) SetLanguageCode(v string) *StartStreamTranscriptionInput { s.LanguageCode = &v @@ -4783,6 +4809,10 @@ // Shows whether automatic language identification was enabled for your transcription. IdentifyLanguage *bool `location:"header" locationName:"x-amzn-transcribe-identify-language" type:"boolean"` + // Shows whether automatic multi-language identification was enabled for your + // transcription. + IdentifyMultipleLanguages *bool `location:"header" locationName:"x-amzn-transcribe-identify-multiple-languages" type:"boolean"` + // Provides the language code that you specified in your request. LanguageCode *string `location:"header" locationName:"x-amzn-transcribe-language-code" type:"string" enum:"LanguageCode"` @@ -4887,6 +4917,12 @@ return s } +// SetIdentifyMultipleLanguages sets the IdentifyMultipleLanguages field's value. +func (s *StartStreamTranscriptionOutput) SetIdentifyMultipleLanguages(v bool) *StartStreamTranscriptionOutput { + s.IdentifyMultipleLanguages = &v + return s +} + // SetLanguageCode sets the LanguageCode field's value. func (s *StartStreamTranscriptionOutput) SetLanguageCode(v string) *StartStreamTranscriptionOutput { s.LanguageCode = &v diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/transfer/api.go golang-github-aws-aws-sdk-go-1.48.14/service/transfer/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/transfer/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/transfer/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -72,23 +72,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateAccess func (c *Transfer) CreateAccess(input *CreateAccessInput) (*CreateAccessOutput, error) { @@ -173,27 +173,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateAgreement func (c *Transfer) CreateAgreement(input *CreateAgreementInput) (*CreateAgreementOutput, error) { req, out := c.CreateAgreementRequest(input) @@ -278,27 +278,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateConnector func (c *Transfer) CreateConnector(input *CreateConnectorInput) (*CreateConnectorOutput, error) { req, out := c.CreateConnectorRequest(input) @@ -375,24 +375,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateProfile func (c *Transfer) CreateProfile(input *CreateProfileInput) (*CreateProfileOutput, error) { req, out := c.CreateProfileRequest(input) @@ -472,30 +471,30 @@ // // Returned Error Types: // -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServer func (c *Transfer) CreateServer(input *CreateServerInput) (*CreateServerOutput, error) { req, out := c.CreateServerRequest(input) @@ -578,23 +577,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUser func (c *Transfer) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) { @@ -675,25 +674,25 @@ // // Returned Error Types: // -// - AccessDeniedException -// You do not have sufficient access to perform this action. +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. +// - ThrottlingException +// The request was denied due to request throttling. // // - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. +// This exception is thrown when an error occurs in the Transfer Family service. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // - ResourceExistsException -// The requested resource does not exist. +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. // -// - ThrottlingException -// The request was denied due to request throttling. +// - AccessDeniedException +// You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflow func (c *Transfer) CreateWorkflow(input *CreateWorkflowInput) (*CreateWorkflowOutput, error) { @@ -773,20 +772,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteAccess func (c *Transfer) DeleteAccess(input *DeleteAccessInput) (*DeleteAccessOutput, error) { @@ -865,20 +863,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteAgreement func (c *Transfer) DeleteAgreement(input *DeleteAgreementInput) (*DeleteAgreementOutput, error) { @@ -957,20 +954,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteCertificate func (c *Transfer) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) { @@ -1049,20 +1045,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteConnector func (c *Transfer) DeleteConnector(input *DeleteConnectorInput) (*DeleteConnectorOutput, error) { @@ -1141,24 +1136,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteHostKey func (c *Transfer) DeleteHostKey(input *DeleteHostKeyInput) (*DeleteHostKeyOutput, error) { req, out := c.DeleteHostKeyRequest(input) @@ -1236,20 +1230,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteProfile func (c *Transfer) DeleteProfile(input *DeleteProfileInput) (*DeleteProfileOutput, error) { @@ -1330,23 +1323,22 @@ // // Returned Error Types: // -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteServer func (c *Transfer) DeleteServer(input *DeleteServerInput) (*DeleteServerOutput, error) { @@ -1425,24 +1417,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteSshPublicKey func (c *Transfer) DeleteSshPublicKey(input *DeleteSshPublicKeyInput) (*DeleteSshPublicKeyOutput, error) { req, out := c.DeleteSshPublicKeyRequest(input) @@ -1525,20 +1516,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteUser func (c *Transfer) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { @@ -1617,23 +1607,22 @@ // // Returned Error Types: // -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteWorkflow func (c *Transfer) DeleteWorkflow(input *DeleteWorkflowInput) (*DeleteWorkflowOutput, error) { @@ -1715,20 +1704,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeAccess func (c *Transfer) DescribeAccess(input *DescribeAccessInput) (*DescribeAccessOutput, error) { @@ -1806,20 +1794,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeAgreement func (c *Transfer) DescribeAgreement(input *DescribeAgreementInput) (*DescribeAgreementOutput, error) { @@ -1897,20 +1884,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeCertificate func (c *Transfer) DescribeCertificate(input *DescribeCertificateInput) (*DescribeCertificateOutput, error) { @@ -1988,20 +1974,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeConnector func (c *Transfer) DescribeConnector(input *DescribeConnectorInput) (*DescribeConnectorOutput, error) { @@ -2086,20 +2071,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecution func (c *Transfer) DescribeExecution(input *DescribeExecutionInput) (*DescribeExecutionOutput, error) { @@ -2178,20 +2162,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeHostKey func (c *Transfer) DescribeHostKey(input *DescribeHostKeyInput) (*DescribeHostKeyOutput, error) { @@ -2269,20 +2252,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeProfile func (c *Transfer) DescribeProfile(input *DescribeProfileInput) (*DescribeProfileOutput, error) { @@ -2363,20 +2345,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeSecurityPolicy func (c *Transfer) DescribeSecurityPolicy(input *DescribeSecurityPolicyInput) (*DescribeSecurityPolicyOutput, error) { @@ -2458,20 +2439,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServer func (c *Transfer) DescribeServer(input *DescribeServerInput) (*DescribeServerOutput, error) { @@ -2553,20 +2533,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeUser func (c *Transfer) DescribeUser(input *DescribeUserInput) (*DescribeUserOutput, error) { @@ -2644,20 +2623,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflow func (c *Transfer) DescribeWorkflow(input *DescribeWorkflowInput) (*DescribeWorkflowOutput, error) { @@ -2736,20 +2714,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportCertificate func (c *Transfer) ImportCertificate(input *ImportCertificateInput) (*ImportCertificateOutput, error) { @@ -2827,27 +2804,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportHostKey func (c *Transfer) ImportHostKey(input *ImportHostKeyInput) (*ImportHostKeyOutput, error) { req, out := c.ImportHostKeyRequest(input) @@ -2929,27 +2906,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey func (c *Transfer) ImportSshPublicKey(input *ImportSshPublicKeyInput) (*ImportSshPublicKeyOutput, error) { req, out := c.ImportSshPublicKeyRequest(input) @@ -3032,24 +3009,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListAccesses func (c *Transfer) ListAccesses(input *ListAccessesInput) (*ListAccessesOutput, error) { req, out := c.ListAccessesRequest(input) @@ -3187,24 +3163,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListAgreements func (c *Transfer) ListAgreements(input *ListAgreementsInput) (*ListAgreementsOutput, error) { req, out := c.ListAgreementsRequest(input) @@ -3342,24 +3317,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListCertificates func (c *Transfer) ListCertificates(input *ListCertificatesInput) (*ListCertificatesOutput, error) { req, out := c.ListCertificatesRequest(input) @@ -3493,24 +3467,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListConnectors func (c *Transfer) ListConnectors(input *ListConnectorsInput) (*ListConnectorsOutput, error) { req, out := c.ListConnectorsRequest(input) @@ -3647,24 +3620,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutions func (c *Transfer) ListExecutions(input *ListExecutionsInput) (*ListExecutionsOutput, error) { req, out := c.ListExecutionsRequest(input) @@ -3793,24 +3765,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListHostKeys func (c *Transfer) ListHostKeys(input *ListHostKeysInput) (*ListHostKeysOutput, error) { req, out := c.ListHostKeysRequest(input) @@ -3896,24 +3867,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListProfiles func (c *Transfer) ListProfiles(input *ListProfilesInput) (*ListProfilesOutput, error) { req, out := c.ListProfilesRequest(input) @@ -4048,20 +4018,19 @@ // // Returned Error Types: // +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListSecurityPolicies func (c *Transfer) ListSecurityPolicies(input *ListSecurityPoliciesInput) (*ListSecurityPoliciesOutput, error) { req, out := c.ListSecurityPoliciesRequest(input) @@ -4196,20 +4165,19 @@ // // Returned Error Types: // +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServers func (c *Transfer) ListServers(input *ListServersInput) (*ListServersOutput, error) { req, out := c.ListServersRequest(input) @@ -4344,20 +4312,19 @@ // // Returned Error Types: // +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListTagsForResource func (c *Transfer) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) @@ -4492,24 +4459,23 @@ // // Returned Error Types: // +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListUsers func (c *Transfer) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { req, out := c.ListUsersRequest(input) @@ -4644,20 +4610,19 @@ // // Returned Error Types: // +// - InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// // - ServiceUnavailableException // The request has failed because the Amazon Web ServicesTransfer Family service // is not available. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. -// // - InvalidNextTokenException // The NextToken parameter that was passed is invalid. // -// - InvalidRequestException -// This exception is thrown when the client submits a malformed request. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflows func (c *Transfer) ListWorkflows(input *ListWorkflowsInput) (*ListWorkflowsOutput, error) { req, out := c.ListWorkflowsRequest(input) @@ -4790,27 +4755,26 @@ // // Returned Error Types: // -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepState func (c *Transfer) SendWorkflowStepState(input *SendWorkflowStepStateInput) (*SendWorkflowStepStateOutput, error) { req, out := c.SendWorkflowStepStateRequest(input) @@ -4902,24 +4866,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartFileTransfer func (c *Transfer) StartFileTransfer(input *StartFileTransferInput) (*StartFileTransferOutput, error) { req, out := c.StartFileTransferRequest(input) @@ -5005,24 +4968,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServer func (c *Transfer) StartServer(input *StartServerInput) (*StartServerOutput, error) { req, out := c.StartServerRequest(input) @@ -5112,24 +5074,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StopServer func (c *Transfer) StopServer(input *StopServerInput) (*StopServerOutput, error) { req, out := c.StopServerRequest(input) @@ -5210,20 +5171,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TagResource func (c *Transfer) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { @@ -5292,7 +5252,7 @@ // // Tests whether your SFTP connector is set up successfully. We highly recommend // that you call this operation to test your ability to transfer files between -// a Transfer Family server and a trading partner's SFTP server. +// local Amazon Web Services storage and a trading partner's SFTP server. // // 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 @@ -5303,20 +5263,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TestConnection func (c *Transfer) TestConnection(input *TestConnectionInput) (*TestConnectionOutput, error) { @@ -5427,20 +5386,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TestIdentityProvider func (c *Transfer) TestIdentityProvider(input *TestIdentityProviderInput) (*TestIdentityProviderOutput, error) { @@ -5522,20 +5480,19 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UntagResource func (c *Transfer) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { @@ -5614,27 +5571,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAccess func (c *Transfer) UpdateAccess(input *UpdateAccessInput) (*UpdateAccessOutput, error) { req, out := c.UpdateAccessRequest(input) @@ -5713,27 +5670,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAgreement func (c *Transfer) UpdateAgreement(input *UpdateAgreementInput) (*UpdateAgreementOutput, error) { req, out := c.UpdateAgreementRequest(input) @@ -5810,24 +5767,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateCertificate func (c *Transfer) UpdateCertificate(input *UpdateCertificateInput) (*UpdateCertificateOutput, error) { req, out := c.UpdateCertificateRequest(input) @@ -5906,27 +5862,27 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateConnector func (c *Transfer) UpdateConnector(input *UpdateConnectorInput) (*UpdateConnectorOutput, error) { req, out := c.UpdateConnectorRequest(input) @@ -6004,24 +5960,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateHostKey func (c *Transfer) UpdateHostKey(input *UpdateHostKeyInput) (*UpdateHostKeyOutput, error) { req, out := c.UpdateHostKeyRequest(input) @@ -6100,24 +6055,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateProfile func (c *Transfer) UpdateProfile(input *UpdateProfileInput) (*UpdateProfileOutput, error) { req, out := c.UpdateProfileRequest(input) @@ -6197,35 +6151,35 @@ // // Returned Error Types: // -// - AccessDeniedException -// You do not have sufficient access to perform this action. -// -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// // - ConflictException // This exception is thrown when the UpdateServer is called for a file transfer // protocol-enabled server that has VPC as the endpoint type and the server's // VpcEndpointID is not in the available state. // -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceExistsException -// The requested resource does not exist. -// -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// - ResourceExistsException +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServer func (c *Transfer) UpdateServer(input *UpdateServerInput) (*UpdateServerOutput, error) { req, out := c.UpdateServerRequest(input) @@ -6306,24 +6260,23 @@ // // Returned Error Types: // -// - ServiceUnavailableException -// The request has failed because the Amazon Web ServicesTransfer Family service -// is not available. -// -// - InternalServiceError -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// - ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // // - InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// - ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// // - ThrottlingException // The request was denied due to request throttling. // +// - InternalServiceError +// This exception is thrown when an error occurs in the Transfer Family service. +// +// - ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUser func (c *Transfer) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { req, out := c.UpdateUserRequest(input) @@ -6773,6 +6726,8 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -6798,10 +6753,15 @@ // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A session policy for your user so that you can use the same Identity and @@ -7692,7 +7652,7 @@ // role that allows a server to turn on Amazon CloudWatch logging for Amazon // S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch // logs. - LoggingRole *string `min:"20" type:"string"` + LoggingRole *string `type:"string"` // Specifies a string to display when users connect to a server. This string // is displayed after the user authenticates. @@ -7765,6 +7725,14 @@ // must be Amazon S3. Protocols []*string `min:"1" type:"list" enum:"Protocol"` + // Specifies whether or not performance for your Amazon S3 directories is optimized. + // This is disabled by default. + // + // By default, home directory mappings have a TYPE of DIRECTORY. If you enable + // this option, you would then need to explicitly set the HomeDirectoryMapEntry + // Type to FILE if you want a mapping to have a file target. + S3StorageOptions *S3StorageOptions `type:"structure"` + // Specifies the name of the security policy that is attached to the server. SecurityPolicyName *string `type:"string"` @@ -7818,9 +7786,6 @@ // Validate inspects the fields of the type to determine if they are valid. func (s *CreateServerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateServerInput"} - if s.LoggingRole != nil && len(*s.LoggingRole) < 20 { - invalidParams.Add(request.NewErrParamMinLen("LoggingRole", 20)) - } if s.Protocols != nil && len(s.Protocols) < 1 { invalidParams.Add(request.NewErrParamMinLen("Protocols", 1)) } @@ -7936,6 +7901,12 @@ return s } +// SetS3StorageOptions sets the S3StorageOptions field's value. +func (s *CreateServerInput) SetS3StorageOptions(v *S3StorageOptions) *CreateServerInput { + s.S3StorageOptions = v + return s +} + // SetSecurityPolicyName sets the SecurityPolicyName field's value. func (s *CreateServerInput) SetSecurityPolicyName(v string) *CreateServerInput { s.SecurityPolicyName = &v @@ -8000,6 +7971,8 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -8026,10 +7999,15 @@ // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A session policy for your user so that you can use the same Identity and @@ -10591,6 +10569,8 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -10609,10 +10589,15 @@ // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A session policy for your user so that you can use the same Identity and @@ -11573,7 +11558,7 @@ // role that allows a server to turn on Amazon CloudWatch logging for Amazon // S3 or Amazon EFSevents. When set, you can view user activity in your CloudWatch // logs. - LoggingRole *string `min:"20" type:"string"` + LoggingRole *string `type:"string"` // Specifies a string to display when users connect to a server. This string // is displayed after the user authenticates. @@ -11646,6 +11631,14 @@ // must be Amazon S3. Protocols []*string `min:"1" type:"list" enum:"Protocol"` + // Specifies whether or not performance for your Amazon S3 directories is optimized. + // This is disabled by default. + // + // By default, home directory mappings have a TYPE of DIRECTORY. If you enable + // this option, you would then need to explicitly set the HomeDirectoryMapEntry + // Type to FILE if you want a mapping to have a file target. + S3StorageOptions *S3StorageOptions `type:"structure"` + // Specifies the name of the security policy that is attached to the server. SecurityPolicyName *string `type:"string"` @@ -11791,6 +11784,12 @@ return s } +// SetS3StorageOptions sets the S3StorageOptions field's value. +func (s *DescribedServer) SetS3StorageOptions(v *S3StorageOptions) *DescribedServer { + s.S3StorageOptions = v + return s +} + // SetSecurityPolicyName sets the SecurityPolicyName field's value. func (s *DescribedServer) SetSecurityPolicyName(v string) *DescribedServer { s.SecurityPolicyName = &v @@ -11847,6 +11846,8 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -11864,10 +11865,15 @@ // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A session policy for your user so that you can use the same Identity and @@ -12469,10 +12475,18 @@ // Entry is a required field Entry *string `type:"string" required:"true"` - // Represents the map target that is used in a HomeDirectorymapEntry. + // Represents the map target that is used in a HomeDirectoryMapEntry. // // Target is a required field Target *string `type:"string" required:"true"` + + // Specifies the type of mapping. Set the type to FILE if you want the mapping + // to point to a file, or DIRECTORY for the directory to point to a directory. + // + // By default, home directory mappings have a Type of DIRECTORY when you create + // a Transfer Family server. You would need to explicitly set Type to FILE if + // you want a mapping to have a file target. + Type *string `type:"string" enum:"MapType"` } // String returns the string representation. @@ -12521,6 +12535,12 @@ return s } +// SetType sets the Type field's value. +func (s *HomeDirectoryMapEntry) SetType(v string) *HomeDirectoryMapEntry { + s.Type = &v + return s +} + // Returns information related to the type of user authentication that is in // use for a file transfer protocol-enabled server's users. A server can have // only one method of authentication. @@ -13167,8 +13187,7 @@ return s } -// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer -// Family service. +// This exception is thrown when an error occurs in the Transfer Family service. type InternalServiceError struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -14543,9 +14562,9 @@ // Specifies the number of users to return as a response to the ListUsers request. MaxResults *int64 `min:"1" type:"integer"` - // When you can get additional results from the ListUsers call, a NextToken - // parameter is returned in the output. You can then pass in a subsequent command - // to the NextToken parameter to continue listing additional users. + // If there are additional results from the ListUsers call, a NextToken parameter + // is returned in the output. You can then pass the NextToken to a subsequent + // ListUsers command, to continue listing additional users. NextToken *string `min:"1" type:"string"` // A system-assigned unique identifier for a server that has users assigned @@ -14797,14 +14816,21 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) @@ -15456,14 +15482,21 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) @@ -15855,7 +15888,8 @@ return s } -// The requested resource does not exist. +// The requested resource does not exist, or exists in a region other than the +// one specified for the command. type ResourceExistsException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -16126,6 +16160,43 @@ return s } +// The Amazon S3 storage options that are configured for your server. +type S3StorageOptions struct { + _ struct{} `type:"structure"` + + // Specifies whether or not performance for your Amazon S3 directories is optimized. + // This is disabled by default. + // + // By default, home directory mappings have a TYPE of DIRECTORY. If you enable + // this option, you would then need to explicitly set the HomeDirectoryMapEntry + // Type to FILE if you want a mapping to have a file target. + DirectoryListingOptimization *string `type:"string" enum:"DirectoryListingOptimization"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3StorageOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3StorageOptions) GoString() string { + return s.String() +} + +// SetDirectoryListingOptimization sets the DirectoryListingOptimization field's value. +func (s *S3StorageOptions) SetDirectoryListingOptimization(v string) *S3StorageOptions { + s.DirectoryListingOptimization = &v + return s +} + // Specifies the key-value pair that are assigned to a file during the execution // of a Tagging step. type S3Tag struct { @@ -16416,25 +16487,27 @@ type SftpConnectorConfig struct { _ struct{} `type:"structure"` - // The public portion of the host key, or keys, that are used to authenticate - // the user to the external server to which you are connecting. You can use - // the ssh-keyscan command against the SFTP server to retrieve the necessary - // key. + // The public portion of the host key, or keys, that are used to identify the + // external server to which you are connecting. You can use the ssh-keyscan + // command against the SFTP server to retrieve the necessary key. // // The three standard SSH public key format elements are , , - // and an optional , with spaces between each element. + // and an optional , with spaces between each element. Specify only + // the and : do not enter the portion of the + // key. // // For the trusted host key, Transfer Family accepts RSA and ECDSA keys. // - // * For RSA keys, the key type is ssh-rsa. + // * For RSA keys, the string is ssh-rsa. // - // * For ECDSA keys, the key type is either ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, - // or ecdsa-sha2-nistp521, depending on the size of the key you generated. + // * For ECDSA keys, the string is either ecdsa-sha2-nistp256, + // ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521, depending on the size of + // the key you generated. TrustedHostKeys []*string `min:"1" type:"list"` // The identifier for the secret (in Amazon Web Services Secrets Manager) that - // contains the SFTP user's private key, password, or both. The identifier can - // be either the Amazon Resource Name (ARN) or the name of the secret. + // contains the SFTP user's private key, password, or both. The identifier must + // be the Amazon Resource Name (ARN) of the secret. UserSecretId *string `min:"1" type:"string"` } @@ -17138,21 +17211,18 @@ Status *string `type:"string"` // Returns Connection succeeded if the test is successful. Or, returns a descriptive - // error message if the test fails. The following list provides the details - // for some error messages and troubleshooting steps for each. + // error message if the test fails. The following list provides troubleshooting + // details, depending on the error message that you receive. // - // * Unable to access secrets manager: Verify that your secret name aligns - // with the one in Transfer Role permissions. + // * Verify that your secret name aligns with the one in Transfer Role permissions. // - // * Unknown Host/Connection failed: Verify the server URL in the connector - // configuration , and verify that the login credentials work successfully - // outside of the connector. + // * Verify the server URL in the connector configuration , and verify that + // the login credentials work successfully outside of the connector. // - // * Private key not found: Verify that the secret exists and is formatted - // correctly. + // * Verify that the secret exists and is formatted correctly. // - // * Invalid trusted host keys: Verify that the trusted host key in the connector - // configuration matches the ssh-keyscan output. + // * Verify that the trusted host key in the connector configuration matches + // the ssh-keyscan output. StatusMessage *string `type:"string"` } @@ -17550,6 +17620,8 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -17575,10 +17647,15 @@ // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A session policy for your user so that you can use the same Identity and @@ -18662,6 +18739,14 @@ // must be Amazon S3. Protocols []*string `min:"1" type:"list" enum:"Protocol"` + // Specifies whether or not performance for your Amazon S3 directories is optimized. + // This is disabled by default. + // + // By default, home directory mappings have a TYPE of DIRECTORY. If you enable + // this option, you would then need to explicitly set the HomeDirectoryMapEntry + // Type to FILE if you want a mapping to have a file target. + S3StorageOptions *S3StorageOptions `type:"structure"` + // Specifies the name of the security policy that is attached to the server. SecurityPolicyName *string `type:"string"` @@ -18820,6 +18905,12 @@ return s } +// SetS3StorageOptions sets the S3StorageOptions field's value. +func (s *UpdateServerInput) SetS3StorageOptions(v *S3StorageOptions) *UpdateServerInput { + s.S3StorageOptions = v + return s +} + // SetSecurityPolicyName sets the SecurityPolicyName field's value. func (s *UpdateServerInput) SetSecurityPolicyName(v string) *UpdateServerInput { s.SecurityPolicyName = &v @@ -18885,6 +18976,8 @@ // using the client. // // A HomeDirectory example is /bucket_name/home/mydirectory. + // + // The HomeDirectory parameter is only used if HomeDirectoryType is set to PATH. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -18910,10 +19003,15 @@ // The type of landing directory (folder) that you want your users' home directory // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you need to provide mappings in - // the HomeDirectoryMappings for how you want to make Amazon S3 or Amazon EFS - // paths visible to your users. + // see the absolute Amazon S3 bucket or Amazon EFS path as is in their file + // transfer protocol clients. If you set it to LOGICAL, you need to provide + // mappings in the HomeDirectoryMappings for how you want to make Amazon S3 + // or Amazon EFS paths visible to your users. + // + // If HomeDirectoryType is LOGICAL, you must provide mappings, using the HomeDirectoryMappings + // parameter. If, on the other hand, HomeDirectoryType is PATH, you provide + // an absolute path using the HomeDirectory parameter. You cannot have both + // HomeDirectory and HomeDirectoryMappings in your template. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A session policy for your user so that you can use the same Identity and @@ -19596,6 +19694,24 @@ } } +// Indicates whether optimization to directory listing on S3 servers is used. +// Disabled by default for compatibility. +const ( + // DirectoryListingOptimizationEnabled is a DirectoryListingOptimization enum value + DirectoryListingOptimizationEnabled = "ENABLED" + + // DirectoryListingOptimizationDisabled is a DirectoryListingOptimization enum value + DirectoryListingOptimizationDisabled = "DISABLED" +) + +// DirectoryListingOptimization_Values returns all elements of the DirectoryListingOptimization enum +func DirectoryListingOptimization_Values() []string { + return []string{ + DirectoryListingOptimizationEnabled, + DirectoryListingOptimizationDisabled, + } +} + const ( // DomainS3 is a Domain enum value DomainS3 = "S3" @@ -19790,6 +19906,22 @@ } } +const ( + // MapTypeFile is a MapType enum value + MapTypeFile = "FILE" + + // MapTypeDirectory is a MapType enum value + MapTypeDirectory = "DIRECTORY" +) + +// MapType_Values returns all elements of the MapType enum +func MapType_Values() []string { + return []string{ + MapTypeFile, + MapTypeDirectory, + } +} + const ( // MdnResponseSync is a MdnResponse enum value MdnResponseSync = "SYNC" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/transfer/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/transfer/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/transfer/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/transfer/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -25,8 +25,7 @@ // ErrCodeInternalServiceError for service response error code // "InternalServiceError". // - // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer - // Family service. + // This exception is thrown when an error occurs in the Transfer Family service. ErrCodeInternalServiceError = "InternalServiceError" // ErrCodeInvalidNextTokenException for service response error code @@ -44,7 +43,8 @@ // ErrCodeResourceExistsException for service response error code // "ResourceExistsException". // - // The requested resource does not exist. + // The requested resource does not exist, or exists in a region other than the + // one specified for the command. ErrCodeResourceExistsException = "ResourceExistsException" // ErrCodeResourceNotFoundException for service response error code diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/translate/api.go golang-github-aws-aws-sdk-go-1.48.14/service/translate/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/translate/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/translate/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -1823,12 +1823,11 @@ // TranslateDocument API operation for Amazon Translate. // // Translates the input document from the source language to the target language. -// This synchronous operation supports plain text or HTML for the input document. -// TranslateDocument supports translations from English to any supported language, -// and from any supported language to English. Therefore, specify either the -// source language code or the target language code as “en” (English). -// -// TranslateDocument does not support language auto-detection. +// This synchronous operation supports text, HTML, or Word documents as the +// input document. TranslateDocument supports translations from English to any +// supported language, and from any supported language to English. Therefore, +// specify either the source language code or the target language code as “en” +// (English). // // If you set the Formality parameter, the request will fail if the target language // does not support formality. For a list of target languages that support formality, @@ -2341,11 +2340,6 @@ invalidParams.AddNested("EncryptionKey", err.(request.ErrInvalidParams)) } } - if s.ParallelDataConfig != nil { - if err := s.ParallelDataConfig.Validate(); err != nil { - invalidParams.AddNested("ParallelDataConfig", err.(request.ErrInvalidParams)) - } - } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -4400,15 +4394,11 @@ _ struct{} `type:"structure"` // The format of the parallel data input file. - // - // Format is a required field - Format *string `type:"string" required:"true" enum:"ParallelDataFormat"` + Format *string `type:"string" enum:"ParallelDataFormat"` // The URI of the Amazon S3 folder that contains the parallel data input file. // The folder must be in the same Region as the API endpoint you are calling. - // - // S3Uri is a required field - S3Uri *string `type:"string" required:"true"` + S3Uri *string `type:"string"` } // String returns the string representation. @@ -4429,22 +4419,6 @@ return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ParallelDataConfig) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ParallelDataConfig"} - if s.Format == nil { - invalidParams.Add(request.NewErrParamRequired("Format")) - } - if s.S3Uri == nil { - invalidParams.Add(request.NewErrParamRequired("S3Uri")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - // SetFormat sets the Format field's value. func (s *ParallelDataConfig) SetFormat(v string) *ParallelDataConfig { s.Format = &v @@ -4881,9 +4855,14 @@ // (https://docs.aws.amazon.com/translate/latest/dg/customizing-translations-parallel-data.html). ParallelDataNames []*string `type:"list"` - // Settings to configure your translation output, including the option to set - // the formality level of the output text and the option to mask profane words - // and phrases. + // Settings to configure your translation output. You can configure the following + // options: + // + // * Brevity: not supported. + // + // * Formality: sets the formality level of the output text. + // + // * Profanity: masks profane words and phrases in your translation output. Settings *TranslationSettings `type:"structure"` // The language code of the input language. Specify the language if all input @@ -5723,9 +5702,14 @@ type TextInput struct { _ struct{} `type:"structure"` - // Settings to configure your translation output, including the option to set - // the formality level of the output text and the option to mask profane words - // and phrases. + // Settings to configure your translation output. You can configure the following + // options: + // + // * Brevity: reduces the length of the translated output for most translations. + // + // * Formality: sets the formality level of the output text. + // + // * Profanity: masks profane words and phrases in your translation output. Settings *TranslationSettings `type:"structure"` // The language code for the language of the source text. For a list of language @@ -6366,14 +6350,27 @@ // Document is a required field Document *Document `type:"structure" required:"true"` - // Settings to configure your translation output, including the option to set - // the formality level of the output text and the option to mask profane words - // and phrases. + // Settings to configure your translation output. You can configure the following + // options: + // + // * Brevity: not supported. + // + // * Formality: sets the formality level of the output text. + // + // * Profanity: masks profane words and phrases in your translation output. Settings *TranslationSettings `type:"structure"` - // The language code for the language of the source text. Do not use auto, because - // TranslateDocument does not support language auto-detection. For a list of - // supported language codes, see Supported languages (https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html). + // The language code for the language of the source text. For a list of supported + // language codes, see Supported languages (https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html). + // + // To have Amazon Translate determine the source language of your text, you + // can specify auto in the SourceLanguageCode field. If you specify auto, Amazon + // Translate will call Amazon Comprehend (https://docs.aws.amazon.com/comprehend/latest/dg/comprehend-general.html) + // to determine the source language. + // + // If you specify auto, you must send the TranslateDocument request in a region + // that supports Amazon Comprehend. Otherwise, the request returns an error + // indicating that autodetect is not supported. // // SourceLanguageCode is a required field SourceLanguageCode *string `min:"2" type:"string" required:"true"` @@ -6477,9 +6474,15 @@ type TranslateDocumentOutput struct { _ struct{} `type:"structure"` - // Settings to configure your translation output, including the option to set - // the formality level of the output text and the option to mask profane words - // and phrases. + // Settings to configure your translation output. You can configure the following + // options: + // + // * Brevity: reduces the length of the translation output for most translations. + // Available for TranslateText only. + // + // * Formality: sets the formality level of the translation output. + // + // * Profanity: masks profane words and phrases in the translation output. AppliedSettings *TranslationSettings `type:"structure"` // The names of the custom terminologies applied to the input text by Amazon @@ -6591,15 +6594,32 @@ return s } -// Settings to configure your translation output, including the option to set -// the formality level of the output text and the option to mask profane words -// and phrases. +// Settings to configure your translation output. You can configure the following +// options: +// +// - Brevity: reduces the length of the translation output for most translations. +// Available for TranslateText only. +// +// - Formality: sets the formality level of the translation output. +// +// - Profanity: masks profane words and phrases in the translation output. type TranslationSettings struct { _ struct{} `type:"structure"` - // You can optionally specify the desired level of formality for translations - // to supported target languages. The formality setting controls the level of - // formal language usage (also known as register (https://en.wikipedia.org/wiki/Register_(sociolinguistics))) + // When you turn on brevity, Amazon Translate reduces the length of the translation + // output for most translations (when compared with the same translation with + // brevity turned off). By default, brevity is turned off. + // + // If you turn on brevity for a translation request with an unsupported language + // pair, the translation proceeds with the brevity setting turned off. + // + // For the language pairs that brevity supports, see Using brevity (https://docs.aws.amazon.com/translate/latest/dg/customizing-translations-brevity) + // in the Amazon Translate Developer Guide. + Brevity *string `type:"string" enum:"Brevity"` + + // You can specify the desired level of formality for translations to supported + // target languages. The formality setting controls the level of formal language + // usage (also known as register (https://en.wikipedia.org/wiki/Register_(sociolinguistics))) // in the translation output. You can set the value to informal or formal. If // you don't specify a value for formality, or if the target language doesn't // support formality, the translation will ignore the formality setting. @@ -6612,8 +6632,8 @@ // in the Amazon Translate Developer Guide. Formality *string `type:"string" enum:"Formality"` - // Enable the profanity setting if you want Amazon Translate to mask profane - // words and phrases in your translation output. + // You can enable the profanity setting if you want to mask profane words and + // phrases in your translation output. // // To mask profane words and phrases, Amazon Translate replaces them with the // grawlix string “?$#@$“. This 5-character sequence is used for each profane @@ -6649,6 +6669,12 @@ return s.String() } +// SetBrevity sets the Brevity field's value. +func (s *TranslationSettings) SetBrevity(v string) *TranslationSettings { + s.Brevity = &v + return s +} + // SetFormality sets the Formality field's value. func (s *TranslationSettings) SetFormality(v string) *TranslationSettings { s.Formality = &v @@ -6942,11 +6968,6 @@ if s.ParallelDataConfig == nil { invalidParams.Add(request.NewErrParamRequired("ParallelDataConfig")) } - if s.ParallelDataConfig != nil { - if err := s.ParallelDataConfig.Validate(); err != nil { - invalidParams.AddNested("ParallelDataConfig", err.(request.ErrInvalidParams)) - } - } if invalidParams.Len() > 0 { return invalidParams @@ -7039,6 +7060,18 @@ } const ( + // BrevityOn is a Brevity enum value + BrevityOn = "ON" +) + +// Brevity_Values returns all elements of the Brevity enum +func Brevity_Values() []string { + return []string{ + BrevityOn, + } +} + +const ( // DirectionalityUni is a Directionality enum value DirectionalityUni = "UNI" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/api.go golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,4633 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package trustedadvisor + +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/restjson" +) + +const opGetOrganizationRecommendation = "GetOrganizationRecommendation" + +// GetOrganizationRecommendationRequest generates a "aws/request.Request" representing the +// client's request for the GetOrganizationRecommendation 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 GetOrganizationRecommendation for more information on using the GetOrganizationRecommendation +// 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 GetOrganizationRecommendationRequest method. +// req, resp := client.GetOrganizationRecommendationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/GetOrganizationRecommendation +func (c *TrustedAdvisor) GetOrganizationRecommendationRequest(input *GetOrganizationRecommendationInput) (req *request.Request, output *GetOrganizationRecommendationOutput) { + op := &request.Operation{ + Name: opGetOrganizationRecommendation, + HTTPMethod: "GET", + HTTPPath: "/v1/organization-recommendations/{organizationRecommendationIdentifier}", + } + + if input == nil { + input = &GetOrganizationRecommendationInput{} + } + + output = &GetOrganizationRecommendationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetOrganizationRecommendation API operation for TrustedAdvisor Public API. +// +// Get a specific recommendation within an AWS Organizations organization. This +// API supports only prioritized recommendations. +// +// 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 TrustedAdvisor Public API's +// API operation GetOrganizationRecommendation for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/GetOrganizationRecommendation +func (c *TrustedAdvisor) GetOrganizationRecommendation(input *GetOrganizationRecommendationInput) (*GetOrganizationRecommendationOutput, error) { + req, out := c.GetOrganizationRecommendationRequest(input) + return out, req.Send() +} + +// GetOrganizationRecommendationWithContext is the same as GetOrganizationRecommendation with the addition of +// the ability to pass a context and additional request options. +// +// See GetOrganizationRecommendation 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 *TrustedAdvisor) GetOrganizationRecommendationWithContext(ctx aws.Context, input *GetOrganizationRecommendationInput, opts ...request.Option) (*GetOrganizationRecommendationOutput, error) { + req, out := c.GetOrganizationRecommendationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRecommendation = "GetRecommendation" + +// GetRecommendationRequest generates a "aws/request.Request" representing the +// client's request for the GetRecommendation 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 GetRecommendation for more information on using the GetRecommendation +// 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 GetRecommendationRequest method. +// req, resp := client.GetRecommendationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/GetRecommendation +func (c *TrustedAdvisor) GetRecommendationRequest(input *GetRecommendationInput) (req *request.Request, output *GetRecommendationOutput) { + op := &request.Operation{ + Name: opGetRecommendation, + HTTPMethod: "GET", + HTTPPath: "/v1/recommendations/{recommendationIdentifier}", + } + + if input == nil { + input = &GetRecommendationInput{} + } + + output = &GetRecommendationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRecommendation API operation for TrustedAdvisor Public API. +// +// # Get a specific Recommendation +// +// 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 TrustedAdvisor Public API's +// API operation GetRecommendation for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/GetRecommendation +func (c *TrustedAdvisor) GetRecommendation(input *GetRecommendationInput) (*GetRecommendationOutput, error) { + req, out := c.GetRecommendationRequest(input) + return out, req.Send() +} + +// GetRecommendationWithContext is the same as GetRecommendation with the addition of +// the ability to pass a context and additional request options. +// +// See GetRecommendation 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 *TrustedAdvisor) GetRecommendationWithContext(ctx aws.Context, input *GetRecommendationInput, opts ...request.Option) (*GetRecommendationOutput, error) { + req, out := c.GetRecommendationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListChecks = "ListChecks" + +// ListChecksRequest generates a "aws/request.Request" representing the +// client's request for the ListChecks 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 ListChecks for more information on using the ListChecks +// 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 ListChecksRequest method. +// req, resp := client.ListChecksRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListChecks +func (c *TrustedAdvisor) ListChecksRequest(input *ListChecksInput) (req *request.Request, output *ListChecksOutput) { + op := &request.Operation{ + Name: opListChecks, + HTTPMethod: "GET", + HTTPPath: "/v1/checks", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListChecksInput{} + } + + output = &ListChecksOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListChecks API operation for TrustedAdvisor Public API. +// +// # List a filterable set of Checks +// +// 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 TrustedAdvisor Public API's +// API operation ListChecks for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListChecks +func (c *TrustedAdvisor) ListChecks(input *ListChecksInput) (*ListChecksOutput, error) { + req, out := c.ListChecksRequest(input) + return out, req.Send() +} + +// ListChecksWithContext is the same as ListChecks with the addition of +// the ability to pass a context and additional request options. +// +// See ListChecks 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 *TrustedAdvisor) ListChecksWithContext(ctx aws.Context, input *ListChecksInput, opts ...request.Option) (*ListChecksOutput, error) { + req, out := c.ListChecksRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListChecksPages iterates over the pages of a ListChecks operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListChecks 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 ListChecks operation. +// pageNum := 0 +// err := client.ListChecksPages(params, +// func(page *trustedadvisor.ListChecksOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TrustedAdvisor) ListChecksPages(input *ListChecksInput, fn func(*ListChecksOutput, bool) bool) error { + return c.ListChecksPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListChecksPagesWithContext same as ListChecksPages 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 *TrustedAdvisor) ListChecksPagesWithContext(ctx aws.Context, input *ListChecksInput, fn func(*ListChecksOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListChecksInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListChecksRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListChecksOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListOrganizationRecommendationAccounts = "ListOrganizationRecommendationAccounts" + +// ListOrganizationRecommendationAccountsRequest generates a "aws/request.Request" representing the +// client's request for the ListOrganizationRecommendationAccounts 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 ListOrganizationRecommendationAccounts for more information on using the ListOrganizationRecommendationAccounts +// 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 ListOrganizationRecommendationAccountsRequest method. +// req, resp := client.ListOrganizationRecommendationAccountsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListOrganizationRecommendationAccounts +func (c *TrustedAdvisor) ListOrganizationRecommendationAccountsRequest(input *ListOrganizationRecommendationAccountsInput) (req *request.Request, output *ListOrganizationRecommendationAccountsOutput) { + op := &request.Operation{ + Name: opListOrganizationRecommendationAccounts, + HTTPMethod: "GET", + HTTPPath: "/v1/organization-recommendations/{organizationRecommendationIdentifier}/accounts", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListOrganizationRecommendationAccountsInput{} + } + + output = &ListOrganizationRecommendationAccountsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListOrganizationRecommendationAccounts API operation for TrustedAdvisor Public API. +// +// Lists the accounts that own the resources for an organization aggregate recommendation. +// This API only supports prioritized recommendations. +// +// 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 TrustedAdvisor Public API's +// API operation ListOrganizationRecommendationAccounts for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListOrganizationRecommendationAccounts +func (c *TrustedAdvisor) ListOrganizationRecommendationAccounts(input *ListOrganizationRecommendationAccountsInput) (*ListOrganizationRecommendationAccountsOutput, error) { + req, out := c.ListOrganizationRecommendationAccountsRequest(input) + return out, req.Send() +} + +// ListOrganizationRecommendationAccountsWithContext is the same as ListOrganizationRecommendationAccounts with the addition of +// the ability to pass a context and additional request options. +// +// See ListOrganizationRecommendationAccounts 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 *TrustedAdvisor) ListOrganizationRecommendationAccountsWithContext(ctx aws.Context, input *ListOrganizationRecommendationAccountsInput, opts ...request.Option) (*ListOrganizationRecommendationAccountsOutput, error) { + req, out := c.ListOrganizationRecommendationAccountsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListOrganizationRecommendationAccountsPages iterates over the pages of a ListOrganizationRecommendationAccounts operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListOrganizationRecommendationAccounts 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 ListOrganizationRecommendationAccounts operation. +// pageNum := 0 +// err := client.ListOrganizationRecommendationAccountsPages(params, +// func(page *trustedadvisor.ListOrganizationRecommendationAccountsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TrustedAdvisor) ListOrganizationRecommendationAccountsPages(input *ListOrganizationRecommendationAccountsInput, fn func(*ListOrganizationRecommendationAccountsOutput, bool) bool) error { + return c.ListOrganizationRecommendationAccountsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListOrganizationRecommendationAccountsPagesWithContext same as ListOrganizationRecommendationAccountsPages 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 *TrustedAdvisor) ListOrganizationRecommendationAccountsPagesWithContext(ctx aws.Context, input *ListOrganizationRecommendationAccountsInput, fn func(*ListOrganizationRecommendationAccountsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListOrganizationRecommendationAccountsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListOrganizationRecommendationAccountsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListOrganizationRecommendationAccountsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListOrganizationRecommendationResources = "ListOrganizationRecommendationResources" + +// ListOrganizationRecommendationResourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListOrganizationRecommendationResources 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 ListOrganizationRecommendationResources for more information on using the ListOrganizationRecommendationResources +// 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 ListOrganizationRecommendationResourcesRequest method. +// req, resp := client.ListOrganizationRecommendationResourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListOrganizationRecommendationResources +func (c *TrustedAdvisor) ListOrganizationRecommendationResourcesRequest(input *ListOrganizationRecommendationResourcesInput) (req *request.Request, output *ListOrganizationRecommendationResourcesOutput) { + op := &request.Operation{ + Name: opListOrganizationRecommendationResources, + HTTPMethod: "GET", + HTTPPath: "/v1/organization-recommendations/{organizationRecommendationIdentifier}/resources", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListOrganizationRecommendationResourcesInput{} + } + + output = &ListOrganizationRecommendationResourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListOrganizationRecommendationResources API operation for TrustedAdvisor Public API. +// +// List Resources of a Recommendation within an Organization. This API only +// supports prioritized recommendations. +// +// 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 TrustedAdvisor Public API's +// API operation ListOrganizationRecommendationResources for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListOrganizationRecommendationResources +func (c *TrustedAdvisor) ListOrganizationRecommendationResources(input *ListOrganizationRecommendationResourcesInput) (*ListOrganizationRecommendationResourcesOutput, error) { + req, out := c.ListOrganizationRecommendationResourcesRequest(input) + return out, req.Send() +} + +// ListOrganizationRecommendationResourcesWithContext is the same as ListOrganizationRecommendationResources with the addition of +// the ability to pass a context and additional request options. +// +// See ListOrganizationRecommendationResources 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 *TrustedAdvisor) ListOrganizationRecommendationResourcesWithContext(ctx aws.Context, input *ListOrganizationRecommendationResourcesInput, opts ...request.Option) (*ListOrganizationRecommendationResourcesOutput, error) { + req, out := c.ListOrganizationRecommendationResourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListOrganizationRecommendationResourcesPages iterates over the pages of a ListOrganizationRecommendationResources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListOrganizationRecommendationResources 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 ListOrganizationRecommendationResources operation. +// pageNum := 0 +// err := client.ListOrganizationRecommendationResourcesPages(params, +// func(page *trustedadvisor.ListOrganizationRecommendationResourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TrustedAdvisor) ListOrganizationRecommendationResourcesPages(input *ListOrganizationRecommendationResourcesInput, fn func(*ListOrganizationRecommendationResourcesOutput, bool) bool) error { + return c.ListOrganizationRecommendationResourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListOrganizationRecommendationResourcesPagesWithContext same as ListOrganizationRecommendationResourcesPages 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 *TrustedAdvisor) ListOrganizationRecommendationResourcesPagesWithContext(ctx aws.Context, input *ListOrganizationRecommendationResourcesInput, fn func(*ListOrganizationRecommendationResourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListOrganizationRecommendationResourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListOrganizationRecommendationResourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListOrganizationRecommendationResourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListOrganizationRecommendations = "ListOrganizationRecommendations" + +// ListOrganizationRecommendationsRequest generates a "aws/request.Request" representing the +// client's request for the ListOrganizationRecommendations 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 ListOrganizationRecommendations for more information on using the ListOrganizationRecommendations +// 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 ListOrganizationRecommendationsRequest method. +// req, resp := client.ListOrganizationRecommendationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListOrganizationRecommendations +func (c *TrustedAdvisor) ListOrganizationRecommendationsRequest(input *ListOrganizationRecommendationsInput) (req *request.Request, output *ListOrganizationRecommendationsOutput) { + op := &request.Operation{ + Name: opListOrganizationRecommendations, + HTTPMethod: "GET", + HTTPPath: "/v1/organization-recommendations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListOrganizationRecommendationsInput{} + } + + output = &ListOrganizationRecommendationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListOrganizationRecommendations API operation for TrustedAdvisor Public API. +// +// List a filterable set of Recommendations within an Organization. This API +// only supports prioritized recommendations. +// +// 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 TrustedAdvisor Public API's +// API operation ListOrganizationRecommendations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListOrganizationRecommendations +func (c *TrustedAdvisor) ListOrganizationRecommendations(input *ListOrganizationRecommendationsInput) (*ListOrganizationRecommendationsOutput, error) { + req, out := c.ListOrganizationRecommendationsRequest(input) + return out, req.Send() +} + +// ListOrganizationRecommendationsWithContext is the same as ListOrganizationRecommendations with the addition of +// the ability to pass a context and additional request options. +// +// See ListOrganizationRecommendations 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 *TrustedAdvisor) ListOrganizationRecommendationsWithContext(ctx aws.Context, input *ListOrganizationRecommendationsInput, opts ...request.Option) (*ListOrganizationRecommendationsOutput, error) { + req, out := c.ListOrganizationRecommendationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListOrganizationRecommendationsPages iterates over the pages of a ListOrganizationRecommendations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListOrganizationRecommendations 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 ListOrganizationRecommendations operation. +// pageNum := 0 +// err := client.ListOrganizationRecommendationsPages(params, +// func(page *trustedadvisor.ListOrganizationRecommendationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TrustedAdvisor) ListOrganizationRecommendationsPages(input *ListOrganizationRecommendationsInput, fn func(*ListOrganizationRecommendationsOutput, bool) bool) error { + return c.ListOrganizationRecommendationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListOrganizationRecommendationsPagesWithContext same as ListOrganizationRecommendationsPages 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 *TrustedAdvisor) ListOrganizationRecommendationsPagesWithContext(ctx aws.Context, input *ListOrganizationRecommendationsInput, fn func(*ListOrganizationRecommendationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListOrganizationRecommendationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListOrganizationRecommendationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListOrganizationRecommendationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRecommendationResources = "ListRecommendationResources" + +// ListRecommendationResourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListRecommendationResources 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 ListRecommendationResources for more information on using the ListRecommendationResources +// 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 ListRecommendationResourcesRequest method. +// req, resp := client.ListRecommendationResourcesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListRecommendationResources +func (c *TrustedAdvisor) ListRecommendationResourcesRequest(input *ListRecommendationResourcesInput) (req *request.Request, output *ListRecommendationResourcesOutput) { + op := &request.Operation{ + Name: opListRecommendationResources, + HTTPMethod: "GET", + HTTPPath: "/v1/recommendations/{recommendationIdentifier}/resources", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRecommendationResourcesInput{} + } + + output = &ListRecommendationResourcesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRecommendationResources API operation for TrustedAdvisor Public API. +// +// # List Resources of a Recommendation +// +// 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 TrustedAdvisor Public API's +// API operation ListRecommendationResources for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListRecommendationResources +func (c *TrustedAdvisor) ListRecommendationResources(input *ListRecommendationResourcesInput) (*ListRecommendationResourcesOutput, error) { + req, out := c.ListRecommendationResourcesRequest(input) + return out, req.Send() +} + +// ListRecommendationResourcesWithContext is the same as ListRecommendationResources with the addition of +// the ability to pass a context and additional request options. +// +// See ListRecommendationResources 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 *TrustedAdvisor) ListRecommendationResourcesWithContext(ctx aws.Context, input *ListRecommendationResourcesInput, opts ...request.Option) (*ListRecommendationResourcesOutput, error) { + req, out := c.ListRecommendationResourcesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRecommendationResourcesPages iterates over the pages of a ListRecommendationResources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRecommendationResources 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 ListRecommendationResources operation. +// pageNum := 0 +// err := client.ListRecommendationResourcesPages(params, +// func(page *trustedadvisor.ListRecommendationResourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TrustedAdvisor) ListRecommendationResourcesPages(input *ListRecommendationResourcesInput, fn func(*ListRecommendationResourcesOutput, bool) bool) error { + return c.ListRecommendationResourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRecommendationResourcesPagesWithContext same as ListRecommendationResourcesPages 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 *TrustedAdvisor) ListRecommendationResourcesPagesWithContext(ctx aws.Context, input *ListRecommendationResourcesInput, fn func(*ListRecommendationResourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRecommendationResourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRecommendationResourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRecommendationResourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRecommendations = "ListRecommendations" + +// ListRecommendationsRequest generates a "aws/request.Request" representing the +// client's request for the ListRecommendations 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 ListRecommendations for more information on using the ListRecommendations +// 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 ListRecommendationsRequest method. +// req, resp := client.ListRecommendationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListRecommendations +func (c *TrustedAdvisor) ListRecommendationsRequest(input *ListRecommendationsInput) (req *request.Request, output *ListRecommendationsOutput) { + op := &request.Operation{ + Name: opListRecommendations, + HTTPMethod: "GET", + HTTPPath: "/v1/recommendations", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRecommendationsInput{} + } + + output = &ListRecommendationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRecommendations API operation for TrustedAdvisor Public API. +// +// # List a filterable set of Recommendations +// +// 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 TrustedAdvisor Public API's +// API operation ListRecommendations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/ListRecommendations +func (c *TrustedAdvisor) ListRecommendations(input *ListRecommendationsInput) (*ListRecommendationsOutput, error) { + req, out := c.ListRecommendationsRequest(input) + return out, req.Send() +} + +// ListRecommendationsWithContext is the same as ListRecommendations with the addition of +// the ability to pass a context and additional request options. +// +// See ListRecommendations 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 *TrustedAdvisor) ListRecommendationsWithContext(ctx aws.Context, input *ListRecommendationsInput, opts ...request.Option) (*ListRecommendationsOutput, error) { + req, out := c.ListRecommendationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRecommendationsPages iterates over the pages of a ListRecommendations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRecommendations 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 ListRecommendations operation. +// pageNum := 0 +// err := client.ListRecommendationsPages(params, +// func(page *trustedadvisor.ListRecommendationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TrustedAdvisor) ListRecommendationsPages(input *ListRecommendationsInput, fn func(*ListRecommendationsOutput, bool) bool) error { + return c.ListRecommendationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRecommendationsPagesWithContext same as ListRecommendationsPages 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 *TrustedAdvisor) ListRecommendationsPagesWithContext(ctx aws.Context, input *ListRecommendationsInput, fn func(*ListRecommendationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRecommendationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRecommendationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRecommendationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opUpdateOrganizationRecommendationLifecycle = "UpdateOrganizationRecommendationLifecycle" + +// UpdateOrganizationRecommendationLifecycleRequest generates a "aws/request.Request" representing the +// client's request for the UpdateOrganizationRecommendationLifecycle 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 UpdateOrganizationRecommendationLifecycle for more information on using the UpdateOrganizationRecommendationLifecycle +// 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 UpdateOrganizationRecommendationLifecycleRequest method. +// req, resp := client.UpdateOrganizationRecommendationLifecycleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/UpdateOrganizationRecommendationLifecycle +func (c *TrustedAdvisor) UpdateOrganizationRecommendationLifecycleRequest(input *UpdateOrganizationRecommendationLifecycleInput) (req *request.Request, output *UpdateOrganizationRecommendationLifecycleOutput) { + op := &request.Operation{ + Name: opUpdateOrganizationRecommendationLifecycle, + HTTPMethod: "PUT", + HTTPPath: "/v1/organization-recommendations/{organizationRecommendationIdentifier}/lifecycle", + } + + if input == nil { + input = &UpdateOrganizationRecommendationLifecycleInput{} + } + + output = &UpdateOrganizationRecommendationLifecycleOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateOrganizationRecommendationLifecycle API operation for TrustedAdvisor Public API. +// +// Update the lifecyle of a Recommendation within an Organization. This API +// only supports prioritized recommendations. +// +// 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 TrustedAdvisor Public API's +// API operation UpdateOrganizationRecommendationLifecycle for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - ConflictException +// Exception that the request was denied due to conflictions in state +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/UpdateOrganizationRecommendationLifecycle +func (c *TrustedAdvisor) UpdateOrganizationRecommendationLifecycle(input *UpdateOrganizationRecommendationLifecycleInput) (*UpdateOrganizationRecommendationLifecycleOutput, error) { + req, out := c.UpdateOrganizationRecommendationLifecycleRequest(input) + return out, req.Send() +} + +// UpdateOrganizationRecommendationLifecycleWithContext is the same as UpdateOrganizationRecommendationLifecycle with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateOrganizationRecommendationLifecycle 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 *TrustedAdvisor) UpdateOrganizationRecommendationLifecycleWithContext(ctx aws.Context, input *UpdateOrganizationRecommendationLifecycleInput, opts ...request.Option) (*UpdateOrganizationRecommendationLifecycleOutput, error) { + req, out := c.UpdateOrganizationRecommendationLifecycleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRecommendationLifecycle = "UpdateRecommendationLifecycle" + +// UpdateRecommendationLifecycleRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRecommendationLifecycle 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 UpdateRecommendationLifecycle for more information on using the UpdateRecommendationLifecycle +// 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 UpdateRecommendationLifecycleRequest method. +// req, resp := client.UpdateRecommendationLifecycleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/UpdateRecommendationLifecycle +func (c *TrustedAdvisor) UpdateRecommendationLifecycleRequest(input *UpdateRecommendationLifecycleInput) (req *request.Request, output *UpdateRecommendationLifecycleOutput) { + op := &request.Operation{ + Name: opUpdateRecommendationLifecycle, + HTTPMethod: "PUT", + HTTPPath: "/v1/recommendations/{recommendationIdentifier}/lifecycle", + } + + if input == nil { + input = &UpdateRecommendationLifecycleInput{} + } + + output = &UpdateRecommendationLifecycleOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateRecommendationLifecycle API operation for TrustedAdvisor Public API. +// +// Update the lifecyle of a Recommendation. This API only supports prioritized +// recommendations. +// +// 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 TrustedAdvisor Public API's +// API operation UpdateRecommendationLifecycle for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// Exception that access has been denied due to insufficient access +// +// - ConflictException +// Exception that the request was denied due to conflictions in state +// +// - InternalServerException +// Exception to notify that an unexpected internal error occurred during processing +// of the request +// +// - ValidationException +// Exception that the request failed to satisfy service constraints +// +// - ResourceNotFoundException +// Exception that the requested resource has not been found +// +// - ThrottlingException +// Exception to notify that requests are being throttled +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15/UpdateRecommendationLifecycle +func (c *TrustedAdvisor) UpdateRecommendationLifecycle(input *UpdateRecommendationLifecycleInput) (*UpdateRecommendationLifecycleOutput, error) { + req, out := c.UpdateRecommendationLifecycleRequest(input) + return out, req.Send() +} + +// UpdateRecommendationLifecycleWithContext is the same as UpdateRecommendationLifecycle with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRecommendationLifecycle 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 *TrustedAdvisor) UpdateRecommendationLifecycleWithContext(ctx aws.Context, input *UpdateRecommendationLifecycleInput, opts ...request.Option) (*UpdateRecommendationLifecycleOutput, error) { + req, out := c.UpdateRecommendationLifecycleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Exception that access has been denied due to insufficient access +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Summary of an AccountRecommendationLifecycle for an Organization Recommendation +type AccountRecommendationLifecycleSummary struct { + _ struct{} `type:"structure"` + + // The AWS account ID + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The Recommendation ARN + AccountRecommendationArn *string `locationName:"accountRecommendationArn" min:"20" type:"string"` + + // When the Recommendation was last updated + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The lifecycle stage from AWS Trusted Advisor Priority + LifecycleStage *string `locationName:"lifecycleStage" type:"string" enum:"RecommendationLifecycleStage"` + + // Reason for the lifecycle stage change + // + // UpdateReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AccountRecommendationLifecycleSummary's + // String and GoString methods. + UpdateReason *string `locationName:"updateReason" min:"10" type:"string" sensitive:"true"` + + // Reason code for the lifecycle state change + UpdateReasonCode *string `locationName:"updateReasonCode" type:"string" enum:"UpdateRecommendationLifecycleStageReasonCode"` + + // The person on whose behalf a Technical Account Manager (TAM) updated the + // recommendation. This information is only available when a Technical Account + // Manager takes an action on a recommendation managed by AWS Trusted Advisor + // Priority + UpdatedOnBehalfOf *string `locationName:"updatedOnBehalfOf" type:"string"` + + // The job title of the person on whose behalf a Technical Account Manager (TAM) + // updated the recommendation. This information is only available when a Technical + // Account Manager takes an action on a recommendation managed by AWS Trusted + // Advisor Priority + UpdatedOnBehalfOfJobTitle *string `locationName:"updatedOnBehalfOfJobTitle" 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 AccountRecommendationLifecycleSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccountRecommendationLifecycleSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *AccountRecommendationLifecycleSummary) SetAccountId(v string) *AccountRecommendationLifecycleSummary { + s.AccountId = &v + return s +} + +// SetAccountRecommendationArn sets the AccountRecommendationArn field's value. +func (s *AccountRecommendationLifecycleSummary) SetAccountRecommendationArn(v string) *AccountRecommendationLifecycleSummary { + s.AccountRecommendationArn = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *AccountRecommendationLifecycleSummary) SetLastUpdatedAt(v time.Time) *AccountRecommendationLifecycleSummary { + s.LastUpdatedAt = &v + return s +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *AccountRecommendationLifecycleSummary) SetLifecycleStage(v string) *AccountRecommendationLifecycleSummary { + s.LifecycleStage = &v + return s +} + +// SetUpdateReason sets the UpdateReason field's value. +func (s *AccountRecommendationLifecycleSummary) SetUpdateReason(v string) *AccountRecommendationLifecycleSummary { + s.UpdateReason = &v + return s +} + +// SetUpdateReasonCode sets the UpdateReasonCode field's value. +func (s *AccountRecommendationLifecycleSummary) SetUpdateReasonCode(v string) *AccountRecommendationLifecycleSummary { + s.UpdateReasonCode = &v + return s +} + +// SetUpdatedOnBehalfOf sets the UpdatedOnBehalfOf field's value. +func (s *AccountRecommendationLifecycleSummary) SetUpdatedOnBehalfOf(v string) *AccountRecommendationLifecycleSummary { + s.UpdatedOnBehalfOf = &v + return s +} + +// SetUpdatedOnBehalfOfJobTitle sets the UpdatedOnBehalfOfJobTitle field's value. +func (s *AccountRecommendationLifecycleSummary) SetUpdatedOnBehalfOfJobTitle(v string) *AccountRecommendationLifecycleSummary { + s.UpdatedOnBehalfOfJobTitle = &v + return s +} + +// A summary of an AWS Trusted Advisor Check +type CheckSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the AWS Trusted Advisor Check + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS Services that the Check applies to + // + // AwsServices is a required field + AwsServices []*string `locationName:"awsServices" type:"list" required:"true"` + + // A description of what the AWS Trusted Advisor Check is monitoring + // + // Description is a required field + Description *string `locationName:"description" type:"string" required:"true"` + + // The unique identifier of the AWS Trusted Advisor Check + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The column headings for the metadata returned in the resource + // + // Metadata is a required field + Metadata map[string]*string `locationName:"metadata" type:"map" required:"true"` + + // The name of the AWS Trusted Advisor Check + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The Recommendation pillars that the AWS Trusted Advisor Check falls under + // + // Pillars is a required field + Pillars []*string `locationName:"pillars" type:"list" required:"true" enum:"RecommendationPillar"` + + // The source of the Recommendation + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"RecommendationSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CheckSummary) SetArn(v string) *CheckSummary { + s.Arn = &v + return s +} + +// SetAwsServices sets the AwsServices field's value. +func (s *CheckSummary) SetAwsServices(v []*string) *CheckSummary { + s.AwsServices = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CheckSummary) SetDescription(v string) *CheckSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CheckSummary) SetId(v string) *CheckSummary { + s.Id = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *CheckSummary) SetMetadata(v map[string]*string) *CheckSummary { + s.Metadata = v + return s +} + +// SetName sets the Name field's value. +func (s *CheckSummary) SetName(v string) *CheckSummary { + s.Name = &v + return s +} + +// SetPillars sets the Pillars field's value. +func (s *CheckSummary) SetPillars(v []*string) *CheckSummary { + s.Pillars = v + return s +} + +// SetSource sets the Source field's value. +func (s *CheckSummary) SetSource(v string) *CheckSummary { + s.Source = &v + return s +} + +// Exception that the request was denied due to conflictions in state +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 GetOrganizationRecommendationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Recommendation identifier + // + // OrganizationRecommendationIdentifier is a required field + OrganizationRecommendationIdentifier *string `location:"uri" locationName:"organizationRecommendationIdentifier" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetOrganizationRecommendationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetOrganizationRecommendationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetOrganizationRecommendationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetOrganizationRecommendationInput"} + if s.OrganizationRecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationRecommendationIdentifier")) + } + if s.OrganizationRecommendationIdentifier != nil && len(*s.OrganizationRecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationRecommendationIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOrganizationRecommendationIdentifier sets the OrganizationRecommendationIdentifier field's value. +func (s *GetOrganizationRecommendationInput) SetOrganizationRecommendationIdentifier(v string) *GetOrganizationRecommendationInput { + s.OrganizationRecommendationIdentifier = &v + return s +} + +type GetOrganizationRecommendationOutput struct { + _ struct{} `type:"structure"` + + // The Recommendation + OrganizationRecommendation *OrganizationRecommendation `locationName:"organizationRecommendation" 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 GetOrganizationRecommendationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetOrganizationRecommendationOutput) GoString() string { + return s.String() +} + +// SetOrganizationRecommendation sets the OrganizationRecommendation field's value. +func (s *GetOrganizationRecommendationOutput) SetOrganizationRecommendation(v *OrganizationRecommendation) *GetOrganizationRecommendationOutput { + s.OrganizationRecommendation = v + return s +} + +type GetRecommendationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Recommendation identifier + // + // RecommendationIdentifier is a required field + RecommendationIdentifier *string `location:"uri" locationName:"recommendationIdentifier" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRecommendationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRecommendationInput"} + if s.RecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("RecommendationIdentifier")) + } + if s.RecommendationIdentifier != nil && len(*s.RecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RecommendationIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecommendationIdentifier sets the RecommendationIdentifier field's value. +func (s *GetRecommendationInput) SetRecommendationIdentifier(v string) *GetRecommendationInput { + s.RecommendationIdentifier = &v + return s +} + +type GetRecommendationOutput struct { + _ struct{} `type:"structure"` + + // The Recommendation + Recommendation *Recommendation `locationName:"recommendation" 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 GetRecommendationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecommendationOutput) GoString() string { + return s.String() +} + +// SetRecommendation sets the Recommendation field's value. +func (s *GetRecommendationOutput) SetRecommendation(v *Recommendation) *GetRecommendationOutput { + s.Recommendation = v + return s +} + +// Exception to notify that an unexpected internal error occurred during processing +// of the request +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListChecksInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The aws service associated with the check + AwsService *string `location:"querystring" locationName:"awsService" min:"2" type:"string"` + + // The ISO 639-1 code for the language that you want your checks to appear in. + Language *string `location:"querystring" locationName:"language" type:"string" enum:"RecommendationLanguage"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"4" type:"string"` + + // The pillar of the check + Pillar *string `location:"querystring" locationName:"pillar" type:"string" enum:"RecommendationPillar"` + + // The source of the check + Source *string `location:"querystring" locationName:"source" type:"string" enum:"RecommendationSource"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChecksInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChecksInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListChecksInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListChecksInput"} + if s.AwsService != nil && len(*s.AwsService) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AwsService", 2)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 4 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsService sets the AwsService field's value. +func (s *ListChecksInput) SetAwsService(v string) *ListChecksInput { + s.AwsService = &v + return s +} + +// SetLanguage sets the Language field's value. +func (s *ListChecksInput) SetLanguage(v string) *ListChecksInput { + s.Language = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListChecksInput) SetMaxResults(v int64) *ListChecksInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListChecksInput) SetNextToken(v string) *ListChecksInput { + s.NextToken = &v + return s +} + +// SetPillar sets the Pillar field's value. +func (s *ListChecksInput) SetPillar(v string) *ListChecksInput { + s.Pillar = &v + return s +} + +// SetSource sets the Source field's value. +func (s *ListChecksInput) SetSource(v string) *ListChecksInput { + s.Source = &v + return s +} + +type ListChecksOutput struct { + _ struct{} `type:"structure"` + + // The list of Checks + // + // CheckSummaries is a required field + CheckSummaries []*CheckSummary `locationName:"checkSummaries" type:"list" required:"true"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"4" 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 ListChecksOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChecksOutput) GoString() string { + return s.String() +} + +// SetCheckSummaries sets the CheckSummaries field's value. +func (s *ListChecksOutput) SetCheckSummaries(v []*CheckSummary) *ListChecksOutput { + s.CheckSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListChecksOutput) SetNextToken(v string) *ListChecksOutput { + s.NextToken = &v + return s +} + +type ListOrganizationRecommendationAccountsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // An account affected by this organization recommendation + AffectedAccountId *string `location:"querystring" locationName:"affectedAccountId" min:"12" type:"string"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"4" type:"string"` + + // The Recommendation identifier + // + // OrganizationRecommendationIdentifier is a required field + OrganizationRecommendationIdentifier *string `location:"uri" locationName:"organizationRecommendationIdentifier" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationAccountsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationAccountsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListOrganizationRecommendationAccountsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListOrganizationRecommendationAccountsInput"} + if s.AffectedAccountId != nil && len(*s.AffectedAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AffectedAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 4 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) + } + if s.OrganizationRecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationRecommendationIdentifier")) + } + if s.OrganizationRecommendationIdentifier != nil && len(*s.OrganizationRecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationRecommendationIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAffectedAccountId sets the AffectedAccountId field's value. +func (s *ListOrganizationRecommendationAccountsInput) SetAffectedAccountId(v string) *ListOrganizationRecommendationAccountsInput { + s.AffectedAccountId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListOrganizationRecommendationAccountsInput) SetMaxResults(v int64) *ListOrganizationRecommendationAccountsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOrganizationRecommendationAccountsInput) SetNextToken(v string) *ListOrganizationRecommendationAccountsInput { + s.NextToken = &v + return s +} + +// SetOrganizationRecommendationIdentifier sets the OrganizationRecommendationIdentifier field's value. +func (s *ListOrganizationRecommendationAccountsInput) SetOrganizationRecommendationIdentifier(v string) *ListOrganizationRecommendationAccountsInput { + s.OrganizationRecommendationIdentifier = &v + return s +} + +type ListOrganizationRecommendationAccountsOutput struct { + _ struct{} `type:"structure"` + + // The account recommendations lifecycles that are applicable to the Recommendation + // + // AccountRecommendationLifecycleSummaries is a required field + AccountRecommendationLifecycleSummaries []*AccountRecommendationLifecycleSummary `locationName:"accountRecommendationLifecycleSummaries" type:"list" required:"true"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"4" 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 ListOrganizationRecommendationAccountsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationAccountsOutput) GoString() string { + return s.String() +} + +// SetAccountRecommendationLifecycleSummaries sets the AccountRecommendationLifecycleSummaries field's value. +func (s *ListOrganizationRecommendationAccountsOutput) SetAccountRecommendationLifecycleSummaries(v []*AccountRecommendationLifecycleSummary) *ListOrganizationRecommendationAccountsOutput { + s.AccountRecommendationLifecycleSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOrganizationRecommendationAccountsOutput) SetNextToken(v string) *ListOrganizationRecommendationAccountsOutput { + s.NextToken = &v + return s +} + +type ListOrganizationRecommendationResourcesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // An account affected by this organization recommendation + AffectedAccountId *string `location:"querystring" locationName:"affectedAccountId" min:"12" type:"string"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"4" type:"string"` + + // The AWS Organization organization's Recommendation identifier + // + // OrganizationRecommendationIdentifier is a required field + OrganizationRecommendationIdentifier *string `location:"uri" locationName:"organizationRecommendationIdentifier" min:"20" type:"string" required:"true"` + + // The AWS Region code of the resource + RegionCode *string `location:"querystring" locationName:"regionCode" type:"string"` + + // The status of the resource + Status *string `location:"querystring" locationName:"status" type:"string" enum:"ResourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationResourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationResourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListOrganizationRecommendationResourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListOrganizationRecommendationResourcesInput"} + if s.AffectedAccountId != nil && len(*s.AffectedAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AffectedAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 4 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) + } + if s.OrganizationRecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationRecommendationIdentifier")) + } + if s.OrganizationRecommendationIdentifier != nil && len(*s.OrganizationRecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationRecommendationIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAffectedAccountId sets the AffectedAccountId field's value. +func (s *ListOrganizationRecommendationResourcesInput) SetAffectedAccountId(v string) *ListOrganizationRecommendationResourcesInput { + s.AffectedAccountId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListOrganizationRecommendationResourcesInput) SetMaxResults(v int64) *ListOrganizationRecommendationResourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOrganizationRecommendationResourcesInput) SetNextToken(v string) *ListOrganizationRecommendationResourcesInput { + s.NextToken = &v + return s +} + +// SetOrganizationRecommendationIdentifier sets the OrganizationRecommendationIdentifier field's value. +func (s *ListOrganizationRecommendationResourcesInput) SetOrganizationRecommendationIdentifier(v string) *ListOrganizationRecommendationResourcesInput { + s.OrganizationRecommendationIdentifier = &v + return s +} + +// SetRegionCode sets the RegionCode field's value. +func (s *ListOrganizationRecommendationResourcesInput) SetRegionCode(v string) *ListOrganizationRecommendationResourcesInput { + s.RegionCode = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListOrganizationRecommendationResourcesInput) SetStatus(v string) *ListOrganizationRecommendationResourcesInput { + s.Status = &v + return s +} + +type ListOrganizationRecommendationResourcesOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"4" type:"string"` + + // A list of Recommendation Resources + // + // OrganizationRecommendationResourceSummaries is a required field + OrganizationRecommendationResourceSummaries []*OrganizationRecommendationResourceSummary `locationName:"organizationRecommendationResourceSummaries" 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 ListOrganizationRecommendationResourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationResourcesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOrganizationRecommendationResourcesOutput) SetNextToken(v string) *ListOrganizationRecommendationResourcesOutput { + s.NextToken = &v + return s +} + +// SetOrganizationRecommendationResourceSummaries sets the OrganizationRecommendationResourceSummaries field's value. +func (s *ListOrganizationRecommendationResourcesOutput) SetOrganizationRecommendationResourceSummaries(v []*OrganizationRecommendationResourceSummary) *ListOrganizationRecommendationResourcesOutput { + s.OrganizationRecommendationResourceSummaries = v + return s +} + +type ListOrganizationRecommendationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // After the last update of the Recommendation + AfterLastUpdatedAt *time.Time `location:"querystring" locationName:"afterLastUpdatedAt" type:"timestamp"` + + // The aws service associated with the Recommendation + AwsService *string `location:"querystring" locationName:"awsService" min:"2" type:"string"` + + // Before the last update of the Recommendation + BeforeLastUpdatedAt *time.Time `location:"querystring" locationName:"beforeLastUpdatedAt" type:"timestamp"` + + // The check identifier of the Recommendation + CheckIdentifier *string `location:"querystring" locationName:"checkIdentifier" min:"20" type:"string"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"4" type:"string"` + + // The pillar of the Recommendation + Pillar *string `location:"querystring" locationName:"pillar" type:"string" enum:"RecommendationPillar"` + + // The source of the Recommendation + Source *string `location:"querystring" locationName:"source" type:"string" enum:"RecommendationSource"` + + // The status of the Recommendation + Status *string `location:"querystring" locationName:"status" type:"string" enum:"RecommendationStatus"` + + // The type of the Recommendation + Type *string `location:"querystring" locationName:"type" type:"string" enum:"RecommendationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListOrganizationRecommendationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListOrganizationRecommendationsInput"} + if s.AwsService != nil && len(*s.AwsService) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AwsService", 2)) + } + if s.CheckIdentifier != nil && len(*s.CheckIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("CheckIdentifier", 20)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 4 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterLastUpdatedAt sets the AfterLastUpdatedAt field's value. +func (s *ListOrganizationRecommendationsInput) SetAfterLastUpdatedAt(v time.Time) *ListOrganizationRecommendationsInput { + s.AfterLastUpdatedAt = &v + return s +} + +// SetAwsService sets the AwsService field's value. +func (s *ListOrganizationRecommendationsInput) SetAwsService(v string) *ListOrganizationRecommendationsInput { + s.AwsService = &v + return s +} + +// SetBeforeLastUpdatedAt sets the BeforeLastUpdatedAt field's value. +func (s *ListOrganizationRecommendationsInput) SetBeforeLastUpdatedAt(v time.Time) *ListOrganizationRecommendationsInput { + s.BeforeLastUpdatedAt = &v + return s +} + +// SetCheckIdentifier sets the CheckIdentifier field's value. +func (s *ListOrganizationRecommendationsInput) SetCheckIdentifier(v string) *ListOrganizationRecommendationsInput { + s.CheckIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListOrganizationRecommendationsInput) SetMaxResults(v int64) *ListOrganizationRecommendationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOrganizationRecommendationsInput) SetNextToken(v string) *ListOrganizationRecommendationsInput { + s.NextToken = &v + return s +} + +// SetPillar sets the Pillar field's value. +func (s *ListOrganizationRecommendationsInput) SetPillar(v string) *ListOrganizationRecommendationsInput { + s.Pillar = &v + return s +} + +// SetSource sets the Source field's value. +func (s *ListOrganizationRecommendationsInput) SetSource(v string) *ListOrganizationRecommendationsInput { + s.Source = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListOrganizationRecommendationsInput) SetStatus(v string) *ListOrganizationRecommendationsInput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *ListOrganizationRecommendationsInput) SetType(v string) *ListOrganizationRecommendationsInput { + s.Type = &v + return s +} + +type ListOrganizationRecommendationsOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"4" type:"string"` + + // The list of Recommendations + // + // OrganizationRecommendationSummaries is a required field + OrganizationRecommendationSummaries []*OrganizationRecommendationSummary `locationName:"organizationRecommendationSummaries" 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 ListOrganizationRecommendationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListOrganizationRecommendationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOrganizationRecommendationsOutput) SetNextToken(v string) *ListOrganizationRecommendationsOutput { + s.NextToken = &v + return s +} + +// SetOrganizationRecommendationSummaries sets the OrganizationRecommendationSummaries field's value. +func (s *ListOrganizationRecommendationsOutput) SetOrganizationRecommendationSummaries(v []*OrganizationRecommendationSummary) *ListOrganizationRecommendationsOutput { + s.OrganizationRecommendationSummaries = v + return s +} + +type ListRecommendationResourcesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"4" type:"string"` + + // The Recommendation identifier + // + // RecommendationIdentifier is a required field + RecommendationIdentifier *string `location:"uri" locationName:"recommendationIdentifier" min:"20" type:"string" required:"true"` + + // The AWS Region code of the resource + RegionCode *string `location:"querystring" locationName:"regionCode" type:"string"` + + // The status of the resource + Status *string `location:"querystring" locationName:"status" type:"string" enum:"ResourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationResourcesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationResourcesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRecommendationResourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecommendationResourcesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 4 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) + } + if s.RecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("RecommendationIdentifier")) + } + if s.RecommendationIdentifier != nil && len(*s.RecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RecommendationIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRecommendationResourcesInput) SetMaxResults(v int64) *ListRecommendationResourcesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationResourcesInput) SetNextToken(v string) *ListRecommendationResourcesInput { + s.NextToken = &v + return s +} + +// SetRecommendationIdentifier sets the RecommendationIdentifier field's value. +func (s *ListRecommendationResourcesInput) SetRecommendationIdentifier(v string) *ListRecommendationResourcesInput { + s.RecommendationIdentifier = &v + return s +} + +// SetRegionCode sets the RegionCode field's value. +func (s *ListRecommendationResourcesInput) SetRegionCode(v string) *ListRecommendationResourcesInput { + s.RegionCode = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListRecommendationResourcesInput) SetStatus(v string) *ListRecommendationResourcesInput { + s.Status = &v + return s +} + +type ListRecommendationResourcesOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"4" type:"string"` + + // A list of Recommendation Resources + // + // RecommendationResourceSummaries is a required field + RecommendationResourceSummaries []*RecommendationResourceSummary `locationName:"recommendationResourceSummaries" 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 ListRecommendationResourcesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationResourcesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationResourcesOutput) SetNextToken(v string) *ListRecommendationResourcesOutput { + s.NextToken = &v + return s +} + +// SetRecommendationResourceSummaries sets the RecommendationResourceSummaries field's value. +func (s *ListRecommendationResourcesOutput) SetRecommendationResourceSummaries(v []*RecommendationResourceSummary) *ListRecommendationResourcesOutput { + s.RecommendationResourceSummaries = v + return s +} + +type ListRecommendationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // After the last update of the Recommendation + AfterLastUpdatedAt *time.Time `location:"querystring" locationName:"afterLastUpdatedAt" type:"timestamp"` + + // The aws service associated with the Recommendation + AwsService *string `location:"querystring" locationName:"awsService" min:"2" type:"string"` + + // Before the last update of the Recommendation + BeforeLastUpdatedAt *time.Time `location:"querystring" locationName:"beforeLastUpdatedAt" type:"timestamp"` + + // The check identifier of the Recommendation + CheckIdentifier *string `location:"querystring" locationName:"checkIdentifier" min:"20" type:"string"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"4" type:"string"` + + // The pillar of the Recommendation + Pillar *string `location:"querystring" locationName:"pillar" type:"string" enum:"RecommendationPillar"` + + // The source of the Recommendation + Source *string `location:"querystring" locationName:"source" type:"string" enum:"RecommendationSource"` + + // The status of the Recommendation + Status *string `location:"querystring" locationName:"status" type:"string" enum:"RecommendationStatus"` + + // The type of the Recommendation + Type *string `location:"querystring" locationName:"type" type:"string" enum:"RecommendationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRecommendationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecommendationsInput"} + if s.AwsService != nil && len(*s.AwsService) < 2 { + invalidParams.Add(request.NewErrParamMinLen("AwsService", 2)) + } + if s.CheckIdentifier != nil && len(*s.CheckIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("CheckIdentifier", 20)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 4 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterLastUpdatedAt sets the AfterLastUpdatedAt field's value. +func (s *ListRecommendationsInput) SetAfterLastUpdatedAt(v time.Time) *ListRecommendationsInput { + s.AfterLastUpdatedAt = &v + return s +} + +// SetAwsService sets the AwsService field's value. +func (s *ListRecommendationsInput) SetAwsService(v string) *ListRecommendationsInput { + s.AwsService = &v + return s +} + +// SetBeforeLastUpdatedAt sets the BeforeLastUpdatedAt field's value. +func (s *ListRecommendationsInput) SetBeforeLastUpdatedAt(v time.Time) *ListRecommendationsInput { + s.BeforeLastUpdatedAt = &v + return s +} + +// SetCheckIdentifier sets the CheckIdentifier field's value. +func (s *ListRecommendationsInput) SetCheckIdentifier(v string) *ListRecommendationsInput { + s.CheckIdentifier = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRecommendationsInput) SetMaxResults(v int64) *ListRecommendationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationsInput) SetNextToken(v string) *ListRecommendationsInput { + s.NextToken = &v + return s +} + +// SetPillar sets the Pillar field's value. +func (s *ListRecommendationsInput) SetPillar(v string) *ListRecommendationsInput { + s.Pillar = &v + return s +} + +// SetSource sets the Source field's value. +func (s *ListRecommendationsInput) SetSource(v string) *ListRecommendationsInput { + s.Source = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListRecommendationsInput) SetStatus(v string) *ListRecommendationsInput { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *ListRecommendationsInput) SetType(v string) *ListRecommendationsInput { + s.Type = &v + return s +} + +type ListRecommendationsOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `locationName:"nextToken" min:"4" type:"string"` + + // The list of Recommendations + // + // RecommendationSummaries is a required field + RecommendationSummaries []*RecommendationSummary `locationName:"recommendationSummaries" 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 ListRecommendationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecommendationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecommendationsOutput) SetNextToken(v string) *ListRecommendationsOutput { + s.NextToken = &v + return s +} + +// SetRecommendationSummaries sets the RecommendationSummaries field's value. +func (s *ListRecommendationsOutput) SetRecommendationSummaries(v []*RecommendationSummary) *ListRecommendationsOutput { + s.RecommendationSummaries = v + return s +} + +// A Recommendation for accounts within an Organization +type OrganizationRecommendation struct { + _ struct{} `type:"structure"` + + // The ARN of the Recommendation + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS Services that the Recommendation applies to + AwsServices []*string `locationName:"awsServices" type:"list"` + + // The AWS Trusted Advisor Check ARN that relates to the Recommendation + CheckArn *string `locationName:"checkArn" type:"string"` + + // When the Recommendation was created, if created by AWS Trusted Advisor Priority + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The creator, if created by AWS Trusted Advisor Priority + CreatedBy *string `locationName:"createdBy" type:"string"` + + // A description for AWS Trusted Advisor recommendations + // + // Description is a required field + Description *string `locationName:"description" type:"string" required:"true"` + + // The ID which identifies where the Recommendation was produced + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // When the Recommendation was last updated + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The lifecycle stage from AWS Trusted Advisor Priority + LifecycleStage *string `locationName:"lifecycleStage" type:"string" enum:"RecommendationLifecycleStage"` + + // The name of the AWS Trusted Advisor Recommendation + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The pillar aggregations for cost savings + PillarSpecificAggregates *RecommendationPillarSpecificAggregates `locationName:"pillarSpecificAggregates" type:"structure"` + + // The Pillars that the Recommendation is optimizing + // + // Pillars is a required field + Pillars []*string `locationName:"pillars" type:"list" required:"true" enum:"RecommendationPillar"` + + // When the Recommendation was resolved + ResolvedAt *time.Time `locationName:"resolvedAt" type:"timestamp" timestampFormat:"iso8601"` + + // An aggregation of all resources + // + // ResourcesAggregates is a required field + ResourcesAggregates *RecommendationResourcesAggregates `locationName:"resourcesAggregates" type:"structure" required:"true"` + + // The source of the Recommendation + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"RecommendationSource"` + + // The status of the Recommendation + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"RecommendationStatus"` + + // Whether the Recommendation was automated or generated by AWS Trusted Advisor + // Priority + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RecommendationType"` + + // Reason for the lifecycle stage change + // + // UpdateReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OrganizationRecommendation's + // String and GoString methods. + UpdateReason *string `locationName:"updateReason" min:"10" type:"string" sensitive:"true"` + + // Reason code for the lifecycle state change + UpdateReasonCode *string `locationName:"updateReasonCode" type:"string" enum:"UpdateRecommendationLifecycleStageReasonCode"` + + // The person on whose behalf a Technical Account Manager (TAM) updated the + // recommendation. This information is only available when a Technical Account + // Manager takes an action on a recommendation managed by AWS Trusted Advisor + // Priority + UpdatedOnBehalfOf *string `locationName:"updatedOnBehalfOf" type:"string"` + + // The job title of the person on whose behalf a Technical Account Manager (TAM) + // updated the recommendation. This information is only available when a Technical + // Account Manager takes an action on a recommendation managed by AWS Trusted + // Advisor Priority + UpdatedOnBehalfOfJobTitle *string `locationName:"updatedOnBehalfOfJobTitle" 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 OrganizationRecommendation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationRecommendation) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *OrganizationRecommendation) SetArn(v string) *OrganizationRecommendation { + s.Arn = &v + return s +} + +// SetAwsServices sets the AwsServices field's value. +func (s *OrganizationRecommendation) SetAwsServices(v []*string) *OrganizationRecommendation { + s.AwsServices = v + return s +} + +// SetCheckArn sets the CheckArn field's value. +func (s *OrganizationRecommendation) SetCheckArn(v string) *OrganizationRecommendation { + s.CheckArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *OrganizationRecommendation) SetCreatedAt(v time.Time) *OrganizationRecommendation { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *OrganizationRecommendation) SetCreatedBy(v string) *OrganizationRecommendation { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *OrganizationRecommendation) SetDescription(v string) *OrganizationRecommendation { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *OrganizationRecommendation) SetId(v string) *OrganizationRecommendation { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *OrganizationRecommendation) SetLastUpdatedAt(v time.Time) *OrganizationRecommendation { + s.LastUpdatedAt = &v + return s +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *OrganizationRecommendation) SetLifecycleStage(v string) *OrganizationRecommendation { + s.LifecycleStage = &v + return s +} + +// SetName sets the Name field's value. +func (s *OrganizationRecommendation) SetName(v string) *OrganizationRecommendation { + s.Name = &v + return s +} + +// SetPillarSpecificAggregates sets the PillarSpecificAggregates field's value. +func (s *OrganizationRecommendation) SetPillarSpecificAggregates(v *RecommendationPillarSpecificAggregates) *OrganizationRecommendation { + s.PillarSpecificAggregates = v + return s +} + +// SetPillars sets the Pillars field's value. +func (s *OrganizationRecommendation) SetPillars(v []*string) *OrganizationRecommendation { + s.Pillars = v + return s +} + +// SetResolvedAt sets the ResolvedAt field's value. +func (s *OrganizationRecommendation) SetResolvedAt(v time.Time) *OrganizationRecommendation { + s.ResolvedAt = &v + return s +} + +// SetResourcesAggregates sets the ResourcesAggregates field's value. +func (s *OrganizationRecommendation) SetResourcesAggregates(v *RecommendationResourcesAggregates) *OrganizationRecommendation { + s.ResourcesAggregates = v + return s +} + +// SetSource sets the Source field's value. +func (s *OrganizationRecommendation) SetSource(v string) *OrganizationRecommendation { + s.Source = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *OrganizationRecommendation) SetStatus(v string) *OrganizationRecommendation { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *OrganizationRecommendation) SetType(v string) *OrganizationRecommendation { + s.Type = &v + return s +} + +// SetUpdateReason sets the UpdateReason field's value. +func (s *OrganizationRecommendation) SetUpdateReason(v string) *OrganizationRecommendation { + s.UpdateReason = &v + return s +} + +// SetUpdateReasonCode sets the UpdateReasonCode field's value. +func (s *OrganizationRecommendation) SetUpdateReasonCode(v string) *OrganizationRecommendation { + s.UpdateReasonCode = &v + return s +} + +// SetUpdatedOnBehalfOf sets the UpdatedOnBehalfOf field's value. +func (s *OrganizationRecommendation) SetUpdatedOnBehalfOf(v string) *OrganizationRecommendation { + s.UpdatedOnBehalfOf = &v + return s +} + +// SetUpdatedOnBehalfOfJobTitle sets the UpdatedOnBehalfOfJobTitle field's value. +func (s *OrganizationRecommendation) SetUpdatedOnBehalfOfJobTitle(v string) *OrganizationRecommendation { + s.UpdatedOnBehalfOfJobTitle = &v + return s +} + +// Organization Recommendation Resource Summary +type OrganizationRecommendationResourceSummary struct { + _ struct{} `type:"structure"` + + // The AWS account ID + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The ARN of the Recommendation Resource + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS resource identifier + // + // AwsResourceId is a required field + AwsResourceId *string `locationName:"awsResourceId" type:"string" required:"true"` + + // The ID of the Recommendation Resource + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // When the Recommendation Resource was last updated + // + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Metadata associated with the Recommendation Resource + // + // Metadata is a required field + Metadata map[string]*string `locationName:"metadata" type:"map" required:"true"` + + // The Recommendation ARN + // + // RecommendationArn is a required field + RecommendationArn *string `locationName:"recommendationArn" min:"20" type:"string" required:"true"` + + // The AWS Region code that the Recommendation Resource is in + // + // RegionCode is a required field + RegionCode *string `locationName:"regionCode" min:"9" type:"string" required:"true"` + + // The current status of the Recommendation Resource + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ResourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationRecommendationResourceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationRecommendationResourceSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *OrganizationRecommendationResourceSummary) SetAccountId(v string) *OrganizationRecommendationResourceSummary { + s.AccountId = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *OrganizationRecommendationResourceSummary) SetArn(v string) *OrganizationRecommendationResourceSummary { + s.Arn = &v + return s +} + +// SetAwsResourceId sets the AwsResourceId field's value. +func (s *OrganizationRecommendationResourceSummary) SetAwsResourceId(v string) *OrganizationRecommendationResourceSummary { + s.AwsResourceId = &v + return s +} + +// SetId sets the Id field's value. +func (s *OrganizationRecommendationResourceSummary) SetId(v string) *OrganizationRecommendationResourceSummary { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *OrganizationRecommendationResourceSummary) SetLastUpdatedAt(v time.Time) *OrganizationRecommendationResourceSummary { + s.LastUpdatedAt = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *OrganizationRecommendationResourceSummary) SetMetadata(v map[string]*string) *OrganizationRecommendationResourceSummary { + s.Metadata = v + return s +} + +// SetRecommendationArn sets the RecommendationArn field's value. +func (s *OrganizationRecommendationResourceSummary) SetRecommendationArn(v string) *OrganizationRecommendationResourceSummary { + s.RecommendationArn = &v + return s +} + +// SetRegionCode sets the RegionCode field's value. +func (s *OrganizationRecommendationResourceSummary) SetRegionCode(v string) *OrganizationRecommendationResourceSummary { + s.RegionCode = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *OrganizationRecommendationResourceSummary) SetStatus(v string) *OrganizationRecommendationResourceSummary { + s.Status = &v + return s +} + +// Summary of recommendation for accounts within an Organization +type OrganizationRecommendationSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the Recommendation + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS Services that the Recommendation applies to + AwsServices []*string `locationName:"awsServices" type:"list"` + + // The AWS Trusted Advisor Check ARN that relates to the Recommendation + CheckArn *string `locationName:"checkArn" type:"string"` + + // When the Recommendation was created, if created by AWS Trusted Advisor Priority + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The ID which identifies where the Recommendation was produced + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // When the Recommendation was last updated + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The lifecycle stage from AWS Trusted Advisor Priority + LifecycleStage *string `locationName:"lifecycleStage" type:"string" enum:"RecommendationLifecycleStage"` + + // The name of the AWS Trusted Advisor Recommendation + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The pillar aggregations for cost savings + PillarSpecificAggregates *RecommendationPillarSpecificAggregates `locationName:"pillarSpecificAggregates" type:"structure"` + + // The Pillars that the Recommendation is optimizing + // + // Pillars is a required field + Pillars []*string `locationName:"pillars" type:"list" required:"true" enum:"RecommendationPillar"` + + // An aggregation of all resources + // + // ResourcesAggregates is a required field + ResourcesAggregates *RecommendationResourcesAggregates `locationName:"resourcesAggregates" type:"structure" required:"true"` + + // The source of the Recommendation + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"RecommendationSource"` + + // The status of the Recommendation + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"RecommendationStatus"` + + // Whether the Recommendation was automated or generated by AWS Trusted Advisor + // Priority + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RecommendationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationRecommendationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OrganizationRecommendationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *OrganizationRecommendationSummary) SetArn(v string) *OrganizationRecommendationSummary { + s.Arn = &v + return s +} + +// SetAwsServices sets the AwsServices field's value. +func (s *OrganizationRecommendationSummary) SetAwsServices(v []*string) *OrganizationRecommendationSummary { + s.AwsServices = v + return s +} + +// SetCheckArn sets the CheckArn field's value. +func (s *OrganizationRecommendationSummary) SetCheckArn(v string) *OrganizationRecommendationSummary { + s.CheckArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *OrganizationRecommendationSummary) SetCreatedAt(v time.Time) *OrganizationRecommendationSummary { + s.CreatedAt = &v + return s +} + +// SetId sets the Id field's value. +func (s *OrganizationRecommendationSummary) SetId(v string) *OrganizationRecommendationSummary { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *OrganizationRecommendationSummary) SetLastUpdatedAt(v time.Time) *OrganizationRecommendationSummary { + s.LastUpdatedAt = &v + return s +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *OrganizationRecommendationSummary) SetLifecycleStage(v string) *OrganizationRecommendationSummary { + s.LifecycleStage = &v + return s +} + +// SetName sets the Name field's value. +func (s *OrganizationRecommendationSummary) SetName(v string) *OrganizationRecommendationSummary { + s.Name = &v + return s +} + +// SetPillarSpecificAggregates sets the PillarSpecificAggregates field's value. +func (s *OrganizationRecommendationSummary) SetPillarSpecificAggregates(v *RecommendationPillarSpecificAggregates) *OrganizationRecommendationSummary { + s.PillarSpecificAggregates = v + return s +} + +// SetPillars sets the Pillars field's value. +func (s *OrganizationRecommendationSummary) SetPillars(v []*string) *OrganizationRecommendationSummary { + s.Pillars = v + return s +} + +// SetResourcesAggregates sets the ResourcesAggregates field's value. +func (s *OrganizationRecommendationSummary) SetResourcesAggregates(v *RecommendationResourcesAggregates) *OrganizationRecommendationSummary { + s.ResourcesAggregates = v + return s +} + +// SetSource sets the Source field's value. +func (s *OrganizationRecommendationSummary) SetSource(v string) *OrganizationRecommendationSummary { + s.Source = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *OrganizationRecommendationSummary) SetStatus(v string) *OrganizationRecommendationSummary { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *OrganizationRecommendationSummary) SetType(v string) *OrganizationRecommendationSummary { + s.Type = &v + return s +} + +// A Recommendation for an Account +type Recommendation struct { + _ struct{} `type:"structure"` + + // The ARN of the Recommendation + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS Services that the Recommendation applies to + AwsServices []*string `locationName:"awsServices" type:"list"` + + // The AWS Trusted Advisor Check ARN that relates to the Recommendation + CheckArn *string `locationName:"checkArn" type:"string"` + + // When the Recommendation was created, if created by AWS Trusted Advisor Priority + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The creator, if created by AWS Trusted Advisor Priority + CreatedBy *string `locationName:"createdBy" type:"string"` + + // A description for AWS Trusted Advisor recommendations + // + // Description is a required field + Description *string `locationName:"description" type:"string" required:"true"` + + // The ID which identifies where the Recommendation was produced + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // When the Recommendation was last updated + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The lifecycle stage from AWS Trusted Advisor Priority + LifecycleStage *string `locationName:"lifecycleStage" type:"string" enum:"RecommendationLifecycleStage"` + + // The name of the AWS Trusted Advisor Recommendation + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The pillar aggregations for cost savings + PillarSpecificAggregates *RecommendationPillarSpecificAggregates `locationName:"pillarSpecificAggregates" type:"structure"` + + // The Pillars that the Recommendation is optimizing + // + // Pillars is a required field + Pillars []*string `locationName:"pillars" type:"list" required:"true" enum:"RecommendationPillar"` + + // When the Recommendation was resolved + ResolvedAt *time.Time `locationName:"resolvedAt" type:"timestamp" timestampFormat:"iso8601"` + + // An aggregation of all resources + // + // ResourcesAggregates is a required field + ResourcesAggregates *RecommendationResourcesAggregates `locationName:"resourcesAggregates" type:"structure" required:"true"` + + // The source of the Recommendation + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"RecommendationSource"` + + // The status of the Recommendation + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"RecommendationStatus"` + + // Whether the Recommendation was automated or generated by AWS Trusted Advisor + // Priority + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RecommendationType"` + + // Reason for the lifecycle stage change + // + // UpdateReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Recommendation's + // String and GoString methods. + UpdateReason *string `locationName:"updateReason" min:"10" type:"string" sensitive:"true"` + + // Reason code for the lifecycle state change + UpdateReasonCode *string `locationName:"updateReasonCode" type:"string" enum:"UpdateRecommendationLifecycleStageReasonCode"` + + // The person on whose behalf a Technical Account Manager (TAM) updated the + // recommendation. This information is only available when a Technical Account + // Manager takes an action on a recommendation managed by AWS Trusted Advisor + // Priority + UpdatedOnBehalfOf *string `locationName:"updatedOnBehalfOf" type:"string"` + + // The job title of the person on whose behalf a Technical Account Manager (TAM) + // updated the recommendation. This information is only available when a Technical + // Account Manager takes an action on a recommendation managed by AWS Trusted + // Advisor Priority + UpdatedOnBehalfOfJobTitle *string `locationName:"updatedOnBehalfOfJobTitle" 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 Recommendation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Recommendation) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Recommendation) SetArn(v string) *Recommendation { + s.Arn = &v + return s +} + +// SetAwsServices sets the AwsServices field's value. +func (s *Recommendation) SetAwsServices(v []*string) *Recommendation { + s.AwsServices = v + return s +} + +// SetCheckArn sets the CheckArn field's value. +func (s *Recommendation) SetCheckArn(v string) *Recommendation { + s.CheckArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Recommendation) SetCreatedAt(v time.Time) *Recommendation { + s.CreatedAt = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *Recommendation) SetCreatedBy(v string) *Recommendation { + s.CreatedBy = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Recommendation) SetDescription(v string) *Recommendation { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *Recommendation) SetId(v string) *Recommendation { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *Recommendation) SetLastUpdatedAt(v time.Time) *Recommendation { + s.LastUpdatedAt = &v + return s +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *Recommendation) SetLifecycleStage(v string) *Recommendation { + s.LifecycleStage = &v + return s +} + +// SetName sets the Name field's value. +func (s *Recommendation) SetName(v string) *Recommendation { + s.Name = &v + return s +} + +// SetPillarSpecificAggregates sets the PillarSpecificAggregates field's value. +func (s *Recommendation) SetPillarSpecificAggregates(v *RecommendationPillarSpecificAggregates) *Recommendation { + s.PillarSpecificAggregates = v + return s +} + +// SetPillars sets the Pillars field's value. +func (s *Recommendation) SetPillars(v []*string) *Recommendation { + s.Pillars = v + return s +} + +// SetResolvedAt sets the ResolvedAt field's value. +func (s *Recommendation) SetResolvedAt(v time.Time) *Recommendation { + s.ResolvedAt = &v + return s +} + +// SetResourcesAggregates sets the ResourcesAggregates field's value. +func (s *Recommendation) SetResourcesAggregates(v *RecommendationResourcesAggregates) *Recommendation { + s.ResourcesAggregates = v + return s +} + +// SetSource sets the Source field's value. +func (s *Recommendation) SetSource(v string) *Recommendation { + s.Source = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Recommendation) SetStatus(v string) *Recommendation { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *Recommendation) SetType(v string) *Recommendation { + s.Type = &v + return s +} + +// SetUpdateReason sets the UpdateReason field's value. +func (s *Recommendation) SetUpdateReason(v string) *Recommendation { + s.UpdateReason = &v + return s +} + +// SetUpdateReasonCode sets the UpdateReasonCode field's value. +func (s *Recommendation) SetUpdateReasonCode(v string) *Recommendation { + s.UpdateReasonCode = &v + return s +} + +// SetUpdatedOnBehalfOf sets the UpdatedOnBehalfOf field's value. +func (s *Recommendation) SetUpdatedOnBehalfOf(v string) *Recommendation { + s.UpdatedOnBehalfOf = &v + return s +} + +// SetUpdatedOnBehalfOfJobTitle sets the UpdatedOnBehalfOfJobTitle field's value. +func (s *Recommendation) SetUpdatedOnBehalfOfJobTitle(v string) *Recommendation { + s.UpdatedOnBehalfOfJobTitle = &v + return s +} + +// Cost optimizing aggregates for a Recommendation +type RecommendationCostOptimizingAggregates struct { + _ struct{} `type:"structure"` + + // The estimated monthly savings + // + // EstimatedMonthlySavings is a required field + EstimatedMonthlySavings *float64 `locationName:"estimatedMonthlySavings" type:"double" required:"true"` + + // The estimated percently monthly savings + // + // EstimatedPercentMonthlySavings is a required field + EstimatedPercentMonthlySavings *float64 `locationName:"estimatedPercentMonthlySavings" type:"double" 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 RecommendationCostOptimizingAggregates) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationCostOptimizingAggregates) GoString() string { + return s.String() +} + +// SetEstimatedMonthlySavings sets the EstimatedMonthlySavings field's value. +func (s *RecommendationCostOptimizingAggregates) SetEstimatedMonthlySavings(v float64) *RecommendationCostOptimizingAggregates { + s.EstimatedMonthlySavings = &v + return s +} + +// SetEstimatedPercentMonthlySavings sets the EstimatedPercentMonthlySavings field's value. +func (s *RecommendationCostOptimizingAggregates) SetEstimatedPercentMonthlySavings(v float64) *RecommendationCostOptimizingAggregates { + s.EstimatedPercentMonthlySavings = &v + return s +} + +// Recommendation pillar aggregates +type RecommendationPillarSpecificAggregates struct { + _ struct{} `type:"structure"` + + // Cost optimizing aggregates + CostOptimizing *RecommendationCostOptimizingAggregates `locationName:"costOptimizing" 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 RecommendationPillarSpecificAggregates) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationPillarSpecificAggregates) GoString() string { + return s.String() +} + +// SetCostOptimizing sets the CostOptimizing field's value. +func (s *RecommendationPillarSpecificAggregates) SetCostOptimizing(v *RecommendationCostOptimizingAggregates) *RecommendationPillarSpecificAggregates { + s.CostOptimizing = v + return s +} + +// Summary of a Recommendation Resource +type RecommendationResourceSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the Recommendation Resource + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS resource identifier + // + // AwsResourceId is a required field + AwsResourceId *string `locationName:"awsResourceId" type:"string" required:"true"` + + // The ID of the Recommendation Resource + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // When the Recommendation Resource was last updated + // + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Metadata associated with the Recommendation Resource + // + // Metadata is a required field + Metadata map[string]*string `locationName:"metadata" type:"map" required:"true"` + + // The Recommendation ARN + // + // RecommendationArn is a required field + RecommendationArn *string `locationName:"recommendationArn" min:"20" type:"string" required:"true"` + + // The AWS Region code that the Recommendation Resource is in + // + // RegionCode is a required field + RegionCode *string `locationName:"regionCode" min:"9" type:"string" required:"true"` + + // The current status of the Recommendation Resource + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ResourceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationResourceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationResourceSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *RecommendationResourceSummary) SetArn(v string) *RecommendationResourceSummary { + s.Arn = &v + return s +} + +// SetAwsResourceId sets the AwsResourceId field's value. +func (s *RecommendationResourceSummary) SetAwsResourceId(v string) *RecommendationResourceSummary { + s.AwsResourceId = &v + return s +} + +// SetId sets the Id field's value. +func (s *RecommendationResourceSummary) SetId(v string) *RecommendationResourceSummary { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *RecommendationResourceSummary) SetLastUpdatedAt(v time.Time) *RecommendationResourceSummary { + s.LastUpdatedAt = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *RecommendationResourceSummary) SetMetadata(v map[string]*string) *RecommendationResourceSummary { + s.Metadata = v + return s +} + +// SetRecommendationArn sets the RecommendationArn field's value. +func (s *RecommendationResourceSummary) SetRecommendationArn(v string) *RecommendationResourceSummary { + s.RecommendationArn = &v + return s +} + +// SetRegionCode sets the RegionCode field's value. +func (s *RecommendationResourceSummary) SetRegionCode(v string) *RecommendationResourceSummary { + s.RegionCode = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RecommendationResourceSummary) SetStatus(v string) *RecommendationResourceSummary { + s.Status = &v + return s +} + +// Aggregation of Recommendation Resources +type RecommendationResourcesAggregates struct { + _ struct{} `type:"structure"` + + // The number of AWS resources that were flagged to have errors according to + // the Trusted Advisor check + // + // ErrorCount is a required field + ErrorCount *int64 `locationName:"errorCount" type:"long" required:"true"` + + // The number of AWS resources that were flagged to be OK according to the Trusted + // Advisor check + // + // OkCount is a required field + OkCount *int64 `locationName:"okCount" type:"long" required:"true"` + + // The number of AWS resources that were flagged to have warning according to + // the Trusted Advisor check + // + // WarningCount is a required field + WarningCount *int64 `locationName:"warningCount" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationResourcesAggregates) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationResourcesAggregates) GoString() string { + return s.String() +} + +// SetErrorCount sets the ErrorCount field's value. +func (s *RecommendationResourcesAggregates) SetErrorCount(v int64) *RecommendationResourcesAggregates { + s.ErrorCount = &v + return s +} + +// SetOkCount sets the OkCount field's value. +func (s *RecommendationResourcesAggregates) SetOkCount(v int64) *RecommendationResourcesAggregates { + s.OkCount = &v + return s +} + +// SetWarningCount sets the WarningCount field's value. +func (s *RecommendationResourcesAggregates) SetWarningCount(v int64) *RecommendationResourcesAggregates { + s.WarningCount = &v + return s +} + +// Summary of Recommendation for an Account +type RecommendationSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the Recommendation + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The AWS Services that the Recommendation applies to + AwsServices []*string `locationName:"awsServices" type:"list"` + + // The AWS Trusted Advisor Check ARN that relates to the Recommendation + CheckArn *string `locationName:"checkArn" type:"string"` + + // When the Recommendation was created, if created by AWS Trusted Advisor Priority + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + + // The ID which identifies where the Recommendation was produced + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // When the Recommendation was last updated + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The lifecycle stage from AWS Trusted Advisor Priority + LifecycleStage *string `locationName:"lifecycleStage" type:"string" enum:"RecommendationLifecycleStage"` + + // The name of the AWS Trusted Advisor Recommendation + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The pillar aggregations for cost savings + PillarSpecificAggregates *RecommendationPillarSpecificAggregates `locationName:"pillarSpecificAggregates" type:"structure"` + + // The Pillars that the Recommendation is optimizing + // + // Pillars is a required field + Pillars []*string `locationName:"pillars" type:"list" required:"true" enum:"RecommendationPillar"` + + // An aggregation of all resources + // + // ResourcesAggregates is a required field + ResourcesAggregates *RecommendationResourcesAggregates `locationName:"resourcesAggregates" type:"structure" required:"true"` + + // The source of the Recommendation + // + // Source is a required field + Source *string `locationName:"source" type:"string" required:"true" enum:"RecommendationSource"` + + // The status of the Recommendation + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"RecommendationStatus"` + + // Whether the Recommendation was automated or generated by AWS Trusted Advisor + // Priority + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"RecommendationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecommendationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *RecommendationSummary) SetArn(v string) *RecommendationSummary { + s.Arn = &v + return s +} + +// SetAwsServices sets the AwsServices field's value. +func (s *RecommendationSummary) SetAwsServices(v []*string) *RecommendationSummary { + s.AwsServices = v + return s +} + +// SetCheckArn sets the CheckArn field's value. +func (s *RecommendationSummary) SetCheckArn(v string) *RecommendationSummary { + s.CheckArn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *RecommendationSummary) SetCreatedAt(v time.Time) *RecommendationSummary { + s.CreatedAt = &v + return s +} + +// SetId sets the Id field's value. +func (s *RecommendationSummary) SetId(v string) *RecommendationSummary { + s.Id = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *RecommendationSummary) SetLastUpdatedAt(v time.Time) *RecommendationSummary { + s.LastUpdatedAt = &v + return s +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *RecommendationSummary) SetLifecycleStage(v string) *RecommendationSummary { + s.LifecycleStage = &v + return s +} + +// SetName sets the Name field's value. +func (s *RecommendationSummary) SetName(v string) *RecommendationSummary { + s.Name = &v + return s +} + +// SetPillarSpecificAggregates sets the PillarSpecificAggregates field's value. +func (s *RecommendationSummary) SetPillarSpecificAggregates(v *RecommendationPillarSpecificAggregates) *RecommendationSummary { + s.PillarSpecificAggregates = v + return s +} + +// SetPillars sets the Pillars field's value. +func (s *RecommendationSummary) SetPillars(v []*string) *RecommendationSummary { + s.Pillars = v + return s +} + +// SetResourcesAggregates sets the ResourcesAggregates field's value. +func (s *RecommendationSummary) SetResourcesAggregates(v *RecommendationResourcesAggregates) *RecommendationSummary { + s.ResourcesAggregates = v + return s +} + +// SetSource sets the Source field's value. +func (s *RecommendationSummary) SetSource(v string) *RecommendationSummary { + s.Source = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RecommendationSummary) SetStatus(v string) *RecommendationSummary { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *RecommendationSummary) SetType(v string) *RecommendationSummary { + s.Type = &v + return s +} + +// Exception that the requested resource has not been found +type ResourceNotFoundException 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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Exception to notify that requests are being throttled +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UpdateOrganizationRecommendationLifecycleInput struct { + _ struct{} `type:"structure"` + + // The new lifecycle stage + // + // LifecycleStage is a required field + LifecycleStage *string `locationName:"lifecycleStage" type:"string" required:"true" enum:"UpdateRecommendationLifecycleStage"` + + // The Recommendation identifier for AWS Trusted Advisor Priority recommendations + // + // OrganizationRecommendationIdentifier is a required field + OrganizationRecommendationIdentifier *string `location:"uri" locationName:"organizationRecommendationIdentifier" min:"20" type:"string" required:"true"` + + // Reason for the lifecycle stage change + // + // UpdateReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateOrganizationRecommendationLifecycleInput's + // String and GoString methods. + UpdateReason *string `locationName:"updateReason" min:"10" type:"string" sensitive:"true"` + + // Reason code for the lifecycle state change + UpdateReasonCode *string `locationName:"updateReasonCode" type:"string" enum:"UpdateRecommendationLifecycleStageReasonCode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateOrganizationRecommendationLifecycleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateOrganizationRecommendationLifecycleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateOrganizationRecommendationLifecycleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateOrganizationRecommendationLifecycleInput"} + if s.LifecycleStage == nil { + invalidParams.Add(request.NewErrParamRequired("LifecycleStage")) + } + if s.OrganizationRecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationRecommendationIdentifier")) + } + if s.OrganizationRecommendationIdentifier != nil && len(*s.OrganizationRecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationRecommendationIdentifier", 20)) + } + if s.UpdateReason != nil && len(*s.UpdateReason) < 10 { + invalidParams.Add(request.NewErrParamMinLen("UpdateReason", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *UpdateOrganizationRecommendationLifecycleInput) SetLifecycleStage(v string) *UpdateOrganizationRecommendationLifecycleInput { + s.LifecycleStage = &v + return s +} + +// SetOrganizationRecommendationIdentifier sets the OrganizationRecommendationIdentifier field's value. +func (s *UpdateOrganizationRecommendationLifecycleInput) SetOrganizationRecommendationIdentifier(v string) *UpdateOrganizationRecommendationLifecycleInput { + s.OrganizationRecommendationIdentifier = &v + return s +} + +// SetUpdateReason sets the UpdateReason field's value. +func (s *UpdateOrganizationRecommendationLifecycleInput) SetUpdateReason(v string) *UpdateOrganizationRecommendationLifecycleInput { + s.UpdateReason = &v + return s +} + +// SetUpdateReasonCode sets the UpdateReasonCode field's value. +func (s *UpdateOrganizationRecommendationLifecycleInput) SetUpdateReasonCode(v string) *UpdateOrganizationRecommendationLifecycleInput { + s.UpdateReasonCode = &v + return s +} + +type UpdateOrganizationRecommendationLifecycleOutput 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 UpdateOrganizationRecommendationLifecycleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateOrganizationRecommendationLifecycleOutput) GoString() string { + return s.String() +} + +type UpdateRecommendationLifecycleInput struct { + _ struct{} `type:"structure"` + + // The new lifecycle stage + // + // LifecycleStage is a required field + LifecycleStage *string `locationName:"lifecycleStage" type:"string" required:"true" enum:"UpdateRecommendationLifecycleStage"` + + // The Recommendation identifier for AWS Trusted Advisor Priority recommendations + // + // RecommendationIdentifier is a required field + RecommendationIdentifier *string `location:"uri" locationName:"recommendationIdentifier" min:"20" type:"string" required:"true"` + + // Reason for the lifecycle stage change + // + // UpdateReason is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateRecommendationLifecycleInput's + // String and GoString methods. + UpdateReason *string `locationName:"updateReason" min:"10" type:"string" sensitive:"true"` + + // Reason code for the lifecycle state change + UpdateReasonCode *string `locationName:"updateReasonCode" type:"string" enum:"UpdateRecommendationLifecycleStageReasonCode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRecommendationLifecycleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRecommendationLifecycleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRecommendationLifecycleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRecommendationLifecycleInput"} + if s.LifecycleStage == nil { + invalidParams.Add(request.NewErrParamRequired("LifecycleStage")) + } + if s.RecommendationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("RecommendationIdentifier")) + } + if s.RecommendationIdentifier != nil && len(*s.RecommendationIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RecommendationIdentifier", 20)) + } + if s.UpdateReason != nil && len(*s.UpdateReason) < 10 { + invalidParams.Add(request.NewErrParamMinLen("UpdateReason", 10)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLifecycleStage sets the LifecycleStage field's value. +func (s *UpdateRecommendationLifecycleInput) SetLifecycleStage(v string) *UpdateRecommendationLifecycleInput { + s.LifecycleStage = &v + return s +} + +// SetRecommendationIdentifier sets the RecommendationIdentifier field's value. +func (s *UpdateRecommendationLifecycleInput) SetRecommendationIdentifier(v string) *UpdateRecommendationLifecycleInput { + s.RecommendationIdentifier = &v + return s +} + +// SetUpdateReason sets the UpdateReason field's value. +func (s *UpdateRecommendationLifecycleInput) SetUpdateReason(v string) *UpdateRecommendationLifecycleInput { + s.UpdateReason = &v + return s +} + +// SetUpdateReasonCode sets the UpdateReasonCode field's value. +func (s *UpdateRecommendationLifecycleInput) SetUpdateReasonCode(v string) *UpdateRecommendationLifecycleInput { + s.UpdateReasonCode = &v + return s +} + +type UpdateRecommendationLifecycleOutput 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 UpdateRecommendationLifecycleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRecommendationLifecycleOutput) GoString() string { + return s.String() +} + +// Exception that the request failed to satisfy service constraints +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 +} + +const ( + // RecommendationLanguageEn is a RecommendationLanguage enum value + RecommendationLanguageEn = "en" + + // RecommendationLanguageJa is a RecommendationLanguage enum value + RecommendationLanguageJa = "ja" + + // RecommendationLanguageZh is a RecommendationLanguage enum value + RecommendationLanguageZh = "zh" + + // RecommendationLanguageFr is a RecommendationLanguage enum value + RecommendationLanguageFr = "fr" + + // RecommendationLanguageDe is a RecommendationLanguage enum value + RecommendationLanguageDe = "de" + + // RecommendationLanguageKo is a RecommendationLanguage enum value + RecommendationLanguageKo = "ko" + + // RecommendationLanguageZhTw is a RecommendationLanguage enum value + RecommendationLanguageZhTw = "zh_TW" + + // RecommendationLanguageIt is a RecommendationLanguage enum value + RecommendationLanguageIt = "it" + + // RecommendationLanguageEs is a RecommendationLanguage enum value + RecommendationLanguageEs = "es" + + // RecommendationLanguagePtBr is a RecommendationLanguage enum value + RecommendationLanguagePtBr = "pt_BR" + + // RecommendationLanguageId is a RecommendationLanguage enum value + RecommendationLanguageId = "id" +) + +// RecommendationLanguage_Values returns all elements of the RecommendationLanguage enum +func RecommendationLanguage_Values() []string { + return []string{ + RecommendationLanguageEn, + RecommendationLanguageJa, + RecommendationLanguageZh, + RecommendationLanguageFr, + RecommendationLanguageDe, + RecommendationLanguageKo, + RecommendationLanguageZhTw, + RecommendationLanguageIt, + RecommendationLanguageEs, + RecommendationLanguagePtBr, + RecommendationLanguageId, + } +} + +const ( + // RecommendationLifecycleStageInProgress is a RecommendationLifecycleStage enum value + RecommendationLifecycleStageInProgress = "in_progress" + + // RecommendationLifecycleStagePendingResponse is a RecommendationLifecycleStage enum value + RecommendationLifecycleStagePendingResponse = "pending_response" + + // RecommendationLifecycleStageDismissed is a RecommendationLifecycleStage enum value + RecommendationLifecycleStageDismissed = "dismissed" + + // RecommendationLifecycleStageResolved is a RecommendationLifecycleStage enum value + RecommendationLifecycleStageResolved = "resolved" +) + +// RecommendationLifecycleStage_Values returns all elements of the RecommendationLifecycleStage enum +func RecommendationLifecycleStage_Values() []string { + return []string{ + RecommendationLifecycleStageInProgress, + RecommendationLifecycleStagePendingResponse, + RecommendationLifecycleStageDismissed, + RecommendationLifecycleStageResolved, + } +} + +const ( + // RecommendationPillarCostOptimizing is a RecommendationPillar enum value + RecommendationPillarCostOptimizing = "cost_optimizing" + + // RecommendationPillarPerformance is a RecommendationPillar enum value + RecommendationPillarPerformance = "performance" + + // RecommendationPillarSecurity is a RecommendationPillar enum value + RecommendationPillarSecurity = "security" + + // RecommendationPillarServiceLimits is a RecommendationPillar enum value + RecommendationPillarServiceLimits = "service_limits" + + // RecommendationPillarFaultTolerance is a RecommendationPillar enum value + RecommendationPillarFaultTolerance = "fault_tolerance" + + // RecommendationPillarOperationalExcellence is a RecommendationPillar enum value + RecommendationPillarOperationalExcellence = "operational_excellence" +) + +// RecommendationPillar_Values returns all elements of the RecommendationPillar enum +func RecommendationPillar_Values() []string { + return []string{ + RecommendationPillarCostOptimizing, + RecommendationPillarPerformance, + RecommendationPillarSecurity, + RecommendationPillarServiceLimits, + RecommendationPillarFaultTolerance, + RecommendationPillarOperationalExcellence, + } +} + +const ( + // RecommendationSourceAwsConfig is a RecommendationSource enum value + RecommendationSourceAwsConfig = "aws_config" + + // RecommendationSourceComputeOptimizer is a RecommendationSource enum value + RecommendationSourceComputeOptimizer = "compute_optimizer" + + // RecommendationSourceCostExplorer is a RecommendationSource enum value + RecommendationSourceCostExplorer = "cost_explorer" + + // RecommendationSourceLse is a RecommendationSource enum value + RecommendationSourceLse = "lse" + + // RecommendationSourceManual is a RecommendationSource enum value + RecommendationSourceManual = "manual" + + // RecommendationSourcePse is a RecommendationSource enum value + RecommendationSourcePse = "pse" + + // RecommendationSourceRds is a RecommendationSource enum value + RecommendationSourceRds = "rds" + + // RecommendationSourceResilience is a RecommendationSource enum value + RecommendationSourceResilience = "resilience" + + // RecommendationSourceResilienceHub is a RecommendationSource enum value + RecommendationSourceResilienceHub = "resilience_hub" + + // RecommendationSourceSecurityHub is a RecommendationSource enum value + RecommendationSourceSecurityHub = "security_hub" + + // RecommendationSourceStir is a RecommendationSource enum value + RecommendationSourceStir = "stir" + + // RecommendationSourceTaCheck is a RecommendationSource enum value + RecommendationSourceTaCheck = "ta_check" + + // RecommendationSourceWellArchitected is a RecommendationSource enum value + RecommendationSourceWellArchitected = "well_architected" +) + +// RecommendationSource_Values returns all elements of the RecommendationSource enum +func RecommendationSource_Values() []string { + return []string{ + RecommendationSourceAwsConfig, + RecommendationSourceComputeOptimizer, + RecommendationSourceCostExplorer, + RecommendationSourceLse, + RecommendationSourceManual, + RecommendationSourcePse, + RecommendationSourceRds, + RecommendationSourceResilience, + RecommendationSourceResilienceHub, + RecommendationSourceSecurityHub, + RecommendationSourceStir, + RecommendationSourceTaCheck, + RecommendationSourceWellArchitected, + } +} + +const ( + // RecommendationStatusOk is a RecommendationStatus enum value + RecommendationStatusOk = "ok" + + // RecommendationStatusWarning is a RecommendationStatus enum value + RecommendationStatusWarning = "warning" + + // RecommendationStatusError is a RecommendationStatus enum value + RecommendationStatusError = "error" +) + +// RecommendationStatus_Values returns all elements of the RecommendationStatus enum +func RecommendationStatus_Values() []string { + return []string{ + RecommendationStatusOk, + RecommendationStatusWarning, + RecommendationStatusError, + } +} + +const ( + // RecommendationTypeStandard is a RecommendationType enum value + RecommendationTypeStandard = "standard" + + // RecommendationTypePriority is a RecommendationType enum value + RecommendationTypePriority = "priority" +) + +// RecommendationType_Values returns all elements of the RecommendationType enum +func RecommendationType_Values() []string { + return []string{ + RecommendationTypeStandard, + RecommendationTypePriority, + } +} + +const ( + // ResourceStatusOk is a ResourceStatus enum value + ResourceStatusOk = "ok" + + // ResourceStatusWarning is a ResourceStatus enum value + ResourceStatusWarning = "warning" + + // ResourceStatusError is a ResourceStatus enum value + ResourceStatusError = "error" +) + +// ResourceStatus_Values returns all elements of the ResourceStatus enum +func ResourceStatus_Values() []string { + return []string{ + ResourceStatusOk, + ResourceStatusWarning, + ResourceStatusError, + } +} + +const ( + // UpdateRecommendationLifecycleStagePendingResponse is a UpdateRecommendationLifecycleStage enum value + UpdateRecommendationLifecycleStagePendingResponse = "pending_response" + + // UpdateRecommendationLifecycleStageInProgress is a UpdateRecommendationLifecycleStage enum value + UpdateRecommendationLifecycleStageInProgress = "in_progress" + + // UpdateRecommendationLifecycleStageDismissed is a UpdateRecommendationLifecycleStage enum value + UpdateRecommendationLifecycleStageDismissed = "dismissed" + + // UpdateRecommendationLifecycleStageResolved is a UpdateRecommendationLifecycleStage enum value + UpdateRecommendationLifecycleStageResolved = "resolved" +) + +// UpdateRecommendationLifecycleStage_Values returns all elements of the UpdateRecommendationLifecycleStage enum +func UpdateRecommendationLifecycleStage_Values() []string { + return []string{ + UpdateRecommendationLifecycleStagePendingResponse, + UpdateRecommendationLifecycleStageInProgress, + UpdateRecommendationLifecycleStageDismissed, + UpdateRecommendationLifecycleStageResolved, + } +} + +const ( + // UpdateRecommendationLifecycleStageReasonCodeNonCriticalAccount is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeNonCriticalAccount = "non_critical_account" + + // UpdateRecommendationLifecycleStageReasonCodeTemporaryAccount is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeTemporaryAccount = "temporary_account" + + // UpdateRecommendationLifecycleStageReasonCodeValidBusinessCase is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeValidBusinessCase = "valid_business_case" + + // UpdateRecommendationLifecycleStageReasonCodeOtherMethodsAvailable is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeOtherMethodsAvailable = "other_methods_available" + + // UpdateRecommendationLifecycleStageReasonCodeLowPriority is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeLowPriority = "low_priority" + + // UpdateRecommendationLifecycleStageReasonCodeNotApplicable is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeNotApplicable = "not_applicable" + + // UpdateRecommendationLifecycleStageReasonCodeOther is a UpdateRecommendationLifecycleStageReasonCode enum value + UpdateRecommendationLifecycleStageReasonCodeOther = "other" +) + +// UpdateRecommendationLifecycleStageReasonCode_Values returns all elements of the UpdateRecommendationLifecycleStageReasonCode enum +func UpdateRecommendationLifecycleStageReasonCode_Values() []string { + return []string{ + UpdateRecommendationLifecycleStageReasonCodeNonCriticalAccount, + UpdateRecommendationLifecycleStageReasonCodeTemporaryAccount, + UpdateRecommendationLifecycleStageReasonCodeValidBusinessCase, + UpdateRecommendationLifecycleStageReasonCodeOtherMethodsAvailable, + UpdateRecommendationLifecycleStageReasonCodeLowPriority, + UpdateRecommendationLifecycleStageReasonCodeNotApplicable, + UpdateRecommendationLifecycleStageReasonCodeOther, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,28 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package trustedadvisor provides the client and types for making API +// requests to TrustedAdvisor Public API. +// +// # TrustedAdvisor Public API +// +// See https://docs.aws.amazon.com/goto/WebAPI/trustedadvisor-2022-09-15 for more information on this service. +// +// See trustedadvisor package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/trustedadvisor/ +// +// # Using the Client +// +// To contact TrustedAdvisor Public API 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 TrustedAdvisor Public API client TrustedAdvisor for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/trustedadvisor/#New +package trustedadvisor diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,56 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package trustedadvisor + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // Exception that access has been denied due to insufficient access + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Exception that the request was denied due to conflictions in state + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // Exception to notify that an unexpected internal error occurred during processing + // of the request + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Exception that the requested resource has not been found + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // Exception to notify that requests are being throttled + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Exception that the request failed to satisfy service constraints + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/service.go golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package trustedadvisor + +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/restjson" +) + +// TrustedAdvisor provides the API operation methods for making requests to +// TrustedAdvisor Public API. See this package's package overview docs +// for details on the service. +// +// TrustedAdvisor methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type TrustedAdvisor 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 = "TrustedAdvisor" // Name of service. + EndpointsID = "trustedadvisor" // ID to lookup a service endpoint with. + ServiceID = "TrustedAdvisor" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the TrustedAdvisor 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 TrustedAdvisor client from just a session. +// svc := trustedadvisor.New(mySession) +// +// // Create a TrustedAdvisor client with additional configuration +// svc := trustedadvisor.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *TrustedAdvisor { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "trustedadvisor" + } + 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) *TrustedAdvisor { + svc := &TrustedAdvisor{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2022-09-15", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a TrustedAdvisor operation and runs any +// custom request initialization. +func (c *TrustedAdvisor) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/trustedadvisoriface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/trustedadvisoriface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/trustedadvisor/trustedadvisoriface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/trustedadvisor/trustedadvisoriface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,122 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package trustedadvisoriface provides an interface to enable mocking the TrustedAdvisor Public API 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 trustedadvisoriface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/trustedadvisor" +) + +// TrustedAdvisorAPI provides an interface to enable mocking the +// trustedadvisor.TrustedAdvisor 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 +// // TrustedAdvisor Public API. +// func myFunc(svc trustedadvisoriface.TrustedAdvisorAPI) bool { +// // Make svc.GetOrganizationRecommendation request +// } +// +// func main() { +// sess := session.New() +// svc := trustedadvisor.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockTrustedAdvisorClient struct { +// trustedadvisoriface.TrustedAdvisorAPI +// } +// func (m *mockTrustedAdvisorClient) GetOrganizationRecommendation(input *trustedadvisor.GetOrganizationRecommendationInput) (*trustedadvisor.GetOrganizationRecommendationOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockTrustedAdvisorClient{} +// +// 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 TrustedAdvisorAPI interface { + GetOrganizationRecommendation(*trustedadvisor.GetOrganizationRecommendationInput) (*trustedadvisor.GetOrganizationRecommendationOutput, error) + GetOrganizationRecommendationWithContext(aws.Context, *trustedadvisor.GetOrganizationRecommendationInput, ...request.Option) (*trustedadvisor.GetOrganizationRecommendationOutput, error) + GetOrganizationRecommendationRequest(*trustedadvisor.GetOrganizationRecommendationInput) (*request.Request, *trustedadvisor.GetOrganizationRecommendationOutput) + + GetRecommendation(*trustedadvisor.GetRecommendationInput) (*trustedadvisor.GetRecommendationOutput, error) + GetRecommendationWithContext(aws.Context, *trustedadvisor.GetRecommendationInput, ...request.Option) (*trustedadvisor.GetRecommendationOutput, error) + GetRecommendationRequest(*trustedadvisor.GetRecommendationInput) (*request.Request, *trustedadvisor.GetRecommendationOutput) + + ListChecks(*trustedadvisor.ListChecksInput) (*trustedadvisor.ListChecksOutput, error) + ListChecksWithContext(aws.Context, *trustedadvisor.ListChecksInput, ...request.Option) (*trustedadvisor.ListChecksOutput, error) + ListChecksRequest(*trustedadvisor.ListChecksInput) (*request.Request, *trustedadvisor.ListChecksOutput) + + ListChecksPages(*trustedadvisor.ListChecksInput, func(*trustedadvisor.ListChecksOutput, bool) bool) error + ListChecksPagesWithContext(aws.Context, *trustedadvisor.ListChecksInput, func(*trustedadvisor.ListChecksOutput, bool) bool, ...request.Option) error + + ListOrganizationRecommendationAccounts(*trustedadvisor.ListOrganizationRecommendationAccountsInput) (*trustedadvisor.ListOrganizationRecommendationAccountsOutput, error) + ListOrganizationRecommendationAccountsWithContext(aws.Context, *trustedadvisor.ListOrganizationRecommendationAccountsInput, ...request.Option) (*trustedadvisor.ListOrganizationRecommendationAccountsOutput, error) + ListOrganizationRecommendationAccountsRequest(*trustedadvisor.ListOrganizationRecommendationAccountsInput) (*request.Request, *trustedadvisor.ListOrganizationRecommendationAccountsOutput) + + ListOrganizationRecommendationAccountsPages(*trustedadvisor.ListOrganizationRecommendationAccountsInput, func(*trustedadvisor.ListOrganizationRecommendationAccountsOutput, bool) bool) error + ListOrganizationRecommendationAccountsPagesWithContext(aws.Context, *trustedadvisor.ListOrganizationRecommendationAccountsInput, func(*trustedadvisor.ListOrganizationRecommendationAccountsOutput, bool) bool, ...request.Option) error + + ListOrganizationRecommendationResources(*trustedadvisor.ListOrganizationRecommendationResourcesInput) (*trustedadvisor.ListOrganizationRecommendationResourcesOutput, error) + ListOrganizationRecommendationResourcesWithContext(aws.Context, *trustedadvisor.ListOrganizationRecommendationResourcesInput, ...request.Option) (*trustedadvisor.ListOrganizationRecommendationResourcesOutput, error) + ListOrganizationRecommendationResourcesRequest(*trustedadvisor.ListOrganizationRecommendationResourcesInput) (*request.Request, *trustedadvisor.ListOrganizationRecommendationResourcesOutput) + + ListOrganizationRecommendationResourcesPages(*trustedadvisor.ListOrganizationRecommendationResourcesInput, func(*trustedadvisor.ListOrganizationRecommendationResourcesOutput, bool) bool) error + ListOrganizationRecommendationResourcesPagesWithContext(aws.Context, *trustedadvisor.ListOrganizationRecommendationResourcesInput, func(*trustedadvisor.ListOrganizationRecommendationResourcesOutput, bool) bool, ...request.Option) error + + ListOrganizationRecommendations(*trustedadvisor.ListOrganizationRecommendationsInput) (*trustedadvisor.ListOrganizationRecommendationsOutput, error) + ListOrganizationRecommendationsWithContext(aws.Context, *trustedadvisor.ListOrganizationRecommendationsInput, ...request.Option) (*trustedadvisor.ListOrganizationRecommendationsOutput, error) + ListOrganizationRecommendationsRequest(*trustedadvisor.ListOrganizationRecommendationsInput) (*request.Request, *trustedadvisor.ListOrganizationRecommendationsOutput) + + ListOrganizationRecommendationsPages(*trustedadvisor.ListOrganizationRecommendationsInput, func(*trustedadvisor.ListOrganizationRecommendationsOutput, bool) bool) error + ListOrganizationRecommendationsPagesWithContext(aws.Context, *trustedadvisor.ListOrganizationRecommendationsInput, func(*trustedadvisor.ListOrganizationRecommendationsOutput, bool) bool, ...request.Option) error + + ListRecommendationResources(*trustedadvisor.ListRecommendationResourcesInput) (*trustedadvisor.ListRecommendationResourcesOutput, error) + ListRecommendationResourcesWithContext(aws.Context, *trustedadvisor.ListRecommendationResourcesInput, ...request.Option) (*trustedadvisor.ListRecommendationResourcesOutput, error) + ListRecommendationResourcesRequest(*trustedadvisor.ListRecommendationResourcesInput) (*request.Request, *trustedadvisor.ListRecommendationResourcesOutput) + + ListRecommendationResourcesPages(*trustedadvisor.ListRecommendationResourcesInput, func(*trustedadvisor.ListRecommendationResourcesOutput, bool) bool) error + ListRecommendationResourcesPagesWithContext(aws.Context, *trustedadvisor.ListRecommendationResourcesInput, func(*trustedadvisor.ListRecommendationResourcesOutput, bool) bool, ...request.Option) error + + ListRecommendations(*trustedadvisor.ListRecommendationsInput) (*trustedadvisor.ListRecommendationsOutput, error) + ListRecommendationsWithContext(aws.Context, *trustedadvisor.ListRecommendationsInput, ...request.Option) (*trustedadvisor.ListRecommendationsOutput, error) + ListRecommendationsRequest(*trustedadvisor.ListRecommendationsInput) (*request.Request, *trustedadvisor.ListRecommendationsOutput) + + ListRecommendationsPages(*trustedadvisor.ListRecommendationsInput, func(*trustedadvisor.ListRecommendationsOutput, bool) bool) error + ListRecommendationsPagesWithContext(aws.Context, *trustedadvisor.ListRecommendationsInput, func(*trustedadvisor.ListRecommendationsOutput, bool) bool, ...request.Option) error + + UpdateOrganizationRecommendationLifecycle(*trustedadvisor.UpdateOrganizationRecommendationLifecycleInput) (*trustedadvisor.UpdateOrganizationRecommendationLifecycleOutput, error) + UpdateOrganizationRecommendationLifecycleWithContext(aws.Context, *trustedadvisor.UpdateOrganizationRecommendationLifecycleInput, ...request.Option) (*trustedadvisor.UpdateOrganizationRecommendationLifecycleOutput, error) + UpdateOrganizationRecommendationLifecycleRequest(*trustedadvisor.UpdateOrganizationRecommendationLifecycleInput) (*request.Request, *trustedadvisor.UpdateOrganizationRecommendationLifecycleOutput) + + UpdateRecommendationLifecycle(*trustedadvisor.UpdateRecommendationLifecycleInput) (*trustedadvisor.UpdateRecommendationLifecycleOutput, error) + UpdateRecommendationLifecycleWithContext(aws.Context, *trustedadvisor.UpdateRecommendationLifecycleInput, ...request.Option) (*trustedadvisor.UpdateRecommendationLifecycleOutput, error) + UpdateRecommendationLifecycleRequest(*trustedadvisor.UpdateRecommendationLifecycleInput) (*request.Request, *trustedadvisor.UpdateRecommendationLifecycleOutput) +} + +var _ TrustedAdvisorAPI = (*trustedadvisor.TrustedAdvisor)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/verifiedpermissions/api.go golang-github-aws-aws-sdk-go-1.48.14/service/verifiedpermissions/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/verifiedpermissions/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/verifiedpermissions/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -13,6 +13,160 @@ "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) +const opBatchIsAuthorized = "BatchIsAuthorized" + +// BatchIsAuthorizedRequest generates a "aws/request.Request" representing the +// client's request for the BatchIsAuthorized 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 BatchIsAuthorized for more information on using the BatchIsAuthorized +// 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 BatchIsAuthorizedRequest method. +// req, resp := client.BatchIsAuthorizedRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorized +func (c *VerifiedPermissions) BatchIsAuthorizedRequest(input *BatchIsAuthorizedInput) (req *request.Request, output *BatchIsAuthorizedOutput) { + op := &request.Operation{ + Name: opBatchIsAuthorized, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchIsAuthorizedInput{} + } + + output = &BatchIsAuthorizedOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchIsAuthorized API operation for Amazon Verified Permissions. +// +// Makes a series of decisions about multiple authorization requests for one +// principal or resource. Each request contains the equivalent content of an +// IsAuthorized request: principal, action, resource, and context. Either the +// principal or the resource parameter must be identical across all requests. +// For example, Verified Permissions won't evaluate a pair of requests where +// bob views photo1 and alice views photo2. Authorization of bob to view photo1 +// and photo2, or bob and alice to view photo1, are valid batches. +// +// The request is evaluated against all policies in the specified policy store +// that match the entities that you declare. The result of the decisions is +// a series of Allow or Deny responses, along with the IDs of the policies that +// produced each decision. +// +// The entities of a BatchIsAuthorized API request can contain up to 100 principals +// and up to 100 resources. The requests of a BatchIsAuthorized API request +// can contain up to 30 requests. +// +// The BatchIsAuthorized operation doesn't have its own IAM permission. To authorize +// this operation for Amazon Web Services principals, include the permission +// verifiedpermissions:IsAuthorized in their IAM policies. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Verified Permissions's +// API operation BatchIsAuthorized for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The request failed because one or more input parameters don't satisfy their +// constraint requirements. The output is provided as a list of fields and a +// reason for each field that isn't valid. +// +// The possible reasons include the following: +// +// - UnrecognizedEntityType The policy includes an entity type that isn't +// found in the schema. +// +// - UnrecognizedActionId The policy includes an action id that isn't found +// in the schema. +// +// - InvalidActionApplication The policy includes an action that, according +// to the schema, doesn't support the specified principal and resource. +// +// - UnexpectedType The policy included an operand that isn't a valid type +// for the specified operation. +// +// - IncompatibleTypes The types of elements included in a set, or the types +// of expressions used in an if...then...else clause aren't compatible in +// this context. +// +// - MissingAttribute The policy attempts to access a record or entity attribute +// that isn't specified in the schema. Test for the existence of the attribute +// first before attempting to access its value. For more information, see +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) +// in the Cedar Policy Language Guide. +// +// - UnsafeOptionalAttributeAccess The policy attempts to access a record +// or entity attribute that is optional and isn't guaranteed to be present. +// Test for the existence of the attribute first before attempting to access +// its value. For more information, see the has (presence of attribute test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) +// in the Cedar Policy Language Guide. +// +// - ImpossiblePolicy Cedar has determined that a policy condition always +// evaluates to false. If the policy is always false, it can never apply +// to any query, and so it can never affect an authorization decision. +// +// - WrongNumberArguments The policy references an extension type with the +// wrong number of arguments. +// +// - FunctionArgumentValidationError Cedar couldn't parse the argument passed +// to an extension type. For example, a string that is to be parsed as an +// IPv4 address can contain only digits and the period character. +// +// - AccessDeniedException +// You don't have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The request failed because it references a resource that doesn't exist. +// +// - ThrottlingException +// The request failed because it exceeded a throttling quota. +// +// - InternalServerException +// The request failed because of an internal error. Try your request again later +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/verifiedpermissions-2021-12-01/BatchIsAuthorized +func (c *VerifiedPermissions) BatchIsAuthorized(input *BatchIsAuthorizedInput) (*BatchIsAuthorizedOutput, error) { + req, out := c.BatchIsAuthorizedRequest(input) + return out, req.Send() +} + +// BatchIsAuthorizedWithContext is the same as BatchIsAuthorized with the addition of +// the ability to pass a context and additional request options. +// +// See BatchIsAuthorized 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 *VerifiedPermissions) BatchIsAuthorizedWithContext(ctx aws.Context, input *BatchIsAuthorizedInput, opts ...request.Option) (*BatchIsAuthorizedOutput, error) { + req, out := c.BatchIsAuthorizedRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateIdentitySource = "CreateIdentitySource" // CreateIdentitySourceRequest generates a "aws/request.Request" representing the @@ -125,14 +279,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -149,6 +303,10 @@ // - ServiceQuotaExceededException // The request failed because it would cause a service quota to be exceeded. // +// - ConflictException +// The request failed because another request to modify a resource occurred +// at the same. +// // - AccessDeniedException // You don't have sufficient access to perform this action. // @@ -282,14 +440,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -306,6 +464,10 @@ // - ServiceQuotaExceededException // The request failed because it would cause a service quota to be exceeded. // +// - ConflictException +// The request failed because another request to modify a resource occurred +// at the same. +// // - AccessDeniedException // You don't have sufficient access to perform this action. // @@ -385,7 +547,7 @@ // // Creates a policy store. A policy store is a container for policy resources. // -// Although Cedar supports multiple namespaces (https://docs.cedarpolicy.com/schema.html#namespace), +// Although Cedar supports multiple namespaces (https://docs.cedarpolicy.com/schema/schema.html#namespace), // Verified Permissions currently supports only one namespace per policy store. // // Verified Permissions is eventually consistent (https://wikipedia.org/wiki/Eventual_consistency) @@ -428,14 +590,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -452,6 +614,10 @@ // - ServiceQuotaExceededException // The request failed because it would cause a service quota to be exceeded. // +// - ConflictException +// The request failed because another request to modify a resource occurred +// at the same. +// // - AccessDeniedException // You don't have sufficient access to perform this action. // @@ -574,14 +740,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -598,6 +764,10 @@ // - ServiceQuotaExceededException // The request failed because it would cause a service quota to be exceeded. // +// - ConflictException +// The request failed because another request to modify a resource occurred +// at the same. +// // - AccessDeniedException // You don't have sufficient access to perform this action. // @@ -717,14 +887,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -860,14 +1030,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1004,14 +1174,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1141,14 +1311,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1280,14 +1450,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1415,14 +1585,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1550,14 +1720,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1686,14 +1856,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1821,14 +1991,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -1961,14 +2131,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -2119,14 +2289,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -2261,14 +2431,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -2453,14 +2623,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -2646,14 +2816,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -2836,14 +3006,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -3032,14 +3202,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -3181,14 +3351,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -3343,14 +3513,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -3490,14 +3660,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -3595,9 +3765,9 @@ // Updates the specified policy template. You can update only the description // and the some elements of the policyBody (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_UpdatePolicyTemplate.html#amazonverifiedpermissions-UpdatePolicyTemplate-request-policyBody). // -// Changes you make to the policy template content are immediately reflected -// in authorization decisions that involve all template-linked policies instantiated -// from this template. +// Changes you make to the policy template content are immediately (within the +// constraints of eventual consistency) reflected in authorization decisions +// that involve all template-linked policies instantiated from this template. // // Verified Permissions is eventually consistent (https://wikipedia.org/wiki/Eventual_consistency) // . It can take a few seconds for a new or changed element to be propagate @@ -3639,14 +3809,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always @@ -3765,7 +3935,8 @@ // Contains information about an action for a request for which an authorization // decision is made. // -// This data type is used as an request parameter to the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html) +// This data type is used as a request parameter to the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html), +// BatchIsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html), // and IsAuthorizedWithToken (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html) // operations. // @@ -3850,13 +4021,14 @@ // authorization decision is made. // // This data type is used as a member of the ContextDefinition (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_ContextDefinition.html) -// structure which is uses as a request parameter for the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html) +// structure which is uses as a request parameter for the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html), +// BatchIsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html), // and IsAuthorizedWithToken (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html) // operations. type AttributeValue struct { _ struct{} `type:"structure"` - // An attribute value of Boolean (https://docs.cedarpolicy.com/syntax-datatypes.html#boolean) + // An attribute value of Boolean (https://docs.cedarpolicy.com/policies/syntax-datatypes.html#boolean) // type. // // Example: {"boolean": true} @@ -3872,7 +4044,7 @@ // type>"} EntityIdentifier *EntityIdentifier `locationName:"entityIdentifier" type:"structure"` - // An attribute value of Long (https://docs.cedarpolicy.com/syntax-datatypes.html#long) + // An attribute value of Long (https://docs.cedarpolicy.com/policies/syntax-datatypes.html#long) // type. // // Example: {"long": 0} @@ -3882,19 +4054,19 @@ // String and GoString methods. Long *int64 `locationName:"long" type:"long" sensitive:"true"` - // An attribute value of Record (https://docs.cedarpolicy.com/syntax-datatypes.html#record) + // An attribute value of Record (https://docs.cedarpolicy.com/policies/syntax-datatypes.html#record) // type. // // Example: {"record": { "keyName": {} } } Record map[string]*AttributeValue `locationName:"record" type:"map"` - // An attribute value of Set (https://docs.cedarpolicy.com/syntax-datatypes.html#set) + // An attribute value of Set (https://docs.cedarpolicy.com/policies/syntax-datatypes.html#set) // type. // // Example: {"set": [ {} ] } Set []*AttributeValue `locationName:"set" type:"list"` - // An attribute value of String (https://docs.cedarpolicy.com/syntax-datatypes.html#string) + // An attribute value of String (https://docs.cedarpolicy.com/policies/syntax-datatypes.html#string) // type. // // Example: {"string": "abc"} @@ -3994,6 +4166,302 @@ return s } +type BatchIsAuthorizedInput struct { + _ struct{} `type:"structure"` + + // Specifies the list of resources and principals and their associated attributes + // that Verified Permissions can examine when evaluating the policies. + // + // You can include only principal and resource entities in this parameter; you + // can't include actions. You must specify actions in the schema. + Entities *EntitiesDefinition `locationName:"entities" type:"structure"` + + // Specifies the ID of the policy store. Policies in this policy store will + // be used to make the authorization decisions for the input. + // + // PolicyStoreId is a required field + PolicyStoreId *string `locationName:"policyStoreId" min:"1" type:"string" required:"true"` + + // An array of up to 30 requests that you want Verified Permissions to evaluate. + // + // Requests is a required field + Requests []*BatchIsAuthorizedInputItem `locationName:"requests" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchIsAuthorizedInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchIsAuthorizedInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchIsAuthorizedInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchIsAuthorizedInput"} + if s.PolicyStoreId == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyStoreId")) + } + if s.PolicyStoreId != nil && len(*s.PolicyStoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PolicyStoreId", 1)) + } + if s.Requests == nil { + invalidParams.Add(request.NewErrParamRequired("Requests")) + } + if s.Requests != nil && len(s.Requests) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Requests", 1)) + } + if s.Entities != nil { + if err := s.Entities.Validate(); err != nil { + invalidParams.AddNested("Entities", err.(request.ErrInvalidParams)) + } + } + if s.Requests != nil { + for i, v := range s.Requests { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Requests", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntities sets the Entities field's value. +func (s *BatchIsAuthorizedInput) SetEntities(v *EntitiesDefinition) *BatchIsAuthorizedInput { + s.Entities = v + return s +} + +// SetPolicyStoreId sets the PolicyStoreId field's value. +func (s *BatchIsAuthorizedInput) SetPolicyStoreId(v string) *BatchIsAuthorizedInput { + s.PolicyStoreId = &v + return s +} + +// SetRequests sets the Requests field's value. +func (s *BatchIsAuthorizedInput) SetRequests(v []*BatchIsAuthorizedInputItem) *BatchIsAuthorizedInput { + s.Requests = v + return s +} + +// An authorization request that you include in a BatchIsAuthorized API request. +type BatchIsAuthorizedInputItem struct { + _ struct{} `type:"structure"` + + // Specifies the requested action to be authorized. For example, is the principal + // authorized to perform this action on the resource? + Action *ActionIdentifier `locationName:"action" type:"structure"` + + // Specifies additional context that can be used to make more granular authorization + // decisions. + Context *ContextDefinition `locationName:"context" type:"structure"` + + // Specifies the principal for which the authorization decision is to be made. + Principal *EntityIdentifier `locationName:"principal" type:"structure"` + + // Specifies the resource for which the authorization decision is to be made. + Resource *EntityIdentifier `locationName:"resource" 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 BatchIsAuthorizedInputItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchIsAuthorizedInputItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchIsAuthorizedInputItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchIsAuthorizedInputItem"} + if s.Action != nil { + if err := s.Action.Validate(); err != nil { + invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) + } + } + if s.Context != nil { + if err := s.Context.Validate(); err != nil { + invalidParams.AddNested("Context", err.(request.ErrInvalidParams)) + } + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *BatchIsAuthorizedInputItem) SetAction(v *ActionIdentifier) *BatchIsAuthorizedInputItem { + s.Action = v + return s +} + +// SetContext sets the Context field's value. +func (s *BatchIsAuthorizedInputItem) SetContext(v *ContextDefinition) *BatchIsAuthorizedInputItem { + s.Context = v + return s +} + +// SetPrincipal sets the Principal field's value. +func (s *BatchIsAuthorizedInputItem) SetPrincipal(v *EntityIdentifier) *BatchIsAuthorizedInputItem { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *BatchIsAuthorizedInputItem) SetResource(v *EntityIdentifier) *BatchIsAuthorizedInputItem { + s.Resource = v + return s +} + +type BatchIsAuthorizedOutput struct { + _ struct{} `type:"structure"` + + // A series of Allow or Deny decisions for each request, and the policies that + // produced them. + // + // Results is a required field + Results []*BatchIsAuthorizedOutputItem `locationName:"results" 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 BatchIsAuthorizedOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchIsAuthorizedOutput) GoString() string { + return s.String() +} + +// SetResults sets the Results field's value. +func (s *BatchIsAuthorizedOutput) SetResults(v []*BatchIsAuthorizedOutputItem) *BatchIsAuthorizedOutput { + s.Results = v + return s +} + +// The decision, based on policy evaluation, from an individual authorization +// request in a BatchIsAuthorized API request. +type BatchIsAuthorizedOutputItem struct { + _ struct{} `type:"structure"` + + // An authorization decision that indicates if the authorization request should + // be allowed or denied. + // + // Decision is a required field + Decision *string `locationName:"decision" type:"string" required:"true" enum:"Decision"` + + // The list of determining policies used to make the authorization decision. + // For example, if there are two matching policies, where one is a forbid and + // the other is a permit, then the forbid policy will be the determining policy. + // In the case of multiple matching permit policies then there would be multiple + // determining policies. In the case that no policies match, and hence the response + // is DENY, there would be no determining policies. + // + // DeterminingPolicies is a required field + DeterminingPolicies []*DeterminingPolicyItem `locationName:"determiningPolicies" type:"list" required:"true"` + + // Errors that occurred while making an authorization decision, for example, + // a policy references an Entity or entity Attribute that does not exist in + // the slice. + // + // Errors is a required field + Errors []*EvaluationErrorItem `locationName:"errors" type:"list" required:"true"` + + // The authorization request that initiated the decision. + // + // Request is a required field + Request *BatchIsAuthorizedInputItem `locationName:"request" 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 BatchIsAuthorizedOutputItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchIsAuthorizedOutputItem) GoString() string { + return s.String() +} + +// SetDecision sets the Decision field's value. +func (s *BatchIsAuthorizedOutputItem) SetDecision(v string) *BatchIsAuthorizedOutputItem { + s.Decision = &v + return s +} + +// SetDeterminingPolicies sets the DeterminingPolicies field's value. +func (s *BatchIsAuthorizedOutputItem) SetDeterminingPolicies(v []*DeterminingPolicyItem) *BatchIsAuthorizedOutputItem { + s.DeterminingPolicies = v + return s +} + +// SetErrors sets the Errors field's value. +func (s *BatchIsAuthorizedOutputItem) SetErrors(v []*EvaluationErrorItem) *BatchIsAuthorizedOutputItem { + s.Errors = v + return s +} + +// SetRequest sets the Request field's value. +func (s *BatchIsAuthorizedOutputItem) SetRequest(v *BatchIsAuthorizedInputItem) *BatchIsAuthorizedOutputItem { + s.Request = v + return s +} + // The configuration for an identity source that represents a connection to // an Amazon Cognito user pool used as an identity provider for Verified Permissions. // @@ -4202,11 +4670,12 @@ // evaluates this information in an authorization request as part of the when // and unless clauses in a policy. // -// This data type is used as a request parameter for the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html) +// This data type is used as a request parameter for the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html), +// BatchIsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html), // and IsAuthorizedWithToken (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html) // operations. // -// Example: "context":{"Context":{"":{"boolean":true},"":{"long":1234}}} +// Example: "context":{"contextMap":{"":{"boolean":true},"":{"long":1234}}} type ContextDefinition struct { _ struct{} `type:"structure"` @@ -4214,7 +4683,7 @@ // request. Each attribute in this array must include a map of a data type and // its value. // - // Example: "Context":{"":{"boolean":true},"":{"long":1234}} + // Example: "contextMap":{"":{"boolean":true},"":{"long":1234}} ContextMap map[string]*AttributeValue `locationName:"contextMap" type:"map"` } @@ -4649,6 +5118,14 @@ // parameters, the retry fails with an IdempotentParameterMismatch error. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePolicyStoreInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + // Specifies the validation setting for this policy store. // // Currently, the only valid and required value is Mode. @@ -4709,6 +5186,12 @@ return s } +// SetDescription sets the Description field's value. +func (s *CreatePolicyStoreInput) SetDescription(v string) *CreatePolicyStoreInput { + s.Description = &v + return s +} + // SetValidationSettings sets the ValidationSettings field's value. func (s *CreatePolicyStoreInput) SetValidationSettings(v *ValidationSettings) *CreatePolicyStoreInput { s.ValidationSettings = v @@ -5295,7 +5778,8 @@ // decision. // // This data type is used as an element in a response parameter for the IsAuthorized -// (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html) +// (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html), +// BatchIsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html), // and IsAuthorizedWithToken (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html) // operations. // @@ -5646,7 +6130,8 @@ // Contains a description of an evaluation error. // -// This data type is used as a request parameter in the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html) +// This data type is a response parameter of the IsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html), +// BatchIsAuthorized (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html), // and IsAuthorizedWithToken (https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html) // operations. type EvaluationErrorItem struct { @@ -6080,6 +6565,14 @@ // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"iso8601" required:"true"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetPolicyStoreOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + // The date and time that the policy store was last updated. // // LastUpdatedDate is a required field @@ -6126,6 +6619,12 @@ return s } +// SetDescription sets the Description field's value. +func (s *GetPolicyStoreOutput) SetDescription(v string) *GetPolicyStoreOutput { + s.Description = &v + return s +} + // SetLastUpdatedDate sets the LastUpdatedDate field's value. func (s *GetPolicyStoreOutput) SetLastUpdatedDate(v time.Time) *GetPolicyStoreOutput { s.LastUpdatedDate = &v @@ -6368,6 +6867,9 @@ // LastUpdatedDate is a required field LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp" timestampFormat:"iso8601" required:"true"` + // The namespaces of the entities referenced by this schema. + Namespaces []*string `locationName:"namespaces" type:"list"` + // The ID of the policy store that contains the schema. // // PolicyStoreId is a required field @@ -6413,6 +6915,12 @@ return s } +// SetNamespaces sets the Namespaces field's value. +func (s *GetSchemaOutput) SetNamespaces(v []*string) *GetSchemaOutput { + s.Namespaces = v + return s +} + // SetPolicyStoreId sets the PolicyStoreId field's value. func (s *GetSchemaOutput) SetPolicyStoreId(v string) *GetSchemaOutput { s.PolicyStoreId = &v @@ -8132,6 +8640,17 @@ // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"iso8601" required:"true"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PolicyStoreItem's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The date and time the policy store was most recently updated. + LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp" timestampFormat:"iso8601"` + // The unique identifier of the policy store. // // PolicyStoreId is a required field @@ -8168,6 +8687,18 @@ return s } +// SetDescription sets the Description field's value. +func (s *PolicyStoreItem) SetDescription(v string) *PolicyStoreItem { + s.Description = &v + return s +} + +// SetLastUpdatedDate sets the LastUpdatedDate field's value. +func (s *PolicyStoreItem) SetLastUpdatedDate(v time.Time) *PolicyStoreItem { + s.LastUpdatedDate = &v + return s +} + // SetPolicyStoreId sets the PolicyStoreId field's value. func (s *PolicyStoreItem) SetPolicyStoreId(v string) *PolicyStoreItem { s.PolicyStoreId = &v @@ -9627,6 +10158,14 @@ type UpdatePolicyStoreInput struct { _ struct{} `type:"structure"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdatePolicyStoreInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + // Specifies the ID of the policy store that you want to update // // PolicyStoreId is a required field @@ -9681,6 +10220,12 @@ return nil } +// SetDescription sets the Description field's value. +func (s *UpdatePolicyStoreInput) SetDescription(v string) *UpdatePolicyStoreInput { + s.Description = &v + return s +} + // SetPolicyStoreId sets the PolicyStoreId field's value. func (s *UpdatePolicyStoreInput) SetPolicyStoreId(v string) *UpdatePolicyStoreInput { s.PolicyStoreId = &v @@ -10051,14 +10596,14 @@ // - MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see -// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) -// operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) +// operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // - ImpossiblePolicy Cedar has determined that a policy condition always diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/verifiedpermissions/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/verifiedpermissions/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/verifiedpermissions/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/verifiedpermissions/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -73,14 +73,14 @@ // * MissingAttribute The policy attempts to access a record or entity attribute // that isn't specified in the schema. Test for the existence of the attribute // first before attempting to access its value. For more information, see - // the has (presence of attribute test) operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) + // the has (presence of attribute test) operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // * UnsafeOptionalAttributeAccess The policy attempts to access a record // or entity attribute that is optional and isn't guaranteed to be present. // Test for the existence of the attribute first before attempting to access // its value. For more information, see the has (presence of attribute test) - // operator (https://docs.cedarpolicy.com/syntax-operators.html#has-presence-of-attribute-test) + // operator (https://docs.cedarpolicy.com/policies/syntax-operators.html#has-presence-of-attribute-test) // in the Cedar Policy Language Guide. // // * ImpossiblePolicy Cedar has determined that a policy condition always diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/verifiedpermissions/verifiedpermissionsiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/verifiedpermissions/verifiedpermissionsiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/verifiedpermissions/verifiedpermissionsiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/verifiedpermissions/verifiedpermissionsiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -26,7 +26,7 @@ // // myFunc uses an SDK service client to make a request to // // Amazon Verified Permissions. // func myFunc(svc verifiedpermissionsiface.VerifiedPermissionsAPI) bool { -// // Make svc.CreateIdentitySource request +// // Make svc.BatchIsAuthorized request // } // // func main() { @@ -42,7 +42,7 @@ // type mockVerifiedPermissionsClient struct { // verifiedpermissionsiface.VerifiedPermissionsAPI // } -// func (m *mockVerifiedPermissionsClient) CreateIdentitySource(input *verifiedpermissions.CreateIdentitySourceInput) (*verifiedpermissions.CreateIdentitySourceOutput, error) { +// func (m *mockVerifiedPermissionsClient) BatchIsAuthorized(input *verifiedpermissions.BatchIsAuthorizedInput) (*verifiedpermissions.BatchIsAuthorizedOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type VerifiedPermissionsAPI interface { + BatchIsAuthorized(*verifiedpermissions.BatchIsAuthorizedInput) (*verifiedpermissions.BatchIsAuthorizedOutput, error) + BatchIsAuthorizedWithContext(aws.Context, *verifiedpermissions.BatchIsAuthorizedInput, ...request.Option) (*verifiedpermissions.BatchIsAuthorizedOutput, error) + BatchIsAuthorizedRequest(*verifiedpermissions.BatchIsAuthorizedInput) (*request.Request, *verifiedpermissions.BatchIsAuthorizedOutput) + CreateIdentitySource(*verifiedpermissions.CreateIdentitySourceInput) (*verifiedpermissions.CreateIdentitySourceOutput, error) CreateIdentitySourceWithContext(aws.Context, *verifiedpermissions.CreateIdentitySourceInput, ...request.Option) (*verifiedpermissions.CreateIdentitySourceOutput, error) CreateIdentitySourceRequest(*verifiedpermissions.CreateIdentitySourceInput) (*request.Request, *verifiedpermissions.CreateIdentitySourceOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/wafv2/api.go golang-github-aws-aws-sdk-go-1.48.14/service/wafv2/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/wafv2/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/wafv2/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -69,18 +69,33 @@ // of the web ACL. For information, see UpdateDistribution (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) // in the Amazon CloudFront Developer Guide. // -// When you make changes to web ACLs or web ACL components, like rules and rule -// groups, WAF propagates the changes everywhere that the web ACL and its components -// are stored and used. Your changes are applied within seconds, but there might -// be a brief period of inconsistency when the changes have arrived in some -// places and not in others. So, for example, if you change a rule action setting, -// the action might be the old action in one area and the new action in another -// area. Or if you add an IP address to an IP set used in a blocking rule, the -// new address might briefly be blocked in one area while still allowed in another. -// This temporary inconsistency can occur when you first associate a web ACL -// with an Amazon Web Services resource and when you change a web ACL that is -// already associated with a resource. Generally, any inconsistencies of this -// type last only a few seconds. +// # Required permissions for customer-managed IAM policies +// +// This call requires permissions that are specific to the protected resource +// type. For details, see Permissions for AssociateWebACL (https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-AssociateWebACL) +// in the WAF Developer Guide. +// +// # Temporary inconsistencies during updates +// +// When you create or change a web ACL or other WAF resources, the changes take +// a small amount of time to propagate to all areas where the resources are +// stored. The propagation time can be from a few seconds to a number of minutes. +// +// The following are examples of the temporary inconsistencies that you might +// notice during change propagation: +// +// - After you create a web ACL, if you try to associate it with a resource, +// you might get an exception indicating that the web ACL is unavailable. +// +// - After you add a rule group to a web ACL, the new rule group rules might +// be in effect in one area where the web ACL is used and not in another. +// +// - After you change a rule action setting, you might see the old action +// in some places and the new action in others. +// +// - After you add an IP address to an IP set that is in use in a blocking +// rule, the new address might be blocked in one area while still allowed +// in another. // // 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 @@ -835,15 +850,16 @@ // Creates a WebACL per the specifications provided. // // A web ACL defines a collection of rules to use to inspect and control web -// requests. Each rule has an action defined (allow, block, or count) for requests -// that match the statement of the rule. In the web ACL, you assign a default -// action to take (allow, block) for any request that does not match any of -// the rules. The rules in a web ACL can be a combination of the types Rule, -// RuleGroup, and managed rule group. You can associate a web ACL with one or -// more Amazon Web Services resources to protect. The resources can be an Amazon -// CloudFront distribution, an Amazon API Gateway REST API, an Application Load -// Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner -// service, or an Amazon Web Services Verified Access instance. +// requests. Each rule has a statement that defines what to look for in web +// requests and an action that WAF applies to requests that match the statement. +// In the web ACL, you assign a default action to take (allow, block) for any +// request that does not match any of the rules. The rules in a web ACL can +// be a combination of the types Rule, RuleGroup, and managed rule group. You +// can associate a web ACL with one or more Amazon Web Services resources to +// protect. The resources can be an Amazon CloudFront distribution, an Amazon +// API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, +// an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services +// Verified Access instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2141,6 +2157,12 @@ // (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) // in the Amazon CloudFront API Reference. // +// # Required permissions for customer-managed IAM policies +// +// This call requires permissions that are specific to the protected resource +// type. For details, see Permissions for DisassociateWebACL (https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-DisassociateWebACL) +// in the WAF Developer Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3549,6 +3571,22 @@ // // Retrieves the WebACL for the specified resource. // +// This call uses GetWebACL, to verify that your account has permission to access +// the retrieved web ACL. If you get an error that indicates that your account +// isn't authorized to perform wafv2:GetWebACL on the resource, that error won't +// be included in your CloudTrail event history. +// +// For Amazon CloudFront, don't use this call. Instead, call the CloudFront +// action GetDistributionConfig. For information, see GetDistributionConfig +// (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistributionConfig.html) +// in the Amazon CloudFront API Reference. +// +// # Required permissions for customer-managed IAM policies +// +// This call requires permissions that are specific to the protected resource +// type. For details, see Permissions for GetWebACLForResource (https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-GetWebACLForResource) +// in the WAF Developer Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -4478,8 +4516,18 @@ // ListResourcesForWebACL API operation for AWS WAFV2. // // Retrieves an array of the Amazon Resource Names (ARNs) for the regional resources -// that are associated with the specified web ACL. If you want the list of Amazon -// CloudFront resources, use the CloudFront call ListDistributionsByWebACLId. +// that are associated with the specified web ACL. +// +// For Amazon CloudFront, don't use this call. Instead, use the CloudFront call +// ListDistributionsByWebACLId. For information, see ListDistributionsByWebACLId +// (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListDistributionsByWebACLId.html) +// in the Amazon CloudFront API Reference. +// +// # Required permissions for customer-managed IAM policies +// +// This call requires permissions that are specific to the protected resource +// type. For details, see Permissions for ListResourcesForWebACL (https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-ListResourcesForWebACL) +// in the WAF Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5588,18 +5636,27 @@ // // # Provide the complete IP set specification to this call // -// When you make changes to web ACLs or web ACL components, like rules and rule -// groups, WAF propagates the changes everywhere that the web ACL and its components -// are stored and used. Your changes are applied within seconds, but there might -// be a brief period of inconsistency when the changes have arrived in some -// places and not in others. So, for example, if you change a rule action setting, -// the action might be the old action in one area and the new action in another -// area. Or if you add an IP address to an IP set used in a blocking rule, the -// new address might briefly be blocked in one area while still allowed in another. -// This temporary inconsistency can occur when you first associate a web ACL -// with an Amazon Web Services resource and when you change a web ACL that is -// already associated with a resource. Generally, any inconsistencies of this -// type last only a few seconds. +// # Temporary inconsistencies during updates +// +// When you create or change a web ACL or other WAF resources, the changes take +// a small amount of time to propagate to all areas where the resources are +// stored. The propagation time can be from a few seconds to a number of minutes. +// +// The following are examples of the temporary inconsistencies that you might +// notice during change propagation: +// +// - After you create a web ACL, if you try to associate it with a resource, +// you might get an exception indicating that the web ACL is unavailable. +// +// - After you add a rule group to a web ACL, the new rule group rules might +// be in effect in one area where the web ACL is used and not in another. +// +// - After you change a rule action setting, you might see the old action +// in some places and the new action in others. +// +// - After you add an IP address to an IP set that is in use in a blocking +// rule, the new address might be blocked in one area while still allowed +// in another. // // 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 @@ -5851,18 +5908,27 @@ // // # Provide the complete regex pattern set specification to this call // -// When you make changes to web ACLs or web ACL components, like rules and rule -// groups, WAF propagates the changes everywhere that the web ACL and its components -// are stored and used. Your changes are applied within seconds, but there might -// be a brief period of inconsistency when the changes have arrived in some -// places and not in others. So, for example, if you change a rule action setting, -// the action might be the old action in one area and the new action in another -// area. Or if you add an IP address to an IP set used in a blocking rule, the -// new address might briefly be blocked in one area while still allowed in another. -// This temporary inconsistency can occur when you first associate a web ACL -// with an Amazon Web Services resource and when you change a web ACL that is -// already associated with a resource. Generally, any inconsistencies of this -// type last only a few seconds. +// # Temporary inconsistencies during updates +// +// When you create or change a web ACL or other WAF resources, the changes take +// a small amount of time to propagate to all areas where the resources are +// stored. The propagation time can be from a few seconds to a number of minutes. +// +// The following are examples of the temporary inconsistencies that you might +// notice during change propagation: +// +// - After you create a web ACL, if you try to associate it with a resource, +// you might get an exception indicating that the web ACL is unavailable. +// +// - After you add a rule group to a web ACL, the new rule group rules might +// be in effect in one area where the web ACL is used and not in another. +// +// - After you change a rule action setting, you might see the old action +// in some places and the new action in others. +// +// - After you add an IP address to an IP set that is in use in a blocking +// rule, the new address might be blocked in one area while still allowed +// in another. // // 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 @@ -5994,25 +6060,34 @@ // // # Provide the complete rule group specification to this call // -// When you make changes to web ACLs or web ACL components, like rules and rule -// groups, WAF propagates the changes everywhere that the web ACL and its components -// are stored and used. Your changes are applied within seconds, but there might -// be a brief period of inconsistency when the changes have arrived in some -// places and not in others. So, for example, if you change a rule action setting, -// the action might be the old action in one area and the new action in another -// area. Or if you add an IP address to an IP set used in a blocking rule, the -// new address might briefly be blocked in one area while still allowed in another. -// This temporary inconsistency can occur when you first associate a web ACL -// with an Amazon Web Services resource and when you change a web ACL that is -// already associated with a resource. Generally, any inconsistencies of this -// type last only a few seconds. -// // A rule group defines a collection of rules to inspect and control web requests // that you can use in a WebACL. When you create a rule group, you define an // immutable capacity limit. If you update a rule group, you must stay within // the capacity. This allows others to reuse the rule group with confidence // in its capacity requirements. // +// # Temporary inconsistencies during updates +// +// When you create or change a web ACL or other WAF resources, the changes take +// a small amount of time to propagate to all areas where the resources are +// stored. The propagation time can be from a few seconds to a number of minutes. +// +// The following are examples of the temporary inconsistencies that you might +// notice during change propagation: +// +// - After you create a web ACL, if you try to associate it with a resource, +// you might get an exception indicating that the web ACL is unavailable. +// +// - After you add a rule group to a web ACL, the new rule group rules might +// be in effect in one area where the web ACL is used and not in another. +// +// - After you change a rule action setting, you might see the old action +// in some places and the new action in others. +// +// - After you add an IP address to an IP set that is in use in a blocking +// rule, the new address might be blocked in one area while still allowed +// in another. +// // 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. @@ -6169,29 +6244,39 @@ // // # Provide the complete web ACL specification to this call // -// When you make changes to web ACLs or web ACL components, like rules and rule -// groups, WAF propagates the changes everywhere that the web ACL and its components -// are stored and used. Your changes are applied within seconds, but there might -// be a brief period of inconsistency when the changes have arrived in some -// places and not in others. So, for example, if you change a rule action setting, -// the action might be the old action in one area and the new action in another -// area. Or if you add an IP address to an IP set used in a blocking rule, the -// new address might briefly be blocked in one area while still allowed in another. -// This temporary inconsistency can occur when you first associate a web ACL -// with an Amazon Web Services resource and when you change a web ACL that is -// already associated with a resource. Generally, any inconsistencies of this -// type last only a few seconds. -// // A web ACL defines a collection of rules to use to inspect and control web -// requests. Each rule has an action defined (allow, block, or count) for requests -// that match the statement of the rule. In the web ACL, you assign a default -// action to take (allow, block) for any request that does not match any of -// the rules. The rules in a web ACL can be a combination of the types Rule, -// RuleGroup, and managed rule group. You can associate a web ACL with one or -// more Amazon Web Services resources to protect. The resources can be an Amazon -// CloudFront distribution, an Amazon API Gateway REST API, an Application Load -// Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner -// service, or an Amazon Web Services Verified Access instance. +// requests. Each rule has a statement that defines what to look for in web +// requests and an action that WAF applies to requests that match the statement. +// In the web ACL, you assign a default action to take (allow, block) for any +// request that does not match any of the rules. The rules in a web ACL can +// be a combination of the types Rule, RuleGroup, and managed rule group. You +// can associate a web ACL with one or more Amazon Web Services resources to +// protect. The resources can be an Amazon CloudFront distribution, an Amazon +// API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, +// an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services +// Verified Access instance. +// +// # Temporary inconsistencies during updates +// +// When you create or change a web ACL or other WAF resources, the changes take +// a small amount of time to propagate to all areas where the resources are +// stored. The propagation time can be from a few seconds to a number of minutes. +// +// The following are examples of the temporary inconsistencies that you might +// notice during change propagation: +// +// - After you create a web ACL, if you try to associate it with a resource, +// you might get an exception indicating that the web ACL is unavailable. +// +// - After you add a rule group to a web ACL, the new rule group rules might +// be in effect in one area where the web ACL is used and not in another. +// +// - After you change a rule action setting, you might see the old action +// in some places and the new action in others. +// +// - After you add an IP address to an IP set that is in use in a blocking +// rule, the new address might be blocked in one area while still allowed +// in another. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6376,8 +6461,12 @@ // page on your website that accepts the completed registration form for a new // user. This page must accept POST requests. // - // For example, for the URL https://example.com/web/signup, you would provide - // the path /web/signup. + // For example, for the URL https://example.com/web/newaccount, you would provide + // the path /web/newaccount. Account creation page paths that start with the + // path that you provide are considered a match. For example /web/newaccount + // matches the account creation paths /web/newaccount, /web/newaccount/, /web/newaccountPage, + // and /web/newaccount/thisPage, but doesn't match the path /home/web/newaccount + // or /website/newaccount. // // CreationPath is a required field CreationPath *string `min:"1" type:"string" required:"true"` @@ -6391,8 +6480,12 @@ // // This page must accept GET text/html requests. // - // For example, for the URL https://example.com/web/register, you would provide - // the path /web/register. + // For example, for the URL https://example.com/web/registration, you would + // provide the path /web/registration. Registration page paths that start with + // the path that you provide are considered a match. For example /web/registration + // matches the registration paths /web/registration, /web/registration/, /web/registrationPage, + // and /web/registration/thisPage, but doesn't match the path /home/web/registration + // or /website/registration. // // RegistrationPagePath is a required field RegistrationPagePath *string `min:"1" type:"string" required:"true"` @@ -6511,6 +6604,10 @@ // The path of the login endpoint for your application. For example, for the // URL https://example.com/web/login, you would provide the path /web/login. + // Login paths that start with the path that you provide are considered a match. + // For example /web/login matches the login paths /web/login, /web/login/, /web/loginPage, + // and /web/login/thisPage, but doesn't match the login path /home/web/login + // or /website/login. // // The rule group inspects only HTTP POST requests to your specified login endpoint. // @@ -7312,9 +7409,19 @@ // * UriPath: The value that you want WAF to search for in the URI path, // for example, /images/daily-ad.jpg. // - // * HeaderOrder: The comma-separated list of header names to match for. - // WAF creates a string that contains the ordered list of header names, from - // the headers in the web request, and then matches against that string. + // * JA3Fingerprint: Match against the request's JA3 fingerprint. The JA3 + // fingerprint is a 32-character hash derived from the TLS Client Hello of + // an incoming request. This fingerprint serves as a unique identifier for + // the client's TLS configuration. You can use this choice only with a string + // match ByteMatchStatement with the PositionalConstraint set to EXACTLY. + // You can obtain the JA3 fingerprint for client requests from the web ACL + // logs. If WAF is able to calculate the fingerprint, it includes it in the + // logs. For information about the logging fields, see Log fields (https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html) + // in the WAF Developer Guide. + // + // * HeaderOrder: The list of header names to match for. WAF creates a string + // that contains the ordered list of header names, from the headers in the + // web request, and then matches against that string. // // If SearchString includes alphabetic characters A-Z and a-z, note that the // value is case sensitive. @@ -7345,7 +7452,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -8062,7 +8169,13 @@ MatchPattern *CookieMatchPattern `type:"structure" required:"true"` // The parts of the cookies to inspect with the rule inspection criteria. If - // you specify All, WAF inspects both keys and values. + // you specify ALL, WAF inspects both keys and values. + // + // All does not require a match to be found in the keys and a match to be found + // in the values. It requires a match to be found in the keys or the values + // or both. To require a match in the keys and in the values, use a logical + // AND statement to combine two match rules, one that inspects the keys and + // another that inspects the values. // // MatchScope is a required field MatchScope *string `type:"string" required:"true" enum:"MapMatchScope"` @@ -8318,24 +8431,23 @@ _ struct{} `type:"structure"` // Contains an array of strings that specifies zero or more IP addresses or - // blocks of IP addresses. All addresses must be specified using Classless Inter-Domain - // Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except - // for /0. + // blocks of IP addresses that you want WAF to inspect for in incoming requests. + // All addresses must be specified using Classless Inter-Domain Routing (CIDR) + // notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0. // // Example address strings: // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 192.0.2.44, specify 192.0.2.44/32. + // * For requests that originated from the IP address 192.0.2.44, specify + // 192.0.2.44/32. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. + // * For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, + // specify 192.0.2.0/24. // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // * For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, - // specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // * For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). @@ -8730,10 +8842,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -8987,10 +9098,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -9416,7 +9526,8 @@ // ResponseCode is a required field ResponseCode *int64 `min:"200" type:"integer" required:"true"` - // The HTTP headers to use in the response. Duplicate header names are not allowed. + // The HTTP headers to use in the response. You can specify any header name + // except for content-type. Duplicate header names are not allowed. // // For information about the limits on count and size for custom request and // response settings, see WAF quotas (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) @@ -11132,6 +11243,24 @@ // from the underlying host service. Headers *Headers `type:"structure"` + // Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character + // hash derived from the TLS Client Hello of an incoming request. This fingerprint + // serves as a unique identifier for the client's TLS configuration. WAF calculates + // and logs this fingerprint for each request that has enough TLS Client Hello + // information for the calculation. Almost all web requests include this information. + // + // You can use this choice only with a string match ByteMatchStatement with + // the PositionalConstraint set to EXACTLY. + // + // You can obtain the JA3 fingerprint for client requests from the web ACL logs. + // If WAF is able to calculate the fingerprint, it includes it in the logs. + // For information about the logging fields, see Log fields (https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html) + // in the WAF Developer Guide. + // + // Provide the JA3 fingerprint string from the logs in your string match statement + // specification, to match with any future requests that have the same TLS configuration. + JA3Fingerprint *JA3Fingerprint `type:"structure"` + // Inspect the request body as JSON. The request body immediately follows the // request headers. This is the part of a request that contains any additional // data that you want to send to your web server as the HTTP request body, such @@ -11212,6 +11341,11 @@ invalidParams.AddNested("Headers", err.(request.ErrInvalidParams)) } } + if s.JA3Fingerprint != nil { + if err := s.JA3Fingerprint.Validate(); err != nil { + invalidParams.AddNested("JA3Fingerprint", err.(request.ErrInvalidParams)) + } + } if s.JsonBody != nil { if err := s.JsonBody.Validate(); err != nil { invalidParams.AddNested("JsonBody", err.(request.ErrInvalidParams)) @@ -11264,6 +11398,12 @@ return s } +// SetJA3Fingerprint sets the JA3Fingerprint field's value. +func (s *FieldToMatch) SetJA3Fingerprint(v *JA3Fingerprint) *FieldToMatch { + s.JA3Fingerprint = v + return s +} + // SetJsonBody sets the JsonBody field's value. func (s *FieldToMatch) SetJsonBody(v *JsonBody) *FieldToMatch { s.JsonBody = v @@ -13677,7 +13817,13 @@ MatchPattern *HeaderMatchPattern `type:"structure" required:"true"` // The parts of the headers to match with the rule inspection criteria. If you - // specify All, WAF inspects both keys and values. + // specify ALL, WAF inspects both keys and values. + // + // All does not require a match to be found in the keys and a match to be found + // in the values. It requires a match to be found in the keys or the values + // or both. To require a match in the keys and in the values, use a logical + // AND statement to combine two match rules, one that inspects the keys and + // another that inspects the values. // // MatchScope is a required field MatchScope *string `type:"string" required:"true" enum:"MapMatchScope"` @@ -13778,24 +13924,23 @@ ARN *string `min:"20" type:"string" required:"true"` // Contains an array of strings that specifies zero or more IP addresses or - // blocks of IP addresses. All addresses must be specified using Classless Inter-Domain - // Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except - // for /0. + // blocks of IP addresses that you want WAF to inspect for in incoming requests. + // All addresses must be specified using Classless Inter-Domain Routing (CIDR) + // notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0. // // Example address strings: // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 192.0.2.44, specify 192.0.2.44/32. + // * For requests that originated from the IP address 192.0.2.44, specify + // 192.0.2.44/32. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. + // * For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, + // specify 192.0.2.0/24. // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // * For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, - // specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // * For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). @@ -14219,6 +14364,76 @@ return s } +// Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character +// hash derived from the TLS Client Hello of an incoming request. This fingerprint +// serves as a unique identifier for the client's TLS configuration. WAF calculates +// and logs this fingerprint for each request that has enough TLS Client Hello +// information for the calculation. Almost all web requests include this information. +// +// You can use this choice only with a string match ByteMatchStatement with +// the PositionalConstraint set to EXACTLY. +// +// You can obtain the JA3 fingerprint for client requests from the web ACL logs. +// If WAF is able to calculate the fingerprint, it includes it in the logs. +// For information about the logging fields, see Log fields (https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html) +// in the WAF Developer Guide. +// +// Provide the JA3 fingerprint string from the logs in your string match statement +// specification, to match with any future requests that have the same TLS configuration. +type JA3Fingerprint struct { + _ struct{} `type:"structure"` + + // The match status to assign to the web request if the request doesn't have + // a JA3 fingerprint. + // + // You can specify the following fallback behaviors: + // + // * MATCH - Treat the web request as matching the rule statement. WAF applies + // the rule action to the request. + // + // * NO_MATCH - Treat the web request as not matching the rule statement. + // + // FallbackBehavior is a required field + FallbackBehavior *string `type:"string" required:"true" enum:"FallbackBehavior"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JA3Fingerprint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JA3Fingerprint) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *JA3Fingerprint) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "JA3Fingerprint"} + if s.FallbackBehavior == nil { + invalidParams.Add(request.NewErrParamRequired("FallbackBehavior")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFallbackBehavior sets the FallbackBehavior field's value. +func (s *JA3Fingerprint) SetFallbackBehavior(v string) *JA3Fingerprint { + s.FallbackBehavior = &v + return s +} + // Inspect the body of the web request as JSON. The body immediately follows // the request headers. // @@ -14269,7 +14484,13 @@ MatchPattern *JsonMatchPattern `type:"structure" required:"true"` // The parts of the JSON to match against using the MatchPattern. If you specify - // All, WAF matches against keys and values. + // ALL, WAF matches against keys and values. + // + // All does not require a match to be found in the keys and a match to be found + // in the values. It requires a match to be found in the keys or the values + // or both. To require a match in the keys and in the values, use a logical + // AND statement to combine two match rules, one that inspects the keys and + // another that inspects the values. // // MatchScope is a required field MatchScope *string `type:"string" required:"true" enum:"JsonMatchScope"` @@ -16786,8 +17007,9 @@ // in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups. // // You cannot nest a ManagedRuleGroupStatement, for example for use inside a -// NotStatement or OrStatement. It can only be referenced as a top-level statement -// within a rule. +// NotStatement or OrStatement. You cannot use a managed rule group inside another +// rule group. You can only reference a managed rule group as a top-level statement +// within a rule that you define in a web ACL. // // You are charged additional fees when you use the WAF Bot Control managed // rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account @@ -18846,7 +19068,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19002,7 +19224,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19181,7 +19403,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19263,7 +19485,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19333,7 +19555,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19456,7 +19678,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19642,7 +19864,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -20725,9 +20947,9 @@ } // A single rule, which you can use in a WebACL or RuleGroup to identify web -// requests that you want to allow, block, or count. Each rule includes one -// top-level Statement that WAF uses to identify matching web requests, and -// parameters that govern how WAF handles them. +// requests that you want to manage in some way. Each rule includes one top-level +// Statement that WAF uses to identify matching web requests, and parameters +// that govern how WAF handles them. type Rule struct { _ struct{} `type:"structure"` @@ -21230,10 +21452,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Defines and enables Amazon CloudWatch metrics and web request sample collection. @@ -21331,8 +21552,9 @@ // rule group in this statement. // // You cannot nest a RuleGroupReferenceStatement, for example for use inside -// a NotStatement or OrStatement. You can only use a rule group reference statement -// at the top level inside a web ACL. +// a NotStatement or OrStatement. You cannot use a rule group reference statement +// inside another rule group. You can only reference a rule group as a top-level +// statement within a rule that you define in a web ACL. type RuleGroupReferenceStatement struct { _ struct{} `type:"structure"` @@ -21862,7 +22084,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -21982,7 +22204,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -22136,8 +22358,9 @@ // in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups. // // You cannot nest a ManagedRuleGroupStatement, for example for use inside a - // NotStatement or OrStatement. It can only be referenced as a top-level statement - // within a rule. + // NotStatement or OrStatement. You cannot use a managed rule group inside another + // rule group. You can only reference a managed rule group as a top-level statement + // within a rule that you define in a web ACL. // // You are charged additional fees when you use the WAF Bot Control managed // rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account @@ -22256,8 +22479,9 @@ // rule group in this statement. // // You cannot nest a RuleGroupReferenceStatement, for example for use inside - // a NotStatement or OrStatement. You can only use a rule group reference statement - // at the top level inside a web ACL. + // a NotStatement or OrStatement. You cannot use a rule group reference statement + // inside another rule group. You can only reference a rule group as a top-level + // statement within a rule that you define in a web ACL. RuleGroupReferenceStatement *RuleGroupReferenceStatement `type:"structure"` // A rule statement that compares a number of bytes against the size of a request @@ -22724,116 +22948,9 @@ // Priority is a required field Priority *int64 `type:"integer" required:"true"` - // You can specify the following transformation types: - // - // BASE64_DECODE - Decode a Base64-encoded string. - // - // BASE64_DECODE_EXT - Decode a Base64-encoded string, but use a forgiving implementation - // that ignores characters that aren't valid. - // - // CMD_LINE - Command-line transformations. These are helpful in reducing effectiveness - // of attackers who inject an operating system command-line command and use - // unusual formatting to disguise some or all of the command. - // - // * Delete the following characters: \ " ' ^ - // - // * Delete spaces before the following characters: / ( - // - // * Replace the following characters with a space: , ; - // - // * Replace multiple spaces with one space - // - // * Convert uppercase letters (A-Z) to lowercase (a-z) - // - // COMPRESS_WHITE_SPACE - Replace these characters with a space character (decimal - // 32): - // - // * \f, formfeed, decimal 12 - // - // * \t, tab, decimal 9 - // - // * \n, newline, decimal 10 - // - // * \r, carriage return, decimal 13 - // - // * \v, vertical tab, decimal 11 - // - // * Non-breaking space, decimal 160 - // - // COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. - // - // CSS_DECODE - Decode characters that were encoded using CSS 2.x escape rules - // syndata.html#characters. This function uses up to two bytes in the decoding - // process, so it can help to uncover ASCII characters that were encoded using - // CSS encoding that wouldn’t typically be encoded. It's also useful in countering - // evasion, which is a combination of a backslash and non-hexadecimal characters. - // For example, ja\vascript for javascript. - // - // ESCAPE_SEQ_DECODE - Decode the following ANSI C escape sequences: \a, \b, - // \f, \n, \r, \t, \v, \\, \?, \', \", \xHH (hexadecimal), \0OOO (octal). Encodings - // that aren't valid remain in the output. - // - // HEX_DECODE - Decode a string of hexadecimal characters into a binary. - // - // HTML_ENTITY_DECODE - Replace HTML-encoded characters with unencoded characters. - // HTML_ENTITY_DECODE performs these operations: - // - // * Replaces (ampersand)quot; with " - // - // * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 - // - // * Replaces (ampersand)lt; with a "less than" symbol - // - // * Replaces (ampersand)gt; with > - // - // * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, - // with the corresponding characters - // - // * Replaces characters that are represented in decimal format, (ampersand)#nnnn;, - // with the corresponding characters - // - // JS_DECODE - Decode JavaScript escape sequences. If a \ u HHHH code is in - // the full-width ASCII code range of FF01-FF5E, then the higher byte is used - // to detect and adjust the lower byte. If not, only the lower byte is used - // and the higher byte is zeroed, causing a possible loss of information. - // - // LOWERCASE - Convert uppercase letters (A-Z) to lowercase (a-z). - // - // MD5 - Calculate an MD5 hash from the data in the input. The computed hash - // is in a raw binary form. - // - // NONE - Specify NONE if you don't want any text transformations. - // - // NORMALIZE_PATH - Remove multiple slashes, directory self-references, and - // directory back-references that are not at the beginning of the input from - // an input string. - // - // NORMALIZE_PATH_WIN - This is the same as NORMALIZE_PATH, but first converts - // backslash characters to forward slashes. - // - // REMOVE_NULLS - Remove all NULL bytes from the input. - // - // REPLACE_COMMENTS - Replace each occurrence of a C-style comment (/* ... */) - // with a single space. Multiple consecutive occurrences are not compressed. - // Unterminated comments are also replaced with a space (ASCII 0x20). However, - // a standalone termination of a comment (*/) is not acted upon. - // - // REPLACE_NULLS - Replace NULL bytes in the input with space characters (ASCII - // 0x20). - // - // SQL_HEX_DECODE - Decode SQL hex data. Example (0x414243) will be decoded - // to (ABC). - // - // URL_DECODE - Decode a URL-encoded value. - // - // URL_DECODE_UNI - Like URL_DECODE, but with support for Microsoft-specific - // %u encoding. If the code is in the full-width ASCII code range of FF01-FF5E, - // the higher byte is used to detect and adjust the lower byte. Otherwise, only - // the lower byte is used and the higher byte is zeroed. - // - // UTF8_TO_UNICODE - Convert all UTF-8 character sequences to Unicode. This - // helps input normalization, and minimizing false-positives and false-negatives - // for non-English languages. + // For detailed descriptions of each of the transformation types, see Text transformations + // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-transformation.html) + // in the WAF Developer Guide. // // Type is a required field Type *string `type:"string" required:"true" enum:"TextTransformationType"` @@ -23059,24 +23176,23 @@ _ struct{} `type:"structure"` // Contains an array of strings that specifies zero or more IP addresses or - // blocks of IP addresses. All addresses must be specified using Classless Inter-Domain - // Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except - // for /0. + // blocks of IP addresses that you want WAF to inspect for in incoming requests. + // All addresses must be specified using Classless Inter-Domain Routing (CIDR) + // notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0. // // Example address strings: // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 192.0.2.44, specify 192.0.2.44/32. + // * For requests that originated from the IP address 192.0.2.44, specify + // 192.0.2.44/32. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. + // * For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, + // specify 192.0.2.0/24. // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // * For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, - // specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // * For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). @@ -23706,10 +23822,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -23970,10 +24085,9 @@ // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -25780,15 +25894,16 @@ } // A web ACL defines a collection of rules to use to inspect and control web -// requests. Each rule has an action defined (allow, block, or count) for requests -// that match the statement of the rule. In the web ACL, you assign a default -// action to take (allow, block) for any request that does not match any of -// the rules. The rules in a web ACL can be a combination of the types Rule, -// RuleGroup, and managed rule group. You can associate a web ACL with one or -// more Amazon Web Services resources to protect. The resources can be an Amazon -// CloudFront distribution, an Amazon API Gateway REST API, an Application Load -// Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner -// service, or an Amazon Web Services Verified Access instance. +// requests. Each rule has a statement that defines what to look for in web +// requests and an action that WAF applies to requests that match the statement. +// In the web ACL, you assign a default action to take (allow, block) for any +// request that does not match any of the rules. The rules in a web ACL can +// be a combination of the types Rule, RuleGroup, and managed rule group. You +// can associate a web ACL with one or more Amazon Web Services resources to +// protect. The resources can be an Amazon CloudFront distribution, an Amazon +// API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, +// an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services +// Verified Access instance. type WebACL struct { _ struct{} `type:"structure"` @@ -25907,10 +26022,9 @@ // groups, to determine their relative processing order. PreProcessFirewallManagerRuleGroups []*FirewallManagerRuleGroup `type:"list"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies the domains that WAF should accept in a web request token. This @@ -26146,7 +26260,7 @@ // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/wellarchitected/api.go golang-github-aws-aws-sdk-go-1.48.14/service/wellarchitected/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/wellarchitected/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/wellarchitected/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -724,6 +724,225 @@ return out, req.Send() } +const opCreateReviewTemplate = "CreateReviewTemplate" + +// CreateReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the CreateReviewTemplate 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 CreateReviewTemplate for more information on using the CreateReviewTemplate +// 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 CreateReviewTemplateRequest method. +// req, resp := client.CreateReviewTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateReviewTemplate +func (c *WellArchitected) CreateReviewTemplateRequest(input *CreateReviewTemplateInput) (req *request.Request, output *CreateReviewTemplateOutput) { + op := &request.Operation{ + Name: opCreateReviewTemplate, + HTTPMethod: "POST", + HTTPPath: "/reviewTemplates", + } + + if input == nil { + input = &CreateReviewTemplateInput{} + } + + output = &CreateReviewTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateReviewTemplate API operation for AWS Well-Architected Tool. +// +// Create a review template. +// +// # Disclaimer +// +// Do not include or gather personal identifiable information (PII) of end users +// or other identifiable individuals in or via your review templates. If your +// review template or those shared with you and used in your account do include +// or collect PII you are responsible for: ensuring that the included PII is +// processed in accordance with applicable law, providing adequate privacy notices, +// and obtaining necessary consents for processing such data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation CreateReviewTemplate for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - ServiceQuotaExceededException +// The user has reached their resource quota. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateReviewTemplate +func (c *WellArchitected) CreateReviewTemplate(input *CreateReviewTemplateInput) (*CreateReviewTemplateOutput, error) { + req, out := c.CreateReviewTemplateRequest(input) + return out, req.Send() +} + +// CreateReviewTemplateWithContext is the same as CreateReviewTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See CreateReviewTemplate 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 *WellArchitected) CreateReviewTemplateWithContext(ctx aws.Context, input *CreateReviewTemplateInput, opts ...request.Option) (*CreateReviewTemplateOutput, error) { + req, out := c.CreateReviewTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateTemplateShare = "CreateTemplateShare" + +// CreateTemplateShareRequest generates a "aws/request.Request" representing the +// client's request for the CreateTemplateShare 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 CreateTemplateShare for more information on using the CreateTemplateShare +// 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 CreateTemplateShareRequest method. +// req, resp := client.CreateTemplateShareRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateTemplateShare +func (c *WellArchitected) CreateTemplateShareRequest(input *CreateTemplateShareInput) (req *request.Request, output *CreateTemplateShareOutput) { + op := &request.Operation{ + Name: opCreateTemplateShare, + HTTPMethod: "POST", + HTTPPath: "/templates/shares/{TemplateArn}", + } + + if input == nil { + input = &CreateTemplateShareInput{} + } + + output = &CreateTemplateShareOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTemplateShare API operation for AWS Well-Architected Tool. +// +// Create a review template share. +// +// The owner of a review template can share it with other Amazon Web Services +// accounts, users, an organization, and organizational units (OUs) in the same +// Amazon Web Services Region. +// +// Shared access to a review template is not removed until the review template +// share invitation is deleted. +// +// If you share a review template with an organization or OU, all accounts in +// the organization or OU are granted access to the review template. +// +// # Disclaimer +// +// By sharing your review template with other Amazon Web Services accounts, +// you acknowledge that Amazon Web Services will make your review template available +// to those other 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 AWS Well-Architected Tool's +// API operation CreateTemplateShare for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ServiceQuotaExceededException +// The user has reached their resource quota. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateTemplateShare +func (c *WellArchitected) CreateTemplateShare(input *CreateTemplateShareInput) (*CreateTemplateShareOutput, error) { + req, out := c.CreateTemplateShareRequest(input) + return out, req.Send() +} + +// CreateTemplateShareWithContext is the same as CreateTemplateShare with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTemplateShare 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 *WellArchitected) CreateTemplateShareWithContext(ctx aws.Context, input *CreateTemplateShareInput, opts ...request.Option) (*CreateTemplateShareOutput, error) { + req, out := c.CreateTemplateShareRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateWorkload = "CreateWorkload" // CreateWorkloadRequest generates a "aws/request.Request" representing the @@ -782,6 +1001,17 @@ // You also must specify ReviewOwner, even though the parameter is listed as // not being required in the following section. // +// When creating a workload using a review template, you must have the following +// IAM permissions: +// +// - wellarchitected:GetReviewTemplate +// +// - wellarchitected:GetReviewTemplateAnswer +// +// - wellarchitected:ListReviewTemplateAnswers +// +// - wellarchitected:GetReviewTemplateLensReview +// // 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. @@ -1353,6 +1583,206 @@ return out, req.Send() } +const opDeleteReviewTemplate = "DeleteReviewTemplate" + +// DeleteReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the DeleteReviewTemplate 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 DeleteReviewTemplate for more information on using the DeleteReviewTemplate +// 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 DeleteReviewTemplateRequest method. +// req, resp := client.DeleteReviewTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteReviewTemplate +func (c *WellArchitected) DeleteReviewTemplateRequest(input *DeleteReviewTemplateInput) (req *request.Request, output *DeleteReviewTemplateOutput) { + op := &request.Operation{ + Name: opDeleteReviewTemplate, + HTTPMethod: "DELETE", + HTTPPath: "/reviewTemplates/{TemplateArn}", + } + + if input == nil { + input = &DeleteReviewTemplateInput{} + } + + output = &DeleteReviewTemplateOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteReviewTemplate API operation for AWS Well-Architected Tool. +// +// Delete a review template. +// +// Only the owner of a review template can delete it. +// +// After the review template is deleted, Amazon Web Services accounts, users, +// organizations, and organizational units (OUs) that you shared the review +// template with will no longer be able to apply it to new workloads. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation DeleteReviewTemplate for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteReviewTemplate +func (c *WellArchitected) DeleteReviewTemplate(input *DeleteReviewTemplateInput) (*DeleteReviewTemplateOutput, error) { + req, out := c.DeleteReviewTemplateRequest(input) + return out, req.Send() +} + +// DeleteReviewTemplateWithContext is the same as DeleteReviewTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteReviewTemplate 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 *WellArchitected) DeleteReviewTemplateWithContext(ctx aws.Context, input *DeleteReviewTemplateInput, opts ...request.Option) (*DeleteReviewTemplateOutput, error) { + req, out := c.DeleteReviewTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteTemplateShare = "DeleteTemplateShare" + +// DeleteTemplateShareRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTemplateShare 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 DeleteTemplateShare for more information on using the DeleteTemplateShare +// 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 DeleteTemplateShareRequest method. +// req, resp := client.DeleteTemplateShareRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteTemplateShare +func (c *WellArchitected) DeleteTemplateShareRequest(input *DeleteTemplateShareInput) (req *request.Request, output *DeleteTemplateShareOutput) { + op := &request.Operation{ + Name: opDeleteTemplateShare, + HTTPMethod: "DELETE", + HTTPPath: "/templates/shares/{TemplateArn}/{ShareId}", + } + + if input == nil { + input = &DeleteTemplateShareInput{} + } + + output = &DeleteTemplateShareOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTemplateShare API operation for AWS Well-Architected Tool. +// +// Delete a review template share. +// +// After the review template share is deleted, Amazon Web Services accounts, +// users, organizations, and organizational units (OUs) that you shared the +// review template with will no longer be able to apply it to new workloads. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation DeleteTemplateShare for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteTemplateShare +func (c *WellArchitected) DeleteTemplateShare(input *DeleteTemplateShareInput) (*DeleteTemplateShareOutput, error) { + req, out := c.DeleteTemplateShareRequest(input) + return out, req.Send() +} + +// DeleteTemplateShareWithContext is the same as DeleteTemplateShare with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTemplateShare 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 *WellArchitected) DeleteTemplateShareWithContext(ctx aws.Context, input *DeleteTemplateShareInput, opts ...request.Option) (*DeleteTemplateShareOutput, error) { + req, out := c.DeleteTemplateShareRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteWorkload = "DeleteWorkload" // DeleteWorkloadRequest generates a "aws/request.Request" representing the @@ -2724,6 +3154,279 @@ return out, req.Send() } +const opGetReviewTemplate = "GetReviewTemplate" + +// GetReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the GetReviewTemplate 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 GetReviewTemplate for more information on using the GetReviewTemplate +// 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 GetReviewTemplateRequest method. +// req, resp := client.GetReviewTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplate +func (c *WellArchitected) GetReviewTemplateRequest(input *GetReviewTemplateInput) (req *request.Request, output *GetReviewTemplateOutput) { + op := &request.Operation{ + Name: opGetReviewTemplate, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates/{TemplateArn}", + } + + if input == nil { + input = &GetReviewTemplateInput{} + } + + output = &GetReviewTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetReviewTemplate API operation for AWS Well-Architected Tool. +// +// Get review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation GetReviewTemplate for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplate +func (c *WellArchitected) GetReviewTemplate(input *GetReviewTemplateInput) (*GetReviewTemplateOutput, error) { + req, out := c.GetReviewTemplateRequest(input) + return out, req.Send() +} + +// GetReviewTemplateWithContext is the same as GetReviewTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See GetReviewTemplate 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 *WellArchitected) GetReviewTemplateWithContext(ctx aws.Context, input *GetReviewTemplateInput, opts ...request.Option) (*GetReviewTemplateOutput, error) { + req, out := c.GetReviewTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetReviewTemplateAnswer = "GetReviewTemplateAnswer" + +// GetReviewTemplateAnswerRequest generates a "aws/request.Request" representing the +// client's request for the GetReviewTemplateAnswer 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 GetReviewTemplateAnswer for more information on using the GetReviewTemplateAnswer +// 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 GetReviewTemplateAnswerRequest method. +// req, resp := client.GetReviewTemplateAnswerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateAnswer +func (c *WellArchitected) GetReviewTemplateAnswerRequest(input *GetReviewTemplateAnswerInput) (req *request.Request, output *GetReviewTemplateAnswerOutput) { + op := &request.Operation{ + Name: opGetReviewTemplateAnswer, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", + } + + if input == nil { + input = &GetReviewTemplateAnswerInput{} + } + + output = &GetReviewTemplateAnswerOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetReviewTemplateAnswer API operation for AWS Well-Architected Tool. +// +// Get review template answer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation GetReviewTemplateAnswer for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateAnswer +func (c *WellArchitected) GetReviewTemplateAnswer(input *GetReviewTemplateAnswerInput) (*GetReviewTemplateAnswerOutput, error) { + req, out := c.GetReviewTemplateAnswerRequest(input) + return out, req.Send() +} + +// GetReviewTemplateAnswerWithContext is the same as GetReviewTemplateAnswer with the addition of +// the ability to pass a context and additional request options. +// +// See GetReviewTemplateAnswer 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 *WellArchitected) GetReviewTemplateAnswerWithContext(ctx aws.Context, input *GetReviewTemplateAnswerInput, opts ...request.Option) (*GetReviewTemplateAnswerOutput, error) { + req, out := c.GetReviewTemplateAnswerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetReviewTemplateLensReview = "GetReviewTemplateLensReview" + +// GetReviewTemplateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the GetReviewTemplateLensReview 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 GetReviewTemplateLensReview for more information on using the GetReviewTemplateLensReview +// 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 GetReviewTemplateLensReviewRequest method. +// req, resp := client.GetReviewTemplateLensReviewRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateLensReview +func (c *WellArchitected) GetReviewTemplateLensReviewRequest(input *GetReviewTemplateLensReviewInput) (req *request.Request, output *GetReviewTemplateLensReviewOutput) { + op := &request.Operation{ + Name: opGetReviewTemplateLensReview, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", + } + + if input == nil { + input = &GetReviewTemplateLensReviewInput{} + } + + output = &GetReviewTemplateLensReviewOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetReviewTemplateLensReview API operation for AWS Well-Architected Tool. +// +// Get a lens review associated with a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation GetReviewTemplateLensReview for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateLensReview +func (c *WellArchitected) GetReviewTemplateLensReview(input *GetReviewTemplateLensReviewInput) (*GetReviewTemplateLensReviewOutput, error) { + req, out := c.GetReviewTemplateLensReviewRequest(input) + return out, req.Send() +} + +// GetReviewTemplateLensReviewWithContext is the same as GetReviewTemplateLensReview with the addition of +// the ability to pass a context and additional request options. +// +// See GetReviewTemplateLensReview 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 *WellArchitected) GetReviewTemplateLensReviewWithContext(ctx aws.Context, input *GetReviewTemplateLensReviewInput, opts ...request.Option) (*GetReviewTemplateLensReviewOutput, error) { + req, out := c.GetReviewTemplateLensReviewRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetWorkload = "GetWorkload" // GetWorkloadRequest generates a "aws/request.Request" representing the @@ -4699,6 +5402,299 @@ return p.Err() } +const opListReviewTemplateAnswers = "ListReviewTemplateAnswers" + +// ListReviewTemplateAnswersRequest generates a "aws/request.Request" representing the +// client's request for the ListReviewTemplateAnswers 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 ListReviewTemplateAnswers for more information on using the ListReviewTemplateAnswers +// 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 ListReviewTemplateAnswersRequest method. +// req, resp := client.ListReviewTemplateAnswersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplateAnswers +func (c *WellArchitected) ListReviewTemplateAnswersRequest(input *ListReviewTemplateAnswersInput) (req *request.Request, output *ListReviewTemplateAnswersOutput) { + op := &request.Operation{ + Name: opListReviewTemplateAnswers, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListReviewTemplateAnswersInput{} + } + + output = &ListReviewTemplateAnswersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListReviewTemplateAnswers API operation for AWS Well-Architected Tool. +// +// List the answers of a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation ListReviewTemplateAnswers for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplateAnswers +func (c *WellArchitected) ListReviewTemplateAnswers(input *ListReviewTemplateAnswersInput) (*ListReviewTemplateAnswersOutput, error) { + req, out := c.ListReviewTemplateAnswersRequest(input) + return out, req.Send() +} + +// ListReviewTemplateAnswersWithContext is the same as ListReviewTemplateAnswers with the addition of +// the ability to pass a context and additional request options. +// +// See ListReviewTemplateAnswers 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 *WellArchitected) ListReviewTemplateAnswersWithContext(ctx aws.Context, input *ListReviewTemplateAnswersInput, opts ...request.Option) (*ListReviewTemplateAnswersOutput, error) { + req, out := c.ListReviewTemplateAnswersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListReviewTemplateAnswersPages iterates over the pages of a ListReviewTemplateAnswers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListReviewTemplateAnswers 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 ListReviewTemplateAnswers operation. +// pageNum := 0 +// err := client.ListReviewTemplateAnswersPages(params, +// func(page *wellarchitected.ListReviewTemplateAnswersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListReviewTemplateAnswersPages(input *ListReviewTemplateAnswersInput, fn func(*ListReviewTemplateAnswersOutput, bool) bool) error { + return c.ListReviewTemplateAnswersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListReviewTemplateAnswersPagesWithContext same as ListReviewTemplateAnswersPages 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 *WellArchitected) ListReviewTemplateAnswersPagesWithContext(ctx aws.Context, input *ListReviewTemplateAnswersInput, fn func(*ListReviewTemplateAnswersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListReviewTemplateAnswersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListReviewTemplateAnswersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListReviewTemplateAnswersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListReviewTemplates = "ListReviewTemplates" + +// ListReviewTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListReviewTemplates 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 ListReviewTemplates for more information on using the ListReviewTemplates +// 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 ListReviewTemplatesRequest method. +// req, resp := client.ListReviewTemplatesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplates +func (c *WellArchitected) ListReviewTemplatesRequest(input *ListReviewTemplatesInput) (req *request.Request, output *ListReviewTemplatesOutput) { + op := &request.Operation{ + Name: opListReviewTemplates, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListReviewTemplatesInput{} + } + + output = &ListReviewTemplatesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListReviewTemplates API operation for AWS Well-Architected Tool. +// +// List review templates. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation ListReviewTemplates for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplates +func (c *WellArchitected) ListReviewTemplates(input *ListReviewTemplatesInput) (*ListReviewTemplatesOutput, error) { + req, out := c.ListReviewTemplatesRequest(input) + return out, req.Send() +} + +// ListReviewTemplatesWithContext is the same as ListReviewTemplates with the addition of +// the ability to pass a context and additional request options. +// +// See ListReviewTemplates 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 *WellArchitected) ListReviewTemplatesWithContext(ctx aws.Context, input *ListReviewTemplatesInput, opts ...request.Option) (*ListReviewTemplatesOutput, error) { + req, out := c.ListReviewTemplatesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListReviewTemplatesPages iterates over the pages of a ListReviewTemplates operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListReviewTemplates 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 ListReviewTemplates operation. +// pageNum := 0 +// err := client.ListReviewTemplatesPages(params, +// func(page *wellarchitected.ListReviewTemplatesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListReviewTemplatesPages(input *ListReviewTemplatesInput, fn func(*ListReviewTemplatesOutput, bool) bool) error { + return c.ListReviewTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListReviewTemplatesPagesWithContext same as ListReviewTemplatesPages 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 *WellArchitected) ListReviewTemplatesPagesWithContext(ctx aws.Context, input *ListReviewTemplatesInput, fn func(*ListReviewTemplatesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListReviewTemplatesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListReviewTemplatesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListReviewTemplatesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListShareInvitations = "ListShareInvitations" // ListShareInvitationsRequest generates a "aws/request.Request" representing the @@ -4748,7 +5744,10 @@ // ListShareInvitations API operation for AWS Well-Architected Tool. // -// List the workload invitations. +// List the share invitations. +// +// WorkloadNamePrefix, LensNamePrefix, ProfileNamePrefix, and TemplateNamePrefix +// are mutually exclusive. Use the parameter that matches your ShareResourceType. // // 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 @@ -4889,8 +5888,8 @@ // // List the tags for a resource. // -// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a -// profile ARN. +// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile +// ARN, or review template ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4929,6 +5928,154 @@ return out, req.Send() } +const opListTemplateShares = "ListTemplateShares" + +// ListTemplateSharesRequest generates a "aws/request.Request" representing the +// client's request for the ListTemplateShares 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 ListTemplateShares for more information on using the ListTemplateShares +// 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 ListTemplateSharesRequest method. +// req, resp := client.ListTemplateSharesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTemplateShares +func (c *WellArchitected) ListTemplateSharesRequest(input *ListTemplateSharesInput) (req *request.Request, output *ListTemplateSharesOutput) { + op := &request.Operation{ + Name: opListTemplateShares, + HTTPMethod: "GET", + HTTPPath: "/templates/shares/{TemplateArn}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTemplateSharesInput{} + } + + output = &ListTemplateSharesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTemplateShares API operation for AWS Well-Architected Tool. +// +// List review template shares. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation ListTemplateShares for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTemplateShares +func (c *WellArchitected) ListTemplateShares(input *ListTemplateSharesInput) (*ListTemplateSharesOutput, error) { + req, out := c.ListTemplateSharesRequest(input) + return out, req.Send() +} + +// ListTemplateSharesWithContext is the same as ListTemplateShares with the addition of +// the ability to pass a context and additional request options. +// +// See ListTemplateShares 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 *WellArchitected) ListTemplateSharesWithContext(ctx aws.Context, input *ListTemplateSharesInput, opts ...request.Option) (*ListTemplateSharesOutput, error) { + req, out := c.ListTemplateSharesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTemplateSharesPages iterates over the pages of a ListTemplateShares operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTemplateShares 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 ListTemplateShares operation. +// pageNum := 0 +// err := client.ListTemplateSharesPages(params, +// func(page *wellarchitected.ListTemplateSharesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListTemplateSharesPages(input *ListTemplateSharesInput, fn func(*ListTemplateSharesOutput, bool) bool) error { + return c.ListTemplateSharesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTemplateSharesPagesWithContext same as ListTemplateSharesPages 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 *WellArchitected) ListTemplateSharesPagesWithContext(ctx aws.Context, input *ListTemplateSharesInput, fn func(*ListTemplateSharesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTemplateSharesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTemplateSharesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTemplateSharesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListWorkloadShares = "ListWorkloadShares" // ListWorkloadSharesRequest generates a "aws/request.Request" representing the @@ -5268,8 +6415,8 @@ // // Adds one or more tags to the specified resource. // -// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a -// profile ARN. +// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile +// ARN, or review template ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5354,8 +6501,8 @@ // // Deletes specified tags from a resource. // -// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a -// profile ARN. +// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile +// ARN, or review template ARN. // // To specify multiple tags, use separate tagKeys parameters, for example: // @@ -5773,6 +6920,288 @@ return out, req.Send() } +const opUpdateReviewTemplate = "UpdateReviewTemplate" + +// UpdateReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReviewTemplate 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 UpdateReviewTemplate for more information on using the UpdateReviewTemplate +// 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 UpdateReviewTemplateRequest method. +// req, resp := client.UpdateReviewTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplate +func (c *WellArchitected) UpdateReviewTemplateRequest(input *UpdateReviewTemplateInput) (req *request.Request, output *UpdateReviewTemplateOutput) { + op := &request.Operation{ + Name: opUpdateReviewTemplate, + HTTPMethod: "PATCH", + HTTPPath: "/reviewTemplates/{TemplateArn}", + } + + if input == nil { + input = &UpdateReviewTemplateInput{} + } + + output = &UpdateReviewTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReviewTemplate API operation for AWS Well-Architected Tool. +// +// Update a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateReviewTemplate for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplate +func (c *WellArchitected) UpdateReviewTemplate(input *UpdateReviewTemplateInput) (*UpdateReviewTemplateOutput, error) { + req, out := c.UpdateReviewTemplateRequest(input) + return out, req.Send() +} + +// UpdateReviewTemplateWithContext is the same as UpdateReviewTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReviewTemplate 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 *WellArchitected) UpdateReviewTemplateWithContext(ctx aws.Context, input *UpdateReviewTemplateInput, opts ...request.Option) (*UpdateReviewTemplateOutput, error) { + req, out := c.UpdateReviewTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateReviewTemplateAnswer = "UpdateReviewTemplateAnswer" + +// UpdateReviewTemplateAnswerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReviewTemplateAnswer 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 UpdateReviewTemplateAnswer for more information on using the UpdateReviewTemplateAnswer +// 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 UpdateReviewTemplateAnswerRequest method. +// req, resp := client.UpdateReviewTemplateAnswerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateAnswer +func (c *WellArchitected) UpdateReviewTemplateAnswerRequest(input *UpdateReviewTemplateAnswerInput) (req *request.Request, output *UpdateReviewTemplateAnswerOutput) { + op := &request.Operation{ + Name: opUpdateReviewTemplateAnswer, + HTTPMethod: "PATCH", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", + } + + if input == nil { + input = &UpdateReviewTemplateAnswerInput{} + } + + output = &UpdateReviewTemplateAnswerOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReviewTemplateAnswer API operation for AWS Well-Architected Tool. +// +// Update a review template answer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateReviewTemplateAnswer for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateAnswer +func (c *WellArchitected) UpdateReviewTemplateAnswer(input *UpdateReviewTemplateAnswerInput) (*UpdateReviewTemplateAnswerOutput, error) { + req, out := c.UpdateReviewTemplateAnswerRequest(input) + return out, req.Send() +} + +// UpdateReviewTemplateAnswerWithContext is the same as UpdateReviewTemplateAnswer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReviewTemplateAnswer 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 *WellArchitected) UpdateReviewTemplateAnswerWithContext(ctx aws.Context, input *UpdateReviewTemplateAnswerInput, opts ...request.Option) (*UpdateReviewTemplateAnswerOutput, error) { + req, out := c.UpdateReviewTemplateAnswerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateReviewTemplateLensReview = "UpdateReviewTemplateLensReview" + +// UpdateReviewTemplateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReviewTemplateLensReview 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 UpdateReviewTemplateLensReview for more information on using the UpdateReviewTemplateLensReview +// 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 UpdateReviewTemplateLensReviewRequest method. +// req, resp := client.UpdateReviewTemplateLensReviewRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateLensReview +func (c *WellArchitected) UpdateReviewTemplateLensReviewRequest(input *UpdateReviewTemplateLensReviewInput) (req *request.Request, output *UpdateReviewTemplateLensReviewOutput) { + op := &request.Operation{ + Name: opUpdateReviewTemplateLensReview, + HTTPMethod: "PATCH", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", + } + + if input == nil { + input = &UpdateReviewTemplateLensReviewInput{} + } + + output = &UpdateReviewTemplateLensReviewOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReviewTemplateLensReview API operation for AWS Well-Architected Tool. +// +// Update a lens review associated with a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateReviewTemplateLensReview for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateLensReview +func (c *WellArchitected) UpdateReviewTemplateLensReview(input *UpdateReviewTemplateLensReviewInput) (*UpdateReviewTemplateLensReviewOutput, error) { + req, out := c.UpdateReviewTemplateLensReviewRequest(input) + return out, req.Send() +} + +// UpdateReviewTemplateLensReviewWithContext is the same as UpdateReviewTemplateLensReview with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReviewTemplateLensReview 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 *WellArchitected) UpdateReviewTemplateLensReviewWithContext(ctx aws.Context, input *UpdateReviewTemplateLensReviewInput, opts ...request.Option) (*UpdateReviewTemplateLensReviewOutput, error) { + req, out := c.UpdateReviewTemplateLensReviewRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateShareInvitation = "UpdateShareInvitation" // UpdateShareInvitationRequest generates a "aws/request.Request" representing the @@ -6248,6 +7677,101 @@ return out, req.Send() } +const opUpgradeReviewTemplateLensReview = "UpgradeReviewTemplateLensReview" + +// UpgradeReviewTemplateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the UpgradeReviewTemplateLensReview 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 UpgradeReviewTemplateLensReview for more information on using the UpgradeReviewTemplateLensReview +// 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 UpgradeReviewTemplateLensReviewRequest method. +// req, resp := client.UpgradeReviewTemplateLensReviewRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeReviewTemplateLensReview +func (c *WellArchitected) UpgradeReviewTemplateLensReviewRequest(input *UpgradeReviewTemplateLensReviewInput) (req *request.Request, output *UpgradeReviewTemplateLensReviewOutput) { + op := &request.Operation{ + Name: opUpgradeReviewTemplateLensReview, + HTTPMethod: "PUT", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/upgrade", + } + + if input == nil { + input = &UpgradeReviewTemplateLensReviewInput{} + } + + output = &UpgradeReviewTemplateLensReviewOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpgradeReviewTemplateLensReview API operation for AWS Well-Architected Tool. +// +// Upgrade the lens review of a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpgradeReviewTemplateLensReview for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeReviewTemplateLensReview +func (c *WellArchitected) UpgradeReviewTemplateLensReview(input *UpgradeReviewTemplateLensReviewInput) (*UpgradeReviewTemplateLensReviewOutput, error) { + req, out := c.UpgradeReviewTemplateLensReviewRequest(input) + return out, req.Send() +} + +// UpgradeReviewTemplateLensReviewWithContext is the same as UpgradeReviewTemplateLensReview with the addition of +// the ability to pass a context and additional request options. +// +// See UpgradeReviewTemplateLensReview 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 *WellArchitected) UpgradeReviewTemplateLensReviewWithContext(ctx aws.Context, input *UpgradeReviewTemplateLensReviewInput, opts ...request.Option) (*UpgradeReviewTemplateLensReviewOutput, error) { + req, out := c.UpgradeReviewTemplateLensReviewRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // User does not have sufficient access to perform this action. type AccessDeniedException struct { _ struct{} `type:"structure"` @@ -6393,6 +7917,9 @@ IsApplicable *bool `type:"boolean"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The ID used to identify a pillar, for example, security. @@ -7693,8 +9220,8 @@ // LensAlias is a required field LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. // // SharedWith is a required field SharedWith *string `min:"12" type:"string" required:"true"` @@ -8263,8 +9790,8 @@ // ProfileArn is a required field ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. // // SharedWith is a required field SharedWith *string `min:"12" type:"string" required:"true"` @@ -8371,6 +9898,294 @@ return s } +type CreateReviewTemplateInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The review template description. + // + // Description is a required field + Description *string `min:"3" type:"string" required:"true"` + + // Lenses applied to the review template. + // + // Lenses is a required field + Lenses []*string `type:"list" required:"true"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The tags assigned to the review template. + Tags map[string]*string `min:"1" type:"map"` + + // Name of the review template. + // + // TemplateName is a required field + TemplateName *string `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 CreateReviewTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReviewTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateReviewTemplateInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.Description != nil && len(*s.Description) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Description", 3)) + } + if s.Lenses == nil { + invalidParams.Add(request.NewErrParamRequired("Lenses")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateReviewTemplateInput) SetClientRequestToken(v string) *CreateReviewTemplateInput { + s.ClientRequestToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateReviewTemplateInput) SetDescription(v string) *CreateReviewTemplateInput { + s.Description = &v + return s +} + +// SetLenses sets the Lenses field's value. +func (s *CreateReviewTemplateInput) SetLenses(v []*string) *CreateReviewTemplateInput { + s.Lenses = v + return s +} + +// SetNotes sets the Notes field's value. +func (s *CreateReviewTemplateInput) SetNotes(v string) *CreateReviewTemplateInput { + s.Notes = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateReviewTemplateInput) SetTags(v map[string]*string) *CreateReviewTemplateInput { + s.Tags = v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateReviewTemplateInput) SetTemplateName(v string) *CreateReviewTemplateInput { + s.TemplateName = &v + return s +} + +type CreateReviewTemplateOutput struct { + _ struct{} `type:"structure"` + + // The review template ARN. + TemplateArn *string `min:"50" 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 CreateReviewTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReviewTemplateOutput) GoString() string { + return s.String() +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateReviewTemplateOutput) SetTemplateArn(v string) *CreateReviewTemplateOutput { + s.TemplateArn = &v + return s +} + +type CreateTemplateShareInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + // + // SharedWith is a required field + SharedWith *string `min:"12" type:"string" required:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 CreateTemplateShareInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateShareInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTemplateShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTemplateShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.SharedWith == nil { + invalidParams.Add(request.NewErrParamRequired("SharedWith")) + } + if s.SharedWith != nil && len(*s.SharedWith) < 12 { + invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateTemplateShareInput) SetClientRequestToken(v string) *CreateTemplateShareInput { + s.ClientRequestToken = &v + return s +} + +// SetSharedWith sets the SharedWith field's value. +func (s *CreateTemplateShareInput) SetSharedWith(v string) *CreateTemplateShareInput { + s.SharedWith = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateTemplateShareInput) SetTemplateArn(v string) *CreateTemplateShareInput { + s.TemplateArn = &v + return s +} + +type CreateTemplateShareOutput struct { + _ struct{} `type:"structure"` + + // The ID associated with the share. + ShareId *string `type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" 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 CreateTemplateShareOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateShareOutput) GoString() string { + return s.String() +} + +// SetShareId sets the ShareId field's value. +func (s *CreateTemplateShareOutput) SetShareId(v string) *CreateTemplateShareOutput { + s.ShareId = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateTemplateShareOutput) SetTemplateArn(v string) *CreateTemplateShareOutput { + s.TemplateArn = &v + return s +} + // Input for workload creation. type CreateWorkloadInput struct { _ struct{} `type:"structure"` @@ -8480,6 +10295,9 @@ // The list of lenses associated with the workload. Each lens is identified // by its LensSummary$LensAlias. // + // If a review template that specifies lenses is applied to the workload, those + // lenses are applied to the workload in addition to these lenses. + // // Lenses is a required field Lenses []*string `type:"list" required:"true"` @@ -8487,6 +10305,9 @@ NonAwsRegions []*string `type:"list"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The priorities of the pillars, which are used to order items in the improvement @@ -8500,6 +10321,9 @@ // for the primary group or individual that owns the workload review process. ReviewOwner *string `min:"3" type:"string"` + // The list of review template ARNs to associate with the workload. + ReviewTemplateArns []*string `type:"list"` + // The tags to be associated with the workload. Tags map[string]*string `min:"1" type:"map"` @@ -8663,6 +10487,12 @@ return s } +// SetReviewTemplateArns sets the ReviewTemplateArns field's value. +func (s *CreateWorkloadInput) SetReviewTemplateArns(v []*string) *CreateWorkloadInput { + s.ReviewTemplateArns = v + return s +} + // SetTags sets the Tags field's value. func (s *CreateWorkloadInput) SetTags(v map[string]*string) *CreateWorkloadInput { s.Tags = v @@ -8740,8 +10570,8 @@ // PermissionType is a required field PermissionType *string `type:"string" required:"true" enum:"PermissionType"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. // // SharedWith is a required field SharedWith *string `min:"12" type:"string" required:"true"` @@ -9307,6 +11137,211 @@ return s.String() } +type DeleteReviewTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 DeleteReviewTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReviewTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteReviewTemplateInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteReviewTemplateInput) SetClientRequestToken(v string) *DeleteReviewTemplateInput { + s.ClientRequestToken = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *DeleteReviewTemplateInput) SetTemplateArn(v string) *DeleteReviewTemplateInput { + s.TemplateArn = &v + return s +} + +type DeleteReviewTemplateOutput 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 DeleteReviewTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReviewTemplateOutput) GoString() string { + return s.String() +} + +type DeleteTemplateShareInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID associated with the share. + // + // ShareId is a required field + ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 DeleteTemplateShareInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateShareInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTemplateShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ShareId == nil { + invalidParams.Add(request.NewErrParamRequired("ShareId")) + } + if s.ShareId != nil && len(*s.ShareId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteTemplateShareInput) SetClientRequestToken(v string) *DeleteTemplateShareInput { + s.ClientRequestToken = &v + return s +} + +// SetShareId sets the ShareId field's value. +func (s *DeleteTemplateShareInput) SetShareId(v string) *DeleteTemplateShareInput { + s.ShareId = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *DeleteTemplateShareInput) SetTemplateArn(v string) *DeleteTemplateShareInput { + s.TemplateArn = &v + return s +} + +type DeleteTemplateShareOutput 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 DeleteTemplateShareOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateShareOutput) GoString() string { + return s.String() +} + // Input for workload deletion. type DeleteWorkloadInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10933,6 +12968,351 @@ return s } +type GetReviewTemplateAnswerInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The ID of the question. + // + // QuestionId is a required field + QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 GetReviewTemplateAnswerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateAnswerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetReviewTemplateAnswerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetReviewTemplateAnswerInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) + } + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLensAlias sets the LensAlias field's value. +func (s *GetReviewTemplateAnswerInput) SetLensAlias(v string) *GetReviewTemplateAnswerInput { + s.LensAlias = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *GetReviewTemplateAnswerInput) SetQuestionId(v string) *GetReviewTemplateAnswerInput { + s.QuestionId = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateAnswerInput) SetTemplateArn(v string) *GetReviewTemplateAnswerInput { + s.TemplateArn = &v + return s +} + +type GetReviewTemplateAnswerOutput struct { + _ struct{} `type:"structure"` + + // An answer of the question. + Answer *ReviewTemplateAnswer `type:"structure"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" 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 GetReviewTemplateAnswerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateAnswerOutput) GoString() string { + return s.String() +} + +// SetAnswer sets the Answer field's value. +func (s *GetReviewTemplateAnswerOutput) SetAnswer(v *ReviewTemplateAnswer) *GetReviewTemplateAnswerOutput { + s.Answer = v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *GetReviewTemplateAnswerOutput) SetLensAlias(v string) *GetReviewTemplateAnswerOutput { + s.LensAlias = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateAnswerOutput) SetTemplateArn(v string) *GetReviewTemplateAnswerOutput { + s.TemplateArn = &v + return s +} + +type GetReviewTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 GetReviewTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetReviewTemplateInput"} + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateInput) SetTemplateArn(v string) *GetReviewTemplateInput { + s.TemplateArn = &v + return s +} + +type GetReviewTemplateLensReviewInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 GetReviewTemplateLensReviewInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateLensReviewInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetReviewTemplateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetReviewTemplateLensReviewInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLensAlias sets the LensAlias field's value. +func (s *GetReviewTemplateLensReviewInput) SetLensAlias(v string) *GetReviewTemplateLensReviewInput { + s.LensAlias = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateLensReviewInput) SetTemplateArn(v string) *GetReviewTemplateLensReviewInput { + s.TemplateArn = &v + return s +} + +type GetReviewTemplateLensReviewOutput struct { + _ struct{} `type:"structure"` + + // A lens review of a question. + LensReview *ReviewTemplateLensReview `type:"structure"` + + // The review template ARN. + TemplateArn *string `min:"50" 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 GetReviewTemplateLensReviewOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateLensReviewOutput) GoString() string { + return s.String() +} + +// SetLensReview sets the LensReview field's value. +func (s *GetReviewTemplateLensReviewOutput) SetLensReview(v *ReviewTemplateLensReview) *GetReviewTemplateLensReviewOutput { + s.LensReview = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateLensReviewOutput) SetTemplateArn(v string) *GetReviewTemplateLensReviewOutput { + s.TemplateArn = &v + return s +} + +type GetReviewTemplateOutput struct { + _ struct{} `type:"structure"` + + // The review template. + ReviewTemplate *ReviewTemplate `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 GetReviewTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateOutput) GoString() string { + return s.String() +} + +// SetReviewTemplate sets the ReviewTemplate field's value. +func (s *GetReviewTemplateOutput) SetReviewTemplate(v *ReviewTemplate) *GetReviewTemplateOutput { + s.ReviewTemplate = v + return s +} + // Input to get a workload. type GetWorkloadInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -11478,6 +13858,9 @@ NextToken *string `type:"string"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // List of pillar review summaries of lens review in a workload. @@ -11769,8 +14152,8 @@ // The ID associated with the share. ShareId *string `type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` // The status of the share request. @@ -11969,6 +14352,15 @@ // The ARN for the lens. LensArn *string `type:"string"` + // ResourceArn of the lens being upgraded + ResourceArn *string `min:"50" type:"string"` + + // The name of the workload. + // + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + ResourceName *string `min:"3" type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. WorkloadId *string `min:"32" type:"string"` @@ -12022,6 +14414,18 @@ return s } +// SetResourceArn sets the ResourceArn field's value. +func (s *LensUpgradeSummary) SetResourceArn(v string) *LensUpgradeSummary { + s.ResourceArn = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *LensUpgradeSummary) SetResourceName(v string) *LensUpgradeSummary { + s.ResourceName = &v + return s +} + // SetWorkloadId sets the WorkloadId field's value. func (s *LensUpgradeSummary) SetWorkloadId(v string) *LensUpgradeSummary { s.WorkloadId = &v @@ -13010,8 +15414,8 @@ // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the lens is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the lens is shared. SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` // The status of the share request. @@ -13382,6 +15786,11 @@ // The token to use to retrieve the next set of results. NextToken *string `type:"string"` + // The ARN for the related resource for the notification. + // + // Only one of WorkloadID or ResourceARN should be specified. + ResourceArn *string `min:"50" type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. WorkloadId *string `min:"32" type:"string"` @@ -13411,6 +15820,9 @@ if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.ResourceArn != nil && len(*s.ResourceArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 50)) + } if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } @@ -13433,6 +15845,12 @@ return s } +// SetResourceArn sets the ResourceArn field's value. +func (s *ListNotificationsInput) SetResourceArn(v string) *ListNotificationsInput { + s.ResourceArn = &v + return s +} + // SetWorkloadId sets the WorkloadId field's value. func (s *ListNotificationsInput) SetWorkloadId(v string) *ListNotificationsInput { s.WorkloadId = &v @@ -13599,8 +16017,8 @@ // ProfileArn is a required field ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the profile is shared. SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` // The status of the share request. @@ -13723,7 +16141,8 @@ // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // Prefix for profile name. + // An optional string added to the beginning of each profile name returned in + // the results. ProfileNamePrefix *string `location:"querystring" locationName:"ProfileNamePrefix" type:"string"` // Profile owner type. @@ -13825,6 +16244,276 @@ return s } +type ListReviewTemplateAnswersInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `location:"querystring" locationName:"PillarId" min:"1" type:"string"` + + // The ARN of the review template. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 ListReviewTemplateAnswersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReviewTemplateAnswersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListReviewTemplateAnswersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReviewTemplateAnswersInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.PillarId != nil && len(*s.PillarId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLensAlias sets the LensAlias field's value. +func (s *ListReviewTemplateAnswersInput) SetLensAlias(v string) *ListReviewTemplateAnswersInput { + s.LensAlias = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListReviewTemplateAnswersInput) SetMaxResults(v int64) *ListReviewTemplateAnswersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListReviewTemplateAnswersInput) SetNextToken(v string) *ListReviewTemplateAnswersInput { + s.NextToken = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *ListReviewTemplateAnswersInput) SetPillarId(v string) *ListReviewTemplateAnswersInput { + s.PillarId = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListReviewTemplateAnswersInput) SetTemplateArn(v string) *ListReviewTemplateAnswersInput { + s.TemplateArn = &v + return s +} + +type ListReviewTemplateAnswersOutput struct { + _ struct{} `type:"structure"` + + // List of answer summaries of a lens review in a review template. + AnswerSummaries []*ReviewTemplateAnswerSummary `type:"list"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The ARN of the review template. + TemplateArn *string `min:"50" 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 ListReviewTemplateAnswersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReviewTemplateAnswersOutput) GoString() string { + return s.String() +} + +// SetAnswerSummaries sets the AnswerSummaries field's value. +func (s *ListReviewTemplateAnswersOutput) SetAnswerSummaries(v []*ReviewTemplateAnswerSummary) *ListReviewTemplateAnswersOutput { + s.AnswerSummaries = v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *ListReviewTemplateAnswersOutput) SetLensAlias(v string) *ListReviewTemplateAnswersOutput { + s.LensAlias = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListReviewTemplateAnswersOutput) SetNextToken(v string) *ListReviewTemplateAnswersOutput { + s.NextToken = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListReviewTemplateAnswersOutput) SetTemplateArn(v string) *ListReviewTemplateAnswersOutput { + s.TemplateArn = &v + return s +} + +type ListReviewTemplatesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReviewTemplatesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReviewTemplatesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListReviewTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReviewTemplatesInput"} + 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 *ListReviewTemplatesInput) SetMaxResults(v int64) *ListReviewTemplatesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListReviewTemplatesInput) SetNextToken(v string) *ListReviewTemplatesInput { + s.NextToken = &v + return s +} + +type ListReviewTemplatesOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // List of review templates. + ReviewTemplates []*ReviewTemplateSummary `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 ListReviewTemplatesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListReviewTemplatesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListReviewTemplatesOutput) SetNextToken(v string) *ListReviewTemplatesOutput { + s.NextToken = &v + return s +} + +// SetReviewTemplates sets the ReviewTemplates field's value. +func (s *ListReviewTemplatesOutput) SetReviewTemplates(v []*ReviewTemplateSummary) *ListReviewTemplatesOutput { + s.ReviewTemplates = v + return s +} + // Input for List Share Invitations type ListShareInvitationsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -13839,12 +16528,17 @@ // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // Profile name prefix. + // An optional string added to the beginning of each profile name returned in + // the results. ProfileNamePrefix *string `location:"querystring" locationName:"ProfileNamePrefix" type:"string"` // The type of share invitations to be returned. ShareResourceType *string `location:"querystring" locationName:"ShareResourceType" type:"string" enum:"ShareResourceType"` + // An optional string added to the beginning of each review template name returned + // in the results. + TemplateNamePrefix *string `location:"querystring" locationName:"TemplateNamePrefix" type:"string"` + // An optional string added to the beginning of each workload name returned // in the results. WorkloadNamePrefix *string `location:"querystring" locationName:"WorkloadNamePrefix" type:"string"` @@ -13911,6 +16605,12 @@ return s } +// SetTemplateNamePrefix sets the TemplateNamePrefix field's value. +func (s *ListShareInvitationsInput) SetTemplateNamePrefix(v string) *ListShareInvitationsInput { + s.TemplateNamePrefix = &v + return s +} + // SetWorkloadNamePrefix sets the WorkloadNamePrefix field's value. func (s *ListShareInvitationsInput) SetWorkloadNamePrefix(v string) *ListShareInvitationsInput { s.WorkloadNamePrefix = &v @@ -14038,6 +16738,144 @@ return s } +type ListTemplateSharesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the profile is shared. + SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` + + // The status of the share request. + Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 ListTemplateSharesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTemplateSharesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTemplateSharesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTemplateSharesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTemplateSharesInput) SetMaxResults(v int64) *ListTemplateSharesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTemplateSharesInput) SetNextToken(v string) *ListTemplateSharesInput { + s.NextToken = &v + return s +} + +// SetSharedWithPrefix sets the SharedWithPrefix field's value. +func (s *ListTemplateSharesInput) SetSharedWithPrefix(v string) *ListTemplateSharesInput { + s.SharedWithPrefix = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListTemplateSharesInput) SetStatus(v string) *ListTemplateSharesInput { + s.Status = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListTemplateSharesInput) SetTemplateArn(v string) *ListTemplateSharesInput { + s.TemplateArn = &v + return s +} + +type ListTemplateSharesOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // A review template share summary return object. + TemplateShareSummaries []*TemplateShareSummary `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 ListTemplateSharesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTemplateSharesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTemplateSharesOutput) SetNextToken(v string) *ListTemplateSharesOutput { + s.NextToken = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListTemplateSharesOutput) SetTemplateArn(v string) *ListTemplateSharesOutput { + s.TemplateArn = &v + return s +} + +// SetTemplateShareSummaries sets the TemplateShareSummaries field's value. +func (s *ListTemplateSharesOutput) SetTemplateShareSummaries(v []*TemplateShareSummary) *ListTemplateSharesOutput { + s.TemplateShareSummaries = v + return s +} + // Input for List Workload Share type ListWorkloadSharesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -14048,8 +16886,8 @@ // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload is shared. SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` // The status of the share request. @@ -14570,6 +17408,9 @@ _ struct{} `type:"structure"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The ID used to identify a pillar, for example, security. @@ -15035,8 +17876,8 @@ // The ID associated with the share. ShareId *string `type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` // The status of the share request. @@ -15536,6 +18377,694 @@ return s.RespMetadata.RequestID } +// A review template. +type ReviewTemplate struct { + _ struct{} `type:"structure"` + + // The review template description. + Description *string `min:"3" type:"string"` + + // The lenses applied to the review template. + Lenses []*string `type:"list"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` + + // A count of how many total questions are answered and unanswered in the review + // template. + QuestionCounts map[string]*int64 `type:"map"` + + // The ID assigned to the template share invitation. + ShareInvitationId *string `type:"string"` + + // The tags assigned to the review template. + Tags map[string]*string `min:"1" type:"map"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // The name of the review template. + TemplateName *string `min:"3" type:"string"` + + // The latest status of a review template. + UpdateStatus *string `type:"string" enum:"ReviewTemplateUpdateStatus"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplate) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *ReviewTemplate) SetDescription(v string) *ReviewTemplate { + s.Description = &v + return s +} + +// SetLenses sets the Lenses field's value. +func (s *ReviewTemplate) SetLenses(v []*string) *ReviewTemplate { + s.Lenses = v + return s +} + +// SetNotes sets the Notes field's value. +func (s *ReviewTemplate) SetNotes(v string) *ReviewTemplate { + s.Notes = &v + return s +} + +// SetOwner sets the Owner field's value. +func (s *ReviewTemplate) SetOwner(v string) *ReviewTemplate { + s.Owner = &v + return s +} + +// SetQuestionCounts sets the QuestionCounts field's value. +func (s *ReviewTemplate) SetQuestionCounts(v map[string]*int64) *ReviewTemplate { + s.QuestionCounts = v + return s +} + +// SetShareInvitationId sets the ShareInvitationId field's value. +func (s *ReviewTemplate) SetShareInvitationId(v string) *ReviewTemplate { + s.ShareInvitationId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ReviewTemplate) SetTags(v map[string]*string) *ReviewTemplate { + s.Tags = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ReviewTemplate) SetTemplateArn(v string) *ReviewTemplate { + s.TemplateArn = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ReviewTemplate) SetTemplateName(v string) *ReviewTemplate { + s.TemplateName = &v + return s +} + +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *ReviewTemplate) SetUpdateStatus(v string) *ReviewTemplate { + s.UpdateStatus = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ReviewTemplate) SetUpdatedAt(v time.Time) *ReviewTemplate { + s.UpdatedAt = &v + return s +} + +// An answer of the question. +type ReviewTemplateAnswer struct { + _ struct{} `type:"structure"` + + // The status of whether or not this question has been answered. + AnswerStatus *string `type:"string" enum:"ReviewTemplateAnswerStatus"` + + // A list of selected choices to a question in your review template. + ChoiceAnswers []*ChoiceAnswer `type:"list"` + + // List of choices available for a question. + Choices []*Choice `type:"list"` + + // The helpful resource text to be displayed for a custom lens. + // + // This field does not apply to Amazon Web Services official lenses. + HelpfulResourceDisplayText *string `min:"1" type:"string"` + + // The helpful resource URL. + // + // For Amazon Web Services official lenses, this is the helpful resource URL + // for a question or choice. + // + // For custom lenses, this is the helpful resource URL for a question and is + // only provided if HelpfulResourceDisplayText was specified for the question. + HelpfulResourceUrl *string `min:"1" type:"string"` + + // The improvement plan URL for a question in an Amazon Web Services official + // lenses. + // + // This value is only available if the question has been answered. + // + // This value does not apply to custom lenses. + ImprovementPlanUrl *string `min:"1" type:"string"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The description of the question. + QuestionDescription *string `min:"1" type:"string"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` + + // The reason why the question is not applicable to your review template. + Reason *string `type:"string" enum:"AnswerReason"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateAnswer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateAnswer) GoString() string { + return s.String() +} + +// SetAnswerStatus sets the AnswerStatus field's value. +func (s *ReviewTemplateAnswer) SetAnswerStatus(v string) *ReviewTemplateAnswer { + s.AnswerStatus = &v + return s +} + +// SetChoiceAnswers sets the ChoiceAnswers field's value. +func (s *ReviewTemplateAnswer) SetChoiceAnswers(v []*ChoiceAnswer) *ReviewTemplateAnswer { + s.ChoiceAnswers = v + return s +} + +// SetChoices sets the Choices field's value. +func (s *ReviewTemplateAnswer) SetChoices(v []*Choice) *ReviewTemplateAnswer { + s.Choices = v + return s +} + +// SetHelpfulResourceDisplayText sets the HelpfulResourceDisplayText field's value. +func (s *ReviewTemplateAnswer) SetHelpfulResourceDisplayText(v string) *ReviewTemplateAnswer { + s.HelpfulResourceDisplayText = &v + return s +} + +// SetHelpfulResourceUrl sets the HelpfulResourceUrl field's value. +func (s *ReviewTemplateAnswer) SetHelpfulResourceUrl(v string) *ReviewTemplateAnswer { + s.HelpfulResourceUrl = &v + return s +} + +// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. +func (s *ReviewTemplateAnswer) SetImprovementPlanUrl(v string) *ReviewTemplateAnswer { + s.ImprovementPlanUrl = &v + return s +} + +// SetIsApplicable sets the IsApplicable field's value. +func (s *ReviewTemplateAnswer) SetIsApplicable(v bool) *ReviewTemplateAnswer { + s.IsApplicable = &v + return s +} + +// SetNotes sets the Notes field's value. +func (s *ReviewTemplateAnswer) SetNotes(v string) *ReviewTemplateAnswer { + s.Notes = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *ReviewTemplateAnswer) SetPillarId(v string) *ReviewTemplateAnswer { + s.PillarId = &v + return s +} + +// SetQuestionDescription sets the QuestionDescription field's value. +func (s *ReviewTemplateAnswer) SetQuestionDescription(v string) *ReviewTemplateAnswer { + s.QuestionDescription = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *ReviewTemplateAnswer) SetQuestionId(v string) *ReviewTemplateAnswer { + s.QuestionId = &v + return s +} + +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ReviewTemplateAnswer) SetQuestionTitle(v string) *ReviewTemplateAnswer { + s.QuestionTitle = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *ReviewTemplateAnswer) SetReason(v string) *ReviewTemplateAnswer { + s.Reason = &v + return s +} + +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *ReviewTemplateAnswer) SetSelectedChoices(v []*string) *ReviewTemplateAnswer { + s.SelectedChoices = v + return s +} + +// The summary of review template answers. +type ReviewTemplateAnswerSummary struct { + _ struct{} `type:"structure"` + + // The status of whether or not this question has been answered. + AnswerStatus *string `type:"string" enum:"ReviewTemplateAnswerStatus"` + + // A list of selected choices to a question in the review template. + ChoiceAnswerSummaries []*ChoiceAnswerSummary `type:"list"` + + // List of choices available for a question. + Choices []*Choice `type:"list"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` + + // The type of question. + QuestionType *string `type:"string" enum:"QuestionType"` + + // The reason why a choice is not-applicable to a question in the review template. + Reason *string `type:"string" enum:"AnswerReason"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateAnswerSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateAnswerSummary) GoString() string { + return s.String() +} + +// SetAnswerStatus sets the AnswerStatus field's value. +func (s *ReviewTemplateAnswerSummary) SetAnswerStatus(v string) *ReviewTemplateAnswerSummary { + s.AnswerStatus = &v + return s +} + +// SetChoiceAnswerSummaries sets the ChoiceAnswerSummaries field's value. +func (s *ReviewTemplateAnswerSummary) SetChoiceAnswerSummaries(v []*ChoiceAnswerSummary) *ReviewTemplateAnswerSummary { + s.ChoiceAnswerSummaries = v + return s +} + +// SetChoices sets the Choices field's value. +func (s *ReviewTemplateAnswerSummary) SetChoices(v []*Choice) *ReviewTemplateAnswerSummary { + s.Choices = v + return s +} + +// SetIsApplicable sets the IsApplicable field's value. +func (s *ReviewTemplateAnswerSummary) SetIsApplicable(v bool) *ReviewTemplateAnswerSummary { + s.IsApplicable = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *ReviewTemplateAnswerSummary) SetPillarId(v string) *ReviewTemplateAnswerSummary { + s.PillarId = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *ReviewTemplateAnswerSummary) SetQuestionId(v string) *ReviewTemplateAnswerSummary { + s.QuestionId = &v + return s +} + +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ReviewTemplateAnswerSummary) SetQuestionTitle(v string) *ReviewTemplateAnswerSummary { + s.QuestionTitle = &v + return s +} + +// SetQuestionType sets the QuestionType field's value. +func (s *ReviewTemplateAnswerSummary) SetQuestionType(v string) *ReviewTemplateAnswerSummary { + s.QuestionType = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *ReviewTemplateAnswerSummary) SetReason(v string) *ReviewTemplateAnswerSummary { + s.Reason = &v + return s +} + +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *ReviewTemplateAnswerSummary) SetSelectedChoices(v []*string) *ReviewTemplateAnswerSummary { + s.SelectedChoices = v + return s +} + +// The lens review of a review template. +type ReviewTemplateLensReview struct { + _ struct{} `type:"structure"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The lens ARN. + LensArn *string `type:"string"` + + // The full name of the lens. + LensName *string `min:"1" type:"string"` + + // The status of the lens. + LensStatus *string `type:"string" enum:"LensStatus"` + + // The version of the lens. + LensVersion *string `min:"1" type:"string"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // Pillar review summaries of a lens review. + PillarReviewSummaries []*ReviewTemplatePillarReviewSummary `type:"list"` + + // A count of how many questions are answered and unanswered in the lens review. + QuestionCounts map[string]*int64 `type:"map"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateLensReview) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateLensReview) GoString() string { + return s.String() +} + +// SetLensAlias sets the LensAlias field's value. +func (s *ReviewTemplateLensReview) SetLensAlias(v string) *ReviewTemplateLensReview { + s.LensAlias = &v + return s +} + +// SetLensArn sets the LensArn field's value. +func (s *ReviewTemplateLensReview) SetLensArn(v string) *ReviewTemplateLensReview { + s.LensArn = &v + return s +} + +// SetLensName sets the LensName field's value. +func (s *ReviewTemplateLensReview) SetLensName(v string) *ReviewTemplateLensReview { + s.LensName = &v + return s +} + +// SetLensStatus sets the LensStatus field's value. +func (s *ReviewTemplateLensReview) SetLensStatus(v string) *ReviewTemplateLensReview { + s.LensStatus = &v + return s +} + +// SetLensVersion sets the LensVersion field's value. +func (s *ReviewTemplateLensReview) SetLensVersion(v string) *ReviewTemplateLensReview { + s.LensVersion = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ReviewTemplateLensReview) SetNextToken(v string) *ReviewTemplateLensReview { + s.NextToken = &v + return s +} + +// SetNotes sets the Notes field's value. +func (s *ReviewTemplateLensReview) SetNotes(v string) *ReviewTemplateLensReview { + s.Notes = &v + return s +} + +// SetPillarReviewSummaries sets the PillarReviewSummaries field's value. +func (s *ReviewTemplateLensReview) SetPillarReviewSummaries(v []*ReviewTemplatePillarReviewSummary) *ReviewTemplateLensReview { + s.PillarReviewSummaries = v + return s +} + +// SetQuestionCounts sets the QuestionCounts field's value. +func (s *ReviewTemplateLensReview) SetQuestionCounts(v map[string]*int64) *ReviewTemplateLensReview { + s.QuestionCounts = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ReviewTemplateLensReview) SetUpdatedAt(v time.Time) *ReviewTemplateLensReview { + s.UpdatedAt = &v + return s +} + +// Summary of a review template. +type ReviewTemplatePillarReviewSummary struct { + _ struct{} `type:"structure"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The name of the pillar. + PillarName *string `min:"1" type:"string"` + + // A count of how many questions are answered and unanswered in the requested + // pillar of the lens review. + QuestionCounts map[string]*int64 `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplatePillarReviewSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplatePillarReviewSummary) GoString() string { + return s.String() +} + +// SetNotes sets the Notes field's value. +func (s *ReviewTemplatePillarReviewSummary) SetNotes(v string) *ReviewTemplatePillarReviewSummary { + s.Notes = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *ReviewTemplatePillarReviewSummary) SetPillarId(v string) *ReviewTemplatePillarReviewSummary { + s.PillarId = &v + return s +} + +// SetPillarName sets the PillarName field's value. +func (s *ReviewTemplatePillarReviewSummary) SetPillarName(v string) *ReviewTemplatePillarReviewSummary { + s.PillarName = &v + return s +} + +// SetQuestionCounts sets the QuestionCounts field's value. +func (s *ReviewTemplatePillarReviewSummary) SetQuestionCounts(v map[string]*int64) *ReviewTemplatePillarReviewSummary { + s.QuestionCounts = v + return s +} + +// Summary of a review template. +type ReviewTemplateSummary struct { + _ struct{} `type:"structure"` + + // Description of the review template. + Description *string `min:"3" type:"string"` + + // Lenses associated with the review template. + Lenses []*string `type:"list"` + + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // The name of the review template. + TemplateName *string `min:"3" type:"string"` + + // The latest status of a review template. + UpdateStatus *string `type:"string" enum:"ReviewTemplateUpdateStatus"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReviewTemplateSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *ReviewTemplateSummary) SetDescription(v string) *ReviewTemplateSummary { + s.Description = &v + return s +} + +// SetLenses sets the Lenses field's value. +func (s *ReviewTemplateSummary) SetLenses(v []*string) *ReviewTemplateSummary { + s.Lenses = v + return s +} + +// SetOwner sets the Owner field's value. +func (s *ReviewTemplateSummary) SetOwner(v string) *ReviewTemplateSummary { + s.Owner = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ReviewTemplateSummary) SetTemplateArn(v string) *ReviewTemplateSummary { + s.TemplateArn = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ReviewTemplateSummary) SetTemplateName(v string) *ReviewTemplateSummary { + s.TemplateName = &v + return s +} + +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *ReviewTemplateSummary) SetUpdateStatus(v string) *ReviewTemplateSummary { + s.UpdateStatus = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ReviewTemplateSummary) SetUpdatedAt(v time.Time) *ReviewTemplateSummary { + s.UpdatedAt = &v + return s +} + // The user has reached their resource quota. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -15645,6 +19174,9 @@ // The resource type of the share invitation. ShareResourceType *string `type:"string" enum:"ShareResourceType"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. WorkloadId *string `min:"32" type:"string"` @@ -15698,6 +19230,12 @@ return s } +// SetTemplateArn sets the TemplateArn field's value. +func (s *ShareInvitation) SetTemplateArn(v string) *ShareInvitation { + s.TemplateArn = &v + return s +} + // SetWorkloadId sets the WorkloadId field's value. func (s *ShareInvitation) SetWorkloadId(v string) *ShareInvitation { s.WorkloadId = &v @@ -15732,10 +19270,16 @@ // An Amazon Web Services account ID. SharedBy *string `min:"12" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // The name of the review template. + TemplateName *string `min:"3" type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. WorkloadId *string `min:"32" type:"string"` @@ -15819,6 +19363,18 @@ return s } +// SetTemplateArn sets the TemplateArn field's value. +func (s *ShareInvitationSummary) SetTemplateArn(v string) *ShareInvitationSummary { + s.TemplateArn = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ShareInvitationSummary) SetTemplateName(v string) *ShareInvitationSummary { + s.TemplateName = &v + return s +} + // SetWorkloadId sets the WorkloadId field's value. func (s *ShareInvitationSummary) SetWorkloadId(v string) *ShareInvitationSummary { s.WorkloadId = &v @@ -15919,6 +19475,66 @@ return s.String() } +// Summary of a review template share. +type TemplateShareSummary struct { + _ struct{} `type:"structure"` + + // The ID associated with the share. + ShareId *string `type:"string"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + SharedWith *string `min:"12" type:"string"` + + // The status of the share request. + Status *string `type:"string" enum:"ShareStatus"` + + // Review template share invitation status message. + StatusMessage *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TemplateShareSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TemplateShareSummary) GoString() string { + return s.String() +} + +// SetShareId sets the ShareId field's value. +func (s *TemplateShareSummary) SetShareId(v string) *TemplateShareSummary { + s.ShareId = &v + return s +} + +// SetSharedWith sets the SharedWith field's value. +func (s *TemplateShareSummary) SetSharedWith(v string) *TemplateShareSummary { + s.SharedWith = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *TemplateShareSummary) SetStatus(v string) *TemplateShareSummary { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *TemplateShareSummary) SetStatusMessage(v string) *TemplateShareSummary { + s.StatusMessage = &v + return s +} + // Request was denied due to request throttling. type ThrottlingException struct { _ struct{} `type:"structure"` @@ -16105,6 +19721,9 @@ LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The ID of the question. @@ -16381,9 +20000,15 @@ LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. LensNotes *string `type:"string"` // List of pillar notes of a lens review in a workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. PillarNotes map[string]*string `type:"map"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services @@ -16610,6 +20235,496 @@ return s } +type UpdateReviewTemplateAnswerInput struct { + _ struct{} `type:"structure"` + + // A list of choices to be updated. + ChoiceUpdates map[string]*ChoiceUpdate `type:"map"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The ID of the question. + // + // QuestionId is a required field + QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` + + // The update reason. + Reason *string `type:"string" enum:"AnswerReason"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 UpdateReviewTemplateAnswerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReviewTemplateAnswerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateReviewTemplateAnswerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReviewTemplateAnswerInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) + } + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + if s.ChoiceUpdates != nil { + for i, v := range s.ChoiceUpdates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ChoiceUpdates", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChoiceUpdates sets the ChoiceUpdates field's value. +func (s *UpdateReviewTemplateAnswerInput) SetChoiceUpdates(v map[string]*ChoiceUpdate) *UpdateReviewTemplateAnswerInput { + s.ChoiceUpdates = v + return s +} + +// SetIsApplicable sets the IsApplicable field's value. +func (s *UpdateReviewTemplateAnswerInput) SetIsApplicable(v bool) *UpdateReviewTemplateAnswerInput { + s.IsApplicable = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *UpdateReviewTemplateAnswerInput) SetLensAlias(v string) *UpdateReviewTemplateAnswerInput { + s.LensAlias = &v + return s +} + +// SetNotes sets the Notes field's value. +func (s *UpdateReviewTemplateAnswerInput) SetNotes(v string) *UpdateReviewTemplateAnswerInput { + s.Notes = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *UpdateReviewTemplateAnswerInput) SetQuestionId(v string) *UpdateReviewTemplateAnswerInput { + s.QuestionId = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *UpdateReviewTemplateAnswerInput) SetReason(v string) *UpdateReviewTemplateAnswerInput { + s.Reason = &v + return s +} + +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *UpdateReviewTemplateAnswerInput) SetSelectedChoices(v []*string) *UpdateReviewTemplateAnswerInput { + s.SelectedChoices = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateAnswerInput) SetTemplateArn(v string) *UpdateReviewTemplateAnswerInput { + s.TemplateArn = &v + return s +} + +type UpdateReviewTemplateAnswerOutput struct { + _ struct{} `type:"structure"` + + // An answer of the question. + Answer *ReviewTemplateAnswer `type:"structure"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" 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 UpdateReviewTemplateAnswerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReviewTemplateAnswerOutput) GoString() string { + return s.String() +} + +// SetAnswer sets the Answer field's value. +func (s *UpdateReviewTemplateAnswerOutput) SetAnswer(v *ReviewTemplateAnswer) *UpdateReviewTemplateAnswerOutput { + s.Answer = v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *UpdateReviewTemplateAnswerOutput) SetLensAlias(v string) *UpdateReviewTemplateAnswerOutput { + s.LensAlias = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateAnswerOutput) SetTemplateArn(v string) *UpdateReviewTemplateAnswerOutput { + s.TemplateArn = &v + return s +} + +type UpdateReviewTemplateInput struct { + _ struct{} `type:"structure"` + + // The review template description. + Description *string `min:"3" type:"string"` + + // A list of lens aliases or ARNs to apply to the review template. + LensesToAssociate []*string `min:"1" type:"list"` + + // A list of lens aliases or ARNs to unapply to the review template. The wellarchitected + // lens cannot be unapplied. + LensesToDisassociate []*string `min:"1" type:"list"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` + + // The review template name. + TemplateName *string `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 UpdateReviewTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReviewTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReviewTemplateInput"} + if s.Description != nil && len(*s.Description) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Description", 3)) + } + if s.LensesToAssociate != nil && len(s.LensesToAssociate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensesToAssociate", 1)) + } + if s.LensesToDisassociate != nil && len(s.LensesToDisassociate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensesToDisassociate", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + if s.TemplateName != nil && len(*s.TemplateName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateReviewTemplateInput) SetDescription(v string) *UpdateReviewTemplateInput { + s.Description = &v + return s +} + +// SetLensesToAssociate sets the LensesToAssociate field's value. +func (s *UpdateReviewTemplateInput) SetLensesToAssociate(v []*string) *UpdateReviewTemplateInput { + s.LensesToAssociate = v + return s +} + +// SetLensesToDisassociate sets the LensesToDisassociate field's value. +func (s *UpdateReviewTemplateInput) SetLensesToDisassociate(v []*string) *UpdateReviewTemplateInput { + s.LensesToDisassociate = v + return s +} + +// SetNotes sets the Notes field's value. +func (s *UpdateReviewTemplateInput) SetNotes(v string) *UpdateReviewTemplateInput { + s.Notes = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateInput) SetTemplateArn(v string) *UpdateReviewTemplateInput { + s.TemplateArn = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *UpdateReviewTemplateInput) SetTemplateName(v string) *UpdateReviewTemplateInput { + s.TemplateName = &v + return s +} + +type UpdateReviewTemplateLensReviewInput struct { + _ struct{} `type:"structure"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + LensNotes *string `type:"string"` + + // List of pillar notes of a lens review in a workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + PillarNotes map[string]*string `type:"map"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 UpdateReviewTemplateLensReviewInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReviewTemplateLensReviewInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateReviewTemplateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReviewTemplateLensReviewInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLensAlias sets the LensAlias field's value. +func (s *UpdateReviewTemplateLensReviewInput) SetLensAlias(v string) *UpdateReviewTemplateLensReviewInput { + s.LensAlias = &v + return s +} + +// SetLensNotes sets the LensNotes field's value. +func (s *UpdateReviewTemplateLensReviewInput) SetLensNotes(v string) *UpdateReviewTemplateLensReviewInput { + s.LensNotes = &v + return s +} + +// SetPillarNotes sets the PillarNotes field's value. +func (s *UpdateReviewTemplateLensReviewInput) SetPillarNotes(v map[string]*string) *UpdateReviewTemplateLensReviewInput { + s.PillarNotes = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateLensReviewInput) SetTemplateArn(v string) *UpdateReviewTemplateLensReviewInput { + s.TemplateArn = &v + return s +} + +type UpdateReviewTemplateLensReviewOutput struct { + _ struct{} `type:"structure"` + + // A lens review of a question. + LensReview *ReviewTemplateLensReview `type:"structure"` + + // The review template ARN. + TemplateArn *string `min:"50" 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 UpdateReviewTemplateLensReviewOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReviewTemplateLensReviewOutput) GoString() string { + return s.String() +} + +// SetLensReview sets the LensReview field's value. +func (s *UpdateReviewTemplateLensReviewOutput) SetLensReview(v *ReviewTemplateLensReview) *UpdateReviewTemplateLensReviewOutput { + s.LensReview = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateLensReviewOutput) SetTemplateArn(v string) *UpdateReviewTemplateLensReviewOutput { + s.TemplateArn = &v + return s +} + +type UpdateReviewTemplateOutput struct { + _ struct{} `type:"structure"` + + // A review template. + ReviewTemplate *ReviewTemplate `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 UpdateReviewTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateReviewTemplateOutput) GoString() string { + return s.String() +} + +// SetReviewTemplate sets the ReviewTemplate field's value. +func (s *UpdateReviewTemplateOutput) SetReviewTemplate(v *ReviewTemplate) *UpdateReviewTemplateOutput { + s.ReviewTemplate = v + return s +} + // Input for Update Share Invitation type UpdateShareInvitationInput struct { _ struct{} `type:"structure"` @@ -16807,6 +20922,9 @@ NonAwsRegions []*string `type:"list"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The priorities of the pillars, which are used to order items in the improvement @@ -17397,6 +21515,126 @@ return s.String() } +type UpgradeReviewTemplateLensReviewInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The ARN of the review template. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" 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 UpgradeReviewTemplateLensReviewInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpgradeReviewTemplateLensReviewInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpgradeReviewTemplateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpgradeReviewTemplateLensReviewInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpgradeReviewTemplateLensReviewInput) SetClientRequestToken(v string) *UpgradeReviewTemplateLensReviewInput { + s.ClientRequestToken = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *UpgradeReviewTemplateLensReviewInput) SetLensAlias(v string) *UpgradeReviewTemplateLensReviewInput { + s.LensAlias = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpgradeReviewTemplateLensReviewInput) SetTemplateArn(v string) *UpgradeReviewTemplateLensReviewInput { + s.TemplateArn = &v + return s +} + +type UpgradeReviewTemplateLensReviewOutput 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 UpgradeReviewTemplateLensReviewOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpgradeReviewTemplateLensReviewOutput) GoString() string { + return s.String() +} + // The user input is not valid. type ValidationException struct { _ struct{} `type:"structure"` @@ -17646,12 +21884,18 @@ // The list of lenses associated with the workload. Each lens is identified // by its LensSummary$LensAlias. + // + // If a review template that specifies lenses is applied to the workload, those + // lenses are applied to the workload in addition to these lenses. Lenses []*string `type:"list"` // The list of non-Amazon Web Services Regions associated with the workload. NonAwsRegions []*string `type:"list"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // An Amazon Web Services account ID. @@ -17977,8 +22221,8 @@ // An Amazon Web Services account ID. SharedBy *string `min:"12" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` // The status of the share request. @@ -18065,8 +22309,8 @@ // The ID associated with the share. ShareId *string `type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` // The status of the share request. @@ -18133,6 +22377,9 @@ // The list of lenses associated with the workload. Each lens is identified // by its LensSummary$LensAlias. + // + // If a review template that specifies lenses is applied to the workload, those + // lenses are applied to the workload in addition to these lenses. Lenses []*string `type:"list"` // An Amazon Web Services account ID. @@ -18632,6 +22879,22 @@ } const ( + // QuestionUnanswered is a Question enum value + QuestionUnanswered = "UNANSWERED" + + // QuestionAnswered is a Question enum value + QuestionAnswered = "ANSWERED" +) + +// Question_Values returns all elements of the Question enum +func Question_Values() []string { + return []string{ + QuestionUnanswered, + QuestionAnswered, + } +} + +const ( // QuestionPriorityPrioritized is a QuestionPriority enum value QuestionPriorityPrioritized = "PRIORITIZED" @@ -18679,6 +22942,38 @@ } } +const ( + // ReviewTemplateAnswerStatusUnanswered is a ReviewTemplateAnswerStatus enum value + ReviewTemplateAnswerStatusUnanswered = "UNANSWERED" + + // ReviewTemplateAnswerStatusAnswered is a ReviewTemplateAnswerStatus enum value + ReviewTemplateAnswerStatusAnswered = "ANSWERED" +) + +// ReviewTemplateAnswerStatus_Values returns all elements of the ReviewTemplateAnswerStatus enum +func ReviewTemplateAnswerStatus_Values() []string { + return []string{ + ReviewTemplateAnswerStatusUnanswered, + ReviewTemplateAnswerStatusAnswered, + } +} + +const ( + // ReviewTemplateUpdateStatusCurrent is a ReviewTemplateUpdateStatus enum value + ReviewTemplateUpdateStatusCurrent = "CURRENT" + + // ReviewTemplateUpdateStatusLensNotCurrent is a ReviewTemplateUpdateStatus enum value + ReviewTemplateUpdateStatusLensNotCurrent = "LENS_NOT_CURRENT" +) + +// ReviewTemplateUpdateStatus_Values returns all elements of the ReviewTemplateUpdateStatus enum +func ReviewTemplateUpdateStatus_Values() []string { + return []string{ + ReviewTemplateUpdateStatusCurrent, + ReviewTemplateUpdateStatusLensNotCurrent, + } +} + // The risk for a given workload, lens review, pillar, or question. const ( // RiskUnanswered is a Risk enum value @@ -18734,6 +23029,9 @@ // ShareResourceTypeProfile is a ShareResourceType enum value ShareResourceTypeProfile = "PROFILE" + + // ShareResourceTypeTemplate is a ShareResourceType enum value + ShareResourceTypeTemplate = "TEMPLATE" ) // ShareResourceType_Values returns all elements of the ShareResourceType enum @@ -18742,6 +23040,7 @@ ShareResourceTypeWorkload, ShareResourceTypeLens, ShareResourceTypeProfile, + ShareResourceTypeTemplate, } } diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/wellarchitected/wellarchitectediface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/wellarchitected/wellarchitectediface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/wellarchitected/wellarchitectediface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/wellarchitected/wellarchitectediface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -88,6 +88,14 @@ CreateProfileShareWithContext(aws.Context, *wellarchitected.CreateProfileShareInput, ...request.Option) (*wellarchitected.CreateProfileShareOutput, error) CreateProfileShareRequest(*wellarchitected.CreateProfileShareInput) (*request.Request, *wellarchitected.CreateProfileShareOutput) + CreateReviewTemplate(*wellarchitected.CreateReviewTemplateInput) (*wellarchitected.CreateReviewTemplateOutput, error) + CreateReviewTemplateWithContext(aws.Context, *wellarchitected.CreateReviewTemplateInput, ...request.Option) (*wellarchitected.CreateReviewTemplateOutput, error) + CreateReviewTemplateRequest(*wellarchitected.CreateReviewTemplateInput) (*request.Request, *wellarchitected.CreateReviewTemplateOutput) + + CreateTemplateShare(*wellarchitected.CreateTemplateShareInput) (*wellarchitected.CreateTemplateShareOutput, error) + CreateTemplateShareWithContext(aws.Context, *wellarchitected.CreateTemplateShareInput, ...request.Option) (*wellarchitected.CreateTemplateShareOutput, error) + CreateTemplateShareRequest(*wellarchitected.CreateTemplateShareInput) (*request.Request, *wellarchitected.CreateTemplateShareOutput) + CreateWorkload(*wellarchitected.CreateWorkloadInput) (*wellarchitected.CreateWorkloadOutput, error) CreateWorkloadWithContext(aws.Context, *wellarchitected.CreateWorkloadInput, ...request.Option) (*wellarchitected.CreateWorkloadOutput, error) CreateWorkloadRequest(*wellarchitected.CreateWorkloadInput) (*request.Request, *wellarchitected.CreateWorkloadOutput) @@ -112,6 +120,14 @@ DeleteProfileShareWithContext(aws.Context, *wellarchitected.DeleteProfileShareInput, ...request.Option) (*wellarchitected.DeleteProfileShareOutput, error) DeleteProfileShareRequest(*wellarchitected.DeleteProfileShareInput) (*request.Request, *wellarchitected.DeleteProfileShareOutput) + DeleteReviewTemplate(*wellarchitected.DeleteReviewTemplateInput) (*wellarchitected.DeleteReviewTemplateOutput, error) + DeleteReviewTemplateWithContext(aws.Context, *wellarchitected.DeleteReviewTemplateInput, ...request.Option) (*wellarchitected.DeleteReviewTemplateOutput, error) + DeleteReviewTemplateRequest(*wellarchitected.DeleteReviewTemplateInput) (*request.Request, *wellarchitected.DeleteReviewTemplateOutput) + + DeleteTemplateShare(*wellarchitected.DeleteTemplateShareInput) (*wellarchitected.DeleteTemplateShareOutput, error) + DeleteTemplateShareWithContext(aws.Context, *wellarchitected.DeleteTemplateShareInput, ...request.Option) (*wellarchitected.DeleteTemplateShareOutput, error) + DeleteTemplateShareRequest(*wellarchitected.DeleteTemplateShareInput) (*request.Request, *wellarchitected.DeleteTemplateShareOutput) + DeleteWorkload(*wellarchitected.DeleteWorkloadInput) (*wellarchitected.DeleteWorkloadOutput, error) DeleteWorkloadWithContext(aws.Context, *wellarchitected.DeleteWorkloadInput, ...request.Option) (*wellarchitected.DeleteWorkloadOutput, error) DeleteWorkloadRequest(*wellarchitected.DeleteWorkloadInput) (*request.Request, *wellarchitected.DeleteWorkloadOutput) @@ -171,6 +187,18 @@ GetProfileTemplateWithContext(aws.Context, *wellarchitected.GetProfileTemplateInput, ...request.Option) (*wellarchitected.GetProfileTemplateOutput, error) GetProfileTemplateRequest(*wellarchitected.GetProfileTemplateInput) (*request.Request, *wellarchitected.GetProfileTemplateOutput) + GetReviewTemplate(*wellarchitected.GetReviewTemplateInput) (*wellarchitected.GetReviewTemplateOutput, error) + GetReviewTemplateWithContext(aws.Context, *wellarchitected.GetReviewTemplateInput, ...request.Option) (*wellarchitected.GetReviewTemplateOutput, error) + GetReviewTemplateRequest(*wellarchitected.GetReviewTemplateInput) (*request.Request, *wellarchitected.GetReviewTemplateOutput) + + GetReviewTemplateAnswer(*wellarchitected.GetReviewTemplateAnswerInput) (*wellarchitected.GetReviewTemplateAnswerOutput, error) + GetReviewTemplateAnswerWithContext(aws.Context, *wellarchitected.GetReviewTemplateAnswerInput, ...request.Option) (*wellarchitected.GetReviewTemplateAnswerOutput, error) + GetReviewTemplateAnswerRequest(*wellarchitected.GetReviewTemplateAnswerInput) (*request.Request, *wellarchitected.GetReviewTemplateAnswerOutput) + + GetReviewTemplateLensReview(*wellarchitected.GetReviewTemplateLensReviewInput) (*wellarchitected.GetReviewTemplateLensReviewOutput, error) + GetReviewTemplateLensReviewWithContext(aws.Context, *wellarchitected.GetReviewTemplateLensReviewInput, ...request.Option) (*wellarchitected.GetReviewTemplateLensReviewOutput, error) + GetReviewTemplateLensReviewRequest(*wellarchitected.GetReviewTemplateLensReviewInput) (*request.Request, *wellarchitected.GetReviewTemplateLensReviewOutput) + GetWorkload(*wellarchitected.GetWorkloadInput) (*wellarchitected.GetWorkloadOutput, error) GetWorkloadWithContext(aws.Context, *wellarchitected.GetWorkloadInput, ...request.Option) (*wellarchitected.GetWorkloadOutput, error) GetWorkloadRequest(*wellarchitected.GetWorkloadInput) (*request.Request, *wellarchitected.GetWorkloadOutput) @@ -263,6 +291,20 @@ ListProfilesPages(*wellarchitected.ListProfilesInput, func(*wellarchitected.ListProfilesOutput, bool) bool) error ListProfilesPagesWithContext(aws.Context, *wellarchitected.ListProfilesInput, func(*wellarchitected.ListProfilesOutput, bool) bool, ...request.Option) error + ListReviewTemplateAnswers(*wellarchitected.ListReviewTemplateAnswersInput) (*wellarchitected.ListReviewTemplateAnswersOutput, error) + ListReviewTemplateAnswersWithContext(aws.Context, *wellarchitected.ListReviewTemplateAnswersInput, ...request.Option) (*wellarchitected.ListReviewTemplateAnswersOutput, error) + ListReviewTemplateAnswersRequest(*wellarchitected.ListReviewTemplateAnswersInput) (*request.Request, *wellarchitected.ListReviewTemplateAnswersOutput) + + ListReviewTemplateAnswersPages(*wellarchitected.ListReviewTemplateAnswersInput, func(*wellarchitected.ListReviewTemplateAnswersOutput, bool) bool) error + ListReviewTemplateAnswersPagesWithContext(aws.Context, *wellarchitected.ListReviewTemplateAnswersInput, func(*wellarchitected.ListReviewTemplateAnswersOutput, bool) bool, ...request.Option) error + + ListReviewTemplates(*wellarchitected.ListReviewTemplatesInput) (*wellarchitected.ListReviewTemplatesOutput, error) + ListReviewTemplatesWithContext(aws.Context, *wellarchitected.ListReviewTemplatesInput, ...request.Option) (*wellarchitected.ListReviewTemplatesOutput, error) + ListReviewTemplatesRequest(*wellarchitected.ListReviewTemplatesInput) (*request.Request, *wellarchitected.ListReviewTemplatesOutput) + + ListReviewTemplatesPages(*wellarchitected.ListReviewTemplatesInput, func(*wellarchitected.ListReviewTemplatesOutput, bool) bool) error + ListReviewTemplatesPagesWithContext(aws.Context, *wellarchitected.ListReviewTemplatesInput, func(*wellarchitected.ListReviewTemplatesOutput, bool) bool, ...request.Option) error + ListShareInvitations(*wellarchitected.ListShareInvitationsInput) (*wellarchitected.ListShareInvitationsOutput, error) ListShareInvitationsWithContext(aws.Context, *wellarchitected.ListShareInvitationsInput, ...request.Option) (*wellarchitected.ListShareInvitationsOutput, error) ListShareInvitationsRequest(*wellarchitected.ListShareInvitationsInput) (*request.Request, *wellarchitected.ListShareInvitationsOutput) @@ -274,6 +316,13 @@ ListTagsForResourceWithContext(aws.Context, *wellarchitected.ListTagsForResourceInput, ...request.Option) (*wellarchitected.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*wellarchitected.ListTagsForResourceInput) (*request.Request, *wellarchitected.ListTagsForResourceOutput) + ListTemplateShares(*wellarchitected.ListTemplateSharesInput) (*wellarchitected.ListTemplateSharesOutput, error) + ListTemplateSharesWithContext(aws.Context, *wellarchitected.ListTemplateSharesInput, ...request.Option) (*wellarchitected.ListTemplateSharesOutput, error) + ListTemplateSharesRequest(*wellarchitected.ListTemplateSharesInput) (*request.Request, *wellarchitected.ListTemplateSharesOutput) + + ListTemplateSharesPages(*wellarchitected.ListTemplateSharesInput, func(*wellarchitected.ListTemplateSharesOutput, bool) bool) error + ListTemplateSharesPagesWithContext(aws.Context, *wellarchitected.ListTemplateSharesInput, func(*wellarchitected.ListTemplateSharesOutput, bool) bool, ...request.Option) error + ListWorkloadShares(*wellarchitected.ListWorkloadSharesInput) (*wellarchitected.ListWorkloadSharesOutput, error) ListWorkloadSharesWithContext(aws.Context, *wellarchitected.ListWorkloadSharesInput, ...request.Option) (*wellarchitected.ListWorkloadSharesOutput, error) ListWorkloadSharesRequest(*wellarchitected.ListWorkloadSharesInput) (*request.Request, *wellarchitected.ListWorkloadSharesOutput) @@ -312,6 +361,18 @@ UpdateProfileWithContext(aws.Context, *wellarchitected.UpdateProfileInput, ...request.Option) (*wellarchitected.UpdateProfileOutput, error) UpdateProfileRequest(*wellarchitected.UpdateProfileInput) (*request.Request, *wellarchitected.UpdateProfileOutput) + UpdateReviewTemplate(*wellarchitected.UpdateReviewTemplateInput) (*wellarchitected.UpdateReviewTemplateOutput, error) + UpdateReviewTemplateWithContext(aws.Context, *wellarchitected.UpdateReviewTemplateInput, ...request.Option) (*wellarchitected.UpdateReviewTemplateOutput, error) + UpdateReviewTemplateRequest(*wellarchitected.UpdateReviewTemplateInput) (*request.Request, *wellarchitected.UpdateReviewTemplateOutput) + + UpdateReviewTemplateAnswer(*wellarchitected.UpdateReviewTemplateAnswerInput) (*wellarchitected.UpdateReviewTemplateAnswerOutput, error) + UpdateReviewTemplateAnswerWithContext(aws.Context, *wellarchitected.UpdateReviewTemplateAnswerInput, ...request.Option) (*wellarchitected.UpdateReviewTemplateAnswerOutput, error) + UpdateReviewTemplateAnswerRequest(*wellarchitected.UpdateReviewTemplateAnswerInput) (*request.Request, *wellarchitected.UpdateReviewTemplateAnswerOutput) + + UpdateReviewTemplateLensReview(*wellarchitected.UpdateReviewTemplateLensReviewInput) (*wellarchitected.UpdateReviewTemplateLensReviewOutput, error) + UpdateReviewTemplateLensReviewWithContext(aws.Context, *wellarchitected.UpdateReviewTemplateLensReviewInput, ...request.Option) (*wellarchitected.UpdateReviewTemplateLensReviewOutput, error) + UpdateReviewTemplateLensReviewRequest(*wellarchitected.UpdateReviewTemplateLensReviewInput) (*request.Request, *wellarchitected.UpdateReviewTemplateLensReviewOutput) + UpdateShareInvitation(*wellarchitected.UpdateShareInvitationInput) (*wellarchitected.UpdateShareInvitationOutput, error) UpdateShareInvitationWithContext(aws.Context, *wellarchitected.UpdateShareInvitationInput, ...request.Option) (*wellarchitected.UpdateShareInvitationOutput, error) UpdateShareInvitationRequest(*wellarchitected.UpdateShareInvitationInput) (*request.Request, *wellarchitected.UpdateShareInvitationOutput) @@ -331,6 +392,10 @@ UpgradeProfileVersion(*wellarchitected.UpgradeProfileVersionInput) (*wellarchitected.UpgradeProfileVersionOutput, error) UpgradeProfileVersionWithContext(aws.Context, *wellarchitected.UpgradeProfileVersionInput, ...request.Option) (*wellarchitected.UpgradeProfileVersionOutput, error) UpgradeProfileVersionRequest(*wellarchitected.UpgradeProfileVersionInput) (*request.Request, *wellarchitected.UpgradeProfileVersionOutput) + + UpgradeReviewTemplateLensReview(*wellarchitected.UpgradeReviewTemplateLensReviewInput) (*wellarchitected.UpgradeReviewTemplateLensReviewOutput, error) + UpgradeReviewTemplateLensReviewWithContext(aws.Context, *wellarchitected.UpgradeReviewTemplateLensReviewInput, ...request.Option) (*wellarchitected.UpgradeReviewTemplateLensReviewOutput, error) + UpgradeReviewTemplateLensReviewRequest(*wellarchitected.UpgradeReviewTemplateLensReviewInput) (*request.Request, *wellarchitected.UpgradeReviewTemplateLensReviewOutput) } var _ WellArchitectedAPI = (*wellarchitected.WellArchitected)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspaces/api.go golang-github-aws-aws-sdk-go-1.48.14/service/workspaces/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspaces/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspaces/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -207,6 +207,112 @@ return out, req.Send() } +const opAssociateWorkspaceApplication = "AssociateWorkspaceApplication" + +// AssociateWorkspaceApplicationRequest generates a "aws/request.Request" representing the +// client's request for the AssociateWorkspaceApplication 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 AssociateWorkspaceApplication for more information on using the AssociateWorkspaceApplication +// 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 AssociateWorkspaceApplicationRequest method. +// req, resp := client.AssociateWorkspaceApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateWorkspaceApplication +func (c *WorkSpaces) AssociateWorkspaceApplicationRequest(input *AssociateWorkspaceApplicationInput) (req *request.Request, output *AssociateWorkspaceApplicationOutput) { + op := &request.Operation{ + Name: opAssociateWorkspaceApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AssociateWorkspaceApplicationInput{} + } + + output = &AssociateWorkspaceApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// AssociateWorkspaceApplication API operation for Amazon WorkSpaces. +// +// Associates the specified application to the specified WorkSpace. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation AssociateWorkspaceApplication for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceAlreadyExistsException +// The specified resource already exists. +// +// - ResourceInUseException +// The specified resource is currently in use. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// - ComputeNotCompatibleException +// The compute type of the WorkSpace is not compatible with the application. +// +// - OperatingSystemNotCompatibleException +// The operating system of the WorkSpace is not compatible with the application. +// +// - ApplicationNotSupportedException +// The specified application is not supported. +// +// - IncompatibleApplicationsException +// The specified application is not compatible with the resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateWorkspaceApplication +func (c *WorkSpaces) AssociateWorkspaceApplication(input *AssociateWorkspaceApplicationInput) (*AssociateWorkspaceApplicationOutput, error) { + req, out := c.AssociateWorkspaceApplicationRequest(input) + return out, req.Send() +} + +// AssociateWorkspaceApplicationWithContext is the same as AssociateWorkspaceApplication with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateWorkspaceApplication 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 *WorkSpaces) AssociateWorkspaceApplicationWithContext(ctx aws.Context, input *AssociateWorkspaceApplicationInput, opts ...request.Option) (*AssociateWorkspaceApplicationOutput, error) { + req, out := c.AssociateWorkspaceApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAuthorizeIpRules = "AuthorizeIpRules" // AuthorizeIpRulesRequest generates a "aws/request.Request" representing the @@ -1234,9 +1340,12 @@ // // This operation is asynchronous and returns before the WorkSpaces are created. // -// The MANUAL running mode value is only supported by Amazon WorkSpaces Core. -// Contact your account team to be allow-listed to use this value. For more -// information, see Amazon WorkSpaces Core (http://aws.amazon.com/workspaces/core/). +// - The MANUAL running mode value is only supported by Amazon WorkSpaces +// Core. Contact your account team to be allow-listed to use this value. +// For more information, see Amazon WorkSpaces Core (http://aws.amazon.com/workspaces/core/). +// +// - You don't need to specify the PCOIP protocol for Linux bundles because +// WSP is the default protocol for those bundles. // // 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 @@ -1912,6 +2021,100 @@ return out, req.Send() } +const opDeployWorkspaceApplications = "DeployWorkspaceApplications" + +// DeployWorkspaceApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the DeployWorkspaceApplications 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 DeployWorkspaceApplications for more information on using the DeployWorkspaceApplications +// 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 DeployWorkspaceApplicationsRequest method. +// req, resp := client.DeployWorkspaceApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeployWorkspaceApplications +func (c *WorkSpaces) DeployWorkspaceApplicationsRequest(input *DeployWorkspaceApplicationsInput) (req *request.Request, output *DeployWorkspaceApplicationsOutput) { + op := &request.Operation{ + Name: opDeployWorkspaceApplications, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeployWorkspaceApplicationsInput{} + } + + output = &DeployWorkspaceApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeployWorkspaceApplications API operation for Amazon WorkSpaces. +// +// # Deploys associated applications to the specified WorkSpace +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DeployWorkspaceApplications for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceInUseException +// The specified resource is currently in use. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// - IncompatibleApplicationsException +// The specified application is not compatible with the resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeployWorkspaceApplications +func (c *WorkSpaces) DeployWorkspaceApplications(input *DeployWorkspaceApplicationsInput) (*DeployWorkspaceApplicationsOutput, error) { + req, out := c.DeployWorkspaceApplicationsRequest(input) + return out, req.Send() +} + +// DeployWorkspaceApplicationsWithContext is the same as DeployWorkspaceApplications with the addition of +// the ability to pass a context and additional request options. +// +// See DeployWorkspaceApplications 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 *WorkSpaces) DeployWorkspaceApplicationsWithContext(ctx aws.Context, input *DeployWorkspaceApplicationsInput, opts ...request.Option) (*DeployWorkspaceApplicationsOutput, error) { + req, out := c.DeployWorkspaceApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeregisterWorkspaceDirectory = "DeregisterWorkspaceDirectory" // DeregisterWorkspaceDirectoryRequest generates a "aws/request.Request" representing the @@ -2175,6 +2378,386 @@ return out, req.Send() } +const opDescribeApplicationAssociations = "DescribeApplicationAssociations" + +// DescribeApplicationAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeApplicationAssociations 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 DescribeApplicationAssociations for more information on using the DescribeApplicationAssociations +// 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 DescribeApplicationAssociationsRequest method. +// req, resp := client.DescribeApplicationAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeApplicationAssociations +func (c *WorkSpaces) DescribeApplicationAssociationsRequest(input *DescribeApplicationAssociationsInput) (req *request.Request, output *DescribeApplicationAssociationsOutput) { + op := &request.Operation{ + Name: opDescribeApplicationAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeApplicationAssociationsInput{} + } + + output = &DescribeApplicationAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeApplicationAssociations API operation for Amazon WorkSpaces. +// +// Describes the associations between the application and the specified associated +// resources. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DescribeApplicationAssociations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeApplicationAssociations +func (c *WorkSpaces) DescribeApplicationAssociations(input *DescribeApplicationAssociationsInput) (*DescribeApplicationAssociationsOutput, error) { + req, out := c.DescribeApplicationAssociationsRequest(input) + return out, req.Send() +} + +// DescribeApplicationAssociationsWithContext is the same as DescribeApplicationAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeApplicationAssociations 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 *WorkSpaces) DescribeApplicationAssociationsWithContext(ctx aws.Context, input *DescribeApplicationAssociationsInput, opts ...request.Option) (*DescribeApplicationAssociationsOutput, error) { + req, out := c.DescribeApplicationAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeApplicationAssociationsPages iterates over the pages of a DescribeApplicationAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeApplicationAssociations 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 DescribeApplicationAssociations operation. +// pageNum := 0 +// err := client.DescribeApplicationAssociationsPages(params, +// func(page *workspaces.DescribeApplicationAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WorkSpaces) DescribeApplicationAssociationsPages(input *DescribeApplicationAssociationsInput, fn func(*DescribeApplicationAssociationsOutput, bool) bool) error { + return c.DescribeApplicationAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeApplicationAssociationsPagesWithContext same as DescribeApplicationAssociationsPages 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 *WorkSpaces) DescribeApplicationAssociationsPagesWithContext(ctx aws.Context, input *DescribeApplicationAssociationsInput, fn func(*DescribeApplicationAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeApplicationAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeApplicationAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeApplicationAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeApplications = "DescribeApplications" + +// DescribeApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeApplications 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 DescribeApplications for more information on using the DescribeApplications +// 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 DescribeApplicationsRequest method. +// req, resp := client.DescribeApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeApplications +func (c *WorkSpaces) DescribeApplicationsRequest(input *DescribeApplicationsInput) (req *request.Request, output *DescribeApplicationsOutput) { + op := &request.Operation{ + Name: opDescribeApplications, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeApplicationsInput{} + } + + output = &DescribeApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeApplications API operation for Amazon WorkSpaces. +// +// Describes the specified applications by filtering based on their compute +// types, license availability, operating systems, and owners. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DescribeApplications for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeApplications +func (c *WorkSpaces) DescribeApplications(input *DescribeApplicationsInput) (*DescribeApplicationsOutput, error) { + req, out := c.DescribeApplicationsRequest(input) + return out, req.Send() +} + +// DescribeApplicationsWithContext is the same as DescribeApplications with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeApplications 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 *WorkSpaces) DescribeApplicationsWithContext(ctx aws.Context, input *DescribeApplicationsInput, opts ...request.Option) (*DescribeApplicationsOutput, error) { + req, out := c.DescribeApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeApplicationsPages iterates over the pages of a DescribeApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeApplications 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 DescribeApplications operation. +// pageNum := 0 +// err := client.DescribeApplicationsPages(params, +// func(page *workspaces.DescribeApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WorkSpaces) DescribeApplicationsPages(input *DescribeApplicationsInput, fn func(*DescribeApplicationsOutput, bool) bool) error { + return c.DescribeApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeApplicationsPagesWithContext same as DescribeApplicationsPages 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 *WorkSpaces) DescribeApplicationsPagesWithContext(ctx aws.Context, input *DescribeApplicationsInput, fn func(*DescribeApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeBundleAssociations = "DescribeBundleAssociations" + +// DescribeBundleAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBundleAssociations 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 DescribeBundleAssociations for more information on using the DescribeBundleAssociations +// 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 DescribeBundleAssociationsRequest method. +// req, resp := client.DescribeBundleAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeBundleAssociations +func (c *WorkSpaces) DescribeBundleAssociationsRequest(input *DescribeBundleAssociationsInput) (req *request.Request, output *DescribeBundleAssociationsOutput) { + op := &request.Operation{ + Name: opDescribeBundleAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeBundleAssociationsInput{} + } + + output = &DescribeBundleAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeBundleAssociations API operation for Amazon WorkSpaces. +// +// Describes the associations between the applications and the specified bundle. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DescribeBundleAssociations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeBundleAssociations +func (c *WorkSpaces) DescribeBundleAssociations(input *DescribeBundleAssociationsInput) (*DescribeBundleAssociationsOutput, error) { + req, out := c.DescribeBundleAssociationsRequest(input) + return out, req.Send() +} + +// DescribeBundleAssociationsWithContext is the same as DescribeBundleAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeBundleAssociations 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 *WorkSpaces) DescribeBundleAssociationsWithContext(ctx aws.Context, input *DescribeBundleAssociationsInput, opts ...request.Option) (*DescribeBundleAssociationsOutput, error) { + req, out := c.DescribeBundleAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeClientBranding = "DescribeClientBranding" // DescribeClientBrandingRequest generates a "aws/request.Request" representing the @@ -2614,6 +3197,94 @@ return out, req.Send() } +const opDescribeImageAssociations = "DescribeImageAssociations" + +// DescribeImageAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeImageAssociations 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 DescribeImageAssociations for more information on using the DescribeImageAssociations +// 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 DescribeImageAssociationsRequest method. +// req, resp := client.DescribeImageAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeImageAssociations +func (c *WorkSpaces) DescribeImageAssociationsRequest(input *DescribeImageAssociationsInput) (req *request.Request, output *DescribeImageAssociationsOutput) { + op := &request.Operation{ + Name: opDescribeImageAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeImageAssociationsInput{} + } + + output = &DescribeImageAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeImageAssociations API operation for Amazon WorkSpaces. +// +// Describes the associations between the applications and the specified image. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DescribeImageAssociations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeImageAssociations +func (c *WorkSpaces) DescribeImageAssociations(input *DescribeImageAssociationsInput) (*DescribeImageAssociationsOutput, error) { + req, out := c.DescribeImageAssociationsRequest(input) + return out, req.Send() +} + +// DescribeImageAssociationsWithContext is the same as DescribeImageAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeImageAssociations 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 *WorkSpaces) DescribeImageAssociationsWithContext(ctx aws.Context, input *DescribeImageAssociationsInput, opts ...request.Option) (*DescribeImageAssociationsOutput, error) { + req, out := c.DescribeImageAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeIpGroups = "DescribeIpGroups" // DescribeIpGroupsRequest generates a "aws/request.Request" representing the @@ -2774,6 +3445,94 @@ return out, req.Send() } +const opDescribeWorkspaceAssociations = "DescribeWorkspaceAssociations" + +// DescribeWorkspaceAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeWorkspaceAssociations 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 DescribeWorkspaceAssociations for more information on using the DescribeWorkspaceAssociations +// 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 DescribeWorkspaceAssociationsRequest method. +// req, resp := client.DescribeWorkspaceAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceAssociations +func (c *WorkSpaces) DescribeWorkspaceAssociationsRequest(input *DescribeWorkspaceAssociationsInput) (req *request.Request, output *DescribeWorkspaceAssociationsOutput) { + op := &request.Operation{ + Name: opDescribeWorkspaceAssociations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeWorkspaceAssociationsInput{} + } + + output = &DescribeWorkspaceAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeWorkspaceAssociations API operation for Amazon WorkSpaces. +// +// Describes the associations betweens applications and the specified WorkSpace. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DescribeWorkspaceAssociations for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceAssociations +func (c *WorkSpaces) DescribeWorkspaceAssociations(input *DescribeWorkspaceAssociationsInput) (*DescribeWorkspaceAssociationsOutput, error) { + req, out := c.DescribeWorkspaceAssociationsRequest(input) + return out, req.Send() +} + +// DescribeWorkspaceAssociationsWithContext is the same as DescribeWorkspaceAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeWorkspaceAssociations 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 *WorkSpaces) DescribeWorkspaceAssociationsWithContext(ctx aws.Context, input *DescribeWorkspaceAssociationsInput, opts ...request.Option) (*DescribeWorkspaceAssociationsOutput, error) { + req, out := c.DescribeWorkspaceAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeWorkspaceBundles = "DescribeWorkspaceBundles" // DescribeWorkspaceBundlesRequest generates a "aws/request.Request" representing the @@ -3703,6 +4462,97 @@ return out, req.Send() } +const opDisassociateWorkspaceApplication = "DisassociateWorkspaceApplication" + +// DisassociateWorkspaceApplicationRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateWorkspaceApplication 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 DisassociateWorkspaceApplication for more information on using the DisassociateWorkspaceApplication +// 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 DisassociateWorkspaceApplicationRequest method. +// req, resp := client.DisassociateWorkspaceApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateWorkspaceApplication +func (c *WorkSpaces) DisassociateWorkspaceApplicationRequest(input *DisassociateWorkspaceApplicationInput) (req *request.Request, output *DisassociateWorkspaceApplicationOutput) { + op := &request.Operation{ + Name: opDisassociateWorkspaceApplication, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisassociateWorkspaceApplicationInput{} + } + + output = &DisassociateWorkspaceApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisassociateWorkspaceApplication API operation for Amazon WorkSpaces. +// +// Disassociates the specified application from a WorkSpace. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DisassociateWorkspaceApplication for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// The user is not authorized to access a resource. +// +// - InvalidParameterValuesException +// One or more parameter values are not valid. +// +// - OperationNotSupportedException +// This operation is not supported. +// +// - ResourceInUseException +// The specified resource is currently in use. +// +// - ResourceNotFoundException +// The resource could not be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateWorkspaceApplication +func (c *WorkSpaces) DisassociateWorkspaceApplication(input *DisassociateWorkspaceApplicationInput) (*DisassociateWorkspaceApplicationOutput, error) { + req, out := c.DisassociateWorkspaceApplicationRequest(input) + return out, req.Send() +} + +// DisassociateWorkspaceApplicationWithContext is the same as DisassociateWorkspaceApplication with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateWorkspaceApplication 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 *WorkSpaces) DisassociateWorkspaceApplicationWithContext(ctx aws.Context, input *DisassociateWorkspaceApplicationInput, opts ...request.Option) (*DisassociateWorkspaceApplicationOutput, error) { + req, out := c.DisassociateWorkspaceApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opImportClientBranding = "ImportClientBranding" // ImportClientBrandingRequest generates a "aws/request.Request" representing the @@ -6295,6 +7145,156 @@ return s } +// The specified application is not supported. +type ApplicationNotSupportedException 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 ApplicationNotSupportedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationNotSupportedException) GoString() string { + return s.String() +} + +func newErrorApplicationNotSupportedException(v protocol.ResponseMetadata) error { + return &ApplicationNotSupportedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ApplicationNotSupportedException) Code() string { + return "ApplicationNotSupportedException" +} + +// Message returns the exception's message. +func (s *ApplicationNotSupportedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ApplicationNotSupportedException) OrigErr() error { + return nil +} + +func (s *ApplicationNotSupportedException) 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 *ApplicationNotSupportedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ApplicationNotSupportedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes the association between an application and an application resource. +type ApplicationResourceAssociation struct { + _ struct{} `type:"structure"` + + // The identifier of the application. + ApplicationId *string `type:"string"` + + // The identifier of the associated resource. + AssociatedResourceId *string `min:"1" type:"string"` + + // The resource type of the associated resource. + AssociatedResourceType *string `type:"string" enum:"ApplicationAssociatedResourceType"` + + // The time the association was created. + Created *time.Time `type:"timestamp"` + + // The time the association status was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The status of the application resource association. + State *string `type:"string" enum:"AssociationState"` + + // The reason the association deployment failed. + StateReason *AssociationStateReason `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 ApplicationResourceAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationResourceAssociation) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *ApplicationResourceAssociation) SetApplicationId(v string) *ApplicationResourceAssociation { + s.ApplicationId = &v + return s +} + +// SetAssociatedResourceId sets the AssociatedResourceId field's value. +func (s *ApplicationResourceAssociation) SetAssociatedResourceId(v string) *ApplicationResourceAssociation { + s.AssociatedResourceId = &v + return s +} + +// SetAssociatedResourceType sets the AssociatedResourceType field's value. +func (s *ApplicationResourceAssociation) SetAssociatedResourceType(v string) *ApplicationResourceAssociation { + s.AssociatedResourceType = &v + return s +} + +// SetCreated sets the Created field's value. +func (s *ApplicationResourceAssociation) SetCreated(v time.Time) *ApplicationResourceAssociation { + s.Created = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *ApplicationResourceAssociation) SetLastUpdatedTime(v time.Time) *ApplicationResourceAssociation { + s.LastUpdatedTime = &v + return s +} + +// SetState sets the State field's value. +func (s *ApplicationResourceAssociation) SetState(v string) *ApplicationResourceAssociation { + s.State = &v + return s +} + +// SetStateReason sets the StateReason field's value. +func (s *ApplicationResourceAssociation) SetStateReason(v *AssociationStateReason) *ApplicationResourceAssociation { + s.StateReason = v + return s +} + type AssociateConnectionAliasInput struct { _ struct{} `type:"structure"` @@ -6479,6 +7479,140 @@ return s.String() } +type AssociateWorkspaceApplicationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application. + // + // ApplicationId is a required field + ApplicationId *string `type:"string" required:"true"` + + // The identifier of the WorkSpace. + // + // WorkspaceId is a required field + WorkspaceId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateWorkspaceApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateWorkspaceApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateWorkspaceApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateWorkspaceApplicationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *AssociateWorkspaceApplicationInput) SetApplicationId(v string) *AssociateWorkspaceApplicationInput { + s.ApplicationId = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *AssociateWorkspaceApplicationInput) SetWorkspaceId(v string) *AssociateWorkspaceApplicationInput { + s.WorkspaceId = &v + return s +} + +type AssociateWorkspaceApplicationOutput struct { + _ struct{} `type:"structure"` + + // Information about the association between the specified WorkSpace and the + // specified application. + Association *WorkspaceResourceAssociation `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 AssociateWorkspaceApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateWorkspaceApplicationOutput) GoString() string { + return s.String() +} + +// SetAssociation sets the Association field's value. +func (s *AssociateWorkspaceApplicationOutput) SetAssociation(v *WorkspaceResourceAssociation) *AssociateWorkspaceApplicationOutput { + s.Association = v + return s +} + +// Indicates the reason that the association deployment failed, including the +// error code and error message. +type AssociationStateReason struct { + _ struct{} `type:"structure"` + + // The error code of the association deployment failure. + ErrorCode *string `type:"string" enum:"AssociationErrorCode"` + + // The error message of the association deployment failure. + ErrorMessage *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 AssociationStateReason) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociationStateReason) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *AssociationStateReason) SetErrorCode(v string) *AssociationStateReason { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *AssociationStateReason) SetErrorMessage(v string) *AssociationStateReason { + s.ErrorMessage = &v + return s +} + type AuthorizeIpRulesInput struct { _ struct{} `type:"structure"` @@ -6561,6 +7695,92 @@ return s.String() } +// Describes the association between an application and a bundle resource. +type BundleResourceAssociation struct { + _ struct{} `type:"structure"` + + // The identifier of the associated resource. + AssociatedResourceId *string `min:"1" type:"string"` + + // The resource type of the associated resources. + AssociatedResourceType *string `type:"string" enum:"BundleAssociatedResourceType"` + + // The identifier of the bundle. + BundleId *string `type:"string"` + + // The time the association is created. + Created *time.Time `type:"timestamp"` + + // The time the association status was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The status of the bundle resource association. + State *string `type:"string" enum:"AssociationState"` + + // The reason the association deployment failed. + StateReason *AssociationStateReason `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 BundleResourceAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BundleResourceAssociation) GoString() string { + return s.String() +} + +// SetAssociatedResourceId sets the AssociatedResourceId field's value. +func (s *BundleResourceAssociation) SetAssociatedResourceId(v string) *BundleResourceAssociation { + s.AssociatedResourceId = &v + return s +} + +// SetAssociatedResourceType sets the AssociatedResourceType field's value. +func (s *BundleResourceAssociation) SetAssociatedResourceType(v string) *BundleResourceAssociation { + s.AssociatedResourceType = &v + return s +} + +// SetBundleId sets the BundleId field's value. +func (s *BundleResourceAssociation) SetBundleId(v string) *BundleResourceAssociation { + s.BundleId = &v + return s +} + +// SetCreated sets the Created field's value. +func (s *BundleResourceAssociation) SetCreated(v time.Time) *BundleResourceAssociation { + s.Created = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *BundleResourceAssociation) SetLastUpdatedTime(v time.Time) *BundleResourceAssociation { + s.LastUpdatedTime = &v + return s +} + +// SetState sets the State field's value. +func (s *BundleResourceAssociation) SetState(v string) *BundleResourceAssociation { + s.State = &v + return s +} + +// SetStateReason sets the StateReason field's value. +func (s *BundleResourceAssociation) SetStateReason(v *AssociationStateReason) *BundleResourceAssociation { + s.StateReason = v + return s +} + // Describes the properties of the certificate-based authentication you want // to use with your WorkSpaces. type CertificateBasedAuthProperties struct { @@ -6704,6 +7924,70 @@ return s } +// The compute type of the WorkSpace is not compatible with the application. +type ComputeNotCompatibleException 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 ComputeNotCompatibleException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ComputeNotCompatibleException) GoString() string { + return s.String() +} + +func newErrorComputeNotCompatibleException(v protocol.ResponseMetadata) error { + return &ComputeNotCompatibleException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ComputeNotCompatibleException) Code() string { + return "ComputeNotCompatibleException" +} + +// Message returns the exception's message. +func (s *ComputeNotCompatibleException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ComputeNotCompatibleException) OrigErr() error { + return nil +} + +func (s *ComputeNotCompatibleException) 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 *ComputeNotCompatibleException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ComputeNotCompatibleException) RequestID() string { + return s.RespMetadata.RequestID +} + // Describes the compute type of the bundle. type ComputeType struct { _ struct{} `type:"structure"` @@ -8295,6 +9579,49 @@ return s } +// Describes the data replication settings. +type DataReplicationSettings struct { + _ struct{} `type:"structure"` + + // Indicates whether data replication is enabled, and if enabled, the type of + // data replication. + DataReplication *string `type:"string" enum:"DataReplication"` + + // The date and time at which the last successful snapshot was taken of the + // primary WorkSpace used for replicating data. + RecoverySnapshotTime *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataReplicationSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataReplicationSettings) GoString() string { + return s.String() +} + +// SetDataReplication sets the DataReplication field's value. +func (s *DataReplicationSettings) SetDataReplication(v string) *DataReplicationSettings { + s.DataReplication = &v + return s +} + +// SetRecoverySnapshotTime sets the RecoverySnapshotTime field's value. +func (s *DataReplicationSettings) SetRecoverySnapshotTime(v time.Time) *DataReplicationSettings { + s.RecoverySnapshotTime = &v + return s +} + // Returns default client branding attributes that were imported. These attributes // display on the client login screen. // @@ -9114,6 +10441,94 @@ return s.String() } +type DeployWorkspaceApplicationsInput struct { + _ struct{} `type:"structure"` + + // Indicates whether the force flag is applied for the specified WorkSpace. + // When the force flag is enabled, it allows previously failed deployments to + // be retried. + Force *bool `type:"boolean"` + + // The identifier of the WorkSpace. + // + // WorkspaceId is a required field + WorkspaceId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeployWorkspaceApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeployWorkspaceApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeployWorkspaceApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeployWorkspaceApplicationsInput"} + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetForce sets the Force field's value. +func (s *DeployWorkspaceApplicationsInput) SetForce(v bool) *DeployWorkspaceApplicationsInput { + s.Force = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *DeployWorkspaceApplicationsInput) SetWorkspaceId(v string) *DeployWorkspaceApplicationsInput { + s.WorkspaceId = &v + return s +} + +type DeployWorkspaceApplicationsOutput struct { + _ struct{} `type:"structure"` + + // The list of deployed associations and information about them. + Deployment *WorkSpaceApplicationDeployment `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 DeployWorkspaceApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeployWorkspaceApplicationsOutput) GoString() string { + return s.String() +} + +// SetDeployment sets the Deployment field's value. +func (s *DeployWorkspaceApplicationsOutput) SetDeployment(v *WorkSpaceApplicationDeployment) *DeployWorkspaceApplicationsOutput { + s.Deployment = v + return s +} + type DeregisterWorkspaceDirectoryInput struct { _ struct{} `type:"structure"` @@ -9341,6 +10756,369 @@ return s } +type DescribeApplicationAssociationsInput struct { + _ struct{} `type:"structure"` + + // The identifier of the specified application. + // + // ApplicationId is a required field + ApplicationId *string `type:"string" required:"true"` + + // The resource type of the associated resources. + // + // AssociatedResourceTypes is a required field + AssociatedResourceTypes []*string `type:"list" required:"true" enum:"ApplicationAssociatedResourceType"` + + // The maximum number of associations to return. + MaxResults *int64 `min:"1" type:"integer"` + + // If you received a NextToken from a previous call that was paginated, provide + // this token to receive the next set of results. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeApplicationAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationAssociationsInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.AssociatedResourceTypes == nil { + invalidParams.Add(request.NewErrParamRequired("AssociatedResourceTypes")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DescribeApplicationAssociationsInput) SetApplicationId(v string) *DescribeApplicationAssociationsInput { + s.ApplicationId = &v + return s +} + +// SetAssociatedResourceTypes sets the AssociatedResourceTypes field's value. +func (s *DescribeApplicationAssociationsInput) SetAssociatedResourceTypes(v []*string) *DescribeApplicationAssociationsInput { + s.AssociatedResourceTypes = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeApplicationAssociationsInput) SetMaxResults(v int64) *DescribeApplicationAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeApplicationAssociationsInput) SetNextToken(v string) *DescribeApplicationAssociationsInput { + s.NextToken = &v + return s +} + +type DescribeApplicationAssociationsOutput struct { + _ struct{} `type:"structure"` + + // List of associations and information about them. + Associations []*ApplicationResourceAssociation `type:"list"` + + // If you received a NextToken from a previous call that was paginated, provide + // this token to receive the next set of results. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *DescribeApplicationAssociationsOutput) SetAssociations(v []*ApplicationResourceAssociation) *DescribeApplicationAssociationsOutput { + s.Associations = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeApplicationAssociationsOutput) SetNextToken(v string) *DescribeApplicationAssociationsOutput { + s.NextToken = &v + return s +} + +type DescribeApplicationsInput struct { + _ struct{} `type:"structure"` + + // The identifiers of one or more applications. + ApplicationIds []*string `min:"1" type:"list"` + + // The compute types supported by the applications. + ComputeTypeNames []*string `type:"list" enum:"Compute"` + + // The license availability for the applications. + LicenseType *string `type:"string" enum:"WorkSpaceApplicationLicenseType"` + + // The maximum number of applications to return. + MaxResults *int64 `min:"1" type:"integer"` + + // If you received a NextToken from a previous call that was paginated, provide + // this token to receive the next set of results. + NextToken *string `min:"1" type:"string"` + + // The operating systems supported by the applications. + OperatingSystemNames []*string `type:"list" enum:"OperatingSystemName"` + + // The owner of the applications. + Owner *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 DescribeApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationsInput"} + if s.ApplicationIds != nil && len(s.ApplicationIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationIds", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationIds sets the ApplicationIds field's value. +func (s *DescribeApplicationsInput) SetApplicationIds(v []*string) *DescribeApplicationsInput { + s.ApplicationIds = v + return s +} + +// SetComputeTypeNames sets the ComputeTypeNames field's value. +func (s *DescribeApplicationsInput) SetComputeTypeNames(v []*string) *DescribeApplicationsInput { + s.ComputeTypeNames = v + return s +} + +// SetLicenseType sets the LicenseType field's value. +func (s *DescribeApplicationsInput) SetLicenseType(v string) *DescribeApplicationsInput { + s.LicenseType = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeApplicationsInput) SetMaxResults(v int64) *DescribeApplicationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeApplicationsInput) SetNextToken(v string) *DescribeApplicationsInput { + s.NextToken = &v + return s +} + +// SetOperatingSystemNames sets the OperatingSystemNames field's value. +func (s *DescribeApplicationsInput) SetOperatingSystemNames(v []*string) *DescribeApplicationsInput { + s.OperatingSystemNames = v + return s +} + +// SetOwner sets the Owner field's value. +func (s *DescribeApplicationsInput) SetOwner(v string) *DescribeApplicationsInput { + s.Owner = &v + return s +} + +type DescribeApplicationsOutput struct { + _ struct{} `type:"structure"` + + // List of information about the specified applications. + Applications []*WorkSpaceApplication `type:"list"` + + // If you received a NextToken from a previous call that was paginated, provide + // this token to receive the next set of results. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeApplicationsOutput) GoString() string { + return s.String() +} + +// SetApplications sets the Applications field's value. +func (s *DescribeApplicationsOutput) SetApplications(v []*WorkSpaceApplication) *DescribeApplicationsOutput { + s.Applications = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeApplicationsOutput) SetNextToken(v string) *DescribeApplicationsOutput { + s.NextToken = &v + return s +} + +type DescribeBundleAssociationsInput struct { + _ struct{} `type:"structure"` + + // The resource types of the associated resource. + // + // AssociatedResourceTypes is a required field + AssociatedResourceTypes []*string `type:"list" required:"true" enum:"BundleAssociatedResourceType"` + + // The identifier of the bundle. + // + // BundleId is a required field + BundleId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBundleAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBundleAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeBundleAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBundleAssociationsInput"} + if s.AssociatedResourceTypes == nil { + invalidParams.Add(request.NewErrParamRequired("AssociatedResourceTypes")) + } + if s.BundleId == nil { + invalidParams.Add(request.NewErrParamRequired("BundleId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociatedResourceTypes sets the AssociatedResourceTypes field's value. +func (s *DescribeBundleAssociationsInput) SetAssociatedResourceTypes(v []*string) *DescribeBundleAssociationsInput { + s.AssociatedResourceTypes = v + return s +} + +// SetBundleId sets the BundleId field's value. +func (s *DescribeBundleAssociationsInput) SetBundleId(v string) *DescribeBundleAssociationsInput { + s.BundleId = &v + return s +} + +type DescribeBundleAssociationsOutput struct { + _ struct{} `type:"structure"` + + // List of information about the specified associations. + Associations []*BundleResourceAssociation `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 DescribeBundleAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeBundleAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *DescribeBundleAssociationsOutput) SetAssociations(v []*BundleResourceAssociation) *DescribeBundleAssociationsOutput { + s.Associations = v + return s +} + type DescribeClientBrandingInput struct { _ struct{} `type:"structure"` @@ -9908,6 +11686,97 @@ return s } +type DescribeImageAssociationsInput struct { + _ struct{} `type:"structure"` + + // The resource types of the associated resource. + // + // AssociatedResourceTypes is a required field + AssociatedResourceTypes []*string `type:"list" required:"true" enum:"ImageAssociatedResourceType"` + + // The identifier of the image. + // + // ImageId is a required field + ImageId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeImageAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeImageAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeImageAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeImageAssociationsInput"} + if s.AssociatedResourceTypes == nil { + invalidParams.Add(request.NewErrParamRequired("AssociatedResourceTypes")) + } + if s.ImageId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociatedResourceTypes sets the AssociatedResourceTypes field's value. +func (s *DescribeImageAssociationsInput) SetAssociatedResourceTypes(v []*string) *DescribeImageAssociationsInput { + s.AssociatedResourceTypes = v + return s +} + +// SetImageId sets the ImageId field's value. +func (s *DescribeImageAssociationsInput) SetImageId(v string) *DescribeImageAssociationsInput { + s.ImageId = &v + return s +} + +type DescribeImageAssociationsOutput struct { + _ struct{} `type:"structure"` + + // List of information about the specified associations. + Associations []*ImageResourceAssociation `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 DescribeImageAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeImageAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *DescribeImageAssociationsOutput) SetAssociations(v []*ImageResourceAssociation) *DescribeImageAssociationsOutput { + s.Associations = v + return s +} + type DescribeIpGroupsInput struct { _ struct{} `type:"structure"` @@ -10097,6 +11966,97 @@ return s } +type DescribeWorkspaceAssociationsInput struct { + _ struct{} `type:"structure"` + + // The resource types of the associated resources. + // + // AssociatedResourceTypes is a required field + AssociatedResourceTypes []*string `type:"list" required:"true" enum:"WorkSpaceAssociatedResourceType"` + + // The identifier of the WorkSpace. + // + // WorkspaceId is a required field + WorkspaceId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeWorkspaceAssociationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeWorkspaceAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeWorkspaceAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceAssociationsInput"} + if s.AssociatedResourceTypes == nil { + invalidParams.Add(request.NewErrParamRequired("AssociatedResourceTypes")) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociatedResourceTypes sets the AssociatedResourceTypes field's value. +func (s *DescribeWorkspaceAssociationsInput) SetAssociatedResourceTypes(v []*string) *DescribeWorkspaceAssociationsInput { + s.AssociatedResourceTypes = v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *DescribeWorkspaceAssociationsInput) SetWorkspaceId(v string) *DescribeWorkspaceAssociationsInput { + s.WorkspaceId = &v + return s +} + +type DescribeWorkspaceAssociationsOutput struct { + _ struct{} `type:"structure"` + + // List of information about the specified associations. + Associations []*WorkspaceResourceAssociation `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 DescribeWorkspaceAssociationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeWorkspaceAssociationsOutput) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *DescribeWorkspaceAssociationsOutput) SetAssociations(v []*WorkspaceResourceAssociation) *DescribeWorkspaceAssociationsOutput { + s.Associations = v + return s +} + type DescribeWorkspaceBundlesInput struct { _ struct{} `type:"structure"` @@ -11058,8 +13018,99 @@ return s.String() } -// Provides in-depth details about the error. These details include the possible -// causes of the errors and troubleshooting information. +type DisassociateWorkspaceApplicationInput struct { + _ struct{} `type:"structure"` + + // The identifier of the application. + // + // ApplicationId is a required field + ApplicationId *string `type:"string" required:"true"` + + // The identifier of the WorkSpace. + // + // WorkspaceId is a required field + WorkspaceId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateWorkspaceApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateWorkspaceApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateWorkspaceApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateWorkspaceApplicationInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + if s.WorkspaceId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *DisassociateWorkspaceApplicationInput) SetApplicationId(v string) *DisassociateWorkspaceApplicationInput { + s.ApplicationId = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *DisassociateWorkspaceApplicationInput) SetWorkspaceId(v string) *DisassociateWorkspaceApplicationInput { + s.WorkspaceId = &v + return s +} + +type DisassociateWorkspaceApplicationOutput struct { + _ struct{} `type:"structure"` + + // Information about the targeted association. + Association *WorkspaceResourceAssociation `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 DisassociateWorkspaceApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateWorkspaceApplicationOutput) GoString() string { + return s.String() +} + +// SetAssociation sets the Association field's value. +func (s *DisassociateWorkspaceApplicationOutput) SetAssociation(v *WorkspaceResourceAssociation) *DisassociateWorkspaceApplicationOutput { + s.Association = v + return s +} + +// Describes in-depth details about the error. These details include the possible +// causes of the error and troubleshooting information. type ErrorDetails struct { _ struct{} `type:"structure"` @@ -11290,6 +13341,92 @@ return s } +// Describes the association between an application and an image resource. +type ImageResourceAssociation struct { + _ struct{} `type:"structure"` + + // The identifier of the associated resource. + AssociatedResourceId *string `min:"1" type:"string"` + + // The resource type of the associated resources. + AssociatedResourceType *string `type:"string" enum:"ImageAssociatedResourceType"` + + // The time the association is created. + Created *time.Time `type:"timestamp"` + + // The identifier of the image. + ImageId *string `type:"string"` + + // The time the association status was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The status of the image resource association. + State *string `type:"string" enum:"AssociationState"` + + // The reason the association deployment failed. + StateReason *AssociationStateReason `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 ImageResourceAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageResourceAssociation) GoString() string { + return s.String() +} + +// SetAssociatedResourceId sets the AssociatedResourceId field's value. +func (s *ImageResourceAssociation) SetAssociatedResourceId(v string) *ImageResourceAssociation { + s.AssociatedResourceId = &v + return s +} + +// SetAssociatedResourceType sets the AssociatedResourceType field's value. +func (s *ImageResourceAssociation) SetAssociatedResourceType(v string) *ImageResourceAssociation { + s.AssociatedResourceType = &v + return s +} + +// SetCreated sets the Created field's value. +func (s *ImageResourceAssociation) SetCreated(v time.Time) *ImageResourceAssociation { + s.Created = &v + return s +} + +// SetImageId sets the ImageId field's value. +func (s *ImageResourceAssociation) SetImageId(v string) *ImageResourceAssociation { + s.ImageId = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *ImageResourceAssociation) SetLastUpdatedTime(v time.Time) *ImageResourceAssociation { + s.LastUpdatedTime = &v + return s +} + +// SetState sets the State field's value. +func (s *ImageResourceAssociation) SetState(v string) *ImageResourceAssociation { + s.State = &v + return s +} + +// SetStateReason sets the StateReason field's value. +func (s *ImageResourceAssociation) SetStateReason(v *AssociationStateReason) *ImageResourceAssociation { + s.StateReason = v + return s +} + type ImportClientBrandingInput struct { _ struct{} `type:"structure"` @@ -11675,6 +13812,70 @@ return s } +// The specified application is not compatible with the resource. +type IncompatibleApplicationsException 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 IncompatibleApplicationsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IncompatibleApplicationsException) GoString() string { + return s.String() +} + +func newErrorIncompatibleApplicationsException(v protocol.ResponseMetadata) error { + return &IncompatibleApplicationsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *IncompatibleApplicationsException) Code() string { + return "IncompatibleApplicationsException" +} + +// Message returns the exception's message. +func (s *IncompatibleApplicationsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *IncompatibleApplicationsException) OrigErr() error { + return nil +} + +func (s *IncompatibleApplicationsException) 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 *IncompatibleApplicationsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *IncompatibleApplicationsException) RequestID() string { + return s.RespMetadata.RequestID +} + // One or more parameter values are not valid. type InvalidParameterValuesException struct { _ struct{} `type:"structure"` @@ -13046,15 +15247,16 @@ type ModifyWorkspacePropertiesInput struct { _ struct{} `type:"structure"` + // Indicates the data replication status. + DataReplication *string `type:"string" enum:"DataReplication"` + // The identifier of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` // The properties of the WorkSpace. - // - // WorkspaceProperties is a required field - WorkspaceProperties *WorkspaceProperties `type:"structure" required:"true"` + WorkspaceProperties *WorkspaceProperties `type:"structure"` } // String returns the string representation. @@ -13081,9 +15283,6 @@ if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } - if s.WorkspaceProperties == nil { - invalidParams.Add(request.NewErrParamRequired("WorkspaceProperties")) - } if invalidParams.Len() > 0 { return invalidParams @@ -13091,6 +15290,12 @@ return nil } +// SetDataReplication sets the DataReplication field's value. +func (s *ModifyWorkspacePropertiesInput) SetDataReplication(v string) *ModifyWorkspacePropertiesInput { + s.DataReplication = &v + return s +} + // SetWorkspaceId sets the WorkspaceId field's value. func (s *ModifyWorkspacePropertiesInput) SetWorkspaceId(v string) *ModifyWorkspacePropertiesInput { s.WorkspaceId = &v @@ -13239,6 +15444,70 @@ return s } +// The operating system of the WorkSpace is not compatible with the application. +type OperatingSystemNotCompatibleException 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 OperatingSystemNotCompatibleException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OperatingSystemNotCompatibleException) GoString() string { + return s.String() +} + +func newErrorOperatingSystemNotCompatibleException(v protocol.ResponseMetadata) error { + return &OperatingSystemNotCompatibleException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OperatingSystemNotCompatibleException) Code() string { + return "OperatingSystemNotCompatibleException" +} + +// Message returns the exception's message. +func (s *OperatingSystemNotCompatibleException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OperatingSystemNotCompatibleException) OrigErr() error { + return nil +} + +func (s *OperatingSystemNotCompatibleException) 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 *OperatingSystemNotCompatibleException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OperatingSystemNotCompatibleException) RequestID() string { + return s.RespMetadata.RequestID +} + // The properties of this WorkSpace are currently being modified. Try again // in a moment. type OperationInProgressException struct { @@ -14109,6 +16378,73 @@ return s.RespMetadata.RequestID } +// The specified resource is currently in use. +type ResourceInUseException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The ID of the resource that is in use. + ResourceId *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceInUseException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceInUseException) GoString() string { + return s.String() +} + +func newErrorResourceInUseException(v protocol.ResponseMetadata) error { + return &ResourceInUseException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceInUseException) Code() string { + return "ResourceInUseException" +} + +// Message returns the exception's message. +func (s *ResourceInUseException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceInUseException) OrigErr() error { + return nil +} + +func (s *ResourceInUseException) 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 *ResourceInUseException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceInUseException) RequestID() string { + return s.RespMetadata.RequestID +} + // Your resource limits have been exceeded. type ResourceLimitExceededException struct { _ struct{} `type:"structure"` @@ -14704,6 +17040,10 @@ type StandbyWorkspace struct { _ struct{} `type:"structure"` + // Indicates whether data replication is enabled, and if enabled, the type of + // data replication. + DataReplication *string `type:"string" enum:"DataReplication"` + // The identifier of the directory for the standby WorkSpace. // // DirectoryId is a required field @@ -14768,6 +17108,12 @@ return nil } +// SetDataReplication sets the DataReplication field's value. +func (s *StandbyWorkspace) SetDataReplication(v string) *StandbyWorkspace { + s.DataReplication = &v + return s +} + // SetDirectoryId sets the DirectoryId field's value. func (s *StandbyWorkspace) SetDirectoryId(v string) *StandbyWorkspace { s.DirectoryId = &v @@ -14792,6 +17138,58 @@ return s } +// Describes the properties of the related standby WorkSpaces. +type StandbyWorkspacesProperties struct { + _ struct{} `type:"structure"` + + // Indicates whether data replication is enabled, and if enabled, the type of + // data replication. + DataReplication *string `type:"string" enum:"DataReplication"` + + // The date and time at which the last successful snapshot was taken of the + // primary WorkSpace used for replicating data. + RecoverySnapshotTime *time.Time `type:"timestamp"` + + // The identifier of the standby WorkSpace + StandbyWorkspaceId *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 StandbyWorkspacesProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StandbyWorkspacesProperties) GoString() string { + return s.String() +} + +// SetDataReplication sets the DataReplication field's value. +func (s *StandbyWorkspacesProperties) SetDataReplication(v string) *StandbyWorkspacesProperties { + s.DataReplication = &v + return s +} + +// SetRecoverySnapshotTime sets the RecoverySnapshotTime field's value. +func (s *StandbyWorkspacesProperties) SetRecoverySnapshotTime(v time.Time) *StandbyWorkspacesProperties { + s.RecoverySnapshotTime = &v + return s +} + +// SetStandbyWorkspaceId sets the StandbyWorkspaceId field's value. +func (s *StandbyWorkspacesProperties) SetStandbyWorkspaceId(v string) *StandbyWorkspacesProperties { + s.StandbyWorkspaceId = &v + return s +} + // Information used to start a WorkSpace. type StartRequest struct { _ struct{} `type:"structure"` @@ -15885,6 +18283,142 @@ return s } +// Describes the WorkSpace application. +type WorkSpaceApplication struct { + _ struct{} `type:"structure"` + + // The identifier of the application. + ApplicationId *string `type:"string"` + + // The time the application is created. + Created *time.Time `type:"timestamp"` + + // The description of the WorkSpace application. + Description *string `type:"string"` + + // The license availability for the applications. + LicenseType *string `type:"string" enum:"WorkSpaceApplicationLicenseType"` + + // The name of the WorkSpace application. + Name *string `min:"1" type:"string"` + + // The owner of the WorkSpace application. + Owner *string `type:"string"` + + // The status of WorkSpace application. + State *string `type:"string" enum:"WorkSpaceApplicationState"` + + // The supported compute types of the WorkSpace application. + SupportedComputeTypeNames []*string `type:"list" enum:"Compute"` + + // The supported operating systems of the WorkSpace application. + SupportedOperatingSystemNames []*string `type:"list" enum:"OperatingSystemName"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkSpaceApplication) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkSpaceApplication) GoString() string { + return s.String() +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *WorkSpaceApplication) SetApplicationId(v string) *WorkSpaceApplication { + s.ApplicationId = &v + return s +} + +// SetCreated sets the Created field's value. +func (s *WorkSpaceApplication) SetCreated(v time.Time) *WorkSpaceApplication { + s.Created = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *WorkSpaceApplication) SetDescription(v string) *WorkSpaceApplication { + s.Description = &v + return s +} + +// SetLicenseType sets the LicenseType field's value. +func (s *WorkSpaceApplication) SetLicenseType(v string) *WorkSpaceApplication { + s.LicenseType = &v + return s +} + +// SetName sets the Name field's value. +func (s *WorkSpaceApplication) SetName(v string) *WorkSpaceApplication { + s.Name = &v + return s +} + +// SetOwner sets the Owner field's value. +func (s *WorkSpaceApplication) SetOwner(v string) *WorkSpaceApplication { + s.Owner = &v + return s +} + +// SetState sets the State field's value. +func (s *WorkSpaceApplication) SetState(v string) *WorkSpaceApplication { + s.State = &v + return s +} + +// SetSupportedComputeTypeNames sets the SupportedComputeTypeNames field's value. +func (s *WorkSpaceApplication) SetSupportedComputeTypeNames(v []*string) *WorkSpaceApplication { + s.SupportedComputeTypeNames = v + return s +} + +// SetSupportedOperatingSystemNames sets the SupportedOperatingSystemNames field's value. +func (s *WorkSpaceApplication) SetSupportedOperatingSystemNames(v []*string) *WorkSpaceApplication { + s.SupportedOperatingSystemNames = v + return s +} + +// Describes the WorkSpace application deployment. +type WorkSpaceApplicationDeployment struct { + _ struct{} `type:"structure"` + + // The associations between the applications and the associated resources. + Associations []*WorkspaceResourceAssociation `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 WorkSpaceApplicationDeployment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkSpaceApplicationDeployment) GoString() string { + return s.String() +} + +// SetAssociations sets the Associations field's value. +func (s *WorkSpaceApplicationDeployment) SetAssociations(v []*WorkspaceResourceAssociation) *WorkSpaceApplicationDeployment { + s.Associations = v + return s +} + // Describes a WorkSpace. type Workspace struct { _ struct{} `type:"structure"` @@ -15896,6 +18430,9 @@ // this name varies. For more information, see Launch a WorkSpace (https://docs.aws.amazon.com/workspaces/latest/adminguide/launch-workspaces-tutorials.html). ComputerName *string `type:"string"` + // Indicates the settings of the data replication. + DataReplicationSettings *DataReplicationSettings `type:"structure"` + // The identifier of the Directory Service directory for the WorkSpace. DirectoryId *string `min:"10" type:"string"` @@ -15918,6 +18455,9 @@ // Indicates whether the data stored on the root volume is encrypted. RootVolumeEncryptionEnabled *bool `type:"boolean"` + // The properties of the standby WorkSpace + StandbyWorkspacesProperties []*StandbyWorkspacesProperties `type:"list"` + // The operational state of the WorkSpace. // // After a WorkSpace is terminated, the TERMINATED state is returned only briefly @@ -15978,6 +18518,12 @@ return s } +// SetDataReplicationSettings sets the DataReplicationSettings field's value. +func (s *Workspace) SetDataReplicationSettings(v *DataReplicationSettings) *Workspace { + s.DataReplicationSettings = v + return s +} + // SetDirectoryId sets the DirectoryId field's value. func (s *Workspace) SetDirectoryId(v string) *Workspace { s.DirectoryId = &v @@ -16020,6 +18566,12 @@ return s } +// SetStandbyWorkspacesProperties sets the StandbyWorkspacesProperties field's value. +func (s *Workspace) SetStandbyWorkspacesProperties(v []*StandbyWorkspacesProperties) *Workspace { + s.StandbyWorkspacesProperties = v + return s +} + // SetState sets the State field's value. func (s *Workspace) SetState(v string) *Workspace { s.State = &v @@ -16680,7 +19232,8 @@ // The error code that is returned for the image. ErrorCode *string `type:"string"` - // The details of the error returned for the image. + // Additional details of the error returned for the image, including the possible + // causes of the errors and troubleshooting information. ErrorDetails []*ErrorDetails `type:"list"` // The text of the error message that is returned for the image. @@ -16807,6 +19360,9 @@ // The compute type. For more information, see Amazon WorkSpaces Bundles (http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). ComputeTypeName *string `type:"string" enum:"Compute"` + // The name of the operating system. + OperatingSystemName *string `type:"string" enum:"OperatingSystemName"` + // The protocol. For more information, see Protocols for Amazon WorkSpaces (https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces-protocols.html). // // * Only available for WorkSpaces created with PCoIP bundles. @@ -16862,6 +19418,12 @@ return s } +// SetOperatingSystemName sets the OperatingSystemName field's value. +func (s *WorkspaceProperties) SetOperatingSystemName(v string) *WorkspaceProperties { + s.OperatingSystemName = &v + return s +} + // SetProtocols sets the Protocols field's value. func (s *WorkspaceProperties) SetProtocols(v []*string) *WorkspaceProperties { s.Protocols = v @@ -17032,6 +19594,92 @@ return s } +// Describes the association between an application and a WorkSpace resource. +type WorkspaceResourceAssociation struct { + _ struct{} `type:"structure"` + + // The identifier of the associated resource. + AssociatedResourceId *string `min:"1" type:"string"` + + // The resource types of the associated resource. + AssociatedResourceType *string `type:"string" enum:"WorkSpaceAssociatedResourceType"` + + // The time the association is created. + Created *time.Time `type:"timestamp"` + + // The time the association status was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The status of the WorkSpace resource association. + State *string `type:"string" enum:"AssociationState"` + + // The reason the association deployment failed. + StateReason *AssociationStateReason `type:"structure"` + + // The identifier of the WorkSpace. + WorkspaceId *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 WorkspaceResourceAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s WorkspaceResourceAssociation) GoString() string { + return s.String() +} + +// SetAssociatedResourceId sets the AssociatedResourceId field's value. +func (s *WorkspaceResourceAssociation) SetAssociatedResourceId(v string) *WorkspaceResourceAssociation { + s.AssociatedResourceId = &v + return s +} + +// SetAssociatedResourceType sets the AssociatedResourceType field's value. +func (s *WorkspaceResourceAssociation) SetAssociatedResourceType(v string) *WorkspaceResourceAssociation { + s.AssociatedResourceType = &v + return s +} + +// SetCreated sets the Created field's value. +func (s *WorkspaceResourceAssociation) SetCreated(v time.Time) *WorkspaceResourceAssociation { + s.Created = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *WorkspaceResourceAssociation) SetLastUpdatedTime(v time.Time) *WorkspaceResourceAssociation { + s.LastUpdatedTime = &v + return s +} + +// SetState sets the State field's value. +func (s *WorkspaceResourceAssociation) SetState(v string) *WorkspaceResourceAssociation { + s.State = &v + return s +} + +// SetStateReason sets the StateReason field's value. +func (s *WorkspaceResourceAssociation) SetStateReason(v *AssociationStateReason) *WorkspaceResourceAssociation { + s.StateReason = v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *WorkspaceResourceAssociation) SetWorkspaceId(v string) *WorkspaceResourceAssociation { + s.WorkspaceId = &v + return s +} + // The workspaces_DefaultRole role could not be found. If this is the first // time you are registering a directory, you will need to create the workspaces_DefaultRole // role before you can register a directory. For more information, see Creating @@ -17132,6 +19780,98 @@ } const ( + // ApplicationAssociatedResourceTypeWorkspace is a ApplicationAssociatedResourceType enum value + ApplicationAssociatedResourceTypeWorkspace = "WORKSPACE" + + // ApplicationAssociatedResourceTypeBundle is a ApplicationAssociatedResourceType enum value + ApplicationAssociatedResourceTypeBundle = "BUNDLE" + + // ApplicationAssociatedResourceTypeImage is a ApplicationAssociatedResourceType enum value + ApplicationAssociatedResourceTypeImage = "IMAGE" +) + +// ApplicationAssociatedResourceType_Values returns all elements of the ApplicationAssociatedResourceType enum +func ApplicationAssociatedResourceType_Values() []string { + return []string{ + ApplicationAssociatedResourceTypeWorkspace, + ApplicationAssociatedResourceTypeBundle, + ApplicationAssociatedResourceTypeImage, + } +} + +const ( + // AssociationErrorCodeValidationErrorInsufficientDiskSpace is a AssociationErrorCode enum value + AssociationErrorCodeValidationErrorInsufficientDiskSpace = "ValidationError.InsufficientDiskSpace" + + // AssociationErrorCodeValidationErrorInsufficientMemory is a AssociationErrorCode enum value + AssociationErrorCodeValidationErrorInsufficientMemory = "ValidationError.InsufficientMemory" + + // AssociationErrorCodeValidationErrorUnsupportedOperatingSystem is a AssociationErrorCode enum value + AssociationErrorCodeValidationErrorUnsupportedOperatingSystem = "ValidationError.UnsupportedOperatingSystem" + + // AssociationErrorCodeDeploymentErrorInternalServerError is a AssociationErrorCode enum value + AssociationErrorCodeDeploymentErrorInternalServerError = "DeploymentError.InternalServerError" + + // AssociationErrorCodeDeploymentErrorWorkspaceUnreachable is a AssociationErrorCode enum value + AssociationErrorCodeDeploymentErrorWorkspaceUnreachable = "DeploymentError.WorkspaceUnreachable" +) + +// AssociationErrorCode_Values returns all elements of the AssociationErrorCode enum +func AssociationErrorCode_Values() []string { + return []string{ + AssociationErrorCodeValidationErrorInsufficientDiskSpace, + AssociationErrorCodeValidationErrorInsufficientMemory, + AssociationErrorCodeValidationErrorUnsupportedOperatingSystem, + AssociationErrorCodeDeploymentErrorInternalServerError, + AssociationErrorCodeDeploymentErrorWorkspaceUnreachable, + } +} + +const ( + // AssociationStatePendingInstall is a AssociationState enum value + AssociationStatePendingInstall = "PENDING_INSTALL" + + // AssociationStatePendingInstallDeployment is a AssociationState enum value + AssociationStatePendingInstallDeployment = "PENDING_INSTALL_DEPLOYMENT" + + // AssociationStatePendingUninstall is a AssociationState enum value + AssociationStatePendingUninstall = "PENDING_UNINSTALL" + + // AssociationStatePendingUninstallDeployment is a AssociationState enum value + AssociationStatePendingUninstallDeployment = "PENDING_UNINSTALL_DEPLOYMENT" + + // AssociationStateInstalling is a AssociationState enum value + AssociationStateInstalling = "INSTALLING" + + // AssociationStateUninstalling is a AssociationState enum value + AssociationStateUninstalling = "UNINSTALLING" + + // AssociationStateError is a AssociationState enum value + AssociationStateError = "ERROR" + + // AssociationStateCompleted is a AssociationState enum value + AssociationStateCompleted = "COMPLETED" + + // AssociationStateRemoved is a AssociationState enum value + AssociationStateRemoved = "REMOVED" +) + +// AssociationState_Values returns all elements of the AssociationState enum +func AssociationState_Values() []string { + return []string{ + AssociationStatePendingInstall, + AssociationStatePendingInstallDeployment, + AssociationStatePendingUninstall, + AssociationStatePendingUninstallDeployment, + AssociationStateInstalling, + AssociationStateUninstalling, + AssociationStateError, + AssociationStateCompleted, + AssociationStateRemoved, + } +} + +const ( // AssociationStatusNotAssociated is a AssociationStatus enum value AssociationStatusNotAssociated = "NOT_ASSOCIATED" @@ -17160,6 +19900,18 @@ } const ( + // BundleAssociatedResourceTypeApplication is a BundleAssociatedResourceType enum value + BundleAssociatedResourceTypeApplication = "APPLICATION" +) + +// BundleAssociatedResourceType_Values returns all elements of the BundleAssociatedResourceType enum +func BundleAssociatedResourceType_Values() []string { + return []string{ + BundleAssociatedResourceTypeApplication, + } +} + +const ( // BundleTypeRegular is a BundleType enum value BundleTypeRegular = "REGULAR" @@ -17308,6 +20060,22 @@ } const ( + // DataReplicationNoReplication is a DataReplication enum value + DataReplicationNoReplication = "NO_REPLICATION" + + // DataReplicationPrimaryAsSource is a DataReplication enum value + DataReplicationPrimaryAsSource = "PRIMARY_AS_SOURCE" +) + +// DataReplication_Values returns all elements of the DataReplication enum +func DataReplication_Values() []string { + return []string{ + DataReplicationNoReplication, + DataReplicationPrimaryAsSource, + } +} + +const ( // DedicatedTenancyModificationStateEnumPending is a DedicatedTenancyModificationStateEnum enum value DedicatedTenancyModificationStateEnumPending = "PENDING" @@ -17384,6 +20152,18 @@ } const ( + // ImageAssociatedResourceTypeApplication is a ImageAssociatedResourceType enum value + ImageAssociatedResourceTypeApplication = "APPLICATION" +) + +// ImageAssociatedResourceType_Values returns all elements of the ImageAssociatedResourceType enum +func ImageAssociatedResourceType_Values() []string { + return []string{ + ImageAssociatedResourceTypeApplication, + } +} + +const ( // ImageTypeOwned is a ImageType enum value ImageTypeOwned = "OWNED" @@ -17452,6 +20232,58 @@ } const ( + // OperatingSystemNameAmazonLinux2 is a OperatingSystemName enum value + OperatingSystemNameAmazonLinux2 = "AMAZON_LINUX_2" + + // OperatingSystemNameUbuntu1804 is a OperatingSystemName enum value + OperatingSystemNameUbuntu1804 = "UBUNTU_18_04" + + // OperatingSystemNameUbuntu2004 is a OperatingSystemName enum value + OperatingSystemNameUbuntu2004 = "UBUNTU_20_04" + + // OperatingSystemNameUbuntu2204 is a OperatingSystemName enum value + OperatingSystemNameUbuntu2204 = "UBUNTU_22_04" + + // OperatingSystemNameUnknown is a OperatingSystemName enum value + OperatingSystemNameUnknown = "UNKNOWN" + + // OperatingSystemNameWindows10 is a OperatingSystemName enum value + OperatingSystemNameWindows10 = "WINDOWS_10" + + // OperatingSystemNameWindows11 is a OperatingSystemName enum value + OperatingSystemNameWindows11 = "WINDOWS_11" + + // OperatingSystemNameWindows7 is a OperatingSystemName enum value + OperatingSystemNameWindows7 = "WINDOWS_7" + + // OperatingSystemNameWindowsServer2016 is a OperatingSystemName enum value + OperatingSystemNameWindowsServer2016 = "WINDOWS_SERVER_2016" + + // OperatingSystemNameWindowsServer2019 is a OperatingSystemName enum value + OperatingSystemNameWindowsServer2019 = "WINDOWS_SERVER_2019" + + // OperatingSystemNameWindowsServer2022 is a OperatingSystemName enum value + OperatingSystemNameWindowsServer2022 = "WINDOWS_SERVER_2022" +) + +// OperatingSystemName_Values returns all elements of the OperatingSystemName enum +func OperatingSystemName_Values() []string { + return []string{ + OperatingSystemNameAmazonLinux2, + OperatingSystemNameUbuntu1804, + OperatingSystemNameUbuntu2004, + OperatingSystemNameUbuntu2204, + OperatingSystemNameUnknown, + OperatingSystemNameWindows10, + OperatingSystemNameWindows11, + OperatingSystemNameWindows7, + OperatingSystemNameWindowsServer2016, + OperatingSystemNameWindowsServer2019, + OperatingSystemNameWindowsServer2022, + } +} + +const ( // OperatingSystemTypeWindows is a OperatingSystemType enum value OperatingSystemTypeWindows = "WINDOWS" @@ -17587,6 +20419,58 @@ } } +const ( + // WorkSpaceApplicationLicenseTypeLicensed is a WorkSpaceApplicationLicenseType enum value + WorkSpaceApplicationLicenseTypeLicensed = "LICENSED" + + // WorkSpaceApplicationLicenseTypeUnlicensed is a WorkSpaceApplicationLicenseType enum value + WorkSpaceApplicationLicenseTypeUnlicensed = "UNLICENSED" +) + +// WorkSpaceApplicationLicenseType_Values returns all elements of the WorkSpaceApplicationLicenseType enum +func WorkSpaceApplicationLicenseType_Values() []string { + return []string{ + WorkSpaceApplicationLicenseTypeLicensed, + WorkSpaceApplicationLicenseTypeUnlicensed, + } +} + +const ( + // WorkSpaceApplicationStatePending is a WorkSpaceApplicationState enum value + WorkSpaceApplicationStatePending = "PENDING" + + // WorkSpaceApplicationStateError is a WorkSpaceApplicationState enum value + WorkSpaceApplicationStateError = "ERROR" + + // WorkSpaceApplicationStateAvailable is a WorkSpaceApplicationState enum value + WorkSpaceApplicationStateAvailable = "AVAILABLE" + + // WorkSpaceApplicationStateUninstallOnly is a WorkSpaceApplicationState enum value + WorkSpaceApplicationStateUninstallOnly = "UNINSTALL_ONLY" +) + +// WorkSpaceApplicationState_Values returns all elements of the WorkSpaceApplicationState enum +func WorkSpaceApplicationState_Values() []string { + return []string{ + WorkSpaceApplicationStatePending, + WorkSpaceApplicationStateError, + WorkSpaceApplicationStateAvailable, + WorkSpaceApplicationStateUninstallOnly, + } +} + +const ( + // WorkSpaceAssociatedResourceTypeApplication is a WorkSpaceAssociatedResourceType enum value + WorkSpaceAssociatedResourceTypeApplication = "APPLICATION" +) + +// WorkSpaceAssociatedResourceType_Values returns all elements of the WorkSpaceAssociatedResourceType enum +func WorkSpaceAssociatedResourceType_Values() []string { + return []string{ + WorkSpaceAssociatedResourceTypeApplication, + } +} + const ( // WorkspaceBundleStateAvailable is a WorkspaceBundleState enum value WorkspaceBundleStateAvailable = "AVAILABLE" diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspaces/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/workspaces/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspaces/errors.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspaces/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -14,6 +14,24 @@ // The user is not authorized to access a resource. ErrCodeAccessDeniedException = "AccessDeniedException" + // ErrCodeApplicationNotSupportedException for service response error code + // "ApplicationNotSupportedException". + // + // The specified application is not supported. + ErrCodeApplicationNotSupportedException = "ApplicationNotSupportedException" + + // ErrCodeComputeNotCompatibleException for service response error code + // "ComputeNotCompatibleException". + // + // The compute type of the WorkSpace is not compatible with the application. + ErrCodeComputeNotCompatibleException = "ComputeNotCompatibleException" + + // ErrCodeIncompatibleApplicationsException for service response error code + // "IncompatibleApplicationsException". + // + // The specified application is not compatible with the resource. + ErrCodeIncompatibleApplicationsException = "IncompatibleApplicationsException" + // ErrCodeInvalidParameterValuesException for service response error code // "InvalidParameterValuesException". // @@ -26,6 +44,12 @@ // The state of the resource is not valid for this operation. ErrCodeInvalidResourceStateException = "InvalidResourceStateException" + // ErrCodeOperatingSystemNotCompatibleException for service response error code + // "OperatingSystemNotCompatibleException". + // + // The operating system of the WorkSpace is not compatible with the application. + ErrCodeOperatingSystemNotCompatibleException = "OperatingSystemNotCompatibleException" + // ErrCodeOperationInProgressException for service response error code // "OperationInProgressException". // @@ -57,6 +81,12 @@ // The resource could not be created. ErrCodeResourceCreationFailedException = "ResourceCreationFailedException" + // ErrCodeResourceInUseException for service response error code + // "ResourceInUseException". + // + // The specified resource is currently in use. + ErrCodeResourceInUseException = "ResourceInUseException" + // ErrCodeResourceLimitExceededException for service response error code // "ResourceLimitExceededException". // @@ -104,13 +134,18 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessDeniedException": newErrorAccessDeniedException, + "ApplicationNotSupportedException": newErrorApplicationNotSupportedException, + "ComputeNotCompatibleException": newErrorComputeNotCompatibleException, + "IncompatibleApplicationsException": newErrorIncompatibleApplicationsException, "InvalidParameterValuesException": newErrorInvalidParameterValuesException, "InvalidResourceStateException": newErrorInvalidResourceStateException, + "OperatingSystemNotCompatibleException": newErrorOperatingSystemNotCompatibleException, "OperationInProgressException": newErrorOperationInProgressException, "OperationNotSupportedException": newErrorOperationNotSupportedException, "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, "ResourceAssociatedException": newErrorResourceAssociatedException, "ResourceCreationFailedException": newErrorResourceCreationFailedException, + "ResourceInUseException": newErrorResourceInUseException, "ResourceLimitExceededException": newErrorResourceLimitExceededException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ResourceUnavailableException": newErrorResourceUnavailableException, diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspaces/workspacesiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/workspaces/workspacesiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspaces/workspacesiface/interface.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspaces/workspacesiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -68,6 +68,10 @@ AssociateIpGroupsWithContext(aws.Context, *workspaces.AssociateIpGroupsInput, ...request.Option) (*workspaces.AssociateIpGroupsOutput, error) AssociateIpGroupsRequest(*workspaces.AssociateIpGroupsInput) (*request.Request, *workspaces.AssociateIpGroupsOutput) + AssociateWorkspaceApplication(*workspaces.AssociateWorkspaceApplicationInput) (*workspaces.AssociateWorkspaceApplicationOutput, error) + AssociateWorkspaceApplicationWithContext(aws.Context, *workspaces.AssociateWorkspaceApplicationInput, ...request.Option) (*workspaces.AssociateWorkspaceApplicationOutput, error) + AssociateWorkspaceApplicationRequest(*workspaces.AssociateWorkspaceApplicationInput) (*request.Request, *workspaces.AssociateWorkspaceApplicationOutput) + AuthorizeIpRules(*workspaces.AuthorizeIpRulesInput) (*workspaces.AuthorizeIpRulesOutput, error) AuthorizeIpRulesWithContext(aws.Context, *workspaces.AuthorizeIpRulesInput, ...request.Option) (*workspaces.AuthorizeIpRulesOutput, error) AuthorizeIpRulesRequest(*workspaces.AuthorizeIpRulesInput) (*request.Request, *workspaces.AuthorizeIpRulesOutput) @@ -140,6 +144,10 @@ DeleteWorkspaceImageWithContext(aws.Context, *workspaces.DeleteWorkspaceImageInput, ...request.Option) (*workspaces.DeleteWorkspaceImageOutput, error) DeleteWorkspaceImageRequest(*workspaces.DeleteWorkspaceImageInput) (*request.Request, *workspaces.DeleteWorkspaceImageOutput) + DeployWorkspaceApplications(*workspaces.DeployWorkspaceApplicationsInput) (*workspaces.DeployWorkspaceApplicationsOutput, error) + DeployWorkspaceApplicationsWithContext(aws.Context, *workspaces.DeployWorkspaceApplicationsInput, ...request.Option) (*workspaces.DeployWorkspaceApplicationsOutput, error) + DeployWorkspaceApplicationsRequest(*workspaces.DeployWorkspaceApplicationsInput) (*request.Request, *workspaces.DeployWorkspaceApplicationsOutput) + DeregisterWorkspaceDirectory(*workspaces.DeregisterWorkspaceDirectoryInput) (*workspaces.DeregisterWorkspaceDirectoryOutput, error) DeregisterWorkspaceDirectoryWithContext(aws.Context, *workspaces.DeregisterWorkspaceDirectoryInput, ...request.Option) (*workspaces.DeregisterWorkspaceDirectoryOutput, error) DeregisterWorkspaceDirectoryRequest(*workspaces.DeregisterWorkspaceDirectoryInput) (*request.Request, *workspaces.DeregisterWorkspaceDirectoryOutput) @@ -152,6 +160,24 @@ DescribeAccountModificationsWithContext(aws.Context, *workspaces.DescribeAccountModificationsInput, ...request.Option) (*workspaces.DescribeAccountModificationsOutput, error) DescribeAccountModificationsRequest(*workspaces.DescribeAccountModificationsInput) (*request.Request, *workspaces.DescribeAccountModificationsOutput) + DescribeApplicationAssociations(*workspaces.DescribeApplicationAssociationsInput) (*workspaces.DescribeApplicationAssociationsOutput, error) + DescribeApplicationAssociationsWithContext(aws.Context, *workspaces.DescribeApplicationAssociationsInput, ...request.Option) (*workspaces.DescribeApplicationAssociationsOutput, error) + DescribeApplicationAssociationsRequest(*workspaces.DescribeApplicationAssociationsInput) (*request.Request, *workspaces.DescribeApplicationAssociationsOutput) + + DescribeApplicationAssociationsPages(*workspaces.DescribeApplicationAssociationsInput, func(*workspaces.DescribeApplicationAssociationsOutput, bool) bool) error + DescribeApplicationAssociationsPagesWithContext(aws.Context, *workspaces.DescribeApplicationAssociationsInput, func(*workspaces.DescribeApplicationAssociationsOutput, bool) bool, ...request.Option) error + + DescribeApplications(*workspaces.DescribeApplicationsInput) (*workspaces.DescribeApplicationsOutput, error) + DescribeApplicationsWithContext(aws.Context, *workspaces.DescribeApplicationsInput, ...request.Option) (*workspaces.DescribeApplicationsOutput, error) + DescribeApplicationsRequest(*workspaces.DescribeApplicationsInput) (*request.Request, *workspaces.DescribeApplicationsOutput) + + DescribeApplicationsPages(*workspaces.DescribeApplicationsInput, func(*workspaces.DescribeApplicationsOutput, bool) bool) error + DescribeApplicationsPagesWithContext(aws.Context, *workspaces.DescribeApplicationsInput, func(*workspaces.DescribeApplicationsOutput, bool) bool, ...request.Option) error + + DescribeBundleAssociations(*workspaces.DescribeBundleAssociationsInput) (*workspaces.DescribeBundleAssociationsOutput, error) + DescribeBundleAssociationsWithContext(aws.Context, *workspaces.DescribeBundleAssociationsInput, ...request.Option) (*workspaces.DescribeBundleAssociationsOutput, error) + DescribeBundleAssociationsRequest(*workspaces.DescribeBundleAssociationsInput) (*request.Request, *workspaces.DescribeBundleAssociationsOutput) + DescribeClientBranding(*workspaces.DescribeClientBrandingInput) (*workspaces.DescribeClientBrandingOutput, error) DescribeClientBrandingWithContext(aws.Context, *workspaces.DescribeClientBrandingInput, ...request.Option) (*workspaces.DescribeClientBrandingOutput, error) DescribeClientBrandingRequest(*workspaces.DescribeClientBrandingInput) (*request.Request, *workspaces.DescribeClientBrandingOutput) @@ -172,6 +198,10 @@ DescribeConnectionAliasesWithContext(aws.Context, *workspaces.DescribeConnectionAliasesInput, ...request.Option) (*workspaces.DescribeConnectionAliasesOutput, error) DescribeConnectionAliasesRequest(*workspaces.DescribeConnectionAliasesInput) (*request.Request, *workspaces.DescribeConnectionAliasesOutput) + DescribeImageAssociations(*workspaces.DescribeImageAssociationsInput) (*workspaces.DescribeImageAssociationsOutput, error) + DescribeImageAssociationsWithContext(aws.Context, *workspaces.DescribeImageAssociationsInput, ...request.Option) (*workspaces.DescribeImageAssociationsOutput, error) + DescribeImageAssociationsRequest(*workspaces.DescribeImageAssociationsInput) (*request.Request, *workspaces.DescribeImageAssociationsOutput) + DescribeIpGroups(*workspaces.DescribeIpGroupsInput) (*workspaces.DescribeIpGroupsOutput, error) DescribeIpGroupsWithContext(aws.Context, *workspaces.DescribeIpGroupsInput, ...request.Option) (*workspaces.DescribeIpGroupsOutput, error) DescribeIpGroupsRequest(*workspaces.DescribeIpGroupsInput) (*request.Request, *workspaces.DescribeIpGroupsOutput) @@ -180,6 +210,10 @@ DescribeTagsWithContext(aws.Context, *workspaces.DescribeTagsInput, ...request.Option) (*workspaces.DescribeTagsOutput, error) DescribeTagsRequest(*workspaces.DescribeTagsInput) (*request.Request, *workspaces.DescribeTagsOutput) + DescribeWorkspaceAssociations(*workspaces.DescribeWorkspaceAssociationsInput) (*workspaces.DescribeWorkspaceAssociationsOutput, error) + DescribeWorkspaceAssociationsWithContext(aws.Context, *workspaces.DescribeWorkspaceAssociationsInput, ...request.Option) (*workspaces.DescribeWorkspaceAssociationsOutput, error) + DescribeWorkspaceAssociationsRequest(*workspaces.DescribeWorkspaceAssociationsInput) (*request.Request, *workspaces.DescribeWorkspaceAssociationsOutput) + DescribeWorkspaceBundles(*workspaces.DescribeWorkspaceBundlesInput) (*workspaces.DescribeWorkspaceBundlesOutput, error) DescribeWorkspaceBundlesWithContext(aws.Context, *workspaces.DescribeWorkspaceBundlesInput, ...request.Option) (*workspaces.DescribeWorkspaceBundlesOutput, error) DescribeWorkspaceBundlesRequest(*workspaces.DescribeWorkspaceBundlesInput) (*request.Request, *workspaces.DescribeWorkspaceBundlesOutput) @@ -225,6 +259,10 @@ DisassociateIpGroupsWithContext(aws.Context, *workspaces.DisassociateIpGroupsInput, ...request.Option) (*workspaces.DisassociateIpGroupsOutput, error) DisassociateIpGroupsRequest(*workspaces.DisassociateIpGroupsInput) (*request.Request, *workspaces.DisassociateIpGroupsOutput) + DisassociateWorkspaceApplication(*workspaces.DisassociateWorkspaceApplicationInput) (*workspaces.DisassociateWorkspaceApplicationOutput, error) + DisassociateWorkspaceApplicationWithContext(aws.Context, *workspaces.DisassociateWorkspaceApplicationInput, ...request.Option) (*workspaces.DisassociateWorkspaceApplicationOutput, error) + DisassociateWorkspaceApplicationRequest(*workspaces.DisassociateWorkspaceApplicationInput) (*request.Request, *workspaces.DisassociateWorkspaceApplicationOutput) + ImportClientBranding(*workspaces.ImportClientBrandingInput) (*workspaces.ImportClientBrandingOutput, error) ImportClientBrandingWithContext(aws.Context, *workspaces.ImportClientBrandingInput, ...request.Option) (*workspaces.ImportClientBrandingOutput, error) ImportClientBrandingRequest(*workspaces.ImportClientBrandingInput) (*request.Request, *workspaces.ImportClientBrandingOutput) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/api.go golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/api.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,5355 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package workspacesthinclient + +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/restjson" +) + +const opCreateEnvironment = "CreateEnvironment" + +// CreateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironment 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 CreateEnvironment for more information on using the CreateEnvironment +// 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 CreateEnvironmentRequest method. +// req, resp := client.CreateEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/CreateEnvironment +func (c *WorkSpacesThinClient) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *CreateEnvironmentOutput) { + op := &request.Operation{ + Name: opCreateEnvironment, + HTTPMethod: "POST", + HTTPPath: "/environments", + } + + if input == nil { + input = &CreateEnvironmentInput{} + } + + output = &CreateEnvironmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CreateEnvironment API operation for Amazon WorkSpaces Thin Client. +// +// Creates an environment for your thin client devices. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation CreateEnvironment for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// Your request exceeds a service quota. +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// The requested operation would cause a conflict with the current state of +// a service resource associated with the request. Resolve the conflict before +// retrying this request. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/CreateEnvironment +func (c *WorkSpacesThinClient) CreateEnvironment(input *CreateEnvironmentInput) (*CreateEnvironmentOutput, error) { + req, out := c.CreateEnvironmentRequest(input) + return out, req.Send() +} + +// CreateEnvironmentWithContext is the same as CreateEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironment 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 *WorkSpacesThinClient) CreateEnvironmentWithContext(ctx aws.Context, input *CreateEnvironmentInput, opts ...request.Option) (*CreateEnvironmentOutput, error) { + req, out := c.CreateEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDevice = "DeleteDevice" + +// DeleteDeviceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDevice 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 DeleteDevice for more information on using the DeleteDevice +// 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 DeleteDeviceRequest method. +// req, resp := client.DeleteDeviceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/DeleteDevice +func (c *WorkSpacesThinClient) DeleteDeviceRequest(input *DeleteDeviceInput) (req *request.Request, output *DeleteDeviceOutput) { + op := &request.Operation{ + Name: opDeleteDevice, + HTTPMethod: "DELETE", + HTTPPath: "/devices/{id}", + } + + if input == nil { + input = &DeleteDeviceInput{} + } + + output = &DeleteDeviceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeleteDevice API operation for Amazon WorkSpaces Thin Client. +// +// Deletes a thin client device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation DeleteDevice for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// The requested operation would cause a conflict with the current state of +// a service resource associated with the request. Resolve the conflict before +// retrying this request. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/DeleteDevice +func (c *WorkSpacesThinClient) DeleteDevice(input *DeleteDeviceInput) (*DeleteDeviceOutput, error) { + req, out := c.DeleteDeviceRequest(input) + return out, req.Send() +} + +// DeleteDeviceWithContext is the same as DeleteDevice with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDevice 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 *WorkSpacesThinClient) DeleteDeviceWithContext(ctx aws.Context, input *DeleteDeviceInput, opts ...request.Option) (*DeleteDeviceOutput, error) { + req, out := c.DeleteDeviceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironment = "DeleteEnvironment" + +// DeleteEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironment 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 DeleteEnvironment for more information on using the DeleteEnvironment +// 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 DeleteEnvironmentRequest method. +// req, resp := client.DeleteEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/DeleteEnvironment +func (c *WorkSpacesThinClient) DeleteEnvironmentRequest(input *DeleteEnvironmentInput) (req *request.Request, output *DeleteEnvironmentOutput) { + op := &request.Operation{ + Name: opDeleteEnvironment, + HTTPMethod: "DELETE", + HTTPPath: "/environments/{id}", + } + + if input == nil { + input = &DeleteEnvironmentInput{} + } + + output = &DeleteEnvironmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeleteEnvironment API operation for Amazon WorkSpaces Thin Client. +// +// Deletes an environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation DeleteEnvironment for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// The requested operation would cause a conflict with the current state of +// a service resource associated with the request. Resolve the conflict before +// retrying this request. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/DeleteEnvironment +func (c *WorkSpacesThinClient) DeleteEnvironment(input *DeleteEnvironmentInput) (*DeleteEnvironmentOutput, error) { + req, out := c.DeleteEnvironmentRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentWithContext is the same as DeleteEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironment 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 *WorkSpacesThinClient) DeleteEnvironmentWithContext(ctx aws.Context, input *DeleteEnvironmentInput, opts ...request.Option) (*DeleteEnvironmentOutput, error) { + req, out := c.DeleteEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeregisterDevice = "DeregisterDevice" + +// DeregisterDeviceRequest generates a "aws/request.Request" representing the +// client's request for the DeregisterDevice 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 DeregisterDevice for more information on using the DeregisterDevice +// 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 DeregisterDeviceRequest method. +// req, resp := client.DeregisterDeviceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/DeregisterDevice +func (c *WorkSpacesThinClient) DeregisterDeviceRequest(input *DeregisterDeviceInput) (req *request.Request, output *DeregisterDeviceOutput) { + op := &request.Operation{ + Name: opDeregisterDevice, + HTTPMethod: "POST", + HTTPPath: "/deregister-device/{id}", + } + + if input == nil { + input = &DeregisterDeviceInput{} + } + + output = &DeregisterDeviceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeregisterDevice API operation for Amazon WorkSpaces Thin Client. +// +// Deregisters a thin client device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation DeregisterDevice for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// The requested operation would cause a conflict with the current state of +// a service resource associated with the request. Resolve the conflict before +// retrying this request. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/DeregisterDevice +func (c *WorkSpacesThinClient) DeregisterDevice(input *DeregisterDeviceInput) (*DeregisterDeviceOutput, error) { + req, out := c.DeregisterDeviceRequest(input) + return out, req.Send() +} + +// DeregisterDeviceWithContext is the same as DeregisterDevice with the addition of +// the ability to pass a context and additional request options. +// +// See DeregisterDevice 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 *WorkSpacesThinClient) DeregisterDeviceWithContext(ctx aws.Context, input *DeregisterDeviceInput, opts ...request.Option) (*DeregisterDeviceOutput, error) { + req, out := c.DeregisterDeviceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDevice = "GetDevice" + +// GetDeviceRequest generates a "aws/request.Request" representing the +// client's request for the GetDevice 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 GetDevice for more information on using the GetDevice +// 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 GetDeviceRequest method. +// req, resp := client.GetDeviceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/GetDevice +func (c *WorkSpacesThinClient) GetDeviceRequest(input *GetDeviceInput) (req *request.Request, output *GetDeviceOutput) { + op := &request.Operation{ + Name: opGetDevice, + HTTPMethod: "GET", + HTTPPath: "/devices/{id}", + } + + if input == nil { + input = &GetDeviceInput{} + } + + output = &GetDeviceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetDevice API operation for Amazon WorkSpaces Thin Client. +// +// Returns information for a thin client device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation GetDevice for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/GetDevice +func (c *WorkSpacesThinClient) GetDevice(input *GetDeviceInput) (*GetDeviceOutput, error) { + req, out := c.GetDeviceRequest(input) + return out, req.Send() +} + +// GetDeviceWithContext is the same as GetDevice with the addition of +// the ability to pass a context and additional request options. +// +// See GetDevice 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 *WorkSpacesThinClient) GetDeviceWithContext(ctx aws.Context, input *GetDeviceInput, opts ...request.Option) (*GetDeviceOutput, error) { + req, out := c.GetDeviceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironment = "GetEnvironment" + +// GetEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironment 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 GetEnvironment for more information on using the GetEnvironment +// 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 GetEnvironmentRequest method. +// req, resp := client.GetEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/GetEnvironment +func (c *WorkSpacesThinClient) GetEnvironmentRequest(input *GetEnvironmentInput) (req *request.Request, output *GetEnvironmentOutput) { + op := &request.Operation{ + Name: opGetEnvironment, + HTTPMethod: "GET", + HTTPPath: "/environments/{id}", + } + + if input == nil { + input = &GetEnvironmentInput{} + } + + output = &GetEnvironmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetEnvironment API operation for Amazon WorkSpaces Thin Client. +// +// Returns information for an environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation GetEnvironment for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/GetEnvironment +func (c *WorkSpacesThinClient) GetEnvironment(input *GetEnvironmentInput) (*GetEnvironmentOutput, error) { + req, out := c.GetEnvironmentRequest(input) + return out, req.Send() +} + +// GetEnvironmentWithContext is the same as GetEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironment 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 *WorkSpacesThinClient) GetEnvironmentWithContext(ctx aws.Context, input *GetEnvironmentInput, opts ...request.Option) (*GetEnvironmentOutput, error) { + req, out := c.GetEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSoftwareSet = "GetSoftwareSet" + +// GetSoftwareSetRequest generates a "aws/request.Request" representing the +// client's request for the GetSoftwareSet 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 GetSoftwareSet for more information on using the GetSoftwareSet +// 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 GetSoftwareSetRequest method. +// req, resp := client.GetSoftwareSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/GetSoftwareSet +func (c *WorkSpacesThinClient) GetSoftwareSetRequest(input *GetSoftwareSetInput) (req *request.Request, output *GetSoftwareSetOutput) { + op := &request.Operation{ + Name: opGetSoftwareSet, + HTTPMethod: "GET", + HTTPPath: "/softwaresets/{id}", + } + + if input == nil { + input = &GetSoftwareSetInput{} + } + + output = &GetSoftwareSetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetSoftwareSet API operation for Amazon WorkSpaces Thin Client. +// +// Returns information for a software set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation GetSoftwareSet for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/GetSoftwareSet +func (c *WorkSpacesThinClient) GetSoftwareSet(input *GetSoftwareSetInput) (*GetSoftwareSetOutput, error) { + req, out := c.GetSoftwareSetRequest(input) + return out, req.Send() +} + +// GetSoftwareSetWithContext is the same as GetSoftwareSet with the addition of +// the ability to pass a context and additional request options. +// +// See GetSoftwareSet 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 *WorkSpacesThinClient) GetSoftwareSetWithContext(ctx aws.Context, input *GetSoftwareSetInput, opts ...request.Option) (*GetSoftwareSetOutput, error) { + req, out := c.GetSoftwareSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDevices = "ListDevices" + +// ListDevicesRequest generates a "aws/request.Request" representing the +// client's request for the ListDevices 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 ListDevices for more information on using the ListDevices +// 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 ListDevicesRequest method. +// req, resp := client.ListDevicesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListDevices +func (c *WorkSpacesThinClient) ListDevicesRequest(input *ListDevicesInput) (req *request.Request, output *ListDevicesOutput) { + op := &request.Operation{ + Name: opListDevices, + HTTPMethod: "GET", + HTTPPath: "/devices", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDevicesInput{} + } + + output = &ListDevicesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListDevices API operation for Amazon WorkSpaces Thin Client. +// +// Returns a list of thin client devices. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation ListDevices for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListDevices +func (c *WorkSpacesThinClient) ListDevices(input *ListDevicesInput) (*ListDevicesOutput, error) { + req, out := c.ListDevicesRequest(input) + return out, req.Send() +} + +// ListDevicesWithContext is the same as ListDevices with the addition of +// the ability to pass a context and additional request options. +// +// See ListDevices 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 *WorkSpacesThinClient) ListDevicesWithContext(ctx aws.Context, input *ListDevicesInput, opts ...request.Option) (*ListDevicesOutput, error) { + req, out := c.ListDevicesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDevicesPages iterates over the pages of a ListDevices operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDevices 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 ListDevices operation. +// pageNum := 0 +// err := client.ListDevicesPages(params, +// func(page *workspacesthinclient.ListDevicesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WorkSpacesThinClient) ListDevicesPages(input *ListDevicesInput, fn func(*ListDevicesOutput, bool) bool) error { + return c.ListDevicesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDevicesPagesWithContext same as ListDevicesPages 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 *WorkSpacesThinClient) ListDevicesPagesWithContext(ctx aws.Context, input *ListDevicesInput, fn func(*ListDevicesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDevicesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDevicesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDevicesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironments = "ListEnvironments" + +// ListEnvironmentsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironments 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 ListEnvironments for more information on using the ListEnvironments +// 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 ListEnvironmentsRequest method. +// req, resp := client.ListEnvironmentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListEnvironments +func (c *WorkSpacesThinClient) ListEnvironmentsRequest(input *ListEnvironmentsInput) (req *request.Request, output *ListEnvironmentsOutput) { + op := &request.Operation{ + Name: opListEnvironments, + HTTPMethod: "GET", + HTTPPath: "/environments", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentsInput{} + } + + output = &ListEnvironmentsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListEnvironments API operation for Amazon WorkSpaces Thin Client. +// +// Returns a list of environments. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation ListEnvironments for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListEnvironments +func (c *WorkSpacesThinClient) ListEnvironments(input *ListEnvironmentsInput) (*ListEnvironmentsOutput, error) { + req, out := c.ListEnvironmentsRequest(input) + return out, req.Send() +} + +// ListEnvironmentsWithContext is the same as ListEnvironments with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironments 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 *WorkSpacesThinClient) ListEnvironmentsWithContext(ctx aws.Context, input *ListEnvironmentsInput, opts ...request.Option) (*ListEnvironmentsOutput, error) { + req, out := c.ListEnvironmentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentsPages iterates over the pages of a ListEnvironments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironments 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 ListEnvironments operation. +// pageNum := 0 +// err := client.ListEnvironmentsPages(params, +// func(page *workspacesthinclient.ListEnvironmentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WorkSpacesThinClient) ListEnvironmentsPages(input *ListEnvironmentsInput, fn func(*ListEnvironmentsOutput, bool) bool) error { + return c.ListEnvironmentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentsPagesWithContext same as ListEnvironmentsPages 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 *WorkSpacesThinClient) ListEnvironmentsPagesWithContext(ctx aws.Context, input *ListEnvironmentsInput, fn func(*ListEnvironmentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSoftwareSets = "ListSoftwareSets" + +// ListSoftwareSetsRequest generates a "aws/request.Request" representing the +// client's request for the ListSoftwareSets 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 ListSoftwareSets for more information on using the ListSoftwareSets +// 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 ListSoftwareSetsRequest method. +// req, resp := client.ListSoftwareSetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListSoftwareSets +func (c *WorkSpacesThinClient) ListSoftwareSetsRequest(input *ListSoftwareSetsInput) (req *request.Request, output *ListSoftwareSetsOutput) { + op := &request.Operation{ + Name: opListSoftwareSets, + HTTPMethod: "GET", + HTTPPath: "/softwaresets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSoftwareSetsInput{} + } + + output = &ListSoftwareSetsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListSoftwareSets API operation for Amazon WorkSpaces Thin Client. +// +// Returns a list of software sets. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation ListSoftwareSets for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListSoftwareSets +func (c *WorkSpacesThinClient) ListSoftwareSets(input *ListSoftwareSetsInput) (*ListSoftwareSetsOutput, error) { + req, out := c.ListSoftwareSetsRequest(input) + return out, req.Send() +} + +// ListSoftwareSetsWithContext is the same as ListSoftwareSets with the addition of +// the ability to pass a context and additional request options. +// +// See ListSoftwareSets 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 *WorkSpacesThinClient) ListSoftwareSetsWithContext(ctx aws.Context, input *ListSoftwareSetsInput, opts ...request.Option) (*ListSoftwareSetsOutput, error) { + req, out := c.ListSoftwareSetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSoftwareSetsPages iterates over the pages of a ListSoftwareSets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSoftwareSets 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 ListSoftwareSets operation. +// pageNum := 0 +// err := client.ListSoftwareSetsPages(params, +// func(page *workspacesthinclient.ListSoftwareSetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WorkSpacesThinClient) ListSoftwareSetsPages(input *ListSoftwareSetsInput, fn func(*ListSoftwareSetsOutput, bool) bool) error { + return c.ListSoftwareSetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSoftwareSetsPagesWithContext same as ListSoftwareSetsPages 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 *WorkSpacesThinClient) ListSoftwareSetsPagesWithContext(ctx aws.Context, input *ListSoftwareSetsInput, fn func(*ListSoftwareSetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSoftwareSetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSoftwareSetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSoftwareSetsOutput), !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/workspaces-thin-client-2023-08-22/ListTagsForResource +func (c *WorkSpacesThinClient) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListTagsForResource API operation for Amazon WorkSpaces Thin Client. +// +// Returns a list of tags for 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 Amazon WorkSpaces Thin Client's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - InternalServiceException +// Request processing failed due to some unknown error, exception, or failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/ListTagsForResource +func (c *WorkSpacesThinClient) 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 *WorkSpacesThinClient) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/TagResource +func (c *WorkSpacesThinClient) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// TagResource API operation for Amazon WorkSpaces Thin Client. +// +// Assigns one or more tags (key-value pairs) to the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - InternalServiceException +// Request processing failed due to some unknown error, exception, or failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/TagResource +func (c *WorkSpacesThinClient) 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 *WorkSpacesThinClient) 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/workspaces-thin-client-2023-08-22/UntagResource +func (c *WorkSpacesThinClient) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UntagResource API operation for Amazon WorkSpaces Thin Client. +// +// Removes a tag or 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 Amazon WorkSpaces Thin Client's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - InternalServiceException +// Request processing failed due to some unknown error, exception, or failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UntagResource +func (c *WorkSpacesThinClient) 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 *WorkSpacesThinClient) 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 opUpdateDevice = "UpdateDevice" + +// UpdateDeviceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDevice 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 UpdateDevice for more information on using the UpdateDevice +// 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 UpdateDeviceRequest method. +// req, resp := client.UpdateDeviceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UpdateDevice +func (c *WorkSpacesThinClient) UpdateDeviceRequest(input *UpdateDeviceInput) (req *request.Request, output *UpdateDeviceOutput) { + op := &request.Operation{ + Name: opUpdateDevice, + HTTPMethod: "PATCH", + HTTPPath: "/devices/{id}", + } + + if input == nil { + input = &UpdateDeviceInput{} + } + + output = &UpdateDeviceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UpdateDevice API operation for Amazon WorkSpaces Thin Client. +// +// Updates a thin client device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation UpdateDevice for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UpdateDevice +func (c *WorkSpacesThinClient) UpdateDevice(input *UpdateDeviceInput) (*UpdateDeviceOutput, error) { + req, out := c.UpdateDeviceRequest(input) + return out, req.Send() +} + +// UpdateDeviceWithContext is the same as UpdateDevice with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDevice 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 *WorkSpacesThinClient) UpdateDeviceWithContext(ctx aws.Context, input *UpdateDeviceInput, opts ...request.Option) (*UpdateDeviceOutput, error) { + req, out := c.UpdateDeviceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironment = "UpdateEnvironment" + +// UpdateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironment 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 UpdateEnvironment for more information on using the UpdateEnvironment +// 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 UpdateEnvironmentRequest method. +// req, resp := client.UpdateEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UpdateEnvironment +func (c *WorkSpacesThinClient) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *UpdateEnvironmentOutput) { + op := &request.Operation{ + Name: opUpdateEnvironment, + HTTPMethod: "PATCH", + HTTPPath: "/environments/{id}", + } + + if input == nil { + input = &UpdateEnvironmentInput{} + } + + output = &UpdateEnvironmentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UpdateEnvironment API operation for Amazon WorkSpaces Thin Client. +// +// Updates an environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation UpdateEnvironment for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UpdateEnvironment +func (c *WorkSpacesThinClient) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironment 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 *WorkSpacesThinClient) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSoftwareSet = "UpdateSoftwareSet" + +// UpdateSoftwareSetRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSoftwareSet 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 UpdateSoftwareSet for more information on using the UpdateSoftwareSet +// 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 UpdateSoftwareSetRequest method. +// req, resp := client.UpdateSoftwareSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UpdateSoftwareSet +func (c *WorkSpacesThinClient) UpdateSoftwareSetRequest(input *UpdateSoftwareSetInput) (req *request.Request, output *UpdateSoftwareSetOutput) { + op := &request.Operation{ + Name: opUpdateSoftwareSet, + HTTPMethod: "PATCH", + HTTPPath: "/softwaresets/{id}", + } + + if input == nil { + input = &UpdateSoftwareSetInput{} + } + + output = &UpdateSoftwareSetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("api.", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UpdateSoftwareSet API operation for Amazon WorkSpaces Thin Client. +// +// Updates a software set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces Thin Client's +// API operation UpdateSoftwareSet for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the specified constraints. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The resource specified in the request was not found. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - InternalServerException +// The server encountered an internal error and is unable to complete the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22/UpdateSoftwareSet +func (c *WorkSpacesThinClient) UpdateSoftwareSet(input *UpdateSoftwareSetInput) (*UpdateSoftwareSetOutput, error) { + req, out := c.UpdateSoftwareSetRequest(input) + return out, req.Send() +} + +// UpdateSoftwareSetWithContext is the same as UpdateSoftwareSet with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSoftwareSet 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 *WorkSpacesThinClient) UpdateSoftwareSetWithContext(ctx aws.Context, input *UpdateSoftwareSetInput, opts ...request.Option) (*UpdateSoftwareSetOutput, error) { + req, out := c.UpdateSoftwareSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The requested operation would cause a conflict with the current state of +// a service resource associated with the request. Resolve the conflict before +// retrying this request. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The ID of the resource associated with the request. + ResourceId *string `locationName:"resourceId" type:"string"` + + // The type of the resource associated with the request. + ResourceType *string `locationName:"resourceType" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateEnvironmentInput struct { + _ struct{} `type:"structure"` + + // Specifies a unique, case-sensitive identifier that you provide to ensure + // the idempotency of the request. This lets you safely retry the request without + // accidentally performing the same operation a second time. Passing the same + // value to a later call to an operation requires that you also pass the same + // value for all other parameters. We recommend that you use a UUID type of + // value (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the software set to apply. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, + // WorkSpaces Web, or AppStream 2.0. + // + // DesktopArn is a required field + DesktopArn *string `locationName:"desktopArn" min:"20" type:"string" required:"true"` + + // The URL for the identity provider login (only for environments that use AppStream + // 2.0). + // + // DesktopEndpoint is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentInput's + // String and GoString methods. + DesktopEndpoint *string `locationName:"desktopEndpoint" min:"1" type:"string" sensitive:"true"` + + // The Amazon Resource Name (ARN) of the Key Management Service key to use to + // encrypt the environment. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // A specification for a time window to apply software updates. + MaintenanceWindow *MaintenanceWindow `locationName:"maintenanceWindow" type:"structure"` + + // The name for the environment. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentInput's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // An option to define which software updates to apply. + SoftwareSetUpdateMode *string `locationName:"softwareSetUpdateMode" type:"string" enum:"SoftwareSetUpdateMode"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` + + // A map of the key-value pairs of the tag or tags to assign to the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateEnvironmentInput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DesktopArn == nil { + invalidParams.Add(request.NewErrParamRequired("DesktopArn")) + } + if s.DesktopArn != nil && len(*s.DesktopArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DesktopArn", 20)) + } + if s.DesktopEndpoint != nil && len(*s.DesktopEndpoint) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DesktopEndpoint", 1)) + } + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) + } + if s.MaintenanceWindow != nil { + if err := s.MaintenanceWindow.Validate(); err != nil { + invalidParams.AddNested("MaintenanceWindow", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateEnvironmentInput) SetClientToken(v string) *CreateEnvironmentInput { + s.ClientToken = &v + return s +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *CreateEnvironmentInput) SetDesiredSoftwareSetId(v string) *CreateEnvironmentInput { + s.DesiredSoftwareSetId = &v + return s +} + +// SetDesktopArn sets the DesktopArn field's value. +func (s *CreateEnvironmentInput) SetDesktopArn(v string) *CreateEnvironmentInput { + s.DesktopArn = &v + return s +} + +// SetDesktopEndpoint sets the DesktopEndpoint field's value. +func (s *CreateEnvironmentInput) SetDesktopEndpoint(v string) *CreateEnvironmentInput { + s.DesktopEndpoint = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *CreateEnvironmentInput) SetKmsKeyArn(v string) *CreateEnvironmentInput { + s.KmsKeyArn = &v + return s +} + +// SetMaintenanceWindow sets the MaintenanceWindow field's value. +func (s *CreateEnvironmentInput) SetMaintenanceWindow(v *MaintenanceWindow) *CreateEnvironmentInput { + s.MaintenanceWindow = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentInput) SetName(v string) *CreateEnvironmentInput { + s.Name = &v + return s +} + +// SetSoftwareSetUpdateMode sets the SoftwareSetUpdateMode field's value. +func (s *CreateEnvironmentInput) SetSoftwareSetUpdateMode(v string) *CreateEnvironmentInput { + s.SoftwareSetUpdateMode = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *CreateEnvironmentInput) SetSoftwareSetUpdateSchedule(v string) *CreateEnvironmentInput { + s.SoftwareSetUpdateSchedule = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateEnvironmentInput) SetTags(v map[string]*string) *CreateEnvironmentInput { + s.Tags = v + return s +} + +type CreateEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // Describes an environment. + Environment *EnvironmentSummary `locationName:"environment" 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 CreateEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *CreateEnvironmentOutput) SetEnvironment(v *EnvironmentSummary) *CreateEnvironmentOutput { + s.Environment = v + return s +} + +type DeleteDeviceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Specifies a unique, case-sensitive identifier that you provide to ensure + // the idempotency of the request. This lets you safely retry the request without + // accidentally performing the same operation a second time. Passing the same + // value to a later call to an operation requires that you also pass the same + // value for all other parameters. We recommend that you use a UUID type of + // value (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `location:"querystring" locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the device to delete. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeviceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeviceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDeviceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDeviceInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteDeviceInput) SetClientToken(v string) *DeleteDeviceInput { + s.ClientToken = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeleteDeviceInput) SetId(v string) *DeleteDeviceInput { + s.Id = &v + return s +} + +type DeleteDeviceOutput 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 DeleteDeviceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDeviceOutput) GoString() string { + return s.String() +} + +type DeleteEnvironmentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Specifies a unique, case-sensitive identifier that you provide to ensure + // the idempotency of the request. This lets you safely retry the request without + // accidentally performing the same operation a second time. Passing the same + // value to a later call to an operation requires that you also pass the same + // value for all other parameters. We recommend that you use a UUID type of + // value (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `location:"querystring" locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the environment to delete. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteEnvironmentInput) SetClientToken(v string) *DeleteEnvironmentInput { + s.ClientToken = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeleteEnvironmentInput) SetId(v string) *DeleteEnvironmentInput { + s.Id = &v + return s +} + +type DeleteEnvironmentOutput 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 DeleteEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEnvironmentOutput) GoString() string { + return s.String() +} + +type DeregisterDeviceInput struct { + _ struct{} `type:"structure"` + + // Specifies a unique, case-sensitive identifier that you provide to ensure + // the idempotency of the request. This lets you safely retry the request without + // accidentally performing the same operation a second time. Passing the same + // value to a later call to an operation requires that you also pass the same + // value for all other parameters. We recommend that you use a UUID type of + // value (https://wikipedia.org/wiki/Universally_unique_identifier). + // + // If you don't provide this value, then Amazon Web Services generates a random + // one for you. + // + // If you retry the operation with the same ClientToken, but with different + // parameters, the retry fails with an IdempotentParameterMismatch error. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the device to deregister. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The desired new status for the device. + TargetDeviceStatus *string `locationName:"targetDeviceStatus" type:"string" enum:"TargetDeviceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterDeviceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterDeviceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeregisterDeviceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeregisterDeviceInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeregisterDeviceInput) SetClientToken(v string) *DeregisterDeviceInput { + s.ClientToken = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeregisterDeviceInput) SetId(v string) *DeregisterDeviceInput { + s.Id = &v + return s +} + +// SetTargetDeviceStatus sets the TargetDeviceStatus field's value. +func (s *DeregisterDeviceInput) SetTargetDeviceStatus(v string) *DeregisterDeviceInput { + s.TargetDeviceStatus = &v + return s +} + +type DeregisterDeviceOutput 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 DeregisterDeviceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterDeviceOutput) GoString() string { + return s.String() +} + +// Describes a thin client device. +type Device struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the device. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The timestamp of when the device was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The ID of the software set currently installed on the device. + CurrentSoftwareSetId *string `locationName:"currentSoftwareSetId" type:"string"` + + // The version of the software set currently installed on the device. + CurrentSoftwareSetVersion *string `locationName:"currentSoftwareSetVersion" type:"string"` + + // The ID of the software set which the device has been set to. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The ID of the environment the device is associated with. + EnvironmentId *string `locationName:"environmentId" type:"string"` + + // The ID of the device. + Id *string `locationName:"id" type:"string"` + + // The Amazon Resource Name (ARN) of the Key Management Service key used to + // encrypt the device. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // The timestamp of the most recent session on the device. + LastConnectedAt *time.Time `locationName:"lastConnectedAt" type:"timestamp"` + + // The timestamp of the most recent check-in of the device. + LastPostureAt *time.Time `locationName:"lastPostureAt" type:"timestamp"` + + // The model number of the device. + Model *string `locationName:"model" type:"string"` + + // The name of the device. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Device's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // The ID of the software set that is pending to be installed on the device. + PendingSoftwareSetId *string `locationName:"pendingSoftwareSetId" type:"string"` + + // The version of the software set that is pending to be installed on the device. + PendingSoftwareSetVersion *string `locationName:"pendingSoftwareSetVersion" type:"string"` + + // The hardware serial number of the device. + SerialNumber *string `locationName:"serialNumber" type:"string"` + + // Describes if the software currently installed on the device is a supported + // version. + SoftwareSetComplianceStatus *string `locationName:"softwareSetComplianceStatus" type:"string" enum:"DeviceSoftwareSetComplianceStatus"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` + + // Describes if the device has a supported version of software installed. + SoftwareSetUpdateStatus *string `locationName:"softwareSetUpdateStatus" type:"string" enum:"SoftwareSetUpdateStatus"` + + // The status of the device. + Status *string `locationName:"status" type:"string" enum:"DeviceStatus"` + + // The tag keys and optional values for the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Device's + // String and GoString methods. + Tags *EmbeddedTag `locationName:"tags" type:"structure" sensitive:"true"` + + // The timestamp of when the device was updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 Device) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Device) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Device) SetArn(v string) *Device { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Device) SetCreatedAt(v time.Time) *Device { + s.CreatedAt = &v + return s +} + +// SetCurrentSoftwareSetId sets the CurrentSoftwareSetId field's value. +func (s *Device) SetCurrentSoftwareSetId(v string) *Device { + s.CurrentSoftwareSetId = &v + return s +} + +// SetCurrentSoftwareSetVersion sets the CurrentSoftwareSetVersion field's value. +func (s *Device) SetCurrentSoftwareSetVersion(v string) *Device { + s.CurrentSoftwareSetVersion = &v + return s +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *Device) SetDesiredSoftwareSetId(v string) *Device { + s.DesiredSoftwareSetId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *Device) SetEnvironmentId(v string) *Device { + s.EnvironmentId = &v + return s +} + +// SetId sets the Id field's value. +func (s *Device) SetId(v string) *Device { + s.Id = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *Device) SetKmsKeyArn(v string) *Device { + s.KmsKeyArn = &v + return s +} + +// SetLastConnectedAt sets the LastConnectedAt field's value. +func (s *Device) SetLastConnectedAt(v time.Time) *Device { + s.LastConnectedAt = &v + return s +} + +// SetLastPostureAt sets the LastPostureAt field's value. +func (s *Device) SetLastPostureAt(v time.Time) *Device { + s.LastPostureAt = &v + return s +} + +// SetModel sets the Model field's value. +func (s *Device) SetModel(v string) *Device { + s.Model = &v + return s +} + +// SetName sets the Name field's value. +func (s *Device) SetName(v string) *Device { + s.Name = &v + return s +} + +// SetPendingSoftwareSetId sets the PendingSoftwareSetId field's value. +func (s *Device) SetPendingSoftwareSetId(v string) *Device { + s.PendingSoftwareSetId = &v + return s +} + +// SetPendingSoftwareSetVersion sets the PendingSoftwareSetVersion field's value. +func (s *Device) SetPendingSoftwareSetVersion(v string) *Device { + s.PendingSoftwareSetVersion = &v + return s +} + +// SetSerialNumber sets the SerialNumber field's value. +func (s *Device) SetSerialNumber(v string) *Device { + s.SerialNumber = &v + return s +} + +// SetSoftwareSetComplianceStatus sets the SoftwareSetComplianceStatus field's value. +func (s *Device) SetSoftwareSetComplianceStatus(v string) *Device { + s.SoftwareSetComplianceStatus = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *Device) SetSoftwareSetUpdateSchedule(v string) *Device { + s.SoftwareSetUpdateSchedule = &v + return s +} + +// SetSoftwareSetUpdateStatus sets the SoftwareSetUpdateStatus field's value. +func (s *Device) SetSoftwareSetUpdateStatus(v string) *Device { + s.SoftwareSetUpdateStatus = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Device) SetStatus(v string) *Device { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Device) SetTags(v *EmbeddedTag) *Device { + s.Tags = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Device) SetUpdatedAt(v time.Time) *Device { + s.UpdatedAt = &v + return s +} + +// Describes a thin client device. +type DeviceSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the device. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The timestamp of when the device was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The ID of the software set currently installed on the device. + CurrentSoftwareSetId *string `locationName:"currentSoftwareSetId" type:"string"` + + // The ID of the software set which the device has been set to. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The ID of the environment the device is associated with. + EnvironmentId *string `locationName:"environmentId" type:"string"` + + // The ID of the device. + Id *string `locationName:"id" type:"string"` + + // The timestamp of the most recent session on the device. + LastConnectedAt *time.Time `locationName:"lastConnectedAt" type:"timestamp"` + + // The timestamp of the most recent check-in of the device. + LastPostureAt *time.Time `locationName:"lastPostureAt" type:"timestamp"` + + // The model number of the device. + Model *string `locationName:"model" type:"string"` + + // The name of the device. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeviceSummary's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // The ID of the software set that is pending to be installed on the device. + PendingSoftwareSetId *string `locationName:"pendingSoftwareSetId" type:"string"` + + // The hardware serial number of the device. + SerialNumber *string `locationName:"serialNumber" type:"string"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` + + // The status of the device. + Status *string `locationName:"status" type:"string" enum:"DeviceStatus"` + + // The tag keys and optional values for the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeviceSummary's + // String and GoString methods. + Tags *EmbeddedTag `locationName:"tags" type:"structure" sensitive:"true"` + + // The timestamp of when the device was updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 DeviceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeviceSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeviceSummary) SetArn(v string) *DeviceSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DeviceSummary) SetCreatedAt(v time.Time) *DeviceSummary { + s.CreatedAt = &v + return s +} + +// SetCurrentSoftwareSetId sets the CurrentSoftwareSetId field's value. +func (s *DeviceSummary) SetCurrentSoftwareSetId(v string) *DeviceSummary { + s.CurrentSoftwareSetId = &v + return s +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *DeviceSummary) SetDesiredSoftwareSetId(v string) *DeviceSummary { + s.DesiredSoftwareSetId = &v + return s +} + +// SetEnvironmentId sets the EnvironmentId field's value. +func (s *DeviceSummary) SetEnvironmentId(v string) *DeviceSummary { + s.EnvironmentId = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeviceSummary) SetId(v string) *DeviceSummary { + s.Id = &v + return s +} + +// SetLastConnectedAt sets the LastConnectedAt field's value. +func (s *DeviceSummary) SetLastConnectedAt(v time.Time) *DeviceSummary { + s.LastConnectedAt = &v + return s +} + +// SetLastPostureAt sets the LastPostureAt field's value. +func (s *DeviceSummary) SetLastPostureAt(v time.Time) *DeviceSummary { + s.LastPostureAt = &v + return s +} + +// SetModel sets the Model field's value. +func (s *DeviceSummary) SetModel(v string) *DeviceSummary { + s.Model = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeviceSummary) SetName(v string) *DeviceSummary { + s.Name = &v + return s +} + +// SetPendingSoftwareSetId sets the PendingSoftwareSetId field's value. +func (s *DeviceSummary) SetPendingSoftwareSetId(v string) *DeviceSummary { + s.PendingSoftwareSetId = &v + return s +} + +// SetSerialNumber sets the SerialNumber field's value. +func (s *DeviceSummary) SetSerialNumber(v string) *DeviceSummary { + s.SerialNumber = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *DeviceSummary) SetSoftwareSetUpdateSchedule(v string) *DeviceSummary { + s.SoftwareSetUpdateSchedule = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeviceSummary) SetStatus(v string) *DeviceSummary { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *DeviceSummary) SetTags(v *EmbeddedTag) *DeviceSummary { + s.Tags = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DeviceSummary) SetUpdatedAt(v time.Time) *DeviceSummary { + s.UpdatedAt = &v + return s +} + +// The resource and internal ID of a resource to tag. +type EmbeddedTag struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The internal ID of a resource to tag. + InternalId *string `locationName:"internalId" type:"string"` + + // The Amazon Resource Name (ARN) of a resource to tag. + 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 EmbeddedTag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EmbeddedTag) GoString() string { + return s.String() +} + +// SetInternalId sets the InternalId field's value. +func (s *EmbeddedTag) SetInternalId(v string) *EmbeddedTag { + s.InternalId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *EmbeddedTag) SetResourceArn(v string) *EmbeddedTag { + s.ResourceArn = &v + return s +} + +// Describes an environment. +type Environment struct { + _ struct{} `type:"structure"` + + // The activation code to register a device to the environment. + ActivationCode *string `locationName:"activationCode" type:"string"` + + // The Amazon Resource Name (ARN) of the environment. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The timestamp of when the environment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The ID of the software set to apply. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, + // WorkSpaces Web, or AppStream 2.0. + DesktopArn *string `locationName:"desktopArn" min:"20" type:"string"` + + // The URL for the identity provider login (only for environments that use AppStream + // 2.0). + // + // DesktopEndpoint is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Environment's + // String and GoString methods. + DesktopEndpoint *string `locationName:"desktopEndpoint" min:"1" type:"string" sensitive:"true"` + + // The type of streaming desktop for the environment. + DesktopType *string `locationName:"desktopType" type:"string" enum:"DesktopType"` + + // The ID of the environment. + Id *string `locationName:"id" type:"string"` + + // The Amazon Resource Name (ARN) of the Key Management Service key used to + // encrypt the environment. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // A specification for a time window to apply software updates. + MaintenanceWindow *MaintenanceWindow `locationName:"maintenanceWindow" type:"structure"` + + // The name of the environment. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Environment's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // The ID of the software set that is pending to be installed. + PendingSoftwareSetId *string `locationName:"pendingSoftwareSetId" type:"string"` + + // The version of the software set that is pending to be installed. + PendingSoftwareSetVersion *string `locationName:"pendingSoftwareSetVersion" type:"string"` + + // The number of devices registered to the environment. + RegisteredDevicesCount *int64 `locationName:"registeredDevicesCount" type:"integer"` + + // Describes if the software currently installed on all devices in the environment + // is a supported version. + SoftwareSetComplianceStatus *string `locationName:"softwareSetComplianceStatus" type:"string" enum:"EnvironmentSoftwareSetComplianceStatus"` + + // An option to define which software updates to apply. + SoftwareSetUpdateMode *string `locationName:"softwareSetUpdateMode" type:"string" enum:"SoftwareSetUpdateMode"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` + + // The tag keys and optional values for the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Environment's + // String and GoString methods. + Tags *EmbeddedTag `locationName:"tags" type:"structure" sensitive:"true"` + + // The timestamp of when the device was updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 Environment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Environment) GoString() string { + return s.String() +} + +// SetActivationCode sets the ActivationCode field's value. +func (s *Environment) SetActivationCode(v string) *Environment { + s.ActivationCode = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *Environment) SetArn(v string) *Environment { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Environment) SetCreatedAt(v time.Time) *Environment { + s.CreatedAt = &v + return s +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *Environment) SetDesiredSoftwareSetId(v string) *Environment { + s.DesiredSoftwareSetId = &v + return s +} + +// SetDesktopArn sets the DesktopArn field's value. +func (s *Environment) SetDesktopArn(v string) *Environment { + s.DesktopArn = &v + return s +} + +// SetDesktopEndpoint sets the DesktopEndpoint field's value. +func (s *Environment) SetDesktopEndpoint(v string) *Environment { + s.DesktopEndpoint = &v + return s +} + +// SetDesktopType sets the DesktopType field's value. +func (s *Environment) SetDesktopType(v string) *Environment { + s.DesktopType = &v + return s +} + +// SetId sets the Id field's value. +func (s *Environment) SetId(v string) *Environment { + s.Id = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *Environment) SetKmsKeyArn(v string) *Environment { + s.KmsKeyArn = &v + return s +} + +// SetMaintenanceWindow sets the MaintenanceWindow field's value. +func (s *Environment) SetMaintenanceWindow(v *MaintenanceWindow) *Environment { + s.MaintenanceWindow = v + return s +} + +// SetName sets the Name field's value. +func (s *Environment) SetName(v string) *Environment { + s.Name = &v + return s +} + +// SetPendingSoftwareSetId sets the PendingSoftwareSetId field's value. +func (s *Environment) SetPendingSoftwareSetId(v string) *Environment { + s.PendingSoftwareSetId = &v + return s +} + +// SetPendingSoftwareSetVersion sets the PendingSoftwareSetVersion field's value. +func (s *Environment) SetPendingSoftwareSetVersion(v string) *Environment { + s.PendingSoftwareSetVersion = &v + return s +} + +// SetRegisteredDevicesCount sets the RegisteredDevicesCount field's value. +func (s *Environment) SetRegisteredDevicesCount(v int64) *Environment { + s.RegisteredDevicesCount = &v + return s +} + +// SetSoftwareSetComplianceStatus sets the SoftwareSetComplianceStatus field's value. +func (s *Environment) SetSoftwareSetComplianceStatus(v string) *Environment { + s.SoftwareSetComplianceStatus = &v + return s +} + +// SetSoftwareSetUpdateMode sets the SoftwareSetUpdateMode field's value. +func (s *Environment) SetSoftwareSetUpdateMode(v string) *Environment { + s.SoftwareSetUpdateMode = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *Environment) SetSoftwareSetUpdateSchedule(v string) *Environment { + s.SoftwareSetUpdateSchedule = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Environment) SetTags(v *EmbeddedTag) *Environment { + s.Tags = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Environment) SetUpdatedAt(v time.Time) *Environment { + s.UpdatedAt = &v + return s +} + +// Describes an environment. +type EnvironmentSummary struct { + _ struct{} `type:"structure"` + + // The activation code to register a device to the environment. + ActivationCode *string `locationName:"activationCode" type:"string"` + + // The Amazon Resource Name (ARN) of the environment. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The timestamp of when the environment was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The ID of the software set to apply. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, + // WorkSpaces Web, or AppStream 2.0. + DesktopArn *string `locationName:"desktopArn" min:"20" type:"string"` + + // The URL for the identity provider login (only for environments that use AppStream + // 2.0). + // + // DesktopEndpoint is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentSummary's + // String and GoString methods. + DesktopEndpoint *string `locationName:"desktopEndpoint" min:"1" type:"string" sensitive:"true"` + + // The type of streaming desktop for the environment. + DesktopType *string `locationName:"desktopType" type:"string" enum:"DesktopType"` + + // The ID of the environment. + Id *string `locationName:"id" type:"string"` + + // A specification for a time window to apply software updates. + MaintenanceWindow *MaintenanceWindow `locationName:"maintenanceWindow" type:"structure"` + + // The name of the environment. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentSummary's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // The ID of the software set that is pending to be installed. + PendingSoftwareSetId *string `locationName:"pendingSoftwareSetId" type:"string"` + + // An option to define which software updates to apply. + SoftwareSetUpdateMode *string `locationName:"softwareSetUpdateMode" type:"string" enum:"SoftwareSetUpdateMode"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` + + // The tag keys and optional values for the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EnvironmentSummary's + // String and GoString methods. + Tags *EmbeddedTag `locationName:"tags" type:"structure" sensitive:"true"` + + // The timestamp of when the device was updated. + UpdatedAt *time.Time `locationName:"updatedAt" 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 EnvironmentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EnvironmentSummary) GoString() string { + return s.String() +} + +// SetActivationCode sets the ActivationCode field's value. +func (s *EnvironmentSummary) SetActivationCode(v string) *EnvironmentSummary { + s.ActivationCode = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentSummary) SetArn(v string) *EnvironmentSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentSummary) SetCreatedAt(v time.Time) *EnvironmentSummary { + s.CreatedAt = &v + return s +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *EnvironmentSummary) SetDesiredSoftwareSetId(v string) *EnvironmentSummary { + s.DesiredSoftwareSetId = &v + return s +} + +// SetDesktopArn sets the DesktopArn field's value. +func (s *EnvironmentSummary) SetDesktopArn(v string) *EnvironmentSummary { + s.DesktopArn = &v + return s +} + +// SetDesktopEndpoint sets the DesktopEndpoint field's value. +func (s *EnvironmentSummary) SetDesktopEndpoint(v string) *EnvironmentSummary { + s.DesktopEndpoint = &v + return s +} + +// SetDesktopType sets the DesktopType field's value. +func (s *EnvironmentSummary) SetDesktopType(v string) *EnvironmentSummary { + s.DesktopType = &v + return s +} + +// SetId sets the Id field's value. +func (s *EnvironmentSummary) SetId(v string) *EnvironmentSummary { + s.Id = &v + return s +} + +// SetMaintenanceWindow sets the MaintenanceWindow field's value. +func (s *EnvironmentSummary) SetMaintenanceWindow(v *MaintenanceWindow) *EnvironmentSummary { + s.MaintenanceWindow = v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentSummary) SetName(v string) *EnvironmentSummary { + s.Name = &v + return s +} + +// SetPendingSoftwareSetId sets the PendingSoftwareSetId field's value. +func (s *EnvironmentSummary) SetPendingSoftwareSetId(v string) *EnvironmentSummary { + s.PendingSoftwareSetId = &v + return s +} + +// SetSoftwareSetUpdateMode sets the SoftwareSetUpdateMode field's value. +func (s *EnvironmentSummary) SetSoftwareSetUpdateMode(v string) *EnvironmentSummary { + s.SoftwareSetUpdateMode = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *EnvironmentSummary) SetSoftwareSetUpdateSchedule(v string) *EnvironmentSummary { + s.SoftwareSetUpdateSchedule = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *EnvironmentSummary) SetTags(v *EmbeddedTag) *EnvironmentSummary { + s.Tags = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *EnvironmentSummary) SetUpdatedAt(v time.Time) *EnvironmentSummary { + s.UpdatedAt = &v + return s +} + +type GetDeviceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the device for which to return information. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeviceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeviceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDeviceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDeviceInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *GetDeviceInput) SetId(v string) *GetDeviceInput { + s.Id = &v + return s +} + +type GetDeviceOutput struct { + _ struct{} `type:"structure"` + + // Describes an device. + Device *Device `locationName:"device" 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 GetDeviceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDeviceOutput) GoString() string { + return s.String() +} + +// SetDevice sets the Device field's value. +func (s *GetDeviceOutput) SetDevice(v *Device) *GetDeviceOutput { + s.Device = v + return s +} + +type GetEnvironmentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the environment for which to return information. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *GetEnvironmentInput) SetId(v string) *GetEnvironmentInput { + s.Id = &v + return s +} + +type GetEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // Describes an environment. + Environment *Environment `locationName:"environment" 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 GetEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *GetEnvironmentOutput) SetEnvironment(v *Environment) *GetEnvironmentOutput { + s.Environment = v + return s +} + +type GetSoftwareSetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the software set for which to return information. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSoftwareSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSoftwareSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSoftwareSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSoftwareSetInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *GetSoftwareSetInput) SetId(v string) *GetSoftwareSetInput { + s.Id = &v + return s +} + +type GetSoftwareSetOutput struct { + _ struct{} `type:"structure"` + + // Describes a software set. + SoftwareSet *SoftwareSet `locationName:"softwareSet" 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 GetSoftwareSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSoftwareSetOutput) GoString() string { + return s.String() +} + +// SetSoftwareSet sets the SoftwareSet field's value. +func (s *GetSoftwareSetOutput) SetSoftwareSet(v *SoftwareSet) *GetSoftwareSetOutput { + s.SoftwareSet = v + return s +} + +// The server encountered an internal error and is unable to complete the request. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The number of seconds to wait before retrying the next request. + RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Request processing failed due to some unknown error, exception, or failure. +type InternalServiceException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The number of seconds to wait before retrying the next request. + RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" 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 InternalServiceException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServiceException) GoString() string { + return s.String() +} + +func newErrorInternalServiceException(v protocol.ResponseMetadata) error { + return &InternalServiceException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServiceException) Code() string { + return "InternalServiceException" +} + +// Message returns the exception's message. +func (s *InternalServiceException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServiceException) OrigErr() error { + return nil +} + +func (s *InternalServiceException) 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 *InternalServiceException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServiceException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListDevicesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results that are returned per call. You can use nextToken + // to obtain further pages of results. + // + // This is only an upper limit. The actual number of results returned per call + // might be fewer than the specified maximum. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // 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. Keep all other arguments + // unchanged. Each pagination token expires after 24 hours. Using an expired + // pagination token will return an HTTP 400 InvalidToken error. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDevicesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDevicesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDevicesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDevicesInput"} + 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 *ListDevicesInput) SetMaxResults(v int64) *ListDevicesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDevicesInput) SetNextToken(v string) *ListDevicesInput { + s.NextToken = &v + return s +} + +type ListDevicesOutput struct { + _ struct{} `type:"structure"` + + // Describes devices. + Devices []*DeviceSummary `locationName:"devices" type:"list"` + + // 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. Keep all other arguments + // unchanged. Each pagination token expires after 24 hours. Using an expired + // pagination token will return an HTTP 400 InvalidToken error. + 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 ListDevicesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDevicesOutput) GoString() string { + return s.String() +} + +// SetDevices sets the Devices field's value. +func (s *ListDevicesOutput) SetDevices(v []*DeviceSummary) *ListDevicesOutput { + s.Devices = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDevicesOutput) SetNextToken(v string) *ListDevicesOutput { + s.NextToken = &v + return s +} + +type ListEnvironmentsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results that are returned per call. You can use nextToken + // to obtain further pages of results. + // + // This is only an upper limit. The actual number of results returned per call + // might be fewer than the specified maximum. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // 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. Keep all other arguments + // unchanged. Each pagination token expires after 24 hours. Using an expired + // pagination token will return an HTTP 400 InvalidToken error. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentsInput"} + 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 *ListEnvironmentsInput) SetMaxResults(v int64) *ListEnvironmentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsInput) SetNextToken(v string) *ListEnvironmentsInput { + s.NextToken = &v + return s +} + +type ListEnvironmentsOutput struct { + _ struct{} `type:"structure"` + + // Describes environments. + Environments []*EnvironmentSummary `locationName:"environments" type:"list"` + + // 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. Keep all other arguments + // unchanged. Each pagination token expires after 24 hours. Using an expired + // pagination token will return an HTTP 400 InvalidToken error. + 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 ListEnvironmentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEnvironmentsOutput) GoString() string { + return s.String() +} + +// SetEnvironments sets the Environments field's value. +func (s *ListEnvironmentsOutput) SetEnvironments(v []*EnvironmentSummary) *ListEnvironmentsOutput { + s.Environments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsOutput) SetNextToken(v string) *ListEnvironmentsOutput { + s.NextToken = &v + return s +} + +type ListSoftwareSetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results that are returned per call. You can use nextToken + // to obtain further pages of results. + // + // This is only an upper limit. The actual number of results returned per call + // might be fewer than the specified maximum. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // 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. Keep all other arguments + // unchanged. Each pagination token expires after 24 hours. Using an expired + // pagination token will return an HTTP 400 InvalidToken error. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSoftwareSetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSoftwareSetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSoftwareSetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSoftwareSetsInput"} + 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 *ListSoftwareSetsInput) SetMaxResults(v int64) *ListSoftwareSetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSoftwareSetsInput) SetNextToken(v string) *ListSoftwareSetsInput { + s.NextToken = &v + return s +} + +type ListSoftwareSetsOutput 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. Keep all other arguments + // unchanged. Each pagination token expires after 24 hours. Using an expired + // pagination token will return an HTTP 400 InvalidToken error. + NextToken *string `locationName:"nextToken" type:"string"` + + // Describes software sets. + SoftwareSets []*SoftwareSetSummary `locationName:"softwareSets" 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 ListSoftwareSetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSoftwareSetsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSoftwareSetsOutput) SetNextToken(v string) *ListSoftwareSetsOutput { + s.NextToken = &v + return s +} + +// SetSoftwareSets sets the SoftwareSets field's value. +func (s *ListSoftwareSetsOutput) SetSoftwareSets(v []*SoftwareSetSummary) *ListSoftwareSetsOutput { + s.SoftwareSets = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the resource for which you want to retrieve + // tags. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" 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 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 for the tag or tags assigned to the specified + // resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListTagsForResourceOutput's + // String and GoString methods. + Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// Describes the maintenance window for a thin client device. +type MaintenanceWindow struct { + _ struct{} `type:"structure"` + + // The option to set the maintenance window during the device local time or + // Universal Coordinated Time (UTC). + ApplyTimeOf *string `locationName:"applyTimeOf" type:"string" enum:"ApplyTimeOf"` + + // The days of the week during which the maintenance window is open. + DaysOfTheWeek []*string `locationName:"daysOfTheWeek" min:"1" type:"list" enum:"DayOfWeek"` + + // The hour for the maintenance window end (00-23). + EndTimeHour *int64 `locationName:"endTimeHour" type:"integer"` + + // The minutes for the maintenance window end (00-59). + EndTimeMinute *int64 `locationName:"endTimeMinute" type:"integer"` + + // The hour for the maintenance window start (00-23). + StartTimeHour *int64 `locationName:"startTimeHour" type:"integer"` + + // The minutes past the hour for the maintenance window start (00-59). + StartTimeMinute *int64 `locationName:"startTimeMinute" type:"integer"` + + // An option to select the default or custom maintenance window. + Type *string `locationName:"type" type:"string" enum:"MaintenanceWindowType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MaintenanceWindow) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MaintenanceWindow) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MaintenanceWindow) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindow"} + if s.DaysOfTheWeek != nil && len(s.DaysOfTheWeek) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DaysOfTheWeek", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplyTimeOf sets the ApplyTimeOf field's value. +func (s *MaintenanceWindow) SetApplyTimeOf(v string) *MaintenanceWindow { + s.ApplyTimeOf = &v + return s +} + +// SetDaysOfTheWeek sets the DaysOfTheWeek field's value. +func (s *MaintenanceWindow) SetDaysOfTheWeek(v []*string) *MaintenanceWindow { + s.DaysOfTheWeek = v + return s +} + +// SetEndTimeHour sets the EndTimeHour field's value. +func (s *MaintenanceWindow) SetEndTimeHour(v int64) *MaintenanceWindow { + s.EndTimeHour = &v + return s +} + +// SetEndTimeMinute sets the EndTimeMinute field's value. +func (s *MaintenanceWindow) SetEndTimeMinute(v int64) *MaintenanceWindow { + s.EndTimeMinute = &v + return s +} + +// SetStartTimeHour sets the StartTimeHour field's value. +func (s *MaintenanceWindow) SetStartTimeHour(v int64) *MaintenanceWindow { + s.StartTimeHour = &v + return s +} + +// SetStartTimeMinute sets the StartTimeMinute field's value. +func (s *MaintenanceWindow) SetStartTimeMinute(v int64) *MaintenanceWindow { + s.StartTimeMinute = &v + return s +} + +// SetType sets the Type field's value. +func (s *MaintenanceWindow) SetType(v string) *MaintenanceWindow { + s.Type = &v + return s +} + +// The resource specified in the request was not found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The ID of the resource associated with the request. + ResourceId *string `locationName:"resourceId" type:"string"` + + // The type of the resource associated with the request. + ResourceType *string `locationName:"resourceType" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 +} + +// Your request exceeds a service quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The code for the quota in Service Quotas (https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html). + QuotaCode *string `locationName:"quotaCode" type:"string"` + + // The ID of the resource that exceeds the service quota. + ResourceId *string `locationName:"resourceId" type:"string"` + + // The type of the resource that exceeds the service quota. + ResourceType *string `locationName:"resourceType" type:"string"` + + // The code for the service in Service Quotas (https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html). + ServiceCode *string `locationName:"serviceCode" 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\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes software. +type Software struct { + _ struct{} `type:"structure"` + + // The name of the software component. + Name *string `locationName:"name" type:"string"` + + // The version of the software component. + Version *string `locationName:"version" 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 Software) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Software) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Software) SetName(v string) *Software { + s.Name = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *Software) SetVersion(v string) *Software { + s.Version = &v + return s +} + +// Describes a software set. +type SoftwareSet struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the software set. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The ID of the software set. + Id *string `locationName:"id" type:"string"` + + // The timestamp of when the software set was released. + ReleasedAt *time.Time `locationName:"releasedAt" type:"timestamp"` + + // A list of the software components in the software set. + Software []*Software `locationName:"software" type:"list"` + + // The timestamp of the end of support for the software set. + SupportedUntil *time.Time `locationName:"supportedUntil" type:"timestamp"` + + // An option to define if the software set has been validated. + ValidationStatus *string `locationName:"validationStatus" type:"string" enum:"SoftwareSetValidationStatus"` + + // The version of the software set. + Version *string `locationName:"version" 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 SoftwareSet) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SoftwareSet) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *SoftwareSet) SetArn(v string) *SoftwareSet { + s.Arn = &v + return s +} + +// SetId sets the Id field's value. +func (s *SoftwareSet) SetId(v string) *SoftwareSet { + s.Id = &v + return s +} + +// SetReleasedAt sets the ReleasedAt field's value. +func (s *SoftwareSet) SetReleasedAt(v time.Time) *SoftwareSet { + s.ReleasedAt = &v + return s +} + +// SetSoftware sets the Software field's value. +func (s *SoftwareSet) SetSoftware(v []*Software) *SoftwareSet { + s.Software = v + return s +} + +// SetSupportedUntil sets the SupportedUntil field's value. +func (s *SoftwareSet) SetSupportedUntil(v time.Time) *SoftwareSet { + s.SupportedUntil = &v + return s +} + +// SetValidationStatus sets the ValidationStatus field's value. +func (s *SoftwareSet) SetValidationStatus(v string) *SoftwareSet { + s.ValidationStatus = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *SoftwareSet) SetVersion(v string) *SoftwareSet { + s.Version = &v + return s +} + +// Describes a software set. +type SoftwareSetSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the software set. + Arn *string `locationName:"arn" min:"20" type:"string"` + + // The ID of the software set. + Id *string `locationName:"id" type:"string"` + + // The timestamp of when the software set was released. + ReleasedAt *time.Time `locationName:"releasedAt" type:"timestamp"` + + // The timestamp of the end of support for the software set. + SupportedUntil *time.Time `locationName:"supportedUntil" type:"timestamp"` + + // An option to define if the software set has been validated. + ValidationStatus *string `locationName:"validationStatus" type:"string" enum:"SoftwareSetValidationStatus"` + + // The version of the software set. + Version *string `locationName:"version" 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 SoftwareSetSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SoftwareSetSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *SoftwareSetSummary) SetArn(v string) *SoftwareSetSummary { + s.Arn = &v + return s +} + +// SetId sets the Id field's value. +func (s *SoftwareSetSummary) SetId(v string) *SoftwareSetSummary { + s.Id = &v + return s +} + +// SetReleasedAt sets the ReleasedAt field's value. +func (s *SoftwareSetSummary) SetReleasedAt(v time.Time) *SoftwareSetSummary { + s.ReleasedAt = &v + return s +} + +// SetSupportedUntil sets the SupportedUntil field's value. +func (s *SoftwareSetSummary) SetSupportedUntil(v time.Time) *SoftwareSetSummary { + s.SupportedUntil = &v + return s +} + +// SetValidationStatus sets the ValidationStatus field's value. +func (s *SoftwareSetSummary) SetValidationStatus(v string) *SoftwareSetSummary { + s.ValidationStatus = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *SoftwareSetSummary) SetVersion(v string) *SoftwareSetSummary { + s.Version = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that you want to tag. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // A map of the key-value pairs of the tag or tags to assign to the resource. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by TagResourceInput's + // String and GoString methods. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The code for the quota in Service Quotas (https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html). + QuotaCode *string `locationName:"quotaCode" type:"string"` + + // The number of seconds to wait before retrying the next request. + RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` + + // The code for the service in Service Quotas (https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html). + ServiceCode *string `locationName:"serviceCode" 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 +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the resource that you want to untag. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The keys of the key-value pairs for the tag or tags you want to remove from + // the specified resource. + // + // TagKeys is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UntagResourceInput's + // String and GoString methods. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 UpdateDeviceInput struct { + _ struct{} `type:"structure"` + + // The ID of the software set to apply. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The ID of the device to update. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the Key Management Service key to use for + // the update. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // The name of the device to update. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDeviceInput's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDeviceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDeviceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDeviceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDeviceInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *UpdateDeviceInput) SetDesiredSoftwareSetId(v string) *UpdateDeviceInput { + s.DesiredSoftwareSetId = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateDeviceInput) SetId(v string) *UpdateDeviceInput { + s.Id = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *UpdateDeviceInput) SetKmsKeyArn(v string) *UpdateDeviceInput { + s.KmsKeyArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDeviceInput) SetName(v string) *UpdateDeviceInput { + s.Name = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *UpdateDeviceInput) SetSoftwareSetUpdateSchedule(v string) *UpdateDeviceInput { + s.SoftwareSetUpdateSchedule = &v + return s +} + +type UpdateDeviceOutput struct { + _ struct{} `type:"structure"` + + // Describes a device. + Device *DeviceSummary `locationName:"device" 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 UpdateDeviceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDeviceOutput) GoString() string { + return s.String() +} + +// SetDevice sets the Device field's value. +func (s *UpdateDeviceOutput) SetDevice(v *DeviceSummary) *UpdateDeviceOutput { + s.Device = v + return s +} + +type UpdateEnvironmentInput struct { + _ struct{} `type:"structure"` + + // The ID of the software set to apply. + DesiredSoftwareSetId *string `locationName:"desiredSoftwareSetId" type:"string"` + + // The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, + // WorkSpaces Web, or AppStream 2.0. + DesktopArn *string `locationName:"desktopArn" min:"20" type:"string"` + + // The URL for the identity provider login (only for environments that use AppStream + // 2.0). + // + // DesktopEndpoint is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentInput's + // String and GoString methods. + DesktopEndpoint *string `locationName:"desktopEndpoint" min:"1" type:"string" sensitive:"true"` + + // The ID of the environment to update. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // A specification for a time window to apply software updates. + MaintenanceWindow *MaintenanceWindow `locationName:"maintenanceWindow" type:"structure"` + + // The name of the environment to update. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateEnvironmentInput's + // String and GoString methods. + Name *string `locationName:"name" type:"string" sensitive:"true"` + + // An option to define which software updates to apply. + SoftwareSetUpdateMode *string `locationName:"softwareSetUpdateMode" type:"string" enum:"SoftwareSetUpdateMode"` + + // An option to define if software updates should be applied within a maintenance + // window. + SoftwareSetUpdateSchedule *string `locationName:"softwareSetUpdateSchedule" type:"string" enum:"SoftwareSetUpdateSchedule"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"} + if s.DesktopArn != nil && len(*s.DesktopArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DesktopArn", 20)) + } + if s.DesktopEndpoint != nil && len(*s.DesktopEndpoint) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DesktopEndpoint", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.MaintenanceWindow != nil { + if err := s.MaintenanceWindow.Validate(); err != nil { + invalidParams.AddNested("MaintenanceWindow", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDesiredSoftwareSetId sets the DesiredSoftwareSetId field's value. +func (s *UpdateEnvironmentInput) SetDesiredSoftwareSetId(v string) *UpdateEnvironmentInput { + s.DesiredSoftwareSetId = &v + return s +} + +// SetDesktopArn sets the DesktopArn field's value. +func (s *UpdateEnvironmentInput) SetDesktopArn(v string) *UpdateEnvironmentInput { + s.DesktopArn = &v + return s +} + +// SetDesktopEndpoint sets the DesktopEndpoint field's value. +func (s *UpdateEnvironmentInput) SetDesktopEndpoint(v string) *UpdateEnvironmentInput { + s.DesktopEndpoint = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateEnvironmentInput) SetId(v string) *UpdateEnvironmentInput { + s.Id = &v + return s +} + +// SetMaintenanceWindow sets the MaintenanceWindow field's value. +func (s *UpdateEnvironmentInput) SetMaintenanceWindow(v *MaintenanceWindow) *UpdateEnvironmentInput { + s.MaintenanceWindow = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentInput) SetName(v string) *UpdateEnvironmentInput { + s.Name = &v + return s +} + +// SetSoftwareSetUpdateMode sets the SoftwareSetUpdateMode field's value. +func (s *UpdateEnvironmentInput) SetSoftwareSetUpdateMode(v string) *UpdateEnvironmentInput { + s.SoftwareSetUpdateMode = &v + return s +} + +// SetSoftwareSetUpdateSchedule sets the SoftwareSetUpdateSchedule field's value. +func (s *UpdateEnvironmentInput) SetSoftwareSetUpdateSchedule(v string) *UpdateEnvironmentInput { + s.SoftwareSetUpdateSchedule = &v + return s +} + +type UpdateEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // Describes an environment. + Environment *EnvironmentSummary `locationName:"environment" 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 UpdateEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *UpdateEnvironmentOutput) SetEnvironment(v *EnvironmentSummary) *UpdateEnvironmentOutput { + s.Environment = v + return s +} + +type UpdateSoftwareSetInput struct { + _ struct{} `type:"structure"` + + // The ID of the software set to update. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // An option to define if the software set has been validated. + // + // ValidationStatus is a required field + ValidationStatus *string `locationName:"validationStatus" type:"string" required:"true" enum:"SoftwareSetValidationStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSoftwareSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSoftwareSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSoftwareSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSoftwareSetInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.ValidationStatus == nil { + invalidParams.Add(request.NewErrParamRequired("ValidationStatus")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *UpdateSoftwareSetInput) SetId(v string) *UpdateSoftwareSetInput { + s.Id = &v + return s +} + +// SetValidationStatus sets the ValidationStatus field's value. +func (s *UpdateSoftwareSetInput) SetValidationStatus(v string) *UpdateSoftwareSetInput { + s.ValidationStatus = &v + return s +} + +type UpdateSoftwareSetOutput 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 UpdateSoftwareSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSoftwareSetOutput) GoString() string { + return s.String() +} + +// The input fails to satisfy the specified constraints. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A list of fields that didn't validate. + FieldList []*ValidationExceptionField `locationName:"fieldList" type:"list"` + + Message_ *string `locationName:"message" type:"string"` + + // The reason for the exception. + Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes a validation exception. +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // A message that describes the reason for the exception. + // + // Message is a required field + Message *string `locationName:"message" type:"string" required:"true"` + + // The name of the exception. + // + // Name is a required field + Name *string `locationName:"name" 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 ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +const ( + // ApplyTimeOfUtc is a ApplyTimeOf enum value + ApplyTimeOfUtc = "UTC" + + // ApplyTimeOfDevice is a ApplyTimeOf enum value + ApplyTimeOfDevice = "DEVICE" +) + +// ApplyTimeOf_Values returns all elements of the ApplyTimeOf enum +func ApplyTimeOf_Values() []string { + return []string{ + ApplyTimeOfUtc, + ApplyTimeOfDevice, + } +} + +const ( + // DayOfWeekMonday is a DayOfWeek enum value + DayOfWeekMonday = "MONDAY" + + // DayOfWeekTuesday is a DayOfWeek enum value + DayOfWeekTuesday = "TUESDAY" + + // DayOfWeekWednesday is a DayOfWeek enum value + DayOfWeekWednesday = "WEDNESDAY" + + // DayOfWeekThursday is a DayOfWeek enum value + DayOfWeekThursday = "THURSDAY" + + // DayOfWeekFriday is a DayOfWeek enum value + DayOfWeekFriday = "FRIDAY" + + // DayOfWeekSaturday is a DayOfWeek enum value + DayOfWeekSaturday = "SATURDAY" + + // DayOfWeekSunday is a DayOfWeek enum value + DayOfWeekSunday = "SUNDAY" +) + +// DayOfWeek_Values returns all elements of the DayOfWeek enum +func DayOfWeek_Values() []string { + return []string{ + DayOfWeekMonday, + DayOfWeekTuesday, + DayOfWeekWednesday, + DayOfWeekThursday, + DayOfWeekFriday, + DayOfWeekSaturday, + DayOfWeekSunday, + } +} + +const ( + // DesktopTypeWorkspaces is a DesktopType enum value + DesktopTypeWorkspaces = "workspaces" + + // DesktopTypeAppstream is a DesktopType enum value + DesktopTypeAppstream = "appstream" + + // DesktopTypeWorkspacesWeb is a DesktopType enum value + DesktopTypeWorkspacesWeb = "workspaces-web" +) + +// DesktopType_Values returns all elements of the DesktopType enum +func DesktopType_Values() []string { + return []string{ + DesktopTypeWorkspaces, + DesktopTypeAppstream, + DesktopTypeWorkspacesWeb, + } +} + +const ( + // DeviceSoftwareSetComplianceStatusNone is a DeviceSoftwareSetComplianceStatus enum value + DeviceSoftwareSetComplianceStatusNone = "NONE" + + // DeviceSoftwareSetComplianceStatusCompliant is a DeviceSoftwareSetComplianceStatus enum value + DeviceSoftwareSetComplianceStatusCompliant = "COMPLIANT" + + // DeviceSoftwareSetComplianceStatusNotCompliant is a DeviceSoftwareSetComplianceStatus enum value + DeviceSoftwareSetComplianceStatusNotCompliant = "NOT_COMPLIANT" +) + +// DeviceSoftwareSetComplianceStatus_Values returns all elements of the DeviceSoftwareSetComplianceStatus enum +func DeviceSoftwareSetComplianceStatus_Values() []string { + return []string{ + DeviceSoftwareSetComplianceStatusNone, + DeviceSoftwareSetComplianceStatusCompliant, + DeviceSoftwareSetComplianceStatusNotCompliant, + } +} + +const ( + // DeviceStatusRegistered is a DeviceStatus enum value + DeviceStatusRegistered = "REGISTERED" + + // DeviceStatusDeregistering is a DeviceStatus enum value + DeviceStatusDeregistering = "DEREGISTERING" + + // DeviceStatusDeregistered is a DeviceStatus enum value + DeviceStatusDeregistered = "DEREGISTERED" + + // DeviceStatusArchived is a DeviceStatus enum value + DeviceStatusArchived = "ARCHIVED" +) + +// DeviceStatus_Values returns all elements of the DeviceStatus enum +func DeviceStatus_Values() []string { + return []string{ + DeviceStatusRegistered, + DeviceStatusDeregistering, + DeviceStatusDeregistered, + DeviceStatusArchived, + } +} + +const ( + // EnvironmentSoftwareSetComplianceStatusNoRegisteredDevices is a EnvironmentSoftwareSetComplianceStatus enum value + EnvironmentSoftwareSetComplianceStatusNoRegisteredDevices = "NO_REGISTERED_DEVICES" + + // EnvironmentSoftwareSetComplianceStatusCompliant is a EnvironmentSoftwareSetComplianceStatus enum value + EnvironmentSoftwareSetComplianceStatusCompliant = "COMPLIANT" + + // EnvironmentSoftwareSetComplianceStatusNotCompliant is a EnvironmentSoftwareSetComplianceStatus enum value + EnvironmentSoftwareSetComplianceStatusNotCompliant = "NOT_COMPLIANT" +) + +// EnvironmentSoftwareSetComplianceStatus_Values returns all elements of the EnvironmentSoftwareSetComplianceStatus enum +func EnvironmentSoftwareSetComplianceStatus_Values() []string { + return []string{ + EnvironmentSoftwareSetComplianceStatusNoRegisteredDevices, + EnvironmentSoftwareSetComplianceStatusCompliant, + EnvironmentSoftwareSetComplianceStatusNotCompliant, + } +} + +const ( + // MaintenanceWindowTypeSystem is a MaintenanceWindowType enum value + MaintenanceWindowTypeSystem = "SYSTEM" + + // MaintenanceWindowTypeCustom is a MaintenanceWindowType enum value + MaintenanceWindowTypeCustom = "CUSTOM" +) + +// MaintenanceWindowType_Values returns all elements of the MaintenanceWindowType enum +func MaintenanceWindowType_Values() []string { + return []string{ + MaintenanceWindowTypeSystem, + MaintenanceWindowTypeCustom, + } +} + +const ( + // SoftwareSetUpdateModeUseLatest is a SoftwareSetUpdateMode enum value + SoftwareSetUpdateModeUseLatest = "USE_LATEST" + + // SoftwareSetUpdateModeUseDesired is a SoftwareSetUpdateMode enum value + SoftwareSetUpdateModeUseDesired = "USE_DESIRED" +) + +// SoftwareSetUpdateMode_Values returns all elements of the SoftwareSetUpdateMode enum +func SoftwareSetUpdateMode_Values() []string { + return []string{ + SoftwareSetUpdateModeUseLatest, + SoftwareSetUpdateModeUseDesired, + } +} + +const ( + // SoftwareSetUpdateScheduleUseMaintenanceWindow is a SoftwareSetUpdateSchedule enum value + SoftwareSetUpdateScheduleUseMaintenanceWindow = "USE_MAINTENANCE_WINDOW" + + // SoftwareSetUpdateScheduleApplyImmediately is a SoftwareSetUpdateSchedule enum value + SoftwareSetUpdateScheduleApplyImmediately = "APPLY_IMMEDIATELY" +) + +// SoftwareSetUpdateSchedule_Values returns all elements of the SoftwareSetUpdateSchedule enum +func SoftwareSetUpdateSchedule_Values() []string { + return []string{ + SoftwareSetUpdateScheduleUseMaintenanceWindow, + SoftwareSetUpdateScheduleApplyImmediately, + } +} + +const ( + // SoftwareSetUpdateStatusAvailable is a SoftwareSetUpdateStatus enum value + SoftwareSetUpdateStatusAvailable = "AVAILABLE" + + // SoftwareSetUpdateStatusInProgress is a SoftwareSetUpdateStatus enum value + SoftwareSetUpdateStatusInProgress = "IN_PROGRESS" + + // SoftwareSetUpdateStatusUpToDate is a SoftwareSetUpdateStatus enum value + SoftwareSetUpdateStatusUpToDate = "UP_TO_DATE" +) + +// SoftwareSetUpdateStatus_Values returns all elements of the SoftwareSetUpdateStatus enum +func SoftwareSetUpdateStatus_Values() []string { + return []string{ + SoftwareSetUpdateStatusAvailable, + SoftwareSetUpdateStatusInProgress, + SoftwareSetUpdateStatusUpToDate, + } +} + +const ( + // SoftwareSetValidationStatusValidated is a SoftwareSetValidationStatus enum value + SoftwareSetValidationStatusValidated = "VALIDATED" + + // SoftwareSetValidationStatusNotValidated is a SoftwareSetValidationStatus enum value + SoftwareSetValidationStatusNotValidated = "NOT_VALIDATED" +) + +// SoftwareSetValidationStatus_Values returns all elements of the SoftwareSetValidationStatus enum +func SoftwareSetValidationStatus_Values() []string { + return []string{ + SoftwareSetValidationStatusValidated, + SoftwareSetValidationStatusNotValidated, + } +} + +const ( + // TargetDeviceStatusDeregistered is a TargetDeviceStatus enum value + TargetDeviceStatusDeregistered = "DEREGISTERED" + + // TargetDeviceStatusArchived is a TargetDeviceStatus enum value + TargetDeviceStatusArchived = "ARCHIVED" +) + +// TargetDeviceStatus_Values returns all elements of the TargetDeviceStatus enum +func TargetDeviceStatus_Values() []string { + return []string{ + TargetDeviceStatusDeregistered, + TargetDeviceStatusArchived, + } +} + +const ( + // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownOperation = "unknownOperation" + + // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value + ValidationExceptionReasonCannotParse = "cannotParse" + + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "fieldValidationFailed" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "other" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonUnknownOperation, + ValidationExceptionReasonCannotParse, + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonOther, + } +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/doc.go golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/doc.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/doc.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/doc.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,43 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package workspacesthinclient provides the client and types for making API +// requests to Amazon WorkSpaces Thin Client. +// +// Amazon WorkSpaces Thin Client is a affordable device built to work with Amazon +// Web Services End User Computing (EUC) virtual desktops to provide users with +// a complete cloud desktop solution. WorkSpaces Thin Client is a compact device +// designed to connect up to two monitors and USB devices like a keyboard, mouse, +// headset, and webcam. To maximize endpoint security, WorkSpaces Thin Client +// devices do not allow local data storage or installation of unapproved applications. +// The WorkSpaces Thin Client device ships preloaded with device management +// software. +// +// You can use these APIs to complete WorkSpaces Thin Client tasks, such as +// creating environments or viewing devices. For more information about WorkSpaces +// Thin Client, including the required permissions to use the service, see the +// Amazon WorkSpaces Thin Client Administrator Guide (https://docs.aws.amazon.com/workspaces-thin-client/latest/ag/). +// For more information about using the Command Line Interface (CLI) to manage +// your WorkSpaces Thin Client resources, see the WorkSpaces Thin Client section +// of the CLI Reference (https://docs.aws.amazon.com/cli/latest/reference/workspaces-thin-client/index.html). +// +// See https://docs.aws.amazon.com/goto/WebAPI/workspaces-thin-client-2023-08-22 for more information on this service. +// +// See workspacesthinclient package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/workspacesthinclient/ +// +// # Using the Client +// +// To contact Amazon WorkSpaces Thin Client 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 Amazon WorkSpaces Thin Client client WorkSpacesThinClient for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/workspacesthinclient/#New +package workspacesthinclient diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/errors.go golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/errors.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/errors.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/errors.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,71 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package workspacesthinclient + +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 requested operation would cause a conflict with the current state of + // a service resource associated with the request. Resolve the conflict before + // retrying this request. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // The server encountered an internal error and is unable to complete the request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeInternalServiceException for service response error code + // "InternalServiceException". + // + // Request processing failed due to some unknown error, exception, or failure. + ErrCodeInternalServiceException = "InternalServiceException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource specified in the request was not found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Your request exceeds a service quota. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the specified constraints. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "InternalServiceException": newErrorInternalServiceException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/service.go golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/service.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/service.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/service.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package workspacesthinclient + +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/restjson" +) + +// WorkSpacesThinClient provides the API operation methods for making requests to +// Amazon WorkSpaces Thin Client. See this package's package overview docs +// for details on the service. +// +// WorkSpacesThinClient methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type WorkSpacesThinClient 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 = "WorkSpaces Thin Client" // Name of service. + EndpointsID = "thinclient" // ID to lookup a service endpoint with. + ServiceID = "WorkSpaces Thin Client" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the WorkSpacesThinClient 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 WorkSpacesThinClient client from just a session. +// svc := workspacesthinclient.New(mySession) +// +// // Create a WorkSpacesThinClient client with additional configuration +// svc := workspacesthinclient.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *WorkSpacesThinClient { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "thinclient" + } + 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) *WorkSpacesThinClient { + svc := &WorkSpacesThinClient{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-08-22", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a WorkSpacesThinClient operation and runs any +// custom request initialization. +func (c *WorkSpacesThinClient) 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 -Nru golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/workspacesthinclientiface/interface.go golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/workspacesthinclientiface/interface.go --- golang-github-aws-aws-sdk-go-1.45.14/service/workspacesthinclient/workspacesthinclientiface/interface.go 1970-01-01 00:00:00.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/workspacesthinclient/workspacesthinclientiface/interface.go 2023-12-06 19:28:18.000000000 +0000 @@ -0,0 +1,137 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package workspacesthinclientiface provides an interface to enable mocking the Amazon WorkSpaces Thin Client 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 workspacesthinclientiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/workspacesthinclient" +) + +// WorkSpacesThinClientAPI provides an interface to enable mocking the +// workspacesthinclient.WorkSpacesThinClient 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 +// // Amazon WorkSpaces Thin Client. +// func myFunc(svc workspacesthinclientiface.WorkSpacesThinClientAPI) bool { +// // Make svc.CreateEnvironment request +// } +// +// func main() { +// sess := session.New() +// svc := workspacesthinclient.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockWorkSpacesThinClientClient struct { +// workspacesthinclientiface.WorkSpacesThinClientAPI +// } +// func (m *mockWorkSpacesThinClientClient) CreateEnvironment(input *workspacesthinclient.CreateEnvironmentInput) (*workspacesthinclient.CreateEnvironmentOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockWorkSpacesThinClientClient{} +// +// 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 WorkSpacesThinClientAPI interface { + CreateEnvironment(*workspacesthinclient.CreateEnvironmentInput) (*workspacesthinclient.CreateEnvironmentOutput, error) + CreateEnvironmentWithContext(aws.Context, *workspacesthinclient.CreateEnvironmentInput, ...request.Option) (*workspacesthinclient.CreateEnvironmentOutput, error) + CreateEnvironmentRequest(*workspacesthinclient.CreateEnvironmentInput) (*request.Request, *workspacesthinclient.CreateEnvironmentOutput) + + DeleteDevice(*workspacesthinclient.DeleteDeviceInput) (*workspacesthinclient.DeleteDeviceOutput, error) + DeleteDeviceWithContext(aws.Context, *workspacesthinclient.DeleteDeviceInput, ...request.Option) (*workspacesthinclient.DeleteDeviceOutput, error) + DeleteDeviceRequest(*workspacesthinclient.DeleteDeviceInput) (*request.Request, *workspacesthinclient.DeleteDeviceOutput) + + DeleteEnvironment(*workspacesthinclient.DeleteEnvironmentInput) (*workspacesthinclient.DeleteEnvironmentOutput, error) + DeleteEnvironmentWithContext(aws.Context, *workspacesthinclient.DeleteEnvironmentInput, ...request.Option) (*workspacesthinclient.DeleteEnvironmentOutput, error) + DeleteEnvironmentRequest(*workspacesthinclient.DeleteEnvironmentInput) (*request.Request, *workspacesthinclient.DeleteEnvironmentOutput) + + DeregisterDevice(*workspacesthinclient.DeregisterDeviceInput) (*workspacesthinclient.DeregisterDeviceOutput, error) + DeregisterDeviceWithContext(aws.Context, *workspacesthinclient.DeregisterDeviceInput, ...request.Option) (*workspacesthinclient.DeregisterDeviceOutput, error) + DeregisterDeviceRequest(*workspacesthinclient.DeregisterDeviceInput) (*request.Request, *workspacesthinclient.DeregisterDeviceOutput) + + GetDevice(*workspacesthinclient.GetDeviceInput) (*workspacesthinclient.GetDeviceOutput, error) + GetDeviceWithContext(aws.Context, *workspacesthinclient.GetDeviceInput, ...request.Option) (*workspacesthinclient.GetDeviceOutput, error) + GetDeviceRequest(*workspacesthinclient.GetDeviceInput) (*request.Request, *workspacesthinclient.GetDeviceOutput) + + GetEnvironment(*workspacesthinclient.GetEnvironmentInput) (*workspacesthinclient.GetEnvironmentOutput, error) + GetEnvironmentWithContext(aws.Context, *workspacesthinclient.GetEnvironmentInput, ...request.Option) (*workspacesthinclient.GetEnvironmentOutput, error) + GetEnvironmentRequest(*workspacesthinclient.GetEnvironmentInput) (*request.Request, *workspacesthinclient.GetEnvironmentOutput) + + GetSoftwareSet(*workspacesthinclient.GetSoftwareSetInput) (*workspacesthinclient.GetSoftwareSetOutput, error) + GetSoftwareSetWithContext(aws.Context, *workspacesthinclient.GetSoftwareSetInput, ...request.Option) (*workspacesthinclient.GetSoftwareSetOutput, error) + GetSoftwareSetRequest(*workspacesthinclient.GetSoftwareSetInput) (*request.Request, *workspacesthinclient.GetSoftwareSetOutput) + + ListDevices(*workspacesthinclient.ListDevicesInput) (*workspacesthinclient.ListDevicesOutput, error) + ListDevicesWithContext(aws.Context, *workspacesthinclient.ListDevicesInput, ...request.Option) (*workspacesthinclient.ListDevicesOutput, error) + ListDevicesRequest(*workspacesthinclient.ListDevicesInput) (*request.Request, *workspacesthinclient.ListDevicesOutput) + + ListDevicesPages(*workspacesthinclient.ListDevicesInput, func(*workspacesthinclient.ListDevicesOutput, bool) bool) error + ListDevicesPagesWithContext(aws.Context, *workspacesthinclient.ListDevicesInput, func(*workspacesthinclient.ListDevicesOutput, bool) bool, ...request.Option) error + + ListEnvironments(*workspacesthinclient.ListEnvironmentsInput) (*workspacesthinclient.ListEnvironmentsOutput, error) + ListEnvironmentsWithContext(aws.Context, *workspacesthinclient.ListEnvironmentsInput, ...request.Option) (*workspacesthinclient.ListEnvironmentsOutput, error) + ListEnvironmentsRequest(*workspacesthinclient.ListEnvironmentsInput) (*request.Request, *workspacesthinclient.ListEnvironmentsOutput) + + ListEnvironmentsPages(*workspacesthinclient.ListEnvironmentsInput, func(*workspacesthinclient.ListEnvironmentsOutput, bool) bool) error + ListEnvironmentsPagesWithContext(aws.Context, *workspacesthinclient.ListEnvironmentsInput, func(*workspacesthinclient.ListEnvironmentsOutput, bool) bool, ...request.Option) error + + ListSoftwareSets(*workspacesthinclient.ListSoftwareSetsInput) (*workspacesthinclient.ListSoftwareSetsOutput, error) + ListSoftwareSetsWithContext(aws.Context, *workspacesthinclient.ListSoftwareSetsInput, ...request.Option) (*workspacesthinclient.ListSoftwareSetsOutput, error) + ListSoftwareSetsRequest(*workspacesthinclient.ListSoftwareSetsInput) (*request.Request, *workspacesthinclient.ListSoftwareSetsOutput) + + ListSoftwareSetsPages(*workspacesthinclient.ListSoftwareSetsInput, func(*workspacesthinclient.ListSoftwareSetsOutput, bool) bool) error + ListSoftwareSetsPagesWithContext(aws.Context, *workspacesthinclient.ListSoftwareSetsInput, func(*workspacesthinclient.ListSoftwareSetsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*workspacesthinclient.ListTagsForResourceInput) (*workspacesthinclient.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *workspacesthinclient.ListTagsForResourceInput, ...request.Option) (*workspacesthinclient.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*workspacesthinclient.ListTagsForResourceInput) (*request.Request, *workspacesthinclient.ListTagsForResourceOutput) + + TagResource(*workspacesthinclient.TagResourceInput) (*workspacesthinclient.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *workspacesthinclient.TagResourceInput, ...request.Option) (*workspacesthinclient.TagResourceOutput, error) + TagResourceRequest(*workspacesthinclient.TagResourceInput) (*request.Request, *workspacesthinclient.TagResourceOutput) + + UntagResource(*workspacesthinclient.UntagResourceInput) (*workspacesthinclient.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *workspacesthinclient.UntagResourceInput, ...request.Option) (*workspacesthinclient.UntagResourceOutput, error) + UntagResourceRequest(*workspacesthinclient.UntagResourceInput) (*request.Request, *workspacesthinclient.UntagResourceOutput) + + UpdateDevice(*workspacesthinclient.UpdateDeviceInput) (*workspacesthinclient.UpdateDeviceOutput, error) + UpdateDeviceWithContext(aws.Context, *workspacesthinclient.UpdateDeviceInput, ...request.Option) (*workspacesthinclient.UpdateDeviceOutput, error) + UpdateDeviceRequest(*workspacesthinclient.UpdateDeviceInput) (*request.Request, *workspacesthinclient.UpdateDeviceOutput) + + UpdateEnvironment(*workspacesthinclient.UpdateEnvironmentInput) (*workspacesthinclient.UpdateEnvironmentOutput, error) + UpdateEnvironmentWithContext(aws.Context, *workspacesthinclient.UpdateEnvironmentInput, ...request.Option) (*workspacesthinclient.UpdateEnvironmentOutput, error) + UpdateEnvironmentRequest(*workspacesthinclient.UpdateEnvironmentInput) (*request.Request, *workspacesthinclient.UpdateEnvironmentOutput) + + UpdateSoftwareSet(*workspacesthinclient.UpdateSoftwareSetInput) (*workspacesthinclient.UpdateSoftwareSetOutput, error) + UpdateSoftwareSetWithContext(aws.Context, *workspacesthinclient.UpdateSoftwareSetInput, ...request.Option) (*workspacesthinclient.UpdateSoftwareSetOutput, error) + UpdateSoftwareSetRequest(*workspacesthinclient.UpdateSoftwareSetInput) (*request.Request, *workspacesthinclient.UpdateSoftwareSetOutput) +} + +var _ WorkSpacesThinClientAPI = (*workspacesthinclient.WorkSpacesThinClient)(nil) diff -Nru golang-github-aws-aws-sdk-go-1.45.14/service/xray/api.go golang-github-aws-aws-sdk-go-1.48.14/service/xray/api.go --- golang-github-aws-aws-sdk-go-1.45.14/service/xray/api.go 2023-09-20 19:38:04.000000000 +0000 +++ golang-github-aws-aws-sdk-go-1.48.14/service/xray/api.go 2023-12-06 19:28:18.000000000 +0000 @@ -6295,8 +6295,8 @@ // StartTime is a required field StartTime *time.Time `type:"timestamp" required:"true"` - // A parameter to indicate whether to query trace summaries by TraceId or Event - // time. + // A parameter to indicate whether to query trace summaries by TraceId, Event + // (trace update time), or Service (segment end time). TimeRangeType *string `type:"string" enum:"TimeRangeType"` } @@ -11052,6 +11052,9 @@ // TimeRangeTypeEvent is a TimeRangeType enum value TimeRangeTypeEvent = "Event" + + // TimeRangeTypeService is a TimeRangeType enum value + TimeRangeTypeService = "Service" ) // TimeRangeType_Values returns all elements of the TimeRangeType enum @@ -11059,5 +11062,6 @@ return []string{ TimeRangeTypeTraceId, TimeRangeTypeEvent, + TimeRangeTypeService, } }